kernel-devel-4.18.0-553.5.1.el8 =7H>=78  HE=5=5=7#=74fOh U]1/4k^Szn qJjY|knxV!#,~7&zݪj gy B1|__ nSLE~V`Ļ2T9H ^W0A5w4j1 =k#ϐ.$uk jc oK).x\# X ߞB,ogS6͊{7oeӛVV+pb`h-FNQ3z`R UQKQEatAXk[⿛ S%AJKg[r5Ӝ6Sq@棲] חzGۋ\ˡ KoK[.uNpms_O@^c! A nݧͲ%\hH)s(Iz,h"s8?ttC-Ch6590da2e482acbe76c01e0f970a026210f190ea8858bbbacc059f7ad3da93a3c90cc264d150656a7528f89dd5d294a59d001915b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100957f88845b8cdb07719df21d8c8207d3cbd3a887ca90f62fe8102db9f0f208f9cd5de559391c8c5250cbad268e712c20023100cd6bbe43f6d374cd0c2eda8198dd559056d9a9c0395ad0cf475bcf2cd871fac90244f05d8c58053809ba4cdcbd29c5c70302047c435bb500673065023020fac6a03beee83e62b877b4bdb6ebe94318159ea4cbbd5ed7da88fa79904c291143718a74c308eb2f9b04a47d3b3231023100bbcc580371c8674e8e8e11f08b92a25024d9af611f77c170f000c5202fb2a7cdf0c4c52638dab8eb3951e02435ec098d0302047c435bb500683066023100fa42a280f9101c4d87e077292695654f900022b9b72317db3c05ab95954b1701fd6ee68dc5d0de0850ffa679f761d6e20231008ac643b7e1a38f6a707f3b65a5cc4809e13547a72eed743a56337a96aa8427d742a391e8242428157b2a15670aaccb6d0302047c435bb50067306502306a543df888375119cdd56c024e7fcfe152e1b2eb780d0e0bedc53546109f3032490363dd535acb0c2f883fecf440e6f2023100901a04ec9060d60ef60a7e4c2e0b1d9cd456b9c31a207ef7f4c920150e21d6b4a3c58f792127218b870a121cf5cd09200302047c435bb500683066023100ad0cc4c2dca6d0c073fc4a4dc40930c1dcdfec19dc0f7ee1ff09c888fc10862f6af5921c1d9dc58d59718ef2f8d07c60023100b194f36c90f9415d8b5d563094684dc01856311afd2958031e0ee08902baff977ce716e38c4b19dade8e08679e13da650302047c435bb50067306502310099de08400bd21dfed69062c5caa0d321c231747112d6224b6cdb7d41585a54e2d53359c0789078cb628e8c7d343257c9023004315d6daaf96f7704269c01f5f418e4fae078da376dcbb87131fdec4ff77367899976ceaad7579287743528e07a76a60302047c435bb500673065023043394ad8fc9ca649c8b5847670e8e798d5fd39789a60d41760b2625038c50657b380c3365abadece0969415114cea32d023100b17dc17f213f80a51239b1d776b516bfd04e420d6482e2440546a0f5046b9022be1bf213c7b45bffe2a2b664b5f3de4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b66eb85014bec3c74eefd69bd5d41479ee99e8512e19af304b8a2cb2f522caf6d93351c1e82023ae0b3b0ff6e52b5646023100873fbec035551a1d2b7ee98973a04730a00d513ec3045da8d08ae2cbba38b21e2b1048dcc2c27881097d0a10cca0dfdc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e374cae7017072dfedc8dc5aa1ad15a3082686b14a86284a269e60d9bb91a952fe263921857734a8520e305567c9e0c502304b70b7754939692cd346d9e5d96adeecb69ce176b8c2106443eb1aa2fa2ab10b44732f4e745fc05089a4ed0e9d04b7f70302047c435bb500683066023100a30744b240f0226f41498217e652a4395728d07301f4f7eb6560fa866b1591302a0a9af5c932d479319677be46e03f06023100c10bd4ebe50bb5304ea6c73b1f61b857053bb10b27f9f11e86b2251e1a9b4dfd4d6c0a4dca3735f55867ac07cccb58840302047c435bb50067306502307de4e4a6c1cbd35e810651f3e73b7711380a043a07bb9025787eeefa7520231d72d9ebdb00da574ee444ab1dee90733702310098eebac79b6f53e08cb1458f1475d19f38375440622a1b9eada3e47701bc970eae15c9296936e552a2c08d8d49f356750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023023127683297fecfe820859b5ee8dc1bf5dcb760bde5b783f39cfc64e26ab575bfffa59156afd663b7d0dd2ac92aa267c023100ff25559ec0a72c3ca47b2011205b96c46117175fe062e613098f98ec7c6c33e43b835aad76c1970e0ae1a1213db7abb00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023023667dcdd5cfc75feacaa03ade872f279108190bce1c4e58d03cba2baeabf651b0d7d77228be1f2d396afa9274930ecb023048a7bdd9004a2bfd4bc1148ce938477354d948265ffe316b97904957d7873ebe44c862a4ab705cbfc47394d16cb1052b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008e0cef27a8da0f90b9d0e5c736a81a67e2b698b08839a68ec3d3257bb7156d12e7f8b7186e2ac3d6ecdfb35a195158eb023100d8be6493c2f8d682409946d29d86cbcea3dc737753209ac69c40bb7eff20a16800d94f2580f92668d0a0e9c5802c952c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230263c9a5b878a62c5867cba16e32c0e401ef7a15e12197f45fc1115eff9e1ab8e34ad88b877bb71711c5af5e40ce840eb02307c065445f9b640440a833906b0319f1e10ead6692e39d9640a7544f1d6c4bafcc2aca2904619eafb330279a9a939b0460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cd36034189098d350240c29f99c02c2d0c6ce66da2bce5c9b50618069378667bad4405a638a51790560ebf0692566b540230156b4909a87eff475685b892b537d8ed079fc76fb26146ea3547dfe1b2cc7027e9f181658ce6cbf58c30c0705fd9fd020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ae0bc920162ae0d378aef3dc55dd295f4f7a92f203e3adc7a365dce777026f062e7466b836bf4b8fe0bf58162eb81f3602302056643a5b5f2b4b73115a6990984becd2c3928ce66d5983ac8394d1c13ccdeb86848c6c80cb9d0c2054357a90b98c860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a2239b934230dab6c3ca2ebf946de6419c1d42fcf8c2f961d66ec1865742eb38fed1b74f20aa6a3950d8f69364802ab0023056510eeb1ef87996fc10254a1a4371c1b4c51c9080cb6d8601ada5eed7d2a06242a0bea7e298394065b030fffb5357820302047c435bb50067306502302b245792fc4c6762c8423562ed6bf8e42a44dc934f09e66eec8c7736a5071b9237d25032614a57a6454572ce540db652023100ada145acd8f771d64ecc590b747401d0dd2be52e79f3f35050648761c48cbf883cb9d3fdf3af182fc685cec92af50fb50302047c435bb50066306402305f6acf5e447c5bd0f57202aa19adc0b57b59f2e5982c58a7b6941409141e2d7a03a25d6d965197d7afffa0379282059f02302ae0827c964d73bd7a9d73fa2e35ba18afc36b9cf3b3e51203af229881bf508e9b1455ecc105488acc2492a4b1d965960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dac33847f892f1e5a9f337a78d3c1d33a0de8be1cbc828494c6ccff3d1ccfd75b8fd1d95d3c99872a07be7b096d2dc2802307d64c8e5b91e2a8164e1f4b844fb2ffdd4b071be8d62669d27344893d88ed6040d8e815f5c41dbb40c0bc57c396e28c50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e401c548f82745d177f5d53d77ccd4fc189d0b46115f94086bc1f5427904a1a518bb443829608f67f2565d75b183b4500230294e0e1de6b38baea80f767e77843532498e890fe65a3e8751e87ab81719bfbc8482bf049632cf2c5283f6cc76c47fdb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301fc0a69b095b9caff95b44442298b7ebfa1b6f4d36ee134b8c2f542fa27b7f60e4ca0dcb9eec941688e402004e83ed31023100d55ba568bca2f06c4148cd421b93aa72e268c715d1137e9f7c1d38c49f17cb656e2d9075ec22c1696369b3f19721097d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023059cab4ea12fbf6750bd94733fa62a4b7734c22fe9209278a0e4e0e519a2378dcdc90607d0e253f3a5212ceb9273fdce302307fa6b08690aad3f4f920b73456e7fca22cfdc2ea08c93a6a5dc20ecf149690569cb809313a15dc5a3872948fd3685ed30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a5e4a9ee9e3d84d34bd03e54944c31e133f62edafd48daad5e8f65a31a9386e32729cae598ad1db1e61205d33cc4238b023100b219f05646ea13702747903b71fe8260b966aaed843411808275666aa2b7255a95f0f5052849a41e831f30afdd207d7a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301fc7eb7bc17453b46f44f4198830bced3786d379fd5afc8c305dbc761daa43e89b088bea68ae5a5062503cf117139b54023014d679e04c0b7e68a926f82f82f23c2d25b2ddffd6440112c255decaed26962120c39f853ddda285d01df2d634de08400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302ad315c074de02bc5ab5ab5328102693dde605806239a1483fb51f01b0550663f3dff363f6e43368dcb166599060be0502303aa9ad2ca03c1fdd0c52163fcc0ad29792fa3abbab1920be745250fddc8d0dd5e6c239634e0e062eb8d8bee86fe29b0c0302047c435bb50067306502302309453abff6ad7acfe29463ac6dd2719f7c59759509955bfb4bed0f7e31d23a86ea531df8ac8ef63ea63623741d72f1023100dd513ef6cab5f1d3327e0d0d7527be13a4f643fcc89aa0623909c653ac4eb687328572ab608a3a506cb353f2936ff7b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e1d9479bae1798c3877c2eedd40929ea68c5423ef78f4b427d3fa237f53ec60efe138cc8840789acd06632e1a009f985023100e51aeb58bdae74a68584f1d34b3f19b19a62496fac80df6e2b3ba6e9e53b23dd5c415b1ef8a13d8616822cf17689767d0302047c435bb50067306502302d6c4459c351d36fa15b1a829b5c8684fe219212478e412eb930bdec1448d5c56b86b30a3600e95acb6168200f889437023100f372e7e52cfc04b13cab059ff65281e8a575782b59753540ca75a60c59117a465b3ba7c00e0163d3f32e5c863e2b2ccf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307d968ae736e4251c22da6cf333b94f4467d22825a47ebb2ac7c042a858ab722141c5a37ae0fe2fb8c9c7a5d9138e43d4023028c5f26e7e4c02c066b24fc3c7f34f98dd874a6ec1bed318356ae10d8d4882dcda18ce1c4a122e26c15af15180b8b84f0302047c435bb500683066023100e311b246d860a985c76cd481eb3b613df03ba63639d12bd82aa4d417353e83fd150f6ab39641299fe0d971cca6c803e20231009c5fa48aae6163894896548eb75b9e6876b36d61553a4d573dc0da33acf31cf372385667456007be6358a120d3975b660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100972ff2a3fb58bbd9ac0b4474ee2de7d604674be8c3b4ece147d8e8b50e76125db3dbd64a0d83c5428280c2c41097943c023032144919fee17abf824c0daa9d953b7d3d2ec1ff11f1bb5a94d1fbab9cfcded6f9d439287948f5f2300fd6a9cda157fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230045ac028e4487c7802c12a8f2bdecd64acf829b77999f8ab0dbaf822d188b1b3a4d4d46c365d30a57ae1104603adb915023100885c561656aadf9fdcd5d52086eeddf38c423b692eb51974313d94e81a095884044b26b9e5656987a90b432615f8a01a0302047c435bb500663064023032b679253bc302a73dba3afffa56fbb86a94e4407d14cab9f422472c0fdd37d64648378189a0ac7c60a2e406ebb0321402304149b40268d1166613ea54d3ebde78ee7cad333fc44dad269499d436aa240f32f709912932ca62ca090bea3ff0c82afc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023043423fe6b938b85a9a7e1e078217233705b4e6bf779f39b4f9980d3369d327998217bf83cb1b76e1f5c0cec5ae95e64402307b4bafa845cc5256c082b3a7263a302ea3d3d97fbe48561fae5d2ce104c5c0c8cb0937ab943708992cb7fae945fe97070302047c435bb500683066023100ad3ddeb677ac6539e992df322a3811e94f9cbddac87c7097ddc5bc9334df73d886f6a4419e35b85d81818b21a32ddda0023100a8e1ea12f0635d759c0b0da9a694fdf40755e450ed8259c6678507e78153e469dacc111d607c1acfaafd1006d5d7fc170302047c435bb500673065023100a576d2f35926352003b66db5b788ddb409f9e9b88af6eccbdaf9ea50a4efebe37ff0d9b96a7bb8994b32116dc90e15e40230186da229456d70567469bd8a0d5ba98cc951581446dfbde33b9b3dab2111e9a4a908fce05e2fa33dc60e560ee4f4cc6b0302047c435bb500673065023100f30d81d92ec6c6a07c97625276e287fe08dea6c94dfb7c7bdb0a745714825d5e2d4d90e02928e9ecb1693a4307831277023062fe2e0673f3e4f1d87c68814ecd8cf7918477c8bcf4728294c5f42a02870270b0be2a47be628067785de60e69e24c5a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f798d43cd4aaa493bf32161ea0a779543f3df0646a43c5a087b4aa16d4e6245938fce63bd5f3e241c9cb75a12ab4693d02307cc64b8d28e74cb1e8d3b98d0dfa6b793099205cade08436a29129d0e61a9861393441414a664f8f8a11c3297b7e2f2d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e4c71634c8677450d3309e5d93eb35cb5cc05284985adfee76d54feb53dfc2cea25454e94ce4c31ccb161776561896c702302aaa3239f11eb91154a854db62c73b576fd2c768bf8e5abea10d84fb33b89819e576d40edb17ac5c0f8ce2f2dc92a8f60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100961243a4c59ffd347ad0371f494e13dc144a76cb76f58e25981e7943c4a4151dce8b229740efa87ca818557ab6b64271023100b400cf765cebbe16453b817152245c6c2ce2e40ca4f6cb3debd1962602c22842b89b05f4e2b890fd4c87eda2cd80c5dc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023057dc25729ab81c2bcc850f6f18e3a502dbcb702a5004e5bbb430ded6b7f552699e2d9b10b3912144304d3e7bd2c091ca0230222594debc012d3fdb2dc489fff186bd97cd1dc0e2b6dd1de1d648fd9dbc49e9d69b03d63fee6719889812d58158560c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b2129d1be75ccc19304ac37373a7f12d905a0b859dbd804693d62472ba6b7ffe19f23daf5857b9c98c365869c446dcd7023100a9dfcd5c103f4f7b0292e3d6b8fcd5ce506d20dfa03298799cac563213b8b082a2fe1eeff99d73fd9784e9c5c2a14e960302047c435bb500673065023100d2de57abee1b90b5f8b0e44a3e1570e17474c024fd7d9c904acb25969a419cc1725f3b5b2c0e2d4652f7e1b4099d93d702302492d6b97105c35147e2f9239414eafb8492b008d9740fb37891bf6721bca9ddf2966e33349984abad8ae613231492d70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100835710cd1aaf6618f51061cabee7315b301457e3619a439156e06345a09219863435fa0869131419a69371e403a2c810023100e49868123a6ef400c9d4d342d15c00a008420b648d9f282a97b62a01380f777baa9716c2a79950064cab904af980e8050302047c435bb5006730650230193c0e365fd7f7b4a04758d1a2c081f490e2295fc287a4dddb9e5e270926437d34c0f6b056022d1d1bce1c638234563a023100c3fb6e7478357c27088500e5557cebbceb03f7de64c3c3aed28137a97b46c5a2dbcc652fc3c5feb2b8c5bae0857849700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303f6b84d26e457c7907e50dc17337473b296b7f81c0c6bd516e5b489c6a6109846ee86b575b53f1438447cb379ccb27f7023100e1fc5dd7e3f2c6510a164943545e6bb9777034b4c3c15ed91f4264a28956b6d2b31ee3d8ea960a9a8798e8084d8157930302047c435bb50068306602310094bf2c4ea8760b3a6e687110711f9271f5b2321ab8d738c2c500961399137b587de4f5f5862c70747811a0c4474d9c99023100f8c2c0442f11f288c052ef0c7585b3f4c1b267e098b7ca48ae456df0ca94e96dc67b882473ff2dd09b0b087f8b25fa180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305766cfc439accc78ce38f736f95aec2c1cc1334056640b73a91ab88a0a333d98e4e60fe02d2f81108738470e2f5652250231009e24726c03388ab965a19abace096614fe3ae427f2b740f53dede8a755936053c6cbbf1fb6a8d34e92bd55c8bce588a60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230166721ab509745f94e0c38c9a6585349477d902948de7430b8492af7163d72a6a8defea3ffc81133fd6f3ba80b773a9d023052a9fc705570dee7ced5a578c43aba95dc1093b4cb989abbe2fcc8b7249f01b67eb8b4e98bfc2aaf8df629218449840f0302047c435bb500683066023100f2923ee5eb9fc7ccc74cbf1d4a9179ddc56add53905a33c64e5268610bc560061c0dc3d350d80ce46b2f9ce19cec62b60231009351a6f7a7289ae0fe37876b33e9b513d440754025d47eb05a8dd86b345605eeeb198d9b28e81adcbedef2215cb903570302047c435bb500673065023100a3c4643274ef2f7d98bcfc46e26f45f41044ea3d89f0795fef1e9efd74b4bff846c804443cb4019fea4ee30a7ec50ead02303108b4f1555ddebb91a0552ac67ba0292732b0ab86a5d3dcd681c63cfa48b9a995d565b8c5963c2b287dd4e9bbc8d62b0302047c435bb50067306502301dea1ac7b37656798cc67bce6c2c6f7faa317d690b219a787951cd2196614929d3c2272644af0edecda221dc387b4729023100d8de89e821bec13109222a47c5852e7d81295fd4554d2424617fa0115cb50a916852156d05c236f5ec166c4ae39609da0302047c435bb50067306502300fcc4ccbfb19a05cc92580e3ad38ae9e443804b1205a7b27f5a092e112e54c38a23feac33a5cebf87516be7eb9e20db30231009456701e370a2875c01f876a586cc85f0144c7b3308f865c81c3e3ac0a390d21e3b08a841a3dd745438eeca0c34572570302047c435bb50067306502306d260ceaf213764eee727ff2715c15acebdb59437156b37bfa6b34a0caf5c5f3b8334d06ebdbc2bac137b48c8bc68e3c023100f4d01d220cb22452daf134c0d0a77d7580e2ddfca3c50835bac68b6a5f2ef4937bc6c3bacb79ee83f2faca4a170442a00302047c435bb5006730650230008157a4b62b7a042c3ef6cd297a57f913c3b8b074159b315a67f8ffe093badbd1233d6389fafd0013fac07bd16ad4ac023100dde1f501ee5cc3dccc32b8eea0fa10726562b4adba2c326aaa25ad19ab3b3a075ee8ebcb264aebdcf534ba2166b1fd370302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cbec3abcd642868434d01d845510fb9d9df74ff5b212fe22dd5b668ffafc277cc4288b672251f0360141b5830228534a023100e8d89ebb019b450898f41709bced366dde63eee815288d039919b50951b2107910263998694ab80c3bb3c50e68e3bae40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d39f0d2c0e742d1d84c58566b42432a097c6c3a9a150fed06b3c15e798125eef5ec863cd2a4ce6b53762b14e50cd38cf023100cde8e057476514c332e911e31b2b7c0d74d0e899c43ab11d095da8792fbabb6372f02a8629ab6794a45f87868e0658510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307d029976133035ed58de79357585fb118c8ce7730bef3e5de613f4e4397bfa9bd9ace0f58c7bd42e32a925d4db9fd17702304a5ea27627490341d2227a4ccf46c69d2eff65a8d079eca29f55074aa68015b90f30b49a31202080d9dee4ebfd3793960302047c435bb50067306502304efde4464687639a85f343dab452e55f6ad2fde7cebe169f14a2ba7b8fb627cb5641dc095ca8b91f992681d112d7f95802310081de5dd1dcb30ed9ed089f08f7cd9c48eaa7727a77a8cbdf73cc1ba364ae58f724aae25fd630ee1391a2ee6bfe0706ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c19736f4ef5c68a59bc40903b9dfb6f81f634a0843f759de52960ebc62fb6e017f08bbbb3de47d1ea3835891029a2ad302300ea37d8c5a2addf19a33c4072bbc5b7e709c6dbb3a83a5fe3376ce34b7f2e59e7763b091cc5bff8ced2c3a53042a96db0302047c435bb500683066023100c4e271c1b7a538ff3ab106d6ad4198aded08729ad4fbc85afc8b3eb0a169069c0275706d4c682a300dddda5c375361f1023100cafe1e5b6b9af462b717189ff973d911dde8fbae9196a217d9f73da412ab4a352c46d0dd4b3b99b2afda8f53c59246530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230444437ee218ce59027afb23425d64418b66fbf5fbbdc9319b646d2d8c9dc8f76cd2e178a63e4fae9d190a7b0ad682dd2023073a81e1551c234e38f620397aa197d17c12fd7aaf249bd9bc71b36ded7c9293fdd59707bdd8249cf8868251ade94c13a0302047c435bb500673065023100938264c372664ce6ed9388c881fed92a271ef5cbbdd05ba10e99a80818d999756b70691f4a287a2d23a467f23aed2c2c02306a648d1a2f15546c3334b4f28630c14e4674daad37a8eb5bbbf4b3c9b528e37d103e521c77a8f09876a8df1c1540e7570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230306877071911d68478b0f2e77cd921fbe6390788d01284b13ea79f47e987d89e54ea83bdaabd8f5696365f49bef15dab02300144de973268fc8523e22e9c1bfb1b13dd5a60a6266837a676071cd817666619af7cf9169b80b0e0b9c713f256ff8ff20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304a6663a8ca682facdd59a368aba2941d0b898bfe233533ad5ce10a7145e30e4c3676eb70795adbe065353368c429f12f02301612c1cbcbf0f051126de0461789acd751d3c7c523026f061caca12f78604914b9e8edcb93ed306d42d19339882fb7f90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c15275fec7d213ae105c5951c05182e168de6bfe108be119c2a7776ae1fe32989263dfac83696cea28859b17916fe687023069b5b582351b00446fa293381c7e0f9b0056a356a420aa2450bda892bc55eb91b89c784b6102e2a3151e58dbc23c32f00302047c435bb500663064023031ed4e78ec37744ad8631b984cc6eea511d5ef4a925b208efbbf8361c11affe79191748b1eb66b36e4351e6c892737ac02307be20c0f4553f05be682828623c2fe2777b8495ea9bc4871dfea874fb4d855449988c97bac6791afc7634905afd567500302047c435bb500663064023046d7d1e72f13bc44d4bfac06df238bf4fcb0ab243161c82ae3724b518ca4b51adec67f47bb5510a0c41ccaf2a6ddf5630230271dda0b2ac6b501ba5925bb6cf3c6b46aaa63deb36122c884a0b9aa6507e89d62ccacf502a8dcb3cddaeedd3a0307450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306f27242fc47d54ba8356bf2fd09b6b17dddfa8ffc3b79bf0871c6401f19a3c9085515c52fe294e22dcf009ae75933969023033b6445ca8ec2a26caf13500f352ee89b582bd72744b3abc85488df240d8d4f3b582e8cc54b78600767af9bfb4f2e7180302047c435bb50066306402305ccaa85ed716bdd703a8c74ad85d50b655cbbd3036cd13f37ac497742b8b29f185240a99e5c6465643803ba4ff1f804602303ac77b9f18dc23b434fe9d6eba8642ac2bd39d70ec95bcd88b8272eae032ccef53e285322f9a6e30c62b67c9a4b0de9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a3e464298b6daa19e3a3fc7a75446f7dedd52afe3e6d4aa54f944dc726cfea4177d46410920984a7329d5e82e080dacb023029309cde6d6a4040cda8d687ea142c94175c08ffbaf1f2b477b22e4edd517749bcad9a53ca005d23b51705fd5b55cbad0302047c435bb500663064023018a53c076a6e2e0182666962268357237f2758a94592af73ddef5baba6d967f4f7684b741667e97a18df047f4618e8b302300bd109e778c2f11114b6965e8f48e94ece4e44d0d63ed2e7becc90ea1667ff3b78417808b20f769c97cd6a3f67ebebb70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fe8bdc38c1420b4d1fc558e928501168362cec8409b1c28ef3d129a2dd1b70eee139d2abad4a9cadc8fd0cac590401f20230262020a00628a7b15e7bc8cf020fa0e53b571c6d1ba81c627bda4a572eb76c66aab447059afe6469fa0a3a757429560c0302047c435bb500673065023100b59255b056a8b8301ef57d49692714a453f15d767a6a45bf2f73e034e07a50bd53d2a55cbb9c1ccadb51da2a822fbe0b0230227941dcd6b412bb49f52df4f859185b678047b3a3797c0558e171e7795ec2c8c1d26960abfa3c5b19b83a355cf06c8f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023030d1d4494c93249dca941d78cfa23085d8123f51f256edaa86d061fd99f386e35ea095afcd0262da728b784b6840e29f023100de22c92521ba550f6d21f7e9a49735ca5ffb3682e37c7fed8eed66b30b02f52282f510a98106c3da71d23aa7a7b0523a0302047c435bb5006630640230200febf2821588c191f350277e4e89577f9b8f600eaa49aa1f25b2787be67b5e9190bfeb913dfa822c7c1b564f59964502302683ecc96dc0bdac531eaae501b1fdb5950e55871b1524dc34b72c7ca297556974cd0af1616feb4a9a52767d2847062c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023001cbf3d3a5e1abb7e7558775618210831fd14629cc122a3e2f1b67e7d70438171c3b669503404b9e89cfc024799ae12002305c935defc438a4a5f65dc04d8413747fc0ab515b18c3687a75cb89cb03d0dce8c83bd0a6952267012310e527f392a47f0302047c435bb50066306402307222c14f0128a3d8fd12f4a30fdde3a77eb5427fd74c44a0b950cdac2f8d11c6c234e7ae560274a78e3948b2fe0642ee0230494ace1d2e393e349ff0bc2e240b4112f691ac05cebaa46ab163f3ca68e260422507c5343511316fdc02cb02822f5b4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e12713e5988802a5d6d345819d11d1bfd2de31bc0ef70140744ca84e813563a452ecf2890aec7592697c1a1eb38e426902310098952d72ec997ea04298ed28496c710046b21170904485508b570abd65fdfce542d49353ef22efd7873740878c69b5b60302047c435bb500683066023100e797933c3521274a09cacb3fe379ea72f156f2ead67293defd6433b69f4c2e5d0e1b55a4bb94fa0e1199b6424d6018b2023100bdeebbdb7ea8b2d1ee08f1dd3a5b54a9953b7e12ddb5fc181e3bb6d9d0ff380e39de3b4a185a258a108e29a80416c8950302047c435bb500673065023100d5da4e6b7b5a3d3320487a13be01f35e81bc5a699b3b80350750da97a7575316a6aaeaa520b98a29c6ee914c00a978c202302e1c3c37bcae62dc0bfaa46d75e34a4fd392af5acee2caa1d5f3e3593d26447d54bd15fa1e08ef16e46f313ebd3327af0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a0507b8193b75929c22dc244cb62aee978b03ab2c75836ee947027e49aea31df5dab0b4e820c5a4d52d193beba800c4d02305bf94beadcbfb27b9030773f116f6adfae3dcaa627b0bccfd1f2696b1607fe82422f515fdf956f4c2b255aa5414f2da00302047c435bb500673065023100f9ac9f278089943e7939894bc7a7c40fe0a1b7032ea55dda68c9c6f344e96e806ba430e796cdbb7cceae5748787477e402304532c7f1f7c746eb586896a6d271c5ff5eb541f40c3504bdc8c5d284dd37f8b15981cd38518c1e1b6e96ed59929ad44e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307223ad12932f8546a32d5b17cd397d74e9335bba9cbe324593e8eb2c04a6e148955910490a7b5cc07ab5b78d6ec820e1023100b14cd4eb8779456bff5a85efaddd86092a5ef1ca5d3638c90fc74d63e5eb3e63142a55d76d290ff87df19da32e2783da0302047c435bb50067306502300c08c3170227031008a88c4dbdc627f048eebcaa0dbec4c46c791d4d9188886f643d079581a0eeb2e5795be718445c88023100f8ac82ff473aea2307a2c122222100cbaeed143664813f236f7c12e9a425ecc51d755122b49187797360536ef7fe78900302047c435bb500683066023100db87de742ac329fbb7572c671df8b748d9e729a50bb7f8cc70103ae0a1f11ae22ee638510a9195863624ec21f2529b060231009fd11243940d70921116f0f79ee61fe549a36ddeb12ed5940142efcda2af1fd7fc61592dc8d3c7fa9f88307259be6b140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100814758de62fc108b1a3687419471565e570eee166185856e93a1c53854ab88481bab3426d2446cc26862b56946ffab0902304b0dab7ab3c3442a81f9a5fc814282c614ea053cb80889799b3cf047dfbc13822328311d6e6b5f8a251d9e22f7858bd00302047c435bb500663064023022e637ca3199f63b6bb108a353102c7d43bb7d9b8854fd9b5a3920164f27cb09204dbc0b22eccd5c8b7192eb9c1e024402307fc4f83e982f7ecaffeff48fc87e92bb5be2535d07c3cb5a862a8714c0defc1900644485aae849ac1784bdc23548c82d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b60490ed70148b81cbdd9c7879792df0c3f94548e5896aeaa48b19a56f895235a31b9f046eeec4d5bffba2337d956ebc023100d950a8e8f0b7602e2fac463581e6f8cecd9a5d63f860832bb57ca7effe3d7e855f4d20a1fc95cac34ba6a1191db6e4eb0302047c435bb500663064023046d7d1e72f13bc44d4bfac06df238bf4fcb0ab243161c82ae3724b518ca4b51adec67f47bb5510a0c41ccaf2a6ddf5630230271dda0b2ac6b501ba5925bb6cf3c6b46aaa63deb36122c884a0b9aa6507e89d62ccacf502a8dcb3cddaeedd3a0307450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303b985fa2d090b120ae512bc8e1535de0cf217a054fc84b6124fbc9da653190e136e54b2252436081597c174335002ec6023100994ff0dc50ca533e6b26565adbe213424e826808d763f40b540903892eb03faddca0f3a03b2a8ea6960070e9804745460302047c435bb500673065023100f73205360b74455fda48c7d30163f30d50d8a262fbdaa75c11dcea346f98889a2082706ffdf6d5951db768193103d91e02300dd60925e6c49dd78eeb19c30fca379a6c9723aad3b8604846f2e474a265ae6513cd82539121b5855f4b957e0ea56af40302047c435bb5006730650230392ffa2839498e7c9770997bb3fc9e126d356e868fe37f0145a454fbd482241e00fbf81d899230eff7a6856d115619df023100a35a83f09bfda333e15447528684c8ccad4fd534234f0e7bed3bc4f1509448d1ae7fd246ad3da2f67a5aae9bc209f85e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100df60624539fa675d316baaa3868377b28dcd8463ff4b6d3808f674fb49c15b64ab148ad96861b84d4fa7f8835b289dd502304f3abed009bb19ae8ce171ce24f2320c5ac0433fe5707d589c9ba3255c22eae2bd71c36372a5e2cc5d99c59c84c7b3c10302047c435bb500673065023046877bc842673e9f9fd542d95d3a09626f71bca08b4daa0a0d668111c1773bae2498e81feb0417a3b29c4f8567401832023100b6ae0ffa12650efaf7f1c0d862fe7a93e0fc8e21e9fb931b8fc660ea71f0818e3e5219f5b02fba6d06c8274e5a5903510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023073d209b9232cf154bdda4e27f21426ed025af96c946366f3ef67792eea7df922d0cd05ff5bd31028f2e29673b60818a8023100b9c6e27f44a31a4244e48187023babc17a167e02ec882c8ff213369ac5741756b8ea3ca4eb648eab4685eff56b886b030302047c435bb50066306402306b0d54c7450c91b726ee4e1765e51224b6566f85a6b6cd57189c0b0c34586a989c4ff96881bc9fe3a9cd29c90f16c087023033d01fb98a0fa3e5b995fd78da18c112c3056a3700a1fb0cdb0db04d402c61ce7d3cc014a2282347019a65181e12b09f0302047c435bb500683066023100fabc8a19a16188b8e41dcf407592cf719f8f4fc567cbb8bcbf2b0c0f27f58919132c7ee5bcaee9287d44809791de6367023100eb3df70eda6f64ba418433c1ac613d53efbc556ab70fc4523a9a44abe6de11c2a242d1059aac2eaf49fc82d333eae37c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023049be623da5eff1811f69f42588bfbdff561a26748a6654deff3e0c65b1b8c4d8a931794eb6d4f93c570624bf32d6ff26023100ccf9cd8c83d2884355ef676c375689281e0cf65bbdb40db197eed51f58b8df3f2e039287dc99a6367a5a7055305c5f290302047c435bb50067306502310095856fc84d00652abdf848247c34fd4ae0940d0254f345f6b2f9223106779617ebe4516eb4a5235a17c33cd15101d0fc02301c9dab9f2cc7ad85e41432a98b1cb96070c276b981d51da59614b2ee538d3af16bc7306798fe514a2aaad6b114318b940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023005caf2bdeb38f0de526a727985020127b54695990ada0e215b3eb35d0fe47f94539ada5cac43d64fd71b32826614252f02302938199a8c5588c6c2fe4d67162cf55e92cd4fb3f0201b70a2cf5dc974eb98b34ddff60b9a3015f55e314073af0836010302047c435bb500673065023100d85338dc5940fcc12681866bb1a4eddc1ea68327d7dae47ed2d9c30a39a5ded6105214a71ddc220e3153e662ce5f967f02307deb98dcbb33f457180a2ed57e1d9bb06760771a6927df49270d87d10e27c360a71e29f42364e1f147c0e81c60690c5f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023036a2b6b1202534c177f77d97cdd178304c8e97b79767dc856b7ff0aa96a4f5633351586d7f96d359ec88a857a777b82a02305fa76d36717e64fa7341dcd4b5cdd1027424a1ce2330e94f928c00755f4987adaff8d031affb236bb6cd3503eb29c7ee0302047c435bb50066306402307a789b055f2c8c03dcaeec46b558f4e57c7e60e320e17cd7f2d0a6eedaa1f5a8c96618f478150f314534ebe90bddbd300230285661039e9d1e2f6ac5304b04df7052151ba32493d6bca8e94f54d7085db1d46c7b8baaac667f750d123dfca90496ce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302d9954b3662a98aaa8baf5388a5f4cef4df71ea1727243b3ade5062d7b8036fe17a20042f7b9e7a23e0e52ab009be690023100bf348ba78aa95a3602df3c4b62aa7c902784c6579174326ff9e961844a8a8c17cba25db4193dbf76b9df3033ec7d073a0302047c435bb50066306402301253965105d1f02b497609242762b7cb4494bffe366234b1c36180655da702a9655a76c095fe8c2b34bd8fda7c365508023037a4bd7cbe418f3fcc12a0808869b09ecd14b095a32e438f6c7660cc9570d3f2e25d4344900353fe80e7ce2d34fd6f750302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008b4b34592425970be8dc9d4a1a84b67f4c4beaff4357d20b66b80c427254810ffd550feaa644929e687d6cd6ee3cf5be02302c9c22f6d14ca299dfcfe354181623c1a8425ad7ee28936dc967b0b91f35175847ac8d3c71ce0da2355c9193de9d97890302047c435bb500663064023039368eca9d708947a7b1c7c71ee888b7afc081c04093a5ce3c70206c80df0d20b410ab336684a66605cc5a2d36ad669f0230637e33ec3ffad97bc3ffd5e5ab1ca96aee71528e3d7712c3489924a88edaeb5f79cfe94f71cf2159336e304d3530b8aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dfbd356edb9c6db72b703db41b5fe286fe978c3144f54c020b38d758d7577bd03f09b6ceaff4930fdf010a02468ba78e023078ac4d8247fb7e9283c3b923f5d986081e831549dd16befbaa77be6539fc4b35db8c1c24579959d6089dfd8548580f590302047c435bb5006830660231009d746215d25173ba96767977e8111e1e796419a38af6c5328754ba0dcd29fd961b1bda7e917bf9fdc5d28af7571aed34023100834592da03d54bf708419c47321f824f945918a852f02993c6423c6a9cfe8ec44315d1a2c4730af529e4bfc0e5c55c0f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302f18cc70467b023bc1236975b096ab38aea07e2bf416a88f0182f34d23c21178057cc1b681e86dd23bf02d1f1a4064a20230647159b2b8ab9a21f4b64c9cb97c6bfaa67a77fe32b97974d2bb95654743e17b6b17a4544c926d95c8bf477def1a0bc90302047c435bb500683066023100a8f5a970ed1308e9e5b00f5c90e8119cd1c23d914107bb0341c3df524d47f163adf1468521ced5beb300753f3c265966023100d8e9742dc4fb5bca43af3050d5257ee77fec809daacf2105654cffb8cdd5ae992265d26a88374d6c0dcc05bdacbed34d0302047c435bb500673065023100e1dbf8ae255744ef78fc50c0696fad094644463bdf6ef531458ad495ad1f9ea100da587740a3e07409ab32812e5f1aed023072ab5ff48b2286e329474674fa64a88a9a145ab66c970f0545d7b6d6a71aa7a36ddfa632a92afca70fb9812f5514680d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303455760f0bd58ff10f58457139cab5a97e322b1ff172b265accdc8486cee481d275884f715b31f20ee7c8ed83bb3021f023100978a8d0aff5338c09a46b0acbddf2245a8b07ca9a640fa1614b5b35b372e3c6dde0dc20874dc32845048a7f901407f080302047c435bb50066306402304ff93867580562735f850a0b1cfbc351c3b5d97ce55ec36d52c3992780e024fd144efc8d94168333db01cafe573bd2fe02302935e740f53afe582038404eedd4df85cbe1d189b3e7042c0e4130ea1961010b69b8e6b940b41d111b14c3db5c038cca0302047c435bb50067306502305a527f89f9683b44aedd10c88e6ab5dd38c3c75d4fba303cffb739fe37747f93a70a55cabc058d5bdfadee555b0e9387023100d38ea23896ca175023c50c4f28326cfba52d94ff0d11f0ff2414dbdab4bfa547b523e85705f0410427d68414c0e7e0a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230515f9a315e530db4635c645a50ad6604f42a035109ec69e6461d135d671999353523785a8bb89d31cd7c37f671533598023100bb35d96c94a8d0755ecc077aac2c0636f3f99175321f11199b9207d0bfbdeaf5e74d7fa6d6697ad30a0a2efe9fb6d8ae0302047c435bb5006630640230314943ef6015b07f3fab45d68aa5eebbcef9606808865125bcf3959b5d105ed18fa7224ba2c94972e9b923f2b4dcd657023011aa5071ce274334a8ccb438ee83ed4ffdbc1a98556aca7bf833eed0e256b8b4fa1ac55476914fd73ecfe8db0d1589970302047c435bb500683066023100db87de742ac329fbb7572c671df8b748d9e729a50bb7f8cc70103ae0a1f11ae22ee638510a9195863624ec21f2529b060231009fd11243940d70921116f0f79ee61fe549a36ddeb12ed5940142efcda2af1fd7fc61592dc8d3c7fa9f88307259be6b140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c1633dca2cdba58c062a52c407cfc419cdeac83e6a09de503abef05cb167a4871ac51635838a3e682c7262182a6d888b023100886f8e88e5c758c70761fab9911d01e89e194800b04ab96fb34f89ef4a54d3ae756dcf1bd02dcacbe8e58ba718f61ec90302047c435bb5006630640230642595e0c8aff29f394051f8ce5b3ebe8ec15ce3ef57ba7581f1c1552b3834c3e755c456b91d14cdb2f5f440e6759bc702302f7b06e7abb682195cc56026446d25fdba8f4739c5e4a1a0a5a5d0997d1a8991c0dd298f6d51b962d5b3c1674cf1c8190302047c435bb500673065023052aed1eadc71086e39471ca2e44f64cb6b1d3d406913631a37684516794c05b65b66cbe5c480793884133353288e0b160231009894210e3334cf33f3c6b3742a36bc9eea8018cd69cc9c654dc48e21fcc7ffae611ed47257578556b9ce14138ba8e3610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ee4210634cf49373a1064022a1fc8861b2fc73b4c0237396a77f28278d396ba3191f302966ecb6d0445550bde1915ac7023100a9d8611e1d89d269874ce6acdddd25ec6216ebe02412bd539f85c661c457bc49de7a07b283b69990395d9159695f01f10302047c435bb50066306402306e842afaa8ced17b116e40228f51abfd9ee510a6e0d2441d409e30b9d3d66e63b3dfc7e08e82b368f990ff92c648dcd40230475b743674fb36bdd71a6c178ed9a91aef414c0d954db25e2e5e0c3b31d24efd552718dec36ed692d7c2e7921537012e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ffb481dfff06fb77aa1e5bba3e5ba51ea097e82fc576a5841261dd08b57aaa8e0ed8ba7c945cd1332b473466341b9e64023100f07a8bbb659b6424d24aa18a17302223f12b4ea15de54f0dd854ac58d9922d867cd0cb26d03ecf83744fc0237b9e4c210302047c435bb50068306602310090ce90b3c7b32abe2f4fb4f57ecb4e3f8438b818f8fcc43833133472e8f95567f88110b2485a0a5d4aaae84ef7d0fda4023100a57422cebd2d59dd58dd19be93a0145ffce96c2f75872be51d64e2e1317511725977dfd8b709d6e98f637c5b80c7e26b0302047c435bb500683066023100f54a895ca1c3af65679be1f9e57bb50f8022830daac88fac5886c61bb9f1b0918d35305729afcfe6e1522a6c97d9947b023100dbb5b310623478fd230b99b1466d32bb8bf535a267f744fac106350835e389c53780e847dcf26845cffd6d3375b71d180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a5ee0347b5c29fbc8a6e1bb77252b612d6a321ff4f5de22739a71a18afff18344c7286ac038fe91631689c2d3c0aeb150231009f4a27dfa44cd88850c6a024455b37b04611c758a859964cd4c48760e94bf4ca84a27ec06e6fe10bc8e74b9c5c122d800302047c435bb500663064023046d7d1e72f13bc44d4bfac06df238bf4fcb0ab243161c82ae3724b518ca4b51adec67f47bb5510a0c41ccaf2a6ddf5630230271dda0b2ac6b501ba5925bb6cf3c6b46aaa63deb36122c884a0b9aa6507e89d62ccacf502a8dcb3cddaeedd3a0307450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c3e13e5a9113ac973f9ccdfe67c4bdf867cce0a06dacf128f169dcab94a675ed390e78941fcb45478617cb245ee2472a02305f56929bde89c8523ded28ec0da55e902784a1cbb91f713e137de019779ba77b6716cbb21be0380a25d60db215573dd80302047c435bb500683066023100abb6501d18536e51cb027230269e13d6bc03e4ee79c286e44f2b3f0108836b6d999805485a61df297ef31f177ca0e2bb0231008adf72cc6f4e13c6961774b67093f19fa4da5ce8837c76399032789755efc109d21f3820760399ce834cbc64b545b9910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302e3e64445e9ed22781509904c2f36ba7646d9ea1dc0ba6cad3ec74b70891df0209a7fbb6f9c7e53c724ec2747fc5a8680231008587fde76ae2b3be09250f373e113d4f0a668478ef11c794fa7337edae32e0139720756b0f416fc7338d810e823e41250302047c435bb5006830660231008da86bc3921b3691bd1b604add02fab3285c6a71d0e7c32d0faf0e9f7973b9ea08fee2d0a69740c9f1ee932f77fb42c1023100bf78583f9404361fc89a86c620ed2ac4187149205e4fa6b426b77921b3e7fb6364ce91b66b1cc8475af219ec3b6c7ba10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310086ec71f8835051846ab82bd7724c89e6c156a0988be6abcad060a89f86cc6f1780e477458190d83637de0be0bcb7a870023100ea1221b42b37eb386e414f9c0bddda7e732db863e0589ce9ba9725338e8b4fec68fb88d9b8050b9a65aac56f5ff9f7b70302047c435bb500683066023100aa1f45ecf9e28169365e5ef716ce353da6466dc45253b70288c2c8db2d5648c97d563358bbf124afcd4b4e1d2278c42d023100ad41a40f96cd2902408dfca8d2580d61ea35f8c4152ec21c6ec537ede62965715fe24613bd0991e2207bcb264974aeba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303a9ac2b581e1cee7f69cf483a6d0214692cc383053ff5651324ea89a6e51e8a97c4cea1c4b7cb1687f8be8c871fbf2a0023100b09dcce436448d179e2020f913796615fb02c7f5f597c21336abffae4fb042438c3baedf8119c06316b726142f99aca30302047c435bb500683066023100b482648d856aef2e88e9afb5ae06c153bb3d855702a82c20d234201e426330adba038c05f495203fd1a0d25500a4b279023100aa03425503e78035ce7fc387528b0b8a51a6216c827a3b5b25eac502e465bac9f0d673baffe7bd671954c8e90c7211450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307f54a4e357c0ad780fb80e3263583af598f2b2e61b64f2f9746cf0140812f646a6b5d38c095e5deec13a1a77f1e791f202307694501c5c64858dd3ba2c3e99f28720af1df34258ba764247ce31f6c31942ac1f7847f975e57a81d9698506ed7af65f0302047c435bb500673065023100df49ad298a81fb566719873b44c9828f721989b95594d875861b3524ddb6dcccc2d7e1cf9bcbf0a4d4ccb679b1c16ee30230470fb617aa2caa4a396b044e8ea6671bfba7112df08e910c42f34ed1784c6e0dfe6740a3e223c68e49451443ad273bbb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dd32cace30d1a73b59e2cdcc2a001d986e498ade70124e5db3ccd5ea44d6551c750715fed806916d30684a4f77bfc04802302f93ba4142a42850c870a94b2e639cf26ee849f44b4ae8bd8423e6ff070d5492bf6a36923fd8fd7f6f1254dd826bcbf50302047c435bb50066306402303ed720a9f1f4eabaf55658020b8495e8afb35dbd5528c3df2d0a3f2b4610ac7f2f9cd09c449c80bf067208bed71ead4b023040eaad5a02791429abbf0ce7943585091bce71c7d1d04632479b5f0e5202d6c94902f15c8c873fa859c3827befbd5ecf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f08e44f16afe0886eebc59d29bd6ca12c26143afee6b18cd3e536b5fa53eef247f9ae621072bb112945b78aefc9b80d8023100908c2bddce6d737b9bef65839ef77af98b7660a0d3b731148fe321ebea145bab06cd335c98deccefb6dca8e166b83b970302047c435bb500673065023100b9012103a38d3aa28767d6ec82f74641064b71bb4de2dc09afc5884ad60fc7d59733c8ed668d2652c56c220de266592402307037bf1204d19eab5df5d1ae0d3b75b60f2aee51e7ef6f15327018d42818102e120bfc68e65ddcc1b98737542ee5a2460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230238d70acf7aa5142ced3237b96f00df717cc691c6c35dc7a1758846b2ca2c39500ecc35a4a2d0d7a33db4a2ebdd5eaef023100d44e0650d448233979ecd53524fc5973aa28c8487c3d7ad14a58575faaf3475331093100df094fdf54b79a2eff8274260302047c435bb5006830660231008a28f42462c6a3b1f694ae8389880e672e027c8fd1f5de35485f4dd17f22fc6c3e6e02e1c544a6420a5df970bc247900023100b2d3caf1aeea9b1d4c0f43c0dc032966afc2fb0c9d5dee8d063498a71cd247e7c906c95c6db257af3ffc66378fcb24ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009c90816498d75de9da75be3fbe81ef9bc16d9e51c77ee4bdbed220d18ac4ce6aa2480a68fa69c5568e94a960d270ef620230739a3320cf577e6d2c6539de9ef2f09969006fe86457c2da12e0f5573dfa99b96ba9d93e62a8d6fae5b4a03bcbfece910302047c435bb500663064023078f3c6d1fd2f5e57e1acf14db06a927f2cc4dd7e7e194ed267a54b56c8c893adccddbaa6a29dff2858b13ea83ffb418c02304699a3acc04318c17207853d608484282901a528a60651dc29679061f4d475d83622ff9b96bba4360a3b149fecc575b90302047c435bb500673065023050608c3eb665b7a2aacdefc686cc24d2c016181e9c56f4f91da77334a57e9964690907153c1fece32170deef2448dbaa023100ebe1c38a34c725ac28949f13d067fcebc0bbfe99ece4cc01a37b0f6dda6d37239a5157f8479c380f53f76d3110dfd4470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303bf4ddf334245151853b143105a4103988d53ac855e502c4bdfb17df8f251de8850c76214cb5e368dbd7783f7b5bf672023011a054df9cfceb7bdcd1b098124b638b789a6eb39725dd6d5946fad4570425a07282d6cfe44ecfd3f11f048afec0a7d90302047c435bb5006630640230533a20517a2388d43456feae7d9e3ae64fdcdf98b83dff423b86bd6baa1ca54ccd0c577d98da51efab8d980b15876f8002300f97274572a1364775258bfbf1ce7f7fe7ced887039a255593bcfd13f14069718dca7038300b4e52ac360ab0464fbc9b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303e2b82d538cb0de18769369100f0bb7686991e8629ececbe09cdf6c65d180e4097a7ed6451bb801b3cfa7ed1bf84b61a023053ecc7d039a07cf0b2348e96a35839ec5b8c1f54d1662a878d14e7713144eb357395bd56d40cecf44cf4a3e90038c2610302047c435bb500673065023100b42bd05d324914f9beb2079283dcacfd59e790ce202587dd58089985b852eb7d43ea1e9c000fc34bbbbba3c69750ec4d0230363519dbba15d749f1571c6a8f22c18143a54fa060c1ebcf9337e400860b8bb8793114e6f21f269426222b0dd76997aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023011a22653a85bde5fe5adfc5bfc79245dc6a3de70d5f3beaf4e3e4e6b80ae1541ae782026566e9ab5f51e60fafe669a8a023064125b976d252f5584b741b761ce0af8999af9300eab927936212a6a75c2b537172e4c6c81bd27b3c9b49279c5582b530302047c435bb500673065023100f3cd269a7a87f3a8aac1762b57ea1ea4a948075d0156b06c14deb2750717d89afedf42e6cb0eff71b4784586cb2fff5602303a3fff64d9c6f808aa177af97d74aca1036cf9cef044b339f7fac277c1db4ffffe9a5d260d0d9fe18b38b3f2ed206bb00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a2a1593ac925d6f1658b3db371b4f8ff4fad970f48dcd03dc18afab532eef5cbe5bd8d27ac48c6a6ae85b17638c01cc1023100c8dcd62cfa510ace15311750a4ee84dfa947d90ec707ed2adc53d23319226694cd5cb489e4fa37d9dbbcf1edcd6ccbc60302047c435bb50066306402300735ddc9d61fd4ae6e13a611f67f2d2fbf80791010569bad249999e271d4988b58ab539716861118299d3c1528dadb5a0230137ddc7bddc18c0932801df8c4493d4559f68c05e66b42e085772d2063b05f0451a9463671d540d2018a5b69110428a00302047c435bb500683066023100970e7c5996b63d6a25953b61add0a47010c60e767ec2b0bace2c2c2929619eac120477ee4cac14daf14ccc653e995e780231008f11262736a09d5eb363377bf16dfc46241212830b52fc465dacc1b046c2bdf99156c5f22c49c7675605fa56862611700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009aa3f8609902e03e7257eb4efef1edfc8e46f154f06793fb13d3c34cdfbb06867ceed466b69bbf2d422187d7dc38993b023100b427f709325f27947f9cd1db466b0c120dbd5b504bf03e998b50cd5b7f5bd37643d923f2bb0a9128602b46c866ab4e9c0302047c435bb50066306402305cc2b929562398006b3b62287b69b999f5d9b1556573159d79291e72f8e335d79ebf0c9024a43e145ac26c4ff553a9120230205795f56b55937858d23b44badd2d1a4863a6e61e5e914f9b1fa56d657c84d6bc70208c5deb54cf3c7cc4e5690c9d0b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306f69ee12cd29a3b062091d901a719e0b64b94c8dcd194e4a74b0690fcad88e7a10deac089ee31967d86e3b6ce41c61c202303c097cf0e7ee89752f824c68154f4a016d3e7ed64a5aa13495d1f3fd2872ae3f8a505c173191c32aadecb577fa1cc8f50302047c435bb50067306502306683412abbd10ac47f1f6182708370280a549fb7c3b3166de01cb5666658995d7d1cf168788bfdba6dc54857637dec5f023100c3830d91bd01a70aa8a07818dc9dd0b477de92bf30420a0a150caccf28a2242b2acde35063185f79ac3ed2a476229e890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307d161186594f3bd93e6e9e2a99b451666ed7da8e40ca4602b1369fd181fe564a9f950e9faf50eecdfb36163040a2aff2023100e08a3bc6bc0eb2deab658c428b89286cfbb76b8cb96ab2365c069268c5eae2c0bdf7e1b8513f6f6417322baf4881f3420302047c435bb50067306502304a647a60cd48dd0c7f82465f4d6f9ab285e682ffab51a964e7f7019b753221ca107b37731aa79df4a16d496da5a7ae86023100a81752f140a6a7e01db992f362d93fc4e190c365445f38145e78105eb432371eeaa06623c703cb11e5ea18692cc435e90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230699c7dfe453f413456a7bf6e20f817dfb03c5b842a533df1fb709f60a1d8cfd79dbcfa7d43ff483aebf361e8fbbfd30702305155e474c7c23441d9b7a6c2ac11f343ec771803dd34f9afbb9ecb313d823f277a5842aea3f6634bdbd7d8de0a58824d0302047c435bb500673065023013be5514d3aedb70c675854cf81288a3eb864f6aea57b8889e926452b06cbb50f2203f51372814dc518fd0144b38c7d6023100b9e695528311f258b04978a6066bd0ce95b32189e9a8566fcbb3c77e8cc41b4ee2e2dfde6bedd90075233af3607377880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023050180a34ce18927cbfeed94b7eb6ce0a98f25f056f8b61d82717363468e684928bfc592c878836bb81373a27d6919c6602301e6b767d0238f031edc3fb1a90e433b43e32d83740647721299fba2714536c5bac7ca25d899d7f809943ff29c2d0b3800302047c435bb50067306502304f1958e9b742fcc4021832e6e77b9afbb859bca0bd9314433a7479c1a50a3099ab37d8e65f6970010245c25385c43732023100d58c7508aef6e85bed43ecb1df60aa4398237ca67eed704597b9a60e3ec9640b8661f54f9a8f193b0f609dcf3db3b8a90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023056d485849715f1de258394701fdd87b45306c3b0fd8be3f9233cbabaa5a43132cdcb765cd355d044720d0c2b35143e12023067dbe07fbb714284a5ceb3f332eca82a5b57d83cf778c64eaae6acb80c76822534aae453cf2d833815456f9f69bfbfee0302047c435bb50066306402303fc10e93b46bc9aae455d9a2292809ab1e538ac8fd2b8835e963e083c9de9bef48ded11539a76bd71d7614bf71bd903f02304897d07f35c202c577e9997b55e6029331f553050aecacb3bf7ac284307e4bd5019d14d73575527d0a234b5daa064f470302047c435bb500673065023100efad0bd4bbea35014b3e4ba9610933c603a097bc071d653f0aca5216669493dab4d5aff5e1e2e02f430c410969db74450230402b5db5375959e9fe1df76fa2720a0be0ae8b85fce8ad6a6aa49b98fe8b54e67a9ba88fcae10c3110a294e118d646c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303cf78bd2645a5a5485a71bb933b352b7b91721746bc5ce18cbba6a8ee889880b61fa7670a7cb9cd79c697de5914e39d5023100a119a0e71e268224b64ba9bc55950c8c439ec78519ee653ccf7e5518f63dcbf1e10aca48e724141e04da5b1390d3ee870302047c435bb500683066023100f8d0198ad60391506cbbe6d1aa10a7e8dfd2ce13750724f781cceee75a0a7c28c8bcefe8e2051fbdf3502ce93ca9beb8023100cfb5b6385dbfd9e7e4e0ba9cad3205ca9f53ac5bc3a4bf3264ed4103ed66cf7eadd79a918ce17519a841263158df7d990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300a7f283ea17907d6cd37fd977632bc59cc9cfb521cdcb83de86444aeb917b701f3edfd0ec88903dd608bba0bb1c2c17e0230751d6964ce019230cae0c275da90550c678a19e7b290ec211dfd81c4b25a09a67668ce7927479450b68af27fb8da28c00302047c435bb500683066023100a780bce69d7072e2e59f649d0dee429b519b6d6b8132fdcf6ac0b35e8878645d8088458de470ffde44650ef31a4c1aaf023100ff0b07e46dbe13813d25c4ba60a17fcec1227c2b7c5b676b0a041b109975dc135582858c08f99aac5e8bba9898015b940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023060c2d8478b96668cb4513d68a2beba215794d1d597975df8bf5fd428eb0b0283a4ccaddf65392ff503feda34a32cbfb70230778bc4e004bedb75f4e86afa80e641f09f6ca27a1c8eb472ef76dd02b594eafde0d4b02e9e32216b321c659336c5869a0302047c435bb5006630640230213c3f84440e01957bab5aa6961352c4070be7d238ca5ffd347c7689036525297bbd324b4f319ea79ca5d60bc3198217023037f7461b00cb33042432bff8d78a69188071edaa99bf8866a4602d4da8a3f0554e5ee5596f39ce6667870c79ed8853fd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d34935800fb776c2fbf67ef01a5099198eb7a1bfcf909ba35d646a535e3e534b3f95f584a4cab713c8f83618c5333a2802303521b78e81f93e61e153a6e713a782808542477737e1e5ebfbf0129095776570ca1bb43a48ea39b730aeda49bcb5d7ae0302047c435bb500673065023100f06ca4186d6543b50b30c35a7e8b8cfe45786fed8c98e38efa82ef972898995165eba25a92b42b2d0f93816ce14bc6cf02306118aa335e50bd99c350f98e2f5ce709e3ad18133caa1a1fa4939a00eddf94e805b5e87497111677c35c4b95004d120b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c268a830fe4aef539a7f4ea01f5d30407555bd5a8828792801e0c4547d9c04c1e3a42e9205a76e5494d917a286f9dfff02303314bbc4f45b0c686a7d64e4e51b30cd4d029ac6f9e3378e997f06a7c32934ace8edfe8ae1b5d70af652b4e713b8ed260302047c435bb500673065023100ee187739c745c20e7a18ed2a5cb02e536b959d7b2624b5c0e46a270035ebeda9003c0a874d6ea39698d61b255c13a68c02307f3dabfe8bd138b63214439ea35e8a1aee2f94b674ded0d5ee8140ec7e0ca7d252b5cce5deb42b7806d7db0a8750eb740302047c435bb5006830660231009a52dfc3641ad86f45699036111feab1c2978d9cc065a25f700044062c5dc13367fb396c65e7d31386a0f91ccd7c97c5023100c51af516679b2f8c4bf070068f5e76560ae3727a95a4d25eb7a268f0c1116d8bbc1e3a0e29b048f428413de672eecb940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023001ff979dfc6dc68e11f59d309fcdfec1f9281a9080aa72b84329254b71766c63e36398b8db6bbde72b4d80b35259616f0231008f0856af794bfd032891293cf31133500c9bf40608ea28614206acdff69942796d056daf0dc012d93cf87883d74c14a00302047c435bb500673065023013290f048218573ca90d89ef0d6fb11ee4e7bb0db79da9caba37ee499d465a93bbacbed3048467f6d96ed5ed5d605198023100e12c1bc1cc6de7fa07fb230ad196803a67eda69bd11d1471844f2074096e010d36df89eb2514d70e05fa2572a2313de80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f18dcdd3e6e040e4c6f55d4035b599557e914c283f36cdf0e328792860062bba902d7f5af1b6b4d3ebc722d8f71a4cc1023100d138c6d5584c16b48df0844a1d905e0a81ee1269d5ee66a4a0bb7fbd3c033c13b4be1d098df775affe4c141e2e8b6a4f0302047c435bb5006630640230745a94050b409e3700309998c885b497adec6f2be725a8c13e760774d6ca904e880a789e6774d8ca056ea25058fb3f60023070ad9649655fa3a9c766fabf12bccf0b64be072a382e08ce4125f6bf29bfcb6313be549f6746ba1700097b09af78d7950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e47f75939e12286ee9573f19e6729c0877f28e97e891cd94631e1f49fe359d4ffe075efc533326255fdec4282d600a8602303849804cd1c83c1f83b032c7066673488d8e02c8fe1fd13a6afb9de0af0201b0b5074fbdcb20a91100153ae2f5478a7c0302047c435bb500673065023100be57dba6b3b4f8c52118616c0e22eb3f873fcd8313cb160c3d9d62a3657633972a51a09437d531166dc738f03ebaa8ec02302aaffd35c59b638afac85d799e0e89a7162352b0fdbb53ebc0eda1ed7012057d0ff56f1845200a0981bd412208da3d5e0302047c435bb50066306402307423bffc0cc6675ac134693b0884ec4197a1f7de0abc5d199d3129746a56dfd415ae37e0b367e9bda837a77e2110af690230013f9dc0f4bf7e018f1ca5d3726c23f58b4fa9a7f44e554d0b99831b5383d76629f69f70e451aafe5490dd8a23edf59a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023026d05178daada11d0a50a0cd000c5677998b901c4305c1f2ec98355b13dc8a98aad0a2fcdeb21385830be972cb684ac5023065bb32ffd650ff25863e78a375440bc2aa492d926ee9d7c9272f28fa79a13c2b82a883c3b6685760a2b28ffe5f45f6320302047c435bb50066306402302637196839cc7b90c8970bd1abed26d7232ba5131694c39f538dcddf085d3be12cfdaf2365ddec16461bfc41defbc168023022320d4f77bb37eafa4985867bfa8ab6e438cbf1a479ef15ec4909f80e2a927d7cf54b47db941aa2a797676a9da13ba50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304a42fc26dd25b41f6ba0e91d1c5e88ad887a6055f9df5491e6e8fc2185c40eb20769164a9e29c7812845bdbca8b2e5540230509149252c799a99bf5ab8c97fee79653002b747426f69218ceb9e3c8da36b9269c25a18c39885ff97479b6739cb7b510302047c435bb500683066023100daa22ec42577429f1813c13371b186696013ff671611b163f32ed9a792aa9c11bd0e994aed1491ac2cb27ef1af945d74023100fa55327d44087cdcc655a053a08b73b3923e39d2e7b189dec02a6c62292efb0e76a8b98f8733215bf9bde4a632c511c40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310098cf8babd0da8b10bca898433f4c6fae7d9371df2a9fca17d03a750cc808d385ffefb6220df5d2c24c058c9a81867ab102307529ce9613b70174a499876ae51dbe4d3dce6f981664d8559f375751544df4effbb2aa5cc4044954545500a3110bef380302047c435bb500663064023029e7cd87739928881b856c5eb4f1768ae964bbcb098ddb5c5f0d819b40e071a3f8d895a27c57be762872d59d8214a4760230142a40046c76ffe5e9df1ee863d0483afe0f6bc4098d471e5d472674878d612402c82de8328fadab9b0d88ac24f81a4e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ff2a3a643f96cbc836921ab31485e841445ce44850836e3d33b7ed6d98e08f617d2904ccd618bb7bde6c0e67021ac76f023100a6aa424de55bb2d63ede9f99bb6cc7930f7ae8e5bd873cad697315001871e19323058265ccf854988e423156bf44a1490302047c435bb5006830660231009106913293d4002a14df417566ff563c61d02f68cc5de4b1ee453f6837427927faa18ee3c64a3a01c6f6f1817faff2e7023100dc647f0a353a20457fb9989ab8f44dabb5b8b3d400acbf6a8e365b25cac3bce6c5c97293dba7896d7b7701b8cc3143360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008c7e6ee99f0cafd060dc1e8cb4f859e47b92c15c3d6cd0877bb8ec24b7b72bcdb289ce7863cc73da9f375e88851bd15f02302e79214842e8c93f2b09198b34d204052d7ed1f13b0c6438a969f781684346f076ea76bfba924fb6f3f29f48291d65250302047c435bb500683066023100a5ee0347b5c29fbc8a6e1bb77252b612d6a321ff4f5de22739a71a18afff18344c7286ac038fe91631689c2d3c0aeb150231009f4a27dfa44cd88850c6a024455b37b04611c758a859964cd4c48760e94bf4ca84a27ec06e6fe10bc8e74b9c5c122d800302047c435bb500663064023046d7d1e72f13bc44d4bfac06df238bf4fcb0ab243161c82ae3724b518ca4b51adec67f47bb5510a0c41ccaf2a6ddf5630230271dda0b2ac6b501ba5925bb6cf3c6b46aaa63deb36122c884a0b9aa6507e89d62ccacf502a8dcb3cddaeedd3a0307450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c4fa988b81bf9648ae85cf0617c77bcb70e28e7a92d77c09af7c98651e5727f3aa3b0cdf3514e5c0f1d83e212110c1f2023100bbb8aabb65acc179bb8b5caa2b482c098bbc01cfcd3f06673d239b0cfa9565e34d6598223fcc4854704cf0e2b2c335930302047c435bb500683066023100d83c9fe55d9e7ef8f205ba425d773f7c7e5c53b6f6c0798bc5bc8da555a3cfb7baa9e5129b49d71fb3794e7175d63962023100b05e2de47c438f77fe864221eb2e7162d76733d07ec7372a002f8af515751bf6540f8bc012f434534cdb4bcb913e20390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a60710133a515c06c70b45fd4763c05d88075b25b4bcc3ef6111eab65345747a53dd3bdc91769809b44762dabee6e483023100997ccf0ff2ae52c97ae89fa46fe63def444b34ea4802e7c48592e9c43471216c5042c6b12b9527db21118309007036c90302047c435bb500673065023050ac714f5ed3e04e7dd5b42ef56290c318bdd1c906b2925b7f566501c0f087bfb7246207558319f091d3d0ee4fe0eec7023100c0c59dfd035353662e3ea510ae6df6e11a921d248e608afdd595a3a8cd6f958cfe6669e2daa5702ffdc6ab4b154407750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306385ea999406281cf8f916525bc21968dd970b3f3bae5531c9af23af4f8ea692cfee7fc1219e4bd71d9ee4234603b67e0230606bd4d20ad422b2fc097a237c94448756779744717e58599ca0678e247679b1f02ef0902f7e9f42252e8f18c13779590302047c435bb500673065023100821ffa7ba177a121b9616bea452f454855e2277c04eae507c36cab15901bfa44ba4d9790488df83819995be8df54a5a80230577df18fcbc401eb28fe4bb7e4cd0be8edd8e80dce26b7f490c3a9be4f535923ff0fb2173e87ec6030c66077c774cc540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ba361e542c179b0bbcd61d6b8c2487f6d49fd65c8391caf211fab28f84b3036335fef9ed7b13500f039fc0e6af250eb0023100e0dc9dcb20b2ee39d28b0c80c24bc960a7fc798fadfbb0ae5bb098f95c5bdc9b5c5dd0d576bae9f12e7343cd55f870be0302047c435bb500683066023100f0cf1778c90d642df2c505d9576497691ca56e934194751834b6e829eae8f9d56f225fb3d3d1d71f31bcfb206273e6fe023100d21c892ebc35bac32e689f7351e6dc731c29f187a0a96f5ae6580e72ed7a71462baef06f87f2f9b6fb65d59b62a4ecbc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f1116cfd3e597789744e00943d06624ecf28921e3386533af4afef2e0911c577106a11bb48045db5885e094c5050a8c9023100a86228f0fe85c77ebddc5102b3c004ba54edc0f5481cac197f77687723d4e8fe1f8ab8a26686071d9b8bee398c9d79680302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301d477c6de16c229056cb024abb8ec9ca42d385d648362dc8c755e32da5224f8f08c13c46574a3a80c95bb86a8e43a62502300ed0f77fb77bf947f9bfc92fcbf904ed30846f69227b81f6a31fd7a6c8c3eb95ca75f6cfc65b87dbd2dca94c57a73b6e0302047c435bb500673065023100d31d3066e3a0080830c945f302759514ffc10538e29d53c356a98cbfe5d63e3974c18c80bd03eb649d8cce47307b5b2f023007395582b8cc6fe34bad0af5e97e3c5df37299e28fda694e3a3bd7a046b2310a9336f248645999ce7995b6e299c9da3e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c37aaee720fd13ba63a8cbc4f3ecee142779e52e8bd65ad4f1295b1616793faeca0ab62d4d34895aee3589d706b0cd1a023100d62536556daf46f5cdb5b74c9fc0f37d28b99512aaaa0bfc2528e66f7eec892ce0e03961bb765f209a5e03a7b42537670302047c435bb500683066023100e7dbef15f2eb736ac6e8af858ba27a659cc1e180a09e94327ab10c7ef71c62712f00295651410b0152f74cc480ca7c460231008cd2e5662312e1cfffe02fcf8a987dae435198a37d84a0e327d3b3a6888412477117da7925cfefd4f14f2572b5d933950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a837481dd906be610c39243a5ee411f66cbfef54b9fdf0a3c5f14d273473c986fca1780805f23a5e8f56d298412aeb7c023100c0b82740867a6b33c3b6d36047084005e681440cca7b91ce132f0acce5931b610a2da8e011da1d5a8ba767dbbaead1950302047c435bb500683066023100b51631371f819d7ff85314b3ea503d193d04066350ac5bbfc1edea05f4e3f455311723024ca0c691c7c8cd8519e385e8023100841bf5feb71650c4186a084b85f820a5a2bdc9c00b03091a61486f0c632852fa87482e67338e9a244015bde3eb25f30e0302047c435bb500663064023046d7d1e72f13bc44d4bfac06df238bf4fcb0ab243161c82ae3724b518ca4b51adec67f47bb5510a0c41ccaf2a6ddf5630230271dda0b2ac6b501ba5925bb6cf3c6b46aaa63deb36122c884a0b9aa6507e89d62ccacf502a8dcb3cddaeedd3a0307450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023005b339c42f6f1b5f16d2c43d089ab809752654085cf528c685e2d0e194321aa8bbfbc3f6d872688d05300797807d9ab702310088943e7e75b10c841e7f80e48ea69cf02e9fee39961bae88fbeed0c5951fa39d0e159666b51c3973d16539b24116da3c0302047c435bb500663064023007ef563302ba0431e140415f908dacf5300744c2543d5ea89e1b32337cebd1b9fcf6a92387a27b7d64bd931ea68422ed02304313456a41a5d13f22a5af8996535395fbfe3890e32fd80acc45ffd975eef460129a54ceb30a1ec6f8164b676a9cd6630302047c435bb500673065023100b5b66f40f09ef4d97f3a658b24dd188de1f4f514e926f5fe83ce5ec2d3010ac5eeb8f729290cfd9380c447ba2d2a939002307410083c3f2bde8b5e64405be5cefb33aa6642a5b6296442a7bff2f027feff085c9b9c53d8b9586271ca54783c8073cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fb1f75d6dd83b9ad5860344e216d4a5b6df14c712f374a9f409df5da6657d6269af83bc18a12a4d5e9efb945561d3d14023100b507cc1d6b485bd59d8b536fb2de88d527b821cb65ec053a11467547ba57f06be63d009fb3a82ea61ede4a592d50434e0302047c435bb500663064023002a383a6c5e46bc8ec3a66523cceeacc4a5afdbd9af85874ff3b3a36c9eb17b4c3386887f27ecac62d8380f2971fe824023053579771ea6c23e666e21f103fa5d482f7d9bb0faf817c4d2686ca92d15e5ffaa9a96e818b25a4cd4a97b29ae5ef5be20302047c435bb50066306402301d5e2f865130245999357b7ad7ea4af76d89616da21a20bf3db9a9844ababed9ab172147b70101b8bf185566b5d0c1b902300da7d01eced1d58e46cafdcf6577628af204b0576d11a105656bc720de42bf3e3ccea90231d09040976fd33ce2b78c2f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fe94acabfda162541dacd497af19b75e0d5e781442e12b2f70810acf6753067403384a67ea5356aacce574be2940cba002306e8e6e5f81d114471308668ba2f7c2516e1db66ba530949fa0b1b3e7d6b2f78e152beacf25f3c6139caefbafcd31ad900302047c435bb5006630640230586e5fa16bb6761a586068a5f430726b746ad7741c96976bfa693c2782e5b04dc893e70e5169f6acfcf9fc838aba8fc402303f6545c352119f6fabf99c61bd8a88f81d3137c661d37298382c4a60f0effc5e080f413ccee9b5c139f0b64f74d3c6280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b203b9e22720f473ade48f203ce071eee9453d40409c5ba6349c642042b4b3034407cee2b6b80dc764ac64a89ca7d8110230316fe6db5f3ded60fb82049627d8147491001cf9d1aeb0ef78207267a61c13f7d051fd140c0ad5c443103cec95b4afc10302047c435bb500683066023100add428729bd78c2004fa2aa1bb10b23c66716401c442165e75f02bac581e568ae9ee03e85c3c363c0a756bf3667d67d6023100ee78f3d200195c552a8f59a977206b4785b12625f970a4ab6c138a3959031f6c2658918daa11175faf038fc470e482b20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230682c4e8d72f0537882b5eaaed2ac6a4e6a93ed7dd822607aca3edcf061976e55a94ebdeef5dbc738db9baae4e0db3a0d0230656ba5aaad5f2ce8cd38692f4bc24b8cf1d5d9209133673e8a5f895947abc1b57dca22ec4a7a87dacf0aed8f9a188cee0302047c435bb500673065023100bac3c6a3636ff889089ab508496ac266243028ec32444c553db627f072f06a704d908e844e1c03c0fc21165e8b032f0a0230787ed7f1312ce8a11eb0d3dbeda3c9249106a36df8d9b49577ef2341319bcde2e8f86713b39a73a8bf630ae4be446ca00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a8d89fa53d6602cecd88ba6179b615ba84df85a3d7a0425952035455d7797b8c18a37d0dd71a77fd186da226271a37bc02310083b8e0d8bfe3ded914dc415305cb6be63a0751591fd3e908891de1b04db69569d84d57b7d4656489612dcd5ad0484fd60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fd3607fa9cccafbb006615198e4f467c36c2668de2a520d7ac8946302084358563198c983d93f64ae508476173c3440d0230151a1e7d39e4318dce197d76eff117c161044065ba23688216b4f1a91f399e6db047c64136ee56e680596e4660d54ff40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305e30f9dfd76eaf525171acc2e3b06f9f02b0be5b8630632fb856d4e1ec43c6342f6c376ca23be842169b502000c8007a023100f131060c2fdc49903bfc0c99cdb7f4ece5abf1483abc73022e0b7fb53e8bdfa421ac43110ec7e1dbf8e0b3bf5cdbd7e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ec9e7a54e66ba093f61aa57c3cb08a2c164459c34c5059ac553759811a9d194fa41c5b08fdd815a1307f657cdf95fcf0023024c998582459b5c9877cccf4833da97a7d08d26ca9129c1e6a36bb715c137e4f0681dae5b2c18009bf4af6889e134b810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d62e6a72f1c3f18282496bea99a33250dd4bd950679e0711ef51ed51320d396db1196360d518fed68840beb6d38adbf202301a8ad1a410e5ace374619abd24f656ab31f439f9a74fcdcaea8a7a692a8e46a795a0ce41acb78fcac92c3d75f0ec6b460302047c435bb5006730650230063eefdd2033a19bc7664b4e69c2dcc3e0c8dda8b1c01e684095a95fb4a81cd8e18d656eef4d2f090aa327919bc4b379023100de637d0789c545a941a552776b542ed2ca81f197311481ee392427f9b4d6851d80ceffbb52526f141ae1540cf228ef290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c7d944338010247c971a4e45ccb3ecc21a8609b5fecf2d39077d93ebbf354e9de87049202758ba7648a04515dc45c8410230015269793407b65c96a69305a5f6929fbe2a40ee706b03f217d279fca8c67391d127eab28b8148c04c4c029fa6b4281a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aca651c3ac8fe9c76df75bb4581512e2230f14253051c913ea92887f7bc731ddd49b4a0786746ed6f53e41e5f4fd6abc0231008575c34a90e9e71619e689c5c2604b82fd87455ae951fc3884aee46a15be2888ce8dfba195e9607431d209415ac5cf800302047c435bb500673065023100ea5cf27b6cef80cad67ccfc2f9316039fa8328ba1527117b6f6aad94d214380567a533273efa0ddfe754fc148a1f76db0230563dd18f913efe0a84f2bdb99089f268c7bbc7d4e3735a3a455bb92bbfb3a2344f2aff454cbd1e9bc7478563f01569fa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ea2a2b630272bf3b38fd464ba002f5b0c9ca0d5149db733efd3df6179203a24a74767048bc258a337227549f9e5150e9023072521ee026bf66738e07edab88df9c00311d0861ca4848685cf1a5b74dc447ec3920d9f50576d428dac76ccd35e4321f0302047c435bb50067306502300458d54d88e1cea070e122e12b874a8489f78f2994c2cc62e85229a9c8e7fd1531f5fe8790f93d79d9744c8563d53f6b023100beffaa1be8ca4166b03aa5f3d5ead0462d44540d0b3b3c0d1130d9c43b41f3f6cedb332f19b76aeec52a7bd3b94c335a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306b61bcedc73b71633e8fb2ee313e38337e025406e187d196d29c7fed7c74e00daf521435f50585ba706d21965607f49702310096a6f0410d372205055fd62d99b6c831228159b5702986c93f9654c5941f115df4e3585766a66f800ef24ad29fe9bcf30302047c435bb500673065023100c7ebbcb6677d090730f07beffeb155adaa3f29691464bccf81b85a3fbe216be3bd9aac1cda11e8cc492bd4dc11b28093023011498cc4d9db895ecdc4ad99fb2431f2af4e34dcc42a3f197f9c6b21386088f5adecd524a5197bcc292ab31dafd941cb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301e1eeb114f2a7fc90921310f5b91a3c041b26470e30e56bf032d5f595ab3db5dbd008a529bf83bd8c06512176eaaf40002306135b827a6983915af9b77abd7cf9b105f6b8882ac86b2af49956b649c607ab723fcb940282d1b186a2429011fced7730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a064538ce8d366100ad65259a854dc10f614f1f7a244239dbe2a645fbea141a9eb06e1a48bbbab8a6811ab691b4eec0802304c47eecf224513333c90a6f927ef0a88c6ea0ba6dbdd230943fd234570640ba59da70e0e048c2bf878b2db5b48e5daba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023071a93316e5d4e8a0ec620318d4bb98a43db125ce1163eaf3133444c7a31068f7da696ddb5e3b2d4d8c567369762118f102303508a3971a4ccadedeef5f629fb73f3eda17dfcd55cef0ced54c2752c57887eb06587d0596e8fc332afc791c3a6820840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023004aee2a234b76635c90a72de311b9d848ec81a8af7bcc6d1671d5742795a9a985c7c179b5dc1c7650f4289b5dfdbcd6c023100bddff52ee920e8558e78fcb7de7e42e0eed95fc6fbdb0fe57d04a25dba6665c75a1aa16e252e60d8c7063a3eb1d63cce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023026b3b16a83ca18b763402ead6ea30ea33121506107aad534ba6370ee291142c86cd0f497a9e19a0e4d27d3912d76513102307a876ccca81cbb1ca0adf4d6846268acd6b62884196f0d693fcb1add75d878320cfdb6df0ea9fb6b80a72435a2352d260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230524e69f8cb2e51e650b1c2d8cbbe78b1a04623235d22d7d1f88f48e8866abe1bf6f341c3525c35b323b682fa783f176c023065e49fa416c723091ffa3d886d41976664ec39dfac8e6e7803b077a0b9ef454c3fff51b5cb8d8c85832dcffc236a406c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cd6749d1e2dda92b9e634992a54fcf0a36f5e2a59d5406a722b2ac409eeba90218756c63b1a87afbab1ff0509f8a17ad0231009b94bde4cd02704d465bbd4a8d5b08ab078fab3202a7f5dd0b14491a4dffd8f4d05b88f7234875b79172c977b526128b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b2fd15fc1ad383f1c688b6cf9ef49089b9a1dea780bfaefce3c6e56fe00240ba6d24462411646496e80447d0b3dc67b302304e28a5baa26f59a6a080e42034d222f9f2b33e076418edeefbf920c0a9df11acf597d32897a58790b836d0843c6ae1640302047c435bb500683066023100acea1adda84a67e0f6080a07757b36df39f46331451129903697984f31c7d62362aff75a005c2c34342f6d16d4f6720a023100a2c72d9a9094e56fe20d81fe70bd2235de2d664a4492b59f6537441926f286f4b1be3f27ed0981fc4042a62913183c980302047c435bb500673065023008e2baf4c94af301975c43372e83772b48a19f25761ad452eb23dd6f81e59671cd67365faba328475d6c285b31dbe93102310093d964744323b0461019af9d3b58428d1cf3f54cef62725a08aada6c22fa9e6d03571ee5bacc38c408045b70db7fa0950302047c435bb50067306502306e51e8c98d1df6c06bd17ea545317994e4dfc1078a8c692559ea87756d0eb994ee09dc088e5e6c6711b6e7201089a8d3023100cf0432cb1436e02f35cb1bbd781202d4ba8fd8611f2c049e2d577eb2551fc645bb63611bfb4fbf943362e17bc4eb37d90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d86269ae4fd40d417424fdd375415108db2e6660eac99085f6275c6d683f87bb5c352a3061cb59b5215003f9d362af39023100a0d52006383d74a7fae9a5559fe75a422fc372b5876fa70313e20550a698749aba46fcf2cef9645aff88aefbe91a005d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230447b4ce412573f8db5091a1b6d3e84308fe0120c95feba8018c8447a7bff90ffd47cf321926a3a8c4b7be8bac25a26ac023062755e9f572bd586c0d92fa649f5e7c063f22ef2bd939634b1e3c9facac57abf4477ce4184cc8029ac58fb0eda5fc2d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230093df4b33878a1866851a80b995c25179b3661f8a4c2168ea6de1fc9d3b17c0a7649370265f68404a067a930b56ce36a0230014a8fd734966d1250f2a46d76ee3ddbb047b360ad1d85da4867bce888b71f6728ba83db1f91f6579ed08e3267ef32390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bbbdea64f7e5592f09611f7cf54d2763fb56a4ddb1863486806efbb1b392478cea6a6614356bde2afba9d7b7161ad88e023100b6249d4bd740df46c31d6535fbb0a1b8c7c277a237abf4a289e1376173fb67c048d272a9771f839e24f50b6cded97fb60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310090dff993f53ad88146ecdbe81fb17d4950a344dad2f823a092451196516d38d53fefc0dd8c6201b3bbc8b9fedf91bfe4023100cb99d20f8986a89d5e4965b5e482880a9f018b33df6afad0422a447e9ec0cd5d16801792c25f282cd51bb9e8b3bbce400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310080e536323750ac517e75e6b80634ef3a5303a9c8cab7eb6d3c428db3b000c1c5372a3ec4a0faac81d3f759cef1f4b3500230121ae2427674e256eeca45e5b098645b2601e836a20391d7a7cb829d9557a51ce5d2ff45f788aed1cd047d058e0c5d4a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bfb324e41e8e08badd8e11f74738bb5d5ca77a21f0d8ebad3bc9445e155e8d22715a5f31fb1a29e0465c2b344e2c867b02306bc7d4d3ea5546841de7307da7b159affcc94ba63b81fb25d027cf0751a99765dcb01c31f90a99cc636a917c7db7df6e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301f49946592f570b8b604cae32fd6c542038fcda8962a1c9e064c6c2cd8d7c87e2b634c03ab646f93fd7a3b662100494f023100d09a1e8c57cb5ee17e8cc03f111a02bb4a0fbf3ce9c2d4e953c6f8a57800cc7c98e6e749148ae97081302f5079eba4c80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307b715b55ea7e8229bbac3551e02fe47f6d8dfd76ffc94d16d3024a1a5fe795040e239e16f43b0923fbbdde2da67d33a7023100c3a2277fa5691ab4408fc7188c3becc21ac1b1864237fd277ed74e78c0bd424966f19a8e47661289bc319667e3ef67840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ba68f3749d701660b94f87beedbe97cdd0d61b63aed5fc326a51201a45cba3cf16ab77728efed4a320baea0ca492db0b023100df7367633eb57dd228a0806578d5c5d3ce9e0f41f876976855884ebe5d171c3682bd3f37cb8903eeeadbe21a6348cac30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302f7112a7e7a3abfbf9ce290367c4899e0da1a78d8e533256ef1daec106d56dba3b46962cfae79522e202354dece2e953023100a2c5bc7a750a4402f5aa5e46631565de4ac1a25936a4d8df151e656b8e124a8f61af5156eb3ef6c0aa33a5ca2a57bca20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b2c9c807e464235599c1965713c5a978295f42ffc43670a6f937bb7fd07e773442d4c677d5ac8669a79d435f310afa93023043d09519af4ddf3374bbfff6c4cb8dafc502d1edab6f21a69f5a37351a6af4f00efd88e44861630f09d7aad1031c0b270302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d2a2a245bc693c33e578c4913fadb4d5a34c5709944fb49198cf17ab17868d4b156540d2f4722b0bd8d3c69586f27750023100cfa8d4f27f1e221afc595b503626d4be6c0636b4c3b6de1fcacb64e31233cd2c6cfd7c199c2d3432f31c4a067bb99cba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306f3338e119f5798ca9134490540909d5099e4d579fdf61895bdac7814cf069e643ea4d09b4b5f5c56ab69b970236f358023100e65746c26f4b6644432d6ca0c37016a84242a86dc565454bb95bfbfea491d966cae76eeb9b5defd01e940f7d87d770280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303168511ce75899f524604d408939525fae860c8e67616bbe045ba1462a109f9be2f8ef6d01d4a1fd9c3f501d58022fa6023100843944c42fbdfe932a422c8234a0683bcaab303dc4d7de6bc4206a3bfe02068db5834aa59718674a24877c08a207a89d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a403807dc57fa357672fca0541279a3d3377365401103ffb3861aa6834b7f3bbfc00752e61f60e9dd12c74497b96e754023100ff70dec62e0029c7c43a1f21a17a218d072a918d2469c8107b9d74d85760f8cac12bc730f13b5e0b338783fc09d615620302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230060f0b37a6cafe51f298fdfc74cd1699a00381440eee3c53c42309dd85ca53fd07044d5dceed413683b1f88b09c6c12702310083c03d9c8f4e14e4f0a7cbbff259cd331d3fa203ee95a69728da92790e53f6acd3a6945091f2328de3b51fe34b1b1bc40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023076550bca2ce3653db0bbef6121735ffff5f291aeb2e334bf7e26efbf583684bb3fdf2cea4836fc757d714cfcbaa59c9a023100ac57d5fbb77e76669b887af08f7fc6d9a1a5b307ec32d7f7a9662b2fc98fc4d89056d561375d784fd6db0f7e99726d1f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304fb8abb3854b66ff776a5da5e12ff008e3d0be0dd90220e47c442b1cf38b32df63be4b32eded178ee1147d9f7fd7574e023100d5f801eef8c940782e659c9361ccf005b9f01c432e70f873c032f0104a2f9fbfa2a23316747c6f6b1a8e143fe3b9ca440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ec3e004190519fad71b50ac107ccfe71d338e9edfb73ea4d588aae295b6c31112b56dbe63a9eb95f8799f16e58c6c60602304cb53b2c2546cf3fbf9e8bf44db9056294a42841a9065e6d444db0a6331253dc68ba59574339915f9901696d80bed8740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310080941d3bb7e0cc04934da2990d220161f2ca79835405a033a2c4db0ba8bf668e9eb31ac2e5d812f32603945aef1a013c023100847fc5828c39cb3196536631f10ad49ab798a0f6d7874ee599e19c38ef0db85820194bff665b0a923cecbdc69a48175d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023021fd328608942602bac79c04cd956f8cd0bc0bd72967e6acc8e7beaf5c0ca65d254cb1396a147ab7f892df7dd470245802307682d2eb08ff2a9086e1345435c3dd8d5f8f7cdb1913e48361428ced0bf83479db37c30216c127d2ed471348a8ab2bef0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d0e7d257ae615bd95421d701de9414c33ddd3c92edce4651ecce3473d225ebb0ee4959575be3671797e861138061a07b023100f35eaae9aea27af17138704ac83279b4bf744e4ff6b8e010e3a2f6c59a9e389b3413cd5c87eda1741d23aeafbd17d5640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230723bd21d07e38bc492d5116e03a53c13ccd5b4dd47bd73bb516aa3e7055d1e61d8f96f067fd6fddd9a14e8f9435fdba302310083f62206db2584c7c4a5391db3a73c429b5f7fd6fa152b83f68fd882725c7da7e4bc0cd40469412fd0462477fa8ddfc90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306136b9a356ffdad845b37d48a001ab748ab36d03633272ae0445fba26c42d3b3078eba64742bbe764e8570247d36ef73023100d96c9fca04cddd9e4d4d99eecaf9d13b54b6e4ee39e4467fe19656ff14c7d2ec34aac357af4626b86865b9b290268ca10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307e4cf00005a1fbf19962d4452c6b81caede47dbc0b4c664b733dd0b79d261cdea225e7bc18f5850a0adc5d2b0084df7602307aa94e498dd16dadab654c2ae88e351db33cec427adb664d1a2c1ddec1c3989208896c0514b0932cff222b77783183140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301281986abc3d2a39e8a5820430567dc585b649153b64125a278d642e8577bfaf61ade891bddffebf8013565f12fa955b02300df2fe0483f90304e83aa97628f3b27b31619e31c1a7aad2672764f6e6f51d7cc6abe6d9fe3b3951429393343fe664860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a77bd491dfa8dee5007c89129669464bd1ce7cbd720df00652aa5e27776c090db80a638bf3b8971aae4ccb253ab3afda023069264d549eb54a2c82f4bd37cc0611c7c0e30541b7e48bd348dcc2164c0902fb093fea5d24490242d67160dbaff7c2310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ce14f28ec223d6d34d2d5533c709c6d85af928869499422753c140798043e91343e80d52c93c2506ffe3ac59a9498318023100da04ff62599425d6a8d2704aeea7eed2ef8323ed1d76b169d25575cfd861e32d86eee313d47aa79d768ac381c5e2b78a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307378244570cf94a5fae3e34f43c10c88312c74741cd033113c7a491c6368f2281f0b2d9d40bb10a31caa51a2481dc06c02307f6d4972fa3854a72914cd3c22481fa8dd5c7905f799f6349c78e0562fb5fbcd8cb04960c38931ab1d06999fe60d5e840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230423520f4dc344f38707fced7a3552cfd8b45123bc79b5fe3d6e3b4be21d299c8da5cf6c79ec2a2a6a240c1b1d14928c7023100965839c3b984756eb822f87f3e4c849a619b66a8c267f4b18edbfa4e03a551d95650cf1815f674b5a240e247d4df78dd0302047c435bb50067306502302892be88f397757a536b4c5bdbf2408aa9174de3a9893c87007e17e86af07cb87aaff97e2a76a4460859fb7b5a4e2f44023100dff2be05ac62362d6b13454a355954bbfe3d4420da3a6a4ececf1aa0bf7e564c0bdfee17235fea0c69c77d0259980b840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fb95731a5e5687791a38ae1958265adaa8cdc3032c298358ac348d6c9dce7b5b00ce290a7a6712c39fa46b25be01a150023100f4c76ca0e63c3736271d12d6cc24c8d1d5e11801f056fed2b911744fed1874f011a0e75517a684bc5a317bab3c5dd3180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fa2277ba0bc59c937e7f50caef7cd3ea4aed26eac8742050088de58e8e5215ce7448c3e9de60eb461367c1f4ff186e7e0231008889bcc2aeb902513075cb57926b83016ab416511ca9d1473118ba379a1ec0b310f5fc34fa0854e8d93dd7c20c7921d80302047c435bb500673065023100fdabb303f2620809c9604e3a3a6ad2a686fd1e6ded1256b0258fa9b95c7f1970fefb4e2983be0022c9263b36e92f0ec00230423610433b1d3ea6306bb9ddc0cae6f9fdf5cc163a11fcf575ca3eca4c2a84b91bca0f081a0ce48d74c7e0ee2d6037470302047c435bb50067306502305e4b04970f668716eac76aa36e25e7bf8f22ef9560ea8da88911364a656b7837ddb4d0ad39a8a16395395d5874c2ee83023100de5fc4e5841eb60d75f0cea85ef83788b7d5a4f244b8a9b1245f8d38ebae7c198437d5910ed49b34292365e323d3c92f0302047c435bb5006730650231008492898bc21cf71dbf63cd9d50353c471772b4f5ae9ca1d6bbc919cf77f2270a9bd9426a9f883a7b22dcfe01312aabfb023021866f61991d7d9357b9a1a7fde731cd5cbad813c655b927bfb71b9c82843190e97258889267daa8c069e508884a42310302047c435bb5006730650230376d88340fe4622eb0bb39479c09debdb63dc5eb92d04268aa5e08ea3bae01f08fac8772ef8e0a33c72cfd51557f6bfd023100e771df8e0f821d28fbb8c79e9656e5d6f2cd2dacb61aa8e187d4ace3ddf7eccb032b0001b910d6909daf68e7bc2002560302047c435bb500673065023100816267cce31ca01525688995411a13a8d63b3d32963d3c5f3dbc6072849c39d63504313c4627db7f1bd165f9de9d3acc02304a249300af17b794289411cc408ce67399699098976448658d00215399b63caa6d445a120f195ce05e9078510dbf5f2c0302047c435bb500673065023100b7390129810b5fd3d1c3347e93153a57dfd88d1d98d148ee656cf8535f7c687485b623162dd92458c801dd7a851c090e023076e74753bf248ec42a927ad897be06a9ed364f31585477693f4b89f002e6fb6db0d369553018dd3772e81ba131747f710302047c435bb500673065023100d5a261c18e13d212446c335ce00773a36fd4c5e2769a2deb9cf0a7a653ffa4d8d09c396434ace38de5ed304247677e38023037fcf6c68fe8d0cfc0c124895851fac504c9e9384e2605bd620f62a4be85e2965299a81bcd31210bcd7ca7e165e538ec0302047c435bb50066306402301c6df02d782485449c3f94a882dd8cb548d5ccb80266c0a9b3cb86d739425b8998e50f2e0df192bd29bebe42a5da49780230304d3a7f2bcef551a168ca03d2f103ff0ce98f034bdc3feacf4724c61c1be871e74fd8197dae4bae8384b888bb58426a0302047c435bb50067306502301c128defca4f2cef83baeb1b30989d406dfc0fc3d00d4d58949345bf709a6fc681e3ec009ee719ff9f27a92ea70f711d023100d7fad74dfb56339969bb6aa572df799439db84527a299d4c6af6b394df54a7b667783aa691d663a79fb261ff59251ed50302047c435bb500673065023100a9d08a792e2d7f3541051af9935a81ad00be4ab670a0242abfc13a7b6c16e205f7f60c58fe484cdc7c6dffccf7da048a023022c30c1ba41af69b3dcf7baf83790483ad9ffb4661262987e245703cb82c37415c9533b58b3aaec91138b5ddb29bc9190302047c435bb50066306402301b222365afaef6a5c2786b07a28c9e9dc4c8c7824ff486f5fd9e44b78c52fd64ef338ebd29a0e6fc12a7940c9d6189e3023050ad935c8e9380b6cee0d157643a1f0d9cf611c16599f23fd2a7b692b54789c8a4d76082ee12d460ee85df97e38b45870302047c435bb500673065023100ca22d0b699c54ac55a629e683b99e97e13e5d98e4312b8242d1934d9cbb17c721c4ae819970b58e734559a23b5545299023030087bbb03b47ba85941bcad23fe1a5dd2becdf7d3693fd28d5283b83bdf070fd8eb9cc9f2fdd9699d8fedc4b7751f070302047c435bb500673065023100ce2ad97d2f676e16ea1cfeedd7eda3f197237075e3f383d04eff9801fd99dfe5516e0d4925553bc3c4a2d2e91c08d86102306fed7dc1d06ca1308e7054d21aae1335f5a98f2203880e9e156c0deb02b5afa7cd227248a7bf429c882ef9a90b453ba10302047c435bb500673065023100ef33e8588c83d07e829fdeb68b6acd2bcaaeb299db0f96b5ce323dcc78fe6397c983114c4b9ee42430c4d99c043cf6b1023061e5def749c8e248d89f8b935f0ef2aabf49d52f8f425c16b753be27ccaeacaf4cf884fe947a077b59d8136b582f3bb50302047c435bb50066306402305d15134eeb053c38a8e1e53d35141ecaae02f93a1c571afd1962ea655a895f5a4aa45eb6659194929e668ff98a9b014302302fc40a7c2d8e74d733ecbec46b417d6a45e4e58ef587b188606e50fcd7fcb817f605926f733c3e05007d9a8572d1043d0302047c435bb500683066023100d90a34d6144d690b9caee5a57ce6dcf9b9fbc6880ed7b66fbbe991f06c959ba28ef1de4a9cd2672b34cdd884d2791c4b023100e938015dd1028e442591794f4a36d31dd8be6fda2c2d29830d33decd462adb85c917d2f3ab4da5552d77f9f064a267860302047c435bb500683066023100c1d3c9f1eb100162d3a55657bd37af2fddadff68a8a78a99293acb1bf4b5e29bc9a935779c9d1332d301843cd11456240231009a0e7a8e3c3571204412bf8051c007301314ff37e39d0f3d233511ac61c4796b9e3eeaa8f1de685fe4a3538cbfe159930302047c435bb500663064023036c4f2da26d0900f731c53be381c5c42ce68c74e2c139b39fb70bc53ffb9c2103a45fab4cb27ee885a3b125bcb657e53023020a572e9ba716592dfbe08b51db569cf0b0a2242905e7d0349dc8a31d3fc5b149957f5035792d5d49ed9ece8e73aa9980302047c435bb500683066023100fc08ef0d93f919416dcdfc91d591e173cadd2e183582a736f5708dae3848882645e379a9ab366fe284f901936e2f0cd9023100e5b41b4a4df49467920bb2cbf3331bd0ed09ee4918e8b14b674ef1da2ae90fcd5fc567d4982e5a11b32cad4de95e7dbd0302047c435bb500673065023100a0cc6fffbc4b7f989257dc9210cd8b842094009dbc8743828e0f86963095fe6afd8c42cc4a7e0e433571cbf8fb539a2102304a447252ef461be6425e2cfd6bf355daeeb0252927d40ccfdf68810a875ab1354627fc963baa6e1327d7b22d7c420fb20302047c435bb50067306502300d6e76c884571f03aa9d2f025bc5dc56a7e14abcee7def860ae220cefb769d9ed72516f0c18883e9f2296c0ef39717bf023100a9f91f74ae6a7adeabf95e0af1b4f14622d0d3bfba068b0cc7f98585a91ced83d8c5e13b079fe52f750747d67cec33680302047c435bb500673065023100b0cdb25e7de58070c477101609a00f5590c2a2e079b7a3cd8f506179f282a538fbbdd19bcf3521fa2501566d8c1add2b02305beb0ca72aa27279c91007f36c1de2ada284f836e67182b95f4b613ef9805649629a02b0c1a489418d79ca60cb7dfefc0302047c435bb50067306502307f639f14e9637e3c471af1a83e1982c5ca1ff286148f44e7b78570ee368737459fda29de20d0b06a662618157dc8f8ef023100e15265206f7c12644739a4afbe064ef3293f9b7fec706652e54b5faea6c00315f4bfd148657c9e04f0d09c926bb679310302047c435bb5006730650230576ac59dd97eff67cb0d9620278f71f0fcd6aba69e65897a7badd630dd804f7641e298ad4690976b8aa042cf67cba279023100bd0c7804a79ce2009d56f58cb786998f3ab48bc4e8409ee8170b3255b4fc10164da15e9339f07b63278634f7ef8d50670302047c435bb50067306502303f6729e43160b9af9decdb8d476cc01c141a6eb51d773e0f2f6ba0a1d117b86f4ad810c87b20491b83e527c0e5984c6902310087a6a104b3d201a794699b138380798740d841268b7c6485619df635c1accf1d84aef259675df9fde176c4a8eeb723980302047c435bb50067306502305e5fc7e09ae54ef8a1747af2ca6af9b28a05b8ff938c0b7deb5e1d981860a6084d3161697eefa8e4120af4eb0790a2da023100f2d58543c5489b44a37d8e38894433ceaa9a5a56db88d1e7992d4afeaaf5283668e86728031826e5b48daa2ed4aae17e0302047c435bb5006830660231009b324bec17ddb8db8d0d1f28f0f6a090d9ab9adf3b4eda6ffca5c9ab4bbb173fd51b40ea67abb1b2fc006c69eb7a4c3a023100dae1abbede55f73703892c6161b55ad279e4923ca1850cc5a34df2b82f3c3dfb9d889a2b44237c374c7a5628059679830302047c435bb50067306502305cee3044b290fa631e1d6ca0727143f145260f4f61720318bf5a853c04b3f6f934450a2922bc3aef108e9d5d75f8399f023100ff84cc07155e330e28e912491daf5376da9b190c29b508229a5cc0b37aea48412a711608e33b2371c1c0b4008f3c48770302047c435bb500683066023100dee6de8b09d72a59f4afc19239b495086f1c234a73fbde3fb2213e13074ec26fcdc621740f30fe284cf27284cd64bfe5023100ea5aa9aca35a05b1cc56b848b2ae6e4b47dc25cb7476fcfcd013bd3ff0abd87db7d0d9ebb167a926875ecbee010b98670302047c435bb500663064023043f0c8b6668f03cb291039dc544edc561e9cf1e6e8959f4dacc5982eafd81c4d2493cc3d96d196f2fde2c2e5190c068d0230363b85a7494f78dd15ccd2b9ecfa069fb317e9beada355cc78d19c21306d6cd83e938aad32097667b32e74d8cf3dd9a70302047c435bb50067306502301c1e11a98e2abf075909f7ab81291ef0b98f2459f74fd6461e17e56fcb82f977db7697621dbe7d7ab25da94fe5bb410f023100b5f8fed5b0d73cd91e3f87d7ed014f74159a52091e3c7269c160d52ed34dcbb97c9cadd55d8a2367860df3faaa8aea810302047c435bb500683066023100968950eba134afc7868f0da314021d93ef7d4b739faaf4c2f2f79327fb13fce15583707c728d4ac1a3894533b09987dc0231008c81b0afe2036004df97f3602365a3b09f962b4042ec2c944b7f12a2b84832568a1880475e041c30cbe62f85b2a656950302047c435bb500663064023075e2051bc421c2a984fc2837d9ce16f0c7d309e0891b51fb95c6f8146b285ba03928813ae98465b904d7c208dc27b11a02301f1d1554a42ba9d84f0cd6ffbc9a2d89eee26d1a4fa8f24c7604e054ffa08e83363f958f319cdf73a6726c05c44bb8300302047c435bb500673065023100c26578f606a99ca5feda037ffff90f95c5fd3f41bac579a1ec968e0a30e263600c79ca312a58c113dad463ee4292c7d5023067a02d7d7eed27f8bcc8ee0fbc75533aaeb4fde16aa1f32a9b6505db84fb16bb804283caffa1558a685f5c3a5c5235310302047c435bb500673065023100b41fae08d93fca810b19614019d5d8ec4b366192c096f25f7e95e0c2d1d8f48afdec5a065b350935dc4b54cef90a45de0230468b0d72cf92921a0ccbf095e7e8ade2caee5fa882789f3c7ca8a04ec3711fb6aa472c4d8f682180a6c6c416e4f2d8d00302047c435bb500673065023100d88ac70e7a7441bbca99865d1ceb6d8ad65234efff1dde1971ba5fe81678d3fa2c66a70bb94286160a2478e4279d3fda02301b457757b10ac2e6736ffd7e28807fe4580fe30490d33a3eb7212cdf8f719f70cdc3385458a4af7cf88fb90067f02ca00302047c435bb50066306402305d2b0b6de448fe5e1adba49f40635031218041247e03003d9513b821561329ae423869a59a71af40bb6ef0082e6dd84c02304b65e8a6df03e41ce00fbf9f81ec8d53bbb2236af621ea0e92b749cf9a78c0175b2ff548242b6da3bcb5d04728de747b0302047c435bb50067306502303725b9edeb0c7a5952404266da71d0aedb1760062b94358fb2e45aaabc828192e7db4aff7954bc8add558fdc16d1f8f3023100fce8f37d676885ab826d111dd9a0a8d39fcfaa6df831d0605aea766e7a41e594f9ba8b6cef9a0280855f0cb7bb2672690302047c435bb50066306402300a06d8c11b83295c072ee546fb55e2017c5d7cb592515a743f834151227d8936149dc8b3d15fca198f60bc77b6216e3102305f12b9f922b3d603f754ea1f921d2d8d8b218a3d9cb837015d4f8bd7db4492bc15a64dc16213ff9e25155df19a8c3ac10302047c435bb50067306502301132ca4dc6f002101d671429d71af3c72732ae50498fbe44c4f943de3d7159ada8e7f6ca13b163e6141a44bf91acf540023100bd48f7eeede19a79fdf78b75e079a51a7906a5353985fd5eb67648597bde6c5c6270d838249163366ca9f048c4c7a22e0302047c435bb50067306502306a30b89fbc360936a53170dce30b9c928748b2d9fce57b225df5dd1ee464123b5357b65b5598294901d9e0f161a7c487023100f61a756b4bd4c2e014a251e2a84e024f9b3a0568a233a05be694423a3d95faabed7ad0e292587167b3181e78887cce3d0302047c435bb500673065023100aa9815e031db35503611be843134fe422a3c3b00f96eb55a2c39ef4b2c705bd0cd5eef8c9f82f38c819ab32071c889eb02304aec938c717f429d2c5e151429e3310a9f7554c6e77ed0621c20b40715d70f7bdf51ec1f576e0278f08c4f0c1fdfe3730302047c435bb5006730650230444ae729fbd39c0f42d7c116776810120dcd9e2cb37c1b1e4dd540f01ddbd75c7ae63278da31194accca674d411f345a023100e8975fac7bc16350ba99107b51247913d717ec7beee2083f51381c820a2549506b8a398c48352b11327cdfff8b8891af0302047c435bb500673065023100dff1921a962da97e20d78462d8ba9596218edc9e50932e15b56bf5d71c0f9f4ed55c2ce3a8bb8cc475b0ce0d972cfaec023010fb405dbcbbad19a798215126b094ae291f2297d3e999e7df7f8baa690420c0917be4341f32fbc52c9074204cbab4550302047c435bb500683066023100c752728bfd1e2a6b49ea65904c5a09e7053b12352dab2e86a698103d7379c6d72b1b8ca4545a6117c49c8a9e229a92d1023100a4a2f4d6c24669daf0a5fe3a631ee15a190a3df0d9169e1eabe5d6a89d7dedd00d41f700d4f1dcab5d5ba67522220b610302047c435bb5006630640230103981558ce751c2b72ef20944bebb2e144887d5ea86aa2e1bae1bb7369cfee443a6d90e2296f6a259ecd242011c8e8f02302463c5ce30a6ea3e41eb5e3181b7aba77b2ea93e9abcf6708d30026eea111c3c136e0cf2a0f27750ed41c5b8db88cb320302047c435bb50066306402302021b1d7a60a51ffaf563ec4d7e1960b36182113ca84bc233d840c991e0d848d1e5fa0abb1ab38a639bc8f58224a0d4e02302a5fb57d5fe1baf81ad0dfed9757ec417d4b441bd1ac4394dfdac6b35be9ada154c565ebf75403bc2697229d975c2f7b0302047c435bb50066306402300cfef86db4fffabb954abe63c42fa4b5447e12ee4beb5abe577208d94a2e1aab0aef765e0e4170d41600f8ae7459ad7b02304299f006cd7a899a6acbe4dca4fe962f1abf26ba31ab903dfd7697eb2c5446a384896dbf3e8a60c5247195a066e0d8eb0302047c435bb500673065023100e1e06daec5d79a559e96620dacea5ca70205cb6aa22ecebe71203be081b8474e6d62075849541d684022f40037526a9c02302dca2b41e8f856f59ac12f5672b83f0216d70fc8a7b0fc59d0c58e51bb39971ae15e68e018e638a7e7ebcde1b079d5a70302047c435bb500673065023100976f7a6678b76a793229a206cd468a45566bca972b4c725255de2cbf6a5998d67a46fb0f6110e8c30c21b515176c98f902303f9dbfb1b55e042ce6589c932b23793e2f1f54782916eac6c8014614e97dcb8073e391b5caaea2fe234812ca48ec49c10302047c435bb500673065023100c44f58b673e92027462773147fbcf588c11bb0b8385d375e7f059b4c072b98f4f2d0fd88ad8df41f8ee85ba47d5768e90230503ac89cc53080bce3a8f2e8d6759d6da46b701fa7cb76f3e434ba9d35690dfb915bab8d60aeb7d35aac6b0e3bce8a770302047c435bb50066306402304cbfe5360ff74a5c8c3e788ca8711bfc186e73d5ffe59af2fc13aadc38befe1bc5636b04ad1a9615f702d3cf60aa7afd023061fe926ea616f0234b991c34d99942dc2e57ec7a5dc6121dac187c821331717593838b2b84281785305a36ccf51e51e00302047c435bb500673065023016e6c47297f8d0c712e4fa93d19bc4b2e1e065a264bca4765d1c85926c3721e1e2b8d1c4bacbbcb5c209f1a2c800bff7023100b0d8226ce6850570a7d52d832e70914137d9abbf9c3bad9b03c3ca083c4b58008d3c18b3fd9185eefb6c98aedb044edd0302047c435bb500673065023100da3d4a3b663a15c7443f87a9ad73efc83b7daf3255e0261624109296e7b6acb268a9ae2cba5f5b6341f3908acc061e7802305f86485a306e9705d38f35bba1ac003d21aed8b2de3aff980a88fbda56a36a1d9d5c9aa0315ae1aeb667671ca37746bb0302047c435bb5006630640230483c2b913430bbd8d0d0f0a3cbfe78d1035517d5bfa40ddb36af7cf7b65e253e7d91b4ccf06b212e1f3454cada2b6c770230419d1c023038715a35eeb9de93c4348d96fd2373d8a8d74651d048dc3ff23103124d340fa1509bac6f26973f6ed981e70302047c435bb500673065023100e05467189a5828d5171edc64b2edd5ab6b95e3c3b6e97107461ccab191fcd8ed1d4eeee2f14b829a674d2ee5e157792702306c0135ec21a6e6d077e9cbcc5b6526ab6aedd749cc83ca04dcf84c49b5069aa6f37a7fa907ffe7af5b67b9fdc1c52ecd0302047c435bb500683066023100f64f07c7fb98d510593012aefe6aafe7ee844f5f0f60899da4091dc8511a8a781c0144c244ffc4ddfd51ec7060faf23e023100df4ec6c160166939843212096ffc776ee5872ecdbf7fe27580a91057131f3aee91909ca3a574caeb9808b19396d438af0302047c435bb500673065023069ab3c08ccf316b55b72b7ed2ea11c2eaa3205409c325327fcad2631b715809fb293d022a7eeaf73f8a8304254a6437e02310088c2452f85c808bc731fd796ba3d548996c931a0c81cc6d57b265b3ef729c3754d76b8548126d3a95185721665bb68cc0302047c435bb500663064023027febb53853ad6b48c720a6b2d81da652db0bea3277138a06434d07d26c7e752aa68c0d1c0d2060583c5047fbc64a9870230147410fa0b725f37b4cf38ff4624c17bf68e5ef93c8e073a65ee56b26c94242f33eff97bbe09ccd13112debef8d6c06e0302047c435bb50066306402301e611da4423ac56d94c97c912de887775faed43b32a3ea4b6146836276c5c46686cd2273b78374ada4fc37d152e6d99402302f7789d674470fa75265bfd9d9f47d1596144470b6781834fd4c6da417251384eaf33723ee3facb59e26a801668136ec0302047c435bb50067306502303340866a2e57311aa44d8b5929273ab52dca367ba4bd094f619e2545279dfc707cab94685ed05861e8c0401b1b850c1a023100c90186e5c20c82efb53f61d88379cde99ebfbd7c87aa6a68b8572fef6b324078e05ca3d0721b2e21ca00f3ce25ea91f90302047c435bb500683066023100e92d148437b50c0d738a99258ded8a4ced2de69babafaf57a9c0e9703fd0c8f6bd2ff2a97f5b5aee923196d4c2cb9311023100df86a7ca9996a58d23cb13bb99729e045bec2c84e8e11ae90a19f5e76862b4322908ba779cc9d6a7a713431eef16bdc00302047c435bb500683066023100b14632ae782d6d1ac4c089afc9ecd2e8c8a777ed41c27a5e9d3921b8cc67380e534779fe82fae7e0e58e147ea3bff164023100922105d8c30ea3114bcc8b00897d99dbbfba5fcef88cf57cf4eb818a589613847d489c88109683ac2ada058eb94429700302047c435bb50067306502306c16a007868eb532b8a41b078ddf53937463f8a744681c5a4db12d16575734cc5f313d406a2552ef18a870f8e1739f52023100b6f9418a9cf5e0e0c2d870e5d215e49f4276ee6870039198cd6d6e8312f9471d8c22c42c5b9241fc1ce1ce93746504700302047c435bb50067306502301a090a4859970ff7f59575e455cf646c9dae5f2d686bfae6d61f3bc551182105736b61c710d91729bf4112aa4076ec58023100ca1260f239d912a4cc885088e8aa54fc4ab6503348c471ec980de022e857da847004ee66a8c187e2178065a11b792c4d0302047c435bb500673065023100b782bc5fdf175e39cf7c393030f7d07231ab2ac68a52cc2c9b41787c9b567eadf5554e4d0e987370cad9d3e8827a5e7402300bef2266518aac71320d4148d29ade3de25fba2716e1a0f9826463b39c41d20e8173c993ab2226a1901e3906e4f7cad60302047c435bb500683066023100bff505a5424d4bfbb7a54e0eb5cfd627499eeed1d3470b4bb9751235d352ec862bafc08300dde22f76973fb3f0635d68023100a8fdcc3046dc027368a00e54a83ef57b67236536d42188bae714d5005912c641d0071a926980f59847f917267dd11ef40302047c435bb50066306402304be58008a7583d7f53b24dad409d02bf82c5733c7f1ce7319e92764d1d92b97319ce3bbc772a08e573d6f7a1c8fdbb2a0230629e22fcd03240762cb6b00b801c64e2a8ccd0f88fce69b897696d20ed98a6793810f1534e2e9ba5fe4d20a5a5f3c3bc0302047c435bb50067306502304dde078416d5e56d154d0c9677f7771a7b70c518f8bcba4e96197e3ca4d0b964c7c564b75dadc5fe9d9962b818bbc8850231008f96ecc753ede0ee05ca356d7117ef55b3a39529d6c8e83e9b1b55a07a3a3f6517b2291f630076e945b56e3635179d100302047c435bb500673065023100f5987ae3e7381362ca67b254f8b86ac620c80df28985c21ed28ea4572bb5eb600e6d82d28bd6c8a048c80f6c51b92519023061fd9dd23f97f4f5ed747e75347d573b46ff61f034bf7d131ba57336818b4007bfa9d86f021af32c8bff56189e54fdaf0302047c435bb500673065023100ffd30dc06561d1cd7171eed600002f1a3969b354210e2a1e8a035245c05c285ad3932032b41e3f5a17034b0fe612f420023000ff9ac136fb75edc87830791882918db9bf6d30c5ab0bde7b365aa0ffdcde72c0b51f1cecae33ef799692a61fee6b400302047c435bb50067306502305c94f3fa53e5686ed53dd30b76cbe77f75c96c5d5ae4327474c4cd3ec5d1d6d9f2e12c0962d4eba13e1a644f97c943cd023100d5e3ec58d44df371c9aeabac9f3055a7e7de4acbd420c4b98bbcc1c1bf8ea7dab32fa9dcae1dbbe119780f3af525f2790302047c435bb500683066023100889e312d6cf0617c5121730b6c10414debe8b916edebbb7610a6fe87ba2b6b3d7ca29e6fddd9889bf416707b6044571b023100a016449c6133ed0090e84b995604ffe730213f02cb80e1ba6e56e498c689987b04954d8267b3e428e2fcc25043b5eb760302047c435bb5006730650230572af1354687aea309affa64ba52da8828a0ea7b273ca566118fa46671bcf4fb61443688fc03635bd083e05ab23efd62023100ff46db3213d5ac42447f1f8da51033acacdb237b880ebff1b0eae082bec636d57352bbf57e79bb054472317b8e3eba1d0302047c435bb5006630640230364b9a33321b5ec58a4a070876311820c9034a23c267042e4adadebb4c7d20525ad69c884799ab27472bb6118f989696023051c2540503dc918f39d41125ea9e884e262a8fc02c0461427ad140dd6345bf9eb8eeaed1e19ad347032967737e7fad650302047c435bb500683066023100d95c3db55363d02dde258e5d16e9cf4f2764dbce69d204e0c435c42fac8957aad1e21cd45d581f468d370e4406dd02b0023100b4b3598396650217b4755a546f90063b41804878ce96524d484d73638d465189899b0aa89e1b60fd97d4710b5f4f29870302047c435bb500673065023100ff16679d133fc3bc79799027622d4305df069407583cc7b973ac3a7eae02e7ed9ad5fd88c5a02aae21cf44ffda7d9e1a0230095bd5cf2fc5cbc5f115ee1b7ec24c2b4a72f018bb7c678eb9229606d4ba36e05a233463a345693f0625d45b916b80950302047c435bb500663064023053fd54b97abb69be3692338fc403905f843187713658308b3260819b527208fa7427ed074ef6054ad4e79ba9329da47402302957001557add83f28525288fe9117b8cd4e2ed8f5c972fd69c0d55d99233e7fd9acc37fbb9512c30f6bfdd0b183026a0302047c435bb5006830660231008261f49e89471f8dcbd9be0594874b46f2a1bd9b649980935b699f3e420c061231d2dce843b8071876d23075914a447d023100e3306e72854d63a2fbac201e16aeb7a714a8dc9a6358a9505ea82f39ef0efa8058626f402b9e6b3a686a139ebb38fd720302047c435bb500673065023051aecdf33e247d71a4969535ad265c2e869affaece78d818e7901aaf5386eca88e53627ed252ab0ce45ec0a8b51c5bbc023100ac2abc2cef0a4ed98c9b2e0e09ef82e616d1751cae8652bb34eddcf34d81d74585122c9ff2bf087c96e84a4fc9ee64bc0302047c435bb500673065023100bf8e066b372959460defe5b2796349351155ec922227595f37382d1262b5b2e46621a1a4789cfc3048ec5ba2dc56869802300ccbd6ef3af587c3647f0ab084fd36f6cd347b5be2478528285722e0a12c7de3526511f6c5e941027485f99bccbf49e50302047c435bb500683066023100dcae4f4986d8d8c9b6014e4d4f1a236a0d4fecccc3b759588f84024c463b7fef3119cf949e38bba4cdadb739b5a52529023100fa8d602bbdbc88fdacebebb1e6349f95f0d77927bbdb4440b287c3268defe2145cae76c702c7049ef3d791265adf79d00302047c435bb500673065023100efb10ac16d89b6a24e39b51dc0c3f248874a24e90739ece382d58ea1a8f932be98f32a75513b17f4d0ce359a3d4c4d0902300af04cd62fc05372d05eda9b2a21b15da2cbad4ba620b6b2f42067a478db3809a3a83befed137d5ed0103a12456ca7f90302047c435bb500673065023100bb44d6702557d220a647f8cbccba8b4f4752ebab8f4455e57a85b64433471db533529963d8884c514528267e6ed6dc2f02302e64a746dc6bd83e7f9f97fc52d18144ca05d034d9653f72778c403a691299923a2671dfc4a098598c81a24f4d2480090302047c435bb50066306402306905150193285c0bd8fbf588df07a28b11c2791cd326225991b30db40345a037f76b85c096e3a33d5369603fd2cd60e502304a776e78ac0ffa7c1008b47f3c73b24f3cb42ed1b8a5351c7c1a72e8bd8b214c07de2b201b4a0a96ceef85f596baf2130302047c435bb500673065023056a78d126d969d595532ebe86e0bfd36d5d0837c0802bdefa0cd1d4db63eac978ade33b2d36e13aa9387577f9849930b02310084cd27c9f4af5a0f44857d6482674a05f926416a92a31c3b0698a8a8c742349212193e298e9a1cc610b65e202396b74c0302047c435bb50066306402306b4a638a6ed0271b4259d747513bae6d01a9047ead5eb3e97cbd97f273589bc9b3cdde4812e62e3d614998fa7e9093650230756af32cc5c3d584031fe8486a0de1824de7fde805fe3014eb533c7c325a696ea9c0c504c262ec224771412de1f85b780302047c435bb50067306502300fd9373eb7d863e155b3eb90f5c19082b37e3ee3981943056c9c3e9a98dff5902ec30364ccc4c552c1453db29f722aab023100e7e94fd3ddf8b15556849c38e77bb84d2edaf9d341aad49bfa3b1c30533745121da92923dd02df13ba105d236a864ed20302047c435bb50067306502305654541a5d2d14646b2899bef5dacc2346e7c48bd8bb9942d25db5304a83d5508488f51fd95800ebb980300527e2b981023100b694888b831844102944da14414d67799caaea1a9129d51b8bbd2b3996c4273eaf8a99800d5313e1f46d71205814dc1a0302047c435bb5006830660231009f9de77b881e1ef06596c3cba5ff6d195538048a0f70c422c648a01448e0145ea49b2524daac698e340a62894f0f52a9023100b4a0220faf2c29a3a32748271f5eb4d05132bfa89610ffa86db09d8a66da3803f47bb27f4d5d2f854aafa4a5d0d2277b0302047c435bb5006630640230445a805aaf8629adcd494a27911213d3b542125990c9c1117fdc164611c3b0c6e1e8890f49e9ca58b003521d8c7b6e71023039c3d4a66413eeb41e55c22beff35b42ce0e1dd0b48e140176439eafc807ebe0b0c717d0b7b858812eae65ab447b74d10302047c435bb500673065023100c0be2ebbb88a5930b9415bbf2a4b0f3e5a70295a6b60c0469d045ffbba60197dca3ee97a8f0a464fa854ed122b5118f80230794d6bd309fa8e863ab8f90211b2469289a9ff36ffea71b213de0c377383e922a052d92dd1831f5e23a595839fa54aba0302047c435bb50067306502307ad5ca278de770319af2ac5371c26381e79f778a77f8c0d51c09bcde3a17350983c4d9ebbce48fe297c463cad88a8c9c023100fcf430dceb7b98374c2501679afaa6f3c2af4adb372d913d01e8c3b4e6e995228f2bc1d9463412f2f1812595cf3ff6160302047c435bb500683066023100ea8c093771fd1b9e7ed8e2f13c9ac822554dcec335b37e89d3f214df3bb33963d573b8fe470eb6cb3d19be19a8c93987023100b8146df243b928a0c05579948cef3a83081f4341a2edca2203a31017d98ce8f014a78643636c38b276da8de76abdc4e20302047c435bb500673065023100ca91b926cf4f0b6bae5354a292f104bfa30f011e2784532b82264752cd75b886e0bccada29f62adf8d8aad7764af886b02303f1219a868b5bc9fbd48beab139c9566d73480c5d60252a4cf95ba4b54fdc8f9e1ca58a3887c454ecb64ef88feb492020302047c435bb500673065023100a80ec5808a715582382d81e1eaf6d8d0276ae3cd9df71976a0084561a871f84d53772f41e0fa3940339db7178107cafb02305b8b428f82455095ea7d9375641c509577f4d17d1b2564addfecdc927dd1b7b8aa99c04a9c5d4ef7dc00281bc64492740302047c435bb50066306402303d989ef94a58f290ac78a844f11bcb29c5b6b0e498df1f6c6b01e8de3cbe684ea2eedc23b94c8f89817d61311575ec7a023067eddfe8ac35ef5c84114f851ca50a89e99b6caba5d44c4cffb746e38fe54820152baf225c082cd46044b081fd61ac220302047c435bb500673065023100bdd35d51321c9e54a5bfff55e7393e42f21bab74c6ad2c5d9038920d07ea8d69f239419d2ad0b7a70e227c7642dcc07002307509618fe7e612f895b270c29ac257e490c276c61fadefdc6238af430ebbe24040894aa205776868ddb7e74cbf7244920302047c435bb50067306502303ec1b3b2c2f775ac8fc81b5d6ff32c1b00a1b3ac3d3c2763c034c61f688af9ffaa4c7f762b9864a6a27f99ccc9b34efa023100f86dda324e5c96795f86fbcffcac3b1b5c1a61bc2c2250dfda258305a1bbe2484ec1f2e42174d5dfef5c97d49847e8080302047c435bb50067306502303f485250a43258ef0c64812691b730f4a7de06d45b25c7a2bd83a9fe27c6447dacf31afdcf3b8a95314371659394f38a02310097c3c63c4dd55ceadcfd51ded8cdc58885ce4bc25988554e50ea704ca36dc841ecebfde4672098ac14258885d92af8ef0302047c435bb500673065023100cddb970df6d0d69b5460d92e5d3b3457a834d46aba06cf71e45b826ee582cd9b4c13cc70c42105988b60dfb298f91ebd0230695d5f0ca38957174f5b559572bf095e91f0c786e8fe15c2c22dcb800dcb5864d8a3c67251c74be9e5c14ad294917b830302047c435bb50066306402300b3d8265da90eecdf3cd04aa891bf90c7fcb3790198d7077daf54a83d3a87d0e0f2209c982beddf5c8e97cb908c6c2c6023052575a7c6cdfbb65c54efe843ea5038ce00411c3b573ebaa40268cd19c8e9a85c1543935bc0f6c3d5b945f3fd7860de70302047c435bb500673065023043f8927b4584fad6c7450e448032b2f7b3875f3d9c9284a7255695a502a41b7d300112630410b720a3c62ab12738f22d023100c4d6c51c1918ea87e55fbf4963b9c2ab38be93bba9be580252186cec471be1aa1200c286645d35c86e1f49d478959e470302047c435bb500673065023100c045706e64a9e023e143b9fcc0fca3d6f97d473630ed2fd24f82bf68114a17d14f730b647c7558d871c6f063fd4c08ab023000a9f8e7023c6c9141bbb7ae2c88d3ba911e041a81c71401a2c91be37594f9b7fe035d901a046b454181996c78b3c8f10302047c435bb50067306502310085d0856d5479194d8336c03d5f7722916409f9eb223127479397fa44fd91931ee1d1846f363ed7a642d79f648a71201b02303d6cef0ec93279793d46f30b966dbbfdc4b7258b8073a0c452f0993b07d6ac98700ae01ea64385c26168ba555a61cfa60302047c435bb500683066023100b8a8c5be41b823ab88f9a47461a41cb51245a32c25e442209c5cc96b41522185fc4d9ebe1bfe6e0c3690ba33b022854c023100a03f19527806101a757e4bd4b5d0042c65fba2386c259daeb185b986c242404249af77a3442b6823d64e14032b5f03500302047c435bb500683066023100ae255111c331cf9a9e2a3a606346a8f9864d44ac5ff88943afa7a7c0d7166389dbe0743f48b7377ccae86c0787d7f8230231008b9cc652b09ee799b1cc211e035512be5db3304dcf69213a96910d6478c6853032c0469b1306378ebefabd6b3a4e6d9e0302047c435bb500673065023100dee8c1400df489b0b5245ce39839a71ab4cdb5395cd8d689f44b5f851acb69ed3dfca32c425f95b6b6c7cd0e0f44bb9502301341bde515948edea4d3235178f171aac252e3265d2140f9738b6425a9e92e77fba5af40f66db8d6f03efe61bf2cc8060302047c435bb500663064023032fecfd4b3b2df0ae0069788526b896e176f345b1fe384f4bd14e104ee3785a47c08fd4cdf52d1f028e5e88b96a0d12d02302c88bc246aa7544c7154a437ccaa0666179b58c5fa2ccd6350d05f80dca841a002269b15ed47d6bc8890c45a80e49c4a0302047c435bb50066306402306ccd31d7d4b0f3f2160d958bd3ef7449d8181982584880e363b443957ac1db6cbe17606401a3fba802b15be8099a4f9202307bc2b5d9f9e5b8824553004c74dedaa951dc49e48bf16af5561c32dc9c2ee756d5d05cf902fa6f7da4e6728cc163fe260302047c435bb5006830660231009a18eacdf5e6fe0d51fa82d47584c077b16e1c93fe62dc13796811b9e85e9f6329d3d595c6bc89f2580b78aa77ecbcb3023100b23a974919637f766565922d4f047bcba5364201aad48380eb1d6400e855ef8343aa5f3f54eb2369236a9b91aa26e5a30302047c435bb5006830660231009e815408b1ce6a30b65120fd8a8e9cb14ab9902815ab2bf4655a2e0ef668bfe33b57aedf11caae69abdfb98631846d8a0231009d36a2a6b61ee51ef357e0468b0b96274982927904e5ecf933b0428bc0745df39fabf1e05ae3829166d644b9b5f345010302047c435bb50067306502306ac4006b6d6bd64360cef9cc271d2de7257703774b9c27fab4fe4e3c21dcaad96ab3d1fcd0ae49ed9e9d4569cb0393ac023100c60753a1983b58402c0bb2c24e72c68762bf646190b9bcbac5ae28287b34d297b43de9cb94ef6f71e962ce8dafb2770f0302047c435bb500673065023100fd72fbd3dc855798bab9907eebcb5e808a183bf1b3a9cae55c67d7d41b83365e3f1b26189f78c117e231814ce0798af402303ad06418f83ebb4261cd5d4ea0e9ca180733b2ce374d13dd018917cc2ef274816ff2a74a2ac8c91fa4b9a55ea7fc32970302047c435bb50067306502310091f3f8e903e62364fbfff8f1861b1bad5aa3deb40c103e3422b7870fc376113e3fee814b2a3dd228150d2c0a0499255302307d1faf10ad357d86b7c297caff0018db2853c4ebc75f1f7149fceb33d33369b4b599c4a617c6fb2083872bbc8d0c98790302047c435bb50067306502304bd56b77b0106e292e4314b5d228883d966d3dc116fedf4ff051e9c7a9f3aa2f434171463d02be08409db8b7c21b42da023100b23a2d89ce8c84cfecc82cac1efa64802652d7588d3fe588666fc3d58e2bc9cd9996fa8466e9f50584c20e0a4364e73a0302047c435bb500683066023100da11cc0db17ee21f8525963d1dddbbead6f9c1252652c6b7db680232855552a20bc13df4146fa23b0757393170cfecf4023100e79b4b4b3b2ce9ea2abbb20e5d24658c3cf051b1aeb0fec0f7e4e5fe6c5fef578f26779fc3f68e25b21205241321f92c0302047c435bb500673065023100df5927082902f617393d30c62850a1385d43c4c8a3d09402ef31680adc0bf2782efc73ae3f9d8fec76146e6ba10d218c02304a34bf01268b973bc9edce869c9695825ee3096130a1274ca348fe4a8e2a3c6d4019f5d1f0db4d1fba641b543536df510302047c435bb50067306502304300450c44d4c0691073112d1ed92be2194f25c5c847a8ff0981011044b3396aabbab9d96b2423f67458cccb27cfec36023100895d1d51211dca7cd1f399a0a2334133818a358fdcbd5b48ea6db5bf12c9fed8e2afbabb262e102d8e1e75527f6749330302047c435bb500683066023100bdf2d92b8fa9f8e70a6cb3e01d3302d5ce0864e25f7d4d355cba0efd4d2596dc272923e1eaaf60b4a052ef3b78e6df56023100d6760af3fc14670271343d6461934db3b8a684cb2767f79cfc67747b47ef5eacdb355666f8d6fd9d68989585cd6c43860302047c435bb500683066023100b0ccabb33ac34fdec545459ffcbbf6ef3313fd7bea3f481758b277b348aef83b3a3a70c411ecc03acd6f86f7f406e97e0231009361d4f8d0e1adc116bba82b137dded6ccd2f8b652bd644372576266bd6f9fbbab7217564c37bcf9c2356a4cba3636e00302047c435bb500673065023100c313a009576d5978ac452cf2bc0f6675c7f1b7b675093b39aef84c70d675bc1583c0b00d704c49ebb64b0a1b5ef5ae210230102b180bb5b2ec13dfa4037a56b2a7c144746c98d992a1e82d214af124f790c05a6c376a2d129491432f168a27e083400302047c435bb50066306402307ecdd15048e19c3997b14db668c31d78ebd557245273ecb57f488e06d31f1d2f85d7598f9111a9900550a15ee82aaef80230430d1a99776c213d9d09570aa5e46e554612fb5c6798c74084da5e9774576928f747e0ac75e66ff1fcfd0ecc5c5408e00302047c435bb500683066023100b144df373fe9c8a5a4b34a8d0eb9d4e4531bd8800ae00e11d0b2561cdd12661776b7fbc32f13a90a38370e27bb420908023100e49000a45d353754ac791c4d4b7437133443c977dcb44f1b33ba1bc242ee6fd8824e0cd886a9f1cf3346da2c692593330302047c435bb50067306502301f33823b9011a95ea55c0c3feb39569bb1e62a7a2727c554b6872d11b65ca8abe6012b4836660231d531b8f74869a405023100ad13ff7d3adc4928a61be3dc38e5cd859f8da27d0571c7d95ac859906ad9bd19195475cd1bf57114902f00fb9bf46bd40302047c435bb5006630640230618eff2d418b5e9ea5e0b4af9c4d4798d85c7db4d2b63c74e64b02bd9acb53c1acffb70b6c2c6b9b2208840d95933cfe02304f90db906b51eea0fa0956c20131f5ad24640f79af1d305e1a490782c4786542d19dae898be8cb0829bfa86f12a38b020302047c435bb500673065023100df9948510c38e90ed3a5a19037e290fb4aed35672bce8455de1ef989d7b2649b21d5c30166f02e2d8335038ad8c355f1023046cf09495c308db524e61ae5b1ae4ddc4743f76f7cf0d55334b876cacaf20398967f5ac9643efea058784ad6063b9dcc0302047c435bb500683066023100ca851fdfdf577a1c5c88f8e5cc068a77df467dd972005de8d88d64d4b86b6f1c8d08783d379b3d63bfea52362ff46cef023100f41dc87bcc7b6b4b2aa124c767d2d5c4c7da061a6094a1369bb54be1bbfad3e56bd18baf2d907b201430b9641857d0680302047c435bb50068306602310083f54a0ed5bb230d036e549943efde21e4caac0eddc918b252ebfa1a5264dc7918f6d2820d4833c1dcdcf84be4cf92e2023100fcaacd53c06bbcff80b85be29f9e74bc71f1337aa7bc377ccc3dabf4029c97e382ee0800218754b59ac3ce4ab6eb8e8d0302047c435bb500673065023042bad1e182de72282b04e6c3255352bad813209a14ee77cbc491d2ea77db640a619f658d520c6a0cead47d8a784e6d32023100a2828a7220ed6920fb3a6762ba59c821f5a9599f269d50a0927764bde5cf8204cd3d70388b9ac4d2ebe74da571701af50302047c435bb50066306402304876ca6f7cfde5490d6e6ed98e26ba476d92bb8aa624b7ce345324e310e2796dfa83f5e42bbb33fad8518799523d468102303c9bc0b42210ba3f2ca0626d04971986d4d877c0160f7390c14aaacc2ce428344c95c848dedf824c6ea94546519d91200302047c435bb5006730650231008fb6223b060f244ee5e21c4dcc891542263de9210efcea4fb9d0e5ed64ec87a5121c54394c1d4df2093483f536ec3c450230398d6610e2856ea776df9a5112d9359ab9a835707592ddf88a4ec4869c475ed4941e5c00f1d25a474505336375a1e6800302047c435bb50067306502300c882b7922099cdd039d0f71b47b17e2f399b84a7276191d132dde8ec1b7ed844d254dcc3a5d184319ec09937a52097d023100fb1b8e2d3fd0338548b5f24e922f4267f5819c253f02508d3225e4486bfc3bdbbfed6c3031040ac99263a5455cffb2140302047c435bb500683066023100fa8f37d7863d734a773879fab4591b4b5b68ce2b75810e2de51b0b8199e6af0b5a7747b403b5a45053e64953c8a1a8fd023100c72f862aa7de48aabf9e23422882bd5c23ae748a75d9f605d2a7167c7b9f75e264443e0da6f0f992ecd1f0d9009d49530302047c435bb500673065023100a93fbc0890353fe6f1c7e4676a4d0de66569bbd99dd795c47776a840c9af42dbcc0c8c8986d6b988abe1c73f8783311a0230557286912f22fcc4050a65d31ad0a0b853e0847a55edd6a928fcf59409be65a2ec369f63661bf2ac7a8e86c8788ab38d0302047c435bb50066306402305427873134d736dff60bab410053d533b625cdf85fd10c2ed7af9beb2e9fb80571a8251d7461afc3035faa561aca487c02301c23670d1b010219e17ec3c1c44f84f0770bfd0f0268c112e7968f2d0db578954487448020d6e0a15765ef63874296a80302047c435bb500673065023100f85ea16ef44f24bcec11e89c53249e2108d4a0ee8ee973342a7c42e17f4f2269a2a2c7dff53bc3b6036cf0e77f099092023056ef75641864a652ad3094a70a29352a0238baa8026fd87198422aa3939a8f7cd0c031fbe2c7bd285b8287e1b0724c100302047c435bb500683066023100b288a180719ae986a3c1d31ec8b1ef3a85d4211795a099b905c4c6c3632f5da36a1a8ae1d11d32443302721589085b8b023100edfc1b30bffdf5c2af35c8a514c47e59c1bd444f917a5a25f6ec6a6bb364f4a6469f8c07cc2e99f5a054dacbd50fde930302047c435bb500683066023100d69668547c544b773e1165ef94f76eebeeda90bef511ecbd456a753d504b90b7fb52963daf0d0380a35962357f9e0ff8023100c81beb8b1219c3d59a29c3eb31e802ad88cee7b84674e0eeaa502551fb2070fea3e5e3a71ab3470a6f3e8f3750c5b5630302047c435bb50067306502305298ecfb8c5c2bc90bafa9cf2ef65c335695b364669a99ae85135319768c689c5d8d68e4cab04fabd485c62f4679a7f9023100f9566aecfceed462fee70e011e8ab62ab47384d72e500f970f250197dc008c22ad24b3e21c1c6412ae9d67b8d710b8b60302047c435bb500673065023100a25471bbd817f3a105eed963a2791bda123ce9e2a980ddc7e65ddf533d47132930f3233b4d259ba8b6eee1bde33aa66102307aa5eb9f8de873888341252d1581579ad567737a4f3bcdd234834210e7b13a9e78940651ceaeeb72217a610be0f1ca4c0302047c435bb50067306502302432a02bb7b3ada58f895936760236b3bf95dc5ec2db0f42e4479f52c0a937f4eab02bdf7b4ca8460797b0fe1ac6ce0d023100fe42273fe681e9dadfe22e71e8a202219622daec6120f314e66054673eaedc5cadf5fd63c8c007908c445410b946ef020302047c435bb50066306402304096d68c30c429c04f16d80448f4017c27b763ad4f424c8792205334ca35e7627a627d2054f715e026d8fe91e9b4945d023069300c9e6a985e1d7e7653bb20b862ab2ed49b101d058582f6aa7a0ce85e41fa392e9fea211e7267112d3d808181cb5e0302047c435bb50067306502302d1b69ca6b7115fc337fa894caf13dbd3221df89b9c7e8e7041c5ba0b5cd196533a9a0f48f8abfce150177cc740a6dfc023100ab11823195f7378620cbd97111eccb8f473ed08281fa1cfb3684657b2a9aefadcc14b1a9fa7bef9e914197057265a0110302047c435bb500683066023100a307ef0d62e2344adef474eedd747b17299f20e689d5473fde5b949716ee0c7819b153fd0f572a23f992f15ad8c1992e023100af58ba3cade00780036035fc901e27ad2cc441177f4531b5930282df0531d34dde7450962362dce1f38c44d070b32d550302047c435bb50067306502303979a639016e3a284cb75319161ee0c4a24d64d0cf365d34ed1cc235f739804e79a201940b60a77232b28bdf1915fb82023100aca10936bc0fabb72bda234f01f4aca9f9c716b1200d5e6d065decbaa8748563be2f24c6153103e65e5f9be9f25d8b900302047c435bb500673065023036af52c2b19178991cab93ab285062211e44c9ef0d4101a75f912dea4dbfcbce6e3d0fd9d3ea2ce89889cc63bee1d11c023100d7e03ab6014413890d277f9f5f85cbca86902cdea53c8068c88fc9fe13efb84580e58fa82ff0341ecf1a32807baf35d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023018df9316649bd2e73e9a6da33f9dfb47e387da45396ca59fa49bae3382121b673a5d1f3270f2742768e1422f79d8ca6a023100b87979932a17d91d22223771559ee1af01d25ad4aad77ebc7275741f59c5c2cc3a64f1bcfd7eddb90974c5c564848b920302047c435bb500673065023100ce1866536591d105ddc4057d5b622a6c8557b5fe8ea08804373c7a1074f620d0e8ee0ce61f83606abefbeba623a4b58a02307c7614ffb6a66c58a06a6115dac2250f717c11cfad8bd7d204dae1a5c736af527c4c46c9018f78acceefa4d9390abebf0302047c435bb500683066023100a5afa0a4072a23c80cf2146b7f4f8c5900e053b2e13f8034182026694b90c4e0f704d78e75793767e6b26ac0bfbb56c002310098fc807b40858dd2d4e5632a3cf0d1b15052109809136e1d286df40bbf2df38fa523c352e45b7250dfd1752029adda670302047c435bb500673065023036d89d06bf7c5e8da30d77f03ab325de3ce97d1ffe539251749d8a0d7b4740ecb59579554e54e2daaf2c225f58ba86bd023100811b4409db354be6410659bed5b9f98c2fcc880ae18c9483d3f1b44e9d0a8f33da8ca3804948f627a19598b98f947b0e0302047c435bb500663064023040ba230a03427cb3d85942b4cffaba91e68bf932638bfc27ebf553be5816374b0103f3518c6aabf56994d1efb2b81b4e02305b88d05f1755df531d22bef7143728556090db77e24db5bf3777ab802cbefa1321c657da05d5d991318f4370ae4c75140302047c435bb50067306502302a9c9ee846d83dedfae1b70a5018afdb45d308d9bd136e030f37a35b034bbb6303ba3c9a5ede0eb8193886a2c00da794023100ed04337475e58ea224e0dfd23c24defb512fdda5a3b8dac1a26e872ea3fc6278de83e0c1c8c3aedb11c1337802eb69080302047c435bb500673065023100c01003854bf902f9b9a9c9a449cf7bf1e6486807bf6579878f13631c3cb786c662c1951d82351875df8c79df4be2a28c023035daf498a1dd366b21acafbfdddb394e06c53cb0b6367cab236f5d054e091ac6083cce6f92d1ff992c4ff692020e3fae0302047c435bb5006730650231009db723de7c6c6d61593d14550f90fbcee041982b886125a3f54b8a6e8384d6a64da14a2b9fa284fb6c1dcd1c1af6560d02300ce07079659ba55827bebec5e8b5afe144efebfbd825b4b24b0443288962a52ca025e6e79f88b7534ee12460c5e08d750302047c435bb500683066023100a954dbb65e6b582ead8ee7a8f7f496ce8efd288d3fd029d24e162d3d5648d2c8b7adf9856b19e635fdea5f0413101bc4023100c5d5840e2bec32e618bc37d1f1b61704a836be63479aebe9171d74de518d1eac3807cc02fd3bc7a5cbc4af29408b9e650302047c435bb500673065023100f482be7c31d7a7b411491703dfc287e1110640b5ec68755b4af44a222b27ee6d417b64c1fd4d9a66870d3f810c45c4e6023046e5946983b6066789edb88b2d3bd36a5ad92277e213ed06830879c0ee8e744ebde49ad120037687af388735c12184700302047c435bb50067306502306ca92671e99e5fa265bd5d656b6ac91502b11822a1d4c946493dc7d3aef99bd054666207db2526f744f046f1ba544c78023100b035c4709a04c143f5e36f986803a84b512f1d414b1ab1618af77e2ba747b37f32ab9b4c9a6dd076eabd8046f148fe1b0302047c435bb500673065023100e3d15d7cc1506c1bccf83b2a19434614ef239c3b343af2a6d8510a116ad0ee12bc4e983a75a738cad91a91b5a2893b61023050e4151f447970a228b01cfddd25adae5b1cfa6402fc0120d9f15fa852ed1a47806c5e526abc35e93a583f3e87a7d4090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a04358d6a3921a7c49bb93d3c9cd81214680d5b63a31ee36c66279ec44057288993b1f96aa75c5df3e4dfdb9449cfbec023071a654f3fd04d94b4acff6f5e998ac2560bcce5e818e50b7d039367346ac752a1490603ac1223ca7459d659963488e020302047c435bb500683066023100f2923ee5eb9fc7ccc74cbf1d4a9179ddc56add53905a33c64e5268610bc560061c0dc3d350d80ce46b2f9ce19cec62b60231009351a6f7a7289ae0fe37876b33e9b513d440754025d47eb05a8dd86b345605eeeb198d9b28e81adcbedef2215cb903570302047c435bb500673065023100a3c4643274ef2f7d98bcfc46e26f45f41044ea3d89f0795fef1e9efd74b4bff846c804443cb4019fea4ee30a7ec50ead02303108b4f1555ddebb91a0552ac67ba0292732b0ab86a5d3dcd681c63cfa48b9a995d565b8c5963c2b287dd4e9bbc8d62b0302047c435bb50067306502301dea1ac7b37656798cc67bce6c2c6f7faa317d690b219a787951cd2196614929d3c2272644af0edecda221dc387b4729023100d8de89e821bec13109222a47c5852e7d81295fd4554d2424617fa0115cb50a916852156d05c236f5ec166c4ae39609da0302047c435bb50067306502300fcc4ccbfb19a05cc92580e3ad38ae9e443804b1205a7b27f5a092e112e54c38a23feac33a5cebf87516be7eb9e20db30231009456701e370a2875c01f876a586cc85f0144c7b3308f865c81c3e3ac0a390d21e3b08a841a3dd745438eeca0c34572570302047c435bb50067306502306d260ceaf213764eee727ff2715c15acebdb59437156b37bfa6b34a0caf5c5f3b8334d06ebdbc2bac137b48c8bc68e3c023100f4d01d220cb22452daf134c0d0a77d7580e2ddfca3c50835bac68b6a5f2ef4937bc6c3bacb79ee83f2faca4a170442a00302047c435bb500673065023100f5b2c54fc6b7158222029b144a1afe65768cc956c80ff739ca3bed34c79a7e02f54bc95eaa69fc50d65e74ab62d9bd3e023072223c7637e2effdb674376832faaf7fa3d973bc15f17222af7b6801e3b5a0af6e3dddd621cdbb1a229dcdd9a08cd2cc0302047c435bb5006730650231009064d28424d39932f099fe548bf879a8ff81fd444c53c15f61d0f43ce177ac9d540336d7c06155db49340d08745484f7023060a748fa115bffb066e653f8d9812638ef25baa7cdc750698f126e21e2c98ee02c05d2fa01fd41eda27bddf36482d5280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023060d77c4333058e67ddd4f68b3938030d7d0ce673c956623574e136d69af903a68bdc9499bddbbd631aab6e7325f5abae0230247008ccf222878b27aa13bf08a2979aa3e3be14bd5ab599d4a465bb405d26053731689de8cec6efe1e7734ea546a6730302047c435bb500673065023100cf1c766ce1ad9b1c83e3858fca10bb1a515eba03afef17e83ed4cdb0e9e5ebc9c961b688a4d8836f82f6df381414497b02306f8794ef99d8f248c66d7838190fbe7e8592daaa5cbc3431b8af3fb9be4f0232790adb4500a4029f9a691bbfe518216c0302047c435bb50068306602310084ce333e799859ad09d0a2a201cc7239c068b349012b081c515f41172a2015a87171abd9cc78470c71acc177e364b98f02310085e6c3f4968c27600d8fda994a9b1488a7c4e6cee879adb3c99f3b00aa2ef364e8940beddf0b48904e800ebd1913db3d0302047c435bb50066306402300d8267722764fc106217041d61560f91743a5a35523a5cf796bbc127c625fc6f42a67da44cc6be5ee4a79315b653da5f023006699c929827273d8895925dd8a0b0cf513605092f164035c83ab926827def862f6ff2f682468ae541bcd72568bb11d10302047c435bb50067306502302eb29d391bb530aeae82715c3e5eb9e3a1343b0a6e769e9f37b9b73c4beea3e46b5fb480c2d45a0578c8927d7d134f08023100e2b453ec6ca8d15875b9eda23c370031b3f1a5f0e2a0a7897c58114e91f01045cbadc3d3bf5e84e875f4ec86ab52bd460302047c435bb500673065023100da4c08a22810541d86c549dd7b00b208e97737466fd988037bd63ae86744c360fc515804cc6e5c1651a7edced3b3576f023034ca8629506d0e91853a38b363ab613549c07a563ca7f0ed67f7ee85f54d7b981ea0b1bea11b9ed2798fa8dcf38f112f0302047c435bb500673065023100a7ebaf0c1768daac4e6b932d28490abb7c40de9965223607b7f9dde61de7eb90f2049b3ce4732acb12ae5d66dca48c6402301cda36ed6aa70aa1e29043342638827de6ad8947c6c49dce7f86a2a8fbfa9fd97a93a74a409b665154a2eb431bcaeb530302047c435bb50067306502310080be7e24915b6ccef80832e1430be68b5245c80e4f5ed60d605b63a95a19ff037f46c644391abbc2d6f85a38406b78c2023033996dd500ae89321cf7aa8e808fc6d3e8fadb745c405fe856db84fa4444c9d85388d68a29a0a9831dff0481f0c47ad20302047c435bb500673065023013e5a082a7dd89a52948bc51eccb94ea2155db157d6fca3ba8c4984e725936fdf4590a5c98e730c06c7a45dd97fb154a023100e2151edb766d5d65d92f83db018e4cd830860ba88c39558541f973e6e6a4a7b3277685fa88dd17a643ee276b7ce92cf70302047c435bb5006730650231009eb53da9ef4f1121911d3d4a47b719f8b993252ed3206f483bee025849a399438feb686f5adf3b392f81cca587c5e29602307fe39472627a847f9d26dcd49900266a202b83dfef66efd0e977c4fcc3e77c7725056e0fe352a0f90107f94949e5b2290302047c435bb5006630640230293995be237302ac20c3b7facb568ab6bd0db83e4169ea1c606e8dd4d9090d664532a5f7d9d78766fb9f766d854c233a0230026e9e7fb1bb09f018bdb8232c7bcbc4caf15f408e61e94939b3213ad4aec2baa23e99b320c2b4fd1feb980619f3e6b10302047c435bb500663064023019d1ce2c9bebecc16f4e395b782e589996830a2e9e89a6e6b908c6d8bdeeead1928fb6a12e658160e36e19acab3c31c502306397143d5650a1d5d1d1cf20e1e429ef564c5f173d4604a7ee3b57bcf375940db900bfe90a752c62adb2665a6753ff490302047c435bb50066306402306ce0f56c4fa2b0ec566a78ebb75e8842e7c1a99267686d1bf1b25297567e767f7de9e7fab7170859569c0e0bbc8ebdbb0230147431f2ce69bac0d5b424b85f4e12ec97b1cf0299c30a7fccef1776d086d3cf02be5c8eecd83bdee1827535fd426e200302047c435bb5006630640230551bfaeed8b4b156a4d5fa4d277040993ac4db85815a1bf338d119be8264b48892677becd6acd789a292224bcedfe0c6023017453e14bcad5f7779b7a0889eede456f7c55ded81fb3626dee4867ad9a083e311f94ec99c7e38e82c17cb98e9d14e720302047c435bb5006730650230484f9719efecafe21b1972c28a24cd91383861543db881c40f9e9d5958b853966ca08961b2a6ea2fd106277c3db5a46b0231008f3d4a7e3e1dff39e40398ec3fd50c5e8b2f8e215ee627134702735b29db5da4eee5770b79db1e5e58e52fa8852096f50302047c435bb50067306502301862188139a43501a5dcd5af3e53ee78ff172246c438946c8cd78a4ab3e5f12ddf637739a542b80c3f9ce2579512d88f023100d09a87cb06f788bf07346c7e2b7f570ea30df8d25f8d541776d2693e923d0c7c74ed3eebbb95de7b9d8853bdef63c8440302047c435bb50067306502304c4069e99c8a7f33a72b7f8997d0fce8d12e55cbf7cf24da5e5311b10d2c818386ea0b2a52893a5cd636bf759d56baad023100ef826b838a341916d37f9df1efb18e10d6e8af42992744b1dfd7bb6505de5bb34ee12f8028d7415b115dbb5ec78e9da20302047c435bb50068306602310080e2898d6d106f9847e316b807a021bd1e03db8a89708af1bbdbd5bcb7cac77c12c5dd9d6cb1a112b6f618f3954e417c02310098e154b28ca6ec592c0cc3efcf1f96aed5bd5798f5e0e07adaea95b6169dcac933b6d2aedaca09d1b7734ba4592f134a0302047c435bb500683066023100f10b7efab6abb853693eeb47698eaabd56c91a8d647cffac1b6334ef71c6f85cf765f12240d58339fc7b34bc11c1b8f5023100ac7e0eb2a01a1cc99bde8c6953b936a9154ea49486beef91d7b4c9fa5346d5eed7f52808698f0962797868a06f63c25b0302047c435bb50067306502310081df12571bbc84e10187d313033110543e171c0676be73efa8e31351c5bc415f9511a144d6da9eeda61abcd785b33e1702300ebcfd13bbbe9dcb4fc7fbf3477ed918a37ef9b73695e8037bd5cd38f8ce23c0248da48f4dcd88c7e3121a806cdc9ccc0302047c435bb500663064023100b1d218df2da6475fc8730c925e505e2b32337ea5d20305188e412e6e4a0bf7669fc6514943ea104e79bd2e6325db9e28022f148d4bebe6a14b1e3507bd9d001c774a905b5c9f7325d6d0109ca3e5ff93c9d82b5b54930b45f41423a9bbab1bf3d10302047c435bb500663064023075c8e198ff50907b11c212458423ce06123d29d9e840b77ea596a65d1ff42a0a7086616dba69b20f52cc5b1629805ca50230380d102422335c9e26cba82c756ca3f40b8b5e3722198259dea45d2ad3d7acf4db97a9258076753153b33b9c9f8fc8100302047c435bb500683066023100a508087ab81e3aa964bc39c6e614b21968c8ccd0c35c2c0e3affa3a6ddb901763eed7f493b2a3cb7c22c721aea2acc7a0231008a80f898403b6baee6a36631f621ebbaf0ec662a0fdb4cc5629148d8f4463b63138800096e93b027f4144600574ad9c60302047c435bb500683066023100cf04995dbc329ac49be9a48d360a31185a0ae81aa5f9d419373e1189b8f2383a51c59e06e88251ca773ac77e92ea1f2f023100e302f569d0e9296312ec6699dcc2f13cc14ac3eb801c6ff7de93659d56b145e35d69aa9494fc3bd5af6563b58d9ae5c40302047c435bb500673065023042464d3e039cc20dd354e4631d1fe2f984cbb32066fa169c563a8a6e28c8588ddbadaf0c0c878e3b3c797f636cc2db9f023100d11a201fa25b10c28baab51a68013d40f4ccdba1a568e478aebcdf9a875778fa2e6dab3310818684939eba61af33b5990302047c435bb500663064023045c3d2bdf501430323818dadeeff23eb82baae5f1345657fa4368bf1ae7f87d18d8e01e97a4e018dbe1e4b9ac1a8485c0230670025ab0c24ebaa5c1068e129687c259226c3170cbed15f2aa8fdc7a4d24c40d0a2e8760d89735f804a44d438fc34af0302047c435bb5006630640230063308ea22d49d31e39166647506f687df575f391199ce34e42b553fa1fa6b3d83626419df45979ef8668d0c28f6c2ae02306204d3c3fe97521cd2842bd3fa9d729e8dd52cf343ce8135ff215f639c351ed60618ef47d3f4087b2cbb5961c9c0911e0302047c435bb500673065023100e09384b716322a064c666df3660e1882c0951c0e03652edbc8ce3eb5d7fc87c8b8cdf1ed7af031e59a3c38fdd70169fe02300eea73a857bc2514d1f82b7e3c44a876868b316a9f83950284a8b80f7c92e21b7b6f60653e00c236e8c472e0799cb42d0302047c435bb50067306502301356c4b53316b0a08d392ab9ed45a43f28ea9b954ecac14087c86b2ca9cee224c9df96d5a1f9e0046f99026da5b7db55023100be66664554a1b6f4cb88de173010f6d42c988dedbef28ebd6202429d3bb737f1e9e5ed09103162218c042093ab10a51d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c6ed500a1b2a9cab1b73f6c9bc7577313558591138833333dd373783e18ba7621f7cf856423017315ee21fb8fc3578e002304bb675e0632695ed772b3fe8ebe1df699a3c0bab9f23478df40f2e2b3f86dbf03daa7adeefe0c71a6e8b55757086db460302047c435bb500683066023100eff296c51bf5658075398dfb8e5423375e223c6510052bad29e9611020976f9114f7d72d807a8b5dfc4a105ac9fcdfe2023100a8f44794b5b06793cc2bbdb3e30b04059a4ba612f54556e2bf8bfc3922f64fdaeba92c19dabc762bab3f5f6676097a800302047c435bb500673065023009cbf9bd3e4a7d8e9a4d31ec53bbecbc0cd9a8b1a1eb6a50dbc0ede67f06e6f2b139157c174fe073b328c4a43cd52e43023100a90314b5ba2571fcc42fde6bb3c88024bfeeaca368e9b54c93e2725ebb37fcd39dc7817695f9b6209ae7a233a91be97d0302047c435bb500673065023100c0c0a9250c4770c09173d571046e41483b778a1639e026580631a67bbedbd574bd636fd60ac847c054f8219839170df902305986d03428fb49f40a9e854c6667371f9acdb8770ec72a339500bd8aeaf6c532551c055c840fb5c97aed3d3103147f790302047c435bb50068306602310088203533823cc136714ea2fb1ea2188ce0dcc8fdee800613c011fa389583716796f22fbbddedb7520c91cd770196e6d7023100bb79f2829475f4088513cf6ac8a649b514d3bb0e082eb5ddd683f76b8c40c90165b89f0d0aea10393db56578f4f758b70302047c435bb500673065023100eaaaf673533bf07b990d5565310d374b5761fc8279d5bf1aad1e7e00222c22dab8084c28fc188ab65905b8d7cd67592302307347765174d188e90e710a44c6f62f2c97f136f47ad7fbc908f3aca77e240af4a6477d4a7bec9b81654191e5bb7695e00302047c435bb5006630640230170c7e4edcc9c4db74f83bef34b7d60d0bf3407633b7e3c5c06afd1b0cb11fcbdec0e485c21f4e3f8f5af841f498d46402306191280b253b45ea04ae60f4a49354dcd966714c2014f97e580f1d50d848415d488b9f0df696b8ddc33891e6c7581b1c0302047c435bb5006730650231008b18b3bdafa86ef3836fe266ff20f926cca1fe8a5303852d1fa482d32621fdacfa67254a9fa961efdcb559ba6b92560702302f4bd38e4131d5323794e993cdb2b02bdd3f1af99fcead307ced436df426c93a93708b26e8779d3daea9935cf0d8f59f0302047c435bb50067306502301e941cf5da4670484cebcb9c476cb39ff3d8ee34497a40577d75084a62930b690cb1b42da7883e29af0f6f127199fa3e023100dab55a534915265036178816704bfc1cad7a20dc6d4fce44b0c1f1cdb0ab68a0ba18b5ec671df213766cefcfe4afe1b80302047c435bb500673065023100b581c3540dd7d09a04976b8e68c0b1c9f6dfaeea98b417d6908b787277a2f5400be7b6544a8007435a842fd1290870f902307b526a9a511395cd82f87486884c82c4b08888a61256c483280dd929ef8db7123eb3636cb63d952390952b4e62c289d30302047c435bb500683066023100a84055ec4a1c4ccf0f7a08964f3f87d2393bfcc6b692ddc0670ed016ae41c688e228139b55a655baee19aaf7349ec2cf02310089e778c5774ee93e95c15c0c7b8fd7c8ebdd265ab3ac90ed7a0d8dba44703219721f5fe532e10e0a31e143116d8dbb240302047c435bb50065306302307ceee83c43f8f8938c1438573a7ab3c41793da508d26c2e92606854b16c4c07a249fd0ea7f745430cf7995e884d894a5022f5192911a1e3453241e9fe9333e611e4e22c9afc9bbb675e3c002203df251163b94bb5d6531efdd0cab6d36f789e1e40302047c435bb500683066023100f72f73b803118a560743a70fe3cf7d4b42bae469a94e2e589e3cd5131733050fdf31e4c876e6f3202b656d92ddcfc33b023100ef52307b1de93b0c4745ecaf456f0254d6a9e898116afaece42f1ff169323f19ed225f25818dfeb8e89d389dd7c28e9a0302047c435bb500683066023100fc55b7ea1662df5a2ed762a4b033256af4b0f9599285884073ed34f360152524937d9f175104b0450bf7440a80ef33e6023100aa49fccb497cb85c79d0a09da5e6f7e8122384217eff3ed0d353d1590c58346ff8c29207192f6a66557137943991f6c10302047c435bb50067306502302db1d888d38b3c29e11f7af56b5f26400cfca5a9330f33eed9dab9e31c24898ade9ad543040a6ddc80740e948a47fff4023100882b527acced10b4c9cb1cb8ad04a212efb3ae86606d2a144c445f7e17c59fa9efbdb8e3a086b3b397705ae26dee4e9d0302047c435bb500673065023031486984d9e6a26de20591e84af8fabdda5864e50953b3a408f26691485f3d43c4faae6f759584bb262aedd8654a2a52023100d768bd109656376761e7cc958e3cd81989fce0376ca03009384b6bd202ca9888af3d40ddd1e6ae1f530f38d47510e6350302047c435bb500663064023027a53a4597b7c505e6f9bd33d85031bb8fbcc3af740d4050278e6df49021ec5214641d72fdb342c2103fd6481b09027102306bf884fb679835b469a1a9aad6970a29b52cd41b92e387462b4cfe28d4ba75165465452d1ab148088ebd35b5fbf7f2bf0302047c435bb50066306402305b610222f13ec54d494fa855a940db4790eb3535ae539576d360b4c6e33f60b9c44df3b78ddbabdbb446bf2bc785adcf023050f16954c8605cd27e17d84cea7313a14c9a13f165f84af017d9b3e5c5776e42a93c8f03030f0f57d951c2091e01e3cc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023041e6e1c5b9f8b0ca6348e30732ec90fde7a59957dd37e87caf79fbbf08f304864de4bcb5f7c662d29e31f36e0d6f06760231009cfd510476c58132c48c3c5f8fb65d89d5ae1f5785c1281a1189061e07a3afe658cd4d5f54c53f17a3ffe6660da3de940302047c435bb500683066023100df329dc3f2b6a301030ef234ee1e0739bcbf080035293327a6e7d104a193089fc72430589898907039aaf78bd610ae2b02310085539be69b133e92c16dd8da2187f90615d536fba629b05d6595aed75c835cb260ce9060dd51f78288213c01d1dec82c0302047c435bb5006730650231008214105eb04e038a7b2f517d5ebca69c91c6eb8daafed6f05651f22f8018bd3a9552639d762e18dd873a6c7ccb26944e02303fdbaa3d90cb505201c55d01138870860ed19343cc336a9d7828541288a5474c6b27a639d68ab93e97f60a7dbe79ebb90302047c435bb500673065023073a30613bb3d595a215642eb5d8713be415f5be5dfd34a678de35b920a3292f39885f79ef6d4b172adba761b60fdd995023100c3fcf9ae8e610bdc68d854e3075f7ddeb6f620d3f497968a3f592ff8dd8c2359695ff7592ade70767e635208272329200302047c435bb500673065023100cdf91263066a24345c88cfc315351c244a352305f64e6a5983dbca466747a9bbe817abb0ff4774374c307d37eeab87b6023020f7589fef7eaa7546b7a80c6f795d7c622e28445bada97a379037b4db8d66f41f547dad835936b5710b021b898ba1690302047c435bb500663064023063e1dbaa97ddd491e1270b27874c3a499719c3065cf591307a7a57963fe5ce6d8c96ea60dfe79c7963685c40b7b1a8bb02300e2f3333f988e8ac76f2d1fe17a0d24fa6cac5481aa4ff7526881a38ffaa09bcb12b013ce8c3ad193ad7f1c99ff713060302047c435bb50066306402301b2259e3f87842786c633b44062d256d67fafeacda6e4c5c417126eb11eac69365771c28ff44e7633313013a40725c550230165fba530ed5fda019b804afbbf4da0dca0d11fba579e988ea33b24b4749edf36e66187621f12dd62b5ce7080bf9789c0302047c435bb50067306502303799126e83991ab14ff70e84b38424a14719fa79069a0c67819c814e199cc517d4bba144ab58b3f79ef7ad086bee1637023100eabea11daf6e88b903d368be9738ee0743042a40f8cccda93e6137cced5f39e15b7e89a513f804ba5175f9e30be34bd80302047c435bb500683066023100802e5e638338c60506eb689c42b71dbaf76e8da3e1e44addc38e606e941b52725a2de3fe4216337e7e79e280860979d50231008c3706bc89adbb503b692bfa870209c6c5d4bde487e00988cab5c789a0f82194ef77d491eafa3a6819da901483f7d0b90302047c435bb500673065023100e461fe2eef1f3ac342b798cc58745b23ac7d816957b07c272139b6ef93ac945ee0aad9dc8042bdc284c4f2cb8e07f6f2023059b02b0e64d4a116996186470057db8a52a1266e6bfe14eedc0af6d1de5f7b44fed71d0290c82a87acc02d1e528d0fb00302047c435bb50067306502305139073bf659b9f8ebb84ffaba2f72331a9ee4d6ebf9dbac5b8941aff129a66af665e09f0024a38364c2fe80f4b8932b023100e035effbd7997c7a08b5af655e08a24a1e03d75a44b3164aeba5087e80528075035e1f93b5e5913c67f33430dba4866b0302047c435bb500683066023100c377ffa16de69c6c756e88c60ad45b37b0755fba65e78216831d861da16683409d95df08e7acdb19b8ba5373a2a9b222023100ff40ecdf1d86e218eef5c11265a9cae63f2db04ceb366442e6fbadd2133fcb342e35c49dad75600f5a0dcc2125a521b10302047c435bb50066306402300d08fbf0dfc5a918b94ab6d96abaf0fd848a060667f6927116dd6ef8b781fbe77a61676d530d84380c00dbde14cbbaf702307518faf9c5cd82f07edd7645016dac92e39f9c84620d757961bea25e91edf4208713851af8bd054cb2289af18a08c32a0302047c435bb50067306502302d2f520f9a843c4f9e7e05ec9db2fe3217a0b50656c62112748c78d79bec21a73fddc70150d1fd4a05d0e4945f403687023100bd40b46fe6c1122788d7f185661be4c5ab08e655ebd42689b98b27b886efc0bf21ee372b913560d1ac499f15747518b60302047c435bb500663064023064176e7633591d8fc49f9d065c039571460cbb79ee4d3b922c3c14ddb0734a9be2f01c9d39bf8af17d861ade4705ab0502303ca95e4072755bc6cc18e3b179d1ea26781f9d0252634f9051349eb9929ead606ce1f7b215380beffe8e52beed9b00d40302047c435bb500673065023100d903634749cdb5d2a972f805fdf2d9ff1664c5958d6410b52cd01c3271918eef4d0cf3be3871926145aa88df42fd8814023039693fa80baee53f8625b087939e90f840d84d3b9a55131c9b896f016842ee3caa377fdc1d767702e541cd901487cf120302047c435bb5006630640230177d973b6006ce4bbcfea31a09c2412cffbb9cf984637522d438a65b1ce3be34b7dfcb243f9231ca7dbfd0b15e13532a023008e954619a506c79c210c0e8ab4f0341be6ee281169da4453370a60a78f79ee969a2b4877e892db7bd5399991c0372380302047c435bb500663064023041f7fd6c00d40471074e220ec72cafbfb62ffb8cc21b2c475fa0235cd58e7e3d11e65d92c344b9816bf1d8fa755bed4802302fa9f59ebb9256583e241773ce89bcdf0f2dc52855648ef23231a526d3a4484e1a2d28b36d165511ee1fd453b8c474640302047c435bb50067306502300a5db9a483cf29f0d96e387ed2405beb09f355bf6d000714118dd15604c560d6a8ea36e4d0321777bfc2d9e6f055c54e023100968ffae971c7d2b4ed048e0260ae3462d91d89844dd09d764d31f04ceac074c7f691c94242e57b7d70369960afa338f80302047c435bb50066306402304f7091d56a2b7ceb3961294b38271e4df01a569c0ada9ca373619df10240b1ab7072fcadf9ee915f4122d42beaa74b7d023015b07679e7736367c50553aa38818df5707f3c3817800d7f7463268c317dcda812f1fcdc87644ad88922f4388fdbfa5f0302047c435bb500673065023029422e9802b992c6f020ce78e70772a11887815f999ab00e10f19994eb2dd9849101d5d80ddcea35b2a2080af5eb2736023100d8859c50eccec818ef573430ec366b846af528a984fb2b7c1082ff99a7f0674796aa68da044ae526b8d4b2eb07c204f20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ffb758678ca933eea4d0ca061c14b118d95ad3bc1b80c250eea7f99c4605e4abe7dd72d1e817224f7696934e2d3fccb7023100d21e1292314d5237d1126e903bd69c5c1d0ee9055f30bd3e45d6e8323359662a5dd36d950da52406c5c8fd225d3697bd0302047c435bb50066306402305f31e530bd899da7ce7bf84a070b4931e2d132610cc1f9d16fc6f3c614b10d929f95ac43d4f45b16d1bae5c84f164fa102306bfeaa24ac98c38f4a8e0f4fa6fad2426e286c68e26626da162bcabc2c77a45972b664862252cd5ab3bd8b20b66108660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b34366aa35881f664e3676e2e292f5c79ef17bdd9f4cc27019b1435de55bea6962aa28d934445bb98068dd54f8832562023060ab3260074c7409fd76d6cf0da7c135a2d601dd8f0bf9b0f9d58991235a6c01c2986789fe05f4127e1611dc5855638f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301673c4a4badca09555a53e0667842b228a4402d35db2f5235561f19f5c7603e44eb09fcc5855689d1c755b3b60ff7473023100b0407462a30851390037a1402ea35a97f73daab4f774f3f85b4f48cc0bfc0b0524618c313bca16929c68e6190bd1260f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d3437d5cd39e5cdf28b6b7cb81e1a479e87ee6911d2055c6276880e5a9237240b31f54e456db9d1c119597478064ba5b023004bda29726ca88ce1620c436780ca7dd87211e726760bc5a5cfdc7aa63b001aec47e950355e7557cbde7539e733777730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a6f960efc71eba216b442e7b6a04fe0693e67b19a98000bc9ec7207256bcd47e4bffb5e9619675667221272efe20a64b023100e32443e590f5987b99eb6dc8db6b0b78ef1d98c7fdde27256c52986a02cd69654c71130e1e8b9cdb4dcfa3614e8d15fa0302047c435bb500683066023100be5fd2b423829b3c44436405859467e59c231a4bdd93498cadf0ae186feacc544ca6d020621d454b54b72efcadad7c3d023100b0b34615625edcbbb8c82093f90309c7762b9d1de90bc1722d72d7c3d91734bab67f46a49a397b8333a7b658f5b877360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302c51f29535fbb5a2ce4de3cd6c8547948826e70f1a7cb53c5b161b1c254428dde1b346e13687799c2805d3591f5bfb250230644aaefa426418a5feca493c460d581cf6e1b0459529fb05ee49e49abbd8fd63b9347faf66d795458547038c67f367450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306ada775895e896c438db75d2d81dccdb79935c26da1113456dc75d89cda42621e1e17f1a4c5d5e002eead02cda2ee6d8023100dfac899b157db692675ae101540ac30d8e2689ed2191dcb1ae5affee2895ba8a88e7b2803cdec88b7b2ba4e6f0ebce630302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023029319d91e901bbd51c5da207c6b2755f410b25eea82f0e6e9919e037bd98ee2dcc9650be43e01edf0e4edbf2794253c3023100ae626e905314986c6b279198e6e73bd3391c23cbe50d1c5436e5eb6cdb3afae007b3913d8fb1f6689627253b22ec10eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009a0966b3f262fe7afc062c7430b43e523e31ed8b21288de73ef9db69280ca059f1162a08b9fb84b6b12291e8bf19df7e023009f6921435afb4cdeb4cb611f519cbd640eb51f086b6be9becdbe804e8e86c21fed9f402109423ec96f43df6d727bf7f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307cdfcb5e38958a64af6ebc7f371358ff2d8dad285f333fb630268476e66726e75603de4d5c0003c337392a8e45d1da1902300e80c03977cee11d64c1fd0e281db7fbeed40cf2c5a49995681a0e3d7869934d84c4dcb61fe29b2d7daafb31ec0c03d40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023066be9b2b9c04b88cb32d73fff51b00f4f2d39c082188eb796695f57cb0a72b37e232d15d64bf1d0006d5f03ccf9c5724023100928a968f90ad35c5b64dabc3d5fea9b30e5717a9498ae2e367afa306bdfc47d6517cfe61b8fb2f26f08a7417c9ec55ce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ca2ad8b650847f6b1d683265454dc358beee9663d9d29c3b68f04f03e4f14ac23d534848f871296487fc6658b44dd4e1023100fd56550d5303c3602087b45ad5b697ccb62e9673c4c129da9b974e20aa7ccb85ce76773563d47ab04f24e9cf206598260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230069f31481470a68c5efc7af7e796f47116966af3f17919aca650ae2aa48720424fca1d40c9f43f8a9bd75dbc239de8f5023100e686e7eafb38ff2d4cf2ad7514c7ab460fc77af0c7a11c86add91c71a9da000735ddd03d09b3c1b862d25bc603c1ffd50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023013f0049bc491dcddc1192fa3afc17d3c3f08302b2583bcd3ee943db0b0d25f49e986c6cd1394537a3a204e97775bcf91023009d8875b6164c01bdfe8b816e78c7982000c51a7385d6df537b1ed77d52ecdfd76203cc9b2e47df36a5e916a07818aa20302047c435bb500673065023100bc3ef81caa22bf56cf1d9c32359e9c9830d479eeb578a8e847fabfd99420399022832cb154e08a67bc16521784d0993c02306df03f6d85318da19a69956f7655a1cb787e8784113b3959f146d1692d4f86fde8bdaa1685fb4d381177c70bbc2021c80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c34b2bb64afc3171393d39ca5371697dfb73721d828b538e040304b5344bcf20d22e6bdf71cfdc2c26fc42e0eff7bcad0231008d3b65f8ec58cdee38624c37bd1b8241f7ce5f16a7b5137a864c0be20c23eda341ef515cc54e9d3c55e2639f27253e0a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f9d2439823829e2ddae6d9f33138cc8de4ca635dcc52bb1cf1d6d2f7294b19d7c5caa48a9db40d3425310dfd88a2155a023046bff979d9f8461e6c451459caf4276dc3d88b3419d2658754072580fbc14ba298b9f1612e0e6976079d6084edd4bb300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e7e761ffbe4b9d8ea7d05e77a8ad736548e7fa059bc2ff9288748891e6ff59062d69c3834e7b93ccf1259ed36152cf84023042bcb8fcdacc1c9c96e8d02e02e30b2c60ae93a3794af8c5154f5c4ff497819c8285f883dd74b4c55aa86c4f631c8f8e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307fc8abf15e321e94cd3c8fdce0f7676fbf5cecb1afdd5e276da2b98391a8dca504eed40870ca4f9f780e46681ebcf4ea023100ed86d38cb9301c2a1c67e2b464afafe516ff316b8a3cc46d61b5a70c0937e6b646975a695bf7d9a68cb125dcc7c7eaee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023051ada218d0aebd236677b30a48b2a85893fb0ce078a3d2c8daafc51c87cf5d5e67e1e4bee0e9dd15a290fc6bd3365a01023100f1487879d02ed51a4112b927007f9d70f45e5b85326ac2e87f7e285a29487024e53babda4b1eb09c1c5f7b85657fc43b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300c06d931d9ba9938308c8d6ecb1ee876d521a0fd224d5a59025f290d6dd3f2be76e1a5c3f788d40293bd5fe9cacf6acd0230351b5bfc55d6a287e2b5367d0252f603b477f9ec00d2cde94c4e54045847b8d13af02774f717a9d5e4db46267aef70e90302047c435bb50066306402303e2c93928a967a7f2daacf68ad76bd548662dc682eb7f76310818dabf4d6639ddf8eb37414209d40c1da76bb50b74800023053cd8edd0693f4ae7ead5018b658806b05dab44cafa9321803db79da464c03dc7b79b6095c51875be8283bb43a5a0e870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e79e0f4dba2082d954d3130eac123be53f868f72e493386de1823c7283e4a9f0aae98ae709379e97cf586ee066ffe37d023046e13f1cc505af04a3eb970e2e4fc6390907f0f4673b0b2fe408c6ab91be604c06bc17610ef9a7bb3ea6e6aa9b53e1c10302047c435bb500673065023009fc5f342b236e4d796901a57810db4cb3694835182cbb5938b41582ea236fdfb3ee441faabc390ce0e5ba1df099992c023100fad67ae81e14542e10a714e262f6657c8737ebf449e734048b9bb85efbc028156843c78235820c27bbecb320df256b7c0302047c435bb500683066023100a727f72a01f343998988e29a467cb9a031eb10046d236f5b20de23ab8525bf6da9f3714980465dc62e61e2a6bad5878c023100bf86a6d071cc6cc434a54401f5c3086aa072209f0d3866a7a715ec79f9012511cb7a5fcda35a593dc25231910cd8bc150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c7875be5cafb685de51ed2b12fef80d3cd5343db1cbc7295c509bfaf9c714be7664b1a4e462dca9c77a3ccefc1f3f7f402303ea0155d70cd9147b3ea25aa0122f6db9f818ad44b36390d0fba64efa50144f5d23aa5fbb6452e7ccd660b23cc820d6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307b87fb33c81e6e86568ee40b26f173da2d34fd1b45f623853a0f876f90a1894b840fa4f83647657d816940e22c607934023036b10aa2b9f829491558b37cd020068cf3746deae87e0a3ba9a71798656b1c19087de3558f610294be7c25171a2bc41d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100892108b192aef1d4215378d449d6c4f398dce45e3d38b4591b582c86946ebad4fb47e02363ce85d133f95dc9305642e0023076b28d31e757cb850804d28dd3783403dfec9b57462560e5714af80e0d02d7e05afd7f280c2bb8ca24f102343e8deff10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310087f7c0972a15812068994396a57aa5dc545093a36576ac62ff8e07bc6ee8315b07b523c15e9b55d60d233523e0b0f4b30231009d1092dc147dcd3b50db42369ddd03654af2715e966e14f038defd10ddf2e11cbd5b14942ee14ad1d3fc815ae0cc99010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d9f855ec885ba54c5a2a532de26fe0ef2cd39fb428aa7329888edaa0035bcac8855caa08c783250e3dca1d140f0f0e6f023100f16890a3990be422c55f8b4d2f67bd6cd0fd1cfd416f16f0354d31f2b49fb78ebed7186f2dc6bd21e49f1da6c99c7ae40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fc07602b934f2f2119581887656c457164463c4211023dab65ca5edc561f88b89588a95b9b8064630ec0cbeae291a6c6023100f11cfa2c9da9a65598104bd9fa98d4dc7cdf7dcdcb7ad2c1b026c3cad4e015ee2b308995a3f1c660ad3121b2d33130890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cfa6b6b3090932588df0214bff2234c36e06171bf4302a885130e3cafc3a9b8de14f2a70b6ae285af50bc8645882ad85023100ac690a7e27abcd987ab66685b60935921c04ca9ae28d87269340307c23de6faf6d2a617612c3632d82ea37cdcabdf3db0302047c435bb500683066023100fd9b5c62c9898ba9a9cb0e8a9cd2f434c8c4bcc6e3fbb6ae6886d54297fe33eb1ced890d160d2e4777d5319b243df865023100d37f596dcc0c2c5849bbf7c62539fbd2ee0a6e64610f1e5a5f9fd4e06f281d68918df7df911ffd2419d31dd578de491e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008b0984e276dd6c04ba615a17a431a4a23ec168a034726056953afac1c9d2bd3d7a539f1bb3bebc94e85b2a1747abb91a023100f2d406745729fb58f4d42af70fb157690cfb758cfe6200167b31003255bacdc98f253f6b9e0142ff96844ada1a9b33150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305ec89f4f07efa9391bbb8a0d7fd8dd18609bc2f8713f49d1ddf8f539dadd9fff2f2607a415932b1173cac775a31a330c02305bd13801446b482fbfa4a4378dc3c3bec4cc59331ea605884d4b9410bd25f69b7d04660935d1092011a9c4ac29a63a9b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fc945302780a6f96c906817117b8e7fd82102a5da435ff2358d9686058ea7e6d1d39d65993a1401d69137ebe9d0f88a802310087725d73112c64495817b9cd5c3fdc2006492e75304dd9e8088c61e0eae95bd9e92afdad898224f81eb2630f926adf7c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cc2e51b24360bab6a7679e62a4473427bb231806eb60769bf2f37f210486003a4de07f121c517dcd8c445fa0587a30a4023100d3125c9d0168a475fd42b3d5a9b521e7d87ad9f1dc3d651192545000f8c0e8178a1d2fd59af2c8b5e0f908cfc22439a10302047c435bb500673065023100ada7f3587791e6066b00b6486e89d0f3e5cdba3069e37d64ca50307477a9d685bd9a8fe34f169a9c77f73cd9836c80dc0230209a053b8d8bc042c312da45efa55eb11c36ff25c5e715b2bee0d33d6fbd7d87eb7d7d135bdbf00030b1c6df5a3f64810302047c435bb5006830660231009d7228f1a8812e303c47e5c7ad720428fc4215cd0d6e32decf05da8b85b5f8e5195ddc4e2adb2aa2d2264e6a583ee453023100bc44de0942884f105e5cc674c00407fd9b060099010c6c5de7f27d30db2143a3284a8672698e42e6cd9927dc7252a0f90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e26bc1567f68e3a960787bccf2d14bf2391191dee747f42d7e5f17c1b6bf479dd0f36dd0f1252c2aa73683d8ad59cc7402307b637e4385f4ea14995e9c37be5fac6865ee7c987e538fc5f04b4614c01fe45f7ee747727830f7528b98e75c18e87d140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304ffb2a064d9309347556dbf459b28cbad4062b20c9469894ea24179df3f2e2e5a1da0dc26e77caedca36061c2fc9e589023055158e47be3c6242046fbff8269f8ee4f69b45b25d4fbaa45d4e89b6cda99debb527906cee150fc9f7bf45a8f2d7f8890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302ac8e7045fa94d4ee6c0e51ee3e4085f532e6175c334a25fac9fda563f867e64736eae6074767e722945e6efbee5d61e02305f073b31a0fcac253fa073edfdcf49c035e3fe1612d1920ddd34e489b5e124ca5d7173a7b688eefb29fc75b53160c0800302047c435bb5006730650230024b2ef77dd17cbadd4bb3a784db9bd7edb1b19b85781e25e1a9daa0b91a7553fcd1287c34450d62274de2b79a0e9dd2023100824bf70d3bd35ae120f2c0bfc88154ab2efcc96e7872856f7670ac32b50a3aab1afd2218fefceb5920f791668dc30b390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023018dc1d1c3a8f601579e753642755ebddce8563df1a4fb6f15f666e7007f2475b35bce04d53a5feb46ee014a7de81b75a023020fe72e12b6c3aab559f8bb5427a29460fc2566652acdebf51c465a89175256acecfcee617168f56497a0020172168af0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310099695c1f86e474c4228388ef134c5033a02f7926ab2e54783d728cd5f393ea736be331763c234b82539629c8058255db02303d86176461cbcb7d550f883ca7b24c1357d9ebeb13028016bb303a3bfa95750497a08dfec6afa03dc40f2efa688578590302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023023edbc04b4d5aa7b0571fbd93d1dc481cd7cb8edd597416b53a9bedde620d625a72eb6c35667887fba731abaf4139f8d023074744856673f2b785ed49ed20357b80b1348b7736be0c38edf18b62726994615831bb670b703197536d3d45face9e6b30302047c435bb5006830660231008533555dd3950a4081777c86484f2b18883d7e9b47180bd35af5939ac5fd5002f14c2004fc2171fe7962a4c0d93c69c102310090c8e4fa6d88e0481e00ed83b2f345e289f6da61438f861d552e161a5eb90290e8f4fbf4fbf128861e4671153638eca30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cebef8e0af28c1d99a16b560ab80dcb9e11cc3cda755867f680fb8588ab9f7d5af2423024c14f891cc13b7d2eb837215023100d7d883c5a6e211d52e59d2299af3dff98ecd2b55c45a5935aec8ca46c0e2f013399e01db74759bd4ebff430a2be8b9e50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230418c3cb6669840c3e62ca66d04795bba24e2b63b6e43bd1f5f7a3f0bb8e4547d759760ff65dea20de3979fc1c6783a010231008469e64c7c917c160058f446d5ed8ed47b2af7e167883a6cbfc17668385f26423d65fa83ee08b6479535f74971c946410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304fd6c8e17abe4b92890032216a8d97fdc5283a444015235c5c47c2d52e6fe99210d63a9197de795de358143210207fba023066a3f00584591d4cff836e5f3a705a3d5e5dcfbc9dfc978cb8bc339b7eb44e6beeac973b2156520a226b4645ab8f808e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023000ceb2e0571b96e5045cf41ce8911c0e2f602e46aeba6eac9105ea5d613a2ec9c7eef8802889af9b85cd573c86dae617023100c897a077c759b0a8b1d4b17ad988b7234bf6fbbcec84b1c10e549fcd7f02f6312af6b3d1eaa061ca1978b405c1dbbe5b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ded3cc2c500929e2d1f9a0409e5ff81c4e15bf156d7881d4f0b8a1181e40873fda98e1e6d02f2d4876f4ca6598d5cf42023100d12ddfabaae28349915831fa3a2040e0a2ecf2499fc266822e15aa8d82982bb3839f064901267227fa5e89581b67ee4e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303554e9a5d43649739fd034c03e29c20bbecf2666cf431a1205c7dfebc87766e0e5dab3ef17e4b675bd79fbaca491ad12023100ed22842dc830c950a7fa1a10f6834cb6ab46e221aa336da48ba3aa1054e43a9e8b5f8b34f7a33bb46e48ea64caf362200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310093733f3a83384f6e7061520eb530a6c0a258fe5c42a26563db54aef324ef22869238f0c2c1a882ee871aa0aec577f04b02302e40d7570c52b65d736bd3a662e5a40bcd2ed98c4541e4cfaaa19da77207973b16d387d4371cf32718b296570a3f3dc50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a08fe05be2043cf628408f98f1812a1542eba1fe5b394d400a31e9b3b680831b0cd3b0369b2b3a3298ddbdace68ac0fa023100e139e0613554bf0e34777adc357b4daea7c5aea1c304ee9cac723ef260ec3906e73efc9ff1bc96cf99a46b3b8db6059d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d3800af6329970e0f5332e36e031623b99fca66b2628c2b0f6ba748eaa7f59a5a5d1e0ca0373c7f1a66a8dd93f82efe5023100f39414e1b607293c20afac64db36d2c739f02b973a335b69fa1ca15b8f18e426376742f67843cc0f7eb430118d0eb6c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100af015cdf5dbcc50e7e5e7f491a609880fbfe2b8b5b6d09b919265864ef436b193398e5ebc8e15a816473ec3be9582f23023100c1e0696504751f533c4aad52ce8525b9195550867e3e621130159a1e2f546f37d0344d9b26ec6cd9aa4a616176f72be80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302466971ed85edaca153c2cd8c021f8b4c9783591716b343c87781760c2cf76f8da9059b005883314c70a502919527f9c02300c38994e87c1f19db9cd10e39da8559f475ca44cae29b7bb6f6fb1ffc0c360c9708ac0cf008f7ebfbbe7f1be3860d47a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f67b4922d25737ab07d2372be340c9e981b4076c6ad4b0f629d8cbf904edc898152d01f297218a6a79cca62789b9ac0002305264dec85624af732d1e7c322580a5a780f4f10e06de306992ff39a130dbbc2ad2840c530a638437c81b96dab9ec9e640302047c435bb50066306402302032608909aa57ba5e1fb62a4e65d2fcc6dc064ea42f75e4747ab34324a4db6fee36410dc9165524f49512e9cc06844802303baaf0b946d79e3619d8db099fdeff69f2c58c081a0f1d40db3507a0b854a8114854e79636d1441b04fa0557d3b9e5990302047c435bb500663064023028bdc9f6a75d31ce7362f531045606f64aab35987ade6d8a2aa619d73330c36462e9326cc19bad6745b86b6f5f25514c023065aa4f00482122754cb76085970c48ecab495a93dc546f6612b0aad83f8de9bacdf52ffffc4082432f668d8d3209ce170302047c435bb500683066023100eb4a3f901904970ca29995da8a95a869c1f2e40def4849ce21e9ebda1d511b87f4de3a9a7a5430c4c9a8f1dcfda534d0023100a68a39ddda863d7830b8fc8ea6a90c3e765e16aa7bd1c1bdbea950943ebf3468df97dc8afe4700e19f9367c14387f7ff0302047c435bb500683066023100b10f8308ba33a9490fa1d859bee7ab737a20ca7b1b76213d69bad205b29a576e4a4e2ca7bc355217a62be236fa2bb511023100a9cfbd19ec817d383ce6119f71c8cfc41ae65b456e3f1a255390f3fe380cffc1e3bb11e14519459d127206805b2bcd2f0302047c435bb500673065023033829a6cc6a3135a7586ed6e615ed7621b7fcc3c9061d2b4f8641ad22ce16485b09e05893bd896a0b258e21da3c2c6600231009f094567be347bb4d97059012764d1e9f4af8595837a4dfb036ad4bcb7d32a87548ddd430d148eff69cf43cbb0d7af520302047c435bb5006830660231008a38b91e4d04e06bbc8c96ad1782889f378533abd48151b54561a92de122de313049aa36714dd08ca55259b989f8cb01023100c0d46b6dd1e7a8bf22e407c0ce84bf3e6ff3a996e026a443f040fc6089ad7e575a5ed4321f9b1af0877019fb3b0e517a0302047c435bb50067306502304eaafdf5f505ef981cf07e2c66115b3c3f12a976ca87fc831780b8b17a579b254502cd284698f20b633da0b5bcced1b4023100a7f5d04ddb58ad30c6d66dbb55e18cfe75d5db7aa5aacfb49cd4c6a815f55f1902b71af762b020d5edd9afa6470c33150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a8d5fb866ceb312d015ee28dd060010aaa2b88368ec2b16b409bfb4ef04ccfb4caea0719392f0d37dfcaaa9b42de950f02304f60f092f3ff1d859b6f38f3e44c67d36bacc15acb1813df4e941dd74636dbf9927509d2cf53aec3387c022d696218410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023068dc5ac2caa3e15f66350ba6406ffb370a74617df98bca8c3be8e8ba5ca20f6da590dbcf2cf066dda7513e4b3229d33802307bdaf16900d9bca46d700052e1f4a6b93b6269355d2ff1283a8c0d32fbbd12301919228cf219f5e8a4c671ef4ca9f70a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230682f8fe876de0c849f4f1fc6edf4258ac04517eb2f63d14ed7936a53dcf62f02934ac6915c120405350486e405629f4e023100d96821431b469fbff5b9e4be1928ce3bfa6929c091742db3e10e74a304a0d6d8f153ba5ddb2cd61ed8f3a8b63a95c36f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fcc440fa170501e7d9fc0489655802955211522cf8ee3f14f09c57f9de3b53a614c71123ded2d5c6634a64e05b0279cd02310092cafebfe311038394e7e586375e762b70c2543b7a02e825f8cdd799cacd13260b69132f4631c404a63c658a05cc360b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023021aa3e22b9e2e10c145961069c2b1a92960e92f91f62b38430a6618df93127b7b2a9a1c1e47ede69d1361b39b7e00c9c0230425837ff1ff06c3c57cc62792a79f14e63fe39dc70df04d67993ba941a73e68811346bc9085040dbc7e74b510b86a9870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023054e364a9556812b2977fa2facf0b41d200f6218cae0a743f9c44339c7fea3ec70f706d63edaf4ad1b559cc790ebe6c98023100c196e6693a76467cffe256cf84293ff063b6ea83a8156e95abd130a32bb234f3e0cfb8758422a90e17ed21586c4d8fde0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d74b6324bdf91b747f2635f364dd4c607fa4909e99bf6f9f95a150672b1a5d76ea3112b6c30fd966c021d12795d72c4a023100deb20ad250ed0b2c1b4471e8bda525b5b7b7c73adfd34113f2bdeb464e3a556ac53dafc94c27152b40a5987c7ebcf4a30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310087bde77fffca25f117de493c2afaf7557acbdc8f739b1a8842c45df22e9f174de75cecb3e570addb8ee3f01e0cdec6cb02310094b78ae7e8289b67c5aad5566e6499cbad5969b904d31bdf4769bc4efa4dd8cb967390a8429fa272941cd1f5e5e8f4ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023073d9ee58ca8fcccca21fc7bac9e290156300ef374d24539402abf223c2479291d243e83580bbd628c37414d2929422cd023100d57441de17db80a379664dea3d9fb07aaa1252d82650da24797da077af83c965f2d13079e042838606ac2fb895fa2ee70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100eaf13949b2bf61ebb9b97926b2ae323ec7785162a7a00a761722a1389ebf61ebe355c8c9cb15ed3041961dc71045bb1502300b725833848118f4a560fce4d2a3f80287500fdd983e7dcd3676dbaaf00a624e15384421f10d783f5632fc033e91d2d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ef40114fc8479a22b29d2cb14f23391cb986bf2d4e73c1dad5ee4697ac2285451d637d2db06b1f020b70ff25c4c369170231008c09067273902984e1fda71cb4a2450e7eb4a464c609fadc3d34a3dd7f41bc6ca678d25e77accdb37ef8fb9b54f361320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306cc3457b7975b2f36f25f2d7913ae41ecf4c4119c408b633cd63815c38aedeec2d5d94bd3ceafee923fdc09ef28e6dca023100c25a6fc99f27be295e9cb8bdb573fbe724d7f212d6b583036d3a776a4441c7ec5a6fd70d2a51b635a343d03483f3cc340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023005055e40c8a0ce298fa4b41d868209e0de8f76329b3203fabf79f101f62212dc7ca5155a0c80d2e1f2e9f8724785acbd02306e1f2b0dd5dbfeb9567aff8d17ff66cfe0265ad414d9bacfd723ecf14b504befa4f61cc06244fbda0cd37e672c55bf5c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a08606afd260be3a3ececad0712c436087514e927857ca469bf9fa75b7eaeac693657f83d47c23488a75390a1165a9b10230765082ffb4e3506db1c445738b4489d8e15b7e5580c79592a64209993b51963a78312b60751c4f89b71afd660bc0a55a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310096c185326a4adee34e141500cf71c6ca301813cfa359af3b6e25dfdd37e4b2801aa3cd30f0d377f2fba5e2c6463dc3e702300d4ba5c448dff4c452b9de3cea609077d51262efcfe3ddb17edeffb628a150fa7276f5b8662347e756de9c113830eb870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a7db614777162a2b4b6fc0a4131851b1219533e30533f32465330fb641b760c54b746e2325cef5ee5239a0023f3f1f94023100e0c6d1c14bc9e42c19c03f3f16e307d47996e80acc4d3686ce73fee86519bef5ddc72cda110e02b9568c865f49de50e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230236f4ca1b36a43169bae6778e5fa20c67d0226e486072e563d6b227cf1e1eb4b8ee5b2ae860bf825b7aa27ecd98e753e02301de4f418368566f10251dbca804911a33e716a27163f5eec4ebfe0291b74d5a9250b817efc9a7bb8bcf12591f3d4d5680302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c76f365042b4e9a7466d64603859495ab6ab242054faff2f5be1300af64ceb95b0a40151cac90095f83ea76b28566b7c023100b217fefb3fb2ac4b559e9bf2d3ab7c763fad960035c72b38ea5f2631fb68c018e808b8a38eda286b8fd01c5edb22e7c20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dd9baaa8faeb172cd8acf5c977f8b984713286244edd2dd159caad4dc4eb0874a19b0f495563a4f63cd44de2159f40fa023100ba5f25c6b8f282b0b984439182bd46a581251c5db52877cf2db20d1dd06c21bff642582ebeced335411dc1746ed9fddf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023072ba97269c9c51c14aa4814a0d6435d2d51eb8b038f239d18015ea1c3e53fea15a5d6b92eed59f459f4dbf4e2f04477602303cdea63ae59590118d46b711b20ee0337127bcef930d7fe8174fef7c9f2c33769f0ba21d6a7ca1907907563ebbc49f650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304c7cc6fe01b64c386f90d1f42f0059b6a90ae23385447456d4b749373489f9c69165d7012c43f65ec5c34f8ba608a1df023100dd988c6bc6b159a3d1e6372bc6f007df786cbc1056cc53c1d5d1444483b826799341bb8ea8b1eb200768fe22a12b78de0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306daf67f6c174d540dae9bd70a5fdfb55ab64637b70dc759bd1104791127bb68a1bd75bad261200496e21693437087b4402307a64017a00adb471b7bc7b8c74ed021d308304cfadfb728b4c0c356fa4f5c4d881c72b1dc79a5d387a18f9f6e1d7bbab0302047c435bb50066306402300f97495b233941bb85c4eb1e3183026033f34299ea1e58de8934e0e6bb3ec2080982cfad6877a54b06f603f7a5b6908302300a758298fd9b5759f75b34854f636c048b960c5a743fdb38c6f127c23761da1aa61b8bbf741f2c1ff8f2c4c82e9ec8ce0302047c435bb500673065023100bd12ab17a1ddd6ecfe1378e1f23ef49896107c71d823afce8b7694c32d760c4aaaea10e61f92ccfd6725d0d6c328acf302307f20218b4acb11425d8d0d194f0bfc9f663af1aad340129dfef8076b0821239d696c7607d0e2cf219471a2a9d07afdae0302047c435bb500673065023100c82ddd20bdf57b17e067589d484b528e9931d3f37d92c4e8cb32958f20e4cf2f13424b21494874d4ac064a5c4c5c03fd02300925bad3d5e6e644973cfb7a76190570302a2334e92dca27419bc63cb81ddbcdca2d22a94b8cad820daebf2dd8f9740e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303990ed8766bc60440c4bddbbd552e9f0649eb1d72614ca0bebc4910bb1ec8136bbe804b27d4dfd398e2dd6ada9cf686402305fd2c9e235c98c094685eabd83dae2506ac406b87351f99a1b917e982695d5ee8155bdf07ef28fa119df433806df6d700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100834d4e1ab64513b6c9915b0f69dddb48f38ea1ea1c71e20ab442ade7405752875d2cabcf67342d4078718218e1324280023100894572e53881c7f4177e79e7a3ef0597233fb343076572ef84875adbb2c3b7b9020daec9c844e8d100549729c3db7b870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d134868d986765f39659ff5ef23bbe9276e12793ce66cf40dab4d3282e18e5b5957f6923e86888cfb39032f2a10806b6023100bebd734aca3d3110d47048f07c47407df2d2356a0f9903762278662af9fb653d18e465f5a366fb4bde93972d620e7afd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bb6543ba639fddc8f63f1538c7926248d1bb02b2c4bea354ba63d39fdd17438e8d4b0a7131e212783c35b638d8791fda02303001ecb8c198d7c029343368e505fcb0d661259e03591df93579a1a0070470ab1a4971eedc4fef00d1747284943f822c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bdb407d9368b1f9f6fc7e2bc2f11825b66e37fe0e83ebc79c70bbdaa3f22878cf041714725a1d229cd2409e5b1d1caf4023100b112d9bf13858f4e1ebdeac09cdaeff6c5e68ad68dbdfd8d14bc48d986b0f9b16fceece6062d49b4c89e47bef041c5eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303df54c5ce19c91eec5d11e711e6c1df615c67e84da187c4f8036baee5eb7d91533327050500eb0e638dbdc1f37cc55a8023100998e538f2ede66991aac760c463faf3fef9fa9e122e9a51e8f4bbbb6f879c304c8ad01be11dd30ec89e5f259b6ce572c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ecdc9ef56d1df8a3674d78c1543e76820b8a2daeaa919093ae8d49e1121cf3eca473e212233a13b48387c2bed5b8f8bf02310080dfc84679fe60b93b97990560ad19f4b5f89a7b56ec935c048b0c0fe948b368654c14b3db713a5173e52b4cbed25cf30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fee8f50496910c3ac2c0ad4cd5fa249042f22b01e5b12d6fb75926fa582d0121581cbf848e0db43a6193ef20c12ef519023100da1fa87e5c28d7de64d8abd43acb3b53c6846782a255b167c7e88f697d0985e97d50ca98fb20961c86230f83da7e2ae30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310099f5e7c1c121404f4436fc26c19d4a362e54e37b2530079fddd8233b5a79b4e7844c6b9c5b513eb13590d4dc6b4bdbd202307dfb61f8816249fc91a969a26f0a1c51e3605c4bd09203e64e59e2470dc0e9efea49b2ef7a687790a205d20dbf67cca60302047c435bb500673065023063c52a33f887f8acf01fa2727a6c44e65b62719a14d29a4dccbf669e5319bdc959811f78bc76c48f0ebe2d45faee36a2023100e6c1eedc6d492888792cf2d99d4f4d490fa78a82eb60e65ca137b7ba7bf14bb590c9b4381f73c10dc765f4e88286025f0302047c435bb500673065023016abb61f0aa5dca0e200e27a1a30ab7d308647446764b9298566aa7895d82045a32736923408666e90468bb4e3ccd92b023100cc87b2f1937aa42036662c10853e77f3be258d2bb0100e6f35664a28b1ec966799016a75654aa2e32027694f163994eb0302047c435bb500683066023100d5b8b8fc8cf2569c11b1773238189f8cacdec5306b43b789ade008f23b1257788d6ce9639195b83aeecfb95778f15dde0231009ff33c4d093a28f6bdcc3c369babaa82ab92b531c7234a4b4a9ac1e7a00a7a3b8a897c5d21dcf6bfe50d7a0e8496d12e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aecaaf975db32a3b5ec9813f7071d5b70a72a3e221292048b979ad0f1787ad19b99179ee12280bc895c087c1e182f1c5023000f93a6272df549b1f715475df728eddb1a7e93283a77c7c9e931f0a890cceb2977a7171484da634528d0e280eef6c380302047c435bb5006730650230086629fdcbeb7d5110b85df4e458acd233760ebf470d44232a5cb9bf23aa62120d3128c44a5cbfa4728cacab52cff735023100dac953dd705d90c99df1964ef5dc87e6d1532f7aba1536d25681922172bd291bb934cb79d68dec7b8c0486fdc7c6c3d60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f9cd025267a69a01dab77f65cee349d2fc934127b198bd7bfb325e6203b727c532ada8ecb2ec68a79652f7ed0b540a3d02305acf3e8a086a15524769db292bee3f07091b925da07100edc03e102b5e3703ac079977d400dd6f30e2010b5fbd7c66b50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e2a76f172c8d87e67f250c292d4d22f821c85d7a579bfbea161144148ed345b290b4453f6d692c6a0b5d7cabbcf7307b02310081f08a04603c5d1f78da3df7eb58815bf34f7bb995cef620585c969e916a58b327ec39108019944c604f8ebea1f86d620302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305a78b4b649383c935cf3c2a7d7cc428fa68dbb2de5a7dda18fc724fcc96a5866213e5c32654f198fa569e7a0eb5926a9023073772e7159ce988ec51dd4ff87c0f55e515c16aa109e39e711bd9433e4cccb78b07236ccb1c857053d8c6cfff7d7a34f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302c6ebf61423f72a091d85fd46c1bf8d4c5c1bd0c8d5820e20e469de8075f7d4c3513b9bb6105cf64649f79d4e8c2598f023100b7bd504203602aa2cb300b03b28248b818cd9120fdd41a3d19c63a32ea4d2495df193b08a3b9751f739956288ba3285d0302047c435bb500683066023100ba8b4f18d1aac682983affae84bf867ad13ee9b2218480ff514b6dd4e2bf7dac025592e4f4efba0255b2abc4acf6e382023100eb3ec67deee88adcf86af2d5e5f7f55b78366a0a688e1b367629cb6f1020fe38f76dd644bbfc9c31ec5ab1636d5a643a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023015d2022f939e6d08597a430e161a55340e1ec666431c1d2f60cd43eb91d14cd2697f1cc95927dc5c52c0b600b91eed7f023100d27cd783abe6a2711a5c3b1e645bb9f77fdb05dce9404b2baa5767f4e668b300a04add0e5e4c5272bc247fffbd83253a0302047c435bb50067306502305380dc89c41f08eea2059df3555987fe9cde03e28839ea0d6bf535bac6f3fa390b9d93d8eb64ccefd54538d7d64c8dce023100af372418fc516b7a49bcebe3881aba5bd43244b7578027967b7a5748af9f4103a3218facc0cb7a6e2f6704e8dfa5646d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310080c8817cd60c070630ffcf9c32a7a003c8f87ee1f17b11dc8676d8c8d47c96a9ca092d5cea8fffa9cb1616c8b7b9d1ba023100ecb8b90955ad6743aa4449b3a9d614d10d5e76df94c1ac49d98569a6d8307b4df3334f2c766097f59b989ac1fdd363ff0302047c435bb50066306402302464d04853813140e5144c3386f6549a28ad869e5b4de76315868b060d6a2c89aea3e8b0e0cdc568fd319f9d59af294b0230311cd596b93856fe7d6f62cb5f168dd14b6ea01784a26c8ac93a6175d690ce42b6a76cd6fab784133e5b9f24ccda41ac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c879ddb4c5aeed224102480109e246dd86d190adf868d380a62c3b30a735e434eddd7175d4b0912a54117ef7bc368df7023100d038c9c45aab5bac3edfe22deaba04056a722c10bcd524d1312a393185a8d67757619240134ebb8686b9d69d56c926be0302047c435bb500673065023073ff0d0fecbea96ea310da07d4cbcf797763f02ed7607a0ce3838c89e92daf3659315f8ffa47bcc00d5a40224004290e023100b2cae4be7d0fdcdd71a71cef9f5331a56bb9ac7ce9e0cea64d456efcd260229b776e603a3d0cd8e9e0940cb2f9fd2c120302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310087ab7cc62bdfa340112ecee8436df756ad04bcdcd8c8b0d4d0997772ce1f90490645f972aa5caddd73e7c0eae8087500023068dc351bd330a9dd46e3d0abb3f06fcf97ac27fa28e50917dc9e41033614a293083f504f1ece89e4da139aabcc52f9550302047c435bb5006630640230056a27d64dbda195c76285c591a4bbc969247bd800ec65d088578a3f5e795c3d27fae3fe77a4bd749a070264f73d937f0230221c35c0cc6e935db7ecd8f1dcd299f43197cde5421e743883d69706b49849cff4d42a51f9aa649a4e369c45366814430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008c87de51daaea023007f630b26510b313bc56a605265834e8b59ec9d3e2ff37560ffdef3b02adf51961c7d7cd8e18e4a023100e78b1383dea4e9e31ee71bf7ffdcea436038677704f38121e44245e49c60304b347b192ae197d06ce12446f1bf3042c50302047c435bb500673065023069148aaad3570d6213dbb25159bf5926849a79e5c0ce045eb4dd357256bd02c61670c73908ef95bfc345f849d4bd1742023100de77c940a6a80c81215cf15cb1ae19b19fc83ee2b1697291ea07ebe8afd04298a493b7a02e9082807b346a3ea84cda820302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ab7807303f5d7a8a771f5e8c140dc497faf4391aa9aa67eeffc289d3c8f1f6bd8db1ef956d9fcce1fe52fa2b62bc81fe023012a10c5792d2dc73bf736fe8eab1ead73fd0e77c6284cc5e6fd1d82a34bdec4701aa4c9a702637d1f740d13ff12d25990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f63a11a462eed7bc6f138c904ce52b343bc03dde4f691899347ce73938cbab1bb9b5b98768b6c695d29bce86806501780230419fecf1fd54bc45d08d6daeae04b7b5dbac35095affd35ca466a26b9250b7f1719c34a212215c8f937900d7d4fa8c1f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a08e0f31e35f0bf408ae2b54b704fd247fe1b177e1a5681a71d72678788b33c9d07360eee4f60bdd4b77c01ad3476883023100b48cbb42a6d34654bae2f905f7f9e9fb9c2349254415f7b819e9d33ca57a512b1e409d020aa81f571e54240f86c98ee00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306dc9b768dc24d733bb316a598ee2ace0f7c9eb3405f234e8a96e96d8dc7af1d627264f3c2af3304865851f5846b1784b0231008159f848e1966ae656d5a9f741b21da04822182c920ff6ca585bd17531ca3e49a42d23b899921e9d524bfc603decfe160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305f04dec00f385a2b701558d21e1c0c847c688785ab938b8c5a92e614771c39f2456347310aa81717ae7da425fa5f5a9e023100ba623f80cd0b64ce3173a1406ea9392b456f13a3bf20705dd9a77570dc311c6839a540cb32c8ca9b262da3f4a157d74c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230607499eb79871331b58cd2760110fdc4fc9345d8e726811b65874c8381fbf6acb6991632dc89d8514d73ed597925e22102303f3703d2f7a6a979dcfebb2b571f92984fafb44cb28fb4ac38bfed4e389ab8382eaa00d4c05daf50bcf490fcc3ee35840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305bdf63a1260155330a4eda97fd4434ab54ab95975839a9c5c440cbf6a71278d2f459ca7610b15a9bb5917b82be32565602305f496d0be6e1991c27b6402b3b306c54274312b32873b435e5b70babbb4eb508861797b97a0fa26e8402b3d344b7a8d10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305f971473a04e42130b5b14ae5a9cf7bfb8a6bef6bdf585ceab8865a77e9c41c6db4ab26d7451fe6f8f7090071756a8fa0230742619158107c32f357fc4cbf9ec98b18efc264635f2c70f1f0c67839b11b605025a6f8b22794b053b748fbdebc4f29d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305d79926916af129b9bf524b8520b2d85bf61743e71113914c9880f5ab638d87f5f0daace80729a9cf899c1a77abfd3dd02307112443abf3d36ba82e7288dedfb0a04cf9d6f21e28bc71c596fac34f0aa7ce1949298f2223de6d170d7d9d2c09723ca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008ffb39d29bc22aef2a62abd8e73d5c89447c26b9f575958c6d4bd0872c9c0c53ff73d98539713376a4ffc1fdc91b330802305444f7717c8d9dc7477667600058d697dd4ff6285645aa647f6cf29007488a5da7a5d72d5784ae9c64dd564e87bd92ca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009bb6bacfe3bf0163a705263b209ec2c89968ea56ae58dfe4f99577a2cd90e6e922a5c50dd324f5bd67abed8e9f3d2d2a023018dd1fe621b29437b352f28291ea299aee5a31ddd655ea8730afb85739125da316ae6e42fcae0a5d6c4f6230da4ddb830302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023058512171037d609185b4a7cb7e62a9b8e9a8000aad5aa4b5de6fc701728f2550ed9360c2807ae290d133203571714c03023100c424798355f1cb8cfde87ac93ec104b683f02d826110f620f5865636c66a2eef99be09cc0915536483e4b8294c9b85110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303c1dc7d74497f650e964ec95dcbc2d55c4ff2fa570596194f881ea341aac31d848d8e1dc914a5f923b599708b788e103023100bc53af4ae734315789f9515c1c22cb636876980f0e0349eb88915ffd7e3b7f96e02cc3c44d69088af1bd34874e52aace0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306794f3b54fc02c0fbae0d3bb0da443a699003525ef1cf50315e77a83aa1f8430794af4ab0b69244800bca3645daa5222023100e6906fc35ead54b10499e02baa0b47f662931a69bc441939a96bc0ca0df0075648f026adc644bfbf114f16a26b3e4c470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230032883bd7d6a0a96632a1f376440270f23fc44a3d78a89f7d42de64c6dfe34394d3c3f0bf281d04e52d7328e263e8d51023100c7c5975543ae83bd9eed51ae077cfd9e7fac04377bde66de365cf828f422f3a9838cb755f8f30c2b228c9a23f6e3a0060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023012f0ed30690cf60348912a74ce24f32d743cb58a4186e89817a6787bdf60ffd07a4b7fd7f0716e63722fc71f5cbeefe0023100f96b92d64665a548fa7376d34a873cda582be12d9eb9f041a3d099fc1efcc49e884268b65a54b6f25dc8965e34bf9cc90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023035015b1a732905d7a53b1d2a071941ec5fecf12bc79c4015ae2875cceda8147d389f0d1d54a070597bd04894d951f9fc0231008008e55e266c96e5b08137bd2b824ab962df6fc5c72b8b507655c354cc5805ca6ad15c3f17c108baa45c0cd144f427590302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023049b3ad5425cc7c6732de5a1751f7764560362dcffcbf0d7795df56133981ba1a922cc75d33142f0333179aaf8eda7e26023100ffb4fa9bee5e857002599c749e7a1bf72a054f0dc4c0fea8dd8cddf7f91908818a2d90fcded27142bbe51203bd6583fd0302047c435bb50066306402302493277e3d63d4ef017c1c5848c8303eedc40177fb55065d5e37b9c8b051d66b7d0d5320b7a76220a3b889df30e16c1c02307dd12aedc00c63a6676ccf9e97c9f3eff5dfb055d3eb3334a2632a1d207ffa36d20fedbd9a96f2fca2870d9dba15faa40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d64d2cad969d8a0415df87391cd3b517c94190cfa63ac3dc6a1f8636386ac5063d8e6bd9d68560231dc5b705fb5ce96c023043c61cee69aab9c86f92c51f8463411129c709cfca15566083104ff4a35e4ca1c70fa5dad8d339fff91555eeaa8151910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f46708e727fa8789a729fa9767a918f038dd47699ca57f2f97f4f5244eef7a73e0fb35bf875ea65c4cc6d7594e51b169023100d55d61378af628dc9b9c7a33d8305fc57eab8c995351301947d4089a677b9bb0c49724426624ea18d2956908d852b2340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c097493673f38023c92e260e6f45e2bb3634e4112381c089d8b8cc979912f4a20e0343d31f6e126b418ab099b2873fbb02304c29110cbf89c46751ca6241444838384342b94cd24b1e1629931461a1c0a88400ae9a96ad5d8bdee414bab161cca0c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a590c674d47ab576fac2a5817c3b871897640a93b34a30091cc0de9383b9714f08a0d46b763c8e089a00dbd090471855023014f77c806816549da4640ef8ef7939d55e934c3c87d2f0223093eab3118e4e628d47de04710c31dd092a797af724cc7a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230589d1ac0e7e89f18e8e0dda95cbecddf948cc52350b46106c28b02e6e752373f5cf9b4afffe046026ec85e07cc3b16ee02303cbc678b5db3c941681faad234e07d4b9a05b0e5251ba7b21ebd343b8ae6700e29622f94810a793973a5932bb68514a20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310080c7e3df9efe2ecc0311d57ee08a76088f8ba7dcf4010e8b4344bfed26fd65957ea37e345292cc42d443022415c9a897023100bf464351a77f508e0a4e261c70cd691aec707124df0f0e1216598067a6efae5d4bdae7a7c215ae5cca285d2078ee13280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023076e08ca696b994a4aa35cd90386d43c6bbdf4ab9adce472d0403f0e5c65a474156195dfa06a32a02d6a2dc869e9607ac023100b62ff87223ebded69d0caf0859db02152906021192b8646ed44c2e79947f02d57259939182c8e3df858eb770cb03bc610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100820e862c4a69642debf1656b4760617795bb571d577fc3dfebec64baf0b17239f493548e116f5901f63254fb07a2d652023100ec9f4b5bdbd048e3afaf9847c8fcc3f2020115ae55488c7d028e6c873a6c3fa6f64b657e4a25ca7a0b0d60115b92ef2b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100831e7172449a28e1f9514227fe3b2a2ab336e069ca8542cc0562929bf6aa445f390a66af2900c0ab05d7756b8f1a22a9023100a57e2c0e077fbd9b90823efb352cfac8ed1c9e5e4c98dc5a0888e91c957e4b53888e721e10fff5d2a36648a106ef27e70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ac5a6fb7119b22a8c1da080d31063c3e66552194097527ed7f252a92769263d0e9067d7aeb42a7fbbbef93729f96975602301650a679fc8138f3bab7a9ae681e5ab9d62646dac1fc5f4d0f782b2bfabc7249a5fdc1ede6d6e103617cf974690aff640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303a8cfe1e7f533a0fff74bece98f57e1af285d27131abd964c33a4dab1e029e3efd8865066181c479803d11c4de1609600230700ee7d49fc04ee049d7db2c6e6678dc1be6add48a3231852b5ed6e27b73ce2078702f93a3172eeeffae9d5c8fd674b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307d2f844e5b6908d6bc4cc78d14480b7fb665021b6fa8def2a5bc5100d95b500704b6e41da324a55791660f4384438cdd023100e88db8b79dec08461d8817c28a1b62fa19a4d7cbb4a6648398a780ed3b5ac5febda220b09f34f3be6dbd919d130f5b3b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aed84cfea2cc4a63678f9ad48fc6835c2cec5af69ccec9e370c413a0af8b014c0de23805b532cee2ed096b810d2c4b95023077740cb87d3173d51ed77539a803489ccf66d7c1a34ff860290b8b0e46635d24207d88d46bbe4e26bf5bd8f25e82df2b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230240f50a66fcc44f4e13a308d248cdf6e99416a7f4976756b9b9bed2884f2df081efc1a4bb677564e24c7d265224fc273023100d38cc05b3074b82358ca7019ee238d829b72aaf736b3d01e8269f0c4c6ff9f1efbffb261717c02b0e1424514b900975d0302047c435bb50067306502303d63f6646d830fe5998226cdb1693cf912a477d3a6cdf62cc2c3d4fe18565a151eac3179ded5b4db5d50c63a9ca6aa46023100d559a432e91413b7ad9c812e9be1334e8ded1004dd66bf449f20499a7e3c518705de6100dc654ff445062e6507f53d9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b8df208915bf71e6953465afa0f8344cf117c0a6aaebf34580bcd35bc99253ceac140185d096cd3d621fb41cb27f2c71023020ce990302c766c1674c23651011067e82fd81ca52c38ba8f22e44e587346aaa21f0fd6c02dbde36512d378ad7bf52a60302047c435bb500683066023100fc849ce718ac3f3afdde4cc0f1fb9d1d6672f551ef841b3f42d463d41efbaaba6e85eaa72fd077b4060cf4e89e8da4c3023100f48fc60f14c44b561ee40349c37a281e44db28662e2346842a128ea5b5dfb145ca35b7aaad7c8927ab23bb69d5c601280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fa3cfe0a35f4ec91ed342f629bfd28329b9e4560db509c809b9396a7a0d908c20d2b28f3f3cac81317a6551f2601d33f023100b903bed491dc16c3fe7f3ca7618679f18a9fd900e10f05337ff07b50460fed77482814431f43d3748cae106d9f3b07780302047c435bb50067306502305fa681571cc2de31e2a18bebec1b8dd07aea33e5cf850629970c07ddedea321f30b13989784954e992785b6421b49345023100afd15efaa754b4dc76050f88c8c4f401670c13fe7f9215fcb881752d9af5592c02d06a79196fa8b627e7d212c7cd67240302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230046e753bac5c5da23e621ca789b99208043cbc20b279dd2cf158a58b065be2f7c20fedf2f2bf93dea5f3aad0546898a2023100a496e01391dab7ab0e88850f194ec3d09cb58dab7a7b0b49c5836005a940ad5fc27e9241f64a3091a9f963b2baf7c15d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303a27c816ce00aa73a8971b8f2b734e4a58bd699553107c3eeabdfdbb943da512ca3a87ef4d9ebe4d888e7a6775a9ebf502304f95e9aa6b9ed1d2ffa73b18df27d50bfeff20bfe0153382d6ef9fdb31cc55f8d06e1486084aa4c5e2d3e2e2d5e035900302047c435bb500673065023100fc9182456736d2cd12ab0c421a482eb3aaa989a1e02a290bb775c57ebdd96289b51904a95dce0af617350573f6a68b6702307d2e8f3adeae593ade7a8a09dead9509c82cf932c999c4e5c2a77eeed885d8014d9ec0f3581011a98f275dff124de4a70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023076d706ca8211e41be6d557944e253a3b4f3a8913c855ae4c1052a77ccec3745ce984805dc32a52e7ed72ae1d2ad82b8702310095885fa17adba5ffdebeb31cd261fc4f39edff6c8b90473f7f6d9f2c2dbdfdf08abaad10b6fecab06fb5b8963a45846b0302047c435bb500673065023100a21ec134020534312109a446f67231e4befbe281126f3259f2de79ec1feb46d459f1e121a6626d71d37386876c96c050023023ae6fd03495fb98a50d87f6140edede4d379381b63e78e4f4df5ccc2005c2eac94240c4d07c22f0def42261efe81c2a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097b90a247ce4ab2ed08543fd45d2cb294ef2823d29841db9f824649dd028d37952ebf6caa5c9c0530274c5da24dd314f023100ba432466a26410cfcfbec9aaa7d125685793f2857bd026ac6a4513fa286975dd7f9de07cba5bdc87f7762461813ce5b40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d65c57b4f022b5ece6c87342aac34b5cc16245495a837f776aed1369114517cbb1ee953f92672c10b9402ab9060d30b9023100ca743749b94da297b0a6c7d56668e952f91ec655708a351a9a854570fc202c75ddc9996efa2ea673548d94686293e7fb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c31676d534766f52486527fc4dcc82cf7e98415c00d7abe44dc938aa009cfda3256d3ab4b8559a9f75a156c23be991e6023002839b8ddcc63e80c578b1558d034cc2a41c30b4907384f10e18cdd4e8bfe07c06a3354a61355e1478d3f027c274874b0302047c435bb50066306402301e5b553e1a7d0cb99a735252aa0060bf896660d5f1dd49c5330c10408dd23aa03920f6451ee954b68b80bb69d91130ba02300dad0c8712180c6509c72c10a8f308fcd65a1172965881ee86609b6a118ede48b23bf3cfab6d08fa2424dd34f3079cab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c01dd2b400774e89fdde3ad26a63c16df53bf143881f1e84a21b7ecb2f29b96029395a8014f6156b9c6065a11cc78a2d023100fed627681f3571293b369152a5b5161fe11ef9a40dce789834d09dc1b5a8a9c11fad91efe01c182080fb1f829966a1920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304f0738fdbf1738c24279af7ef0b6cad54d3b25d0ebf6af69976b046c1cbd8f0c538f4e165eb748b27403ca127a632db8023100cb1701958fc8eb8eee66c446f75ef207624845b7bf82204d8a1f7f69b6c97076208a192f33d4f7dec6ab83bde85b79c80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305aae49542785dff6add0e2bd63989a1cd700b81e76338222ddd17c1a0464cec9b969691a85cb21819812390d600e636e023100b81dca81909bcfd22060548e940603e0317e08facc94b21d1be5e3ae7da215dd047a72b1da7addaa54fda0fee9b431450302047c435bb500683066023100e73ede28f100b93e598236d08707d4cce45a925fe8864fc855761b40a418c1b87cae4e086aa1193a55444f37cdcd49da023100a25e8ee4604627da99f5820d6a335242b76ba5369c24b9420c8f895f738feef85f7cef6fdb4c1bd758aa18cd78324be10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230237a9b84ce12c58825654d2bd0e9d20a9551b5707504568849530a498a0ac2f327ad38637435513aef6b84f49eb751cc023078d5805419882ce1884e57f4ababb2339ff902f0e529ad7684179144825a4461e2bef122a63ed9affbf9c50eac7df5210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302828019e81862a8430de92092289c133f414adbdf1ec8fe8171595c02f4fcf9f8fb2418263e5b7711fcf8c58e4eda18a023100d8145c75f3abdfe1ca35f67e5dce54b8b35e96c1c99fb25b9ed98e8332e4078d68b2c5c42783dd85aeb9d60e391984a70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100caabc2dca59e5bff094950ad34259d044c70a89632b3003d37d95507d04f2532f79e331b77ffe948f4c9095543a65f860230194566f80073304fdce73b16306a4549a9c36ef2e46f5fba3218e098e6852e45dee9141a5eab03b4675d43900220e9700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5c2db6d4ebb38158832f88f6bfa384f171a25352ad0710045802794cd903d569f56d13c356ddbbc34fe87dc43d8968c02302131b8fec6c3c4f8f4aab09629e4674ac5de70383add168154cf7ed89a4e6837895337557d976c195fc4d2c788bcae520302047c435bb500683066023100d751e21cf342f6cee7aa3f18e30a811b3c90adaf2099cbf8318026a5e93efe07c5a43695ed46d45ac55311307e29592d0231009838b34f9a68415f4de9d141704fd4421221b264ca049455fba794c4546099c10f913310769f7f6825855637711959bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100905d6cca931f19a032a7fd7d067ea6e9757258069a62ed2d087fee3d75b01c2442845f681d9b1c74d0d85b672812af010231008466a3471182114828b06810ea78d26f07e1f419f40bf06488891eb75f3a3055130aff95569dadbcf4b0d35eb4af5b760302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e0284cc39fc591b2bf703f589acda317a5978edfd6ab091480b009633407800bb5b0e457cdbaa211f998ca82cb3f76000230560fe5eac6a171eb7590a2caffb97ae274ca2669d425ea5507562f537d6070e9d0e35eed1b567a1113f7079540eee8990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f1d4cf40fea6199f1892531a89b03a37de9906e7de83721978f51ef8c4a706e4917c1dac8d2a216ec56b620d294532e4023004c35c882c05e824fa31d8d44868ea9da7a651d9989c259dc4af6b194d17a0d15076acfcc7146830e62fc656b92204e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301bd6bff3d1968091ec22562b53325baee8e5e0a83842c36719ce85e564666db20664f5ccc468f5a73232e71df8bbb018023100b8ffeed8e8dfbb919bc58c9a05861ae36e087121004a0d642b787e5550e0b447c9afa915e44329236dbf2a1c94dfe0680302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100efc562c6d0f76325307d135fccc7585ecbf1e10bd88372da0657fe66e083764946ac3a445196d755cab55a717b954605023100ff78a33b88ffb22a5ad423a00c6392fd1ba9c1943eeec5a937fe82cf3efbad05299bd14648c9e4eff03075d038576d400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b52070ecf4539db41636c72ee362726d614add698b448547add89d9b3f4fed895ceacb354661fd3454ca6bab2006affb02300f338e2076e5cc026cbeea239cd301774488ddaf950fc8773f5f48ff18b38d43b794947344bfddc2ba98c900f92919210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303ecb7d6420d2c014cd7e65f074d551a60b1966c7b6f7463bbe0e5d91b485274a704a8323b6fe471c31d13c56209fef4f023100ce567247cb3bd58bb60f55fcf2ecf06ea5a32f7a9a6bad849d48108f52e3129ebe08db3bfd2a901bd6ecbcdc0eaac44b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301485fff618b5f6a1402cdaec06e6eff53722eab6996e8808555a2905e0fe1115788f9453ccd8c1cdc7d56932244986a302304736e64bba008c5ff538a263d44d64b1bd6e23f5418cc2d91bdcfa63a1a3297c1d41d71fdb1a635c62e986895f43a4ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c756200bd725369939d993e68e55313838bbae0bb51b22b019c0341b736544dfec4b7ad036f4e3c7fab5b3590dbfc39d023012fe35b89d8e96501083d50117817186a681ef9b158134df40a7fd3e7849c0bc18ef7e8011e4ef8cc4dd6cb65ed6777a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023055e563e8209256c09c670da08961defe797f44c85954d54192736ef7cdcc2909ed17cfc615ff7efbefbe33c0c4f070fb02310083b7458a9a25d32603589efec97f4f8777dd6a7302004de8e7bf732051580aca2c046d8ea3d233141b62c65cf158f0800302047c435bb5006730650230072c7452f15777763f7df2d25104c023bfa16892ddd78dc06a84a4b2431628a96031bf90b3c3256be905287220a4e6a30231009956069fdde4fc451805867e2b3ba6a4fc1cc4d4ed0d5abb8d36b01668c5c5713307f1a5b28ed66f0803fd66f04f62fd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304a4f9908403f3b5e64d7bb5b2ebad08620593cce4817d3df057592612291283137aa066e8e859911b5c60da75daad5c202304ee2f9bf7c00fa4c1fd2f04c6c4065aa240d7989979af500c88825a6e727d5d128153d778e87787390189bb9da66f4c90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302059d58d8bd5e90d4c26ae522437580d7d809f666a5c7bbcdaad52dbb5b20571b78a6740543e3c5a3906b57304bd36b10230399823f64312b6a286cb6f57ef870e6af13eb441fabf6f357ccf324eb3cdae7dcf4a935dc5d0de3d8fc8bd8794785fcd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ab62ab9af6afa645bc7912ae63da04621a9aa96bc7f6d7ee2cdffdcb030a66688a6fa882b896dde426518ebf76b4a1a402305c20298deb556c80b2f2c6f4cf6e576ef38d5650e28a854b5ab81d74d18c14285bfff76b202cba654f8c2cb98f4bdbb00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023041459c518d1e053654095731295e54a1974da718d0729d9dd46c0a0082da539b81657375a90c8fbf4812332395c6033c023100e808979c06d34e3e256c73660c6a7efac7868699420274e1c53a34be0c02e9b3c203bca66bbec13185667b3f892153230302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310096419d92291256dfc921e851deb307a9db4fa9a63b28d6f1574c4fd9d136adc0b6312386f5fda442fac5847138c17ee202307da8b8c5b3e4999e05f5fe7548a5eef55779da5240fe3360399a48a4eed4cb7a2e9f9ffe602b53dd7737f897491cc72d0302047c435bb500683066023100805b0d9558d816b2c591f4fe86d37ee314e6dd79b6261cc3092c9a7dfd99d1135dd415d29a45cc4e929f3911736115da023100ff6a141e447ad106e3a4e59b0e943eea2d2aa77e71a43082a459ec86c838e3bed35a0f594ae350ba11570328f7dd33db0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f21fb6631f0d0452cbd68a963f713a70e158506a60f1fddb7b087418a15516061c69f36470e27b02cb08f93ad572d6b90231009e72a59b07d98c8aca17d7e8adcd3b30e328fc8b4c7e88aa6fc26e8d7ec85ab125b0394eb44a770363815b500abb09450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d6ae162a0fe822d99b131376a6537b55101293bc615438609f98b2049e58ed571dfd4332c5d56d97d67d0c4d9f96ee6a02306f20119a733f521273c4921e641780f0a3f0f815b603637b7c263a4ef6efacdc8055826b0cb00e738246fb19993d9b950302047c435bb5006730650230260cd4d471ec3618f16d08e2e5aa1e193f4affd6a9b49a4c6742e0b95a9178fe0c0cb83a102ffa78103e69a219575c21023100b9053209164c1a579b7aaaa34b3d5d07a18cfd011e41ef0fd1f18155a797e78cc8d0ed6b3f512176d88cdd05ff4765a20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300ad4cde0a923d093032ca9329912d94dbc3bc44ac26dac3938932c3959e288cff849f20ba0b95f4c01af7d3193e37fc8023010d470371d48bd4a6dafbfbf38802e370617f8c40abd307d0ce9eb852df8dac6b350854375b75c2ca8ef35deb129277e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230056bd5472172c86f2aed44059b46cd2b91090664e313f004622e97337dbb47b59e46cd5e798df026fc81934fac4fbae70230180f51bbeeb93876dcef560456276410942a9b48d5da9550b8a30f82838a47ab6ded8fc320299d94856e9c26cbc9a37a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023043aeae924ce2d7f662d33178ce6029662d7da89da4538a4042be9e310770d8156271474e04fd26f2645a9dc08ff426b0023016f79d64a4151686f6bcfaf13a928396bbc6ea174ef1e8ad54f17e6d73f081646a30574c0299cdfc26b39cf35d9dfa230302047c435bb500673065023100d1fcd4955f19489e0e18d0b24c78fae9fa5e86af0a3e8d82abe6969710f181762d235e9ed62c0513b778f4983dac0c1802304b8f8609cae66600fae1a54512b732cbc9aed93f41d52aea7d7dede89f56287f3369f01b936bc23fdf19f07ef18c14910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023042d458f949c375ee9b3a072001252d6a935372d2bee9239974c1fd65f380c3776136548c746e90ef2e685d0be126b9a102305402accb7ae699005d7e36143ccc27fad7f20f080717a55da4547d7d93f9db8e17977235dea820308aeb7208f0e5296e0302047c435bb5006830660231008210338368e044c9cbd0173aed540313cb0fb8eec9ab37bab80e40a0c46a61cc3782ad9091ad5af5fa19473a9d4ffbd202310098ed85fcf9edcfe793e1b6d320136e643dc3805300cb648b622ff9d570a1becf9bcc55246d406887e687deb134a092080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e95b81f3c3d47fa6bac76eb4c3ddb274773e37492d4c42a21c1d54562f52395df5f1f1dae6007fc804ac71395f936c6a023050e68ef2a5edff993c14b2f676e01332b8909277f350967887f307945961d21d0c57f207a8c663a609c735837289ca7c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d098b45feeb40192711d0037127a7452343f6f62adc18bd81522757a8b00b1e2be40a8529113692ac60ec2e9b11072a40231009dd35d92542c939f2c3322c5957bb9556cb6a4fb0487a6756c0fe24b1f9fa86856d45621f49d350d9b3a3668e96932650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307a87c2ec662a4bd6c263d296376a2719ce810a35a458a090d654de4bdff182fd8bc7c0565c2998eb0a3dd2a96401c15b023022b5306a0a026c8d79deb33936aea2b758f3feffee5a579cfb0528a5d317601b4d9cb662c56e27de70e7ccc3dc3857060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023011f14c6b695fded669955a018f7fd5fec5d161d849f0e56a0112acb38519647ab208c8c0d52b581211d44b88fef9e5ef023057a6fd7b048e57a37d48157923bc5a1dfa5ce91e917559554ab5595411dfc343b83c805f3aed3df87417ddbec7749bc40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305dcf09606337a5d4c8204874e770b04843849b0e02f7c140618728741f9cbe1ab39dd3aac1d3a3c401b110061f12af2802302524cfcc6f1b240bfa24cec53dd643bc8a0309caec5ed9d989770b08eef1ea846b8e576d26fc047ec99028dcc633d0e10302047c435bb50066306402301d12eaeb98c28d27c0fdeb9c23c826923de555c4867cd4bf06476cac9f5008d2aeb7338000a912ec664952807b40909202301726e320cbbb3f4b6655f9873d35b8e1e3a524f30794d3e717ad71ad4df8b677a0cf283e55d94c108f251d4e1ce7d5810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307bc1a680f7759d4719b93e45fc5401c6ec16fa232730fe8c738bf31cab5336ef3dc7423931920c339ff77114df36d3d5023001f61e686f39a2b348261e43aa60f85153753dbbd72a21de14576e25b26219d491858b5e1e4ab409aace5d18a866b9490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009da544bae7cf28a38195e7eafec4e3d3d3f772452022940e09732c37c2bf17ed32239ae1f1ef36bcdf3b72beff7facaf023100d9312e84ccc62b6256b9520a9d776c4aac21ff6ffce1d286bd6fbd417abbc77316c8f8f1fb6f57842b52ebab78e8b8a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302378b7911918792248239dc4c5944ecce5b0fde22f4a23b0977735188d18f3b6d72f073f1527daca576ed7748e4a524702310092ff8e41b00b0c59595850ca6aafeba3264cda3feb3d9c7bc5750a9f2275f6451c9407e1e5d73fdc26f3076d544c57b30302047c435bb500673065023100fbf8f5a11b591e8b2022dc95c919e7eb977f1e2b764d344f227946601c189eb2b247a228e667631511bcb44998480efa0230396328e11c47e43b83ff4abdae5f45923821f917236e0ad4a76e82a41fca8582cb79c97aa9271046c374eeef54612c230302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230738433b436b2637f0bbf82c9021cc792f8bbb5c090656df6de64d405e5329fb8ee76cbf647002f9e1cf7591df3e8997d023100be7b11e05a986725e56e3bca1944cb24b52d67daa9fbccba141b09907a72c23cb0d902db6a02d1e4058bb9cc45690bbc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303f7f5f48657f2839f97c520b27054c58e7663873f2ecdcca185bc91afd76105fac9a4c6bb7dd0f7025e61e76d636a4a10231009b47d6e5aa0bce59766b732239b46631fe926588f50e381feb43f5661ae3b2a8f63c2e6dba60399af928988d832f86d30302047c435bb500673065023100fcedc815895cc12a96a39712567106721b987c42c036ee799fd876dbf0a8c8c4b7e2774ef27810b617c2f049d5be5a9b02303e8222ef6593ac53275790848840a4e7e299b558d5e081666a24b77334e7c4a72005279e0ba761e67d0c5e56d2c667cb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023058f14b7c77e09ac86f610ce9b4607b7bc5d9567f4947a9ae48d3102738644e9e0aad91f713fe99f0413adc087597f2af0231008a77cb64c5ac3796fd65665bb3c2cecc48b94a8a4814225ec66338af83ef45b769103822770a3b2996dbe928d6c16cbd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cd794d67f2a2a2223ae82b60f07b96874ceb4e1d148c5923e9a34d7b9b0c16f2ebf380790ab4d351d1fbfc4d589e257f023014af3d6719b1c5cf79d6c1100284976a95c3a8c82192d422a67592ec15afb53ace5fad155aff886d1dfb3883588494040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023058f14b7c77e09ac86f610ce9b4607b7bc5d9567f4947a9ae48d3102738644e9e0aad91f713fe99f0413adc087597f2af0231008a77cb64c5ac3796fd65665bb3c2cecc48b94a8a4814225ec66338af83ef45b769103822770a3b2996dbe928d6c16cbd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e33bd4e6f393824cd685055b1d6115c12ed9ba00203bab24b7769cb5a8da795569ca16cbc42ef8f26fb2b1435b05fbad02302f0faac0a7946c07e90351a8a74bb64780755ce7bcb00eb149b9486e714b580a81e24cd27aa0594588bcd04b3b68a0700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dbf73b7233ece0ec7ed05d6f784f7cc270d5caf5d004a072586c4545afd45ea15db151bf5aaf33bb05bb2ac4dee1812f023100c1985c6f452df5e151108278300402a5b4b23b13979baea7e6e437badbe07cdbc428ffd648f4aa42e92b48bf714734b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310095db30868968c1d36dff73338a5719de01116ac89af937d923a428c1fee100344d51e6c048ab393c1d622d823621d1f8023100e24df6e42b1ae76505248a32b423781d86dfad03afc195f99c532c318431e7453e25c4ddfe73a441d94235787f6f824a0302047c435bb50066306402301a7a59f11afad0bb6e42866895622a2e5f2aebe0a6640fa37b50cb7c38e2ef8174c35a4809ff67780a5c3656c931342302301100a69350ab6d1ea4a8ed9f8019acc1212cb85fb3ebbb457195798a7e72bc58e7d4032b8ffdf01767f382b8e5c2b3700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ff1654491ceaf1b034b7789c93f1a0cfe94659420b60d7cd15008ad04540c8ebfa397834a5997fadc21fb9366afe5a54023100e823b30c8647ca27f673d2cfa937d8f8ac39a2c0e28e885ee229993a769b44f94932db0938ac325fe9d44fb5f503a5fb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305bef748f2d99eba00d80ca9172fe71f1d9d02338d78f48620cfbae81971deb8772e9e33c74bc0953cfbc36d3ae70ca28023100f0ad65b9bbaba4d9e0029c93d63d74d7551aa29d3c65ccefeb88b1420987f5e1c5a42f9e57023e5773efed60cd9494570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008c98a5fe753d421dda3d5813f0ba26aa467518fbb96fb4808da404d4d3db8ba336147aa173400ed4719c45a72a1e9972023100a1852a1c39de04ae55ba47f3031b55f458d4e23558d16f1fbb4226432ac09b3dea04487cf909fa78e13d4965699efa470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008c98a5fe753d421dda3d5813f0ba26aa467518fbb96fb4808da404d4d3db8ba336147aa173400ed4719c45a72a1e9972023100a1852a1c39de04ae55ba47f3031b55f458d4e23558d16f1fbb4226432ac09b3dea04487cf909fa78e13d4965699efa470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230317289f905c7ba3b5aeab6872f327f86c0430be43ab863caef7920cd4941224b0a707308633fe9de4f3d23e3d79d53f50230256bece2eefcfab54b2f35abe4fd3cca78825a00366044467bb3df4313cb65ec3091fe92b34d8bc0b0319490a1ef69eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306a05933aed585dcfd902c3c16ae224aa4d8659b2be3001eaeedafbe4bd5ad3000a2ddbcfdd81f8cb699642b31ae012df023100ffacf8142c387efe5c1bb13c93a531a4a7f1bff765774a97030bef2a5dd6b81dd7b98d0e83f831784452293b48b9a4660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ce4bca0f76a0f0051755dd81be25ba7ad059df1280144d44bd1e418880bcecee51fbb442689a55682620b3a2e4ebcca502300aa149ab9304fc9905f8e5af38944df43ce8e102827f26fd9660b6aa706dfc15262d4c08c880a6665357fa4555e33c030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301ced5526b792a38819d679c21c5a7b11eb0487d82d31fc803ce92ebe978e1e5e469f1f74696c730c33e0e70f05b251c1023100e3511d3f7ad6d68df3705f5aa60362b68d46e5cec04a05bf3436afc3ffb284f28c718edcd2afe25f345a037cf565e2490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023067ff0fa05b45ac3df7571ab67a36bc7f144737e0c0cb2a5dafaff2c4b8aacd767854758b64d760ed1e01e9b5c839a0880231009b9fb4fd76380726f9c9a478e4698d31673ff475d966799166c877b3e9aae90f0de59de2adccb9eec101208459f94c8f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300545b54620ac0a179eed5784157e0437a0fb824ed4439c9f0bb8cfbf6555b929f8d401688221265a098e6f60c7433bb40231008d86fe669fc8444873c7268376827f039c88dcd696f5b7f491d17adfd55e7acb684bf956d31de6e13b18ba757a03b7f80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305ee41a0a2ad0bda961119216103c74838271e9dd553294ba6c468746b405df814b2ad6fd37e1d4f946f75bc20347bf52023100d0daea4c50a8503ea4f8c589d3cda6d4abc6bb667af897b615016e860ebcf3cb10ca74a7e9534840aa2a556d6140dca80302047c435bb50068306602310086a51845be43dcbdf0a1c63ba52d5b2dbb4f00ce005e0c6c6ac2c49ac0fae9157503c65c95a7a43922e59d649decb7f0023100ea109d19f9114f2ae767de219c62b44d5725790dd5d21f1c221e0fccb82c7a2f83391613cb8d10eb565411911476a6640302047c435bb500673065023100f81558b02da75b2b424dd56a03fc024777910f8e14af631fb255893b06ad9f6b85f0bc9cccb119946b6d9b4a574253060230164ecaa5eddc1cd06336d3b40e3750ce8d1501a60ea55bfb1705b163799c9822b3fd10ca2b23a617b544c5843b796d000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008fd41616cb611b39ce0969afb17b0d57aa5e9ad7524ddc52ca6aaabeb5f19fe3ef979bfc28192c1d33cd7647f5d46c20023100c39358cbe686ce50cb4e61d945a6b92a22ab9305e94eb4c4e755ae29c1bbdd8eb264eac832bf530789fcb17e568634870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304b5e9dd50eec86348ea2beeb1f00c83991ee0703801c6ac259e4de22104dc9d282e0074fd97042571fffed720318e620023100c9d61dfa270b764420d1fbc223ab8a60ac3ad5c430797e3eb7b75dce36d607b89a84a8cb3c3753c5e00c8d04af873a950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a7d0750c184450679c02eb3dbe74c0aa7e1424aaf8a505fce456ea91ff9a3c85dc12cde273aa8fe226fac1ce2ed8ca9b023100acc0f7498bb82774cccd84fdeed3e1f8224b80663f46c3d7266aeb4804bc9964a0995adc63bf9b9622d72fda419377610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301bb9f9017a0e3d20a60fc960fa6dfaec38c3a9ca2d0185263258072d36721762438778845c3f9af8ec82adff8c2f15b602301ca78fff396a061657d6b216c85cc639ad3308e53090b1b05d9216aad7621e229041c75e96ba0b06e1e2db45759ddadf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023007d9e66d74a9757976c256a6c7cf520548fc6768e14d713cb29964965531da879d5382a63940d226843c9e46be4a19af023073f523c77d1f8fed8320b5f460baa142a10f6a66a0279bf881a87efcdb8f854dbd1b43a7d00dfd8135f93dbe4ff675450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023046df016fe210822a0613890945de3b2be44f251cdd660965c7348f02ebe9568b7159813183d1efbff8820f57b47825d8023024a413224aa41429479fb067f987d1e0ae5e8a5ff4d2ed245bf0174d37e6d9b516b5e4e4d8f52c735c1ed1281431f4da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302f71f4b4299ce5541451e1db8d52b86097ddb72beadb9cf04dd8a687f74dddbce96c196ae74b980abcc2059f0fbe25fa023100e85d7b1d2fede5b932aa31c2f2b022d2b52f3eab31b8ae6800876adaad14e1734bd9f9d662c04015d3fce59e6381c48e0302047c435bb50067306502302dbb4d6976add40e02cfec6dd16ffc812ba933d704f3a4fc7688f79ffc3a6331ece7ace7dea82ef0e5a80fa5004c63120231008dae5d874ba020961bba2fc7ebae32ddf9e9ac79577e51bf296d186c05f736da8e696ef226a5ee6d18552b44eb4662990302047c435bb500663064023058ff7c460bef6587593b359d3442a72a0614c8235f86e63c2c12c9813e5c0c74ab5334a7b7a922f1450d1bd09fc2214a02300ee36a011ae99b73c544211fbec567d2a37c50fad975bc4b8268ecab4e359e22f9c997b21b968a047de499ef8527cb4a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ffa342a278ef6457e57f25b40c0329d7a9d432431b0438ce52591a4dfe550d20b055c2b348459496bcf8bc5a58a0db8f023001ffe9cd4e48bcef4697491efdc412cf30e9cb975efef5665f195990b5a6d4397f37c9ce7318e6c869147fd30f7efb440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d7a9b8d83468e1130291553592ecb31b2de562332039b48292c35aa7ea80edc226f1d8c21787fcd963062634e6e8ffed02303ade69f58c2b43d3637fa475467cfc5cc3caee73d943543a96793708da5b580435266da265b4228b7f68ad4edcddbb8e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301e484f04a7f0258459025d9a6d3d186fd29e710c37efc3a83433ad8882f75ca47297403859fe3ad5f30f425ed698734e02300ec2be1695b8e11d849dad0f593d9dea970085ccbcca3650a9f81d290a2fcb8131fee06ba6f62f547b01b59d4da60d560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307ef50b45e07b1529de0ead8a5ecf0718260ef7d48972c4453018d89a8c9e69ef83558df4ed73de34bf4c0962cbeef8b3023100f58d30500c14078c9e45e5a4b973ad10d030e6d284dd9e29abc91bc418233ad2b775276cfbbcbe63c49cad681d25a4690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301ffdc0cef8e9542d096021d54a0bf2c9db8b6f6441c4e7af03fc47cc8156cd7e399af4be6eb819a1d96e1e437e14b1fa0230277701c6c3cc946dca574a4a3636dc393f05d28520799598d1113fa959f8ba0ab2de437431d03b9882dab7a9685338ad0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302b5698d4af05b3cd0e8febf1ec4e3ee86dc4bb3701a57d2be6fded7ff89111c6a2be41e14a49d7b0f42d25a196139eda023100b7ddbce89f6344f1b8e879b387a874a6b0b2cb840662371d87b686f0e328ac7b774e4e7363bc977b9319531870e58ee30302047c435bb500673065023043f4e676478e1a6f47b71bb88afe53c6506a43d445d12d58a9e3fe31448f89fa1fc3ee9e243d657d63c97b9ff25250fe023100f1f7d43baec4dcacae2e024d5a88a76f5549d4344040b3c51898b29af8908ba6111afa785ca4190c28aa01ca48c9f1b00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100da83c1a98a74fb60e076029d9ccf0dd97c7381092461f397a8ebc66daeee23f975e1e8f9683ac397898f57d4c2fb0ea7023100ea4102af923804575c2b7000b67748f0c7d47fb9ed712725f4d762ebd824b849216af336d059b7d8a2ee32b150ed5a0b0302047c435bb500673065023100acea621c654fc92f8f8f9540017720447a1fcc8921967105fa3f9d82c0068d0c1f36b2e23bf3f70e48aa3684328466ca0230634dd6799a138016dfc6f7a2186fb946251b86659b37368bdd2600fbb3b64bfbe31e5d2ba9e2d95279eadedd4a3120e80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a7c8aa84a695cd9466952f912d23ddd5b601d1097211b5d8ca1a6fc7cba8335285f8b0d07fd5c3cd030df3f957d6ec3f02303ba66a5831ed19a1a9629eca43549948f33bc1d295465f2807c9ee249be2a874680fbb0e46f5f5a3c88779e49381ed770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ca898a43add123452b48b0dd7970ea3e7c4d1fadbd1d024be08ec0fb54d465b7318e3a4dedf76efda81c11637d4b23b402310095219a2c9150a7f72a1c253512af8ad5baddbea4111c994836c0a28a236d6ce843704850ee7023edfae0591258171d3b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023047b8de307e8fb3bee9f0c945b19d8c8cd79e37b4dfd786c2dc47759812bad02231061335c727258ecdbd5111e0770cc302301026b4dc7dc1db40c1991485aee562c09e8752ead91e88e5850e647bb8536fafe04330e515d1af93edb9214e3f696e6c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c563115811decb1200692bee09fcd412a73be3bbbcfc2e351f6aa51927ffecc463a649d0d8c34c59311857638246f76c0231009668ce1609784a830f685b4e70277845447d476997c9d48bdbd1260c384fd8a2a6c20839c388446213a3e956c3077bce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023014c2d8d89c44df89b5f428d4119a2e39df66237eb4a7c29fd62b20a199f7f5382079696a3dc1dd084f53947a6401f0940231008bd47c20d66f01f685f91686dd15ab49d3312bbafbae9885950d8848db7e3c764cb3b99fade327303f09a2e05ec2c8140302047c435bb500683066023100ebde866fabe89885e508c1a1eae82255575b86f0ed2f8a07f0e6fc840151a315b3635713ef45a1ee37de5fbbb033193a023100ad31eea8881a7b807d07b861b522a8580a1bbc775c24a4d555dcaf898aa097f1bcbb5ad35916b16339ef2f30549196830302047c435bb500673065023100ab546b0398e0b198304b4ff37fd767575a7191e1cee6aa22ae8bb791d71dc5a26251d2335acf0b349775c188d6d4a93202303621b1e29f11d7523d6ab6940f587ccfc45bd5ea12ec837607c2608e464919680781aa032ce7b2e175bf41485db28c250302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307199656afaee7106050a9d365062ba63adc2383cb5965a7f40e3796a07f1c16ae933a2e1bfb6f27050b1d7ff09e3dfdd023062f05b7c5e6f90e5b616f7b275e63815aff48e82224009141f0f7cadb2005708f494c9ba08a369783770ef420ea0dc7c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a2e158d379546cae518e293e21afb51c5a80c564f2f8c9be74869f1dc0cbf66fdd6e1346041be22edf5a40b5f5a1fa410231009efb27d6bfa85afa459e59d2eac1f8aacdc7959177baf3e6580b18dfe615e49578e55c3e1da0629fa1dda8da2bc14ee40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302286540a8bf6d0bde9d235a9d702449f45538eca7c39f8c4e0cf75145df6418dda37c3ae3b005876e183f3946b36d401023100b63ef74faa822f4ca4a1a44911d9a7c2ac7675c1fbbc7e74ea276865b76336e690073df412437b7334484234df8db00f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303fbb901a89fecdc6e31f3fcc8722a956b7955fa0c63472e0776ad2ab29a98d74427c69503775c1218bffb5106b78f58802302bb608cd5d083203ed4bf687b5fb2047d2df02740753459f9bddf2bfe375da059e4cc4b2701e272f1a8f69de27603ebb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230053f6ab635d7c4a373faca3f84880b37b849dc47ed9f369d699eacbf8c51f8f672298b905289ee50aa7d17185191d3e3023056bef138aed0ef0b5261afd1e88031188ed717b0b1fcca58ea8fd96b95464b8ae8791af7cd8677db117da8e1a2952e920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f0b6d32ed1ebde3060505b486fde5bf0dd93466ceec55f213049a724ee89d8b8654dae966ed2ba7bf6ec2e7b7278d580023100930266d62c2b71d85933f6a2376955e5f36c8a5a7acf3a0450aae635aad75b75966966c673092191d9deb86de54310ac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023010b5b47ca8a031d741e2973b5c8a76041da47b103575c01dbffbe208747a108305b6cff179ee399a31c373703b341ad5023100e8090e3358f318b3fc4412ac1c0aa622d51d56057fc8eceb86280e61e8b52f72ca84f3a1af8523cd3ceefb5432ea3b450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300a66db2a89ccd76b1d2329ee886fb741abc9b38e69e86efa2b0df7870b0db0743932902dd0d93679a37cea5cead69477023100ece91de1f9afbab5c492eab56f0c86d83202792e66e2b6038bb0bb18d2a2330cdca57f0a710b84a7ef3df8905474531e0302047c435bb500683066023100c99481584859d64785d779eadfa313e858ee015b13089de7785f0631542d7d7a8a1c4565b77025869369c5bdaf0d3f66023100a20376f32da5a7dc1bd85173473ed7146a470c09d3d82015d83ed24d24504149d4b701eaab8e968cfcdc0ad8c33349c00302047c435bb500663064023010dd19fed17bf468cad41bf901588625fabfb05677c278027022b6740713e42b5c507ee983c7c0eaaea6ee9578ce17d302306f3a6c040139fc14af98141712bf3cd4943517f12836fe218d0bf343b38c0b1194312367381211e4a5d0cd1836e78c1c0302047c435bb50067306502304bd395b3d17f4c680cae5617993272631bf0a37bfb242defffc37dc2e4c52dd908951954de3d84ca9be25d1df3ae5ed6023100c53eb413599f2c993b6e53983ce1f0708078f839a7e6f71cc0befc963c1ecf3ac89c16d556bac463f07af4ef14bbb3ce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d56a353410c8f8c9e0aa4dd38c7973af59bb90a22fe5b46d67ed6390cdd3d063c7dcfde3e010782fa0b6a95ce1f94acc023100a3dfcc6bf02fb251df9733870606f60c458b5cd05c6d1ed9acbbdda5407a424882e52c5fa501c2dd2cbc76f8b2c6beb10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e8f808ea7c92a854fccba52c20a26a123b23633f2972718949fd61ebd35012a49772195d9f41819d45bd220f82468abc023100a2776b246ffa773fd54e845de4fe77cad7af1ab517201abba3a62cea4b62142df1658e4e13ce90e45d02e8c576111b380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023073a7eea87497622190a99fd2ab2ac4e9f2b590a9c9de60adfec62cb9ae13504d33880692622064854f3a280a04ac5f0f023003d1d736d4b68428ad77f24554954005951b0308621823ef0a50bf2fe9d23012eaebffa1df21dedf38429fe70c8b23060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023011de52d587994ce3d3c4ee4c455aaf6e190db48233f8d07fd0fee5d781590f28fde4fe346b89ba2f7bacb730e138e738023100a85ffe8d869a81bf919664368c6fe93ce373b3af9cd234e6cc8423615faeaff7c5bc719f4afd6f2d938a656e0be43a370302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305de35f6973dbc3ee860cf6075f8b8343545cc6f6c2b9e2448bcf56923e6c8ec8e26aec61b339a1919bf061a38e2dcdf002300532e9f06b3c567d3f930aeea29819a7d51bf8333068ca174a67fa69e58df5f7e1a5eb4058acf9779b57190275e8432c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c9725a1bdf2e4c9f9749b79743bd1f47816fbaed29fa0025e99bd8fef355ff5ead3d2b33f669251c54bb8eb272aba8dc0231009c24ccad3669657bce4a173cf317969739697550fe9cedc33ef5b6b08bce8341e40ca8a88108d3941c8ecfbde20117bd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d3060f43c83d67c99335093b102bd1d31ca9cfe3e82a2279ea36289d5623e857e54053375cc8f2aa22181a5ab690f13702304789dfd822aed7bde6be80d7b0a24e2f83af18801900cc59d600db25a81a4585efb53eeac397c6e6c13133541b1c30010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230238a30fa31804f6e8d1b7b907275d51d2e71b0c863aae39f9d2f53241fa6be7d979afbfa87172a76d3deb5e260916a97023100ba1e820267db378ac9baffc25f2c71d3090b68d5c71f58468a72a8bfc249a2709d32815e9b7d9bb248aab40da2d456b50302047c435bb500673065023100d67249f94e36425ebdc0c25796ce7283f33f1a82e06f4a9bd6782c209f338a8ebbd83362517f8df2a447edde58067e7b02301e84003db55156110c3e0ed1b45eb43caf148228e9577caa3f0e1ca6e1771b43269472f55e3ca8ee7f9b5fde05db247a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230581d81319da043d0e5cc396363a0faaee3a6d206c2d5e01d99a2f4bb2b83ac36bb45101e0d421959490039ac2fd2970502301dbe727425371c1f16c01cf1f45d21f9d97794a9408476aad0630a91e267026869f7bb16993d8613528f1c3a4e9f3e180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023070258ad55e0f940000d3b8fa62b1dc74b8c9f063da472072f8bc8f77181cbe6e34e7c41b686f966861b15f510b529e4902303116b70bd3aed39bb96f2b64dc6785b36c0e5703f59e77702a83442a1f4d1c772e1eba91b82c30f61e538021d80086b60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230674a441bfc5ec93da5c4cda86dbd5fdf4d885c7c482d3ae1c5d3b29b8f9c4ab0fc2d072b10d35b75d92e7dfd5001103a02306b57d49af5ff1fbfe2ce3d6cecc51a587a134e6a93c61ee53f0a7e3446e02ff16d72f718487d62967b37f4717f7448dc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301cdacc776a73ac0a62530eebca932c42e5644ddefb1b6101c98b07f97d26e447bae035a38036ee57e5b73206d2895300023100d1180031650f6acb7cb3ef88dda7cb25a8da0ccdef61ea449466262db2994b783582324438e554add6aa3f2d459819780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023036da16412a03a234c1cbfb6936920c508fa1571ce8acae88267c5709895adb7ef2c11dd9410e129a943cb59effd75e8c023100dc4d89f1872c5e3d952595f08daecdbe9093ccea3dcce6275d30ce3947958477e09a0f5fb76aee7f32b1646a70657e5f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310080a24778faf8013b31dc5eb9f007af2b7f6093232dd8c33c64dd5d50a6184372ab4fca591e248288041a7e3e62fc2feb023100aac85fc87b8edadf20d29f2fe4f034de08f15255f38758b8ee485f27ed24a98e190e0eac10255151c381a982aac73bec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100912a6920c330c5690aa8f121f8014ec532de13c255edf0f76e0d36e06f11e93ec63057ead4fabcf5fb7a170e2f6e9d0d0231009d739d9c79b8f48af32a5c339bdaee86f20cdb48ba97d986dd3363c759c7fce83cd5dce206f62238150a112f2c0be1a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230292665f1f63afd809333f3260ee3e4fe13409082241302ceb8457bc5310be01377c4a52b54d6585ed56e9296927520c8023100ff00f16b0d175c1e41051a6159566250b549f149530e00d14fc2a0e0144e03eb4cf18e40a03239f4d8f0cf43d5b666540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230616b079492a0da99060ca4e5ae0c70417afaecbcbaec9e6d41482e324a1b017e1caf192c9dd6f62f55c595c663497b4f023100dcfb8a6976cddacacfbc86a4134acdd62b40c83f0233e565517c81e95c0733fe9a7303a68bf2a00b4d27544faf4c2a6e0302047c435bb500683066023100a0337eba3e396e6177bfcc477158c489dbda73a89c0fe0a79202114d3af552dbcea7ef6da03dc53d9db7c3f2103dbef7023100b587baf5f8ae3cd426988ad7b20b4dc9100cc1aa923dbac7155c436b210007ed1a7da5245931d2b3239ee72bcd9b5a0c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f9a184a80ae2e841393d67da09fbe64b9a78754792740b591a61544c018cd322e1365963fba779a2ed44afaef8ae1ce9023100cfd32b62b419fd92b63eba644471f02f59ebe34a814a7ab3cb2ef7292976a9900262fb81daa1e9891611aa5710a5f32f0302047c435bb500673065023100e1a674c92b14dd72e8a85dfecd356e950efd6f2e0dac54adcee12d15235c45f33884746ce0c30b59b9930361df3e311d023024ee8655fa13e2fa3ba38e9b68b68eb46e6b6f81021ab83776681d4176f898deccd038ee5ba7de876599f9be099fdd370302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230571430b3dfdc69cdd5e40651b8e3ccfea004ac584cb4deb9d6964b510949c7c42110909924cb73b26ad825a8c588467d023100ef188c9146f7ae782fde62ec6c60cfe10d85d20071cfe572a31201b303797333a39d91c23c03164ab666b14c51f230fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dee9f00a634d194eac41acea9b0ffc6cfd15b289aecf87004fed7696855bf82501a787fdad51165cd461484a51508060023100acf53c7123d48e0869bc275c90733eabdf399e224239077cb5dd97369bb30c8033585a01ea9bb83054dc5d7d3a2b6c720302047c435bb500673065023100d64aa9462abe3f3aa8698201c95b3fb9755d41072077455cf1a9d116eabf1822c87a987e949ecfa93b165a95fd7fe94c02301d0b85b5413d8de231ed2e8c66297ecd15251001165057a0df6e369d5e7cad8e7e7b3e4b45d5c6675e9140b2732c614f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f295e5bd18af17a33e3823c0a2810eeec8fdaaf71b1c9c03e43742f577f544b8fc6a351b623575838876d088cd74a2fb023100c7f898f7358afdf0d72e7d6aca81484b458ef3e31cfd327a4d1a4b27cc09b10a5db77ec9d92c792e36bc1d1f251da9710302047c435bb50066306402302a63a2c23ff4173544ef8eabed6034e6f090d28d1d32da8fa858ef75b34cc4ae50a4a94a88884bd69d798a474f4c307102306346d073d40a613c2e86a1bd858867f7b41471ab8a05ba897de6d0089d4a0226fc9fd0de653d10ff9556b85e520f49f90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303ffa4256693bfcb95096cbf07fd642b928c968e4d140153c085c5f95a0b24219fb192b9d0d20cb12842b5b751d8b6a9e023100c63f0119ed88fd998ac3c965bcd718d7dd35687b3bf08ceef750161c443cdf292d855e55ad15a4ac1dfb04c00a8a8fda0302047c435bb50066306402301258cd32d91577190bdd2763b8ca98390efa822eb02c54c1479de33cc0a856b28f6cf184bcbb52e8017b7575557f6f7c0230428f316836330b4797ac693b60777b3324de6fce14f9e95e686b1ce2ada53a404a8cdebe8ebe8bccbcf570a4e4c1c6fa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230537376ef16dd5feef59cd4935c37f26cbbc69838349c314f39ba3bb87111855daeb33949a9dd8ce2921f249958bf9ada023100f7d3f9c34bdad8ed5a29bae0a5284db829c5f409bad502ec3cf2f14ae5b936f863a6522566745d164f8b3f4d2e4d8ce70302047c435bb500683066023100a307553bbea5fc7efb0d6b949b4c5bf3cb8a55dc42d030d8ce6c206422430949adee2003be337e0f05312242c05d47b502310099dec6da9a8feddb3dc652dc477a62a0d5ec2280d430312200386393ce429415573dc352daa800afde5ba17f5b71028f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230216625274ecb52b3b54e695e075ef0a59c6ccb0f4c7175d0c97d51ef52d2c71fca130891fa20f2dbd3b3e353f7cf4a9602302d19c879be03ccd72aa69129df6f58b47ce63f56e5f9a8ead0929050524e6c86d423f16837620fc20e85ccb1ed81187f0302047c435bb50067306502300aaaa3d38b7be467528cc4672498f2e1d509cc09bb8eacc1408d49cf2979b8e87f9880a94d3638b6b2d4b9a26c11f079023100c33ac3c6b124d826f9eafdc3eabb635da55a34dbb8ad6ba5828457123a3c480b805a9840317b4a966cde678d77b464fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f7b2ac1a3bb45f4446dde045a63ba51666ac73bd1ab702c302dda29ed0411fbfab29095a48f28498924ee055cffcefd20230440cd61477b084b6f6755c9318f903e1198df1122ed3dc358f33ec6c015dc5a4d202be4b4050cb02201aafc60c5abe5e0302047c435bb500683066023100c62494947f9ea0495c8116e5355e60bbb1544feafa1ef15271740ff71ff0f540787c4f4111f04abce06e54e462f18487023100c259d13b35ce4a1d6349621c2e46e69b1680e9935f4d85871018d323b29ba233de11bee384e08c046376890a05b31bbb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023001fa05e7a8a4b9a89e0ea4952a3f43f5505611bba732f189e6fcbbcfd6c3a3c71afe75b084d368afac7e3781a68691a8023100bc27104fe6393481502702dc81b7ba68b28ecae05f373464a7ca05bc828f40200df2286190cb901d6d85d1fb4815c3940302047c435bb500673065023100c4a3f4a2fd6b3738dc724ef36dd338c192019f6a2551d1b5e51de9856626a992e13a1d709110a023e264ad9d8d6925ab023039ae4a6d849d1f52c61a49a5e0eb1502f8ca82b64ec817790bded03659482a75a85e029177b7b4cd04e836db11cbf9530302047c435bb500683066023100c6bc513589dd797e577f0a9ef9c05dfe1369840ca81215ff783c3c8b4bfedb3206dfc2eddec1ed76dea1c11b1164990d023100d3d76fca448fed4760b72fd41553da760d10a439c0b4af079143ed627411129ed0bfe6a0fbaff186fbb8caa7da9af84e0302047c435bb5006730650231008427b31e84237e71d99818a426e438c7a8fdcaca1dee5deb3a3e580a9a33f5b7f9f9b9170fbe27b8390ad2e207d5c7e0023020cde55812320cffaacf8e1f0f409be67e6fc8058e23a5e348a761e4bd827473220e1290fc5a460060539b4e2514db3b0302047c435bb500663064023018960644e89333650cae28a23cf2851ecd3ab9434ffdb0e9160843b6fc503eaac657f8f2ceb8e22e0c1da9b4f6811e51023034ee7ba8488e052ee99788acbabd1aa44e55b6cf3f934331ddb86744570409e5192ab3fa872dcf0d4761ce5bedc01b440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a7af70c4008d08effc641a5ce53eb55186d48219a011ebcf96feccbded7511c8535171e6555588178b899359b92aaa63023100d198b5cf4496a98217a1928dbe733899c9312020fdbc2e014d262d6e8f01a1297f9c76b038d42bfec5214cb200799b440302047c435bb500673065023100e5503dd2cb08545f090fbcb80874f76e49de36a5abe4c7a91e6046a07f08f882dd8c948a248e8f5f792b6da45216004f0230241856023ba4effed2656ee44322ce4007c2335f1f49b755585ec77dbc21bd657f4fb84ff5509fe7dcf48979e22785200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023039c49e678c162e5911997b2e5dbaede2292df5bc358623063c833881f480c16350344b6fc31df48a8ea042ea470d7227023100fc772431bbec92b577a7c6f861ab43da820f9e15a6c9ff2badf52e4ed40090e84a7298dcedf7e7b0a81ed0e71383e3340302047c435bb500683066023100d957bf5aaff871395f10c88eddf3d6a2041053f31129585232cb86e10183962f8baaf41c471b7f8188ca917d56df0f97023100b8e0465812cce80dc13bc6b27d5876ca6d315d5fccc0d70d67b0e11703ca840c6decf6d52ad258c1b71f56c5b6834bed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008b938144be6ef5dd052c6a17b8d44345756af0ff46d18734e5de5e548810efa606bbfc5211021227cd6b58bfe7e4f9d402306bea856bc54123e7763e1c6b22ab4a4fea0ca3afc1365c2b6ce230752a2f5db6eba7f4d63d7d60794056d57b879777ad0302047c435bb50068306602310082012c6d7baf104448704fd9ac91b797cf8329a7364f60a6578d39af512c3b0f7e2e8f6bbcc0e5488650f523573ea58f023100ad0e8a1387a2922bf6db66b4c28d1c3cc3eeec4da93c50b2b69b355dc8848870d66bd5b0ec4eb56d23c738879fb5182e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100888e1256c3413038a250a205e113ccbde76e0ac8e65033b4a315aa9d7026021ef3fb57072641dc466ed8827aeff6a83a023074724052857e8a70b78687b4362f1360c2dc251c307c43742d7c630641f13895d9ae1433bdf84286aef265451d82e55e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a77756bdc4ff7f04d1b6b1e61bb284e538f98d4faf9d2cadfc0c7d834b8c484fa94765e3560e116b496d46f973963a330230612e242fa7e33cf1b30f4263b2c91c88942bc79ad5f8943353ec498c6b63587a23ab827f51fdaf54f942a88b8c3436a40302047c435bb500653063023036c27fdf61266938be78d8c8ed899cd715d4d72d69272f4c6460f9a226d152ecffa6a3b5ff1d1d6d771bb40553039d72022f7712d589dc508cbe9d5537d5a469c9e1562759c9a2d8e939d3469cf728519800917a83eac22a4e722741abb52947d70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d304018eb04bc6fbae340ad6a17489bc340199d3081997d04c04d8dbbdba387e5f6ba34ce7c4c8dc0585ab5410a06f03023100ae737faf9324fbbe82f384743f4bb47eed86d9d776512266380d0145c9f0714ee16b8387e8967354b6a484a3e6803f4a0302047c435bb500683066023100ea3658094b4c7acf2f7b5519acda25e0038ec1e21b5b81aa28a0837c276bff6833699febb75b9ca574fa48693cdf8ea902310087200dd74eabb4f7e6e42217bb75e74f5eb9aae85ba9dcc4e3f3f835a85daae85f79c10a1e32f56edde6c2d599999ee30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d909bff8db96ea9b81d4ae4e45e1f8e3bd49a6aeb393980d007a326986e3cd6371e3014ed0fc2c8d940b16425aba2456023100a5af9804422ae830925b4cbf9e366cef7fdcb8c370666a80f95eeb09c7cbcc5ea4cb6247157ad63b01e67d6f1873f0800302047c435bb500673065023100ad9d97a47d1a5ec4d9ad35242995cc9679b9ddb32001f806ddd4ad63e7cd959bca43183177a1a7576a0f8e8a345cba050230394be49de4e7412c722912770aea49ca895ebb64182199ffe7e205824b0d47646d59d61f4d340baa78e1bb2dfc3d1b360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300b617caae78a43c7f3afb1067ea157528bc7444b8ded5700441fb007213d3aae829db102596128df06edad1370821f5f02304082a9471bd5f1299f3018fd0ae640891e42d479f9cca61f958047f2ec83dfd0c8a30a3168cd3f3a4a2d1d4bdca29e030302047c435bb500683066023100df3ecdec3911abc1c97e7069db91b5a2288db4d6ffb9469052f8eeed4c9b02e3ee00392fbeabb4e33df0c81ea241d904023100d0a060fdfe1eea87250213f904fb397c7772d0f0fc7dc79e1e1574630b8c85d8adda4dec602a054668d66ee5c5ea7a400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301441e9d66a76b1b8df78a98c1b19fd9753541315446400d02cae67aea8e983b0c360d8ded239a625261ed9664f9119bf02310094e1d55fdea09b34390f36ab2366736431cdaae23ddbf1aca0eed3fb4c6010ad742254f0b0b38cd5f9113479af918eb40302047c435bb500673065023100a96923f58d07eb235c5e208d03020ad22a3c942f05cc697481c888c457c7b026a54b203206caddbc48ef06a83967b75a02304febd88b0e221a1a2930cf25a0e2e14eb7c12a858352ac7483c57addfb6f01593a1110a40b80c4590ccf389f897a8fce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bdaa801734d9d39be0d5ccfc010ed701801557bab8bde9b89bc593771e0d51bf20dac356d9d1dd2209bebbda1bafc1a8023100c0529d49534515de2b7669d0f8d35b08234abc800b97da4b968fab788a83f8be39de7e837eebddccb99adac0ab37b1260302047c435bb500673065023100eb04e1f0e6d23bf659eb9a8008ee3a0e0259239370e6455da560a3ba3803abbf21de8e971e1d02e64b448754f51fcb9b023041a7f71ea2b6af6a280891afdf04a66a7ae0ab2599d6572f2d00f886d70656127715d02944e52f54c546a15592f9da360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ef4dcaaccda651646450f26e2a9b2afb753f6ec1b5cca7a1c894f485ae6d58e93fb9c4719099168e85d79e31ff5d4740023100ee58f91d167c4c7e2325ec4313b0411d6b700d2ab69999f23bfd565cf86d6c01da14c874c0c5f763b826a65b33aaab890302047c435bb500683066023100f1db4ed2aac39bf6bcdbe5b65ab43fd2d51eb797587ccbe1ec3bd0459a8fc1a99648df6fc6b902b4356bd84a66e7f9bb023100fd574f29f81323dfd99adff8cc5bc62dff08bfabe80e9ed1e42074793af85958892c1c279de6a88485c87cbf043909b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008ee835e34593359f541e52535166a71d68e35724fa5d1554ff2b5e4a52d444ef789a04b579a975adbbfb291c907bff6f02303b66d428167a6f5c0402462f09819d2e98ce8f9c6be34468f0276ba09617c390959dd2b5e2b0625b578fd66104ab6cfd0302047c435bb50066306402303fe17d24798c6b00412b02f0888722a9dd4c070d40bcf3fc4e4e79f4548ad55548ffc25a9c35674022892c96f20e54b1023010fcf21e7fd59ed79e2653f71372666b480bb0114d3342cd1804510e41d07e941727c5a55429c08e2890442ff839edd40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cf0c8d54a6c01266735638521d1e168a1ff0bb4e392ecd51886cfecc6142aea0cfa241f35c9af29732665147b3d0c29602302c76e8a23f71fa9b94efa748d65313d4124cc4e6ad7fb8bf88617b9d50bd15358ff8a0bf6e38bbdae9d26515c1a02dc10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a84b1505d28c4ad0bc4312948eebe049aded304eb807a6098b8a05bcaf938c93725126aaf8ad07ab077055c8e61c0f1c023100fa2e7ba7cee096fd20032a7460e85767af8e521f8fb057c003577e1147dc6ec39d48705c7119ffbdc6dd8f38e6fe38990302047c435bb500673065023100c406c71e4e4d293f52e618e9f58e221cb721fdee9cdc1c6ddb05dcb8e7bbf54df27cf754818df1a2c724b9d18cb47742023057acf5051a48d0560916436db35f29c1fdd68cbbbf470f89786b8cac990e8b9cfecace1bb5bf192795af67a8b4b9f03e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230394591ddc4c074384f9cff71cd30277e4055211984da54cdc16c06dc6a4b7bda2f9601ccedfa309dfb7b09b4a46e4a61023100e764f6dae5c2f40f0b86b4226d3a6e1513ee7f1ef69ccb97f71321317f5e6a0652452389374dc9c9a61a1764719a6c6c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fcb0e946771edb3298bc554b33ba61dc0d6518f00b47153a75d69ef6d561a1df85b9db55b7cf809aae1539216c91601e02300d7bed039846afdef8a488b9be1e6ec6cf26fda541c30bb56ff14b4a8fcd76e56e1a6309f61bbc464b091b82d508b9e80302047c435bb500673065023039fa81d27c7685e097fb25d961a766e7bcf842bfc303ff36eacc7900351f2a6aea3e28a16d6ce5bd2e6b94dfb7d72027023100d2fc110071510751d2eb122fe2674fdd94a6cbef6181acfb1933b23b76585870f7c12ee9d0984ce1e91ed9d0f9576d330302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303f39209265f01eea475ba879a7c35118b7ca9bfed6af04583a7ef11e3e56fac3bdb421f75eebad58ed43edf1546ff262023073548468cf971986cda094177db7606fe9708e1fbf7e2b80c977f1c534fed9c0639de0909fb0fd20b75d17dcc136bb8e0302047c435bb500673065023100804d78ad1143e29ee36e22b953316413b86f33efa50292c1e85a706502c35fed0682c16ef38c1fa3e2f4373ca30b17e3023049e10852d03f4e27ff18e994d936b9420399698ec7a0f579689eb8fe34f48dce39f44cd4a88ca71ee816324f24f894380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ff29de83c3421624a58e672f2372c0475696ec56ea7c3ae9c451251221ce9aee5fe9ebed5271c9f1953fd0de729e6e8f023100b7a75268c6b474a9582d858287ba447e0f4e56790a6bb515c9bda067108e476b2dbb9fa9ee7410c678d22bbcade614e10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300c1a9f9a4ee2192926e39b5a9e6683690927f4d74ae3cd9435bbdd3cc1c318964f3448afcb1874c0faff6440b7c52d7d023100d2422ce6c6910ecb92533475a974042aaa21fc3eee64418f1fe881b650eb5b36cf04fa3f2590549e214da19233515b5e0302047c435bb500673065023100a74bad13f6971b43a441518c4d9f7c02d9381553a9a20e8a6e6ebb689a5d55c5317844422bcdb47aee66d19d7436daff02300d4651bdb85d74a7a5e6cc594af0d4870c1a4de3187097e2221d9b2ba30f844ad5bec68bce58705e41187440eedd44770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305be49b4e79f474fc6d9f03723aa4d862cf48ef5e42719423e38c61276d8c3c1a7dbf2f782c98ec29631009536038d2ae02303c8cc351eccd65e6aee54b7f2ab37601d2803776e4c7db40f0931424291ef1b4d796f212d04659ae7fde5f71aab1a58f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a1d0567f68debb674e46a1dc338355a2a5c446a2932a73b82490b66c383e33c3d1bf73747fb654dc5fdc77aa0a86be05023100818872bdf22fbdeabd9f89a571bdf2f5634c76f417383d3c5cfcdb66c6a0f97280c583b4345eda349cafc9e47a8c65e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100925ee3ac1ce024e8bef1637e346e0e3e2852e10500abf3dea9e027acfc038df4b041388ec2b7a38afa7e922bbb7b81ee023100e9837a3d30b3971fac8a0c0a57dd7e44b3facc8986700ab04339be4624344805f598b09a25f0cf72109df7c64b0dc9040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301b9d8317077ffde7e41bce84dd9afa55f9ccd3c796d353dfc4792388b7a705e6a58beb1938398509c85c824ed1777141023100a0fc46dac8a966ee8cd64d8a9418b2b2c80c604430387312b61237b9fd2b33b90bb054dea1a4e3d90f72bc02179a8f990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230522b3da84228ff18ee9a7087f1c3ddb9264ec1a7400eeae05b6122ec87497767b47bc8fab78eadeafeed5aeaeddc2159023025926862eb033440ac280f139055265c73fa7135a758db6eb1034fa235a9bf81f3b30aad892b9add6141c2571709736c0302047c435bb500673065023074b5e5991a9570e29865b7a672fc054397ae214dddbe5d099480c31a187dcec2bd56526f8ded0d706b073251efd9e2af023100ce6bdb5d44d2367811bd3665552518c7844364463722d405e996dff07c9333489a9851a87547f90047eebed6fbb003b60302047c435bb50067306502303fe391edf50a9dddb39b6f03620df3a8d08c9c37e259d0b9b3d7389b8f2093ac8546bdbfd068a9796c64996690d1437402310087c785ca997379369db02131eeb1af58f766e62b981c89d2d8e504e0638a226edc9b503303bf07fee07e3efedaea385a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300c96ec8c0a63042a26b7f43419c5c55a168c0f21776779209ac67b5d68585a395cfc9e1b175041142401aae484de4f3c02305e910cd6a969b5ebeff4ea42e4664c40816a924aebf22191edc8a739d0b389236a4d804bfcc91ea84c8a4eb0f35e2e400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230018c9ae2366cb32aed1c3722594a1fce0a4989affd68481934f8c582f3d5a241f33a95e00f22f5f866784c19f9a093fa023100869a8d284b1ee977d5e053f5394b1761b618a11574184bdeefa85fe53bf52879ae92df60867d3f58bebc0fadf7f6e5420302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307d12b7a88030d96c09e3963014b9e74b34473ad47749add7095b71ab9aefcc21cd696f12361bd9a1d32b20933b0a938b023047a27b685455cabe05601e3e999e5bf2b34a52a4cfd2df1556fa4405381ea93dd2716b4f99c9d0b07884506659d0818c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304eff6b08e7b88a2bcf0dc1657e5e7963164ee39d23a1286831d5f8e25fd34d0bb3ef9c9e6654b452e3ed3475fe85b6fc023065ae67b1c736b8757fbdb4bbeefc94e4e2df3a254c8b1b573382989c15149ab4dea1fa0bb46e092cae8ffe9938ce28400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d4f7ca6f05dcebb851315e3370533ff0015ab8c9570b53f56a0832e5db5f11a3035aed84956590dc2a8d502c7c7be69a023100cc5e2e160077992c373f8d05c3779f215ef764e945fdbc4f8e624b054910e76e44d94f1732176f8e7b5115cf05f91f400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e77185e4fd86e1d2cc3dc9704a09f922a6605a67a9cd274347dd403fad1771017e349e0a5cd3b8e42b25af383caf65eb023100d823d33859555b5b6833daae333f12b30a2ed4c5f5b59468e57d94b0c7454165eb6be8b4669c00cdcc6c9c9c14c262b20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b1fc45397f98ff988e1b67299028b28e9ffa6730226610cf645dd8c8e1e25e66f855b2e207aab85584f94616551c8a98023100ffdabe331e4955d3c9fd13c84d8a5ba7f6e7671a4b34494769306471530b13ddc652d73bcfb0d7935ef6d3a4701a5f5c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230452e8a43dcc64bb33d0f584f39cad2d9190655195ea5af4f83275d9d2e620211b0f6d36a7e78472df4cc9c1f62c0db4a023100b3cfe4b79bc9bb5067a2dd64168966895d39a9aa73ec8598b3054127a3c102bfd4fe2b2363265fecc5e3b33ceb2380c10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f9c48d95a96636f21782f10f27fad8a71922b831b5f2342fca06eb44a4e21481e2dc9e7a298b5b2c0cf2c82c2139d578023100f2ce444abf6778cf8689d77215a83c14646bb9d15c95da14d186a61849b828cdc0ccdb7c17270146e44074ffd510d0da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ad39e11c2d3dcb6082c5c36f0d450bc492467ad928c47a1b0b8d30c5a39dbf9c562e1e47260d2c4570c8c8c0cadf9bd0023026c6e22ad80bb67232279cddc0e39d45c88786d32db08c62bad35fd85def0187cb2ca48b599775cc0b338e577349ddc90302047c435bb500683066023100f7323dd3d63d2e6bbf545f7e2f8ceb87e658b7ccce9664db495ce054e0a1a573edcdb0e9bddccaf397f85ebb6ada3a770231009bfdb59b434e2be16a11f71cc832300d749694b922e4b13ccbd606fedf69d1f0b4662991d521161dc0727bc2fd50c3070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009ba33c5a25d35e6d565ba825cedad1a7627cd0770a6377066b62afa48d70affe953af228f2fdb0f30654e1d86cc604cd023100950d76ec56c5fc5a9809b2def0557b5c91466145a68f5690ddc54c2ffd0f428d9bcfe791e2ddceee6c727a5a7f6059290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009c306ec611b3b091c2a473d19157764b5661b04227e6b5301fb260f1cc64d2c9965b9c9f3de9dea900227e95995d954b023079543a14ba81c5db73b1f3b18d084df1aeaa45a045bed34ee875a69a1ae75c90ddbf6410ecafb37c99935ee9bcdb4e800302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303fa725d24bcd8a149d0d0eafb543f300b3134fab03ffd63949a8d70440928e86d561450ca1e393aa5a5c23696ca1a48c0230063df38462d48c034576b11332ba1228148be3fe0f89c1512ee4194af64e91f267fe6c8bc2bc546750b4010f558ad1d40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5ee2815e6f2cc19efec9936fe5c1e1d5a534874c8b910506328982f06f1d03f0a8e8efff232fcafd2c935ddd41400b302307c8bdb77a72e2261e4c2ded070ed9d5fc29692e8f394bb83efdcdbb4875419ce424d9b98c4751b3b693abc579a08b92f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307ef24076efb6346e874b54cb83fd099ad99c38977a8423ac3bac795629445ad3bf6e4e38631400234ecf7398ac13d1d7023100fa879f3ffb992cd56ba633a64a28e0912eb8b6737f335a88256d8dadd35693075a7bd7a8b9af88d579e46f91662d0cce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097f6795408cf4426adae4522248f45ead9f8bb96f674c732b5cdd9aaebf43eb198af704c28ad42758d0820709d303012023100f3433996fb7e2fc3ad10f7541b2cc407a2a68bc99a3093f6f7f98a9674d1c8bf95a55eb43f086735d0d7f74d34e2b9480302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304a578a5514a98c56325d7367aa2ab461a49c0f5c93037e95f3b835928c5ec19dcd4589f95af52b7ad72946412348189302310081843f279e559ed92b652065f83f8be11c36eada39a12cbe1af229bc1a45c7349d10af8614e7fad76f8370099a22fadf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300f1af18832471f70bb12379911f8ed6276073af12a8091304b38a52fed3143b454121777fef9238a467b3146c65069f8023100bfc53c4d3c114ff27f8e8d5c3a9dd0b75840aeb5c137c68f42c4c8e4bca6267615ea4c1fe2d6538aaaf904d2d32355020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ac6e35c265282f00963d59c17499504d2ffb040bc0cddb483a33736ea5df9eab579947c62d0d995b201837e561a99c82023100de6ae1d83f84e5f309aa22f105746518524013002858b9ab3657c65e33bad00728555a9065cb099b9443c8d2ca8aa6660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008a4d4e87445c494d255c03f2358b692f345ff24e602c82e00d838f19d1a2f2a319c1d0136563ffbb230d56ed2f52835e02304ca1fc92656282010c071d60c6d91b273150f3b0e5fba770034a78f5465962e61c6a0958c834de9d5d7d032608a884290302047c435bb500663064023041ce94badc35e84c5cc59403781dec442c076917cfed582b8151a1dbf7574a124d5be55adc70c48d676f1464619d85d202305b20830c9cdeb58f6abfd225366cf3023ef568f46148621ca2b8c7160dc7113da2eae1299c4d61c3de1992f998f24b4b0302047c435bb5006730650230644d28f466ad8d4046afeaf6058b35878a57dcb422c7ac91989284df13e9c09ff1e89d6a70d2bc3426c8970449692827023100f07cbd56cf9f5d9884df960eb5dfdc6f0bb97523c76f24fde923e1c792d146980c7b5a9f367212f2cca5c84f1f7937330302047c435bb500663064023060e5afac91062fd6428f1f5397a7a720ca1675940a3a84e45af709cd706ac4170ca1654f51d05d7d30d67b2c393eba5b0230583cad4316c49f6db738346c731188e66718bb2d157ae37c5f7b673bd33ffc4c9594ecc83c52eb4aa84752f855ef35d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230721bb808c0ed73c88dfde9562aea7eb1f37430722036534912ef35ff1f938e8ad14c73d0f7f5d97909af524cea4ec94402306d4cf46030bdd630aa8fc8d2a73abea300d37ba851b86161e5187476c88770485a7d78c95ecd02f1f099e29b9bd29fea0302047c435bb50067306502303a9aa1dca071a79a0c24ab9670c0d18607866907bae4e8c21727e20d015affc3dfd08a74dc5073d4a871125d974c219c023100fb5b2e67c42fe17b941290395b9fe0e67b8938279d63b4c4d66be73400c1bd8ec1300ee5a84085a52c3ed268c2d67f390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ab89c86fa3987bfff29d4a58e2cb289a946dad20c8af2ec52b6d4087589284de4de02545d47937f2aaf3ab6ccc67d41602305beb709610f43f8172f75980156196e2ede2d1209d59a10f1d16997c38f9f4f3c9a093076557e4c994996b99e444d9f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e813ba4af3e9c831ef45c3c4e5a3b7a791a050c4cc764a289d1f4db38c34660e79acb1617ddce62ee1023702764bbb2c023023ddfccecbc9c6ef445af36c2773c0f22fd0be4d176084aec4a1ea97ab4790cd7bd65112513ce53eb7dd639dfa87b4a10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303427af50cda67b1f9d361aa3e92f6818a73efbeac3720426ffd9e6c0bc55db54dbb6cc09961200253a952bd0c33b99df023100a35bf46735575dfd8271b2ec3f27d8bea7f4458362263be85962d791a219f66b3bb597ec7d5b7f9e227206f62193b7a60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303f8518b8ae67a20039068752be3add4d9febcac158466fb392e95b5e88e69228c299170de26bad8583bc8e9c01c1bb66023100e22266020eb7063cbf45be2a55df7faa346b7a42f9a838abe4942650341969fcdc611dd3bb5946c9874c1dc1b20aacf70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305079a37c2bf16ff6b1e0ac19e260dfb53fe26dcebed96986f7de2d29ed06f83c77c35b4a0dbadad56f68bc160b8b9c5b023100f4af05cf11f41ec05ef2a6557a8eb27370c53a0838fce4900e03983a657b30a2add04e63901bd7512120310da07cc78f0302047c435bb500663064023007da3fe04cb2ba27abb1d36399a92acc392c17dc0179594ee485ff82f3fb995b9a4aa7ef11e1aad7ae892db9f517b15c023021cbfb74f550405c1c94b8f7f104273ba36f58e0171c5b2ddf3a964d46275f72e2bb19e8be4cc8bf123cea65359808110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ab602c5e70c3c090d7262aaf6c67dc656eeee0626b241e1df3b6191559ee2e0b81e8e5da066f4a0f4e58233e7eb02fe1023100f9ddb64e5487992db54bd711b551e4d80a609dbf79cd8c00a89b40c66188ad0d2e53d6bee5612463a2df6ae831cf54bb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023044a38e05ab33667df4291126389bfd296a8938bb339226cbc87e70ed9ba8dcbd131113f28d2e27fc5c264c83013363cb02301d62e712246970e7e607fd7dc25b960a145b578013dea31c31ff7b665838f2694bc0e75a2bbd8fd822f0d8e0295451f00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303bfe28d2bf5cdb82dd281cc4cb4323dbdc6b804d0b0ba1e5a73962a12516706ef5750b9823568f2aae9c907b9d29e389023051e05fd90203b3eadbd5ed6cc1c69fbec234bcec708ca71250adc9b34b3c61aae26f3c9ead676a8abfa67e5b264d11b50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023057bd4b211ed9a38d6bf7e1a8c7ea80bfc6af2ebafd9f3daff7dddbc7ecfc45f8cb3243f1dffd8c4d2c5f14911f657f6b02305a22d83f70b936f446c63237cb5ddf6a35379287caaa14f4c11aa9e510a85b008ae81d8203fdf8a42da0dc44fc8c65e80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306b5f839c4da1383fde1387da9a863f299aeb01f6e62e0037ccb30662d2dd674d770f9e64bf4dbbb8036c78d2fdbee1b102303bb0c9738abe04135cde17d89f0967a19a3bdfae23c47203678803f30544c14f651beb9f1030bbd595b18a6f0234d3500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230425b9fe8b6605c0825ae929478979a926d1208243d2aa248c8e88d401742c2688b3b9e6d4e6d1e2fa79199bc8a0cf41b023045c5aaa84ead5d1f853ec727865bfcfeeb36d6dd7143c116f616e4fcdade434187f5f71266589ab50198475d07cd93e50302047c435bb50067306502306fe5d2c3bbdfa7f3d120d3a6ca8d30625cd3271aaf08d51436e0d257c9954ba9cd434ead4150566a999d875f695ff86c023100a7163892f672947c2f5fae49a37a65d69d99a4ea927fa91c3a7c7e70075fb74cad630f7968323d55e37484a95f5c1fbd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230026b490455863c30c35e8aeb831b3a93c3308b26efb345c93d862b7cf99da38d207f23c9d415fb887aa107740d8863c802306af12e18f1c5638a980d1a0da731257d07f6c247351d339de1e24d129ceecee95b3367344f05b9ba51890ccc0ba704230302047c435bb500673065023100c8b0af5d8ccbcf7ff128a08109b676753dabb37fa044589a909d3a692cb3f6c5e76253cd13edbadc30b106c3e26647670230744ec9415ae89c9962ff428506df48aace5acaf97952b32270d889bbaa6e237a57590eb36482d454610051c4b4532b900302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dd11e395b6e436a4b263f4786e6128bc3ccba4ccc393ab0b1a8b3b02eb10fc8813a34f0111b771db10d48f360b2574af023100c82ed86b39a11f6baf529878412866a708aa2cde5f5f7e045950b24420e550d569205bbdc9878d722d008f164e94efeb0302047c435bb50068306602310086ddc524a581a7247f71248f405708ebea3d16f6d9d3fcc8dddaafbbd0257efdbbe154c440f17785a7e38cb3057c003c023100b0118b1ec30bd6d435e03a1e6cb4de124cbce7c10ebfd0b7fbedc394c6053ad87f8a7fd8c2c544236a029a87325992f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230195ad4d6c7c6d4ae0a8b0f5300077cc1cde68828c8567342c8e889eda182ad962c46e2359be2d662685f8139b8529f49023100b1510205598d3385cfabefead05b44b1aed343436c3982fa95401988e709b3ec8a1abb47b4d9bb4e2600a6c8b73372e80302047c435bb500673065023100ea5aedbdbd70e15f446072c743f64784746e1db88a34b7bc4c75e73bc8ed7c0d359dfbaf6ff346bea79871d59c24a83802302906ea83e07895ad30ba362759d4e1832e48750314c92a64c9da29aef6c4ae914d1f4c4525365bed078c55f8ca39471f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009ebe537de9cff3cc95da90167ea719c8869790b4e4128775aef47c0ad8b4dd6bf2e370c6962b44ad7dfe3d74b2b62e93023100a95bf7c44827dfaa9b4fed3d1ea17b1ca1e65f1d3cc2672b958a4af292a364f4881deba719943e422ad975fc06a931450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100852b7f1eec8045b5186239937401334ef289ba7295097809c039dd9c9fd38cf581443f4388363628c96ba0236f4fa540023100a579e0519715bbdc168c790312e0fbb328dbca8876ba8cfb5735df32e3620991caf2368075129e7cbd525a54e58ea8ca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a2c71b05adfe2a8112e08df88cfcd641c7ff760b71e8de0493f239ad06a28e0df64a86bf81d48c42daf7b22759994a170230064686d75b4e2896908808a5ca256056910941053746e41099b5f8861987fc4f3390a0680073c9600bffb95e10a42a5d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100edf96c64ae893ac4bc71a110595ddf8756b015ce4e50e970b7bcd1d7b242acb5c489f636bf2cbbf2f16ee90ac9e5ba3d02306b28377874985d3d0a94111c23f5d99aa1d498e88ccf310ee39be101a1743baa5d2076348f85d5fc7bc671b05d2d43fb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008b8de6c62fa5e601c96fd4a0b73afc355ff74b31bacfbc39467ebdb1bf993e23d0c97a58d9c78b3a77026ac1721485e2023100b221d80ea2c7081bf1f1cc24332c7dc2767e2c7b7366b8a8c3968bc692db1018065e86a3bdb547768852bc04452f1c090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230484846774a2304356af95dd7cf42a63c41b71935165e0eed1e0094e607d657d32dea36b2b16bfba52e8c48bde173be75023055391d9987eaa850ffbe72595c73db6129bc315ce238503d315c4b503e81f6b458b9e00f17f886efadf7fc2f8e44dc570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304db3ffaae78c01356a8b9b3ae847c5f0cc3a0e18a9a63696e4b7f76c15189b20671276501af8c4e580ae99f50d7c3fca023040fcdd3a20f69a19e7f6a392fba4595a03a0ba6d68c61ca687b0f9faa10c29e41288cd8cae34143fedb76300254ae86b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230331eabcfa06d082ebd9ad43543310823f61fa2f0705c14ffebcd2d433a46432567f1bd6370ceb9c8ebd40f4b24f86098023021585dee84a104566deed9701693a24741500ff8909d5eba74dd0964c90561c0c319c881d9be9c11a6e4c5f0025f2afa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023071560666d3ecc810ef5c09f8ef2b99dd45f6c1f529c901858f887b6335dd14dca450033c51cee2f2958bb6e098627eb602310091b744b9b5de6dcfb9f19cfad873c7adf23dc770b2ea23e399079f06c217574c5ca85043dd1d8f994998bce4062647960302047c435bb5006630640230368abed1e9367e3beaf3067c618a734bb20a0d7dd3bbe03075e938b2c6b5a574aae9b19adae96bd0b01c327cadb7673402302024b69dd9b2c256dad068f71b2029a399f11c2fe5fe055305e187f9c858ccb77338c544d1c9befa922ff503853a765b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ffbbaf530cb7a1479c50fe6fd8e0e9a7d73e3320e84308f577a54bca763c23243df1963e91602b8f5444e2e180e31fc20230402df148085318cd28fa175bca3ddd5f039530c815f4929322aa2fc35ba9eb93d99e36dcf6e57d3f7f26375329b2232a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d58f5ebcd0ff81cb6f9f89206a2bd512368afa81c5558e83bfa50f8cf37d387d91d98b6fab6c17b63533802ab7c6b2b2023007b164ba6c2610dc2073a3da2b2f0d95c132344c0f8d19a9bbb712c898359dbbca3da9a56060f5b6d7775faf5becb9de0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50065306302306194742b8b0bfec2e609ff5d5e64b4ba82e7c146c95b0741a71f2f3c611987ef0c1934f02ea0c235f1b0c99bb7758f6b022f1e91afe3360eff54bdf6abf280419a1ed79285c4afb81ccd55123ccc54ac16843850de59b4f6d9bc36a11058f312700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306cd12d3420ebb3f7ee0e1bb40feb6990f50f36c85703f17851687a0d30cada304f8fa82ce46546b6e8d2e2a92cc93c6002301db365bcd1031278317fae6cd5e657a3cc9ed6a64fe07074d7432357804fe4c6a83c1e019d3da527f9122c9471b015a10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023036156fa2569cfc70e62ca1d6f48c2c1d14476443399c046a639f0ec3840ad8105ec465e0e12d1c7b38b46499552569b9023100a8bb41381dbac4960e5985bae2b0745e2bd0a44f284b259085bf338c55e502fc2441145b78eea58185030f38f75833990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230302e6eb693a06472a11fa93ff0e0cdcff2ed247b842282386b259b3137de69ae7bb911dd59b8209f7f826b8a7d500e23023100b9c9ad4031982ec2179674162a22ff5b22004c9b5ba3ec12e344f4bb8167761c785ec533d0fd7d45124ea06ad8137bd60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230543a5b7cc9009cecf84e1478e979e8666649cb198382f2b72059a21988e97f8aa9f120b8a602bde40ac431141e989ee1023100ce84b5801182d4b2b81cecb581fb76912c9bb3c05c46d313d1e1f13fc65e90fd07a59b340d093f2bd1a6239af716e6bd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023066685d22126cd01bd41bc394cc5081b3b20893763c47aef0796e0947dd6636754838dfaca92f9e3842edb2cff1fa7abc023100b9d8968fb8a56b1b1ed876d3d29b49a5c4972492278b4818970c326b0a9692ea237a89a600ff28ec7f2222a883ed4f510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305f6f21296a5baf22cbd440d54d2c7d8a2f936b926c2b2eced78b52327a337e18661950a5f27d4a800e95c71ca4eccdda023100d7ba2cd2e20d5fd0b75ad352a0366a64d56c34468a40cd6a1f2b673d22e1f3b10cd3dadfdd61f45526433d5b636ca6d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023059d550f652de58934113df6db485eaed8cdf8b3e55cc82c136b29545c77816ea3756b2c784f3d3a381497423ded05321023100a778d21efb9cc0e642698220ef53612fbbc1d20119a75c6784cfc816d062353acfabb971d07fa45eae9a1c071a476e610302047c435bb50067306502310084825de5073542cd9f5c398085d83357ef87780adb7e6e0dd425c4ec73651bab9bc5e7e1d12c90f34957d2f665df4d1802305d4a9b26d0721a409ffeccc7fa24f4613de9bdb1ef29673dfa303484bc4af50260dabfc04c755daa663ed2d97590eaea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a791fdd6c1ef1b7f19381299fa3ac7c36ef6fd9ac10ca5b0615ed94b3d4e19d153ec276bbfac4c5010f3a693bc7b55b502301a90dc57e7dcfb3f152a252667f27b54148fe3b5bc86a52b62192ba06bff7b8cdb4f65f622deb4c4fbea00437d9a15670302047c435bb500663064023026efa4d91eb1c7ac82251d8ff044cc962034c1e868fa250b4b125c31866c949fc19aaf637f9b6649af3e2b733afe1b6c02303e5cfe6865f63a08c5bcfe43380a9177422143395d738c6d40a1542bd0e30d51a756d4d6320d0432e7ee4358a1240ab90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302874ea180435209a6df4ade3636f59172e6a94552ca6913b315c5daaf613417c4ff746ce8a5bb1d39742b8317fca3577023072e7cb315b7fab33dd518931d5a4eab73f1fbaeb6be87aba3ae7a065ade7348f8a93649e5f647a9f727a964d03c170490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fa8e40ec46e5c936989534eac54492958921b3739a4a510893aed69f42c5266a5fac34819be0d4d053308910c08c749a02302cb0479d19d86b230bb1f5cf0627d85d695babf975c4eb8f402683b978b0ee50c80ffdd5f01664c7973d1913879c47460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302b7c1a1d832c30b81eada82f871baa6d41862a59b28face8a8528766f64886289220de0b7bd6870dbf63c0a116b0cd610231009d1b218a72c1389e34749ff21bcc124571bd4983a6c04c4919cb868fc61622afbed5712c2c58427cab463f49adae57bd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230095137de50875979353ba7580cbfa9a8e83b8cfc4a16ff61b6cd60097ee6295201abefce43cad4036fce431de0040e2c0230614abe360340ed6d8743dba4eb7e25771d8f75397dd401f46e15558b85299e45ac1a3658d16304b1ca11bf0bcfadddc40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310080da2887e5e78b739243502092c7fae1139c5d65f809c9477f55d891cd8d1824d88595389e182918cafe379b3dd7983d02303bfd04874ff81ca53e175af867e874a7360f69c1a03eb7b9bd5165231e385d096e1ecf8e357dcd3c3f5929c8dd0040d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230670f8e72b22b76709c614004a5239b4e6dc3ad6da0d2e63c459c8f9155057fca4296a8de41bb06958b072f8c423de86502307546a14228dff1c787b1de0f3c7291820cb45b8f995579df57376377b60283b7ebfd95cad37b99ef9fdab7799dd01ec70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100982c73af1f256be97c066f5db81a2df1fa6e62b7cb73ea3e5fdb59f7fbde12ade724c69e6b0868536db1a6cb55d38603023100c4da47faf9abc3a88e564f3eaeaae26f1cf820e97a4cc570f3832ddc13a7ec9e039a0c939880f06f8d06ed9d74b552360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fa773d0364b3beaf567f8f2ae1354e71a1cf3eadb66c6cab0513585f3a96df083ac2db1759cb1d6cafe0360945ba0a12023078a2c5310909cc8cc6efbb5813e50899ecc298a2b4ab9264357f2bba6e68fe41900d44500eaad2f139738ca8a286f8f80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023005be551807aab4f867e027b0cadab358e01565aeb2c52768ff7afdeaa5f171ad80b2c930a54349002cfd7ac6f6890fb102300688c19a806915544253a450d18de8476ec307d48cc6dcf71aa55eec437fc2e5c78499284b2813f952ded9bb42853ea00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a370d685b02809c90b2f2afb251293f7d4388fbdfe4cd23f4f8289db2c743ee76d340b60cf0cf15bd5f093e9f3e49ec8023071ad838964ca50dd4a64863c5eb61f4aab4c66cbd3fa9e13294f190c5d21fe19169263d00f6af76efce8eba6884362240302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eba1d442b716ae9ffa04c0ff933f0ebcea3cfdbace6b202870aa81a9cc7e291cf309e103a900a3aae73dfd6438b7ad2f023100f09afc82bebd1c36ed93c2e961b41c2661d129e54a59fce674d68cbefc5b81401d904434dca4b352732edb232eeaf44c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230438274fcc435e57a832df832fd20f703389d784cc29696f8da14947469412137dd03ee7be8bdf4875de692741a3131d4023100c441006e568d6009118d54e71257277ada6f83e8fbc3b3760225017ec01a2ab6ad106664c330f87b48dba8212728f6ac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023035a8d9eab1246123d5dcfb6c79850e74c9b7d53e01adc9c41970cff6a9bffa3fda479bc0c390fca47d07a11925b3a468023057a2114cdd664b9ca5f76589c7682ebffab4b343f1b4328f03221e7d0303ef6ede8b86e622496613f339bb7243d9fcb00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f236a46386832540746aa18bb4edfca6bb46129e48901db9c73270ae53d6e86ef221370e1ff0f2594cbea2e53c8e65d9023100e243d743422b1693bad9eb3968d35750788ff406ce38e1812bf391abf5722a5d9525c6084c90bacd2d164dfedd3159400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023048cca30f9e96df8b2539c3300ea2caefd784a75e67fc7a1e261e70cffcd79031beed0f438b9cfaf195e205c4ee024e3c023100c92a637dcfb1faec617637deaa8698e6bda028ea79c8fdda3852ca34ffab198731bcfcf1dd6d5fa2c0a1e4b94bdbc2f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301cfd6672800ebf6413c0956b08455ad9e64295d214d13ff220c4cc4b7d3305df44854d5511916edd96f00f5ec97e59a3023100b2c63b3e9f548c4565fe91b5cdd2382655bd35907f6bd28022a617ac518ade32107506a504202306a27b28d587a1fb450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230253939c255f9a60c3613c1fd678ac227eed3593c9418446f7c2558a8d3d756c4268736d2f76a877653937fe59217184c023046656a3f7908b1d7aa349ccf62e19a62587c78ac066679173e92c580c0c044d53785fab64c045043b14bdfc2173864870302047c435bb500673065023024637afb3e1432accd44138c97a22cea7e98e3f1607cb54a56cd2abe7190e80be185822db9bfe9a0267140ef20fd2e67023100e86adecdc1d30978c9c091071e3da2e35402c429c693ec3c8a7bb3e6d68daaafc460b1dddf3a22a37efefb057c6518910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230195aa54ad7a08b6df3bc226835f5751befe9fd4a44a60db40b727343850818d5805ab59407e8631f448f64feba3681770230618394494bd7724d7674b6a731113b55139e6cb0ebd2081b0e7c35eb0d2a5d79580112b1986fc08a0ed01d508c832d6e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302138d1098fc763c2530d9f60a50370598578933393b5946b44fc8db23a5400cc9da29c2befa18ac68f0dc898bd168ff0023100bf3d7fd6c4d790066985cac3837e2e01020bef4f5d1b89f456d1712ffc7a4abb1d8a673ea7dae471443a35622a69263a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cdf760b0736603624fe151c022ffc0905f04d1e14fd94968a90c2b0e77a1b1d6a21860489e7d19b02a3416a6809f9e1f023008ada96bc014ef8f5d4eed8a90857751156e64535d149ab4ba3a0fd189ccd4a0340dd61e36b3379ebdb1a6fda9cad2630302047c435bb500673065023100a9243fffa4563cbed72b59b2fbf7047a1031bf5841f3439b776655b3bb08d4a7fadc4d60524873945406a00cc7e673940230110819f60581ca170047855c145de6a41455bd460a7488cabae5e2d84441a884bb59448f7d4c8e8f304548be6616fd1d0302047c435bb500683066023100c99505816b77eff23bc4859c38df4fa4a2575f0031a62aaf37f121414d2c928cbf6c65020ca4782fa0647437aae0bfd802310081200f88179468d1e5f390f0313b28d2b119c7d8b98e4c1247f435bf91a22be74760117e25968bdb26aef84fb65b4fa40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302b9371426f3f8c792120761d415f55c095948337ca5ecec8dc32bb77137e2dec140237ba041b6f81daa98e342d4d8ca8023100a57c74498a1a20d7239cb7c3453c7e178be554fec27e4597240187c7ea92a150b8765e6d266e640c73a6712dff260ebe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b25904b55e1db4755f334ad933464ca27568a1ff6f9a51992e9e98bd7e4c2a5e5d0470257c09789c32e03ec5d043c4c9023100ce626eb3e7fd2b0e7feb2129f29b4d2e87b2cf35c48c5205930bee8fcfca4cc38dd7eda313b72885620e53ec8be48f680302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008ebc45fa01556f406bba3752902ee01b7280b78f41b7eb277982a2400a2e0f2d8899d47ca4e1e3fc68c11f28c1ab61b7023100e284963360b659016d127964208af788bc117c162101e466b27ac88badd90cbcedc98b39b49a6727370ee0d2dfbb71120302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307c5d8f17121a05ab20db74608fff270c7b70b6cd8db2bcaf584f38fd405b29ab1c35379cf9cd0964099f221f7b56253c023100a64f4fedef7ce6225f7a04068980eae0a40ca8e32d2852e8a2a42854c5773ce7d540e70ac9a4cfbd424573aa655b3dcd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100838f84f69e62f09d2e3947151fbb5119eb6e5560f506c2aa40e0273086d535beccf3f31a9c23d931ed31fc58a2f9594e023100da0d218fed1a5b6f0254af4e6000417aef783508e30a653a723d079b2c4702f850fa75148adfea2450c2208a3b35bd930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bbc3c2eca1c451f21bc9993cde7e704b025a9b4a6cb2022e4baea88f36d979e406afdd76fc549136ccd561597329e85802302eed3431b3be5e1d58b889ec8dc091838b0c6ceda7470e56787e5e16e36b65b4dc7c69f4b5865d9eeba61f16ad71c3cd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306898b30c6de1034e906c1ff2775012fe1ceb506b834539e35f7075386eef91012769f218c46ce7af522b58c588b4bbcd02307fccd761edb718ec0bf8adf562c3c042e0d9b66a1da3b62acc34a0287bf7e2adeb4d3142f8bda8b2032f88512bedb7030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100af1d0fde1b3b1dd798be6ede4acab8c6711a7da2cc5868a5bfa79d45b41aa16add9da1dadea8b64c48779bba66090dc6023100efc943bfc85fd2def153562d2b16d3cf8df3cfa4c20a8940b0294b31057f5349bad475db06cee6242a55c338d1bf592d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b44f87c84ac9a1205f367f275493c21047d3ced0541f7484f18a65363423a795a9126494bfd03878eec4c8fc1d4ef34b023052709542afd047b9636b5b14416b69a4dd619c456deb4fa33b04bd4f1f78dc952bf3e2db770987035877bda590b39f5b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e32fb200bdd15151458ab3c4564b68df116d5d455e9aa74ea15fe3c3912e96ba92eeb7567962d4af808605aafa373281023100eff45b9fa79b23710b71db82fe829a64106953852250b3e38363ced78352ceff2640f4978d2c6d56955b0f17ce82d9570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100feaed37ace55bdb100d76db4ddf7dca7cf42ba42dd916b81e12099d22508058781f0920ec7e2094cee16c6a9ede31d540230390eb3138ff44e69beb8ce25b24af67b4b3e4c27708c1eaf5f585e141b0d3d121cac3ef5af4d83f3840facc755c41c6c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d0e17f8962da65fb364e4ff6b39eaf3e8b371564323d632d1bfd086d655d021b888e7c01f712bbbaeeffc2bacddd212c023036ef60635153b6799cd88c533968f1ac3d6629b500db5aeaa3a9a408c352e1ff5e30cea13e6d89ae729e7c3e0a2e11440302047c435bb50067306502302bd4450726aaadbcc54ad615c380fcaea160e6d09696d2ee2bee57c1afdb4626ce86d1a5d4875dcd665f380e414499e0023100f94e20971a837ef8c764b2edddb3290391b5eadd535cabb8885badddc7ec514994e5b28d3b15636e9ef9ecffcc34ec280302047c435bb50067306502304f7b3c26ab26931808d11403c636da8c4955c36ca625070e0a41eac9309a3bc3c4cd624df2f3c102463068d8c7524eb5023100f27c251a02c86329c875cee86ac199240be30a4924fb5a709efab80c6c94fcfb6d67b757e50909cf9c91b12fb1c54c250302047c435bb500683066023100ff58ace7d038596476b84ed64118b3fa0d18afec3777218c93a2833696a14e7e52af9c0f971b4698d596e35c7e1d9b4b023100e12eadc11ca5dae516e2ddd132b5eea46ec79a4d90ee923289b9b4d648617832250a8d17d46d4819852186322fcff62f0302047c435bb5006730650230161f28545bd56b3b3a13487e9e03ff905d511e4dcb28eb1f8daa8d6cf73d8017df797f89dd0ca8dd5c808104f16d80c7023100f5c57ec7da25a1bd1d3d0a302e94b0d3acf583165671b373ef96aa1ec40da46b2f6b1d6d534689fa9b56029bf3c73db90302047c435bb50066306402300c3245fb1c25d4c5062291303ad1360f0aee6e9f0870e7fdefef0ac5491d064dbac43043996c361b7714b989a6d09dc5023050db4fdf0c0b6f7f29bd9035871566537ed50b9fa4e1c219190283f7c1d02e2ec4f0795ec7cc63ae10971efb8795e5700302047c435bb5006630640230722be7a5e3181a381a426f55d7e42a7ed418faa88653e1faf0b85a2e9f26e0327dd3a230acb54d08ae00711fb65c8e090230036fdd09e750205a0c15d1ac568be96b7cc627e738653c6e700b44a8b39b7966d7cd8a2106699ddb107e5dfd365475590302047c435bb500683066023100d530defdf8e35125d4abd6b2250939cbd47c39b99b958fa8661dda887276b0eac98fc521b32f3112afaea20b4d08d690023100d72f976913e72d292022365f7457efa0c1118f8d4bbe1aebc47b60f01edbaaa188cfcf8d2f47795ae6fe073469bbad3f0302047c435bb50068306602310099e2ff7fa4b6a0323a8369f5ee3461fa2051ecd6b9f35165d747199161d1ee3e791667e6b6401eaf2bce8b08ac17e812023100dcaa9b4cbb5677771906ff942d3fd564e52e6dd4f3795f2c2b8d2d82a45d77b52bc8d796f8bb7c4cd50b3d465642f82a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023014c996d47477781aa71bceb8111f35af1d1a7c1db70c614f308f8cb16cf9b3e4d25a85b920fb56140f1208e4e2a2ff5b023100befadbaec86dd15ee4bdf128a7b5ef7bea6756d44e87318473796f5b19f6dcf08cd01ee56ba6792307c0a429b4a9879b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b620bfa8064c9482509f4e4ee310352614cdd6507dcc5964d798b76b2410a608c552de93d81cf0b35bda91668f46f76c023100a49c4db3db65f72e422812e65234afa444c65fd366925d858a728c94873912db2c3c5c85598bed5dcdad95caa652bf1f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bcb536563026838628e694d9b45b2914f612db844dafc0ed718ebfc3312b810b9e81e4797b192d082b4cc325ee60433a023100dbc186476383bf40ac31a9811d11d29e43bb768dc4a3b525ab0c2ccf4c7893a0a3e8f36775a6e6ca17e2ebb7e43a94510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023047aeb4bb7e76614e13abc060c939031a98ab4ff821a751ea553ca822c09786d41d50f88f1e702c05f11c9d11044f2908023100eda77fca23c8b5c7a2abc5c8fe8331cb092965171e2544e2ed50c5e3f15768a0fd7f48424766a817a9889d2a457386b30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303cd3c8f9bd9cce7bad69021474a93736b2af44c1e553737bd12f165722d5c6f6af7a0a0b4c86dfac7e7d650f6092d962023100c84e43725602885e0cb6e49fe6c82f0471e24d3cfddf933ee327d05296659f400ccc4093188631d93d13d0d40e175df00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230517a2a63c5cf52475fedd8a302dae75ce97b669429b704c0bb568dfb01bcf0897955b69bf02f5e6dbc8ed259c9c4430a023100f91a2631e152e5dba4f44d8e6dbe25061b865c33b9e74315cf7849049cbd2375b95620df360bba57209a93d71d563eae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310088949d0229a287ea3e1fe3d90627ada9b2b98a9956580b3b4fe713dd60d0797edba988e792ec8e6a59f2c95d31538e2a023100ab6fc4c533e61766ad42d7bca0d8d05b854675b5b61bdf2a5db9b920a6f72103a3ea1e667ff3359c868dc798a2b2e1380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302db17d9f6ba1be2dda8558ceb1e861cd02980f51efcb12f7d9f982f70c504f8bacff107e5e1dbbc59f19c3eae781254302304d8d0330281a5e5f015bbac779f01114a6cb8952a4e298c4c491b70b7a6992ccda8d0096d928c04c25c4b69c6e3581160302047c435bb500673065023062f77a554feb5998aca82766437f09e58de712d23e7a325a97ee4c138327ca3bb5e1d5645c17ade6be2a84ce8c4760c5023100c8774f4b7c0abfaa1ba930fe8d9f24dc2168da42f4c38f308cabfcd7d9d357eb6b25e002cfcd71f6f6df234c232ba0990302047c435bb500683066023100dda8826082fe6ba48509f69d191f1bdbc3adaa537bbf119825631a1f2644723d29d266cca38985f66f3ecbdbb24d4c30023100c8dd73efeef881ac1a41de2a04f96192ccb9619ad41136bd973544b9aa4c10364bb123d4911e3b41539a9669d8c8fb860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b187c5e3e9fa9dc076de9fe2a31130368a172a9aecad84cb08b8114650b5869418bdec0f2159349b7118110ee3f6aaac023100dca824e05967bf73c9ab70f4c9acadbb71d70772f78e4f5f0f3e6665f0dfd7fb1c0ad1df8635fec48eeaa5bf2bc85e760302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023034f39af7a06e17dcafa4ef52f8d349340e7ff74f04bf9991f30af247d8a0d208f8549740d14432ac184e0ec7dd77cbbc023100b4cf66092b9e3ee9df97b33d461b31dffd6a57189187467e16ae89806ecceb38e4cc9169e981ba62cee047a18e3f33cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023044af00a19599af78fe41d290954dee905284f73fed4dbf369428e8d6745e079fc1ca8dbb4b16d1dfb61746ebc327242b02307d114854eae0c23ee67d21d38726ed5e5d871137870419e67051644110fafdc1f9314bb031dfc77d15b14a8c3c30f4860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023033ebbbb5b8b87e371c6a058cf759c7be6b3e43755f3639bfcd2b863bf86c171ee8007cb030aba95420a0411e7f43386b023100f0f958beb5c2ecad5572be283a0e45feafcb91e3742ab9fec09dd390e676f44a643b5e15686dacd0ac293c2214e312f40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c44e873dd86d2a079b4397f0b2352ebd65ff0fc88cec6e104f258346a2f82cad610341cb7dfd10113fb1ac3fe6a739c0023100ebc95830df7e5cc76cb663b51057fcd04355655709f44d6931963e3f9093a05fbc2e96e42418a5534e144adff5a46b420302047c435bb500683066023100c239e413c7e83dbd7744588f6cec15ac981e4aa3284fdfac6eecf0288d6fdc2785ad57b63921bde63c4435486bd77d0f0231008ca026e25b621e5347fa25c5863161e6075d9dd833ee5243ac371463c868f84e482bbb08bd96a13036db70b1b53aebf90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230774c4457a7cbb0964761c131959e0e3a98e6deeeb281bd41a099b934a64c912c73844a011b8921f06ecc271665a7936902310096e63c6b0a69147fadce63743c4d06e942ab056369aed4530b8e01a6871e4bcf18d867a4737161e4b908f26a217f34c40302047c435bb5006630640230255817b8a9d632e10c259c6fdda21546faaeb54d54d8ba482305079568402fc4280151a9c8fedc62fac86ca5ddee7c6102307008b3582b9e157d2075986ecb3db1f7e94cb6bd56585dc13ee52d5b01328e63faf915453806cea64f576dd8d0a3684d0302047c435bb500673065023100a2ec52eef5a92ee22baf861f3459e7653cb83a757e3e2cadb436a94f04e50613ea5af7276a75339d83dccfff3cedfd5c02300b624bdc48e7be022e41cb4edb3a787b94210d4e0d0e08a000f7f8392695e9fdb864dfaf50e80d47b4d543531d1cac410302047c435bb5006730650230561c88b059060e17c9ab501ec595e3574bb5347280cca0ea727eec2aece9f3d4be9d3a6b5459352a95d0f6665270af08023100fe9ef537c1d890c1fcd81276348288328532516f7067ea5411da24b6eb014774d1f401db3ef9af8006b0aaf930637d630302047c435bb50067306502304031a43ea02557622df6ada23a33f4c0a8e3babd2cce5393f06efdba2ec2bb2a7382177becb5f1af6a0ab5e68f23487a023100de056fc62a884a6f93b3c11994e60526111f4f28ba27a2d0930837bd73213518efef37a3b6887798f8b1af71811634e70302047c435bb500663064023018b5d827aff1b03dbfe39afa4058424c43db9edf2a2a5a873ce86ed0bb868122f84419df466058e13617b4d9d6b6de3a0230709f6b2ad6f6f37bd5b7b09cf2541810fb6163db36fb2121d1e2f60c06c716e4370e64fba2d7856674c23f6b21e6468b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306c56acb45265e7a0cf6e59c27ddd1d23b691828658578b2fc86ebafc7d5030f9222998cfbbd4da98baad58954a4d22e5023100b23ce599dde75ef4f831e4174d84cd4e08a95d02bc8b0394d9c63da1d6dfefea0c55939e6e1538dd823d1f1617ead2d30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e35f18be0458a6e1a250657a8033f7a4c33cc6c941189e8d98c69a4f88aacf87f6a7eca48ae743a5ce9b35d4e78c93ed023100d535c92f7bf038fa487734ac0279355af114ed89108b722a7f7f87629e1bdf5ce375999223edbbec0b03c53384028ce10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307f64f51d298f4a95b9cf3386534bb0d8f17a0bce622acfca854a10cb018311b792a6a6317ab8a547d54f9c917d045bd6023100eddbe411b974c64519b5af3ce630dd0a31b2081ffabd6464d9c0ce033d9c00241c8e9c9def7470f77072216da6b00d550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307baa445d247ce9ea69f7b01b5631163d77896cb31c4ed4328393c52c5180b3c448e7ce9ecc0669078761450d7387114f0230476dfd9e2e1782607d64f03f68fab84247e326a1b67745e79376af91b9a40100657eca5615b80b894cde0769eac093bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e89455edfab1536050930436c0e27a6c80d64d0a3094a8313bb488176acea288674724e619a2d4f81c7d8285029fbfe20231008286dcf82e757c674c62be2a379dc14aa755469654dc8ea337b39f57a3c55c15d871c542b7dbb62a60de5a8f0cdf84c90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008d1cec2278531d1b2fe689704a1285ef23fa843745b75059eadfe31e7cde54a874377f105be5fbb7f6c49b533017d3ae023071863b54d30f2ac767ce8107b432b2e13378d7dbb55a676b7fd50ebb82efd782cd6cd73390f11b0f0948a01299ebe3100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d45a30d10bc4a5546f4539ed264116ec28e15a1dcb43242379f56fc29f2a7349cd926c06c5338dc4288abd1592a2758d0231009c7a7f7b5213a09615861e0b6fd93acfca89183c90f305f44d3e72677a5a1721d690c121e9baf9cdbeb9493a4dc413b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fcfe04f85012ab4adf8358e38f89deca9c3b2c4bea7e9fb628bb06468d284cd6d04e77f7e6e6110ec2e13fa62a3ca90e023100acd242689d287ec2fe79827dddfd76a073f9ddc91d23586ddb5be884d52923092a94316ad30e2a4481788487b4f961c40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304f2f2070356cfcc1fa18257a2121cb84dc31e73b70387352cf4cad834464cd0714b663a2d1dd20f8ffe2504c8016067502303caffce67f40ab781c7065a04ed4a36e42896c2485848ded052d4cbb1f6197754f7e4e8eaceb76c96a2de915f970a1a60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306f83b18735d5f040b668dc3eca3e356230e798aac5fe78762136e5ff0e484dba4d9979af3100e627c34a654ea603a2f002306cb53081267f2b9df76ca509ee008709351c26b483c358557d6aa692630e35b43a18a46b9bfd8d5f6db99686e70efb260302047c435bb50066306402303d84adb723954c11c1dc5bd54cbbe5cedeb527c36e54b51c720601b77ca67988f6db73690bd6a409a06c9327f4792bed023039a1c89e016a7700ce5e6d9cde779fde3cc441ea229cf4e20b91f79f07e24e49df57432e002829ee6b306aaef5a3d42c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023026694b18193ac11ae71cee3302bca4a4d1a4d892fc870cb8045a7216bf3fceb065a86a3454e4c84329c88932cd3084d202301c7ff06eec168412fc37ce7aaadee529510f7e13fd8dbdb2d679f467df51a6671261b89387c87656cb6e5ee32d59af230302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c3a996fe1989b43e1a77f12086c37673d1512aa604e906734672674157a7c2656aeb58057bb1725abd508a168eade23e02310089c1877d735275efce52c06d1fd5c8ad048ef604a4f1c08fe1cebedbc3994c3fb228fade351ed23be958c29c76df1e320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230195e9d0be9e7fefc5bca07dfabf7b3dcfef07e07c4e49de2b48e7cecf5186b47f06bc9182c659d961baddf2c0f343e7b023079b225eba5f145d63255c8c555747c2e5a1700d5562bb0ef5b473fca7c917cb483fa3e4eb82976f3609ee846b073e0b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300c192eac082dd751c0a67f3a19294dfd58e4bba2d72aad11cb03bca9f0e713e00d0168540aeb74228d52f86b0ddee7de023100cf92ea23b8fb261e465fef58fa5e68b81b8782d01d5a66a35edb3253daefaad7fa0c6e1777f74433cd6d6e85872301cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100efe4bc662ef77e20d05ae79164b94e149c9d65168e1576ff5a8655ceb15a0b1f5e87ba130a30b88cd6868ed479181795023070b5c7b65461f9ae83951f7d6ef96a801da35727dae2adb61672414109dd2912b2f126bac4b607059656d56c1f7cb3650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304eeaf8610635e94d99c3b7ca84db725fc877be0d392fab44b44f29cbef1797e630e8448a9839f33d5dd4ecb6cc6a9011023100b97d03ebd713e576908af083204ea2a4e11dcc693e774060b40825fdbddd25dc15b87944212609db21b446aafa6f4aec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301b55d6cbfc53a04e65ccdbce314af5cdb14ed6aaa4cf68b821b559f525c7bd6671d4eacdcd2a23d44bc0d785f18e31f7023100b5d38fb1b86f9be285d1d2c41b51937022b396c7712006f46c33070e7d53495f4e10c659f13fc8305d3485f449e5e7410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307a2fb0d93ff8bce418fe3ae32bd39ddadb41b3439ea05324d3cdfd53a2b92f1c55d06440823786b824ed20773ec5e4b4023100875be52c0c779d2088a7fde4da53a1a8c03f8ecbe871be5b004cc8aa4513ea7416d8a72cf7d632f520f2aebe604183b50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fc81addee1e81d73ac88387c6e4eed4be10af0a9c0f090a5f0e91c3d427d2d892a81a79cd88941248d9919cf080cab2202301b0a32367a8f5c4ee6af6a9e80bf8f466d1144a5a97916323a39f2ce3b397814e6400a1d3773a2eaff1de122c52cb22d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a9b5db3582d9bd06dba565610c5ddc47395e5994f565e16eb033d3f33974e1d658ed1eb5c89bd43293d63079b13dd6fb02303b7ed167581b1f8b670e0e3bb19832cb081141925caec4a1ecbcbc62f69121b2b0e3e733f173ea73481f72f51ef687480302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c2ea0134126c511f5639d98eefc5e5aa508879baee70947fd5608dc7b0ccc74ae4a78075bc6c37168a02096ba99fc83d023100be11d785dd1646ee3e7126da3b9a83aa9067b90f674a06ebcb0bf6c4e6a6297365ddc729a1aa38916d3f1671f76d97b70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008eb48c3ecf5ec963f95808aebeeeb3f3be634798eca11d7bc151b3acd7da5ef47b6e311f80bf35416cb02711935ec39902300ade5c1ce2a1530590fa4c424a754b433214373338efa0a5464169c27de61b73f2377d4a9156cf01614fcf384b75f5030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300852978c1061b3491a8e15fa93070eb1ad4bfae60c8442d1ea97be91c97ab17e66fabd2b724bbbf9e5ff9ba6bc7d200e02303c227461e8fbe0fc94d82e76854ea62e9db5695fceaedbc3230bad49746606daf93f98465b88b16bcb83e99f8ae276fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009ad140a094978730b2e212545ae4ef637d2bbcdd4d2897bc0ec652e00e2835ae5cfe43adf9ec1662872a08cdf11bfaf2023026cf48f8c543e695fff97424c084105a017287f5335836b29dd31816a8daff7d933d6c8293addc117909a7ce56bd53c10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305ab72fba8a8ab4c57b0d6cc13d0f0aab9877765c5b374c4ca441a78e996fbae5e9f02dd090ada2ef7f564cb39125f77c023100c48810e7add8f7fe489cbf53e9fcfd226da1f7e06d0287d018d1ed1a4aaf4c2d9350f1e39a0a153bc71c090ab7d98fcb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d119a30d102ad3739a59a3d986c5674760ed91bbc526614fb99f94b52b78920e71623f9246068be2de171ecb92f77c93023100cc0edb011fb2a0d9df3e6189e1e31def6b41181a566915f9d133ddcada3759e4d92296ea2801f8d2f854bc38f24860d00302047c435bb50066306402303892dc167af3216b03d696dca666d791d7ab837969666f0d28c68729acb53fbbe76288b20ebf42c0782ad8609216765302301d2c75aed4fdf1e6b536ac09108e212e4f10e88a21b7d0e23e8a225c437424cc6d9296ad2ff7489c966711f3dd5b6b0d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100eb9755aa2716a93b0f983f1cfa1fb15515932d926585e0058d08be777a7ed119c152a2b7022866b14814a764b5367d2d0230293e06bd4a63c494606b3153c63b6590c31a98d7c0e18081fb451ee3902b05224ecac244805303f9f8f09a34fea1e90f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008e24c7fba21b9da85c9d09188ec5040952839760ef5043ccde73178c4fe95ea01774c7144a7ef7403d53b40a3bbae7c60230449b8742cb85ec8485b451dad2f132d323267e5f93dfe767004a119cfb7cddba0042c57e19e5d65e0186663a35f379980302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304ce984c57c4f3f1b758928cb1fcf23d5a8da85b7d34a384db3180d57701f89681de71cbb2f3f11c6b6044afb2fcacc7c0230704592ac86d9565fb8ef0711b2f37a152b3f30779620ab82494a1a60b1d23d256a2157084be2e4e47bf86074bb4bdf510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230212d42f54fdf17c372bf2d861c2f12b3e9611c4229891a7b42ccae3166bd34b0c0ac3ac98b6a8bc2ea12e23924aa3ea5023009556284f01e5f8253e499afe3a2183b378bd4296548f0f7c476fe816116412d194483ba8f68d966f1eda0fffa60dca40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100951ad783e48242f5751349874b01b20b60339d6d6aa4cb19566e19ad4dcd05db9bfa2279a8e6bfa6564e6418fe686bd2023100f9e0edd3585534bccac9e25cc35d8b5b528e17edff38a648ce382b6e124e5f2b6cf10d1fa7478692a4609f9a518ceee20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301840d025ce0c8e80712cf383d5262141acb5bc5e5b52b4f568bbfb3c1056bbf7ad5a791e87f4fa8fbe622e359424d6f00231009bb38d97f71b292a47ccb59c63541ec7bc3c1742c726e58198bc675f938612ebc0a336163176b151121ce04eaa9607970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023078bd229b19cb8b3d090f9cd38ba1d35afa7add33c444d06644fbafa9b1f6f6de6a20fb57272d458689ca22288d0aaa91023100fe61f43c8ef0dd0705e1e89bb39dddfd40a7514d1a27705cf3698a593ac8b8f902a62ab12cdf91d617b7f9ce204703780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009d92a44a839992d3a27703fba7bcdb56011dd46de233c3c99698ab06795a8de76a230482543ab46ac023faf073fd9d7302305d942f330970053469f4d973f42c614049ee8708d7d365846897a48a5cf6f4cc8aa9d0128c7d05dd14471b6a0da1b6110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cf9fe7716d1f731da0fa0cb1cc3d746e2901508c32726a4833ce38cd057103a6bd5636e7245d5ddb09fda612c4f77afc02305ad21588cf4b34647a65ff5db4574809479d8205de0a1f7f027c64813aac1fb647b264879840e7c45673f6852d091b3d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301e98c987cfc83252e9b79b44eedd84a7aea7ea98ab3be055a7f99505fd411c80f885b64cdf90e59e3bd4a2ab352365e902307bd4cdefb22c905c09ae722468fc0a67cb9a52f6ba86eaeb4b9eeb0cc7e5d28847fb14f946473b07ab7b5e85129947180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d8d29577e9650f6e8380ef5b7edbfd9aebe588512f91d43758f2d5a43c8b3c0630c683e4fcced375db4967679a5fd8150230082f6cc7a32fbc4b7782b5e7c2ddc7b2bfca1e09d11fab19b13eaf171cd37ab4f09c14946b49d96eaf7783582fe6c3eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e23ee9427bbd7219d1806c59ead188962b9a54dfe6e740df85036a0da4fbc1044dbbf6f1097249f1ce76faea41a571d4023065bd2eb4752dee8e1500071593ebcf1406f709768f7479d5b31917b3b7aa66be6ad9624132f2b97b5abb8bba473104f70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023051889e8514e423feab54012db5e9a5721075d397021e5d552091801414947d2ffd7f4c4f3454af312134e362edf2ffe8023100cf63e08c423250753c2304fd2725e3d2d77b3f1e6ba6de78ba7e73ab4a35e70ebc0c275dbe76b768df7817c6c7b3e8d10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fc143fcc49740f70b0ef2ee4720ad37d33f96bdca939c156c14a39a5ceec991f5fa1ba47690f3ceb26a0eade1be401bb02310097c51a12c44479c88b878a81528b814565448a920cbb89230cfc7729b31e49df985e87c7f56d8604630e4cc5f8533dd10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b3919959587b6b657de308b13770a932363eec27b2874db3ae600d1f3e3ee21c9d909a09740bae76f63ba25d171af12602302363d96dfba5b4529f8ef5ede97fd2ed2b8ec224a3a3197794b1252dee18ab393638bf8acb21ab67eb04e40632cd9a390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d89b399d2ae7413ffac55aeaf6f9b3d1a97b6faa18cdee9e202b1b62a8732d0b4ce637b5b7c404482d7d863a574973a502302a724fe68ae30b293e5e2131823269a7d6e7e480ace2e2622b8bc083ed91e2c1e8ae7ae70653e286300ab047c1abf4870302047c435bb500663064023024f097629485a3334b40111dcb948f82373b533f7de80a78cff89f34b506becc140f6502bf4d77330e93c97889b1a1d702301e2f7bb72d0a17895deb713a72ba335dee142a7ec903924f14ffc6e2375834e3455731a4bd062d950a1ff73afcc18ebe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230231383707c0179807ef72a125f5127e90f7bea4dd42fd766968517b713e9c20b76f1ad107db8ff993c737a22ed0e22d402302b08df2d254ff1847df70f39784465fc21cd7bd117c32157d862306ed47104cc3d5bdb2525def2d205cf32d7e882f4210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023050c7de5d78add6ece4073b11d321f7fc330d198a0980febebdf0f6ef42df984f94a1ec146b2bb08b4baddde318239697023100baaa33040956c07a3021269319be4c15026438205fd570e696e08dd3e3f8a021d460a78e2347a55a0f0b87452a8841d60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302df845dae494a3d20cd98d2ed496ce5822ae61df37625471e3ea6bd2eed8c16776483ae57430681e60104e1fd48e1611023100cf79d754428675812009a495d14ea95e7df78945421adc23a61c88f6eb72be216663d0fb3434594b054624c325a44e990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009d16e6cfadacde551fbb7029e6b4a2f98d34a073f0ed9026255b386576ac481e1ac968c0ef548c4015a21b695964bc350230763f95beaeb2359b39a9598bc14969cb2960f9e048dbd91c937bc921faeefdcc6f46d377fe93002242d8ef0eb93733920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cf7141ec2716d6cfa06c7fbef2dd50d8f3ac41ca20fd15aa8e5f927730ac01f802b6a6766bba0fb322bb47de62f5d451023100c526bc8ec179483ac4f182d29e1b140c62787fb896c33400c5cca71de68fe2888dca92379a6db5c49a50cbe0ddbb4fa00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100961bed8f91cdc2ccc8da43850f2b6e643f9b4a5efa0c7a632a3012e7ef5290a9f9baad592774eeea5dc0b9df578a2076023100ae90e15fb0074c462ba79a68c7b1bbf21c6ef342c38a092af3ecb4bd8421aee2e0f85058cf3278bed881076d163143ef0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230739bdc99f657c3198170c5dd66c1d1e1a9a588fa9c5ac5aeb27fa14e8842b3baf344c3606903da40bfca19df034594160230744f4c6a4bb94b000ad59ab69a445a97d05bc12933ad263a9500c30961ee66145ff92d0de30cd31a6f259ab94b783cda0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ac089b4080036380c6374f9f3fde531154e50a006632ef0d8fe63394128ac9254e098d9499839d32d06901337dbb942d023100eaa184ebcc78cb106f5c9b0e985e305a987b17253b3bedcf6b99c0176dbc0bdc589cf054fe8c838c9994ad05b08281990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f4fa18368577ab37f242d41823996f83a5609e883ec4d3d95e1f212dd9f2e6501df52fe93cb7fe7fc40b35627795305b023100e89bf6f305390dd8d047404e2bdb695cf2b2a2d8d3d0677774c634554b97da204daddb3dfff6e5990e2ea250f5af2c6f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023076af79606d16172023c378e5d5c4ba4dff0e8288b5fa541e5b1afc499fd7de889546d9cc0de3b16bd480a0cd49ab87c0023100fed3f7cba8b8b5c76a2357a069c924b866001a293c3c84e72a6b0dbf360887580af0de1e2d7a50d8923dc5252d8b7fa30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304dc6d6e36808e108b654ed02bd86657a56d61716bd130de04ad8e6fc17f54195a6a7872c15289158e828fcd191b314d2023100e0ae85181f37f2d0985541052dd1ba2f3235308bd78779754413b6173ce3d3f8be4560b45996ccdf4fcbb7bc5ae8e3b60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ce6a56497165c94d55da8edf3a16d614e8091a1fc8bab22946a64e244a1cc2b8a76e5e031f2acac14c4d32ad86f4ca8902300ef2db00c506a1f6692cbd06c3cdad419687e7ecfa724e7dff9e45e215f85f59349a745d53a98935fb941da1dab400da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023064c37df5b50a8681b81036ee44ccf63a55d5efb204b4317020ce1d5a9c09fdf7e3fef55dd4a9898d089d483a3e08226b023050d012ea0b942e0a4fed8d366ca551dffa37cd5476a6b7aa91349f9ea8b7851ffc68e5204303b19e0690091a130726d90302047c435bb500663064023036e41dd84094def265d797568b5a455eeb8700631e86d7c8e16ce36104ef7f9fee051925bc0bdea82d77201a58f970de0230314e977a1850ae17efc35efdcfe4c728deb9c115b61ad64f81c4a1158b75622fcfb1f5b8a022399d335da9509d2e456c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301ff88402049c924600d6f18f451e863a0f4f917f2a7717b0008b936a30bb1f0b16b6881ef120da206e325941d08917cc023100bc18a2d75cf7aede94c0dc5f61384c111696f15114e5f568a326f2fdfb03e502e6f3f1f08a3af0d30b0eecb005c252590302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023075ee99bb8bc0f4963b137703c99f5a8c42b30cc42ed6cf1d21add09264a9fde2d9c8563c4774118c2aabe5a3b610c4e4023072322f7924640cdcd7fde0969a546bfc9599b3beb716a6e76d94153de544cb84e9687431ea0dc1fa2e86560fec1b40ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d6eeb8e392291422c6d4f5248ecdb201ddf192abbf18065a718fb9024a10cec22bf3e6036f2082a8c90c24142d9dc244023028a0bed000169f92689cdc689f1e2c6c8b44f2c559a8456171d05b2789b74ba8c41463159eb3b81cf275dfc1a35f4fae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d1339011cab3c9fdbc2dcf81d39d7dc4a7dba244d00679429995d2d33c863b34a7194ef938b4fbd9db84a3c7779ca05c0230063a1412a5669968d01615145606a5dea46ea3f0ebddb16e997735f31192bd5458cf27f8c4b037e8d5165410a3c474c00302047c435bb500683066023100e9ed80f8991d22bd74a922719c15850e7dce95dfdf1c62cc48a41883fc320c1a5a54bfbda92e74d42400395ee6ad007302310082d691bd6f23c9ff4a210e37d455934b15a91827d363356f0a047a8e3d89b70c87f9f8db6046413470399861fb73bd110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023077b137e0ff9476dbe6e066248d267aed4697c5a288c1eb535bc33a1732a700e25444527bc138d641b10ecc16a6170b0c023052bb410a0048db3e6df2faded9c21c4224e5d7e07d694147192ab2c7555ee61d961e7faba4f14c6c96a0673438991dde0302047c435bb50066306402306174bc6fbd27cb74d48cb008d56e8978ee2b94bfb36520f597e845f8c29a02f75937945827f5a965f672a4d24205ff8602306f2b921697aaf379ea53a7edee9177e6761fdfd89c8e13fce21021406861bb3771a3b683767b23904b8f32c9efb8e3440302047c435bb50067306502304d0f3273debdff4a415fefb7f5aef5646e8f5dd2cd11a48df79de8ce3cb11b16312e52833a5382fb870e0525e96d31e0023100b61d1f9422d807d214d0837c0e266e467054cced522f4828c19c499aae7aeda39d93ca555a8b797011f62f780d4255780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eafc4b8d686f6a351318b0615a2daff3800aa664232b840a821fba773d1fa0a5595b51a6b7c1517380c0da42133518ce023100f85f269100efa3f0c5e13ead49b95c242b17fc1aaa2ab2e161bf7841d33c1f1cf01b45400c14753c218dcf7a362d075e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023005e27ce52413bdeed044fd2f1a0f3afbf861b5912f9704718eb277b1ac0203d842c2ff679b54e90c64de4ab54d217c2c02310088ee2b5988e920498a19671f85d26e234c1d95b945a379322cdd9dbf81d6edaa7f41cfc43fc496698f2134a748a312c90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b81977e6e390df9aa6f266fffd19e433b37409c15473cbe99eaaac914f3b4e0234e81b34b57dbf007e0eed8f7c3954ba02300b381ddba5846c95529c6f8441ad61c7cccd0e39739790423018235b02925c3e83862161df5d2130be2b0f7837e8b8890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305c802ed4201f6f9102ad0f50a6a212185975325d9926cc4eb00b21495e306b6e0bd6c3f8d1a2ee5ddbb2e2a7882f0f8d023100968cc40787f1e0f930e8a3fe42165e59414ee2cbc0324dd22efb139aa2301a3adb225e57386620847446c9a51bfc0d9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b6ea0d3235a5aad09fbcc9323d373aca7254c4f10b5a820f38aa5f9f94da44267d30aae6122ba5f4c58b51146413b991023100864550954f634ca9dbd0bf8207ec416fc9b0a7ca3e7a66485b54ee999718b65abcd3e882e5c484b4a8e13a06a60bfe1f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ae204f5385f470e69dfbbaa833630679ad69d60543e65c91adcb4803f54b5a3138c51f7a020f21137b220ea04aec3e61023100847911afb5724ca94a48da0d0b507cd7e98ac68006c91ce097bcb6ffbbeaf43cdeb84bae14d90ee6d36f36f1357196a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e1e411a96879de344bda83bc46a8902579657af387e6542a843b637f23352b9833b33806b46923b8a63a6e16e7f9eec1023036d666c4ee53d87f152eb46e658f7644f661eeb4b373977b9f650ec8d841b1b9b007a3dac8aef54af11684f48c7718cd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230686c18acd5e8f15a3a07063863dbb42e4cb318d746cc9bd8adcd49a3ceb5f9f25de248e469c1de25516cf9e0599c0cba02310090b9e8367a97c4188d30b08b724417267ea28dc85c34f1ad057a5feec3144e2026aba6b6638ccdc76f93bac2915b34e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aa281aaf6ca1f00c548ee5c650f4bd2b1c8500273087a331960391f9bad54278837c98284ee618145d3ba50eef674989023062a93dbb57d5a187bda5d0319de47c2022a4dd4ca76ef081cb997676e278d26c51e5e836f2cdc1d563a4d8df4c0affe50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310081c753b6c9bfe58d7c796307d493e1eb905f4a4c8e53e92452778d7f24c3abce9cbc5c678457e38e538e1e6e20918cf5023100cf4d35a9174fcbb41ca797d70160093689969f244f631f5f528adb96be14c31824d0df74846344f773e2370cd83972d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dcacbb1e0e9db5567bd85e6290e18e9371c098046b2d50ea6a743d7c40b6bf861f8b76a3530619c090329856c561c2d5023100d018f39f5b9631a3dad16d74577fecb9b3922c7d2180ae6da40846c300611d7be3b50b5e8032b484db792c9cfbdf81dc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a8c7cad75a22c2605d42d8834a2e739d7c95393fe1333a7302250f5012940a2d75ec1d328f3f1d5b915795d7426defcb023100a8d6e012f7a03ff1b77972ff576ba0c9a27512c9b2515a2be0b9e720f5d127a4fe99a57fc15b109565eb14dfd3693a490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305b3d026ce0652193460b7e791c507d77c131f65836577c04ac9ee001cb529f2ab079e4c0a4e72ae0c57ebf65d361d29e023100b2afb63c9ae2744df6f3b5a61407eae431f6415f5cc7a875f1d632fe7b31d2a6cea4d0f9196de8d597af91cad608813d0302047c435bb500663064023011b5f9be16db3f5b07df5870fe9a999543fe7cbb038958317959583e32cdbbfe5533dfc7c4128d072c7683500469235a0230530f97d6e827ef453463345524f26524696caf531fafab04123e95d00bfa11acddb0659540e5a3d053715352b5c3fdd90302047c435bb5006630640230064ab7686d53b3e1af70dd372840d65c60739479ff1d315272533fee70353ec221a0dfe1e607760c62a856ffad13127702304326f14d7db4585bd1b80abb36da49d03bd2294fb2e35b4efa57c46a44a5ef6eb78f291ee1ed375c9ea8695595b8cd580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306b5f56fcc99b9526e6919f9faece563821d95d38c1292dd172496ab5995b88b9c0a8c157c51ee7180200bab5e32b3ab8023100aeaa6b76b7761c03074eadd5a10fc567fbbd43eb004792f172da9e5c9d0c106b29a33ddbaf88f07a956c4c66c6621cd80302047c435bb500673065023100949bfd82efb8b75090f06d17d42fa71eded0b5c2cdaf681c2b2c18c19bca98862e179557f8fb5e2e32c9f58ad4196d5c0230760c093737812e19589f95fe1b85a8e6e854e712305cb44f834472275c143190abcfeb143b490f7fed0262d3b7827bc20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b3c210416932beee9911056f3c7146e76b6523fd54fb06096b2ff15ec40dac51e9b0160da63743e67f74eceac571ac9202310097179a4b53f570c22e468e6fbd3fa9e312d0364e6c9121969e48189f5cc34cb285fdbd77891f984959e9fdf82aa0f7c50302047c435bb500683066023100df9261880add340dd60fca80f89453cb004fc8b154ccb8cf5cfdc7d0662a3791e10c13087cf46c2475282836fabaecee0231008725f02933811d7f4f6e45965adcbe68e24ceb9ed881557c66b5e8678b6670f9961511432556e5d92ff5a42c5cdb89c20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302b7d64de7c4099ca516cc82efa5fa2b56defa581a33967c68ec60ffb466b2d3ed11d2c9272713262e9269eca6fdd848e023100c4ada19067e3a3be956a18825c7b7aaa0d9afd632bf9984b80481ead252b4eac11b0800304b5090afac6c8f63feaa6230302047c435bb5006730650230095104d4575116055399a5ab2d93619e353fdb749ba724dc3bd37c0a051f45a3604c78b68d262130e109872aadc68eb4023100b58c3afdcd2c902c191d905c5f07de42c1ec43f3aaef4d827a2359ef555044b52f68217de0b3d0a014d69b0016b9358f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dbe66a3d184838a90591ac728a7aa0cf2be3cae452efa698623854bb92e9e8614f098477e8bd2a20986eb1ba4aa76099023100fcbeabd4be9ed63be4e3289de7ca56f148e7e8def437123036f7bf5d8f27093210ff695578faf1b1b532e9d95f61e0fa0302047c435bb500683066023100bb14792ce5958779b614fcadfb3084461b34ff76588ec101aa4a49a88031e712b7d993d0b516178403df827765a8397c023100ff23edef2d693d0eb46d644ae5ebdcf121ae9ef8b5b04ece117adc02392fecfd30cd55439e8aeb0fdc4fc3139df988670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300af3eb4e8e017cc2b9db593b124fb9d3da53b8a6cde853051b0ac3c4982ae0177bba3af88587c1ffd1ba1ef95f1eaf69023100d56e5114825c62801d2c4491f9702730b512031c1f9473850686f62766009fc7e1c8de9b50dc93f08608a0c480d3f75b0302047c435bb50067306502304e470cc629ff2c8a0c0ad7b90f293b5c0cfcd10ff54ebd05a88925c38164c88c35191cbd93314adb2f604e7fded11c17023100c0e6d6995d52846440d4333c592204aea0e024811343e82d8852047d435bf5afdbd46a614a006df6de530a4a2ca2ef5e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100890e7ee0dc2d040ce145bd94dbe1cc54226faf2da49ec824b4d8a2b71062e39ecf78ee6640fc90874642c67f0dd5a47f02305f783797f0f9922c68bdc971990da7006e4f7bd3fc9883806280ca2b31f8493fce76e4581bd6e026b6770ab4936736770302047c435bb500683066023100c37670c9741e8db8412b875feb98a0aee07740e52a70f062dce79effef19f313d31928e644d2f14dc5b2ae7b54ec5cab023100b527f4203a807aadbdff56bda9c113de5dbad7fe01ee2f1b24ee1a4cd3c507eb82f0c337ab65835c54fe604f5fd2112b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c213de3efb8959068367753ff06402861cafae3986d4b7c41a164dad89da2b6608fc8b677d881fc6ab98bb38b0d93e3d023100d811eb515e22e1af792588a0b379173e7de8d8e800dd2f2ef8d1aa740ed155d8fe63215d73cf3401735e620749209a540302047c435bb50066306402301f557424feece9c920884fc045f95fed304ae29a67b214a0d76906e42f2f789f15e4350f10392779a0a99d0fd488a512023037d7f5f65705595d03b26b291b12ec980c626a957417f291464780c2a35874a9d69c067192ccb7fd7f44dd61ae79b8d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302c8cfa810d150108c50e5b9afa351bc3aff6c41d875c0429525ebc1da474d6bdc08159ddb0374398439242c5e1446faf0231008145846c69402970bbbfe0b1eb927d52756560dd3a2fefb567dd8dc958f58776988ed76870842cf853a5add710db75fa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e6881d47e041502df9a2f83fd99fc2d88981c41c1a684d514bddda61a92ba5b65ed9d9f668b1fe26eed733b6c59cf223023028eef31d9314a01902e910ce59fffad1aba2bec48c2a9aad937c737d2312d5390306af177c08fdb9ee1afada5952582f0302047c435bb5006730650231009f07e49ce9000789bea9ca4eba27c2001c654369fbd07954ba234f93ef7b5d5b33cc0e6eb8f0b1b2379a9d49b64ad6920230095bd58cd06abe66f2a8a67730ca6863a5740e0f4a8cc5f5494109e3813ca2f9bdaff0bb38d5da03485e98c1072c188f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305860a1c316173b62db965e1704997dfb3fe43167c09b90d811fca86842e68ffeaf195df08900fd3d78914ca714b4a591023100c5a610fe178fad6cfc6b0c3bab3146cf65b2afa977b971abfe9c845b392945bcf95a64b3e2a510da2307e59cef1745be0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aa0b1c882ef6a02555598171b66fc137574f46fe16508c9432838078065646bcdccd36b6667dfb0ede4c25ee7a2e49130231009a35429956ae7db29f33d310093a25fdedf3b869996f4317593ce56dc6ba91b4711740e00cf89231ffded686ff6555af0302047c435bb500673065023039b39e66fabda6a93aa51b9a2f448d6178bda285a1742e697711cfbf390ef5a56b0137f6bda8bd2c84d91766677fa0e1023100b3d649bdd94f4eed049a482215a9cc51b2932264f0834e978ebac99cbe2c8d1d9538d4f80d2f60bd19298db744f91af50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dcf758d8a5fcf44db4add97ad265ddcd74a5e66394df196421541e16f82e543cd91b7f347fb139c8be122b1e5719eaed023047bd30a1c219b169fa4cb2043b72f2d9cdeb621a6607e9efd2a4960aa934309f75abf922f1eb2843267ac4365ba0e46f0302047c435bb500673065023100fae661a11130145d99fbb0c256d05396b69ecdc7f02a1cee9b92c47f8aeed4f5c312adca497d4b4d053c5e3aedf4ff1202301279eaf5b391a2e54bb4b36d2fd881ee3432e8998f4400be793d6fa0e09494029ec3b735fb6e5967f4157fea39a6a1080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ba031849797145d242b498ea439ebe6c6b0e070ffd40d428b394072b6a1aca0a3b051f7aacdebf342e8f7f1a51f25291023100cf32ec62d562aebd02f80263dc84c7a42ca400944bafb146126d46adba2ce82c1cdacccd2ee29757d4464f5fdb86792e0302047c435bb50067306502300bc495db539d2c659e07ce7d90110fc9c8f5aa4b63e2ff94bffe50cb2d24aaaa8e04d822dc42dfd994c2ca7586b8c4f3023100a950acdab399f58d469bdeb9f118e0ea7595487b42322c3af0ebfecd9078d4be6b6a5374c218301fcfe613c8b379bb410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009d3f3cad9afb6f7fcde80d397960345a0ab1b065a83118451d185cfb66c54a8a4bcd57c9422250718313969c589b866702305cee6d52dacbdb7512443c141f69ffc1efe049fdc49a1203271cc66968ce4b5afc26dd2c062b30874575ae5e0681537a0302047c435bb50067306502300a36694b1d7547078659783d77af5b02b0f68aa06752169a07c9977fe9d017e9484a3d9ee4dbb7ec3798db4e079a3e4802310084291c36d903f2df982e1ebd4f5776fa330ec110c14172b3f888796482ed6dcc65400b45d174caf7004dcda2300dfade0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100de6f3429dbb414af4c048f663b07ee739ecc00296a5cc45af93677066f9a99caa9b962671295cacdd709fffc33bd4bda02307c64854fb70d7fdf8ac16d51ba16204d436e5947d90f1e2b6d9235e74d36a0c7eac3ebabeb2011aa96b623db84c7db2e0302047c435bb500673065023044d6f15b113f79d04f423bc8e1c8310630359e05e8441642a9f269bcb4eb4d950f026bb059fd40ee59a81afda667d1fc023100df240837a8657c5d27c73f638f93ec4d73a11d470102800d8288275d0caea6a440849e38e7482a198a2e2d36c34fc4180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c7824b2fb28dd3f60efd00f29d98998cc08b14f92621c2f7b66e1a27ef58c1139f735111c7d82fb04c86b7e758c8aec6023100e8129d7272996c20ac704440389c997a9401d6db82751cb0d324c0fc42732d4c736e7d547b6ace4cc753d20ea083b7510302047c435bb500683066023100c55ff569da3edf1b586c033f7d5253f1a4e65fcba8cdb0fcd00f5293150ab290aae7277017b94b395ce63d45c1935b67023100ca91aeb02b14f96baba96773936bf74552a52777fb8f438ab8fabaef4a5b097f5f5ddfe4bc23ed66eefadd0eb26f52690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fa80e6426b36f42d91c5f7421df11008ae1097e51c18b01e94f62023f4e5a6d8e7ceab449415642aefe5a3898c51c10602302b5fbbff1aa01fea025625ccee1e85b813b4590026a1c3d1e17aa5c133d32255431d571d32536bd69459917dfcb0f1940302047c435bb50066306402307cd798bf9fbb8686ff76e49604b319c304ec606a62423a921e3ee821b046216409b8a8ae7c3b7540bae6f92b9a5c136c023006aa3b27e0edafa6965941fa3c833d502aadde6c5541e46474f7b7811e77320729c5c8e05d3f625c38f7289f5ee098c10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e29eb33a638f2fc5c5e3420ce08508f01c49cc4c28c9c6291792f09cd43253d706488c82dbccc082a4fc7811fcceac47023100b8a90f6b21eca20e5ec1fd849f0650236710eff630e1d97fb442a8aaa18118221a2fab3d65838d3fe9497d4607da5cb40302047c435bb500683066023100cb4ee2aa1f219d9b7a2a2fa1a4e7a6bc81efddc7e0538356e969b8656ce4a870400ea7bcd060440ef5cc995f51a10c780231008900c48a70f3edba5426957cae84eeba145e8389be6c9ee96604c325c6d8ab684bcd70c815fc46a8c9d4ae7e114eeb8e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302d6124d4ad326f79a2144d26b204e7fd176b94ffb9cc2495f473cbd4b1c44603d9823431c7c109724f568eb6a7ee4b1302307e95d0b5acf6dade8fc228c7fb28c991473b9719f169d9ce0d7e9858f12884333d84e8beac97b72fe75af95a096d97710302047c435bb5006730650230522df29bdc33f8909689b43db301e36fe3e61329b74da8aa6adbc5783daf534020bb00901448256ec24dd833e954a151023100ba95fe09251785b710a671721ec74db8df48d6bd4c30ca48d158db0587a859a3301a6fb6ad3bbb392d02265d391dad300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023076c99b8439b9b4651949978126c2f84234caaeaa747d6af8059da90dc4fe702e5fb3ec1e3f69d763efd860cedf54b5f7023065b24ded054460d311b785122278db0a844545ab5c554f9785f56300c858da878d0c7103b385087d7a1a3a9c82e036410302047c435bb500663064023014542a4256ef766b56dc3dc95dbaaea6175dedc264a454f24575a65b7c2737079e009e2dbee11bedd690da750cba4f3202307bc4771137a3615b592679ccfb20297021be5f3089c70562285f6eae3795194686aecfcc89b1cda6bee51af556c93a650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230678c51a6e6b2d5311b08ce877b5f85da10ea0dc919e25270a82fb2d56fc13e8ff05e58b29c324e21babeb71523804929023067a21a849ed24a3041017ac219b711da2c23b9eb2521c939c7698e92ed277f5c65da7f855d4bff8ed6aad9acfa4fcf0b0302047c435bb500673065023100cf8562ccb29170e905444aed249b5ee1095f0cb13968b7015b7cd115b2de9b7a8c1ffefb3cb041c43e6f8c90f5fb01ee02306ce48cb5c75539c3766f5eeca3e5dba6a05fabde3f9effe3233010fba58eeeadd97215368c0f86c741e90cfcf19e78f80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304188a478701028c15294f32b6eabb00eafe11fe25f4329637cff97177065e7e270b3bb79f6ec1c6fb99bc05dd5262ff8023100f98746e751e38cc46c0b3e46d51fedafe71236049c4282eecd214f6159f1f0399be21b55cf4f0a7fb0060df9369a9a690302047c435bb5006730650230412962cd852d4c69ea0bb3380b48855891fe743402ff27f95b472a1ae5f9659bccd14a20dd05715274b53af4c1290224023100af62b41b64c66e795533b9786f8dcdcd925b2e5f9897c52640023263eff15174219160bdf2fdb7e9e20cfbba5bd811700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023027be6bb1faa91d81cc838cd1d4ef941daaf529f0e1b341d309b2ea1a87dfb168f2b17254ef38892e3e97effca98384f2023100e32b798fb7b8d899826c1453e0d0efb817b64975f1b2719e3e915764ba4b0f979afee7c8fd471cd7fc2679f415ae5b020302047c435bb500673065023021156cd2bf41ac00d462605aeab3c63849029a9eae9123cbb5c3380b0403b83ff392e1d1fa89ecdc7f9c5d87add9af5d023100c0428c6e00e6150196042f016642e253b50fe66faacdb580619814f5e22dc1b98ab9db8ef1ce73fdfc26aa579a5acc0d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009a1ad078d78f052d09dc268f2564626d6c7928160d9e1a01aead0aea2baccc4d9bbe2efbff972db0736a25ac1f3658ca0230754b38031f69825d97480d9d26f30bac756f9450d8e00b92d1e17fe3621ba6e5e395982f0a6845cf77f93e756568c69d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307a1e041dfcadb7a71bf99d5923d2b06e7bb6d605ac79039a0e332cd33507432048ef8c49954016370fe41ecbdbf9a9d8023078a12c8a8ce71158a5c64baf68852f53947f37e2ebc3f7e608e1a77f82501017c4b69feb090fe3296b74b2ece5b256d90302047c435bb500673065023037a214808cdfcd4cf5be7f928fff2fe5a2dd0755bad7eeef4ca733505d02d3bc9445f716ee3d05b827b52c1b341630ec023100d89c81999a13e91788562ccbc9809d667f6e3bae2e1ccc4349af572d1e50fda01226f4d808d761a503622b95d609a6920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fc64eb7d60a5366b3d94b6bc5a4f873c97871cc12f9429dcad5838cee0ab0be784e9b142e16ed0b205caf05e1d5138e8023042585c044be589c30785c8e72265f9a4387b51a2d3140ce4d2972675ad7fc4fb11554f0064046e6dcc663b35f97c9c690302047c435bb5006730650230071990c9bd5ad96ed3460c05dbbd51853edaf6dd5367ecb09ffbb5969203f15dcb35824b16e740f66be296f3ebea752e023100a48e59bccbceff6f338c5e4327816b29477888c738f9e5b9dab3d0bbe6fbe5c767664f9caf2d94136643344493fa066d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023001d6de7ad797d1034032af287fddcefe035ae2fb76096bdbf224fa313ae04a1ea3e214ff83e705c62e463236d426961b023100ef925d67d27d6f7bf24662abea7022559f6eec8e822362d4cee1b33c6488d65dca9d45bb18913806ff996970141b962b0302047c435bb500673065023100fbca06c8d972dcc1dc063594503730afd5536a129049fd93e0c8d16c027b773e98a56c027f2d80f266a52be759be963f02306a39a5e27126885b0c0a3a58b205364302466cb77119cfeb4491ec9c77a923ebe278222091a5fd6eeaf006705847f3610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c03a02064c05d9e3f0417def33ad48ad1ca34ea4de19f87da3555dc709eeb84de653c393d1388296e0de13c0d529bebb023100aeaa679439b1c1bdbd60ded2954128974ddf93ae00659ba24d2198a0a1d8fb731a5bca7c2f975ddf9ccce7103a52fd9f0302047c435bb500673065023100bf21a26c85605b9e35a3352d1a8ca91336f7451308600e8bc0b50a199cf660e7829e7d2b546212be6c9caff231b36f4002301866234bceaf02ad4df963420c66e4f760b160880cb823dd8620cfbc94ed65d64c131c849cddf4310dbe0fcea67cbaab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f8b1c1bd01da997d8e0f94d601bb3c36d889f9238de0a4c5f4c59287531bfe98412ce9c591bf649657d0b7b0d5accbd202304808b36c7c5c54decc805612d50f702a0e4111472125f27eeeb2b0549e1833224b181434ac87ddba5a06f5c4be29a7ae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305de883a03a9d6275fbbd6de37ed30c2eb9d8829bc8f6f7f875b0a6d95e63f4105d42a047ed73f5a5da43b06b751ecd0402301c81077369907b269878c5dd1809e323b1d007ee2190d90e2256f3bc7a7b2babaf87468ead952acdee4f1bdfed4e436f0302047c435bb500683066023100a1c0b35e8c9b812958cdbfefe5ebf00b2a0e65f8f1a7b50f82157a8ada8c22a96b20aaa892d9c1407569a4b923f4fcd1023100f315f980dffd581e8713d7de6e1ae1a680aa9f73edd98eab43e93b79ad0ddf180e2701322742233111205e109c4e93f40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bded32c1d9f146263397e8f3acec6e6e8c211f986ae826fb49d822c8c790e14d3e83bd3d15efb92f2a507208969b48ef02305fe16167b656e272f7ed5f019efef78d61d858c50769c47cc4310f464119d900b1aed8907c30bb32874c2fa7a3b82eee0302047c435bb500673065023100a5166f0643bf1eae78301187169a6c8c9302896035792579197cc85fbf85821f605826023e3ef20f402e3361d38a1aa00230258457f55ac473ed76dc429f15d5eba361ffa2f5a88fbac1161ea3d84e567f5266f196ef11d7fae74a282b5e7e23f8570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d16cfb4c95e869ef707bdc8931d9f5b952fbc2e5f2d37ada4923f2281fe140cbfd680c9d42e8873519a52735ace8daf702302e051d904816c440334db0addd5bda1e2e63efe80cb4e2ee5d81e4163219b4efa50dd1b73abdcfbc97ef03bb90bdba350302047c435bb500673065023100fdf7981d5a186b6461ddc13bfd8b5b77ecdf8fea21cc5bd3d20511f740d9d3338356f7b073f00286027045c89f6301ce023068f9f47f880a61faf1cc9cda2a0d02602c38a426fefdeb660d802c722a07fa18feaac2f38e5eb0bcbd09f63676a430a00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230447c543c4a844ff660d3da5bbcbf1a70c68f3e6609b30b8cf0ee69bebaf05dbccff821d68c7d3626f0faed56e31c8dbb02310093b45b5238a0847a9d5b7b1b5486ef0e297c67b7a9fe4c4fbbc294df2f23f87943dafe4174b520aebe3c4263cb8ddaac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a32a76440e191825053c5776b6854feb0810e22b8cc6074e7c34763fa8c909a71005040b15f81a2180a24f78183e65ec023100d9510c67fadb6b039e900282b33a043b656b5c9a9f3b2ead51099c6288f0fed2097608e4807a79e6ea7fc6a3f1dffee00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a5900c1d48662c844a62d5543fc001774565d44de195c348327847302bf97ade5a0cf5990dea6095c0024300106286480231009d79d835f9cee1503e163044b389baf7fcda0f22c2b3091eb5c44c3455a61c08ccb42e45849a16086c2eabee485a86dc0302047c435bb500673065023100a97f20aa2c01f1d6034fa58a3354f286729f05eb9a75df5841413a56872536a9e18c4c7f47193363f5decd19954810cc02303935b46bba709ff7116059a51c6a294b7ebd69012051a3dc86a08d5fadc14e917b129a7c49faed7797ca43ef68751af20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f672f406fb77136cc5063bff2b88063bee91bb63f979317cc522563c2c2b1eade212b521a75d5ab3633dd375c081a890023100bbeea556e3b932960af0fcaf6589ce3e0ce2b7e2b1330d248c52db57dc6a0d4949bfb53a01436fd35fe378d55c48da710302047c435bb50068306602310097ee82771a0fc44ecbe48b7d0eedb6470b2e1a7d48e99bff4a1b222bcc1541a653e681cf853659c91d33f7d6dbe32c99023100f54f63d529bb19f8862816e8bed8e39ade9ef596855ce8786f65cf24994b1a5b8cee7c242f3b813928623cdd1814b1010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009b6fd7683a517c33bb0ffbb30df36c63ec3ebadcc112ffbafb10ec2d205dc48d392444cb6ae8e89095cbdd8191844c3302310099e1d0b20546556f8f2ce7174ecb05eb96f6b8c8770d7de0291b618be1d732f0fcb5eb53ed35bc64b6add22a8e31c2cd0302047c435bb50067306502307081bf0763aa2401dc75545f49c9df9e6488f16ddc110cdc7bddc09dc9fed186801cc946165906fe7eb295aef45f1b280231009dd12642d3c774149d1d6ce26b4e41621fae98146076551be1806271a2c1e936d862b4fd77b909faad0a0ba1c0391f110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300a25145cd84e6485d91b156eed283dc97bf757a2aa5411784cf4be32d0de74c7f35f0c1d4b087157a0c276028c52199302302f5b7c4e48ede2dbecaafe7874b50b42562984efb10f07435d7b1cad18ea979c5528cc84b554e8e9456d54d7b5de0a130302047c435bb500673065023100c690d1d8fabe11b13ebc704da21fba52897b05ae2655e987b2d3a53f831769ec9a1992559a50131020ea0a81b7018d0502306dc6a2d7f284ee31415c538e78bd092bfe9af8cf39b4344e0de6aa88ed3581071941ff6e5abf0ce672e8e649d15b583b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100efc9eee1e9f30457cc1373043424834b493dbfe775b1796ae9e88a23e6f5279fd7fefa6a113a2c697110202c7521370b0230310aac963bf7ab8f5879300abd5820fdc9178ebaab04e981ba74308da4d1be1ae97ff3c8c03e89b1d2094d1b7271b7470302047c435bb500683066023100e98f88965546e672962673747361177adf10881ac05b16c753beaa41dbbab490a38fe2f2e5dc59bec5173df3c56043d7023100cde5b3de61cec31655a8d3be6d3c0c4987de223d896c9a18216e88ece301001a85a1f9e20ef68a5c13c83ef0e3090cca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230213ed4389cb840e368c2568e0d6ad81d58b409a0abfc0e66e3ba1ef71a8f6f4981665ca28747c921ab28b27cc18265a8023100e94c3ac3736750253a4c845204966cc57e7cf232cbb70c11a65e45c3dc7c9023b26e3fa6843c71e597a3980eb42072d30302047c435bb5006630640230630d3c574f916b5dcf040f1f74554413abfb7d9d6a1edff9a41f0df007bc9498ce5c2117ec1420b2315921dea750013e0230042a8926021117f6abbcbd99080c595c5001e02b087b1a78fdc51709ac2e2e11ccafd59feefae3a930e2e38d62691ebf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cf60003df50484651623a306315170f10e0aef9dbe4320096017819aa382ee0bdd9a305300c441c053138aff1154de8e023100e4da439f44ae7e62662e515abc0dfec2ca6eaf57a6bf9180b2d980069f9125efac5222499257aad7ad0abafbfe8cc3fd0302047c435bb500673065023100f1288960c9d035cde7c939567781675772d37d07bed056baeb026c73fd23bcc58e340ee43a51b0b4803b73930e88c960023005af4dba17925adc44c7e334741ed97b31365156125d73ff1edb53afad83b6fb427ae1842fc0416298fb270b90e410b70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023044eeedb4200eab2d8139999774970c2a9e9bc6710113060acd6d0f72cec5c7a8af2a4e7d52d1362f43e6dc56e4abcf5f02302d9341912e1ea5f159e0250cf6cdb5d0e54a8a662b1a9f1ff1fd5d4d096f32b4764cd914f9dc26a7a099becdc8de349b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008118e3c3962d4cd41f9188f4e2ad8876e2ea1fffba15b9f8d016a2f6bffec19e03003a2fea77e9db46a84acde3afc7d902306d9cf340783112b2d5283e1f23a7469dd3caf559ee91d828623eab0711c28a3af8c24622154d7aaf3b3ce61627a4e0650302047c435bb50067306502301f969d00b595cdac5e30f6ce19377fb5de7913872b90a1d133f8456067f009c83d38625418521c657fdc5b5e3ed8e69f023100dab5822e0d0a488150b1b50098a743ce1898f65073a62a39f32bf3825bff3f16ecb367d541987771f8b9337ef81b978e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ddfc28dee7f4b6f4a554ae57bf71955c321836f4eec84e5ab44be60b08bd1cccb1f169bd13c3bfc0a65dbb0639787b57023100b091688571c422b8c6778b20f98c53e22a8cadd2fafc23917851481a5b8e7e5b9c08bdd6455ef25338be7e3fcf5f4bca0302047c435bb500673065023100f4ab8ab45e0d4bf31c88451fcce58095a397c0acf54e8d650b367091a26600c432f33a83bf19d546cb48ee1fbe3d821b02304b4b1e669ffc2f9f0c3292fb2beaff5c8b0291623006d99f497d1fd852ad15abc39f8d59b4c1bea1eafd7494655bf9870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304aef2d3ed1da76eb317632f61eae620544890288e1af94ca5b39142095d231a2a5862c9153f68cb715abb54bd8a15a31023100c0fb0ea99f6cc54ac734789ef2d7d13d972aaff54ad7e5358b0f3c691c0638b38632bf7b2fb60ad3f3ae9c846b5cc5590302047c435bb500663064023001bbb068150e2b0e02486f767a3acf0849c48c20d9fe5d36511c9fde8f8389f429722e064648044c321d240340007549023069903d65c19287cb1485cc24f945d3a2cf8538b5d5790c010d49e1e80adf582571c9a331bbc7ebc6037eeef790a312440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023044b21d818a69395dbd12411a22a825731df75ebccf2aff97df0daa2f5114b07b2331ec64fccc68c8a55d380a247115dc0231008d4d7da8d464c754e1787342d4a2cf2fbb8ac34869e231c6f64fb67f1610afde703492fedc95348a56eb8dfc4e3deacd0302047c435bb500683066023100e9ca96f84ee2f7ba8eed6040f888b9ac490adfd20c46888b21479fdf541537c8b0805e41f7747ce1bcfbc041d77c099602310087030d189564c4b76e66a88456feb4f416f5fcfa96a7363a01b13f09ee88fdddcbc43116289519c74c9eb47722decddd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301e35b10df69afa62e10591b1c67760917490bb41b26e951cba486027630e6c73a0463b21cf3b3de328a66ddaffe257ff023100e6249c5c3693ed41d7338cec0006ba02bc887605aebfae5dc7b01f021c4ee03729f736b6bc64175889f21be62e983bab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100917cbbcaf5ba55691032f2ba4d090f93c20051cb13d4155e8279267e37469536e0f11b4a471803f276b89da1c7653188023100ad76e60362163debef1161052fe887330f25d4cc58f62e54dc91d32d4a9aaae3e9894ed1e0af04e42e2b2d342db8935c0302047c435bb50067306502300df4ed463003824eeac087e6147b94e2d7c104e8dfa6b31f975e1d9560a3f9443a74b3f08b8987df343f9585df303dfc023100f0c78daf7ad29cf8e18e5972aa42aea5d64f99233cfe80257072a10b39b34daa9c38ecc22e52edbed35b3bfed0c226ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d06591a6300f301440fb140e49f671c165307dff9e014ad9ea639690635724c76ed15268543f9e42e704abe7f5b6e46d02301c5eea31e8e133c1343074ab763b28f2eb87c389fe2b1544bf67510bb660e58a1ca8ce00014f75cc4d68fcf1fb74a51b0302047c435bb50066306402300a2e7c9b13e7f8c9a16782e654d418af09b28a38901ecf1e39f0f7f2f5459f39ea692f7b3a9fcc82676d1f16094ec82302302ed48632706b36f3d165e36c35e31173ab695dba9ea626c5d2d78373d3f84545b2a1285fec859fbf3f4d9b788ce109180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dacb7a31255e09a92ccc6ad153e1a7b2527d8aad2cc52bd9553a9a1d6605fc9d620848570cdde5b7a9e92bd862d86866023100f7ab2bc57a29e4358357fd7cb669ac294a6c8fc8cd8f23baf3a808836d60498bbc2fe40d97f9d958f3c99a0fb07fbcb90302047c435bb5006730650230111db42f7c4ed57c8472eba1288cabb65f5f6de6c60025440ea6760247acdd57800ce1af058c9d707edf38fd5f6028d5023100edb625eaa9c15cfbbc0bf70079bb9229fec3d296873f6dd511d0aa5d00707b64edf144270f7a9703157e0458ae5117260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f72f383a2800709884d830e46a6212ee9327c37cece2cc736a839a284a05d6f2153133572e8765aa57de17dcd776cc15023021d3738c31867436142d491602ed93c0827acfde8f52c725a38d452f88d0716b18b2ac7094bc306b65bcb06f64b4606b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230090123aa2f7441120f21ba6d89e260f5b37ce721d48555fbd21a0b42e88260e53422a6bd95b1ec1f7adc53a766ab9d4d02304fe295903864daef4751f6d253ededb9b279484cf3a33ac8e0dd1234e778ffa23a77ee4a6b315f5943b3302e293dcb6b0302047c435bb500683066023100cd1b640c54534ab4a21f45d6ff0277a8f5f5e961f9b7e659735eb69ba86fa27e404aacafcacb496abb11d2a046442314023100a4731598680ac9bcef110bd4687a4db4da2a467ea363a97e5d6ee9939574317513a6b0c8d4660e5a16d386e8892924ae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302e0fd7f2cd036be5e847c03c17503e2ba39c899ca5a8e8bf21d97b4b28cb937c2f6780751e0047180767940efe87b56a02310098a84b7c5bc7d6fbd79ccd73d333fd94cf7ce962968f699b27804e364d4ee700433fa201eb7701a060ba249b3a28b7840302047c435bb500683066023100e75bc0452934f26bd2bf9d0ac9bbdaf435068383ae12812bd878531329d323a2982d2858b6496e9a4448861d363cc6fa0231009c46b9fd891d74c827c020e8fcaf4088a112d594fcef092db7f756d7ec1e88c1946838ee41724c44a6158cebc90a09d80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300c893b086c349515afd2b3e8eb7e08e67f898c17ca9d7b23784b110fa706087d8c4eedbcfea70c8a2f4a34e78edfb5460231008da2afaedf3e0cb88a27eeba56276afb9f9882211031320195872ae97622aee5954bbd6129322789042f9d9f5dcb90e40302047c435bb500683066023100ace32c20d3b5807d16fbfc7ab2ffedede1068552b0d5bab38fe9d40165d2c3892324a7ce31a86e625de71dfb4d83c5e1023100a5ad4a3c0c09a7a99588c28de95f076b27fbea7e09f7f2e343508099523f28d841b6d4aefb93cdbbe30463422391b61b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300cd83cb86a15e0d779b6bf8f220d1828c5051b981c359ddef4e5719bd4d8020a9509d58838a85464d189e5c9f017d8090231009cec7f0411b9894f9eba8756dff530eab9e570b47341427e1356dd0ff91d08bf95f5ab6521c50ca39a9c4b24534002610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a6e09d7f14ed5ecfaec96aba63dfc596a1b7a9bd503e84c5e6cb072c2d089940195fac3fdad2aad4fbbbf8d06a6e895f0230681ffb59625fb5e6cee11f1812a969adc746409877839544bbe568e0076ed3ca4fcaa76f97147f0c2f6f6ea5f14721b00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f1b6b915eca1cffaf1a4257010f2f8cc10cd4c72eb4e004b7c5058927d29e9f18dea5348dcfe336ca3fe6374f2e5f94802304bd5b7686f74e829b2d11bcb3c1dd9cfac3c3f10f3ada3d84e3767011cfdacd27e1db714d8681d1d0b1691544e0dee5f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301cea395aa74a187b8319fb102cd762a686d650391b9875a4cf484098b174bc0a134c7084141b048eae16328b6e670526023100df89f589e7953d0bd29812cf8e6966ebd4fefd430033bb82ef3242bed9f5cd3152592c52bed5390cc6578d48a938d0600302047c435bb5006730650231008461146bfbcbffd2979cd8b437b642ae432b3ee378f9cdb1fe89c8ec03dfba743587814eae239f06bb348abd54b8145b02300b618f1b50d084c7d9c36343b7010d55409fd45b4b3d73822555ba094fac6246ca2541fb5b6a9d4667df5b154cdce4320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300fcfa7939d3cf8af77f98235409ffad470097e4f6ae868e59c8a17926fbf2a939a8f803a980cf57f8490fb06132d1a07023100ae7fec20a1267369b040cab4ad3b38bc9c1fc5e2728d8b332651d82d18ef72d67c623a25312b2d51f07124dbfb31fb160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304da0fcd9e00cfdd655f23be0e4a08805470452ebf2c7c1104772a2877697f893d606bc2c4fb08c8243433d25c830aee802302c8101620dac42e35c75a4e32952b603d7e24cadc9f22c204a8446bc6b9ae2e6b6c9d006756c395251f04edd88f5c20e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008c671770f005b59d23393827a857f49844772cfda5b57d44163cdef87e12ca5a40ed2e57e45aefcf8379af6788393df202305878da6310228b6db33872c2b9a898db8ce726d921eb3e6869b393856651261e69158f1f9dbb6be8a1af412524c3b6190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306be8372cf249be82161fef80ee5681bd64004399f45f106d748a032ffdd6e7aefbf977cc4f0b326fe91b5c5202ac91fc023100d61d9245685d2813b3d273d1213485ac81a1d2a850aaeef18d5f0c65490573c33e9d187c65c15fe1fac574bceeae31670302047c435bb500673065023041d6f3a1cc5e600e1f115365e825a681d13f7187e6f239d543b37950d41d0bf5a1285d3ef9c0807c93555968660d92d4023100de21390c74bb018be5b3d5985df99de157d75634a38125466797519075875c4700f5018eb58230cec232d8ee5ba77b960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008fe9291a3baf050a72c7c21b51053429b9495791612a206c059450c489bf49768f202e6b982f2af75778e680705f0341023100b266eeb818e250d698e031bd70bdac239c4a6b5e0ac5d2bfa2643f0077479aa03a14dc153815c8419db706b05972b6ea0302047c435bb500673065023020f5efe67c2fb87bbf536c7284fb8e020be2a304095f58cff2f22c7fcead3ab98e7783a344e0762ad8ce8f3819a83c5d023100a74a21f8ca4c0a4b33017f489173babf8ab7230fc705a0d65a98daa83971b164d3045a2a795d6c34014c3ef5515f6ae60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a97333890bb1109db03c54b41959af5dbbffdec1a79f95f9a67f40e0dc41cacb3bd34754ebb25bc3ea00100d1ed822b80230777e73c16ae6c8982a7fc11fb4655c9313240e2124897ca11560ca12269a6197e89bf9b5e18c2233d0945aa06af1031a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d7e224a0e147964a5ed9d7c328f95424a8ef51b680800add9773065abffc309ceca54569bfecaea6a86240ced76bd246023100848827a0de5d66e89bd97dca74423b4cfaa6fb437ec513d73eafc1c2023a50c6da9cd2acfef035596adff07e05df41860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303a146dfad6bbfed96bcfef435f02b9e07a8b0805d5402dcd4ab513e129c7a5beaf2d8fe214b3197b029cd2a2552613be023100f2f4eacc50778ec8e88595dcf31202bd058a22813b89d390223c878abe6c3ed577bcf6b63991e1d917ab175303b4a1ad0302047c435bb5006630640230224801cdfc630c5a19a4b088708c34148467699414593d6ab71629209155a79b935533759de75564eed0613d132cb82d0230219e7998327f8943f79430f63f88fb38b275a5b75c24b359d93ba193857bca626b6c18a4ec1211a3d870e7a9d783fc0d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b40f4376397a40f89796c1dcc263c6bd8e285563229715af0a123714f2490f8560396c9e22d69a68d666bc06a7d481f00231009c52106e45b5473e19444e3c3f9e96aa5cb21aed25856e8543eebf693be1182d66bfa46d40265fd960c818a3e92a672b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301bae06234762ebe1245d3dd2edd8524b1cf57650052980952c7fa943963cc0c48eb5dd11aefb5967483b1376cd3173730230603e40de325ad46563b055b4cbc12b1e6f14ea0c984ffb57e957ae8d2efd1e7731fb4d0d8c73f104eec60983106a85010302047c435bb500683066023100c59530904fb56befee70b21a49e03a5a6672204db6fccae15591ae3ef096087f3749561614ead1f6b59d30c0d6fb946d023100c2b276142350ca92f60ba18267e4c687e09f4112a9d9cef95961449e7a628c72cb5eeb855814ebd2feb5760c486b74960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f7d0ec4c574673a3db706b7f41dcb404f3232a04f33f4378bbfea259fe9f571bb2194556794d19e5da94e61cb459fb51023100d580b1539892f2e0d04ea9bc7cba71a64303f420ad7099df17a19efdcd38471445f8c9bbaebb4d09128ad63ca6bfb6250302047c435bb500673065023100c22c26239b210e5ee264a1a05db149338ded88b8aa57bd4546c5f193fafce7fdb15c8fc716f647beb805d9e7e573535802306bb7d19b259fbb75c502dc641f096e73aa1956907b4ac0ea953dfdabe2bb433e3d5d2568d4e77aa3d2c82ba1a1c7ce5d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008eb76f5eafe64040782bdadd0feba766646a3cd8043cf6b52559e1d3a18ef4add7b374928d85f734aea93a82d7fd4b1c023100a933f3f10cbd1c02ba1f527d601cf43ea391bb17ed7bcf7854ae7142c3a043e40daa88767a731721fb79a494e95e2dea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230692c513383d2aa861aab7e27bdf5c54b18c8b7812467bf7a141aef440f14ef2451604ad5c9afb7e5ac8aa6600e3c2a5a023100a816030890e3ccb8e18af187fb6c8fc1bac1cab6df34ab1a4aa895ba7b5fa5333755eafe9dd3fd2d556d95b46c761a950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b6f268a9da74425dbd6d499d59397eb1bcf094002fb57942fc1984463dc1475c02b789497d27fa19b3b7d2ccecc5b521023100eab8dbfe67f45c75230056557729aab3d797861dbea9e804798bcf33df83e33088f4d1e2301461ad88fa3c12f41cf9fd0302047c435bb50067306502305ff4df9e37de4832e37d252a1d47deee4481f81074fb13bdffc675527d09569ffb50f4280fd830232e38d80f79a3336f023100adab9f932a0d18afa5cd93eaca09a60f7ce6ba5a7b53c04496b05ae4dabcd48e1aa3081fbe30b5303d12e2acc22991f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023070ba01429ad4a5157be5ef3375b32a59c73c23224ce8c5369522d9ac58d41c72730e4e0e4c1e321c9cb8a0a699f60e65023100dd44ab51b1b16c484beea8b1dcf03e65f416d384698813005eee09fedb102897e753fd3c210dd672f484f9a3ee3d59750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301c21cfbd8badcdce0dd5359847cc7cc187c08d6523258f673baae9780a4c0b04ebd3b9231cebe34334940554d9f492ac02301067ea2df7c1c2dd193117d0e3b4369276de2bf6d48e245b097831de3efb19c924b206daacf4cde4b93db5bb20bfd2fd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305d9387faee68e0f54bc024adefb5adf17d1bc774dbab30a0fdbf408dde2c4df2b095e93bd19833e77406c8c5626c904202300c3fa316129d54b45602be05086dee2dbe1a59ac3968a5cd41820f71bd8cfd4ce73ac94f779348433710f9dd133e8a4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a427773395d494dbd4381cef77f5e812c0285bb279d5226ccd283fa794f7279613deaf7b19d4b452ff803e84da2f27ae02300cb6bc045727945f1d4f94a819ffde7e316cb9844bc2b46a4badfd2c93083640b42f0132656823c2333520a4b064ce8e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008c3ff3ace3bf1388112383c90e3edd31cbf16fec221d1206e335a1194b4b9724fe8c41c57464492ad2696fd02062502b02307cd98578218fbf7a93e3d9a5540acb91ecdb56896d12f7bd929471cde5f61f60d05fb70a62cb614bb4cd60bb90f87eb50302047c435bb500663064023039ba38d58b4ec922fe7f95477a0494097d5da51817aa814eed1f1b627b20472c9976a70d31066999a385e025af768a40023005ca8f9903871d34b93c569c379ec0fbc3cac8500f07569b7b345a169ee72aa607cd02b2055d8ed7e5474f12721be1e20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306ec2f41005abbc89ca3bc972740337d0dd1cd9b68088e27b9ff36668330ab55db409e76e4ed37891abe88c06065b304202300889897defe57b6d58c23c8d7dff401f676d4e98a884acc94c8cddf40d4397d94bac8130daa2ea154f915e87e8d2a5d00302047c435bb500673065023100d4f8a4960d10cb8116c73c32a0e7329d76cc59f02d1bc617bf9d9ed5a908dd29ed32c5f0e28c6bd81f4b76ac5339b13602307aea185dc7ec6a8c9f5b4e72112241225dcae4e2cfc2143840e47f08a66adf6257d900d96204675246c9b7619e9ac1400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023001e8aa34583f55a9cba361863e1ca14c32b68de5bad1b6d385beacf056bbd363b8d1a73d243d1183a56c595bf163faa9023100da97f6f455af955ad719b983811ab45902da8179a94b92de8e97b091c24409e5da2d4d104f79de61d06e28bf767c0b6d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023036824b060744992c979367c8cef8a5d93138909ba95a45a7272074565d9fd8cc36f81ab62873cbdef60a88df8bb623d6023073cc481d9bbb7b929133627030a29167a1a62b44d8eb5274ba7dca84efd075a90200bb4dc898f462759109affb3325c30302047c435bb50067306502300cd76e2ad51cac3924d9e68be99dc6154b8b21bc9b7822f93e41d683f361001b95ce111d4fb0f7dfa6fbc2a3d4a624d8023100d4139606bbbc66644ba168834b41f1ca3e1cc97ad5b6917b27f502e44b8bfd3d4a68eeb25e07aa3ff28f85ae038cd6f70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009c78884b3bd8da4cdb444f01b5d05510b67461ac45b7bd51b810f57dbf41eb8b932e70e81f6035492312087d565c75a8023100ac1c0240fff47a73477216fb3f6adde5c371a1915feb03fcb0cf9b9041918c191fd15b60f149c128dbb8b8f309ebc7a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c74987fc3f1eedee2806f5ccf872ac4b410fef7022877b8a6e985c9cd19bc998e080e5c1924bc38c2f9b3667af3c2bef023100bb8d929a97a9235e93805a23cd67aec33b34a02bfcbd5b5d281ecaabb166451727f6f3d83f58807c2680ea72ce8b09000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009c6a681edf3b4a315fa26686a9d853c010f269a800a90a08652feda6722ba6dc680108c1b4543e2e898e1f902ce52e95023100f8009c9e1429d8c50c8748571b5a6dd77e84ddf8fdc740af89309ac76516b369f96392c1fea8792285652094537a3feb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100adee8b3a7a433bfb3a38fe10beca288127d709f73b3615898b10b869c5248d3bbc3e99caa47b80be0d98eaa6f3d63912023100a38039f607f12413b97be531568bbfd6ec6d654f92916eb9c3e9305776534beac6a924c7a6f090773b82d7290cf8778a0302047c435bb500663064023009eb0725c15602a0f954751b67b0d0a3ff02e4badc185f01bbd41fde2e4d19f38fc043284624318a02915ebd8e7178a80230623358b4fa595c12af8e0e360846b1072e88388c4502f8e62ccb932380ca126188caad857909ce072854fd5ad4ec51590302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aaa1db49b3c2d4e08d174b9358b5a450e6a2479f54daca2e7012ec8dd4c1cd1e2b5c37c8ae17c51c8a42e6b53fff14350231008ef17197b4daab33f7ad3add79451991e1b3dad922a1263c85b364b83e7d07edc9d28f55c6e8b426e5c1040b09de3b700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ab310fb5e29624d5657f4b851fb6e02a5d957a43d59991261354636611685071d5c70399c0c151aae9f9fe0f13c9ef4402300e500470f3dec23939e955bde253c837c1e2a65261f730b5943976dbf56dede69980ea905f7657c3174b2b312e80013f0302047c435bb500663064023048c034d62895b188d178fe221ee15a3e0d647be7ec698ebaccfcd3586ba8027c7ed5f76e30d4ea23f0c9859f6bef093f023017ca98f484865e33c462389e5a5d64597a334d8adc058e26782bec90872617e8da4a64330d483ebef71ad82d09dcbb680302047c435bb50067306502301b0b7cb89993562f501a0f9508fa0e64d97a166c4c097e1275154bf8d93c246921a89a61d201814edadd4b2fa6199d2e023100b6de3081115f18bd37585478490160c503360a946d1de8ef851b9de92ac757541042b9f28a2e238bcda1e0c8b89b3a770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023069b611b1b6885b96dd091aeb2247dfe86275355b4f4a863d813458feafc5c6e4e32b9d890e91d13d7e7165f9a5de953f02304d0274b4d6680275548ad164f9a808447c42722ee6db133ed4ae339396ef803672bee4af7833e4dbd0c152157ce414c10302047c435bb50065306302301b03643574b4677141c80f7fdcdd7348938e2b903c4c23fbbeb791018aa5329a106f38025ec6f65e3669a82f29b9aa3e022f420793dcd4d16394fe44e29d0554412928324d4fe9a7fd824da1c163aa55b6c79bf9a15b32916cfa99090bc7a5d9010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300eb8e3dbec58ef39b5024b306afb6f866e7a878fdd77e52af18758197e43c51e2c30209b8a545a530d5da51eb422a17d023100e7c6350c91b5a9be7dddfb1b74f079f69dc4dd317c474d209bb229cfb8c5c0d38abfdfa7044149169aed9f7c24b75f5f0302047c435bb50066306402301406aaeb77b064c7b0d8901750a9cd0dae2a60946e7878cac4b8e4ee7a9bd5ea4bbfbbe015e155e27b54b7ae57b3bf610230720ddc082798ac9c32fe87e3ac42ba5dc142760345804d411b23cf4a231725bf0e9b05c585eb595a7dc87642144f564a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300cab3a73bf69e6340d4d448313ac3c267c22d7af4b7cf9a9f9dc42368627a8671e29c1ade631c86ac45d2a4e48a0e76102305780d725662568986722bb981b447a8dde455ae52044f722c3c2b64dee8e23ea787727e0117d526c10685794a92dd2a40302047c435bb500683066023100ffca8a4c7101de878c8b05b111761bc89ebade8a284d92a65b3c0160e45e456c1aebd8903b6ef1aad222a0ee7369bedd023100d88eaf0425887429b7159ec3228e220ad50a5baf9644d98329b99ebe84a2ff08f5e66c69e6fec020f116495b8ff58c640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b1ea8f1c6d24732e56ec92dbfb68d2627c0c54bf50a832fed7102319e6d5bde27d2232f908dfdc7fa37ac617392e9fd3023100963e30c52d0d1d5bb7157a6bf5640aae3c1568fb14f37bc6a4437d8ecf40e27a006723dcda8f8c118c2821b0b30cc0700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009ec2795ea5ba6e536f01e17aa5aa6cacab1f735578c3a03c387e96b8d0239714450c0bc2741877b269614637becaaa8a023078f90042f2e369f943712999e2e2b88c5d014c59f0451ade8b84f55f82b3f2b2f7f4ad7dc05132b4fbc6328ace23642e0302047c435bb500673065023100f2dfe5601d64cd9b4f4274c86e03c89751fb959009a3ed5f9e8fab849e8910817f010cb48eff81e0ecb4f8f58e3527d502302bea70865bde32ccecee0deb55185eb345d37b653fef7367676fcbe8dac90d630f50daeffbed443d6f27afe121681c740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301399fde070d5a7058564f5af05f761c076f1d1231b7d3c53ee0f2e6d03fb90ac3aaefd03e646ce72de673fae5b565cb9023001d3d9961c475e56a85a23c277fef26eff637f751e95fc0945229a0961e652ecec15806cd872311188d26e278e2a48ea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ebb97cc69aa3724005ab5226549085e1dad36ae6277b31541005f0140939ba4f763df46f7d31abeed68129391d6343d0023049e84843fdd315c3dd295420995707378ff059b43c020f390d4cbf12cf91aa9a0a1a97bafa1b249e0d65d735182568bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100caad462e318c232a7f55e19fcda4eafa45f481c17a00b75988322315376cb8a9980cdead15214ccf6f2253e4fd28edc4023055401536659de13144f1c36debc7e238da03a1341b795f91777e5aa4fab895af8621f0950e897cb2a10c10963d6f0fbf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cfa96d03312abb0f82a7792f4dfba457aa01c85b0827f59726520a899f53f77648bfa76d92061d3b55b514dccbe83fbe023001b15a1f2679039a93f0a26fda74b1303456bc930b29cc6287cf6edf5aadcb159735382ed67af31dfa8ac51357d961250302047c435bb50066306402300fff34094a7f37afd79eb0364f78ed39841d31fe31971bdcad2478a5599e679e6e548a7c59e519cbf5a070c9a6295348023007517ef979db2fbd89dc06c2e97de59e1f03007e8b4835fdaec4e300003c84d0fa68b907c82c120979b4576adccccebb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023015536354d64db354a64a87924427dcb51d427d4a543e27a11803ae5c944889176ee59169f77935064c6b27147275a70702301d13e643753a9ce634781cefe5803c415190eb407b0aef7745e4da1bda8707665569f38ba864966923dc7a401e5a7c9c0302047c435bb500683066023100ece620332446fbfd399ef2f5fd805ad67c12387831cea43882219eec643d27d7b342d63496e8c08ae8f1e6e2d558a4d5023100839cd1253cedee82b197b3ea91ef0a2cd669d7167a4eccb76db2a4d9493139df24d2d7ae551123d0d28e0d4f87faec560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301824ea51b2c186b7f29c87fc6642fa899749c40096e736865aa59d4596a3556f0cbb8aff6167ee3b17b191d40bba2afc02304e1e6dcf0df7a6d588f31703fb2fd580ff3701f9d452ca530e4187e7f1628d1903a37647ac02399154756c0de29bf6540302047c435bb500673065023012db29f6c10ded803df0da3c4eafa8fb382b407036b55f8fe4a32f5bb15addd9ff602dd2cf9dbf981a37005005dc85e1023100a71e24a65696f5e6f511e188e1ec512572ba061d6609d093e1eba7b9c82b5c8cefc188d2e620f6269df0e09cda4b198e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310098ae1266dc0211710a182143d5813200363b904e3c5957434df22164363b78051a324f01a62269429d65dd280797eaba023021198e8bdb9d1459955234cbd0e65ff81f2e126746b11c49c3bcf84f242e297b4804072c70b037de93206a54804346c00302047c435bb50066306402307bb1990f069451f70c06120e3f499bc6268e5538f6d90b947fdad0a300257053de52de82ecc04c3df329c4c9cc6554c6023069f4120f3a042aad7007173571f935c53ee59d007fcee0aebcfac53ca0184584de85b0d3e6dfa9a10a789f4a2d7c20120302047c435bb500673065023100a4877d9380475885204f67724001722fbdecab0ef71468c32035c4211af81273557d50201c8890aeef99b748fb71745602302a682dd9c191452ab5481ba1ea4f677dc9633834988f47176abcf9d78411ad70f2957e6566e7a1b316d57e108275c2b50302047c435bb50067306502310080869f8603df8e93193433a81599587a6f217b3969ce526adb037a71977b3e577f8b0278336956fae7bf411b99e35b350230477d2c7c38d0dc7e22d82875c57a8ecccadb3e74299ec3c85340a75c0f9e35df954de841744f73ceeb29b805101980cb0302047c435bb500683066023100e53cfd71ce01d15398c24d161b943d392cdfced886070944e32e7d9563e6729d2f4fcdb86a2e851bc64756e4fd5b2d5f023100b69bb73648833ad3c96813f149812d8acb2a308cc0470b3c5883f459bf690a75c85d008e6a3c551f51c5cee067abfdb90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303613ff539fd7d9c245b3794af3a1338f1acf72f2724e73daa9e56e338fd94efd1d8f8a3105772a27d4995f3754af7cb402306f113abdd1e01b0ddd6d2997e6bead71286998e35cf20e2a2fcd1e46288cbd4639fc752ea2d17e0d2106ed88882e93f00302047c435bb5006730650231009a8140bc3a6347e2501d9a9dca95c477add28316a47e0050fa128e0b136bf95d371aa5ac38e87bf79b74c4782dbdc2e50230069b23604a1529471cc7b5225d06849cf80f2c41e61fe0c368b0df36064b5bdf42da3a94baef2f0ff8e34c27faab25700302047c435bb5006630640230055ae4ff850fffa98d8f12c9c556c89191cc01788effa04b077838e65b5edbfa711db578f79da9209dc88d910565469f023057d6915e3c0e078ee22af1f6bc5ed52afc850606dc66fda5165a03b11e3c93a0446573299a673afb363e5079d2630e390302047c435bb50067306502304b808572ff049350a64b68ba25b20f118d5c815b738aa60a0b779d94885fa54ea538f06f54593e8a6b7f10814cec81b20231008c68b1e1a0f973ef4bc8e529ff0af7278c4a7659b63022b5b755f4808ae25cdcdc9cac721b95b4dafbcf70d9511edb980302047c435bb500683066023100a7da744886c2b2992f1ffbe0d0b41ecd3fa6f5a550eb0e9755d19532706cb79d003270ea398ec55aef4dbd1d6ae37b4f023100bf94709d6524093b4317cc24829d9a5efb8d58c9e054ec7d8362a4cb81d64be3b22402b34a0fecdad6405523d734d59c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306f3fa88a1aa78f24b750afee45db120f58a7c76d77d68cdfe888c25d3cd98aa5d922d16fd5215f7569af53170707a41f023100fddd7177eda84527d249dd512ba27980e77193263ccebf772e8e9089a129d22fcf64d2fb0546c5102f7161cdd84afc340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ba61d143e54097f722a2b9c12b754e23406c4fbc373f85d804b535f6747172271f537066f9bc1201023b935bf4460bbf02300af3327f141d01cf0c447ea34135c4335b4fc6f1dea3a790a87c0486f5aeef7afb11cce7ed098873c0eb17360306d6360302047c435bb500673065023100df147631ebfe8c7b182038639f409d0033cb81f2b6cd0eaaec853ae44427ad78313ee6a0199199f299f128e19df85e1e02301173dec6a4065b16fb314a7525d71930fef6884f82c068d8e9f6ec8d332ef471a63a8f880cd2b1348e4973799099c7dc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e6487976dca28621ecd8421e3bfea50eba0324cb69d48681c2e192c722f9c848c3ab14c5a3e67eda90d13b038be1d790023100d4280feb494e1391342c54488cd7d37b149abdfcafe1760278afb9910ab34157784a5ac474f6852f9c15c6c6b49c71850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023015e8149a6cf6c9ff1548102a53e031ee5ea2cc87ce1a217ad665ee97851e60d878caca4e7ff850bf0e0539e0e9d46366023100aa579a5081d29a3af647428f49cd398e2a8ced958f1d8cd0363c83f63436260aa0e7db5762ab72938532ef54461dacfa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307389cf69da51969afce30e9d250da00299eccb4e65ad39c5292ce174140e4301c34ddf0c4f433bd5fd9f089084f1065a023043e6504c6538eb3252d3829f335aa3ef88832c9f844da51a89f8c8f6bbc05a1c5b0b75a59f33fabbc8a333d9b196cf880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023010f55486e6feb136429e93c07af4ec390746ea15a597f96d2d48df27cde82849ad5a45d16c35d068b244e6b1bafaefd7023100eceedd9ebd28631bd8ee0a4eedd22462ba3f3f25b7a21611d48396f0304ac655589bf004b8909b85572e5d3e0d5287f60302047c435bb500673065023100f5e6411dae0f64583bac14dac543b3ded11b0a5e529723f8e4ba0e2e9ccbdbb368db67deb0fb3af0fe3fbb6fd81f78550230770517a40ea66c81037be950257b6e98b37c5605a7bd7ac91d1f2bf5002db20cde7953d1ab40665f874d8a9a456e55110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008a92683709582e3f74c9a4cf1422cea1c8051d6e7f12a9831c7dd1a5ca867a69bce3fbc1c3ac41166b7145ae7c63f6ed023100b54691ee72efc9291ace87beac9b6316546cdc7d743a4d25abdc4d58a9f9a9ee127b1604b8fefbfa10765f01dc7b45d70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301d39828407c29f5052ce85af9ce4a37db8488a9c02d80c4b88aefeb0a37de5070a51467d85a9e390e669603e4f064d8902302c53827feff63deb5e74181202a81f6392ee5f3e0d051ce4a529f7bfd36beb7b650a4bc672914fe7ba6c62f9a60f88220302047c435bb500663064023015390045b0336c9b1a95bf2a35482e904e5d448f6191f04eb1a6266636cfec5ed9d46a9ac26955942d6fa986a41b6bbe023064fe7e864433a6a1dc5e344f60d842c1302e3505ac14985f0d385bc93ae60bfeee8e58f28823504b99cf50c34de27c0f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023066c911fbb41b64d155d278d5d173df3927e98dca7921a7195ec998988f56d887125757a2059a2be50185a2bbe5232fc20231009a0820f5cd5f2d7f2236a75bcc99944e26bc4ff57a007bbf29eee88564b006310105d7521913bc9462aba9e54ba95d7f0302047c435bb500673065023100c8004a5619706ac0553107926854d73965c641b3a18ee61f4897a907bf770a972bd498289781554f2bdfd46d7a4ef68a023060eb91c598bf19f2d3a688a596104ceb518ff86b60977de410ca286e004705300550c1395d8c4dd73d07459463296bc90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306ab0da57cb37c32f1d44b2205dd20775807e6442be6484787f2ef971606268e9be600e70e427b4314c4261ada1e4eff5023100d4517694ff435f11085b98dc1c4ccd0ccf4437a42444fb9cf00b9b32125d6f81fd6569a82d14b4bd0f0c04e74bab57d40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100950d6b5b7270e7be72530ba19bbad72890612512e20f9ba590023ff991cd6a57895fe6c23f32bac2ba69b5e136e2b1750231008f69d3b0d3320cbaa0143723843ad52c7b41ae73330dc717baa787af181daca4808a31774569b1d0ce9dae69f2dd7c470302047c435bb50067306502300a61c1e71199e504ed57ca9cda6bc0a61f52a88cd46c10ac3b7b8f4f5a61c21a8eb2383b45fa44b0a2eb967e6b18aa39023100e587dd8869329af32a00c9925c373869453590879eba4ba157ff9f818b5eeb930683b88e2497d9ce4b0cddd64ace5b8c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023052ff948cc58b3014600c00685a2bcccad83e6b79d19847174dc7ac10deba21e3b53b84183a3a3f5ded6e924c5698ec9102300315a6b071b61357cacbca20ec8c422be9f2ea25ebd734e9a17c6a33d696796abaa8e8f60e546ceae1d551267a6085710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023015dd47b77b66b21d89a4edd46dd4e44f6c6dd643bb81ef17e96b2d892cd5c7d39bcba31cd567433ace85bc30b686b4ba0230163eb3b828da9bcce58b50d5a7e1902f08d298f30215fd658c04699012f27c70042cf76ebb5ef5ab0cb0dbcead3dea180302047c435bb500673065023100f0854334c3e370923a2bdfc5c49167888f99f0ee8c446f75b8c609000de668c3665ef28c9303a021cd2afe7cadb49c0f02300c7dcee0565803e68a7111d9d9f9d0c546baa40baa970ee206246f189ccccd97b8b23879655f0c0ea0f58b5e3754b10d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305eda283019f8fc907913bf6d4317c125a48e5be2ed6240d21dcbd4dac9fa990f9e74ee562bbf89de880317bcf5a3fe52023100c3aa89976241b72842e4e8db222ee96b1e91618bccab672a186d17a5f512688bc91391afcd36e7d2bbf833f4d091112f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230769bea3b89ee86113d3fee5638b61097ea5b68627ef3ff8c3492373b55210774e7fe6c16827efa855b60d473a65fcf9602302ca26b91f39b72ca54fa467850de4d09685890c970c6b029245645cc2b30ee2d16e1ae70de53edc0cd536604da6f7fae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ab74ba0fcacb71f2dd8610ed79ae8d3bc319eef5df51af61d7bb5ba075e7b024c83df4eb4fa62feeed4ce35c91c0f88a023046fad3c6e35b2ba71163360df6d40da1e78322ef916b6b342d060a290b021cb3b143977a68232d5a63b3227d858cb8e10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303eb11807572b10351cd8ae012ad2c298fa789b79b3dcea2fe74ad4950749dfc6dadabae4fc320c0eca05f37a4ee305b802306c7a5f4239a9f4fd0ba8c4fb277fd4fbb03f266841be9fefef74a3fb243eb90ba570746addc2c6f09ea4cc5b15504eab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302ae28c1934cf483e527de40f5da718bc3ae330bc769f5fa08e32dd1595a930f50d3c6f20d04b43c16bd4b8d1cdd5a6c502310085f388430aa4930ea2b99ab667bf199d80895844208bf9081264a8bcda82df912dcf46d3f38126ddac2d8f0fd74af0320302047c435bb500673065023100a3c7f84070ce5e55c5fae416588a1e951e47edb87fd866eb1450fa1fce6bd211d0f4c81a14c2c361f8ca59c64633cc2e02300b35b7ec4587efb1a689192127eb002b3bee0997affc898ddc545d33d4ffccde6606571912aa610c822e50b9b0d677f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100861e0496f756e83f0cd848092efe58a25252fa46b3f95f083e9dbe7b8144c2e668cf22fa18fe327e0cf3efda932857cd023100a61dec0bc3a8c4db398b4480a5b637bbf7237289e762c60a441d4302c7bc452049c30978476c97ad90fd83556e09d0550302047c435bb5006730650231009ecea4017a9059d4a4a1726944ea62f9123f90b0ef788477d1fd27d33a18b064d9a64d144dd610de859f3ac94b6c223402307560929f0dea57d6214c826a97035a9691a48e8f52a6851c6bd4680ac86f28588e63ea9b508e761ed66356bea980279b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310086f2fd4bfe39b03114c2a6c956f1b123ef115b6ed0d2d8987e21d7bb36d82e9a801b6f6de9296d2e5973659cd956e3370230401753fc3038cfea06bb14f873ab27646ae9e05265f75e82bce6d69bc1f45aa0ac5286fbc4655491fea0ec64242c5b6d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ef09f3a9971c47d0a418a2165f8979a98acbc6c22c9476295afa180a30dafc3caeb2b971b62675e7a07f4f96436ab45d023100e0b87deed7a731e86925729a06236419989c259e53555b00a26d055d9dd67780c27ef9329bc9031e42532e2a5ee161d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300f6ae20ed0d98dc704509b62c57161b3778efc4a64763ab41acd3b9e9a2f0ec0257ec5cb0b2a0781e6e3ef67048e5c6702302aabdc2fa33cc42ee72d8633f8a42cc4488a92ae52c798bfb3cf9bd738587d2c5ca71a4419b3e80ec38e8d5e782781fa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310098a71e122b19288397d1c9a0655efd6d07b7ce146ae3ea90b3db9ded0e59fead797e6f45763cac824c705ad72224446e0230260b2f152181546e8eef51bbb9ae2e8ed0cbaee4e3e1867cbfa71ac70fbce8d89d4df1cea175c4a8d7d095e7e87bb7fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e6a913ce29f0cdf2f490a0405fd9650867a5e31151b2f9e4dd06a02adffc681733d29e25373be47c360e9d8f0c4ca32b0230782683611d0ae00b18399f95607c32ab5aa5c6e177f4effc22fda9ab012a19366e23303785247e52666de10ef6839a050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023049068fc85b274014680ecc387d1337466c89743fe72334bdbc25d976ab1f30d11444125ec9630c731a881115036b0a90023100f0adb1a93448fd99904264c36ee3d915a4ec1183e5e52c4ba86a12cf990ccdb76a31786270ad4fa1d5c5efe6964e31110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307c930a4b98187ca4eb861ef9ff8b83ec663ae7716ab2dbee511076cdd8943f1edd5488986d3ff5e27ee5981a6e189d1902310080768ca56c7c1c912befb0580cf03a7dd3c653289038378abeda4069538a6a9dfc86affdd35e0cb804bb604f8e01cbbb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c157c55b256b7c3033fe4409bbc3613621b50d282e91dd10edd08f1cc48de1f61870527b389e1577adf5209344b202eb02302b2d2fc24ecd3c05e806c90207ab898be5fe6ddd7651b5ac34502f0555386ba3d3a1099e68668c5ba8fe34ddbf9e56d70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fb414a05c9b6e05fdb41bdb52a54159721d13bf169d15af089c25eb871df773e680725ce0c0868f3099273b6462eab220231009412f1d545789ec3229cb32773f33f6b869c63115be036a04989758db6054efa561f964014ef769f63b6e306911367cc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023047b0633808d2d9e531904cc29d6193838c4e42fe29d149f96123837844612fcd2a65d064c7b9e56d7dd48b3a08b82f2102304593fb82e8f2dff52f89acd3e1d2a4f40d77f71e66adb3352ff574bf2fea97510d9987a9c86f195009ad54b0ceebfc170302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a39968b1bb4952d42e703907fc4f1b18f2be26f378861caf02c71274c49b79bdcba4bf85c1412602cf0817d83069f782023061036e0c005bb1333b4c700663915443c8fde6d17b18b5371247f6906c3732d2585942c9a180d13271041fe0ef053f170302047c435bb5006730650230109cab37a47778961e1c614d27ff7120efce650814c39ccfbe230ba949076077c2f43b9a2eb0d70a6ca1c55ee19a65b6023100eb1d2e25f8d87d86c39cdc4b10c743636e9d2752f7e3b7a5886029f1998a7090532783548efed9f1efcdfca2e32aba450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305e78b7269baa2d0aebbad982a56d26ad8aa3f9dbbbae704edf9eaffede61510489d9d607a9085a86cd14d8308c65c726023100cca8eb461417e66dc275d3786196e32544623fc8de57781f3239ee2eefc683c8f09661a250d4feb4fc2e64d4ebd845d30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023049c12aff99823a0274fbba071f3b769492421a5d087a1db06819e76c7677c99d5db3cb04951a017799988e389fd6dd16023100d0e65d261c816f7dbf98a22d885b086de129607d78e42d3f15d93cea4b478346677b9cbd8e94c9e365068b8f061142b10302047c435bb5006630640230727564e8823a610b0b2b0c20b4c4c644b5ad696857e881f39adc0f40e8c2e10354bd1697e66b5f892c40c7536a68bf67023023b8218b103c47a80b1e85c4d80ffab25989e332fdf7e20272ab45e74128621fcc8b27157cf0850fc86c8cd00401bdb70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e9f83a0f42faf90739afbbcf9c1f1f66f89b1c756a9530ae2a20b761dc6a6310c55139348d217aeaf9c3a0b057bc9513023100c6ca2d7fc83efa1bbc4d7f787228936daba47fe7c00ac7aafef492aea4ca2f1022fa60e134be7219fde0cd7cc5a594010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d966072a9f224d9f3356237f53fce1cc015fa3f3b5bc7bd2b614a95e7179f4cdce20680001973ee59a96a15e5ba8183e02305cc929c650cbeff9d30d4152ba1823b711306b5ec3d844bb9bf23b371a24222430f2325cb2f28aa3f8b410690ba5eb1e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023071908f397b77bb9b9b02f3c6034df259b56bdf07320d914d4dd53e26b23dc00b1c14466ecb94088036722ab621c90ae102307d2efae2286f3e6795cda1c31bac64bdbb7d69a5f7c3c063a81858a0d8ec012e670add77cbce96f6fa6d71b17c7497140302047c435bb500683066023100cfebce31a8de3b653de883617e0e9609232b168313adcfe22dbfcf31ece86d3eed79932c38e12534630630bfa188c44d023100a4d2976a025916f7de5ac40be70ac258f7951185c16c7277e89dd410ac0af2acc47a7469997873868982508dff6a1b500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f8957b7accdfbdd1f7fa843f8d81b00e2b1c9adfd01db1678278d519e0e2bd54313c212d2b5f6649c62e3c19ca1c13ba023100d43e2c97f5e2b21e446d85ddb958d76ac7ddeeabf95065c16b0b2a9029dc61a6ee0f167b8f81cd34a15d2b735eb404f60302047c435bb500683066023100b4a4c849f72788baa80fe3d29f5f8444cf266fa0ac347900f06e87288da7d93ea6669eec2d194177fda8cf82c4b69e8d023100d7fead82945775b21bc2667e0f1311a9a16c38a605435385aa05cebfefe77b53022e71efa1df27e5dd74c5078696db390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310086456c4210704d3f3781b54de9ddaec11b5dd5170e03a2bb0014e0fb390262fcebbd1968ab1394e9e74db50783585445023100c20db7c814f2ca0eb71ddd6a6f4facad956fe9b764e019c917393b54210d5bec7aed01c362db141e5e1e532ed168b0400302047c435bb500683066023100ebf84f02ce716b2d911d45d577738824826996a3d4c92a616e907422430278975faecf662d76863395c1d54c50d08969023100ac52c8cc3c5d6695808d631bf9c9a0a4b9a85a1550efc409b205fc9da955603c744d7c3e9d54183ac058b9191dc9817b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009284b5fbaece8339a2caae4d03eb1fe594b9cf0f2eac8b9e04186ff32f9cacbdb1228235a2f64330ae550a5580b0de3d023100b199cf5724af3d8b410a8417edec1d2d818104273d349077e9d64605fbfda3308c64e04e9bd4e6647e97fb6c3164c00e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bcfae1ec9e99f0d08e7c13fb80bcc5f0cb950287e9ccf34799b7cc983aa48096e0bf6520e23a83c99d41caecc91de9e602302147059ba40f845421a4d495e156a3d8ed265571df574d2b5f11bc5ae2d689267e3a4e43b57ca2022638e498d9dd1fb50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009fd08d26ed296e0b1cb36c296325baab2facde002583c91199ece8652074349a0ce41004082de1c89a31645aee18bad902302599ff0f080e1a9ac568eddfb49e1b423de1551222174a13ccd14af7e6d01351d99dde31a513577c0c6b2f565aa4b00f0302047c435bb500673065023100a5eb07bb273c2354b89369a9bf122948a38ab12a6424cd0eb80e5fbc0d3d7a1cd432bdc5dcc81b3651eda4c07fe716c902305ed41b42ebc7b1544ecb43d01da00f05684af71df39113fa2b8a46c2eef43c57a0ab898daf3512094faa30db2a0ebacd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310090f5e841d838047abd6746aa438c4db84065b53a99b6676a3603216f99d3eb9ed861f65502f52ad641f9934cb2be484d02307aa9cad36364698497428a5d1771f09790dd18ec3ad5db8d55a15c46b775a602cd608e53a4aca52a9678ea5f67c50ea10302047c435bb50066306402306fc681a93a41c60c1fb723c87b5ddff5a8a08a4de465256bc1a07fc6583d8229e9ec09989172ab11460bd3aa7d2f9ee70230361fcbd3e0bd8869da9bf273d45ab1a369b184d43675f96f3886ab003fab7cc74771003ae2bfedf64db3d904ddebe1b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023038f330643fa3885a35914b5555a31e49452154695598143469da44d33b48cc47b25e7e4c97984c5b03e427e0c31d728c02303c4f64869893e43537bc2c8dca0890a33e9308e90993cbce0df732c4bb94aa416affd10429bf7b898fa2ef14e50986850302047c435bb500683066023100dd651e4270193ae807ed9ef511c084ea0528466d38a660950e18d31ca3f6b2f019a18d22159d6ade0a9cd9ccb0460911023100f22ed67cb0dec4009503419568f31e5c8e67f49d477a98cfcfe11cecc77fc2bde6bdaf998082e0db222c095a2731ecfb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306050baa374539babc683ef190e14e49d9b1ab3c0daeb1107775ee8d315b431fe062748581aec91b1f68fba035f170c9d023100a65ac90fce334a12ef10fbe94bbd451b14415c0880a3413248d8d1928c65d3c63baf1591c6e097b728807d8da9d2a3050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d139327f248f0d8895c21764374a0410b64ac232175844c6769d46d76805f2ffea3f94813a74e86b17412d60e6ffeb35023100d633e1ccf3271cf2ff426182149b3eb39f0187dd205226fdcbea061d8e32a8fa82ff2dcdf523ae63b294d583e8ae0f4a0302047c435bb5006730650231008dd455935497bbde173e8941e1744b7224b4703fd65cd6b956237778a45e79ac2388afeb8721e79c61140aa9d8a74c8902301dab11883250f30ab07b5eaedf84d1b6b42231283e78bfdc5a9455ae224cc227b25ec1f0e020bd65408017c7c2f3f19f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008736954eba410e8cb934a290a480ad1d83eb7d2dcf9d66cb212a6a5545d6f70aa117b02e95219ca9d76bf97994c2f8ba02310090098658f07ac040a4922f69f5e25c35cda9fa2a03b0af674d658626dafe9353c06874f34a9213b880107251a97736950302047c435bb50066306402301450393a0bd497bff19a622c7e9eefc36e797bddfb7f647102a83e6b825cbd12e41d48045467f95f2cec2c4f4eada5a102307e9df0f98649975efeaab1f41b5a020c1ace5cccc87926302513756d948eab99e1dcc0fe1f383535b02ffc8e8319d72a0302047c435bb500673065023049c01dfb324cfd036408e80e62d3efaf1eb232e6fe75d8744d8b92e8b2779bdd7fda33d8b5b1b46a925f5c3b6ed03b7c023100ee97c6a1529509864a9437267ff2c77d5216cffbc876836b9cc8a199507b96c4dc8235ebdc257d9a3e4a81474720fdfc0302047c435bb500673065023100a039950baf3ed8dba652a22cce81c59108a20011e4e9389acf1b9c4ca3991a5d487c88038b66209d4de1096817c20f7002301018bc3a08eb8e5537c9efb2da01518dd4b5d8a7b85fde9968327eeea565b1c0739d34b5f4887b982567827de6f7b5870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304e88e2e899b8d3760e0c0ec97187425dc00919238c5a31015f52281d19b398df9e0fff12e4a4db53fb427b0a55302bec023071aa52c9e248cbd55e711904dde1e754259f38c5ddb69da7717c2b8820d43161a16b0d888cd533cdbdad474dc6f2d95d0302047c435bb50067306502303a4d9e74a601a4d90b669c3275f9839efd83f94ab36972983275caa795b167fc8622bc53a6ad5cedd125b0346748c6db02310092c8a2fd2e1a2b0acad01f55c39f99a33f29ddd15fe04b626bc5f6f3d55cd7373aa028d3d35c13ac476f9342c839b24a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301bd3bf854ea769e49d5415ec074b57d82aec0d31e3472a207dca7970d4c45c7fe954e2ff5f8e3a44386584e6ec0b7c63023100d5881b3bacacc0fe25c02f5bc5c6a548af208877bd6486630ecc15cbac3523ca48ff909bc782624aed4dee3cfedc0d6e0302047c435bb500673065023100cb558b29ed7576441c4bd76b8edff3d80b515ce56ea15810612fb5e8103b39ed2c501e6da3f79dafc52d574ff568c718023013f9b9987ab336ebd61af98145a678cc24508237a27bc51f354f7f6943bb7ad92802064a3a942cf068473b167e71640d0302047c435bb500683066023100d2ac3bdb4c56f994859ae87826a75c8cbadc0dabfe1214ae4435a66643c91a23c8cad6f6c66ea638ffc2d327d621fe15023100e315f2209e0b999792b1e82c04e467d1fc9546fc7b1c542b19e7b616c4d41b3b9e189cea16366f47998de06ba0d6094f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301f8f5b0c003e587ee998796a0db7f27e392b2084e4fbd7cb76516de9362a5a708df6f5742bc4824be8e3133fb212f8be023100a50b66f8c13bfe66112fcd6d8b56d0f694fac2912d16058b38180a0b4dde48d5ab9ddbe45034d82a1c7d7e600331e43c0302047c435bb500673065023100d52c9eb861696528ebb8f30f3674cc6c8070fe9e4bb125a93c8c41cf231161d7b119495fbf526163102c9504e711402d023052c737166ef3bf5b4e984209f13da5ca68ca01d7eaf5c2e8b0f387e46656a375953a47f84ccbe98f773f23093972363c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301488fcefd6e6404877853a21eaa56be4e99dfdb82e3feb793db8f5931bad2ab26addce74c0f9a0b57771f79ec9643e27023049520263997147451b8b523d5e506b40856aac93eed0568ce734518d3169785fd2d5d7c5bf1ac6794844ebfc5842f59b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230521f92aafc8288f8c7d52bc360a43bf25e38781b5f60b431f3c4a6000e1b926a3ac386493b4193a60361f9b067e433ff023100b5f93a22a17be32385befa8c5e181b7723a9bff64b9dd3616559b6646d0bf6362747e30dbe9bae8e2cb830c5a83110870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c647a70c8413b45b37b6807c99557cfd2fed42b8193ea057401399dcb48b9e4ab9f93fb1b0581b6fd4c241d2be938b7e023100c131a8cbcb3094cd391d26bb8915a18b06bed0ccbbd40a117189c09450c1d26b5b3d6f905fdd37d3a348912ee887e5220302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e5cf6c15791c62ded5a857d29d7377fa1eb44a08c3c09ba3131e9cb803d2756f28feae6f43c7ad38dd3a04e0e7cd186902301bf3c9467508bd0465017369c5b55d85ba5bebfbd4ee0ad9ee23e0edce3f6433d8f473bd217cd6869653d495b5cec0c80302047c435bb50067306502303817454117b196f2539beadf97922c0b4245e0813a94974340ff94b3cf88102141ec8e1691a90ecff52618c6c7c5f765023100b791f673c12a2ab42540835730f479432dafd5b118359ccad201e4d801c23ee0fa96b48924ca51101d22a47c12215b900302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310083f47cdcf530cbf3431a367ce86d5cb16a0f910fcfe38409d8fb7b1800f1bed9d9bf22372df6b6520d47b72dad6aab6702307e6d0254da4cd79e17b0eeff2f84ce0a87480f2989791e49ccdf7c88ec363b79d09f68d23c647fc529c5b836f6713b570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f72b92099de679731d67a58c38e5479b69e2a1ca9ceaa920b44f4ec04ae09744e74efbf23ac549dd4987f2686e719cc602303da760a24577f7f13f08d3ab49f1fba7bd5a10763d1e0a2de3e69ccddee80b54972f870138d8098deecf01d3c4a216940302047c435bb500683066023100e01e6e68f74c16f2a078b5da02fa59fb83bfda2dcdb328268b21e8d6c6db7eb6bcbaccfa228257660fb07cb1cd85ebae023100e54cd118b08c17ee0ff722f2134272d9f89f8a81533939f8fffe0a127358c54d0c384ca5539099d28efff1ec75bdb1030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100823fb5b24ccefc393259ec9621076763c4e57e03c2282a8d0b4dfa12d540bbe6077032d9ccce5eb334cdc09d08131919023100b736c00e1339a0d5dc9fee8d76cad65badac305ea0a72755c0f87edb60d45ceb95ec73dbe1da3a87a2f65e399a961dd60302047c435bb50067306502300526b736e674f14fbcd7a64ed405b7fb28c051695216c4979f830984a3337c63eadc0aa0e49feb78e9cfd0d6d1244296023100bb84bf0f6a0a70def07a156e18b1e3be286e8914a120f5690172a4dde7c8074ff6627a57a9b852f2c2511b36e96fd2e20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d0bdf58f93e1e3eca4660bf2cacea1c53b933c80c6db7a4054ec536e1e81b709fc50fc107f13f95b188c6e86db67d518023100b1115b0f6bca569556c2df6f62cf71814e78190250b51c508307029fae7c491fb2707ca9f265fcb75c11c88ebe0c02b40302047c435bb5006730650231008d5b15a00bed90ebc76d5b8bb5bdfa333a7cb545aea46c13a92b821bcbaf433993f29a0d21d3d909bd614037196bf57002302e015a4308f80bd34e6b661768926a903a811a7c0e7f2d4f0211c380d855b4b92d576684b241480bc5de603970db5b650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310089bdcffd5263f4c786435f3acdf38d5bcdaab7a216e0a940ae449893db3469348d626729094f00a9475273c8ccfa2026023007327ff0a8077542ab5ca06da250f41fb7d25a6d87e146506dd5eacf99566ffe9ae2d7d4103942bf6cd7a342efd025190302047c435bb500683066023100ed6b9b3e20214d3d4120d2471ce449f5a72f7361096d8214ad4c9bd31642112cbf2839f50e8b6a75932da406fd019c570231009ffcc4d9c8e0b8ae95799da9c440434f3b928ffaa65903b8e0d7199ccb2712ee4dd068350e1aeea5237adc16e5713b370302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303c2db6dcf78dd5b46fc98205f847eb371fb8b7d0e83c6b1d078888379254dedd83a697354f3ae6253095b883bbc24df2023054d522fd6853f245290eb4d05e94cd9e7894d8f0bffd0908fa80278442f663ff0c6eb22d2bae276a1ef5141a6410c4f60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307f766b5e767a98dde30332bb12696c237047abe12aaa30664647e9f63b0d38b91337661614fe4e625696be8fbaf31bd1023100eff6702dff39f97ed7a94b7747f895da8af3baa468d1602b54543e5c583ab7d0c259ca04e17ae061f7d2f51cf8a5dc010302047c435bb500673065023100e577c61ea76b72bc63c2d0195064eb319eb7047294e4a583dec0196852dd04fb3adba72a37312522308b8d2079ed33da0230731a1a8e025a4613eb4ee365cc846ab7464c2721bfdedb31003721e9671d21d15b9ec5977de0a0e1616db631e418bcb50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100945438c24965e948e4b79af4888b3d373385524ecf5a13018211e1930f760657ef2dc0b60ae0ce3280202088b4df661e02304bb676a6dc72cc3e21cf7413159ca4bb40c86e28233c46fd8cdde98513b4772092251afe60eb017211ec62b7ebeaffe50302047c435bb50067306502306b2f733f54632277eca29bee70fd4e40a8c259e84c03ca2f5173cd1c3313a43af641d1c52e7f43d4a6845cfb5379c102023100d22c04d60dd8138e0e28e7f9dba8af4ec9dcf4d0e514c7dd1f97663626de38253474f3c8ef80b016eaab10f936e917aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dfb40c36548b248389f2b67ad9b4427ace934475b4ffd794d903a8ea2cacb8da11d52c93b4cdd53e4a660227ef99a932023100a5202d80ff1b47dea0a7454072d6719347e3cc285e2aec5c540ca2e9da02a0edb63bd6221ecf1a34913fc9706172e4520302047c435bb50066306402303441c607d22977ac9c31bd1379ee05cd623a709a5527b80ff06b8cfe5a60a0444f63670df103f0f4d42ad939241df50a02301fb61dd10c4242bfa167dba3be4e063f7149b7b6ffdc567dab55d946832b561dbbce48720e1f66aaa51a975985a5bd340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301b0116ce0dc810553a889f5b785b80562aad605f152d8bc8b3ac8d30379a14b012a2a55380e6067aef826c83bc2fabc1023100e029919202cbd780c42c4ce3821af9bf2f6f32829a32376f5495ce19945d5eb78c9c4fb17395f49d319fbc368f3925da0302047c435bb500683066023100a5d107238724c3b7a63781b2186256d2e3af8621d13d664d40691d16a14a9c39cc2489e5cab8fa6dde614e44b3984012023100e341a6c9b0bafe3932f92b6526c136317c7122f0c8b7f2c3a34060aa2cce0bcd1126f230fc42167e3e14afcb2f9e8dda0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301f771c10c78e63a69454423cfc87f99fe18f33afbcd97a01bb78fc8413bc674360bb8c37a629faaa8b91cde188f5c7fd023100ca63ed53af891263ceb6353366875d0da48755df3713ca2d5d6ab164d12e70bf89e1648d7b93b0dc8ae1b780d5ca20960302047c435bb500683066023100d363259353ce80a533604d37ff4b1b85d256e50c6228dea52ae8290a0844a0520adb1419ebb44761552d8b848bdc26b8023100802705426563a0287702bdbe854255ac3be130f347cfff38a704e4c3214b2942277cdc17ea9c24f22e3745f8b9109c790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100be463919dfb32e5b9d0311b9174765dfc30cd3b67861a9a0531631c4ff6cfb9b476b0bf5a040674e9b86f9e4f5084b650231008e6109c9ed5a604d32445c5268e3ceccf47d37021e2f762ea7eb7a1d489791ab545a6acd0f53c3b6b8805295c55e24380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310096d5797ff03616a83aefa625e3624e28614662d174243682f2def9e26ee89054f4eba9f5863c40a940fbbb4b5ae8f2420230350ea7d521475df23ee2e54b5703058f6115195b957c8937afe4bcaee5f171dcc45e553c460f96f9b179bc0f84ef6cb00302047c435bb500683066023100e884ed3685ca6562df0d09a47dd42e29eb4b924c0efb57cbff09cb3693bcb9bb3efbae79807ac0d334bf6725d2d79ddd023100ae4865b095ade9bfd58e2a55a361de5f5acebc34f1aea3c80bd53ee90d66a9d41f8ae355c2f7ad71de7f85aab7bccccc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230250429ac290b385997c5d958e87b8d23d57417695fbfc76cde50cf92ac3f7c5c066b29bd7a2986ff034fc1dd51e37ef2023055ad9b1de835228ac12950dc7de912f841a47120372ec8328358920797ba8dfd714bfb8c780902a14a12ef5ce93902910302047c435bb500683066023100c945891e1ce6689ab56770096d75674432b668b53ebf55f582daed3e619e4d2423b19e081d2848e4faa1c29dbaea722d023100b4fa736759adff71766259071d419c865a96fb5eaf6c175c029589d9ffbe8773ed11c319ad2780a19c210cf0050b95d90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b323f9a0b793c77ad7a80bd39f6159c4935281d8a24961eb02c434fd0f92ed56b0e41d766cca084705c6898eec1510db0230722b00a013351aab0d10bbe8b6c993e2608bd7b4e0c1de5dd63f718694b4e3f6be5456b33d9909947be4329f4909c2ff0302047c435bb5006730650230308a3facd4cc0e484bb757c04b325a03868c425f27cac314bead2afebd932a88492f9f76772b27981a5100437353b60c023100ae7b79f47cc53ccb8d446a045e2f5d42103b45abe5dfa9d1b4d9164f54d8481124daeeea67ecd89988a9cc532ce073850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023044d0abda576f687dcae92dde4f2428c5eb67419bfda49bed39a4bd7f76277b8c896a87d33f51679a0ac8abc249133f1902307dd2da326b847e6ed74e7aa869f4c0a980df8dcdc1da8658ae270d774efe46778e5382543819a319cee20d128cd276a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e29a965e8eedaa91fbd1699400c2e3ef256294e7ac6b83c9aecff4e251abb9d6b5230df4620fbff2125da0681aac5b8102307dfdcfab775d14731f093ad60c874a981df7b04cd9f82cb09c2494082b31d3629d5226b57de8e39e12ce8e59189453490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303005edee6c06ca5ae6a1b02aa20f91c5148d056c7037946e95dbc927c2705c3f5f22f86bd0ed0a60d0836e753d2155dc02301f034e8fe57daf7cddf5033eed903bed9fe2583717968e206e038ea1ac608b92867a0c639702fee42853ae82899b7e5a0302047c435bb50067306502306499eb46eb8c391c1312c8b735c5386dbfb825ea12783407066dd1828a8db4876593c885217ab5acdbfb7bec616810f30231009fd19d0b659df9acd5d8266d90f4efaec2a0f00a681d86918fde5841d6e396b000d22327ba1807c885c4932fcf6556ad0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a6f6c0ba6f51522f31f2a39900bf6a673b888c8ecfbeb6c6451c1c503b6a60b9b54880bf554882c43b1e43aa6eb85309023100dab17360796231a718f19a3c6c01725b28797e544b8dd94be1df7d0a4cd478a2fee6e037a63a210d83f3075372e66cde0302047c435bb500673065023100ffb0a8a359b2808b1b3864d5bac873e8aeb2f61f56e1749575e4fcc5465e67fe850a94c84bc796a620ec7ef170c079b902307c6c5e6079822e24e9ca3a178f062516957b6423296c8e302fd8225b8173cc01da4150bcaecf56c3c87dca3934d173ba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023076241c94f7d4f2d6b11f9979b3cf3a8d6e0a0ea82af7eaa6c8c3c6119d3a6c90b88c32101397aa40386989fac455a885023074d08cb1acfc6992597fa5c427a36e4d4ce8aa726cdde1a8010fc3524fcd3c9bf019b9868d2323a99167b1595ee510df0302047c435bb50066306402305983fbf64f1adf81def3e2b20ac2e0ee1e678f4ce2acd8c26d26799ff5b176e682679e360005dbec2c371c3eabb8048602301c55a02e91b2726ad59d0c91d0df2fa8e899bc9152841af08ca1e7f90d53075b26f5f0003a77e4b25fcdb21f4f5f698d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cd9781bcd3c2bbdf5d8bdb743feffdb0fbe94df3a4a39b23884864719a16825b7c09178fdd4add067a07eac9bc27c73f02300641e6377006252f0c55d30936752703919cc36d675691d517aeafd7b88833220cb852e62f9c29c8ed658062a9ac1ec10302047c435bb500683066023100eee6b085518e688c24083600638780119ff8c04537e9bfa20184d3c8cbd6b8ebde738ac837c5782c5d57cf0eea6909b10231008e989c312138e25975b7d8a81f49ae2823580ae6eb3352f6ba1e8d0c00d7c7aed50cc3cd097b85f581c5f728d81063f00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dbe3e4f1be7fbebf17b9ee08a3630f33ef183d1dc79ff589fbe4ebe77a3e857e53f253926d8a593792601dad3b3708aa02301840d9f0ee696d74d488959d6226c4c25ec4107ab7649b74a94c6f7e7afbccd2745f2d6954c9f539885d094f37b5be650302047c435bb500673065023037448f8fc1ef57e7941e79db33b55aed8941412adda908958993bf035ed15a6e263353f015e78dc91ccc42be255f7f96023100823f16dfdfb6deb2c0acf091492e453b4a50d33da7207fdeb4342708d292005ab3f152f7130046d966a35e61c32dd7320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cc5ae1b6133ab0423b7773d4bf396fa87b7ddf2adb9f6a54f2f4f6361e91237d3c70f3a0bc515d46846e8d669ce67aa4023100b1aae9ab5936743889e9ca4179a99d7fa4736aeefbc8f264b2fbaaee0e51e6d35eb80778ee5910f6e2b902eba3b82c820302047c435bb500683066023100e87e10e18c4187125b06448d697489db4d61849e4cbec730a60cb640425706deadce07e33537792948279c7630c39c850231008d33ccc5b166789f21e1b2422ca7224baa2c24ff1a480c47636a04cf67f6c28260d134b9602b4f16ecb3ebf3304561bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a3376fd37f8945fce701272daf4441de674046c81fd93ed9415dcb43d0aeef46f40f0e44adc4d9a9df2154946ce7bf8602302a016f76333735a3024af246f53644adebd877089611397b7beab3ed25488e96ede3e3fde0943b280e9ccba6f089af520302047c435bb500673065023100a96fddc9cfb2ac376b2ecd4ab483a69be395dead3908e1b5caa78134abd865b39973106ad19a1a07f2ed0704945e8a52023020cb6c6fe63a7814cbfb4f2d1e177d913d8919b7a22ff5ae639a928317b38c356b213a9fa49b112882cc19c9af3575bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b5a3b979dc22b5b6af3b56c851cad6f962571af6fa534b6e4e7652b595affb91f59a035d6f58e7e4ff3a426248dce1bf023073440e26f98d54c97473feb54455587b5a28f44263c0d895e05b2726f9cee2240d1d5cce5e677d87430e88ef7465549d0302047c435bb500683066023100fe09f0ab2308bd7724852d7290f82eed5d7914461bfb3c1e2c0e26c13493999f2043bec38ce5f9e3e371aa09a4ab5705023100d7e58d0261d803cf6100d1665694e7cbf1bfebe097bed9864e4ac97bccf1450972951f6514229c0fa22aba0c4478ad0a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230368aa5eec17b2a5e2b02512f46258c226fe3dd672621de91aed3bcc66cde08fd3d4e0e75ed9478f2947ce82dde435f1602307a9cb59fbb1585961ae0013e48214ace832b65897e5c1943f9c77c41472ac59dd8421c1c36067cbfec6bf634868e30410302047c435bb500663064023005f0741503a6a17d1a920fac569a331593abf2f44ea621e5dfbfaaf98dfa4e71fca29f358b3904ed8f7f3998c7883e8a0230063eebacde080ecf23ed9c57b863f6e282964da1272e3abe30619cf76fb4e78745b571f19fb70e64eadedd14a0832d840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009842d90e1ef40544f86473fa2d6e1ad35bb32724e2b0c406874be7993400304ea171640a094331aa999cf2aaf13ef2f6023100d690600214cca6d8d33e5b1d7fe20bf6e9cf838af59dd3a25f4a8110ce3037db8c95e618a7c70388d50f1cd9c53ca7100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e92c8a5aee46f5d02f97c9f4a6365c2602e2be03b987960ae9bae7ef6ae0fe49225793f4b6b46170d795e9f6468732f5023100821dbf1d15d09c68eb2951d5a6976a7d3a9e745871e889b271e165e6a63ea4da662d2441919940c57adcc8daabe31abc0302047c435bb50067306502300bc4de4f20667a1e1a759c33c1c9ba47a0840a77b56bf94f849ae9db3b2bd7abc17ead3bd877869deabfc7d3513ca6ab023100ddecee86dc368aa30a510b5595b6994925bd31b0526c964b4fdaa24aed46a91f20fd751ddae93403c23c333fc224e86d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008f152e85236690753325d56143df86b4aa9d0a84b6bfdb48529722271fb21972379b57c34f9efe92e473fe762cf5c227023100999d23b29da2ad7858544b56af57d9cd943782b36400228f8b973338979f693e6f4367049043b3671db86cb7ccb82a730302047c435bb50067306502301ed0571d65a51614221b126d14bdc72b9ca7902433b104714def7f62e14fab8024567365f0a3f88b8ce36d2c43e07f5c02310086a5a72821c56e076cdf877daf3fdc45662b33d6880a71162b420e5eed219f5ad948d28174acff25508457972dbbef400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230483393dc375eeac8e3a6df2ee4328ef400ce775d0abfba1372d8223d725cbeab109574a4cc0f02338cb858f1226a1017023100d6a95649bd8dd84e5a9d7f07337fc2e710031ca59ce3cc0a42f0dd1961635f014b14d9ac0831a93e2c4481340df20d9c0302047c435bb500683066023100b1a21fc9710364fc06958bea3add2c9e273f8dca2c045847a7003737952016eeb1a11f07ecf103054bd1aa4ce5bf06670231009047831b0fae86fa541b7fb194b690973be5dd011138c6cced95e33504af1389eb24ee39afab0420d9ebf4184d06c5c50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a9543ee825d04a3f968794394fb6a0f8121e6cbfd42903db7edaa33fc0719fc174eaba8bace34142f17df0ccdc41050e023100ae620db12a2bcce9ddc70862dc7d6484c9588971db6ec1f3fe16f330b7e36d08bd61c96657a6b1e0486a18d89081283b0302047c435bb5006630640230449af0cb6f926e954eacdafba970a69f40d16b715dd789f17c9a2001f45f9e316c8f485c1a8e34a59f68020936ff161902303d98e3271830d930595ad8db486a620694b234b65dbe4d7459fc9f1dc4535d4beb3cd4b50591986b5f49369bc801d92c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307f501bb51972a666ba4371f51081f4bb6504b3c8380f146e377c90f3cd9d30fc44d486426c885b082a0acf1df079d15d023100fe59038019e7024d1c8743018aef658a252b8adf6dbb27f6cbdb9d688ffafe134512354dbdb4ef56ec45b3b7a71be6710302047c435bb500683066023100cf40cff25e07fecbe915ad848dda5745d4435d3fd89da62bc59a07e2dfd078961663e416fb79744aace29ef149c3ab7f023100aeee02b9d0d3f5a317283ec655c69e37af6bb10a4c5b1dcd46216ca1765330fa624fab2563b361fbaeb2953cb4e5cbac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ce3b12fa7661554962b99e3164b8fc426a98ebd0b5cde5b45531f42cfec0ecd84ed05af09aa0a43915294c23aa8aa913023100948425f560af0e5385c5a302a9b04554666d5b91d17538fc52a15304b11fc37b6121a3d2a81644ff7929cf4955f04a9d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306f36f111f767f77ab64c5aa3ab04ce99d14968c024e40a98e9e89463c21fabd91a993fb4d7d27af51ef475cdd2786ad70230677885b835a4fa7e91eee5f146d89a915e440c0d0d78bcb05626f9ee3720d51c822e3f6e7d88212163d0470c3f99c59c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023007bc2ee283a6ef76216f08743d55d14f1be4912f70186e3f06915af1cf560c8179bb01a2e8cec96830fc631227cf2ac7023100bd66321c47edeba7f4faef764b5fd9e40e0e7a0ca847f833f2aee4ad7c171bdf397cb8868ec46110a8a8c383eb98b6e10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023045d3950cceacbbfc28618d776d3c60c0ccfaf9045bee12642ec41653e9503e5ca37fdb1fbce2cdfaee57254d0239276902304abc9e87644c346de6b2d986282c966ecbef109932ca1342b7cbd054655baddc119dd918b1855c79e0dea23e961d03b70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023012d4f3b75ca100071d8ce640e08c4f5c708722882292ba95b9e1ca63b2b73b4285f4b39bd58651442467b4ce77e31079023100e336837c56d244388e9fee74071cdd3fdebfd94733c30aa85431d502eb1c414adb74c15fef354897fa3ab87ac3dd55ea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230530a67f5d8cc3857cd9f577bba1574f87a54f33c77892f1ea5f7abf76a68afdbd058a2d7b0df19c31241a2fa71cee81e0230600f9f5f690afa8e4c6e141654c26d2569fb223a56b251464a35b0effcc2c3d5f3bd40daf728e69dc43d9584a8d41bff0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d022b84ff9a1014135dfc7c4da2579b1d40349796b883e0ad0936880cc47afb3764ae6361a30e92881de964a7e9274e502310085f4a65c112a4d2a9383239a7920008bbc82ce47196cdfbf6bc3c9db0eb5553eb7d0e2714ebb047ea3aff6155ebedc1d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ed7a1e33659b7674451bf01d07a1d70dc0a52940e14cc59b369773ccd45ce57af37381b80224ee92c21050c260ddf55702310082ef0e6b321dd9893bc00db244a4e37a30ef116ed8d27c40c93059c0b16bfe29a465222a1442ba394ff9a9296fc08e7c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aeda97370204a50e6edc84faafcccb7fb915c3e4b4f270863f44900050198e0047da1b89e58f031d03b2745f89c1a91b02310090c90cddcd0b6f75695fec873066cb13037e5349bca9ea6a14d4824de1d02e0f8fd8d21c3d780ccdccd48fd85c4538e50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a9c3585bd13cfcc941b81e5a717c9d7eba9781b643b4ca4b5beb931ea966fd631882e30e0d837f0334ffbd8e727839a3023077b5b3cfc487e4f040538ba34a42c5b5c7e9030a0cd34b66989a8350c194390bdac028292014cc2fd1351b5f7eddee2f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023058505bcfb74e7b5e4b741c29df095b302c422aaec12d01df05347ad040af023141f9a4fc91ebe8960bd7dba97c06b830023100abd4138711b49d572ffbe5bbb4234408895da72d160e5eba79ea9f0c974de8bb53ee46904a41756b74ad08021e5b96cb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f2b54e73f42df054bbcb0c1e9126116cf6a802a9407c8b828e233e1f8e022d01463b42f4aed29cc0358ecaac9999401302305dd0e11e5cba149b996ce85cd1beb3690d02072d4cac31d8df75baf05f989a4d6ca51ab6df6de1df8ac7360fc86bedf60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e39a2ba5430c3094b7fad1b577fb206f602967b9864a142c0e1b4c711b8156f78627bb70f30a534a6b1f90837f789c9302301e359716a0f7675ed3f1afbc2fce30a9c65d0fab85b36a0cebdc7ccd8641b75aa01db7f45baa326f5de68828a58aa81d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307282ce1328c0a13367318946e185cbddf2173bf772eabaf84f54f00bcf54f25aaeb6fc5857ee66322c19b9556a7bf64f023067738d8a68b637cba8e84502cb14d0f258687f6d68e343cb12950815fffef507148b0068d225bc0e35436cdecbf2d9c10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304ce6f005df58cb7e5f81914c86aa2e4f9e933faefce0478b46485a6ade6ef3f1047dc60a23a702b76011de62688de0b4023100d948943086e0d90f3659de2972c8f441824fb1766abd78b9d1b65f8634a8b87af4b6e8beb8e43011ca52e1c5047fbe860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306e57f09e061cc80adcf863d2a02aa5a8cffbea2456718f6dfbcec48fb35995dd7b9d1c49c7d35dff042eba27933919f6023100ee53ff318c1e391fbd610155e081854218a686a061769f61bbf2c89131550a0b79d2a1f40f4ffb81dbb3881d7b25ccd30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230462df7327bbd9ceb19bc847680b3ad904350d457e29269a0b0644f3c2cd0d61d63afd63cb3c6933d8b597aab373dd343023100c643a5bddefeaad5a3960bec4991dac7a2066b38dc4989bc3ca62b61e290c115d21345f73083bbf7a68850700be354890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a8de95da6d8a4bca8eea209eec7efe595de16264b997ec081c28f3ec9e7f7cbec6ee8b296c033cbbb25384da27d35c4e023100e6960e8fbd3dd7f13b2e6fe45a4c771675865160a39dac846ce9096c120667e4c3f25a86fa7751794ef03d671e8af2260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d8b3494860e7c6382c4c2ddcda77fbf80e429592ba0a9b76e65f8e2cc68c3faa270454a0c4b8977849d1dee3e839569902310097bf4b391dbf34ef21c3dee673fdee3f30653093c036acf7ce640435e1b2a940aa3197b8e21f4ee3c1bf591b28260ad20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100979453708d3e147024550dbf0faba2805af1f028ca5011003a44e44915e9cbfa92de16062c60c94477a74cb7d6491da6023100f00fddb35c1d1fa9aa6689eaf3b8344c7ba7441a7594e63d48e51b13dbadaffc4b98e1ca0a0112acea9fec08fe8da5eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ba0f97ff279d3927e8f55b55cb009c90641d71c63360232ff2173f1b065709cbf3e2d97d745d6b0cc359afb0e1e9f5a602303b1fc648256378901bdf4a25a2cddd674341b2f07e7218a260e60852e88ad634945409493a93fc69bf67585799a880e10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b120fcb90e3a1e4e828c40818ddc7c74d9e04889db5bdec0820d46c4b2451b3726cc53763cbe7091e46aad65eefef6a7023100fcf7e54d8bfc052ca352ebf942b3cfff80d2bbe45e4fd2892b87ea0dd8092a2af103fa9e33f7cbbf09faf778878b25020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306747761aa2c76c94f67d4b143ed2e8424400cbe8a4cd5ec11df5fb8c3ae7ab63e225514a17c8568b52d9ee1891c898e202302befe35d9c1c595471874092b1be6378ff41125e838d7cb66160025ab73276c9ae5001c29bc099c650059dcfed0df7ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301253c2fedc3434585ba35f6d986aaeadc497fad0aa5c4ad76901dc1893438886853fcf069e3a87d330363d35868a84000230600bc6c410e1d2ed2408c7c67b367bd6413bb0f69eed34fed37c3afdccee61416b9bb2f8d018f9b28deadf6d95b9765e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023022fd1b9e7493efa5f9231ffb106a7ada601d7893ff467fbb3e6d3d8b1e13093b6c4d1b88fee97743c72f502b5ed5904002305b150e6fef214d239f6d230eee52d1e02cb4a6489fa33ed246eadc1209afaaf5e510a4e3c47e1a5e05d82dd6a24536f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306d345893b5e84538c505cfb043959247f4e04a7b3513b8dc1580d89acf8acf3606974855e6d037eb650c6dbf810e496b023100940bca8dede3f70d5057d4a6172bc1819f0d224450ddee7a89a499cb0aa4b7a0452657f073c28467d6565110e8ee64f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305582d23f57e90a8a5ca11bc64cd4abc6ca79e697710d3db089d9ac7e86d9731367e5b1caa8db71c966fc094503ba87a1023023a15d3c980466323583aed818bd949723a7355522873769d20fb7bd69b2945337f612d85c8fa3c5c4f1899362fd53900302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306b612ef2f6e775d437f6328f893bb99bdfb7b411522798eefed1c2e392b3f5de770c2518b6a2d6193ff8c590043cedf902304fec7b0d7a40ed31c760a7d2d5180111244969d7c9a9e5dfb8bf377b652c81b8b3051c397826751f5b81a19165f0bfb30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023004960d1cd1df6e8134b1aa34889ced0586dba691c644b91c179300939d2a576d693f389b03150827b5828b8d8c163ee102305ba77dab6e75d2171d15f1e3b0c83092048dd56f0dd0be98fe596c387071ead1dc1ba4d8810b54a3885e6f34ac28421d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023014c3a167cd0339eb70717661717af0d3b189cc51aefe8f4c9f6a649a4e65a333cf17938b23b6e101c275279f6b65ac94023100ac1ab3c4f7e8441f3dd592e6e325e2fe8c8e2797c11627a207125ff8a74c191d22201b4ba374a65c047dd33b87d68a730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b339ffba03e0d1d55d9ba38cb7b05baf82f0f8252b3cc256c40751f86040df023341e92508314294b0c62a4a82b60166023100ca22fd044d7962df2e6abb351685a2ad8ba5900d33922c2bbf0448813dfe8542f53a173d41e585a5b6be1aa6104593200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009baec172118fa49fe2e321929611a87e3abbab6138ded77570b04f9bd1f51e87c024530ab7702e762815fa07124c150e0231009b8c5decb55d7a2463834d7e5fbe8e2b16e1c3237007e53f6925f69fcce30a787f2d27a91e7e3bfc639f0e79042071e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bbd555b14aef6d2b210a1e5dce3d3801ffe74a96b81fd899edb3d27a0b76c0a7503053a7cccc50e68d5650e4306b448902306701bc5e904f901d4a3056b16496db8cf6ebb9a91511db443d0d91ef7574cb4043a9729353034d9206ab1b715a7da18b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230584bd86078e7b9cd1ead0dff84372d49b4d0e270006835561ba89de0c92ea834dab50eda46b5de886ed608590e553c6c02303738edefeea35fefed5a4ffcea7a317b543ce2e196b06383f462dd6b8c855a5a509bdcaada9a2eadf4dfb974330ee73b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023005ea57eee7f3c24ace85a79d869dd9f3cb208c78d71ea81fa5fa7607faa61512710406078319cb726a863ef26cb77f4002302f7df90fdba4971ac1cf639f19a823f9e44a2a3ecc8e523f2a8f6e5726516298a067bd14d10590d217edbc4cb6a90df30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d6665bd21bee5d174c21c0803aa2f706269bf291de6afbf2f46b92b18c2e7d956e160ae6284b726d266aa640433e4407023100ea518ff682e2d9299483f448877f3d56887171d3ac7573391054795f8d1633e367d547fbc9ca3aa8959284b4d09d409c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304f4b7ad2f488c870c0254654f851f16eb5d6cfddb060010aaaf817f5cf2503e57ffb85f1fc800d9e6203f6f179ca068d023018866640eda8a35fc7607b0125a9cde063a9c10f52d79d01c5f9048d019f33a8ea9c310e6ca670f3a5f1e4b5eb3c260f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023004bec237b9f65178e0a6822abec21d6abd81b2d6b6795f6e88b42049228aa75307a7e9489eaf06a56f076adaf00066d1023100c92652e2c563f485832d745613ca258e5e62d440dd4b13eaa1f3f3f99e5370b9db473cdfd987b1d3e1365a2f0fac9e620302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fa65184c543b9a01e34d8efe8f8683244d29bc97b451d4012aa3cb307fff25a0d36dede90bf064578668e918e95fa79002310089c61aeee388959dfdf8df02b680b6aa1dceba325c5628b7cad6848da0dc1cbb40ee61a2856d6779c688ab81f9df66cc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300fe7c96d8ff1ccce0cec47b481f7ce37f9267ca98cc1a4a288873b9af31ed210e04e15ffa0d7684b0f37dcc31507c4cc023100ea958619cb707a5a58431a9325bb7720b57a55a444f2bd14275901eb036cbf4f62ceb5cbf0f53572f87c4506020f8c950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307c65ecb9a0cb114fcae985e13578875c3958a073552aeb3191b710e0a65df2576431140ea6d67568ff3c1fc65506be5e02304c2364bfd1e085f11fd02b446568358bffab7e7088d5d69d1343ad43cd7b2989e6aa35a409c9fd1b36b84b47895beab10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ecb44219baf431eea30efa048b0932cd836c4d1cf4ce3808f1146534a22eea6ec7a31e6a9bf93c3d2afd19aa34083bab02303c3f553147f8d06ad1afb614e6841900a657fe4e94f2fabf3f869321c6c1a8a5dcd64c49739c6a84babdbea3b6b0bd790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301a50b7b2c1b3a5e0cbf5a0ae28f21cdcedc55de63f423321d35404910dcd4164e997b84a88efc8cbbefce827577db9ff023100f11af31b74fd348278364677df2f788a9f848ae886b8a77eea7a261254d237596460e45a772906af05189cd68b38be8e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ae37be2a9b5d5e0d27c0f4f12d481cc18c86ee199c219954ae7a62e85609a39970e4c7906be5fa6a30fabbf28bd62b430231009a0811d4ea55c61b1f25ebe8a6c34bb794e19f94bc3f8ba8afe44022279de0d8f53d4649dcbbc3064fbe88c63a2be33d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e95d93ee8ebde6ef975a89b9fed922757c4adf8c6272157219a50adc3b3bc5077ef55b70223aa87ee4adcb90d085eab702303ae2a4f224d20587e37a7ff42c2ed5e66aa0555c07c63e0e65166b662d9d79abe303ab862d5f2fb95fa54d3bd6e93ba40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023057a7eb3a35248f54d8a4fa196dce5089220648e21d3029e07edb80e0d84b069bb46fc57f57f879f81443f14c25a6c95c023031619727c609d1fa5756471d8d6f341ee2ae5a64e4f99b757bc5dad97ea71a82f05ef89ab4e0c396a6b6b7c334a2fa990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306915d4a124e7e830a85a6d97e40c7bcf18c1db04c14f00387fb6bdaabc37e9bbec3e796dfad3ca55acd1e3e9e49e404e023100a1c4732413232f05b3f1c72198eab48603c90a28bb514251e1c053cbb09e75dabf1c63f8678d1039cd0b3f56ed23268b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ed179a0061820f89c312f3ac6edfae7254a84b536ea9de9c007b955ccfa0f0cd13a6e1ac7605966ed579a06aae782f0d023100a95e161b4bf4e3c6e5d55c6fc876f9d931b916bc89c04ad40756560b93188416403a64cd36ff15cdfcc99e0965f137b90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d72e0b6e7e4a4ad65c009e053c4b0b6e7c8b7b6790ea9a7b7c3673b7a1980576a6e20213da5c866a7ce374fdf238317502304dd5560e2b2b319f437f907549f908cb22f9e4a05af3f61a426190677a612884349124d3d99aa3fcce9159d0205fa6a80302047c435bb500673065023100d4c3609165063f97928ef1f27030ab124dade5262cbebf5cedb40d100aa61636c9131622d6c041c3b48dfbcde4f947c5023043f0a889056eb685bb6dc8969e4b52f8ee6d811486ee4bcfea2af0aa479639667302540e54d7fae4792d52d93b68d6f80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f152e9fe3dd24f8b41b17de4f98dcea2a6d2e914480797ebe32c47bf702ed752fb18a1b3a95491a51a973dfe5f1753d6023100a100b7fedc2f1520292ffa2865b83ff5717974e7f9476ccbae913f22bde87b0bc6cb5b1ea46e307b7396a2c5fedd87e90302047c435bb5006630640230660592d54a132dc406e4b737e33553cfd576730981f91279ecbc699eefcc5b172d3d8214e9088f898c9097543135017a0230610d99a6fe32df89ef6bdbae0289ac6abdc7dae8234d611758f92fafa72a57e5e30bcf9683de5a77448000f456c97d750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023026422808cf16f739f33e45b3c5f6e068f77b8ff8ed29dd1a9c997ae3b2d0dbd5a2f2891afdc4c38f98ff69a3bd3fa8ce02310090d69a6a3224e93566463977743bd52e074d8d6959e51550757ed117fc0cc66ae55d3f45e0cda0e51a28a85469688dda0302047c435bb5006830660231008fd84418cd8bf7782e6d4b5dbdf75af5776b70c89caef61ed0731d8cd0d1d272ac08ba3ab50a77b30bd05d0f16c2c910023100e2caa07b063a1646545441faf680e775d50d67e24c4f8ec6d2b374f582b64d5c1bce4d4437954e9ce4b137df76a66c760302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304254bfdbddb0dd9aa905ae2ed1a6b004dd55d65491d9eeea8e9cde2eb8d488feda0892032c1255c46163bb526fcf33c0023100b622da5e46c0068efee5946b585f0645a570b072e4de464c6ce6d9b0d5bcf5d2778d7ca4d1da21832c05025b42ee237d0302047c435bb500673065023100a4301ea1d1f2b4b8a3b1d03a67b7bde951e0576f0dcaddff8145d26ff55cd5992d57311dc3406b542aec64f0af0b6eaf02306a4974c4e63a68fa89a2e50d27c33da2af678a5336b0d579eb1d6f809e755ea6a4e24c87d891d1d9d11e45792e0013320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bec204f21716295f2a32acf67a62478d47ba2952e3f0cdd524c20c19620f6b86b4ecaeb1d4512f362bc3564ca85d3158023026f1d8ad2cf0afdedd8577758f5916881d38a37b952824fb9091fc8ec10cd43216f0f8ae9f288d891b9e688fa65b2a7e0302047c435bb50067306502307a2f77412e06e2b4b6abdd326e85e11c7486b0775dab2bc1d0daf577955cc0ac06599da91f3473904809796267783b5d023100ceafc5c63bbaa4babbfb6ee0e590da2dff148090f45b06a2b5d3552109b8c35cc1a1f24a54030082ff0ed9fdf5fa942e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c3d3a937e0afe09cce33b601ea5aea2a99d391534a411b1121a8f64e3299016aedc91aa088cef0af959cb7664a05c7d102307632efd56839c128060296b4d2915e2f6c5c7ce7cdae133d1d03ac67dbea01cbe161337b24bbe9c31300893cdbbaaec20302047c435bb500683066023100aaa96cdf9564d95d9bdfb4c715f08572eb065e6cbe5a38d06644ebdab78864e82ddcd18595c61de6d82d4d38daf69e8a023100ac5c6d3b56071b98315ac347c8acf0bec3d5a97788f4395809c700115bf1598f3f7270696bee9d1a33d062ee80815f0f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f000a6e10381870ea0b91c90317974972f3c20947fb8baa6d937995c5617b548eabcb80d1247d6fcdc6adb2a5c15f18f023031cf06586fa8203bbb6032bf61c8cac14e82f8cae81faf903c8e0aa1411d00e7a6695f9c151695b30f335fa56cdf1f540302047c435bb5006630640230490e0cbf9177c27f624696c502bad776ef513b8fd2f6307b5f3a8abc0c41be98c8c4ba7db4e59a330add41b9824c475502304416b9366b91e0c379b6d249eedbf4eaec57c85cfffaa3e664b21d2bf9a6d01085090ca35933adbca82552a3b65c983a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f3cdd796533d1f244d2e8a00c5874e0ed86b1de35718f3e8602b1d2d70a0a337330a3bd983541d99909af09fc356048602301ce53bd7636f0e75bc5de69c3a8ee295c6c6be14744bc0e5ab198edd0363e1a283dd38bdbf31af9122345cb1f70e79870302047c435bb5006630640230250f65791d5dea5c5af6620e9c2c824789fb19bbb8c0f94b41b2c0dc61739d73f59cdb05182e22aec700231ad85b0b37023073e46042878c980e4dbbaeb76be364888841ead3ba52725dd2fd37f7e0e16bb171897d137ade5fabbc544c850089c3c50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307570e4208e1b5ba2d4a5a85b484c3d119a94e32d0b35a35e2bac3be98fcc371af0038396709a0162a796c8ab01bb575a02303dc42778eaae6bf5a0a6cc33ab0daabf7275ecd49bf1be1d75d7a37abce728c0f2c4e4948aed9528fb3904f934e5d2970302047c435bb50067306502305a29b83d0c4fdcc4464ddd2a9a9740519f89b42869408b69f902cb0eb808785893468c246b568c48b8afefe717b207d3023100c28611b97b9b6e6ab860b21d430d422de1aa481783f05b742594e53cb191ec6a9c9f8172a5badefd64a1ffb122f598480302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303f30bdba2e1f079afb1dc18715249a2eb1fb9d575273f9ff63d537e929d12febf283186ed887ce895e8ccfd537aafb0902304bb6f96154a3710636985c08cbf764041456d52ca6b9da213dcfcbd9a563d263b2b43da3d3041f2d3fc82b59ebadabd20302047c435bb50066306402302c354816b856a418507544d1deeffd7940cefc0a4fd19e64fc2dde6412cb2d532fa5e7d6a6be066287dc0747bfb368a0023050eaf7133720d023f23bbbdb43107e90f11905267d116bffd2cd519708d45f72d5ff712da32de0b6998879e537fc0eb80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230633fb603cd9047007de858da54b77f2cf34af23c0eecc11b8d7e4cedc52141cbd93bcb7b20501bf52ce7337ead9aa5b80230360d4a74c194f2b69a5f288f80f3e817ad116d2fd39750f825b29b70ee0c5728b10656d9e212f5572a7f4d43ba120b9b0302047c435bb5006630640230510ccf689f2e30bdbcf9100510cebdc7b84526ba7c7ae68e9b9a3460042636af76a7f0cc16914f1795ee6c5e68bb6b130230690c7aa78f00ca1e0f916d16159226e9624b79a3adab1678992887f7cfddee7375a48514c654ec486b7334f91325dcf00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023013bff29decb65798f3415cd182df26fbf18bcb2844ed8f43bef129bb861f4cf9d227b5edba8cac203fcacea33c2ee16f023100aece227c7f45edaa01a5e56ab3c13deadc2e336eebf6213595953391fd6b82ca93ca82fe37f4fd338cf3ac09fa6276d40302047c435bb5006630640230488eb74a0fe010d4edd5d2527e802ee9fc705c0a29c4136d05728a160c722b56c5ae61645c6c6736c8236a107977c2ca023068e13d6fc137368386dedc1be22e69cfd9aaf9b934c52fd74684b78deff35d0352ecb1a94b38f3198119b67e540085e20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023038b5e6b8739889a5aa28d74fe0d9e6719824fd9d222c0b2bd6a33ebe6771244948ab224af041cc399fc34c00bfe7a599023100abe11f193b5bf038ebfe92b67dee798a3cafe135e9a95f1900821e7ff92b0fa665ff98103138471f5cf19787883c878f0302047c435bb500663064023029b8ec7f9e35aba9a03e877006c207b78dd1a237870827ab1be0a82563d9d1bf43af62a2907e2fb6628edafcbbbead8c02307e988c33868c69eb708b93c1db2e6fdd861dc5e863b21f907a00427bde46f708888d64569d49bf5677c418b5fdbcafba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305c097059b77dd1848758c065ee3f781076b8fb0db2e5b5ca95244b28919b7f7d05cd54bad0a48c6ece54b9aa5248de1d023100b0049ff09735ecc541a44ffb45488758eccc5933500908e0b02f3281168aaa70daba46a32babbe269830ef4313a185270302047c435bb500673065023100bf5f26a47c6d7416fc7d4f5d5505cac5bfcc0d25fa5a55bf2062e849bfb17c74ba741cf45fda6aa777dea7edba173e4802302181c3da402999a50e7642b68012d553277529dd164e308abd9c8ab689fde02fcfd8095ea9a0fc9608b673fd90b89d8e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ece9642be122b708bdb149a2a3d9abf3d691db3797f4363a16eef5dba4b424fe507175ab5d21a572a5a7ad6e50907a4b023034e29f279c18f07602294fa777c965793e179e2594f51596e5ff57e50763db81e7398f3333f974bf852884db2bf844af0302047c435bb500673065023100d69361bfdc239f254c67dc63d7d1f50f1192a7c2986630cb4cd4472d679be5dffdc75282b7c0827ac34c61544a58677802305ec4d1f95e8c6fc965ba42ca031fabcd8d4b1955f0b645e4b3fadf064aac9b9dd70d22c037acb19ee4dece08c8941d440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a535d343662e84a7a223e3496b92796cc75b19a80b8ab902448fd7181144e28ec90c769606c33bea91972ef71545b27202307edab504ea335e99967027a2ce8a6c557032ebf24167214490b0026b33be9c3b35859adaced36d1105add0db9bc0349b0302047c435bb500673065023100dd0e56a514f232331ea6157e5fbb736443d125466109e254943c717634dfb3f9039edf4b28d219478570a67a0f74f87302302707545f9444472a5dd9878fc68da96fb302f8a4e4d77ca571bdcd640395c08d8270fc23d3ffc23df8c8915c078ea66a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230337a42a75b14a15e0cd6aa68673c09886ae79f861a8b012702f42dd44bbf0129b9e3d176192ca44c48f21a3d53e1ef12023100a091f8b64581a6d56aeeed4bfbb0765ff71a31d5e37e2e478e58eb570b738c403dbdaa9f2f73b79bc6c5d649a74404bf0302047c435bb50066306402307e9eb52e9f6b1566e5ef9c263241e1652cffed89d0cc281d0e037b93e9a2ccfeedeefcf29efc2eaceba6ebb34b41e781023054ca2d69c9b542c5eed28453f4092c5bddd79fe3cf6f1c81e9fc7c799ea875913f343eba135a3b4723c050ad2eac6f630302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304ac66725f18a2fb82ed4b54e002f7ebce10de64f6ee6d1fd09c5dbdfa5cf0015dbf7713a9ff3e4223a445e4c7fe6767902310089c9ef8c5b721c92447d0d66a04468fa10c1976f1befb1db9925401c04b917cdd070415090c1250ecf7fa62a2222f9c00302047c435bb500673065023100939ab01a0c3720251cc4916dad7596bc78acd2c873ebe3de271880873eee5e4c6ae01948388192937956a2066a84adb402301efaf9ac8329d90ea177e1c41a66cd18c038d23143ab3cbfe69ba54f7243fb0d7f4b3cc6e4d1f57f14ac2cefdd4830930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100edcf39865f9acd8e56a78832d435543b4c59ddb7e1c2dde0cc0883d7f91e7a17dccc83b33bca6e35065c158d564e2d01023100e06106ab5f7abb057fca4d5e94f4e329f9862b811f102fde9ab0a44b8926dd49d1daf26cac3b4eeb9b5fdd976066c22c0302047c435bb50067306502310082991ebfd3131d16b8639cc7783020199045f0d690c56f3b3a072ede864be78cfb726e9c5fcd2e0875c2e73fd1ff487e02306878c79cc88b82aedac0d5f3cdc064199381ead55588349ac52eced60315a5ced7f1e3472349a61df209789111f5b9f40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307c79eb4d38c0287e8e4019c466fe3685a82bc48188805e32e74acb30be6488c7081b4910259c4cbfea24d68f1edec1eb023100ead338c8c5942090888ba6270665ec7f2968e35fc88b1ff98a86cd0fd51e08ee672c8b1eddc5903cf13b795976a258020302047c435bb5006630640230294859fc29c9533069bc25a51f61a2698e86d08e904e3b01fc4176983ef0135245eeb9a8ae378cde4fed99e82ac3535e0230545554d1c3f85b90967d2ac3382cbf62fc007d10a71af1b0a7f761fd9a5331826ba35a2dc007a2a72b597b2dc04d13b60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304b5688ba4906448c4298c013942987930a69cc9e38b9dad1a563a82fed5fa07873b980be69ad4b76347b90ef52e08373023100b38ff82e9a20b47991e4de2efd6771914027246e905f7aeeaba29d8b84304536c6ab8a82ab2ff51b8569bca5d41605350302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009c0acaac2216418f8e81c87e5aadb4dbb454b47c3ea9dded3c0c48c02820962f18b9702c36d68f6404b31710bbf7028b023100e2b42d15f06edefde8c5b8d9028646eb3340320cb951ffa0f4cd964851647b2ba76fa1932912666c93cf6f9e7bff66430302047c435bb500683066023100a8d342bebb24b6c640dbfb1c18486ba2212ad8134ccb40275d9878508c63f051f05092e2aadf0949336ee3850bfe0d4002310087acd427da8e8f361d6e0b4b02441dbaada1fd224e7960b1766e435dda9adb82739b48689ebbfadbff8937b1fbc29c950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302ff913613a0e775349b4c229b8968e8339019c9dce396b2accbb5414d9fee891d1a74930520a7ea1e1a5629445f3e70b02301d052f9054cd5e2fc5c61a9d81cd49c5db135e7807aec2b1a4ed95d7854efceec19860ee7806639dcc5b77e514ee953e0302047c435bb500683066023100982a80004012c9079408958ac8c1bf4f41cd8eddc7e663c66bbc2bbcb95a184f45d2b0f39bd5f0f0253dab501be70d8c0231008641f138ed038344d99f07b02c97d2b606495e796dcdd47a9b6a53919ff5b193653e1c9a10d780886acce2a6bad363380302047c435bb5006830660231009a7a619dc97b837260bc92c1f2c59c945e053aade8e9cb28276c8d00e096a885ba9187da0cf17b11a2eae6eee6f2d54e023100ab4e16899a90313af9c95f522d037d11a1d9e45604f743465dea5edbbece7aa798784e2dcd1557b2e83292c3a85795b60302047c435bb500673065023071fe0cc14c0f2548f9d4e022883de7732071998c7cc5dbeeb6189b14d5ca99ea5e96ca2a5f6acbb2c8ec60e6718c840b023100acf537f4c2eb08b3eabd88ac31a77ed149dcfb96f6d31125c8708a747b9698ceeead9696521624d3c39ccc3b49d608210302047c435bb50066306402305eb5f9450192b00f12caf4c8fd7b061e6c14073eb5585511d87828c564189667e8d7c401ee50cf2308ddaff6613b82d2023065eb827df3d0ac6489146bbb674dc4cd0cc549c1f81c43083b766720df573e224d5f265bfd582899a8a491773a9e8f8b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023046b27fb82523773087d58270faa7fd762e3e3318ea6c7a431a1f6409f529067841f90b3f98f5930e1447f2fc9f0579cf023100a88da66a4a2c5e603dbf147c07a6c9227b0de62c51b1563b64a284a630883d0e39922bdd64f03393d59abe2f7820f2da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500653063023067a0e0014507447e154df97c63e0415ac9e55815f8d9303615f8ba460059257e7e2bd5b9cee567faf7baf06279441290022f0496475338dc9cebc0369360f822d5becce11b456016060dbf4452534cd3823b486f64057fe3f7c6f974e2aa76e2130302047c435bb5006730650231009a8f587c0438cff4c77991dabaaa189ee685a672738dedd10ef98fa162e8102f398bac8961916c83cd8b75241deea0cf023015cb4d205a19d87498acbb6ed6bd7d442cee70142b9702c024fb4676b30c99ad37560951c64d94c95ef3121ee9cf93210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a6a94391474c95bd1be170179762e3b875e29d53c222fdef5389860d89217a3c3ee550989387057a704da7800330444f02306949fa6432d61157da010071046db030395b09f5c1afc8d9a04dfc73f7bf634eab24f17e032f509ebfec9dd080e930210302047c435bb5006730650230757dea78b0f8025460280d5c16d5ac10924e365af34a241600baa4a1c2279ae27a81a852724a0b4c9496623dfb5aa22c023100caee88b368f61815d6a71b641d90ca71e7f201a1b4c4efc00fbf36542da4fb26a5868c1f358863db0aad731cba7f41ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d479d1f2db725ba51a90d02f5edc5289b027e6250654ee1c375309e15d0dec4531bc05b3ba6206f4004a61e782563fc60231009caadf2266a55ec9d7ed935334e72a51e786fdb70c66992bdce23cd802ad84a9cc5609f3a46b797418f7e1730ca6a8a50302047c435bb500673065023021d3cee32680243921b9aac1da2392069dbaedac0010baef9eca8c83a670063218d6338152dfe620011017a31ab64983023100e22d649df23ae86074a5077b00de13e7cdbddec047949a4b4f72edf8daba49e0a8b1f6da3124296a382704f1138e79c10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c62cf68fee85c5f08ec564c1978001e0928e8f46403adbc722184aea325143bddef261e38d14c444f68d392339ba5d1802306d5f25ea1503412c92315bafbd688f392b3018b24d2f3c258ebf4fc7819fe3fe30a15db143f7a7be192d3fb8640a801b0302047c435bb500683066023100bab6431b30e86a62552d3dda32eb1acf353491ed6297d2fdaba10f7edc933b0f368b8bd87bde4f4bc3ac34b2cb29c9c9023100bb559fd0990472b7b73a33998c195e12ceeb4469714ab3df5569562b9481784c93426db948bdca5bf349183ff87963dc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b31affefeafde5e10dadc5feeba88db6992004bebcb833efcec30e575e3785b9f324ecf2d89a9532100081465192c40902300e5ad82a6e443dcf5c7821e39ffbb8a15f9365091360032f90fbf2ad8d0f11b59e4b19594b18030581f22970f8b10b810302047c435bb500673065023100ec0bc961253b9b0475191531e0a50dc3014e25ba963f2e85ef7cde0eed4f0421ff22aee326bbe9bdf66c8815d029b1d20230544636d8ed814fca52bde232b259dad217d9d78e8126c524add413e939a6a39cdd909e445df5828b74ad80be4e3f058d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ce8ad71fc88e4d84135d585c5467111d49b30fc7a70e1ca7b3e68588874a9a392ea5b9a9e39ab03deca536b41ba9c025023054fc78fb7bbcf64fa64fe68753399a152e989c0269dd15ac87e2512e5e51aee59ee838f347bbfb3238210d6499706b550302047c435bb500673065023100cabd4b682e7271ea84886c49bef6ef1422bed3f1181a5aa2c1d57012b9fcef78c9b0c1aa3748733c9e27691f30302c5a0230558d5894108a34dae7be0140f8fc89b26575f832914fbee0110ae8a75ff8bb0224957d72aa3c834c0a2cb426267c04620302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230411d265bc06338d3da8a76b05f23e9e92608ea459742c6ab894fc76fe3066f9f4a1c95bdbea57cb9fcc39a5874bfcab60231009ef9dd6dd0737be7f738fab5b7a062940e3a52c89b639d0f74704c7a25b700f338086d572f0995461fd1b2dfa2d579cf0302047c435bb500673065023100cde010ee436bcb477bfd5018acbf26aca6a9065a010405dc05eeef0f5435b552fef2c240a17e81010f78037162e8804202301526a8d606072dbf8096c586aea1472bb1ea9b5c54948960b8e43469ea11165373dcac8c972ffc6eb4b8b5ad66e50e990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306791cda00933afb664bd125a5c7f7c11528bc6ac149219eb5044d1e0749bfd3ab19ba3b979402cb9ff2ad136dab8d30b023008803e67dca912b041ba6a6a7b24cb7a602bf5f239a8b64bc3cc8debc9373ad13e46e33679f42e207be23200987c49aa0302047c435bb50067306502307262e617b942e45e78fe6e86ab0829f6b8301f57453ecaa6a15ebe1243bd30c7ad3556b91f126312313dfe6ad61d3a1d023100dcee3e6c6ed8a84228d686829fb93dd2a08ddf69ff588bf6ba399a901d4e80dbe42128fb7e50b376efe2907e0d6ae0350302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e1086361dab80194205ca999b7155249b8167953d552ca98a6ed09b21961909e8fbf58f217a2d2aa3b90b739ba9bea59023100cabb1c074e7a5eaba6e51bbb04cc8c17d4e048aca836977fff39c322b90d2a3b0721d886a826441c5acceff1b89ce5380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023023299db0027e05263dc7411c04e1c4074d384d5cf0163bb1498cda836e876049f4b7e37045c1cdbcd4c660af9d0858d80230674f7a65bb34a99992b3def5cede4c629878e9331e8ce78c37f0f85989e3a17792e19a93ce166e508a183aa40797b53d0302047c435bb500663064023033f443e518e0f1dfcc0cb51f7ae8965950efa6e4ca8e52cb667a74d8bcaaa4b61616ed6664c619eac1c1b2d72d5d843902300198cf251a25b297343954187b161a4d05b1ca56a56aeefaef38a82413cecddedf2297d034ae951c8f5d4b64cb8e869d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ca25b461710264ce6dd006da73c8ffe9ed12ca022a76a25ad83b29113eea905cad54f91ce282bc5100ba5ab8050c25ec023100c3c6adf3f300c9e5b3a0e6d5db9d7600636b0fd3c3b5f1501660842c5d6ef2145147d7fb194949f755c3783c673a58540302047c435bb5006630640230663a7209959bf69fac93e8dc62f916adfab9e584e90ecdd73a5eafec275b48f2683cef3587bcb310dee6df80877d130302303af24463466a064e84d638b6c57ab92c24ef78b130f8e7f5ad3ad4dcfdd8154c5165fd018954b03641111c0e01424f970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d7c3bc73a11ce68b2028f1049397ea5ebfbffb9d25bee6bf84cb6bdb74097f46044bcfa330c8d0ccea6b364b5b51839b0231009188d7a8f5ed69af8effaf626be2727724309e8e4af96ed65d6239226b7001f34312e1bc278d1ebd1bccfcd2ba8ba8630302047c435bb500663064023017f8b5ddd928072b773079c39b5bfe63ed98cceb9b6a1686cd9eab670465ec54667ec175482389896644ff4b0e82d99802305d2dac5bbd90f3dc2d07b1bae67b57d32e61762755eca5686783bbcfac32605f9c479709d716aed98151a562218e56880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310095b0d34d68ab94d3bebbd5495faa64ec735340611c0e99d784b433410c0096e886525e9dbb74d86ea4b13edb8a86da0402305300e62112851186ab4dd8e832a16b3451b3d024f8f287e5ebe5f154fa72fe19961b0b9765066141c185c2c1db012a5a0302047c435bb500673065023072640e793b2a22d093c5f915e613e5de75016f4549b3c4a6e1e1d2efa528516832b448ebd05e933621f81292be2f023f023100fefcab17da8e5df58b97b74fea899d5ef6a422604a1f62c19c2cf934f96944dcde2cdab608e3556cd404f37e8a70ae9b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e6b0cdc773442e4b33912ba815f35412eec5aec732adbf1d7b222e6e0d4930de61bb537cda077eb39304567ca4c13a06023100f77b23f33665e06e449328109a0932c73e2bf382103ec3163fe7bfe7f60ed1b7276451f6266da0563a60352cc8b09c2f0302047c435bb500683066023100a4ce9172a15f734f21e22b5da87e3e351104193dbbb0b6bf5d82c3f9dfa9e7aa5c3bad314fea3a800be6e3963e17b336023100f1db44cf91a29a735927496ea576d6179af536d22daacc8a45f2f0a661a67998b6527c221f2f321ed57d118930ddb8810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304e666678a9caef6fbbfad49cab5896a317b75bedef85a225a438d12c147b5674a38dd3280fe89b2eafe6971cd912559802310099e3a76e68a5fa9475238dd46973f86808e3b648a1b2536ab15088f18e7f1e54082292c963b4ced83cc081e97ada37d50302047c435bb500673065023100c5d1203d8729c57f016908299cbe0b903240cec502343ae97b85ee256315738b77dbe426619f2d41d2b6d3694f91fc010230384e485f8ed0cdef5bca10156c94d3fc65224b43b97518bcc1fc1fb160157c8fc5575a6f0fac140e065ac175bf8e9ad70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023014d4331cc2f2b24747f1a1084f32962b6c6238c8bbd73e9ee6ad8c993a0867944ff3d8f9b235fbd9a475593467ad86130230668687fc70507fd269199f6da93cc0c7bc8584e8e683578d8cdb994db00540c5ee50606ae46ce43b29d872f1d9c398f40302047c435bb5006630640230213ee25972a6c306968887a628ca300e1925baf1ac833d7a1552e9ad712c57e72468da65e0d27d1ff4b423d2bac54d4e02301ce2915930a08eb9e7f4f77f9db19ac8e4ecd11fd9cffb0f3981a89dab10c6041b27497759a07cf6eef6389e9fa156c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230140864eab7125a57cd03b2f0c5d905f0d00ffd939661e2a13527d9e7b1eabb05b6abc5c3d61c68fc72a137aa7fbfe33e02302e65a9c1aca95268598ba51534aa22273ab0f9a304d3f913b402e497f4f7ae761ba7726e68e158f45760598a452b6abe0302047c435bb50067306502302e1ae236e6cfea96cc452322cdc138a1ea6d550ca9367e0eae0af13e56f8d6a1a32ea43a8c98e76a5f84ef64c832fafc023100821d2d77627358aef549fecd4024bb0caf488fcb5f989cc91a7b76f80686ba995092ae55f431085955e016b0074256590302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a856469c18de5845d2088293e95aa0d0dc6e2b40a418553b9b8f135226dd799e67cf36a874ddb6b8c97363e68aa0ed3a0230087e4dd8fe9d54d961995ef526267b39888ac5ddb497973b26f9543146f9bfaed3b0502a82a47461a89c1ab8b0821c5d0302047c435bb50066306402303f6de11917d5ff4bcd71d2c9e836d2c10036cd2905f787f6b13dc70050874efae33ca42073106b224abfe78431c89f55023026932d06a9bc9c660a2f98005b9a493da7731571e8bd69132a4711aaa9cbf0bcab3d76d28078ddccee42e310b4aeb3bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cc40d35db8f428275cbd232e0053f83e9ca1826760ec59f131250478ce18bffcf7add357759a16280103b51969a5212a02302e83edd360bc533017e6e949d31ae97a5f4a3ddd755007d1089fcf1eea232ba373dd29effd245d800da1e802ccc53f8a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304429271d56d9a8d4ee83c58f26a395d8f513f484b66d63c0963290cf5e0e2e3c20e78bab8bd6ebacb32c494b8f2a5b31023034e3da830477bab7255de71325510636a25e8efa17c978dc70e815896c17e274197f85a943c9df0d26123a1111ffe1940302047c435bb50066306402305660ab306d0dd936c9e36e28bf3f132361b77764a282162f5da140cb4ce29447d60d02b26f24b55a228a32cb4d1b244802303272bed703a204fad7bad451050f009c0df1937700d2a170e945e6b3f377a7cd5b916ddae5de48ea5800383c781635b00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f2780d2139bdc8deb21531c06a1ec186877607bcd59fb06c637e3ed9142f16f69849f80f4648440032cb3f649c62fe04023100a43111a628f9024cc2d9864e98ac2d73707d977b8e4da24e2337740bcfe60af4695e0a607819c4748da91392f3a13d200302047c435bb500683066023100f8a8ec8398ce0f8d136925d108b10010a6819640c6a04f56fc043aefa9937df1342b6e3819cf0ccb525dbcb90e5ef479023100c3eb64d7b980fb8a01d2f784e3337c994a40b9797d0deb45f81c28667ea00cf0fe7b433e50cf3277843b0c42c30158a90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023059418f7dd82b3b40854b965d18500bc574619fb0c14386817c5ffc0e072f7d73dfe5053eca0526cec66bc4bff18f4aff02304e1a36374f4ab032db7db81b6366e6222fe0a4d690114aca230e226ff319c968a96e9dbee86accf4053defd56cf67f1f0302047c435bb500673065023038325635d56db4f1ad82cf0e0a825b2bf9c9b44789ee094e193d3f96724cfa19013eac563fc512cd6424f26c553fb044023100a04c17015b00d6553bd39aeecc58855bdd4b7e1b08f3b6c0dda2339dc4dfc0c656b799b6f9f7313cc551b812460ff1570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ecba22a82e190e6bce3d63f6e75b767fff677d3b85076f6b08a4806c545cef974ad19bc447c657dcba8ed0b954ad43550230759f92e8493c9f9b0e9c6db8da772a5232a76ff13d2ae7ca59323b4cb43d0e58ef854c3fc17eb7ad2672217f04a3b8760302047c435bb5006730650231009a678d5cd2e0327f30a26d56af259fac08d4e9be5981113655c950e5e9311a662a49ce3c6159cd33a89bc8dc7b29389202300558ba109fdc1710547bf460c0f963574a0ee51c1357c505d74d901ca607e7de4fb98695181e634c7439ae845ee48e7b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e2052da3348f9c7b1c1dcd421d1ff4e1da7e96ec4d8e79b48d22249d0903e57a59190f52af3c5296c359e6b173d6f4f2023100be15c36105c06b9188b0b5eb27c78228adb74121a99cc69c521a51897dec9b43814cf118214d385d8478ac27e7cc4aef0302047c435bb50067306502306a2e936a3edd94538f5a288272194726119a0f1cc82fcfe7d59a6cefcac80b2ae6260c193f46cef52a81b2a44846c828023100b8564589afbe2e6797781db715445125a753521c4aedba4185883b81f4f63b4f1fa7862ede879373f27927d721d5cc4d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023079f4c538fd6eb278617944669b7f0f03d9d991eabd63f618220b3c561f78d3ad3f6c549d5dccdafdf6d92dc400461611023010a01bde786cc6f67f3b477c1ab42bb005c5359778a0cf94f730d90aacbb00eb69b39e9c6276974435472e203a18bf730302047c435bb500683066023100d479d7a38678882b4ec18b8812ed1937e306d1d454a8276e8b56bc059f9a1169db278b90388c27f17a1cdc77a9c16457023100af2fe5793ba7bc79c208a4c7dd5ed53cd6c21618a4cab13e9691838f3435cb5cc0592661533debccb2f474b37694f66c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b12b73af920562120db969bb614d93e08b20852dcac4085bc9eca8899c503654c7d76b670be787a5d3aa63155adcb5c102304e506db268c274e6ef92d0a3655ce1b9a8bf8b24e90af702ed63f5749fa37dacd840a7ef9db3c3f7a724899e0f8d8ad90302047c435bb500673065023100d5ff3dd68bc456ba651e28c8244ad569fbec9370729ae4f08e50df95e29f69023d1357274a1ed61b5c444070b4751e220230379d5278845f937378f4291767a15d0eb40c69fdb2c98b0893393a50218749b68d57c0a81ef094b5675f231eeb55d9ce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009f167fa76536138d5c23e2b32e0d77dd64378e8ca0b8bfb49c1a35c6c3a299b8ddfa22eb43be06543956bc6d870a88c5023019cb5b9e26de08bf3e6a0c657fae130a77c5851b9fdc91d44609a36bf1cf471c54d5838cf265fdd621ac4f0f3df6319c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305c882325ed358ef47d41426167ffdea0cd23b55a6d31323bb37468117022b021c7fcbc5b6d46fe8a883d00a76039a2180230020120ea66bc1ae625337bdd1ef7f76b7061318895e32ee96188ba890844f61f93e27e4f547f50de538f1ab47bfebc940302047c435bb500673065023016730a072dc261a7dd94059f2e3dcb3d61d5a4baffe208fee79447aa59319428d10b4e04cad8d6004b5920876469b779023100b72cf71f9d1cc0887d0d0399f802b7e7e11ffa8e5128014e5eab4158055fbf3619a3c034e88326ea40801d2f1dcbf5710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f30c6efdbe7e3b25eda7a2b1b4db00c6b238a352f952a87b880cf7fd26784c222ffddd5ef258c66d2809bb7e299c3b4902310091bb58eef6b3b7619ad565eb971cec7eab0b74caf93120e8e63e52fd314469913f6e3f15bff299d21617986237d5deb90302047c435bb500673065023100a363f5648f93ebf8b8788271a54ac0cd4eb7e72f98ec215153f53db9323b284f1ab7578257829613e1b1fade680bd3d30230528991d0024ed7d5264ebe9e8dcce9bca90c7006e8116bc893184fc3a2f231a29e1a37433565c311973a3dd565730c4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230421a4969bf5e8fbb397f7f3cfe6c0b7d1d043ce5cb32a147043b43224b4580e213640cab652cf70ce8364ce131d4128502301eb74856f6ee63266ba6429ffdc76ff5c690f272d1722385936e20a5dbc09432a86450680e7fc3d14d167c4df7a2fb300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302706b21fa3140bc2278c4cf4217b352ca1fa2bad85e2d53df4034dfe446e4e153405542b9e430a3acaf080f33cc118f802310089d88c2d77117add678e3462ca83316030ffd50f4b264f0d8e09bf4782fd51406a65475ea827772c34f4cc357083bd6a0302047c435bb500683066023100d34cdbff5f874230f6b99888072de665b8e55d19334b90ef508969bf347fc61a96ad0fc7625eb6f50b336821a093068a023100b55d6d6a2525bf14e0f0cb38d24110eac90576e8b040eb8b44b3b5934bd220a3d75f6d25b29266527e309f42ae18efe30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230167c060b07d33fa1303746b1fb6b6a35698ad62316bffceed8e07f3ce52817e065552147451ef93d5d83ea1a60bb54e0023050cd75044194aa651c3acde8074296e487f12ff0a9c0f8038be8fb24fbeddb629153d9805cc65b6a15d42f842ade65a30302047c435bb500683066023100bf90f29fc04efef58a0940d00cfe370182d8bbe9f0588b6b31730068338beb651ffa2db66fb91c03b4f29cad60a8395102310087a8358497d38abd1abc74c7e7e443e166d5e3e9eca05fb3f11a2b8556536fa196143ba0f761e03c42db23d0f7babbe60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f7b50083e9920fa18102ddae0593b82af4dd9c8f59a3fd504c3ba18235d62543bb4bf93a3468e37013d2a6717518763023100bea90e0e01055839b8d1b562ae3ab0dc0eb3ad214f01484672db6f714841554f46b7ad0218897637f05d7b995a3f9a1d0302047c435bb500683066023100d0d8654cf0c27852634dcf8e725a50683c98a05183fe9243b0d7e32b93e9543b5242f35eaf9478c99d7192e700310ca80231009353bd1b4993a1a0fab3715aab3c789bd912e224a38dc0425f5b05744f5f6b57aa67f6a537a91381ecbea5176fa1f6310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bbfab46852b78e727862f400a088069bb9d7e30cdbd000f2dba615acdbbb8aafd12bd63c8549c5af56715b349a384d8702307e722e54d5d1b5adea550ed5ec8a188283b0dd32b6df642a2abcb7580ab954c0d4d50c03299de56a54e0884a5ce870bb0302047c435bb50067306502300b315275e0d8db54d0c6ad9d3e016310da1b7439ea29eb45f80f229c618a763b6eb2763e832c6c4d0603a2f8e0cc1be7023100cb51338eec8e1f1c9839d82134f6d3c878a1cda1cfcb84f3d4a9f35ef651253a3702cfbdc4112eafe5a99b86cb6aa4da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300ae11418f33c20eddd59685cbc8a8e039fa872571eca480795999b33c96336859c7b5771a3b57dd66f96603c6d5b84de0230784a210c475d91ca92010a7a1284a69cab8b5e45f9f44a914c6118f8c564da21d6945afd0919e812dc25b74a8b0b8c280302047c435bb500683066023100d48925efe734ff4e485aa58666aac32612b32c306fa3653e9b3ce71b1c388843bcd16ec0a433ca51d7f3d4e98e766e8d023100d69e126bc0a3065cae4f4322e4f2ecd0597d5ddf9d35ab6dbc864b618b8543c3aede31af016befc218c3c60da84857b60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230490b42990af47bf8bdb70c42cf87587690ce917153d12e862be3bc3711cd9676728afa3db7025bbd2a55d87f796184f8023100ea548085430a901440b4309fca088bfbf87334c25c0eb92fbeff5ca0932aaab5fc1baecf7d6eb87807fbf580a2fb40ea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f193c50a66c1b803856a058d253ae5a8be0b3c078b2146b709f97105d3eebddbb944de2d4449d268dd182658dade20e2023100b3965d165d4f804fef528dde78fa4c9835e2b09912eca698bb68e5910bb3aa743f79bb63a592675ed54a63a70fd604360302047c435bb50066306402307e7cb025faed519925e22a7cd7de4c16c62513a77878ee07d92917048ef26533250fb1af3934c6a218e7daac6d2d0d8a023012e3530db4f59dc1f716a96a388d134f75842fb84a7607c81fc6e434796f048ec40c2b258c880aa394868ec34c3a75160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b0a350ae03fff6130467538209518a5ceb5bc5703e7b1e79cae81969b7ba47e5e6002e246b33b1d584eac854683daca502307be0d063c9dcb361b85a677eca5ee5a206d1387e0981ea20e33e66874fbc252c4b19f01ee322ae3fd54f9419f8b8b6780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c7a42f3d2c90e5805f9c0ab8be6f27975cb8b69375454b803c78c9a30d7cef03ab7477cffa1e39dc426519b3ba1e0772023068b01ac9b5f8c2d1cf70852dfb38d1c6f0c1efec190b6d032082967c0b26407dce28fcca4a96ba824052f60cc143a12f0302047c435bb500683066023100c8ac429f5f29f05b875308c5aa4c9366b89e77323a61759cb73c90db32a57181f8f4c4b14589977a8ddb55fff98506d9023100dda654f7ff7cbf10e0a850a04874677fbdbf1f598f0e5243d7f3abe3052f4830e93fb9987f1719f3ce30c56d6ae521af0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304b4d45f5c5b3c24b29a89007752e035798b996278e313cc9038306da021ba0286ecc14f6e52e184a6405899a45e1215b023006a81a27c6b16bb97555d62cd67b2bf1c2df9a207002dc722e3c5969c44e20fb19da75b2e2978c85799e636a22d8b1320302047c435bb500663064022f774b45252003eb666d2dbf0319d54b8629ba9235135c6854a80bc2d2ffa8f5c2912e51a83921a68b5169b348f4770b02310099b613cf1401c983e8ac53546fdacec4a15219ee12a54468bf74683e7000e55deb992319f78414c51aeb80ecf4344c3d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e00f814f1d23d0cdf58f38c6f880fbfcccfe1091cff3a8c43730c2b2bab0cc724d57228c576467e0fcc8d8488c4eb3bf0230022cd1ea838117ba9cbf807aace78249081e7cdcaa5900a5290af813becab2a42a72eca91e704ef1e2f236d9c56ef3a30302047c435bb500673065023100d4122cd4dce7d19559a8c82b25942f0e8a1753b8ab3014024123402775ba943cb36d530326b3c8da57ab8e65d8b970e9023002df8851f1e3bc4c40b67e3af91cea6e8276e3d43dbec78a0370ddeea1dcf3581b26cd20c0249e202fc80e06b22307f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023034340494c41a303a4515517e075914378d94ee274d0b89a2ae2e6bb86d12072729ce445226bf03ac45d04527838bbff0023023d4ccc6681af711a3854ed725cbf8f4d11bc631a6cdb9467935d0da40b784d30cc578bc732d4014d50568ef630c305f0302047c435bb500683066023100e8122dd86c09752f9a250a2e7b2350c90097795162e815c073b18fade8f1ff5c6384b378f91d9b4f765baba2d47935d1023100f019c03296bce4c57ecbbd05aa12e8e8ac1e57c97635bd80a109395672358bac89dc2ed49d4c1b43c60d7416d4ac6a370302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ce3722be72c8c8d830e41c4f0f32c64cc553e14850c72a4d0b55252a16efb373031323a04df375a7fb1f791e5fe70622023100a03effe59712b816f01490b1ccce9b9787e9e1594f2d979d86f4dcf60a093c2c755df8fa56efb2e85d0a070cd5f003ce0302047c435bb500673065023100f65655c04b9b8600140a000e09a41347928c9dfc5f0d4aba091adcda7db95eaefec4870e26e4f5ee08c13d3b19f400f402305378a7c326f95ed32cec03ba6e63a31301f8f18a5c72fa579391b02675351f01dde6a190d3770ac5d8cff6fe9f38c8b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d34063360050f0b6f4fcfd5bd07b3499be0e473669bc2e38e56c4c2a7b9b54a1165dd7998cac7756474e4574662ee7e402306b81e38dcf005ec6061f48d06910df10699c2e113678dea4ec60995803390b45e9f51afd44ced37f9b2972935a3f7cc70302047c435bb500673065023054c779045efcd8154a9e190c10380af9ee48ed7f4951d8bc39749b709e43d3f7277ef78d21a0c8bce9e7d0a2dd5d0a620231009fd508b335d84fb4e8370b183d6f9daa628fd87a9ebb43147e45a00c7e7f462c2c0b03afb2b421d08ce4045fdb7445f90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ab95bf0bd1e1486aa985c92ac7999913ac6a963a58ba7d2a5caacc28c727aa5f56c40c48049aff35009d7edea0aadeed023100eb015568018b97a27abd47b313420a269b3507d499b148ecf6faecf62c34e23d873ebf579208854ae1cdc289e6de18f30302047c435bb500673065023019bc29a4d9632654f106e8fc561386aa63c80a973b678b3e31d36c634ebd8dcf569b9566682df82e62b9ba0ab7554d58023100f147a475f514fa53c052398a420693e6d7636eea3d95a13c21aade67751b34b7958bff73e353359616677ba317fbf8840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cfab3e1d3edfd81fc8c12b5d7710e50ebf3c9a16e528cac7c0f786909a8f289fea02207fcf2e0ad2a68f70d5fcdcc545023100916b79d209d5180ab5fafdb04cfb4063d90724d134d85b77ddb943ac480adefc6b81fab527bb99aff55e079f6ba55feb0302047c435bb5006630640230192a0f63f6ab22b10dc9391945e1fae2fb15ff8544bc929df5d014d211671c77cf4e3e68aaeacef6f9048be856326ee102302855f862d271e339f9eea7c858978db9bd9ab57adb743850293776be002d54f1001249b8c77f5d95efa97546e01f0fc10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d4a8e0223784f26067a3608e23a23b929a7998c42b0066ddcbc5cb907556b4c5e96dc5cc72d73c055105468ee4545b16023100f2cc365521fdbfd592b8b79e09f993dcf9404f61db0350bc87fd27fa65275263a8ad7f50d81f9c5df5cc1318d66973fa0302047c435bb500673065023100d5b21bc644f3c3da5d81dd18d08136d975bd236ea3b12fac642688ee7fa8296c14b9f76f3bbc8a05a6afc148baca279d023030a9c363501784d75f710c1ac669bb913a9a41772f663a313a38569a7df00f2d606b5715099354178a6cb22e26200b310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b3f64a3ac3890238706b2a26405bd50e4cb317e89514a9d46bfd1764d73ca3c7528385e5d17d6bfa24685b864232987d023100e4397545321e6c9b8053a4ef80d47e9579596098dc9ce0d04ecc9c2e657f55e0a5e7afacd44f2c7208e5a1e0fd988c680302047c435bb500673065023100d15d9d630b3ec98d4c7b0c72904544e4afcf23c29bf4e40bfaad787c5f819e72ee37b23be6443e0dc65c1252ae724b1f0230477ae0cc0aee43962b4ac70a08911d0f4d942fe6edef3950785c619db77b19905bddb6f677602aca2bb46700136cdd730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c43ba8fe4520d31c1632d56cc8f32a4700e0056b696d74f12547bcf043af7e3bfa1aa034d9c626d44a37e3e5bfa1a22702310087729eaa1d77db247c03362b49ae478ee4fd0882363df8c202e04c7d7a5da92fc2969b48e9e8df611c56c84ce52d2dc10302047c435bb500663064023017c77b87881c760c69573f82bc1f4cb5e9cd12d71a9e5c06c4351921fc85905f3f52a0d0bdbff44414e548fd277fce79023069f8e12e3127e540d4e269424bf623ffaea9f4c0a651cbc2c5abf11a335bd7e284692a099c94e0ec7353dad1aafe2aba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fa3b0375f2668d19ef697e820967d8d5013d5b29453a31677cd19c5b04c6a056e13fdc0d706a27ea3f36dd0a6126447602310083a53cdd809d3420ca0cd9109adfb90793e8d39d448c8a6d62d1d8ce6acb4cd24c48f4116d84d089588cb4e2d5fee5ef0302047c435bb500683066023100ccd9a9c696507bd26ca73807fab11bddefbb698a7614959ec7cf973d7c3cbdc8ac2fdc79c81c1b678a09ab5029f0dba9023100d3e814dd064c74e34d5d94532d61798fbddc0d5541292813a49617a1f516d231bcf3144cac402878535567b1478118530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bec7c4075c2ff87c9345e8ac327fc5ff8c575688934657ff9b7399a7591091e06c16fb5f86528ef71ee06f215f687e0802303cec92670516c81a149460d5ecbf8975643b620c7c86bfcc876e84767ea46aedc5f3fa7c684fbe27d725a2a714e273fa0302047c435bb5006830660231008bc921401b38158ddba6a4a7031a30535e52b6c37e32e9d9a78480500f68b4a6911e74a6f1087c13b6d799cb9f291f4b023100d64a111afd368229abd3a39030a0f28efe44d8d59f5be17ebf2d36995df14a1c857a20ce1361f347b28cd5673fc327530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230015e8ccec1e13495e62a8e0a7e02b573526f48c46001201a4cdcfa5c8cb98bd6171d6949763b30f48195d1c0c77cefa6023100f293d70f941673ab77796ce8ea2f9443174d93b3230e4ff7f52fb76dc11d4560d60c108e926142b075efb33ad2b2f6620302047c435bb500683066023100888b897a1b9cafd55cc7806a2453ac8f59252bbdde9fb4a7134c0ff9a74ef5524d67f52a93a33d158bb204a94e788101023100f1ac784aae6f7ddb976e29f5df21126ac2df25589e15817e8106ef25fcdc464847f85cb955794d8037c604ceabe6eac80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ce78d72c2df9a8a39328c707261c246be49eb570d63e4d65cd7c3f9fa28f128f73cf283eb7b168eff9a1cfe9298e19ea02304eb976f2acf62e70aec58065fda9e3e7e9817f4cf3f9647da259bd2b84190445686e624ffd82df39f41a8646d6bc32550302047c435bb500683066023100d811c9c943053715d57cca016579288bd5ae38a051e494eb112a8251a7d540ccd4c25552f9b1a0144d31fa29b7c9268b023100c88d26f8415e205a92e073dd78e403dde02381e82db6864723d463cdfecb82fc0eb9eac233b05fe46715d88f14c3881b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303992b9657f0b99126237d4c799ea1a872327056015c6000dd7121a753609541ee35240dba49d525b31475c4f2392dae502302a0f86b167935d686afe3af436b6c5da776dc0344d809be106b35762885b8e854c10b53b92eadfa879d332ef563ff4350302047c435bb50067306502307469033e487a9dd76d0fa315129156315c1bf9051e9ac28c00aab363d24b3c5ec8b6341328d3a7448271c82ec2edd176023100e051f7d96730d9a4cdf53114448e3f694df113b964f3968b577a591f6408b24bb5eafda0af1ca8562f7bfef133d6080b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023054aba274ac2f86f4e53b9061c0b5fd60bafa318060f61402d05c357ddc7b6954e9d51d611153b491a1ab8f2f6d6c6501023100fc39e70ca258a701c2b9d87ae70c4b9e296d70e8946ed9df09f463a50ff9b7c3c5d4bb7b745ae8696709856b24fa86270302047c435bb5006630640230679d8f3a939d6a89a09c92d1206e325e6449d2a06d2d0bc987953f62800a57abd3453466ea6e66bb0ccf0a3b3a96db1302305655403572a09b5338d2c849972071f1a470e935137d8309caa294bb860e443513868aeefced2afa3c6efdb581ca91ed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cbf61e15c70e07ce8f031d2bf803ccabcb3c8c1a0282510456a62f5794b8690207ef179a4bb52c7a68e930901adab4f7023100d2e9a79d430113c2f60ba8b227e917ef562bd3e72c9006213e6b06da69e929b710a6666608b951a8d60ef4d2261f925b0302047c435bb500663064023026b4af3710be5a0c832937270b5f6be9ecb32c393819edff2bee73adce80088047c93bbbbc760a887c23b55eebd9775202307d21bc1e53814e8372a3875e79b72906bbbc57bb39d0844e34ddc5f401bb96f9fb1957d0c60a4ad8d676330896fdb4860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d6ab332dfe3b11a68c67f5e29ce98a2afbd72c3f070aaa8a14da14820bd089d3aaf2947d9ce147ab41bfab16ba213cbf0230759f489bec51a53175ddbb3f8139589b8886f4f813ad605b6f1d3c4a04fb403c2e82a7fa0d94adc3fdacaa765fc5c88f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a3475eed9e7e1a7c0e1ac419552001cdcf96f5861ffb1d8a2502329d18282b666dcb6938057892d356d5df58cba317dc02305a8e7ee2704f0d97e9979091649f16b20d6d3b5aff596e8a81703afe34e75459a4ee2436826e15b5b09967e5358e0c6f0302047c435bb5006730650230754bae90be1028855a3b874463ce5dc9f28784545a22f12cab78dc69adf450410fcb714cf1da14a10ef7be93bff43b04023100d2e02c5108a73f1211161950a537063ecf755ad3f09cdea1c2cd4b8f4ba894e2e07d3b1ee1306118ba29fd5fb35d2a6d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023010568d1f31e94b88300d85a34f2774e0cce5e9aa9bb2ca202ca099a2b72cdc4b0e19e4b5aadb10e16b898a21a9a825c702306d4ee5d12bfb81a2c0fab3e20bb5c49d992a813a62eb6b291499dc83da2e26e6bb1e813c4f9da5eca966d3aa8c573c650302047c435bb5006630640230543aba2ddc78640a9ecc4229677699ea5c0def68b9608043eef7a76fa5d4cc6a4ae23e2339fc71d3feefb7627b1f8c7b02304668bcae088211b949d2b8850176a88030ec5af98eb4686d4ce972ba49e313f304199a70bec3b650e8e49fc8801f2b420302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301f33307a787f1f3102a2df6148e6df34d186a7421bd2923a9f560b06f180e340d79feb318f8dca0a270afe29fc8544e002301fd05a4ae6d2d74c2ab8ba25f8cf2b0ef2de54e3613cc06152f23a8038066aad2f7f9763e1ed0068c5ce25a8f4f588720302047c435bb500673065023100c9e3ba55234a1b8e3413b27d108515255d73e7b072cbdaf3bfab76d312038230dcd4fadbaeca2b7e33da1e66baff543d023042e03672399a8fbebb30a8483b680206e5b16eeba8193592344787bda0635fb050cda0a33213ee6b076705216f9c806a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310085cac8ddc51e1746b85d19c5ba000a89b7f81cf2be0690dc4e00261915a26e9204fc35c86a5777825d6a4e10901fda18023100e35ad2ed747a8e6d46b3d37db7cdef36e4a8b98a39efcd37a6c22b3c9b50d2c44e448d9817531b171346ec47d2d3d9440302047c435bb50066306402304c7143fd8fe864ce5efef9099ed05d6a1216a6bee7773b80ebb25e6225b0938e736ca4aa6882af0aa52328477a834d1202307837982c0744b71560864d120610440f17bc61da904e8cfe8f5ad10baa25b791d1fcb9c45e55d882a940b8a2f003c70a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230637bc90d54e2bcaa507676e0213514ef5b4b84f4cba73c5e95af65d24a64a69b70926524d63932214535fb2cebab50ff023100ca5f9f8fe5b1336161c87da8324ed97250e6eda976181ff8a59e6b862236389cb758e556413311afb7431ad8ccfbdefb0302047c435bb500683066023100fb66757949d79bb8535f894bbd746f5ba7d148e733bb5dd91386123b817e4e001a518e4a139bf9c305b2a6bbc845c256023100a52f449daeddbbccfdf6ecfdf3d093a50a462f6915f325b96c2d4f165c69326f79e13378659c3ab62801fec6890b51020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d93e117e9fd72fd8f974ec3ce811cf0574292586ed9b0162a4805a91a4ce9e373b0eb864f9455a3b72110ebdae12fbae023016d14d4264fa654523ed394d2c6ef917532dec465d2fe3597e0dbd8f3ac6859cf5c99f7a56bb2bb8a8c89daccdce2dc80302047c435bb500673065023100cac1c6d6691722d30208b8a799a548a096070fcd2715625161a0c85c4726959045994d274b960b695b5cfef17708508102307634acdc7f0a1e4056aea5abee324f7915a6cbfdaf497b88d95b91235690cc27c90a1c4d3805cb4b1c2117a0924ae6f90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100868f68733f2bae3e99dc3c1d0ab7325f0f91966c8ff2b0de1ab281dd8fe3fe9d91445d4d0630e604623afd6d59faae0f023100946b523d68b10963e7c0432b62ecd66d428840f64612545039a1ec1f0d41267ef192b4655eb249fa2eaea94a91c8d3dc0302047c435bb500683066023100a4ffbffaf01a2bb31105c02c1e2f87060e1f8163d24634d41069694e89a9196860dbd36393793fdf6bd2a63eb14d508a0231008cfd0eed738ce1f76aebac8fa25407f7e63009120c95164420b92dd24af50a56038008548aec0d5dc4b34c389f61de5b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023028d75fc56a2a2a49126d909da7849719d0407930bfa7434f8b84f2d645ddb54432e3a8cd0d1008e0e9a5e3c66d3ab15a023100877946ffe62e87f1fdf57e72ebb44d37bfd85f0bbf0ff86edeca4581a8a8a14c54695f3fe46dcf66b7bca496c700ffae0302047c435bb500673065023100dcf41469eeed08bb348b4a2b67fe689facd7bbe43f0d5049ee288409b9ffbfafdd64fb77553d5bc6ecf02bc816e8d8fc023055d814eb4a457992f10c6b54894d6a7472fd4c7ed6d29688b63fb2e9d85b6a22c84dc1fc56f50844918eddd8480176c00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d074940df930b477f96545036a58b9e16f9ce8ea60d60bdc7854065707d20750243d2d1561f918df26bea5c311b06567023100efae4d7a04542284b50d29aa33f6f26f53983f4376d4ac13c1cd99ae9ddfeb8ac684fa608457082a49dd606e2eb04f9c0302047c435bb500683066023100d777a4a2e9d958beaeef97aa278ec443f5df0659332f84f91e60dd2c2fc392efa450bde0a9294300854b8d9711c29165023100b19e5ef331d82d685af8f1dbc96ef4adfdcb627fb4a56cd8a700a5013a4344d855f0265bbce7cb47e28a4db0c37b218f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aba2cbfab532e002f3d0ac5a175660a8cd09b25bf55f62daf3a9e19e9b8ffaa90eeb76389ee26f733d8602af9ecece05023100a9558b1ae46f92cb6e2de1b5e1b8fef677d8c90d5f860056a099f15cb4fe2fd349052f9af29e7aa65484c13b8b5cf5620302047c435bb500673065023076d56731fa46ef461fa0c7e07d22fada753e93ba4c493aac7e300ac5908aca2a6e0cc305b49f9c1b516c6ec2095377f4023100a0b93e0bdf1e9e31bfb825c313012855c7c8f5bee5b3e055f3f8b249d7e3badc5cf929a36a2e1355b1c88db3963500190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009d9ef8fb739268599f654b6ad7c697c58405ee0da3c72a27bf46f868b5aaa297fa2edc4525eedca5a33fbf63ff0f5ace02307a16f3ec9884417fdbc6322261f4fa99d094d21a4c1028aab91212c65b6b6e047dbe69f34fdfc6187c0ee4a77fb737e10302047c435bb500663064023074375e3de008dbc0d342e4e9a5cb1493ac48b94701c6b06020487a18e32d39eb055aa06df3586fa9fe542a6ac288819b02306128b6080881e9c41b95d01cb1399a3842e4abaa59b5acf897a871b03ea55f62bb526143039fff543462b83601624a690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e308b09cf01dcae7add466dd7e3b2a1c1175464d493f0e0b97fd4a925e4dae0abd1387778d429ced3b3cd10756772357023100e9c8b96750ee6ee6cc6b56fe940d0702046b2d7843d3596227edcd46312c6fe2f742970066b79df71e4571c752b680af0302047c435bb500663064022f6ca694889224f27e0a6f2f0dc75ebd9d41db4cb87a3dbfcc93b75908f4b9bc4d162beb400f16741d5a7c25e8eb68ec0231008708c4bce00c55c2f567606a3d1c2bdbf74f2a41a06c47c55ad4e0b18076909fed518f8dc3bd4692a4d9365fd9126c320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023077a666c7376fc3dd448d0d3ee624249e1c57ec389e0a98914c6595fac5d96ce80da0b7e8391c6352328efc3515e1a6fe023100b70d622d476cc258726254eaaf28ebd1aab8f4942e659328f754202b39dc6052052376f17e1db4b31eac1581d4a0eb9d0302047c435bb500683066023100df1ae22eeccb6904e5e07921f42e60138028dcf6c0f7542ba16a9264b45ab010d7ea5bf14d04d943aa85d4cf423547b602310083f2f8b0e1db719dbbb1cdc3a5060c6e41ef81784309ff41cf4311a1df4754c8c9ad2e8c57a776f3bb3be1721bd4f99b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009b8d1713cefd100813aadc16e679d7b1f43db32b99692dcb2cb9eed933df8fe1ac7dd65e7c7b62a0db97e2e74cc9feef0230246546b135534c3f1c84d48c09a266ef38c02423fcf5ec4570c5f33a3a7b252f5c8930c6707f49b165af832301c210050302047c435bb50067306502302f6a4052c011d87065b16a8dc629994a1b5aa7896ee0fe0fca8750dca4e8e154a57723be8b6b1f90087a49b605a7b10a023100a166a7f8691bfcd9a29d1dff44274d1ed3356508875095ca9c16cdd208580887ca8e29bca039992e0fda7585b41a664e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e25b158b4868e432a7f93cfd4139bba1d0ec9e88c787c045d5c8c00e52a5a6352e3434602a0ce77e42ded6d16f81d9b8023100def9705cfee06fe3727bd3eded0dc05d69c222f8a5e998e5c8a103c706d72afc8bafe876a82a729d15f00561b9c119ad0302047c435bb5006830660231009bada81ca21d6c271d1251ba143bd4d64138de7e28c9ebb4d87335dd5feadc9d8dea43f018473867af6c5acf235a8142023100d07818541675ca270d5f7b9577c93cac111ea1840733b85c85d1f8e1424a90400558c63b85f168113adf785b32152ace0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306ffae57699f7e37174af5f9489f2a4936d9537dc717fe2dfaa686653c7063053045ba02173642915761019fc14d9642c023100d72f439292099b7a9bfc5fa3376c843b7496dda52d0eb9753ee20e802e520d72f88d59d4b3cd9fd34305fbc15a1205840302047c435bb50066306402300886821d27eb7b55d3f4e9e5118dec7b20a1010f40b05cf87e5c1a90501f3cdc9d7715fb86b0a53258de6506c7853dc302302b16cf33ed4ba532ca1e2810cba86ff8a5d595984caca804be84348a659fbee4b2c9f159a4a35aabfec52cef5103ebfc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e280d0565728ee1979dc4684c3759b6a065e7e109bb0b14548b94ed4a6b941a5158856ee27fcca1a0edc9789db6fc53d023100c3fac1bcde9b1c3f90307b9e53883607558a08687719c92b74a48e823141babd77b1706ee905a9395d48fb36e81b58580302047c435bb50066306402302f2bdcacb7425c7355c4ce9be3fa2120721f33f71535782880675aba25c13ff4a872c84d523d1472d8115e375008739802306d89ee400cb9bb08aa46f3ae63910472437c2782671640c717d8b9e55e21c31b5407e5bb4a3c4dc746313a3e774d9fff0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d8739175a59cf9471f990f53d7673b7eba64c30466ab25ef199325995673988af1e910584931f7e71df60807585cdfc702300aa16474cdfb180890515f38c1fe09a58f451c5ad39ded1d0ed571e4a1d1d5b36d17bdf49c00a63edb8e9da4c5282c5c0302047c435bb5006730650231008a6b5f9ec78b5cd9a849e579183c949f5a2f67e358c4a1c29d400783c8bfe1f4c7ff9101e01de4c5d9a66d1a11064a3602302517ad37835a1e0afed8dd9597174e52eb60466321e517f599067b340970a5593fc699891207c72eeb78346155d470000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023004c708a26f5f497121ae528d1d79cc0a832cec4829fcc17ecf001c0f46ec92f100ca02666349061b894bcb22ed7223ab023100b17b59400d1bd99c6985dd61b6375e393a31641ac34f8137b592269f120906fb92c03c538ec37c659df4b5975a48ae8f0302047c435bb50066306402305c8ae12164b16edffd5eedf259e911fce0a8c36ea487899202edb36b835c9c375dfbd9f62e4a0bb869d9540b995d1749023019a9b2994f5387919f39834b95a1e1f80bf90b82d1c3e35d657675b8bc00caae3b9e0c4d0246ee67598549359f5e40930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e1a69249ec5c417e5eb844b8f3805a6e10dfbe47b88dcd172bec07b47ca16df64afbd171233dcb53a4c6ea4bbd1c6c3e023100e1d23c360abca43c4fd78230b0f5bfcf19be423106b3e845d87463f61ea37607f170fbf9b097a1958c2de3c0479f65920302047c435bb500683066023100e1784a6845c3976b25b831da0a33db6760eabc10d309c5296648a37016a8a8431cdbc3fe38560628ad091732b1e4f495023100d46d15e7a4eadc0bcbe06b27848416d357140045ddbc12a2397f6106fc5bcc6b7828079cf6b20c2ca9c2cfad000119a70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230569d6d91c93a599d925357f6e68aefd3d77498181906bc67a21647a61c9b887f0463c76169d146fbeb62ac4bbc02680102302b2439270251171660954a649ca699a82172dd8ce55c91d9684cf4960f9778a5cad91c58b057ada174cab91826bfd9090302047c435bb50067306502300b89430d999ae11d099f9434e94e4f4aec7f1e610cfa1576daa8554a61082c2d888b88b6c1cd1b4e1eacf6385476a92d023100c63ffcbb4a0582ec42af799eca9d8a6e6c20b48e1dea96b8acb91b058eef54262924dae97360697257e60c1653364b2f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230399916fb6e04d488e43a8e2ea42063004fb4f1e60522d49a39a19f8326c0d509e8fc6044509c3e0acbcbe9bb79698266023035ca8f20593ddf1e8533d376d24435c936630cd047f8786d27849e5748c0227c79dde90f860e1bbf76b04b82b4620d3d0302047c435bb500673065023100815c79d0081b68ebf7059d05caf356240b7a1ebe9babf5c85fc9fbe5a0447d90da191066e6844dd0c62c65f39125046902306dae05a940c06291c7b5f55d90612f381d4882afd4e77e36586af9fe20b59eefad7d75e329d499fd8e9029985cafc7c00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bad95f8f3d9f75c2168c6c81a45b4dcff4336f4e0fe0a308a4a5c6a7be23ba9cd69f2045c5a36c893208b010cddafbe00230663db8569dc8366c7d16e67348c4130badd7c5ff96a26eebda8744d4d3c748e1ef117e56a643614ac701efa1e84cb5000302047c435bb500683066023100c9bd25af7318892b0222ddd0554482e381dee329aa061320bd414ab848ad298463b9fe371021fa7e86ca93aff7b796d0023100d4728b7c97dc30f089b1a47d3461976a9574d3ac5d64c541e17f486e9c06f70cc2e42bf850f51c22b97c1893c75b7b990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230367005f4f3d532b3171bb4289b397c2448c80528ed6506f8ce7c880d1bef48ef49c549786cd431ce34df67132db58350023040b93c5cb7fd94514749039e188b0d11d36417d7a5a020508c7e27627be992d6aa37f93d547767a9bccd40156a57108e0302047c435bb500673065023100dd8c77fd55ea5853c7ef54054dab163681cfbfd8f26e17a35ed67d8acc1f15c461441d175a4a08515dc954e411c793d70230497a9dd0b1a91109c43de18eb912631f53180b73073a97c0b3a3cba9ed4cb12cc0eac5d7de245a1ce14d088ed93d166d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301a3973f4bd7911fe2100160e1627002e790c6673c1ae6e6182e86b33cbfff60def4f07d5a4ad78d6645f3c5242e82e7b023100f2d9ad2230a460f4b92e4ede1e29e7d59c6282498a035cfe8f444e016d1ce4a264b2a9442c95c96f4649d94d2d87afd60302047c435bb500673065023100c6243795b5157022052041a6db466fdfa08e79516842b06214247c34c75288064e4eb7074f4a201be0f15d09a9c5dad50230767e2dbfbf60737714cc80145b9bfe65d266294da4a4a28886a640c25c0b089e155d830b7013ec75ca9dfab78165a5a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c94ede16ef5957592a80bd19d4e90fe2ab74059ca23886d6476285d5242792f5c4ff3d4a1122b0d5e01fbf6c4b4d63f90230214aebf6c7e63049cba61390208055ce0dc3617e99098f70cc77c94b890fdfc43acd5d5a60a6959610655c34872499350302047c435bb500673065023056ca8b31806e5fb30f3caf4b89f150bbfe5e1e82652f092982b0625152c21dca95454a31e657b9a69ff61b6dcdaadbb4023100de3a8c9b10a5c994a147c2139803dbb7aea4e3fdab7f4a6075dbd3bce57346d30a075226e0dbd997d39bd2144626a41c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306dfead063b9adfce64d2e7396e552ba8f57840c7812fcd7ea3550ed35b2641cb93431d56fcc7adb9f6bc58f9d585016f023100b0236c9ce918b9a0aa29f2dca5494b9a6aeec52f3348b6b1e3a27a53bf36c1cf0206eef710c9c117bd24a47e08e9aca30302047c435bb500673065023010a9fb187fc1978b08c45d09e90b5ca17e5f7320892064b293a0779ced2d5b9c95a9be7f7d10bee754a6b141f7ba888c023100b38f1ec2fe4c4503f5a0210cdaa44791aada1f0a4343f6a0f84a4dec6f99348aca319e490534117be12b46968516cebd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023059d9e2716b1368e4e5ff3cea4a57d1a367a5de5a3199cff9dd829dde11e97bfff7d976577903cff5b7b47cdda83d401002303fea49ca712df2a9bc42a67f85fd742a1e01be5e6089afc11daaae6bc217bea8345e86b14faa33ebd50609897b8a94470302047c435bb50066306402302a6754ffed2aefe2c5bc6ee297a691cf9b86df6927898c41637f683c62c0ffb5e06b9defc8ecb0cc2c6cebd521988bcf023062011d1e449911d0ef4953b3ffc31779d06f56bed3953dcc3abc253839b82773cb4348b4121de0f38028a7679b54b0b60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305393f7c083b53411284762b607c8143b2e0bbf0958a22748502aaff0a7f06ac8ffc03ac14fa859b8410d53f29bbb356302310088abe589d4b5fbace4c3d2dd795e92125f23bf995a29a085245e46de20e602e56ea3f06c70b9f79277e373009a25b69e0302047c435bb50066306402303dfa5c9b9edf0961bbf040a3ea007849e8ac3986c25075d16752ba4f18c7c1eab31246d98d1ec6ccbc15dbc6ee25dddf02302f9a5b7206e5a311832e0ede1e73d5869643f667b8bbe7b64ffce9930883b341e9863fbea589af265f4b0af39653c6810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230045e2094058f9d03678d496ceb23b1555a91af955f0159b9993c64e0d323adb4018eb90904dc9dcd77ff4b8fc5b3fc7d023077f97900e5188d36b08cbebec2a203083985bdf7a4e4797a8627fec0fed59c359c20301415f60e7a8444b73ffaef409a0302047c435bb500673065023100b58993ef5b3dfa2d1e509ff290b4238f3cff80875f65bb80e6942b3767a6efbfc5f7e8376bde21ad39d51765c31a307a023035a6ec281981ed2dbb7ae19d5fc14df76d9fbc67c280c6ca7e3b95296ba2201536e6d7fb90756af83bb576dd2770d3a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ede0a5378b5a4d5e7c9768316923dfb66ec060b650ecfffbec758df4ce846a8d3088f616186e9ccfaf09d56b611413c5023100a4044952d7221e1a5c604815b599863c339dbf5c64c76d05ddc91e5fe2a8bfaad515836fa1c30cfcfac830a6b30c93240302047c435bb5006830660231009d02f4db40fa3f11c66a9cdf16fa4e039d2017e3367bb4fadca6148aa69794d028eb0dea56e43b05b6abf92d99f648ab023100abc57771d37e11a2ac898d7b20e8fbb9ae64c1b18be0921ea1997a830b2270f465edec684fa7b462e9c17838807f79200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310099d67b0ba66a02f850564bfe83c9f669dfac6490b3d8419ca7f79842e05014917379a293c8c93d3bd8a39fb9b2d7757a02303ab207f765d5d4789d184008f22859820df79afcc19a8fe721ae8320806a5a10dfce4c68ae9d4de5c9cd4389d968356c0302047c435bb500673065023053eae82dc5885ba582e61645dc8784edded5be70537e8184a7220553034f8c4a558bd8ff8bd1c37d5a1f979239f5f7d9023100dd519c37a1d01cc3719232b4c8872bba94912ee5599628a7e7f069a812e327cf35cc4a68b52b9da50533cbaea2bec9ea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009fb584b2b28bdb0359d2f28129e709d5a3e9a371f6764622333ebf4bbaf7cfa7fd6e74cdb865e33c9d3bdf23e05336b60231009c76f9e66a79c600bf60827f9d22bc73bb95ccdfeaaed9a5dfa9cab1fa50e95ccdcddb7040e9f1fca0dd2aa8abe87e840302047c435bb500683066023100e5d60264f23f6b26a56918a41b6b6745d69b23ae848c6a0d1666b2246cb04e20c77bb7ad46c5a456b8d7b2898dd7aabc023100e1926ddb40cba12d33741f86363a96ae0b8df7ed41e006f9c54c1ed1193be5e0922bcc26861dee425649f1668e799fe10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c1d62ff13af3a87946db1e7651d49a06d19df286b23ce0c60e4266a90d3dde33c20b735ebe42391946da677b1945212d0230727f445a2431b64afcf3e02a00db3d8826024651ce1500e987ded5e9a12d708a8dc9f5de5e25c5578a472497137ee0f70302047c435bb50067306502303ba30e20697b7d13e697bc1fd42d1b3a576e48766a6ef0a39c458d6bd5e582b0de0b9a31461eb6891a7ae010d1922071023100b08b94f31d28c206b52b821d3808793863babd3188fb3b906e4b273c245ccba028883c5fe2e97f3c871648615f60764a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300c8dcf406085e473e62481e6e80c7f95b7114ee896213c092cb8fd29383f749ab9fcc6a951087ea5f82b18a76b80b42b023100ee1ee391be0af0a19c59f7f6359a31f4ec86e192448bbd08f25fd10ba490a0ef5313488af5db6dcb312b1913beb04af30302047c435bb500673065023100a5e9b748fca779d3e24c8dba41797dc95232e1e149fd67f89bb3366979e504449dd637503a18be4d9faca36af2a67e58023013a554165dc9674b9ca37b98798c6d6333711a315285fff39107440485e25f2e054cc590e8986c37fd66a3d12bf6ffa70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023050cc82f308a9796ac4c99d04c4ecb69073c27dcf2cfd32ce85f206c71de7dbd77c4dc361bff57c41284fa0a2641415d8023100b2e082e7d66e1699bdd3e0236aff8c57ab34a27c68c0a7d9fd180f5863ce28d93dab35cc225be29a7d69eb2a9b325cf90302047c435bb50067306502305ae852d0d8ede96b029c2f5f42634d46017879c64de029732166c4eb78c45382a872d5925a2e12b4a456e8e78535b8e8023100f3fd98555d5d1fdfb067735e7e11a70a645cd69ff2d25253e0dacf764015e091d9872b116010f72063d159f60cf446260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230365ab4b407008c41dcbe77ea5616605855271cf1d6747736808847aed94252ad311861233c216e26d708bfd9b5a88de002304d67aaabad5a79664faa1bb9fc4fc5ca979775785ef746b69062e698d006ca5afe8932819e1077aa8564853918aa29590302047c435bb50067306502303b74973191c5a5a37e3bccb5bd278b8345d7664561e42a437dc0d3d6c084429494033a216d115fb87e6a5f188fbd61da023100ee0433f9a1468063505f2ea6200753e1df4dc4ec65d850b41db8d5bc3ff2d946157eb828273188e80e0b41869d758a020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d6ac27323c434637f028c73f687b36b3d1c693dd4103654251901d6d8a406173edffa0fe2cbaf8c562291ad1bac6629902307e0073ac267a60f59f1f1282ce3bf4e98e958f794cc5d9ff96cb75cc60d3a3d0279afb8d5bf58b458e89b0afb8374b9d0302047c435bb50067306502304e1da3c1eb255f3f855b245499864d3d4cd9662a2b0956144378b47ae47a17bf6e21a817e03bfb45cf097176624d13430231009de51e0590f0abcae423a2fab3bc6680688709b9ada562abd65daf0f70f5e7824077a40a408e41d6096cfab669dfafb10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302701c1be9f270dd5710443582e7b8e33fcefe4c6f77a4d9a7356a05c7aa4d13074604b850db6e5344f82254b390702c602303f1cd3d168936c007eae4b76113490a6f7839daab6e0094dd8bf89b30ee6cdbc34f9ef15bfbe2c2e0c5e8acbd61176a30302047c435bb500683066023100fc867e1a46cbba7ee36055e736c11634ac38fe92b71f5f8af04af3a8debc7196a8a8184d2e106186476db501d5c147d90231008f61dbb29d10fb60786e6b11226a9239f30b666f159eebada8d51e7220241d621883bf2abef6c662b49a9f9f48c9810f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305c028f4f6f4e7be78a8b101a0c58d2732975a32253d3c6240433d3efabbc256705a0cbcbaa63ea72260ca34242d24e2d023010f3e66afbe29bf94e2df230ff3cba0b8cd447147066bc1bb9ba587b36cf80cddad34b2e611a550dad4f9a2864515f7c0302047c435bb500683066023100dfd517e1b5b9c23a4097479dc75153f22e62b49132ae673b528184649b04695b6c2513749f74440bd84a7c14b238c736023100857a94998364d940ecb8b2a51fcb2fc93e0ff879764f1f441ad4df70e31a6d3dbdb0f80a54fd16c9c29fa64035e076cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ef52faad3e422259b1a0fe2aa014a9e589906a4e993efe90bd2182f2be93c54917e39c1ae157397e7e8daa49f6274364023100fd19169ec758a133a88040891a0f2b14ed857e5c5654277e3161f98d05ea2be1b4d91c2a80ce3a476bc965f9478fae980302047c435bb50066306402307fdadf784375d26f553e54038963f2531cb6b38b6cb816b108c7cd01b36fabeb78fbb6fa0b8321eac95ed031f65c3a0e02301d3b8c5143e5d5024dd24373aa2e900888295cf7f6f1a128fb313814523ae26d2184b8a56573a21de2b222461e47aa010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a77fadab5d731f5fbf6f01c06b3e2c29f00b0b855d3414f01b28ce1ae3293bc8a9effb758d69f99f35f9ced2b78f52cd0231008ee4034c4694ff6bc454c27c6a3c5f26dcb246fb77b79020b8a59cfed93d346a5ecb7d14a70aed3ac2052c196156a61d0302047c435bb5006730650230324ba394cf337bc90e576be71d4938ff802a394251b2e21fa00b9586f8e6ad2ccc7586656079fde3ce8f6c579bb536a8023100c04d7a58a8d30deb049cb15b52c6c62541bb8fc566b8ab63630956c7b3785975158b33e0294a7d0e6839cace1ac920ae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023041a1d82f9520618c634f7a2cac2822ed7595f22cc9ddba681c9d8e6712d20ec9e71db1acc6cbd688174ab342809927580230132a3061c104ae28826ca902031adf7339f1cdbd796419a4d62daa318b760b354f65d0999d277f50079fba049414cf1c0302047c435bb500663064023001705de0c995c8c785c628b934ea28f70506c07b26f733f42c5644e71265b283b3bc0822b5dc5ced498118eb09b272d202304aa8b25c347e7b280db7ffedc41f5318325a63668773291aec74c69f46363380b7d5e6f740e489f6a2dac4e9ee17d10f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fed6b7cfc40ea038a3eff8f179ab8c38c3a326fa302ce8cbfcda6cb8578948cfcd79576858e45f1d03be5f501cb815a1023000bc0d12af5bcbe1d1ed0f843d971a00ebd24b78995f0d520af8c0427aa71dabe95b97d9e2b89691c20edf77e1bfb1fb0302047c435bb5006630640230444e98c490a0222829341b661c3b77e5da800b3724e8161a7ca78db36ca75555e428bf6d65f53599bdae65d80b1a3d9702301a399cb0822c4ffa002f86cb5bdf528b3bdb135cea2c611945df09264d2f82ae3d980bb8a8deaed019613c3a142f844f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305cc89c186e38d3a45dba3b771dbd4bfa0224a15fe4f0c6519d3adab8b2e5cf93c682695ded9850a7af3f75f8e21ffe2402305f336db5f7e117b45cc919ff5f6a6e6394fc80edeccefbd45ae7c6eb2527bf168c140c86abfeb74636af0cde647777250302047c435bb50066306402303e862c74f00520a99ba0f0a6d9a156aa5a48a87233bee631aa4c16e57fdd21dc71d0c6f90d510d22adea56893303208902302a0ae26d7adb9ffeb401f315e42e0d84958209ed99dbced899a44cfff2a54af598172d426c3d1dfec1557ec7ccfd83a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e9937b08cabde1f9bb1dfca8a62041a754b762072049409f90fc10fba70db27e5be05f8e9e4383174b295ddf862927fd023100e24faa7e3be0966d0dfad2eeb601fc82d57f643d5516449cb3945077be677a6b171691fa0280ce2425f6e99fc56a06590302047c435bb50067306502305d3cbdde98270ca9143064f589caf51a454f3e99bf47b006b105d829957b9d71b8c2c041a7ea5d002441fca55d411b1b023100a756a5d14be2194efc443b2eb6c8a782a1c0d824732d5e7cd11ca4809075077f9f24e3708c83b9fcc1595731f35018130302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303b5042366b2e622d33d23bb3fe7c2d2329587e09346e4544235de27a901124faa21b345cf485b4606b12de07bbd4572702304e82b8ceb1958dd1eae79b7d9b0d6f71ccd8d00091860a286c8a1dc78ae46511a548617121aa7f4ebb1d03fbac2efffc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307f7b22afafe1538619901cad02bf7201401affd9f859b0fd74e5e45b96d1e2294e79b32dedc32b490fe5f88634b4fce70230472b3f9e016f9cc604a82a8ec53a8d996ab2cf41307ff00ea0c5552e98487b9970de12da6f9e4d133b8bd44f7391430c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009cdce48a6eab7eb14f76be485005a1be72f4b024cc5d3f664bf322790131d732a1d3ca8d8820c69fa0c19f1bd050242c02303545b8d8c150a7243a6e325a99c9047fba5018f340dff3ee784f6620803d1b16eab2c513adc5667a5f9dd7fb378d5efd0302047c435bb5006730650230156f4cc68bb4f72b2f89ed4b16924d1980e58917224ae3782a07b7deca4a18cc95e7b897ecf7c980ebdf88a93e804971023100a53c505ef0267d48d8570bc81af4d1be0fe3bf292f495d99bba256a0c117e76343cb7eccf02e7a48b3cbfe89655e3c290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303e131979abe94406bdaaf2cc43baac610e91ee9a9d191707534e31e701a9795b65659e2c944be86f6a5d8d6baf6c4e36023100a1c4ffafe90868016d36ed16b78f3caf79deaa35958c847ce0beb1084e049c5fa82e2878c689acc29644efe9e3d46e330302047c435bb50066306402307fa128a3b81a76ecd31622d04fdec87d1e0ae8af1ffd2f704b0e1e91613cfe5cc01d8b1a3c7f6dba43b8571035d2c86e02302983d83cb7b5d883ad7cf37e8fa9e9e3964c1da2527169e50398efcda1b42712e3b6b59a30fa974a30482856aa1c4f020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d1b5358b2dc18f34493dbcbc2a6fc702612b72939951ded575a68a2ca986915cd0c39904299a60ffaaf82dd3385fe4990231008cd31312ec860d83fed8b72a203879af28424547afb3646915415ac7185f32d0769de857516125c294f97ccd6be718c60302047c435bb500673065023100ee56557923f49acadcbf460f081c1056e95b0deff496c830558b73931ac592be6fd157ce4134ade9ed67c05c41289fce023066dbb275eaff673b0581639e0b123e745341999cccb85525247168682a587de5f946781557ea4c972a900a7679a565b20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300408ade22bfc3cc7dae4d418945f39654f43cb926192130eff2d51f9e52afd366a235bc6fe8b63d6492df6de509db628023100865b3d925b434a097138a5012999a68dc066a36ebd5783863e41207eea9cff328d490bd6ecd0d2bde12e6ceed1b770040302047c435bb50068306602310084e652a47d6dbe6c4ad1956806aafa8d8b6f55b62c5dfa5cffdbefd4554ec5ca3c11394b963c20f29392b36526f2fbbc023100e125608319ff8ff11e8e4311cda44e5a8a549999d0ec12e18c5fb623f64aa3a6d6485b6c6b6a5693bbd3d27315a9c1740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f8a001d2cfc6997cabe1e321eed4722353e9ddb249e526992048f1f2afd3974722ea6a68f73ff4e6f513c4182cfc5ce0023100ebc3982d11a0a5188ce8e9c24353996d8f48b43acc06f52871e453cb819506bf537348153b1bdbf042544997005b60910302047c435bb50066306402307501523153b095c5f899b83dcf0a3e55bbc00f4e691a92f99ac6f837509d3a80e3fd109ba164ba5fc45f38ac7108fdb702305e6ee210465a8f64f3298300b61bb7d2d6000198b77dfe15af91df1cbae2936db2ede2db9700d59e411fec753c1d4f100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305798e95f066a8c4f67ee371ba678ee3fa6433d6708a16e99f521f309f0aa82bfba499f7b2ec337102c7e3821fe23da7d02303d925fc14a7f6d7c10ef210735b0e1e3ba642f4b251d91c434b60c57fd76aa94379459bfeb7adf44de5ea15e8cc721990302047c435bb500663064023033b492a7e1637a17a2b8a7a9e50b051ae3aa646543896c7cc2b9abde869f9c93e76a1e857b6181357ec7d5bf5ce33fa002307a5631a60703a43a1a36b1a57216535f25482267858f51047c26d929745f8bee51bf7e8aa120c3933902ec562dce522c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b49ee1d8397eb3002437c3ba944a5f2f56c796ab08b73a4dcf90e6db7b01c2307230c5d20f166f8f00b9cebe2baff0ab02301e44244821d0365a5e4572b8a701253e44b93dfb3185505d8b86868ddff164ffd5a5ef2d6a4095ddfa423ed815aa16c00302047c435bb500673065023100f3324531b2cd19b70af18904733cde53be8cdf46eed0be77d61cf51f0b91c9de31ba81cfcf722b348f15121e31db9d2302305b030d0d722b0c5b212e17c5e18925116357efde7fdd81cf85b280179ad7cd7b61895cb64d80d550bb762dd507fdc5780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230274c79174f9fabff72cf7d8c9df9fba3c35e680d15fef1693757e2fa15331031b9252bf5a5045999701219c1b7db55b4023100b19bd7ccbf3b1c5169d6d53f26ce5eebefe9d721605bfa0b379a4a502814a0f78f1282514601a7de45e397411ca763280302047c435bb5006730650231008ca1516cf3ecb5442e3b920de26740d4fd4749c712d50f0f6a392ac7c6909ac46e4cc38414f03b50ede51444ba81d2e802306e6b53b34e903d783597e7f89e6c28bb85f61ae4bf67bbdd149fa4d9ce69a9ce9197159655d9ee4fb9d42b774d290e070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f09ac57ed014c0d31d6c88e89ae36b134434959292ec196887f1aaa776e15748639cd7063f9c23150c8e1622e44a2cb9023100a0fca34afdaec01dcdc4da317cb49578371921fe09edef412c559d91f2fc023c73e3e8bf62afb7cedf516b7808f9a0ee0302047c435bb500673065023100868862a91c73ed8afbd6828025c967c1ef1d592a0c1a68795e9f2b9a5d3405638374da32f783938e0b80fa2dff04065002302ed0a3997964d88da3127cf2579320f5607f6e10e962e16996465f5c0af0ced3aec5e137cbf771fa86257d1e312c762a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023057cd6f4c86b02a9f1a7360041830f757a0a4409c3e8ec6d73d990d36ec14d888f0598ad33fcaa2726ae14a8478e5490b023100b33b882657977028655d9aed82a99d958e3a6d78f4407550989e97b8c5e907223f97798520df3a2edc936f97e3d2dc160302047c435bb500673065023065279358560a1aae3f181b0b6b455bef73ecca41c1ec52605afc20b273915c31a0f1e271689443a46becddcc1c0d8a3b023100e8c65b68b42383665946b72b9e5dc477a224c2b70a55938716ac1831aa0c59bbb9ccc5429567912c89bd846dbcc6e1320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302d77a90f624862bbe9b2cf0b032ef71181d784b3f7446df32670aaafe281155965ad5922623c4fc9cab6851d07e9adbb023100bfe32017f053c9031bd5c6a03cf9aacaf6120ebe97c7bb92cfe0607292ec108f5483af4aecdf03528491c16e022cf5070302047c435bb500683066023100873622bfa6911213745d1039e935dfcb29d0023717674d5c34129e1dc462bc7e81ed1313416b5e6367fc09ed9404cd3802310085ae2802579ba9fe058ac187f8b0305403a65aaeac8efdb7777a61a4f01dea2332b4bd79d4189bae80b1eb306ea62aba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f6e610f4dd161061ff2af9edcf4745e72634b0c2253d00805f94744b6f624f811ad0d40f84030c517a6abdcf66d3d72023100900089457dddb2c91faf79aea623b476d754f2fe82a8b8cdf177e50703da34a6b4939dd38adb6edd9c546f41be8abbd60302047c435bb5006630640230295e81fcb7189b6164046a1acccad581c0c5a92f72c7136fe343ed914d77590fe9ee6022a123df76325b7788de77e4df0230469d9f5a5092573501be4b807afb717f028ac23a21733a80ce0280bffa55ff141e9e6371f134c2c308fa210caac0d0f60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ebfee7cadd523353121cb2265786177a48e244196e8de9cf93a2b90c466cf3304b4184cd5481805314f3f4f93e6194bd023044ac037551a6c3d043c3471aa0e432e5907dcf9029700142d5f28bbe1b3d73ebd8c1ec2828ff245c327bbaa1ddc772850302047c435bb500683066023100ff2f8a1e17519b78d41d7b2351051bab83704b246d50b99b4aa651ccafc364b807b778e4725f5240d688df0aff5301d702310083179c4037f91ad38c6f6f85a2dd13bc575405ce1fe38e30b8c2ae7abe4a0c7e90e9d74095e9f8da8fa3b4bdcb912d2d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230405383f31cc5194b428121424960bca2a447ac7d8557cd5c70d9ae18ef766193af0bd2fc32736869b6e4cb52b1a9032602303e2f01f0255c44aecff2531a330bc9843fa43b91f7c380fb3e2f234ddcf44e984e1edb80780ef668c2b9b7a3925bc54e0302047c435bb50067306502304721ba47e7825f92e35d07b940bd47356cb26553d6c4e5b6d5bef211eda3fce4b521583b516df443f775bda2afaa9c0002310096c26e87b3cdaabbbbbe3e5095507817f6be71b5cf5f1888a2375817b1e86b07788c142588b433221ef3f291f588e3db0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023013d86c174403b157db8f5e13d8c51ba4a2ef9603eb5c1970920c6cb63143e8d5744829cbd246d1b7a61900790ced0077023100ff6c92d444d30ef1153b65222f210a5720dbb45da0bc5d1e1f5f3fc9c4568cc789734c0587c4d30ec71850679ad232f40302047c435bb50066306402306a07a5ea5007c2ec18ff892351aa92fb65e8154ff8dc15e14e3de9351b06cf201a6d08e790b086eb6bdfe27c516efabb02301f3792fda8f62c63985969f66709fa7bb3d860940ef74e96dd4820aae245284003007c2ddf36fc66fbf7fd2dac6988030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310086cd6900a1423cdc96031e4e3e11f262e0049e381a6f0ceb4041cf2685ed35abd910053b25c70aed64d71c2369759a960230092da48ee92b4a2072faac37177f17db75749870f46074fa486fea6d015ab90ab5e01935dc176a52a9f035c23aa9d2550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023006673b26788f6a0cddfeed8c933923d4b302beab481b2e9355d3a864437ee6ff001c2aed31e7af679dd88c93be8ef69c0230098ca53ac40dcb8c4dfa7aa93b6a496d6bf8f9b5461178fd91dfdfeffda55ef69f10282de6796e7e2d2b03d6b24654c60302047c435bb500673065023100e20b991f64b08de8135317a5768a682d3e8690fd71c225c2c58491f1007faa17da0f287973d5cae3316a080d98f310d50230495bfb67dd2008d11151bab98fbe297ce6aafa7a2c8d3af7cac91610fe2cda845222ca7330915d15413770c83005110e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023007081dbb594b6ecaed866cb5337c8b2f0f153a725c3f28afda54155235b150a8dd78d7b4a7837342b1f69e01297652ae023100fecbca92d78f8ad9cca613cf731dd6fbda25adaa19e7aba4e3f9a7ae5c5aa8fd35eaedcebe09d9e97c1b10c128f10c630302047c435bb50066306402303803b2827f482ef884a498369b0e4e6e7074bf938b839ed69b18815998dfcc7ac2ec10d8909ddccd7f0a284bd4e6e0460230293d670ef2c44f228c0c02c09d666b4f25463491a46cfd3074668d40074dce52188f038772061bcf10270720690db4850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bae5521c479bcbb3ffd322f5d8029c45e6a0a3d0f2f3ae2f075d9c02d41d10ad7bc1dfa1f4ce02f20990de1afd29e5b9023100fcae732ab8ec3749c46e131fb7d574831964a9af1672a3afbef4b733ea9d86edaca26cd7a44d51f8e285531bc67697870302047c435bb5006830660231009834b6617c7fc8fb9326b228e7a474c737c98cd337d3c23139541df809b737d74068ed5f38b3213ec176384207639fea023100cd7c7d01026a3a36d24cdc8df5f120b666dd4662072fa3aa74ff49596a01b14cf845aeaa6e1f36d9ae373c6506d67b260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230371939bd9e538f2e58849db6bcfd34c2e65669925a0f62b2528c673a7b83ed829a5051a73deb8abbb56cf39254b4652c02300d8e3f17ace1089d91c8b8da03f31738ed571efbbd908acf1be80a46f75f5c96c97869526be9b36587dfa799743207400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310099f011c3689d8f025d6a538eaa11aefae93a73237cda94551e959ca654c6d32ceff6aec54245cb0fc971d394ddfbcb4e02304277b3df60e66b453142ceacf172806d0bf4c65e9e2af3b4962d762fc9b7d089f4032a2f406872d5f1e0f630335b87ca0302047c435bb500683066023100caf614ffc86f4a5293b0b16e989e27f717bf38eb65f134e1095b184a11fd3f7ccb04df9a8882128409e235b0077662ad023100cf3c92c4c0cbffc15abe522a3b157eaf0c2bd40173e2c399e033f29e444d2bfd86a8e0af48f61671dff98547c54de7be0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008c44a73284045e7395193efc03fc59b23fd9cdac1895dfe26e98a99979093d958c786133711d2579405d9214e0f2a39d023008b7879b764abfb52f197b623de5cfc2c86054d435b52b00fb1ac01336983507ca1f254631a050819456f5418913d8c70302047c435bb5006730650231008671d8780dbbb54671e4d1cad18329acc9d5bf52c9b63569991fbc9adfec9f9c7f2ac91f87abf956ee187ed38b7be4ec023021f1db2d7adb617137079b7b318acb095de2167f84eb2807efcc94cc79352d4a9097a41d7c33dfc229b247bd3ca28e570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303d5d1e23164fddb48f4575b4c48940e1446044cf4bc44486456fe87f2779a727bdf4d35a741194c83fb508d5c0def97102300ac349e747cfe2d429a05637fb7f4430552928a9ca333504e4c8661e63727fbb996ba8e52368392383671801beea003c0302047c435bb500673065023078486be2401ec5470b28bebfa24d920619126e73b88ce9634dd25b3e4a3426c0e7e35739de982c3b943b17b3afbb6398023100897efe72359f5bbba6cc4547357bc2d4fae57bb3e15d2cde26af10d559b44ab2ce5280da2e7646172162d3b7cefc9e210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c3ba6b3540cbfeefd75a5c32a181865d3f8249b16322ea1277190eff3aa81c4a80e2cc374d1c5ddb4b692582676518b6023100a46d04ed0d002cfb835fcb59f4f808d2af604c6cd58a9824b19b94450dfbf191a012ecdc14938c2529a5ff19cd780ed10302047c435bb50067306502303bd69a0e3be70731462a6423d4d0b840f49afc96d62ded652b2499b6b15b75acdd02b3b09513c036144d275bced65e94023100ef0620c3a2d506a4c918160ee7194d2dabbabe4fddfa66f00cd601c6262b15335d3c23d8a519b69ffc6f93089cfcff690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300edea7c690fd42365f62aaea16ddef6abd6512290c55a5ad13e8b743a19652345ed903af7f55d7020680c9129a9d6266023100b68142e24c8d12e08e2abbd678403674a7644064300a9efe59e066e885601f38c9222d18a9fd606e53c2ded1143014930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023059c52544da9c034feb72ba3bb2eb63f544f660f7a4e2b6058caabadfb7c8e3afb1097080b4157799b896be9ca652bd58023022cbde2bd4a33cad2815d951bebe00cedf56309685a089d9eeee543a56d1e83be303f41929d6f1872c629195805e3be90302047c435bb500673065023100fc1848a6d9b5a6680a2b06fbed5bf0c556b526f79c6ed5c40e4cb447059adeb14afc13a022360556d8a946061d6b81a802304afaa4ccb2815b9967aa9cd29b01948afa63cee416186b53db84989b90b21c2da75c6d7a8c76d3d2e66c431b0fdd73ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304f3c9412dc09cfe2b0b3332d92f98856cd8302500cb637434e7c626f248d7a33de75d8305a48524c386cf0f81d3590df023100ddcc94a3faaf5cb27ee20dbab48bfad8946341a0eca751b4a8f62ade2743211365e64235558ee5d8a9fad63bc567d0790302047c435bb50066306402305de980140a9820f14c2df4bf8195be1a4b38ccbeaf815985b2875ddd0fe0e6ad213eb602eb628603a7e1458f18f011620230406490754530a73bdf8cbb55b5e9871e57faeecf1c68171cd83be0599b3d1e5618029a136008613f9b9fae856b1418730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310091c2a040c99a94d69c6d8bf87c947b7d01c4f8daf4a5ccd95cb5a125d0ea9f33fb1f6502c77b8e59496139aa7a3adc7d023070049ee12d431c64ff3b5af9a86e75ace2c995784c5b9ad66398dfada81509cea324d5adbb1453e71d8576eedd3a713e0302047c435bb500673065023062e6881ea5b35df0c1378a9d100845a25f9ba999fe63fc8de7787ad16514560de983e1f9e430f7995de57d9a2b7cb207023100980a648bcca17cb58b33f2ee40fbe9d7588bf8d0e7a379d98670671321dbacf8169f3783e9a3f1b22f85a30406a80f0b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023011365bd6dc7b6d43abf81869aa9a0a5ca625404cacfed58cf8c7f732ae912eee4641cd5c4fa8b704c13ee25c95b95aac023100d91b1f1825d10f062a524e6f1a83ce34a8ce3ae5ceb36e84f4d8ae366ccb53245c0ae038b5287ceb27a513e8b1b2b1460302047c435bb500673065023100e756443eaf9f8c8cbb081179fc4b8a29560435fb54f42f47f900da99f2c846662bd19fce36651da841fb9f5922e2666102300ce950f0cbbd059b0405492d9a20ac3bf1ea604ce5167cee16c6287461148238cae0b4edc62d2dda43d73d8e41c635fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008831c6a21a8b126c342f7777cc1d02db97b9ce5a19538635a4d008131abeef9a062432f4ea35992f6196af3ba5453d83023011034a32d5cdecffd51af1e289f7e8310317534ca64a0437f80c588fe852f51385fe6583178fcc79cd889ad9d0b437b40302047c435bb500673065023100d0028e648c0bbc795386f4619b85abe59783d972307581c2a4a86d4dffb7ae38e50a247db77bdd6bdd03f2463fcac7df023042f734f0adaa5a0ce0a4cb7525f295ffe2a162e98b57ee431594b95d510cacf5c9c370863909351da01d0aa91fc422270302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fa9d2a2d5b1e2a8908c8ef11d217717e3088500f5cbfe46295ce603eddd7435ca30454b92bdc9c28b29cc382f3534cd7023100b5a286439d777b6e3ba9758156824cf5b9da883a0caaef1947b692635d140ffe4059d31e8a63180eb0500d372cfc7afc0302047c435bb5006730650230733ddf98c7014d994bc19d86c7b7b39de0d09dc20263e4471b62ea9ccd3256fa00a1c00053b95fdc54713fdfc8a7a9e9023100ca1d69edb8d20461be477db9cdd7ae787e542e79d3310fa61a79cfff30c9a021aaa8b1a812472d97e9312850797a07180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e39a78f7f1ed90bfb8311b9e95b1ee9cd5ee5af0f8e647605750148777acfb630bd1d1f06e187ca400de9b1aa38039fd023100ff0ae6abbaa166df56f4b7e58618f5a14b17b4b5203d792b43b1b077772be43cf952eb6f619aebac6196dc759de2cdfa0302047c435bb50066306402303618ecd88cbdc7db0fe791eab8287571e20b16fc87ce16f54a519c371fb30421a855545afcd69ff3b10bf6ef41b4b11a02303314310d0b82fb31b60ca97a35cdcdbe05e069dcec41a4714226e8f0d41e5ebfc9e65c01d4941304cf49a3eb83d08caf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b5512f09694e025d25dfc47e6937b0412404062c899d258591cf087b90e67d20d44906e9bd26f2afd51fc4c8871e9886023024c117460426704249a3418eb109af8d2fd1cecdab66c14271e2963f0f502024022657ab8410dde36377f9049f598dcd0302047c435bb5006730650230460c32bc2ed77796141f195348e5682cba4cbb8f62611ca556dce288a95ad8a514d0fa559d581e9c56554ce5fb9f310002310097939109053ff82a98ba008d6ccd230fc5dc3ca7fadb62645c19f5d5738973ce8b0084699607d479aab82bbb2e945b950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c0f70fd5670ad29b06376892d74bf96fbeb0c507568414f0b65d1b1efe29d00826fe4806f51308be91443cb57cd9d09f0230167e7364123153260356fbdbd881b6e2b2fa157f60a9da7b7f5771bbfbdf2ffcb48badebcca368f1b6368ea2975406050302047c435bb500683066023100c5f594895c8ed571982f31a618064d6fb4366f5198f7e3612b7b4939b6a741eabcaf948a38be077862f9b05d4d1021fb023100edce8f947a583fb19c25f9bb92fcfbbbbf4b1dc86ba297de0ef0b9fd520f4877bb537dae349e6a3ce50b2d05c2162de90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100972a57a625aa25e38b756e4a4a306e9827ba678ac7d6d961e2e75f5c9f3528cd767edf6c391a38c5772111d841ec5290023100cbf0a066bcfa0070ceb19934471934e0fff39b06f974a61bf14c5a3c975443a1304cf1f09ddd5be7ae9db1ef635a38d60302047c435bb50067306502307dc637c967406e2bf5b34574a7c6822620b33cffa394406101f3a23691f0b3355354490650abdd5fbe2dcc91cfc41f8a023100f4eb8f6a7a24c0e5f8ae97692eee7eb990d1a7d88fbd6e362b6beaa0e0a4902d1883a5d1987125bb2ec456965bdfc4660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ba8399ee956bc211283debbd81587f82938e1aa1a41291c83de059ac44d22e4b14365deb8bdd960ebcdad4ac1a41652a023059c24a72f9e69c5a716236487be6f250b0baed6a25fe3249702546d9562e3542610a095117f55c0ebabe0ec6f37731730302047c435bb500673065023100aa449a757c010f183487b7afc9e065c0ab760fbc95196ecf2cda85cc4d90115c08b27936f480f57c705aeb3a6b5fde7c02303c6c544ad1882e6304da6536d6f99df0dceee881c02d887238b1c15cb63cbc73adea10f2c233727630c4482cb2c734490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230313812124a337b79088eb1ce16df3dc837eea209f71f5484514a44f9c60aefc6d3beb84c3889bc536ee9212b3d62ff59023048f28bb4a06048750a3e2898fa8a2d8c34d3a956dee8c88f775c84e46d7001c4b0678396f723d70542f5f5649f207bce0302047c435bb500683066023100c614a4ae9ca6e4f1ca92aa27f05db4d39d729eb56b120758a4af9789c025b130bc2bbb534f6303799fb50e938e727f1d0231008531d26b6e65a236d8626172008d47d4d7f9419c85a043044ba48c6c71112de9b69fbbb2f8d59a74e7252f1e3df2c7be0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fde81820d3dd7550c0f9460cecddb8d6ef2cb1b16eca4c551a2633b08729271689ca875479074fed4fc99a198bcaf1dc02301197ac30575dceaae9db9a30b66da3972dac1a38ef6f9d58827a2ad4b625fd392191facdbbd104de691d645889a20f270302047c435bb500663064023039a3db02a8dcb949f09595534e00a125ad983273b4d5f443458372df2ab3de65d3702bd535275830bcee03c618c5d85e0230372c896ad011b52691380ff4d19d836c33735ea3f7f54e62d346ebc819412b3b332fdd36b8e2fca03c34f66e031b6d2f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e01363bebc47376f3ab84d01f4e4b79b42714eea38e9a94d80add69c9923ac0d3ce2c8fecf43bc465301a3a71e0d432b0231008fbd8554b2fe5f270527dda4bf24ccf0421730352a8b0e820c9b2d5ee6a4b26a1414ffa8a5f15a544a772a0e7528d2940302047c435bb50067306502303a0d5ed507a4933b166e99da91fecfaded7f5e62420f78564eb9a7b0feba79d0e0e7a77168f6390d5baceb29cfff5f1002310099807773381d2d0cd45ad303d5b4f240f0f8b477aad2f427eb7b1f9994bf6a266a1bb367664293ff4da7634014947e290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310082ee08be4c73cd4f0d180af5824faf18dcde7ec1fbaeda5edc82c46e19b59324422326af04283bc033c41b7e64c0f177023100a18babdac4d31052846c44d6ea9e01a455aa073148d85d9c49d02b86de53fbbcfd374595dd6cb627d4a65306752b80c60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310090f4f2844dd6e70971c6e01a9bf395c83999e6dcb838093f2572ec886390c66ff731adf6d09709c4f4fc999c0d7227ca02304f49ace749e02622deddaaf05fe8f2341202c99bb06e2864e7e51e731ba4c20088f4245779d2efe19b12fb41ff236e9f0302047c435bb50066306402305143509fb85ac93f7fe6d7e9216e37281131938c47e3fb6f8cbc06d36fd04974d7a47623cc387792fbfb763a4d0ccf0902302b33095f8b7d7239f8eead209068010c7888e643adfb2b52f0a6ff7537106ac399348ca749b5763033a9eca5b3eb3a730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e08ecde16bd708bfdaa56e0a9173720d355bdb77b43c56656f9a62e2df16b6f8742628e005ee75b123d9fd70054cab0e023100eaf1e55041456aeb3a18cbca669b2c6372865bebfd9d2aef91d5409b136ecbf1ac67b1c595676eb2d30f8edb90aee5f10302047c435bb500663064023060ace104f8af5e3595467c6785424adee1fa61b09243c55f405ad37929fdb7e197aaf55f33557bea409835c899439d1a02302317efa4f3806c9eb64ab6530b231c2bebe955b76ee6e2425b388daee1475f22946ed558e4b2ca7dac0ad743370bb72b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100de68f9daa94965071fae11ef569e44df5a431f42cf3a526ba32c185614649bf45b9b92b635789809988731d8c9f625270231009d541d1adcb0e18703211936630b8a2016e87d721561bba023f0ecf70709b76781f5f8c93c4be603c002e3bafdadb84b0302047c435bb50067306502310089e4c1dd9cf090ce560af5233e28aa2fdfb3b273ee09078a4a901c03ff85084065425ecc76aa04fa271a33677a533a22023021f4a20c7a9c70c950f138cf89ec55fa6edffc10d414d08d488f607314ed91c9c2462daad2ea2b49819cf8cdc002cbf20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023066254a22ae3792a923433e2dbcd846a554c9ce59ea1e602f1cfbee8eec8f4274e107dd4d0a99b2b675bb67e18f0b8eca02310090a90e843be80cc4f78033d2ffa268c9bd9c94ed923997322b42bf00963262b40365f52980f64f73c94b447db151aab30302047c435bb5006730650231009831f0690416cc3c99171133c9ed5995257aa27f37bcac5e0ef5ef271a69753280f9c0679896c2b68f43bd0e7206025c02304d523a3f4563342b58509b1b6b0e35f064a9df35e3145fd1b8929824d794859e729a4f602263872e7c8948fff1d796130302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cf4ff33ba49a9eadba8e1b647b55d72f2590a36bff77b018ef487002ad850db1ad82023632d249e64d684e2ef5d7798c023021028e19d999884810f75f5888a871bacc33b90cec59d0e1beb76fe63b11719abd399a387c3572386d2e17c9ab07c2c80302047c435bb50068306602310086434762e4a96670ad8f4feeb82ea9f70387d17cfe983b99fff9b68186eef262c8847222279c3f57ac71f0be2ad62440023100e14ca1efa24c4d3f9a1c58627265c0fc334b626535f08cd16cea447584db3953c398afe7d05ebada6b703b6ce2ff858a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306eba42f2d161cbf6b15ebeacf4b3c69bad54b11bb736705ca26c5bed5a9164eb29312d5e187b4cc98cbb4852a49bc882023100aef806501c0484e71a9f6ad683649e016283a3cf31d0720bd3a7bdd4647a17d4d839437d014b8a3df95bd10454885e440302047c435bb50067306502305bd73eab470c5ec15d33c18957dd7e39ee38a5e0a61d66ce834fa5c60824d17b79452084f8ec9d044241a61c90efc9b6023100c2de2fed777aa5b5a239d4c7fa6d083673c111ecd6c9fb3c15ad0040eea97e001c104074d6c6bee771968b0069dd9e900302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023060782c11ec61a09cfc525ce09f5fc85d66c4bddecd6c5450f9387dab34ff7ff9366765b6f893bf2f82e9b9923d4591900231008a9212f2be40f86e89afbe75942f1802ec2681392dfcb6aab80c7761e97041d3db4b966cd037f7e2624505a96ccb53870302047c435bb500683066023100d69748374402e95b93d4c7e5369093504da77883f5b7ef556d22c3df3ef3668dc75a407afac6383a923c30e9498ca0aa023100b34bac2c19487f70ab6bb907ddab928da4ab37ec6e108e978d3bc825e118401799ca0f98788b6ab62152dbab5c3c49540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023062b4efdd79d74bfa905f3b1a3cf8fa3fd9f3ab6389f34fb34705ce154f107b8f96abf28a8506965368463856c3b55c05023100d5eca5d700b2a826c4f966ad935c6ea016fc3f749f5be4ff4a0990ec29dd44ddc734d0bb1ba573a47c75a3ae5ca148210302047c435bb500673065023100f85ede8efb00e2e4464015bf3cf3e207f6458cb9ffa935c502dbe5752a27715e11f1f315abc2a45b45d8ad58cfe4729e02300796de24c4f22bb1a48c7f453790d030e081305791a746b4a8ad6fe305e1952180f42b89667b7290611dd2d593b014800302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230264415ebda3ee46b157a83fc55859a761e746068a6f14e6a1e99e675f06c86cb230d978658e3e785b3350856e4c1bcc00231008152c6fdae908d475915225b76bfc3d6c439b6dce9f2f5f8e9369e340a3c0d93abf87d9df2a458086d2ae34147dcaf6e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307703cabdafbbf59d76f470da25a1d2fe16e774681aa451203fa8ffb977dabb1be638ccef719e94aec24e1d1b0ea0defc02310091099b0ee65add1b615934a34af039f75a9d0abdcfd7c66ee53840bf3ae5538b5a130e1055000e6be59d8a6e448fef120302047c435bb500683066023100b4c289fd5b3ed694f9e8a340c75a2a4337635bf51d8400741bc795a637a086bd3a38baec0adac2f17f2a57f18b05cbcd023100a7538cbd1709671e9efc99103e292cc582c8d42fcafdb4d58a3662dd8d0e2f1fbab5e1459992dd7b92b063c5560757790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303921382aad84d53e1a8971f785e290e683dbc1f55e4d24a679862028efe6947db11cd6ba0dbea0ed2d9434adfef788d802300b87a610dc04c1335a0a8f39b22635e2b3288f76aa8b3370778f95393a37ca23c2c6a9bab12dd9eeb431e9104b7c28a20302047c435bb500673065023100ffb12b407a4f36b0cd16d46150e9e6234b57917e601e8a32923639989a3895a5cb28fad88745938389c11e2adeb75f2802307ed7dc3aa70ec79febd6fab4b59b771cb608f58189ca0ae2409a954bd2693dfbdc6c8952b8d16c851d183e8a8a5353970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304f06e1282114afb7fd16771d120b4aa8504cb0ae71473cfbb0b09639e9c7d894b741405ee8f4ca03686e17c57a5e23410231008d3849502a62c2b5e48638f76a870b0f4bb5aacc03739cc928d24cdff4446815958a8aa1a79c8b3587e3a5a6e8f7b12f0302047c435bb50067306502301d06f4a830052c92865a8341c9dae7cb388dabecc8575d5e2295766a45bcd3fa62f43f885394b9096e33cc9b789ef1aa023100a0e5b1b90470ad1e69e6f4c2c1146d9c7238fbfcb0f2a9d37d95a91756dea2b3aed2b9cca287a714f27cebcaf56539640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306aca731727f54b8fc0936b22dacfc72c40601c3426e1bb8ccaecd27257602b9682d1db173277e71446a259ec9e9159ef023100db7bed01bd2ea89879e10188b9be79a7d37ca8265676330a2cd1f09599e7de7df7fbf735cbde58a9e6cf4d617985b1000302047c435bb500683066023100ccf2114279d97af98ece45cb545862075f77def28856ff4f0fcb3f2bac542efb23725742cec69ffe7920b026c5fb7163023100be3b9c8a644da72028205420ba9bf3688e8bd2bb95524fe46d8cad689a0e69a7d45c506989b99671f11a9a9dc5b95d3d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023027330bf1d233f3aab992a13d8cc2ed9d2067ec0f3214bb1d1062b52a966fa63fd7b30e8bbb9b9a104e007f080b691a100230738f58ea293e0e36ad7c63b6636fe04cd556c5d7677d776b98a4e5a9997f7007578385cf79a67d2483059a068c8dd1070302047c435bb500683066023100e3a2dee2735745ee74fe21bf43673e0987dd7fed84273ad09b2bbd99ed5384cac5e09ec852de49686081e34f9b010f0d02310090db471b16dea39634d527945c35e0101576c3f36a1a8ad91c59aa7f40fdc159ae8ee37fddafc859319431b56f924d180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009acdf183a4c40e666c9999293fadf6fa669b6607780622556f3fe32d90243cc01039359d8f1a36a45705a9fdf6ad29de0231008b2a5b87e24008bcb9e404bb886fa3ac338616fdb9340f4c79631dc2274a6299ff3751c5b6039aa918953d702c24794c0302047c435bb500673065023100cc20df2e4814f548f94e422e8cf71720310d2fbf23fb75d2b734a6d9acde405fc2eb2b599f1ed80bb2a9223f105ef04802300f702250ae431be88f18e28e0385d3478c58b5d9eb3079577e526940cf8685b69237f55b4c6c1a21ca2dee9ce0b578750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230480b780029c184974bcba14b781656495db99aac6ddd978aaa72180fea2d93157b45621303f90f3b82883af18fe8ec820231009a4e9680405f89529f3513254acfc8d3ed0aed5b1dbc012027aaaff43b40b22af3d264a1035e08eef70b7c86073601c40302047c435bb500673065023012dc3ff9302b1e00be643254a9ef4ea1e25d4ae75128fd05bf1bc04ce853dd9b9e6d8d53a098fbb8c1d50a0178a8f469023100fe9dd544f2e2add24eff80ba1616e922e616a2b1368cf75198f75d8ec755d92a26a4c9a64a3988298fa77c5df142d1cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230014675108ccf5f9537228573c7c62a8fe8fc5e4fed4e28e6e2a15e878a60e1349ecc06f8dce5530bc61d9a729ff13db402302464ddaac27283bcd53204097b0410ecd89c1b790aceb87dde662e5c331b3d3ff681c2d5381ee26f18aea565d162f0860302047c435bb5006730650230684d2d5b25fc13c31cdaec7c7cc3e84c2068cfd2d021e13d5e634e1412123e655f2399cf1ae1cb3e87d0e9a9608ccbde023100fce5b7660107584538dd7c0bb5235f76a8694452780fe8833f19765d4c9741094934fec862f0fe3bba95cb3a953206950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100acf3ed8b5e94bc88319638607f3d19d9c507865bd00097bb241538b260e96fca5d34f45c51b0a1635f82d4143006d30502300fba3f5953c7f1e4969a7f24e893b9f137006229d8dbd85476bcfa6ff59cbc4c165eeefba347d6f4dece174e1330ba0b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306e8f44f5ce6840c66adf3e26b19fe228d63225834c015127c6421115b313ade52d4dfb1bc52e6a6ef90259aa9e99c1bb02303d419feffd956343ee5b402a1c8853e3fd7ce3e10a70ba57c1ace03a32b2352e7962ccb6848e15b14295b818ecb64ae20302047c435bb500663064023021334c9f2ee855a0c97d56e757a5c41c694ca5709510eb1d8666f9842a2d857b4e67ea7fcb4837d15b141f87dfef828802302129f43d232e45a01866fc99b0139c5ad9b8168e82ba7188ade8d60688dc269b577a05d931c9938c4e78ca3fc0147f0c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ad2834fe04efa61d87e28ca8e57fa0ac401780df50c658d74d26c2bf04cb6a3a43b85d29502972c7350d42d02af74eb9023100d3da328c47c158f319135791d543dcbb1315683c7f863fd7a26b8df5cfd6463475b1ec76c8f3c3126c76265fbc786e480302047c435bb500663064023052f989411d05df7a9351c88200db7ee22f9c599f77cdd7462870313f1e7b0ee5dff623c0ce00feefd1dae9e86988ff2c02305f54a67ef0e6a753d67b58633c6cabd35463730ecab21172010e4bc1c08ca0bf0b10dd6ad5eb143089f333b277482abc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008971f3cfbcd5bf5b70608902d2dfb682e0021986c6c4e9e1d11f655fcba890abe906660e5ab5399a5b991b19bcd07d5f023100e964939063c42dea05606d29d6be3242dd75b016371baa726d6e5e4329d99c7b1dfb4f7aa111c334c24e56152e2bf3fa0302047c435bb500673065023100e6e49de6261a82cc322b3f3dc88a0d7caac9074b9d773be611f15f7c605aa89222fa41d88bb4117e8f821fcfee6cf26902300b5188b3a228ba4345b21984327c93fc94fd2dccb493f542bf80e5d35c1859a129e923accdb6f6714e6a5a2ec36602200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023072271e353453d6779e2282790dc983acbb95947bed9625435e89bbd9468c65b312784a67775227746f56508c7dcdfb6e023100f2e13fa2ac17ee9feb75288c215c574ba7ed766db634cbd3bbec5aae4985a5240c3222cd1c584c328370969673ebdf320302047c435bb50067306502310089abeb181e999cc71ba299ecb0bb0a51227ee82dc525210fdd38872a3038d0d9fee7a750f028d21f430d4b2528474de302305f65b69e47aec762430350e6de43b7719a8e7930af46aea9404be71b687f051bc1c7a6297b91841a92c77af0dac042e80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023079eae83e785b570ea634dd3ae147a752ea1ec976101a57701c3fdc2eb3ecb3c19de8e27c6707ff416ffe6fbdf262930902302cf079a22abd93358f31b79ea5eba3801b6d0f07fd90c6706953478fc752e930f70909eb94ccacb116f78d3955d77b550302047c435bb50067306502303b6d3b65dd5f3fd20b318f209870bc57afde1b2d5f068a6f71a19194fb9bd0abe5df64e55e514e7231011e644d39ce75023100e1e99e32885c774569c72f5324f298fa4fc39104d0deb7af96455fea1ececd779fb2e3ceb94ffc0ef3bd6646112019af0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310096777b33b160be5b4fff13dd8ce4c54bf9350d8eba0b5e7dc98baf39b19d220bd9787f55cc4a84c4eee6783014f12c7602310082f1ec428d7340081012143c3e53ce23f71ba1120a51b684f45455a0d65d81a228b757b16cf239d39afe89b20f2b54070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cf38ae5c6c7cdadea6a97f55d9d27bc8c1117a1d5ae98ed1e4e108f108cb89cfaaa3665a3b9bdf281ee4fb03cc0ee2e1023100d8e4a9f3325e0d921fd8809ff8f7fc3e80941d184e5d5fda84945da4e815abfd1685148c68ad88fa3d8c7c65efc306ad0302047c435bb500663064023033ff8f3f87f63e08b08aea21a8217faaa6f8c044549a4e385c2ec02ef3f74529225883ef38d8072899199dfffd93acc002300d0f95a2fe102b9a49164c5e418b1739d731d839343e74b81a9b768fd041c149a708aa65f129841a56f3078311c7fa430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e45c7089528d1eb6b0ed2a184da7b3101af600fa70e52007c1b4a8cb7790dffaa867e88eb13e8b7f7e9bac2e71cb68ce023100ca9419f1dedd8b4f9e73cdcbeccca43a73ef134acf6752e3676c6e394e0b6c6557cecae72ddf55ef401a6e92abf3aeb50302047c435bb50066306402301989977f04809c169c02bf64b67bf0652f7b191f8b8258cf80b4f112fc3871a41c750834071583f2fc21e0b4fa0dc06c023051836b2110091346efed78a5761845800db94e593b994cb1caf41f60092689b1d1c4e2a6df9ae7b67233af20496434440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f7c02473bc8e2d68f832d2ead84042ab57994b3cc4f3c5e759b74b2f517519a15fcf5041fa26c3b02bf4f2962cda1b5b023100ccfe6d8a4dc94d3c1212498e02b623c79e7159b615e5c478cc2574f1ac8aaaffc75c6930a131eb851fd79b552b4d5d9d0302047c435bb5006730650230123bb854cca6c64b70e700df42bb618f37f8ca67e80aca4b1a219b05f30fb0fa06f47c8b981b7a6e701f6146a1eb4a94023100e73dad2ac374778a03f99c01788388d302d0fe982cad4f122e281af84ebd87c71684bf027b33dc32dc2b569b12e1c9e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230139e9fa7ab0bf6d519c7c6625ece585026b1206439f5fec033d9b8e0766a14e53d58b3d0d36c38e3a56c1cb5c94a8650023045da5f0498bdf2148a25118eae239bccc48168cf8943d3f9464a08a5f0feeed53fe13444655bba38e46f6651279aa6080302047c435bb500663064023053345ada17c36ce0ebdccd06293b35e568852f665363d562f5a43350f2b28f4e80d9b13f5e56bb83da07bb863e548e270230055e3f76c338cd607e560189c0c02943ef0e8c68408af20884fcd810fc2b3d169277e0803571a85218318c299aec57020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aed35ae6824bbbb536baccaf486306d054b4b2b3b3a47e78ea4426a02aff0aa51040146e90c27e85e4925f363d99472602304ac3dec1a2e471e45337413763e805e100a68b143eac29fe528671f6f59fae50a3ff8fd70f22909e24aa0a6a7a8f53a30302047c435bb500683066023100f86b9bc7dc5db721ae1999b3cb68fc7ea9808c3c259993cfaac6d3149091f275063e2524ecf046e73a70eb48575ef923023100f84224d99a7a3f04dfdc131debcbefe2ad18dfe9c9f0c3b903d911f4c8d2b83ef3cd788084a95186be648cb4483308560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f11f4f9ff2309696e455ab89cc5b53217104c3751050b3b8350d44a3a6f4c738f52dc311230781598efaa63bd4600d6e0231009cf73eb5a269ec5878368ec3a2743cf6fbca9b25ce7ac0010fe68a123dad80ec0e3cce4cb6a5f519d494df7650bfda840302047c435bb5006630640230071b2468ac2055eb30706450272a9f440ae7b8f4a9f6ce6948714d0b929f195a601eb35723f92716c799e37f9963607a02306ed7371f688542688410a74197a8f06f517f812ff50b0bca5a05dc569bb4a3fe97eef6f489c5ffb3985b62cf45c831bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230744d26d20da064184c6d5741aa5362ef95e9b4c239f06ce510a2fac712b97d3c63a14b89ad2c063edd54fc7f68258a41023100a779f8ba592b4068bb2d90b160f9c97014a38283c0b573a35e45ebfcf2f93923647ebca7007931da6f334b37f92e8d900302047c435bb5006630640230637e7d4965106d81c9bd45cf6c07e2abb1ea875a092ea9d5fb9614c3a0e81da79870341d10e9721028e37d2eb1116c0b0230589ad843dcc02af35ac3befe1b1d79826551124e06e56e162ec224914af06425d07c86414ef7a155536b40ee702d99fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305cfac41568019dd38c5a3c868f511f24926f3adc28eff8af3ce451626bb881d4c145fd6355b881d137b437556eb76ffa02310081db58867171234426911e11c3e39e111a95a4ab896f1fdeac276207f1143b6a3958961c23fb6d34082b5ccb37740f070302047c435bb50066306402303617fbe9fc3ede7ca61d736cb1d2156ca0bbbea90816eba6be65e6302387b6e727f6ab710b2720d7a05a171f7b41de8e02300b72358f214e0fab59c36c06d962c8a6743578bd6d1d6555079968432397cb34a8e2fd9eeefff26372ae1e8630bd16140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302ec378614b3c32520851397795f64badd8544dd82f17a1a77a42a61f41ba783b13972b4eb69ae34560718e63c81ca62f023100d60b1910afcdcae3552892d99f050a9396af823b32dfa88ec590dd62434c9ebb24c288e720c5b09bd22b2e078d1333920302047c435bb5006630640230397ff0a7bc91bc5426f75e27f58430619b2dcc97b29a1b75338556f72afe98c24c5198908f7af0dd5087f136fae93aff02302682c331611eed8066e5a56fbaa2f353ca1298e257637ce778a68903a24295f005a95892a9eccecc9942766ab37da6670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310086a0fe9fef3ea0b9ac789b7e0af7dc374bd63a9aeceb45a976c5073535fb0417c56eb7675e964cb3dfdd0b61614d2798023100e8bc0bf77dd75c0a1ecbe7bad230a2aebb9db2a38e0d906656d6261bb0fe32700191b601453acc5cf2de6747fa41a2630302047c435bb500663064023072fd8331792741e95feef1b0b8a4ddc8a7e5f712c56b591756fd81049ba828147d016047f4dad0173de7b671f730624e023015930e7ded8991843009f0a63865ff502d9bd615bfe84ad167eaa2229c1ef84ec3aad0e91d35ce6c28f1284e6bf8507a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d471c063aa1507409955cacec1b6933568e6350fb33da92e35d8c83b8ac99401170b538150678e5f86db999ec29f38d402306a74e514a79e042947530ede000f3c551b37bbc8a77cc1018ee45987b46558ca3d41a05ffd768ec60152a6d2328a73d80302047c435bb50066306402305c5e10c914ee23a3091309953dce15a9b35ecbdf9a5349a03c1a6eaf7c1d1606a32f13102b512b65d09c70a588a82daf02303b2381c437cd9249661774c0e523725ced1ff1f2aa09c0ef8e60e10222218db0a09223977b1d590f385a5e778df420c30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008a935318d00d6792165625ed5d919eb239314f1c4720e7d1b1008dd8a3a33d22db28c8531b033b22e9d268fbc2befe8102305a1eb9b00afe9c4aea83b09b5768f3f52d112e34a7db42a70e8987f68e85873ec52ec932b7dcae7c0159e80b376875d80302047c435bb500653063022f54a1bb0bdf8d12dbf0546840df0a78fe05b8615893717774934778c126314363d82c7ec386f2c995a04edadacd4674023055fe1fd807bf4a992eacd196fe40148c02407b16e7b948b6a1b51d469af649a225d015237df10d599e8bcecdfd1252930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305f01d1c101be8eebf4f933bf134c77348803efbb6ad2d8b894a352ec04e97eedd70353c6ab9450c2cb6d62411a5e721d02302a8d9a550ab187127a488a22d2e04b16b8381ea6b82f0af67dd85b977eb8e970bafd532404a4715a18639f60ba4dce910302047c435bb500683066023100ce60150c367060043933fc00468f53850d6c2463041cb0795536c3bce7af9bd2b27446f4d9700d6f6f9678e07a246655023100ea24bbe45c9c70e1f31ccd5c0ebeef9d6becd1362d01eed6222774a55ba06889092c9c3643f74870221cab5206e7bccc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c23c9c1f0d54f30e4090badb9f1f4bf784f1ca53276ba34ac478b57bb0c4d1d38cfb3d5c157bf410a9e2b9687227f449023100a4e2e29bca9c26b5683d702d7084b61f4c33eec6566eeb5b667b1a7b3089060521e14327fd2000393defaaef2b81f97f0302047c435bb500673065023100d52df2bb6778accb051c5a2aa4def80c372d551a713cf11350625142f3504c1937dca5e6f113f1fb9121b1b804680313023046907fe264b4ea42c79ef7b2b82884a948f97e4d305b0a78400ce8b9dc1d2d7d13a02172a23ae9aa057bdc107f9338ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b1eae4713c73b44f027dd8cd992ae1bc72f56046e2266ad077b74fd84e138771766beaa3d73ac560bf5441245e7d69650231008ffa0c6c89b9d7d3ab42ac74b29ec8d8d9bb250ed42457ab592b1778e5f6055c00bb4d0b538a275b0d8eb1b6ab1231760302047c435bb500683066023100d3c3d44ac44f672abba31145e75f94e406f7a5cb11f2a9aa6186b5d37c93db11793131ffa3cf85b8d1a13c074f86bd7b023100aa81ee41205094ccc24352a75801a561278043e2998ba24649636478125438b7b24e01a029a16d8c35625273d5b39d820302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a840d55aef6a47d79d4e369a09f4ea219b6dc47a74fddf64da4bacc70346abdc24683e6b23926f25dcd61a6d43bc06b202305c1476dba6c6f1a140df318af899d01b04f30fd4c2ac409b22f4df85442ffc61e73bfa1a2d2d8081eaefa7b7421226cc0302047c435bb500683066023100806f051c510ecc323659afedcfc94b643b45feef9283b27ba05428f46d44d782414425d393e62b9a1266e5c0aeefc1e0023100a227397ddaa2f9f55a7b20d0a17262390b7f2c431425e40f29d9fa7c5120192d2cfeb1ffe05d4451546decaf60814d670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d26b94bcba458e4841ba13574c12596369ca2875323bb8f34a1f9d32c44012b4f7714ba17436704643ab21e7140a2680023100bd75fef66a434377610b5368d821ac732ebb19a27db7c1d3c34f2c0984ad943888dab19180695453eabca7b5e88091dd0302047c435bb500653063022f65b0ed24b437ee5ea3c6f9629ce1601268fd30df3b8b61db9a8d14375cd971c6b4f122cff26e1c64d2633a160899670230541055525ee3b58f3f2e67cc9349bb40b0e99f482ce67cfdb39e2a0451814e0511b8397222dbe0806fadc6c40bc1d33b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023069646cac370bd533e58ee0e01a6ec7353aceeb9a06dde271359bdde1670019b7bf361fbae460f5ccaacf80dc3607b110023075362ab74110174f217c78fd2a7585fcaadf5bdbddeb88827e403609fdeb827ba4793ca7b9ab712cdae4c3c504d91f0b0302047c435bb50066306402304bda14441c641320819bb318eaf6672f08e0c4b076af2ad0b3631b4dbb4e346d5b9c4f0bb1e93701c15a2a0cb47322c0023078671db545f63ef8ea4186a90ead40a1fce8cad7e923daefd2fe11d7d42caedb672327535d9c390924aa81bda3fde0350302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023026b4337af8f03c8c86d2c28a4f2dcfaab360539819d573b6a045cea6065c1a7ddca9ae76c1aad1526593fddf2e44335002301eb013ccd5485baa106fb2d128ffde50ac223c2ab28b7de7bcd6d60ecc40ef659adf4964a8acf0d0ce43d2d096cb5ef60302047c435bb500683066023100e30ba199a21285e1d703ea1f3b6436bf77a3ba7bbef7869b44150541f712fe8ef1f7ce3706cb20323ea2b6b0ed4df717023100c94521097f1aceb5f12ba934ce7473143f3759922da0f089f723821e54e4fb65787417d3792e45cc98917b1a8b4996fc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009dbd30f83da0937042d9e3b878fd202ee781ab5fac587f7318de3a5f1677d091c6912b48f436e988307ce5c2a21c2bed02302a8011a882bd89c99b3c9bbee7616b76c6d3fff0c7da5cac9cefd9fe809b93bbb7353e9b544a2e1851a76cb06e35e6020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c12737ba4f3899c709f6bf47c04b6518d05a28ca746640b935d256fa9e7de736ddceeba0680e986cd8847b57583faf8302307bfd272e6ed7eae892976d87e43bb48bf50f6ea7c6946f86eae0a177fe8f661b4ed3e81a39df8737bbd55003166cc5f20302047c435bb500673065023100a25556a751dea33432632913d12d65af0e104eb8fa73367b18c91cdc8da22d9d6e5d79417adca83ac59aa212a6d033df02302cf4558133b5d22ab738fa0195a551367b8eff5c41790b00c5a9754697051f18ec4e2d0f2ea643de8812fd7d63cce3970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b3645fd480c9d356d5e6f7c6a937d72feb0932d7b5e147c002b28676e8023429cb65ce5e1552a5e9734a74859ef459cd02305242262f622fbdb9de9c178877a680609b3ce5d21f8ed21bf397e13d03e1689884d798d57eb29a58b15de9e0a88a29a80302047c435bb50066306402300f6cc5bf4da80d33e9101b454480d2039f88f550eed5392116b956d8b8295236c00fdc30ee6a7f62177bc7fef1eb72ad0230520a74dad395905781ab233b306a39d9564bb904a2c0a830e56a45588361968a6498bcc3bcffbb593c4b32cf3b8ff2330302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304485b99a4dfea68af5c2662fb53f896d7f10ad634a785131abb092c89ed7d4d104c6c4947fb0e90878de3671fb6e7f08023100f02ec9594e5c2736bd0e2ed9e12447c39acef6ef9360fd7c1a9ef9220bc59018d6db042a5cc6bbe6e53d3f9253721d560302047c435bb50067306502302ca98d19a7ca2a5fbf76f29d5b1f3762d1816e104987ae682e4765bca49572fadeae916ed2d761f8a3719e9eefb00c0d0231008f9a6aa1df4001e7fac2839981d6941a646929754baf094962463714411c56aee0d1ba440880fcd4dbbb6af6005dbefa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023007994e7116502c02d540e43022c4fc0933f7f0b31bb8d56958beb653390f98ac7af35ac1de7a83881d57a046adc5e00802304bc12ffd2c7db2adb21540000a8ed4919a0d042cb7d4951d8c528978e7b371417d058fc155314e0a7d4ecfe5757c48ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303b70cf530198ec6a0dd7ab096892c41e5eb02a09c69811cb23dcdcd23961a36d87e08e21d7057fac9f7e1c7ad00d25e4023100f764961fe8ec8349a5a0f42d0c176217471b108d009002f084252f6c224e1a1bc8e9752901f7b91bf02140513a3cd0310302047c435bb50066306402301ad28e5134c445a432a64c803ba81e6a7f449985e1f50d23a2818f6ddd2d1e04ffa2ded0359b701b5de536403d01478b023046f9c3fe2639399315bb3b27aab756239df994b732b23e39a15f7873be8ae1b573c5ecc1ed2ba6fd335a1d9b587aa7180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b9600f503a796fe5410f65d563fcbaefc991e531d5ad34bc27dda63a73caf3a51fe1d8cee1df56b485e497c9b14a9ca6023100bda36c3d33d58222988e460b5d765821bb8ab7f35771f3d8eb8dd6d66968bdc210445b2a82ed4bd6acb4ff792419a3a20302047c435bb500673065023070b1c33fce12ea254b1e0330aa97a54ffecaf35339cad3b671da7b501ef746af34ac439e014cb7ecfafa3f869ca197580231008ba86419c375cb5559a4c5e5dca6ff7297f0c531751cc582919be3261b8d0e84a018d5d8da6413c207c6fb65ebe96b600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097a581d4b8cabaf4fcf8542c99aeb09fff53589d2d2bc41b001c8187d2722b6ab2f78334fc3f9984dee5bd20c2c59c3e023100d1261432eceb0538d182d68bb2b247846199188ba8a574167de9b91001b8a7bfefda5bba500859d037a7a3a4d318d7330302047c435bb500673065023100fb9d427c6f6d4a879e2feb2fce6318cec90458e2f246e2a5c7218f3734a3f72dcbd2c82eb325817f77e9bec8dfc156050230029a6ec95eddcfc0c82568a6b23e69cb2ff69ad0e7b7263ad4d039e19d1f986b916edc81df2630da9c37c7ecded3be6c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023002539b9c0c2aef02219f8251f0398d2c71ef80bf8b6d12ae534aa4a257244bd4041d7da338bf4742bdc62161ec7d9920023100bbb8252a763a1b1491848602b92a1b90ae966d44c116190c75aede574f92b36c70cda1505760b732097c3a546cc647450302047c435bb50066306402307a94442dc6829a8e8f1ca349b04dbf5e952f22f1153b25e9d49e808d26371a1e4ddf6c8cb7e8d228716fb5c69fc52c32023063fc77e5eaf9a9636961610ad59783fb06ef50aff1bc754f48101381af57eea0942a6a9ef00c506b36787db73b69d8f80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c7d19a33a80a913063fd68dbdbdd31a399dc9698e0ebdefb398e6e8339b23219d8a2c8104d8ff21d0e26ee98c978d9440230077c9825321e0007e3e8debf9c02954203480bbfb428480079660a5bfd0d001d59cd38f1850db646ec3c55f2022bee8d0302047c435bb50066306402301b52fd27e547cfa40b64b9346bf2ddfc76324569f84be81e6849c209facbb0020ad12a3374a05b07f6d76dc0909e3b1502303ce4415c88caecac28b4e11bb2d8f9e624f876fa51da4bd3d64a1cef71d59d8a27aed63a349cbd54edae2060408cc3b70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304a44ab6c6a45881c5247be561597ca4f7bff5a700a630639481e8dcd6839262288762985b228c58e4d2021f5ecade7ff0230413cb0e153c0bdd24031379f58df6e06e1142a3a76052459d4d6017b1e3ba9ab34ca473d3bc623e76ea07482886d8da60302047c435bb500673065023100c05d3e67087b512abb208e225908a7c5448adfd15c21cd5f0116d5be77397dd821c099aa9225115230dc41fabb53d9300230416b7f19dac954bf59ec166a6f35488e7e18152b90a39ab3b4fd28252ec8ca781c521b6fc271293e94ae9ba462beb13a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310098d4c505c217e248807a5baea3811e0cb303c37f056661ff3667c7aefb27ed91018a6bc2b5ae5a55cb6b711fe4e6109b02301be381f8de953dff64173cadb8055fdd8c269d4e92f7943dc8c8de062a865c5551420b4bd0ac57f87053a42f4276c7f90302047c435bb500683066023100c7d55477211f9257d9767ec22333977823769cb11382c97931e3dab1680ca23eebf16bce5c1ffcd117e108556acfddea023100e16edf035b6a09f45e3bfeb7c1e96dd35759982f74ee48ea19d6f95d463a437bb67c27367517e725c3f4ba0b5e4796fa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100914185721b8f73a50a61d3dfd2a030e85a77723cc62224affb7ac02c46034b4323a7a1a6d01e6496e661355deda66a4d0230387f28c1d620ec7f73904db19cf541673dd6ea1d0847d751afea23e2cf96b67c63317c371aef3d74a0bbe857b85171c70302047c435bb500673065023100fc461cd4be31a5032fb365bae6c80b8ec924cfd7d572345c564717cada86d910390206e67cab342bfc98d1d39b7f81a502304b0473d895eabcd53a8538eaf357bc477a136a42889f5587a3b1f6daa0d72c22a15e08327eaf17f8b81f2a6b3593774b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300ffefe16c1a692467c9690c4fe2fae69ba8a9e9fe701bac8b62c728e27b32cb86851f1674104eb9b8b8c0463fc75c7c202301a1b1e77831a0a49e4811025435fe081c32c7e252cccda6e433ab58e5523324cdb0bcf2e5d09c1f54fd9c8cfb856d2c00302047c435bb500673065023100a8053431b57dfac4225b6751d123381fb8048f21a941d44029ae741908a84e54ccac69e0bb789479a7f464038825704f02304839a63f73f116b8c80a18daf299a398986a72f86d27288af457d778769d0545767f1497bf0f19ffcc6942473bb735fa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310095d727db86f5bb5ded7ead6f3a77930c0c843fb5da9f68248660e0cc318897f7820194819ccf1cb8246453e21062054f023100ebccf7a531a3bea82c0143ad2f6cadec4d72306d174c0a626ddd073228c715ec70381f2050f9b3a8621f5f95ce8315900302047c435bb50066306402301f4685a7e644a6845d31e55a5fe870bfd0fcea0004ae4d0a86386061bb7d57062fb158cbfd1d3a079224a019f83b1e9d02304d4eb46e09c01a33be0bafc97c9c51a6133d0b2e67c118ce1dc4f6b8ace8ebd84a5163078ad68cadba92ab8c248375470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307feabcd01debbd179bd3c7041e2f68963f1674cf61d5839e4e8e8ef622d5ff920d166dca99374bc47472346362b17afb02310087bf7ee8db5bf5041f00b69e056b428f41c037c89862c0688bf4c84bc7c2138f05cd6c1d89d8c61d9889e00ba12905920302047c435bb500673065023100bf3038fefe5ec9a5c3c5f6b17580c936bca35ed428f08cc2c0dea6ed5c8a72e2a837ed2c49c20027ccd435e1a9a9add802303891273ac1f155d5d9f9d670d42a8c145aba48c2a2a64bcf46ceb1346207ad3ee3ea37747a5da161f1341503b12f7ba60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008e2fa33f0a9252878dde6c4e457bfdee177ee17e502d9b9aede75c7bc69c74c9a4afcabf94a842c58308457d3f76ea9b023100e81f13912da724aba4a29a796e0bc16a1334b5d06455592cfb615bd2624ad98c8280624046c962b5f3c34175657c3ed90302047c435bb50066306402304c37b0551b8246cf622d8c4e9440c37106f2742a17beccbe550045b274ffd43e9631a57bfafe5529b696673a24b553cd023041b932efd7c3fefa11d053ddf677f3b14f3b05dce782b7c8000bd3ca91a2da4f6ad23554c35b613703f0ea1dfc1c1b450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303aadc12a53609e4891190fad842cd341c88896f77c9cd16ce519775dae515aa3e967aa7306ff93270ff3226ca9257d8b023100d3aa2577a8d515d2448ce7b0738dddc979ed0cabef6d6a362186a3ac2915cfebb34057694fb5901968d12f08756b690a0302047c435bb5006830660231008f8e8568df9ea82ecb1512164aaf26c7f61d653a90259ef8ff3267be97fb378cb6564ddb6c394e038562b3a63f8a7f8a023100f25bab442819f121fd227f5833ca651b813ab236171838549d7a0483e0dbb504c577e1fc2f689468bb11380ac331a94f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230488c4550edc435ba939122f5095c02c1824649b66e05263e428a6fc664ddaec78122a00723a443f344d49add54f1e759023100987f60b80582e3dacdf2b2d44d7b12cf284450c192228eaa02356dfdab8cf7923a65e2f4af2827ed3f6ce7a7d57e7f520302047c435bb500683066023100826c4d82c693f63df660d42796de7271eab5e60d8f808c7130cf6190f6fa96b90e9bb4ae669c8aa9cb41ae0891b900fe02310093206f1abeca121874dc3ccfaa441f762b3472b9dbabb49b6646a10a7b3535ac54ebe3058c461821a615b22d665ba00e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310082a09cdc89178da944362acfc5734b252faf416e720e3df5e5c1971b86b615f20bfc3301323a5f1a1c6ecbf4691e6169023100ae88893266a95056f38acbdaf44c904761e32d3c5c9c64406ffc52645b4360f9a24441d0d3bbe49048d177e817378e460302047c435bb500683066023100d189d2fd83ddfba89c00d0607821e365b296fc7ec9425296be6974ea5f99a441544939fd262abf3b499da1c8cd76dbe9023100998578b5415c20ed687b77a7ff634e524cf730867a323a3db83fe792cf8d90fc221e53845b2bf53fbdd793a3871527790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302e644e04fb1895364f4ca6387f70c376acf0f05b4fdc1217bf304debeecb2fc9e3724dfc9d9cbf18d564bc6720898eda02307d137d65eaa3ac43d34faadf6c29d6c3257b6da1f62d7d0631dcf4ceadf82fdb2f7b1e092116b2a13a010a829bf076bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e11a622c9b8f69ae0f96c549591ee016c2a9059c4dccc996a5018cb5566be4a4deffca580fa0f5a64156bbd8377fd13f02302a2deaf645b8bb2df48cc3a1e8e958deafe0661486ae1a1b4140b2a83b6f5606886cb1acb5d071f17c7d65910b55a6710302047c435bb500673065023100bee5b502f473c7442447e2ee8431139d73b00f4b48b0a7c6ec8c2153bd6e171348971425d3bf713da13218f5b610f0830230487ae0e66475e64ee6423b7a6ab6856e6cdbea5e18b6d3191f1963403205d203313d3762bc4958d417deed29ca7f5c750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310080aa76b922dd372d4347635efbb57b315374735ba1e82bedf020ea3b6d202d51e2e14ce07e6f1ebbff70cc693aba2634023100ebab8228690209a823f8290c6b6e017fac0338b8d05080bd1e621a62051e45f33a9a28026bbedb1344e57cc5fd857fc30302047c435bb500683066023100a1f53ab775d284ec6e40aaa3dfe845d02611c9c1257d0e292d427a89d7175e33f451fa08c27c1fa849875379bcfa7055023100eef01ec9e87d8d4c69366dbed8f8e7780edbc13b1268064fe126d7b3f02259c9588aa6d170f034b238d843aa93b66ae40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a589cf7ea6f63cbac130ec2ec9d271896011394a1c08bb07d32f140c8472586068495f094a752e4b1515f62137ef1a9c023100a47793f0e90f3d3d5160229ec56d995093f4119d1e836626360d3dcf403738c3a1eaa0f386a8d33ead42619e783ee9140302047c435bb500653063022f64d62fee2e8f2f4db7e714c16e510264ce4ca493a61d110c120cb4d823d92d9d4e96ae52d3679616056e782688cb77023060cb5c39958f271e865722fbd164d9574740fa50976f3d6aa2957a07e5c75088b60af09bb68290a53439d6dacbbb97040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a53e67798cd4afe4be913b4b0fe88d7d7897e13773a76d767de48f43b296376d33f3893853180f86f13039dbffa38ff80231008e4fc7c07810b7399f86da1e02b598421c1e3a4a21d3f1f09cc77a672080b9ef021354894eee1792c5919dfa4ea1442e0302047c435bb50066306402305fe1009331781a0d3beb9d4cd3b40790311f258e040a36a5e48c67eb1df2b0d865fc2a4de44a0e1c5fd1f620894654e10230383f83476c51421e79415ee47680b01e3a91428fbbc2b5d50810efb41404695be3996a4422dc18c3c79a8872f51b19b40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f06e25f96e994a9dc4a0de3db3d5ac51119f2c443fdb239c75ef5fe2437698ce9773a4c069617ad325574d50ecc9dba9023100cc4cf57dc0e275f221403ff6a198f9c2f6d7365bb40ccbaf150355730e3f9aa5f83a5b8948d517b170925441169df6f20302047c435bb50067306502306f7ca282df9b074883eda38c4c23fea26ae8f456289366c32b560f36e88668611f33de5daae4e0884c745b1965056b37023100aee52a3678fbdb20703eec743b97dd0ea7ef2bbcf6df41bb0603478dbb225334fa4d902d9ad9a44518f4495c018732a90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230725d9f7a6cbe001416a8d8a9988b0ba0e2f7a339a64a6290c06a7117ef36b4254f246445114a287703a49beab29d73bf023075106d8771acdfa3d9729661e4fec3f19bb99566258c2d27528808f34c7d6b16668bcd35543d2815a736cb8234f1c0d40302047c435bb500673065023100d4dea3dd737b1a724e10a2262611d8adab94aef2505fe8692163f09d478bc487f29b5fdc3723fa40429a7669b3025aef0230454d39b7a535884d319f23aa755d0835e5e47520d8c804dbd0573b059b9aa45d61e1ece14e72021db484ad6aaf9abb8d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230137497cc317fe13e2c988d4140d4c2c88d83da659a0f259e38dbc8af2f626e95499985a2eca246f2dcd8ce7cd752592f023057facc512420dbfac3d2d753b1875d00f904bd95c8f296513fffe6d812ed921e9d877ab43b63069733bf9e17407d901b0302047c435bb500683066023100abd3434204649332f9a069d5eaf4778d0df0d0546b8d84fbb0a89b7e5b33727130fd12c4359b8c861e746d83131a5c5902310092ea77cd1002069db050a5c792ca621976f8933a6d0d40f3dea8450219b891a924358ea1d6aa949d7e8428cc05808c310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301609f852fce25fb1d9ce4b0b45d2bba6890fe8e91e8b0974266542061598bd35f1ae7e1eaaca8e70b229059be3a52c480231009f52c1c85228456d9ef8b35ba61fce584781d603031d788e552f798102644f1536d53aa99aa3c26c2b53a6970b7230b80302047c435bb500663064022f307ca8205454cd93c06d18c08d554d734a09e2838921fadf85c44b57c958b233b740f88f269b1efbd556a4095f765d023100917349697507863654aea8873629e5010836cc270d2e7bcf8d3271751a83c3803870de728fc98ad2866158aa6f5faebf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023059fd0632e7073f66fea9bcc1d6c905494f6b5a187dfbabea80f4401be507f0258964f99d8e07cc2c791812b0d9f79473023100c0a1acbc819cf799fe43d98f477552bf1095fb03ed1c504d4a265a1a924996b901374135665a5ba66e141be26bce1c5c0302047c435bb50066306402302f8c8394bc1b4d7b4e7e28e82eecbc835a03d0b71b5a29438b517e5863aeb5ad36bce60d1011111fca612a90cde1a91e0230014e4479a125fb86032b09da030a1ea840d3b384cc6ad97185b91c392a20a46068b51e9026cb4b37c45a70535ade43bd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009772d559b9ae0a562c7efc2e76331d0fd32b6b420c13da2762d34b1df09485718eaa1185ae9b4ed6679560a19b887d5a023100b46809c7a7fa955815bb023dd54fda442d4184e19763667110ea1f34789994e0b230c1764d10d34d68eb63e99b3dfe710302047c435bb50067306502310087722afba6c8d42165131a9c6490b74d689ee671f3a3a6d5e34b6b9871c4c581b334ed3d1e07ec83ecfa85b7eb93e19d02304c587db7ff95fcbe04ffb07413df3bad703910ae9a3723cfa6371439119f459312ea65c2ff54854d0e4022b55b527db00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008adde9a9a9ccf49c86469ef3189eb6df1488d1193c6b0ac9b3e13827f41e6b6c71cf1768e696a31dd52aa2eaf92c3070023100cb6e52f4d8ce328bdad1afb94fe3bc289777d18caa0e492ae8c3a332456d718adb6493a0cee697e050a85bba7a4a9e7b0302047c435bb50066306402306da8777e179667cd86d61cd70a1c8b7c907749a070d8e08ea3e82556a8b9c8c1e7a3690fc5b1146a75210c51a51f8c88023054fbe0dbe0193a67fdf1d39abb21001358ebff9f574cc329034591cae9480d0a8305d8bbd1d0810322d81a8eafc017ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230014112ca2d7d1516c93b1ee4c3c943855981fd5e91a8b132e430d076baa154b45222d8cb1b580e554a34cb0365d91d5b02305e247ee528aaf7fd295c441e1611a589f7347b774fe822e98d3aff7ff757a480e6715d067794e6e1d335f8e0900e61510302047c435bb5006730650231009e1adb258e5a829c081746bdc8556639b6db2908b506bf8e06e9b8b3d5f153b2810d09b4d12a1b23f5b663f6482dcc8802305b27518007b811c08bd84bd8cc7faa5a54b81483bc6b3e9e5c688bda338eb3cfeb1b69448d2fa58a732afb5af84a9d030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009f9a1824f8d8269e3e34572c8fefb98c198a441b01a19e1215cadc06d0ebbf659304ca2449384267ffed9da38c36b1d902305c90b332827540f31c0c6d7479b74461d2a0e6495c054e34400a0defa2e3714e4923f5d7deebfdf50a6d4abda473a9b30302047c435bb50068306602310080bd7abbb44fbf2f9f3bccd48c2bc633ecc86b784abf966ed195e69e852af4f298114e5892f1a500f1922f190f5d183b0231008b27f2244c2487479431a8bd97755a449a3b9fd4e024b99d3bf343d8084167ca366c582cdefe70916efad0c1d675ace60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d4db48a9606464e080ca8a1dc68b26e4e24db6da3e6e6bf8ebe7957604b0dfffd7b17d283c17028ee3b93965747ccc70023066283a007fef6e02e0eee0ea1486a407bc08f76a2c3ad72a911312b59af02157913a862e848c754b12997bdec57bdcef0302047c435bb500673065023100b830b2374245598e63d99d84c4376cea5191489f3825c09b686313f677395db054a1a24e7893adbc388fe95cb2947d87023040fbc917ea098464593e174bdc08c6da0f89ff2b19eff1695b39e53c5037a97bfc64255a1703b6990064432a704389500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302de81e035822a5a82655ce4abcd32328f416dcf6403ce3be8d462c0c137e2eb80f698c64c4878317daa3335ca0f26738023100dce82b698b13d112648ea6937d43b017cf56a5be6f1a74afac09ec464040efe55e26fb2a0ed1cb834e089c58ecc360fb0302047c435bb500683066023100b8970c4738ff0f5d39fc173e96bd624573daac70df0421083612449dfd1930820822b06d224ca8b1002bcd87f58d5d3102310083534902dee8d09b25e9cb24c72003adb8b135db4ea5af1249b19cafbcf04caa40dff5f5f7921534b9297209cc43d0ae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230612ad73569094008839fbcd0c3c19a17dafc284bb09d92b18ce9bf7a2e534eaeae5670b1398c8dc24616feee2434f47502302689bf49c46b85d9b1692e2c7eb416e3013c4e8bb0d5341609a006835ad23b1f94e0167b65ccf8f80abaebb5e1cd259b0302047c435bb50067306502305b3fc3e04cebdd6c97f5474f12cf4dcb5de8d7d85abb462d256c97f9905638136354db9098b60925f2e34a8c3f02402c023100dd21dffb3089a5381d45ed9b06349366f70db478aa6ae46f8e5bcb760024fa65778cd28c166ed20f6487acc2cdb773840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301b6864581eec446187da11b78e80f665f560c794d7580b1bbce0b92424065153cf4fac8ab27225f5a066478e4fc0d21102303c53875ea43a145ee3bc7ff92ef96a8d2c09026a0aba2703388ceaee5a0f146c99a452a9298ba20ddc5263c607e43b5b0302047c435bb5006830660231008f41b2b9c8426352ffa6abd875c98d97d8202cc2887d64650aeb45b673344a035e5d8ec52789165cd3ab8c35825505dd0231009c3d9dff18324f8d952ee3ecff43f378fa7dd656e25b2cfb41af7c841cc5581c262adb0958a7e0edcaf003395cbae7830302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230348e3b7297f2dc8d23502b13c4dcb00cdaf9d7080bfcf99a8b9fc2f79583803c60b9c551fe1fa935d5d3b814eccdeb5d023100806c03e2805737a1a1ce042c6a779f007662dcd081d8e2f4e12bdd21fbc9b804299a56edb52ea4d4050f7df4c77d449a0302047c435bb500673065023057d987e803cc8757321429241c7842f2f4eaae3f6e28bd858185b6eace93d2bfddc26afd8ab104db3cfd5311e5b85fbd023100fa21641c4329f87c7f929861df269df1da14010b73d36066a797b3588de89260dc42dc116f03a2f882711a8c177b96920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306847e316a70f2c25153ee9cd7e7fa65ec9864eaf6fd54e41a2f6529307d418cddbcb2983940a0d15c168937d389984d00230648060b67a62ab8f806b46734cdcd71b65fb9e672d7ed2250d7ada638eb40b2990666e54fd6d9641f29d199d4ba41dc80302047c435bb500683066023100f81d3cad9f0b9b37ddd13f9761bcd33ce7e2a0c5d0d570498031cf7313b081cec1c638297ce7b97a6fa17a610493bd680231009c7446f52487284aff0d92d9cc0e4bc42f5bf37154c8e5e883fed206fa475d1a1adc2aae3f7777f1c1788b73f43b89e60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300fd3d397047588c3c1175e74b7336df92490889720510ab4370a109c27b926ed7e2584c84f927f972554ff11209f54c20230461d7bdb41e986e9b23f92abe292c68ad63b9558066825efaa78fc00244817f0524ef0cdc8cc68f0b163f285ad8f25390302047c435bb50067306502310080dc90f3afdc863cf55fdd7fb109f515ae0b4c55726dda38db1cb81f35d4a8c1e149d2487858ae6f48654bb20534874b02303aba30ee88d3c1e055c8f203ca5466b909bed3b27767523f03db9473066935f1c978c44094f2f1dec422aa149f730d790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a802f7b739854715a6b76fe1bec248c14588a66854f2d0bbf4ffe610017898c47932f1f544e63664327233020ffdbedd0230614fb335d0ba43ddfd94383457812166a4e95f71b32c34e53f21945eab75efe1d2fdfeda66b8b6d861ee4aff5cf76ed30302047c435bb5006630640230262e11db0c28ac2a91eb3a88097b6bb0c19c4500172b54c2e5c6ae84e75e2917945256e3f2690371a60c055108735cce023048b44a6e812f13b1537d199264f757dc1dc8401b47619d08ba8bbcbb1448149140fa76d130b0d85db36a498616ed1cb70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023029778dd46a686cb632ad6a83a3d50a3cd69612042c10d2180531c427972be81b833cc6f6619c1a90d281d375574f82da023100abeb2484f4a888868761e21a84672bdddce1505bebbe7ccd7c126df69e203bead679dd6e7a6998566a40f08507df401f0302047c435bb500683066023100858563ffc6a8680bd625819bb27f38d42c02f7ada2efce87f5dcb3cd219b54fc8b8884e2c6a1d19fcdbfc81ec97631d2023100e8fb02c171f509e03f51a098a3df07e3dd847057cc5cf7c35c8f6d7ded958d8afa7e77b989bb4a57b298b8316a25ba260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d726e28c88cb9c287c6d81b335561495ddb843ba24149eca20105fa046e4da94574506699db6d2e64966c2b830d358eb023066f4def66828a9edcc8e4426f26b68859fae1e5c3929ac81d39d19962b736c7f29dda5ca5dd74d905f8e25a276ae6a730302047c435bb500673065023025cbe391093509a5035db95f43ac3c2f8786a485970d62e10f4e782a626e3d032f3d7d1a00ae5c69b4123d0a6d2244a0023100b034bc5852b925197dfe67db2b65be3ff9f69455a16f58399764a174a762ac831a5a5e735f88a84e74a38d819fecdd8a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307be89947e9c542bea2fffd5b6b03e25bc4e019f0b8d65d03c340bef1a91f79e072bfa2896e788de57268b301c2ab9fac023100ea56e339f7276f810d7453c56368917e36cfeb94e050ad27a1c0cff1b8e93fbc2844b7abaf17a2ac9468787c2f7b82330302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100889b250aad02b8612e679c4082fac6b0ca336d8d850a468aff50d83f1a918d300ddceff58b319565717ea677763276f6023043ab985e0a1ef83046a49374c7b0c55f48a47b9aaac519cfd5d1122094f926135adba87372ae4a2ab1f55420cc2edf0b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230041d73c96fd2aa677a34b2363d737fbfa5ab72eec88560b7f854262c38f11feada0783858f896fb7968fbd6bf25fc29102310088aeaef2c6884893d2145ed925b82a69686115307abf192cda6cd8cbcdb66b9b7091dccbd0c12a29978b61997d952ab80302047c435bb500683066023100f549f03fa4787d1d1c5c32711a1778ec172d7ed2ebb68bb0fd964ec062a6dd9d63e3d592d329317235879cc5294871a7023100ad4dbfd921d3b2d4105f0ed2233203dd64d5f035534229d8bf56a3efda0f5514fd08ff1110f931ffd4adbc947ba01d490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009c5c8c64e9403e21f1cbee59b5723881f3afc2830c938d89cd7a01263cfcbf133108929ca1053faec47687c83f7aad3002301ff83c3c31baa7f5307de56652fbb0db93cb9b2ef04d587a50c23701bdf579e1beec78b692dbd80a97b5b828c1c820c20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e7d3e88716e253f6655f3be9325911b67dd2f3414930dfac4f13b119d3ff8e1a1f823eb73fac499d3304b068349419d502305d06140fcb60c316b70c7d7312a1e2253a0ca8a2e2db707b80a74044a0ee9256eb2423cb55275aa77ee475fb336a6d500302047c435bb500683066023100f3c894646070fcb75799a75f31be821cb1857b9b181857b8435f3e00ad38b54827d6cfd11bdf3acd3f7ff3a97c8e6e5c023100c4adca2348c741e574770ba32459ee14abf8525a79a1fc9ca33d7815d9202e42bf5c35a4c68bf3be78aeeca8186e4ef80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100866b3f00d562b26cb2168d4dd8ee4265b9f8ca2747c5c90ab94035d3dc2f5841c4c4737f643ac0e32114f993d8d2050802307c038748bacc0aefed0d9f34d20876d5a6d7a1e8b0891ff23bb5e61b0fb14313c740d69d176ba9cca7c6b89653785cb90302047c435bb5006730650231008ad197841113ab3d11c041365c822d3ce794fc29421e935c6f6ac85a83beb910e38a14febe052afd38bc31666acb6e76023056de9706a9dcefe3c52d7e126b970a736d1708c2a931d47aa109fab82df236a9e0e94ce284b7fa4ae6e7149901cbcb970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304fd701962b50b50db6e25679c71822e41dfb0cddc46392c9dda4da1f5edec82927d93e2ec894864367f27fd315086890023100ba23578d1ceece5ae1944ecdfc42188b7dad7e189e190bafefb1e64ea496f1ef1698a02750da3bd60b72b7b2b191dc180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023027e517a421ad80449686f4f639dea12fe433b7fecbdf1b5a71cc3d95b3d503b06a421e780921e62cb5a9226d9e1c31e8023100ac6de6ed6eb3dbb8c78da9f4e6f7e2d5b0ac25e945323c8983bc5b0b7287e3dfddfe8b009f1582cf62eb940cebcb83720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300a0e1331d1fda5ed98aa97b06783f5a104979f2dacce9570de18b68fb48266b1fa22d9eb7233a0efb56efc031e86054a023100ceb650573ea82d236bf263ab78c48294dd16200002727ee30acb024ac2bfbf727c9253ddb124286882b475221f84af8e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302d0d26c8e9ed8bdf864eb1bdec1562f644320a101292d9ee7459b907100aea29800dc9634a5ee61e3a7f46cf5b3025db0230330d43bcc531ce6296247227751d16fe3da5735a3dd8367136966548ab14f298f35779debf85b53aada667022d27af040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a03d89f5bb6e1228a6a574793fd57e206fe363ea8b6b72a421d9e76b58671184546fc4c8ffc16090878fc0cb9cd392890230728802893868c16c52c1058d76763232a578e0667b50af2889aca6a33666e72d1d09027b948a12f6873d6b80e55bd25a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310096cb5dca7df96c05896c0a8f410f3c3b8676e824e8026dade2399f847e3ec22bc1ed76e14dd5290674aa5bf5aa64f60802300116d5d2c5736a48f3068d912de9ba4ebf69d4666a8a0a961baa5640ec0e89e83b609f9711826562b377f2fcb49723990302047c435bb500673065023100d2468aedc73eb5c0d5189310e06093e4174bca45f74bd700f6907042fd50717a17c707bd773004dbecc852c97322215102303dd2f59af234eef1c310dfd3373561d1377cf9a3b2c0488ddd6fd2af1ddfd73db34f3afd571ccec3e7cb36356dbcec3f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c964bbf42c0000f9d38f846b31b8e2076ef12dbdd8cc49cd4269c8658fc5a3dab7ae00c2182bab3dfa07decf428a7da302307eeaa8692f53061420519feb6319632de9d692f9797cd8bf91fca99eadce01795dce7f01ca3b99b13f2b92bc92af8d650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f19f8e8b3e096d11c20d1447d9fe693a5e09011ba994d484556124c4325c746b90ca8571b798c083f30044b9580a594502300a16f770083d9608dfeccd87d78352f13b1524e0d18a77f7d4f490ec0481375abe7e46e8b4d84bab4c40caa36b43563d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306415902169177379a0c3fe1455e9bf639605c96dccee2103e72ecbd9ce70681ef0911512422bfe862f980ed4227d7ad9023100f69c5a7164f53d2a036784226202f324714dda544c323bab7c9886ca535971d3930562811f7c94765da56cd3fa19b1620302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b6a6b7e8345d4d1c7452d0b1ee6fe28f924483e29a2ecfb9048cd1e9b438c1725202987075fd7f93faf302bab0824d85023100c885df9061fa6193b6a53d8bd4debb28ed2dc4f006c478817b504c3deae37bd543df4e5d9bc06b2e88443021ade657050302047c435bb500673065023076bbfe0b8655348b22fce8b5031d57dfb85f4161b4a9c530f3e4ea7c6f54125ba356519c36f8eb892fda48096b63e851023100b7639051acfafc9c7b2bdad868aee96be8e142dedec8203a2e741538843410ae560603850b5be2bcd4918da96ab5a34e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097738b7bfc37edc5a0d0a6a726000c1d8a38b57d28a97fd2abe79759d4627b818a055de77daf9b9ac4775ce982a40ad4023100f3a2d9059b5b748d2640a321151a67c954df0641da729d4d715997e78def36269af5ddfba7d15335a20db94d62d4909a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100933f0d6c71fd93a97c4e073d7e73598c9332749caee88785a34bd4338a15a8bfd6b01308a077558671b60526c7459fc9023100ae08ebd54d94e2b0c77d5dd427cf7ee5cffc73e2609eca4e4665b433ff6baf2f8976acdface5bf915da984e0833530b90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008c077191f65854efac2a19fe05812d31eef75f3119c8a4acf4d0c9c10a519c261cf42cf06c31566eb9657382ea07fc33023068209be105077b58b5f73f80b75c62f59dc6700129b58363d53680b7e73b10586c3861a94fa462757c278b903daeaa290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ec9c218ae8a06b5dc9f61e40fe7e789b6767287205fc89ad0852985fdaaefa6f1ce74c9e7d457f583f604f98793d8ced02307c451c431a7904a9a3e596c1cb57d63b5b6179eae4337faf58f59d32d31abfc44b9057e57e218ee834e2420909f7df870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230151e9ed526a77af605f2dc62f8817b2db857b3dd3109e25a423ae6c99a06b6f996483dffc4321a7ba040b6ab2454d0df023100958b40ea50f0c61407e0ba5bcb166ad36c61fc9fbc3db23693d754ca85223caea42446a282734177da9728fa57d83d9b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023012ebb79aaefbfd709db48da361a7e64a7b5c13fddf15eac927fbf5606a574b5bd724525061d64e9436a074ac04765a0a023100a03a76cf5deeab2b55c41f4311f4ca3b6bb93e98cc046e20040b27e300ed46e3e788677e4e69c807a61d8b87d99fce6c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306117f96de4b9220c39b9b12a4918feaa2df2a1d5ff0c6bab55088b7535cb7ddb3c6e65aec5c9c7a48ba33f6bf7c8c36002302885cfc1d0bcfc4186ac49a9782acd1bb1918991e964dcdf2bb3daee4e0a8d23bbe6314e5ea388bf23905bfa464e2b570302047c435bb500673065023037ca97fba3a49288fbfa7621ebefd8bd82b4f472cd7569e0b3dc122c26b9036eae6cd7e1e3556afd6eaa21266e267190023100ec29eff518fc95b6ed7741b6e61bb6d2b1834ac50e8da055939f3ee7e0b1e2f82f8f5e05ec0699c72ea147749047864c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305676dd4e132aaf293ada59591b2974da794761ce7d998bf2ab7f1c2ad6785e3646d0ff48e1948ad59cbc6e9d8dad879c02307ab5eafc02d0ecaef0fd3268ddb87c31951d6ec04d27e7f538f7a93e674567e8e2252f6c1e3131029dcf653b68bb41150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023041e27ef2e59ccc7e33a908689476404eee5fb5240b1f5f9dfd843e4110d1521136806551b5ed37cf849e93f70432a61702306c555360eeca82e3c46b6c27804833f692c49de8f596197177601e73e85b98370820f49e5fec4373f89cc32f8c6e77b80302047c435bb500673065023100ccd9b6ee2441bdf8d8b7f229415c727e4bdfd76429867f4e8dd36084e42525a101f3c702f1ef545353fdb26b96aa99b9023022caf67dd485a1086abbb28c7f3c19b3929d91944b942f88ae59e4fc5d8073a98c2a59c1998095ebf409f95fb56d350a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a182ed2800018232c1cd0cbc7b4b31573f25af42f2ca9ee812c12a2943379db9646aba69f03c53a23b974812f685d455023100e8244fb8e770d64b7a1f03ce78f4733dddea793e4e680e93b1ce7218fb42c319a58e3ccba2d428fc768182b35f5578260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e5bb1156b2b2a63fb6bd94dd2c193c33864a55498cb8da9c749a76cb926369c0611612ce504045be15b660b418f3f281023100b631583d173b735f239c08064e26a120316097210fb2f122e6c42a46da44c4c5029d359fadca19a45072c524fdaf362e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023014efebed1da83dbd43657284d3b37fe4daecc97a8f01198283f503b3f5ee253efd7159225f9f36a318e04620b4e8db6d023100f4e007e692966d4db30069c7559a5bad82de7b1c81826e45680a4df7d391f8f9e29cb8acf942e460e91124a3fc330fa30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304e3839dbe0cdd9a3a45db3a05c474b03a0d035dc1a7dea80ee66e33420cd3479bb6b68f7708681c6234375f957cd354e023100d8a0c05ad284d6d48b3a618b3315ec62aa90175cb8856b40ecdb3a30f27704a4c93f6e749cebe3dd5354adf042a7860e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304173188656ce28c1ee014e4fe51b205137126d63f02cc0a420092606e0739ad233849471699068fe087d7b5017b80acf023048bf1313f126ab9955769a0ae850c497225f44494a047008271de9fabb00cf813f66b2443dc82b52a0548c63891813a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b28335e9fe54e02e51515a3308110fc4e5073fb866304618869dda6db135a4bf3d7ac2bd4c2a59fe34ca30926bce983c023100d14c79a33b53ef26a0343aba6814b6f0bd45e1935957a2398f3a491aa4f3f91d03f246bb058d6af6e523e48fbc4f071d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ac45c2582bbba4ad26f57a0c3d67b9ccf7703a379ea158f728059a1a50a8cbdf9d32be27f958ae2c7dd5c7b04a0e64d3023100ca6c21f989752d4938ab6f7d19d2aff58520ec55bbfbd09c922f8f77534e2b6fd79c46360e79437eca6ff46ff71419120302047c435bb5006830660231008d41f53427fbdf2819c0b20f45a13edc34415e82563f1882d1014a1eb021ef40492498cfbdbe0fd5df1e0bc4aed35025023100a06d7370de0fb48dc36b1bd9e6122f72db7dd82caeebfe1f71235959a5fa7d2be830f8b4fbc3a3a672bbcf74ed882a1b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023059c1ecd8f4de6fab70d98a40ec2e1337093a05528b48d16606ed9777db5bd95d7a45e797644dec6b14a95f055dcaeb0c023100fa72de6cc65dd4ac9525a46f6bfafaeb9bf6f97af4be638b8f2e167345d0c77d867fbf4cb6db52952218b635c38f03120302047c435bb500663064023035a18267e4690d2cdf46841e6911cbce345f2d14eb7fff7250a36fb6ae4a2d943bdfead5c0dc77103c29534392531a1f02302c8f2484840401c2d6a7650378c43c4d8886619fe82cd4cc7b09ff32230b1a72f829a98856e994f83718e3cfcf0f34170302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230509d262a2b08a1dd635d54a404b9ae61ac30d90159412649b7fceb3f0d557737b9a07833565ef3b00d807b736a5fd7be02301b3bc50ad091994adb3fc5846b7a241445cc4d4043746d1e77e46f09bfb12abd6ec86cf208413a2a8253b866738ae3100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230410dd0b88aab38cc585d5e9197378d1c10fcd386570fd04dc3e6747c23fefe93056ca4a6256e15e114565b099e5dd37202300be997721b290d04ef5aca598d9041cc860a353bfdd9348b8bc22066c3dd5ebd578dfc1ac3f19afe4c2f8bfa2cbf4e420302047c435bb5006730650231008516b27c0fba56be2ec3d3b9e16f632e18da584909134340a5c48ef21380350d9dd50c2edc8706cc6b9b443af896c5f602306e025c56a371a615b1c2584824d6f9f23a0cbdb5f54af8035697934edcc89b5a3c7f098197ceebf7d5ec82666ae35a990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100effb55144ee8fe2c2677109efb3a7d97d88f241924fae12cede845474317d83f46933ca7b25a86ce4063a2ae813a4142023100831c4d0291faf965682e53a02e205424c968e97102ce51f5d19d4e463d4d6098ead765b10b33dfa1b4c995da29997c490302047c435bb5006730650230097b5508f0fd189a50a042d172954112b0dad8216da6be624c7b4a3faf3b1b94356092211912a1416983a8dbc3aef1dc0231008ae57542b8fc521ee5fb7e2374eba61cc22ac194f6e2fad70c229a6d443a435a0d931230d9c691ba0f253143f75795ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ce87fbcb7b4d1a935a6b9203cff3bb85b5fa78c5996a125c0a73e7aa86707b9ca1c3e6585936ed6b6b2ca466252b2221023100a1cd423aa93263422821c98196c491068ac88949fa5ef86496e1018be5b5aa43ce04cab9b0e2354d4156daef43904c580302047c435bb500683066023100ab5e56f09a14daeeb2509297d4eebaabf9d8583cdbf5975e49b7ebc187730361edf34613713b39fa53d06ec36887a82d023100a720827fe96fb3106fd4672468a1c7b7bd7c35cb8552baab72ec8b1d636cf1066e5cfda003672f12da5af596c7ce8c5a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e2a1133c6f1303454cd9da39cbc6e70f90dce2ef01ed53d93a35954ce607ceaa3956b3849db8c0c082c12921b9bcd02d023100c2d3a86788cf6d4a0b1b5a9f143cb30a9179cc3dea00c5163dc21d3f5c65115f95a251dc26fcc7a63f41466fd729dda60302047c435bb5006630640230193ddf3af63ff94bd2f5bf784b2893cc8ecaa9918304bd458037c93a4c831f72c1a35b8d65a30646fefcb2dfff18f4d002305394dc401b6ea0fed0cc75b2f091a7d6c92f86712eff6365bf2f1543c7bd5e87e36a99495e781cd32cc18a790a79ef6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e615f0543a573fdfafb615a5cfce54f39405853d0b4744cf46ba26fe0157639880e1ba80e04598c5c6992f966751481b02310084b0e83f4674cd79a45dff40a17d91c2aa6b3d423fbd1b8af09a534a1a67783cc7051e643ddb8822a24fd91024ac16980302047c435bb50067306502302e531a7dfef232a306ee515ee130872dd02592b0b91c632452cf123a6f98736b5c70a6e3d5b1e7e695cf9404ba492bef023100c22aeec9e484cda51fdf84a015a38b24f15f4162eddda3710f98b7aab1869d7ac784ec7200b7358989a4b0b4f109893a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306b44e9a2be9874d18eba3c02e14feca20af5dc412b1ae1c081bdfb5ec91f9d7c819202b3413f5aeb9c004f909d458a2202306c87361b66c2ea25653f0d42c54d25e564417d532fe46728700b39d3d5b43a23a4b59dcc0c16d64a9c69944ab59181510302047c435bb500683066023100ec89e68b1168d65ae48ce605c677ee712fb1cfdc7af3b125257d3d689e115ae2e29e2520dff0b7d6654c83697d3fb8350231009d71545057e0850131eff06ae606f805c6fb0394c66d3478a35860088fbd7151f70b23d403b75e3cbcebfe02359fd0370302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302673b84383ea0b3bf0d4727f1969f291af062aa46d7ec8ce60f807b12bf5c38d437e7bf4aec983135617e3422471ceae023100aca9c92239dbe364131230b4c9387b20a00eef6f16bfffdd80bbad0c4237bfae110c63169d46d206f3f80b6395b629cb0302047c435bb5006630640230585ee6d89d1e63a922b2959a564e1f54479d1fd154f52f894b97df0aa2cf3e35cf2c0ba5841603b9106690a2ca1c8a7202302ce09cd870bc0d42778ff884aba82b03692885d2e6e3642cb9ad48a12ae0c3fddb1de1bd9114731bcf6f2a494c5e234d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023038ec901e058ede4c3bc1af49a8f7be75ef40f5ab74364e465f86fabe74e955c55758cdaa6ac92337eae74f6eb04a8ed302300f3c146c629c3a9d4786b5103abd1ab5399f02a1633eb46e9ec918e6377339ade107f2436fe222f0a277b865f520ca930302047c435bb5006830660231009b4b3d86c4a1b59bd8d10851b54cccd829a10fbe5f36e365fb99d24123ee570f16d7524ec9423f3f945d5dea60424f87023100ddebff99ed5e7c7db518039e05a711d1aa521ea38c394f912f8ad8e0cba59f40f637f4e8a041de1515ad0e1ca0a66e090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fa29c417458c8ee949569466fcffcc70765d16de63a349085f9ebaf5d511644a11ff5370c71c8c228435d992461ad19c02300394fbb2c46b119695e8d07f364cfa8bdc4d5a13ea658410b4ec75832e60aa93b47ffc1fb6c7ebcf1149cc13729336790302047c435bb500673065023043ad0f9b2ca7685cf97bb79efb34459909e1263f86bc061f32fcd3b6d2fe69d23a4b4f761392fed44fb4fa98192152f9023100c6f7d1007fe8d0e0e53bbf7c14dfcf7499c820b5f359dd01f850bdb2610820b547133a037c88ed1dcbda1da013c89e830302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c3e44285088faa42e1f3f0ce27550b3edee71c360689bb8b7a6d7fb6f8fade445428e3ae42fac5314648a845a4ec7b13023100cd56e3c0e170ec8a319a1a8a4fd06f87a915fc85d03a0d4ba6f28afefaaa44de9c958ab96bc8db63963c425cb57242340302047c435bb50066306402303268082f10738ddbba4c0779afb5f09cfdda3a040f1bb28c7f027a113ca35e2473cbef2c4b670d5b79208b565c3f0dd102302f14b247544786e5aac4ef8c07597bd6c84db94d63845258221acf7bb80865e0be24d876dd943222e0ace471bfeda7110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a1f6278c1cba04ec6d05fe82a0b702f3852fd1f55f947cb35f70b50441212f9600673678bcddc627a208b0b656c64dfe0230218e65f6648cf647b0dafe2fb2a19bf91fa9861dcf94e1c8c54dac2504b25157ee175d210b6eec7d85ee00aad92a789f0302047c435bb5006830660231008527bc90d3166b036c437c801af9c282fefd367d386c10a4ac81ee5c58a566edfe4f5d5af47cac452be71d16a42226700231009511db72e40eb611def54c642f44d6b8ea152e967d10e7319cdd00fe1c9706930ef51e638e880ea2fc950139722cf8e60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306e6edc0a70f0bfebb11fdcc706aef7f50941fff41e793e95ce136a48f01278c5662d2717bc071b22c51da6f162edb312023100b7903a1ddf7e8f7432ff5084fcdc91a8cb26df10ff4ee3e4bae54150f9c07cca2742e969d228b26d2c1f6ea77c3082c30302047c435bb5006730650230509a10049d92c6d599cf593ff36091e01ad69f5c551e65901462426229ac0244651d5a1c68e45ec9019b2cfda82b55b5023100eab9d58125fab9ebde2cca3baf3fd69d5017f63e37169c73e003c469cd3866c6ad2644c6d78ade2e89aee0be789512490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ea4b4793bd6311763aa391992634b31688170aeb49155f082ec61d731febd512a3e41eefec57fc60ab639e67c1f3907702303a804458583df9a8c13f4d56d248c4c96e8af7aca3757b620ae1e5bf935a9abb4d5fd169ee3c95825d29bc8f5ef18cc90302047c435bb500683066023100a92fb66377cee3cc3fd0a13e0482cab44209e6f4823168d09bc83e435873e100298b0255bc9425e0f44f02e6435fbc85023100c3d4a76c4c1acca13fa5d2a1d2b38f91652b0dde35d56743964098b07c21d69b28353389259b9cec970797813b056d6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100deeb96c89ef095253f076802d7b2cf2bf03fc096cab637d42ba2ec77fa3bc75b56fcdcd4b9385d2e8f22efc0e7934bd1023056868a07a803ab391813fe93261279bd0a4d9762e80eb9bb2774477e150cc731aa609c7f7d80d851ca37253e153e02a80302047c435bb50067306502303621202db1c4c6d66a5cc464bf95678c274eb150eef59f6e1ffe44fbcfd9d83508aeb2595a6791c8ed882b010fb0a438023100b6741a982d9737a33fb9096411f36e5be4691e81dcd80ac482970dec88b9c45924073db2aec6e8eb7ccf2c67200b88a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300c70edf34fb3db348d4b0b70d27559ac6eb06f09f98154a4291440ca4f48ba28ca0eaf777ed173cd50a0ab747b284f09023100c7d9c6dd2cf85db603509974b605d6cce0e0ac027e6eec1754872d556f1e8beb6f670c378cf745e71c21b8e47c1dffb50302047c435bb50068306602310090909e7face64e6e78ee714014d4bcaac6a7030537f925b4e4d96c137951ed48793e5016df8fc52c47143549c9b374de023100e2414c01dafca6a52c7a18720a2e483ed25f786808ad8055ead49bf280fdc5ef3a723fb5d014c512c5662cc0fdbd12d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100890924ef9da5a2734e251f6ac347d2113162193f0a6669fd656393d85c51bbdf742013365c5028511229bde2f6557f790230621c0a4123a667f0f29dc9ff82fbab3826bebe474e2976cb9789009ff18fa3d56949ace39b38fb90ec0a760cc73536a40302047c435bb50067306502307999803f6cde3b717b2773c30cd339b28ce1be21ac52e4ed079b69c62ed304f1ca214efa46d3d1a8a478bba17aac81da023100e3ad0f4e570c891f82751ae5020b7e4e0a1a94026429b6c6b2d4eb9ebcfb2aff42542ac51415da02b66551432749191f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f1b23fb7feaff0789606a3c3f9f168afb9db4ae81923801dbd548e46b04b870a9e41b266e98ac622b3480a0cfeb1dd36023100c349a5e8d3c84e0e38f545caa313d1408d107c947d92e9fdec7a1d552bd539837219913d11594720440b85d86054c6440302047c435bb500673065023100f66ea1d68a44abea890ad33bd87baf6420ff9687bbb61719519685f79a7a8f61ccbbdc9a386e4a909795eb936492b2e2023050043da5e92bda1c6e91d4f971e6795fc082554924473ff6d1b49bcb9ea7f874a8a92792fa516379d7a60fd14c056a9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100af8319a85b76ae3b4c231ecf042a889cfe9dd5774b60e2f318c595e02a8544a5fa1787cad1b61c611f4a9e0368d51c81023052fc51038b835bae3e674bdacd3446d6b027913470a7291a53ae4fca30c19d9dcc5a47797184d3f9ab179612ed2aa8630302047c435bb5006630640230219dc0c92b3d8e9185eec08693b9b846edcf0009ad9dc000b3e76c8101e467c1569b4020372e8ef963bf866a470003930230045fe25e6d6fb34549ba96a6d77693fc978d7ed26d9ffb7e973b9e58b1762939fff2ce5c677635e85c3269be7e70599e0302047c435bb500683066023100e307cfc9db6cb712de4514e824da32531482046b7081d259aa74e1afdc3bdf21c9e2e7705cfec874a86177bcc965d854023100a5d29cc6d0734229c54ec90491a52f4ccd8ecb7552b3ae6391028e824a6e879efab75017c62260244d2bd9308d48d95f0302047c435bb5006730650231008cc32e144f72b78ca04297800d9adf120399963298c76b52f9233fed8c0c19a7328c42ef42c4f83243cbebdf7e8888b2023025123154bf4bc43bd9b2b2f0ef05b7df080e91e0ed86360dab1ad5850483f749ac83f1f782e6f71efbd5df16dddcb4100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301bde4294cca3e2a0dda39cf226a0b827687444f9202e460b184ba03cf6ec5f7588ff662deae8e1cb01e6765ee52cb2a40230050a898ecac881def2acbac9f9a2703a4cb48c06b8fe0ff9e599aafe787d22ce85cc7621349655b8785fb23a09576b790302047c435bb50067306502306b7cfe0b36cd2ecb2123ece892a1d654e6ca4ef7957e88d667e0d0753af1b38c498c278b4b54434dd27b01931af3897f023100c572478c3e8c2788a6814e38e259d6aa9a26f97cd739280d6f3022c9b5f746bd39535ae847ae767c312f4524198047380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b5c9542a71eb4a5287e39b7005ad1253068f638b98e191fd4af89a64c0c0055157cd3254ed7bcd242baef912ce6b5a3f023100fafe6d1138f780b0e62a0e174c261307e276ca66e4491131dd9ebf8662af7f6091ab456b6ce210713ac399d810a89ad60302047c435bb50067306502300fa99c9f30e1d0343ffcbf87c4e4956f99dae9d783dde997b7e5c0af917dc766658fbee9baed62c91c4e5af0278da848023100c0d720d9f30e7a558d62d5cb37c2cd2066846cc434213395642a577d2ece312d209c40de55ab702d62338436836569360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023059c39f1c5d9959b5054d2a11214236c916c3177086295d5fde15ef66f4227f9a0eb1759bb13c02346b5bb01843e5514a023100efe16d3b3843c2a1d0924cb7d93a37c1a0067d94f0bb47abe3faea6ffc922193d046f906052ad4b113d6f3181a5985530302047c435bb500673065023034ec88f73c4abfe750b2b9249e83765cb61c4e37e57aa62c6f2f0c30884cddb4f4b2f76ab575f23a439d044bb2487af902310086a7c280306c89d44882677881126b4e761a938489655e52e7e44c783fb3aed13bd2f9bbfd1bf890e5954a9e287c3a6c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bb09d0d2be175e09a0930a82afbe0cf3eede0ef85685085457f835afea2524f09180e5f848764fa06e33e01ae15f5210023100853958c4b1429fba41b57ecb66c4f87634790f6f2ab8abf66d0d946f9c6955a996df961a260572a83fd409b9fc6b7fda0302047c435bb50067306502306410f3c29084e24beb7c7acf0b0830dbbadf804e9b5cbe989253fde821e78331c20aed980534359e50cda94c7939af8d023100f5c74555b52d88d311c178a06075dbea6285b4cd64222b48786879b3b6d1182b5b18ab993dc0a7515b3132ec50b72a500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310086b8dc9ffa5a8d6ffc2661ef549351419366e24fcdbc3876c118afeff84909f4d4cd22591b5e475b1ead77abd44a70c40230155e0946908ed240c351276ede6dce520aabacee98744897fdd30505d1fc2d04e3375ef91d987442834e30f985193ccc0302047c435bb500673065023033449e511e3c9a33c56607586c0a2a7f36c5ff58d91fef2c851b3cb20f3ae0003fc23fad63e8eb38856facab284780a0023100983bc0da5cf7bf3b858395ebdb6e8c48429ad0a6fe3820aef07024371b5d15ef8abaccb67adf33f86996f75513b8807b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ce9556bbfadfb3ae32aa8dc96d23fcf1b65db0b2acf6f98e6fcb8915c24b460e6a6927d17e4bed3f8ca7afaa248d69cb023100ec6bb096a82d711ab507536701b288262427c5d12563494b08ba10a8ef30f60fe6ac095d0135fe1040f23fad46ab75990302047c435bb50067306502307fee777d8a3645accf7d13c0d1155934ec6c2906b831384fb8546f7570529e8fe5f030ead8d44afc59c5cc06a9d9a7cf023100de46bd0b4d6368264a7afac6f5af12ee264de69145adcc7dd09cda1eceb52cb9ed19e85e4af7642dc9bdcf65b1c1dc7c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e81878043e5723b315c03083307449a4e63ac3c4d110db77bba27efa98f07cc722624f0c0133372d547eab6074962e240230781f6867081dc163a73463bfc4596446308bf0613f96b0bae065dd7469de3b5dc638331ee94d23c6c9942366f24c20fc0302047c435bb50066306402306310ed2d2e86ea1ec011568e959cd2c740e101d4410ae5f3cc1d0401a9eea5244bf4d21ee5bce24a840b14a5515a1f5402301d996394547faf46cb55e60e7cba7ab2a0f9a7ec77076e7523649ab57e79a62cacf50032cd5b9ede198c06fe111f8f3b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c477a13a2c2917c490f2aab9e708a1ee02c266190dbfadb8b956c048d0c74296d6894ce04a177022625354bd074a2c2902307efe19730fba86e160b33488376eee16397d9dbf9aefde75e2af581d4006c1111b2595360d32edb885b09860c46a0f500302047c435bb500683066023100a33c435e449e6718b33e32107da657ec849805f5a1b3de5e46c8347e1903b5b95bf74018efa6aed475e44783b022f297023100cc9f47192668781c4f530c57becb88d12b8f0bde5828c4a7bd380d9b6dd71ac047e46410ce1d9264946501caceaef8f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008063d95e3b83e69120bcf9cf775ab26d2c838ac49d7a70b6925336ed04616d25758532bb6a66031761bcc9256770d5ea023100b732d1cee444cddd64324bafe46c57086b5ab694ab02cef02f5653b90e91fbbc41c81208cfe29a3680a8bee21f02a62d0302047c435bb500663064023030d3d178a74591789ac1e21783accfe075d536d2a8f4bc7195e8ec14cc866ba5c4bb108dc3b6899844d38c25b9fbd849023074ec1510508ea8e2a3d5a6ffb49ad8eef300a386d043c25aca3e3fbb7d0d13c754fcc8547f4700a4bca4a0ee00480b650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bcd3606713be6ab2dadf17bd65ea6e9eb6ac445accb54150360a547429c1b96b836186117147b7646e8b5a5b8278ba35023100c92ae7cbd21ecefa6dd3af4ab8bdb0a4d2ab5a479b4624f82dec4986ccabf4782d778de118e4439550687aeb690575030302047c435bb500683066023100bd5efe49f811cdb5b914f0459e7d8247de3b214c736d7cde67f2fd90c9b67ff58239f45925d3042e8b30bb13f8a53fed023100fec0814e89fdc60bc02c40305b4dee7108a26c2a5daf03542d9791c61d274458a37014e6812a37a5a48c74d5fefb224a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310099fa6851ecc3dd2cd91cbf16d01c38e41773f0746abd8f1ba415be89b361ebdc716763d9ee0ac36a3d15e7f23c5a7768023034762f712f19285a731f434969e658d0443990bb0ae0c0e383c06aa7011e169dbedd31545f561451d44bc3e448fcf0bc0302047c435bb500683066023100ed795913d519075dca9c932a6de6e9eb28a24588cb07629cba9181a06f4742e6b8b42018d8d03af3b0f131ccc6fd2f57023100e55ea3d5ba9eaecdfe07639118ce9636b5bc538abe6781a38b03c5e43846978d45e47694963d386de1e69ba46631aaca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300bcbd48d196c3e1b4afd208803f72ee937142928b23388c7bd5c404c7975af02dee453de2cebf3828240360a5f7b39160231008b0a7a70e37af0f014b3b1d72740665ea10883bef9abba4ff9e9df3ed3d1417c5bf9a9a3ba1e34b7387eaf240919b8410302047c435bb500673065023100bba40c3bcfc7f0625c4aa0f0d258ff88417154efcef74aca391abd844b1a0c4392d6c2ab2fc8e831eebe1ae769f4848102304bdfd2996dee571c467b596cac04225610aa0b8afcac76c8cd7a22277f976b38ba7856dc9cee526e2168883c505951780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303dd7fabea5af0ceddd6ecf7454a59bfbff19f97abb4bd5636deb12ef13f577f201dc3845fd4533cd685b1ec5b417fab4023100b527663e973b316b4b0aee55d3713ea6b5cde48a4c6b3d1e4d127434f11a97d67155b57202feacd1a4d6950d1e9ac7180302047c435bb500673065023100c5802ee6b7cf0c18866504c8c3863c8ee5dff0c47088df2e147835c5426554fc49962d4bdcfa2fa24e1f7908a8b02c1b02304ffc6da72faad9402c3b1679226c7aab5c8998dec387225f589a396f806a1d54c3a2e737a80dec77b7aa1e234cac3d690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023050617b3dd5e7f8772859666f2e9f90769e71e61b0dfac276480ad62108a8115a7fbdb3b0c309326ea421d2fd4e322afd0231008cb4bde22e1bdfb0eabfeae194d5238e0b9981fb71fa7f8f6e52888e45a49b85150d309bc9a9ccb44aab3e2837fabe3a0302047c435bb5006630640230382c370ffa5caf24f0543d05614ebc6e659bda7ef69af26b1a63db56aa31dd451755661927b7cf8e683aace587659f8e02300701f911f28751ba8adb2e29f2622c4483d0dd781a57b541657de7ec42e6c1aa375c72b28475560f011ff58c3359068d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a932ed90b3eddecb10c45a68ce5d2d0f3420d5bdf6c835a9cc519f33b4eb81239984c0eaca74b1632e30ae49d8e8fc91023100bf35b6c442d3399ec345efc545bdea2a857acb5b9bb5bac4d31d97f4b13fb098c817a06068ec3f0a5a5c3950dff474f70302047c435bb500683066023100b0ae684433d7f130353be86e05d57386e72b00a9b6ca62491e882e96ff80b924f5617fc4254825016ca2e35be0838110023100df50088af37a1d6307fec1c8cf4248f408a4ef78dcb464ed7bf3dd346145fa3bd6862f8e729a78dac69f835d9156e4290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302a8a3a527ad6eb01489810313a8d77aa83623dba1633647c2aa4e0e9a4548fb6827f03d854aaa528197fbde7991cddbb02304ef5866a4771ecf4061a97d35fe2a92668653285f70c13fe4e09997dc4af1eab64071426e60856bc2a45c0f023e46cd30302047c435bb50066306402304643293f04bf586dfe50ca1b67a9652cc7bb90706b528eb93d320362893d6af6ec8d4268d0842fa66b0ad8b2c60d34470230439cb82ae596700029f27c4670bc1a69e238cb9fe5c0ce8dbf8d13e9541fecd3e45d5d21fe8f38a0bc93cc11980d3dad0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100911e7985a60fbd13e93f0a0637dad69454f4e7d59cf647171971923bd30b97cde7abcef6dad86a1c352ef7abcf0644c6023100e905f58b9a56fbcb757b8722e14bacc27cbb4e999fc042a0474eecf2914f4c96c816f1de60d63700b08d370cd393a4850302047c435bb5006830660231008d632cf8a5d7fa9319a7cbeda5a1fcb3e1b07713d66a68da5eb74783eb2277e904482149337b8ccc2b88e27506063575023100cde0eb325e55dc1642abda593896aec30a300d2ea63425d910997e11ae986b4af6cb0b758b51196a7061807ccbb855b90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304a6daf65c0e105742d18e529c4bd4c6950ea2515e767a7362bf0f8cfec823b65de9fe6712ea3ac5f47e3acc432d2e5a102301fa83fd92b68c5a546c32f23b23cf2ffd430ef9527e5ec8595a6327a3e6dd1e497ae654d3ce6d7c4818d71317f7c346d0302047c435bb500683066023100deaf568aa7d0f62509562f56736a17891be5c7cc214ca10511789b5254310ebad3adb180c30c7d049864c673123121cf023100c30f1e21def5fae1644295cd6a2cc489dff55172d1dd918000da45b10a94e27dd6dd951b38bc5a710409e1d05f5acd100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e309bc792a8458fc9b4c440ebf7d738147fdc23fe291ecc3e950c3982b71e3857328ca50c9f5cdecbeb88b556305c4800230167fa6155c611f527cf04bd6417ff32c0d872f47abb6f4e313793aaf65fada25bc6aff426b180ade6e1c171171b5ce300302047c435bb50066306402303a2cfff22e1f1b9f278208023e750ed79b6c5f7ad85265df24943d52331a20a90245321c8bedde1495ae549b92e1a2ce0230562ca247dfd523b64c311f32defbe0f16aeaf43cb77e60ae4e67767b63723a2f4ce2054b50af5eb724437003f13ed1a60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009a1366e06ca9459245de093abac6f8bbb35927b4b369206f20c7b2f2c712e51b42168ad68b327a1dcdfbd8bfc4acf326023100a13134fd7bdac6801b7c5cd13d526b3805159fa4d3e59224078f9d513e2bd84452090fd9635a93a823bc12ee47933daf0302047c435bb500663064023016a2b171e20de55e4d277d8cf75b808b98dbde8dafc9ef300e47902bee5b483c78de2be8f0863cccfa1e4c0a921287790230416fb6cf6a433635cb6e939b243b62371d4d06f67d7a087cffa7c654f6160f352f863b6984efdabbf83bbe0e26311d8a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300cdfd98386720ef502f1da3ea2ee28fa57d10bb8dad6fb654c8fb436104764be55ce4b72a58ea1e4a14f8296c0f4877102305fe281cc44b6bdc35a0a8d619a46e48a33d1cee7345d3021da554e2af21cab2bd9eaf67d822448a501dfb047f5e2955d0302047c435bb50066306402300b502ecf841dcd81ef2b61ae7c6ebba66d91108842302c7c8e068f59a1f6e7be442b417d8cd13ef31988a170a410d9020230748a49f9a596f7a8b7a8998565fbc95be62df8bef9d04210b2b601ca0614b4b16e591bf6a47a59ee89dcb23c42d144de0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aff7fdfcef24911fbcbdc6386cc1504a9980c071b9405e7c7d9dfdd2c54f14aaac541d0ebca1d6ad812d5b9b3b5e8a02023100b1821953015e504bd40e53ffd1bc87ba6b64395566bd165978278f544ee855489e21d65c50cf5d6a082bb6adfe31ca910302047c435bb500683066023100ca52fed8c86cd7593edf0abddb535ff9535a3d72bc2d934bfa1647f8154481d881d9767c0392bd1f008ba012b460f067023100ef449e65795bd48e4e80885d4e699084fae9ce053bd5d503aff8df13c03c7cf9741cc032a442e7b9015221c9d593fc2e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300ec9cba9dd5d769005046df2e15eeea14c1da7dcd28186fb891cd72c249a44022650cef0b7b976864ee521774149bce5023100c2a38e121a83635d94f5d49356a3b7bd55dc9a8e68fa97732cb33c5171aeb4d6e1560945bcac9578beb2cc503703b1f30302047c435bb50067306502301d21a421d27cb4cfdef296c77e5b1dc5316fa23bb45947d492ecc24d3541caa3e2574e15de498a142a8c2a851414bffb023100c8b6b92a27dd0f7fd4fde03b7f39a45ab123d58d4323c64724ccd8e1cc854d204a4c118e1a2b7b72c1ee38bfc68f10cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100eebe8c8b183e068ee3b8b796fcad6c95c2303b9a428e69874b652ef600d91e3ebb75d5120a588b567ee637eb327cd181023000fd0377fab598ee3fc819ccd2f4fb8a6eaa229b56399c20de02853c0475174f725a96e6ddea78a2f2bc9a99342714240302047c435bb50067306502305ba432b534fd0799b4694de51df8dd3b6dc428970ca1ea0edb1eb02496040437bcce5bf90fb709d93c98e26ac0a6cb8a023100b71e868ae5b5261084c12a91ddb69f07ee6814f37bdc7845e1a344fef4786874c688fcd04017edde299df3cf10dd16d10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305525ce6664cfc86ce1701b1fe9f701bc313e996fdccdb1bef9a8f96f7b35e9488fb06d6082f863b7a6dbf0a9ea0a50550230216956e86acf7d1e9ff7dcb183edd69ac27061a6b8887fcb2476721a81cdc88421a8dae7c188e50114e72f8c358ef7b50302047c435bb500683066023100d0a884fd6b49a9fa0a5d90505a0c9689814eb69e428b12c6630a950b8d0e29d4ea8e0a929079ea5f2a0c74634d01343b023100b3192999020c9ad24903824543219eeb791acdf0d01fe784a0d05c2c0f51129b50391845946e7323167228d56b5a3d140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a255470a1c2652f31487f2fccde52a59573bc742d43073c023f7c28e320f274573bd4d8c94e345711ca4a1712a027f30023100915eddba5c71ba58c20ba80b0d2efb6b22e3728c298f8f63fe8b3c235320616897ab620c9874116f0c76c3cee077496e0302047c435bb500683066023100e37526052704569f9ef6a8adaab5863761fbf937f5dabd8b3ab4e4f74671400fd74947bbf65cda6ee750d201e6261e42023100ab7d20776e1ecf3de3a5992d58b1d10b39d8bb91ec167e3aace254b8e6df61615ec3534f2a34d02d03201146c47e5c290302047c435bb500683066023100e4cc62a2dbc3f3757916fc0843e15f33214d9f6348a47064520063f43eeaf9afa26544a406777b09949b384b1bf11c590231008b91adcaad936c6d7b82140f172949c4689c9c8a174a4c3ae1436335aeecf3db545b61eb8e43688e61139fd127e959ed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023078f74efe202a99db763b71bd052ef12d396590fb7621b7536b1adcc53ca361eb1742e843420354433eb68f0efc1fcb9e023017ea11866369034c6078b87756c47ff2f07b046927f21cdf82340a8c9c031d472e9e7972c1389ce4726bd1eaff874c9d0302047c435bb500683066023100d63aa51a3cd730452a993c425a0d28d72759f552347e926702b4f7b9e7686b8341f71db5fe03e9ba6eff6fa18e57f2420231009ae9f91142c33cddc5b92e360a2934ffd86c461c03a434f02045917a850b1cabe6fe345eaf1bdbe01b0d31eb321f7a470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023072026cedf506011d9ab96097ec8b1d5c1282bd27aae0168106fb5786c865fab120dabb66bea46b00965e9ad757d1f645023012600d175d7f2d2d61a3c3e6c23b321d0c6dc6e4d18f5b4fc21407e20490b64d61090aa2c51f2e44c4c0802abf9cad8c0302047c435bb500673065023023f929cd1dfa296ccd6d53eb02092fc726d111eaca6f83065abcdd3871e146ffb6e08752b7b8419d4de83968a2717a37023100a166118489cf209e6cccd850f2b5f029b845f48fe5ac7d9a356fd896f1243466da68660bc3b40b681a0d9571b8a8ef770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310092d200890263e6aad919bad0051f82cbd575ff820212a2f174fb86aaa80bb127af9cf9e8cdd301378b2d317593e3ab94023100b25b089f1bec9c295d64a3239b0d4e95446e7cf8b0c266939dae9bfbe4aa75757126e8209d976b069783c09583c6b0b20302047c435bb500673065023100bb9c6a3846aa3fb5e567e740d1cd23fd77cf8e1476f6ed465087493a410fdf0a7d38f3d075f2559eaf7fb692bed9559802303ff26efb195eb95693c6ca45e6205326bde4a175b005a380c5c66ee07fa8450d56da6b7c47242d275d9d3bb5cd76ef180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230318402d6791cd73825042e3c7c46cc3153002d52c05b1ba8ee21f9aaf8ac30e717886f6544131390acfc8a1e0da8c74c023100c42811ae9f3e292d6e8f27663e7f879647e8703f9b2b37441e343f7f4f4e59b79eff5642f0ce7c55f2f5a672b402e1b70302047c435bb5006730650230040d2f542591c3ad35b1188b2ccea6f98bf2e6f7f9899585e6ca7d85c4e462dc097c12db1ee71868ec842af1b859962d023100a57c575d89f691f48e9806037172b7c65760910fcc93ec17198b729f46d8e499c9825a2f5227b1b697e9b9bf5d8193870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ba9318656224645e0ea74d5cda272ce6778a47b42d37aacb98c99681181f2abdf66e01a6eef913b537ff865fbcc565b7023100f95dea7299488f3783f3c56bb0fcef917ca34f7b6c47bbfdabbf9dedbc879014e3cc865dbb858023f36c05bb7acb48dc0302047c435bb500673065023041f8fe1b1a4706a43a05ca5a2ce6401a8eddba72da203638395482e219ca19496c35ac6f88b89bc6885e6672c2941d38023100df9f74b31f44f0b40ef098fb7c9d712b8d3278a354af729a3ac46a2a0c487a95e69fbb4b691eb3e9528c2c247b2eece50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305e3d5190d9aa380dc9d81722157a84780bfe551b9831516d21069c145af6febc373679dc67ef19cadb21b78a6bd91374023100dc1ce65b306c7c0307bb84fb33e9b2b60407447cb1c9dd3c57ef8307246bacbd8efa3c08bf13810d8bd544268e1eff880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b4b2a2e902445b45e6ecb30f0d77cee8051e947d701017ae8278d7ccc31a31e3963dea0d5e4cc76f56f7c2d96f6a773102304fb1b1f0b25a7f5549237ff2c4f57dc30bf7541f0d112dfcc2b1495c3696f73a7f821472b0449cb0e9cde17235d16d7d0302047c435bb500683066023100b40664a6c664f8dac146f7f8ad5eccb49ff348fc8c067f4c5738c36e1847ec47f73d07dd29cb649b8418ac9da86d58a9023100e9aabb12481867294ca39779e5d63a790ab046b4ba61d4701fe86bcbd3c317402e7d889abb395fa4cc531b17af705f090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300512738ee38b49196657110b70888733ee51618277754eb1fe30d878d83778ea283e639eb36eea4db7b8d210a1e12699023008416854f319bbfd6dafd9b1d2eb7f6a3b68937715b95e2509f189b6ef1a12d5134ef0c87e2c01fbd9cb348fe027c87c0302047c435bb50067306502306308720123babdd22bd11cbfb9a199cab35e030e7a2cdbdba9837e577a4ef4586f8ba9b5c0363f4c313e835f9d7354a7023100e5ac1c85b93e620cc7a83e39d4faa12cdb772413f480e157f5cf391f75e63167abb09acc40ff13a3ca49b6391df8ee210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008a3a2ac9eae40f9573baa7a50c1a0d9ad1f95ab37f206ca780a196570911718e4b437e72223dea3a1ab550d01aa2e03602305411d8d311d6dd1dd55ca137e24190796fc5a02a624a9b3c381f544618112c1844fd2461168e03cc131134e5a2534f310302047c435bb500683066023100ad6cc01d9e7aa73e5aff422bf606a45f0ae7918f8729690bd3877b0e2ed5d58a20a02f316e2c332df4e6afcd4ae302db023100b874ce28f8216b5afea5a87c337a22da12fc9c141ce26a44a2f788b4ed96f3152b2f1a4cc5e7d2e9ae068221fc27965b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302961e1975f8d146420fcb96364e55e2744af7fbc13a67249cbc6ae5a31b0a05f170d4c0c93703fa254ba84070b97ed910231009ba9341960294a795ff92df971d849d783e066fb6d550acd8260a52646036fb34e179a2e5b84ae1c9f007afaaebd12d50302047c435bb5006630640230622fc2eb523154d832d8007b8f0821890d8b890f4939854b31bff614fb1bdbaa77a611370fe9ff2ea8e3fe91bdff374c02300dae7d5cd6b724c2cced9fdcc22cb58a1ed7fe5d1a342ed180b80d4e044099d52d8d1b162491390b3a814cf09976e8130302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f500d1952e438c6188ef3effd4c804c164e519bbcc61e816e5ac255f81b5a1cc44e09a82788184ff907eeb10fe0d1694023100e13d651d22f207e5d1acd580b6be64ca1133954d4df29b41b1a8f7d809edd6563eb1566c33dc2e33abf380e6c085fa7f0302047c435bb500663064023045f22fef7edfeb5d0b81ed756cb7ab4c1dd1a94b629a9303b0862b9a39fb16d0c81a5845b64df746f63dd00ea8b4381e023000aa9d04fba83f7ceb9c0c41a55c51fc488e9705796e63ec4a499e1da8a2a6246ceab21f0e2cea4b1ee34d0ffdce74170302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f8fc9f1f9fc1f143143b2ec6c1a3c0bf6b9d6a59d93ecd06614c176faf0d67d5f02a22f65b808bb5066b8f9dd0fb8ff9023100f36ff1f12595640217b6df1f3fc74b188b3bd32b081eba27e87604c5415974ce7ff0f6aac190af35cfff5f7836fecf630302047c435bb50066306402304dbd4e0c8b5c8bc00fde276cae9011f1ffc0c971db5a1b6fe22da0d4430996654dfa7ddf70cf38e121c0df749a284b160230579056fb9717a2654ef83dd3f3e498073bb7b0ce2558817d3a5f0853f3e37e9d1c34b83befb4029d47c6eadadffb376a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ba8d332599ca63fc69e1bf26f8a463dae4b46e31d12f9c29bbdc7558bd614d028e7d111695f6071de2f2e9ca93af6e6e023100bd49cbcd1369204dfe120851658674ff44ab6ef7cc8c74912e610bb8dccdac3b728cc50269608b2b2ff673cb58cfbf050302047c435bb5006730650230024da895e26074cf681c1c88f71de2d261910972a1f1da04d110f6c35ce327b26f23fcc0f167b91d3bd0a0264556c638023100fdbaa5775909b38c63a76ff44612ec80cf1ec6724595ff74faaea57ea407a1af88b56453cc984312e804f10a462ac28d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a4c02662d1913b30bd976b59210ac3bbaa3e1ace664ba173617e86ad853c367d0922b06749d50ae6c54d4e44586ba7e70230195b8cf92f8267218bb383f62dc379c49ce9e3bface7c0974656ecef10a7287fa3e362779ff851f1d7418c9a63ace2830302047c435bb50066306402302043e43aca106e187e022d472b1a0d2f5d791be6ee4fcbbeeac248e607b13c1c97ae79799bfd4dd682c597c038f69c860230115afd16e1f49e2f90353f18ae2a680b69c0a6724ac7e1e51192371ee383d7b70c4b566a6f404abd54ebd8c62817ad050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008050cd6d9ed46f985f52f77bc0752487878439f9ca3ed3ad9848260c41b76051344f61cbd24d680ac079fbf556d8363f023100c1c5dbab9fd08e568f00f014d436e5e05fe3f19a6cd9ae7f4116fa2c894267383ddc8223a45820b74ee0746ef20b9d070302047c435bb50066306402300da84f7b29fa64cbd1483c70a68bb034bf3354cea13c8264e7b7264375b93ac3d3404dec95f14ccaae22cb0c12ee112002304b9e37881b31e4ca71284b2e3ca8adf0dff3fda97331ee8ac4b66c29ab5097157fc476678f1b710bb019d9d675262e990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307cbac17cf36a2ad8117bc5549ae48ff245d4aff22186365dac5839bc4095e7c92ebe6fe7cd38ff7a42f5a26c63c1e8f7023100dbbe854e253e4c1f13ada60876bc2fdd3f568d46519d2eb202cc5ceecafe85f144d3185b74b2f1b1905fd0b30d26a0c90302047c435bb50066306402307eaa2eab211cbc83341b6f10d118bf27d858a3280a877b52d4fdfbdbef9b4ac1052abc32bc4a6ec7c13e23968e882d3f0230199fdb15631ef35e91e16be73028752f7df266ff6b25b92dfaeca4145a85811a3d83daf2fb3b8dd52d5392ff128bef040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306781e2af1c0b933752c7dea814935d6f5797de7687eb88b83bea978e8a55bcaaebbb1ccd2fa496aac1eaf905470155410231009dc710b75bd61d300e582630a2a905f34a71e2e2a8f0889a255789a4884f1a9f61d519a5ea85d062a2897e6e778a8c720302047c435bb50067306502305b9e0053a1668295bb82c34c44fa5a5fb47af26d27768e2ad6eb2645bf3dfc12df01fdc2777ea75df1bd90bfa3a46bf20231009bf93e793773a8d7090aa5831b80f571e24760d5ffd0e44e8e5c51bcbe870441c9a644d31fb8a15c2ed691a2019dce740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bf7ede557f79c27a0ea9b1b1c81f28fadef69e62c0455de020c1010d8d7d36546ea1985de8d59a8cdd0db70ac2e04293023100e605d70fcf5aa8bc458076684bacee189cf61590d45992b4d6c65272a0b4b95ae63c96eb69c2c000fab09794da4d04cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305669e5ad60793720d2cc8303d39252e4623d9d9ae19e394863cfcd73a73e03aa557dc156c3c9fbe672c180e5411859ed023100a54e8014ae9fc61bd50045ae160fa696aaf4d586bd2702656349fff274b498257788a99dd0eace7e2f8d21444fe8428c0302047c435bb500673065023067fa44818cad3d3f16da88ef7c01abebf3f7788d229802c6bc2463bdd5c324e679194253d1635f2bbbdbf5840d98d0d4023100f5c38de6fca7855463a9bd30fa89c1c3f31cd8a8cbd7225e1de52a6ab968590ca697764fceb36cda033a7756b1f2ba3a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ac6fd8b86e0a05ad3878b9d5e6dce7d88629cb2ec70f0b3d0eca93b78028e67443aa4fbc1acac01e096f7ad529f23e56023019cbb1d1bd4e803f46792e4dfcdc19438f9e62382d90a452d666c8511ee969ef75ad66cc935043d0b8d9757c5d3422480302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230185ab8ba6aa3fb4cc2b985fe38d4e4c33da6a3e1260b65257c7f61aa1a70667d34ac94000ef1ee2444a74f45e163d2ae023100e37cb338af1013839a8c398ab6d896fb078847a9c5be7667f3a41a0be0f744eedfab8330b2b8c5865b474f35eb97bb410302047c435bb500683066023100f77ac248164948c943d83db863bf9a6cf25f1941de314246a9f10e8f7b033782a75fa69cfc45312a4966b96aefca9074023100fc211cd1609bdf8b397c558dbdf07287c8c41144efcd7a10427b507532d0e72b59de629e83be1274d47c837402c4ef260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008f52875c804d4611d1d0c5c068fee6e1a4b1aafc2d41fcd3c570b098cab57bb5d563cc4ec3c65343369d1e2008d0f83d02301a8520481e9f12ea4d97465aa247e144bdcba5d6df2985c00f43f3df2df44573e1e4a1a8b5be2aeed13e4bec751a1a260302047c435bb5006730650231009f80d6530bf590d26d46d41c6ee6e916f890ae9e18f9dfefbdd89de59c7ea8de75a523198aa72ee46d188debf0c57f9802302c3ef0577c3a169680b69cc4992bf2bb81e63eb728fcbc0ae03721de74d775bdbe9ad352673df9eed0f2c61230ebad100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008d0aa4ce688288d98ce4c6768021acdb777a6e53fdff5aaef651d8cbd596a17a1307a50066972873d9140d673e3bb1c20230574bd7bbbe5db769a8594a66585909ffb26795edb010ed811b5cccf29d3b86f9259e95c0aafd1c3988545ed8b8e10eb00302047c435bb50068306602310088019bf10d2bf5a2c858d20a55d52f29b333442beb9066678860be775c2abcc3b7d26523f0948d9d7b0258cbf10d6221023100dad8cd272ad79c4892c9a7d8fe6797577241487da60e94b3fa247ffc215a224efca221cbd07fcd7af30847c4285961380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230583c8978f6786c296ff4c9b8630b98f78bd02876f24d3d6750ffbfaa36e37e31d783fb6cf1ddc5cc1bcb1d1240e362ea023017da6d0451f545d801c3ea92623de13bce57f5168a158f5ceab34c96688afc093af0b4f4b82989b7472ed582f85b39990302047c435bb500673065023005e03e2154824f2b0312c0f386ec1f5736efeace2c559301c0817d451edeb0a94e7264575c7f908cd014af0cc0ab13f1023100cec2bd4d83c91a664b5764b08f74a4ce97f9b02a736d2cd496f7981643bc1c1b259af92a8b524542747ddfbb5824e40c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023056bba73851715285a598df63f97a75a1de2066e73b2cfb2fb975b76091517c23abc2a041cd03e4e458fd56032fd4f8d802310092ce705e10cb91dd51798d864ae0b63ec6db42cd245863de62f65fad680e592b199637545d6ea78c6d489f4c2d1b96900302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cfc763494ca019ac5ea09de681fccfb9edca2ea82486ff0fe8a514e0bfbc1b92631ab13a1875c1ff1e946c58c69185760230092d4eafa2e73df552cfb7e5a86d212c7d9f1bd9b38ff68bcc923671aedaacab3c40c63f7217142c37d5b9187a3618c50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aba09a47933f78f426f0598dc3b33fc5ad1b42b177bb2ead169e9b178d46b8985e4db79633a4347e9280a9ec0acb31b602301c6ce747fb1dc56385203bc19e6a692da30c66f0cd04f39fe698a20b896c94717d5a34d13dabe25ef59182c3f54fa32e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230565fc55f13dc5e3e9c48c0636a9fc4aae295b3352a3060794f1c7483c57871fe5b3c7ef9039ab1f9226e62ab57d43e60023054cc8652b814eb3a0d60c7c127e22bc8da87bd64e409383483861839588cab9de43fbfe0bc1f306f67296a5ba7e751f80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300095ad20c3ffdc1de1d6ac00d642817e407d0172452e3d5777261fbc3048e81b7ab0060d0b4452d620a353b53efa22e402304b576b7705099fa0ba36b8026287bc1da8964ba25848b6f5756459f70fe61862727e9c0c21185dae9e5893c6e1b590a00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b76d4dd4e750b0811f5422b7bd62d69c58e9a3dfdf28dba27b848672dac79fc5ee7c5a93c8ce130b56d4306ab6959100023044c18b3e76d592dff4cc253735a1bf6d23849c70100906f28099702cf3a3adeabfb752625d5e6a515d7555ed14a0cfe60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302c7a69c982fc0b30017b9342b49034114d2947b4cc074470fb2571ad6cb02abb809fc5e8c9c3fe5441de3d0b93a7c7bb023100f7653bab9693c86ceca0976935791a8be5d78d7a3e1b454ccc496bea4144989719e372a116810dde0db8aa65fb5728e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cb76b7fd3c01805da66d2eed6677b18b8921044b3ff78d2e3dce3f7aa9c40c05b72aa6430504f38dba1292189f8d2067023068fc5c2cb0a7367cc61cf4756fbf38b47a6f38ae7863af947fd741087abb43c242aa7805de5934730253d5e92106f8020302047c435bb500663064023100d8643d454f159732a119c84896061a4f055c61b7af157fc77e48424eae74895d913c5a5a155eb19d50c35200ef9eeca1022f6c434f9569494270181248cb53ac60166f0dea7c01b250d705b9272ce510bc559a6b6156aa560d13dbffac2228d09b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008bb9165018c87c22950906e472e7bd07f3eb067d7fe8c9c8b99757a7141aa533713c9d3980bdc1db15264d47165e32ac023100ecebb1f7a50575acebd02cca59e9c27229bb96e05cd0f181b12fa158ee2c1b8faae8332a4921a2f4322cc7d3da0e5d870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a6a788410b5464f577cd9f9af4035c85715a149bc2df07415c97bf7eaea62fb56c14bbc16f4be9f45566d20416e1f7360230460bc7c536066c47b04ef8f3bc7f0a450c0f0ee6ae5672d7798d6fb6f379ba78b437c846873b78befbfc327a02b0ed9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ee6507bc10ad4d58ef0ce1d6863d1a40d5b3b47a5fb93fa17a3a3f725e9f7b3e274bd55719c556f114a5e878ffd682fc023057a8939b0a5379fb6532e3e6b715712cadffd06e6c2bc24646899982c422695e889b198790a6585372e82cbd889adf750302047c435bb500673065023100fe54ee2fc4e3890283e1f0716fa51157da58eb3c59f5fef6625383475b066d2503fb105587f1afcf69f5ce5d2b15489d023020c0daa613ef186623c0fa80a4a56679775310c84aa148529486c21fdcddc671b21697a53cd6fa636308271ad4cf32f40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100885603e92994cd9d3d2dbf5504bffbd7a20c62cec257aff8385daf43581313e74b66b845b14562a4fd977241d46266ac023100b568252dfefc1cd35e74fee7fe0173b7abb882a7a34853a2c0680e48d2dc7e419dbb4cbd744c7a17149a446559ca17280302047c435bb500683066023100cc1b27f94a14e48140d752d5b4f97321099318a52c74b0d5c7f39155352390a9cf08f8dc16ee29a175def5f5c3a3f8a0023100d633d8c3120501a3931f4da6a21c0e223ba0ac9455932b9264e032e3c23c77769525bf14ffcdd2b62855160b4525dbd30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230377d35d6f0fd6ccfe43ebf9f048ca474d0d68c756f8167a9624cd0ecacbae151d249d97ec61677ace0519707a7415eae023100fc08dcafbe0b789bbcdd12b8cb943037dc7b9abb877c03dc3ff3fa9660a58f5197e2dec6c3f519b17d1ae8d33391498e0302047c435bb50066306402301a140cc4cf3ca589b40d665146711dceb0a5a46c2b475113e3db553b9efcf149dad63f486881cdfcf710c9e814fe7d7c0230485b11b1ab4428335690c7f3b158ee7191b85c4f7f21a74ca1d56522637529304faac7bd235f85b4a671bb51ede792960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009584239a74062ad324b5d01335327d95b5dc89a6e713b38522caf330a2e208d49750bfe1ac7650b255ed218f90b361af02304eef72cb9d53c534a5af7aaac78edcc56568e782b57d4caa8d120731d403da86d5449f3b11fe158685ed3eb291d8ab5a0302047c435bb50067306502300af3a258eca53d5551854b67dd755f6a4907390efc43e61e91971875b017b575704d4d10d564c8b13b9df25e7d6d7c2d023100b9487fba441050d548b2e4be655c32bedc142df6452a7d12a7e170a2c13afc5d33736d29696b66c4783f05f37d0a5a3d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ddb01076ffeb0dcfa9e845e569d18ba387b30b00216ecdb3a0f09d1528f688867740f88b68b0dff0150b739422d7df20023100962c5afd675be2909e824241597632dcd99f5e069c3301ec5e214e4cd21bfcbc769b8864edd709e1a6035a8cbbc962730302047c435bb500673065023100916581e3143f50a95808b82939c20d014854b8ad53de01ba57f57acda49805b1f22a326bab5e102609fadbadb3e2f1b90230486f01551d6cb46cedf9bd16c396d31b07896409b96ef1353143cc09c70ad88d204b08438fb1ac23599c5bf8aa27bf490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023039a88f1032e664455d0024dc9c9d96026087cbad6f1b35617385cb52433ae73fa72e3f084514207ec87c04d16dc5965202303f68e5098ff0655aa1b629ff564931536da51e5b1b80284edfbce7a9b818d2b67567e621fe5842255856648cbcb810150302047c435bb5006630640230634def7b0a632e49c3e81c44b466fb984695e8af750c1099f2850420bbbeb21a5a7efb9407d804a1d9e6b1a30eaa137002301d38290edc2f1784cc2320f8cab48eb7dce33e07c1e4ca99c0eb9a51c034d99bb292bf716b8d8af62a6fa551445552690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310085320ce0c0718b4551d66e0ae344432883a9f452349e50691b0115b14c246f7f192205b9e64336fe87731a5196a805ca023100d3574aa91c6c611b8e0a67a6cb5d1487cfc81d7a4243a5130adacdd4cd17b8b5fcc7021be1c8679bbd451577e4e23b680302047c435bb50067306502304b7af3d06dda854d34ea08a6dd103d3368b343fb9b3e1a3512b14b884bb4ba98ad96baf48c44c19354baf457a3ad2c1f023100f49ca8184b0d2f811792e5ed87fe04a962342ca0ecf4c57900fd1b380f3f56d2fd5ea4cf560ed8266a45ccf09693c0540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023071e27e340bb3e783758120c3167756a644a28592bf6e891a3997807f8a8750388530703db91a0cfc2a056d3dc17d3056023100af88386dd13f5ea86a08326f369ad9ed614d36bc7d4b81ba91b83a14efd8670ec2a946770fec632a5e4c4c6f186d9ba50302047c435bb500683066023100e4d475d8d0d91546cb255639d875967b260783a75b13971340ec00c0c2436df28ed4417c571e21580a79fba1de87be43023100b2e3f92b772a486be243321bcfd6e0e6cacc514bb9200f7a312eb609c7999f7c67e0187414846a8ebd774bc04a5ce2e60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cdd795e9304ce9c4fc1d9e29b9d4570a8dbd09d9fc9433ffcd15a80fce9e2dd0181fc8826312c97d5a2c50b47b974213023059ad4376556437a5bf58c27306970ff3cacf7134287180e5692356e91a27843ddd189bc515aded624ee1a661c7d92d450302047c435bb500663064023004970bb7b3ed5ba2a33b093bf02708cfb0e4985d006f4880741793995fa989c140f19eaedc55a3ff62e80531d3e1dd48023054b06e0591cc6570b9757112f4073fd5e42c7f30a14e2660b5f82cfca26ed98c210f7dc265ea9a03c6dba8f19cca5cc20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302e2546bbe4407283a3dd746c7aba97dc87627e4bf916d89b630260ace6697aa789cc0cc339d0c6099bac2af4417f26870231009c12164ea81069141c01634bf7ec5d6e09c1fc99d679fd3fc46d44434ac960003326574d6f6049ab327cf22d614651a50302047c435bb500673065023100d4ad9667fcf387636037ba6657cdc1ef7e8babcc9930f83d9f695cef83162c53119d1024a46c36cde497f8132ca5f1fe02305254aa8e4b7ba7809532c4ba788a9d88a03b3842042b0ad8ae8c532a2542f6f176297f5ccc9504ea8c553dc399f7fc050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230407839ae043e560a86019650391f123dd5e5a66799257c2bcec264432f3bffff2e37d0a57b5eaa7413db6e9f0317a02c023100b787ddbd4615f04bd3e0589a8c942ac44dcb793a44c126b1495db70125bd4fd3a74c8c202f3322186929f6044cfb26580302047c435bb5006630640230374c86b39b999b83d35e9dd40de021580faad770ccdbc59a716cfdafedabbcd5438ab46d32e3c8b5418b9d47cb7a17d702300d9608a6bdef74456ecc1b9e1b7f4887b87b99c704418bd4de307dcf7dabff516d49bd5f0f2b0ce34ca76b72a6be3bf80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a3c8fdb1e64211925a9e02a031ead916c89561a480abfa79601bbe3c6991063fa9e9a3ff2fd0163ba22b976ad253f0bb023100e46bb324e72b419d60735de69336bd2e9f7de0ce4081b00275d8cedfe45dbb02b718104551a3e3da6c3b706382cc113f0302047c435bb50067306502310099fdb3968f97bdc15357ea0eb7967ebb5042ea8a507f78d57d1665118ed98a48168585c74d3585ed083574aff9b4492d02306e6bb8ce3dc5ecd17d3da257c68b28d69462cc80145886d966a6646a9651bd7306bda9a358b234a8148c1b62ae11a7ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230039b070660f8dc2669904a98eb34d3e72f2b9ed22c0e6d761c080ce27f2e0a2de610a3607520360e3ee8cf50c25739d3023061ecd0eda126480bc10417dc41a5178d3c6287a7a0bfecf7e1ea1acdc6b73de7d7308ba1bd8a3a290831cbe250a2f8900302047c435bb50066306402304d0c5b5205b2797bedcd15603c0a5c255884a633a6512c46fe636fe1faefc8a4a6d3ad23e1c83abaf77548f736ea12910230044d3abd15b87618846d58124dedf323cf3a435890ed744f09914f1902f4f8f39239651aa0905c791f441425a4166e390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a8ab3ef64750377646f8809ecf881f5cab77cb199d5b0a33491db687889a13bdad1fae90c3832468ec4a4ff17d1e68ac02307fec2c82d401410fb420a5b59e55d8be496292afd053840303884e6f47bb11d3b0ac8e34d8ea87110643ce9a6adfacb10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300781df8cd2ace010b69b539773d12cf406e8ac94bf532eb96c9e0a6e4a6f557c0b848c04582331e1ca71b6b264324c67023100bf64f69e7b1542b97db5e0f7f2cc5635f8ceb1127cefed0f79daa1ce0eca5444dc36f021dac847074c258d4a0e1d3ecb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301540ddf23edf989b8ac923b8824b72ae5f55665371f0e8d5c77baf1ab70bbb3fb5bf83844d2b1ea0785f4618b5a90ce0023100820c977dcdc1a553d96afba955abc861a861349cf30d1cad43e48549ba4b0ebd1e608e5a5df89ba8c14f3cec5612504f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f3886a85570cc83789caf6c5a761e82c3d22c47cf4cf90a2fef5fb5f13feb4be1f7f5e2d62eb8630ecdc07dbc3d676b4023100dacae8342c98fc9db6793064a1adf76c41685c11b56ac83191b43740365e7c62e4040dbfd73d2b4882be1f45fac95ba10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ef4d0133edb47262c1e92c61d5e775bd4f497ae459522f17e21560431a3a429676959f33dd66f3f133429e9650186f30023100dc14a6e9e2d23e818d4fece26d0827edc95cdfb1f960fa8a7877b964ce3aae661de245d93ec6b989a4ad14cba6d1de000302047c435bb500673065023100d2a294c8397eb248c932ae6113eadd10cc41de5ea39778c11478f80d3b2bd0148bbd8973cdd5e038d20fa5714df9d0de02306d93cde76c3bef5cce31ca18a4c744c4139b365866c81aa3e20b645aaaec48868813408c45536f52b3a351e24d62072c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230499d4e3bdf1d3897f09c0e8bc2bc5e3e28a7ed545007f82ded88109da1b2a884c38450bffd8145088f13e86cfec14e08023100f2a42f7cde1070f2a7257c0acb755a20468e63ce664456b6a58c94d8d6cdd0880fe192cfc17ee9a62189959df9bbecf60302047c435bb50066306402305bbbc50fdc76af3104305fb84bcc7095f7d1aa4cffed80d139c8e57975a71fd92f1ab6cf9d3a672498bac8288c6cbe95023068a9a19d0beb7938eef0d36e12b9de9a2d8d8fb04c53dd68c7b8d9643fd13832e392d3f1b02f5fcd3611128933c690d70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306dec3fdc3bd93d281ef322a48d1c47063c96577cd385881311fc3e67ac7bcbe91aa7ea163e0c75831dde6c68f970eb5102302d46311eeb567ec80957668ff5e5004bdbd0b6eb6329d157510cdeba6c2a511c59612320d7582e765c346f02ded8ad680302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307efacc444e99356e8dc5758e7ee1df505fba240308666f85e09532e711fac22d1ee57e144ef7d3e93fc75b5d918cc079023021a601b5421802244c0e2272cbd9fe59e2eff37b1cede8a202d22bcc5eaaadbff6ba428b195e2eca108992a7714957340302047c435bb50067306502305682ce7f91a6e9c1b1fdd58832f0cfb2f4848ae31e7d649a8927deeb1823f2c3bbde1df07af6c5217799a9d797bece34023100bd0bb38508cd0e047dd0ca5914d5c9f3366d8d9429e29f05e61e70b56534d447bb856177ad7fa7b5b54def420b3f162b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302d48c029ea6b75113fe79965ebdf5eabc13e41fbf658db17e9e4a38e8301e2f053a0768d08d9ecf27ce510da4ba02186023012e5e469ed13d83685d23561b589d60085a89716440d0b510d3005f355be6b81ed324f24be9e117a5a4e0cdef759302a0302047c435bb5006630640230058587a413e565daa87b33b4467d424be6ab8fc586d1a14b32e18c1c201acf205357ff77c317151b718ddac41d79b38802300a78b5c260d40ff8ec1271eef1dbfe693b5a7650e1a6e0e7da162182bd0d6f62f8db790187ee8b1a84272359fbdd34890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303fdf8b10143f51eabfa1428ce0459f3dc775cb05b728be1c8c1e1d67022419e72d6e72bbe83515062437ff69d9458d58023070131828485889a53b62fc9e819d5363509c08abf6d5181617f1f67b8b1b202035eb05c043eb05f3d27885311414b6160302047c435bb500663064023049f4ed430184d1d3d226bada703662589c65d314ef1ad78a15f962d37329a1c8af5ecdcac2430cfb108be001ba7021f202305bc836c0d4c5eba6a47d436404b2481b61f5b4eab9fdfcb59f641759b39f3aa10f2a3cee35b2e98485fadabb1a503d6f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bec77da8abaa2ccbd5857f51954f577026ee12ee0ecac844dac0aab61e02d442d5c971d4758b4051987e5d64c17415b40231008ffc21c7110ef42ab32018c9e3e7a20aae7d2b3b5838cc500fafdad3108333dbfd152c4a8a6d7f2995dd899991d04e320302047c435bb50067306502306d099e1367abbacefccdd1c1eb3a8a4fbcb2b38f091b3bb94aa15da2ce2880300e8d617376f065dd31d346efe8d235770231008243aaa7b9724459365877818fabe19104edd35652f241b56cdfcae03066a5bf90c14b539ceb4df179d98d18f5c70bf40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100871b9d22157da1707b8ca213d6f87744a43bba077acc56f898c87736b19bca9abb138df35db523dfb0a4bec0a2d02cf1023100acf84d7db5919067cdf8372d3651525bb2979ea66c75d235f05374bfea40b18647391380b43b16ef068358d3b7bf83680302047c435bb500673065023009ab417c0d6a763fdd53ab7442ca859b3e18aef0bde92c43dff073870f5436d2de2edd48b7762aa41081544ae272a3750231009082f3a8cb4693df4099b192923c841403f5a04806d17689feb676c928be0fa1ecc5936b58b0557b6b048fcf0b0816090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304e63b3710152060c14b8604ee200bcc4bff34af205aa6c5aa3eec9b1a7407c7643be0c37c9537c7d7e81b1e33513f77502310084557c5173d3c1b92c22341b7ea53849dea1f2fe72309e9e0cda72c25cbd4fae5cbee8983b4819787f1b74843465fd140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305b9ebd2654c7f00e7b2e8c4c817eb3dd3023ab835ba166cc4a67a0576c3ec31e39632be4adbfd2db2951bf3b59809f1e0230411cd08a17e3dbb3a90b0c516127321a1bb7fe93884c9409caabb766676cf498695aaf8cf080160977dd6026086d4d4c0302047c435bb500673065023100806b190140af14b59e6e14d9549dc1aedcea0127388eb7888d64e307c090940c5d37619555da03ff317a1f50c487dd2f02302bb314c0550f8d5c70a2b04cf5c6d5b3496dfa5d9735c06e86d4996ce8c8aa7d4f6b4b46f19d3f256fcae711af2eb5570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310088fbe81d8511188fa10ce10f6ab47207d2aa90f9b87f64207dcd18c5246b2aa89faa1b8f2674ead4650f2e4724d8667d023100d8fe2a5adfbd6a9b59dbfa10dffcea2d453a18c45e9f613cc68c9d61cf1421e472d8c4a9b969bbf96ef098e368cd9a6c0302047c435bb5006730650231008e5a61f108d111d83a62e745cd4606ca2f2765cd076f5ee4097a6528a11e1e68232824e96eb977cae07936385e9942c502305006e4655991d7f196ad9105db49c43a77c6b3dfac4778adb5f610f05ac175bb792c412a17b355f86bf36ba3904cfede0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306337d8b74fa82992ebba7017197268e973337ba51b2dfea5183e5b07f43b9b99348cd6b69464328fda1612aa498c4667023100e381564a6a71a91785485fc4aafa1381f677d533f9b12d4a6eeb27c74b77c03963d5e3dfc42e0358f029ccf2d9db677a0302047c435bb50066306402303270e9bf1d6f75d2ad9ffb879df0ab56750a3af0b3f36095eb03a62499226fa52029b7d43ad7ac1983122dd3187cf09c0230394a6b38e120928d877eea0bbcf993caae3f2794dcaa0f5bc5341cd52488709255413e4df7182f27fa3287e6850e7f740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cfec6eb3662ae1fca0ddae1afedbb14567679872428426544d795bb78ec79e7b404d9a9ebb66a653276caee7f65732fd0230037269bab48647e8eb5e97bb8d35068aa792f5f93a98c9a757a47fa3bd3029bd8ad5269ead3a7dee51a4e5a5b02a38cd0302047c435bb50068306602310090ad6a4a4975af6370b16835e76b54f660d4a2773f75822410909e63a2f9e9c3f18183f4f78dc0748a5e73aba06af864023100b0e8ba47629c9217e42853892b9f2026d41920b0541bd0aaa87c77d30d22f13d284eb9fe6fd072dbfa2544b61b5504650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023069ce7966897c3700e4d79a7514dc3fdfa064f3f32e8352c629f506aa08efa4df00c5491b4ebbc4352d942c8d1aa53d69023100c906a882735905bbc55752ede1aff0259fd3a4a845d2c3c0b54794a2ba56eb0f751899467cbd50f19a7f1e792f9c299e0302047c435bb500673065023100badd9a939d93bee4a16d4fde5757632353d5934c3a79de3277fb56388e443136412a4b828516088e313931e59d0838cf02304bf83422ed871497779c062ebcb193a445b1178b0250f367eeefe1d4092ef25364f165efa2aa49e238670bdaa5fe2d9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023062ed94cad52d2f4f70436516cdfd6acb85deb2df79be5073bec17f74233ee16b3122055a8276abafcf65839b04c92acd023100f725fb4ae90e197ed6837f86d352aff457c54c739a8fe6a95e3e869d07e186b49aae9db1daf8c498d3538ef66bc7cc620302047c435bb50066306402302adcbf952d694d8c496501932dbd89430cd525e57179f8410d18e8538e3e536203e3bfccc4d56f5c5c5df563cd9df8340230518e95c399ba7dd1d91dd156a75148c1f9bd78e0274a9a33157e96c63e27b1f09e2371359d6e3b923ca629f6fa17fa100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100907fbe264ce68cbfe2c17a7a72ba4aa193fb4edbd7bbe374cc9d708e61d7313b7550674ec4146d9dad312b50cb699c5a02300788dc7aef00a42be30ed99bd41997a3ab915332c82fc8620e3813f89d68a3dc1037ec84349afc07bd277a506b4aea0b0302047c435bb500673065023072d2be9fc7d0058bbf20c96ba5a3463040746d3a7128f3f5deca67c0f442bfefff915b02b83fc9f3d3e6b82bec5fa602023100f6c9099b442d787d11c9e0dd23b022ddbf91e016be035fa131e3895eafd0a73ee3d22ba97c28424852f0cff4c36608a30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009a10042e936e3a433d20770ee0babc38b2588792fa2666da45d708cb6b4e539009775e48cc9b1c489573ed53d416c845023100ff245fbed62914309d24f88adc8f6f71c3fa19d2e0954d2b0530a1c51dba8d1785f9e4fa30cc8ada2bd095c0911c1c1a0302047c435bb500673065023100eaefb6b38f03c19aded43b2e81a831c30b384d525d5f5a3c60762a2a194f3a73efdf93c59982d1dd378ad54e5c2553500230490536d0ed2e04804a1599a5174022817acb84e6aebe14306271c57d9a953ec6f03fef731029731547c4eea6f17b867d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301d2215a17ab5f59f9a1d450d6e2bf20d37c35f157f66bcf62de25874dfdf74793b3859b3e63b835a4d106c85e992177702306a641133a2b2b9aeb78a630b12b773bcb71050e27be83846f89f5b68134f958f8deb86335a170f671227569fc451990b0302047c435bb50067306502304c3660e59cddfb5e11f8f6ef0d103c26a94f704e61e3e3c1b46fca881692fba00ce1b79dc3da5a1d519bc6d459c79572023100d6f17da59ace607ff210d843c7d7c9f615652f9058ff6cd35cb192b91003551e787218e3ae52963dc49ae3c199dc01110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230201d7ef6d6782f9dabc0d738d0987af5c8c36e8a140944edb6945e0ab487c3c994b78403fdb63acb5046a9a7b17aa9c0023100deed2a3f324ef7ec4b5aaff3c8f29ec66e2651166afbaeab40ef0bdaf4ac75fde6c2b0b156e6cd971af5248cfc0ce73d0302047c435bb500663064023070f246cd88d3a8dfe0de01919ce9cb626d2269bb7ffaa8df1fb3ad9a00486d7a88faf34f2cf8421d3f8244d03bf955c20230787d6881c1259b40d4381ae44332a19f443dccc3fa957aa32ea322554eb41157ae748791f15da93540c24d983264ee510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e6358b921c83740bd33cb437cc3d4cc4d52594c384cf0b849127a7bcbc029223d1ee04adc58746009cf4dbbd2c5cbbd0023000ece3a6aff4eea471811a5452f3c722c0986ab96fbf99ea52462a655320033072e5bc9d246d071c3b97ec09f6ca755d0302047c435bb500683066023100b34d5a0629c627553a1500bbabc558915b0c3d62104e65b917bebabd73d2a4096e344f3899b416fded79dff40775ea55023100dfbc93a1e32eac7bbb138f305e17cbb2f7643356f63e51f2e6fbea7bc190b7eb0ff0fbc849c9461cff4dcc8bee2d16f60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023060ab457bf7c01858ceeaec9d63b020a60e078964edb67fc45bf3e4232f33a747b451e1dc3bd5f0c0fb150ac82c19539b0230347de66df7a460cf2f001fe104ea4369c511cbd1551e84a7fbd57d7e92db0a8e5a357cb54cba4c04eab0f2a8834324fe0302047c435bb50067306502307aa5e0eba9faa09233b1d5036e7cc3b3514c07f5e0b521d1cb7f3384c57697770a07a5b4f0d0544ae68fd056e71ee507023100dbf12abf37ad00aa0555cc922e57f907bfd27c6aee61ebd6c16fa294408b733935a39389e94cae715ae6eb6e20d00c7c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ff9b085a0068bbdfa270a29ac44fc5987c37314495f11f6f8bec03bb95e1a3d8a4344ce84abdd2be1d951d269885e5ea023035eadc832f30c3ac9eb6122cdf9925498673d82f1a4573d13236ba01f3a2082e919e2e8e4f7615e38776a9d944b2ab5b0302047c435bb500663064023054b029f5af7f05cd008b2ee79dd70c413545e20d781d16a9567bae3bec3d3fd99a61f7e23f175db663436a1a6b51ffb60230533a6f7ce4e334e36de5f1f97d4ba3842bba334ebffdfe26492b58b2883fc7870f917211b118149fdf6649aa49f5a3d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230157f543f6bdf2e95ccb708aaedc26d40e426644eb7e38fce0440a48d18ee6b9349b08ddf728b79ee0162e9d924012a79023100b1183c949df637ea1b4559d1224a838fe60ff90512ebfffea4380920406f697a901738b8f5052e913cf40552095fe8a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307e9484214c69a4d1a05cdf69d7a9f2ae3099d9e84eb0e81085031f1a29daf90162ee38b01de04886c15d7d3fe85e201a0230548d54172f68fc532bfedcdb091be860778a84c873eb43097574b7cbbdcdbf8351ef7bf93c42c28ef287adb33f099c140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230645777db1543ade68c2c34f6bbb9b872e76a8f6029fe0c42cd3f51b4c50e48ab9e289c9305512fcdbf9270691860998b023100f5bfaa51bd7183d2b56c47c3dba6405259390d394832658f9e1fc1b3db7f745127afd5a49030adfd62b381cf767872e70302047c435bb50067306502310080b7a300684490d3be799b19710d7bcfe5aacfdce5baa3d0393ebbbf3e8ecc993544c060d24f7cfaff42f0903953a0e002305e709c7cb74da4f2e6614c38dc50a7db7ed2f0eb98ff75dc8bb675662d29e55ebc2b628319d3b93c696bfaa58ba3115c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e2c51b276f835e6a9f13b786c518c45b75157f7a458d5ac70deb164911f184dfa2dcd00fd47fbcfe21365c6aad7fcc90023008d1c4580551f86f9944a723bc1e7920b35f41ba7c308415f2cf761cdfe6b0a6c1991ad317b248ed060bc6735f1557410302047c435bb5006730650230745c9374188a4a01a49d1bad3878fb6870cf738cb35a9dbcf37b438e98c316f3cf1d49753f23b2c8e2935653e5e2f4d1023100d907b3f4984098f4b994554d8c70f508dc1be6434e00b61786892daf3a7a48ba3f1bc39e24986bcc246ec0520298b0290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230319fa6fa96fa59f5a9334a57d402d25116e13cb170f1d49c57cde90f6337cffd35bd37249abcee6c3a4f2f5e4374363102301c63a748b2b0e6cf416b02d94f1926293acca827273e37570d8a49b28b208ea92852457339383d685d9efce06478ca9d0302047c435bb500673065023045b112deb32f8fb759086ef1b0b405655ef74d6a6106d97b9595e5f85d2daa7cbdec32e63de16a87379e04ea7310be74023100ce3113b39dd0619da5c61dd5a65d43d6ceb4caf5d49853186a236d854dd153f9e53fe0139dd42017cd0cf3f217b5ba7f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e010f5554035f5ab427ef94bc3e5d8572c5e9e85743b76f5a2f2a6335f76da0afb39144dcf236f81db638d8e9a27da7202306da3c1a96b4d933f5bf79f439f31a3f0c7bd5b215208a8440572455a0a39351de6dfb5cd25c1cd6258d23c700d03ea730302047c435bb5006730650231009483dc3b2fc4d8b8f94f893a51e4600e579584bb9797554ce0712c22f16defff1a20affdb56b3ee88e4359ed263dcc0002306143c96d3374f0360b232e9c386deda8726bb6c353c37b3e6cf2683b9e3a05df7a6bfab039e9b5372f8d13175e02700d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f594ca399cf57f3ba853be94f1e83292760d540cba3a58967b24e9563aab468acd3129c2693b054c6ba2a05c9425d3490230225a92bdb6ae1e91dc3a61484b4d70c975fef58e2e4e33f17bee36671de20e1039d6c54d23526a467d74f2e7584eb9ec0302047c435bb500673065023100aa7a35576782217b20da3bb213900f4daa14f7dc78e694fb29329b85e5fa40c90b347b53fb5c83f99dfc5d3471a3417202305c820f4d0a77f3e110e1b9d13356cf9281b41089a58a899b9571869a8e98b06f953857b2ac2f4440e93d223fed067ef70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ff31f005d75f095d4e725a52f341a375ddd0e85a4e8dcdc6cce0d086d09f56036cf2f3a1821eac6eb3ffaf04373d0bec023100b3e17be354cceac7a2f9648b94017084bf2461c92a1635030865064a60cb81bc5d2cfa378660b0be5086f83a4961a6190302047c435bb500683066023100c0192828dc4ecf7217bf7a956295844978830d9478fa6dbd5f30868ffa5fff7221b919a1c97e0fb837940062871dfb76023100ed3f6b658d4fb1035b86820663bf6bd9d5b845239770cc99000b2ea0fe67d6fce34d775e23b495e5c044e623417792680302047c435bb500663064023003459632b1aa23c5a80ed4db7731e0327df96be24be23fa5909b6cc4b77b0c91aef25590b5ee5713230091e86ae54603023011733b1c579e6294becab6036274c18e1828bcb48bff59c84d0d1a0cd747b29d6cbe958798931873bf7dbad1cfe9a7470302047c435bb50066306402306b45ed8b46e323ef3b3cdb0fed2615dd89e74840c850d580f61d54380dbbea66507c5a13d37b0fefeccf65cd61307e8502306a57d13f89d3d9a6ae083dfc8d8160ba80b506e98f554600628eccd9b0468dc517b66ff54aec08e95eb25e8b6565fc2e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230671f4bf2ecff13f6ba747833ed42712902ae951360aba0ce2f04afab7eb30e5feafc234b721cf9d08e222a1dbdf4ef6d02304461ae8547e5c688f45a8dc77685d2f5689849ef7d1b2f487bccd02f724f3be08b0ba850f6b0ac5ecf6521c578b233ca0302047c435bb500683066023100a0cf39501a5b703a3d968a2ceb8f24574f80c980fc8fa3eb6d5de9cd5a79276b20d01a3cfada03474178a9c37abb9abe023100f8ad29d839a2750b21259d1af5140c43366fa1235ef7468dedd44cabe1662524b3468a3917c0aa1bf971b44ea790c35d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c24d1b6665e82cd9a27291fbe6fb92cf23fc541b1fd6e0bb017ae4a0e1f377905779f49a43d8d6e46686c35ebd622a0f023100d322b928915df1cbd616792cba65dd4d875bdcb2bfd5cd1262b76ce8c9dfb87e3c1f256eee4be6145ef4418e686642a70302047c435bb50068306602310082b999dc875348fb2b7afa821b7acebe1c2ce302f005405c509033bd392ee71b24e76c3af2e994b570169fc8b6a98c8b023100a405248e5f48fc48f654a6d0c01207e100b41d9808174c4d70baa7adf29c351bc4ec0045ddf723c795d436b88c41261c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fa40ace0f3cd9ac2190608cd4e39db5bb2f3a53d8b27c791096ae9140bd565a561ec0ff8782bd4ae5887acee13113f2f023100efb3aa553f78721b2c70da9eb06c7b054398ed178cf2a15784bb8e60eade81b74fe3a47ac990e07cf0a1c1da0147007a0302047c435bb500673065023100e8e43133e72b5f890e56e7f9d87309b56154a2470945f2e0d9085e65d73eb2b6cfb0a0dd308d9a4b13f3c46d6ca16736023004b47e12c2da0c8ce1b457b8648f00be0018295cfcc2530ddbc8711484d96cef7e60c363e224da6730c4bfeb965c8a570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008089991a8dea388ad1bfc4f26e0b67156078e16899f09266904ec5d0face3a5422d9b271426805f76c517343d5f37e4202301c5c3e5ed9094dcc63b48c0a0ace10e429b7ccdff8f63591f8a0b94e6adecaef303661a58ed73b0086c356898f58d03c0302047c435bb500673065023003e3529e6812e398d25de2b909249f3d1e455ccfc1a597bc5c01830150c5e4dc76691b90c9ba65e58add8eb529733d41023100dab41ae84a535b44d05514b0e2884204e3fd6564a2fff19ceb54c89725882a7da1054fba8ba8601dc65120ea2a9e52540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301c2d35929a9d2a0e0720e4cd3d074ef51942fecb70705c138ebcf5905d1354da82d50271f2f91908eedc58b4375f986b023100ac6f65d21873d8f8a75dbb025cb644668f2114ba86589300a4f25414b747378e61f3ea48f5e3814aab0d38cfc927cdb80302047c435bb500683066023100c71b38b44f2f996519bcc7466bf5040acdbb30ff0444f597250b6de542bbcf82fe87ae31ebf2664192dd61e8f99f0f6c023100fd9aafd4f55bade373f66212c0f983c44e66c41550d0a6a606accf9c494eb5b2a0ad9ef4ac8afb71977f78cb17d41f200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e59d218cd2a23792230084ad8883b80a98a003dffe90a005f07f3312e33c6fa652185857ceda1e56d8d9642f975097540230094bbce9b989c1bf2c6c3b242195b39ec8c243bd30d30ced7253d553ea043897ea2a744580712e3ac851096e28dcfb040302047c435bb50066306402300b560eb3f35b008289cf7f5d060889d3bc04fa646b2eba45bf8ecf410aea06441a09056c646117b5b922aa8395d8d3200230309774d3837525745bbb3131d9eb5963bf7436bc49b93e935195fe4ce956105b308a85aed2d67bc6824322ca57f2cc4a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e0c0e35b04f407243508492bab2bd34fd57f4f2c3e4a9149006699594792ce9a80fe471922b80f01e3a011d6b1d52eab023100b5949622fcd3636472c89c86d4ac35e168d86b8f6c59f5505b5d7b7732daf5f7d4d7cf124537ee52e5678a9f99f2f9fb0302047c435bb5006730650230504598b40c87a406a167efe878d5dc5c6b342daa90ddc9923a32a14b89b22ceebf0333df3895bb01cd1b62056b6d8ff6023100d7108540194c31bbb44b6a1a3af8e356c5f367d2e45c159d1a383894b44721843da8907190fec65a51d8dee9daa534850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023026bf20488411c94e90937d844a39cfaab3b11b42614de3cb42f9532f2a7122ecd23612d2eb484a7264fc8f0e5b1605fa02303dd4460e824a00707fffea250f60214812a4cb4dbf013eb45f7c0745a55c5b9a6bdca348b918f9207ee5882ba2b107200302047c435bb500663064023057e980aa1de48b01bde111114854989b6ce5d03729206b1fd79cb7f0953940556e79b393a517ce27de2af95f4ea9a0a602307c7071e00518d05e6be258ae9888087f40d9302a248da4ece40b54fa348bccdeee04df5ae868821b639af23757c375bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d3fe6f4176acdf4c56ceb9c46485577b4fa323a38f8990daf208050204c36f82445f0d94ac3c6c20519d95de8b11dbff023100a9c526902889a16295d95f4e160fac220ff1b6b68d17f8b7b6916050c0bf287512c43eeea344d66ad6d128a47fab4c470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a1829f17a4fcf5d6a41903fc818ff9a3ba9ff54a64ff66058a7a6191509c2fad85f1d7f19af47155fc1a0eb32b75fb12023100d1e0c8503631d0adba3de9779ab9fd906e74919f277efd6074e223e4c8879b31fa7607579de267c6020de7fe162705a10302047c435bb500683066023100ec76e32a8488fdbc3310c8cee4651c4aa5f22343b139f928f1e8eaec68d71600ec43b98612ddd1d2020af67af2bf39060231009cf9af35b2ac621c2aada4ea31d66f84dacb7b74aae0c77b38cf5a45896fbf433b809442bf9e033de3a06d4a5cda29830302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b864bf0d99d81a701d8c42e85692d9c0abcab30e27ce896e3f019077d2f8593360eb516c73f8018033c87ba73cec6bac02310090054353ef2fd97e0ea8b3facb7de38b3f31ee6840c38301c60aa6becfba84b6ccddc6e37ef293d0162293f7b99bb5880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230273a9253b41fc9ef6a9aca19af893ff15894790d6486d57f465595f94e47e888ac852413d45d17ee26a1d440a1a5a302023071c521783ac09a892c0bc6f73ce018181060af656c612bae457660f764118066273c7464247b364cbfa3cb7a95ec6f9d0302047c435bb500673065023100c55227de933b4834cf9583055746e549d3ae28fe06a9e46510c41b51817a8822bef6bd2be15dafdd02159c94e0cbf7d70230779be1ca18da26364ef2a95f59324006d697f6b17210b961bd1f2905a12c35c1bd4de74dd6ec7f87374109a8b4dc1af50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bb8f04df1c367d6c3de7b41454745dab6359d2070b0b758b517e4413b4c9f04675435489433860eb75dd062526f13c3f02305e3ab8e9c9c5e6981932cf9c132735bbc6484178cf176aa922289f5762f63b17b147d14ca9c828f29b1b084ea8ace4ac0302047c435bb5006630640230568499f3b95423ce039f31c25528147751667483d714f79c573e56c66e3866f0aac120308afa1eb88e2184f27c91ad6d02302a4d37e6cd7cd96523a6187346663e812e267bf3b0b7fa175e1a1bceb686c7d83b24dc19779118827ae79306f89de4480302047c435bb500673065023100ed32c4f3a81f72f76305a50d50f44fd1715719e680dc503ccd64ad6fce15afe8aff8bbefebeeafe2832040bac7181aab02305be12aa3ec227911a76edd746a13903afbfe5b6aac9786fc35b56e8f819e456cc03021db1c5e3d3c2fb03608d1d908f70302047c435bb500673065023100d015d5086fb0adf9b9d4c8e4c8a24cd85458d9ae12f3ee91f14eb1da0d182cd46da07045ca8a577c3352cec1afd058380230793998c1ccaa99c588cb6185c0a10cd16f9f41708520f46e0136f86c91e4e867b5a028eeadbdebb1a4f11b1f379ee7460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300ef7801df5f371e93de9d346b707cd2fa5729e49f0a664c0d2b2a4bae3432acc55a97fc61f42da6eab010fcd2eff5003023013263c974c5235d8dfd364dd595deee7719460dc90241c093fa3a37aac0e0374ce8786942e89063fb51564aae33900e20302047c435bb500683066023100921f1d2d019e8cabeffffa53b259cb0db4b43b4ca6131662bdddb3c08054c34666a5840bdb266ed1cfddd564c2b6ffca023100d6b2efd7cf928f168fbff07a887fafad787bac403f2a11fc116be5346ce0ae4155599e8255bede01ca8493d81014d3540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301be8f37f422b0f9bebced991644fe5bdbb5ed31db7f62e798c5a3728279ed02c5877b4e79f9d4ffa1958a26ed75e3dc0023100d5e0a57a71a5155984d6806e08e62575ee7b1dab2f25998d8a709f05a5a43379b57476d8399673ffc37c669b0a65af260302047c435bb5006630640230428c03d802c55d27878f0349096a5c704374cb921c9990bcd9f2037cae33881d2bd844bb3135459f674c81119e3c714f023003bcdb4a76ef9e28ee2961eb56b430a0c9091247d170688e9993d68673e27ca2272c3b25905e21f32586d977afbc18550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301968c0feda0a183448ef5355a9a5ca2408cf2ac87a0bf14f01ee169f264cc6f904e572c564c18c7b2cd6a99d2e3825ff023100a5bf010e8b7ba4ad09f129c0504f54f9a252257d1c3c7c47b67fd6ce89066d59b4789a032c04c3d2d01d7c987c8ae28e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307ca3d551185e4cbf21f55ee66b94a1b0898bdb5bcfb72dab4f8847420045a3a932ad0d0574e6f319ed041ef790af61a3023051c96613da721f5f0583bc146230b63ba1b72e394609d3db9618c6f0636b96a0a9a2b28ea2aaac894a6be78a5db54c810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eaf6e8f6526cb8df19a62ab59882d6ec4b9e19b6087d0817afa953ba5932d7885959f45f9840620f1dc5fd5242b83fe3023100982c8ebb5c8f13f1537de695c9aa390cebaa164b4e70e85b1c183cc11cc0fb5359320e77b877ab189af838bbe067cc300302047c435bb5006830660231008610246dd5f301bca830c64da5218cbc57cdd7a397df445c03db60494e20ad9fbc74402f9a3d64e7d5af4e3a69f59e31023100d9e7d7bd8bc61c49a1a03f6f858d181fe6281731f5100b992c518f248eda8b0dc5743758b954c55869500e66027353d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023063d25a6ef31c6f6699870998ca192703e0d4871e3ab5284dfbc589b716830de2232df62988fe9abb79307e366fe3ec1f02302c55256ec6f47128fb63dd456581744ad7a5dddc89013712425a8af0b07d6eb55600511086c094fdcb3b0ec4df552dbd0302047c435bb50067306502305a4d420ff590bb7bd25178b7f5360742b458a10bf88469c1f176fdcb00607179a4fa566d77749c911176e8840e598df9023100f31d54672b3ed6066139bdf801c76b3024a4c0e82a41382a4ff540a73210bf91f53f7c63696be1beea7503241a25b11c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307e8698a490e5e87f96e607c260a142229b3bd5844b863d202b733d554b0346efcd43f43599a5ec2db210c26f56caa17902307a93ead44e6ede3851da127d5dbbb55b6021e818101fa915641d9698eb3aa9648071905a35c55881cafa3aa7e8b00d6a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230304ddd97774b1c42ea8bd05899b3c6c2482c1d9a10528b135869510a80e60de62f9d4860353d7e84339d615901848662023100c2d0813e85fa85960d98bf9e00e9a222071caf2a3d23b9c6f127b81bcf105f34305e5241ea6b8cf7e5cb743b43fa591b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b558b13800783a56842b9ee3be9ea4557f4684dc8836472d32a10fb5d7b822da6d9d32f514e4a0304ddb7fd5fb1dfb43023040d68803be5a1a7847b4923d5389254030db43dc3076f57dae3124d292515672d4b6c37054eec451e74ebd472c3a25130302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ed731b3f9f1411d40cb09ce7a5c49a55a2843c54aae584ff23d90fdd4de402435f9f91490fae50e2a0f6d397efde501c0231008835bfbba0ef73ac56c6285d7077a919714954c16205d53fb6cddee08cc1c284f38982529a2e9b5da50766d339c33f7c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009a8b20a5159f3eede08931e03a1351cd0965e85a2cf4f9a2390fb5fa9d9f4228447d4c2504d033ca1e1e2a719f88182a0230692486ca6e0b6ba5a50795421e5a646a45825a5ac130f11690ae0d6f42ce0c4e45efca76ce62313193cac0e2e7f1d1f60302047c435bb500683066023100c1ef943f11f1b819b31f219b91b13f89d6ecdee3645a08976b836f71139e73f69dbe508abfee911838024acc6ee44123023100ccbca5d9b2a731166b9b146b2a048f1b6e99fbce3ccab41b8d05ac9dad222f858e4422ce097bb0e7f42cc82c1a00e2280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bd30377fbce713737c466b7775c23c30fdcfaadf45733c80802d90fcc8c8838b601afde74843940251ad862e6494d07e0230587e69f89fb03e1e79216fa8b8d9d0bdc1c123fc10386b4b45c4c456f699e651b25970189e666fbe46cb65ffbdeabfb40302047c435bb500683066023100fa147fa4ca978b985f7daea731ff050a3d9729a58f920b44a3397c1542eb9d5b8abe0c845f8d9de5c33ccebd9dc860530231009313d0fdf60546ed62b91b7b4d86916111b336bdfd3aba8869b74d8dda0434864b2cb03e4c1523bde866fdc6c69cbeb60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230552845f5fde04c2b5f75bb9424a327355c6f145911fd49cfd7ce1f56bcb1859ab25a6f54bd62e2fcd863f1a8e284dd06023100d398579b337890728d8ccbf5602661658121eb668b1b955d3517e3db07604df4ef79d1747b2f866a85898698c4e8da6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097d8a932fe9920569d9a04f7da7e21729ee35706b7e64507c8b880df6063dce04048c841bb2c7ffe44054560bca512280231009824a46ddea1215f9e989f8b30ec606812c042ebb6b88e0e665a106ab4b75432b1b0653ca44ddbfd902d68901d10f3700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064022f5a8efc66617aff58b3d9fbe62e68c38f69775a0b55f9188ba421b6759a709308b78bf5e4c364232d8a281ba5c067ca023100a7134592410c4075d645c2a8876c07a52fdc6b25ba2e32a955c67b433011acc426898b63eb76819c7f53eeef8423ac870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023065456434a043281aa945f91067365e3cc187d576cae422387193f2db86c2047e0676442bffad6f1bb8c96bd1622a882e023100bfe26134c2968961eda56e8dc69d73a2213b03625c99bbe42571ed22604f520768071a21812e5fe84d68a93c630be2290302047c435bb500673065023100fe1c96cba367f86758f0c4129d2d20fae0a2372c90b5d6bc64c2ac0a7f449c0302e8bf0526c1511e144329137ca2ce8a02304eddf9c11fc96c2210e9fd275249fe248766f6180b22531df1fb64c1e9a299654eea864d69bd7b25f4779981950f2d8b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fa9221e516578efaca3f10d99396a75df1cfa0163fd60ed99bd657b05a1562ced4c9aa64160722d3efd9c22f44534dcb023100df3bb8fe1ff566b47abfb76b49d583e2c70b68a03e6166f20ef0f69dc490d1b4c511a80501342594514edeb04087b6ba0302047c435bb500673065023100ac3bed1c707c4c4af5f8237fd33dd42420a7ef864a794e932e30a3240d17b0c6c278ac1c2eeee0cf7923672cc550ee5b02305aaa591f39044a730fe6e19af6415628f57c4745e7a5e892a5871026f67a15f679779730c8d289a04b41d638ce51451f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100de21a3c173e7d6697b03b781cdc4d3ab1180dbb6ffa0e7ba65121d31f4d2feb635c5201b690b06212d713488f1ae2e4c023057d43a1f24e3bc637e93259a49afdeef31c893d0a197bb5f84b48fa862306c38dcb063e4d6e6c2f64242313e11438cec0302047c435bb500683066023100f601491af4abc9c029ea9603eb3bdca661dee20d5e0508d985ceb85f994c080a4b2c424cb180e395666c62b8ccd5c2cb0231009c023d52efe5cbb90132255aa9f4b1094661426881061e5a3c9509e3f1b59b4248bf67dd55ef73580f0ff58b97435dff0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008950d87d45644f8aa9b7a2171adf1d06d388e4dd35c343d5e4f96362cf2a1fc443ae61f93f3643f5de853c4e2fa180610230171f480ced31c7a3f1e7634cccf64b4c5f8bd5c09d4ee0016f6cee3d80526a164d37f56419ec89cba9e5799f7b7ad2760302047c435bb5006830660231008ff5e200eedae3d044906d23d11db02d22bbd1d85d5b5f82b040013a77b4a7da6df4207acad1dcbb1c4e07e0bcf7cf30023100f537af945f73c772632e307843ca73721f213e1fd560a3e331d79f4919c18e80d5212d9de0b17e2669f515a19d673c780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023012647b53cf45bef41aa30c0b5b70f0335947e7bb189c128553afc072d0f4a59ec83455ed66c070fc1f69f7e0c8a3bf1002310091c5c93720d14b8a11fcf7143d4efc778ee6d125d799603201f964b8a8a6cc4b68c00382fb6dd96262cb49396f202eb20302047c435bb50067306502303f6eee8f6bbe45ba4d46147f6b5b6183d683a9086800a0dab09db55069e92560d52bb1150b335f0a1f60c05d4f6d3c68023100b1595f8c9328342b37ea677d72f8a6bc4af0a4f391128652a85c2e38b08bf519df1e9331d1f16cea90a57d0aff2efcd60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b32ac10898fbc5ae80f64a1e50d904c3a5f27f6f4c919e562128f541fa44cb8dbc0e02750d061d0d635de962767df03102302005c236f57ce4b996c6c4d81b9fb4acd5c9159552e81390b6efd6567c61c66d01e249d24b6db793c6365dbc8b0f31150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f140d456ae7ae2e5055ce7f6707b71a5233b7e97f7a123c344898961770c4ff4a6b1ebcf9b84e6c7d3a9c0cb4c1f583602304be40e2a7424645ba9be67739965a31ef250317bf44b9c19d675eb0098eb2fa181e31a6ec69ac7d0dea1b61c5f01d3190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c29cd9e4e0f499dd485179a27024e2f863c53920600761059699b0dcb84839f8be6e1da5895864823fc512e352e9f848023100a381472858d60a54657b27cf97e3e4e089d77a08e01e406c9ae15a50a9957e19b43e2900fd6a16c7e7e7ab90569d03cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d161e440a062aa7f486904661b2f3216a3e184bd7862b07923e3fe980cf11df71000d4faa7ef45a8a0609a6c186824c5023002b3f49ff4547ac628c5750a7c0868e95affdc1706afa90981c4ee81e06c0f3a9a76c14a028cc102a4632952faf2b7f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307b0e3c892b2478643d644d3acbf652c0a9e5c7260faa2d995e7c53abc6c0ee6bd9cb60249dbf20fede1f314583e75825023100f73e4e370dcb8c7203f861fd0fc7e6c0bd8411bcc8713ae66dc24a95ca8b75abc713b151f78f2809f7cef60da438eb470302047c435bb500673065023100fb6029d7e824f7c8d391bcdf19f6c8e86dc5ce430ce1d5e18b842a59c42a3f180d7bd269486c23eb0473852e28d1cfdb02301e2ed30de50c63fc1811e1790ef889faac5258180f50e3d1171711484e71c9c777ee7a0860f66310f547eedf4dd1488d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dfebfd82ca4bf8aeb1e24179a9940f4c13fe26229eb5f724caa35563726c73eaf518ea4633f19a4d06b1e0060ff023e8023100dc84f0ddcbcad02fff3aa8a9cbc4b00ab8be11547deb7981cf52edc8ec3fb4b93256418773e5d01aff0772a5492346210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306bbad5ce07646938de36a196457aa9f7b7eaaef91834e3753bc81ff21d7f54d96813573d0e37c4df8daa47c800df0fde0230253b365665285628365830e37a9ceae1329ee871612bbe38ee0239899423110fe3912585c853d537e167cf6f3ce824fc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305ef60c3f295842a9fca6c5280a4f70a38319dea9185c377866e379661cd132610dd2f67de02ce6eeb105a33cce10c7fd023100e47eadd576340bc01b57b4ee1df2b09dc5a30ad280ee3d0b6be477d0e88bb92a746a5d66843fbc82aea2d5bab6b88d5d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301f5ec52f2b0f1c9879972636225563af4aa28197dad2701584483d10af00809ef9d96e94b1cb8aa0836d1fa807acaa130230773f1bf0ccde8f5aaa72963e2f40c4c498d5b77763f85460ddee890cf8ec3306c6dfa2548a678d2e69d4a5810047ef340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310090e4fc89bc9576549aeb5531097e547e2d0f3e0dc6cf7085ab894e791fac6ebe683f9b6128d16f8af697f2e39ab6aae7023100f0f0c3ee43cbfba2c235c530173628c98bef7d389ded6aa187796fea1e1c2f0296be06a37fcfb83ba7abee735d23b1490302047c435bb500663064023022c00366ff9947d979c832ae7dee825f072c2558339ec6c4d1032a3c749316ad4ec063ca79be06dbec71f831999262d102306d18ee497a49de3d61413269d4096f1c967876a0d3cd907abab53ab3ab9246aefaaa3fd2055c6b8087f9c5a4eedd86810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a1f3d416f78bd4e7d582d5d8c92c0c99727158ee46e0fc47cd5dd134ac9cc77aad9f4b3d919f0afec72c6a5a11768c9e0231009ead2673b062632571d83e0c6a32c7f9246bf3b531f90fdc6f2771831003a4955afcb19fb92d55c3de51532a7dbafbf80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bb6ff51b83a9f06cf82f0105a892c24fe9f75764d55f6232be42b842c62174cce10a0da3399fdc2bed6423846d4447780230153f73853aea0ab99b79cddb4ada914fb3da39660a694847ce79ad041bf8f0c6c9499be9526111f5546d9bc3d320d0c80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306bb9c580cfcecf38744d54c00f55e8000f4da8ac0022ae461a4dd4dafd05391be3d968a13b59e1462b1fc771e36719c502303f426b38c4cbd2f9c0affbc0f75a3e49975bd0a5cfae396dc26647df4db63c93d9ca5b37c5535ab62424eed96fdc5fb70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300c8b8afddda3e63f2fe60b4a48c8822c601950272f56f7ab92289a4ec43a08404e25ccdda74f7d27d3896bc57e73935f02306715fa67e31a02a74741976b89b781be2e12767f34ca2d2a4942865e55e40e50d96d6d1059cd8977c2a67039c91ee23d0302047c435bb5006630640230118c8714b63ebb0f86a93bad5e40cf0bcc8cc81666216477f8d8941e5581810f65dc3be1cb5bb4133993315ba85298ff0230282068ecace54eb354fe53471d1b76a017c3e4fbbc13bea7a9079f056f811d4f55291ccb72bdf0cd5eb267fd7b3472080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c40f5cdd29d2ce431a5b51162c0c8a7796e4a4fdde4d9ad439fc58717e2a810ed30ab9ed058ae191bc7267dc4a61c2ba023100d46dbe39c41782521013d5744ae968280f55ce948af5f5f4337ad1f16b72aa8c96eecb7f77b2e61f6659d5cae46f56f50302047c435bb500673065023100c7e3516593d7785c088b16400232b2848fb60d71c9de357a8d945347cf7b6c3d4365a28deabac6393cf2944033f9da72023011ab3536f0f460bde50d3d28a31aeb03c971062636756f7390f6d9e2c24cc011e1f9c1063f57abaef2182b0aa6d8c2d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100822d3a05f40cc978c081b384e3aedfcd8411aa1f9767e9b8ec70cade393b2fb86bca3f195ea6507d3d42b781f0f5935d02302ce3d33f32bcbfbe88806d80ea700cfe652797635777c7ccde4c4baa4926d9c5d5f25c1141c36d3f8e6eb1f7ad1628d40302047c435bb5006630640230496f95cb5bc75733f275af978bb5bf4797b6cac0e1265350b788ae5c8488447d3f9664863815ff69f8190f9e8c438b2102307e2f7b59362695dd06e49d9fcb37d8d7cd25ebce166c9f8028233eca345394be9284d42705908b3ea446dd2936a2648a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023067a494f837d5645721b53cfdd7f5a802e3c3c77f523d028a0363e4c0410067bbe9b6d1fd78f7ec622b06ce911ad1cd2e023029c1028f59074c1b4e00ddaacd4f463624ae27df7479d8aea1f8600ab2d804b703292995e40718783db92d83a06d285a0302047c435bb50067306502301a0156541a4b9b5051dea3eaec24ec3f5d3f84b00c4acd865b5e00029270aa2e6c46d5a9b4f2e6987f7e769c28f809c3023100e2c685461e809191326a6fb3a162916b911f3cfc1210a52ef9669b27519efc809d05aecda776b3395cd8090799d18a730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305d6164e31b8238190ae702a3e0c9bc2f67f0529462fa12a2153a311b1fedc040871cb2ff16116fee70c8ef19579da4d2023100918d3458e306774964142acc82fb13886708adb406281c8985e0a9b565d40761fed9d884aebfb549258d400487dcdf030302047c435bb5006830660231009ccaebf76699c867105a9fa459a953357feed3e6a69dffb434f9d61aa5bb6d46982835d32b4c9e951648e0eb8bf52fce023100d21e116976eae437e6ca050acbb666ef60e78b14c4d5d93ababb8049a5134bd2376aa54f5fa37f80a31a89f9218f4e970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310093e3f6d5cc63c074cbd46a93fed08e73cebcd7d3f2ef3ef6838a40feaafe7171751a8e10d19e07058807781e6fb9c5d8023069a4e6cdaceee09d4133a781e0f5de952d780880d8fbc3be80eb83e9e4b5e548d62800bbd34a79fcb16e1eac0308007a0302047c435bb500683066023100bcf3e08e7c43b60bc36ff059dac0faead29335cce00a97f091032a1b624d86b04faa84e9bb16453badc76a678769ebba023100c7f290ca5bf708965b01015ae11cc23556ace98589ed6a097dce37929dc1156046211c9dd1a64d878bdb4542a8f2ce510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100df85a993cc5875caabf5c721648670bdbb620880d5eda760c6a5e6f48027a5c40905fe121de4b5126689bbdd3f77bc2e02303116a81c1e068975faea118bfaded3c3bae55a97407ee607a2fb8507990f66744aa1ffd1991e874c1978a090d8d382990302047c435bb50068306602310083ea61acfe50d27adccdf119fb822221593931834d49692e58bce9365a438ff4d9ff0d06d7b017ae87a4a22056528286023100bf10dd605ba3190ca865c235181654dc87e30dfa5ae84c6e393e9b15c2ce3ab6bbd0646a2460997e6b6b1ebbeffc538b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dbf0213512c1eae27ec97c0071352e6e660699e0e75838b1c2af289fba2892f4f13fd2789e19379256ce99f5c35a5c74023021bf67526bec8f2c0fb4b14b020a3a272bbb2be760c0263a7936857a6418b16cbd144675070e879d3330ff75672362ac0302047c435bb5006730650231009f5879fd59f72025efd3bbabb2493043cbb76b9c77ec76344360c64907423f3c0fd149237e5c43681ca91be72d498f340230108ee1c02cfb16c184ef92f3692fe3327163036a57b279ca56c3f267faf600942cc6136053d35d89b5d7974002cf68020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304aa19098cf086de1006680e689d6c234ef1c34749d0f612e006ec33905e760afcd762db50c9143b75514b6e46315a023023100e93e6bf33fec7288da38cdf9989b1a0b59a7142df85b36100f7ccb83e542a33245a03951b536bb7f5721ae359bc913150302047c435bb50066306402301d1f074edc06e106af50b3f7d0659a42b206136fb1138b8fad73ef3d48943f37472ab073d8453f1bc0c062dca2658d10023024b7858bd482312962e88304cb04f361aeb215ac77a4675b03a8ba4147f108bf58805888d2cd52f34d5b3afee767123e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008a152022717573856d6cce20b00c4c61abb0897b36f642e6542daae150c2ddf325e36fd302b446cd1962c4082f271d6902300fa4ac5cf6864ec025d461652fdd1737a8dcf8807f76c4cfc6ccb588d8d2b0c80edbe32bd09ced1b48e99dd0a7ed649d0302047c435bb5006730650230186e869d814a08cc439edeb0a3234e48ec9144a8fa9499ee6c0bfb0cb9d1b18cad6ac56e2c68813b12864e3a168a0dba023100e10fb3a40d3d3d19eeaece62d0f4e3b92d15bc3c4f3499a34943d8d7fa3f3daba6746442e401fbe3f85816ccae509ded0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230589f681e0d1b642b6a234cd3bd82323094527d1a8f9e65ee074fb23bbf0b4049c42e10621108139c0eeb0ef183d33f40023100811fc9d6e8823f6fdfbad415547a56fd3e687c595b476deebae6adfda757e3659b0ecbdb7c48d6d26bccff09d5db2bb10302047c435bb50066306402301c916b177439de6c93b1b714b9371ef7f0bbb0c2ee8f479cdf24f4f33a39665c412a8d5b6758c387df6429cd36ec243e0230157334916856d5e1daaffef5d363673d0fd9993a61824eefb894720b4fab1f2cf0891e1f502d70d9b5d84083fda6ee7a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aa7ae5558215c38ab2034e44751f7151c2b408fef1b81931c0ba352c9d52e263050fcb5673222326eb5d704dd9d4818b0231008201bba0a65c3608c663f28332dbd1d8648c70f3d9d35f699aa8d3c5da9a90c4c9e50c310f84bdfe571b2986c9fb24eb0302047c435bb50067306502304cef63a48fdea97f9fc6f94c437d7c7825a39aa87c1db6e967fc3fa6adbe38ca87ee5f6c1fa282533c3976c31348d1c0023100930d974ea35c9d9e4129349ce18873b6193adeb1e71b9a0b05b1594ba0ec1d11cf591850a43229fe81348c80899c83720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fc53a5a9b869a4ff071687551d4d9d5a99383a115fe82d0cd2b1e5b1b1973b2cb0ab7d41d8c69f0c2794e5211fee0fcf0231009cbedf6d83eff304decf9eeff93bd33da95c5f91a3c2739bcf68000227011bb9e7a84257c9bb551d0f2d1752353fdf450302047c435bb500673065023100df7850154e33dc06ef2933d8cb507d3b03a71eba9d3bb83a89cdd0f39652914f846a5bbe87c778f8b360e0ccfe87f87602305001d68eab24da4a78d5dd0322aad2674bd1ef99e51138530139bc60b3add29e878eb2ccfb1f1ebccbe259c32c8c9c6a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c0bc2893f37f527380a1682ea76a54fd94eeccfc05c61b74831326131e6ca19ccfa589aca86ec0a5680c451323f24170023100f44df0d7f87bef31541d382754b1faf219f800ee3592cc6c605c841c54d7e080f21b85c7c27d516fe39910ce082e425c0302047c435bb5006730650231008a8ce561af1eb248cc8e68811e376c4643630536ba37124b9094a471ed849e4f2d0d0146e39fda18903f3fdfeeb2b8da02303eb191efd33e87d8b22e641275232181f113a7f2d6ecb5f3d8bd5f91c7e6ba944776a1ea89e2f93424665cce4b78ebd30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008b63043d1925a42f770548866796806fd3079dc73ba904e681fc3ca877a78c5fa28cda09d928565737ea13f6311c947b023100aa57fd2fe9c83dec0898c9b745d874899bb2093c4341b3c25128f344a87de6ced684b884da546d323385d624fcf10dd90302047c435bb500683066023100e4152b1cffec0983b12c535d0476a683b1e93ba0928f2a33f47bc104f8627fe3ec531b00effd7c8f69fa4ef3e5617b59023100df681ed2499d877422afb4b36de12524079d3aee4093853b00f6e86584a05bdeb3dcec24fb86bc2cca7820eee4602a190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303068a04442fed3d6e07c53ee361762183da6c0e299ae6bfc280e893b148f73c56e9409d094ddc05d5212c2ade6093cd90231008dddf4bfb1471d5b8fc40dc6838764476ac186354581b72a9b91122dd01aafc379ff0997eb9aa8ed11673728f20b084e0302047c435bb500683066023100dbcfbd1da1c5e7ae35448351e8e794196e8b6e44b084f596ca345191fb831cb430b457f129a08bef4be95223b0fc4d9b023100e81b9063d2ed44be888618373e70abdc581ee51f3244f798c0dd133484e2b271f5e52d9a35bea612ba6d9b0596c26c5e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302929787bc960f2ed67b07298515c8a466195a0be5c2cf0002c3163848a9d2124eb1908381f6b3325cba425e25fe27e53023013f639173cb7d3c965f0d0005241ab0c7849f315cf6d2ff9efe007ee5d5fa7a43fab69c01d08441db3c104b4d40a9b010302047c435bb50067306502307e16e279a690eae8eef3c76b87c2496b04bd705262bd9d3aa94f8940ed7f118286b520527736aeae2da6d063305b3cc7023100c917181651e8fc9f49a6d2ffea0e5ce23887cd07737a20a47e110c9f3932055595c6ab3bce7d45c2b2abdab6d1de1e690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310083d1f5b3ff2b7f6b6f5aa9a5268c423fc9b54c58b9d58377b0172211c953f0dbe9fcabef05674236eae6adf0f45f4b67023100c27823ebfcb706a2248c22306904465030cf3f2233f6981f97076bcbeb77b2b8ed0499ca4037b3f9d4d5ca142ae6ba600302047c435bb500663064023050273e5367c67759195c1bcbd96edc479aee38176bb6820bba09bc49fc5b3f849909bdf8602b1b1a577c128ed85b527802303849dbd3c576704c5af38ea15e513c4c692b8df18654c738c2a9dd2ee6e363b65554f5c2c1cfe4499a86e25b0b5602d80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009b87495a18de031c05cdcc8d69bc67ba4cf49083a5ad1bb92714cbcddd498a9604aa77be9911bbd3ab948b1a2d5d303d023100a53ea038765d4735d0304912a98f302533acffc504392920cba2ae4fe9e628de270b0f0ac59356e64c662773a6f9c9170302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303e2cc873021b0e2eff13bf19ce8c8eae059c76c51ea090c98033ced7dc7f81efa6059278c30645b7283400ccd350cc650231008510f49a2f9b3197430e9e8e408a142f1b9f8d970f873ec77bcbe9b0ff04ee30ec4402706c568129771b7ded18bd0c340302047c435bb500673065023100b7a7195c4dc8c2fba088cb789844c52044774b50e4298d3b104144cb7a2791bd4fb69fdd3babeebdb491dc366780b1780230057f92f2511ce91ef3cc9263130c37b0b6519b2ad0e87f061a6cc56b7e688bf835643088cf8df00f79948032b18ed79f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310087b8ea2bbaa36a930235bae6ae6fcd6f95f351a749443c35c423d3ee16f0e7d6f68b83e7fdf9edce021b06313e51fa270231009b69a2180221958bf69610cce96c11e00bdb4d34608820189e18cd4994e82364c3caca3846d3ac16f51d73bb3c2493f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230234ad39115c0fbdb53a2014524630e525a570fbbba322bc78b96567f3917ee3b22419c7289c6d28930b0191a3cdab1d9023100a9dfcaf08ec36486a4120e9eff0cf342d3357767da332f0d5b55d921bf9ce03ef41e4592d9e298a71870b9bf0563ff8c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100be9df4c7285dac97893ceac0e879a8686d30df4d869e7f0cb0c17fa212f655fde54e9de09f89d874c6a03f7bde90517402300dcf4c6a6fb322b284e48904526e727e2396bbe4ac4e2fe7528ba48eeda0a46f02b79db219becf13d70237bfb3a70f870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303847486b9d629066b80c01fb177104186adf19373bbd8ee19d99b6050c5ad2517e55e24d66bd738de3fd9cf25e249786023100d31414349a8f7d4c08356cb723379a2afa4b7367f73bff2bc9755d5656eb3900c1c0fcd2a96183296ae27ff94d9dc5080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301dc09d2ab95e745b7a7a79ae7756f42ea758c5701ede1257fba879a034213ee2a99fdab3b8f098acc25e7ee367019856023100a0045ddd55a49574b5a4d2f514e511eba3a2c0e15b08311ad6a6a2a0be4ac631b8baaafae69d2763833f37b30412a28f0302047c435bb5006730650231008b48dddb88853637cec21f6f0061228ede5a2a2f14be675dc2e9dd627331830dbc5fa3e308151d76fcd9be36cca7fdcc0230182a750eecd8886645c7e5a03d363186c368b8bbea0cc5c72d2c29c4b7e27e8cd0388f4c7e2fc0a68a97e5e15b95f3a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230189c9bb295414b890c5af468d7e18aba57e78774be669a74d3d40c7f59472ec435dfd9658e9c43a156c5018631e7037f02300bf26005e8bfb692aa0c12c417e38387e318992e5ceb14e6a4124fa98323b2fd74f8f9b973c0b294a1070f8c42d24fde0302047c435bb50066306402306dc5456503b1617ce58de51085b6e1ed062da6524fc23df5029e155ce9c521c13e90091960b67302bdd5507abfc4f9ed0230035ea99c21bf580b79bd7a06aad5aeffe018e3c44811c7c277be71af65838643d03a02b3848ba290b7ed6c240d241e880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a72224d3686b07406277fcb2dfcdd87ec1511e9f2a673f242ecb6de669a8ce47c86eb752536d13c524cbfe7fd43c238e023063b29363135116e81cdc3e07fab09bb14503e74bfa6cb085954ba26a7782b13d08502ab5b14f4c084c0a4b0bf826df030302047c435bb500683066023100cf6001e5c3472e6c05e9b49494d4f2bd25b9dfa3b9184c34e30691dd0f674830229b387ccd54cd47304ad62b02645583023100fa989eafdf3644e287d31349c8d7e8b133247a5d3fa977f3a5da55929a48bff29ec6c811f90aaa05460738b66ec8cbbe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023069c34e708b63db5bb92ccc9e394f3eacc0cbdeb5052aaa244b0b26da9c07845ec5b2a0d442c350a615b5c2b50e7afd58023100ccbeb641aaa8db575d24b07a477970488b3e5d56898bc8b5cb9dba44021127ec5346a19a1ecd4aecbae56172a6880a3c0302047c435bb50066306402301ceedb7ca2faa542de7178d360ea6391bb3ad49b9c40f7b7e57e9a3ce03051a567a8be192565daa19f7d3db78f4edd7402303c9e15bc32e0efaa77e87f8c90ba6c52c21bf9486897cc4a614593b33086a3f8b493f065c129fbe91806a34ca03e37770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023043535eb402a0a6e1bc4cad451535089239f4be92bec84ad6f4c0fed557c32451d28c2f6cc552c906f159912a912e060902302097670b82c648df4b99e9a7803bfabab32f3161ff4c272a9cd229187259a24b8f4a2a7e754caab9c1841229688d28f60302047c435bb50068306602310086578f83df6be6620032d894debe612aa86ba8f31bd0ea6a19ce64496a91d156a98060b6eec03cdbd912b229c8c55cac023100918dc66a46bd607f842fff502a2d34db38345388bb976028326928b51b2adfdb11879bb09668996ee4e570ad885d58b30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301b4c7e7e27d334b59dfa6008001d707aa2230a551348e2973b15a5abd9058afca65a5a3e19fa142898e850ca60647d36023100dc06ac99e4265e97d6cdac2bd1bb5e98196e7e69b63ada4a41527d7808ae43c2efca00314abf672d7cd40e1991a47be00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ba80fad94656a6c214aa27d7e4e2d445bf86bffd42bf2bb4fcaa2051c4e4e1b7a32d05600675f5ba98fc39796bd5f48002305302dbc04a9d25ae7bf6fd1279dc24a5833440f1bc167ce9f0399fe8fd052380da30e08046b06cd21daee8c6beae82f20302047c435bb500673065023100f95ad9aa05b62d7754c76a6c9b69664c31729647a7d0e20e697830ae8b52f6ae4f989dbd446ecad12b4cce1272f330e2023032baf3f59c1398d19579e16d6c32327f518d390a94b153115c5baf92dd46241daf4a63ab505f6eb41385cf58612e35650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230429e053514840c04af28f9b00cbe7cbe94b60af858e7205d1998a9f45e43fb12b38c3418c81b10b8359a106a688283b0023100bbcfb7e174ad92c8530d16ba8f9788c114170106eabedbb98f6e8f5b0c02e12a91565dc9f16fb2d51fb77c979c0905290302047c435bb500683066023100fd1dc8386407699046cbe6c513c50b87850ecd4305463f6367a191a77a423a895ad7dee73396d2d726ded87db62848a30231008b93dd4786ecfd331c2d8bf40c5a0a23de1b78200574fede2b5b79cbea9d26d40d4870b3bc51b07e7af319b1fdb1f3e20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c9f8b79cb9223c7e79c320fe1680500e7efcb2b827fd7cdbdab95a6609d99e31effef25068840b780377fbe4af1e35cc0231009140752c8071758537b4617a598ae48b9b39ee8a10ec9b4d9117cf72911ec65fcbb1a9d8b316b2bde3cd88bf483031810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c126203d3f676d89454bda612c7b306d2a7778edbb234cdb231c54eae1d9cd027dbc12c834e7f65aa9509c550b6508d4023100fffe19919f0fd3ccc08d80d6b1ef63a6c00f8e1bdd47059b0c56787dc2db6bc648040ffba0c3b4aa4e000d34e68bf9090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303a11597eb420885fef4b8a292da08334e3a467ad034023af640b9ae3e32c5805a3a8db2c83c81cf9bcd43d23299f5ada02300975b8fcd62fca8627f663cbbcc5e3ff20cf27702fa8f57c68040c9a2d6519c16ee843175dd54fc544bcc2a843c700a30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230350bfd65d96a630dcf222b64de9a63baf7363cde0ccf360523e55a23e1645671b4573ea863a0fb792d64cbfa0e4823d0023044df79752615209ce608778ebe2efa644d71aae81b793033300fe3c2972790aeef77f12ae5f671cc3414beae87a6f02d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023018e5432a93f77f24dd140e63dcd0f94ebe355c239357f87a1a2f3337563cdd59d29b813888b213173c25de3d89807db202300f2234560202e60ea4df765df857e0de866c874054c547a9f98cd332be5999d357598383a87a377c43e366a2f9c5e0fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023058a45a15578ef2ab4446243c99bf7c2e759a0e6da00e4fb36b7a67cccb6d9b4783ab03d9971855b7d74e3be9e3139b2b023100b54504adba662226a8935976ad2b51876b6cd797a5e4eb37602ae8910f100389628ca8d8f49d61ab0406e4e0f1be70ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bd3fa2a4160edb7d84c74cdbd219b08a01edc91d37c0b96c5b0e71119dbe3662eb27e59333759776afc1e98c04bcd357023100a064daf12471d16b9291bbce342fd5759a7021d2696987570c7ea01dca65b08243c22f3417002e22cd4cb7accc99b29e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300cc86debe909342c9cb10910ed9da94f9e6ed3acb54df682ac5bf5ecca73440300246e4879cd05be993339f9eb7bf31b023100e85c12bae72ec5ede229feb1745cc3ca0f6189757ab3fefc392319e22088e334b56428714509ba26b176811d7435ad410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301c245c483153591f86c75d6c23b5942e4cb17450c176d265f8e4a77bd90fe2418bc5cb74b60a57484a749216e6e6fa64023100cca3dbcab1c323a8bdcf22326b4c91795dbb9e2f4379f1ff3149c6972a5f161b26c748a4851462c5e0945365acee4e0b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023042fb747b54a3b64fbb6db2ff631c7cbdfb11aef6c07d5f153b6fd4a962cc8b9b47fa8dacfe9e31746cfddf29a113cff50231009ee0dd0e9a3b41200199889d1f1955ee383afd925b31320d759cafd71918363099cb03af447c2e5a296cab88b87274060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a8ab36f4ca9d70f5198e871996859db580b96cb7837d70938f268e5293da7d41871dd7370673a4fb23ea3a39881b6f18023100dae754e64fb9ec04e8664f3564ca30b945a9144130b60153c76840dfaece57bc4b0aa226af33dac2c167afa452ab5c970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c988e93c333d47cbd39abe082a51dd97a99236b96110d41ca203e1c4c828ae2cf442ed3d2c9bee32fd3a459b88e69b5b023100e7d425a3ea0364490819e3e97fa12aea0fe8720c1bfe4830853919bfad1c1c3e6c5ffcfca528321a2be7c7862df472c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100972055ba352123344bc6731cb20a7de58bc774ba78322b70378385d39c13b22d0a84f6a71616b5a8876b3f2822f5733902302d1e3dd7c3a22d36f6c2c9416792cf4f5cce5c92a7c9daf39ecd3d11cdbc1e5be5d8d65d4ac31a49681b4ba0c88ed6e20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303b9784cadb75fa04c9960fe445418bf61598cccadacc71f0247681c7f95f27c69c5cd9e57c15ae864a2261e7dafd2551023100da45fb02c48222cb0824a889feda32cd3fe157c32f2e2a99a64e9901419542b3acf3e9a7edcdbdb2b38664700743c4f90302047c435bb5006730650230608004acce03ce73db61b1a979b76e76f0c562e8ae347bf3e98c77f757c4209a16bd24171418508725474f60b3992092023100a156a166c4c1d3befc5882ce7dc513bd20ec5f34d813519a83fbf8b56f2206fbf284ee13dbf77642438ed151ab22731f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c6e5666dd765cdc8a0a14694f458c98ee94ea9d543711d4f855d9dbfb2c7c000895f82b76e0dc01dc2ba2f8903b12365023100d40b8b7f55e02758b904e702e6da28e467260d08a316c581b54dcb61301efc73ac27a2a93518ae6af5f1f2ca453548e70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307c1a2cea59a518e11aac13e3a57ed47a76842da8af823f05b3e59c9f65dffeb7ad705b6636c81743df8e257f8b0338ac0231009c2342b42626b3328fc8c54e61548dc9f212d04d8d6b0025472c165109be2bd190b7c1adb4a285f3706430c0c16a14100302047c435bb500683066023100f07b8827a83e4032644e5332a8ce8b3ea303a90e5cb57954a8d5cba5a5fbbd5294a7873b71e25d0def34d3b9912d593e0231009b9e721ba89608988550063e80ea7ea79185a4df4db0dad5bea06a613fb64290e9ec5c6c9db2bd3eef555e3a63d712b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023025d27cb53aeceee44a3415b3d7bc46c2f13e69c3cf1420341b6d99526e46dd333a127141f7eb25f23fb4b60a35ea429f023100cb507e3c9c2571ab57abaa2ccc4f7bbde19a88503dce435e2ec185c1342bc7733a389d8294b4cbeb418b27351449ffd80302047c435bb500673065023067a0435f1337796c1829f99abe56cbcab8869ad81758ca3594718016c7ed8b55601d0d4a60937896742a3d13f60fbad8023100bcd4e68294f71aff01cd1df435c7c7593d90e43661762f0bbfa0d703efc05c7d315c0f6a1f2f0907d732a43e5944eb2e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305e1d26288a9b67b41deb6e47adb732b43cb609171d90bf6b3090dcf9cf39e39c6e8f454a2982679adb75931c8d8758a7023100def8d45ec3ae68b6a482233e1f6d883209fd87c5c6e63138a3b01de2d73a0f44b4df50d8793f3ec456320a8ee413de990302047c435bb50066306402302ad5b95a8ab3b03d1a57bd83eedf42bc364e6ca5125e507ea73935b1a8be52c0b3b8efce02d4ea71ce4cdaa3b71fa30902304f84534ff2e2a6654364e4665cfef30b007d43b348d0455ae5d3532d27e202c221f5c272272eac1827f7357690cca6e70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008345e5dec7a0d9940ba28e8c5cf83c8b79cff9c3d4a46e0f794594b055c3dc24164328b80de1d89d41a3e9ceb895f6cb0231008e9ab225517aca6369a34dd064dbe25c1e1b922bdf1d6bbc2c98af6b40e5dd183df136fb2e7df70b5de9f326c79de47b0302047c435bb500683066023100c4b5a9027daf6a43c2b81f48a7978415c7416512cae6dcf1fa52aa0b65ec523ed9da1cb396c40094b8e114b49749ea43023100aac85a77920d756f334147ec0a89046aad3f270f52a19a7a69d3cf34054ccd28b6ec9b54bbe3771f5aca48a1edcbaa6f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5f86c4d07357307ec308cdc9e25defcf263b655df3d27b543371af46a3976d0ef25786c9fb6c4f848e2aad9eb949c4f0230270f3d35a3b95deef099fe472ed3e0ce8bb53c533287bea084e75096d6671297ec4051fd8e71d54d7b86cf2e9e7a3c890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5f86c4d07357307ec308cdc9e25defcf263b655df3d27b543371af46a3976d0ef25786c9fb6c4f848e2aad9eb949c4f0230270f3d35a3b95deef099fe472ed3e0ce8bb53c533287bea084e75096d6671297ec4051fd8e71d54d7b86cf2e9e7a3c890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5f86c4d07357307ec308cdc9e25defcf263b655df3d27b543371af46a3976d0ef25786c9fb6c4f848e2aad9eb949c4f0230270f3d35a3b95deef099fe472ed3e0ce8bb53c533287bea084e75096d6671297ec4051fd8e71d54d7b86cf2e9e7a3c890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100edc606fd05f41e235fe9de6c3306b45fbb591f915a217a4e71b5cfee87e95733f5dda401a84ae54cc5574a4b6f6a379e0230089566ee4132e2ab7797e0dc3188e899fa091f68d4dcc743cf855023ea9bb85a92533426453308b4c6801876b97f86200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5f86c4d07357307ec308cdc9e25defcf263b655df3d27b543371af46a3976d0ef25786c9fb6c4f848e2aad9eb949c4f0230270f3d35a3b95deef099fe472ed3e0ce8bb53c533287bea084e75096d6671297ec4051fd8e71d54d7b86cf2e9e7a3c890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023039c95c223fe984dadee4cd5cee701d6ac97d78469334bcce27acecc0f05d5970438062a254706f78f234ec6cd1a8f8fc023010046089134ba64f68be2be7b2cd8dcffa5fc4c3127bdf927a1a32b96e858ae5079dc14f2e376584e17899375b7195f50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5f86c4d07357307ec308cdc9e25defcf263b655df3d27b543371af46a3976d0ef25786c9fb6c4f848e2aad9eb949c4f0230270f3d35a3b95deef099fe472ed3e0ce8bb53c533287bea084e75096d6671297ec4051fd8e71d54d7b86cf2e9e7a3c890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5f86c4d07357307ec308cdc9e25defcf263b655df3d27b543371af46a3976d0ef25786c9fb6c4f848e2aad9eb949c4f0230270f3d35a3b95deef099fe472ed3e0ce8bb53c533287bea084e75096d6671297ec4051fd8e71d54d7b86cf2e9e7a3c890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5f86c4d07357307ec308cdc9e25defcf263b655df3d27b543371af46a3976d0ef25786c9fb6c4f848e2aad9eb949c4f0230270f3d35a3b95deef099fe472ed3e0ce8bb53c533287bea084e75096d6671297ec4051fd8e71d54d7b86cf2e9e7a3c890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023039c95c223fe984dadee4cd5cee701d6ac97d78469334bcce27acecc0f05d5970438062a254706f78f234ec6cd1a8f8fc023010046089134ba64f68be2be7b2cd8dcffa5fc4c3127bdf927a1a32b96e858ae5079dc14f2e376584e17899375b7195f50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100df1df909c0fa32e3a235ecadb47ade8787cd6a0754097d9f262fbb2cf66eead0a59a17405b0c88cdabacf763791f69890230012a96ed0aa7a4bc46ee6f39aa5b8734bc8abf6a6d07e2c7f389e2e71c5d32bd37db8d4e7996cabe0684e2b7153d0e6c0302047c435bb500673065023031af6566cd55cbecb9eeccc7514459df748826b56dc087b55e27c1fbddcc9f7a1adf50571c63e9e9ce7b708fe81dc31c023100b2ddd32f3c482207bc13d59f7fd7b43a10fb4d8b0bedba9814488dd06d2cbbcfca9d4415ff57e48883c35231008bf9690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023047de7009784e0f6a1092c154e9a06e87f949cbbbe105867a1d254b8877645a0c43086e9a6ba725d1c969870109feb034023100d3dbab54327f216ebe9aea12d48e39a2423e2882284b3982c06c2c2fabc29201cacd15f226b2eef402fd379d308e38710302047c435bb500673065023014ba70146f94efcf39ec5ed16c3a8ba7982d10fa77d131a1bf3fc62a312bcb4978f9a428019c80f166d4c99911ecca28023100c1bef6f8fa47c270ac9aff67af297b98007726516966367a2dbb2e1a5548d2e784bf36205d897f8c254fc4ab33f148640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304190e5b4e449c1c72d6dc68451b6b2669eef182ae94adfa1872580e4ed93cd59520935060b2396307774500ae53449c802306200f97a1efcaf73a387b380c64c7edb233201858ecb8e93d5038056cd9a3fef485a928fcb7d29ff4cd8ad9056ec37410302047c435bb50067306502310083d0b74b28d60f9cc1fd205c7590a9034a2973082173df0645281b8ac45a45eaf9ebc5641176a9f511dcdb521fd7242102300d6de188a8b6fe6972ef13e4626c37e78869c12f6f23087cd389ee3c8d56d95e9605d32ef5bf0750784aa67449475a7e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302b9b276533ce1f7792e17a9a127eaef367b27daf987fd0c6870d707ef8798a67297972a0e9920293ea57a52df71d146c0230073edcca525fac0ab509e8c9c687d7b52136742e9bcdcecfb0ef6d6639cf7f4c5655266ccea4316910356383c68421d40302047c435bb50066306402306184b679d20e0a94554b82b18ea88ad749aedcb3efb7f7294408fb9288ecd665529f93c4bc8e3251f802ba5edef064af02307e61143d7f760edf5ef346d644bb42d8f89dc7e8acdd9a281863a0edc661255156739d719a72bf9ac77a183ccc4579710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fc9adbbd160fb38ab34edbdb7949da0d035c9289c6f44bee75cc946af963e9815b46616192941af4b7d622ae2ac156b3023011978e061cedcb17d9468277d178b9e51828869c7a1df48a505b07c4b8f3afa024f3652effc2e092e472459c07e6da4c0302047c435bb500683066023100b15037e96b66f19f14e5e44e60071bd26a33439273a46a8ddff611364a71223721321b93a5e63995a54f5b0a99474b71023100da3b13d3b8cf45da87c72821ce044218ddb3ff99773f25e3cd278b93c0b6359ecf43f7818c56811defaea42bfa4eca490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023073eb212e9aef7204e9ab8cd7b88de0fa36d66b19550d8aa4751ea1632f192454d53a64e9cdb22b6d25e8091e19c7e557023100dca8d64b4d51d0a115dea4319c30a92943dc1c717afc2fcbff5ee641d14731006657b45818e20b9c98a3d6b29e3ead9b0302047c435bb500673065023100a41d09e71f9cb79fe4b89977a2fce9885d88e56c6b94ef136ce7f2ffbaea655bf067023b5f09d19afb60e30ce9512b20023078d2c18824380f4752ba0aa8724829c1f6fc46cd8486323de42b2ccb80a18ee83f5c62c37df49cffac1c734ef2a26aa50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023077bad15365280f005057a6fe289052c1a96d1621d4b0b9d24f8603c6b0ec75730bd2685c355178bedafd9d2017dd61c1023100bb30c7412d72a4d1c7736405bcf89edae74f2413c488029a58603840b6ed3d9c59342c1d9cd1c96a8db268b193d2d37e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023046af567367fefc3a10b601270498c84a0254ac7995475a9c01569d08d711b934dfb6890f20a388c8550ac52b7b23a4e50231009ad8d42901bfea7416ca9f27864eec5446ebd5873417b6a4be05d433ee3b683df6d68a4afafeee7e52800c59d65d05fd0302047c435bb500673065023100b21126015b20ad7fa28d5c7a70bdc3643a11e76f61d3dc5f9def7ab9a8fe8aa3ad901cd4a590692b632afb6ac03f8987023045c3fa24d0a4c738eec8a8add4d5a288bdb8f89493604e5670a2757deb63a6f731e6a925589cca8f8addc14a0153735b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023076a4200d18f668473b0aa0f274e2ef544f38798fcd61764f169a636a15634410c111d0f71a998f6ff4ddaef06d1de739023100eb9691a5c5ba187be65b474f8943857daf68acb1f6430f6b7830a79a13d120b5ef3ca50cb8d92a5ecd06de42a5a8e7d80302047c435bb500683066023100dac917afc1494231e757cf63816d15c2a006aa091ec01f47114b22093f8f2afe329551efdbc51236b2dbbacc52c367ba023100d0ab7de1f4440f2f1a3569ee751176f3968e88e22b21b927722a036bb4a78aa25a6c8b459811a1b1e8d9bea6889fa9ae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305d400507fa55ebc12388d74708d5b5cbfa0a568e8a70a994e8be85c89c316703735d374e2ad15087953570f61f9ebd56023100c911a42f1f4e5e7d38f2d948b705b3062714f6e85099c61b25322b3ee6dd399b2d73d925d196c959fdbb0ec6c4302adf0302047c435bb500663064023038e819a4ea9df289ac4fcc0b3496fc879aabd5aff2e2a9d086be9edde2ccccd2ca9a4e238f22ae2b934ba257bf6f13e40230203ea3f012f135ac099565a6923085f4aeba54b02f595eb305b4d0fcff48b8b3b11d02aa8b0e4aae1acfba8690adab7a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230334a1cea977b770bb6e7f7f59d056566e39c4d909b08577c3df2dc1b017e7af99e623f5cbf8db20ff2cb7550907e62c1023032967504d108521c264e7cfcd2dd95f7e64532316c0cb157f93daedb4c0fb1f443fe1d705fbedbf6940b7575c30ef2790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a128bf13f873697fdc5f54627afd85b43c9e2e361b448ba6e29347572848f53217896141e1447fa62b4a19fa5a83e84a023100b179b3fbe8a367858e5f5fed911d0f73744ed3b1baef6d7924055f015bddc7f3888fca3ff1d3d57338872c5bb0ec68c90302047c435bb50066306402300c42be568e0e97c4a37f6dc06b2478934508687497503ec0400cb17d3503bd2ace0f2898e539b1aba9852558955c87a40230311335bd0fbeda526813d9fad6e6f1c89484bf009833c8c81c86ca765629110cef9d209b23c8bcd2f0e418cbbd1a3c4c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023068a48e4b0ff148ec115f2cd88214fad8c08900c345a9c554be325d5c4281d9f04dd7d712a14d61ffb5fb4e339b9b67f1023100bd48f46bfb84f7d0250052941a7c233789ac3ee082fd7e21fb5e39f53e6368acaee2d351b900f93e3f08b6cc60ed452b0302047c435bb500673065023017c70c93cec1a3de6557efdfd83a14e08d8144a3237f57316f6f0118513fd055cebe13d3cc5d681e798d9ff7d5f2c5e50231008f886ff58257fa082aa091646c1e0a9c8070fef9c1f8f0dc97277d1b24dfba7ab39e1ef271d8f860d44708c17179229e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230188234aa3b7b852df1657138c9392df13ab7d50c0429f2bd61a6f6f95714609ae8be03e2e12993b4c813307b05ce704c023100a807f099f8f0f55fd30b93dcb878bda5708937d0a8070315b2b0061360ddbae99ef45f23a4b04cfd2df3322b235b9e860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f8d57e8aa4487ab8133ea2dcd3b0a52ad07b8ba044bba970d985d2a8130c263027ecc849869e237b0e99f96daaaee480231008d482f41b8d4fa1f2d15480240edc02b53f1074d24319bad6e99f7f99de05ef7b5b9eb6228863a03a26bbe0f757576860302047c435bb50066306402306d28982ca86148e421266039a7177a813d04efd4c0a8b9540b3ada9ed8df9977f0935f054a28e896825e3ea6409d79f102307c61dfb95751c8a3a9f38523a0991f227a9c64c66f4f90493bdc3bb8695077df624afd92ace7dd43fe8cde705da1eb520302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e1dfbcf66e8db139264a6a33597e2e17d001ee82ec45ac80bdd5dcb88fe745e0127bf62276c35207642d366e678c27ac02301605a9d451f283c02d157592ea0cfd8225473de77b779e1aeba0dda5b13cd1be6525d885a710a67fc4c998c6f61970f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307ca3d551185e4cbf21f55ee66b94a1b0898bdb5bcfb72dab4f8847420045a3a932ad0d0574e6f319ed041ef790af61a3023051c96613da721f5f0583bc146230b63ba1b72e394609d3db9618c6f0636b96a0a9a2b28ea2aaac894a6be78a5db54c810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307ca3d551185e4cbf21f55ee66b94a1b0898bdb5bcfb72dab4f8847420045a3a932ad0d0574e6f319ed041ef790af61a3023051c96613da721f5f0583bc146230b63ba1b72e394609d3db9618c6f0636b96a0a9a2b28ea2aaac894a6be78a5db54c810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307ca3d551185e4cbf21f55ee66b94a1b0898bdb5bcfb72dab4f8847420045a3a932ad0d0574e6f319ed041ef790af61a3023051c96613da721f5f0583bc146230b63ba1b72e394609d3db9618c6f0636b96a0a9a2b28ea2aaac894a6be78a5db54c810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307ca3d551185e4cbf21f55ee66b94a1b0898bdb5bcfb72dab4f8847420045a3a932ad0d0574e6f319ed041ef790af61a3023051c96613da721f5f0583bc146230b63ba1b72e394609d3db9618c6f0636b96a0a9a2b28ea2aaac894a6be78a5db54c810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307ca3d551185e4cbf21f55ee66b94a1b0898bdb5bcfb72dab4f8847420045a3a932ad0d0574e6f319ed041ef790af61a3023051c96613da721f5f0583bc146230b63ba1b72e394609d3db9618c6f0636b96a0a9a2b28ea2aaac894a6be78a5db54c810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100884a5245d732f14348cb3a3264d227f480f20a51036b92baa646463ef485431f8b7c762781217182738bcd0467220f2f02300888adfa6f9064a66afeb60e52db2fad2e67b65edddba70df6fbf3ce1fb2c3ef717bfe9c139dc660f4e913f2329011060302047c435bb50066306402303f4f209a934228c1b5c4b62af7b0267abd205cdc5f11fb6a7277832599f3ea0d9299d69dd7b75c49bfbfaa5218b867e60230284fbe59343415ee421defe133a048cc965521b0542e089a43e1f1b22979bd288e83a4afc07e7699b14d0079785995df0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c675571db29f4ed7a8f79ce00c397cc6d858236ab5af2d161a359529497c581e2a3c71b9213a3099cff8a3c7a00c8a0c023100fa5543ce1640e7b8a94cff7fde988b36d95b7cd9f3454e427d2fc8feeaafea90d82252ad1166fc32de0ff0cc9f14a9520302047c435bb500673065023073ff3f055b79ab6b37e8d15af9d263ec6c9f579e9b1a20df8ac6e779bd96b378bbae4b2083adfacd6c9a05d98a2c396a023100f50f65977ce816ba3b4593a7afb4084cadbf817d5d59a45a59b1641f63a53083b63b44b29af489141d94ab4f54f141b30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a562c8a026611a5696c2edcc2921dfdfac2d6bb5a6442f850224d007000de3af98f387c6c300bee435078c8c7460e59d023063852c5a9109d210308f1c50c23595b83caa11178f3d36887b1eefb21e05ae8d95e091d240519ad668f50a7e716f5f5f0302047c435bb5006630640230404f1613d02c8160a39013b49e500ddcfafc9022d6c09faa28f2c17e57fe276435ba0cc2ee6814659d65586479a2d704023015c0d2155ad3c393c56934af9827d93356a61d62f505c44da7203d8623b40f8b7853111986dbc13853f4a1318bc8f3530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023023c337c17bf628320dd5d8ce631cad2ef44dbcdcfc5c13fa3e3c318054c8b333b7b98d0eee7e28aa03feb1c5ceeb198c02302ac8ca5ec1a13bad6d4fc5ad458a1720ac3668f0c963c91e9035ae1485129994d6744d461105932e5e43a5b55aac20c60302047c435bb50067306502305050ad676de129d0b024122f3b26a452c99b0fc5b22fa7e167357da89bd9db1d08541e89a02adfd7886821b8d52b7bfa023100dfdbb7754f8cf5340d6f5002cf0ca1a8bb4cb85f12c795bb9014fdf8b593ebe4cbb6d8fa5d0b52e896a4c1cea3b4a9800302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009f0b1a882c271c353a7972ded5d9f7bef768f71c608f1c212b0a7caae7e351b6aae9d69bec1f27cbe55b2b31863bac5b02301ecc1d13ef650dc964d208076dd570e3289265af43894baeba77e14c15f8391e2d976d58f99dc1623565b042dffb35c70302047c435bb500673065023100bc6d72b2fceaff1a196d577ae84f30484b7fb0784f7d93b619684b33f7bbe58d9dd8b16f1b5129b9eb6fe9ad8853892902300d9532ac86c5ac2dfbe5b17a312036bb0c1178d49a7a6f196267bd61f20820e21455febb3c814a75342cfa16cfee08ed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230319b4b2f3921db28adba5413d42c3da4f62985356e6d0b92c3d74eab0d55c216dc814e2f99c9ae0fc438fe8b6f6f21af023053a49bdade11d1f48191b4d046c24bac5210bc5515bc270bbd460fc9ebb03f866a51ccd52fdb2206555152372b0a3b3b0302047c435bb500673065023065e462f8c9f9bd38fbc911cc7de0af52e95e0271f47eb9af9cc6d1dcf3e7153fe8c081134931d41ddb5979cc37bd2890023100b9d53079f7f5a35954e4e5cceb7a1654209c6d71f5a9f141fb76adfdc17d76efb65c5dfe5396386bf3382c0b946c12820302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aa5da56cb73cff7650dc3a476fcc06a17f303b1b8e8793d8766b1689148b315f74610286e5365b696c1d7bb1f7ee2b9402300f16fda4a680819fec3ed861e310b6ebd0949f748b2328bba5f52718e4b17e13ebcc422463e1f7fce5f82a51945665630302047c435bb500663064023002124be1f45d61ac32275d900bf23c214e1402844013b0b549a9bf38981a8ef200d005b1810910b656d34774022059de02302088c4441f19642259b640f1eb716ece5c97504404ef969396c9bd4ef82a3c7efc6e9f1de07a5bf552b92050a77f69430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023023b42c8e14bbb72657b7fb675b67b51e8f05b430813256ba23d21ab8021a6bd592bf2796ab9327ba13a5876394652fbf023100d875ebb6e9bc3ae742e1850236b0c680a5dcef3f79554d7df4c9c4db92a77aa883fe3085cd28073964beecbb3153ead30302047c435bb500673065023100e76e14daf0b5a421e2777029148c522dbae70a9125ed86a6f58ad684dd5da1048e2f8fdf0d3e57f5754cdcd970e5dabe02301ce6dd2a4c6973a3a6126d236170cf30474bdbe0fb732954fe09ba2438a8cdd5473df2585e071b33104902e17b5695da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d2b77495cd94fb6a5b01481fc3aa8c09bbb3c21a2abdba49bd88b639dd868af4bf358741f7208530723a1684d37acb03023011f896c9690f00232901de321e0c3214191db2c68c645717890affcbf6e1a360f7935dd5d8309b57d6b14789d7739eb90302047c435bb5006630640230104d9fbdff0a5c3a79eb4fa84192ddf6a65bd78ee656b0b22e150ccf706a45160959dbcf1ee4fbb6fb108b22e9259e40023047564f3f2d7abe71ac55b5afe32d020ea3ca983d1faf41a6d5e47758e63eb8637ea3a278cd40ac5c4e0e02285c504bdd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023044bb87b3928864b27675f35ebc8c61961912807063041741b70b102611b7591daf3a9faa57728c5c0e3e3aa1630a7aae023032a3ddb61960f08cae11cb6a1c86bb66b6f2950f2652ee4a94b46509b6799f4f90f482428e3338da67d4740ebce8f21e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310089f4acf878eba90ccf412b730c726d04e48478020e6949e4d28b3e0860c9d4e4bb7f3459fe431a4948549e5d1578a267023100800beb365de2d21a355eeb83d10d3fbde78ec16662cbd47251849504e8dd3b6cb56f0adca233f1e55c2abd4ea53444960302047c435bb500673065023100ec12c3466828455743b6e136461c6e598856dcbbf62855200da4c14e8f2946f411dc375250b382540233f560a588bc7c0230244b3e6262cef23d1c0cec6205c0e4aeb29725e6abf7521e311e36f91d3bbbef89230b2ebe84aba435248de33c7787540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a1b766801b73ab2695f57d486c64bca11317daecac456b75527ddfb2da004c710738a581502207a6a45928649f1bdd1602305ace3a922fb79677354007d180b17480fd3c0ed898cca1fa09e817480aa5d6e7b9348259c37b24ed6e4ec968a3b9e1960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d68095c179a589c6ae1e307e982a8bcc393312ff3c84e61c68e512ad6d4c9ef9b1ffc76febf2188e630637f2a6919887023100d7132d0c983d224320c1bdebc2eb36e8cf4dd5ec69ba2c186570519e41b2a5e535ebd5c5f85ff3553714787db92a655f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307b5ef4dcc90af867cbfb3e11be1e03c2abfbfa0d5085481a1535799962cfa90c6ebed555071d50fb09a119b54fc631d5023100aecbbcf1acf7fc6bada1052309101721e70a4aad307fa7a112a030c249173135831573c65a5597205179a76a18fe06080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307d38fe622567656d30074f40118abffa5fe637fdd8bd5bfa368e79433be3ed99a1db7efefce09bcda567e2a6f9b1f2100231009d1477930580ee51905f6ab52cd76013cb8f7f23251445ee2ca6e7488321c181819987131ab53b828015357f6a0ae7ff0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230205618584b731b95a9e86b36299e5753342e0e309863945b87ef8c9e8a269e44fe9a8614b6b97c61a119947dceb999fd023100f705cec202c2d190472b0d23f5cfd1a2f920d053ed3eda0bee5548ba2242cc14f1f2e4d80cec9ffdf9862a7633bde80b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230078251895de6abe63004b56f21c00cdca02d8325026ec015ff8fdc167988c09592915abf7dd08429b22372fa46c0d515023100bf66a3ebbbe4e3b95c2eb5f4c8d3ff1440041547c5a246225c1c5ae76f56ff2cd26389334360f842ec1da4a60242ae700302047c435bb500673065023078ca8c0effa9ab15d85388432168066987fd96cc40a642204ed23f99f0951510fd86e6b44faf32f75dd16e62142f04d9023100fd477e8e81677a82e95c49978464b2ee0c33bc7215475bd519acdc286a2b4f66a7307025903c1e4dc8916433f6565eb20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300d70ecd65f4c735f67a8940954e7fe6a6dddfd822096c563245a2828d588d311fb0834bf28e52eb1d486bf5e364f709f023100eee7befa44a69084f3c39f5b9cb1b3c354096fd07058de4131161046a1181c4e2be7d9c93726131b2a0b04820cd390340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d2b0e76fa5600520e6c93b8ebcab959049162000201599d94c896ce3ce264337b535b9b624ae2b12e46f2f23d7dcf5330230434e7b38b0c43e6a3e6e4d0ad8848f310c812725db233b75b6c7e0e930547172272b3a4673a722b51330c8b071256c390302047c435bb500683066023100d3f16f1d2b3b5180f6f9dfb592d165824c38a3452bbb45249d7034d3d799b247db6b3dc66733b17a58c5cfb0ec1d4a4d023100bfc87c8177e9421945581adfe449d83a280de19e641da852b60d273cf5cb358f5a060c60bff2e78b71bf8ec7202507070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b4477c644c7321c284d5844274a5031a138ca97696dafe9c513bbe26088ecc1ed7ab13aedbb60277e2c7ef2ac5299127023100ac954f3c0947a2e936c44c5309bf577cbdb17826847ab8d32c24da4d058a15d83a906f9500f886832f1e0bdb7583d4290302047c435bb500673065023100b7204596bdf302890134d25b34fc3e562ddc4344288379d01ced29e527064f09b1f30bde0e9b945557045ed1a5ee59e10230492b8e8a636aaae308546bf2aa0895ff7da3bc59293caf5c89213a3ea48f7a04e6a239645588e527eb3acebfbf2726040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008fa1fb350d5046afb38fbe089c582ace85af3e4596c5bcb576298bd8c32d7d569e0bc8711d0a929ac9fd4d8b7dc06ce0023100def7916dc5e78ffa1c021661927d7807c87536cba51813373110c50dbad2a1864cb742556c4cc9b759687ac9bd02f7330302047c435bb5006730650231009169187a95a8f44a045ad9c63f8cf7d32d3af348794504b20f281b04b59eaaad46288db9991dd2d96eabb163876edb2f02302c4afba8d7a359f600a996c999a2a295e79c85278b5492f20748858f1de9b8725834659b4bc2c336160ca64e075b67290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302ec2a54e391921c10318791ecad7539ab2d5e6f25c3da962d6f51cf77789283644b9149527c2ed7f82c7663bea1dbbdb0230415dac4409416d8f0795a35e3eaea4b1e442273f2cf3fd08752beb00f1a23cf39ee83df25deed0c134a222fedce2c85d0302047c435bb5006630640230030bbd3e6507b61185be324c2680f215b3e36c703bcfa1bcd0ab7d74606855b63a0a08b2134f0d7800b579bbc509eee5023048bce291e622c607b90180bbe83c907a2b6c23adcb688bcb0361fc16ee664531bcbc40035fb58bb05c7f07014b19a4d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310092ee69bafaa9857cd75ecb95666c946b274c2055852debed54cd7030c1b769b46532f907574b99c4797ff7049e35e3b102300202b3e3ba666bf69304b40e7f5e6cd56b4b5d2c99102bb6d4a08b58d5418cfea6c076011b69710f47d237ebf125d59c0302047c435bb500683066023100f2dffe4f9323ee8a8a79dae5f988229883ef726ae41632daf67c29166a206ba6b90032b212464b927a46bf6d27a25aba023100b52755e6f3062126a6378e33dda273d0bbed925b3724127de4408dd865804dce3370f73a40390b8e203cbb65d36d471d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230409c15572d162c8cd09e1b5169201850885f1a61c770922f59c161553c2d2d90d9ff73b8ba2dde8fe08f578827aadcb50231009c9ca3735e3bfc49ae301da2945a58e378f5382d4b9262897d37fb55e6f09f38a2262328ab3cd3ff62840bf1c97331cd0302047c435bb5006630640230013dfdf9560fb627e9631cc78cdc2920ac5b9ca7f14700d04dda127de8dbcfda4bf32465343cd2c1f4b0d4a23d87102c023038affd2b3d178b2b767064e7babe328ec66604858b5b07c456e29bde3b5713bb6996a6ce7955821f2eb42dc300626cfe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d954ab27baeee84f55cfb34d2e3251111ad3e9a9cea24b5e109eeda0d3fb9be0ddbdccc5ab55d9828c75c464737c12a002302cfafc5af9dbeeab39508c548adf1814df4cab6019b117d72f5435d8363763861971b0054f1774dfd98d50ff8b8f20e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230672bc096d5f1cfeaceb1c14a92e77010c118e2607b07d644edb31cbb42224bbf4def6c1aba69ab52ea282748e9b3882c02310093a0da53c804b3304fa0f231492e8389bd75b843259d495bf56468b51a543ef2ecbbdc4fb282331a836aeeece6d779ae0302047c435bb500673065023010be76c4df3428c0b9f988560d4afa7cd64fa182d2a0a82fe757be9170d78749aa252cd2ce9293f4e83814b24890f1fd023100d92006c7e8a5edbcabecbd43a0307e1faecdff8e7d9aec6cd6b69aa7f3ea9aed4973e0e0dbdf3e99078975d24ba2dd260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f7f8af5b8302b3b4040833bbe69d80fef0cacec8aad9213eaa1b82180b510c0b739be7f1e290d9a726f8b41036aa1830023100b62623a0a28992fae66c5630a3141cbd871419fc591f30f3c995a461f52ea367861dad2c1077cf7a45c0814f40548a0e0302047c435bb500663064023031055b0818d6553d3aeabeaa6d04014947db990643e8f4fe1b61ad43eddd71b1ab458c00450a9ade8bd6c1b2401800f8023008c9cf9211c6e89fa06bc837ab3ac98511359d8de8fc1abf0c9d9c260f4300b3ac6162541dbb8fe4e82a7e0dffcb69eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023063198495d70e66e7974b8d92852e4628d63db190d89317fb17186cb597b3653e926ce39923c4ad1ed0073716f0245942023100b59ae728c6b4685272104db54ac33b2a69da065c06eb47d6a040c01de6f3f3fae187ab0c5c50061eeee802030d306eae0302047c435bb5006630640230419d37da6c26e18590295439e059e07447033e534ce95b462218b5adf2ba26a5cdca16ab1d9505c662dd53ca9a757694023013a9ae9dfef0a053adf8e1c226412f81a08d2c0416df7f938d9f5b53a3432ad16e9104199167da5f3a8dbdeac1efabf30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a3bc4578ea4c8a6e35d08fa966b912827dee74159d8a9f6c011676f84cd7a3608fd709abd9b9d070e2b13b9980cd58f3023100f999e58ba7ba4b1579f1f398449802aed28c8f45fb7cafce2fac41b7632066fcc8aafb5eb6c0d7685f4ecba60eec65f00302047c435bb50066306402304faffe78502b6a2b9ccc934b75c3aa875a4d724c1e67125d203392617dfc1126961df26e384faba8617cb611a379dbae02306f3ec5ebfaa5b7c7ae54d1346113610a6635f3c6fc60dd97031cbb3f4bdeafcb2d1b0e43f0bfb46ba8701227c20470fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023074cbd28105d8cb2dd0d3cddd7551c738c08b776bd642168a7fccf55501319a4cce05ea0af31898cf4f97d04383334769023100ca6d2e110610c9e4ba4c2665b3d59be20c57556fe53eef0fc95b0ee54c4d59407c0077a66cb07838881c9d4a232684d00302047c435bb500683066023100aa327ffb7f5ef59d63003b13ef0d7791f99a0d804d289ab401b6b36cd4246f822ea4319757b981b5fa14d94fd3fd9986023100da0fa17d2cd3e31677f2de39f3495634b4723a446cf66d18768dd681494c10f2cdc829a867c1872e7a0f0b1da9601cd00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bde71e5cb3f2420816dcf0585d1e132429fc82d6bb7614181591fbcf55da5fd40849aadd6d2ee0651f42a1118801bdc102306c5091a932503bae8a7b231aae6ca3929f415eae28127dba01bb22834e2707e8518af3a267519361ba1aac68fe1408220302047c435bb500683066023100da10889f27dc48db422b9519a283363544bcbb511ce0d903c65cace426ff6d9758d944e9eec217563b3b6cec116f35d5023100c59c67dcb736c083d29f86b909e73ab68f7a0e57331ab0a83f7afd278d5e3a14ebd1a0aad1bc28585f240ae0eb37e0940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023013f98508376119927b1bdf2d9d08d67774e06ed4b301ad220ac0aa4347aa7a35286711da415388b1787d9c7df2e99ff9023100c28f1b0ad981264d50f47d527e0ebc7cdaffd62033cbb849a181593944b02de9bda05da8acf75bb4e3171eb2be61d8f80302047c435bb500673065023068b1d072b864d6cbb46a3e10598de0a75a90dd75dc8d4ae7c584e1012af39085d30a3483dd45e7a5a7d379a5739b49eb023100acbb1d0c9fc934abc070bcd873d6fbce46fbf906e17440c4e7bf425257392fc0ffe154d7273a8a37a4804c7bac1b4eb00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008ad849db1a170175ae834e31de3e39f9c5872d6f693a55a61d8cf92f3795edb418a792dc7e854acf66ad9a37a40708ff02310083d80b9d1dd9c42b71ffe27870bc790e8bc01a8dedec171275b365c81cef0053a4570b86a7b8b73ca9e5e74770de187c0302047c435bb50068306602310098b383eba430f66606c63382989bad7aaf5fd75e8bffb22f7497f431413fb9ff455f6bdfe5a77fe1d38d0381eac76e7e023100ef96fd405b2005115e77e74e1def4f724f859e6aac8479e804186b1fed462343c738564fd7d7df551616a57073cfcc600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303adf039cc0d476bb20028a66ae3280a43d454d79a270836c70dddc3bebb288bc6fd84b981cba74c9cb0e0fc1ce452856023100fa8b7a1e9aca2b3e4f4f610def2a3c4728ff14fbdda513af206302844528a2732a2b158f7a898b29214895c3a39dd3b70302047c435bb500683066023100b89ed6e87530197914a5160b8e7f31c80ad4d4101c699f54f93b73370b25ede473176a92b4c5127e99469a23bd500a2c023100caee204cdb39f480f8afa1f53eef613210f9369a2a495c01abd75ef4206cf49decf32f492558d6564c39da21d87839b20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bcce3fd8bbf363f5a27130796286da490a33902e96e8d0f97791992bd115c296aa24ad975ec4b91e537e94e5bb4a12bd0230751ffae66f55325f8033dde7f1ec2072ea52e3373221c8c2552193c1e0a4065eb39644f3d9eaf98d7f7734405dfb5d680302047c435bb500673065023100ea239ebcb6beacba3b9edfdacc2cb0e9fd4c3869a5c6e4276ef22139186040f1951c022daebbf9bd60be3432b62a81610230101342aab2e4f86103c07e5b362c07bca19fea226dc882fb1935ed08cac2992492ad68167903b634dca20684df1cf5eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301138d173bd9e1ad06f858ac6bb491a788842d3ccb95cfb587de9d1281a597d4a3f7a7ca18679dacae0c38550261a807f023100d549251e9c5324fbcb324e77763012114e64f6bbc92cdaed69f3f93889f7701da07af14490e1a06017a3d53c29f24f070302047c435bb500673065023100f53178779f459b919aeceb64657a1be16a5300ee5e53508f1ca4bf4e6217da606399784081cfd28c9e778996928e2d7e02305336aba191deee91d289df49441d66e6f75c2111b3daf097fa5b5b235f5a5ad134fa63f1ead3bff2c6719d2236d73a960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300473e6de82aea27e7aeb9b29f2195680297fce7d010cf45b184d8d7e3cc342d74179656d3db1ebc50564635f12c086ce02302e404df4269551b537377eb40edbb12c50d2bab78c78efb21be986a7590e9f4620393323203e6dc809fcf3747fc4c2f70302047c435bb50067306502306d0d17a9733c8a9f02518352d18a61c2438db02a557eea299077c4cd92a182223e6c61be63077858e2a14c110155ea1c023100a149e00d49abd398c77e75b56483c2f27320a18f720287cf261f2c6cbcc858924f231c3b86f77c83eadbf9132bdf40a60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f5483135d382e83144a22b0d6e499aa38eca9c9b2398ae86aeeba9e143aca506d2ba9b5f1c10d139dc83929f2ce271ad023100d8c2511f59f88518a0a8517809fcfc950e7ca22c4ded255e3cfcad381fdfcd25ea3156aca720005770889d6705b08a180302047c435bb500683066023100efdb235b3265af7b56a0519995807cd2d7671d2900282e19da3d5edf2125bd74483e26cb4116d39e758c00f6fffdaf31023100fd2a386ca877933776a8d1774cfef9c188a74eec1670c665e5049aecfdc72663d2895342b476d5f77b060f3b6cfdac740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ba049ebf192061c1c93200094e7ed415bf16e821b949c86dd9e5d1bc90fbf11fec447e9f414e4ce5b1d5b2303d2f22d3023100bef2061c4b2e1e3c02353e22d343722735990a98f9033a0dd0fabe8086224dd44384835c00bd7c0cdaad0ae92e7684c50302047c435bb5006730650230440178bf2e512cda78c64b37f301b3aeaae6bccf4ae715d0725bc97ba5330760f69435803bbec90b362cd29ebfd6e3c5023100d26d5432251eb2411d7e1a7e079d756247bac16edd71c31a4552e6e3af2e85a6987c29b96170b82941237c63c1c80e5a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009ea8d5ce96d6ab2536fbf9743c69baaf1de6e86d09f1d6c53d5372f7441b7ca7059acac4b509fc90ba4af4d0081503ed023029257ba948240edafdfa0cd805f1b4672dcb18ed29ca517559407ce47d0feae59171eef758ad14d4ac285d7d9817b7340302047c435bb5006630640230217e4c3aa55eb21c4849db2ef0eb4cbc813bf1e9bf78254fed282c409d54242604e48977bcff51ffa7b4f43173c0fae70230063a47b4976913a47368e81db0085ea50c9737ddb75e6a56c8950f909a76d6013c571e95616a907097773875f308c10c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310086c7e5b30ec85d017b94d04c5a087e01ab912852bfa86a4c861ad9c741f939694307d1c3e0cf21de1cc368afda6af4090231009b43c9ca781085990327e35567947328230d45db0f36b2885568f0c38005612aecc093b0abc5e5ec015b9517d85f81b10302047c435bb5006730650230045efe5c30698b5104af0a8a9e18907d5c71d26e59b65e7321479aedbd4a6056ac6eaa4180eb2e19b90a3fde9485aa77023100a7eb15ed36df282d52143b8d4153d1494be6eba77f073366e4547454e6f3c80ee4dab138953158ec8b5958ed3df5ad6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023047f0080e0fdd09a06154b95278415b61d31c4c1c4b5194cd508b1ce2fcc23058678ed87cd06b772e9407e1a8645a4e6302301eb8e1c1be918b88bca39050b7fcf2f174cf16fd431b3730f7ddfd6522e28b4456cf1b204225f70f8ad7e8f40f2c4b290302047c435bb500673065023009a48fc7cd491abd6cf0f1bf45e2afa2ed2dfd25e7dedc5312f62dbce685dcef1617f8d8f54db76961533637080f029a023100da049287460b61e330b613505e5182ffb718750bd20e5d6b092e3a98230d8b0c65f31785512430cddfbc9d65c11280090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aac4ccecd6891ea9e00b31c0d0176ae681785a8a66749fc4aec6d050d5d15efc3597856ba50dd834f0477a64bec2a49c023001e42cf6045d6e5d8d31b8558906ff3f04cea02e9126e2622a16d177efa0646dd6f84ad77e6efde9954f189bedeb1cc20302047c435bb5006730650231008db29e11e75a3d6334b793a8dc4d5bb46ae8305e3deb5dceb6077c658b517fbc5ec741123c5beeb405159077547ea43202301acae30c89c84be337a91762ba2df82c57f68ef30f530182a24742fb522a6cdda9f25c98f4dd03633de4b826791ef8c90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300569589a1cc3d9dcbf8200b837e5107fd7769db12742fe185c3893485713acb27938cc827d8a2a8ca8ec482db99bd3ad02307dbe5a213c472dc4776420cc1839b8563c21eeb9602f4f201b09017312aa53bcce0b1c6c92cf732a249a0fbf84a91a8f0302047c435bb500673065023100a2faf0e8556f201bbcac4353e3973bc614de5a8fe05aeaca4f6aba53616c78b24473324b13d86f2ed484b6e655215d1002306a146f44afd2362864446a25724d172e6df277f36c154105a0b023d22cf5d3f5ab63d1e1376f34401be04551477edcac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064022f587dea46da7d5b4593ec3a5f5782e378ee75f54b86d2718e349fb612af3da4efb82f154d1328cc002d7ad78d14911d023100969d0a012ddb70f18dcd35e901dc6e1a088a67981ab99e654c5033f4434c5a606099082db72971cc1c14c69c385ad8fa0302047c435bb500683066023100e53944113ef5e82b171446b5369bb2ada454b8d1305b95029f17d9ab2cf9d74eb332940d2d8a4b417a39db31f85cd7bb023100c745e65b56c07f51c3de98dcd7793548d6c04a168eb08bd6aba296c420c08635fd0e5f2b496b3d206e3753474d7f87660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230790858327a618001c0f0e4ce5e433644a235e9d2519f990bde388eb776ce8fef9f590a39911bc7327fd47e746cb5649402310085b50f541e58a7f6e4b1f69afe57ce94ed9a5cf9731d97621a3fdb77fe2180752eec2edeffd4f47aabd436eb768718070302047c435bb5006730650230351864eb3ac479233f43477f1762af806c56b144c782c4f7264ee8759167a6307cbb8d2351d37d6dfcc2c6d2c03cffe5023100ae19f6398a0bd18388ba3f422b8b4bf5e2bbe79522acb4de42e7eb77dc2af9a2f4a96e861a1c899080ff58076db4f6a90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304ffe661dd7892a7d6f64eac74046e009b894ab6b5d399547a464f742eeb168fd546bb02e9817d6e6779f65da47b17971023100c8c99481d441ef8fa81fa14a11ea193a3e67ac0cc3eb62e68ddb0514da4753119fd020b2c4b21e35a8c89c0358b4ef820302047c435bb500663064023017c2c90ad8b679d8b126828a6d4e680c4ae08ae8cb23fd5cb68cf9f358abe03e7e9aa1740dfe6235998e019df6ae00a80230365bf1de78a7929bf0022ee3a92f71af275e114b25cfc16f54b12f15c71011109511cd58f99a676e4386a5d5e22a33640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305eb8ab5f15cb2af2bcb173059c49ea491a4c09796742821ef13aa0f9328c5bb0672eee14539139cd8ca8a47d66d75064023100b61348f0f4d06e04e6415bf65b33d506d1ce01ce90ab7ca448ffa03501a99b9231c5e2e3e8abb1266d57c45da89f83340302047c435bb500673065023100d657552e873f195eac30d2ed492ce03625d5152dd0a4b18447e440e2ab48f1e8d6418f05ec0d9ae006d8457f748e9b7d023010d70bb6523419bf734109fa12972057689825e3b46537bb9e049ae6d037357083947e9a0ecbe6804d3213ab64a6905f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230543b7307b14aeec7678102a82bbf61f5b8514dadd327f1b66e519508870a98a813a9383d1dcf49ebe525d74e780feb0b023100dabb31bd0f82952a3392564299b3082fa97ed591da4bc188c41f6a2a0af00c8ac9cf5e9f0c2b77575fd7935cc5410bb90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e81e69f4e6123e8fbb7f5f444e2d2ab46e4ffbbe85967c36960a6deb11e3b65b6b8df40d7954ccc655e7cf7ce1b80450023100e69442a64ac656f2a42abd6b4de569045a8e620d82a64f98870c5dd878abcad3d6980c0e246bdb79c8d5a343f865b5110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e2244bd2f5ddd24d1cbd198aeba138975ffaf23340136b824b6aa945f94c4d089fde2475e4315a9d8d7568e18b2831420230352674411e81c03840776949562ad40022ee101612f64115c9dec318d39b047ed12f6ed28176c84aca64d85d1aa1b2380302047c435bb5006630640230193d244c9086c69a8f779cc38900191d90e2918fb5a5a2f423bcafd240bdd3c72d713f317d878f5bd0f749dfaaf18a44023045259efb43a587a3f289132086c6f398b6a92edc50aafe5f69cf197ea32514763ee4cf2bcd63bd22a7847ea11fc4f16f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023077ced61a5c3d3d7dc4e101d40ab0871913482d2f67a0c0ca8209af9ff3bd62ccfba937e859271b418ba8f48512b6fd0f023058e6094bc0be3cfee9b3cd85357bf8c61ff06f4d61762701011547ce9925d499282c79ebad41655a769072cf5fe0191a0302047c435bb50066306402300b9ce3853c069452cbd9cb283cf53e2e5245a647ef212d2dbf42d443c98c1589f179e021a001397c96bace60c4517bb60230036a44dd9e86e2f5984f79b4f71dd47b8039d5b7df86100a7d98f3bb8e1fa48a3e37e32041e099f5408131529b956bf00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e88c701e814ff61cf4574dabcf304c8507accafd674ecc9460e8bda53ee6fa7a81c0daac1ae964ad69c7fce5bc8e89a3023100a49e935e188ef16c7a988b0a81c88a83fda34938b6a643dd8f70a6e9140d262cc0c45da901a50b6ae8ed2910376915c40302047c435bb500673065023010a799db0a8a07a2c1991587321f26381aff0230a6aa093eb113fcfcf5093bf3541cd4e07fd1956d5117bee2eb38c19f023100ac6c2ba5a083f99a9fedfede5c1f84a3ef96ec8347187567af039fa8ff4e65b19941cc2fe25181eb0c06fc4fd6147ce00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023005ee2d8a1ecf3f7e99fda6f008a48b82c4c5eda5ebe421e013ec8a085345501556177bf04538c1224d13711220a1f699023047de57d4f79f018166656ee0ad781a5ff3c5a15031336ca5051864891ce28fc137673c2efb9f1d30f260a51cd3643c050302047c435bb500683066023100973fe574b60f8e4e253efed9f41151d3eb59188b7ff8ba644d60fd925595695136b87df198c38554e7927c1ccb8a855a023100987bc5e249b547055f14610c3bb4a1196022163312d0f8566f5ee752cbaf1dc5af846d105bef40585fbd26e16bb2d5500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c52810307513012a41eae5c8094b8a82fbe88ef28aadfeb6866afa9d4a9a858d58d4cd0c220e72d530b5637d9c5565f10231008c6aa899c7e7e95aa40517874e89141d780225af0b52180ede6cb6836f2669afe75468cdae86dac6ffd468116fcf71e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e7a299358b95fbec7898bab4f0d9b29ee9f690736148382368b3b8a2413160d6d0fec984edd7acc23f58c20205036c4c023100d48109b96dd602042aee637dde6b1299a27a612384231d5663d9a8e6babfcb66dc31507376481ca6214c3015f240663a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100922da7c43d1508dcc0b75b9fa2a2e7b4e67e784d506b8774e4ca69007bc0fd97f490db69629a030a3a76d3068423ff22023031f8edf4eeb1bad96ac4bf9d0a0e0f360e4893a8d425b25cbdd2472be4b670da1e29bcae6953880633bd98cc9fd1a2760302047c435bb500673065023100f84717769dc22ac4222932488cce9f593edd230178f313878282b0cadad354c51dbe2cdcdf987f1151f8c47fc898ce1602300aba7ecde1e79586051083a1696935cab61d6c3ca47ee746ffe490a94b2eb559f9bc733a5f560140c16b5e19cd11bbf80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100da4828c210006cd5f39aff563d9e5f687284cca1a9852b2b771188d011fdd6642fe532fd0882e4fc4c59f977c8f67e2f023019ee7bcdf599bbf77532026bbb49f515c0d12759dc1e0ca29d8248442123b98099b9be39f6135a85d7eac93bd0c2d5570302047c435bb500663064023006aa92e3472d59234fac795104b1b2fef6cc551d49896d089fa83d7b30cc7de804cac3609ee2a768617a4a1680111b6802301f13cbcc4d6865d6a63afcb345b97ab34e39f5a1e9a8733989f8b8f7d13b1172feea4707b7df7a1c2b7299cbe6ee5f460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c0ebaa4a8b7bbe9dfe50ef901fb1c34e653c6253f94c63d82994d5151f6bfc22eac916c3ddf4ac20a8219ea1d1b1ce5302310081df330d2bd7cd4a0ffe5d2b91a07635e6e4dd2df6e5a41fba9037d992686a0b8d2f782eb141c10c156efa86c942358b0302047c435bb50066306402307fa5264dd3a9506e33e02cfe311bd6e8260deff5f6eb11fb4cd2e730a5ceaaf8bd5b4f731e542aeefa7bf376c079cb2202304b4f4da0df108fb9f4305d136865d58a78b3e84536f18c2fcb96b885bcd83fccf48a4a4e81441d97c374bf041cffb2ac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100864bb0daf84a7c520e8021468a3a694ad073221edb5c05cf2a0a386912df241db1aaefdffd93bd8c15322e3cca8a2170023100fb5f264203279ee36fe42917fd957c2ae9275917d6fc7d48e77aba54da78de61b36dbfa2c74821da8bb91e27c83410090302047c435bb500663064023016db30b965491f02dd65af4f2545ffac1a3ddf17e6450b290f4370ee502a5f6422261ebc4402c41a5fd26613af927d27023072b4c29a7e9ce1524f507ffb9dc52726bcb508a1693a5cbc4dc18f5cc87d78a7dbf9ab21053067a1bd9d7582bb83f7a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023037d57c70fddad410962910b32eef89a721bcffeec22771868da414cd1982e37399cda370b0968d13d473f26bd4b56348023005357ce2242451df2ebb4045705557b4a5968731c8a86ef203a11b22c3b46d7f0173fc6c0ad227f7bf1804b4bba7d7ba0302047c435bb500673065023100ae5abcc7782cb4309ca807a37f7458580135916e1ae46f4dde068e622cb66a8f6f5d9aae4abbd378a9c176584f872ce4023056dd3dd642e475130486de594c133395fb7266414d213a74ec754fa66033b7fa8e58184de4413603ca39ab8965b9ab8a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304b543294056eead7e34a808cc5d1173627c096609e490a3294640faa52dfa40206f43cd1bc73f5c7fb61653f914e74a9023100f3657d99c46b089e641ed4df446b7399e8e8746083742bd7862ea788ec95dac492bbe0d76e6daa2a9506063e649193960302047c435bb5006630640230568357e61d1282ec34e3f6a622519ebbfcaedaf13cbcbab57364f9c7603ff4da82572f2d0b3cf33cc194da4f0a07edd902305919240345853b4ed964722ac6b8c7d7a6df7a73a74088e3b878f3655a478984ed47011722894900f56a7785d9fd23930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023064e4a6e331e13524653ce9be8067b843ddee0eaecb39b13f03752a933bf4185b1a4ea63a5b3cd31d532cc4b42b567a14023100c66ce721329972571d89f428d2ef86379613be2a47694d17577473e174f9e29a03264a8176d3f4efc808172ca87a995f0302047c435bb500683066023100c6b6cb0c3a55f19a3c283f90d4ab67cd0a059d3250f59012ec8c38f8d46f60aa8d7439ccfd24c83ebbf239495f35f470023100be8da48f17b08c663d64a781c06a345f8d93f954e6680de5db720715d70354acdbcd3dbc93364e9ce90fa359eabcb9430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023056005a28f208592485817a11ad501a1bcc26bcb2efbd2521284aef727570afb1514bbf1ab3ae5d77b94411d75857f2910231009e94ead4de2bc7487aa246ae76f9f4aa2c21210dc77462b9f6bb280ae21e6d7e9f29e8b43e6ab05eaff5518ecde7cf1f0302047c435bb500683066023100f4bcd16774b7c37bc05d479237058e3da93e57ad95aecc75445203aa880a4be70dd4d942a0c471e66eb147765506e66e023100befabd79f468b5be4b18067454d500aa2f0cd1938f063409972e2b05a632be3d21c9f6477cbb0a9adae45b1a8227bc7f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023035373281409502717a89df45d8abc5f3b0854fcd1f57349ad663f9098341132fd1fcf091e2547b322145e2f6554852ef02306302f3bba4c18fd7cbc81bf69194f37ef7372cdbf9f529825f015a024b16ba5444707eefcc0c5afe8529dab6381cc6d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d9118b7a628d354822e583b76176216548ccb0326742baf171e26e6cad9956b7555559594ff9eacf267eedb333b5a06b02300e4da69356adbd64d5bd78dba9d45b060ee10a2c3035086721b53c5edc3e10f21d2cc03ec771730e1bc2446ac135a4030302047c435bb50067306502310095cee0c32e58b185cc0facd5d288f3ec968c501565b8ab1e138e0ce0819dc25ce3e98d1f081a48d79a6ad97c1146705202302ed9a4bf1eff6de83a1e309c183f6abf4e0012e6a7d4f6fb8f76b1bc5dffe268e3a3aa06f0bbc83b5bec18bf03e7100c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304692ee737e98954a63f5654bd7d003866d6dea743f767dd8b215187a9a92a2e18761d99ac2dee92dd3364f1f5bd9fcc302307a4533086ab5731dcc6143dd20a03931ae4df9c54f0c6ebad1dc5726fd4a9e6a3be9131b0ac75ba38de1bab34fd12aaa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023036ca50db51c23b2ed8fe7fcac8cc04b48a34442c9bb365f1aa4dca7f2951dc3573599d1c62f71b0fb76f61c821537dc9023100b4bcd339368c84c4566b14d3203cc0018500f14cf297c4b0c57585a69bb09d1e16d1350d8f125dda45078e3483fd76740302047c435bb50067306502310092bb31bed9a2f0cc28f7b8fe86de8dc12d2f9741d827da961cfe639daea314f7f789d9ead42e097f78e6c68a8888faa902301925c78c40d80b2998b78596ab3c0446d9e96c2b52995858f119f35355703972dd47b20d9c7a9d178a343ae00742c1150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306ba5c8a894651096bf371375a3fe5c4aaf3cd18e8da165cf59da4cdb1a9140794e83ed3e6b428786220719ec05057d5702300e44f7d1c74b1e70c61f28677f8ea4802c5582f90cdea051c12d1c9d02560c78821427188adb1a386c858d124f85e3bc0302047c435bb500673065023100cf79a2aefa7b0643eaf957dfe7586795eeafbf08946dd793a68c7f6399fdf390bc1f0a9b1c27536fe051c571cbb22b4b023030295c473d70f9d8e060995ec7db35cfc42bd7bb4855f3e4048cac0fe8334914f13f7f1d8726b35b0a728823391cf7660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306bfedd0e3838c782462f3b0eccd49636fceda385dddfa00210498667cc7f3e07535235da664d2a48606d086826d4dfb102302abbba6b730f0c12c66a2d13c83b850a949cb5ba8ee7c33e8442b5434c88ecfa321a52abc17ad69e0ae36bbb475456250302047c435bb50067306502302d4399036264f814f4ba6ab0b71d18bc33f65f651e11c0c1fb0cb48d880810178dbc8d72d4f92650049de6197581fd6c023100d3a930ccd522d31453acf69af569b3bf7045498be2550fe798ce9b0cda1411bb06d24b9497e105f240ec58590d9c7b4b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306b052c80308659758216434a5cccd53c0bd5baa2d573904f0a51520d7499d293e451c085143cff9e9b9af2b224e58c13023100eea51a30eb837852e6a6e42cd34bd5d89b2b790765c313286c0ed2d107c7eb317b0bc9e7feca6b12e691124d1e93ea1a0302047c435bb5006730650231008833de57e7cd2ad474286183e4e77becc37b4533d0cb201201c4d76530fa07989563f28dc8a6e22fdb471771df10ebb5023062616f72eb6d84e5474d8439a3fbe996a4dd6b10f76dcd7b81a5f70708050c27da94717f8e9f9bf38a2e45ba0d1ca4cd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ac44d6d8af0dc9780fb52569a1a0e66bcb93e7b3df38ca7e8ca1721203c5f1e0ff8751101e86dbe97fad35addf189f1b02304d88a4533d11023c17309b385959f8c7de89cdb701f8581e68838c36db3725bf095458900cd4340dc2274da97328d3770302047c435bb500683066023100d583e83a79a7b7fd24e981774129e20646a47794e143ecb4133e7f9dc943cd2124e6270dd805a46f0e7110b110e3e05402310093ca9581654c18f7a015e3636b658621660cc8bd2ecd026cf8b79255974ffc3c37b56bd5ce2db35595e07f56e26c511c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023076053f43a6ce106f34ba2eb8d21ccb9c12cb27e279ab6f0123eebf6ac5ce54fa48957fe9d4ffae8eb196d084ed965b7602301437816669bd4ee19fe013ee2b145d9719d9d587be0045489d1808ddabf08b59616cdbd30faa81b27f691ad6a6fe5ee70302047c435bb50067306502305c8c5a9019e436ee85f0d813a4da9efbe315fb71e47dbc41d5f6ed02e70d5b9d97cffbaaf75da2a92b17e0fa17dfe292023100b17112184fabc0efc92e895a12e13116b9f97bf25fe6240a0638d4ed49f6b0c43ee5e0938901e49d5a711db0acbffdf90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ab852427902697c0d501213efac463be16a292b8f87e2664500de3665f16e1acad2cadf2f4a64b88f5437a63abdf1eab02302dbbd9b05e24684f206f6d76f7027bef7bfa7e64a2f45514909a2d88eba0d8d7e7159100232740a9d36485c5af7f8a230302047c435bb50067306502310086f8d0dc92a55125ee456467b7301e95b5a74bf80de8ef2928e1b26dbe514550c517a20732fcc92074b9f0f00debfe02023005dfddef09105e8a9cf4b1a83f9a5b82c984fcbedfce8f01afe1cf811c87cb659105fa43b831bf3b6ec067b535e975a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304dcde5b655da56cade77e50368d4abb6bc1784e99464f85f003cded4c9017152c78f3eace9a975f4273519a4a57fc388023079be03c9935916349daae02edd45741ccf5886623f30ee95edfb622e42bf3825073864bf78ad4f3498eb997f375751140302047c435bb500683066023100e132d98042e4f880a5eaf3b9694d5a6cb66016c23d3e5d3dde1a8b334a7e0cd8d6873068e8ff174768a177d0a19d4b8a023100fb3844df645d038c264a60d7162298b6da3e35a3e6589fc061639bae9c09e757d486dff016395b53d2f385434f41050d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cede2ac4a367bebe41e66f1b90593d9645e849ba731a2eebef295a7a2e65ad602d776752ccaaa082d251c9e17e2137530230797b02ada0c2b3867088262e5401836ad457300185a3946b751ae1e86dec975dc28ab387c3a701f3fc599b92778e461e0302047c435bb500663064023075a1a632e978d3c81ccc2fa1a2114a21db6fcf834603061027f38d99f09f3cf7e440ec11484f559eabeab5f812acde2c023023fd6f56ea95eaaedb1d93c26d23ffe618f1ab2208ef9b19ae0f72968222bb1b87b135cb27f4574dfb0d63d31bec0db80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230271acd7c0f4829c42dac139dfcd16e4ca5b852f936581dd5c0a65cf7eaedfad017babe28d82351e2f2ec56a7a1be3bfa023100fd2f670a64da065c2705b4e3d80ca4bc5139cf1da2904934f5ef350759a8371feebbebbe2349461d2a9a263bc383c3a30302047c435bb50067306502302ead5e242a6b924d2bd4d10910f4c51f7fd35eac51bd7313e79751cd0b29682c75fa7297389066bd999e035f3fc098d202310089b7e3e9f7492ba197e075cc5248cf3e6c0f04f87655ae3818ffaf389d92c040819920b7bdfc4cff6b88fc4fc6a408830302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cb4f80f2e32dd786a76ff175deb29e5c3e207caa9cb025f2db890167e028f0c7c7a338ad2c8b1ac013a8b700e6d5b5680230752cf24d817f3989d286af4cf27834c3c990b4d445bf34b07aa60a344ee8abd720b26202446593176bee6e04e90914670302047c435bb500673065023100b663bae83396b511ca2009539501ea6be5f851e6ef87e4430eacd9bf7d7123b365f353677b97e202241d8534d74f6a0a023055c81378ef6fc391f9731bdb19c158fc846d636bd52c67289ca12bbcb613d28bc58ce53010092bbf121e9ebef25d57160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008ec94bb98b16df76276152dc05cdd88ff121be01934e98980de74ec09a824603e09e14cb89ec0d718af0d2fde2e79b2d0230792d54d8c3397525281ded205f46e0a740ccd936d44e7bdf7a02dd4df5c014925b17d6e0928090a8a9fe3dd93715db310302047c435bb50066306402305311bcdc4707b5d62725aa0710e30f4d0119e9a58d3bbf239db09d4ef864f57845cdd600cf7e8d38f07e0d26839ceec40230758f69d0081d98571a88f1cd5ad38eab28b568186d06ce177c8c02def1ac79cc70d3b012939f7e391078cbf26ae48fce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ce6477715b389613065414b054c7a6ec32410cc7eed20d8eb34d15c6ee28bc524099e045b15d36e8196aaabe99dc17d302307a1486ff8047687fa3bb2a6fb8cb6c54f97fbad7594bee67226d53a866b1f9deb4fbcec65f3d647b7fb892c99bc062f20302047c435bb500683066023100f06a1c5b55338a8ef165842e18dc7937d39b4f530be290fe3a113d895c1848b63fa692ba54d38fdb63345878fb8a07a8023100f955c1aa2299f56a098586211de2513c34c18327b0f0b1ba03668c27eb8d1327fcd33ed8b277e8dea6fb11518963d0fc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230391fea5af5d87de36d7f6cc2eb40f92f1dc25141af02be02c71fb5d5040bd7cd98fe7f27bdab2021a896a66f4ec0ab3b02307eb50f9af383ca2ba048c940fdaf023d29baa9223fbb097106522962da477a354b5f236d7b54009ae9e8a945b7ec67eb0302047c435bb5006830660231008eec721b4cbe07ba8faa73ba0c790f1b1e2f34068ab426f2356b45696fadd2f45e26fc4a23b552b851edb1ecc95a1c21023100e6c2c2a163528f7455d7a9cc5768b6290f8d0a5293155e753d437c431e89c2c803b3b48a9baa33f049e7015a915592f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d4570fd61963b950fcade36db24afba4010fbcfb0d9f77322963d6ae23db7dcc7e08e890a63d6c5021881cb7b8b812fe0230684b189a5caef99feca58c5ad5106b384dcebaeaabec26703cb0355ccdcdeef3378691b7b74196f8607f8fbee4ff3c080302047c435bb500673065023064f56cb49daa3bc28e1f23dc17d07cb96b38719393f1495735f217866b927d3d67b0f351457ce72360d751b6440e928f023100b49811d23450c0168abb1a9b45ba58f0b751eeaf858d1fa21b2470bca6343a8e8b03e3d858c7b04a20949011c188dfe80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301b4698b07de4c5325c380695e82e6eaad0463a20904fff5d65f22ff4e1907fe65327d4142924122627d8dd41e471642902301e1bf2d5490bedf991dc768fa3330c43b4ee1e467c86e6a4c0ea2b45702aadc754c30951a3c8b259fb6616b418a1d3710302047c435bb500663064023004b0949649fedbca0d29b3d0e534697d8ae097c0bd2d8df245fe82aa930e7d5ed9d7648ed8b3d22a5ef444410e752be602303399b5a27b1a328805a0cb0cecef2764c89d9b52a1f1897652ef08d56ddef8b6974f191d7a4fdbbae5df06d4159018890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305684d286c444b96d05c7a717013d136bfb3c882a7f9e6721d04bc2c71bb863f9948993825839b86c74eee8de630e0d5902307e08bf943b0fe30410495641f2c269be780a2559be557b0ed2c1ebc7179dd8e74c54c8a4ce55d7c20f27544930d311180302047c435bb50066306402304f72d7c489e00e476062e7fea608b5635ea5f78e30606b6d78794c2144571c90918ac7f25aaf08015a88170628ff94bd023057637baa688a360d6b9dce70952a1f89cba0512ee0aa7745530fd610026c59d84bdf7abc39b96d5e36b22b40aa1a81a60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023021c5978ffa0019f0dc080d0db2294a34b00902ddcbfa0767186b9a778e7c1e61f51ffd804da6d54d096c0ef884264fa50231009e2c97df503fa70a329cdf03ff7841cabcd569d18e1f4b01aa250f43d0036faf39522a1654ec1fae184439a021734d830302047c435bb500663064023066b327240a98dcc09dd0eaaa7cc070016cfdecf0a0d7a2948998b07dd901876998ecd48f2f9a2269d649e80a03ef6a8f02303c33bdb4cecfe73059f7d6cefca6aec74a039161d7e4145e43806ee826449ddee48ba500585bc6f2851c8bce21011b060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e84b2280e0501aa9094f28e474c14f2e0fe24246da98c66ea85affc97a218b865cbcc21c5906b5c0dd388cecbebce0d9023100bdce1225dfc438a17f9da1e57bedc66a88644ba9a876584d02f02642b01c53ab30ec79e9fd5ec76d2ff2b6e34d96e7e10302047c435bb5006730650230089801c9eb5c085f14f987d679750b92b799337cfa9e87fc05e5127dcdd0ade35490ed2ac9f3e6a321f214b78231fc63023100998beb2eeb8a03651bdd7ca9b32327339346ad03d303c02fdb2044d2117ee5f12b0fcd841f47649a6646fc67e62ffabd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cdb8db4af771c7c9fc5d243c12af18ca5886e0dc090f31c641029b7a6ba676d40b4e0cd209f06e2b5308c6d4203140b2023064786f0370f97272e44cfd3f38078b0543214aa915ea337951409b7bf1e42c4107565fee8413bb4dd9777a3e14c5796b0302047c435bb500683066023100dd4d71f605ccdb75ba1420451e6be70f450999e56dc3c15b21a863f074af43d595dd63bd407d7b527ca9705249374e4d02310089fcccd1cdf4f659fcd8328888003bdafde12bc1ebadcfb41304f1faf8197f6535f8e80ce2b2430ac3df559e288032aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d7f01f593020ccb883b10279984bf14cb89de583fd18be640482e543472bc50e2898515b413b4a6ac80dc17103066131023008bae24b840f7a1e7fcdd3629d11d412bd1d9f0868cbc041401a72118ad2fdf1b3fab0a87be9e92b112b934384497b200302047c435bb5006830660231009018800b03cdbfe2a884c18ed1a242660b1ff6fcf4d1d88567724de10c5ce9f4640f3776417ab122c0cf6330521c9dfa0231008db17b028afd7d4ae214266645a66e3545c0517db54bc8fbc473879b714a6c6d70132f36f9c02f2acea2bb5806185aab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dc5d87f5f50e47c6dff2d72008813ee053e148e6a2b654de8e30decd0ae9e8349a8556452df4a86d49eac84ef58d8f9e023100df88bbc669b559065999be7d3a6fc5a6ceec4e1e96ea444fb94dfe830f53580e68441719215078eed3014f13965694bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023074fd399cd56cc6fa6d2e58dc0c38e050995741df496d864d3d2b0bdda9557974369128faf8d1a66d7f64cae0e5f1965b023100910fc4a57c4198d827129bcd8dd20fb437c6d8ee3784a04c1b0a6cbfa4afaab56c93e3b2b4c1cc9810501c6ad34231dd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d33336ba86b99973376f701cdd1db24b8afae07824e1bbbcdb1c76ec1d58fe1a54433892c56a7cd54b663acdbcf3d88f023100e87d39756ddb40e79eca10ad4e27fc41f19d058bd55b9c8381faae18d9f1f86c163464543f2bf54e099970d7201378db0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f627053ffab9435f76c60e0ee0cd0880a6c28c9c737c498a4acf022b7dd2dc87a8a32a5b762eaf289ddf4cf01fd0c0ff023072c486b27e6d7a877840671914404656bd4d610f5c6ae09234cc4212b4e0e14f96307acf81085c61dc25fb6adadea0240302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310095f612eb6458427721cdfb2954cff9dfce62acffa4964f605dbda02fcb40101ddc95ad83bbac6081f1cd18ab15f791ab023100e12f3fc595621293e3e2b065fe330fb6960ca9d7d72d446651576ccc9ace1f5b3c7bb3c2d89a9eac93e9615ee05f69b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023007de749e0395d7e8d40ad4281d8143b2446ab3872af35c7dac2581c9156efe4f02996568d72a39cba40114aa48f684b2023100ba02d79f994174097a6cd34f60ce10f3ac5ba1dce864f4a6ab44644808b968be0d913c6b3716b5d5fa87a6438b23cd2a0302047c435bb500673065023100d882b565d306dfad130bfdabc7dbea7f4aeeef63f969c28aa3d2727243cbef3fdb5b3322034cfb75c4253202dfe2b3fc0230525812b0b225a92aac572cd36fb468c1b2f6d735607223b6a91cf010eb1133f26ab0d0ea6373a359c273b519e88a893c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fb0059d94c275cc5491c3d0641e9974f9c5b028a21e5040d304fd32577a96331c91cc112330f801920b71c8119f0d67c023100d735528e77fc157b73788d2061c545364738363ea9599e825087585fba2570daa55f94062eb5c2a7b4af1dbdcb8cbe600302047c435bb50067306502301bf70f43ecda556fa97540a9165f3c6e3c9a4653a5b82f674102fd95330a01fd5d6682daa658d79c3738bacd07f8197b02310089a79fe3b0665fd42180b25065a6208891077fbcbb6f8090487922bb2e426aef2d5d6d7cacbdc3f2d858bc6853b39a360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023045cf051d201b86d26a7d9426d21fbd89acf430e0e199a4ee61d7dc4f6cc2018f5936d236c21e290b4ea46030cc14e765023100a60741672701d2616536875123bc6400345d262fdcbc5630073c34db4445749a5d496a42f32c6893488ec6202bae21540302047c435bb500673065023000fe93faef9baa3319e8a4943e1ea0f5196147d67613b63a61206e074fe447eb86557fe2852daaf60eb1a883f395b412023100aaa524ffbc81aeb8f4990a109ddb8f065b41f610a17992180e21c1f5867556f3a3a8603323e1ff4575a672983ecbb1f50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305d29a4d5b068dcb0e60c5eec852d979afbd7bbbf852a24443c348f5f326de4bda23ecafcda1adedcba70186c21f63e55023100871d27cc8f6c5a9835492804052955223f73d36f46a8cb3055669543b345c6417882086f4a828cb92496a1f1898028ce0302047c435bb50066306402303d6c54ca8edcd2d4de4ad221624e6f5f7817e7f4cebc734704c04693efa6c07685f4e4c69cc76668fa09a5251a2a003e0230559152504574552b55a5984a5dc0eb4301853764daf819e8668a97e5c8ab68b58829499060df2178b518e3c473e280920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dbf3425b5adee526eaa1ea4a401592cace1a9f3e937fcc3ea6de02e4e9db3c731d5aa9019078fc9c8023ee5b1e41a4f302305f439f2e8601ac7c509aafb2fd7e124ab3dd556aa537cfed248f780d5c61969bad330b4dc60346815e1cc8416be891f10302047c435bb500673065023100d416c6169c49b4b40df4361f4bd845b1bd1e500098e45a6fa2dcc6e30bdb18a6e5e5ae2b8de822229645ba9f8e3e531f0230016254b9469daa756b8b88b0f41ce2facb4ce5dd78107aec11f0685fde9e00ae1d18a115508f90a824b22b5a73084a450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100848331f39bd2268cd71232023cecff06651661324682ebaa5a73ab62b87298edd5418e4cf88bde820bd890d28a850422023100c847524abf8c3e5b3806bdf6fe2caa4e74d4a2d174d7d10dfe92a15e61183ec9406934ec8fd5bf851db8b3d8d1bc42cc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230710f31fd406931ad90fc061497644b76547b05aa3e9e9311d2d9f6ac25a88930a9ac1d1425ef1ce1edfb34f246c9e172023100c42e0f169f37b40825eb5d3dd29d582aa3894cfdbb9e39b282eba76c7b81d6e86fc528cda1e6748fdbfda13614abff240302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305bd6712f4d69af809afe2666e6d220924aec97707ebdc3f678c65c7751fd315a283f305ca06a9a6c511c1c535f22f53402305f59393fb2a145e18a134f694622faaf7c9e331551aad1bd45c85f16df3ac5bddc27ae8ebafa1fce316125becd58a0e90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d879792d28bf4a73c0b4b77954bb7c408eab02d2c6411f7d6cfeaac4b61df88532286edab802bd3de3f82b41bda3a1b9023055c8329a64b9c96dfb7e2870dc84d86e615d35bcc49866fc15098fe7f53d07f4ce159b10e18ebfce17e746a9c03707b30302047c435bb500683066023100d51504d9bc8bcdfbb3a16492f1355dbbf3ac486d8f68aad9f3ed9b96dcf71f0e24ab688337a655bf55ea472db2295826023100f3b400360b4aaf9f36022123e83dff3b9255b2aeb2a60378ce8e805ed1a3b2445cdcb265f4e496cc07fc15f43047fe070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f5005ad624fc680e8955ecbbb04c4fe0ae6979cd18ff206578e567fd1887d6a8c7572e392b8d8766e40bfe8d592095d0023100e9fe5724f3dbf6bdac140496d4c1cef7ca243a36069edd325f1a59fa485d1fecad1cd86687cceaed0b55fb50b9af571c0302047c435bb500683066023100d349776b68974bff01272f2aace37faeb5c4bc8ea2758e84d7becaa163430a5d45788840f5dc86e91724e73a125a6a1c023100d68602a96ee38e044a98f4bef6d64f08344a18ce12e8b5aaf3673e87d358361543e5b2dbce07b79d32dbbb4ccf74bd570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023019b6b950cf90ad9cca3b3c201738b7ccb9dc43ef52c746bcce697f0c3b17e42e7a25e65b2adf3482ccfcaa718f8b111b0230051cc0659747125167cbb80b0571c691502b8af17563a358b905bae4657aa21652540c3ec506b6cabfa41f91cf8741d40302047c435bb500663064023016d6c22de22b0791754cc0d9487a43c41d13af4b76a1f773aaceee6855f5d8348a262d66f75705fa69a49263092d4e6e0230146bb69044fdfa2d754675f31fe53c838ef90455c3242b1a78502e6f255f53e957e7cd755991fafa77ec6fce63db516c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303cb756979aebbe4f67a200665886b83184762ff62fc5f55e83864f05dac38712e34a2c1be40c8677513a54d349a7ec9d0230382929721a7f0ccbb46d523529958e3da113f24c3dc62e5cb73ae2432ba3371cb1abfe56737149a28bfaac9c35ce76d80302047c435bb500673065023100f79eddb3f97cda344a7cae5d7fdd567835f0bc9f97ce804b677f12ad0a4f12fe6693f70e466274810b5d25bff759deac02300ab03c573980ca43d28c78f2b308d36cee78307b46a6c382333d398b7113e3885021a974600db8aeebcbb14d9e14e3a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023049d35dd5acab3998509d844a247e7b454f4c0b2f52a074b9996bcd7c2ddb080f38534b20b0f7ee0bf71e708f10cd3b1602302d629b07e4cd191fdb7426e44b7f6c4eb1e552f82a5528d1de2b087255933ab462cab8b641137e175459621eb62127280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302ec1e11a783aa0fb3290e4f2cbda639e762466ef485dda3311cc806cc3cfcf415fb56b44cce33f1e1727570e1e8148df0230695017537dcdc7d372bae1918d912a2dafc2bd37ad2544f091b72751983e21c1d0e8a98ab36d9019f37d72974be91f050302047c435bb50066306402307bddcc00b392dea58de69a4d88a2a8642f0c2faaf3b540b439e84de107404b6ef635149cc59cdbb2bc3da5d93aa6ba2002304cd00782d891f70f39e98a0135bf71b7a2f5a5c07865201763e7fb7d567bc98ab1c241001338cd73c50bb852190086190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e1a005d78cc9e0c9fd07328b39c6ceb0719de3f15a74a68f380cead1c8c2885b215384b2d7f57232bed7d6fcd73ffe05023100ecf8a6b397ece188965c0bcb3a6d29fdac2802002cdf4d2045ba284edf992baf10cd37861b51863f37238dc58b2bdf5e0302047c435bb50067306502303b2708685d0842e7a1f4fa47c5791224e2b500c4f8bc1ce2497f6d380c3f591e0dc91a80103d5c9e479e311d48d1751f023100fc5d9bb0ad345bcbac69cb76264a39a551a2d1cbf258e0bef6b9cf3e0d6cb65d38c0d3815161c93ed9c7304e5f202a9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304ab67b5e34c45971fe5edc9fa9919908d83eea9453c9ff2bb4dd691ad7fd0e7b669868f498cb63e857fe2709dd059668023100ff4dd599819c80ff1567e5bfb51ee79e5114d5f74157ace40183091b64947d70ab44d126780e937d171bfe85c10b03e00302047c435bb500683066023100fff648bfb18a6c567f7be0aa1b0ad6e9ffd2254095a4ea0be34a2e286eb7fd77b724abd5d527bf035294842c51925c6f023100f775b67f761ef576ce987ec78e76cc47767bf595652c93cd61ef31bee5492c9bb409067af5314417deb9ed99fa9958640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023032b8b9c82264e3299bdca3fde26d3b16dde041315ed74da69a51052383e3f97f0fd7fc29e512928b11730348ba10897002305c9647b21165f7aa8f1fa35a5d4010e6f81d8d3a2d2a9ec0e45467aecc83b776cfd0c1efb87ac4f72947868a457684370302047c435bb5006630640230778e1268eeb01a83ab4f4b5b8b0920abf2186693caeb54e448197ba20d698e5bf02429eaf9de5fe85719b5604fa6fc6b02303036046d4cc1fc21a2e24917b5fffb7e97a1f2e4abc31ad687a5273dc3de1cebb327b7499b42fc1deee77cbacd1429710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fa46d7e20d525aee93be89ceda4aa55d6ba08c707cde2bfa0b4378ee4cf525d1fcc53539f4ec54801e3695a6655b70c5023019df75bf4b14fd69bb1968463322fd9aa8c296a8232d7e9066b3ceb0658fda98b4a5eb29b1fb98064eefb7c5ce545e6c0302047c435bb500673065023100e830b514c17f0e6d29ad54c4c8f04c417e16bbf984a3338ec78fe70392eaa263c2759fad26644ac94b3de0b66518091f023074458f273feb6c7824db4568eb0b5b5ffaab64dee668641f9c26e5b0d74afea8054590d933235930c2a0e873a49aa1970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305c86fc127b430031d235f1dafd2ce88f385d66609dc1fb18d78332d0d26b9afef71670129e7f763c3cbc1fa8b14be4b2023100fa7a4eb61e22acb83ea10b5e1e60398ace31d0f69b709fe17aa1b6ed0e0149f6ca2280b4e0f7c4654a0269bc223a59470302047c435bb5006830660231009ddbbf57f87dd70cb288a8de9893483e2dc28a706ceba17e0d30963fec852e3ad1dd311d33fec742c57e4ecddd245ac5023100b69907d4ff9770c929814c1912c6b6b6520bc2ae0a65b68966f8f527f3efad6e8d7f3c2ac9a4c9c28ecb51fc0814bfba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ce18a653961b109ac9d16487cd660c9b666cfc126ecd3f4f16869e9fa369ab781e999b9cd5133ac6f8ce33691185a243023100da699f1b66a27fb14bf3318a850fc9c8898f3150f6aa56a1f71dd02803bdee866aa07516deee9747bc94b156a9b910620302047c435bb500683066023100ca16bc17f7ea6f0ba76677c6777a53c159197dcb351044addc0ff3c6870d79a1cbceb3a548d3f9ad61305ad02b022fb7023100d6bf83d8a1a37e4b81d4d84247c4457e826c5645327d2e5e1977a78977afd8321ede951118b980586b9b99b1286442c10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a3690eb3ea027919567a8006f55a240f289840ff7a2e1ef0ae4c6bb2c88c3f542b2817f3f3f76867e5d94cdb882c4fde0231008fce048afdbb4695e8ca0734f772c3d0269a66be041d6b5d4e5ea63f6b10331394f49f8bb940b2a9b6075eee1d8166f30302047c435bb500683066023100b04c27e2d5eb3ead42aee6c72bcedc1664728964f1a88d334cd2659f215a41b610ad7cc71e3468a8e9a1978246532d64023100aa538703c239062e6cc236a7fac04ffd570d318e4ea4243c10d59e4b131bef7b3ef8374ed209e8f9b4fb84d044e3ef950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aebb1f4f6cf28e033d71493748e19b6fb24e9eb185acef17f663ad97d61770e4878b8707ed47e42469890fc24005f24502302a4b47959de7cd2bdd32ddc9147cebc8ae7e97890c9d06210ef7d83eda5ff44f2938b71f23b7e2f62e6e776db1b67b230302047c435bb50066306402307ebadbef5b91a775d78e58f783685566e06cb3cb420676c94851d8f04b73bab8b683992f229bcf53747e66fd8d9c22f902307a9d1d032fecfcbf46ddfb008f958edcba1c58e4ad4b508bd6ceccf8cb76cbe61169493ed3fcf28c722f566965b506c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009b86e39d87766582fb0324e5509798f839778fad9e3d7c89b2b2f42c8603242d3eb5e9ef52f78f193dcab86f288912f5023010b304326afcecbd7aafc5d652bf20ae67861f2ff5b3c85e892e890eb41c077e8c2ef79d243c383d2084b279525324ee0302047c435bb50067306502304bc924da0695b61a2ad88249485d1f799d1b012d43188b0058ef3fd6841194814fa0a89b11f457279a2b8b0baea032c402310097f46e8f76aa01160f82cde8e2ba280d558fb4100c7f78710df1de899e84596745b772339a1d0cea61e61220405ec3fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f454d5b7ba2814af213654bb916879bac1789366949a8f111e8614437c078e60c43e8aa1e105212832a7b493ef1209aa023100de2f48ab5996a5e72b093b3555438991179ec5498cc55430784e1ce9e6f938e4dbfeb669ee8bf2fe0e0c564a97f503ed0302047c435bb50067306502302652000690f6f548da345553de51e47948cf2907dbd041e68311b7ca32f3f1c3119d7b3aba39653ea2b65890f8697c3c023100f792e37fa433904a44b5f28189ea6ffad54fb23874c9075a446b74095001e0b07516374e1ce095b1a2c351a75623c64a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a7c610bdeff534a2d15213394060fbbb1b283c65ad99cf2c5aef282ade5ed828568332c314c6a2ebd411c943df3d6def023100b2406781dc51900820f98c8caa0490eb65ffab681aecbefc4d9c3d60649fd44dc93f1843be5cc32f9211d01f4e361b850302047c435bb500683066023100dfbed1298c8bd0ba12efa3d7ce8ef66dc714e26cd6f2f837edaf67e6bb95c9f14aae6cbb9f8998f235d1b7a6a0ef2981023100b2f91d3815c47c3ea5cd7bc3d7bce48e4f0d7e04c5b0462d7392d044b597aebb7d61d1be7ec9a253bb42176d0eb34c930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c4e4cd7c407a07400aec706a29b710ed47c9a15638071ea136b8a99b2b29481831fcd3d989dcffe8d25b30cca7079246023100d7f6a9e8d93f3e0cff9970d4faf6776944d768b56982e94b06837bcbce276283035b657efcddbb8d5c01d45223ba4cd30302047c435bb500683066023100c537d9ccc966fb7f9b205812a51855aef54a872f03241946f1e56f8c6971a93ca89b7d180b48672483430f6afbd6031f023100bb5b05243c7ee676979181ce679a2d1a4fb25b52911b4ec30c8a1fb9c19beff8be80e43bd59c33a1c8ef81f14e3fc8700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304ef2b62a10834fa4999b917cdb704f4b504ced450a8ee051ce2b6d35fa991578bbde7ecb646a7e720431fd658112bf7a023058eb89e29d0cba1f50622a9565e17cc2f6193391fd8783ca6fb3d5c235c2a8a7d9305992b5eea8ead28207300958d36d0302047c435bb5006730650230394e32a72b744798c7834c2a9188f03846f1b53902697e7f8d141664c1eb1a6f40b757fce07b46d705dfb1fa61fd4b86023100cee868c5230723b1bf4ebd7e02db318f241cde40c69bf42788c2891e643630ceff90374b57b5e618b3ed532c8ec91a820302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305a68058956629be1001ede3f2de509facf6e2078d6b0609557ff86080cb0b3765e9a2d443d880e9b5283638f30e3b929023100b99c8283187001565ff48e13956e0305e8a75c2005be19f2b96def1649a1270539adb43820230e37b58b249922db9e4d0302047c435bb500683066023100b036336ee115075fd6d6329a093d0bfd8e8edc05f0f62005a4e990cd5d0ded962f324c25a1cb91bbbfb5f3a229c8bd2e023100f769b8a20fc61fe61e486b365dc50d9755c1f22f7257f39fc3c658ab9a8edc9dd63a49a52e2ae78effe3719bc41a53aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b6cd35366a3f94a78849b741e3403e47cd0a10b35cc7e4fed99552a34211e15b3d490d875a7950f03dabec249bd9a88802303f7d9c8684cb20ddb78b6bea77a2821315e16f660aff405790cde165e1c67673ba3303daccb7e27e25ed1f0242dfe2fc0302047c435bb500673065023100834290e10f0393c674057e2298e1c6d7d8091db351e94f805f9480403b75f7c6dfb7c1e00210b5eb61ec7ca41c3d8c4b023019216a8dd3c44191da438a1d9cd681284221994e890456c9b6e993343360ca710a105a0809cbebd4d8e6eb5db6d1c0d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301339b1084852f27f6f09bcc8b40ff35663d7e4418c6704365d48825569b5c77ba40e75760247f0c729309f241778e279023001b6a650c4a8effea3e22a00792735d3f2cc20af57fa19e0d5c951dd244b90b0bc2c9e5069ed539ea1abef55c6b9c1cd0302047c435bb500673065023020d245423ce09e673a187fad049d4126a7063af935fbea46c65471b77fda200b7e4eca7ace75cedf6cda4b77dda2fffb023100bfa68fd15f9b06ecc02adde448ea50c6c1cbdddb293c7bf2f1d8cfeefc62a67cf25eb8959c05a2b54f7deb655b023bf70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e53be8cad85f52c3af5efc5266de278ef1a9cf26ffc55b52bff54f1018899a1570846ffc6ec6d73fe7238ef8e63af448023100b61f82058da5224fdd595a5a32f6bc058a02b065fee195157b5e70dea135bb0b86a3acc320bd69fa61dc0995599879d10302047c435bb500683066023100e8e46107c2922ac65ba39c7d13b812ecad67e91e39d8897f9bce32c218add26553ffd831540793561e9014a6f678b5cd023100f7a77108bf76aa19d35919bede8c4cb2bc9b20992158d28f854382b0b1fdbe5ccbf146b4dc42a16c2aa2e1d117fef4000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304499aaf0eac338a9f0925890523a2ab971a97402cba95f424d2ddcad90b10f2a69c171c45908f8de82c154128d20514a023100874ec57c15531ffd893a7c6df378471bc4630dd0170caa983faacf6da01d4fcf217dff649783a46900635c6c9a2a82690302047c435bb5006730650231008e32ad52f924d01535a1f25365edc59c27a7ca6ec9e2c67cf9260cf5ff230efaad5c1c24e4a4b2f4617dd4de4b38a5bb023061859af56c658e0e2fe2f150a9dac6eb3a004e0adad375e3342a1d010599fc91403930bcc3bb4535ed2afe1dd238a73c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aa3b236f2c711992a842494b3ad2694096841162c79894bb7909fb5e0a19285879664949796ac6710d447d6a8c9c1a0802305ac4470e0c696680d64998a581afd8180ba392f9abdc1743ed4eb7aca52d2a5122a59536785fb0b880b825f3bed5c3200302047c435bb50066306402307c87f4bb8ac4a3334f4e2ec5d55bed647bcb855abaa6abc347796aa401ea8a22b6338e01ab57c35d3be0877efa65f56002301b1cbdbc8b61f900e6df7953d751a1acfe344ec3ef752bed21091f3580a27fbe1b22f06f0fe0012f265b3bf97adac0db0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023037e3126a47458eac57546889ef089a444049aa63b89ae51f15c37859be5fc8daabb000000ac860cff6fca2190ab50a8202300ab3af313af6470b6ae1f2de3bbbf7cb8c9b08231530f60050c0473789f2ebc8d1ccff8db2a66d9498cc22c009f9f8980302047c435bb500673065023100d61edd37a330f2b14e7acc194f67929b68135f422e3707981b8fdd6215bd05d35606fca5bc11bcc8d10296fb073984cf023071e79b5940a5a529c0ab041a6babfd4651b321b9a9dc2128a94188249d4b96f779d8e87138eeaec4784659209ba0b0120302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023067f6643166fba38a61d65e3908e9ad4cfa6ec1b581df789bb1c1b90101e449053ba4a92dbf574451f7daec2ba8ad23b602304f09c00cdf1934d626d01f6990387e69315b3c35a0575f0aba6006f97a3b0c8d662a95638a998cc993985cf53892f9100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230787a20f0e3b6d0b51e99e0f05542b0eb7f702dca247ff8136f0a425c1be01f2b8e202ba994e72f15a21bb13f085089a502307ce77cf96c43014750aea213ab8c0c5819b30aa4f2174885b0777db586a39e95779d3a0486d3d855d91f2ba1a7393e6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e219448e2c5995bb9ce321ed68a0b12707804a10485367e165f23d95fc4fdce32eeb12af03000a1eb8fd281b5ae265f3023020ab9fa324047f20e448ae2ca75d53c97d88d4ae6c79881c943d06c91920462d569f2fee658db86c77e08cb48eded2fe0302047c435bb5006630640230643d9905a0cfc0f86d9e0c1415d99196cf2ccb3c55ee0092b4041dac5b0f4ac7d87ce79c34473f8e30dd4990c373cf4e02302d540d88a51ecef270d202c80a590a2ae0ace14588f3c79ffde50960ecd055dd5d3e99909138edd1d4e8d0f0abf506550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230287bc32c2e0298b7b3e0400f805e741c959c70782ccefb43ec878023014e1906c1eb798d5ef35b1d502e7566d463828b023100a935a8358b96dfdee84602e3c1fc544b401db957d206a7053b3a30447e2421191dbeee1155da2cbd172053271e6710d60302047c435bb500683066023100cf2bee58d1cb564b3782e64d7921654fe9ca6c4c6e82eb6499cfad215dd32f9c54047bd9448f75b7d298823b013f88b402310096ed26ec15d44f483c365ff1ca3e39dac5fcca065aabb171b00d020ff18e2aad6107e3e189b51dc57513c2d7c32664340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d251abedf3130d507c2f7ad9983b716a408adc8c07773753c1610e777905f74365c39cbc8fa2832e2fbd529637cc750b023008f9d6e473187d7346ab413ce0658025476fa8bd27c9d8bcee3ab9188e7f041cc69223d2b84d81482a6f2b7d90bd84e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230750e1ccab247d4b4baf7592efbf9ee339930ab2d8fc62c2c2dea6c4ea4190232eaafab84cac7e5818028806c98767d31023100ca02c87cb648b102fb2694c1d22e0254a54cabae726a82ea36ec497546f882a3b11d6ad2eca9215eef1e810175b1df540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e0a4f2a7ccba213a6587386d12adc25c194e67cb9d2ea568545657e835a1b22c5c91c3fa63cc229396d8dc68def98ac40231009be7b7522ea02b6298b565231253b907954c1929f84f152c114d6246d4b0bb0a06b8e420ce0d1584f84ecc3799ed40680302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008d007551ed0c361693539954ad65e01bfe2bf4125e38240c0612c704cfc812b3b55627193a80f5a525d3df596d0158b7023002d6c468b9ee89cf02372604f3bad0f1401e931d1700070d492f905b4cc4c6acc94b2baae678b2c332ea46a0e531b7830302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d00230a68c6a78b8376ddcfc1a12b6a5b4944e784992e18df952f8a5945065f3b37f5498981d65208550beb81c7342f202310094ae0c5e59c8a69b4a9110f46aef27d5c5c85ba04929b2513247c674210f92d897e25287bc2005d8b1fadf62d80addf80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306e0bdc330bd0917a98e6230f469cf1d723c92174cb897a0768839d5cc3be81ef98f41bc30f320b77662c46306617ed0f023048a502ab0d93fd4857bd7b1fddcf5a449083fbd9a6f1de28f1a1cf3b34a9f12091829bd85e7dd1dfff2bf383175ee78c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302b71fc3a6722f452cafa2ba9b7b43a6fffdf1c73816498bf0b58c228e8ed5c6b6aba3e299e8e85c5c283e6c5d827625c023100fef4e5eb46d5906c6412341bfb3a874670134cbed7f9e0e205fe44b3f607e2ba79cabbc0c81fd835042fcda12b83d0bd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302815eaaa4ef2e72794d470700d57499a3047fefa5281d8c545cbff2a2a6cd8bdcdf40bc36726e53eaf54d37e41890b7c023100d0eb9aa4bae62aa3e3ec501c0ac29e39e540818e4afab74031c57536bccc59250d9d47de9bb59bdcbc291d92b1500bf40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e7bb1328692a510405454750a4f4311789ccceeaac5f8756bb0644096b5db65cdfbcf4582b21efbda97e41877578910402302802b96c19605c5dd3bed537e078ea7df969f8dae34fa064508068a25206e636de6e7282257aafc6963d1eb8025f21170302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009fee7ec351d2bbc00aec45af6eef603df6de2441cc40d0dd7661c23417be10ca715d193f37add1fcd882c022e4afa005023100973643ef1a9fde57ae5624d5087dc5729d3ab13c2f8043ea81e6e695221d0110b02d70161a6b31bc17e71346bfb027980302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100940ba10fbb9fe50d2dfc7d505690b66c83fc1ab398d395c8e06b63226f485909fe64f18533afad04b8dc36c9aa58ed8702304677315d84b30dbaae6c21e4b729f31e9fcbd4fe3a1996872f97b8d9bba1f6aaea10b7ba5f08e87917d897190e2027430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230525c4def78a5530689b00166507cdd989fc04246c896e90e847a27b0e6a4557d5c8660689f193fea0cf86b07dcb73172023065b9fcf6d5f96ea9065a8e4c90a61719b79abf5c48ada894e74bf96eba93ce2a4737d2b152e3ee9c470b86a370bf0db70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100818319ee769c5e6a46a48b2b97dd6c52984779ecadc2b625627f3da6e085bbaf4154e4ad60f382e0ce16fce6f37f9fe602301b5182f241bc7faf38ee435f39d6d48e7fc3b2218dca1409bf380701cf9bbef2e0b8aff03d89e440180364ebea7b458b0302047c435bb500663064023003e57efb10843fee598fd471cd3599decf2a4721e6e6254da61754956b122b5441d94224e460c289303ea2c74918f2e302303c929c18c69e9f5a1425bf7971e1cb2d917756dda260021ffbbc5f931009fc827a70fc226544a3cd5ecdd0d94e68da020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ff3cc1431dbe1a426038d749faf0f5623fed87cdb3d40a86b929581a608a845906e2a54476445f936bfe6792cc07840702300b7ecbe245b44e0379a464e4967bf46d38885064c856786410543c8cd9446a82e7124777f689abcf5c85dc44c8865a970302047c435bb500683066023100ba3d2606a9455a82b2db7c69de4128dc6ba62cd4052ee2f6c9fc10c14562372940b26642ac34466805029a57644ab0cd023100b17719c3b864e550fe296962e613b1441820020a82528abb0009e1c989cdb2911d0338422b74fe36fc87e3538962925c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230406b2d85f00c60df4c233b0b6ba9b3af2c39f575d4bbfc2ffb852dd02af4b289641915b708c2376a678108c80b49a17b02306fa07c323b08ddbfc0da1f6660d974f37c42854515e57a1ed2db855cd54911099b92006b207e9738698895d087463ada0302047c435bb500673065023100aead7f76c197d0ea36008b7cd70c5356ffe942195bf62295377d770481e0e27c899734835269806e97164ae2f3351ece023052664aef7bbd5ac1179416ca7605347f333f6600384297e57d599b991ccfca1c823c5751bc9af7a686acc59663c94a4c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bd16d462482c5bbfdd34938e346ea5432de7a755ee11a7f22676b395ad25e43825cdeedf4b8e1526817bd0e9a02fb3c1023100f69a4427fbcda36ce045a2e7c4fee0e13eb3707f24273cd283eba6d589e85206237d4ed88d3be4bf3da80934f8c30c310302047c435bb500663064023023fddaee92e0fa5838612194b243ea4128bf9afdbd3839fb8cc28dc2d20aa6507ba53e20a1693920398f97cf4e9c5f4402302dc636daeb0c0fecc0b208c158e4d6a3d0cc8f453e9fd3cb6cd520982fa706ea7c489bd49b155d113fa727b0eddd0d090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306439a63bdeb8cf7c0a892e6c592c401b301bc6ab40eb8975b66cd0dbf032a5e2d69ae18cfac58e9e557d36b1f362e0e60230420158d4ccee2fb806a67ee2dd0bb0f42ae3829a8f3dd01b15e005d3d849237237d903ebae7b6b98a61e0e5163fa4d100302047c435bb500673065023100f9ca4ae1fce01e1987f657b3bcadb80d942d90819870997bc8fa64a8db2a5b665ba4ce17b718ffcc70b70a583ec7b68302305edb4d8e10665c774dc1f8b579096d0ebd03b35882a809b446a5315904430a8120b402c64bb5f0b2c9bb6ca1b92d78020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301bd51f9085a9cefd3394a610047ef0765917a56243dbf88d050777648ea6f52d1d84166906131cdae499e9c240221b32023100e9ab6ee3ead0b5310fab73df77e1d6b018740831129d51d9abbf114399fa8b7069c9178c4c7feece66c1488c25475f9f0302047c435bb500663064023014d6ef5c9c568e373da75e985a3709448dcdee8fb7f9aa9a7e5fae7e04febcdb3e37e2495efecc610f12bf33a9b0a5de02302036b60aeec2e27f571934fd08c94a2b20efc530c1878e3b780958efb7f133eea6ea4628d85089e778d733593ef810460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100968cda0f452b34b06dc6633f837273634328fbd5aa29587d6319c2998cc1a0e9af08103e2a0373948537d3dbe5984f4d0231008394aaee321d19161416767278b2d47a1e2b7a83bbbde99c5186f0b854cd9883a365dd61d5844d309712d6468c5bf90d0302047c435bb500683066023100f9895fbe4f92eb3701531499fa47817f1ffdb7f58bb54e74272e6950dce7584a8b34c7fdf9f9ce0fc7cd1fc058335691023100da501cd73093a417ce0f9c91c1f66146bab68d01574b646b0b714ec16f637715854e0f14283336f72d4b516b1913c4c30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302a026722f4a95447c7bd44c51fe9ac5b8ff16ad8436fa1c3671aef8fdc70930b2d122727ca8443e7f8a54f94a93fc66c023100c2cf101aa79b5fd1d538a7b433f6ac6e905b7d13c480b9d0f2952f774086d02ae51cad970c8c327d94ea24059ba5ba8b0302047c435bb500683066023100fae9d4a528c9386a613de1f8ae5655fcf004fdb68ae582fe65d1cb61ba8f72f08584ad1879d7b0dc1a9204607289244a023100f860b44a6a622ef7266ee8c2f091088d731ffd40868cd196baa65b2a9ee71530ee3b31a316b008f82991f7ad664361020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a04fd4a6585fdb5c4deff362fd6220811659cc37bd542f04e20871413bacd94a5ccab1e95896ceab804d81369ec876e5023100b25e37e6b409f25cbde9e82eb329d4ff7030445750f4774a202e9535d6336270e2f8154aa30ea4f927cd839a86aae0a30302047c435bb50067306502310090a06688d6307899edbaefdf437bbeff120066d21a909a9249809df929f6481a58cce578b1ce6da451db81627a48a75002304a79d2e9264f04a65811a70e55c54cd7b38e0719d14841cb752402b4c3af7d2d21c0b412cf02ec3fcc0bd6a018671f980302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023002878004693684a6940e78b7b47b9e6e22ae495d0e72e73b5813afe6ca3efc15dff92dda0000c238d6601bc080c6b156023100840d7a2d1522a01335639d2b41252cb24394630c54e1c4ec82a2e604be74cabd40e242c3df4bc0ca64fa8ce48196c3e80302047c435bb50066306402304ef23064ef1d9de38070f20e32d05b5625f59da918a63345d6c35c6579137a22278a95131330bdf43f5400e4aa626207023079e416fd8762e6dc41d65fd85bb5fd6b5d324de54cc6e3a725997056791bc313dd3b295aa5bc4a8c067d4b66e56231060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023064fdbf3c6b1746111b43d8bf0028435554799b8200a3d846f87e4f0e9c72999e9f1efe9fbbb8bad3c4a2354ed9c1f250023100e0edee4f8c0180111ab74789f8dea1f57f4df65a93836e71f2a69541aa87290d4048de94f0e724e80b056955af4bc46e0302047c435bb50067306502310088f9e25423d944e0d7d38b3915b8abd97dce2e3b2365bcd9ac6211c3cee59ff63301b7112955a8f4ada6c3842ce0f96a023052de99dce981ff8507242b6130dd136cb6c9326d47a7619d487a59ebf746cff685a628add23cdda9f1b632879a8caaa10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097a0e7f1620715c87fd9b79bef9d9a44e8d001d3b218e8eed8d84189917d31f43e3204b7af1e46ab3fbf2de6ae47999a023100bcfd7556cf3dedc7cd5bd48af432cdcbf9375e21038878e48489e56bc5ca1644584d25bc0ba55963d7beb5ef60f08cad0302047c435bb50068306602310094c903ec081f481561ddf4f7d3b5b46862ef82acb2bcefe89bc9b1a535946d71eefc51a73f695211e7e19c829965297f023100af2740ec3a48dcc1c9fbb49d58cbb3b775ce4f401d4e3810d726b21be07cd7c3954614c092a9bf9a1fa76acf6295eee50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100884301366e3d9b328232810c6d60270b2349e046fd14086768cd30f8c9c00f1c60cbaf8a01c75fe6bf84834b11b28caa02301c9b10cd3930b5d771a643d73516bbe1acc93010416aae2b3ebf0e71100cb1f170a4a38dd25b2928506ca7be7b00539e0302047c435bb5006630640230015e6c8afa3459f3d3e3470478e312963ccd6e97ba650a82dfd6cc474c6b9a11d43416b6a33757d120392b265263230302300263659aedfb0254fa6e188829b5d8294377732b9a4bbc3c8d486c29dec70ab507f125f41fdf2d9b999a5300158277e50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eda8730921675ee12770844f1310a07c60160525b0b9b530d0ef18f2902c721df40ce3bb10784347564fb8a9d361456f023100cfb323399caab2cb4aeebb976172c3b326d3ac13746fb1b6de52ac7fff55c5e2c011ee5aaecb551043efa46cbecb13e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023078ed8d47e14cf2de48c5a2a9112a204a379d0f7b39a9dd0879bac55f6b17a940648276c9debf29a8062a4ce3e680ac56023100cae2e0afe820e3eda35c85bfcb16115ecbdb08678e5116c9ea12f6aa679e308297c985f211ee8e1aedcdcf26306e39d90302047c435bb500673065023100d19ac43fd39f6bbc71ca62f934c21713e34d21d92c3903cf3626d894994736e92b834c6eef4491f77c80cce55b37581002300097ca5daa86697eba131e17e7c980a705e3d8b1a529a9c385b5c96f5040dad7675e208e376e81047ba13e84f7b64e770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009db93e3ea9d6b5a5cd1975bfcacd46f88ca15c20871558db45c6338b467662adc4d6b5430dd744a229014bf60f5c6869023057eb4c9c6e2a55a4f3fcc4f8c972e81c1ada5af762ccb6a89d55a5fb56a3aa17a6f0063ad56c4c303ce9f1968d5dcbce0302047c435bb500673065023068f096b7917f25999b3b6421a090ff02d10e760874e817c8d09bfc8c5c206600d1e3d0123bcfc4b727d5c0a1f9d47eea023100eb1e4f03300796abbc96a8e86c58ac6f283bf7e70d719bf83371ecdef97783699e4a50c6e2a64886ec00d8c5e0c808250302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c94b4f76034d8b9e8e44157486575911e90635d7463b04c652853b053c1e79f148601ccc54472b8d485d1e53e94303280230620a3ca24c716abed55a4d2ed20eade392a865f21f29426b0b784ba7bfbb520ba1275d0c4953f8b353755ca7fbf3f4410302047c435bb500683066023100c012a5e913094e87fcf9c731ca33f0106837fb75a8e2fcbc593d6140c1bc789e134462654f9a5685ec5815833e27456d0231009b2a54b59c9a95944ebeffef8ce0f772cec02c3c279e2726c5fdbdec698a0287c20c00acf463160a613587c9ea62b4a60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f1808837f47c66483115151ccf98e0cd5dbcf704519e7388aa50d39ca8db82085dee74e86e07bd948d23d444c812612e0230185f3a007992c858f316a6de489bf6310321e42553e94254a850cb0955d7459ed1b125bed6da58a6598ed67b6af020430302047c435bb500673065023100957e58187f1293645bbbd94b90daafa0fc42b1fd01914bc59206f973799d8435116ed714c4c1f3f1e08496fed4f6a41b023026fea197951f81d8af6897d520526e0a3740795a920a6ad0abf856a230e59979e8ce25e9c27d264900ddddd4e2101bda0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d566241105f292f61dde8112a6cbeb38bc23969f82c88df48bf5e9be01fefa9372d1a5d51def9ccacb21c390b252bbe4023100aaa32a0b2afc6787fafb9c5795e587ab717372cbf94d9be945bc413c0ae4bf157af44f0214d1d1b1eb8ba4ae3c3cf0010302047c435bb50066306402307092a653fd3e752848bc836bc40aa3e46abd4239f72e871cee738a77bf52bc1532a567e6aeb2b246a456f23a5107856c0230405e399d45aec484405e89151ec084678afc9e561f9a9a7abbfaa8917cbd9e1421069becbf4a95a5efa3bc4210cc331f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304614060aab6b6b65b7b1d1180159dd98495a8ca26c2d14a67ccbb5a96fcfcc5aafc6126877def34e4b2d0e246da5720b023100c776093a1c5c93fb350d5314ab09ec008fb8208633834c33f44d0e9de3a76c805e64a56b504344eb2091558b8679cce40302047c435bb50066306402304a11d4ba0ee9f94b7748958c07aef6b23d8092cd8e8f6dad13244e4b530402dcc7ec4301104974057be8c69c1d401191023058e1a3004d571a119aaf86b4e7fb3b7121488b8723077f87b32e7f516db2033e526bbcedb3dc2689b063af9b13762a030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fce1bf9b86c86ed09ad2ba0028bbd4b2eba8dda9997e8d63d118d506ec5703f3c1db7eb7758dfe7a4544bb6352515def023100ffd859cad69aaa7537d6c483a6c1042ffea73ea0a43edccb90060b19108c8951f762fb84ddf7088f9d461363710001440302047c435bb5006630640230204ac9f487f828bee02645145db7e396235fc57a6ef6608b99b23f5fc01f97a209d3e7dd004f168dd5e4f8eb6856fb590230352a195efc292771f9099461d53748d7d7259b2edddf0093b4177b1f49366a4c5963ecb59ddb9661b03426d2f89c93280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306823d06f45a2f8d0333c6f53c690fa8b4396642c10d47071b9ce78aeea54dfdc28120b3e9c140b5ace1ea6e24d99190d023100c23c413f6083d172a254edd47fb0ca6c03f1a5151559184c06a1e218c3595fb8c95f2a4727b8e26efa043d10999f37060302047c435bb500673065023100ba928c0928389d6a7e127c3a4404992c38bc9078f255bbb33ecec799ae8567f2da57a8b4a2baef11b68e00c903faf7110230582a4558792428b58d573be76b9b8cb63b99770932c0c5df453bce957362fdb4e2a19de25a693a2e15cc6f5d87c9afd90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a2a2d5ad4c2365d80397edf0857bdf6be73caf1b20a5d19a1f8ddb014a5c31d65b069a742fc497483fe966b3082f9d86023100c0f748930f14ac5ccdc35a68055b871ebecf8c734cac163f80c5c4f4b3a43c176438f6d5283b370b7c5902751a97d5820302047c435bb50066306402304f7e232b14b44a982802db4f555ae661f0e58890f9483a1c50ca458531502f70c64449a61235f0e97246c25eef57551102307cdd2edb8f84ff97c89ce56987c3fa14ce00d331e1e3800f8615c59124011562d496de2e411f73ea3e62b4330d8528510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100870abe6acd434590c118488e00af867ac9e60ea608eeae14596c0a21056bff259208af59aa910629100ba5ded76d49d3023003e00b443e24632433054512b62824331e25a8f8ffc72ac911da2ab71ade25e307c3008cd9bc42c4cc0084d8f61ab80e0302047c435bb500683066023100ce361954edde40b1eded530b36e2ff2bd03977f14b312a007cc643912e2618e856c6b679391214e4dfd9fbccabf5bbf0023100e271e00f7ac9c68715f76b75aaeddc4b7e9c641aaae26e8ae353b2727bfe18f0cb0dee718215dae879798c45c5f667bd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307cb936128c344ecd29ec63a9dffc4c5aa20861468aa79771279af76ddf3f2ea75f88adacdc1d04f1ee7cb7822f14a4ff023100d8a30d70afb58ab8b41d3e66e32b531a93e0af8e85dd3da93cbde1d481d102158fbf54e6699152147c2576e876dfaf830302047c435bb50067306502301a65e15408b0a46a18d476bb0870240d8e2a6c9ba3d4f3476f6ebeae0efaef64e77c96005c4b4b869c00a873acc98d2002310089497fe5031ef8841f70aed863699812994f2e27b52da7be533a948e05f4640aedd5ab7f25f3e28875ffaacf94816f500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a27bf5e748aa7c48630ff1e5aebbc07d5f595c7b2df80c6c33fe755f7db6054bf57bb9905e498d031c4cc1dc810a1bd302310082238e61b3e0713638be67708c020f463b487678666d2499851a150d4e5a80e0ca85150aef36e949b730936b02b3c98e0302047c435bb50068306602310095d83054725b36b612d7af90c67e88cbc885dcd46f98ca9753c4a83910f448f9d073e0114375e8c4a984bbc9e0c1767c023100e015fa2b81e5824c0af73c3555ad3e286b275822695dd3c22b5c016943822e3cf2226d92c1fc4896ef79a2ba4746ec080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ef722f264f50f893edc15785c49249b7bd5a2e8bc1edcd40aa2d08edc55d1c6524ec52e3c4f5d9db2dbc1d30f537705802307a3df46d1d0bc9b28ab08ecb59fea515a78e94bb4a85728390f8de9d7cc591a32a9eae8ca08dbe624d56c856cdc63b860302047c435bb500663064023019bc0557af84a3708faa669e1835b27a1b0a3c94d25d3f0a8a93ddb3a393af72f004d340780c6ba732a0626c53658f5702300b44e784edf9fdd977b4dac0572a7774a4e4721608807f7965c5ae40653a1c9d9b24e1f830975f1ee4ce2beeb3a3f9280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b0173de3cd22350b40a0290bee595613bfdb34e07d4496042f7864d3ec9d7afb55b159091cb24e0b3ec2d42a34dfd9960230402974ab4bc09f552ad5533ac33d2cfb8f1b5add0f86c01e08ea5d2701cfcce5d2ba486c23601a6b7d5c428c42a411c50302047c435bb50067306502304924de6a9ac7807694e92e4d317aa61fba75518ad9b32743902b218d687b1d3e9138f2649f46669774952c02403fd0b2023100da89fe01a6a690a66aa4e3071d8daa540ec5febc872c73c85141a58d78919100ab1e1f92026184c9aa40bccd0e8a3bfd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307516971475b2396efb60ff46771b843f425275705ed13c3f8bd840b6a298242a8d29fe8a58ea0733f4ba8851fca386c20231009743062dffe0da16eca390d75b0f245f03c70d5de975373a8408a951e2c997111a717c17518596bde7ea9b5d360fba040302047c435bb50067306502301d2cf0a65fb4f0eccc7b09dc7392f725272cbf79164c6e4f6d4024bec879ba61b1a6131a8b21e23b8190f5434c093d830231008c08fcd7ed2c4adca4ce7f83fd837453177162e1d5e91919e168b6448ad9f0165904fd9464fe511b1d26406814874b740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230340814960030901048e15182ab03dc22814d9f951246d93f807b14eea88269c8b1699f78920c72de6f51a834c7270c3a023100fe75d7547d948dfba024f324c40b5da0cc446e63faf8c0d416b752967e01d322e9f5a5f3f0ddfc552314a0b88598eede0302047c435bb5006730650230720285a2325e6239f90c2db3a540ced3caf9dd986ca4072bd9effc99421515f10bc7bc6b43250884b0497a391c17e727023100d2bb85f2807b193e7f9dabfbd583ad2b488307e43b3595851a2f96bcfd31d0b852efaafb56335873caa504588d5aabf80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023040ea117ae8a24e1c8bc138fab62ed7f2e5874462c407a6c692d87ce365b9e81e39933703f47cae7fef8f890eb65a10310230112cf6cd651e905aa364c6565f7a07066b9b3e5f114dad0882f42a36c30eb25173d0bbaf1c9ddfc0fbf8e339e74374e30302047c435bb50067306502301b9806df2a8f716a482a50ba7a3df4831c7b8c7ba05c94def6bffa2df69b6a931d8576b241bd77ade19e3a0b05765b1b0231009684a89a537b480b51dfc0030bae88132f03d09f2873fdaee37659dfccd99f58df9c145539a11dd7c2aec517f2ac223f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100801478a60c3500156a42d1fd0003f862f857e6800d7beed1506ca72b4abff2576da5311b5b039dd086eaf31181d9977f023062070f3e3b35de87994948b9945ed56e0eefe030b0d83d9eee617167f0cab61728780b2639350e550a2d1861ff0a74bf0302047c435bb500673065023100fefa04e85062eafe57458ca2eedeea57ea716b77839ecf77fec7e850a3142421192ef2051077a1eb142693245f56a31a02306662fa6eb0ca69d499753e045c55a7ae3656fb0165fb4dffc06cd25f2986fae06597594586181a22cad7784d8981920e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d0d540c9dd2089f1983f55357f7b49f200d46e283976129f800ea5e71203748d0e4dd464dbd5be05fb0f291dda93028f023100b0ae16f83752ba1b6bf3eb86fb2d49b9c639bc48ea0a3f62aeeb2c1b68b164c089f7247be48d2e526efcedfa16f00ba20302047c435bb50067306502310081e8c27232dcdfb6d30c309c7f9f2594031cc4c0e1d7202b823cf6fc2a2d42562757acb3bd045186e0f47be0fd1a2fa80230674706eeb8a5908f1b44310cea0e744fc7aeac8e6be1cf300d5ddcd51109bd4fd9e13dc755a0ec623ee4519bc4882fd20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b6f0c7143bef61bad863cabe3a3e6242d3d2e7944e4e731c49477f506b84a0e4170092db876f9c63ad8fb29bdd45b086023028e197a238e2b73604b4548500f2c211879c42b8bcdbc66175638fdd7fcc23c172c7c0b685b528f5232583905e41f0730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300f9a3c929802260abf39cc2660832d5fe07feebcf359da15694d81cd996613b1da33292bcc01993cdfbb7cc92ff56dcd023100d528aa3054a47594dcffa8fd3c5bc4c89de8f9a14203140d15ab6e162f31697ea32852c5c98ec3f5a36fce5fea4c869b0302047c435bb50067306502306c30a96550782ee122a8f01fb36933037118d5d54e1c44a1dfc1ca8d4e276dc0e4b2ae991f68238f63b8166e6e11eb4f023100b6015e620d5e3a53e639e5a313dee0cda9e61c8995c2bec1f0e2114d7f3c8b83254a9fb338f2f318011a30479251add50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d1662af3ecfd7c88b3bdf7fff63e1bcf934fa0736cd4cdd103d59eb51c182bc2993647e3ae95738b0c4dd550274f3b9c02303496f5dfb6e8475164deddb94e7e6f2a0bf9f05d381bbad65c3f844cde2551c6cb90a027cf2862cd3966c1e74e7a52410302047c435bb50066306402303f18861aa0ecd3c6046626cb2caa2ca25f443056f9281c71f27536dc4fd77ca8e9410dfcfca533c9cf6101d5c43fbecb023026374e066a05665e81a1e917fd663e1a46625619a4c92fc20a0187f3e76027623343fc5d2f81ee834f2424244498e8090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100de9117b70ab2f7f40241f080e11205ef97165547e3aec747b7486e606c6a7727e2806546d2a6488005e077c026fcb85102306e4ac4725947aff7bfad4c21256e7ed2a5fadf7947b2948e7b97fa6517c9ffa37c8818fe92c5592fbaaba8a2cf7118860302047c435bb5006730650231009b85e7be158a71668ea2722b8b88abc877927e448cf7ed733e5bb0ed42c3122dcfeedcebd32b5ec7a1332d79f3e5a0de02302cdb53d130d04309c23ae5d0e948d6db60132ad964675091c73205275baafb7f12e205b26dc1250322fe76613cdf18f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a6057c379187bbaa6c6899c7e5e1d91780fcd0cc29236fe7e1e160519b5efcdef78ab668e33a7cfb9f127c0a6ee71ec4023100a051c56670ecbecbb51a206be3ce44ab51ce43b47b5300680c311928d2f7189efc83ac915929343d73b69488c6d276530302047c435bb5006830660231009975b8ce442e72f1e60d8a813848b68213426aaba07ec44f9cc6240710419b6ecb20a0576d131e16773047894c7c62bc023100b902d9024bb3a980c5d48c79fccc7e6f4bf65cfe7bb5276700c848b042ad2f775f0a30d9993689f5a200cbdec04617390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023005a33a5b2b938d9638a1eb5fcceb827ecf29dda409fcb532311e00f54ec4fa0d1b859934cb23d3d5945da227e31824d10230206a861037910f80b2f2a3a8b9a7c5516033f0d10b6ed884b37f10bb0eb3e2d3c0127d2d72243f873fb1cd88e05e87f60302047c435bb500683066023100b2dada04b7e8dff59982ae1bfce37bc52efa266c4665e1751a5dab0bcb284e7b3a66f6e6b1403c38b52295553d99ef51023100c5ce9833b6a45a8cdf790e41b50980ac970f957f6ea25abd6a21911e698246ef56be372bd23f4de5d89a94f4c83083af0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305be18c0e2c3704b77c7809e77f135dc21928d4125aba5f535116d403f04ac15dcb69c05a5f4902c7b4348960f18e77b1023018b9a4291cb5181298cc58b96df1b3959dc23dd049aada14c2c5215861ebfa48d4f40dba35309afbc6554533f12df4800302047c435bb50066306402304d15263b0715e1c078fbd7a1531724e646cc4ed8993968aad86a0e7f89cb856cfc77f99d52a75d640a2f743a1b321c86023052b4ce4ad82469b60e532c05b5f37c0dee6835e6ebc99635fc621539483d9d497c65b158ea53c12f4059333a0904b87f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c80764de86dac3eb1ad5c5ef89cac7e7779f87be65cf881984fa039eb240a2837ba331f98064998620abe7b5becae12b023100a4fc9caebef51a797085c5553b69154af3b86109ab335e2c2296cc3610609ed89757c31e326dc04d992273a1ce632f3a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009c217333abfd6080689cc908b3a0c8a5c05e15c013dfc8a472d75b7294e2c5a95d824ab25372d16bba3211056a2267e7023100a7262902a982eb7780953508f65aaacd7c98023f53d88e73d7e0ff45bdd047f45320d2279b810cd57b774f0398248a980302047c435bb500673065023100be8fe646800abb05b1572083e7cee13e9a72c3ee6cc878112261f6bf2a5af55a83fb08c0ac1bbc14cc18adbcac783e8202300ee2bb608d7b152304c03b3afd21f4edc442aef0745d399a460b02785f19a331c572dd5c729610409f6fa6540a28b4090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c624bb43e7cb60541b206e0d3badb137677ec541128ba938dfe4c496836db651dea58e15b91349291d6cdb1e41059b8d0230603e26a418629326ae1a5e87d1ec620ce0aad020a96507b935a1e30943957eec0e421216e89d2540e653e730f8e2953e0302047c435bb500673065023100b906862eab532f7d50a326e7083d2354d6e88d6b317e4468d8b92ce98fb66e29f9ac0faf5d3be4fe991676e6ab80452d0230300f4778703183295009150378ff8a97494ad27e372d91c8ff4205a480a86aa315f2078574b170fcbd1d4695a0d13ca60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306bf434790e500c77944ab4ab5485a140a2246fda4f06bb27e370910d0b1341e8ae34f5a800df4b729d3e39f753f5f250023100b398c1dbee71e8d3fd3e9962eb16fad32805ba05f9e2cd0ede1c12beb01f95d7190d0b935b65c54312f7ce3bc79131b60302047c435bb500683066023100b0bc6ff111e9bcf5c42ce40779a5e85f83ebb4cbe98f5477e51ce7a55728db586b2d14728f33d17745b2f268de0540a5023100c616f3554033a858812491e7e0a2426af92426c5af931f27766327f01214e42baf17863087123921ea76710515ea0e6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ba94ea6ec0686fa3b9857927e54f1d780b698529676089078dc9ac76b436bfbe090be5b00d8b2eb84a9adc273f88857d02306ba13ad2a294187253a0d4e58893f912124f85ca0d56a069d38651ffbbdeff873a40c440b005c0477a55fd0b967e79f70302047c435bb500673065023100a5e1117a0ad796a18f1e9e79261bee38b3a246bfa1a998f8422b02adf10d83b048c27f11683e91d8c7e2d48d584e37ee02300af336f5b64f8e8d09525cea6db7f27e11a6594f9cd48dd131e4320e4c5f57af10308c79895d5bef82a63a37c686c1960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230674793c88c64f206f58b949d00b17447ea4cfa99b3cfc1e1060e47a3763a0fb9040affc1272b3cfd22988338e57e58d80231009906bb1a39e876420b985caaab5f3b47ec6da129794804e4deda8671819518bdcafb472fcec6885320c2c44371a8e1520302047c435bb50068306602310094ba3da77211b3a60a4141ffe2641cd0f3b9a1ddfdf0beaceb8291fec1c118f95bf2e58fef2e6cf931938b371a0ba4dc023100e2f6cd98cd03215317229a74b8f9a184701239374f3cebe57c417d34ba9ce3ba3545a53060addabce9c521064e69c7b00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023065d0dcf2572d2ba2bcf09fb61ce747e53e5d62faea1c9a9a8e3c75abc1ef0f1114284261e82bec98f6549c87b7788539023100f7efb1cebb23929100634f796cb662677de7af3de47af07a4c78df9d4a186b0404cfe27d301aa488e1c67acad95710e20302047c435bb50067306502307b13385540fb07f55831ebd6f8f3dfb7773c8e6c688a24a17a1a87964d76b7b8d68bda564224269679b17a7723e2a47b023100ef59c885628d40c09feeb55a532dceedbcf80e6fc6fc1a698d146000ba9c6340df2e1d1814f8426f3affd8aeefc1f1f90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023046a0d0d954f4f67e893731ed307a6cc5cf365b5e9e345ff752f7f58b9442ccb20663be8df02f7db2d143c65e1942512e023100dc92ef46e91e6db33e0dc6d30f1dcae000b29bde5364b34009ce1fc2ec7d28277773dd6ecdf5f59bae8cdcd2b28a549c0302047c435bb50066306402303d0d0b243a497706e5286c1ff987cc662b468f63b70295a08bf30e633fa7bbfdffb0177e1d9d0a867ba1a2bdaa100b3d02305d11448afd7f584a7df5cabde1245172e59a2dce8a693751ba7435e27257b0d1411e9f7dbbfaa07968e89d99cc86c6e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023007bfa3f15dcef2191732c81ce9f2a39aac0301cb86d1ebae79f5e82fa6f29be3084c60d94c62219d8ad635a9d25a48d802300fccbb9cec5d6d56e3115ff12e8812f621853f5b7b8f691788ac4a62bca35c8ca10fa9911a43ef2cc6b6415d5ce715850302047c435bb50067306502307a68b792c17e73fcad2239c20f8261fdcc6f32a2c4059519ad9f309e0e3ea042baf89808fd87da703b0f4ea317d4d83b023100de7a32904eed35641a2e2f3f853f435747434236a02fa070885c679beaefbfc4a15efb95c849ccd3fc6233ea229565080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e716fb9cfca6119193e454572bd9781b29507c1a6fc9751a399211ec7d3fedc01b4e45c55b2d540d64132476c5bc3d98023046282046c93f6ed54b62db3de67f682794b22663a326df38b6d7c91a1c7e0a8ec1064ae1f31487fbbe3a9b8016db8db00302047c435bb500683066023100800ef2faa0c6b86ad5527174d07cb4dbab82377599d0052172a1590884ac194ec9cb183ac753ee0ce7f0e4d0c389bab7023100c689b3993ca7ab45844c17d293f8e5dc3074073757630c95b3a1beebf4e3db17c7c3adccb3f58655d3be85888a8144680302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e22662e905dd24853f5fdc83e24a7543e01521b9052a9b473e69944e8a609ca053a81f4367efee0f597a006c72190c5a0231008c5ae8ce26e4f767de1e52f7a4978d5b9a18979c8d97303525d19fbce277b2f5e98f8f289c721f2b7bfc4bfa97d451b30302047c435bb50066306402304dd8b4bf121ad03d42f1204b176b5c3e4cbebd989efa82f301f54f91b9e640a93b7c542b47e4179a10f24a4456a77060023061b39c2dd4ea00e5648dc78bc771ac596f52e5b705aca30d7759779198d36bfdb46610b4b78074f16ced559be1d59ba00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008a56d126b47434e808392de31404de162d997e5f529d2f0f7341590e932cfa1639a5df90bc8e564d3cf6ea90a5163c36023059e051323e153851c39a46134c3cba1563e163629691430174a5f027a8cbf7e25b60dc71404afb1f7dcbe13ced8274ee0302047c435bb50067306502300dea74f6411ba028af8ee7ba563bda23e3025513b237a7c65e0e46b62e0c4328457f359fc95acaed1f7c7318dfdfbf4802310081094d8cb147d6aef238e466dd900d895bf26063687c308938c4c4140c1f7ce9e27f655bd8f1ffd0b65eb78115487e510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008f068e48d995d56e215364881d228f0f787b7f0d68d1c9e739be933f55db34a87e2c9d57df59fc377438f05f8fff28e1023100eac11866127497d3fd7970faba5a7ec8e44ba40554f38943ce578db7de0ce3890a9569afd9a83489765f494abc0090600302047c435bb5006630640230788d9bd7f3fdd823313b307c65b013c8baba593d856d4c84c24fc40974ac7aa80c132a4a685dd40cb8adffae2c51d6bc0230307de98d308228f7b46542b4a3fed01aaecc3422349d9309d305bbd6e228d3bb147d8b78497d41656bb2f677ef640b160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230323dfffe9e71ae7f5c203a40714bdb66bc47897982e4630a60253f154867a358c69a18350f276d1a2dadecb1a57e40d0023100c6c78e4fddc6a0eaeacade5b9a8abbe7c075162141e5507aeca46a987da0f35436442154c745e120a6526e457e777ab90302047c435bb500673065023100e599bd80df856564a53c8fddedf4aec7eac48611d72966bdd4fa8977802327f837b1cac0886ce381ca95811a33a8f59b02304ec024818d8824cf3057ab5bef524fa77b1525d31f363d8349f1af3246a776d19a42a6b7877b33a69f81db5c18af13d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306b55292c19f828a50f535cb841e5c207f36f22e30716763ec8014faa99779feba9e608a509adef7a57e4abc9098181c0023100a4378e8acc38641f6e121397c06ed0f244e7505fe11f6246c4adee30f04db6c8e364ed6f932e081dd4592007191443a20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e08b9e3cc4ee8004f980d389e2998ed267bd1842ce80310399673d05cbac4a1294819edf0c48349ce404f34d087bd626023015eb34b8f35a8e752c28abf1cb63649fcb617dbf595c5ebc43fa3d4257fd93a3c8d9c72868cb22dc9f3e214567fc05800302047c435bb5006830660231008bff338f82befbaab7e71b615d1e8b826ab16051dd43ba23b4f03923d121b79054f81a1634acc4e06bbf9330bd54cd84023100d95425964d701c2138c5af853c092920380fd8fc7c6e63b1f8fbeb0ce0244a5c89f9a724054028c944695be8e67323200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305ab43aa23d69bd33a2988d6e990814fdf1c7c0f8bdf1f5d79dcf2c23b9782290d4292099c8ad527daa3bf2ff410a421b023100cf75aa4c1810242ab17705a3a5dcb3da6bd4dd2be4b2a6963ba9fd07eaaaee79c5ed75e6319a2e40cc22cc9cbb4d63bd0302047c435bb50067306502301ea4473228c0daeb732b1fb89fcf11239339a459eb60b5892bbc0ba13fcb69e5cd31567eb7b194a17f66694efb47508d023100e9334a4afe2b118ea3d9493a0c69f3d4d01bcd98ce42c1aa4f4d8a570a98e13d32d7d8938d806fae53e62ab4eb20c3ca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ff21e0ecf8dba3c625ec147f91022daa86a1e4743cce864a3be1f65b6be120f4ee458a300abdede14f0a14ecdca504350231009ec6e7554a967450842b7747517a04b5eb0be3bd6f85f168ce4c6ee792983958d662179c1d57768f3d632cd4d5879d150302047c435bb500683066023100ebfe34437a8efaf11f85303031fd73f268eb8d8e10c9899a95f43297b9202a4f7d77d289b0e43efe4afde6dbc583959c02310085d1354122130c447ff6daef39bf1905086f08595e0e351d8338b9b0406b3b9a430e1c7c656aa7b103cdb914ce404a780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023070770aad6e964e2151cf668ed8091a50c443d7d15307c2d848f9e24579c792f40098718a244a32c67244062707d83d82023100f97d04bfbf049c4986e138aa873eebd7b2174d9a67c9369226d1bffc24689c5d5bd19ce47418b3f2b8961796f74860c30302047c435bb500683066023100c7f99904b9700d4387c897cf0cb76964938ecc8d70a0b3c3a045684648dad966e712f0a34482c0dc13b2aad9e21a7a95023100d21000156f12cf6eb79f641f5ace0b35a0cf1fa7b537cba0ece1dcffe43a9707f6312a92f67be9c47bd7f5810ef5847c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ed14af84a0c17f5f993b9da93c65e3d7622c7a1ea0924a8c2af34452a53005b96473c952c54db650d6b38b0f764d6fdb0230267da2c0f2bbac2ad1d3bb5a198bd626503f09f9654ccc098f8c7151cd28fea1b4c48f3c3551f9f63886e4772722e8c40302047c435bb5006730650230591c6455ec217e00c0f80dd2c138756dc42097bf794e367186e1be1e28a15aae6ba8a527d538735c332eb9c000fb65c3023100e9780f850f80e71b29e462054f01ce88f53b7e625e015a65b967ea27fe81d4badbb74ff21d013adf37d40f8680eeb1390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023053a24f593672a7ed049ed22faaf50f52e84f841e93cd72ec8e411cd038a675eb3df278892581992eb2525cdfa006d74602305372fc8e88c8a40a2c77e98e423dee44a4d9dfa1408b8285cca1ade97639c44ae893c725137c9f5c8d63a448d8348c2e0302047c435bb500673065023100d5bbf60d41513af1897d49fc9c98de8779b2ca88d5e144c9857a7def9a017115987cd49852adacb80b12cd0f4c7b2bed023062e829304362f370c67f2f2b4f172df25249ab5a78f144e758c23937193339319a8c7508c269ab0f668535d680a8bfb60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b22a82735ea917c70f6dc33312e667821511bc1633504aedad45431426446561cb2c57c0123bddf3c6c92afc445e3d2b023100a8dc196dfeb1d7f0ff93043e43ca32d1ae1e36b0182165f57946155bbbd18028cbe8a523616240a714407354aed41c460302047c435bb500673065023047c9c001c99d71822f5bdcca33004695fd93c251df0a9f4a8962afbecdd714b3ef5c90da7953b2ef753907bef26d4e56023100d54e2fa7a464e88067533e97ff8c245e659ea32c711c863a28805702397735a0669a90972fcfa0fde3fc0bbedd21bcec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023011583fb76c18672f6a8d706ec57a2aa1d26b2cacce7c8236e227fb228119a872175d4d8783e120772333724077006d80023100c3dd1b9103b70e5a597e932d0ff20fdcf2da543307007aa28c21ce382ac017c3e023f7d9b737720cd1cdf08b56ab8e6a0302047c435bb50066306402305648bf58db2a446bf3007e6713eab2beecce2d19495d23a9fca7288c9225315f9b97a5a85df8a920e9a4a138eb78b0f4023022dc4b9c0b742614fa1f5bccea42604a8e7f43787066e526706175abc228fb96133f01f21a0b451f9aa11c9b0f476ecb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100907c026eb2a97efbba1b53fef757e2884e736e1ac38ee147f46637bc67f07c0d3c3606e6508d038fdddd5fa973e6c23e023100da67b4ed0f32f47b88d5d44cfa89f38975a67e98b86e31014798792a63a694957c772af00041552515dd62100a3767aa0302047c435bb50066306402302a110f9fa433f4ab62b5ae7d495d8d6b2cb44c9ba7dc3ada1bc39784500dd2c779237c0d4fed2699d8be75b94a25b6e702304eb485a952164e3365ac3be168de086c3a72493581d6bfa117c3e6b9efafd493ab47b8ed02e9072837849e9330c27ec30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304148743fe1808bb8c4a8e30961880d64963de7c379356972ee0abce6c1069735524b107388eaaae6cf413bae02b42074023100d53590073b76be47fbba21aa1f9927ab1f33468c12a3e8193dbb2482f89d9a077f10f54c6b6cfce90595f331b11a7d940302047c435bb5006730650230447d7bf66ce537396b0e9d8168282116b23af29352c76a5eb5fe5df422205560f49020b2d3eb93eea75aaafcb0bea4cc023100c2c0120b072c28a70613f27cade4ad1206ac7985387e4bf956f587db8e7249eb6f41c3df51cfa71b5a4be5cf17cf91560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305f27e2b65d57fbe3c3adfa7191887c8e5a4d65b7f8bd0d052aa7412ea8a411eb5a40107b19d56037bbddd97c485e78be023100f65ce67ccc0b02821f44f48fe01bd44174235d9c301a911b365f89eaa3714f4c14df0b9b85e1bfe8782d1efeb1e4ddac0302047c435bb50067306502302cb66a0163ded7a97e3d05d92b98be66bdc05fa3ca5e9a09ec7c1ebd4cf77d18f444bbcd2523586259a75da1f99fd86502310091d83a41197f8705cc5ffb5f93615663fb324bb9b1ace384b10cc7a4e8ac2c96a9abe5584db30ea26d9377f71ddc14a10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023079c912fc0d5ec6b3f19d16de72f318767fbdf2e3c478622fa1ae393f8cadd82570da690203235d06ce0dddfbf54c9798023100a8f86afaae782027b8699693637e15999e6c398be75251110dd88919e8f2da33b97aebd54aad5e891591c6ce0954d22d0302047c435bb5006830660231009236356c8fac877b1bce922b168320f9dca29fd233a688e718f617b0d463c86e22b36a931dfcbc692952fc1dda87110d023100877b7e966a82166bef5efc4a8f5a29c0c20bd5ee700d2f1e39858e6c091bc23ee1cffb06ae28fcb29cad9f4658b5e82c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dba24e06c601ee050f21f336bb52ebfa2d3bea7df7b9953090a836cd2c43bdc7128d5fecb8cab4012a4b112c90f5d155023100bfed4c7e5fc707719108aa73d5b3ea4968b5d6ce8dcc629247ddaec70b8ac0c60dd34f4a1473db15b971519d2737ffbe0302047c435bb5006630640230581981c48e85995c8d3405199416376ccf60a9b992356c87ea238c38dbf83312ee9a5666c319cd96ca7db90234905dfb02304dc94e548791e5846fed5730f73b11214475c457ac79dca6f4360f5b74ed2685129037759620f975d9cb93f4a5d306ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0c47925a176972985a472b56adbb65f2f3a0bb508a62b74f148d49aeb159f53245ccaca3da541f2cacd1c2c8e5aea2023100858dfe7ee3e415f0b2f588776a4fff4e3a1fef4e05c952d7a435aa372fb385cb9fddc6f2a96c0a564d2b23e2c48129080302047c435bb500683066023100f13e4d841e9dc2f37528cfaa199cb96b94fec7a118755762a2851a28c4f77099b0b125258b330f545c0d28ef251a2118023100cdab92266c58ba115b9f6153251d59ecc510e42d93cdb652fb920815a9be959ada1af01e227cce853520c43a8b43306c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302accc508612e5a1171fc3a510b795f8d2497f90a7113f14624c09111b0989cf6b343fb2bafdb13fd4fb747552091a8ee023047de3adf651f54d11942c9c8fe72111a611f3a2be9f0adfb3b382370c75b91dfeba25da419a4ab501d5b78bfcde83bbf0302047c435bb500683066023100cc5909d21dc10b37411ab336c566a86839c873d0203448c44030933bc9241fcd2db7e097f1fea1b030fa707ac4aba619023100edfdb2e4d31e7b60b1d6dc3347b69759b9ed5f229f700bc04b87bfd9f452f9f1a54684be8189b525c6567451608aa0060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a4106d76db97f2cc0f548193cee36a12a3f4c13c03b87a5c7fff3cdda1fee66c52075ee8eb9b1ced4b72ed0c68b7e95902305dc42d2b8d0954de60bd1836c26d5935c04f4ad5973e808ddccb13496efaa1294346a5d2620d9384ce34509409ddc38d0302047c435bb50067306502300f34417d00a42ccadef48e3858d77685438e21e0af9696c68ce381a6e3d1a2ea5c0787fa4e02c34e56a3743eedb2f8b2023100a6f5395a32f0b006666cccfd64be22d917b13ae55c4b2ad8d20cf5930340090eb8f477c10b077849f6e8e1664ee33eb60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310083d2af4547b3d6b6093f6f040e360734b2327bca180b2bacf184de94ff9ab7fb6c2d8101b84c94274b7c5e324da886d402305838b4e3460d32ab9e1a1c28524ada0d6f589e1ff7c46b0c98b0ff6445d9a57e7398585acbf4446ffb45bd43495077610302047c435bb500683066023100eca912ec5c4ece6bc3dbde00f036d149a7452a3d5483b69937cdb17a818134e53f6b3208495f94957f7d6451866542f9023100bc6dccda6c0cba1a97560da8d43b32a8eac0dd6c2face5503809df9b6dad1a560e1ff8efb75b87b3cdf177ce1fef6cab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e2ec281ea5498f013b393ee32920df90a6aad1b86fddcd127d749d16e42b26a3bd00ef129a47e31cbc09e392ec77dc8202302796328c2a00df9d4e8fc20c9853ac4b971039f24648f0ce06d7738a0f04c470fb200077db4d24abf7dcef3ccb48c3850302047c435bb500673065023100aeb6ff366c5eeeeb31981a59c22c9f572df55768af9d33ab6f94fffc54894de1867609df81fd3c79668a26200f30420502302dfd655a527c6ca20669afc13db80b1567b027111c8e0040fa270ecd02dfc76899fb20efffc408a3ebc2ace80c2ff99d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304be849d8ef788771c2c9ffc1214fed022890bc1114385be166a6502c06819a90ca4686e73687d42ef1c8d382294b92aa023028647ccb103a977d8fe0040a7181290e27d92e83476e6b98fd965b01eef6f26ed177f16e4b83e906facbd7c1ffb94b370302047c435bb500673065023100fc9cef82c321deefbff971656b123cee3b25b3c8a6416ef56e0fb602150c529d7634c4c94db07346255a5a7deeeeb4f902302ea64eec654136a6044e0dbb9b03eb77684219d9f7473fe292c0f98d764311e5c885903c4ebb7053ea4d16e0cb1876600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e81ac1aa481eb68832ed5a9468b75388a81cc2139ae0d6f04a55a87f457db918839ae80d84dcbf280f19b2863b3bfd9602302e304ce437e4dcf57d8176a4a70f1069b6659de28ce0d9d47c9c8585bb07ca5de4cd61129d107dbf7f88cc7d55e306c10302047c435bb50067306502310097711e12311ff54ee91447ff555ab30dd030e96ba4d71f90c0c876443e90b88c148cbe2d95e78cb0d6455819f6847973023009cecf64cf0aad5addde839b5f913754c21ec66721a531141061d9649c24da2f5f5f50deea615d7f563d154aad0a3b4a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305fe7d67b01dab20f59902065bc245012b9fde221327d3242b545958387c9138c6d0ab8397f1f27f8c8c992c3e4b37b42023100816e2e61737397473ebeb15cdacc59cb60f5bc5d28608d1fa02e64753509a5f9b71bcdfb22ad5971afea2f750eafad090302047c435bb50066306402303ee75c679c0d856f7e1d179c288898a795a62e3b844253f9e75d1a546a5d921640b7ec19a5fb423c14bd24561fa031be02304f41c90098a33fea426ee56c7dc3b0e60b8b902555977ed1d11ad777e7a0f69b6e4123ac4ccbf5f1e15ffa687cb4b3ac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310089bdf7210adfe1298b7203c97dbe47379d197c6f1549e0b6d527f85182023ced389c2fc62fb3c6c14f290b505eb8e490023100e40ea035fad9ffaad75c3c55feb8d836a3a794024dbf74451cd2cbea6d0f955e402223aa717eb94ba0a6143779d64f840302047c435bb500673065023002e4df9481b867ac7aa8b891972d88af4561b07b8bfbe143ccf452c762c0f89df5b7034d337ea25af250366c8b856414023100bb3f28207d9054f7703f736af375cfd0b381a3d919a5f89e3066664f4f010e893136dd65a9b4c8443e083316ca2a01df0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023010be42bd6f2a332d3089801d34cfbaf05d7ee212b3ceed38630217ab0978138d573714eb3c4c6113615f7693ac2247fc02301bbc625ee177dc76a26611d1ae1750042a982175b7bdf191929f2592c27f54fe40ed3cfef145112cc897493ef20aa94e0302047c435bb500673065023100ed53e8ec75da83f2387cdc403fbfb5bda97306e5bbd115f5fa62860b14ebf4898033c46fdcfc81efe5b49247440256b202303acc584d1532c9aee4f3dd3023d9f60d61c063745703ef56eef31cc19ce740d2f755e97f2d5981521f176a9f7139ebc50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023077983088b8a3650335b370b8d90a505c6d13b211a408c960049fde17bdde0c3290abb2dcb8f70c071c51830e3a22c334023033199b1c1a6fdd819666565f2492afb437f1080d4814ecbebfc70a77c9bf37d9dc6bec5f6cecb832735af75faa0151c50302047c435bb500673065023033573b7cafe480697868e017a3ca4b7ab348e04b30999db58a59f48416d018ebcd78b5b26e7f66c0ffa9866a375f9e5d02310090aee355e4cf05fa7210f50844d07b9141592b0ac8a251a58a426edb78cde27be32d83d18037aa6a6d515f3825fb571c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230655022a8b5311e4482b71ef0fd70d0ffdf5ae08190733ca4bb585293be1b3c22eb63e70f1fa5fd30cee7ebf1069f60f9023016f77ec12139a9dd072cbe33ab2f20a47610e7ad77d63454782d4ef45039ace86c3b0238bbce1639a1386effc9d3edc50302047c435bb500683066023100b9002253f396b60b8e6f8e0a6b53511fcef82bc1a83b53fb1a75520d746f561498afc24153b790ba9ab9a52b0d7b6890023100dff767c440ac2ca7da54b93687ef05dccab0934b0c4d47804f48114da330eb6e8e0969b4fcebeb44f5c099976fba371d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300ef07dc238ec74ededf6c705e1f137b333ebc56ab48e44b12a7520103433c68334a74f092403ce06187f5ba8faa024c502301886603e7473f04b4317d1709c6b5cd8c20f0f481f50ca0304682aded1e2e2dddafc164f0bbf1ee31e8a424789e9a7330302047c435bb50066306402303d13efb075ec11ea4ed74e0d84e77337d9302dc98f40a3aff72a1df935245fa6b0dd5dd03717075c3753fbf861ec8d8602306160f0a55972c99856f7d04c6ca021da3fd2f87b42880ef25890f981a8f1004f593df8f4f72761aec42b8194e847046f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bf0aad2dac667015da83e04b32c982666d909cbdd570e3cf5d3a5b2894a3e632828d9f39ecf0630cfe5e448ada6f77da023031e918ee029e7f5c97b332ef19f53d954cccf8719395417c15ae16c8a3fe6057ffd5aa28cb22f6baf491215c6a0090180302047c435bb500673065023100ad5f3781b49856d59d4d0542401e4bc97a7a65a1cd78384262fc80ef0321953ac5ee8ec63c88bca3fe4457edfaebb2ab0230615f5384e99e4079d33b56a7042462f1c1779f426787a55e6ffdad59a3453ddba02dc27a693358789bc8787a9e3012480302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100818480f72a6243005d397df108b7d003adc5650cb42ebf8a0a7033d1af19fcd8b6ab5296d7d039f3c0f76de50b1ea5ce023045df146546c218359dd2a331c75ea7cad9a50d89daa3f793793fdc3a50d9a34112905ad5edfd43369ed7c70d7fc726c40302047c435bb500673065023073e7c7ef3c681f218e2d5398398ba188269748be3aa6e18305dcb89e0581bde4efe3700d9b45e940ef4e26a4872a9b41023100ce3779f5977a171665115be6a7d01f3c0e8e08a42530eee3e72f252ae6a4841bee0f3b2c7d9ed9c4ae91e017dfcba80b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c0f1b965abfcc4fc4cef9d10161e07a349d50906fc714331d2958b439112735c9f129ef599a36b2456d95bc29bcb1ca4023100da1e2a57ea86f337b4840ea25ac1ad45706d4c45c80e3ae010a6baf9158d0f53540385f4e4a554c1b6c3b3f1a72ff8720302047c435bb5006830660231009f6038a48d7df78d7439b449d618d56dcf34ccfe28a319dac434ef69643ac5ee98f7c0c7437c4574ec3d9fcecc83930a0231009f37683ab4d0be6b47ae5d73a4c997ff2dfc0e409f19e27307a6c0d689d5e61da46b3faf8c2d737b25167e86be8622ca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300975634a5ce5e06750193050a41da5a083a79cc7115bf87953f1a5de7adcc970fe37621be04fe1e91e6f012bc31b018c023100a270f729ef57f144dead716ef8e88a989c412ed04f445a8faa40f9429f4cad9c0a49bf8d169941949e6439ca289159690302047c435bb50067306502300752c2e1b17ce4198eddd089f94e6723f6bf37a7e87538f9d55e4b365aece29ab7ba994462e541d01d6224ff54579af6023100fc278cbb2e5de6e41daff35c4c2f8d15072b7a533f03ff79eee0d7a3b2de51119163d99725202c9bbf9418bf615ab1da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008ff3c5c7663e3687859337a4933d801d4b58faf2e0a1d31762c70eb52ab358a26430475e12a0c1e84de8e5712eb256af023100f943898170cce4e097f653637276b6819e619e2f15fd1d0cb74b483639aa6f5c29c724b6a9b57d9debf6af941069e55a0302047c435bb5006630640230657bc7a30a4e54c801be5c010acd3dab17cb63f14c51a1af31fb63bc4ad76b188d3d61e833e26c36a4dc8490d3bb648702306933cf552a3c9953e27877a400c77746c388c4f4a965346c0a8230e8c20cd343de17a74be1ab7efce0012a7747881f1c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310086ff44196deeec080b990eff3670403dafc2f02d484cd268f8cb3be289e8dbfe28a0bd8f7f2c9ca5de5e02a240389ce8023100e5663776a97767526887123c80a8a7a7e0af258d06481d11f47607604e8347b6925be50fa2c1fe412cca56dae01519c80302047c435bb500673065023100d53298d0421853ca3c21203dfb4b28cb5996d7c5cc9606748d86c2451d63b58e3847aa9e9ec9497843c2f8160117a7c902300751f21a2c57657d122c58b859936c4550ff2d01c28f2d4f7f5671da1d79d796b86aa3d7a46edd8e32d508b254c753a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230775171a213e3c70f22340afb0515859e820e559569b09a8269972bcb50ce8c93563474bd67105063deb0fee697e1a6be023025a195662345fad794db9140cf2a2c8146f91f4e86c84dfc8eb4bdc53ef59731d64e21ee2e18c865a92846664efc47750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307bd662662665b840ba5625056498769d7692d4ac694a7d7a860427aa484744462f84863a2f6a999b1d7ce3ae2f0672110231009c3438bfe5a95c86a73ef88186128558404c04e09eed05c4efe9390723282ead30ec986bee5d224310427b09ba483b880302047c435bb500673065023054e86b90e3af90dcd7e48675e06c4f846211279cc0fae8826fd9e8da8bc5c9180db86d3026b4fe4cdfd90d6d45d35dcb023100c20c84b410d17d77c6b5a8243a113d0e69c3a4fe6ce61b89dfd1ee80e1e144112dd3c0220aac2646de2b8f87605d26560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fdbfd8563faf4cf5bf2b32f0768b92fd170005f7f2658e2ed542f14d96767ebec3b1e04fc7bed6a09ca65ed7532078890231009ae961938bed3dadcfb8094912e5420cdacd8cc6088c76f9700047fdf1c3f374c0cfd436eb66c963e550bb71e77424690302047c435bb50067306502300d0923a3966599366dbbffef9f2ef991cfce64b6e5043857a7fd78fbe68e3db40f73ebe3f05ed85b3180ab939c6a5090023100b58fa4395939eaa2e90fb66a7149d494a0a89f8e2cf73c29bb483217b14dfb5745bae69d39eed5a6f8d54272d628b6710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cd0d6d365c64f16a5f27b1d444e9b4db8d823e7bfe122e05bf5525b2759c2bdc36cdab6253595147324daa5b6bbe28c102300f5961c633f3a54b93ce4cc43fdfd1ced225a55f1f17313984635e48af70755c82186b4a19316b3a5fc3579a9f24b9810302047c435bb500683066023100bf3b44f3ab8fc672b687d9889be928090d4f7d723a544ad848578a93e197cd8bb93ebbdcce0179269a67e2f14b4a2134023100c6188a2aeb2e87ca358de9989d9355251ccca727a7f1427708d2a08d8936af91ca55c56f0656788fb0b06e4fce4344bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303446ef247c5296347a6b67be6a4349252ca54d6423d6ea2772b4b37cbed176acbbe61c3bb5a8d1b95f68b2035c66819502306da72dac110f8f0f5c5a578882295b7b9862837d5520a7d57ddeac65517a1ed61f6db75f9a3f96b9f9e99195e2eace410302047c435bb500683066023100cb15173ab072e0bc3b45ce3663fe84de65672eb8cad3370e531acb275103fdcf22ea2b8e452fa81d04077fabb93cda970231008faecf9a075ca5f84ae7ae59cb792f14d02bcaa6f6ba30fb4161f6fdd1cd341fdc9580e0c5ef942c160b65ca6ceb4a130302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fe275f526106f96657c19084f7967fd569cb361b206f1d79d2c09902a371a6f9b3a7790bc5388434a65e74e562733224023100f7b5646d4c974d59956b6eb29db9cfaa084f7b52618d3e6474c5b5c916bb5e81506ef0d0728d4544b73f1920a2f6fa1d0302047c435bb500673065023100827d6b2e770000bdd1f2afb4a0e7265530935740b231e99522cf7a834419e360e2260b97a38d5f1b5936b364db808bb702302be10bed498633203756f0f64946f6e45ea43bd10ab6d7184c9a305fea42b48033f5847b2dabf14ee107e469648a46750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300ea85b62bb4b01997040f19478aa08940ef4488bb4d07d101e09a3f96cc00f980bd459cacc3e6e8987718d8318ac69b40230140d1f09bc32370116f886f9bef9cbf955074f001fea74920aab0441878cd3d3009c6204ec3bbdc12d22dd40ed7755740302047c435bb500673065023061463091b3e9bef916250ba182d1c62e7adb26f81a851897770a952b0ebaf4849207555dd4882f1a85fda6f456beaa43023100c23d51260054a81a9e4aa750be39d6fae0e6f33bb47b4fdc4a04a70fead83d94475cb8efa22c8118a62a377e58203dec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bfdcd990956d36ffd308225911d6ba5c2419ce9bfa2964c7a4f65e6a6637c22e309c37e25fef318d014115c2f23b424402306dad3ec81ffbae7aec66acd00c7a1d07528bf7e9628b0e9bdd17b8fc74b8355e951771d633a51adec00804ab2930b3470302047c435bb500683066023100a98bc7ec02dacabbc20f62c73a523e5dd9f0c692d12e7ff4b9c3c0f6536c0929aa699d4442643336ce56307c5384e1ac023100833835bf232f4c15a7565cda5e97313a60d584ff61396c5cc4f4565340478c1f1d5c331513d33ae01e609035e305c7100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023008d46b919fb9517905a0c75bbb67405c708de54c553c90b964b020022eb96b6db0158592be46320e64cca8df6348cfec023100c47a175efd4280dbd9614db7390a012aa389caa54b41ae75cba7c935da7acf36766f3b5e89a7b71181722f6be22fc27e0302047c435bb50067306502310097e1e5c4cbde6b9807ff2165f4df27630b68e23dc7d2912caf99a93201dc28c645c5586e8331fae073c1448a76eae192023006832321a6fbde7ded38c90bd575ccba4a840f20ea5ee5417efbea54110e58c666fb0937f93994fe95e19fe54f0695430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d0a78f66059b2067f21c52776236fbd29601d50f2e464589f4c3f3a48efa45b72bdf22c786d8e5823bc9b017e2bcdd86023100b2f0730e1d97cf588a23493a666b55b7381475b0765f252a14a5246d778dd4399f0c0ae03546cf29b3f72c34176003d20302047c435bb50066306402306d70ae4a0d704e48c2e4a7131df09589d30ff453e3847e1ec1570400f261106364fae5c63d760681647030135cfd3ab802302d9b9beb32ecffce479ebc471d678f2653d89c88683753eccb7c24b1855e7379ac7aff73ae9b59432d1a0f07bfcbcc470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009e5ef7fab1b6569610e14c8b48750b83e8db3334c05b4b01fe78f4a926e570659a5a69b8cb564545ab824cbdf2f6bd840230690c17a8a7691336d1b5fd78c4083c96b76bce3f69ab6e93d0d42b23e3103fd7441e8f72a826984485cdbaf7aa7431680302047c435bb500683066023100817f271e11e48c59ae292fbd63cb28837598ddb028e3b70b50b8299dfbfe32391e6c5cabba85bfd1e6c848457f588411023100ff5fe0c72f605e2e0086799fe18fad84cbe422188db5dfe68387a8acc7c92dbf47816bb74443151b81c8663e753edc6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302b22f64bf87a9d41fc9622370f17ff5096038d1f44627a2d4688632a5c15304e5665dfc8f7fd2724a0ddd857f68d7918023100d56909dc787df8626d128f0c13b4e2e4012446d97862ca28604f0b9c8c8ad0f6454b5c46a07b39edf2b8a8ffa2ae28c80302047c435bb500683066023100ad11d6ad9cf2ab20c3068b66692b70363ab50a263ee718974185fb8b5e303a7583ef31fb92000aa4406a06c951801ca9023100ff522ea11fe551881d25e4ae7a9dfcf713d636a2a765bc989f7c6f48da837c138f591c18666681b82bba5c5bdcb55e820302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303f3d524dd5eb7216f849dd00fe63017ef9eb34f6cbbc29520e5abdcb719888546cc4fded974dad7cd6b8749f01d0c722023071e105b3ffaf64c43ad6fbddf34c1024db8c5b7a68c74945eddb61269c062c2344f075f835927cb0d62a5e83634ff6750302047c435bb5006630640230033d2a136767524af3f08b4619f2de2484b089512b4e2dfed669581b0756915811685544b6a7c6dc6a85925ca4d66c630230576106a276811b8441a5f9d4ae6ec05d31a05c2f9d9797c853f188bb8392abddc294017a7edf488b36e5e4e7d80a6e440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b8140591d62116265878bc3944f23accc69ae4ae8bed3c4c0b40b3e40998d9cadab92b2495d55db3903b16837d7684c4023100e516c8463b8832f5a1874d6f6665aec71bf12fba7a41c447396d12dd5c8784988cee0733fa7ba24c50723c360fbaedb00302047c435bb5006730650230369a833962ecf17d3bdb9dc43150208e130d454b8757703eeb7329ff005b0bd3a9f9fde92133acca74cdd16c8c02cb01023100e64f36e514a15695f68408283c2e38c302239467f4c7c3b5a93eb620e12ca16103bd5f657668e5c1cd52c1d67e99a2c00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023007360a039b4ffdef0894f2dc53bbb5f54fadfaf4015317ef5428fc00103fbb8c48bc431586663d6bf383ddf367994523023072c37f1737bc3b10e801116e74e4e7b12db335032560f64018179e434544e4de2eaa233ae4653f1c3b4e027596a5064e0302047c435bb500683066023100c118a9b410050a463eee05eaafaf67b2d094e2da4b09f76285298cb8f341025935d8bbfcc14e2019a3b483ead692b47c023100d212c67330404387e1ee42aced000eda13be4e45f76732e172975e7eb2274940cb0d700df31692f24cf9f542a7c6416c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310095efb67b3f5bfed5a7139ca5146cef0dba81c939c62bff7d3b7b56020e0d465a06ee0958e4857ade8883f3fab9bcf632023059c40feb5c2fc92804f8aa7871a586cbf19ee84d06af1ada4a12a3ad3b81dada8b99ad3262d502e652ee1d512d5566110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023043195c238129c2872a669d0ed763d5b463e9fee50c461d69b764f447f6c46f30890cd1fe62922f0618fe458e0ac3ebb902302ecfe30bba40c083692e0c14b178b807e4bd61d441521bac18b026e5c07bf3b49817cff2361a159839759648f40e7e9c0302047c435bb5006730650230060c7215396a57b4b65731aa958dd7e36095884e7450ec0b2aa21e532bbb1d371086fc0007088d2d76759301881603a7023100b60e5c96471b41fbca321c43be0fcb7ba0d776883805911034166b1e63086935b4ace17851af33a53541537eaf5e72900302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c65cf5d1855e1a08ac5391defe3c2f6ba1c9c7e9353481f2a957369451cc70fb8dc02856fec7841a742ecf25fff69288023036b61384d96dd3ada5500a3cc29997fbb6dcf25c8e02779c39d3a83ccc667b09579258212f1823e0a48957af17f6c1dd0302047c435bb500673065023013859bc3966e6a05b873256d77fe8ed9c7de7691ddcb0b42618a22c1b7aaf205e93ba93e125c2eb29a417e84d84b765a023100a0a2442543bd60fe50d35176436afd7adb2b60d946ac72bf49b59b17c95f5e9f8aa030ae86c96a91b8a369c6fbbfc1150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023029d434d91df90b6df602d7c7b341b18bab874cfdff453b1dddf37ecc544e8ed1b2d36f5d67db382a6c7028930d98c05802307575725a55b99f23308a4b529cd8ab5740406c2ee322a35b6046924260e6211ecc9c821f6e043868e4108ae32e4d63400302047c435bb500683066023100df34fbd87c0fc4634c494936a103ae59907ec309e601361d5ac05a0ce890380f53e55dca0a994d8300c639cf4559069e023100f0241c22b1cbfcead3738ed2d22425539f9e2e83d73d4f71c9cc4ae084d5e4bfd50026c4a6113b94a9c650d881a97ab90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bed9c6c618dd7184bfb0f9af3d16add1045481abc8244e819fc9618ff0ed5879d8f052664f8637aea27c39d2e1255b4102300868ff22101f7921596766769250b7f5406a2474059f234a0e201ac60a8ad3f2b8536a64fa801a24a0af0ec732d5f1e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100960099d73b03c57eadff5c1e14bd6d31270bed2547dfa00a5c4d6bc81b2ca9e9d451e97d4602300cf867c9773df62c8e02304c563ff831a46fb75bcfa0300659d5057e10c83c08c4576f211cd455de8d998beece68bb5f72372ea3494980f4cc47200302047c435bb500683066023100cde768226acc014a9410ed074640a4df8300f25640166e94720001b81d348b070803a38305ef5ab9e6caa13d0fba91cd0231008eb9b752fa00d42f9090683d19253cda3f8927a789bf5eb84b09555f92e4e511bedcbff1d1e55d52cc41acd99f5b16d90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e6661c655ec2fa99c2d29dfac52e2f49c3b8daab4f83cb2b5e4dbdd125a15222e92277a6aa9209a0859275c58129910002306e63f630967518eaf124e9833c49a5428bc730542a7acf5e57da3741b1340e6883fb7c56146b4e19b106d374cd27316f0302047c435bb500673065023100810997851b511e913268ad27bc39cd96dd093db5d153cef67e68add478588a1e3d726596007aff874b319aed8bf1faac0230446ee61e483dce03f8612b528f2c66a04d7f2ae75e578b4e85caf41b6ac46586febaa774f17924b231745e7d7991d49b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310087164ef63d828b60d6428b90e3af70fa338fcc9d3cb4855dbbadc9b3dc4739236ad863fbad89f77c59c8633b05879025023100d7ca98086d04c433b0d36fedc6e9c4479117f7a2322dc1f35889a96c8c731da304b57fe24e09e5a6c5bf011ff91c155c0302047c435bb50066306402301eac2b9fa1a453ab97302786e01a5ed26abf42b1a3d0f3e6028692fa6ee08a36ae4b69d3f0ab2ce4c3757e9adfdaf24d0230717056fb9dd174f4a511f07cad0e1a6ed024fb7b4d3b02bd943bd19ee7bcb0817aeebc11d21efa448420a7de2be109dd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023066a28eeff14cb2f372bf7f7f1414eda1214ca61c4b0e597ff5b12c710686264e02579dfa2ea05f5c714226d0a1894aee0231009eaa8132103f6c9fd9fa1b53e33d14ef5119aa353c6d539f2f6a84f785f25d2137aef6500904dddcd48878d3b73d82200302047c435bb50066306402300dd99beb895659780d8c12597113ce06bec7a09bd021f8eed28aa16ba3c45dc89f57f795c251a7f6886d42f6234b252f023055a89f14c6854da6d076d9324cd1c9b3488fffa32853b1e6dce458311b216fc9e58493069cd66f5a5f52da0bb562f9b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023063a06fcd6fbe335a8806bad329d3a7261629998f6f5e234b533bce7566213dbcc8945e7c791d13dec61012aa20c22471023064b7a601ee77e1fde51834d5f54c02d74092b0594eb5f8c9b155789c125c0f7142662b1cc964075f5735897c883051f50302047c435bb50067306502300bd67db7f0e61c9047834936d044d2724843e63cd16be9bd52db4cc53f30343c83c11ef8108c1125f265cff06926450402310090010a1dff848d5d79074caaa0cd3f1f071394de4f46c1ae45c2e5b89dd59d0d9614512c26afae0fc1d672464254aea30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023056c4f43a70445fdf59d85c0204741359dd24a4cd6929ff642f4ca0bccd4dd1b868f8c6b6748c471974335f23ee12dac302303231da9b0046e044ad0f196cb13ef9295ee067b8b0a7144251583f46d70be7eb2551a436db19e01251cf614c3ecae1cf0302047c435bb50067306502310090d3919efa4047d583a6cf41de9d24bca24208409c53bf2be4c75b351eaeecf17cc1b00a0ca526a40ac0622a1869f31402307bffaebd07dee50ab120c56671e5980583397efac71a35efe7579fe3e6f5848f4bd5c7f7c1a3aa7e410b14b0286b21d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fb684a76e4cd0bda065deb55351ccdc900a651ff0e3dba36578cc6f60c8c32cc4aa6064254af38a9d8005ac8bacd016f023100da4c4ae75ba91582ad042af9ac4f33156fbebf25b167aeee942dc644802f1799618b5eeb466e714b6a9ff2d5f5fe9e8f0302047c435bb50068306602310092cef3b0d792a18bea84f2a4235bc0fe3a74f5b0be9cfcebf50c528214a016161cb87e958c3afa702b3bf3360294598b023100c202bd8798f1e457f19fed28e51c39c13b877770212f1094c4d07712946492a57d6880a3dadd47ce656e5935317a496d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b68ced12bf0229b012bfcb109dd70e2f15f79bf2776996a1e10195bf3ebbf1e482e7341689667a8058004d066bd29d0a023100a211842227a0ee0d78e13fb734a376afc376d119cf9fef38c761a319c634e1dada06262f3d4d355e22cc025278fd7cb90302047c435bb500683066023100ac2b46ab997682b0961070025059e04f064159c15812cbb19767d4b6b16ca6f4f222f6db1b343c67133afd9781a7fc99023100a9d88cb4b89812a3a53378fe04dbaa3cfdb12303ab1547d85cf19c059b25ba71583dfb0144c96ff4dcbf74fcbaa5ec6c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f2ae81d5d46b72d76897dac1efcf1def47886da3d56614016a064bb8f5cf75aa70cb5fe8e9276e1b671d614d059c27b023100b13ff8b9a97357923f8f7e4e8b2da4aa041022bccc9e0fec01fd038b3c477968d1a5a0ea9ae24400dbb98e3dc32bd3b10302047c435bb5006830660231008bd3e5b335592a2fd376a6d54c09a384f1791d12b474545e1cadabbe689672b35cbc612af8b7458159d4bdccd7c2983b02310085135a7aa7b2fea111f0372eed41f92900ac066717b0bd6c3366dd8227b8e0aaaf87b7baea63b8f1d5006a36e5d676560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023072470288262f77d91ee5d2a1eb9589a8ef25866c830bd68fda604b8c57e7239e0b7dee1ed3e7e2da26a1697363fd31e9023100d24c562f43a564d910ff6c5a500b8a67edbfe65ff7ce75d4a588131196f1a163abae402363b02312d3771c9e045f224a0302047c435bb500663064023079c3d864a0e2a953a496142c683f7bf0a7f386d6899152a5bc2bf996e8c0c3f12f84d812f74e60dad8d259a94049b12c023066ec6f1fd9ae8f515f385418f74d6c75d6ffd5180277e4a9833dbdf2c869182c6edebba28fa5cc3929c2300aeafc6bdd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230274aea405cc68b35a29173ae6f8ef8936cdd8b4685b8da5c27d98c1ba343e222b00a96f23488809264a04efe0768e066023100e84531b86a9ebdda3fa43a6040abc7a0ad3cb1248756168d5e65dc6fa494f148dc7f57e7b5b7c27a979c755e2e1b84950302047c435bb50066306402300421028e0138919100fbb83bf2e6ea8eff9bca93be32ba454e53a680ef8ffc3bfb9cdf593263f3c28f6a72bb96ed07c102302e365d2003b972f3be8a0b150d8623c38ef8d8384c75036fab345f989babcc17f11073317f59d885a771b737c79889470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023023a754949930be34e97e29eb171b52994df6c01b21cb61f25258f871a442bb54de830321cab0da349721b66f0bd2875c02307ebc9512eec4ee5bdf4f305bb03d58d53792f70357eb6e69ba7f5b4d395db13a49e5304592fa6f0af02fe7a7f58c07660302047c435bb500673065023100cabb09952b5fafac6ae5f37a8490dd67acde91e71ac63c7b636e05622cde7377557dd3566d734b01772a4ec7e9b8acb302301887d3f7c8e1a99125686774cb13c477a8cecd9123487e6313dcfcea06b6abfc11ffb6c3feeb698745cba53bbf29b3e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ba506d39ba598c80f41b9dda95bd36e23a1250afb8e22c7892ac4fbca2a57279b14b55a3155fc0711136849d5161d7c002301278c0b3ee182627744038a4a146b4e23dbf1216eac05150045159949f26719d4941206f311112df57b83ad4d79af3750302047c435bb500673065023100ef2f98cf025a977e24dfc01bb2aae0c91da6746f46c493cb45bfbb9a623824b18592082074fdc1c575f3f77dadeebe300230280872956020ade95124a2e18a4baaac58e4c7d91450d52be4d14fd6a56811c87cd0bd935dc913992504cf64f91720970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230648bc23b1348dd1dc285e0e9a9582b2449ca97de790aacf70feaf4a3147cb39618ced563be7c92ffe89b46f3fbd89462023100aec3e04954da7a92532d137118ca66a8c78bef8442c3188fb9d9ec3e3d5be8a856f1cb81be0ca6bd4fdfd8eb75865e690302047c435bb500673065023100991d32b434d121030f3614c8fcbb1ba40457e76afd63699331f9b3af4b9b56c627153672393abe7dc990e45c5f9cd0fd0230481b18d509964176ee250fd8d2faf8ea2c23ccdfecaf53c2b94fe50591bc5d780e1555ec6d87b9db7388371d2466993f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100929a763d7c7a4850a7a15ab46b505169220628fe0f979bce05fd0f7bb3f5a2ff1efc63676beef1df1979534e3c82689a023100f9b80b04700e24c4db0d7ef282b7a7e76c71e450b293634912f099eb40b077fb981928ae4db1a53c39574ef99d811c100302047c435bb5006630640230565116b49dbe68a2a1d9aed27ab65e8442351c317a4c9078fa53c03559d505728866d9c293ef45355e3d7424002485b502301dc30f6d2767ef8ee05551aecf44cfbe3e1934ad0ee284d4dc577afa7c73cd5581139bc02dd0ed7b9c1cc6ee1c213c640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e477e86e448677cd39aa1778a4b3f779bf19782ea643c7d99a3c0e31d508f5593d333e437e935b60ccf919383c596b370231008ca5fb809d8af1038576ecffbd25e9fd8b926768c30de1c41abf2940a1a0eee477f8b6011dca729cf3198f205908542b0302047c435bb50067306502310082cdea998cf0510264a4b6b054b82768239e9c5517d66179784f2968647056aaea3518d1e6d262c1b0f5832bbf3b3073023036ce8589b600bcf97ef343c9f1db06ac0a69391ff5f30cefa3472c9b534a448a393ff9e497e16b7023ac6462a041460d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008c6e6aaebe4aaa6c4a82f21b96971c64b583838b03fdf25209d41c7588f93a7b69c0ba1843b4c551de9523cb8a105890023100a17ef75ca87114742a1d9737fb37d5d323b65b0cb89915e23c5a189479ee8f6c45785757cca0cd74b62a18b89984cf760302047c435bb50066306402307e03420aa6803f0228b3de4e7efca218906c38366f9c7acdd02653037ed990cf48009c93f155e52c3ec02bf760086c7e02300988da31b05a9912d508efc47d56962870c92e59af889e4ed0baf8e2300b9fdac13e27d007e4d1ef5370bbebd98c4d1d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e070ce11c54a2bb17647f97c549557ecaeae025999ed79149e34e4b60e102f967a2e596f731f5832d5247150a1d420e0023057b16455fa495b3cc22a74bd24b57cae8a56d4a6e3702d4d4bc65f98fc40d86f6b7e9c7a11e6ee3280466ef913bd978c0302047c435bb500673065023100d96876c8c2a5d4094e299707018e6f97c900e97070ba095805380545eb842f106a969b82b807ef4f029572ebf093df1c023013ab8382c178c294f180c4f21ad332041972ff6f5e0446d58ad2d8b0abdf0b06f635ccd9d584370d5358201b88b62bd00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307414eb54e6f8a99526ff0e97d420923c427a6183cea18ed49d04d77993db9e080c8009ed991e328e8aa87d1986fc763d023100a4a5cda3d79c53b0bb175edb0ee2907573477253ec59359108f025b7706d68f161d53a7aca6d8795aa631aa5925114410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302a30c022e8f1dded00d1aa764b7dd9081db2c841aef52fc2ce863701ad069e72432832e0a47c8b85ff5687a6b50cd37b02306ee89ec8bebe7761c8eefdab144e18e3519b703a61f225b3b9f83701fcfe8b48b0c74f2ee327c1b90b8d845c384309230302047c435bb500673065023100ec13ba228ccb164eebfe41c1212c8b28ae8b0e2090f9bbe1903a6e69d4c4141b9480eee376559b927c9a19561ecf2799023028bb0e88638087d4b22a04b7f41716207e0142926ed512e5468bc950b09a13466b184dc4d2c4db8676579afc3f5cdc560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304c6086f59c20a46f15cc4afd30fa98ad006d65571f8b352384a57ccb568eb9e496d9cb83ef28579038b991e7ce6da04b0230692e62e40a897cd23ab83cc06977ea82f4577af9ed5407bbe29aecc60e4559b74776398275549937a3759f102d50dce90302047c435bb500673065023059ba87a553f3477d07cca8649a7f1d1d7d39597a1f1184f9050b3614c0eda50f2a03f113facceecab963dbbe97642f02023100c3c7a17d34e56a19a7ccd4fba12ea3d96954a1dead1f673d8dde44af654ca2b41b632ccfa6f2004ad15dda48636067aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a52bc8f3b243eb82330d56022a51bdd559e3d1ed91fccd2fc98b9807d70dba7bfb342ea2a5e04e9546c8d1c1d9a0ea61023100ff234c8b7a21244d7fe4ada254855fa9e58d581e62fb1fba99808401c1f9aea3e2f9bc3192c582f68ab83b3b880442220302047c435bb500683066023100ff2631450d40e9b880025a869b3b05d450e5bbcfd8469dc36c65b891b2bf20f4396cb09eb63818e8823f1c96f41f3531023100c15fb39debf367e1e65eff349b63e9b4343fc25ef485fd73ea30dbde999c7a0406ceda4682c718b6e802cf824aa4cbbe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e2f3935feae057082b5b10264dc9c46bbaf4c8da5d3ed8f2bde276862b551fdbf15c2a6ee1f4dcd3a2f91daa8bc4a6e0023000e91fd062c973c7414bc0d6f9a264041945eafbda0942fa2c82f62a1e607b4dc33ec7c285233721b174fc4d9abc9ab90302047c435bb50067306502310083cf75fe9fde62a2fd217c10fd0906346e8e8e3d5d324c80ac883db02bec5ad1627ae251d2763dc880a74b372151cbbf023036ada3960c6769dde858052ec69f5d6ed607f1825a9e55f84d475649274a21debb4397b7507ad1c4e7d9533cf1b3dec10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230064daebfb1e96f45e0a60be9cb35352a24eb25b52fdf79578943ed5ba46af117f8d14c9315410b9658529e840fdbdbe9023076d99aba38db9532d70772f97c6e0e2d67821c4b1dd6a00e298a22f193e2f71a2c0d523a7510cb098a06e64ed11b85300302047c435bb500673065023050bbc45a0a4532a31cf95fec6255295d45600384ff41dbab90656e45f425f6f50f8f059e824f39b401110861cc50da6a02310086c4670d29d470b657b81a868df5f0bd52a546fbadd01a08c00eff5cf3c03e5c10f212ecd2d432343cedadb847379b580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303439f30af6bf2793f200ab16a5bc9b3333fbbeb62d95fbf69f8c73d80648b77d21fb0790f996771f1b317b809e890d40023100affecbc526a7cd9bcecf5ab7301d7c101d5787dfe21f071d2f19da3bbcbda97a73a3d84648f74900541b8959ef3c120b0302047c435bb50067306502303b0195a371b0f9be9a7f33742d3147c6bf53b040036e335b56fb9e1d8d6a744a45b44418954b211da0c0bbae8a9a20f5023100ec8130cec377a40f322c41b74be911a54c2ff9fcd8e29184931eebe306011d854f4188668ae8b4eec11e7da7a2c2f0330302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306596c70e3184fab22bf40a10c0514eacd68e8230e9095a0d2bd8ab4728260082aea959c37b19b13955a81bab532a08ba02305580e36b382df6287655a736d3db09f3099a09d66b4f3d2bac107e26635612767cefc27ae265d5f5454772b1f0f246920302047c435bb500673065023100bd2bfaa61cfd953604fcdcdf441396f36d9b5234f259790add0240f702ff2c337501c12857203c2c29e36073e41aafdf023012f34967d0e43c0be20472c3bad2ac738ce2118e63c1ff2c3eed408def511677889144014401e46b27bc33561d95068a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009e46f506c415b1240f568d1d0e48b92d8dc1cd8372f89d0c7233d2f58a27efa126bad97f6040c7d0530eeaab7b5757450230745badee06b42e9b269256f3cf30413bb6944895fac5dac4661f5e8ae0b6b211993499ea4f91cba48567be4efbcbbe710302047c435bb500673065023100b91bf0a22a449f329009630c14f43473549d303f1cf38b621be79209a4b0815eb623e8875f778cb0e2dd510a74e231780230058139afcb4f6123f4f7756d8ce85bf21b3ef9acf4c30ccf41faef87862a745f6db7c6e4c7be428c862809b8a2c29f1c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ba1a9c07f72ef52c0fe25155c8948d365d81203d2f6220023440e0034cbf6307fd515fa2fc2c1b86e47de3056b0f199e02310093f5a0553d0d95bf383ffc22c52907fb6dad3361b326dd8ca783ac808ded4ebe1d59adba98fda78b833ec17242da7f6c0302047c435bb500673065023048338dc61244dc0d09487a8c972e55978216779dfb849f2c91cb5f6e2a08d38157d28adcf9bc4104e5acf240de682495023100aeaeeefbc34832d3e45ca11759be433dbe63edbb36ab59f0b506ad70e2af8a8d0bab0d5f41023bd6569c2af775d543c80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b2514d924dc9e2686bfae64763c591414d05859bdb1d1dfeaf2f5bc08472944a887e058e24ca03043262e8508fba24f1023100be25c53687358cb31d57cefd85cb31b51d18eff8079cf52acd1727c34aec6dcacb4a7f081691b85c786aaefe3bdbd5790302047c435bb500683066023100a07027086577a31ec6d9e852a0833c49a87a7bd45fc14e7af0e3b9dae9ac9854cdb3f119b664329da39688088b5cd56c023100f16d7d43030c213311d33857cd82dd0ce2126668dbcaa89ae8a9010e66730df587a46791f5aa61653656dc2531b1223b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d5dab7fb06fe030edae765f3bc49dd71e5939d318344be7a51792f805ced684524040d91ef7c10ee68c93c819db8c55702310087fef3cf40bb9fa74a5cc9feeed80f6a259fd5d5a9b1adf50003ef26dc35433d07e4639c61c4614c1c00f78312dbc9590302047c435bb500673065023100d90fc3e9015db47779c6fecc149cb62c7a0f2df0a06dbd71adaba2bf2ad301d98700a94224a5484b03070b9db8d2b68e023015ba047d1bbc0642573df756fc0e4c04232531215096130d5fbaf3920dcc1b3bec41312bb2670f8065d624e352c94ee10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230284e701728daa965e31c5c9d83984b8c9b152b4a1fa91da6cfce65eabbe244ebeed0aaa78ccaddf5d98e77601c35640f02303f30e7ad245a952c6170d670a9bde2e253eaddca9a87f90c1797555850e35aba8276630a5d8c2a3dc8404a2e688e083e0302047c435bb500683066023100ba0454169acc3aa7158c358c909c31f983f938082beabbbfae93f7897e86dc18f42f3db68cf59256b7fa38d3cd1d1707023100c04ba0ee004f73d1f2833b9977f7c1c19b6605663a633896d997b0c79fd5f6a3ade1f6bc116aac5e087518da303b4b2f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f3a349a05a6f96c7566e06fde699b0099669152179521da8efd6f9c7af33a60a7ba44e9cec8b3bf0a267f0e582dded36023100afd16c8c65488494644a1d63a785a309827e6b2e56a336bae3995582179c3c3c204eecf3523e005d8781fe3a7befd6a90302047c435bb50066306402303090c3d070353f4e1ec4052c7658c5265093b6008431db01dcaa6334952543996dde912ecb9015cc6b53d267dd526c1a023020fc4f49244feed0e460bdedd037be96acbe47f6d309353fca56005c2939b6b2bbcc2ec206267abdaf7aa1152e6a4e0b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023008e36a3be040a0d782ba342fc6d1dc09490ed9c4f489c2cf425e79e974b906e66a54d75d8efbf659470ba93d101b834102304d37711643b69de60e5a96ceca5ff51aec81d980ed9c62781791e274fc9d85e234525a42b60c7fe571942855958460880302047c435bb500663064023075bc6970470b63324dd1ace6a86514634a0c583bfcde3f86e4606fb787da5f27551e1fc4b7b8f707b04f0021d4b43a8d0230762215da18b97921bf8c18a896847c29f0b03053e099069e82eb3a18a7d170a2c41bb806c9eab66ed1b37ffde6ce7bdc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008637d4e24bcfaf9ee6e39226cdfc64df89ab58d74335a91798ba901aa30bad1352a22725294923a8aa5847e4283b3ed8023024787267152a15d8c1c4e7204374fa53b12571a3018df688db100f06b8c011b80d9a9935374133d27fd26d8455cda8f00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d59ffa131af0008c927dfd2035d6861336bcef74562d5d9cbb0919a469617bdbf17aff314820f870d4ec46df9cb88d91023100cf832ede76007596e41f3be168df63928aa2875d6849e58df14c53c2c3b676983fdcb3abbda9f1de20f8609daf381b4e0302047c435bb50066306402301f798f002f63745f441f2e097d06007ac953c76b6b52da6ee84bd72b6149b69742efb6cf750723593ebb60c288c11c1502302ac39b29130a94f26cb9495c7e87ca6441a654be666b11bf8d685e1b7d162f9d014ce31ba401d2cc56432b49df7238530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306c7d5df49bb73dd76c41f9a26ddf78d4a50b3f3afaad5e7f4e04f8ed0a9749302fd76eb5a2210850e93da927f2b357d3023100d9e172289000b2d196185e475c83f66f7edd84fd09ec48e71f753135f016df5df0b7728d9dadb371df2c67bfaa54ad990302047c435bb500673065023100eda8b2113170e01f69b0409eb88a9c9ea95db26aeba7f67ef7a78f80766aa2cf2a59ff7391fae48644c18cd68fcb192202307513cf883571ec4f096454dfeead495a353444b987cca90195e44dc48b2425ca131eb8c5a5e86ac6825591e62e40cae40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f41b525d85a43cf8f46b58f8f9df785fa5ec5ecd8809cad9e6d25da085145971f4a1c8433e7a938acb4de96c1d9a4197023100ed62ffbe5b6b5c5b1318cf73a88246edf31bb1798d015ba3774119c4b2b5539798688b5af27a03490701b67c9415aa360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023021a40833877fd2f1e984a6b6d3b120edc98f7d62623ccc8a945c2cd64faf7d4e3bd27a0a768edad4be98b84813437f7b023100ef2471d8a3c54dfa07bd993b69b013d25b41bf4c82a2a76d9c6328db883b17678bf0bfa6eceea5d3a7553f0f149a6a3c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305d4d2d6d33ce588ae91663c35e4a9fbbb48917f9e5d3af0fff04bc19886ecafbff2099178235e104c3b0c6be203316a5023100f5946b25cece371bce583db09caf2b3b9db067a02131a7d0f8df79f67ddc77de7ab8ecf9434033966bef4ee031ea43ca0302047c435bb50067306502305b63387bc9b2441cc12fe0ce778a9bd90651e0fa54f1d9c2915901e51155e364454c93827606a21fae205bc4a4adba5c023100d1e9d706ca3bcab1d85af9844fac50108abc6f8bc481c355783c88ab014c90c300214f99fa07de8192af3e70385668c40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230352c0f391f1d05c9607b8d9dcb3e941cb891ea228b5267903ecef70ce77879c9fb12006c594f112d368c3c11cb0d662c02304094941268e9077348d5614b432704259032930518ce30d34ccf7196a82129eeeef60233744a5ef7ae471186aaf557e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023035673837291a8ec998f52b213a6cc7089b143c8b260e569bc127fb4c5f7241c623af005f4d8ba5e17879bafa3d2273a8023100a736289e482fd3375635450a02e843a164caebc238434be1569edb14b652c1f2fb7f1b6d8df170a164785216945a1b9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e9e4d02ac14c340438414999e1881effa0b7abb50e579a19f5bbaa5432935ce2777971bc77fa67944890c7101cc319fa023100fc8b47976ce7786d9c2fdc0f1966ee98b90ca1fb07273fec2037f177dc0eb8e9f134f0fa8d1d38824c566b17747610780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023074b44556b327bcb9b104b317e28780309f1df2e812a536a7f1a5779568b292adcd15e94b459cde63aa3830bcda3f6df9023078e3236164618732d01acfa512bea2614099630a51f9f5a05189482cf96d9892e3fca5adf352c5d0b7470e27565df7a30302047c435bb5006630640230501de6b96eb9e5102e02de3bd19f7000a0e002fc6dfe98100a8d2bbaefe1327c0fcb9f25a58efcfdafe32e391092775002306c2a01144a352b254c4cf9ed5bc88508869224bdeea719cb274995af307e2a4512da3ce07cceefdf5982a604a0eedef60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bb065ce82b3cc873df8a7ae609863d808814f9a7cf65bc229bd138733c8cc485a4e3a749497fd721d9f380c43b50551a0230399fe784f28f573b6473be3af7fa72517d3508a07139b6292fad83eb1b2f7d8121c935828b7e85dd1548514183ebcb550302047c435bb500683066023100becc2e0e20e4d858a3a578db0a6bbff3b68c5878327f0b1366798a03ce8352363ecbeaf610d4bb2ff52ba9d9602bf1b3023100ca84099519e5c409c14ca3a0ad15d007334dfa9c7579272d4331f1770c8575ccdfe1219793ae6cf2a6ce904636c5a12e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fcac016de83fc1a017c2e88090ec95af7874ba8c0b5395cd89a0fdfa6df60d0cac93dfeb4c0a0f0faf271f3c0d1f2a4e023100ab58c04f42bfde7fc9d918f0d45c1fbe6d677f3fa0b0ff0c4535254c390258e0b449e4e299e7a64b5b93f8a8190a3a5b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023026d8f60dd85ec9016e93a7833bb6d672e5f3ecc8843bcf5d911b6c1e92f0dc28657135c2a81626448c734c881cf33262023100d279556042919ea459dbb198b303d05c73885c0d3b6290bb4ff651e300ab190fa6d14fd39509a392846b4e4e3575ae4f0302047c435bb50066306402301f600469a6039cff4d6755788b543a989378f7a6955f3b3d06f2e4a3fb61184cf1d6b58bdaf71f0d9e74e0ccc93b1654023045eb653280dc970b2b6494f5ac176cc19bc24d33d4ec1b8b1927fc62a66ad3f778a3e63d764fcd58a5623b7be2d2a7f00302047c435bb5006730650231009633c5c685647910343ee6317357fae307a05969bac91cb9e438c0b435e09c909cfc3e839405f2848c541a9bf75f0afb0230458fb57e6dc8b1fca4376438028f4d0c95a9d343d84fb49d6dd16747c4351a765faf5d4909b0954965ec8dab6db4c9100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310098302c797e7e7aca49d33df37aa68ba2a0d9f848157bdce36b2680f2f65e305016f2c8cf7cadc8ba44a36f30d106aef102310089efde67149f7aaac3c3c0133ed23e4e72107e4401cafef12f7aec00dad49a637663950b843a17696840704b0c34df2c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097c546c7a270be57a6c1a947d371b80fd4f0ccbefda53ff16bd78021955c90d088492185beeae19694350a04f1cf6a11023100c57efa16db6606a569378ccd1cbf64cc52f89f43d2d6a2cc0c7015ad0708bc1c81bd987681155482ab223a49b06a14fe0302047c435bb5006630640230292d1a1c48cd2e19ede4e29f26c8f18096e6c76eb0c74514928fb82d2077c7fde02ec34e79434ca253b1ca0d7c88f2f902305c8e30f678b6ee2b402fc594e3f9e7df252bac877b106d94fe3d23de3c711ae51386e5bc091b4844daa05126966db0db0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023024f06b60aca166da28e8483ca189c908793e1bc0edd768dde51c7256cdc6ea2582f9e4f2fff14c6248b6708b4bd51a550230010b2c93f42e214fd9966ded4528d97ea97d522afa14ea76262e35ec2af921e33b80676932b08463f2b9a2c633df2c9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008a2922a52cf1b94f5df41f2be000bb2eafa330c3021a5fc1f88b0ac6646eac2f3fe6e2891e3a820adbd5cd5e53b47254023100ec1f6ed66d0bd85840f0d3cbd3085a3927d71a04f819a9f360aa7cc43f2e49e4d7e8ab484358b6fdc9fc7f0364502f2a0302047c435bb500673065023100aac3df49fe292707e05d9ee6e25261744e6b5ffbab4d0e2e6420c16be5afd7730ee76c126d9a87ff6d09ec2e00f627bf023058557d215cc98a6152e05e4b9fb1e6c006b421f96b1a7fb10a12849f30e9c9ba736221e54efd788237f4f9c298ac1b2d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f101ad4cab1ea59843b263bfa6636ce16e291c9be92b4c608122b8d3bd2e5f857e48059d1264170b578d83fc874606bb0231009f6124d278de5f08a8b6125931dbe239ec063d77421015c95a08bf011406a974843979d96bd523b98ccf01e0ef5e11e60302047c435bb500683066023100df0fae30d070c43aebbed44c18cffce8537704516a33ca55a68d53ea000920c3b8d9b1f7672b49c3d14b30b50ca59314023100e49f22114ede6e069350d85ae5e755d9b8d34b52b93ea7081eace3d7664ed3fd9dfdda0a3c322593245788964787b9ac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e9e53d1a4561059fab08e27866099f74c364194f864d978ad37f47b9d1ef9a7c12d82284bf69b042a5441222e73e999e02300f46367d25b8754586478b5fc0d820394cedee5ef54b97e6661438d865afbf5ad27ca11448c3a3f17f9db9d4cca49ff80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e21de0153cd978718e4683b8f37b2708ef5440e9eeff2d724072c0e08e897f2aadc41eaee2659f5a95d7e75fb809c3a802307c8fb983b17ee2bc6ec9a252b3ec3dd9836e0169d9cef492365922c26d12d8b251f6699a3bc5f884b297d6844ce0f1ce0302047c435bb5006730650230373c0f8ef2723500fba856c6494c0a16751b905186b19f5900b6aa8e8984c7e4f84ba8a21ac9a4d68056e49888a087ae023100e710092c1a2e5528aa77edc95e24c5f27a32a1e399970fe2451d33c7f0c9ef7fa58f7cedded3778e8c0a280b93d159700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009cbc5c5513ace8072998a8e9abb66b7f0c1861895670c709a583b83e8936db507d850aa5336fe8983cf66d5192a162d8023100d24825f0c3a1963dab34bed243b6c914e7c862dbe68b0a392fd0de2156aade37a448bde1577b7046a6fa04e476b6ebda0302047c435bb50067306502303384a56f7b1c6f56dfb313d82e284566f79d769ea6f3c193d3b09e82785fdd8cabdafd74fa09421aef6d6d829d29e7bb023100e2b68221b7ea6694c5c86e5802919a3596cb6ec2464b409df356b9402cc8968c307ec1ae3560049836307213f26d35640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b92fc59f4f8254b27924bf699dc484b02439ced2b29097179c10267d2570b365570a35eb592eb3f1b84b499b3ee3452202305d856c664531515aebf2526f712ed13a7136ba5c9e961025027280a8224230d8184066c604cc1da241700bb6a65d63400302047c435bb500683066023100e54e676e902a5f845e7612d918266c5f9b7d6d4efe7c1c4e732f39844a1a6597ec8fb32622566e1ae87c6cf8b551fcc7023100b4fc2615bb68c4d54845a0201e4c689cd005fec57c0b8e99c08c01bae82f3a065b33d86b104b05dfec3e78a345a512690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023045702607cbe3f0b523905db396a55ea9fce2a85e243569c92b06ff8cc87276d534fdaa35cacc20e6ace84e5fb26618af02300c5f5cfef7be8d6a788f1826793afb0c55a4b3172a33807dbe5f4c09cd7b4a6c8b077ba858f4432f1f62e93f6fd82aad0302047c435bb50068306602310087851d820d6a49dacc7caef199af1065f33c7597fdf1200625c3a81fae45e6d10b5e214d57d3852eef1a6ac3b9fa8f43023100e4b7adb2c03ce0e6784a8f458bf063ef5b80923adab4021b8d517865165cd79d0b090a8406a73fcbfa26dcfa85920fbc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304627b8bdc2faec486878e81b07b417175ecfb3587249efeded18bf7ed1f62ca20751093ef262a9a9a5a9a04b1f5011c9023008f75d6a49830ba2d535e0735fc55f344c0ade723733e4e79a5a0de1c35c89186ea16b3b73c80a2a95e9ea605e6523230302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d093e4c73f1823de89e0825bc1ca81a51ed4b1a85bad215a16df22eda85a3fcefc660a781db5af19aa78cfc1227c8837023100ba7339faa97efc42230f212f0a4899963621d1a187e03eeeca804ea78d088fdef683662d301b20f0d666e4ff412f20770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310084e194da639f852f2a03ae0a60181fbe67081c543b159b28e59f556af2dbb2723f099c1447beeebab8ef306848a0fc5b023038f256a6555441e1fb0f204311bbc0a704f85eec60012015c2429d8a9f11874fc0d05e608835d259b1281fc2462d78c10302047c435bb500673065023100dac8b3742294fabb4d9358068ef914cb3b8060644201f531af95e067d19e7f0b2d4d15b8bb81042beeee7caed667b23202307a5523c0b404ff13e393227d63c5fb2226b64d985975874483b8bd3fafa89fe04e0fccac12bce7dd1c8c3a3ced6f66070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305c6f4aaca07fdc6e6239c6d225bcd747a131b8e0b25824f8dd03a5f9d4349176052604e3ca0970aaf940900e119fabf9023100cb3cee20d0ad4a11db168170923abfaab7db715ccc8b3454c54974ffdd812b3a05cf63af28a0b63dfb636a2e9770179e0302047c435bb500683066023100c6cd8879a27681249d9e5dc8ac4bf225314d766b3a7126049c2ca690a2c040018e0bda44b0c0a0cae8868632b414767b023100f4ce6fbedb84c38aab38607a8a47b7a2bb55ddc416f67443b649e49dec2a0a3320d609bdf80b6aeaed705fd310cc2d840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008243cc17cbfb0730988093fcb9de08c46626f382be258c879200d212cf7b9b46b12cafd6b4cab23f772ce2cbedc47b4b02307bfaaec784755c60a9a978d95881e441e0811fb7c65c53e742c209cc74f3e6502841762df2e92fd9d30172775f8dcffb0302047c435bb5006730650230485704e5d677a6c2841c8dd5e1657a20641204550cd207c22b1966eee1f69438d1dc2c5f2945d4f49ed9d93a66d356d6023100ce44b20ada6b06ad11b17ace0c552e71fe12c7c01d5048628701ea189282fe0eb3c5398fdb8f88ca7a6cdf9ef116adcf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bbae947162dc726377586d46c4f8ea556cce565a7958db3fb18e3f921783fe38aee18fde72a8d80ec846acbbd9f08266023100c4484a99979fbe7896c048a903dce4a0447a9637c60f153878f550a7008fc4004cc1bd934d287cccf8d6af8bd0e2d4ac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307998418e46cf42f2fba08100b2b6f57d74ffda06f78950f58b49c1f9b2f632e08f90b44e466dd5862d03beecc757c7a7023100f705a95581c96c659d187481ded9cfd8a93e9b2179f1dfb84ff1ee73c37c89bbe3d721ed16b52eb13da156ee9377c71d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bad2b3aa1d7d18a2a0a6dce3da7fd1aacdac82943c1753e2fe45de5217289bc7ff89124042b1c05640030e11cbdbfc1a0231009166ee3c491b5ea61021a3e53fe047fba3e8e35e606e2ec4cc3597968344412066ffc12f6270c71aa02d209cb92a07290302047c435bb500683066023100945d551c72262bd18bfcf30988f971e60d4a8122e5e1fed98259333aa512bf9ce862f62567cf44308ecebd1cb5ac5d17023100bb92b70ff2ed5d616f1ec96e50bef8406c3ed411542afa1f75f8390b1a8e7464b2c4f39a59ee1420cb32701c3f8dfd810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302e41efb460ca97774ac42658ed0943563cfadb9612b6e7b207c1afbe88bde0396c7e22ee2ed06b7c76ff6be3af6464e902310098ac878ef46009eb68043a20372927e69eb1ca2c2f1e1abc89fa81534b3eb0c1c05b7e17ffdc2afefae43de997e1517b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230564c1b1464c55792b32e7f3df385e320cc1bfea7b90c17ade512f143df68184d99f9521b9c28c8fd341509e128708ba3023100f71a5737a1ca09249564d8c355cf0ee8a68046a4c46687f1a556922021660cc7fa68f67c43399a811b15e6042a5e6a570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307954c3d76a66f7c78e89f5341506f0bf9e0897c7717e22009a193e770d0f72585d2c1adee1ed4b738f89a1f69c77a8be02300dbb10a0aa9f30ac4eef2fa65a9f9eeedd4bd38d7b58b23bbd22a848951b23c5c2a96187e47a6417b37a6ff795c82e120302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306c5b2ac0395de038a7e6fb967060b1a76c309642a1d9d62266e43269cdcd55dafde6ea666418e98fc90449b0c9a29f94023068940392b255322e100bb89bd963ccd120e1616f296eb5383bc2f9a97ccb4af21b22dea524fbf25b232518f4d3d199610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bb244802a19e46fb44bbf394b1d3aa3795adf7c90c25be779f7d3e8fc43be92bceae25e31d1957d4cf09a9292047549f023100f8e3c79eedb3cccd12585773f2438d38383ce64783cfcc9e023a16bb2a40dedca08448bd248f620201a516c600f5e2f90302047c435bb500683066023100e57f77b28aaf1e275bd8c0e861b2eb927ff32df7077f385a6080ea0b968f9c2434d66d5e006744925db3528910bc0e140231009a15d4663464e05dcbd4200555f33171aab78f536a73bd3f8e574be3f942aed3c42ec0d857bdb57f27c95a30cdc012e90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301e9adb4ef1bd500e8d3e957031bc9010fa9b0bf0ae9f1b84724477ef2f96629943290f1af7e8efe69d486dd5c36d8e9d02300d63fcca9c43981279ecf30dce2c0a36e202fce194e6ad84d2dff362c7ba6fafd23e9d75e046b48abd74456b8d0f48180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023001346954951a283e931160e09779d386dedf36a7a9b1372b79448bcaa6d2c5737664b4ef41706c28d6eb7dd2c38a0c7e0231009798fb259f0cab862d0a48eb8e2e661f338931349802f91de1de3ee46524a567d63999814b024de967bc987df9ec899c0302047c435bb5006630640230522d04f37b44080373b2f1357d4aa4574770ec9127ad90e847f36735399c337db0f8ad7541e4cb84fa5e4c7f823b88130230070c73fcf5f429d4374d2890a687472a8b15d5e1fd2215bf6b2e801613b037500aa7548b8657564e3fe2aa16c35df87b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e822cec71f1420858f06cad8d3e6530ce0879298b8abefe6e196f2296a4b70596afb4804b5331e281af172c82357353202302c9c7d9378203718517c83a462a265227b1998c5bbfdfa5025749fc484cde82e1b66a6999d57759defcd957a94d5b4630302047c435bb50066306402303e2f2b80f0642422f0b2c03b6e0ea38247cb086d8be40c8cdc23182f3591cdda19e660d8e6dc1593150af2c68a44121302302beb4d6575c658a78c8b21fcf68e87775ffec641073034cfc0566c09c41a8707469ad32d519b7cbf5a880ef20f0cf02b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b40333b7287b84e1ca709414f5db58ec046803e9de9c8f623e1ce3c7ba21873f743ac0094b579b664ba99314e6ac6f98023100ae1e775e51afc02b3e5fc627b9952093387e76bb5c98b579097f53abc53ea5ffdb35204782b198377d07ab76ca7cdf870302047c435bb500683066023100f68f1d53cafef26301c33f86ebf4eff4bcec0c46d7c444008c4571a49d07674319df0e6e8c61f8a4f7a8852a0fba5075023100e2466165557f9cab8b81b3d466cf69466b10b48299954ffd7594ba9bb623867b14acd408a184bc6186bc5cd08518bbc90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230104743dc249169223c94ba22eb8df63ee8887a16aeef7aea00dd4208420f8e86e7c72cbfcdc4104b32f3ea2fa416f47a023062cd51fdd1c03eb0879f5ae2ad4b523b3ec2f5d427a2e5d0b1126a6610988867cb62e34166ac90f3ab9138beecb9d8540302047c435bb500673065023100ea4d16050fc0b1aae938d25d5de78b7c2fad12a1c416ca52e048b72ca9fe085ef46c3e0c434d7597a2c384a9fdd47c5f02306e2daedb28c98d5b33c989d2b11cc1402435b7f70f9ebc61676696124f26dc626d58d584fc95707ca3ed73264e2e99d30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230797601edf60b53b7da8a825b8f380e14f1a6d0e07cb792386eacb82fe7512687cb5be659c7451db4379ced5b5ee0d51a023100a25d571a2fd799cf5f939ccc5e7f0a9a402a0d458ab610e6a0dbe1ca5a7f2a9ae0ce58632af6adb6fcf21ddd920429ba0302047c435bb5006730650230173c1dcbdc029e017d6f689c47418f1bd36e25d70507bf7c434f7c0eae8045cab0b28e3b3c2eea9ffbb902015041a4ca023100d4e84e1778a44a9a5fe6d4918567e46be6c31b782d0f951de8ffa65eca25e704c093ffcd8772b1f7213e010eac9ee2b90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023045b8a6fd3f97c64da51fdd12bd7e77f53690a7c6af05670e82311407ea553b12beee27c491f5f6e33aee5669da0cd7a80231009736e3cf81591bfe347436ae0d55fccdc3c8bc9322a429661c3fc4bba861ddd4e75b5b75b632a1aa85f19dacead7c18a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023066c750e4a3f68cf7988fae9b722f6bc092cd50dd9de0bf986c831afc54574065660f089029a74ccd08c1bcbde3ef3c2a02301ba3f18d60558191b00d551c6a71b5805023b947a0775ed097e6d47ca98381c51f673dfdb8cfce2e88b6acfa37a5ba440302047c435bb50067306502302244a80bd8c6dcbb5abd9c2100b5748d4fcd0c6058bc186b23dc1b6d0c0deb542994d40c4dd743fc4629f376f1f182f9023100ff75e665506055f3d0e905e314fd44cbc450445dcd40c9a00962ffd18f193633369d1032b0a1a21bf5bf12f0c2fedf6a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230693545aea99239baec2638fd5f75e9981ba81d79c69e3f8ddbfd0104b9286847cef9dc298bd9014db5aefd17f1ebe66802303f79a69bcb1b9efec59cd2b4ab313762060ba78213b47750e51eb905fdb0ffae4e31df9fa7451154872cf9c03cf020d20302047c435bb500673065023001a3b51eafc0d96c63cec57e1595b558458b1c397c6f31dee9408a48a3253df9b7ed24c8c2493cd513978b24e50e2e45023100b1bfb6ed3e1f00e832eed341935704ef9506ac1051918feb128ffb899af998ea9ff93277089707135cdb392597bbb5630302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305d04af2ed67fb0829228733c0f1f62808844e9bdb6b7edec482e73e91de45181879d54c7b0dac0ee33548674acc5fd82023058afc37377cca17d7497349de5be00e3037cfc273c084a38dc0f022bdfbba2d500fa3a46e5e4400b94b312a19c1e9c580302047c435bb500683066023100aa60a58178e8d66502a456b5ef19cf98742241dc69741bf188a2e4ab876bf7819b53c17576454f801ab99265c47ccca8023100f2d4aa9ab21e0690960bd2dee6b926087081faa73f51a1563dea4d14449bbb4b7d13f3358675d9f7f8a37261ba64794b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230269d59497d06bcc779eed8a20793dd3a24ca73ec5245efbd769817a61da999f7808c1898716d6e600b06b106e0be71d502310088a4122ef90198b882f9b99092368f5891435d2db6b2e947594611e4a3429e452a5675799979852b58222e24a60a80b10302047c435bb500683066023100a9d9a99a6537259b2e02eaba25ee8669e1b459d6292f57773b68f13004f16824103a144d0e22f375b9c2f34f4625f462023100c2ea1625c9c2a959eefbecc79738ea9f85e42b8efea973d05366d7cf833c2133f55ee5d7a77308269ac055330303ba1a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023044554a30bad962e3f41b0a4448e5cf21eb1d4c30cb317e71937e00ce71268929728a95c9f24714ab1c19960a5c543688023100917c66930fad2a6717e5f81881ff96fdae4b78626a0b8b619b87939039e2f9de624cf871d3ea1bf48d995022c60592040302047c435bb500683066023100d802a674dd1f8441b86447dfd2c183a5a60351cd53b2efdbc91161382a699891d34872a1bb6b068a1d799a857f9f7d3e023100e0a9a0425c6990c528faf27e1a8424d38f7cb6d42d10132b0d029221f5aceba0a72e26fbf097aa75f18a0289e01031500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023001691e46e02f1b4c04f0b1a2ca5d7a2b5f8c0b01b7c22c3ad59d58f5777972a8b436c1ad239a8677a11c0bea970b88d2023100bee7dfc93316daf2c39826ac1ab014a87eabdc3d57c965984c35c000407581355a11ecc0646024dcfd15b8536abf936f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023050c37da321d2decf1d69c36552bbfb3dca6279940b04d9b8385c21dedd109a6fa03c5248cead45997a4b2480065943f6023100e2c729c381aef25f88937468569902550d57fd36b500b0c5b3ea34f35f2c6e68cb6424adea32e5b9405929add03a82e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023068dc4e9ab58ec3b171d6809ec47d6ec7e9b62a9275816cd25cb5724ec431cc0c1b2e43814be490649395aa90acbc9a75023100848c31b2566d84d70d735b5d0ebf540cc8e7dd8a7f07515cecdb3e4aa9fa5e96f44a0269f0085c9abe31bf169e23c2610302047c435bb500683066023100e1821c283a863cf936f68c21f2333e30749205698d6516a4e5197e57c3c5d47d7facb68e51b82940c78ee3c25cd085a1023100e16ed6637cd16056044c74ce358afa9d4b7dca19da40e840e631e64ae2ac5b11ac0ab25418c9d98ec8fd42479f1b25410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310099182793f57b8800f07e394b2ed3ee41bc6cb69b4b6b0378683ab1fa21d5af9db30781253e5b79edc4104d22e2e2a76f023100e198235723fdad2562f55427d04177e4acea2b97ce03f46a7a8884952e6c1e967ea0218b4aae839182d807071296c0f90302047c435bb50067306502305e7e3f8e2c1045f0a31a92181d86272af4e7029c6b281d9da2a64bc9267526b93452e6973e47cb2e60250f00c5c8f558023100f909499e72f1e5ffd05808bb646b6585db1a2e119b45028eb19b4274a0271a25a3e5dc77375f10c23636fe899fe143440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023012a6032e18f061fe0a8cccc99bddd002e87c899745864b076757ba798404aa0adfea4f9da15ff7b08b43bda07b447ea6023100fcf02ffc0485f0a25ebee16a1c5bcc01992ba255394425b457f8cfe93eb2297cc3b2506970445d77443396b1627171d50302047c435bb500683066023100df655f0efa41c7f9f7921e66849d8519b55142a6f47154326d703cf78c5b99eee739470bc248e43b4bfbeaf4e41cdb5c0231008af5a2775211da59dcf7df7872f5883368eb3eecf2fcb5e3544443b4cfff4a77244673d42f6d25cdc076adc5a0f485750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500653063022f0487da296abb76f8563202ad130fd804deeea0dbc9257254bcfa0e887fe8708b270d4f728ba05dbb7d2daebfeb6d24023011765763c64c74986c9295a010beef2421dcab24e677adf10c8369b16ae93c94efc5eaea9e05df4d63bdd34ece0470490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301b710ddaafe1b45cce7ff0ac611b7b65f5868c89895037656a86dde42d32b8ce10efd30e43c40041fc47bffe5b31aaf3023100cc5a6d1cf59f1707a045b73e7ff04ab69f6cc9471c2374f8d8ca69c09d1f28579b946dda50911866eb1359e9b89c91ac0302047c435bb500673065023100d7f3ed00cf3afe7bb6a73154e5b47540ef549401399fcda150ab502df1aa862eb0db02c18f9f9cc77f68b58395ca369002306e09116f4ca3f530b3d89dd2673fbe554210b504588561cdfdbd00ad4e4a73ba6090fa0e4832b699e762fb873cca8f120302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300b9330748d8685a9ed01366f4b482a68bd1554a1ed4186d8ebe78e871c559855d439aa451f0a37589a1e0a9b3328293f023100fcf1a8921861a8515df8dae234f16f943d763a2a1db5beeab52c4d0a8053425dd774972a3cabdf34c2eef72ba8329c400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c9fe89df4b9cfa412d2d8a1a840850a4836544a44450a621cb6999d34da2b8559c97532f316f954db00c06ed1772b41c02301e372cf518d1fb6a4b4eb48328bde141127e25a2db9ab7c7fe0fb6ceae8839f20628f115f461df04c5483d91d8e4d3db0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310083084e7d8c6048721d415af82e7e99b8f4f735a9c6234979a9e52afcb124538f07bf23a7a888172e3452becb77a5d77d023100f24baf9ff9e8619e60ce549e8381990cedb49ca3241db0bda87255b5b39ea421f062ee1784e0673b9bafc5ee336cb1bc0302047c435bb5006630640230047a7a6a0d0635ed4079b42c51aaba42022e4f02b331cc62a6e17b28f8e2580bb6d1a8888470fcc4fb6ebea641558609023042627bfac710b284c3e8543e9a085dff5dff0987776bb63e4115fe6d6f564d7561287db1b20dd312c1c5a5fc24d4931c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230335042b4a8f57a5583766ac1b50152f38c489d8f40763baf39618d05ae9e54813ba9b8a5093b7a083bd28f03661854880231009753fcd8590ba9931bf526ef48c142dae5aa3ebf7848c758858cfb5f5b171bacc34b6a6fee4afc5c6384211ba364f6160302047c435bb500673065023070740e6ea1acfadaa6136b67baffe731bab6627316f43ae6ec93473e6dc4b2d090546c7f912e3024c6cadbd746441097023100efe97d439dba5c4f3bb5ac14328524969bdd072e68f49b8124282031e3a6167efe948000c1166c9a339bd072bed453aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a76f909c1249341effcc0370894c06927fd3c14604eac5fa5fff03cdd0a31e2c51e8e48cc1c06b600f7497b2e0dab5200230606496ba1b05e7ffc0153f2176d537d5e3b857b77658f80712698274c182560fca1034c8aacdc7b4d196bc9ec9adaaa50302047c435bb5006830660231009a5a01a5779b6b0517e033ce0495d95cfbd44830ec59f45186934e7d8d14536d4b724da97d6cfcb36d03e5f1dfaf3f8a023100cab9670a8f68267b2dafdd70c732926c07474cecae7e4abed155b197ca288b75d1a08b6897b311b5e229ccca1dd6bb3b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fde226447826017c9ddc911f41babc8f3f5f4568215aca2323f64fc7fb64d39c8cc8212aa29014df071abfc9716cde0702301e2e6c18e9ea8e8d722146580d2416cb48c9f2b3d854ec0a99b30b53146258fd750d73b00859eddb5da511f6f25f32dd0302047c435bb500683066023100c01dc12f1ab2d0ef3a01c26da96eb63e611d1cef3b7504ff8a528da7cd68834ff022d49def8d5347c519710f51961b510231009ffc3267430b943d35eaba2c20552b18dade9bbd8e070319053f1e9421c07297c2508d1067a4a8aa670f82adfc4d18640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ac71e68cb7fc79fcdb5a31cd279eb673263f22beb3a8266714577fd0d00ebed5eecbe5749278ceb8ffb7931370222c2802310081b1954c67c50e0616a0400662e8b8985e3c60b54a792029fa1a866a9a402263ec32e7292c58a23dcc1ce24249fdb9960302047c435bb500673065023100dca1fbbcca09a10abf78adb231b62128acd2a5fb0610522bff302914eda86a67504f9fe55080c655f7a20755a8d9810c02300567d167c2a7d78e23f6335570dab05f9088b36f2e1978bf174d0622bfee2fd3c965a925cbcfb99a7df130cc9b5361b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f9420c87d9920b2604e34b54729f10fa72a96a6b8f284f6e651f618fc66a9b8ef95a2fb36a02bfcebfbddc756216855f023100d03b2d3fb95532d0c8786ca4211b0a3d93413cc526e0dbb59a7c3cf8797f0dc4d555a16a1e2fb570f36e821e7140be0a0302047c435bb5006730650230011d0f3d763c71920daf64926e547af9df56615f0de964cd681066f475121c7e7107c71948798ec406c35da2eaed1707023100cfcb1cb3e02d5392dd2d40f3aa3180b919d0d81eed3846f32abe29a0fa5c19ec8ff48d4b5c0f6225f723c72b9934b0bd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cbeb83edb2a5265fd975cd862ff60ae6868db98eaea1fe0950ceaf0eafa6b4b58fd5eb8a812feb49fab5c1045edb7dc6023100e4b3a7b985a8594134e516ea134b7fae99124ee7318278c62d3f363bef072e4351531a135cdbea4f1f0ecd5c3840b1f20302047c435bb5006830660231008a97bfb2866d496db07edb3bf64ad7c53ea529cd0d6c4feaed5fda13e92b6625ac2a8e7dc1eef951f4c400f77f65e2f1023100a90a58df1dc41f8037299040e39fc24146171c2dd927888c7a3eaf0276ef7fce514141c00e1c233a2c21ffedbf7092650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230461c4cd20d0b71ab467be201d76567d3634ee560dc2f89b0e706562ccb59caf293ab07acc451f61afba6705b4944ab61023100d624d4ff73c8ef1481a716e0523d6f07a59e0685e6ffe5bb5c818cd028ca6ed333b95314e1f8f15cf78b7daf712c324f0302047c435bb500663064023008a1f85f42f6d0a9f5c2355c65b2535257a1ef3d1c027d23082a3a4d10466e04bcb2ae7d57167e521671e8c66ba4daaf0230737f11b066456776aa8ea0b107041dd0fe4c9f45fb4e52d8b53a59a643ae7ca3f8297be3e986e8adee48e08e3f61de3b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e37f3439e6e1ec0af93f8c439fad8b7b456671a4ed5bdd54ec36e8e1c50cf6a69e6f0580da93785c97a7db13cfe7a7ec023100a479ec24ee8a1bd147161161f30882ce54112b7fd09bbaec342112a45e424b4090bb7e915ac744ee8c573275bef90ae40302047c435bb500683066023100a40c04b8978ce2a56e9a271e0a589fcb73f9c279813fdca46ebf42e4493bfa71db51721fe804fda053c4ecc4fb7d3e88023100e03ac1fb65b77d5895d581a730498191aef1466d79b16920fbf136f7cb65515698724ba4ff1210cda952f689323e00690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b4f1eb08e527e3dbcf4f2a2a14cb6a026988770df5c709ca26387d2936a1a1d79355a76a6ae364c5cd82812ca5c17177023053eb6e392fdb1b9849f6605da95e5ac80b5e3a06ca497dbf8690d1b6a9b9c3aab09d528a33bb990c697055ff7c22d7980302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008ebcabdf342d4c6f802b487e4bb89c32ebb45b1fec014b0d2444b6174ca3a575dcfe3b7ccea351d27e3f5a4e567dbbe5023044393aa0461501afd7d27898c55483dbfa11b1ec2dce58ebfadff55b875a3e1c85f89cbda3126a7334f770e2a766ddc30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f67247cf4059034896586ac440c0321a3b3e163b939fcd475b23338c0fb4929bab34b1742f29a28a94663fd83a2495e023100a1344ecb605567467e6e087b06580a969d62c2f9d06fa64eccdc112498bd4b3438138c0934c0399c2acc58ae422c994b0302047c435bb500663064023000caf7acff47a2da1f36e8a1041047a836916719dd2414d354be1cfe2e35dfa2d838856faa6e76acd7636619cf986ad902303970b23ca7307b476830be5496a1f4f836391066c91b13f31148c29e34e1a1d5299620358bfe3c80751b1cbe26f122b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b4c70dca7a2dbf78fae21ebb1f949f0c1fc857de30a73ac96906ffdf00f8b6075e844db92261f12b6cb8727751adb0940231009f0d8fa8fad9a78b7c3ea27220f0c02bbed61546e2989684618784788b28f517a79f60af25f9595142f1dcef220a1d6e0302047c435bb5006730650230357065e8236525ebab5613cedfd04fc563af203dfb6571b0601bf925914f711b8fa611dc4aaff17cb719a81bbe03f59a023100be286832a004e8bdba1f56985c4cccc300c77836772c751b919b1c293b41b944288ef6cc1b8d0000662d3652a19ed8330302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023100c675f31761d56f23796e6a34bec4598e10a61c52baa80c978a45e77baf99efb78a47956f96f893dd9a3bffc40be5fbcc022f1ef0e8fb5776d79039e8dfa6b75517703cbc57f8f8c6605583b5431365a9b4aabc2b4275b8a082efe2414c49b3373b0302047c435bb50067306502304bd4a710d21026976aaf195eadab5bfccaaaa2279d0631354cd8fcb66c36bf5a25f471930a9d737c646d5194372d5607023100c874e6c4b45795e2550157cda6e3f4643fb16559b2123ed764ab3dfd398e097908fc78f82e48fee0cf8bed6285a350bb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008d9a58f82e6fabcca05865e3f14ec6cd39e6583e0467ca7fc3f1f91e78359a62912db3a8d6d1c86d8f3266f1aad8fa5f023007264acd4055859476e72858079562ac7fbc48afb694dd8395a16980c8b3d7634a9d73d5757418d00a2334d1d1453ec30302047c435bb5006730650230250f81c6445fb1475bb85e3eace707f8fde6d95e2f1f12228e6b9cc18263f288cfa738843dca252e35adc5d757e56ddf023100ff408f2beb2ff4a3ad024b33257c08070150be204b21e146b6f571a72f52dfda1b20eeafcfa35afe3bd326b4b63db7d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304d2292611b3626192299448dbdc84c9562370fa868545d718a47e5fbfccc0eba69edd8636550859d126530d4baecd42f02310099f44ef839edc72b6070dd78c5f2c941ef362e215f5678036a2116fb8d9957212cf4d00df3a9261706e1b77d90cc83fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100db7561b7761772f70e35b23a6927e2bc5a69b24cef5afbd3f1153af6eab8c0b55457d92273c3d5fca5f1494beca433db02302766aaf01139a7e6232c2c28ad160b47cf7cfeacfc372ebfe4789713bd69b7b1174ea78bbf23f563de44ec383347b72b0302047c435bb50066306402304762ebc1e16997d41715a08c781edcb307822628513ffe4e3233bb607fa56df2d1d81c802b36f56553a82ad48975ecca0230012c54c09f54055e0d6f46829e535510df88d79a7b1d6fa142140049d8d1fab7eb0c7740c5c3656928818e98cee717860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305dc8519353fd5c03bf0adaa169bfcab7e97cecade703f748df65555f4a27a219d90379048f4680b62adad86c0254767102306dadc224074596d7c35761a698e81389dbf1002507d174ff9ecd54d5877b66f413c33dddb4675f9b579c78fec8a06a300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ea5ead1eb75680158702d75dd9cef3e61d240f19b7f00c8d0684cf4e8e0a21da1e98575e0d4e81823a21649cd2b03800023100f23e7f3e5b3594e757c14ce3d6eccf474de5569faeba6461bce4a3b16a5089691e6ec19e4dab26f1f19543a49d8976e80302047c435bb5006730650230154256bac3f33cc078102ff351cffc177e86a05bc63908f21344074c1a4fa2f1be2a5bb4b6779cfc494b09e20c60363b023100fe712f48e01f5b9d6bea8ccff79bf9a2ca8c1de97e7035c908cf449c74db20ca6bb30f50c8f6e055b4d6592b348b8caf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a636ffc6ca982ef3bdc164f27500f422abd66e7816ab905a8407d96f696f4c04d234ac6871fd7d9dc6b97a6f22b9f10e023100a9d4b6808c2be6d000dfaab3f7d41ec05136c22930e95c4a8a37d3c8df697110b6c5ec60a3591621e5ac705bfe51f11d0302047c435bb50067306502301df58fc9855ffc83593f66eb791c245a49ba157063bc985a9aed6d13d49243cb4162fcd03773caee28f2a903ef8b53d702310089c3ad4ad1662a3bf23a0da22eb1c1e1336908fba8926f95e2e50606ddf5c91a89f82f3a55624a66bede09105c5c4a180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023052960d19c9e0b8a20a3b11350e30c7c427c6a6a5ee40b1157638ddbae4476fcfd0251cc914714277c47bfae47c7b96bc023100d0e843c05ca453dd1dc98478677aafaaf24c308c5a1d08cc60937849779492005eb49aa450ea6d0f22c931ad1fd3f2f60302047c435bb50066306402302430f7ad483452eae7e1d7bec07420431bc53e3837a64f232918c123fa1d75414f9f3ae3031aaa82d902bc73d0262cdc023030767a6589560848fc910d7e0a1bf8fb2d2ec2785a3f61e84909367f69a9b1e14293e2fcc0a6c78b6325938ff3ca02a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d411b022008d317f6848e19c96e1d600b49547a37b4f7aeced8af015e3a4baae8ea77c0072d42e19457e793e76396aa20231009f97cadcf12176b1f333f0495cedb750139d810b105e7f450fd23abe489b905f2a306f19db800a33243e2d3b922d50e40302047c435bb5006730650230418c9124ab50b0ed3d04ebaa200a298e1fa030b244e270d77a46a40428d75a141c9fcb183cebc9d9cf230a69b4fdb797023100a6a416eb4be0145f0cb994bda24eeff4f0ba2d80be6b808e017f9f0e95c91992da973a4b8a04493f33328fab3c95b1850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301836ae36a4f5f3454a8ba35bc1dfa62739f9006849c6dba34d06ecfdda4427bb0190b699407ac7f13d0cdab5592f98e7023100a79d28e0b52ec1d185a8182e8d1a3be2cfd4bb2ce1dfa938504279d60380357e7075c6fd7b8bc673b29c1fd9b25329730302047c435bb500673065023061b16eb672c475f96a801510038317b29548a9360325b85139b3f6bf3bb18cd690f474ffd250af7e8735a0710181f914023100e0091dcde958d7b7b22b1fe38c5381541032bd2280aca7bf6b60d9af8365f9db1564e3c85545b137aaad2025cdb3f1530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100afdc6b93deeda123523f61e09299b98ba9d56c73e1db617424aee34e1fd64b82787c8c8885f109c52c63003c178736b302306952e459e99156f1c4fc32a5ca457afb8519d06b99b6c3e4fbd62e1bcbb8250b44b4960a84bcad6cb5f3446a26abb7e10302047c435bb500663064023004a9aa06e1cd5ec65c7792cb668c751574cc5c7d004198f6c324f444df51f9da082f5d4c1a321fa3cbe49968f5fa4dae023017d8e58a0db25f0fba33e6e3bd2409c09d683653bd0628ac779b712029bc63b0eaddecc4dd32cf2cdb7a920803a09c500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305432ffc2a5a5880938fcaf54c80b50a0069a37fde4c6d2dfbda67fb3d4a79fb823c6996bbd3ff7fa88704d5e2f3eb9f50231009558a2d66e6dc485ee396b71ef25f08a6cbb724db57a14c86c916d2980235860cee458f58bd01301abea90d6a14fd4ac0302047c435bb500673065023100f4877e36eff0a6738b0a36f2fe998b195e02faac933683ee226077f788654397abf8cfd1af4c78759b63c5c07774a5de02300f7ee7ae292dc24beb9b3d2c0ec51eebcd2c16e520d49e801db4f3ac2518d5c9b7fc93e752b21edcab75bf87783070050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302cc38aba41e6c93b2470d495d15681671f1ee22eb25394b2835c3df13f439a993ccfb28019b1e9a1fe5ef7c961f231eb02304685289008d2ef0b7f7a3fa2a9dc91b1e1792133dc62804d7870e7e18d9dd07a09217ac818d541ac332552d9f42894840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100de147ecf1d62bf5c9efe4b169cee00c7671e70a6a7170e2740b234c6bef412e09fc8d44b344f1833fd8f1add903fd1e3023100986d7479c96b2249d1f021c6f8253d9315ac4d984bc509bd7c1c789b2b8f24f1bad629cbd596aebacfb17db98d2e2d440302047c435bb500673065023100872dd43b72b55b7d80c0de37df8955e15dd0e2ad67272c7d8f27d8fada22f3dae1d1e14db139e1998ca3ad8ecc70159d02300779c1ad18964749e4f1e0e90a4e7c603ab276adf27843e43a8c8ccca83a3de17a82fe34907bdaedfe732aa35761099c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230771e49a54642c1cabd8880b95359bbc2daeb4748f8b26896be7d17bf44074454efc7180fa6d907fc0f85973605fccd9c02304da71da858ec1669475591f2a706b0b7f6630b06a0fd467bea50f1c819d7afa3c4f2722674e07cd525b1caa8500c7ce10302047c435bb500673065023063421af57199eb90e16db52fcf975294ecadc809d1bf002bedd30f1befa9be4d57d6dd3cf41558863e89f450bc65ad99023100de4e7ab850ddfbf2c29b08f7d841d363bc890c7802078b3014bbf62cd8d9f486afe2096b52cf31ed675f36d6e4aff9880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e05050fcc4dd8e1ec98513f33babe6b7b8df3461e398c289c2d9a6001c76f7b5c4cfee980ce3af463a6b5102a5123dbc02307fab829e2c435e51eca4a52930919029799ed2f127e96620430f08b9cff35f782b6877b77793094ed06d066cb54ff5820302047c435bb500683066023100a7e02167310f6aa846ee76a9566b18054af1b8eb4f8c1980806534cf4b09d10912d3269dc9e227a823e006cadf88d121023100b4e214595054802fba198f1f3438567270dc1e3acfe3add0ab83c650d218b05e824f3c80777b723d9661667bea8695640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c07b4d4d55f2983df6168e3f94025a042e98ffcb3ae6bafa031f88954e3508f68060975b2b0db6aeb27aaa68e9808bcb0230162611282cada6ed6980d7b3ed802c7d14c1542804063e4627c99b48f05dfd1b01d408bcbfd5f31c14bb1aaf526859b40302047c435bb50068306602310095c695c02691c67120794f17c44b5ebe47312c5c94ef6bb76a89b7bcd6a752d9fbcff3dc69fe581cb549796086190477023100e3bd7a3f3bfd0c3b6e4693a2745bd43b1ff9f0c3465ee1b4163d1087d8b201ea9d4fadddefd85d880d232b2900ede2ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306e6500a75a951677d37589ad546c6e7da5f1f3500d267f14876e521c99fc77e2952d2a6d336c27e789d62d98eb03c4e902302ac98395b80cfc7ccaf3603de90cf3b6837ae89c19d6ddd0cb31eb2982664929d2f98bd519d06dfc6dca74992d5ea6830302047c435bb500683066023100dee6ca400ef326bf54628b4040522e2c835654b3763630be4b9b870f8828f1fb85ef1458c54fd95be0fbb802abcd90bb023100e14eaae59501ef42a71e7f0d16980e092fd64d5c0c1e110d560e997ad599416519769db2fe034a6a83e71fbc0e348b070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064022f4b9b32687843b9d0daf2563e4c54a2c028299ba2b49442124d86ddded388bf77090f37ec12d687f8a128abc711296f023100ee4fef0c853a119c5c08216ce1aa9f8ea0b90e5bc70279f58b2e79c5748569e6f7d5def8f3464c485c84555330b56b350302047c435bb500673065023100eca179d333c575de7bf3f29eb678de37a986bf21fc792f5bab5b164c7d9988830b7bb6fd5e584fca53304ab8e7db8bba02303526074efbd54db1b29430e80b916c71ac47116d8bbcbfba901622e083d68c79fd2755219845f66cbf7c44f6285dd27b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023051457aa584725c3038c800c975c92953e53635af0b51f6489b018a59c15d9e0a1b8bd5c13e601db1e2af48c74777471a0230359013d68b9d4e5e9aad3f02a1b71b3ac78bcad5eafe3a8a8c4a89f3fb7b48f34000784a87cacd5aa3f91793612d8e930302047c435bb5006830660231009ac5a6e11b60574dd546d70793ad2724ecafc6865adc4691222b76d4692bace620416bd9e85cde906bd68ed00b6ad2a3023100f1ac2cf03aaaa1d8a7f2f3d791a588a98bd439fd367dc26ea5aaeef464cbb4ee4f3dec06145f4a256363d07bfab4ef6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009f290ac764be6b39d457897166752114c2f9de5a361f106c6b0b69f31c5cc1c0f433539d5c06771d1e0fd5a43fe543b402301350405f5b2b09f980bbfa5f88d16b8d35eeac3824cd8b3953b6ec19bce9ce535fca183cff3175703c41a74f91ed4bc60302047c435bb500673065023100f3274af85ec04a650b5ac217f6f80acd112d6fdecdecce5973ac6a3b48c7ff08498a18a09d72128a1ca61b1e2f087e6202302d9419752b43866b399636cc08a0a8e9870e5a1776c6b59054422f3a340d3f5308933738f1b9e358e3b93d8f0fe78bf40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023065a669c3353d818b63084f6820de44d9a1966e003cb0cb44b14101df45f5c79178fcee28d63b003bef1c9c3a7f6303b6023100c7599cbc68fb22040e5c9f8c4b7870c61dd9dcb3e4619ba3c92f2000c9f937a791ebde2e2ee6d952ad77468d9336ece20302047c435bb500683066023100ef93e96f59f5a5f0bc59a7eb2112c746ed2dbfbbb948941d40575bb041fa4882aedfab7b060e53c5ac68025b18eb97c4023100bf78323800f91480d6b06959c59187b7971c4ce059f066817f55df94e4a8fcf253f7e570b5534888646c1751016c0ea70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c2555fb1b34cf40f0957f1b5ceed0eb741c2cac16008678a50456ecd52201ae89747cf740e8fd3efe3916f0a5fabc37c023057442ba33ef89f567bed89bf1bd9ee0fd515888ceb53e1f9776d1bc8fba844afee639bbaf88995b38b0092b5cb7c3e020302047c435bb5006630640230271ae4c815845a5dd3aa9db240b60be1bb84d3229d8b09556f2ade9eb6908879f14e88428d53c9e94fbf0aa725038ce702302eacadc50739effb5426d843a479d26da8e5e63a00ab3d51a2dc6b9474afce3affa23dfa2100bfe622c0faa1e3c00a220302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307cd71b51ca05ef06142628ea6a8310d4ee4e21780ef51e3951971780f6b2c5423c7af14b165312cb4cce5d66525dc5cf023053f106c7958e450c2344fd9caac2468166a45138c64df179e59d32fb9ebfeff4b349155175ca6314ffec671c805d10450302047c435bb500663064023035ef20491b3262564eaa02a785e37c1015c2cceb6a8aad520968795062d8a1cbaa1969192748beb66479a0ae11c5e9d9023075e256aca870090dd241d1ddf0833046265bb7055a8441d36b9671b5a17a8954098660098c3e84269c4022d4593d2f960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008e5ce1bdccf3525a41a999108677343401ae7deb0bc6fed6cfda5f462564249adebb75678c8b3608963aa73959686a7a023100d229c4889ac13d34254f72d994cd75ae1acd0a7ea3a7d7d7a38487f8279e13a8259ca6a7a01743f131f858024da33a760302047c435bb500673065023100c0c8a84a22dee16d19cf7424e27e340880b7f7310098ce73a1f39549282dde5a15edf20eaecede38238a47fa74018e4d023042907d5155df88c119ec00146b4c1a957263a9141fae6ffc4bf77a2824e47707ac96e3d529d632668c9f586526a55fec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e245f53c6ca2d06430be4076e00171b46ce5c9b2bb85288ea95533eaf0189a1167e2e32931cd2629f50630703d6b56c30230581b48cf4f96191ff46ab9c913d3985e8d8ff139be969dc1f9273ded1284d298cc0a57f40d673a5fe7e542cf41a289af0302047c435bb500663064023053e415322e960ac8af50c1c7fc9561bc469597a6bb554b8898e38a7081955f27c8378d5b9796d026199e085d2b7af46a02306a6a2b49aa91124771784794a2815aff46d349c874215ab252a3f2b0f8f80ab11b31c66ffe5461be2fc2756a7dd20e620302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ab4cf582c53831a156d805ccc63746532cca6a9b2ac32bcea306396c3422fac0b6c38c5258eb821d57442e8ef7c9c85b0231009d62d4612662e8ff846ca5695a50e073fb0d74ccf3d4011bcae2e34041cc1517838bac11214bcaf0a9130540b54a3c280302047c435bb500683066023100eb426b3d9758f9a81b66430e1ff6be0b35359fc4320069b7736beba5e3671b44c625e348c7a1fb7b6d36de334afce4be02310088e8ad7e661f71fcf7a090c6815c5fe8284d19ec9671105c578fb71e031f6ac9ca4b1bf0b67bc1372bc32cee1891eb7e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023004f7a7bf1e4fbeb3b3609590031b0031d1ac0f893b747818519d00f15cefc9c631353f11f2ca3a2963fd37f09de0f169023100c1ec823012d8430ead05ea54be818240a57cdc36132da6050af5fab57125f57216e4312320cc3cb9617d3880ae49b76b0302047c435bb500673065023100804f869f80c32db0d58723fc92df0e5d765a6ac5734d840463981864460f6f126201af88b22077432a1f1d7dc1039ef302306e18c4246ab25e235281e94350cf2fc8862f8c1c26344170f23323f551af004297d1c34c2581907d6b7d7480703f3cf20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cc8b6f2e7249ca933d2bfde0e866df5bdb1f17dc61ea864b443d04ee0b9d72e2a0d99ce38c68bdfca75b2bf8f8f20c86023100bb5d5fafc6a90e51e70a5b8980d57bd583ebe9ac3f26272821c910debd77211d50313fe85c38f8157abfe07e9fa2bddb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305c74ec854f02abab31a8c310afad8f17b8b6653d1518dcf3098fcc0ab7b911abcd1f694aef8f7c3067fff211abd36326023045d2d7bf12106e4f1b33075230fe5367ef714ae83a4d7285268685f93bcb6c0d328d81d732bac1b2070bd357292135550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ebaa8eec1cb335493214e40aa639ef945e3e4b8112c3568bd788da755a02569d9c2eb63e0e48a72a6b1b0384fa198f4902307202c594464ce4bab873fb258a2002136b4b82e07ddc8e457ca5259d5d5076b03bdafc2f938327c05b2c34d125ad21a70302047c435bb500673065023024da3997cc055c8daad946ce675179d827501a11a7f2159a3ca0a328a6a5ae4ab0130497588451d0d1d898bb2c524d1b023100ecaf76faa17239561ce1448b7bfb2d19cd4193f1bcf703fd10dc7fb0f39547d8241b842bbc27a21eaa14c30a332839cc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230489cab25540d476eb4fa6dcef08686fc92bc6c4fd1850b822594d7e12ebe971893a7533d82c96c1e8adb97b34887bbab023066d613858b83847954ac93baf81a6473daa50b2311d45ef65fc62442b3333e2ef9f6544486c4f910e60257d51cfc85dd0302047c435bb50067306502304334ee301db431fa064debc36549db0953e2806d93e02a05f3d4e8132a20522c6aae20533e3c6aae0b22c064af62af6f023100c29444783e643f0b9f824bc00d4cdc29eeded42e1ddece847770142d3b3d001fdf88412dbae7c6be421cdba8268141f20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cdafa14dab234b82dcaa362631bdcf51cbb6aa428b9a9a3841ddfe1f49a324233722379801447c418c06a6e473dabd33023100e1b9991d9d4e5e3df9bcf68184278e9f7b7e454f6563671c7e989e0c67e2a027cabc98fc30cf56e0daf23579334e69e70302047c435bb5006830660231008df424032e01e609f597c4fadd4413422cd1ff7dfb19c965233a1eebbe9aa8876cf7ac761af8b3b692706acab17d8cd4023100b2eb1f7625632bd873f931906affc7e2f3bbf94d249d291509d181b2231872964a699df60c84ec064aaddf6bddc14ade0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230021acff3df530161b408c7a223df780cdd382ecd615e1abacae84ab9e83760e1935ae78cb29b34fa0480fb8e691e0844023100c673beaba5c6eaabc096ba27c3a73b566f69f5cc6fa918e2b4336333fa64a8f381a78bb7f4fd00efc68580d5f68dda880302047c435bb500683066023100d19345845a1044f828835ac54c08473d620741623f258450755c432c02553314b006135c3ec0139b132d86ef72ba014c023100fbde5e58c65da000bae1cc7d54cb599f84677a6734c6427f92effee0050883927849a57ba4190a0abb482c7525dda3f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302f9293d0cf64d04ba4f3efebdc6141bcc6c6347479dbfdd50a18dc2df90fc58d7584e873a891eaef5b2ab315952b12e202300eb097cd9ea89c52f9d31bfa1a6658a4358a91485e1bed09c91704c50100db9d0646e7ecf1921799ee6d613d8d375c050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301347b344ad24a1f4fd1b40c6948f26f193211ca0bfea952fff0d157a231a9bf48e458387e7c2ddb57e362aebf2221cf302300fa88939222a8a4a7d0479ea1542c9229424059b6fc79a9761ebf32588cb09c3fd1ae07b285e5b0ec6dce5cd408ca6ea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008e727f9909b51992372aadddea56e4f8f3dd2b06064529287167e626ced6d45ff10e6a40e242008a4ad35a3684c632b60230482ccc96c998d3e98f557fab8c14b43512e1b266897a98ce93eb04d226ca66e516f08f015be83e7820f2a4496f8f32e50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023013d6790717c4a3628c6b3e25e8e31df2ac981e46ed008fb6edb3a44c6b19837e3638403ec1016ecddda7d70643b07f6202304db4d818632507c3fe781ca9d3ccc1b766e25d46c9cdac6eee0643a0fa37796cdf4be74ce1291a087a92e941a14540d40302047c435bb500683066023100d0577ddd6156809a3a731bb392d66c40d5fba0416391ef842faa6f78fbca0e74c3aec39973dee4698d47564c4f632744023100d0cb38e9845b012cedee71f555444f94edd6243aedeef604e402ad54d8636e870eb7e7eaafbe72e34275acae27568f680302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304e896a2686169bee01d6d172b3d1e8b778e850e1e75b442690a96daac5b6b3683040cc8867fc069ae4f52f2427c0a513023100f9dbeed15b2356e7c3396957651d38c7214d324aa10d487e07c29ad0ec42df41eb8b1c47799a5663660fef4d2659a31c0302047c435bb500683066023100e7199c4c14d97392a5643c5aa38e6009bb16d412f5add3b22911ca33c5973f26998e2b8d64c2d5e999ad9400405c0fa3023100e8a8353e63e3bf171eb1b51f7132cb5d3c23548ad09ee932258c90209237077319d0d19d627c31af6fa068a42482cd150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009a797f577512ad2f17c9e4ed2cffcf42f9293a640aac17d6d20b017ee3d4067bed43be88afaac4b1afa486ceecfd347b023100decb4472bbde5a3bae0c09b6a936c9a7b8ec9ce6919c03783830b0cce439aac0eca6a1684f12b0d43c904e4ebd87d5ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aba7cf33b39a75f6ffb74261e7c0675ecd3ad993a86a358b7ced8e7b6a876d59ffefab28d9ffb6347f0b95de558129d3023100b1d506a2eec05ca2b2ad648e27693423bf98b58196061beda7480913b9aa852fbc3f82be1bee1aecbf4cbbc1ce1701060302047c435bb50066306402306abb2bdc366c96bb9ac09868ddd6dcce072b7f9a71af2fc849ce7d92227041c0bb013a207d8dfe1fab58d7a7148f7e4602301ee31c59a55a0c3374e93d40155cf27394a892310c24b8af3192c2609f1391cc84701fc0b3ac4e3ab360779d11a7991b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b637e664ee4d9aeb00a93f2d57eb4ceed870e02e8ecc0595556471e25768a34f896ce39c3119653a37e1089956c1f436023100d30ed68bd8029f871a1ef99b95e918b35c210bf307fee1a576255b6073aebec7da03e018015bf8b39e2fff792f8bc0040302047c435bb500663064023042ec986cf80c336f09ed325c3dbd9e03c4ad01f6d6a2f685b175046c1707d2558c98578beb7226101ca3143d7f82d73a023058b6f18ae1aeae4a9a40e7ca90090f15c62c4731d5dceba14806f7a42f516c9b41909cbdc328ce73da92aaa48b66591b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310089432421580b7ecf2a88b0cde693b848739d6005afa0195e34b8fb903fe49b1ad0fb702c8d61a98cb3b6a8caec197fd8023100f599ecb3db22ebd535fdecb9f6a340c326cedf6d873deb77f24e68cce160b3caf2531f21acb31ca1e5926bf9a8a5951d0302047c435bb500683066023100bfcc1b3473941d4ea62261a4bd0a3d02d9de82f8905e560ab414a7eb5330cd17a634682a137a8223e01cc93a674365e80231008e28b9b8533ead66384133992170d813a49c55e4e7c5fea1ae5613f0d73fb33f5854144bceb9392a27051244dfcf2d9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023024977d05d467652236a38bc9695bba8e956cd63ae74cac436923ab4ebf30c52e20c37e466e29fdf3af676fb353cc567d023100d83e9effff699be5726ccf2618894347b169e7916acb5d93f3a1860c32e5b2742f9493874e0591d26692ceb07674e3000302047c435bb50066306402300c1e59589594643d5309396b271f9456de6c17df8fb63ee64f33a442fa6440aedbb684d530592900b5da9f2ce5b575ac02307b37addceff9825801c31da0e3a3187ea730dcc3b1747480be3ae5bf19816aa1404672b211add1f0da5890630f256fd70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023032804ac2a67d0410c059c87f1281532d37eb0c031bbf9d502398a6354d08ee8f4999a38f96ed9e9944eba253b87f2a06023100b03197341d48eca984311f424977b9ceb4b25476c870a7e54a76b401627d7ceb002537d73e96401f75c9e164436dc82d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230288541e998ff2c7e72f8f05e28ab16fd67b4da34537330676ce83d2e433abc919d0330b200e657275c0751d586d4763002302125c6562a2bd60c27337be4a89361020459e8f761730a803a03095929d3cce3b9bf8c2bbf02637aae7152cf2dd1db0e0302047c435bb500673065023100d04712c35abbcb3202a6d7b242423c4f7c566e52b9d6fe879bfd46f7fd6ea2dc767b674e62d5b5fe917475ef1ae26f4302307a70d5ca17f831dd4484205377fe0b5dc5afafa194636fdd2ddb7108c54fbb675c59e0452ca87ce5bc2792c10d7fca110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310098a50692e2ae9a18b6a283011b40745e652d4c41731c1f7f7fb26bca76697b5a678720db61a2af4f7ac141c95e4ae7ef0230385f27e29021a49ea9094d811acf8bfb5b142c4a25e2e972de21b3782b2dbbf7b63190b15773b4d88e373d325445e9980302047c435bb50066306402302d4be5416a5ef92081ed74cc78fb6c434f0e5687c50a8fea022feeb6f08cac9f42afc264b541921a408d4b4c652b17b502305e18a8b90891e5854e99abed63191113572f90ec6a933183f7f050aae80783321e15be8fb19ef10c4d0abc314fc5acef0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eb953aa45a5ced5fcec22466f5fe2ac30a2f1233db02b75096b46fbe1f0a6b03abc4441de170c2823ce0dd9319a18671023100e9f81d3f53c40cf408fbb64a0b920b4fa5347b5f2ebff68a1e9bccfc362439b1be5d704d77222765eb98d15ab72b7cf90302047c435bb500673065023034dc4304e2e4f8795dc85c042d6940eec352e73a56f70cf10b25b344c65fd5eaa77f53ade70c7523bbd2321cb921508f023100a08f737b55be1c2f24972d07cadf1a6181729adcd789b721b6ebf012547c3eb34bde2cc2b5ef023f8da3bdc83ad1a2ef0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306958508716b19a3e7e3e42973bc44727336a224caee815f9b56b885494c47e5e6cafc8dd2d447bcba8af2b773d42e19f02307011023fa8ab3f46da3c2148104be902b194214d2cafcfa8bce7d117cc61d1a48afd18645decd9ae16ce3fa2fce19c3b0302047c435bb50067306502305bc8fe6cbb13e9ff0361d24d147c356d3e6a763805a5dd1c32d16e05758cad572b22df7f96611b560f007524747118b8023100e85481974e9d33058c737abb6910e960091ecb984491e251dadfd5cb7abea45cb36490978c93e074cf597cddedb288f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230500cd0cf14022df733fe0ac2a34f420af2c5d2caefa1aaf675298da4ab637ea8a990c6f37f7f584ad4c51f483b91e1f7023100813b0ec2eb5e5d091777a59d54b9de508b690ab725c255f7092781f6217c0c072cd12d53b2f9f17a1bd6acba3d2c53990302047c435bb500683066023100fa883dfa1f3535fdb661249b72956ac69e6e345f18d7d04dc6e84e8c06431c3d7ab3ba771a3a4806af346fe1e748a9f7023100bef78edaeee7e47307a771b4eba0732261c0a3c66460771debce75d428d4e79d19ac12d7afdf5b25b27b278bd8fd84570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301aa76e59a711ed982bc2679f280ce54cd0b133626e7e9cac2d8b1e62ac2c7a205f81d08a4109c42dfa369fdec6c3d898023100dfc888737223278d98a7f4ceff1b32f51833637ad252ba8e4ec08696a29185498a96e5882edba78055e126c998dff2310302047c435bb5006630640230144c298ecc0761f38dec063ef27e3a3f2f3e1e4d893de737b1a69a1c0dde85c1777260ae39e091bdd2c101e2d972747e02301820b4a6d6e1aac01d59072f042f7f817b9ce8fa03247925c38e46699690bcf7d039be6fe56ff243c59a3a0e99e7f1da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d7ebfbd62aedca315b72245462229b10e3321ca520c86ad2294f2781f83f40e8da92de3cdc8792687a324768a5543508023100a012262b8a539d20f5ac94984e4bf2b6f47c5ff0947fba32e84e7e5262de030f052d96e32ce5b5bd7b0c5f9855f38ee30302047c435bb5006630640230693377bfabae5e0a988b0422630f8427a2a78f3894094eb9c61230fd7966bc9241664ee7220e14eb3387ba70468fa99902307adf603cf12e8224ee77abbf1cfeadc97415a3bd3d4cb0ac49446abdd29dc5ed424b1e743043f0cf96e2e95b40a8b25f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e5142519f66625ca27b84e70176a2b952b2ed86557a0f7bbf5b589c73ee9223fcae6ccb783f69fc150f7bd84f296a167023100928b8d3612764fd89eadf3d66ca90884df1cad400f7c5009fbc62b9ff0981cc34866819dfac08cbb5e8e99808291ffc30302047c435bb500673065023100ff83dd29cda9ba8eab1abdf2bc2c9b724777678d7a92da15ff6e4bc07cc42e9dbcea6759ed1227d4bf0020af2bcc0c770230718d82fb673752f7bc7e8db489c02da17f21cb4a52f78a7e1fe199c24d08f64192719fddf87580cf3d1ac2c011c38cc50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305c888686bdfc036dfaa5c91bfcd39cd2ddb6bde8a9536479c904ca6e03bea7b01d9b656e73246b7b0b53dc1e4cdf437e023039d2839557c1682373369e3dc3624de863be3f3b565c5f3eae53dff342c6de2e1a36e2ff7257bd17519aa904e76751130302047c435bb500673065023100a2a5a8bb9f9f0fd3e9f00997521390ce0daed43f278a7c7764297bd3d2b71e207d96444ff0f7991a904ff99909e56561023071b7bd0756ebd11582c6820b8a402f6fd528d9ff4bf4815800632313eb28c15dbbf3e8059989715eb8eac71173ac98510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302827e5ed0a1e1b5403aa43137cd8f0f35048e50c76db94e3b3925a94dd90096a84448ff76417454b24f1f97b40939fb50231009b7e8839abc230b237c4b4b6ffd9a9bb9192061963a4da2d0b09864504a8d8461181c96ef84e5357df3ccbf2f14fac6a0302047c435bb50067306502305d65bd0e637be8c286d9b2511addfa80826ab4d0b2a0e88e306ef935e1a21b1acc5af6db741f3cab5b75a7f81bf587f5023100a503603c7f640ad472630507937cf4040a1bcdc55cec7a489ec1da8c72b6d28a6d8cb3bb2cb45a432f238a2e1f4cd3690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306fde5676283deb8dd8157e417e786f83e2e528703bb3050097372a8d15184c53e72d7b7e080d8529860178e266f76a80023100a1f7d08db46bb7b6601e529d3a8c7c64124e42595897e9463f53b807f889053ef8ab43beca256b60e6c668a5a88c63f30302047c435bb500683066023100d815ed93314face4dbc4856797a65a5d69e27a96d56b9dd3dda4569f478fadbf2077a46bff1c7e7a9695a5f572d5276e023100e1860bbe565a6ce8d28e3a8a8077f5e42fb43ce4ad76ca0810326af3b13a1827f07cc5fb2a2bf9c6e70f31b9254c8e5c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aabaf01445d2393977cfc84be45a1b847c084331f9e8712203584bb90654d6ae4f00ef6ebf0b993e2d13531e25777f6502301de8b3c5e64c70ca6eec641bcbe74d6c410138983b3a9baec8a409fadfa491d81180ce06d272dd02d71a8954bc8fa3120302047c435bb50066306402307a41ffaf797ca3af4c6fb7d07b6a3d1c3d88227fd772a252dedf601b5ac58c723e1a95f990861dd5845fdaf94d45434602303123d34d9279143885e1c7cb99d8c40ef7c192dae74befcae7b0f2ee751c3df2c2c6bc41f7ffd43888af2080ed417ee80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cf1f518fd9d2f576c8281ac1968562d9b5fb5d0cf7cd69bb250015f5e0e44a8eb48d866a433588607c7fa6b989bc8a1c023100ef60bc7c5f46c1f97973a7587ac064e15c760e29a6f4599ff99abd52fe0b19d53ac9d64b7bf180d49d31c3a2e4d285810302047c435bb50067306502301de324da19bae26e3e8f1b45d310681e21d08ae0bbe05fb6090c7ac95072293b2f57cdd85c93fb0705b02fea04904c5e023100b9d9cd2bc2c50c296e797e212a344609e7e4b5a7b84a7cdda358dbc01570a5d1888a06fac7c7f038c803a1c3e1bd485c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301a8bf2ea8922c526830ba10fc43e66f802c30ca7085bd53a7849e06b9ec69777b5f74f80ceae3738ecb25fc680b6598c0230363da557c4a551f5d1f68f442e7837f070ac0886642bf4b85eab7afa49fc917ab9751f383fb6e3bb26578189f777795e0302047c435bb50068306602310092a98a190446923093af680eabff5f47efb724f3f3991ea163590cf4ecdc8efe1091d0fa5ffc060269862e9a33e36eae023100ee23b5c5dbe0a75fd349419342b27b64fc3e91fed92e110a72463b1409d614c4bad4275e95c19af008ffbb15cba11bdd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d6e9d91626acd10bdec34326f048616ab73ffe9b80a5cda6b9969f3f6d7dd2705d7a04c896b0368a80b8a38e05ed0091023100e1c7d1151f82b5c69b593c559f21757d904caaa6d475a2f4e3c6338d34a69cfd4652f04c6e44ba54d2a9a876b2a712dc0302047c435bb5006730650231008a59e12a23485f20dfcd2cf9136672815ecbfbc778eb46ab8cb152964482cf269da5d25515f26e9fa02b926f15a7896b0230338184b9937beb44ea31f4f4af88736b8f63fc9c1f469e4153b31af1c10ce36ff1c0c5f0082226bfe3066e14ce2c706a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023075cc82277cb460cc8ab1ed04233923f793d0d367004dc07d85355a34706240e9000efc1382e3c0e6a07068dc3fa2772e023100b1eeb31d4c0d62b954d572c7292d7152118fbbd70e96c501dbc6c4d3d0a4d1232e30ccf266f45d3f162b6e70b9497b860302047c435bb5006630640230542eb8985bd8eec078c074b0dbfa57dbb20ce4b8871f012817029a301a3f98684bfb36cfce14913cfb61cc53a380b6bf0230642e77966953925872d3b6591de8c4cce4fc23b78fa669122d84db68b42b91226e3419c06fe83a464c5ecc829a88f4d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bdaa8dca3b643b9ff55dc48a19c6c6926991ef31007582307c713a85e0c52affb09b44fdf8ce4d8a999ccb326dccf93f02301546856f305c796b50ac313061e7d7b87681ced24acd28a93ea45d513addcb5f1a13f30981a2e86402b163e487fac2ff0302047c435bb50066306402307502312fc4051aca72fbde80d27e16a17158b77769e5d15bf96a8fbf4f69c64fa387e99f820c7c48803eb5c4941f22200230126f410bc9eb9a49b8767ad20ff01dcc477301234cfac916e701876906153a3f1c29d44bb59c57f04f9a7e50ef2bec100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023008611edfaa3beb66902cded6f6128d870e59d999a2024a30d14caa550fd40f5d7ef7e2804e0dba171d4d7b6595d97c0d02310082f10a755462015364c9de0ce2d7b4a2cb4324d4740b8fb8f6f790e9070f54c430c116b0371f6074dbfd3f5796abf13a0302047c435bb50066306402301b1ff187dcdf6f8a08218e40d770fa51d5b5a4e8f701303101bfab31ca186ef8e40075a22689ba93b467233be785ac1c02301a597d46063802eb0155699baa7a032f2c0bc941ed39ec054e6e24723f769650be06e5e6a4d0848e37844c8aa6120f280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a5fd23842db8c430d96f7c976b4e26f23f3d71e21e1bc1c88a4f1bf4608471e50781236fde74955ba8048fd4b270fb56023024ddbe98da33451bb6a6e079d134d01ad5108430beaf60c66a3c41f1c5847a178d007761a97cfbdda733ef68adf5bfe60302047c435bb500663064023063ecb0b62f21076ae57f129babf8d2e17b65ac44a58672c34b57913ef64b03b36dca4b13bda9b9327c7a1fa30e2f4ff3023049eefa21ed2b5dabdc8e39272465139e178838833de3bcb2f1b76a38f929e3101a5827efe7f2041da771e5beb4468c8a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c2e529369aacc9fcf65207f67184c3cb85c7c4b8e9fb404c986aefc147f07df9456cc9d7bd5aada8a6114f1ffe6fcb10023100e033b4ed227cb3247fc59922b7965da228efea0148f77684b94bbf071bd96fb999a4adffcf9ae95990024902212733ff0302047c435bb500673065023100eb3dcc35bf49a995ebcd339d7d23287763003389d6b2939b12b5a9b6bbcf2381c8bbcaeb8d6857565fc2688dfb6be56d0230679bfaeb783df8b190b5ffce92dd213a8a5ec0d354c4d2ac1db9351ba0f7fbde07688ee7d8644e9ae1fa2f28e135163b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b39594fd50d74989b8cc95873c271909bec27f578d0a79313d7139297931a5c7c58dc7e9bd2b43d121aaaa162aeec8ab02307c398d3b18dd0e953af8e7a608798ac7497fd4e1cb14ec5bdd47c5d9ef115c8c3543a607262a95db6b5abaeb160840a90302047c435bb500673065023100a41a167928ac26ea268ee21173360a1bb11292cddb225967c47af8428303dab600a08e73863dcaeaf0de50ff00d6809402304fd81bf99a3a47666a0c0ff105319d8c34757f39e3ec4f87b20060483e28158b534599c917c31d8eb92aedc83a59382e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b2067f1abe45c87ea672caeb149594521c83a49f61edba70d86cf721f62ce38a9b1621704775b6984827d2047c1c08ee023100fdca692404ce2f9dbb84ab769cf5a6aeee4beae2aeaba7a0e45e579f850bb801bcff32372d84ade96ca4300dace9ccb10302047c435bb500683066023100d612c722ed221b89de24d91e2606d603257d4261c4a16d57360c1133f812a8ea716dadff9142954041c204945d64eef10231008bc7ac9202b14e258fe60feb9e36dfacce74d885b5609aa3b8191d69bbbd07bc20a675c2c51689e993ad3c35bbf871e90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f2caaa9c6f5be6f1fa4dab5a6da87b7bd125c68ef992bd2b4a33b9beeaf90107a09bc3234b6fa19c28722a5ca6f3fb6702301abf6a91ec832dd78cce4031531bb0bdc50a52738b109fcfe03265b814e3a76358cebaf38bd11f5ec9e79c0c250f11510302047c435bb500683066023100a15f00ff2007aaea150c9240f8f0d868766093b95cfcc6c126900829ff83837a66c53830bf0dd3e1eae40047e7c28e09023100ac512031af6d0955f8403902563efe79294690fcb4db62ee651c5f07f9ade9e83e769602578d146e4b209de5e12ad7570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307202542d0a92734a8631690f76be7cd8318f3cdcd9de3f59dd3f3b0b49cbdbbe5e73eb5c081b315cc3164f974ade4d14023006a2fcb565a4d1eb5c3986dade3e3b49730bb82092ec0bae43a088206104e45a7f0bc98958417bb6e46c8d095a3abdbe0302047c435bb500683066023100cd94d979e5f843014031b29a5be4185d89d5fbce8d8d9e42b885816a0c00d11e8bba54aca4f2bd1cbca2dd79cf3cd187023100db75ce43a40b7aeeea691026cf1924703169eaf9ed6639b9078ac3e20b76201a978d2df22543f6bb3ce983db594ee2910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ac4d7e888e8a4546b8464fa7ae44e9b329c696921a56ecb8b5105d9511b45c47ecbabf34d076140f33108aac4734e970023100982af319a0347fef1bacb69a780df1a039eb21295796c648b9204793fbcb5a36bd6224f513b9de9a50b79d45de3f14aa0302047c435bb50066306402302aea06bae3a32cac16d46a98847e8a73dc2b32d5e61340fa3610b8c21120ced9037deca786436829afbe53179c8e919002307d00ac44078496f12f43db27dc938505447afc13e530208567c4e12c34b2a8f03806c4c507e14505b7fc198a772015870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009fdeb221f9b45016bc581e907fe60eb3e72918214d2bd90932cdf3a8aae6555ef929331893badda701577660cd5c691d02307ff074e312e8f71ba700864d15530f98e5458c6f6c03564c522891ae684686105877ae3eb98d18a7c076edca10aa2bf70302047c435bb5006630640230289b7f4fe0f147c375794419796c4ae8b832fe4dc34f46b9e8ffded346a9698e6af761aeb794c1aecbc7ac054c93904002307452e6e2886401ff688cf74e24a5f83d79952a70b85c45c188ab590296b05be7dec6ed9cfeb4fcdbf3a61653d66b190c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500653063022f30614c140c511bc4815a82998edec385452a4d3996506a105a73a1d3b471589e5161b4e2daa5d0113d6b9d9e951c550230287e144778d00093b78777e6d96e8d65704d36fd3480759d899f77537487dc00d387ea52ef549c5e76a012b0553bc2c70302047c435bb50067306502310089d73b2c7321f6e0b60686911cd9def77f920e64a28a064edf95875c0ee108b0af4a00693660f35c85ffa72593d84b660230484931e184b52a89bdd31d8bede3bea19c65992d15bf0f228dd804bc592e581d3e815aa36b940621d841b5081fce69ce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302a2cbbda139cae259ebe3674364a29459c1becc2af66cc46933d8aa8a89aa292b7ed80e95e5af55f08b45d4d095d5d5e02307328367b0ae4bdce6438618cb6838f0511584b4fdca5aaf941e67142537cf7b5ed22d6acbf0cb181fb335cc0774f12d90302047c435bb500673065023100a316734cbda606295e5c5cc7af9c4a530fd37b443273d7000edaebb501e4fabca65db2c47043ab14efda11f9371db170023029ab276f875c133986c1800673aabb75f79af1c2c1db1226f9dadad236b204e36c97b0088c7085858331d74dc37e3eb70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a5bfe517192ddb7657387a99b10d050024f9c594236834f0ce8ce804d3397a81f9d20ebb440d293d69361960311c2f1b02303461d6ad2343ebd515a63b4357a93f1e0dbcaffa69505d2a3e8f05f4ed301e95908ba790a52930e8e0c2b605941755350302047c435bb500673065023100deeb3e66108fa5a4ac34d16da813314ab73e33b576eef75345b0274a28f2cb1988880148504ffe1437aea346fbb200b50230740f0011d66495c9e7ac316448cbd65e92b34a101ae98e27f399894eb9222948427e10f2c3c840bac67e1e11ef384bb50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301817aa7f4a5bd394f41f56a0d5de68411b064cf12c111594405e9df7a4cb36fdd5fc860bf00c858ffdfef695232b1dad0230087fc934b078c98b2404cdd34f59fdb26dc17d1191b3729dfc96a5e89ca3597d36c23cdce7f3c169bb72db437a593db90302047c435bb500683066023100db9bac532ff033b3541c6764f1fc23ba8953d26b1260b34b23f866a8498e7b30d8c503ebc51152de5d8fbd508cfb0b83023100a1e8780c9c4ea30a54cab331a9a5dfaf487ec945eb9f69bafef5466cbf35af26a59e443a9c884cd87c3029420bf9afcb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d85a0967b41498dd2549ee2f3aad8500baf2a173104933272eadae084186731a01fdafe62a0ee6d5a530fc2583820ca2023062f02994c041574a340b855d07c018f0490d9ac9a86056dc96fed1cdf159ad28b07629ab147767f2c82431ba81944a300302047c435bb500673065023100edf5bf3f438b45c358d65870ac2557c82dd866184f8c92cf9c8f0774b172402babd1f4b4df4152ae3a445c971abe15d102303053063e8631d4e17601fa23f37c9d3280d9741b5246c30a143da3ff706f981c1f35e7fa4f7418c3e7e129df061c3a2e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e7110b087a7ff1d3175f2cd16bdbbf021df5524ed17d8b665c600f3561f2ba8a2bb1cd1a08e0ee6330e3a8237a1e08d602300648a898f9b067e4594fd9983c922df746809c45ff07209fe1aa736657310bd0519d29a808cca245ad8e18543309a4610302047c435bb5006630640230225d1cbd31561676acccfa65d03998b56f3c8bdee8ee3e9fa8dd14f38cd3a9856d02e98ee158737253bacd9170bf59bb02307c8aa3b290fa567a65cfcd208f7d5ed983c91c88a367631ca6bc8263bf2248e76df91a2da252380202d1a03f5212e6ed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b740c1522e2c651dd3ff264641fdd55331745a820ca6f8c37725efd4f3b17832932e04604e39fe0693063ae5239362560231009e60f6a8b90c0b0f162c1dd3e6ace61a3eb219530d5efb2be1cd7c47a77e9f7313bba1c103ae9b5815f42f0c1e72ad740302047c435bb500673065023100940890e4d904649d8f7b96377e581ff0b681959ed9f56308dc384028d091f7afbb9cad91670a17da10d6dca3470b0957023014fd44a624304d1c096bcdea10bda2ba5abd40717795c3492cc7410ec69f77ff37625d6814b1a30d7b26a1f40d0a6e010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dafeace7d40b97fd2a17b55f3a940426837337801c832a3e40ab935c503d6769299bec9511083c5b251f19d97a123dfe02301de8dcd4a2118cbee4faa5ed4aef58b21748d3a01b15a5f4bc2c7c710e4ef573613e357b45714eabcb434bed1eb692390302047c435bb50066306402300c2372ad400cbcef07c886d00f8562b85ef01bdbf980502a165809b0b65c507b84a8d592fb1d0e6456d07e2a636c755a0230755c7b60d648bb192dbbac944261af496adbe1e9c519e10012f6c3273b9220ba9f856679e0154cd5ba3d86f387a994070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bc65b94c52078423a30df107ef736a35b8954bd773df329d7226364818a4b569f53ccb702fcedb3d671bf82adb5e5870023100963c72eeade3054d6a2471a5a6c9c54b7cbb212906d2a7d54cf74265f632b1684b334926779fe53b98bf703e92dd362f0302047c435bb500663064023001566813a039189884713e265d97057eaa7188d7d5810172bede8d5b5ff1a86d84d5fa91b980dce10ad712882002c9fd02303ad6fe7ffa975483e5053040c144877e9c5a710f14ec7f3de8577e991cd2b4cd046b4b530149b5974da2416c3fb0d3510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023079015289e016fc364743df764d5c3da9fa8ae1a54fe261bb689f578657280f2e20464bcbb81e38fa39defbaca4c90604023100fabee7a64881058b8b5a618b1981a6f1f259cac87fbf662f1969f7f2045c398220a6506a4571412cf415cec94679d6b60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023077e120e38af53a3c1070c437b199be7e89c73f5445ddc0d6c905e962ba6b83572d460f5da831a055c372d638d94eeb200230497cf3e4a85ec929631c7426f8d19da78f23fa16778cfdf7cd038b322746a3c35239e6297a60a08a5476344c96404e910302047c435bb500683066023100f4c0364c1438df46530e796a23eef7756463236e95081d8deba94adc5c8d580cea0c8d623ed77fc3d18583d0b35cc950023100a93266e8ba017212559bd90b42383b9f1773d5500f56747c1814ce3eaa3f447ba7d3e4c4695c192dbf2f799aae751d430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b2b6cf3a424d7773a5a2290475270876860dd38c168277d4d40480f9e5d6544180451d9833a12e57b07a94a0aa898354023047f02e1075252a5cbc9446456209fe497efbe67d510948577481886c29f3ce9ba0d168ff666ea50e31afde1ff9f2ecc30302047c435bb5006630640230353cc6121e8ae52dc757cacf99a55a95a2d0fff4c3a020900c52da1090f04913e2340cd0d275d996862be01b61e047e702301008611d42f828bde89fd26d5e949d7c6634bcbb651ac206ffc51eea85a18b4304a5c4f245f5d0d1434045046f252e830302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023005643166b7718095411fd165ba2a359231a8d68fbc27f4806d659c9101d380d64ba7dfe1685ad2cc627dd0b9336f3f79023100d722f9b5a2a2d3fa68dcf44e8be574b7934063f3030ed0a8b72a26952df88f000dbb8ed3b5cc16565bccd311265c11e00302047c435bb500683066023100dced0ae65923ad8657e4ba7ea059a39a00b6a3ad25854edb987f524ee3b0149714ef8876f77f59e0eb6fa5263afaab9c023100f515e7b6ef9fdc4721c8e8591c570a0b9ed792ca128b2e83b139b124ab31622931cda52a3ed17bda727f6a39196bc07f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303c6c1613759f610a230625e1ea3f72385faaf02cf6636c6abd7280099ae6a40730912ea2862916d5880d5ed330df1f76023100b29a28cc648e48b7f697359384073deef361c573e30f255ce07365f94285f597744059fff1249533e8b1f759a5eeee5d0302047c435bb500683066023100e0a1873a2c92210db8eb38b9c19be23475813c94686fff03e010583ae300a81342e560828366429ce3e6b0cf14f656b8023100f3e3e8f9e342f4ae4c0a859ba086d9f49d8295b23c1380849f3738d25f098a4de820f0f07e6b389d3dd971b97cd784470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023024ce1d140215daaed2c046efccca15e382e9ba23c2d3d01343651fea4e9bb7cb90ae525cea33fa384a317432392f38410230620a2c2ebd74439168edc2f2eac5ff8add3070b896a252902ac7cab15bd2c9f9314151390d49d451c1b7a039af4118620302047c435bb500673065023100b0a2f6ec928b8bc49ee6e7dfc02e44cd4d745a9f394dfca58d2be408415510bcf16d67c1caf31921fd727cf293e89f6602300eeb5c030553e0c9d7dc979c04632dbdff6dc8789c91bb52607cd002d6f14d6ed783c1d4ab20c8c2d1beb245fc6fbc870302047c435bb5006630640230451c03a962b44a6100a9ec08fcb12b8d39b9230cda7ef3134fa042138bda8632303607b686e441432b3dc30b797acc4a02305390770e39bd4f25f30d946f1aa63b21588309ff922320fc912dd18d48af8764844cb1f6f04f9fa88847ca1e62690bc40302047c435bb500683066023100c3f0617c48ae0e2c74a7361951e7838e1c553b9f6e22bd45130b0b4d3b1841e825774ab38b7f56d640401457e245da7e023100eb46098851c1af81f4659bd35d1f11516d31805011d4c473ac314fa6bc275f4e39ce659935af2cc1e0f3120b3a8fb7ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305803a0a81bb29437d51bcea4f3201330d974daa1e6551faca5e490439789a0e74881370e0dd40e8058b5225e1f672a3102304a679be3701b31961ef00598becabcb7a31dbfc18af8648003f8511fe0e84db889017694192813ef948ddb2cfe68863d0302047c435bb50067306502303eeee6bf558e2c007d4b97bd8095a04424d5d6964f75a7923e420c4cb18bbce451b6041246529d4a4260d7dcdd523ce0023100b7329f951074360984fbf30fc024e252b44ffc42ea30f7b1c7d4bb0e95cbc33398212fb49f40c1eb1569429c18de91dc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310083588aa3b09614a7f24cf5d79c83914fe3de002ecf043e1d1e6c23bf36c0d0ed5e3dc12bf97d5de15fe6cf2352f2e46802304caa9cd2616e745cc00d345a3b3ec690414b82b2c3ef53de062c6a16bc7ad95a0b29893dc5d453e9b0f955a3ffd6c58d0302047c435bb50067306502303ab55b4ca97c18e6e1893df1eda666e95f323ffe4e9677b52997b14c7ba96c717abea8fe9e432cbefd93f94f80813f4d02310088fb7680533089eaef84ad665f1b87e8c4289a47a4ae1c021220a33e6d677902e04dbe20431baecf3bc36061312f00ba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f6fe93846fca091225f37caeff3b5a69c2da5e0d2e6e5b0f33004455a536725fdcea7a6a3a7413867b0abbcb669955f1023100ac13dc390b6c03b3c69eac179db111560c6dbe2b415e01f68ff5f5deedaee3fc246c80655aef633ba7db7a086302740b0302047c435bb500663064023056b0f60ee17d7901789f2ba33efaa116d77ba772dc82e1f1a95e8b5295ea2020b896f7f13660f9f7e21ccdb353915053023017f229b11bc868f3923e890b0f9fc5bde72e6e7cdb3144007ea145d325519ace05c986fe79c8610120cc4e7e942bf9e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097db6d3dde3d3559ec837a6b4568a754a7e956b6c68be1f61496b1ae3b395a17453541dd615e23ebe26ea6b226f271510231008e8b4d22d39a02d2821b4f92ac6a542ba5970ef8522f2aa7f93bf2ec35270846830f4561232b527a3282f2a2bb5b4a0a0302047c435bb500683066023100f7b6f8067d7ea89063a3408de4b15f4e9d6e1bcdc37507c6a1ff8da06a3130eee1e6d9a76993f36156b87040b06f546e023100f3dc2518c9f1ed8c2ebe53488465dbb894956d9a1221354e864cb976c5c5f8f2c027eddb202d34af13fbaf7d981227570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230494ac66fc570920848e1882f31e65e11eefa3aa6a6c2c2e163cba953f8e00b614d65b42b834147e4812bb58ce4d7289202310081bb6481abbe927bb2f39edad1d08dd6ec11b6129bf54ccd3447d1490c8d1c7507f52dd110a865b7842ef14dfe166ed00302047c435bb500683066023100c2b07acac43bb741c05efdc0d3be9e56bc5d070637155be98001942d53a9aacfd507c763adb7826085cfc7b6e2f67351023100e521969cf43258424cd2c416785156340da3a08940e2cb3b72fdc0773fb0f84761ff3dc68f9ef37b398475f4ebb15b0d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aacae3f32f79fad435e702c46ad8759e0f8f4f856c2f6a62df8ddf38eecd56d5fac0229742eeebd48e61e25a0cb6e6dc023100d16168943e9828a91dff51b80a888b8d05e9425504c2e5ff2808805a1430d8efef6250142073def5edaa2c649322be940302047c435bb500673065023048f3d556135c02caaa13fa2ab6ab5d64966e32481edcbbd9404d8b2a5068b22f8215d6fd3b429e57a48306324c241a83023100a795dcf21d66eda701f290abe189b1009660852606ed6a5b0b8d8e5d0fa1e54a5da36c1ab4d68fed9e42db8809e422e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b3b5842545d37b89163ee2902b0efed84ac4cc7ecdf4a1316d08461b3ec2436b553f34d33edcab5ffe0881538350f608023039b1c368ab237c8b416f9fd3d37c92defda498f3a2ee0d94b0cf8331509ad9ce99fa0f8f825103fb40303d8fda2dddb00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023079c393fea6864556f4b7568f3b46a58c027a996550d00101760bf5396e94050af26ca2c039cde81ffab0834cfe28683702301361eff624ade7a86dfc9f2132515753d14f96be52be133753b81135b624b46c647ad77515cc616d54c685bec864bc130302047c435bb50066306402304b54d3e447d0a817aea16a740ae65a3f85131fd645abcf3d281cc3cdd9d37eaaba65df73ee832d323d0475c0eeaa9724023012bd6c7ed7a6b1525f0ca014a59ca8f4674ef2d44a134c4c28cbaae8f45b41c052c29736337c20752e57db17bfe50ad20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e032ecabf390af99a458a5a36c7d6785748e878533d439474af276396550ed233a825055aac6f8314cbb0ab756045c0702305f6791c7e6b7577b5083f97efbb2d45ed1e637eee300e9eed75355629a98f9e149f127f6580eaed93d68663ab66babac0302047c435bb500683066023100d10776aa2f6c78b7ef7fe932eb93c189024fb1facbea75ae686f2efe3303c3f4de3883982928215b98a25b23c58a19cf023100d74019ebdde91a34fae86082faf40e1e5c13d0a395cdfa82ca4ae9f038faeb2ef55c53fb2afc988e865e8f69ca03cc9a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009826352969053dcd5aff4131dacf5c13226d7677e0bc0a5e24dea01693867c8b347cb6eb26965f17906ac0f465a0901a02304ff5a654013dc71c0b4e4632571e4926b8e3e8a6fe7abf573e7c0a51b29934a4902ccb59a573a5370deb02aab02ac43c0302047c435bb500673065023100822f55961711ecda59a82b546975e0c5562276643c0a38f4d64f7b53c563007a4f83cb866beeeb36eafb7cef68e74fd502304c9d6b3f88966e0c80de611af36514375ab681c45baabe5a08c0e8609d9d7bfbb3a574d4cd3de4f689081f2510f01ec80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fc59bcce7e32018ce6d8705eb627843f004108932a5b3c1ece6bed5cf3239865caecd6c23b6d8ab97cfad85123c8e9ae023100f01c3b4226dc75447699520c94571f90e02c4da7d6f9fa15d475764b2085653fa9932e3945ed788d08d0fa43f133f5ba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304e7dbdf90d58a137357e5d9d76522396eaea47702c1f5b76108d243d594491e7b6c6dedde5c34018fb606c3dd7737ae60230580f1b1d17bbf05c600dd7effc1bf123457fd4e1e77980d414926cdf6d68644d226d2169c1f4a06095af32bfb71fad560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301cb66c741cb2cbc226dc3c0ac10d9fd1466e991680ea86f237887f520c736e8aecf8410e933b5ff6a7f8b9a9f159ecc602301411415370a0c4190868238f475ee7ad19983f535bdbb7be9d5415e2c2ebbe50378dc7c70691de1dc1d6bc04d70c8ac80302047c435bb5006630640230114e1a52dc3606eff259b97eb7eaf71f487badf7340387892b20650fadd33357f41f2c66526a06f9f9505fb989fb89140230194063767ac35e6e0b2ff471b2c2f92021af97b2cb8274fe4553c768156450cabd3ec038713964edf656280e367659eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306e7183f56378dd551d8477b0d7a96fbf7e8c3da19445bc03fea6b1a2ec07ed4d528f37f87c92a15eee85952fb0d9c2f8023100d657bb8839d959cae8fda276f71e812151bef38aba7982cf24d6ba81278f8e8694b860306fd60865912c6df1716f2a8b0302047c435bb500673065023100afc28fa226ef074dcb0a464f1d5ed7ab8723570944b1062dc96a6bd0ca23e9320f482d173bf46317b55f3dcec9e78b8f02307557d812ad998a7293b07b691d271b2c6fa0868608a26d76955406abe6c27eb9f39132f2b5c4195f94d5431ad7f8ce7c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e20226fd832444dcf9fad3daec897c5e3fb94a0667ca94c3a32f42d5b0f5ff5abc340a10e54daf800236983fb3225cfa023018e4b7e17d28ee770ec1adfa6d4375ba5f3e6b4cdc478a9f7540fe2cb87565e05f1ebb8a9bb8db4445035390dbddbfea0302047c435bb5006730650230331bfeb2370f7d5cc7007eb4dd3cc65427867c4b050139fad526c1520fcab4568a74c8030e484eacfcb25fc0bc0c367c023100d0949f9b6684db3ceb07989aac79301ff6c0ee235bd49db7470f067fcf31d6d10bba46b440909fd8d0c41f11d55644880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230769e7dce0938802bc3d991fd40eb68f4c1d199562dac3c81bf26373f971a227e285843076e8a44b3e5ee5e909001ba61023058b5245b542cc2e788037f1ddb64c61142b6b24e63c7dd5c50e0add2694e8793000da324053ddeae7c2bda2b5475fdd90302047c435bb500663064023079f9f200a98fcffe95ac29899ca7b4fc91c143f2ff8b918cddf7197a3783bb04963acdcd8d35985208231f8a9d0825c9023067cd4f2010d54cdec5c9c7a9057e6a699268d9d7eb2de4c111cc8ae120d64a2c1cd17f2553e16c9ee367df3135da3df00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d3afe0793c5499bb8fb18102c2284c05aba0f30682229f31b8ede69ab57e6ade95a1ce46f075f0b16a51b9339ff5378e023100920d9bfde52b84563837a0c346e91db2e39a3024c1e2618da312b62add9acc5cc33c7c9d9eab56329c7cc8ed232b30ff0302047c435bb50066306402303b9e79aa3ba0cc615055e4542b071668dc143d03ec166c92bfa4a9636b3f8329ed2ec905567c6683f992e1d3f85070ae023016682594cf8326824711fe5492f1bb4d4192b076ef6cce6e81f2e339fcf11e4aa81bdc2577924374b1b9cfb5a693fd640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008e3b2350317baea3c9abb9023baa6a0ab4780a5cdfb004a6781ced3a70f89cbfdbab2ed17f9fb3c69fefd752a67d0117023100fb939af2d4ec3f7a6cbccbdc7f802a6b13f55018a17d16f28e10d2fd0c1f04e8597beba4e4b1bed9c906d13c9bdb66d90302047c435bb50066306402307b67f71c0e6a1e4156996f38388840bc8e89cebca1150ca986588071d7687910cc4990cbc1a7312ac7f52134c4a44ebd02304ec47c8b0c43639c92f8b9f925e6d6068fa08f4c728bd4455f0f60edfc931e0fe04d03a2492a55b4ac5fc50203218cf30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aa788cbde8408f6741fec3a0a2859ed9ca1259886c39da718eaea994b1d525fe4af4439d2b17fd0e5d97a7273ea5814d023100ec11d04987c7d6349b7cd9131a46d0b13768c016e26ba9564f194051c2149106c3c68ffc3c8013f10c17748ac816ccb60302047c435bb500663064023021954f52a0b804e4920d179ce1868487f22fa4653d0447a7083b283214acf16acd3baf1e7397acba8e0190b4a5b1483102304baf077ce8c62760b08fc176161cd5db2d87421a514357c1f9f24af9232c4e98a9028b74fa88814d0dc7d79b8d7ba2900302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023013997f76cd75bd2c176629f8aa7451b857f615635cbe0b10864ed55c478eb4e05e708f786bd97ac6abdae115b0e79c89023100cd9a50a54e01952e0e24741a9cb87af91342d0d68f910fa27eaaffbbd6b8c4133debc2f3585ab381ce3504fb43648f270302047c435bb50067306502302779614bb366db4b21df9627a26dc824b9a2d2d3485431cdca34816376ea80e623e67f6c0cfd2aa6a15d7aa0d1238384023100bde4f7b51d61b833dfb42b3bb18dd47ff62c3a6fc52f500f59003950b814c8597536d640ed4dbaf1497441932d2e47a60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d61f5d03ef4c6d6005e50a4e4135a697d60912f605a2b4f23474af3a8657ab58e88a92f6362c6117f057ca3127d77dd0023064684249f798a333f70b9dcb5038ef8782b5ff292ee580020ae4dd334ea0d3dcb83d2c804c6d9610f216b543bdc1589e0302047c435bb500673065023064f09cc1cc63841fcc9297759a10f4ead41240e6b2ac126bad3a4d7e821d3458c64c6a1468631ae5512a81a0437409080231008510f62044c9dd61e8a5b3a57defada0b2dcda2b32e54b5f20e6114f898f8f33e6bd2cbc378443eccc981383ec8a23720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b755fdcd8b5133c2b8e088292d51dc0b471e54614ca459868eea696b3bf549eb7befcdbee973a4fd247885058873d8bf02302a2d1976fd7f1e66e8b1dfeaf47c1ee7a7713c9ce7cabde027ff62f486e82ec5d27ff5cd95f1b0d98f6c4b3f22923b010302047c435bb50067306502303db4d7303da4e2f9864f866bd9df8f33bd165161df6766afcedcf798beee103c5bdf34198d03bb98aad6839dbe9de701023100dd80f227a1014c21a05c12027b238cf06fdfd1a502cda8e85ee73638e3e00b638491c403dd89a5da64f547f07d82e1c20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301a9b32180293c3975be353122b274fe91b5e7c94639d0fbe223e5128433557da037365018ef0e3439c5f3c189401bc36023100fd390837af199793e06498fd3daf33e819e1ccce18b42589714dc5b171e9a12cbd844e51217d6024f1c3471fbf94c8ee0302047c435bb50067306502305a4a50856888643df808625e680fa5cda1d0d68e965e5a2b14508d840b300e47f089ee6f5013887fa859f5b572f655ee0231008b1efc1f4a7c7db736bf0c132a33aaaa8d2746035e06604ae3b04eaf1d1cb38624c6967a7854f89e30ff1a5430457deb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304c3323d8e138ba8744f4dbb14fdcba70a3baf862f4b10db0d99a4c4fb1181638e9e303d7381a0dad8bebe125fd889a48023100b50640a1ee125eb1f80ffe3558a3ea3c9c9ba61379b75eac96b2cc1f757be7ae55b81dc4fad2fb9506a35d6e0a2ec6af0302047c435bb50067306502300f2941f9e6bc464fe439c4b4ab737de4fcdc0348524ee649d991b457010266b12be7534b966159a10947cec26abb40be023100a5cc412ba85dab9c61b6fdee622c11e45d27ea3f784c3fe5660c84c752868d26c8bf1c4538a02142f8966a22ffa14b0c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a1406ade25ae5b98a37134ed538e870435c56ba7f988fcf52ab09c2843c72bc2ad7b28ba88368c58b203a3fd6d97d29f023100bc65a48193349fa193736be40c5a4e985c7802c4c4a465db8dcf3b657f9f54ccb57f2432f0da19ae7aaae9a7994b08890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dec5e9d96dbaa474c2f0851dc91f6edc64de239ed39a26ea31ce5fd00b8544daa455d17dffa8ac8128fd52946077aba702300ed889068df49b796ac89d47cffb91760c0dc9c486a7129965065eada34e12ceb9349760633473d1d9b39c3ce35eee610302047c435bb5006730650231008a560a3c1021465ed94611f5bdb94651d82309500a5c2ac4d6a1437e82fa68a91df84e5cb0bc0ad7c2d724fded742da002302f2363fb322e668eee045a7c165e048e8e9184304afaed1a67fff8f3f31d66ced898dd322451db71ec7919770f1f88ff0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bdf8f8739265b5097a993908cd6c4dad8b2cf31638d975906b625aee534a265c983c7fd14c87b9ecc482946326b910fc023100adb912d2c041600f7674e947715a3a1050377335a61baf0b332cc93a74d96ead69403b7e996478acdd45ff3b81fd27af0302047c435bb500673065023050f362504d51ef81b744196650e30ccc12e67e6e2881145e38e1f622529ea06a4c9a7a4d9c187cbf2140679fa3be96e1023100ae4191c3eeec1e7929287eac773c04157eed7ac07dcdfd1b2bf4784fa998a3221736d3f905a932fbf19eea31b964be2f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100faa301b3c7ff0eea60b8b7ff68de1efb272c063239c2bf32e2a0b3d892cd78ff4823c96f819ff32702062de25738818c023100dfbc146e78f77d6dd4989f7a7e985d36238fa798423d0b49688bee75852d30810e8a15c72871ee7958d79c04585b797a0302047c435bb500683066023100a954d006e503265001aa0d4b2b206aee1dbaaa6f5fea0177328508663fd90de0d51d68fc8033eaadc2f6f887e93fb69c023100a68fee21654764693a1b834cafd03c48c7f5dc4295ed5cfaf4a7d972a0b30feba3aae985b695abdd9fbe92a5d6f3f8ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ed9d80b93cd2869ad43466c8ed291ce1e902739e90257606f21497a35522642aeabfcd615051583365eeb4f0fcd4a20302307e67c51a09f76ce79b1f7ddc8cd8b72058b72bf444b5838c45cbf891c28d805adfd23adba41e92a597d1e1e9b5b4224b0302047c435bb5006630640230196c8afbc7c09199521251a96b5c85a8851f2c9d80767ef12ede59f13be290f58187b46d14b7153824c7552e78f96eb3023071cd15ab9b4d04a6aa7a3c535319adbf67e186743279ceb868e7a5ab1f7160daf5fd6e3bf22ef2d49fa0b991afbc360a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302d618a8e946cce6489eb36c1c7c6ad487e58321c00c009ac275684a70353d0b29bd5aaaec343b0fbd8211baa5b48500b0230095c45e84b669dc50cd3c675c686aab70b1b626416d7c566a4aef3e5664f0af52ec6f71e3dfc1b5e9e32f690feb1fd8a0302047c435bb50067306502310090e172dc17a6ece98563ee21074f55072f36c9e4330a9dc564316d8e6cea0f18af60e6f9a2e990b369cd8f97252f00dc0230321ae4cc61a4b03dda854911269890db43cec787760e0f141c323d7dd1a574a37ab94129193ccab5b6294186601353910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bb18a674352ea2c26f53ebbfcd2b996ec5f7e4ae9de107591604484e041ccc8005ee9eec4ea908cbb0eb7e77be732315023100ea194f5b07493934742c573b0b320dec0bdb6a95116f07ee4c1348a65a63f4ac5542123698fae6b0bbc0364df30766970302047c435bb500673065023100f2cdc9af30f79da5b7d34219393276080b143248a6858bf67b84d08370bd987567f36b8bf2485c7d09255dacab561a8d02306feb06c3ecda1bcce0594eea9eddfaff489f9d4aad774d083c1ada8b9019593d6130a950116ccc4db80f9281452946b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009fe394ef0b0de0339afbb19aae562c48900366c647dc8a76453eeabd77231aac0429c411f945e58a844cb5b02a6be7d602304a3e79b367d4a44e6f031e509bc19245c57cdb4f6678c6a7d072b689974b39693a2c7e5bee360b1087d01e01479850f10302047c435bb50066306402306ea7f86baecf7d7f6af59ee1e5d8f4a8d90206a29dff145b1d750496bc6afa8d1e044ca609fa5c1d7bfc7c5abb186f4a02302698e8622e3179dd1833cf0cb7221b699f46709482c1389955fc43ab50e989f70ef9ce97fa38084e9d3ce5f84a57b6360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b076b721b488132b2551bf39f8d34a0ca620e058a8e83a5bc944c892b6ab47d3dc75494f5c50f84d59257e05fca2f64702303118b49973bf69693f72d54b5177ec34e9fee391bb27c660dd9e1ada08c02696e9c14216d59e56597496cc44b48e525b0302047c435bb50067306502302f469b4cb0aa05936a90c53d33f2bd558545cff940502dcbf0c79605d2f6ac016a1eabcf8fde32d45edb132102792307023100de593b2ae1c99d3c4b126683aca870789b761b6a824457303db2cf094c68b9ed7ee88dcdfc1c146654a30941fc58323b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305a0c3325af6c3ae82678ec83236243533079f127f192fc3aad0c412c622070b2b9902e85c5b31455c44799231553ab0d023076f575ab3f526053c8df721502d24cbde5596ba3561939cbbfc105be7721a35c97159627e1cbeb0a79adf1e7781549860302047c435bb5006730650231009f821fbea6da9563239577cfb7410c720238fbc340dbb5a0a1f4e2977b601fd8a32c33bedcb3086a1891358eac0ec0f602305303ea11962876858ca80c399e216a31480531823f2d0acee3fadd5d3eaa66583457e5d5b25c305c9cc1f7bc22adaf740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009be5a98bb12da5fd894d5a7162105d253e5d667c7131600243beaa00700a82b5d0ba699382bf8a7dd872f89531f257420230258dd7a565fe566a3a85b15cdc69781e6aafabef1e1d360dcadf1b179b998465f293fb02eab402ad9e302e01b75f2f970302047c435bb50067306502305efc0b2bddc580d536daabadaf45f17c0d904f98c952f8b59ad1341499e3aae585fb13c79156017a773ea48a1c74fc1d023100eea2d3dc7e6585d8b61f8c75261a7c658ca1fbdc778540c7c30135b7a64c494c2812ebc22743e8c6ad51f24e8d4ab4730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230024e2464fda0664ec9dcddc59d6885ba085ed75e0ee9d0b788bdab558fe4c814ffcb3469f78c3de64dc634b2c7c4c99902307dc36e4d2335bdb5cb5c7976258393e77d74b0bf8db70f333f3504d9e2917a9e052c5cf7a27a9adb9d58884144d428800302047c435bb50067306502300251c98a56370b395ea1823c746877da7955cce8ca798a1d50377583fef27c2c5e76a27ea1f664a46f5f79e88cb06784023100dfbba40a68848628f2d72f978ec026dfaf8ae7e8fbd08816beb678413943408b73cff67f2e51bc16d842edfe2e8c2c7d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230384ef1314d55d725b5ed7e378ade6fe769f9ca2cd505208c7148e1adce6300b9fe1c60eb8a681def539bff666c9aa51202307de7dd6e7f4ee6d3b01875bd4feea8ed26aaad10ae41f0f691442fb3509b124c435f06a0469223ba49e839cddbfe078a0302047c435bb500673065023100d6b1ebd0fc2355f6391e1ed5bbf1c9d3dd2538257a294cd6d9f5f0c84c954e665af3116a2135989e9062e112c3be720502303f3362a8d2fd13e13bc19d68e1573d69c1b18041ff692ebf00a7b273cd7902441cfa920aed69fc3994e449ade857ddf10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100af0fe1dcb39e07fecb53f06377a46ad80294ae437e4d3f422ed726dae01f3c58b29e93005de744a7577f2c28933876670231009a8561927defaa34b4d2961a30a34c03262057bba30333683e1aff115ad2de7a2b43e6d39902d996a322c0006f2c8a2f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023062a3acf2a2e45a88652416753533b3001892aae5a96e2dec4f9562325b042b7225e1fe65d33c77fd5f723b6a40ac568b023100f4a7ce9ba9e337dd44bb80cd8a18efa56d3586d19f88095b9e43240cff21966bcda8f812fffff303e0de1c169b56c8df0302047c435bb50067306502306893e2694888baa857c5eeb7cf9966ccdc9c0b4fb8fa3c632430ad0423f24bbe942a6f44b205abc5a694c12ed0bea48e023100a2bfb50f9dcac6c7211efda7226b1ae3af20ca796d07d3a9f158d3f87272c33eeda403780477173c3f6034776b862a2d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009f2483723ab93f0fd9d6b666040ff22f7a588f9c4ed1c2da4dcd2ddedd45ddd90ecc21a6e84cbb60d131ba3ec1b852b102306e75b929972084f9a3c0c4a8e11ecece71366ba92c3beb8be6e4bca3bce6ead40026cf9d5b4c1c8be73110c68ad37a740302047c435bb500673065023100ab0a12af78154b53aba722aca529ca457a9e4bfc97d24cbf2d78d13544c0d7fcecd31b1cbf2d54a743e5f3185849582302305b53d87fa0cb6b47fe8f9e811ca0e1bcc07d40431fbd2c7e38922df1cfecb714bf804e72b2b7af002171d81aaba109d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023068b4d9844a9e9a73b1802ebae45b46e7683af277dd765e7d1db7376ec6515487847ef8dec7ca245d45436447eb129ad6023056352abcb270c1544ff9182a84302c78cf96bf9ceafc3d55c1281600f4be2fbd6186987bb4b0faeed59f4a1ad796ec050302047c435bb500683066023100aa33e3759da2c7e04436c3bb04c350c65d023217f6404ce101d91aef540839f6a55f812356529f76e8b8b26dba48744b023100f923d3bf1e0d0b3cfd1ec9e733f13c5c6fac5b04478beb5e0725cd3f8d889a519552dcf5f3f86fba6a90b960a68229690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306512d3a9b6f42785dacd597ef892dc866fb330b91dbeb67ef486e63b41fba742cdb19bca021be44e657d61ccf5c15ffd023100e00328ccac0c3627df11e87c254b46f06845037bd64ec8dbb5a5b4d37554ad05648ab5e32b791a51ab28ba7aa92bbd450302047c435bb5006830660231008a1135c4aa69d8792e6499e2a02bd8c119d6ecdb4539c07e77639dd69756fb31990fe8e56f1d11c33550c2130eb2646e023100cde9ec96c77ad83f87a198b24e4455b2ac8ca3c4d288c32bc6624142a0f2e03db38a3b3e2c5750a297171edb951622af0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008b034c301f07254cf7a1cfdf5ccec39e20c4e27d8d21cc9589568b18d4cc08898efa13ec622d30fd9e2f546d6f6aedac0230167b570bbe99481d815f2d95af8c461d5b7a1e4b328b3f3117454e16a83c6d2294890622a31b5bb12cd32101cd5dc55b0302047c435bb500673065023074e9642db4944411675c3dd88bba32049d4fbc7b60edcedc1d1eb1507837bca9df90b99da6b9895da314d03b196be52f023100cb9b61ee6cbd71dbcd41d15ed872f70e36bc5b73db125b6681e503934d3c2531b5fd154c6b960d5f9fdf2156506e75bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306febb1a52377fb4f0bbfb263c7d72fab1a4b62d31cdaa78c95a463a6e696a7a392cfcb3cd35849dc95d1cbdb8c7f731302302106e8b3125af3b8104db42d372e1bcda088305f419396281e3b3e236a98f058dd6431576441a2361a5708cfd4efa59f0302047c435bb50066306402303f8af102c0d3e17f8bbbb95794ee68694bf54f19b1f7075bfad6846286fcbd6d86131acaee987533558956666a961b36023079774221836fd03032a543ebef2d12bf6b027fd103d2f12a3c79bf638c0a4507315044f4e6ff815975d4fa45d58e885d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310088a9d4a20e5a476d61c7f521586ed009b5d958836a2a923425113e174c5e15609cd908a86aefb7055e0865180e3d237f023011c880f2c48dffbe940b475ced99286d07ff6b82295e6ca467502c2d85e96d5b00520b5c533b43d50d20a73b7a6d18ed0302047c435bb5006830660231009c56fb16d82d62bc1f91c477384ffe5e5142eb4aa742f4e5d41be38a2d67688224aa332a6ad59dc11b4928e65edb6e060231008b510ca54c6069566bb779a5ceec93f6701343cca22721a0df88107ac57c09aed6bf938f582aafbb3fc9c559bad1458c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305e4b94b4d9f0eca8b022e5dc3ae9681cb2c5e3e545b285ad662c284b537dd7ca3777d01f1c6fc13e7f31bb40d8ab69a0023100d38b422846b6ef41bf0a285de32b5e2929b768e1bbdb7a9fc151578c5f0366c351d74a75a898cfd3232c706a09ef64b40302047c435bb500683066023100cbe4dd3eb7dc63fda5087cefc82942ed07e1983b9b644ffb09630abb48d64856e3eb1052aa03930ee2454878053f4163023100a44656f69b4d8f9bcb8d0cabffecff14d6f8e9d83dc612449a90edd6661f823f710dcba45e4bcdab9ece01a146b4c0e50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a4213b04de7946db8f0229daed0a1f4323bdcbcde5566ee44878ba7fffd93e497ca56d14235a725087f6d327b2adcab402310094288da72dcf3133aa4e4d2d289527e10a045568df5ac31f299deade79292d06a9b6c18779dcbba6a601dad8f94688a00302047c435bb500673065023100ac4ce7317d4ba91fc566b1fdf165187e778525b1d3dd1d5480efa56b15d5c52865940993666e492065dd3b51c362703a023043f9f2da9350b7a1ba9d8773e5040383a811366bb0789f1d6ad1fde98e1156bfbc85cbc5d9ca3f1b78bb00fa781a43dd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e3537cf0fc6e3274538b1b4761648963bec97aeb29df9f2016281a96c36409517e59c74594d9d7e8d1e093c2c977caaf023100e489656cccef051aaa023fd8bfed8ff7d1c923186704fbb64b3cbabcc0f0253dedefd1d9e3d1be8827420d1949cd6d2e0302047c435bb500673065023100f1e91e5b98255f24a0282d96d00b9f9b37ceb94d479f0facbb8802e38d056234713b01978202cae723c078fafc4fee6f02307f83b6ea89c13d0983cd7b9bf199ca894ca4c56afab3d690f0945b67ec0c0db696c423025f1e626b13af2e089702aa6f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023000c37f68fcbde563d4fb7ff8e53a4722a81616bd440ab723a31fd7dc576eb6585e750138640dbfc57d9cf442223524de02304dc3943e59742bc5d9c8d11258865648e56615ec45d3663253a7bc60d895ac3c80fa5d3c4e60824f5cc81b1ccb71add90302047c435bb5006730650230356096ed37ef0851c392924421c70a889be6e7853ec89df690b94c0341c1b97e5cae7d1665bfba81b324e7e0fcf53a6d0231008f3b19879bc52ee1d3a6e06a546315a9935e521205446e6baa99639f659f231fc73def1d6b46e6f2e09bdec8230c3d650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aca3c67dcaf3990afc755cf8f70cee5302aed7619ad6c88171b524385bc36408b89ae6232c1669611434d8d6d61769f10231008bf5602016ccb0cf26b5af3147e4e1e966bde3815314c45cb560883799e6b5e3d2494de7d752d4a06fce0925fc16baf80302047c435bb5006730650231009fec7830d073fc621e27a101ecb0e1d22911be07825ad40133d9861983c79aacc3f4ea3b09b33638d5d0b7cc4619a2d902306386a12ac136650ca8c5fa6f111fe0c36e6e624a8479cbfd0bebe1eddcfb475e5d3131f3b85a226db08d70a399222f860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fbaf6da046728394e640ada199ad6660d624c6c369ff12242a11b9e2e4de370c7e1814b18fef42bc0783251233974fd1023100f7cea69fb55a1993e4ac6143257c96cc2dd29c13f290d9225507ac6a104d8a427acbc1d2781baf3727d54f03b8139f9e0302047c435bb500673065023100a00de5ddd6777c3c54193e1da0f7dd36257f7c73082918328dae475d7811cb24bf8052319b6edbbd66b58eda7e8a8c210230464ebb3d5c7eb8ca19de720b5b23878b3dbd5e3cfd933f789b79947ec3bae7b81848931359bf093f255d70330f82e6e60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230685094d706eef88b4cf904901674c6790b2f8a3372fddf59446eb3c2384fa4cd692c407862f0b52538edb0dfc1ade3bf023078f1994c6a603a02f01e6c9a1fe6e20399e22e4d90437ecf2cc576d11baa6115eb35f01d0e4d05be9db2ac8be0c2983e0302047c435bb500673065023100b4e573f29710295a7c1b281fbc4127a6af1f878d4402769da1e61b4296320aa798555487a550a095ead734549ccb054e02303264ad027f3ec6f4d68ead145768e34b74036758a530cc46cefaa48debec3c19553ab5127dc9d067551dfe8565ea87430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fd333894d6652c103aaba3fb2f86d1209774aee372c920b895e5af63f40a30f4e63b37d9a7ebf6cb460991ea59fbb243023100efef32ac890f1dd89a0aee6c915c8b62d0d0abd32888f1283d0ed38b71408a9d22e33360e316bc1ea02a82c703380afa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bc835ffc3556a67e4edd5fe1d77c81e3b7168e263c87f5019fe8f31ae20433c6267dfc999dca749f34885d65f79361c0023053f0681ee46090502855710831d7d55f4b2b8216564c9463108e30a4ff563bfb0b76d6279ad9ef85b926076b5fb851d40302047c435bb500673065023100da68a788fd97ea0b6baa36e21314912a3fcce5e29bb1a878106fd56649ef64221560c6c3bf9f5aa14645387c7c3aba41023042a86fcfb532fb3b15284915207002606f4fdbe4e73009a74c7ca05e6e74539ebd3298d7444fb4ea121594ff17ba6c4d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230216ecceddff2e310c4c0ca19facd37e2ed564ef0f6bdcd46e60ac308e4c4d76cf7dacab7180e306e5745e93da9012ed2023046a0e76a02ce193161fb6f92f048cf25697f3c2f2ee8531f9d5df8d98e20654ab29c91d8a88ad71142b63896394463fd0302047c435bb500673065023100de03ffa7076a762407c33bcea9ff975e531603b7695b14b0571ba8eea1d5cc2aeb33806f917c5b7a65574c42ebd2548c02305a817032c2dbc0fec064cf62970fbb7747a720028a092359b42a42ff97b1510115a985848cf7af67265cb742daa6dc6d0302047c435bb500673065023033521d04199d9d3ee7958b1500ddb4addae3105a19cc992836ff22ee7e5cfcc17cfcf76f4cf01d91b0c99d6fce190c30023100ea382c4607022737f973dd5846fb901461e4489d04727baa227b0da38ea82873d4ec47649c01050e71a78a73de1d02ab0302047c435bb500663064023010789648c8ac36f37aff2c15589b028c13b5416dfa6c7bd988573fd2169282d17b31df977b0e6cc169e2adb6fa7b991902307c45a7f16c082ef1900aa47a344cb60ea0d1f8cfdd61d3f76202cf10821c73d43357e5b3c3d424b674710019ceca35690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304c8b23497b9ffeca68ba17171d7df82546780c75bd57f73f5a857c40e68ef1d88662aab0707545a9efdf9fec6267897b023100e2d26d1ddb978645c252423040ebb2bc283e1434b1dc75bac319c3edfca4033bb7d921202c88da52200c8a7a6d3fc5240302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310081983de98096a29a580e515ef83d7a9a425530183fd54a14f0b6d9bc34395042d5ec940dbe73e2a25045958e320a0313023100b23e5fc9ab602c5f826c4bc9d4bbd409452df180ac29c3199b643722e1635e47e9b69cce75edb852e18d78cf57ad80730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305726fe892e9de1f9f64fbb09778b9ca3c6320e99d61f596d8dc798e75edcfa7b0771d0378b2e6f01708d864ecd0a5f3d023066739735275ec428d46c006faf5b0abf193ece25a973f0c94fbdc98c9b5b7aec4365dd23a80fb0dccc2f3656268ea8150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e9f755d19a8436c4604d76b2b8ec528297b324bb9aaa7dd7e5fb5d7eb92c74e2589414dadd2f20448da335843bed95a1023100d49b1765cf2e26ac658aae268dde14c7105362ad553f74e588185949d3786b0ad78c85e638051ee1eda5210ffff4b2090302047c435bb500673065023043f85dfc1ae36726f03701cb3d7a260a7e5feaa9f32fbdf8c2a216d34eeef684cfd61ac84909dd205780474c9359c61002310086270468df2ae8755c0bb21607661fb3977498fa378b227130617dc16830575cd0d68c3e516591fb828ce45b08468e250302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f3338390576f80129ba10d6c90104c4cf77dfffd38076f59940b3d8e844e73d20fb3af7248264e460673d35cbcad707023100b2792a7bf0b5b2eaf851ff69331e1f99b53e0491b9d56b965cadbac63973acc8c78a751a0193a94a232ff30aadbd41f50302047c435bb50068306602310097dd811bb548b849ad76459fae796813618feadbedcfca1192abbeae55bc49ddfac218cb8a708eebd76e3526809dbfee023100f6cf2bd98b793c90350e0e61f7168f9d10492ed28e85e418893e8905695898374fd70bf2fdcd5f3c924c4eb59ff203180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310082d5416a19f5019f7dee03f8004830814bc5018f54b1c8572d5087646ed2e886c8ff5fd339871cf23ec63304cfc65477023100fc9ff7d4489ba17e9817b89519614e6428fb7d06068537b5e5e2ede6c327d1f8bb0ae1b1aeeb72d9ee8a28191e87d71f0302047c435bb500673065023100c49823c8413af606e44a7335ec0d910d1805e071d25de16de245f470b75ecc3271356800c2f2dd6048b95d6e8b3be9bf0230576136007279fe77dea400135a1972999d992e353ea04b6675e96ad54d42fcdb3cca3192813223b9f33e7ca04bc175640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307f26fd342571ab86bf5bd1635e1f48773661c70ebb36039182cfa0f10331705c7c7fea3127c49045715c99694a417212023100c333f24ec2d6a39843066bafa95a7b2df4ebf2246bb5a0a4caf01efd254e67d272d4cf6a838d8da5d28687a49eebc1b20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310095f306bffbb9510eea2556ff50cfaac9c6166e9c7d4e20d63b581b2236094af8c42f8c1683179034df2662e1c66847a302305e4d8f817c89d09a0915351dea63b32a55919aaadee61f52de2cc11c62062dd95b9f1e80508cddf400e4d088522392040302047c435bb500683066023100bf3e7d0e2dcd98c47d6f083d084ecb6024b6ab71d434201d1c884ab7986413f575a398ad79768825bba79261ed9314460231008877821adc3ca171154bc3fd986cd6debb7b82a20abc374a2d119b0fdd77957272faed0e9986e3d685160a0f3fe5f5710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023020a2aa89b4800dbb5dda58ddabdfb347946912788ebfb917e1f5f0bd7bb1ff8ef98a0bb7e6ccabd51d0debf8295a4e900230562547c9164ab56d81caca597d21900384f8e80dbd9fe14af812aa60015383ab9ed70dd24bacb8befda859dab6050e100302047c435bb500683066023100929d1aa91d7f138d3619047bec66722e489dbd106edc34e5ce7056bbb7d8c40864c32a2d884a6244466e07a3ba30de46023100ccb72784b67b8aefb30ec1ed3b948b3df36f1a91454c2b99dd193c0b91429a95b37fdc66d468b3ccd08c917c78c2aca10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100842db7a6c64fffa15fc1d721f5bbe05d36ae81daec2cf3bbe99aee95f1bea942ca86b7829770b07845b400236ba8a8030230325ccd4d1dde0bf217cd94da1229b721fb8c47abdd3ef45d0b7896f6014c8b102e4a5f8ee1a0ca14c17dbed5e84ddfcc0302047c435bb500683066023100c3f8dba37917e183c1466d192ea5f0281fd209cb83a930f773638b0df06a6c8ae656952a482183b135b6a970ccf846ad023100de6dae912f07f078278abb7a90370fe3711387f597a2f77b2d9d6d6472b3b81f70c88a0a7f24eef038b973e703e0b1ef0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f19f5871528e5194828c5f63000863284d7860d6798801fcf84bc01cb81be45192c86c90869a6630ebd67c34f37213dd023100db29721d4b27ce79f81eac4219174e3cdd178965a1a62da26271ee2bb3719dd1b00e2d9422d0fc719b92701b3ddb73d40302047c435bb50067306502302b077268a0335e677bf1f63f3b06bb24cb4689d8f0d50f504c4a1bfeb73a8c5547a6f03b36f805243caac4e78552b417023100aa09b75ebfbc1cb3326e1da7d7f053ff637991d00582ca466f26893b0366b029975df5542a414d793080bfb62827ee410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e0f6d344a6f584f6a12fbc676f06bd3ac76ba50ac71f552eced7a7724e50159847ea72cde4bea3e5601d91272106633b023100c3186380b86f3f585b521d130542d99a5c7ee7c30628554ccaedd43c7a67d9726599cfc0c984f3c0d5e90c9ce6b9369f0302047c435bb50067306502300abd274b52c2b7331a402def62c20f29b1763354405caaf1b1890cd0fa1d6db2c5582f564eaedfa4c2be8e4910e9271c023100b09af86d5806e71573c48d3a21d8f47e74943a4f2b50f430ff56df04b1d7ff13692a7a7a17a40a2c51669be74325a1da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c6f58f928f17a1c5bada92fa2cea3faba304c80ecf58d2593adfc62bb49e23adb545caa691f73bb4aa3f1f02301ad718023034e7f3294515d8b16cf03700d7417bef9af750550ddcb92c0529c88e343844511ae24c57a9edd96adec2a59aff22a1110302047c435bb50067306502302ce72fc45f87c9762e389d16cd8d209559223a743c28e2868eb140a7d3b840eb219c943c8af5252c21f0d79a43e460e1023100e1872cd930dbc3a81c2bb1369c67fe412cdaed3cf355d590f5509aa963bc2ef52097fc0e13e41da95053460ea5b151920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ede8498dc4a19bf60615364f71d6cf386793bcd92293fc1a9abb17ffb5077cbe33f11dbaf1eee366cedf02bc57671b4f02301b1e663aad57ce0ffe955aeeb196217f71483ebeff9d4ce2269a438925827bd235813419b43017f6bc15fb043c7cc9cd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023037baf9bbb73b9883ce3e3217150c42051042c5963763ebfb6f9e9ce9ba034c2d5dea4c306ef012bf80a3184a2a733a79023100f5626ed36628c218281b053de952374ba22110ac9053c955ed093b71de5370e983a25a6f1d4d4c9d15a2969eeef849e60302047c435bb500673065023100fdb39355f333bb21e28f0ab1f71af8e01762029ded06cbaeee787b74006968e1fd300ca52e83c44bc98b56adc7d4325d023060c24db75eccdbfceb2162c12b15e03e6293960fc2650d9d70789d232cc0ba6fc3815a0095dcf3cc058f1b36b00f1ef10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230526a1308ea72c4242f2f5027fcbc5e0f617f466e93365a23e150fedfa53cfdbc0ca831f28c5dc2233fc445a98ed9e7ff02305d31b6b72f126a2ab0933c306c502a7c914dd2725a28e2a0ff4abd61d6a7648ecf38b40895b9c2f30570021f38d534300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230348be71269238fa7948172c0f1481e233ec33e62010f2d034c2941eb734e5fbdab652fb822a0ffa92b7ef189ca5b06b5023100f7a62a62b7716c1a28d19b8b4025b2669d6fe692f172315e6633aa86fac44c79d47faedaec9bb947a1f5321d98587c240302047c435bb500663064023050d462c7a51eaf6b23f3cbd3f6db04b3ee507244484167225e05396aa2cfc7ceed80d33d4357d40e0fb9cdd34e23f41902302ce118bb5cf5b04ccc86a27d33350048558c816be15bc04a379445f9f68077c8a4dd7b0d2ab9e8977dc60f6624db4a840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307ddd04eef4a9e2847515b499b5048782e1000c29a0bbf7b9864021a4d3b7da71f8d10b3cea54285c39e424e6cd4bbbe2023030abe3d1b4ff91fd6028cb02f1a725bea5697ced1c413b5cd9975e63b8c41d7fb45778b9a7c9dcfc8c9c501af2ae89990302047c435bb50067306502304aad38fc5d5b0e40fb30ee3ac95defe29683bc356a14ccd1645a6a8ef57d6b0b4d332eac0c33543690dfe7ae17cd37fb023100b68c809790e4815d2e9466430b1d08944c83339bb2875d1a361ac1598e29493c82c6e477a42ac79dc23db4e36413ee170302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023042e0367bb92db44499a7b43264bb76cf8cd7acf7a9d7e8e3221747aeb8fa347fe7a2dfe5c68dbbb1bc074d320a5cc49102302edb030ddf98ac7300a7d8560a2d1203aa69a250be969939c5d1803978253d8092b75053bc68e453332fe1b89fdebaf70302047c435bb5006630640230664edc21432e5526970af885373035790e746aaf4bd5cdcf3689a7d1560e9eb584bba83bc92b7fce4e01404f0d53453b02301d85d07cbe5bbc72264a6f59b951b0205b7d3867ea65db16457800d1e3432a983c08bbc1ccc8d783503eb1a872a3be4b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fdc55f098095d39c8c73824f32686832b3dac87de65037c363a277ba66d5a1ea058f9476347bd13741422407222d6a07023100ab5bed336ed8d3cafe7a48909f15d30447bb7fe9c1c9f4a9252c8111f88d9c3ced77be6e62f2bc13fbc9eba45d4348a80302047c435bb500673065023100992c374e24913fd5c0fc19b5799ec340b2227ecd3d1a4e557a2e1bc96cfcdfe5172e004fec161af8893a12304cb327a602303ca98eb24213b4d03a3a5ca4bfb9453724e1bd7e3c98317547bf937aec2ac02b7cf9191dc4849cd9fb1c98b886515e6e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ab30beb2767fc105d87857392a528b8bbba6e469306378fed03ae00fd6531ab923e82830a1db8ed781f7366f717cf9b4023028afc4419003979fab9eff12aa367c8537aebb87e7e3e57ed918ec08399246af1d94039b28a5cfb6e7f8c7adcbcb747f0302047c435bb50066306402304a0891e3fc52c3ba148e21af43af745b8770c1840eb6c91a0da0df92d6d911afd80879db7f6a1dd9c29aee448787cf10023057e23cc97ab3e146ecb11027670be3b5a1e7b00db7675183df33e2004a7a57631b3b69fdf4002a2203e49d24d827f32f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303de7780441da7c231c130d537d40fb9efc49d5d289f0db9fe9629ee845fcb4994b7d00e9e1204541dbe7d20137230e50023100fd50cbb7d9c1e6a820f5d947b4ed2ef28ddc8e4cd05941d053fb2ff2fa07ab542e5d877356a5f857dd095f3ac87298e90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304db9605585a261baf5bfcfc8f4ff0bd32d02ba98f22cb444d3337f8516a43e584541521898bec10bf3c64ee6595ef72d023100d6e95aac83c63d295abf8aa60877bf0ce1ebb342c6f6148ecee1e3ed0636c901336eaa4ee3bb0bc2df00da41c260fec10302047c435bb50067306502300fb60ab28f1aca5432a5281923bfb108df9e288a2072a835d7c6c5ec97c78d2f01d54fce38a1b6fd394eee5b3a46131d02310088e73b9c4cdd3a0faaff5b093df7045cb0f4b030ec5223a3c410f1cd52e23f369c184126243fd319dce70a1f72df34670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e2e915fffdf0a58e486d10e497cd1e0125ff22a8bfbc239cab90d0fa36bdf23f8295805bcc56969f899b2ce7b1f9f6ee0230124a048d520b31b22825bb6c0c63fa3755bfebce15fd9df48d2854f482b80cf976a772b74d253843c9b0cc2b42e276190302047c435bb5006730650231009fd372974f1229a380f2a974cceab6dd9bcd5430a9abc6088194112627cf2d7cfe6459f60b8266868792be6ceb563f3502300ceb72ae7c8da9d23e85dcce8bd88bc5272bdfa65745a0bd20c50f86b3b808bc5d9a65977b43a19f7f1151cf485b31c10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307854e92261601e38a2530d7ad81715908739436fb5f8fcf56be964f9e8a46c63655d98f5546aee018356fbb23c44297802301e406b4de1d4fd2375f90fffdea7d8dcfc2a85055a39515bd0efcb9036a19e9fb8e8fb962c6e7b48571ed4196508fe880302047c435bb500663064023058b3e86f1b410301e5960d0e1ec369a2df374a114a11fcd462bf388c1b1349bc9569686e42d43b8960ee417a0e0309d90230352bb1e46730a0923a3d78ed889b5688351653d69fcb0ec8bf80593e1b992cfb233cd89a6b8bd26539c398e379682d380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009bb36d4be32911bfa77d5502c83ac0653cac8c4daaae5815b1348037666560ad4371854d0c30144dca1164ed0cd51e5b023008387248e096ede6d0eb50af7104bf6d72b5c351602771f3b90b60f38f0f9a1514ac892aeee091296da1b163ec39a22c0302047c435bb50066306402302bab81c298b8d73224d5fa68ec548f4db4b180c1adbd646b3818148f065d78840f602e196820b59c3168e084ebc276d402307bf61d9ef5accb043b77340396f836f14d4e692008e8b5741ec81eede146e406a8ee6f042eca71d68316aac21b1624750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100882c84d3392a6637cded22c4f512453f01d998102aede43f2a859df3967d68332b63d892867669f38337eb1f63ce6b750230750368b2063ea6f4d3b8393241c8c79c176cffc2c9a39573637f78f5355f4452667962b45a2c6c92ce5cc950bb07d6380302047c435bb500673065023050090f00a6c7e390ca8e2f85d11bee29384e522dc07012beb289a645e452d7c640569a473a49cf4e7c13666c2df15112023100fbc639c2c6f70119f9bf21d1b4de3818d0dcc3768546a31ed346d80fa7f95f4af1e54377ba88cb5fd4f33f1afe85da670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a4b515f4a547477647d8406a5f37da5bc9a98cf452952eebabfb08578a1e28b43c2e72cf3fdc70612ccccd02a8d7b3bb02307b9e9fcc7f42abee04228c611467ed7407b39a894a6348e5d22b2e7ab11c6aa1583d5a351415aedb59d6a18570314d1e0302047c435bb50067306502307022aaf19072e64e89e21a57bd1b8ad5057c07bd92d504ac059933fb3a79b35dec31cd5dcbc7570972f9fc89a50021fd023100b0c1dd32fca4bd3ba0337a2536514fb3b00a8e12d5f1a7f5624902c648e09717b2f4039b9729c2525b5e97f7fe522aa70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023044d8ed024ac12f3fba6d06c9235d0191f493f6285e2ae09850ceb8738dcd7dea9b1ee022a75d484d9ea22a5b1403417f023058474500cc66624b8e5f26ba2c0085289c4d22bbffd69db730f1f82ee8019effc9126bb504876bf362a9484a63eb80d70302047c435bb5006830660231008328096a835e1a31acb777808bf27e3a654024e94ae06fd0bf679a9d8edb193d74335922ded30b023cc8772e6daf124a023100af11ac35af4ed4c96c5455ff36501f6d9fc5ec71ca67f54ff35352d09e0580e2a2e3fb583ed41a49cfad256d86dc79ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306f9821aa123d0fc6a5e9fee0256f42d6f012ad8293f68e521eb1699d349472cce5884e611d4ebcf0ea5e78f733c98e6c023100fef45cb3f8cf36873802a15182c6bd1ba37f2e612c2eeaf1fe150cb366ce7382530bee25ea40dadcbc000b9107853e890302047c435bb5006630640230671e91a92c12788225375e04a5f92ec1d1a86fdbc02e7cc2b17e1c9914b608a20ec710c7a595e4d91be5c4414faa2198023067d6c322929dc4847beddb15b0e1b642eff6ccc44770c6f1a74b6591627083bf80fc2c5f6bb3964868156c6d12f58b9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304555375fbdbd430dec6fb6cf79e6dd4d8be1ff58a6680e224e366b00058a0b1de8ffad329d73b9eba786e14069e1b586023100801829661f89ccb3cae564abcbbd97bf28ac16c223b2a9462ca0473c004976c42ef10344fab9e282acddc43b32a7764a0302047c435bb500673065023100810e49a33d047207f428de7a078a7589509c78464b39e762eba16b9265662936a26a584665b4f1b4e8bf75a0708cd62a023028b0ca2c07965414a3f961a31c42217383e5507b22c69e7b523627aca589556b4df47cf88f63e44b961fe11208d278ed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300117093eecccf951a83e96159a1b6202d29cd77ff19498330e4a76b65c1fc3072c69cc4c53539643b06ba64d42e62c79023068a0a1a9fce1de2eda4f39ce664d6108207b1320ca443a3b83810c18b6a53ac040324206cc4b13de626503b17c4aa2ee0302047c435bb500663064023026ba8ff93d96f29c8323b77cb141deda961f4f3b205a102ed403bb89e298c384972cc6655ca6f980eac89f08b31aa14e02300d8ca81a8d492de06f11c0331205abc0d57fb81b8c9ab6d11b126ed518f8d615ae4d247faafb82ec2b423539f68f20190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e84e6bf682328531639649da255faa5486da9dade8622bd9b47913b6dec7d3c0e18a1fbb474e097cf915c74710b5ad3e02305b8812d3bbaa9d115ec801574fff6cbef8459bc6ad5f79e7c6e31c67b36e35d83cd4e3f157e01078c28a12ba9114c1540302047c435bb5006630640230195a6c3a6e1be65d3e9e0544b4e8e75fef45af9fc946faf542c5e566417688f549a2957c51c2f42c4c5c5303dd28999f0230323b324b9afdc4d8efacddc1d34768cbd63460bf0ffa98c81ed7529ba31bdd481f49a87ceb556675937200202324b2380302047c435bb500683066023100cd6639491c69afa1140a6a3647c6e79f6f1ef5fbb08b97bfb430e291297f9a2bf5c876f94d79264359315747aa7eee26023100f4f63b0092f9d8a1ef1fccb3c12de85be0e392c3d90d2d614327fb116d8580eeb2ff2e0038ef18ca7a4b1c4b286379610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306fa95d534111598a511e812fe5717d5e65bc971cb036724961f5ef3105e0545c22355e54db2f1deee08b5ee04a59aa1e023100e7d19780b09902cdae7f6afbfbc8464951a72c668397ddb02efbafad22ba874da2778d0e8281aab4a7542b7b7ae22ee80302047c435bb50067306502303f26c47ec7ea6c2f212c2e548441480796677271ac9e41bafe7454f91f71c55523b4255510921b728ab213bf139b967b023100deebddbffa66ea0fdd69313a8d202179595be234a71bfc49097bbd34698ae5486eccc14823f78aa5bc06aef376ec36380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301510e80588b59cdb140d3eef0daeed4397ffcce37e55a1c2c3a2ae3697ac96c06c9d1145f03e0b803100e099d92ec27f023100c128efa7b8840945c0b6e5436cddd433c5335d17a1abd9c2d1e5f8257ddd7c1ae7794ce181795c5409b0f2b9e4d1cf990302047c435bb50067306502304d817f247a082de0ca9bab6ab2b9669ead8b4d542c552899bf64d05eba87d7a279e5c482610eae0f47d83aea95e4cc1b023100b510e2a0b761845ea60066dafda4e180a86d0534f48f998c5f1b94852f9503f84ca93f5feaf707eb005fbe6e1a3aaaf00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a07148ce21ad89afe7df82503f4682337656ecd3b7bfca2f0e632f9227aedf37131aeba0765447d7af893b5f6033223c023100ce5fd27248652f7fd07ab62225ffd9ba7e7cca2516cbf16d2a0c569e2369888058f8ffc6b2bcdcf8584a8cd50046592c0302047c435bb5006730650230571486a2b435cb0ae7965a46785768323dfec6467b7dbbb425b85d9f31ad25c970fd8251ae88aa0553d2cc89e1042fe10231009eadc873925af23216d28f49bf2d4e2d368faacc4f57aa7f77dab9cdbe22013acb324349fbec47425f3a7eac82050b990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c2e5848228eca1b9fb14dc6e6a3694ff1eec972f1d6585818a6803d50cf585a2ce4c0d66c7c7f0e0f59f3d657f16d9e0023100a557699d9e64c283c89fbf20c52720cb4fc91992717cb920927a73b44243438a0e4d6d0f17a10ecc5544844c78f5e1dc0302047c435bb50067306502302171067a73e9350b6e23a2807826378272a40f47feb8b29228c6845d77023ac5aec435911c46a2cb021b547288038362023100aaedbb704ac8427d15a55ff554398abab25a8ed90d406343e5e0c17485e72feff2df6d9eaf6ad3343c8259cc6e5966510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230591e67c562a132f50d47b9e9ae4f4de96d01ceebe7949b3e6b2c76317493bd94e4dea2e39c182ab08d5dc2f9dc09771f0230442d4f1b81aa57bffe6dec709bd2614deb744a0bb36af39786f4b7942affc827023fc57abd80ed7bfc102b5455f044550302047c435bb5006630640230067d38072f96960d0ddcfa52da5e9a23767177c5e8a6f3f7feaaa3720b7f155314c1944511552d59f001151e7298e896023075ae954a8f6198b785647f255a0b8afd8c821b872541d0f41ddc5816a9f82594c2cf75d8a7b264b2ae90b51bb160bfed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023051b8319af97bbb404bb792d997bc861644cbbfbe0bca8ee35f82133e83d98b6639144cc99c8554bbc804383570f11ba902300aa86d3c0e7a8e1d5f3a0d076b3e19818a2b38a207c5093806db3612171d82d7b55195c419f0521e1d1676ac0a1752ed0302047c435bb5006730650231009b4185da67353645932411aba0454cf036085ec1eec8133cd677b67660a714e2ea0f862e9c6c3d72a637e0edc295435002306bb93addd37338d9c8b4cf582eae505a6b67f835554f27d7003edd9749b8d9accc9f4f44b94873c3fce4cd774aa34b7d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d5991e637d0862d6d698a2a3ee64e3cc243a81246d5bdd4edc93b77a54c134e81a5036e331b986d7cd4311405c46389e023067a9c4ccd06476c2025c4550d614d7cb2dcdab1d6058ea379483583433e5c19eef7f58975c3617439e2658a79418ef270302047c435bb5006730650231009e0d6441059d0da8ea622d452df16d06c9f5ca2e0a3e20435c84bdd81798ec9b74b8cb6d28e8ce49cee6dd1de2a3f6dc02307a45934e401ff0806169a3cd9863dba3581bd4fed212a9478834d8c6c80f12c8c5be4f627d4d12263aca6f73f15212e50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d46aeb465b157d59d2ff1a2d04cd7f1ce7dd39501a6f5c709ab311a1dc99859178431b6a5886b293083c0002f1845e63023066cbd21a6cb14f084b92717708d1321cbf82b57a9617bbdfaf1bcb0c6585f4f1a087058ef9e355013f3e9ed7bc8f227e0302047c435bb500663064023008391458325e9bbcb5dae9e39de9698e008abbfa22a4fae4a46490af6c464e95c7105469c20a922598f99b95937fab51023041b2961a949de97c04bccc5ada9850f502e432bc2e8d3093e749f4bda1b1dcbd8deb723d6bbafb33a4536352c355a1710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306eb9787b9c0e936513d76bd8d9f1f4593d28413a22f192ea4f1c35cb016dfdac21b177a0ee79c3768b05017be096bf5f023100ab943d36fae8dcd87a249bb328b195d2c685e3baefeab79e5915a08c12f41bee3d0f3ade2d22835450e437efa6572bec0302047c435bb500673065023100e3489095137652fcd654d833751ece7ae88ebee9c9198b0b27e8317deecc32b1aa72b70264757adf410f4ab457a339fd0230431a57a0efb754ecf493c4d717ee7c9d15a7e54ef50382f5594317be2eb72a82a5f060aaa218ac8388e8dc3ccfa931a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023015c181a83fa34d0acc71e13c12487924d8ddee1cce0c761aa6898ce13b41252672c14b11b44fefea734ded004a13b6b7023100fa7c37451185eef663480c453a64267a9666e8a8488cd0a18fcb9a203b4164a7e43674a939735667227d3ef1c86521ca0302047c435bb5006830660231008c5238687a5d1ffdfc133d8153074e00f23112e81690a84836738acbcabf0dfe8687c8b5afa75236cc73dd44c73ab74c0231009442a2f6b31ec89db7a5630ef430d3d01196447389294c9628944fe6c35a3f381e9b62a6f5f915b0c56e189a8acdc0540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008d37f53fee9fef86f39c85ea7fe1d8178766deb78bd6b46c384be7a58a49be2aa804f7c3c1a3a77bce68c8f263e99687023065da1b3c4f13ec1307a1397bb8e6e98e1da41e050e1500f8d69823793701a5cb8ed0ae9de531221ae30c889609e7fd190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230584d3fa1920c75567fa1719c03b93873ecffe373cfb9a6bee20870d25ba022990245ea8b0c87645d08ef895eae4e6eeb023100aa9f598c3de33fab4373da86f2dc6454960badb395df1bc773b004d4a04d9277286088e725768e6b7d0819345b9710190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a620e5a1c1073fbabfbf45f1acddea7e9754a5f58f3456cb181735c0cfdb21217062ca0bdc3b248c4b7ff5e1aa8f8bbf023072cb3d4125b1175e7117e07328da99cda01392ce61194f9ad2b9c52a541381c813316fbc30b5f97192089597d5a278c30302047c435bb500663064023055cf22b05273377bcee375e2512499d3c6f5ab70ea29f1368f3ff0282f3b24f604467891be52635d3e436b07cf07025b02301e61285679f4a7e4d880b8c682e224276f98b86d13bb5d7410b1b6ad64a70dfe0511fc61aa3ca4764edd4c2ddfc1b09e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023038875a6131cc220f18beeccae2552f5b04c38e3a79dd1f6a01c0b34b7c61de20dca5ff4fbf1818168def40690a040302023100989b5c8226de87683b1c4ec6a3889e586b8203cdb56551416295a819be46677213ddac34c665ce5fb3ddee70c040033c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dbae10cba6426894c2f4df0b2012115a841f9dd0747d69f8b8df52d6543cfe8e381271b8ca546fc83489324c2e9916fa023100e27fd308f1424821328560b59cc5644e2782a00a8a5548c65c66f0973153ae1849e2ad153e01437e7ff9a1ce7a903c030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e6ecf23f8aecce98c72e4423c4067390dc5a0de15d961f792f241f12134310ac5fc5c3b966282ddc09577fe29bce7bad023100fc765d32944a5261b34f1a2b86a5c03af2d9adf52a69747fb36ed80b1e5730b3d9e51fc1037a362848add3b370d4c1320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023039b8404382f5b8bac0a0ab0fbfa8918468c99e0c96979cc35e3e63b65d2923ba3ae0a6e36eaee820dea8839d0715af59023100bf9fc7097a1ac9a54b5df9eb9cce1c8f97cc2469119f3ad9459547532ef383b579147608b2f9d8255a8e787baaaab62a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230172693f6ee9de99ffdd16623a786b42a48a6f4bc7c1d584dc9fd99d6ba685df362644142ed1ae767727bd05f6f874501023100a4b0ed94f7a7635e397a985e65363229ab98e90972a3f0a2d31388ab7bf3110dd400f1aeba4fa949abf8499189e838510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ef52dcea62b63fb239b5334d7a6462668101128b16e113ba07ad70c0f72a7ad4e1164641707fd231c5c286ed0ee425b90230273a4b3a5bffe0577235153f5ae7283ac8b887c551af476da15e367ee13217c98284942bee2b4ab04ca3aa2c91cf731f0302047c435bb500683066023100e88bc5a2fb93510e3221f2ff8b5a7cc4033bfff956745132bc40bd4d3c9b57be0679eff6ff770bec97afd1226ec37c0b0231008e87dc84897f61c0ecfc45e55193b128ae19a901fa41b02818759aa270886c45a7b57f15d0bffbe2281bf2b5e716db220302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023040814a70958796b1db111833eab699f4cde7f75dcbdfd79e29a84bd97339895515a158d8b28e45b6494682f021aecf6602310092ec869488b55fa5e0f188f3ca0eff31f3e2f042f0b9a71cf78b3609da09b464c7c2ca05f8d875ed885f082c018e25e70302047c435bb500683066023100e28c048939acd6b5202a53c4718d09335509d175503968d34b665102835f8d5a81790ea39de76b49d87bb70ed43bdbd1023100ae1e49f74894757a1cc7b1014c9f8aec3f0a3c54fe171279594bbb64080aa3e6574f47774eecdc120e304b9c4014b7240302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ec4e40061d83b1d9857dbda5a5ac9f1bd47d3708a22a4bb4a00271e1fcc44b1022be586c0bbdd0fe1d77c0a09394f9a602304493d36ef032fa0538a2beb4b87d25caa34e5ff57186cf70295df5978e326ce3c6ab1ac1314031ff60750cc1a3adae320302047c435bb500683066023100c7e495a78f5c95fa4b29c388efa6bf360291288228af089cb950a26e76b333a67158c6809e718d4e50fd7405b399af71023100b7902cff76898d2ab7cbed50caa9d9e1e35e8727c392a32ffb494933c0a7c1b533734fc15d907ba8af3931abe77314230302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e2014047253888e5486fd6398912ffc75c2d7aeaf5c5c4e13697c08a6644c6a78d2e631c5881033af96de9a0375c72e3023100dba9dbd8a768c0dc3b476836661957b51b4ee57678ac252cb113f2ae485dbea8344d6c135d0fcd17c1643af02c91f0120302047c435bb500683066023100fc6a38842b8f48c44a066ec13865c6c79912ee0748ee520951b00429a9bb8b73dee2edadc3747fd970db7c743da89dec023100a96a5cc7596489768650a7e29210906ba5fecea4027295a0c9f6804f3cab9fa743eeb565f57205a0d95333e68d859dfd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a5e27f3ce0c4224e7c49ff851ead86a54053ea6c59cfb1b48012eb488bfb7d650175eec0a6a8cb0b2b255f93ed7767bd023100eda7812c009d008b3cd66c726d39500f1bc006c8c28a529cfe680bf5df3ba43e3ed767baf18d7e767bf29c6495d0cd9f0302047c435bb500673065023040087a153abb152085c006ecf388bccc9cb018b164152059d694289be7db15a83057939e6c892613d4619131f736025d023100a86f44fb6877ec1c1298dd2c9fdc6afa1f20af664c8e5eaee4b6ef17f016cfefcf895807ed4f52775f6294cc901876510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d77df3f7468551c3821b14e3c1d838ba830a2744ad5531bd4f7d39fbbf609d4b423e7dbb5b96f671a09b1455239f30e9023100ff32738be2631a87c287cbb8a5ace6adede9bf4c7cb30b9203ca5d10de9f3ec3d7182f0d8d26cc7b4d73f614f34597630302047c435bb500673065023100e715418e8035b90006b758c99206a1faec35ab14c9f9293bdeb1f86ea4b758950204ae089149a0d1a3b5c7ecc8ce547b0230549f21887485bd032f0548ab83e75401511f3f8ee9de85ea0c990cdadd2af687470caf314200918f9d566de851bdc5b30302047c435bb500683066023100b6ecfc9a873f9807921a9f1c0c9132ba045db6c58855aa23feeaf1e6bd900c33b7ad5557373c7e0533914241dc9e2fc7023100b424d0f6ad2fc1849e59c99581123a66772850804f4df32a5663aa1e623159233b13df98e647ba16b39417655624d5b50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306e4a61d663c5b84aa7fb841544a447e74b79c0ee3061630457f18ccbce007e3ba2b6cceebe7d5f3ff8047a455114a76a023010d617b60c004458812909f7c641dcd0c8214cf5a9f76ee26ec325472dccbc06619067fe15647ed629c4ddd3f8f6ad8a0302047c435bb50066306402305e6414053d01a491e20c5c0137aaa2a42263f3c063a4bc539b4b8f5bbd2d55b86c546ea83863b7fb294906d5adcbd877023010a0a9604fe26ab501c8573f3b9afa005e7dd6b23f75cd1c3df4e95b40daf967c233c2194046e3a2a4a6ea668e7e98b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303c68cafe25fd288868d2c70dd4deb0f14a004570363b6445fae75c905f7280433c5b66b87f16294521336d4b499f1e10023100fdf993c095e6d759409b8f1afab9ea586ed9940f64af10b0de50e369bec1325c1faab107804fd346b22560ac240287f00302047c435bb5006630640230166208f16b93e1959e1f0e2e525354b3786b3b49b39ca59a0ab05b3b2af9d9da80cc16d80f9c30365359dc2ca393a2230230446b719129a00a43c5b93be77075ac345a690fb34be4e51548c269397c1c962fe50bc64a77545dc1fb19d5516c6ec4140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023075842f5b85e7e2a6a4c40b401e0c8c2a3b9fcbe50b2612752e02a84d9117bf10cd0fbd7d55e17ed0e134435585de4e83023100a2ca7d3f4118951a3c5eda462c8b17b2dfa10b04f6539648fe4f2c2a68c321e457cfe6697f881a00d1621d8de01553000302047c435bb500683066023100c516d12732e0b648274c8d440848783951d8b87d553b40c3747875a6c12c5ab37f13286a0fab5427fcc7e7b40eed89e6023100bebd42e6ce91dd492a05a8556d901ef4ff597a7bb54950b08b80df5b227ae6687e1d3b5c69423a86b611fceb1f198e0a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302929e86ad3df3c930b4fa36e5d79ccab9aefceb915ff8d82795970aa8c608927b10e04b31e982dbdf2f5fb1b147987a502305fd884dc81f0672737429f9d8c369e2765121b4e67ef354919add973485910c99265f77eaf801c6964f0046146b2ba160302047c435bb5006730650230463687dcafd4c25926a9952bcd36ff44d7ecad8bcdef45d13c0e5480f22309d18b83c71b20c27eeaee374e210363f1c902310088882a845a857001706f211139315fd6e78a2c0103f67335e1bad354642c629df54ac6ca8a7726f274752fef2170a7b00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303ee52ca62010487b9c0198977d2d0e2a63d91dd53e3ceffa945dda7ee6280cb33f8ca0c992f4587f10fc9cfe65d1f26202305f227cf25e15465f74dc33dbaee9e4c0b1671ac42667bdc299fb4b7eec7dbd147859d94735947e0378397eb9cd0683c60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100feee6388e7b1ad4ec3ade669edb42e173278dfac4563000421145fe0a0f062da2a563ba311517ff85a88a451b9ae94040230777780e2384f712aa8eb5bbb2d4293f8a6bc765482799117e699c2fc6aa549649dd88be1e8888a542d23bfecf573cc700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d1d2aa6e92e80b4034a4e45e38811b751ba46123acd50059a8f3a9f3d0cacf9fa78b4d73afc1f18d7f4faf33dd1eddce02304fa290efbb010afdc74385d750dbb7131bd8ff67ecabef2b1694a66efb6b8e33c777cc3b200043a319ef8c4c4a7341920302047c435bb50067306502302ce43d1138299293f6ae81ee181c8aa5dbc514f17bf3fd47297284b98107a62651bd73fdd95836957df6e38dd078a670023100a28b986fb703f29156ed04d4d378bf2266b1a6057fede921f0eeb2b484bc5d47d82dafd54ebbbd7751dbcdd2a59abd300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310095f119fc8baea2a5f139d22c7effe3ea7cd6e7bd791efc09af5ecc57abd3f01900f24466713aa4435bd8f5a93a4bad6c023052527f7eafa7c4595dcf70c8e723b2bd9103e15b7761a1d172c633a296c66f517c23429af757c2855de640bacc8e18420302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310086ae41eea268f1b9c5b504c52c20cddde99d9f4e237119592d78e58bc62e4536e93de77652669027974035c654fa007f02300b77e0b3cc46ee4d9a272372b1312c73e78945f849a99cd834f2629e033a20b84a4c7c99af5fb96fb58e03e671291aaf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d2b36756f994dd3e67fafaaa61bbf706246ac24ff31e11fdfb63ccd83d85fc0803c1f9f5c34c96d43d442938d76a084b023100d56477e7e42bc9e985de29ee1996442ac8c40796800d6bb0780e581a45ad806ecf1aac763d86447d69b5489596edde0c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d411aa81af7ca1edbd22da330510a3b7997cb5b129942500133e2328579efebea7e80cbcc8cde62136f8d0222bd87ecb023100e84e084bd35a78d2b277fbc269950d4a22f62ef7de8eab3d4d6805530c0b4e7cc31c6ae600c603cf0e36d84d0bacc2ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023009580a81b8c6e4ee0b2aea7184a1b6a84b9060060497a29ca020ba29b78f937a730d802a077a8a8fe40e5ed14d165bf30230632b718ea7f5db9be535e52ec6108e33d807333e53ffdd40d108ec6c06532f4905e5011f576f98fe069539fed312e3580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023066474aa8f7b2023273174c544b1a3686535b4be61c4f5ca2e98f67dc97710c7ee93124756e41026c62a8042c7d25865102304f3e423aa4a7fb15ec8909d50fbd0ed8e1f1a8d4d3d4c9ff7473dab52b0fdcaee69859b9bbf8a686c074e738977e9b360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307643e35354e42a16d9172e44ba956fda993063c7427fc8a93ad382ccf1ffee933272d72677eb8d913134000f4c442de50230045750cf07508c215cd9087e305d36be359fa61da02e977fc1fe5108104ced0463eac437127433cb9d1d1dde8abf48770302047c435bb500673065023100e3d4ac6210d2118ba06204cfdc8fe7906a9dd242eb528c10198cd0397fb58d97992ee0c8dc51ecbca152d95ddfd76167023048c89e80ba471ec44040a59411cec587a5beb586eaa4f3ab73404a4adfa08079287b1fc97cf98730325419002210443a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e1be1d9d22b7463c833f27ef95175daa51a364279770b55a2ce03940363b6e8e4c5e5d99e1161c6bb25368a130d725ff023100c69469685a185c1114c20749b511e0bc32f79e9728f74114609fd7109197d29012cb038ea97f0816d06d576823eb4ef80302047c435bb50067306502304ba4b84823f83dda5a899c090141e2e9c46743b14c543b4ec2e4cf5c4ce3ab09c9c9186c76b38cdfd8824a00bbf0357a0231008081ced9a3bce8e6b6736919516e2e9c794c5736913b77910bac4f94cc72c3f5f8534fa80fb06ed9ecd49ebe073d27660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301f962043dc05724dc9ab5610b8bda5923e3be47c5a1dac865919926efba80194a6d1783153203f96d1445c6e6f04da8c02304c99d603d7d3942e66bf320a4a76be4e1fbb9776d2d8ef60af2727ff1ae9549a47f70684298af166bad304982faae90d0302047c435bb500673065023046f4b688c23e3835d65b35d39b9121df9669b1d80a56fc7becac1a1616214b252439439255fbeefccf08c02494c99e9d023100b23c8743a35f18f896dcb9ba9121a94eb8f48464641bbb56c3fb19b5ed2e77116a03cbf5833abb1977cbcc52770412cd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b78b841e5043e177002ee7a3616b47b24d5272974a06ece5a233e75bca43d602cd433747528c5a6baef1ec7cd016286f023009543b67a3c8a62c5a8b04dc39990e53c7ca57d88f029b206b5b12d533f4fdece62af8b9123d878e5abf25af28af00a80302047c435bb500673065023100aacf5b672910d7121c421ce2d54380402ed85d4b1d69cab482cfc47e23b0a4521aa1f6225c895c73f5fa0dca5052a86702305a668983e7252496ecaad3989b9d54e51bdb70376c4fa9b9807caae01d5b4b72e804bee32400798122b9a893e2c7cbb80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100877ed2c6fed2528c23f0673fb6d978b4b5ef156c6fdcc4fe8a9a5734dce32ec90e3f26f5ec29ada61f213295afb544790230395beb3266c59b5df8c8708a7148279119b9fcfc06d9cb1ec14342df18a857b0af1d9e0d8c5b1b09e4cbd8f204782d610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bcef7f14a05f155317924b4a35ff6caf23754f477e25b38b6df1d108ea035c3107db2835b604fbd0819604cd0fdf62f402301baa64b0d1f2b15e8888afc755fdd9c94b106c65f7a7d59be2b8ba9e4374f802754d776713e136026d6f2b082aa8f6690302047c435bb500663064023055402b51e43a4b5e00db1c1c31a0a69989d73a6091838c50a1f920258a40ced87acbf0817ec0d37ae4374e688b0a5e0002307bc716cdcf0ddff1f5047b458c62100df3836d8136f8668ac1aedf1b9f318b5f7e3dcc03e05457582b0f01e335f8e94d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230474763a8ab1053e652f3c312f24dad83090b133d51dd469277acffbb5238405d71ce8ff958f51e76db1261274f5a0015023100f8c102043ee488543755e120694b5a824a1998477d8b35142bf1a3c33fd60b371a298d59a11384bc3df3d5948a3e2fc00302047c435bb500673065023100cda1797a4dc26357eeab162c5e44f16e0da821d2bb0683d74cec56af52b41d1f83fb629e0793e2860c2952d181b21c0f0230348013314be97b777341f98baceecb7697d81cfe28aca670df25b532623ac0a76f0b859759589b6cdf31d4a613adf8910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023003c208e7806d911e61f38e20cc877f0b86922ed48326004c9df23ab3c4933e280315daa79e9e24e355cdb580eeef83fb023100839b5d79057f57379e22b828701b85cc86aad20dddc4a99667da762a4e50849f4fa52c669ff56fe5fa5fefbe7732dedc0302047c435bb500663064023015645bb0a837c04c4d17085f5b06db1a6a92bed6d709bfd3400bd325cd88abe050a81fec22e3c11e8ed6974ab6fec10602303b2fcb1a3a7575d53889de6d7b5c89258ae08670d2b717cfa768d4e8a25a2e5cbc611e7d9accf0fd333ab7dddfb176220302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023023b030ee805ea460bb1344e44640d1bfa802f3217553375bfd4e8bc38de6aa3a7e263b126873ab4932f09c57881dcd0f023100d7f7b627b6f496c029ef7afa8f9609d348c98e2b6ed6a73d03d0313303c63ad5647e27d8120a77dc5d7ca206dbce4c110302047c435bb500683066023100f830189d31a241ec626ccefaee08379d55abefb435caa7ace15fe69a58d5d06d44553c0a3c42966a3370e36a1bdfb735023100a9fe44fe46cd277d39f2e8d0020a7772b489a768ddcc08c097c5bc63ab946448157bef64e9f6b87bb39517162efb5ea40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303440c124e1c5d59019e7fbd40597629dbdfe14d80af42993629d9ad5ce2553572abfa7aff33f94d437118b5aebfa68e502305845a0dd4cea64993798ac57af27f8c719bcd591e90e36de4ec880b96335e6264fb1a81d6a5dd484cac6099eb05463a50302047c435bb500683066023100aa449a044a9421f8f66b5f2508d49e58f0aaae8386122ef8ce812b54d24dcb870d628f59dbcf51472f91695b087b718c023100ec84d0d6012ef5c68382151bd39109dce2e9ae2b457de08a46c3ca5aa4837d39da91b0ea486c2c88ee20fc8b27c58ed00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302dd7fc83bb7c4ad2342ea959e09c23c70a603e2192dfcc4da2e7ee39279382b3cf6bfc30c2c9bc1616d720f47360041102304c7e915dc12fc898eccefaf13b9106622b2de9cac557ea14bc9464d6c3acb8293d8abfb5631e2839d809e761fbb066b70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023079a40f42631dad02e3d6f195a693bc041756f1b50bbff307ae3d1ee5fc3548322b0cdfcd986f278b72ba958ad98741b8023100b79c80876e17aa5356da296de07ac4c90390304d5b4fac68d39ed60893a1c70282ac0cd985e5e86c6e1edd258fc12d190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230028d420a4bcc7cac78ef19ab695372cd4b00c9fd5e8b9fe509f19a9a0b3a6f4926897be69ed3903125051c5b59de77c3023001632983ae67ab1f8eb47cd8c383575fe4cca5dd4b9738ceaa2ca101983b4545c721d64e60cc35d613e323ec65eaf4c50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230027384b7f0873bf69c0153888d12e3dccd1bc6608b7a3d18cd5b6dc18e48c3eec2d16c0e51fb633c2934b671b3007b940230252b63bee1f4fe93ee1ed83443b100eca3d48f56df5c001dc80ff5139dc5df430edbe8753ab1d97440693375f02238580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302d52c74b4f4ccd78568aa66def52886240b3eba2303445498cbf1f4f27adb0a517a9fdc517f31496e4d698c536dc5353023100a7612895c0c48009bd1429ec2317905c890e88604d10b31694c4fbdc1690068fd2076a4c019811ac9c3aaa639a7cec220302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d21fff4f5d3b825d886291478c82b60a5131149212cc88afb8fa1e27ef86fadf64f74ad72ae7548d116f6b0d5333bf5e023059348e8770c759f63f6017d4599494fc3b2d7703aef3d141a4f5debb114237ff4c6c9356caadd88d43fb509635de8c1e0302047c435bb5006630640230563b0f4cc6dd8cd6cff8097d2b41a9302a123de5043b4232d74008ce790110ca7fe9a3ed18dfdede3d92b9c02ebd334a023031ce4ee3fd4abfd43d64226d6d92ac0dd44ad7f0b1536464bb5608cd415e39c1e6dbdf5951943c08256ff29671ac4fe70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009de6afb704ec49183ccaae52b1b7f80b2ccc819dabef479bfd769b04a63a9808e4451465f23a6a53efba4fe9f2872f4e023100c32cca0704430eb9cdb1421ba8ebf72b6c8a9c782fdb99a0013e502a643a0a24b7a54d7b562e09e24b8a0f5972a1375e0302047c435bb500663064023041f198508e9a066b030870e584ec5552d1dd0495bf603d2568abe8d38540104322771ab7f3f65f8041333c045db60b720230342ce6116558c2303de884db32c7e5efc481f0d109f1f0fe060e02e077a525469604ae5f92ccbdbbad0dc5ec0db5de5b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100eefde3912c6b9f257ac9b981eb1f9a33b7827813d48d94eca3e0de4779e5cb6e1d5cb03ecd69df0559c689914cce043e023034dbf3c9a18b5b77563a777555cee3e35d2b64382620ac5e74d8e3e5530d67184e0d62bc9f9c436d569dac30e87cae6b0302047c435bb500673065023100d3e02da55faade96b5f3a4868504e57871811d50051c8a089c55862d638b93790adbd5c748239a474f587e93df167a4202301b1fe6ec2c49f196dee8033ef9aca028828287cffe77721d7d8293ec01c7379d0073e435cb2646047d85d8d7c07aaf110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008390f5ee27780d5c0ff5406801d60ed88e43b1f9e3371b17ada348750ff9931232af1620886b4245b93cea78cb9ef3fa02307f4d91930c30b79d0fb5f059aea93505488397f0174bc04dc448122acfc14a7453bf36f9bbacfef5f9cd2c4d4c18580b0302047c435bb500683066023100cf2c02408c72afa69e21500de0b981a0d18bc136e18080be435260d9a28abefb9379a78cda8f6d779fe44345635e559f023100b8fda00eb7d02f680a0ae0646708a91170e22603bbcb5742dbe92657e565a08fb4dd727f27221faf39607cb720fe49bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305b91ac017f62f3e0e28a61f85a971f0fca9a2e93abc7277502ae8834308a202dc69bbf55602cc9485c9bbe6f2f2830400230796e4e1c14703564f53cf6121b87642ceebf9b85647c622efd7b5755496d9ce3bdd814f7529117b6f0246cfdfa40b08e0302047c435bb50068306602310090d2710b67d531477878ad843b9a36d5d7cd09ad4cca71ce70af5e00de66680979ee134c539f85ade9f2aed6c28a172e023100fb3c85f57abec515d972575d380ea70ef8517af51be3130c22ae320057c739c00e27618a86a16e56d96a16a902b845460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023005f705dbc05a72d1aa49a341e96973b6dca3c2a597590430f41d8049c33adecc9a8ce5cb14a318131d5ee5e54bc7ab3b02301fae1152329b4b440197978879acaec863b81bea9e9f6aed4e8cd10121028c5a023fdc5328cfcd01715b041020ea19380302047c435bb5006730650230190733bfb84006d7046bab396a966c214300068878aba98b534888d5710d44f36e51fdc93adf821a8fbf3dc45f1de55d023100ce6c54d1dbcfdd33329ebe802609f73f638174939336be497ba3005a7b95a9ba36cf3318167280a8b321d28840fe65e50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009c81151c2f773e4dafd05d15beec19dffa26349a07b8caa6964aa92bf50108719fbd5cdfa16892bff5ac0fad28e5ef12023100ad8607e41c5731fb6772ba1e79dd9bcb1a7e29fec41a48df02302ad3b57994e8fe6f87b65697dd1a2e494a68bff012ae0302047c435bb50066306402304b2ace648b0d8a89ae393258963d56776b03b19c0e8b1ca1f8ef013f33b10eba5be9322501db1d6b01bb620b02b2e32e02304cce00b9d397e2dd5ab617204f7eb52961ca6be3af267a5ea4d408464ae4434787a3465139909af020a4fb3c9d42db9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023052554edca775ec9cd2df4e936d526dd67888873e84c42ae26caba307b7ba564e33d7d9fd2050dfedac26206984ce6bd7023100e1261916898060126817ca23a1f4818f54baccf13808d8681ba64ea3187f9179259b4d45a85a2ff5b478d7c0c6763b000302047c435bb500663064023060e8a8de7d66f55bf706b694212361ee6c405c120b8c4971e5641cf011e024fe4c88017b2340a23464b2816f01a0ef6f0230311ad91648bd53f2041a07b52ec59854ff9ba860ff7b73fdce318c99323017f6ef0a285dc43e06c526798e2585a988600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230219be6cb97a7490821e97b45d6d0c32311b9f142ea96dd4b0c29bd10528d306e5db90ed63235ae6b52b322dd4f02a4750231009d1791775bb47fd5a649e7cf7650d88044c0a0f3dd6682e9098d6060ce77b834d3df78b3a0403e6aae980265e9c4262b0302047c435bb5006730650230121fec19589feee7cfc454c6711297d0482976f37aeba1e833154f8c5665a6b658f4470af4659b2b165469d23009cb76023100adf215e364bc9f5c42ebb7bc661910dee1342f0d343926081962a18dca6e55b41552423b58dfa0bc0c0b0882a0626c810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c016f05081bfcdf6f3b8f20d0177530a8aa02e54e642a887ab384bfe2a98fed958622e4e1e4d48fca35d07c831013e52023052ab17892ba233517ecc4cb0d2ae2b16a02ddc9527b035ba8e33f08f3a4c0a7ad4a6496c7e5d1f8a2ede4786479546d10302047c435bb500683066023100c6e205ce7617d578b8fd3a6694e20105c37459aa817d44f79f0f8db4cc197db4dae1fda1fa690ee0553694cd79ece695023100a2488bdd8f9606b71e547f674bcfe69585ee3628f31c66efe12d1cebfc6033f6d539e571ea8334e5d145c14639e532fb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302d1393a9f52160617bccd02b2f890550fa80bf510ea01560914cef333398b80cfda4b0dbfbe2c733176b197d7d7494fb023051692dd16f534299e645f6e58cd7a428443a44da248032ea8895d2af40a9da9fdae59529bd34b1cdb9c0b3a83ad422620302047c435bb500683066023100ccd8f5c3490ea2d43a1838a206e9a119b4ea04bbe17b139eb89a9139c2c22f1a6cf5788aa99e87da3695800d30c3677e023100be891c9011081879e19c0b4b8d5c7183e4b460e6680cc9833b73fdf6315cb21a9f717c6cbd7ff24515a97c02e5714c5a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c1314be8595944792a2a5fa1ad878f0feaceeb26d75017791190075046ff6ccc1500f80ba71b4d5ebc8dd3a111d11aff023100fb4d1e38fd8d65b323b0a6a20504975bf595f467fd44958e17d422dcf83763779a6619ff560b514e0625229e12b14f740302047c435bb50067306502303438b1a70ad34c26e390b75d48d3a06e0d0f029a64c878a4115f994f61d4b076d21102963c28db9bce5abfdeb5367672023100b5e584b650fbde13f06915bf514161e269c2f859d68d777bd55219654eab3f27cd63a327fd6eba293d2c5f0ad871ef730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230409697ae1485776d3b304710cefb30502380342700a053ca7be7472a5289d6a0d183729b62c0ba6cf25b90530aadb671023100fa78e4fbe92d0d37d589c443e6ad6ee3d055e12495cdabeecac1af1c2666f0d619bb13efa1617a04a66b149dafbce2150302047c435bb500673065023028168c899f5bf6ca6e50dac33ba266882e986b8a81aa8c7b97a4041c2b367d22f3e5af8869fa5063cbbb6bae670367fe0231008bf0a823587193cc6cbbbb6866b5c20cf23342e9a1d7b79eeaf5cfa80491c07d343186fbc80bca9b9050d169b1b6a6860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300622d97aa59ebe62d20bb0c43be4b609994f69a555bd58719ebfcd8519e7e625224f0b75d1d60664f27c657477129d8302306f95ce54bd94aeebda86cf7906e5e751c703f2424829f41c3380364f4316f61da34ec4e0422447efcd170a48a064fa550302047c435bb5006630640230332c9837d2c81505151034085c1ca0817db6892d031fbece80a7916e3d5594da3ba8fb7b25f1cacf7f2b872319347cf2023049fee7023d3c5cafd6a82d152697d4d2fbc0789a2c3c9144e8d41afb94e94d777f32bc646523f95e116280ad3023915b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230720982e6459ba37dfa53056e24cfa37cdfe929daa9dd0d3e80aba3cb426fb928b4e9f7b870f6783ba93575cf273c646102303423538b0c7abfe4747a2733b12bee0313bbed5935f450ebbe637fe44f1d693774568b1958c2456c11649d58e9a61cf80302047c435bb500673065023100ee0d2feab510681aa703c1fa71396cf60b993c0d4646f31e4b4bd6017f9325883eeb62277ba380c3f49398b3790de7a202306da56d324faa954fe5c6f9f59b78ce578cacd3702a05904fce15e939591a25cfec0389f1a2460b575ae21c545c31c0050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f7fd76ba45e434ccc7781df2c55a2c7778605fe92a2e076aff53caf0e552599e0bcde85bc8e85f8ea432af1bbfb1e6ab023100c05c8cd201ddac68b676afa760a4fbd3339d400c7dc06821ec0138aad86ce82716440d21dc8be33afc295182bbf7ebac0302047c435bb50067306502303f023057f8de25fd9c73643066d22e8501ed308f24c7e65e5838740a84451cdf5cbff62a344d23733db1eaa57c7d18d7023100ef6b60086d6267b9a36dff553eef7ae45a00790f86f01e3ec2bce965b7db7a27f8d63e09c61d3489002445d6a7bd1a7f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230599b8cf887e8bd187dd17c2625a3ec541df75aa095a33cafb26b6a022e6e715afeaf0fa5492bed7f45b6390fcb2cdd62023100e2b361f93a72b3d6a95d3397d3eb2e24dc7b07505a3a98aa9fa495f58dea08bc18bc1d689ac201b0e849dce11937c75c0302047c435bb500683066023100a0c4b4d7b7a6931e0b45c715666052588c848160f0efc3e00a52f262090640b6abc5547eee78da6d81a121a77f04d0220231009f216d3115a8df42ccfac33e491ee6f48802277ff20339f4bbbf14f3bb91ada21ee7d6d870dace7bc3344d85205554d80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023057aefbd4a43c4c2c073721d3fdadc5386d86ba8cf034dde3bc2f8b8fa7dbed3de99511ca7233a7c96cdc5619f6e41534023100a2e855e956f1ae1069a8efe54e5875588ceaca7f980887a03e8adaa3084ba2d3819bb1fda225521bfd7fb7cfec164bb80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bb067c58fe4cf8d8f21a3f9c8db138af3d336ee9145fe1271362674c4e85a640566091bae7d765ff7702dab0899ee12a023100afe5ee1d2f63c47dba7e988bc889a95f63c445120a11085ac0e46504db3760e65452e6fe752ea574b4358a9df20fe5940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306a4ecb591b14f397b7b097bba0b8adaa44236d07ded9aae22dbf9a303fa54882282561e90909d9fbb93c55396786b5b6023041975ed6944247a96c0a1eec6a4d636da42fabc018b4313f402b558c95cb66482b86d75c1e130f948d64177d7d6795ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c427f9d2e039d6ef5c77e53351951dc83e30e31849760732a46373ebb63cc5d945b2611db5269fba470da451405e47b9023017afe5501cfeeb012a34c2377c82e741c6bda9d59bd55f7f3d88217205cd6b14f6aa342bd443830853b8507e7ef777850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023073ae02ad8e34f2983b62dc505490c5cfe8f6545437485362817c0e36cad9c457785338126be865eeaab2bf85ac63d73b0230091f2898bfdb8645e73fbd7ad3674f245bdb18c972f71429ac7747670ce6757f3f209598d2e8d00030f2c7a3edb60b150302047c435bb5006630640230708c1a7abcc23af302cb6052790e0da7f083aa3d8db9712916929f561e255da11b19fc52765678fed46748476fe37b5f0230603f5a9c598b16be66452ea827df6a6257243689304913da1ea384d1d25be3a301bc2d407441ca1d3afa4597e92acb8b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023035edb1edd4f58e362b1c17ef29707498e083400e1d52c303f046d092c1bd1b24c406af7f33eb0865b92e54a3f3b33662023100ed313be60fc2414b6a62eeaa2d7ffece44544d6ccc7e54bed0af3c04f7c9f8e311ea8f1fc41cfd778f3e96369c6239bb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306b600dbac45a866b7f412c8a0bbec6fc6e53793733fc1d1454ab62af9228c91eb3330c68e13bbcf6a5a835be68bb252b023100be94df116736b4b74a9b1fc55364ed9cda505274c1951a9fae3f6f44430fe91dc95646080277d0a071d3e703aabd1ac20302047c435bb500663064023000ebf622a69cdcf2e92613b2531b4680206773364d8a48d90b3c7584e701a06a88765d9627862e4129a1b4985b196ed402302f6f8c7eb0bff727769b92fb15ccdbf96622c10481f25632beeb79233ad88aec28f4e0fcbb55047275f0282cf97a98930302047c435bb50066306402303d71ee5510f8dc522a8aa80ee5be7e92f127da36392e58bb2ee76b4206d2a2457280263470a3f6e83b5ab328a1f8eeef02305004c54121b8cb8a44e0e2be57833ea875ad14c63e250f8b3713f121feb9c9ba5aff7b222ee9a54aeb6f13adb555602e0302047c435bb500673065023100cec17c7f75f71f8bae80cea3bcf3d39f8eafb25be4fbd4d19442936c09353619d6a88ef4891ded8ca2cfcceeaf1ccff10230092c16cc883c2890946d3fe4814f0b3a42dea417ac2067c0e338be379583e07a8a618f310415ea00684ab9f192e9dd3d0302047c435bb500683066023100e6be1268f4ffe54df6401943d0f217779620dd68582b56f3370c605f694a249e26bab4dad437f7662414a45c594c8271023100a90138467c950e003070209369801d350369976f1e47ecdab7e905a938676a399b340632929c9019b3c50b70f0b010d70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ed5970a5b19fab32c897525298fee8007ef1ae12220b1db6d87315d1d9bc2bd437a03c94dceb6caabc8e4a6d3bf83ddb02306727bf0a8c2c6ba36a16406ef83f0ba01bbd97ab6015869f9b82689f1f944a02905617681a8c659f889836640f6115630302047c435bb500673065023100ae1c764d9ac167e4481a602284e259dae3574dbe1a439b07d608fbeae498b976d60dd76bceaa9eb4b387d72b31940ba202301290cdd763abda7d92cf0e73b1d6a7c4580b1e8cb9b0d59e5355d3f48d7d518e61addcb052db9eda2f06fcda9c57a4df0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023052989aba73aedd41e9dbb6b2566113d72c95190e0ebbf14dfb9d99944e183525c00d4d8092112763d2c0e72049970b8e023100e1a8a8b4d3a7e284da707f7166f06238ad2745350d0153741f6d49b2ca1119db2eb01ba7ed7fd72a3d8a5016e92c62230302047c435bb500673065023100e014bbf7c44e0618af12dd38c7cb6eae35959b5463d63ea68bd7bbcf9eac33f18ec894470a96819f5c1c0d5bbe48d1880230346ea0a0660e404c274ac24bb2ea177d0f2c25d6b76d844fb812ceb479f32913e5c57c193219394d27e17defeb8ac3e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310083c323a62df87ecd86c52600473245288dafae7f4402e4058fc608c8d432c707ec2492bd638d6fe1b82abb4caddd5845023100e95f85f4bfaf765d72f28cb7735a47e4100b0bda262545797f8c3a33b594652182fc388b944cc973bb18546145d13d9b0302047c435bb500683066023100b5ed0077f537ca9058ee86a4581ac77614b495d02acfe23bba630d5685aae1bc98d57b908ab802e4b9b986c0a02ec2c3023100c2c280c270fcdfe6642b8127bea30008b79fd9dc625b7777cd4318765d37256c6d6c5500770eafacc6a3df027ff17e730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009daf31186f6bce738767db17e968e1909a1de9ca5fcae63c319fa12dccb47f040ff8a4378695045aa59334dd72d66f03023058f93220b1cf1f00d5e08bb45e117a3fb7fa2e8036a3652fb375c8bf601f3e021a358e2c4e800a680ba838518e2ae8a00302047c435bb500673065023100d46e5528d99ef1b31b8f4d509cebe6056e1320ae231915e62fb96b81292ba04b129956ef6bce8100d0fd00fcd54db90e023014c46374cc4a7b7a244603469efa15f0aa949dfb4d2bfe7305a5b882d6e958c1063a35a6c8e28ec13e85991e19f73f7a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009013a75078a3d7f7cc166c2763159a73a326e2dd7b1bf9820889fb38c43df2989e36b0e90cab4024037e68353d74a154023100c65b4e4e8783803a1b3e0dc8218ede917a077f0c7d8c51b4f2f9450647019d5c3737c9aa03a9cfc88194e63edb4860ea0302047c435bb5006630640230506754a27ccd53b356344055cd02bae0b08b31d626f903ad258241ae721f21fa840f83c8924fe4ca97ed93f3c72bb77f023065252332a93b2cee023059652e83ed1065012f41c0264714c724c07eb13ecef3c106a1686111df8189882fc4704f0f5b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f3ff013f51d5e828e193ba3d302860464cd4d0074eeb082953b35a4703651d6133e3e58d1b0ea3bc85b0728b9287dd0023100b045eb42a37a951d5f1251704f454ca9cd122609498083c377fc368c4d00a897d4d06f647addb1e5c315c2990241f54e0302047c435bb5006630640230209f6051dcdd8f5005e0a5465ac70335da36b4582980107c2831a075f5b791c0d443b2b0262cee6a06f0a020cc84179702300569a39c75f96b80b0f5ee8516843c05cbecf5ccc4d8ebcbc3d32b7f7944319c86916dc91cd56c2e5d07bd833072db020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023008b61b2d034a2a95aaa450608df21ab05fd697a3714039cd2a2b338be31e39b684d49b0044584b9347899a27cba5c2ab023100dd9d090cb2f06fb865937eff448be1ad36dc3541ef03660c1ec7cb5204a3f6aa03b4a786f6110c7704a69594661f7c790302047c435bb500673065023051694a40f57495924a0d1794676322baad92ea605ae63c18078b8802b26929eb922246efaeeb50a03f3d2b878b96c4cf023100965379e65c7b9ede0a520cfbd38ab1d79d9152a657c0fd22788557ecab3fd55ea9fa6f7f556308c9049a5733e11b05a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008f9786f8a6e9ecab54a472664c5d491b2e783eb0f3085eed00d59e4058aaa5c9e8886e0690018f82a6a48ad5f6cb2a30023026de19d7f58e68927742ad0de9c1e83e508dfd82f639d7317c673e549912d7fe044433e8c7b9285d90971e6eba42c2160302047c435bb5006830660231008629105e9ebe33ee8c26ee00ad8b1916344d7b88366cc8be645e582f4458ead3b0093249bbb08a28d5efeef13411ee18023100d99366849dbdf8352e79e4e9eccbfe0bee9b8af2b33f1ae2172f4174cec7840bddafe1543ebb862bb5b267da276e43470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023056aff6f687079dfeb6a9365233a8481ad9980a08fe1fac6abbc2d1a90c744142bf5c02aeccfc01d1f3a7ec41d7cfa8b402302b51257f90c43d4b1a5cd76c738a26927a02d74dd274156ecbdc9d1bfa50ae818f5de88c1002d3070afa46b9057b9fb80302047c435bb5006830660231009d2a87a6696343e2b7c93ffe1292e3c66c2f77a0f49c9d9582ae9abad0c77f6b77c6c1c0f9464631c9876c69a576e44f023100cf71108cd22433a7f36bfa7e04a6f7f27ee71836023e35ee2f16129dfaed8b26b295eb4c6afed3aa3b44a109ece814660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301e68aacf812714154510f575f9fd83580ebad0c60461b3ed2ef2a46397572e9c539c82ae6d95f8da6722085c2345e22702302c2d515b8b9a5708832258e5088a8a08c07a632f20682d25896d73f1e2832133e0d19fe8faccdc6555b63824774875300302047c435bb500673065023100b1c4a0af7162fcbba638e812959ee564078e95606d57aedaefbdfa537f96e8b2a49768dcc29c13356df82219c0844b1802304ba2ff44d64c97554c358d8bb45abcafe5acb28466277521e3e9345bdf6cff5943db0eb8fca49776b130eeefe05ad1f20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ea1b90ab2668a2645feea16b7a977d05e31b7bccd1d233a83b56bd8f696c4d311bb31ac6208a9cb1db8f0170ae1202ed023100fbd2d6547b4e9d836719bf9004a3818340cdf0873b1e383e01405196044b2d504dae691505b2afddfdab7f8f4d3fe1230302047c435bb500673065023100f7e2785708b8f90f5214367f52b0e90636ce9a344e3c58b905a745e32d71aa06fd0c88c6929fcef72656bdfb7ae7f4cc023017b2d08ff3ef8503a883f4c7d354fa59550f26b8814b78db997b57acf8cea81f02e4cc2cf155c04554e05bf4af5b9c860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230097b86d175e81088f9556e0dd6bfddbdf66561d87c2f91908ec1debe08a03a7abf4e6fe70f581aed560e7210f42e8b0202303384ab98d94b786ba14d434a86466700ade8116205d494fddb60f035691eab6dee23da71815d7ed7d146d184937433c60302047c435bb50067306502301222fb73153525c2e6e4ede56bbe5ead1c83ec734e6b1fd3479f229546f3a89dc4cf5f56ab833b9e9d9e604f49557a62023100e2c14ee2fcbc5df9de63aa838a8a44e27585cb3b4677de135d1ea0e27454621f2c729090c72fd7b341ec376fd747a63d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023003f47d28f5fcfdb9aaaa12b6e60bc827962e055f021427f41281b87f984d96fbc64c5aebd5fc866325aaf9730a14fb30023069ce852283199ee6a31c4f43dab0dcd3afb0706e4d5f94db5a9dc1dacbe44aff8759080981274e5ef0d359a1acaf07430302047c435bb500663064023026fe4f9be7a8d625098cada4a3916cfb8fe63888ec07eb257a9d0d7c16e4353798e04528e6daf365e516691a970a81e002303a6cee7d31b6f8e962f3244d6f5f1e302b0b731f8773d6987ec50ded140f9575d4419e63001e16a923efb066c8ae8a3c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300836c0f6d053ae6184e0ab6c43a2aec3ed1a8a26b7053d4206b3f04f315b6c8173a530feb98a91e5700eefe85385a1f4023100e28755cf3c1310d4b98c3ba0e42f176f0628ca61bb52e73a25a3348c57cd3fa78862810fab9522b98da6763c8bc3720c0302047c435bb500673065023067288c374136c60a28fdd1da21b1d23baf75a0d42659fe329a10be4767040ca30e5762241df7b166c85fcad039bd92d40231008291741e50b135fb072b698a492f411989f29d4e73ff0b7de42de07620c5c41d149224f34162f04422157a34b0bf509a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b7f49c67a1ea51720cf3b16d40d4bafbafaf6a5766aa39ea5a4a0f0203aa0c54a9e246f3670c2b1fb7ad6e8d1753b75a023100f485195ce4a10644420a76fd872249c6af7c7cc088c8dc9fa17965ba388d84ace1862d3f9a3412011c82897850e2c21d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310086cd6c0bb82dde1bfa2a0bcb6cdb6fe75c3ec4ad1c7590cac993aee599d567ec356b94a89e2f3fdec91dd377d6f99c27023100b0f889b957e2207125f9ecd2de793d2ecea6951e9196ac9ebfc659f5bef031576a62606dd9650eedd573b887c3c7b0030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023006bbd5dd49eab77995ea531dafe89049d4fda28eec359e83c2fb1e5161a2d0fda0f13d1fee3a3e6bd8035e0509e6126d023100c1b94ec02d03177bbb0bc883aef9e1a972a0e71eb589cbfa0492cc7b98aa6083e7dc245010270e527fbb577b4cf049c30302047c435bb500663064023001c51815abd6c4760bdff18a256b989f3f01910a2c391b3ec518a5ba91bab83a5c601e8917090ecf3644e51a3c187fd602302d5dc95020c130d7d4a0391d9d02c745448cbff6b62c9e92cd76898168255bfb507aa2e5ede192089b22b3f8cbb51bdb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310086c6b33284079c8ba2f7d6b9bd3d53a846f9fce4d9cdca7b529758634e2c5a224202a6e0fbe40ab5615ed35f75e3915f023100b101b37c4140cd887909e7a505e9cca03119a79fbc0dfd53e96806db8e170cddf14b65e1630f6dc671c2443f67ec30e40302047c435bb5006830660231009c55b2266e3902ec232ab6dfdb2e5101146e26bb8040cf03ea1e7646c4e83f2557b572d205a867ee768c061e45d016a0023100fb2e0539e3a854919c7297752dde966d7a357e0b07d814029e6c5da1d9230ed128aa7ac9d9026be1f9769f592f512da20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ae3e5038cc39b749c153b319abecb684aaf6116eb7e69b95637f977987fff3e22627e28f1a7a48ede0b96abff5d91061023051ba712890061e8a5002cbe9cbcd2574a20ea7af156a6cc23c8185157a4c6e8db57a23fa67bc83806d993e8f67b4b9000302047c435bb500683066023100acd45efdcf3f67111f12baa8b3546b84bd5c52cee8a46aafd682fa7d6d62a95e13b79321697157708712827cee12c291023100a2871bc01063a314aea4bcc885121b2f3ce2304af7a5d128f2d6b7b669db10c573e4e1aac3a66774af9f87e5af07c4850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303e71878c8d5bdc6a4dfec71b671dded1b1fce710b8a98994c6abf86b659dfd5ad07e8b068ec70c1a1d4a170cd702fd9802301e73c9379bde03449b3093d0e74ac501662e8e5e6c5c1c931f5a6e685af8ce67785806d17fb8254b9ae13bbb9723da200302047c435bb500663064023016faee7c6d7e418c3ecfafe032c4cd4c74e1c2ed620b37d3007ba8033f16e167dd19ab8209dd551eb256124547abf0050230140014f979af00b14b799e596785bccaa75c299a2d994bd83adc67feb17c6be972cd03143941bda3771e08948916da900302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023047332c9cb34485ee2e5d65b5d688e66e0997e3dc5e2a3e2cfabdacb9d4da3a935fd5e81f602791cb282b0fc9e1d886f60231009fda12b370ac9f8ca4c548cc5cf731c6382260b1553bfbb3c1f94ede1d3275f19aaf12074d11b484a4aaad6d1f2fcfc60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bfe821591f435956dc7413174369d11e8b44cc1f6559594de65426e601b3fe9cfb83e5b4d79f3465ba33d722c28f413b023100aeb24e54e973c9dd82fdbde04e7860b48d78f9af64ac3973e43c557376509357a5d36beaf2c2adb111f35dce9cba78730302047c435bb5006730650230279f960f004d7d1b1b27c4a505eb5a15f7fd8eca59ba97d945fc18a1f2633243d11f15a81a9e19a9436bd181aa9255c502310098cebb8bd36d846826299f18effd2642ee28380709c8c7a8de0dddcb5ce210a4102510ec782b6513950d6b665e3ad0810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310091bcf9f9efc104c0a6e779d499a07b3fe1aa5af8f84664f247bc262a54081d4a0ac5d16e90a72c67a23ced32b8cd299a023100812c65c9ac516f54c3b09fb8815f0755bd948857fbde207b6a568e7a3ac839627509e2384e30523f837585021f12fcab0302047c435bb500683066023100aeee3d99bc3e2c43b53f1f1e539ed098236bf383294512d7aeb2c355f9d969d0237caa58b36a0a620d314ac901df8bc3023100c9d2d148c870d080cfdfee3c01b65c4b94116cc01e744d5f873dae61b395772786251928a8239e4e562ddf21abd115500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230416e3f92c2db304a8b340abbfe1852dd8a4347a9fd77fede25fbd034ebe1a42fd15041e3879a93a4caf243c87d2792c7023056f2fefae430f65de2a8c0458c51ae2d107fd38f2f4637e9661a1817239a361c95f901555deebd7057a40488fffd96a70302047c435bb500673065023100970732fda7e5bcd8071a9d46a14b6cc7cbc6e0868f20544067356b407e98b25ed24863506b2d8e7c665a16650d43b048023045ff0976170665b43ec029bc1f89e726e937281a5d9f7b546da48a15d4dba534ccc41a3846597f26b57d2ef5c155595f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009989627e33f1394573dfb57fc291949e6dba6e1dbff828435e79d4900669ebb807a40e8623c16e538704c1e8161ddef1023100e5e3d9704945822341609c3ef46fe21837758188ed297c3ae2c6b4d3c6d808cf2caa52d2509e43f19b30456120d9457c0302047c435bb5006830660231008a3228d3c653cf5b31e5dd9224a7803e850b99f8e16637e65c069f20c9e6755b9c79fbbf64b6c8dd4d92e06a321b0cc3023100914c1c0fb93eac5ae894290fed773dc1194abce570c2b8c9a274878f769d542721a89ca6b93a3d20778308eeaa7be2330302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300700053dda11a74ca2ec44028ee05feba6abd844bf50eedc16757670fad2ca9a68cecd9c94530a0bff4b40e218b0741902300152f1ae3391cc76b5abe54bd7b3a46846706b4283f69bd1070bf9013b4485ee8eacc203f985c54fb896973869451a440302047c435bb50067306502303dc1068d51acae1ceceb020ac6a372e6f4d7a073332279d7f81a1d2cd909c7c69883c10db3ede126326ffad9da4feffe023100e5f34e3f765acfd297014f7702386e6d230317dc0299918db3948b9f379076471031672529555ff90c28f233176c21ca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b40048f08cb099a5eb4735bd7a8bf8b8924d40e150cb73bac82b541beb747ee059f9d96c9749e86cfcc3a1644b317d430230172c90de32a5bfb0493459bd1f51fce78155dae447f462fbbe8553343d07e399760c789a54aeea63a4c8336e13c9b97d0302047c435bb500673065023100e0e0ba5e4193450adb410c738087e4008b23ed475eb613c4da74025db42951c3eb81838dbd79d901ad971074a44b03110230133e493e703375bb4be5c79f104a1417aa0bdb3ed2f38721829c37a4f3ceaec71edc2682bb204dc41a5f930d1b6a76b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304344d8db81c0b6a85554d41932cc45a5dd3665e16befef9ec55466a8ef9c8927f9808bc6e8446df80732995639467d85023100daa0a92d8a771c5321c38ca84e785240a13e7ce4881473a73341f7bc993da7f9fadb5f08847db229ccec082376aad54d0302047c435bb50066306402304c3766f8887d8cb3c15f0a7acfb920a2e24f3f53d85fbeaf33a56db029d05dd7a58284e077868953c414e9c37893f95d0230752665f19cc0ff95ee9f88a8cd8a9789e2d3e6fa290cda309971cb4d5cd49b1ea38e837dc7d4b50534a4d18581ba9a860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023036a7ce28db22a729c6d617910126a5b4cb396025d4e7fdca719ce6df456a5cffd4a4ec7a12c9fb477d354fa1f462aa3602301fffcbf23f2990a6ea1478161832d7a22b503d277c2453e4254ea5621ca57e61b4e36e8dc994911527689423b6eec7580302047c435bb50067306502304bb5431202fecdc10a844e71e3b8cbfc22025dcc6c5524e208283219fd76bbb8210608ba273aef02c9280e6f9222aa07023100d971f7ec647c2a705b5cbddb7016cc5e700d07e7d23e92b98ec23283b29203ae9753a1da090d979e1eaef12cb6c04d8c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008032ca74690d590cad616d557c5c5d5fb877ae78033e8d38dd579dd91af474d534832dbc6c0dff3c3010a424322c28c7023100c3b12e4b157a36bfe3d2420f518203e4371fc20eb26b99053fb20d63828e8d1953948144b18b3349f107712009cf4ebc0302047c435bb500663064023007770064af2a95a1f7a8c5b6e7b8edf220f8077292175d1ea7528fe07d2d0f111aa3d047daf86d387045b44c14d3678f0230255c1b6d37c23dde6888661812cdf7c971ade1b478f100f2d51ad9f3d5b7d5409970a482804c65107c9ecafa69212a400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008a7f48a17d6d803fab689606620525c7706920323b51d2cb4c57417d78bdeee0805561e43fb104999f4420eb9e3700bb02301bf31732c416768a211812349a94530bef5ee9b1f7c9a65a3585eaf992f4d8a599acb3ead7674b8919996ab4650a58f10302047c435bb500673065023100d878d14eba7be7d1a80b3c1069633419ff0d794b2b0e33698ff369b84a0a0ce7d03a8d66f11afcc3dd7467238493c03e023073c24f5d46930d7e822ed85add241c45ca9c7a9df7f9dc5754c7a9f1ada841a05cbc773a41a1dd32793c64c707ed17720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023055b070a54ac4e13630a496c89250b2f6ea6addc4a1b3b9b9ea333126142fbcf7fe573b511bef83b8accb8875f64fd906023100eaa5e3abb5b82339a01323b55730e7a133971371a16db524836108e85cb1348dc8b532c6e0f8cebac16ff3900e7054710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301cdbd0ded78771348d4d1a13d5ad84561b083ba70f5d1928d19bda14397441b47ffa7a05df597cfe5b2211881e74857602302d84abfe01a9ebb51311b99033aea9a86b16dd0009775455bb7ef5c8e2dda43d17a8795517a118bc44f666e63ed54c7a0302047c435bb500683066023100945a2bfdec2b9f91aec76e11feb4d1058ff4ae06399c62deba2ef3a879443b98d8bd495cb48498f8f860c9a4b0acb42e0231009961a905aaa7e3556f8d3b2bbcc48d61ce7669caf3c88e3b99179c95f39084f0dae556c0896bc49db0d09a38c7da5afc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300c5aa49c2d9c368dbad7cdbe4d822329f89e73ddb70c56698f2811fcf9581c2593d769c54d0820d13ff0055d9299532502301bd954f55e111061f082eda6d63ff558562d37ec2317e078593b3db2eb72de95767882d2ce88a76ebc8b8d13c051399f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023071be9464449375882b4b456bd5ef069abe48d41888f585169b446872cbd8b3c45192ada7dab6f262ccb7601de028e095023100a4023b948780a01db7a0d8daa31e63964557bc04ea78ad08c79dbfebbb0150e0f530fb24e9262316f4300ad1c95e06d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023018270bf0c4d86e218105c4636e31d555a08d8faefad639823475b749a93677d479604d07748b2dd625d8893bd67ab66a023100da9603c8251852ca8e6e75937bf2c81c7ebceb87f9f80be0d2f92f59f7257e52cf892f72b0c308fdd91a22e22564026a0302047c435bb50066306402307676cddec1d33df2ae2b8390961ba8154f63ab3296b7d05a43e7ab06336b335f9832d2d6396eb45aabe7a13e44058dcf023034896f259001c647de17aa197cbb7873291d6be1ec5150d6646656cf48ca6a50a1ee2a99390faadfab0471794b7f06b90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e3f20b14437aee8fe141e86466970866a67caed9eeecca48a13eae80d949cee4ad6440de68c1d35c2fdc09f3cccb3a8a023100f94c58792ca1e890dbe733dd1b42fa7ef7fb4f420d8fa2b622c886057e336f29bd0cec1e30e19ca3f9dc2e67ba1042a20302047c435bb50067306502300f7ba9e5067e3b5794f203736b61d020c6f505babb65cd61fe92748880101dce810015b9d641271ae2beb654cc02de9f023100ce64da990ff16c338378580dddde7a4d1d9bd008f082517f7f1b0642636a9f6d2a53cbd1de617ade2e4b74b95c94cb1f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a51f1213fc82b18a5d8da9cccd96edbfe704882bff0c6d0f6d058caa5ae8c2d09fe0e36ed80f06b66adb3cdce7a26c140231008f3212232c6370a533180cceac08109d39baafef280ea961f5057f63cadfac6262745c100014b25af1b86d0d8ac965f20302047c435bb500663064023038ab68afb2e06be62f9c7bfe08def3f5961ca4a3c430c99cc10e67e21feab0b994afbb22d563910795131ca3dff2eb7f02304c04de02b68b160b8812e20e7654720d64024ccef2e28982dfeff96ab08230a87937822add495a58349555b29ee4b38b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100acccdb94222a7a89f601e4f7d0df4d51d532c1f93f8e60c8b7b0009e1ccac76b8cb733a8a158f2b96e1e6555b7d18cb8023100f693f140ded7c30d56a702ccfa8dc3f4baf4e1c2cac1d042cbdda057ecd58e8970389d88003ccc9d8ed087b9c4b057190302047c435bb50066306402302461979d207322471c1eed9ae8df5fcd52d46e0c4d0cc59484a8573df54d256a72aaf613dfa77997527b3390c80f04010230152f0d1f942581feed4f2c6056a60f685cfceae7f0c73ca39ea0c28dd7f5ba730153ef9d0094d9af98f3cc0dcc580d880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100affe4c7f266582d8c534c2ca4ce042dec3a226fd3c4a357a6b142b4c4e6ac85cce52744adae67211159d7507ae8d0e15023100f7dd8b11a5a07b28168e7b66167d30ca42246586282a579aacf349f32e9be6f3ee9d6f673c56e00fec0c5890ae655b9b0302047c435bb50067306502302522ca37aff1b11a92cc7a40786794ac5fb2e21135ed894267ba892c2b33e1d8068f77d9f4ec48f5038c6f510f7b7174023100d90405781869cf9b03ecb6a37f3738459126789bf9e8d6488ec4812a5a2b654b80d63cb8d129f8870f3f908f5bebb7ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023020833349f960a61295b398adb6a5447507015dea6391f65bd9bfb9cbe0f824e4981c85e63aaf2cf73bd73cfc889848a6023100a34a1c4a28a95c5781247e497f6a8e14494283302d5a8d7be3ef13702febd4c62dc230e0ad223cd4eb0270a837adc9d30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d4dc96ea42c55d5e5d89d1c09cbd263495875d052745253c27a576a64afd85523f7cbbf977da4b840ffcb5c35f539aeb023100ba0be66accef09141aa817a75bad25b4ebf9640951b8118e119d2647d496646efe8acf42450faa4e618d96b3355deac60302047c435bb5006730650230548fd241c7165285ce1a0aa9114c3f8ac7e5c72518aee2cf1cec45c01feed780acc2fe2ab659cd71251eddc6b91bb7800231008756d2ba1b2a209e6b035d76956b846a0bc54b3ef65ae9392e27a2487ada48d78a93650a2dd3be29bd064c698d3301d60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a354213c351455c14f1214b3157691a940e8b8df1a383798b51023f4b365f02c1ebc91471f28d452710aea889b16ce68023100d2a720dbc91790bfe9db7f063687a9aa8e14383fe9164b9e2fa7d0fd648fd5dcc92f53649fbdbd159b2c51ae3d97eef20302047c435bb50068306602310082f012667add278760cd79a49ad85c689eff828cdc59ced19d0a34f0417115e21ff9bc70da8b4af95a6c2a11a3dd94de023100a410c533a1ec4ef6c28a65d4fb9dca9b73c0c9a9482e2076e708d374a132e027290c6be40b9c38eb0fed45acc37a23f00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c86903c2f5a4f46c9df50a7c91dbbdb326b55a948c8f7a205bb6b72999b65362ac26c51326645218550f09eddea02b0b02300e27d88310d0b7a686a460c8b5e8ccfca699c8801ae18f856927e8935673e1b36535b6e0d1715e9809e94e1924839ee40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023069f2e4879aff276c3d05ddc4937e8b80e519842b81e1b11e2bcc98b45c8a2891b202f78ce9874e849a72b254b2d5cb2c0231009dfc7c2b3a51b537a78c19be7cf0bb5dc59cce478e4dd5dfbd6e259f1a23500983d8dcc0de43d63e8386404b9b74ef6e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fa060f566d4ec979e40db7e3667c4b82e9e4b4ca8ba68bb79382d2a672f007cc689822210139d8d0f4dcdab5f90b1ada0231009c56de7da7fb5e22f3f3b114edc86f66ac46e133f1dcd87d366f1fae41495eedc4ba856f7ac32259970a792c77474a020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d4a501f529541964a706c6e9dcaa372b3661bbe1be64f6bc6eda7173654ea486413878c8ec815ec36fe4157263a98ad9023100f41ee099f5288f1095b885762cfdb928aa3232d65eaee718a07ab82b9088f5555b9dd3c2edf52a5c602079c1227612580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304cea0b217171e41204542f19272e392eee8fe6decfb6bd8bbc2ebd528e77221ca461812067f713dfbc44cce3a149b57202305008c0bcb6fd81e65b860116e0601d2ce6f27a76cf76c529c638eb108ec38993b941052fcd935261655a2d7991f4a7e40302047c435bb500683066023100e75c6cfd91d1cb078466485be8ff26e413ece1db38cf55cb4dc386907373c8e337cb597a82295edc31c455e66fb5b78d023100989881a53ee232d34a29eb4c60d3e2791f95fbebd5b49c85ccdcf62f93fb798484081bffb2c6307ce0621f359cb91e9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b58e7ad011aae345078bbb6e8238e23258ee4c3b52e195d68e5bc83ea8bb1157446872358416b7af379196dcc62b518a02310096f51801e9d2f9e3bb00c37078428fc1bb137b962f8382594d5f7cfeb1effeee6aab771a3070b4fe7fece67bd385ad0c0302047c435bb500683066023100f97727aa18655392f8acc70418b7147ea144c5ef87760978e2d0f046e7fa5281af39fcd505fa2da6481e773a9a5adbec023100e8653403ff651034ec99ce53ea930c8fd681a54b975e4af9fcb1947b60224f3152acd3f4790ece4dcc373ac4edc75fb50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bc02aa6a65ed170ace760e9474663a027f2bb41a906b884a3e7d938559b21fc0d8a152a8e21e6a0ede01bbe786670c7d023100920c6a24f130e2cb2f34d20c34daaed4ea1561c7930604968c899b74b15822cc78680d2b586fd7a1364c05d6ee88a7eb0302047c435bb500663064023076e882e695a0f039e03faa736c9f00b90883ce81981acfa148f30f3cac2a0cf9c7cc5506c44fbfb759eb44df831d2bd20230120d0bc130a655d823c02a18420793b9cb0e3eb8676f61dcec529ec7bfc9a92ad9cc14212e36f74219e1db25ad5740ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306323cb397127ee04f23afa3e93121bd237367f8915ac609040a3881c2d5efe490ff001781eeefe9eb8ae7940cf134abf02300d6cf2a3c518069d449598ccf513acf26c97cd92a60fd72cc3e9b9c3bde8a8ea1d56d9090250fa9e06a8083a988e836b0302047c435bb500663064023016d1dcc2b1a779d0405b4d9d515a39790690e7781e59fdbf428cfe9db4c86988e3b913134dcca4a19dd3d47a7a1b010a023001cf2e3d2f76c1be4dadf845422af3d9e2b918ea285e8a35ea4d9a1614fd56671cf9e4b8f38de0c63f563ec59509a3240302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100efc031515928b02b934c55d7bc9ac8ceb9d2441c3f11b48d6da44aa869c7de5ee4bb05e3c372b634fd898fd6ab40b1ac02300855b7b16d4b6ef40639726f09998f5f4cc51ad623334f849486113e8d644ffb02a9155047a73f8ab30db49b0cef432c0302047c435bb500683066023100a4e19c924dc7b11966147f06720bf4ce22fbfa02990d1ad03a5698d5891b7f3fb158fd1a1c20777a2036df756f614449023100ebeea6f71ba89fd3496aa7252527206cfdd480f9836e5493614a2106a6af169987c1ac9775855a11ee72b35a8e6b66310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023057e67f1d128e9f1d6697d4e4d11953fc5c6a7a6c67ac563bffd6c77402fd003832be830ead340afcb07d434cb529794a023009b3799985fb86e076e9de3aad68e029b555b70dc1ceac52583559e290cdbcc10e5355d9efdc21d6c79cb57663dc70b40302047c435bb500673065023047cfea9a6fea65191c644048f38729adc475b425f95dc7bc4c7f911286d990a08f41a0a5a39b99690e107b826f557e23023100b16e549292933f03e00aa30b3260334942bfe402cd34f464bb869bb62386ce0e26221630557978e93b9278b4a47fabb90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e8eb847172fb93986e719ef432b3970f98e812aa1c748154a882db010e13454394934ba46cb4ec533c2fb5d338fcf496023100c2a2012ee906bd276edb1037331aee6a0402c359784e31a523a20f3c57e7cc04ed7afd9c55bc95833de7bdc3559283e10302047c435bb5006730650231008f2fac15aaeb5997548bf53c56c1cea55d1c10354522e5de3d0a96173734421c1b803ad20f49563199df581c58a17cea023055e863a1d57a04c0074ff51e724027ac6f6a9161d56b416eb2900a95c361d0d90e6ca0a38d0a99f43dcc4a451a4b91030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304899dab586605da56e899a70f561b2dbcf4bd04ef6e2cb6e6b597bf72b8cfce4e924dba3e8f22ac52de0fdc6a831d5fa02310087ba56308a74404719f93b8437b20dee08bc3085331fbb12588177cbd7853ecbb9794aa75ab6b19a0c0bebdf2c95057a0302047c435bb500673065023100a59191fd359cf8817ed8c32338d555ea333c8b0121106155bd4e06e15570395978724c7de57e10fcca20647f0e2fa4eb0230298b70cfca01d6a9d3bb2198965dad3167001663ab383f54c924f424fd46a3031df6e69054bade83a2fa2b85182fc17b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100af65f657399b0e645dbcb4398948f8dbc3115b5ab9a4a97272891bc8e726ffb43a339ed758966a697f651b71d0202571023100d8d19e6d8d9c678ce172fb2b6cc834be6b883ff66b3baf204269011dbd22f1ee58d940fbcd29c8536f62c2fc73bb497c0302047c435bb500683066023100a2c6db84a0f5d66fe6c38b2dbd9762fd76103f58084b3e07f74b6ec576ca1a7a196ea43807eb986fc423fdad3094b7cb023100d2ba59f1be69729e8e0052f480899ac59b7c53e47ab9ebb307101315f2c24adda6f4bb41369daea65ce774f1362626060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100eb9f4b9b476046287ebdea04668a6343dac44c360c5bfc4773c30a73a5451d8f95ee44b7077cf246c8560da80ef8f6800230021c80a743a39f4ac8d7b6e8423f3f7147df1cbfc5caa45ea3ec6ecffc53405dee0026f0e5f6675b925fcd6b47cd77ad0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310084f7329cdc19808cbcd265913d5d20867a3217da40d25869f1332d5632026d4b0ca210aaff82f90fd01344006f5ed9df0230291c18df2b8e42ce7647d1d217f4f0c9e928502ecaa7e4c9fa3fc980b80793ec5cf3e82aff5d232e71372387b643a0060302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230640a6fa5ca23d1a105e76ef979b4953c5b6e6cb3fd18b5273bda763c4185300bd652d6991322756ba9f109701ff77949023100b001c0e0e9ca5df2438f4f1629792373a35e9e6736a077739e3b11283f98175ed6b4b7e5a6db9edc95457a448e1e89c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100de4e848deb93afe0dd0cd591b580f0c6cd9d904a00f394c611b8f95687de5cc3a3a936be17070db09fd832ab05587c56023100861467cc8214a34522175373ad0c3cafa9efb45c10f7ad4de57f9874c4755f4a6f2330bc98dbd31478ae9401a5f21f830302047c435bb5006730650230158c3f6f9899fcaea4a54e8024691acfdb35c4653e4c475c0d16b5b274d62fcea085c5d0e97bb08009eba7f5c00cf0c8023100bc6cb15aa8ffcfde4c1d5def2cc3c4ffa247d494cb0ec2d5e1beebfa241c3c9237527b54b74264b37e2891bb7149e3400302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023039b13d8605ce2b2195460c5c7aca179b47897800dccb39edef4dcb1129214954a73a95453e9da4268915eaa1ae1c76fb02302d28af98e6c6e2ea71bba8fe06c997de3e449393a6c04d705f52cb2db701699b2681cb2a7b5905c1fd7f5f1f0d5060b90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100945ed49e93f1110f1d13b42018cd5c289eadef3d8afb9946293319896f016c0768b860186e2dd74ab09f6d50225e54e30230359fb7a95e9834f4f47064a3fab237d5126ccd9b1f3252d2b6f18479e6dde607be1cf82e2655d56b08fab3d83e9905840302047c435bb500673065023100ed9a2af7609f4caf673d5b0063033c58e27ae6fffb120cb6905dd69cad04f24674c31c537daa9214f46e11d706b13da60230518805fca384f6b47b93320779815822a79eaae9a75fd585ad6437ee401c49d95443825e10862ffc6ade6f4cf3522e8c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c7d29326b37f19e475d8c2260db226c2cf86979dbe168c0948dbd6c5482f1ae90aaf674b31748a0515797c9e64554b9b02302628d292360291388ae36dcab7a269ce42c4d792b7d78d9a5d62f074468142c5f9813f581dd26247dd86e08a340d27ff0302047c435bb500683066023100fe6dd8d965520717217fc3ff86301f93e7ed4458ea91a6354427f1914a2a42acbf11c9930ab5ad9bb03bbb6f9ad2b6850231009d8f0f5afacc1d282fb8d6181b20aa96c09e55143c961909f76e33f576168bbb386b3e4f67ae9e5e4975c77950ad486f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023057f53639c03bfcda02802aa461c09a67b0394fd845b0003213f77946caaba7e0e8d3e8a330120ad43311a9137bdc40b90230388baff995b3b48f55f8b3075d489538222a8999dc038a709d09c49b9fc74528ca16498175069b28759fab2db3f85d680302047c435bb50067306502304bc158fd353207ffb3ee3271d8171669333ca02d485e3904127fff8b77a926c3118b484e865a72f9b03a1c84226f627f023100f6ce842b164465d24e42f6c1750abbf9046548f067420e573b4eb6a27c56e2c91fe0c8489ae0ebd42490c6af7835042b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304bb3ce148d883c285eb2ce83db115129d797b8b6409c117652f7d5c598bdeffa3c612b1a3ef4cf8882c60f88d18dbf1a0230413cc9e130b140724e28920c82163c6a3bcb263ed7d9ca140b7e496ed00f2a8c3566a6956de4c8e0a2f477d89f56b0670302047c435bb50066306402300abacfdf5340700d827fc983a41fc1d949464ba20847c0a2c3b748e9cd94c14a6793f410e7d688f17ab9a81afa83554602306d4a26514733e734288ec1614ac829117f36c9630854b1590ea0e377900409fa5adb5a47b5f70f4711156d4f1ffefc4e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230550ce62cbb76ab7ad61eb5d68e6e3cdef254da20a0b6f5248475408d85f953b1a887af663fb85abf7de3f86cde77ab0c023100d87cd0d3850e30b05dc441166e0ceecf8e50150e8bd46c1736dfffa72362ffb58e359b2d5ac95ac5e8d49f4511c2d5ed0302047c435bb50067306502305f136bd66f68210e54cac31d7b2a21217b53b9a1f4a83add69635713be0266767a56ac7e23703af280751e03fbcfa87b023100ba6975f7225c94317179715b523c953874e6a7fec9b939df7fe00f6450d1a651dd07e210de07277cdc286a83a4cf93460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300204bc0852a6b5d3f7943dbe41bc140e18f82177c10cf79925be341469f95920c084e5312b91bcf8908326001351a2eb023045a59d4dc36fcfb1a82d37fa4216e92663db2c9e54afeb7f65a1a220b99e1fb53845b42707e691a9179db228cd6dec550302047c435bb500673065023061217916773daa8a8164b7185fcdc7b86f54863c44ae0d739ea743f759354ec4078433428924323e79e2b5b7ef7ea358023100fc6a44e5f9f9ce07f16f305923d1420021b2abc48c2e440d8f3f0fbad4dd9a26fb7a2f333a8d3f8c0ca89481218cdf760302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303e481666328c79bf450611f0a7ff7d1d7af5589b9c5d491e74b1439645c5874c3701c1abf3044b191a74a7f09dbad88d023032724b2f88a968f4d75b32d5eb91ea0aab0c41c723f63f56a13780fc194777bd3edb5f7cd4cba5ed39644d5f3ee7a4260302047c435bb5006730650231009ab19bc98754b5e768b4010d8e9f0cbe4e486e9b3591380801a152310eb0780c91af7ef252e702b2341c37fdd65b357002300a4dea778d004f548aa55803d9036ce04a5db211be7fb818af72e9c99a85fb6ff46262990922a61e7a0be8960cbd51300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f83298ae316ef9d740487eb11899a48791b054ff81f9dd902e02c7dbdd81c953adbf71af319a0eb1063aa3825adfcd56023040318b0a55ee19107d25649cde9b401fd3ed3ca2aa737f5d8490f11ede310e8ae5ba9807cdafdace999c6ca1d403956e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300524312a3e3021504aa931873292c90ee8fe281e3b04186d3fc6c2b3095e12b06dc55bbaa8ae1d95806dfe14c936a7c5023001b9ff80a658c7d1dacec9a595254e7107760ad57233c6190f43eaf2375901cb343d66d60f39e9493e479870fb50fa180302047c435bb500683066023100ccf14c3946933e6285e685cf1b2090ed92a7c6cc7ed03ab35ae7c5df232dba84b7a5ff6b29bb5cdd8bfc943611d62178023100f01f519f2c408b772c837f973256bf03c3666932a8789eb511010ac212f4419bd150c6a5786f30aadf1fe209390928140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cc57dc6972b4012f28ed2bd39039d799f69e3783c094a2427727d7753dc518b4bc23780e6e4289673f1b8d61a0aab47502304370f3f6afad587fb4aa79596ede0a23b70669fe8c911f2be006813b89abcf575333d108299f459c5cb5d4783bcd9b4b0302047c435bb500673065023100c8de1b062d8a7b891d6249b3057bab9540f1024f090cfff6f690d34915bace1dd70adf41c2610e59ada3676c5ddd0196023039c9b7a65b0e66bf25af3515a751b96711b819c0a583978ebaca949b9c2df2f432e011b0eb1f96ac849b9b94e7ca7ebc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dc401b9f07501484c9e3588141f13be74681fef6baf741753a2dda5ddc386c9ccc199aee94bef551d139b3057989fc9502306c210bd0a78664bd1fa1037f1ad7a33358a8283e3d87acf654441afe4542afd1d4d71ca44e28286d664b231be4a004000302047c435bb500683066023100ec878c69ef69048b79718125fdf35f5fdb6a299f1342b97e3e39579a3bb5a5d5f1d3f05a0d8949d97d8da3cd571a73b902310088546322bf38e2abb121903e6f0469909924119f17c147c899876071dd36ac100d931f529172482129063fd47570ef170302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023004eb9dc3e885d81e9f10bc75b212ff91d1cadd199faccd12dcf83c1cd24ef29d802dbc3e026a8157d05f53ab8d06e2a0023100f8f95d0310c8951e6b0b955fcac9f90bc4ecf0b8cb156bc7615a23f625fd3220806155cee5370752332343a3edb536f10302047c435bb50066306402300fb302ff6764fe1da3ed005933f38f80decf7addfc0133618b28bdb88517c0179d34c79a37c911f8459e7d246dd055bb02302631d047a6f94b515f88c4b80b127867a6ef84293a9ef5e291a6562ecb81e7f4bc47946d0b2f276370fead64fc216a300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230303343aa40d5e6f4e8ace0a3d88b051371490948be2489f59f29c95582878f810f8e2f4c1d8e9bacf04df8a2418f18b902306f4fe8854e6b02a21b3da6a48f41aee3c05986abf36f3df8a209c8cbeda905ec5a7ea5ca0a64ed2bb860cefdb4832ca80302047c435bb500673065023100f3f3b132b556c5611e46b7ab9c0f993c9cb76bf7b0faf8e6a6ce2138c8804d112ba2812b7bc5ee548edc0ff3a6eb1e0f02303f7a62a54515212105d427fe0250145fc382af2f2b7300d8357c39a4083aaff5a23b003e79a1679a1ee5914a9ae94b450302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305c75b631c29eabe1fd539332f97d3622dec883f58c73b5ef8b8b8c1ef44b7733d8a9c66878ac4359f605696db7af2ff002305624bccfdc44ea55ef06d0a6323df6ab1b2afc6c51178ce5ee4c6ef47405605ccf33495c1bfdbf41813f43777cb299f40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306fd8c22a760a2ab403339f147bd61e59a9b38f77c2ce25d0f86682f46d1995562cde5505529b4327baee325b4bec3f4d023100df4db977f66cd045e647aef6d27953b5fcffda38f25dae0bafe5ce8401f76f335d75c8b792f55d1ccf379496c1fdafd00302047c435bb5006830660231009949adc9179f6a16664fb89f97b69ef12815a345b7963aeabc06b3b0c208362235e52d3ff60afbfd6b26ab8c13dd138702310095baa3a68f6a63bde5bf446db23beeb953a89f3b622b9ee685a0fe0d6e0edcea0157c48ad6bd13c401afabb81c4b47910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a36e04b90c2b8b4cf25eeba66147a6b4190b6dda609bc619dd78de53db4dd2268b42f6966e40c96bd00a903601f45e6f02305ead72e3a393e7ce587d1b68bbb5781c60049b2c08913c2fa1a861e2665beb50beafbc02eac9580d1e62e57300c945490302047c435bb500683066023100f40a9f1e6a50b49d9aaf0fd396b05c44c648a1baae0611c179b66bf849fe6f59ede780e3f1d23a4978aa2b3255ae205c023100a228431a805d606d855cd0cfba6fb1382c83987256d161ed00ca5905bf9f13145a7b43f40ecbc1ca16936d4b50b9e81e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a3b2de0f6ed404483a7ecedf29df84a575f9551f4b19570fcfab0d2af41beb3a795f11856e7376812341d894bbed209c023040b6cbf7110c9044b7793427f6ff9eaa8024d2e1b9c37a97a0b0d855bd4e8973451ce7b50ad6762cc23a28b2b0980c420302047c435bb500683066023100e0ef07141e0377b77a8402590d833253a3b8fccef367574f740bb7e1a0662bc8b12a53f03cb8d7a3bc923354aaa006c302310096add7832eb41bb48dd44598b2ee2704f0eae0341e38ca040a76047e96f3579d142fff8fa85375f9ddad31e8aa0d29360302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023027cc9f262e794481c82a9231feefc243ef0473634c006d7b9a7898b9680c726e42b3ac71ae320e1c93a3da7acc849d9e023100967e85d2b7472d0b7991d127d39a40223c619ef1fbee4273f5bc85779395f4f71de88967b0aab6916a25bc45a71d7c830302047c435bb500673065023100f3d02e487a35bfe3da8573b6aba79391cd674da4c65d93c0d0e9bb0fa6f0f3b13be3885d6e20e00d2d00bc08a474c12b023056f47bb025e5cc32ba5e8f3ee09bb50d45c6b9c51527103a4aab61b9cf66b2a94373551541cce65fd7febe897450faf30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023062eec0fed59ddc1612fabd8fe974740b0472aac62bf34b4c63d977ed593bbd434c065f13cd3936f87fbfee452a4cbd6202305fcb85423f6699dd401a68e8f1f3d17f448cd8818df5bb410a37ca769c6c78aa7841f074523362e0403783df9318d1ba0302047c435bb500663064023003863209053b6ee911253a359d44213c3ffc2edb8a029c74956ae04399c8b34b6f46f40fd71141f4566d15ac0bbb060c02303df55d6e574bdbd4bccd7b209322fb619e8bc037a9913ba53dbb38a617eaede8674fca25086adf9bada4e44bdc8b2d050302047c435bb5006730650230263719d4ba477df11c684ec20d3a9ae61764033c93cd25f2a35c2a68c4a7f007f3af561f9ec754ef6309d7281338fffb023100d2feb9c1968ed629870bf702ed87ee61c64332c6e748ee7e21ef4d2be1712f6bb6af7560d7699f0535a27e2e64d50e5a0302047c435bb50067306502301a9fba58ea5f5f65bf9a4ec4a95cd096c0121bb97fa5190c0da9b137ab40c2837987c0dcc4fcbc39eb015031520e04a6023100d12a9442d7d3e0b38fc48cfc44ed5165e40ca23a3af56eda06fb29d71f8fd608570f780cfc2b3d56eb2b39cb0e60a1eb0302047c435bb50066306402305805e367efadaf282b879443fe1e0caa5d6efa068798094e6a02487bc92fd08aecdd6bf96777bfb71be48a3e8430014f023042eaf442ecdfe7c99fe901bf00832be9d57c84844becee8d1851a10f798b7caa138def9171be9fc9816c113b0bb27a1f0302047c435bb500673065023100a2dceadb34a5df58ea98d9131175a4662982a9784011c051c83f24df97cab0fb983faf09ce27784de1ee0f9fdb6f893c02304c2bd444935e6fee87fdcd0446639a7838f03177b5d795e8b81d9aab01f4e8d4c41e94481d9caddfdca704f0d5c1b5fb0302047c435bb500673065023001328125e332fd3d7ae1477a4428cd66ba64ed5dc3f64fcad2f66db04094c4e144bdc460b30cb3e89434efa567706e49023100e76781efb0bd139bb473e879dfaf8805d9c3f2a383233863178c04a9aa20be4a69ab16901f85e24d838051e3642a165d0302047c435bb500673065023100de69490ae39bb14b1226af66b5f583a744c8553e5d992b98da29c2185bad9622385391c204794572ad573d61facef5b102307309c6aa47d584b3e1ccb83e6f1cbd44da3c1993ae15c0f84065b2e590ffb8c16d6ce6e46da7111db762c818d8d681780302047c435bb50066306402304cefc87c966ddfc35ab508a116cceacd2b13e5da7d25e900edfa381af10e7fa73edcf0021c8fb069b5f7dd3ea208211302305a7d54684922079d27e64156f6ae50a33b2b80ef89a4293c6bf599f779cd91c9ad9e6585e54db99fe380d7e0ee7745ba0302047c435bb500673065023100f0f09313b67ecc0b934e44f9000524e2f53a1bd504319f4d796b49b1edf37cc10125ea53fdf294702be686a73d71da1602303939da21735549679d33d8b0496cd24f0a40aeee9b989c5748b933ba56b4705924020e07f8e78ff582841b097e8708ae0302047c435bb500683066023100c6224d3a97028b2947e80ddb7d9787d78edb1253110113003423f0dd54b7c0b8d84a931c49a547300bd7e18082897e6c0231009af00ca4e07f6f70aeaf72b7a8c08fcf1cec25b1316a67fa56c9d0282c914e4c93ae74259b7d28e056331643147ca7f00302047c435bb50066306402306d39d38047cb77a3e9f8a60a593f75ec61ff4c8de2b4b561a1d1670915a7f91355f59a89ba9082190d5448a5acc7f421023031a3fba8f2e0671fd60fa20ee7ea6b32463370b261416cf13a90df8575ae65a7c85cb4a77798dbd79830f19a86227c9d0302047c435bb500673065023100a432cdce6ba6afaa9fdee83fb6a5dabdfbef412aee7d810134a376da2df6f5e0299e11520686f8df1016fb97955a4518023073d078d5e1e8eecd958cd2dd2985b4ca64c13ba357f87198139e6b6cc59cef994e4cf85814d71d0143cd8c5d0f1849ff0302047c435bb50066306402304db33cf67535e3161eea55749f1c2de7be423b3202c8d94858f3c1a32dad995894534bc9872e25c7f190d324e84734f002300c37cf6bada232f7c1104456a018ed840dbb0952472938a8eb9190e183c37fe1594111e3d7c88b59ba330fc293b0dc4e0302047c435bb50067306502305c06fd2b6da912c2fa111e1d49c7127e7509d8114b5fef2f3c9f12ab2fc325153b244f086f161fb0c5e69855d85484e8023100ae8bab9fa549e6e5877e4b71adc3256292d410c594cbc7f714a31aa99830a9d0fc8d9523e0a6fb9518341163b920c53d0302047c435bb50066306402303777717486c1bc28cc92ab6f79dd470cb281723c87ba9fb46d7955430c65c0c2ce35cf43d3cd1baad445de136a471f2d02301cfdecdaaf59d55811ceeca51073f90dd3aff1548f3895d2f138e63088cbcf256e4671f99e1768b745ba597c54e4cf840302047c435bb50066306402307e7cf57b7348aaef13a330ba1b02dd1734ab93fb5c14bca60f01256a8db1054efedb64e8c3ee9bdbebe61a4b42a2b7fd023047671459e635353f737b38cbad584e5aa50fa466e897ed1b9d20f80a57cb1a2393bc4f7e9f42af3894da130c4fc3c9530302047c435bb50067306502301bceb08e2d0d9a6fcb26e50f2e67811d8cfe44b91435f0d3318dd59eabd712f86d499a8342f7e6475a5dbc096b5355580231009e4229a8279da7affd2fd3192b55709ab5fd0fd55c60107de474a8aa14eabe269266bd6d13833d1dfd33f11015f1b8880302047c435bb500683066023100b7dafde06617843da5a62d354adfd0c92ab8b964ca9cee4374a21b7757841651f8982949e8a0812f79404e49440699ee0231008b7ba59514bc95937322418131ea891cee5958c5ca79166decdf8a64b9328d1785dac4f4e967347eb01acb4faf7ebd0c0302047c435bb50067306502310093653ab4af7fe07a67451c5abcbe6335f444719457bf88ffd1316f630272edbe61dd2c12ffffcf931bad973f7eabebb30230614ff12a82662e108be6f2b820d520b824d7dd9d677726e0200252286b2e786b2f5bbafd64d8973d18d0d4ae96124c360302047c435bb500683066023100e9f6d8407afefef31a9ff3bf82e3cde00abef292e4e082ef62788941324a03dba35724face43171f3286df235c24fc24023100db7422e503b8a655b1655a9a052b56897b4dbd7aec7f07e361f180bda873393193a118713f3c4d507933d529e2afe7610302047c435bb50067306502310088631a4a6ba3df775067dbcccadca02c9c27d63d0469e25729e488e20db60e902b3ba0ff916df8c55c99cb47c7fe451102304ed21f343ce44110d76f7174ee296574f1f039dc8de6b46eb1680cd1027f40a8d5132706b80be44130206bd93bc87a170302047c435bb500673065023100b6d01bfedb5743117f1c8168f7fb66a725b8bff0266dd46c1384d3049e42cfba6280d86293bb4d5ee353e94e3320759f02301bddc571466f1d76d8ec1061ee80245332bbdb525105be9f9825053c66c5290fc1a36158296f431de08216710efe38700302047c435bb500683066023100a12aba12c23b12d73f9114f6ecd630cde4dcd2de3d36e94f76fe3b1dc1d589016e539ad8eaa70a232e93be9b24eba6a3023100951827f9757dcd7c5fedbc80be10bdd93e11bb87f3329a0e90fcf1775082cdee828d19cd3d92f49d2f6a45ebc452e6d30302047c435bb50067306502300badeb3a5c7bdd4bea742c9d44083226c5f474306075853fe6764605ef89cc7fd3f1428e6c4fc69aeb378ce64ebd49e7023100cd63ab4cdf5888a33186377f71f0c701353d06be89f6687122b9f3f62a400da3cc13abd3bfa55c20103e57c54f8f4cca0302047c435bb500673065023100b25733bc32c50df42356c323a0b52f3bf19b68bac098b63e3fdea3abcdaf0324f3b40a58101ed15a82a28298b97438f6023050f75129c26c77bb15fa9d96d2d273d7dd6aa0bbc5c62fd52dee41350076d6e36fce08f8f3b0e41c5942018b29016fa40302047c435bb5006730650230213676135a97557e109bd9e63e428c295143b24941ea7c2415f786808c1ba0cbac589759faf650df7c030a6fada22f7e0231009fec484ab4386ebd53fd63803681bbd89080e2a4cd3f6766e20dfb57288ffe3b914dd5d12dccfbe3a6b8b36d59f1aeb10302047c435bb5006830660231008515e7b5a14c9d680f273e8aacd5b0f267033070f4fd40026cbd92e16eec568b938dba00493025965a8b17c8251192cf023100b062bd40216936fb0450d647cf71d902e6ffa4880bf821126672d6514fa3b5b44dcf12fa25f534ba98d78df3fd37bb2d0302047c435bb5006830660231009074594331c00586220e3cecbb3c8d126e9e62bc0a277a01c472d5dcb27dcfb94ffd8c618e7718c986b1987ca8b1c9330231008233e9326a952e37ae3aed8b6a9374f26fff43556fd48bd06109badab1ffbb3bc1c01fa343c88e8b0739a0706ece464d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023025adff03b655c948bd90a915b1308aef0eb6ccf4e4e8522abd09df02a3c394d3aa0d7a8659e740cfe9a43778e31c13cf02306ee8c5a328059980a96ece9ce892f3f6d0c3e162ab9f46b87e0f8c94285f501f295b53f8578b8897a021df66083a1d520302047c435bb500683066023100cd25eaf4a8da6e6670f51c675543104753eb6011490bd9dad238f308647f3af7362fdf5a892af11f7b46eda69b0753ca0231008fa062c52d579e314114a79d95dd80fc15e4ad8bffd88d166d06a1e28e611ea3cf8f48bdd82a1de392f6b698273e496b0302047c435bb500673065023100a52c331957db5a7bcf37f59897335630c0f516661416a89e94a5971d29cb9a6ad40e8eb206fc4781a17d26e63f4ef3b30230410526bf5c421fe29ca019b41ae4cad4ae21f37258968501435eeb44c7e8af91a5334092e9d205500316851fcc7e8b980302047c435bb50066306402301503b873b515b6e3d5dc2c22cf8211c06d8860b7c1a1c458c387199a201f37ca38772c7025a62d125ce458a70e091bc30230705fd9fe1823f0399c160f3318cc57b04fba46bccf356fe28c9c9051d6f2c5df18c9c522deff91d649666008a1ef4e8d0302047c435bb50066306402304229600438e0ffa804094d81f799274dbe529b91fa0425fe6ccba09969471a47f88eb06519eac6fc2fb57745fd0fb31b023012c0b8ef2a721119a60c95e5ecf0a7494094f6301d1c2d69a3c6e6a9e298c0f09d52d63509de5d29c166b683269de8170302047c435bb50067306502310091713a98b8f26ad350f08b9148915328c6875b160f6f84e632fae53005cdefda33db35113fbbf4c7fa7cebfc69acf8910230774e499d014f7d0e10b223b66ab485f4a9bc9bfca723881b6be1f584218130b08f8865ae6d16ac4cf284a3dfdcbe6ec20302047c435bb500683066023100d7fce8437a5612b4394ee7b36bc7fadc571eb38c1b1d5b25767be724f90474cae2f51b6aabab21c4bb6cf10fc16d7bcb0231009f3a3ffccd64608b57bf5d98dfd3e0ad54355e92c757925f385b50371d254e068aa167c2616897e06fba417f5ef723990302047c435bb500673065023100e0d7e22b7c208fc89398072dfebd20e05662a146f4bf583f43d227aea87b62778b32d5c854b59a86603af55bb79da86b0230020a791b374154f23ba3fae6d4041d6e4bf96fa804db691ecb64f63f4c33e0cf54cd727ba00599ce9b4d5a573c0146b10302047c435bb5006730650230372d3ad5800f3f45fc70387d70278e13167409ae19f7bb1c12a90754165e60747c03d4b108a107a0dc9b748a0541ac910231009e57f6d4e88cc6dba4a8382586a0581221636e268c73edcc4aa5834b2114721cac46527268b4014a89b40960721cdfe00302047c435bb500673065023100e767f5da9e99df2b626a188c20393654f46b1a90181c809d6ed53b406d9c7ede374ef71348149d55241c164ade052bf602302695874ff174314e11ec3f1b9e6113ff7c4322b4635c6ae850c7c0882230143938d013a437fad835dc078f5e10b372a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fa97eda3102d3c75b2bfc8d50b05565b8e58ef619f07db3aff26ad6ee5d761dbb851c7e8cbacc7e742824a95080575390230703c77f7c4ef78648a8fd42cd69547aaf3e554cab629e8690cc4c2bf6e0ce101d5e16a18478671cd69e181fa581991360302047c435bb5006730650231009e320edbecaca9a8935045adc26774f478f5ac23881b4c1b773b06a2a08c8ea2e21b382f77cabba8004afa2045bb885a02302f07c8d0caf9c40d1dff618659eff66358e10f9c84edfdc08036ad1a5f5b865e93a19b7b2cf612716b808690377f43820302047c435bb50066306402301b222365afaef6a5c2786b07a28c9e9dc4c8c7824ff486f5fd9e44b78c52fd64ef338ebd29a0e6fc12a7940c9d6189e3023050ad935c8e9380b6cee0d157643a1f0d9cf611c16599f23fd2a7b692b54789c8a4d76082ee12d460ee85df97e38b45870302047c435bb5006730650231008e9145eb1752cd2b7f4a9f2f4a772b39e8a43a056c3469700c17c056e789140e7cd5f0f2214c9d871d043cad3013c431023071dbf485b137a77241b1dddb4defd497a39bbf5462648bbaabc5982233f0df054688053fd07dcc731f4b9c34f53f3ce70302047c435bb500683066023100a7df8ee975d834369c1ff95d4bb8f41af5ace98202f1404f6cc19185453be7faa95cc4e9300d30e2d177ed3be5ded7cc023100a4d8cd71818dddbbcf832a229175b6e3828152af2383cb498cfdfc6362f11849351752c1a5bcf9ab184e40d3c834cd900302047c435bb500683066023100c6b78cf7b81fb0f228832f809e1b9955332e6c43891b6afed534f8bf0a74ca8a698f0c6897e93c51e375cd59cf44858a02310084653f390f4bf7487babc0ea6077ee5e3b294ab47544a4315115e8f65bf40782eb4f789eedde5cd57afe0b80d67e06350302047c435bb500683066023100b95ff94102efd7721d7f970d83e482f3662914a8b144f0377e2c5107ec289e68f008602a7189ba5c00791f4190dc5245023100fefba1bba5745958ff962ab22c267516f78f684b2cd858d07cd66e741043154e13301b5fc9cb28ee8342fe2c3f4783980302047c435bb5006730650231008c65bea9b49df90b6daab202864a00856611869e4de66fd74c2153daacc88ec1222e7a06642d8ae26f91e4df637387b50230387ae7e2ad9fe21967d8f23d41e0e22a6a4c788a31e6f7b074c8be1a996f02783d84deb9e34cb81dc9bd28b6f7a496310302047c435bb500683066023100908f331b32f3225d2a1ceeb9c3da29e6fd9651dd3831ec872ab96b364e4b1cd9ebbb3c3ba892c1f6b4f564994505ab0e023100e6e2e8e320eee2e9fe2c104518d8aee9d0e716207a060b56728cad75046e445f2fe4d7471e959e1ac6b607922f4d98e60302047c435bb500663064023064855265932e7f32d489f905da7ea76861d6698bfdb1ca525b984f937fce658355141b1edb4d064c1fc51f305e4f87e202304481c5befc783fe1594a5160ce27b031c79163d1d9593fa4a82080bb2363d884ff6aa674d920d9c71f615180e99898a70302047c435bb5006630640230402e5f0e2c1ed491d468a1bc925a0d6dece3347007145d369eddfafce4da7c9dbc8d1c5fb1ae81049fb6413a4f7502a10230673e3567657ea0c2e0143c569b525d4d1855241363f76447d2320919d76837fec96c7c2b254362831d659bfa9113121b0302047c435bb50067306502304db161383199af8a595facdb6250ed29d525f664d51c099c6b223d1d86792c250286321b7adc1a29d2f20b061956ad8e02310080614647c4aae1d71821605e012e6fe6b4e7a911ffa077ddfcc6dfe1ee76dd359e40ac2c9aaaec800d67bb49d01fc3fa0302047c435bb5006830660231008540ce47bc221d31e79bdaf60633f3ac1181f53b37886ddd2b4581693a905ca8770524f7fd7e048de3691c0f36f98b68023100be41f93abce583fd33adcdff2e5b237b16e98b2e186b9169ca53073076ca01c2f030d8913d28667112aac7871a5067110302047c435bb50067306502302a3ec242c7cb5ff8f431f37489b836bca924f460a1250850cd116c9909b1482a7168b17a5451b022a22314e595f5345a023100885ec3e74bfaa9351dc495c6ffd224bc2502aab25e73af5c894e0230ed28a7499c98f5e98f074d655f33835d0e70d2950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310082e258a67e4254553199f03647627a7a6d47a8714e15acd977c1e6f768f550c88c8647e4ccb4c087edb5db8cb81a61aa023053efaeb9e8a7902a0c20200bc4ba1fb24c73949c7f9cade4ee7dafe22af3e805565616d924d6042744b5097b94baa7d60302047c435bb500673065023100eceebaf1d74b0b2b81cb193e83c00e27032c1018665687d5d7fe9ccf3d52ca618c584868d7e139cf7c6869ca66ba05550230142511908a32b898113adfe5bd164f9a552ba952a638a8bd789ad2d4c2d88b24cebe284f13c699b2f24ad437703550eb0302047c435bb50067306502301b79e8425017f2332082c7f0a241e3fab4297ba1af5cbf797cb7e7453184c5c65ea94a6361092f327624c702f764c2b7023100fb5776f3abe44d67dae7a1db9482bebfef7aa838ffe3b9b979f0e7ef63f5c94a23f00a7709c3e7739431723e6818a1250302047c435bb50067306502310093acb0a301908bcc2a75b265c1404d27fc87fb2b745c10a38f96ee64cd1d2f6581a94b29206b28fedbbb58c1864ebd2b02306f8a828dd0239142d904dc743814372f043b4af5bbea0175caf26bae39ed29cda4db5dde674a9de25b2e839017e283d80302047c435bb500673065023100c2cd13afe2492bf0823f9b34aeef6ede0237e98421a75f13570e781d3d72ec945f1b205c81433fda2e424d2a57c0ff9f02304727e938772499b155fe0ca9c4b1cabf87c2c79ced4032426943cf8fb1ab7e560788307c57545f426c60b6abd1c855a10302047c435bb500683066023100b2bbd3f3380b0f8fc07fc5efcf102ccee592bf6c76f45a21eeea2e853d614df55922ce11af88bc48c5a684091dbfa1f7023100c6789954fd3001bfcf48c37f596e5a2608b79cb57feb2e4618373bcc9b8c346c2619725dfcc1b58c5359a927e1b15c0b0302047c435bb500673065023100a006b17b7dae52d624a711bd071de3af41a52b854c766854ad2ce92faf831372e4ded0d6e66f8c91afdee629d15feba302307b6dd139b6df5c0bf89dd921318299f336015824427465423647abee195006315fe87231d86683135b8cc576241e09c90302047c435bb50066306402306e52feabe86401d142133c4205f9561796fe03026a09e766f0607ba392eded2a0fe8dcbdecda4c22c270ade20c6e9a3a02306b1b3a20f981413cdafa99153ed878e82aa93c7be3ee1c0c50da1660f7befc99eb961742837b8516673623782d6ec0360302047c435bb50067306502305fdea72c4650ff8cde5fa1a8f799c0f03ce776f71a9d138ae1da208dc21a63753e761a9f48bb09abd684bde7107d0ce602310094c755d17f2a33253f78922ed14183027f75518dba246e8dab5cc74038e1987db27c95f3671639c8fa0a201e4daf6a9d0302047c435bb500663064023057c319428394daf23ed963a0d5555f9984d7bbdc1e6525287da439f5dc0dcc57f0f7c7c0d152a8b2dc5600a9c64938aa0230573d919be020493473b7db331dc4d9a555fc4e1a207185dd1b14e46c256d49aa827b57ee398bb88570e07207a3cb42020302047c435bb500683066023100ea05aa06fbe3d43b028bd8ff3c73b2ffb0d26e93eda9b727a825de5f79badf2cb3cb3ce479b1da6cdb9148752b8c5fad023100f7924ad548c8f3fd01a08aa01b148cee2ab28130241ae3747873e7e44773149284794a9b87faa235204fee7db041b95a0302047c435bb500673065023100df1a851319d3496a1f5123099b56fc130b2fb33588f3d7f0ad94dce5e976763cf1e6237c487880a758a3a45b9178e9c90230060a2a9201a02fde06e51e32a5f39204fd4dfbf71c2bab3bb32e967c6cd7790b10fe0dbfe3f007517696c7aa5532a1780302047c435bb500663064023008f4ba16e8b21f579859d9ce2f3dcc76adec592e2ee96da651ddec8515db27fde78765b29c8ee547b98bb596ef59262902306bb0b196545e256ba00ea195a099c05437176855b078dc3e8d851c7fc8879b96431ea2ee6e509b84065b05255636c5020302047c435bb500663064023040853e904688ab7d02a8817429d29f5273add00321195d2669ff079424094ff808809eb4472e6c1453deddabb8e2f5a30230582a295eb4e5d0ad2d3040e0e465ee9a3f42f67c21b64d5b6bbbd60993a5b9bd96c153bfa816bb7f0138da2447f410790302047c435bb500673065023100d80c3136acec04cc5e25682f544318d9c5375db6c5c75fd56499a2ea126acd3e3dbd995f9fa65ac98a283c01bbdfdc2402306e07a17bcc2b445a88877d45155e7bcd434febcf6bc49eccc18c1d39160e9394e60b477625678d4ce80fcf092bb9d0290302047c435bb500683066023100948d240efb7f885ff8cbce928e7ab7fa64c8d014f8449751b0ca324b3470c45491f3a06f4e987f0aa2eba0140998bff2023100caf6704ef2893b98218d17818fb3104fda33eefbbc762f127479fe807a16ca1e7f9ac6d461092f59ffeeeb4212f4c7e20302047c435bb500673065023100d1f122d8eea20745cc7299e802e252894bb0504e8555a8c7144e25ea463ae14204c85860539c28ac83390baf6231449d023064064e461357dcba477994830ca81b0f8a3d03e079726037598164a9e84c3041b58f3b68d490b4f7594a64fc51bf35950302047c435bb50067306502303652c157b3a71726a0e800395a87343845dc4300b0f990c6ca35942de53ac432ce5e860ed32f4adb19146819264910ae023100b1bf66a841d180af48a5ddf6d12efd1c2438090c0125b457b51ad4f85a43a87695d100a79c13aee6c1cbf8bacc0df74e0302047c435bb500683066023100b1de21a48d6489fbe4a64efad452e270f69f5791521723c9324526159ea3091a889578698ad078f704dd88abbddd87c9023100c7a93b3f30082ebcdf9e25f3a03b197f0fd7070fec812d8895378a7ba97fb65b125adce4431f92ec571d08e774b6e22d0302047c435bb50067306502310080e7a44387d8fc8cac93c4f45d5bab43c1c88ea8772c02eb7263b3086f5b9c86616368e71b1e83a84d4542be6da9c85a0230220abcf8abb0580771498a4c3a0a8135e0474184f63681a14e9d1a1dba2fecd4af06f4151d4f59dd37e8068e2b6bd35b0302047c435bb50068306602310084b4a6134dbfb3025e36211ef81fe235d1c8ccc93a71fe72f3a67af4a2a8cc580ca7658df1b7fd3946babd8379afe8eb0231008a55716280fe7010006d0b516f8c79f7ab8fc9a72dd2ff7e6ed28fdaba021558ca1dbb444f4c075d5c2ddf291dcb76f00302047c435bb5006630640230031115f9ea9d5574083df3c6acb3b315ff55f1102922c341b067c93430f79f959edd1d7c7372b2ef0975cc412dcf5dc7023049f2d914bff8aa61b50e15036db0518ca39e592715fbfdb88824ad873228984d6f5ad92e15799fd39ae00f34dee5c41d0302047c435bb5006730650230692632dedae60f8e30b3156e998bfbfe18592abd89b32630a066664939ae59f546b2e1f8ede71fd3342ec891877f87cd023100890c9d780af19335dd42010a616fba7bc4f6cc0763e06c3f4dbe7f61acf6513bbd833e1e586e1c355690dac5e2b612900302047c435bb500663064023024fcb809d1466914b891143f0c6f37b88e86b1b18f73a2b1081b5a51b5cb685deb219adac440b697a78f0ad958d1a76f0230625a6d39ce41445b6117168411d23c6622fefefb6bec20aeadf527316b21779294c41f1b74e036907e638b534fc4c24d0302047c435bb50067306502300cfce51a8c0d59c87142d1c84ee850208440453bc608f15d364943d2e684297124804592fc40ac0f5bcf5a631df5065e023100979279afb4817663664af756b9a245e8d43cb28810c9902e5542dfda9501041635c170297b1589f314121eb29da3871e0302047c435bb5006730650230159b58f1e59bc7f24a37a90e7aedd63ee3d76196bbe79aa4b1e4db5bdcfd37845df263e8ef019b2f1d7c94817c3a52ef023100e6ae9431e53bbf371ef55601a134844d970f0e6d48e8af20de0460fba4160a7a17668d0aa8899f97e77698078137b9730302047c435bb500673065023100e4cb66371bf767ba1ecffbe3a50b179a953a406fd3320c1f896e3a5fab699dfa579e6878a5f869682a17d348cabde95b0230388154a9fa9392616469148d9d6a49567b22a3c708d47c5a0ed176be10781d3f007454b77e8e941e798e6b28e977aab00302047c435bb500683066023100a30f930b3ebf8579ec6489b1fa240ccda9ce9d6f90b42c570b4c97c2d8eecc6991f64da7e3981c0bd31f34646669304a023100b5cd1bb2022986bb19292ca3e5f4028db9e6462c74bcd499842e326f255064466d05f930fbd6b189a057ead3af3b8bb50302047c435bb5006630640230617003ae8e4f6a000f302eeec2d1bb55e731c8dc0d17fe2cec3d5bb97b94454e16cdd74fa916a003942599a5021cc9ce023045508ac41a74070a758b3ec4c977bb8ab0167728ec821346fafc5298a39a4d43d0ee5b26484ad608c955d5f757e41a450302047c435bb50068306602310096a5446ab3cb7ae757d61436854464d2ba272c8693807b3ba22815e534d48dfa8a7aabaa2962c6f897f7618b6d44561902310088b165fce5b5b916e032d2206cb6255d32e6146261d8b4581bab8abe541f5916493e56d623d6db4994e80c3002e2b0cb0302047c435bb5006730650230262849c7bdd82c6af284aaabcc1f11a53e7b55536b72c314a4d77ee4484a6155b0bbe7bf0f6e4767a4083238fa04e348023100c85f960cda56fcfb53835c346602fe173e7ad66cf6123b31d68117e60061ad2bc7d3feac28446f7dd4c55c69116e064e0302047c435bb500673065023013119fb4b82ef50bd05459005f2ff8d90a4c6fdfb515b3202ffbbaca9a502e4b32313507215aa1518b58a9e4dbd6915e023100f0627c79d53091a6db2ca5ba513ccdf61e01752c33417a51405778de531afc1e39a0b5c1cfd86a545c2af973f50739250302047c435bb5006730650230222d83aa08670c84205c1fcb6deca35d68bc0c4e4f9271a0f216e0f7d091b5c634054893cd43e2bd6161d0f441dfb118023100f3de2bf490a0dd7cf29f28938b007622e4f5cdf879e67dd35f1cbe33c657162b598122102f442357049f4999a5165c300302047c435bb500663064023033bf362c3ae284de07c8a93781d2df22b44e65652c982c4907739a67843dec8a18898c18be1e08258d9e5d594857906f023049c3fe95f4dd5977f1d9dd6a792a43f7fd66c522e9f92a782ad4b9fb8d1ec62d29b9b1fc46d5d96daea441a79129b1c60302047c435bb500683066023100f2a1de8291b71e0d89fbb07316525138e0b49e2edf600f0867f2c34ef2f40fcbfc5efbb1ee903c41707d796b4475d80b023100c6610d48e1e33c686a4584f7a2be7adb99147cfaba56ecbed47eedae034471db6b604412c8aa917f87760d139d9350430302047c435bb5006630640230223280bced9205d0648eda05d1c5ccfa74f3346eb27428ce65a439ff02dfac95b383c589c9b7ef525788e087efbc6bf402304e12dc0695186dc01f12d408ec3b0e75662a9f38d3fc6a57acb8079a4c2ab1894d1f7695e6b04a77b03dd83cad56e22d0302047c435bb500673065023100f1cc1810de81e6c76ed6ea0501ae5336e388e7022b88db7fe5144ea347daf9f907e1ef8475293e0ad7cd10b07e02f74b02302655666ed5798d380e294721bb7fb60e51f717bf6a4cb8779e74c2b24b4ac9e2a86d85317e43cae99e02c5eb2e1dd5100302047c435bb5006730650230335aa40089d09c0e1b82de032f41b8ff91efef073e7e65dcece98eab252e24470a5877d61826f5b17a15440f438a5157023100d003b1d912925d9cf416f0fce32e4c2dc0de9c74fa7715701509223dd9b0fb1881de0cf1ef5051cee4c0cc5bbcabaed60302047c435bb5006830660231009a2f46d46f38c4acb1a29f8b5dc3b0af817583c8716df389e337b451e8ead2003524956fe1939efa46135e4a09461f20023100eea31e1ae68746468616094d5132134bca9636aa7af4b00991715a8ad93598021967f449dfb27693db52d0382a1f02630302047c435bb50067306502302f711125280e6da8e69bf2bf875a64db480074daf6f040b3a008460d0b0e44057d0e560af708452426f00725da49d37c023100a8ff3ab15964efbf39624f5e03f9935d5a98599f56772a0d239f048fbcf504ec0a062d95421c108e8f455f9c0faf56560302047c435bb5006630640230288d536d311dbafea841afc1630ad99cd67824dad4380dc1d6965b16c3ffb69b2eb171931e2574b233907f8fea94f39a0230236df1070d55d4221bb00668409343d3d273b0a3ecf4c3d56e453f2beadc97581a047138de57c58969654e92c6bab7140302047c435bb500663064023038f14927f68f86ac0a18b2f6130d0bae4199687591325bcc1a423d34a1edad4c8ce9d91f41e7d1d455f4f1e1057012c302304c916b18c5d0d6ee0baf9f8ed792e30bbbd0be33c84b08bbdce7d8d3ac08a49265ab1e95f02695bb4a16753edcec84310302047c435bb500663064022f167064a3c73de3d8a9db68110d2579447e54284ab59ed0cf326db8e6201866bf132a8e5035f8c466361c60d9fdcc4c023100fa9e6d4c9483a2fcc428e08a6cde95e128218e5a4d55727bc42630deff3c26c746a6248dfbad09b037cde11be5cb2a580302047c435bb500673065023100d04a5b129fb7dd8137d23dce3316f2c6923a76b55895583b741638a46030bed26a52c9aa487421bf4a38340c1a84868f023035addc803f5974a86cbfc6970ddeb02c031a13359ba0b5a9a207be4a0aa36ea53d7eeebdec957fbff24d532ba12ff7dd0302047c435bb50066306402300a91242130e1e3e68117cafd7885a32a62af93f7b2dbc3b659eaab06775fae986675d221be9be0d499a4e932d228cf7e023012220fe53e92fa0b16f0f86ba77fa8faf3e14122159280c23f420d67379d17cdbb76bf3911c4b0fcfa4b27acec79d03e0302047c435bb500673065023100c4a745a0c2d68034a381ebf11373007b41a576365c0daf74fc7e031fa570210c1f6462a390ad3d1db499d83af8a1a355023049ad17a4914e8042b572708cc2769e74b50ba5ac0dc5aeb5a9dac754051ff2bee97a2e2ef18cb13f55d7c2894ee839190302047c435bb500683066023100d3c4c519526ca3417d491f03906919a7ee6918e47462f98137060a8a6175c76d73139da39faac1dc7a4995bbe0f3dfc5023100e7b9256f211577a212a3b4f7aa65f78332e8fb5b0e9872f0658d76478a7670846dc807d09cfcbf0cfa78de1eefccde7e0302047c435bb50067306502302723b2ec80d256b023e08a59a91484ae038b0dd04240921cdc064b838c7e57326b9d67f3c1ed05b072035c532a71f9540231008724f856d5a81ea8738d6f0bf335039b0138a68c50393bdc063db9d97102d0cceabd2c3d0f6ecd28cd1383cdeacbeeab0302047c435bb5006730650230106d58da9c027f05bec7dd499c29bf13818100fc97bf5d544c300814602e10de1fd9056d05286f54cbdc15b0e44f7982023100b74c36320d6ec502922034825e0e31ceb0b5b5e1cfccba35bd6e6f5e66c232f05f63664646c26c5d4968608b1ddd8cd40302047c435bb500673065023021c1f2b2343e7794a5f1b3ffcdd381c33d3f28f7f857a4b267bcc8b839ad0ad9bb26f6f99db55a3f89d638c25dad3b6c023100c4b84128eb638296949575dd9cf51a5ba3a029fa52ee97edb1d178e2dfbf47c01683146bc294e1ef8e0ee124a89eeef50302047c435bb500683066023100b2540612c01f8f083d8dacec774ba48f8fa52fab843f8c49e816b3f777786499c5ab2ff07a8075c521dacbd7a191fa1e023100c1bcd6337bf50a0e097719eeedff0471840879ecc295f6433bf2888dcf43d8a6d5165e149a1fab14aab73733bf5b08310302047c435bb5006830660231009e0e712d18fb0877c01136d4aee3b0f392d2866ff3fc12f8f96b06bbc4e80bf09eb4d9f28bc5d5918e272924270f6423023100bde248eae26c18a99d73358c0553b9711f0fb8d0044267ca021bb214bdf9c53efadccdacf7a745bf732b8863e609106e0302047c435bb500683066023100f352b67ce94ec3e7106a1049be01bd22d205afb8733178578263e81709b0882181cfde453e7204c3dac400ffa00871a3023100c5374738ce87f91bdc95de2d5c2d69a0bfc079a90db616b865f0184db075947b271264001439c3b7dd88a8693cf6d9db0302047c435bb500673065023100bf3e6c30e600427ef232db7aed5a9408c565d4c2e08016248c5cbfa1404b86582471097ef085ddfa6dc3e9482c9d56f60230605b4aee0f787b601b29826b6b87d7ecd02666316e9a0548be5ba1af8c2a0eda6870146d43aca394bb9a624560590b7a0302047c435bb500683066023100cd29b0c71a730b2a5669e574d940264ce7b24d74c316c5eda7bca2268cbbd3d1911de53efe0f5caa61420e8068d193e9023100f0f61fa26a02f2eeaa5040149e0665527f7ff1d480072879ef1a9e47528dfa0113637d1763940fa5cf99297f3da76bf90302047c435bb500683066023100af3b28dc74e5f770eec61c5de8ec9c09404dcba66acd21a37ba90706e4dc113cadfc3e58b546412bc5c231a3a3d96efc023100d179f34c6c006332694a47a405b0f46fbc010cf90a2baafbcde06330826fd73cd38c501c22a17110ef8b08b202bf56920302047c435bb500683066023100a9c3c478824e837d5b6de664176e54c667f228274ba46f19260d57d2103abf7f83a685d34b5db13113718e5368543bde023100d836b915ac7825741bf7ec7d54eadd1a46e0c7899f6a6d4dc8224eee91107220b372edcd8b00b7599355e315100690380302047c435bb500673065023100b1320d2f617026ff33984bd5b984f1010f46b9d848216bd6b0044e500c7e07bdd40d32f30eac606fa12b1d2f3022536402307708cc02e04390ef0743dc62f7e64ce8368a65acab88dc4d64605dff553b91eccad2abba54975e570ccb9904144198af0302047c435bb500683066023100af9ca16f4089a9bfca7d234c6a79b8219a0b4cff4ea6b7f5dbefd0897dd61bd089570e3cd3f5d6cb68ba3ba0f7880420023100c74217aa7cd5427e5bccf044953fa19cab9208a991b9580eae276373fc26d811ce5ef2e6c2ba100bc56d04144a51c7b30302047c435bb500683066023100986ebd8abd57032a74261bf340c17bd144ddc19259d2d992e07aece54aa65dd465c8ccdcde392ac838479665fe3a3522023100ad3173f8255836d5a6df21e5f26b5b6447ca5d9c98fe82e30abb9b04bf4bfe835ab4a79d9a3a3803a95ccec180be27660302047c435bb500673065023100fa537926b134ab6c96d33bc4581a076b9f5313b820d987ebc61caf7dd05de3937540a1ebd3abcd6a682be45152d6067b02305dad1331382fc2298439c6ada5a058a03c4a48d849e6c876b4b0490acf5bfb0b56bdb75e047ea26de4ff61c336ef39470302047c435bb5006730650230714a5622993e5d50a0f188875c6042d788a2ab09c02a8f50adfe9df88bf0e9c645ba65aa688eee58fb7d679b61a33cef023100e6c450703745c36c0dd26b5984db40504269d06fbdc45b330b2c40333ad59f2bd4282d11dfa1e186e4ea41245b8319660302047c435bb500663064023022dbaea2eb7ae196537f629e23eb9606d3cf717a4b3ce91ac963e98ce29fd8f22d0c318e34fef85f9768210a795eb42e02302cd7c518a88cac6bbd53c725fa38b7f80b00e305eb4c3a8abf4bdc8348ceb292d36e123ae5004bc7eed9d961499fb58b0302047c435bb5006830660231008789915b40983db1fd180712fc46bab9e1a9f474ce015f37937da4253c07df325973d8818178864238db521552805ae90231009d4c967809b986a6c61f4286ce09a38fdd943dc8d60339d02f11351fbbf1466ae1ff1fc84931290892ce272a31a66a460302047c435bb50067306502304c6a6129edb33cad4dc4977afe9628fcd0ac99c431adda97f9db816e7f584af93dca8fa9c28b5418a7aa0ebda8964809023100990f7594bf89fe8e03073d05d8bbeb99318296577da57181edd26a06923a3c794593919dd73cbd1ce075d94ca6abca670302047c435bb500683066023100d565ec5250f2426c8fc788a6aa6e39c3ac081d3a134bc60ddfc56e7ece060f27db70ce35231c9f3e4d8cedac5c433bd3023100c21c3e66514c51be9971f0a222e7f45681064195b975b11d83877bd6f823d9c1baf550640ec78d907ce7295c69e3972d0302047c435bb500673065023100cfa4a410d2d71ee4baf33abef3c28f7903d2ed6e2868063eef4724e8dc4781512b9c155bb90f1588960eb8627b4bf23d02303f50c9caf65666ee76bf73a05c740c7d76e4f967a7a32fa87a27db791dbf3521972c4a3ea2af7090afe9bfa31ba4d1460302047c435bb50067306502306c8ba22c2e5315d50d656931c649d0cd188b79183f0381b23f0c4cc0ea81930871c68b69239c183afa6e24ad9f62bc12023100f435e46d19fc4f87c151902ff2a3420856186ec7c91b911199219839bb08f5866939d761208addc6a9eeb1a686e687530302047c435bb5006830660231009ec05dbe55471bf2f348b4d1095702c59608e9a441e6dda42baf8d68094f2e20a252f99a8a07e893da7e6c9ea9631248023100f585dfbd824fa02024622387c27e4bf89c6a5645a67fec7bb37122d8a06635567399839c97dd26be282573d03b96f99e0302047c435bb50067306502301fceb5f4f85b81154614c0917ebaf1ee785a4cd5f5cce831e3b202088553f89124b50e853e9209ae48ef412539d2e26d023100828bfd8e54efbc1bb5972f5881220c555417eeb85a1694abb6d9057051348401510a6a69a045e3aecbb9c304f94cac430302047c435bb50067306502306870833f370512b140770b6f7801b1f85cde2e7f0e29132abe25bc93061339770273695299c1994562c83d1f1a801879023100f03f5ee9d3ba33fa42f3b396eb5bf0be379a68589169d01728c8a979502c16f2c322edeb0978f7995f06909db97cfbb70302047c435bb500673065023030005f70b1500f6adae9d4802f175cd929da02b72a06770bb0bcaf425e4b24c269ee09b1f695ffe4898a7ab22ab866e6023100ccb20963c5c9fba62879255ee83a4d635c14d528ee6d338057792059255a68c3234dcd87f4add94d3f500b826ea0e8e90302047c435bb50067306502301f41422901a825fb251b989c1f5d204a135c79a5a60d0c3570dda5ea3dbf8249fc1cbb5293c79b65cc1e0cd423c26834023100d6ff8583dcc584d237c7cb1b83768ba557309fc0c06a721eb2cc0577d58e6835d469865da1ba0df44527e640c255c42c0302047c435bb500673065023029beb00559ca8624fba40dcaf5929cab702e17809c0c2fdcc8e4354c484037e5338b07a31b013eca0037dfd69545bd95023100d39f40a105aced87406adba4d108ee08bdf53acdc2acc0aa92f5a13e9399b7fefe110b24defb7b728b389e638b9080da0302047c435bb50067306502307c12fe104970b4ffcd564004bbf047b56ce2f811dbc54f5a3f5a5cb66fe180c8963cb4868a3d91add1c683c028706a17023100867044f76560e337b1f6e35f5b5876f4f1756dd49977468997cc1d4f9d44602713b79c77cbff1e82c4d591505b143ec90302047c435bb500683066023100f788661483018829ba89d5e4c99612ffb2483a0eb1191545dec509833c4ec6c5f62662c71a7cbf94a87adbe2fc0ce1f80231009403b05baca61bf865d0c8390ffe8c046e46f8aeff3f4745560f74594bcc0435d9305e300ccef40580e740212357a0360302047c435bb50067306502301cfcdb1c283a3d28d0b2c2a91aad29eb725442cc5a1acfe83f9bca3380a12046bc5469608091e8f58586ce89841d3b4d023100b548d0b98b0cc9e388272fdb54a5530298811a73451c5ec61defe912468f5700129a92fc29a7645450bf856cb29496640302047c435bb50066306402306f975cd2d6d6def2808a50adb470461a2a7bf1362b36d72d0e27f3055fcda0cef94b15ca43fab70d5be12a24fb6ed765023015cf8a59428f9f01d1efa99b877adda89619069b5e6cf1ba9c921cf448a5976290dc8d26e8b1e08436a49ee746809e570302047c435bb500673065023075caa6b97cc9971c711519534bef8d24c07c43933f215d079d54473946911955a0f58260458fe7305e7a06ac6e8b5235023100b589137e0617c2b0a57d12fba635f3e5a7448c342dbb6d5359b5656feeba4fcacfc8beae4286196051fb697a98a6f68f0302047c435bb50067306502305d108a1197d2538859bab103070e81aec791a90882e367bfa42dfff13788c546ea8f6fce1d8402533b9c3c736866b8f70231009541134c12264066e4e4821f64d3a5edbe84c20393d96648d0b85bbe6bc7308be6bbdc1ccb18b46da0e238236fa3b33a0302047c435bb5006830660231009f89f4fe1b5047ebf26a78f2410f7511818a4756484637249ea1d49cf4805171ead19a892f132897886a64aba8402c79023100a5917bf234d7be8ec07e1a5b6e164fbfc14c10550fbd41e670d5cac81f164f38fcaccec68425ff450fa34b5b71d0397e0302047c435bb5006730650230009415f36b3ddf4f3fc6fc41900ed78c720834d774389881472357735da73b06b8ef886008aadd61cbcfdda2749498d5023100ae873003329ec0c2b405808c73ad2baa4aeec6b313f46b6d9fbc886e29ab12c19934663d6fca1c30869e10a07e8acc6e0302047c435bb500673065023100fc4ebf38de9de87d2ada56d9cdcc11635ef6c00751193de5800326cf8d112e42a650f3c6caca1eaf132a4ff54ffe03b602300b86efa7d79678f262d96ed99427355fabf75968ecf08fcdf07cda05fce9d882667063aec7c39bdb0764b5ec521786530302047c435bb500683066023100e4096621c4d67e3ff2f1dba0a111c76cefa4745f235703b1cb494de7a9b39603da5b47c800011ab4085c5a6570117bd5023100e1f0d9bc6920603a894dace211254a692d7c6a1167086bfb9903a8fbf0080b3125f1ee1f8e2a4750dd5665aea977f3a80302047c435bb500683066023100fd2fe5239d65176be413c6dae4beafa8797fccdf52a1f76fa08fe227cba157b26988a8dd7f196118304e5edc186843b1023100f0ba6067353665806be5acd25f972b93879449a6036b2c6515a4a81610186aeb92da9f537a1d8cd9bd563201ac8975d20302047c435bb5006730650230169d01170aae2eb5fd3d03a5adf996990b34b700bc342fa604d095c2fcf48a453f03d0ccefedeee734c0171e5aa18179023100d16bfc573922d876c6394d1b65abdfc64e6086981d61ffc4924cd1bec237659aa7f23eebd4d62307f1c585ca3576dcd80302047c435bb500673065023100dd58a27859e47a818d1ab83e034d6c9728b706994a16d985cc9ebd0ba1b3aa173e1969a13ce8e99f4401063057581d4e02303da6fb93713b509ac99fcec92727560343aba7ada739214dd7ad1adda14d93191de5c2a6a5b1d94b34d977e226f92c800302047c435bb50066306402307b2e162c84aa6cc33ece76b55190eed592e6abef5d9af33e332c552093248b0dcca28fc83f074bf4195d80b2e2127d9502302d6d205eb0200f85460d0916a0c7a33c0dfc5540ab71239e48dff91af7fdb42f158359cec3563070945ea90f69ad58830302047c435bb5006730650230066c906dfe28e3fb9033f68ce25f4abdae5453790c64c44ff15656f3cc605629cd08c9de2bae6cb2dee49330d69c189502310080fcb360d79ee94773cfb64efdf831cd2cd2c9e751aced91cebee28dab1a60dfb31c31e7b14cae242e587ab747e809eb0302047c435bb500673065023011549e07edfa78b4c3f0ad4d8c3fc9af85626d31b4e2336ad737f12f214360bdb276a4c740a53c2e5dc3b74174cd23a2023100e1900441b094f895c5d3510188c8ddea11a0c576bd56c75af13000084c2774efab03ff885593542b5f1f1b597a2365a40302047c435bb500663064023073b8477e311fafbb9fe4a345327f70b8aaf9041790c9dfa1608509f19224bb569234d9afa0ec7c2d4d7fc8be643b0a3202303655bb4c37d89ba4edc14e84f2bc649c8bf32423c9b22e3e0c84f410ec983e8122df1d64a01a73663bd5c70abacb653d0302047c435bb50067306502310083b2fd617d43984e87447e54e4202cb06bd9f15785146009d2b758c935783f95236a82d2ccac49d32fa7f745bc1d847802305698a1536494e4543297e804f919a65549bb0571dcbdb4f4d18d122a5ca49c0826d8efa72a1c1812a6add5f69ffe13410302047c435bb500673065023100d9531053d8eb2cdcad5c25246c210d7903e901ffb20159200ab28ff68575dff5257275b8e76ea2f5c2b8530a8c20f4af02302b3b8470006d51f14c4b9f6ba861b3468c65a402ceaf6054d66dc787ac01d91d4d055850703fea43528fa1ba8ac7c34b0302047c435bb500673065023100d247be8c38edbcd8fa4dfb770479989f1e0978dd00c7ebc6c934b55e1631a6f7ccff0b152d603a2870957f39fcc0fa1a02306eacbbe3787580a472a0f172c5b54ebb5865841ab53586a11d4862e207f450546bef461f41494abc7e1e2e70e0339dc30302047c435bb50066306402300c51b66a0db689973bee5a94c1461dc5f10b8276371ca2f3dca22d1ca9e7ba45aec97fa399b6002096575a7ed7571c1302305659a039faeb17423927bc7ade53f3fb9a26fa900a9a34b4e8a8ee9acde25edb4c59d6a0bf2d18ccae109152dddcfd3e0302047c435bb5006830660231008c8df2bf33345a720f8afd56a2367c502ba2137b3ebea567fa1672b4e5bcf2a21083a99f30b67a93b6a7b4b12440cef50231008456daec6c72e397429c9c97f3a4da88863721116fff94893d1add89cef784fedc37f2badc0b369cb45732f5acbd4ad30302047c435bb5006730650231009a5d64034b4733968de624056cedd248fcd7489ef2d29582684438127428234716cf6cd28b218eafd2f2c2d604cce07402307e28b75bb1a59ab6fc5ba9be2d716b7e909f1970b085bfc61ac96408b3a80da5bd3c6388955ccb769ca6023da147d9630302047c435bb500683066023100bb256e2288aeed8e53da8a84071251eb7a53db2503446c8b142dce8178ad16b5eeb6bf2fe5f34aa75a0362a3c070a5d7023100ec2a7811407224c67e5073f2193c4bc0877349da2b26120714a2a67e2e02df8d6d38cb22a61816c443dde0ce4dcfa44a0302047c435bb500673065023100e15ed8acde8041b3613d30cd13355dcd0ccc234c152699e57ddc1ff151817d5e243ff66eba59dffc649671a5f218361c02306bc20a2f0348e3d674560ba961eeb46f8d5756a459912ad777e86368bce613e8f7831c2af7d2fcbfa5948b949c89882e0302047c435bb50067306502303bfe2214cd3ceb227a199b5a9a0baa8cd592a553a5588b9850e80b9fedb2ee95284fef778deac5a303a341fb358752810231008800a55fe95b1939fd3fd8359cb6c765cf62eb88601c7b639f0a2e728a0e2fda37ef046dfa4d8a63f288998a5e1d48960302047c435bb500673065023100e582deed4c3ed2d5c2344cc43227a0ef76f02eb5305af9c9cd3d2b30453f95863373a7a55846ad6182a55ff339b2f88802302b66def714e07a02b3d2b0bc61eb318e0fb4e65140955917404b37da18af0a8918004c226b14d885973f17baea03bc430302047c435bb5006830660231009f9fd98327feb6f29b398f3f4f5f5f44559fa9e4fb05278bbc6d06e5e285efb8397da9eca1242fbc98b83cb4861a506c023100fc9747c831dbd6c04d664eeb4ef96adeb1cd4355b35929edea75bf2235cc648c070119125875358e07858ab043a20bbd0302047c435bb50068306602310082d6f307e5a51961166f37b7b41646ef947e2ca569e55f90917c305a8acbd4add8d26c3768ea68c75f5189256d076af902310090ef60ad58ffcc0c7dbe3973af067e9f0a379705db058e9ff058fb98017cca71a199a6065a303a3a3ace612e711184d50302047c435bb500673065023041d17d96a77c5f6c84238961686c6e2849abfdf6e75615c987ecc80b380517228dd98170f880edbf02221f8ef16b8393023100f8b0072999b04325ab7432bb5c15b02ec6d7c300a532345233be75268324db32168cf5f71e0b4c5d65703c039ccd23560302047c435bb500673065023100c0e6fbc2a9b9c78ab64cc89a7be7224ec387d836e8b9651bf94c67aca5ff3427df69d27a29e3e63eb383e399ca856cbe02304b79518677af1f255fe8f75ffabd4a98db361480c91667fa135802a7493f94aca76d5eec1cb07e989446b8f7ca3ab05a0302047c435bb500673065023100e7b7714f684c4176730c9da1f5bb40b3edb010d44c4a79bf9062cd726ffdd78a170ada6575ceade90e6d53af63a260bb0230113f48aaf485f2e09662b0af656bf3ef9bfe2235da62d871c95605fa4205a936993cf8a5ce6b8a2170c8136e83486d4d0302047c435bb500673065023020a3256859f5a45802edd5c4f8806a245baf0e9836e14c69d0ae12c74ad012b736f33f5e5bd24134c97498a1fcf4d2bf0231009b5e3ff23635bc93f09cbfee98d8841d18c0b38f3021dd39c48607088154b0e6b450e0853c86134b4def47c395d6a8440302047c435bb500683066023100ca492172232987e838b913db9f135e54015c11db1eee65b5640b591347b3dd47769fbad814c904dd9fb0fa43d93b2308023100f8bc0a2b7fbf5a7a8e80226f754c78aa9a2071eaa6e6f1e5c872f4ed287ff5751a0f91fe6922f9cb2fed727233d6b7810302047c435bb50067306502306131683aed1941cafa15f769bb8e4918bcccb7699b7402851409e350766b1cc3eb541688fb2338208cce5aaab02f8268023100c1b2301b908b9111a07dae57ee103cc6eb57ba6657f3eb71d1c6cae2ed0a41a3133194aa5f3b96816700f2ce4abb4b110302047c435bb50067306502304694c6d0a29117019f8c66e69d5b1f88e92989e27be23f816aeca803be450c5a8298b711a1df35be43d7561c002df738023100c1010d5926d7aca8e589299d830e7ac3bd448c10f45050ae1529aedcd542f1eccdde372e231245c2e96eea5cd37fcffb0302047c435bb5006730650230140a3fa4b47bc1998568bb6768d8b1058f51120a2ac2b3c1f03583811df9c4b1d17f440164f5c091a8b14bf36849703502310080287dfdf2f9604ba43f79cd18e96832cd1d3eba416b8b139a370cd1462f7eb9dde5150d820c8af0f3efacdec2db912e0302047c435bb500673065023054941583e77b8290925cb3504906df1efd55fef2ca0a33ec212ccdd41f8eace3ab7a2a1972db00ac604e3f54588633a602310096e4bb4a80e1fa9456b5ff9e9bdbe4c3f84d8155d3c7887b36316b5dc4b3dee0de3c6aac1e5cb70ef91731b4ab84eb4d0302047c435bb500673065023100d2f9cc852c0469332754548524608bf92d57a137523fbb2c577c8d94119455b87ee5467b77cdbdad7963cee4cf324a2c0230658e1dc8638ebd4bb40fb0e7f297d2047e5554be09b584ef2743e776399ac06f2796fb01fa2d269628cb4da1688ec36c0302047c435bb500683066023100974ef5199057e934c56c85d5f66bcc119b49ef26441f92f63c581cc9ca8689bdec5da8b4beb04413f4bb8178bc96aa98023100aae3945c5d8e6c83ab58ffcbf64fb01bb8cb543983212071164a7788bbcec9d701f4c8bf6bd7bd2abf6c26f4e7c91baf0302047c435bb500683066023100dde66dc2371cc569f0b24e310cf9008727dee20f37ec0a8524ae27970ad83756a4fce32008b189033b4231087e58b39a023100a78fd17575c5c8159c3b27893a3187a5fbdf85a3d2a804e63e3281a0561cd461caf2118e075ff1084f24d338aeef8feb0302047c435bb500663064023027310bb68867df14549824b268ebcc5bd2395146bfb22bf47b80b633422af3999cf25d6427cc5f62e7bbbe684e26ee1a02305521e0b48e8bac53c6cb938bf44dd4b4378975a454a1eec85174f82219575aa9e87c6308d2e4fa38a5bf4cd01863f0060302047c435bb50068306602310093e0f15230c0bd6897fd0b1b34d71a0c5c815f9d833635716db8cb800a7b4e374cc32408145b0da5788766a10642d6f5023100be99cbc607ce0eae103110e46b0611785bbdb4082d049bdf2a9d01dd5450a526d9eb397664e61dc4a9ce418e9e4410050302047c435bb5006630640230455c0512f84b8ae0ec21c1265ceff1bcae2a988f8235e7ef60220ee1c11e229b1f12e402cffe6fd94416d3b3373f5798023032f4fa2eb1e9098f6634fe047e0b6fd65bac14878ed9bb72d3f8edf71c02cecfb0c81113476997a918ca0d3764b34a540302047c435bb500683066023100f15b0a62e7521ab3879e93adbabcdbb3eff36c2ecd4580532f3e4e08c447309c7559143e507e47f37ad04140765362fb023100c40764d0e5a9793d115ae268e3dc54b285bedbab56e3aea24bca219b5cdca16f27327c94f02ffae8c148832d0d677f450302047c435bb500683066023100e0ee587604f1197c4b2bc1c8d72ad6f44f72a4bd953445a1192191cc8ffcbb912db945e7f1887309534f5c68284eda3b023100a31c9814f0c71f904402f092df6938fd64e6f8e17be3f8b28691b1426d4bb6b95ffcc415d65657f4b154af162ac2a3150302047c435bb50067306502302e004c6443e8207d07abad9d9b3c47cbeef1a9d813fb1f3f5815676a8f4edaa3791254185e1e963d1ef7efe67d532b02023100df2516a28e7f0081fbc60207618a5afba81b1d1170dfe79bd11c89be9d7d54f7c6b5d8b582146de650049922bb53f8a60302047c435bb500683066023100f467d43e4a107159f05c64aa88b3ba53ad85cd366c71942d4b2795e4400bbc4ea0c3dec8c7b9ee4847fbd6c790f18c5f023100b941fa09c6a17fc96f92adcbb742fc1904b4b433f61d4a15dfa5dc7e48240575c5059ccec57f9a770d9badb7478a7dc30302047c435bb50066306402306f766a4d6764902134461fa7afbfa164efe5f0dba6c7579f163f46b80ad842b9caf8a2c016906ccd0173ca4971819b65023047428f5623f08fb9017ee1117a7da35f5b72abd06f1803fbe638a6c94dbf2b5d21c85cdaeb59fece547c7eca79bed9200302047c435bb500683066023100ac5a7f0344df14216252bc1fcf902845f643347d36d39b5c0b79bc299078b084f35de6bc10a4cac37fc1f2e92a4590a7023100b7dbca4b8f56f4c1a06eaff92ed3e649d59d23889c4a97480fdf14531609e89b45e0ca94231206dc558a72f5b2d09ab70302047c435bb50066306402301db937b7c4f58e61b1830070a62e6b9b3c3b200e032a676aefae8912c79d4ce44ed19fa07d7f67ad4a17b0f8a1c1c3350230410c93641dda30ea353e32556030f63a0ab3da2d3a682822ab38e3647496708e6a64fa1c39a629e7524fb9218868525b0302047c435bb50066306402301e625d0d0e2eaba25eaf89ee89ed38a4d6abf21f17e988e6598fd174798fb2c33867d2c0af7bf3ea949f61ed7e02271702304e7ea1240b979e5f081347c92af7b62b874fbb4b127462f4a15bcd1a0cf94a5d3248cb9d07b47965e1f0bd51714fff070302047c435bb500683066023100c47f6ff433ea1547d13504ebfbf0ac931d928b688a70d93f37e487e38025959400888ecdbde86441cd86018836833d4d023100b6ccddb79ad92da9e0a7d2903bd728fd80930556c0971d5a13dbe1fee0712649d79fad2515bff04993f317a11338f9d40302047c435bb500683066023100f83d6aa0ecfbedf1af26cf8dcca4f5bd5dc9b0981306c61ce0a7b56cbe8bc0d53d79a0ca9cbb1677feec6bf3bdcf90a80231008dfe522e719c4af5d8938690f492c0e88abc4eff3b423daca36d9d5ee0c4ab90254fe001bfeeb596b6668215a7c98d740302047c435bb500673065023100b8898c7b7c86c57eaf66e2277b2ba2e350547e5696760ba3a512f7c3bd5b6554dff1aeae3217533b2ee9d0f84696f18f023041377e98beb8630b440c20923e670944f283809b72bbecb626944aeda2fdb0a1eb82b18f26f07fe505cf82a659f05d720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023059c1dadc2057da100396c034c62677d3d8559a6f0c66f3dcaa00501c79d306fa54632a9eafad77a3fb8e5bc833eec89c023100f4e9e392cf2bf0e3ec91bffa31d3b894d030cda1d207337ee1f34c504e41163de14b85a42ae2684f56abe19ef20172210302047c435bb5006730650230532eb4c615f5bf5e53fab3435ac639a6dc1c7f33b5acf579c4c06c7888f3d2b7d379271b9abf315e84c37f68a300bb39023100e08ca9bda7681dfe8f18e64016ba6751687f41ddda2d8c8af0d61561c8f38923fd9b8080af2d946a4113cf90a88585f90302047c435bb500683066023100c0f7b03525793176e975d046f54c9aa7e249971fe19bfb0bf1137fd45c824403370d0d2fd0c4bab83a285b70583464eb023100ef483fa0e19d0eb80067874fda3de6c906926dceac866e39948c2babbe3b6cd58f3fd36823db8e16fd5352204cb09d870302047c435bb5006730650230135b62cdcaaa0cc9077532ab831d4e13afea03edef2efc025b1a153afb086da13a3552a3a5042187c5562e4c712f5b5e023100bf71c057212329d4e34102a1aaac21f0b8d0f7000f0dbb3da0fd4d4d2c903a412ae7b523523cf66c62c4ee002cedce260302047c435bb50067306502305d88e07b831d60c0bee7623dc79206730a56bc8994f00182951f95fc1ec6fa64132c4f29c405b111bf76c3cb605b8776023100d9b1cc40a7143e6a0ceb3ec601af93e7e79bde079d91f991c7e59a1c321af2c28131fdf278d1deab08e585161f59d6130302047c435bb50066306402304c5fdce0b0678f44709d67966b362680e984ac74eb0772fc5cbb9a01de8da663d50200cf779b65e0c016ae8a09183fa202304ef0b79b22683278a885257b3456587020b10689a87679076c6b0bbb1fe224e75817836f5d4771d8ee9710e6ac6e6d890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023034c3a333649567da6ec28064a11df2f3ceca2190dbbf6d87afd63a8b645c966ad32677ec3a5c53c3a22e20314cb6c361023100cdcf7f5fd34fdd229ee060ce58b5404eca69311860a927ede68470d84eb38051ab0808fd6688f698dda65d58160185040302047c435bb50067306502306fdddb3e8f30894e23932cf8b3e979de519519165ffbbffec5df0f142e80d789fa9be53541ee8d9d547807c6deb239f7023100c16967763cddd14a4b57e8dcd122f85e365b0195965f13b478a9744e0aef1467d81377e63a904ad23af38d9609d87f950302047c435bb5006730650231009b36f865ed000562586dfc458b2e3f69112f08b46e7f0da6d0df4116af86358d2d357f91405e342906eea1a8225f954a023027eaff7cf6ec099d4f3d93e875a6e8de29362e8de3c24b1b16c56d81d2e892485f9216d01bc35f80810aa85de8bd4dd40302047c435bb500673065023100829fd81c039918a01d684dc3bcbcf3957d6be920a34c276553787b95fbc98b83ae2007ea3f0a21cf1c4139b89d34c4840230610104abf21a4465fb6616b09149602381ac44053c449f1ffab9fbaf01a8f3a36a20071b4794222808803f8eced658410302047c435bb5006830660231009db6bc0574df87ee0f31b21c4ce15f2ba4701aed2fb3359df0c5aec5687310fd5797f779658da4729b0e93c59849b8e5023100f928e6ab9feb232a3ea9193f45649cdf890afbb8353cc4f3ffc4ef1e18ec8bbae5654deed712ba014e2bc23444f31bed0302047c435bb500683066023100d5788fadb6957944bf5508ba9fd2ec9711f660bd38e21d12ba806b3fde38a75b702e2e207f117a6519744a8a817f19bc023100a4aabc1fc1affc5cd9722a23fe341a081fa451844af7026a17046c43741b0423ff0d4baa27408946058bda0014d857550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100957f88845b8cdb07719df21d8c8207d3cbd3a887ca90f62fe8102db9f0f208f9cd5de559391c8c5250cbad268e712c20023100cd6bbe43f6d374cd0c2eda8198dd559056d9a9c0395ad0cf475bcf2cd871fac90244f05d8c58053809ba4cdcbd29c5c70302047c435bb500673065023100c2116d5693d16d4a896335c0af07b9b0f85dbcce20dea38f61bed4e100ee660f8030b15642ba95598f2bf2272d63a6b102300a4a81a2a861eb1bbddb7c86ded67dcf5401d6195bbaa42d90d4784d15e2b710689625a1fc074de6d6fb988201130d120302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c48d858b06278bb7e2f0625d0f274c5a3119bf4b06972573b94f9a73f439f6905d899120e9b731c44660bd8105461f31023100d00644bf723023a270f15d685809a3373d217b7ac06aa85242708260b04d33d5ff91c5e8e2d99e106229feac2ccfc0b60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50066306402303a80dbf905f24ed8315a32d36128e0d527ffaa148b5c41354b15b750f77ea4ddc5ef31d888ede3208751ec344880a63902301575457f61958a031d51be7287f98a8d6309cea3363b7dde6dc868e37c3f3a65356b80df280711546dd9d729a94e2ee70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e1f0840f7df71af0a5d067beac19069806ead158dd339eef97bb2b2ab22f40811b2a887aa866fdbb6827b80a6166ef9d02307ac134b270e960f38125c9f35b1d11ee57923c94410340d99fe9ec3f4e3bed618d4578950f15aaa7fe39e6b8449679cb0302047c435bb50067306502300d0b5c109298f0dcfc39086a34fea0e8bac47e94436b4470e0e4c00a99506169d7a887633712fe1d9728a11a2c9a26ec023100d3e00c810a57041da536e3573f5ad0339949059f6f9229cfb0c373e6d9dfb554caaf25e0a2e17d6963e02d258c3f88660302047c435bb50067306502305e968ab63492b1fd2f14d03815c75eba2dca5b73fa2abf3da9f0464451edc66e0cb597851cfab3cf6fcd66727c97f5d402310091b7af88d2397b366a0f71c7b494a5042e37cb118d36895eecc6e766fdac347f0163bf4c1bcd75025d6244f5a2697ee20302047c435bb50068306602310096a6d4ecedeabb95a34bd6a81a6c79d585e2ad15c187f2f5183f4a6977d9524ba06911fbe21daba747e7209043c536ef023100e7398938b0857ec8d8e129869a41b108dac68645ec5b6187bb0ee1e04d78cc5b1389c136240368c12f5d671ac4156a7c0302047c435bb500673065023100e4bafb0e245ab793e38f6af894ba9fae39ae8fc962cdeaff2659f15c12c3744a2be5fd788ce0f58cb3cf9bf0509cc9a502306709d6de1419e9cb2b6c2c9764b0b545f9fd633e3c0d6f394e355524de3e5dca2c99ec6e7208dc66aec4505a6011074c0302047c435bb500683066023100ad6765d43dd920c130fb95011a5b29dded7908c77151c2fe6c3917d6a763c4495b9b1a418141162d929a3cf5ac170df7023100ad5c5a8ccd12781db537b6e8c3c365defd6c71c5720e234e74a8b64881c4911d11debc1297f6c7333034923860f163f30302047c435bb500683066023100c78bbaab21f950e80dd43079d35de13b5cc73b2cfb7ea25b466f16413eec129bbabe954a81a2be03621867080f2d91e1023100c950957d867fa3e8f7d5e4933347fc2aa5f6c5c50bdd02224e0c688d7a8f0bb8e525404d06f95640dfb4fc2d4aa9268f0302047c435bb50066306402300a6bbefccf2a351066d7f6eec9555665be329125efb90bffeb3520c85cda4b512060c27296f877e8af455389492c4cdb023053f692e62ab72fda4c7416a3e0b4df440706385fd510ed3a5a143411d25ac18d6d17cbf758633c8539799450dc61d8240302047c435bb5006730650230210e1951c9d21da89439ffea9d968949ba5918a74e241c946831cd09a893423beb0906d713b6a7ba8d51d8ca536e3f87023100ec04ecc46e8b05e54dcb2310c7e569cb35405f5b3ed5184518eb5985fc0bf5e6a68f218e3dce79498c56d262aec39b060302047c435bb500683066023100ab46ddc07f6aede6d52d86fa30e944e19af0189735f0b0df91106ac9e9de1723819279e4f2f30e01564fa3f6cc71feea023100ca0f643ea689b4e51e3b635e9cee476b9e81a51ebc2517ccb3c513f574bd26facef26ada4399109962178359c372eeed0302047c435bb500673065023043dda8dd7b11050560606be6e1a473702cd171b89e84d0854d1f9ea08e46a117fb286f30accdc4fb65f527d06d1eea5102310082ec2d257d43e0ae9700693aef9e2c4f97e62ba84a89444816ce1354d16007cea84c59e1f9bb0ec4a03cf3f21666b0e70302047c435bb5006730650230111cce6283a11ef1674fd1c0803b5e2928f884565a2043521e34cae6d47f89f119dfa7f243d648184c5d098ace2b4339023100acf8b137fcf4f4964b4d34a6c501fc30a82ece25d10f5adad56d13ac83f6415385564431f2e28444446a488544ad42140302047c435bb500673065023100cd6b2fe07c235200897e2138900f04ee3154afe581bad2a7879afed76994a0b2580393380047297ebf11c49568220c1b02301853225ccacacec0e415c838755d112f91dc92c3d65a374eac1a33fdef9e62e7a7a181b559fcf0e2bc43a6b3dc37333f0302047c435bb5006630640230074923f31c992b5ff24a38a5225137af52fe41679a6d13bbe9124ea27839b3dfc324b341c2b3377ad68b163511125d89023042458e1868108774ff6f3273449a2948ce0ad016ce934db09c0982571200d09bccdacb1ea55b36e5c5741316ba2621a70302047c435bb50067306502302e2dff381806a0d5da44dc09cb725d68898ccab11b4f7bb77031f42336a23c0b6497c0602b717d86ef03a38b402deb79023100d09e5c14bd11c685ff2cd3c3b92340b272413c5ff4674fdc10eb6d90bf2a058d326e238b417ee1cb2ed1deb254b7e8c70302047c435bb50067306502307ed0ce33a5e334ae171edd6ebbf1ce59dba7c83f4318acfab4a86ae012eec43a5581e65cd047e4452b551ab1a352ba5f023100907a15d0a429ec8ff34e1f34a7b0c25132cf423993cfda8ba3359f73c2b932aee4a74052208c9c453a1fa66ffcf190870302047c435bb500673065023100affe67151926ae054f686b4e21c9c22173a069d282c604016f1aeeb5e7750a51729c40d5711f99d87767967551823de5023039f5f0283868eebc3cd851df44cdc9fe25251af94581f2d30508b2f1e6d05aee7e569823580fc6a57ac65c288da74af90302047c435bb500673065023100df7926336071f582ecc70f0920db88e47de34dcbca815230b9292547d6c6da6345c1a4709e128d381c7a84525deaf50602306b57077b9abf08cfc5f1587c3a68ec7e749801f3bf91d32a87d83dd2fc891855c48c173e2ab990709baa85c6107b38d20302047c435bb50067306502301d7e9b3ffac2836c758ddae43d77183087a69e5344cd4b829d1387a9fa2bcaa2375d0af5a08404762faec377f1639080023100b2843848807f206ed95db884c12de757b7ea07fd65329aea2fd35b68e8201d8ce1a369e077231a90d7b010af5180c5240302047c435bb500673065023074d53a03ac02ef1cfb9ef1a461c5aca74ae1b61f6229fadf7b1eb76ac80f88d1a264c579a246c1e66cd1f8e82df1eed7023100c4edf18ac06c9b1c316a6b672dbff488b25d51f0b81b7ae2b66afa8187984fe057fb11baf79ebe35dd0a87e1a425acab0302047c435bb50067306502303d3fedc76d4ac4084a04c5a15cc2f5b40da5beeaac8720c22e2e1869aa01a1e103fca5dfeb8c709a43493e8e9961e8b102310091569bda903d00aae85e83a685ecce576603df95b3d8a53b464b355683ecc5a02148758cd38f26205a0e2876eac192d60302047c435bb500673065023100d11c03625b6b0459e0167fcae49c96d224665def352aaa471ce119cc1ff362f2114f4db5fab8bae06d1b4bcfef925fb602304e9782de3aec15f936f1bcd0da8a8018db11b7d9c7bebac3258cbf7327387d8b4f8cf4eb28500eb74f5cb5b8d1f3e1530302047c435bb50067306502310080edcf44a92ae96c8772f774275446b60afd329184fc23684ba5ec31ce1c157f2cc2850ab2d9b8d2a40b35f72952dfc1023014167ef29f71948e63049277fc14233c93536b252ad373986ef2abfa304d64ccd27842388bfb0a956a5984b8868252e40302047c435bb500683066023100bd09c0271c83cc5eac9955afe44303046a9d42ae16c2762e8d780d0c81245aacfd1940abccb81dd56c04332d2c60e2f5023100b202d908dd7028db81fba948b8f5ce68a6190322499a06dbcfabc6900fb648f1e369edf9a6a03bc283d363bc40fdffcc0302047c435bb50067306502310097b1468b6b6fb94357185ba61d4ff2e508bf4fcbc13c2c385fb79563007a367363f86d76d8776fcd6e2d4bd8b02620ca023013edb046840c1f4cb4227a11030cc4bfa84b4281bc373efa0f041e2a57ae135a852e6d7c50a0053ad1d5ce290e874c440302047c435bb5006830660231008c2b33c0f9d783b1cd37138401b1bbbf500b2b5bfd7fbddda2e17c3f3e5a90fb4a170fbe9be9a0f7deff61353742ceab023100e7abd6a8c2401fbefea9d59b2de9fac981054dea5abb6b1a1a4ccacb7e92ef5f1a7a849b7513470583a99542cc3c7b6d0302047c435bb50066306402301c9446c87806d502df7315af9a51dca37a28078e43e124121e5e9359000582f5cd4ca9ece442fd8f0bb5410ab722f42b02302f4ed9ee47b9caca237b2a16d7922918bce6371e188a21f4f5a005ae6a1d1b732da7bd2dc14362b6d30da47b166b176a0302047c435bb500683066023100c3ef7d627fab188d97914df799949dface11b42249f82e6c31506e91bafbc60362ab1a7889bd5401058731d682874335023100de017def8a695ac16877afa3c14d7f068d91a6b73f0fa85d7de5e0f147a96619b8a0125b17796d4527d642a2ed521d650302047c435bb50066306402301689ccacda9016046799377c7f376b60a28495ea640be3792ac11a271a330e0951cfcf85caedfd974419b0444f452abd0230523180b5a5d4033f0a219ffdee19d0950ee769263df87b46c0aff77cf23f3bc5d2ba8c2d380f3951252a9f6c62b8e5cd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008bf8e7348c01c76d090d5653dca8a39fe743ee0985b45941d39b73c8b2b27e7c0851d80e3399492628b60f9f9c84d1560230148266afbeb35907fb1558b53689b274c8ae473731c756ac2f5ae84a7ef85910c2d97c9719cbd5dec1c43f7aac5c985c0302047c435bb500683066023100a250fdc0b9b464569ad2e3b637bffdb85645d88d6b2056f073d42fd352062c2923b7ad4ccfcd1458c95a09de560224d0023100f87bdd55fb9f52b3e3c6ceea00d7936ad1b6b1c0c2564abff095c97fb664a76c6757295a79ffc061b4b0d772e610c4fb0302047c435bb50066306402306e95f4718ed97e3e1fa9a4a2e4dfa4bd977229ae7749c3e96149628691760220c9a56af93d0e0231e9bd72110de6287802302b56fdd80f5b95b9731aee33dfafa7f98e048808c611f8bdd24eaff4b37eb5b9277603cf971d35507aaad06407c73ec30302047c435bb5006830660231008bcef46bc1db38e4412a30944e09deaba4bb09450615e31e70c6cff0bce534959d1721ee4e8536060b3b2d2ca14e02c202310088861c370b72c820c75b359e1a6296260ce3289e5480c285866906c4fd17e1ed622258a92f28fa23dde0d1cb886ebacd0302047c435bb50067306502307c479047b369191283b9ae6386ae5fcc5e8ec8107c705890962fb9be7e701937aa578aa9ea588776342cd579583c4daf023100eda3311d10c831c55025231fd000316ff3fd99f4c9b757eed616f639199f48da8dfe136fdb8f9211cbb4aafd56f2905a0302047c435bb500663064023024ff268eb6ea24eaa596b9f02a04a0b3d512a714a6354026b8b01d793a39972a91bbba91b1a5bbf5403e2a8f073f1b5c02307535206ced4d97a472e725ad5e2cdd4f1913a066d1735d4a3c32b837fa93c1877d378d20004599dcee4e05701b1f87c00302047c435bb500673065023024ffc268b607fd930cdd4af4e41f2b8f1ce06aa79b770778554882a3680390a345e86503a2840e8406ebdfa8c188f349023100c884606ba6cbfaa6be7ff975c2ec1555f6c439681b234e080898ba9673f5653640a6ee1d572e172a7ac65e475c4b3cd10302047c435bb50066306402302a9e4c1d8205aab9c49929ffa89eee3ccae05b5b6470ce55996b11690d93f88899492c30b3735045aee86cba0797f69c0230662ba7bc37b2300342c674e9977d9ae4986e4a17058d4733d560ac4710e794ca35a9d78d81f2fc25d5f16bace31bae670302047c435bb500663064023045b01d1d5b3b0eed1ba8cdb9653069e1b959bf3c742cdbd808a2d4cbab66322c8ff10e893fabdc822f36c7831b5571f202305e37a8d168289f4e1661fc1939650bca4071d337908c557b6666221638744334c51e63408468d84c91128371998d5be00302047c435bb50067306502306b946ae615e7a91b8f6ed042f223f2dcb246fa6af8818402b08078a3574242df56da09c7209602bb66a5514bfd8f991a023100a345fdf9776018b1fb04cea080910b9b95e747957f2b3fcce975f4fb2e3cc6c29474652e86b34154b24c84cf156672c80302047c435bb500673065023079a272b8d98fb722b4b4d161a254d00369d7653cb1ebc873ec8906075fb072160470b4314de1966d8a094375390170000231008fded454ebf02664520a6263e1b57a649c6f36cd62bcadb926c8fee97db8ecd2b0737dd3e2c8dd09f6ad448a4943d4d90302047c435bb5006830660231009507142dcb886595daa99917d229e1848d34e36ee4221841bc6a91971bc12644bd37dca7ff1af326d038268e271db98a023100a33204e468dbf31c5b7b0c3e75a21b0e23b21fab51a5a3935bbfcdbfa0c0c99107ceb9ff9af3bda89538233780b646fd0302047c435bb5006630640230403ba14383d3daf2470881906760957fa0fb031d33575b2d196ffca058d2ab8f86295d8d87c85b12e02c6fa32a8315fb0230468767c7e10b3f047e070c293d35b22dd443a567d66e0f19c3c97d3ed69e8ce4e8dd875800c7a7228a176cdca105053e0302047c435bb50066306402302463fdf9b108e0c9a2230f5eca27499cfdee3f1cecf378d87258e256aa770f64922cd9ef866195d3f15a05813cfd264302301e4c178011156dc95c839bd284ad0a421782897117b774d6aa60c34e1774589e92804bb3036cd50a432801cbb91c7af50302047c435bb50068306602310099b9e4797771e1b37a5742fe0162a6e03a821091365ce12acb37cb15784a5b63318315855747e0a05f07ac451e3f8ba8023100c74804a0dd3756c25c77cf86fedc4190cc7183b9698777dcb02243f55d177b5504ab1ffa6918690f2596eeafba45df2a0302047c435bb5006730650230536615d8a8b3ef256b472558541b635e96de0e0f7944b47bfcdeec790c880577926549ed302d01a4e6565c112aa9d2a9023100f0bec2cc6defff5cc14f3fe1973c45cb9e5e3afcebd0cc03fc697a3d9ef46560e3a5b9f7a1dcfaae2459969e6c090c880302047c435bb5006730650230259b43d32634bf7e080714be93bc4c54805f76d9dbb714f3d49baec25049c2013fe222df1dcae726689351de3eda1ce1023100e52372090d6e50c8179367f02ad31f7e7955795bd3b33f54411cb2f1430317d9e5970987c9f542cd8223c9ac48e6ab4d0302047c435bb5006630640230155f09282131ed12b7e1ffcb8c979f4c3da92519a50ddda3ae359b56706799dcf3f5b85ca807a98e8c62eb44458a76a702305b31b0cb9741e039b3254560612fdd0c6b7f78ead7a9ba8ebba9dce8f3a1df12e57aa720ade5ce66f210d1015d4c7bd00302047c435bb500673065023100acfbeb11c38808d02ce50ea8c02155f63cef1940900a31eb51aa3b2af6af4069b47f423a49124045247cb24981b6d18b02302f2bd078fcb71b00ca1d3d21a61286a2f9723b5b7dc0d9c2d137be7ff02cf0285c47b148014e25ad650b083c1b1175910302047c435bb500673065023100d512dcdcc492b76080a712ecb31ae9f65ec23e58837aa13344ca9a1088b7052109c716d3ec3bb3272b816d12a7223ac2023007e702115b8e2809a5a777d5f4f9bb2d58e35b0eb3749304aa56bd3c6d654a67f04cb6c82d89e9a49e94e8d71e28b2d70302047c435bb500673065023100aa709430f2b79e55e66dd2cc2d3e381d587ad4d8ef24432b73b5648ef24c73c288554d5a74b6790c46f02c71563e8349023047c13737134d22bd7b3cd298b3f62f716ec941eed26f48432419ec44e22ac8c706ab90b79c1ce588e08f14d25c5864340302047c435bb500673065023100ffac3c2afa81b84d0cfde03955ffc49e8e456034b02cdd178e49cdd6cef307b45068a69251e75716c5945543588f1a02023069b230b6af6783ea9f877b2b60fe849c2317992cfd5af9f4c56e8daeb776e4c1028e1b117602a6d0a9f47ea108ddfb8d0302047c435bb50067306502306a7c1c411be60d0aa0513b7b95a9e2c9f8d2c3cfbcd7ead39af1fcdd67014834395533971fe69841fd61e73f4735692d023100869f6699efe13c55b3de263b970b4de447aa903dff1a8f7fe2c0e5cb1ad7e73fa58cf27ddf6b928e463b9981636adc550302047c435bb500673065023100d14ce50e469268abaaae80e47f661dd8e3c27619f8909687da3ec90676e362e595f97a3d7502901c1ff68f4053303bf502306249b3e12b2e779a60eb5a373cff2a018e4ab759828aba6d5b5be3eec529dce2b423bb4cb7d3b32957f84742ea8717f70302047c435bb50067306502302da9be44118822825646d6f5702f0f2ed0f1eb88b33f29950fc7d855b1c77b330ac1fd59a951789340b28782ed5fa2f7023100806e6976a199f1a63104d9d5af605957b06cc311174b1209532e9c232d52d1d69806d72d83555451b5f4ab01173bdaf20302047c435bb500673065023100f0c2d11da94e7e88265691a05e7fc903c10a39c8c5e0b9b00ad03858636804852c5185399abf92f11ffe277fb3c05b000230330f459beab953a4035e1e6bc3d699e2bb1a7c13db17235be601807ec53b1b2cee15eb278c4e080df9b8c602463378720302047c435bb500683066023100a41aff5f586a3306ffa1944e0bb059d3ad70dbdbeaa27a718a091c69009b62c2a2bbd7ec06713c29e74baf8b0874d978023100cc08267e872d10a37e4fea5b60aec58b7cb4cef7fe2956e9a5a22b1afb473a4c61a643ab90e8ef8a61a93fc1af7692620302047c435bb50067306502304be99f3d3ebfafdd558f3af4b377c44f380985c709d08c2b40b546b84b32e10507e6ba83388282c11c2ec7c0652588a9023100e16debbb274368cdca03cb51b647fbeb827b33ebeff2138e1cf00dbec59f8fffb4b37e8d52af6615481efed7b9da87600302047c435bb500683066023100d5f81ef534f38f4a97faaf4dcdef018f7cdf3818fad4c6ec1fb6af67dad54546e0e2ba864100f44ee699bf2d6251e591023100e4cd855e42b60e09ab0f117e32489048a1eabf714192c130d453f173a184335073c7b979620e49015faeaddc9dbd93ed0302047c435bb50067306502300a669236e3d9a25391c43b2d648430063fcc0d4754f9219baada89d1d686ca1b4123814851d31c21a8dd6d03ada70c6e02310086dff48790f5e2fc3aeaf9ff5faed298a427b24a830787729cad5077af48750ffffb665b2bc75669543d4a12389202a50302047c435bb50066306402304ba09fbdd6547c817618947b7e37de58e578e89de7ca942ad3b97ef8b61f3d1779b5ca31743d3200e1e2c0e2d2ccf222023074893d91949734520c167714cff4655158884244bfdc2d5ebca36ce6d39a4854cd098ea242df624cb78d0b78fa34e5e40302047c435bb5006630640230102cef724ef33616af7c9ebd6d14e96168160d7b532885a139e67fefb6be249fd24bb033b2eca3b4486f428a59986d35023024e3fbbeb3fa5079a3c979e73e6a3964a9470af2c0dc0a6ad60e4d726c2cc942b26e3be01b4bb23187956651ec0c4c990302047c435bb5006630640230457cff234a82532432e2d4815e613a9abddffe6e6335d5e566b215e48cdb42b1aaf719c384ac9a36926bb2d31c4059e002304f3a82b21dcae106312996d8c5291934e6584cfedf1ce45211824ed96141e2df76229c9e93fe640e9c32f89b839694c10302047c435bb50067306502305b3c2b3ed7bbfeff7282d02787521a090065dee09efc4b3abd90bd7935154d2405e4dd2ac47af24f57f6373d4fdd8ef1023100e8dbb1956dc908f90ff4601cdb8654be4844b0590ff3813734f0d56356d3096d4ae57054f6bb197a07e772d83a9ce1a50302047c435bb50066306402302c6772565cb2e6edfcc11730a3e4f4a453e9230534fc0d6e051ef799677b50f9759cf9c6eec08032be30009a474cacd402302cb20262549a240d6ea4ac96cb1263cd5f00373eca826ffbeb9ad3a24a2be872baaac9fb76390226015a1ccafc7a90890302047c435bb500663064023022bf80f4aa0473ecad6e8281eb7002c8e2d5e13436d52e62522003e5341da91b304bd3157819a25cc328609540a509bc02305c436eca25b24abd55092c601d28c805dc53aeaac07ef631cba2d5100879768398ac71a8f0f3aac38268c8a6d826136e0302047c435bb500683066023100f2190d4fe3422cc6a763b70ccf913e9697db849807d4e027bb031f379e67f7f7b3375ff88edbe1f27c43ded5077ac557023100b61a83b85fc8fdeb100ec90e7187c022dfd8f6c54ae7c6cfcc51851e073844855e99684125135d85a8acebb2dd292c160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302cdd3825b25e4b5ac4f2f8b5e162a8647d8d000fcd63a6abb49fc12d4c19247d710930e64741471b05f373eef29c01d802303a1d3a62bfa733c6ff74e0483c674c3b9a05b56c7551cd552110af4d4fb98b07f2b9e4eeaa45a3c65d1498d3743bddbc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306010ad340dff0e3aa440f040660d14b0cd69b5a21b04039fe176c84453c8aed0836ba0d32eb02338e537504229c0ca290231008215778b7c61aba31ecf09aa6d609d9f4655dd78070b03fc2accda2a1bcbe5c42ee16a0fdd851534e95af11d4c145c050302047c435bb500683066023100c09df204c3b2fc8ec87f2ce6d71e0047b7a4b8a98f9bab4ca3034f8aef7ee0f10e927702ac0cb68e07630565c6495d880231009d239419cc5360b3eb19a67cc055cca6d43bf12414d8317b401adf9bdb3fc74d09efdb49c63cd61278dff9e7bb78c48d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310084499286a7093220358d5b0bafc85a2906329204744043730e56099d05b47abe5eeeafdd5239ab45d44921446926f19802303ea1925fdd0fbfb1e269f952f9ff2643401ea8b68b5e462999276c077be34045d352e9da82235cb8dbbd1ddfa9b3c78b0302047c435bb500673065023100e3c10a0c41e385ab7a61e0b009cca06282457bea15101bdf4b03e8fb3cdb3d8e67586365938238e726b6c362011f79dc0230655225cae08285d62822d649086d7615d522b6c516fed79b4123dd308c493127b1284196bc8a1f30cee79c1a91fef2f90302047c435bb50066306402303562f2ee74a412e03812b31571de03a14a82622e7c36432ff73494dd271368c2dc3229da540e6e8b030dda2832db77ee0230784df0ae03ac9e1d065fa8fe913f3e0e611d5c4b07d80b4c5f258ec7259ac7d0ef252172a56914e85ee20eee3c868ae70302047c435bb50067306502303dc412cafe9d5e184bbe4ebf0174d8e7284629a50ecdcef669bb74d74da592c9bc2b4ce60dfd28cff0498ecf4e25c71b023100f0883df88537195f77da9587ddb4d53acb60b50f2b60c97767fff57380395dfbaf93e80276b14c8bd02e535ab955b03d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008bdd52c245e1d706a4b62e37e5be2e822ce4b11ae4d7258fcf93281d13d06b28da1e6560545e96f0d19281994b2cc4e402301a0d97cd63ed69f93ee345eab1f841bafac6bf8fd3312a6a5e729f179a4cc89677aa48c615fa9d608714bee3deebae7f0302047c435bb500673065023100de37ee163251563d04d4a7ec3025a82eb14abd204cc6938ddc4cb835d2d863a7dcac176a4fd89d5d232ad5049494c76a023036d2d12aa13b564a0e117dde1e93ac109b931d8379021550989159871dc5ed46a6274f9d02172764af3afa08d7e9ca970302047c435bb500683066023100f12bb40a0f845fcbc68e1a6191632af405a76233addc7f18d08c01f324467ae7ef68d199263a2e1c97ad01e0f78bbcfe023100cd96bed0ac86ab11fe44ad0f3893f1ce18e6b4e8199eb477b699ebd375e5d881a0c4e3fa7c7f5207a8cd236bef927c6d0302047c435bb500673065023100904391cacb3ee179f9845c042b16e2d60117592a935e00c101b0afc448e803224c8c73e62e79a7dda080e1da5ca836fb02307437fee9bbb019ded0fee047e46e002323b11cf6f96e1108c089ebaf3c7f963196aacaed6fdec693c5a1abd928c025b60302047c435bb50068306602310092761ca9eab86012dfe74994ab71aa681e35555a09de4721d75283683dea600946f4c90b5782c8a4c0210d01d603c709023100c49bfc0b2fe4252aef1125019340de1fea270353b16de7d93ead0da87cb0600e210a88d466f7faabeb1dc38daa2896fe0302047c435bb500683066023100b2362a9068784dc38792cb4c64764c266ccfc76d43165f60855f47f459aecd7e9257370b9adcb44471a03e143f4fddb102310082d856ca3d3e35b69618ad063ac7dcf6d6fef50700e660449fac48e8ecc5ae3da83f7e3b5212edc68420ac3e9622e6550302047c435bb50066306402306f8faae3e4ba7597d17f5868abb1348c990ae93e4c11b47a76693abc5a10d79fa30df01ff024bd3ec7fdadb6b940bd87023062cc7fb28ad4261e0a6907fcb043283f75ad02f72ca2de5319e1d101e6bf5f2b0aea6e39ad71cb9edd73c767a3ff01610302047c435bb500683066023100fdd5307aa6c1dfd2e8e61b4f8bf945ca4bf888d8c33a928062084997223ece295ce7a02d634def5f69d62997a3251735023100a72e6dafa69ea2fe959e41f1e9a34d7b12ded137ba3efd7ff6bd5083a22e3d3909ebc581204750549562bb9c5f0ec0f10302047c435bb500683066023100ba0bcbf4f779c7a322fa843c32abb7a2b4cca73874285b344a881d980301548a06543f899ad75756a934bb4540b7e098023100a09423e72969d34649f25013c04b94091f0f69501d3024c7173aece68f4e2cde395a4ab77692e344d8225f8b76ee47e50302047c435bb500683066023100ca1261a5aa99a2a7030785dd707860231a68ae627673f264ae0c310b31db8bb843f55eb5a4480fcc52930773a0ae2c24023100da190485f5ac4136e23fca4ebbbd1a87382443374b163b9fd3971d23173fe3d38a6797a6d6fb6c9ad8c24ef10a3ea6dd0302047c435bb500683066023100c612dd9f9c8452ae1009f29e7a85bd82f0de6a56fe85652f60f6fef6be823b8e1472387891211481e0888f8801d5e5cd023100d2d023aa1d2cacba4a780bf795414baf3dd5f3d51b98a6c065204f4826f1891299655ce742ea532909ba18b4a08c1e0a0302047c435bb50066306402305e5e60284faac32f6c16699ba29c8900e2910f5f72484d8377d2fea7e2b134d4530018ceb146c588d6477310958bc973023040600710196fb88c06bd3f0569644def18887f75aebd26c1f0f6dda73517bc154f24b5564c2bb96908ddfebd7f7e07b40302047c435bb500683066023100a4ec808a6d114948bccdba9d2bf321f69339c8a21a780d9bfa2f2c271aca0036e9ccb623f478f4784cedd0e368128210023100d0ed8457f0b9392097f12a112e0f4f85256a659f85ab38f7439dbe70473604b89a8fd587622c9bb0968711bb4741cde10302047c435bb5006730650230456c2cf8652b20233b42e64b1b222f3f3335432aa84b3bec0653e63bbc3062b27620af22eb5fd161fc2a913a4d860b5c023100db13029de7fb337a33cf51d68782bbd4767e90336d91d8b8bb17033b9c7fee320ee503ce44b3346d4067f7a8c6731e0c0302047c435bb500683066023100b6cffb79d74c05420475f545554b1213259be9e73eaf62e48e8afc64cad2308de4a4ad01af83f0e4a31adae32d6cb99e023100af6dbe610b1a2105bec6b4bc118dbd926798fa0d6176cd845116ddd22908a9aebfe35077dd546a92cebdb760c5008f570302047c435bb50067306502306ac690e3f0dbf0294c33d9454ed0811decbf4a3069c6e9af6de4229ec5d3de44b776e986769ae3e42690dd59ee0ad635023100b552c25a7c6febb22b37134031c567eb3281378f2d88ee4cf49b54ad24195ed0396775b2c7c1c83d75feccb1ff77b2d60302047c435bb500673065023100bd50237b41b52c8c72f2a38175de238cc778323b4b6ee5f901507582ba9e7f526824fd9230c7e5dc208a3b8802b3a50c02304794b802bed0c0e05cf28a1afdf09da4f70681a8c0bd5d11a7b4cd3e993f35ee4b12b35f40ea207507e2c3fbab14a2400302047c435bb500683066023100b3bf60ec6ec5a3ba16936b060f57b9f9ee1fa3e7519b4a0d741bc961466c9eb2634a17114fc797cb191b0f9ae29d6783023100edc46d9a7d818712ca4642a07749f330f30089c32f21d892dd5283ff176c107767545d575de975263b251dc775ef26080302047c435bb500683066023100eb34c23185dab05292c8d9baa95250e88e5f5843360826473091a052f8b9f0b186296e445eca814ab61cc891e2541b71023100ceaaf494c36b71f0d4dc9e1d51367b8beacf10cb19ece2f52d7df5d993e04bd47113228adf8392776d412b422f07f74e0302047c435bb500673065023100e00cbd0128b73e7e42c2771246fc4cca5e0a5e5491ca1e0d6a246b4995a325d137b7f7a129ecf4a1f6b0c5f73f0110fc0230253a3a0844bdb2f3fdba69df5f7b2b126c663935e7b957b66629f08a2679fe574cde89f250f10912a4e0529c1200a37c0302047c435bb500673065023100ea24d6a82c19b7a275e3b0f78761b9ea51fd4aa0d06a8acb2e947a6fa7577b8fcc415f7f1b08868daa84320d7d90bec00230213d195cd609a972c80f0c62167a41a30236e071ff0da62fafa25add7a35aee0b89bed53cdcc8209f7fd0fea28df95b20302047c435bb50067306502302bcb8cf281ee3b6e8038c82e4c4b68be29f20c8a48469f53fe3e6b830bd15365fe3618380167db2e5b20c8aaf5a035e0023100fa9249bfeb58ae6902c1fa817793e01a63c709edf0002652c8571bbd69758508a7383ad3b683a7739a1f81eab3ef2f230302047c435bb500663064023060da0bbf178c34064189c4e5fcd9caa5efecc061e959642d2a8bf1a93f3ba9141435ab51e9c7a15d5312b4b6d1b5d50d023050935f8ed6b6927497c37003ec2577153a7ddb63f194d413ca2762c207709ba16518d0e9565794e0101efb52920445f20302047c435bb500673065023100f211ff26c7c6ce12c0f424af0e65485a36e66d7827b36cae08d5e3fa151e2e7ccd11e7a74d5de0bd3ced35abf1bc3c3e0230308493531b9ac5991b0a33038cae98561cd33370350818468cf406d1aa5381603e971ac8a5773bba7d0e948769b9631e0302047c435bb50066306402305c22dd9985387d269ce49d618c19f70cb335da6cfd69534edfd90ea51dc9eb19543150945a6c3d6f7f62a5c5069a819b02300a693600d8ea024ef05f2441897049c4e4bbef3095fecbb8e8be84e77b865cc386acc9562147c2a533555cd29595c3d10302047c435bb500683066023100a95a4e0a0188235fb31596dec6d7badeb0848e50d8154f5e9d95214b2b4f32b688de9d6d95455b1f5bacf3f6f20118db023100910c429a601801c46d58406b30c100c71fa0062de2ac0e68853eaa04c20a531248d6a513bde35081a1d2a23a65f4c1070302047c435bb50066306402304d72191c898f4272362f6ecd7b76552dec0632c331a8809b32be9ec1bc096edf3c6558d2d0954f4b4c4116196221478e023008edd563a4fd8196d8eac1e4c517b744182a8744c9f1786da57362b57d89d743275a39bc00fce99e0dd174e9aadd6b180302047c435bb500663064023036710931e04479cfce714e20b65320f318416fa65df83de5299d3743ee256273a45ea872579a33556dbfe15093ef9647023073ac7a4adc14db58a1d42b8aa154458a25aac6f9dd36566290accf078db7f6c41f9910d8bcf1746c0c451235c2db76920302047c435bb5006630640230488477ea6fdd27e8d4b6e34a2f405b9f207ab4a36fb364da21d251eebbb880387bd8bfceea9735864d050d8997ceb5c202303c278af633536583aa333128f8489650e8addbc2c05c8ec4028a4d4421db9ca7331f3ff56a2fd883ff2309f0625ab9430302047c435bb50066306402306463c9753b8c2b82a5b1071d55846f084817553a3f61f9ece6fedc34146039ab81eb5a656639c295586bbb4d0f6cdf8302302b20a4ebf1996bf791862ee969450dcd88b6452a55f337121d97739eff1ff4aaa3a22652ea28ed650dd5107efef384920302047c435bb500683066023100b24f64103b9f7c173bc0ce4b81ba9590fc7903c6c19b80a3b43d49f54771d0d950211968b80da8efbb144bdeb5120ff10231009ff710adaaef16609c102242c1b74060197fd0fcc368f0d6edc1dbd38e8379c6a31169b72e95ac6ac35c9db3b4fac9370302047c435bb50066306402302cdfea0965467abef7936ff17937cbd98a039a363d757bf5d7b3c4a1b51780498f023c9d50c4418c83bf0c1f8fe2648e023046242c372ff833c95bb8cf77729714016e0d1fccb5b0487dc3a237e59cbad174729e16b53f8634a6c1e1a9148d3817dc0302047c435bb500683066023100b861f992bc4db8cf7fc9c52d9b96c4aa56e5ab180da55a3d01c02e7d029b04a61623214939dc2924ae16de870fa73783023100ea17fef061b7883b6f894360aa543bef5e9157cf412287f5c53c04e9f5256829a6477deeaba761c12e46c0f7062018270302047c435bb5006630640230452bab84c18deae4edb13062cc17644cbb6de5be7afcc9419a22efb10398bfe9e69335fe012d0dc91ee7caa2245b3551023030ebd8dd2423210b0bc18aa639cd1893ff30b608ad06db5fbf596f3d84c4ff00df0aaf4278047393801698ee51b0dde60302047c435bb500683066023100cb13f3e91b08197a9a53a349e2010156e8ff274786b6c72b184bf7f1b40bb2878525414e389054ba8791759ada3159c7023100cdbb0de17bc29f0d2a5930b509cec5a318d05b9eecfd033d4eda39ed3d380d8e606bdedd975fc47c26efd0f61d8e9fb10302047c435bb50067306502310098b5863900a6b40a9a2030381bcf089cf2e5b8f2de0114d667c0a5b179bd39fdb939116abc906fe05f3e4803f40e455602300fe583ac0a6c031c6e818c55e409e07fdd0e3e3f669d72f46112cd5a6ece364ea37f1b1b5482dc175dd3788a66a40d6a0302047c435bb500673065023016ef9b137164bc186330e15e9cc3fe1c633ddb2cbcb9419e73e4bd3af29a436c8f648d5485545180e10d355f06ac94db0231009ea3ec22f9fa79362b1c3f9f041cd308617ae93fd6dd234c5534bc813274f4c07eb1d4eeec42f38581f0785263fb0a2b0302047c435bb50066306402306c0974a351a8525cbac9f6bf2a31814dace56a348ffe4de20bc43e7c9ea10cc1758804c8dcdaf2d4963e8b3fed67829d02302514cb5d0ee6d6735eb088856be80eb99c8ca5c84ed1e1cacfd661af1be32818b74c9fc3c268cd27681376149e17cb2d0302047c435bb500673065023100f65f9e58542c5d616875741456863d968aadb36e84d88aa5fafc1f1d1e05e9abbcf6eb70f8a12dbae18b6356591aabe502303878b42d417924fd666a99695a9c238153f2ceb124c8fa494440cd252dbed2feb5281615b399bc860af74df7eb9cc5eb0302047c435bb500663064023047c6ec7af5e5ab79037ec2a5458446afc9b9cfd383889f021731ad5a503ea855df396cf76d77635ab86ab35c4c45fbf6023020f07dc9cf639c73d6cb7e7f11166e9b120e995a1fb5e831e1d6cc8822ba05ef846027d766651a8a9d18f70e65deeab20302047c435bb500683066023100fc1e0ce06e0c547af4d8a4c60c0759325c9815314592848432c58493d796842220781c3968cecd0cfb727259eba44588023100f01cfa341015938f55c3a33c5fbcb8c8c3ab24fc47e726aad12f2b2be969fcc21cad6df98676909140be2b5963a794f10302047c435bb50067306502306353f20ec59a60f5f98302c730f604133ad8b1bf7e562c39289d49ae7935f4f3b025aba02d442dd53fcb43f14de98f46023100f6b2d9c13ae5d5171d2e5a809c36a0292da7bcf9d689a0bcb598eb6d306aec719551059668b233f0313c0a56eb0659aa0302047c435bb500683066023100d47539a5d20c41d8904bcddd4e146c2c55a618dc4d0d0e95cad039a734161983b125c23aca6d6be814449ddd862ac2a90231009926ce93f46cfa0aa0acf88c9f613ab795352239a51d6e61dcb66a1c811d5d41e35ef3eb58db5fa0e97fbe36c26e165e0302047c435bb500663064023020aa025543aeeab1bba59fbab09e92b41df3d20f020de14ba5837b57a47dbbb9e420efeeebf15d4aa843c74d4627eab802301121a0fceb55d9eb307da80060cc4b73a653ce303323b64b233eebe316baf89f724f38bb8cdc7c73dc2a5062ad6bce5b0302047c435bb500683066023100f4a90925ad2cb3c203d82a4bfe7d785f64e268328a0acc1da1d82db27aad6eb426ac2ce6f6847940e13369b8ce67ca760231009a64045f346b8e02124aff29bfb5199b4ca9dc1733a01faef6d6d66c1b14921810db0878131dde51448d56490808bd540302047c435bb500683066023100ffb96965a8e15d4a0634dbfc2b09bd86dc61e2a3e7250c41e9b8bc5c6a756a3484d6aa61f580a01f5021f16a4034eb530231009154f92d299efcd1de3d9b3bc7ce29914fe3d1dfce4f1005eeaaea9c55811ef1a5b7398a85c4975c659400fe24c3c1700302047c435bb500673065023100f25ef3c22d35b133937268d34028f4e73add6a3e6f2f04fc93c2cf6e20725c82afa4d0433acedd2211ac0d035500914a023018b02afa3905fd9eb1ce625289daaa1e44e6c683a4eff5e3981aca7efdde0e9cb81b8ad89eb317467b3c721ce2a6c0c00302047c435bb50068306602310095e3946cc774da8cca968df9eea85f1f4f0e894a407fa7edb3151a1407afae65de928d12b1eb3fb4472c1aeb93da25d3023100c3e6e682de7b5e313c8337bb4a8a40d0a8bfc165ae02321a27a3dcc1d62f5d653ccd25f4cc6ed78a49d9b64d5f7b9b730302047c435bb500683066023100db8639aa756feff3c922bd6a51d7a314e259539deb25816c8777f24dd360ae49503ea4df536e0af2a1b5c395f178d72c023100d68de0b2119ac1bcaef8e391d190e3d850400b3e0e7029f4f4dd3c2cb0361b5e1fcf42fe78352e259c57358b4c904f570302047c435bb500683066023100d812325be109e89bc2d29bf0c7150ee1c1d81c70072cbc6ae5077b7ee97038482973d6244f868da5e8e477cb1986143f023100af305a957ac7f61aea713409ff181df533c07b7307b3a6041d6210c128471284782ed8aa85d6253bebe435693ab3dd610302047c435bb500673065023100b55f1035180f9750693c5f720d9d6bf7358d20b2fbf0e046fd470f0729eb9f2ca65ed44b62689e2f9319f1deb030faad02300d5595d37b243c6433999fce08b36f86620486acd4e0f3eb44b9eab38e8a11bc495a73117cd8df19564ca23ab7dabce80302047c435bb50066306402303dc5e628ef8fe7cd4fefd8dd8f6d7aee03c819ac5db0c28caf73ba111da6a44537414cf9bc1e28606ae138aba874894e023005fe50e377d4dcac6b55243b23b45dc1f990ac171e976c8ca9da27bbb75c2e0134999034f0b203d4e32ad66ccd3973810302047c435bb5006730650231008e9f32084adbf6a97619464767f66dab780269a34fbacef343b591ac477b49fac2e9555029120ea87f5f07cb83708ad8023079a7317ae29224e664e3fbdf7cb4ae7d606a2da27932a8ecbdf41293ad193bc34a4e42679f36889da497873ffe9a3dbc0302047c435bb500683066023100e26b93f185584303ae860c76b8cd89a87295dedd56561d3aa8391f530ae516540c605cf9468a42c24c0c7431e3b6366f023100c39dea37fa5ee4f9644561a18a7c7ddee6fb1b79699b49745f635bcb53881b54ec73a824e7e1602782633dad66d731980302047c435bb500673065023100c810eb8d9c1e620cabceb32d9bf341e8348c0aff34b6a008930a8b12c5bff99ce68affe0fdb771e85673e3ca95587a5302304bfb23f5e9fdffa35bad3cc420f335c342449d321fb8d277be7da824369b258c1f50a31f13dfe6145b971be6cf0dc8e60302047c435bb500673065023100ef31454054615860f3e03fa1f357ba2d0b1bf76c2e626a9de92102bac52b660262fc653bf83f61091bcc5890f6f73d5b023008dc19653ccaeee1e86576184f379f071e9edc89c73bcf11c2a8c0b407656900cf770ccb8044e0762b073e5de986da1a0302047c435bb50066306402303f8b3145be4c6319bdccea9fc5ea2303b70f65af82bd2c1b00cb6ecddb1b784f22272d7ab8738ec32fa81ac11fb8986b02301413f7120a49f77068065da853e38ee6110af4dfa01466d54c3c5d4220487ff7314da9217234e82c08c2a9dd3316b9870302047c435bb500673065023100d41ddb4620ee4af8c8a52d82a0b06d3046f060950a9bca42f7583372f9927d1b27d6e7bc07424a8a45d6561f40cb332e023020cc7e9c7689c1271345418b9f599317cf5a42fd3515ac4e637ebf9882d2d7bc0970855778737839f60707785fdf0b2a0302047c435bb5006630640230586293795b80d49436a9f8259e52f5932b6bc21e2cb24d040494fd2a88f617c32aa72bf6ed1f2134b1352d9792a6e0e402304363f83e32574e5ad91055901802b3d1bf7e0578462b17c866767dd8d7eb5012d5f6ef229d7551bb2c15fe187ee31c2c0302047c435bb500663064023042c1e1ab41e6625334315fea73a7eddaff26b329c02970e3b1491b6104f41671d53eb5fad52a014997518ee37ba3ab1e0230773c3e7e2d3bbc34b72b0a8aa5f9bba52a5f0f64c706328c28bac53a5bdae689c7834aebf539afcb8fc8aac977a264a40302047c435bb500663064023030783a19cd1bcffe9a89e642b4395494d666ab5cbda064b9da306f128de2aff4ea852911950e0330c8448bfa30d224aa02306f15e6b64d9c2e5b5a24812964ff870761a53ad9c5b43ac248ad87002fd6deca47fde4e22bae5157e8fd42a746934b570302047c435bb500673065023100f5e6d239b9cd82a1ba999a3492976c5513aa7eec9416208832ba274cf427ea9b1a38eaddcb05a2aab3fe516e1ff3ee260230216a1f64ed93d98eb26b720fa46e755cd8f121da4dcb4e32c94c741f0831e2db39e7a84e59a8c0912d2bb5aefc49fb2c0302047c435bb5006730650231008ddc78d55340742db6adc5b72fc76e75c4f26124a763e801df0ac3938ae89f850cd9cd4bcc72b29e315e29595d8e123c023006baa6e90efeeb236629ee0ef27b030d514c938198ea0e4e3b205add8b8cdb73ce3e53b5bd1ab03a5ef12c8e2355a0800302047c435bb500673065023043d7bf5987d9300e1c8ddfff860f9749b25b9a7e90f47df800ecc617d4df3b655f9b70101fa07f5efcd796c64fc87041023100d3ffd17630cd3e120fcb8c599c752d0ee84fb61d5bc31b509d5ffe2431383ef303edccb89224ba9b91acce56fdd78b6f0302047c435bb500663064023035cf7b2e04bb1276d47fcec3da0fa90ca99334ecfffe53677dca5cd7ddeba128961709a888d8d7577ca6064e9191075202304666dc1dd5835f0e428f2fbd92108fe4a26969865b4d29830bfd2cdf28faaba259fc7e4e7ec97010b891392dbbe1594a0302047c435bb500683066023100f0dd527a8c0cb8c9bd79a3588f03567c2161a5b1556d74a1960c77d85363a37b1f63f0b3d34529e9e5dad1d391b1bd6c023100fa5eb96d7d024267ff9c79206fadd4b664400a59bfea3927fac263a85e7d5395907cc48ec1533533809dadd7f5c078250302047c435bb500673065023019c9216c8f237dce1da829a4c1f22d1db3164dd3fbeb50642110cd1711d1b085910aef3e7d74a157786b8ca64b0c7b400231009fa1b1a6570d85523cd2bf8dd5122383bc0742a45302d49a7980904c8459e48e9abf8d741706b0949ad54453e50e56d50302047c435bb500683066023100a8b055824d1fb23bd6c7b4caa989c6328b13a6de2487a1efbee2977a45c696b90450508f221e00eab334b302768a334a0231008028fc4f0219802c423a36b1a348c49e3736d5da6772ffa17d2f9d65a8ebebf00f8f9ab8d12507549f32315d18904a7c0302047c435bb500683066023100bf69b6d35af8dd4ab026bf51fd374218d27ac716c9959a2aafa2c4fd6e0abab7e063bfeee11a3eaed0336c258168acca023100fa74377f63b2ec238227ce778d5ba375e797e139e0f4c62d1472184d1a240a9daa6867ab819bb5ec556d35689a5b0a2a0302047c435bb500683066023100ab4bfa98dc7604cb190bdd4dc27529b4a571be266275cf0871526ee0ffc3dbda74c864063acbaab5fee96c0f7633e920023100bf9a9b6a976595eefa8b8acfc70c04a3ab61b8a035a19c320fdc1c4f658883104529135107b61b605116c68f3645748e0302047c435bb50067306502304d867464e62e5c0c01fe6e2d5a0956c1a54078091253f4eb62d679a0f861b5723febe6707915786bef774a97bb6e7524023100bb25a95279fa95b0ace5128a7387567d4c0690e1be1ba29c6e4bfc546dc4ae8950a8c198406fb84a35cf95b019d44a700302047c435bb5006730650230065f1baf20e88f77507ea5ce0267b32360714027f27053a6493b24b91b56786a608c9fff7e945b942e38ac0c903d008302310085871f5c757296b0fa177a10687d415d80ec8610907efaf19f0002dad9ea0dda6cc0a23504b819b26e4cc752c5828d630302047c435bb50067306502305f8afd9f458ace5d19ad862b3f971520c49a86de25cc7bed56cff71e6a12b503ddde4112364b80ce186caa7cc2431477023100d40dec9de584e1c8d7dd6cf96781986347bb1946a67b68ef47fda5dad9aaa5e078bea78317c0787706c2cceaa279d8b60302047c435bb50067306502306c8a3b0f83aacbd695372773db6f75f47d88f217f18d7514226de9266e54b2f53b65a35d4557d2e01fb167d711360a2d023100f8f926ead777a25bdd0bcdd3b95d37d8b4a2d8543d083c0027de4734f099e0277310b82c3a9b2b1022d6b08a9e9cd7be0302047c435bb50066306402307451bf0c7868ce57ade54034e55d405021492b37a683ad374d4f865bfdb3ae01fc47eeca962291354dc97dd85dd303f60230196ec30d313905de1ac9804dd62b0908cbe64e55a53e6073a00f775232e4b6c32bc192f1c6a13cff67e2ac19d619bb3f0302047c435bb500673065023100cbe0c786eca44cd7ac584ad265988292ee37c71866a8bace661d04fc8efdf4eaf440ba2a988cd302076ca3d1ea6a0f8e02305454506d63640838691cb8641334efede26f15cc3c7d4097bf7fc7f2f3be591cb3591b1a6f23b8eea37e14f4913d502f0302047c435bb50068306602310093af029039d1811e2f4998318f0c917217fe9fabdda2e92cff3e26354437309e726ab846d96c55da6873ba88921c827b023100c8fc5fd2e6b63292c9cda4248d7d16b8f259178003acc7331fc79c674f972c53b3690885d3b035cc100d4daa6ce826fc0302047c435bb500673065023100a709d3842a1052678f002f590aa0974c26620f4fb0404bbc9932d862bfe3b5fddc4b3779f7cdc1687d46b35b3e68cb2202303711a322c0f7573918077e39877bfa3ada4bde646a1ca296997a676d6887b664163ea80c9202fbc2e2e72ad207c5b8330302047c435bb500683066023100b695a395bb24904f1dee0e0465259799bd5291ae5a79aae5260fa1e1462c8c212437ecc75f30cfe3df27949c1e3e567d0231008c4d81f7d85cb3266b49f80258b0a56b4df650909d627de2ce3a0e5a64125564dd3787ac91ceee073511be651e2557060302047c435bb500663064023039d8f1ca24eabe2a5842e1ea42679b09b50a7b4132a9a5ed56e5ab419123e1414af5f4882adeb5e9e62688d683efa02e023019c558a86763f7563a803c708b98ebbc96976aa2844d4da9f4a8c52a3a7957eb8a8ea6f71714a8502b8ed8671e30315b0302047c435bb50067306502301a827bcac87852634d941645da893e5692e899f4484967dd81864c47ab76083f5888fbdfc2514c8b4adc660bbcdf5737023100ed2b152e51b3132f6c5b41aa28a5a7d8d400bde0cbcb4a467b8d41459675de2944a558b8301be4d2bac1232399a3eaa90302047c435bb500663064023022b69e385c3d26bcdbe7291ea364025703d861c00832c0bfd7095416a7b8aeea6f473bd9d037deb0e5791f453ca8e1db023066ba75ea126efd935d3a2856ae70f8089f41fd54f56de663a3f1008901d1b6e31a755d2d543acedccc160fe630e6b7e90302047c435bb500683066023100db01fbe40eb970f2af39c5cec9b482e48a9528d18ca3f159d44187dba7c7faa5851307e042d859fe6330da9a156d2dab023100be853ad84053c6ff61d9e88c8926cbecd003434101db489088a767e1f5872a49acb235740f538d5c61beb265978d73560302047c435bb500673065023064259b2536f97ecabb80e1a11bc3f79ad483551427d839b191d6b1befbe6843513c9905effff4a9749aaf8a1fb4200b3023100ef541ca5cfab97acc8634da3aad0f442a1c91c73fdc2a9fe24785d000aa9087060ed6c3df908c3c5e483d862da0628260302047c435bb50067306502303412d19055edc5916b0056fcb602f5bcffddec0e24e418173d3b10ba8f121c60edadacadc7a13b70246cbc221b94c4c8023100dbe74c3d6a17e64546615e18538e4220c53d3a47c4c81d5a51497fe9331d243ab0e294b4af82cf040f04578918ee01800302047c435bb5006730650230673021d81685aeec76d7c1f39b0b4fc6630c8f2b073e753976f34004406924e2709b7a6a8e348729b7fca825d34cb3a50231009e56f669462f1fcd2e1d54e054ebe316f472665f3fc90eb4798ec56943d0bc70c307fd383662f47805cf0f3eb5ebadcb0302047c435bb50067306502300624eb75ebcd2b419e9aaef7e8fcf5d85dac6dae95624f80277435e77d4ab6ee387f625a62e49085e2d1c8f5b5be20a1023100b8ebb6fcc1ecd716d5f2e9d5fd3c808127c9ed74131ea907b4ba35976797f2733d1ab27c0309a923c345447697fe162b0302047c435bb5006630640230188b4b365d18df83cb476d0bb3455112c4ea682017237d225f1fb318b4f33686dd2b3394af5487253e6dd0820709daae0230232039769e5a6429afa968df29e3ac6842131eb1541f2c60c59073f1270399ab77b4e22a1fb80f763fa3fad9afe8669b0302047c435bb500683066023100d1c73a545a30b1f9ac428de9e7eb69ed11c11f8aae9480dca046c93b0c957d154a6036ae70d5afc1fd4f077d0a546784023100a061f5fef4d121044d269313bea86ee035ce5fc9e12a88eadb0d86ef39a099d1d6bdf4471fa46111b81055c10ce629ae0302047c435bb500673065023100a1b315a76c5614fdde0964416483d34bcf5b1873db732d3652aff1496995a7f79610548b8a7880c24881882b35d76303023011709de56831af9bd37b7011b5dc7d27c920ca1f50a3f95494d090c9f2f54f3b27c52106731bf2d524a9b02872424bd60302047c435bb500673065023015f5140c1b1dcaca12e50cf206a10301a926941d6a4e8c2e4ef2665939b511ebf5be820afa95dad8d30c686522eeff77023100a3795b21032cdbbc4e8ee450fcb2357d9d16e1df3095c63880229d13693375097a5862c93f831aa35ada5156583086d50302047c435bb500683066023100d3965de54ffd8df0e3c444a84916f362917415ec657fae2034606cda408644a73277c5a98181f5cc9af2602e2c88182402310081561099a4f00278e43fad30684e0634c3da66ba1094bc08cb353343ac2427ddab2edd0b372de3fa0765d58ac54e86f00302047c435bb500673065023100d3359f0cd5709056ef6f17164af269f2de66c5ad0884980777fc5ebc9faf73c9fbc6691a8490019fa82f2dfefcb5896d023065a58002840f7fc8bfd25e0ec3228781e55477d916f1f655fa3c09af358feee9864dc96decc23bbed5f70c1d64e6a4ab0302047c435bb5006730650231008a5896b288dfbe95f33aaa5e4cccd5b00338dc10068f13c8765db9e4204105da85b8679b2ee96b02212ba91c131d400502306995e4ebb1132d89ad8ce39c296d1d77b726f168998f85a97c553a2b5687cecc81259bd6121a8f6d3732716b431763a30302047c435bb500683066023100bb9d327d9b7f8a3bdd22c14d0eb52eb201fd67373793f242633d7dec8bbf4d30e8234d79ec187c9b9cec98a07f4d7c58023100dcd73e72fab6c2d36940e8bac5c897138444683054bc4ab084c26a2419204ddf82d0780bce0eec9f8a97fcd030a2264a0302047c435bb50068306602310089452df8d7696fba3ff0b68a41b41a3f643923dfe1901803046819fda3e5cca14b0c348eb6701e74b13ba0faf5ed9e940231008811122a410874ca4748f71f1262db19050909c2e841e9238e292cdf697a7ce682ddca308ed1914c04dfeb171d505c960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d48508012f4760256ff14152c6c298bfa77d44b3797817e2ce7219c2839008972c0bd2dacbcf45419ecb8d64b7e8001e023001d2382327730a1913893014dbcd97e8cc2cc5b936ffdbee97e7824978a34d35ba17977fb506c9f6515be4186c4f02ea0302047c435bb50066306402306625a401b704252447494ba3804b9cec7f341bed0267d8499e091ee5eee12d1dd586b768209c9cfbc8c2983cd7e816f30230692b087813c7eda6958337c4d829cc615a6958c32fe64d18dee468d17c02dd5e525463da58464b0e995eeb243eef92970302047c435bb500683066023100cd9423ab73ed077a8f9ba110b8968d0eb97b20531c75d2af86150918832fca2ad6a2b81627d9ab07c5fd92eacf894dcb023100a7bbdb138f30ef4bc1295cab599a9257b3455cd50f130cec21ff6e5521d11af68f951c96c6a6223fcc9ce653d7cd51620302047c435bb50067306502300ec68b49039c0e6e1aaf06762b4dd2ac80f4395c7f44116b1728649e775da88811637841e5ca55972a956cfe981ceb81023100be0ca7c16add00090f8477bae8cd00bbcd150efe31bc689b2b97a87c8aea1b9be35ef3e877459c819c6de4aa8c115f270302047c435bb500673065023067612aca9dfe4a2a56809ffcb3c075e6334e8e56673bbbb7dc5a77d9059458fd538f7a2689e15f64234470b062892b58023100b3b044bb0e4f04d12c55bdbd2df39819cf582546012bc4e691fdcd5a11fdb65498a9e3b096078beef88863e799b43e540302047c435bb500673065023100d4aab4a9c02ff6ec10bd4448926d8cab61521f24ccd8ad0cd7f1722bdd97d7ced454e65ee8a4d5068005ec1237bb4f1e023042bee65e704e34383535d0a84d0c265c1c490bbb16f276adcf45dbe59ac5358f150513f8fc7c3992c7bf4f1bd6fb062b0302047c435bb5006730650230449fcc69416f5fad6c659bb090cff1c0fb9d57b48344b74150498c648889b30286d324f858affe6c7818f62859b0b69d0231009fe17893b0b56606cacf0bbfbeef1a2bd33b15494f89be6a7c69d261a8c75adfa727c042f678bf99b3123b1a88d3d53c0302047c435bb500683066023100f7aa86de62a990fcc2f2f7de3629f1e5404ea08f84ba02e9aab25bb879d327d076527ad988faaf20207cb7473bceb53b023100c7fb42169537d95e114c6e324b370fb38a600586b92fc5222f2e8b572b3b53f21e7847307418e8cfacaabde915cfb80b0302047c435bb500683066023100e9a925af1b844aaa112047234d77d8a8b9a8cf28b5a89cfa4163a5fee0cff2e52e7b3fafeaf1ac2230971c4131e4a903023100e7221d2430a743cfe2d7a070418cc4218d4eeaf277c6adbcd27e65bb4eda4759229afb03c5e064cafa27c535f0ce3caa0302047c435bb500673065023100d52431fa96feb102fb0108f0ab921329acccebe434df7a52ab8d6ace310d125e09a7bdd769518f8f3caf57374da5c55f02301a370a41d62797f762addb5cfcb5ee74b387b01358660c60121592e0311645025ac623aa150a138b7ccca646158a12750302047c435bb500683066023100b7838168b62fc5eb85289db59edea5c956ca381de8de653344da7200a0a228e74c485b1b8db10b323a5fd589717e246a023100836ec4dc54eb5977b321b6527ca6aaef2f2e2afd6fbd84d8802005e28b3af25ed3d980843ca3bd6a2109e0e5fcd1a0550302047c435bb500673065023100d4bd7c3d9b2a3f0f905802bf599d32e36144871f72a44df8d5adba69413319aeee03361c5d5d20928c04d083cf06202d02301df332d3168266dbe27c21a295783fbfe047fd05fe3b8d14a54bc7dedb1a1c482e1f037af808d6372e6cbd60414c7c550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100eff63fdd3cee645c3f681cbb5d659a482360ec502cbd78abee7aab239d0322633e614307e0cf10828b9053b7838063380230388a5e91ea541de09d414d9952e586b59efc12dc36e84bb7e56529e74c5874be359e56b92a3a15cb318511d4b5ac43b60302047c435bb50067306502306f0474c4e03e3445c6b0b4d2af8a84240b89f673a141742845585fa45c7650e6b7b06e6f5fb0affd04894dc82a9b7788023100bffc9280cddd9b5c21d1b03e82bfd7ccb006da3b3af0958ed8118c59b2a2e5b8559c48cfb67549fecdff9b92bc7c39bf0302047c435bb500683066023100f9a5ba20787d8d208e4dc6c980305f74c5ad0c59eed38128dd088769ebdbd70337eb4e624a0b0ab47753ff1d2a414b0b023100bb3213ab59caba0df67d935cbb4164268a1cfb20d5e576c95aa931a409efdc2d80d71ffb5cac0e686ed9407777896f570302047c435bb500673065023100cbcf50aeb083d491ae7286545f071dbe01043e79cb99399aaa16c7a756a97aaee04b5999aca93387bfeb9cd3220abbcd023031b6c0886dfaadc8cda29f73a26cad77bef40eea598e53df8f650445960e6456ee5081d7cd6c789727a68c32aa3c5e120302047c435bb500683066023100e882c8e482ed5906c4db9321bf8d9062d7d766f9b1c217bc8af96badfd6db8fc30a8e72e4ff50455a96931e46ee69023023100d990df7a52439ddec9848b8cc24b67dc895988e52c05db45372d209301fb44d1419e44ed146174c84bec108d2dfd895e0302047c435bb5006630640230138f1fffa4f0afd78dbc7e3a8674c13beea26e20ddaf24e34214e94458539868e7552c474ed601f6e4ec54a4f97fe5d402303a503a1f1d84b447dee7b2912a0813ef5b7ce79038a02b0674a78ecf39f7d1a3d7cd2f4fcbe42f558b7437c6148877f70302047c435bb50067306502300153040fdb87fa204a7445da60db5cabde27f3d88549737e94103d19c3cfdad715a1f0e7dd5fa7af0a51b577dbc3c777023100b50695a469dbf1d09cefeb08b8b910d35b48ba96a7f974cb823ff2fe9af99432a2006cc12f1ce1d907d799bde33f19290302047c435bb500683066023100c2cbedc74be688c1f0366614eccd2921b9ac5c39619b2a4e6a2be56bc7e81868ca5d7dae3b57aa5c853739f7efe30536023100acd23160fe2b3249d417ef34e37befab23215847869153223e61ad9691cfeb30090771e5268c53a715e3985412ddfae40302047c435bb500673065023100ac601e23da0ce0aacecb118f91a5bb30c56c7cf615ee5322f91d6464440c00f5da005cc307557ecd7af63ac8d6b7157c023068fe3ced87637dbd3486eaf18ca4e69ea6ffcfe7dd3e9c92d3b4b0c81adce519580d91f2ca450ee37b164093e2142f5a0302047c435bb50067306502305fa12b8bcb1568c472ad88a2160c5ae46b5252d84177237ac6eb9d8b66af9dfa6b8fe52c387a0205336b861958e8208f0231008907640a76bb5800df3dd02ba47c1eb9560056e9ee2c63ba167497b4751be87fd20845e902a79ee9f5b1d04ff0bdd37d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023009ff6fd39434a48e68e4d9459f3647ec43a6dfa46addf40a037e4a57adcc5eaa7aa6aa94ddb5a78bd4a82fb93665712c023100d583ba8406321b8bc78c7502745db6e01955cdf803198d934103731dcfb17555e65835444ed558674b9ab6cee1637f640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023063caa70ac1bd6ce5d732673b9b15b7fd6cfbf49d958f71896c6d4297f3c8423e26262e52adb5cc75e131c782ffd3b8cc023100deb8ad8bb6eb4a91089158d53cce5c18e62d3837edb8b90a92ba6d1bf500139b896fe2b9f4f8a84f6a65105577f5f64a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306a99089d9fb713d7694d6ace4c918ffde9c4036e375869cb71cff9d3836783a020b356286aed381fd8692631e19f343d023075a8dc64c16956ee0b5ef1cab9ee0b65793b658396de0bd9bb5399b367c9fb3576d2c500f44bd8813745668bb8f0cc670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c999167dba006759f80f3f238fa72ea4d433019b9b58d0d5344a949166bdeae8ddaacf33adbfa63b5d937a70d4873c91023079929ae057b471d4727460e26818ed1c742422a368be8c095ddaf4e36d094601560299e451f513e8492e37f0d37d93a00302047c435bb50067306502305a32e8b51ab8ca87525ee174ea683cfcc08e30424f6755c14431ffc731473bbd3d3787dd887d2d2c11d91d7b0310790c023100884526f4dc556c303db87dc3ad6b31150ba6687f2e9124ca390a4cc5a5c6b33b88cad795e810f608bcd545c85684419b0302047c435bb500683066023100b2b1b83135f41fe66e5190ad67d6056b298514a8dd096333f527a02602f6e141cb0d07effdab894ab48667e8225beec1023100a9d75461e651b488b82a9f72a12061a3f9b02ba839c7aecaeb7d407198fc05a5cd83312c9d4e4cfe6c728d8e671146380302047c435bb500673065023100d2c80b4fbaef579a9f3c58048a9321552ec4d27d44024267769dc0e64ef43a6320efa64491a07a82b959cd855f20a5da023019bbfdaeeef5ecf1c940de34fad1fc49f9a8579c2c49dbe5b950f8c0b800c9119041a3033f5b8dcc14fd36810d8b52340302047c435bb500673065023100a005be35084dd0e06f34b8bf79449d4f4f5d0c8e42096a2fef428eabff7911ecf349cc1f7d1df370a9f116081efd6d4602302cb39776a2036269806ef1d8a5cf1008384f7f50b93a59ea0e9053117686283e179452553fc395a75af212fa0b284c760302047c435bb50066306402302e55db49d3f228249ac02f4c4bca90c41761bbfb200e5223e5598d4092c194111251a300e6144e33f6f94354b1cd1c48023062200ed595a24ff1a48b9413594e49f362fbbc44d4edfa7ab16af2a26cb885d6db4a802c40b22c2614944df8c351b9550302047c435bb50067306502304b0253efc6b5c062425d17ff52d4be51fc66da24e9cd85a1e53f7b32beb2a15b6e19b50c2b95363c5a09dbec9557f799023100ae4cb2bd223d9bf236f0f2f4685e9d7dede9eca4e28595cd2613191e4bb45e24f4534acd46e71be94421ae6dac3869500302047c435bb500663064023065daef375f076d78b9a5a9a2b18452e3f272ff96789964ac95e61c2192aef856465fe8e3a118ad82418481926b36b2a5023040f674eaead9d6a2e135e6e87b6456456293fc4d166ae4847a81f7afff33a757843a34d71946d7d30357e80eb51e446e0302047c435bb500683066023100b57c8a0f69af75d36adec668ca10f34970d14f312fb55d76d91724eebd054314b398f391bb36f90bd5378ec3be8c4712023100b45047ee93da8ebc508563b317081a0430096e7e618651056c4bb8bf422f6da5e8affd1e9c157617a0182fe8e14991ec0302047c435bb50068306602310082d6e3b79ee32189d69dc3bdafd6a94a1781a2220af2ecaea7b6c21b26715677774634672a7b939d4f175c1df35fe0a4023100a24a44b070d0777701bcf2f136f9bb6af0f69e259da423db60a22a884ca131a41a6733da06c2b716da2945053a5932150302047c435bb500683066023100e06ae6e3a2baee6b3e5895a0abadd50b4b30073b73eb2f53c555dee30d836a37e20928a831967f805734ebbaa643cd1a023100ce3de9c1444f0cfcf7851563184fadbcbc6910ff3519c4025114dbb59675cbbf37346bf4d3bc8fd10eca15e4493500b70302047c435bb50066306402307e7c2a10ab07426be6521ea04b05e2af76c07012913805a73e0801e222496c10bc718cbc8589b917537338aad5eb36e602307a3597b7f4bbd8da3ae82c9317738dd88744276a3c7e6a421dc0197e23b96a8293007d2ca34044516c636100368d99d40302047c435bb500673065023100b2f4f1d631b994aace4ca607acc1727a177be23448feb1414ecacdffa031c3340e0c3f169de67c8a97181aec0acf32c20230277f7d2f17f354f4cf9186f537d6cb447859fed93eb109c9f70f38852c8370c4c94bc6f1f250f4afb7bcc82b5a0d25150302047c435bb5006830660231008fe9b1e0c5a23da195e0b48c35019a08cac11c7cce8bb51cff08be25b9e62d27a2f9bcd07921b58c1ceeb93b366c72dd02310083f0cdd4db0a3f4f1ed1db47d282309e07280d30d892929d034a82b7e758a3e892b107fef4ce67f6e236d4fdf85dd5410302047c435bb500683066023100ff9e9bf45da15fe563af6e6b52620c2f038535aa03a1ba7c47d8004ea40256d5e899a12d7683b7c43a1f9e98c65a9376023100db17eb09c59ddc2317c4c9c1c418ae8913ad51e637b4cfca67d6b5ffcacea102483bbeaed98692a357d3231e67240c310302047c435bb50066306402305d2c8d2aa7e97fba4d04ecb9a7dd9dabc13fb6ff4dc33c87688ccb2bfa7a426bd5125c72ffb9dca96a6c60648568b190023011b565c961d3575b8d08b158b77ce65eb65bbbcc521bc55c78c6e5ccdd4b4ebcec008971a46a024df9ae04c57e4d9c1e0302047c435bb5006730650230727b78b98a36b2bcf0a332f1be6072d20686de21bcd75eb451240bee42e3d22c0958d4f9d823f66c42421b26858a9781023100b3a89eceb5fe3b1b78464f46d875a9ffe62f20410384743b93dfe51b622e21818948e700f1bf3a42731cb693eec074dc0302047c435bb500683066023100924b674f2371078a748bd778bb0a2a3376e995b589bc85b709435b5e83d1cf78798d1c9540df6a300ee82d986bc221c9023100dbed6a0ce23166d322673bd1adef2403995791d7fa49767316ac35a10ef0ace2a1725c204e47f55da8136f7a713699940302047c435bb500673065023005ecabfb60cb4e039f915603f62c00a265050f1c5e974e9dc4b58c4e701e2dcf7bd092bd7a526dd7811dfad59a6bc7050231008f2ca99dbb3c9658b19e6a0dc93d617195cda56d0648e82d4c0e31be0ee5bd5537b70e68fa972c8cfaf1da9b381095700302047c435bb50066306402302dacf643d9ec299da7a0ff81bcb5069678035b96e6957ae8e0189cd26adf4a1a0d3eae2c44c86bc45edb91ccd29f4104023047db03068400de451bf422561dcb8f2505b6fefcfad88767cf394ba3b4448664c476e2a1f03e3b3ed473abff128552e30302047c435bb500663064023017bcc3b79fe4326fc30e24fce701a9a7296dddd2aba1dba768fcb7c252253c17adf2ae5b8a84a2fc3e9f4e08ab94bafb02306e8236c8df82f0ce1857a4a35292c05a8e3c7a8660f7c918aab6c4d0223e76f812525752c2d0a0c840f52ce3fb862f510302047c435bb50067306502304fb2389a71f90b27e2d613e6b1b1e200dbfc55a9265bc54273f8ea2d545f9b220344ffbc18eccbe38a08df38913ead8c023100b978e8c65965450eea615c460b31b62b3dbd1cba56723b99bfe959dc63459a1ee42a0e372463c0e08e37106a82d207ec0302047c435bb500683066023100a1a7e6b7febb4fb6b13188380f86504c353e7979a951dc9ec60454b4ecccb8a0cea90695aacb88c4a5073a13540c7be0023100bfd41bc779413a32e02bdbb52288ecb0b968c3e93906ebbe622378f31aac982a2f128161881ac555c7e4a9de057cd07d0302047c435bb500673065023100a5690d6a235f7c21e28f03bb6a82dc794cc62f5ad8030eda86bfdee5e6c82854f26ed0f3528507670ac75bc238454d64023008f8ed422a667141c3c9d5aa2917bdd075899ca8fdf0f7f73a38d3ca014a1d6e73355d12014ee0e57f129974c08c9da50302047c435bb50067306502310086931b9123f04d3a235f3c38b66f8412beababa665d222ab718de1d8f91f77375334805f3f1fcaedc27b186455f1b0dd0230706ab2c676b8c0bda42dae2bb436e551fbe41a9dd5a630344298700f9084eb8788580e787180cc6a55168cf93a4d005a0302047c435bb50067306502306b126a8daabfc8019f2a2675e4f2958ece80712d6a89191ce048a696b55f3b97696bb1b00c591d1c31417524edd567ac02310080a86496339060c3016852935db599a9e3a64458a5aaf6e003ea9894bf77bb8eda5920f37fe28f677a64fbd272c15fcc0302047c435bb5006630640230123ff08d0bf08f94d25962e036eb4795f4a89c0f6f293fbf543a14f9151df29e4b0a9ece45c526669515227ff8426364023039133802216d9bcff1d7ed0505c65cf99ad1952ffabe719f73c7db320a417a13820d1385284fd527334fa6cb512e55f50302047c435bb500673065023060aa89d22ba5e9109f1f10899b515d6e41a40f11b0d330670dd40eafa0e7f00b50d97176c0184db41f7245d58e2d8437023100d35ed26411ea0abd3c241d74a98a6c3a2fea6bf2b02daa57434349682499a3aba98fdacef84a132461812d02be0be15c0302047c435bb500683066023100c5673511c1e6281e86cc604531aa26a5f474a3d0967f684d0c0c5e33c3d21ae04a5ba1d94d1393b6b1a870137e9c7233023100bbe334833c98af1a95f0f662342ebb07c3a272e89418e98822c5cc89a342428d186d5a5a175292a79dd662bffab2839f0302047c435bb500663064023064d333a6497d3f64e0fb0d6b241040950cf74570332c4fa673b7aa29b7dfeb2313e7d5205436b4973abdc8b57ccd5968023027ba3b2d80bddbad783e7fb8d62599145ce7e40428cafb981f1637313ea8d44899f16b926078ae1a927f5f39a03b68f40302047c435bb500683066023100d641271f11eb3c47065034e302f0273ec37472066bb4af71492f4c86f8d9583f0a1cbcce76708d62d7bfd915dc07ee7c02310094b671cc610db42dc236818eb9cd12988e3e218d424b50e56d33f8540ed3d37869916892ee5fb2834688d5fdf57a309f0302047c435bb50067306502303bdf3e876126bf663ee36167a8687f8e1b071473f64e8b0b84eedab3739f26898026639e8818ca09de8cac5dbff2381b023100cef44e084485e6ab059bca8ef13ba970b5bfcd283a9ecb3a8ebdc8e3be9975ed6b44b120f71055b2fc1c1ac7baf2bf120302047c435bb50066306402307dc0916996f8f847fec5a25ea61df9e16fad4c0206016b1978f029642cae2e8f00b3f40e3c713683027b1e620aeb1d9c0230412e46f4c8319a2af919e7429257310f60f9e901b9c2f7276b4ce41d5289c7088724fd14a8fffd0352ee48bce3ca9ba10302047c435bb50067306502305d26f7e9d03bbc463f3f16730f3cf86b20245725309fb2b81ce405512322d5eb557c6ebfb0a2e07c788b85c1caf898110231009d857c359edacc4919bf87e7bd78a0ed09e3f49b167aa303615aaf4541f7e2db85c1543fb9a8e649ffba699088ec55470302047c435bb500683066023100b2e52cc9c04c48826d417abd134de4eb64a10c1e6b822876cd862593c9e22d679ea0866e297e00dce31058b6d242538b023100ddea2fbdc5af01a69e216f0236ad278deac68f64db3b52923cfe96149475255dc12300bf230178d532b682419c8e00620302047c435bb50067306502307a47515a41a4ffc335f89f851cdf3999e3d887ad4a86d15e85963070656c32c2c75b46ab6a8ecf9da29f335ff58bac43023100da797d36e364b2710da53dc0cbbce4fe3458b7dd536264054923db1d5c6deba3a5bbd0129488b926d1c8aad8515af6e60302047c435bb50067306502307ccc0b7a4a423765166b7df3532b4db2a26a9682f7763bebfc703eefdb2966663cf8638776291bd25edc20c0d3a1b416023100b9785715bf686afd75af04e31fbfda1592730506102a233566e1a22042e26126504efaede2f4073a28912e46a59201430302047c435bb5006730650230451a01174afe94dc1619506569cfcd8fc0498dc940b991f609afe6a0f3e24226a4754e7325e6d1f377c3c712977b93a7023100e1fa5a2ed9bdcdd6a21fd63843b83bb2c8b377306ea94aac2c8eafe7bceb8394805cd4b2ea38eefd277d8640881cd56c0302047c435bb500683066023100b0dca766175703ff072e1249829155fa118032ff56ed9f50973d54d9ab2327d6b37764318de88b93876eef652b93d95902310083b27cefb2f7efcc6725dec89d543e8b589e97047a2a5f9d37cf9e97d9a044bd748c60ca90fba86c20a450df9864d66b0302047c435bb5006830660231008b523bd92f212d917416026f921c6b8b7263e8b8c685cb7527750afcdf6c82ffbf465ccde3cf83eb096034668a63cc180231009fb66501a55029fad635108b5525f34a3995511fdf4fef37d7fd4965916dc1dae26d88bd87fe9b28398df1d0ee6c25680302047c435bb500673065023100e31b6a17a8bfe28c1228fb836252aa88c3662b6a494cc0f7d07b5974a00f5b43ebeee2d6ba1215d93efc82285e1c947b023036401cd6cb91cc6485519b4477e72a33e6fc7573c171d7f77f50e7e754ff50fd278aa3fb4411678b0c22d832cd30fb130302047c435bb50067306502305319787b39b82fd316daa2b6839e1c31d5d441b6275f99c19756fe559f972585d0baa871f86e4c78c499a4ad0a2be5b0023100db3135a1e40352ab2c7fe2e0e4e8e5c670aa25d451998a839bc3ac5622d65c5fb33fa4ac05df32991c9615250e12a3170302047c435bb5006630640230621c99a32ff211d9f1063613e7cd3f01915e2cb07bc624e2085f4b85c618d6f6a0c39e856b9a74ec2e52f4da081a60b802303dd0bb01ed10c2b5c9eca40d74365a6b425c1486e2550d5e7d8d9ae3071c1c4499bb0f9c1912aee9386d848d2b02e9d20302047c435bb50066306402301e8863302dca4b1fa1445ada6e6c329b041a9434077960d6c8497d0f1b974adebb42be488839a92948d8c5fc0dbf4cb902306f86cee74c5714e2f27e047ccefe84f1aa673f6c8716a3c23fb7411f81f6e1e549fac2a6971c839a819dad4895f0994f0302047c435bb500673065023100a166ba030addfa8a4e0ba894e1f90f9df73d8cd1eb53be4d0cc0dd69f59a023edec4af34704aff00d829df161cdc616102301b6076648151a111b15e1c06c0059d4ea0854e84fc8ce2e4d589af7ab598010113675aab6b36243e8431829833805e9b0302047c435bb500683066023100c432055269fce79df35d507ccfcae900f9c2f9961989750a992f9dfb99c9b0d4a8833319af31eb7c0b0e6e8fd4efd07b0231009559053b4580d9c8e76c3d9f56e743c3e1964c8b5031b691376bf90703e37eebb150fe5eb36e8e8cd65df8ead2e10eb50302047c435bb500673065023100a43882022b84d4bde4e7ffab49452a24accc2ad8a1e15cf84f98c2cb7ba20584e5cca84d946e55f70a1d3d55301f14ae02306abdb893c3f94f7d962fad56a76726afc71d470f90039091bd69f2487c01c0ccc3b0a57d98144c5f14de3cf248fe293a0302047c435bb500673065023100e06ddc0e9742025174b1171db90d7d683fb1b7463343de50d4de125bfd35a85e9d1a9f2befdc3a07261c396773d6845b02302a0a286c0219103fd6af04690718c70604203f6fcdd068fb9217b13dba03ec5ba36c0ec7b6849811e992c36e1ee6f54b0302047c435bb500673065023100ce3a6f866f6e1e40d32a98f49047ae92e9e8a9f8e60b085f73290a94c9334ae28452c6f2e063545a50c061564306eabf02305b904725ece13c76ef534313cba1a38c55090b64c80e00be9e5434afff070e2b28592cc7cb1f06f049220df4993f1d690302047c435bb500663064023015e30e51aba8e2114e8e55ec681fc7b9f21a699adb2d10e079b823f9f7755e4b3e8d2cbdb9593ae613cafae3b6dc790d02306a98e12aa4de1092239bcefd2d02e86b040d697521740e3c1c7bdcb9917c57cb4fb4d21a2be863f667c6ae29d463a53d0302047c435bb5006630640230331f398d49ece5053ed91eb3a28dd5153c94943a03de85b49c11a58d58f97a3a06a5e8ac22e4cc55a07a9bcfe220db8e02300f22a922d5fab1dd2457969d372441e18ec95738a85f60fe19399781d886db90ebc4af51cc4b2ff35a04863026ea752f0302047c435bb500673065023100f6a25b7f50a96d7883d6122794db7d449cc8b66f30fcfa6b2fae6d5868bdde70c07cbc32b8496e7bf1e4d9eec894eb31023022f2ba160f2d713950e258f1040f96be4748d8d77fefff41412316687fb8b77bb6e4ed11c8702b61471bc29bedc426d30302047c435bb500673065023100e9420b2368e563870868cc0aa34191d18ffb782cdef43d6468fade39699793a0b855d6665f2d447fc544c5fb8266d2ff02306d1b35acd0c46ba942905aa9d3579be832a9b8168dec5cef3afd1f40271eb6bfc1596be32be2b5c31410220d1e9cb0f30302047c435bb50066306402303bb017e91ed0587e2eb0df05246e39110b6b129492f1a64a069a122b5935b17643d83915a91c987d94165ca26ad985a90230484a43f4156e6694e62741bfe1b01486b63c707ff082c2197c7d2cdbd80b52124eaa9d155b6457df0d742ff0833e63cf0302047c435bb500663064023026f26311ad3f1fd667167f810791c3b2cfe72aaa753054c301dbb8bb110c3b4efc9bbf54c782775e8db32c33506cf9e702302fcb18c1f02142edf4d4687820689921d76848bce5ef0377dce4e8df8bfa8ff407dece08329bc251c63aac4f761a05fa0302047c435bb500673065023012aa411d58d27b89fc65f85269872aab386bb60fbe1b89ce4203b48ed5d15d44d7b156e540b3a7727a14ef9ebffb867c0231008a5a6051c3898e86083322ba0910133693cf805e9eba619a12655a8ff4ece31c64d1066a8774277b02054749e859101c0302047c435bb50066306402302f660650005687d956d730b7a384e04ca0a08f75a4bc5836e20e67e9b5eef1a043cad1bfe9ee0b69e253b933ba0c0792023037594e5ccc46062f18494788a9c83c7e302f1a7aa3b6a5d5c0ca697f4a225683fdb156c1831b801e6c5db76e29d664570302047c435bb500673065023047fb06f2efaa23951dd080f1f54f6db31ba507cd9ef1f13c0b6a3e039e6c99de02ac1bf033a4ddcfeae51f4e14ff4573023100f0dbe564edd53d8c4875be3eddc8593a0bf18576fd4256d27167cfda5e14e010086ad0ebbace82e57fa5bf3025277c110302047c435bb50066306402301cf39793669d12a3bddd8e4bbff15a2a11cc0ea47c3f450702bf2f206ff35d33063f98ba1974c56c7202cb7931aa279b023002cb25a6971eb3a1aaf9079afd2bb3993a4274b695c492e52fc2d356125e1c480feb88bb036f2836832fe5b7c52d89350302047c435bb500683066023100961f5521d83c056bed8a9d809b9a6785bc60f93c8d3fff5ce31bc9306f3a13aa91edb9b877f01bd94992cc719c611677023100d1754bda2ba036fe06b7899879921d01739b306523d9c7b7aec1dee3ef70d55ce8311f2581cb9a1b9d624e47aeffcce90302047c435bb500673065023063c739dec654d907d3d211e3f8e6935809ece3165a94847b5cb74cb6e65ab6d3b206619201c2120b9d1b1aac71c819170231008aa702031187d9e52fc5617a718e32718bb898485c26305d7814db947a8effcc28efab3597ae155aab8c81618fa2598e0302047c435bb500673065023100e25682edcea338f8a66f6c37012ba77478a9ab09fed69b9d9d41056927f151d131fbad634b04c6480d0737169d2f34be023001fbae14504094c80cbad256d58bcb2cf63679cdb20146b44116abe42aa564d4059aa46ff49e0f294d14b20b4f068b740302047c435bb500683066023100e85730dcd77b43165845c05c5723e94e8b7d29cbc80209ebd45139a2049bd80bd1ddbf36f806d8c696a4d270d5a8661a0231008949a33f4d12d76e0cc1cccc81424226d163608ce79d997254ce50c93300e8ce6886d7ab28f081d469a38a64b1ee4a410302047c435bb50067306502301b0d22c6f1184da41ab19cd5589c4085c5f5b0fa19ad0c991d8b29048c92c3f3573f87a545b1c24e296cb8f7cd36c983023100921e2380c858bab67992c06d05512b2d66814696fc9dd521c96308be2594af18bfda4b9ab105c6e32c0bbb0268f8b6030302047c435bb50066306402303c75aea5f03eb1ab25310bd9f981d873a1e634e78df0e2f67a48c2dfcd3da2737c171fa2bb42ee9cfd66dbe3b2fbdbba023047d13a0f7991c74719d2b1cae2a99c28cdd3e06000164a636359804b8256577231bd4594e06e4144e7ec041939a265d70302047c435bb500673065023100d425001612ef070c13c63940000650e6ee718585099a4e47e2bb1b7752ee629485ecd1ce2047fa8312ae0b65fb3ee45a023006ae4c987ecd5f14ad32a74592b01c141e900937913d5a8d44e08cc2eadf619af4fcc09d7f0d7d5c70169e776c2ba3840302047c435bb500683066023100c14a099c394bfafb8befb91a818aa5d7e4ea961fae5ebb918e2cc8f26e5f587610db4140ead085dad2163336f3f635990231008cc0e0baf8001bf58dfa49341117fbb01e9c5b218ef134806010ecd2e9bf4d8619c667111fd0d0ae2147af53ff0b2d6c0302047c435bb50067306502310083570578cd63ed8c7f7994c1e65795ee92d1b73f7c71b2cea2106a2f2fc371c98e057e2795e8b08c2018f5fc143e633d02305a661123a6d2939f3a4a2dcdb919dfc9ba562268398acb8117ce6c7603a88aeab9f736ffa9b916490e150af58b1ca9650302047c435bb5006830660231008b885c2a073713232f3540be3448e416910d6eb6b0ce6394e8d2725e152cbd904c11550fd1fbe51fcd0b5cdd9c1e42420231008bd03ea287d09a011b74756d9480645dad95b420f894aafc951e5c648ad0045421d9c8bcb402d281f14cbd1c2c4a88b60302047c435bb500663064023015556ff3614be89e911005daa110ed697dd30cd4057058b8e787d32e226fd42542f0a3d82d0027a3220c5433ac4695bf023072ea2c88f842cd5888e67e8493885ed80839799d1db13153212a5a78de5e54e736a974a771239f7feae692cbf7db597b0302047c435bb50068306602310081dcb5be5cc272ee93d8a8571b9d362742f8e22ee58c0b041f325bba3dffa85d4e281729d13ca07ab7c10023622d726a023100c5fdf54b790dc0fed33aebbbd30233200a162ce5b32772cc696621fbd3e563b7a8236fac64969b712ca05b05dca2af060302047c435bb500663064023025bf60a6b9b606e0aa1322de9a358ee29cdae87c29c2830393ef55a96298da878f0098a8c3d4ed526d1a52762c532d5e023023afbb18f5d1d54633b328d3078eadcdbdb47534baee931f3bad5efc9b09278a4d1caa4cbb92de8392f96d3d90fd320c0302047c435bb500663064023005d21ecfa3de46d0f39983d5105096c57ed05afa47cb0964a4ee57ba4209e5f4db40f92dfdd08943aaa481e8a2a236ab02304f3df97faf253ba926d8ae031199f62e672f671518545aa53b45e8a4d14a590bba71590524dc4854fd672f88d6fcd5850302047c435bb500673065023100a66765f9068860d1eecf841c222e402d1c00078c46008c44db161ba7329af713a5a1cec7246f90443a5d5633f2c1d1e20230726c27027aac9293d1a83a7711e1755d5f379cfacf15db14a22fcccac0e6ab4900d0ff54f84507dd3c225a7ff17fe1100302047c435bb50067306502301da1da0556e94bada8049567d486dc03b1a9cb5ab90e34b6e144eddf6e79c342f408199cf0a90054e0c5d32993c0e705023100f54fd03c349e2cbb2d32a828ba6933c813d9bb6f56dd77df2ba21d1e194cd760b7464ca537c3936d124227a656fbcc6d0302047c435bb500683066023100b3d8a25ff3065d688e9e6ff5b170365546406e05c60e1e8cffb05fc37da5e7ec67799f0166363a166dab1828bf3b1da102310089410c76d257db937f5f2a76d62eae1474fe483fded5616893e5e9a9977bd29deffa78f27c2609443cdf2bc676d049db0302047c435bb500683066023100cb5cbe982bdd0a4e6c61d80fe3bd349a24e3df65c63ef8699305ab4f23f8d3720e0d17f0f5153ead3b5b019beb988ddb0231009cf17be91ff45e610807afdcdab9f3b03bf8a852fa48f836087c0726022695932d23f233c208176580620d4436d320240302047c435bb50066306402302366dfa9b6a13e696cd88c37726fbcaf3dacee6c67f10b40abb10900175b896cd807eaa4d136999834eb1274a5f30718023072dd6919b2f42c28001ed057b6509ac487ec978587f805379621eae35a4be166c5cfddfa52e544cbdcffb0ab1f0e7c340302047c435bb500673065023100b7442e553d4c16cb547a160dfe9f6f14384ef960b9df83a9e691266ef9a2461fcc7505d517da98e285b7a6ce5165cce6023007b31d278f7a9198ce833c5d30f608cba191eba822265f8fdbe3c45eae7f498af4e8e342e0e9f72c74ffa9e2247ab7970302047c435bb5006730650230567194a25d177517bc86791f25b194344a4de22455100521f9445c4b600c5a8022f2d50880d36eacad9fdba34b5405a8023100a3d54eb2a5fc414dd5430add07540d85aa311060b833b03c223f1536590762d56e5b75228d312ac894493aeccff0df800302047c435bb500663064023022d0ca83fcbd28873e9a33d1f22e248cabc7473be9921aa7bcbd11fdf0a070c5d85417d93c120821d0beae11dccffd6f023064d7c09ef83cdba62bfe610f66653a434c56a0895c08e0d22507f0420aa9d72c8fd15e8cb0a40e16bbca3110fbfeda7c0302047c435bb5006630640230473e867b9a6fd41ae6bfc9566cdaf0b3c648f91fc7ea168559ad524019ce5f178af292092573b7751bc4d2e9db78be11023004a464dd857b5693e401015bab0f8c1ac1d7f48877fd71411a653ce75ec5139c27a0fb5a820bc86f2a5d1809f817b6eb0302047c435bb5006730650231008a527ffd200dee3f19f11a391f61a0b866c815612390ea4715045723ba9768d1b1077e47e40b26099627ed7cf6c94204023040c3a66269e778d23389707f29035bf43d2602682c2e26129a3b4047c9e5e5d60590897271f2c096350f4cbb848d0af80302047c435bb50067306502301ca9caebfe989c0531054cb95e02165c5384cd3bf659ffae4029f324449b4881d9e954245fe9b1f18a5979be58bb7664023100fea6cc0b9ca42ae106db66d36b82e0ff541f0843d81f4e70b069a5f14123fe4675f00df4932012c912f9b707a71616060302047c435bb500673065023100b405973e8eca7602544f498c1377af43651a73a33283593c03caba04b0a2a3391e62c9c7596c8cc47eba8df9603ed6c202306b50b40841715c80fbd52a87889685ea435ab9515afbffb5ca96f4707d9274d55c9b32fce9970dfae9496fe3ebfb2c950302047c435bb5006730650231009c2881815d7831f0277b3c9523256bd583eb5d43dd9119bcb8c4fda25abb674949323c4dc6508f2e3944ac88937f8a93023004b9d6d24fe8c08e69a57f4811c70faeb6ff035577fb5663735e0d12552a48e2adaa18d445016b6de1595d51cb26cd800302047c435bb500673065023100edbde00098c3661aec3a58e57898cc1dc756f24b5a91e634c52d5ee31cc8104ae63a8579795d2d8a47f96d2ae2578c41023018b0af8cfbb64316e75464bb2a23cf30a087e8c1716e6501ac9f2fc41be794552495607efaf9beeb9339388d50eeae3d0302047c435bb5006730650230263d60b43b88b95ecef881baa7e165b391baeed7bb4d133d18eeb151acfc658abe591dc1292747c3fc7a52911e70c2b30231009eb8da748ec7ba87920c5383d6e2bb431175546d535b28173efbb614260b02b310306dd45e1b7fc87067eac313659dc50302047c435bb500683066023100aebbb7f0eb30fcacf69972fb2955b36311a62d38ce06f23797f040d5217820e75fc211e0a98fb3ea7dbd5210fa55228e023100b4e0f869d0fe3b2374712d975dc55297797ad8b10bc9f9206053098dd9f1bfe5ae2c21a17456203007a231b66232e2450302047c435bb500673065023072fa6037368d5e228d02d0eb98537b742f6fd1aaa66bf584c5b97bf8c02af57e897a0a34fe5f4751eca2f5035aff2486023100a06a471ecbba81f73428e4d09ae301fb5ee837cb3664112afc181236fbc0625f38578b9a15b7db9d3e373fe67b60f8330302047c435bb5006630640230657df6b8bb2045f8d03221927ebdde7d7a5df849dad655e838405e70fb98876285eefb4dcb6139b658bd22b54c13c31c02304b1711a1d9018c07f075b9b85f4cf3fe86f6debc4311a8ff62ad73bacb31a7c9ba8a076b413086d5a2798fa57e120f7a0302047c435bb50067306502306acc4b6125b6cb2f04dae384590482cd0d4f61b68b5588d0e9bb2b8fe4e185b71ded2dd10ecd4e030fcec9320c3b62f4023100fe6eda44b8263b6ac706dd7994e355efbe0b3f32b79383b4b504aec4dc4eb2f206c13022d3209165a0a62a700c9342e10302047c435bb500673065023100822958e0056db3792b0bd039d812cba83977f049a90007997670eb4f43e6dd68a949b2c84859ab4457873fa0940e698602307346c81d8db3cf1a235e0e6cbe46a2e960074b582a8086756ac1ae07b9d3a449fa08d13fdad9504c9067c3993302b4d60302047c435bb50066306402303c014a24a7202946b61c398d4c4cef18b166399afec507590c188ecd6e67b32d2b2c5c5b729e8ef8e19f78f9f8a9a7ee02306bef2632ba2d61de1522ece3676916d17ec15ab609090ec59548960645b13e6332dee039046e89b4a506740422607f740302047c435bb50066306402305f5c5733a0414abe5d1ef0b68fc8a8b803d2abf49fbe483a9457885bd47009045d8209a0b0d26fbdf4ee8f7722ca10cf02304a9693f84aafdfb3efa705faae6ba4fb41c7634a547c30bf33a39646063fbb7c35fd55e7f952272c974421eabe45dd460302047c435bb500683066023100d330127352125adac19c14defea844361fccc58e8961aadaf2155c0fcd820449cbfcc170764a12985b406e2e9a18be420231008d287142e98c88f1e9c6cf609b04d33d7c7eb317a7835a545197416c84e4e6193cecc28321fe3ddb4e58f863792e8c350302047c435bb5006830660231009845815edd009916991cdf39a8518dd245c1721bacc6c6b20b42a6a1a2a56cc451e2b84fac0045f71f24705c347e1e2e023100cc5233438152e3d634b6e21bbb49b6217fc77f1f29aa12bd30218dbce6241d65f96cac2d619dbe5cc6fd7a589bc2e4610302047c435bb50067306502306aaeeb1d0402d6f9e1d6785b98f56d0beab766fab02178ec2b235e8fabfdbf20cb2f722581663cf69f082e7f23a8b161023100f27d51993b1c1ef03337f192c748e372103a10e2b3bdbcf068e7a787e90221c08406287456d73e63322734aaa666d47e0302047c435bb500673065023022ee01665220b9442d935a3f0972c2dbd5dea9c09daecac190395b05509f5c60394b97163cae8b5c31d59b8e448ce35a023100d9ba565bfe187e3eb840aeb87767cd3a1416979b5ace9c5eb2d3e0392f7527f2c94af4083999367ff251dd1367a449540302047c435bb50067306502306bce601b0c9a50116d9550a9ad813a77e191c817c64153bb61d75db8a880279abad2fd5e1af75fb0d83779e4a39a145d023100f57c133977068b44520e18582e0ecdc4af5eb8f6e0807f3811a59dfdc0ee4e2e77b4d6a7e4069934617f88303956eb040302047c435bb500673065023100d998413e3af01c20ebe09a843d550ebce51ca3f3f530e9277ee8605a59443cdb7ab5b6c399f314f233960dd4edc206d90230224061d3fb5643374ee7c5cba7df87c4fba5c0ae51ea27c5ae98878020fae5aec57abc7a5a4e6ac558411856411b32550302047c435bb50066306402300c54f0937ac3f88a0970e201f11fdd327762f5a353a09fa77c02ab906ee074d4d39a905bf10870f264ef92f0e85ba72202303e34af2a8658b6ec4c567c76f1737e14912ecc5391b14280bee8b1a54d9fefb080b4bd28ad4434a16dd75ee883962e340302047c435bb500673065023100cdca726a7b4b6e4392a693dc33ef8c2011550ca6587bafc22f7cc994bb1f1698864d38d1474ba8cd3d25ac364bce6650023070ad085e066b7bb8c20b05a2147b2c80ca1cad3d086261d1ac3869624a2a72d7433ca1adf46fe03a61b5dfabe4722de00302047c435bb50067306502304992d5dbf64d9fc57e065e19fc558ab7decec9aa0846d7ca1fda8866f0bedb1d676172c04daecc5b5aa1ced11e5ca2e3023100ff23185cf7af5f04a9a42fd74cfc38d028d3118d64a39ac11506685980665cb5a012722316417ba5c337f98e0ff38c9a0302047c435bb50066306402300a0c77720690c689c5e8fa64d2a89956124356f674deffae3b7bd0d0b9359fb44576c98f2d7fd6b119ac2777a05a3c14023016708ff8cffc04b6f7f1f7c9573076d7b6e3523494c5c5fc6f1c33f63537b6b9c03e06f45ee30e361c7ac4ed29ba29140302047c435bb5006630640230467a4bca03efadc6d7fd076b99690e466324321f81807b4e48f35afa6abc58c9148a120b242f0d7ca78b6515cf61c43702304ed3736a0d72502dd27f6c962fcd0d9f8d44f03cb14b992da8ec86288c1d809bade48042fab354fdcf42beca2bbec9560302047c435bb5006730650231009755279ba38490e5d0201205ae8e53f0d4ea1d56fbb4cd0b48f87aa112919dc76f69f0af907ffce2f4ab0ab418b934f702301345e0e155d6e1ec7d8c89bb1a3e7d9ace8d583cc8ed831433bffa67adc1a045473094bcb0063841516246001a6b921b0302047c435bb50066306402305ca64f03c3609e9ddf7015abf3c0e3be52d1530de98b06280fb881fee39d713489db612a3b3cbee5b883546cdd711e630230308fa8d825f613f5cf79987d5d0bfb210ad9024e9ec07147f7c728f5845870ef49091f851bdf0cacf6c34371f037fd5d0302047c435bb500683066023100afade0c120b32c21ba61642e3b0525de3d9e61612310d446c290706e44fe4d3d0e9350f7e8eb02770238960c2366a15e023100c5d60a8312f70910d3369d9d87947d0e323ea70352a1605b8fd04f0ba4a6c7baad0bd5d0b010a01810fe13df443b69d30302047c435bb500673065023100d6cb284afa95aecbf4c52f1a1163aa2dd671951afa7b6ba687113d3d282d36754950ae108026d528f3586df77df8091b02300fbf18498ff4caa5c329c5b5b68ed0e1bfd69ebc7e9dbb180b879352643df14eae908b28e9722053aefafad9ab416aa50302047c435bb50067306502307021ee29997e0eb549318b6142bcce59e67b901afd44d9043b2af232d1efc167a7aead2cd85171748199e30bbc57b585023100aab01ab0c9a66ebabc9d2c8a127c80fcee0cae6c698c596e9c7512b2ae573a614e99781b17a07ace3bf7596ff073e4620302047c435bb5006730650231009ec59bf9552010db261a8bdcfc83e063adcc7e4d98d045354f2717ab31000ca447e0cc432feeabc48d346c93a32dc9060230518539d7ce370fa197187b78fe26b8785a1430f60ea47bc86636825ac30b770524968450f3c040275472088f0ac8a9ef0302047c435bb500673065023067b9971575056a8e6b526b85a40302b0e640c6e05621faa4c9c25c15cc46a945a19473a9bc7306fb448c0344cfec4bc2023100912a2fd24ced820391817810ba1df41f42ea03ea62560a40a6b3bc85b122247ac6e71fa9d0bee4a87fa09ae85b6adf350302047c435bb50067306502310085445fa16a0f86163b306f6980fae3269ff93e7002299618825b327580a0052e7bd454e9c7cf73c4d7bf10fb4b3e3ad0023049d69335bcc6b71b5d3cf31baec3135bd48d3e6340891ea5f3c7fd2d510be73ae79130410c5a11edfd05a7c1aacf03710302047c435bb5006830660231008d8553db8dcc3baf342b9cc7c761cff7a14931b9ad6d55d941887431a047b5dc89074c0389012bb9e2c7eff68008bdc4023100bdc9782ccb5aa91bf3237b2e5c47c8db65d89ac2d2be7e1914cc3103d375f017eb241736b9a558ef0579a0a7290d365a0302047c435bb500683066023100c3137d7fc8a9ae94eee36cc3dc5a4cdaf334906c3ca14bd447dee5dc2bdadabb8fd2663f4e16387c7ea39fbfbcaba63d023100a231a4431c55c24c212a6008342111dadec90dc912f90f83f9e7d57ac90df1cb33b73c8e6fba70175b093392373e90dc0302047c435bb50066306402303ea1d8efcb33646ab759300083ec8280495f1e15ecfc731e0bdfbd402090c0e5f9beef1edd3d61e96bba893baf274545023020550b225d3abdac74c91ba1613fb382637dec1e17c629c92478fd1610df2cfc66eee84e67a6b4003edf21e0ee3ab6f40302047c435bb500663064023057768dbe4f2c78212fc1c9f241f2ca5f690f159779feaa94d91a1990a6223b5c98e114dc3f23cea46afb8eeb465a77c902301aba0a6b67c95b88645b3fb0f7538f53074a02b20771a7814a4e74e0e64e6fce5f175b1897f4edf9ddf9ca8efed55f0b0302047c435bb5006630640230782447305c70c7f5b69edb67473712b1191a3c96d42f73f71235d5767e0da1a999a520264d9756b83e1c062ee358fa47023015806faa6e07159137e1d2ef5e6e6e8b4c579130bd97bb139c732466586ff519b0ecae0ba4178d202b577734a90038570302047c435bb500673065023034f97674bb5a74eb5825c35851a31219fb9379aac4a4d0480041fbfbf7521cc54e0526aa207bd12e9264779e0c0f8e6a023100feb25a26662e0b06120ffce196b04e9b2428efdc50284c40e41b8a96cbe4811ea86ccfe65e35181297ca9e2a127fc7940302047c435bb500673065023100ec5bac38e3d5fef1ab31be9f22c236f9803fa7c95f0259d5ad160fc4a98ea7f7c7f70b311a4d731896400593fcd41870023012f35b615afa37b8ea465fa17817d1c0df2c7d38a73a5ecdf37cae6a587a235ef25a1aee9866ac122df7e72cdcc5f1780302047c435bb500673065023010ff10fd747bcece62b31f57a8a0702c6f592ffb0f91d56e9257c39704c6e32bd4e6be6b499f5c370807de497c5a8b52023100b37112bc42fbccbdd89d2e7e3651e20806869232fdebf551be3a9571c3d26f631bd6c03b0d8baf9b75d6dcc0d15cad5a0302047c435bb500683066023100d06810c9d562f138faf4c8166e580eba28e268853e2e251f852f87f38eeedcbaad6bbde5f42a0c2c695b78ce8e65be8b023100b4968bd4fc260791a7b763fe55b48ff58ce3b75ee07ecede0e1a6fe674897f4d09af2ffde997f04239aaefc0a23ee9260302047c435bb5006630640230044c76e469b6b886482e5b0338b6ef1f7857f6c9173fc96a74acf42e17ea5e5155f4c511eadd96b1f84388400ed62c6a02305be030be622582df6cd361e9455d9a9fe772c20b93700274b04c2b2ae787245e8c07eecedbee09388dc374b85929a8380302047c435bb50067306502303dda3e6dd059fa533384bec79dc60395eb068a941409200d349ef8faab1e59573774c8579bb84cc82cc075e9ec33256b023100cc17c9c20b2ddd808a91ad20226fb0ee9dee509162294e8b7303e1790f1a5ae934df4990fcabdcd48a54920d0ed5153f0302047c435bb500673065023100dca6518e49d283ed6935e551ad456d546f00ece1b9f0f3295077a63f7365f184ee41013a5e588400070f3d48e61dbd5502304c78820c1bcb9699e7caabf7df93df9a5078f95f350809144b6d355123194eb608fb49f60bf1cc8483ad2918b57e0ec50302047c435bb50067306502300a8c2a6c76eb8bf09a2c4826559d6656d505d2d0e3dd507eb46ea858677e5986ed2e84eaf071e744c7efcaefc884e85f023100fa651b13efb0af19fa2942888200796ee9e8b21a227211cd700772026633c13940b83fb80e0839fa63479d565db8db050302047c435bb50066306402307e84c4f1b4f98a13cf4b1571e75abd08b9a2832f1f49c576228859fc0ce83016307cbd70660a8b70d95651841bb3b08002302244636b8d1664580bba52f22e232354405b9901371f2ab871507d6376b15ef38bafdb0f46c0654b3c1ad6750d2f7ab20302047c435bb50066306402301872358bda6b5f91f31a55a3e7f84e82032814a9840d86731dc695856c6472b9a7cb8815a741f896bb7382fbb1f760eb02303c68ebd2fa3ef42a1d4eaae52418aff00722fd62c1fbf452bbb2c71125d6c987e7e61694b5bf4425c5f4aa818811cb920302047c435bb500673065023100f1e8dd92152fd013b483ee2b44ffa54d8c524b4d92b8e6bdca9088c2c074b831f80bb452401e64440ed519dcd32163ab02302ee21cc46edd9fb85f956b82479aee574d87d5d8eecb7cb3bd6e7046a90e013c2b07320af8733a1537b0ed5f8c894d1b0302047c435bb50066306402304d63ccce0aa88aead73eac930109cd8c1a0492869c836307569c3ec60dd80c184977d688b0cd8eba0d4ff419d415aecc023040c98afe0ed753c62d8120b14d92f571a39120bf47ed30b94b2525cd7e6dd644cae038c55514bf06f69615722b8bd6600302047c435bb500683066023100ddcddd706ed02e35fb1e71eb6b7982133c8e74637b9ecd1383e8a27a003c18a7d1bf3703850692c6145360cee933781602310082ba6fdd6e69447bca7c4b666abae398de3a8143209a75d4865bea68905bbb6cc3ef3807c735507b7d8c154dcd3d08dd0302047c435bb500673065023100e68389885e25208c4b1366727d2c103b0aab2ab5ef7ae381e630c754ac4ac373a791dacf2133201c6c9124da02ebcd7d02306f7719dd96b54fb26b40c50d56540de827ff97f49d5c8bc169844bb857ac9d43a27f8b7694184b5feea0a210014121760302047c435bb500683066023100c4b83158bce24351607d2d631f6922e15751d56cb702aca20f62f9c292d87d8bea72058bef2380fbfdb26b308002e80c0231009a9fada0d2a5ccafa14a58d32624335f2216e63553f7b73ad5951a451873b7f8daa096508346933d5a8c8f416228a03c0302047c435bb50068306602310096e7bfcdd61aefcf029f64bc5f8de12eec6af2620534e2def831dc9aedb42e8bceefa4de21b73d4b1f36c248e8581b87023100c7dc0a63dade3470add1b92e702288251394446ae1c3c9408a4cadaf96f12e57bee962d6e68282574982b00dab4e54d70302047c435bb500673065023029c78cd8cae2e0c08a0fa931f4eadb4019a36609867bdf28d964cb0a72b9e282dbbdf427661a00f73437ede9cdd186b20231009ca2e56095fbd2c39fe0782c11cd334086a345ef9245e86e4c2760907af7bf640d4cd40f4c51912257a3c84a6e88b85a0302047c435bb500673065023100904357c0157fb29d90fcf9bdeffadde62ca7affdbb474e43b664124304136e8e48ab50a6adf927d8d5e5fbea9c05056d02300f507c667dba15e15954baf8b06ef56ac6552fe23bd4b286aa43a6cf45ace34323b113a6e4a76caf91a3fe884da8f0540302047c435bb500683066023100e6c4564240c60a7ca7cb5f1bd98e2bee536631223cc44b142b38832080fbf928512374d437d8e977942a3f9fd20de371023100e055275e16dc017a2e9ae9daea590f0039a8c2f948c86c7c45fb8090124c5863f0edbc2b7d9c88adae0764c9528e269c0302047c435bb5006730650231008138aa1d7cdfd8ed37e8d4128db2b660d00295889eb92f01d277f3b8c92568f949dfe79f326d562f3018acb2e9d1bbd402307bf164f416dd1417510940ce3d38d7f40cf32a53ec5c00436b8b547f9f3c675bbf4c7fa548d0523c1bf0b5c3c70fa6b30302047c435bb50067306502307fc50277470a9b95c3470650bb1afcab869561a05fc43264b1e9727c484d1eda4161f421aae16417ec3a6c966348fd4a023100ec4cd3c0498c7d69ed6520aade76ddb77aed61ae825de9d4d04b3347f07dede313cc4af4b99dae8f45c2b205761c266e0302047c435bb500673065023100b3c4b2125d5cd43e8d1c891862e6dfc0dea346d83867969f1236d039e2338ba9e0b145c9d55b7a04119c7aacf206be18023016583bdd770f27600b3e8ac6b1e9c5ce16b3b9a96c92ff716ea5f2d9be942d3fcc9d280256d26892c213e1a0ec824ae10302047c435bb5006730650230624d8417bfab500a915ad950430eaad67f64f7b24bce825ffd9115e8d385588e1da0ed4062420cecc48dd24863c465510231009a318822f7821ebf622376d96679ad5e9527ca405e0dea27a57400a8a418cabac783483bc68b7ce76c4a67bb12bf15250302047c435bb5006630640230080e85df8eb29e1821f668ce08c9eb7e153e9788f3fcb8380c74f8e1123b31eeb4c9a01933d9ac2635158befbf18bbdf02303bd38c77ba7aa9f7602d04f38a9e056e472ac351dd5b1f39a3ea560b3d1188da8d6f2f83968ada27cb136cef09a24a0f0302047c435bb500683066023100ecfee32fa02c1ad8fa36ae8c3687d1829bc2bdaeddbea68b2374e072526bccc5ac800359d91dbded7330a1f63bcaa179023100a309eed967ef3797124da7146915e56e89774758d07426a3aa8c6180b5762784db1f3e102a99d039afe74df2560041690302047c435bb500683066023100a3b723155d774bbdfe9c4b8edceea46b607ceb9dafa67a86a1a5844d0a72c2c779ec0c018706b202ada8fe07dd4266ef023100f5cb671ef86b1640df511c3b1cb0d22f1b5f8937a8f3e127d24b572466afab462fc1aa5bae4b14cff262438b4169c02c0302047c435bb5006730650230618d566461c5bbbadd104142d109c8c92a5545c0f1e707b0a018020e769a94f26131c09a3ed1ede57ffb4a821df581d90231008c7321b983b219c7693b02268e21dc4da71f848899ed519593ab2e6e0d24cae006fcb0a846d39263f1cf2fd6570f9c7e0302047c435bb500683066023100c85a34cb2354357924def10a46bd50891781708f077b692c18552c0cd0891f3003b86582a2b4902a7a65e58998f4d2d7023100e7ccd4e74061e3a3237e3ad197c698f4a0e8f36de07800c12633762331dbfbc1f84556d71f3d9a99c3bcf4c566e0e15a0302047c435bb500673065023100dd7e44147f01f6f2f672055e5e9bafbb6812e654c055580a4749b4baaead9f631fed7fb3362b81bc6f48e03d137dbcfa02304e82b0c58feeca817da0d4ad7713ba36024272293610efd1d20ad471e70eed669f4366d157a16292a2bb87b6a1d907fb0302047c435bb500683066023100f2ae97500bd81b957dcff7f86ac971796af0cc0669819e4b2a40e55ab9eb580d3676ce4c9bb0caec41edb69945be985c023100d4dff3a3480d818dc7a34725b13dca0855703d0596ce50afcdfe4c4eff538b75f36dddfa391ee0f02828ee66bbc67bf30302047c435bb500673065023100e188a946fbb54d7c9b755e5e50b7f2e243d3603f16112e444b8f66fe53af9b861b58695f456f89628e79353661b60b1c02303e3fe186e7dabcb5602d4ff2d5134fb58bbe977046c8f185fd6aeed1f3d9359a1db6c9ca9ee125bb30658f40d3c68e030302047c435bb50066306402300743b3208be1f27a4072ebce8ee8cad55532c849d85855ba27b9f1d99a755429eb6a28282e12fa16edb2e517f34900b40230426125d0584b8ca0ac96e27e624fc697ae0d2aca23ccf2ed612db4d2c0c4da661794af96c89b413a149fa49370bc7dab0302047c435bb500673065023063d6821937e3df7ff0b02f5aa3b95136593f72df4fbe271f36a1bcb00725a1661a363ef62c0d5b1b3aa5738552e70efc023100acdcd9ca49cfd89b59a65fe57a297dc091aa2c2ceb5d5795e22af0103a40712c0619cc935c220aaff3096383cb4bd3d80302047c435bb50066306402301205e4705ee838060f30a4fc55c41ea8938756ebad4da993b89575a62eb441322c0dfe442df153bcd0fcd69d352d14a202301db9fb8a8e9de0495e75851d9f53f6839ea8d3963148050ca8dcbb2028acdcf1a4aa19910f1e6d13fde194e437cb831a0302047c435bb50067306502301816487328bd30dc8e6a42a44f3527069a51e2631c8edbd1f4289965e56d9bc9a101f88c23596ea7a4fd7daec645c80f023100dc31790a8eae421e34fddd947a65d4776341fb12a5eb61ea685e1e1d767f7aafa7240ce46f66cd6a2b073e6d3a7930560302047c435bb500673065023100924a61ae321cf939a5ee183a9040b0cc79e607aecc805da7db2d23cde538ab9597bc62011b07cfb5e4fd4e51b8c166ae02300c20bd463a05c529d16d6f1532973a916b49ec93a770e6f9bf3f550e908c634e87437d990576f8066f357ce09648b4050302047c435bb50066306402306fe16ffa08ec1d2d2a6e6c147599a70434f8814d2000f00866d6d12714119b9eef8dbbec25b1e490c8df3b5be9029abc023013e41fa8eb5f9916ec5fd9be1b62504d84cf4fa6d69892f9eb34dae62d72dd039055472c129cc7185def4a027ab217a30302047c435bb50066306402302ad4255fd270a29973944ef21d6dbb43b8d3cec96a94f8dad6a3892e11fb1cb6aa72e237f8c068f04fc12635f632d4930230454c3b37f83b74b154d5cf531cf4ba4023d20f3f1678c23c86fbaa539bc4fa17217b1581da2f29ff78a99198319d14fd0302047c435bb500683066023100bd5d9f122de1538908ec4422490cae4306af3084b9ddde3c31be9b6ce4cfa43a43888679af986f12e580ff3c235608c2023100a9f2d15a2f1b1deaee25fe90c7b4c10a27eea3d7b8751f1b4625bdc331356ac8d3d18f782b23f702ac0f51c22fbcecc00302047c435bb500673065023100cb9445750967ad57d09669211b038824e8d9ac6fe8a54602d82e4b9cea64417e9be2db3802631a13d22d5d6f4f50ee82023055a6681858b29ad9376163362ebbf0775a4d9e2681688422fa3ddcfc4c311369fbf3d655c1912e28e6bf0b2783b8ea850302047c435bb5006730650230689df8f33e093b32ede4ce8ebc91bbc12528c416ba4ad8d0035efab1682a5050b0cb51a706531344f0737952eb65b82a023100cfe18659ee1559baa0fa642a55cbc9072045e2f94dab20f384c7ac4e0d6b6f076c6e61fcd90b2e42fd643f7decb3908e0302047c435bb500683066023100a1a71e430bc941a85fc5f5389a8c4e9c9f09aaea10254355fe0b2a38db15d4c39cf76181968517af4205876c65e974fb0231009d433d9db840bfbba25e6223db74d0c942c018f3814bb6a7b585e1694a1b8902c90b6a4ad87e1f4c141ad465377d1adc0302047c435bb500683066023100b23f942159eede4a45b943b2da90557bd434f0fec17c5d04c18fac1cc4f3b3cf3a9a4991dbaeb7097c8529d04e59286a023100eaa004b5b0cd7c543d3df0dad9d95cb5f56c96e9e1200e15ec0e371aa7e15add739ed864cd00079ef8f51dacfef817a90302047c435bb500673065023100970cc15029b34bf97a40ba58f92598e2826de929f8ea1170c7a4bb48c680c8c02215a2f90ad9cdd93348f3e8272facbc02306944d96f11841044409f47a3a7c692e35c477397e806d7ec2add14024b031f48fc6235f6bdc23e96b9e472756b1e10860302047c435bb500673065023068d2ca337a310db5fd23117ecff6b008c2d5d01092b528a24e3d6b20b12aebd6bf65ffdeb7c1423be1ea13bb67501ef7023100e6c8b5dd6929e73bd536ec9b3e8333505c8dc918d264b3eb499afae13035535f98d21ebd10a62d67bb5761360ede7d050302047c435bb500673065023100eb9dabffa852f3e7b70e7a8d2ec82f8687e0018376b335e109a54f7fe4bb3cf4784f2844cd7b3632b5ea2f738c2c5c7a0230726d3138fb2f9453c8dfd06b36c62da492345f55cb90e9d0adf110df3eaf466cd1748d453eb7883a4d64069f0a2c2bd90302047c435bb500673065023100ef12b471a5c87454c03b1ced4ab799b9d633788e631d679f316884fefce6df2218870267cc6f75ff8cbbfafe0c0d9cb502303b0a66b7a513036597dc0130cf995794afec2b20ac395221325dc8a68bb87e646d2745e5e8265e70b32389b50779c0170302047c435bb50067306502310090ebd19ae2476fa6693b1deec642cacdd9a4911a969c610143a72fe753e947a31bde0799f94db55c58ae6b2e4d90836e023010c8275b3f4f560bdf243f732954937b2c6b46ed841b488f946df0c4045eea3e6443d3bf9941234c0956a17e7ad41c950302047c435bb500673065023100fed20a25261605b61fbf68df7f4a516cfe3f16f510e6a3775382346b54688c7dae2333fc56f671a9921e8e255714096f023021ce00dde60586ce6ee66a6d8ab0e0f8933f0fddaee002943a66930362d50fab48aabf67191658ee42d1e2bede2f7dd70302047c435bb500683066023100ef6f95c3016563e082fb70497ba1db9b58119c5f624a8081ec9c258c6e9c3138fe93b84d8a572cab6a221c83756f3964023100b3367ca5a04e61066c1bccddf9581ffa6d6fac413fa142cfd54b814d833c7af94e13921567ad1ef86c8bf62a71437b470302047c435bb50068306602310080ab4e3c3abf03bb211cf2b34d6dc722a07e939797c47217338a1cfd19e5677cb18ce6e0e66eaeb66d5ff7669ba50eaa023100fcbd2ca76bf0188d68981d020ff7ca85987f9457b3f639e96bf3f510e42b7228d1227e762b8bc00c5b1a1fd67ba114c00302047c435bb500673065023100d37a02bdc06df54c57b8062b073cc044f760e9f5d86de2edde0ac79dc8715142ae2f94cd27701ec33d91bbf36a14f70a0230262640bb967509ac1425d918d1f51762a50b3da6d48a05a54fb9eba994851c10611af41beeebe3426272156c9221ad7c0302047c435bb500683066023100eab45c99a81acfe931539feb1e4661d21c8585fd3846605c49362d79f96fbad6d7232390fdaefd84147dde72cdeab349023100a633527619f05486a893b53757902d6146ff791f17273ced80df1941338494e21e24de5d3ac4fe1450430865a434613a0302047c435bb50066306402305d1f0407a61320aa104362111bc03bde1d95c26ab57b121f76bcbf5afc2b2eed216bba777ceb417e9d59ea70f7cc48e8023072044330c712c330acff0382ad654e030be3d6ae5cfc5c37572aa64116b3470c940cdb288111e9f3f2aa1d343603e3c90302047c435bb500683066023100e5d23ffba228624f3dbda2c58ba62db7bbd3296936690a9b579e3e53175dc090b117dea8c2bdaf3832c93c3de33ff1c4023100c489a678906e1b4618df8fe7eff1d7156f813c602bce36ffd755af1fd07af74e58efe993ad572ae803a8bd89448ef9310302047c435bb500663064023076d1228aa2a19355c369acb1f8e4a0358e0e385461b06211f9660b9b3e11c66acfc6c0144d6d09e5d031d43fc0286c50023034a0395d39f3c7bb66a29989ea0755b7a162b1ae50973e62148b532e475146aa082d5167932cbb86e404b39cf2382d530302047c435bb5006830660231009b2bbeccbb8fdf2e4de72a19eba7609403dbef9808f3b897e3dcbad9b9e3238e916771a0063419f16b66625c076134d2023100b0d34c46aff118b5904b1e13c29f6f3534626196a51c455f3ae2fd2441aa8b1489a2b1fbdf811d165ae1d710bab7e9eb0302047c435bb500663064023069083ca606d934150520f579fd89ca9eb42b54d21a95d5a8a5942739793d9471ce5eddbe0a980ca704197e2d914bbd2502307a6356a2d75c842af9741fd36a6b24a94d315a4eb4485223193857d8bfcbae2ef5c1575237f8c0c1a256b8337d59b98a0302047c435bb5006830660231009f9fc4b32a0262feedc9fb0741b45f4cca87790f741addbecf74984995659396bb25e185a66f272e66c3464e12afb80f0231009ec3d3212551e59fea5a675a3507c454c2e74b412c403c60e53196401b4e101b2f36fe85151b5d13ba9607cd172ed5db0302047c435bb500673065023100fec38085240da0d8f10a6d894db6e2555074b98d0b72fc685b15f2590633204a511b34c6aabd610def7730952fab732b02302aae9835dee69228cd0ea35b701fb5218c3053e8db167b35113153a5f1dd7458ce164a50e93c639cdaff6606098f73fc0302047c435bb500663064023031a6d039f9f4f97146a6e13743cf984fe80273e7ee10c6453606abb98c9617b324e79e1d1983cbf39a42859ab425249502306297e9fd694ddf0045983666b883af7b199d61a470588b907a5456e6ee98955edc2daf6fccefdb33e12ad50cbbef31480302047c435bb500673065023100cbc684a009d987fc404402df428e0d9f089b8249d9c4780746a822729657a376dc19d14247026ecc74081003c1128e7d02306a80d03447ab059fccba5a4b499ed0f733242b0e1d425d980311aa1df60aaf41c9d0bbb0038ef7b983b10bc8b93e30cc0302047c435bb500673065023056dedb1b0bd9583b8b1e350e65e3f3fa20bf2542a47ae24e54a5411eeb9d1a446b68e157a7a75d3b68aebe718ecfa520023100f08197fffcca939655d2b7aa2fca955294314a178df5de340599364b9bf0f44c643ac535ffc55464611b3f995fc5d9be0302047c435bb500663064023065824535f9e8bd52f8b5e5f4c8bcb7296c792d8cedb9be527682e057396cf2e27e648fb932457dd2efbece580763035b02301d79f5378dea14901c19ce8ae098e7f15136b93c8fba257dbd6da4d536b947cf0522cc7275c362031d5224f95ce23ea40302047c435bb50067306502306e9171e147d117ff25f2a79d4999ae480ef6e995f726ab48dab868b5eb1d0308cf789e22691d18edcb9d5e634e0fe15b023100e2a548be4b9ccdcd796c69037c11e62c1edd35b7670d734e0f0b6fc5df732e62416cfe795d0f239e3af7d488de2692410302047c435bb500683066023100bcb61206b94ceea3851a2184eea826c43dc4667ef1dc5fd3177f298aa1078fbe43b944c9daecffc1e73a5b9c4bc14762023100a540044711b6fc5105c8d73b85e3d30a7c11f99607762e1e37c42354ebe33fc44e1eadd5b72054738041af6d5d020c0c0302047c435bb5006830660231009486b65379daf524b2d9850be73e1f42f96a03476278572c1ba7d7a011836b68c7bee8629458d9519041434238a1c3a80231009c0f32c8e44b08bbecf2e9a3d75bb3dedda99be231b5e40ceb12d2c594dda671850cd8c954e6916758d54a47db5ce42e0302047c435bb500683066023100d61174cc13b6f77f02506716c0451d72b025173881045ae64fbc64f2329eb9faaa6e4ac683a6df70e7261c3f8b22ef11023100f1ad8a4ae773dc9a31ead7e4dabe6e6a873e7f6eaef99f88baf0ad6bc2b9beb8081609b499c7af7d2a20a9e82b5da4fe0302047c435bb500663064023029a376d0d0e1371baf05102f3430a1a8c961e0cdd0ed90b84eb47c3ff1376d4a1bd731df62c56817c1fa96a67ec9e9f4023066519db1d8383e9627651f8131921a5bb85adae0c5e1b8bc5486ce72fe0fc5487fff3c14df93519d359276f757ee5c000302047c435bb50067306502310099e90351936d70378fc144b3f9accc6c15de0d0a3c442b9b0582168504c9fb28c93d87b0813a1643b6fed1b95a2a0e150230406177989e0754d0abf8a84ba700e963cb1c77b8e6002788b607e57d60779e22db8f94264b8d49790119d1566d1fc7260302047c435bb5006830660231008e2b5f7708af08bcb39226667355abb708d067faeca826e64764edb4b8243884181912788e6ac874838b0642338315910231008de6ce8f63fd37b356f22a0d668c6a33dbe22799fc2281475149c2d2b5b8ca8eba3aa54d7985a9fca3f4ec76f9640ba40302047c435bb500683066023100bf93721130cf37d0cde2a19f562ff7231b9c27329b67e4005f74de876252a54091426886e49779c6041d1e6090aa51cb023100971c7401cc4d51a455bbeccd0621e838458f24c90c203ed5a7067be6f40be82dc42ff0869549f9a716b715366a9ee8d80302047c435bb500683066023100a610b0c60ef09707c487734d1ff6f13556c1e52897806f907c5c148fa4b6e9bbc7f288bc3661b9be64e00534e09315ba023100e91e37abf6dde5ae42d13413f8650392520148a072a110d0f34cd60d02a35d0743c876b68499ac1677036466efc73b4c0302047c435bb50067306502303189e4a1ae9ef10312c972f342f55b79cc9e6e1ea62a71196e613d205a0a8f3551cc2cd24fa032897b00412a0723c7ea023100f3857054a782319615058e06258a8ea12dfa97cf4655503067190c2df6a097422a1886276bcf17e4a21ad5140b29711f0302047c435bb500663064023039c439503b56f715d55f761c11b755da48a5ab860d5c15b13cbcb01c94f2a6dc7da2bcf87684f8a38235fc21812df2ec0230434dc895e6d0fae8ddd20b97a11fd45ccc0559ff01204bba0a13f63da4993674245faeaabe01565ed7794369f4ba1f0c0302047c435bb500683066023100e4cb7adc9147234a584a50c40c288c2cdbd2205dd5c1fe0d6e535bc2728476cc468609b4b3c174563bc70f39ebd884500231008c595d255cf6c296ad0042031789a96ee0ae4b693084767a5c6c6878630772f9f6f3d54c32d39a8548dc2b3c7022483b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303e3f932959e3fff34deb41593586a66085bd004c15d1197854c69c6bc5bceec1619689fe510ecae96b12e3849b027b450230499a4ce334b57abf8abdb1aa53e62c4b43aa69839f28a5c1c29b8f1e2776c106c9f52440b0a35a6cd5423d69d47fa3070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023051e3f4b89dbfacb73ad639a56f0b58bbd00a8c90f22dc3818654222939fa160d7b1707dc4200a2fa1b544229b4352bac02306b110d217fba77a210cdd7903e379be298ddb198c78377ab7c616ca537d86305b6913e41189e1004875c679c65579f7c0302047c435bb500663064023004a6e116abdc40c59c781e074ac8f127b51c24dc1256e38619db81864f6fb9ae3dc264c13fbdc5d2962aeff1cad08fc90230755fd7621e1f0242c3141e286cbdf6b51da29af2102b9b4bd6b37ab77c73d42bd40eb1958097018dc0766e0a6067ddb10302047c435bb50066306402302d558f630c1c95cdb217be49c9875be973f7b599058945a959823767e723029091808d7c7931c4ef5dcd902b6fe3475602306dacbb4bf0ba25a0ab6a59239236a074fd3bd2ed912d1d803ac4ded8cc591f5d1386128134df3ff2ae7b54525d15abfd0302047c435bb50066306402300903c3ee12f52f5d197e88ba2e057fdb52ef49e9baf8c793494c3630ed2c1a7d7ddf044a4e889c8d60be8acd6fc9e4d502307f0906f94bdb2b80ab1b72b669b9050e77132982a955219628b266402ef8aefd8476d437c5d4fff4f8479ffb4d687d610302047c435bb500673065023100ac2be03a355fc79d10fe9cfc5d6aee30ffae46a2458e8c90bc6e4f1942970d377943f57cdd3438e1e7fec06c8a14f04102303f2df688410edfeaeb93867c6401609d13b097c3ac3709b1acb30de71162ab7021e01165cbe81fe9819a03f986c1a4d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023005042d091e270ab57acd75b5ed99d8c9088fc32e3c314b67b2b840a251df4e50e892dcfbe161491b59d34b3acaba6cfe023100e60fb55cb29ef9c6186f587f7dd182e6e560d19898fe935742cd72a9dd8f99ab57b95f7a58939936260ef1884004c3010302047c435bb50067306502305a4743d076f988098bd74709a788874ccaac3917bf7bee4f4a4b8ec4f6a8bb584e138c978908da493e8d7a46655b8d7a023100e2c302bb24c050c77dc4d350c613ce7e08780d3bfb1df91511de3ed2927554b47f909a4d25a466bd8126bafa0f952c750302047c435bb500683066023100b99908f54c45a967c566308b742f45c649a41d025a629bd49f2455870990ed37f7b30bf1d718e1069c820845d1c3e207023100f925aa1ad06b300f2f6315c51fb6fe761f73f89e4c7ab2a0e898ef5a5aa5a42bd40e1620b97bc7aac25565bc520a1f5d0302047c435bb50067306502302812fb3c52711b67eeed69ab07aaaaadb6ed90af416dab5e5addc65251674879e32efd5811c8875fc59110e128ea183c02310089aaf95e7d2fc4206fda211a0544c3691ba8ba094d3c629184c2a6ee690e6dcfba710c6361eae4f6f2b0a23a96b5b9f50302047c435bb50067306502300f22cbe32acc43a4dbd76ad55a174602ab692a23555304ea08af7241a9a0efbbe12c253fb2a586aba12bfbac40717ba3023100e56ce6f95199faa3d39b54bffc7630f54ec0dfcbf8cb7163cae0ee539eb6bacb26c157d6d9f48a5c858b03f26404730b0302047c435bb50066306402301f941ab08d57dacedbb0a231d9285370fe05b6c3c4ef890fa0a6ac9ff2068a8ffd8a8c4b4dc0c3bf95ca994477fe2b36023060934845e112c896f9c234ff80a53639fc34426bb62133cd6cab61e77659ee29dc7070838d15f1b1fadbc086f39719fd0302047c435bb500683066023100e747266ec0327934571078b482bb7da7c4737a1c3270e3e3b45c31e9249c5707398dd074e49b91e62f933039ed93f6f8023100c23134a89c159575597e9f81dd8ac4d540821ba92794d680fbd49c5c40e3f90ae7138ac134e3584277f4d0b3bb4f9d600302047c435bb50067306502310080a9ec8ed27e7b2a91ec899d0f5bd43d5d516a61183b818be533c4a6c7d097986d6a71ed86e93eda4c5dadb4920865630230607ce3df0fc8ffe04bfdc9b6763ba44ded3a840419af701761acac7b97735b131f586eb37fd51bc7f9bda1a36693df050302047c435bb500673065023062843e39918fcde720a16e08f7d029ccc4da4ca5c08c1317325b5fee9aa6c90e898e4310ceda3800fb0f0e84c3cd769f023100fddbf1f9108430d7e3fdbadf4822f0ef3a66e59b4051b23004ee3ed82870002f277a83cd56280665f6b4568e303d09d30302047c435bb50067306502306ce46e28f53e7ddf12a7fbf73760df2421881c3e6894c2255b9b97993941fdcd03e7524237bf030eb14953e41b6736dc0231008a3e3a96fb26a6d39c221b88c965f2350a176668488e51e63aefc025dd75fa57d1d641d8047072249980f155f6309ea20302047c435bb500673065023100cea2cb2e753c15700ff65516e2248d301678ebeafc8290037285e0790d8092994901f050d476eb4383075018ea33cb740230651ad119f254f6bdfc5b0a8c9bde49a8660eeb968388b8ee772755e92343acdb153da6bd37bea7d8497ae6635682da3e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023009f0063c8927b072bc1ff40f0d9e7d36319df27251921689c829b9d5740c896049a0c197701d8787cb1fb52cec4b33a2023100a0b31a15930e9139ef1b195e077579e78f7167c29e16ee4d088ba82a368aed240be10d7fe9a77ff80bcfd366ed8754a30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023046e96719373c6948bd1285964576b59ad62f8cf35e757fbf3cad67c0b33923d5586ca61ca9314c091fc03835d479483f02300bb2bc0d41b05bbf8d74577eefd33e330b1da83b3357b9e758f002ea0d16bed23e02e8ba75fb289c5e85fd0e3cb72b6c0302047c435bb500673065023050f927b569ca1a6c962d964507890751e5b8b5cc359c72c68e934c77a48bf5d3d091f5279d98cc3410c53ba8d16e5e66023100e9c36548928bef5d464293f6830c01ab47841824f1a05928be87331b67ed04989930a6a69c36bc485e1fd80c45bbe7c60302047c435bb50066306402307ddcfe80a55e513db01be9732fdb22a9a87b9aef39b18c5f44017544869e48b250c5067ef417cd30d2e891ecf032a3e7023076fae283ee0aaba5e9a61de896509394a285601cc00c4251ec6bdaf69bf56eef4d974dbf335b680bf849895c773f699f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c3ad9257ff23c82247d69343f973e4007a92703c74483581595068d2d8486463970356386e0609f7c25c62d1a371e21502305b3bfa3f7cafa4d71722e04a02c195d3d94694df84d438ecbf318ac381e0bd1fed4cae31a13670404a264377df8ee9a80302047c435bb500683066023100a7a8a791320caeae07ffc04408b1178064f5ffeef01b98523488f5d8a2998e6edcdebb3c188489a5a37498abcd31be0e023100f6061db569eadc805383f8478b629111742e68930e450c4f7e5b9c9591d7bcffa15ad1774fbad0a4e9900483495e93d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b6a61d70eb0a806563d8004e921a181bf4b50d058d9d55bfa362e973ce32e2a269bbbcb0722492df0de09f8dbdbd2938023052ee918d27197e9fd894a19c6d82ae5461a7cdbb86406ce3e38d5824798d5115cd17077999da219713952bb03a7f56160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306bc50e727fd7fd2080556cc31923ef83c5a915f98631a2b3a2646a7ca231c12da317be5588dd741b703f8a12139e02ce023100c87bd42957c2ec89e30823a635729d59f00c584c03bb3cb84dcca723a312f405d7a99a7685443201c7c14292a2ced22c0302047c435bb500673065023019eb2a01e9fcd052cb04c3aa69fe11321d1953c1e095a037756c98d2d79e152a8b67a097cd728d223b2208350d2290620231009bee9955f586f86382fdc447313716b35fbdc8767dafd11cd79568886f45ea0e0250cba79432bf4c379add5db684c83c0302047c435bb5006830660231009805de072d8cd43449ec3042cd09d28658cb767744a850555e478a4a2d5119fea71b2de78743d28b2681fe6642e5fba902310096bc8a84db7263f968ac7d6ffb880852e285fe98543445200eeba683680619f8b12cb3dc5a3ac780d3fa2b0b280dfca60302047c435bb5006730650230126102793a159e85f5b7f32abdec7cae07a8cd115afe5046136b0b2b66e5b31c454cf4d639803787ab54cf25795586c50231009025fb0758181a553b619cf2619f0b70d07d99c7a54d10ecb1638a5562b5ae3f9db60aed6ef1e3f16a269b7f81ef36bb0302047c435bb500683066023100a54cc2bb330431cb1361bde76a8f2e0a2931f92f8804ba0062df519ef8adae82a37844cd81457247783979846b8a02f3023100b9e9df6a87cd4b76f349fff1a9cdb9a71afcfeaf8f0756e1d6b6ed97b0b59b6f9bedef673b5b81431c56f1d3624246670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305cea62b4163b67a2f2ea22e95260ec8e14466a66c52e2e37542d4ea48948beb3b52a49b6ddfacc96e3f952b3a027fbc2023100d1bd80c872ddc492f943b55701d527756e0f29c98d5f53c4bba97a6523340dd16ea0d3f3895a3be5acb4aeb08fef2aca0302047c435bb500683066023100b0fb78e447b632bce0b7769f522d44470ed6c553e51d88c494af12f561caf0a80bb46b07d2a3aea5f7242523fa4c92ef023100918695527d30001a83b0c6e74bf485758351c07454e69c6e36e5322a2ac53219ad2587ab242282d64239b232520a65e80302047c435bb500673065023100bb989502997a807a35574e3db270cf9d837ac8e460e77a6bd7debfa1640e19e0cd171d88d1beab6bd904ff3ae8fd50d302305e539f64602d1713b68771831899656dc13fe9fc5664708d9ae6d19687d1f3d195c7e0792ba6d33377800b5d5e460ffa0302047c435bb500673065023100aed7271d9cc112a039707a4398c416d7bfd2c725cdf2df82506bd526e77f26a9f8e71db51ba16a8aafe88ef7d4250aa7023010a1959bc98e5e43552fe68fc8ee90a3605eacb696d9a4b6a54dd555b4b6af640b8b92e42c74f6b1f061690e8310767f0302047c435bb500673065023100fc885a9392281f677cff3466016e980dd86faad7e5d9c9e1bafe5d9352e8d828f53aa22e65f13dc59f26994f7a573a74023045a3e804ba233aff75a75a6e383a6766a8b58925bbbb996d35ef170d8305fd8de6227b4bf6341c33aafe777f50cee5000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300f74040dd4b9bdeff5025f1621fa7582e2b9351ca865f9f9b91a0616b3165014c7c2e69bc265735786fe9b0e7b497cbe023100829a9b79838a43470d6ed056cd307b634631d5652984928fbfa9a78247a554b4bf0003e7e6675b5404a1a06b1bc1483e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307908ee8e215beecb68cabff96c7f48a22a462a25d0568b56366737207464137d1a53cdf4248b4ab9b0fa7d4e84ff8395023012e9555597a3c3b0dd51168293d5afd71cfd984e12016a60c4f6b80f08e8ecdceaa7c698087ac3278caf7db125fe6b430302047c435bb500683066023100ff002b728f4cf6ee3048c7d3c6feecc5b204107d0f540200610f3261c3e9acca721868cd2d77e419ced00d4841fb7f5a023100c8caadaba95902fade37d792c03873cda62f667b7746b011163faccdddcc85f5edd828791d7a15fab52e476ed6fd5a150302047c435bb5006730650230036dfe6dfbf13b87c3462d31b48908e10179ae5ed7736b5c44267e30cf87b6c845edc7e6e6522a51cf33bc426cba957d023100e24666bd3c6b8bdd18b24e8a46c1d30bf17ce76056926acd5d85516eff356507c01c0ee45035cdcbf20c87d979def73f0302047c435bb500673065023053001971de43758dfc6ad9d1f1a69a8a92401acefe28ad64240c5ff0c68207033036b926db64afaf5b9fb9df7df75523023100abffbcfe001104a5f671e30b91c286fb16c2f34374a478d3e41bdd1e5bea53ad9e1809dc4de8fcd4f5332ed552a3e8860302047c435bb5006830660231008d2a97068242c0ac65c5137828db881efc236f53fcdce4b76ac6386d76d54a72e5cb913accf01d7f2f33c1cec7bcde02023100d87cf9c5ff05acfad7f07117f37e7d54735cc756d67cd13e6731698c0353eb7c8c09ba2f3a5d32df83ee250d8d43e5800302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310089a5d13e77490d3931ad3ca1d9a7f7fafae54565a812a860a000b808584060799183de4c32eeba48cef7c9043da5fa6e023100b74e006d544851dcca7ef293d758de1ea684f3d5bc9eff692de011a89ebf3cc5a5065a2382d148e099c7ee13429d75a60302047c435bb5006830660231009c5a83e22879d2115e292b0b099fdd88faa8fcde47314c05517761ec376ce2962c02893a3cc02a44a3746273b9102631023100d89bc3aa7e9916ff52ffb38290511fe7773e484c3b51d4112be1a522021cfbe636c664582462e498881784abb623b5140302047c435bb50066306402307e96a3fe94daafb16528b2ab99128bf4a8c380c9fca205314b239e69b8f3ec8ee6a13f5b2d01998ac74b11ed082e4f2602301afcd86236d94663f5a4592413f027cd0811b63920057afe693035e34de415fab2857e320bf99f0f74c62c6720ebdffd0302047c435bb500683066023100dcb37972714ee08e363bdb37d1de98dddae1853b7151e0b989baf923d43df7c356a15b98139fb321c540c153883d17f7023100ec2759cce39c0a2c560842af11cfb38bd8fe0eddbc6783fc17386729ed6cb57bb997894a719c914d3a29c3996f6b488c0302047c435bb500673065023079a95f25eead8ad00ede11d944906b36f55069e97f5ce1624245f2b2dc4fdaffd9bb0f61830e2feb4ce252f605b10eab023100c4d8e4623b64dd631a18bdb9a75a38c147854478f074a64f32dcb0ccc0fb2be03d878b1f86ec72bfb709b6edb7196d820302047c435bb50067306502301869c8443c9c619bd9585a3eeb58861ecd5b10162c429973d599d3e5511d0a3adb76d38b4171e16ed869f604cd42569d02310088295720e83f9eb69f9555d434d15d5f81dd271f14373aa68d2f0eb48f44e11d8611dd730508518962f19c50181191170302047c435bb5006730650230593d6161e3785ea1191f74ee123f5f061632d75ec292c7ffc38ab40cc021ed09c31c1853d642480eaaf5ceea9533f67d023100cd21ee644012f820045372917a31348d9a3600114104395e36e08a7608b1bb93b1658ca8ba5a4afe75e8bd961a9490170302047c435bb50067306502305030843fbb75cd76e08c2ca4f03beb08c8b342a317f93129c4c1309e68f8f1ffaba3cd52ab45934aa841805a1ca4d371023100b3bf8ff40ae019d2dcd7d5e75b4f91996d3f70ee45117e4f776f20e44b143197ad851d53f747c31c63158f65548d2f980302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009e5e637c8bfd95ff91997e23cd87bdec49caadb28ead612e4952087ffcaba7b870257e9e9e138821c66e6b12b46f46cb0230460e5bdd1173431b2ae3b09fdda59acd17d1d6c3cf3ef2ee4a11694325b80686efe3360823e176015fdf00ddec770a3a0302047c435bb500663064023043568a6b858f603ae99cb579e9bcf710236e7e9ddc639d5cc8ad08dbdabc0491f18d223b34bf78e4d15b9bbcdceeb61802300925eb7ca8cea86ead6cbe2cec802e1f8ad93a8a07e3c03a9f501c58f429d888ae930b736af32efc10bad4148dae2d780302047c435bb500683066023100ac4e7a63cd57544efd8319561117f66572cbbd1bb190e555e07043614b8cdbd6a9b7040d8aecb8f1e98151a810f1af01023100b331011c70999d41afdc2e4687379fbfff84c8c298b8642e22ead46949768ee04c8ee09fa581ac5555e7c7fe2a3fdcb50302047c435bb500663064023056d0ad06b38fb213dca40cda358f986a575212faea7b70f3d34d97049800064f1506a04fec57d70109c1f8afb527e9b90230667cbe4efdbfa992e62963bd982aced4e115ad6e2b30e5f91f4e95d50c6562172d114754f2fc336bdaf9e7622e36faa40302047c435bb500683066023100c6acc5e1af5223c78044a56cf399a581f35c4e3feb5e79bcb2f9bc0714182b567b7ac2c72d3af1de7aa10373b50f959f023100ea85c5b05126d48751c5eda18e508fe3d140792423b28618ddcbc23597ebe9186fff9d362b459ebcd222eff2d163aa440302047c435bb500683066023100e95f047a6cafc382f12cedd3a946efcafc2b11c67c30ced433be7599e3fb1a81853e622d4895861de954b2451e68b13b023100a32009277077d54ea0a2c095dccf7b50e8b9d488f5bbe258f79c43c522bcc66deb4710980b643445376024014709e28b0302047c435bb5006730650231008b448075b38dc020d0c134441d7ad87984564a1c39e9286acb9acb16f1054dc3954dea4942adeb9acf91bd0c522f190b02302cc20599291a47e350e8abe23e3d83905b72c744e013f65acba0ebe8786c45aa8068d4a98fe806299e8418b6ded1b3200302047c435bb500663064023023d56fc50f777ebe7a360dd6302f276bae50dd6dc91d9569552fa57880a596d58fa926b4a2b6c173542148e297c12f5d023007854777b4c4e979e54a8d31721b70a99335ac31d3f10a7b751701763b05dbd070977904dd22676c5b6efe58341ebd540302047c435bb50067306502307bedcb47d78b4806a6ec4d986a3fa1f1bad1a8c8e1f24431b19e5c3cd765029607119edbd2172e21b23365fdcdafa3430231009c2b84302ba53f5697072bf4f9069b60b2c3fca33c2c45dc10179cd7896e829f0c2cb7efb0ac6279f9c70a06c09f8d6c0302047c435bb5006630640230048713808b81eaa78cb424535146efd8526398e417e26f39cb823903bb751d9d451cfcb9def68fdcdd23292d83f915ee02302fba505ffe31a916e979c6835f29df09697e8def9d2e0db4e2edd818bbc557e2f29a1ed3e1f5f3274cab7812b00349fb0302047c435bb500683066023100d6a3964db460e3ed19d6d7e0d2e84ae9688f2481f023425963ca8420c5bf862ed893c56a8c6d36189fc7544b78d41d0a023100b2d397b550e9b3f8223b95b5a86d4c056ddabb37b3bbb0dcafd0fdc772d0821876745ebe27bd3fb9963d2cecba9e3c500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cc752e7b064d9d44337023bec698b50b90d37507ea9761b2c2b79ccdc26232253d736fdcac1e0017a8e422517a354bdc023100aad2872135996b556fbafcafbcf521f25b8a83679c695693d12db8ca26cf2848e92a74a7cf7ef7589af967a1f7a66c7a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ac72770191c937262cde1a5f68ece8c0dae462fde868c9ff999586f6af10051cef6d1da3267b5823392bd4071e03b52b023100cbaaec01e42a275c1e40d259ebf4cf7df3ac46ac9f1912aa955bcbf7028e5e243701122cec610e5c2a2fc41802e3b8e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100eea3d9c8c16b35afe43103fff77490ae5344521ae0f36785b67b4ccfddd596f2de9b7a8e204eeb04b284dd17315b15dd023050db985de398ce4a254dbb47bf7a4f4751751d2939c0fc829556199fba6b89f23e98f3c7a7c1902061455596d28d4fec0302047c435bb500683066023100dec79776421ce5ea495aacdebb25f5ff4d4f52f23ddcd362c3795dae96e2a152507941ee221a2aaa2cb202ce230cb870023100e96f07fdc676000479b8c41187cfbd29ffd96c64411e37b6b8ae161f5635a7f540f7e099cc91883f2c606a5aaa6bd0d80302047c435bb5006630640230186bee3efa8743cf11edc32b0daf2d23de070bec366103227a1122cadae5f789b4818174829d6e571ecef9254c6a5f9d02301987069a083f10dfa11477993bb0f758cd159bd3e941392988450d7a331729f1f74f252e7ee8e8d705099f62321e550b0302047c435bb50067306502300d51c21bf580251ae0d476a69377b4bcee4b659efbbf7c8b5e7b4cd6a50695c05010a0b9a43129e6dbc3e4063d64117c023100f22b4d4eb2324fb12ff665e9cbe98c38333e82c8a8d1658c5b8f8985079230634a746a6090eaa71389014cd66be8bf210302047c435bb5006630640230186fad32ed8613079d5d6bfcb9e899ff778c5bca557df36fef57e4f07682730c7defbec704c9aa01db2e8fb45655f59702300eaad67df63a20ce5765b680608d5fbb78cb843ff192f8a9992c5f30d2ad09f12577f1db4db88db0d55b78606e6bc3230302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e1d244d3783ce1b99616cf013f7a18595483ff0e65e250bc197ea87b88387361de97c840ea8183f5737c77e05c263872023016e4f6bc2619d6489ad5c0d2bdc427e4bb1d4ebe621328c5a217a63b6afdf3196799978f5430328b61d0d8587fda73060302047c435bb500673065023100b90ad3763ab58f351277ae5b9dd46860efabb71cb03cef6c481b2dd05adc745b3435be06f8a29c37250107ace897e64e02301ce1ecf22b162b42f07e6944877e842ce223b52e92c193012c962ef524a162485f208677c4793fc61aecbb532d6a887c0302047c435bb5006730650231009c3ba3cb18f6f326f5881f0fda968fb3a299386c68276a49aa0c8a3e06babea6552cc13758b7be17f28e58be09135402023054e1f231f3ca5e7358f833e7c102415f3c897e674f249abc94b83d40cd718a1e0ee993a48b3acb85e7b09ea68f206ad10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230251ba2ade710475a595eeefff67e0d1bd6fce52d50c6305362ffb612ba5fae4f7763f1646831fc0a467b223d389220b1023100c2910c0af5ba0b06de148eeb2f3944312edbce9c1156ee3029a02e093c8a283753ed85c3e339bb762c19a7da1b23f14c0302047c435bb50068306602310081fb745a51b11c690a850140fab93e23d98c0812d073f84b48e90ef03bb874365f824e72765a702d2b24cf2c587659010231009ee237c457c61c2f7aa7a97f4d63903942dd68cddbdc3ba21cdc7b324c603b701d523ca93c16ec571e026575026189df0302047c435bb500673065023100970884a426831cd1c4e8ad2a0665e3c315bb99d029a3cefdb03a17c60c6d0ee2e746677d238832e7cc648b3637dd0aa602301ead35ad77f9dafc19bf26c68d12850638caca02b2dea2ae3b007888606cd0cb184525ef0bf8729dc908ded7bc4e36e90302047c435bb500683066023100f204f921eff0a3f91b0b8d8824abb58f64b39d58ff4b02a3daaea65ca851d0a14dafd9a96f7a926f073cd00ae0968e99023100ab5c5df2ab2b447e8610a5f68351e1b063b73010cb952c7229e347afe71b4cb386d57482763ea2dd3d5a8446a6d096290302047c435bb50067306502303045e5bee7ca45bfc3f6fe657de3f3fb5580455c9dbe31831447d7d160aad429527cb6007465d0cf78dd4e52a3dcf62b0231009bfc9efda53b4e50982a5e290dfda87fb605bea946e683b1becd3bd33a6e291b533b6e457019ff24621cf9b2383d261e0302047c435bb50067306502307241837ae2c56ff2a237710f54d6d2d5d76e836d21598e6caa192658ef15e25d3b7b171153ab3debd51f025bb692664d0231009b6f1999b79492bc558147c8820c5eff354310bd15ccc35dbc5207061934617d9df2ae87e7f37fab7479324944905b6a0302047c435bb500683066023100d70939f015e1381120e4433043a69f2cc5a92c13b570a95239a4d31377e4786ee95a630925e994b0d77d746066f23a7a023100a75de0bc7b3037ca4c79b7cd335236cec7996bf264cae367de72a7997605bbd91bb8791e0254821e06cdda07df5b755f0302047c435bb500663064023044a673a61e5cb6b82331fa2092d09bbe92f9e6d012e5767a7c284679b858cc48f3e744e7f76d4680dfadf8a84405636602306a2e970746284c09161560120dae3cc3789187f0a22c73dace9ab75b3f7bd9bc735ce8d3d59e73a3e99e9e365b4b3e9b0302047c435bb50067306502310093b74985294b136661af77c8b217ce71bba93ae81025216549f751910cf4d230bb2003aea807e9e8d9de0acead5fc1de02302098c6f796ff8e773c6827f0eade5dcab43d505f227e497029bfe66f2c55530798099410deac5b6191b477da708eaa8f0302047c435bb500663064023071721a1f3469a1c7da291eadb4733bf6effeb1f13f2c7076a9a7dfbd83d2fedbe7efa5accccb383031790781d84ea2aa023036c4f41434c6c6404ea3320c24f1675910194e730a0c2eaa8d05933acf296b11ce8e55fa1934f97bf902f1a43b5e54b80302047c435bb5006630640230460738b3754d76cfc757029bcfc4ccf431e0f04fe0cfedb887f719920d7917499fcd4bfcad7b206d73072fc0b314cf3902302aad11d6f238df8d19a8698cfd0d6d5a78eed45f972c2296e0bc7d2065ddb0d5b1d02a778143f2913238630f30d6cb810302047c435bb50066306402300fbd4fb1549956426761d63db9d39c52fe799ecfb5e7cab8ba063a6f08cdf7819ac037fcd841986cf18665584f9f670b023042d87c0c0996d3b3516cd1392efe2a6d31e1b05f1b2ddd0446038bcbb032c0257ed67c47d03eba38400b518d86dbd8ce0302047c435bb50067306502310095fb27c3e4c8761fe96da798bda7de01d9054709032d165eb19ae152674b618bb2a88ce7b195b4058f407856010a309c02306147abc5a2de45435b45261df93847c3f3b42f7e7d89ccc1bb14740ae0d44904b3c0ae2fd34cf2309353eeda67bd18620302047c435bb500673065023100e3282c28cc63bf0fceeeda78d5697ee8b95bfefa6e14d3f5158bc4792d8314be80ea0b6a1269770b622c6615ad0def6502307729f6cdd79d6ee45dca41f6c3f39d878bb284d2c4aa109f7f98aa0060a08bc6c45bd6d1fc90bd5386715a40c7cf8d050302047c435bb500663064023022757f3cfdb9f11af03bd7344929f9a9fac0a147f807cc7eea6fa46bbd5a0d397587dde3cb3a034f37bc3e9c5c8503cc02304b66b6ee5aa0da7e645249e9126310f62fd8554db931caf89d46ff0eb44bc104bb299c582fc3a394faea3bc6816818290302047c435bb50067306502310096e3c93474a7762e2dfd88e26c20c2244f05b89e677765fe0f918dec180ae5fe9010ddfeb847910d9ad6d0494759eb5002307768868a31ac0961c4544aaba11cb1545a0f4b8371280adfd7328fd32a8f426af8c35871a8cbafb548de8c17aceebc200302047c435bb500683066023100949aceccf20627a23d8efa0145ee6847bef25715d883144f5b46dcfe1e122ed6f3f86eff337de8d6d844f017d59ea49202310080c860eaf24c182dd86ef7e0e31a3c96deafef7a31538a66d58fb71589a3792988d6a2801da3aee3c9e231dcbf2784c60302047c435bb500673065023100dcd0bf73865821a8ef41c61b1d8aad00707786564338db5bdeca5c126dd60ded90382c22d4d5c11a52399c47c4874ef00230780569204f3072aaf713d10344f90529ee73eb62ceeb8166b7fbc78151ed1cdbebae4ff95d885cfe66ac006e2c8b3d0b0302047c435bb50066306402304b128e20821220c759b750e3428190a990815895d48777f2700cf4f8606f27797a188d88fe886350a8c215d8f269819302303081cd5bf2c355622d6eeaff3de73daa24b3d35d6781d2308f191bd42a10fad412c889c7dd0d0267eca53bf4a11450c90302047c435bb500663064023006778526f522401bbb10bc1feaadbccb6b511db657d9205f147cb9a6e2fcfbad37ba67bc55bb875eac5fbebe2bccb0dc02305ecdd42aacfb821510d18dc4ab7da7d13a2ce260875af0e6dc43f7cbec8c09a6144647c138e870d2769739d3f84893630302047c435bb500673065023100ca4ad0a46d9a30b1bd6e6a3c4082d0072cc9f0874dc3a51f22370845cf7dd751278d090b0a25520ed5b96d462d8f70c202301fb63bd0f6887ab407c07d9381855ba9e605c3a7c8ba83ed230777a5cec7b3f834a2af395092f5ecb769f35167c290740302047c435bb500673065023100a18b868e9f34df51ea0cc5b4d7a4e1879986f76837a7141cf6fcba0c0413299a3cad91b1329d5f716c712f5e7362f33b02303116a8fe5f3539698e5805a4426a981cc2295108835f49a30aa1a8a204a556db1ee370620ac4144966c4e343aa199dba0302047c435bb50067306502306989dfe09bfe60707f131970efe9663597c53b803e43107b1c719b668f90b0479b171bbe8026506fa9097123e6346e22023100ac5d059a1888f169833fa7b377b7f9f78f18f5c0469a95fbb538f6ffb14329d083c79be86d589730cb39947a3d6b8b3b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307939fde4b644387ddf93f65b7cd160f6cf4d949185d2ccc35a8c8b7c4a021ed4774e8911901d0863d8ecb7b83b0aee15023100e13ea9c6731e36006ec3813e505abf9b1d59b15c8614c604ee9364216671d732e77386b95c23b0d34530f975a2a4e70f0302047c435bb50067306502306dc96b9f3d1364e79eb8dcd4b125879108ccbd526ded6555c49f70ab856600a38003a31812ef806dcd47719038e2c246023100911258c1c2802fcbddc0960b165f60fcf2aec987bf3834342e8e279040a09e68b5b16c8e5667641fc5e72988465c48260302047c435bb5006730650230055544f68933560161b5b7a57613ae72d5aa63daf1fd3469755c0bd2706a715f8157014e475a87af4fc1a86c0e9e90030231009d69247d0f9f54b7270e5b32de71457949a8c3a127334a393258fdbec62c8c21921b65c8f7ea34c1d587e3cb79f665080302047c435bb500683066023100f56f99f39c39de6fc3a92d0d75a00df158c7e7ef72e7995f34ea45596239b4e74fbaa170f8e9061ab04c20355b94bdbb023100a5287c8235289b61b00c8032ae3ec96c245e52cdfb1938b56cdfff3a8c7007bb930208ab28c1f47295d37d3321d3f04b0302047c435bb50065306302302fa088c72e752576359fd29b21ee5bdca400bbdac9b3dbb9e93643cd2aab7fde390b71076c833e3ca33975f36fd84ed2022f1fb300c7c828406d28dc32fe5ae1a0e7e6e8123c146e2281751649d45bb52f0b1c04bea98af1bf04166a8c803d8b970302047c435bb500673065023100fc59278f9de8411b440f599ba019f068d9e73394e4d235a6abdac23621bbbeb26039ec369d6c95ad03e4b005e443940b023049e06cd59f3a13864d23ec7cc0d05cf5b82521686de8a6fca39b15537d96147f4848aaa15ed08a4e61ee0cc4adb6cb4b0302047c435bb5006730650230657038641bbbbb4121d6932c0187f74e0edbb5121f5f402a50c19ac83a0b2c453f6b43d3bc788a16bd35413707bc2672023100dc3e4078c308a34ce0bf8c5263ac49b0b8b1ea2b92b2211bf8a86c9e2f6347352e5bd430c452155235e83014aa975b2f0302047c435bb500683066023100865ec1b3dae084b4840fd4842c5fa9e2b6544b1d26eb74c9dbb4b90a5a3c5c23fc80c3daac604cd5d81b7f4232547e4d023100e8b489ae8d801c35d478fadc3e22d8027f1f597a3c0177ee52502db6dc88e83de8eccee169336c8ce078257dbe9b1c390302047c435bb50067306502300c0cdfbed0df9cc33dc14c23c273df6515ca6e90dc710870f484aa7fe8d264c71a6227ae73bdd3ae7f784b316fba6295023100fe0ee53ab1ea41457ba1778d3efb73067135b8a4a97f9119ecc2832c189c3362de0a9054b6132e8f056e27fccb1162140302047c435bb500673065023100f0926d8d97ab8dbf20567cad004d6347a972f77e85d7d42df10996cdcd1ae7c9e53c571b830608acfd06168ce99d336002300c85fce0fa675be17aad5d11cee0dd0db0cc61944ca430173402d0c578e3122135bc2c63160ea6d7963b731194234a7b0302047c435bb50066306402302851902eb0ca46dabf212b11e2b5ad414b7b12c82c50cdffdb412d9fb9615c9a57fc46b67714e83d3d623cacc7cf0eab02307b47cf35b52710de4d58ffc634a29030e3e7229c8a36e96ebc6bac39d1903cb9535b106c86af8cffbe9454e7ca8cd7770302047c435bb50066306402301895e38934930a698a40bfebe55180859fa283432ae66950a56d484820388a247d3737f4c6839364dc594c26db048476023002c0b6637cb54be3fde76682dd90e1b691b702b8e9b88e681804c8d4a408d225b23322eda28011e7c697165b07e176f20302047c435bb500673065023100f2d401fd5425151fb54046a558a5404cd5fc61d60f8187a0985ecffb2360f5d86525020979454813c333cee2469471280230594f17fbc0f28d7433354ad4a629ddb4303a07673528283301a35f1ae9a9f0e0ddb493c3b81ec6c68656c4d2809ae4c80302047c435bb50067306502305871e09d41bb196a87271f467dc6d2bc0db86447fab60ab226e27eed543559ae6793ff64714e438a741721d607130d62023100d2b4021210db5d9db07453e30e045d5246d88e25f386f04dbb5a3de100d649bc83c3e0c1dbb34a4a7a6c38dc92091cfd0302047c435bb500673065023100b75e1a30f34c45493c6536590be5dc6adc9443ea8978ee3c00bcbab8223f824cfce522242cee6acce7af002545fa2a1102301cedf49a382b0276eb4ec05f1f7aaec3218d41de59ead9cc94eb63e2bf609e30a3b979ac3c7d23ca0dc68ca7224e20290302047c435bb500683066023100e945c10e0fba58dd9724e5d1a96e5545fc598ae9a269d0cf74599d68e2000fc40abed3541bde19a088c19720d8293aab023100888f8f7ce9538a55ae11d88dff441e1d695fcb5fb3fc9399878480df6b2c490ef7a6f8691f09f208dc968a21ca841b3f0302047c435bb50067306502303a93848604123da28b9c72b40cc834f9ce0ef27428ad421fe441c26176b95b40e16d54d79a0802b9b6ed2377a1fa620c023100ff90f676753e80d83ff5b6c553ceae6eb6b78e2a71d4fa4948fad61beafbb8b82435ea80258f6a20b149dd81f9dbe25e0302047c435bb500673065023100cff4cb01024fa7e2ef0da3088a4a7fb81df19569a3c80d66c3c100060fbe205b3627a3510700f7de18ba1178f62a1d8402307c1069efbf2b6823ccc9ee6436ba4136cda2197a6c4a81deb5b65b7bfe44347142f208b3ef78bf0898b814c21f2f5c190302047c435bb500683066023100bf76daee2431d28e92efab85c3f83b88d7cafd04c2f2a633ebb93b7a724be16b4df8a6bd1e1014d97c8bfcd9e73feef0023100aedc75db5a438a5e983edfe0406fa8e6e466b10c97a1bb78b6b2d42af6d2f9141b5cd4023744b2c0a51bcafe1c9664b70302047c435bb5006730650230373a66809304c000ea21527666931d66dd07c3d3ea82f95bdcafc2a24d7bd2c470e3e8323782ac37087ef9216cb35333023100ba6fddd1e36366a8bcbbb0619b8e3c8458d9e6861a314280b81de65a557885f2dde9050cb49133120a7cc0b47c18e0d00302047c435bb500673065023100c6ebc998146c8a120663e0a5d66b6a12ad87a482f4ee2567850d9eca6a0365fc76402f40fa30c67bcc8ecadf5383321702305178fa3096d5800bdf1f25f5cdbbff0a81274debd1274e23ee1beda085841ded2776bc299e1cd11f0259c21aa1ead0d40302047c435bb500673065023001562108fdde61a32176f63f19d42eda54cdcdae2e72fd4659f83caec37760c0d1a9ea5cf5c208b3449ba78f3f63694d023100acc1118430629b4526f3ffecbe3d28f379c4602bc25ac07163e6690133fa9a4cd8834cd0decc41d2a5185798d7859c910302047c435bb5006830660231008d27dc104063e07c6d9d20dd7861a3bd2b9fdd74870e8c3fc319cd21c7620219b263d83f22a4a2fe3bc46b62c5e658aa023100ecea58c7269a2141fe1f669caad5cd1af9b209ee9a9d1ea93eb5d3c4deefab9a4e3a36f30239d143a643d33f9c9ed9010302047c435bb50067306502301b3339fbc271495c2c8ed36ea6c3c28b7812bf819ca7fb2053ab35c17ad29fe75d47dc35d036fe5af670e582c67c5d7f023100c9efdc049db3527ed1968b166fac0571e4f89d585fe109567b2e71a1ee4b44da7f5a01f8aab5257073fdf0ab03a9e0580302047c435bb500683066023100f10d94c3359ee7914ddfe267daee6b73b07b8d9e1283737e91817efac7a179882c03e9972a4ee31503e6f156924249c7023100851eedd9ebe29101459660399f65356c870ca3ab432ec9c4a74b9ba1a7662fa03a0d394eb4bac77ee24053b482871b040302047c435bb50066306402304a4fe83b43f12be46ddc6f9ea47593c6bb8ea7f4d9a092c662fd430b4f816a550f43d8221787c4707e0a7be966fae2f502302a9cb3b6cabe428e402884160e45e114f1a45912015df862de2367fbbbe13bdfa06bfc3f8d32acd4c394fbda0975b0fe0302047c435bb50067306502302abef227de0a55f94788ece63938e13d57670bb52545f8f6f28c63f49a031387dd233ed8b7e232e355b09ae0c75766e4023100916dfb03abb2e1ab7d5cc3278156507391af7b7f0c3446f881737786e6a0e0b8cffc9763c1719ecbc7252237e4a13e640302047c435bb500683066023100de5fd268ee54113fede84b78693bc8a57a69a28752ac5806ca3901691aecfb2206617742cab57e3408c08b6ae317bc38023100a5e1be2df8caa2484c8561d4d9f501406b3a386557a1eae82c2715b2686f1a80dbbd8b2f0e4ff9d811214a723990b9e30302047c435bb5006730650230595ce89afd175af37777478cefe4c10e6bfe0a5bdf0d386ed7b59603dad118e07069f4d11860c47f7f48e260279fe08e023100acc7826ee1b0a1a6894886a110b5323e444cd6c09196a3796557f6eb959c7f76abd9078edbb2e4da97bddeacb14f63a50302047c435bb500673065023100c87afe1a28059feaaabe2ca3b7ce5b3b7c55daf452962cfc9635b34471d9742e2da85bae614ae4acd30cc53fcda14cde02301109f37f1d5f0c080ef0da4f516ebb368a994692bd2971fe198f24bc0d1a4c0192b63122c38cda15a8de6eab7b3d91390302047c435bb500673065023100f60807fb8b1df970381acfddc0d1155e6e408668a789d0f83d27328f7a5d33a98578eaae3aeb6da21281f90c3152e11a02302e66bbce099283db50f9f14c0522148fd061abb4be7fa8c935440506a00e8b9c7b3e7b910b34c8ae91b01b32cbdc47220302047c435bb50067306502305781bf8549d91758ace1c0e067c6c90bb0cb38102008eb36986fb7ec8bf437212b0062f2fbdbbf9f201a993548f5b22b0231009e81b05d342ccbf24f090a21b357a41b4b0c24e92d1fa1be7f532490c104c968a985f8ea48b53b6fe4f28a4d1e3bf12a0302047c435bb500683066023100fe4e27e0d810fc22e199fffd4fc12b5894f99c8a85cf7f9e444a1b3ee81967dcfe0789df48605b90d0416c44f4f14b95023100e0405a42ef91e0ee023b253cef0f2d42d254d5c11b19304f9fc1b0f20c06dfc618b5531fc1114318d2923c0e6f237a510302047c435bb50066306402306b6e89b542a6e6cfe7470926438f0e76147714632bb89fb51318ab23b0446c32c24c030c5f432be91869a151e5889ce002300b70a3aea66b2dd06d77fca47ada85ce3e0b94c0b613cd9ad43a292e60918ae1b892072407d2613253955081a2e6c42e0302047c435bb50066306402302179b1799acc618549558f960326e5f93808c3d23ba63f6f1a0d30de9aaf4fe2feeda8c4e29f14f48247541392ccc11d02300ac28640ebb6a2ba737e5666b61bfb0f433c7cdfa61a7e845d468e96a4281ec187e3fb015aa38467ebe489404215ca5f0302047c435bb50066306402306ed97a37bcd0f2090d49b08b7e40f1eebd2ac6346646c4b86d1f645e42b8ce88cda2440da50e5dcba251e162198a3277023043a7c5de33c77c02415631483cafbe59ca965bbcce76f861c8c684b6d5d1bd9a4a14b16a0d0577337c552aa4c91811d90302047c435bb50066306402306578669a25f386903238752b32feebc580d15ed05981ea0acbe907069019ee9b51f261552ec5fa5c9b33f82f4e63e66902307738a4b016b34ad21365075a60caaa6367c6623abcfabacd67010f8f1888e05fe5ca0082bc51a7e2ff3168bb7cd36db60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023038eb013984485da21069fad258dbeb64bdfeaba25ddce1cec22b6e5c576e26c051eca119386fa088cae3ff56035e794d02310089114f7f9ff6fcafae12b1c4e2bf1c4b2c50b9a7dc96d6e6171a55089002513a1dc4bdac924c7bc21ed8d7b613133ee80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023016579279095cdcecc77a9630cbe55102f91adb674c7f727760ff47ca06994b70f6d1fd044d26717b02efed07113cdd7b023100a3e20166f4fd0a7d6ab30347714a77ecf3e27316ce9a17ef4a0ec666d79b360ec335ce8e7efa862525de868c092b42c80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300d6fd6cc325db64e78715a1706c36a1864f19d3b55e4b382eb4916de4ba3f500798f84cb148f9254316a2daf48d41f800230066b7b2251b13dd8c075fdc7e53d3bdabfcd475e3e32f5a505380c4b682e3ad0f454bcafb3add222ef1223c1f6e0e60a0302047c435bb5006730650230010b39d3f6175dcb9d1e8ab01809bd8876875f308759fe48212d250329c2817db76f0797610b580d2a89b74f4ffc1a68023100979ddb274b19bb51a863b35362712ae7ce3e8657995a69eeef9cf0a6f57a91544a866cfcae4960e61bea7b9f2ebd7aea0302047c435bb50067306502303013ec5bc0d93562d2e1c099b25c0b1d8fb8827a2cafb88832dc0a2b6442b0166bd23e629547706a231e4eaf7fe9e539023100d188b828c0e0b2a9964c3a3dbd77e073197b2d29f85d83314d382fcf910400d1380eaaa50ac266d9edcb4cbf3856c6430302047c435bb500673065023100936aa7134f25b2af17cc323869637050f3b043a6593b041b4c31596316739eabedf7e414c760431e52396016949157e502301d324df074bc03174c84ad4cbbad2bcdb2eede46e9b64977e3f6484c53c8593368d678f4341aaf91ef8abe84339cff2c0302047c435bb50068306602310096a465a500a2cda6647b895ba573bab0e3a9c16dc1515f46e2381649c32c3ed37bb85b4576c4f24b30c1af7367366898023100af10bca521bff9e68bdb788914580a37049fc2cffea9c93604891a6238e3c6df6a61a2057b475f8c457c5d15a35099940302047c435bb500673065023100d5c34dee71a17d15869c336945bb29f81d401d68f8a755b8822ce347e4361a416a2643ae5955f47337a2e622fcf72f130230162a0a215aca783a1cac611d01b6ffd708a11ce2969a8feb3b11012d0e39d86663e0899dc0518b9998e6db088e5ca8e50302047c435bb500673065023100ad1374fd8ad19292ec67ac9afc2877a78d11da5e5a6996b4cf8846ff75a850ff62a793b51eba9073609ae89742575c8802307197fe971f9e74828f80eed7af85dfaf0143e872a039827ddb8daa6d6759e65b42338b4554830187822b73ffdaef17280302047c435bb50066306402304fd47c19f29aa0613feb5e31140d2e044ced175f44cdece19fa32653688178b6b6eeb16bc424263f0c3117fcefb7beaa02307954039ba9e42f521c1213d1ad78d4c63e407adfa3f3e877132ec865991606f684cb096f6b8a549f0120e751ae2d34400302047c435bb500673065023100dc3523679134af2d1d4c5d2ab88214e4e85112f5f7e8d32e503f5430d05b2955e29072145c9b01207642f1926c5ae66d02303eeb55de069368fcef746d4f758426eda0a14ba3d90b9bae1e5efeffecdfd0bf4e471c4d5cb4dca83d3730815df402730302047c435bb500663064023031f6cb78a41830f433915fb125631c15e41f52ba082cd9d26b93e4bf24b99365dbf561175526f886c295b3e9dd72b86c023008344237cdc4d306512bbbb5cd3f00e17a9971d22984df3344af809e306235c63925212b59cc63937bd77a2673a15f630302047c435bb50067306502305feb3aadb927e3c2d0a505c7666b044ccde848770c11255a65caf0c798d811f5d5573b482938f0dd567a97710a71a0c8023100a8d90eae8b23a3def78c7b8f4b004d7ab7b1ce5cabbc2f63bdc040f9a694d46f92f03627746a04457d6c81f488beaee80302047c435bb50067306502301a90102222fe60b4ac155e65016f55e29de63a0b9254a7f10735088a25541295d61ad1650a4c2d5e0e335ee6f1693d87023100bd7d837e6abb3135065aaae4b7729cb52550b6486d43799f360d4685be8479b0ed12a8b5ec0df6c3a2328cb6b63aef310302047c435bb5006730650230682d441378a125d2c435ec053f7b073289c4b98cb3ef3eb157007554bcca18a58c9caea721fe0712982be641f56a65b9023100e1d647a3054039fdc03c4059f9f4281ebef010feac79b9c68a3f67e721df838f2326a6e899d0ff4b1572e5432fc0c7100302047c435bb500673065023100c3214b7d3e668999034892e05ca4ade588313c6fbdcd45698d2deeec5abbcc6813fc8e4b64cda314732a3324004cdbe7023033581c8ce8d0644e23faab5c9ac387443caa8bd3453e6ad7868896aa86f3d3a6bf9c60246d291b470305461da4695ae80302047c435bb5006730650231008fd9ea4e992669db4990182a28d7ac1ee6e8367849169012e22c0929288d2e6588f9c6a6de3fb25ada54033c5870bbad02307c6217703055fe1ba3d4a95ac2348419f4a8f56d0c64827252fcad8ecc5ff2aa6efcbc22a0ce2541ab226c449dd495cc0302047c435bb5006730650231009ee005472d094b1035f32c7b4ffcc5eb452619a09d0451d01286cd38ebc2404a9f34ffc37a44f3aa696b0d6a317dcc9f0230220edd7d20d60ac2f6d645281a847c18566f9490bee2200cbdd85520eecd0d96b9d4b4d0f9762c4d7a39309ef59b32c00302047c435bb500673065023008c43447ba89b1d9ead615aa66bcda5fe949d40d5e2b6074cb773ac797dd430c4f7851c7504f5fc79ce92ead256a2f2b023100982fb342f15733af6c31b60b3be372b55c2af6fd67eb24de3a5e6d642fa623074b421b5bf0fa34491f7c171f5935b86b0302047c435bb5006730650231008f74206996814f78608e23b50b095454741b1caac9c786573c76c25f0e951a8e883331ab60cb961243a10cec2f55c88c0230765ce59fcf02306cf944ab06ff68273a873a17722a162a4b9ab982c214ef6790071a6df44232a7983499a06e4eadf94a0302047c435bb500673065023100ae6909eab8f35d621ce09ca66c7ebf387197863b63676ab978b5eb95a6842a32cd46f1d1c1ad01b728394ff2ff7e8ba302301d7875ae8f69d2644263c463af33ac2dc1437e76f5648bdff54cc1938b57e9f137846c4d5c47cf057686718421e3cbd10302047c435bb5006830660231009c13528f6f03c883b0345a55c45de8f32dc0ff68656e5fb75bd1d3dbf286f709d161efb5eae421dc445ffd628273dde70231008d136fb5f37b5f9b4ce81f856a7d591cf656d7d37f2bdf5e73b3aa369c4d6fa49fb9ae246f6d5b5f5c75a5c531085cb00302047c435bb500683066023100b0bdffb2953583aa7558b8ba62c41f31dda692f96c6ef2e3ba69b922f23e8481f0986dd639260f4824f9df735d9a3d1e023100bf5d8a09cb862f23c371006dbc92f96e274629759a923088fcd9606e9b65553b038c1562d73bfef2e8bac1a8f9ee1f7a0302047c435bb50066306402304941dd30650e17f1bcce3717d15adb5006e3f31bd0c7d0221f37dc8cf075379fd0b454225e93bb6db709d5927363de680230346aeebd822a76d024d924b2ce41c8e639ce2d204923ddecba7dd2b399c04e5af8831f8cb8e0c8cc55c1b8234f561b600302047c435bb50068306602310082084ffb32e816eb2b3ca308e582e0b0e43d1e486b2e45f179d9132357f0db6218cb6fe0f755714b66b54a25135e6571023100d02071920684cbf543d5481572ffbedc1944c186e1daa2e4d5f7184a61a96f316ee9c9cfc35c0919d73787cecb7959520302047c435bb500663064023050bfe6bf30e070ada0ae40bda873de3f2474e49cccc50b7417f607899d5e4ba9812c103e9cd913b8848d5ce5255ac57e023030b8868906a3c4270218bb377ac6b1bc150cc8a6f39c117a1bec5c9eeee642d62353fbe9504b393590218d3ad45796330302047c435bb5006730650231009c6769ab1bfbb9ee65b4fb83282f80c5a8193134c6c50429db6893bcf08b943a6b76a721b4f20bdd5ac1d5c02b9bcf010230563a35b8305a637d72e561b73133695f1683dfdcb66dc454a45dd37a39d90011ab5972aa0e43a8d4fc43ec43621ccf640302047c435bb50066306402302ddf4eb957a1a70b868a50c69841649cb20100131e2e41ad8ebe861c09e66ac410f33ce44af65b3ab9fd3616e14dc527023039c7578919c35428cf2269705b8bfd4226f3f8093316a2d933e1c7692cbdd8f667e36179970226ff655385171dd244ee0302047c435bb500673065023100a372b8b7dde5013045d5738b4ef7cd4aa46ab5c344f4d91a528a5cc525c61c46d3cdf1081b535db6c8bb03ab5ee4280802305d4abcf5198d909a5a162e0163f6766dd52497e7ceb1aa950a7e9c17b46014fa08a30b90a43af2171d3f7c62841974760302047c435bb500683066023100864fac1b8790cd8bcb91981a92a1a4cfc2098d795f4ac7f9dfa66f2dd645ddf09314dc535182ddc84fda4ea52f8ec6510231009bc01ce9d78ca08e5a9c99ff9be03d8e638085bfb6b373791df87863cff3483bca44d58a18bbca14b506a3e63bde582d0302047c435bb500673065023100e9b256693f76afd5b3821e39857c97fbf72d5c129ba30ff8ea0d49260752ec90e8c40709cdded3e4c398b4b30912f48802303ffc9800593c6c79bc0f4d4ddca358fa3f19001438341878c745c50a5bc09760a29c453a804874f816b529a697e71d680302047c435bb5006830660231009ae82327060c770cdd97ece544e371f237fc504f55a709c8d089cdca28c1962dc4f704a04f8dd08da29e51f64e147bf20231009e30ca9cffb722e1de4dbbb906ab506fa8cae77505613025d3f70c1f365c46f5d63b7c62f5fe829500d1529330c47be40302047c435bb500673065023100d2b5314d9105ba726620134d20615b680157d98f8b00d0770ef94670c041ac6d11ef2684934bf9b0382363968f6164a4023016eb95fd505f7ab3274215ce49ef69ded5cd09b3cf2fc56b5d325266c5242dbc9e563416c7eac3a48cc509cceeb492a10302047c435bb5006630640230628bea7e00d2d6bf82702e27b231ab350cb0de23876b2e4b25d95793c1891a8dc75f1a5c0f7b176a8ae5b5243f62945f023070326314dfd330b47992fc0f8caead275bf5e601d42d8227e604788077e6e89e9d098236df294a67f52b744981af160f0302047c435bb50068306602310084c8e77ac371a738a4df1db4a01a691453ce137ed5dc055541e542eff015e0e487c4df9c2a841437ff9cf79bbc5db967023100a06f4f6e90172fbad5fa24b0b5bfd3b24de396613704e08ae152379855848609f06044e56e17251d261f41579b3fe0400302047c435bb500663064023027dc7c10712f57dfacf6be1bc27e2dfd7e07323326c118553738153971d5588ad3f54c5333923c9800b0352c06ab098a023013d29073ed3d710920346ebe042facd57912f2d61d5ec164c730077e535fbb7eff4e048ac376fd48a775e49f1e9db4970302047c435bb500663064023053251edb8a6b7aac168ac6408cbb195daee83de96c58796f2865d3bc922bf7cf9eab0edf2860100a12edf6b7787f368f023050bc5f9c820a746ffe0943cf0d5b0b143bc854fe545f0f43339755b7690d282a7212d826b556c8952194c24eb1ca5b4d0302047c435bb500663064023046595bc81871892934807cabc10ea881565a393aa8df721bbb9bd3beafb9430cf33de85adc5abd9bd7c24e4184b93afa02305f90b4e53b260d5d7d7fb47330c14b91f17c6f3bf9063b4e0929f46f24de4287505f5a6214d59435f8f5e84ec9b7f2990302047c435bb500673065023100950d1c85dda6affab510c9428f77a2dba311d56898ecacc10e4015f2a2ec7e8f14cb214110443461b997b32d19900aa8023019f3182c0197e5d3aae433b013ede00f65e84433e45b070d128e4e1e775cce4633e36322d7893cf9c20ad1718943051f0302047c435bb50067306502310088c9ad7952919149c706ca744ea08038e6818cc3173101684a1e27740cc729b29cc2571a243c4b8ad62f899c45dd9adc02304a31dcb62b8ec74088bab007e30be8ce315935e70636e7d68da607759e7be9b248eca4f9ae3329bee775ca8ad22a98590302047c435bb500663064023066cb4d472f62a76e212843d4f9f131afa71ac18dd681eff17c75c2db0a73849b5a284517c262b5f216e31250e31f504202304a5562e319e677b07e8ae15c45f756f354f07a0eb08bdda1cef81cdbda3d8cddd8342028c3610ac98a7ce72f4006bca00302047c435bb500673065023100f7d2560d769012ace574c993704ba77a67ed01bc659de2c5f38aa8e961d01aab203c6ee1a5e6a20d03b786fc1ab6dd9202307f396e9194e639c1152fa8c88403f54ce65ad02683c2cf96911ebee589b9aa9edd0365333037376234885e40fbca939e0302047c435bb50067306502304749e08810cdecb257e23703f4478c7bfcb7e1fb63e5a5b6f5af66fc2b17778e9ef001f3ef9cc5a50947f22921319264023100d1686f902bcab4c417f47d0ab093bfba4c3cdf59e33f305dfacda9e9b95d1c31e2a534a8d5132672b47774b63526e7ae0302047c435bb500673065023100b3d9b7dcc2ad392436fdfd5c298596d081b4d86104fbb31709c5e7911efcd4547843efe5abb7d2a808d363969f84fd6c023051ee41a9343adb066a13a27c9c89433d1a702aebbb3a803930e9f27a8be0d7b8f07c9f6f3ed5e245fb325877b9cf50aa0302047c435bb50066306402301b3349e9ed9f2222f7cfc80132e270494b997fd7c57072baa693e3b273cb5325b8e207f4cffef330187bef41fa1aacb30230787dccee2cb2268364c244355f0533b448628286e8d9d96b66f201307bfd6612f703ae292b9024a095d0e758c84d2c4c0302047c435bb500673065023100c12d531f66270abe5d7a7af862c6927b88c756a45a4b36da5207ed024e6e4f4b4c31fb1a38f1f956aeef8514794f4224023061ed079869173d5b575f4b7cde07a8149a97d31724518f867642bc3f615119c4b107f4caf073949add890507073ba6340302047c435bb50067306502300308e621c76625480d5964843cd3540f1e1d231e7396b94dad0e23b242a32283a7c4211b696bf1984f7cc34b16e45e21023100a0f4ac8fa91fd542b0c6bfa9e78703e0842824db5bd4878da5bbff0a1d6bc226c605a428b7a82a2c8fbd2a78445cae9d0302047c435bb5006730650231009eb5ec58a5e642b54fac6691cf80f964cf326f6341936f67e802bdffa22c5c7269d18a348b254d56abd7d6c9cc0e436202301e0dd0705cd7285c6565845f0af8070202c0b340f7d18bcfe1f39b721205d4789f35cdea3f00b2a657844c7a5ea323810302047c435bb500683066023100cef9050f836b58f55dcc7d8fcd158125b9cb862473ec9778a5963229d0ff42773440744a4e0d149664b40f6980ec98df0231009b7938a937830dc6da5b463cd34a89e548ff8773a39391d406501b2b5e90c534e0fe6a12e666e07ba6f7cc1d0b10212f0302047c435bb500673065023100c9d1b3a131d0ca60f351484c6db24971f737ce6f720df5b4c545c860de391a8bab57057bbbb7382875461b5b94b6e4c902302b3b065b9a6bf0620f5b7957fb0899877c79c124ae6b8a3915fac1521ea6ad9526f44f6cb96b332c47805cf44d1f682c0302047c435bb500673065023100bb3bc52fc5d43599f5331b308b47dd772bd75f0f83adccecea00462688e513ed91271c68ddfed66c9a6c2425a637e44f02304f39efc54276569d79cd8a16c6ac0a5031702ecc99df8b9bd04406b344e014712eae1d8311a5a4a4d93bcea898fa0a070302047c435bb500673065023013e3363d90c8e0e4978c9ca48b5aee7f8b50952550a76153de3e095a58406a7f44ebaf4a329194d1d36686e5ae979060023100cfed28aa715b5d5a1c3bf72e399716cb3d6b055fa1cef49c2e3c51994254126b6c16e685591d7dccd6361c8f4bdeda0a0302047c435bb5006730650230295b72590e53a497addf036b510992959ca782c3619af53ff63859d58fdae43608bd01073ee760a919b4084b1a77f4a102310091985d942effc4b7dde6e52e1d328c28fda6d85861adce1adfacf8e91265e8a81b637cf8e950edb6601a753aa82c2d4d0302047c435bb500673065023011f72203808c97d86db5fc9ffce4f5ddf47201b8366034a35f1eb28569d7a0aa2bc702cd6d83b72ba83d026d4933a8330231009a9f4c334aa2afefbf48f23c84da05d7d2762a54917956307ff39307c633746140169577ec7cc301276c99b1b66293cd0302047c435bb500683066023100c94f2f235a460453d4f1e4184fc2aeb82fdde324bc777c33c745830b32184bc5e5f75530e7a05ef392e6327cf2542b0f023100c638075b53751037e92d32f7d8e88627ddd386fbb7258ad34000cd1efd25c343d3fa3f54b5b0170341ea97f0480877a10302047c435bb500683066023100b2bda2344d7869131a21463f937995585e594bdddb138efe4cf44de28912bf9a3a3250514122fe199dfd254f948f4318023100b79fb4c071ecb5cc4372349311c94c1636a53574e9e2d646833c334a881d070ad83f2a8ce08d66a517c10cc1405f9bc70302047c435bb50066306402305922f4bb86ffebd6cf5b2629a572a8dae23bd2ba49e77f51eaf3165819663ecce855f5143e1c422e25d5e3bdb8c0b6cb02306b869bc5f7f0cc595fcb7253636313bdabf651c367b94055030720e023b639347dda2a30759f070dcb28cfa17b3e224a0302047c435bb50067306502301b2c2f9f2e332b8856975764a0c6e27f3d70dd28d95ed113c66cb82e922477f54b68383a1017cddfd8ed845eb6fa92e2023100b69d818a0470400621ce5e184a6ab7b1db8f0111c2c34cba211c0516aae1a58ae22f14dd772af3eee64a2b362d3c50e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d49d55c8ca5c32db5c5f50f4ac3586e18adf5e117df8ca44ee7da2a7aef1e669828712036b19ee7c7a7385551c1feed023100c032b6e800cc948d5d6fab89e0bf48d07fe6fca0744eb0ddc0da07d9af4881bb7a7f8593abc2bb1caef111330fb7b0170302047c435bb500673065023100a8791095001ed09a29938604c2cb9332bdd95628a5783b6c1c295a2e9d9865e50ca9c330b5cb19d7e068c2198330b7b10230754a5f10121907d94b9d00ad64e8891618f3be18e20f55d61a7f2f485b5834d137de53c87e87c0d2529dabe10320c59b0302047c435bb50067306502301a2aa3684d717fcc0cc52016f2b0ea83a8df018c76c27269901ee3aaa6cb3289138ee758efec6a77d7485905b70e3cfa023100c9a7834c665e1cd27c57d2b2e4ee04386b2d5d54cc96fcf138e4bb0c855876c170486439ce257951f9129134c482bb4a0302047c435bb500683066023100b4e330fa753c4e496de1f5b0d6bae67f7192c632913df0bab9e60493776ef45d30eff40e1937dccec0e57d82806a51df023100dbd55054848f151ceb8b4fdcad0077461176e5e43a0857d1e07b46a2c20a76f7ca609c7b2736756fbb2fcaa04e1655580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023041c3121e7ea581d42ab8f38b5021146a5b28db5c5d6ab81f666b3602d89874a9f343272e54b30180d748be04986060a0023068c2b16b594482f91c6347b3b35ec8b1bdd55fdf733bf50f7a3a9c1ced15f630d5096cc89118549f7f95b832084763320302047c435bb50067306502310095ddc8f873cedab191bb591739ba0abb9e0dc870b7fa91dc409ec06134a95e01fc9fb02fd3f5850ce1720964e81455d802301fe01e007ea360461f52bd6d975e6af38251abead41f372fae0ec34aeec192edbe65a1034e84e7c18613b4cae833e95b0302047c435bb500673065023100995613cb49bb2b2ab46637ba9bce5b72c6c5495a9e6435600020814d385132c56539fbf44780803ce50e4052b4336b410230356af1b020c823893cb751c968d43801b550854ba9e02108883d3294da0b408ea93ffec42e77e1b81ce2bcacb4fed2530302047c435bb50067306502303eabca07165f4211c0f504c6748947a9b4660e4fa4077791287f418a92c3775a942c924d63a7bde83eb31ea6db4eb68c023100da5c4e274cb70650f7b54d913ef93521df021fcd0db3cb7d66ab2e438e01a44cc8a1ce5a3eb4ca19afcdee56219d8cd80302047c435bb50067306502310099311aa0cff1ea8ea154581fa72ae9fafe2975bc5cd8a955a0c70710185e03fe7b7f5245b38a10858333bae01e9d562d023055a89747dba0c6f6ef0a6bce003347beb398b2c472d6695587f623ffc7d9b180e9521949234633b4a600293e793193a80302047c435bb500683066023100f3ffd094f0ff671d308132da5a33095216521dbb44f23690b6fe83ac3f3f58e24528a2b4c3e6e9ef47cca9e9b614de2d023100fd7ee3d13657d6cf4b4a4890ec6d1d1cd6c89e56305102a3703fb8ee938065a4c18d80e7e6c03238a206eb3e9d9586460302047c435bb500663064023057253dfb2cc08d5d64eff77c0cc68396a0360dfe6d2a51b33b8039f000644cc438d90130e732555e2fc628c1dcd3e5c502301918eacd06939af47a12da8089daf0bc3c7df5afa36c58bdcc297ad473b06495c77ea99f839370ff11202e802d31eb9f0302047c435bb500673065023100b8e487c3692b1af62cc14d2b4ed41505199e464edcb2cdf873221a7fef9ee6a9b079fb87ee127f6e74ee4de38953749002306b18985592a3346c02b220eea0fb54e5933de7792e85bb8c58deac2e8514db71a2c042bbe38153a77d73405950f122f40302047c435bb500683066023100825a3623f52804f4fe19dd2b87ece7a28068e1f555a0781bea9d566a6f7e249764cfc8c0b3bc620c7ce0434140ea8c19023100bfffbadd483447e0fa40548b1ad4c80d92630facd4629a1751cf972f3437523916e0f4eb64b31e0eddece450b9ebe2fc0302047c435bb50067306502310097f39363c96eadf9ef3c4094934c8969413d0759c88c4e3f678b14ffa4549095dbd9010dc8bcce825db344ed9900d63302307475ef032e4b30ab74984eb0f2d58a56fab7b4b8dd76a960d9534c539bf12b20bda656be2b6f3885bfccdc992435c00a0302047c435bb500673065023100dc2315223e84bf22176cf1a36cd540981d9f3e0af4369c1b0333fcff1b49be59708f3ff1e31cb92482ab76c38423de6f023055a1ae8b1f0a80de4b3ea921761a32201ab259cb15e301b0354324c71696f772a460de2b25d8d8695133112ab29379b50302047c435bb5006730650230733601fc62c87b25f93e8859cf366360ea4d6e92a9c588443cc52c8a7ae09fcd41af7b1347f14515a105a8c1bea93440023100a5e059f2225d673a2eec436f8c42c135c9fd98a9a3cc26bd15163702bee05d827ec8d2185d86eb9efe756b2456cf888a0302047c435bb50067306502300106f349fc2b3a48ac440b9fb29f08da926404c0b53f715cdcf6172ed390cc8332629d3bc7447a12d4e9caff15b378d2023100ba45934ff3fe9935924b022d1cb7bc18acd2edc0db64f63dd9fc216c1d4ce06bac8556324468ceffa7f14535ec0832790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c31f0dc25309351397878adead4a7aa29642e2d22c88c60b199ce031b0c35a96aa8114f1309f37ae20e30eda93c911680231008a16448fd0985f8a3233826defcf6f50e5ccd33923b442d1cd6a47fec11f377d1341f2ec0fa6fd3449eea4ff98400c240302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023075f025ff2370713fe056624ee8ae190c120fa97212b158a088ae39aeca482c156a3c9ccc18e55402b97e4d6e412552a402303db198f37b033d0c80f1eb0833a553b0ac78bc9e8bd747e7be35a78fa728aec8bc450b34035efca7771df8731cdf230e0302047c435bb50066306402305deb17b78dac7e74698f06b7f0a339225c111a9074d9a8be6d7bc12d3e58195ea3f15e4f17e89bab04bd62b3c76c8ca8023031454ec230e618011d8b14a268d1227a7ce45f1f5f8acc5e611fcc0affdb53625b5cb1389673b7afce774e5df0bafc420302047c435bb500673065023100affec86c18b82a405dc25524541c42259ecb871fb16bb9a7d75b3c97f1b5a3f8a70dd3457f9d362900d0b94b0a451e2a02300a5eda18e15b9d116da9df47008038670fe8abc4c062805ad3a48abe3feeaa9cd9bf75f69d3823e96cb734a972e872150302047c435bb5006730650230615c8cb7b3e77bf781b525bf9622f2ec8d7ac91413864d0e631cd84b06b7ad85652e4fbc8233322021a83e9e287f2dab023100a0119e717c8c95b988887c4748301c553df71fe74aea7c64c3d0a6cbdfe2ce34374a97a5ed6bf7118b0e170f222f9abd0302047c435bb500663064023064f0acb71c9c3a84e4e7014207728ab0cd861845851d18a0ce913b851042ade375867d6064dd7dc828820b4f390501f9023076dec7675ee76adc1811991be651e03554c36971a408d246dcb40833d1f5eef24b460bc6fb003c3c4071c36fb3ab9db10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230113d745f068681c8a7913942b57e0cfc870338ac0f113b395789e867ebf9f69f401e361f69cb466d46349b7a003824ad02307023589dc82e375e8819d639bebfae5249c65506ca52c9178f56d36e0318a4e82c8b853b0f05da6d66bb1b077d2ea0430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a62e4dde6dd489b68c61b8c295ee78c70c3ab1c5eb4d28c6a893360e364022b4815a62a23747302143d1c30cb3fecedb0230097895c78499a0cdff0691f20902093b59892a4a04a3303aaaedc668ef8b82932f583d3b7351b1e21bda2ba85c3e03dc0302047c435bb500683066023100ab5b736aef920c4822ebb2c097b95821541e5887066c29578ffe4e3fb8b87510da971ef2d36a4a124e367a57f5bf3bbc023100afa208af8ce9f47fc10cb3e272363671982bf3a9e1bf41383371600876da84bf17e6c0f4d60068c0214dc5d373d0f0bc0302047c435bb5006830660231009fb9550f9de90948a0e8537d6b34bb9f38b5d4e53d7180efae423715ecd5a3b3ca17ed2c2ec66351249342274bdc1b3d023100f8ddd8d36a9e921c65615e49477910f1cabf4247c7c56371fdb8dacbdf2353cec2666bd8d366231637e5d57d112c67470302047c435bb5006730650230162b95243e392d43511ad7e64cbe6f32aaead5acb3778b92ac74aeb82b17d0f72a97b18b5a0043241343b6e5ab67966f0231008beec8d4acd031d1e01fe00eefc7c16ce667d76e7457f0f5a48dc6bdc6edbc81fd8953e140c26e711465f1ecfb5b5af10302047c435bb50066306402305be36829030905638957b232ac4615a08d0060b3f8dbed5738fde93731a3b6ec0e348862588e3914bd9718934976b3410230338ec8570f7647f98af2cb4d3607244c5c990e3165acb82a0e348f7f7f5ec4f1f67e9aa5c20a414d6851de55f741b7460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300a08d61abdb6fc24bbe81a55d424da3c696904c710cbf544970581141f61ae4366c0502bbb07925efc44628e8d60ab8d02306cfcf0e26e3c0000cd1b9ff5635346fbf9f6d13f67820f8c936cfb5f3ea2fee36c632a01877cbfa2bf74286d70204c220302047c435bb5006730650230255717925a66225d4b8960151a65ac56e36ccda4ced48d145c5f11db37e1149973b94c47789be7ff64b34b62c861dc080231009f26faae0a6ae0adbe182c6a816d552044f3e8ac1243ecec6c6953ce68dd871452863a9222c2107ce3bb59cddd2047770302047c435bb500673065023045f539d38dce662bd5c08a26f8f2e3998246ed0383cab1cb868a8a628394f48f07ed210a9cdf45e2ec43fe0fb06aa49d023100ab5905782312f7e6678cad2ac6e969ae2b95633437106cd80d32d216ba2fdb8171d38724e568576e33f6daa7267a97590302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023002e75b297f4742e44e2281fb36df3468b954bc0f9779bd267a2b431ac600baebf4823eb928d3faa8afa5fb525bbe5eac0231009650e2e777362309a68f7c1facfe1831f5e64f9268def2b28b3143debf008110c5953aceffc6ce5f241646cf902250380302047c435bb500673065023100b2188baa6e336542223fec365967de36e502a9cfc7d68fb5fc018f3f0f3afe665af66641b317bcfeb84ade2a013d4265023076497b6311fd5b3c61959ff50d86e7bd86edb7542c95a378d26a37aea936b56f9c8538ac2d1257dbb8efab13617f1f0d0302047c435bb5006830660231009734c27c11f1a159854e7166c5064609c8db542ddbb8f238a9c4f3f0769720ddb2aa7da824302a7ee5f4701e528dad32023100b1e3ebee36db94a789415b42e1f9e7ab82239a616c966194a5bf65693cf715f24191c79462459de166352280fd5951990302047c435bb5006630640230197adb926ed529d2e6a5113a4924b13c59d9d0919d22f3d3fd9652e67335bd45a88fc12136e716207d214caf00f7abf20230743cb5f03c2c32541f335933f547d3db64176ddc2ce95193a0489a0b82cc4fe98e02cfb408e65d03757dc6ac41c84d8a0302047c435bb50066306402301aa7ab023fad414c0a79a21cac455ffe0476ed5a69b3d56d441bc96f57bcf7a600491037026d19a0c455647dc7e96c2202306a5dc411d9038aa13015df300f850968434be3ef5535ff4e19280fefeb1e59bb49b1f5277edfedadca0fada5fcfe73e10302047c435bb50067306502307db0745099f2447d3c484d2b80f124b1e26abfd702d450a60ba2213b54462e76501e4aee03db9bffdbba17298dc4296e023100fcad01d467f22788b85cfb201aed0cc03fb4bda675a16d6f9715f4dbcd9b0cd911f4c2c34b6cd7df30b079a09898bbc60302047c435bb500673065023100d7e8f280f7f6bea537860c0278d7aca77b6fa2285872842a8435449f76ca29734a089606e372fd6a8e7c3f6bc13f341902300cd52ead6c49f34d05991769edf95d4ace18902e3a74be785d8c11e3e42120c8a112750117f363559bb0cdfbc3648f7a0302047c435bb500683066023100fb954de252221e90692a76e972adaf4c8314d43384f711969851c2e70cade68a2cc83089ac1b735dea2de926f0f05fff023100a02fe2a1153f28388d2a9f1ac3fbca99547c2ca029a1da9edc714d8cfaedd622e353dd8026ee9461e790637ff5659e6a0302047c435bb500683066023100c27c371220ada055b62abcde60a91fcb59373de65446dafe300d8195ce029cc12f6fe162430afd4a27bf144f8d73213402310084b9d7eb23c4aad7b4557cc8e44d7f6fe9434cf0d104e3b771132ede5e840ac0943a6c44b496c32daadbf30b46cb19950302047c435bb500673065023071584a524e670c9b4d97a15673ffbe3cba66ec71cef527e8aec4d42f5949f8c6f69c505306a91a93e82f7afdfe036016023100b1861f4316d557a7545bef13a9291f787fbc22e8037b901c255065023d7076ac548439fde99ea1f0260da6878700feb00302047c435bb50066306402302afe298833f3f2149055e122f302ee857cb2b4afa6099ee64638a2780912f8c516810a9a396a83e14d09b82feeec0b7e02304ef7d2b920f6917e69bb5eeb2e915b8a2ee224f806b2e01fa8315e42d5d491f3ddf7db23cf77a9f010680599efb67c1c0302047c435bb50067306502301f3d4ec3f740e82fc2b3ce01ae277a614fc1ceda10837bd0029d21e05a8de3f826a780e5f8295922526a07b3544babab023100c2c657131c3e69644db0624b4a523672077be71a0d695d53c89deb93690ec47a10ce2ace4e23eef7340ac5aae03026600302047c435bb500663064023030a1e5b2f8b2787c60b09d32a4feaf3966aa557426db002004febe1dbb63b085f61927084cfbbd278ad09a03c6b3c46e02300ea4b44fc306760beb93c462d085fed18535f05e1b36be53e9eb58d8f66b65fb23f2ea35194f22e24366db364764bda90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230501c7e9115b9d0321e60172c2af2f5d7ca821d0474eec96b6b9d56dc8a531a6209f12ac945c037de18981702a8cb7d7a023100fdb4e61d1953d6678b93f7e60aabb303b0cfa63721a1b7e15fe246b3377b07af7200ca517d1563e3a014aaed7a065ca00302047c435bb5006730650230137edc1785af9522c8fac5f5cab1d9c74ee6568d6215e55a061536586ad76861cac0854272b49ae87a651ea5f8abc529023100f54b8df95261c92d8e44e01cc43eb7b64e4bbfda7c13a241082ef680b5fabea949338b40a8775b5e3d0b40a865a286660302047c435bb500673065023100b06516bb7f6503ab1eee1ce8053e433543e177664a20bdcd252445c1e19acad656fd595bdbcbc274ed0e05ff5ce04ae702304f7eea8a626cc00476b2bd02a0b74da134be75354af1748174f8c2cf58f3992ccdebed0d24e8351bd94cbca5307278ea0302047c435bb500683066023100ade29d10d4ac9d0f886f3bdf93b6bb38d04b1b7f85ce474bdda9ce68fb44cf8bc6f15179be2fcf45830a981c8d06b420023100b338702b94519c7efeccf30856fcef3b24ad7e0a31b6ce797f816b331667e0ab157fde7118231f9505d80f004a8243050302047c435bb500683066023100cec83acdf4c7aa7e39a96cb17d30fe8e7687352d415c6b954d824c598553aa125a39dddef9665279fe7fa436540b5401023100abaf46a412d4809ce65003803e98e8b829bd3db34b71f0c8866ef8ad73062633002803c7e2ed0d0796c0d698c26e81650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302a6d193ddf75830bd42f7f5d3271b7748fe671a7345e80bc7ad7c4cd3837d39b556f291205a083560f5e6c1bef8811a0023100e410aa5cabd8b5b2dfd5e4f920b529b02c778cf23aa1e4cd7e8699a41a18e39576774de23846279fc55484ef99d7520c0302047c435bb500673065023100e37de1d41d21d209061b816e0568f1eb869535d459d985655ccb57a12ad963815ffe5f8a6813f73f7d64ab00ca9b6c9902302ebfb19ba802e0e0cca24b77ab62b15a8b10dadb5f32c49a6b0547622be1edbe3b40626427a43af37927e1fae7a07c3b0302047c435bb500673065023100e13da038346b092395a0ffa7e6bf08e305de1db45bf6cdd76fc69cccc2c1058228ffacc75680e2d6a9c6c474383c1ffc023030868c1c18445482aeedcb0c3a5ef6bce43fac110b671778a93ef710c56b3a72b94fdd005728e53394a4908b5b66c0ed0302047c435bb500673065023100d0b2031dcd3bceb7056adf790555a791e54285e740e4a3e25c8ef49d35f38a2a032a0513c457decbd2f078ce97ad647602303b3d65c6fb4f567e646b2afb4c109c3515a2c83ca9e7a81f1abc4840d091fff613e8f9c99ffc7b3850f5de31ac22ad4b0302047c435bb500673065023050a3ebb4e7feac45b0ae1483ee5969c17996303c3c643b5b7798ce566fca189df1c8ffa91033e2580e8a2808a97411a3023100b216f05129d8c09bb2276243dca2896a04d392caf407214fd7b863e72d65a2f22c7b100b2889f7f1e32ee5192d4b93b30302047c435bb500683066023100aace6e4eb0a66f310c4469e2641863c1a01875d3f2dbd3618b42eed3282f0e460cef50fd5a7e5516550377fd2c853d47023100c8f7375b5db150db961e108fcbe02198ec0e9f07d9832dc92f04354a58a52181853b7b08dccaf0dae9a527dc430f8ac30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023019f788747c66ebeb206f77f318e5818f0535f2f293d33fab4e7a73397689ee11e86e3450cf5f8c2d721631c36655aa1d023029331a199c9a7b338f3ee04feedbc1453c87f43ccf7e962d6fbaf3574b7cc6814eefa485f33904bafe823a46181fbe160302047c435bb50065306302304d8ca119a6d0ab30c8e5150ca3c18dd0656f93e459c7366830699e2530fb6a2e251fc3d5072080317a40f74a89c05767022f1d7ead0b785fa16542223ee1173ecfed9c4451e55ef23663f1ebbae30449a528ec372d5e156d580a10a73e587cce5d0302047c435bb50066306402302c9e83b176b187d00dc0d87ffe1e3986896449b1d1fc29ff85b93f528821ea64bc682596e6c58d4cff36089f7ecf8d4f0230304fd5000ae0c9bc82ac3b0ca275b8f355fce1c3c1f0fe2d45649ef987717942f2cd21f8cbd98405911c0c7f9f66bf250302047c435bb50066306402305a4d2ea2c449a17f893cac136cfef8c948aaabb52a6bfe581f94d17f7ffc542fa12abcad53d6986dd20e325da32d9524023001136ffa6547a989c61c11d11db03e015455b59d125e6ce8d3e7a25f31bc10839dd1aa0aabd6d029018cf0c766e39d2b0302047c435bb500673065023100a0298cd2a90c423f2b63373773501179f7be2a6aa905d6e09a6f830ea67389e35111088c54256cb9f0bcfb53f61dccba02306abd866f3218b2e8721aa6fe28d3c5cfb4d983103d0fe55c4f300300df3c44718d2310ff45ecbe07d74288790841a2640302047c435bb50067306502302fc5234300e9e8d93d5dea11eff0751f0bfa000d17c030b756d7d138007510298b6bba5e9e35fc9b2ad9ea566945ddb60231008f59ad9760fee46a9c2ebcf4dae09009aff1acfb080dc1b64d197535a3f6d532792e4164ef3b137d0e7529badd6ebb150302047c435bb500683066023100d485036e910dde3c74c6b1f9d0895979c6348930ff06050025ef11884294515fdb4e2f380efefab500f8773a7e0faf68023100a953e280b5626138356fa7ffb166b9144f2de988a7602cd6a961384c82c6f9e934e650fbeab730087d5f676ba50d3bda0302047c435bb500683066023100edf918581ce5fc9ee1aa8a33d0275d4485227e460dbdde8b78c89ab180e705e5894235a90c2f7c416989a568a39bd3e2023100b091e6ecd17015c4e0687fa1e32750c5760484395cb96cf0699c58d538fc74cad475455dd292ec9848efa5130ae82c540302047c435bb500673065023100c2e20c7470dd75cd92cbf24a9ac72d370cdbbbb0e9e291e7c38d32ee7de60ef9386d3c0c0f07c12530f841bdbbf4064702302ab7bf38a82e0981f7f4b8e10b043544a23d4c62d748ea0e947bce7fd289bbae04248b00e0d4b4362d13c5ab033bb6780302047c435bb5006730650230305def0bc3990b2ec3df78847dfb4b3c8066edf7f6832af51ab2e3fa15005ea4dbd3a3e552e0fc503372cdc2acee62a9023100b945f322e68cf521b6e38871791b4e18db758145838bd9b9f95bee5ec33b6406de650eb14c2b76ac137cfc73c3e4b0c90302047c435bb50067306502305790869aff15b195023f7e0566de8fcb03c6bd51b90b5370ba946b9a016ef3efa648d6d261c4727bcbe358375ad906ad023100d5a8a03d1e3f1e973a9b73d67c61b83cedc314fe5059c071cc955d7abb54bfbd8ec13671e08bb2ed748ff2597a14e8a80302047c435bb50067306502305a0d3623cefb1cf4144ddfc92ea754b110b1693586cddbb20c95dea3ad6b663c8596c83268ca7224b57045cd5227200a023100e86b8302be19bbdf8eca91983ace00892e2a99274cc8c9b3f46b279372e3fa879890c4aa4921b7c8cf0d46641342adca0302047c435bb500673065023100b6db66af84a7e4f8a5633e720ff3e3ebe50cba4d6a7171680c330783683b7e446272780abade9a81d6ad9cc5e4e007fc0230646a290c53257dd1df70f7d995d897568f0009abc1d2b198cd3e0bc0171f29f9f8a91542c6645c2bb60c26fc0604a02b0302047c435bb500683066023100c79485496dc55fe0f088d92e4f924fa3930120cb642bfde2dd290c2383f0f06e6c41dfbfcbc0972d3ef8236ba3d38e2d023100dbf37ed94b8a402e37e4055e8d7f9d35040f6359a9d2efc5088494e0b2ad1ab202fba179cf006dad4091932c7e78dfd70302047c435bb500673065023052760663c907e2b9445286c82ef88f0d1a67d8a9b88d270c1a8b60d103fb81470d978ecaff0d26717978ee7dde689340023100849845d91e0cfb29e2fe94fa711331a46e90f6cd208e78b86f3ba1249c369daafb02e8da0bd4a9c7522bb86000c5c99a0302047c435bb500673065023006311a551b1be9e2f829ffb37eeacb5cd864d00c17da09d4f37ed74f72cc78e0ef4bc228bd5dc1d9c82d598ee6bbb6ba0231008ec0a1080c17a0d08404df0f3fa25642266ccde7a496784dabbe7ae3948417b61a9f7a5ccca80716c4f20d67169d51f40302047c435bb5006630640230686455e9f3bfd4a17a493a6189410178a6c8da7beee7570a8d64918ed44b439bb293096bf5c110766007403ae11fb05002300e09c10e27c6c25b063e61d22b754d5ba5e800930277c922fe3ba334da111fe70311e5ed04433205cbd76e0f72dd6b9f0302047c435bb50068306602310099916b8d754961903a131e7d447cc7144f100a9f0033c9ec8e3a5b87e50b9a67c1af8fb0986133918b3cc42a22a1e752023100b3c2f6545945dcb2a003c4c83228432f60e25bd18aeedcae162ce556c87d136ae041c3d35aa7344652f15071b85a8fea0302047c435bb500683066023100cf02d770037452e687ab3ad4c49047e70a1827f35b5c7db5a0af973fb085704c5bb0b9c7d60dc26702b686df91a6a05a023100d3049a4914d3b1597de09b64d292a140be177aff18cd26ba554f322fe2b79e10bf4c63ef7688e4673894d68ca6c7e9b00302047c435bb500683066023100e49644cdfb1a5aca11cb7b2e62521710614c016cc21649e9813b6707b1e87712e044bd21c660b6996a9b5b49c94623a8023100c7e7ad41bd9cf9cdcc649e55e469d50dc37f77c16ac37bba8ee9ef752c6da38fe228e33ceb8276460f0a5737a69624180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230411f8d6bea8c295afec83ed0a5a8124ed8b88b362f749e51472017be5309786f1b4323aa5f7028a4d9856102e4cfa9b3023054f650decf94b510d0d2625edd3846a842846c9bb883463be8eb7313fe2d7ce075fb4796b776037629e7376a19bb8fcd0302047c435bb50068306602310096da1e03789a0f3cb17973493ce006055c1f4b77078dfec59f8261c913d1add8bd4c27bd5f61d59dd0cdb6844b28725202310087563b0f45d1edb1b93895cbe8826b780acf5d3c1de649dbf1e413fbe18cc699727d40017f51d34c5fc1eae228c5e3d80302047c435bb500673065023100d117c4267925e027a2e68bd162c41d78db35d2dad70b6aa6cee1e5e7e62270ae5f544bf9f7ac4f2372de7814733105a4023079f6a8c10745a14061dc1dd9b199e32899db3516d02af2d6076d6884a8c8b3220a05a13f18768db10c942b4d9ee3ff700302047c435bb500683066023100c68e4095eca8ddb750e78c73c95fcefa31303dff358c0e6da9e94cdd50a4345132cdb92e796817bfe1e3eb8ec443e990023100d9c426f88a5c5ab010587e75fed1a46c34dd17188faee9cfef114d35b79b297905f58d95072fafeffdbe11836f2cf7c30302047c435bb50066306402305cf030f62e58ee1eedc244028d1da39bff0ae0adf9d751344723a853f6cecdcbd678f0f3de0a3066159ceeedb59cef9e023011e97f8837603dcb61bd6013b80426a67ee88b94b3cd214822624d2864e6d49b67d392249398e05a2fbdcc9484b4e11b0302047c435bb50067306502304e67a12f71c843bb0bbe8149acc73c430f33bf570570f8d89520038d24cbf58fca459e18d84240936fe1c9a5a071e2fd023100b5b45b8726ab31884fd89b296600d0cf7b4cf5072a43f65c9d0ab7cc38827e98ad2fe0bcc417ed592ab56b1a261b5e0c0302047c435bb500673065023100db0a03905a493472490573602d552215b5b70a3d571f99ad7afec3a4a0d6e52c0b8a1a33afae0506ebadf4c5db7a845b02300817024d569b784c4193e6095d6c836ab178966ee7d4fcce23e6ce7cd05a91956fb6b8614f3b1eeb0feb6c75c06f52bc0302047c435bb50067306502306594f56f6bc42d743610166453ede5c91d5eec91db15d667119ec0dde701deeb7477a076cf899b8d9d3e806a8f29ec54023100e1efd103a3acfb8ae2d851b57670c256ffa2cc1eaf9c4dbb355e60ec42c80cddba58668dd39eea5a3296d90df8715b8b0302047c435bb500673065023100a86d644baacf5c52ba01880cc95ffb9c7f8e649c421f0c8c22edc24e816b8b980992362ed0b24d06fd02daac56f478af02305539bd6394e5e3a1ad3de24d73cdc6703582c45341eb7eace535bf92fa15bca1fafc6f721aacacd0923c96a96b8722ce0302047c435bb50067306502303fa2638f7387075188b7f84630fde3a1b03347bfc1cc5de365832d74912c0b98f84f0a1d6b8e76907eb17971c5bdef8b023100d0514273b3537dd0e540adbd3d249481236bd86d6f3f0e2ef182113b1cd3ea672444b4878ef71b35879e43bbd3eae6180302047c435bb500683066023100e64d3a3f1486272ac6c26a103cba279689d4f300ce1aaf7bf611aec48715afafd9c9bc2840322d6cf0a528d59839856f0231008dc32aa1ba879a027e16b8225546b9cf07c15e125c26891208a3190b60160257fd6dcc3167be38b9e9595f37fd7b75530302047c435bb500683066023100b0403802f26cfa7bf5fd21fa9a70315aee8b0b236bb997d8947307a13e11e6cc7b740c48dc5366f3ee4438a82ce516ac0231009a206aaf293e0ad8cd535b3d27cc49b5a3d5d79aa7562005c11343d50d2da70e75e6aff984f3c6a25a56b9f400141eb60302047c435bb500673065023100c36113c430cce691184a9addf7d2191aa6a2fab7c03a4b51fb50deae9abbaff057af9c9e104c43453bd2f338688295a002300dad380ea411de5e3a0ae62645486cebb5b5548c723128e9fb65c28bffd26645bf4ef7cbb769d4f8e4686042c98fed6b0302047c435bb500673065023100d81b85fe401ee47b86c7750e14191fc594eca6f0b07ad4683658dfe247d64f4b215c9e687e6897d72d6808d5ab81e28602300603853eff8ffdfd7fc63cab277c04e8039b1f36a081b8bec75425f0a96dbf0b26f05999e35db2eb82baf9797337c27c0302047c435bb50067306502306136c2f8e146db09c90048505e9fc44f4ed8011d46a1a0edc1167fbe71f2477830a643c3b3bd90d4387314a259b760ef023100980709841ebc85bcd131228fa26689760c82d4d0edeca3e0bbb64cc6a40dab49be0416cdd144414c2ce8aadcbff8cb6e0302047c435bb50067306502302bf199a86114e21c2e6ff1f8eb44549025f096f559eab17e9525f1187b991ea732d950d1a7fd2dc60815bbd9d9ab6b230231009f6f3f7d0efe1e4f6de7fdb0b2c5431796457bcfcdc7ce8e54b87cd8b90abd0905f64e911e861a422c4f692d9f77a2380302047c435bb5006730650231009eb821926bb7abc39d50e963d14a37827e155ef5ddabfd1eaa0ca39935401900fbbfeded5a7105c767fcaebe5ca47a6f02304fc6a972ca32bf8481851134777354af1aa71c594f873dd6d5691967ec347a5615b9e453c8e399028a9df855fe47d0fb0302047c435bb500663064023064ff088e6e9d1dbd6a450540395bb473322bf324176c36d5414ce5c74a54043d629f90618db66af844cf4f9cffb206d80230463b602713e97ba11b06bc254072c7f899189c58ac4e935f6bd638263f9fb8d8f7a9e068e650005e3ee21796eb57f44d0302047c435bb500683066023100c7d82177a103eaee4d246731228c118c965a54ec1d078d1c815c52051c4ce34b8baac2e4e8c5005cab1235096313a555023100daab7ddc39bff1b763d0673a31d40103e414e5d7cd4f7471d0f1f3eccbd82b6d8ec27598e7d65af7288c0ac92d6094c10302047c435bb50066306402300994906e32cbc6b9b7501df92948fd1a0c5f2ffe005e5ba7cf66a99ebbd3600c0f6bafab244c3708bb24fb845a6e1e4c0230171cdf147ccbac4d8a506ba8e3f963e94f28975e67d3addcc0bfceb8618156dee33fee0ca31f575079711641df2862a60302047c435bb500683066023100c52ecfdd82436f9dea3a87d516ce1c4489365bfe4e5c2d39aca44ee8032ee4e69142ea2bc4a1faac8f70f0729aa800c702310086923aa40db6c8860e3ce9c529e8957f207d016c64c8fa8410e05ad58c73f0f53068f4cc4e937611e16e4c8fd5feefe30302047c435bb500663064023025c4fdda5e37f8668a97b2a27b0a353bbec9bda432cc11e22d871359f7081d8acc3ac8df14c78a25ac91fb565ecc911402303ed40aeab4278402486b08f14f1951bec1a55d42c79d6d98b36f76fb0a2590822a91e951c8841db46ad0e77c5119cae20302047c435bb500683066023100fa580a4984d8ae871cbc89d15fc9c71ee858d2f845acb50e2293db09e3a9fa5d2b1b313c4a72fc128ffa282f3c6fcee5023100c9784ce1a6b027c6e1534ff591c5dd398eacd7c61787f9b68384f9144f7722ee67dadf587c429e4f37682764851f082b0302047c435bb500683066023100a6321309f21bf27346435f55d7d5df3c2d5152027ea1b02e3a505302b986c6e12880cb7fb8e8dc74ce779a8a0ef83525023100dc9a169073d0942b153a834af30280a4d50ce03bcfb39a5babdb605cc63bc57653bf6854b1177b280e33aa35a23c0a7d0302047c435bb500673065023028dea4f92e85ef190e6037c4ae2ad1d3e350779fb5a8ecb21788745cdfb3877794250ca7efc009b582992cab320bbf01023100bd1728e760b8be3c3d0794c8db2e72ac3008f55af8c11309e1545bc47f9caf1dd78cd81e0063a4620c5ffd545ab4dbc20302047c435bb500683066023100ec951cce17b05f203515e6f46ff0ba7053a97827b9c537728d8db68227e1cb26e14bbc2de7f0a0f3e5337c9f8153d5dc023100cce245d9c3f831ce3cc231fac83b0bf18cffc6d50b1b93fa5f1f7bcf1201a5e0a3665ccfb1d1aee37ccff84de614683f0302047c435bb500673065023100abb9be740cc0533685abf260bfcc27ee55e397dc31e47fd203be6022cdcc6800d64a1e29926caca9d8cd390831f51a9902307196b3ff1f7a4fe21bf1b874cbb2d614d92bc2a7c5decd0da63d906d8ec4e66e1a4af1ba21f47268ff5642964420a29b0302047c435bb500673065023100b157fbde53ec9004a7d3744fb008d1cbdb7aa4b9323a3a8c5b1553978eb577e54bf592e0876e84a04e4164a42354b35a02300838e9efa497a3368bec420f8dddb163b91e6729138644664edcaacb6b5debf631633ae0d899ae7fa78586aa6fd89aad0302047c435bb500673065023100da1140ed3a37b87cc51d532968d80c2f870cf0eb8a9b0e5b55a94e87ba82f1d991dbd46bb719b909203524c16761fcb6023046b78a7e3138b6f8d02273baea739c24033036efd36a3d64979623344a0738f64744207f507720edbc94ee03c607eb620302047c435bb50066306402304c16988306db565414be86e7afd33462682ff5cc36475bcf555510a6c22ce0c15f5f6bca6971b70012fea9ddd52aafde0230362395a4e74903c585420e2c74781b13ec8b4d91bc06e10566322b7a3961dbf9e4e2529b772268c6a0cac03c8a2ce74c0302047c435bb500683066023100d0af34b1654220a33eebcb2fb6a1da6bf5cbc1262ecd1cfbd0291fb2d3b3d19b3582d8ab69e6e621837217a6975d67ab023100f58e2d800cef9810f9033e9f0aaa33de62520e0a35ccec2ab919b102e0c91e91d9622dd551dc1673c31f0a660b83d6110302047c435bb50068306602310084f3855e24d6232f70267fa500bdd845e846dd4060d54460c73a0948c5d1dda078e4bc2751a9a84429d6936102443734023100ffeae37098e406755dd633fa53fdc83d1b22efe5dab23dba59018ba678ef67989c97b99c681cf7a3c1592b17820d3a2d0302047c435bb50067306502300da36ceebf4ba6ae12fe7f3990621c242a45f305b4907fbf9dae02c0c5bdb265bc675b365e619cb956c88026c6a518c7023100e73657bb6b2ffbe1c522328e26343cab4d680861f3e5b45da432a88d9e35651a850dea131b369979101da147361046b30302047c435bb500663064023066be659275d49dcc504b8328e91e0c2c47cbacddab2dbb30217fc4c463cd1ff0357da630b88726697a2e81b24e8e4a9a023056b8f119602aa4a3a038089a9fdb374a809b1953f251ef3a32b3aa39c8caf073aa0ed97104d1361e38f6eca2349cf6a90302047c435bb50066306402300b506f43f4a4f0ad88792d66b9cccb58dcf1c973070673ffd8f36340350c9b574762c62f59ed5c7c975e01fd07dd9061023060f13838babc1d48cba96d44d8fe7a75a3bfbd8f72782e40c6dcac445ad5b9d1e31d17a8b4be9ca9a5f09d2480164f490302047c435bb500673065023100da149c71c1d2cb0d1f4a8e7c0e5c621700f73eb9fc886bfa1be1eee25d1830fcc8d74104cb27bc1a459ebe8e5e0a893c02305d5a96ef21dacb244447662f67f7e88425179748ffbbedc0fed54c1ae706ff89ca36e28c344be3bce8e0b4b8f93211870302047c435bb500673065023100c0b8dbee8b5bec220f6963da2b251a35bd16d60492f2e8a5d485e52554df84de175fadf5cc732b495dcf712bf186a45f02302b299138756d177241f61430d0cc590feae77bf6de36c939f50ef87e02e813a76febad9ac69c594c412736ca0c5a8d2a0302047c435bb50067306502306d55cce3ec47918f89b1abd6e31b8a4fc0ff041d025e261d868c451249ccd82705e841f75668b139c182cd9b5b624631023100ccb42c271964c574f117027a90dd69adca86bdddfb7e181e6a80d7876ec5dc6c35f460131a810de8e557d2f3e75fca610302047c435bb500673065023020f4124f531ab50c4d66b327bbb704d4d5bb855542ac1329a7025ea285e70e5f38c10aedd1b1c275a6b8cfd3c3720a3e0231008d8244dca4d9306f2e0454883f276dd119b6eecd7fb8e45367f99fe59aaaaf873c2da8e94e08af4187aad96faad4dba20302047c435bb500673065023100cc6e85e8239e4aa1176a2f00f5649f67f67f725885231ff7ac8d60c48f5b9f7a88a581ba51aed7a56e299fb984ddb7df023074ef285f5a46585dc787073da5541cb41c36cca8da82b288ef97fac1f1b2aea0652ed42722f0cdb6fcd61d756e6915b60302047c435bb500683066023100ad806b29adb3b2e99289c9abb6ac81d8938e92aeb131a000815cb00b6a4d3c076ad01cda3426c0e6b0b24feb04dbb2f5023100c35305c2b9a0345a576555ddfba32bfa0d481c798014cf2828dc8922f24217ef68b331e12fbb863eef02b9606145d0cf0302047c435bb500673065023100dfa4ce852bd70ed2fd817f129fc1292c0d6f1d050d90a8f2112c93c1e60fe73e17a7ce35c138edaf3f724f1ba018ac5402307c04a54e3fd313d81c47a9c269c853c328cd543de0b4f66628da7930395f7b3e3345984a8ccd41c491b8d20de7a1440a0302047c435bb500673065023100c71586ea13bd5f2c18a6d668d56739a46a5870fdd9c3b205868c06f2eac19e573c975a60b518867ea2b83be1179db715023036c8ed7d72dc71bb55ddae9790eeb988ed46db82a13f6a92c258464889170261c109c5b84c694cac7769d2283629c4480302047c435bb500673065023100fa709694e23a51033191a0de16256f768ac9f5488c743a0316dbb911d0d5cd450a50fa50db88070aca7f9551500715a5023063586de78eb51ef0f6ceba0d3a3049be6a6489ea8488df90dc873b154a165f35f297584c9f1306850d29d1ceee2ce7610302047c435bb500673065023000f67df69730321cff49040cc882a256e41304039f14b8a470556d7593b2b2c4bedb8a05a91aba09cdd886d988b41c76023100cae1ec0b5fc58b0c5eae3e7cdf63178a2469168dba93a904025acb68ef1dbdd171d7947f4f763ccc969cb8f58e96a9b90302047c435bb50066306402305e1c6c01a1c7536cd8e2c8eecdc7c07d85aa6be36e1da19f95e0f19232d3463276809f32ded1d612c2a65d140d72f5ea02305464583da14b23a648802aca8fc20fd4e53ae2179c5e8946a56f832ac3f699d7c8053f694a0e626cc96069eb067146f50302047c435bb5006730650230412f04edb023cafcb4b7b5aaf17ccef33408ff1a49d8136e91708f6cc130663dd1f6e42971f5e5755b2138cb7529769b023100c5cd39d0685b347fb58af410674b8f1586ec5586b087083bd7b56de9c23467a4d83fcf31833224e5ad52cfd66a78e4960302047c435bb500683066023100897c6ee22de1db4230f998e167da87c08f2993c325e2ff56918e8aa860f2595792e7e3bec25004fd47cd58e6d3b1f7f0023100d23caff6c72c89f1758eb67e9f080956483c830bcea9d044333eb156210ccd3b10a9de53b3b9db9cf6df6b183114ba460302047c435bb500673065023100900d41cc5b4eeaa4356ba55fb1a08f89b5bf9e85f513199110a8fcffb994d7f5b1650f2f76eb705df5af390bb31ab25002305398c5dcbf2d52d8a83e9c7660b4c83349ee14fd1ad9c2b4ca108b418aa263356699b54ede9db08d80641b58aca0a0840302047c435bb500673065023100daf13c1fdee24dc49d13953d922fb3374625f856f4aa9e0bfcd7df60079d6c48f108acf9b4b49546129c564db91cd3ae02302fca2ffbd3fef0a23ca5b528ec6a398b9778ca0ca4199d29508cf32ba52ff6ddae4853437a43b4859f7017787afc59190302047c435bb500683066023100ec29e9fbc72bdc606803bd484803b4cbb0192c4506e55fc52f2e8f99f3c5e5ce36d591dab2a6ae970456359e2536a5c9023100a9dfb6078e26ad71a4cece4bb8d5f120896afe8378e5d5de844e91afc8ca1f057b3ff25a6198428dfc11233ba65acc540302047c435bb500683066023100b2e84300b2d4a6ab376dff14e84eeb18022ac754510b2c8d5d85a4f0a09726dc0b39d6b6efee3b4c7abe4379cfdfa38d0231008ba712a79ad2907b0eb9fc71733dc7870f227dafe4125a51f65c4415cb6393ab0b73c7fd4a57037524c5ae8751689ee00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230326e95646380c8b1adf2b7f788da13b9c94d9f270c940ed6ef8c5a02eeb89bedbeb240944d8356ff442d41b659ecc25c02310088774159921743a6248628756485ff46ce6dbff47f109a1e9d6a33e8d4b434343ea18e5adee5c7ad27097ab1a2cfc2360302047c435bb50067306502310083dd84e9c003d670b9631a5886d21e6281b647455ae3f78ca962214689f08fa8d6b4f082f71947a38308728275c4829202305f9810c10f280a570705d8d73c7a566c7d501556d7f16ac3b6e09fd71a4c810e4d3533814997f3df2c2d77141e2562ae0302047c435bb5006730650230609b2df3b7492e83ea2bc885813a5c38640191b44c52190279c8fe765e455ec1733b1a8bc3cf9edcbcd35c4fc418041b023100a61268a781ce4f6edfee406cdf3ec57aab3e6484e2468db826b19a206079d2bf3b1d7fe1ac54ff683e8f19d4fca0394e0302047c435bb5006730650231009799ec2ec680edd6508936561e4774bdb4b6a49794ab895e0cc3ee4451dc5cd4abe4826df9de1fe52cf8f722c607ab0402305c18528e7b26ef53ad4ebf4fe2c3c9b5acce16c51ab224729599d02b5a93f38e0f8d8809c3bddb580dafdd1eb606be4c0302047c435bb50068306602310083efb2978b1774adea1b80dc9b5f0340833f0da8733d5b5dcdd0a91d0261ed9fa8e0f30315fca7ad633515db0909672b023100c324537cf4ebfab11a32aa8bd1fdfcc371439252ebcccfa110cddc00d7d8b6c7401cd4b62284a60a789e8ffdbac3efea0302047c435bb500683066023100c68a4429fbaeea0e087e96503500ea4526d20343605973252c5f6987c894c557bb169390e7fca0eca3e272ef98c7da77023100e59dffd72c131b9c3ce3d5ce3317456e97583c41046e9257335d9adfeca46e095ed511ef41595ac08d7f7df7f7223d080302047c435bb500683066023100994ddd3915a25407193a29d27edb0c31b55571da65c6a2b9ba3ee911ac788c13bc76037225098190fd494bd599cee739023100df72d39cb8d18b72f01c6c9c971225deb67d42a599488bce84dfa1e0da972e7a7c9099e3d29996eb0e13f648652a341b0302047c435bb500673065023100ed836b1567f567f9fc6d0b77c7ad40558731eb48db955594f37ec0fb13ce7022afe502d9df498ae0c8cdb633aa57bb07023012817f9ac77ffc8f0578dd177cf5d7c5181932ca0801e93a66da79d53803dd121d4ffc5e9e77c5ed7130e69fe8e855940302047c435bb5006630640230462c707a9cfc386f0ba8213bd8689a7845d45439d6f6237f650b73e73aea33823cf59548b21a571d3fd27dd0f3b3c72a023070b4fe7a7e8505e9a70ad0a217a7926930ec901eff5148b94313d128a7a63c53b0007fb27caf6e1e096ecb0cd844794e0302047c435bb500663064023018632d308c9dcb4588d0f8bccefbfa7bce47bea466298c5a4a0fd959246d5027081d2ea85605c20fadb1ed4061a60d0502302f4157e1439ffa03ff64d67e86c9999284fffb6ccd74ac5628833fc6b4f67bd57550bffcedc3472d9627d8c45c76743a0302047c435bb500683066023100c985a4c477214e13258408064bc2ea33fb4da2466cccb3a001fc4411153aca0ac6f0aa5fcbed800355c0c71b1f731cec02310097d1f37137a13185bb5766e88f687d3dd7f1e074b5c4d9e517e6f19c6f5084b0bb0676edb0c6e1b8dd10c0245f5883dd0302047c435bb500683066023100ac9772c17e3e6b241fdd8fedb29066c40394e73b5fb005d44efda66682fcd762601699e0c4ff70e7556803cefbae9de8023100b03dd6953144e683964939d30b973c83c948a707e000024231c371d9d1a18de71cdd1ce573ce3028267f821be517ca750302047c435bb50066306402306ce9f2b09abe1b882515f947afe6cbf2180dc639160d9a2815fb1a4f62cfafdf2861ea077b2d1bbfe1c2fdd3d4162361023002a20ad231c215a05ff92ccd337d0a17b9ba743579aebb4e1520cf7026fa8af061ea77cca4ae176d386416e878afd6340302047c435bb500683066023100a00910cdad7d6544e3ad8d8240270be0169d73c6d91adada2927dce66532c402767cb2cda5a8367fe447fa31cf3a19e6023100b7db5d0ae36377cfe60d769a34c6005e3c01b13f12b8ffd3287f12ca1c136c31ba130713231917d429d1a2a02f6dbefa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100939289a12f38ec62689812b02d4c43ce86daa37f13062bba8f935658df677a763c4d9e7a7fa7631379c51c7ece9cea46023037f17ae9220c9a67201dfa76a59ef550ea3270202045b094bcc7be663df07148fc0abb9c24c61eed89baabe104b63dec0302047c435bb5006730650230364485829f30cc2d6e18c17a4bcbe188adf02d5ee0cb1e3be13b83e2dd95550e08278a99f22aa8a8aaa7e89fdd257726023100f27600376cae8beef308866f63fc112b90f58e6fd18a9d8fd96d1d35d44b137e101428edf2b69035fb99215b1810cb800302047c435bb500673065023069728a234242fc45a9a036a978d083dbd5e44784075a2451e3cc78a3058db72341c1afee52f9885c686ce76a6e35492d02310084c57eb9ae1459fb5d9c2c69eb09e0657af651108f98d91f8417f8be8837d94fe2252c62bad0c4c7d7a6656e01e789bf0302047c435bb500663064023065ee02b3fd53871a33ecf57f4aa6fa85cf6b80bfa036371ff80eefc0b186fce18d3c068490f7f24ff9ef026222d385830230427da8defc2a58346e89c5100e7cdc0b190ef8f5879cf0d9d4a780a2c39f1b4029e1d7ae0a04b0436f08e6dcfdbb125a0302047c435bb500673065023100b4c59cf4669dc00f75b1cd6df54f21710e86d05b43e592b7006cf42e8534f60810c70646b4c2cac283c29e7b171dd192023028ea1d4b506540327f6e41c363799b9119f945534953ee6408b7672998823ec7ff2f5471d90eeb5a338e4fdce621ae840302047c435bb500683066023100d422e4b1bc4bd93e109829b6af400be03780c0cb51db73a58e9afd07d325f7e51b7b37e0190a66937c823beff10b87f8023100b46d71d46e567a9d022d6962b388addca9a842b4c497d7df153674b86ab3eccc14a9698d6d0dd807a515ddbcc39b789f0302047c435bb500683066023100e8347420b1b1efc328e9b326d99450675555dad01968b9d8afeadad8e6a807e71a283de17a8cb01aefb45fd3dd367dfb023100bef1d3a8195643f5d5b65c9caf3e202414fbde5d69a3b0398ca8e4d6df5e251076982a28f1b72869415969af88360c0c0302047c435bb50066306402305ffd56eb6ad07f8761005cdcfc900b8001b1b7d17115fa06d5a771cfae521c5d892803da9b064d8c726512c7cedfcab502304251beafad8996f4d072e5b299150d04c900506783109233134d24ae695a2953408974ae19d88f915feb2d1bbe26fb450302047c435bb50066306402301815e174dc24a62afbd97720ec173031c4ec8d458915dd5434f117992b1548db8903b92156e3e88659d703d5d610b24302307f14ec65193a43b469a38dd0be94d321d9ae90afd89afab37c2091c39e30c5c4bd868070d4f44a876e6ee227763c138b0302047c435bb500683066023100a3e96562c092751c5ed536b442699828e243272f2fded7db3948c1076662fde803c11a72a9a9e1c7388756570e1645d2023100dcadad6ceee4f400ee52904321807ee5489503291db80ddb9ce511c41b02c95a4be8c925d0a59bd43c63c53cb25022fc0302047c435bb50066306402306ce784f0cc23751ed26600826bf8a6cfa1ee2421927993547b3123e076eba06af712a47b80dd1eb49b03d8eb01a0aebd0230704f88ba5a8de504022e7821b1aa11094dd9bf30920bbc12386b900d7d18983864aae64c935154c22a4bf3f64ab64c8b0302047c435bb5006630640230339ab64c2c3fa94a1ba532e30a4136845b478049984fd42759eadf1217c01846f0fa09baf92012ca35b7822602b1c77d023049c826189d2a5be7dfd307d6e22a011dc09f3c5374c7100ebfdd5bb2c02beaecfaa40c764a22c880d89d825902c1d2c10302047c435bb500673065023100f7e707a30e43379f5531fd1affdf3eddafa43023d9e55f06f26e2a2efdda90506773c7269355abf2cb419be44a9b682e023049d996e90dfaae2b2b8c9ab72a46127ec103ad6eeebb0e306806c25fdc82f1f91a7aa99914b72b01a86fafa9b7cad7b70302047c435bb500683066023100dbbccf494f7b377717485673d28376fda681d5444a8cedc03fc1b164657f95222432dba2ab27cce1e819ab9f92e750af02310095c3e2445cfef15bb67ce73063d5342fa8fcbacb40ce3ae607d5b510ed9510c9e461572c6a43951f1787362dfbe0d5190302047c435bb500673065023100dc93008c31d7791877349615d040f04881547ec78a21aeab24e2d6ee748f3ee66788fd39378ce93123d5433eb3cefacd023000dd3d9075e656cfee50f11a121d714ca0cc0cfd9aa859f6c9310024dcc791fae0f1f34d21981d4adeaf723872e8872c0302047c435bb5006630640230496bfc84e82cf09fdbb23df93b0173d257bfe9462ca3ad57be201e76fa4fd375858a23d98ed7c5a7fb339b05faebd9cd023041b6ffc5fc044bb01ddc710f04ae09d52a9dc1a1b94b79e49d57ac30bed08750276ff49e698ac2b3223cc78343e064cc0302047c435bb500673065023100bf0e7bfe85c69d3340dd4f84f957720d4c11f741ad9289aff0a6592261f9bc87c89109fad1841dd33fe9ec2700d8a19f023047d3ce69ef87f655f7307a264c3ca0bc46301a316c20cde2aa30e918721b118ebcbd6af59cc3b7ea640b6eb6ae1bd22d0302047c435bb50067306502302dde412280e0d841a2097f70584ef87b02bd063e4ed8705527b848b5e5deef623577b06c50a6a3c68b66b50ad768e8ca023100b2aa1277617588db66d19aa73d179655be22b1f4a21812ef962e438c0754eb4967bfb9466f38e47432a8a1baf5c6fec60302047c435bb5006830660231008027a4f399750ab87ab971eab5be543d42e1586cb20f4765fa55fc49dc30323bf0a6d6e60f676bb346944ec31fab5a05023100efbbdc07e5aa1a6981befda359d042a1d516b2fbaab9e998c641fd037ee921772ee86fc272558b85de614bdbab3e9f110302047c435bb500683066023100ebf13739cb9069e08a45f6796d2915308fa6bf14e72293b9abd4ecf9796d319d1b91e345e0c878c87b05443f2293cdcd023100af9bd68ac11ba601f18ced3c41688c2d06604922c7873cbf9c3b992465b59e8e2dc3da877e3cb89e51942a0933dc37e30302047c435bb500663064023068443ed0c9c00b2dad742fedafa0694ae278809af43df2f31c92ce4d434d7f8630be9f7acaa2e1ee022c7791a05583450230604c95ef2b7e47776f988e7cc27f4747aec05db7092f4358742db66af7141f109f0cfa9e89e8481c99913ce81c8fd2a90302047c435bb500663064023015a59dbd524e04fb8944aa47bda758c6853435b1b28e86986a87f7e43e3bfed220d8e9b11f14cabd1c6cc650abf7caf002300c094052ac703ca06daa36f4de5d2afb60c11727942425b55e2394071b40089ad63a306e1f6e4b309a13822d93759a1f0302047c435bb500683066023100dd57ca207a68cbb9d61018b6eaae389213c1280519462bb5b7e331bf31352738a10331cc95270431a3f706429efc7fcc023100f20d2cd884c98d873ce9c7b75b87b998ea6a02373ad1f7959f6fae685ad3dfcd80e86f3787865047cd1904069cae747d0302047c435bb500673065023048ff3cff2a0cdac8408681cfe3e32cb29675307c37f4773fda950dfc327b34cd8c547c6c4a342aa20452903d1163e07f02310096b50c814955db804c54c6546e12ac681176ad09ee09971ba927b9a351b70c5820a39f18001ac3548c74ccf72b8117d40302047c435bb50066306402305c78a48e32f97a5d392f6fdbe1e88f7bd922a364e6b08970a0505582e0b1246c17bdc1ff1f2d6d5f12d6f63151069bca02300e3f260d9bc8070b350faa49176d399945f77ec7fec220b5bbabcb841ad72e668001722f13afbff883e4707c89dca88c0302047c435bb500673065023100c2a31240e4b2e99638132d6f4e43f3c3058afd5d005c659b69b93451e1226b496dc2a5a03cc0f910b56792b91fb5fbcb0230591d9cdba99bf4328b100b2d654d47e81531e7bef1030450e4b7f29d1a48826f988015709bb63cbd7033bc3efc1a4fe00302047c435bb500683066023100c4026dee85fba6e827f0720a54c383a1beba8b8df30aeff3ae2e83a62df75d869f76417cae37d0529172bac58a5a56f402310096a752a39cd893c764750c591fba4df7d25e664404bd7f5fc92a9bae601eb78ef7c00e7a5cd4b5babbc4985d17b02dd70302047c435bb500683066023100fb6c7050c7a5ae4022021f58b3ceb5e092d93c96d191b022c078b10ea7163120bf45ed0aee4b3a279bae118c3594c1f00231008929af23b02448b0b81669ceea8b4d9c846eee702b21767408bb9cd279b3b343561302c8492c4c4abd213ed027708ebc0302047c435bb50067306502307d4bf8631360da91c5694ed094e9e1a566af971f807c71fefcd18d84c949c8b7f9a6f67982aac11eed9a63f67c2b3ebe023100d74298f652d6cfff611ad0ca406bf39d82a1abace51948a225a39b7b2e0b7bbdd3073c01e8311a0ca1ea5ce3cffa679c0302047c435bb500663064023064be70d457ec00d42ff1e352f1fdc54ba673ea86f5979127081f02a4641acd718292ca2c216c7095fca00d8684438da702305f80b85cba8c08d182b70a8d76f0ddd47ea498b70807911fff27818a9391d9b6ed7bbd2f978e00d700cd67b9ec22ad780302047c435bb50067306502305531c28d156edfcee2c1d17f4f684879e049f13c47213f9f8f44a58d2d0c0c37f0b5eaa7b1c01ebd9a8fd16194764f360231008f911915d48ad302945479f3b6ebf269fdc8153307e573a9d209913b3301eaf3811f08f48ed37e647c5daaa2cce7e6780302047c435bb500673065023100ea8e0f1bad83d427b209015d84b47cbce277c4f12537f71bf6da3b2eea9795fd7596f035a775fd6589d52c6f9a67f6cd02307dacf435ba4e86ee368afb2d14b8c099dc2c28e78d997971d3f8b706b63b5c70408c3457a545c9ab96c4403d37d480820302047c435bb500673065023019e8223012e5015fdd0a360c196f509ce2abe5e619ac043cd0375b229d7b4f29652855fbea6a05ae76ce9b1c5df298a3023100d97a0ec9c452b47cf14c1d165e952c869aea06c8858ef5243446f13a9306d666edbf42510b83d580a574011a1d4097270302047c435bb500683066023100e7650c634c62a92b95a4c6bfc93151293dd4b477ca966f6926fbb27103b900f3f9931da66e8d24e8de85e96d576a513a023100976c90e5405f5d6df367b7ef4eedf8da2166953ec46d929d10a0905a696ef194f6734c94a77ace90a22da4ef74b7a3410302047c435bb500673065023100d1d3ae49410996cb206bfabc5413a1b93d2af5df5af46087d90ac49595050ab566d51c5206319a8d20b524537af5cffb02303074071bafb5c859c543f3f470525d868da20814947e2fdf76523df2d687b1bcc6f61967ee354262b065d1d6ddec854f0302047c435bb5006830660231009841db3cf73fd593d1d232c9912425ba348acebfc465f12eb328d6855134e982273c4e0fd158d177f5afd93460637d5b023100d7f8dee6172e999adf95e9c3ca2394174f88d26bef42a137a6bd04b990d343154692dd810b5c5544c127f88cc432baa50302047c435bb5006630640230550b9210df62cde263c4480df4511f1c2cc6362af31e0270d1c79969c603dfecc92a9b94b3f98a351ec24bb56c943cfe02307f465859657c1ae3e7d3a1b55962100f16f70ba57bea2e4a8e1619d524724fa7df66f705de1b2e6cb89cd26912b142e90302047c435bb500683066023100f4f6a876bfaf6009ff26eeaf697cd4c23fd2b93e61998cdbf314d741fb70e4c2b61a9ba55abbbdcba2b48eb434ee119e023100bf71798b5f80126ca354ffd94f0efc9bc759d455675702307e250239fd439aec10fee061a629e8e657c4f100fe3aa6530302047c435bb500683066023100f953b9f68f1c586a2f7602cf02a718172a136e3a56025d9ca938eb3888e827d20ae848cbe13ee9a57b2b839da03ec2a90231008f5c5875e5d3eb153d5e102388aa919ea41995934ebadb128a7fe3739ceb27e8931747dd5eca8dca242bce94e1e226d90302047c435bb50068306602310082a285bba65a845de8b26097588cdf89b4f650a0e5032a5206fc8f21114d4f4676ecf86468b4ae86a31dac563fac5fc4023100ee9143bcc1e9e6cf32d171ba275907fe3c71eaf2fde79bacf128f21a3f0d73d10b36589f7b94397ab4a2fba75b208b900302047c435bb50067306502305dcd9d71fb6c4720808509db8684ff60950e2e851299029c810d40db4f51fa3ab02c4bb1fad53f135ed0caf1f9a46aa1023100de15bd705054aaf31eb3dc270f8448478a5eb38c776763a0a0e84460f672dc9696005b028a2eba5d39ed345e696cb76c0302047c435bb50067306502300b73a304dbb6cd80490e166b17271889d1bfb7b2eaf2d4b557e951e4ac953ccbbebcfa0d03718c50dcd26aeb0d6f0ace023100dfe5354499e28c385140b4faf85c2ef21a176295a9f2de9d017a64884bd1a0a47374fbf6d8629d60b4c06e3fe25f6b890302047c435bb500673065023100d0418bf701de2dc4e019e3ec10fcd3f88fb0dd1b841009170289c401fe88edba6a0683d24e5155341776ee0bb3ba9d6d0230537d7e87f07d1fb390441a5665fabbb70bb9e0a41e3ee93c2da097d56a8cd785e8c51c1fb7fc4d17dec036eccc49efe90302047c435bb500683066023100cf337c0c32fe30b136f10e1eb604f5e94888df48b8b0fe51306fb14c17dd3de3165c2d674fd3f0ddec43d15097b6a295023100d8d6bd7f99bde75e1033104679b3c3eafb21404c153b67f82a9aa3f6abfe9d23174ffdc2c6e4d3480c9e6af91e2247140302047c435bb500683066023100c0387b4c7a1d52f46f353cd0b13e687996aba3e5241817da7152fb12a36a02071349395424c34cf4a3e8668cc71d50ad023100d0f6c88d331588ae199608c4c4f5885f99d2adbf0fb160d183f0c793e902ad4d53383166c09d291a370f723f44ddef7c0302047c435bb5006730650231008bda5db9d74e1450253abeeb16940c92e9238cdf52f1fb895f2b65d1417b5ce8a1e494909b9b16b82faa1e8e7bd5b28602303089a2e317f9dcaa40708e024e30e22bf0d8cb79080cfd219386c789fc1f566e7bc92546bae9744d9fc911272e904f630302047c435bb500663064023066f2006768d17f353c742972c87e60b7c4e7bb868c0f2e2157190decc8f13ee72d88dba9dd3bddec9779790985c0fa9c02302d9b188a98eb6119e2956f37309dc97f2b5db8dba81a9df32fe8fa1222620f2b25aab108f3bab4ea22de79733f3498140302047c435bb500663064023078d51a2abd73ba40062d0f8c77236213723c1aab8c03343b946ffe452926bf720130ad122b0e5bbbf1f181465308701b02302c9ec714bdf3fff890c99c0defa351af8e67e80024fd5031312339823c9a39464583b5aeeab137dd2e2ee085cb13df770302047c435bb500673065023100d3a28d0a49b9885ec5692879d7271f2d920000bf3fde4c8cac56ab9da5ec08c5abfc3f98d9018bc5601cd6dc7aa5ff6d02302b01ba5b0f072daedf7c30c67195ad24f4db4e7818c651dad6d56558a1482a58579e4032b7ac8ce2fea70d4c762845e60302047c435bb500683066023100d7c9b1276afef1ed3f1cdf08880f79f34366fdb2d8977ad462f4b5c65b5d34461c2ea527802bd526ca27fa5c9928c78d023100e1441beb886fd4ac99c292fa67718404c9752c7870184e75304e7fc78f9615113546f1b5d31bcddbdd7d830d36111b8a0302047c435bb50067306502307417632ae96df14634b9056517a0608066bbd08306c9fd2006cb287a3470ec086b243275c06611a0cb4267b6d5253cad023100cefb88c20273d39b5c62284cdd4ec34397b07ae5c74c811f35a7342ae2b2476eaf7b080d24db12bbda63c1371f8aaa7d0302047c435bb50067306502300941004c2e98589547cb6105d3d864f455cce992cedfe9c6178b3efaa5ba366cc599f66edd7131b1e6fa9f1c476ce6ea023100dd35125d3a9b85d2feca82fb1b47eae1d00f5c161305aecb2a234fab4437302628037fe46fe4f0ff08f018677c88eac80302047c435bb50067306502301d966a248df46f153036f85aa9fedcc8c5f7b7b4fe9f8ab6e5c3b9090cb5c097c39040c9472d06bfee5a8040510992900231008fc2b75cd0b849a9122dce8c648907256278c42ad1c0ea3c1d82b9540607a56e81a617f0d2db5639223cb5002fa5559a0302047c435bb50066306402301ad525a8d221baa4a9bc814c58bc6b8856256b812e27dab24261880b7211698e9e738d9bc78f2c5c31820bac555ba2d5023028d0721ace48fe6b77f62702056d6cd77cc4f07c2fe045dab499238932f7e83c8c248df2a1ab41aa750a76dbc152517d0302047c435bb50067306502307ab550a35a93cc5f2797179a74d36c744bca470370c78091211f9b39ae8fc0a70b1b330698002bb6394257896d7281560231008206e9be7a3aea019e0bdb6258aacc0528162b64a96c08f96a0812a997a503b189cd85250b59005860485d44ee4ae2920302047c435bb5006830660231008a5f4b22c51c8594ce2ea055e2ac680dbf2e8b4df4bc3be5382d200a1cb3aef84581bac90c39982e131ca1429acd2542023100b2effdbac31f9b0e5ff37329571f580a2819976f1308cfd902983a9c06022ecca3b9028b5faac14810ca56df2a9450bb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300500bff4ad98e0175e08b72d1a2da2a04bb091810b3937370070ddd2a299e67a9d28913ceb83206b68213d4cb49b55140230098d7d7dc9e5a07f61c09beecc343b1948caff52a13acf74560704d5c2218ce534e505f1c570dc01fd2603826da303a60302047c435bb50067306502305c077cfcb4616af31c4163fc6516b0923642a53f1dcf666490feaeb85af31959c897211cdce792801ff1b9b8bb06e739023100da4f6ca1e6dd4e56ca96dcc3abdc30cd96cb77ca3508822d078815e4a032a88384833f40797c83db66364222522935c30302047c435bb500683066023100d85ee41b23605ad57444ce6435975b59d9dbe6ec8342d4d4d5ea039e1d9d6524cccda057eb1f6f9f5f7fa23fcedcf7a802310081c822fa6357f05a6da9739bb81cab7a060cf972e76a697e378b5fab711213c439361b95dd03994c1e5bd0ed79329e350302047c435bb50067306502305ded01a82b77e1a0476b11a3ca09e4bfcce0d0fbfb6cf20776027baba443b9bd935ab740b398c4dc75cbdf6eb8c2429c023100b0b53569c5efbe3f898da69044118dbc3e6f1a96550e51b417a05f989be243f2fd983907a6430b5751fb12b5950bd2c60302047c435bb50067306502305445fbc33f477a63e28a7090120db26aab0b43fdca0c9911d915cfe89c2b40e9e50efb4a7d7c772ca8c6c7ddb40e2f45023100ffdcc81ec245eb0480b2f8f56147dc9f321e70e395301d19c9f30d8a58c7d649e7a40e752bc67289bdbb2f023e1705080302047c435bb50067306502304d689fe8561ac403f41da0d9d19de069a63bab9822e283ddb3e16adfcfce2ce54da50585411ba10e56054ae6d2dc30fb023100a6dc468fb61339da292e9cfed760f49c7e97caaeb6c20d2f1a98fdfc4878e5871b4a3010ea3c59c764136695e0de04440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023007beb590474a4df6908e22c5e1dabd6934971251e5c4b6fbe98b78c44a45a9c63bf076882cd3967d9e9ba95a1b3a8e530230069efdede5877d069000840160b051c69cf87a086c63997e6d91a4d764dfb25330e9abbd01139b1f86e8ff24a3907ddb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d1482b3d83d9c8390d93ced75306b573d876418d19055a044647fea38a770bc45329ea887689c65f00e9bb8e36b07383023100f4d60ca625bd5f63a965f0f7e5f95ea04161a17b51412bcb8d7d74b65b860dbf351473c44411fbd5d3bc65a19472220d0302047c435bb50066306402302b757e3990e914c088c3ae5b389cc08bcf3cbc2c3090f4946bb5ecd0e36881b55a98d9be8942b81607ddadd92971e899023032eec7e50ea76653b2449e3011b5b855e65dda140539352b6bd98d266d02840472a7170384558eda6a6b8900b20e9d760302047c435bb50066306402303a0aa45fafe4f98d7d5838e8d506da76bd42815c9b36bcd734b20acff0ab8c28287f899dd18767cfadb096bfddeda5f702304c4aa9472dfd3fe8764a28f2af561db163b72328e903b0a3cad6e3162d1b1b2e3477ace3294a56634560ce40242e5dc10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b2d289b7f8b39d85d222025446edf2e1be82f44ed3cca0050ebc50bc1d66f3e873d3cec346f9084d451be7681dc314b802303dce9274df07ea2546d7c25a77036b0dd51ccce66431ddc835016d0f95a0a8adfa501ee9302a21c6cd3551f4d976b3b80302047c435bb5006730650230461e72407a825648461d71753bea87a195a4fa99a85862a6b6d41315a91d67f82239f919aed1a83219f9b8e9407ae372023100bdc98a0ff37a60b11dbd0141d2381e540545119abebfc74cf39a552296cea2e4ac6d17cc432b82ef29791976d517d36e0302047c435bb5006630640230226994f5d4e766bf64101cf2002887fba55f3c00bed24b0039402af7ca5f64d66395622406b5df5f8108eb8426f6e6d60230781b5d4a3d04c448a6baabf800ddd752719a7d1c21b5a9b5bef39a56f6af553fe696e4359916a859ee3043f34922bc050302047c435bb500673065023100d796f7fbe584a484c2c7055b49b54f3b8419445e734836746f0801663abc4f699018631a79d81af75c2ba7de853b05b30230412567764372625e4f03172a84735cf8b8ac567894a0c6c31120dede4fb9b8f8386cdc9c4865c62498fbd4c11f1a125e0302047c435bb50067306502307e9feafdf98d8bd42a230b52c97339ca9fb3c74cdda110a3107d38750f74b5e8d9df2485ad53e907d5dd5f004603ee60023100829f55984d051fb93b95e9dcede34642526947189181a394527690a3a806fe429a84542605866b4711b785d4c1fa96800302047c435bb5006730650230280d13658fdcd0ead213f6cd9a209a9efd6e9ea5350bf1d638cd534997254f644f1870c54e1d4ec5495aba220999a372023100f2d15511090aaf2ba38f42bd5c630a21b6780451760167c0218845abcb51b80cafb77d4c234e735140091ab56cefd8d60302047c435bb50066306402307ce4df06967028a3227a45ad907c422190ac3df2c37e2b8bbe997b8742614a5d3c9a5980b45b33ccefa15b2c82ae38690230532f25a6c7d40ce318e52a5b5ee172c22c13e95dcbc3569c896880c7e68617f0528d3000997800b996999fdd887752360302047c435bb500683066023100836c833ac1bc54f6c605d555a70a3a58dcb31070d043e9d445a984fd2236237c8a5a5f53634dbb44b376cf42c425d94a023100ef6103d5e92936d2dc759bec0329fe5dc3f296c55216925e2f489141cb517a05991fad74ab6a4688c6dd98fe856c6e3f0302047c435bb500673065023100d4b26e30be384b770d878fa82b92461cef609aee6a8168442371353044a5051afbfb044bff55209be3389d9ea942ef5502302e79ff45ead5fe99b90cecd62f6f26b8985278026e5c6eaf1494afaee2e786046abda5f4cb56ccc9e9e3ba2e68df03de0302047c435bb50066306402306f6db8795bc0456720def22294c89c5848c48cf4fec7326255cfffe7d991d2b597b2b146f0e9ae53e5cd24a1804619710230342bfc3972194993ceb8a181784be25e9135a1e8c175d3f62666dabdb24c533f2f08228bb1d2a3f164e1b03df38b49220302047c435bb5006730650230408e40f2f324b98a233a8fdad47ddccad033ff12786416442bad7879b938d2ae77a4db828b6c1f89684978368fc84caa023100b62c5940f7c62459a1f5e4b5051d49e511684d15e497fe396629bc76cbc06ebf5dfafb9f20fe61a7994e10942f1c42f20302047c435bb500673065023100d8ee2f423b14409b4fededc10b08b7459ed47c570b21e1ad170b380cbd6a80153c9fe3eb808076808345c41c2ac8042702304608c5b61417ab1cbe4e1673948af81fbc83ca5b07387a2abe0e54d37d4b76be3d4c92b446feb53dcaa24d38560056ed0302047c435bb5006830660231009b7a7e03e2fdca866b2a8ee813a6cb6490dfd3da9e81fa85f148bd5d18cbc1f7f3acf699a9988dfc939e57bd52cc36fe023100a006f75189433e5ade53e19ebf19b00819dde8fa66907b5565af3caf4e4bb4ed52fffa91171324b20a0ec670fd6f94f90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f11942a2dc97b34a69a7ee64bca4d860466c21669d1cf9990b0ef4a339a023591b1f4c660959f9e4540967555d61cd1f023100b0a144ebcf9c0ac8db2d4277699887e503d2ce5f20636e77eb5fc9e17c1d8ed095f7b29ed165cad14ef420fcc1b06e610302047c435bb500673065023037d24b1a2c2ddda6c4539a9195ba3fd7977b274bf3c36922abfe103ee52aa5a62c3feb9fbf638b591a5259a3775139a5023100efdf49a1b6ca5037461a68b2f101c6860d1f8a571d120d3ad2cbfb6834514c16b476bcaafec761670f796918e8422af50302047c435bb500683066023100b9bfda5afe588842898bddb9e52305aaae12ef91800486de1b8dfa9566e98cc01f7d9946c89966b43a4c8862ec7f7b45023100c6cdc71762b551a2c7587c59e91a798d6aa35dc8b3ddbd7343f150accd0b3b11b3ab47ac1b69cce0d22c90e158e4904f0302047c435bb500683066023100fe8c9c673400f112f36a9c70e157dbc7721b0c286368c14c867802058315cafc51d5dfd2618761fc231853bd2673d374023100eaba7f182139c3542b7aff36442ccf779052fe4f19abd49761b43944c805603ca25872dbb61f6130949f104a2b7fa19e0302047c435bb500683066023100b742999704c8c4b827a959ae1675a5896fdfee871e36c2750bfb7753ee68ae85cda4759a59017876fba9ccc02868f229023100a05b94bcb1f5a8d7215150576ae6ae894cb1b43d552c1dd22f3e90c446078fb1ccf5edf5185cf1848fdc2051525c72980302047c435bb50066306402300bf65f8c0ec22571fee3fefb855f40e57a105573dbd8d200a8f50282a74a784185f5e82d7762b2bea397a8c2cbff454602305bbca6f561502ef0fab9d82d2082d4aa649a9eb1a4372245575aa3015ed318e14bb85da910d3121449d76bbcaa67f2160302047c435bb5006730650231009e836d6a1e090a3b7881de53f930bf0401e1f09f5d1541febfeb09ba9ce01107942621495d4d4818f68ef789d8db572c023056f19750bb9f23e6a0b4558788ed4e2c807f9c73a97e3bf3e0f90eb85f1432a55598cf31fd3cb22fa2a19349d47fd1a30302047c435bb500683066023100a626f2c31842b8048deee5f3520b4e8f4d02f9f9b3c1bf1437be070ee1661511a56614878606196e3b802764ec05d87d023100a768b6ec406badd50310f23424920b0830543b8065b3ac27a9eabff7f9717efe78692183de9d1158edd9671f1d2b10710302047c435bb500683066023100ddb96a7cc710509a6012291a392225c9393ee4093d970236e68e7dd6ee818a20afa652ddfbecb5b73888ea29dc323263023100b235e87d117ecd7086700f6391839dc66be345f6031de87a565e326b366aca649939d2168630fb590abbe65e6d7044d30302047c435bb500653063022f1b00b479afc7dd452ad51ef29b97bebc96902a0781833fb6c98415b299ee0c831b025bbe86e36f5ee20e82aeacc05402304a7e67aafa0e4fb6ce28fd215d36ea58c8396861b6d973ab66cd92a5ddc27bc6bd24a5588e31b8d2c9a4d5f03b1df9e40302047c435bb5006830660231009f2ab603804bd88b8c55b22dbca0d2eb96773896b215fd77e67732cbef1bcd192ad1a08e486eb9187281e3c93f5d3a46023100cda09051f376ee5f7c601a0e88f9e38101b35e98ddd5897d83e848b9f6b851af88b47c3113871885b85cbf5f8d7ce4040302047c435bb50066306402301252650e1703987195aae3249d10bb3caefb32915b1aaa29b160d8073d2e47b0a2cc2798a1e0b23aa435b66ae5e5d2ce02301cfba35fcdfa14a7702bb2d1271a5fe89dcc6eabc6e6d17ecec20b54248cea661e5a1839e5ac1da9b2a5a4cc0f924ff00302047c435bb500683066023100a04cf88544185b6fca82594918f66f7acac93766fb8651f05731a0effee73b199508d761d6d501a4292b497cb1cb4cd6023100f7dba181013892fc98d4d40f762c60d2cacd1fe261c3e3b235a62f16165c20fe62fad43bed17e55a604a8374989042ea0302047c435bb500663064023070aa89c86bb9e4782c29a5a9b01a1b5018b917b8b32539fb2f7ed2501a960cf335c215a05c172806686eb990e61505a302305dc0c039a518a499380b8134ad8bb1ff2a02b314a1119aed7b637c52e6d883be8fb6ef5f0288062345857d69e0c88f480302047c435bb50067306502303885ddcbae4232df96ceb10e67845fa8d8dd8a6ec3db1e8924292460bd36f21015979ce579ddf751ae0265993a22899c0231009d9148b3a0396b95768a274f445a349e0fe8933cc7d02c36c6e9275a4ffb24d463b270148a2d2adb736a09885c6e6e290302047c435bb500673065023100d232722d03a212911b3c943bcb0b8275de8d3e2ef8b3c8a320d5a1fdd31b45253c6c1e89fc5a25be8a591b72209eacfa023009da861b2a9f987e4b39d1e838ed525ce775cc6b3200bc332f8d6becfe785c068d54cb50fe319d7f143363d23b6df2360302047c435bb5006630640230780cb78f3aa01254f5c5d5b6308a2fa2603fc6018ed523f095485024e56ac07c972366687c9ab2d74c68703ded7f366a023002442a2580b10a61e1a57b809e3204c3188ba5928d32713b6409322ac836fadc7cf7ede557cef5faf7e2f8dd73d68fda0302047c435bb500673065023062395f709c5ac73940807fa7c52c2312d427b66bab5b8ebafdd1f6c68a5628fa98332cbc1917aab58cd0d7e5fb01e1a2023100e07593579f4ab147af8b7aba107aa90c22d30aa300c29e31542ba2f8d83149acc17bd19b8afa0bb3cd51fdb59a59e4fa0302047c435bb500663064023037028b5330c788a7d2321caf7d8047465f650b53a8f836956dd7f6add1f2923a022c357c0e9d2ea13d55caa9333d679802305b58f8c3ee986d04b3539ca24a67196379361c3aad3eac45909a44e81294132f818c71965c442bbbbb83da507161d08d0302047c435bb500673065023100ebda0090a601725226d3ed8c0cd727b60791ff059fb382740b4d063ba54858c7405b0c952d847cd8db3b05c4e6952a1302305fb8cabf50dadf5ae6ff9cc08fcd4c7e3b05603111909bb95dca6217c297da036fb4019f2622327b43beb8ad35c20f1b0302047c435bb50066306402305cb308fb01f6d3edefb3b5cf818c126fe76fac1c618657b8558a55800e44190720eadc434a33113dd288dfa2744ead9402307e97827f8cde9f4e5926919c019105cf49c3adfba244079a062b99a564bd48a4c8de30961f288b431f6875c8645832a10302047c435bb50066306402306a5046d088c7856f04db4a1c43d787a6be5c7c81a42d1ec260764ddb17fc88f87639a624ec90cff4c1eba884e0b7c45d0230783b3b6eaa74b7fb3dd54061b06db0393a01b7b7b82f3319223d52c2569579eb64713c8bbb78ae7e4193eb26cffae1430302047c435bb5006730650231009b208e41b968dcc7fcf923e751e59bfe6b5252b6b60c40b0ef00860dfb82adde735df9feb5e2406d69d88c4bff02b039023015cd16143f4188024baf6bb54db70ffc78274f1a2afb45259868118ecad8b8277c4b4f118462ddf1a9b1639a2417bd470302047c435bb500673065023100d99421183d0f047722e25f39c2536d0a7285710469ad514a2009f700075f35108b1d829834ea71a75d55752afd2c31e402307c3f5182c6c47a3e6cd87c00f7c3e134658e31ab2661ff3657e02009cb50ed5d65f203ae14fa81b7f3bdacc8335efba60302047c435bb500663064023015e1a822e9097716e9bdbd70b12759734513915fdf42fbaa8e7677e73aea7c277e56ce0f2654d2a3691e12f710f37c7c02300f4d2d79b19cc638cfae1a961615b3a8b7a76da9dee9c63b1d4ac4c33f9c6fc3f5e40be482fcea99ed1c7086409e62400302047c435bb50067306502302874f996663d66214901f4a4740f17ef050058201cba6bc160febdbbd51fa234446a3f635389a2904652540b533f6687023100ad4738f4dae78f5ae8de1c96ad6a0da1b2b3dc5887edb284aa39998d9ae9b7c16c9f4d199f12cefa5680c8ac9b947ae20302047c435bb500663064023050192792853a05a44db384826807086defa8c7278d048e1afdc09908f7280dac3af5cb48ca407cb3a5610f0883b41a5c02305a20f65e91d945043f04aab32495e7ea25b2f8740f419bd83afa3a3bce58852da98476173c54eb6bbfa9208e74229ff10302047c435bb50066306402303f6d65b0f17a74dba7d2204350dbf3492e0da2b9001dd02447b2803791ac777325bd10ff3ddc0088211b7a35b00c1ad6023034ca119c42a83aa71cba95102a4e7eb0cf67af23ce8c8e124a6ca0812a5cae69e78a9297034f76cb36f3dbcdfa8d55880302047c435bb500673065023024dab186de978541c6e9520e6108d34d54f6157190e2a57ae076c5d32db1189aea0880a3f087d40b7aec03c44eca06f70231009a5f6747843a5b31be260e2d00d07abbd445424c4e333c0e86d108bab6fb87abb1e11049fd13f29bf8ce5d3d54321e840302047c435bb500673065023060c34bed6dfb94739c6531d00b0905a2921e95f5d583cd0a568498d4fac9fb74d632cd05860bc8af8ab1ab426e474a78023100df4d678156a989be2dbf5918dc34f58e0cf667613fa0d3a72d4a8ce675b5201823f68643c07cc92aa7b018c87a5c6b1f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009bd045c0a4ae9e9ea22864f9ca92a21ecb1910306927cd11f863c2478c1339ed4ba27ddedb758f554bc944b48b69f180023100f15c394efb3f4ced74557b0b34684cfa729e3da7d5194442f1840186884e763c0819ddb85194bf58618b0af2683a6be10302047c435bb500673065023100f1fd149c41a53d7dc541d430b7aae0c65518351b7b88a417200597861c0886dbd7567a62987535f61284dbcb4b68991a023070e612e938a4a835b52740051cfae6f1616b1a790fc277fbf1830ca11e83c6be69355507865a55e4214b55f6e4639d9e0302047c435bb500673065023100b5ab7292a43f622d498f822250c827eeddc7f0cd29c9cefd2163a73ceb5206ed2df3df3ab4c08419457cfd30e134ab3c02301d3673dbf02d9844c7b7a397498f1470c8edda4fb81bd0b4625bae1ff60a5edf38807b56d88e405e14d35016b8eb424b0302047c435bb500683066023100eec71afb61ec0022ef3d07da795af2860af8b6b5dc80134ba9d8093bf12a8cb1dcfc9e89ce4b6453cacfc9e1b6cf4a0e023100e698a5b93862bc15eb6bc244bc9755e11b7e222d0811193823ec63a95de56a792279822dfb0a0c4dcf1593dd4cc4ea2e0302047c435bb50066306402302598771b15d12c772baf0d52228de509d7d5da15d4d155693392d816c7874cec3d70821e19730ad0dad5a869a0bcd160023011e304a2fb964ab0dfe5f661335fd2577b714afd481de54124a3916f2554269cba49e05697152f391150ac38463c58980302047c435bb50066306402304f657fb0e30fd49edc8e83a117479b7b46f91dc86ca46c67036671ab77874fdf313cc1eca01d12edc56df2d9de7d9a000230183ea077c6cf93ecd32a8ea230bf881a1d66db8e68c0684d594f553bc4641a8069a5ce1c20f3e6f25eeda2e05e50b2660302047c435bb50067306502307ea65786e89b0f60125c28d21847f5d9b00da15d870af09ae784a7618e809131ac1b799336806bcff6386b74a75d3c8a023100b1cb92c44d351ed8ee4638ca854709c8f4bb75e02e54c6b9fbc95e35151100bce4ce048f2398a141e26d395b3ed59bf70302047c435bb50067306502307ab33cec5f3c7f0a97c9270c5d9adad1809793a2e6f9f5792eccf5770a153ce89ba741755634214bb8651961f2ecc5bb023100f1ea3f8ff7b130911be7612f7a8c159febe703c28e74526736add4908351a86c3d2072a6c93efcaf54cd75b6d6aa80760302047c435bb500663064023020cbddb9810052bf486686b98598735fb6655bb762a89e596291dd2e1d5170d2063c23d3e264f27db25fdfb8f0f06980023015c8c2974708c1eeb49780572141887153288c04c1a0f6cefe613422553afdca986c3580d36c70466f957565fd7a61f60302047c435bb500663064023053fa2395d376866c0115c729b3e5511e002150a6f6d81e01ea1ae0aafeeaac891f45fd56790f9992de27ac9773c11e7f0230186f9ca8f2f4686da70aebafce1f4bf625cda70f2c60e0f7640844a395d848e3ab92bacfd2c5cdd5d9cbc1bffeebe7e10302047c435bb50067306502302aee15a4c06ba87e8527ab1b461f63fe8bb193ad97b0974abe04257b7f70f064fcabcab3b2ec146005e4c442a7358cd6023100dfe284a7d9566458864130b0f8bd2370befcbc36938ca6a921e9f120feaa913487a5b17a525b5686e4faae72775542500302047c435bb500683066023100846aa0a03b8490a0b930adb342f0b37778f71844bb9b6f26e4725557c20561dc64f6554fc1026542cf455407124e24cb023100c76e32a06b6df4f86f4f49a061d727767251ae1590395527235e5548e5ae8cc3ad225ae0261f6561a39d0193448a643d0302047c435bb500683066023100afdf6136f33f01465817444ba46a3fc17430fe78ba84a03df46f0464eb0f72a9ca7e264f4c5b12c478edb2895f44fc3a023100eb367982e0c0c29c7bc92e187d6704f29b6100131bc6211b27becccf1c574c57607d66250c8b00d60dd7e66d9dfd276e0302047c435bb50068306602310090abec9ddf0a01aeefc584c211a27aecc649bd6abdcb942200acb251a95d4cd2fdfcdda90c344a5bffe673bdf802299e023100ab113b63fbc2ffaa718a41c6f529a30baa377b184a8e1ebf4ed9406bfb11f3c2c6ab9d10f05315f87f5069bc38cfab760302047c435bb500673065023100a0854d0bc27b2abb2a0aea4962d3bd7919620291625e73e1e8795327ddb9af38d4ef571771c3749a9a94dc8361e2256a023049d14750fdd25d4d48f3334614b1b3f93f95919a4cff59a292a68c14d5697330ee68293dab9d3c4ecb05b2cb0b790e850302047c435bb500663064023024d2ca0da50419a36cee3e006c810fb8d6d6145691c7ad307c26e572bbee191f17eb29c43e438a44bc2aec0775502d2402304c04c13305f917c2c13e7962a801131e56a07da89765d1f4111f55966b7f42906d47c276b584580985496dcfd6aa174d0302047c435bb50067306502305fe52c148d5ae1d01440d09df834acb8c6e2bb3ee0d2ba697419a0499e864f34cd9ae4e426ed3317cf4052ede370c5210231009fe60024234a7603055728592148ef0f1e4efe3ba186df92a7732aa424fe8d51639fbbcf15eb2474a7aea4ed1f4ba75b0302047c435bb500673065023100c41d9ba0493c532fab6e056665a02aa62d4518524ebf319bf2cdfb20f7dd861f3b319bbe20b3fc59e47cf08975c5762002307af6cf1a82525c68634508ab757836d97749dd0ec1e1536375d7e1ca8c0c5fdffe548c7491c76f4ae48a64362a152f4b0302047c435bb50066306402306deb5edf578f40d4bc4f566767774e4a1780b86e625c235450aceaf5c27267d754d35b33186bcb708c3d9cc6d79ea44c0230253115af0488789400e41e0464510fc67f585213e1f837d735e50356b11d0cd9968a1aed00f49f9c58918d73b807f0d90302047c435bb500673065023100b0d734f6bc8033adf6aef4bae5c4600d0f28eb5c750e89348d790fe58e16aeed19de5bea31f2b0f2f477a5431e1d5c1b0230613a36b1152631b3e3529f44ce7a6dea27a9a001673d61f1a61ed616076aeeb3460cdffaf8a608fc983d12da6db740cd0302047c435bb500683066023100d817a6c1cec8ee4d0d52d4ca1e8f1fa8469f4c15dddbe7275d8526fda946a24124b141254603cab4c5ee07adb810b696023100b7fa74d780fb934ec0459ded67b7899a11e6c806d347ac5ffce9066b04138a98022bc8adf9109fc7f7a090dead89d4b10302047c435bb500673065023100e700aab8bea25ec34df7c79a0b3cd1d98f4d69790b68bd4968185115b2563575472f05bb68e54b85b4be70cf5902f854023052cfa91b095db6943255a24de82f3a7c2b11b44163f6c1bd1fb648bca1c7bf086c6520ef7ffc13bd39da8f0aa4b10e470302047c435bb50066306402307597df71585bacfd65265e865f8f8e0f66857c621de90a5d822f2b2f47a97af94d0fd8da84c529ae6caa4b23b2d749b302302b125dcd3073a8efbf7b1de6fd4e0af2b49853feca8e3e923f89c8959f0ceabdaa62d2c5e1f1385a44cc2db31d2f9c970302047c435bb5006730650231008ff2fa8d8a57c0952770e523fa342fe739b2774f719967cd5eafe9c1efa4fcc072b0c2143acc72b4e77223c818f5bf6c023021ffe4eb59ff2417d0222f47e8eaf6c6e563cf76c90088694babc9876899cdf63800d398c09d09843b91919bd8cac7350302047c435bb50067306502302be32425c202a4802fdbca1b030bb76008ef5b6797259775a134c308f8557ecc6d3268ea9f6ac0338ff50a2b8cae4b37023100e75f69b2c4f6a09ee4a9af77e6c66b8dbe8698cd40e031eb9b11fa1e4277a303e8ff28dcdb8fc458ea5d10a47534534a0302047c435bb500683066023100d9c2e4dc67448acb1241aac103f01180b7216e0f975c5c781fe5cb836f05c2f7762cb99308e8b93f862ca9a91759ede4023100a7ba2147708b205ac69322e3670e15f64f9f2f30bb78dac1c945f5bbe7993322f2f1c64aaec7092fe7b344ec9bc5a2dd0302047c435bb50066306402305160f3693b98fa91226a66feb7a26bd105a16351209e47fcea6d8576d08c68c4cd18d36c3a7b66581ed187736fa833e2023056e1fee657a737d9ee2bcd5b2a0cd0085175afe7ed0c30185eb40177d3847f35933edf1a02a7568c83b00a48921826240302047c435bb500683066023100fc5935e3a5276a444e7328cf88118ae18b346a62fa3c0d2ac6bb13569f4d3ff58bcbccaac3e819b3bcfa9fed50d69bb1023100c1696d992329e32b9c61b63e3426921ec4b96729d168dcee40d8289339355e7a2e7b2fbd06e71a13333a9c9fee9cf8830302047c435bb5006730650230247ec0bae470e8d16a2895ae4a02d8e374dbca7d0f216f3fa56e517ffd4ef48690f414181f1936c9cfe33e8fdb597ee5023100ee552324d4f10b91707b38ebab1eee39a3bc691a99e0dd18e20b93d7c60afc21c7ace03e4439dd4815bb5e77506034830302047c435bb5006630640230588339ef864d1138ef6c36d8186ce9cd05771fe6ce77f914c4f3cf4f6c274bed924bed1dd8073578e1fb6a07d0d16d6d023035b4a23fb388ff0f36f72817c8d57a6ebb062682e437adc460669edcd20378dde558ae60f1e70e77c7e825e85b6aff6b0302047c435bb500663064023035ea08cad31b15114de1a07e9f314eff6531b326eb8f11d6c673e0e029bcc4ec16de97ba419a01b6d4e6fb12fafc5a24023064422ff765126d85150d5716d27af4b7963bc37796fdbe9fd57a2c4d00eb10b190bfed34bc18dc030d70f6d5e6fd8abf0302047c435bb500673065023055e237c813c8fd04ff86db95ff6d6b4dd99075f754fb47e78c95d5a2ea386b1114ed0fdf6d702031a1e61d04568fb5fd023100c708865b28c968c47f63b4594f1f8982f901b0d19e7bf18e4f7bb842f5b1e429d80a96c67436ad80bca832e3125b74b70302047c435bb5006630640230695f0d2c8735656809a582a134b8405149c840ab3ca6db9e0fcdbec72d047560f33209f6e65e33c85968b183641e81c802303fa3a20462d5fdf42b041824ad0bfe4daeac2847d45ed9de39edb1dda80d850f15f37d36623bcd34272fdadc29f879c90302047c435bb50067306502304dcb6044f559338f82c3c1277cb687154f38003e1b3d29f027164bcb2215fd699d39cb078e5e2b9f57e04dfba9579f9e023100e71ecb840e507f2dc87d3939b4496999bbb859ddf637aaf121616d99e70738767d3235bb0092fc7d6c2fd7d6bee75c320302047c435bb500663064023062550a4ecdce577f622e01bce1f04c639cb7b203e012cd624aed617a5e592e6cd6ecd540d1ec8140765f361fde37add9023040838edebf6bb6b812ac1409e37fa6372f8be2d25ce6df2e71cef71e575de265292a922cb1c2913c2104b976f58652870302047c435bb50066306402305144343f4e1bc008dcda443d811b829955fb0f649fb290036756a6d98c552fe1d9cba46c0d67d4bd8b94777a74d511fa02302f8f11e7ff201865857aefaadf9526f6348259f4e5f104606b6f1533c257942b84ae73dbe4443f93962a61d21265e2090302047c435bb50067306502306c390eeea5723606d666197a145a73a28a0c571072ba90d19cb7cc112cac6bbd1008377d85f7f52edb8c7e2345ccf0ca0231009e9b09acb15aac97bd0e7d6eac0c2c2d30ab6e7b2728898fad61a28cc9e1a8925a7e5019375a97b82d5450bbc552e45e0302047c435bb500683066023100feb9890db24156b9c89e3382307d8fa5777f4a554463e98cb799f604d1d98b1bc27e3e8440dadb4d94867b48ac5cf954023100b98e3049241acebfade711726896a0f7d06cf217d6947c2da7cd45477b77c07d7df05dc841978f0ad162de97fd116eea0302047c435bb500673065023100b74131105c60abcd2c281e9300c8144b2e31a518a571219e958ef8596740c9d06e0be147fb5423b4cacb5f77f336c15402306d92080c0154c3ed5a84318f1878343ed0ace9ea6c5f10ccaabfcc4cf42df2bfb757028a45ac71c8810075a3ee76012d0302047c435bb500663064023028aaaaa4189a1adcdd00baa80fcc3d2cf71a759f4dc20621e3a2e9571c0b3de4fafab9d6bac660c7f6b7cc2b17f410180230124d8caae5472b95a280357403cae2855f116c8873495feef590b3f0d7f91800b1e55fe446716719edfc3f5d4a5eb47a0302047c435bb500683066023100f2f7423469bba61d974d82fdd478bad50a3c77c55b98b46801a102a7e50fa64d3a27675343185045ad47cfcd8bde2e2d023100a92c5bab39f8e177bd91035cf200fcc805d6b5fb19424d38a10d44b467e782d800544a942848cf8c996fb568f7366cdf0302047c435bb500683066023100a7099a90bbba53fcf1d2124f3eb92b1059c59bdad8c6778fac282a8d2051d37f187885a7ee2334470f394339aa58dd27023100ad1a6d665269b940dca3b9059ac585040cd25e89a158b3b94e206f585e1fc58db179bd4a4daa5ecc842416074391b9000302047c435bb500683066023100d90c5c4f1a0c78875c1800315b1f1f5346499a5a7876b0ed94577cf56ed4bf66190081060d56869d61e9e800e4d25f85023100c5645b95eb53e58857576c0f7b3e06f548c5d12cdb35bdf0d725e99fa088521e4433284ead488e9226ea6b77d1b94a020302047c435bb5006730650230197e5c7d96bbf9423294d45c718765d6c0f5c2f205cfbcef7e22cf10399f255bbcf3d0b76d68fa284d409207ad201b73023100c9a8e0df4f561b3dc4425a4ffb6f020dc2392f8203e8b2a05cdd6e5df3edf5f09df00dca9a09c2e0e3308ff3c1f268510302047c435bb50066306402307febf459439552cac88bb27d50577f31f2e0c59674a832de4c6bb66edb6e37570a2f7434997c6260d0bc26fdfba33b9902305add65e41716378320fced52e2733f89ae1abfef7b822a11733100c6598cf4a2a955a53936c0ae2fb8e7fc217aa368e60302047c435bb5006730650231008a646916b403ae4e995ce854e6975db7add5852ff8739bece4fbec5ef4021f7d50b060e7b19bca3b123e8bbc5f0735b00230437113f031c95510039e776969cc4451b4ea55d93cf55ceaefd917e1140ad8f8bf0eb5b4937a19c6428339360a9826f40302047c435bb50066306402307829712b672c1bcb9282a2c4ecb377a0cbba3e6af9136a25027a87384ea8690bcf1002b399726a5ba80a788d7b44d6b6023004e4606cccdcdee5db6f250bb1884357618579caca47586d1b3b0c5072289601362a5ae8242e29731b7072e9bf3141d00302047c435bb500673065023100d036aa0ba584a7000ea94a2140c18871a60ffef34d11a227e67f4ef1e60928ea7d6b0d92ecf106112abec72e550020fa023015cedf7d103dfbd62787f5e942352769cbf51aba4649d8e6f5eea6ed1daee558ddf663e055f5f112571cf152c16ae7a60302047c435bb50066306402304ddb6fb2761da9bca9e457551ef3d3b9d376f642e28271ed8e27582d484b6dbb178a96b15140e16f57580c81891e46e1023075903b92d4c5d4d9eb1c4dc5b0b6a3334bbd79d8010c0f246500bb653f49483d76bf0bce09dbf77461a6d51d53b1902d0302047c435bb5006730650231008433dc898fd732c8871f6aa14ff8f0bc1accfabce1c7884d436422b8b06bc18a6d02e789f79727be2c483a2995181dcd02301f8e5adc3491240b9ebb3de2dc0ece7dd436dd95fba7cf96e6dd8b8d151709c67b7487b8ffecedae72f5aa912d3569c10302047c435bb50067306502307e3f90353c615ec30f8c3ccf0eaeb2907a4186687fdd411ef2ba89c3fc8bfafd73daeee55d093ae00d35aaaed34c23980231009f6894cf504624214e597d0ada99b8a3a77b504337c83ab9fe9ef3716d3ddeb0391137557c3b1e0fa60ac6136036b63f0302047c435bb500673065023100f99fba42f4812a2710bcca41b93d83fb8cbb21007a7229e83149d867f0d478a48cc09d3e68487a3637d77e2c6ec6f32602305a71ed23be4e65ed9e03b9519bf3998d4f56346d2b8d633b9ffaee6f57e08b4732de603d1e906c2b576d7036343c8bd20302047c435bb500663064023021a5db81e5fc13799ef4ef5253f1a5afd56fb9d2f2638717bed04689a581eeb192f3858016d42195cc0301495eedac2e02307e66cd5be47245f8789e1b074be4e734429b75d6b012f49781ccb0e9a7c940e6a0ff25064d0d53f15523907a04c005180302047c435bb50067306502302e08f4296985c5aa4081325af716e2bb614857cbd71f4871014d1a2fee1f9d080f48615218893dc05c8484e5ae04db0e023100a931d2e181c5b4688e4a155cb250001fafecb8c8f4d478389f94877e584aa082841b53c81cb8350d0f2ce6b9cf72a4560302047c435bb500673065023100b243fab6e3c84e276d3960d778245b0979d3408c9cac8ca3015324ec9c8f55fbd4cf3a76dc73bbbffdaabb2b63df65f802302378162b608313ab1a3b8a94320315da3783d9a70b98040d061b030e2908385d3a737b93ff93afa7b05f484f3da2c1a40302047c435bb500683066023100a322dbf98b310a2dd48ce592d05dfe04be4b4c8d32c3473b08b3368fef18b512547c5aecffddb90ce1fde59fe0de6a9b0231009786872b84587d7938a9d3028a111ba5cfa0068098f06ca3338e954fe9680e95ceb5d2ea618d59d0f2077faad1f867300302047c435bb500673065023100cc44dd64cd1f86dfe314568d940b782a50ddc7c2a5bfc52e046926e4f6bbe451296e091fdd2eeb2b373509c259af89c6023072d8656c253e1f65d25c94c7b9c08fd21a15206e91bbacb51d64ce2f522f36e84c0e766e289d5d5b37501c5beea70de80302047c435bb500673065023100ca4a7b2a158fc4d63c15811024c4090b1ff274bce0b9474058511232506022e62d939ba0ba220405eaab253d83d08e92023068cc06808d9375b7b24642532298f6ca9700243d7d76e52337a78cfb365db4361ecbd8be704140d5f38b0d58d12cec220302047c435bb50067306502302a55c1fdc8302832e0fbe6cb72965f421b1f5cef5a7d34b0080f1b72443cc53c7c05807c85162525d5884f7463957315023100b86acf2b75112fad369c89e1a2f9d65c630c64fa3f1021f8159d8353855625bd083bf98e8a1d26e3bba46688b0d946170302047c435bb500673065023028fa28fb4419e3a3b35f1e5c09f11222b9b062d4a88407831214b1ddd04b737570a7ba7a172bbd0fae15e4472bd98d10023100f0f8909aa3c1705055f3192f349dc5a26e9b42d7e65092982e865ab4b727b2ad5264bebc85dc43f2c9b4a1f1643212190302047c435bb5006730650230593de89668faa51a94ec249f80cbb77d139ca861c711e59cc2940ca2a3ba7b0f7189d8036a5501b1e779f8184550976e023100aeba66e1519344c1e5f14fc1a1383014270aad7c6bfe25e23c9dd15f3f73ccb45a0981d3b7e03095aea9f7d68d4ccda90302047c435bb500663064023075f549e15ba675727e63774e044a0f0d65fd6258254b8c6a27fc5ddfe13c0e43b6d7d95d330a9eb1d130412ea28be55a02303d92ede06d1c3b1284ec314504c7cf880bfe8d7a71dd2309fa8e8488a494c00583e2c95d07af6037dd9c32c35863c4660302047c435bb5006630640230547935175f1a811894c931acc274a1a4d0682ff69f9de9025b4f1de6ca3df2d36d8723adfbc941186a5b0bd1fac562ad02305db96b421a3ef5541776f6b7d12a6b3a66e1c9818fdb7b642bceec843cde75278f48a287ad3059ac4c7f0b54744b347c0302047c435bb50066306402303d04c3715de57f5e06455f6bf5d4f97612d86da12a03b19c4afe79a008d9634745b0a5687e88df246c8f4dc3f57ce4f202305f3caaea3589dd1ee4d4527e243b50ac25af1200635d3f613d451b328f9280a18bb56d3332aac87f6b9b15e73c1c0cbc0302047c435bb50066306402307c56c8339847a54789dd4a2b4f804ee55b805247a24696114eee58b311aa3229448d548b5bba2d175972547f30fbefc0023008d22e29644cdb514d51ec059e481454fb948c24fb165363e265590aa8058b466e8c48523060ec18d0a1ed2e051738180302047c435bb500683066023100842109c9ce2d010da245a81fdbf75051f1a30e3ef103bf0b81e13c66194a3f27c8e86d9166071f49da098d90f4004281023100be5d0d7feea6b0cbe6a8be5789ca2d64421463ad80d431e9e6a5546b39dabd073a65d66b46b3332eeef14e215185638e0302047c435bb500673065023100bce311ceac674a50280eaf165ede2b9f0d83e419e26a14e38e1f3da99959207de8435e097a8e9751c5b1e5fcaacd3aa80230617c8062f14a8d990447c7001a6555d0a2b4aa9df4e84d17964bc915803c01ca5c8302be44910ea78ed16dc533a066510302047c435bb50067306502305d8eb0d090b5e7463bba8ebf7bbbf5103e87a8e3f9ae94ed5f781399e7fa9b6c55f3aa375969c61860027edaad338ffa02310098c1adab2250ebe514be9efdc40fef9859e35cf999dc308dff4d1bfa228d34e533162b7ea1bacf269041dcdc45e7d08d0302047c435bb5006630640230782eb0f9787ab0c794f2c7848ee3f5c7c2d7601fb5e8112aef5dee5b601acf553efa45965f8cd70d252a245c51c5da240230156ca50884e09684643715c35634831cdaf5ca353c952b362c566e9974ab4592d97d4304b41c7f552d00f10f4c815ab30302047c435bb500663064023075bc757dbc535421fa2c08930448804db41aac8ca07fed903e93510869faa995c171deb81ed7dbe293ef245cf480283a023055484e82e8cb736fcf7354b72e7614522fe9b7bc1b513007276d5df7bc2ce342ebb2ec99815b0c5c7157686bbd39f58d0302047c435bb500673065023100bd44ca0e148e1f5a9ecb90196c5ef5c9b245b2dcc57c9a1abcb325cd5387d5f9910d55d86a58c53d181e499c0e43085e0230155ac80e9bc1c72fd05ce8836eb9d8ea2507f88c8bd7cb3f0325fd14903c152ed5225cb8001ac5284e6d9cb8925ba7f80302047c435bb50066306402306b59f9f73ffe4ec3d7c9a0ce1b7a47a78dd0ca2ba27522f802848bca9d81a668fee7fb1234cd153d88786ce9b99d3a2f0230542d7f897ae3a55e2b9496a67c86b864064b1848f7925d81cb8dff34b8e21f73f48962c86506573a56522377ff0d580e0302047c435bb50066306402301e61b7225c4beb2e38987b1a01bf98e846cec34fa0b119a45180467ed086695cd70b1bdd184cbdf75ab5986a058bb6da02302be75bbb377d08b3784e1e06118e2ab63a29c044bfa1f0be6580979b065315428eb4bf274c26d46778536d616bcc699c0302047c435bb50067306502306ccc979f3160847f94b79f7962d1a155dbdd36f51a72328e79097fa48d10289d7eba87c29a6fbce7269aa24aeaa21fbb023100f70650b40c93d566655514a6cbc9a5b00b9b11deb28f35a2197b1539948f21b81cbb2f611dde6320ec24501e1cda31e00302047c435bb50066306402305e83ff8598650872c6851fbcdbf03ea43ba60a28824d5d7f9a4132aa440896ea9971b0316776cb43313316580ebee974023044bebec896109ec8ce51389c30acde2c7a407840f755ace7d8860c81131324df666a58388ccad575dec3707e62b10a290302047c435bb500673065023100b08a8a1b4d2ae3bd853721406bcb41ad7994f0c4165a536a77497a3b4c66641d6b6db102984bca5c14beee9a26991e8202300376b4cf8837182b0a71840c4394082fd96cae276f1a182674272705c140697ab5a05b4d8ca65764cc33191b015410fb0302047c435bb500683066023100b1fa34bb625a37b17b0b673c89666615344fcf9d27864b00ab56f74bc00dca2c0d68ae9e7fad55d9629afb08eadcef6c023100810e7f05b47a39f8e62ca0513ce739869eca94482733352f64206bd3c21d3557c840ca14d6f20f3b7c3559f8177043c90302047c435bb50066306402303cf5e143d5d9a99b3f8f215ecf60f822c0f7e4627ab959a0577d95dd802ded5b669cbfb32a27786f8301b55d21120e0b02301d90294902908383cfb93067c3ff9bbf1b5c7954c3e7d9a60dbeccdc0eb912fffed6574b09b6a9c1df2b63924f64f91d0302047c435bb500663064023075963a32d2037aee5ac52e0bfb796393753d950bb5475e9dae5a96d7c8a76160f93b7b7145fa589267e982ae8027a65902304971659f2dd318cf87879536486980bdb9186ac9911339c0f9aff9dfde3a1862d2e8a960253f1e63fa1e29765ffcd2e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305c9ddd8635f9bf4c00455df56e03d380e471852de79cb7cb3098e7da91ca8a571df492a57eb8b87fe21280377794b847023000c30c8b9b89218f0e009a4d88b4c77b9150c28616d0a02db332254e2105573613f4ba07f6440394fcd4a78dc35e53180302047c435bb50068306602310093d0dee7cc98a4a1527734d6195b6596e1e58eaf30557d7b9532087523e9b16df58bf2dbc6c2e7f745cf492245a775970231009debb814adfe601dfff02b6d74e44ecec17613a78deacde679867d3fd542b3b08816b25e00d252380bd93710d5e8735e0302047c435bb5006730650230016a6ecb2d5dc949f109bce2d26f8769d4eb6ff370e3ea93e20e8bda847488a8582c631d7e0a64f211aca6d68758e50c0231009add3531b19d22054ddd739f22b872026214de6461afb6984da754e723871d3176bf7fb1d86f8d68d38c3e37b3fc37670302047c435bb500683066023100eadf0db3d6b0f68b3099bc8c6f0b705cf4a5f0a8da72eb23fb8548c8305f879ddf3c96521fe05e055bfbc07acb295891023100bb75d4d923011d8cb303f749c153cd975736737c484f1b83631d55149d6785489f73343dc924bb43c6c9832241a2cc820302047c435bb50066306402304271a4d9bcdd227e236fa8ba6d5f889779dc1cd3062965f7ad91751909d4dc8c31cc1f4b748b43af6599abe5992f30aa023063e2404c95a8d7e31c3ad0781fb99d2830ae64b11e006199a90c1aca97ec6ab0542dfbb956bd8a84e3dc03e05e47ea560302047c435bb5006730650231008af8897fb2eea14b46243c4b3773ae7028b965b695f76412b49e1a1361be5cc0a77c86011c185a27a1a1921ba1f27ff302305132da5d5d25605be4c54280d655d752f279709c102fd4c0a5b6052ffb8f3b74308551ff73b85f53b2c52880913f62a50302047c435bb5006630640230175c51a156c36b244b74c6434db81431795ff1036e06e91bf688b851a96bf3cb9b989f886249c8d988cad34173dc89b50230736ae1b1ea8dcfc7effcee32e6754b256c10fcbaf3a14aaf58f2f6de3f3dce5d668957e4b333a03e5e29cb6d539fa72c0302047c435bb5006830660231009eb259335ccfcb069b31da8728b0b560da6e04332c1d82ae824068e2711c59bbeb76e0740f2871cdaa4b3e8f43a91c94023100c1d12a0c5db174894f414a95942ba3967236ef7b79d99dc390d07b4bbf79dcb7a0b834391dae3c731e5b3c282f12439a0302047c435bb50067306502304e2e4defe202e1d3660ba9d84ff3c4e1c05c79bdcd87a2e1b84cdbb02c6817223958baa5be9b59913582d209d08ec18e02310092c9d7aa7e94694920a78043d286730b0dab59de46ceac8fccb85237046c35503e23ef0c1a17aac0d012984e2219bd530302047c435bb500663064023013d9c635bfc0adbabedee6da24d26b2165d8e8660a42a154c7b6fc11f1f756a9b575a2263557b9a8f2883fe5b85b41a4023023bc9de1e4c6e4058d5445f5df5de391bbcce57f678329f02afbdc27606c1681b136396a48b0792a6972f4720e8184110302047c435bb50067306502303fb76ac86860e1757b611b32ff205780c7b56bf1dd560b9313a57afc054d30a5e990092a33fc1fac97a24f12e3f1ab5402310086f08047fe72cab42ed9538ae12017aad83346a2002f6f4ac1988893537ef82a3e40bf749919569c223a8e85e70d60940302047c435bb50066306402301bd4d85acc9fc05a2d7d682f7da09f262775dcf0da253459bee9b5eaaa4f0f8d60b447ac2b50e8d779349cb50a7e391002307c4ef5dd79aa0462232b520e4d360a5bea7a32952309f657d6dbf9969361d56e0a2e215ed6a3a697af2af5c1688e44c10302047c435bb5006730650230153fa42e56ed4986d178e2fa5902a23603f42dadc164a2579721a6f1294f131238a22dbd3dfb8df220d9e58364c8fcc6023100e1926772e1b648baafb503d55f68a1f60a37d727d61b083937aa8685231d1f07a62b77a53d21641b657b16e4b7aa620b0302047c435bb500683066023100b0679d6c79c14d7aa3fe84de4d357db355acffa063e3bb83c39c9906511d535fe837f7534092a0a28bc665af888ad0a302310084ea5a26eeb67d1606e1b93d08deb7bb8b6fc2904c9ca67db7a3fca98279fdfc8d0d548ac0ad505ddc9a60c4cfac46d10302047c435bb50067306502300dd0aaa164bcb6b4977dbdc43daddcd0e269c95ea90bc13f599e31ccc19e5310138218430e2dac3662499ac9f5af4a5c023100dcfc2ee9d3d80af450507987a5e5622dd58ceda5e8fbd61ad6297cae44fdb8893f5fdf67e508134eea6936b25924c8ce0302047c435bb500673065023044fd13793b464c9008458eafb277788f913c8f9d42e10b58625499a9ebcb31bf63129e8ca2d1640c9c69761fc762c19002310082a386166cb8c170a4f05a51c4b1a196cf1bbf13a16731375699b00a2ebac860caadbfdad6ed2ab0f3302c496d8ef0350302047c435bb500673065023026e861cf3b6759df6395c70d59c470ff31a7dcc5e395fb099d8a9e443309e6529c1c6bea45565b2d0efbbad544b72092023100c2b0802c3009200bc0f6c5e8a7bf8bb82d6e5109f7abf541a7bb4f0592d0c7df903996deb53dd883fc67432e50524d6e0302047c435bb500673065023100fd711954e4cfa3a68c3f58b043b74292eec4f887f406edb6cd7722e5fffe59b7771e938f997d580ca39cf07142f1186c023074e66da3da60821ecd6c9dc7a526957d32289a1f079cd18aefa153af279435b5a5e1cef7b7ca96dc9e545be8a92c8a5b0302047c435bb500673065023100d32af1e26c9628d577626a5cc68b4d5829ac259c73d900cc16f7ad41e42b178224fcee95ce6decc7f9faa39c046f370a023006cfef98e97a4180898cf339677f6fca7221fceaee23d04f4d83e605c03d508e840158137a6e6d216b5c145e278e54080302047c435bb50066306402303524cd8d5cb15c5ce3ba72193738ed43e2fc85bca82025d5359b4ba34a574baca04b03b784ebbcc8505f6adcea17308b02307c762e95ee1183274396965b45a919a32b392ca5355953f59dbec0e7bab71e279e4ba20a636dc66b0c8b7ceec24249aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100936f1047ec9be575f052341ec6fd8d3f01274eec7e1d3d2536816a9630a6430d3daa2d4ae0ea8cd57be84c3814f305cd02300fa59e5dc6d85e7df35f8f2103b5c6442353624cea6f8bf6f10a15699f415dd15e79202b2671d6b35dc0b51d4edcaee10302047c435bb500683066023100859e6344e32cd9b774bbb0615882bcb569280ad5dc9f48a51ee867dc0125bba892c4e343213131231fc7d8477e68157f023100cf04b199a3ac30583cb0049621ad865763d043cd56e335fb7b4bf1281ff0659695dd06d4cde6093e8f28c44592fe66640302047c435bb500683066023100f307ccd279a7dd45f3100a6ab7e4cfc917929d0c44ba7f2525892a257fac4fc42e38dc2e37bf824f9674ab873514f8e2023100bbf1ab11e93c999966fb87259be86e7f75f137dd35a524006513bd082f94cba4ebe1175185eabe762dc5d80d816068410302047c435bb500673065023100d8703a44c98b4ac13424b63dcf30dc50f4878231f9a452a2c245b9bea59c6247a04a541774b4d821fb12a87558146b8402303e1496838b42e9a42a1a2f4391527331edd7dca1f799d412ba14b3910c81a0707ca9c8973d4e3647741e08f3df92cf690302047c435bb50066306402307e6add9edda1061e8384be4566b4260f627d01c7e3c30a8fc8939d6540e0727d30f89a1d78dc6f7501bb87fb9d4551ba023008d529bcfc0565efe32c34cccf82565e359a7686f2fe78753562ac326edffbf01e389a5f485c40737efcc1d6a72aa1010302047c435bb5006630640230035df6e49ba9acb1c5aa85eb8f1da5d2818c0f510841aa6766ffd27c2e065db5aae05b0d2e9819bd41d9371fd92c839902302c5aa0ad27b0acb96555db56af3e4f71479f60c3cd659b12c7b8d780bcee30d440d81d5264cc618759db4df650032aae0302047c435bb5006830660231008a95ffc1d0cc19e8bd771eeaafec35aef543f623320b046af7e54160801c41bde29a9af1963d14523f5bf20ce7de90e5023100b974fb98505852563ff3ea6f4dfe0ea6c984ebe171913457ad32a30cb174c66d8a9f313a48d15ee66baae5fdaef6fdaf0302047c435bb500673065023100dbe72b74551bd66cd82f749282d98184dcbadede0a686741128174f765b83e77fe8448ea44567c22254f8545f3018f5d0230060c2389f8d1f9a9be33c5fff1a0d1ef47dee19ef1152883d2c59baaac87cc53660d10a8c6f9187e4ec570b62b901baf0302047c435bb5006730650230475dd64656778542704461eb2b2d57e2b66e2b8ebee243cec72eec890d80dc64762e78fd704ace44f89b799b30aeb9a8023100c3e2dfecea3716c949792c75160fc01b08990e15c4c2881a79c2c3e232cd36ae0308b4d45968f1a823fc07cb9ba24e100302047c435bb500673065023032821ed03fc5c22166adc16501786ff68950f36edbd5908cf00372fea5fdbbd9a243694c0977d5c9a728754da8b2ba16023100d8d49208e8efa185d50b610b611e32a179633f622688de27ab622c9748e8c7bc0dfc6fa9820726c8103c4c7a483c39f60302047c435bb500683066023100aecd57c2b19b50771de40dd33ea5c3839f412d0230495002aec1df20fd46c0980477a70a1fa3f6a52e15d345f53b91b5023100c50816b72b0b12cc1f331ed908c6acf0ee132545ce1ebecdda79c21d0100ba94061e7575bd78d4dd055dc56816c1805e0302047c435bb50066306402304ce9bc1ef832534b799f183de84325362fadf369141a2f549c3641d2ff22ccb322c752705975278de2b41a7e6fc3aa7c02305166030b36293a250f6557f7832503a88212e837e0e3fe20fd85a5d68c0d4f48dc4b9d16d0108b7b76c08ce99fd2e1be0302047c435bb500673065023100ca930f8b6987c017cb9b9807aef6af5b76528fd99c4dc4a42e6dd85fb9dcbf06f58c54ce5a881c6da069e156c951047a023030903c6d3b0d4b4ef06ec50e44b130b97e21c5aaf40409d1b662138796c034f4927910145ec4af0d9979347c66c978060302047c435bb500683066023100c1a36ea283e7ab1f418797835753e0782144e212c1593afdee69b49898646baf49f533590323bc37844a8c3631e6bafe023100876533b80430ddf47bc76403e828d83c3433e1672c53ccebc694d20c02f78f52c0284469dcdb5a0a8bff28c89371aa670302047c435bb500673065023100bcfa79dcda525beee31d58486bed2a038aa31d1eab290ad8d726ed6c9997b579eec0986cc133ef9fca23893ccfb889a3023043eaaf5ea42803f12eeb8a02f72a135ec704d5251c32c8f6ac95f9b852d43d445b7df825b8334993fc2e7556c6f78ebd0302047c435bb500673065023100c34fd68f8832bb36122ec5a5355129ac3c3b52fc1bdb7002bd1fbd496eee519e6befc8a6e1515f957a63b6c762df73840230279bfb885c26bad06d812e900fb2540a0c4a2d62f02ef5dd578ad7decbcfe68d691835c87b2681130362d77bda176d4d0302047c435bb500683066023100c137a7c7cbd5a85d9103e18e105883b65bd8a8696555f4485c23a0fd644e442c5dbb881aecb46db56fd6c2bee47308cb023100cd97e9538fee34d428029b867ce8f53cae65c325c2ee73af304e20d2ff438da481bdc3eaadad244d999c7fc934743eea0302047c435bb500673065023100824d1a626f8711394e33367d3e81188a85696933b38daf10306b03d1f49a94762c3b8b3b7c08c44c19dea6e53a2becd002304884b33f1e6b9f0775fdb52d4a2e46f42f4c2d072324b201a990b3658cf862b18e36b7fdc5d9a9ac62d9d92f788780be0302047c435bb50066306402300fe8b6c5ec872714206e0c5d3d4eb0451cd2785411a8f075a827361c021437b27cc695bccb89aa14691d0e70de767c2c023071f92d7ff7f607ac69760114e15db9c46dc31a351e041449b560fdb66f4642c11468e5bc85f05c324b532774ea2288f60302047c435bb500683066023100f3e6c0312244d8eb017a39b5392671cfd4da2d38c1261100796bf4ea692e005d10ae12f70c9810b447547253468d22ae023100ab1deada350ad4999e0dc00c86b3b1577d3e07d5456711fba3a056c960387c245e770274c76428fa2ee13116ade68ead0302047c435bb5006630640230683ec806388e3e8c5b41aab712f6dd61b8c52d318247385bcf034c8aa204fbfa49caaea0746d084a0f8b42f216ed149a023058b90d6a23f3da960d0d3401248478777d4eb03bab9a04cd57b5fc960e87f76cf0a45971bdf3e1bb1ccbfaf59945a7d90302047c435bb50067306502305a979cb72e2a433836476ab1d3ee29d7de40cbce0e27439214d26caa297594e7d9e2c5242c0bf8721b1004b83d280e19023100af475c4a7b34f578fc0664746501df74c749ca64f691a73b5f6b5801dbbd8c549d4bda64b7a4d0c4e90958a799b0856c0302047c435bb50067306502301bbc7b52c78c47a3502fb05ba5ccd62fcf3792a6429cdd65f8a29ac4e77a2ae77bbe02c4c787b9ee671c76050568058202310080744badb44c9f39d440dc2ed91a32e1f116009206e70eb70bdb1a91524c3c184ac8b244cac5956d5c59b09e17df06010302047c435bb50066306402303d755bad88f3acfb8396d5cbdc2c21e7e604357bc7c597ff5ca2a72df4a15965779c82198afb6e83cf585ba13270bd2e02304c51148776b0d85224580547105ff61ae10cd689f46835f6c21b6ee1301e7199852cbebe9da1277d991af5765fc0ecc10302047c435bb50066306402304e211100c4cf7194b9644835b1ac550f2a09d269f986a90ffaf375c8abd5836a85a826e114f8fad99a0bb426277c38a602301768221cf7b038314f10e80879c5664135c7ff9dccf61fd96367f46ea49154251c7f58c2a748216f1875cb0c2bebb81f0302047c435bb5006730650231009e1c9f2475c268a8f06a755672534e14d29da4a53bf1aac76fc816b8bd19e489db238678451bb35cee033743801f671a02303a0a1df44633d553eb2fe461344949ca56ec1b9a790e79a1a6fd523656dadb5e0331bdc2bab13f77eeb354a615d7966d0302047c435bb500673065023100ae998b6d3b8780086455f65a1ce2c58d1c994ddab943c514cae46d4e114884841def7b77162ffe8b25eae8320d7be07d023055156f6fb3206ecdf4bd424c5bef72d727ca27b054162b90ade96389cd86a1a5cb1d3401810f711ec102075c253f76c50302047c435bb50066306402303e1bbde1d00926fbb46b50ef7f0bb657e4cc1dfad62557743b2e5c372e2eed1b74b8c48cbcc3f9959d613abb4bfd948702305909927fd45d7b3c92ec848b0662bf83e2d21c63ef93726537ef10a86fad4fc4eab6bbbfa4e7bac5ee0e8be2226ab9cf0302047c435bb500663064023053112e7640f903f61b0f1874e02d8bbcf2067c085297ca38fd27659d0241777b1a306b350ba6fe6be043bd9811319fdc023013820e0fc8c561f1b4ebcbb155f7f9aa170875ebbd39c41b2e74e4ab98caca5e841a446b9210fa0d10de99fdecb699120302047c435bb5006830660231009690a0423b0d22b6670a4eca4eb6cb5d853279e0a60de364e67e7a9be4c178a24106b8e095ca2300c81b43d0c4304fd3023100ef9a87a13187d57dcc07b6f9f522ee479b1f7b483ea141f5a5ccddcd3ab36e4f77776a3ab58ceb9e2ca75a076c6c6fac0302047c435bb50067306502304d339084b1abae6130f336937666a58ce26212663bcdb10bcf08f2602000982e5223943ba77c61dfc952b9ceffd7302b023100d4e837828f7b23f10995e2dcb4cf75af60c88b6e2c76e40060aa2e70d4e355db1a4ee25ea45e00a6b4a1c69202e3476a0302047c435bb500673065023100b97fc10c92aed26bb44a7f531dc550e2f9d8e133e76b1ad3c1cc4929a0842688261759a2302ce0c06e7600913b6018e302302e35255e9f33411c7df39886d8bed6121ca2782edde47e83234848a888b2c9175caf4832a06a1e779ff11f468bce52410302047c435bb50066306402307a03e9efb0cf09b2d41512084aa9470f01e63544f1773f39d50de4c6327ffb6e28fe0991cb14704b066e141ee73b9cc40230283a7869d9ada7397b8f8c91e6daed4f3f4c0aa47e8bc4e2dbaea9d19f96678529c2b1adc647d3d4b87f0c2d52e9621f0302047c435bb5006730650230079f5e972c06c4ba4d1efc614490b3fff633e8e9c12ba7260c69a4b229f0e8da7ac5a186b643551f1e02b4d5663b8e46023100dd27d8f1a8356416c8e7b1472840778412d5c56dfa6a6545ba34bc362ffffada4d00345d00f28b445d36bdcfc99ea9c30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c5a5f39aef1d92ab2a67660f7f6ce6bb546bf50c0f9a2c16ae867c92923d1d1dbccfab31448a3b9faaaa8b52cd058a8002303e2db2e21f7f003dc7fa4a234bc65e07a8a3a48172a3231b2cab446c8dae51331e2bb00f26d85adf57f16d82b4dc6fd50302047c435bb50067306502303fe4304f3ae14d006f960ca16a1f184f3f734babaa77573845c2b9832009628a7f371b8188ec7238def25d7fc60cfb5a023100be6b9a6dd4a3733fc664801ba13f21ed95bbfc44fb7222e9f0bda15676d02e4d731ac502fb7613bafad175712a0e798c0302047c435bb500673065023100c7bbb94b7b7052fc7b9b090c1ba1a6024320e65d6564156f7e2c89e48bed6babc601477a67e86c27f3b4efb596259c35023070436e718b1c5b4c38d2cadcfe8b04f754d3d75872569fb93aafcc2919d49b04e96bf1a2f01702ce0e2906982fb201270302047c435bb50066306402305308c867c2fa52aa5bd2132e25f797fe7a5d862c0ab8a032fb765538afb4fd5cc07c3c63295a1b0152da3f368b993ac602305cfaa08358dccb02dca137afc22e341c09adfce8e2a8631459eb3505f35420abc119906293866e3f0497799bee88f9970302047c435bb500673065023079c3947e20981d11deea177f4b627215fcf1604255fce05b5cf36e5d0a38c964d20e22ee33b467f37cac29c1308d3b5a023100d77b8c79ae82c614cbe1a94f0b6b58659a4bf17a1511190be2a7c0b055c85e05858a8ab27bccaa8d46cacb0237afd1280302047c435bb50067306502304fbf3ea86e8c59c2e31ea3de4f657ecd1b496a076b8f1aa0d32c0915555b2ddfbc8f2bb21e996177098140e211266cd5023100c50acec06b2d4b2988d3ccc74f4a8d1a406baf9bdf4716bc3d6301101bb06d337f9559369486bc92783c919eafb4ed770302047c435bb500673065023100cde48dc8e02af3895d4b3a14c922fc3c78ce13fec926ea6d7778c5d87b956bd3e2223c3561c125fccfdcc4bfe848e20c02307584de797a6511a5fbbe6916f1b514c21fe016d8b23cc0df5580461c7e799ed21a81916dd890f899ebc4b1eff3066a850302047c435bb500673065023100b801f1277177c311c38b2ddee8ea23a9f11f4fbcb8c52ae54b0eff1269a0d09345df3a41410a4b144ad5ce26433fd705023055dc49f064528ace89782cfbe322100aadcab4c487418ebfb7b6019ee61382f757cd8bdff377fd51d4d1ec43eab0d9810302047c435bb500663064023014131f47864e24a0307a6a5eedc27162ac1a81cebaa384cb2783f0abd7c299e8ced46062156aba42567069a1c912491902301c44744c5377c21c187a0378667606cbad692da8ecc94af4c3d84f929cf260632f76a2f0fba0263c391c89d306f4bbaf0302047c435bb500683066023100cd09485ceef387a71d93269c2b444ecab08e9471dffae2660ddda43d56414868a1a03d12c8413ff2f627d8f09085f3f10231008309486d4686401ee6654b1ada1b926b7590795014f272e8bb8b99752cec4537e762bb00d203511d6866a8a083e0bc520302047c435bb50067306502304d1eb6524c6a2acad34d2dcb1994176e21f7ef1d0ee15666f91428f19b10519ff132b88ac97653132cf6c8b1eb6c19f30231009b6c8bb8fee7496e919f428308a5b65b08008e40074bababeeddb571d722d926d1cd20d61b339f22e021539f1887ecca0302047c435bb500683066023100a371964d0405189985bfa49e7a3de4c6d59dd242465b54672999e885d695a4aa2123d5e2c53af28f9330abf056924de9023100aac96e85b4e2278d9a536b7729509fe5e83ec52b00805b944cd8771134c349386c2f11150cef0248857f03695efd74490302047c435bb500683066023100e67c76e81a4b8aab9ba711611eaa2b526bceeb4974cc24e2a94cd742e7ebdde001cd7dbacf870796aed1eecf552b48d102310095a7c3c296e9650a1768170137cb71882daff5b095a48136ea5ccda26e170a6aa6efc92fcd0a17e252bd542be6f4032b0302047c435bb500683066023100a2dadef35e9a7ebfd62e8cd1ae8f891ccf5cef6529e389ca61f65a1788db3c194fbfa6ab04a024ceb9f75427cb509828023100d1888e0292b2fbe872f1dff38aab87adbe856facab5215b80b8b945fb070ab7424b1ef8a3b5f05811885853e3276483f0302047c435bb5006730650231008c8ffd28b25ad98771019b13d3a35081c4190a2eefee534bd47325bdabd261cf14880fbdf44f9e462c3b90bca88c85840230294398231f19c9650f6e44a3754f5f580af6d6613e3be85963abccd715c5ec257bf8331c5c7be408e4c70296f96ef9f50302047c435bb50066306402303133b9f2b34eb8ad3f68320a32daa7101bf7b7597284f5d44ccb70c4cea7ea49812a228b7a4719535d6b066baa615c8902303380335df766b3134ebe80e3267dfe5c0c53080e95501db18bd9760911ae07ef273001f610fd158c5f72ee2d2557d6cb0302047c435bb50066306402303037e9847492fa72e815bc57d6c80b6fa3611c3ae833c93669068f1b663a6887f547de901d61110f824503301b26163f023020a482cdcd0295e1a70ec0504d7c534a589e6e539e6b84028570b7a53c3032cfa38f5cdfa8f8bfaea6b20057fafab9080302047c435bb500673065023042f544e83f5f43cc8bfe7c89107723fb36d9310aae641736ded2af4237dc60fe505b8cc2b4cb9830d40c1c049035bab1023100e502cfbbba532c3e937a954e5b371aa05073bbabfdafd80437d76472986780c14cb3fd5fc7ebb07ee40c9c272a37f7220302047c435bb50068306602310086bc3cf1f6e7e6122ed6b6e608a7f54685777209f737ae288771b100593c469b92311955f3a57021c7288209e3c38f2a0231008e1000e3759b7419aa38582aa5adac1f35f74fc29bb3eaa8ffd41b1073d27833130ce52edb0753ce6e5ce99533fc79ef0302047c435bb500673065023057fc0e22bab290002719c27e228d2156bf535b9de5b68391e64ea51319488187ff0b47a74e592289473c138dcf6d089d023100bf126145377d7905cea4b90a3a867f1fef8b5ba6f2008c4343970524ce456de0f63bb9bb96d829032b0100910e930dbd0302047c435bb500663064023059c163e28361978f4fa7eb48e88f94b5a2d11b9e4e151153cc367f1cf453f1ac983efde48edc4a3fd00f1faceefdd16102306c2f14d15e685282055285a219eb4eb5d8b9f67997a328570af4f1be37c9b513e62fdc693dd33e59b3d4491575ef0c3f0302047c435bb50068306602310097323df62b76d34e3a79af7b55e35fe0a732baeccb5c9f52d1c827129b1c9d3d7ab8c27bf9e40a5bd3428978ad0e029d023100a560133074f7bdb1bf88cf0dc89ac80ca35ca6411c06e8ef91c9c890a86d64d2aacdad712f6f830d83006fe72bf409690302047c435bb500673065023100f7fbe75c435c98d4ef1d53f1000217d05e7cee4520921e15124c82cf15d4e00e8a27c4f2952aa2c1d38fe6bee10463c1023015b32cfb95a625a46d7683df3aabf41178698c72012586c238f80bf9c5809a712867b6bbddfa18194bbed654462f782d0302047c435bb50066306402301b8b745ca04af9ad92a5435baa27bc9f14b0495c39e2c2304bc1b7d4a5669d0c01b3e3dda91b249fc3d344d16f272dcf02303651f35a4eb1f97dfeaa86a4be97fecdc751fa641a27b2103323fc98e8bd4747433f1a90d9aea7ef3e8ae9bf82dc71920302047c435bb500683066023100cec2fd99336305470cfc5916fe653c2fe1b6e25e64e22df6cb682cba2e27c08311c60c305fa19c4d581c410989acc387023100c4bcf927cb9b278a979dfac38adba2d805d929b3b46b66ec44c99cd19c4d9199a10a1406f59a0323d11a1e8ec43189170302047c435bb50066306402303f7d71b75f336e3aa96d8853040e9e53b603a602e6da101a668e20eecf8d3d4cdfa84909f2e7f123c2602682c839451302301985a2d54440638b2031fe2be408c11c7bebb0e832958f430cac0636235abea65b5dcc928b4adc6896a3c7c0d7d7ee190302047c435bb500673065023100de9ed81894025cee5063be188430d7f6dab1bc9d6b6af29364b9436fa9dcd18703cbfe3290b725b162c7e1073bbfde8802303b6d148515ed4dedf9710f15066eec0e0b743f0a66e35d9d42c4e1a826397f5fccb561f9d7950345c474624351008ff60302047c435bb5006730650231009cf9333b21d85b9f0249f3e276c2a3dc43a70ad1126150c439d8d9b98dee454d84b8922225e275a20764134ece33253e0230535cd340f1bdf98fa9600882321d5957d8305464ba47299dc105aeef1ddab59c37e76cd94013e85da7799ce9bc439d770302047c435bb5006730650230710e90b5052c5ff937b7861f5ff3c45f07aceab14e704f1cf4dfbb0e5fc5774018685c26cf40d745ebe3865c88d3b452023100987dc15442873ddfbe8ae065620f04867115c19d60cbc29563c27f292ca904f9cd3ee4e2cd3481c80a9edd2cfd5d6a150302047c435bb50066306402300938cd7e2e4b0d8a0980d531e5ef96703b9d3116eab5424c20e7315addb8ed3e3406ee345c76bb16c85c7b55c466a0b402301e317fe0db11a24433378c8684554fc82f454d2e41187e52aaa992c29150fd69d14a880a094f0d334e0057762cf1f0260302047c435bb500673065023100e083f6495351c31dc5f786e9949a6094f8425c8bfd62d5596265808d4465df6c70ebff60c2753b01cbef165cd72a169a023070c28a1efbc1489e504df8b5363041536aae197450f8ad2a3ac2f8e7378430b041a548f32cdc3e5c9bbd0f25dbb079bf0302047c435bb50066306402306ed4e0c47bcc63a340de2a65fdc3d3d8eeac77d71e8b8bc525108c4d2d7acb32531c3f72371a681331207ec50dc9b5df023017451679c763ebd186fdda240e2216ae3095bb5c562ae680b42b9854f2daef76bbeaff59e6254cfa812c7cd91cecb3a80302047c435bb5006630640230111b202583fc1ed9f74696d1161d77a4a91cacb8d41b5d54781e6d87c3d055e3b242928f9e02e7ed3f89685c6b09213d0230369b7af1e349656c1b828b64226a63e6c6d85f21eb1a1206286d9efd65875e3c0d4a6879d154a6ab1ff6b8b70278bf530302047c435bb5006730650230280f4b576779818dbe3a157654084636474c709f47411dc6bc17f561aa95fa147f3ea4d14d564a019f4ec51c31d6ca5c023100d1813aabb6eb9b8bbe765f3310333e1d09d548435311f73dc00098b59b83a39bf45c42768de40fa2b66029f89bd225380302047c435bb5006630640230026f98fda3bc60133d74eaaad5b5081a5257c5c25172fe22eba3d987252af6ba92d5c33e52ba12914ee3e4ba8bde8551023036cf22f34964e4859770af61952c7e73edb415d550938c48eb740636a5775fc2aa8705c29a861678aebd63d3fa12ca530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230121d2504300d01fb2a3d895950ad2aad47374949c4037d46e39826caae8190c9da7f97485913704a7c73f3e7656582b1023100dd3307df6ff071e263c85cf8212e037b7da30b5882f52ee38a0b277666838746a4100245fab0816f0a077b1930d3f8ab0302047c435bb500683066023100937426ed56ce7a11c01f448698296fc35f5e6269db8dcd1a3a53ecb4f0d63988d1bd7f82751b5087640d3094a1d6892a023100cc29d88a8e7234100b7c4d37fa869c65aadd63ab110617465e249de6fbd7f940f2057b3de64dbf3c7f013489dafea3880302047c435bb50066306402300701ab9b75d8ab4d16bb204fda9da1bcb9a9014f0aa2729fd28b40dec9546ddd1cc7633a09e46211c28582f9abc69714023029b37cb54e0c8c500d4a5f1b5cb99be5bb9b8d00c082b44af76245536c9dac91a41672d2d6bdb89ddfe565006d53010c0302047c435bb500683066023100bfb8687008ca04edd40ce7609f985645c87758df0ed8e87aa8c536c2d92fa0283c12a0608ece708690237162dab01437023100dcdcda08ba3ae4c6d9b8bf73acbc3d5bc9990803f304849f21f27e2e3615fcabb9ec3a0542d71bb6da4585c3eafc3f7f0302047c435bb500673065023100cdddb875b4f2f0e1b3fc4cdff2721737a559e0e841ee3a9bfd6b524a5bade7f6ba10879d21c69a20950490d88aca053302302002dc190722a8549e9ec0ef3eac3ee5b3e03766c2a11df6f0854e3b7ed717e5b311ce99208f2abd2630b9f718be31d50302047c435bb5006730650231008a15f591906e571fc1bc56c1d8dca8159da28f2f5ece2b54efcc0fd558615fa8a9969e75bbaaf1fe45f84c3d39dca0e902306b7d498f507695abbcee993ed36ad0e141235ae7d7359182dee2973d874e21f2cbfb2582313ef7e1ecbf22786fc7b0020302047c435bb5006730650230772984a7775e1446771c692963d1e1790833f1ac6c011c95a2b5a242a3f9b702a628ae6082d93409732db8e33f00ed95023100f24e264ffe0430c05888133912ae4f3f54d3fab83a9465915d0b7df00ba68d63dbf85edadb4057ac544dd33c5f9c445e0302047c435bb50067306502304a39991c58aeeb51ab0c76f6f60cd256c52ccbcb9c0ce5f258e859be39bc7938687bbc081b025cfd2a7c21b4296c586b0231009945114ec2af48056fbc707e79a9e35fec56d74f8600aa8fa8aaf98872d123744e3125c6cf81c29e1303e44c3dd66b370302047c435bb500683066023100d0578469744c2334f2cff1eb8b0ac044cb1cb32276799eefd4f14e2f5cff2b0bfce5b59912ef84c4b7e945e370ad63e6023100b20a6dfa4b4cb091b130a45201bcda69597e9a4df33a2fe1243216256fcc1cc0a8c3c75946280ce5154170aacb177dc00302047c435bb500663064023055bcfac36413930d7974c678bda0485aed216b0504002da0c671076d0b91caafc4a07ca1408259b016c48a8b90da2a2f02305fa32089c7e976d78cc986e7d1fc481181bef46a8badb33bf12c37c363a7c07456addf93e545f56316cf968101ccdb190302047c435bb500683066023100e388a476b361784679676f1448efed7c19a4d2270a16d3c9da397feb55650766a1c967d2a626981bcc3b95f59bc0a076023100a1222b48f962f402fea3b76718366a527c54199bf1f505c597c13e4e88bf9f7353042e80b114a894b9e144d878bfc41a0302047c435bb500673065023100e6db036a512c8abb5c9220a17dd8e2611ef4a10e2c31ee9d081e8d3bb6f2f5428404bc3b38d1e6ad8ffac088d68895c0023023f4bc349ce9e4babf94c0c8bd213fef0148e1409f820fb8de383e0b94949823dfd1dff8c9488f44c881a9cd451d1f9a0302047c435bb500683066023100ca1c2e7fb2de6e9167e59a737a73d751f0a5cf76a3371f240a1a1a70e57948c9d896c61db3c313eee7d967993080093f023100e040554b456d30c1b38655f0cc2fa5451d4d8a9101a7cdfdb2ceb526af31ea348943b96f24c3cf99eeb06b01c8d220a60302047c435bb500683066023100f4aa517016bc885815eee5cdf348f1a03512b8954fe75ec9d833d73d00ee01d407a867db5bb1a78d35d8cc1d5bcf46e602310093a392c05513d148827146ae046cf6e28c700638b8ee467b93b4c6fe7f8f6850f5ecf692733334b4aeb5cb53f1bfc6db0302047c435bb500683066023100fd3b18826271b5da9429e69160fae435c1326f7bb1d54000a2df588d4cac3a4903eccb7352d7a33180fd41980d6fbfcd0231008950bb27579e1dd55689a2338c4ffda26f1201305ab57bc44a778230a690e9a5871a2bee4de95309e5d32862a9b3ce310302047c435bb500663064023066e906443892e355c8dd01aadcfed298441ab9406340b7c22f7472f7a6c65a784fd425fd2bed7cf5f4794bd5b479e5c1023038c2911ec3565ac5757eb0b3cbe557af29c8c28df0dcb7ef3b74d866a1eac325da16b59800b0b1dab950094dda3f5ce50302047c435bb500673065023100a9f12074cc8370fb67dbda6306dd02707a9a4421a119e8d9d2c70c37659c780eaa71720e7325f23ce55946ea8f151e6702302a741f203f7caf4509586195f12d2321eb47bca2947c8e0463bb12e6b2575948315786ac42a1d7f4fa368e6b5333690a0302047c435bb50066306402304a0744b25be9aec1b5c93bf31c8852471ff512b0fc8c185846ff7991495065693d7f520b48b3ade50f7704104fa16355023008d122d5e6dc0d10cb36b992f2d376254395d2f835b8c61f53f61bc768ed1bb74b377c1031ed149f546c57d4a665afba0302047c435bb5006730650231008a96037a3e2357b43b6c2bbf385dbd626bb7467c8e925286a66bcea5cbb6a2bf2e9dba677d29c37fff7417b3b045e79a02305893f51f8032a83839211c7c9ba4637af5250fbef57032a444f896ed5f97f1cc84e80d57c2f586131edcf2c57f0209480302047c435bb50066306402302e168ae6245160a7cec1fccb7459205000039cf5051d834b799bd7bac7fd50e6832ee71259fa4f4a1a9a9f99d21db90d0230302736b1adf870ab3f8362383cf5c9bcb134695abe537afa3ca81a8a7801ac3f1eff21fc8b93e281fc749e97c7b6b0780302047c435bb50067306502304abf382b4b1e946bd9658267c99a48e9404d4424b282810373c3194f4b02c4481faa370fc64e6f2aeb778e382d572be2023100e893f1cf1ebfb68ab5b367cb15ef449b7ccc8101b9ce1026799ab0eb68ce34be1ba9781c8876dd3a2b14295fdf96053d0302047c435bb5006630640230672f9bcea8e2a50ee40ab1fefd5b07fdd9d779f62c99de775ee56780d5a2fd572c479c33e513a4f8187f968e7f314c6202305ba3a1b8bae5a1121080ff7071caa255d499bb3c78c5ced5c1120c403d4bae0d4992bac34363a8a725e045b99e1134a80302047c435bb5006630640230569fec3ab3408562be978e18ebc886a3a8d3d1016f409c0e081bba329bebdee7f9aff1555c1b401603835bfd9c37bf110230786ef29ed7096ab8b7fe42a9cf5249c4fdd1bb8bcc05c6ea005c375d6ed51f1bab9069a170b66c3e82272700b45d4cae0302047c435bb500673065023072c4e6655a35b5801e7139d490179efdb2bff2fb4e07922aafaefbe6edd27ca43ec2f7fda2307f997f58f1a98a204ed3023100e4a0fc7e922c60d2ffb526e544a5d154b00bef4c2a5b7f6b9dc39b8d7944d550c09c7184cb82cdbb62c316d8ab7fde0c0302047c435bb500683066023100bfae00433ea45cc0d45234f338ca9dbbaa5d81c491f325dbf8162630a35c9927b6cc0f1fa9e957879dba34a105b6ad1a023100f15ddf750c65b69cddd67e1e55fba73eb2e0be79f55055fd44d859c068fe9e02f51d064811ac3015e9bc369948e212990302047c435bb50066306402307f8343e2b14ef838b7e4d1342c8d925d7e9da0a90a6f70c4371934d2303df46a5dabd4f3961c10c497731a7f66fbdbd70230251d6c5fb26e2afd95d4933b88e102594198bb9aacee82721b8c0b5ef99fb7bb175b53f95223543d83584d5e3a44fd120302047c435bb500673065023023d778407698ff571b783ceb94c33931f3e617c6c53af291763afa9aca76d161bc221b760e889c4dbc6913cee8bcd51c023100e40623c4252bf72264b59d0d3e68e4b62fb331c6d2a9798c0aa1f9779f9cdb88a68fa24e98973330958b184767eceea00302047c435bb500673065023024dbc5c179cbd7465a8eb1c3a55efb80db262c50c0249ef5d54c2161211d0cd24de3948abdab300d9505e3bb534c4efd023100d0d808deb9c5a1a7678ae10eb339092a5cce4acb95790457f80321de748378eb7ac77b746e5cd83e0ed12effced68cdc0302047c435bb500673065023062ad6121ba22f737d15d4b146c94793ed61e7b40bd94c90396f7647712f7b7933c116356d64aaf1a272ed66db1bc91eb023100ab9d6da43921398fc84d064c882160866235c48310eeaaeeef37d5e165ceeb48d4f79555d663a8db7530a17f8676d2f70302047c435bb5006630640230502ce8a503db0956b976fd6759052da11d870ad84a44a6b180ccf5f2d191fa0a80b1b19b0ff85ed72bc1dd025c6d890402307f339c4cf54bc5c7ea17c6e6432c1794902f38a58ccfa15ec02b2eb827174c387baffc7d998233f3dbf8f52b2af7557c0302047c435bb50067306502301ad647b41fbe3c9921d9439bf822b0632c572f3e12dc1b6cb9911f4e0f7c7dfb35158b9cb07efaf954da59baeeac06d6023100bd1ee7072614dc383ee43d330d0d6481f89cb75b27284d87a9b56e3dbea7b45ba5fcf5b2e8196128abfdb0235afa12fb0302047c435bb500673065023100fbb2f4de962322a3a504471dc10757cc3e5fcb552509c67c87a9a3672542da8e14b8c712c5b25041cfed285abc7f3ed402301a6e701f9b8cf42c9b2dd43e7405379d47f915f4017b36f545a9791d19e5d8123eea00e53a8ba4b2d9d633c4a00e9b500302047c435bb500683066023100c7b8ba5d9f8a69fa661b16d69117bd9505ea3e82502aec33041a46d6703da81a94c192037658930e9d52bb2a70106bff023100c140eabef401ef89a1e391c5b3964227358bdae3720ddca35ec804657f1444cf2ac9bc6a02212e907ef99794f9b7be650302047c435bb500673065023073079083a9f772559badfa9a1dd69bb7e83535ca37629d9c039b9e833bbea19b2aec49af58ad68b88949ac9e53147d53023100ea1f815b797660b4cb21c01c121ff7ac150e500eb1553dbfc3e4cc5a31731fd9e16d0650bb4e96d37a862ce116efc7f00302047c435bb500683066023100bc1d47dcf21ee6c1112db2a54b7f5d151f08d7fbb460325fbd7e7476efcdba3bea5213da7496f9e67fd947d79129ecf20231008a82ad757e4f1c4e7c2fafb17b74419e228bd89d49c06b6171ac8a44d39037aae8514fd481bd2a768f64285e154febec0302047c435bb500683066023100d642d7d6eadd904e69ac8ce6599ba990860823b4aaf36b406e3f18186d487c71e976a83df687695ce337cf448152c67e023100d74082be89c6ae1ad5db8aaa17668e7ab4b83311a0b459b73a58f1b72cc2619031c182aed5633baccfa0cb83084a896d0302047c435bb500683066023100bb9070530a1feedd2b407fec73a8561c3f9253d22e376afc7a34a2f290ae5584fcc4314b99ab5c86ee6cc69fd0d8348a023100de6ae471db7346b18437f4e14d2dca9f6a5e523c2d695642266e9e0dc1157a657085cf737c844e41dc9d64a095f2e82e0302047c435bb50068306602310083ec0e5c0904c1a4039a860ae4dba6e1a1716560ab76cd615a54e2f7595c559d10b93848092bf34eef4b637332d205fd023100fa73b36936747545001010a214cdab606e9d8fb16c9a869bf714d8dbea1c426f51708b4484f479b9020409046e90e7e50302047c435bb50066306402302dac913560a3ba9acc26e35d510f1bb4c391e3ad8260186f9d8fb8145ab6831e94593a1efbeb724bdcc657b7624bd74d02305ae9d61c2cfa2e6f14df31d3a425cdb920fe21b4a765fb2180cf393b86fba870297436fca67cba3d74473b7572268a5c0302047c435bb500683066023100ae8035796e9b1d81dd62ad5b77d302b9428c3b55a48bc465d75d857a0b413000967ed088c0695732d22e0e4a3fbef8f7023100909c7b80a29d75ed28bf5d5aba07652f45bc44ab494805dea486f5a48f84f977417b85cf8b62fd21d611d59c53a5774d0302047c435bb500683066023100f5c487b573577b94bdeeafba7f6a0894f4d988cc2b51afa0dace68b1f2949a8bbd4e035424c1522f9174a989a75678db023100ca8a59b92765cf2a16e2908adfa7da480898f28985bd2da571177969ff88294353a41f221f2d1aca57fceded7f7ac1130302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a9965ff31483efb71af2d5bdaa7355ff6c3452b0e3ee1e69bbd398d71ded2c673a4206e6b3b40c3d5b1c49d918467a0a0231008f421c929cf2b40fbf7efc056ab538a96c2b7277507b6c32d3b85aefa70273c23d02dd15a7ccb791e079dbd4b68b75fc0302047c435bb50066306402303b1841ec8dd827b23914734f4c7ed626aa5db9a0408c5908f441f95502020e952a10acc5849134da67201d2a688a58f802304aaccda9ed5365153efcbfa472ea7d318f22f7eae4fb515e71b2ffec7af151273c73981fb1ef768056f7d83d56db54430302047c435bb500683066023100f8b5d597924ec9a64597c25af80e372c6f3ea59798bcb8ee8a9edf4385b4090fed58901b4975ec9d268595c1c1b5281b023100be71462a28eda175e488900635318b8adfb7e421846d54674be0b00c4a0d00f972d7072db3cf3eef663838de74f577600302047c435bb5006630640230473a5e2f7556a40b84f91382f93f96560d243f103a969d65659086a98852f4b7244132f7cfaeef8a2af3fc7b7664fa9b02304be79e49cfc1749878f6fea9fe74254da455b48f08fae17527f46119cbf0bb2ae36b659b33fcd7261c8094c10fb5a9120302047c435bb500673065023000ccfecd91c5a7b4333e8e6becf57e00eec521054fcca80bdf0ff5b37e35cc63a41be273991a3562df01b685efaaafdc0231008c5120b1ad7bd3318d32878ddd21ee0d2fd4e149f3f50dfe845411fea98a1246aa4867b92548c2b753b5626fb50390b10302047c435bb500673065023045f5871fa07b4cefe49734faebda9e993c6b016ad83c8f95ffd9970483bc213bda89765e015e25bdb65512305e9c11a70231008bbc6268dc38977f1e64e68d0b83c94ae002420eb74a06484b0c5704875d1639ebdd4c88ac1a909ebe740bc72fa79fe50302047c435bb500663064023078bf55134db05482d90c414d8b3811445f9bc15c731fa4cf29e71cdf3acd1762d2a1d845d94bad7b7d3c301e41cd900d0230537ceea4e0fbcf6f6e51491f71d8d86f15f84ea8cf73b820c8490a8957aa1c9638962f572b75d2960158747afd70b3830302047c435bb500683066023100e1510e63d91602e2ec88eb1ed8d608ca0ba8555656cae79ada27e56bd195e514b593b132c0ada8919e00e507eb241f96023100cdf318589d7d60bfd1e13c79c9c2376ac58de40e4adb49fc18e6ea6a85a20aa30bea3172030c33f93c873ef9d2c1548a0302047c435bb500683066023100e5281ec8dea9c83c1e4f2465c98cb5d10ab147c4a846abc0927d584c3f2cca4e2a25622f54f92c3591985cc11eb04a9e023100be8ac42e16720419cfc5c18cfe309eb4eb8b3d96a13e69587a6a6f08efc9a480ffdf60cc2bcd9ebafa9c97cd9d0b48630302047c435bb50068306602310099f5834932e66e7c96562637e2032729070cc80f8024b780c007ec8b817f99e9f1e0e3a482587b22d2021febb18d7576023100fb328b300d38e1712b846523003c32065c766a136d3a273387841573d330b4f66165918847227337b50b2c4e0fe8769f0302047c435bb500673065023100cee0afd59b50e8616699a8e12cec9c0555f7656e745f25b095cb91e91acab8849b29f6cccf16140c5faf104c03977ac30230021f05dd4bb4efd0a361c03743a62ee30b05541b5e48453420a9f71230da90cf6beaf8f66da5bd9ca0379ae67670059d0302047c435bb500673065023022aa6d5b5c3beca78b25649d8a0adebcf47e590315dec097ecb54b76f0481eaa29c9282e6569ca4ffcd937f124d5b071023100fca719c276366ebc51728d85a7b34d1e15177245dbe58e3befbe838872bbd91de0d56a26b8aed2eed5e7b03e8ad161010302047c435bb500683066023100cf8e86958329bb76d1eff3c744f6ae0e84ab45ac438642972672e7188b62dba7735e39bde6c45b717cb99b32a4ef315c023100b35438f19a9c72ed96e6d0b32a0b05cfc84916ebf8b6dfe7d9f5351a477e2c951df030620e24c2cacf57b4584fedb1150302047c435bb500683066023100c7273f4110af01f0efecba50efce41645b7dc43377dd90ac5be39c846fb1d9329aceb049b1ac5bbaa000543709e7f8b40231008b9d0182b170658035520ca7e1cfb2b3a5b9f05e3f8ce105808e31a8039a5437ec98d2d4e0ca348c749bee77c0fcd8ff0302047c435bb500683066023100bc485cee48f1cc9807403fb4b33ad8bab29d7abda7bd3167a1c26fd90a1a483f8f41604f8ca56d73c056f33ff8ab69f6023100f1510435910f02610e1b86967d3389d77c988121d2b3d86a4f21ea680cf217362cb3458964ef4c90b8e7f4d30494f23f0302047c435bb500673065023100ef95c090eba4834e355d126f3a4b25919379003344793a864e49769a067938d08dfc09f49227e09567f7c54865538e5f02306135e97ee117bd24c82ad4e6cb8f556538be897565b264a8f0cd532ca74f21e8e8e57b989d8a0e06e306da5e6e340a0a0302047c435bb500673065023100b6ca74a7b5b78a65f168bc621bdf6abf69008903eb534a77c81043e9309783ae4e7c51492273170bba8cbb54a63f166b02301d77b73b80fe6b827c4b6495416a3e282890c4b63130b00bd120cee09d3a34019f29d314141572f3dbc6816d736318b90302047c435bb500673065023100abc2c05560358a3d4a13cd05fb63763526823d2dda3d2424363f2b302fa7bc4bd1df848498b728f8b97f3c353a1c4e9d0230023e97e5ceead3b94336343fe7ba99bba85ba3441bf544b6b995eb105cd18efbbd797eafd2f407d7cef2dff481a09fb30302047c435bb500683066023100c0f47faa873e9b7f282760b4be61936ad37550a2d8d99abb49294236c361e1cb3fcb636db0697374bb1feee0181a3e610231009d832714a60a824f97e8915e25aae88820f494e6b6aa39d19b8ba300dd2d8832a5c8f3ff910425ec974a04c1f01f91c60302047c435bb500683066023100989925c319f2f7ceef50a612e4222af95f7d97c5873d890c3246a6abb38f81a75d5247852e7be610948167c45df33faf023100a40ab6dc2060e95bb047045c1bacfaf19235b11fd86adee39b898697f625a92c4cb080850d4de3789dbe05dd28333e920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023002653268257d5e82331003e3277eac0e596270206a2a58564b8cf651bb57b3cfb2da293af84d11e55c00b90a69185adb023100a6294439521cd1ba257e4882b10b779517b4c0899057f2f6c92b9faec2b4285c0042babb7e770c698ee32e02f8fc80870302047c435bb500663064023025c365ff9b84698619db197e0d64bd1548a1c4c164be08fb298ffeff9f9c3261bc49166fd1ee51670cf5d7e0526b7a2e02306b40c76358ceea7985b1442b88b9d5ef881760b1194dcfe2c3bb341c9ad11045ef564bba9ee64479000260bc2215ba020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305f75629e5529f1dc2ac9b6dd208d81e8f6c22f5863a6df454db35edffe81323c762e17a287d71204c64dcf5035bf2f5b0230392a09bcbe8a71fc25a7c9a1b87cfb3b61e495796942a66342faecbf020ab9e9d477317e2cfb10b9eaf1bfc684dddd670302047c435bb50068306602310088c1d62869eb903b6a7792af5bc00f61dc5bfca0bcb07a4212a0818b52118e68174565407d4d85c32aa7da11fa9de39a023100c8085cc94d66198951106b56929fc23f5dfc75daadce36b32ebe20c829aeaa9f73164cb7a35d1a26ecb951fcd7a2d44f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023038d07ed661a0cc468268fe3ead222321d39d65e759ebd8c1445a18078b84ddf0f89892cf6b03abfb8b8e85aaeec1c87502307b5f9b4e36416f82d539f38a617dca395e8e02a1ed2c190f2c38a5fb1fb47f71fbc0e56f54a33197d9d0520d6e8174200302047c435bb5006630640230056ddb7d31e30f61dfb25efb8675dc03fc65d4e00bf3b2e65efcffde8e2c80dafbd0ecfde82a7dbb07b99ee343d9a0800230724d6c929154acee604bd5c3e4fa5098a4c78fadb078895720a8b3b77a50c35005342b39a9aa25bed4d6576e3d00c5570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100db1dc0f518b9a5e778468673d95f11d2128170f2931855b979640cba5798567e8471fb2e1a53840fd345a33f9a8463e802302c657a37f9a22a395709133a610455a32dc7542182e9b7586e0b2b3441ba38a03c6d4dc3ce0b7bce655957aa541f3fd60302047c435bb500663064023078d8eb14b23074e62a0d136b701c3ffeb2a3463344a2e6d625f345d70438cd75de4059f0a935c73457de1ec438b41221023070c807afdd6f35e4037f2d9245b015d0fc24d7571fbb4e057148a60c5204a4528b04f926415c7abacbbfd7a8d6fd17eb0302047c435bb500663064023033dfd730cd4edf7361b4620c69d5bdf74e03ab3b80a3231a8589f9348e3bd27a99cec7db5298494197d7685b1508b43f023070ab21937547d12e56124ad4022e93544becc83c0ea73528d62dcb376fc93a3d3762355555a79aa72b1a96fbfb06c81e0302047c435bb5006830660231008f75f30a9291bca5bbba00a209f765fde21b7fc817d1a1d33d98b5d86355322b023b1435b2cd263c83600f2f2d11d720023100cf74d9b26ab38232944f585ff3d9b66abc5e51ef5c338d3031d813725ccabb4477cd418109f63fb6825478d17d1c57910302047c435bb50067306502305efc8c9925e5acab97176696e708cf151ca3895ea914ba8f8b43daa9a58a28415840c8dc3a7e952df0e99e1ab7a2366b023100930016e3601b8e61d37a5135d52477ce5116c9718e5ec3b19ca340a5a58cdf7b3848fbed60d65c621a81b44bcefe92b60302047c435bb50067306502303d38f86044acb1dba230b2458ebda2cb20275d903620a656cc43c59b8dd4918e3aac1b34e9ade51ae18c57755a5db6dd023100819df10352abbaed4057772f60c720cc78b19133d5718607d433747e96221c022be47c2e4500b9e29937ce2c246963350302047c435bb500673065023100845af08c7c6964ce337afbfc1bd2b181c566035e06b740864828475d1d2ed1ebf6c2a51dc44c5b917908f6c5cab542c1023057292855842aaa8eee172507df0d1135df315d464ee5d4ab6ac78845c1eaca1ba268d17a3848fc03e6845a7e34d0fe340302047c435bb50066306402307530f3112d8d937a32bc5b81af24e05aecf725217bd0048acf486ada47a86672fe3f892aec8d9f79759ea689216483f302306269a17cc1feccfc90a2fb0f25c9d7cdb7aa33c4f137a51bd1e6567449f8df597cca52c83e0eaa5c3111c1d84d7b53860302047c435bb50067306502303ee1c8437623e3119f518defb2eecafe55be2eff96767f8d09c6ca9467591932bb57ea8d272f69b0d985111501cd882d023100dc640cf23e158ce31e680f6df1f8ebc9e10f193eb42ea596b7ac212031bfe43910bd7fb36689fc4463491cec74817b930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d064f303e470f586e5a0f27d7a69f981faa2ea5afe1f1a03b440c489fcec8c6216f3a9ead45ad80ed645487973d87319023100b2f2a3da4ab6c111422be7c939826f2825d9cbafa3e7a1ad6c32fd6c4bb02b28e06fe9247d253f4b752119c5bd5ad17c0302047c435bb50067306502307bddd4624ddf26bf7dc8f9f949ce7ba6303d43fcbb319062d86ef16fc90849ee66a864a81b0e0c6d54116bdbe7c7efd7023100b308a067232f5b9f1b1d2f25feb17af41be4ec90b6f9a1ec75b496fa510c3a69f3cebb8d4583f76174b33884c3e189250302047c435bb500673065023015835b30e160f8a834d5d4504be601793d1ca8ee60c78f927b9369d0f8e7e058d54d643c4dc207db5407f3571ee072f1023100d66a847141632c5bcef02908cddf49b4c760ebbf7ad68bc3f5fb2418bd66210fd49ebce682f9b6b85a3e0101e43381500302047c435bb50068306602310086ae8f787b868d8308b4044b1119311a01f8cbb67a2145f06738aa53a66326e2ffd780bf2066e27d8b40f7a3ed629d2e023100eb8beca28854c7139a38726dbf424f4cb5806b078689de320c9eacbc7eea31d0f8d19a7c23dde538e7e5ecbe9b2826a40302047c435bb500673065023100fef0c5e796ffb9abd7f4f7181d7a185c39be1725adb4978f7cbefd646dc3840f06c912daaeadf841c0b3d2a7aa357239023001a054a268ffd141077e57c0f4025f5a9865168f78c7da31839f06544925e9a13a693ba398f288e127fa4cc173e805d80302047c435bb5006730650230207389c82556ca9dbed8c491e30f4d9af76e5693cefcd7036f029f0fead4e154730a7bb4cb99dec74d52a2f45b8049de023100f24c2379f3e8da1610ba21c53d9cbe2bfcb9586bd86b10358cb342eb5a34de5a51593b9fead37ba521f99d1001422f040302047c435bb500673065023100f44203c97c980deb5cf6dbd862a0efaf9aef84672308a803e2d6168e5809cd2793a51ecb015ceb1121fdc32ec4513336023048c1a2cbedb4f22d35eed094f65e6797c0d76cfd3609bbcfa7ee78646de0b81164190041df3a8e6dd73c70eb912b623c0302047c435bb500683066023100cdd18800d35556e5794912b1a09a6fb58408cf981a53602f8fb05d765c344463b389441e58eca8e6fe68e23560628057023100dbf7f4e5f06e968cbbf6dfce4d5fdc99a33067c9020680f04ef5eb8ec57c60e3ad6b0c82a43077c40622907d8e1d6aac0302047c435bb500673065023100dfd013a1f29db81aab3c668642a2bb499a48a1cb4ec9896f8451c9210ec94791d0e369d61797f326d7cfb2a49ed026890230546cc24e3c8174cf414ef727d260b29ecc1f391bc99b10f82f602cf044c4ec19d1c8bbc3c92770d4c8b3d7cf79b9eff00302047c435bb500673065023100bd1b7969030c066e7983cb08757dd4eb1113ec56903569dc4eefa6f32180d2f5b1d120dccf7a7c68d8eff3cce43bf7020230317ce288534b9ce8551e8fe705b06b4b628ed23179e9632699dce1f0e60841240b42710a6576d327650296b7873761f60302047c435bb500673065023100b3707c87f564b40c2bc6ec36dbbd1cfbeebce598f0dc7ed30f02513df214e1ebc8279cc058921a0f7bb82957fd42b227023021b159c761743f157fefc9cd7f1252ee246f2a2876733b0b7380ffec434081ae0b5d5de1e55144c2314f8bf95dca250d0302047c435bb5006630640230628bce9d33300fc50fe61a9bc2a1929b35cb3d59ab19370e58f492ba2d15c4a837f1c4e29504cf8455f39003214959b902302c5bab87ebf44e931bb1057d8c14c2671832d18bf55daddc77bdce2d286b0db8e7bab1e60a6bfbfc648b46d9abed166c0302047c435bb50067306502301db2f91d84cbd6e1d45e80856c4dfc31e60a0979d29967c8c1396a7e44831f2735a4d805d92010ac60a582a4175c614e02310090b045e8d7b4bc831764a6ebc80a887cf3323a90884d236d07a91342c7190d7aa623af61b4dae2028204aeeaddc67fdd0302047c435bb5006630640230506d1f2edeab4bc5fe69d914f402eb989a5171f5590486a933f7266e018b8339bd79eb33662a0cb1ebc8a39ae581dbcf02305772e8998b3dd9ea5dd7450c2ae496e62826940241818caa468de280c4822ac70776b20823eca61ea0f89204f9c52f480302047c435bb50068306602310087f2ac1fffc147cdf3a04b3804c0e4feb4112de0d2cfd5c5b71fb36cfd70eb775700b05ceabdcbf2646f2ee68f8f18bb023100f62f11d23f886ce5eec4fc32c747cb766ffd64ce291b33be6bd1fd4bf19cb95a3accf928cef615e44fa4369be528d6f10302047c435bb50066306402306ffad6b7e50e3061914f2014885563a62f5aaf0717f37abece2c6c93ea5c03c6f10d494e560dd443563292be458df4a9023047b648a80447ba5bd22309ed7dd2e61fb64f4615d2b8bfec51c085a28bf66bd7c9c2be37cdfa7247bc3ae7bcbc1bde4e0302047c435bb50067306502302937394a51bf23b6ce2fa60386360dc39bad4b67394b24c304c8311ffd84f31ae9d6a6cf4299758acde2cb86e59c43db023100f197d094bea75b6b08da3575eddb2573d2bc96d91bf9817932e6658cde5d211dcc9dd70aaf2e573ee8f82cd753e75e6b0302047c435bb500673065023100a7351b7b321006931bfdeca8958ca836b234c70f0be0df6a2feb7fe4806d0e78863a1fb29614d6ac142cafe0ffa7d83702305f24bbff445c7626a130366a9e3b33a98a9e159d5af4696e7054b1277e709914033d01fe1bc82a2f354b1b99a6b486320302047c435bb50066306402304d9b62c0ba0dcc5fe41d066d7814a8b40aee216e39d9e18b7d73a86d7f7de94461375207ef485a5ad7d58558ea50405e02304b5664f204f268c24a04bc36e2966f5fd4157c6973c0fbe411d5f75e297385c78197bd45861a74958cd860f237f63ef00302047c435bb500673065023100c7140d52e96452e7ce8a538f09c3e93eaac460d3e135363b96ea33634ca6524746e66e78869b4bdd74b375ae5515b79e0230703916a2c3ef27f8dcfcf45e50e6a49b3773ee3df82ba8a86acf1be4aa0298099a303c1df366233bf8123eb601571e5c0302047c435bb500683066023100ffaef57b8c8c12adc000b3ff4406b1497c93f0ce4350f1445a859c88685cc42e40a06f082707c59bbe9d078e4ae9bfae023100b08d134c4ec73e86e9ddcfdac469d1173156e7d1f2064afce634b13501b33478bf76912608cc68775b9a65fbe68455d90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d05bbcde6856f509b769a1acd64c3f15c5a3da42bed38802a64e5fa790645d81beb3e858f48c4a0e98a7a6c44e718fae0230229110fbe38ec265f82a758298d7904e1b9fe3596767ab5c984369e2b8b7803cde0374302dfdfed14897e611536f0afc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300a932ecfb0ec2b48fd3bc3ab0ca5a6867806ef993c1993e6d2e4007a3611180b7383811e7244b9ff58cff3c139268a470231009b2943418917c363c4d86b79b6f24fe8012fc6f5b0e42b4fcc2b3eab48d2a46bc73a2085b3ec331183c9573a6caadce50302047c435bb50066306402301b85de07735bbfe7d131ef9033c363071abd92ae7e59cdb67561619ab744456e93bda70626f931e081b0662e3845356e0230646a987b9ed1b27c8b0ce88043a30b9a2845bb91b5549441a01bbddb2916f5e2af7c7773d0fabdd64b39b0aa31d6afa10302047c435bb500683066023100a31bfe2fa330438d43e001bbbf39394858aad9ba8efb722de1c8034ee3a2d18e38ef9f52cdb1efd1b0c815a58e204b60023100c568451ff9c3360590beff0479bbdc4acc6b6c5e73e548bf368faeed4b21e4f9a131a8ded533e2a19cf38d562e77a4990302047c435bb5006630640230410dd392cac715588377190415585aa961632e0bc750cd36175852b9145545607d51ff07d3f92f6640f29d3555a6b02f0230240698185fa38b6ec2eef95c26634c68e315f709a20bd6b67a650a3065107d45260acf472b384eb295bb3b8cea5732db0302047c435bb500683066023100b92353873cd22ca4bad08c2051026da12ab035e638b90c6e7056211d7c489cf9a88cfd85f16315204389ca785262c773023100a8990c98e227f28ab3dee9fd0dc53511fbddedf647f3a8ba18c56dcfdc7c6ea4d74bccd0886a6238457428c9de918d270302047c435bb5006730650231009335e1053055a45488001e6ac514c0e6be48e2949a02b3d21716e8fc26bbb092ca8bc695b0134ffbbd83487e741a7b66023058717fecc9a7f0d479e0bf1aaa8a97e3007841bc3ba1b6650a3afd5111f7db88a3bff3c799f4b4e9a438845a2e42a4b40302047c435bb500683066023100add1130284785897c45ba509f911313013a61ad65cc4e17d9385bf04b6ac7751165ae96266aab85f5e7064d18e4c2584023100f4c218a02163b7d5ab3d4bfe13ca6d8c1d6fad9f863fa827b8b5584a8bd63e8d5cd3625d1d6536eda49689cba69206b70302047c435bb50066306402301a91e63acecb70963f75eb6a45e75fad531cd4dc98830abef9a7a62fb84f27fee742dfcbf7aa87e16ce9f840f70c9b6202305881f2751526388bf29946ad3bccddb56b6256d34dc9eaa2f36d723c1871456650871ababe8c5b2309461de622f9fbaf0302047c435bb50066306402302e7be5e1ca5927c5f37bbe6f1ff85b7a2c73105b953e536a0f93cf42181ad10db3bbe3a836a00269ba91dfd737d3739302303b46878b1d6f16d6f6aed8c7989ad353e142cf8a581079c93cc49b8f5d1dc4264cf5560457499230939d5438b34873aa0302047c435bb500673065023100f53b45dc13cdd01134b6824f3ca7f89d62dabea30497dee75df7a04bffff326a3cd4d30a839ecde25a1475264d7b0a2a02303dd167031b5d92b41acefb83f93bcb6daade692959a9c6d9cf73575e07e17dbfb8720c0a656046f15b0a6bbd48010a560302047c435bb50067306502301afdfca370e69896b23cacb2e34eea4b15ff7cf4f6a4704c249e1abe5032175ccdada1f70fe04c6a5304a52d95258325023100837815afb3686a1de6f142f078b4c3622cc2ef461b28247931703813b20b915803d583601c95727166cc1e4e6cbfb23d0302047c435bb5006730650230327742c68d58ac2e0590d8358324f761eb223155eeb00b457b9e6076f58b09357227fa5c70f48bca90f14342db00212c023100e208fe21aa093dd990b54d1dc21b644f517d8efc9f1ca53249daa9a534b61b4b0a398d29e63dd058a99e8522c30548c90302047c435bb500683066023100e86a397aef0647c99cc5e3fe9b861a10691c26b038baa610b178591841bc7352d946b360c26f8dd1939d0808e3f0f099023100919fffbe6f003f88ba9fb666e58d48bf1760896fc08aa3d290f962043a3f7f83b02bd81df4b982b7b6707b28ef5707200302047c435bb50067306502305855f77c11301e78f0bffecb08c01a6915316a776a4f00be064103a9f7bbb70cc56d71fa55317650398716d233613305023100dcd51474764209a9230e809e88255ca2ddf974169994dd70455066f2153efde2cdd5ef0d159d9432d570f1bd0b1595210302047c435bb50067306502306f9561f696be4c00683c9ed6274b6c13eecf9dff2525ab0d1162202e23e788b653c80d1ec6d6abd84190ec31b1c6b2b4023100f3332ac4bbe4f7c0b3fbc009fa4ca472428269cf62bef443f5991345e2fd73e6bf9c53e035bed28cbf2a669d9c1881600302047c435bb500673065023015e7d0be7b3ebf85680900afb10fed9d47b453120531ecb379a1f81be22e0ed53c97f9696120f2d3e7fd38c339e5bad4023100c0c8e404f69328f62958626db0fb419b4a0d4a1307d2cdf64024f0ff6878796ac5a495d3c02dff871a3e482aa11c18030302047c435bb5006730650231008056030874b60bf3abec92f18bd4f56211263756e67c9c769e46721b91093bf9516146a9428a1c7728e156683c56ec1e02300cb70ef7c9b1b9d31c4032c8452039bad26d440ab0d1b5cfa9d9662d1fc0c60a4a93ea1553f5af1176f3912c47198f930302047c435bb500663064023011c085754ab1f74c4bc44289509d59560896068b7def22f9a58ee0cb43a61eb67f84b0a3d21c6d92d5d26c0f3320855702302bc66d8cacbd9717e89ac71d22be30561fa9ead57be0c40231ab0af4177b1b975994391516d30147394398c39a08d2820302047c435bb500683066023100da0ed6dc4348b540496e8048e7ec8f1bc56b5067492171f2b17d6f109f9e5676f09aca436e9a9b8416e56a951a9672ad0231008e0c4d0d54d0a33c9b088478cfd7670c88df3d2be652a3a75a124fab595b551069a517ca0bb62c8f848e010810cbd5e10302047c435bb50067306502306eac81ae2b9a6b211d0de3db553173c1a7ce24d0f04b9c859b25b06b329a843059aa4e79c025d95817f219d1cfe708d60231009e661544231d60eac7469331cbcf652de54793585d023b07c4d09d194f4e3000fa03db8c009b8c953c7b2ac27f4975ef0302047c435bb5006730650231009b30c767ebed381336365f25712c4a024cbcfb73736cc6be4db9f646e0c78d4694f4120adca6a331c321ae0c4999074302304d78ae8501238435a043c285a63d94154bc8af1700b8d77fadd5077d20a3a9d274f3fd64dccd619fc5aa749d790eaf2f0302047c435bb500683066023100cdfc717954841a3dd6174968362fb348658fecb346c6b1b13b795ef8124f15f740e908244be164631e2b4f743dbda10c023100c958643ac5c52f4cd2329fa9ac1be638e4dfb5a8e29be365281da82fd93d7164219675f627e425235904c45a8ad9f8660302047c435bb500683066023100c337442180e2e482f6e5fc4226aad616d289879224bb45ab153ec9b5009f47a7c264f908ab75279544de858435058b5d023100eb5ade47a8eb858fb82138bc52bf8126ed0e7fe80d68d20fa6fa54139c57f6e36bb7b66a1c936008f7a19c1a7d6a7f520302047c435bb50067306502304e34dd920780104af26a7846c77b0d6f757b1c193213045bf88ab963ce6c4ecf016fc00eefae9bda4d8ee11a548e8b27023100ab830e9e78120149c8be022d09f39acadc444e909ad9a008aa991167171bbfe0ca645becaec47dc9aa8acfaaa8747e2b0302047c435bb50068306602310087853e0fbd7c6b26dcaba2ba5fe169e322dd85fe47504f7e69d726d53355313222f13a6f3c92d9824dca60431fbc19bf023100884a7c8c855e2dc8bc18b92b7b664ed1e371fab3bf8164dfe9c3e56e136690cfbe544cdef05cdc0eee5f44a5b7489fdf0302047c435bb50067306502306b93f6df177157d872c56cbc3b66d454c6eb0180fcf4afd2dc2c23269556195a0bb73fbb36f38bd85ad2e22d5ca1d73d023100faf6224eb3df80d83cd54f1ee156d5bd7c5c582c59b39743f15fb12a71e6eb1e2b72034164b48170808d31cf1a08a7f10302047c435bb500683066023100decab0c0d7207b62bb9a7cc59cb559eb7a36e3bfd8891d6722a821070ea00718f7f77908d7279ae695c0b5783af2cfbd023100f7bb7f320008dd5f8711411b50a7971d65e80117c873dd49e3bf59f59d655ae04ebf1711e37b816af6452f345158db610302047c435bb50067306502302104614e889c2535b0b0bbb8bd4ff61d41b605ad31487086d8ae2340ab68c732cc19cf183c7b11a3bf03f4e794535be6023100b9809daf0f77f64b3e7f9e9f73ae6ce22dda97ae48b211e53967f768e38a92ecf3ded6b8a6a6383bcbdb871a77d5ad270302047c435bb500673065023100c1c784e8fe85db11a266d092eae83b51c6e7420ae5c1fc2bf710fe698370f4a8a1e2b9e706df4182a946c807fcd1de6b02305d02700a0912f586cea0cdce869521e9bad34bfe808e80112ad0a614d9f4624b1a0d33afe985e7d2ca1266560817f7d40302047c435bb5006630640230450e9c49d9089c1c432130667bbdf4f7c7a80800c465095b5e1f32102106f6e608e931c99472b6ec07d899c583ef819b0230461b836d615462f99d5659426d24fad9618fec4d8b5432530de849eb6ef28372198c928f0788efb832d6c934c635d9050302047c435bb500673065023009d076f8cbf9b2b00cfe5a23cdcd6b0e387d9f4ad31808d5a567d2ec599cab310fd378f0e2e5b1e5c990e895bed05f83023100dd66785951b588607c5b34eab7e8be5494c534ce21efed5d68c8ddded810a00bf23fc8692532923447c55fa32bc7a05f0302047c435bb50067306502306427c4535107e5e37aa80918e3d306bf8e20ecf4839d6332323b985e2dcfcb7dafb0d407d16d0a6d4bd86f5651a7b7d8023100b380ad476ecd36acfdc5154f4d6d506964559002011417831b01c6036c8a120e7f3f7a4b83a56e649e75c3a9703a3ec70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230513d62378a3736fddab6681b749698316a391613cbf31027ee6e0e82c7ea913c150830a91365e01bab054a44b7998f6802304f4dc9e2fa9d1e08c09a921af1d7138b809b915fd63e45b97ecaafb97f27a835a80b5902943aecd31581af30c1d9440e0302047c435bb50067306502303ef60403b6831e501fd7a6b4343607bbf87298c29b57ce186d6812f9ada834a7942cf13ff02c2e9d597bd975c24d7f7c023100bd37e3588c643a60e840d34431b20374334656131e57dfa1164023411ace50168b58b9a060704add69772441527c75170302047c435bb500683066023100ec52fc58c8e24b0cf5c9fd1860b07aca8d9047e06dc02781052109077135d3d483c38baac75c32f0851f508b5dd39eba023100fd15c7c824e5ce4c4f3b7622f5fd4d02bc3679e5157cb8ec2ffd61c74f17487c5f267b75d52fb7344cfa877a0dc34cf40302047c435bb50066306402300362544b89ab27a3dadd9c0b4affa9ff159c5c987f899669f6a73de0a016eb94ac30b5155ee0890335dc2b87661f9ae502301a2be06b26cd81b508f8b5658498158ed4c26ae1cd5159615ee69e7c3d9acb147200d2f3c03a43866d646da14ead7b9d0302047c435bb50066306402305d13a5ba8a56cde84a92fc0a751cd5f94e4016d2604c61eaca70551c59fda4c05a4e9301db41981738e3d78a9123766c023008f52e044150643403ffcead56827d82492d9d35401e919eb6d9d9cf6938d42f83baf34de3f896776f2a4ed90ef5b1330302047c435bb500673065023100a44418fe526c2ea5eab631bb550ba286a630c01f39bf80ab3c3922149581a60b1eeab42ec3a25d1ce61670f6c4161c1b023076d35f2dbf9eb76f58422da15728e77721e9dada48a7743494e85a3106c642b696577856f70d7f83844a1861155b3c890302047c435bb500683066023100b94c429ce77c1f91262c57f5d2aedccf79f91388f19a5080531f4ff9f4d65029566bf1fda22e5ebf9d453ce4df477d3e023100e4c05736bbc0dc2b00c297a4bb79027f6ebd70b5a76a61d55627df3e5b6502deb9a189a72b8615f1784521b29aa723010302047c435bb500673065023022afbc90ee238e374a417465885e272391dac6f34cf141c18e920f73897616c1ecddb817290d97e3e9a4f3a1dce997a5023100b63f89aea6feaaced9e59ce13fe9493108bf6a18dbc7a1dfc4ce44c0679b740417dede802595ec72cc96bcbd402f1f680302047c435bb500673065023100c92d99ed8cef51b7a76dce6b67444594df278887b986e93bf7cbd78b16c814e1cf20d7b28d6d90a72a5902e1da0e78ad0230021a98e6a16055d50beef536b5e7390039edd70995d80e7fe8a91eed95a5c5ec9d4d8ed571e621942a2524d2ba1bc4b60302047c435bb500683066023100a699d4d0846af00777b7935713781a031243f5716007e057572940c75791839e757b7be0e4f33f0d0c5d8409d6db9b25023100a840d5649c0de53cb9f8fb7dbc8cbf2efd9b4ecd7c229520a63448878c0dd3799a67c14f7b3ab702ad53c0c072b8bdc60302047c435bb500683066023100afc3bde21b1be71e225b70cd76dfaef396632a8ada93dbc3341104038975cccaa28fff0e0e2d311cad5e1fa954dc8219023100e50d5201a1140620ff64bbcf365e6a0f53ee57e1e1b95ca56d0c89e780f43365b594c4bd53604f0cbd6120c50de4571b0302047c435bb5006730650230340d03156665f589239b0abef59ce9faed23b32be7fe8e30b2452ec39e29c0700bb1df946e10ce1237c7ba4719c49778023100f4376fab1cf033fdb86d2cfe66e47b70b5e07df1bfed3e863f1f3ddd72704bf1c57e3260f4d00707499df1ef951405960302047c435bb500663064023076f95ec25d9613b447f2a4dc41452aecbc85528db0da602b9017f0c6f6ca537bba0dc0a2732154ca3ad485f4d3cc9bf302301ddaa5d825c587c270d95716331345d90dbc5d9392b761196bda1ea69ac292d84af3b91ae95e9946a5cf7e265cf933a10302047c435bb5006830660231009da46933958390dadae535176e86a461bf2b1b2635c266ff8f4ab90d2f42db56c079486a9ddc20b3d02afcade74ae641023100bcf75361056518dcc3875154c4314e1c4c5b59c4c123f1ef83d5fc5c0311f5f3788b581eba7bd0901caf6573b57c24320302047c435bb500673065023072f3f3c4b1da4387e8dae72daffdfffa4c8700adc8d816ee32951e46979d3a33c3df831e6c6c35b73e71598d4b5e0630023100aabd7d772972f5feb4279b61ff528d250e0e0e9889fc91005c81a23f633eb0598ea738377437f09aae12ffbf3124c2d20302047c435bb500673065023100c5d25718b1ea88a496efc0ef38f103c57597a27a19b66d6ebe91a7975d7910ab291508f93a446bf0dcb86f07cb1195af02307beb5f6293a267b691e84866dc8f9145641117940dd8cf55b26a9f550e6f6bbb5a861b3f0422817fef9767c329bc148d0302047c435bb500673065023079484602291cccd8b46b517bdd3fbfb6ce9daa6ccb0f4fff144a57481d8560f526861e5554d2c7d174c61d5d1866a0e0023100d87f00808a37a03416776b561f31ae62e1eebfed33df3f18f991bea53cc61ac316cd4a3987103bc9a2e36e34f33f680e0302047c435bb500683066023100b4ba7554294bc7b05cb5d0a59fe2517660ce34cf30e51d98c7ac13fe1a4ad23e174643a84736212c7c439d451e7cef84023100fe7f92480865c0da5cb28c6c54fee21c3b3f35695b86cff57cff54cf26babfb6052f0ef73f64e60492f310c5c0ff38710302047c435bb500673065023061e8b78e5f40f0533a2f9aad65aa003031b98096218fafaafc61680b5442b1734e3a4f8d88bb737a574d1c4b6c7810c2023100f7686f214f62206bc55da280e6eda9e8b147040a49947162dc0586e73f164b920642364a1f8e052b3897e60e8eb3724f0302047c435bb500673065023100fa2344847b624bbfdcb01afb141442f9b76e508210366963a0c061eab9571141197bee371d927901329025940ba19001023011e7056526e58a921fff7333e8bdf8a7bc4190df19267e1572c333cab7ea46eabce6c0e751525e876e01e55d9b3e1ad50302047c435bb500673065023100f51d5fa1cd49e753ec3f04812cf6f23298c3ee00083afd1c573a1dfdda99a6c5a73b8cb52f788cbcf34f85b33556815c02304971cef8bf180f1f1a1969ee64488c6f2bccd93d188b51add28a0a444b2571787e6d063174144c2d64310931694cdcc50302047c435bb50067306502304a9efc66ba68f461dcd3ad4c76db8a0d7345023e84f9f6ffdb9d69ee8433ee2a4275a33424043eb597a1c4f29cd807d7023100acf0b9b4de0b83ae2b783ee7dfe65c532817c8b10af0726896ea201913324d2831031f58cfddfc26a246352fde545b860302047c435bb5006630640230173818d077ff6e6b4b450c5c030fea9418151501257abb70df902b8a4d14603895d2ccab32d6b9b8269446fb9154ad6302303228fd7814b6a522453874c74538a89865bcf13b0b5605f7f2556ff762c8c9af7533c0eb97f1a4c8c2a9695986fefeda0302047c435bb50068306602310091dffdc8fc14ede5cf85070f74f0406db40b8ce0f1f0b8bf6a40e7237e5fec73275f71ebd7c3a97a796fe71b16e918a8023100f580897d408323a0821bae0e25c1a2e39fc9c59b4130fa69270282c64f5605652d82524427fae7f69052c82a07e224740302047c435bb5006730650231008cf5d6b829052befb44a18c4e6fed6ac6e1bb7e4cff4d2c42d2d97e0df0f196e3adf06479a66609097b18a4ad741beee023050ff5f82f53b4f4a9e968d34e88ee495dc984234975482c82193774a8c726c81b3559cdd5bcf1f652395b50a0904ef020302047c435bb50066306402301591761126da4163c1609b48c9e5fb0d58771ac2729ae28022e7292886b37ab3867662fdd9955139ee04ff1a3071349702300bd14c24fcd429b834c3f30e08983149c33cdd9d96fc2666c93cecdb32e17726a892b8bf5b3fb8a754e7989342358b380302047c435bb500673065023100f42bc707bf02003a4b5d7e70d665f30a3aff1c5b12bdaf04e66203a07bf5b1618b61dc0c5740540e26e0749e0f60ab5102307bfeaee811ee34d3df99a063bfa34d48d07498a7da38b5bdde1e7882dce7bdef7b8fc81b5d94116fdf084660eb9e045c0302047c435bb5006730650230368e06c0c1ae19fbe7d516207a39b7c77ce86911d8734567b80c655d233a8dc9e812bca6e40d283a5c40211a66587e87023100be22fff9238c493aa717e6e5c8a05fb5a63d41feb65604bddf34d4a7ac9be7cce79af764cd95e39c98a4a04068805d610302047c435bb5006730650230288ea35fc2b26ec85b589b02b417e7ab791236a5ee91b2a2e99f7eb233df5d432234b1a7607ca1e03f51bbd6e9532b37023100e118027ecef44dec748100a9c273984c9c50b3f6ca4bcc1888a0446e93af2c33f863cf596a4a56fe6bbd9f12121e479c0302047c435bb50067306502304b87a5e0fe7b61aef2502f7688c9fb9b5251e380424ac1ed6ddbdbc7d081b104a2cefa55ccc88876fc6ee24bd54abd89023100a03b577589a08fbbfdb834534773fd979096f728e02d5946f4f4eace99792f8c78cc498dd182c465025a89e081e2848e0302047c435bb5006730650231008ae2d23929d01f4c065d637ee8e64fdd4377990f5e01c5e9227bc549a59b69a2613c415e8e0169a5c754afb11ddc5e6e023038af6affe655a82c85f4b481f72d69c40e6916bd85b37587e0fe38a92ce827ba389613f17d37a4264b2ba113e76a79dc0302047c435bb500673065023024b23bd0d9a4ee6c26b7292fd5c003ae0d3033424298075873618bf8426997b0a58268881c3409d04bfdc086900c328602310092b4c939ed52994862bfc9372766c9611a301af8ff390632e5163a1c49313bf14368f15da0b0fcaaad24add5869746df0302047c435bb500673065023100c640e6d68bc74eb8ee55399624e6d8ea4847d67b06d9c18e174419d6e030eed37ac72792be7995f53d6aea3ad08a45b802301aa752a127aef68209f91dc520cb6c926ef171ea083f5fb131fb435e12447e0c6c822e2da1909ab7755dba22000e09010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230510f3c7881abcf56d1e75b86e95a97c6f9576bccc9a5245cfb8d435e6f0fb29e37070f59ef7cbe87f778829b4012c4d3023100db3c3ccfdd13d2295719a2e253bb5dc2f2a5d92e5dc0c6ff3c331ffc77b1f1a9532ffd7a1c6556f5a84d838e795c51db0302047c435bb5006630640230301ec0c99cd3768ce846244ca922d44b615194b355a8acad719835978e45612732fb51217033d2fe12d0d03412d6df8002304d25972e5a32a6543bee393969190d268785b788d111c3e122be56574ab03fb1b216a013eff4e86eaab3981d7487ac4e0302047c435bb500683066023100f620afb484f120ace45ec0e340e4a1f19728704b97376d30adc0630a5e855fd9a6096e0aa8f32ca44526199a05c37ad6023100ab93569644c1bf5a31f69fbd531c29a00715473aa117dfbd089ad58d982607583201787fcdf072037c60ed399e7df5080302047c435bb50067306502305894ab3cf553313c7420e254aa0d0eb7337d5a66087169a77a5e0a2ede6d886b700d9bb9a0bd5156d4590197b7a1831c023100a4921b65182ffa684941464f10da685343100d7781026a0df6d5648c1d2986b9d28229488e6b11877cb84c658bb4ea140302047c435bb50067306502310094b562e0f5efeffe8e77a644d7e88ff03aa2c50f54aa3c9759497357151432b6c670061185829cf1cc96304e2730eae302307176d5ad1071854657ee315bbd0bbe0b215006d5e7a4162fbf7de509d66fd107177a2b60a35bf06c342065f41c306c690302047c435bb5006630640230288e08f3470c49b8422424a67973b2bc156964e33949a98093c8cb1dd12094489136c655fc3b4c86f631a1d9a6f9608602305f512b61bc1c8d74bc7087e22909b3b9a4c2b0d3baae38eca44673cfbacc7702b888ef35c33bd675992cc460df2ba12f0302047c435bb500673065023100eb056e86702c52bb4f56b83f685ef746626d060de7e33a0eec7b243d3740a3eae1a32b026b40ec5984c2021a008426dc023003b559ace30e4178323065bcaf7afcbb19d575c0d093d3818c8cdd7ab9a1aac5d33fe480d077c4b14f04023e3c29876e0302047c435bb5006630640230088bdafbcf16dbdd5178a96369e1c5436219e2941d8fb64cf848f8eddb619722681d020279fd72fda81a87b9f6a2b1540230528e06e766b573ed1ffdf8dd856f7067456c66b20f0fedb0b82c03a2b91a4e1785d892f8c994fa63eb65765563bd0f5e0302047c435bb500683066023100ce201282dab0aad09d70b922822dc51664f684cf7631ef1c611e6604bc0f60000c6e1b66ab2ae8bc1189d9a024d0407e023100bc8a440541823ba67a4e2936dd7c86b4da309cc3b61cbb4f3a90b07bdfef64b30c310b0e99cde9af49e3840629c827fe0302047c435bb50067306502305753f83187696c5fd26bd9941f9fd4217489efc014cbc577ee9eae7492b9f89bed8ebacfee750301bdc49abf68eae6c0023100e8513119ef2ce2c1958da065498ab29e01d946ccc835d0a8335dd2d040fc8a0c0448df9cc17109bab33e26295a8988370302047c435bb50067306502306c201ce6d6b118e108b0051a98817dcd24bf6c8ae63d76203ed71495797004ba8371febb8ef2b3cc9a574f6729beee22023100e86bd7844a286968f96e8af9d7c1d35fb7b840be6d249ba11ee947a50ebdb3e81dee65e83d3dd1d275d6f021f4582e8b0302047c435bb50067306502307d12ccbd5f47f04a23c56ac50cb159b46ab3a6f78454f9f257fe404f4a6a8a303bda94f7be04d817b1ea39f8830cefa9023100830f44aa704cd5e772a67f3c95b6e85e648d9c80ee883a31a3ce4e98dfd305eb0d34c64536a9184cbccb2c97a724de880302047c435bb500673065023100c70405f012a6273ce4cd855e64e6e242889cd38ce9f3536a433f776499d2f5e1901b2866c2ad278fcdfc064ab732e87f02307c83483ba68e6584be7d529e42c94e423c9c4f5d61112ded0c1f5aa1b4a892c6d60d47b7c7455bfc88b4060e814d48160302047c435bb50066306402304515964fbe948b8f77b85d423c87e644f66ac9d1b01b59a837e316561d21ccf64479dd173c5fbb8a357db632ebd0710b0230494713a2367bcc1d69edbb420717408d2559c3372a200806245f0abf35facc6e941fdcb29be68e44b188a8b428bf8e8b0302047c435bb500673065023067b25036c83c8fa9e388212c057c27104c72465f24539d398c6512d5aaa3cdd87ff3ed81b20a8773ccf928a466d8f7c4023100d3f5cc3308e821fc1c5698dd1744f71f05a3f2ab4a42da4e9813b35122df3db8f100b8bb6ecac1355670817718b7ca200302047c435bb500683066023100b59499e92032e66ce66cb94d7ce3934f5c00bf851fda49bfc816f025d83d6471fc4273f88cfd22e98ee8dc5fece753820231008a903070a0f9b6ba1899d01d3439d38aad3b485707493042eed448b4f2320c666e1798577e8129fa7d1bec6484c46f800302047c435bb50067306502303fa4467ca663f44a5e7a039ea42421a9c85e64a58b96187730e769646a8c5d49560658d5e867a0c9287b79cd8534f47a023100d0086bf1520d46cda0144f851241bc73708ba0af429bb905ab9af7bb3e61579aa1ded9997a129724bbdc0ca9fd25e02f0302047c435bb500663064023015234e8bf1ea43916aa75f6120bc95c33dfeb08f00185cc84cd451c66f5420205ca306bfdea6413f9a3c44c228f4b54c023000e33ae50049beb6517f93ff6dab2d83d7decfdab5870f52ae21395e8136741e91b5d9dcf2e21f1c8d6c5602fc1969620302047c435bb5006630640230075ec38a1303cdc6ce31cf95ad30753ab8f45f52bcbcaa402ab54ad8937a7139cc86204a96333bc245d04333cd9e3002023046541a7c87cd53d075c31f5ee716845ad737c2a88ec4673d5b454c5dd2340d8c3dd49ab0b489b26127938854489c3b350302047c435bb500673065023100dcc47b53e112e3dac2808440cc4d01fc86d7640b64fd97e943a8c1d7ce72e11cb8f465f206e17bf6c2026784337dcf0e023022b0aed46d9a1a3ebc1a2df29aa1aedeee74464ee90696237cb44c442efccf1724adb03c07a9bb561de9ffa3e335945f0302047c435bb500663064023066ae0b3de1d12ae8670b8e7f73bf91c79234ea894096c516bfec3e8e7dd338f3056ec8067597dfe929ba287555626b23023066ea5f22c21466a3186214c3d0fad4895569fdd2617d80c2d142dd14de436b94adf93130eb2257288a535a1f14649ed10302047c435bb500683066023100d0faa836e66325599810e62f6bae242072e66af4e70d5bb26ed6c52db10285344c1e71beb03b29b4546dc6d62c3cf743023100947e9ae9fad3e050bcf9d200e20a3e904df5db67458b62a3782a9a92f4a058aeb7a26dd27e4a77946bd4c652dd16cc720302047c435bb500673065023100fb6f6480e12d3f5db3c7c356e35e89aa0b807c2f508236ea0b8a05ab3bc6de784eaf4859732430734283c75ec98a518102302ab339dcc20ec32e34a54ed7fb0188b9b4bf1f5b15640f21b353ef64b31241622cced55a7439e6aa7972cdc9d98aff900302047c435bb500683066023100cb6c7d001f3b8c161e8ab4350a081c0498ce11f4bc6f76c2d24b9f1cddad21402ae0a87807235853d4e01988677e5d33023100a3ea8c48f51054f21de4e6a1bd63866407cac66344104d3dbe0cf8ee653710c01401ed87af191ca32e3ca61c6719d84d0302047c435bb5006730650231009dfb7c49f30b98861a71f511b970f0f1416afbe1f96532f235295090f71334828f73911629f9203dec0ad392014dde5c02305c7049e6a92756a39ce85e963af67ea5123fd1d0143ff152422207d16e388ed97ea8cb446a2f531d5d2b9911893cc6c40302047c435bb500683066023100a0c31945f76ca1dbffa36e14292467321b50e8731d301db2d1236e40a991750be4da5b3c03dedb53fd1b7644ccf5879f0231008fc96d3f7e2f18b48243f5a7330832378af69c615fbc9c4b9e3fb951661a7809a2b946b5e8b5b60a7061ae3b1900b2e90302047c435bb50066306402306b28e4ed16bf22cc8945e248049ce5665ad5f93b403088c4ef061aa2c7f762ec9ab3dfc6a4aaf4ebcf60540ad386929302303ae2c1e34048112103ffa252f9c71367c202dc66a7b1a1ddb9cdbccc79a91c1cf60c400d325cdfe618158aafc563c75b0302047c435bb50067306502301906297d2e0c6f9a7a947d06d648c808b009a9b5d394a77d7f439d2257f213f11db99c43633e3bb0f5f220fcb2f7a0ca02310092da2e53b8c97b5d84a2e008aa3464b1bfa70c8bd6b45d5add0fc890c1d44eb4aab750773a749150017232a5f35def980302047c435bb5006830660231008100a192d0112c5ae033ed336dfa93c28482978da44051f519f8ffa6ba4a900ca7aa29450fde578b9c013477efcb33ee023100c6472c59876896611ea84a719e22d69e7be965cbef37f62978ad47f215bf8c0a01ba23309d346bc73dafb3ea27fd6d430302047c435bb500663064023063621f9268a8306f2de37b8672d92e0299d8ba3a4f669a9d838be115f12155a9ac3b94fcde6ee4e5d7ee347f7e9a05a0023014816a2b444fec407b995e9660b4df2c7c0220ba027eb9b092fa9fb54b821fe2120c4e8fc91cbe35d9d6fa14b4a9409c0302047c435bb500673065023100b8003ec94f76f892303fdc3b262b62e0630127fbcee2e87dfb4b6b4bb2e22c59cf15e291f85a5b5a7c16c965678a414702304eb43dfa399b687b4e027fe7f14384053611064236cc575f2a1ce0636c44846753c388ae7466a627e8bbfb98c407fca80302047c435bb500683066023100eaaae4f093830ee7aa399e5a261c077257d153c2a949a4095b3f6ff96af5b851432a5e53b257dc8369b99ae7c92a608c023100d0e32ad952f53df171ebc94ee6b5714e655dda81eae46edbea5c0ee7ab17f4c6711b096f5e7013c05efebeb65198be450302047c435bb500683066023100aa9f54bab46237c38db9710991369bdf8e55690e5de5cb12b34549b8942fa557072ed7c0c6001489511801b31c508dcc023100a825e63fe4c8464f43b573f6373a9fe98463e96a75a1887a9be32adacad71c2ad42b3d89965225e87c97a0135f5fa1530302047c435bb50067306502304ba1941c4479111f7681fc68efb6b43fb623b99f8e086cd9e33086a82e16e19470602d14042d5227b2d3a25aca5b81b3023100ccfe58615ba13b281c69eea26ff5b666ab4b5533880172efe6ad8a3b8ca848a721ae4b324404ef04986455982f099f5b0302047c435bb5006730650230525406d5d67d7b25c46338662d39bb2206d77b577aaa7efdc93ab978462c3c006a21e397f56072e0b70997a2cfd407c70231008f77f8039d7cd6c895050ca96af76ce4e6065e5766f2fb9a44facf5ba0ff4c218219461b7c1a79fd379ca0c482bf846a0302047c435bb500673065023062fb353f446178101a2e422c094a0dd41eb9ba87dd9c56cbb12b8516db60ca3bedca38af7c9033a9925d9ee2651b59f7023100f7929143d6b1aa929db41f458cdbe66fab552279a276f29c0211a20dfd5dc9c59603eb4b24c7bfcfa41119e1f4206d2b0302047c435bb500683066023100f1bf325499bb0335d04c51a4605d9d2fd3d20826d17a9e945937d17c18ccaabd6717bdf70fe8074798142a78d58dd24b0231009544a125f44fc03c8c50f70bddcb354c5a570078771ffac3543e0c9df0bffeb5e8f4901b4ab6778496c9fdaacfbaa7cb0302047c435bb500683066023100db3a66dd04861f4cd4720ab0b9c10ab8851adfc0332f2cab346e03284eed8456c21eb0677840cd35355471712e118ca2023100b9025f68fb6ebf54d7f291ff63002b7ead836b533d3f75d53d5587d572af6bb1faf0953d0924967d683af389df4ff42d0302047c435bb500683066023100b47e255e6fb68ebcae9f706ad7aeacbac094f20145c2fe9735aed3ceee36e7a1d0dffb73c2bedbdc14e733ed40f65bc8023100cec4564212c7e2bd00c266832f2160501286b58f7665578ab99d052d90de21e924a03cc3b9c31cf46ef7b338bb31a0e70302047c435bb500663064023031ce6caee9305e002714c111ce2cd1239f38a540135f4fe303ae24bc276135ed40f7a67c54174327b3cb615d079a4b7b023048ad0f6925ee8966b9b8224638b2822adcfaa0969c2bdc4c337a3435b34c1f73b1f60074319a2d1964c8d4f88d2af2560302047c435bb500673065023075b591abccf837ffab8644f527215293af761316cdc7ae235a2b63e82c50ffacdaeedfd2890a8d5164b427ef5cb455b1023100ca41320c3b6bb9580f9c278b46858696eb10bfd1a78621de3f5cab66a4d1adbd7e1f6f173d96f4632af6576bea5c82ca0302047c435bb500683066023100c90b5be76dfccfe74a1d93a8eca23c3a67358ffa3163eccde6d35c2fdfcc229ce803d6b3a327b94dad832b8e18bb540802310084b0042fb8286b8fa8d038a3d6fdf3bb62c05ddbd6e42ae990a8c1e7f05dd06af7c8c6248b14d5794d24bf6a4bf48f260302047c435bb5006830660231008762c323614c34676faea0a6663b671dee788f315bde839e96eb8fa40536de0c15e7b3103897e21bb835d0ee783279eb0231008243d1086afa5d0196b17dd8635e2a84c59ae28cea6a7c34803ef79569e10286d427952d637b5ad3e37b7e15c7fbe9b50302047c435bb500663064023056bbc70350e9f1933dc0457806ef15e2c1274faf57e4137c5c8948e85dc0c884d2c28682423e603bd950833139998fb002300a879bff9343c7d467123cdfba2b53c1727d49c95eccc83e6bee32f21c41a31de95cdee8dda660634cdc147343a261040302047c435bb50067306502304435bedc4ab46691c6959f3af1c0ddfe645a501c1258cef65dfd54e1ecc7e44240de6cee0574d38260df0107811d5774023100e993b8f40bba1520ee7c9d168e9073bbc1a08075bda47fca4cc3b1cbf8dbff00966ad4444481e67406393002bc3753d50302047c435bb50066306402303f7af544c10106e0e9ba4eba4c1711ef19c43d09f2a3d5c50e509410bb7c6eb9e190d0e6f2e63ed2bee466fff906c335023069748a6d841eef38698f7981fa59be77ace42776706932ae7ac6d57ab44ddedada19e3095b58ab66ec66ff0cda53cec40302047c435bb500673065023100a74041736c61f329f54f83e935d2886dcb1e5be3da85d3de1da7a2bf8de3d7c4e96fcc9a74852ac708c35c93abb26c130230164d2b605712a605d97e8955b0f82752ff05aa177b85ff0ba8bdef43fb2f5b60db8033a6cb7df16a02de73380b93a75f0302047c435bb5006630640230788fb14797de80671b5c34f8e53b7337a14d9337da3e5634335e6b421392f2a27d73a61966c002df98f14768131c048e02303704e22d40186320523336c85c2c0808b8e04987b3c9403d81096b7743c25fd2c272d1aa81a83641078c4b6fd346fc6f0302047c435bb500683066023100ca456da2ab22e019f03b1c20579a00b73ff7494fcea54cee89345f9aa07186b2a1ed1aa53cc4dbfb60e8f1d0387ef823023100f9d626bd716f83fed0266b8aa140ee331057f66c722fe2d69bf71d33ab8adbf1d9497c81ce7ac7844d4c209096a9863d0302047c435bb5006830660231009ab356bbd3cdeee860d97cbcb46443008ff78f2ce71f78f5f155223b7e91f8f874eb6f9a1fb2f9d0969bfdeff54e8e58023100d89f71efea7e077a0b37d3be671b7f382539be280a116f60f9cf16305f0050900f2f6377bec0715ceb1c81fecb03e9880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100901d48606632d41b6cbb8e41a30260b3f483c77001eba99c2cbe4a4d6f7773c6ef67e4c2486bb074344cce659c51e2de023100fbac631ba5be0b020b2417bcf220e5266d22041278eb3c186d62fd016681fe4e70e8a92a24fa0555b0bce99fce5745100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cb0cbdc1ba0068c62dcca5aa366a882b5ad265a83edd0b83ec754498a30e8f5d1ee5e935dacd35b976fd498079d0a14b023100b2104dfeaaf69ed79024c19d2307c115780ff3e07191ede37f6e782ea5e68d766d91a71109e95b2b878a202f04ca4cc10302047c435bb50067306502307aef6a0d403d2d103b87afb3a2b87ba5eab4dc1d25347297514123e58e836dea5d42c319441f5b7b2505fc7776e2aa14023100f7fb994664120a8816307ec73633dfac5de1f2658f07b5913677fb39c3d1e085d25fd5ebd979ca30bd4b9ea9c9a4b64f0302047c435bb500673065023024e98face90bcf9a7ac81da9a239338a8d304cda88336d8c53dbe27833e71832c2cf48422593ef07061a2f22f7718098023100e99868ba4b6fcde457c4627ecf321426d0b63fc0087349585b64b3f9f45bad843c799d3bcfe12622ba0d9e5004b227230302047c435bb50067306502310097eaaa552a2852853bbffb4ff12a9595aa8e9b55c209cfc00adf3e15786a2218d69c532f5533c03fe055afb6bbfe98df02304758b9db5bbc24e8ccc5e004c020c76a5ce09aa1f3a91dfbf6596ebbd3327149a829ed64b2c24a63659811e3e19bcabc0302047c435bb500673065023100e29b74334839e28d8ae59b8ddbfd047fc9a3a8febfef9af3db169314266fe6fe23c88e8f93c2454e8e59b8a3d398679402302b9b502bd2c6d87ea4c1999c6ec302846ea05b59ae4e12d6cf9f4a02f70fc8b1f6e13fa4c96361d958232afa8edd37a70302047c435bb500673065023100e04f1d7328cc0241efe343313913c18e1831c7bea03e7d1f0883cc3fde4ca457f999186008f394464e9991ef5991d7c7023061452a4880480585d281b13271cb6626dedf9f94a4ff4fdc2f8e5a8778465e1098fa78f22f5d58c075619676e96de26c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f133e406934c95c27b2cbf20249ece8e18395157a6a14aca670e9302d397fd29a38fa6eabbde64e6cfbce967f04a6b0b02300b4bec4f353f0195762c3c352529ab1094fc3afd25e0f6b77123bc516111a2e45ca78954766c12eac8bb0a424ee5a7a90302047c435bb5006730650230488c61487a042b2774116d959085cf1b3f5f23b786f9ebdfb50357849fc1e85f114ed2f29ab1b43ee0aa1508fd8e7dd8023100e1213a11a40ee953b5f06b7894dac345e8d10364f727e90c9f76c1e8841fdc2f2c0dd898beabedab87d4f6774a2e3c390302047c435bb500663064023063f37f4ce34cbd6bd468b4ba4a280c3c362e182bbe482f772003c1fe7de6243a0a682ab8e3421db0ff87a390fc525579023069f7d069b50d4e189c9c38bd009a723ee120284f5aef3610263f8c930fd72f869f0bf9865ce5b3fb64f531c3cc456a570302047c435bb500683066023100f55f020f04de6939d1a9bbf39c940eadeead1d893a20b5543b98a785be1f213d172c112248882700bdb727f0ea4eb956023100c6e1485c3b92cb0e824f0776a9f86568f83827b25105e5f169a25ee2d55acb5c6c6c02aee6e63042f47520e1284549d10302047c435bb500673065023005b05a12a4722ca6c66295af5602ec0bf414ae646d3c305f1ebf1e45fd89c55a9cd05bef39a86c1af0c6b8e895b68ea302310083a8aac2701593a93e0ca1759292bfbaf1c15e3b7f91551b1825cb6b5d6299758937f3e3a9a8c8ae13b2041f035b554b0302047c435bb500673065023100f233640733d04997606bd276a4b75aba9d53755ead9547c3897300c1d52045a865cc0d7dd666d30535b4ebae50341af9023038e48456291a0b62985473f99e3522cb2d0c8778a2538b3aacbebe0dbb856ca49d4d162ac478efa6eec9e7758d118e060302047c435bb500673065023100a23dae71b86538b2dcc9eda6119a8da85b20fd60622465e982e62ca29840e39627ba27658b03b84d290ba1f263ecd46702306de6f64f1a8121f67d6e5bceb69c2b817b6183da9d579b9bc753b5167b8d4f36172fd5b421c7b3b148b1844e5693d36a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023028fc58c4b1486530970c24a2472ed194a6a1c8b37091c9ed1ba3691cdd4f492e0e05f52e664470455a4cccd9fd01925c023100b3889a8f191e7e5f137833c90225b3623a3de7e95c50881bf8c3a7f45457fb045a0483439a7db6c1249d79882e3756580302047c435bb50067306502304ce96fe2b7b0780774a1951ba32295beddc2e0e36fbb1214a0f2d387d678a2fe8a54cfed5b88621fcb3256dd7c7e40f5023100df032cc7932552c3208b717f0840715a826a2026d770e2eb155dd9d8f79572390416436a655c7e6d32a5ee71357984bd0302047c435bb500663064023052c9736813971452f2d8bd3fa12d0836afa8582bc434fcef12270f40b16cde252ee4c665027dc4ebae3586f3d6bbf11402302b81864e6e0c56356c57dbd6efe8c6cc949306d226b1520cf8e5e95d732f3dd80c7859ca596db4c5c7ada55bf872658d0302047c435bb500673065023100e220612c44a63c433406893ace68dd75170307ed2fcb9180aa2dbe67972458fc64e6b4ac42d533bb95935aae322fb702023073a14cdde060c40f9cedb1373bf6f198485987340088105ea87905bf50dd09bda958c61ddfb6da83f60e43724484d8bc0302047c435bb500673065023100a05ea898bdc1018156e8a3643103be044ad012eb6a1cb3f44c4f1a4d0a2c2b2f877a819a5a7eb08dac71b0948b37cd32023012bf32e5aeb23b8b043b7c4fe55d8d2c9160c0cc50e43f7b043d4e7b93a0021198663978aaa02c94d7b0ff53f825689c0302047c435bb500683066023100c5c9433b0a13e69bb0dba087ee68c3ff6abab1d6724a19d078b593421190c80a870e2e3a1e00d1b5cdbb987d30969346023100d0568cd6527bd01df1c861f5f6e2f6c5f71a7ccf1f4bdf0b5854386865b8073311203f4bed38472d12e290c698a057a20302047c435bb50067306502307cf137203983ccbfbb0431768f0fd73a87dcdd7296b6dde2f13323905cf1804f3c610633e0ba873cfb471b316c2243ff0231008a551d112dbea2dc6a68eb7787d46e4f77b2874aa6fdc24d5b9206b99635a26a2ad1c5c21eca7e1c9e39b2d6e46e34410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100be0a6e5e3dd19ad06d33e81762bfd1d734ac554b54450cb60f4ed3c631eb5b315c0a0134c4c444eb600432f88e2e219f023010ede7571fde0d1390f193b412a989e9d267f3c993ab370633d8885df69799cd04f70971e4846c972e00509abbc700240302047c435bb500673065023100878b96a9aafa769fa9295eeafddb7c50d170a3c529993fe50a459efb9375ad4981c9c637665f95f6804ec03fef9b90860230284cdae3b9e19d836fb52faf8f60eec3f50566837ab6381041e355692781157df99e61d02e684769497008facbb8ed8f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230368d6ad0f45c12edb6cb69011589d70d18d8287228312518646d5b579128178484a53477534c883ddb1efb947a2853b4023100c4c5c041c96df8f88aa2e54cc8b1da546e1085e386ba6680248f098ad0e17070acfc58a8043ef1186c853513ce352f6c0302047c435bb5006630640230753ce06a59377c2e9da59ebad295542b58dfae13d3709e9dc1a8ae905ae219a839a7ad15f423d798185076e3725a5a4002301b429842c6c254d6637c2e91cff1a3713fba76d3ae4d6e87d14f20d7d1d7da0d928656e8d02588f168fec0065959289a0302047c435bb500683066023100ae116ab883a1ee7b98e76e2f9ecb5b5ff709a6cbe748ddddbb228139035db09ceb80bbd61b4ba9503ee4a21c543d28d00231009cff48f68d6d81fe0bae5c7051de98bbc61f2a142dcf516089d1451db8a801c37877a278a52007257c71b03b544357350302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e1cafb28df630a2360d9f4a70de61d3538f725f817d0c9780f4900ee91b226fb5f6a1df919e3f19cae9d807743ae4817023100ce380168462540e67a2441168e0a94c8e6c22ecdd84542dcc87e314a9be7eff7b6c5e6b019435c42b648bb070ada51380302047c435bb50068306602310091f2fab1ae665810111727e85cec7f9f2223dd7f5138a81a27d4347a23ed7f9c1be42adc2d3403ce21d619df73d3b6b5023100e7275f7de8856633509459a3880916a25a13f20733d472ae8f14b311019cab585c18a85adad54c074ebb2dd209d3706a0302047c435bb500683066023100b350208734a0a0e73029cb14b1d9f2613c1367d4ab3cc5acbfed712a6d06b9e2aaebe1a35f590682ac3d9474427f5523023100cccaa902a59e29523f00c2a653a9a615b1c3fd4a0dce1a1728c028b7b6dd2d60967b0636678e3a75444e53941fd0ff310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d27940f95e01207eb9b2c779858434743591b11c5a889fd9a59a1e9e7d0fcb42f637fcd751cc6731b188ec6d9a3e4b15023100be055c1ff1164989e06b81531ccb15d7a66bcd25f618240d7a3f380d8639487633d26b75ed2ee56b490c3f89b2ae671f0302047c435bb500673065023100b2b97f96bf97bfdbb304d355883c5ce38052b3953c651a18a41fdadafcd132a896d45715efe1cebecef237617687e48102304c76753e4384ebfe482c4beaeb77142e9110ccd5d859fa9f9ea190ca809eee56f623056050ee03b7183a1cabeaa96a7e0302047c435bb5006630640230485e0d8e36325062e6763f0f687722d1d0b401e446cded4934d69ca20705189849f436cb995cc3e57e346a0b824ac309023052c41ef82bc7f84ad0354b9f798ddea83bf3d168259a0baca94fda16a337e018424a9bdbf9695856eacfe15855c4e8920302047c435bb500673065023065959750b0d53d3f26f4821858c8afc75eaadf0f27843ba331107a9e3e6fe60368110850622ce0e66ceacbba42edf83f023100e004ab0da6bd16f1696314468443f59b502e9f531992639d982d3804a8b323e690c52e2647685494774c70c5447efbd80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b38565c8215e8b044f8fce99a3f9d012e3daf1e4af965e1d31e2d6abb3e96e1ad838bd9b593b495911de62fa6fca73e3023100b9b72a24e9c5dd087281860acf87cbc3abe1532ddcaa2ddb9530ec1be5a8b5954b4d15ff276e44052a10b53afc7641300302047c435bb500683066023100a6dd247b12f0448e2287b120c0335d388628cef4a457f86f1c425eceb350cc0c83e50e0f10b95fedb3e9b1499c601f620231009f5b5500f3f10436b0a363dd6e0c70353865998fcca322383362a0acf20c826f884a78cce134e7bcb5f8bbcd747e21ea0302047c435bb500673065023064b63203ea37439296b0aa572ae927e076f7b2702014043194026dcfa1090969f1d4d438735e02eeb72bdfd42d02f01202310098f0ec6a83205056bd42464b5da52eb721f0bf0879b1b25118629243096b2261049e092bb7bcba0cbb1476c3dd9db9690302047c435bb500673065023051b080152919ea3a9c6fb1614f1c86cc28148ca0a883125f79d3d8dcaa67412ddced53e0001cc9a6341967d5924cd591023100d46fdc1be78aa369bec517211f9aa9ce6d81088708459437f812dcaa0b36ac5b3aa73f52787f12c0903bf488022201aa0302047c435bb500683066023100d44b63ad1414a6aa544e148472b59e856f3ff54bf7fd08f602a6daf151d7704b00b8b9a6f77fcf21cd691cd0127af2ed023100fae0eeddcbbbcc3de09f6674d296132dd2168250e5f0df7228129fa0787eb42bac67161603f33506afadbe441e8741710302047c435bb50066306402303b9afb209e3dc4e3ac5e1aa3836ab59ec715e0da260d5ccb7a44f9c69526fa7f0bed4adf3689f67da4188e143d8ca2180230494a92fa3cac1e1082ce344b123b8b8d548e6c4b304778c070b7a5ea25e31d6c8dc8c4be2f78478e86fbb9cf4ffa52d30302047c435bb500683066023100f40a3d2b856924d571e38a03e10439b8cda9ec43ff2c1354fb1504462ae84c4e26138851d79905cf7cb2d21040cae5dd023100c2672bf5ed520c87099f02d77c70aa8feaee55d94983a4efdd63cbf2d928ae647fc0cf016ae835852d1d6e636f8215330302047c435bb5006830660231008f99e7e994f9025aed622b81cecf222bf253bdfd6842eefbb80badcf5e273820178cbc1a523dfbb3a6efa427822d1129023100affc73e62f83d67652f27506d34d7a3eadcbbb1bc673edbb91783d6af490308b4e5c674945222d6fb9c1316692d3f10c0302047c435bb500673065023100da48bc8f9a0a8f81f539009c61d350a1becfa85f60995b53a6e1b94622eb2bdb9a15118d7fa3b03c3286e37126c0196f0230657589cacd1d3f42ec4d081a4b342e0f7c1211d58a10c4459083fce23c1085332a23c4202749ab6d10b4b0046683e64f0302047c435bb500673065023100a451576d1ff829366fd8daf0881dc49fa65b56816b4a9d9b35498d16989aa26862321d46025521784e32b1e47f6dd56402303b885f8585e36f768eabfe95906897efe0c3ce684e095acc6aba6395c76fe30d6961db8ac45a339532a4c5d32148bb5f0302047c435bb500683066023100b1dc25dc311995788e9656b6a166a80f691a8e51745ea1832512e17bf723c457741606d41effc2d06bc7ffab7d3054f502310084bda439a5412792b3edd1ee61cbf07c978bf27fc1b63546a7510fc2b0c28e4a20aa6abe9fc0b02ef4afd34dd967a19a0302047c435bb500673065023053d96b066a8c8f7abf29600ae20b7acbfaa082a48f8e349f3dc275a1146b12b860bdd5ded84ead835777572c455b8b8b023100c903d44829928da80affca13f957ec571bb8d8a41e04998e309c13e94da2b0264a35d8d588276cb0d8e30b2ebdc97d5f0302047c435bb50066306402303a70cdbe52a7325716dca64a323451315574e29081b3d62fb6087a18a59f97729e5b2d595655d78b2f5d29eb7fb7ee08023020b8abf3daaa4a56458cd684abefc6fa2a2cc6b08ed1d3f674dcee5b3681a99a3ab21be25b1ace21daf861ac887341720302047c435bb500673065023100a63d697084d637eebd237cff98f1d7c3f6492e45463c1b23b7253ea1a1f3ce10fa401a0456315e11bb2c35b133764ac502303ae6ead9415865591cd11abe468744745c8c8b01c74941c5579bb94f748a212f1708ef11944bd4ca543f4621e2a3791b0302047c435bb500673065023100da2b738a509ea675ef224a628d5f23371f4306277ed3e36a30929370583c8b6b569aaa33317a238f4038dab0706cf74002307d808e3217fcafe49050869177c62ee49b39907e43692793b86440d7feb6cb8ccf2eb01a92061ca44b02c587fbfb8ea20302047c435bb500673065023017d07e96c1c88fe725e40ca52d215aea0e7c03d81cef3356a18644700d538efd70940799df5cc2b32338110a041ca454023100a61d006aad6834ad905d40ba4a152e78ee4dca292472d90f8c4edae08348a19fc9c2e880af1cca7fa01662088d21f44e0302047c435bb500673065023100a2a6009328ad966ea71a79761ff0369be97029da56c8ba52d9857bfdc400a6c813ebc129e074756c7def545aacf37ed7023079142517489f859d30d17e1b3c399e5e6a15253fd6f241b998c13cea8fb5181faa7cf0c88b089b16ca2a565200915f6d0302047c435bb500683066023100b79e332ace6289fe8f4a688b216bf4ed28dea17e5ba12b2c2540506eb6a98bb5d8b0d74169c29742faa6ac7c2b241871023100fca828d2535cbb780f7ed9fdffc99c097ee90ed492be83c402db9c09dadd4eae9474377891568433097fd960ac9916d20302047c435bb500673065023100fd2e6c65727ad83b843106e58b3336191a166e8274aae1da0a9392eec546e34e8e930ebedf35e28a0078a5d763b6124a023069b2e9e6781ebc97d395808f4730c94efbdc6992ab45d07eac547a73e70b06e786f437e8bf360d79215a835f167d1e070302047c435bb500663064023064fda20558f682bc6af5779d9c0b67672fe92b49cc88de5d6f77d8270e68fd600c9cb1f6d9e246cfa5847c3e8c0d9b4502300e85111c067efc7fbe2c829c4a615bb18507335c9ef944adfb96988226fa5491c6f81db318615556ac8f86bdf7b51f6e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009b59a24cb03febd1965c2087575c14172b7cbdebd306228646425d41375b4a8e4c8c9c9fa6454685fa010d2f69a9f80c023100f2a5797b8ad57e58e3dd2a1814f63da113d79998c6e0f1aedd5fedfc966d37cac1966c78663046f787046740886a01e70302047c435bb50066306402306c207b35170e36442471882b40e6297fef072787eae1d1413c1dfa7689646cff67c7a01d7743dc5620d901ac557ba62d023071cd7b245e2347a6745b8810b7ec3fa4b05e4203e2e851d4d4e52a64e92750205ccea21feeb8fa3457042b3169f76d310302047c435bb500683066023100e3ecdbf82469066aef3de7605fcb9137bba33d28d4f100fdf2cccaff38afba817ea9c99ce487a22a2f4c4e125ea2adcf023100fecd60f5282ebfeeebd070fa2fc44647e125001810139df025619f49ddc13590cf24df737e18b2b1f02600a125c988260302047c435bb5006830660231009de906b73b583e1986f5fddd86ac57f820210828f7ec9fbda5eae5530e30aa359c482ff77200eb9fdea811e1b8a75798023100fa636b8b3f5813c04c238888438b0c6891814a3d4383b9fc0af418f384f27484fbbb4bb2315287fd3c2f59f841ff4dea0302047c435bb5006630640230373796a1ef68c181cb2d425cd1253819f30beabeb99e27b43561ebb6df4e91fc6112af7f78411560239cfba079ccbd3802306276eb5b2be00f360d61265a48c340d475bb0aec1ffe6a4fb499fa5546805f0699fed3217a03f27b1ec9e94efd818d7a0302047c435bb500673065023100b017de8d69099da0314333c3f5566a9fe306284fc05f421ebffdc50a7f352f505b8652d08495c7689bd2164155baacd50230253c5e18ff77a03dcf13e9c34992b1cc2021459a56d28fe138f19c92257ccbf4e3b0cb175409e1547e38940fc8463cf60302047c435bb500683066023100876a19ba94605957f89230d5ec45c14efaec6342788cd62aab06b9ed34e91cf32c63fbc22613bb4e7e45d69cca72e764023100998339167cc1960d7dcb3dc55fd3ae9a9c4e3c3923c675c9d49abc16a07bca397d86c69eb386a1d53ef68cf709489f660302047c435bb50067306502301ee362aec62acadc4ed13119b43ff13cd9aec681e7003e83ab1b71fc03bc7a81a4946914fad7e9ed4e299660373fc7770231008a8143d6cde15ffa14dbf05a5a5c914ff5d7402d70f5599836d397a54cd86fa8bcb9900b1f4613c40826ec11f7c13ba00302047c435bb500673065023100d5916dce35246e09ea958ec0f81fbea6b7c0e286c64c6b4d7398f217d6c14492949cb8f632adf488dea71ae00b782c0902305bea8e949b5298794d0ff7e7ab2c09d06c3645af81f665a4068b841effc0423a5acf2a8f099aead10b5647676b86e3f00302047c435bb500683066023100b747bef8329c183764ec0120693f73220fc8a723e64b2bf9ea8903849521aedb35fa76df92012a9001184e2dac711d8e023100ebc340d4ae754079ad16c8e595708d057bca18b792aa1fa61e06e8cbf03c76163e1bbbf6ce8eacf17af287f2905c58bf0302047c435bb5006730650231008cab412f56d495fb86d28b1c9dddd4eb518320f3b88445c6460fa3b2cf6bf1781d61f1c07347b97b6d204dfb373c25a7023070adf7608ee2d9270e8ea1565ee2a0586c8c08aba5c694ae2023b443a6379fa5d24f1df98e961d5109e65edf447f40f60302047c435bb500673065023100a832807ce93abaacbe176e5af97a01689a9be65d0228da60c0f2c48e72316b0b0785a260a61a9a9fc44fbdaaf835e244023027059f066467297f0cf95297d4846152a54a4a4e698245bfc0f0d99c40a412b22e5120fd18e7122119501b09d1dfd1d50302047c435bb500683066023100fbb3af48fb811e539d56c0f7d263053a80759c025a75a447b271a17623aefe8629c950ec4fed8e17b18f0d0ec9cb8932023100e3331923e30edc899a14c866f499dbdd2d85332a277b2ba503ff29df3b334213b71b24145c81cba330129b2dc552239f0302047c435bb5006830660231008b9031aa71025811c66167184bed87875952a7516f747120a153e0724ddb357aa7d3df38a122537e643927172973e32e02310090064ef43e7830bb33c40d39a15b1181c7827caab3d542586f533d5a7a6078e4d429086f76eb6b96e172eb2fbe05aac70302047c435bb500683066023100da17eb5b046121f4bdf8603efff24e389ddaf674759afa6076ad57811221ee2be15e8ad18605e0cba4bfe49ae83070f3023100912d2422b65b5b00debe490e12dc4a56ce0d422a9d6d14ace99272ee4ec82884e92ab7bcc527d30328f1e174444dd7340302047c435bb5006630640230481995bbeda20984a393a8b54855a3a292f1aebec60614be7cd088f5d40ccda8d991a3e77b3e500742e4ec137c1eb684023001047676c2a634373810a337a91bae48b45ccd5cfa4f298f5bd34d49884091ac9ba726ab875d8c50c4ca44bc10dc48210302047c435bb500673065023100c6475872a19ba627e65fbf6f90ac63cdae248686b5131da7f7306f57f1425168a41d0614b597675daa4475dec0896aaa02307ae906b920609778b636dc4fce5eb3e2b8457a9f051b028ea671da089a8ce74ce928c5227d3658235f9033c6124ecb320302047c435bb500673065023046c1a8bae0959d957b4a6e621013ced7a236b96dfdab5e5f117e15040507b0e413c57a46dc434a8cc76771e73db2af98023100abcb4657fc434d1d5b3a78a5d4a847870fb8b068cbfd7db2a4c536fe77d132bc09717350c162fc1a5d0d3aacadfe98ab0302047c435bb500683066023100c3bacc42b102f347303d43463892bd7a28556931f1fbf10f3a0cecd73c2fc73589c03330cebaff6a6298dc6f032d2e9e023100fef5885361e629cb7128635972c2ddf145e92881a0e9f8cf2c05cfcc1dd0a0403fe9b0fc3dd493072b225a6e8e2e5f260302047c435bb50067306502301be3a0ffdd16aeb3981571383b7374e02a80885c27c8a16fc6fb5f2d50691ee299a4430b1420643184bbe5b62f1830900231009240f466fe9a5dedb19fe25178f7aa192a3b9248d4a077a61c627fbc3d8a50400a8c745d8445ca2a7f0fecd2276685da0302047c435bb500673065023100889770c7be28795faf3c38c6cd476b7de2b513d8bc7f20c84d2bd635f96a65acc24b48727967b3541fd4ca31910f2c1a023044df5407ae00663d4129087898611cd9713d97f8541672bf170214aa9cf8f04b5be341f69fd8ce40e0741b126a234a950302047c435bb5006630640230673d7ea3171048aab057ac5085c81b2c8e2c7adf9675746cc555f16c491a551a3ef2973023ed2a7bf32249bdd87eb5f70230787947c7efc55a9d61c65ce95151a84d61969f6e63d85349407d583d322950810ac360a6e87bf4cc273cfcbe9cc873470302047c435bb500683066023100f5502b93bfd2fd1793adb51b981560cb69184d911990e1f1817d264d09cd779f7598f89ff84670472bec6913569ff606023100ff57fa65ee2522204e099908d24dda5d404b569af1447cf61de8d174b46da6f19f4abdd4c8b6fde45f58b3198fb9891a0302047c435bb500673065023038ff9d23ced6372e41aab9427a2baf716e3de170456804ad379208aff906f4df54cfeac74abd96f27887d0bcb8d602490231009ae786bf7deede0d3b09f4512946f704566bf22e1b3ccacba10e4809df7cac3fc8d42ea74dd3b5c356558aa93939b2dc0302047c435bb500673065023100d826146a2ddd2a3379bc35f5f4e41a171014ecb5d146c70520cf3d5b038fb4a99974455632305d9d12cef0c14ef556d802303422c83b6d50d294d4a4c5e9a11d08d676f2bdc7f25623be38b7937702fc41b9f66891bbcfc1a2c8ae546443ed75b51b0302047c435bb500673065023100ca1f63d0b8ecb71f7ba3d0eb2a7dffcac420b5df50679ecfb1f40254ababfb7f5dfec589a32797bee2065d1a50e441c302304635f8d12c0130b67d313152f1a5ce0025697e3394e961ee43298a3a995d4f7d8c1d797f6369ce9cf746c1dfc5279b3f0302047c435bb500673065023100fb1bcee622c374ce9b9ca308fcd89f740d47288bdaf1d84c55fcb10d732833f0d232f76ab6ec61b7f9652d09d5e41de3023015afe07657934c9a9ae65f1de16cd115e95920e0984ee001654de71a1b7e707688a8b517be18c626de3d77663c13a3770302047c435bb500683066023100c08f7518a0e50cfed1ca851cef36eeca51e5e91c65bdf804169ac4819d4bc9038a78c4ea2ca387cfe25aa68d88b2aa44023100afe63b774270c4ffb3ea8e92290d753187f06baf38515b50c35c03fbbc334a0f54f60a5560647b8ddf511655b57b29fd0302047c435bb5006630640230684b7ec341f9aa79b320dde188a29e7fabcee3c839f08ffa40445f498062443d5157149929afe5f2f6ed134f8a5974a40230489f89d8b0cc0b9fa838131e75e507a7d90e7020d151b14f10074586f53be2a2c88e3e54506ac0eaa14c5d3f87d5a1a40302047c435bb500683066023100a3acd6e8a1ae1194ca58cfd9fbe3cd85b6b3dafdf03a7c0e101bb22c5f936b0fbfc7c5cdc38c59be525ae8902dda8a02023100c95aa0a19a0f00f5f8be49ed6633abf0bf4f20ca01e96c93f0dee1b59fe73b28a62c24d5ac69dc661dbe913cfed743400302047c435bb50067306502300fba3438f7adf20fff7ae516b4ff9bf8063f47d893c9cecd6f5fbc8fabbe8da7617a927c62bafc2da47e3c216aacd42702310080a3ea43bd4ab566208b8b49ebe2592787576b50acccf684c84c7e38965b273f796fd1d8b290b2ba62d808252318a6770302047c435bb500683066023100c0496dfe8c28a843049c0359df879e0aa87146427246bfb64a37e2cbcfd2918f5256217af22e35d7119d0911b8a2ca9c023100f1c5c2a8fda140b2a2622beade6bfe43cdc248f168305b0d6d427a31f8451697c131dcfcbdad3e7bb4a7b624c4d473450302047c435bb5006630640230670c71a70c7a4486b1d43be776f0d2770ef81dd3ee298268fd542939f871f28b44c549da4ba5a9bad73986d6a539ae66023064e823abc032820066e9911422ae665977f2435777c03a6c1a39bba194687902c003fbbabc96749343cdc7a2938dd1180302047c435bb500673065023100bfa08c90b77de094f2dbddc329cebbb55ce6fe5af1d003224828add6833828e2186e74ae1be34de51850fde09fe00ef302307bfcd466f116874814962d047bc567d3621558609dd39be823bca9b5602247db4b5282f7d09f57ad9769f29a7ffe29350302047c435bb50066306402306887b8116699839c65865e45342fcc8f721cbeed1165f6947e2b7ca36ffb88e7c9ed6a449832867bdc05a88302374f900230270ad80eed9388ad2b8f2a2a06eb538d5abdde4cdebe08d68dc2ea144e197c716d0cbb0d3e79308859cc549c91bb5b630302047c435bb50067306502302419ff92900d2db367296fe5fce38e99d6b1b53f6af89f6ed45fb3b845980a64de93f75041c2b3e6ceefe7babe4d1fc6023100a11adbf3cafdbd30f2fe24322a057bb505ff8e78bf90f9acaca2b6c43ace7ea4c062106193ebdad21200c082ab6f078d0302047c435bb500683066023100966b211bfa08ad0688418a910834ffddba1f8f6f4f7364329152e6066d67d88882babf08d995d81ceee703f8a9225baa023100e9cf79649856370e3fd9ac1fb252c40c8a9701a36d079e05a86d619819e01c44a32effe26664ea12cf83ce8578b4ea910302047c435bb500673065023100d452329d2762d6289f236b56c80011e69ec493883f815ed5a696a1f168e8ec76fd400cf331ba6d310d6d50bb39398ca50230485ea20cacc3c1da7df854f2b7e4d55cbae0cea31a5e8d07aeac0826b0cdf49680049e14bdb2387584145efd2c4d7b0b0302047c435bb50067306502310093debd86f169099c1801f30c447615da7cd5d0954bdde3c5e307a77914941e1b0e1eb9b09519e7d50a0371f121d002760230187450be0428e457d84aca7e1fb3c00a50d63048478168e8ff40413183422124a45aa68f1432ba1d8f38bb01a3eb4c6d0302047c435bb500663064023023aeda780991ceb60ad18291a5a4de07eea5ced99aba949c1f16031ae29176b213515771ea503ab8fd9ec08d9b1620050230573c5daf54fed7babc3bfdf669cd0372e5f2463f666a63622730f9e67d199671349956635e26e1a7ead7ddcb9c5444780302047c435bb500683066023100aefe17294154e32008076a0b3546bab5a9cc297bb442c95f914fbc84d20196b4c35f3458b1d1cf87710f924ff70d475e023100c1d7dfe4e0478889ee4fa7eaf4462c6106677d8e18fe7650f1c803f265f2dd3b581f4edcc6a0c4340eb00bbd9060da110302047c435bb50066306402300d4bc75f73b73e92502e7372038d3cec8218f71d1d80895a248a19e21d8e3063a4105b14762adfe3f6e07cb9e62776cd0230479d917e30a911feafe2d417edf21fd68c07626adeba943fed21dedf99afff9eb1c8943bf19e996df66ea85197b0c0980302047c435bb500683066023100b4acb1fcca4b889c0e0e8dc93d059fd7843d94b09baf975780edbb00efe6d660c642094ffd670c1f41a49155b6f87073023100e963c5332c18e4495c42484bf611b7dce10d7a62213be582b6672591f7ae37537d9e0e069a1e69bded2abe1aaf7cdeb10302047c435bb50067306502302fd545e36b4fa350eca629643ff8a66bbcd7cc0602332ba126130e435836a57f21b6e8c122d2c538e0a5cdc562d5cb67023100bd05077aabd27aade94849a7f722adbbfdfeb53812bc2ea4110f5281c83e1add225893904f5a4d4ab2e18f628d5d13b80302047c435bb500673065023100cba150365226c4d528686b76f7fb8540fcbfb56e19e7253651ee9d17287ef90afac438be0c76455d99ba34c9363832d402300a2791c3e74259cdddcf0b478ca04479f6b91fd94022e309f1832ee7045c0484f2528771b96532d0019a6045622e430f0302047c435bb500683066023100bfb272b497f9ce37e74b68d34227882dbb8b0ce7ddef0502374c2cca24db814681869112dd3287fbf73d186e01967373023100e4a8b250fb4297b5e78f19cebccef3b3d12bc3ab73c8704412f5975085c4524713bb351991ef88779cb200ac388ac13f0302047c435bb500663064023036f541cc4b7e7f323184a5b4a2fde396885b02d14d2435ee8443656edc480dd594cddb14b5609d13348d9c7c81187af502300dbc7ba8951bdd61562b4199637c3555d6935bcefeb36db72bf67a68ea376597e95c0b9d003e596b207f943b648e06410302047c435bb5006630640230114d865d7533afb82f8fcdb0423b74454ac740634ce3dcd8286957f44f5984a9edbd33a032725ca59491435d81cf078c0230675b1e954826ce3b8f5cd7564c65a7791594485c2dbaa6e036f3a0a4613609329e5b3f1296b9f1f84c68f63ebfc42f560302047c435bb5006730650231008b9ff9c22b30e91c7f529c806d67c3bd628801baef54976911fd3ce459dc9306fa54f0ecf677ce2f342ccbb0dc8b59720230529ad27c4a07bc81e3567553681a7745062b435098f2cbe4e094669498abaef0ab4eb7166033cf2de8a6f65d1dffdb9d0302047c435bb500673065023100a3cf91d630865db615d8e5bae771d21f5b3a66bec385b78aaeb1f60f9f7933d3911b3d50a3dee0bf9059127429c96cb1023025011586677e76017592328ab692b43203143a9086cfe5916798b554e25eb23f8e4449418f63cb44e14a08f6898f6bc80302047c435bb500683066023100f870fbf05d1f86d995752b2fb69c4fb6debabdd546864f77e10641134d0cdc59d935ab85f23d85b8f62ca4b04c0c1924023100aa21895e509849723c7cbe98411fbb745e5c1c4e9b8ac02036430742b94b2d6cf8bd24cbf52787dad304bf4eea26dee30302047c435bb50066306402305620fa9033ccbae059b11eddec2402a65a97e92999f9e0848afe581b38e2460e91adb7c1248b1465af89cb8c9a949c8002300095b1efbea95aea444173cf01d1a72a3adf0419322fe10b00a48d96e4544c668569282673c3f33aead09016bbf28a700302047c435bb50066306402301ece81c0da04c0c892f7691da3f8a6bf37bd9edec04b0ebc6e292ae82132ce7ff405c0a87be2f349a2bd2d902ccdc69502303cc89aefb8c1a26bf9d9f0f02abd26a32513f4b06dc82ac7b146c5ff180ec568bc827af07e55444b4eb211cb819dee4c0302047c435bb50067306502310090753de0967f8a5bb696cd3b94c5a3ff5b4e4912c317e62ee77a62797df027214c486234687359ee7949a0d14efb2852023021653713b1e0e1e067fe6519da32d9bc557209d22c543c2cf12e6a02c7e74b0b0b14f81d93eecf0554e1baaa657b144b0302047c435bb500673065023058c686ea4c954d009282bbf60cb0773480cd89b1b9fb8ecc32517ac759b4dc1bd4f8a5421e5a03e93e0cd44bbcb6127c02310080a85f66bdf5a7c11ce09fc0f48eea6919ce820fdcd3289dff2d843b87d3831b62ee52286300306eb43624f06e60fced0302047c435bb50067306502304b166a82e2b2de69162add04bf5d32566566bb64b39d828017ff339e0c18f8d71a0a5b7be319760253b680aa4872298e023100cccdc26961a4855c8f9a10401fb12ffe7c28743260592a34fae17e2cc96f54f4ad821e8deb924c3d1cd1eef641875b2c0302047c435bb50066306402306f3cdae57eef1d425b90883f05dd3e98ff07be3c252940e361973145dd802e07a57d35d7e07d4c9edd48ff845739aa4202303037a5b920016683cfbc9a75aba040dacb0011b16dae7a31c705ed0fdf9dcd79182714b8ac5644d50a46e8f139e4cdce0302047c435bb500673065023100a47268af66279800aedf978fda0849053d1ea664c91e94901d75b71183114af1e470b556f7ecdda278e7efd1a5c373f102307502d11d7903213035514d7869abb0183c6631010fa257fa9473151f2b06dec190d8f85a2feb80da60cad19eeb696d7f0302047c435bb500673065023003c62a336c683fe53742be175e6793d7576c4598470a7a1fe34071a7417694d7a9776b09b8a67ef893e2af74892716b6023100a60cb690096de9caee3570ba8c5058c2050e3ddb6eda8c03b61bfc43c6031b731b00ac37c0d005bec72ac67442b63db70302047c435bb50068306602310088532853e87773716ab7a1e1dd7f654b36984cfa7a6f583fea18d2d0bb3e94bbf9cdb80ccc87acdb3751adaedaa89716023100b26f0593a9b3d85de0990fca9a7291e152674ed739dc8de9805d7bfd6164511501f1b07db2259ebe1dd536b3b1621e6e0302047c435bb5006730650230411b14d2c1e5b8f0112f42d8c7dffad079098e06b37fd33c3ff12026758c4e9c2e83c2171f08c352ca81eddf03902d3f023100ccdacbae643cbda8c2f0cb47625691f5dc9acfcd0cfedf7906fb0bedad1932f127ea3c644c0880859e8018ddacb81f260302047c435bb50066306402307eb7450e707e958c536c034a77b654d07e2349b99721eef852325f3af7ea5f91bfa9a6c746b4d1a1e2bc050af49c712802305a811fa9d2e8fe8b65b7818a384045a588ae7af10cb15df0a0c08fafb71f279dfc99dad835f680b88c60e722c0eb35930302047c435bb500683066023100aaccb03c40fad5357b475129bf50be18bfc7020ce3f7fe9eb10607e720bbaf3da99ded36ade443daefc024080a76de97023100a703e82d1f9846c85d210cf09f6007fd9c7713de2a6e1d122c19f442e71fff7a43268cc012f76960ef541e980747b0410302047c435bb500683066023100fea60c8b12ba97a398dbd234b059f933005194016b6619d3d3ba7a3a0f3be3e5d4c7104677bb32863518667c98fd25fc023100d91cac7810b1e7567410dda76a29918e27c2928e1d6ba2498f6e2f8a77cecbb2abc1a7fd75fe78e2833f8f6a5da589720302047c435bb5006730650231009fc09bfc4c9b25bd78e8bb52ca5f78419827bf785697785283485eb9f226718d949f89928562e6199d26f17c6e894a5702300b2167e9995fb2767b5351bdb8b504c286b68ccc835858b3e02a12f0413871390f0bedf7cce9b6f94891f985493583560302047c435bb500673065023009c1e508cf70bf9485939f6aa0f9caf77c809d260de11aaac31737ade73bd7d04a9cadfc94aa4c4a4833279af09de827023100edc290b280e7cb5f71ffbc994516ab457d6692d7fb6923fb7a7c54f44c9a040d27d5fe94c309120c6c04a201b01ca1290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305e7066fd6a9310e9012108476f342e6c3d8d602f62de3d745bcbb07b6dc148718dc85e2312a045d0a5938e7ab41bfb1c023100868919a14e43f04b626a953cf43b8dc6e2bd3a6c8a3bccf2a32d4c0eed7db5c43b56b7a134001f0f51c00b5cb532fa7f0302047c435bb500673065023100960da2894a33993280edbe1217744957408abf339c4151bb9525c79b926dca54b03660214d7a26015e1972b684c322b1023030905fabb1f617eb038892f2b15d09a770b5c34ca7e09ddab40558acb7f414118aafd6d1286021f16d0cbb1535fe9b080302047c435bb50067306502303912916697f350c7d3c4e60774a2989811f4ceecf64094eaa7ad24a974904b41a8e1409b297d14846fba7c7e02872ca50231009b8d28f79670393a764d8b7bcc8536415e34e124da67a0be8eaf9ba19ba028b9b22971fc43b01e5cb713f9c318b358970302047c435bb500673065023100e91a633efe91b82a3bddc743ecca6e6a4ca2bf6368d759024a89e813bd1e92f5d0f8b3b7c47edf146916d73ab739935d023060ec9330bd7033b5c66b9e74a64c8b9e4c569daa002ae2c790ef20332aea93cc57a1f4ff51889d1730bb31fcc2e829520302047c435bb500673065023070fd787364bdc0ad5702d75580a6c3bc559fd33086437b03c8035929046837741a7fae1f23eb80cfa7137515288b2737023100973fd0c8e2bbb83f5bc3f8fdb1cfe825ac30b7b1558dbd863a59b1853e5250cc6ebecab425ef5c632aa3dbd4d87200830302047c435bb500683066023100d79159826df0fc5768c1fa35130c8634c171144d42f1283db135a08d1dcb7788afb424c096b6eb9af9757019797a1f55023100fe17935218ad61324d074fee316c357f7a404c5cd7addef5de78eda53689e61010abb85955493e8f210fd4d8971831c70302047c435bb5006630640230011777aa95f9afd9e098153db80efd37624b059a665695b5a93c0e7088a1f5e67f30d789f7dce6bcf53aa181fc0e750002300ac8ec0bc8e1d518d79fd29d3bc605c6eca30a6fc19c730bcd7e338e301fe8fac82b0ac4f075dea5ab16408854c691070302047c435bb500673065023036ec5b77e641093dc7cdc132d147dbfd8d425cb2daa8e15baef83dde8185a0409f03012b5e2f061f55e6ea5cc21daa38023100d2deb13aefe6fa57f1732810c675c73998a92b26f5cee7d60e77ba4932d798eeab8cc63d2b8713551277d5e42732c00b0302047c435bb50067306502301ace10fa1a6d4ae9504eacb379af75972c13a9884815b490e1a60abe76c5f2eb1372720638c27e6bdcd0e3b51cee4341023100ffd74bf8ed01c388be749d3a97bd3890c06382196b821835d493bba13a308b08f52c5e3e1928f8a77410f100585503030302047c435bb5006730650230568e6bad39ddfa73a8a512b7de9db3aaaafe013226684b64b6f3253b6ea45ee4e2968c95abc758b0ba70571c4ce200f6023100cfbd8eefd4706dbdf2bb5db73701ab5a6917a27c6833b0be76c2c7c809979957181c615898fd6664af45ec43d653a89c0302047c435bb500683066023100a2ac20d50241803f2e319874c85362f5732d74f9b84fcff6e897c39141001cc493e8fb44f4be2766098511c996971dd4023100f0489a5c5066c74050b08fd28b629c0b4091b201af953fa634931b8827bea948bc9ea53a3635d09ca4b6c3bde15512a00302047c435bb500673065023100bfc1823d48b86856ccdfce603649763f234742d0f1b8100e7227b8c0b7ff6553d544c512737837e7fe44fb28ebb603d30230011f11227aba5b5cda43606497f1ea7344fd1a4b698ee93daaa448f5193f979bdd03a0b8ce5109d97f236363403d41940302047c435bb500673065023100dd1b6b418f0e412d1c9211b9bf26153d642cc6c04f1c79f1de792f54d3ad1647ddb240e49b4d43169d33b64c1a46405602304cf6535fb241fa74390dc1f8b28999858942707fc6d6b62dfa087eb017cddc78844061df21122fb842fe92ae2ba06b220302047c435bb500673065023067a4af7fba9a5b05d75edf7c689eeb98b92e5172e7118b6d50698a9beb24d85afaa15d449a6a9ebb402401db7b6376e902310080461e5a1a55e594ce0b3327bb2328f78eddbfc35f7d7bb29603bf665e8730ed81d66c069d3c83018ac569de327940c50302047c435bb500673065023100a01a7d77affc37597c178bd89a71bc84613402c1b878d04fe63b2eda0bd79e03082ddd9268e11a925163d7ef1346b08a023062625b4472975bf738b11821d5a95b23c5b6027f476f5c11b3a03d60f586b7085d709c46f5a42ad362518058d315d09c0302047c435bb500673065023054180a4ab85dcd83c308f150b8669e4ec9d92f16e38623d2617bdbb5f5f305d7a0d531cf0baf40a910efa839205d15ec023100a9078bdc8ffeae52e26c6d4ccf26af895c7739f96a414d68c8c7cfbdf0e4af21a034b6f5353ed9bace7969a95f6060300302047c435bb50067306502307a58cc11e84faf1e54caeba6473f58e4cb7bceac7b0baefaa20a4d232f5e7cf872c59df764be18d364f912fcf50c514d023100e0a093998bfcc5124ec8babaf3cee33487a038a3d58c21fe638f7121fdcb4114cf6a82ec6803e16809e3055b333e79e10302047c435bb50067306502301440aa688b02debefaa869a207134445d31e30ce081e8f62d6b0437948fa0809a2aae6842f21028a15c2f97d70ef32c1023100c32873fafe3bd94fde91dfdd45b426a5b5e4ab2a6f643e625f0f2114d87622c77f24d01c37e6fbae6b7a9386dbccb6720302047c435bb5006630640230600617ea91c128fa02b1a6b9b50a1fce10187479895955c78cf575172319261cbef3022f4edc91b4891134c1ecccfc9d02301ec48921dd51adce9e43609828c7ebef042ea6a16332e477359d7d575f720d6bae5a89dfb945d6c95a0fe3af20186afc0302047c435bb500683066023100d32541e0f5ad7d638df81523e4d578c8b7879e91202452c3a1899356d5087407958ce63e04f89d04aef15cccb8eda012023100daebffc0ba09bd82c3bd10fa5da3e97d19ac5b5048dd967b0d72474bf836c2d49ac10509808ee62d9eeee97b879394e40302047c435bb5006630640230113da7d1f08d1e051abe2f7cca7c51043b09e16edc7a43196d42455d05deada8d4df22d70e6940599f55c80b8195d536023031dbd411ccd52bf68c7b7643b91ff4fe2eedde87f79a2f6e805a1b608c6ff245f3be43083c54a088c5f10cf52d2bd4cd0302047c435bb50066306402305c4ec13e984f2f1caf189d4b1f9b3057bbbf162eaff855e3f23f67481222fc65c497b305a503a1fee9d4aeeb04709856023038de3be3f51eeb8fd856ff0ddc15f21a8ea437b58a4628cb9ef97185fcacb7c07708ca1739aabe4dfa4f7d9c1a87d7100302047c435bb500673065023003f8cf044a9d48262e215de49c45a757264e090ca3668d2aa6fca3c2001e1ab4a45eebbe2474ecacbb1064a6f2132c97023100d1fd1988d4ac2403474d1fe3675691c00689220acf0a5af48fd4b1048dc849060ab419e270ad42f03adfafa2300be8340302047c435bb500673065023018a0524d86d4fa6fd4deb9edf4a472340e711a4e00d5ad88cfaa28cc340a12dee705ab97791a2bd1c2816b0792799e60023100e93253cfc2d2c2ffa21a310b389fb4b226a002eaee8e0fb176daa7d57c5e4e4e8d95a59f57102c0bab978465c75694190302047c435bb500683066023100b48564cac014c6f7a28ad530e1b041a292210d6e01d6a6ba367f2d8eb2bcf90615f6ccbb842d6d97a290f8c0ea34b2e702310087d151ca6b0da6f2cb3316f60aa56c41b8869f577ac01d7c7ebdf67b9e58ea2733889efa92b10c38a00ca5b44c051ff00302047c435bb500663064023051128743eb9024bfce73d8a4205f12fc2b7258fef1245a8dd9656d26375956aed742acf3fde5e1ef105fa81ae3d64efb0230291f21b77b23373b3f70129290f293b1577e34498510c5d17253c42e533288cce1e4eac7e687a3156def53f0d3b0db390302047c435bb50067306502310090bf81291f50d85d80efb19a55fcaafe912557b5fb2ef7b7e407f008553630bba0b6a162b1adf6315edf0af6e97eda7502305673982b5b655e02a0d1d915520d64af81d5a650e35a437acab7e54e44b4b36932376dd19c3bbb6001165cd78676acf10302047c435bb50066306402301591b9718908d69e435461105e39fe380f3462377565120653166f0163bc82a43720981b32691a70a76a4732186cf0a10230231d2eb102607b19fc7602c3a93d0eabf196cd3ab2d886aa83ee86b8d150ad9193f9d03009e7a0e58cd8b98b60cd9e500302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023055021a2e8cb512dc078a84092caacfb2841b88724503ab8ac4c1ccaff72c0df615a5c51c73206d6ede44a9f42de72b3002303a408988ace4114ec3233e12847e2c7cf87bbadbd11bf86fcdcf8e72f8a72ec814aaf416c31471341c56a9c97e4bdfc70302047c435bb500673065023100edfad387b2111086668e8cac56a18ec83a5d8fdff0ea9f816496ce87d38c0c67ab2fab96bcde1163b908f8a5dddd38d502306c9b976146892a92f8518e15b8e3e64df3110b851c587fbec10e8855ffabba4c437f32e55ce3a84c39165ebbfdb8e2dd0302047c435bb50067306502301a6e15ae2d9134bab3fb352c1790cf9dfb920cfa07b31c082d0ee892eebe78be71507b7ec8685fac4d9199ba1024b3a0023100bb67a333afc20be8dcab839bf6dbbb36068ea19add93cd3e1e1a79a8ad9890f8174fe84a565aee177030b9f033e75ddb0302047c435bb500673065023100f3685315c2603f9ba3effa9a4755072d68282a5371635c0f754157b682f1bbafc17e8870b55b732196fcaebdc2ac19dd0230377122bd0108c6bf1b91177f3f37c2b28680dafb1a666a72fffe64ef50ac37c57872a147f0487409a266678730ed86f50302047c435bb50067306502304047bbd4e178f58ee778bbabcf31dcbae5f290600639cdb7037230046682d6a0587039476f8db0ec640136b8f123efb9023100e210eab4e7c4ad14373f552943514736aed7bee5461adeda059c1e06c18b26fe31d8456b77a158990edfbf95de737f670302047c435bb500683066023100a726426636ff7d475f79d654322cb2b853bf001b6dd970ad79981d8b9ee91df3a2f0e4741cc1457defd6765ca7833288023100f9722329767d7c3d0d2786347346dedd71f9ee9362659466174795b06db1509466ebcc86166e7e49649abd6d027ebb4d0302047c435bb500683066023100c71e8585277945cb9c48d755a063c16eceba8178a6e141694bc810788924650de56fbddd04694e4c341769cc5ae4ba7e023100ae3cb820564fd30ff25130b5da15c0176405e953ff70a9d0978c29181495e43b4991fbe6d0ea0ce094a2082180eac12d0302047c435bb500673065023100f29ad65813cd7e691cd857f2e13472ef55f6ee135ea0322a073964f47d0f9f048e8f4714b30e012606c12ac6403b70f702307de561651c503c45e41ea0a3333df98658012e66d210a2dbbe65f79fb77415964985e394d49978dd03ac41492bbd1df70302047c435bb50066306402305b2638f08a11b66c5540bde82201a1b0a3bf46a4702057fccc5c027b8e5817247641365dd6f438ac456cab1c90049da9023058168b7f3360519e0c44aa7a424ab533fe82baf0e29558c9741b76ca3126e26347cb0f80d0c171e6233dad1ec0637c6d0302047c435bb5006830660231008e0448bc35c9f64c7f8333ff5df04fe20f02c3de6bae602e7c97ccb96acf3c2d19465c8f6f7db36091ecf89754e1579b023100a1f06dc0a8175b69514d6ab580ce816e5d3bc435aa24d9d84f2e5cff43e511ccfd4d75d20697e66a9df9efd3277139690302047c435bb500673065023100b61c26e6c750ec00019c55c7d1559b0955231e32516b3d75665c86b22773f378c7551178a4cc210bc3745a09ad70281b023039b6315d132ddc0ec6a2b1e1bebb1e91fb904d681136ca9cbc6e96ebec1682b6faada2ecf5a677517f62e96d662496fb0302047c435bb50066306402303338d6a12d2533a96bc72035d28b5bc50325b6e6f8a80e8566f58c02981d7c622c226e6579aae2259ac876f345aed44202301c515aa2205cd23ec53f51db1e05eef3f308fc1daa2c9ba4017397db884b278e7f04bf31200df2a266603684b387c1290302047c435bb5006730650230422c4a08c9c5fec2fe589bc91c87f8ab233be44c1d32c57e412f0e3638c3fa8d96a19dffd5f025ae4666dffbbb4d714d023100a537383489f0c6a1d990eb4f0f0809ab859d9fa0b68ec00526c0cc5d1e7a0d6f8e62533c7c03df447c1a44a9c4c458710302047c435bb50066306402306c605484ed8a957a4d5e10cb18a32bcdea6e2f9f0598cb146dd084988e929cf86c3f95a124dc94b531b15845ef83517402306cd0b643146d41430c41a732e267878b2ce6b400007a6070342ac194153d1e926ccdba8ac2c89f5d15026436717c7bd20302047c435bb500673065023100f0c7dea77d651f8afad43d0e01ab577679e588e64faa04379649fa5fac999cf4e10a0352032f2d44119035d6fcd08c880230338074b8f273006c55bffdb45f94556cc735d60ab077b7f2ecb2051900181571d6ec04f9d3c84c3730ef1ac0966703140302047c435bb50066306402301d0865c1c3a6a099c87b3234bda2b06d16ce7c150e5c7e872f7439170e91720ccb35d6131ce2355ea4c6a53281d90b8502303f48eb792c2dcb1c184be030c5d1b8564a5964b11b541dc4e590b3dcafe3fccfa33d03607b4618cc6d0c0853278e235b0302047c435bb50066306402303ad78ec9af751a916e952f463b768b66252d42e4c63420aa418d022e01f75d7e75626620694043b0ff7d4c69a5790725023067d9b3e0e5bce784b22f4383ca38ab0e4aaf172afe62e20966ef38ac66e80754fac1cc7297f124618d2d290bb26710920302047c435bb500673065023100f1d0cbbd83246bb355c7fad6bbeb370a7eae0d492e353d9f1e54d1b5982663b232cbee52acb5eb72aa09728e3ab6b6b7023023266f7b73e0e6aa8b14f4546535b42941de5558d2ceb0c009f468530965386205e8a4738d6b9834cb40dcb29e5a57d00302047c435bb5006830660231009673a81116738a31609d9cd2d9b71a2aeccfc16ee41f418e990a012db6dd4bc2f84a47560f3eec1bac01bc333abd7cdb023100dedbde6abeb8a454875c1ff6e40f394acb92b4c7deedc5747fc344d4f46ef50c4b32bb37e394f6a59f3def7543ac13c20302047c435bb500673065023100cf7bf2e2cb98dd9e4c3237c091c184fbc89d6031ba34df825b131e5039b3b0f287840613f49dd9e3405d8bb55f02293e02301159e95eb467028cbe1008dad9825eff9722d43a6c081623a51cbd80fc3d061b6afba8bd17eddf9631003b742d309d710302047c435bb500683066023100e672cc2be92a4b8afbb6243720ad5f9586fb5d171cd02ab6ff9abc535757e583121ff22c40b97997fac7b3b64eaf7e97023100eb446c25482b09bc03e401270a318b3195a739e433819164900f867bbe953bd460d821eb0911713d957d170c3c03be6e0302047c435bb500673065023100d626978dcfbd5279819141f36ba3dcd674422de3ef2ec7e0ae254fb87d9e7bb226d7c3466106b56744cca2e53beeed03023040bfc94f71dcb664b5b3398531c16dc8d75880da2dd71c219b6942ac1abb9a9a8b0976b87c28a32cc0ab0f0f4c5041750302047c435bb500673065023100b0fd08127e2954a1baa9ec3be858b6bc84783bba70098aab0ecf24d6717fc4f7af1b3557971504f5bc202edb6c81d94602302dad1f9449a0ba7906045e078284e91756fea07050fee5adf52770ec1844a2eeb9920544593cf25e3b92c014247323e00302047c435bb50066306402307f65153abe2ed185a69210d74c197919f94e031a5e28760908ca8209b1bce1f8f6500a4687e9139cb752d548c32c567802307154293d2cc2bf2ab121b48b7d0b6b78368e6b8dd9f9dfb2ef01c23b33c51b2579325425b7e04158bfe32ec8bcf255e80302047c435bb500683066023100e50c7046208f8d34f8e96f04770dc12d59d71f82a415edf16b2fd66283cde35f68f68908d29bd11d9f1264fb338388a0023100b9de8052228442a0931db65eabf5ca1b522d5a39824a7610080f9a64648ae3694aa29de720db19148b372bf733441e430302047c435bb500673065023100b1dcde6b48b9ccc017dfb469961f850aafe288f38515b19dbc55e536f8976e2e447729b93a7a0800c21cc2ec34c34bfd0230024a3a3e74cc6d7bfbe6a416aa6b78d7486d7eb179737569532e907c5f93cdb0514d03ec41cc588696f0e8e9cebcbb9d0302047c435bb500673065023011e6df3d30164a8fb3cdda2707bf2bc5ea36fff6f81ea50dd0e0596b009a05b288d6030177a15ebcdc1eef7b9757ef14023100eef1790717a4541db47f2cd4743090de761ec65922491b3969d19d406b540f087e789087f6775ceda089db28fa8446170302047c435bb500673065023100acf11117b90418044e159078aa48ac01e0e537f3bf7fdcdd57eae36b40749bd0d6d31b2d8cba6fca39a1ed0cb825fa360230209296c29b7342010faa61fd53650982f0afb0e4b5406512ddfb217c1e74aa34b3e3addc514db5b822e549ea4c4fbf2c0302047c435bb5006730650230214c977c8e4121d1e558f2871a3a77df563cfcd1c68d80f159e420efeb46abf4eb1e879ee972f4e4516a0e76f0e932d4023100b5a804ef333c86d61d074c70f000ddbb15fd61c91365d90de50f3a47f23a8c287fa9b0c9f9f45dba8450ffc4808d8e090302047c435bb500673065023100f29a457a69f9e474d3bb1bbfbdaafeb95c9e6543171075c0a13a1dc1bf537c5854902742d0e0118c5b7589d40d66bb6802301a8fb637bef8dfd8fa69bbdf250770c37e1be63166e84806e4412f11c26c1b992bf3d6901bf3a880e57012d9d59d44810302047c435bb500673065023100eeadada90ba600e0757d83bfe93e182016f72a1c83694fbd39b07ac93361881db66b38d318a65130cbd913a0527ac50a02304b815496893af3929ba745ebca3ac5ddff2e5214f43b67eb49ee1a942306505b7d3eb3bf5562fd931740e662afd59b830302047c435bb50066306402303394786a7f5dfdbb1491e31cd9d627ac9ab1d2def9f2960e067d5a59b1c466d89a41810117901c37a6d68036574fabb302302f33caafbc0cfcee757fc9d11381956848978a368fd49f51d95652af158bbb5051132ecea6e8e3ea296d1a4b7c0a34f00302047c435bb500673065023100fe3e88e80f538e491db58f935a608a5158b8ae0833f244f463b71fa709e6118f6e34bee4aa4c9ae9634dd8c750641e45023012ea089b5306a7406d53270f98bd38a8c3486bf37366c071a62a176696ab4e77a2bf0fbe8a9976cf441b728517d0f69d0302047c435bb500663064023032de9bd0f2a82b79327e282c0c0282867afab16665ec58c108d0b40833d52c931009cf14a374aafb68c6f7c18ff55a89023064072e1c688ac19b1295d05a05cd466b624829f28a94610b4900773d12d51611afd6b830d6705d7dafc8eb071f7450d10302047c435bb500663064023060fce8da3f2e7082c17c84b7e7034771f4fa8b6e13cf7db987bf37e925d09fa1696cf1c0e35b80594a00865af38fc07b02302012f557e3cc335cb54f638a3f6765e83535d615c783d9069635270e244c0e67b8c538e31960b3bad6fb7c33d44edae60302047c435bb50067306502301f409bfe42083be3ede44c2e447b907359d71f1241e34436291a1eec1113dfd18b91a19c37b7d0f15762e22811f9b40b0231008f117df319a048638f41f5b7591dfd6938984de3e80549564a8f6b22024c31aa8a2394d0ec0c77b19fd348dccb679c090302047c435bb500673065023100dee854488e0ef8e2baff9bea72f8dd667285f33eb423b00a01dd4b627e6fc3c283de92285d7123c9259dca19b011626e02306c1be8b87fdc383193e5e2f9f942675a02f41991b1e88ba8bc4e0b746f337d5a0ad35847a9e44cf4f12883002733db690302047c435bb5006730650231009cfbc9453f4c7d88c0cc9f6d0595a57971e094a570ee3408708e23158335126d034db7214effb7337165fc9baf028c81023025d53e37dd520abddac5184f9164ec6f1e4d54543063223c6f0f824379d543c41e88ecb7c0ee6d084d5a8c75e54af6ed0302047c435bb500663064023002f196543c3f16ccee192d230798cdf5914d6947dbd062bb4afa9e5c7903e1943386072aaebc939be350070d596475020230782d4f0cb0cb4837c01b194c3889d2f504536931bc2bd00ab86af09b555d05d73be9035fd2415c8376325b0b32574de10302047c435bb5006830660231009357f7f74eadfa442248d4c0b31c5d7c3fee3ae347faddcd3e47247ec668e73cebbcbd1397d53296276e6818f407631a023100e8ce8e3804af36aa3e9800ba4ba78b4733425e0113862560d3cf81669f028b6309f379443cd72a113a7192dd9f5055c70302047c435bb5006730650231009541411c5fb0795652214970c58541602de254706d4cba35f68f50c265104559c22227991633aee2933bcf61586019f7023055e24c3caf6132498ac4a563cca15ac48b4b93922db802a81fbcab36ff44809afc286ac67cd0ecb5d23b91c183dd0c5d0302047c435bb50067306502304a3ccff9405ec8fa1be6776a0e6d06acd0204f0f0e174e5581bd5a213720d0f0df88b0f3362a926b5f3d51dfc2113873023100fb180306a3c189029c8dc20a5af3fbe0c18afc6b318b1c4f21848398572c0f0033a81039c44aa89d91bdb2b6b06056c80302047c435bb50066306402306616445345f518463635334b7e3473a75d591d2bcb1b6bc9ee15ec3cb078df14c6831153d17451efeccbb52129f34a3b0230252b2d2eb5256641cb8c86f6e4bdbabd4fbe9d06a62f3145dff82f47dc5a804574e2459818e36e002c81db4d9f6a6e500302047c435bb50067306502301278e0835189f5e640f13b6c6c95e5361fa213aed4d832f0d4d9cc78e1cabab084f9ed014728001d7034cdd0f41d7e1a023100a4548db4b28a224a4b7a1c151bb8ada75e87defefd0cf1274d0090b86f488cf7fdf4e50291d7e9a0c2512987e556560a0302047c435bb500683066023100c5afc6316898a0faf37a300892f0c15082ee223437065ad7878a86cbff7a4b42dd92e909fab26c41cb2fb5907393c6ed023100c57b18f87241c63134b0b6276ac6e63bbbb5b043244254d926df17b4370db439c3d57524354f3349e69dbaa250308e2d0302047c435bb500683066023100f0a19837b2941c4bb5d23a8ecbd271c283372867e55861c205dcfa9996a3fbca68f45d43d7e30d4d4d1083a22b33fcde023100ad7d8ce7e8a402255c8dc6b4e229c800f314f22cd815b7c984aac260053a827c95114ab93ba8a69592fb9bdef278382c0302047c435bb500673065023021bd29d132efa16e6af9789097c6a162408c89fdc1a9038fe46a65ffd124f6bebb5ec3ceb92f4421e0ec3ef58e423f9d023100ff4dfe64348c5b0d0c064564f7bd2b64880405869d5230aeeaa49ce0d547e2c0fa0b837a7c87ecc0da0bbcdc81f243dd0302047c435bb5006830660231009eccb2360b0dd773f89cc397e8ea846d59ba81666220a2055249c40c2c8dcc2704f4ca6f48e1bd14490d83b0371ba4cc023100eeb35a9189c86f6cee9cea2936a642417e6e9bd5c3dbf1538c9f058569d32c49febaff36e441161db60a811859f8329e0302047c435bb500673065023065b02c308c201288097360f2c33a2cf2d43c8be5bd5992770ccab11a0463b5d7873cee90f8bce5c6a11c94e9c4caa07a023100e8713f16c356d45eb1ac985149d304617251b968fc9f81d240e638d15a5c0c91bcb288eb14a7e977f823946d7fbc3cbc0302047c435bb500663064023064390642d3fa885ddd65aa576b44caa3e80e592e0837dc9e6ddd2423c144b4e754dc97fe678bdf0b3b2740fdf8cdf4d30230554b5a08235bcee32d2429c47f6c97609d51cf6dee6ea45a8af391a219dc7456f0e6485c3a854cd15acb30aa12f6c7190302047c435bb500663064023026421857898f4abeb45daf516d1ab411edb82e5eb9a2e0162d2b539f9214382f96746a2b7be4f794523d157915e6bc8202306c28f10675f151c9c6fcecd8411f6a75c4daf9a9852655e53e2e0724ee27ebe553c269bd1345a22cbb32c8769e685c4f0302047c435bb500673065023100c5c83930d64e1e2ed5224f5c7e697b217e34ac6196c0c9627d32db3935ac26c42f4745029219ee7bde66f966a48aed0902303f910974426f2349be322d78c7961386c551ee85b2498c96a624098fc7a7eb685a2c963756f6779d41e08c3cb7612c000302047c435bb50067306502306965507e0dad711ae2cf87d545dab6b27ab3fe2b963beb6f4600f139e7a142534e975fd9318a008beb2dbfed1ab9f0d9023100f262f1bcf3e0701afeb1a31907ee6a53419d2792e1c0ee614c8a7f1be46dc0ada37642a4dc1cd2a84e5dccc7a94e4a000302047c435bb50067306502301fb3ded0ccd68955a93dc576a796006471eb567211b35742f847b35933cd009fbb9021d09f53b26734a7689e170169fb023100d711731af3c8313144da4df3c32aa839391dd1920b54b7ca169e866819f20dcd9e370854d9d3431bd58c2ce81522e0770302047c435bb500663064023057e6636ddc2702b6463eb05fd6f496799b4e2ea12b300bf69cb3d51573d339d7e7240da8d73ec7d92a52e7399dfb0ff102300bf4bceb4277c6de345ee6dce4ed0fd06ab3a373b14b1a3f285d45b6fed43f8f1776dd2fce1b4b7d75da4ef843c3e2c70302047c435bb500663064023030a9915c65149e002466edf7570587fd2ed157a8e668e162cb0e4b3861431937c664c5a671907eaa77ffa01a07f1b72202305adc21bfc8e1f092aa1a2629c216dc674afd459da1a4b66f3b043f0e253be22a2d42cdbfbb0fb9b2bfbce2ad3287dd1c0302047c435bb500673065023100e71059f70bf2934329a3cba9609883300d362d51535f73731e4402dfeeed397f97b42724e3dffe10604a31fc9f87f1880230605eaa403f541d329250a3afbab5d6b182eb7d17362f516055e593bef212df945b7f9b1652f1663d24372bfd0e5d99300302047c435bb500683066023100dc23f4b29231537018bcf64e74624c08fb60103b01a6faebc5d11785681ad506b3a393ffc24085b329f5cf1ad2f8abb0023100e31a29f3b4390ba70546a8b39456b45a742d7341bdddcf0405a921ad672a76446343c6499cb2f77ebc57148d11dc87b00302047c435bb500673065023058df824f09d27113609140988925ad04946c39b0e76b93933d488cd390192172c852fab8a6609ccb4d760cea207e6356023100975d4d6dfb894a75cfd81d3e54918282e1b027c4becd9754f27948f489b3019ec797cdf2f01b8cacb78f46c86316e4f90302047c435bb5006730650230095b5366581908859ec8b150f522c65c132b54beb3a513afe89f4d67c72be545165f45f7c7e8622e3ddad7f21ffbf26f023100feab0dfdb68cc9f173d0ededf0ed01f8be69a87a850c1182466a768f2404d4a0d2bedc1d2e8bcf71d063c673b82a73220302047c435bb500673065023100f07c506610d8f832837674820847e6a08e2b484a5b2efcc6fc6a4e32d7fa9b1e555021e14e8bc3ab97d61e25955d26790230230c7d1fa5616532cfe081d946fe078764c6f0bdb04d5c77b271ee4b680c9e3d241db6def7221e7794295603b64fc9310302047c435bb500683066023100ef122fc96997ab3a879ed80f1c1f3947e4551e7c2a73488bf9fe653bc8d4b5ff46cec8042ccdaa22f8bed59167510359023100992a2a11f5e5029ee99afd018a8dc037313ef019efef873d053006ef0cfd814cd8d95dc2a21659b54f6e780ba01886220302047c435bb50067306502303a1b900b7675689755080adb2543e412c9a456e1b2964ef6bf52cce8d7c998a495ce4aa6f0e76feab30b3061c056fd95023100a903ea03b745b6b2352993d23e53bd9129300c73729368cc1bacdaa0641d84bbabbb059bc8f434aa62bb511a61040fe60302047c435bb500683066023100e7d667d22b905f5395c30a54bc799e014000e44379fa1109435244837075dc949745970eb510b21d04d40420cc295b4f023100e3b1e4f8e7bad4802740a0aba8c1c2f9bf73f576902426bce13dc4b1295ab3aed491618d5b491fa3589a3ab56bcf96a30302047c435bb500683066023100f85fde7891dc9b9d29d2272511e80f876f8d664819a81f51a641735afdc78314dbf5cbf7866402130bdbc00e948249cf023100a5fc610d096f8f234cc1ba465cc33a2b9bcbe32288801b9e475dfdb32fece46443a87f240c10a3fab5d0b9fff2fdd0750302047c435bb500673065023100881e9c66de0f33cc93ff952ee682672180cc22d0af9c190db4808f0912637de9e9d348fbe28f715ec0050b118486ff81023059d94c6928517f79b609964dc457aad2fba08f6950363aeaab2a7073675c3a89db2bd0b5edf91d9d9dd28f8c5955af1f0302047c435bb50068306602310091cb3fc00bdf5de27cfc95074830ca92b31389513b34370f9d517b5790c0c01cd733c7032ad6bbf69ebb2ca0eb67a90d023100da720aedca6c4de5dfc188a781ce91ae49356b678397f1e1c4328acfca38f683dfa9dadff1de034ecf7c7dd59ff5dad90302047c435bb500663064023047f7a9dfb2d1b879ad01c81a05661856cce0324b40c349773bf8ac672e7c243fbbd916702fa7a174b627a0c1cdad19ed0230501e5e1250c0b02fb1d90cad43b27f0db7b3aec9f882fb7a441d3f57cb99b8a9aa30c95360386dea668578c4f9682d790302047c435bb5006730650230583bef45fde1096890964010f344a6f92579b891aadf22770769174423cf5a9695b04f4e5c0644aec76b2308ea675679023100e20f17109f4f3d995acd01cf0eba05a18a63e174a732b580a747e3fda2ed2fa2b9b8e98a0ae0375b99e8a0d892cef5170302047c435bb500673065023100cb12b374c9891cade779715557658832458de7ce43e80263fba7f2f074b76c3862538dab8ed0fcf9638fded16e4033af023037df0f911358db56d0210ef3ceb1765fcae988886228891acc38518a5db29e18d4958e8617d71a0c6c6111c3fb4b648f0302047c435bb50066306402304b48dfadb7c4d6867302370bbbef638067b124e64d38be3db252d6ebc69846659e17d25dbd17fd7ad1ef1fb172867444023073c387194487a0d8931086e5050ed8e55bfe113a3120f618988744f820a3f3481b4715d088a8d8af0c5c915ac27477200302047c435bb5006730650230391e15d13c3f896d57faeb816144392008d133fde1efc36fc5803e9db51ed14b16aff62b321d2f37212099a52167300c0231009a03e780b269f1f7496337d259673b21260be1c924447400232e6700a9ab152b756a6bd19d26d2b913b544943e5fa94f0302047c435bb5006730650231008c6a1e84e948cbc363a5dad256da1f37b6805196d6c078c44e3793dfe4ad383ea43a30272ffc76531bbcafac5636f5a3023014d4fe837bc1b8cd69d78f050f0c2f1647d380a06f8bcf13a249dc64d434ed539b9d68e49a3064b0537477e355bd352b0302047c435bb50066306402301f2c2401a5c3099f4da53236634e6c66e66d00c4343c4302f1d1ba88d2f42495ac0eee58fd7c83b1d83771433576715702303100a4ec8efc749eb074ca5c5fae0f9f48e8a3849303b5e9d74f865a7925957df4d155100256b0b6bcb40f3d4238e7c10302047c435bb50067306502300f11e3eaa46377e63fbf3deab3da2d4493a88c37dd2439b641f57ac286d3cc447143a7321c87b436ec0c9b023483f7d60231009640cd065a26e30668ccbb75042cbe88b862964c63d8394a17fa173789d5198ff7bbf6eff3be153842d61ca7215dba150302047c435bb500673065023100cef6530181f37f282bdb5743985be7fa83d40c61a59411a2734ad00eebe86377dbd8eda5037c93e3e3ee8610d8a0789302303dcd89490dfdf9f063ce0c5e940b44eb057c96ab018fe0c57f85942465a07d2bae635749d4644fe836e238f5ab87234c0302047c435bb50066306402307ef0d56443a41b638ed282deaf8f3337e604e4d4ec91badc3f599cad53b9a1b605e957e0b285b744861438e6e503892202304d056e1476e109d9b73a23efac2e12f54eb27166509cc7794767589fe7192e8787060efc88a8775ad86e9b6d2baa72280302047c435bb500663064023040814d7c3b2d29c3725fa9108629698bf2ffcd2ec8f09e6d2734c141b9e83660413f0e43d69a228d55857641319343e802302cbdc316d057e788b8d4c2e0e3fe6cfe1cdff8fb4ff88e7650e185e1846be75e1fb6f6da9c54515ee6dee2e6dde4e54e0302047c435bb50067306502301153f07828e7d25af1ef0429bc2a93b2004ae418ca7bc7023a9bea048127fb696e480aee63d0b95b035e012438a60585023100b323f481f954b5ad486d9fa5d6ebb0539af3b02c9f3ac9f38ce465e59a19ea874ce6cdf438f90fa5678b3124321e36190302047c435bb500673065023100b6163359c11e83778c08f720cd14226c0cbe58bf7813217112653c051329e37be7cca84155eacd147a2f2c0f6cc0320a0230681632e80b418385268b97585de236c4dd6164a5a07ae9917bfe8ded9cb64d9c2d43febe03c4665501ffac303df72ecf0302047c435bb50066306402302aba677c0939791b3336bf769a63c8ad20177680681d166fcf8becc1fab300c847ea8aef15702eccc3e799feb864324002303c6893ef13591e354bd8a5a074a149db3c1ed0bd990446ce74854b013125619c2c3942f235d013dea31110a59ae94f570302047c435bb50067306502304c2fb36236ad19d1e95d19ba3cb3bdfcb6090da738fe1c8b1c937991ae4dc231818c647510f78f724eb49e617781bf62023100e236cf92d8a4f7a54d067a77a307aaf996c80fbec76155cc84e50469f8ba858d3c614cdaf62a1895d5c55c3b60beda1b0302047c435bb500673065023100de48720e2031c249a83984d5296ea7e32545e195ba3aeccfac0ce217e9931b8307ef5f1dc9a67e31d756fea4c3d07eb802303f1d21dfabf6d8b038c30722bdcbf4a7e5acd717a73827125a203d020e9e2554ff8b6924a83c259ff62b51afb16023aa0302047c435bb500663064023064065f05fdcd7c40b95c811dfdd9d195c006af70a79058d64785515a0158e9f8f81a377e10f2c87f232cc0507677e7d6023049fd1ff9f60f413d048dfceeb0ce61adc26db494a4505b7cddc9abf6fca8156c29f315dd1b2cbc70b11d4134d82074c60302047c435bb5006630640230313cbc53e43dd4b6885a6b85cae097a6d98944c4d47cbd0efe45880e97a859728da8c82d128c460bc58d3f3802aa4a9c02307c7abdcd8e07cd172e004809d68b44d89aa5ad8faf5ff400c06939645000c9f2869f0b6e94c50db2d8bd4074a067c0150302047c435bb500683066023100d9d5feac65c9c4102f7f799749f1b4abeb065b06643d4ea32315c0d01261c2446fbe2f0e304ed3a5315192b591716f63023100e02ceb2bc9f4d882694ce23391e0b27cf448f9b438a2286946919c6fc2a8d48bfeea35e1b988a8f5d8b2475bf0fcb5590302047c435bb500683066023100b5c2c631c31ea30e055dde0bb972215683070317ccceeb7383c08295d38139377cbf04c0f230918f2157330e8afec147023100c9c27e8d627a7a82a65f807df75aee28c152b0ed0f79b3aeeea8fe684932d600b990011d4ad48c0bf3fe30ac369b55b90302047c435bb500683066023100a683b75a3b16835a75d93f258126b91b1b6d2c4b68a7763644944df57e04ffb70e0b0b4ae1aef225f1b9606e4378dc10023100dc56f15c429293972bda83852a30808536332bfa754dff346fdf99c65aa59151ea8499bf3d27e3d0f9e25d8caee196b50302047c435bb500683066023100cb61f50ba0847854cce5a44adf0a7e93309616c97127cd6490cd82d16d9bfc70427f33bca58bf072bae7ae5d6a696300023100d6f12d41fc7879549f8241b3ed40e131ccd2f7e8e38620831344ca199fc40c1b8aea8bf2238cdde66692932dbddf4ea90302047c435bb500663064023043650aa0b2675cd8c2d7d89d02a501c57b76a680b776d51eea9e496363e75196c717bad9bc9f8fa9f143609f3b8a991d0230356febeb23022b38766ecda34f4628099b2dd0c91208d5cbdfb349e10d01267d3d9817b43a556ae7dcb15d9b20a7970b0302047c435bb50066306402305298f051451d49332cd0a4d964bffdaf15c29bb42f21323357c20a331395b74073124a873011314f2cdb925197c1d0fe0230356bd63d874ebc0c9134c4d90158e7e368833569a48385584f1e61ca9b48aa08c652809dbaa7c19c6969c1f5608844f40302047c435bb50067306502305cc687a8fb9f071459dfa7594beb344c3ce956d53edc09534b010ab31e1e61d03f029c640b5bd5444c509d1db359945d023100b2d1ed79c9a6c8907af1086969123932dc13b711bf8921e993c8017d8eceb125e1e4d8170b8e0ed8cd5a23fff4f0b7340302047c435bb500673065023000fdd4ef633208d725c4b1f2d265c152d86a12eea8fb9f959a2ac6869d4cbd71b570b018691fc73fdff2449df7b53c44023100cb26f504d94b1150c0d3e854f9ee9b428c6681ccc019e69c525a79057c13039d8d13fca9355c8aef0f65d56fef5ce80a0302047c435bb50067306502307c0db3e97cdee7f878b5155536342e616028dd3ae2000b5539cb3d0e809590f6de91ce27b4fc1a628894b59dbbad302e0231009ad9d7f7776b5b03f536e258d7b893727c4fe8c80231acd845b12a01625df2cbc5b8d54ba9fdcd449ed9e3db1f8d02f50302047c435bb50067306502307da5aa0dc45b786fef01d64902788f461d0ba19d3f3ec46a190f9017c9b7e7c4f2050637b19d306b54c6baaf82929d50023100a89841b25c0d897edef571397153d6e0e2adc1e5dc10d5210351a295350ced68815233ef2b677565ae99cd2acef308e20302047c435bb5006630640230255f057984071291783aa1050bec68d4739fadd178ab4b7106075395b74cf861cb58a2c5782228cea919a26c317edaf0023076b18db3a7f4d5028a8157f311cf4ab2e6b81205a248b8653bd990aa625d1cab085ff83292d30aa8372e37d95eada9400302047c435bb500673065023100c299d0b23e74c2b67ca59eacb9bcaf743ad65761306fd7d289236610a0acfabc021550def8b7f8acb2e22446718da3df023076d5443998bc94f063302ac955e404a2a3fd145b83ff8d1670bce073f94c0aafb74bfcb52ccbbd1a77db4006d994ce520302047c435bb5006630640230513bcc477643d72691033b6a616ec4f85e0beb4823676bf9fb5071277113eb802e051a54ed2696c7078c1bf7afb1813902303996bff0fae0451ad1022ab8961f7d1c350d16be84785ee27c607603851b26aedcd070d0309520699c98134f5a91473c0302047c435bb50067306502305861bb4ae525ba0c0c0117115508e79604813c065d639a77cfe984e7467350ba6dfa967e479adfa066dbf913d61e100b023100ce9f90d4c3fe0fefccd31d6154ff096b9258eabe2b72c46ea7ab8da41cbb96acbac1d4c36e905c37d7538583905cc01f0302047c435bb50066306402306ac0c8b335150afbc6992d70799f4bb33d9716065bd44f3c812d5337a1444847267545f5711efd91872ee7629fdb7683023064b1081794947a3bc7fa609c17a2cd16c59b74ffde164399b5ed782fcee6babb820aed8d0e4bcc2415f9e51b02feb9da0302047c435bb500653063022f4429f77d7d77067ce0ba16ab4f13f1fe89b67a18b4ce0aea6bdb1927676205f35108ce183543f3814f22f1b355d28202301ab3543499673c9e73d488e660cac09e72fd6c0bd32396a59d3e9e9264ed38442d1593f7213964b84a38cd1d03d7e7540302047c435bb500673065023073930dfc9573e58cdf42e13e87ce72e62609be62f5b3c169ac2b4a152431d95127ab88be70d32e70f101f711695fbc38023100d552351469e6e073f9ff42dda79e249283f57baaeb487e575c47a675b39ee9f08ae3ca73940828efd5a5f2cd28fc66c00302047c435bb500673065023100a29b4eb4982e788c328b8202749453c57c13ff6e83cc2e12ea77d35732a419d70245b02ca2e00dc86656112eaf3df87e02305f8db32c0118645779eff07a379c4b13f41957cfa5463818b8b36306be792f56cb31fb81276df498b9e26d27bf88f5680302047c435bb50066306402301ca3bb917c57a6336515911d5fc246fd48398590ea1eb2ef6a805fe8c949cc9ba83cb1970671a438df620b832047412302306b47d0e1505589d3bcf1c27bfb376f900816a7203fb369da9a7ebe59128788d8ee134dec7b6049bb48efd54b522e542c0302047c435bb500683066023100ebc868ad006a748332586ab72c6d4b7aba2554b6e47e53cfad5fadf4acd5497dbdbd6af437417484205f86c15a51cf75023100d39100e21f8bbb02e0ebf776781359de1b2c72c4233c5783e38138f6167dc0fdd99cf902936f7e1d779c6ff95c1e480a0302047c435bb50066306402307b8cb472641666fab1c910238b41f5f827bf858101316055ee2230493890b06647968bdeea50e6dfbc329d91da08d1f502302056b3b5594da0e86e5383d80da66823e1e32e5e2ad84a913d7dd37b5170cfe38fe67acf06b540ded81760c70e5be6940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307467602e39200646b67a62678162b74a31286c7846d7a0fe10386b4d24a7d69ecdb4a89d6bb1b401c9b6b2a98396d5fb023100bb17720207c94f344b131cd780ac1fc6e1e0939c7dd9279d70be8a3bab9e95e76cdf0195d064ee0b4f36368bee5e03a00302047c435bb5006730650230450e6ba8b9f719e0346059f43ba5810a971b74ffd652de72201a58bc6fdb2c935d976a0692ca77778846bf1562680e84023100ea8a9a406195a9dee054d030a54780a46febc29b067aeaf8c8a08f4a0be5269c0470eb46f8039460a4d8abf77250a9680302047c435bb500673065023026127c0262379281efd1e0101d82038d388973adc346c50ddc292a9f217e7e995ef24803df622582f07a95c71c59e0cc023100ef84bf435428c1866a530298d25a6f3c9c6634f68b7a96d3e5dd4666bb8eb6244acab8767a997743db92bc40ce94b26c0302047c435bb500673065023075330b6c313d573a4c4cf79730dd805062d1878d05ef84b4d7a6441adfd8e515d1bde511e70d20241a8b213b0ea55a980231009557cd681e0f92c906eac8a9d0c3bbf76c7d20e79d988b6db191bfd5c44e6dc9638b1305807fcf88b6ff50a4dd1267280302047c435bb50066306402300e43cb34b79982bef95df7431e7290f0d965f4281edf1bd6c7fbb874ce3e07c78a28b5947f83a40712c1b0e12bbd175b023031a269411f9c28df4c1dac06c229fa7a3417c6b6a267a105f35c4233c3fa1064a26915684923abc07f9347c1e037a66a0302047c435bb50068306602310081e8e0a34eaa8c0ace28b284f17a6822ddb9c729cb720687be040d22f0fe191fe9da6ebdc87f5438f7e429eae1a62076023100f836fd1cce2daec99e646605ccbbd188c150980f50061879cd767a070bc58a663ca5d146af250bcde95c9fe4838b545c0302047c435bb500673065023100a830b48e1a35e0ba38c3c82db6ec2bfc7e606c1d928b6d1d133557db9514c3ce394b3b56cd7a4552f269ffa41951c2b902306ad52226a53d7ea1899e3b201e4b5a25753661aae4464d7a149b279d3b48ed66d707cff2c9fbb562986ed7eec4d4ac5d0302047c435bb500673065023100f392e61ccc4b814edcbcf6575ac8f79a3ea67e269005bcdf509baf07aa6ef7b1a2fa809bf5e151acc8a89665102dd7700230619d425159fe575a7de97daf77231491df27717258d006bafe0d01bb5eb15f5da9f4b3a5acf61e19a5e361955e4783df0302047c435bb5006830660231009dabd7c164dfd94c539d49e94624f4cd233af223deeb7c108cb6e99f1f540dcdd772f4186ecde148eaf62b5bbe8da073023100ac277d450046e03774be4335673ac4bfa8e1131e03bd745d658fabc8d9a8e4fdbbe59a814dcf75c6188cbc7f0895249b0302047c435bb500673065023040a173669b3f52d561baf403f9590513cfe2d6874d34a4806b8becb554da166a3f094406b9a37de32702d4a475b02c6f0231008cba687892fd43c2014f55e9c2adc9ed6719e132dc379aa245c65d45351aa73f89343fa0a1156203ff3ca24b427c12230302047c435bb500663064023041eb3086d1c81cb041fddc26125f8a7a0e28c798d27fdef14a866838deccbb74b2fa6ca445ceaab4d3f5e7e27d2f30b8023046693367c87352d3fac2293ea147e1156f72e835240976a06d730dc2fa4dd3f074da70643f0ef661aac9979219312c140302047c435bb500683066023100d06f495a186fe6d9c64cb3c7ba3762403cba538f1002c9bbd6748b7adee6da09da0586b7bd732460845c39451fecd34b023100fdf9bb91d9b402aea97655fb9787396f28b44184f7e65b87fc47e541d2f2ade6dfe6681c7eb8e2a0714ca87d97d771350302047c435bb5006730650231009f74b9d0581c7e2f5c0fafb0d879865761dd1f0039cdeeab2dcf1864678a98fb440d6b4283ebe7ed6ec323907561abca02306e96a3852e5619a5195c203c2a7eed051a3e56edf13fb645a14444f07796273a5f096f9b791a5895e27ab224f9b866b40302047c435bb500673065023100f435ff16ca212884338456b639f7cbfc7f02d900f4642e62d7561cac3c5905247805ba2441dbd173880df236d7a92df1023057dec657d0028a7b35b713e825e5c9dcd173a5f1a2ac879e8651bdee6772b3a2c1a9401567ecda56c8914227f8b24b8b0302047c435bb50067306502300fad063baadcf665f601c7c84d9784194b8f732487787c1840dc01501834ec7d2bf3abe632acd566a1d1ae4e54999dc302310092627816f06b3d0dbd6446a22e2a2fe06863676a2b2df965f06d22d3d653c430acba130b62f56b73853b031a67466ffc0302047c435bb500663064023003bb1d64de5bac296e76602a7a560bdbe646e89145fb095c38d8a6ae424d7c8db9d5a252cc586efb03878eced36c4ee602306fcd89d56687c03e1e9d0f3a81a0fa7a2a30389ae3b578e52f5a8bc54d778276ead8345abbf878d8d410c68472b203b20302047c435bb500673065023100f7c117d6384477e2ac8f76506e741e4c8be1651f20c6fe5a86c78e3b470327a4c2dbd21cd300cf66bcfdc92b087ba92502304db7584bcb552165472e3c67bf8bad74502e1199249d19de1bfbfb2eab73aa3f41a109dbe8f77e6f435c2e676218a11d0302047c435bb500683066023100e76b5701afb294b649ec8329caca8af396d8e2845ef716d6fc812a9ed27b4acae5eb590405932cb779736e0b209d738e023100f21e8be087dfcfc9013ab71860d2fff1162a005d31413491931565ba3192f067733b4b18d876ac0dcb5490ed9861dd370302047c435bb50066306402307031ec0ecb08705640aeeb451f4ed4e2864d3971dabb6c8862bc61f92185f61b2daf35f2853cd9aaf4536e4a93257380023050a54b17e118f33916eb0686e64800edc33078054323c191a407c837318d9a5fa5379d0befe2e0ca0b4d6c05b8c1fa250302047c435bb500673065023100b612474457aaedbfb5bd1cf6d8e57f6f6a950bc08a5e22454da623c31ac9a777b083791677c65c63c0dce3b3968a4bbb0230630e26990157a05c50a30ceda7ba4cdb06e96056ed67e24a12f11c8ee9877a4892d7a8c73d27116a07bba51dd9d6b27c0302047c435bb500663064023037d4e15e4281dfe64f0e3a38c505b36fed6b88bd4d1aedc516cd6f2757e5195af428c51887188044a369f93837ec1d0d02307a244dee5ef52041c646eca44476bf1b0ae2d848f49ff34380a6f682a928081da25ae90abd43e30dd9a64681a06ae6390302047c435bb5006630640230130e52a92639b5c9c6494685eeca8aa320b1338b68dfbb9498339498a52e8bcba74701b723972dd6bc98ceb8cdd43ac6023055b48f1764f8bf680b9cc837b7953c22b0e46834fecdb6dad2a522a181e595cb1c5a60d805c4148f013f4f33a3ada74d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100989c80f2f28e04c570de483effd09c7701c6f844a14749a08e1b2d467cbe1553d5493060a02626e791bd691e4c44c085023100f219479897a55558796a86d837a925d89b084b526631eff2426a3a2afb7122e8bfe9706adeec137e451c7ff0130320730302047c435bb50067306502300136eaca485db54b6396b2b09c40be18a572f24bbe12e9358705efef084f2fe7cb1a538b56d38d56c1b9281d90198a2f023100a9638796da4801757098d2f1dea5b3be0dbc9cf0fbefe7ff9e0ec1da9d1c39e328328f1254516a4627a8b4c984aab6640302047c435bb500683066023100b296a9e65e658e288a7589e399a6f445e34a44ce1e01caa84cfdec511ede2c272aa26ddd52f09387a8861109d2b83aff023100cd29411d3507633a50e23f59a8f7115f6d0771f73f89377f5be3b002825e5a6577fac414cfe4d7f5155c56f3354d0e6d0302047c435bb500673065023100a63049f415614d1d4003f9ea1a3982104634adbc17318ab3d489aef53015d837b1783701dccdfdfa14c374f2b6294d070230735985a19e7cc93eb5e320ac567718373dfd1312d223ebf4c0513e85ff6e0014bd25f95f1409e63b4f1868d9c7e30a180302047c435bb5006730650230715cb0602b75d7d3f0a194154455d90ca31d9f5122446c4ec306403dc505c7feb987610b80fc206f621769c8eb3ec6ef023100fb11853e468379ff6d6289edc42580422a43e3e97e97b47fad07509d555e004fc5bdf77d5aab916b1f078e1b188893e00302047c435bb5006730650230349c9887cdb386a14643b43ce4d0abda5e0265fca49772b954d02e9cef7a25a69d442b1b83ec978d11d5f207b370a2bc023100c9291b09feba2111cd487372224c4d0b5418de29b17f0bf3dcd066f4a31b7cc7f28d624b5e00a5eac52a53ab1bec68190302047c435bb5006630640230395b74ac81c2b8f1ab8fc8282052d5ddaad0bbfd82e1df0ebd9b91bb6e3989dbcefcc1105ce088809e8d2639c5d96dcc02305b34575333e5984631ae41ef7e673da09ad5e2240b6407e6ea6620dd5be9e5acc8a313d10d4c024de73c4ebf396c2dad0302047c435bb500683066023100b552cd9f48dcf0d0d0986206e82a7fea03e6c53ebd4107a7f8fdf185037f0fc9c3f0f43f1f9c02969ecaa3ca5eba4ad90231009a0fbdf114b840612e5348dfdc65de0715581507da6bae7783429d9416c67da1efc3d579dc2447465f7e5cc218a73fed0302047c435bb5006830660231008da9003432d40699512662fad48386b4a177ae796688b87493012326bb41d752a652d67c3275db79dd1ee9f1fa80671c023100babce02407c81bc2107bb3611c1c095c0703a5acbc13d2624b1ad141338dbd81dff1de986bc9d3454a230c50ad5810c00302047c435bb500683066023100beaa937bbb697eeb78a41a69b2fcc097049f98fd32d07e64f7692c28bf615cf20c2b486bb442f81443c7669efd2bfd66023100b772dccc8da1970b286a1a19bf00fc3dbf85d4bab86771d195351c10d653acb82a4422336fe4a68da6f608f4cd8d8ce90302047c435bb5006830660231008fb596d94276ed6cf570c49fe37ca4768dbdfa4be7659a85beb65e8ff37c88c544e48ec7f1ed1e661f7f88d0b37997b7023100dd698d68523ea487dd7cae045eb156c38fea17b9c74640454bc535f209972241f7bdb1321d3c7a91c355fdb885192a380302047c435bb50067306502304f3f91325f1002457a41da47db47a6788c5237c8f2c50b5b45b9add91f1a26a90f5042d92dc23751e33a09cf21a05117023100f5485a4c0871362758820d8d616406d0d4519d0e44be46241413ac066689467a96d5f1c4c60f75f158e199cd64aa6df70302047c435bb50066306402302b6937f645e41cf2c94777e86000ef5eaf1fb73f21c2183ffb5dc850ad2137a519d4a7fa879644100c1902e2c3124b47023074fea640a5c231b74b534a0f104cced8ac59fbf7e61e996567710a49969af0a900e1bb1e354d49a744bbd6a317ea83290302047c435bb500673065023100b1fea18b52c69b3728bb55c89389df56887c21a857abf6300c21c7ace5427bc6b06729c567e84ca203e58b992e2001ec02300fee5a07113bbb1ffee33aa234662e992bc36795ad29c426faabd7f07a1ef58637b11a6893ff49f328730fcf0296fe8c0302047c435bb50067306502307362da3ac37e419eb43ccda0d5c83d665143ea1e08819c40e23cba06a54edd8b2c96c50996f6d72085a47bf26687416502310083dcc84be2b2e9898da37fa324f1b147fc3235918ee42877da8df2788b2360866f998cac92cfa0981dc229ba0167dda50302047c435bb500673065023100932728402e38e01aacbf65f6ea29b6ce705efc20e02eeed7d8012a14ce0a4ce813c7a34b1fa95de9b5ee411a64fe721c0230251f6806cc79aad78acb74b9494c283672d82726c5af247507ee92fb1be9933aec76c0f761a78906ca9af309d87e6e8c0302047c435bb500683066023100cb69b44740300308108aba64835f882cb8c63d5e935efde9229aaf917809f4aeb3cb1b534547a7dbb93915364c8ddd64023100ae6b50545c5f02ef3b06f1679818b59b75eb12ddde3219f53dd5cd64a347362083f7bc1bf83a6b51d8f195be1a0dbdf70302047c435bb5006630640230126e59232863855b71551840e57355814336306e0c5254eab374712637383c185782d19993f060d0f0faa84a75fd602702301613a3167728ec3d7863351437df33c32fe6121fe1041f0a9649a63f2496ddb6a964312bb0454c5633f9e747da51b4430302047c435bb500683066023100d9e78e50ab4cf0853814fd0551f1388b0e50d00db8ea6a94ee787eef9a63b7096cf44ee3f9eb75fe553bf794e9b3ce56023100b1ac2c7bb3cabd8b6db4ef616c879535523229f58de73c03a7b8f7737c8de86114108cccc5f735c6fce114bc2fa76e900302047c435bb500673065023077fb94d5b674966e5702caad6cc3fa4475fd289621d1505940c39d897ec54a45d6ee896ab73a16486fbc46a76dc6d4af023100839e8484dc81f388062eead8e6fdbd0bf9f6071fd14be03e02d97704f9d3159fdef7ed7a40062f8c808366c16aa48cfe0302047c435bb50067306502305f332577bc77de07fad9e605838b4d43024f172ecc7f1df88bb265156d49d1db66694674b1b91031a01e72a18849a6dd0231009869cc8b806ab21155c8095c8310db9b50ade889b6c1d59eabc3ed63f8d2a52e2cbfcaf13b675925c2c2f4703c3a15dc0302047c435bb500673065023100a2f60ec600706db63f7106a204db049eaddcaad27c281a6f4e7142a906bd67b36bf7eb26aaf39531b8ab27133890243702307b46053979aa91ed9df992bfb2b94e9e10e29ab5febd749a70ceb8fd0d6c6bb83a9603a9e62877cec0d5212f7e82b82f0302047c435bb50067306502300744d05ec544410d9af1ba7dca50eef5b6bc31b5326a0021e808ae5b2ebbff8e9f89b0b3e21f9660520a21a3ca9414e502310090b5237d50127390d3cc81e7a700098b02848be007d41b8ccdfeb98ab08e7c79f4dd5a43c9785f6a686e879c8ad0f4f60302047c435bb500673065023077596baec72a0a124f90ab05ad5cc0e2c1a9f3f9da14f8e81598461d909adafaf3b6db072782ecd3fa3c2734f28fcf35023100b547cc5eb385e05287473a2666365b2bf03f9639dcdc5fd8f353952f06b6c4ba93a864aa0ece3c8f1682cce8fb8d945f0302047c435bb50067306502301adbf162ab965d7aa335105f3c011ebf56000c8b58c1462f5705eacbaa75c34a206682314bf9f31473677925d5569dec023100d828cece508119d8c4cf6229173a3f2df88e50e466b5261cc1a2355ed03ca0c88ff2e768ff9001de4032aa03b20dd3680302047c435bb500673065023100df9efd441fa373b1af05cde950662090082ab6dc3488cf4ee350302874dc36fec257793698aac66dbf7366d278b2f3050230613c0f5ffb611d28137de2d34f63ad8ad6255e54e3b1ccc26dcbfb82691e4de0987584e870a7c9f9dff3fb95fc82b90b0302047c435bb5006830660231009e52fdb2ed4c8c7503a4190ca3ae541a1d80a4e7b7165f74d5b2a41c63d7b62e531d16770e0725561e07e5f7e094e506023100b718edb7b7c614d545b67669b6149cab604cd85282633fce719b47ce87f827be651682be22f96d076568ba0a57834c830302047c435bb500673065023016204a2bb8eaa24453b61a2c72d089e771ececaafa265ee0cea4cac5635288df16df62b48df805e60444ddf7b6ddbd82023100b1b2689cd722dfca0b71e9fb2be5d49de35f595474e2e515bd9ffcdd48f8a74e1addc434eb7b0e136c9fdc531fb8652f0302047c435bb500683066023100f2f1c54f06b71254002421ccd21206644b72065932e6ad738f89026693e49c90e52d0a75119915161d7a200cf6ed70a4023100db14aaf6f84c97054b979b7779637cc5ab627933c2bd0c5cd36f47ebb9a8a6e6f8113302646600e091e7a5dbb680f3e60302047c435bb5006630640230754f37aba44fa7629fbfee1727d4f606e866c03baeea8fe442bc9e26b6b05281b35e6a0d7abb2e6f90973e374a3c00770230673b25bd846096dba9df990e098bfa6e123c65aa1a90a953d36eb822a18f8224832f3b9f8979263197d38d8b942da0470302047c435bb500673065023033aa86be06407a1df37234252877ce85457be291ceac305d79a4183d8de730cdc2518ffb0e570fa7dfdc4ae2d1db61a902310093ff73097689311431ecdfe31872a7b9ad839e1b4baaf484ea594d5697f11bd1d9a20786379d695309d18cc44fb21bec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230409572b02784dd46426e74cc0ea39ab6aa71d968174fde96a6f8747ca37d0b4aa506ca663d1689d4e20dd0dd9615086c023100bc424522c5c6a7802224c6d266d8c740acd406b9cec60db59a13588c3ccb5d2df0409bb7f026d573bedc65a2e019741e0302047c435bb500673065023040fbd85d922f76242615f97cd5339c6b877fe5c46d21edaf912d337a571d56c51999fa264f2c006bc2daf1fcd07b264f023100f50e46fdfcc6c360c2a5784b3a1c6e71dce3a8db2a20cd1c1101983c30ec749e034f283ed382f11186baa401a059dd720302047c435bb50067306502310092e3d0e8682ddde5f70dae3fbae8a7fc2ddbf6c6f4b4da4d7ab077398e67ef67106f989d67ca2e61b9d11cc9c6b3c8750230328cdd2f4b496924b3547cceace6ae95637c90adff9fb09b0d242f4503b87c8358139639911e78447726e4f9ea18ac560302047c435bb5006730650231008e674f73d9bd1c51c5e651330cd582924faca486a7cb5822de0fbbd3e043de4283b93de05758046c1e6783e602bc456f0230760230427279c956fa9d46e08f95a4e060e4411e65da0e0828f86f87a4cba70530ed1665ea905a48d6d670bd4948ddb30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008374fbace1967cbad5de95c43da1aff97eb72ebd3fe1ffe2ce5eeef156f11fac1a72ccad0dfb82ac20d98e0dc2b43722023100e6ec925f600a3bb3799a54f3e8b179d4746315b3a7d38140c211b5a4ad0b9b13f53a9f97874208bd94243fc41fc75dc20302047c435bb50068306602310086624ab1d7d55f3738a50a608dc382b52a01535a5832838c784406abfb350ed9b592905cf5070097f199d1c916f88e4c023100bf279d573887d34ad642a5f7fb54b909b61332391b1f1aeeb16419f535183021f4352afa45336294b14640997f6fe7d10302047c435bb500673065023100f8da2dea1de2487f78b74b9a040146d2535146e326067f3faa5bf74dc67839a0d38275cd6dc84623a2bba010db36f07b0230251591922a90f4abb0ffb5a118e116c9fba9e6dbc4128ffbf96b1bb43877c25df27dca1f7e960d179220df31b88123ee0302047c435bb500673065023100d8322bc1fa2947f80719216b74f81aa5fb142d54289a9d0d5447be016394e4399dadeda2cb7d301921d19f0504baecce02302fc87ae59209a5ff2d2d9ae7b67da8a9b0cfee69a29b544241a032bc627af9bd361ada31a9beea8687501858a39329f20302047c435bb500663064023024b5d360a62eb83130fe012a3229195a7eb579cee6ec58030b61261561ba5b57ac1a4f3c2f5780105c2bb0ca3751aa4c02300b3b99d04de8e4fea7a3310684e4829d1ac610a086c11489b9d5aba53ff3eb6be89d07256c111a54ece940c453c911390302047c435bb500673065023100de63ffdcfffbdb86cd875f3a750be01c88d095de0ec3e660454e753938edf9846fe0bcabec5bd8cb017953e75dc63f15023046663de2cf2ab55dfce5cfa71c854927ddfd1a48083383a9b748d5ee008668f15e7a9772086b880966a5b9180ca61c280302047c435bb50066306402302b631406be1d4be52b1e49b9d1458592b10daeaee5acabbb438798fbbf4a63d6605b411232eb79b08a0f9c829c2723b0023069c7a44f557fd36ba610c7f637d8be380cdd52d72b1b2eddee943ac35b665758637b0bddac000079f87ee530c98a7d830302047c435bb500673065023055f056e5181c9b941aa69476bb853982f7c3f751f3980920d3771e2836b9d8750e0250ddf32144cee4984608372ba84e02310095799e0fd0e0198b9178483d953bbf7e3b3aaa1814c9a8afb43c686eb008958746c9b6cbedbaca381951a873f98939f70302047c435bb500683066023100915ec22f055052da784a765496bff7274d3cdc8c01a294c05fc8e4dbe88999b8ce439611a29af2f33fea41b4a481c230023100ef569f2d9b83af70e8929ab9aaadbb12674d716d931f5f1dcfad85079b6f5598faa5270f41c1b9d690c2bdf8495bb0e60302047c435bb500673065023100f992bb8e99b02b40e79e5b228d9a973bef8c5a7ae436054342d569240cfec668ab8f09c2044e02fe7faf92269e0141b7023034dd284496d2dc13351cb252d4933a2ba26e2387110bd3fa56ebdbe908dec0ebb450cf80e02e2d63bb2c62daebb3fb5e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301ceb156bc1e29476b3e3d8030db97d74e01ce6d2e9955ce1e1863e557ae761d88bb5ed35388f7ed5ca22047c69e86adf023024c2b3de0a9a36b49eca1eedf89200c385ce66d03d10ee620e0072201b7a530be6f6490498716947f2db23267ae64e0c0302047c435bb50067306502300d0f2e96a10a77a0d9b984b022516033f549771a3150faad23734bb4e14cebf302796a9b68d4f4cd3371983115f0ea53023100dfd733825d396637b348517414edfd89b60ff76df6ef4b8e001a5e15a1090a0a7f3637df6d7700d4f1f324e2dc597f560302047c435bb500663064023010112324a99271ba3f6deae72f5d63475a2fa56ef4dc7d2c871e173a1214ba7f20600e48fc020e9f81db7a87204379e60230129a6b48c1b17bce70721c101846ca1cab5aef850ed97ea6c70223bc4663deccc3ce1f6da52bf2daff8ba0d8559cce6d0302047c435bb50067306502304c9d3ac4de33e0881e07fd00a5fab070a1d780b40ecd386f80b3d014ffdd42e908d64501ab97370fc0c99d45f9e404ea02310086595dad7f7bdfd2d074103b404afd0f9696c3cf4ccb261abe1dc309eb2b5765a375e34421edb7c415bc44d93831bb450302047c435bb50066306402306ed3101cba2d9223613392564a80a8c3f2d02d620481adb026955e7413cbfa3968a8976d41d55d3cc7ad86b28deec250023070713b6489eed7e8a8462a4aa2d9dbc6a9b3b682e768cd7a3bf7e5a1aa701247ccd8bd5c63393cda2f45c9baa12f3f560302047c435bb500673065023100adcc5f99f600f6b8162b1a1d25211b312461474319d518450ab4d4b2d737c88490b0b695f4776a10b704b94649774a24023024aa8424f149ac9e88e09f7990fd2548246bef1c507b879bfe66732c14a0c921016372e82e29284c59ca0c183b088c050302047c435bb50068306602310093f91de16157df98766e56d669863be51ed55c10e15739ed9a87a9100131ff35c84c24d53fee0d73bc505e4fbd62a747023100da781d105ce5dce37634b55867d28bb4f22e74565e40b75d08b7184247ce3b2e8fe7fa0d7cbac5b168d5fe2c366fd1080302047c435bb50067306502306840e656da0350c309aeff7d4744d719810fe679de2f4297dffa0fb5a533d50d29d2eadbb6afe669420a44609e6118de023100f8cbe2e1212aa5b04c1e0e1dcfa88c510e25ebc0bd7c9eddf9610a044fe3585c2479b1f095cc3d47c81662caa31709f40302047c435bb500683066023100a0683c9863050d2770eaaaee97a4a718623d70d8478ee0a2afd914ca332c9e986385afb9ecf67e1f31af2a481da6e8af023100bbb7c56144a52650bd4cfdfc82435f27be7dc1d77336bed6d4d799c153cb408e420a738cdb593e064fde5bcfcae81b280302047c435bb50066306402304c9f2e2f583febcb69cc0e7d037cd7e4cda87204881c3f6972ea023915bf015d2ba86330bd5f09937c391eebadd3340d023062234fcd98a20bc75e9569625c432cf97e8cfb9300bddde4cf99bf9a0d9362ad43adeef9cb34ac80fee9770b926f32ee0302047c435bb500673065023100d2f936717dfe24e3b097272b95e16cc2a6c666ed62026acb46fe258a8d9f9fa06d63d793e00c930a64b1bae028523c9a0230294ca3e414dfb387297fe3f213fb0cac981a590d33c47ebdcadf2dd24b761b3400431dce80f4b3478f5edda3a4251e0e0302047c435bb5006730650231008acb8a17b3009ffee54485362556466bdcf7cb71b2c77f1a40216f472e90fb300b8146013f87d7f432a5b80621c6a48202300620d9e7656f0bec0f33d0696faa9f35d35ebbc8dece0f5e29517b3ffc58444680fb760ec1d806532784740d27d65c2f0302047c435bb5006630640230563d75d56da550f7d976f78eacf69f224e7d3335ee290f279364b61d1d11e9eeee8998cf99468d18864afdb8e2e9349b023024fa21357df95b78b92a12bc41e6780c59720c7adf1a43e5018a531dea6fa2ab94b75cc639b1da89ac949059bb9dfaea0302047c435bb500673065023100e899ec9a9dcb3b3a408e2cf618dc955b129cc168f6ddf264e226ee121ad0b44076a97e9bd6769f5e05406ad39c02d70b023007a8313bc6b2f8d178003fb1d693fd2a0e51907cbf73833af3934f3e212342d17130caa717ac6814ffc2fa3b9468bc170302047c435bb500683066023100da6180ec649bf32d25e34e61ebb306a7c565257cfb58f3aac4ba4b7357df2186d2a392e3e7cd7fd51a3a3a887cdb956c023100ee9345622b7a3957bc532a576f105a5a40d32e5c2798179103797982f9d54076f3a789410bac12a58a51962486043d4c0302047c435bb50067306502302ff9fe1498d5e59a144d4b67cdb100b17ef9c93c0eb35d986a7a1a9470716782efd2e1fa5399f9225488cf650b81f51a023100e3e92e296df09ff236a699ca57241733618d3d646ab020661748568357d71a5d0b50dde4c6c77914b5bc473ba8a1f2b20302047c435bb500683066023100851e2b7ef4ff39d2bc469cec687f3a6f4f75f9814933fe8d9743e25a6d73374784231b411a0eabae950da9249474c571023100876e4f10c1d18aaee516bc98039ce51170021bb72d810fd3793a141bcdfb9220b01029cae0caefbbd776b09a129721dd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023042508f1acf0a6f6f18d5597ae38e2de03a52614a67670bda087fe015bcdedf0da1f3286c4c1b37bf677f80a14d57033a02310083479d16a264499c59ec060538f958767e39029e74add7bbf0db25c2937811c50346dd83571e70c539bc4f1ac63f9a380302047c435bb500673065023010efb04b3ed9af21917e2883327584b48db61765f45813035565343fb8c9e90f4294b7b05d10c4a1fd65f9f4a99d80e3023100e6b407b2c23f776afc80f4fa64aacb17de4e78df0d10b057964a3164afc9029819971c299c223a9e8337a5e0b41610df0302047c435bb500673065023100bb32a4795f3c61133c84a3c2b2cc430f3f55711f695d7816163e46d7206c8c72833a88e5f2904b61a798657b30ddbd1d02300423575df7dd72d86b408fb966e98f03e95627e97a6a664ea6c12e0a644b217212d38774d8d120e4e996cc1d149785960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e84075ab486eb202c61713247fc6edd8a0202f6fbc910fd7bb9de1ff2ad69b444bb2c535ef7e26639c4ca6cec61e891b02306f37f999cbd27da3a578474b39bb012e2aa8c4629cb519f8901bb77af0f22cc0aa8944bdb563ae29b6e7c3541bd3d6ed0302047c435bb50068306602310092666a4c650192eb08957571695c51e8c38565d689cc5d9ec0fbe18fea97c24ba565e848f91eaaba93cf3420d9415d46023100af02ad2535832b85c76889a98ebae451f3304a917924d85f16347da72f56b02ca433540710fcb3f85e9bc3420076ad780302047c435bb500663064023049e9743474c7b9e75f7b2f7c6528365666c063332f30b439622add14c5f5e2b46e5dcc33d731cc9e1e80866a3df1102702307ac63ad854477dce55bfe8403d95d9e4f901492b178406dcddee505e7332c2402da88d67f2108bdb8914f22d17d6807f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a85d8a45cb76f4d2fe80fc6c09324aed98b53fe18b345cbd3965254d9e7eba34c4e6fb219647a16cc2fe5880c6015779023100b88efe195ac7599235f1fa7307dca8b839912e19a040c35ffe8b5d1a9c2cb280f871bbfa67d75aceb14d12d81f2bdd780302047c435bb500673065023100e0f43bf6965e722b23ad74dc09381e0a15360f01d92d6d6ce8a62dbf2d3c6bab49db614f7939c52c9f216e8422ef53bc023047af4e5806b4af77ed765125efbfceecd9c05c5b936b4e21eec875cb81bf25c905d2e499bde182cfed10a551f93a1b580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f92a9e2a9f2ab6355812707e04b1854de13b40e0bc280b0c89d01cffe0c6edfda765f97cb02ca60148d3270007276aea02307e0f0fc1fbefab6aa65dec0eeaee203c9af1d2d2cb975ff697cee7d1186859099677bc838655e1f28d87087a3d0d40890302047c435bb50068306602310095b09163c4d8ea7d7988a15923b878b047c5342042c60aa40caaccc726f41f9946c0ec9140973810bc1736e0ffb84f8b0231009f269472bb3b6c9a37b3fef9ac649c8ddca4bdc96e028b4bd767b0f2e9366abbe3a06ce0d70e0bb5be803a0d1e1bf9a30302047c435bb5006730650230771d43912ab735f44e8f3f40518c7133e223dc03514f3cff7627167e2d819fd7d6928442ddc4eefe9edb5d2e59aa45ac023100a7840c68fc50c8efb1ef59dd66829dd170a0bb205f3acc8e581c5c7c0f284c2886aa0e1aa6860bf348e96bd5f95a10050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307415a96035c6f1d96edee8c28b9799e5280da86f21c901117a1db691c27978b032de1659220380ce1293f8676ef11a81023100abb3bba194e033ed948a8282588665eda96b104539ee4020cc40274a32c6db0114f2cdb90891f5b6e9fefeeff0fd25ee0302047c435bb500683066023100d8aadd9b0700e33dc4e7fcf03b652ab531f0ca87e88777a1b20386993704b52afe1c529134464aa15e49bf94c33ccef1023100a0b75ff4171315f42c6c6010ac789aed29b1a75d9291ee6a30c9f64e3790bb3ab9a6554b957538298f6de943b689ca820302047c435bb50066306402301438e343ef0a1425660bc7a957887567e9be007d72ca776735c0534629d28dbc69d2b28dd8c5c8bfe22920441a1c82a00230655d6631faf3c6c20fbcd3684e17a65516f39cd0ca783d026748988c2c6d397cd60cee5204f15976f6a1d8404f56bd4c0302047c435bb500673065023100ff3db27552537699e2154662b634d5df8e9b779f182e0fbe9709530fdd6c6ce8732e96bbffb30b8a684a8c54d2f1ca8a02302429254cc58f73d4e700eaf5db16b45333bf42feb194f250750827e5c2b9f8833f16340c60733972461bce3a10b251970302047c435bb500673065023100c4d753e795c2b7d7370c74a169cb8d90083dc348e839150f5c22615acdcbf7e03d23d1268139603d5d20a2235d04f15f02303464b960b893c778da051ee51ef605e7c22af1ab46eafe9d19e861b28d2801f1903b927a03669afda1e41c20045f8ab40302047c435bb500673065023100b346f168b6ac12eccb69417b1e841bd4b23a8bdb06d5873ba4926db8e9d97dc94f1b75fb92fb7fd7534e8d9211a9ef36023005bcc43aecc164360b257c8fb4a4327f547c48375247b7f39b7312a7673231586d1d75bc9da837116f35eee541d283b10302047c435bb5006730650231009d39da60758c10b006b099fe52f3df5dd2972bcc81a26b47fc6efb816ce01608f6f24a79c5a2b11f1756c83264fb2b5b02300b5c30eccfa3930968fa3fddfcbf3376eed234a2a4c9b050f11d126f4f650f3b721f7d87e7f821e69c16a06f506803b80302047c435bb500673065023100c372a9455ceeabbc63bccfa022a393d632acfda5b2c70a595a29a5eea6eb006d990c3dced58a40d8b88b2cfb0dd886c0023079c40077517c0187b93786e95df8a65298e7eab2e1f049a2b568ae72142cfa7b3a260ef785b36623935f8d3509b40d750302047c435bb500683066023100f4885d3ea9d5403c4f193d7edda2b04fe0973e7eb3a8a6254d3a386fea999449bb1764043fab808ed58d3bc7299d688102310090de9a914203fc7fbf3e6324a3f816ad009d198f7d501a946fd34997450cb0b4256bac83a8d96ac82c12c5185d024caa0302047c435bb50066306402301e38d9d85d8ddda92acdc7c3b5440c6d2fa7ba7a470513cbe2bf40c22673196c998e6b37fbfc60348ed7ba2ba099ca820230265468e6501b6dae393aae6788edc9b7a28d9ffed3f4c50b32b8c6c717d2202afce55d5f7e94753779cf65a5cb33628e0302047c435bb500683066023100bfed4944d51ad0615a0a1ec9d9e802cd515ac5344f8a05896a49c172e2f7a9c9b07f81d7d6a7352f432d7932ff6dce85023100f7d3e2f0fea1745b6861fc6cc78769f8b944b2b65d01e751524f239a3b0a80966ef2d2cc4ed0a4469944494de81a32f20302047c435bb5006630640230066082dbe0ef4fe96f43b54a94992aa3ebdfc516ed311505dc9827dd1b6b1e84ddb5b6e681b40839c8977c7ce8d66e7e02302066ec79dc47ef5c3ecce327a189572143220213085701001bb865ba2efd75a4d5bdcc692db2ff22f1710c3112e334060302047c435bb50066306402307901902985d38a7f80ca5ba985dd0e25b9a2740d91e075e76978726c991ae3b173fd70e0cc081e9ff047cd299b19c96502305272d48aeb765c34425cac2d655189510da0b6c1c01e21f4e044cf3d2d95c1e09cbd24c35395b2c85d77eacd66d81bcb0302047c435bb500673065023100a93f2d2a7f4c9e56f4de14d86b8328671b36b9b80221144483058f1c25bc1dcfd4c072627dcf79936f57dbba43eb0d65023074541634c72a0060df4393a7cf913c2ac7838a7d0108e273f961934a302947bde75a20cf23a3aa205c471f95e87129190302047c435bb500673065023100aca17825454549e5c7105fd22d2567826b02ea2d17c7cbc109211a2b0dca69939bb02ede9076c8abde6fb3741454b6ea023016bdd94e9b27a9c0dfdf93f0e82ac1020783679188b787dff174f494355d5067f6f7bcee65cd80d053ceb1570ea6160f0302047c435bb500683066023100a210a4bebaeb65ed5ebd4e99e3323c8c1a944fe3ec12ec65932dc0cbfa1dd43c00327a09705b710801dbc6e7ebecc4f8023100fb5a363ad3b3017279f08a6fc3933f6dbaed283edd3778f5513508fad7c0c0104660640319bac8b9194d758130b94c470302047c435bb50066306402300fe18c689055a1bbb23dc55bf32cb2b5cc1336ca9e1a8c4ba59f4d576bc5f4bec8372daf37af99dbdf605c6458942a50023034ee1d358479f1c383b8bbb0edab5864b8895ef25495b82ba15e38f620df8af9faf9d7d784f29eb7d35f8e89e0b177770302047c435bb500673065023100b07e4f358f3a70d023a0ab923644668c094502e2e462b91e1f53bd72eeacb5e4e3b25d2894f0c8b0299f068c0c09e1d00230185fcf8b1f7bf6e8eb40e386b3c83ca22cf9ff598711df3623277a3208c70388dddf3b78f023cadbfebde6698d6c84b40302047c435bb5006630640230553e963d1016b71565e53ab133a4bd09024aad03fcd37485591cad4be5f726753a49e00a4e6d85868d2390d70b12239c023008ef14f6f999aeeae5aac1af89c0b68d17fdda1114c66da21bf6bb4d2e07657bfa21c0e01268fbb6f9b83c2687f338b70302047c435bb500683066023100b344212c7fed2d47288320dcc13481436232ee31fc688f5e58d8fcb17ce8e60f978dd0dd6fc860b0e41b1071a0785396023100f2cadf48b8af5462bc38b99e73c02e28c75c4506f3f2614e884785e3e08fc7fd8838b5aec98a61aa5488b3dca6b072fc0302047c435bb500673065023100e8c7050d902028912e85efa4658764c5aec3b5b74b452b2521488a47518b940e531f1a86c82ee07f4b7a1bf79d50b40c02305b13e542a33aba7105e720c7e17fd52dd7cfc531027439ef01a25ee265f3b115f27c80e4c8587e8f841c57df60388f8d0302047c435bb500683066023100e74a2560b8ee1ad55b71dd2b5cc62fba10519b514fbe40192abf30b586a63049f2c86312c1b3a13afad6091bab9795fc023100cc14a979f684c667ebe94ac721a7a7fe0932c98f9a7a468a8ef7943c6c371acb117cd0eec7ae054893893f542d95dcb30302047c435bb500673065023100898241442abfd6465cb00f63971d7568b96ea6cc72fdc657cbef1ff6311214d48b2dcbb8f335258d431972b7082010340230474e03935f22466be56a5b990f35184f86705f649ab47a2c8a7cdbde38e72cb3d88efdcabe462e6ad02bd3797a4f9e520302047c435bb500673065023100e29985e3cfd2ea0e3967fb562c9e1069bc94f11e16afd8f3e8dbe4ddff4d39779fe21e0a9a4444fbaccfec8b28da4172023036b019b9eb9097b100ce19fdd5c8e6faa88e70320445cd3a3ca60f66b1341a05a7a639bbb4b345daea901ab46e06ffaa0302047c435bb50067306502304895c0ed80d54b9a9c612b93f60e8448dd04366878aac31c7f27116da10d4c922ce21a78acc4d26bf3f4f5751d036e4702310089e7f2c78c51822b4ece6c30fa85091fe56a7d0278c52eede29b3a5829b6217ecf6848c77484fc869b6100e9bc545e100302047c435bb50067306502305c15c2be13d91fa4c6f2bd1bd196e26c8dfa634ec42f648d7f0d7608f577545bedf230a33fc43ea6ef0f564dd9e2ffd4023100a9807430c2376e50d6ae6b001742fbf94320f132b217f6fef5818d5736bce043fd781c7872c7c025c7c3a4e8934874fb0302047c435bb500683066023100adf42ceacfe4941a67a31ce17cd1c4bd96fc090c370b624c01bcc074058a87f62e8c62fd8750925491b014010a831813023100bb1de1f6690f058c0b51b461ccb39bf844ac81a1b1f9b53f52aab9e575dcc0df22bbf1fe56cdd9eb873d89cf866dfaf80302047c435bb50066306402301998f48bc9b65131b2f5b03a254259682356d9991083c4b5a32590c0bd334b723452ed4216284cccc31451127de69366023079b83c102104bd5b127f9b4fde2585c153a2d27382e28f09222c7781071f89ed44b2637b6b940e77621cdd48c38e13540302047c435bb500683066023100ebf0510d7e64e81ff97fd82115d6c5f54a66ac505c9c26b1da833dd4a20c31d6b1eb5f3cde24b8d510b7d6a05fac1d4a023100ed3710565ccb28b8d38e3da7f6c6165878c1da5ec8b7ef20343973f67acc071a98eedc37ccc1e56877038702432132db0302047c435bb500673065023100e5ea2a5333551a10f78548ef18ed25d5893c1af0c2efdda5c8e87f9943c0f766226d2c0e1753d4250af1112a00845682023040564f7010ee2b6c7524aa2fb6c3884f529e26526effc0f578e2c753f968c5c7f37470c5aa3780c2384b4c1e5b4363bf0302047c435bb50066306402306b642c27bcf6a6cd0cc2013d8088206ee852c0b65610b6925d9ff881bc1c69c04f0649b32ba670d9cd7d30670ee8f62b0230585d6387fc6192da5514b0a40116036886c1ba1c1bf5fffd80a7855a3e96056eb620a2283084fac9d324e4e26f2d917b0302047c435bb50066306402301f30387956c49f4de4fbce8a6097628f4f3e9f30b4314c5e95b0fd36fac3bfad2417e1a2097fbf90113c1c818110666402300346ab5d950d04d58b926a723642d0607b8230d1e6c0c79d74502bb28cee430413090127332d56648c4693a2f27c286e0302047c435bb5006830660231009ca22d341377076f1049c5dacd5f2a7c16fdfe7fb14954a28d8010450ddd51666d6163ef4b2af2f916bb0cd847df014e023100b977a2a2e77caf228d669115bbd56edb83524459d7ab1a47cb621b7c1450fc1e0d02ea1a4e35d8ccef7a0556386dc9080302047c435bb50067306502301419b35ddb02f14aff9bb2db3cfad7838c91020ce8a2af30bb1851d727fcfa785b575985b497efa7533c75356b3cffd902310094363d1b0854af18016eb2e21ff246361537d0eed7448fdd086104377a5fbc73cca73382a5c194ee0e62f2cb0f56ccea0302047c435bb50067306502307c022c94a333afd700481e72caf45c763504f672b18af10ae10a70cf1d361563cc7f98cac0bf4c45b6d8e0f5cfe4dcba023100c982df9f2f023ad670fd1afe9882108887368d414ac3e41aad4be465890d5aa3c10534ff22055876fa9cbf7be49e828d0302047c435bb50067306502302652081c0c514ffaac4f1722eb3e8e7ace0b40194f01a3cd60fabe4d5630b78dbbf3d78629db4a0ee8d2a8b3120e08f3023100c430863b087ff69ffc7e5d6c12f61ca8fa215f5be5093d21e7ac30db698fb5b1b739a1af4ba2d37f11fd448c3afc2c170302047c435bb50066306402300efae6b57912e1f950a52068ae667e6ca69356323eeae6e940d019cf287d8160399cd1c527658080c014a4e4e9564b750230792fe579cfff807b4167f0b8be214513657cfc29d46a57a74d25acc7af45014ae6e84e278e1f23eb5337427f9c4365880302047c435bb50066306402306080bc24e3a25d6caa13151e8bf5c1e8ab969075fe5d0330312f6a8ab62fe1b3289caec8abfc55a2feb8d9b75bf6dbdb02307dc2d9e6a817c1337cf1b26c1231a11b1bfcb49353cb9ce40f5299075748515b4820617e3ba251ab43d52bd34d057d1e0302047c435bb500683066023100ad9c4e3c3bfed7b917d50a9c8b3eb95f85d2f1359446e270c872d8f53a5df3a72b9f12c679ca4adaff1cc8bdc5c77f15023100ab6ee045cfd3db0524462a8bff3d4b2fbd272d49461100da8d979c9349b1a6dbed5744b0dd0c6a62306ec30b16ad8a910302047c435bb500673065023100c158214ef3df50ba1cc339a715b4bb9ba26886ff6d382af3032cb43af9a1716bc8ffa0322248f84aaabe7f50b79cc027023052ff5cf4c8e86e024b17335aae55babb1e9755314cd7193da98af05ae0fe99274aef481f98af3932ba4e08ea598c044a0302047c435bb50067306502305c771d78383113dc652b361229748c0421cb28649c680894b36d518ee92e39ec9bdd9214872ad3bba64fa1c06aba2007023100a584b587226e61f6bd692dd6e14d7409a0cbf6d4337ea914fbad728a7df5eb17fabf3657a6a4360f6d6d17038974cf770302047c435bb50067306502301fbe6b8dd075f67082092503fa194615954ff567d77a3367da9f009854720552f0855a94183972ad4281420c4168dcab023100e19495f93d94e7bb10efebf72a9ca20a22a2536fda649d5d6d009ab96d452976955df9ffade1d412b75c21ebfc9d9cc00302047c435bb500663064023056527f11bad06e85b09604ec3eb65b08f62d164aebad5ae049a8d37405eda3e6cf60679dfa72fb7d4613789b1c7d16320230490bf028e93f64f9132d0036401dc313280e4041c65e1f2ad33036a5f5fc4f5b9978abf44bc36141edb4fb16dd7e6bfa0302047c435bb500673065023021575ccb8f002b001ab093e875fbd23ec6c387c432e1c9212ec4a2f1020d0b8380e80c52860eb3afefc0e341a7db6060023100d85b8ca9178ba948c4ed3ec1655413906ca79cce004aae05bbaafebb28591f1a531dcd885cbc3d9082abfb75b69899330302047c435bb50066306402304fe01b38a9da86b58c187b54c7e8c5a9879fd5279ac65bed2307914b76c32e93fe70273e67ccbed5ba05ababed6c0d110230753d3d62dc9c3860f13f1797b2fa586b765c0998d58c33251d4dae80fbabb3d7a4062b78b3cba42076d9f972482a5e460302047c435bb500673065023100eaaf29161dc6d5c9d1cbb59ad25cc9c028a026396608dc6b7f6954bdb813c007187041081c59e5d8a11342f9c73dd2270230019abb631aea5a349a47ec7fdef35dfd11b7f5259bdc08f66bd8c354a8b77c537f6f2c1635e4a74a0aa877524d689bdc0302047c435bb500663064023017302c56839ebdca978c40c9c3d8eb146c0a4d45260da91af8bc6ffffbb76f09361883fe3a5f6a846ae9d3cf72e17e6102302a5302d1b0038dbed14d7388066fb83073ca5c9c77665267c8831c819f9bcf53889decc2fb11d0133f123ffdcd92b2cd0302047c435bb5006730650230223c5643b6e6dbff10235d7c576b182573507a1216c689d883fe6775042afcd78b515f6b4245a830e6d6873c55de8858023100868450bf2681d0e1b0797c7d5d2ad032d1aaaca392f959caebe9cd7ab01cf5f93777982385fb996d5507e20af34b79560302047c435bb500673065023047703f188e5bb1377bce861ba7cf7af5c62d1583bb41001f44f203876962a136a91bef1a7734979e208611d8b18616dd023100ff4914c95c86ce490add18215f7a5b22834f6644a85103a916fa1cc49a8a0a7500af8a20f132ac7ab27ae664e60015f90302047c435bb500673065023100b8b21fed81abd31af22f15b0804055f570e84b7d69b46592c47a23142982893ad2e8112de2de9c9042a5458e7ce1c1200230368f48f2c136d2845197f2c3484b11a2b26cbecaa74f70079d663272552c7b2bac5c77e6acdc9085ab1783651712f5b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304d6c85654b9e12979621e8119c465218e698c2402ba05770a5e6041cdaf3258b41e36041bb67b3c26e0e2fd47cc1d24c023100a34ec00fc4598fcc50445705ef27a3b1cf9ae3549453f1f1a711201041d1020a9c746ea8113e8120a30804fae10261750302047c435bb50066306402304b12b0adacff28b8a6fec4c8b86116719b812604a29cd684af5abc4a88d696a797c8a8b1f8df8f4e1a1b433f3fe8b94d02307bd867f88bb5bd323f856073727251699ad7fd0f8feb40a2e3d7f1cb0cb00ee2debad327424c7991ee2e2b32c348404f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c5895f0b026ec259c12961f9d2a29e888c4dd326de5f0d770ca384cc89bac8339651a97fdc2ebfcc71c1e9d9a03a14a102303f5c51004476524d0ec186df992a894103f3d0951188ef5ded28e6e639f715548c494c7824f5792b2f8b3cd7e708a44f0302047c435bb50066306402306c77dcb5a8fac7ecb7a0fe9db9b2115da7bb44664a4dd1d751bc93383055ae45a196c18ad3e665d2bab1f3104b4039ee023077be3191a487547f59871ddb610c1032623b56267f07693dbe881c2d7c4e755e8d77cfbaf1246fca482156cbc8ac29520302047c435bb500673065023100f0db35737674da0be074a6331763f0a8860d395f550d2f715f72b53a1d7dd62f54aea058787a87000d82e5ddbcc65e4c023017b5c5c83262406913360207a14cec917f97355d5f6d031abb2f98d438e88ddcb918aae52ee3a014d154232d021a619b0302047c435bb500673065023100d6af2e5a6036b1158e519cf5f1e912b1ffbc1e16e26e774c21146abe01bbb08193f1cb8e177f9ef189639d38961197700230515d3af0424c914e9470daab0027c584ac0547fa70c3af56661bc3ba6c99490219d267c2bfae76a65e6117bdd5c5bcc70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302c6d71ee24c6ec1eac4d2986ab9ae1b37e1ab0f79353890113b4c9e4642b4724f58b2b233e11cd1ec47082dc0207edad023077c7bc379dfc09572cb61de29c5e931042471a3df751552eebe44aeb26a2ef9381d7d33218ccd6adff6cb92e671989190302047c435bb50068306602310091423e7d2b50f93574f9a87b351d26fd8b00f062621a20ea99caac9115afcd2ba3a93f7b703dc4c04e17458aad162c97023100befb2fa027024004b1e7c9d857f6cd014591982e2883b1a47bdf6000bfc49cc14027bbc126bdd479126a3e6f876e9b2b0302047c435bb500673065023100a5757212aab8b3beb773c2783af058d44895772d0d4e25ab4523664f3a2dbc8da1c5ba96a8fc55f259ec122e4e4503cd02304617da57ad23976824742886802c8b6907e03d0fbc6e38424a4f197e469ac1d69059e19045a5f0f06af0aff8a3634d500302047c435bb500683066023100e252ad84d86fb6cec22a790e9365788a125490a55b818d68d84fb0e8ecece3846ee182b8d18564e321fd3a096cb82432023100eedb5f6d07fdc99a5d7ed1d990924d31ccf1b94a2d6b009f478de8c47a7ee8e2bc0f4c9f5556bcaecc1f7639f5f0ff790302047c435bb5006730650231008978e668a0aea050f3cb77f743e0bcab363706bc0abd342c301b0867116cdf3bc3d3712419881ac48d694d62f3015ff1023062f973b9471bf1c8746d2d17a098f0250a082b327a2961c11715ce3a35ce82b199f644b886bdd111a02966230b7a27a10302047c435bb500683066023100d2756f9cffa5821ada6720a32534f1f85a4c81e929df59f7f5dbda1dfa8932f1b65d197a2b27b4af57dc2b4be692961b023100d54a25b403865de02e4bd24b2ff833a76626bd1d182bf89ffecde14b5483644af642bba1195c832be0453b402dcc06f40302047c435bb50066306402307548778ac98590e54fe800255033861eb5357fffd1e86e1a1a94e5023c1c5878df51b9102be3465e6c720cbb6dd780ca02305910bae28aeb0ee437e998af49de2ea6b3877ea5bb3aaca120cc8592e318ae373fe958b62ad334063d29048c743bff8c0302047c435bb500683066023100da4b02106bbbb557a0270feddc7364830d90ba18cfab88366ec3ac2bf83d25c5449f78d9233fee0b2b0d3e15e42ee8e1023100f4cf8e3aa3b324485e6cf2e0a2206c0cd760b4606f2b18067f50b112dd5df0472bbc4e633f3b5df6027174daffd8711a0302047c435bb50066306402302d7dcb3fb4a824875bc1e3c70288782b814ec1a84af11c9d9302f2d765661a6e4f8c4c4b999b2ca0f21b497d5fbcf9a50230154e1d27358bcac9553763cb8506fd1428036ee81dae5a1635a1985511b56caf6071ca10746759bdd00ed09727980f820302047c435bb5006730650230410c6ac2887d5375297633197b978b12acf0f378f6baa2385b3607a3051c2c9a56e876e87c1dfbfbc36cf73ffbb2d4df023100fb7c495006c7dd298aa8b92b630b2ee2f8f70f5c3b4ba76f16760bfc74687dfd814e95dc970891f0b39939db6c5f8aa70302047c435bb500673065023030cdfa7762a545ce84d399e1b1465cf2e890ebed2fdc05f043a70161c9aef7cb4c7fb49b71389969d17eec0abaa7380b023100bd4ab55077fae15901413673769f26303eb042dc905d7fdc975b5797b52bdb72a9d6a87d13f03c75d3441b80db415d760302047c435bb50066306402302269ed2b161a3032edfba4de72c21978ad7bcca4ff94cb920d67af992972ca28aa0fa950360b2176af06a7c308c6bc3002301e5278a2a578f30c8f4544bc6f16135a78d869f4b1959845ec637130624a771ca735a6c9a58f4b7949b59cf2633c4e590302047c435bb50068306602310099a252eff6a4c2bcf9429e39b95c1d311eb95ce0b9e34ec9b329fb9b340a96bbbb74e3fe79f809b4545be6a9bfac2680023100c81a1d5746381736fedceea239316b488a974dbaa1e4bbd235a789120b0ecae4b9e0b6a6814501407bcc838979be80890302047c435bb500683066023100e43c6f9a4129a8269330284c992e87dc4a6a72b67d50c2bc9611e494e6e6c40b391263020385dffa320f22b7f1761187023100d6f9ea2e0a12a3af4f33ad405368770fccc886212b52eafdc0ddb547778f88e675c23c52e73927891b5a1926b0d88f550302047c435bb50067306502307976479f5701f82684cee1cb8a9a86162acc792041a5a7d90f57f762fbf2c2dd446f6732f021563bdf5c4b171e26b265023100ef6fe1b926836b41a2c0ee138e7d340f52719cf75000b115fa605e3fec6f241dda704b2863b286570d9609dadca4f2a20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c518f64de260c70bfb00130d4bc164dc85827dcd879343eddbd06ee1c355a85f7102f30191c7cd298186c2750f0eb270023100d2a59f449d989f1fc4517d274e14743388e47583c84e9957ecc0e8449bf5bbbef599b12ea72dec0f8e9c35acb3c4b9970302047c435bb50066306402303ab7ce1b08b812502cdf1466e445ea0d751f12122546b7fa47a8a71c63d5c341ba5e8e57e50d9a2658f1c7a4251ca5c20230290f5df95ee960902b5b80060cef83d19aa79e7c1a17cc444287b95e22b0c7618bb39883d02129885aab64df654404d00302047c435bb500683066023100fa4b39bf99d9946044d6169abd90fa7e3413b8ce6bba6cd24c204a874884f1eb4e6b1c5fbc0922f8f01d4b724645564902310097090231723cfed71ca54ffd63ae2ad259e1d51b29596a82c3b65b24be581fd0c267ada1b3cbcf32ad3471f1dae2411c0302047c435bb500673065023039499ad9e56ca0d8b2c84756dd4aefcdaf64b40534bfa3f611a9e49bc315826ac0e20ee867072f0bbbc10415372e647a023100d70399a3ff6f6b5031df0c236cf4a373633f3153e8bb8c2551728463545a5f2442ec25c260bc4f1ab4d8025eba914fb50302047c435bb50067306502303ba5b6f0c8288466fbc6d5fc23e1abb7284ce43482c0a0d60c713dc2047368aec6ab057fff7ddf0a015aee4e9d3d27d9023100fdf878307644a1c68eac412a81ce2a18fdff84425ab79a68082590b05ea92a9159375533372d60f45fac847ae0a24ae50302047c435bb5006630640230130c1cfc9f9947575f2bd78fbee6109b1a800f1136232ddd9dac237755fbaf9b83cc74412d8ea843643ea073b2f857ea02300ec7de2380ab771fe11273dc014c0d0713258a111a2a651d4194a97a546d5c047792bbd470559a4a6f952462e83750b60302047c435bb500663064023004ffc84240a6d1bb5daa82b2ced60bd37f917b18eba44aa6e379d38a17c398bc50c5605d909cad15903abbf57ef5106d02304c93cac8020e080d98fc624cb2004ff324554e8971cb7fa19b9dfdf884d4c9892fa1bf48dbb7f4cdf0e1bf39fb938fef0302047c435bb50068306602310081ac0c21be729dd62bdbb59d5f3df95893565a4ae11033b840ddf913be9beb958ae809f575348cb21ceef6c11c2e0709023100d54159ff2636816ee5bb3f4da4faa5f0de0e593965139055ec07b6bed7593b24a26b69bdf62d22fc68d696ad1bb71c2a0302047c435bb500673065023072b8f21754d4339a1477fe6054f8364af9918eb76fc2dcaedf9076fe986427ba22200ca363a2fa1038cf87ec0ac635ea023100dad4d7835cbb8dc338abfcba9a3a34a357ff8dee2f57f8a107cd5e5481c3f5740067daccc97f1ef0fafb2608cf91b11a0302047c435bb500683066023100c3c9e55cdae842bc92f3b728ef5ad729bf94457997eeedcf0f5aaaaa9909d9214c7e75b96a19f8452ecf43aa1386a1a00231008c1446f4f95645490581753790b87ccc96304201161f79536df0c342a3a8de707c864bd23acd2e706257c6f80589e1170302047c435bb500673065023100b08007cf002976b9dfed1e0c028f8818ca011afd5976e5d37f0a58d03f73898b69675286ffa8634cea038c9b38cc2a1a02303c4b1a141114d085a0a743983dadc04863f1ba37af24fa815588f33275eb5d6a49dccdeae313879f0f46cea8ed678d880302047c435bb500663064023069b8ea15877b3c7b11709dba11cebed7fb4fa4db59f5f345ad405bd4d67ae9441580320435380e4f0173ace2a99a468302300f84696770077a77cebe935f05a439dd24c8b185aa44f9cc69fd0998d85c1df0e4a872d4b5ce9dffeb981bc908d3dcdb0302047c435bb500663064023021f426f3221d0f6c8e3ec092a75600d36924aa6c860e45eeccf001de324571100ca1641211f5e1dc888e41e84cccd80c02304a03e1c8109f1bde0dc75fb6872a67045c33cd938e09bf66e1a99c883b42bf26b91618b7b8b957f4c1868dc37089aef60302047c435bb500683066023100a597545f969b97ef14fe21caff2097d43fbe10c5d176203e85bb761a32474a2b0f30cfa39ee1c0cbc772bc7b2e958f76023100b5b645d2de85157ed60636473a5ebf27c65bfe4756c5a5c93007ee875ae9d30a3bff42edd61038f632f3e31bc87c61700302047c435bb5006730650231008df3b1d5e0c8de173864234f8ecd3832eebbbd1e1662f4c299a839bb2f1f3dc9e49ab5d8ec3e4f2920e2eb9c0e8e7acf02306dec9177b827e8ef176c0d641b3fe621b4878920313150e06b5a6bcc1998ed878222efea1d6fd0967f927c9a59544ad60302047c435bb50066306402302c1cc869b37a09b9a0191136fc99998dec50ec6445669c9711c8cac696f7a86255d575bdb980e192dad0fb96850f1a3a02302ec9889c2fbcc3c415c5f0b7d713ffe3de064ae684ddf37fde31a9d668d7575de628b63ee99b575469a69a570027f2700302047c435bb500683066023100f30c0337d8d74611063e233eea1d3247fab6810af8ddc95ebbc89b2010ea29c14beb6224b3905ec769409de3adced84a023100c8220af51fa04fad7bb183be7ab55f386ba79879dcd7a7daf04fbbd77124f3cbe8746bb262d46752a6452a4d2434c65c0302047c435bb500683066023100a7d65af3baf8ed168fd8c05da12e3e7605b3b934ac3023578448ac7b035974558c4a16f75c06f4935d8542aecb0818e9023100ad6412a24ebaaa3182be5e6ab190eb5ab5468ec9c67624c9da9ef78e241651a3b027a34f1f18263c7cf9605b0b70846b0302047c435bb500683066023100d7677ae7724001fc487a9427f7ffe995e9459f535658e2c4213c550962c4440c32c2ee79d5f9b728377079e26e3cb95c0231009464a689b6eec99530ef33a7f8be06fe76ed129c352bc251c397831e3e065d9401da114ddb1bd8e4870301f09409e4d90302047c435bb5006830660231008db3edae0cd2df8d9752ced092ced857c1ca2e81ca6dab70ee558b81db7ac5d4297cb1e8fe59b8f6817858402a119ace023100f0de51c4d4585be6508fbfaf0236d7c0782b95f7e303fb9a64eb0c98423ad341584bc108b8b46c85aa0c3fe0206aae460302047c435bb500683066023100959fb0970393a57faf0b4d5b40d929a8b38d0b46ec8343225b3d2a97a25901ba01ec88f9e06171525e25f79f888f2a29023100bfa7443d00c27b1bc4c94630dac87d07a8e1e46f79c0beef0fe1ffe339ba0266a2dfda70c960d14c6f8423ff8d75b53f0302047c435bb50066306402306558427c8f1b008b0f8be099683be88637d97deee9b9371d5f6b463ebf69844a8f899b7df507bbd2aff084ee780de8ee02306fd2f1ac531726210625c572162a87a636b47eb40a429af65911ca0cd10a7e9e217959b455e6b45dfa8cbfd3581481ff0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c52193ef03009d845a6031b87d30d6290bd244a218d8e6ce85a94f975b7cb9c07f945b576c6266c705486436c0a64fe2023100d0c67aee641528887c50759995a0c889caffe183539ebf017822f6e9c223b93480f47c319607d7bfd95be89bb8ab3dad0302047c435bb500683066023100dbdec878f561650acee39352cdcb91b4dfc0d97fedde0f1dbdd4a4ffb246c9bf62c305f57d4b20a2020742535edfd789023100aa8fb26da16ba77d1266b8302d33f5a207a02a6ba989ee09ad4234c70a5dd64721b86dd4d9189ea3210b17135415b7120302047c435bb500683066023100cf5849ec00982ee04f4b484d8dc742280362269eee20f759ceb7417dee36979316fb58b9c4beeed0f27c668fa63331eb023100b4afbefded6840b5151d7ce090963d700b6c7c5fd7624975585345b6c7f7e446e975d60fdfacf4aa22e2c7d919f88a810302047c435bb50066306402307fc22f69de29652ade14cc5faae72833217242dca5c8ca0a478e040c07cd43ac85cdfa4f3986fc026c729d43bc79e00a0230749c690ddffd6230e3aed661b1cd65d00803e42114136e46eee808a8b4d02509e9e261e3e6eb0f543e8d72d1bc6cf4f70302047c435bb5006730650230468aea80a91533134fe26eb72aa58cb7f3959e2a70e6457e8cfbefb5c84fcea7feca6dd3bcf6b9944731df752d72262f0231009ec319aaa18904e3ffc137816ea1d088ad12edaef399debf90f2b1daf1c0d69de8251251e25be0a54a444c7a35453cc30302047c435bb50066306402307636146779f31cbb7fb981a6f57f88e451804cb56c781e22fd02ed787f64a6c4e1f803ecefb124544e144862ce2b655d0230496ac2340da7fc467f75ee33503204713244f9d5a1468d91301fdae5e6c56407007f80c62248ef2912f5d0906faf81830302047c435bb500683066023100ee5c1f3584ec49ba8a8e95b6c1e2b9f8c3d50bad69f870cb2d8b0c8c6394b9fbfb3a271378f593cb427196d883052ae0023100f706c42181926f93e26e3230f9b3159ececff8b3b56b30657c4ac82deb0c471fba9d4981d8d208d9fc17bd8dda5c2d3e0302047c435bb50066306402305b2e79f59b10ac85a2729c7e559cc467bb70207eda4ebbf4d0d60cc69033f7a47712367ac3158d944472de2c915a945a02304282ff694dc009e6a94982e4ce21a33c1dcbd7436dd1c8f43a1176001feeee3e56634d93c5bd17c596bea64816a4f3730302047c435bb500683066023100f99ddb7ab0fd1b42a72d39372a36bc96b2c8a72a80302814a9cb6a97e46ee0862df1001f63e61b44cdf82ca016cacb350231009bbb07ffa3214a4b3b4856a6c059a3e577681143629a1a277063fa9c0141e1915f23d2071cd7b8b9ecd922af5aa20d8f0302047c435bb500683066023100978ecb5456396a49eedb648417fedb2dc8780bcbd13ed40a759766cff11ff6dc628d79b31b0ad24f3590e46072d56b8e023100b4ba62eb4c296110310a09a561e47be80df989e1d60bc5179a30d5edacbd67d207e6f3fc4cf18016f33735211e202c7d0302047c435bb5006830660231008cec4df8e5bbc7993eaa71837d1bd477dfe15dd15d8763628dc7e55778f0a214499463c0118de2f79f80dd4643e467d1023100fd708875798d941ad9f2f8539c9cf8c7bdde46e48f1300b7f17a661dd290589d33801498e319a647683b14f79181ddc40302047c435bb500673065023009ddf972f1ad4191b79afc3615404c54252cae6557c0182f4fc8a0ab3c1f8b745196ee794e97a52f1aa4f5ed54c491d2023100a9dd650d4a31f2c71fb852a13d8caf63b899e604bdd65a0c9c9f7f66933bac53b62ab002acd37eba2cdc75e8c9a0b6150302047c435bb500683066023100dd42bfdde3db7c529972f199548fef8f4f959eb19421a0735c87c128407c3fa344a8f2b0e92328375c51e3b369bf2112023100a861bd01f47c7abcd8f62254473924d4ab059a7897d085ba0ece58141d5fc6519b9fd9fca1f0a141f1881a0536a2b7670302047c435bb50066306402302233b603a4385caf0b34df181c4e501ed354d7e49ddf58222c29f65baf7de1ef1d389be03ccc0142283a1f2059348f62023073a4089f2c3cd2ac78a2c4c4d1722d6fb91343817b48c058c869e88a1613c0a03d35b1d03fc3eac57d0f1d88e1612daa0302047c435bb500683066023100c53a60991f1436e27b0289781ce8468f3aaf97fc82012a2573a6c36b11f0456c3d3846125e78e8e96fe45973618c6c66023100a2fc254f3df41137c36d06f5104cc72e4bc744fe28a8dfee9e05aa18f35034c8697f99b6626f699ecb6f6bfdec7d1d7d0302047c435bb500673065023006eea699a746047c860130999f6aa14de68c410e5184aa2feb58047e565cc25738ecbe772d278ea5bd3f975500b8a9c002310087cbbf8f656163fdf165ceddc036570154b283ded6ca70ca1605be674b12bc3594e9bbeee6e92c80134845daa02b23f00302047c435bb5006730650230373fa9e9eedf544d88d050c6a9ebe36a9d05b21df5de3e3a32cc99cb1aa7f870336559bde4d1fc01cba11f1068f07503023100a1630e3b863a2d5573c3c0e9f6f68f8d59d7728362f33c1bc49d187c946e76197f11d4b588b043172a135cf1a9d9b5490302047c435bb5006730650231008d9e2dbcf42b4877b4b4090f1c0cc2ca858773371f813876078cc5a2085e201025c16a73f631396c99db10d03f59852102307a71b88fdc1c06db9930081afadeed2940acbb8c798ec8c78892e4a66f688497846b1f343df111f91746f385551b056d0302047c435bb5006630640230577815c7ce7bf85f706582dfd65cc0de38b08b164f6365f05707f1b372b0b93bccf7e20ff98b2e62ba6dcdba072f8ca602304922e1d55dab4b573d40cb3ab71b9886df9af2bdb52cdf76ea3f69e69565655b93f26130a13f4270e3dd1195336fc0fc0302047c435bb500683066023100ef356e301bed4171899e16358d4c945ae07a12fc2d377d2e3ea10601eae948132954d03de6bfdb42da13bb4ca02913c102310095d9d378747a687aa0c12e017459c5307dba9378404497531d3675734b46cc97c9fe1e688b3e1924ac088c51c1450d8e0302047c435bb500683066023100d5ecda101cb1e036bd668f37d7ceb3cf990b368f4e04b9a8cd404205cb76246c5dc73a1e3922f8d9830dd76c8023767d023100e062574add704f9487d048c1b9c7cbac68781496529568ce2ac9c1ce2707a74261e9c424a811803b1c7acbd9debffc0c0302047c435bb50066306402302f23fc30d1c8cb1b0134bcc7d4c802265fa72b575f6a188d25dc8b7ff53b571c4586e7477f0a52a92c6755da5d2fca2f023007750828d247f0afcbb0e9723f52159dbbe17f7ce7845f5d0435726b56a302673ec35623526b3a48c07850d1405bfe860302047c435bb500683066023100ff148518cab46bf969f8caa9459af3a4ca3b27d49dfd8c74e3f7b37675d5b5110e928d30a6aa12a12fcc400dbaf1ceff0231009ccb9b6cca490ff9349bb83d5a1e46fc4940d3229fea7906803f7cab354ff8b34861693010c7ed6c3d4cd559f16644ba0302047c435bb500663064023007232b90b0f0696f8cb30615952859f93b01dcba79be3425c782fb72e634d40a782203a54dc7457141ac94cd87900ebf02307cff54c62d87abbfb0ef93a53ba42c5660b6db9575ffaa9f2dc3da203ffaaec27086c0646d18c9ce46ab2601bd163e830302047c435bb500683066023100a3210c03679237303737c7863d233312f5885f3c8b8100dcdfd5082bdb409add8b0ec7ea80dafa2a7c0784f5d3cb9582023100ea068b09cc522bd11ce61f224a84c198a8e4836fcab5d593f5765f9a7cf282be1878f9b62f2c1a1c61b2df596b867ba10302047c435bb5006830660231008da8339f20463bf92a9c9fa7c9270a9c40b3b4eb82872d6eefc9fd352827edb0993eba48633ea6113a375cb3deb00d33023100a21c22e6fcbf7b47190ada0ae396e899feea8130cc3970af694b4f70ba207b7ff78f88b32a3a88c0312d1bdc65140b250302047c435bb500673065023100b5a0af4e2cf7c7addf2236e2e83daa8ef40e63024dcdfb893c216bbe6ecbd9c5446842706d5ff740f08387c1671141f50230145f9896aee7a51efcd3d54adfec592aa38d9b564f240e1d926f8c3cf997cbc75b93c1d77227650fedc96b741a5a551f0302047c435bb5006630640230081584763f9cdb1659fb86baca0fc84c9b581cf8f84cb7ddfc2b35658b982b219e82727143b4d1310cc91b1c0d35105a023059aee9b7192bd3c853ea3c5b02538e3736e7f3b3c8be3f4d1d35d9255599e98d0ebce22f6b41ae4782c6c9670686b7f90302047c435bb500673065023100fad0cbc6f3d93227f672cfabc58566fec7eb0e27b748018cc3abd2e52ce5f99c87ca87c1fe0cf16abf989f5226c24b22023008df587e2d2a012a17536caf544c0bb17f2ab184c9c4b7c8a67b3511263198c25ae1cbbce7f0337b075c3db4e67b45650302047c435bb500683066023100fcd86adce8bd21b1a88a67c2c1b5d416347b41d383eb7833f9ef92f7f5d1e643a831581002c945fee8ef076fefa9182c023100901c3a0b453efecc968cbf8351e65dac80f956fb939072d9e75cd4608fa48fd41f84a9f551927a0e4f76af879b74135c0302047c435bb5006630640230423ca1a99c2156f2fbeaa399315e785e498a6b9af36d7c2db01e1bef9beb120d2c486bd54a886ace4de053cdf617d24102307bc14536638d9bcf350b2bb39093e87e2440110ea9baba6a7757cc5c91762cec3e2d840d02121336aa5eea8190cb537b0302047c435bb5006730650230422a50bb4bf864cd21a310532d69c298bf08272189e580e19a29985077e1b04e7132e92fd894c3e627efb8ef2561d486023100c4fcba995143d0a9a4f731f81d0255c98282f5962308812b582c44e0b100888ae8801db126b997f51c91f4c39b312b920302047c435bb5006830660231008ae36a74c883e677dcd38b6bdb03cc917e3547db257670a3440cc9793b42bbf46a3db85a06cd9639fb7a34220fed070a023100dbe2594681ed01309bf21254d25e5d1ab174b2ca91cdeb30e24c67464591156268c212a79173300bc4d5a94b6855bcd10302047c435bb50066306402304f7dce0a146b07ae5f14d60c429118265e93c3ab99fd8129e01908abc3c6e94b2447d184001f8891ad1fc18d38385ddd023053f38b71334cd64212d9227a59f65d21843660bb1d888ebc04e65a5ea93ed6ad56dad0e27346069cfdd20e49f58202350302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ac9165ff8232a964821dd5bf887fc8030e9de1ba00cd0d4c263778b1783231dd7b953477733c1b4fd5385944fcbdf291023062938a92478f14c34e5eac223a183f2b7904f7db13a4f62d03a7535e371611f9a82fb098843f00a9f0a5a986e4ab72240302047c435bb500683066023100fc0e9ff81c867081ef07d13a4335524bfdc63a6e7954de767ad7a2e7d4e0b0c7a4c0ea03f65e61b6fb60002e259341f6023100b20e7f7eab6222ee4e6d68840b7aa93939556053f484949afd859cd161c50c9d258cabde279706af0cfcece9e0a84d510302047c435bb5006730650230112b762663bc8174c4aa7a6f80daa4f6ede54bc7cdbf471e1e6b38ecfcae27f655dc7b9c2332da21d333cecd5f50f6f5023100f3b46a2d9071615d13834776af13e86c910fd3221740dd90be25d29a09ebfb88a0f92d6c230ddc0a583ee97eb1a27aa70302047c435bb500683066023100e2d3234bb33905fe08f06051cf41b724713ac0b822722c5b23633ed8910ee9ac253041bed0a81afca8e2869bbe689175023100fc1066496c1350899f83f16fc79dfd3eb15a46036092aa88b699708f22f89d936a75290d05b204379c47c6511b5101f40302047c435bb50067306502302304cb799b5c73467d2258d0bbc306fb1cd834877092ab00dabaf41490ad6017e885d350c8e783dc74eb948b162f9791023100fb9e2a36f3bc9bddd06a4060080844d8959bbe9cf19ce56efa0b61b866f2d33e6d6e60c4ed571bc8756eb51ad2c7b8ff0302047c435bb50068306602310089e1b3087d1a62ca4be93c2854491529fa0accec639038b920ce52039cd36105351124d50fc357814006f4c592eafb82023100fff8602095a06191350e8413ed2033d755c41094a6b90374f13ba01095b166581bca7039bbee53766eff7ed2653ef5830302047c435bb50066306402300787bef97a4e57a5477752ff84c7657959a074e0471758c9f453cfe191870177be7b67af8f2255c6e679969147471e3e02305fd26a61bd24c120edd04de176950cc7a623796c35ab24e37e885d47375c1fd72c7da1054a01f1587b2ee51e3603dbcf0302047c435bb500683066023100b77e441efb3888f7961101bba2568d51942fa4880453cb3666cf4f3dd975f5b4ca651e37e7a2e5554f09a9587b8c61f9023100937846ba8524f859d39c6eba26842e6a5cb0e2724b00d47f7aa57cd62946aa540a556d2bc70fb075e7a66cbf1793c4490302047c435bb500683066023100bafc5005ca67366416b08fd9671ff136dd19f4539fe52debf89616586a55cceb0686c483e22f9e5747254b88a2e4682f023100c9339544562c81560d7bf06104c775b3ed5d720f9ef526b3c7fff4fca4e5ac5eec58f8a39f736a7c0a7e95bc4a2d62b40302047c435bb500683066023100f5831c318b6193a366a55d03584dee1c5c17d9891c6dc5a1bdb0bf9d4958ca2aff5f12fcd2252c9454a97f92a879ec590231009123b27b8b4ef7eb9f65e674f30b7dedd880ce457f83f552785eadb6af2cc3044e3b72273fe74e8d8f58ec2ed947a07e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100be512526a1650246cdcff6eb5b1203f042265cc52b85694acd43ecee088a15dbd6d5f9891a3581036a00245cbed3636202301bd83c9de115cd5c6aa0252f87613416d13b5c985b9478cba82b32039693db0869d8ddde865468d8662954b115cd5a8f0302047c435bb500683066023100dcd611a45124254c5e663b8966673bc8d33d3e43140df720ef32315a2e5e2b7536269b8a8bbb88f68510fce0f961e139023100ba071026ec169e20d56b64f8f7b9be5afb00ea3e1306fd4fa7d344c261fd6982e3403bfcbc34adda8797e72a85c0f1be0302047c435bb50067306502302c6ab579debcb8752e0ba8fba574c1a23e05c6385350edaa1cf641934ac8c532a8b3ab08add7ac11cd35604c33477402023100c0b5daff5cf012f095ba08da7c0acb1ca58f9af58a8bb9ed988b418a3732fa1106fb7650ca89a75e3ebbd8df1ecf4a6a0302047c435bb500683066023100f4deeca69d3988e4c08a53c9b227686b46706de43eae51601019560b381d2f571b8c99ccca6aef67ab7387227cbd4be7023100ad042b6f4eb09c9d3c535d76751482bcbc6b3ad17916ca23ab584338ce0a3085f70bf60effc5108f08304dc957ab40270302047c435bb50067306502310093245d8bdbd4af5f71d4a99aef7b5c9ab1f18ccf4866404484aa4391345ed9c4b7cc51c0e0552f0f069321f4fef048b40230607117c9f4115de90368f5428ca8655a10183d3440fbc6230524012521dc3a4b5c7367316d3fe4a85e0e4a632cbf9a580302047c435bb50067306502310098376d440cf841400b8088385f29fec15d7910b18c117cd7ee96e656d0fb9f99ce122414ef7043c3becee17412b402a402306997bd9213a60bcc8b93c1c4efcc9871737fbd5f928def6ba7e443f700c2b57cc211d36dcf0adb12bc381ed2fe9b6eeb0302047c435bb50067306502302fe139749f3c3be202452a8456e963e02d7e5bf35d83f2eae1d9e565553269523c5f0ed216564e3a354aa85d370b32ed023100e9ab6b4866f72b24e3357dced730a9efc000e8e02f7ad657c21c6f84f1fc7c201939477ed74d49563fe3b7fd7c8ab35e0302047c435bb5006630640230203b014250ea2875d8da33043db41443ce2a63b951d964ea66168a02c379c48d067babb7b984eb367e4cd228a14dcda702300fdfb8e5b1d79eb6d333c7f7a561cd8cb41cc9808e96646f875db46368def25392143730e76bb2bac63eb60e0b0cee3b0302047c435bb500683066023100919dfe46a616b3197a91f703623101f050c5bd575fdcd76f345c39a0ecb45a56cb52f5d8a696d7fafbaa75c6abfe58c4023100a73bf6c2b9d13fb79c90001b53c5079586c7b0b53b54028abacf4d50e0f09281483f6e686289c86d7d48049cc1a9363b0302047c435bb50066306402302d423b6b2a9c79a55f38c370dd4e5b297dc4e26338588a9ae56e884b8f0305aa81d8b94f926f61af3af71c73c3a74c58023051b81386244aa350e5ac2bcc9864b818c2a3c31dfe968ee7026f92da0f07306989a00217315166b75da851d4ab3aef7c0302047c435bb500683066023100d47bca6042e25aed6c0b83dc92ee1ee2c02ba953324d6d729f613f9e2803ba7a59e5e02e248f2b35221efd6512fd4023023100d8a2f9466b6f84c7f1557443e5647673343096dc28a9e148aa30c2c9decbe98dc42c6a953752adc37a9bf6dd12a7b3f60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304db89bcfbdc658712962c113863dbd09961647b2cf3ebf70184bf8efbe4a55b9a26b16ebd603efe0139cd98d604c319002300f8eaabef55fddcb3cb1f19dcc583d80c581cb7a4fd2849bae0f300ede1527f37218a19c63f6a64f91caffe1cc39f50d0302047c435bb500673065023100ea6dbecb004d2f0f8b7a89309be3e259437d68007e9b89a777b9be1dbc3fbaacb332d54fe1f94184ea95c5dea7f1034802300d8bbbf85b6e4290dce69400ee619c3906d8dc61338245cc50e161e2c4aaa2d49c95c03628207e893efbacca61286e040302047c435bb500683066023100a9807802bff5a3a1bdd1a9f0666db4470749d97e54af2661064a07fc361ab7e28b331454ec91bfce3f22bdf6b5face8e0231009d99292b85cdcc5ff8d506c5adf939d7832178a383b03d9ed95b31c511ef39a21166527e3aa6d1cfad9859c8c6c3238a0302047c435bb500673065023100e633a083f2ac634244d9be1314ea13c5a9254832af2660ab6b8bde97422ef15786961a5d462407714ae2a11df24c6cc002305b0f2689b95ba830e121456af1828c844059f519b80e87aac94f11bfe9d4f0d3a290be1805d5f43892664cefb2d5218f0302047c435bb500673065023100b796f0a662308bfdc009d4431e8fda138de41804a27cf032663d533a0aaf1a2ff6b84180851d60262befeee9a2154d0602307ebe3cdd5db455b2cd55946ef2d711d18a275e97cc49e12e8bf57e8b52baae09446f816b784890daa9ab1dfd2db9121c0302047c435bb500683066023100be41412cfe0629fd40df348426fa0f3a5668869ac0ee6a1992a6c7c4bff4c0be46c20c8e2947df4de4aa0ed19c2912e3023100e9ab703d59d7e11c718c11a11ebc210bf5ae72af278fb9c967e76e9775006f64a1ef6d77c7e9bad0de6c02e69ec4413c0302047c435bb50066306402303addeea9cc7d60e4ab2277fbee59423366019de260d3092646a14d3f01869e7958c88640e4686a705cc529f77d5a76d102301a1062012480668cf0d2b882fd03f5575a1684533ec4a3b8cc28295189c1c09aa3ada04eb279334605876cf51e1566360302047c435bb500663064023037277aa9e57cc0076e66307bc8a83fcc25c9fb03cba32663cb0abc2512341d6dfa2fa15a1509c867483abb7b5c1fd039023031a173468d3b2527b3f526bd9a3e825c05ca2a7503f4fe49af445eef96d456783428e6bf6cd0d4f321e988e456cba6390302047c435bb5006730650231009eb7f4466e3b3b60e806185058e59962900735df6a302cf62da953d654fa5cfb118e35d11d9c4d36d4241fa4238f7ea90230710216e57e48d59a07516b0a84418926943a99d0f6667e013452ae4dd3a387b126e5c16af261b9b2c50d367f763932d40302047c435bb50067306502305f6d4ad453d1b1550622f99e529f1008771495fbb239337c178ce873220533f17ff31a4a38f519a2cd703c47129b4bcf023100d217e764d0127a036b0b44ff201c50fe9213c33d4ebc84b8e8f8ee9b17badd7a91f1c0c80fc648e96de660fae8faceef0302047c435bb50066306402303d4a9a087b5b862bb699634359a64865f2ad0da3028f4d9c3b09b1175450e8c047d669870aa5518432b446253bfa4cff02301c88cd951e17e3f10a00b34cc6a04edabddfb4939baa6b76130e6b34c334c228dc1870dd2c41a6398fc56deb074908200302047c435bb50067306502300813668194877601fa6429529dc1a4b17c48a58a96aad6c5c2489b49ea4b4328088d7a58f7a7b6d696a1043ed79eba02023100db009eeb7d1799f2fe07bd77ba963330504e5e8ab526861762cc4ac60da24487248066b00196bdda4a4800ab66e8c6030302047c435bb500683066023100d4ba49235b0dd6a2ae2687d312b4843b5a455c215fa3498b99341505f7bda98fd432c6d7572f7fab3789b8e286eb0621023100e4f7dffa9c8cebd3303f80a1e6fa3abaf0cad6b9beb791ccada7284e770c52fb1010180aaff4edbb6c6ed2ca85c6e18c0302047c435bb500673065023100bea096ffbe7b1467e662befb7658806ae1ea4cb8b3f0506b0a80d9ed5b334f1b18ee0bde406f20299de6e323b879f12002301cc72aa930ee2043323590202c44c3832274fff38d739e96766d89d0a84cbca9a4880889acf3d9a5739a1471cb3821eb0302047c435bb500683066023100c8c0b0d0c55adc75628b86b83cdf104a8e421d6b7ef5ff57e747bb7510e074ab18ace8db028390df7e75f917a5cedbd0023100f4839df462a630a465fda64f0edc7453351681d7af7c7aaf70178e03effe39d36baf9559627e79753933a195c982721a0302047c435bb5006730650231009b8d2bbe97c518959111aac335f938a35c123e5a535c3f72218b9e048a49411d6b6127dd3def8a3af0b4b1061d0ed387023050dbc575620a62e330c35cc4b6df732f14a0f9f2cb121b1265f8736d53adacce4370061889622544972d4de0f65d347c0302047c435bb500673065023017164e10a22b553de829c373ef68ef2429c903ef1df38719779dfdacc8adfe41f999d74a0fde528aee8237a0bcd2b2d2023100c9274470f5d8da4eb29a74bd70ab465c27c8d532f88adbb40c5c7544e4493756ba1e4e5f2bc1b9e70c6bc47fa39917950302047c435bb500683066023100f7d19f58c0e5216d8149b51461365214a90ef606f21bfebd45cfdd3a61b203c30fc9aaaa63673aee33319aed480abdfd0231009507cc18cf909da3b1ab34cc97e02b713c86757b3c7246777dfefb3c93c4f8badf70afdc216aa7998578fa4959f2f10c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b24a2110c2c3d1bfdcc51620750c2a3897adeca174070918f6c7f165fe96bcb591a5e1cfd05b2b5e99c61bef6f119f0802302f89ea652712a8d31d1a53046f17865b5e1c768ebc57e7d4b0d70727d84b27736e8f6a1dd8336fe9e1274e414eae99750302047c435bb50066306402306c610576cd29d6de75a65a5de510bad454038a61bfe235eeb4dd241a189d7be02a63766bcca534210f3cd816ab4a5194023064fe926067413b04d427df887b1e59cd33e0106cad06cd191a2cc5d8c2287b62d15c536159570612070ba9b0c2ad72210302047c435bb500683066023100b91a8828f2b886973e5e47824493737c72e21993dec2c47c7e65b6f1d7017ccd438920d3b232ab26e0733cf97f9203f7023100df59e44173074aeb6a5a1afc2c7ad8d8d80890e22eed61da7e428e5d0e8193bc7f0cc011c5fab7235fb9c2398752fc1b0302047c435bb500683066023100f112e45264b4d346283cdb262c084910e9eb5656edaf967565ba5d55d78c20cac82fdca5a85db9501a43a1ba53244f52023100c68df1b5c6b9c79ac3f262c4bd7c916c0c1365696c52e04a229fbb4b5eac2d83f4981657ed08d85bfdb0fb40e1a5798c0302047c435bb500683066023100a01f4caab67f9a6af610f9f7a9fe0ec729480f913b4669a97c631764deffdfacb6cdffdb8e5babd23b1bff27ab2fca72023100c5763d614dd3f252779cfb9d16f836d1c7688572db0739714ffed2caaaffa28e1fdd76a8e2a3a73d2c4cb0aa24ac82780302047c435bb50066306402303d06b19aeba790a6f0b2f83d38dba7525a3615ad605772c6939b7b5e9587e1d1f74624bb8349df16a304171b6c9e33e4023059016ba38e0822cf88ec16209194825e895c5ab78630758714b3b986f545251d1bc3074d2164456385dcba5c0cf2f5fe0302047c435bb500673065023100e819f73a8c3e43ff35987f0ea6becf9e7e92997da25b6eaa02a698436ad8ec6143c6bfe39a99f2ed9e05d57f4aef31e0023004f2a2b27cf4993cd5d6648892fdf8585bdc6a5349c3c84d0ff29745ee1dfb750d324c915d05d0b9ec6425e750387fbc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023017d2b546600deac0e53f0a24030c25ca69205cf87c90a92f07014ee5003a14273299e0fbe59207b57acc3d9e35d84543023100b389e394cd547fb0506d99d676fc3b273d7b987f4cec87d0883e7583559cd62c05e1fb6f33cd97528cb52f4bce81fe1a0302047c435bb50066306402301315d5796fa15272f9c496330d3441cdb0b144c2620c44379e4275abf3616cc0de1ab8f349a183b3180825cd3bb633ec0230452c64c150b6ca7c7a6f84c8e8227b0a9199aae3e684283da30d39bca844ce1e9263a1558eb8a5293a9b02de329c31200302047c435bb500663064023040852ea71b73a1d6e29898c386f9ec952d5ba19ab172b39ae32fe022a24016436526e435b489f406916ae0d49d579f850230741184a45e89c4b5b5fad18a243b41c684fad034a34757c206d822c89f32c8e7eeb338357170ed3cb482b9ed177a7a880302047c435bb5006730650231008593747d0c9c155b3470154cc72b4ebe8df71a9d8b35f80116e612c3a770b675b6b1b4a0205301915f9d02fe00e8394c02300469d171cdc3192f5c70e1b7dc7bff7f4c5a5bd4a9dcb8b4799a6b164c2ab58c167483aaafeb3d0c40326ae929bad2740302047c435bb500663064023049f4c35435a9029ad51e519aaf25086cf4b08c630a15fdb0147050a7bb497cd39d506402fbd0320049dc6c926e21d42702306804ef050bfbecdbff0bcddd9829154313375b69c9c90e09bacc3eb30849daa874f57387a735a09a98202b547e52f1a90302047c435bb500683066023100ef092aacc546978638208d911a47df85e85b0027a4fdc1da967244dd07babb8c93a0f0addfeabba883b4200da5711b79023100cf62d82e322ea9bba3d462a4816a200f0419706bd2227e386a3f31b9b4cbe1f8e0896759b8ecd5e6c33ca67a9c1501ee0302047c435bb500673065023100de16ff4d93235a15e25807ef143945d58cbb59f99071d94f7a6c7ecdf71f8a37171f562302817d8a746638f67556a51502300ad2d3b4855fe135fa0b271d2bccd0fbe768bc80d9e057afdae8c111f97aedd29d8c3b43f09d97364e603ea2564005a50302047c435bb500683066023100e922a8e78a4f6762bff3f93429362cc05424c49070119c48df8b437ef9e0a384586d3a62c25707f5f9941e9a58d92b64023100bb077841da9e726eb56b08064fad862e9e45e1ec70484cfe29feaf4d0161524605eb7f26208ae1ba17a9691ec05e4b430302047c435bb500663064023009854f8a987c827207d8bebf965a3826f29ae11965547dc392b8868c572dafec8053606ca9c4e6343042be1564551b780230424d83319bd0b1c34a25e96344fdd2aa822386bc82e5355620dd3848728e3c595e045e9f81ce1fa9378c82d94bc254040302047c435bb500683066023100ac66873b5031ab72382c19d981ecc057a5f6a48d4dbe543752cfbe1b5ff6bb71fa7eedb9e1d08210bf147657e308d9fa023100b31f8172c6c0720ecdb50bd5b44b010b530c7210fae62fb154cff53d677a794e2a874e07ca80f2fd7227976d3b2741a40302047c435bb500683066023100968d47dc0f70026fbda26df0f8b2275d942bd45cfa1c4e0369b8a321614231fd1cd6973c01ccc4397f0ba82f02b5849e023100d1746e872ed7c51e29807284a1d7df3d1020c2d8964c4bd021a9365a94121bd5bb117f6d00069bfb67cf093f0b35edfe0302047c435bb500673065023100e1df86161bec13ed01d036682b2d3b9e5c6f0e039325da6e9ee11617ffdf6f051863b17ec5cafb16b7b6a05dca7e7f3602303c209b4d79d027d01561ce5090bbb24279f9ac41cddb8412d4c55db5bd882be05391e069d55346e4e55f5812812f6b950302047c435bb500673065023100cd8d3d6836cea12a3d18a8220b9def5db7a704b714d90ea2084b98728e9f01ed9ba33d8ce330dc81bcc7e1937ee0d9f902300de40454c0329b862ac01bbad3e1b83e8a39c69dd850f359363cf721dff3888629a7132a0f84112105f396a08f11d0b10302047c435bb500663064023026c467d421960ae86f38cfd13396600ccf1defe19f442156d5d4c276289cde1434d892991914f5195e6ca5deac7c45a602300dabe35f5f9722aaf1e2061f7d2144ae46100f99130617bdf6c3f44943796fe091b7ba15d6daaca51bb4d58a5eee7a650302047c435bb500673065023100bdc597faaddc6c31317ccdd8650d99443a206fcbd7ef2d78cace70cf236a1d4d026a2dc767a69b85bf041757e9a1bdfa02300170077a8247f580dec56dc9f137704f87e2a249aa3641085223c91c944b3fcf6dee0a0952a8980dc3e615fae1f435e50302047c435bb500683066023100c8931660886f57c288b584bfe8795b81b8715d0520ca979eeb009cd2b9ceb45e8b05c35b54db2cab5898a06c943adf42023100a5cef3511568564fdef2e86372d07d452e8ceef2d0df48b1576f6bd5c4f9ce4dc7e6c0956264d4da4bf54ec92921cbdc0302047c435bb500673065023100a7555acc17037a93aae0d2b70f801cf06827f639e7a01829a9656a9ce5648aabedd81b4f8fb485402f71c9607a10ea3602301536c401f35280addc1f5a6d0bb994eae8785088fae17f5802f5a68b3b3e1b3e884de382b27efe41d4f7bd1321512d740302047c435bb500683066023100c5ed51a50c5132093d0027df1810da1d217a7eff01731abb323f0e84eafc97316dd06904444c1ab8fdb487d1785d9b19023100aac44e8e44baba3bb28d21b4fd552f0cabb7363923e5e84d9f2c825fa9ae440b020ada7773155323536aaef1ded61f8c0302047c435bb50067306502307593a186eeddc2bc564986e6e2eeb82b88f837f1d91f2898713d5c1049855e3135e1475a3b2a4d653a14d4aa674f577802310097b292ddb5fe184efbdd3af5092c412bd0bd36f76a528dc6d2d10a1ff1321bac39a703ce1c7d86ee98e44a4f99fe4d040302047c435bb5006630640230319eb1f6cfb163fe5456951092f36101156d7099243cf3c28d265c04ba0859b719586d344b77544245413423c9d87eb60230144187a4497720abb4dd847c093729666ae25bdab87594b265d59b770edc1ab5f900e96ca81beefb18e92c59f39182000302047c435bb5006730650230653d871206c11aebcae9e3103107524b32e313c1de2e9e96d8aabe508eaeb216eb72537b4e4febbdfdc49e43390e1bfb023100f65e9fc9e1a8fdb414cd7f3c0ffe384f252ccace95758b74946a5112c97e80eb5b701339e1bab82c227a8ca20c60c2340302047c435bb50067306502302aff8a7874362d0344784385ebb9dbc2d38c23cc175483b62bf36c1d73b42d0f7aa0766583961e38b78e2f7f3efe2e6d023100a2526c8a7486f899ae2220fd7a36244445fd269620b1972c3cbf10056aa1ac33efb415867edf7bb28b984100b98a53c50302047c435bb500683066023100e22fa8dd85e9876443e765a38381b82febfd4db5d6a250c83f1cf879e92dad44ec64f4ec92e84681f06492e8789dfa680231009c299591d2c5007b2170a28a46e488f4b551517ba679958583df63ba490aa12d88b12318a6bf8a350347dc16cf2e68e40302047c435bb5006830660231008bef680e91546fd1bfdcd53fadf6d9a991865292658d6efdb10bf56965d85da52cb7e2c8a746aec307c726b3008b1c6f023100a701d5210c718ec92edfa38a2cc207f9d324463cda69e391ed32813679b86f93b8938afb9e0ea681fd1c4191dd54e56b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023027bb1ff5768292925a838305ff2c7d7ad8be45c61e0e1fc6434d129430d6f3abc59f9b869079a86670d49f00b68746c3023100bb2f056aeeef99c846a58c8bd61d1fceb96cf2c56f531b429d4a63efbbb7ba00a1fb84408f26a45940d0e78b2c050fd90302047c435bb500663064023009a30bb07ca5c5150a18c0a326519fc68a2b3ede2bde440533a62d13c9c787c85d7a5ef9cbee69529d602f982626601502300ff85deffe4163608276f9b9dac8196c9c6a5a330cc4275a23ccf0184172ce948e8b672431a6ebf6f330e3bd8e0819990302047c435bb5006830660231009197578fe882fdd2e601914702e10e4ab187c2d209338df7c07797a683dc7225c4e88969e0cee9100d14a49639a7c592023100f981a8ff30c6b4d2fc09328d5c415e8766f585a2ef58af4d7992234826fd52377bc5a81ca0701ca39a047169825ff9d00302047c435bb500673065023100f1be7418a27f956d7b1f884df61bdc4504697b9d7340071c4ca8c914d61ae8ada691997dfa49238d960e4458d071b55402306cdc60a57e39d2f7be6f4b28bed4799de79fa52010e58708bba332fb74b9fb66ed22428fa00fa40086a80aded90163370302047c435bb50066306402304fc399c5c15bee8f2aa400711b003444eec7aeeff8350c5156e9483e1a201607d1ace95a2c865af0f8be761f3e1975a1023035cb57fdd51898715b8156bf96fbf98e133429da32fa523a5ca2601a5cf59f8cc2b820b74449d20ce4dca16f65f878380302047c435bb50066306402304a89ea989329b723f39bbae2cb24516678e6329ee17a144f5f4c602bdf0edb2463fe3d8252ba0a3cdf2130f9e2ceca030230775688c0c47c554b9d681f39c0efbf4c596d5e5f816ddc5b4f2362b2bcdd4236a6006ff870079a3bb862e500abf80d730302047c435bb500673065023100f0d6408256b930c8a623b95dc343dd24f67879cd14694454594a25a8ca9139468bb4a6603d0651d339bf3237f1d74b9802303575ce99c72a14426140e90a5a230e1a4700152594c4b8e125019870e5b9e543eed44b9c3bc04a389a874e9d1f07ff670302047c435bb50066306402307d66d4deb3a45089cf0d7edda8785316846719a7419180a3f0ffbe8fc4b97dbcbe277bf79aaf225477b74ceffadeb14502305c625867c6612bb72839ef56a28428c18c7a83da0f60eaad3e4384c9f4e2ef2a240f49c8f8431380635a94ee082546670302047c435bb50066306402305e809b4178198f727d127dd64aee75ab72a45b2c18b21069a6d9f5f53160a31400fd1a3eae86997aafcf16395c1d78f8023064beec54858e7972f36738a64688f572820a58a788a634634d21b87d942c5926cb85d7dce5958ee323a6239e28b6c8c40302047c435bb500663064023018e7237cea2f768a4180016f4d263096bb06012ac6fee2be55bfdc88c8f823d57dfbb2556c1aba336d319ceadbd1c090023069e916730cd8d5a0ac2d235e67aadd241e1be016deb8d82d125c3db1e256e9ad83b61a8a16bc62a118a35ded3d520ba80302047c435bb500683066023100e0539aafe5bd8c44e1614fcc038acdf3c9a1df0b410be72d43966ea0b947c6eae53bc97eee23535398e660d282f26f46023100af3d5005393673b9001e91baae18e18c4229fe6b9673067fe9f4bd4aded3034b9dff51a532d859978356994528d347330302047c435bb5006630640230037b8d57ab5f6292f8b587c5cc8996c65c352a1f5a0c4968ccf70d912013d2fa0d84ffcc88910fde2a5f94e553464bb50230147a892e65ce7bd533e4eb5e3a185fd5840b801efad040e3931fd0b65f0e073357180db291ed3b7832a4057c1c8680520302047c435bb5006630640230778326df70f1cc712de96f5f4b825295d5e8934d075a09cbda16002b0f412f392540b962f9288e41bf16faec08277dd502302469bfed74a1d7db299e9c9f4be9d227ccff26126965eac547797231ca9154cdb16b8660e48a33163561d7937734dcdd0302047c435bb5006730650231009e6cc748910ddb5f724c9614592a30dbdea80c366a252d7782b336b4c736e0e37f08e797574e5dd90284c375a5e3aa8102307ea98d74dadf5387a4bcbf067bb8f8c733fc8ff99daf78490de5e9e7eb7bc97292e28d0cc911fa7f116740b9d8b0caa30302047c435bb500663064023051cb755bd714cec6ef5991192a0c9653c504daefefa5362b2387ccf2408e831c5dd634e47993369e3bc54884867e3d28023037c69a7d4bd5e2eac1ef11dcf8e71cc8f16628295b621b64eb8c2e8e22c282793418582a87f56fc701eb384c2161be5e0302047c435bb50067306502304ec1e6afa3b09f5d660adafd6ee662dc13ba64bbeff719685ca7d437274afac00fb058e6ac332a19a26e41d066865c41023100d29b7f9548f4545dd243bac2839cf71eabbbb14873a9174b4b702d726fbd820a38b4cccd91fd3fedf966ad11b8431a590302047c435bb50067306502305383cd98111366105ff4fbcd807c6613b6e7ef43ac9936c653ec5431e5feda1cf2904c0e89b2ecc9a95a3ba8235378a6023100a8624cad077948598f050686f6d66eee2afdd8b64dfa5850b801b04d9450af61bcd30321dc16326b717f9ebab19fc8710302047c435bb50067306502300104ce1bc528b713f0e6db6b8796619e00e95a4bc9a3cdbe0a1e586e2f33d74933bafa10f1f788ce413057c88d59e4cd023100e1e4c438226982f1976efef36cb406156eb120e0e109f3f7c0d17040e19cb2190f2cb61300a2ea9092b3b18004b6dcae0302047c435bb50067306502307b12e9d8e6c6e98c4dbbccbe484f446e7849b1f1978dd096caced7a61fbf1a4c9f9d352e6fc325a401a90a870be646b2023100fb22510a606b0ce7445d133c46509b09d654b0f986e8f6c4a9510cd7017aab73c18a483456a03d59ebb4efb0be44e0d90302047c435bb500683066023100eac072829a9727772deab950c77397e2ffbd6d00ee3fb3f43eb7c0d5d8b3e54e2e55948f318fc789017b26dfd62567f3023100f84584f556d7b35abd27072d01de4873d1e4c5828d281ca5128b1bd323fa924ce8f502a4fee89124c10abbbcbea364ea0302047c435bb50067306502303c7f13af32c911a37f2ac9ba8b98ae5619017bb4ccf1805905a7b8999a67cbe82d5130b884911c7ad6d1bcf3deb14232023100943f57a8647d567bb1a102f50b3cc1ae6fb5ca60804a49d8c196b75dfa9b922f8ef1b290aabe6946c5386af46ef973350302047c435bb5006730650230317f442037793d1f33f0a18fb5c02e2ca6eee6dda28b211404f9442ca2037c93f22c8f0c2315c4fa3a53b2b37e6667d6023100d50efe0ef97f203256300c506910c709ab383fcaed6521a93a7d330abec44b81eec6fdc3af7683d6e7ceedc03ed7f9bf0302047c435bb500673065023100f8df634fbe0f899672b96d2ee84d635ea45ee6113513307d0c46d2dab4bdcc5fec996d0e4d52025dc2ad383e55c21c250230362b043f05a7398c90ae380bd19f40a15bafa8dc79392d5d8cdbf37d09d5a86524a8c9cd80adc7086bbdcac04a3051230302047c435bb50067306502300a494b20909fefca9100a3d613effcae51968a7ea5af6db9e5bd48665f0d3598207768433237bfe91373b12e599de112023100c99bef7e6aed8cc868855810b48b80dda7cfd1946f591f782e785e92cce69e42d39b06835c5ce4a64431625d4b03ba740302047c435bb500683066023100ee3154c9984dc13d818bbad6c54df1f628caadbd7cbf23acc556cb1c9c534379872d009be3bb7f52e784fdf46576ec9f023100c1f5bfa0203aa1978cc0fe840add85e6bae96699810bf7b14db6a6adf0ce8f43430eada782e70a81305cf0d27c39f7f10302047c435bb500673065023066aef265d24859dd695ff637cfeb07d10fe7eac631a6cbada56cf5b6e451e326d03a0e7f04e2a5481677b2fc9e2e7b21023100f3aad4f3a883cd7f47ed74f131361c24b2be8a45bd8d665351329cb8abd37515498128482c22e963c5e6a87cb0e6e9410302047c435bb500683066023100acea1b1a6cd63b135bc13a07c53166544821daa793935e58ec72af3b7ae04848a71761761a27e9b21fed96a5118102fa0231009157279addc77d5828379fe366d43c2af1285cddc5b6db3fee364a17dfd751a7490b4ad129eb253ca6e7118c23d1b2320302047c435bb500673065023100fc6f97309750bea3e5a87f4fc92569fd4d570de4b897d38b7457ab207df470ebd5523951ecfb1cea861363b479305ef80230771e86af45e1bf7cb3d9ed6b93312072ec935a71aca17bbf1961883721bac0e89932cba257b77b742ef140884d6672050302047c435bb500673065023100dca774108398d848fa41745cca496ac905f3eacd45d5a5e02f9cd5912bbf5f629253c0da11d99dbabfe9e0c249f830e5023073cd50aac3a7fbc32bb5f66b09e3cd56d328390decb2617dbdfd61526d3a92245f01e8c323e2f818e3f8e7ed62fddb5b0302047c435bb500673065023100c023637c61198781b546472f55acc279bbfab57172e8df1269b59a02125c24d579820e2d1e132e43eeb07b2abc1edbd40230618dca0c62daf6dd9888862d2488792672c308ce3884afea175bba0854e9b6bca4944dbf77c057e99e91856d2854e76c0302047c435bb5006730650231008e5e3ca692252d6da786191aa5e9b27031dfe266bde9fd38a15940cf4a757580b981580bc31a2b561126e17db46ae46e02300885c9868b8c12407b508a26718a90db23e8800e655fdf77545d0fcf1823335c5120d37ed43f6293e70571fb8128654b0302047c435bb50067306502306213fa84619ff3f64dc8cea39f6797379c5ebc28530724674d891549f79e37ad7af451eddac3e68e4d9432d4350b23e9023100b24361e9184c514269635698e4feb304fa06088d3b904d0aa6c5b1736291a9b6aedce7db9ba4ed37d65414a497cc6c4f0302047c435bb500663064023067730fa57f87b69b7ef704691f49e7e18e5af74756883a0c5ff4e2102e569d0f1e29d2238d4e25dfab5138e8f9d3254602301f7828e0f382a15026a556b92aed518a60c8f28030f240964a568165eec151f9bce8e68dcfabf27a81f25dbe41fc42e40302047c435bb5006730650230489314849257bcf147fd2d0ad547aa97d9b977cca7c51e2a30dba71a8065de524aba5b1b95e970ead6fdb58f9537026c023100fa9f356578d15bf5103e32eb4bf1f33a0dae87506b39337b3de46e527789b323b69a03f54d97291c3e6e960f1664c6c90302047c435bb500663064023058074065eda9dc7b6e3312e1f25a3d917a477e60f3e65a742abed7e59da9263470c2c86e222ecfd62f35083198f5e0680230411f12a74527510fef6c9cb393b0f6e5d0d43bb71dcb3140ff58b6f741c7c48b9ba073f356ff4808c644a2e1714dbfcc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310080c200b87715da140120cf1bafdf50c0a7ae76cd5072e3fab3f2d02f3149704c14002aca889e4360400a36c14768dc1e023100a232412398f8fde5677c4c8390a9cd637ca6cd26051596752bd4c48a6574b7a134df090fbd5f4689b7f253e39e2362d40302047c435bb500683066023100d369327f3d6eb0366f2d7cd37dc55c307bb157bacf5846d9b55b6a5a709b774aac310c52ac1b2b329c8e2b9fdb8cbdcc023100f69581a13eb17d425c5fd85cf1a686bc71b126bb7cee9226aa48f213d8c3b09f036fa1787c8b737285f477ef1ed46cce0302047c435bb500673065023056c0dd1aef91f614095bc2ff1cf061e249a14dc2d2298cf7a7cbaeb44a8dae535e20facb0f6808af0f5b66bee68955e4023100ef3cf4a151fb2de9b1794cac440349b890fd0ef329deac3aa7de4747d1d5f33cedc0c670eac0e8a44ad95f989ec0fd7f0302047c435bb50067306502304fe1ee1c8ac81a35bfa7f873adfa53b289944baba342e13fdcf76edbaaba97a325f3f0b4d3362d721b6958d129b447c8023100f96e8d391bb5f173fedaa0efab761cf6bb02cb5052b3b9d55aa4d3682d975131b814d7e62d97993bbc50a4e2dc510e560302047c435bb50066306402300c20d5ff275d6743c6666834791f220f5ceedd21a688104fe6b80c3a8ffffa533c1dbd7ad15deb76b4127bb75c87acfa02306cb08cef5ef6c73f0da13285e3fe3c7f8ff4e83772ce6f33b6e17463e50c0fa73c324557d02ae112716dba986700f75e0302047c435bb500673065023100b74e3049fb6c7a9f19859398863f1484b6ccf32694a69f50f10e6c8861a633110fbb011a6dda805ece2cfa815abb7f0c023056b1e0edb10237bca27187ee500506b1f833169de8a4774e0e2b6d430cae70583cba8410b30565b84f45a5868f2dd3950302047c435bb50067306502310084ad57a6ed0580688431a53448fa037b366e8c8ea5b09dab6c5b908c2f81e472c493cdc48fa1ba8e2c3b168046b0b02102300d3bc3abe97e76061237a9245280b6de23f8584fb8ce2232754d34d650f92e9e8204bb16383593194e54599abde26d580302047c435bb50067306502303df7eb1e85147ac8420bb368d1071286dd9b2bcb4051bff5fa6df107173d8458693e24b7759a6787f7ec039a3f8e416602310083ce90f44394f26fd9e56d22e3b257095649bb658cdbf6b16a808143d61eb08b94c40a738a0f49f5df9a42105df948750302047c435bb500663064023043092289f5f9c8cb1b3eb773534dbd1decd23b976f83d2a70ec92dcbd6d735d5b3a46fe269858248c5b35ca3c8235294023068600e7636d58c47bde1c43363814e6eb519fd893675e3061d1a7c572690841818007907d78234ced670bb8c032a0ca50302047c435bb5006730650231008453d1e6bdca6ac56eb8de2746db6e5c7619ec5d7a7a9f4b8d6a59e78f0460f46c7b2ec077740d537ab17e936da9fab002307590de68e3ce56ff0816578436de2328b4cbe4bfb0be6b3244434eca90e0ed03cd7a4e21849fe5e9b408257032b04b2d0302047c435bb500673065023100e28d7efb1fe13bd3594bab464c6e4bb57304428cd65b4b55a30c301bbcf11459fd91e9ddeebe256d1d55eabba16a199802307055d8b93c04547c351700368ecdb67ec83682d67458bec2a9473d08d43803f39f81f5b771a8b8e2f7d30132853c2a2c0302047c435bb50066306402301a56ff7232a8a089fdd0a8af18d1853141f26cc97c39184ab6f2d93acf359c776b67f823f56721f03d28c4ee954483e4023007d5db76ed240d432996ff4e439fcad18cac7a437ae859d0946fb6bd5b6126c178adbb0625654337771a94ee8683a8540302047c435bb500673065023100d7cebc4ac95c145e2f0909dd5861b45e3560b8af41b6c0fe16042f7d5eb8f6a3518e481ed2dedc6c938e41385e1ee18b02301d91af9a04a3e159ecd67d0c2eb0aa9529df068324e8985cc3e2851b693a02ad6321eac65580188a6546a1786ef584480302047c435bb500673065023100f4f09038417c2649fcae5c538e050661f057ec32649af21e76ade2bae3f9042637ceabd58bce887861c92beb5d687b64023068b3ea764b547cc594c36d7939d2ed86438e92164be7784be04ae7db9c03cad1a7ff79c9bcdf3afaa542ec903562ffe30302047c435bb500683066023100c769bb98c32fb2d4ace9154becc4d35e1270bcbf91c6669dcd5e60ad484ba3df70315b5d5c31d86d80634617e067f5cd023100ca40f19175bdddd5db0b59e58ff8bbbf67161bda99b83bb50cf2e5d55a25cbf5611e88002cbae8400f8626e9926eedbc0302047c435bb500673065023100c03e4117469c0a53c022bf8688b4455b83622e08c184c748b8b7924fdaa87f68c1dc2b65201844903adf4ce6c3c2bba302301099a7b7d06eb2cc125e1bc9ad07a1d9588a1a48b57dc8eb3bed53c2e816ba45f41f62f7a003d6b0319984524b8c2e650302047c435bb500673065023100afaa37db9fcbbffbb8098222739f4bbbcfef0c8f6049a91cff65f9498e3a265496b1dbbf60160026e5efd07b49e791c2023009010f14492a2963c18d455c4476929ce51dc93ff526be406968061652aabb3847605841f8c4c10d5b5850633ed9b2e90302047c435bb50066306402300cda34867884781ae56af45ef40c002e372a7780e9e58e51c50abfad25ac2b9b2bb49d24f981e279747e7fa92577c1140230427c462b93c7cb8f47fe64bf61c8feb4c9b3e5f0ca61519d8d868a1b85665c204b8dc214eec564e5442c45f0c2517dfe0302047c435bb500663064023076a06e999fdef23dc3e949d161afe0eb4dc54d9b59c3b08c0ad867e899ca131e3b7fbb44ad8fbdf874147cb33e2135120230601fda22b2dce7328fed325fac3fb523adfcbd93ef50123176cd92869b65b176dc38db75f389c9683b3b6f34608f68ee0302047c435bb500673065023100d49ad0d51057418b5873d4658e6128c307b93dc27eaec1b291a377a70feb37ae88085caf686dc01338dbee8a0f1cd096023065fc08bfe1e1b07edc9a066734a3df206fa85f779266b93750c870174142ad5dfd8ffdf319223e222b50dc9c94787ac50302047c435bb5006630640230112f80b86fa03ec7b49482783ce2f0be8130690d179fa9ee3a6704c0abc96dc02046fa64ac0fed9a76c702660ebcd5480230046f65e527eace2b6577fdbb07743c70f3243448848f38b1f509a604de9a5e04762a9dc29dc1a80b728b8690ecc5bcf80302047c435bb500683066023100c32999d7ee5a18d8ac46ea505b4dbde5aa9781ff11d4dc0087664c8881e28f50981ca791f8060969767c6be12a454ed0023100f5c9e98cad4c88bdd439fc6f912ad4ba9fbf5202f1dee6dc2a584fcd1374be9fae8d73bc8b7aa298eb8e3b0dafef25410302047c435bb50067306502306442c4253def5538945f6bb06d579d3e4c2d7cf324564a89c826537a6f1a453687759ccd7fb0753e48184ceec75d517c023100c84e1f6bab186adbc1b80e1c807c88664b9364b09f3458e402c5fc5f40c5f6b1c536258118b101c09d6a7f6de894e2f50302047c435bb50067306502310083c631975d7e641dd0d69a274011f98944f05d78787f82c6c4c9f0b05da6b632a3bf16edcd7c6d5fc43abecf68d40ffa02300f60c75dbac28bd4ee55ab8f17cbf999ac0b489cf0190383fe5dcc2abcf99ca8a03fc42836b93c05e574547b3e94aa090302047c435bb50066306402304196ebb3a8280706f24c002357cbaecc2433f09f21111b794a503c978c751885fc37e9d78e56505e9fba543732b67123023067492f605fa40a81f8356bef4a3f922874d719da12017c541fdbf4063df8860327ce0ad58c575984b37dac18b0be96fb0302047c435bb50068306602310096399e7fb6bec68a11f6fed4e5acd0483679cd55f16970c6acb92218c6a6ece9397ab7bc11d78846a3a3fa914cdbe8be023100eb14faa6c8f5f6776ce41442b0bb89358fda88c8bc65215bbbc780baacdd0c3290d70046afdaf243f1233bac66c17ed70302047c435bb500683066023100b1cc9990842b970e9829fb0329a2d17c8d19cea7f8ce070e54461a9a8ade6d2a74e8cddb6e2a933be31e7b66da55a0e2023100bdc6c2a265b0aeab93da9c0ba8204ef94e4b73f6d009757ae1dc27684b62d6d73002b615fdb54b911e34d2a1ed4b59050302047c435bb500663064023036c04d1e505a1a99a3bbac2272149f69d96cb7a005b35ecc64700aafb8453a5b3fb69a1071d7fce81de3260b36c45d5702300b80888d8409dbe062a9504529b4fc8c059649a6dd65a1348805115f58df13af50cd096c3559b271fce5a8af244ac1b00302047c435bb500673065023100f4bb25d56525e13d78b9c0248c077054fabfa3560c650570b968afeb15451b39e994eec92bb6299dfbcde4bd58119fe20230514eccea010249c4f79572504b9c034287db5f0f7acfbabd7dfd8f54366a02e608316bd5508a1834342db5200a91b3a80302047c435bb500673065023027d4bbc4a6eaf0a9d8cdef25be666f96eed0954d02110a178e3ae2d9b96cbc02b434279cd7f15025e067cd24f3a5fb3d0231008037b1c0f2c40cbc61bb74cdfe4fcd56244aafde39d22c0bb484e027d5a4a5e27e35d0c1b748c34e0cc1ecd594439e530302047c435bb50066306402300a4709453dea544866be40e2170e9ebddbf638ca60bdd4fb970b4e3a406da82e46fab32f920e9855e5bce8dc580a26b202300383bd433d4f9c7c950e76076424d3a5da4c702ab0adef873f80a28accf79e8bd955bdd33568c96704d2b26b1f20d41f0302047c435bb500683066023100a5dd7375f2b3f7da8c88bf43c4fe4056f7896c75e0854ce32ff8a130ab044d1f24f988c0915edbc84431b74857e7c8cf0231008c31e45c1485da62318f4cb40b2bd921e307a82a59f30642701b364dfed434ae1899747d83137f3141e6d3067a892c570302047c435bb500683066023100c0c191c022823bb21fc1c383e8094b0e3642351e33fbce6a9d3e1bf17077c97a1d9c5f8133dd222f643c3336ace578ab023100f8dc4424a8de9ffeabdc60aa9bea91649bdcacc970f263335bd5189dabf4e98b1ed176c05e50df0b5d0a91e0fa7ca2c30302047c435bb500673065023100898dcf0a41bb54e4a488de4e1499a4811f23ddaad0006eea1e971f24de701e2a2fa5694731e43bc91cbbfb4ee89f32d40230370c05670d379fe7cf338fe963d2410f0dd0e066334388fc6aa4faf840b47ef8515864344fb2bc20497b70f433009dd00302047c435bb50067306502301d81c632407c2d126172277d8a6f1116839028e5dba4a18143e86acf1e5571f67ede583f72467da29543099885e3b42402310089018e937d3f770a971a0492326c7655ccbe17c477b5033a3b649c8c0d0255ac5c0790f9ce23f8d11fceff584e67f8860302047c435bb50066306402305a7e08e755cbdaf2f2d54ebc2ec89014ae624ed2ce37eb0da951c27508a5c7c79dde5478e6afeeaaa8eedc7a9e4737240230772d26d444609dbf2fd0e2c17980acdec3626146c69690ecc4ebe4d4bbf49eb17c2c03fe743d0860df53b3b1c9d6d7f80302047c435bb500673065023100de66672496237886042659136fdb397e8e235cf6b7bb93ed0ad090b49058ce3a962cb38322f6010176ad210958e00d55023028b8c853771ba1df8695dc5320ca3c98614d4eecef07f2876afa2b5414f53a9a03036277133359e4688bf722d6379d660302047c435bb50067306502307014b90b736225bc22319e55505550972ce5a6894f92171fbb881a10e82c82655fff5ecfe629443bc24723125e54bc37023100d6e70ce79cb98790d4e91a3277e8649046465aa85b7a315b75d0657e6b410090700eb84ce4cdcbce80502b083256b39e0302047c435bb5006730650231008be94cbbcd83bdcb421b0eb4c676cf0d9223702c8855db05a34dea4e13632257e9afc459847035e759c63cad7ec6efba02304ea3f175a09c2dd729d7f005d78bbaf7bb6592b9bf2606a2f242b42ff0901c852910340e6645b9ec3a128c4c373755870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b958412bdc6a1ae4de08861c14e87d96c92ffe9f940e3bb378a8f4dedc230f0b31aec937e692e7c494af34c5a64f709f02300c299a952f3959219a66679641e8fd952095e3f6bfd85150953a0120f36c2653e174df1167b2cab1ef9bb80bd36155660302047c435bb500683066023100a162b63dee0734dd22e1944c90f4957ddefe4bcfd60029cf1c76351f40aed5590e0e514492ed15a7ccbdd4e2cb536cab023100aa19209301cb3070280b3cbb9223e0a3334545702d0665972450124441d73dfbfad61cbbdda6cd3c9033b54d783215bf0302047c435bb500683066023100ac5442ff07fca9779ea321e486037471b9fff38ca02a2d5d9973894647be3a70d0ee3af738617279a72cdc9f5974aa8702310088d9a07366d3d18f3ae10727ea15e63fb2618f2326d3b5ab1a1afad36ccca94f2505306d3653950574f6177ddf5fae250302047c435bb500673065023100c3aab53f8ae5e34966d7177b1cee8108d9de9579facdc8b0e5545a8ba5bc62236dbf381a39d85d07c10a4d23d1c3288202300faeff225460b3dc76b4f727c933208074379cfeaec420db811ebc805dbc21232c5cc491002264b20ab4d5853aa9c7330302047c435bb5006630640230104f444e47e90f639896c096ef873cbb40b1841f5ffd06bc2fd3c47bec9ff0303349c873d745cefedd9be78b3c2394d102300fc450ee7e88fa5d2ad62d0595007115be7f7f3ab99b22e11f77387d61063da1cd67c57389bc2791556e292253cacc2f0302047c435bb500673065023100a3dd3b6cee31bb633c6c05b8b5def2bb0071db2294489aff8aec5e23cfcaf9c16900a841e72b725b9816cb16ac5b3e9002304cd2f1a93feaece13b2feb54bf8f3b00076da3010ee7fde99b43df83c7efb959ef0860bf698bfbf0c975ad06c9dd85810302047c435bb500663064023053afc83750446267caa18ee4b06c51fc523c36e57070088e64fd8f9dd12ee5ad787872f5e36cc01e6c1fb166ce6e83fb0230411a452ede2f2eb0bd31e931a6f709dc22ab38c5c698653548a56d15ece4a1e9869e443e6268b5d2eeef863f9e2d85bd0302047c435bb500683066023100ac88fcd45769af57c1117fd9d5a501d93a821d55a46ba28e277e48dad46b7becd12d41d6081f6b8d454ca22222cae8fa023100b5745f0fd73ee4a5a0f8fa60cef64c8f27b9c845f836e97537035f35c5f15ca57f59bf3608bc7a2b7bed139d980afed30302047c435bb500673065023100f7636574e2e3e84f1d1e963fbc724d353230b74c92a3dbf48c4b4dcfe1b0706dae9f1ae4566f02cd5d0900afc06fae6b02304b9ef2054730d097ff8bf6ec018b26ad31c52ec7ecfc23d3ad8b211036997850f8f8e8ab3f3314ccef69bfea2ee5f4bc0302047c435bb500683066023100d28eb91c012096a5221fe42e109d161e6243849c1af874c40945715e4f12a987d82be77d0d6ee681881d0861c735761b023100d999526a3d32f8e645a3188075505af5d6efc0e6da7223f45296bd7cd9251e1f358f97bfffa0ec8d4acbdac918df970f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310080f5993af5fad60987d4f9e6b7db5e419e56518ba773120a1b6e7fde27587dea57966cd5ebf25e7b452614e1fe361d68023100941ded35ea91222ed8039154f9e8964663c397530e93c65fc6181ad8e72717ac1b3c2d731e64e39236e8580cec4281430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100acec154f8b816890f78f8ebf98a760e4b04d97c59adaaa1210a849d1b69ad7a4766e3ce33967101a460a6600cd7471df02310098ccdb0c9b5f431cd9940c649d79d554ebd23786381fc2d7d64b05db50d86bc791f7414e30e9d8d6d18a2f437e3f12bf0302047c435bb500673065023012595b953fc36f3afd89e4d4576b4cc0d43e6c2949e1c411ab4cc57767fb175d1ab575e633f239920c69b7d367513d89023100c4d480647364e8f2b7ce4f75c6e4c074b5b6a92a188571c7b39a5d82113d79e30c8ff39bbbe4a79332cb75ff93b984740302047c435bb50067306502303a7bc96fc4876c0a22593a68e7d63966c504bc442ea495699a2cfb85634d0cb94f01af6ebb88cace0e7ffa09790afd9f0231009461b134b381be00b2e8f60090d4e433dce929d953d4b4ee432fdc9f69349a3119675c25da55510cb46fa2a114326b2a0302047c435bb500673065023100c4ea86ba579ab27f82119c965197454a703ea5f259c347fc038c59b171245b4f7f86531641587ece4047566abe0939fc0230657bca750fb14e79e63777fc7dbdb592ed24ac86c533fc8c88739658a7ce4fb22b1c1a7ed7165df39094a49604f47b6e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fb4ee1ee09e4076deeb0fdc04e8b89c80f437d91dbb4525bb0bcdf9f8e5fd6b923684c68ca6ce9decac382c03f90471102306c501eb586ef29a80409b2d54fa3eeb4bfd82e0d5eaa6210a9e2e4a9261801eed120e18255927560c28f4c6ef2fd1fc70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307404222bb2e21ce71d2d1b0b1cdc27ab70213704a945a502056e980db0375166249d4504866e54bef510e284be92ec39023100841045cf4c8f66f83856b4e0c54362f8f3c418858c66f104a644d057995f4803212c2b2358a0506f702f629b05b7df310302047c435bb500673065023100819db12d32e9a45edc152d7b39eb6a3a2648d129c5cd482308c88dfd10fa41f56e938a25795893b53ff997eaba059db70230562e312b4ce941623756ddb24bcc7876ad3e188fffd6954af313bf029c3f9b7025f2ae8c90663610b391bdaeaf0206e80302047c435bb50066306402304c20fc829d5be72b959b2b678f26ef97bf91375f9276f947a3570e8b2631799bc16bf9b6cf0bc2242b05b72ff90ded49023079ef2e671c1920f1c744f2946d5d3d2786db73e0b74b2564c2ca670372e0e6d9c383f641c650f00bad50298e1b20ccb10302047c435bb500683066023100818043f0b561dd18c9b5b978175deb64434cf74e7d64bc2b241af8bf15ced7b44adb8264a3429616e951236fced322a1023100b30ba812b0f0aaa4d0d90c2399ec424cbd71aeb6ad5c79233f135728caade69827c1ed7df72cf78e5575434986ff31f30302047c435bb50066306402303ed62a65680af2379df57fa7a13890b486849e11d60915d6fd79e187beb2341a480001a3c48f1338019aa6ef7a77c8eb0230709c7815c2b3b98e402511bb8db7536305bda7a084cfdd2fd4712df06fc9c9dff3b67061d24df8357209cc5be82e2d7d0302047c435bb50066306402303ab8773f795b0812007587354bfa92e9274c058f2c8421a79eb0027150614511c3e8e57c5521e4817ce1313e2421491f02303d168e2963a3b535ca0fec5fc841ae06d967502f750c5179ca5386783e9d8485bb6f1ec6224cc410d45f47fc3a0aefb00302047c435bb50067306502303c15b72b6cc6b32b78af844a22d1471bdcd62e7f1c878fcc3a5c83117c72856d774198a0877cac7186db35b6eff314af023100a28255895a5605b21a543e931de53043fa2472e1a9337495b14f4639cbf5150195df9c788383cf62eec069800a8867650302047c435bb5006830660231009683cf1f1722e97e5268b23018d18cbbdfa5cf9103d59550bc184f4bb3cc4d614fdcc96c9a884deea206bfc1c807fdee023100ef3025a014cfab52e1b822462399632ba758fa1a4db19ef0648f2af225d444f3b75c4b180da6bc403dc8b11ece1a6db40302047c435bb500673065023100b67aa329739d9d4a6fc5024e7e3a76820bf62639b4e2a30ccf523f30dbd9378071a8fea400b16d39e9c097a79ab9f796023005852cfe2172286240fcabfe1ce746c4cb21331edcf25f223e4abf0b0c9203c171d6d851ec038284103116e72471cd8d0302047c435bb500673065023036b301772c32224ffa72d5c646e1ad9fa542a2b3051b78deab5e0bcb38cc3a7de402d629d367feaf8684e4c0f83112d502310086594ea6590abf85ac25a95ba29107626a13f37d9c2715bf5d797342023836f03aa1b1d4afe2f364fdc3cde5feaa668e0302047c435bb50067306502301a1a52d22c707c418c0299d4fb1a52e25eadedd860470e341278073ebfa80a74c91acc860d3a8c2957349090a90443ab0231008524bbda766671df231e5cc68a44ccaa5c4411035ff058e756d7393c657f1fa3bd55e362a3bb154d467d3eb6970a435d0302047c435bb50066306402306f6793bb50a58e2c26a95342a3106fbec8d1d447bfc27de6ebb33a73153f86ad95eab9207f224302d3abdd55b10522e002306751c4839e7765aec8b67df06b33d0a793a118e0ae459592d3f09e8c9203173383db1ff5d4408638f4d58ef07f4cc6c10302047c435bb500673065023003cc04ae85fb6bd5f4f57b3be0347da8c5e04e8d455f2ad943a7d8229830d25f369313b6d1d802b89622c924000479ef023100dc0d0ea37f72e393eb6c7abb6293bac1d9badb58bec6e079e62bf849fd60cf82bfd7365cc163b0df52afcd5a445145c60302047c435bb500663064023067cc1a68e71d8130ae3f7768b756e027f5440af70b21fab847aea92ee9e58c3e4c15a43ba6e8fbdc442236305eeb7a940230233e7c62a49333960ef3c95b52e9f7e9fa7e73656980c5bc9f536a311032457b0b172b76e2c19f5332c70883acc37a4d0302047c435bb5006730650230279e207ca0da2be2ae32c7d3b0f127e509aa05c43e6e84800b2420e1b3ee90192761c63aa8f5de1aab71d4acee2a6945023100918ff0a3141d4e546b1c4e20d3c675800a69a72e37c8d702b9fc35affcd9ed9913ce4b309f05808fcdc48f2004a4df350302047c435bb5006730650231008d7e563ff008b79a04f76b289431cb526921eb3e5768e2fee45449a3b9a8d0fd9fe6f64fe5b64daae27089e9fb00bb6b0230038652e7e26c0836f8ab37866cecdf2ea295a4ede17cb959d157d17f826aa095a7903585de92434c5a727f6084c12a3f0302047c435bb500683066023100968bd41cfc973410da36caf0ba390aa5b0ae0969763fa0a333672f5d0fb9aac242a33cff6a57a5bf1fdd04b9fed92242023100bd98498c49cd1f770963c6cb8de0036a2bfd73d708ab42a502485d1a22e0f58b5c0a07de9303bb9d0976a0d595d502590302047c435bb50066306402305a87b057e19392b08c679aa14b7b47a1ca21f5218fbda3ef74e26174d684ca714eb2a1c7c72de86d493440c44853d9a50230243b841650623b0cc51b2e648b38bf9df75b1619ef850c9b9d9618f38fc4caf75dc2d3030858366c55cb06ca58d8d4830302047c435bb50067306502307dc8b20230a07c0542e4823735fe8433dca1cd3ce25e0c8523b028b0569f0a4cb0fbb92a3e85f3a79465d70342bd34db023100e2841af1a81a008326bdb2927a79c2cfb9172e3a968d10cd75e4f9185deb35354ff3b4a6cefc859c8760681dae87da4b0302047c435bb500673065023100b9e42a379303b0ab8af2b25d1e5aa3c7d6ca2345ce12c36683057b8afa9f91a94d93edd81d33577896bda5dfae420496023039dd3872a342a394afbf88d0c20167b0ead2a3fc98e0634de6077275d32562489f7cf18758119c57a38610f8585c2cf50302047c435bb500673065023100b9a071d0fd5913ac29c8873e7b43ff3bbf27303b65a86444b45dda0afb3e7260fa40c6a35463f5897e3e92739b9b6d97023013d7dcc74a5b8aa430b2014705a622008f76afc1f49d592a36a65d0cf7ea901c7b6a4d8e2971f56a82159b70422e12ac0302047c435bb500683066023100edbb3c00aeee6c843580a3d53945a15ca879567bc5623537484f1494088580a9e9f4c89f5640c085bd565c5a5e0dff6b023100f0487d7d1a71c98ff08f6868ccce21b76a506d9ccbbd1cb736d1fc4916f9ea6baa1e975616024eebad99a52bb6dfbb880302047c435bb500673065023100b5c322463b091c926a565a4e0031be0e6972aa276e1132fb822d4098b3d54bb55f424a643d5501558ef773a3a6b925b002303434299ca133dd88605ab83c55aa417a3e136b35d0830ce2eb7b1ef0150d9c7c05a979aca8f865e8736f7b02bef7e2330302047c435bb500673065023100fc4e75b5df2c808205487b51a84f05e76c9ab53b1b635e59213dabe307d506374db882db96710265edbe6ee8faf5dce902300b2af269cecb228295799124e646c8e89439ebab88200d25933c48b54f9b5ba43ec7d6f4ba290ec3f225ba895c69ef0f0302047c435bb5006730650230286e90deb775277695c251e195bbb555c65ffb403f1bb1727b94fc04bf13a5371c01f320d67ae16e2af9fac6fb261717023100c9dc7708d00e0fc33920db083a3f16c526ffa1a2570455366bf747fca60a735b0a8b53f7bc9ec78307e132927db425c20302047c435bb500673065023100db91e798be422962b1fe8df4d4a54c0b569faa1cee53a479eadd02e274c3daa69a02983a01aee372fb3f47d12f365fc4023027b9d9bcc1c3e02663580a0fcf0ffb2799dd5ea7f4916f4b379d97472ab2bf4b5db68b0481aa630422737dfcbe0442870302047c435bb500673065023100d077f6948d3116b38b6c1b26b43cbf0796aef46be347fd7d4f1cb8f1c12be72f632ad6c6897c6345b49423fdaa11d442023058b7cb7a59b82787f96d079ff7d862bd8b2b9029fa4a8ed5fdc5e430244b862d0ec80503dff5fdf6388a37da3258cc610302047c435bb500683066023100c101b91ff4c61296151d9397edeaa55118f7ec180ca9f2354cfd6a5839bc28a13b40a38c330a615967467e9ac7b09e74023100afbbe06b5f51e69ef4ab3c918d4d64dba44e4c79ed89757a1065abb63007dd65f425df0a97c43eb0b18ed411765d70210302047c435bb5006830660231009650fd7eccf1a402b65c971fa89118321a40d76ef09b6abaf43422047181c3846b4b93a94b5577badb762670fa9e8cd8023100c2238b2c7c7f8184009980e9d66a5cdf1e6f518e32ce590e5d9b4bf90a279f5c08a92dc4aa034b549f3ed4ba53af58670302047c435bb500673065023065a30d67426c92a2e9792c2705a40f3f0be4e6a23946c746705f31f3d32b2789f4f1e4201f16fe014d8112ff8c4dbf950231008e569200ae257ddbf37f9deb9cfb74ec31866daadb057993e53a93895061b11de81c35917dfeab2ea42c8dc0e75445fd0302047c435bb50067306502301178d70a816ed86314eac45d92c726ca2f4186ffa7dfe236c6722343b7e1865045954e9c8f5ba2ebe3da331257631826023100c88b32989396756e082ec4579967ba622104a781acd5ed9fe2cbda89b9cd7349e9ae1cde47171b189eeb87580f2579280302047c435bb5006730650230603d2b0697a426f69f447dcba93bb0dd5ad44e968ac279c3176066ee85715b7f10bb2edf8abf3b2bcb532af0324433e9023100d1b080c25e523e690324e2ca011b2cf77925606b2dd609c9ca3b220c0cfad817dca7cd6c95c21f70967218e7b0d6b5fd0302047c435bb5006830660231009c0d174529acae5a2c41307d8b44c146a124702b0c0ad35f1c006c092759d35ff8b6e6810842d0efd63dc145b601abec023100bd0b75c63fd6023679ef26b8d441ea3a933ab9b47cf207c3961d3645e8a1fb4f4afddcd4fc0598db372b18d87e47d1970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023019fc6ff030c78f1b79332121960f664463d34651c9ba46ef0d6b803bc2a27b9b7a27b9596a3e76707e40a587c7905e10023100fde06871c2c566a45ea372eeea0e584f4706402601271b1bf0e999999c63a0e649087f6511546f1d6eb110e75f37f6380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ac13a75bcbbaeed40191f613a620114ecdd9ae282e03fcebde692395c6f6391bd1fd46078a380fde3ae7c4ef99e192a5023100c1f5532ddfda32ee368862e76f1ff7f34429bb2eb1c958e527ba865317887a6476d144ac9897c3d8b0638b0e421cb3b60302047c435bb50066306402303fb3d2ffd0583393590f0019d1ae0062e58432ea123e03e8e7d92d69c7edd1a1b60ea50c0d341340947ecdaa040e1b3d02304a253be81c9eeef13e4624f6cc533181320b7e56e9e791959c9cc82a56261ae019cabda482982675df3ca66fd15db4210302047c435bb50066306402306bc7b5b4dbfa03709b0acabcd1cb3b9d1d38dec820a9fa9706d6f39232824de06b3af9a50b4aa2130042c40f69fbdc5e02300f51a05362945170ff59df2cba4312b3393fdf75308d9cb7230a7ac88e62fd0284260dcd860b459671e1edb34f0aea200302047c435bb500673065023030556ea359d0ef0c976761e60f7a5202a40e581c547a59d278717525417f06e993d48ff0047b5b833eb418624c8c8a95023100aa7c3a354e09f438532a25581ebf542091288c091b5bdbffa79629bc16b2b442c329e68c50e5443fbbf7942bfcc602c40302047c435bb500683066023100eceb8caa09f3ff7ab5b966ceb5dd3c6208c1ecf43b9aa598e60b33eaa76b2d55359e63b56db5599cad3d7f375e56b5080231009056d5ef2d8eb8250d2c8be96df3c3cdde6e75ffabebf9d7ed64d4d483f0882d1e0d9c4fe782e6ead440b4c7fdd5d6890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b43eaec647aaa3ce111fe72231e967582b81e9b0948440f9516f83fc58306955fff1713172a975f32ebc3f92f4f464bb02301106e860964c802c6688bebafbc4b7da1d354dbd7de4b3391314e9878607db8432a339450beb1d534ad0e69ca3c30b0d0302047c435bb500683066023100e4ea18ea2f71c90dcf57a53a589910bdf2a207d4d88e9b2782773c00c47d2d4217d978475b61163250f0da0c63325976023100ae045d3f3e865aae5e84194c72238e20d74336ad6e28ab6528a8d3903d416c3709705e34cc41ecd407c4932d4aea4e540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f24f90a1ce3b65e408fbfc3c25aa42f6e770f1f66b2070a148924b67d75373df6f9e900135baece2dd5899f8c88df92e02307cdabb73c01079279a87ec0550f9113575979189468b6cd4c119f451117d11bdb2185004083848df78a100d189969e4d0302047c435bb5006630640230418606f0ed48610483027454cdf3a4d0ed1e6e17f3ca89b72af76ed92d0eb5ae31513c6042228b60c86d03625ccbfb41023015d2920f82eccfafcf2d02fb63af6f5ccc75ae6973f9b4d29f2560289c28edf97852137a4a1b9565710eea0ec42631ce0302047c435bb500683066023100ef2248837d79947db212e3b87c8a6d711158fa922e546fa2e59a881bde92f235d711235f8624673045c08cd7111c93c602310081342674a26e044c3f793666885b48014074378fc6b781b7b9bc7f7c41e400bbd95a167abe7d73535cb0248e48ebc5d80302047c435bb500673065023100b27a5ef56412382d41ee9819b73ae5f7a783273672691855bf90202c1096b005db383038bedaabe340e8c80d92dea8c3023017bf9f11acaa3840c3734198852b867370a54806f87e8d4318a74bbd5179f4a3547dd8b1528f0fdec872642d75e14b5c0302047c435bb500683066023100b7db6f6d57537bf9d30774580cbe605dbf45ae493fe0c0212ee603ddfa09305f6c3616fb72475d85f13015bb8595d2060231009096eb9b0fe4a25f5b28f9cf79b0d05d5553c2ad1dff4fb5db4c9c9278cfc1f3846d04708127874f9684d80e0e78f4d40302047c435bb500663064023035330d7e3fbb5bea0f14e5868a1aa6e8b609e850402bb7a86880df41d914e6cfc953aea434fe13cab94a506517d45d0e02307e83335550a3977c59dbb09c7405039018c9514a4c750987e53481888d27d6fce6d4ee53d7ba64d6a8d1c3c19ef79be10302047c435bb500683066023100e95ea31f4f7079a6467f4cb4a4db0f327352995e6828c8c8bd871350b7b40903faef90ecefaac85343438df0b8f10d670231008365e9529ec9e5b8675a315619d3681a7bcc36d15e5b00bd7cb78dcdc8ede7cc2d8fb5ac79af978bef2c3eaa944628be0302047c435bb500663064023023ed964d88dcb7543f7d691f61d3500ee263a6b41e54572b096dae36542b0daea2b0b46140e7deca17c6a455165aaa310230122bb868cf46972b738dadd42bfbda9e3d351887a2a340d857902474e6e7ee0dc16b21c595633ca451ea4194917243f70302047c435bb50067306502306a52c74668a060831f0ec8137635bac474af0e98e134ed019805bea84bcacdbe59b90119a97fecb45bf616ef0d70548302310080f2cde7220bedc34258ff1465f5027e8855a5735703778a9caee16d3eb404540cb1c54141b194a42c0dac301ef3ba620302047c435bb500673065023100855757509bac9c93c1dd822767dd42f41a9a606d9db8927efe4f6966f6eb04d94d81b1f09b4a42323a61b2ef39790cc80230355325336783c366bb25e495f0b9a0f9cae9d1aaf4f8a6cab742212a3718a82ab1929479211e74a68ffae351d966a0560302047c435bb500673065023100f92decdc9332598a97ad0a43211a84bd0d6538782f168de9627e62107bdb9b275bcb4c88f5efa4e132c5a870068c9aa402307064137bf36b024b3a1618ed67b8673ed7049b9b2c10cce83fb9ee51a8c713554e0fac1c5838a4ad83450e0219852c6a0302047c435bb500673065023020ad61fd9a829507f3b306d7379b01a3dc6902bea53a1d717f5d2ece93edbb7ef653f5d125c6a52557ee8be5360a18f60231008618f52f30e4c4026646bf08e5d6595de108d9447d46679669d0a493b2f053393845e8408e797692668bcb6c243fe1700302047c435bb500663064023035304a3a45d3112f11461d8db84dc3b8a9f1ec805cb65772428d3253f6eb497dd1acf6e2c3cac5c02cf6238c1a4eb3bb02307d5d25faa7e3663e20ffa9d2d3da96f74b34415476a57d165877320f0696d57dd9e1927d6160c00ce02dab288bc9d6af0302047c435bb500683066023100a3b7b928c6c06b13f9bd2515e25247f803261e672dfa80c1cf999ae616d8cbf241d9f95758a1f9245061e93657455c6b023100ca16ef0f934619fc1a02cff199f661d91862bcdee22d8dfb9479aa3236067fb6aef7dcff8c96d19dfbd04e74779ec9b40302047c435bb500683066023100b4e5e99fce78ee64860c55863c0ba7cec156fe001ecddf90a1376e683d38665efb0f2c5477dce1c8a8db158319373c0b023100e5c900e2109060c59cefdc1548b509df9c3a2d5efd8ec27844f704a0939361662efc0c287cd63ad4a8d5b88e5dca2d0c0302047c435bb500673065023100b45b69c82571b050045771c2269d2fce33f9e434f3e32b57c085cb4fb3b77eb7bb689073db04220d9f4590e0d9cb7e4d02306f4f6629d800601909004baf3cb17941121600eef009207780168d42462b72d3b9a7d75fa6512cd4342e29d7b1dfdb380302047c435bb500683066023100e73692211f468b2dcec8d3ca7a4cd439fd670d18f88ef6b7bb8f2ace1bd28747d8dc7611cdc9c8589eea5abb70726f9a023100b284ddbab64d34530ecf4850460b31efd0c650e2041b9c50a95802f6d6a128d2b1d6f0909de741f5aef3a8c0f8284c290302047c435bb500673065023100ff73d7f792751113852c32b758cf36b5d44b6c356aa18de7ae2dfdc3587e7a4a06b3007cc59c1bc78356023537eb7b7e023079db6c4f09593b3f6f9cf9ab0119e7042aa941d2da71ebd319b3e2a129a2e1e1f4e5d8f5e21f8f145733bdf66705cd140302047c435bb500673065023100ad9307cc1f202b0364f9119f864b2d3cdb1cbf3d44fc1deb8c4c8b5150479d20d557896aed2d381e6bc1a49cd146155b0230324d3a7e2e0b06ee2abfabd6a416baa28b9142b3efd0b8e36152e94d041cf7fd3134ad78146dad3ef41de1cfbc7e5c830302047c435bb50067306502303ff805bc97708212bfc576ebe7b63c55e22058f71b46e01a329855383a103234cc746dbca0a40d51c5b2778a0e58fa3d023100b0bbe4692274a64286ce6c93295c9d96ddbf85e2551012816a5f26d08a86205e9070547fe5bd54b2d89624e665239ab40302047c435bb50067306502304a7013c783082f1538c8edac44e8693f58a7151acea3664f67ce058a0d4bd5c4596ce44fc2b26e52f34ae39cb230bbcc023100a0874b4359f6530cf4338d7389dcf4f6ac875a0c06ed512ff9a0acf87764f515de7c06f23983828a5c43bf1c55fcd7290302047c435bb500663064023024d052f975b327bdb2983c2de1bb7efb0580b01e6bff6f5a131dee2f4fbc143b6887d553166baacb1765341310e9edaa0230215611d89c789e0f39105f58b93b3ba2bf6703c234b2d538659e424c6a3b8db6b85f72375352767bb0407ce29a79fc7b0302047c435bb500683066023100a5e25e61d5d0d0981dbdadd1f979b902ef7b67adfd27d0627a23430e07ca441db65673928f4a744987fcc0f3b2957157023100937826e65f1e06c1e4ace0e810df75f77cdbfe0beea589c45285dc3fd4cc8c19f1e2f93240bd072023ce62315c73fdee0302047c435bb5006830660231009b4c91a907b1dd68026f065dfb1bfca4c241e734a39a12e0db13e67a8f9d2846f191928554f53e81786d3b7a7c2fa5e2023100b55f9a47f0e9ba57d2adf5d0d02d1dbbfb4d73a8adb29a3be551bedac7824aafea030cab54bdd390dea95b6f7d71d9a70302047c435bb500683066023100a1214a23a565009e37ac99103ec522f283c203d69c548f6574e54edf7388d283f4a4b77b48de0652d6c49c662696763d023100ae2c57b300dbbd782f86f495eea723548cf7efad4f15d1969a832eeeed6142af96ab75f107b697f8b69c463bcb37cc1d0302047c435bb50066306402302bfa97e0300431c6ab35331b20f67f0fec6c6481e9619f5dbb6a106e1a34cbba6740bb632e7f89dad19eb2f31ec7aa3c02300764a32efb4e6ac9f41ad4c4e24a7a4aabf91f7678b433f2fb804fe2f218f8374787eccc57295944bff5bd2d5bf332680302047c435bb500673065023100976892b927fca03414c0e8a39ed208e078959f0be2bf81adb992f00da7f58b2ec2444281208911514035a71cea4a7767023058c91ecf97ff87c8ae8985c5c55b42604a0b157beec9dc4db1f69757a9e060f599fb0eb31e1632bc9f56fcf8255ce5850302047c435bb5006730650230704e677c75a7a8a2d0b578b4873651f7b75a1c0216aec1ffedfadde268d4c97f3baae8611794189136bab28220b09327023100aa05816d5c594176b8186c54fff64bb782f8e0c744f4d88be853fa48cfdfba19ee5e35dcd9d2a834b3566503523c05320302047c435bb50066306402307d8e0bc1af35d8d5ef7c9262d6c0bd5f7eb8e6e3bea3eb369fac66639fb7e3e329f6811c67886985c675f9d6df67603f02300dd574c7c9609d76d6cb4643b5f4c99bd5882ef594108f48a5d0ae73dac5ffdcdebbbdd820296bd8ea6c8890713a40380302047c435bb500673065023100d2bee5289a62eb1166c20afd229e14784ba0707489bb8880c21c00ac534809b530967d4bc1588a985a06ab8058072bbe023064c8423602b9b95b0b9a76880b97dea2ae51d2ee3455436b363f0d1edb2f45878df647b412b01e46166abe9b5d54dedf0302047c435bb500673065023056a32dffce5069c6613ca0fc96988c376d34bf02e9ea5594b0bc4a64f28f8c82413f3eb62e77f3be75421e8478e74725023100f6c1ab68fac2b80eba6baa0c90725b2b8833c537765908e08e833d569f4857c19079d26006ee13f585f544c8842a728b0302047c435bb50067306502304d8f05e7e484933d8c81e385071964cdf50acd1d986087854cc9b5268d4f264b090eb3c93d2c5dc76c54790fdc8c48e902310087e27c285c7386720253259ec3f05dd9c3b8cca64fdf8440f3c0fa53155ee67221ac2c389598e01703d51d19bd4aea620302047c435bb500673065023100f7c4bd99903e4c5b23505b89194cd08c3d0f7da65538dbf47bfedca4ef4b34e3c90b3b48f99eb698be7bfbd919893456023019df2b5d5045aa0087fdc10a48be75922ca695b8fa25d223032426ae96e4af67a63b045fb0d724ca77b6c66de7bc4c700302047c435bb500673065023100d70456661cdb9162691fb0f25bdb0dbeff7542b2026db9f7359206d73d3324e3329fec9bcd3d1a0d6789270a5c78b5c302301d66ef84102b88773a96226a7413ba234a4e06a2a5e04348c31a90791cd64f5ee4430504a465eb7d934f4eb087919bc70302047c435bb500673065023100a284c9f6dec8758bfdca8f6a12b302ace2daaec4b3a86dc9b0e8c94e9aa67ca4e1167428afc6e16c308496ce37516d9b023012914ac5b3e9db72d0bff40aee1b1b658ac908b2e7124170b279f84d6e7aeda7b48620f76b8d2c9bc935c8d1dcbae7420302047c435bb500683066023100bd18a98f508d9884acc3270f41a6100e9c979f3b185dcfcd8c8996869211390329c9a82d9e3f8acf0690724f9c5e378a023100a0c54668a84f5b9df20fabd13e5810e0cb297feba50d6959b7a7d038c5564aa2003b084f39cccf1a9c1b51b725bfc3a20302047c435bb500673065023100a098515ee20db7982e438700afc34eb25bebce54226bdc502fbf00fb4b92ea38d583b77016ade5ea6558ff80bcb41124023038dcfaddef8b24a909c4b64654a6bcc8d8abc68ebd0b1c6beaf2b6a4233e7a868808c8626aa4d73f57fb067eef0d06790302047c435bb50067306502302dbd173db8db1d354f36a811e455f426c796287cf8026a591e9880ef5d570ec4d78fcb6e21468292f9b9c051394562b60231008d49e005bb547e0d2af48e70a8877b769ea44b3869af2d719dd0860e85334515a120d569aa5ffa6a73de092d44b31cd40302047c435bb500653063022f7636993d34cea6fad1404db051aef1805782b48fe80e25feeae92a8ec702d2a5a00388521155cf7f3fcf47ffa522bb023019318f8f75188a40210f18a63167be1ea2ff103200a73c0c63cc384a8ae67f6407f9872d1333ea4fb8c3f64831c7750f0302047c435bb500673065023100b219c6978dd07a83acdaea11421e61c0ae6943a24621888255cdaba03577a13c36e54f05be9f165f9dcb1e71cab00379023009ef50e5d3d22290770e545d3e0193bceb51714f50e5f7b2fa36d6d2d2adf370fffe1950edb32632343f50ee48d4f3430302047c435bb500673065023100cbd5f9c09b0b14869d11d9f33101088a821991b9c0c176cd2b1303195df36fa94bc20184b86fbd1a0c0f9efcf8debc8e02307b70403e9ef035faa927c11d3d5924c5f78cfcbb757c77901851cd45e22799490d639c1cb803bec93a52ef9a60236b870302047c435bb500673065023100d55a0037e285355c137935a1dece86d4fad0236c24ae3448db397b3df9076e142dc2c9ca9ee18b130b1e8cb647ee637b02306d1481883e9b54ba3c217a474bcab6cb53acb10c0654fbb01393ee540bca9302149f9aeb1e7c7750093a0d5dc3d0ff9e0302047c435bb500673065023014faaf8539525a0931900f6a61e531185ddb67b5bbb171920d44aa28c2f2e13b0679442dde553772c3675ed54d337912023100d1dd435f59d96968751334f7b050bb8df10064ce4be6504a1f800337130e8e25158840b76644b1eca4dfc8bb54ad25080302047c435bb500683066023100eda40fbe8ed037acdb22fe1374c1ee975ad626d2f9d98aa5d24e632b34358e1b2b663451550eb73a7aa1df0b786a24dd0231008679ea0601624eb42ed5100eebe437096829b28ad098637ecf1e2a7ee36b56a96f0069e9a1d18cf7e7e13fc5e57989400302047c435bb50066306402301cf9b83837684e1536402d781ba7e323b6479fc5c7213dccf6ebe7bfb36e85c039e7eca4a2a88252dbebd58b09d8599b02301b7954e2cb2ce361eebe97f8811679d98b5bc82488784fb94567bf447fedc5cbd3ba00e11e41d8c3b13cda778b3fe9b00302047c435bb500673065023100911a59bd63fdc90dba7fb991c4cf8b6c4ed76dfabd5e4cfec0035a345277379081c659848d906987c8fd0636a3fd0de602300bd5280d0a6d51ea5102e8d04ba034e71fac3ebaea803848517e6f46d1427463f2ecf338c0956279b1679807b64b77cf0302047c435bb500683066023100debee26f0ef56add6fdcc8e27dd0f003483145ab7352bf24b7770d07799a8c4a763129731c7f3a206bd274c19aee4e88023100fa8fe3e960d874ae940d805ccb73e72bec9a02ce03e6c97961ed8d715240c5dde77a567cf6e6938553e4410cc56442f20302047c435bb500683066023100ef824f5402a752b1c62eae31ea351e10208c73781c61c74066a095cf142c1100a8b7728c7e68ea70c011e31c60d169d8023100d74f511745a467d531f3c0582a8207c5cc0d03ed9fec8ae4c127365bd42fb64f43b4385225334d0dcf6b0f100335768a0302047c435bb5006830660231009caa07f4ec8b9cdb94f3d063a85434f1ba2a364f82bee4ffcac6fa46924a3088126c3561cf2d284eaf7f9c2d1651681d023100a8ecc0103429a587256173743e81667ef9ba6ffe3a881221278428fb18f7e33778e2b3b0bde4b035bba358a3654682780302047c435bb500683066023100ffff4bdf55e5b9f061773e845a67f7fc3c82eae6b22768072b13f757b2013fec2d347a8cf314e48feb700e513d64af5e023100e46eb5eac0c7131a53d22270e6316e459bc099218d760a0a694ea85d4fd1480a2dfdaf82192662ff81acb41e1f135e170302047c435bb500673065023100aa687d695383d3a61bd59c46cbcaf8e1b6e60293b757aa1225a5c1907f49a97b30994f001d44a8d95a8143916ed824e8023024d3aff727fdc2420436ccb9c4ed13e601e5aaeb36e41bc542b3e96664395428cd02c17ac6951c1d37d0e1c25d6cb2860302047c435bb50066306402303c5e99eb6507456c57d15bfef77994bed17439db1b207057a56e80a9159be09d7eb4a9354185590dde46d2df5353930e02305e50c97570f04f6b6e67c40589d51c891565a2e291a8cbb6acde4aa3c54add580bebc7c1be9e470678bfbbfb77b5c22e0302047c435bb50067306502303a159c41a7f78835d4e5325e5a44bf25d7c971ff41bb94366a65de83d2b185849c6ebac9881754872e7b02840ad16a3b023100b43971b03f417ebb1c08970234a44be9ebc65ba5d72d8ee4939465be60153577c12bd61e91138f0f69dd824f3d32c74b0302047c435bb500683066023100bfe3769a5dc9369b5679eed82636756ebfd420ad7412febc7b6a070da81b0fecbe362b46a3439c1949cf4ece938c41490231009244816eb92233ae831d00815d9f1e353590df89bc6c073f50a0015e2feef68e0b11c8224c72164bbfd19adb79085d8d0302047c435bb500683066023100ea606a064c3b5997048edec297d91a83fa8e3b05d12cacd94440469529b5db8dc8afc4904f16c1b85adb1814781d4f20023100ae5238db6b67cd4bd4a62b9616c897d48b09daf9d23dc96394c4d353a9676b50bd7eeb385bddfd702255c95e6466b9e30302047c435bb50066306402303942e0c59ff33f550853721dda4b30de85a26fefa0be6e2ffbfdc5c0b1081796f61ff7a250dd516970b0643d5897b01e023071ee7cc096b2d080a7dc05c4fa8159a7aa78ef5241fd5eb0f6ff422df7a1961a4f5305ff9601ebf1d39ade34a2dbd60c0302047c435bb500683066023100a2a8f959843d9eb34f169e7eb9bf54cddb20117b0a51ddb00620a3fdd0b016bfb3856997f7d005fc8440691e8f6fb34b023100a7e50a036ddef153adb8570d27a8d648c877bf38255bff7fd0121a1d49d0aedb07421a574c244846b683636f27cec1890302047c435bb500673065023008d079070be05c6d0ad35a34938be2dd76805c2b3a2a4535228f2ca35ce6e0de56c7c2f81e37badb3271e799f5a493f7023100f1705104b020da0f5edf122ab32ca40f163c012676b93d22b55bea15fbb6899fed1e2d3c3794d863c884163bf89b6b760302047c435bb5006630640230683fa3f2abed8f8ff96684e56daa35609642cc565bf44072cb9f68d9e5d8c92d301401ea5deb92a0f480b56a6a5b82640230733d544ab1a76ca73e54670519e397d8eba0bb30a8e119f7d6d8adab3af4caad470544fecce082c5d7df5a984dfb771f0302047c435bb50066306402306a5effcafb1a35adba658abd4f5d6086792a345020dd4c8e3c862692fb6a7814cbb41f69b9e18e9c0b9b890c78b4464b02301efaf49903bda313ea68d78209af3d8265f43a798c606e530d9781ad39f04a4e7febf6b231ec533c016c2110f03e5a170302047c435bb50066306402301e0bb609c900fa2d93f8f49cbf824f72186880b5b0a4133ba86c0efda1209da391a3afce831e7047c675c3f4cec545c30230672c2ec3df3b172d2b3fd1c64b478b88e280a48d781cf4e3f4811b900dac59d2a7937d20ff32077d3fe7698b39827b2d0302047c435bb5006830660231008bd9500accf3321c84506f0b25ad0128e9361b6c67c44f1ed0b9d6511fcc26b405d8e843af9d4e9f71b165f4635dbddf023100e2b08fc8666aea9ad23919487093b89819c4c26be9cbd9d8d389b80e20e36adf9c501dcbb9bb9aae172e564dd160477c0302047c435bb5006730650230687ef26e0fb3f035b745874bdb6edd10e103c5a7458a8b15546ba0b0acd0b171b37f8c2244065d9db0d12f106f67f3ee023100a6c39f9745a5c06e889ddc84aa54148d733509b46d440473f5dcff35d0ce64d44d27d77e5e5d23cb5c020172080923580302047c435bb500673065023100fdf01d5a547769960810c07412e052658efecd362ade1482225c1c89e48c27260a9a21fbf20fe2a3adc83c113a915fef0230383c3bd477380ddecef3952a660c0e0afd9fe9b15b691360a00eeb34936825bf078ab8649352768734ea175f7df38a710302047c435bb500673065023100b701201601deb15e7859528d7170abc37e82c71f366e1549d1e0b0098241fe220acdb9520d2c2fe2513108be133c465602302149abfab35ede031c644b4f8414ea8679e1027ed25381d3681907d122eee38ad6a340f3ac0b42aee2deee3e1911d4640302047c435bb50067306502304859dbf5bb112a146f79f25a838c2a8ca9690f8f408d9b7c1435930f402620e44818cd052f09ed0e54990925398df3c0023100b4c52ee325db5f6d807fbb24c3b996759e0d0c9024b2e29502b7b3bbf0ec26061caa2d3305bcaf8439f827efdd3df7a70302047c435bb5006630640230716f5fbd2d889c1a6a8c629f6001420f0e9aa78bbf7ac117bda1cf6a538da975edb7607f4e2fe98bf81f83a76778cb4702307b10e742dcb610cd1f4b9478086bb0a51b2682d232ce33798de35790701ca44563fe27269fe7b78369d335aefe84660e0302047c435bb500673065023100dc587258f217f966c679e2ad71e251a5f894e19df688377ed7da4f01c9379caa4a33f9d80a16fbb7a67ba6dcc48cd2e902307b144e0c204181ca5070cc7b9253d8a4d6096756e96c649eb5e78fc2fc6ca4e157150b5b41ac28a30c0d26591e127a920302047c435bb500673065023100ff82839e0b37a7e2dc7f0867e7062590b0bf2e829680d99166542d59d26f287cc1d67a306ef57eb80f5f315a58162cd8023044e20421c8ee6806e09b79d0b618f40b50aeca05330f1e51190fcfec98f6be4bab767b38d55368994bf23a3e3b7dce310302047c435bb5006630640230129dd11874df4f95c761803314e03bba07ce6a0de88d4437e2c09b7c452723a367da3428a49111af5ee4ac8c3077e0c8023049e78f00188a1a653f42427ac4cd6e7b3494d683895ec976eb71ed1ebdbde8689904dd56d251c8cf7ddeb6301267c9e20302047c435bb500673065023028f7cd049d7d0ffa9849d749b2fd7f6f1365f10ec5341a8190ee62bf75181142af7292d3afcd20df74a394541135ddad023100db5327d1450fc2de7d58e9236e5e5f89fc0b94c3e7027d4ced85d2161d879a3d05f8640cc2951fbe1c8947b60e71399c0302047c435bb5006830660231008ec343d852b1c36c66ceefddfbf8f6dd9de8cda410b8582d660269abe6207248d3e4a6676c254462154acface5b94b5c02310098726ea354718cb8301974523502b44b5f3801fd52840885154204976de953ed29354fd7bd48b10a0716259f7e396b250302047c435bb5006730650230560d85d3943314a8f61c17819ccd8ba41659bd719162b57d6f60d3cc5f15f0c6ffef615072b1e4bbb7c310a6337544d30231009dc3d62fccc2b6f5d4307d4be93837c28958e173e4cb9704c9f0ac43736f23c989e42162f9178c5b5dc3192f79c767960302047c435bb500673065023100a0f76470f006c2f60fbc147d3a10bcca2e41af4abdc32ee886aa7bee355aebaa297a9334cf3342938ea580d82a4196c20230019e734f1ad9ba49f63c13ddae3e9338f75fbd34383007c7703b81076a9a1ebb72166a88fe2472fa4953f98e124acf1e0302047c435bb50067306502300b9fc8cd8babb8c1713b6ac41ed7798b948c67afbc6254aebe9a3ccde2d4bcd2073fcabb1d5be5ea7031d0d5c889c7570231009b4eda441b2fe63940499850a537bed27ba067b7da35265823d5a7a49e1e2ffd8b86cf8bf7a55430ddb48734976150450302047c435bb50066306402307cfaa344c25eb403d1e9c21dad94dc674bb883a59e55c78e58fa1eef296b727691efa8b0ee39997075a27ade23adb95a023010a99497d0dc6c3cd4631aa74a38e98716d59813ff6695385faa377b955a120b732fe1e5aca5f8295293c3817423d61e0302047c435bb50066306402307fa1bffa7996e9259cb45244c05d621b64c5d225dfe88f9e87007aa2668cc354340765976989b8324aae984453e8d64802300cdc6ae514f24159c0b2f8fda1364bb380899eb8ac1ecfd324aeb8f5bd749cbebb974fd2e844c45aaee10bc0e13b4ec00302047c435bb50067306502310088f53be508156169b76899be64e16d27a790e656f15cb20e01a4157b77c9a765582d90368916073ef4982d94258a764102305e1ce03fbbf3335b159f71444fda361304c2f218baa3ea8a001a93ca8fee5de8f53b7d3d71d0985e941f49e1b5995f360302047c435bb50066306402301f42cb8c8b86e5d83b58877addf86db48a9753332bc5cd2d3b72d1ec947eee667e303d47af5fcbb40cfc4bd13fdc7ddb02302d7ac385fd750e49055608de38fd94fdeca80871b6e1c53f3bb511077026cb206d2fbcf8cfaec0f4267be2256cee5a9e0302047c435bb50066306402302825e8368448a3b4f370730f2c8a392a1ce8af79cfde7e5761f77f49fb12193407ead7b3633e5f944981ab41b5bea838023000edf2278819e44ab3456665e2e76333b36c977d8c27f0adb0dd86324bb5626f1fd192502d0a8ee0403836afc068b5380302047c435bb50067306502306fff45d31dad835c43a9d3a3f5f3253ffc75c402f98af5b2ddda05a673063c72ad7bb39455381f70b6baf08313cc1861023100e79a5b7b8c63e48cfbb2cbbbadbd665e3bd56b11c4895db59bce6db0462b1a16922c97e4b28b1408cda36aa16a5c46690302047c435bb500683066023100f1005bb17dcd5330f13adb43e0261c376c579ca18d0bd838ca168d02a9990bb01c9400087fb0cdd82178f7b27a907c65023100f9d56de2a467b4fd241eb0a1eb20700c6d89b24782eac4c16bcc6a0e0cce3414af19fdcc4ef893b9136528e804ef33300302047c435bb5006730650230053113736b77a27226e2ffb79a9b32b8b696020420ea7b822fa4d5c449cb58a141dfedf7cf9be50adcd760e3c00445d502310095dbc823f484dee7cb47305397c500d22ca5cff2ccf29b0860917f12e4f8eb6ba486e7466eba721def267e8bbf1fe6f40302047c435bb500673065023032d7c147bd624c0859f1d82af363dcf458103cf4445d0048b44b7bf933a258586b74ddb72234629a7aa7f69cd332b7350231009fdea2af673b1a506085ae84164534dd23a1b81805d96d65a23bba44313147ff62dd6fbf86c3f2a10e7a1e9bdff84ef40302047c435bb500683066023100e2419430efd6b306b9bdeb91c06c9f0859dc718567bd451b9cf6cd48006872e1bca49e43411aa22c381a11d05f3887a3023100f86c9c5c183ae1dfe896cda945bb16c5e31c3d7cca0aebecee4e058a8710f79a3ee6014fa42d605eaf582e3ad979e6420302047c435bb500663064023016eaad76efd2ee88702160dc4684bfb0ae15c3021556a97efff05225de77cf7e2a0c6d23e90457e380fa6222569ff4b702303019aceb387830246cb9175064f21a88b83f4155b852516d6ec461ab67fbb94bba3a67176b433552c32382c8b255b2600302047c435bb5006830660231009160ea399cb6828bfffea4e1fb13a1a1673d5bd6bfd8e0d0fbb23204a8b67d5240def8065d0260e2eb00fc076c15a15c0231008c3097b5964087aacf63cef60a286f24b715cbede7b4e876517cf11bb0d1cfbd736795ba974f9f875d2acf7cf30684ff0302047c435bb50066306402307082f3fc546f2b29642ec9a8193f6d0d003cbe773e253f5b94f2cf4bfa60b37669cafe079a4cf182605a6926ee93520802303d3425325ac6c12142c236c403787a193c31a1a808368262b04772eb6f4f266895fcfacb3f038187a6365eff3144d8c00302047c435bb500673065023100ae3764557a39723c8c53cf962a0d2e9d5baacbff0401661a1148ff9acc9afb974d894f1400cfcd855299fe879821979902300bfc70b125aa83f933148988608c65a53bac47b8e94b7bcb1ae53bc8ef6162f638bac61fea952b5f1be6da5b5a70a9790302047c435bb5006630640230569578c4d21ea3261ace1a51217cb3ca9e2cbd7df142736a0c5b5f61780c4ccb41e374784b3a692dbc000541eac3aded023065e61ffdd9c0842d5084c141990ee7032a8367199d538fa8785aada3ab2b3b17e9ca44abdde0144adc14e4b44d6605720302047c435bb500683066023100f8c65174c91fc95dd127eadda79c2db6ae9347285a94d16376b5b8a84c6c7ce35bf118aa035ded78423178b88956cc46023100ef828b55f171255d1f6d573f1285ef9cf94ee1b8ecf43c13b9ee303e1446738eb76604a48df4a8dd5a726e17d1b980280302047c435bb5006630640230446aa51dc3b42ee4774dc1c013b99fed7c0ce113ab49dcef376604e9cfbefc90a4147944f44aeffd5c6b3613a9b428ac023019b289b6667b8e334cba9dc622445354691561cff41742c10c2612a8d08c801c9adc8c09c2537432132ff391368b95930302047c435bb500673065023079822ffb5e7d7b3aa47d93007c3dba8ccf2ad739bdfdfcf0fa64715faedb789817adcce6a79bff8e7309c5d312d88762023100f30e8c1403808017b7ab2d4692aeec0e10ef2dcc0b4c7f907b37ae2c862247fa94fe22e0cb9404b81fb917e92873b9ee0302047c435bb50067306502304dc63518365d6d10014c9900cc9003b4e44cfca57ca31f569cb0b274eb42691e027e5f5d140d8fe525b0e665df9dd784023100a63f961226402c95d7543a6c1a3785a24d0e75a2a675db0854332f7771643e373c8c4370bd897353f5674878650240700302047c435bb500683066023100934125e1206caae997fe4c084dbd9ba0fdd9eca41ac7125152b3d3acd8d2e0be587a248c0fa77c6026ea1a3ecfd9c3610231008825ae0d771e9f6dd41e98c7f0a67a6a6ee904e45d3b2c891dcab11a33c6fb31ff5a8274d79b4c3432e09a3f6f1c02410302047c435bb50067306502305ffe22ee98a082c6d47b99a8039006edf1293844925506dc86cafd5f83b845936613f08efc3ed6544aa84055685b8a40023100e58af5a9c0f3b05d2e09ff3f447154d5613cfb23c7d3e25d1314114cd85440c091b7f5771449f4bb05f28b540c22b7210302047c435bb5006730650230225a5da8c2c37632cf63f152ef3fc3c20060037bb15068b0df5ca0f4b915a14f00d3d7b377d36f4ff6eedc0dfc28fe95023100a7190388ef8c2755ad4a6ee5f2ed6a96325f9aea395421106b1ca5c24ad33bec4f4dac333060537d25f5750456a171880302047c435bb500673065023068d0617c638d2d901b8d3ca353334cb098c94c9ab2af523417987415d1be8844f564c03aa604b9a1b5c960fdb6c834b9023100a0976f319fd8e91c9239cd5d6beefa05981a1bb2ce93a8cc2a7b874581023967449a1932f337508c503f5db6dfc324d10302047c435bb500683066023100a62302fea6067533e31ab5d33da37ffc18aedff9ee5211f1a9f29786424972c99b2254f7c32f38c908761b7d0b93a81a023100e41cf31630052d18207bc160b82aceb2c414d609a1c373da250d0b9ffbc0741fded7e0c31873c105c88c38e367935a190302047c435bb5006730650230214e883d448e551d0bfca1f097e68edbe810a5ca33d0cfe85490455da12a7a988bd17d6a026a1c03756c1e32b942a302023100a57201b605bf75b8e2c1f64478c826370abb03f7bbf194dc32945e94170d78ca5a575ad041edb4159ed9836a9e193a510302047c435bb50066306402305d71676184e382300d441874c72a9920191aab7165ddabfe24e847d1bc81dc56c9b3ed584a34ac07f107e60f6a69fe450230242b8311257deedf9ed12dcefbcb3c2faf59df4945b01e1d22e53170d3e9b01fa56f0e8236235bfd02a987921c8ff3db0302047c435bb500683066023100e104685a675767af4ed5a4608b3c95235544dae29eca6ef046f9a3aa1d2a57295b267b23b892276228257acf3834854c023100c49e5cece9c4ce050aab479ed9f537af3cf24708087ebf8e95960d1e443c5332faaa8712fe76f61520a50fca5f307a4d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009cd99564a12a25723c1c1716113cf44dc75c558427996bafa632c13d3594a097d6be7092212f48447e4b73a9fe5619dc02302566c645251fd258c754352f32d0bcdd69becf000d69a54f7aa76f23addd6e662696fec715d6d8bf174fb44e5aaf782d0302047c435bb50066306402301f288bdb9aa67942e4861d92046e8ccfaa7cefbf11a1bbf23f0808207e113dd8850af4f92e0ef4f916f99f4ed26e39b2023067e7d6065f9ae8b9f5a07379dbbced9b5f86c5191e7005d4b7502a8683d0b7f92191463a89bd099bc37da1f9f2033a300302047c435bb5006630640230654ffac333b05ad159504c4a0495d574d4e9b81cc1d015aa3fca0843d7747ec741e47de576b424873d31582af32ee78a0230515fc7e24ae01792a55019baf056ad3e942e6b4311d1728a1d4807e37237c962b12cb562cb1983a687c36b004ffbc53a0302047c435bb50067306502307cdd11b0967f06b6a1970188fbf27ec0c9b3e5a1b7daca8e7ba603028ed04a7df4da80be33f6c0b0a05da94fd83ef816023100dd96d2b7a5ff59fd7f21ae23172b0dc16ad56e602c2df69594e5f3edf2f34b1f658be6766259505dd4849f4a76d3ffb20302047c435bb500683066023100b56f1741e8649a97660301c459ed441af347ff9706137040bea1e941e5cf3d536a6608e4d2cf5bcc9773f7b61ea8189d023100e511a7993c533a8917013cfae2265e63317824eb9e0bca305be12a4181301edf98c4eed0140f7a449a67f2f28b1a4a2e0302047c435bb50067306502303e990eb042212b145801df43880336ab4cc3a58821fb8dfee2e8a46a97ddbff4582d846dc8f44cfccf1873a3ddfb4bdc023100c7e93f743625e4bed9913a748dd2fce3e108e7c905601bbe9b8eec800986210be6ae46c2582c759262e69d821c07c1620302047c435bb500673065023100aafa707ba57b797d540c6d03fcff55e964b18f615d62fb7532dfc84a60fd199d550ffb3865e7a8e7c1e2eaf2a116240e0230332953ed93579a58103776aec24733d8b9ae6e4d75f2d58ee254b72521dd48aca0cc6743bb3dd94f9437410cde3fb9820302047c435bb500673065023024e8a08a830817cfcf82b34490aa302dbbd2f09aee2355e7cc4295a4fbcba92a7e7e5568fc3ebbd540e27ed10c415775023100e1299703e663782f2dcfa299c4d7e76318ff8d3398159aa161f2e22897c9b7bfb452f4c400ecc183f249600f68507ce10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307039d61869a57b8ed164019fcf71708e231cddbfebf7a35579fb3b9d457cdf438798663b7c45bcb8ea364cb53ed91fd1023100e25c3034b9e56180b98767b9dc701af791fc994749bb48d0bca29a96341e03895abf6742bc28754de1e875c377099ca10302047c435bb5006730650231008258d9c1970b1afba9886d41b6c1b171be7edf48f7a53cbc8d235f7a53283fd3527a5ed26ebf39c5083c9496ef6783170230369251fc7c16379414dfb1890815f1a758daafa599faf94ea93fbd355c602f34b9d95c8422def48f90d351fd8d79dbe60302047c435bb500673065023006da7f59bd915ee25a88f53f7aecc59e42b8feef4e3f6890b71e030f3db14729d2f3b375ad569a3ea2c3c871066cd9da023100b4f71700f173b803d826f48195a19c906631ca975f28c6cac8aca74fb761303cb4eaf25bb1b637e2dee6e2915535472f0302047c435bb500673065023100aba09575a4651566ef4de0dc0eb15a83a72a46ae9f24837d398309290dfeec0b01ddaf4e0139dbf9c5e536bdff520c0a023054aacf7b09cbad45d610f2fedd743cafd04525fa51c2a6b88c5a2ec0d4e693dfc8098b4b598fb39aafe6ed82c7a56d890302047c435bb500663064023031fb6f93324d65014ba8e3926f5c78369e07c6193608c7f94c49240f2e11bc3e904dd3f84d30ede8dce21c04c182fdd702302203caa46d0e9a18187e4265df52055683e27e0b7224d4de511cc33b4d837d20fc8df0caf22b51e4f6b65e18ac2522600302047c435bb500673065023019590fe5a6f9fb56fe352f2a521e5377dc2fe8ff9d189eb9fedd742fbcd0cad9f1ed9e4110029b9059e474f21176161402310080c11760243768b83d0ac81b0ff6a9070cb9debc93d02a0c408059aec6614f281538634af1c19abbcdfa75e2fd34f8560302047c435bb500673065023100b9f495ee8e3980a3603cbf264876d8e26c23ed71f857d536e6e6b2cc67d190fbf1b4e05569e5228d92753faa8723e34a02305ea76bde31d78623b477ee5754dad5060261a591195f20e761d802219a4553f5bc57c7d67d2bf957322b89cb02fa61ae0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c2d94668370eb24640deeeb8a0db290b7f72861e4963668d222382138e3217ffb831f10ebf356f3af3334136adcc139b02306d959bc29d52c106b899316733d0633d88343eda9b74b8fa22aaabc32bc3ca83d35175539fb33fbfa9fc7578c774710b0302047c435bb500673065023075eecfe3d2edbab55a94131857ce5ef9c95f277ff4de88049b7fd5c640e9b93b48bd818929fdbfb28dd67a8e82b22fd8023100ee54257ae61d1051d33c81702bd788aeda6c39fb294a4d877086f48a9d72506a4cec5386bbe83811a8f0330fd4d2a5f00302047c435bb5006630640230639436f2b5c3f3cf14f4c5cb5f2ee99080835c486f19b277fc0c37535c579dfc925179aae9d38ca42f5ea24c7a392c0802304364603ae3bfcfe065e8d658102dcc5868097ee36c0813e65ec98a457ac82d6021ee5ca5fad793443123113ba49b8e190302047c435bb500663064023052e06c69048395fb1fd252314ff2459a9bac12fba63fce310829330f9dadc2d86788a76991606b53db0e683578ce8b7f02300dfd1d8dbcd0850dabe2e3f285d315fc7384d7d68e64706c6692fbb26e745ebb8a017abbb06c836ae1b56097fd5273930302047c435bb500663064023023eda4f29ea1fcf0dca1a856af275e0862efb7b764192dccc51ff6b9791a83d3bbe0f6e8b6b45ab9552963384d0917e802301b6ebf6d70a1ae0f8819e1045c9187111c19661ee3ebfca9a8f798c21fe961edca958bc438a3ba13878fac518467ef140302047c435bb50067306502307fea67399e1fdce7291bda4a39b3375264b1f4141a0abce78a7f74d9f9f91ea56b469089505cae6177a832a841b3c75e023100a58c4a9bf3f54b42d18ecc1be5f4d30388d00d41b43409ed31dfa4ea82d4dd39da1d51db8ea57127f29e33ad140827150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d82339045a90b4a4e9062c9a1f09dc0e4af3cf8012394b79ba641d9ab393ffcbd42969a3d684b032380600a0d08cba470231009eddf39b305d64f5c4e8903767e25aa041faea43c7dd269d72cf583958c4d4d49695873b9ecce8ded9341eb726ff70770302047c435bb50067306502310096c33271e76327d8573438e9b36269a5f0685806e1f81b4b05d82cb5f9d1b54598f02ba0a92fb77ad13f6511a23e8630023071a93dff6dabe38c36e53fba125c3299bc66ad9e8a7c6753b1e46a0bdba0b1669d3f1208c525e6fde57faa6923f347380302047c435bb5006830660231008afd0b381d2a31f245184c39a9b55e12489368ed04f1041500ceb94462411aeddcfac0cd0607dabcc0a57766b013aebe023100cb29f3aec9ebd7a0ab836d45ccacf58784272d8073d33656c958a4d7d5bd46a0f813c313b78c250ed490bd3bdbe8c1d30302047c435bb50067306502306094ed0aa270f61875b0b175a8477df00cdfa028274990a991248004e1ecf4688f63ec405d38f5bce2b9be0570efaece023100fa11395bffba892e1c173e2e265cd98cf45bb71a2070fcff2aba617bfbd887c1b03c8b2346c4684e1de87138ed666f190302047c435bb500673065023100a200872429e71905a955598edade6fb2eccc42655c933b40807bf9225c97acb653979226f2515d03dd28beb3a5639a680230413bae6e9630ae2f8f53ffe26655e20f32d4022cf7971c671b8b597dc56baeb31f057bf73f1862fbb98ad9b9c7a6bffe0302047c435bb500683066023100d66e054e177da05fc9f23861adb9420ee3ee85aec36f4b54f1b1321bd56d61038841d9f7a4cbcf99fb54240fa436c1da023100f379cb264982f97f51d8ede02b7406b1166020ec8c9463350243c0d6f5b6b94aded1d3c43bad565c82164d2365cbff380302047c435bb500683066023100dcf015bba7d59fc1b91555c942df60d13f73a2812b3bd68ab062e1219b7ffd06e1a136744a5eda3dd8b4f02d85c75403023100e57b30b9a08d5cc4945e8ad50a9073428fab691818d04d83a201bdaf104fa43d11a6f4ae6e3c75fdfcde757f598981940302047c435bb50067306502304a6de14d1f9c9522b28abbb941fbb29f9a771563bb3b90e6cd9a4d1ea558e6789f93940dd40b51b1eed12c0d837ab9a80231008caefb7baafa4a904bb6ee1fa28f6adad4d73b3079017235586751ba117e952a81c832a9dfe039500ad7774b7c0343e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304c74ce6d87c7eb5b9da718828d65404b40f9ac4fce1df1e5069f06c78edbefef4c728085018c43aafacc91ae4bbb5eed023100df0ec5fefaebe14d31f885d556510626d119973a58ff0ecad8ae0aa89e95d8a484b95afa3ddf1e759b923c6755b578410302047c435bb50067306502301bec8d9ced2fc5d442d80173559d742984f69b8223f19aa355c53e10385e6e7bc9533f3edcdce7b9e3203d4540f3b3b30231009a9f3652bd9aaf8541df2607e9fbd8ef561ab032ddfda0c812bbc367ebfbf2b60750f51a6edcfbcc7f8d33c33a6ce8330302047c435bb50067306502302554fa61728cbf1eb6054c386986cfbd903325728e060e05429647adaaa2f4535f02a70dd6e3a368aa033ddb9d2b9469023100c17a10629e8028beb13fcf6addafb12da1b2999765168377588594c0572bc4174300da9aae269f9b0d624f9738aa05460302047c435bb500673065023100b4e77d507319c71b9b47bff73946a31e59e21e53c408cee9e569a10dec501a01cbaea6b647cbe947c40c5208ec9f8a430230402e6eb342315057ab4af81fc9ee26d9644a7de664f9f68d9b8efe9a2671e5fc6462af01efeaa032db4a21ca92ce77ae0302047c435bb500673065023070e969913fad0548b8081fecb7fb600b66d69e3df23abf965aaea1be2bebbfbb30353d7492ffa3abc34091dfdb2b66830231009253c4d16c0cdb8898573d98a5d641aaf9d4c48fa722a2a3c52dad2e49d99bd4ff9efff6c0d826d837d80d5cb50ac4480302047c435bb5006730650230222c69e7edf244a5f1daa70ccf4deaa405f96079e32768839f3e98164f2e14ee1889390379f1cd50148167f56c1b969a023100ff2037d8817b6634406cfa9df5c0cdf2756b773cc1aacbf09ddc308f58576df9bd5114186982b482b2ac4b472ae2cbbb0302047c435bb5006730650230252f70c52f607e2860485098b7c62542d6ff0466d32aa9fa63d6ccc52c4472777af6714c40c4600e1c111a633ed8c93a0231008dd7811f5ea66feab5be56220f42ab7c071a8f964e4334c5f2dd383a5ad34f8d5ca259ababf7e0d3cfe47dd0fa384ce60302047c435bb500673065023049740fc1286d0b8d1c85d880ffb501da93418b8c78438256d15abe586052832ae5a84538e53e3a6c80ccee341e78933a023100e4fcd17e0459c0efaee971654393be4cad343b43169671be1384a703d791f02b5f1e4e7a4a4fd711971a485909d1b8160302047c435bb5006830660231008345b051492a02a35c64c4a2d3c80fee3ac6849b27fbd327d46b3d7049f8258140e6007eb0e93d0b09ae9576a877856e023100da6c7474f3401b556a1bd1bea2c6ae7a15ef83cb1967c26da0f78d7b95f9d54bc2794cfcdb1970a14f2ae641fd25a7000302047c435bb50067306502300254b5842767852c524cf9203f4fd65ba708dd750da8633774592fd85d3481f9bf0e2a72fbc0166086cb2e9294791ecb023100aeb48a381986edbded61f22e1c6f3cf9f95663210b7105e0dcc756f3b9295cfd0bdbd9a93f505ffc0b06f757f07152830302047c435bb500663064023058d5ae15c6d631ee83356850f47abf21d1c75e3b6a1e24b3d1a152d95ce0a28484af3f56c80051c7e6f0621a63cb364b0230029c87afe14bdced3a5e552044d1fc25aecf1260fa204a55965da190158549158ebbaa1d6be8a52546de03650dba25950302047c435bb500673065023100a8a6a20a5b6ef43cd078e3319366709cb0f91ff1b5db88457e1045c50684be196948377c8b40d1ff33445f5d804e59f90230268e7ea507b2c0677d62538616e480205c2b0506e90f04ab71da46b0140b7e48539f52be47b96fc74e68cfd022b391710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023066fd611d56bb825ee61723a925a076bb4ed2e2737259ef289d2a0cd2fcd5f1aa2c29edb193a33e3aa6dd5f3fe9ab184a02306dbe4f8a10948a60701d816d575d293eea737a575842705314d915ff276f236e2f4d1bd50638132146b071c475f675100302047c435bb50067306502301bc74f3a7ee4b939085e6d7072f62555d91a8d629ecf3b5904f34728cc0ec13cce7164ee74ac7cc367ec513ed90c5c49023100dd2c4f2b2319c1a61a157fd211861a93468b94ce384aaafec3c2d72b09ca245ed425848cdeffdd569a0da6ecebd4b1b50302047c435bb500683066023100a175aaab3eec8ef86aaa61be9c904bbe5b9f86bda879a2ea5eebee7e17bd47b2b515604b84e2fa766a52b66ae8fe7f95023100c031c3aa4f5197669b828dc5c3a8b50dabd626134b155d70895f2d1df9e0033e5f113fd7d923f71128876328f717f2aa0302047c435bb500673065023100b4ab726553863b98a2f269e261aa1c2f8163b9b41995c57e4f2deffb23eedbff5a90763f10336bc3b1ed7b187fb8697902304400aed5671ce8451d8c30111957720ac36f00184bf529e0377e68965a25bd4939988f2531249600f9a0e024215313ab0302047c435bb50066306402301924b90c58e8fe32935b3c4d73620f340a95088a2dead8db2e7f08e687bda8d657aac0fa0b18bef4e2ac716bd0c7ba00023009320794cba968bb7bc1a5ade62bc9da7ef534c80cd5c2fe50d0789f783e946f38c6c67a193be9adc98f4c0435d607280302047c435bb500673065023100fcbd5f389e83232e006af4028ba402fd8c690fc86f2c5034ff1c540bde7bf64d2b20bcfb352a47d6c58e0fefe2eb52c502303884b5ba0e5b49bc42475f53aa416653e21594294206a74b86ed2bb776a129589042c309f92d1816bf1c21b49e20687b0302047c435bb50066306402305f1a519576c10cad822c44e7e166df13fe7748b25ad558b05211656ed7f48e3eca2f17addff0831c91912d916c357976023079ec81d166c3d8ebd3e82e92843ae382fe30e3e3c5fef0084dc5fdfdf3dcfda28e2412ccc7e0c95d18ed4598f6f4a2070302047c435bb50067306502301a46fa614f9baf06140eda4de9ac2a381f50b08368518a8a4cb11edb449cf39ac6f976d3df870d5cb992a6ef0f06a094023100bf051cba55ab76fea16e2936ae234130887f81d38c4bbcc1ec44cd8dcb43771daf36b985f031b224deb6d2b570188c7b0302047c435bb500673065023026b245be473a8fe8254b9da99058a1ced166e31bd37b1755c85f1f24a6f34ee5f155ea6ff0288c78e4300ea4f0d48982023100b2cb5545d2fbe21f812068e4ecf1504af0c79f69295a5cef04de467de9a69f1d19c6156e5b65660c0d4a87353a7f9fa00302047c435bb500683066023100a3ac19d8a61c5999210dcc56712701a078db30407911f004d146667e8be08ac969bed11e9527f0cce8011edce99dc80a02310087944ac2abf63665154dc8f15955bf2bcb903cf9720344c43a34700eb0b1c55e8ec65697ce86011ac7790a81fb7c9e950302047c435bb50066306402306ec37cc5d079541643ed5b992790f4b767dfcad56b59edabec27e35d3033e3456e24e7dd2c1682b4d63a0c5f6b9907b402301e18f5d7c293e232b4ca42701a1fdded72f7b6cfa6a691fd9c61183b5e829a70dcef83d195ddaec27affa69f08428ed30302047c435bb500683066023100c4cca9f1a06f6aec373a3580c34119ef56f9367e45f2598c4b79960789e524a25317eaa1d7b2ec1de763c4ba1af09fd4023100ddb93431b875b9ac11e7e78d9079538b82de5d79567fc45857dcbf8dbe71873f2edfc922ba3c35641719f65e19095c550302047c435bb5006630640230729612ba1e528ac9f3b2cae45bd506ecbc6716205a8df2874a2f0b4d3ea0e7caf74a75a1052c1eced36ee18cfb07fd01023048069f6bedfbac5e03c57d0fe175172e14001f29f4ae59b1dbb68e0faabf056616d58a1d12d3442d191c98a8dd1c8c8f0302047c435bb50066306402305284d95c5da006915523ce997c6ecfd32fa7fc625c9bed142bd9f43dd6416909de6352fdd22bd3e8bb490bde69a0ac860230484d00137c3bea48fd0356616693befe3433f783244436db391544cb764e16b889f68dd885ca29f7a640605b93c6ffd60302047c435bb500673065023100f0af9938357c4b31746acf26a51a0da26b43d9230c01aecd6cba23991e432968ce9f28595ba557227c6451f463567cab02307c88323848867bd839b791238c0a5a8031a9ef3ba40888a9936bad45b0b7aef2794be164e964993b9238e8f181005ef80302047c435bb50067306502304baee0694033618ad09b0e45f372a4cfcf27089bdd49f6d2ed208d96e7c2a9bdbdb3a9833b732edaac3503d340676798023100de2a88c9a798efc878205932e795e08705ea919fc784dc83a24343bdb36cbbdd9a0ade6aae3b5c3938d255bcb39567c80302047c435bb500673065023075938cc9e4076606b69e72f0d9b7a7c7bbfb7d63867b878b8ada619544a242fbe16c6c2b32d0ac30448cf1e9561f106e023100dd195ddcb0e3f7d16db332fbe2ca30f5135806c160eb344dbd4acd8dfca43439d0b008ae8f3870e4de30a31c1eac44800302047c435bb500663064023029b8b79b237b5789576ff05579235ac4cb4256b849438f7ffe8700bb9102bc99103eb251266302ab3ca540ec91b0a152023032aa7fcdff70c52c6ff630711b2b01ccc03d60b1216e33ab334aece4a05c55744dee991a310e40a9a8fc62417e5c22840302047c435bb500663064023019c768fb5ab3b3cd7c5991c7f204ab4a9076b5c3e6a3cead4312a730c450945b72b9372541fb93df1e8564dd0d62c3ad023015c8821efd736151757eed5a73b284daaebe9e5678f7c85a109a9e1a84de19731000266a032d50e96b1bc6017386a9b10302047c435bb5006630640230390831c9e07a9889c9691e689bdf1b8f48aba1dd672e994924fc3265707f9472317c34e913959285bf6568e579a73ee202307a2cddbdf8269f3bb46b4d203e2250f890f6d19df3da30b5f4ab3847c11152ab5eaa3e459344a07a1fc5c763d95b0c6e0302047c435bb50066306402307d466180b8d45be837f46e2e75248ecffe7f0d45f4607afbcc6090ef4ea9c165be840a235a2ff13c6f021be0de75612102300b4e246db221d9d1e3be75d08073d63cfd51231652463de8b04e18d2db557d8d65f87bf6803fcd3881be0fa1407617120302047c435bb500683066023100cf4544ba05203e69dfe4c527724fae274037140477070a57b867fc63ab45030a35c1c65103ec4bd4ddc520dba44bd5b3023100f8f6c61c71db4d32e067ba00459b1b5064cb29d8a83db452a54c54e6d4ce9bb789565f780ba44bfa63353414fc6453d90302047c435bb5006730650231009292868bccf4074fc14b61085f7614d73f00105c6b074d290188fea3ef13c026cc9c79f472c4ebf65f51e9c097b691a2023060f26d676613f617c7f0e8a91decf0230558117ddcc018edaccca52b488d3f309c401387af66f6b2a225cc6e383538e00302047c435bb5006630640230432f7220f892b26e9f61f22717655fdca08eb3bf5b8be4f63728feae7614c44e7ebb9cd770711e7732c566a6757a2691023062e49a88b85de582604fd7e611610885d5a2c0e17d8076e880f8c595ec800e5179e0468f48f735532d582566043d88e00302047c435bb50067306502300e9f3797d944a341d0d50c3e83cd83f32507fa37aa0f3eff7c642e483055d45d3c03c444373d93d7cfd12260d875b96a023100dc2c79b1b280a3bf83763c2b244b4b18c32c18155ff581642206b81b618dabf7cdbe63200155535f63c02858d22793330302047c435bb500673065023060cf22551891004e6e26b0185ece65b2e8303a60b060638e82f78a3091de762f8f284d12eba40d627929cb6010215823023100ca8190abc514853dba3b6c08ef9ac50196a71844dfcce8aa71f0767866c057adeec22d37332f1b767a7067acbc6cb4280302047c435bb50066306402302aac42fc763f35240eceaa291c2de1fca6b2d146bf2318ce249723f89706554c9d7f810923d14185f221d720229fab80023011afd245110adb449a376ac76339152c713154259e0621e518bec5cb7bf51c5b650613d61520ba36346d3399c1e684f60302047c435bb5006630640230509160c4bf0fa780bceb50735ad40dc8e6794a1051d82cc502416715b0b85c1a3dc5c238f81d53e48dd7aaccda1146d702305d35a4275d108df719bf53563f3a5fe4fa4fbad23006b318a2314514a952690d42c7510d7a78d1f8d8d7cb1658e9a0040302047c435bb500683066023100bdbd1d3ba350907255120b998ab46946b8d9aa2a74522b6e708a3dd125bf726f21f7a3bde20deec1f9d6551b9da9ac8c023100b01de8a322264dea769e4d7cebd9d69e90e0753d279de9972f56efe85b0ae65b793fdf49e974bd1470c189bac7ec83bf0302047c435bb500673065023100b3565eeb2cf86bd0763745c40f10e35d827f2d3566f41bc20206e4e4d8f15abc21e21cf4eb3d3e0363ef2173fb38ac46023056a7090a7671d2541ac3633e56bb10015d52deb8e52a97ebe2f8ee5470be9423dae39b6616bb53194cb6771f722060f20302047c435bb500683066023100867befb0bed51bde96e4bfeebc251933f82b91fc21e770473ae303243cb3e6ecebc964c129adcb9818ccbe6006e0b58f023100806cea5090eddc29c680647187595a81683f6d7531bcdf7b796696a229eec0ca29670d5ea000285150246aca3bc6fd950302047c435bb50067306502306dda390fe7ade84888ce397c7819b78bc7437c2099462a394727ad00fccc5eacb509b12cb71bb05021a0d6ce69f38718023100ca34a11f93449913c6744ca973b13d7d8de456686e0a154774cc9b2a8b21e4f92ddc464c76bb07228db54b39c33df7110302047c435bb500663064023002ca3f50308e526f7e576d7935432a2a55c6645e3a91f6833283304287005afdbf289b197b4a13a34a9e973576821bcf023060551c6faabc84737ed779d64db61f73e1d40b3c0003efab330f7d4ddbac24cacb2a18063d8c4df3b3f241b190cc7d5b0302047c435bb500673065023100b7c83acfb0640f15fd7a7e4157a28405634f4709d32a91ca2f66472b265e8bbb86d03c4e95cd846324c13affa56b19200230470c25645f73c91785173ade307dd732d86e04ec43a2afc0857df76604c0b99dcef43bf69f2152ebe09fc58ebf5d3ad30302047c435bb500683066023100cfbf9e089715356a97a214bcfb61fa2c54c3533294b7f8933356d2ead643666b5358b9b9e229edf502e488e7403ac27302310087d337ff2206665e1a4aabe0fc0617cf3dc47580844cc31a51c19e10b4f1afb807810753038dc221c5aa167e8c949d850302047c435bb500673065023100ea7439346ac16133870b69416aedff148b20e22edb52439aa7b3c5e7bd30d9728eef2495f9135af6cb15a7b1f80153c802301b40913c6b082655a2817ce4554237e951506c757917301cd46cd70c70c058d9c274659c164a2012ac5692c8d4efa74c0302047c435bb500673065023100d74e82a2279e65448b83ff2cd2ec41596b5380ab4d3c058caa6517050b132d32ae604e70a198bf98a18af904fb6d1d4b023026c7bf0264ef786f078f07e16210d904b0d74c95bce6c9bbdc812c42b066d8245b25add2169424c91f96e4c27d9c95780302047c435bb50067306502307b75f2469b04938798c849ec0c11d4f71768b740a16752d79ca1d23138f65c38f293a75162e0b9a47af0335436979c380231008470a976f124c5ef9b312d28f11cf81670a72f1485de1b6dfa5362bd71203e0ff8b4664f3ccadba0f9ca86c11e0a64950302047c435bb500673065023069ea2c4420377e9b2bfcf375bb2c29a5fe3d9f62644503760ce55f0a0769e3d989a743d40cdf9798ecdc3c8dbc2c5c8a0231008b8cdb34fef7d0d2b6a4b725f942b97342348cf53e69c40f84b2c986333051fdf5b74c8f4ef5fc69a3bcbc8edbdbc2220302047c435bb5006730650231009e4ca91b76ac5f325b37f05d3b9910997bf49763add19d5357edf087194ce918da8720b2da29ca37ad8ae0e70cb84aa302303873fecede8acbc87d8eda24ab2da406019ae56523fc2fbc1ca5b82cd48b9883bd19ed6236e67510ffae0ed6576bfa210302047c435bb500673065023100cf26f7ab9f786268d384b7ff3bc405aa15059293f85b358fec63c37da3b147d3707f8c3eff40e796d07b9c18f1f965bb0230276e5e54ceb5d1ee12d2e4fb97a7bfa2c2b9e39b45e2846af59913e9eb287a9e9111893e833a1efb5e1893dec1989eba0302047c435bb500683066023100aaefc07854ff2165c15cccd0a94f46b376f04183d7ff0232230f54fdc97e4ed13c18ebd863c4a1da46f2be9e87d0916402310080369d69ae4d2749b876fcd52d70ac4139fb87eb0f132a65bae82e20d00fc39a516bd90c6d79952c07e64f7b4e70df500302047c435bb500683066023100dee115e6b090cf0a0591e604021703488e93ff3e6dbedfe110adb0a4d0c6003128806035f2f7f5a60a9b53c9db249a980231008805199dd45854cfe2929401c925f3cc7e22371ad6e998878ff665c52bb65a256cfaffed87b4740f16bd4f938b9e70e20302047c435bb500673065023002ee2f66a85b044f7d8c4213e290a09d0fb950a94c46fcc4e6de41cc8ce0dac850dc7bd06ff0c3719820abcc126f304e02310086bb3dc4edeaf4279e6d2192f8f31549f7ca49d2f5dcc73dd410638057bf72d803994079b6aa88462fc59fe7f18beac00302047c435bb50067306502300385d903feaa1b9382dab1ab79e6fd8fa452164d8c0b50e59022e795e0c7baed5d575f5c56ac2ede96d53e57c5fd44a2023100b09418b38a92c32928a054707a3289e616a25310d468ff641f9c9fa42dae92273342034942b60dd3970b6de9f7fcd8e60302047c435bb50068306602310083132d412fc6030d3cbdc4323041e1d5944918b7878d2aff1eb7c4fba2527e1fc5bebf91c25e57b8c26ac369da923ad7023100e852bc1c20f280febabc2cce273a6520b321cdad2238324bb8cf6afc415108fc770afcee4007783467d4878c371eccc50302047c435bb500663064023057e53dc9dd50f1ba9ff712540808842d7fb67279f963c663b65f8c3df0730ff7e98b103411ac66ce13abc88ee4f4193602300f1c4c0c501430247d2081cca1332e9b734f083c3b6ab520a8fd2590758b712231c37e58248d47cff80b9ad44dede6ab0302047c435bb50066306402303a56250fd019a30a3413db2f73d868392d7a224c6bf8998a1f32ee9173db52b198fb075ca1f9e540bd6fde7a35de052f02303d2aa40948b237267e815dd8d86a6a5bd8e8e9223bead1b862b00655400d1c4d066b09ff7fdbe6499db677beaf6582f70302047c435bb500673065023013a01bef4e7b1bc7b85fa1702c908fff27e9225220b5eaf2e62e48081db2b974ccabf7f7fc654f9436e4fb3b9cd0a1df023100b8edddd206d0dbd97b4e9f313c80d76dd4e706ca2bf6c2e2bd3c8ed1eea3e1d632178abef16b90d07b8cfcfd6835348b0302047c435bb500683066023100abd69ea72f1ee411ca6629535c1db81387c7b69f64339972c51dd46f0f7013c4fd14ef8ddd5c8f25c249d773584570c5023100c11539d90f8b1ad174f37986cb4f0e26bca054fa15fb09d90618519ec5296c28dd2daf9a5336508ceea3ca6074ec6afc0302047c435bb50066306402303f2c214c534abc6f1155023c1c7f3db4613caca979996a526c552d90ff67514ba159b25dac669511eb3defedc86e36c702305ebb15ec11f81475007451b21b7281fdff7ed9678573b04bccbcd4b45e035124d85a6451d63e6e212d32c46a50ac8cdc0302047c435bb500683066023100fe6ebfa46e971eb12e48f8160873163e85ecabfe7d2a8b978ee789d4154e80d4fe551b38b7cec73193d26968fc98f7d2023100db63a9940a003bed1b8c66530738385d92d226dea53de7a8f59ee818f4c601bf1f3eb6b65aa6a9be28bd97d9516336180302047c435bb500673065023100f7f0797f863286858f59d91672d76b468b79461c1cd022f26cc670657eb89f08ba953a165ed08ef3335e79300e791d0102300fe709faee18a1929972fd1f6fdeb0564eeb15db813a551bce5976808d49a8a33bb582fe474b64980bbf237341f312b00302047c435bb500683066023100a65d93234d2efa87e34415ce98d624535dedd392bf454165b62755788fcad995d8459be15c436e64259ef9eb64132b740231008db5e499949f853a64816f2ac267fb522859d7aff92db36bcda8064ab1443d4e46049ee4450912ef9642e557c08693010302047c435bb500673065023100f3d5c8673b09cc4360da8aa1287770476159c5ee128be49aa5ab8a531b64511b126eb638eb9e09942d95fab40094bd7e02300cb546e904bae85c4d10f6ea58e876eb7233e749d0365e9bedc93d6276c5e8842f7553b6d426e1bd74c9097adc025ceb0302047c435bb50066306402302080ce36c82fb7952ce4028e9146afb59ef74aa17743fb22a568e3d9c840818d068f126a9f2124fa8743bc1e08b7bcdf02307c14d614dc10f510a68cb0c73f57f33777c648b018b84d2ef8042338780890f6f9eb2fb44c75b04c6a48a2aa9f80aa810302047c435bb50067306502300b020f9e95a1f462eaa6f1cd638e9392c5eb21dfa5c9596ccddd15d1621788d0ec9b903aecce14ce97c7347df32d2822023100ba5c5102e69a9f81f085bb55ef707a504e3348f8254489643d86ad4ccd642859360585e73bc397ea9a4bf304e7485f300302047c435bb5006730650230321559615fc0e80563f93035f3e5bbe5b4ae7839b01e3a0916027e181ebe59672a86b5ee58ef0dc14021280eca2d0a53023100e13fdaf7bfda6d053875d2e372894b29091c61cf5e9f86ce33a29223c9e3a9538d7e9f3256e95a78128ace8bc4248f710302047c435bb50066306402301ae4aeb25872e81c811a0ba255976d00131a19d341cb55723c6ce907c9ba71898941b916c01d419bd04905933086a86c02303c6b4e438aa4c545963f0c662cc3a31c11fb2e8bf989e9092be25fd639e478cdb1707fb46a7fd8f75051d110113c627d0302047c435bb50067306502301db9aa3e7c30bbb2a9c370719a605a2aea7d22fe14be4f036790dc050dffc3719281ceb548606cf20fc81b342a0444dc02310084692b797736694eab866f020cee83468d60e38f7ec449d8a665a9dd3d6f3d3341692c7cc1ae4e914249f30996b1aea50302047c435bb500683066023100e4a19bdb344d9e0ae578cd1498db98d5a71164711b5f42da4fbaab0388c8f19fc18fdcbfdbd6480bac5080f34d08065402310084db90e42af8cf87c5e364a720679074d7ac1eb93a5409bcccb57116518efeb4fcb0e23faafd67642412ebb92e96481f0302047c435bb5006730650230591ab59cb5d528cb78600d9732173bba94a19d872046b5f45e116f5c6516cbb93e20bae26b3ab701ac978a0cc6c9232a023100c1b63e4031985450fd3ce8dcc5417b2ec3bb7d9c0b07a7f09981759207ab857e97123efd1d062963b6e1822e032b8e2f0302047c435bb500673065023100c209cbcc445253199dada44025a5baa7ea0cbc8103a19b7012bdf1cdc9f2369b70e89979d5e9215062ed13b43e33a1ac02302c45aefbfac8f61cf13dc79a4df8744ed18313b605706228b14f79c358ef3019a90713595f8d4d7d23a05444b8b6a5f10302047c435bb500663064023054a141f25822c6a6ee524c35b33d1a034835d56a747c3bbc4a137cacb50eb0f99e2bd8e0ce18fd9f1f9e8019ceaf92c8023051954065a84c282f5e518630a9594defe5e8e3bd0de91108aa3ede6a9d395caae1001bc7b802326e4a24fc8f4375d5b70302047c435bb5006830660231008119a310afc4fcad294dc750cd4eb9e8e7e4dd99c159078ed66ec7f3886a86101dfa718024e7dd2e5c25658cabcd3625023100ba156462940505c9943cd93a64bdf3eaede6c491b8dbb55425d7e9f385dfcdc036c23c3fb4e134df5a0f547816402c400302047c435bb500683066023100d15dc27374cf334b9c6c090e2e87f9d2bfd7e90a38021909c1c80fd8cdc30d11f0965bde26cdc4fbd04dc0b905fef88b023100f55fda7162a11da648d26d7ef44bdd8030dca4bf3df574429e471baa7666fec5efaff49e6b415ac4ff26cb7510e916990302047c435bb5006730650230312c7a4d2f20df06dad63a9f8e344f439b1c35ba19ab1c3c8825970ece352b5e5a4af1647345aebc54938dd8d4a720f5023100ce2faa16cd957465ca924fd723e69ee8c1c3d430e795b0782a8a6e1f7eb50868b968c8854da53ab4bb02e51eb58d714f0302047c435bb500683066023100f6970d23168559289cfc86c032b925c8b742ce37f0fbd5f05993fb2e338d66f698e5fd6ce8fd8e02be4026543f3a930d0231008c293177b0168140749d010d9a0fa7ac2e53443012cad9cbaa7a853df4626affc03d340672f8836e196018255d32c2ef0302047c435bb500663064023054ed06248562478620a5d21d2661f018ac4d237f833d342e38340cd852be10e1106f8324b4e532b4b7988a7810e3ee7b0230042015056185eb839297e2364c80b7a571620379064c4546a254c088e9f2ad470c1a03ddc35ecee6d86456f81dbde45d0302047c435bb500683066023100c6878256d4349ad03fd8d443e6b7a6dc7962555b25fe9ea542335afd3d14ccb76f85b9b6003ce953f4522c9c066b581e0231008b54ded4be30943e2b3aac22f50fa66578e615f7bcd3fc29c69be4e1c04386b6938f9e253e129831388efac9c1a1e40c0302047c435bb500673065023100ed9f12bf7942bb0dd5c7902ed2aa40bede9d48f9a5fb7b70b4412c1ad56feecfe68a1b9598480a8da3894e2e81ed7e3d023001f5db093f25e63d8964bede771b097165be307e7896a52235f3e3f001bfd378552295ef606407c77c4a6a3ce9fa23d20302047c435bb50067306502302aad4890121726f0a9f024c09d1373d0dddc6c44d27ef6c28aa604a6315993ef5432b593519b1c7dc3e552856f31d07b023100eaa19738a1c5c451c173a5592f33089a94434f9b200eedc8c0043d51a58872cb9c33abdbe151c49997fca7ea2f9522c70302047c435bb500673065023040ef624453ef60bf68abef18493621e1bd83feb4e35f1b1902e9f6009e05c7d18ab0ddded577f08c4ebda7c81201c77f02310096d26f5e0fc388dee5c43c9596c344bdc7bfe952043665bc9787909bca36a728bfe2c982284d8b7817d4a68f992852fd0302047c435bb500673065023100c8297ab115ffbdab620b281569a8aa08096f8adf4311db5e5983e780a584c6dce1c0310e7b6b6da5083e4eac77097f24023004bb361dea76c31f791c2ff382a4e24175f3e5870f0338d61dbf18d203a904279b572cd793a82ec5efd0f6b92872ae390302047c435bb500683066023100a6e79a983ba6fe8b16f151eee3f8ae59d7ebb2e2abc0e2f55f54a3c3f7e674fc24fc7d9c5851c963a78aee6dc5f588d502310095e4163f87dfa4784744b82a36d7303f6d01bf7d1e8e4e87377a957e7101f23a48028f2a5e7cc8c1a54aa05b5e9fc9c20302047c435bb500683066023100ca6f31cbc52a7fb7617cc2825601b431f6b695c4d0b20f851e5a7d7ea4dcc2c25805d7a83243cab4d2ad8e98fdbefb3d023100f3658a518d78a9959c3217c98f06f699b03c200c89187848647c3b1389c6194e053469b7236cdf0b566f9553dba3e5350302047c435bb500683066023100c26c65aab6a8a662dcc4dec4018dab167211bcbf43b46d459db3e56e910b77b8334431ca43d6a098cdbbcc2b517b3045023100fd6a708ac100560f7e2b3b3697f28386e385a3e9f34b5a541976f8e1b64401ff29dfc0dd8bd9754f38f4e2a0bc52f4400302047c435bb500683066023100d7b24ec84703369f830776dbae521327594645df4e789cce7aab18c6c6a41675f20e17066653f9932317dcce1635f7e3023100fcbcae7888ee640425b2a14360c279e70613f2702f827b97f5a668464be45e6cc98eac57709d5b95b32f9e5fd4d1a5e70302047c435bb500683066023100e8cabfe7fe056e10fccc373569c5a4d68c1cbcc2f41183e87a3693a2e699b1d2cd39feb549a5be6556c0efa87c44ae58023100f3310b69c4dff72ec7140900dd18da3ae07d73c720963f03305a1a99be145e09ee55ac3ef5274761d7288d1ac07d1bbb0302047c435bb500683066023100fc4d2f9b13a885bab1b5209fa0c91a6e760ca1d3d353738f2b55008a948ead2ba7d621d3764aaa5c0143f7c83aded5a302310093554e2f6133fe2c75b955de904bc1b56171e6f9588376ac3eb778d696076b6334bde4a0fbc094b48c09ba3297ab5ea40302047c435bb5006730650230298e6653e958ef81b730468df119b5cd574af5b263faa55ef52195eaf866415018ef1c5b64c735cbd0c669dd73d35a4902310088ca5ddf52514592ecb2b181dd0c9426d3159ea1651c4132a748dced3a88fad7e49202fda6b53347b890367b3d14bbe70302047c435bb50066306402304a19a384910b0d0a978d42f9bc15a871f87a66de893ca0448f5f8f1391c7b3ad33aa917d6a31eac921bbe7c711852f50023052f47917b59573edf0251d7a8e30806c938a30fa39993350c7b08a3f1a7e883b33222653427fb382301ab43c343f7a8c0302047c435bb50067306502301639575c534073efa1804ca79dc079f327d3211b673d976a14238960aff53f91933e269aa6cc79b0e9ce0be0f0e6f31e023100fd2d69e964b0f534a813f9fbcde5d4db157dc677a2df8f8c5fecf999d3ac4ddb669032a428bdf830f2c001a63f88a7150302047c435bb500673065023048b7caa69886d0d4f7182fc9e7a191e882603445e89bf0291fb4ee2523ac997b6291202a29d3e7a159d19eb40ea7d79c023100c16d44f8468b58c546971e7f87ad5f4f153678ec66f66b12e83d55a71ac3254290b8534caee01ee68421fdbcd64001960302047c435bb50066306402306df2eeae4f46bae2492386992eedc392e1bef1f7d86014b9c4d9508640262ad86bc009a547163ff187821c4f5caf373f0230282c7a94551826e555510425b0441e750c5347db544da88a04151074fc3e40301c5665d4642d432a2fb8f51ff0d78fb50302047c435bb500673065023100a78ea6dee93c35cbbf1b28c7e06a03a3831fc9ef779bf3257460097e12b35b982f76cfa7946367efdd68d7472d3b9f8902306bf68185101bc64a301d14c8bfe0224cd2d0f8d4d9469db6cf1b705fa35368a994460ddffa0c81fc7de7f3cf5fb984e00302047c435bb50068306602310088d554d4bef412ab7a9182a9be79bf09ef9000de8d27a2eb03c18e2bce2673d16e377dae75cb28a899406fe9971b7687023100d7e127e38d105ed02b77464124b908513c98f7d7c2510c95b9aa072ba1cc539b924843b0f920d63fe5e669246fa4f2320302047c435bb50068306602310082c812bf5e0fd642bc65e0cf17c572a24d42cfdf621acb0aee4a17efc6d6559dd9ec475552ecf1b40e5a5567728839d0023100c11a06d071238a077881a2a5e108fb836a9d152974b135370f13bc49838ed4230d17ef07f4f3feb3b6a8b5ec175784880302047c435bb500673065023100dcff18648c68352fcd75d8b3030aba196f20fb4a37154d70aa8ea60d0a4aa3a14c285e40741f39a5513944eae303eeea023039f5bb998b40b0d921fcf4980a93474dfbed9ca0000ac08896154e03495c0a35f1294af7eec9df673f9ea8241c092b4d0302047c435bb500673065023100ab729d7347874cb865cc5c2515db23e946d2cc9c9847f7a557b42add7a318a48a5ba091b6546e9aea2b17f419f37614c023048219451ccbc22863a0829caa24455d0491b521309b3ced343e3247786c471f8f7bb45c5870a2f15e33d0323831c3d450302047c435bb50066306402300089345e6931a0bc5c12d4eab9a520a90b202b41a57aeb2b7050cdc0515b385c68b1b54c846dca3378e13c66c7902fc5023078943859151a6f785ec3405eed60fe3ccbd83dd74d61a4568377996326cd042a66799dd2c6bf647085fb82f6d50eaabe0302047c435bb500673065023052f18c98d194b49010412cb7bbe39379822f9fad5c7c2dbd7b5e0970d51ea08009ec2288bb86354827df5c33d23fc45a023100c84feceb67ce827f29e49c00c8e9f45aec9140669c78192e9713b09b93d25af8845d82d39e3328a8e98405b6f71315fa0302047c435bb5006630640230363f90a685d5e332ed2ddbd3908f171d85dc36f4ab46c65206bd3c9a09b46ab200aad380bbb8dbd912a138395b5aff05023077c4229b8b84a65fa91fb4990f466a084ebe8a61ec554637b636dd9caabe991edd9d7342575dcaec788d3601443885980302047c435bb500673065023100ff218dfc27806d505be9f0c7d747a41d8c5c5690aae6413ce08ca709fc2fa5fb624865ceabcb78148b8e26700a508f3402305f7e9e3effdafb5b06504fb2dba816fb5b7bbe2a1deab8b5c53e27fc7e78630360e82bc95f42f2bb887d2ed05fdcd9520302047c435bb500683066023100ed790c3af128b4d778b228b14a7e602cd55dd4911dd5ae45699f86351471880f42a1acd98519eba2c1fb04f0ff18f47d023100a917339e857a046e345d9a55a8815b9ed32995af14d00d27345d248def2af42d91d7b2a731cc6dcf5959d3bd1edd8b4d0302047c435bb500683066023100a2d5b55d34cc71bb726c607dfa3a00073b500f4a6120e5a3bb44933fcd2132f555baa7cafa2ea80b03839346a727f8fa023100ad98f88c63e6489d5e70d40df0cf97b9cc97eafecc549e41f8eb68312d1f70b3594ff133e11d8d02c533e66e595ebb4e0302047c435bb500663064023050d7aa348ca4e964bdb82467bf22de6cdfff3922aafc90f519ad3cfbf2c90170709afc6991b60b91226544ee19308faf02305b234aa0f7616d61fab9c86f845082e6d7af8747eefc1eb0b6e5348eb3752ec6c8abfce07f6e2aea8d582ab581e3af150302047c435bb50066306402303ef38e22fc5be0a2d2fe458526e11850a8caa9fede9d1f0b6ba2d179f516f6ef2641f00565d8ff58644fa079239d530802307541ccbeb1f42efe797109d7c361deddcee8800854800db0621d86beace7f0270c6699d20d6caef0fa760c5a7cb88a740302047c435bb500673065023100b8855850a29dcbf0f8da41973f47ad7538a13683e303fece867184061ad4791c89b94ba34c247fe0aa5a9c20fa23dd6202300e27c5f8633a2613b55326672af934fbd89e9d4b647c95628d4fcdf3a7332c8e5abc99b2868ce9c61d193cd37ce273630302047c435bb500673065023100aa05a9b5f56708adf03c0d88cab1201498515a8432c3f24581ca484fd25115c4348897bb597b1c2f3ab4ebef640c7a5c02307843c9f45f304aed61064e0667ec62aaec6bb3e61e076a52b5a84a93af498b09e4ee3f38ad2c49be2b9458acd993c1d50302047c435bb500673065023021169c10ea5240c3625da0917160bc8829dedf26694f0df88ecba6bb65e0dead93c72bcf32b99ae46173e094808ee65b023100bfa51c5b396538bf4dcc3c436fe1f7ef57d573ec391f66e02f9741db7375ff4a5b2a0fb809d187215660d0f7328845460302047c435bb500673065023100b822e26c08f307256bafd475f6f30e0edfd6e9c6537490972a14be593c3d8dbd713c31e7ee435ffbe7aa792e077c934202304db60ca67a2f4227f3683c16bd8b65990edce2dc7613bc1dce1211c09e38c4c0fcd25a16a6085c8b7ad705e6eb4a965c0302047c435bb5006630640230702e8357a0e378a216f6e7e3a3ed53d204dab199252cc26852c84455516eb3e73e9546131546537e0c461b32c97622b902302253e7b1514c3333b304272ea42b06edf2e5594a6c40c3f0d8bfaaa751c8ff65e2a00d0b2e095fa7b03a67a7c846cbf30302047c435bb50066306402303a8977de00b84eded90091c42c0cf4e42a4e8bc83697198fc3270ff8f178fcf04412a206dec8a446b3e5d31c28fed69102307cccfca5a452ba084b5a2a0f4d6b5ebc0183b48948797d9bb436ff6de14063f30cb5b994e1bebddb4e2842f9c024161b0302047c435bb500683066023100d7ac3a9dfb5484da7b7258e878d067e9aa67df5507e94e793df0f1d04b7673e8eb735f553f2b08d0760ff3e095dff5490231008fca5ed8dcf35a88db74bac82dc98a224a263f74a355080db7e845a784081ec64fa7e85208234605c5feeaabc9abaaca0302047c435bb500673065023100e11eb707c9013070c86ed49e41cc16fa2b279454d2ca76e1716c8f6e93cd22c20fc002cb16e6ba999a74db88feb6811102303be2c88db925951b2d9f23e4e219bf5370f218e44e705dae2ca75abfd583fb3728da2e03701d174c54ecf3009c8083280302047c435bb500673065023100d18378f17000df1987d020dc6a1ee51532c1728cccf69b49a026a3145084ae7c6b4d23199fcfdecc4e35198d062d5f0402301546dd921383afbe59878f69f0774ac28e39b06c835ecbf997acd49af5d760623ddd64d6821ca9dfca63044a1b3d052f0302047c435bb500673065023022596e69bf142098fa8c4b348f8d50519db109fcd6670399fd706093977011c2102c87898625ee64db7318984e391099023100b78ef837f59ad64b0ec7c0622bd81c7a29e821e4fae44a5a88ecc0b376a4679f576cf12e0faab1dbb5501ed76135f9730302047c435bb50066306402302ef957f214d9bc576295e79c4d4a4cbb996e65b57c6efa764c09cd9ebc873a7896cdc0b0a5db02a9ab086e0f49c3d5a202304b2c070b44bea1ad7d700cc9c957e0349a310dc00941ab8915f5f1b6229fac8b28e2ea0df6af7d25b57f322c3cdebb360302047c435bb500673065023100e9c6a1ccfa1ed31483b9ce628fb31a965d6b7591dd578f50ba88033607b876a3af5ca6d838c89dc30afab0aa614eb6d4023000ade541e99ca77a3238fb182bfba74d8201ac92de3fba2169b2efa7a1ec51b9d7e2c4398f813c426ba87b84b139e5500302047c435bb50068306602310089524df8f3ea657592577a99ced75b2510908b8433a5e58648d070975b81bb9cdb1b8ffe9b807846b6c56d3d9c34e9ad023100f51e5692f4480b11de827b434de0630bb42523ca15d5d50f869a88ceaae64db72f012a93bd45c7d468c35214d9a69e0b0302047c435bb500673065023039adad9418bb22a60a9023ef5d7a71427d5522108fd2865e1efcb3e88b3c58931ea7057c7a19efc96f158d6cf073c92e023100f6187dc4210f2cbe019188969fb4bcf0e09f07db2cfe9542505eb188e84aecd156c2b9ca81d2d2542855ffce2a2b95ed0302047c435bb5006630640230599f6269c8abf99a1872335c0b8ba1a181adb03f91cf735d55fdb52ebb60d28ecb9dcf7123e7bf9d2b4f4066bd949ca202303901b018ca5d989161decd9740a66add653aac84b46b4bb2f2a1733ce93e1f322ad0e0caf90ec5ee2cc63cd69c5d7e380302047c435bb50066306402304da897328e14c88549670b14a00717a652caf655e4d04ede44cd63a11629497dbe39f91aa2aa3762b92845f850ae008802303072009f031d7db9e74e0efb15b1a9e49e883d2c1b089fbd7c2f524fb286ac22eca678601af2b4b20962c9864f2778e60302047c435bb50066306402303b5959220acacd1186bfd043dbdea0dff6152358df77a1e4c09b4960992c0443cc6fd9d73f365bbd37988346333f6bfd023017a1cec9fd81d4efc0923274205618c7e7b64edd4a476ff7fc675aea0c3dc75279cb46ca566c85cba446cd7536f8dccc0302047c435bb500683066023100b45018a34f462c4d03edb27c0d767aa51ed45ed6026ebffe1467733c8302cc7a2a1e8764106c8bc95d71120270b2ba55023100fb69c913dc3936a2ed8c9b71d12b8f9e604bdcbf7e243c67c537e29c8d30e7b71b4fdf5c49a89c7cccf3121854f016e40302047c435bb50066306402307c98e7d0a04c21fd3579abd858fb2aa869a94677d6d2e7efcfc9765ec14d8f63d64f54a0456caf7467f8ab37de241e270230735da2d0ed7fc232878f347a96e171c575aa2b7f3cfa1e6028af84ed72536bcf54c5befe572b6cc333ea720ed229376f0302047c435bb50067306502303b6512b8ead6f1b20cda9aa6110a5e1d5bd620e1c2d873243aa8848215569bcc6241d16566383bf028caaf73dae36c61023100df16bd1d7c8122ce4bf9be5a8d98e73f3aa32e9b3175bc7a45cf94e92b2740afe0a66922464c4c38047cfa4bf9dd71c80302047c435bb500663064023060a31bc678bd654b2136c8468d96e7ef25f5cc0cdfe0bee7f711d7a4372f5510e4886f2c9bfbd93bf0fb8e35ef7539e10230757d493dc37d4fdd8c6edef416bc42d63ba5722d64d0a7f7cf92fd0f5336c5d6cad72bdb900f917d46e08812302500380302047c435bb500683066023100eaf6ffb59c18e9e66399a6f3bf4bc18886dee8c38ea5194ac271bc0ca99b0c1f95c3e65c0d3d723ede122cc2227c95cb023100fb2ee2030c112e6460b52aabee7b0c407e818d299d40b32e77bedb68756ba3bb368681bca55dfab1ed6ce0f58ecb02ef0302047c435bb500673065023100d29a4e91d65d306157678d94f5afc1762151467b31b1d7d4129a212c361da76d7830bcd290f8968a39b49848030a5a3f023069e406c4f2d5279ec6c425d39785e1277e327d2a965c0bb8cfd0650bad090d6c3785f150b28c8071091149592195bdfb0302047c435bb500673065023100fadd029f3af8aedf310e282ff42c96e5a5ec54abbf126aceb41b4a50b2b66427c2a365de7c0e257e98155919f91c8ba502301d9d1a296e45398a821b8b5272b41207aea4f8f704f137b1821c371a0e214b6099efa9a6878eea061f98971a6c9addea0302047c435bb500673065023100efba773a9f36b82b00f4990646f49f18e9668fa1235be36122be16358bef1f0477f1aa880c077569bc8bb17bdfeec07c0230327cc5ec10c6c54ad01ba4112297faa8c094384728e418c062470da160c59ce5c67294404fe6523d917e4ece0c2285ed0302047c435bb50067306502307406ed042143778ac54b38f1b218d3ec17b1027a4319e21b9d8bac0f2cc0d5ceb3e1bbd7d088b020bd49cf6d958ec9b4023100f8b2af17422c19ecf632078f102a59e189fa3186eef541cdb9d49aa3789334bfb82e348c8da4d36f60d0c0fbb2d8a2190302047c435bb500673065023100bf43ee5edff20cd911a23ec6053912a2f20a9c88f99e919bf18296db27cc9a2a92f06eadec9cf3a59b8a214a333861860230232bc4052f2d0fae751a6f3bde9b35e97e2d8a2867207b870563144d947823f3303fe4699abe798cebef4b76574986c10302047c435bb500673065023100e00c8425cb429dda434bacb585b4030843608f21a6e2ed1ac7e6355ce506d76b08a0b785499bbbe2c40919790d910110023013c706613ab6a1b39d7f589fb8f4cdd9477de77b095d0855f2303736fa35bdbf0c18678740949670548e9126910d65690302047c435bb500673065023100b4a0cc3da413e7300abe492cfd6519b56a1855b8251c0e78e9eebb5e367505495735df498938b777e5584ed9d25e3743023067bff6d83237746c3ba07b469ab62e9d3c08ac5a79b4c30862c32e8da798d25143793a735595f79fed45f941fddeae330302047c435bb50066306402302541f7ed07de73080eb3da26ba18c02bb52453ba68757e845f6c582a0552226b432f1d8733bfaa503aadfc61f632ac9d02303901e6d8824b9bd0064ec98110f370b611561d7af204922c3a4783413ffdfb0c1fb5b2420ca02fb4f5cde36cac8eafb50302047c435bb50066306402300830e892ba7ba4af75ae7e09357a414eca4d661e67f1660615015dd10b5971f3f4b6dec1776f552624b7619328e0c9b802300a12322fa3cb31e3c5ad43008cf1e3103b05232f8c409841f07ba0e2d5ecf29d81ebe0503a4c532e6fa64d2a4d2bb9360302047c435bb500663064023040de5986bf731da0b3fdfde1fd41e55d4f4b36bfa3aafd7f228fa6db7786b8896395092a4cab7241f3d19e5142b4388802303aac5afbde5cf330f89dc8db19a8d4646941553fc59ab0e793636018e23217acb53a114252e47d66522e3873f7c6c6920302047c435bb500673065023039829bc7ad695f20b5f1b51b5a84bea0f7cf412f4025a1d4855bf91ca64a682a05bc78038dfb3c8b4b231f553528a824023100e329536496d865e9259b2e83ea8df1688d9a7f94e90bae240d2b156e62ea8f6884c8c41aa5c5c84df82bdd60f29529c90302047c435bb500663064023068a3b70386e8893d53ef1e1b2ac4db7478b8b9f6b8f698614203e0da0271d0b5a2d35746599455b5805800585aa2e4ed023028eca9ad00db696c458971c1de1d0823ebdc8f18d7f8d4bd45b622596c167b51cff858ef19685cab53c0906af79da0d50302047c435bb500683066023100968acc389b0aa68b1448c54b24d8aa60935ac1c7624ec1375d3cb3a8ac6841eb27f903805c61bb068957cb1bb86d2a02023100bf3648da97198424bbbacf70ea297c0a7403ce508f83a43ee469111da34f00d9946149827257ec545893847030e6fbe00302047c435bb50066306402303acc02853857567fd46139410856356ef5ea9cb7a859d4d7347c2f0f8e5d2d92e3fd9dc049ca7ee58b944745273151170230633a9ce627c3d5e6053d2c29ef747a48d232fcbe55e9a5311cabd3a6754a2a42741cf42819fbe3976a32d742c938d4800302047c435bb5006630640230779e223ce6eada73cbd4c5936c4d6c5997b1a84f2fda869bdafd53163847cc956d9fb86eb7ccaec18ccb57e1c8587cc202301815b284f3babf49757ba82bdca3f42a0c6362375fe69fc33618ccc90b5ace5f725e2db291a236db5fd38ae0377eb82d0302047c435bb5006730650231009a257488288f2f33ba339af74e707f41c9ec5f72f641fbf9418965dca776d353b1ea9434c18bedaaf59362112610002602303d1baaa426c8275589d317528a15823ede2d4e84f15b8325a213534cc4d31a0574c776956c1f144253dcff8ebfe0b31f0302047c435bb500663064023020efe82d8d963748c7a432811b658cb4bdad4c68d34cf89d5bd0b36214466f076d300d27a39c9adeb721a8a1cc4a3afb02305a2324fe288f12589a3b771382f37363aa707efe3532cda6ae366f4a2a8bfca29ae7bf7b234fe6f4ccba7fc63478b4b50302047c435bb500683066023100bbaee9ba5c927b8c28c38dd624f4a33a47756185bc2bd1ca397d8ee2782d5ba55c74adacfc0f6ddbd3d6eab2753bb56c023100abd6f75cae0749e4aff73121bf673eb1bedcd29b024f2c033c7b82e57dfe55be3502d790d34d78602aa0f6f474cde1530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303135043fb2dea855be5ab3bc22553c81bd61b3aa402799fc1bfaa8727ba29c9c86bb29580295648f17dfefb0e9efc70002306c147858a7a17147423da681e0e59c0afef7ffc5b69350f6919ecdd36eba7b78b53ffca97829bf6ca210e273b60529f60302047c435bb500673065023100898adb593ab6cfb9b93ebf1e09eb9a0c9bb12bf65d22facd2e825840a277ad8660c34920dfb3ef593572984f7556e765023023cd66d69f326313cfd4dd1cf21063d428b37f3e460c4bb01e36584b9926f8cb9ede3c1dc54c4b60d43089a84dc1a1f60302047c435bb500673065023046b2a59b1fee3829884cd6135187154b6b7933aadafeae9ce935de6f877ff46afc79f0f31f7914167c08cf516987b767023100dee5ac7765072ea980e3266d77e1a14de614fc03a016633bf58f3498e949f54b0448dc83c73d10d29cb7bef5a7d7d6f70302047c435bb50067306502300a34e0a0365d72a6eddf3961807e41f1a6963f3cebfffd66fe4271ced55a7fe261fd0fcb4c92daca797188cc27c95f8b023100c43c5f06e31817a5ef75719e2772920a959f0cee686aa43d784897388229c062f11acbd6debeac4a4a6ebfe3822b4daf0302047c435bb500683066023100ef35e3625a9d5dff57bf09f0e35679c66d0f2f3058bd0116f6173622fd891752d35cb8fe06237aa329b72e93512b80e8023100e8a436d53c044d019537ce45909b75cbe1a934326ba6ddf5496d3ef6b08ec833c741f85d94db5588acf618bd47cab1990302047c435bb500683066023100c997b1f97d78b408e9858f3f3f043c509152ee33cbb93e57fd798ee07baaef5a95fff2423632c553e9cd7298ed5b2649023100b0a38e3e9e91f5d0b675c79acc9421c4a6c745165c0d99f3a3634b58b4de013b1cffb27b76b70387e14fa7281dfa447d0302047c435bb50067306502310093b820113a0f616c0422fe4bb28f8a2b23a922f594b2e4fcb8cf2e5afd77a7bb62d559c06dfd0d6c7c11e6d877e836870230028e82a9681394e3f67a7be68379f80260716db17dafba08781a726a15aec0ec606f8c99f8f075db91c261fa8d3f5ffc0302047c435bb500673065023048fefc020aa4bf9b1c895b4a0c13727e9a7b1a4322c9955147b5ad3f754621ed8fd9e0d3a86043f1852bba948cf59249023100b788aa6b9e8385f6701394fca686e836df4009c494b4fdae066270ec998eede28a77c7c168ff9437e47016396c93cf600302047c435bb500663064023018333ab3710f5025b6cd70ba0a49802fe461531dfccac9457f7e9e01549f37e3731cd2e1cca267c16c0a78e9258da564023066f28ae0220b3370a1035377c9d388622e131ddc07a48879f93a4996bd7d82aa93e41b87642fd91026f6bbe5075993f50302047c435bb500673065023069fb840b4ff24a9b30c9c6049d46a177a58a0b8fc6f6b843bc651d7ba6d0631518c388899279ea15e57ac60165094593023100ce5c990bc94767bd8100b98600fd9ea82b92be054355090ad6d97728f8cc7694950f4f9ce960c0de002233dfe327e66d0302047c435bb50067306502310092bdc2bb16b312f2163e08d62e515490598a67b9534aa9258b38fad50c26f6218ef88d3efa9ba844a037d80c64aecf1e023063e7ad1a238848e08236416e86132f5bc66926904f8f1f68de9d9dc355397cd56019171080ecd0ddf8579662b16f07290302047c435bb5006730650231009c174bc680939f038adef839e653f35e75ea9cfab1742cdc297c70a749383f46ea82b4abc195527a3cb566cd6223b87b0230474d9be8501496b0dc1a73ce55bad4f150a85149cb4db37f5b527fa3855e48e9b19e54de182e882ba03b38bbdbb108630302047c435bb50066306402303cd825e1dca373fbfcafe5942c4e9edb7dcdf542d4d3c570478aed2b9b04c18969f65aee07f4dff90e15ef99f58e3bbf023009cd8a3628c9d988d4e042906ef9c73dbd244c6ec6c66cfa436c6c97939b66d05f0df9b5f48933ffdc3c4ac3940ccb910302047c435bb5006730650231008199c053d0507dce04237f452d55bb7fd9c1435a967e5d73f3c4286246ad2affe6fd58a8ed4e16191a21eb0c785c3ccf02302ca5a594d8d71509b3abdfe4a2e5bad51924df20721e9b100ab713c53d8c63c4683ce8aa01fd8e6438e1fb615b2feb280302047c435bb5006730650231008b307dd2e9d3c4022b259d8952b2704dac7037e9c769093f1a17fd1a6031051aa4b7929dac95a7341c0343b33bffbe3602300352c7d2aa8af8472567c3aacaa5951cf41da721dcb19e6ad3f8c06bb65d50331d9a5e724cd3a93590cf7e3d5a0138080302047c435bb500683066023100b86920c7a1b7610903b604e094e626830da22da8c20e1bd99fb5f4cd10ef8ae9ab12d6d5061ac9c86d60adb7df88b80f023100be492f6f044b6b41311b4fbb3095b9842fb1248f1f818fc78d52bbfd3448e760a5043482b628b21682b2238f023a65b30302047c435bb5006830660231008f87e035b5e5f28f0120177b4e23251b11dff28b4edc3d3a628d5c161ab40e685d605733ce996872ea37b66b6c741457023100ae720699d00b116d396a29882400634fee4d5710fe2fab7a97777cbcf3573d9a9b176e82308d46ae1dd6ae83cfad2d390302047c435bb500683066023100d8fdbec801510f81bd3a3938a5feda6d5ef7e27ed1a087b99af58dc973a74c97f135a0f66f6b5a9452ffe14040829575023100b3c8dd0d49b477555a03c871f3a04c35ef1b4eac91569f5499411d2c0db1a453b8e6cb36a3b5fc8ba8d998af8c18f4cf0302047c435bb500673065023100d7259d64c9f80092499a5422137b2b9eeccfcc02130d50572a7c6a21e0a1c15da0b71bbacaab698e619db0177fecaf5202304a2b277cea776b965e427aabb2e9992631c23df383a66a9719a90c83c67b612782448695568bb03935b2879c61e361740302047c435bb5006630640230744fa61aba4d77ca781529e3531d6379f18d9383bf781f9f36fb00af35214644f5a39d9d1e5b053892d25003ea4cf57502307c71bbe0e6da8780d3fdfee4c752cbe1e3ff0dfa9e0f62b01a4488b9191b3367e5bc90febea3265e71997eedf6b00e6d0302047c435bb50066306402306a84b9d6b13be0e09d417e00714be9268161a0cab6bd93fa7a084ffb35c84fa41c0d0a36e753c443330cd1280c333e9a02307709cc0562274e186894ee91e05a455638344f83a75f9c43e75f54cc236d1ea1e780ec2e97f29f1d3e1c7e9653b80e4e0302047c435bb50067306502303e48812df36fde13fe287ca5c32ed094e53c7a7bfe897e3aab3139e5aae44c480baaf315db927de3790e7f89b0d48d7f0231009af05672605244824de0be8dda98bca35978e56c89392220b5d3fbb98a24b92a0d57bfbb76bedb38269c2134849c11c00302047c435bb500673065023100b79975a03cae715c59560945d9a5cb61d8917457f8435cc19649cbe216f47fe4a0f619d9bc09c2155460b04baa4e63d0023001da59a9e4790e9cf2ccc3e24a1f08bb386d626964b84477b54f4f8be208ee90b69083828ff23299f4a169d5c38fce650302047c435bb500683066023100cf8e458245d08b03d24fc36c54993572c90d825c1331b316a907473b6019f4e9d0d48a679ffb01a0ef43eda567c709a50231009b2e6927d147227fe259f13af42d393ef97d67b45d24a211f3461e56bae98aa63f05efb08c649eac51066916c0179cda0302047c435bb50066306402306931d816c4122a6817e0a0e55f36e6741a8cf7e8bf4b8b48c024f2f8c2d82dacf5de88ab2a8a80fc70a101f8945909b702305386a8df672144d8c959ed24cbc89690483ce87ddda3410cf657d3d7c27c7e3253567fe7d33d6090f0ebdef662a9cf890302047c435bb50066306402300fa76d86a5b1ae225bf2f6248c680dc8a9ab080037f465a98b93015a3db261a066c4a6b68ef09b0c6dfd1bbb6071b4ac0230709cf276d016163e4636665f1ca2e21eac7ab2a243b1b9712ec11fb8877345eca763c1f25c8216b97690a84c2b0d1f770302047c435bb50066306402302132ab58c345e238c284987ab96559775673f7ac0976f18d6657bfc88b4a8977f36ff1a3292c0d473487eebe89f87bc80230776221a269e68a9b1318d3aaa571920da3cd01a27ce8315eb3b7c034bb1e4962407b877e0f9d0e3ccd40678e0af040980302047c435bb50067306502303f04cc265ba67a4378d904291bb9d4c83333b3f50619cdf4d28eeba1bd8bed05e59b58b0088e8e3861377a4115efc17f0231008c6ba6ac12ae25b6ca415332a533f787f60d3b0b230b00a1272e2dec626fb583d83dcfcfa51f92b70f0acd8690edbc580302047c435bb500683066023100d06803d30d92a5b25d039815d1291d96a8162fb653aa58c9c3558143d9053d42679ae375c89ced28c39a6f2eb25ff0e3023100d8fd5afe7ce376b846f90f36500a8d4488c53ea4ef4f56aefab5f49daa864c98c36e2f9b2aead8f8eeae79abe741cd390302047c435bb500673065023100bb18a9154326a22ba0b92f3670ecc326aca46f2619ec72c6b27643479cf70c72084466304b87bf2a48680b4e9589b32b023008ac2afd1f2aa17f53ff2483e10a81c6f5e34d2e328e7436c724a169b35321af7c0c77f7a538f187e880bf910d95f3020302047c435bb50067306502304bdbcfe522e0d8e47632443b014d4031b0d44bafd479204af9d63e3b9ce2d90e5181aeb5f04fbaab8e45640cbea3b1bb0231008ad184b704a31ed419bad9ed2d894bcc834db72cfecad831d28c646df5fde9816e678bdecb5ff662bc8a3168005fb1cd0302047c435bb500673065023100f031537dc49f4904eded1dca4b293e22ed0016a53a7e4c481807e818b270662067ab31688673795e81f5066706c2487b02304763a70201f7846d0ed48b1e98cbd56ad4a815509b221e472341a7298c078f378766d4a6337fcc065ba4f0704946e4800302047c435bb500673065023015b945002ebaf8c161448d085e7b864ba13c243e309480754c0332652521b735680654b22ea54a5ea128abffed53765e0231009716c8fc0a52ecd3a248af0bf787edf345e870eacc55735ea0013151e02c6df41183b685208ca538ceab6dd76f289fe70302047c435bb500663064023009787e78d191b6e0c85a0f4f1bf200acee8160f4fa2bb49390039c89415a1d98a712ca093345fd9fedaba54b6628766e02302d67413d16932f65021d8eca9628b0da1f3014891b3178782d09ffe987c5a903501cab931ad5d5188743fd74d35331e90302047c435bb500673065023100f258ab225bc7908b7c20c88b7cfc70613dcfa3af250b48abde1d38dfa3d074c254794ce5759011191e582e5178277715023029b144f50f38c660309ab610cf130774fb9c6a0a0ca607cafda83f8df03c83a76786e21aeb20e3610c4a568eb0b259fe0302047c435bb5006630640230751b676982383f2047d891762cbf01432859c798ea5a1ce45d68c96959a26511d247db2d0b4090d786422383532bcfa802303674dec28a63baec86bd1ce97aefc29cd4d8701dd39e9c539d259dc5e15c883a3f4aa79e3da30851308b275b06ddf29f0302047c435bb500673065023100fe496aa39c93f0394e45826f0e52023ced223fd3e4f0d5c503bf33814bb86185f6f176b18b664b66e9e7be7db892af58023059bd169103a2dfad2546906dd8c570729a31509e790c83ede9bb593343a01056c432cf72000b4274414ec9cef93e18420302047c435bb5006730650230373edac6bf5de948486e14c7bd1d8b719a88f5a01dd0e363656001241f8c30d9968ccf0dcad99266c6d94581cfd9c3db023100bef6cfb0aef37082f6d83b83c93d3ab428661fb7fea8eb28ffaa88a7190410d84355dd18ec9bb3010cbdd0c8d8e9b4f80302047c435bb500663064023040e6ccb983ba454ac17b1393e98b6725884c45c011986425ba411cebd47609bb6a48c2051999d845002a46feceee5f2e02301d00751fab47c19f802710c29de4a3b221cc918015ba4bda9a6c21601346e95472248b5d1502d170ea15571df8166dfb0302047c435bb500663064023038b072fd0b1031e4171120600f4f4f66151812445979eaa591a582b36d7acde5e527a6a4f7db4e4c045a10c2b4a5af6e023043d35a0c4bd839c619d221bd95e586a1ae9e75da08785fe3e7fa9f22c61774cf751de95090032977da1b5d7db45e96590302047c435bb500663064023051de05d73527c2b81417e69dfc25e366c3ed9a2c5aba9406ced8d03a261bc7fae6f1ef91833999e88d2827fc9fcd10ee023061ebd5dc6a437fd915f6b6cd74a4c102547405e70ffade4c52b0d370a5efa0e46a9cac84ee33f546fcbe0cb957d1eeba0302047c435bb5006730650230314d269ec91a55162a8e9e222a79a1a9e6d143ea9d468ffc31c21f8cc486b344d0997335db903761e9e96292ba272b8d0231008dd7890c518d2a700dfb038820f3e780deb4c798fb6a75be40d7723a1948cbc5fe2e09682bef5b59999e5027498a930f0302047c435bb500683066023100eac773c104ff2e4560f6461f0e6d4aaf2052c68f5aaf871791b2bdeb8f3c74cfbf2132cbab57f060457cc2b1581af0a4023100b24ccaa5548c4995c09277d0f23a1799da0c0bed088ebe56af45564862ef3f30f001ad4e11ee55d2891b9b17285206fe0302047c435bb500683066023100e56a2774cb42685d45c5deb2aebfcd268d5b961f675452a01cf769a8af738b23d01e68ca743f69699fee8166ecdf4f0f023100a29284c0a66afa511b165e6ceda3b3c602b810f21c85c80f336695ddee881793985fb2429484c0c0302393f0069160ea0302047c435bb500673065023070337024510da9fba6a917e11a650f21e66cd3dfbf8715af174b457432d4f43c8938e1125d0c278055f09c2ea55f88f6023100d341fa628fee506fa2ad863d2bfbb4307838c020025d85687012c651c697e76e90d06012ee1f890dd7c09e8e83a6bac50302047c435bb500663064023078ffcf64f863e7893cda3d5434eb6b165e0364975b5fd382d8f4a3cdd9189abea5fd258be9516fc9407239f75f0a2be502306ced9e01ba3209b672cf0ebcd641b8204abf5750e913d78b7ee2aa917a5b6a6cb8eb72ccd99a311fa3b9c037857bde7e0302047c435bb500663064023043de21612d9d689e166734f3b7c09212a7694f5582ca3a86ac3d4fa99dd52dc281703cc1322a84a419eab37015b44c9a0230774b7d61a9bf26d0cf5dec07c7652ff3feabca92d14214498f9105a9ec176497b0a757f751eedf2f2a084af6ca4b4af30302047c435bb500683066023100f4fd70e2d356323e443af94e120153e618613ba0a71dfefec48603635016904ee0cf39037bc0919fa9c46be61d68f4c2023100ff6286bf06bc31f918a2854789685a1fbfbf08969274b0415c07af2f6fe7b500dae022d6f0b2c60e6cadd0182095eb990302047c435bb500663064023070a0457123c44c77de9b6509d35aaa4e1ca2ed93bab76f54d16254fddb2f24356a9e52a90f73f966be29e1a72ff09d76023034dc5ae71f79c352fdcdf0f4d9dc32179b9ca88bf46d7c08be7cbafabce85df961ad178a7a6bb6266726dddbe6e1d5360302047c435bb500673065023100f4a31a4e1154cf03a5301b665f315504c357acdcb2a1071df4592c24e428b7086a3485f40b7b2a77c63c8c0ab7f53b7a0230402a60597f3d17a894c05f385e836f59af167f474d0da22818e22329b30de04aa0265fb401999740d985faa4707eaf280302047c435bb5006730650230065f5390aa07dc396bd23e41a37cbf783440496378a506ea982228a17c2cf3268a4be4605e3a45a2303e643813730c73023100d414225974ab107eab89d840d97beb5f5e395a6d8bcc7fb26e12dd3dae5180de21e0a3fd5627d4d4bf5c37bfdec39b8f0302047c435bb50067306502302c0df75b8ca8b70a17bd81a69a047be3a2d79decd0b48c84ad5a4a6d19fb732dae421197692754e3d01c6c75ca6974d8023100b6d686ebbf1129e2dcf3566287eac14b35ec2de48933e18d660352a9e28755fd83642c849c2a34b85be5c0b7f8ec62ca0302047c435bb500673065023100a476bc35060cf395e1047e07c4053e58ace633d54339ba8a9e7f0d1665e71845c90503717d74e554fd15827b7aa0a501023025e5f7ef8d3407ea28196e30b8aa64183538ed759244c741d06b0e7c96be0a3f3fd2f91bafcc96755cb8ef7d2d18b0450302047c435bb500683066023100b0cb5c5978395bd0f35ed9e617c4aff48928a1d3f485bfb968f44201239a9b2b8647906a5f02b3388c44845ba7a1e86102310090026dc6ee20c9892f36da6e8804981a6059106c52fd865b087d83610cef830cf3cc0418ffab8d356691c53d2479fc430302047c435bb5006630640230068a51a5dc91974b0a27b829bb39fb0d28a11e5112c5223889dee56fdfce4e60d73871ea7d0d535a89c46f089d4e2bef02304733f69c26cfed909ee6574510bb9c6fe0faf493b36c5761bfd935472be4cde03dbd91f41075bb9002c0b08e0751d5a60302047c435bb50067306502310097e4fcc136fc89cea3217adf3919377733e2a0ed415ca4a8e0faebc6440cba49fd5b052cb44320c974f73da1c6cf662002303d5828b8c275b22ee270b752a9fc85b17c15c80c45dfcf6dfb9c3ea9959e125b54aab7462f7542b080d2f192cebc36bb0302047c435bb50068306602310083cca69859ba41c18453f6dcabf3d39a9d5e39a1c81b2ba1cd3bbf08894e4718d7aabbae50da0bbdd6c96460c3c80f340231008427d4d9015ff54805f2fdc7cffb4b234656c206584dfdc0e14733d9bc91c1220efc0c5cb81ba66855700c4e6ab7726a0302047c435bb500683066023100bf31f88bb12f044039d7b01239b7d7df084055b3ed4b7a695b205b31a0cdeb5e97cea85258ab4e1490c50b98a1011c8f02310093446a788abca6e35e2469078a5a100a82fc907be5a18d40dd4f300be23b4a4b537cee2c5e3a01f017cb2fd91f3dc82f0302047c435bb50066306402303b1437695edc9e67e8179314698b169f8f19fe31e9e49bb4cbde410b46ec26f702a56dbdf40a1c311d9794d84a1fce6a02306e098b322924bb58a54be5340334ec05450885fab5c973663a245c687f47f4f80600f123d2214fcf597deb40adcd415c0302047c435bb500683066023100ef1ebe8e7cbaf2f6fd70988753ddae5e6e0914afa931b4b11185283310eaa03f48f5af5ec9a4bc1c999b99d81e82350f0231008f3d35bed0cf9db169057fd2292b49532ef545ecf96608013ed7723ca596c8ac194a96ac0dd3d53bbef86a1cd28cdc870302047c435bb500663064023024c308d56e07b8b4d3e8921e31e89df8a0abb90afbc6dad3be4a38bff0f7d3bec792e69b225cc43cd6e2471a7ab28cc702301ba1cb100a9530019c483b725a4c13831dca03336fcb3ccaf2f70fcba50937b060425b3af2d984c5d5e9e078713cc6900302047c435bb5006730650230641e707f31a0bd1286ce0f89684e85ea01bca474a234846277573dcfb6231807c97c8805caba14e61e4dd45333fab7c7023100b4a5b6ec11bbbc1483d6877f1d463bf316c896625a03ce880440a7ceda4b74f898a79df897e7139cff2c0b76fc4936ad0302047c435bb500673065023100bbb3d4ea2e397c3404a8f7677efa314c625ef2fe1e3c146ff87d18f04fffc029d6f49ebf8bcb8b781bb380122f3a381902302529e6eae27f911dd11eea77f3f594e3308328759df760ae0d19b78e12d4ba6d69d5744915bb289b1e43459a3890a26f0302047c435bb5006830660231008bdf9af36698ef5c1e0c0160a061a0f0fa81fcf253a1b9aef646cb49fbf46c2905c1343e801be708669bb831fdf69386023100813061c188669bb0bd044527556a54e18c68a56adc6c8f3737326863b540bfdc90fbe69c827d0da3cfd00f3ac2bc42f90302047c435bb500673065023027654499caac24c641274e77e5a52bbdf046a307c0ddf54beb638470c15615d3b43f6dc8da00a1b4452c6a90ae956a40023100d71ad197766a9469f0c055a01c0574f27367bcf7aefe42c58503b3e64c340fb7ebc9be09ff7bb2bf46f15dc9001173750302047c435bb500673065023013d59f601d7d830f5b04a062829563923343af8a6f3b86edf72f89e9ae0d2c97505b74ad6e2eb8ad7159a7d7f8a9d1d3023100a0177ce68a0eb1d675d75db0886cbc76fd12e4a42b035f05a34412e097989e081fa8c51821571e94baf8fe1f67afedfc0302047c435bb500673065023100a1a0320f77f2ae4ea28e45a58188bf0d6385048b8549df14f12a6dc60ae93b59e4dd1c7f621c5ea173106e8d4cd04bcd023015211bf32deb9517143350d88fa6d4ace0e929947b434e55e89af24e21ba758318ef947e4cd088af07857e0d462085290302047c435bb50066306402301e24cee49f70e849a185bad63e910a61ce9df6c691329e7ddfc05e679c6e484f88c8830f7b7ff38c5fb44658f7ed28ea023044f0e129f8bee9e3b9e3a4ea1e3022354ed6affa07be812460a31ba5c8185e8f18cd13f65ebe527df7eb19483a572a990302047c435bb500673065023042ae060880f034facbfa9cc2828333a52cfaac36927e00e16e9aea6ebda8d7d6fd33c7afaf15a5dd16ea56535176940a023100db022f9afaf4f09bfacb827378702b13df2591020809cf73abb7c57c736b3f4f541e1e837339e4cc3435bdd88a9fbd510302047c435bb50067306502300998ec904417969598445a6934dc540ef5b5cf2d8936c8c54c19418673f0b4fefe7fcfe9f410fa89e2cf64d0d289e612023100841a2f2c3037a666d1a41984ac89a1e82468db0d29152e9f2c5351683be3f1cd6afbd28adf82c1570920e2aa87b429250302047c435bb500663064023015e7e87ce6901558467b41d81875ebab9826eb780addd0ee57cae94761b9cc0eefbbdd8278b46c146eade71b4c49fbf902301e1bb9a6fc7c6eb45cabaa678c1a87e4147f3d38db9e371d3555ec7365f09f15a37583c881956f53927cdb855c29c7200302047c435bb5006730650230719e5f52eda14a806315c864b7cd067bae59f123d5fc66a1c2dd3c9f8d0f319fdbb3b9d165ce58316453057fbee30e0e023100eec6ee2707b7bf2572a4f3fd20582877d20e8b7781d852b52eb69aaf57825fe045345b09a31a03651ec89ddfeb4f85e20302047c435bb500673065023100d7aca735c8a321dcf8b5410f6c65d9d299c2d7b551c5ca864618c268d7e8c9aec683d3a35ca3dbc922ed395be670f31f02305827573558a3b73f2bd707cc9b0684d63ca26e3db3aaad14a21e37b12065dd27479ac2c243f526434aa5d178465019680302047c435bb500673065023010a66ee0d59256faf9863061613a322420313c5010bf2c89d778158a84ccccba1798459bf5287e11a008c0d48441db5b0231009ce8debee7a32719c3578f5560c8f5dadb7df2bfbe1dfc812d45d1ae7b5ac49ccc4f9bcd8ff74ad5071075ce4b7328c40302047c435bb50066306402305b1fabb9323682cba3d3c7115a0198240d0f2454db6cda399a2e38f995420408dad2591977af12376fe6384b4fd19906023054aa5bbe49d4b3e28f5fc44d214ffe2d499b8a65e90dae9743b53d000dbe7c6b4ed16533a23fb1c29dda1af17bdfd1de0302047c435bb50067306502300117349d9d9c04e4a30464c8f6a943f0454e6a2118448da13198f8d2a55d9cab224bd4fda0399dc203a5de134c8a944a023100fc67f5041664773feee390bb02f475f6edef40505235f2bd792ec1d7098cf1aaa0356aa29c4ff777730e539cc9277fa60302047c435bb500663064023013b1a24e908f9c80a68ce82e13145eddc9a07e3146f98072e26e364136ee783552588164ab96fba43bcd8f05791c6eb30230796d84f9baac7de7ba65a7a89407ca37a14d1c7a21f5ff417409726bf98c46d7ee652d15cb848194dc8438ef7f99f20f0302047c435bb5006730650231009baf47fb06a5050c071fcfbd7f74ca823a30aeca71aa9e16110e04a305b28033bcb9869f6e904c63ac1fa941396cb0340230373b7ff1f9bb00f3c5f81f3858ae90b0063a3897296e58d34ed8c9d7cff837b6190b2de4a02860750aa212d658883c8d0302047c435bb500663064023059c5858c2eab9da7e2ebc79ac90b13daa722e9ef35df77006b29a3a905874157f2d735c01721b35afd91d0bd837786fa0230190a2e19d6b3b47e0f5cf31ebae208cfd169131a47a78e2c99c60ed8c78a8118566a907c1d41e7f34cb2dac06c0a92670302047c435bb500683066023100f1c556590a338bbbdd8f8c764e87f52d3a257f6293c27ac6c9c5a51973ded0251b8d70c505894a9efbb7cdf7bca1d6d1023100d478ae2b0c3e76c98d189afe5d3f8431d6d84c33835ce5307eefe23e88c1ac204fc403dde054d87104479e87267752aa0302047c435bb50066306402301a2dfa7ac61c4126e46b1b3885d52e32ef4377b369ef74c9d2359650ec76e4f871439010aa65eaa660cda9734b6b99b002307e20d83ec52dd6761592c16afa4eeae8f8106975dde6895105f9153b11a14e2325565124fd218260fc965cd2db0fb5760302047c435bb50068306602310097069f0f8c46c0cfc367e9953f907f81cc5caafdc07e28f867268e0599df88fa444cefd2f945c4d146175cebc7be263f023100a082db26a45442fe3a1cf8c4d0d9fcb3791e89546db8959d92db3af59084690dad69e762793e6ac736b841518fa40e540302047c435bb500683066023100d08d7d7110ef04344bafde43d46bb5e3cfd983f6534ee121f77e901f88a8320d43f457d8a5c09ec418408bf4eff6446a0231009466b5f827eea58bf603aae22e5a81e60fe59ac6de3fea701c8581d2275cbdfcf126a30004abfb7dae13c61e56bd7c160302047c435bb500683066023100907ca6e99c9d6ba853f1017683486ce4368f458fabf1d443c06449c2437b619c89c994269ef92a51495a92794e8567d4023100c22d139137fcd15abf73189c143849d80ef2ff5f8bca39c79c6a6dbae8309580a323968bf1cd5b18dec992f3acfbda8a0302047c435bb50067306502310092fe3501fe768d468f3f4b08a51e6108bd9e920da60a33adc968457d6cf478796beea74f7ee42a750b9b1454b7257514023034589a8d2bcf8d182c2f7bc0723d97b1ffc51b6f5b9bf73ed6ebf4ad037592e7ad0bb10c102b6a004a84b983513b46310302047c435bb50067306502305444bb640edf4d596fb0dd6dd344a27c9660d5e1596c0b7bfab338b141cabb13a70cb189c8261149e6babf01f362153e0231009c420f2c71ed051d3e93906c46574a7bad65848c8d8c63db74609500005b004976b409e8eb4f119d5d7d21c5eeaef8bc0302047c435bb500683066023100e74ac7ada5a723ebf95fd659ba1652f3cb1562a0784e4a6f40e9cad486253b1f2d8dcdda0cdea2fd77e82835fb8a17320231008ce486d431bf82be75b2a26ed6479eadc0d11fc97d11e7636cb916b009b924947196a1d215074be7821bc78f7eeb67420302047c435bb500683066023100c223fdc0a578f373e22b5436bff9e971a918dd1a6638f6366cdec24ff9f02870a8acc9e099108d5add60f0a16b5777e7023100b7f7f91fac576b72030bc1e6244a4723098057e0ee334a81a833eb02f24e5cbf0045e781151b1acdc0491fb71e08a9aa0302047c435bb50067306502304934d787bf9ccfdea950dec614187e7fd7f8d402e78409aefcaeea4a674a942349616b0da39c2e0947009b0d4ddbd3eb023100a4c056ecb6e50bc2820c2030612bff9533fd6bc2ef18c1293cbb8e75e9570224ea1118f6b0f222d57ed9c8a4d0b655ed0302047c435bb50067306502300a9a6c1388bbebd26bbd78afabf666af1db51a95b5024e72f86ab9f67f9bc93e8f5b20c3e671cafa2f2cd9663bc7e35a023100bd42570d2aa0942f897dc386805393082294c3890923c700ef10f40ae7f32b23a19d1d93283ee0bb0f6247c1b25ea3cb0302047c435bb500683066023100db6b5f6ba30aaf094dee650ef4a16bbbc24a0890667845bfc79e3f3ef3e20f53935f00cbe79c8b7d392fbe49eb98cb38023100bf48b90eeb817c8e1548e6a6ec48c63bf7fd0e0370d78d94a7389526deb4c2bb4dbdcc297406c41494a0342f04aa46f00302047c435bb5006730650230472a9f23cb55aab36a5907934f608fcabb71a57ac259ce8c2ffc493b1b10d9a9b8125e1489d559b29fd0ae7abb27abee023100ae221c131226d27c568542cd2ec7dfe00a26216dcd4c6e7e27d1819dae652ee98f76ecd98856242b7f3f484263bf0eb40302047c435bb50066306402304c83e3e49618bbef6773201dd8a5c2b45ae8e8ec2bbd7e363023fb9eed3e1109454b6deed706758f951cdc8c00d5c45902306a67271a91d1675b1ac2d24aba0f26805feff140431825abeb7945dd97d953c354a210f5ea21294b61bcee27d765714e0302047c435bb500683066023100975135df649d9bd546829dbe79493c430e202e311524cce490effdedfdc551217eb028d7d73e1a235d8a1eb2a522e167023100f24ba5867dd674357b9a1d15b5e7a55906743c6576fa2c610e8afbd145c7830fce44cbba9907dca9cf9823f1b4294a870302047c435bb50067306502306dcf64af2701aa8bff4d7292dec80012decdf42b8e98aa0faf9e87c9884d467f2c04e92ac8755050836841e5077612e90231008cc9246545061bada21f3adf7a0a21becf2aa095b32d75935ea52a0b926553c3e4864180690153ab86a7a4a5cbb5fb790302047c435bb500683066023100cde1e5a29a11b31debe80703429efd2bec0587a27802ca171372437dfce53d491a147a6f54617831af3c5c037197fe9802310080414866425b5387abbd9a1447d6facda5f3d46f82ae0c32b65cc65d3a82c1c2066ad446f74d2235a3525a41bdf867b40302047c435bb500683066023100994c02b69fc9c5160447539b0513b7119a7ba944e48e84a57188a029a5020d298dc008c4be487f070fb251989282c1ce023100ba0eca02175afb15af5b5d9641aae670ed0a83fea20f80844bd2801c45cc49d86153c663913f054f425528161e457a9f0302047c435bb500673065023100ae33afa2a3d174b38be269ddf1a54f4e10d9ef5cd660a6bf108331bd9d3cae4e24b737b6cb920842b2797231de33eedc02300b50eeeb5106413a68cc659cdeb3a719189bf6b2c1f9e664e488bd98be4a447efe350d500cfdbb56fe50f7a7a08b068d0302047c435bb500683066023100f30b90a4710c81dfcfa94b4dde4fa3022f358943eeaaf86eff41db70b3b2859bda809bcb24983669f14298f47670197b023100f055d0c4033085b2b9070f35c0e7bfe2ced3d627c580f66089949da282d17af91928a96f12ca34646a70b5691e8017aa0302047c435bb500683066023100d92b1b6087fc6853db7e291b18c6ef3e490027bcd8f5ee546a4856441362f4292c5d3e07ac5a1cae216b276c04dbfe3302310092a51b3d29b449347ed784b522b20d4850908dc5c4c5ed0a19d2f63d640a15349e84212e7e8a8436dce6cd502c36815f0302047c435bb500683066023100f96d0299c28a1f73f4a1261f3dc2402ae159d2edbf3842720db613b936c219c8fd80c7e927763a21204081153c40f6b3023100de9078cc6ff5b1441a39c63f45c69c9ac691d4ccce1f9637edbda36da6fbfd2bb6435b0dd13a3a36d889546b774523910302047c435bb500663064023064f8d83c5e41b7928909a3b1f1b97032e0d7233be78867661d62c5d41dc0f6ae2aa25edeb4fa445c472c6072147ff8fb02305b926e9644b28b706bccf94158dd53844aa2cd11cd8a150913e18b13d592421ad339939e744ac1f0d9fbe9685e982e3f0302047c435bb500673065023100bb28d64c8f6084c23c343fdacf0e1882825fcd8182a392776a28adf46c79a3fef57128f998e30426a8324304eeb30e1f023046130f1f12821a0bdb9f4d0b53067bf671e1bb4e9c56474a5731f13e1ca040c40ea2845f1e2b8b4348d25cf4376cbbd80302047c435bb500663064023074b2264da3023725bb58edf38a00481c39539e1f7a3decdc6700473d5e08ca37510eb3f1da4742e119a3db322d529ec302307afa1c4c55fa7832cfcf23a5a8c4c7a9e5830353ef066126e0ca1c65accaa402aa5b759c9671fa4e461f96545c6c087a0302047c435bb50066306402307700c847bdf51ac58045ffe73202b0725aed025b492d81431e9c34c72c5b8e4f983570099881b927a03973e92d3a370902307dcf6ad0ca8deccdc5873f7b341d4366351be781f57b18484ce6e577f9764b0154fd47372e99f3df7279fe0120561cf00302047c435bb50067306502300b4d31079e238e447ad1320c49548ba5832e0ea0c34fe899b9d50b81add485b1108dc50dac88ee09894bd5444900fe87023100a4146a65d202777b0ad3e2411adec7b417b751727a0943ed6d652e51ebe02d63134089db5078cc5a4ef43f1f8e8bde4c0302047c435bb500683066023100a9972a8f45b10386d9e4768abce9f23caea6d77663a0e6216018bed011ea6a79027f9b273db822be49a1242fdd960524023100d20f073a379bb42d54160d6137624e29e950cf1b37514b062308c5a55d63c17b19a33daa4ef999221c3ba469e7a171420302047c435bb50066306402307a26ca550a4eb2bceec61373145021d215f3d45b5ae259071c40f32a0e960b8dccbc34ee9901cf8ff94378e27e7a20b002303c44c074101295346db77f0942aeae0ee20c7c823d4185c4665157803d8cb8958edba186c6a1ba7612d1d049b1b8fa720302047c435bb50067306502300497013ced38795b431e07e238685a5502b6d1baea836c2e6f5b1624c868db71211af9673b534003e9bc4d357e8772cc023100d7c5b555fd90849ff790405e551500c599aaf9eb83963c003efa2c4bcd65e74671284fe41c229928f5c7f6e4b85ed6880302047c435bb50067306502303196804bbdeb1f285600264a40e112700b1edf5eb5e4899b3645abeeff7390375962926807c2b5931405bc3ffc5242b8023100c30270a1bec53e1a1b383ae6f91876203a876959132b16209c7cdf799149f5d527411e5fe46088d0d6c08079485c81340302047c435bb500673065023052bf20fea12a6cc1ef9a1fd1b5f40d2e36dc3781febb72ff24dc79ea28ecd248f02b388200e31d2adb926a5db0260e85023100c7eeef8368a0e80d36087c39c5b8d43d9f730a3ba45e3758be797c058409851ceee6d0f3f0bebd47ed2375affdec25fe0302047c435bb500673065023100fdaac0670706ec273ad508655e94959eda89b923fb369eb9a2b14b246eb40f5b9de9d0f065a6a63870d5768c3ac0ec3a02306244eabaf0edb98a396b36c884eb204de4cf5adcc4de01aab5879b73eaa1a54330df0c32f1389b8050a5a040da6569100302047c435bb500663064023018a65c6712c57706649216ff65b5902a4004e13a57bc4160ecd07a66adf690f1ca8c3bb1039a81e7c6cd117c074487e102300d51416fd66259256d7d701c224c8ddf79c17801b6583edc207cf29fa07d415c68c9e642e3dd4c895f443a57848fc5ee0302047c435bb5006630640230648f22fe8785f385d1dcb46f35abbc73f41f9fd1f2c2143cdcfb3e9715b12d0274cc4e9b8d87e4feed3a2191fe80be6c023020a06b806d45edbde7eeca9533058adcb0f688f4d257c82167e17b046575b9b34778fc40c282ff452d9db10c744446f10302047c435bb500673065023100c665dae7befa26840c9abf0e3ad32b056c349f3401e6cf84576cfee35ec7c8811b2f11f9216114a3b68cec78bbe4990e02302c11941a26f3000a58d994ce815c9b32dfa0144ad9d192b3288b33ccd0f84c1bc7997acec1684854fee1b14a2c2cd9fe0302047c435bb500673065023100a0e3b5494c0e4efc94f20976b0aea5152c62924853bb8880e7f58e21f50535c9a623409b449487feff2296748e813b5902303e9d7397efa7c62a58833d8944bb91f3e773b79280b9b3e32f8d931b742170d3667f7fb3c759d57468d8e0115445f94e0302047c435bb500673065023002ef63db6e71560a72e06f6f4aa44a64a5bfe7888b7f1d27db6c0b7726292b42acb13ba3f2a3d1ee4577cc7ece6c78da023100bfa52dd8eb63c5d1725a1326d42cfc0a35463bdd649758167dc80ca2cebf0fd78570d7edb3064b9f281af7925bdf207d0302047c435bb5006630640230293c37f4919c602ad74da698d5e7691362f07da3a34115b189ea48947c691f5f2ba5f0ed07bb0a8c1154587de125fbae023028e1c6ab46f28e948c30e93206ee93d1bfaaabc69512dd7480da6d24f35198ceafd07c8d397d496b2bdee9fe0cddb5eb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305ef1dcc18728655578563f52b4faf182f771c731902aeeec5d099214afb2e8c0e568a079775e4d481a74b109fae0ab99023100e1207fdc9136f97ff698471473d6e58a194fe52c39c46ce00baf552a55c0cd8c85f8b22bc9efce14704e3155d59639a90302047c435bb5006730650231008b98539026b73f4bc38d0b1a3f1b501964ffadef6f77861117ac69757770149ab72aa7af8c62fb59bb818950649507ae02302597a6158cf7122c4d1ce9bc814a941961fc80358119f1906fbe03382c34edc3784d13736d96392a1a75168e766ff17c0302047c435bb500683066023100fe43a31c5e94e8c30985908ac15c13aa02ad2bf64ee2019e437d8ffb5bd5be2818bc9c286bdea3cf9a7fd573c2b731ea023100b72c4b094d6e4f274999c3764256ffff3b9dd4ffc12f5f7b721670bd5360eab03b24eeb25a90efc74da5bf662a2dfcca0302047c435bb500673065023100c0153e33d83f8ee01652ce0d61b2ea7e261c7d695e1bdbe6e474e038b098c0041da5a6a047004f0e6af436630d52a240023059d9ca645d282ec8e02e1a334482044e162544276a49cb8300d6b3b5579d4eb8035b0f6125aa7b586f709b025cdb882e0302047c435bb500673065023100d02b481c7500a5f5a1dd8ac5f8482ead61ddfd1fc1503683d404c01e60dce4ff89554b3b282225f11ca54d21d411fb330230435fb1cbe80483ff6ffe2e1a50933275d55eae48043f6634c1a9d1b1e79d4d74cd41b42ed34a7781aec244f2f8136a3c0302047c435bb5006730650231008a6015240a62684131294093619116f28419db41fcdcf3c05cb87d7b047a588aa47a2c88d9dcbe16364e45411b843eb902307873fb9b74afb532bbf43a7b613b3aba98435a978c2c0c59d443291c01aa89f88f8b8e3aba39df32fb20771ef094eb960302047c435bb500683066023100c31a7cec7e0cceadebdce955129f1dc6d778ed2ab17f4af092ba80c5efd16ac6142065b9d892b4a7b6a52741f0ef56e0023100984285d5b4b17bbdb08675ede5f046d574d14f28526d150ed6a9fbb9529db95feafa37179242945a983fb41b45b858f10302047c435bb50067306502300a5b8d92e0754badd6153554029f15627f39432980946cf0d5394c0062dac6cc3cca4de27beaf8aa2eeee5ad4345ae27023100a7cf74295154481c40cfe32dcbbbcdaee3338c5f52e0f39638a7c4e397696f9d62aed5265ee0dd1cc27a2eeaf3966c210302047c435bb500673065023100d50fa5fd4570e6d47e02e543f44a0781f68fb2856e44c27c86c6dfd160c5ee5b70a98bfbcce1813b4a383d35eefe64f002307dc9ecd624857aa057f7b24d7414a4e3bb922c9166fbd2ece61f16aa9714254b545634e5def51b2242938aa2e373f28a0302047c435bb50067306502306b5fba1e3cc3db55cd7eb8c02b50c48fb27acf694921eff4a46833c10f8b1703336dcc3493026536b033d3fa8c1c47f8023100efa6bdb9eb78a502f77ca1a6990456d31415047eda3b64ed2c93a9959459a11137adf2ff7a3b28eb1d6b649d5e06698f0302047c435bb50066306402305edebf0c9f334c994216fb6f01e78ac4e60bffd40f794cb34dba3d337bf7e2652c23d99a17642a8e61fb5067e4427f0d02302311cc9b042e88fcf24204ba9b6ac2b14f1b4c826ec302b2c3929ca3076284c1ffe9c06ba255c72c6ce2b7c83c2ed3970302047c435bb5006630640230134c50f0cd9a337f4c9f5795624fdeb7a7e5e65ed2c3b1f587b6b5b5e54bf2dc66296f9c6c52541ffd4b4dcabb0292820230432097dc785c390635d10907e1110943b9e1c55dad6fe4c159a930a3baedd1cb30ed2bc10b9aad27002ad545a4f355890302047c435bb5006730650231009b3901df8ac8253f8ccbf665e0450e8afd5912bdffe6509afb3c34ec852ade4ee86b0ee31a9d22f36e6baf5c6891396602306371ce3620afda07e9d4fad53529c63377012fdf7fce4b1a026abcdc11bce29ca09ecf3152637f573b0d32c0c37d4b440302047c435bb500673065023100cf3f8a40b994076fb5201ccef845b28cf5d28779eea7aa7ed4755ac7ed0ea270eee4eae8935f42b459d1e31a412932c40230577cce7360b492b7c71900e3d2a59c41bb7afd94445491e0d1ce273bcdf3f2ea1c3a819ef581acf591f78a92447a7a040302047c435bb500683066023100de04b221ed43469f65177eabce68f26931af1fd60fa03644d9b06ee1504f6ed60b27ca8b2d6e4ef53197485095fdf959023100f11f33671e3c9901eb0762bef09a3a3944174f4abe245b410e2c47f0737af3c4142347c8bed340b0252a5acfe9c82ea80302047c435bb500673065023073edef87ee1e3a971609003bf077c588b893b14810db0604a654b603d7eaf34c6337f0112aa6e3e6400aa1a836f17f200231008ad855f49bd11731b9385e0b69f8397f2c998c1966f9bd084472a4d651ec0c65499dbdbc4b0ac7c6474f1c792078dc790302047c435bb500683066023100f0dbb37c8a755264c90ba2e9777e19b8948c53bb14f37a0ae29a9c4336b22db4fda581735e3bcc76f49043a3e78f7ef10231009a943a19bba98aa022ca7b09a595824b3f2575aa19bd0068c2926018ddc92309f2505b6872bef3fbf3b717249f8f04520302047c435bb500673065023100fdf72de75d0ebdb073d099697e04b9ef8c3f73ef3be08dec7e17655945a7b0f1e4f9a58bb78357059aff9639f46b4158023073a2f7963b42e41493eb64abde190917dc7e1a39d12a0479cee25fb2b5f47fbe58fe47e935c57499542cedfa52eb24c80302047c435bb500673065023053aeddbc07704d92c4f8715ab7696ef9b29920aef9b1622c624bc9205d31288e647f2c02fce0e3f3d236c672bbb0c0d8023100dd2cfa380d061f4641b0543aacbde267527f2b8a45876fd383713089f6601957eee9e520995348f942c4ab96b1c9cdb80302047c435bb50066306402305d154f2886e7a864fba3821e6e38de5c4ed7aa1d22b95684204a247ab8b2e7312010a38496b00e7f324821bef744b34f023016d7847a529615923e7945ab8780352a4e698ce53047720627f9882f68d2838b4c4a933b8df5d6ada5c2251281598a330302047c435bb5006730650230395e1fd62292b7fc97ec681141be5d9e2bf41a7dcf189748d251f8ab82e0414411f0bc769c484dadb9c94d9407911704023100a007817ca64299d4e09c9d1cf27c9b4dc597fe161bc47362b4ba0c108494bc8b41cfc6f0240bdbad69029b91a4802a3f0302047c435bb500683066023100c1e428364d74080e3c13eeb5f88ee825f8e93d9849171374103c09a4a8e6400418a44c053b55bf5e8903db0c4456b1e3023100d703a8e291ab75f524f0f396debcbd83117356c750a980f2c296e9ba57300e79a0e2d4f0d7b182269dee55d53c88d8800302047c435bb500673065023100868c509a2091d69b986ea194e2bd3933f205f9597a84e5a282bd67b9d0f9c04dfb4539680ea1ebd4e7e89e0128c45b450230121b370684f0fdd401c5d530a03ecc534bc395d2b018bf3562c25ce0fd1c12cad3099052c81c4ad00e094a4261542f7d0302047c435bb500683066023100f24204b1f56e32142aa6a5b020fafc03caa08f33ce3a94e622cd8a2d9e15256205ce5edfefd71af2f82a220259bf55d50231008b4af5b1b1512aab216f44dc196c5b16965879b4a3c0a831a64116bd3ce3d611a1c153e204a2a936aa2db7accd8b7e200302047c435bb50066306402305805bc0376b772d728fd9cc02e0ae84e9ea20d5e565d4eb2cbdf6e5278e1190de75f020845cef609cc0d53474e8ff04302305700d95658114e9ae770b11d5beb9685dd19dfbdf537a030beaa832ae99226cd5a25f65b83272963af400d7c76d2f8f20302047c435bb500673065023100f99ec43c383c96397606930872e51f176bd55455e60cf40fa68d160e1975c25ddced184b56ea82d3fb92fbe19628755002301be9922f50f6c8e1bf0f63accb18957c1b219415dcbdbc2d7212e6240ef075d305adf7977eb064973f1e95a3c3624c240302047c435bb500673065023077df30a5cecc783a5b86f1e4c54d446afec896c7f0e036cc19e48c130b49d85c0d68a67e9937759913670cd419c023250231009fd1e52fa51a2d173af95f25f534642df2808a6de6f7762697d6067158fe4caf18ee844585626057f42b11de2f992f420302047c435bb5006730650231009f747177218baa9dae9c5947d78e1c74036816beb9d543ac73c15c7fb43fc93d5e92b2df79969ed008a944fdc1c8fcb602303a76aac69b9af5ff35623ba2bf31e077e04726907e1b97a1863bb9accf788aebef3c56fb0075523a6cd6d9ad7fc19ef60302047c435bb500673065023100bf7f857dfeff2548cae34bdee35d8d26352b1dd57748d161a4821da8f1e89d63364ce19b8bc98bd9c5e149593a1f74f5023016b56af4b40c7f0f320f1e287679ac960c3b0e016afd535e7d4be6a557f4e0d4ca59d771f9b930673b2f50281e76c0f70302047c435bb50067306502310081b2e8f084d526f3c5f046a9a3020a97a6c4cee6857dd05f1451817bd20dc44e1f03314281d5bb75c9a654dbc14a05ba0230666f0aaa5f23c7fe1edfffd213192e1d292081ccc097346be59345d41c7da335da89434bc6a77914bd7aea446665d6970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230407e0e3132e340e3cde016a6b31fbdb2b95d6f65378e21481a87ff6acc866f5f56d3870d7d680fa452bec0eafb41c2480230795f532fca7903d4166905643f3f7bf41536379f4205a3cd8b4c15b83b9f17b3f1da31c45cd35d7c41491528ae98435a0302047c435bb5006630640230266624f5365c30b94e5dcc854b7c5a2f77e1f09f9a02522b3823fc1fae9e24d047e5f7f06a7126f4431847b0cd946068023022aca5455d87942dfbb4addeaa7552966ba986e502af586b9ddad8d9b3881d72953bed16b6ae6a26a22d5a83534c42d00302047c435bb50067306502302e1ae3109410a3b135b1da46a80f03ec31b61d26f70af6b4ff86520e996ade3283a1d041dac53fd8cdc655fabc435d9c023100ffe6cb352467a5016e2b1388c08039339c3b0d87d051718714fee60926efb6182d5ae2c3fb6f04d73beb9b27afe9b8570302047c435bb500673065023009e97dbc9b727e06353869b389153b06014db2dd306e07f9717b18824eab2e4910d717212d9172ee0c56d81eeb203108023100df35a0f3c8e48f576b7878098dbffe5aac1ca9725a878a9537f783d2ad88ff3bd5a5564804c109ca198ef81bc8d1e0a20302047c435bb50067306502303e1ec2894b95aa63e57550d72ca6b78b65743edd6a9c9c0c7b45df6e089972c8b5b54d632cb4b855878b7e5dd06a30b2023100ea8c0f4863408bc13dc404258947a16ba49f43c0d1118ac803ac8754a158b9dd3a3bedfb6aec06a1dfecdfe1a21a61850302047c435bb500663064023052463b96a6fd1583c4bffecf41ef9a3447ea7113504c288f793e28faf14afe21f581ac81576e2462a2cc885ab2bae04b02303433a4b643e711fdd077b3d2d7f7fe375f05f8a01b088038c7bedcd5e41a3ebfe3a44f4f940a9f7e6064f85926b12fdc0302047c435bb5006630640230034d9e7dd9f09021c7badd7949036e8dd4206e566ee646e5b03cc7f5eb0c44ca5ed5c0d39085ef6394c56e6ed3302cf802300ca8dd273627c6ddb82cea6b78adfa0524d40f0d89bdd85e3d38d227d6176c7083b17ff7d71a8f309812f27e66e1dfc70302047c435bb500673065023012edf60a9df87723076811723af80ca04d9f6b6f5924a16c679698f782cd681121b7a166669fc7cf4d803d9ebc5845f8023100aca56994196b1b9d8201d549395205ce7ed18cda2599e3223e7c03b2a77c92d4766406b7ab10f8cb17bcb9a473297f1b0302047c435bb500673065023100b7bd49b3505af1512a62db8c2dbd4e0e9724a819986ff53cfe4976bdff52274b999adf7ea4c8f87be1f215050474146f02306cccd6ff052967d5181330e2d3059d1472de340c027a7dec93f07058beabeccb5014223fda872b7fb496b4c16f00d4f00302047c435bb50067306502306eeff19b2d4af3cd0eeb1c37c3bc99e3a544707028a0a1797845751214e8b0ea99d24267ebacd03593e1c4cecd648ea5023100a7475de595fcd9a70f69e384b8a1d0cd401a25344431be7bf803cbc7f117251aca0af86b84cf6033e229989535ddb2520302047c435bb500683066023100bf40f494993d5aa1b27d797a79c5ebf5072f6842140039deb6474ba495704df59d0966b758c0a5788faba22289bf08d602310086051291a1a6c63b2400d852031277777843b5d8f3d08baeb014ee07297a2068dec23572cf5e9d2d0d2c8cfcfbf013120302047c435bb500673065023100ab0cc3f9a120219835cf478615474ac456cfb69612a18ee927e5aed77ef3edb50175869c5e6448787d2560d98105d04802301ea4607b1362d8c7a6a9cd51c1b9c5ef820b105a5a2191fdea0bf87f211282522a213c9268c059300b8fa3651bb318dd0302047c435bb50067306502304f85fda4eff94e48f54fbb0579cb0fd2c37bfc593fe5bbfb6c2a38f80bb761da67b60795432f9a57202bc1f8f4c8ac6a0231009258ebe76a1891b125ecbd6bc6a2d14134e011b0c2dfdf44f170b55ea9702a59384fefcf52c468385de4c791dc2b60130302047c435bb50066306402307b975fbacc31ec1c3e6345a49384248772730caeedb989aacb94ecf56c39777797eb78283641a0438633306b984bc430023068ce5ac3d90aa3b0dacfcce2ae604c16cc50e0ab34d0a128c2fa861688d7e230d2901d609ae65d2875864bfb2ca444e00302047c435bb50066306402304e473e0461e753b2b334aa160d1a7cc234e52c7b930fac0e5cfbec54001ba2128713d9a70ccb629b7db2f285a0f9d0350230437d90da177cdf4488d19f7cd3f578ef49083d0bc121c7086a39bd8bd538042b74dcc103831e407955c04f6e88e01a560302047c435bb50067306502310097bcdb608edbea98a9c707bf9bf1c05316fa2c50cff86d701a6107ad38b85c5de59aa9ac94d9bdbc70742f58d38c0983023011af0c7460021deef61255d537c611c745028bc645cebbb6af29ef4d373cbcb6d7977d3af8c3eac7d8f00ca2c53f387e0302047c435bb50066306402303910f45b9e2f9885d84252ff27c03ec619cd08dba05cae0bc797be6beb68df67b1d1ff83cf8eb5d8f6ae7d585eec2a9c02300c2cd4447f3cbd66b74a577ec137a557a3dfe50d5dbabb37acd8ebbb250098154aaa816d4c2218efb0c08eaeef6ae8f80302047c435bb5006630640230737470a74f8e4506262d3ee2cfb3d0ba0ddc7993e0750b2c3be8ab1ae2e631a7f0673ca0db1d03aea3f2e010b1aa30cf0230329d658304cc8f343e3e71bdbf632367f910fd11c275d7ba1543f0acee8ec11f9b63461e81e6c1fbe41864d2605634630302047c435bb5006730650230075b3d1bcdff8250dd6f39e3482544197b9fc6630ac8d9c1de896181fbbe77c0ee5a1baaa7f9b110a4e8a660ac5b9acb023100ab3940168b06f1a9e87a9419eae4a937f701054f9481207cb04112b16cf43ab804cbacf31ecb00e479f252559b7eadcc0302047c435bb50066306402304b1fd5f14ac685092af7bc1723f6c027571e81da828e0e39b7847d36a35086cad3fcb6c3ff5c764031bed416d5633b8902304e863e9341f46ae89e9bb90c3ea52d04fda354d485b14c0e31b067f7358f42c188ed659b02d381a3a955fca867155c3e0302047c435bb5006730650230212645384c3853b9181ce2f530f350d3ae11ecd04b92822d624764d3985c34edeea9bf5150b2e10274982baaaee4a60502310082fa3cfe3c86f81d999c28fd8ad74dd4b8cde9ef078c672fa5bfb328119144e60736efa78feb9d31b44a3cd6d6173a8e0302047c435bb5006730650230109c317fecb7fc843cb8300da1d05f2476b7b6f7fc7043a9adff368c10699459e18086b23d01a82ae2e3b736d42a8a2902310090d9c90585758bc0feca970a998db5b0246d858c1e3bdaeedc66bf7150008547e1dd019affea281e791506ed27ebda840302047c435bb500683066023100d16c65bad5a963265cfda24cb00b5b27c0bb67bbb27265fce8ccd0cd8a8548d69353e778003ec44370f90f94bf349997023100a3e809875421ba821efcdd283215df67dd9fb7f1c4f420fb1cc55f50717968aaae68e18a76e48fe141a8f359574204220302047c435bb500683066023100ed5f8f6cbbc15c030c2b0bfb736ed2e8e54ff3a9bd9860502e4edfd460910525024df89e8eea99f5f4b217c328e380cd023100917e21052df5766b0b1090c1a8bcf4bbe0fd48d68c3b0834fcb22646e4391e53a08d2c51b0485d334e3eb8ec5cab2c170302047c435bb50067306502304707b6e8a1031c1b87788cbac281864a9040f7a9843f8856d6e1e8940370d7cd4fb3c10782dfa4e9b8da23000b297564023100e6d1b96c7fcecb9efe69f29254bdb1e943e9ae1f1773d7bc8404f3fb8b8a530722a958bfab63a48cf7e2640db0e1584d0302047c435bb500663064023055ab5769a3bd3034f0c389d2500f7c7b6ae66aa4b10171a90249ed1020356235ea86e7ba0e77d6c71ec62868e8600c7e023018613ab19d8d94fd20deeefcc164f6ba86f67f17e3e6e5ab10893f7627a322abdbfc562a78cfdf27e95b77062529f8550302047c435bb50067306502310091a0bbb93bd9bb7c24dfcdc5cabb6a93853383f6fdbf3e255992fa00c849134b7310849e3eaffe0f36b31749fa01d343023027641d6e385fbfc5e256c729958d97ead12242c0d12a981ebd93f32c913ad017dfbfe4f495cf430d1e87b8048434559d0302047c435bb50067306502310085251764a11ac72319d90f2a56c5f0f710b320a36aae71850bc9390a1ecf4eb367d7ea5f036990873e931fd44bb5ee0b02307b32457dbd6efeb42b06ef9120df40d44ce3ae0b57211ab49b4dfc880fd73988addb95f172b0d3dc5f07d9bb767278040302047c435bb500673065023100fcee87df045a4653ea061a4b96e39321c6dde5b75ebae1d2fa39cdebafe3e0961ff7e0c06c8d7d78c8779f5535df57ba0230423c43448e255b836339f3f008fe711f11ac847553a1c342330a5189af4ca6c782dc0113e8c0d3bf80236f9bdaacaa860302047c435bb5006730650231008ffeebcce32f1c935c9d3b2a6c6ea882a237276575634d6e047c70bd6f402dcd3d4f5e123a2208e2a7ee1a4a12cccbbb02301d1df612c0d9ecfb7d951d271f0ae3cb56f1d8d783f60b491f2c221d406d024e3801e8e6a74feabec69eb71a26f423150302047c435bb500683066023100e1d5186d0b2061c6605c331f0c83200a50b6e02713264c9c2e2b42284dd6f66150a8a70da0d7def39829c089c7faed88023100905f6de574b47f8b3318de248887abd2661c08809f721b4a690741382bd7aaa3e022913a5ba3907bc225a3d0b1ebe6a70302047c435bb5006830660231009424b94a397f0a308d9c7db85d8b755765343426524ad57b7464c49ccf25a668bf07c9867f28c509fd2c54463d37c232023100caca2907f6442d838c381ede2ac1c77eb50ef0daca30f13193e16f7c716d0e5d5eecd450fe38775887e4fd0f427a5e0c0302047c435bb500673065023100d98e90275f8f0ad928fc4e898ce51deb2508ab1541900c79831a66ca99c4e09ceb88bdb7e76a0685848005b0623d22220230517e7d5aed6c29e3533f309cba02fa31487699ab78f85fb9c6cd9fe5cc4530607038c44164bd975ed0117b7998b01fdf0302047c435bb500673065023100bc07cf28d527c43a0a94962eeb12ced0a2a1a3b4ad9f7f4d60569bf71e8a842c97aee97d0ba07d9f0fc318b5cf0a6b6902307ac4b191b6fa95f6897fdbf68ce6dca0e08d23528e6ecfdf0f4f8499f6cd1dc84a8c6866a6c12ce9e85c7e02f16d44890302047c435bb5006630640230399119f8adcbbe05a6c8648651507d8e3c2f72f90703a5de2d439f072e18b7dd8cc80382086b3e558a5edc7e2f6ad5ce02300c015bb179ce3beba3c50b495e6295dd31eeb23653b066199528aeb83024d8f5b6efa0e552ee25093a1458eac7aebb1d0302047c435bb500673065023017405901dcc7d0023dbadf48ae31e9008b104f95f8c2885ace73f0ab3f907effb4d9823d306a03a7830a028de882a25f0231009ea1828682630580f3f7af2b8db680ca6aab95a8e076ffc8466c21ba39d172b5b394c2e3a74fe57d4b6695927391983c0302047c435bb500683066023100f791ea92daf5b337f91befde4f2ad08134986ddd76b75e05d0ce4764767c0389257196f96cf116717df7853fa59d96a1023100de12f9dcf22246b704939d21b87b6004b8de1a0f15f5fed9f15e2a7873eccecacd8ba8b5a27f685c88664dca0de5a2360302047c435bb50066306402300d4be63f24e7d8907f2491a3de5c33e5533adc0cd24ce9562ebee31c93a5854338c16a940fd07e3537ad5e7e834641450230676ebff988b94e88f964065a20e372be4e34232d1c4a091f3e71ce891ec776761ee4ea95016e2c47ddbb7d7bdd2202760302047c435bb500683066023100c681276ede7410fd46bcf5b035a34cf5aafd58f7ba5c6a925cdae3350ebb950e61d1f5a4234ac8f2753769732616b9ea023100aee003b609bcd6df1a6da6ecf3e58a2f428994515bb29a0a5baf36a95252b477e86889fdad6e986a564a6d6757509de00302047c435bb500673065023100a65cb72f55d129ed295842faf8c2ec45d5c5c84b6b7a9868ba3f5d2f3d964b7b25ace37698d4165ecb214db7172f177a02300298af9d38000fbf7d01fce52b8e0eed6b744cd3d3da8e1f5c8aaa0af1322fb684e0170802926a708e4386f4744de9a10302047c435bb500673065023100a39e7a79fd7bb867fdb6692feb3eb452a71c8eacc6f1330c5cc0308d555a810dbb3a4f2f2daa64f9265bab2d3b0fe6cc023043d8b6ec3fc6ee8511e5ac8cdc6ac8e7f11abfa6adb403b4e25ae37b280df7557547ce879ba6327eb497a9093a0873890302047c435bb500673065023100afcbd0699291e3d72421aeaa24c56fab6eaaa1f8ba2cbdbb01525d9c707004928921af75dbfc410865ff13567eec338e02303b078a76f89331839aee702f278fae29e44e12b319065aebba38e48aa5be12f085777b1896f5549a1373de650000fa760302047c435bb500683066023100fc93cf7cb8101fa380a41c60691b8cce687d25671f7a487b44dd9ead7603a65e079198104d02ddb1862e1d81827c9326023100cee25abad06a6f38ab6b9d631fd66a07ced892b591c64c98dd6ee1c8fa6e7b3ab5d3ccd891bb5859366555b677a4f2360302047c435bb500663064023037d0690a8f0665fcfb3f324a7f5a16b1138c064a4f8378e22cf96cb10acba16676e1e3a72e15a3b23a6192bdf32ff930023020e2af30db54bf5994ee8a1bf3bf2d8b4362603af48f7144837f355a393460bc5d079b67ee0ef3b2abd36be627aa2a670302047c435bb500653063022f5587ac9e958b76b15ab81f61a370bae17bf0a49cf9422517b137d089d757d8f4eb219ac02fd33e31e1133c7ec38e4e02304cbba65c3936346bffd35199cc3ac3d61fef1d551c4a01d31dabd59f8106a16f61b3ed4179da06cf13ad863c57fb114b0302047c435bb5006730650230691cca503b01c66bd71d9455a1a1256c0c4ace372d145ee8a653a553652a804268079a9a7f4e410c0f839b4bb312bab1023100a63fc062dce654477390fcf96682af3a6a3877c46f0d4abd645178915067e7e09cee9935036c7c44ef91b0b1b72c9be70302047c435bb500683066023100caa1fe825a201632c1e680031809f3344b8d5ed1c3aded81048b84d8dbd06e24745c722af084dbd133e6da56e51d4b91023100d489132fde246d7f1effc59dd1377a923e5874e54e851c1c6622c039b9678524a243797302143813ca5f2acc4139b30a0302047c435bb5006830660231009c90e5282db4fcda35d7bb079ee9ee9a8b816614bb449a5923cdf94aaf12fb5452c2837def4cab356da18f4da789bfef023100e462e796da54d7d3236d091211a05fc7f30ebd24d77f2f32c377b7b648bc53ac0fe829aeb7e9e81391694555cae325730302047c435bb500683066023100ff6637d984dd606e8e24cd4a47b61f23da0cabe0e37adeded6dcb73c7425cfa196b750d018a9a30b15ab5f1f04f1a749023100bcbdf19f66e47dfc2f332a4b1aa252d00191c9d321b3af0c4dd87f5241838cd1d33a5c581c44f56555c39e85779dfb7f0302047c435bb50067306502305cf5ac443942d2e6eb44b48315228da529dd05071814c398e32b24d49bca57681878626cfd5230878835e8048c4b014e023100bcd637c0ab8cc600f351ee76f79f378504a93c66e4ce79b3b567cb5528931889760f3418bd24b86f40c94c83e7cde4c60302047c435bb500673065023065e55cbe5dfad7126768098625df6fa8447ab3c4eb5326385bec686e5315a73a7f352ea4dc4927f7d590570514d2be8a023100ecf7a57a5f3e4fcd5e4bbff5c83c95c4cdc02ab945517130cfa173abb5dae004c8f1ad312710be174ed90c6e01b7ed8d0302047c435bb500663064023066ce19061808c2d61ebfcd56fa1d7267df132933f4c73cae13d649e0d2c8f2c0575f81ad0cae8f0fe16e94fac513c94a02302b4ba267d158feee3d37cbb1262c48f5a9f6b43cefc6cafb907d28ded2e00082bd911ba39256b44309d132f3ef017d210302047c435bb5006830660231009c68ffbf56de6f1449d6ac73200fe4ef559da647320f5996c9db06e52ef055c8fc7a599423f93dc96cb9bf6846b1683e023100bca1a7b630267e25f10fd74607d8c5c9cb0a56d6b23b42894c563f3408c80b839f5798d230a5aa9cd874302b549057880302047c435bb50067306502303a2d122f7a089fc4db72e2fc2771281b5658cc371b0b4b8b276d162f81442038c2b5895f820d2e762d89df77a91516ae023100b7ec08b5694f5ee572ca230e56616156a19dc0b4e0612e6469d09745e2c5b90a25a113462b9d088d9b9e4b5a1d8bc23f0302047c435bb50067306502301193d2386edea16763ee65ca14201782f06d2febbab1943cda530f61c820d196ecd6b7893d54eb24ed3cdf7d8eab162d023100c7eed2dcf8c70ab782c5c9e0de537ace370a6c59f835082a78d6e0c406b5d4dfdaeb72afbda9ad6b674d32471a3afd080302047c435bb500683066023100e23c5e796875dafe9e77b9af67b1034755ecc0c705c33e996c1b681ca4e504513b581fc8b70163801c7974b767a0e112023100c5d888514c9a7d5283dba146adfaf1cc9a5ca226e95fc310167668270da5796bb7eebf2912d0ec2f082c5bda564e1bac0302047c435bb50066306402305d035b3d2f9b099d5de281f46db2103aad660d91b82d72428e6ff098894fe95af313e22936f20e0477b1c8347b9585f20230224c6902fb90bdd7409b1f32c6f685aeb1360a46bf7a439f9ac274726ca2c4695bd9aa5f6161813e49e0f3e17a7f64880302047c435bb500673065023100ea1a5acde55b3525a301bfbcd45fa0799044788b400811447afe27f82d8d45524efaa856b09b05ca773bff13ec86edbf02304e011af50632d86576f2962a1474564e1ea6db458ae3e1817bc9689faefa93ae1ec57d488a9cba86879e736af0b539de0302047c435bb5006730650230503259b77bdb3430d1a1cad234a81439a2abc13360a3eb9d6567c71b1b02618eb4fd0da1b274746c0f7cf06d34c6e638023100f99fbf5a65fd19e62e7686afd54727dc3eda907fde03e9911c28095406e23d6d6b8b9a7e0834780816540b255e14ccba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023029135008c09a69459f971c8f787acdf374802aa5bfa7364cd28dd1ac3f12985a863a7b19b1dfef3ddf3d4d49fead3285023100e6dac2d9426e7a2f27193f5abfd648b89c134fe57d74cf217a755071cd9b8a6de75be9b56f1d8c111dd586fcab0bc4730302047c435bb500663064023042bc1b720411d3363ac7b6b936d24cc45d18030df2aea3ed7879429d2b1760473f5fbba9c80188cf41031cd35c87886602306cc1d567f5ea6c0bc0755aa64556978cc7b64097461d37be664e79ff7fb43d50ab920846a3e70700274ee67d36a474290302047c435bb50066306402302e1dfa6c54a43c4d69e2c5963930058ddf67ed41735b8f869d52886adae73fc3667a68e361dd24bb48af501aa46c63bd023039e559a0144dbc578cb20ae31819405bbdb1ff3fea17b0dac3f242cefbf2315c06b22a1c8ba6b2fa3ccbf2d577f9a8aa0302047c435bb50066306402301a6808ab8c8aa112198656b6de8dd201e108e10d4822d8165e30aeb3bb7f0ff547f0a5a5190a033d7a668109c71142a002302f353d341f6a8e158594be400f4f225a43c094ef613e0a49e17d10092ec86cfe0c07c9e57b97898143cd59b7ac197a9b0302047c435bb500683066023100c046855d94d26917c20e55bd95aafa4926cbf0c9e86656b4cfb66c044a2407480cb42f5ab7d87afa742d5ed9ef1b63d8023100efd4fb523aaa0ec985059a3d4a8c012ce5101319706c6e36ef6c199379201cb0da5e54500f5b3dab3aa24a24c62fbfe60302047c435bb5006630640230414c31f2ea8533bded7e8582cfded25b5672126ea087b5bf671f60c18b0eb1c9a5a686468a50ae220b97c636b198b384023032cf9a09249af6a8d5d5773363ca8fb473382f002565afce1cb8b70f627f515bb8be0d3df591f35467418c2e02dfa19f0302047c435bb500673065023016bc435a940cb037a668500bf95c721608d83a230ccd1ecb31e197f3a63d7020caa4a2397830ee2d2fe3d2321ca7b72f023100a31fb156d66fc6817c5d5a2a89549d1565194b385f54b04f08cc650fb8d4d86c7930f8ff5b25f8ec327ab68cc80b3e410302047c435bb500673065023010dd4c4f307551b69dedf016fa560b311714e3448097bbe6717a4780f89431d6b1b79d8fd036641704d5e79bfa7e1b3e0231009fc9b0ce4bb477e37c39d8c55dac527ab674b8d81c1147a60e1c96f5626b4bf1cd38ae2c0b272c9c3abd0f3d5cce263b0302047c435bb5006830660231008a65e1660a207bfd6bca145435a94d6ac95d9ded07329f1efdfb3a559d7c59803d47349083dd158bd3906dd02a567a9e023100aa06e1fb514741c7cd8496276d49e6c55ee8722b1b916eb3cb39d9db4417269e386c1d7168542f10a7d427c6593f6b640302047c435bb50066306402304a0cbbcffbae6001cacdd48f718e5ac22e9e2d315591d9eb2abcf7f3f15cdf247dfb1b1639bb10f7f44937f78eb947f002302e8e4fe30262d7a6a88979d637210730a0b51e0f3217a8db40804306708717f541da929e9536da5a821540841b126ae10302047c435bb500673065023100c852ac399efd97eb4935e98bf894cc9cc5caec2bc600953c8b65a8eb7d5cb93fbbb48f1b1e61f9ba439ede79aaab36c002307ee113764395250d83b2600155c4aa9d1e85b4c2960b070d5de65dd695aaddba878466bf1eba63591d247b757d5589b80302047c435bb500683066023100fb7bb9ef89de58bcc111005acdca5702ca2e1102a7fd629b5ce71d79c7eb742037b273a4b064b11e05fb17da70ea01bc023100d7210774be4c56af77098b3b54799f0f176282bb68f2be49914bfed2fd51cb550dff2b3e5e81a86f8e13e48bbb08145a0302047c435bb500663064023024790a0e0b5b35eeb5b19588137429e9745349e9a043c11d57f088f1ed34b6271516f8b3abdf8e3550720aff54c09a2802305d6a66e9d0c4ff6b12dd24abd665b7fda7c198fe435c1dc34bb73c51308d1305bca1ad07a71fd2371c59c932769a13070302047c435bb500683066023100df5ac08b584063efaf00e6aef51928c79dfeb5ac5027f9a2fc8f8e10c935850a48c190aa8ff76377ef74b42ef1fac471023100c4e73c7bf5f87e0d2622255b63073782051d84c97e3c351b663ef295dcc11732ab5a9ebe88b5dd2ad9667af52b1fba440302047c435bb500683066023100e38c3c5beffbc113df28179bcddd98b7327163fdb7d4d77ebdda335f5bdbfe6c5c252fec6d06890a6c1b95df06b0db8e023100aad8ccaf028186873941746c3d07af32354ca26bdcb253917a74f64bbe38d8da1ee65d494384cbd41dd4f46f8450d0bb0302047c435bb500673065023100d732b528eb8a4f2747d636d0578bc0c94e94a504945d8518706ac85741a7df30c02cd15243dbe6c507f75e5408d3ad20023029946756a954386e3fd535f1b4185aee3443df72cdbc525f062bac009799e169058327cf8d5a48b36094a86cfa7c73110302047c435bb500673065023100ee4cc6aaa784601eab43c9f43ccc54769a53ea8424df011028e5282082984c3b9966b7aee7df57d5f1948f5974e408d002306950141066e25670b967b2d6ce6d7f8885e8f069ceffca8f26f05bbb0d2c0558e0458bb08bbcea02616faea80beadf540302047c435bb500683066023100ffe8ad95ffc3ba4250999011b2953edfb78d3dc67eea17d8c2dc2cb51590ff82f3c7c9c3df285135c28eaedb5c49559b02310093e8debf66cea5154a968e087c03a5a42700897287f1525618326853cabf97a3b07f99dd35f7cfcdd52821ab2ae142580302047c435bb5006730650231009ee2a85bc71c6d901cff764fb48d4503d4353a8397b12c750232a9d99aa83fed198b83341198309f24f274a3b0fe787202302205bb71e302ec0d3d4b32214e42b8c5b940069d1eb636b2ade9caae003ceb261dc9358a3bda268c2e55b65c3b71e29b0302047c435bb500683066023100edca7cec7d31cb0bb926aab7d687eb4cc90f6fc16f85059675d101ea5adc0e3a464ae0260f1601804e77a2496f35817e023100bdf1955954210f9ee462b50e4d12e2c2560fb31ced3d8cbbf09d11e9e3a04ed35608b646753ae3bc3d27f9e3db51c5530302047c435bb500673065023035d624cfc4286c065d755d423e50a77a152ff06d85b9f817b3b6b75470e170c335dfd7bb05aa5b0954528212331ba697023100a6c6e4e285169047defa3b219ce8e56ad04b31a86d6d4fb381f04d9f14dbfec9a7a3a19fb3ff11879962eccb437bf9110302047c435bb50067306502302d963385856361ce8ede05c79f62208b0693bd88ffe467b4faaa931f0ef07e88036082a3f5c53a8e2c199a72790d913702310088c97727e6dda75ca830b7bfca31cfe46de36b5d2a5b5eef585cdc65d9d684bab5c37953ba1f3dff596a348290d003380302047c435bb5006630640230507282d77f63669029311b07fbb516b0df7d345a8073662c36c2b273a56ac0ca52db01d2fd8b07b8a93155df166714e802305938bae35298bde2a16f554960a09f5a629cfeaf1accba1fd87b54fd8df812985082f9124aba58393a709804e20a78b90302047c435bb50066306402303a051dc8f6ff6098b6d0e6ccfa32b92367b9851939493568f347c16d315ae74b935f2b39cff9294ac4e3989797f51d6302305b647c812a2dfa54c27d146a596846b094e31f80e93acb82870194d996fa196a0ac837094a194536da3608abf5d1f7a60302047c435bb500683066023100c6b370d1d765fb9eb804a062b7a744e8ae24cdef01ac310b6ee8882e94274ac58a2a389b97cd8f387fa8a1a68d691183023100c4db53bda5e80767c5cc96a1594c9947a82f86f5accb19cefa513dd6912e700d904a5b4e428b5988793130d36c85845d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301904281f6041913bc973c8842ae1766559919d8e92f33f72de9540313848432e427a7f0862ecba9a567f731eb80f89460231008dfae96bba0b4280b11d3d313d42f5fc2b4bef2dc744e2e7516a66a46887717563cb0250ddd67c17d0830975eea7f7450302047c435bb5006730650230480042c250a19d407371065d5791cfebcf1ef03c51d2b74b185491a499dcda36cf50ca893091eabe025d3664f9df0559023100d09bf13e297fc417a1bdb40f46a502576d1e41451e03901bc47eb2dedd1a3c242df098adea4ed6f8ef2d6d56bea430ce0302047c435bb50066306402307123f3a02fc1f87701feb9b1ee4fb8f72e8030d79070368060f5bbe27bc90504fa2a848b87a858880953d7bcab9eded2023014d56979ee80c9e50f489847903bbfc7ee21a1ac116dcbd86b93d289362b34988a464b11e75d53c23494b99e35101de10302047c435bb500683066023100eb43767a097d160cd27a3f5ad8c5709a1e60a378a317564411282af5a17bcbeab719125791fec7ae2200b4a7b3a119fa023100c4be2b33bb300218217b36c2f34221799b68e5bb89ca6343a9de24d2e62ac65e30023d19364660ff6e4c9e8a4e4502ab0302047c435bb500673065023100f6569c28e47a6fb78e440e35bf3c2498554a4e14a84ccabd5bd399446b2d8506346a7c880c17c050bcfe9d7fdf71c263023065e9edb0d6c0d18a923d68f310adac6b8fe01363f17f91a213b8df466f7e291a4f1beb38d506e60069fe1848ffe29c590302047c435bb500673065023100bf36b6e9608f5da96b3e70a631b812609a0d1c00344e91196f541c19467b140256fd3ea238e38b8fd5e54e700db98a6b0230614b39f055bc883b62529ae59f58a5d72a06f30aadfa3c5b937841589e93c5327182f3130f319c1a368aa4f2deb356390302047c435bb500673065023100ca49fab835e642e9399bb495571f46a69a7fa290f496f3c7b91a16b30c19f3194a35c8a10ef839ec4256eb8e8f50336e02307f50cb3329a52ac67593ee69ec685ac9bdbf68d2a79f52b50615b87041627ae1b957eddf24e2cc8f58857a7e85e760c70302047c435bb500663064023013dce9618248461552e18ddfe28ddae9832f7a74389ce12636451d861f43a3d79b7afaf0ce85db67cc7b4b3bf960db4702305339ed59f154ceda677df6309fc169fb3fd172e7d39bdffe837af5574568162cbb1c989c1ca11e9db84a1e18380622dc0302047c435bb500673065023100aab81324275a27e5520a2c5cc12b40c00d881e3b049841859f7b971453b91d6c29598e789a9bd8a72b70401b374358c602302b02a98204d87176f5c865e650f703a44b4ad3fb063550eae348b59d143765e2bc3ebc88af1ad8f15832ceaf92a0b8670302047c435bb50067306502302f6c5e3792e81355a83e80b18ec44257ec4fa2f70d1727fc25f242354a8118ed1069b256dd4d42966106a2618f73a4280231009b572328d311606c8c7a3cdd4c90547446c144d1d43a9827bc33712d4b9d325368a5ebde2112db427d4e9eec2a9ec92c0302047c435bb5006830660231008e140304be9abebf4e1c680b3fcd94c9a046cb872cb69b423644240780385d413b2dac3eecb0834d7d87f7d22c4049a7023100ac7e005463c6c162a0c41a790dc5644797b147039820b6cf7a86919b56e5c31320709707d076dd5036d23efee7c878e00302047c435bb5006730650230652768731ddcc823d7292165eac2506c3449b7cb96c4db3330419a4b2618af9c91fd6381dc6a369b5d38c27f762cd3c9023100d482fb967b15dbe0386780565dfcb76b5d0954ab8af635388b6a4375c73c66fbf8fd9e6c427a33d1068ae20f7773f1010302047c435bb5006830660231008cade01243fcfcf421027eb416b422d13a38eee74abd7d616cf6f67d882da2303d8106a706d616f8bfebeafbb445f2e3023100d194b900b3056b96ea468afc97cf95eadb27b3c2eafc106090e76492f579868face12540880e677b42b1ffe3ee2c205c0302047c435bb500663064022f4e4cbcb383ab8ebf02c86421a5dc277a286d2ad9bf434910e4360692394077c104c65b65e5e005f29de6cec33c9015023100fafb053226e0af4986b8a7e24d0f042bdcecfc98792d59f33e414ce0db346890308d0063c358a7e1de83a1846af646130302047c435bb500683066023100a2e107e7ce2debdc3bcee2e5f36512c202349b6fafd5f2c7c68fefcbc5204dce52bd3fa47a9f724fc955faf326bacdcf023100be865d67aefcb5d0f5dd5cc09be091ded0a0aaf29035263158ce0ff8bd8ab6161cfbfcef4816086033120adb41d9c5ae0302047c435bb50066306402304809700093e6b381f40a9195e8686141b9303bbc40bd36f9d93f4bb4c7670a6254792c2ad00db7a1e2ad7dee259854f20230471b61bbb5306ac7f17800362833e8253853c1f6d91401ba32ca73e7420bd790ba97b86b13af8620ca1de922507587800302047c435bb500683066023100d39f5e9cd782c4b1ccba4cb56d4881d58a301c26ecb9da862bd671a9dbfe754fd6af26569d8180603dff1646b7b474d702310090e2b4c71275b3427d8693fb92bdf6bac506029ab5c094e2b862e79296704228faa70db604aab00a8658d3c22e1573c70302047c435bb5006830660231009af0fc9d688b0d3fd5bbbb7f196f3c276b36f88ace80ea7f2057fdd3bae9ad151db0a5237aad401b0abe43f41a0a0eb8023100b25b8691b2540d416e084538fca66a52a79414fd746e0e5a68e0fd87a96f3a76f766fcb7d2a5e2dbb88253457ad412e20302047c435bb5006730650231009fb71a61ed92d9a9d048f8e95737471cd57a4ae9344af47e49b11900aa5d6318e2afd6b1676d33e3112444f62fbee5e702306e979a034bfa8981a622fc87ed9fa32f10e06268dfa44b5369e89487a4dbc6a70624d730e3e14ed4aca0b23ed8e171a40302047c435bb50066306402304114b8d4eda18595629de4aac1d2c27544c22625a6835993e8f6c565dcf011763e2c0a6b042dc3d45c77d3da184fd9f702303975f4fe08d1b2bab6fb7c2dbd17753777f2430426dd8405dd52850632aceef4933a954fc85ab4f3117ce51872bb5a2e0302047c435bb50067306502307fe2a68a059c33258345966495428b8f7aef6408c9457dbd8f964780c59e56c2ea6b8ceee7ee8c4487474f7cbffc0c03023100a15bd8acedaa7a86cdd6f9feeeb414c544bd3060f9b99213abe360dfcf2fff7837a6db9dffa643f9290383579a0d567a0302047c435bb500683066023100a8a3d7d6fd1fa83c3904ee4c86f568c50085bf09eebaa642b59eee3b3741f44080206875132ec3f4195e11e45c58c11a023100ab1523e5a36c147e723f4e4d838ef2de491fe9147c6841444f03be784d86f2145bda1fc0102166f5a64a81ee412b9bf80302047c435bb500683066023100adb4bb521b3972c0ea4ed0a39ebecfb9da6bc6f79096adba7ca7ba6c782973e03da16c5d5ada1d06a7ee3cf7648b457d023100fbc933d4366582ff6357f26c0c4c49e23dca80e99506c8000174d87bf0d3176635b5815dea5e83782214d17d200265050302047c435bb500673065023100a7e922b9f55c07669338f81609e5d97c0c4e3410b1f595002c5faeb8482894dbf4a371e2ad3bdcade584d398b3e1cb68023024ded77bfe3d363d4f07e004c6a49ecf49758323f7dc73accba48b28689f3cfc52f9c2d28ffcebbfb8d9276cf687a3bd0302047c435bb50066306402305b3f9d4cac8e89184e14f600139a437b5dac853583379405fa03c07194e5b50388278ca2da3943e81c72f336c36fde5102307c6b4934f33f4a3c66bd395104c89610c6803fb5eab872ffe53d7c2e12afdcbaf88ec0a46ab5e38e15563b55acc887590302047c435bb500673065023100bba72b533226db3807509cab39f66656ea871723c942c839dfb2f5bc0546a4b224ea762a2261743b3db978e46d8b159502301b215d48ddf9fa3dd118c79b71c53e3643e57183d97e228c8cd06e03475dc9ddbf37a5e1d442ae4798800c0b28ed20ad0302047c435bb50066306402307d9b05ad169ef3e98db89db0e14580eb72382480898216319c9aa1560091335b0509b54d58e6b90b560538b2ce216dbb0230179daf34040baa94ece824e4f1ca78855138c8a98e3a98a53c2c0a2f274e56539410ce2fd19fe0c5cde0fb650eca354f0302047c435bb500673065023100ea268ccd95f702a2958d2222fba4c0f145f788484ee3e74a76eeee808595e256071e40cebd088edb05635e69ffe0a17d02306dbe645885ac136a98bf447be4ca7193752d62a50adfb0ba9dd75140164e554f29ffb008c528b61ba03f6dffbd9876780302047c435bb5006630640230234c8d1d37aadbf058c600077b592e261255363717ef918837d8948a3d5075a49eb4c1f70f1cdf6d0368f02499b7652302307f53bdfab8e32fe5b367c1783b5e60e1950ba16b665a1f4f332cba6e513b5121f0b71a7b2aed67ba3efd230867417a530302047c435bb5006830660231009daf243699fdb44e0ff15dbec9be032f1cb541a0b0f8287859d62cf26dde1d8fdad7526754beaa7d30ed8dd21ebb2ec9023100d4bf57b5663bacb66b80e682b8b67a86c7ae1105e9ba5a3169d9217d979f2f2eefcf27855ba72f557635e8c88dc14d2c0302047c435bb500673065023100db51bcb73f0eee9ef395eb179bb89f743561443237f705799ce4b3d37ce6e8751756620cca8304611ea0514906f25ba902301f8ff280313e545efc143e6110710920e6b6165f180c5a0700e4c3618f646880f46d2ad9433a885266b7f0234eceb89b0302047c435bb500683066023100d757f40f2b1d69cebc5674a3b488d7f1c46fd21402fb4c29a01e7aec34cfcfc5b01085f281246bbddcf01fdeee92f1210231008520549962583b74744ab8ba030a57bc9f525ab2acbece763dcece15e30a533989512864e03c7a2740dde612f63fbd160302047c435bb5006830660231008efe61bffc33093f25821cc06372175e88e20d27c8417607324cfd1ef768ee6fab6bc103f959d4b46a560d4dc72424ea023100d0fdbe47776067e416bde77beaf12c8ce28fd65741348b09785c73536b587d16f8220b6b82c99e739d7af4085788a43e0302047c435bb500683066023100fba0f75137914764ad92f1586b259f26f6881f12348bc14b2b4eb87018eafb5c571b0506bb4c820c5539f2b4e2fcb85d023100a96843ae2f86cb560b038fa7c408198a6320877f6db10b9b41d79ed94757df9cd28b6a1b168744d3725f019e5a39c9710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f25555751a7b24301a758d1b36642ffa208d5484edf3b8e017e5f8239fe6d95a8cf854cad4ea07a743465e35b5734d0023100dfad2302c75d89ae122cf492c6b13784c61a7c1e65fe55d90dbcdad64f8a22265cf125cb7c6d72b74253052dd213c99a0302047c435bb500673065023056c0536cb0bbff73360ff0a81534aadb337cccaa5b097a988329d396c2e3b5317a606cec3156dc062bc1b45dfe0f57af0231009e5742bf2a15970193eec65068f7f285a222aed1d90cb1d2d065cf95730bad1ee5aa8403744319864f735f40bc47335a0302047c435bb500673065023037082a1241e22d729916cd55d3c570d6e2cd04cb3c4027c017e439918bd750e23c6d623aaa6c6a7d9301a4e92adfcf080231009bd7741213401ac2bbf1b6ac0d8bb0bcf8de0506ea93d8f288a2b409206a5a95fe200a5e024f3762007f0b686e87b56b0302047c435bb50066306402302a5d46974f279a79476734bdef64c3eec077987caac81d9c66707e4fd7513412f3965b4b239117f0c563a70919cd106a023015348a1251166980a1a5db19c75852b5084d89e2ee057e3f864a6276215f1062d7407b88237037bbd51a8c7cc7cb24830302047c435bb500673065023100b5ac86111b599b4f2f15e4be5a0db3a722c936eb1b1e9914b6bea4cbd1740cb5bfb4cd53d22bcc492e2c7eacf52eb69202305f503aa0fd2e7169b73ff7f164155ab5c6003b2100b0ab8d241d99d6b17b32d6bee58113d20c27751d01e48944bb6c7f0302047c435bb5006630640230073810c254eb6cb582c3b4175133802de215b91d309b7c79df8e736664a11f33a790095be99a8df83ad55698ff83b8c902301a964cba758463d1282980ac9736d0345f404854a5d3b2886a415d26b0f7700afe32d80c805462465d25868a4db8e2490302047c435bb500673065023100bb50b4f302fac060f81d4a915824c41ffb4497fe782979def11f10f4b46f5f067cfab4183497b3a562f2bcc5deb23b1202306fdb3d0d60ade7f42b97aedc5e9fbd79cb7876a442656179f263eaf25bd1937fb268e0264d564d810833cbef1011b5470302047c435bb5006630640230124ea52daf97457b219aa1ec4b7e22ca4843939bf46b2e4be3e5f6a760d2fa6d1bec0b00b1a29ba435785eef069005ae0230432907fa4fa16c585ac0f03ea6ea12ddffd5ce9304d0881fa3cd0e31d3e267bd259c49ae3b7114f3b4a83f435c4dd2780302047c435bb5006630640230214c1bd27a6c415004693de57c807bc485e505ee82e38ba69a236a227e3c7dd65bc0bbf970cb1f75d1cd606558da290d0230653cf4c4630aca8c1550ceb58c88c4a66a6d8cf316d781b4f23eb8f4c25f1a48c5e060de0cc37a48ef2241890723428e0302047c435bb5006730650231009a08ed4e07e6bc4f4134a929777a02b5b0f3df130989c8a054d40fca3e041c08f79153e28e70083686395b767b20560402301c84ce7dd7cdfdc01acddb911d4ca475a865de69cf0a79680c8ef4cd3291e9a95558d4d2e576c328b9dcdf43404e7aa40302047c435bb500673065023100a6022b2c0dadb36e6da62a3d2f05e166cbd636a7f3091cc0157ea761494ef39443add0c430d2e4e8e531e4e8d649f28e02302245fff21e728f39609330dd5698cc6a89648a047fa9cd785c95ca3984eeeb9291ebcbbea13db803d68137a4df614a310302047c435bb500683066023100927b8ae5cf59beb14f80237d094eb7ccda9f8a5a85c86e56b93a938368b99ee1106f24dc5f9245504086cdbb9484eaa3023100c908487e54720f90a1be8bca0d5945116b7a78a5d5f982691de9e87e68cca30a8036dffe34ae22c34e1704896984b1600302047c435bb500673065023100d8bf3bae2ff1a84dfdfb6127bd77956da795bad1b070b47fd13e58d9d5004bed982516574ac9002fe22d312eac96ed37023021727bc0a2d979f5354468d506f5581d93ba9f5c375ee90a069b2e1935e26971c415fec5a0b20445588ee2ae91db0c550302047c435bb500673065023100e5b15ad34f4d21cf0ab1173e67938f9c8cadfd04d1f7a35603a33ed5689eb06c62d27f603f1a7147439fd96d9b51db4c0230110fc0b69efe46dd8c3e14460d49da53625dd7fc31d0a6096f44dba166740c3b9e413e6b0dccf2572454a44a95ebd9b50302047c435bb500683066023100d49e3493fd4744c0116a13c3f0c07926dacad12d88635fb213849a8adab721720f1057f238974860c9299c1570f92e7b023100ee4a30c50300d0662a4603b6fc3608e2f4a8fe207302c8b6e01025041e37cfd21f7dcba5eb96459dd04c73d52767fec70302047c435bb5006730650230310383061847e7db98a5a6a7742ec39e4e2be390d5daf2d6cd833a0f185b2aa6771861a107f209f84f690bf50e8f662b023100dd88653ea7d8873272eea0f62c5d9d19b1ffcfc62ec45ded863ec3c05c7017122f02ff30f775c77371c98d6a20bcae3f0302047c435bb500673065023100af03ef7fc9d7fbfe2948d62db0196b6aa680448209ca46cd926109394fba4135c0437259fca99626f6716657a05b2e3502301c6c90a8ad2bc3480dbb29c7159fe6c727a3f04a75dc1b741b687246193dad607487dcf381a3a98b5c09010a9f6c00d00302047c435bb500673065023100d59f1382df53a6b4630dbdc2841e08700ec0470277216fb8ecba21ccdf062181e69c158b17555ab558a1945f630db34b023030efe9b136e47647a15737360d7d2f5251dcc1b4c890d1ad082373b07d25285b791e7983faf992e2c9ab8d9b0c465a020302047c435bb500673065023100ebc2f684eb4c527719cc26e1b1f6ae1e82eb5c52ee52a50b8cea8a29333208706807aa7eae20f961e434d2dcb660cb8a02301b72485d9673c0797166b91a110dad7871996c12c618fcf214e3ec2fa5c4f0b8f6a1e97175adc16ec3607cb81dc705090302047c435bb500683066023100ca03643cf05d226502d8c41ca50c91404f5a9f196f46349d2d8a557f80d29cd88d41b0a1bfceffe813f1fe6d8e95d31a023100b62ee753379e860b52f8b5bcb30be3862621ae44e9082f6ebd87bc52601a7d3bc8150bffa0c59ae19c111ef66b2920610302047c435bb500683066023100ecceeb2c834a7e7d6618d4318153f6da2ebbba8bc4991b00ec427a5b392310f99dabcc6191236bcc5e696d81cbc8a0850231008df5254c84ee1b2ce419fdfc44e4c3680f32c5038e8658067958d3460e10af8f9441b558bcf617d44be97407b71779860302047c435bb500683066023100ae7e27dc6e068c1578176abfe48feada65c6d7c69fb3e16ec9f20596fbc2713101eb929a14f64d28e0fc9c1f0c268b35023100e8e4d625f9c855f318d6b0d9cb65e785bea0b5c27d190a1b0f48360bb642153b0ffbb74edc4a9479156672197553c3b60302047c435bb50067306502305289b40941711008cbe1a658270846e47ccbb1b34c161a49f4692b92287deb5ab8008d5ad845995e5d5059f03ffd16de0231008a9225f8d441359228795ed7ebff38bb8c8666d3563954be10490e1f45b0017120559e7f4e25e5a582dad59be778cf850302047c435bb500683066023100962aac98867cb12c4fb9aed85ac30f1c68dcba5d7ed24e257dc0e7d5a2cd4f0ea7d60a6a984fcbf2c54616acca7eed970231009479e730a50a0fd9c95de93609931a23dde173bdb679ddfa185a59714016bd905fb8e80e77e7930baeec8d36cd39fddf0302047c435bb50067306502307b606aed31b80a9c204ae8d5389591360c0017fcaec58a300295adc4a59bbfbd24215f03e6a3bd23ba4e68feaa36fc2c023100fd3c943321c38d684508de6ee053658a08f6ac1d7dd3ec23322152fca2d050c753a395a58fc29d41fed63e48a9bcf8e60302047c435bb500673065023100c96b23a191c61b39d90675809c732235e20a1c310eddeb3ca00a99e43f50dce504e3715b286f3b77e490ddfa88cebb4602303f96c194390d83acabe92ce00cf35ce2997eb634c220239021b006c691878465ea5f03edb9745a01294b9867b8ff2ef90302047c435bb5006630640230402d436ceecb251c7eafca7d675a7a18a00d9c1a1bb2784dfe7e6963b4bba396ff56bc1bcb9243aa091445c5e08e83a002304514f3cabc8c9266b153c0a722c7e3ea39ded5b57d3346789b13a58d8d60aebfdd51da05278775bc096020eb2a1dad0b0302047c435bb500673065023100944a86aabee7583ffaece2a9f05c20f6f9093a968aaf3f57da680ff24f78b3c4bba5b0703c6074d1f94c3bf0a72a152302307857c18a127a6ee20569a78887164d62086bbc9ac0fbd0558de6ce742784a4bcd75aed4fee876b1a77cedf58cbcf4a5e0302047c435bb500673065023100a74ee0e9f8c6001d27f0b0d0e22425ea0d0f2520e4cec43790992c31cb52942c25a54c16cb7371949bdeeefa84aa579302307c8496b294443e38eb34a8e8b78728742eaefcc9ed4ecccd4de2a1c0b00ff37a4542bbba689062076bbac86a9b4a7afa0302047c435bb500683066023100b239ed862df01cd0277529e1244bb6f2b20e5d5d5c3b9dc0a8874ae999d1904b1b9f289d306514322b40adc12098f59e02310094eb15d3cc744cec368bd1387875c10bbdc1eee946edf6daa6264742539b506f83097200235efdb04355e24238531a1d0302047c435bb500683066023100e2c1a177fc543c00a93dbd3afaaf4a0e256917f0eb49af0f3dc282f7628756a659b2bac4b58555e89e867a3cbddb004c023100f7133ea79ac37d3f60386b59bb6b99fa508c5b5a797450aaa2b2d06c8a052aa4707d7d9eae1efc17b9518b0513066c8c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100920f7dd601994509028b24a3c95d58c360e498b9261f2e134d95fbf53c29832736136847dd75579d2bdcb84e075586f202301159702f6a408354ba2b7a31f953bf08c3e0fb17677c98b3d75a9bf23d41316724756121e844eac5e95e48ceb410785d0302047c435bb500663064023067ad15872d688a462910ba42e9fd5f54f3297878b9d9f247561d7debb9f1f5b5dce3a947111e3e24e1ee67c8de87200f023001ee4ce20836f40d0afc380c2215d6cf23ea88f9e6ff1fd3956320441e8fc4ed0bca70dca354f73bcad86297deedd4020302047c435bb500673065023100f60493383cb36c531e8f6012e25624ecd37d864b50184a6c77056740c265f85897d78739842d4560d7b018f4eae58d1002300a63c111f5792d11f70476375f5030b57c57a056a0842076944e2c23e2a55e727973b332f6ff4ccbe1899975ce316ee50302047c435bb5006730650231009375513664a4b6798f7e12b2442da2aff5826e653ba1558fd80be36591e336fd360408e4164eef285265db376334d0be02301e5398fdb528f82da4e8180de5b9c57f50eb38a3a3275c70e49bf56bea2efe454db5adb854551ea51bc39a09112fb70a0302047c435bb5006730650230772ba8e66900705fea036e3c4746efdbf31f61f86f9fc7adfed3a32a6b9747329330b546759c8462f6389f0fbcf4c0ca023100acd381aebd28006287eadbf5f282340d321486a486baa17f60f5119d451a29c7e2b1627e73013ed30f1fcb425dbe65700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307009a34052bf183522c5e582914b34205fc8129dca5ecad8a1a151462a4fbc056a46b3bccd92067d9aee5241fb983dcb023100ce69bd44c12661a5f79c1a53c98ed0e52563d417e7b9392443b85c2f2296fe5a6c54ed361e4263f4f0019792509cdedf0302047c435bb50067306502310088cc2f226fb02a8b3223b58070e466a7751797aa206b422ff02caf4b68e2a8151809925cf19e0eab89bb4ab76e6e231b02305d9648a3296751507bca697be2bfff3531ea62c3a301bf8e0f791c02683c07d9467b050362d0620f538f7b5a764c05570302047c435bb500673065023100e60b391e7cd8a75cdb2661b5d2e9a395f243c5863a7ca1c8128a08f6b9efc5a3801beb9b6494eab286dd48f215dc2fc002302d31b10ef53699937cbb8e5b5faba2493bdcad02ad2846c0975ab3adffe0fed91d9e905648943a036c0a40846c509b8c0302047c435bb500683066023100e066520a6b69ab2cbc2450e7490ed275016db80b1e471677be0873724b83558bc7007669d5ca687316de20474851e7ef0231009d715d9aa08c6134feed75006ea826d897613cdc9246aaa7642036cada560f3699f86251c2170b2c255d637682c4b2320302047c435bb5006730650231008290a8ed2407f8e81830b69b0fcde40f56f19b63e5172cfd6c489e0f8a5c0ad7bc1dfad338d19ecd12887953c17e771c023075c94a4410e23106c65087652789a26e6726ec1964cf693d69dc6929c363c29760bd1698a9cacec942bde0d6311666b00302047c435bb500663064023052a9aa74dff2c38a2c18fb1bd63420f17f505f6939225af810581dd0c8c041801d84d4a8f79698febb4ac366c6badc180230728272e6947e473a845338e143ee2a9f328235ee38c061b8c28d1662e9ab53b8d194b3e9f7c138a290f6dfaaa9b8e80c0302047c435bb500683066023100a291650d4c453c80a692dac84b1e78b21a6925babb6840081b718603a15a1cc4be39a40ebf8dbaf818066388b7767b00023100f3a2cdea2ab05844e6fb5bb12d7eebb8287bd871395a84190b4070f07205c8c2e759f1e2a42e1214c36fcfa82b67c1c90302047c435bb500683066023100e4db375c213aafd3e735883b1822986b06367abe965ca124da19afb6fa15aacfc7ee9cff3aa994e9c3db24bc55aa2bbc023100b10fad6257b1842d596f77e3587cc476dda65a6b994247570f24bd0746b2f5544a6b06892e898419b385894bb4f9a4ef0302047c435bb500673065023032343f4f142ac3c2244618e235576495acf05900c1e54a0bf2302f8249ac3f5447938430b2ea1d18116335b789be0ac5023100df00b569021262597c43f3d61cb9b2217b0c8076b8a92865d9cebe84be4a753538c9d66c4a3e2d1a7634b541b536918c0302047c435bb500683066023100b904644dc8838005a064e904e32ee0431307bb0be55fd4b78186ef6f43338a6f90637692e99467fec9091428e9300e790231008a8d5355757945ed9ed557e2e0812248653b4bb8a246a751563ee15602ea510b92c7708cd77cf242949d551b940571ff0302047c435bb500673065023100f9cec23f4ff488d8e9c477d50cfb0646b2bff34f9a4fac6c228e35a0ca17790f9bc28d404d56b6adacc215f2c4fd7722023015ace2501c5cd8439814bbb10fa0e04e29956b0a000ecb8b20b22aaecf491fc9e75748fb66260c6832382ca544ea29610302047c435bb500673065023100f59f00b19ab9512b79fe6af3a3f9c7718d5d587dab55837e95d88a5f4378e1d181e5cf00fddbc69463fd756a3919e49602303476c83d5fc850eba93fd51b1e44108a837bfd3e7503f040cbe76ae83e746397e7a095de457ce7491ae46c5bb5db872b0302047c435bb500663064023054f3bcda3d79ebb101bf6b5cb85c596dd2171302ea92783259705d4cfcaa5304c6465522be166109ffa1d8e6d5de0624023006de7f653b36516ab137269ac91abe1c90519bb4de50726bf2fa44b20cf42dbf0cf9aae1694177672779f3434be653260302047c435bb50067306502310080f2c19731ae1fb7ed6ca9bbd78b84364ade0bab04e7e2ba172cd954716a49ddc82da1c621e8fec21d1cd376f24ec07f023073e4cb6e9653f2d005be8dd254cfaf3118ca36f1198645ff84aae1e08d6e0d1ad0587b5d45690bfeb0e78b71b7c29c590302047c435bb500663064023045a460b85a0d7940bb7b6ea1bb059dd45b130852bc8371dcd76d6fcab134d729bfb873c967107e1163a1fa2a5931752d023057d9e7ec546447b3da6a8421ed421b3058c2f0212a12e341e21166e04257cb9584258fa9619740a979130c92f51b7bdb0302047c435bb50066306402303852f795c83dd5a16d2a5a7ead1d70249f626c48f6a1cef2c3aa7c122e65413cfb218420711e995cd3db54ca96bad3c10230693c02adb254e8df8ef99874fc5b0f1bcb202f8c4d7bb5480b8b235b835e231b6709638560f0b207ab3d42ac8924e0900302047c435bb500673065023064a286df229350d11630b1b4216e7a3a6d02c3d84a752170c4a4ade3d729ae12271d3c1dbbfe5ce7e5cc6fe6cdf44035023100c9e19eb2b37f7d70895fe3451b8cf158c73d96a4e60630257ebb891cb62352d52bfd03f05eeb61d467a324538bb742210302047c435bb500683066023100e54427873602aab55168b1a177a37924219bdcb514a0ca86ff7dcc88b9324dcdffabaf93a744fb94fa8aa459f9f5a00e023100c4b3b81a721682a975311ab52956a2512abf41415dbf84878c087f08d7c3bd3f7f31d78a8cb4d0e2a3a5f6457896a47e0302047c435bb5006630640230631457cba3e7f37021dcb3e6f699771ef66fe5bda3ba036302017cbf8d5a1f80fc8639cdb889ea28a0b11b5aa4b0652d02302e9b1446cbdf64261794467ef28b6d31810315f108229f16e56bb2013bb81f4a8a121ecd9f585d691fde74ea0aa4b1620302047c435bb500673065023100bdc968983cecc3b54bdfb265eeb243e70f892851d8c0afbe33d35d3c554d6bc14573da3d7b8603c2acd65bc6c6b3f3b20230553a816a08d5b5d1c1d406d1277f9e61ea6553e47fd70c7a862b18111f4b4259f6904e34048ddf5106dbead80b9664a90302047c435bb5006830660231009f403bb47c1028e4f5e782afa8b04db66d990f4fa7beb3d5f150bf6f0dce237d4da443bcd88f974482ca542cee43a94d023100a71f6c3bef167fea255f27ccfab1e381b9251089bbc01631050e86b2777cf3e78d835fb4d42e70157b6b613ec3cf6e700302047c435bb500683066023100dcbf4721f5604f45c1d9ebb0a701febe02754ff6e12fd7c1872a6917427d6a1ff5b8407421d7d3a3a69cb828a87b7fd6023100c4ef479c263a7d44c00175b784a283a817e5ed486ba62001d1915d3f1ea0f8d71e0d21531baf444b852aa9df67cdab890302047c435bb500673065023033df1fce286fab9c69594176eb4ac452da31eb6d5276fd022bd59f3f1684323523e1df057f6b65ae2c86a149ed76fb19023100c751019dcba2294cf79ab6172f2ab8b2c186af4350a5a35c3117449074e13124bfa2d9fb682cdc4e6cd2bbad8a5913bf0302047c435bb500673065023052a6ace12b781688a947616dc02ac8289b2ca9c3159b3b7f610a3b861b79681df10fd72da5deddf869d8a2b821d8b560023100833b5bd3d6f9b50684a09df8185477370410be0db0dd572f10a98c308ddecc89ddc58fce748f1d469b968bd2154fca8d0302047c435bb500673065023100dd2f6d09b6111c15b55da6a8b446a728f1edd5e99704f05d8dcd603149acd8720a5ffaddf34ec4a0b02bde21496af74e023018f2761ead0e2735617177d1a72a817377e247729d400381ddd16c70060d84f2ecfd202ddb5386ac889e1a0087c876d80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cff44d49ffbd3a02e2d75ef8a506445ca365347d82f4367c5e5a54621f5fc951da1be6745a4cb78e7eb6ca63636840c702307e4372a7bce36561d9d64106c5f63f1399997143d385df8b942f1ed1fe5e7ac6cbc24fd51ada0be2ac6b8cc132b3d74d0302047c435bb50066306402307da474abc7dc2d5d15d4db67742344083597ba6bcbf1bd164c81bc119b6786a7953ecc10764140c82c3366f7f9a48507023035d9020583aea5e1d886ca115722dccc6786cf579122594f65c4aa9231f553b3a27a72595bcb7e4619886d3606eeb9600302047c435bb500673065023100c391a0e8820a65d4266aece6394532602b4bc431ce40efd6e6eed53e0b1d72874c6761217a85039fe302c7f697f9229502300b39abc2d5a6f82380b0ea9bc1e346d50b9eb49e5faef6bf445c37381c9ad507a124cc6a0d6afb2bfefb2fb303b155750302047c435bb500663064023006eeb23872f4cdd509766d7b9d5887c6e84deadac585084e77be4e3f18f41838488faab0dd06dbd10a90429007f53a35023073eb676fd1b85f15f8f8f12489472cefa8bdb2c2e58029019a3c188fea65e4bcc0fe6f0fc49f154ac16f29c1aaf22ff50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306aa5e46fdca4162366f483619e2b8c1a43caf3715d02630209a009663c67afa836d811233f2589742b8eda8f498e0379023100ac2a65d701c89d1708b0ad8e2bc62c4fb2d8cf9a7d1d7dca9a6b36951ca3193e9219629de61a7081b71da2015bc776820302047c435bb5006830660231008b6f2e8fa9c632088eb4c67dffe352f4c85ca1bc6840fa04171750bc618365cdb0ef6f56e574ee90c06476dd83561cff023100ea1e29dea16849e31204b58d2dd644b8e2e670ab22d7188603967e49d709b8e10600f3caecd13636e245b4977e3dda820302047c435bb500683066023100ead7e9f0bb5670204417d8d405435f0a4df94b1928ad15d97b889b0f64c97e688e0abb8feef260092ffb1ac0a6d0f20a023100ad96ceee4af206878ee2341eeffd90198c6ec0ac344ad57f3d87465c9043f9838dc8a999b38a72b62ea69cd1772f4e5c0302047c435bb50066306402300a4384cd8d48723f4cb804e19a0a3526927e8f1a1d4162c9b4084c0788fd3d9b60bca0a11eeced19296fb45f2faec6b70230107a3c98221abc9bb2511753ec3de2f16c6ff909ee813ef18053248028a0be982a8ffeb0adea3de3aff7b9212cd5fefa0302047c435bb500673065023100dad4d29cfdf837bb2f3602c6c30c0502d24544602d0f09bad64fadd30ec45be34cfcea988a5846c80f71580046d7b18e023018081c7c0bf0801c0ec74d7a639178544cfe7777b1ff6a5292e964821086a13db31c5e5ef40250c2d03f1c805e47a59b0302047c435bb500663064023013ca7c75304d2508b7e7c510820220dbaaddae5d71000e2880708985969794448fe3c26177457c1621819b3c4d8d1aa902301fd81325510f01992bfeb1bb32c02ea544c3ad6ec7f7b416ccd13bea90e184eb5648bbbcfc9ca982e62c52971088eadf0302047c435bb500673065023100b2804d6cb24f3d464a1eba5c460b6dfdd191b187a182ce5d73002e63888210440142d21987f48be6263da1d8324111ff02306e25e44bc9fbfac0bbe842d21d90d2b70a82293d064d13596d9b80168f76d555b788b1b7bcfc185d141305744c6543de0302047c435bb500673065023100fa459fda9b949bd7fe15b027e99b1711991221c4e472522b4de0444fb050c4507135c3bd51b5fd3a1d50f320cd67de6802303c6c35096ff4753f645b4d3912c64e237d6d89bd62e743e901000a0bf8c267d36008553a90f1db99343c837844a3a6aa0302047c435bb500673065023078740b604d70d91e6b96b3f7923689401f8c2815895274c418bee372fafca02f4c27b88014679df0596d906f5610e2fa023100a2a08dfa8d9d26bd7ab69207007aadd0f4f0962598c2c006a160de02b38ee45504cad9939921a4bb566c3d627aefea610302047c435bb50066306402300adaf90ece0bdd044569420728ae93bfa530e735fe20c9602908fcbf0ba2570ba6560807a24881cfbd62016593b294d30230041ebe7eaa3fc4c9621dff2395628520baa65fe86768059453b309863d985fe9f21595c544dbcd263da591b9f21481920302047c435bb50067306502300c8641dd6ea8b8a8cea0db1ff22976eef9896d08c3dde44b4fcad9943a24e8a29c3a12ae2cff33737ef8b79e2038a0a10231008069e73d2715e98bca8c058c7251106c17f19a330e84f2a42b3e4244183514df618612a3014c6ea49e9ca2ab3b9a81ae0302047c435bb50066306402305e37406305849345788fef946ba3a0078980585fdaa2ac9d8d44ac3eaa5139b8869499c6cbf071ba0f5dc6cdcf25c2ce0230246247d02aaa6c4dc80621d85fb99e22e11ad2582d854324eccc59deb6c23b143bb4068a0344b173f8fedb32b7f04f850302047c435bb500683066023100b6eecb90721c6d44894ce0c0f0d72d720de86902eec730017d8e81ce44bf93f58cc6e02ac87790eb48d4ec01b3b11b9d023100f4b9c3c74c9dc5e8e3e5c3f6559a25e3ef16cc29a634489eef5e3c27a3d7a8568d9b212f461e5269b060f1a8a4d344fe0302047c435bb500673065023100b550545077377f90cad0b91be8802994347933acfee64b920e29ad579f3dac4d06dc1b74039e0de90627c1ccbbf53bc102307d3ae7e2384dc0030539ad6f3118d43a3e36ee4d29978dfdb74cc862120a509cc855089c30a02ee01526879d7d4cbf790302047c435bb500683066023100c7740d1a6e2c635baa2cf93d0418a6d6d65a989ee44fdf118dde2bb3722ddd8d2fb6c2ecee8478d40d58a23f811030b0023100932dcc9ce42397c5c868682b3c13d4512fb8cb772d298f612bb3072fd8a85fa56d159df49b87e3f355421fb8d593c6610302047c435bb50067306502310094d5d2821f0b74b4f071806684707aeadd947cc256ed6d0ddd885f77b1e33accb33ef8d0ffffd3871c35e4b536c9a6e8023070d3b15f1e10d60d969dc9297d0e333faa16d745e186939caa8c1d31791b1caa679402749d200e87a57458cc3e92651e0302047c435bb50067306502300a5f97d37ed4677635b9a88279b253a61f5d5bce7c43a83c331a7704d42952d9d9bd68e583b54c530c4930a4ddef9162023100df5f3a0c20087dfdde6da45c10b6f35a4ed3e3cf64ca96cac670c1607777ee3cf107498ab8e2e8792c6b3fe49b8129b40302047c435bb50066306402307cbbd98f083d79056773744f9bf0bce3bc00c4c9f92da113b3153633670290653e413fa490345069419de941002c9587023038e87bc1bf377f6c303a04b7fab6cf7210dcb1d2fa909e55c00bcd4a9c6ed35eee300bc90ca4b5137679f5b7250f9ff20302047c435bb500673065023100cb367c5e6af0108a43324ed41f092b4818311b767703279e67852b40c40dc7db506621d6b0f98d7dcdc0dc55080cdf2402304ae7c1f7a0cdc21e6f07a72dc29c6addd9c87c1411f2abd569e50f78021555978bac19cfbbf1e9bf6226438126412f950302047c435bb500663064023030552a56bb20790248886e37e05a6b81fe46ad4f33282fe482fd3a70c4e67fc18d446e56ffcafaa89d32490d9a6f963402300ef8b54323fed80aa1e37d25e75eed230f3f133f8e08373319df6c6f373de089491fb4a2a096fac99c214ab2830d548e0302047c435bb500673065023100a335f4d7dfd871682bd26a3814fa856352113027591433ff82a498f13bb401b6d00371ecc7bc3f9b4548130f3aca8804023002b13661d304a3203b4aa6f8c01bedc2df45c47d6128e3a38a823d3eb58fdb0b1c85e649db7e0750de4dd08a7dcc7b520302047c435bb500673065023100f7dfd5747f48883a92482dcebb859d443614b638bab1d54d3375c2324c859993a770ef756997ccf5a93aa36eed3ef4e70230032812bb1959613d03c97a0d7aaeee8f022079bcca1e64b22c8881b9452c2efe067c2bee37453c6e3b8c76f47ff95f850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023031c3b09fd1453d1afbfa88e57a34814a9ce1d659e50089b8c78c862802625927416b3ef4c80f2933e6338fd165ebb411023100c8b7fcb87e67387fea120088d00bf79653a4800e807231009d45dcaf1a6e0a349bb777af63c7cbce9b4aae9276466b4f0302047c435bb500673065023100c48ed60075f95283e8fcb905fc4b9516bc586c1c4f24468f17b1e9e088253d7335224c16b6c274826aef7dd6214ca1c802301e35ca472c6dd5c077fad376c012248c0dae1ed0a10e42a2f465660e062e32a86f7122bf4a9eea6238e6b0e768698f550302047c435bb500673065023100fb5dd1ab0aa8fe0516ec7cb3775f7392b6841936850a694d868b9c5cd512b7b1d3a461f8a1d03fc0d1f9319fa825398d02304ec4999a1c0ac75a23db3df217411e0988688e53397b9dd624541b9136a4bd9d6a6ca61b9360329a94ebef81e35ccc680302047c435bb500683066023100ce993af7b78546d96896de307fe38d4f3550076a2f2b773b89537b9cf459d94649e4c2c44a0a5e50d5b4d7996d49e4d4023100ef086adcbdcedb2b64c6cb2d2c21ee05be7ca9faa59c2632b1cf2858028a2cbd60d16e80add36a953eaff2fa7821b4f50302047c435bb5006730650230235a7b4954d21a0dbc155899ec3aac1e72ef483a047c48157ba3a629861431388ccd13b3052860d2bdfdcbca2a0c9212023100c9b2273ac28daeafeb5b5cc5a3e3467107755cc51cae362bb65b922a015b8e67dae32d77fb3ca338f15964dc120af2c90302047c435bb500673065023100c6b56c49197caa8dcf8d274a5336d84c07d7de2cc150dea7a10f3217d3358677a11aee3f5a834b4b2884b8ba04e89028023012dadac4f86fee95f5c99bd4f541a27d09adc2fb8800d963b309df006befcb519c412493d9c7b1d4000e9d5c6d1773a00302047c435bb5006630640230254ae475c529f3a99684033eaad4faba0b882f35f414b018912b843f319066c71d418f2b0ca267c5796d070462a7410902307763bd7894c0a04cb1767708fdda09b654f67a65924d6f071b2fa19494ce009998d682fbcf39ed8c3059c382443244240302047c435bb50066306402301822527b5743080cc64e84428d0f64241eac19e9910b78627868e3df63cb65984dd5f73ccbe41594f60de7201f4f65770230356b9ff38ebb5429e7c8d70af7374ec35cf3d0261bc67005a63fda784081528fd41727e3077b1155095c8e9d899574be0302047c435bb500673065023100ddd9c798a22b2f2f47ef81f61300938923b721c7639103018477d1d68134d6ac785a5ebbc0e25c42dc2fcaabf15e1ea0023063273b6eae06b49489946797ecd1e2bcef8a31da6ea49aa0a8ded9dc0dd2e3cbb35583e7930576434b3fb289be531ff60302047c435bb5006630640230596c79cd8f1c5d52be84e305b9862431e05a9e75ccc952f19fe238cb6b67eb841cf41d37a8109e2313ca4240d76ae31a023026520c994ff7f87b9048ee52c493927dc89914c1a354d7eba100a910ef1adcd5d1eb42e58e960aa01625dc2415812f590302047c435bb50067306502310084885e18e9d1659835b0041300520e6326749cc2ef857cda7eb7367098362ba3506af39238f656a725e893e672e2865302306d9acc4d7f1c923d3a2e2da53ce92c5dcb00a531e359fdf52927727c91118167d3af9cd6f04a0e0a5676b06fedaa840d0302047c435bb50066306402305cd2b829c2d792c90e0a89ec5f9795dd3e91d36947d9acec1b8c30259e9ca06eebf07a623907c7224b1bfdff3a9ddbd9023048d9b1ed93a7b653170c63fb6befed25e3044be6765a0aaa6eebe26c7af95d6dd977223df6820ddc784678e85e6326280302047c435bb500663064023038dc760e18e078fddd90f06b82f7363937deece6cbc47c9f6f4a61c914a4ebd6c6d474ba7f51f6d02bfe3597314d3007023026650ef1b05122e79a8983f8b10d20542ac80632e6b1236988c4f4341effef6b72ff5b5a08747af767f83138bd0022260302047c435bb50067306502310083d54b813b725af37bcf44cc0a38568934e8175bf2a79ad2f4bbeac5ddaa55ed8e76fa767870ab12e9f59a86dba5a940023005ad8581ace41bd98d138f15c9b6cbf0fbc467b13108a6bfd47b1474457c2fa915fb477e75f1c05049b92076e2dfa4350302047c435bb50066306402302ced2351bcae2d2b38f5ee300d2eec0b87f0da7e4fe799a41bf06083f3c0fab5dbfdcdca8fa9e30634d7e58e5531547c02303bd42c21e2979f9332ef5d8c1ab2ac7308ef3a2e7a8637077b9075280c88f1e5cc25857cbc98d35598d6be23d805b8d30302047c435bb50066306402306affce1958d2710e3093be52ee8b9a2f28eacb8713d5f9989214c22b4a0cc1a2685380681bdd49014c9b44d838bc710402303007a09ca35d86eb131ac0d255f8167c57ff5e6be90689f42639ca38396c21843466bd9e21362a644145ff209204513c0302047c435bb500683066023100999b69117ece668896ce2765972490f230b57ce317b64eacb0abe632d0c81261dc5c37da6dffe5f76253bc6c2e34244a0231008cdb87f3e0a2e7cf944becfd66441b141fc6e36a65f83cf9e19813e783e4b60d64d5b12f589c2751cb05188021fd55e10302047c435bb500683066023100b2196fe2786b42b8581521a643ef7b9e7a67af72a60fc4911651b94824753b66791b8d4c9e2ceaefaa2e6558830d1046023100e004a3a6ddedae90f71ad770c9f9da3b600e4cafd228b0ed2a409889a90ec19d1daee48760db50b6b2419968e22ed7790302047c435bb500683066023100fb9eda09def9ace2fc7026e102afd734d2a08928c4f553c45c54cfcbe0d366ca124a253c4c5865adeb6243ac24644c91023100af56eacea15920493bf7931181d4f6673250d446309325931178b718fd0cbcde1bf19ee72ea08aeff28808569e144c540302047c435bb500683066023100c10bd411a68a2bf7cd92cc4b7fbffb3d63440c254c1d2abab6cbf692e91b7bcf6ca7efb3f8aad041e93ffc4052660dea0231008c9fb30bca28fd83cbf2e9143e7658561cf97b9e911e1305fd0223b618ac9bab401ed89cb3c9135ff3c5782bcfec13bb0302047c435bb500683066023100cd5da45fe86816ffe7166203ff241430d3d5f8b576d5765538310f0871ce6fa3c9a37357b11962032c3292efecc5994902310095847f5164e0304da28395442f822d8dba8c2d9b9d42732996d087a34af16ad804d2ae31b9f97af46f557f18733903670302047c435bb500673065023100c7c647878caf98b19eb6c81a93fb1e365d7085d8959bbbb1657a95053e7cdb8962eda71b9fa6762965b9c117923c0ad7023002e1461d1f38303bd5ac6ca7dad452453283f64ed2fe69747bb4f5809e156cecb9b61300e0b97d45d26d42eaedb3f3d60302047c435bb50066306402307f61c777ae5dd6437f33c18ef7d8017f0593797b8c50654de86459b1ff48e42f9ad44435c448f18808d17f0589c10b8402303279b85d48f047961b90c5dec5291d878c32ff842c4999d37d74b193d3a57250adf476955dc1411b4cacc2deedaf6ee00302047c435bb50066306402305b9472837297ea003a70c3828dadbbb322bf9158db5b2114869ebf6d46960833b848e9125433335698e50d5a63ffbd4e02305fe95aa8e9893f0c46d5661518b17777d54645e833251e3c57b8d673d8da754699ab9cdf021935e92e5c62c9eeff5cc80302047c435bb500683066023100b81bb7451af34364f4ed1254c6f3e372b42114ca51ab1c2bbb7b84dafa8a76f0a68c3d2d1472820bed26dcdfd38407d10231008421177efb2024aafd7fc78d20b5974c0b769c95bfa7cd6c8736e0efeaad2d07687b960009997bc882b8c169c4cf16400302047c435bb500683066023100d64ee549ffb65f15045763d9ce990856dcc2be5deaa52e4804b9e628d25e42e3ef545c6f010a1476473efd6b0a3afd1502310095bf457c9ee2fa2869c3aecbbce0b88ea73201883df65a82fe23a4484b5c3cf59cf367c055ebdd07755801ba4648bdaf0302047c435bb500683066023100e56be94c9b38c00ad570357d3148aef768956fdf9bf4ab3a27f8fcce7143c110e81d9c2dcf91b40bb6b6b544797f3ecd0231008adf4c519e0e1345ac3b61790d6df34a0bebf5d2d485df3ed9e9b3aaa3fe32dc621a7a59a604ffd186ee7f5046fac9850302047c435bb50067306502307b77c69b86a8a824649559a664d3176d1cdc9e4e75bfaf43b40d224586022585881f40ea0afc4655d0b36d9d72ff6dce023100b62904b0b468625fd785ead6ca4fc32159739ed46885406298fbad1df727f16115effb7a0bc8131fab0eebd6bd1144e00302047c435bb500683066023100b206aa8808e2097f2628f6e95d58bf6735a98375db53abc3996e7d649d1de9c4053effcd076ed6121ca706b983975d15023100e312cb3747877580306e1065d5cc7d68970b0400facb94ba20fd6609dc83774bab25a2b42b348ba75b88e763379484910302047c435bb500663064023067b1cad224047ffcac75deeece8f9a2c70ced1374d15fda1842bc92ad303d1bfc01ed96dd75199fb9bbe02d68f76b81002303506503cf4c52eb4104c5e30f04851c8f0b004908306a4d6d8a9220aa4bced46c91af75a40893ff0a312404be45383d70302047c435bb5006630640230120fa13ce3c466ee4e26f249d0f2dee6c95d8d8b518392ae97e2dbdf629e4a00639eb353b4e9960b98dac17b271e517402307563dbb18755e079ba3338201ae3e7580d63bb3a38f9bd883a30c2c313f6032caa2cf290451b61af55b99ea13744c5420302047c435bb50067306502300ea205315ac2266f2150fc04c9607eb3451058f2c899cf3355a25097fe4c714f2c79dc78dabba63c3440d36f4762a133023100f28c0e96cd7bf89558763c6f981d4699b8ad192f5d273221f6d18a8e89bfc093a1643f5a5e8407174b18822e4468c04a0302047c435bb500663064023070568b21fb9fd8d5c028f00f75dcc1152ffdad86d8776048def89b1406721f417552ae4fe622273531d819cf10b27263023019f15a0376aebb6a93799e0ba06c9ab98d8d64d9c6f7532b113052d9bb574d7bf229106ed6451f4c5406f38870ffed5e0302047c435bb50068306602310092caa0a1f52ee34fd028344f8778936ecb60fa16d77b92ff0a0d674d5fe3f00e64f344117d691e2b0185e5e52bbd4a92023100c9ee39225c3aba52652c05ade358a224ab7c03bded3fcb7ab5d9432dd37929d8bf44653d8113db438ebc2fc52007212d0302047c435bb500663064023079af7d8a893964c121591f78b49eb3a75f84b3503988187d6d637e695bb6995e1a8fd4b816db1d633913b3bd2ffdc9a502304e436ec66e0f1a45d13c47481e4b105d766ebdbafe5f013fabf712c5605256ed658e8ca6ef768e9c80a17cddef2079520302047c435bb50067306502300840b69fa598d119ba744073e283fe5d50577f304a127ed7bb4e729e7c75a16e3bba663272fee701a306d3fb5f66d725023100f7b9e0a57e2ff6488513093369919a50a2bdd2f64ecc0872405d3097849d5cbe53b9268ab34c04e74ae07752293b90e10302047c435bb50067306502310082047a101c64fd0b890570e3867c5f9a0453d4150d98740677c2290791e03fbea42794b9f9f7f71e669ffe5ac7407c5a02304df1fd2cf5f46a5d26c43bb8bda48c007a53c405a8944becba02663f43a9eff33db2f29c135898a4bf6be43402967dc00302047c435bb500683066023100b31da97352ca5340230194b11cb6dfb6ef90db66111876a16e1763e1d9d82c5cbb45b4c0f5c9ddc0fd099c6bd4dc5967023100d5f96901fb397f1065cfe91cd5a821b3525c1441e91da63baf64e79ae55eebf2beb708997e51c92decb4b83115c85d1f0302047c435bb5006730650230195c8b5a0a92f8ab018d4c45950787fbeaca1277945727b435f4eea65085de4de6b37449a55ee9458e29b659713cf630023100b80afded4e6d04e30a0c25977f34b321aa1163f58c686394f563a43a30c229817fa9f14e6dc38959cef2862ea4fa6b930302047c435bb50066306402306736b027742b7e9f14dada8e64e5a324547132a32e0c806d7b66907a199197264fca08cf3410aa5333e2d9e069f34ff902306f1608ab1a6751162fcd7e462dc18205fc24cf37b5f9da0ea7ba0f2e6dafc7ab85defdd482990f0a4ac7347319f0beb50302047c435bb5006630640230102cbf20989ff79f5916eba76c82f161c7bca20b80bd507010742366db6b57f2854c5c48b4be589c8a95eda117a79a6a0230287bc3cfe3a265bc9337a1ad3389eb2fc00963c0d7c5cf21c7e00b52d63fe15b1c9fd9a631063938b23fbac73e3164be0302047c435bb500663064023077863e10a5ef2cb909448399a30d48949de1390cee6792d88350b1892d6945e0be998b6a5bdef33833656e5eef22186a02304327c9ebf314968306d1af712e1128645ea3e646dd1223f8202c1980d4bae62b962b6bef6b274d8de15a88dd357ee2960302047c435bb500673065023100ec1a3cc83556f33c596da39ff217ffcee616f748eb92c6a65601aa7c7c872804595b2b1658729f712f261f1af66662400230765686d6bdf3f6dcf14794f26128b103cff5e2df35ec02cbbca93478b2e4c8ef3bd0ec8ee0c51e2b6a3d4817eeb54e2a0302047c435bb500663064023031e791dc1b0377de9d606a9b22ef800afd8c259cc6c98ad739288a679a051d33fe5de1335077aa29b1c897da6756660d0230375fbe656528e09659f186477d89a6bc3cc634bf9f938c0ca84431670c43595355d8e073385be68012b1c93c3866afef0302047c435bb500663064023037c345ba3cceeb3eca339fdc6a77b4a4adc7bb074a8a6e6c62d814ac93a7713ac56b09af07b28959ac618695a1fbd820023016a688faeedcbbd6d23dd51a76305c804b71996853705cb972704f7085511d8e42ce1c05b46db386379fa4f7ab4f44070302047c435bb500673065023100d16f4d43ee04dba2748bcaf727e68ecce9cb94e7060019a730a689d077960714511002be0b5af35196a312257955246d023059304a33c3e6058f3bed4c9902d3761ea5b5a1013344084fbf98ff354733b62d47e0efaded77ecbefbfc019893a3202d0302047c435bb500683066023100b69b40833c1636b2ee1d27a1bde7df3440c20193af6bc944fc3a171d430653a6ddda33124a45a5935da70d36ca1cdcb3023100de6095e107cb86e50309a4fca3fc7e85868e9da147003fcabdf9f53d328a76e7be70475d714e4f0bb56bf61f2f8caa490302047c435bb50066306402304e6036f52ffded835e4f502af88b7e94bb18a30faa9de2497479decab13878daca3a311219f8b8b52389b7ea2eb7d4ef02301cd15cbb8599a8a7cddf1002d92aa98acdbe92da6281bf6ca6d3f324453cf3b3b6e1a315914b176cfd1642ae9f694eb90302047c435bb500683066023100a42e50213d75982f506bac2d093c96027c983001ee208be8d7a3c44aa932ebdb378b964a89759012035616c2f85f19ea023100b7eb6fc5f5d766bfef7e8d40c87da1dd9e305a236e3ddc882e0f5026891fe38218a01e1b08fc486b504c6aaf782dfb980302047c435bb500683066023100f066468981b077aa73e875de7353d4c7409b438004023167c736a39dbef9e30bb03f7b896707dc515b78687206f6d06d023100e1aa4a96ce03387604a15fce20e4c449c38db3f89ea615614427ec9d73bc4bdf82dc4f194f3a3b9695149be93acfac690302047c435bb500683066023100b3fc1af11d8b3c0d3ecd76fe17d7b647c13948a2f57de229265383f5e864f5b43c5e217e25474c794b0860620ae8606c023100b27919a22db7e155e42dc44aafec25e6ffd6f7b85d57c0d11a6dab2fd2a8c018703660a0d0fedc92b2c3b9bfbc97241d0302047c435bb500663064023021bc8c55b170fa620fead03c7fa06d747b0150597870f4b15b78ed84b0cee14a0c0649536b508d85704c19307378bbc302304986a157c67bdf068ae3c78a38c683d8f8cad544a3afb398a6e0d5afc646b3a106223335b1d07308256502eb6167dc160302047c435bb50066306402303afbdc69234761de5a3dc75afddb8d6bf35afada82003309fffb5ea984cd18167d80cdfd4010c9bac5fc6d9919bf8b8102307263c2b3ff5215e1b242cdb27ce9003d4a917b90d153e82275d2d6ddf66667d75e0b818c8a5851a80ee5046c2033c3130302047c435bb500673065023075401bc49cd690e89b1b633490552e547f77bec82f0fa7ef1bdd0f1631cd3aebc96cd44e73e5db58a0cb9fc1d012a1b1023100d08b3bb554add4ae1a0c43a1d2d1c15d42b44aaeda161278b764e9e2b0e461c546a3659089d83c7bdc59344f8a0c54340302047c435bb500683066023100ee6514bc6c46dcd54b8206a2622115060d202f1bc6824d659fdc78ae56a92ab5f5f6461186365eac8b5ac7bf9c4522f7023100ca8ba3f3ddd28dd0a4c2edb329b5559fc6baac90c003d66af3cada4feafc0c1b8f15980cb9cb426220422394e15b6ac50302047c435bb500683066023100aa1e90630ce4e5eb8a8a36836338bbb72e1c84f0885a3d14c5b4df88331f59997856a7360039a345e45fff377d080a90023100fa75d2c2d77d40c639b2b725759ea69bc1edaf894b54a5ff995534ed00f2971520649ea79befb91f8c496ba07ed8856e0302047c435bb50067306502303bd49e56df6ca02e193188238d915a63d7fa7c45e97f8e3210a8c2234d95b68d5ae2f77c1c22cf365e7b35378a84f25d023100bd39b013f45fa9c6399ae1f4247082855839b947e8af48804d749c25335facb1538c698efc19658eb1c135106fc1cc100302047c435bb500663064023077bcddd4fd6e71b06198b05b8268ee12a1a453ebd088bd1668df5011e6bc41c09cbc38b32a6a3d86942c5f8ce9b1de3002303ab304542b7801d07ba43219fa2acb42c7b6ea185945feb4186844301e496422b22955ce8821c50706f3be4ad3a69f000302047c435bb500673065023100c9c822381e6ccaf7f8c1f8879687e13cb8ca9eb53535b775ea3081f152988b43d7f270f4900df291576dd3f403db5e5f02307511d2dc53d35c75173676ad5994d234c6f54287ed71e7c9210ffc2fa805802d369157d39c4934908ebd0433a81882190302047c435bb50067306502306b8595e99bc117075dc714cba872c1cb478d3dabda7c205bc0112257c6e6aa827697db5a9969a8b6e6c42afcf870d32d0231008e2f3dc1bbfcaba8358c03820480416f8a95fc538df9df77ad0a15818be47c206893ce65e6d37c7fdb9a0266e4f9655e0302047c435bb500673065023100973eabbc1b2d8a8ea785f2cd8be239440322d565d0e4d2a356739ec76694e4625fbb6d21863a9c13bd838c3828d1da2a02303a9b93dc506ef51e5347ee97835d6e16ec3d010d879e7965f2e99f2590985246a315cb4351ba5070c8f7e1dbe0a16bfb0302047c435bb500683066023100e0e3f95dd9408071e0293684454e545ccbc2f3e0414a1f5436e265c51991add49073c030f5482a0baf85bb046f56270e023100e0e7a3eb23894a89f809f86fd5a02f16e090eea99b634e792fd5091a0c0cf5082f1543c613af364018e2641bb789edcc0302047c435bb50068306602310094f8f18cef8df9a2ae4c97bf782b5c0ed221770880981713906df63f7b53df6a6b258ad35eb7516559898712e152f9150231008d6b9f1b9817e0acd9759df1f3e72cd3fc325debf1c1c333162c98f349ca648f490ffd23643b9ef02439a46b744fc8160302047c435bb500673065023075ca21322a98824c307f6825e6dea7a2ffd6a5e089d529f54b65dc2447a95c3b4fcfc26d7bfbaa06a2f88e5b0aa589680231009061478c8c95ffe5ba61fe4591b6f2923cfe4413ea6cc52966bd229e24f214c410aeabd673db2153dc286da6fc0147d60302047c435bb500683066023100f1f1ca93df7b11a9bd145eab975796b501390592abdb614affc48971cf2d3765c9ec54d1e61223b5135af9a0b4c6716e023100a48ad690ea227a8f074090b7190c0976250a596f375e2b05beef69832fb1d0fbff9a118a17c9088a70fca1b6c260c46e0302047c435bb50067306502303ce1eecd850ca2fa984f77ea4da4f10b1446ca84f0b80eabe722196ecbaa85ff9cd0812ac05d278f0003165b9c82dc26023100998da90b1a25569fd4716bb363c69cf387db87868cace00537c1fc1498b4506b8be1ab0bc04c503d170e3db61255b42b0302047c435bb5006730650230630ee0a17f287e20abaa4fb72a462aec5b5b3b2667a8dfec8e3b3eb309fc2cf88b95d8cf0d8235e54184370675be25c8023100933a89c1e4a034b6723c0bed77336124525ecf32123a3cb4f1b6a9e1cccf080784c6c2654ab43ed4efb7a9621dffcfc50302047c435bb50066306402301cf0057837da42278179d2dc08bcee46173d1720f422d61e835c47942cbbafffd637343813da0585ffe3f14ea83b85430230350c9435526edf73039f6327d4248f658a119e28bf4888fcf091dd8aa93b295e9a9cde57ff3eb69aa6103d7e3abd356b0302047c435bb5006730650230779f51c72bed73dbf1064e452debc9ea1f78b16ce81f537d32743b9c3a0c746773e1ea564ea72038dec85a66b77c63cb023100c0819a18e502c836aa7310444504a90b19cba72b65828bd3cf9c8429e5172d8903e3dcd7aed4839f26e24064f7bc3c020302047c435bb500673065023100d4124bd1d177975325c61e128a9bb8f8c3b294fbe38e7258911a09cdafe5bae50cac1cf5c3c1079d017de070fa5d996902302a20c219e6fd52dc42a935d1ae84b3308f7e0f277a5a5a0ddb3bc647a659a6f33e3425adf777e30fe88dbe982cdf8e090302047c435bb500673065023100ac58d269be13d6489e4389f17abffa31818d548e01fe4262c6327fdeb721701fa8fa92058d921f6fecfb77b7bc70f6ff023048135bb054747b94548c520cfea261a529c412e3d43561b513080b378032822e47ec76c089b5955d7e83d13f4b1513f80302047c435bb500673065023004578cdf82a3592c7038f6fe7986edf14bc69fcb8b2206e90ece2c64c0a20ef239b1fdd99deb09279b6f2802d05e817c023100e097a70cbb0b2d5fafeadfdeec8a27640547c85468f8db650905f78f65e24436d77efc00afa95d7948b18164fbb30b8f0302047c435bb500683066023100ef7cb2dde330feed989697de6391d1a9ec4dedc20cfe6003446240a6b7eb3d0cf7c88b3160be138d7b90cf97b56a13d6023100c4cc63c23e8e0e94527a43c6d7d24ab4a028edf8591a2117930447dd6b14fbdda32eb9abec9526123d7f0b4a3a70de810302047c435bb500683066023100aaaa8bbfe3e142380b4966bc2997f663e55414d20a8be12cf64d78e11f42b4cf0d244eefa35207d10ef6544caf3bee23023100c284eebc16da64fed34d097c6f64814bdd33447ef2288cfaebca16d5306d54bbbaa1c28db3195d5b9dd69ca47e1af8d60302047c435bb5006630640230608b73c9ae898841e307f7d1357b13b1f5504eb179e9026e3fa72334947ff35ed9e7bdd224fb7c085360a5ba7c3c366b02302d1cac0c70262ab71e809eb5ba54f89438a93fbb43d69669f980102e737930484969e08cbac768506b181b86b68a34dd0302047c435bb50067306502303fa60b04e2306bf75c9da9da7385cd0be344d3b6246cfb02e80e11e2c88be49d65d2426bc2468e94fe748b085d5d816f023100adbc99c596cb4ea6230a5c0fbd4f90170c32d9911b5fe341f7b1da1ecee9af132ce176abe45d6e04d07bcf5b3e6bed590302047c435bb50067306502302f010e1ea693b5a97a04026592fe40a46f6f9798791236a55d38708d96f305529454bf118e1b63ddf87c2e8b11a229c9023100a570597e2df625891da3eca0a8be88cd3cad87adcecd81ab8bc3cd819a43915ce00267360eae1bfa10d9357becd3ccba0302047c435bb500673065023100e42140523fd746833872941d5f884bf45a4bf147a183dca6663e27134138d7174363272cdbfce9a8e63c0c8140566f1a023074ca9ddfb686977663f5b9ef536a401b40f606e1c9d241edf424c8a3f91f1d8c0b92abb5a759073d8d401bab3c5cd3cc0302047c435bb500683066023100f3b61dd77e4cd1ebecb5b0eaeef674251b4d1a62d353b8dbaab4ac5dd9ca064a97fe57d745321c24ed36c228c005b1d7023100e9da56123322c82c6924716d9f35430b1a2a3b9c00f883ea93c1a3fc5ecc1d52a7a8e530d6454755666b8cefe713c2fc0302047c435bb500673065023100f9b1e1b8e0dec2054cc943cd0c29721a2cfe1ad54bd6a8e760703ba7bf864085ee96f63c241a64b520b1bcf4e91eb988023001e874dfdcb9ca4230434811ba84c6c8741d30d5ddfa6296897547169a872c0b20cddd688382da2209bf2bf295d23fb60302047c435bb500683066023100ccb5627ebbf25be6ac9d6722c0579345b181d58561524709008722dd8f5662abac4b548f1d0c3f39be30e4a73cf58f93023100fd230e77b12404d4e70aa783585e63cf0299fa976b69bad5fe3e090ebb8ebe5ed1bda5e83b00dfb9e687f14b7d56045b0302047c435bb5006630640230698903ffa2bead2683a18ff426c7709d3dda5810ca0ef50613e1af3a609bb48d5219c18e662c8650f7e01661721a5805023038fded27fdc6f1ed0a460ae3d4584f9eb4debb377281c136e3bfbd0e90de17ff3c467f674fdf6ee21a928bce9c3597a80302047c435bb500673065023100805b2c7bd386fec9e2bccd662529b5b815ca123e5ccb78447a3995d59ee96efee5f3c5af0a16e81be3d9d1a332651daf023002651075d8279f1ff9c38dd10b58192d78c00c3d85c6503c5fe5cdb6bea0e1da9dcf606f175611068a1249bf2c3a8ad00302047c435bb500673065023100a821059d3ab7b00dc936e820f8e079fa938a47277c9d105dfb22b2c75c232c857a1ed488a22d8b63874007ca9169f0d4023069f21f091d41f259f844cc7f74fb0788f75dd4bdfd1058c8e8535decffbc77fee31236ab637860745d88cface0bf0b220302047c435bb5006630640230315b9e1ce8c303f21e6b3a29a9286a6d2c871fc1fa7533c6f4c8fa9994dcbab0f4c1a194fc2a97600ff09892dabc5a2a0230651f632670922b824d16c6f56b80e7aa525f1fb14f8db85eac1638a0cdd3e25e6e5c03586ae1683df3f25f2c431d09f70302047c435bb500673065023100ec33c35225df4815c61259e1143fd47f660ae28c6c7c5cc95edbe36f83a45328e349195b5fc1c20a7a474c5314c0ae7002307b24493c116c9d196ef85ac09c6353da89577c7ecfb5af7531efd0cd306a87b066f70f7f6b2fbca5ac3dd4f3afae95c30302047c435bb500683066023100ea2894d4ee8aef572e2b948feaf1847c3680e62cc43ff5d14f351c7a13d4ce32d24da764609e7d16996bca5595bd53cb023100876535a0f0dea6d57d1233f1cd923047fffb76eec6ba763d881843e4cce60343387765169ee704a58844e5efc2530d160302047c435bb500663064023019d0a03794955f2a465d7c6ef4d9ea22d4c4c34806f511fcde2454f2f3c9e595f09bfa80e35afcc4447398d666226f9202304bd4e2d354e408e0adfddfd062751f9816f7d4804f8ab2359e3cdcf4798847d3bab5786b20812cb74be905ce865110b30302047c435bb50067306502301d8823e5c31a41bedf4e89fc93f488bd5a1e0a6ff43ab07d184c3bbff31b74719a35a0c38341fe4a0ba93be6cf43b1ea023100a76d5cd1d29a5bd04c492178c480984841063c9d23a46944e36a4211d4337b0a9961e2a4782d7b06da7ff5e35bc2c81a0302047c435bb5006730650230069dbc09d97fdfb4e82109a30bb6f1f3bd4de4d6595aa52381aee6690f57a4aa1b3b15cf28064277f84566fcffef9f560231009245f3d8207f6a8984bc2a115963799af6ab9155768f758ad808b2d1f00a543651b33a918158fea2e8e86ff07b28cfbb0302047c435bb50066306402303f5d5ccbbc2a2cd8aac25ee9a1ad9526c12924de4671af89861053f6d1657ac9a6751d151016132d5991f350db816299023063a8665700ed676a19ecaae4ce5940c77249182818c2b9c228c3a5ac2728bd1b4d6c2173d3315b5baf2c9401206285270302047c435bb500683066023100c4df64b274ae601d5154a1fe1499908a892b29ef9a60260c6fc256a80af8107bc346fde8dd25e8bc16e84d516804265d023100aa92f5450d6139940fca5acdbfc0c6e1e0f9de772b0eb248310412bfbdcd16fa6653024e8523e5d91a0959fe5545d9780302047c435bb5006730650231008e348f27d938d378966ff81825d51d47b2e58f386682ba5f75153601ce14a7852139d1282cb20667420cd75fc305e4d502307976f7254ca93b4435aee7ac935eccd01b2299d4e0e3c3584a8e5306411da0403d1c627ef24d00a1ab584f7ed760f6f70302047c435bb500673065023042441422f87f571749cdc691f219e44b6bfc6169de6d1bf075cbbc0931d248779b208428e7a2eb8886e1473c5a73d632023100dbf4c94daf813a696563629df7725d850d3f6635c5b1a1e988cc8bc7981644e1620f410ee9da1e1d5e8136e0cb1f0eff0302047c435bb500673065023100d2657ebbb4a3f4171a6269a856e9f198fda697b015146e269836d0cbbb2ebafc28692ed8cec826ebc1209e6bef5f5ccf02303450acfc33bd4e7073e4d8539c1bb5281e17699e94d00a1dd7ed6cf8c3124c291e43040f3834a7ec2c30ffc40ff5993a0302047c435bb500673065023057b41e7ad4e88b13312aa6210906b5f4ede84f20ccdfb1b255348cfe01f8d0178c6ed45a12ffa0af20841a680a10a962023100b62522b221e17feb1be65c0f3deff7475dc06c46f67c7e40c969a6cd441a7a883bac90a24e6338c439c106277c1be6540302047c435bb500673065023100e9d18099acb97e4a59eed607734a60bffcfcb0fdaa8d427394fa825cac4f0ed7db8724e7df418c24f0dd434047aebe220230566769b38e839dcdb4e734026856a220ea79520fe0274065e2c8da57aaae434510e1271459418a30e899774b68d916720302047c435bb500683066023100870249def5521f2a9772687077fc085abfb388717fe3e870b188fef9e89b3b94f3c1e674b8bc52a18994f802b1bfaf67023100c578a181b90d38fdb6dde60d0b495a5fc551686eda8345fe24b947e9dc0da724c537eae7a7acf3c4c5442b82bbd1903c0302047c435bb500683066023100fb84ce234f11c9cb79c7af51cff6faa61fdc8f86edb1ff1a8e48e4a3bc0ddd9f0f57b68eb2dc627aef2b9159f41e01d4023100bd8c880ff183341dcc0c6046b1c45853f2b811687ebfa9084dedfab11dee95d8bb80cde09a7267af4ebaed563e042e560302047c435bb50067306502310085e1344a09047e0fe29d01eb2d0c5f3a5ed8bd5fb4340bf9c779d78e646307d432e47a5745a6f6d899de0d7771b0720c02306f4f6609e730a9caff1cb1683f8b8b7552fb325f6c8427f8d71c660375ea8226736fb5da7b6ea9aa88241624daa366f60302047c435bb500683066023100e6c58f0d19f14cea41ac8c990158d60a06ef8c424e086331c9f3a1a2f4fef5f65fca6ce923cdc92291f6e2b704d9d4f0023100ce1b58579d00aa883ad3a8ae057b187adc7501552bd5cdcbd67d1803bc4367a41f50ed99358316f333eea3e252912f2c0302047c435bb5006730650230114a772bb96989be814245db1186321ac8f29ad23d7d440d2f5553fe93afc0e53dde266d4da059459885fba22b1ef0950231008452b13ce8640f1dc1b8afbf65fa709987ad9d2ea9418e60ce33826ffcedf832912c43c9f1e76eaae2f9be66ec9d905e0302047c435bb500673065023035ce9e9a794661e4631688c5e7f41b80c785015929a540100166d175562a3b2dd81e264f0e767ac0f3a5441bcbf3e7a8023100c136dbc8c27ca2b0dc20d6c54d6827d7196456b25f7583300e118abc023a279d167d69f64c0e2082de38be240c3fb8fc0302047c435bb50067306502307d4a6e676e330e084cb54ab0f1ae2ee149a785999dee8858a0c20414a4feffe382faa2eabdb9774550860f15c68f18c3023100fb97432fe5aceaf08f9aa5ad434ae4826b52cfb672e8eb29ed1f57158e35bbe98b1b2f7aed74a20cc6e18ef986a205340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aa4241d15d190ee4cb7fe1e630bb3b407e882d04c4b19dcf6f6d2aeb117aa51e02f4a66967f439b5f8b2f210d81fe9fb02306f75a7cabd50186afaa9b84bf98f707d5858766d2fa48f19a3930fa187cf59eb3c21463f7b027d6d1fae7098d7bdca2c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301e7f2fc38744f22d9a8df2342e963bd8681196b634de24e28cb4e99abeb6c2c5f82e0d3bfa44187203b94891cc64fdc6023100d1e9f66610585943842f16102d95d0f4a8e017244a4ddba8058ae7808fd20e7db133ff44efad64c2369389c452e4aa200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310095ed735ecb11f30e0d6d936368f2641c1ff68a9d45d2b47aaf66de65c3760e87aba1d3384d2ab8470668eba459261fc6023100fa22ba78a74cf67f2e965a6eac48c2a7b19b3723304e4427817ca92ee6df59752a065d39e595466497b6a21ee99904dd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304b8e01fb1b9b69191117888452b1a301780146dcf23721f0e5a9a701c2dd7e9ada11fbcd02c7ec36dcc26df3f1cad4f702303a7da6871189fddab9598f90a8141de498eaccf3ea8690ca85498b7e98ac1da77f5d47c1ac9beaffa5479442c46a91a70302047c435bb50066306402301bc1bbde04bd68463bd77582fd52d839c5e31e9e28209b883697f3f2b8cc905becaf046928bb6fb627fbdd338c2b00c602300d1e95d5146cc34ff87c70917d2f0702d90ce261d840b63c2df879ebce9de8cf0601cb63aeb12f3b5be6db06443f56710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303b3198fae282b03241a58afabc7f38da6010dd2e7d2540cff6f01e863aea5354fc807dcef11a66c69d1921950941f59a02303e9617ef20c8b80d701b16bc7ee2b024b6d5863e3a4d31fb1283d62f6846dab08b1a5c13792cb0076a1daca80bf734a80302047c435bb500673065023100e4b585084af389c65b2db29de2879edb1f42fc3bdbea701274d2d63cb70d1d34a4da6b5ff8ffd40b1fd005329b6bf38f02301dd52e0da2a3a53eb83b94a9d38fedd91ae30f7b275e14e33dc509179259a1c96d9bf66a318af3a883fb6615864c26fd0302047c435bb500673065023100c377e8907dded9a265cb801aae8b55c9217bd434bfd58b558ca94e519db51f081fbb9db072dcf373bac25220bc3b5acc02301d57973687d046e6cb70b2edfa0caeb532946a41e157ec879e3a4b2a24f415e8c296413a4b89c4b68c066310bb7c13820302047c435bb50067306502301cbf8097f9930a19e72709349219737cdd1bfaddd0dea535c78e47e02d6630208e1a0f8a0b29324b2f1159d6b940193d023100de41cda6b8eb0665b67383666d376bb64b966bcb31bf32630d3446478496222d2db8d82754c01e4e10beb9755454aa220302047c435bb500673065023100ad03cd087c40e9c135900dfb310721cec56c753711f56f0019a366221cfb7c77dafa5c18c221ea06f1a071a64901841002305568f288152c8ee8902e62f4420792ec61ad4183a620d03ef308d34452b097e96eeb24d56a2638dfb144c2d23f6220b30302047c435bb5006730650231009dbda894dc061e678b3dc91e5e2edf2c9ef1c2edfd22ea7832d141848027d45c0332991a1172e3dccfe94d176ed3d2b402307554d8943e6aea1fecf229f97757eb205173d1601f8a5cc5b4fb8457676276b922fa8a54034dcc5257ae945ceaa024b90302047c435bb50066306402304e59a9e7505a53cd606faa7e201145fa4f5ce38632fa1c7a495a82b1af28b3b08aeab7f88d77090a2210bfbf0f7b0dbc02307b10cb1779827833e33ed9f44fac5c7830dae74c340e9c9743e89049db98dd975a4d226ef3744ba5e46e1af9e81bc88f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023000de9982305f8b20f9e1965a85e9d0a1083bc44a00ad9cb7d66eac66c950157e4fe00aaf11fb96f75ff86bda4905d364023016c709750039a3090a3259be8d4d33891f503dfc92db5667804e58688eb3a1f2f7f3fec3654a2a90efa55b85f3ea5d180302047c435bb500663064023029b22aed64a31eb17df4e156505e99b89615fc5be352df04049024542335a9afabcb12f271c7553fbd0eac0fa6294c4902305c5dd0c47629f84fad36c3fe93236b2a9e30471f695fc7fff3f2a7651d4c8ceae028a04231b68618ceb6f68115e5668a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023057ae2a7e2bf5a1d21c9493f62acfd0d3016a2946a007a966f03a392b87a0f4232151ff89b8afc5e13edccb6cff360ef302302fd2db69188a5edec8188716a57de7cd675dbb24234398604e60d7ec54e1704513a2e35abe7408d37917937e07fa01c40302047c435bb50066306402305d3f33fea9cfeb4a5d7c5d6d7605b6ac85f8e072309f7f482ed9d8aaf0b9a4132a0457776379f279f99ec2fe85c9c6790230138b92ec7641de648cf787c27f18745938b1f5ce70604e608958c64b7653668e96101168ebe387be0eaf4d0d85c055350302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023053a60191f8e4ca60f2e58c49e761dad5e1aefe98431a955234d307fed7d6e227e1bcb6d94994e0aa0207c1c4f93ae597023100adfeb51a5fda0de33b74cafb92b9643661fbc6cf9e4be91635e06b55b8bf43823458010f422a172dfa5b9faaa186ff1d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300768ae4f40059695de7cc8c8866656310af0aadf117b0b6ccdf10b0f45d558dc68d03aec4ad1d2967cb5101a78f386ab02302356c3147b9d826b383c68e902416a2d11272b1b1711ed5bfca5f465d3a400d2dedaf65ea1f253d917fcd39d079576840302047c435bb50067306502310092c7d7a95c9dd29b81a0c7e611b11ade2e63d9a411ff8fffadc10f87248ebbfc87c75ff5a7d499c8f490f4a02bed1e1802301d9646cfeddc6958173a73dfde8708f15332814ba868f9ec26102bb42804dca8954b91c86bdaf9b8a19a17d3e3e4011b0302047c435bb500683066023100e25c2805f636a1e49bd6a0f45be9c8741ea7de0513555b40143bec056381925fc20ce6a4fd10afcc14d83978573570a9023100e660cb66212307d98af3a00335f570d9a45afc4dbf9f5826d2c0e9a917b311598be03007611dc6111d4462f5360907e10302047c435bb500663064023001949ec70a83b1e09661065507cb45c57c63917ffa2823c447362200679ff3e882123072de17da61e215c10a819bdf13023009483154791e53cfca06fcc78030a24439235182bb0ba02803c399dfdb1a61e4a1511f8e5e85e7d3039cd937ce4403670302047c435bb50067306502306cba69ba34c3775fd1d893faa7d6b5f688e6ad96437fb89df43d5285fa8b38e956f8e29a28851b5680027c0e05f736d4023100ca28fdbc2415a9207946e0119057249dd181c9d6f3a4c3b9eb242d76ecbb5709655019eb2bfc2017041d2eb9b909644d0302047c435bb5006830660231009591b1ad6b8b5f7c539c586b47e61dfc12106f36881c5127ea601565f39778354179c8338e693655b3ebb9a127a6bc0402310097dcddaa537a2073095c38a2050d3e51a99e3518e50f872036efddb7504d3d058394e25c93e6f7409cd46d3cd0fe262a0302047c435bb500683066023100b863c17c7a351bff22999c681375e659cd25405698b5773c6407b91b7353022c1c6e384e3dfb689aec1acd6af96cc5b0023100cc2d71ec9aea7c5aecd3795be142c2b3e1926f008f54a639ac31149dc58ad809a638b60755319569ea2cadbe8978b83c0302047c435bb500673065023100d88ee3795436c73a105885a3f897e5acf538a337766d2f295b4eac50160dc6b63093a9420d3bd654ca90f869131cd1250230490b68259e923627faa9c2f24fde3702747f3a90bafe52e3cae6e9d1df0c63a8ea4a9c9e64a622e3e71963622b8b94640302047c435bb500683066023100c7cb68a4d70076b8ccf2161225d552169205a912496e2d39ca6933b59d3c00ef7c8bd003f786c405ef74b3b2d77ae6eb023100d9283f6f62e18b97793a91b19f76e811b661a4f06130838e00e99dc932086a490e456b2775c02181877e8dd176648ba80302047c435bb5006730650230476526f67513f9213f1a3a4e25a426add111ea76e1d4596f6c44fccda2d6421ae71379bf01dfaa5024f0db5ec03b9d42023100adf4a327b0b69ad2ba7d788d9ab87fffd70e0ed78ccd76e4630b69b5dcaf9d259d346080a8a3000ff8e5d8e6b93b0f5f0302047c435bb5006630640230737ba16414d05b470c5b480fc3d5a935344f5b9735148cd6b3fa8ec94dace5225e163978b156b548c46b59eb4aa6fb8f02304c90b6ffd4f7b9ad775875c2dd7fe3026a89934286b1a6748841ad5c4ac7bfc9f9f3d0fde2f81708c3a45cd7451d72a40302047c435bb50066306402303e326dbcaa0850f45b97e436c6a8b1a97f7d8814b1bbd11581b13af37c6a8cf2190501630b005e9de3bb57bd2699063e02304dadc97e7dae66321949fe7f7892d7799297e096ad3d21f71b06b3e9c8c16e0b8d024b5157aa5fc314fbd6ead1841b2f0302047c435bb5006630640230252b9a8bb3075a476c4c79e2d3435a2f9102bbc638c70c8ec441b29d3ba0c205ffe6a21811607b0869d541441c450966023079ba5a835a79531e866a43a16d837021e425c04e8c4e2e3195bcc40f1767da290d4c992b8a428f33b1c5e6c7978deb710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300223f0bb5fc35ada5c504b3076d53c1df31540f1b1ca06bddc6b771fbca3eb6f0a60539ac3616e566dd4f83a7b92c61f023100dcfcb61cb4a855439f817da458691663f84b5b7a396659fef3721f36dc1a861e264b72103853ac5dbdd51f6a740ad4250302047c435bb5006830660231008310528eeb0526c8772f840c2409b6f3b8051316b1e9183600802f6a24505cba7b4aa03fa6e974b84624a0303ae72838023100bd202f480c7464359792b1b14e89e2a606fb24233a1f057938b641aee4c964093234b5c55266d8d4c6285b7475bd5faf0302047c435bb50068306602310084c555bcc3c7cbb7acdf9ee188bb78f35abaf341bde47ed798b063e45df50301e231911ef6b27c3b77ff861fa2dfc9f4023100959bbbda4d3e6092565e632c3868980f71685110dcea14d38880c087e4452e8e999142d5428957f859e998e4e3aabcd50302047c435bb50067306502303e137c0763036bde667b5a90828861c310fd75314986e6ad2c025b7f9d596a064f2a7187901b9f89c61b8a039a8adfa6023100f0ed56dc3c0167b41e9fe0a676edea5cf1f6fb5580f26d051655aea5f58fa1127d88cc6685fcb377e84d1f7a8a5c50d50302047c435bb500683066023100ed739323a25bd9975c2ad3a8d907a9a76db27fc5187d08d2fe24d986fcad4294c9842dd8722a812ffe52b6d64a6c2fec023100c69f5ae51e58174b886c68b3b145a90f78b284161370a701602eb86bb2203d9d994b088a29c6870f260de49f4a8c05ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303ead8e5bbe8924e312d6e98092d4ff56529f42600c0b7671d064be6e766f1bf72e0e52bb851bfeaf16b4eb0237edc9b702310082d41ff66453fd00e14857aa658e95489d2184771bfdc1bf13087f2725edb75264eaa535f6beaecf1a2bf74bb2f0ddc50302047c435bb500683066023100f60b7cf48e25099483788443c4e5980092f17a503f57d547b2fa190c747834f079a261a3d7544220d032da10513cd8fb023100c2ba4c1103ae25f4694059d9a5928bbcf48a664f0a266ee43c0dbf471a1048df1b04ec0be4736702cbad51df5d3c394a0302047c435bb500663064023035cfad94875d332b51b56fdd256c31776e46f17cd6d9f495c5b25d77a2e37da249ba2bcaf607b13c7f6fc3642a7293a902307c4a145f597e5699a4a268cbd5266a11f6518740959fac5cd1b489018a742fc9e32cc4533ff973ae0528918e8c13c3630302047c435bb500683066023100a9b037752447615c0b68d73f1eacf0637c8ae1829145b29418ec65126d5fc4dde7fab87dd87a16ecc0e4314d194ae0e4023100c5ed6d67fec4c088f1e2b2cbffa1c983e15d2a9d6379b946fcbb7781726921a43180541130bbfdd8394c2d56c910220c0302047c435bb500673065023100ea1374d0fd1dd2be4208e62b4934e03609e1b503cfe82f2f2bc27dd7fc51169138c979a529f0a272e7cfa5d201d1e353023076045fc9d690d731178642d03d4f2aec78c2f8f9bef660a937194c70f670cb294157ecf9477903680846ee94f59431380302047c435bb5006730650230472f11985c3b08c851b8368b28d3992f0f65442ab25d81a41050970c7c0ec55c49d260dcb54f2ad922626cb7f67b57de023100fc2709a81160dd0901704fd9fbdbe72df6132b0abbfd2c9b6778353eb6dca0d0cc1708ca7856c732845c5fd48db634630302047c435bb50066306402304800f4cba6dd540296f7d06a5d59704b458aefea1ae1387fd420f9cc20eef2d002036c188facad20e90557e193fb16a002305fa7725d927734d19d18026f31067728b2c6911878dd3fa86b854c0a26eac787f39ee4fd31c9f0a8c34af3cc0b70e15d0302047c435bb50066306402302ace064156814b067faa2bc730437618cfa286765e5adf5aaa4cc529044d3fd5fb9abbba73199042ca5cad9c4e02a921023049cbf09a2bc609238438810e958220e3f8c843f218589d3b036b84f1a294473d35780377ae098c5fe28dea636c24d8350302047c435bb500673065023100bbfe21289ee6c9e1056607b6f4f369fc75aebc2ef833e1f0ae244b73e25a531625534484dddf0aaaad67a99b7ea689f7023068b7cca754b5a2449a41f81ff2a1c138865ebc5a0f597baca889b4b762adcd5f322915dd34f726966984369fb0eeecdd0302047c435bb5006730650231008aa1a0815ab47fcf4fd43a478e62e40f3c251bf20ad243d43f2c0cc89ec33cb7c135586c178c7c08e5ce880a729798d602305bd443759143e818c7cf295ca76c09ef35b1fb8a88f866179fa7b10e6e38ffa49bfba835af1456e3c0c09f26481c41c70302047c435bb50066306402301a9b3ad5d4d0566b08ecb1642d8b57d3c582eb9f5c5832e025491a236dff52914961f4e05a664113a1de7d913a97421b02300ff10e6d31466477c5b7e8cd29afadada61bec2c469a9c350b16ed12214e671e84f59d4fa629101c13bbcffce61cb6320302047c435bb500683066023100d98ea1b6d2ae969cb19938cb0f31b6795bdfc5b858b10f57b212f4f69e4b75e72b8c45acb1d9ab89dd1a90d18d418b30023100dd5606d83cb94f11cf55c3c65bb00bc98b44869e525aceb2ee2e67745d84237c1073ac236c7217cdebd870ec3796ae820302047c435bb500673065023070be9e9c3084b6e67526250715dd9372fddfee376b8626cc8c3941273e15c2630f3aeb84911a03f15983b185853ffa77023100c19f15a13ffa7c3b98a832f6053f1c05f45a85ed1b67d9dddfefe308f56fb4adfc16195d0ee3f9f1d3072574da40368f0302047c435bb50067306502305afd0b85f25d50cc2a6cd9d6ec942601f271ee660eb865d469b24ba0a55e127bdc9c7800b00ae9b7b6c25f76f5be352d023100febf82effb384017916bc196e0b0d6d25de864ad6d09bf08ec8547e2bbf94b20bfc1974d8a2a8bfc96bd84299760cbf50302047c435bb50066306402303f608b6717d176230921fa2a7652b04a36593d71339ade1baefef9b21396631540cf0ebf2355c7510ed1f7d8dadb83e3023013d17a83667200938eae59d019f1ad164083f6197c82dff68f7f5b3700df7c880e3995497b3aba838d9a67ab095b3bd90302047c435bb5006730650230038df6b71f34eff9a6fa88f06d7b98732389e3d181941d07f568a286198b81e98c7051cde95129edad800398eeb7ba91023100fd56e765b38895d66fc2fde4d4e97c7710c385e3e4c72f885041b52b8386059e827398c79f3e0d0a3263819b77f9291e0302047c435bb500683066023100e2d7f30bff8a7b43f546f6327e1da5fe099506b6cc7b36e6c16ff9f829cf3e1d5bde3c59e0e009ec8bbd65388b6a037a023100cfd8a0250058ae98aee0be393b822a2670e1442a996092e86cfce3d0d9da70eb6596a6ee2f96123f24ee8ed3b8dfab9b0302047c435bb500683066023100f2b62db60dbcd1a825217905ab66f8014df3c7b9c1e9fb0e209d9222f3accaf1f756468e2aedee48d32f5447f41b58340231009f3e3209d7dc0cf3ec4d4f205c4937a0e627c7257cba0e1323693ccc5b18929b7f7d4370cd9d94b1ce1bd602c490af8b0302047c435bb50067306502301bdde953d3b5c88ef029e34836178c78a53ee690b34cb10f34b2de2ee01dbe4f83c06757c4ad408ff0bac2c9a35593ec023100e78029dfc2020f4795e3ed80cc9cfb2b3ac4abd5689291bc4ef082a4b24f06ffe2ab5c575d8f97c7dc161a6a386cf68e0302047c435bb500663064023008ca3af180d3350068d807c906171ab3b7b48800a9121547490704ad9ab52667bb853b461234a9ef861bf3a87d09865602303082493203fcf515d3f60db96cc8e0eadec82d134a71274e55fb0e260c50bbbbeb0146d9775aa3217eac572aa95247ce0302047c435bb500683066023100d992b0ffb0a90dbe301eef751904a682061ea0c39145012d00afcfc7f40dfebf0aff06328ccbb76dc0b8ced1a8cb8885023100e59c62dd7a17f28ae5d608cd17a427edea277abf84fee9a7dc9db692cb97708685630f06fb86ad102b6d6c0bed9f8c8a0302047c435bb500683066023100d90895681d3c7e106b7e79daa0a6cd9a2ab6cfc44071223807e8ca8d324bacd0ad28095519a0177a7234c8a5f29211ba023100fccf4f9235632737b4b40609f406ea6b0374c5f8aed9a4b1ecc5ee52ab323084e6f730904b68799aa5c6c3df36df5d0e0302047c435bb500673065023100a2078ec28fdcab9b65b69b9d1d775f7bd145a2a93cad62e94a3a3e0296ddd088a928e0ce1643da12375b9b97db0b9e8f02306d70f75b17c177ed557db3be8ba70f3484b5df9cf0d4369b7e4d4cf885a641bb72710b9ef4c40d4e5349d60eec10dbe80302047c435bb500673065023100c47ab75858a3c0d8499fb9c20ff1ecf55bed8d94497265bc2c1e05ab18d8ba9bbe1ad2936788c65da9ca7f4e1b748a0802303d36c25b3209751f1bdcf30afe48134efca1c9a89889dece568c46a333446b02800afd3d73fd5d0921055b1427a792640302047c435bb50066306402304451a291e63268134a3365c2cda94d236a836a13c2d41ed5cf08d6995f159a47c16d04a7d252ab64a27e18149ec3196b02301272bc83f157fe594feea9580770fa83146da74ea8ad2591f5a4a874497bb5facf5976b2e6583276c9569955388b83970302047c435bb500673065023074256231f83d12e83e270b801050ba983bb5e077193a545010c9a64729c0562aa3b66f67b097b7d9d647dd95a5f1b415023100e37b991fc7dd41e12bdd0ac27a8984064734ebe973a2dad794424e39cd904163236c357f4b1150578f94dfc5f03a9dc90302047c435bb500673065023032ac3bd2695a7f88ad41800522f8b395f1e317561c6797f1198f2757a697bed8a7e2a18850c9729463a8211c0e90be8e023100ae80dd3cc50f46cd7eaf9a234bec49ead438c8069133ca02be550363cebd97fc71837481a1425d565e9812c147820ada0302047c435bb500683066023100d84f3cfbbd8f1536445da1671d255cb9371f3cfcda5d59da62ebd0edc56640f3697e6e9b9e73c2db03bb16463aa9929b023100bd58148daf083e376de58742b6ada3f233ca9b9d882bd9a3a108ce1b5a1101f84685575c4ceb626971580b54bf2fbc980302047c435bb5006730650231009d35107851fcf6f191e9fcaeb3b926e5a745aaddbbe36c00d80c22a493f5bb80de77a2212db9b56b8b1f4c928fbb9ba90230090aa4319f6183f9dd0e08d5a9025876497675dd49e3a6d6c0e9887c9d10bd25dcf6fdc1089e56330366282f4f9182f10302047c435bb500683066023100beaf3106db3f420d567fb8cb84e3fc9b087e12f9bae0d5453b0336df0408da6c073ff254f6474ec6c0ad0d7735d38cc6023100e9e0af7d09aaeb51ea7805b16947580425c6d2bf044be6715a63031a52e1c6085ce85c4317cdb8ec4da1f9c84939882d0302047c435bb50067306502305105ddde1aec8895d5f9df13ccf3cfa012ff4e68ecd186fa8f2fc36e3d3af7fddb70ab8866a06c3559bc779cd9f083e00231009a0dce4e6b6b54d64a95adbdb6407fa653e47570e07c88ff36748b05d37afe5604651ebf16f6571fd84011e2eb34aee70302047c435bb500663064023062f11fb49db867e384db07e962465653570cb771eb6797ce8a25009a2b1f1511ceee4dd99f259e304682d3c9462c1c8b0230182cdd12aa07ea6b832fb20f4bb158051c79699f5cea69b10a3845c79a9c9893a573790610bd23cd096d9ac0590134c10302047c435bb500663064023075077095de17a9b610a7c17b108e4e3c256378342e0ad44079d3c76ecaf5a5a754cf4929afb0625e0a704e11e3be9235023012b1dc108bf994504c13d114335c8df9f1a54a34f7499d97feda20b36494fd9a31eb76926f9b404e2504ad2c8740dc700302047c435bb500673065023012ce1a94928a16e927cf715c6a6a5f2173e8bd2b3a5db94992e178911e71a4047a786a1ab9947a41eb1c756b174641a80231008dab80c78d408a8215e598a502648f03635f6c3488ec646830bd08cd5b68ed8dcfde82ff9ab1f11a138a43e33ee2ff770302047c435bb500663064023007b5cf3f601781c2b43e2e7217506218d4378f957f1957cfed984fc97661e01993cb5de35b8e2035cc47001ea0c6e4f10230256705a1b3722d667c911e0a0df6fa919a29fe5d0faf5078677731f1bdab2d0dab1c05e52c958ed3b96acd86a05416f50302047c435bb500683066023100d63416f47137d370f9b4f3bbbdd4b3598d06c1ed2efd17fd743a23b609013f353b7103e891731bb13eb0f392f5f47aef023100beaf10794252b3443e385ac97243ea1b6e326a71ae4a725ca8c57094d1ff7febd1af34000cf801bae273de0038c14ef70302047c435bb500663064023067da51305d57e20975af2c99245e48bdb02e344a47737d913fdad0937a5a735b3a96fda05d62a65697b1c20eb0c43d5c0230089f5b7dc7ec30967dde0fc088d4d9e43ab7cefc9a1d11483ea4354b8665dbb45f51cc3302816624a92d950e2c07e9760302047c435bb500683066023100fa93c9ae282a2b9fd30a7211441be8dcf9da2aee7296aa74d73ff6c82a163fc78434427a5e95e7f35e04bc2eaeed504e0231008b1afc32a406081425144470dd64c197c5251116e15b0ce2f631576e94fd1e595614354d0767c50488e0fdd90bafe2e90302047c435bb50067306502305ee07cb152ae2981f78b1c34b72dd6ab62d17f09169a85daa54c93b16949a1d1aa2d07c77b91d47d4066a5e173b51849023100bab7698e3d54d17308fff760c77a44134ec648f6139d3948fe2fe43ffff260472b5c87653cfbc7f67ecbec26c9c7ff160302047c435bb500683066023100d502dbe6f2431c9707dd58f79095332f3d418ccbaef2006fd47a3e8db73de466d7580090300a903aefbd04dfb005266402310088272a655198deeb4b10b4b84388b94292b81e8cb91f7e7ca61606410a74e40186be37ad52a3ffa9bcc230744537ce5e0302047c435bb500683066023100f9c7a5dfc1d50a0a8c325fa58e768bf81e3dfb697762e011a0f698eb253ce2c7795e99dad34618573a7b12cc1c7c3cd00231009424b28882db696e45e809923bb26a3f32a3d488e32738d60dbd9e3b478307c9cb226333eb504799e957bcf7f03eb8f60302047c435bb500673065023060d4113e2777bf290f145170b2f16535c3e2864bf45bbf624125a046f53e471aa579ea6e03d4547d9afaee0ac17ef9a302310081e53d9b32cee83f5936e07e39576d05f10e169dfa83ba2c123090566de2ab8fc0d18fbc0ac84337fe0004fe4eff91c10302047c435bb500673065023100c98a45f6b408d6695a8154729a8fb196cc1e815e33eff83dd8bb8053ad0a719371d584167f1ba0bd42f1741f13ad8bc0023064ea26ff66b69591c8c048b4045a31e3e7d4e7843c6186d38b5b986a43f59b7c9b065be445159f309b4bab122e2740fb0302047c435bb5006730650230687a1d9300135a08564fc0e8295f99dab09be1453af11c9d4b50128aefb664332c303d38c26ba24d4f70addc788ab752023100f19e60dda9206743b9ac59da0c93f19c50b36594ed55f70c5c70ffbd1f0db521904c27e6bed9ef3e963fd541304123910302047c435bb50066306402303a8a4016b3add3b1ff01fb307dc5a597c767ed6622a28f177740d3959b384bcf3fd99d2cd8277972b23ecf0597e26d6a02302f6734988643fe8d5a0c87675c04de5f7bca1ca03dc5a4136ceac5ab60600f88c9a27b4adcb1200402e22e08f18b4a320302047c435bb500673065023100dd2d3319bc4a0365fc39507500a6e0995c8cbccf90b176c354034b96767b13cdfc6d3751e5cd073ff3fc0709a843aa48023067d75bbd104f479dc49594d4ed7a6012a9aecb580dbd5a4d813704fc15f8adc922b5327c695deb5896d6335c55ab77b30302047c435bb50067306502302689812b684b7098d06194e425144ece7f2ee9e822454c872ece58a993d4c0085c492213cffb48ef0c6cc9a6c53f30e302310085272fbaaaf8caef41a3c5e90d6ad464f7a82739a57f74071a06e2bbec46a9971fd34b167b4837fff53932d38b9248de0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008295b551d15da7f9654a39574948423e632a0b70f96efc1601a6c4739979d3cf2bf911f89df7992c7efd03dd9ffe160b0231008500510c557c0378c1de6cc18a9b703ab0bf899ef2805c2365cfa10498e4409ecfcbdc98b11a37c430bbdd4cec8878720302047c435bb5006730650230761f4278716d8284bcc896c347c3668342c8689e7e3e5065592d28eec9be21b44998ddaaa1a660788798cf7ff5f4c89d023100cdd17b818e64b2d8b27075e4d8509a9fe807b3f4a50d7ae992fdab5a70c921edcbfec0aaebbb8e17f1179b77d6a781c80302047c435bb500673065023100c0f09c6356a844938628fa431410374b6fa363867a342a3f58d2ed499ee8ad40a43123c61c931d5564cccf818eb546af023059fd07f3fa50d6de35f073bd81d83f4cd41749d75244d3d99964242b23dc92b9f5b5d166190d6b91c62fef3c3e65733d0302047c435bb50067306502304882aa8d248cc4f42576251e20ff7f6f545a9445bd18333257fee06deece2c09706420992b2e8588dabaf2412c8bcc1002310088ed38a89c52a1b4cb189c3054fb17a7b4b76aedcf3107e7f922e06afb03fd7918aaec4b81287b69cf55effc1bc1f8240302047c435bb500683066023100b963a57f9d02e7980ac12f4a9336a0251cd6956946e8d0a603df71176d879d91a8fbbbac1d9f4cd98b6593fc9a87b37202310092c43ca5c30499af90dcbcd376664ff6e992925dfa388d4e2c421b0e97d73cd82192ad01104b1e63f495f84902c5cb7e0302047c435bb5006730650230203357aa551cfcc9a05e9a8666652521f2627ea3df1611781d18e1cb4a59dcd6469ddb9d01f042b2cfa0b8469d37a71f023100a9d21cf332173502f5217d766834328117a1c6a329abfcec8d30cbd7d43964bedf92f2b0caca5800b7963afe85c9a4270302047c435bb500673065023005720f7bd009ff8ec8a910454ae2579370e09b9caef920326858d6685aab517f63d4c8c5c70cec6d189585c423810603023100ac1815e6c0d739eb346a82ba0eb1049488ae5aa3484127778e888460fb50017194ed702a8a288eb895b77a30f134862e0302047c435bb500683066023100cb160caed6538e552ad11c9bb007cbd97bd77f40223d97e1d6a4100c1d581f1440d92962251c1404a8ea5f47fde0d132023100d2595e608645e416e73ce00811a9aa4ad771dca89cd01357f84a89be3c9d3eeb61b269bcede6d04d744f3bdf64732abf0302047c435bb500673065023100fab53eca66557a342d2dff5b4b3afbe2daf2cdad48b6ca46a73082410f82efe17bc8cb8006cc738ad402845fa0f76c2d02307f1ae4e6ff42abeab6b81bb039b5a95ce5d55883d79cd5544857dd27ec20e7b4de38173b0159c9a9936ed22c9247d56e0302047c435bb500683066023100dd715977556e13e13a190b2d4772bc73ccbf42247a924af1b7af91c87f8ff7b38615409c2a2aec5c347397cf7329ee76023100bd544d2dc15efe2c491ea6abf88f95336886c8ee37e29b9a44faafe16ed31060b0e585d5c3e2aec494ba2c75c872555f0302047c435bb5006630640230769fbea3d216ed2c5b40500f99dae837d018122bf6ae8707823190b480123301fb8889a04f1f70383ba13f6f60509e9a023025967c47baa618eaaa321a3ec5885c87cf7b5c1ec2178c2b025dc2010f6bb4c6846551db4491415ddb1ec703113c3a490302047c435bb500673065023017f71120de45b3c0a007a221d948fbf25e6e893aa1dfea6418186b167b43103a6b7668a9f2f50a781b315e5ca8d8046902310098d6c543ba742b28520c14654674848bbbf9cbd11a6e75689cfb032a31f66e82e4dce962e0cb617f2a385282596ad24a0302047c435bb50067306502306d013189ab0954feba289dbb1a4cd68226d248d48082869ac14ce80375b2f8ea1a79c8ae164d83c7e15b978fc6bb1c87023100bf312ae8893661bc44fadb87cbd8bfaacf7c872124364eae195a34fccbcfbfa0c018f748ecfe5a2c68b49daf84c543ee0302047c435bb500683066023100bd85f73a3dfafc49a1d517991b8279d470157d8ada09cc6527a79eb1d430a17e5eff7570aee14d14fe5031974aaaca03023100aab9229dcb46a77a75a9e07911aadcd148cb66a2ce7b12402201248e172838745371e6ec68d28cfde1e70d83543c842b0302047c435bb500673065023100f295f752fc4e7b70ffedfa1cd061cc319289dba99223e297831944769c2db8d53c3887c83b19a401fc339924c2cb22ae0230047e1a0d2c153661a9989bdf64b5fdba7bb248c11302c1bb1e7feaf03f2e997b0d031f5d8ea97b8c1e0161466a57451c0302047c435bb50066306402305ab66384a1ccb513c46d153f133f449dc4424dee48f07bb9e7c3044725738ef309a9af41f47e665ca1c39d4af5e7b3650230756457e137a4d3f2fad32575866e2e9f37383db9450d46d3c86c1a83a337078a9f32d7f2f05baff27936d82fd14f38ef0302047c435bb500673065023100f4c42e7219c05953b5c1b4428a59deb5aded0886a81a9c2acb1e54f6484eb7e092c0043f4c475d43bb24c7d7d8ef4a3202305ada015a9d4a31fda08b193e5139ef037c0124ba7be275a4a209b02a93502c60424172847bf5fb6bd956d2c5645f9a3a0302047c435bb50067306502304034f2291cf9a263d658b196c969962e834036d808c374f739c24462a8a7e725c64091dc59c5d27c4da15736ba1d2f2a023100aaf3244c2b123e563a7dc7c5fa0b945a7f9f8d539d6b72208e94c00cdb39ef276a65f1f8a7b8ae39e6a7c48f90a6394d0302047c435bb500673065023000da30d8c4b5b3b6e9c0f120a5a21b0b316e2fafa1890726365cca6263b106a2e9c157445e04ae92fd68d3c99e95b0a9023100dc95851e1fac62a3642c0c854aa95ffe9bee40905d52d17454ff56f05e6531bee072adee433c2371df3e31bf6b2e86670302047c435bb500683066023100aaf41796ee03a5e42e46b9cfbb9871eed0ab131373c4327b9269253568457d786b12af92e219f11847c033103cac831a023100fc004e0e7fe2304a360f2da8d20f08957dbd362a7a9d88af5222549d2ede3bc9f2fb0e140c54efa64eea06762eb4bcbc0302047c435bb5006630640230017b41f5892a898e4f83f2acd140d32233756a1ab4a9e1955b4150040a2e9d77d1d20b6d8ac9d691c05adeaf336bb93402304f2cee1946ce308a4c0c93043c7c16aba2770fa1ea73077a1c88c084fd45adfee03752174b59e32924c0d0083feb8bb30302047c435bb500683066023100fdf5c69d17fbdbc8008152f25645524dc9176c3d48997f0870c15c894d3ae3920ff064f12889c3a61d67feb305d8333a02310085b545542d328303c3fa8a4b1cd45e06e9fe0c2192cf6a2f25a3c91a7cc95660bdf7cff3babff28c1223d9ab7fb534100302047c435bb5006730650230745000e518408de61bf7bc92226edec7d54f4ddbff05c6ab5191229f1a7af4b2ef738f1d769448622a56740c2d9d5fd8023100ef443e0e8a147936c92fc14357a6bd7a2b8e132f227ab4119962a0f24551bf9c434a43ad71c57986e97910ebf6c5450e0302047c435bb50066306402301467ec251ca73e18b880576df4ed2036164e5c0fba57479b75ccb7040d805a9c134b9d043481fa2df31eab7dbf427b4f023010b1d6ffd6b25c6bff7b12621d59e3df8e45a7a0ea8438df75ee72a905e604e0b335b22c1a27d8d59cb42f85cfec01030302047c435bb500673065023100f13dff83ded30cde5ba8cf0ecdc165d47e55f6c7ad54a15e4127a98d31cb5db52158edd88d995a132594ca7e9913e7bb023076ef4d8d9759808a948951755bdd93a0c4a2002521c5e879e25bdda9b64f19d1de5b7bc5497ce9c70dc631319bd1e4520302047c435bb50066306402305c57f90056e4093357b4698bf9524466719e1805b7f7fb1afc9cda69d0cdebe0846e43c2f72bb8c4a66ab27319e017ea02300853ddfe8fd6b2540fca7969b7e55b23553b4c088356da20f8c57551d985fff4e08ef649cd7dc6fb523947c9fe81218c0302047c435bb500673065023020a456aba4575692c1cd46df94eb2083097abcc817c99596ce8486f46082cbd3b8db8a0424286522b6a841d10784debd02310094ebaa6a575934d49aaa0674df9d99496ba0cc49f5c97b0098d7c8e09342aeba0f6d3c7b211e918e321399166a2f86490302047c435bb50066306402303e858e284e83825d46994d3d558c20a47c9ab9b4e3583bace0ced6a327a051bb26abf26b6afa2ae7b117de00ef99a87802304cb85f6f5e7c76f451ea14fd083dc44973ad6b4ce1b9c7ccbd5f3d044af887182973574cab88f62e36530adbc96aaba00302047c435bb5006630640230072dc5597bede3a2b36eda0c9914f8273354a7d6d430a4fd2b2712d6a8abe26b61b5aedebdb626e0247426f06157406a0230048f460884b4f22e07a00aa4baeb42abfa2b2162a674d3d28ccdf5edf440d9dcf13202c368bba0964a956a9cfb0f27350302047c435bb5006730650231009fa2d49a7e44092d13ef847687576a3bda2199cd02e00e063f2169ebbff946741169302af2febb3faf140351b2c17f8c02303a22d71326d06898520b6d6855f031adc237d8de539f5c53db684796322af9717fe1bfa70d778fa96df272c47da6147f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ee1093e5d5e2ef4a23a26ec011270b34332a3db99c54390754a954af0a24f5e81ab37bd4404afe6e76a829f381a6594f023100dd1f473076d44216510a07d25a2745d37a59dd916b1b4a2e59133d73281664fae3df7a40ee8c87f76150ad57ec060ac20302047c435bb500663064023075cca4bf20839e11464431ee01a24d4a9d92104dd2dfdeb4cad3ecc1152f510a97ce9a747fe1a1987e5c228c5b5ff118023028143ccfe14d8b7838674efab78555cf7c94f806dc452e125b44609c7c5b37a783dbc87d30d04e976ab11fe877bf888d0302047c435bb50066306402301e3496328a77af671f4dc218f88f99524cecbdc73f4a491614800c4593db48b4f4c08bb8c1a9e0c394ddc728f13b460502301208ceee6fd9a634ba5f26e87ea3b9191a03b7e0f6512f1d4919610d6348ece9c5017660242001d35b9fb1b5991202ef0302047c435bb50067306502305a9bf64459629e7e2d947f1f4a4590e5e12d3d616fed72143b601b00af94a14df7cb1e26ffdfcec133520e08da62b018023100cf9a29600b23e39ef0d8e700ae9e807e707b7731705585f30c3ec1d2a59128b84912eabde35eb7a14222ec2fd79a80a00302047c435bb500673065023100cd6c6785c39a3d4e5dafd7df4fbbfe1c9141402a098e863ca9d44a8dff0497c6f7a87bec3ba52124d8a6e9b46c88be0b023027ef359d63276e0c46f55e38244d069ad5f820d44882cb3f5bf4bcfe419857741e35336baae6557dea5d24d4106f6a3c0302047c435bb500683066023100964c8c2a12052156d82ee10efe328e89aab4fa6722e207ee8bf846e3f316fd784acc9a6e29d757bc59b30430ba457d4b023100f7f4132432249550c7d68d8553f996cb9ddee835b661ccb4e6dce278924c6ebd6948345b8e56fb48c18fd37b2bcdd6b80302047c435bb500663064023008eeec0008d8a6037c9082243a6ec4cbcb20c6c7effce0abc9ec4e57645c2d2999b2da316a680c9ea5e808a15cdb5103023007b584801615601cd3a22cd742176296f4c0337a43af4e43c3828a53444310eef6bf1e0be7ea4db7288dfe52648339740302047c435bb500683066023100e054dbf9dfacc4ad2e10ad798da4858658c4a0898645b788556b60668948102867503d2b9b6e1c1409945c4d626b0d15023100ad7eb1a9a3ed6b4f056e38acb3f0d0df981ac2b5c97774f9940dc3cfbdbdb09ae38cab7e5573cd911d401b45ec7d83170302047c435bb5006630640230647d07223221a50930c801c91f87b80b465308c86f3d040328ba61c21c2fa87d7b85ab9ef4820df47f7a71d6ffa72970023021c1c36377e329ceb39bd5c60cd4329ee41413b0cc3cbed8983a95395b8945a4a6cf6493921163eb807509059b59c63d0302047c435bb500673065023100ca214bcd97e294c0434b1ac47682c2f31e80a5033e35ea7132621d76710677aebcf09eb2459a5aa55f899dd791de175d023036408ec264a8a06ee4a8650488c158b8d8b8b4317f46fa3dedf25ce93c55ea1b2ee53842e529bd6f2570d5679206f73f0302047c435bb500663064023005b723111c76eebf4f3519ddf17e65f92a96f6b73ab502f4c249f184850080fe0956ee5b55097bd7cd4fb3181402c4a002300dc875da8aa27825eb10694fe02709f7389a54b661b156db08f6fa111878cbb75bc2f827df19f025244ba53ec6fc92900302047c435bb500673065023100e4e64a528d4500c306084c055fed8862e21236151cb60d27f26d2608754fdc6273355c6fe6c08e35873dd226bd594a4c023052676701a33a2ee99a257ab3718d40d5299ca3fb3d01d3025d5b224fe8212de1aebf97d3d6b00b3821831e93a8960d940302047c435bb500673065023100e7fed396a7e5fc22c19edca7a5e696cf4b0e058dca88257eaf69fcb1665973f27803eb64bd1e5db44aaefbe6d7077fd3023004b5f3d8e996a68902a5961e8a8731a44e58c4ddb54ace0e6c9a68eb326ebc721472f93d0d3bf55dc5e821e1e3af104c0302047c435bb50067306502307f98a15fdc401b6d266284d037c5d90b575e3a8a2cc4e857409cab73cf8d739e65bd168ff583883eb9959245e563c713023100ebe381769d4e134456bc6c9d979b1e92e92dd6f19debc4dddb165177a2a3186de5bbc01547470449130b6b139b93d73a0302047c435bb500673065023100a0c4cc83545a1e8b7701324cf1024cff0f8c84d1dfde7e78e1efcdcb837c129ff62de31b0b02b4e606472417950f00f2023000cf43e4be8601f2b13d42769adf4e99d8f98a64636d89b1286155dfa0010776369f4e4c7ecbc6cd94adfa7e69d5d0980302047c435bb5006730650230592374e174e0ebd7935f2a4c54f7ca672e477fea8dea0b30fa87efc9c1c0e39c741a4c6feac92b92edfd1be80e42973a023100b8d2506d1170e8429def554bcc808c02bd2e40cb51e5a84576704a805c085993847f856978731b653142d98bdd9fb4090302047c435bb500673065023045450463ab2e7d6c6fc4febbc8715fee49b94a0d5ddbe72fb13feb69cfc3855094d17e6730f05fa6f077c3d690089b27023100ce72c7e16b03af4a760a07d05e3aeb7ff3c7812e29452c6e852bcdcd002be335128ecee597b7d682e02766188585a79e0302047c435bb500673065023100ffe5251ba873357a44fac34f7d0f592df0c0f40b3ba92722bf476fdca62c250bb791c6d6d863ed17cf9521f7fbdcc1fd02302fcd5f701630eb6df5605a0833c10d26d2ab77dc9c36fadaacd2d82474afee8b6cfafe4943c1be6da968a098df12aa450302047c435bb5006630640230133f5d4e42b0fddca677f2b8e88d1a8e19dea4d414e8938c485f7bf8cb625288fb77eabc2282abf8fad7e6bcb6e45140023077b4dff772c104f9a1a04ce465440ccf5779f83fa2ea017391ce4febe2c50dd37ec4a931f2da8a19c135971ffaf183d90302047c435bb500673065023100fa3696b8648fed72ce1cd3e0ec7b5154630e915779d749a4e8536d96c05996399036e3a035141625f3539e685fb10fc502306d9c30fc4846ef913ae6b2634f79a2f2ddf8adee80e6bce2bfad18dd848a9e25a0f65a1088a73c1a4b41d92e4987fd320302047c435bb500673065023100b41d7de17803f3072a5f4b0fc02442bf3caea55c398ea54895399b9ab11edf3815096b79f4252a6a4377d7a8687dd4fa023043af144ff3eb8b5329d9ab912765ecb76524ef0184f35d2dadc8284e6a7385fe9d533b3627b4ba5cbde1e94380e56db20302047c435bb50066306402306d4a8517ae0cc7f141541ea2c7eba38870de7e7128eae37b0f0c65044817fa9fb0d65b0466ec99bb8ef5c2679f751e2b0230690ca6ffa7aa41c8dd440b92247c38400436ad56fd15ab3342eefdf5c3b4833154bfed7c2cc24b2d0ffc24cc930a78960302047c435bb500673065023100f489f46171e494beebda45a1fe8428e13a3355d658f61554574a46ff5179cf787d477f1298d3bfb7e393329eeb33261e023020c317e6fd67186bff0bb59208f77bd144896facfe0d1bcd0aea3fbfa6d455a861ee0c2696b2f1dbcdc2f9fda207019d0302047c435bb500673065023046a24eff0402b4110e9c19efd4fb82cbba6ce1b78e6591ba3858c982a3fca400753870156951588d1ac8545cf93e7d1e023100bdff9a35d645798eed4bc8555442a3a77a2a5fb255d1baaee0237cdc2075b20b58ec14822c144fa67bc39c060347d4ec0302047c435bb50067306502302b1fff6ab9bda5136bcd0c6b200e5aee1e41aa2fddd6a4b62276688b64c94da46176e8c2c18c86c588d580c2cb2daedd023100d8621cf0a9e68c77a712278581ed9d9a1616f31dfa313df2b49018cf22c5e037b367730178b7568a620f2f70b35346660302047c435bb5006730650230092cc2ec580078a29d5747870d0c4969d312f8201675cb0c75b4f978593aa2e066da8dd89e0cb55b8781d35662b491250231009bd1e74b4cbd5cfdd8cae916829e20a876ba9b8da91e2cbfa2f6267bf92cd1e3390e316054238affa884a1801c4035990302047c435bb500663064023049fa0aa62ee94969c4bc27a693583892c82ed5a1b83784daade635d782939e508f70d68e70f13f8a350f0003a06fdf8202300654f468987bb516d11a6c57cfc1e187116eb04063b5fda2bbaf797714edb41c6628b2579b81ee448fbc592148ff6e7b0302047c435bb50066306402301b04858068e9decd8cc08a5a6f64e96338f6a6bf439c5e55dfaaad6960cee9e74cc4e992856c3c82ddbfad2ceace2cc3023008b6ef1e18de231fcff17c2a27ecf4d1327bf962ff5eabca326e88c48af067fc71e608c487eb7ea6207f71aebd22f5ec0302047c435bb500683066023100f1e1f817686a9f7cbfdc55355db8b60ed3c4849ccb7efe53b3159d00c78021c4ee1d2c8637d7c5d2f3bfc5bf5d83f617023100b3238c02a625085b5739eba85723d96b935bc41ee982d095ea78663c95c0873bb536c3c0e4cc68ab80b925bd568799f10302047c435bb500683066023100b54eaf509665c7339c2d1e7c6d7ff31e4837c861ef27084d9b8cfa192d0045ddb916fec682508845188e5049b0e5a355023100d0837c20082690934a49581398e44c3cc5f3c4f40f741a806709891c9daca9b1e98665dbae235dff9f229993375d9c8b0302047c435bb500683066023100a4835c87a36943c042b55f479dcf4f900dcb90e53c19a7d7ca55e989a2162e4a0606bdb54ef4e995d60a45d938f1ea66023100b1393da410538ff331781ae80e4bca8400b6fcf705e456170dab0172fc48fd3ed40fc00488b4a016d29e0d71d33474070302047c435bb5006630640230433fcde10640dcbf839204406758880f10d583c9fbe9ba08580203d5a866aee5b8a2a02cc10b47fb4202678ff2610b7b02300e909c20c41619877e0df7f5e1397453c5867e8f302e1170f726699be29e5d26c5cdbf07c82f5387f1806aaad06e74ba0302047c435bb500683066023100d10d583496a180f63d89e5013b7dc4308116b26fb5a58e9b473757b37be2a8a08f241e2e08c1e678b3716c7c3b3f5e14023100a227ae2c4596bfe0b321d7bc770fec4a8af9de035834895d1a9433ae7aecd388e0b562af00e9547ff60570b9f177b5650302047c435bb50066306402302f4b8c4b5f259208fdce238e3d26e6aa51123ad668b88ba6db6c18b8dd3ea55ed17772b03ffacdf5315b0b9b4da5567602306f26299b32eab62fea2a5bc0e7f952c4aff0049a1ef87f2569f8a35d5e020b0ff0d1009b10d4516583b7efe7b4f8c1bc0302047c435bb500673065023100f6bf2152cb4482cfed333200feed18b23afb12ac277cbd0498aee6d270338e90d2d847ca4fce788b9d3a416eda23e9f302300431f162be04a4fd571cbd103ae9ac8072eda79190e4906b4a64cce16af7c61baee9049b82c9931ce0e50233fcb2dbd60302047c435bb500683066023100f764c85ee401485d8028b64b67c0b4f0307f53f211d8cfd4bb9a44326813cdb3f3fce970dd143d42283149755c1109e0023100b381c6782f8d5b72a0d961cdce63297928e9a51a1c83d04a4e609b1ece976179fa60dc65d2268ddbcff9a3542b4dd9a70302047c435bb500673065023100c0f0fc201c94b40c55ac388a9d11187a4d637f341d29ed25a08ae2471d0f7057c767bd60ba51edcc1f7224b1f5bb7b6d02304a47941e51949d814071e11f55f53dec9b38f215ed9bf63ca0282c7c0560324a27995157a553850e9491a987325b96630302047c435bb5006830660231008c0813995e21be40967438ac031613b39984ab71da7551e45c325512b84de305941e39245d75168f4e2e43a349ba2c71023100e6a6a689713a38ccb892000264f0e39d8318821287acce9229010d2e7316edf2a804c6e8fedaf441455720f62a1ed1fc0302047c435bb50067306502305847d540b380e6a0c4f2a567c5d0e00d879583d7258a173a30b8717c793e3a3ed64ccffcaa60bce6dd639537e8b600d5023100ecbc6f5cd941e3c2f00cca437d48e63f419111e18111cd6c77714a771e31c4dcfaace9b7840d0aca2876482e8a00d4490302047c435bb500683066023100ee224d9711abb09f94d7bb2af6eab7766df3cce71e420731a1da5178e07e3689ae794e9efdc9e4a0b137e676b35373db02310081bc6e4c9b11c684924797481d904ea7f90320ffe1d612bd9d1505e6ca3a2a0eb0eff4b5ee00eba259bbdedbaefe6ffb0302047c435bb500673065023100bf851fa7650764c5bf30429827dfdb456cc51b6bd2dfb5e20c036d2ec8f7c477aa74024558e3c623db9fa6753f8e700902306f8c21da0b09acbdb626913519a17cdf29894e4d47df24b37b5a6d6860c3004f557c386358518f8ad5006079358127150302047c435bb500663064023078d91bb683493d582cbb00e11f14f2cfd51a6a1ce14c5dda59081b6bd3a1326ff0f72d4bcf92ed4369149532dff413b302300517cbe699beb26b1567a85aaf3cd478d40f0c9e9714af79f63e019aaf1b6bcc76e604b4c6a20cb0a87b343e3bbf06c20302047c435bb500663064023002d02c87990d9c030b511cb6d4828e94dc92c5fa7177ba6d2799f057102f3dd144310e20a66e0752830c3aae7c6739d9023076b090783bbf07128ad6a78bcd4682e5edcd93275c067eab86c866e5ef73b5d94e92dc8e248e8b32333b032a26f2ae680302047c435bb50068306602310095a9dd3e51468dbfeacf39de28aa5ad1dce82180cd8fe98bbe39fbf5eb5934f03e010b6bf02a5a351a0ec86f4baa8b5a0231008c585cd73e10f28232353e2ca691f910289d59650c5bc3dc96932a2613fc044503dc899dedd0b3c135980f25df8cea430302047c435bb50066306402300aec7beba49b2390a13f9a33d6ad7bef746d26ced31b925bec8610336ab828addcf96df21d5fd54854ff9fcac6dd1e1402302af1742392e74d2a354db72e6d1d8836e1cf50b3618e3feb5fd849276af5fd638f84717b4d723d3a2579edc25f2329d70302047c435bb50067306502305d37c1d314a0e869717619d983762c3e49b571df6a32efb60dcae4f334741ab84c8530ce371ecb03bc68ddc05be917ae023100dcd412c429bdb3ce12e7f5b4bb2d450e9365ff143ce0d9154477a42763efc7e3af79467100ff40a91042f51ea988dc840302047c435bb50066306402304c799fbe6144c7525e3199d5965f42b2682a85774f50769ef692d924097946ecb3a1bd5e32fef1bbbd03381de2f6965f0230144f1ab6bd6b2ba336004a9916d31fbb80e65dc729c401bd5021940f1fbd99bceb60c92a4766c9052300dc1e1c80d1500302047c435bb500683066023100ff7839b3c2450a3013b0deb78b5497b142700345289ed27814442dc71e70d4bbde556852d2f18f6579603dbed8c71e63023100aaeff31cbe5f3ec1114f63da85855352a75d390a718b53e7f0bfeaf7a0c3c37fad5e6e30f00f288bd7a519a8946131d00302047c435bb500673065023100cce3c7b34b698ce7bf94c76a41f125e26ec38e3a12b9793d99c23a36f13f748cb9a6f3621e3cc235c3fb1eb6431bfa7802301ba99c44e4835b2dc7eaebcee1d4bd6e6c52662d6d0bf9a2057563d28449887bafc556a9fc0d203771d01e10c065475d0302047c435bb500683066023100f8b38806365fcd03c39f409b7454590c2bf0253ea24ee3e543088abafac4c63c13635ec9463db63eae7dc5da7b55b146023100b047ec249dcd8916a216c7e9f0898fd45b93d4ed1da4a61f44a6efc9726ced28136b5b402eb00c0674ad8da77cf836290302047c435bb500683066023100c59f0c03b8c23163900e83e5927beb15ad645e1a5db1800c924bebd2a8b75a37359e668a09c5436ad294e38613bad419023100b4d6d686521f0260ff2e56ef5c002fb2e9a28b11331f0b9ff4561bad220f3e7fb97c71f5469c020e6f242091e0f91e950302047c435bb500673065023100fa0a5773c30b2d8b732c1702aa26e2e4f1608013c89b799f7187598f7ed29993a4df9fc026f4dd034cbe85f456ce776d023004184a802f16bd361d160e04bbc39904ac4f87529925f99d79ebbccc23ec060f6d7fdccb0d97cc131a4bc0c30966a9300302047c435bb50066306402304aa9479b1414023d6089e18574c62c04262428a2b8f7f8c905eaa599ba54e523b04b70a2fd13a9b964430d366d77d2420230544fb4d48aa52a44ef603ce471d1ba5640587516d07920c170c2d455180b409e3c36765717ce0dddef0204f1d4dbc2e60302047c435bb5006730650231008812b48ca0b3bbb33718d326f7197604e1aba89fd62bc4760b2bb704551ea6911f0e07b49ef298f92de6e930a5128f14023040161dbacc9909758badcb82220c1d10782cfbade36ade1eb24d7eb8199288c2612cc12a762852bd491ffee2127c78460302047c435bb500673065023100fc847130f5d3cb6d3c95f670c60f6491615d1083b6e84509576d4e255026632ef986a8c4d25765ba9002402225bd887b02305793f993956814bf8c28ec7a0a6e9ac9e590ea49563a10518ac6be7d699576a67c919d7cfa0bd8657f3c914338d50f030302047c435bb50067306502301a753343da36734586aa40e9cf3c12eb41b6dfb05ed72afd518a93dccaac462b7253d942c6be63e2fd6ba7a8b54e8d100231008c8605f189620830287a40896d6a571aeba9f86540e48c2b9c3eb9eda6925dc45ec632887cbd56dd2a0bc3f486f477480302047c435bb50067306502302cdd2cdc639b107487c9c99bacc62886ff6923996b4f3893b4cb04c6d3c49cd3774d3880bb7bb542842e377b41f73fe6023100f3fe5bb02aaaec1fff81136b1c0d19b43d7b6e9475f552b580fa740a6f30a00e319da6d6882da867782938f7102a2dc60302047c435bb50066306402306f5ff61a939155aeece320c468d4837473689ef43cb61c17eda8f6d0370cb86b7de5b131d48d30ebd22ba06a3ab2518e02305761402532e29ae3f95ed6250560c93478f512e2ff50cdb321da75a3ae1ef5a51c2026948dcd4f6bc0ab39f2e80ee07e0302047c435bb500663064023010431449f83227aede385b1c9244c51aab3c2fd04b8cfdb0b089e3a347ba71b8306721fae0c1a680b1ddba65089bfa3902304d63e2215f47f6e8140777d25e5f8e493cca021ac28f27d604e19cdeb9d236cf8c88288fdafd9674be1f817d9b4940950302047c435bb500673065023100c9f5a618611018c4fa770a047555fac69634d7109bfbfb919859e921dadc583d026608e0628ad31af45371b39952a0180230472d39c665bedfbdc18a08de633561d707eeb9ce13245dcf80d888a2f0da3e06aa7c3c505ff980337cf2a5f6f34e86f90302047c435bb5006730650230416d4f37068dfba7deb46b9ce352eadedf22847488b601187c2906bbe7dc20c71c600a0b7fe461594d37a86b29c3a480023100fc98e70990ddc6e4c98b1b27229fe2826bc8c4d59bc1089f045eb833bf185c470d1158080fc90e4c2ebe18e2bcbee58d0302047c435bb500673065023017ac11a3bc9a1411be49521a1f104cee7f471dc185f8d308c96c80824e2345177a05ac7a82b4ccbaada81c8ca2970700023100b8fc83f86657996c640dee487788e43fc7d927a9b0b0b54e4a33bd0a00579202cfb89c27e7c303b2e1d5ef10c98eb7720302047c435bb500683066023100e70696b021a1ab11bcd1d9ae572fe8e7445b5f6157fe2beecc012a052c5d8e1f3b44d0476e413a2b801ce909cf61e53e023100dc990641963c5960312d7776d8f1585fe18da211afa0f4b62c5e2e4e35f386c0d5aa3540529cdebc43e21f574b7b54050302047c435bb50066306402300e1426b860fc40777acad499618d5628289d16bb9e79698cae409d110e276e13ea1316c5b49e1347ca8f8c0b9e584a45023022ab31bd550feb2b71c443d6c79eb2cc895209a9f0d49a2274839df6397401745e9b0abd5e5fc80abea39e6dce73caf00302047c435bb500673065023100a6c677da23b9bba0e1236aa83278641e15e42f97c3520a125162c008fd6f76e01cc20b93889a91d92ea86c5fb90442d60230164a491d3727f317ed9b66d7814a03855bfb1cd1511d0228a9849ef758d7f4dd33b1d4db61519ecdfe8a0b8c8ff462410302047c435bb500683066023100cf6275139953ca9d9fe06306cc544f4646051ccc5d599e1892f94d77583bac7773093a89c5981fa6c2f34c4d503b84c2023100e732f73a67f5b75edc38c3b24bf51de4156c23b9c82b6169f580cb571b13d7ecb3674d08a52fecbcfee0643326c3a5cb0302047c435bb500673065023100d6395384b4c2a69d39aad1a94406b7bd63355699cf34bf96f5a0d20015efc5962cc46908d7f4edd121e654db9897fda702304b993a677eb45a8295fa51182ee6bbe719d6bbca073c0598afbb6c495a1650119d666fedacca93c71fe07e953cb6fc9a0302047c435bb500683066023100bd2b02b88b6af476c40e3f030f7d4ec38e4002ec6604bd3c2213555b7f283e34b732584877847c175addc376b10dcf33023100c4c9d74f022c20cf6a55761f7c8e60c3e340ec4819f152276dd80d0bfc2e8fd40dfa7cf6685d62fe65bda4cb76426a6a0302047c435bb5006730650230268243e91c97284ef8afd378e23635ecbed42ca95bf2745bee48648a0a6ff49de7846602270e6f852ec797dc65beeb0d023100c00373f312014d02658fa3cc2aa8a4ade39310f015aa08a2e1a23478b693d8f26adc9a8cc35c8a4241e569329f45f2ac0302047c435bb5006730650230689f8900af5f333534cb4999f5e93d551aa2a558cadf7ded306c41ba0e45a42ad1d621f8c6a1c5a5af208aa8e4622e3902310082c71513448d5ec17826663976f4d680db38112ff793ead0fb69b54672f1d6d3c74b46105293a57612b17ad5d9481b030302047c435bb500673065023100d2ef63aec08d7e687ced01543e2f7582328281eaa69063c9cf1c58d0c08eded7d1630260cd60092c3049741bebc18bb2023043749c5a93fa347fe914a0e52f5404e34937a273e1a2311290639be0bf44ccf807262a5e602006714dc2255bfb9972ad0302047c435bb500683066023100f14c4036e6a2b1a124acc553a2d81a603a2839b76c2b44c080771d8f1a4abe1f216f5cba0f2973d615b115ac60c271710231009f6fb02848098c59d249a1221fdc0f88dedd13378089a712741565ea7b405690356346caa132d0385b2af9904c8af3270302047c435bb500683066023100b5c133ddfbbfa9ea295cae146d6b9124248be985259bf13702f3f2c874a9d5f190854a36051df65e9eaf013d39411e9b02310092b8e2e0b2b1d996880c1dc1efdeb4348fd3f819fa8085d6da5b812f6fe922b3c44ce053eab69aa9007bfecde57cd0640302047c435bb500673065023100d2638e66537c1f703df50e621f9c4661bea1eb87e2ad0e34cfba64f69e1e78960d2c8dbd2f4f2c123830982efd85874602302ce643b989622eaec840d6b390893102e0e20bddff645dcd9eec830bcf845104181d96c089b0fe38cbc8075ba872cedf0302047c435bb50066306402300afaa0986f1b9c5555166ab3ad9f1837aa35d3e1ac6a624e2c4c934b4343327b21e491c180cceff343619388730fbe3a02306f73335f99fb20e901193401776cee845e2e3d0a39006bf10e5b1b51660d812f61657f7aa329c4f77f416176111fbee30302047c435bb50067306502307d85ea4f73a458353c1e53927a8e1d163373d71e8b749ff454443934d37cbcc27defb9846e09398a3ab4371ce8d59ca6023100b9dc3fe4ba47241452074af344caec782b1e2fd17d69419fdc9d8587c667f823ccf06fbd234331f6b4ffc8fb3c4f06e40302047c435bb5006830660231009d6158bd1ce7c2783a95f6e0f2545bc292045199f600778727eee00a89b2b81f605bffe82b2f303ab03e75807625cc440231009a0c073116f7fa73dc2d0b37762aff0c3da49c3dee6299561c127997d0aaf088e8863661758deb98f0a647b78e5c43010302047c435bb500683066023100868208bee876541981a01b8eb769ef87427f77493888ff3aee78425978ce41cfc0d5ac34177117a847249808aa6a3439023100d9176681a1dff4109ce5edf76ff13de6aaf1149289cfc79cbbe1640e35dcd6ecd3ebe4b3b6f643d79b61b699cbd739cd0302047c435bb500683066023100ef0e264d6aca2f5479d62b8a4a1557965078b03a1715543e103720e4d5e33ce26fc7775474c0152f673382e7ba365174023100ae356ec7549de97a87d63b74f9796683781f15aa8f15bb8dbc82741ebde2a62d84e9b1fc642028e5cafca6f76c87b1f40302047c435bb50067306502300b90e1447adf654d10126c2adfbc5f1e8440b603e01a60700e599888253ac477262b535c906e159d7c1c465394183ef002310092811d4e8aa61a0e2b66e7eb9375e6cb0cfea4607a97c4832b9bfe010676b1ee284d490d02ddcc4fed1d1d6750dea8540302047c435bb500683066023100fcea49c143faec05162457112d41ccc2b3c097fc7c1c83dfb81fcfd677ef18a9208989f8507442addbbdf1578fd2a6b6023100de5a19e139f4180653c21a0c1ad5c986bf5bad1a7e685c42a2b2e67cfda5d8a1cc6a1bbec69b27e89ff2f00c7a5222680302047c435bb50067306502305a09113a9db0e8da89c69833dfa014199d2f5fc684740f6369d207057b2f64015193b5f106668996f31414ed6fc5c5720231009c995ec0bc23487d7ac1c18eae11c4cf11db0d2227589e61c8f2baff01e97164603a19fbd83e90330c3f2b71f0eb8bb40302047c435bb5006730650230484fe9539132207b3031a1bf61dd307307108a559e9869e0b8f774914851cd6a68add21fab920c92ced592875e75ba69023100a26007a30485d52bddaf9dd398365e8ebf832d4991b874239451993a3d0691717fa9fd1901214b666a26782de1f07bb40302047c435bb500683066023100f4ef98a049615ac1da6c5b0c335bdc3b39cb86741a0f95d189efe2c64669c3e63e168e912392328047f8283de8b098b90231009bfb6a863ad46cdca89b23fbd65c934cc2bd812110aafffbbf452714548b58a76ced64b827026fb8525f8879bf151f710302047c435bb5006730650231009a0d98b42361e5e5a22d8816b1d8f9b2f2c0389273423291c6251a1bb77b8728348451e5ae135a4cddc191ae67eaa08a02304933be44a64e1f0e1917bd3e934269be796f952aec4509cb326d32fa5a1fcb02e7c03a045ee910b2e3e2ee9d938f2d2f0302047c435bb500673065023100baad94a00b0d45f0a282eb9ea3f9a845918067ecce5ac220f28067ac6e7d37fd90a5d3663bc80bf8cb837984dd448d1a02305afff83b0eaa6e6c22496a2c51f44400309eee67c13404952ffdfcb00dda41c84ed7883e0a3fab7a263a0ec63acc0e200302047c435bb50066306402307c6ddfe9c9be66343844e242a94a15da3b5fde9b7df21869c57e08f72d8ff3ec91b562735fe202cdba16c05d3fbbc69e023061f6293e6c6fb5b74076bdcb6ac191d8587b9e59e44d98b0b21fefd8c472e0885944107b160c9db70393500fca35d5440302047c435bb500673065023100fd43bb66cdeb9236490668ea0f681c708b11361e826c738626a6af7e8732852c2e7014e3bb29ee1c50fdafa90210967a02300d351ab71d2082aadcc6a00539495d3489c6d12f4d7168bb8ed89cc2af5869c208051c06e21d14c1c36be4fea060da6e0302047c435bb5006630640230663c584095d61297646abf551f8f6004907712c0ce689848feb82680510f8f44b83494bf71ecdb065095c0b5629ca07102306330a8e5415d959c970a1cf53eaab32f991d25b3d0738051b3d57b9e321f48967ea8a53c67ce2de0675362c67cfe5f960302047c435bb500683066023100da3dc784824fcd5414d310e7be81184c5cafebf4e64417933e47fbffb6cc5265d1e10ccc1307522174e10422058e4c76023100b7da03cb68b3ef599fd2bb04122c3a3c8f15aece8ce7f4b416a19c65cb4f0c67fd5101299e16c26dab306a68e60a0f670302047c435bb500663064023030d6e0491a7df6a93cc56c819d9841144b1325138b7fe5ef99dcf75c7f5e3a7403913cd0fb9c1cb4f5ff6c80e376f37d0230271b82cce0773fd9aecf05244d6cff2a257ee68e15c84e6a3298013cf1f0947798ed5d330134b4b010521ee1ebfe1c920302047c435bb500683066023100c95940c6bfd347e3b12a36bea2c21c213b8e8c674f58eef4811a7e427cfa93d32b2f94fac3e9d91a57c0453e830f1139023100d5e4c7f05a905ab07b1d758cb9f815fe780b6b308e42b3e23565e3394d5fd93cffa1498b1f5534bd0c23a98b80bcf0970302047c435bb50066306402300b5ced71e9fa8ff6d10242c745bf78e6c5b1beae84d5f190e72b291a2019fd046da87197dff90a837a332e84cce5a1e2023024779ff8c36edef4dad355e27d4c04f1a72bc0f4ab446bb92fe712f97e7bdd60d101efdc119c02f70c876ba4c0514fb80302047c435bb500683066023100a719b52329f8aa6175594127474464c32a6b004703d58d92d501c14e665501407c91882095f99bee0adec97878ccafa3023100ead84ad5a386a7fb88fb033b0256cf76922ab71143b94e9acf7175b7c15c7c6a8121ad22351ac1f1424ca579cb746be20302047c435bb500673065023100d94e2d7484f234badc96264ac01e7fa43c0c3bdce3c495eef83e81ec9adc7b9dec520a01dae267ac5dabe760a6ceff5802301dd0552d0531f58b5b796b56313cef10d4121d1b77aee709330351f32facdcb497446c5eb58c13c3ce6367c08a3e2f050302047c435bb500673065023100994bcf660859d1dafebf9b676115886581accdfc49e838f1471b11473b341a7ac5b0346ed9a31f5ba6e24e3e1c37a71502306290621f1f4f71ace7df85194b9fefcc0dda91d3025846d7184da7b63c47e6ca320e7bb79452b38b08b2cc1c4c32c2070302047c435bb500683066023100def7e362c99ffbb56dfe9e5d38f2fe18dc1c142fc04ad3f6dbe61d89a9e1738ae26bb21c915cc710627e45734c4dd029023100aab0294f31ac25f6aaf47203564164a3e3c758d0e43f459f85024fa23d6885a343ee8670c65c1a606cc8239c0c569e0c0302047c435bb50066306402302c173a924f8e8800669445438945695b1a72879de7653c48307a10f729341f239ebdd052737850f86d0fdf478e8f7b45023042808b85fd6e6454a2888b1eaf1fc32825009ffeb026712209f9021c57ea20b1898e232fdf828ccc1f43d8b924e5e8c00302047c435bb5006730650231009b044fdfeb66b9173cbbd174c6c88cd7cf7664bc39b3bdebd8e18de4be2006821bf76355cfaeeb6c84908a31eadfeb4802303cdff86727cfe99bb6a3ebec57f66de64383671f9056922ab4f7dcef96d1b00b4d6bd0128af57247cb8da1f72417a0900302047c435bb500683066023100d128ff0a1429f996dd720e98841784bfc4f7f1ba1c16110537e3fbf105c3331d5753047818f32315c72052868b9755a1023100854455557b4a5fad7c1f2ccd7f53dc8cf587a67fc7f0f461ba042975c1307692c363ebe0f0982dac9858b95528f153340302047c435bb500683066023100a391fe29798bf9e463d7b9f20d5e3b0e869f2df247df1086a4e4eb3375f25a0390fc5636121c37360018ed17dc5121c1023100e4efaffcc2bce87535534835d22765bf7b54390d83bc32516811648270a38931be825cfa72daf9d0b5d7ebc39dc6b9ad0302047c435bb500673065023100d4bd7dadf6e1be49a377853470c59a6e34535dd9e920a027995ca7968350720893a54a5b2a0609853b916fd37260ab0202301a632a5d3e9fbf618c57236041d3a27f8c472a62b02d6d1748d16eb942b2c157c62ce7ac60ea3bdc2970285077b0dba40302047c435bb500673065023100b80a522e07185a87f1e26d1f2e477c7e6b919d5e04fc4836a6c2ff3f9943619fbde1c628a8d338eb2142aeafff19f8de0230372dceb80720d7f27c5e5cfd06dc504b1b5115c5b36f4ad4fea2b30ae9dd64ab98dcaaa024c4110656e666f82a6e15000302047c435bb50067306502303a3c21bdbc4c8b582a1c9918cfa2ef801ea8cc7e477d915f0dd2580917bb093cf3b6fa8c70c6bd99cc10173ff996b9750231008a8186c8597a3cc59cd8cdf44a56bd83f86b3822c17fc097ad3191f46f102419c1e6a6b815dd6e752393a4199ab86bdc0302047c435bb50067306502310095f02d628e559e267dbbd271a61032a4e89f6797f4ec979985f37ef92ce1d5045977f40686df94148cfdab594ecb42bf02303485c373784a4ae48abb3a8358920ace3b64ecb41aca3fb2c1eecca04e27c3666149f49770e3f86e6ca8c68dd0861ad30302047c435bb5006630640230065e606f0b8d58f99e404109831467ebb3410379a85796e567cc94dbef3bd6b51ca4e65c22428e17c2d5476da5ca8db50230218368e4294aef30d37abc34561266746d7accc010b767a925e938c94333e056981dda425f77d2b25570890196b6bf2c0302047c435bb500683066023100a2b1a9a17d1f7bdc5ed086c2dd2ccfeac774d66db05b8b9a1c99cf99c34c88b793d90828f5845e14cef15f4329b8c846023100a982e5a3b72a78e1698589dc53edd06dc19e20fb48090d4fafe43cda5f5badee33c87739095ee32a6f4ae83ccf4e328c0302047c435bb50067306502303894c0d8024fcf431004878ae48ce44a27c84437da48fa1efe5548e1459b2ad51e11f90f19db00b0e4d1577e4415aa0702310088e96fb40b36ddf59b6d567d34720af077e2f81a88c54139aad677db12cfba03582bfa36f6b9b6193a269494318f69d80302047c435bb500683066023100f1f4f185ef8a01ddadd78d963fea6a5ddb1a11574deb823666bf56ad1ea67f0495d172650810c455309cfedfd7f5514d02310084587bef675d747fc3010a69d7a79660d28951dc084789bf6fbd0dd5d7f47bba35898ec252f927bf57bc4f20f9db98800302047c435bb500673065023100d5d92de51d1da14bbb81be6765e2c63a97d1a8c22d1f0d99022df3d80c87dc7c68e51b208b071dc0550fcf861be733320230035daac5817654a2a375a25581285a0351858da28c510ab76ab69efe5e7b9723e78c127a223175045d3e3e95381b29a40302047c435bb500673065023100e5569a9526db1d3b3bbaf70cc910a620fdef82bc2a8641b8266c2b170f69e3d52f12e1f386150617a5f22f1c0bcff90702307dac7c7e8aa77af5b977800b92523881549fd75243cdaee482a64e3c88fe8197430af758949af866313b3d599e3f76630302047c435bb500683066023100b10ffe0bb990b256a92443cac55cb25aae1d970f0387893d892798970039b44d568254bd681626ce48c741eaef45bb2c0231009893fc958c7bdeb5aee36c5f16d4fc071a9253a575cacaa1e238ac5d013d0e11916f52c86713666ceec6d5437967b5f00302047c435bb500683066023100ba0727416c8392d7e9f9af29fead6572c97ae49a04f368ad077bb449c9980a37f110d025b775b839f89bc7c2e767a64c023100e25757790f4ac16c1cc9583e30e335db0bbc853377de5c8b05c7a3e8ca57db4de9d570cb8bfb05f4c70ce391aaceeb2a0302047c435bb50066306402307c32a985c21ae36ef4a9c8caf7bf696a9882a4a9599e450c97af616a706cfeedf148da5a8283ddcc6f925a90f08a771a02303b2af32055bd0878365e75fa0e92b4c048140964f0766004424509f49ec174e1173852e1421bde84297687961480851b0302047c435bb500673065023100add0c9c4e070292335d639c7c6fe29e182a0d46c7113d1eeb8ac70a92bff66199cf54ba09d79908a18130391c0ee9dfb023010bfe1ea999670b01ad02166d430501e909d6aea9d9978faf43281c9d89d0079d021fd5200418b714a2a53f6c185a4160302047c435bb50066306402304896ca6aca90c341cf2cbd93837e56a9d0a787408d26fce04aac9fdb3b773687f5bad04c84573c2d0a33151690edbb83023042778bd80d471d58a76c8c05108f22f47ca5ecfd9a7cf55fe5c7482df2e830a4b7d3216924f5ef00b03d8386aa2255cb0302047c435bb50066306402303717931401befabdc7ba862cb5b500d1334336b4b82cadf87ab12f7f1738964bbdbc405f22eb5253c1e5d02ad5696265023029993cbacbfa607cf393b36b2408005fcfa1c9e1d8d4157aa2b2b420986fa6d50763283ef1d306046c8e94142dc0e50b0302047c435bb500683066023100c639567bd2bf222716641040a8b434400fb6bb08470c61b106bd109dab9a917d5b8bb8313f30d0b19810501dca2bd348023100accf579888e179e90ce61dffa9e2d9316353ab425c261c294bdc218ea59fbbb798ab35be1125d139ca80f5d8acb85d200302047c435bb500683066023100c044319338fe8cbc424d65e2d2ea9b6f2eb327812a131cd30918cad9d25330d8a15107ef647781d670e9f026d8fc3e8c023100f730c4c09b188cd0d078aa3211fb1428814c2609d5dae833bc002a5e23d2099451a3fda92e6f3ea4fa3fbfe75ce604a30302047c435bb500683066023100df9ee71491886cca4c649c5b0f62bf2822bbcd163992d08a6500b8915a58f3d9374734ddcd849fa44665c9b36be2f30b02310081d884ede692c671c5f587bb218c3078cf49cdc9bbd6d92caed514a302fd3dcaa93df066832b277da10d159590e6b5cd0302047c435bb50067306502300b17246e72a82ea84b3fec6125d9c9daa910eb15de26843e089765e390a612cbe441bb45484208c67b204196f78b3155023100d3e4208a6eb7068d17a6459bb8ecc848d061dce7c63500f9d8c22dd5263e6008b071ac4dfd7a7d083ec4c626875d5a800302047c435bb500683066023100f0010e027eb471f97357432143f7fcf3310e27a9ccc0b8d260a25028e4317100e0e16d24a15bba79a1da331285818a7c023100842e1ea4cd22f9c9d741373c85c2e2bb55ca281651c95ceebb47389f9a262756e9f21c4835761fe11dda3c25a3a050720302047c435bb500663064023074b947cab01564cebb293e1cb700a7173a01b3c1119fd1ce5c0990cd5fbd52751610571bfff3f2dc5e38194151a8e91802300c042d3c0eb3ac722f530b3a1cab07fc3b4706bb8faa92c80f1fabae4a5ec18b832e21c71b120151cd4a77e6aab9212d0302047c435bb500673065023100e1e606a1f433bc357a91b9af173a2f4d7bfaaf7ac6da68b866bed9195e0763ab5884dfcc22d190fe5fde76ca1a37d82102302edcb0098cc05ef357b92611663eb514d53a4d5036d28fb31d4b4dd69a4adcc83b7719a107ef9a16f93d94b759dd329b0302047c435bb50066306402300b716ed46b3bc2f4ce0956f4d4e92d34f70321f82144d350a0e829d99abeccad0b29a3d63ece30e9823528662ca68ea9023002b9530c5c16c505fa420fa85d9d3809f7500d8e0ad1aa36e67ac87e932aafaadd61a1fda12bc7c3c32d2fd8e268342e0302047c435bb5006730650231008068aeec30abdf899cf1a7c6c46eb9a8cd91acdc699c5e47c461f4a6810ca9bee8a02d78591690079c28685490bab1ea0230080a442474ce5006bce21b59765f628c8b73180b760408187b14aa0c6581d2ff7a907188217e6699c70c5887bc078b080302047c435bb50067306502310096f9b86897f019854ba913dc0d554d5b0ba4cc9bc9b8ef520e873348af1ada44394d620a92136414cd4296b06c2c0b2a02303a7d6e15fd045f8774a0f3d657fd873ab90d58f696946a9260c6c06f2eb9f6b6567ee5ec5e55486cd9480ecf71f0f3690302047c435bb5006730650230583278707fe7f46e930c29d5a53ff9a26400acf4f0fed17f46df8abd34458bd0d98b40f317330c01f838799d17e49c5e023100fa8ba3ffc01aa540a95836678f9b1f7a48614ae72fa0ab9b3caea89cd3bcc3e1100c7443045c8f7e8c7f8c0aa5bab3890302047c435bb5006830660231008e36b7bbc84729c82e25a9ae1ef58b429ffb92bbb088a4690f137b55e14636fe9faf69e47a9cf55fb695389cec9242d1023100dbbe2da46a98ba460a7d824da15b80a1b50a16d09380ff77e4c85c28fc67a09a7832e21a121699b96b92c8fe6e8268480302047c435bb50066306402305471f93fc34440ec13a07c8385dc4a78d1e530c2f4bbb2ee3dcc6f9e8e01746827e59a142046eb9b056552d028143306023024cf42935a1aacce047411ae090f99d84727ec746486633a93de2aaec95ac4ce57ba0448c7c88b241ba04001799af4750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310090bfd13f7bd1d619d6a2fd2254a4583e71079f278162c79b11d604949396be693af4d3669d96adefe3e3f31afb18ffed023100b2bb173941e118552a62dd5763f00c9db34ea21c942b65a34d6bd24af614a1a3f2fa03dd6cf10c9c8f03413bc4bfe93a0302047c435bb500663064023010778570da4f0025e438bfa5d39ce501bcbc0335dcee5d4691e4f87f21d89b7a7f350a5b6a82c5a8e9202153fb86191b02303b9d2095db59162bc2cdab0e422ec632420fb500594215251db67a1072c3d38c05f7dca35ae2f6a360270157c8f265b00302047c435bb500683066023100b18984382d3a9c4c537f5beb038782e8098b5446d4b61a285ac8affa56b338fd5c4e0718c9854ee94a54bec0968680680231009f154c8b9632aa6e7ca7bfd0d8b31adee23f8d176d2716809edbdafdd8cd6f192741bb9ad47d50d439caca420ee594dd0302047c435bb500683066023100c2a825de1061c4320fea6585683672841ca5e0119d898c9ab31efbfef1bb8bc9f3c58aaf6b7141694324433c6a3413f3023100e63ab0dd3e40eda2ca78d3af444858a8337041d6b53e2ddd2a27e61e131c2d1d3eff3b17ded210c628315606b25db87c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300ed74f8692c67029eab41c919bf1a8bcf4e435c0af6a10d6769919eb38d9d71469951d8eedde53ca697c76be8639392c0231008249f66eb2e44c45ca5132d816680b1f23b2892ae5b768231d32ff3b8d6024740170d2ce1e75d5b59a018925cb33e9f80302047c435bb50067306502310093c7f8521cf203c848c7650616630834b8e3dc3b47c8ae287f1e8c528716847d33c58ea20c13e37cd2222cede0125df4023018a482d1242a5c53bef608fa5b769bc9a63b4451da5efb0cee1ef6385ddbc887a874b866dfb0c8f26c6343fa3141b56b0302047c435bb500673065023100d55ebcef7333fb9393b1cc76a8015d7db9f286a0327ff70b4679d1bd933940b9a915b76d3c661732e2d92de11734888e023073ae5aa07955eb3f15eed5117558397955045f49342a8881a18375dd1e9b8e4ab69760690ee759b5e04127ed9596a41f0302047c435bb500673065023100ee23971584b2d9ae43c4a144eb6d89e08d632f63acc478bbf8aef5efb7385b32f5e6ce289f075beb6d1b130a275c9a9b023054264cf4b67467f512c1a59dc36bea984de7d700a67e8a9cd75cdf9e0a569dd5783e15d026091c1a351d9a8b01e0a6d40302047c435bb50067306502303ea25fca76f5a9f589e9488044a6467bffbdf3273e772fc535223faed96f9b6f462c0d778f8c5d0e3f89d45734e02332023100efb19dc6be9b1ec26924afb1cd9203a117321f7caa4cf95268f524782326a3307f86d944c28f6541cc6d624afe6b5adb0302047c435bb5006630640230071d7bcefa56b15c36c4607fb531441c3ac20a00e672748caf06f8e4e6677ebe3d8407a56e75002d53cb49def1b93c1f023044bfea67e0184a4159bf830cc084958111c2cb111eb1d11958677e80291be831040934ef0beff55a16fccfbf7ea4fbed0302047c435bb500673065023100cc156c40f515b7c054b3b566f5af29fbe7d9c9dc8a3a90a497ab2c23c9b9e0c60dbe37eb8884841f4fecb6d4f077665d02301b6b9957ba5318fc9ecc39ec4855690a0e936d43b4e11f28c1fefa33813cf136a94e34d98d42df4bb0779e129148f0a40302047c435bb500683066023100dc5e65d3a82529f22272c60719f1e8e51c449b6c98a1e8405ba30cd99a7170d2722fbc7d860df3ebb10bf5d4a6961fea023100885485630217b6fc0bd59278584ad6676f9c71e825d861b6f68658708656d90450ad52d955da50fe34d994225e3abd770302047c435bb50066306402304b80fc991e22db98db377aa3c8ab2f40e20ce8ab4a2453115c9a3b4f59aba89913846e1ceb153ab3c5a13cc993ef3a55023021364b6e3f2941ac485313875c7d409fe50de75373c582becd1e384414c67e4f3eb3c0ac5a22875e3c5564688108b06b0302047c435bb500673065023100fc85f4fec01eb86eca1697be8103524fbf5055004364d8b75483520ff323cbcfb7afbdd122873fc4b2864a39ad4e696e02306b7511f8d0707c53bc15a9a30fa4a33ff1a4f750fa670e5627cdd607e64be0c006bd112da0694cd40f13542e5b65709e0302047c435bb500663064023057aa92245308e2fb8175d510954c061c502e13bdf52e0200e2fec3334b180b31147797d2c91676ecc14f67e213bd403002300eaf51015ce23f05a896809efbb5825e2a4124afd35ca9056d0a91f0dbb1ffbd05638d6369dd72e07bc5186bf052faf30302047c435bb50066306402302733ed1c1b2b3137ea4dde0735b109be0aed4814df30b9af4f44809e7d340c9c4d9494225f07ff47afd6e618c16dc6c702302468e37ed46c67f22ed8bbb06724ef739e14aba5a4b2cdc703ad50f1082b8c286631abffb97ddae2cb32941ea197bf5a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d0a18a8b82feb39a1448a31112028355b5ebc275e1a522c66a937960490841ccb60f8068cf729f1ed8d497d966b14084023100cb5126753bca2a19d01bece197eb635d02bdcdaea3514ab49e18e9b19b0b9381bd27c400c5e4f6eba74f58c307eb98100302047c435bb5006630640230568232a1e6c03b8d2e3c7de4ea862c3fbb5b879d004ed3a1ac2dfcf7e511156ceeb62e765f3472c79256a9d6e089180502300659ded807e4dbc92b544ab1a1063da0f402cf84eeaf998b6bc60179085235711503f4a871611b922f8a2e0b34aab2000302047c435bb50067306502301e10605cf8faa8ad8894174bf8d4c4c2c6371f6843b330921c56a000faff124553e07c24b5ca5cada03ec9701a5e3eb70231009dec742b83d115b1925a359c210bd8b3ac893fe13f3a90294eba2ae11fb9e41a0a8e80fee3498e0a5760d4ae2e18233d0302047c435bb50066306402307b7a894fe2cac372bb079932d21066d82da81abdeda3325476425109f51f3098c1fbc85741158dda398e65c7d2118a5602304ebe36e61131981ee11ae9a89450d6fdc45e067bedfb74429af4519579db6c1039a7f7e3f97509970e1fa2e25a3390670302047c435bb50066306402302c20af2f68cfc5cad3efa5044c1caa3a144cd501b240c24a567c88e17ce15d7c42085d1531759d2b052d1286377e4b2502306e0b3a03b6be5be7c2ac2b996014a235065458c4befb090153a1c2228a496724004d7c41d2b21a18d46d4ceeec5fb4df0302047c435bb500673065023100d8c3bdedffbe937b48223a08f784916b8ee31a3a48fbfc5a290546ad723053644d09ff8cb90a30581aaf9fc0c6626d0d0230678c9034f74a7fbcb6bb5d52afb081ad1fbde06ce1a9891333b38e7526ded1fd6c7a4a58ba9b5fa21077088917e345d70302047c435bb50067306502310092116b0e2b860e4b942cc0e647a3a50a8854279ed66f2b4b30a8bc0e3bd89fcbce78dad907058be6bfe7cb88b66cb750023048920046e6fc36fb2d495dfb42198737a23705e27b58247d6128524623e6bd7e4d97266916e2ca0118de1e1e43d6789e0302047c435bb500673065023100d542263e402ce49b7b4fbe8211804cb637103e912b0bef36920d88575e243aea8c065aa439129db3bae8cead6a5764f30230761024bf2b8e7f47d8b8272fb7d63771bf56c7235bcabccf8289914bf7e5e94947adb3dc5d604cc9dca636cf82cade1d0302047c435bb50067306502306b0757ea7c8cf6602c9635e073b4f13396f4fc250894d3f85ead24d84d071c9c202f60dfbd779156cef0254babfdfe2602310089c62ae23db1fb52e7737ac421a55f22c0a6758089f47f8e4fb6965ed78bf62a616fe07a3e7d218163f7b2cd80dfd0930302047c435bb50067306502306b0801f7e3f28c6469ece925f3aaad4829d90640ce6dfec0af0d0ee737f0631e78f6d6efa07e4aae9d90c702783c47bc023100c6f10283efce426163439f7f7872d7e757d8e41401c223f95a6c993343a9040f919d0590164ec276f1e2d5084b15ddb70302047c435bb50067306502302ca4199ccd206f282e042da3d0d3f9f7cccadded5754bc15c87380172069af10c5ec8abdcc3540a55ba4f8bd7a7f1b79023100adb3c30d1f2f1396b7e3cbc0a68197f5219097b09345c559c71f18d7d4a2b061ad8b383dce6232d8b74f42328cb0b1340302047c435bb50067306502300b46ef270b9b27273ee647aa098c03074fe7e99547fe2294305493b7af6d5d6a32610aa30340ea2a6f80b29e515fff7302310090f50120a3b101b0b48ec416583e724d37f2d5b034721c7d01621cbe6a73d23d8f3e6f785be81e48aa07eb20854bd50a0302047c435bb500683066023100f4bf2710bf1aa7187a7125be0a2a04f669237d591a41832a7154978acd5dfe9f683f02880ed8049c7282de1c092bac9d023100e879d419077622a5aea1c6a63a7c12265159b23a6eca35fce07cc0c537154efe13ee6efbc28f10aea6e310bb6f7651f50302047c435bb5006830660231008a7e104f5a4fa1bbc7a3918f8636cdfd8fe5919f14b1d03d67fdd56d914cc47721ff79f754281316b5abc8e261178732023100bd881590611b5c4bf30c49fbb8fcc3ee9b8a577e6df70c48427e44c42643eaf0379db113c0fa7cacfec5e59d640e2d790302047c435bb500673065023009dc0edff74088fcc3d35657f0be483b97dc0f5b517702c3ceb93641292442a99c63c445404a09b9abc489ec0072dd27023100becffc4f6fe9d3e3ee1ea1f258024371edf56e78fd48f80a05e7f5c8a27145cb40107f6a2a4dff5fb012cef12afa7b400302047c435bb50067306502306af05af5c032c2344273e17b344c6ad3753fdc0a145084ab2e8ec4ce41722b5c9c1734c4c43c122b22abff1dc934e570023100d2d410939b0c3bdca647d9a4b88f631a3ae586955eef99f069e9e7ef01f0d800c2848647d45776150349b4a90786c0660302047c435bb500673065023100876b7f214495c4e177e281ca077309d3ffe1d406e6dc2ebbe93d4cdccc6c4df55fd95b89ac8fff8da6c685e661f95fc202304cac7eb3377ec8a0e724b9a9353925e37aa27fa657fc54a2c5511e320986b5ba7e9f968ce3a4c3878bae61ed11b4990e0302047c435bb500683066023100bf4f1ef336cef95ab8032a6f1ec60f4ed136bad93cb325cbccb0d2d42ed5dbf3ba42829c7a41ce5eef16f757aa8d2838023100d25e958d2e7d9c057193349cfc93d2113d2f933319622563820c00f15bd1ae391fdb27d193c0dc58fefe2ba694650fb70302047c435bb50068306602310091fc11876c49911f108a286b2e469ad63b0fc83619203fcaa5591ed49026ec4d29df023cfae9e63476900246eb716d45023100ad809290555731d0831a505b33dd4a6f0a222be9c44195facbceb0988c6a9843ea38e981e1d9c5f1809d9f951ed264250302047c435bb50067306502305d4d452fb9a3bfcad38eeffa35004280962fdf800245e36a5cd797797b62340b614c18a9f9ce16e0e736eaab80fbf846023100f63db245aada7d9b2ecf86a8a78109dca11f8b660e3b84a6e00bdfa5a97461fbaeaaf28dabfc57942a3cc11f886b45da0302047c435bb500673065023001fdb7a0243b0617c533529896a1c015bef1b13d013adbaa1e97043a150dc62d2a2324ed22379cd0448b96df6ec3444e023100b614ffc60404329b69946467f1e45367893a769448167f4880b2799be703e928e68967db43cc8efd1d46616b247f408e0302047c435bb500673065023100e7acc1249162bbfe1104a66ea5b1a5311280a8adebe3d9e54c35a07a99bfbac8369d1007171c852a9be1d6a919b77ba80230563508240c27c0caf35c2bcc19c54e1867bb8159e613880e26ec3155cbc5fe58493e91e157bdeb50cc7c8022f71ff75f0302047c435bb500683066023100982588d32cafd5a97778ba7858bc9d47448da6d23b76b32f7c81f4a3a1eedaa8dbff577cc0c0bcb0949955427ec62354023100d3bf3db64af12a60a36c75c50b355b9e129dcd7627e67ba020b3412dc44ce99fa8c53a84f17263217d5ec1f97726102c0302047c435bb500683066023100976359557bded208905e3b1bbdb23c848605e167a2f205c999af94dec1e857899019f8274d1d99dbd25d5c937f3bff14023100a85552675d38a175e8c94bbe82cb39e7ea06eec5ae8c5b651d616415ec83fd934ecfb1f31bb55ee6d5e9d0893fab03c70302047c435bb500673065023067eed60598dbdf96b49653a5dcf49083ddd03e931c1696a078d679f17e2351d0b3e805662502d3532f1bdddb3ea59a4102310084f40e62dd81fd3bcc195f73e30d631780a4412b925d5d4d00309d4cc8ca383f776f8ef91f0853c6a201ee12b5c9208c0302047c435bb5006830660231009c93efaa723aeec6c8ba5af21315f9c34c920f17563177b0b8002750bf2c35ffb737a53d75cc564a7ff5802134570334023100bf65ed1761cab62c115a9c77f74792042a7419e3e38705dd550aa7e0487acdb8e94a3623290ad5fc4d56c79874f39d330302047c435bb500683066023100ada8dbfebae5a12e00549ca708825350fd89f8d67bab2c51d4dea808c1c93a88192853624df14be377d0dd79c66fedce0231009783e0b01b6d2977134b759b32cee74ce0d477c16c2307a90859cb9f60b583c1bb1a5bc798ee3904d2450d2a2232a3d70302047c435bb500673065023100b7955ac8581dea5b6a559785fb795e3a149b15b95562d0f4e2814c7df397f2ef1c0baa2edfc99483b80e89488b81d4260230740e5fbc59c7074aae666143be766a92d7cdc27f699166e30daa20a8fa8fb1914278758555ad536a31ade7a0ac6f42c60302047c435bb500683066023100f8fd8fd863a18792852020bacc1d78e569fa6e45beee286f6a37b9e04966c6bf8d481a25d88dcd5e7d56dce14f46b21a023100ddc01dd38a3e8604a390d2e2a0b802c0588fa9c679df3ab8726e8a7d6fbc04dfb5725d6f189e61e181c05e89f920422c0302047c435bb5006730650231009fb5bbeac08c04f6ba8f29f6aa4030e843eced48af24df0d7aa378b141232afa960b42aed782b074043360641002803d02300e72462f638a667173ee7b0a2bc5d592f2f9b956c30c3910045fb23fd47cef86374ea6680f1cf0d665e0a26d45506cdc0302047c435bb500683066023100eb537a16cf0ef01f8908f3e8e4c7b9594dd40e9d89708b0bbde0e80cf6c4d6ca26806965a8249c0c8320d31a75fcbe92023100bd54526c2e0cf4d055161aef22be5327d730d8b30e4cbf97987bed2c569bc69e35522b73fa5c534e30c924b9a0035dbd0302047c435bb500673065023100b79bb39f5be1cc823c704ac8d5fe8ec1d1c3a1ec2d48d582eab0614269a12d567b297d0b56cdf76d0a4f3f6d29025899023010dc3dac18d9e43be760d5f3abc61205f9e17a018994546968612ef8f5dd4e40f1f051f8c29ed7d4903c2f844c8e45720302047c435bb500663064023038262fb1a544c6d89af055afe1512cb3698c15659bfe2e71574ace33612db63935849e64b521ce15fe76570e39eabba70230443a3b79949b736fb37ac577c9c310c45bab529aaa3e9032655fa3f986b84fc1006e2e1c8375441be2b31341307789aa0302047c435bb500673065023100a5cd8a451c3750c092ffab719322d9fdcbb128768ef619497ea78365b79f1921954404023bb85696de97ae0f0717226f02304d9a7adf8be51519c0df8899fdd3fe6e33f83ffedcc6220ed85bf2417504aed8ffc446d222c521ea263e04398b719cad0302047c435bb500683066023100926babb36b58928bfda49ae3a3c8baa112527e9e134ac090cacb04e0c272c142669aea25dcf2215c9629181eb714bb78023100d380a05fb5f35d6d377a0478132e2727a6456b0137f47bc825ffa5c879414d8e7fc18a8811232ae0c4750cfa6e3271600302047c435bb5006630640230549400d027d0442e5562441b324e6cbbafe68a9cc51d884fa35fcbeb9208c29c47dd43b7dae9db027d56f7ba7d0650d0023078264fb9019d1ab884b3937cc5e0e7d5a2a5616eea207e7f18d52fd333f27009e23ebb0b1e5f235ab6058902fd0ae6c40302047c435bb500663064023006066ea696beedd488f237f3ef39c9f6f59f8504b5d94b10bda8e003846393e154cf392c719f94c50a52d7a641ae92f002304a371e40b7d1852cb007d2173107513e7fe979b2c73bdfc8d841f9dbfb855b25a635d318da4f315346a87b818aaf22980302047c435bb500673065023100fa0c52a2b829cba631b503bc05b4f4ce3da02ef5183490191bb535f6fcc241f06ca62e06a82d5c555f595c8e80e7f4d6023052ce19cd3eab50f3f165e4c8a1ecd7a02b11e5150ee21f68613d2f5f81b9a6f40382500f2fe84eaa19000e5466c484810302047c435bb5006630640230351873b0353450702b992e369a8c81bb4b48a29a5d33e79a7cfdb0feaddcd72662be29d3da7f973920334fc1dd8239700230680183a9a874346fe0cceff534b5a96a6a5b3faf772fd27e16547df08046b93eb8e103b820b5e6754035375da641e9950302047c435bb500663064023067ab6d68738b11eb66d174bb813355de856209d8c7ad839b04096030ed20a8eba580c2b9c3e97daad2cdb76513a2ccf50230701785e3fec6aecd3ceac02bdf22da960e38916eead314d4a92c70a7beead5582bf8e211d3e410d6bb94ee1639f1c5a50302047c435bb500673065023100c032ad5e110e4ae776fe2812be730cb94597466f27f626fde00fcd976b50995b87428441daa909b3ccd62e0c2a5e361f02302019f2a36c0c772165b379ada8b1d2710453d57a5d17ba07ee1b2345635a0fd17d7d0bccdd4c40605d655fda507a6a7f0302047c435bb5006730650231009e6ff4ff70a34698aea9bd34327f5f43d3d2fbcfbe478aa6bbdb0ccb610fbcbf3c11511e502efdb010afa2afafd102ef023024b2994b8eb025c252fd7f3d1acafda0639b556dbe5b17df43fd522cb642c18556d77094b7b8ff79943c71a0a3bae5d50302047c435bb5006830660231009aef2e06d4169a353822c7e56c104947d511b5c7028e3a524ae32c7bdd1247c79a7818a5abfc80daa93b3da54bb74f8c023100957f1d3ca2491e3754ed499eb594e649ab38791c0bf10fc54ebe463955d942216c212747f29432dc47a39eacd0c33e590302047c435bb50066306402301d412bc4e452d419b34eb2b482ee59a5d1a67c7e51c83b4d9cb21e4d602be82fba43c1a2e517871a604ca33327d67983023034ccf4e92fa1f40a4a6070d18e3a4a8a37d5ac31a048895b0a1719ab27e58ea0c7989fb54016558121d262958bd208100302047c435bb50066306402304bff3927e4d7d9587306b1a10415301c5bb7921f1de2702b8b7c7b229165bf367468219638dffc5d7a761913133ea38e023065ab28734b849f8fb36e0de02714c983032cf12b479dba51388a51367ea71ac3f037461f86b50563f716d0a6b99ca01a0302047c435bb50066306402306a08b62e02ac2b4e6f33b4ad521c71796d5c7c766589b9bad5211181fde9907997695d7f6c085d56fa43530be078c09c023015ca49cafb459f36556badd681d135db5bc3d9d9b49b8de6fa4c58093a9ad5a331d11261353f6e88c13afa7e199a26180302047c435bb5006630640230478d3e8c42be3ce34f0487558893b59da57e4b582d917102576430e427b84f5b087c447e7de22d139e955f10732d06990230172db0212e62349506b64677ea1db8490ee2ea430b0775bb1909623aad28541766fcc2eda0244068f9d01054bdee331f0302047c435bb50067306502300110a6919fe796b37c502960dc0e7c49704a6b5810d1be4f4351f2cfee2c0a048f0e95a634ece77f80f4626ec0f10be802310090e67bf388c518cb900848f3cc1d7f3b74dab5c8079741675fedd5c291117c90b2db66b1aa0f8d45849dc5935bd233dd0302047c435bb500683066023100cf4c3ba1e3da8d45edc2b2d4d77b17510deb294c53af2ae2b35e3e26d6e22e7f1bf1f5bd6299a935d6c05378ef1b8719023100b43382f8eaf793345b9097d72f4f6c07de0f394d79789c32eeaa14b0e31210b9760bb928cf25631f42d5a05e8d0657ca0302047c435bb500673065023100c0503584dca3741fea08efc158d020373c9968bed67b4368c4ad028bab7f6eb786786e3813d23f0065a9249e22da149b02300f9483673035d8f4482ff54c2f4610c3c136e510d0a35202b3fdf880dac38601bfa21487d9a614ce39703b64d68c54b70302047c435bb50067306502301fa671a27e297d07a313a34394c93d78753472602355a70fd80b88885472cad2d9ad095ba186abf2a4995264be2dfc16023100e286487ead964c25dff6bcbc1989c90b3a64ebc469a92f913097c0e482d9a1b7c4e57397b421bb507562ec068a3b290f0302047c435bb50067306502302c6ffe3189dc006f9aa1886f64b890692c5849efedf0268086c54f9672442f13ee99ea0a9a2338b3b8dfc859acbbe66d023100bc9837fce0f88e232c57522ae147bfb408ca6acdc3f0a54364638afa1fae2b6de41c5d9fdf30641aebcc13b02feefcd40302047c435bb500683066023100a7aa572947fb5dc4914540892f7ce6b7ace2558d7a8f47b41b30c040bc7b0c4a094d6a2a788a411a65473b8685742918023100953b5f43ee713151e4713be41bf908a025e23a1e9c75db986b2142aeb540f4aa01665dbf65b3187c921897c0127a8ec70302047c435bb5006730650231009fe9e2da444a6ee55c0facb0f72998659ac42b8194017ae6b094b61e29fc04665f6ba8e572e054b0956103201fa56f4702306b234153fefb4af2c89cc76a212d8da47460b929ae961b46a0fde64d025bb249d71f269691b619618980084ab99aea1b0302047c435bb500673065023100a29cad96ae802f44173340de78340b8320db93f11c92a104873cee9b624cb76801e3038b0ae0e46c3a6df6bcd518a2f902303166e76c5f56f2124e3dda86d2521585b230cdf87aa738cce44ac92f44c7d16a4a01831f47e0267cf5a791317aae899e0302047c435bb500673065023058523a0f581edd3201903f750ff8c8e79146ee9a4dbe580bd81564f9d62082c9e9341d6642b4c68602722547ea0986a4023100e38867d7282c85ea30199e7981987f6d1cf8f3366a195e01e7066df71a449217fbf3dbcd8e2440b5cb503aa33b1f73200302047c435bb500683066023100bc7ff4ab19b3b24522578a77587b4869d475982d3eaacf59042309cd0d5f47a23dc62ff3081e77fac41de7c6788225710231008c334587ebdf1f967e4e01ed55e584382b802cb0110bb45308726dfd360cb767e8fba0a5cdf06af0502949f85433683d0302047c435bb500673065023100e866235e8195b65684bf60575b269ef3ee1652acec5d79416f2834dcbc487f84d38d8f16ad2851cb3b108e4f14db51b402307d88af529a53a745e9ebf36d5a13cd3d5d21aa036133e359a93366bc0222996ed13d93fa93922475969f3bb7a485bf310302047c435bb500673065023100e2a065fa2771e6d8ac27b885de5fab6633504a3e58140ceebf351b3ee2284178a21ca9ab437c09f5ff3b10e7eaa5c5110230773caa1e8af0cb7f3ff1854e7febabd12ce5c0c532100c94d01a73f10bbdbc91de8563f0708362871702185b420cd3770302047c435bb50067306502300d7dca2470e463dbb27bd88e72a159586be8503f5f3b1d6d9f5b69ded816e73bf28eac87ae9ab27a37bd2ad22631484b0231009d36dca5368a7b02c5a2ead452f3b19eb89a3968a722c84f2607eb4c69518379bca6414a78f296b351ecfbd61764c17a0302047c435bb5006630640230682123bcb150d3ce7394f832b27e86868a504c06519f3b614734984cf71860b1f2640d6652d1b8c2961d03d47b802e670230051dda5e2be6fcee21399a3c3d4089d787db42797c4eb70919e9a21c397488b64f3f2766a3be8b12d981fc6550a0e9360302047c435bb50067306502310093db0e7b29d0de05c56882ac0264488a1f5f61ba65a5cf9166d1155f87aed5d9cfc88c862b1fc9baf557b0865209314902302ce9003c3708e145873a0de73dd463ee58cf1a907ed2c6ed49298b06ab4e5219984cf92b8a5746b780a61e2039a89e690302047c435bb50068306602310092fb202876f9df854b892517520a9ba30ada5a70ab6866ae7a95cedbd7af0ec2f67ad3ac235c2cf52081a53790c46cbc023100d6c1c98142b1819e925f076d52563a5d6be61080994ac7030022706cb1b099925b720860b82f77fcd9c6e34c6e7062a70302047c435bb50066306402303d874292d7ae409660053edbc118fd9a45cae8ef626a442bfd60ec5e4f14e9de62c19695eabb88f5c4a37ba47193c4fc02303d3547fd6505a5119c3947a59d8bb9d999dc03c5dc8257aab6a4a88b1b1d5cf3fb2fab5b42f52761f61d9b48d73cefb40302047c435bb500673065023100b7b0d93efcb156d4a7d7f5ef6841e2a017216577ab76aad89c10f079979d5a80d16e106d848da8228f3c6b83aeb0fd8c02300586178ab88ef849a8376334189b7d784a58a40899421ab9b687ec68c3d586adfe5c8c418f8c81e7035b5dc2bbe43de90302047c435bb50067306502300e2205a99f49306f070f81b5f1d400c258fda82bd855700a40ec4bb545fbc23374d86809093dfa4dbe0647dde66c808c023100af7f4e99a4e90ce595f626dcb4f79b9c18289b2ffb77c1ef7a538e163ac979b007347fd36df7cea7b4561a6b6f808aeb0302047c435bb50067306502303e3ae9b3e30dc6bc37089fffea9689c3e95b3b5af54d3ecf1e3dbf6196eba82456071e559ee1e9b85ea85b9ceb482227023100cba193898f80f14e25e6034ff933248cfbcb439fbbfaa375ecc78fa098ce88eea62fd1ff11f9f46e2af07abf67df23650302047c435bb50066306402304d4467eff82ce921b1206b56b49523db95e8988b95514b971c3d54383a4753fc479f9f51db4f46689304cf89b08ec4440230091e796b92a3b5c298ef919f61c1bc3bf2899a1b770dca57c43ff71004217033455258422a21c160d1ecfc3518572e070302047c435bb50066306402300fe5caeee4391f684d4cbb38bdb3862c56d5659e6508b25eda3117354a4e1adb5a92b615e10cc198ac2f3208f5d473a802303045ccdb9b8073026bb13fed0fa352498c4405ff07329f75a1e1a5afc48d4a128ec702b2d870271b7fed4bebd79c7b570302047c435bb50066306402305be20390a0b0947ed0a9973230362a2977cea81b7c702d5a63cc6ac931d614e2798d02d188f62137ca604790f51b54f50230654ca49e218bb5ac95535a42f6d6e531972f2fe4af3ff860cf114afd2416208a4a08d761f8466f996e8bab3c69033d8e0302047c435bb500683066023100ad8b2d2405d386ee4c640272a7a58beb61318c2080c63b8325a4d574a6f9443c2a486b5f0f08cd2c25769ae32c2df9bb023100aeb7263d20749162635fbca912fce6d3183ef47d35ba7c65c65358144da77921528851e672025d3968c7c4cb2bc74a7a0302047c435bb500683066023100e1bf619f3f78661bb42763ec21f3d35c7523c9f66d986150c877fb57a570e251ac59a2e4c59868b13e6a9dec8e7872a4023100da94c18b31979bcafed15a7856734bc9bfacac727ee96e1475355f32899ac25747f07a7121dfda2a1ad83fd14fd012960302047c435bb500673065023100db64e3d3966c149c444b34bf8ce6be9f8efd8dc1a5dc68098632404ce1c1afb2728f08eebae7b10d821752182aee75820230684caa0674a21045c397bd0a4207f03435a99128dab6912819fa075f77b13c3ff8df2922c2728c0c7e0dcc0a80fc069b0302047c435bb500683066023100bb61e9b709923292d72b97a5672cd4b27ff860acd6ef4325a426b009cc2a03b544db0d9abae60f5e25715b039bca4d600231009c61f408420550514cc8dd2afa7b63e943e48f0c06a611f8666a608a0c00eda9d547e21c590b73c905bd8653ea81203d0302047c435bb500683066023100fdffc85b0a88699588f107483e7e995bddb89a28a083f59ffa6aaf3a19b0d457ca17d0a92aa732a741e20547fe1b1cf3023100d54021c5efadd7f1fda5b5315621b839601dff726fa4aa6da897cfd6cde404b8196fb463a4381fe0f0745c112b8a99d90302047c435bb500673065023100f813da742c250886e31c12580087d71c46375fb1b1d7adf974e437a0869c397023f20ce23e73e63edef11ed3b551eb1202303c98ae57549cf6c899af04eacea698cee3a852329673ab3edcc38b2ba282371787b7997c22aea8f50abb2914585a041c0302047c435bb5006630640230449538eef17e89a4d7e5f3ca2f569a5184d43c91cca9e385a1457b3c800beeb2a02975a675edfee22bc6efa407d00bbf02300160507e74403258a391f06c83935f7a5adea763d6108b49db9a65525cad39623ac3592a66137e93fe9dda15fb3c012f0302047c435bb5006630640230231d0118a8a1f8ed70477c14ed7bebedb8e6a58cc707226ccba66ef827165bab940773e00b988b72da3f8d2047d9b7d902303d3afbb407315d16f735aca71b4b687f4b56dc9f3251544a538020c0850f2e9688436348e6927b0271eb2a6ea61575eb0302047c435bb50066306402303a9ddf1da66d58dab4bd6a7deb66ca257aa4948f2a36f0d1887454966520f34d6cb59a7fc06fe27980a9a3ef7e02300702302812c5ae53f868240e7973516120a2717b1617bfe229b9a74e9708bbb0b93e93c92e7fbf33deb623b0455910ee300f5b0302047c435bb5006730650230491fa18828e1b6afe6ecb9b7fb2f2d478a1504336bd0842670ce6802ad1570c1772b268d011951ffea7dc874ab314617023100b075ee028c8826d3837b162fc4bd851222bc5d59d174f81faffdf5a3efde0942841b68ff066e02f0225bec5bb12168f80302047c435bb500673065023022d9d649079ae8ca8b8b7fb0c393caa156153a70ddbcca6a6a45f0fdf1f2630d638e573bd2f768e76458514a08f9f55a023100de1f50288c33b4af93e38799d6333e6d8823d074c4d12276ad760217943795b1896a41c88d16c2ad44df00e64faebbba0302047c435bb50067306502310094528237e79b421b3a99d8f75fe9f881bb289eea956104d1b16f9020c39d903e2479c30b1310c5474d0f9a3dbdc631a3023071a40d9308d6b6155d664bbdb6b0dedc4d37414b53ac1ef13dee3719e6eef4f61e3ffee4d727b2adc2f2a72ff4c7d0490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d72d2a977231f01a9d7701606414ae4ec95a6ce1c4e301fdcf1dc9382e2749ed954a3b7ea909d9d0cb9d22a90503055802306a3d01ab025bd167eea5581be9e3106a489ae87cff8b12656a83e41ce2c36181ec9f735c8f5fb5654b52fd08de785fd00302047c435bb5006630640230379658ae09bd88c360e81ef83a7efff50283ceb3da1f6dfe261a3d4b5f44b9203df6b6a59f646d64c1992fb8de5ab29a02307d3bb4d8ed1bdf217c68a0560abb56c43e79d60c26547d8c7ae3796fe5b95a06688415b2b86285854ea09157ce1e40b90302047c435bb5006730650231008f118f265b910a0564d73a789f6823579da428f3dd0b3b0effb90eb35a2814dfd0b72dc7ea4f946025262d9c2e2b291602302365a8305e58cde09fde0d476e1293c572e17edbdf411f85b54bb262cb421c1d440ed9b299c718c76a408b82fe06a9730302047c435bb500683066023100a6701f8042602dbac4d6ac7387d7cec8bc2ca6385cca258b8e7d88e1034b7c84e96fe8547b8b6eda467ea0144e694e2d023100eeb0dd63d1f325a2907d5bde5262cd983d9616910c9f72ad493e6d31eb54217cc6c24895737f8a03123fb5682c940f800302047c435bb500683066023100f8fe44ef458f48d79c2164d959ad3c93c37fca7ad3b0aff94edbfcec5a84730904bdc81b92b7b69ecb290d97ce9f2d7a0231008c20b74e9649878ac686a9cdc436cc76415f4ca63c9eea4366e79ff28c936e52e4ad0a4a1795814fa21e02525244f1bc0302047c435bb500673065023077a000bc4b9ccca79f42ea22394a889af310d622a732a8233eb19b5b19bb2036da3cc28665139b301d983182fffe131302310086e67321cc52020af0b7a883d30f4e7ffd22ee941ccb9f7ae886dd30c0913ebd16508f3df7b1ac749a5b35136f9e31c00302047c435bb500683066023100931bb2fee2fdd73c904154cb260f4be5365962c1682b4a1c5eaea1f36f12726411c77949704ee24e7cf71bd459c27622023100905d3d1c0a5e4c242849cfc896527311c98aab42459ecc106afaa4aed87b59d01b2f4b2d15fa462daf8088a38b3d8c500302047c435bb500663064023048aed5d726d2a8f32c6fa63753f0de4214384556ab3a2e72ea27aaf035dc22d670d85d9cb9b03d6b0d3c8f98f3a6571102306eb940e4d4dd0cc3240431d8b235e8eef91ff8049900164e1ec40d8938bd1cb764fe2154fc228a20fd3fe01d7ba67ec60302047c435bb50067306502306a7806f6ded98c4abad7686e102c511bcab2dcbb6f1fc22588e3409ad2ab6f57a316f9c237f7007491dd46079f86f719023100995777a90a6f284f2de2b5863d577b22947d9cf81ac9ca6ea4cd804fade2e4e2d508dc8f21ae1ff58b895042a33434520302047c435bb500683066023100da3d102efa6df1ecf06d352e294b5c23970a00376e55210175550000a63e2363a0d1267187aa94cbb74875d0db2b5c22023100e2c2c86a24bcd52b576bf3fde0deda26d6ec6c1de2bba8b2323ccbf2f54d7a3d67eeffd58a329d6053e265ef004957270302047c435bb50066306402300c64812f222fc3c023087bb864094f50f2902e24ce6cc5db4043acd47e7190e755b3da7d65c4935f9e617dc2ec26fd950230180d2eeaa5fd461f568824fff1ef3101293c3b263e8f07c2821b063b2ecd3eb13b67c12c7cd35584f47381a2e548e4100302047c435bb500673065023100bbe87e23c00c714ddaf8422fa85dd190d98ce110b075fba8de20c867b71247742b11162a667cabcb4a4f4255542e1f7702304c3c30a9b3e03d519f861beb3a1c7276f8b9770a6ea21c814ab0b786e3ce01d920d4cd0c0b35be67f0bcc13c87ad26110302047c435bb500673065023001e71fdd05bb7bf96e7d9f7d20e3275082233a5162ccaaed3052df38797658bf52469a0bfcb267a5a1a8d094978863d3023100b3e9c4601f63051f9ec6de6326ae912d106026de60530bba9001d801cc34de155e3c27ab28e362069e171f970eee4beb0302047c435bb50066306402303551bce3a507f828fd44903e62ae97c4b95763911b924180d9e4a4ffe91db1dd0a740c82bbda0cfee63fc9817202acd2023048b97b217659e96e10e87e74eb1e764b03b543df693ddc599d55ad056b7f396f446314e2139f6ebca4ec4a8e7cf2f9680302047c435bb50066306402300ab6799476b36e22c06b79bcab6c8276080bce3bb321f39bf500a83a6e3cab9f762265fe9a5e147a194c7b55f48abe2c02300409596c2bc01379e9aea1316ee5220a6c08be8b09b991f01708b1f476fb2e6cbcd114b71eff773d7b4cfaaa215a55700302047c435bb50066306402301096fa5170def1f25b3d9d99c86147d9e0ed0fe8ef72005ccba99eb12858a02575d9d5846f4a7555f76db836532a715802300144203196fab078ab2de29baf41be486367de6cfd0188f70a14366021030813ab967dc0dbed607b80736ace44e6611a0302047c435bb500663064023017b56675a6fa9e3d6aaafc0607623033a671b008864897583ad2a25ccc39b4275df4b3d8e71d93904b3af580be3dfc9002300c2af9e495795f9816753e0d5031c1458230ae61f13d6db503a408b0cae42917c8544b4f057fe847c3c08e1a4d852a670302047c435bb5006730650230743693f4140d078dff92cda40f5c7e2a9e4774fc65b49f0cfac5e9463c759d1083b4dea71fe770d1bd50296df46d4e39023100c975ca9b598e0f12fd63366a56d3bd0d47b8f498653a157ac1f51ce52c5df605eb45e2e38c18a8d96f3ac80227d3cc7b0302047c435bb50066306402305b3c55aa1e3f4bfcdab6992f1d005d8d34c4036f6a75d5f6ccdd5da72734719467d7cad1d336075a863bab709072629a02302b471223887cd725212f7bc7105c0f4b7563bbbc78296a21fd1f916e2736249c127a139268ce9e1704332b82c96664690302047c435bb500663064023062dcf793f3a49a69dddb2ff3e948e5334fecd53e53b97430b06fa32b4d47c359ecaf097da086a67e23a7a9c862e2346902306d3875db5f93a9e96863baa4c002581822cd1f9fdc08167994280774f3158bc2702fd4a4345166bc37a58ce105ecc32d0302047c435bb5006630640230108425180c803fa61806f375f95db3bf9f36b817246b228b0fcaa5d302c177f7859a58c3b7ff639b626af2ed4beffa4a02303ed598bbaf046920fe14aa91713caeefe70efef24c7d65aa15d059e6ce0914a64058632ca080dd17f36e32919179e2230302047c435bb500673065023100a0a471fda4ea5b25572486325149e3a6f35ecd6ec5ada6720f93a287086275b041f01c4c55ae5b0b454daca03c19d91f02305d20d5ecbb6ff6e8a07c2c529596012e0ff747ae1a44f0a80d497a7a201c7db7c3f3d9395f1a40fde97c8d63d639482a0302047c435bb500683066023100907a9cb3eea4cbc6680e0e9ef7bf96ed7da0c893e668997b3fc6088a53866b998e7c914d3ef149e7e93ee58ca45e04fe023100bd1134b960ff1cd2f922cb88f7a929aecc5afd1065cd1ef79635c66c690b59a52f04ffd537231675f246afde0da4ddb20302047c435bb500673065023032d5a690e3654b29870000015c2473ef9161191f4032fe1fadc8a75eb8324084e0d68803594f8cc356bfbcb6fe1fc9e4023100a2a2e0440a309e548cee3d29474ca3a842155ac19dccc37010e57576a78e1c2d293d0b0f0320121e801b767fe8057cd60302047c435bb500673065023100ccc61d18b7595286e03f528dddb4e02fbce2ac91c00275e4aa0c173c67b6a74cbe71124d20c93700c74c9025aa795bf40230225dc81c4d5b034375096251d13a2f78661b711fbde7cf1726f3617053a8bd58e763a85a31bbb798d0a226d37e293f450302047c435bb500683066023100fd69724ec2418ce3463c89d97894ed8e7b0fb944ab5b30ccd35ab3a4b372d9cf21c009e2981272228d871249a132f156023100f47922955aa77a009dd0aee7c7fde4dc6856dc8bf1ffc3de1e5bd8ed56f91be908264f441230a2f7a511554926d542e20302047c435bb500683066023100899dac59b291c1d39960e292b948076a80c0cc74be0e08ed8e892d1975cff66d77a4e78683350d24293b9e6a7d4a0388023100d9320169b9a9d025b62127f9399bf68c9f46c137e54fe3cefb2ffb288a9887320136f388b3a628c19d135a6ee41b63210302047c435bb500683066023100b5623b1838ea2f1d4fbd9da54ad9a1f294f7e13ab49b6a209123607d0409c4226d7914b8371bee1f7133c76705dde1cc023100d12578ffda3e3962b474f0faa36fc704f1d525123aa2314de164cd4adbb08581eb3cfaadf34f45a5168e36a2d881a0160302047c435bb50067306502305aabcf13ba525ea9d37e46df3da6e2ee3a7cf56ffa5755b401a29f784668ad5672918f0611e52f604912c4845d85d8cf023100e4a0b3af76bea432658d681df4d6401b6c8bb5f3ef919fbb4b833434f583124ef506511446a7466cedb401671d867ad30302047c435bb5006730650231009943f52efa38e234fda8dde4667b7f70849c6cbba33a12051845e6da55808ac8e39c68d93d488dacc77a3f94aeeb741002307c6150ae4be197eeac5f6e5b3a9413afc9235c3dece58573205bc178449f2c77584fab3361dfc716597636063b4d88f90302047c435bb50066306402307d83d99d0de27197c345b43d3f75757b5ce999660d419993d10ece0594d62dbe7cb32a89e38cc0f5148b0fc85e124d4402302fb8b7b5f88df6b175ce6a5eb02d5c81f2529d7161cd904cf196dd7e16da99a023071abbc903290c3b5f7e175d8426e30302047c435bb500673065023100c757ca72d2cc8ed8f1a858320667443fe9b10285603d2beba07b32a6540449d2eff0f526e296905eb8bfa64796ab831d023056888645e748d23568a169cd999faa812d9cea21909eeab700338bd2f84701d8044e4dc7a2353fb69389f347658f92560302047c435bb5006730650231009832a7738fa1159cfdfa42d29470ac82763519d836319adfaf9658026cd1e7e5796aa50bc738994e132fef61f3632f590230466db2f809938b311ea1ba9f5e4754f97d9a588441355979fdd8393f39f94166ae2d54569da691b75c22669c5878bd2f0302047c435bb500683066023100e08ec17330e48207acdb09586fc4a87e44b11cdc52c0e5943f8032f50a3cc39e5166fb2b3abc59bf07cbbe27cc274f8a023100bf6de00dd4d777fd9488cabb8fe75121f8f3169bb8f6d1a8a1491eca28e84c88067293922fa0827637c4906e42eeda460302047c435bb500663064023048adf05cf07fdc6077836dfd353059c024fef687fb5162f3de6133a09300f8090d75d646a42d2089ccafb534921f0277023049fc73b1f8bd8bbb681cc17a506ed07f383e2d9f7757856dead89738dd0983a6244ab64231e7bcbf12589bcc487a64d00302047c435bb500683066023100c48c585b9313c6f9b79fb794b62b0cad583ed750eb3ca76a272a4abdcaf397e2fada90f847026f9b988a112c6683be9c023100f76b29680191f54d183fcd7cbf433545a2ecb489a54ccbf9eba093b1a8ea6a110ea974312d044fce8271140ffe67a2190302047c435bb500683066023100d0094c02eef4648841d71735ef2b195cf8f01fb88fe03c37dd90ce205565f3a4f9a174253eb054f1ab44b889b475cb44023100fceeedb5d80f09613694c0e5d63263183c05e11a58477110bf7be66316d191bc654a5a467331e97d7afeab2673c7046d0302047c435bb500663064023029cc0861e96a7475157cd02e05d3ab67fe2464d8e6030deccfd48467b2c298442ea61f95edc02ef4ffa1156d8b0dc623023041d1d0d0696e3db81aa70bf167ec5da317d0b70430205f1f3a99c7df566f53de9366a7fcf590c33b46adde3b9110bbf10302047c435bb500673065023100d888510e44eaece1e579e0f6b2c6f452dbea3f2cfd12659c9b9a98a46e25cdb1d7b143f99e0ddc99480b4ed5dc6a86650230706d974682e5f8c8bf79b563419387717e85af26632a2a58d62e54b890ea9520ca29b47d234550a0afd34eb5f09ae6af0302047c435bb5006730650230490643fd7049b022ff9b591a1a038fc740c579df4eed49799a4e5db60f0118fb2e5532e06fd11b3c6b164e2be238e2f0023100e410b3fbb8149b8b7564318f8c5ced7638c7216584501adfa19c7d15a6689b78cfd004dde7cb867b81623f83057dff050302047c435bb50066306402302033dfa131bf835cf11811e887e4e4d32190049f17f64e39eafad8588fba82ba6bb3975b723e7f4acd8e344f9e65f384023043bd187a96d72760f4cd1ca8aead53f51d685db18bef0b2618a10ede6bd643eb4066711b3cb762d6bdd55c512741b8be0302047c435bb5006730650231009030af999cb52fbc94bac0aca4501f9c21a9634329586fa81b2470145f90ba7ab0eca2d0a6cebe8038815768769e9b3302305343eb23fc5f808dbe4dc52db83ccf744ad82a2d1f5adbeced418f96a5eed9022f73c39f9604d5615007fdede53924310302047c435bb500673065023030d3dd3507a602f3c75435b8f47f8c7942532eda6cab8a4b4d20b09cd00a01921093eb04445896026725c2dd5f924d21023100d0ba45fe05b91a042b094bbd2f27475792680f4bf49edd8fb0ff144d51ada60661d322a865bb25136e7cb9f6faea58220302047c435bb500663064023009ed982f40a50df0a69e9ef4b9f0f5d8dbe42e21e868e55927d1df7d5abdf25a3dc5eea1d50e517b353db40af49e487102300e5ee93faca565cd65ba3bebaf8e4ac1f4f559c11fc68432a09373a3928f33ff53c0451cdb8575bee832943757c2d5a30302047c435bb500663064023019818ca959e07b1b43386e204bdb9061837481ec701c63f54c26012ad6b4656df193d5ec6daabd4bba6e13adac8598210230075c7736961f49767d3a9ea091df9bd604f52c7be3c3b7ac89cbc9be05243d828f91d3312658284ca94388bee168bc770302047c435bb50066306402306180f0defa08e19d2dd134cffbea1985ab4f4e683690ab3115294543297348cd603555bd1c3e2b490d8abe99e2e47cd30230733cc20850126570d107352491690fc7baf2fc44b791877c65bde94f47ebc3c7d7531fc3f65b572839958ec7aa29ad690302047c435bb500673065023100f3e1dadb48daeab9a1758ac0dad134f747068b9639a03e0cd43ca284064cb8f15058a7043599705bd6828f9d6209ad7502302c2186233de83795bdbe287c814d857a0af7736b9ad30a779dd619f18c1ec8e22205175b7020da4743a7cccfaa851cd00302047c435bb500673065023100c266393495e23537dc6f13e26c5acb9968845b2d3172f64733c615afcf1e0e389afee01c14a80041ad1db5718ab8bb1c02307176b0c4772206ef0bf65b10632a31a3d7907bbdccfeabcddb0dc449c0e5e9c07f9d12de26856fc6e1cb016c4f974aae0302047c435bb50067306502302caa04464cc9fcc4df08ce10dc39e6673b6eeaba734fcb797d687f251f48e9ef1b9a17133ac3955071880d3a6c603c760231009fded3bb44a21e19dda934463415561ab1e55cfe9ce9cc6666c15d3e2caa0bbed125cef6874171c0fabf11805f588b220302047c435bb5006630640230190ec954efb2541df66ad162e925e5499775271ff89d7732a7a34848bccc11a7b2b403a4f2610a3397bf60e14dfe47f002304b1c52c9407c112008eb39f7ece51a456d75f564e50a4bc74fe50652358d68d5ac9310bedbac5d1b9c45748665606dbc0302047c435bb500683066023100c28d5a5ec8cc5f1eeea75a850e3b3e6509640be06d4f5f870e2b2efe89d678e1b6301c927ad3a379e945b08e7ec94c9b0231008afc5431b40a94905eb1e617a6a8b5f97bb913399e676a142846e91ab6ebfba0a77c470f1bfc73953a908171e47123c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301f370988740d078ed0ee43952a55b91159973dfd8573e215c271fdecafe3528bcf0b49d69219e0692f63913a67fee5ec023100c707bac3e89260aa2e146a38802a5bd4db1a22b3e2ffc91ca8c34f01b9878ece0712022b7c5d714b478cc5c0483136ae0302047c435bb500673065023050473cfa2f3576e3b4fbe9455b07811bc49046e3daf582f290efa0c56d6592f28dd99e67ccd21a6741830366411f87da023100ea87d10345438ca66d0c761894a7c3fdc79d9a25e31a3674e2736bd93727ecbfc4ce0d2c5ff7a8371bf9ea95f151e0de0302047c435bb50066306402304788b84d1125895fb872e0a87d22d19ef72dcc140251bae6ffd92bed94dd543be31993074db3b3c9afad640ec198b4a6023072a173dcdb8601a82729c870c511f8582f170e137b0a1bb7dfddbf9158725868fb8d805299f6938902937891331d60f00302047c435bb50066306402300c5e91ab637eb3f52cc9bcadcd05077884f8523a903c8d998d8e4a99b42fcdfb6b197cd4dc44ee3d89719c21cb825fe002302e402af591ff80cdd10ad52ed6d55ea5e862b2d5bef18d46951c777b4c36958a30c147f8cb6868a6ae56abc008b0f6b60302047c435bb500683066023100c52241f4bd0b19207f40e21be7ac4ba2409a32b31f9e58b99b7118bfa444ef6c876b3485ace50df7d39614e6fae97c85023100a2738241ad4c7d7c43b797166e12ca4149d30c87dae6161c60b1f02bbc69c09a1789273ac3045da7621458b9d074f2730302047c435bb50066306402302b8a95a89aad6abf3ea962fef1000cd073726722ed40daff8765899117a7e196a53c51a2872283d864edbd84280e92580230505f1e23e856da06b9422768c5d5ac93fc577fb9a17ba1c1aee7be7bd3e511a3477a4d278743f4f90c86993ece93e2420302047c435bb500683066023100f6b3c2f43bceb4bff3e4c1df878b4a31efe57da9a2ee92263e48b2acd09e49970e6f634938396c4a6651ce324476ad49023100e7cf708415ff8e9b0454101ba8e6d3883b7839d398455180d626c2b345760262ee1fbb08c0202ff7561600aa539369a30302047c435bb500683066023100da4f27a8bcf0317653ef03c991b87d2cf1d36f724186b5489a28a8e221b103eab5b7569037d1c7ad4eb6aa814b83c831023100ee8d361b1a9e6812ec7d9151a32ecee30dcae3d23e83e3ad7480c876025c6ff5e46039bc34b79703963b858a162ad2ac0302047c435bb500683066023100907f4b979bd69cc49cf98bb0daf3dcc9cea57cf77dcb9a7d538f9d7790bff2285bae9933311367323f79de60582bac6e023100db96017a16813cb63ebee14c32ca94ca0d915a4b6b79e5d30bd2fbd5b16a2581adc11e0d8422a6801d76ff4a0a95c3720302047c435bb500673065023100b45ae48107191d950e233f4f5142b452683174bbc2eb20248ee117f9ea864f2735849d8d88d7a45c423a4a6ebbee6bf502306132149663e7de291cdab24ba399e1ddd8f4b7e0809affebf00824b0ccc0855625d5d0c1690e1dd3d6947a8944a8f63a0302047c435bb500683066023100a59d16aaafa8800414dddd866dfd464d448a977740fe9cf31fc445776521a52556b0f0141f71a23aca21760f475ab96b023100d781d7ae033eceac48315110fe748c2426305b5b7572f706aa1652b3a944b7fd87b74ea9093cfb8ee928c6a5b56f68350302047c435bb500673065023100af10bb8c3b00547073926cca410e4dd93e3c0d76ce44a844b7392b06e1b4192d360251cdd319dfd7b5baa78f55dbd65c02306fa0fee9ab4ce991cb68e4bf576b7968810369a0103ecae4a83d4a865ad9249c6a8d08513772494102d2957eb72d94fe0302047c435bb50066306402307f7cc47cd69d6ee223d373d057e42d93579c4fe130850ea4a0fb0fc1433a2084881c3c42e8851f95f486898afaccc8700230270db1c26aeabb131ca8e040047d444fe65c0575c2bcec6d9177586e35991f21805b9ccafe1b381a0b92b0499e10237c0302047c435bb500683066023100d52b780a0ce3f5c7b9203482f407f1e8dc0733a361c3d179727c461327fcf20289d33a65a4f5fd43cf473839f6e10841023100e732044a436b40d7c2b50ac6e0ecba427b76ba3d52baec414170558fccbe102120013ad9d8327b69ee6bb580fe55686e0302047c435bb50066306402305b9c42862accf50f6d31e49247f5466f5ddcec492bdab41ce1f50b2fe7b120d8ceceab594e040b3c457b415f1069590b023023e2048dd3b6a2c8de4d0b50096c83ea280f2251d1489e07ba54fbabc74bc27ff16407873a9e4414e7751bd32e430f660302047c435bb500683066023100e9e16b756088acfd25e9fdef1b9332412f71b432f8fa8504ba436df7a7e40d83d083846433d2fe6867c8409ac33b0e3a023100c041de17ad5240f54dcdb8a98a008e84f1f508e68742fe648877a26d675acb19b680765b34e70bdbe9fa2e6f2735ab960302047c435bb500673065023100b00ec29b582303980035d59399e266672a7853ebf9253434d78189eb5358a36aba7c260ebe0523a5b85b17dcf58a0fd8023056b4bbe3a33da9debe2fa165b4c266c3637ae66f8023055d89c136ac7dc179fb160a6bfc00665af8ec52e2589e8222e10302047c435bb500673065023100be56885f7445b3207dda22ae2c82155367f0f7edb5e04512efbd186b34bcfdcde45f1de39dc6de5351ab118a3cddaeaf023066db480bf392d865edc4edafc963e4c073fc00da6570f7c02c4ef06e543c4ffd39162edd3a547951098034b57c0fd64c0302047c435bb500663064023070e5389c3f0966d3fff73fdb929998beeaaa8eb2afb78cb45f3dacdd9e67a1d7670ad1e1b8df09b8756d891da5bfe98802301c149b1bda5398068ba0b536634c63ce5a82d013a8c9db7c8d3244ec713189764763953518e1121ce505f4f42cd9bddc0302047c435bb500673065023100d78fe1daba9477596c70daf4a3e4be33f604f93e8fb95a55fb4c47ac112888ba4598669619d39430e2e89a58c6c89b5c02302674298b143deda8ea15516af2a4c1754cee5e203edb8dc7f4c60b74fe9ac29eb2765f13665b36ded9bf64de00c906b00302047c435bb50066306402304687fbe39e55ea6e3dbf7393b8ea688b78ee389968c4a1f526ff7decb2f6af6df018c132b65e06f94ada28a29fe08d6b02302efc4c61a54b0b6deeab92aef5e5a5d50cd32f6b7bba11a76d25a0c4df46eb67f19c7745ab9719ebe0627efa691ad2b40302047c435bb500663064023020dc8650c1d72116f39d0e871e62480032848a15f1f9027fea42e8b76ac2cd004248ef1d4f164d3d4918e08f9082049202303523468fd024f3b243b9d9850e80846317e0c702c925058d875eae79c5ef768779c37a99b18376fc4d513d718bae3bbc0302047c435bb500663064023000ac321ebe5dd7d079a6e2b74ce052a30ed9f06502bbc2a541b6aa5663e7a9733cf80558ef10dd07176ad9a9702db96c02303df9a3067d9627e3d4c20e375b29cfa924152525b501f958d87fb38938b72b4649a9dd5f7a11a7c9b2b6dccfadd6790c0302047c435bb500663064023049178f2dc4f9fc318e251043a84ad9d39e3d9fb4f4c3d165bf41c65330446b2a6a1eb434164d8fffdfcf2a3663600a12023000c0dd3e41b20dbbf06ec0dc84e2168fc2666c3fb2d774a0b0ca354187b4c2ceb18b8175d2a6ba53e04592f9046d9c870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307c1351d8bb561740f7d68f49c31258f4a1851935b0559a571ebe295c51ea79bc43e30aff39ba59d2eb25ec5b6e6359b0023100988bf8dd52287a81f59af49293cc04a5608b431575d09827507f25a184aa02c5fa6f3cc330186e4bd2b7628a332da7a50302047c435bb500683066023100c9807ebf391ebef39556c66201e7ffb32e7e2f03b700e3bc107727d7341c02031a9c605c03e06706c9795cf65f533328023100baf3fa4b8e9ebb43be99fb1c18ff5224f732385a043a0b09ac33b1af15f2515517e101fd1684b7d09111a424428d56c00302047c435bb50067306502302cd78f65074da970d441d98528cea4719e3d0d9e9090be8bb5405d3a544a73801a4e66e90030a0a2efd9099f1649885b02310090a9f5ba93a6512cabe5f4c583407ef68d446ef9c4249fa908cd045a014870256e8bac091d4fcb342dae2571368f6c2b0302047c435bb50067306502302bb85f96bb5e598ea514d7f45e64efbe48480bdc00266f83da0a7e91ba6377fa16f1d665b452c060eb61fd867d6f7c7a023100d4ce2aab09998b786391a24cfd596dddc36027fe81836b59c34a59ed07531d82d8ee8a8c899f47d1ae9b540f2dffeed90302047c435bb50067306502303490dbdb8733247a4f4039c02a8c104bfc2741ff6bfddbeb8768840370a8aa36be2166701f7b0ee525b605c8a2471c51023100882f5a017c6d8805c03f1985005eed2d014964295a294b99fbe04ab9ffed650a63d2612e9b9f19c45a830576951507850302047c435bb50066306402303dd27b6f8b9236c4d724ea0309f4337c94c071d2ccba87d80855080ef280b1ae328d0516f104f058ece4cf93c6d96105023004ba9c29c2fe3ccb1e488df5312169556c96b0400c8fe12265743175f8bc706b25d9ab2b16f7b9c2def7f4e9e222b9a10302047c435bb500663064023006afd9ec500fa7baff7515badba99b0f8a6733ac92664278934562a556ee7b75263309ed131692ccedbbd459db19c3860230234f2f89d6de7d2ddbf6ad2dc909388cf88ede2d5882355acdad493dc20057fa60ed2edd6f87b8bf71aa34494ad82aaa0302047c435bb500673065023100e92fa4f3c84ca5407964e548853772175ad1fca7cfb1a2770dd9b783298165cb40fddc52e8a9540ef2ca579805105a4a0230098e4a10233b2e30a1bfd900a8559873fb33f94b2ab9f9d62e8f5803f96edf22ab47cc4c397c19af8f472dd4426fc3300302047c435bb500683066023100b6e03a7130385ad2e0ffc84d40828e2a14e3f6bf29f490707c9d1ebb8d0de0b6cd8863aa6521b03c2fbab243e23d206702310088d6ed05bd20da61043d36fe989366592e6cc091cb50d4ab74fb3b7bd49d59019155830ab728c6b7a9d220fa5cbf55000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100babad308159df0a0390ebf34f90e0540cd5153f91257ff8136969ef26852ec70aad05d6af1ce4a0f61770b9230fdc29e02305ca1642ac6c5f163501af20b7617a72c97b7efbe03dc8a7e601f240d2c9e315e94657567bd4a8ca58766b5270e046eca0302047c435bb500683066023100df7f90c558fad80a7212c2d14377ecd36077fbb8c259876884c266ed9b4108ff4fe1b4512708a660bb32738e78fc05db023100ba78183f091748743e28a5209969cfe056ce60150c82a82b1fba1e58f724a14f4b7944b5e9efa17f3b900ed64b5e4a660302047c435bb5006730650230256da3a1641489522aaf8740081b3e2ff5be3cbf592c0bd63b4212516c7b389ef25791547b66b22f004b4106e1bfc121023100f17d2a05c287a863fe32379a49e4a3878c51e6f0de287765b0618c9190770da7aed579a0962d171698a921d4e805757c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cbd0081cefb67ceaaf45ad734f53fe58af0047a5dfd50665c64d2210fd0ab55e0656af256d6a4b2cdc51c7f2da058336023100aebdb6405b9d7778d770afdcadb198f05955135aef4496c2e22ccb77f28ef49e3a4a93d1753ff6e60389a542460141180302047c435bb5006730650230199db94d6f16ff458f081540575b34bb55389e6f7441449282642c152f27a939defc864e6a515941b5eec5c1f6502647023100e07f6c78f4df4b02312e6ea07cbde024e9854966fdddb6871335a84d3dd53e3fd466d206fbe31f7ea1644f78d0ce65310302047c435bb50067306502303ca7fff0bc919245a2a30c104bb659612eb23b90b78e5f9ba281022c693a10cba1ac27f29d0de484b251a5ca7e53b077023100ceb756ae5e0f0c5832d31b414ff669c84e617d6979eb7ee82b0d25869379bae8d7f79ed681b2b0ad6bc2e793053d76740302047c435bb500673065023100f497b00075c5070039daef47b00785a12734cf2d031b7d1ce4d6674a5190fead38d63543bec61de611da841a479e474602304783ff68a46129c76861a3170d3fd1555b4fc40b1c08ef3f6bffeef48f1917449d0647eba3793b2a03253ce8291357250302047c435bb500683066023100f0408166d71769d98e988c4b3556ddc966c1f7bd71a029d722df3fdcd60d35444a2b3f68daff7a5cace29de12b68b95f023100a95741c26678de0f4e03a313ac99f21fbc8f7ab6da25c5c7053f116a63c93042ff2b93c906771464d502570cc05109180302047c435bb50067306502306749d4b2a558369840fc40cb8516dd65cb00cf3ce5b526ab7a639ef288d7ac0e15ddd7e4df7080992949b2b59ae6f4d5023100cb1c43e4fdb007c5e26e924e7e833fed01af45f10d1ad5a44a9d4b9349174d8f69eceadda56e667ebc8996f4a2fe9d590302047c435bb50067306502300fe63382c9ad43e9053b7468501711fc02bcdc03926b480e9736b74a3028b3174433adbe86b6888428c034e1e0d92748023100be1a0839d989657c1c0ddb5cd459090408813af11ff80d96eeed4b8a70de42305ffaa2ce3f7779862ddb5346d50527d50302047c435bb5006830660231008471c737065fe3043cfa03fb678fb753346ee1d4b90cb646676b12a2d78f36fb099cf24e4626bdaa95a0c5458c1e9987023100e77dae9e84966517fd44c2c353ad6c6fc3c4225075093e67455685386e91c2ad4757fcf9115d60015ff89208690972510302047c435bb5006730650230790eb92a5cc58ffa83bba8ea13ec91b69024488c31f81f13256133824e4ee92af8ac11d5c01b5d9d1d15cb7f542593f50231008995cb095a1cbbe74ec4a24fc889edbadb116d51eebe9e7548e903401bc9413d95a12b6f3b418da1a97ced27ea20b2210302047c435bb500673065023100f101a33e8e35aebb73fd8ea1db9ec5178974923b603668a2d5211fcd168387ae759b6e53e9025e9de9d8245a1ab3180302307a8bfec98d1938d5cdf3682965a0b157ce939d44d7d7d136d0397666eeac755c290cb3b835f4b65a7e238fd7702aa7990302047c435bb500673065023100de441f4deea15637e019ee8bcb24fa0641f7a74dc2fec31d8dd6f33127218adeaa6ba94fc27276cd7dbe7b33e4c70756023005c6fd1d14141d5bcc21b19b33690e252d5177602c2a1d93e09282dbda389ee124bc04631c9ee8455e33c5f9b3e63e6c0302047c435bb500683066023100b57476b51065de1428dee6a23183cf1385b46a2df032159fb6842503876248de096176702814147a1b9c0cce900a9a02023100a7b8d8b96cf70997f1a4e7a624be86ddfd9866d1ac64d0008062d0cb2dcf77e8edabc6157b55248b0c0597f90077164e0302047c435bb500673065023009f594616e4123b60129d8545a4359610faaf3235a50c1cfc7330d6e5bcfb44552d959bc0137331744b7e73a6c95046a023100c6227bb08dce68e60467fbbb8c07e819c8c5b027c2b8d508c224babb232e499a50a5648f606f523f4e39ca82b3171fb40302047c435bb50066306402306e80f198b885583b48191665eb3ad0b2bcc9bf867fafc2d971183f841456507067b23bfb6a024f20e9fa6860ae4af2e902304dcccbaf4490581f92887fe29c41092d166a10b1399f85d70d0fad164c0df357b4bebbec165039c1ab8e1df88ebc32ed0302047c435bb50066306402305df843c6e2449b76c492d58bc3f6248e5f60f2e74424120e9f734dca33413c84a2be169fdad72b0bda664bee7c12980402303fb3f8d27a9f7b0d1e690f30947440564b902183e1569da9fce589772fd112eccba96c6a14a3fc03c92326e7a3dc29000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023043a8cb6396a0a592d4d4703593ac1deef3a82fa673c3fc97a0b00e1f5d08ced5cba70de68000f386e0a02ecd46488872023100dedee19d5e35c92b2f4da032ae9338527eba028cc140f7baada47c3fb09917bd65728a2cc0ddaa0717577de030b7d68c0302047c435bb500673065023100aafefd72b15a1495f095f8343900d927f1b24c90e32690efe9ffa83078d27b57d7d5f6f2b37dd2a6c0b119d81385fe2802301c65b8709550c839ec36f99e0d1f2761b90c943b06b5ae78a5f4599049f3650162ae57fd857e19f86bd94127d79d1e840302047c435bb50067306502307d54a3c15a52d226d2eb9e4304657bc628b6d2785e48fa56decbf4de239aa31d94712b107cfe2f036c170bc2c6dc5625023100fa233528a0982d63849c3d4b2fb28d308bc0dd5763a3f392cd5dc53afafef75fca440a1e97a9781a4c50256db709ef5b0302047c435bb50066306402306a91f5df6c42a2bba2bbf46512306007b0dc4116184b0c97a4483724bd1f2aa46ef02df1c1b2491a08afc33002fd58ec02305d856483a294359dacb338d0f963a4f61f475397ebadb498872c3b958c8c7de81a70d475a18a541b1c9c6f188c5cd4b70302047c435bb500673065023100d98e4ef1d57f984a18eb5d55da650ee2869eb497597701d71015d5eb5a04efd4195dc5c21b387f8c1ff71808af505d4c023038a1e1f0c2bd72a04105bab8e8d85262b108f53e2d48fecae8ab4026d50a588a82d08eed132abd9c7ce628c8450948140302047c435bb50067306502305397852ca78ff5147000e5eb6b06e3f0af3e3a6e869cab8ed7767c6163f41665a9f77883dd16116922dd8b5d6b7983d7023100908eb6080f813d64f64892c69ea0c518fa905726ada8ad018bb633b9333f32e1de58081518048e369e578a773396ffdb0302047c435bb500683066023100cf3fc1ad715cfeae1d063850fa63b5a38df8a31a1934b985917b604056ca21a61a1e90464a7a2d2c28f39700a5639574023100eaf2c82b5b4d45e0fd6a114c5ba9dc974e1de3a78f259fc27601d2b80f6caf7e35dd76137ea828ccc9adb783eab93ac80302047c435bb50066306402302dbc8fa8f7afa6092bfb55ea126559ea21c39350f9e4919767da9b8b8c4a73f12d2a82c7ad9e02d3d4fbe367b7e18f4f02304ab8a01457512f384359e420211e7f6837791188665263d1478ecde3b7debe9ff8289162b309512e77b8f5b8652a397b0302047c435bb50066306402307d908aaa36629da2dac7ac9cbaefcb4601694f24f852dcdbe4f09ab217279a7e7dca320a237265c33ad60bab911d4faa02305090f38b44e64a93e5aa7f016ba97ce270c887c689e75f65c83214fe851461878df03814fd3fbf0939c1d1bbe0225edf0302047c435bb50067306502307ac1c0d2ec628c225a23b0b7883d4e40e6a4c46b1d39389490cb0a3327ed5979768c9b82181544618dc34c5c12505ea9023100db653e526ec5398e8a0202b29112f800e4bbfd3d4d01410f17815c50b17d7f9110e0e289d6a75e235bf5cf50e43c25b60302047c435bb50067306502310095cb1a036ee2290e1bd1fd7dfc397c4dc9923f9b56a0471803b22f59a09aa48ad2c6eaa3f4b992c499eb43bc439d99080230719f00d9989edf5da7d9a21f21a7da0bf508e37cd0ee4a5e52bba297cbca19866ad2106c03a35123e0fe1d232d1f12ed0302047c435bb500683066023100ab2e5769fe765f10c9fae92c1f84a00e1c023b2ffffaab6cd8edf355c2737de75220784365e1d4739aea79cdc8c83899023100f7f4473c1cd10a02fab8bedeaa336cad9702349674e41e733841b1a1fc3d3b2cb5040f42dd0218da30542f37517b39a20302047c435bb50067306502304a0e78fb4bdcf6dfc663fa68de7d611e727fbed7f59a54883125091654efc1d12854c9e8a49b8c69c2cd26596793b9e6023100e7b991ac8dc27f35608af5ed411b2cfaddb8354790daa391299adeff39a67baeee4dd3498b9502aac970e2ef9b77606a0302047c435bb500673065023100a8e17fedc58e95bd73e43640514827265b77f2510102355d063b9cced0bad31466af41efd28927144ae6af872c461d86023055533a2a5d5b4e26114fed03d0fac5604c8abd99820af426619187539902656ca5f9ca1b2c00e5595825eb6dd0cd30990302047c435bb500663064023006dfcb69238da7e8d0160571af288f55d841f40618fd754f9784a48896d958d910cbb3500868d54d8481b6595e3ed42a02304cf72cd1d1945f9771948d1178ea9f56434b724c4f48b5b2b281c465b9e30d0cc300d5333105b2b14cfa98e44cf714ea0302047c435bb500683066023100e4ba637bc49caf4952907d2fe6e7d4e6276f87f0b341709c5f92d424bea36e0aeb2a89f072ac6cfa218b2533bca4fc72023100a552a826742a54dfae5bea064774d12d176569259fa4cb00e34f49b6a05a4aabdbf47e6124774508182f3d00082dc7610302047c435bb500673065023100b6cdad1e7670eb5b983e1a967cce86bc8445a8b35231477de1ef9a8782a41387fd8b94e47b10d9f29335b5fc1f21d25502303f5c42873ca91882e36bb8079b5add625cfbc79723b0e9f5b2a93c10b43d9b52ddc943c1ba783f591f5aa80c66eae5f50302047c435bb500683066023100e6b3978e78b96bf5a67f9d7bcd84bbc1952452314f11f6534992eec148b9d8a6a23fce9f67894369b22755906b789918023100cf81a0acc644a4328898361a341be2ccb1de88eae620315b8af66d63631ce8a6b74633699176e949b13468a24aae0d780302047c435bb500683066023100dd5bf25c274b9a0895bb80392db698826687c6f1f7dd5836a6f27704975eacc6d81f9352f25132a7d48b17c4284b26b4023100fd72a905681b8ec64ea533192fbc78619d926c52408964545144610a7dee56bd21d579a9cb261ff6cdc04aaab710dcf60302047c435bb500673065023072d039cd51adef4a5746b26b4e2e9ed4b323297f3c7ea165d4e2494abf005be8a367acf9ca26441dda3585b954baf48d023100b39255dd043511650030b63d7f16a792c3f171952dff07c63aa5f77275b77b5db4f42910a07f220a34356972ba99c5e10302047c435bb500673065023100fc65ef29d6d841b8fc7326b35004f3819a68e2762f5b8b5d945e5d317f7a4f131538bb84c6aa14be61367f9ea670b5d0023010d6bf5ae17dd23d1801c6e3ff3da19620c9776b93f650c189aae83b9db19e239a71ef2adc2a08f784d8b693d0e31a140302047c435bb500663064023016ce2a6858d392b05980234c874fef63b7c2112fb56349a5a1d9408c8707c4088992b133b6da1807c9ae7a35b179b26802300ef1a4eae878416af2588b4d59b49609cd8fefeeecf81faf429abe50fba61074fe1ef140679a12a978564d0376f8dd480302047c435bb5006630640230452be5f85f20677d0a2a06ebfc5c069cdf70d10b97e86a7784cb94eaebac56a312dcf3a181bc96120f4fb86cf36a6723023064ad3ab67ccd5c8f4e8dcff3d945539e7300a11115e82db9304cfb5cbd692dc0438ea820664e2356293df2caa152b3380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009864db76758d666b4fd43a349434af0af1cdf0e0c79e49fa8cc257967e10b230156a93f0ae0dc94682a6e1e3a141eab0023100bca3d28c59f7553979c6a8a84da5f3918d4682b4fcf48bc24e45e3104781dfde20cfae58804efa2e22498345e02905ee0302047c435bb500663064023024520de7aac4a16776a1d6937d816f32ada47968e7340efa2992e79002f5a4b65a6f638b3463f47c75424b5f96301e4c0230690773ce0f891e4ad127fdfdcf6ab5192986a8014bc6c8f3e5605a29cd468b386c2601aada3c9f08b73c3e4f427ff0d20302047c435bb50067306502303e08fe4d5f8d4188bfe3f6f66e54b253bb17ffa2120c4f8c409fd252c9ddfcb61a3ef56ac6245736a0e5a616dcd2ac99023100cdcb307fbb204c4950a792885a38fdfd1c6d2500c5926753092498742a57c32f1a8eef9f77a8ceb126530312c4c036200302047c435bb5006830660231009521274f482fb14e3cadb58f13e8d0c89e8b14a807684481ac8c3e9715f15db6f47077b3366c4364775eca45fb2a8675023100de95de8732399609863fbc0e21033ed635f956b2a847670a054bc2d35abc18d6325a5e1edf2d8159cdb64f8478fa76a10302047c435bb500673065023056dbf26ed1da7995f0303a15087352c7870d5089047a39d1cddc2ac23368b71fe67dbe8063ed53ffd4577406ad8c40e4023100904319ec2ea7132158b413c127a8602a6e56a61c34bc2089678e004407a850dae460f8370a378410de4c25f468612fc80302047c435bb500673065023100f1c85a2b00ff363816430569617102096f42f71d7669a4ce2f44d1858ab80db1fc56cbbf121526feda3b4d713c21a4e902300555d55a76e6a0c8fa9c3953d8a67abc7309320aa39fae9ee8777a464bbcd098b9a70bed52e19a639a18e754199eb64a0302047c435bb50066306402305d0b87b6add82d1e6e484cf45ff47a14d3e5bfa5886b34e53855436753ea88fdf64cc2270b64b3bf0b6953f4789280d6023063663cceb0aa39c2c9215055239d6754c7286a0c913fe1d7ef08dd42fb1c2f6a7e22f9f78bc815ef764b7034fe39507e0302047c435bb500663064023076462a8a71a8659f6aa65bac7b2262a784b65ed66618dac964849370dade20d43d1beeb7298bb706a1f421ca5a614daf0230265ff07fbb794d18d7f9d838d1a5ca8a41cd709baf5410ab2d6f9047c37bbc6467ff4c63e695b0be0be24f70ddffd46c0302047c435bb500673065023100d5c3189c19a8d7995c933fc58d36e9493e508f159992b51f6928abba176fa55f2f6c2cf300a59733aa30cea3f05231fb0230142f117214816aff298fbee7eba7e32eef39bcd1c33900358b3012e88162b88386017c244a10026a198e238e5b3078990302047c435bb50068306602310091ddd222f219969234ae625ebb294e47884e54bcd11ea1c13335cd5226636d3ed277651919671a5133afc4fdd06bde74023100be6a5e89b6e027423922ca67270de736d6f11b369cb2301aca204ef72c16fd57179075dfd302fb4832a9fdc9ff3c13120302047c435bb500683066023100aa105c4f250380fce5eb8cfff901ae2b369a1e337a4e4f7eef334daed1b0c8bb92088324f909f2b5675ac420d365e596023100b5b8dcbe981ea2a9067a631d4e3ee14fc89e7af9ea41ded8c79d4a1ba9f271cb7b93521bc4d9ead694fb81e5c666d06d0302047c435bb50066306402304d959c17950b4bbcdbe7ed1caa2b6d728cff63e3b9ff4a1219905f789f2f7a1c1759779c48f59434892b6d94dbe8364f0230705bd015276bf7e6da4c1bcbaae63522fd97442455fe6433865d51d48e2a050b6d39c7323fe3be12b3a7c0d386d23f470302047c435bb50066306402301583dd6935c2e35c7bb8f470121186956297d8261b9583dafca2a50c3889e2b8ff42c9b8000f2e71c1fe91c75815cb0402302aaf4b2b5e9d5989bc647107486f91470783c4cce01c439e630cce99d26b9f94eeef072d0e1a77509c57e8ea36f3db7b0302047c435bb500673065023100ce1312cc7d119a4c4288b7fafb188da14e221144081df51e94f4b8d181e310468d94be83893191c4f08b534f2ba27ec802302a7104e6b69256570f25c6c400b3067eaa9eca7ae30c138fd0d3fab232396ad74e870e4df1174028beb9f408da7cb0090302047c435bb5006630640230112ac633eba0f6d9afb0c0c3cd2587ef3afa608ae6bc64799d20e688e547bebd7558423e33f08fbe7e67a7e2abc7fa1f02301429312c72221a6ad1abe152c8d7c9c2af33599b50b33adc1f762cbd55b1d81a30032c262d3130007230b43107e2493c0302047c435bb500663064023035c142d57fee438769b5b7e4245012a5bb2fa3ee8e6fef329a9442ac3c28175c505c993216071a02a3a7cd622bbe4885023024c790cb094a1f6879a2af6a3cd1a805f5fe4eda814ec7a6bcd0ef27cb79d8dcd95927e5f1b3ef21b502ed2867cb7d1a0302047c435bb500683066023100af645f006e330e7bc7fd201ee0c228c7a322855381d2f9cedae871d4240cb3fbef20fe6c53cf3455f3a684c37a25749e023100a92ff55f34cd974aec90341c3bb5915677d27ffc42b09842255245839442c654e263d8ea9154dfc7f970817302b242200302047c435bb50067306502306f955b970e79e8ff47f64ba7c735e8a3639cde9eb57bb6278588a91db93545590c4042fab9a14b4deb52e222942189c90231008610d531ce1d58be16a4ba83a191a81d7ce81109d8689f274e6df300667b61668b549f8fe9c15980939881244845a68a0302047c435bb5006730650230346cc7e6997d6835dae3374e01f6d68f744c4e3cbe0a283875e11fbd66605ff905ecc35cf5e59aa9e13c0142d9dea939023100f2a6d096b45e509818011c198d31be002679725f82d3b3d4286ecbbb19f43da2929f20fb4d35595ca92ba1270bb573b70302047c435bb5006630640230109b4eaec97d4987ca15cd0fc0fe708f4eaf761c0eae828d6728bd9144bd0793d63889456181a67954e9ae92a9955e7d02306a7fa7ac856c6ef93591d9df72ecc9aa2580f7334a2c3dea561feec401fc45db173495ce030568773cda6021a2db39030302047c435bb5006730650230067bfc4402a57d84de513c3d43bf03debdcc0fe976584d7187383baa4cb73d619a2d77374d7d8bed3c120ef61aa89e3d023100a34cccd7cb50e89dfc98850b2efef3fe8278cb29f630ebe5d7225960d41957eb97f4bd57c41a41f4c4d7805856289c650302047c435bb50066306402304aa08fdb093e8640382b43e1557d803cf18767fb2b8824700607b30e7c6fa0f560fc3f5d4319c52de689b501db073fe7023020225f1f66c3723e35f8fcbc55c1c0895f8afe3abef6cea8e378af12bc25a5f753d061a3283b85c8b2c040582210d1fc0302047c435bb5006630640230578a438e85a3a1c906a433540d417a96864d5955b4556e8d6c218eb827a7b9259b7ecabbeba96b762379437691b9d0a002307e730743e4a22a08be9252937960667ccfda26a5718dc4a4909b40441b9755304889cba69190f78a95cf5ec7d75bf0710302047c435bb500673065023100bd0ae57ae21632f6143ee647266810fe6d18a8a53c2aea655a1dde16c6f120aa53832314fb14840b3d2ce7fa48d3dea40230024d0ffb45b867f4f8c76e8640ea3f8c87af1368e51798e5e2ec2d0c2e00cb1b32872187b96e687a3a7952349cb2cf780302047c435bb500663064023072cf0da268dc82940976f6f9c8f5ed7afce5194af64f0f9be1a99cf12c3858658a1ba3d761a4c560b176e5e35e5d092c023054c603c9620bf8994bf63fd15357e9c0e443a263688eba522fa494ff3e7ae449582c149403e9c7ae22638b013b8bbc4c0302047c435bb50068306602310095b37fdfe0f25cd1d5e2ebfc422d45634e98a87346479fa1250e9f54be18ab58b73c4d0a3676cf4cb10efd2591e8da15023100b806dd750d76f9b1a3b0405e572bbe414b773c9fc7f380a09237750346da0b40f0e1f81ef31553ea753bcd58d0900c370302047c435bb50067306502302cf41df0a045246017783c3942e5c483f023c546ad070b4adfa62daa0865db4d0cb417db178e54af2be62d95bdc85797023100d47104dbcf3679803e36c4d1db430c535e8d5b48a7cde3faf1286938d5d3b46d5874755336faed8bb3679a4d8f3588970302047c435bb50066306402301a61a3bafdb190643ca1b450d810e8298567d1cdd2f04a2e9e913d2299fd18088438b151d6a8f129e0b0a3f7ef83d84f02303f9c33392210c4c1e557ab3665d5c6aa27856e5e9fb8cd3a4d72bc8b34687afd3e0be4b523dc37345582f98f0a5836920302047c435bb50066306402306615972c3b97dd675e943123403fb161f2da922eb69ca1052015382bbfc1eaad34ca695b2986e2a8d7c94cfd2997eeba02303b1ab098ba612fb76a2e64f5f802f919b2693df238cddbd58a75e01d70380fd712036abc48289bf9315cca4fa6f1e1130302047c435bb500673065023100bd66ca8d114a4f7e47f06a8a646150d2e2b6705869d192b9e179d07462730d86a07c4e05e2c4835f36cd2d561d06a0a0023058db1f14f0985c2c2979f77fcb03cbc3d6b32b31ecc3db9f2b491b11d272c662303f796cc66b4413eb096d7c0a7aa8b20302047c435bb50067306502301ac5d64e6dcdf614f8ea6549945c1981824bc48842e2c69e4f6dff9abdc8c52ad7ce365f76541923cbd88f44e89b9355023100a43a9d005799388688ee09e0d7210248579412efdf9588b29198aecfac512ce63780ae6a5e61f9b04585054c82f6af900302047c435bb500663064023072921233ae6aec94b76d61e703e34509d05ebd26605f49e39e175fb15c884fcc4576e70c4d6a77c20e030cafb2927ad002307bdaed522fc1fc75c4a576598b6acc2dc32414e952ab0b3229f7cba7d58f186de892701e855946a9fcd43e2cc682040c0302047c435bb500683066023100fa96a84fc629ef3eda4c9a31e95e035f68a4d49e887035e8dd824941b904a4eca23ca1ac6b554d78e33b3ae480a9283202310085864af429b7a76ad86e052bac9790e9f3e91b93c0bf64f2c718578ff8982c698b056cfdfd3827ae1127be2164cb6fc00302047c435bb500663064023057d7a1596360496a935b0f66c681c777fd277e992078e331fd0dcb4d664f68dc9e6fc9aeef63c8a7ce0df77d012af1b6023077e7eabb508765e7210a2cc101571187e68b9234a6ffd43a4efd61145f39702d5aa6e2df9a5491de0f89b3c41679df520302047c435bb500673065023008fa8f91d3b85011319285663d312331aa42d2dc6d28fd2cb7de25be1afde9f84119acaf0961ab18b9019f66d58532d4023100a50f4baa6a0c309ccae453f3143859445832e1d30ea42f2f508e09b371797710e51b485e6b032e9426189890db9685b80302047c435bb50067306502310099f7e48f0dbb5a90ede1bbc7e24d8552b3c8bd74b13d61ae8fa843e819621245e42da5c5db6bc05356de0b40a80e3717023053c500467bfc6d220fdf2181740dd988dd671f07f319bf6ccacf08194cad9a7722c2b2bf43b3c2169545eb2a43baa1f00302047c435bb5006730650231008a250186203c0b584ab5f560ddc1ec2c3bd6f5d72fbec205a2024911c5acee5a281c0dd46070ce302c1e54756602cbe402300d0c7dd52106b0ee1f5989c6b3a4b89f1865e5d4872a95d0525e34bb3db601cf859b1e1f95467805a83232ebb073c2270302047c435bb500673065023100ad3e654c42b241ef702f4dbc11409f3312fb06112f6a3a2c5fbb4674e773ef56252b2856d432c27c7cab1d0b03d9309302303a42ad678ca995461b72b6c7dbc67a675b2dd6426bc9399cfce272e41780e18b52f6686eef2a330d33fa7852fdd65d000302047c435bb50066306402300b85ef96bda2363b94f341470198882966ee2e3b2f5bb9382c5f5de094d748ee1648a3292fd73ec6a8e0115d66eba1f302303c8b9f297f67461efe3418bcee4a57e0305945aef15b50a4e0515554e42f23a7b90532e97018ea8aecd8924cb72941d00302047c435bb50067306502300e76f2ef63bdc7303fcc9cbadde3a543a107823c64cb70d874805a28d1ded8508903eae9f87ac3b1310409c9dbe170dc023100c2faad39e61624e6fa492eabe08ab2e61b708056601cd8be3fdcbab3a0730aaee39347981c1f2ecf5e014939d5d4ce4a0302047c435bb500683066023100c185e52faa5310ed5152c4e28fdd6f57f1b2f154b9c9a7b70a962b918a50384edd08ee490fb7e4150f30c86a527433dd023100e97c585040dea457b674e3246c7099681c067be2875843f603d9b19065cbc9265710aeaab2fdef75d2f8d99e54b62dc10302047c435bb50066306402306f3d81f721267c8c2b6cd4e91ba5705e7cf10e7d1a79a1f9394faa1acfe46f4390ff25dc07692157004ca718805d83b40230384312ec719a931b1725d01ca7c554961c1d44986a0ed0a10c12c18f1d9ea272636c386bb86b96e99586160136f022070302047c435bb50067306502306713f80a2f5e626a4886f88a4a059d85a419e11a2cc1d6b7466bbd217f74095231d278da171b15c9960fce554d7d749602310087748c9af3ba39204e6a7951c2c2ae5cd8f589d2a951ed0b4e546ac63af762cfb0887e598a742951d67a2644e79eb8fc0302047c435bb50067306502303df050c808c2401d8e4ef2386eda5dde9eca8166be3fb3fe5291928069850792f71cf9686871521b8cadf03c6dc58261023100fdb3bcfec2c50a3931433e7461a81f456bf11eb01d517024e394015d4194b71887bdd5f8d37cf012ed760668edee1a3f0302047c435bb500683066023100fa58591e3f43fcead9dcd9168dfdb8a54c38243ad473c23cd2321ae69f84a9dd794a34e1cbe9b71bfa302f6322042ecf023100f857521c383aba877ab4a1ff7d65220ebdb998332dd54acc91a063a8695faef18b840ad73d4b25b3cf5c33acf09c4a100302047c435bb500683066023100eabe3304fb2ecd58d9f05300e75d3a6e8e9c8ce653fc642d8eb6c940f434b65ccfbeb7525a076392618990d8f26aebe3023100db464fb86db7942e223bf91122eb27e6e0e190e48da7f9f98b39955d1ae14a42c57be9cc1caa28da755217b4ce7a6c440302047c435bb500673065023100ab9ed3f1478ecde63359907ffd749d32017441a34423374d7cf583bb19b78e725bf2e9d05219e2d7f4025c6814bee37a023068efba546c7fbc885e2c36f117aaef7caf25640c83015abc1838c5159eb4014161c4bded8a04988b6b4592940293589d0302047c435bb500673065023100d7594608a3259850f4791b1023b581e05d49ac3d82987890636774f188fd91e51b5f633294da1a504d21d9f35e7b09ca02302372045fc7c20f4f63e259e1cc0025a94d0a031b891f39d50137911a2e556d2f4fd0de3cbf642eda044d5dddf9e564750302047c435bb500683066023100aec749d34678f448a9216ae36de02061f6e3470584ac27b361b7784995b0e030f0824098046d7eb90989b01bd26814b2023100f031ca6c8e932e65399bca90459f652b4fd681fb4d0cd920aa20c5d363c8ece3e4cc56fec00ee81072c250ad7348c5130302047c435bb500673065023100a0609b6c61b16b4b97b94b15bef96e9d34a2ad923c6b3bb6866a93a433f8426144bc53a12ccced770dbcc61d04fc1d1102301d60200e3df62db35cc3942cfa0bce63e5910caadc906a72338014fcdcf81ec6d0c7b4f014ffca55042da795131c99270302047c435bb500683066023100f82e77a4d2b048f35a69446b96320844cd43372fd994359bc5aa44a0398d5dd60409b3118292599b7c01a0f1d07ebabd023100ee310dd2e6f48f023263de7a7fa473a8fde409f7112ef2a1f52511e6535c0e50a0716a45603c087c90e188169f3d433c0302047c435bb50067306502302ba0865540933f95e8158c08b461da7057826167e4f75c7a17fcce38579dd1009962a4f5b63e27825200ccdd56bb4049023100910136257030ff9d432e68c0c534a9d521446435c1d28b8ed1365e3060d1492428606c40a425690bb9af5b5337758c2b0302047c435bb500673065023024671270847b755acda7f67063eb85d0e15a761d030c864a40df4a0d82f84278e440b4e5a6e8861d085fd9bedde432e50231009bce33fefb6bee2f252dd711b9621d882fc917a71489c67fa93f10db033614f0170fbfa3341e702d14fc58a60a33b01f0302047c435bb50067306502307eca448bc3593742539220c7932aebf4b93899c70bd8fd0eea72955ba6d18138832a76ce43b4be4ece50478574f59f67023100f48c2729b13fed11b1a4e953e0af403e33b5ce7fee2f4d56d9ef2b33c47fdb259502612bf1637f295796c408787555b00302047c435bb5006830660231008b04c5d9670a5007518e1ccfbbbf0cee9505bfda7d6dde844228a64dfeea068f23348d3e7ee0f6e5def5cf615f3ac61c023100b2e0e80e7274f91bfe43c31bdf88ac08db11ea8422917ebad8791451beddf4f10aa3c8b2e9269fd0fae9a91627caea9f0302047c435bb5006830660231009a00cb2cbe4ee2dd789cfe435a49c3591e2306989d91dce1f5946210203fe9e41198e63cfdf2e57757e0fcf9210c5038023100a4f13fd9081eda20de547bf8440df81960f1dfb04381411b7413242bd85fe7ed214e0a715b1688252f0a49706c514d9c0302047c435bb5006630640230556282bb8c286fa7de09c79f542a64814bd5f22eda1f4cea35d850d461dc7ba07ab8f1b2908522289f1d37d960b92d2102304bc791c41da34f3f7f12899245588533f7563bfa7d06bc3263e3f7e60d4b76b75427e66792744e75f7d5a0d34b4ca4f50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023071f8231ce6d6532d57be9bef739fcf78fe7b8232adb110e48863977b083a371cfd853731380eff2aaf7afd1c40a83ef0023100943e48b9995a83230d8d8bf4d81388a4d2a16db520725ea2c470d9f29f35a42843a7f2bebfed73dee31094c2d7397e510302047c435bb50067306502303eed1b3e90e20871130b348956b45b0849b3b3ad26228b6a3f43544a93d44444745be5d24df4d6de3be0b35f3b76b77c023100a933f77800b9b3cf4007bc9a7fa400e00f2319a6f7c6c1c2698455e3aff3e0181b6bb019b03c0825f3e8f141814e8a990302047c435bb500673065023067294b56883d486c8fe5bff491b507742d81ed29dfbf1bea1905dcff7f465239759e3fe1fd1c2a2ef36acccee2d479ea023100ab90243b4b832291c48509fb51e06e4babe88ea089807ad57cd2d42a44bce77bede552ef648ad0e5a9c0bb042b6daf620302047c435bb500673065023100c71bb02a72a0d6319b72988b8c3b3ad40659e2ff3d22bc197f3a0ea9c79568f10f4292ab1a903be91b622d0bd3d4ce8002303d61967a0bea4c9620613a5302883abd14bcb28726a472f07295c3f259730eceb6e071805ace7b281cf59d016bd97db90302047c435bb50068306602310095134330220aab83871f1754e8f4f3290cdaee12be8d938e93294b7f8b64016ab72c8d4c4d1f757cd46a160354ada362023100ffa2f060176cf901294226df4757976bcf936f821843760c1ce480c01f1a5eb66b8b47e8f5ce407ebdda5344a4430e8a0302047c435bb500673065023100b358eabe1d68704e812e019e3a314f24d1e87af0a40c4c79ed46435c5ef4d737c649c9d034915126e03b46191603de3a02304e07245b2fa6be4e763b527b550a0017ece6108907c2934e6002e7313067341be2d2c2c54a4ca5ba0f1bd54e7d5ceb5d0302047c435bb500673065023100ad1fd4d307e554746608bb9ab0de450866f8ffc3f7740edfbeec67e0878f78cdd693a6191958e28dbad245fd87ed5a8802307fa4a8277e4781ef334ddf09bdd9b17dce5a44a76f79a47b1306d0b507296af7f734d963013d4f9a8d183ed1b2ced9130302047c435bb500673065023048fcfae00bc44652dba41c6fedbe7b42baae3230db9bab024af273824bc3a5fb37ce4f190e466fabebb3253634e2d83f023100eec393e21497feb85aa9bbba8c794214b4c6a3286e9c7db21ecad0350cf7c90f9123997f8adcbd99ea885c4664ba91920302047c435bb50067306502303ec1e305d367e473c5e417107def8d6e84ff05a8940e6d4bd4256029eee2e231817b9533ce59ea3af85b58a92409259d023100e15dbc190180e606b93f95cbbd8a0baa7e32580c1de38c54904f6370f568ba52afbc57c307ff36f2dbec9491950766790302047c435bb500683066023100ef0f53e2828a02e9849acb8a301e26e52c6e9620b64b036fa0779c4c8afdf7172d9d71d2c2a6b40652f66ab600f92e2c0231008e4c893d25c9c884fb7714d56d7dcb320e45ebda6b6249ae802b45578d0a56fcfaee9113d48f04b861fca5514aaa00cc0302047c435bb5006830660231008f841a8cefcc3c4c68342c25d4798d8ead3b4a3e9a8336c7d6874aa7444dd6ace0ffc08bd7b2ae033fe34f92da2e798e02310087c5c60413aeb39ca8394986a536460fb359b12d66b46b5caf7d46958a36e236f9aca5feeb9a7db6e2159affd7a781bf0302047c435bb500673065023100d6a12fe6b6ca2b1870db4eb0942eb5792d98201c30a6faecf9a4c1b0a69aaad37c749ed97dc5d8a2c265a91fb0a28f4f0230438e5ac6a1752fd46270543bef4797b2f34c14b56a62e596d504f3ac38d6e21fc37c6a8de9aa7708f957a04c63ddff330302047c435bb50067306502301ad540e7ca2999bb2a15d63ceb789aa84931d340501d85c23baf6d7f511be13824754707d6c52696cfe41a93064a63f9023100e4bfa72257ae019c5cb6c68c054f3c75261c116afa0a189a458a38795b5054c15f834dbbabd6f82ee8658b9cedf9ec1c0302047c435bb500683066023100db6d6785a9390c010e8a07a8f17fd39bb73bae94c475cbce83bd3638c79a037de3291e152b8a9447949e458922ed4d7f023100be76b045b7aa0ed635f92cc545927b7cf4302e32abae557537b223b711d23e9e3f5ef147d3f5ecc9d59926bfa953de210302047c435bb50067306502305fb8e03048cbdf0092e1017314b4d1bcd96e436152ae7ede7d9b51e83bcd40a803ebf128f0641a035c9eb88019051a0902310089596f81f66ab2829005f5fa20f2c9e4d8e9188956d9d6196afac7b982dcb2ffe08dc5b01ce602819267ecf9cd3e52700302047c435bb5006730650230144c2cb014d76187bff64e42d3e1cf96a6b166392eaeac0067a79ce61147deec370c92715d0708338ee8ae0760b7f67e023100da131f7a6fee14290f1297276d651ef58e099202e3ad084d6379604270fc083fe222d3edeab28f6606d9971759a7a4580302047c435bb500663064023070396b90f08c49bcd62724137dca7d6c4fcde268ddc13c69977fc170cf37e1a934bf8d135df2f68cb8e11a9b2bb5160f023079babc049984a6780b0548c067d662e88b64f5da461a568baef7f3069ed1debb32004809a7f3d6f2306a5a86109f902c0302047c435bb500673065023066cf533a05fda4e52d92e4cb175511661bf83c784a0ad337c458e595eb0ea2f5babc9bd95b16e23061d1e824c10d662b023100b414b719fe2cd5326de9a196e27690ccd49f3ad4673f974d29a2586f1a986546f37619496af4f5b05efaf09eaf3e82280302047c435bb500673065023100e4f36362780abe3028da9d3b0dec1f4f49109518063d31ed440a63530afdb7899a2182ab1b3a8c24052fde79df7f22e1023046760c75dd5120f9727b8dd4bd798bf02994f536d5fe8893cdd5e186b7f43399ea1f8e394043018e075d6304690dc0260302047c435bb500683066023100b0cb506c0b05d32d6bb122e973be9a27b0fe8ca96fe3c60814df9695a6cf66ecc462bb0b782c8729fe5204c01139c6e8023100d5f371898dad52c48d5b209bd08c0e296bfc1d1e6895487e26a37a9fa8fc7f1760b8caa852796084a661d2456ea3fb4f0302047c435bb500663064023037487dac3b08868462c67e0bfc68e7b424d3e6e98529a802fdbcb39e5895cf5bc2da26be652d319a0360c3928b517646023072bd39d9c24b315a13ff4854d20614d26d6df7b4e588a95766250024f2b1a4c6828933feb52dfa75748f8bafc671c3df0302047c435bb5006630640230691910055f563a1839cfe9a7dac80034414ef599deddeabcd902957c08c6d88b7407f66f986a4d1f604f7bab223ebd0102303848ccf3a840cd925087438a66b413fd2ce6aa6d14a3234cbbf16be7925dcaaa3f1868e361f6e48708b308f2b62b40dc0302047c435bb500673065023100b6497db561bc3000087615a3c56cfd401dfd812a45ed6d3f2ac539ccb7e564c42d98d0a0386358287abffa727a393bdd02306ee0e0c7b91cccce065497a22b8eb67a649d1da904ef703d7fe9164177172f0f05146a7da8e4661a33e4a751b73b90700302047c435bb500683066023100d464e303ea37ea4ac4f3011daadc768a18299174c1fd0953e44ae26dbf95e610652388bbebd63986393905263b7ea33c023100b1c4370af6727bd33d07bcf4c8bdae6aa1025957d737257ba54aa81064fb527f655899645780e923024e8838e91319c40302047c435bb500673065023078d539745a8e6d106f56448243fbcf9625e75a6470c35b5c7b1a930d53922f3c819ebf8e41769d5d7853eb7a4a3f507702310097eb839e212d605fbf803aa6bcccab5e1dd94d69d1ab10a9c00792ee7f3967192939dd052228f717a78c3c14590e74630302047c435bb500673065023100823cf3c333729aaf891640fb0bc12531c85c2bd355c3ae242a77b2259574f29e3dd92da805edeff52e148fc8186b056a02301eac11c1c02a0311db87df549a350d0508bfe8513dfb048016774e1b35c557ab60db95d533c74c89da33fec03194f2110302047c435bb500683066023100d62bf9333839c60c7d88c4a2f915f0eb339b3a744d9dca91d665e9126097caeabcc9405bce0e6d1a94127eee2766a5d0023100cb37b8d76b7dc2c77aa25a2846a4173662ca00a9ce5128f65b458ede648207c9e792edfd4d63c5c5cc3e7a42d250e0230302047c435bb500683066023100d610d68ad0e9d7152f829a56a311b1ca5ebe3ccf3fb34a166afdc97af1977091611d5acfa53ba1a2c78da01f67462304023100c5a4abe09f6379fb311b6da3099c7e09141abdc2fa814f772cc4d008c3a77132a77c5c739fb240d06848c76ecac191fe0302047c435bb500673065023100b63086df8022f772fad79e53d8939963bd6f726615c0d8fc80748bf8221295aebc938a5cb16309defacd7a27c6ab8a17023073e335a9bba6c0d631f3f6a8bad5df499b04961778595d49a9ce93abe8f61e1e89fed760a6c6125edae72599552277060302047c435bb5006730650231009f200437fe451bbb1cfc6d8d6c4e9dc47f903932c4d2c2a7319cd7a9bf96ca3076b2d4041ec57111c403ce518c2841ee023011f24ace77cc7114d60dd2737ea264794cd492a6dd72a0ad3c48329f20ce38211ecc692465bb0a2a127912e0bd4d08270302047c435bb50066306402306b1dab3caebb2824e87f342840d756e4df4591a774525dadf47e8e681e7655e78d813410180404601e90653f70fd886702303db529a269b906943c36680c7ad210466d0006769d461f2b96a96f0976bb28d7895ab13f7013c89387481f955a8c7c200302047c435bb50066306402307eb156c62b4caff371f307051e729025f420608fdc6af840f8eecde20f1ee785b91a38d92a02935251dfa0239faf7a8b02304c34d17d64dbaf00edaef83a32a7e1d74fe99eb49c773bc88b502cb4851014d42f910bd5484bcc7eee6911c56d38297f0302047c435bb500683066023100a5473582c3931eda9c3449580f49cee20e9ed602cce37ebdba98c003edfe678e1d4cd746bf71ae4b18cf60546832bc63023100b665442aafe57a57308580acce59f210e114528ed1f6f1a27b8173920f55e87e2e06ccc4b919c682f833d214617bc83e0302047c435bb50068306602310088be577ad9119790b03e847ca6a5ba458c2bb20b65e0b084b353a4aaba9f11ad22fc73e27cb59f173436fb56e37b8c88023100cb1248ecd3bda4761ddda410be70a3bd56d42a80053569dbd2e4e4271e35a4b855a5245a12e471e594d1cf0cf31efbce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008f3f7e077d6546aa9ab7cc479ddb62464902bb2a99bed19236cb351b79095bdc6a2b2d2098cb63039705331de7504b1c023100ac10c9ff9f28e9c1dccf4506ecd68966967d2389d86311d1ad0b2069d56395c48b5a396d520f2d52e4d4233a093be2270302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a09e029e7811d8d6d1492bf6c03f7664aed22a03113484b55c4e28d3eea2e70167f5192dfd47689870a1e7c5f364b45602304f681cc536adcdeae0d58c9ddd47c92467aa94442a14cb7d9569eea02afa428651b254f0cca03f41bcc762030f1acb660302047c435bb5006830660231009abab281bbb972b3c5b6cd5cd1e7b71800eba6d7c852ab7c9b92e2d04a3bf0c833d34dc978074b97f6a0a9ad5df525fe023100f6047802f2e4cef3e2e8b21df5866244f92a09e1256399e11f3aab548f3642f11ad4d4192e6d96c50bb0776da47721e10302047c435bb500683066023100d9b95ae91d0d106fa3bd981f3b154b786d9847d9a6078567b7bc5b99ef62181dd37ca5e5d48c452b2852cd32883b1dd5023100c169cdb130a39da16162d8010d25dc3f5f116e6a648637ee341a5d10f9ec31dfb16c97e9b9725d2f631658978e0dca350302047c435bb50067306502306e011849a5b63b588e5d933eed9bcc95ad93218cf5288338722f9e3424e249ef66e2da19ae017e5a4e385d95c6cb56c3023100d35e4bfc906320ffc0bc3642ec94dacaf6e90bdb5bd230bea64c05ff50ae475be969ddbc5e1bc574aa8ee1de8817f3920302047c435bb5006630640230152dde4cf53f608988a2ad1cce77d4d5d919802f494dbca51298fe105e4d876bc5f75acd2effdcfe77cb8587cb8d128502307c691511a365e877a52e150993b59f39298ea87cd8e907b1bfbd0724c2d01a1ec0f1898e2dc9542fdcd559d0d416db2c0302047c435bb5006630640230583a71fc3a0e459a64e6eb1a32add9da6cb7b801512bb904a6020d3eb947a3563c56c73e5de076d4bc1d0c9afe1a55720230378b5e94c41367e897a16129f40204b0062acac50d2f45122c157a63255592fc23777b739815fec838393e974a2929f60302047c435bb500673065023100c4c6096c0702f15ccd944bbc15aff54168c37a1f44849725c0e4314ec0d7053f21063fd7b3ad31efb37c5adb094e457902301defdd29f447787b4e8145e76068e209ff46394cb7a4035d5b3d59a92b9e2bf148c57b086061d2244faa8036c5e324110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100de84e447f5f32a7bd3a483a130d8b448b25bcfc5acf924bccf6d464cacab35e9a9bfbe1472a8bd3472be408c5c20fd13023100a6767e39f47665e3ad3e450a3e720a737b6b5543e3cde856699a2ab052d3e86f3cf307dd3a4708bf5c8d1e22401aa5530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310095652b9a0b33395a450221e3280f3f74a187bcb3cd662f5b1f3238a2a0994c23ae78d8acfaf148d223b50e239e93dc7d023100ed46588ab514d9386c0f6ae2def81b15e9c542589653d537b789d24bbb6685d38253ae9f157687c0896c5b658484ee280302047c435bb500663064023050d6c6fe5f28f3c67f7f70f3c87ec725939b951021ba06fb404d7f512506c0b47283d8d41272a8099e2b8ed1de1de073023024196dd031963835ebf1500c2bc35fc4ecc0a4a52acbc38b12fe99fa7ffb1520b1d68d01c9e9e02cd9862f4f1fb2c4210302047c435bb500673065023100d4dcfc08c7ec2588778e5eb59840576ad07e7836b828f2679580b947bcdc91766cb14b71a98be802694bd7b6864392d102303314c0a9f88776b5925e6772fe42caf68d5b02582f2d7a29ebf6824f406afaeaefbf0a9c157632f294339bbbe85f98930302047c435bb500673065023035292b1559aefe96196e2bcc579a24d59620cb845f3c9be8713405360ce42009f0309ce321e714e41d8af317e69ff381023100904216ec2b3d5e9f5076be233aeed1b34b181ae0479a208e2f1319e6e1745d341f95ce76d4380703bb418e12c43fd5df0302047c435bb50066306402303d3fea00432392b82910505446c1af89474b0cd82ad8f8471624a03dad87a9b7fa3d1bcb7a836501ea915099d6a263070230650f4a93977dd1564b5ffe9da7c0e698d57dfbd22861bb90df9ff4f36352b53bf7814e4a942477bc0d55654b4ffb44210302047c435bb50066306402303fc4a1ec7caeb8518b5d970f4dd162b4d3329dcdf5ca7b377f63ef497416c928522c77e2eebd8c8a5fc8887819dfd1ab023052a73fe6d08cdfe1ef15a3a66cef30e79e8a52136f207c20541b2ea02d9fac0c0da66550e4bea93bfd0f688cb1153e770302047c435bb500673065023100df86615587c3c2dc325c0ff7ac0c23d9794c12666c847309af4433254789809ed94b5f21004744548d87939b605b95890230038901f4b5c2cbceee1307726575f5430c01e8c2a27f7f2f6ebd5435c205318a0f613999c9b47ecdfa75dbf7a2a03e6b0302047c435bb50066306402303e2d3c5f792ee47b816a6dc65b67465121c42e984382e4317958507728eda2ec12cccc88de2c784f0ea87f17633a64f5023044bd149f457046fc6a14c532aa3018ad7d4342beb865e7f28f262b899d39008c5c39fc68bc902e4473ed3b9844c4b5430302047c435bb5006730650231009ca2652c742877c39a397e154f8e5a6e569f9d08c4292d1314ee6978b753b2962b545d785ef0f49bb737768b608689e50230035d0a76bd1d326e10ba8c151b5856694fe06930f01acae81031e46370ea7488636b2573226be78b4f83e9c2220fc09b0302047c435bb50066306402307aa1862e895fff166538b71e5677976c16de37ef65dd2d395385c9d7604240233d260477e023888f89e8de2377f2c610023010042d2ae1ed5733a1f4ecabf7216a27be6c7f4f8fea152c52cb3eb376bbe6fef4dd7e289959b94d31bc49429c1a37f90302047c435bb500663064023070878e36fcad30f79e3e56fbae8720dd891b7b4f4309176f7e961c917fad837db2116be1e2dd38fe74df188a9e3ae88e023076a884614cdf8e7984a20124f88d8b53b7faa0028654a7b26cc717add2ed2fe20a55dedd5aedbb815a9e89051956d7c30302047c435bb50066306402300c9954e1681ae9abfae675cd4b7916f620a097231acaf20cb77b9166ab9b04839b5567b61eb5faed0f2ed546705004e9023055688f98cc6e310c7e1f0d897ce6c2640362a72db14e7e46dd98611e1984fdfd498a9f72445a5e63e71e0c93ccc987750302047c435bb50066306402306abe711ec06d603a4375a6bfda211801d51ec85ce94904480ac05cd327fdcbafc848b108f14e8c4c315f394196c5cd9402302a68f9dc3bd07922852429cbfea5b703aae773b62974e1b60232db046ac999b132b6850c869e93ab0278c6abeb9a0afb0302047c435bb500663064023026e93860a4f3de385e75ef6a7fe4d796825ef1f123bce3c8a799433cffb3c492aa5bc70a7cbd3b2a8b0ea6d46af048b502302e38916a19271f954617a2da3701dce1f874c5d546ef7d0e72ea8966a2d36cb26cbc49c0d333cd7d6b286da9978d571c0302047c435bb500663064023051e4ada37af36c88b3674e8bcb86d4a8827bb69c08708e70ce2445a47f634a8716a7ad32adf228cdbd8e4dee94fd701902304f3121283bc9b5a51dc950b665a5f6a2564d2d86bc356d4afcb3903ca0096b99f75feec3b04cf06c728579824598ecf20302047c435bb500683066023100c13e68f2b7d4a25cc2bee3c39120a32f05d46c8ab4fcba28c631bb19499f3a4375693cecc454c2d97172ea884b18339c023100d8d06c7afacf1d0a02f7022dfde4a6cacca235757b497f447029cbcce355d7bf1e5e92dc12cbd6378575e716c7b8e5480302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310092b7497ae3f5add502dca58a92b50fcb2b80a50f10591383fdbaf0b2dae871b7640ecaffb1320637f9af13ada73202bf023100bf3b85ca2e7a09e099274e0688c668a1e01e5494be241cf15fac5049894e08b64be13dee3e223855851f3afafa84b2850302047c435bb5006730650230279fc9df96cf61dc72e9b0bc1201335c8e4e0f53a2cc28b9793f450d2e1e35dcdc1231132c39a0daf83d2c68e35295380231009d1d2014f498aaa57c2df2836d9ea2fca3df191ec8daa1af1b0683db3a1d62a71250e9bfa524771825f28c7dbc44dc710302047c435bb50066306402302a865a7ed6287c08c295720a7886c3c09e1bbaa850e1079e3294dcb422c71ee104234d7127171daee3241dc75b61df8d02303fdbde927da86ac3d914761e6248339b349ca2a3aa7acdb84c9947029e0c20b3fc166e3ce6ff1aff6bcc5932d67d7f720302047c435bb500673065023042b2bc01ab6dae00a42fb9539d1acdd29e584dde45962ce3eab36f4f733e4cbfc2248faca2a8adbcc1a70f00ae9b2e06023100b871636d3fb2f1465e98ca01c0c761a8d2c0e960edba5b67e8cf29e50fe56976254aff50ecf700fdb244225ba9571c1d0302047c435bb50067306502302bfbb71149ea1fe7619824411869c991a408faf5d874402f8bec5331c5d9bc42b310936a1c835b01e1f6f70fd24e9d86023100e5f52786bbd8de633b35bc1dd74ce4c22519cfbe15d76a3db71e4ee7d7f43c4efac379bd8c9362532d091f5af31a0aa90302047c435bb500663064023047ce4fd18a0c37a604dd66fd480ccebbe212c082f200a50947ac0e27faa8dce6badf14938dddc99e7d2363b2bc37994e02300451a482c3f1ebd155aac92f3b13be6ad9fdf2b226a56fa74b6cde60ca1e8fa22a33b57abf907dbc749bb6356281c72c0302047c435bb5006730650230103aa05bdf0cb99094f3ff089568b3a2ad6b097dbff47f69681b4099aed5f9213743464c2a2d293fa82559ff38b3d7fd023100b3f3ae7c3c517fd4cefe08856bbb5cb4a6110bf05131715918972aefd4b9b86078a54173d72cb8c3a59574037aa030430302047c435bb500673065023100d77b9a8f6762a8010e2037a578bb91a87bb0d60a390f46a842d256eb378c50dbda9f0c6f7a9e55352d5015727f799d130230178f73e89e8f6f5ceb51282fd00580e17ff6e6ee9610f288c9f3e7004edd0816c1b6205b35850f406a4927a6f9d92d510302047c435bb5006730650231008a1c17d57a0350c0a09cabc05b837b287455f377b814de429307e3c266ac483d1e687ce2d472647783ce00bcc154d528023064fd0145996ad8286d6e15e5df9ed455abf583965cf37ac534d14c4f07dfd1c20595a2aadd6680bb5caef80b9ea55c600302047c435bb500673065023100fff3c192d513f33e781146f2ae8b7e02f21840a41d728fe416f537ebf4382a093550f93d00a8d795fdd883842952295e02300f2a855f7df5f254197a69b51cd02abac908a4ce340830aa6bac2039e47e472e7905add38baa91706e02f4c7f448522c0302047c435bb5006630640230746790f845fdd054b7059a764ff037518a7adc5d5c679a1596025fdd6334acb55e7020a3a8d02f8f94e101bb9957198b0230293998b1fee1cfa6f7441102fcc735afab79ace8b0c2f661242a282a3e9749ffa88f49e3858cc3c13041a8285577696c0302047c435bb5006830660231009380dcc977862b770c2394fe1d5b6d67e5c53c18932d7cdb139b75205c4c7821c626fd04ede94732631964629aca354f023100a66e392753d79d0d6ebda645112c2f438297946e69517304e30986ccd57213df5d51e543b88415f98ea766d2a85f6f920302047c435bb500673065023061ec47a11a8b7d6df331318f34fc27695f6b003113100779415cf0e52efc3edf941e1156482dcdd3330fb20d5683f46e023100ede8ddaafc37e045d591c6e20ba9b93fea1eccf29de926263d5a209be124c384a9aef6c75bd2f79ca718be23665412d10302047c435bb50066306402306df41f6e942f7638f4f731b0c0ce9709fe10de3684ef3885f49323b5e2406be5b475eef83b3a89cbadf51cc56a9531b9023045df7758ad53ad0fa266cd1dab6752da7ba5099bed3ea31982e1dd3ba165ff86db2bb612a22037d7c1e452c0481355ec0302047c435bb500683066023100abdf86b48d171e419df38c3274b84abbfa7c0e1fdb81712b1cd4845b2115db153788498914de4b1f86cc422443f62f18023100b2d312da65d8b86f9bd7e3fc8d2483a7c8b896201d2a89afc42354394e16e3f75d1328787a13e719f32281f7c8765f710302047c435bb50067306502301020a90b7a632963d4cf8c8d59feff04041075026d3ba1ccf13b91a15e845afbf0083540a2ce75be565add12b3a3cb8d023100a8b60da10d3e74acc62a9c407a6c33ec44d4a709354f6ac404e0b489e35fa9c34453221f97e0c9ccb85f503e14246e340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bb100e30a822fde5ee2b7fc9b546b9f39dedf67588519209daa43c631714d07beced63a710d9e1a29c1ec79177e89c78023015b7f30ac0f3a5d797cf7f8de3fd5a2af7c1e2e045cc7551cf78af044d7ffd579bc2fefa28f330f9fadfbca5b294a63a0302047c435bb500673065023100b506a745e6af7854d9678ecf4d3db4b25655cde308d18d398f54f97ebf3aac393930d28cc20be34d19a10c1053d45b0e02305ff771763c1220dd00f7d599971fc5a2b2ab6b644ecfabf6cc70ec9da31f108beb90a1d148104bb263eca2e9320090f10302047c435bb500673065023100e57cad392b1029465aa5a5a2fbc7ac568924398a84de31e7973b558dbf1e0f4c0c378a0d776ab29eb1bf07ffeaf8376302300ef925af209cbb8e89ff025f2ff02d9e542c91bb8e234ada47e656978700e3459dab262011b8bdbf9eb5722938b9783d0302047c435bb500683066023100988aa628d9666b1eeefd0fe2ff7525d0e3caaee1fa5621bb0eeb9ab741e562b19b3b8b9a4b790084fd392eec53b3c24a023100ec0a93a11cc020f8413227f45fa89834e58cde0b2dd0ad37d9d829f4ed2e04080ecba01ed72a51aaf88400e0ef4a4e3e0302047c435bb500673065023052216b60a8c784ef20b323bb7d92abcd6b1587982080b19b4f8b1e296866d613b22f217eb40c6e28e7ead5236d0d49190231008b3b832de173e42ad6df65c731e9df09462368e7fc28ae63a99b1c1e9d5d01692dd1f79e53eeb8cb14b7a5956c469ca40302047c435bb500683066023100c8bd24679d9ad5713ebcc58c1349befb8605cdba960d34d1052fb4ebe1a56953f1a33d2518758f9d8d8397ef40c1979c023100ee78fa19d1231da98df248285bdfbfa1fe9a0c49a7e9baeac911101fd1d59835ee105fdd334256ba54b623869bbb88450302047c435bb500683066023100f88daf5a84a1a06f9fb0364f1fa3d90571e59ecdfe1678ad7a4ee64d3d14def5e6c680cb1ace81ebd47229c9eb39b4c2023100eddf0bba07bce68be44ae0d97e0fb04842fadb896baed1e62f9ac5193a7a71ce47a4624da65ecb93861d3943095c50540302047c435bb50068306602310085551f702f98227a0a9aa83fcb985505568c9574ceaa8ba9647841b5e7fa877fbad67c14550854a8c54e2e1ededbb28102310087d02055007bed4ac90fc79e2dedc497659dfc3133d4ff89779f3e70d5172176ed833f7aa473527defd7f79eb3f48b7c0302047c435bb500673065023100e1bc8e1ea88932917939c4ef9c3775ac946709424de4cc8534a5c00a908d43b4ec88a85d495675b58724fb83d4f9325c023043b4894240a013118b25b84735a01b626cd5dff15edad46b3a9041d02803347b0adb280df530607b880783c0d398871a0302047c435bb50068306602310094dbfbf49d543ab8ad3e017861179ca4c50a313bd9a3a2544a1a750d69f4a8cd3f7a9226bc79702be7dfb6e98d8cb03f023100d045348ed00ded8edba8eb3fbb1cc423cb147cc8b627a2b41af051455172a00211cc719db8c8eac43f29d9f5fa269e270302047c435bb500673065023100ee48a37132a448ed8d6b6ca22340f840a212d8ecc37b175210af661d30eb3894c120a7f6be678fd317fcf80793fb668502302f4b291323e9c0a3d56fd68136e753ba9dc1816fca935c0a646b3cd59334abc70f2274e5dc8342cd83cb87d4f4f430360302047c435bb500673065023100e256078f83d35771c652d2cb3e50011f9dfc798e233ef22302359e168c8655238357541ae58a89c82e9545602139472e0230731ff28b2147837d8092208d79c73eaabeecbfe9025ab285d12b1ea0aab11246381a3160e3c0dd2c84beb26635fbbf4b0302047c435bb5006630640230648bfe2cc87de36db0560eb057171366c97b89f9c7884d4263f3503ae42405451cf7920555c6715ba88aad69c801a5b1023019258fad7dcde626bddfaaf569439cf7ef33610e12c70be4dca5c81e6df06683369e912e850b009ff7a66319f978b3f80302047c435bb500673065023032593d099595a2183c21d0222bf0842f68271ba97db0e7b59f1115a75fdf44d2cec18350e5288e1c77b038968c6f5442023100f975660ac4f0c6cf11e5c06dc8e7246e0268152be69a70dc930216810ff847eafe2b9897e0ed9444e0c2b1251f45c9310302047c435bb500673065023100f9c4df564ad8b21d9c6e38034eb70ec663e3138781a587edf9a72c892c37dae471ff4d2614d71c5db995fa00cee277d602303fb4e64c5ff64ec5ab6d42efbea9671ed981a39f1e054e60c6fea75020345c6aab5d37e35636f1d131312070468daf830302047c435bb500673065023100cf836a96d343be3e3e7417b1f5907e56fed5f04776bc89ce47f53101ccc5fbc2c4d0ade4cc117185cb691497744a48a102302e31bdd33dd8aabbadd9bf47c3e77b703ec78c50f062b420aa1edec719b3a087e4f345ab190085eaf82f3516966c03ec0302047c435bb50067306502310085f40fb5d6a9ec507392c2e4319b6022ed1a6b140dfda7ab9b142969489ce9c7815ef26f5252b5d3815afc5e543e809402300a1eed5eb5ce5642897a3180ca117ecd8fc94b09b785cf7c37f24663bec2ced4c66615a717cb9a43af8ec3b1fa7aa44f0302047c435bb500683066023100f813976600bf7a86d67fb6dc6475e6f54847d2daa4eaef71b668e9207fb0916cb2fbe3df0d87ee3108dc986ab8ad3180023100e45ce9e5b801245817de8571669a63836af2c4d3dc95d2b97e84ab6478accf8889087d74a960cc8daa0c7cf47114b1190302047c435bb50067306502310088072d7e10d2eb97af16561daf5a0da9ddf56cd7e49584b1753aa5d72a2f8690c5f03500020f0c44270d3816dba4c8db02300a55bbe6704d4f7fd84d1b2b606decb7fdf066364012508af5ed522abee17ee163b4ede608582ca43fc4c870de38c1b60302047c435bb5006730650231008f14beb497fb3a769da68e1816312d85f0e69847ff387dad557ffc28473f8c7c43b72ee9544a6ae7660792ca11da63890230341b5964893edc36c9bf153c9e4ab81208b52dfc36461f9f26a82f6ab6c7efa550c8b242a99e02d711ca433e509039f80302047c435bb500673065023060be39b465d100cea0c46a5d446f32ddff77b096129af1dc940fa473961f9f8bf23ee0c779083259edc7653e52b2fde7023100d81220b527a2a05b90bbb42ac5874d9ffc474a92ec365fa44279cc682aa219bd737e131964221e5713b05081c80529110302047c435bb500683066023100c764a0ea560814cbfe86bf438be4f3a3142983bf022ce1b681b927c57713f8a4cfea42c87583e4f48bc5c7bbb635ee57023100a949690d3fb4ff93eb4e777d882424a11c1d2370b3256c3fa10ab99b2cf3a07f3e2ccdd109763ae72c0ad5926a43d5ee0302047c435bb50066306402300461284eb9dff150c44833529fade6824b1e6783231ddfeecd471e378fe52c79a2d144eabfd513842ba99c14e845075902303f54f0db47fa979dffe6b98f16ebcd6c587affd39c1d54b7e483014f54368657405e856df39e461ab1e6abb5e9cf60740302047c435bb5006630640230670dc8ef85d94662235c3ac220edbe61d2b6b8254c386bee182166238fb927f14402ce1d393e215c71d878f402543d29023005413db5805d2981cd65783edd359765b79bfa936210ea9629d5cca923dba2f5441cc2a582821c120051698dc4ea93690302047c435bb500673065023100a2f77e02a830aecb2fbada5db8b782e89ba1a571df0c6374e451355f21d9eac949f3b2394ed85df0dcad6977353ddcbd0230279a28c1d356bd3bb7782e87d098793206084d6dfa4fff279dc0b75680c5b6ccfe193a6b90710a5375dda3681d5f46f80302047c435bb5006730650230650e747d56bee36ada39d8ba6e01e9017e38983834b29cf3854d9638b94374867b7727fbb3eb1c1fe47e50a30c42229a023100d61d043ee3f0c8ca35cdedc18048e2060b4176f6194fb08738cd8528138cd54d335a17311e4f5cecc0aca532f903109d0302047c435bb50067306502307784fa618042e2f56f998f593a8e8b21ed956aeffcc561d27d8ee89dfb0db35d96ed87cc29169029a625e0975aedfdd5023100fa6b7df19de0cd84f4da87e1a01f6ef5944c4aefa4c476dd65a69d7ed737429a0f22087c74333ea92df863b66bb673240302047c435bb500673065023100f69bdb3d8e506fb754181ee1f938ed51dba8f4b40bcd1915d00c2fc5c8496b1c0a116a3e920904fd54528edec818537602307a545384613cc3d674329286735e8caf5ba0bb61a681e9781d29ae9f499d73a25df92b1816481ec1ca7af1c634541fd70302047c435bb50067306502310094972c39ba2f0f3f46bf80dcc0679d79949f78ae2813f5eeaf0392b8bd178911c8c3039e8df29ebd7eea264c1f40afb202301103109bd72bf92008a865538f23f45b7e0f1119a9efb4f307bd46b6f38256814eb23cbb36dca2d288cf41e56284a7bb0302047c435bb5006730650231009478fb9f436a1e1f0d94f7c126aa3001cb88104c9bf3770ade18ff9aafa06da5bbbf699ddf3b803007f90e11ad05d0be023068678f5ddb5ac45221080957d9152edbd27fde3b04509b9696bdbb5e0c367ab5185998823f455114978022e8f113d8610302047c435bb500673065023008d787bc5163939afdcf78258f95ac6ba213110d75c97719bf430948edcafa6e3f6bcb378f45780f6a98f2a703a2ca69023100a445bc54851b24c182b7ea4147278db05fa60f00bd4cd14a3eb42fd79f90de76b9722b33026d8f56ffac3c9889e8cc9f0302047c435bb5006630640230754b22485f9c8c2dd0cf35591126c479e2f7cc0aef17413ad9dc2be58f8a7c370e7d5040cb6b797ee50895f9ffdcb8d802302ebf8643079b1b1fb6115ff7ff2f903bfaf7821bfdcb4ffdcb6ea156df7a5657b3b0ae1669d9d71453bf784446c931b40302047c435bb500683066023100ce1860e700886f64bcbbdbe6d35dbb7af4736a9e3d96133766e3892bf972b2f300d29d39db2277e28ccac353a47fdd230231009fd7b76096d4f0df7a854c314fcefee518cf0011c1e9019d148667b94b5109289442bea0e5a247a71f98a377b5d507880302047c435bb5006730650231008d51cb8a4f955bf9455c47bdc60299ae695b430458286151088176fccc825a6e6a2e9daf94d12927bd3659e6d7bb2e1f023058040576d3e10915bf5e9be92350b1a5aa3ec35efea76e314b78ea8587fac4bbd05f924fa8d64336f576345db5835c490302047c435bb5006730650230333400335c8cd2a16fb85cd8e9bdaedb7f37e2eb0c5969ced3c0f821cb0038e432a44bfbdcbb6d7c06f28cf2c402cf8c02310087265a7928d69bba58a2a02d72b523cc6bb6944df3525041692ac7571029a9c52e50ef06179812904a6bfbbbaaf548480302047c435bb50066306402303e4f33b4fa7582e83b74f54fa62a3524a3095c811bae4a2a0572009b1752e81c9eb13e91145d1813df9b78f53262a55f02306af7ee66ae52936826758ef17ffe3539e37ff641e8630bfb1027dce27e34438c243166654758009e50e34b0922d47ef80302047c435bb500653063022f4ebea6bde3b2f5dbe7100ad3251c27adeff6a82c8c81a7f030fd538eee179ffc707b145bbb7899329d48ed41ddcc3d02306bbf28eae10c79a94700cf9ef0db2c6bc9bbefa6582a2f9decc25d9b62b40ffb33a589e503658a125c2e41496ae40cdb0302047c435bb500683066023100a8c40e7d5f4cfbf30cd2ac9bc28c09fd7ddd518e555fb4fba9c6d541c85b0ef02a2b88796561387a4ca571fbc0858927023100e7449e002b69afe918de4e88eb9705a173e6e9c9fc03d078e3e82313b872f64ce88986b2be95296829705b6f37e436da0302047c435bb500683066023100b617cc49a7155f7768778fde732ed2809af8bbd9a2a13fe2f0ab78fbc7e61503036e2cd05d84e4c71f611daa6dde772c023100fab3a2136813c83621f25d258d7cff71a94924bd179a30fc1ca3dc3fdde1d6356117621a7873124b805aa9c579054ba00302047c435bb500673065023100a1e3d3eca122d3e089cda056051304f1732cf484ac93700151f1911cd082a53fc3d7c59bd5e0bdfe7e4b38170d16b917023018f15474cecd3c8c0eb505f87ca09d9f712ecd1e249e78af1fc9ebf1603997d6ad73c8c84f6ddc5700bb31ab4acd89030302047c435bb50067306502303866c704ad56cc0a3aa95d8cf182fa088cd1fc0fc390d0bda3fed372598ece9d2461bcee5c3f2dcfdaa7df5f6306b8a5023100c0d58326facce709a2b5582658e2225e6894c675d73a57ca396050659b55f79bfe7dff3b4032888d966982e5078ec61d0302047c435bb5006730650230511a034daf6dcef7967febe9df91bae924914b13efcd80a19410424fbaafa622fe8ec9796b8beace9f515d6ad783c4030231008ffcea001d125ba85d5f28ee4f7d82743486b7d05610afb3df13ad14f26d7d99256554df7d1b10316bbd8ebd2cbddcb60302047c435bb50066306402300ede96fb0284bf67b5843ca9b438f56bfc815b98c47e1e2cce49d1e3c483484647016ddd73ff3812d5731af0100f71cb023047f25d1a1f71dc6d0dbd1650435d661b7dd0b6619c943ad849109b9bafa1dc8ea944b990ca7e69fa06a994e658bd81db0302047c435bb5006730650230554106ca0903e069d13e0bbf37d7a81c45fd586d343ae73c8a29e60dec53f2549abe3d780cff92bab6f8a10e7db671f2023100dabec80a5efa8a69a7e963f3b8e97da3854249b65984dd9b0c87027d7a6cc504fb90b16d9f69def6b081a4eeefa6c3560302047c435bb500673065023078b3d42731299f76a4506be23f19e8ad0d07d14bc7ba0dabc99be07f1c50d019a409e986721778f8d8eb8d155a6d4e3702310093bf1e412421b093890b5336fd2271ec118aaa007decf9ab4fe6952830a9533ce9733eb21a4bf0104fb54b55b5e094640302047c435bb50068306602310098da78f6988986c171aac4487bb24f0cabdcbf3519532a43c909ca5360e16909aaab87029d82562aee994a4ce50d049b0231008c0d1059359172c16b25ddd1223862138ec24a386603ddf8fabf7cd7f3e0b0fee90d9db981654fb5c089375e3c4c8e250302047c435bb50067306502300db958564e1efdf572bb28b104cde2fd579783d661a36ef41210fd6e9d0f15eaaeef8ba0a737dda14ecec329fac76653023100d6b3bb6a71c4a20ff418013e05a697ee0c39e8b8ca2330799654abb06beda9f10e5c84695022130a20b06a7ade882eda0302047c435bb500683066023100ab7aa51e151a7fe8cc35758cf0a01eee83eabda4865e9dd22da2223db7bceebfc8d6ff6c6474e5aa0e4089f98a0095ae023100b6c4eee4888abab57747dda857bb8e3a5e5adb65889d2769238033278e2047e32263582ee1b5f3a9bbcfa5c44d7f8a890302047c435bb500683066023100f4c312e73be5824d04f6449580e1e33a06ffcd8abff5a6645192692aa5e359a5361747ddf5988017f60a1c0d0d607ece023100c1eb0213f146d84905764e3cfbf30d062e204282a162b851f5df781a9d39db9c02212339d711aea18b7a190ccdc1616e0302047c435bb500663064023033cc5d0e9f2cc844f7c63f875b31098be1a1e60b7d37650465f15eeb073747f8d8a71229ea3a490df0aeac6687e9323a02307418204a00c059d4fd819aeb797246e50e878d1748630c9bb8a1e99276cbb2caa5c02d476213e37ceb595d0e0b7457530302047c435bb50067306502303e8189701f7a5be083e5e571a1dca4bfcc247f257be05f1ca8a65249131fa23c952c19aeab7d7a13c59c9556d6f7581402310088748f6c8c0fe9b8e501c9f2fe78c8bafaa68633b1db21d7e42acc5b91363662c962024737574bf05b8451b91aa5dfe60302047c435bb500683066023100ed84ebb2aa4090e5d642a7619bf6dac814bd97b82862288f6196a44ac943e12d124103911b0c646161a40c641f6c10d2023100e98d4182327c791727e63f488f4370eac4d3fbd38f7905cf8565246cca21b250c4c6fa5713492b69c93be721e0068e2d0302047c435bb50066306402301f909399a5fc8daae1748c95b167df18002538000992d9ac4f07760ecfeb5da818de486485ee598cd5f4e748fb90a4e402303bf4500daddd5e9bc6ea0a35f37676d5ebe0b6689e83c021d0e7dea26184094c8768cfef6dd5207ac8dd1a8e7de684700302047c435bb500663064023000cc4a77d187a8d162ece4eb2f197dfdf3b1b1e458b8c0d109756e9b2a58fb0be1bf929c4c50585d4f893ed32fdec728023011da67ae921e7569162fa3be558a23fa97d88937be766f74e77cf122d9da752574d53c53fba860a8a75acd6c28af5f2c0302047c435bb500673065023021cfd74a4bb30db722abcd56747b15b26e9bdea2575f20a8d1aca9e5ff4fd638a29538d2fe14afa589bb55b21483d0fa023100d832553f984fd834984be9071a12e6c8d5254c8dc25344cc37edf85ba73c79fc5f5a3bdcacea60e02ba39d85bd9dfac50302047c435bb500663064023036a0c2de1c819431d762500dcc5a776d65f9f3d89b6a7277447c8b291da468bd320034dd9de1683552553c644b0c4e180230549df675605ea8dfe7d7d617f14c6e00d5793939858e210f8a06949c8aee1a49d36cea6cac0e7437914d2d02b380bd3c0302047c435bb50068306602310096d51b1ab0a1c518559b09ba21c7946da0c3781fe7db5f735dfec9813cac9958c207a4fea30895c42730c94d1f82b5b2023100c5ff8fb4bfa1d6e357645a006cd77aeccfa6f753818676bd8982673ba81faeb29ba59ce9300c5a4112c79e40b9a8e5830302047c435bb5006630640230038a1b2ccc811c3260ce888e42700e25419f7f052e455b50e8d83ec969a699c5e3f5c0125b6ca5b7c720627bf8ce154302306dbff6b716f705d24f3d9f56d1d9940527972957d2e80e6022231ca47524fc3a026bdc282ca0c4a6c84f0141db65ca2b0302047c435bb50066306402304a05f4c6ab118e23405a582b5209b753042d026f7809bbe88ad036a12eb240bb215d4aec42b8bd827af5c9dc03383b900230176993112004589c739f7402f1f06783ef41633563a1b63cd623cc259dc091f7ef7ad1a8c811c14734adfae613cad8720302047c435bb500683066023100c8dd60d96691f5c63765dab3added07b3e0ede0564ad8f704c0225f4640f06842cb4f59c86a5afdccbf57568df54a11e023100f38cbead802de25878ffff7021936e7c7ee085c719be95f6ee84ba0f7e63382cdb8a1944c3fcd23005c5aa6375c5cf710302047c435bb500663064023051874b3e2722779870fd738f0e4bb603141554be1022cb5912570a1fc6b6385666434b045e3e6843b11da4e7541fe14b02301ec650da817d4cf0ddcf51dcd22ba48afc993546f7dc0056eba052b78727229cdf150d385b0e61187dad1cc32307958c0302047c435bb500683066023100fee338b829af9dcfe24c3da13b507630ef62f558432c44a65cf8a116a5dfcff05fe989dfa4a1f4fcd9c602c8c7c2373a023100bbcd18e7850f9488f1378d01779b746e442cd89f6063cb0f29f1f0e20549d985bda6bde626e118bdcb08c2bb6ed7a5190302047c435bb500673065023100da90b93302ce31d330a02788d1531d9fae84a2834bcfc9d18bddaa595a70c18195b2f9b7064e641da08a686b08297c6e02300819653d3e6818b2fed1eddce2b3cfc22f341f1d4f502527d7078ebb7ea410282b1a22f21fbe6a9dc4b3843a5a3841c10302047c435bb50067306502305991a91d6a30553c9602864db8b959797491a66ea481d39b3cfe28bf680b9df5878cc9c1f669087dbcb7d54b8342eb17023100a0841080c34d80b61dff6491923ac0ee1b13839a3061cd28a0cba4b140b74e649ab2c7ee7037a25804bb0ec9a8ea9eff0302047c435bb50067306502305bcd3d1a11336863ef721f9800305c8b9658018a7f18563f75f4db5a4b5aeb0be1be14ca96a6729588c8991d0f01549e023100e5f08510be0414f54fc5a1c11433b65f31b99af5e8638ef81d427be04bdcac6a24ba31087a1cde27b43c47b792c7a6c40302047c435bb500683066023100d617db00815151a2ee9bf59e38a6cf63a9a4ac860907f14852e08b1bde49ba6d78347c4928e26be068e88a4ef8ab9ee502310098fd925fe379573523f340ecae2ba8a05d43f453d4fdc5a149edd506604d108e5c69b74219f248b350fd75bd0f88a5890302047c435bb50068306602310086e340816ef8aa177e77083cdb06be328caea610e27f5f58a6a98cd521aa07dac1b06c0a336dd3c6f8d285ce063ff640023100c4d6908ac48be7009bfb3bc1ce6c5e77c9385025e0b715741410be26886de36914ea6a443b76dd83893b3079950b8ec80302047c435bb500673065023100f4e4f3e18e9416dbba88262ff558bef0835f39c4f97373f1d03de5d76ec2ed1e708f5a95c02602810ba4651a8f6e7eba023005d3c87a5c4317b47b9d790ec60dd15877541d041a30c172ea276768739d46e8ac31d5973f8719df95ec33d93c7cdaea0302047c435bb500663064023040fb7793d816c91c8da5a2c57c841e706753d1794fca2e9e36faad081beb52b44911fe9bfc6bd030889ec2fd825e389a023040b9263c09bc6c0fd59069e41d14bfc330ded9583930ad5dd199f0ce65cca1bd36fd05a4ddfd3976f341e9b2b55afe8e0302047c435bb50066306402305495098f87ee29e5da3ce0435649e2242235d67df0ccb38058ff87f7cd56fd0f815a4459a8791ffe1ad9b0df89f75ee8023031ae08d21df4617470a02211b80342d018aed776163575c43457470606eede1dc8aa020d24d3220e4513151b0e6cd5c10302047c435bb500673065023100cb0f9e895ef524459aa00567dd5d61058e8b802e3f305cae6386bf5581d4c2166dc105f9782a7314a98b3b466b2a7eb002304644dadf6089753d2291ebacf9580f8c6372b0471a6b78b50bc2113e36c5788dcfef684698e70e6f73e01a6de05fe21d0302047c435bb50067306502302ebd75337b98b6841f2988d8d742417d3cdbe612d237b9998bc4d0f47152509d11ae9e605ab78f3c8ef5a7f022806a49023100b42b811c215de652a7a72195666e1ec30e7700f8a6e16b937fddd00c541e447a4cd2bcc0a18223eee241edca409f2e9d0302047c435bb500683066023100ae5729b19b4cba64153830e8d8cdcab786a52d10236ff749fc96f30b368dc265092f6eb6288bc14bb453c17f9f177d8f023100b10a0ec535a1b93a3f5a957b8d51cb762ba3cb6cb45d5edcddfaa440e8bc6d60a3bd533a43accaaa7580994cd0ae94000302047c435bb500673065023100c4f823cdbf604f405fbfd21d59e9995fe6e60ba9d6d0c7f98a9cae400c207a3d37f4be35ab019d22225448c0c7b4181602306c82d090087b9920f61e51a6b969a3e0665240f41180e7013b4b8af2acf8674bec748b0348ddb08aa4f84f1c304d4bfc0302047c435bb500683066023100f801cb613674d9120ba9f9ddcd12bb993c8b03b0b7ff8e19eb4a5d8401bba114539fb848e5614542732384976dbf66b8023100cf2b3df7c6c2bba0ee311aa67946e1d94e967914bee7dd379e859b1cc2b294de2e2dbb62630bf29c21a7a75aa60ccf570302047c435bb50066306402303f03fc34b2612f2a178a34424049176f75a6f47de9d449aa8963d7c908375e76ff6e3ffa2f037d3b5ea160782de0984402306c2427f9649bd847dcfdec205815d3ee84c455227063d89f04c4ce73a1a5c4c8e24a439ab1c9a2a6705aebca4334bd470302047c435bb500683066023100efb176cc095da3e4078526f08262daeac3b6c3cc2e1ad532240575b89da468ed5173e034f584bbd79212c293b9641e690231008c54f9375679c8c36f245b8776c9a14767cfda1a17852e983aae98e5a102a48e6c63fd1267e7be0f952b6934325782310302047c435bb500683066023100e6b0f4f555c2fb29e62ce0bde8bb3ddb9c2f71cfb04337adc1f3c5ab739a4ad978a408dcfb5ef26c86fc439a59f77bcc023100edef90f639e4ee1c1164b5306704c2a320aeb7ea080c930e711f85a83517c98091d9291626ea1ceba6813a2d80ff6cb80302047c435bb500663064023032685a6a3c41a2170a8ba805a64f460e809750e04d823ede57491d0598d65df1928ddd01da508895de4edf65281b796802301b36c116f0e120ae4c57baf579c40b6ed69af876b60b041e8fa444639de100429ecd9113c06f939e161299dea80656c60302047c435bb500683066023100a31aedaeaad0e16956d7f35371e5d065dd856752bcf540fa40c70fa41df43083dc5ad8eb318b587b52bf840da021cf17023100b71c450e23ea8bddbc1f100b47d052149743b8ce0cf46385e351b8d3c05aa5a2b5f07371d30cbbc970f15c51e8d90a280302047c435bb50066306402303a49529ef20c99b9ee5949d3a4049d3862c75df3bc29f35b5e91e66b50ec60eb888f9f8e200881d82387c112092053a80230159ec883c57770dd5294995f53e903551c4f40e2297650057d4376d9f85c2fab462f53b0b8f7626898f9be820ca14f8a0302047c435bb500673065023053c6aeee808bbfe7369a42d79ba076c3aac18f5988c4ee35bc335b88f8109e660eafae70c01791430d84e07955e2685a023100b535dcd268249458152841ab425078062be696e0ede47f790d279d0953cfb61aac6e360320ec3666767b2732b8eca7d20302047c435bb500683066023100d304a98dd319e4563f9dd57811cd48403e87a8291e624c6df866f3e09efe67d5088462b8acf1749191784b6ca5dbb1db023100a6e7f1ab6c3b8e5afd2afcc29f5762da03ee4ac9c12f4f3e56c850a1e3e6e65516db3a5527d810c4a475deffde2b05c00302047c435bb500673065023100c60a3f140b01c6d989227494c0ec5555a2c886c97dd5bb0e28ee653a5d2b982c81d578fa65f1889b8c1e3d1e3b4e5bef023000a238f5134b71fd1953ad4d37f3f535da54cac41ddadb54cb3ce39fa137712dfc7154f91f7ca2da172a8d15f55686f40302047c435bb500683066023100c18d2a03d9e7852fcd1cdd74a01617e7775eb930c036ecfa16ce96e6481495ec85bdbea8949b2afc24a4951c65346eb1023100cc6195116d0f702414a7b0adc97746022d6dc1e81287745633cc0ff779c57ee9ee61219b69c31d4a28e2185e5cc496f20302047c435bb500673065023100828198d2cde185d22a498e042ef7627533aca1ac3f8dd0086f5850d20d87ce0578476fba3f05f68a3a2ea5bb6027e8110230630b5c80e10fec0485e9417c82238f5903132b87fecaf8ec30548230d1622a88800c628923887814ae26342169921bbe0302047c435bb500673065023100a81a131c85389bc5e2ec005dd4bd1bd6ed8c345027aa4b6435b42b5788ac70c224d87299cb1982850313892162cf13e4023005fbd7906a230e45e2a6b4e54224a972978b80d26f2b6983d20e0017de1844c660660ca601ae27c2553bad57057323b20302047c435bb500673065023037f24b633b1b3a2f93ffe1e24c2be5e677a2869dc7ba6dd1e8afe2902924369fa62cc4bfbdf6ce37298879b214300367023100985b51050c34c60c2dbc4828e6734df847ce8ecfd285d51a8917bde36b4ce6dc3cf7c16e97db39b788f1f600be9e2f1f0302047c435bb5006830660231008ed3e45e5d307e1faf9d9a5b57a07dc77de336ba9a993b3e87f25ea1bd3e9a5f337923e5b3e030f5e505f148897694a2023100e6f2c1cbd5fd53e7ff4e0b28a51a3a350167a1627e3233cef5652bb7bff01407fea94b38610d055c6f68cba81ca334620302047c435bb5006730650230184bae77af0f18094f8daa308462c777caac9253606a0044997d6f66914e5d9fcbe6d3042cf1eec4f909fa40314a99e5023100bd0383812933387fb8c146ae0ab7f73071f7cf6a92df814fb5015b28c60b5c262e211fa707a1a982eaf01516d70668530302047c435bb50066306402303a171f7520e8c871bff7d5190a268669a12728518b23446f19e1aa005d11433b7e9902f4edee47ff7f36d5d2b6c2b99802302693adbbce743c5992909ae77e579a275006b36bcf2e6a9da2d87ca8700ae05ad67b101a5d1ea9d4fe61889a79ad371f0302047c435bb500683066023100d1b8b6737f4b9aae1c18c11794f10f90c868d3eb7eb156b72eb0224bbe8fbb2d3dc22b789e787988f89cb7a1a0c84bd1023100f3e745738350a35025f0e089348bce534efa8bcd89c4b74ff6bc660efb5a0f0271c6484fa12168448ceb91f34eb292320302047c435bb50066306402303fedf7abb1dc5683910162a9da33d5740272354feb361bfca45db438069d2dcf2963d62f71315889d021af114c430f1d02302f05abf681c8425acd26d15ce1f063367d4be3aab68c0c35c78fa7a8b35681ded25146cbf75fb49ef268967f385707b90302047c435bb50067306502307587fde198eaddc2c77e79f3df9fba9c55e89aaf608a2a46de2e4a34bc5d6e42696d6aec03a2d3b3f297fa842b9fdc39023100d046f511ddbda15786cd84a86f56cb4c465a22fe9cbaf1e11e4512094101738b0f30d6e8b4878a47725642cff85218440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305fdb8d1fd0d7a0e758836c2fe09135029e977611f3679af10d08710164ca1afd32d84fe62a46dbeab903f500c89d7bab0230655d484126c2bdcd4e9766da5fc937168a637d677dcb070f5bbd4aa8f91529ab3434e8d66479459763698e87bac224aa0302047c435bb500683066023100cd715bb492ca9c368976ba292469a2bd06d6beb56af8d03533d4c6c2cc9d5528ea448c511c080f9b91a6378de9fa613c023100ebb06f2d46b5bbf3048d71aa216efb7426b789df130b3e134f96c87cef4859147c97f79c50cc5d21fbb0034bcde5432f0302047c435bb5006730650231008468ddfb1f0e7776d6214cfe4b9ce27d6b52686550b20e820190072adc5b15ca66fe388f5f16411b8ddd340c87ec6a0b02304e3757d1f68b3e2f498a146305b6c5b593eaaab5333c981d69beab49e74f978149135806a152c5ab0c452efbf534ee980302047c435bb500673065023040a6d4007f568c8e035e24891cf6755d54c5a44954e9204e1b40022ff3d887db6f789111b8f0e382e9550fd4637b1843023100ff2f77e2872733a73a3be5d0c2dbca9ad5c148973f2cd6d92e9d9cb30db6aa1ad3e3cc71e241294b4141fa61d25a12830302047c435bb500673065023100f5d109a5a5a3317c5b0517408cd061f8226fa0b37dea01e145eafaaa118d3fa2d7d702201af992689f4e519a66c19275023005fdfe2dc9fb74d7d9e38d266a4062b7c0cec714ddf44efedd8d3ba4b1294ebac012d58634379a458cb124391d11b6440302047c435bb500663064023047d9698c148aa0a1be54d90dfdd87f7cea9dc763bab1f42f9c13ebbe1270c07b4dc704c5bd5293219065899436638629023051ec57981b45af04aad0df9b0981e52dafb8d2fe289da3ab4150be20c8e9051715425f90b95dd5ddd2c6993018a531110302047c435bb500683066023100e131f9bce4e6b0fee7502d41126f53b2973324ffdf9c07ae2bacb78ce80fbba616353cfc3f865ab94c6646d5551f2533023100e243c0081cdab001c4b9e8953eeea9bb4740a2328f5690b45a3d513d251f5e5f1654c018286e30e48b438e755d5619390302047c435bb500673065023040e0085faf9998b401483ccc63fc2d4d558b204c587bdba6e404c0d651228d27ef6a595a0b2a815202bd90761377ecbb023100859987c735d320da905ff7eee0bb452103ccf375bd594ba9eb520290f9658db92de55bbdf1da84b6666d4f9fd28c5bb10302047c435bb5006630640230385ee93dcfad135dd6e05879f684a813b1b16f2f1735c68fa4000008a007e4a7dfd4c2ada9c2eaef0269106e9f4b384b02303e226044ebcc28e3f6c251c0397c2c4e4c5dfb68386cdeb743d2c70480c4d664f526db0c91e90bc415e64b280b33f7910302047c435bb500663064023043c1558236f98e0af0025a664097db8da072e8e5688c7725862d24b33559d32f86f7e56ba0a923601537d6213473cf1902303d4afb3477040363fdc906c47034d989bbc59fb40825b2385278ea6a476987023c7f2b80eb7c34e0d5961cfe8420b0740302047c435bb500673065023100e9afdb50ee2e950ba1e8250ed145d6dff6a69144cc3625f54163d35cae68788c0e8045a29385462795b348e4571877fa0230029ca2b1652a5813926bfdf54360102ea3bbae9c31197566b479ae8ff17315c2a06f70d24d387e4dc83b762f8f2fda1b0302047c435bb500673065023057c24eeec3a3f8da2d1fda99202a69667a12eba8ce88df65474beebc782bbf8f0b3733083d25863efd01da6f44742a9c023100d7815eeff6774d2bd97b79de75dcf9376c45c452c5380fe32ada9a25096f0475df6575d4a9291f38d04cc64828fe72aa0302047c435bb50066306402305665319acd60565e40651980d973debd9fbf4edbe56ef49a615e65e9887b36cc01bec194a7502a580b20c74521fc1fde023042178f3136ff401baa148fa4c325392bee5f4c2ed26b5581163220b5bd31221dfe4c814548ea1bbb5433b2007f8fc74c0302047c435bb500673065023100b27824b1b50d1e39dd7df682df7339ab7828813fdea6c7bbf208890be4c6a86d3ebf4b3a0c402853c546f8f507d4c03f023029d2ccc371b2dad4515a37c03a9379b494e1ef97be012cea626cd2b403e9312be5028a272795c8d4b513dd663d19469f0302047c435bb500673065023100d207fdfaf040f326141516cd2e463e95a03725b27fe374bdfe6cab86b0c0ffcaa357de80460b2f9bbb67a94e100f0c8a02300d3e0d8ae5d1c7c4e1aa84e5bdccbc926940ba46fb03fa8f38c717db794a531f8809b50e74ed7c2cf55e63b4a4b0d6390302047c435bb50066306402305a5ab946be8d4a03d3100a36399a17bb33f2f7c903a30248ae12ee21e9b6478ce0bd64c6d1d47c09d0448f8d69ff32f402300d918668e594232c84c9bfe9b51d403431735be8b51175dfa7f453cdc29179a21ec0967e0c72942f771f3460e9283a660302047c435bb50067306502300a5313db9d202bb671476b80534c4a68f7e26506add90f4731110da8618f6f6dec53bb5ca5afd7d024de9f4f2b40cb5c023100e13d26159a03588a2fdf5050baa51eb6ee6799ac710b646acb31b9977f30624ada0e62d1aee68cd6890d43ea6241d7990302047c435bb500673065023100e9fcbe610077c07e008cc983957b3c6bee262be5565ac84fefc9ec2bc070068abd6d52b4050920b563c412c2027ea7e202302ac47736a1d57e5e0eee122639fa76789e363a0f9dd7e4023dcef65d36918db378ecf5e2fe9fc2cef7c5f14396c0af000302047c435bb5006730650230099ce0145e1bc0c329813179b92534b7d5a9a0a247844c478242ec624dd2a29a8ad894a2ccd6979820f70024c163989d02310093d74bdb94ab9824b9fbf6e6f6ccaabe301f8b2fcadc702162773b4e969074e31c6d772fc9d7be005a93c129d92a86cf0302047c435bb50068306602310099a3174dc6f89b41d71ac4f50524905c170103dc2ae7d4c7db68a16957d541338df63144983b0ef17139cb7a61da9cc20231008ee811e1e77cddef4d3fce329e7a170bac43e673f77ce7d673e6dbbface77c934ebdc94a32895cc5c08962323a98e15a0302047c435bb500673065023100d5a5ae907da2a3225c3228b9df13cd7def0558a4e4040d9870405f7e9795657a3f9cacf7fbd603cff6910af7840c95a7023054e02aa7ff1221e21011b156325cfcb47597c9da85c0689cd192bc6e3e46b8a9fd1adea834f7abb0b43f9b5074c2ab290302047c435bb50067306502301e6ea7dbb8f926a054d8c70aba4474accb966ab6421342563338ae34eb1f19ad86fe2aed3b2af1f49c8795f82c8eda2d023100975ee689381dbec99fa78afad926460f7b23f20dbe89027b48471880b586fb2c9d24961e31ab79c08f1e61af9c2d6b4d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100eedbf7bd79fc9d115f6cdea405181b1e18391c1253f4ecf240ce1559fa52ccf0148d9c0bfc9f2ae1e0b505574c3b01f402305fd3e939064905e9cb44033cb4f56818d34a32194f90e04ba5e24c04462defda8a164f743c5d99b9bc1fb14c110818fc0302047c435bb5006730650230234aa0d5a2d7da4a68c3dfd63638fda53515f5014efc7b71925a3472fd5da3636f2916b0fd12e20e931f6e5f4f77df3e023100cfe5656f69e55ab838ed4194b34c29555fb823df50e86e916c7fe78fbccd6c86a542d3e390b38eb711c4ee285b4b78120302047c435bb500683066023100b1b3e8eee3485a22e02c32a6f3ead8dde6ba256a8636b966e029d265f156d2aec7b842c0d30aad6cfa484a4cd5c1248b023100dd9141d2010eb30d3de533adfcc5b5b01085cfe8008ec053ff3a75d374f99a1def967080b6984bc9a25f40aa284b81f00302047c435bb500673065023010d179b7e3482daf4134a8f7359d0b0ecac14aa4bb49c40a35e065de7b689cbcc51d737830f2616a2aae16f0fe25755f023100d6968849d964c5a97f8f1b68bf433d8ea9ae7cb8b0039db52fee83fc6de44862f9a99bc06b90b114eda605c727c18c590302047c435bb5006730650230788a32fb9714c96a295d1f76a1a6a51869010069166719afe73e47899a86e5ead68c42a57e609c5f336f332ae80ea686023100fa1d67c78ffbba95582932784871b50358ace2cba73601c39af580f2d294dfc9fdd30b12843c687524e9d8ccec6097440302047c435bb500683066023100ab30d857d4a660fb715d4fb2770ea6610d664eb334943b408d95d777106db4ee16d58050df6a756c06ac6a276880e3b9023100c229accd5e75dcfb4a41636d701999af5d8eac251a2fd858d58dd10ad33eb203276c0ef6fdcb292b62330ebeb83997f10302047c435bb500683066023100cfdc6e2df430ae0c9deb4cf1c457cd770989e71585e8801026b3227669518bf5e40837b5b8385bc75db3e0ebf6e8edbf023100c2191dd8d0017df2dc522cb648be10401a0faceb83fd7600e65625def8161753bef804f3c1d2484103b3b24eaf24e2590302047c435bb50067306502310087b0207c5cf57098602f3e086c367fa09d9fce79dabacf3b49f70d60d07b9d14864205af2c5ccf62fe99e6048950023702307a3d16cb9ea8133c1f9301fe01fc1ae333d76c8605c2e5af590aa7363f22c7f1fa04873df3182ad7a2024967938770900302047c435bb500683066023100e50377f8d491072bb564999f3862d07924aa2f86ba1dc3440c427eac430ea2ae679db2d54d2a9aff6f71fd910c9c5a09023100ee533dbb72d40d3359f414f9861cda9aee2d80201fd48ed90dda368a4f13faa9b104cd29d274bde9356bc9f68eeffef10302047c435bb500683066023100b4782d92c8b28d1977851a42e0114fdfc522d6074ccec091e9c09b7dcc1bea9678705a5c2b202833198c1d6f912cc27a023100c20b3aabfd65cf5f458317e71393485d1a660d31658f7b9216984f6158c783f051d3e9a56cce31a9d7b7a2383401e6c40302047c435bb500683066023100c8a5356e5cd421f09b2e1454ee53dff95a35955f4f56b4271da9eb63b086088d6d3aff7e014963eaf7178b50fb6a034e023100f1ad03fe2fa6924d210c42de99b8cd47fa0a391f525fef51beb4065d0d258d67f07ac24e9f61b19c43cbd04394d3f21c0302047c435bb50066306402305e8001dfffae38554223a298f84a47abafaffd9a42f8ada093e9cd146cc8a91653de7c7d5a5e4ea8b18d137dfd32be150230081d934cb5766236958f5d463a0029427f8058c15a42da30eab5e66f5e8404db671edd03a5920243c5aacc913f8895b20302047c435bb50066306402301374dec60e1b68fc589b8cd4227596b4e0cf192c8a0389522230c05c597e9a46c989a8c1e9eb13032832c766b179e72a02303c39c336783f04f8065d4293e713c1a90d86379e73bf567174c14d2f3062797570b8df36d929ebc9798374d103c57ab10302047c435bb500683066023100b4c1efb8aad61a3c67ce81aa3958e247c329c52620a59d298fb51c2414fcf2c61088594a4880f2d175ef3411538f5d57023100af3de18b398eafa655378a693dbcf7e7a9957a81b703cfcde03b7ca22b2322583818f46525efa4e4e21c07b9c18681570302047c435bb5006830660231008b1201d3609818aa6bd4f61c25bb3c15e9dbec363f11b4f77405344ae31a4d944d06ac5f51ef8237f992f2fc185a06a4023100a203eff60d1ebe12b4e732a90393ee2ed964eb8ef1b28df719d22697051b4629cccae5085e33fb7b0ad277d256be3f930302047c435bb500673065023100f1b277a00f2c53dff01cfbaf880ed08495281d47979db120b912fbba816e02ed6f884888748a3ff7c378192dfd448a0e02303cbcb37b4e172416df0c56cf58572b79b5ccd8856eacb980e1427ccb7cbdbbf96a2aad8c39dad136ce00cdbcdaa80ee00302047c435bb500663064023045d18bdbeced8ac72bbd62931c3618b3bf72c99c1225f5cdf8ecff115eb15f0d1a0cee260b5b258aaae90d610f12bfa70230478fe7d1dd7d9f2acf0df1f708a26ef6a82c9ab3843c590dcee1b7235385d1e331ae953db064420a7f1f4d9bf9d5de730302047c435bb500673065023017d7db7fca193cc5bd6927be3b2a80f1189745dea5a0140d96ac61dc907380aacadfaae4a4b5bbb1eec7a6e140e90358023100bde725cb3f2448ccaa6d821db5c0703280e37ce73dc092e9585208ced453e32a7493c98b5bfeda83630f5d3d30037fdc0302047c435bb500673065023100d70065def06f24ffe5f45197c8db06eb495e3ff3c822fb0d7ab6e68a3cfe9fddb5b4dce5dc2aa1c65d45dd92df3d9761023029f0349ca5d0f1b415dcfbab78fc942d89d41139a8865ab6868262a809b6578dcb4bc1ed2738d5def85bd3e45a2f6b4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023043ca157be1ac6e4f4d99503c4dd86927f20ef19dacd19bf6b533343fcba002c6ae07e122a33d253245c2a07355d71132023071e40aa5174a683e2300b4f5d06fa32f16b7770d21aef9a2fc8d0529a7b8b1fdde21b70d5491e8410b4d126a0106bfbb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023067cede02eb274f1426a2c9ab4fa3b558ac4b2b21dc9eb92112a81975894226f1b2578fb4a869a4594aad2eafd690e6a6023100f5d5e61b1d69d73668f2df146771ef5e6d22daf35f41dd8024789acbb53626ea3dc157442143fab64c360098baccb4c70302047c435bb500683066023100fb5a9ef932d2ced34961ead6f6600a9b71ddf9157b06a28ddee290041a355754d13da5f89dc233c39418da9cc3e2d2ac023100cd8ef31e9e83a2e53894ddd94fe0a89ecf620ff347f7c787771651bf25880d357636fef167afe13254e7c0b0e77e2d0b0302047c435bb5006730650230144a33a34ef33a70ffc303bb989fb6c6f814195a01f9a98d0541b85173fa046064390418f16cd608a70fc4ae90900967023100820bda843ae1b24b7bc8dce189b53f8b387b183a53ad0af7acc574d0d8629e5b4322be423e530107f0a908f8786da0990302047c435bb50067306502310092e3419002171c6036583d71a7aa5ada239c4346d24f93ae4203b8f681c7c4f5eefb0a5fca1f7953c6104e66e533986702307f8f2bb32258132d01296604c87443ef6f0b0459e79c30c24e25dd9e8d99198005cf1edffe172b471e4e2fd499ffd0900302047c435bb500673065023100c054aec3b77300bc5cdbf6e919ce9cdd98e0fa33d8d4f028ce3d751acea9566692f35f0489f14b03ba5d786ddbd7bb780230181629a4100daa0941abb8feca4bd9b73372b0a2c846201a90d668e88233531b9b03882b3b3dfdfe78c1e3e6766416ca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230150c48bfef4903a0d98f32b2274cc61466299ca81bbd7c19a5860294613c60f3374777b59d320a6e19aae2ece4bf8f2402302e24723526afd00408c90d44ef083c69ee21d1884de5ea659ec4cbc54f66b7b30d60788393e0b5dfe8ac8bf018c021550302047c435bb500683066023100b8887d833ab966e55d82e3b8427f0fa086d58fc22af271f8dcf9a3defda7190d786d4cb82465b5c1b7e1d674ac3cccb4023100b337bc2b9afb4484bde59538c964bbfbf76cc105eda55f6bd9c601ba1e87a5f4792799f85449e1cf5e013bcd053cfcd00302047c435bb5006730650230150f515d80bbb611a5adb2712a828eb0503fb236615f649ad74840d0d3d3da2be8927841e9650824913706e6792cedbf023100936c853344957cfb70c20baea6f8f3272aa0df9b07657ac793963537d9f2f8aa0567606a3a4ee105d299a1305bd31d2d0302047c435bb50067306502301fbfaf927038ef11b036094189e115c8037cce3301d56bfbea661a2a0de0baa9dce4d1a8517cdc91f3f2c779600b38c4023100a3aa0e0a64df4d9539e338f750b5fb4e3b523175d5116e39845414f1540bec42abd45332f941424240f2d702285b1edb0302047c435bb5006730650231008217fa300f7c9bdf430f1487bcf66d5bd8a0e3b2a85d71eedb21b8af30c67e28db0eb2bcd975af22f8b2a28ce2e57d4f0230642e4f2b7ed6bbe0f784709e5f517ec3302281da08cfd50e6088e868754c1272a03eb112d7e6db73e21363e8516043310302047c435bb50067306502306f054fdedbba7a27c9f48b5e3ce20eb8d463fa3988a2a32e2ed7b639999e832745b010775cc796349627962295c01cd202310096ac08f4b39ab0a3df36868cb4e40ea03c175e6cbdb131d2667fe185d3a34906a6d7a29b96e06cb131e1a7ca2bd6bfee0302047c435bb50067306502302e9b4949bb0b9a51048e3eee4a37ae234149adf1b42962d66f4e6a74630489b4fc836714f973982bca822e86dc43b141023100c7c59d9ba6dc65d7fe1606ee778cef9ad4bb50ccdf957e803ef8d97b4cb02939f0fc9d5422517e7a95debb77724734710302047c435bb50067306502304f165268d18a2a85b723812596a0a6c817409aeabe6fea63b535526b0747f23975ac404920dca186c888d1813de2a8fb023100b28bca052a2cd3848b55eac2ba1d7c48074ee82dec0fce5ce2b49ee182d74043b2a123cc2d8e1347ddbbf70dc9b112f60302047c435bb5006630640230373123353bdd4f6979462fb773bf3184191777110263a48235e11b8d461797c3f58900d51e4d548db830f281431c43ac0230192965f13dcdadbd27a8a5f52caead237321932afd1345fdc51f8d6f6e716a3e0bd6b5b3b8b18b906b0d927da233dc630302047c435bb500683066023100b79f9ed3bb1fda4517e731c770b256b5d98e16c0f4bfa7302746afc206b4412353a2d739cf11b946f1d637c403e77508023100ccc440e9e39c4427d3488eb6489a3c41f0b69006a752ac64a863498a97386c2d532e39c84eb2c419892976a411dbf19b0302047c435bb5006630640230468c320bd09dc2f3bee479f0454a99fd80c5224b7a0b557075a40d68eefe5160306e20e5a1c99b7227cb352ffd89080b02301215c7fd391d34f30f3aa1a6729e0efa294206db48f65303b049945d0a69e59af81e8b2ceab77827303ff747e6eccc600302047c435bb500663064023055831f137db8e535c739e5b48d3e15c2be58d17e0cf6c2cb3394d416e668e7b6c438c95b7855a22cf126523971158742023056b4fd59f464948247dc2bceb3809575629e18ef16da3f6f68c1c20f65ca78fe5ada5326ef47ccd61b828c7d626d15890302047c435bb50066306402306f24a870aa2fa41c280af711791f0bfe73e62735a8df0db6d1388713595afc86c39903fed5468f890bdf334e4ad477a70230318033e221ac97f9657763efd8a280f88ad93bc19a36ee0514a4a5375976d8440e939e0d9c30bfafe08b3aeba3a6d7370302047c435bb50067306502306b9121edb447ccbcae75a44ded77c48f4f98a58ecb310cdc6ef76785c3f02268cadd3c2a884982dd318f74b3c4881c2b023100bb9d15c64ace204aa7871d4e1add96604a2adcc3b46fa1b7c5335a478e9da4a4053e72382f5203e0314c43ed1f8277820302047c435bb500673065023100f40a6a48d275f4fa9567ffcdec856a8f6345328131851ce8cc5cf300b3cc168b49175bff6a4ce690934f49ab818904d20230154b18da0b3bbea6986e6f86b3e27124f45e6ea72c214eb996225de410856ea4dbb1b4ab3b9c6f9a1d4e70274525bc460302047c435bb500673065023100ffb647ba2819364d9761ee6b13a21cea2cc5850f8031f1b8a121103af38f24acaca741067be09ea9c51bc630d5fcaa84023059b56a0ac1f936ad942d051fe4a71e84ff738c79c0b9c05b9f85614f10fc0013dc883c60db818e7c2779f19dcba9437f0302047c435bb500683066023100e09b398867ca22ff63cb2255f542e285c0448540d48d4076c9d0c920954f61fdad9429631fad22643c6165a60c263264023100fd7bdbfb1936c343bbf39a2dd652301b3e80623249cab99144b52960180a71b95caa61aad92a3c7d098cc6c68ce206e30302047c435bb500683066023100c140569e4657e90a78cae100460a2e41b94d4556fc934bb4fd802556dd804e3bee4a7f5d38b4dae2bb6e12d9f751ef1a023100a0f3e5488a0025fb693bcb8b179f5cc6ddad6dcec4887b27cbe06f4cb7a34a4a6a602d90e62e1db159a1665e1c900c920302047c435bb500683066023100c7d25751c5875381fe42f6a84d25268358dad334d5019edabe426ed6886bee871106141461b04b9226660e6502d10ce502310096db164c3ff83ed1a9ddb873a0981cea730b0f40d0b2596e22f534f894a4642d8d1d0b171b00e844a9df7160cd8e99c00302047c435bb50067306502301b1a3bc850fbd169b8b219e69279efe1e8d7633723155202f090ccdf00888b06f1b52531459c6d75e97cc9dd0da54099023100f73ac6e0f4561492e16aa19877a7854ee6fa717aa14084b166b39417ca397ab188279ca7add3f7540f2097590cba6cfd0302047c435bb500673065023012f70afd3deb8de653a2e20b6d995eb4ea92a29194a5e55ff23de3fe7a772ddc1ea641561a18429c65d05db7235e02d7023100852b492b36f88953f1261da621fda39f8d61561fd9849b2f5a28aa56a6e7fec091347e396c684ff1319fef3f022236d30302047c435bb5006730650231009036d5508d53fd7f50274b6b16a576c43464f3d5e14f49e29148267a55b76d87c48bf1dae50df1c01510017d0cbad78e023062d13676e942cfbc116f9048bc1add6569e93542960a25874d8691d0f76d86495182d1bcd71df2b52f775e6e9f3172510302047c435bb500673065023100fea992f2ca68d7f7059bbca0bf45d08e9e6859e4d2175a1ef13092f658943ebf1eac297cd4cfe3406d61a1b7edfb435102307bba9bd9fc4b6350520e5d36b0e29ccffe1ec95403c1de8da429d6b1d04f21015521fbc4d3de61a986f28c5e359efefd0302047c435bb500673065023100cc2892d428a3951a6ef1cad4fefb822ac3cc1a7c555585506c102f60891acc4db4b85435e0b6b4e501c075fbb0eb79aa0230258d4842fca928f28bc5aa8f90582633e380bd61c68dbf36530294e23bb3375a133d12c8e99fd916b2d9a3b1498c53f80302047c435bb500673065023100f1ef57201f98b3b1421a29d06a4e0603b0821c0e28195cd02a4e621751944e52d4efee7137b2f790c7e2b86b252254b20230605a1d0a8392de4268545ebe186dd99ac0fb3faec39aa9c6865ff7a572ab7df5c8a7ed21069c1d9bf0c3e93f8de8c0660302047c435bb500673065023019bd818d4e134abaf58f6be7f8368a66f282fed24813dbe94db357f57b9be89c148d692ca2058e489c62f9ab847f71d7023100ae0077521902ffebdd7c8bbf019ef990cb5ef08a23ba3e7d798583834b30afc16c03d9b07cd4930d9964d75a59693c020302047c435bb50066306402306270edb6e3601ec82b912e16c1114ee3e3c16e8fbc1c13c786e4b093278716da55bcabdd98c45d09a60023598d2a33c802305d72178efcef33830df96b4779acdc65989d25b177b9c1e37ea01e8e17fc7960794ddf984cf54b361ed9fc85895350580302047c435bb500673065023053bafd8502b8580b74e2101e88de69a759b5d0ee76308790bf9aa5bb99d3e70ad6f5c303f8b3f5d44586d352eed4c8e7023100f35eb050da4eb3b68db1c9db99205e96bc0a149b9eb776b2c4dbacc453df67bfef58ab4dd065473ba26b97949258ff2b0302047c435bb500673065023100ce4d4765cf2864aa5651d64b4ebc69b09fb6a39e6f0758033bbae09e89dfef61c09c096c5cea55627972715a11ea2590023005fe9ca5827f5c8d1d71abaaca32681cdbff3923d9c2e36f40d7f3fb0ef075fc10fa073e493c36ddad26e9679b8f0f370302047c435bb50067306502306d96699ee4ce35dd6e0d0d00d661e22f4753465333153772f7b1cb60a79fc3a8c202429f29a1fb2a447cdb89313be4a4023100a6904ab5a3af87fd3f9885cfa9dd95e23c093347e6e30426be81ea2dec19fa853cd64d5774ba960ef7a984697ac9d7630302047c435bb50068306602310097e49bd4c0c72c9e3242b29f34c459f1badfc0041c42116105d99707009d0c9002aec8998cdfe03833d8befc94377a62023100d335f89421c8cb0609e0a92b2bb7a50a7d5868a864acc26334de4a9fc7d33d878edf3b3461b80c68dd5a14fab2c9adfe0302047c435bb500663064023006164b4c147dd6de830a5c5de2eee5c09b5cec7a8991a7a24c0c62b9522e157911fef1a71a231dc695e9563b124c93490230077afb1951d1ad51e633ee47a5982cd87f7eaf6ed28414ac38eb198bde4ff26da2fec342aac6e3222c321b7d7f1f4f770302047c435bb500673065023068c925334b6ddf35147869a8d135c7cb4f186dc228324f5a375ffc00135465a724530a296b6650adca3942ad279512e4023100c714b7d6b4a9eee25dc88d9aacf62772bd43696a31e2e2d5973e2071587d8a60f150f37817efcfa10b4e1f4e5a2dc3760302047c435bb50067306502307136392bf25f358373b69fc3c91e478f27dd9b87a0d28146e80cd432d70f3ed8c9422035eb69ef20868f94e937ac3ebc023100d320b889fe46c98dfbd5128a9f2610fb5d3a69b3e104f756a29cadeb667cc1d448ec774a92150ada384bf715a781f43a0302047c435bb500683066023100f7a6714d8aa07dc757292c6ca0c880b435b018ff452a9c4d7e4a35840f51499eaccf6094b969ad3c823e41dad0abe3240231009ac0f412e71adda462177a945fa781a3b48857917dbecd35f6b5e29977cecd59145f5919e13238f2dd46933b1e4abb440302047c435bb50067306502306844d1dce0776cc0331ed30901aed419b9c89ade088af7fc6552456901f8cba3f99e5299cd375569be3f92cf0062162c023100897d72c8fee5d477311b1062f0fca888af9a6f258f6a992a717f0eae18611001adcd5457579e3a27a1a543ed76e462460302047c435bb500663064023005a400c892b5f1fd3ecce92fac87cdd503c624b515bd2ade6b7439aa00fd05ec4d88df561e2319eccd05964e2048a2ae02300730c8a40152670b57b266071ea8f0b946c6962d28b91eea6155e7b16d0de052d3588884d2a56382669e9c92bfc372ad0302047c435bb500683066023100f1fe063e6f80e0e249f8980f6400f7f5c89fbbfd72746a957483d6654e647f75d2039e559bdd5b18e5996321cf9682ed023100e2f5f4a1da19148dac4b56001eb113068fd7307d585d6aa9bc0fe3dc0003ab7adb22478421577f579c93a1183eae5e880302047c435bb500673065023100e6bae70dfba8199bae4f5ab190ab074486da7c57d48deab441cd942b3a498ccb15627f1b1672079d77623f9bd9de49bf02302de035e80e9581bdc5f2ab5d6751ed7a84e54c011d239077d8abe258818661a568d15cb34b493fca39c0dc8d824931cc0302047c435bb500683066023100f101fdbb8cbcc389f2455c60f82f8d0191cad77688442b2330e930c66f90e051137020b5c6053a28f53eef4381ca046d023100d11de66df1a1039dc91ae9a6e88ccef73202b7585bba23bf9100b1134d7200108410039f8762e88e3dc813b819565bb90302047c435bb500683066023100d7ffe0e446f803c66c1e9d239a2391e5ddc42be3792a4152edada54e2cb21c572c82de288fdb347c28d471f490817d7b023100e545f79b702d5c5d6c8e0c5f747052bc6e325c1cb8e26b763a3f68c72d5339c863251a04e4c9e79692152e65de5c4d0a0302047c435bb500663064023065aa484002f70d48f975765910be21ac995a47de7479dba7c2f8f32b1972b16afb70a7f116547d5e14e5e3ef91fa34c80230268ba97dae4dc09586a5bfb3f499443106b798e449b54845ef03aeb1f3e635a95c0499de000ce30ee6f979d57a8c80730302047c435bb500673065023009cf30d54ba357e05d994078393c660de3cb4e724b1ef81ef65d42417c13388bd7fec512a5ed089b77924af8978aea16023100d6f2cb25aeb5b8aa1159811801f91e75f032e88db23efdd8bba970a142b916ebb6e9924fcb735762c72f5d43a1964be10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008c7649475c9d82d2583cf96cf0374724cc9dac65f3025ce9d4c1e2a3ecce1bf5e6e039c0bdbed399e660acaf3ccd0bcd023100cfa2defdf878bfd02989416a1963ed7c05e875fc48ff24a9fc5775e52ed4438b2bb84f281587299c65e825d3fb29f4e10302047c435bb500673065023005fdffe57f76e91d8ee3459900c9ab400e440fca31391c8dd29879cde657a583f81bbf3aaefad99dfb99090b8055eeef023100914d46ba8b21ca6888b533d38380ac3f70dc27eefae14fb3c3773c9660c3da6b9561b17526ab947ff58d7644efd443b60302047c435bb50067306502310087ca2ec73f1b008eba76f584b007f217ff0d2b491187af68687b259bfa29a17d3301b82b879eee5c56df06f4962e6b1f02302c962e5a375019b4201db5013ebd7b4f683ec8ea4ea9300a00e8eebb0acde245b84dda463248fc2d9d9e89ea8da0805a0302047c435bb500673065023100b9341668975418c7f9a38d82f943a18808367c5d7c1d9fb1f4f48f8cbe66e2b22834d4d576fc233d552d7a9b23c9eda10230645ef72a789eca63dd8b1691f62eeec222a3fc7313dbd5e87fe0d728ec59a6fe077a0c1c817d6b4492b5e7f7c073195a0302047c435bb500663064023033fac6e2948a9fcfcd1262de36e0b4540323477473cda4167cc5e8dff509730d14863d5c6e5ca8481ca62b2682a38e40023065c42515bce33d3866c3b44bedd89682ec2987f52f61efc2fc6c2bafb0d343c3de7d00e247da1ecd7da05dd419f57dc90302047c435bb500673065023068a08930d8a903d3456066963da4e2d90a21cb9e492a75448b12592159e6799e724d7d0f3411027678ce05167ff79db3023100b7fc3774c69b8c3650625bff53eebd9bb3a654239081228c746d034f0cbff8f626a58ac2cfe4f605adf4f3e027f5163d0302047c435bb50067306502307f25f96bcc6a4797b8e11287ed76fb976e0ae54f38295bc8127e4f99324a96df10640aa494f87e043510dd68f9f954bd02310090eb8711fc7f5660ac2586de63d55235b9c0bf1a2cdab15227a161a35e2172fe84099f35171cdb3144428eaac5ae3d440302047c435bb500683066023100e752b262ee95562b84e7c2b6bdb353467cc681326125c87e11abc03492fa438b0581a03112a4e6ea6c5db0633a5ed759023100f00ee55773f4c9e984d1a0cc2c72938f6a83bd33aa0bc536281c652705469edd42bc8217f2d04377360b9bae308ac6130302047c435bb50067306502302bedafdf1cc44425c7b3d4efdf6fead6be3c6cf8e0d47a77bc75afc84738351b3256108dc3c8b2c73d7b4ae40726469d023100dddd4d8389c88be192431277fdef697f8a6118a311768ff8370ed21df3eac1348915b55dff0b341dfe9aab608a2365c20302047c435bb50067306502307381ba3234fb629fbbb84fd2dcb2816e5990bd8722a2bbae0b25424ade2ff0648d9d18889b824a6e4194b8399a001a7e023100b13e75c1fac52dd0c39f597a30f370958763c1533636ee313f68e3328d0697eb93e4cbec99a984c7657444e1eadf5fd10302047c435bb500673065023100da40cf8d5cd4eaa2fdf5ff81bd54d1e0f41ea4b2042788fd990de65b97edd731f6fc40748eb13a8afd0bdbe11ecdc4ee0230107315d3d4968534f2148997a5855197abd45acf3296141de7d683feba674489cfff47ba2cd4860879ac13fc570cbb1e0302047c435bb500663064023025be770e478e297d6a8c1f58d669f3f88c6680eea08b8198bbd6229f097b86c394a6cbd757215ac11ecd5a96cf50e240023025bdd905c5835c246a27353c59647648f3f31b81e684d04ae51a995898efd32320be9499f7ba39a241e0860ab0755aa60302047c435bb50067306502300569a98d75642f7dc7df9a5c1a36ac7bf8edf6fb9afcee4892579f42827c00c3b573105a4cc15a7868e4d1f82717e94f023100ba849b3db29f1ef99d66e5b664b017c8a324e297351b9fce5cc80df9a9693a1a1d9f05279c6d69b1ee2d20a7a0f64ef60302047c435bb500673065023100f3aafd75fafb0e7724936bc805ca45ebd1062587e4d68ffe4e1d0573b4e19550e791ca4144b86bdba3c4834c0464fcb30230647513dc58fd2bcf08429118964c9c81bde0a42de7745e33028801a49042ce66cd0fda8343082a3307267b566a6995670302047c435bb5006630640230428f438e9a649f7b57546728694a05b68e3cca2eb3a9eef7fec4721addcf9dd87309648a0e0daa05c7d91e3fddb90d5c02302fb56d0df98d2330cc7c903d26101fb7cce30493a70bf2fda1a16b4ddab7f69cf1f7b13a25057d30df6b0bdc7da6a4da0302047c435bb500683066023100f37fb361ed16f910b64b1406ea537ed7ed12597fa2b7da848f9887a7ba18f8a3550f4ab2b5612c493ce1b71b34d1d3ae023100b0962fb046b8eaef27aa41d49580a6f38965bdcca25a47ed456b42341df2162669c0aada5de5f01b9624efc9dee4eaa00302047c435bb500673065023100bf0a87191cac3dee75a03b51664b3ace6fa38cdffaa2557884835f057b6c5d4c037f098433d7bc9a744d68ccdbda7fa902306447cbb7e78e188996f4bfd8b0094b1095f01ea4fcbbcbdea310958fec541be0397c109c634b73400cd64b07a45584f40302047c435bb50067306502310085fe663273b3c8a395050f454e4bfc5951b270708eb41e566cd1218c10647b265c2b63569752f5f159842690a69400f9023036b0b5d9028e26e06985bb19e59263e782a03933979dbf1b99fed8556d215dbe7e064785774a5f78065f77f1ca9011f60302047c435bb50067306502302518065553f49ad1c4271bf67f632a789b237f840bde49346d8a75f21de8b2944fbe21b8349d1370f7c2bd19f2bdc3a2023100b84a0a4bd390c54b1555cec7e465b526ad563d08052a568c03a5b5b90c0971896c928ab534364733bcb73db10db1eacd0302047c435bb50067306502307325945821c56db4cde53f135ea4aee9b0a177a97fa60fbe8ec41f0da9d46afd27ab5aa9c82a9fc16af0079a45c49119023100b9036cf4cee4c3122d7095b96c2193525b03cbed75f8a7892268ac58bee99d9bb004842b4c84aa99f39dd5b9112621fc0302047c435bb500683066023100c1046edba3fa439383e5b9c3897064555461705f87f761710dec036f014da010df52a35cee36f123c6d0a23730b88d9f023100a229c9e069223e6ec411370a3addfc8b8476a422fb4ed943afad58cab187b078b299d8f6143a540e588655229268967d0302047c435bb500673065023100902f6c8d167318c464bf26e197fe0ac6f5f2fe357715a8af1907807e4f31ae60804cfe7182137648ca0d58379a151dfb023067fccac85dde80d984a0b408dc43aefa1a7795043efa3c2d59f1d9b8890fca98a6d9a9a853dc0434bba3c58f8da1d61e0302047c435bb500683066023100eef8384abfa56fc254dadd244b82ad7b402dbf1274834fb6cc81e163cf8e5fc402fe868c6f131392fd7552342f422357023100d03884353178cb98dd6df151b6e4e5eb12452aeebc6cec82eae4b6b817b25a163fa08540b3e75730ccce1affd10ee0650302047c435bb5006630640230271cc113151f6fa3770994eff8d149376f7aa5971743b732eb038321df9f92299b702e7d8ddc238df20cdf3b7e80759d023002afe338533efe2d3732f2b6438af783b02f13bf0c356ad98f5533f5fd79a59068c87324a1e1227f188e78fa23cfb2590302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300febe83ebbdf0d3dc2ad406c907a8d38a5256ef3c28bfa0476eedd8e9edac76d186dd99ebe9c8f81e27402347336f0ae02302f01515fe192bc0ed15107561b04bb59e5c2b08516f1cbf3c80a94492890b47a6de16c49d032685a9b932bbdcb75b3730302047c435bb500663064023052db7634ec1c239a63fbac816343fca98acf91139f3bbd4dae0b39842b6580f1816fca76b702ce6ceab2385eebf674f002305bfe415f679ee6fcbd78fed4aceed6673c505736326203e8dc1f314c5d7f5df3c6463c11c0f7117af4df81f066489a270302047c435bb500673065023100e54261b5e601b0db3d5e932c5db7a8a9113054a19eac466e1c97f846b3068b25eb7f6f99f3fc842f72167a3d960c2f8a02307e493fd2a949471c6758fd99560326edc6ce998cda02ead90d3c132ab92348344fae855a09b0aff34fae91fd680cc0b40302047c435bb500683066023100fc5035fd65c5327688687543d28a0dc84b23acc6568af689a391116f96cfeba7f5572fa24903ca6a95a2e918de06ce18023100fbc0b3462da89f7a461d786d37915cdab760afbf6fd2ad33da314a597e28b8e89f822183a3289f967e79dcb42202f6c50302047c435bb50067306502303a17f9fff479c1995af1c448479924b3d1ac51f5be05d26de8b6b7afb44b476d7f3a3e784650111235af570efbce8294023100c6f3f22660ed41d24e5d34677f55ceca9da6d3791fa8a352b60be02fb230129ab8e61a0ab7233084ebab317b26b607970302047c435bb500683066023100d4f72c940db869192189c84b9db6f2a3786dbb6f25bc80faaa206edb4acbd587952c69229644aec87f11b0670ed95f670231009be9d4e678044e647f61411c90c37abf2a4f0b3624b7446df5aa6d28a34fcbed784358235b11bd337a8c7601e63769100302047c435bb50067306502301031abcb80a75ac7cd48962acf30be055bef66401d688a095d331e547e8a7c2d3e4e2e1155896fdc99acdc2a51c3f7ea023100b4a4fc5dc79bc8b2c9764078da7d1128460afb09b4391de15ddb54fcb75189dfed6abeaa3e5e604d04825246060d32ff0302047c435bb500673065023100f287ae97e8b4bca8687cfc513723d2cbe52339a889ce9743ee12cb04121b0baecc2094a749ace2e5392b4c44f36a31f0023035979d8ec10119d544d517b4e690ac4b09dec4294f3b1c784e37b82d04df8743b13e9952d0519cbc023e3374fb6c91cb0302047c435bb5006630640230122796b00f8c8a0a79c6d470fc7d293e069ade185c7b91286aeab9bbd77d1c5384dea8ea17aa84722fbf16c79d9b48cd023019e83040310f919ce4062563c3535a10cda29de59d548372d4ba4acaac5c5757df36f82477a14c589dc1f00f58bf72b60302047c435bb50068306602310093cacb56f5fadfd051f3ce062e2b0ddd2eaa4e40718c9c145be091c69470e9ca6d0a1f08b4659388d416382655bb85f1023100c68362701cbf7134d34d84cff5c108711fbe9ab1341f0999651d171bc9a6649fe08ba734b3fe7bdd8e9cd0b9f03361b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bca50bf1ff8b7e62c0b76ef83730977214632dbfb7d024d73808db103ffe1437862ebf5adfd4c2803b6079df0436ac600230717778a978c5a21bb3aeb486b88547ccd3a29bbe29e31e6341f3062bed4816c8bcb03a1ed71eefa1a24a0b521e1375a60302047c435bb50067306502304c41d528c1e1c1843e7f2b83ecfd949ab429972f520866587ca307225d0b339d734aed8cfa96f9510d88dd0ba690f998023100a1765b8b71c725938a4a791537fab7547089e945b45400abc9ac538a5cf2502e428ab47bcbf4fe429b57c61d93b013630302047c435bb50067306502301dc8e69fe007299bd45c1aa6f80f7a18984692012667ede0fa186df4bb06374ebfc34a61270c5d0510828dcfa51f3e58023100a59147614769ec530510c9955af1f045e54eaf0b127e46bd9c453507a6aefc7fa9e1c6c6ca54c0a3988856c7391935510302047c435bb500683066023100b7e75f7437be5ad9dd0f2c4db081db33127030a4a5858c10639276cbf2576fc75a746d301a0460ecb9b7286fe5910afc0231008f932b75b8f25967a3844d16987083f3eb654e578d218cb851a4f4b2ff9cd2a0dbb9a7aab20973a3b7df02710fd8461f0302047c435bb500663064023074bc45c9643d09fc4c4dca6266159a9742770f7009cfa539636eda7658777d35ad0ccf0437391a939f1bf601c2acaefc0230338a7de311d86c1ab274119064b961f8dfcbedfc5412761d5858ce2da86425f7840f86f21ef0d21e8b35a5ea814cea340302047c435bb500663064023004331b2f9a19f5000a1dcb6762c590bb245f0f68f2c7de9de72ca3043e1ecdcb33c5468dc28915a0c9277e35d68ff7fe0230069edece0a6b7cd729a5e57bd620d137577a10a79410b74761c4c2db7ae3990845efd1d8e8bcb479fbcf23a82f7a14c70302047c435bb500683066023100a95d8326995a598bb4602eca55090f710c90dc34e929b7c3f1d5954ebb2fcd7f789e5edac5559468a2661230f24e2b84023100dcfc55193cd35f3c7df81ff05352985012158a7e26297b75a84f9c8fe75314bc2e71e1dd51988726f715c299e4a357b80302047c435bb500683066023100bffbc8367b8e39bc2f99ec3e7db6159cbff38258d296cc7548e45925f5e7b78648ca094eb2e2e30f6324478157f3ad3c023100ff254804ebfee7a09498eecfb9c0173afc6d15c11853ca9f3deea81f2b23864e6a8a53698821b459c9cf74c35c3e96340302047c435bb50068306602310081ab966930279821d9544637a298b03f1362231789e33cdbb5a8ed7f84961f45b01b6caad734208ffccf10bf7818f0db023100f9b3bf43cef803b9eb11ade02b1ebfe890f750feff329b01e881b43fdb0e5ed2ad15d22d136f2559a8818037d876d5940302047c435bb5006730650231008075af116f4441f6143dedfe81c0d7b4e3203076628995473b2bc4f62a96130aacf55991e7a23a0e81b601b4b697c70d0230740b38657d93de3b4d1065e800a35eea9d21ea2e259b6903ce4d239bc6a09974af83c2856dd22f9dbaa70a94069844e60302047c435bb500673065023100d89519cca49ba47ca98bb2ab173e62be167fd292715b2a4140fbec046490a5563165c59b8b239ba6fec8ae2c87ad1b18023074bfa1609785fe1ab75b1d631f6614d455095cc23d7ee53dd98346f1b918204b5400b252b689e3cc93a5060c09d01aeb0302047c435bb50067306502307049517a288f67bcb24079746949aa5a07559b8dba8d6fcd8d530cf4fd1e405fca7eb0531c892a8123abc03cce55e7f60231008f0402d8aace135490dad191e1437bff353623ca94d3b20d3328480749942b61308e97d050d1965e101232a9d8ddc60f0302047c435bb500683066023100c1ed1d06443a1a3fa46bfa88e98649399c369bc05f964564275b6a9abd3d335270fbe8931fb2c010b8edd66109428ea8023100eb714d1997a646e2784a148d6de2514cfcb38f460dfb2664503f360a03e35a4efbf0f286c87465b384921cb66c507fd90302047c435bb500673065023056bfe9ba383e902d606677710411327a1674b9937969306948d5c1c84315b4fd92ebac159322ca4fe3378c7f8009b82f023100dfafd0c3c380be0c66651c17f636bcb70c2133e28d2bd22c1533c1f7bf06a8823e4cd04084c31fc7213d5b4a3ad1c75b0302047c435bb500683066023100c25523124e46e190bf3ca8e698d14fbe26f10c549c596b07558337904acd94820a7f105f53e3c5f737055c0e3dcc01e302310083af2c13b5e80c0e7938cd7fd03b5eed38b62a46f03ee01d878770b930f8b0709feae5a3ba62681fc169e6d07ce059610302047c435bb500673065023100e679942a011f7cbc15584d7caeb69a60be0ea6cd75dbabd64653a2b4fa0a6be49525d9fb8c3e9b660f5d3eb8ae361e92023054ba49e2b0834cecef5c06cfa96be5453f3942415c7ddc3f34db9bcb3a11355bb0b81a7faca3302f5a68acddece631d90302047c435bb500663064023075443785c342a21b9c2f9ca34ed792d9b8961edcd66c93fb77348593d6bb08847ec26ef00a514642f31bd5df8037e26e02301ccb14332c70087867c948bca6772c474f10e38a54d6f9a0efeca87f7d012ad8df7b67551dbbb8c6154f5953b4e713210302047c435bb500683066023100ce064ac8735866894683de1f510998dd90d6a04c2f253bc4f442794bc4f7e5cce394795fcf6a1069c9623d359c900899023100b0b903be12c39dbafef05a206b1868e75ec9a43ebd36d399e9c693577bbd21d06ec47240e1d253c9295196cd779bcc3e0302047c435bb500673065023100dbecb139892021a37ff00598a15d7af935004309a65f7016ee5359c6deca402cd361166a8b1684a9b6417abadfb4323c02301105a61328852f791192fb63621264e1f5f1d8685a668b7ff07eb3009228f32518e7d8d8bb6ff318f45a63eda0567f450302047c435bb500673065023100a79dd17e56ded74b1b5e6de8f32a63d631b5f842660974a499b6c4c5358fe5dbef21b540bfac76413b92f62cd7c998b302305afef4a5ff28c819a8b3a02aa52b02a6a63bea1c7acfbedcbd0d757222368ebb1160738d70f31e1b7a48644b4c2595870302047c435bb500663064023004da05e6ff63181c3894957877c21bebb0e8f0a29d2c1c86809dea13839faed06813c4cf14d090c7cf30f3ac720d11630230098d7627cb55a2664274893003121793bef28e7fc1fdba0d29bbec6d835e66aada79bdf1ab715c3020828f8da4b3b22a0302047c435bb50066306402303b048858e8415a60b54b1cec403b156d72753c48cf50800b444e5c3ea1c6933fb42ef770ecc9fb959842b29609ac921d0230507364093b12888f981e9662ae2ec9ccc3a4517c45e38ba63fe162942ac19c38f1af33ca4a97344f805c6b54739719b00302047c435bb500673065023005f7ebe9a61f64e33c6ec6770c809d6ee55dcc1aac77b920499fefeebf986ffd9ead5532c057d7e16655cae2177c285c023100b641542d981f4fdca6a72fc4a96a1115a7ed7fa8646d1bd8a0f0c4feb7d4e3966915b6ab0b5c88a9f9bc829651c2825f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230160186195dc120f47e0db8d2cb1b61c96dde83dd501c32e516acba5d75bd2e6df412639f7c65e4113deb657d72e700e8023100d84a2309815be34803fe537ef068e4bcb007c04b42a16f3f3496b9dab83c3e79f6a130b773d52afd0c965a6dc60e8bdd0302047c435bb500673065023078086e51931d8ae4b32815554c200922767cb0d6b354d24151c4eb9d6d64325ac7e4488a000c96a62c578d221bb0b3b0023100bbeb72ab407497efc35388f2c8f38e17efc5a1cf68bffcb386a4887ffd61bfe3e310ca8cf0883e4f2b1f9f215507be970302047c435bb500673065023100b49464cfd74f190e06af4793fe0f61f627054166d17717a491e6e082d4b557ba4d49d403c16178bdf2e1385d365f407b023072092e1e6531788f03e00f324baf6e81477b391b09e03b0360278ee2f7794f2f0a1137515ca4b12cda3925cd1cac3ae40302047c435bb500673065023100e91cfc9924c70250d5c33f0d986b5758ad2c5cf5a19738a75eb6cd50347c3a0d780f0033ebd541676d29753422296408023009f619fce465caf27727598eb396f0b18a3c1b3a01b55493a9255956f6839518275a425b4b73c72981b398d5f3b163b00302047c435bb50066306402300ce45dd8fc08297d7dbeecd5ebc8538ca5cbb16530c6bd37f9770019367c0bbbcb6b7836db52f70e08d15138547c777902301fd732690ca1160a249806f729692282b5862f594075b18dbe3d900ee022da13ded3efc7dc54ab11d921354894bb2e540302047c435bb5006730650230663cd630233010ee558f0599136cc7d77c071a80e7a9758e8842601208816d82621c34f1ffa2772a6f9cd5fce57d10c9023100b81d03bc14b0879351bf42f035e1d9b75985f59afbc476ba9dcf69ace8b3b2693e58ea4b7dd2d7f5b98ad81eb24ab9ec0302047c435bb50066306402300915404d435924d005a7b5388f8546116f93490707cd337cb43b1aef42f73ea12bf8c1db5d40f461534e9f2964008f3102307e065d544d1b513d4c97ec9f1e91a122f38a5f5b44f26d2d354de088e7b468f0b8d39e866076bc5a67c79813bd021e4f0302047c435bb500663064023044fa21857f7c667bc4a8fbc92fbe3ef240a125f1199e54c3af6e80e381762afffc661ec906c2f17aa7d98d385e04af1d02302398bcd7c5be9058e8c70e9cd588c7da8c2a3321fcc0b81ee9d6a1d9e1176a8c0c2bd61e796440c4b2d1f94d16a94b140302047c435bb500683066023100f98c1dc62384351835b37e7d8575bfefc4e63ce6fa882bcd4a29cdcc97b08cf1db97d9403e8308a684829c4999e5faf5023100cc28c0e15fc10149ff25ec6c5ac101046d7de75ebcd19648333abcb8c91a98e403e05817c17fcbb5df6f78d4fb9ba3460302047c435bb500673065023100a903801f86aaa46e97a52cd81a0e32ae4b45fff3d4b53e42f66c7d0bb93d6acd0e23d24bcedb5f4d6f1fcdf1efba604b023014c93a7b38c657ee5a32707783cc2de86bb5b502dfa59d3b4bbd36ed3c2e3a761cd16c79b034408437ea8b92d0f986f30302047c435bb50067306502306bce1f3ec3b6335a69caef472d5d499b17ebe2594c2e8871023f183ad7daff10fca4d7e2abdd24eaf7462b4443546889023100e3441ff4bdf8625460e4efe4a79831270d081eb2a498ffe7dd8343a8e1368c047e9d63243084b24d8b7308a5972fe92b0302047c435bb500683066023100e88e7b804470ae1f3f6e84f4cca4d7a40e364aeeb0c24f4e33db2658779cfd1da2ab9dfa6d5f7879d1a33488e67ac8dd0231008a5b3cd3bc85c1015fe81228d725cdf2924b42ba05c85c19e8afdb1baf27fb89db3ad2c6b612e9d6f27f141ccaac2a390302047c435bb50066306402303d6ccd94e3cae9a3f8d2c2f84998346bb7d056f99a3ad59a25c9e02709ff069de5221d26fbf34c3b4587f146c09d0100023041795326e4419f59617329e65f729260764e8bef81e61e5fdef2136cec3502fff86b0566ac9d56698205f42c95218f320302047c435bb500673065023072956120bc8952a2b9b78e307013e546a606d3f9f7609afcd3aa1f2c8f28df9140505fc81de9cfcbc51c56cb4dda9baf023100ba6d6db36b57eac64c0bf54812f9fcea611386b6fee46571cd8c9a2e9c4bd4550796766e13e4e2db3e26109eb9bed9560302047c435bb50067306502303f7fda35edaab780001ab725112828d37300797d9f7b2c132b30ab8ef5c00c742d6c7e215fd403f7686a5c61a786d95e0231008c468c10b6ecf1064fe2273a039cd70ba75bd267945c2353bbbccd03e27c6ff8b4d7519bb44363c0702cededc1456d550302047c435bb500663064023028beb8a654201287c91f5a35c85ca99005ec29a1840f793cf7cd966486b31292ed0fe76f23b08c8a71aa020aab534c4e023078390ca2b9ebb808aaf976e4398f650eab268ebc44fb8db3638125ff403810a5e216c83b615703f37ee2b104afd012140302047c435bb500683066023100f0d3547f43da64f2c92f9a77b066cf2ea07da5d058cc8152190c31bc73c4ae4567eee35a58a145899dc53fd2782430e90231009137c447d6578978f752f0430f9f7bb4a4b64eff60c737ed2923bc2585b79def4325b9ed8a783e4c56b5464ebbfd9d760302047c435bb500673065023100b4c0f899235b782a1ada14e6d5e895e9f07e94f9b668cdee7c76cb53984f4bbebf26b63c55ddfae3c7f62f60ff87eb9602300a908b056af91979759cd96f593b8c5d54fbf4c965105a83e503f1212d9ef04d62c7ea3945fe5ad09bca66cfe90f60b60302047c435bb500673065023100dde6e671cca431afadbd8e138cc11f496719b2aca7a4fa28cf8889e603a6a47e1f17ae72376b8d5a3842620a8d9c560d0230637e31be5372e53fbcfdfb4016435f2c954d7cd2a6d6443d1ef766e2aab2c345f9869c6f40777e48cc6bb11d2e1df3e90302047c435bb500673065023002761462f9bc7619eb610d373116d8881782530f9d2db3e64adda31bef5e98c9fdfb3749a63f59b41eb53825154d3f6b023100f678d940cb3e7a32f78995087a757f353060fc71c8274753c140471d0023b56367f8cef2abbbe0f7d8ae57ee164f624d0302047c435bb5006830660231009ed7ccf93a4b468a0843a2a5e74850b11ef3d462a2133b2ded6a35e54058be0a2303890bb75ec974bbd89e1be8d95f74023100c49ebba93dd1fa9c531e59646c2494c8108086365c1a9323a40064703a67f3624d2b0b00523a797881b6fd2cb2b1cb4f0302047c435bb500683066023100a45f2de6560a13f735a0e4ee540ad4f865a05dd12fa5caaaadb34d5bbbb44be9a3cd6829c5676c266c58aa27b3103595023100e862c6a632ec0d5a53d16ddb0e4800ffca2cffda7502c9a0fd2ad223948341821e321fda741f9e1569067bae9a6e1f0d0302047c435bb500673065023100ea6b24adf13760c4634e50113b44e0d94060fe500bec2e129263ba6fd630bd4c45002bd9c5566d33f8592c70beb6365202302321d88d9e69017959cb05978e197f5b99b9c5dc9c0f246ef943e6c2d2623a32d875713763c8c95dcca84b313f25ff2a0302047c435bb500663064023018667ccdc476b4f0a3a1648ea231f4ad7d7bedac85f3b1306c2d262e6d4563316c97a749b7e2c73a316096498d703f1c02302afc9e294ed730d203b8384651630793632f9725a22939645191d3b98e4cc4e5378ce9c4300df08cedf889b1a36af5d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023019b69d71126b4fe2562a3670787c560443ddc381537d78166e1949678f91f15b45396c878dde2afec706f3859c1c661c023100b07de5b1bf42ad89ef6e699da6c2c438bfc8382be8ba145b858c747baacebb099ba0d8f70b34cc8788b15ce5c5d9f0820302047c435bb500673065023100d994eace968411644167a64a84350f0d1ef48b1ec3fda8671ff1bd41b1af28c557c9d1db02b1b6be6d63341b7837b2d3023039ae68af3c9cd03cb89e7addbb96fa0d6ae73a9d307e140e6ea1e4cf20e27f2a80b2979a7918ff0523694a1904a732c10302047c435bb50066306402300cb8ff39d6f791fc1d29b40a0d4be25445b4a3df1625feef591d8a173890246a70ca7d2b3b5aeefb40296c90497d23ee02302479c672911659ad6f844f1f864848d7660d7696124409e53cce7f0f109cdc34ff898605a62b970868db1d54189cfee60302047c435bb500673065023100c4b7d5e93894b664a73a93dd06a6660b79ece256aaf794124ecfe36a88e43f80bf66b8d6581dbe1e507d7cc8dc403e0502307b75acfd293c1b998cdac29c4c1cc92b2d0692e6bd82f7fd6981fb2f56dadcaa2c89a8aa19bf4fcde411cc22e4af4e170302047c435bb500663064023000f3ca4c40ccfe5e441110beeac6a2f15090274fc2852419cba5b52ae1c80c3e84c4c8af19313841f9ecc974d4ece28a02303d95be4478d983cb9a876ea1d78204ee44ee45e235e8f4bd1693d56702393a7556b4897728bd60e2bd7884632d22e4cf0302047c435bb50067306502310099119dabed63247751c08c44a41fa5e5401477b7bbdabf948ed42a0d1da4799f90c10a28aa1cceca04484ac65b647dd6023007dbd043a54fdda21ee655a8e6df96cb6e7bb7002c6a3dbfbb15fd3711bbe24a4804480605cacd8ec276ff4b71d498eb0302047c435bb500673065023011eb371862fc498da0dcc6da95bfcc6aa665f7b49339d5ed10aa8b4cf1cfe5b4a8a3c46c7dbcecb9461cc0820d625ba3023100b863a1127a50f08d76163fb983a53a2aae26e55b60467b70f1e35742768b156c1cfdca3aa4f065bc6e455401b94fa0620302047c435bb5006730650230420dcbe1cd45fa3ff41cfcb5202dbb86e533113609182ea4a87f33e20fc5e493373b09d7daab757ba6a326d19e903b39023100e08a749e0cde201a2221857c72c113b8e400a9f501d2852087b5513bfddfb715bb103b1916b2219fc8c56ba00a18b53a0302047c435bb50067306502302a0e3a1153d8ca080022e5dbde6f6ee5a453eb6770a5d1054480f270dcc1b049892c08bb434410099b3a34985e78c6f7023100d220c888fd4177d8e7c71fb3888b1ada993b5b8965c6965c324b49024b4991b0de7e420a54dfe8d1563e882d8ee96a1b0302047c435bb500683066023100fb334153504add0e7f7bfcc66b76e26f2a09197cfc8242a9e6d8fd7cfe1764c93d3d3986ca996b23b2a6cead6d06fc96023100c17cfdbf1d3497f2f7cc45c97a0545be08d533602311aa44352f85d81d85d8da2327acfca01508d15b47aa13e505e96f0302047c435bb5006730650230513d15fc1ab9e27737348a3e9ba1f6b8926825b0e985a5767a3f2ada704d040f8cc304e3688ca9c72df3aecd194315960231008a358d63d7b7fea0c670d34cd79a480014b0fdc105853282974d3989c9c49d31384f7c60762fceee0b408a01922e9f6f0302047c435bb50066306402301d885ee0bbe3c6393e6f0c7763162efac2845f063f4edb5ad91eb9b0565e2dfe0738779d1d00653718654009cb110cdb023048ae7979b8dcfbd8b7aa1afa958c76d17ee69f663c82391a54bbfb3a9e9bc5d5bb08c4ef65b3600c7fa20273ab7ed3e80302047c435bb500673065023100c1574cb3f6fffbe9e3bf061feaff710e3757a6160c12d76e779d16ba64e038e3483d4270dd363a5fad3f774dfa1b047d023003fcc7945ca35bb17bb6efd12d8abcbee93c34b32da695e01e486b3e63f74dbd04b2b7e4a855ee1dd57bc6305bf107320302047c435bb500673065023030a27585a9b3f3a3b42329256816904deec4846db055e4606cd2e08d77e66b76fbd3631d7f3f541fa657ab7bf8022e5a02310091a33903e9e91d90bef320abec33427c29965a347abece8d4147e615aa32b24926cf322d76d5c47822abe2fa50d6c6d10302047c435bb5006730650230763bb5db703d33cbb1670d346c071053e17534dcc47877e2c986e790a3c368e62ac7f79d34924ba1fe077cce62edd143023100a07d530773012550f0c5bb17fad47cf9a34f98f5ecc4952a78b97645843ca353aab10448e0cb258a19b9de0a1c1538760302047c435bb500663064023033ba822fa62fb012209fb1f05512f988f42ff9c8327d5d7d8e7a511c7c9d51011756383fd28abfb6a0b38115e25c8f3402304985a40b762bf83c8c076d6d80d1a305de4be43b8ecda222eaa49283927772cec6a8424707209752f18ad9fcea4e0e820302047c435bb500673065023011d13ad9ea0eb6633a1ac51b8ad7e6a60cf05b31fe04ac8a7d0a118aee6049d4841f4151f177fca6888a1e5c70eba91a023100bc8b4986290a1871001d7f9bafaa63b3e463e87efefe894f78a65c6548a17dcaac74575fbed6ad914bcc708e6fbfa27e0302047c435bb5006730650231009ba46052659a2878d8aeb5541f7f0285d0fb815b016e453c2a119a79ad5bc17466ad4704954ebb89a8e1739ba4cabc80023039648265faf6943bcfaf7598da0e8cee91bebaa4c1ce88548fe9bdccb886d03fa1cacad22778ae0ff3353ef7dc7fabc00302047c435bb50066306402303124c7046af89df4eff9ab7775c4d84ca605510859ee2f53819ab5fdb0eb2cacb5dec3f95b4f3903265dcbf8bcbca97c023024c7d92d95894c555ee2c253dc9c2f4050180bf30e3e33ade8d2a50d873fa2d9f805fee3f3c134063ba838244a15f1800302047c435bb5006830660231009816483925a189748bfbbccd0f72953bd94203aa4d6351747f51c8cbec140f778b4dd96e70cba4fd46c1eda3ce893a07023100b8b2603627730bc41474dc1254d4108c138ecda45e27f69608e6d5c48d8b7a20399f7794d037722439d861703526f3960302047c435bb5006830660231008be125714245bd8c64902d28878dd601cbb2e243184aeed691514f9dee1b3aa35d44686a60aeddef562875b6995c5c9a023100c223dd07e1400931a0ec1db86a6cbe77863ccc59f5b5bfa9495e6eec4c01d546fb09eeb09fa921ad8c0d3f7c1a2b3f050302047c435bb500663064023039dfa2cc59e62e5c779bcdce1ebcb488bac9dc2e8bc3ca194919bdc19fca2f620a3c94dc32d2b9614e5da976e4fd8768023051d2fdcf482558c37f0984e02c3f3d3aed7d0a8cdba0dee1b6f882e5dafa920b17ab7c3337ff0d2ce38f228b98d50c100302047c435bb500663064023033b471b9431ab0dba75c1471e51f0032c0765d7e0313cba876be6698d43c4c62ce64b22abaf7c2996b80b16c1ac5fb4602300a265f2e49b05c6c89196f4574eee10b8f41cc13dee0fdf517229a0aa657663a0b1a47159286fec2e5a0a361b6725c1a0302047c435bb500673065023100ff07631bf45f7caa92d3173a5e78402515c5dbb4c3f3398356d009b5450df716d84e7d57f79f259f1137e108dc0ad93c0230450e4dd923b2475a8e4d6f1a75771d583c0423eafd68e2a79e987043816a6bde7979c0b8f13b78a877b94e35267f02b10302047c435bb5006830660231009110aba191c9c5c09388f0ccfb631a4a8ecdf439bc1c55b9848c7a1b0d8ae884ac73325ab166b434a9ac7ec41b93d628023100f31ebc72deacacd6ca893153c3eba1c627c46107184810d82c58a01b4787f2034df5325ae0aeeb619c111be34e33e4250302047c435bb500673065023040bcbefeeb249ddc8c5a4f8eeeee14483428cdcdfc1e5ae1a50d6c62b53d982403302999d39bc076e1af273304a503ba023100e2716403dfe6125fc1b9936a227f100411a37c454f044140d71b8cca6e110f4975608ebe9b2f79172e86f8ba3047762f0302047c435bb500683066023100a0c34979204b76a7d9506315591003a651573146faf704bcb2538111e263a0e035fb576647187ac27bd5f8463546bb48023100c2f5c6d6ac93549c0935c940b4b148d37ccd41bd0a091c9f3f7831cbdd9ea80c5a2fa5eb7a7e23d237579d6e8ccf1a6b0302047c435bb500673065023100ba26430273df246c6f5ae32b76a98c6f0699aedf4ff49e063cbf78b56ee084cad91c9a6a311ca6250c8f3bd557c0b6d6023002b0447d89b3761fb226e057f96f6ea4d28d3e2e94e198cc9e06d300b8d74885e7dcb21eb7163d22cf1c0d5b91a57a300302047c435bb5006730650231008f184937bed1cf71d16f7a6cea83ec9c9d19e104a4524fde3adf769f8154a1bd74c333c2a632d35a030cf2c6be9e6fdd02301f1f6b8dfdf060e0592ff582e0e816f076f476a32efcaeccd28ebc9f561cef5ca27db03d9270af4a682cb651f0a8d4770302047c435bb50066306402307f488b8ad21854bb6a7efa52d92524da70cb10eb9994ed5022ac7e54fa84b8b9404315b2cbe9f24e8cf67abf0d17fbdf023061f5b79423fdd7c4e69e62b470c7a68e1457e62701591d9e41d074c72fdc4cc5e202ac9ff062a86dff98b65c9d9676ae0302047c435bb500673065023100c66cc5e5726a399fbd3540aec6c2829cede6960b5231741ece0e998dbd8009744e977942974be57c03fba8d45696f27202305873cd4ab4196334f442a23de74ea523f042cf4ef39f2388abf1a21a707199d14e3b7bcb4134e3cb5b397ccbde9937f70302047c435bb500663064023027825d02b7466c800bef9aecb12f679e782edd2f71a293965150bcf52ab4a4611ddfecdd983e003a1851078076d1397202300ead7ba59237995089db5f1ed6f9a5f06dfcb131e25f836b04bea18823a3686d484ffa18100bce80a6abbeb8a65df2ec0302047c435bb500673065023100b5503be5a37b3cd9ebb435b65d761c6ad446a45d756fad5556746509a901c0fcc1cc08bf881f8440965935891c939e3b02302c57f30bba7638b1e64cd43dd02a6c0d3613218966effcf9d9405df9697ce9be72291fac6b9b288db7e55a3329b63bc30302047c435bb50066306402303ce284ec8a9211043cfcf3678c8583a25d41ac91c9548204badce97eb5953bd6c03af6aaffd68a5c1f436d82dbd4919802305578e81a6c1da401ea849f6dadaf1cd32fed23d22d8f0f99b72b8fc980d2ae7bb7af0f3c6b3a2b9aa2ccdc5af1797de00302047c435bb5006830660231009cc9fdcce431d19ddf18112e5c9ecd049f2e73dabd81ad9190b40f29cf145783ceed51a1d54d6936d1a1f9f603f672af023100b8049ffb62a4234ca1e78080c552eefa7a63da52a3e0a4353c2e2a5a6cda7769cac7ee3f3aa289bf9b3d827485e259d20302047c435bb5006730650230597775e6d24a4471be0638095a4e08e9e7992bb95d9aceb8e83ffed59f8893aa7cbd30bcbc4daa9661854702959125cc023100ebcc984c7a35a077bd5a6c03b01cbf22d71d95bb6a19538e2cd978685c8f48a395ef82973cb88a2396f933cfbb9eb4820302047c435bb5006730650231009a8fa22f300caa5a114911c8d0f37773d8633ecbcdc3308c595da0975aa3e980ead7135104e08d1015ea2318492517f7023050a41294e30b7686cb31525828c7425c21e3049add82a30a41e83a5aef52ff65b8cc6b51eefc73907d2d232a186a99ca0302047c435bb500683066023100cf7c2312ba3e48065b7b08b3e67186512e4374a78a813e3260cf01079734452d128f1b0e1817d28f32bbdb18c58d517e023100ab357e8097738c91b02a4c4296866f3d1110131ff2cd05b308ae4ea7dc2294f744a10649132bc7bdc2fa13421c3800180302047c435bb5006730650230296b7901d05ad3fad99c1261f030b0e800f99406ae02ace6c6cf1c615f3c96d6b5e8ae4413acc001dd041ba1f21d06cc023100817c333e1262b05b97d52bdc6879ed79f2cdb51dc3c5f35e8f4097dc54e065303b1beb7642ef6e6907152154f20e396b0302047c435bb50067306502300227548a19fe48fdad670ca705ae515b51c6112b3b9a4214a5f36e8a50f8e93aa3dc7656fb7310898a49561de0a44acc023100c448b4042a7dc8f7697183baf928d1074a895b6f625d2351df66b4587b22cbefb4a3159d27cabd64a5f44b7860bc22630302047c435bb5006830660231008a1c2f54cf880930fb4b67e689c739b1fc5e8a5deb669451ff1263bab1f6e187fcaafdc82f83aaefbb0e22dc33ef23e4023100b71a3a2241dee0c630d30bad312ba901fdd80ca7dad332029eaa7afbdcbf865afd03d14e073956fc98c5e2e38ce2611a0302047c435bb50066306402301e512df21ebcf92e0af6177277e3a22860269290c50513d8a2e857c633444dfa536630f31f9d76a6c1d68825f5d669aa02303810bbc7a873b785a317a7efcbaee1a3ee8611e53f78c5ad1e337475b21a1db48c4c96e86fe70dcfc53b3d6e804645730302047c435bb50066306402303f64d9905063df3942f87bffcd388ff889c25eb5fd95afbc3492d788e4cf24870c30b6686b3a0efe3d29613468cf0c6b02304098f3534db937fee351b3af2748649f60ef288e52c6553aa2733529d969c6094f4f683a2c7e5dce2b376c61a15efd0e0302047c435bb50066306402300496281ca4d708fb91293ae1078dcfa148cbbdc4d90e901c03266f49d399883e3db2ed56dfbf61b7eb6f0b073d33004202306fd72f11155d10498d0ef160f1c3cc873e140f53308dd2e6b4e04002ba4737cc4f96220ad4d205e307c80c0deaf5a73d0302047c435bb5006630640230125f05bd1b5c3d280c758ad1eea126419cce904ba1d3f6134f2ef91f9136acb3e1473765c8a2f9e10ff96ca6423cb00b02305f4ea8fcb01bcb14af63ffaf3ef78b8c4837230c7f806296f48ad8abcea7eb758f0190d18fb331a5ff65a7da9238634f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310085186a68505778eee151e887d830cc08e653b71aebf3213a2286f2af0495374e53a6b3fcb006050370223155610d6b8f023008844a9dff69abcdca9081e91217f2e14e7265ed35d931c4c60b5936c8fab4763a145fe58e958a9b8a4c48d6286841ac0302047c435bb50066306402305051fa432701d6b9a4271b8d2f05242bef096e3042c667de02523a4f3e0109e2f94bb6efbebfbc901b92dbfd9e3e7c5c02302430d0c0a70e2f10fb5505a435801eedbbc45d668a658db5f9e690b27fc57c7f38f5335388c003c33d37dbceb8cb45a10302047c435bb50067306502305acfa426a1f6b610a3521c06a31192752e8f520ba62ea62f4abf8b2bd30ad0b7533335f8fb82fa652ba72c51102b5e65023100b165e5c605075cf369d998eb476e78f649a5f2231d83936de2e3919977824ce12643c59ac0a7de5409da9b58df50b1010302047c435bb500673065023100a0ad4a1c6cebb4d4c460a57657c545e870e8e7fdbdf0f7dd5f1b3d0a71d00e2cd4c7b8e1d6b90e8049c5fd98e9f0a1fc02302271b5fdc40d2aaf71d6cab64916634681ff68384e19253967945af021ce3823bbdc4855c6b3356c686e386db31ae0c20302047c435bb50067306502303091f260131188e8a07b889740d2c7b22e77f7b71053141b1475c3880aa8857289cc0821c141cda2c13469bc1366503e023100bd2252fb73fbdbdd089eedc737d40205b2399cd409c7eabe88b5b5f7deae1b9667293972d2988077bd4bcefe1e8cd1090302047c435bb500673065023052046f7e172102588c6d77e11c8ba0dd3ae6286ff77aa26c60d786157a1b8b7331a0874db2d49018c4c6219638ccdde4023100e2f530b2d931760afca40576134180d33e5591e493c8a57545d609223219699674507a111e3e1ddd70598f69db2901260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100906ceb64608100c3b97387da44f3b3d7692ac73a9d1b018687415e123d0e950a7832f2b6c6bb413ae01148e0a6aaaf1002301ef998dfb41f5909af4c479974462a8e99a375c7bb21f2efb4d8810164b89e3f4cc9494ee8628807686412762b35eb750302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c32b33a934c68a326a22cf9a46dc3b7123e6639d93cd96a23934dcaf5bc41379ad527037d6872de1d9e839f276d2cc2a02305b6ea9c8f3da8e34d272ff6ac1aa643159a2c3a8a3593adf6a371dc0a3beb3590f2667dd71bebbbf19a7c4fee47214b90302047c435bb500663064023068a576ee811e926194cc6991d27499d455c50db9f949eea48455021ebd22cfd7da99f8bbc049331dc4bed00b3e2b1cfc02307a02fba7044abca112d139e63777e2045811d43c79872bf88646f7fa21bc79a67e16db651ce9cdd26beb4655523ab0a40302047c435bb500683066023100c6a43a2363aed45a1c0293f85a7088a6999e8773e28c7d25c6091d9861a2a38cdb7d9859255c5759f3e70135e6281ef7023100f27a4c0a887a476dd039eea11e8d136e5dde40bb48d0a14ef4750dc16f72fa9269b64ac24b0d124f2d97ee2e6b72c4a80302047c435bb5006630640230467cc094b522d76fcdc59ccf669c2ba3beec75ef268147e1c1c8746baf818545859de8d7dd51bc687ef6809dd3bd0a5a02300652923bc8f3e69d93854442a19bd25220e05635dfe3fef6c1d98d290e96ce3b20ed6177d8756cfe5cec1cbfc74032e80302047c435bb50066306402303a0035657aa338e97b8a93abbe8dab7e026d5f0f2ede1bea8f402f998382a48120d87332605abb0fd660bc798d309509023072c794a47d529763d4a4951f8c906f9ab6514438b50983b009926e9fe0b3c96f10fa463feffccba1ac51a52cb21a65730302047c435bb50067306502310085a6991f6c95d05ab9607768a9de3a51ed0808ee489859cb16293702e76c4cce10d862a61e0fa22df477015ab492f1d9023029073a4579f825bf1892e845206bd73dd924a613c950b719520157da32c27740d87fe3fe22b8f4cfda53361c8e68abcc0302047c435bb500673065023100e403482f4e8091370bbd52ee3386b13d04c91df5084d91ebcf66a09c434f005cf9f040a18746b81b8e37e6b8d654ceb1023015e0561d7cdcd866f92a230ec98e8c8aff20f2918bf1280e95f7cafae3d25ac09bdbb0900acefc8e6a02776b2bbe88ec0302047c435bb500673065023100caeb52f5afa3e15003687e74d5da0ed6140b9ebf534ca2eebd34c0edecf4f48b60595a82d7abf96b9dee7a00cc0778c3023001a4a92643245825d1c0217e0314f8280f78493ffa44a9c77618b58b3fe231a79618be780f3423c044864e57ae0137750302047c435bb50067306502302208bc058d44533e3f9467e923af91a638baa9afa721255b74953136b7ce55864828565bd6a412738b7866b8db733b00023100f72413be64e17b9c2d01e50443d5bd129e6a4cdb34c9c960df58f065cc3f5741ff1e4e334310e32e6929f98c208343700302047c435bb5006730650231009912bee080b950ae42512f28fb34c05c8a857a5390e5a06590fb269958b77727106c7404b0ac3288832cff31a5313903023014d88dee9da94b0f1bcf0d898dc4169fa1babb236b9dc79eff8c081227c59a561b6435e56ab71aa5d907e4b94f66bedc0302047c435bb500673065023100f2cb40308cb53d1bacc12010395f17e559f45b39a18a24d90bb8338c126cab591934effa6c20fb959df28b741e090dc1023047672fa0471b4db6a678c1aa97aee249b7f7da7c42ce68b434f3a688e67f3958b44a033ff83a2e734f4ff6f90d0fccad0302047c435bb500673065023100ebdf357f870c8d1e3038952de3e1a00d217536dc4e786599f8133c340befaf679b4cedcb552d3f4a4445740638af668402306fd2ce91025923c2fb2bc7ba52d2e4960c89e5fda2738d3c193a862e5e13f082df91389716cd617d35a1330c60394cd90302047c435bb50067306502300ec030b467c2b21d8609ce0169d74e7556ea1d5c90af61c4022bf51671070643a4f1a39d52ef783c1ec1523d34187fc9023100bb28bea7deb86b1f2dedc1b1822aaedd7f30729a26b15678203d18af8170adbeb9a3588a42631ee8b7aee1d2b51b81ec0302047c435bb500663064023058ecc63ba1c1d4dcb67103e46d0f9cd59b0def63e7b7a41b9595db7f12386cea3271c28d190a8ce62840d1a8a5c74ccc0230544a92a7de1fd7a72e1d7efa7d2704f6dbec158c2a47a44331258c48ba1d4620feb0bbfdc34a0800bebaed67da1553d30302047c435bb50066306402300fb88c7e5b25f4c24098be5cc8d18166f5fbc38fd967a6d14fa206b323ba69b42a9653e38ffbf57e2708cc413c6b23b4023005638be7f1f1fc4c17d8421ea8a23236b3c589732e9d85b6cd534b58c402d814d8a8ead7221543a1889f49060ce0d9070302047c435bb500683066023100d248d9b5cb2ebf5fd7d67073f53dea62d6f0ab46ddb84879a8c93d74387c6598cc16064bee8dbea77f649e369798dfed023100ebe2c84229b02490de997c6cbea3737519ae0ac8cd20a178a3c32288a5f05cd73006f263b160486f2eb21bd68aa544af0302047c435bb500673065023100e5c6652e3069088bab5b7c60b5ff9837ff8c856657cc4426ffc8440fed43ec187c3d045b29472bbfaaa43ff38a9213b0023039bbfc80ad8196afa753db3e2e8ff4ce27b62d672ffaf670bd5de5ac16b61878dffd521561ce11492f542ab89d0c007b0302047c435bb5006830660231009dd59f7258cda8c992727f7aaa7cf0f98aaa3d417c24d9b2a6f6102091fa863de64fea8a895420daad47f7ac404d17260231009359cdf569833858baeea49898e4e9dd84e58d8144c939a35d38eaaa744b4ff2b949dbdf70bca7180e15da1f9a1005d00302047c435bb50066306402300a5761252b3ab1d27a5f685375764e558ae71f59235dd317999cb4ab7db7a1c9c5c7be4a22c7f92fc2041667e140129b023068fa4b6ae6fb8f141eddb330c4c83c311ea3a308128d762e294cd9f0ac545fddd2620e6e73c9398ee2b3f142a5fc86e30302047c435bb50066306402301382eeb691da073969ffd45005c052fd642648807ab2f4679add176f03707fa50cb43686589115ce95882dad7c800a580230665185fc264d145a48c59b83533f49667f88eb46ad86659375c749f96b9a500d8e0db219ba4788b5b25d497c1cb09cc50302047c435bb50067306502305cf7593e97b4b3e64051285ff02083e5fb9dd70d271596bd34c6a03650085601228ef9a00b3e12a10efc5e6ae40bd414023100ef124116a34dc2a8196f113c8d48d2d752197a6d3d7141fe031d81d6b737f04dcf03a6be184215903197d1cf44a112660302047c435bb500683066023100c20cc22d791bbf27c80d204bb0b4a954503c2dd65470a99ccb99b77ed52625c6794dc58073a5efb7f7bfbf19e62e856b023100fd3149c06b155a22f86c4ebfbc5e0042a74b2ad6620a433193d26932d56aed23e3605f0bfa6970a0d1531bfb4c74d3320302047c435bb50066306402300a6b1b353f448152ea07a9b24d8d990a6c06d9465be8dbd747886ab14004044cea2a59baddfb6a9642fda91103bb80b002301f85d03a880a68fc0c2488a4b3839aa0dc8f9af5c1dcc2a45876092fbb14eaa45ec2be99443a3f646e83797a3b98de2e0302047c435bb5006830660231009b53bd89dbadc1944140bafb0efff1b58c7e3dbda1c122a9a6fd80226bec29e69417785e9869d7b6ab958491f89bd34d023100c5cbd329a7844d8617810c0d6fb11098cb70c30d46a0cbe9b4c8eb844d1689ad2830c9b81772564db23101086b8ad8670302047c435bb500663064023073ef5651affe012f4f48f1f3fe2d245493e0cd4cbaa716cc64ba4eef294ce7bce651cc9e5ce05a6c90a4c008e01a500702303778f09fc6e32c44039cceef9254b0859eba17abc02548d42360ecc87a0719529df0dc114ca8a78e1c8bbe7b21e78aba0302047c435bb50066306402307a1be8c6f5016869829cd61bc2696a6f9b4ad25125b51e8515c6b1aefaa020f08dda83319a5d79a58b305e5e1764905202301bb5c1c07cb47cd21e03088881389e629ececc8c9be8890084738a34d2f07ca2bb40aa8e6ed53fa1dd149e4ad09cc7a80302047c435bb5006830660231009de8db27d431c6d32a62d9b3922bdf195a2bfc6f82c395ccab13e7d9f512a12448215e957afb0c3aec2fd234ba8bb59e023100f7e15f7f5eee5b5f110f14059ea1d7e4b0d2457411f2b438eed0a51fe0b369efd9d31809d32adc8de0e7d92c9adf10c60302047c435bb500673065023100fc9a81619027abfc95687a618da4a9e5c82eb1a4b772ed51a3b39c699b07f3236a80928728208a006bac19213f69260a023032961db256f2f9e8c6e321387a0f7198628c2206d2350e2f799d338914f9b69db4b5f23f3a6ad54154fb3005935acb950302047c435bb50066306402305a089f5bb2d7fa0acefd1e3fa530d3c5523f63c558436e1c3c3c180444c5e181c32bd96ed35916ea98f6457555f6b0ad023023759ea19eb0343e66c88266e83eacf190c0469686e7e74d44578ca63605476562b20e720ccf67a31dbc40b983fabacd0302047c435bb500673065023100e3994c95fa9641c617512e9272d4c44eb0713f99dc823048331ef60cb3136efdd0635657df85ba49b8e73142ed44895d02306878ecc28b7711f66994ad46e17aae078f999e14f05c8f0ab14358b896f30c162ed795b6e43a61e62f6d33ee0efbbe4b0302047c435bb50067306502305f1a3271a29c44d90889ebc921689fe7056cdb7a792b1571a123932697ba16255f894bcfcd1f926095fe3fe60a657ac30231008a8b8dc6bb33ab26809144e0f6e862744dd2eb041c52037145a392b4983782470f16855dac75aeef310d4d308aff40dc0302047c435bb5006730650230200968514c14667fa62ad381621879a43728977da89921b1090024499eae9cba72b550018745534df1f2d68067b9fe7f023100fbf424b9918596c16438902defec7669151a5cc4bd30890a97d505905094f5fb5247050344be6f801bdad7fff15134040302047c435bb50068306602310095c48221419a4b54372dfd4f75f517cf21fd8345fcf3e663168029030ee21114d89e854b04ffa82c85dc58084e27ac30023100fa3dd35d5c0a800e793ebde2b2781c8fc2f3ec8b1dc37a814c3b056a93636b7c3658ad7b25fc06664b8b69dbf1fee0350302047c435bb50067306502300a136bca88faf88a2ad5fb6d060bb4375f41697fc8d14bfef4181f493d1b2bcd9ce43ab4d478b88617b1e30b78f7e230023100d19e3e2a7a734eba1f49a5a4c165ce16194488a134252543bdfe51909c0afd3c770f2152274887ef84a06d00e0b9f29f0302047c435bb50067306502305ed7debfd1fc77d1d3f65a05c1f830fd875d7503709eb583b7859eafbb7cf2aabc87aa9ea39a81071a87643396e90d910231009aa4feda2e338c07a5e92dfe7c4a907660edc4b515597c4098f59da03abd0e0b1e64cbd8982010ad217b88cf0ffbe60f0302047c435bb500683066023100a23d131013616152f3289d2c70047d8b10fa626113176519327a4c50e18160a854e4f56fabf70bd9d346750dfe35aefb023100bd6f262ff19a12ebc6a7e72d2ef20abe75d598d79dc2c8d56f8e5402c59083529e912f9b968ce42bccfaa5a3a2ccfad70302047c435bb500673065023100fcc29f8197f507bb35a68a779311f20ed966a78716d252eac4ed3c637cf785b3c655b440dcdc0a3fcba746523aeca4b302304c3e2a4b5fa612e7ddfdd9f14709b377008fb366ed75f4a0bd988236123a684d26f792a3c15b14442fd006fd56001ade0302047c435bb50067306502307025b46abcd2c1455fd0e585f4aeacd270e8a40b2c7aeae4edea5845c3bdd0392f4bc2567d33ea9b1cc511d078336f60023100925ddc92e7a6b2c78275d3c5ab90a295920d65e7196e633f0b7a1674b4d19da18e35b33a873a1500c511de68c5f9dd430302047c435bb50066306402303af09edef431bffd8a171752cf76b58f4c76560b8595a51637410557cb0fe33fa818385643c7dbb60a3ca3f7bf4a39370230470e616bcf59cf2de475ab9c3fded0544035e3399e5565a0b388f3799657913625b064c8ebe904dc64570fe54c21122f0302047c435bb50066306402307cf734c7b3a8c5089fa44f0e6f2a1022339b64ee5ab772c2007323154b5a0781b317ffaca23904a95de653da4df8d24702302262a2babb82c394a3725cf985761a9a1786684f0fbec1ad42186add3db2fa2f24fa5c557f8d4a67832487d3b38902f20302047c435bb50067306502305b91ac1b9360d2ac92ecca98f6f13167090ce3bbc6307e75cc08d23d0389c612edabfc595a556d329dafc19f8a4b5e10023100a8cf9f62f324f18b2c72c1bf6b47d05b07e67cff4484c17ac873bc4487f222da32d98b297f51474dfa4155b78673ebec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023035397f79d3af1a27284fb384f253eec95c59874975ec88b5427b9b81b9ab465f5aa71d1526c419ea659e0a90db9e071d023100f40313d10f9d13ce88bcfa91e8a879cbbf3561db81f660b7fe2f99c48c93f11be375411e1908b9b03481d65024edce720302047c435bb500683066023100e6fde92b56e798fa9113985a3be2b7d7af140b78b1d15c8a1a992fa4f0f5bb20c4d774942400fec8b9727876fff9069b023100e48c6f03e9f27ccf6bb733497c7111409ce6b12d8c6056db76abb4975cafd6be5b57022ae66dc3b4e0120866963fd6af0302047c435bb500673065023100cefd8d6d3f357adf3ebc63de0f6c6ad97b917e658ccd2df0b46cdbc31a735469ee261ed652fadf45b3022c64af23a5310230349a6d1508b27a4dea1e905d20766643ae744fb994a652797271bd8fae554210d14b8463c5d28d46602871a5dd9308990302047c435bb50066306402305b4e232c55065e7c542258ccf1e46700b20b572162a56599e5ff5a3957cd8abd34f167fb7afa02362dd732884de80a0202301db62b106f530b7444705f3c78280c97f7221f723f6222823806e224be7c288438d38b77ee908d820b1f094cc384a5800302047c435bb500683066023100f7f63422ed8b32759b4ca6c1e0f2d26672bffbffffaff0b1b42fd60932d2d644b5b7b5c25e62c994d6cc20c137f8b965023100e82c36c5af07618795a1b1a08c8ccf73ffc308ba10bc12bdf60d9be090971827bd02589b1d67f128b6865123e171d9470302047c435bb500683066023100e45bb3f98e8f6151446bb57aad8f8922a11a510c4cba7499cba15cef8244ff86106d0c2998ee0899cf673f637caed12c023100b7dae02ad27ac353638885950cc472ae9e70f49722f10ae49dda3640eea4e1f0ebfa945e8293b8309284d54229dec4d10302047c435bb50066306402307b2d1d3aecee9e3b9295019502fb051b751bc6384f0d376226572f5f35da5b42569b4e49351507e7bdf98578f40fbf04023062bb2061df5042ff4aa5a81e28c63f58db0c2870e1d6d1a02f744eda4fd0cac430f4e6aedd7e14370c98d966e8d55a350302047c435bb50066306402307b637fca2148ff0f01a268130dcfebc631347e2855ef34f28efac1fbc4d179acaa438dffb6adcdaf69ede9c7e2e341d9023039a66386e0c2b20252174b6cbb13d291ec396cafddc96663912fbd21e7f9d032170c084ed97987258f04f457fb3465f90302047c435bb5006730650230236c71c54a5037042a3c25ba3df1f0a80710ab793b1cf7c35c246e8f149493481e72a2c0c9b1f695cf3db2cd94a790f2023100fa1c7b472513ca5a8a3b40bd8e5c4529615d058dfa03fcd01a601350820ad00bf99cac30ff298ecccab5bcda05cb45610302047c435bb500683066023100c1c90b7d549e46bfd72a99f9e871835c835cc7985d39619f4da1a69bafe18c1c233df2956f5d3129bd7ff3a8ef992834023100a89fe1a3c4575dcfb1b0907b0a4e0fc64bbc9092da92fdf1ed499e163d3aa030d4417aaea480036f6fcdfe6f0ad73c010302047c435bb500673065023075828e253d4950af4695cffd986e52f1cb10c12fe6581295f35e2a6b8012fe1d39b0acef86a5bbcbe3ecaef444048624023100f38bf7a26537a655559ccf7718073ca2e0688e19d13ccbeb4bc45bd3827b14acec571eff9dbf05d45fb4ec51a8d122f40302047c435bb500683066023100e9855a79959cbc69baa5596fec337001787eca6fcfb7a3bd1027416422d82a17e3b0565b008a71135b9b2ef0d8527a8f02310082d745aeca17747dad34acae606b187f7fe9ac06bebc68f86469ffea3812d9b65f5f7d4eca35bec864f4ac02a8f4730e0302047c435bb50067306502300dc0ed602a83dfa752f310a55edfec8c4e7c907618641de59df541d7d57b48e9cdd43da206ae2eef9a4e2cc0adcd5b41023100d1ad5653fc5cf6104dc04e1d964c6642b8cdc23a3e213ca5db1996c312c8e9e79fb62a490b8d8c40a71cd1b0d54b994e0302047c435bb5006630640230760cbbff85556d6454f26251f7522cf660cbef51bed14d6b541b66a88157a20556e4ea7f967b8e6c4b7d40604d287db802300e3fa36f5d6c596247a83d69017f52169d3bc48f4ee4f13eacd05416751ec2ffa4aeb6a4078ae8c60728380679dd55c40302047c435bb50067306502304407bdf622166176a44e7a188c56fb2604fab10b2b27439c7766723c0c9085658495b480b17331a561b8144fedbb1b03023100ffb74267ddf742644eda4c404c8ace40f3f89ac844369d77e3f8d32fb1f1cc4afe4cde93504900276ef8d337bbeeb8d80302047c435bb500683066023100950226f3b5e1a1691810eca15ef21fdb0b4cc3f855b4b7d895bd329dc627c0834e94e7d0ecf4b70acf513d85173c5fe1023100f83567c3359f73b4925e0407d55d16f55063dde824af3516920df8aa6fb9311662ee8dbaa50611d7998ad8ebe59854ba0302047c435bb500673065023100b3712264013bac0aa88aaf8705a534e2c0f399c73f907dbf3a0c04cf592c9bbb024d34ce05e239bfe960352c49aff0eb02303d66aed3211879298f17c92e73138f047af16be007ac0e9b1346e3d1b594ef3ef816ddc5ac57326a875f820e7ff10b1f0302047c435bb50068306602310099453146875fc4f764266e4ff0002e7d7fdd200465710fb728b385763052836869a5105df23ec839b75c297e3a3edc540231009ecda8cc020e5db84626577ac8a26b4541045dcba56a4d67584e7c00faa80489c8da3de03a650f3f9114a9ac1cf2659c0302047c435bb500673065023100beddcaace28c28e00a313ac182a4c8f5bf955ff8f0316fd9b391a674b93614523b944db6ac98492199d98dd915b116300230277a39994ed779b82aac3eda25b094b02aa74458d321dc3fbf7cd19d2bea273e362a1cc3c8e03db64588ee4364ef60e20302047c435bb500683066023100e5c1358c20d1fafed5886440d6f7641047cfd7ef90983be20bd11fe4e5af4b95753063e7f11c26106cb5c51bc2d9b337023100f2cd3419e20e37e5acdd6d2277a1f03132a4b355548dd27dc8e24074119d557729f209250e53f60128da75e1f20fdebd0302047c435bb500683066023100945271379f38a27790e79af2366e10b91e27067891e2d013fb1ddaf0044cc67698bd5103a68590be453782c8417e604702310096074cd60ee9713444e5e6eee7debae696817a019cc35b0c4b4d6e9611de90f48e44c6f80bb0e69a7220f2b9388ccc8b0302047c435bb500683066023100a6d85dc8ffe64b24520635c0564c01083b4c8f2fa288e26f57c9f1682db3461f96c9bda3032b91f5adcc4914787429a3023100f01eddd5eeaeb4bb12ecf803149cadcf97847d2cb2badef775b3b4b9f374f48e2fc3de30148aac7da31ec8cea981c8990302047c435bb5006630640230598d5861a4a509a57177a90a24ab20b6231d6290d488ef2992d55e9a928a91952f370d203afc351df93203b9619619f302303e544f7bb5832a98b589b82e052961ecbe3e57a306415e8deb70301dc911b4ce8fd6eefcad50166c729ce8e33f53cff70302047c435bb500673065023100bf4bef6e19451ecb3d3e637b600841651d5802f0965ae4b98ed9e99c88edefc44e893ab9a412a91a9b45df23ca6a5a9c02304f474894415565919f9f71e920a1d1ced2c23385a94eb7157fe433573f7df01a5cf7f59e9bbd22e84cbd79b4554e6d410302047c435bb50067306502310083d6004d097334e699f4e376b14c689d2021acce0df0d4b6151b9034da68a19eb235e8931face4be4fd4b0240ff061cd0230552b7718899f034ad5be45fd05c5a34db7c0930b10a6b36e209da97bbab37a6639017eaaa8f09728eaf12aa2eaa0f4370302047c435bb500673065023100f77cd0bf78d177f7b64c54360b930566333e2de727f28d3396c1d8a6da664998e7c08308a16f33e6a8646a6e22cf3902023056abd031bbdce9e3f0b733360e4902c0f071907ba2ed520490d0f6c04c90dc8da8c94951c5cbbf152d7b18eef5e62bf00302047c435bb500683066023100af53eca092339f249131cb0956a6ccef0c1f1d1ea9e835501ab907b0421790ed3a11742238e4af8c809701fada335293023100f3bf689b2dc293b6bbb726ca87448b558ce37c811e4933682878c0d670098790a08f6f794851a8b1a1e1580e9f37e5fa0302047c435bb500673065023100c2bdb74d28b3f6bcce9380c8433caff4c9429ede61f5fac1dd25a757aeb32a95e1b2b7885aa830be7d0c2e3fbac546f70230421f69c39d658eedfec4d54dfd1335b2709172ead794f83690e947e77f2cd0d6ee34b47717c64abc14a71e10d0a010150302047c435bb500673065023100fad8f740a77293f392c46bece44c9fea12eeb0469269ac06b728b5c770474140526279f5d24d2b9bad3af0798c6e6e8302305e61bee603d9e64365360d4934f0ddb814887d450240750ddde40ee69f634026dc3cb2c866550575a9dde890dcae2b510302047c435bb500673065023100e949b2c8d45b269cf888b2d3426f81a8f56bf421c67ff9735ece4b20732dad3cc65eba35b9a076141d9813645b159bdf02302472351d178b1b60d0c5c4ad289e62589e3e34080db3dcbde535cc9f134a89adbb79940ba9f572d130707a6dfb9c36df0302047c435bb5006730650230528539b96f494dbe0cf16f6087e9547272fa60b89ab3913b209b2d16ed0cbbd277aa357c72501f82e3820ea3355f9938023100bc8df30b3fbedd33871ec7b275eee0259c21c18bd55a1243240e1f82477ecfe2d7fada7d3503d9c56e5b711bcaca73690302047c435bb500673065023100de13bf82df9a96fc65a7affd9b7673334d794079f9bb41c752de892491a4b55a367a44043bab4c0aebf98872219ca9100230019620296c2725518cf004adcaaaa74fd436e9cbf821285d31aeec118452597f511bedb740f5b7b3db62e6deb5629e830302047c435bb500683066023100f0a24cf00cb4619bbe44b57e6370739d923c5d37e8482a6c2c2312e17893a374123f50b31e55a75f4b8c46a81b5e31dd0231008230467d7af4506066b0d6bc95d78aff99d86e43461751178e41192242579489a56771257b776c32b438ea2a4be85e020302047c435bb500673065023051d6059268d8b5199d51ba63418a37158bbb81ff440018d0bea152680e5e50b2760d6b70d61cccaf82e1e2726207f72f023100a486fe87d6351402e6017fa7a7cf79985028246447d2bf3f4790d47dba1cf033d54e3d0ea992da5881489aadc49578d20302047c435bb50067306502300dc7e936cdc24ebdcea3ddde935dec6018825ab62350a5ee44838ee012d37742aef9b0d0d00ca07306d11aa703ba622a023100a507378a8e72a4d883b1fdecf3f9ce227ac3b6f3cae83d0dccb1f74bb9719cd61695a08b50a3f05a4012502b3cf3d9eb0302047c435bb500673065023100ca9ca15e0cdd022eba81cc313eae5d6f50da594826bf72d44b60bf2a0dc70da3d37638e0740a6d404e6c6b71b0588df2023068219d7c20a4a7fa0ec9691f8f9c0230823203b99c596e9d58b63ec5f3dee0492ae2872b3e162c7b0c3113b77fbd2efd0302047c435bb500663064023004a869ab0e2810d8647c0ff819f65cdd9ee020bc4725776ac010128bfeab68435c0a266a5aff16305cc871e9bccd92ba0230020d7a195e4df3593ca3da3193ab7b59fdbbefccfa1ab5f9e0c065a45f3d92718f68f4c2f423d336b8f2df21db8d15580302047c435bb500683066023100aa68a409c06a02644374febf2c95470706c05d225479a5515fe09bc2d2a4b8a23ee300d44544384b896dcd085e9859af023100b947430f875dba584f33438fcd89246dc92c7586e99c656ce2c5893defe9a2b9dca410d8225157c11c447c3e47972e970302047c435bb500673065023100d20ad6d38e0cdb879802fbae6282848c95a5aed0b14b3f704833e7fccd02f9ee651cc4d3303a3007eaa8b8b2c125760402306b652d823af5557384fd7e348a3358d6c372e233f3c8cf7323c8cf12879df9d33dc12ddfd22fd9a11aa724099de8d8da0302047c435bb500673065023100a15a267aa220f61f30bb684769f7ad99e96b7e30f29c8120f33bb4105006480490cd83c6eff1ecef04dd067b57cc9dd0023061f9666323962327bb69db5f13c97104ef789ae81e59d0a6cdeb37ae12f30545db6f949ddabdc07909c3c024d4f4fabb0302047c435bb500673065023002c8c32ae1b9286971de4f857be1173754e6056bd8f4575607a520ad2992a45a040fe62ad3662e81ba35d519b69b9685023100aed5ae02d592cb4841c2bad5677956c0dda2a6b0a40856750918f5f3ac06c27a983ae4976021dbf3b94c1dd88aa6938b0302047c435bb50067306502306cfedf0075e686bf08922b15edd129821732d49006921a3310c524d351875e91a134d6a41328eb596bbec431eef115ed023100bc915dd0a949c3bf927ff80c79b7d393795a455ea12016d2faff6f9017dfa3a3b5e8ebd78279cae11dcbd4e1c842392b0302047c435bb500673065023100e9eba034660b9fd4ef735a97e9825eabcc4f429257c0b33ff1f2bfb4739b06184801e446f4bdd494dd5963ce2492919c02306690d90773daa1ea99465348dea6698bfab1e871fb87534fe2abecae2a3fbaafcd511fae500bbcdce208128f8ff29bcb0302047c435bb500663064023002c29c831685c42ea2e6199b2352664eb64fdec63269899c90b178643f3c8fbef53a447d0f55ef725f861037f4a3cdac0230374eb6a46cb523959cc3311720b6dd4acf1347a8fe4d32063aacc63d4d93e151dfc83be867ba5776f3a3d2264876d8150302047c435bb500683066023100a0dc86873dedc804f312b3c4f346f12b101ec406d6a5724a7742b2914e0a4b93289f101a0dbd0b79e081223bcbc747aa023100ea35ed21080e2d7601e5fdb7a9b8a27935112481a5b2e5da228946132c4aa5e45853e16bae9aeac26372c469c5e886e70302047c435bb500683066023100a1c93c90f53d6aa7271f1a480829a81fe4af3af00b0dd33350fc979f5a2f72d6330a50ee29b78803a7c4fa6ed99114db023100d4b7c42c93ba91779917c76ba44710be8bccaf3e6b74902b72dd8c8287f53584d5057278df3e1f26548a8dfed279379c0302047c435bb500673065023100ba9242d8b4c44bc74f94779e00893e34da8cfeff7310a3f55cb82d8137dff71863243d98ebc98da38b4779cb332ba04b023020718de46bb63726c90f264634848ef8fa96dba24edfeec2fda6bee1c69af49d54a0a4e53039cb21f42605e1545b503b0302047c435bb50066306402303918e30f81304ffa72432f4486af97811c99789d34a1bb7736f5a459821f8191ae10ee00128f74f08c3b331082c681c6023032276a33a6a131e64cad0c979eda06e46c859df011c6526d8d8646b800f488846be9ec8b175b10bb54c4e7ea1efe3d3a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008e2dad791f19e713af7ffd58503c52ae07e3dfcf1a305955735710e131a1de90fc1040064c6f94cf8ecc1065a8278e7102301193416c57a7fb84dac7595e20dc35074a5870c31dcb9feb4920794f499b36b1a7f0f69fc8d8612689313d3588c0dd540302047c435bb50067306502303307cce2fc75622b5be248eb5d074e75454dd5249cdafa17b5091348e71b362c456dbacb2c7440208948199fdbfd3d21023100b93587f5196bb8a5e7f24731b94393e68ae6c0e12c4529ad30477e596836579c38f41839a9068194dadbe38a6b2c4c000302047c435bb500683066023100a634bbc00653b4a64edee39e36f19d5f9df5eb76d9d7a5f5acf1cb4258d9881fcda1fde1d091dcaa8b780252c144a6ef02310099b22775abf356f1a819a296610d5e8f5d24a49a20aedfaf40f80d352c902ccaff38ac7ec358e2ce5be1fa89b74d39a90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bf66a01f252e1bded113b92d3594b8d7f56c5a891f4e5480da35e0bcc0c7c0aecf3c927908ca1363ad7aa799741f6439023100fc9a3df50175242b7ccb7cb5856382b2d6ca9379182532561dfbe0bd6ace61de9c70810e151d461ffdb87d4ee5fc6da80302047c435bb5006830660231009a09cc77d691e484e379d1fc899cebf22b1664682f018d269c34e0968078fd9013f6580e324f7debd7d228c5eafa5b87023100d24d35cf3134f5e60762c89d18a0f2eeb74f5f04321d1f9d43d13568cecf1a6f53ca264978bbaabf7168effdf3c2f6710302047c435bb500673065023074799b060752bec96764f2d1ec5e3e1d025af722f62d697a69c7e6ae827c67bd33ca1d82522106b79b1bac5f1fefb859023100ab140cb88cfc4da6b834774347f593543d5e1ffeb794b3252b397208b7f6f7c9cb33263bc3166bc9ca8f9f7f59df861e0302047c435bb500673065023040b2876f666fb906d4ed4e8d8f0e801a9073cbd0971bbdd05d252f4b6ff00c7a0c71a0e29d5321b4874fbf8f09e6debe023100d4db57ca91522efc658394ccd8a02a7cf2c6c55fb34d000780a13bb21cb5ab294be9711336ee5473bcced53019a135150302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100face4e401f5bd7899048dec846cfd0c5a209bbed02ba74833e525f843ed3c3fc726276713bdbabb8e417c41754001533023100c0e433024e65862d4a2724c3178fda9a287130ae462c267af32dccb9fbb0e495a858cb51bd3f12bb848ff6c3d78c48020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023027a24b76a92163d2b1fa5aa172e7b0a3c80e6723630c1e859163654402c777f1a4a402bda6fe905b408c4ad7f087a6a402310086f288e9a9169aeb6f3dd2937eeb5b0fc7b8528df0f944b101e74c28b7941f97629c414accffbe5d5bfc27f1a64e4c670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023006ad3d6603b0ee8b25e43eff87e1a5e31a53d7d8a6d60d1cd2b027fb261369746b9c1819eab58ae1a92d2b0aa61b5d0b02310087b2a48a3f093a83ee761f167382be638b81a2a9fbafc39136fa6fb9a1cd44da03e75740ce730a69ab2e79df22418d7d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300de6eb3194c9d46b040c9784c90110c593587047303fee6e2ac63ff2b85b94b123a9f36b963b119df5cc6219d73047d0023069eb1d2067092527d1f8e056ccd68132cbe1f291a2f785fbf948bad0867769f259bcf0d13a4c0246d72d17dec83ff36e0302047c435bb50067306502302f84498ad420bd930892e17b9a39a99c5cd50603199f799f34eec25350f444d89f1f8c972b01ffb1fb35f4a595b44c31023100aaa7f64149a6c427b1767fb52603d8a4ac6ac63ae7015639d4465a3c8a03495deb044027b558d4e7d34b616504ba29a00302047c435bb500663064023078b1f9cc985ad72d5b66e1bdbc2ff88ad7df0aa06f0fda85f5974c0d9a7da191c09ce52ca9e66193656e95f2d3a0d5bf023071a1432b40e545c10cb6da96a9455ad8d7561268c05b689273621151a3104da91ebf472d9ce5658f26e2f293c25a39540302047c435bb50066306402304fdf9c6b0d5bb93b7faadc5904f14a84ae08230df0cb02363418fb47f744f2a831dcf2b60d582e4ccb9ebe9de522a2be02303250d2c67be5e6488c6da7daeba1e6f728d0fd02513db09e922cbbc3e236d1da6ceb9eb429da394d6f6796797c740ec60302047c435bb500673065023049dc61c0c21d3237002b1e3fa6b5da72e5ff245b8a53ae87a291940919e981af78f40aef1808631fecba455ec9ddf9cb023100ae27a792dfd738466e3c21127c8054f288098e99d493ca840a6dd498f5da5c1491a2b1601f9a29429506885b01d21bc20302047c435bb5006830660231009507ab381c2ce271e0bdecb92b91e156212646a8b509e3a2fa51f35b62766efd2eef7c5298a093fc6d8df09a44e32ce5023100e51e23b121bbb053e69614e477d0ba5f1233701d4d4b8d4293900693f867fbf95339dbe8fb83bb887d64ffba286f43610302047c435bb500673065023100d1caae5dffe46c84f800ae80aaad593de0e79edf580a38cb4cb5e539b845ee8ef97d13814fd86c129e92c970d9b461c302303142a96e5e982cab3bfcc91e61a85c5e888a7bcf2c646122f72e4ab6c51dbadc7b361f401b0b1c0b5876690ba6cf09ae0302047c435bb500683066023100ed227ceed7a80f25e75600af9b059ed3731be1f1004d846163ff55e3fac55629445595d116e00ecccefdb6455ac12915023100ee2d811826f35514cf7336be6a2d740a16e41e8c465dc1e7d78c08167fe2ba0ae80d8664d08f8d704f569844a08d4f770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305d78297046cd612861cfc0e560328ece9748de412dd9436c3e1be66b3e8aa96e16ca4a506cd102dabffcc9dcba0f8c3d023100888394c5d85742747e7d5f7991802fb3e74155a77290ae7dfebd5951a093ae4f69deaf29de6ef26563823cad90acaf5a0302047c435bb500683066023100929848f29876770da7a2783629dddc7bad3fd798c307429a5d514117e41f59346d6c20a3ba16e13f213aa5aadc3cb396023100a8798a669e04047fef53b7d49f3fdfbf35dd71d7ee929d53f4f0c9362cccb4ce91d5a63255c6264c2a7e66e181fdb1270302047c435bb500683066023100b736329fe99cde4e389548d5be6084ef2c825fdd2d16ba54b18979f71f7e40a9ec5a9c4f6403aab90f23cf25d097ae89023100bfcb615be21eedcccb37a3e06c604ed270488187ccbaa9cb6bdf4dca70f2bcec9f102e2f35f61a3d9b86f6c18e427f6a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310082354b3f8756e711c79f5153202416b2a8434a9fed7020e66041fba934f5d7ea01a37748f6c2b976672ca78dabcef72402310094116b49b83bd6c7f28ec71a74e8323815bbac0b5dc2f30ea55db560073d4c4aa84ea463ea31bef9e2889472e76430970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ef9bd975ce2d4a85134af2304d820c47cd7a19ea64cfd184218ab855e36d8850794bbd99b9357edb0e2bbf04b5a36dd502305a6f61966f53faac4536cbc3c9761af6b69beb265bd1330fde8b90b7254dbb48a4d546d678a8b4c97a865a8b59f1b9ae0302047c435bb500673065023100c9ff2dc97c22b16eabe9a6fd040c725bf84208d748511cfd440b6efa54fc7efabe60a767a170ec16ec45f81a4d15f14d0230604b50bbe4cfd29153e8d7984faa0328448cd9a3df4d9718af63709a29722c1a58d02bea2cac9763bdfca0906a590b000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100be455cf97c65e2359e82e290590f6ff0b07651713aee94aedf5c00cba03b4f2debc93166ce7250d1e698aa15faaa79b9023100d18bd14b35b18906175f88e0b53be90ad69ebebf4e82c435c6ad91abf7602ad8a1c84ef6767f1f095d1678d88be176140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100861f299340017fbf0facb65220b3d244acab668b5300db195ae291e8a6f722974a3d6eaf583f835893b127c5d5faccff023100f44210c022a68ad73152dea6c1754ea01d7724a022c3c48aa362554b4213903a02571592acc51ef796f83e1db9813cd00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100902589d2954ea8d03dd0aba0f23ef075f327a54d572822533df815354a1aeab0d32ff84e8673b12a694fc860b9f75d67023040ae2538285c684239fd0fa284668a84489ebb35bba743f0d7652d787a93ad31dd1dbf6899e9d4a3e9692556e78d1bca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009cfb516b4e993a495aa0b88365afc3001750a8088da7d14f2b9faa70ce59e7643ce2f61d880402a8ec4649e85c73a973023100f1fab7a1abecaf4debffe97588b3f55d8d7533a93c6783af1304ffa1726f59cd461c770b76c54f92c2424c445f49979e0302047c435bb50067306502302c1cc2460246a3ebdc7a03880c44200db8d87b608d0d4c9e35a77f54edfb18a2aca6bc628210e35c08e3da68fa649f6f023100eee48b0d959556a6ddaedbea2bec535931d3aeb0652c430e2a21e5d319cffa73658044209700de9bc8fa732c305ce6800302047c435bb5006730650230730d59cdb3682b1cbcbe6b0f19d5c8c66df4f774c5fc13e9231b0c9443df0d5ffd283c98402cf3ebefd23b8616e5d8850231008887647c122d5619e46acff6a14536992c6652661ec49bacd947a110fef8651f05380c6a0acbeddce5c7a161cc94227a0302047c435bb500673065023030fecb02e21e69c36f19765c34012e664c660b534de3bdd931e10b09b52a32250885b7db699e625ee09b67d30054d119023100b9974fa6ecdb892d390fc18e5d3552b2b1284d3d60585231b5f9fb959b685612d0f2f6e9ca8add6ed9aaea64f2fa61c90302047c435bb500663064023011546d8f94213b30e85a65325b2e2737776613a263911aa5a48e85729d3c1252c1060d0278d10223da719023a51ca5b502304fae39cd58c5c22575d8f3beb2d91d168b594f3fccb6a4ee7d7ea64787c68e12b380385bbd4d95423a8306362f4ceda90302047c435bb5006730650230338efac78115b88c8cabcb6e9b5b76e7beb25668e1e1161216f3af7f85361f9ce75a41cd6e1da9fd139d4714d317d9dc0231009763937279c2c9664bb8a53eff973365d7b20f82d87671c373ad1c4e7301ba07dee5c3afae24045c09128b20f9dc3eda0302047c435bb500673065023052d0641c9b8b989e4494367d0a438004b79f5dc7545880becd49c8b3602b17aca4c1ff5a60ff6fc68de827e87f11c8d9023100b76b8b3b1a38f85bf7bfd5545c6eb333ab226dff156c0f115d880dcba2e434b9bd14661a771ef4bbff3b06b61469b8590302047c435bb500683066023100f4eefe7a59b3050c977eb9060447dc098076935aa3cd527490cabd436b88af66a1a4eda2647e6b166d6e4b3f054ef70602310096076abba23e1ac9b0a9488b03b4305d212b025db62ddd941e2b897e8e380b2229e618b4c0f7f8681ee94fbf2abc5d920302047c435bb500673065023100918f94603ff73144b98dfe147d7c01a21a6339cddee7557dae42904ec50dbc20e5fdca566e9359288537f7647fe155e202301a746442f49c16af7927af6a6cb039175dec0eb63ecea4f1801d5decf7cb6accfd125179b629a13a61bdbe959cb246e30302047c435bb500683066023100d44656600adb672a51171c3b2e24fa7653b7633540d7717875d743d8d1d8c14593c803437cb16fe157a1f4ee2a0769900231009cb073f50b9f1ab967ce06ab1a5d2660806d12c6d1d59958db3f5c2bc5f7483157ca219679706777b0acf3425432fbe80302047c435bb500673065023022e2b7e46116fe8019d5b699da575dbc3cf924e761efe62211f5c8b865fa3fbb4c67ebec0701284a50e87f4b9dee8831023100e3377e83c459c66385ca1b5e94524a93c5ed23d7b91981e59870cd11c96d3109e51cdc1345c54b0cec65f505e0fb224d0302047c435bb500673065023100d4e2eaae63ad42701e25dad7459027e075c9e5a395db08e84972fb8ecf8b92eb557b31f15c65e6b0f6fcfad17ddb8f3f02306735479e7299e6d5e0c271f57adbe7f319ab4dabbd351e99ed6cebf45ab20875c48fc56a78ac2c8f85f65199cd585d870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009ad915bc472fa9cf192f41e6100c64234f2700e6b7b2adff7a4208f5db430f96dae34b9e1de043efebef1da9a78af875023100ec29535aa3cdd2e56ac376aeb0ae9c3db6ebe5192248d3761e9ca8e8a15a902a082dfd60734ce51227cedad038f066ce0302047c435bb5006630640230017cb7de253313c3bbff2b9d23d823b0d366d0d5a245187988aad64c7da8148968ae39ead903a788ecf9e395b49a7a77023027ec29b75eb08e5eb5bc70bb14f80aa55049730eeac52bb65654a2ea97c5649fb2941b644493d99bd0e116863e28c4470302047c435bb500683066023100e8803b223f49e9e708faa9281a2f6a6259dce60884f498656630c5808aef69f57962af369ecad40d2fcddb6fcae6b6f0023100bf352cd00e4328c2c59276557f8a74a794025bafba37d3dd7c164feffc74658a1052fc39b0b409e67a79f5a5e723cc7b0302047c435bb500673065023004057c03c0ca5fc9cc38b1e854a5ee3a63506a3529f495d71b772a80270716a28d8b4a56fb3c752483fcd0deed38a219023100921f05cf7fb9b3fa2e75f2dc6f124e8d7d423b33f33571eadbeed76c8f4089c200a88045439f64a1cdb3037e5349a5140302047c435bb500663064023077cd023749fdf1f29437ba0837a81dfec7b65a1c147ba7ab1b6c53c5210499144a328a4fc392c9deba64ceaf1f7def6602301272318e7db0691bb8083dc399db0d537aa4894f3ae5ad675b1a3ac33c6ec88800a893da02e807ed07cf624c274738b10302047c435bb500673065023100b48d865ed39f6295a4c5d3367271f1507c4dfe9a80e541f8ec08e2ab7996d6e2c63ebe4607c0a0680b9b47c0479cbf0b0230793f62463a971c0ba24fc1f38a87e4b1dc1abd4c201d41d326a40b22c2ddf42e539d7b168ceda976a494d6f173be4d110302047c435bb500673065023100f3af5d9d67c79424afe25ceebea4d304d09832606c822c524104710c0c0c1eeef21970620ed4eb85c766be428c93570e02306571a5385c52e5823b4070de4a989cd0bd9c47f86d005bab70144d4724981fe10ef4c16dd908c53d4170d3a9085b00340302047c435bb500683066023100d4da04d00e5b0268ce99c6949f64472f5dd38d98e2efbdc263052e0326f1e80e6146ff17cf67520bfaf7b43daf92b339023100a27e48e25a44080fd3339c3acdda3e2307f14b073b9551f8eee84cbdc6530d2cee2387262fce35f609b74ecbf4100c570302047c435bb50066306402301b74894a17786f122d3aec7e65d4bc196629e395c31eae644121646b778897bab0b82362a2c2f61c8b108b1cdcc67da502302161c9d99756e7d5cd1c7a8319ca9649b1673ac5c07318c7a17684bb3f3f0082c10763d750e757d8c289a3007d67ae980302047c435bb500683066023100c06a92b62ea6da5015da0c2bee1751792ad6e068c9a79240e0622405e9aaaf1db9e8196c18d455dc4063a7ec3fc2c335023100a466db4446565a1fd3a021273b54c0848761f4ef371b2084c5638aa9b451b3a09d531baa86b26a80e7186371ba3683570302047c435bb500673065023100c7075721755d635cf45d937e871f3db57b6bbc9ea88d1580cdda6b37ae9527098f8d45744123095f37d0a1503bf1924a02304e6641644110177bee5132a3a28990d19f4ddf427c954b0d1bf7c3effe10be3948d9aab8e1d4d28f761755662e8168c50302047c435bb500683066023100a3d4c7171075e62c203686098ae74d79ae2afd9db4dd53e228ad6a3b92ec0fc7d9c02de04e45825a6c19bb81833b8ce6023100ede78241655d646c5e8a1057ce7bd4069ec5f0ee69a5636d7ce1356298d27c10b4ec693424cf4fbbf1722cc6397992160302047c435bb500673065023020ef35f2e9652317e6eb63f9668efc285a25a0adc770920d08322c17c3c9c73ba2e250a91ae593e52049657240952bbb023100c41a3f20e1349814dda045c4e455ee1049d40ee612edb80a7f50edf283d882c1f6cdf8b33e7eb42505f1ff4057f150db0302047c435bb50067306502302db6128a22746040b25aedec2e270fde7bead3ed896fec78de724963d74bd8a57d4366d96b9fe7cf315f0baf03b1329802310083bccbe57fcfa25d51a16b256d9016d0b73d9d27c551e2cc0f93e7955b16ef7bdcf49929a89bc4356ae3b29869429bd90302047c435bb50066306402300bdf2813df0d388ad445b62ef96811be4ffb2ad4bb1c7816bf60b93627f1a9f35efd21dc15fded1acdcdad29064abba4023018320b2cd8ad8bf5a8573dfa293ce5c450243fd180bd0bd36f75cf3d5fe016ea1340b7a2e1962b031c367223c94726f80302047c435bb50067306502301a3c77b43600ad5b6f341315731bb36c4b84d8539e7521459782687ac5aad8f2e168476aa9e3a35d4be53c703040057b023100b175297dd027af1aeddf66c545a2aa1d2eaf276a1c840ee13fe30b1d0d3fd316ffb1f9f679f6c2eab83e9d7b08f1d5c50302047c435bb5006830660231008dc8ca9f1bdbea7a1c8dcc4ebf6b6a499906744003ba42e5f2135afb76f7508f226cdc837a2978894a240d3c4c9e09d8023100f3a462160571007459815124db84dad87ae213ad74713170e133bc58c293b57b17136a8efb72c9b22fc550deea7fe9170302047c435bb500673065023100daa9f505165819879bbe5e0811293c9e94fcc07e7d376c1d22f8fb1c8ca249ae53bbe0482a602f1c0e0be3d9c2f5e55d02307f388c34c619b483ca0fced67dd7cdcfd9faf09c41440b6e6bcac6bc29b573b0e5538ebffde5f1eeb07ed03efc240ff00302047c435bb500673065023100a70c44241781b2841769fcad49f2e1e571da0b4460486913c269b9a25d90887583370f44c624c065d8096523f81b804c023041eb5852d3a0a120fbcee41d6e7a451298bdbe0756c34b468653a8ff568c8927119985e8788fd07f4adc392f069cc1e00302047c435bb500683066023100ce133b8acc7955037ecd645189308bf19d8479c2232d3603a6cc3da4e6900c70233d19d260608afde9654570424c9b5902310089fd312f3f3865add5a0fef119dc153ff53d62ea5a8e0d75075e63ab7fac13270a92eba6ef69f66221883b4732a972ea0302047c435bb500663064023057c08df1561975f79e0a43ef50053be29d1f1fc4f2032563931691c169610be3ae1ae0e7a4cc593a08796cf9197afa2e02303cb55babf1520c337efc61f7ff812a2045ab1e5e0aacb92e943edb1c74fcebdc502fc58e21565051334b8b0fc95f5f720302047c435bb50067306502305bd5d490e75dba4fb0ca4c896f6f075d0393587685d0cc7df638a9129faddc8c3ed0be7ad8f89ec8caba998611becaee023100b0f4debb326aa7db79fcc1608f1c1af12239b33c1c8c65612ef8b8e26c6e68a157eb8683862b90f6380edc2fcc2a11bc0302047c435bb500673065023077cda0fd1a92e0833d4c42a93d820aa386c065dbd156c882e00ff62840653351320ce3640d33d96fdd7973b5e4d0ddce023100802d94b56f93b9f1b62bb81009e89cf0124148c63a08e8b08b73e039b3a46a37df9c15a49bbc2feb8deac62678d549d00302047c435bb50067306502303b1d1dd34395e106325627fd63ca8c16ca9b8b8eba64443dc5ad379612f23993fd1f0313cc8c7975508bdd9c0f0023d7023100a28d699eeb3682d333ee7c23dbaf9a4c87cefd3f9d4c83779821425f587ce9d83dc810786b4a10b3133099586aa5ef4a0302047c435bb500673065023070ff98336883fa5cbe2933407c7d1e1aeb2c565546a4314873ca8f54ec8fca87214d56710cbd5d2c02d1a605d1807f26023100e72f14a1768bd692dae5d0ddef8e641991f35e789764fe846316b52481f87c67dd71ce9376400c3c1064732b8a4e3f2f0302047c435bb500683066023100b0219504260cb3450de5822b4f493e11e9b01d832a340388997d1dc680e6537dbb7872850323f20800d5a08fd962e78e023100d626af72c283cf1145ce3e767cd27ca66bbbdc2e74ac444cf08d9960c4d2a685c8fd4272b6e0be356501c82cc07cca4e0302047c435bb500683066023100fb09a4054b41bafd821d0684af9aa131e21f8f5d249b5701196d40cf6c580d433dbfce1e8fe21b695b4834de7002372a023100b822ba0a4e9f337dfa79cc14515196f2d489c766d53785f8e1755a1ef32de2a6403027bd1de36efa1cb144c36c84d05d0302047c435bb50067306502301c27bf3ef1c6454438f85768e5291eb8327c06917c1c42529014dc46738902713ad639f09e86614f463080ea83753e7d023100c9a2a1bc04346b9cf082a21593cbe3fb339415a8f01d801b51364a4389883125e8dfa3c4c392abdb25ff9f16f99a85af0302047c435bb500673065023009f1dca1d06bed0fc3deadd37db78150d9777331dcf8746c36c63eb1e05636226557bd45f1dad48e7f477913551842470231009459cefdfd14b3bc76fe61cb237a953c2680cf5d36471f91d328c3aaedc6ed3000654fb23071ba8be5759838e5f6958f0302047c435bb500673065023100ac63f7540a7a1c4828f4f0b5e43d2bce715acdabce04e58aff16bc22d6312c2baf09fef5910ed3b438c91613413b9b1802301426b4f2b9a4601fd6d90d75ab44da4a3123f8f9b3689fc629b29009bdc9acbef8c805e2b22460e853a4cc3111c74b190302047c435bb50067306502306fdf97ab0fbf50397354f3b95a6f6c16666064248d5a97fefa5423bbb95454cb3f72212748d5c31a6385f75ad7352dcf023100884e8dc87a5d502d68a9b926e4b75c2f922ebf9b62431a15a34116b2fdcdaf62505dc7e933b89625a2d4b4aa2ee7430a0302047c435bb50067306502307f76aef77d9a4bbed9876b7d3d8ea11a78a68c6f1bb28dd0a790229085d2686be35dced49d593ec74b2057a50839d81c02310099df14872556f806a079e8105bef5c03b4a37853200704f7feb3a7edba8f64e00c05c11c6571cab10104e17d7f7895340302047c435bb5006730650231009c86b1a2806af2706bd7d0024fc427d73938e212bc36f1320801ffff4decc6e920d5af3298c924bf36c9f4f146db5d88023040444381c15e8e88746f9559d22d7edc1e6fe89d19c427e5abda19f29832146c0d64f1a83e99ceef1ddc0b259b38e0e20302047c435bb5006730650231008e16f8c7ae81078f5481b0edbca3fda6783296d0c66a0c5be40293e74c6f31c23344e41ad67a2d2594ac17d9bed6011c02303d24d14f07e96cdae417b40c5a681ca02a9ecc1697369fc0170d1e3c43548a9d9a610e130fff39e5d8115dcd638065500302047c435bb500683066023100dfe7c3fca53fa50818460895e30f58f2d911d3b77af099620a6db8eccff56741df7d0d632955eda308525bfb99a3878d023100d3a46feb8be2ff97ac65f09054d5a6817f734fe7a7661968d4f12acf756fc44e3a4fd2f4d6bc3fd65c32cb5ac40f9d890302047c435bb50067306502304861a682a8feef2a032b6d3b1ab467a079aa9654dce74511ed1dccd14e2adadc54b444b42068e58fade7bbd2126bc6e1023100c86911e31708d7de46aeca8a1cfad8e70f15d49016765d964be357f1c5093f24d8969ea6683695955a210c0e01fa90f40302047c435bb50066306402300e34ee4fb59e35d7a2bc3a133d66fc25ab0ae653bde2538cbb0c4c8fac0f41131ce0a378d03c6c64d018c4978f9dc16102305bafed28c73f21a025ca5a08478b9f421c9874dd77fb9c2a5436797463cb1dcb3a1134bfbc73f744bf9928dac4a25bd20302047c435bb50066306402300f780f031b3c7f6dc602843bfbf566e5ba3660b6765c5f94131a0d0d2a2f6220438d63818f53a0338b1159201e08bdfc0230632aede15e6f51e592a0c1794d59b8cf2c6279703bd1080f241071d986b9f82f03937a522a51e28d4d849fe4ee8ab2cd0302047c435bb5006630640230616b282818d497749c4f7e4648c601bafc07decbf4aeab30612fb1e201d44c43fa96cc6907849bf88697c7a64757a3fb023047020724f18863dd5534dca3a494090b49cacb988e98076c1cc3b61ebf633c7b933a19974af710071f138b8d9484e5470302047c435bb500683066023100da389cd6e5743c04505ee69f007cf28931593eecb8a1f255541f065ceb170282da8442da02f34857be095a3b557791fb023100f8a318e33d86a7da8d5f6c25c366b2f3207dc26a9e8620ee1d8691d845af22aed813cae334e07ed1b7747a49b942ba0e0302047c435bb5006730650230148c2f8743a7a0ecc6ab2631882d80ae60d10cc5d19de89b36bebe695e3e666f3d834b3f9c1939bf0649fca32f2d2e23023100ddc6ce947921871f005c8f42b757a4b83bddb273b14f8ca40a714aba84e7bc5c50d664d42686f0de27b5a0188f5723790302047c435bb50067306502303525b6b4eb0b0b58162f2fe33fecd5973d6f194decf495e582b740ba5ded248a50b46c8160f273351eeb836c6e9820e8023100e8a38dd0f6480cbf631860050e5a0c4c644991732245c9c25b120cb5be7e6b3c6123d68d63ed905b76509c9e8c3012a70302047c435bb50067306502306b7133c961822f068c36a3dc5668f2294aa9bb4b75213e6d97c20453ba960708bcb99cb60f6f07203804cd98b3df2599023100f9f7e3d9cba990a098abfd35857da0d21bda8d5ff071a728c230dda9bf2292b729a32f60ce507601d0dc29323e982ad50302047c435bb50066306402302cb6fd9770ec8694131e7bc557747962082d750cfa0488db093f2eab6665a5ccd9f1596edd69732fb1460e341899509702301c615530bfc706ebcf2114b18b7784e58d1dd8d64230a13bca11242670b8a35c4ffa6d1db18159350bef404726cc23c20302047c435bb50067306502300311e4d429366de04a50b75a3f834bf1b9e34520ef95db257ce3f404c9b8e7d87ee364e44f27948c7e6872bbec877735023100c9e29648f01412b0129e413a4864e60504bbcab5cc047c486ea8c99bd9e8beabf7716154edfdd3c55b01f419bd552c200302047c435bb5006730650230274581fa1a62754d52f9e45e9884a2b94cf47768771fa9a3dcaa249e4a5cfca4da59a18cc0c0301989aa4c74323a510e023100f0b6997d8b97e1d86350408c3c1081d221a7f0dfddb76fec27842fe61fbef73c0c8f0a0bc3bc00aefbb4e188082990640302047c435bb500673065023100a6952af0275c523a06ed9926bdb8b99c30e519b45e112c369de5f950409050a19c69b28e735a0466492029903132e8b002304fbee9e9100110c7fb248b03332a6ca5f1feaec9e7e15647660cd77904da3b28c418778965bf02256f002c495da255290302047c435bb500673065023100d89256c067ae974d7ed6ded9ae2ad102697bc86196692d5da12bed9c6d9a59b3a1e3a467d21a49c4d82a4dac69343d330230734efa19a9e31b68efe17c6633cedd2c9bbeef8063a298e96d0530886ed9c9a20f819151a3be305a4f56a091be7c430d0302047c435bb500673065023038ab0c1a9689c9e8d0c1af56a2885324f92fc257efe3289621e4e69ba1af5d50b09a31b54f4597d411dc08af1ca088aa023100eb689c863ebd469fa9931af3eeabe61c26ea2e320c99d5466377f234efcd44d8e655c76fa73a47c2317e178b926ac8170302047c435bb500683066023100ee4e0cd5fae9b81ae3df28bc55788183f0a558b5bce1e8d243f16398642a4f2d6b529d38d4549b121ca29bc9c9c8ca8a023100cf295b408beb3f3b858bfd9b856039a52eaff7cafbdc8db12b26789b202c5ee3b823f01cd6a9ddbc6907fb1d4dd6d3740302047c435bb500673065023100cd8a325dd22233ec8fafb6a45b2c08ab42aaa219946426100c67aea64925a6b90f06c2090fc2f11f3475fd4adb77cb4802303aa683219ffbd5c28cf7953caad4cbf820c05d36695b83580221ddfdcbab19f8067ee489e6b075edfdbe4ec7ae1667450302047c435bb5006730650231009c582c04e92816dd847f7f8dd5d1bdf24c5f227d732431af65b25bc407839433b36e7e6438f8a41f025904a3d3be40c502303a6b688cb07045625fa8759fb59eeaaf9b53bfd9048f1349a9abd39747c6442fdeeb70e04c3e9908f191c069794ad4e90302047c435bb5006730650231008e89384f7baa6738b9b7dea54b54ade2ea6b0fb991c9b4b053cdbe56032969e51ff12099b8b551bb57d0bb96dafd80df023042c285779173913518ecf61a348441f6dbe6458b5ae177192605496bc044cd15d255d48af14e7a7a6630a73e1107417c0302047c435bb50066306402304a1cc62fec7bf664dfb43fb2d99edf52e05297224e66eef718d7144e80c6518e35636d3354598c39a6edabbe2ab4ae1502302f2e8e748a0804a01cae670c69aac3d513035984439429684136bbc04341bcadac6f05dd7cb36c74892c42649d0573670302047c435bb50067306502306c44dad551f75ece455b366e4dca5f210616f1ccb0c22ae8b01cdd5ed69adf87eff29ae28e5199cf1b97853862992af3023100a3963a76ca0da622e890713eb5a4e7f015c7529d4095418cf6d83e6cdd3829d0cb248e1a909a8e781735d9bab54dfdbf0302047c435bb5006730650231008dbabfa3976170f4e8282d9443fd45cf7172ab79655a7b9768d74c35c69a598ed182acb1345e125b629c7706e0901db3023045c63ea505b08a66df0be350eaf023b35d3c1c5033123aaa4fad609fc3ba7f9b517e9037b5e5c40abca9b996079c5f540302047c435bb500683066023100c54836fe7b9808aac226478ae2d081abb2a96cc8dcf15b1b6ecfd0ecc2206d650245bb61696c540a07e82318b20335b7023100aeb8726fe72fc0be97abf79f57b98e63b94083a950df59417a162d76f08adf62b5e3f048bc776a325d5d0d336c0190850302047c435bb50068306602310084b8e76e1f9f6925d20be679b8b224fe683725c44cbc3566effcce0cca47618c070070e5a42eea9df2e08b667056b559023100a983646f5b130f0bf73897e570adbdb97e4a784a927d44a32d024dcd4b60c8abf6ad3fd7b6f436efef8e584b22b2039b0302047c435bb5006630640230138e727cf0616d2616d7a8a21465f6c03c1c58c7bf83c4770b9a6a7b45e273f4ac1b0d9ea74e12a70bdcf11606f7dd9102307463f9ba22986fd2f923aca884cea09a2200a48035baa1c12be33732b4a0b8e570f578fba73d6de6aa5dbcbfca83e7f70302047c435bb50067306502302c2ec3da0ba1a9902dbd014197664733a75784173336ecf68b4c5d82e41de98a093954fb2b2610adbf7ad7049d5bfcdd02310086657efa7a0f6bab9c03731ab69b599fedb52a41ad027d58e0da5b0779730ef226050b8d7ba8dcec4b21afb319d3c5ca0302047c435bb5006730650230289c730ca2e766fd44f57908f85f5e7691d292702cec83278be9e9839e400d7eb78f18fbbe1087267c00b31d8ace38cb023100917b56d169e13a41b977d9327dac288df0c3b36aefc356b29996efee41d1cf77677ad6dfd486ec56b21850f9bff8a95f0302047c435bb50067306502303937ea4be8bed3f4918dbaffacd2299107f0aeab42201780897320b210c3a0ff9d91e27d9eba29402c9fcd4ae66dc90602310098c663d6b32027c4dd264fb5d8dc307da2575b33d43895b87558db729ec720e93893cd71fead0e83901e11d3924151260302047c435bb500663064023014b7ad4c0b7c3768ef3cde328a9e6d07927dea099e9baf30c4e3586518a3e0fa7de45a3bf94d2751f4348b09534874870230670dba5a4aba7f6fd681184b5c1efc0a5ec292daffb7ead3b919f22fe296cbc14bd2a34fa087e49cbd9230078b98471a0302047c435bb500683066023100a1c6cefd0353cdb1bde698ae707d1837ad25c2428fe3a0c5d4b26110511e15bcc1994042ec8b64e5dfe6be022927869d02310091ba76f1b0a17188abe4d78985abb6e3f998f080b06efb48eb4cd5aa2b393ff129b052e1a49d248e39bf08d0b62b18d70302047c435bb500673065023100bf02e879d1621904dd097962ce767e316e9a02a9e8cbd12f00182a5b62da95a0e79074165820b7ef3919b8301ca98d8502304fc1ba4213cfd0b7990a3df28fe8160614f6b022e1abe920250672f9d48f233f1e87092e7813de053b470ca46e4316e30302047c435bb500663064023004392905e68bc9be7d15e5788f0aae6b8fa52beb066622a2623e06d1ae838da0352ff428ee0dc850b03e68cb4b3cf68002306e2d775b2a65c08098b2e14f2229543b2c7b3064a84c0630ad49741ac69edb50b2663b5d08f5ebfc241b4971a545f6d10302047c435bb500673065023054bc007bd61464c0fbe0108df1216083929df74fc03bbab77dda3fc4230086b7392ffb9759d058db6f403f986b07b8a90231008207dd5199ff43fc4106550cf6b45b70df0757346fc00f9b308a680a89838a8dc9a968b1b996213e84bd7e00bee3ca590302047c435bb500673065023004a98603c75f6a9d723e10031b7b53c1dba9dcd11f80fabd85130ac11c9b45ac472de5ca0b4293fb84bd1171b4f0490b0231008d9d2773e6d007111ff8b32793b85323848a0ec0e61d88c113db46f685401dcc8b1689f53046b9c4f82e6192f324c2120302047c435bb500683066023100d5fdda6c3a7798bffa854a5d1543e4439e14af26879ad87f4e14f31b0cffa4e3a6b50a98b97606b2d5ed7eb218d0da7d023100abab27f6fc820417cbce10ec4fd14d357a7994259dc5f0998d3870b6f4c9a8f34eec200aef795b9e39fa4a2780d5385e0302047c435bb5006730650230255e02aeabc7cbf9ac3835ba0f63b7b852be9c215d979aa956fbffccfd9951c491a1cd738d0484cf56801dfe467f3d9d0231009d354043b760569e2b11f5f8a3937355166b0510041c95b8e429e130911a286e752e402f57821fdf68698ea5da574b1f0302047c435bb500683066023100995994ee077bda4f4599e5d1c56e28857442df442febd784f4ed48183db7f80e516f58e0a4605a6e898d923623f9c91b023100e9c0066fda0e6fe177f672ffb5d37f5e508fe6f854ec4eeedd8b910b6088cdf3df05bc13896b5edd1e160b6fea7913510302047c435bb500673065023100f06c444313763734a616036525b8fce05d82be163fdfc723588873be0badd49150d987607221b23e351689b10b35143c02301d92479cbce45f22c47e22ab3de651355c22653cacdaf3aacea230453346d49bf89ed39c60d1df83ba667d0112d456c40302047c435bb500683066023100cc19952cc4fc9fb179dd6664c848c0ff7541917f10d17973658b7695d4db9bca83f4afb52131c18f6006ae287381f238023100b7be33c0750490154569a56ef1fc8dafedcfda6fb73c75d156c5ad5e13867b8cb904ca3bcd88f044b6114bdf733d4f080302047c435bb500663064023070b8394a6d1cb54b26358258f930e226eb123fec9c1310a61d2ee9eb59970fb07103f16938658b8d8462fc129255353e023065936b61cf66978f821ddc2d71e024b119e5383584cfac68c1468034c58341d242b9d0d6caf9e057ced3f41ee44861df0302047c435bb500683066023100e947059ecd10bbeb52f9094d317363a3e4b8165c381e275ca27731a0821b8c7374e23d44423477a4b8243487c4de107802310080d42a7c829bf93fedfa32fb5aa225d08fec66a801e724b58493bebaafaceb85e5dbf8254bc115b343aaeee914a0a3640302047c435bb500683066023100be52ddee16f8560aa43001da2d6fd7bc1e9f35e4cfced873a9ac634d89eb2b5d3475ef3211a88b142b4204ffeaeed426023100ec29886bd90851b2051ba00458cff22275c58c03676e47f67342acd482d40eb97267ab35922fb6c9726e4b7e0703576e0302047c435bb500663064023076d049a13b942c8e9cde2bff9472ad88597011300d0c955e9d744e79bc77185f3db4fff0ae8b5c5d4307222dac457507023051ae3cebabdb95603aa2e0e8e66b2763bbb2b4162d61b2f511f800705d920e9a9d6805afc9e0e33291f357aa6878be0b0302047c435bb500683066023100e5aa81821937a9cc99e8734f627d59cc3081229af5c59d302ba08b2dfc54473c38eda0f95c21e73c43bc8d987c84018702310094a28e44a70faa57fb826a151773e7e4cc10cd3abad8a5f74cc2ce96c37af7669699844611b823e6409198f8e8f769780302047c435bb500683066023100f8bd44609e455bbb0763e1148389993220637618c9cc6a85a77b168ba0c69e1d1946e66e5600b1fbc8dec36ac56ceb660231009ad6811c9eb5a1dbe138f18ffca6369834b4c6405dc5ebb7beff1bf677adfe607d1cd8e07fe246f621e39af21cf608b10302047c435bb500683066023100a2bf70b1ca2595c49ce585f388e6534e13520194340ed06bfb7efbcc7a1d0d7beeb1189ffe149f8daca134f848436d60023100c92338bfe094d1718a75bbbbbfccaa421574191dfe656e591bc61fb608bd981c17857c34b719b5177938158759f510db0302047c435bb50066306402307f89134b7412ccad0c94651f6844005ac2433adfd0342799278287c8201ba5ff23889cd656457f19a3e560a1279e0be402304d3882c02d8aea2585a774f5ffc62367a43711407aa71dfecd6373b7f2836a101e471706a485911435e7c95c6d8ea6930302047c435bb500683066023100e3e9ddc41b53f82eb9a1978973f5437e1d09007857db60d595f280423e232bf8e75bbd837a1a142920ae74b10fb6148b023100aa60db0b27bbc20fca6adb7ab30915b504f8d3e4df2cf56fdd17cc22ae5207cbbbf842cfd3009ed6524f572a24e96a5d0302047c435bb500673065023100b6070afbc89530c70b528bc22648ee0178ef451ab4c67ec2e4bcd8d19a133742fb65edaad299561283b031e8b27ff9ff0230061f056bfc76cf17945e2f59c10cfd75e1fed65cbec26bb2e05124ec3cb8c973089d2a9b0e8c665ef0e5f0f3c4b92be60302047c435bb500683066023100899a90abe5319bcb8a63c1e61dfb1b98826d7974af2a49b99641d48a0cff78fc5f925ee3d3bb2f1e42a5399c33fc157202310091ed027ca2f013173a420cc5fd35646545e024ce74ebf7505b93f0343855401ee44d63ed160f286070080ad160a17e950302047c435bb5006630640230657f88d3cc95e74bcc235dd67f9a3d280be1931fe566d2e4b4576260294621382e083874a6616a2a79da0ba5bc399338023027f4cfe55fbbd45e1b216a8c85858c1178aa58ae23b42fc84082f9b2e09103356826897d5cf12f882091d3aeb0b78ea40302047c435bb500683066023100aff7bce79e684289d1d3c38af55721f063296eb3345377e23f874f61e9494fea360b01527f57a5cc6bdf3dea6c80103c023100e1be4ccba0c9f81d8f6a4c6c8cfed3a637d77da951d1b6387430a69d99cd17e0bc9338da5904283c37178320b00a505c0302047c435bb5006830660231008f56d55840d768b76e62b2401d085edcbb32170aac248ac4f31971af154dc4ba914c337e0c8b57447178226ce434fe6e023100a61dc6b37e054971dd6684f149ca9a62b621adb154ff80cd930a843b5308e14e0f292c3d90c941c42a61dfa8f88556800302047c435bb500673065023073e86952e34e2bdd385bacdab2c342200bbe604d2fc51b985b4a62147b3812179ae87f8bb7c854ecbdcd253d00dc3e89023100eb8681aa6dd832dd4c26f393fa251e9e4afb74b44733bf270e09e3884bd3a20bdd7f554f31efc03d36b17c522c2d49190302047c435bb500683066023100e0097773a7dc6592e6253abdf653870e1b0e272b45b154c8a40fda2c97dd27eb6c2593fc5660d5aed7614229072cd27a023100ccee1eabfac2a74be79e1ae2b6c53e07fcb7a037015ae1143ac3b7d767c7956f5fdb8c259995a325e60f6f078c0f520f0302047c435bb5006630640230206edf6e70f0df1f78cec4b401bc0e8466a5b970864a347e6b6069a875c91763f9e1bdbbe58264e57f490c95342b1bf502306f791858c60c257f75dbab401a1e47dd894746d1941e8c59c7e8894b5ddc218554302a5fe262bc2cc0049a63f19ccc980302047c435bb50067306502300780ee8eec9a9babb59765fea15b8014bd70e7ead0194a113a9c89a3c1cca5031b5813cbb6f03f387d935101bbfd6bd7023100bfa4dfdc07d9492fce173413070dc53c367f842279e18776e4de83df951eb95da6ad5c324ae4f8221ee6ce34b42523f10302047c435bb50066306402307ed3cf086099815dd2e72025694c9be242c58a1fadbca043fd4f6110a9f21ef1302a1410ed5db0545956b8d48978104202302f6bde26c767c51970a0bbb87a42458c459abfe57dc08b79d6c20d4dc1c9dfb5c745da6ee82925d853a4718c4c5df19c0302047c435bb500673065023035f86d4180a258dd119f7a50684e04084e04f11836496408975cc74ec680cc74a0e65a56181c628e2a2a11537fd35aa30231009f6f9c2d065bf977fad1340247bc501847029f6093e4f337e24a4f4819162e79cda23f3554110cabee4c96d4ec500e760302047c435bb5006730650231008a87191d58578ca3ecf0facecdc9793753314e99ea47ebc9d88a24c37947e7cc61d25c7d44ae5bff8eedd7e8f370d4bb02303c917a9c57bb1db68805df6f4cb0776416424f2428ac37cdef396ba85223f6b41c1aaa9c280573be8199697f219b667d0302047c435bb5006630640230783cb7a7dc39eb425f6cc47224aac0d0a11d7ae0716b3e87a10f6a62682ba2c74b091c7f8236ed18b5095018e8b991f9023027add8cc5183c4150f3a7eac1fb686a969f701d980694b1a5d3bcdaa2390795260d6b84f22707ec517ea6fd98997efb70302047c435bb50067306502301eeab92fde3a922ed8b13e7b241edc12a18c4e24aefa99cdf2e6fe352e1b261dbdea17ee9db342435d0b78f8dc9bfbe60231009ba1f3b98b568f7bd8ef51d501bf23d0b95200b20b2c521e5bc20e4e7127bda05bce068fe049991a05c1ea8c60d200200302047c435bb500683066023100dafc4c0a855b917bd209b755e7471633e64016cd09c9c947f498984c6077596885d9338940184d3af98f819fdca62af5023100b4ee49fde44685d552a120de5b48e54c97139e77cd165a334c876e9e4087e7d9a6aca8417e64be0cdcf5cc3e8721f9c30302047c435bb500673065023100d5d8de1b7ad469442ea5cda3a08ace569d5bf95ded3ec34a9f81e2cd8533b079f6435880d5d82e6b0ca877b89313b538023026e7688a6c2f6efef90846708e89bfde679cdd3a386b1587eb8bc68eefbbc4dce12467cc8bf4fd6d75b7c753e3f0dad00302047c435bb500663064023040f672319d9b97e5b7054227a26cee637f93d47997bdf23f61d3fdbf14192e1f963f37ef76a480ca18f01ab1fc74072c0230678dcfc7ca39eb35d025f0732637039967927fbbe6a6f7bc1bd3de4c8d56a4a13f8669be39fa97d65393d524a2661b510302047c435bb50067306502303599dcb42f9fa80775c70ae2d84dbb862d7a77cf573d2e8fdf4746d4850bf209bb916e9cc31bc2ff2df77119fce75dd7023100cec28bec2a1e234785fc340140aec98bc56e38ade9a60bc6401db840d4964c7849445da9a9b522ba7df512512ec3d42c0302047c435bb50066306402303175cc3ec0fecafbcc4173d9d89a98a8f5b049c3370304ca16516028998735e0a6ec2b9cee437e3725583fa40b520f81023065f153d42dee9cc976979100aaf1a51fd547692c04f32feb65b977f898c53a82e4ea6141c5932488f94b9fff438e910d0302047c435bb500683066023100ede47e2e4ac0ad988ec7341278616b63bf5487dc7420ebb27dfc5ec445c892fafaf27d702585b9cfd298af18706d2b1a023100c259b11e7b74574a31131508d452819b1361ca8b9db007b9886610205fb71febcc0e78c90d43017cb7ffbf6481fe18d70302047c435bb500663064023047f9517c54ca7372f56907c60dda1952218def7d7d2a21a9ce9c9496d5fd693ae9338cea3676cfc34e39dffd400aed1f023053a31c012af82f626118adf42f4e1625ec46c11f0051c0edcd62870c1a222ff27d01b9af283da9cac9b66dd61b834f630302047c435bb500663064023062c47ca1fa409f89067db90bd86086484408577149b01190d7f220c55953343f2d0077523392feb249ab0f3be079d8290230043ee10ba1821d4bfa4cc12d508c5b136c5af4656af637cf368bbaf125dfcc4c651425152e43c5db07f3966679c422dd0302047c435bb500673065023100b9d709b9deb79f98d882104d29066c4195c80c5ba7b588bed740b1d89742c22e85a680afb3ff16e52f0f747f5b7bb0af02306430d2f4066117f6bda9cc91865b4ff39bde02384bc25af3e232c8da660166fcb9af4932c4439dbfef50d98123614b880302047c435bb500673065023037603970c4987e62616ce3e80ca4e6c9bea44c3a54ec9e3685699f3fdf259b97b952ba37ae92b05b8971711d856590ab023100fcb1f1435938d39f5e1a1886db64d9b820f243fb562f71bdc27d64792cf255003e4b03ef95faed5e887395a848e936a30302047c435bb50067306502306d1363284bc70996fd57815a8a7522bc99a3b3f5f616534d6d28837c50ccc6239fa970157debfbe5d60305dff3c38360023100bed59d39698e920769484c934b9984b3e1f9386d33c0e4a9d057eedda3d32c419fbff6d89eea91c9ebc56225455cd4710302047c435bb500683066023100f82d5b6d32206b60da7ac003424298e0d87ae22758b15d9c37a4266a21b268cc6666c8a27686f1e20e0feec7a07da2d7023100afadd211f8fe950be28a8548383127477e022f4fa38c855fc62b80745bb61d1a4985594f33e0cc0d2fab0a6d126522190302047c435bb500683066023100dd123d570ed510d2259c9a688a87c81b92245706d13650f3f801cb346fc85c48bcd4f5a6e420fdbb205f337aa4f989c1023100aeb3e55440ee341b5d00a9ef1cf1afce5cfb4058d1dfdd302e175d6ae99a5f2fa34dbd30a070ef99c9dac024e13507220302047c435bb500663064023037678b626dd2c38a91daeae6ae8728a6bf2d8ad4482ed8302665cf19d60a1e10e3d54d5f08923f854f7ba27e300a9a8f023017e3b9643862c41765bde4fd55835399c7d04f19bfa8b53cafea017ff8a9bfbb81b72a31f04b3d6e1f79365ea828cb040302047c435bb500673065023100b3d0359140c9a46d7e9e8ee8b430c3fe73142bcf42c1480e26502445912e7399fee46a0ee062f6c5e956b9b70ed67496023055a924da348d076121546e023755f0a360e67eb44278ab5b1b92d2608c161250b93f29172ec52f2e9d6dc17319ca6dc80302047c435bb500673065023100d2a80a09cfd586502fa00867e53d544f2b90ad71a22300c8be814299771fccd2497cc93ef1c41cf4f188feb1a49bc71b023039cb10ff3ae2a96034cf672e8c6905e45b0c2f06b112235b7df91a885f4c09ee837065d127ca02f1d42c136e2afb645f0302047c435bb500673065023100cce0ada6b0c8e3f26c48299f5b3af97a2dd10c6b4b16994d946f722d11e77b7424bd357da4a7aa385d11a6284353aad902302e6daa406c6176bc3f08c23b89b3801454ee3bcb81c7c3ea70aa5a163a73e5fb430aa3a7ca510609551a53724e38c35c0302047c435bb50066306402304bebfa672ebed1974c1308112f2ac59d6900fe1714e7afdc943e250121c2a5c3b3024bd30f1ef372b4ce6cc26ff6d89f023021adc63ceca68d5fe325193bc8ea0b5cb4a70bcdb9ce1d8e859aa2aebf4501400466394d5f6b92f19c7e7a3cf4639a680302047c435bb50066306402306bd96254fb81290248986dd94c4a79b5fb0549e8748905aeb461f3843d2222a5f5f3ab96968800dd9ac6572ea234d285023053d9487174664459b622a95e695b0217d9834189b3acb43c72d5ba829805f4383684cc5d41773a88bc63574681dcd9360302047c435bb50067306502302014b2fe39f9a5b72b5c5bdba48a29cc4d81999e0c6e1fff1924384fd8153e98c88b27cc276c863b6ef8de7ae09fb3d9023100dd8cec5f024c996ba4ab933afd2bea0d97fe0882861db2a83c5748504cfd536a681c8a1cca95fa4e9f6da5f5f47a55460302047c435bb500683066023100b9ff4b81e9dd1545c25f660e35d26b647948511d1a83bd9214e3b61c5535e501055fe93de8267e20dcd781c8514bae6e023100f5ea8c164eaff28a78136bf87f1bc2c0027292f3383cd2dbefef4eddb41f5f2759d86cd692b155e708c6632e0e6f2a060302047c435bb5006630640230783d9d3285df8c31497b8ef0e28cae6657e485fa5018884bfe4d451fa70fad1ec5f7a46d271dc65bd8f09be20a2a3941023072dede4f5e5dad6eb8727573dc07a4fa70ac0f88317a5e5611a344f0d293c6287ab7b5ebe5c5071d4535e0e01c1d3f3d0302047c435bb50068306602310086ba064420d764f06143b6b73ce6627c39f4ae26a5d138b67cc4e6f4bd2bc2d997029ba22d480f1de17cea52867cd875023100a057a76a17509cecd1f95e6f86de10b8016f81c599363d6228a3818853ad5808d72595c796d0d5e54dbc1c55e037eccc0302047c435bb5006630640230657c62743c74278b5c969d68f382d71ef0b9ff46dc23a13e6a67e1c6d9a7eff0bd5d62c3514ebb082b8b80b93e5c9cea02301ea34831dd2fec664590f61f0794f27a1059d8a994a5c7081f127c0a44d80a03801f1fe1a0dfac3c21aa5cc84a609bb00302047c435bb500673065023100e8cccee330d19b57076672424ac1d1b0304745811b7d4059e59622a132065ea2061b7efbc7e1cfa48d56b318f1a269cf02303c9be2462a37408f6e07b03d03fb589a3a98ce497d9982ebdc774bc83501effc62cc4e561618cddb31c641d46c036f680302047c435bb5006630640230255c33441a86bc7c12c98d94c9b0bff899cd8e6883c5272c2990ec4caaf91a3ee67952bd9e4e36c9a9bdb19890dc6cca02305196a5aaa5a743feb611a5eef012e2a3fa2d523dff5e64e82ddd11df7640528135bf1da0acfdd4b81fbe42a78eec46860302047c435bb50067306502305cdd04b9dbdcd40bf2dee19e09de6f58173184aa78601469363480a6344482af460aa639389fd7886a8224ae5eb948db023100f98ed0de904edd454c21fc699f7391a0c4f81fe2ad929971b4a13bd5d41c76b428439c3bd63229c5491e67b5ab7eaeaa0302047c435bb5006730650231009312a21b2bd1278dfa8e3c71ca6973ed2b23cbb3f860749ce6d0270bfcd0cf3728af503ba1368a43f4892d3550061d0e023069c93170075db8f1f836d4191ca02f1ed3f6ac378c6564034b240e27a323a209f8e23c5be86bd9856a38709f84d92d800302047c435bb5006730650230622b2e7d841d6a5dc1b1c3a37d65f6b1f233d6f62431eb60d4849b6ea909e025a50513b97c50fcb9230158254ac09596023100ee8ec73eee4e818b869d2ae448c99f8db66429d1107a21f9d8d2d1bb4940d4c27e297a221a685854d568f301845143130302047c435bb50066306402307feeeb1de7ba55b53d6e9c956309b45b91e7aa448ad11f2aa4e3259d57d7192951a159abce5c34b92f54d97a6fc136c6023004bdead6ed9101109c16973f00c89d4d56591656b78f48735be022253fda05ffd984005a872683972ad3897e84c287e00302047c435bb50066306402303236b815dcfadf66297c950e999f2f209f7eecb9dad15dbf3291791c0a958c8a99530e81da5f9b30655f2ff89c5ec3d2023046679674ef0e2312de3f11ca3a2b909d0997416058541742035dd3eedf885fb2d472ad5b5f2dd20049c34d03726cca6e0302047c435bb5006630640230151aecdb91524fe05629d68176d60f4dca43f6568901001d1748e35271e525eeae9d576f68fa709c8724fb7bce9fcbcb02303b1e75bf5337f4db8c219381bff436e056da18ea59eadb9f09bae8d11a7eff7202cf4627b76de7eceb0f2a133627c2060302047c435bb500673065023044eb74ba2ea86d2168cdba3bb0b27cb35344ee2102bbcfa6def19a2866f9abcfe15fcc803cb028b4885827689e3cdb73023100f4d077ad09cf5e6c1990fc4774293e1e49f8618c87ae4e3f018c61b23ee6afaebb6568354cd7871fd5ce9474f8762b860302047c435bb50066306402301d3bb31f6dd969609122988931c6e18be2a39ea803cd25a18d6f951e64a34be4f922ad6cee1d056de57299f7056d254c02304e28ff79412a07ecb00e1dc0efa951f6678dde1aabe3e97562879d2ff9bd0654b4ada2afde006b767dfeed33be6c12c10302047c435bb500683066023100d73dbd2440c51926e7a1e5a5211c7b491ef5a164b8f2f39c17ed612e67c0dfd6637f7b3edbd6a27d612f07b1f76b0786023100ebee9fb8906452747ed11ccc44466bb2e6723dc5e9ac107a52b0839736b8607f5b5e107c985b7ccea52ccbdd66ea02440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230302aa45bd4a1635ac0b7b577ed5396e81ac34043c3c832815173a7ff61643c29fe5533c6958c6dc91bbc1a423ed63b8e02301b5d10f647368a5cacf4759c1180fbc4bf4ba546692ffa519e665d61ab6c10694be30ba915846101df79febe585a37ab0302047c435bb50067306502300b1a39e1f327882d03d353854fba83446a771e6dcdd4d5e74ea6978530e3c9766ff7b46acee022d261af5a64ed8ae178023100900787e30160092693fbd65d81ca3ee864d7055269f9e0edb83648a468f6754c503663d4add726665ef8bf0ec0b209110302047c435bb500663064023011d016c7c80e2b083beda8c3ef7f6ff05fa855a85c701e7faca7382bed9d8d562263d9af0523c7982446bbf3208b068702302b3263ece081c7ff5e9ded8400eb800947e5b1daeffa52650275b5e09698d95081bbb76e4d78128466ee5cc99615238d0302047c435bb500683066023100c8590badc63b80a5371e3281f097fef324f8154ae68b7147166a6225d82f6868d06a8d0304c0b9633b6c2249c24f3e9f023100bc8a2cd83673d1a3ee13c67ae957c6fbdaaaaedadd283fe63335bc4a386e74fdab87d54cf787a7375f03ef189206ea3f0302047c435bb500683066023100adededc4e4ec14a8ed85e9a944a5067534c4879aa9551d93226b319553cd6a24bb25110bd49c89881c02767e3d30f5e40231008fa2552f6c097c08202ed10cd109c945975d98e362ce684138c35983afa033b7f95e00262f4e687c4926e96124ce77cc0302047c435bb500683066023100a035429b7cd36ddb087e107f7366d3ccaa5533cc18f83c731b6e95314694ac3883a84c7db7527777015c2e81aee5d1aa023100e4a4bd954bdc5ccba1dbe6250ccc378de485fd2b74b16a4c3280e5bbb27fe0a8b6a3db61d5ca537f2e4d35c5370a38820302047c435bb500673065023100a8938299474f6fb203ae202954189c831182ca395bdb1e385abfdb815290dc839081933869c4f9a630997d4c4f9975990230111a920c15ca4724d4088dc5027151160de7a1cf77f7a288b73f8a5d7ec460e47d354f8405dff7d797fab6ed1d4e57fb0302047c435bb500683066023100a63c53227c115a2475e31d3612f4e58cbb59e187a2ff9b2501c60946f707b653d05a86dd66c15447815ce70b08d7ad7c023100bad946df2b612f23442bf708805594c4ffe88378b4b9832a72d784985adbaec23b02c8398bc66a292dd4ef637990040d0302047c435bb5006630640230348ea3d8a7992e4a0e3f34c7152ed7a73642b0eedca4301150559994408ea7bb6feb30b7ec48b62d11d4de9e3efb8bdd02301ca5e701b059e13dec2c648faad73112cb7e5384c7ed352f2e3e7cb9bf9bb175006de17418d75adda52a4dc3d8d862bc0302047c435bb50066306402304b8063d06f2af392862cbf447b20a21644e47cb630383f4c1b33e132b4b0081fc91a648e28ee994929278cefcf0f4e5502303b2f10e7701d2bf0cec6e983d5a7341b86a4798e17d4ff5b41e964d9bec7d2f67d61c1d182a80e27815e14a791bb828f0302047c435bb50066306402304558510dfc87b2287db86230bc88d148d9b87d1fe848733efa556a322640671642fe5de517f8b7e62ecb3ed3a8651c360230345f96344effdc7962b04ae38f23ac543fec96b468859e48d6fce6b07ec68b30c5a83e0688a45d361f26e2f5bcb16faf0302047c435bb50066306402307990e31d5be57a3c94857588647148e4907183d0c10d058411a0f5bf3ecb989f0f7ab68b49fab79c04be2d6f88e7f1340230613b5279fdf9c668870899fb7f068fbd6d59724fc76a940ab1e0e17ac5b68ef78dabeb0e8bdeaa52edfcbead759f48670302047c435bb500683066023100cf1cc8beff4ed76a1e52233077722c6b4bad024bff86f9c7e9a00484440635bd756cf077eb43a34c41dab2634a0d60f1023100a6271671733afdbf6d782250ac9d99a5644c0e168bdcbe0ed02f1784182a32cfc7c46d31668cdb0417b181bfd0cac5e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008ee3dbd5931297614020d71dfe2b3735c5188d59aaf444a289c2ae9ddde32c5f8ff44906741d11a319957a10971f1016023100c7efc92d1605a8b68a4f23f535690c7afa623f56ea6d7c4147be5f352dfec17f174eb683d0605472f4e4809b274018e90302047c435bb500673065023100f6b33d7a6b5b2d14389a7c5a3a64d5d819115a6a3c56b9c0e222a678a53f1d8132ab8ebdfe8c5c8cc6a7ed6efb317d3002305244604adc78955e8e41f78092e2677ca7ba7eff1489f668a41f56ccc9bddac79cea210ffae56de8be60d318d32df6e10302047c435bb500673065023100eee84919fbb99a94b8fa5f89d8835b684553d1dd44689ab00086cd95d5ef294f9f6b4eee48fbc1b0cc92a7d85f03a468023029711cedf717e7a262e65ceba6f3dc33f80c3bf88f8e43edaf513ff70568d22735aea32ed93424075c3a5531b11787870302047c435bb500683066023100e9f1edec85640a3f1d62c378783e746f0fc99c7929b8ebe98261185c95913ce9c4da662fe6594c3e87679396fede0252023100cce9676bba1e8044c81f431c4ebff693c4f3cf99a98209d9122e3f508af322db0a89d2fa768d06fe01c926a560d2a6540302047c435bb500673065023024b85a3bcd47870d7f140b8b1a0b21d9b0c5961db8fb3bd94962028adc61150876eaf2637f5ad2b41231e321030b9e77023100ffd2be57634ef1c13a31571472d49ff0fd5cc8ccf8eafea4edaabc5942c0f1c3321afbb85b643c170b1d5d4b218ab15d0302047c435bb500683066023100dc6b8111d9897c93d881929d42fe352d299475d7f81c0f984986a26f4ae4b5a275f8792be18f5910057821a0e52f67a7023100f8c0f70ef0fb97aaff1c65b5a751707e91d32b1c22742761036e28ef077efb2ea60b6de587149f7f16626a2ec8a5357a0302047c435bb500683066023100d147163a077b36a1f3a138f17b8d6772d2e5f0e6085e46db0966419030139dd3ca02cc01afbdec9aed753261feae9990023100ab35e4c6220f5ba831bea5c7357fa617d165e8e4f542bec9e704ea7fecc917896d350da6c31565bd3f48ba9ee0c6c01a0302047c435bb5006630640230510a655065a4d980d4eab42f76aec23c154c0bab2b06e8b9cdf3e6baaacd381cc185ca0bcedd2b9af3b822420f88a815023040f70812bfe16ea2b16742a46551ee8695f7fb10035d6153496de2f1ef515891fc4753ce5e69b685c93f0e365ac8ac570302047c435bb500683066023100dc25aa9dcf05b2ae791cb211cd154c016675d7e74db77c2421460af0c3bc9e9fa63970b803f2cff24aa0acc6f78c6386023100e930d93ccf6a60d79a50561b92cac32d02c51c1298946db6793a34cb403689635db4e6c32f89d04bc58a3a878cc1608c0302047c435bb500683066023100a1c6d8bdd1fe4c1e474622c55c22f278207ef528dadc5b2ce2146cd03ac4bbb0771f8f2dae8035693b327b1e1bd92ba6023100a49e1a8c9768a5450c4c72fab70c51bba2eb44875b75e0eafc3f1f83c84e4a1837795ba5ee19a9ff721f91a35578c9f10302047c435bb500673065023100b0cf11d2b50abd7c518c63f920c5ba3ab071ba3f4f080045afa23b0c9b29c2a15b0fb11370ad2ea12ffa4afa9b325bf602302c8ab486692967c0201523256aaa5e16d2cd94ead0f325fc3604e55a6c4a650784a5cb2fd82b8ece467524242c427fdb0302047c435bb500683066023100a128b849aabb16e52c379984272ffbbd5877f7b0ab3db47bc4db60632dea8c381abacc02b12dd2ea18dfa024aec100d4023100eff33441c75963b6fcb94ab8e00c4346273c90f617748a5b2742c87ec62dfbb7b38cb8ca55ff063ce2c8f527739aa22a0302047c435bb5006730650230038c417f50e06b20d05624822c74b229c32755bc47641cfc1567e806198eb128a1c3cc0409b67629cbe5a49d5b8aec11023100b553f253937036ed95d7df9bfd843245a878e89be1eba1c15173b343df1bc286b5fc6c68f4e77c23609b7fdce33695040302047c435bb50067306502307a71d69dc750f0c8cfc07d1ff9073f4906a438be6948d4b9d7c3dc9aae19a7268f61e7cbdffd4a21ee12ac346a0c71b7023100e52dcfa66fb5dcf427f8a856c8fa64b2a8d9aecc9be29ab1fc966bd237b9cf43ccdf067bc74f7263fbec77a800b5549e0302047c435bb500683066023100b4272b5b634a7d60bdd5748693549ce37dfb027978ea9d007a53ff677d6c2601353fd520be217964ff52e0d1ac821de90231009805dfcfe1eec54b588efa4fb2a827cbc86232398084c9feaa55538e4a3b1b9b6bd1da6a7a5a82dbe30d15d86cb566cb0302047c435bb500673065023100d42e6c9be4c16b8733471d6e05cca6f2b4d05f695dc8c31bc13504d9dc345131b0df264fbd396504a66379d9c43a9c49023067866b2888a5b754285869654e53a1da5d7bafcfca20a2c8187d200eba95bb59850443896c50ab3a248e90e2554727eb0302047c435bb500673065023100aeb5bf83d13cef55c22752b53201ff78217fa85a54d48187c24acda96d2639567b852d7e13cc61d9c4cc76cda56980af02305a85f6f17e3081f36da28f2f8700fb732ae38437f5302fab73838d7c7d9504245682afa18f776086013d59ca023e28fa0302047c435bb500683066023100f594cc16d5f0bbb4253f3faf808c0ec686a2cfd71156e706841765780fbfa1b2c0ae5f845c98c4575b2840f55cc9b737023100946aae389c4303a157212428a98e2ca51f214f862b160cb0e093f8ab06e5d9a7781b24bfbe6c670397922b701dd93f340302047c435bb500673065023100ba2055e7f3095a4b2fa29c838b14e594990187d39f9b5038d408a91b2196942fb025aea850703c725748a316da76d52c023032b4b08e8b7fa05dd878d716aeddb962441dcef378af04cbc5c5b835018b8ea8dd9ad7ab54123eb19f703358770c052f0302047c435bb50067306502300a69cc3ef925644b8d3e0e349988c1331d3fe7f54464e2c62de66f544d9a2ba9fe11efdc67327b9ef8b2d8fb8fad8d3e023100deaae8b0f0e90b1f4c7cf341c7c54a849e63449000ace24466839cfd048b6438a0ff4c7f7fa327518f4bcedf15b87ccf0302047c435bb5006730650231008083989a2129f762dc8595a4563a1f37ce077ae83f5582d6084fd9a623431f22528e94790490c5f86a0fe94dca6bf60002305ec7eb836b02b2dfbc4cb99448e8fa4987d58058d8df557f4415c2402fd83f612b6a6a14620e36df4d241efb0e5a799d0302047c435bb50066306402300ccfb102137cb20e145cc29d52e2a4488f895ca613f8770860d7020075b22e10f9227ba627ce7791737502a34bab136a02307f352a4a62d5cb30a77a678b8315291e909af42243c9bc50763623967dd070c748b9107c5e6bce849f973d872df26e990302047c435bb500683066023100b6d1ee277ce365d80d6bdbdeb99a8b178e9ee86ab7a59435a9aa0531e37ce1e0f59d67e86368af2d610b3faa45a211b302310082a43d32594a6528e90ededa1b2ae689de9c78e53238935691f2cbd9c9cb6a80d9b77b4beaff79fcc49f735e08cf45640302047c435bb50066306402300b2721954708fdfe12039ad878fab41a1d9bd3969b19374313c42f4905cd92bccda51b75624caca182569f857b4853e102302368a646582bc42d5cf810f0ae687c282ed4263b9f0cf110c3cd45383398bcce705c32597f7feb3792f33db3e3dd58b30302047c435bb50066306402305e6ab983fbc80d6e10625a4f1dd4e144eee713c48aa70b594dc81e5c2f139e42ef8a37ddcecb2a7176a7b404a3017d3002301073f4d72ec210319f03720a6c080f3665620c0b0262a758d140e056c33c3ec3b8a965ce7f6b69711a7b7b1b69be84f30302047c435bb5006630640230609607630688a9a0c25671ab491ed836fa0db86464fa4f953b45e3ef82f9bb6c7bf8b8a75eb813628dbc7db6d385b65702303ce4efaff1340ed5491ebf57b4d1b851509807eb170ae514c71e3d4e9e7f81eb8bde8c8e0a81230cd3f7e828e8f1d52a0302047c435bb500673065023100c0a58ccd5c367f5fde59847b2857a56ec8134e0f70507953da2d6e4d90434cc1cecaafc55de0ce88e204e77265c03c3e023058991325719fb83a4a69854f81b4977bdb407d006b3454291bfd5f8f65fd1692d3e592950f057a3899bc87e0390f4d5f0302047c435bb50067306502310088c51121ce14712daa7da5f96372be863a4006fb6253420e57f80b5910aca376cfd9112ea75c7bc36146961f791386df023003eba37d62c60b1552efd8d41d3430feb447d6ff822721293edd6c886baa936dd84d12150d9fbd9f0d29f3f5fd5816f60302047c435bb5006730650230573feb9b3d6dfcc0bd87bdc6ac6429366867ea26587b2b5dfb18b3f772dfb83fa6fee0a66ed325700a2812956c47ee30023100cf88747ecab5d92332e1162e9d3da681c1adb47bd10a970dad5216306b24d6fc42d2ed0bdcc11851619aaddeba9f5da00302047c435bb500663064023021451cd6b4ec87b749662b852c1a60d10d82c0b276fbdc8ae7f8ef19a9cc64e8414487e46044c66d1eba89da946e44a10230486af1592b53299e4cd713422010996ab105d2638df839dc55bf8a820b37b481d421b408def5f93604d8b1073db68b390302047c435bb500683066023100ba716d38166e148b98f4e7bc0300e2e41aa5f623aa0f085042c96b9e6ad1f547f59f98ee5fafaeb7d483fedfc3a85f25023100fa132f8e0b80f7364621018017f58d8a324e771321a80de2a6033b6f28ee78e8cbb4a5f957725bdecb20233872ac863a0302047c435bb500663064023009dff5be2bb593ae77d49293c7a765146f154b7ffc9cd1de25442522564837e58daa108c8f2db25ba9675f45537deb8d02300e98a21cbcd34e1de56d178b4ff7c07e645330a3d512d3c48079b667fdeb2307272d9aa4f3a37e4e2eafc9089d458fe70302047c435bb50067306502301e5705b7f6759a5664158140d327113232d1bf0027dce2e4617d9d4b8eddd59665de78b5fb4c454afc9a31155f386795023100cd04152bc3910c14691c7d01a9e4d7cc2755401ee776f5e397e388124b34fe0acf7aece21aac6087528e66b397fa5ba20302047c435bb500683066023100ef2930e3f79356670238d798cf190f9b108e456e50efd6d112ed234ca526f87c31cc9171ed9b051b2cddec093b4b2bb4023100d55b88d2434fdac12d00a8ef062d1f8d7f24e881325f4e5260d58075770ee456eacfb71b3bb3c7f9ba80fba36c28c9290302047c435bb50066306402305ff4abc49bf78bfe9c9b6bec2a74bff75c1aa93482ef529abf6c2dd558fe0bc24afd39faeab178e1bcd9d57011366b4702307e14092f1bc4101f7b89617101283b3df0cc127284cacbb520760c633a635be7ad6eadabddb1ea58196e16074c01d04d0302047c435bb500663064023059f0fd1c377d00fbb05d574dcb28238be6fe601ea6fd156422111c93cb5a1c020f481e336ebb59ed04db4a2c907410f302306a8f894ed49dfcb32ae3dae3b73170135703bc448024aff68ff7f0275905bd336fc8c188b63e311fd82d316287c3450c0302047c435bb50068306602310081b65a3309766009c43044fd1ac7f1dd64bcb4daad3c310100cf3f70a16cb584c5e0976f8fdbdc6a2a94d2bfff67a224023100cf33f6e6bf7e90ab10ea007540c266c9a1f98f1ecabfb04c2dbdee733fbfd4cd1db7aa5582b299174e5da73827faf0e00302047c435bb50067306502300d5a32072146f5c652f9d77185ea9751a65263e410eb29957f87e08e422db26a89988020242225b183f1520328b267da023100eedad089b54cb71904c620e920634e34badaee8efcecc2e02254e8955ed2e3796e35a7cea25caadc8119c6becb6a96b50302047c435bb500683066023100a6dbf77c478fdba3126702558eea1ae2274d98aa5d2d8d810e348ea49539f6dc1f411c907b8e45de3850030c296d96b6023100ef23544e547922894aaa103038eb5769cf4d46cf24289febaf8a9795ddce53c31e63de997b27b1240b3fc7e27acb63a10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fbd69533dc1e5a05dc10e1ea73278e2ab81f8a2ab46577857a1bac74a9d0e9a5915e0439412de1bc67a05571627530130230799896cee0a8c497ee397621cae77fc98a3703de55820f4ad7d2344a3a005d8051302a93c3bd83d15bed0c9f9d066c5c0302047c435bb500653063022f5f1354bdb48df4dc23921d38a9e6fc2683ace646cf4feeebeb5898535a80d821620ade84a3654f605545f3e1610c46023012c3320e723d80215b3a48ca01d2b212af40ddaa1ef678f9c99d8acdfb4e3f3bb6b324ac9fca021f47f97b306f91b4250302047c435bb50067306502310083da0eac1f9a1dce8030d24eee6aadd48e56978f4fede2d366d0fe07f6e81300aafd95deeab2f61dbaf3360c81f7e84d0230130da4c7b1aa03f9133c10f03cf8438abeb0709e8ed8ab0595b4a7426981f022559369d0a62e3e036a05a088cae25ad60302047c435bb500683066023100a74aa1535c4c23a86a0d5ff5a1cee6442482e0f0cc5b89c1fd4894c91d7abe3af43de3e1564c92d9380f9e53b652c4aa02310081174becf5c0c534a491cfa3d90eb97402ec1dde8d1d3fc16f72b7eb1022829db9e880229599ab7695affaf5eb7acd0a0302047c435bb500673065023019ef82bdaf89833e88d1ed195a4a1e1b7f500133d164a6fc964b6153839ed449ecd321c1a31c31df88fbf170274ac735023100e1c918bb7e7fdc378f2e253b1605cd90ecf3bf5861778ff8d177eb2dc10d15adefe2629e03b8d36c280fc2a827d6b4160302047c435bb500673065023100e01d4b04ff618a15ba88944971fedaa91a5d5400d359ffe288d5a54e9f61128c6e10b07fcefb1c6b5745af6cadb08331023046411e1cd06fe91db32f9e55ab4deaaba9c7a7d772df2e65f4747027d6ab844ea2c4baf0629c06e6d2c9498502125f1e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023031f0f8ea016760835179d1b50502b2fbcf744ea43a717e37fa8fa12a84575b3694a8227cd20afdb00aca73c7052b3d34023100fbdf6bed99815142644402edeb423b9989f1b29cb4a2d65379169379eda391179b539a28ce1503db6bb42178837920ba0302047c435bb50066306402301acd31aaa9ca009b1189f28d8e067c7a6932158ec7fa106365e0be7a3f3673ec1d54193d86e4d8d31d386935eca1c24e02302872b90b5bc4180c480d2b942c2b47fcd0694a3d494bc0c04c3df0e5c2890dc868c97e3dbaa956a9cfa2f06f0c6e8dc00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304f212731dba81cb140a7b4a656c52847a063d6ecd41b24dcf91a178bd0a487293f0aab7fc3ec30797b770487244c67660230539df75dab6cc14de347047614cb8fac968985bef88984db8a2647c3c0a10f646f3f3fc86ca39f8ef48f39a347c9a6ff0302047c435bb5006830660231008c1fe8dc3ea661b5648ea2b4224fc938c4dbbc5d8e78ed3fc0588c7103f928a4ab2b3c0a8a24119d9afd6c2e94b1ab46023100bdd52b9f79111534b686d536deedc757e7d8ae6a6eb927b43c3841f03556fd3067eb78b278d41e26c95ae11bb99933b70302047c435bb5006630640230372ad2ff2e493f3b0babe3611d8712b9866200d8d01472afa7958151ff3ce8b53c57846b04371e3cd9dae2fdecf4cf87023025ef55da11c47dd78180eecee87e3a20bd4d036b8eba8e2d6ae1b7a89e4cb1d1b5236f88767dae7975c986eaf90538ec0302047c435bb50067306502301a08ba6852ecff494fde00ac0f66321b975a21134cb9d365fe729220431856aac11e072bdf803a4707f6ff1531a92d34023100ee2dd56ebe84b947e772f9725eeb31ebe534e225cf6e8dbcd2b63d0a0fcb2d75e745998f62708ffd48011329bb1cef9d0302047c435bb500683066023100828ab6060ae8fe0788dc5e8b07b02848b3602c680028a7f2615d52082ca54d99b4ea43a210dd6bfe2b5a9436c60a0917023100c8aa3b9cba1686306286cf927f9a3bd9591077fe32e92e9091d72767cf6f7fca26c7db4597c1077348f247a0c818a1790302047c435bb500673065023100bbcee3582b7c0186fc6066fcc03f6b79ef5243e300a73ed47d7eb1887030afc7f20cf631a4237c1ea1bdaede2d782a04023031c25b2e37a3b3775fac1f587141c8970941edb7ca227e7ad4ac3bafa2c23ab843d7ce08c28a22d9b78562578d8717260302047c435bb500663064023071bc765f5e96f7a890f552b753bb29236c57eec08d11570af1f0930bdbeb0935528e012f4a5fc7ce20742be52dab482102304cdcdeb7a795b7b61987d15936dbdeff5863949bb77f90bbe8d6cb905e40e450b83622700f12411be3e1de3216fe68060302047c435bb50067306502301823ba5e736c85b47b4f988747401c8ac7a5ddb58422e4942e6e38e5c59bb5e2b1f1244e3a8ca876f03ac93823b30b36023100d01c4e5762aceacab005d40bd0251a0f10266a59c01c7930c3f5e286ab90ea61e582767391c3f497cc06014d5e1997640302047c435bb50066306402304a2314d98376f676b87031ae7556b96ca6fba7ecceb55836093a9e456c7670aabb7ded3b62bce35986632208f7836e1b023060270f7749a7baf25302c911ccbd3e7c477c9eb46213b7b966681308641c1edea5439de2e79f3db6629b9f1be4c7c9390302047c435bb500673065023100e854b81f4426e6c6ab8da56ff1d92fb390b363f3735597212e4099f86e2c33787c72ffebfc6c7a8176dfb02839c0f550023041dde25fbd98d453ac68d75ee153df630348c36b0a123cf092e32f9d1ce19918348f716974cd8aab5f5e71b72cbb05a40302047c435bb500673065023020f4b78b48d724e0f8e4126c111a7488055d3d3dfc6f5e9629d936480724043543d55c6628e620f9fadf857a19c4ff89023100b71d364e31a3650baa4859002ffd75b99e0640a746b0f34b6090d660488e5252b64a7702f493f0c7f70d958bf089a0790302047c435bb5006730650230273defd99f651aec8368144ab4d1c8b5997f6b15d758ba00bf3b4862c026911178dd21a6cec681544c1fb3855b59fbe102310080fe4d21d149875eabddb329d64cc41f1ddb813aa603ba53ee69648131321508b1a531621df620858ea63c0b60ab61730302047c435bb500683066023100c4ad6f50b80f4fa5a7409d4674e04d993ac2440f6f43a482beee000639d04daba6b42bda0c5925a7ea39785906ed9de7023100b6008a5d129f109c0f2be32ab999ca75f8b6f4ed2a30bd4e91efb89d1cee6bce882b4b9edba0ce2d4649cd0ee68b4b7c0302047c435bb500673065023100d8ca74aee7218bd77b6655e732a0cc1a103a2bac2f7d26148e5d3f60aa9cd0b1491c30f7fe073255dec199b52cd6977c02300e88bb3f3f9ec7c74f07f98fc1863e48ca48aee6db73bd04ed7abced318f75c5fa032547b294c2bcaadfa741c67d8bf00302047c435bb5006730650230016186fb374b0d105006c8d143aee716483e611ca7093a538ae17034e90088eab5fb471e3fd555e9f7fb8f9d09154f09023100cf2a51fb6b62a1860475211c632a5baa57b9de42d2d1f5763634231b41ec751118f4a52d60d88c41347208bef406c3c80302047c435bb50067306502300dd6a1390b5cac8cc9c595be4ca9a9a8078092163e163363405950a245a9593ca0868c70dce265bd0567377d587802e8023100e042d18fd042d75e3b05227b94401529522beaac5b00dcf0046e04cf7d13b4f71ad6e30e63e9670c2232a56a6a45e1ea0302047c435bb500663064023073a3276a475e5c13d88607c427f90e14583a7b2caa6fcc87a5fa8870187506869af0cb48cc87077511230f615344cda502304326602785c67747d736922af5df3f2b825f5e73949492487882da08b0e9d898b60caea5dd53e42296a1d19871ccbc330302047c435bb50067306502310084d9592ff28a57ddb31e7a9b98d593f950d6ed0f6a1a2cc573855b46aa0ecedf8ba8873a28abb6f8df407a90b2fc142b02305767654bcb6207bd1613c12e555cf98487c5b556e651e4ea11e4ccc26bce1914ec3dc4af642ed28ebf59a556f256bed80302047c435bb5006630640230544fe5c173dd36f1a7cd1f9bcde2402e0321112cbf7d3040cd1d3a8f913b9acc7cfeef64b0155bbf249c118b9d149aee02300161661e7162e0e5af5914d10cbd36521f933ca4e6513310ea38f596d3c4625fdf538129a7aa91621567db813f6be10f0302047c435bb50066306402307090d6d8ac916b9b8c18fc093ad84bddf84364c7ff9929980b101ccf209862b7c2f7dd65ccd6a029bd7c322d0a2fcaba0230096daf25713b533103ac08e2dbd954c9ba0ea4a2e74200c1a6965032d6f5eb61df35730787eaa801f724e6b083d97a060302047c435bb500683066023100f9cfdbafc007aa762f1890d3afbcca839a979b5737ed7ca26e25e2b5e14da6b61e0100504aa3890a676cd6f90df3bfa0023100dd598f8d3c02274d248fb27651fea1573d81d99b40224c7c3b8b77dfa76bc50fa35186950b7a2a62433502131f8d0e6f0302047c435bb500673065023011eeaa50902a37bcefc52dfb1df22872620f3fa57f2d8f5c2e6fd359015168cc3ee226d2710860bc2a72c0f1c15ef89f023100f7d43d444de6f80f2aea57583da4cec6efa123ca5de543c8decfdebabfc2fc07031ad4f12c7b390137a56b05d5be38360302047c435bb5006730650231009f5d08292e400c86685fb724965c3ea1ff3d6555075be86af06835d8ce6091eff54ad4a07317429fd2f0ded50a232c16023040cb97522289175c3e607386c7c001123cf6bc20a69870f0f3af55763cae4d4616d8c099b918b2b68618930c42103ee20302047c435bb50066306402301c5193ff86b3644d24c2e222bbbbab2b7af8b12a900445c9272db06749b3739e39ae43cb1b0322dbf8e77bdfd9ca24cd02305ddbbf0af9567f3b34d7fdd6bae0e42a7be7bbae00c772b2e75225e8de92a0d8ede827e8feb6daa7147c8b487b91de0b0302047c435bb500673065023058dbf2bce5c530dcf3913dab4e64ba148a20275cf59a3dbe4a2a6e60a803e24bebc3db0d1c739c2359adc8a37abd5cb2023100a08a31628c65eaf2e93cc6492d14037f0d788449d279b196ef0c12c5dddd5148d82741e3be4c0230150119edf71629e40302047c435bb500683066023100f8875ab2a7bc96cfd12bd1ebd1cf7843303611b4651b9ea1b702f850d7125f037aa496ce2341eb7c7cd8d69f94bb7871023100ed7ef3a74360f0c81d9ed39436f43a792eb2bdd10ea6128e514e47e76986da3955bd0a32fe2d6acdbc1173d7c4734cee0302047c435bb500663064023012c1211801dce7430c2885aa213d175400351a237ab13c40941c8e4936804c66e0d0857f2905638f3344f351dd936012023070ffdb65bbb7cc8fd05f86595816f16e44beff1f2c0b8d92f478b2a179e89ecc8f2f8e93816cd31c5c217eb4ec6d27c50302047c435bb50066306402300e4a8400f3af2ae26797c1b9e75b09703e292068900a85a6c1806482f5c1259104c335e19b84d906b065e2010ad4f11d02306f305b86079f56dc3b9279476b19f4ec0c6c083786406998288380877aa65dd79afa76ddf670d87740b0e6cd19976b580302047c435bb50066306402307aeb999fd1bbb1b4bb5963d2e266280fcef181d9b507c66b85f728f8aa089cf64fa6c9a0467f23e7c1b426e017f4c78c0230626b154a776e338bba77b8092c4a08be635194ab026075e76302a44f810a8b2af1160e59a33550b771b87a5642a337d00302047c435bb5006830660231008db1ba48cdae82b48b7ef3310f7908112eca5646acc35cb00c98a9d680117f74664cceb33046527f4895aa778cf9fa1802310097beeacb47111ada598000521d3668f8e4264d7dd608dcf85607475a60dbbda1debeb2e2bd97645630b39b49386699cf0302047c435bb500673065023100b59e1b45d43237010d0bf964a93297690b557aee12ebda8495b6c9f818b4bb7a4b294982fdb6b26e2e3a41c3f2b3659e02305efc04880909bd3bf5a0e998915e12e70c249e73dd788d41d1ed7057207aec2a1ab6008262386d0d118a763c6a6c1d470302047c435bb500663064023000de744b912f38e0b41f09dd26024bc52ef62fae2e175889507a6dd1fc211fccf28f849e709baeb915de23a20e3e7eb10230781b03df5daba1a33fa13b5b68e5364c7018673c508abf7bb554e6dbca3130f3d9298b64166b8734472985c9de5175200302047c435bb500673065023100a6fc3d23e2cf579c69b77b7df1f0f0446dce2ad784c2b13579caab7e934c4df6a9745c8f77571abd291fda133877db2002304d7dd1a84b02d492fe8b79577c3ae1f771788b463d4bc1923edc4dbc144b125e8dfa63e83b0e738784bd1969675601ea0302047c435bb5006730650230127ea333f7c49219f8d6766313625a734755d8dd7df325a9284716f49db61af5dc8a7afd38e25fbeaaba64989541be710231008bf63e83651cbd186c541938a38fc8597ac752237856f760c918bf6dbe75c3e4e665f8cc95897a0b4cef4444523f26fb0302047c435bb500673065023100a83e49c11b2bd6c5603319c533939e7ee70832722f979d9e386e2484f5854b19b68dc1f1c9c73cdbb69402eed58f7dca02301eee312abe62b6aa68f69ef2be3188542633ff7c94d4092db3cb2dc3acb4225ce39baa3e3f83cc38af5e23ae6d2f08130302047c435bb500683066023100ee7294661ad1bfccbde75b34046bee39c91ec2de9de8c6d166015e0fed2f6c0631713d2300a05832aeaaa7eeedde96fc023100b84b2f4f866b8ae1f8e7cb1d26f5d5f6c4eda97004b3b0494de33090e9471a380319ec20db5f5834a265131375f11f160302047c435bb50067306502306a48d046cb5b5f4b9e86ba6d3e4f92fee01b573c3514547ce4e37131325312d4881a46bbf108e617f6b7d1e951953b90023100fe48252902ef473fcd5cf0532893725a1a261676791c8885ba0ffc2d1b51db3007ca03c0cf5c670307790d0fb866a86a0302047c435bb50067306502304b2348ec8c42c26891730eb2881f3132ce1f357acecd00ec271997ebcf71a1c3cfa8e46112704370d3cbc0cf14e502f6023100aee48337a165ac19dcfec6bb8e54b39d38d147d028be41cd2279ad7f81b0a3d7b91bd7de41d758b1305db20d3d0d6c4e0302047c435bb500673065023076bc316884de30228cb4af6ffebdefea40479a1bb4c1b9efbfcc921379e01379bbdc30e4e56e19cc26e6c82a2554d840023100d939b42a3ffdc0d3538112390afabacf3f885636e2fdc6ef0483d58196ab595e0d35886b2480a95d10d09aeabd1ef47b0302047c435bb500683066023100ed090feea6dea8eead480635e25d392cb8480d4ec9bf74132e5ef9059c2dce96562929a1659f356673ad56caec3c449a023100f26e48c870bf9cdfbd9f4340fd5bd06d17e640d01da9e920a686c5bf1b5e122b142d3245db0224f18662684175f923080302047c435bb500683066023100d840d32abd83c09d2f508d1bea392a24d7a5d55a3883da88de8287f4e46453e7041a522362fd820c27570c90df2d0d8d023100fb8cf82df14e68812b436d46b40d92eed4c7a3ba12ccd1567532065f913abf3913812009c0e0eae5ccc07f13cc35f94e0302047c435bb500673065023100cb189586173f5a39bf1e9c7d2051847c2e9ebc633461b85d5b1c761ffc412b5acbeaf9a2ee23bb433c4e245956ef313b02303ba54b8011c1bc14764870250e14aa29a6ce03ded2b493d9059f6e3d03983f88f8a950f3267b6decc234e422e782e8920302047c435bb500673065023064bbfb68578da74b033c0eea41452d351615b95ff49287487a41ec38c6f04cefb5fdbed2f84c819583bf0b8b1baa04e6023100ea089825794cdb2b22be074829e2d7ed879660359c2789b7bf9c379b7b362b3c44237d2c211d79753e55873a034af3610302047c435bb500673065023050c6af2be2d1eb8106f6105ec6d9060de218cdfcb4be1df067403eeec351c624ae6a148a585bd2db0d327f98f611e2e20231008e5f7e09b1f8c2340de187c0ba7eaefe8bbd54dd038c4f2ecb4bd53f190d56fc7b5149c9f10362ea81cce4c71e2354100302047c435bb50066306402303af93a60e950592ed8b3896447318f899245c40e4599afb75720fd5072363599a57dadfb56a178ff4301e70ae5a5627602306dd89e7a2cc1511b9b87032527d3a5646e978e099585fee49bb1f5ddb7d7e64b337024e8f4deb6a6f4d368f61aa007a60302047c435bb50066306402307d2d8b49888155f18fbf45eb77359fdbf65e49ec22e584721e97bea449382c828f6d7a002a52d179e56081eb0b26a92702306b227d5de80ea6d7a1891bb153c8e9a4fcf952da0d4cab072357a87046feb1cd0d22e615ce429ed135ebd328be7838610302047c435bb500673065023055ba7dad25a0c69f272fcd9f6eba8e5fc7e0fa3bd8cc5a308965ba9fe726aa4dfbefff0367ee94758412f5f32d1435b9023100bdd77ff9ec8f9cb399f2c624aa0006025735c3466f3d63446633cdb860ce63d248522b8f7ee537839b07ceb1003f23ce0302047c435bb5006830660231008c3e86f062e3f041dff22c13dc2dfbdda30cbb9f2cd4c43d369c8d0c64f07514223dbff19924ccc8ba62d241faedbc5e023100a79ab119c2530418d978038028b596e96eb920824fad806f76f225b1d7b98657c41bb62cc4fe2a2a651872b1ef42bfe50302047c435bb500683066023100cd48178f0a81e911702d3e35523798eec1b7f34579b1cddae20bb77af7d39d1f270b2266004608fdf4676cfe96e527eb023100fb775e80c3a9bfa946cfca4eff3e2c1307de8053b53a145f5041d1b841876c93789eeb0b8da191eeee98318e9736731f0302047c435bb50066306402304cad510c76874725d995d0ba083c9c0a3d25e75f7fc2757229463a73911c0f7bf8387157139dcd427a8672d12480598302305d1bad6bc7f8e077cbe66763a4ff7ac61937d75ec1de07e1739d5e28aafda74281148104c03e2be1f37b8ff00660dcb40302047c435bb500683066023100b7d7807eeb3e09c1b66987d277a1d158a90b5e6a78b9fcf01d2178138dfa0fea017d9a08c40601e34d09e172e87e36b2023100a69bbe618ec9b1a37baaae285443490ced0025f6281b1ef3f127393b840e5e94f93f27eb15d2e776d95f8e6bf5f327b10302047c435bb500683066023100c368b195f3901e56daba91fd2b14596df14795c45afd7dea79e5fc3fcc9951706c04c53e126d2a02ef55d4b42221f3e9023100e1ed89afced9a9e9012382024c6fff67f64251bdc8acf0c779001bda6decb8c768efe8922c2db71d77263a6f4d3af9730302047c435bb500673065023100c5c386af600180906f1c25dc42451dfb3f749a935a96834eabe6fe0bbb7f430298045ffe99f9d62975eac4aee1ce4dce02300b875c9f05af1be548f4dfaa874b4f75c56ca5383703671906787ebedb2753dbf822b949329cc6e93df77cf7cf90cfb20302047c435bb50067306502302f590a8a02ed3b6e51d9cdd37ebef773bbaa329d79d16c9a9ef100270e970f1073f4791e68aad49190178684ee16d85002310085e6d6e614fa500a2109db4b934ac22113f1e16419bc20978fa72b8ba8972838ff1632c14ea5ab763ec30d19fe2461cf0302047c435bb500673065023100b662dda80f85eede9d97b04e0186ad959541e3f9bd73a2f4032d506dee16ca802dd69badbda93dc486e7797bb3d6253202300b58b2d6942cbf4c659079f86c5a047b9d21de91f6c252f25207520df966ce6814ce60254c48a7356c99e316834a6e2b0302047c435bb5006730650230583a7ce2b2db1cb5e512a46c48c3cf91d71a69c757c1c9f9ea3cdff71edf12f1bd2415bc8e60ff300c0c423f3f56c4f402310087599c329250be28bbbd6367a3d23d62570c3de9e43c90d958024a1238acbb389651c31dd14535da3f2f35a83cb02e950302047c435bb50067306502302cd7c50f25b3d75d5a5acd560cb546563cf35ad468e209cdd37e40d1de7793400a8a7514dfff2a810cad9601078a15e0023100f413698cbdf8d5dd4b853cad891d34ce1a585a807c5191af57e0cc848261dc0c6b2ad82929fe2e1876752d5009ffcb5c0302047c435bb500663064023014c735f027fe6813ef80bf39d80b8f8b4cdb5bf81626ed92014e6e80440b592b3e98cc7ba311adb74bdcb09127e24bae02306469c3416a4b3949ef4f45f5b461b63ad8b2cd2d7907f9b90c73e234facd6dd940ada77e29aa47c7fff6a552957dc01b0302047c435bb500683066023100fa175af569ddaf150ae72dd9b142d1a0a3a81a91ee54d000891b78ca2f0ef4579c68ecf74d250a71a324c8fb86a22a9c02310095048850fa53b9b92ec484ce7291475c1ecd422a2e543bdc2b6d637bd734d4f885973f490819b247d48626b7603161650302047c435bb500683066023100c1f1a0b84b777552207444482c2a88e91a0ce76d73dd6614d1ad0d7085873280b06f32391f71c7c8e12a5b75a8f2db010231009fb869223e5ba0df0f33ae5ba9b03a45069f9ad0af941b1211fbbd4f889f1eaba23e08fb5b95644775cc01ae50c9f8630302047c435bb50067306502310096fcebdb85b62fe3bf0b16a6304a8002e11f7a2972d38e0ac336edb13092f9768b585533f34bb10d33bbe4ef3e10507b02307c82686dd2eff400c15e44e43e624287431cc78a43988d0cd5d45768ad627436ae6fcf604b4bb16366ac76ac3c5cda970302047c435bb50067306502310082168c3b1523d4f5b83333ded6fac4f85ff7999de77f017238da61687d7c00c390c4d988e69bc842ab7b08d5e60a7425023064fb33b785684f45c8e13e420592d98141e34d23af2022630ce2b66357416d38369f599d15606ea61483d95ddde937e30302047c435bb500673065023100ec373c76df2eb6bad8499e457d47f27e69158a36ee80e35abe2f96f044fb73999f4ac625444f2fcf17d9d8415bffde7802301285916e01dafe7a2428f02235936a4b2afc80441f04e2caf3acb6c5330a56470bd1a07f203e85a05cf252c0b56723800302047c435bb500673065023100dec59eef7f9c23b16093b9e598f58ebe3de0842fffa4cae623ae8a73b692e35b50909833c30895275bac9961a97bbfa302300e5aaa3680dc50712c89e2f896577d1dad660d348152223f24204383ed8bda843bdfd5a2d67815f4a037eeeb664ffa140302047c435bb500673065023100ab5a1c99ce5a66accb402f33bdc9e794aede35a1ff2f36a6e3241e06b608cd372074e8b826149fe4dcf26ab011412f1d02304480bf8a78eff32daaeb8eff5723efea5b304b7ed8da917532a6d540b35a49069ccfb385a63656206c81cd74bb5aaea40302047c435bb50066306402303a794116689f6d633ed0ce193d9443292cebc6a83ddef8404bfb5e41bf1b679e14c863ade432390bee4060db535234f602303b8d82c93161def19a7edcd958c056d7d9b3e4bf7425e00ca28f532d78652d41b12f9625ecc3d471f6073edbad5a79540302047c435bb500673065023017e49b9863b26cd73f58c47293a9dac0faaaef22e5339b0b1e7d3907b2521bdf626bb1a82f553348759cff236ea09352023100b785d6fc76047e5f8d8e573bdce6a04fb82e83071c6beb3e703d7c9caf2d39134f57cf46f1324b468983c4bf4c34e3970302047c435bb500673065023100d6e0a9e08521a2863d1bf0bcbb88604bc91bebee0cc46759ef130c018b4f794e41e9bf076e30b81654ee9b8f51f6a0730230473eb75d720162cb627915919acc0306d447c8a67404a3eccbc02e9a1ddc39e87235a2d8b136088bb64715e9432c6b9f0302047c435bb500673065023010bb56e2a2e5bcd8b5f9edd0b62f625660b2fb63160ae985e2f22561fc6b0dc5151c20fb6b600043f1a0700e31afe2c4023100828e1b2dc1cd93b3b28de34397484d8249a6346cb08baec04284685c709ab93ffc267d28aabcc3c46a615a7d702a3ef00302047c435bb50066306402301341b4adc932d1538f5a52905535b447fdad8f09c7ccec205e8439db9b4abcf827710e6316fc07987201487272c1ef460230073ebabf1cd6f1593e2461f19769cd08035844367dac233ec83b4c0e87778441d3faac1d4575da9da496a3c7019b81c40302047c435bb500683066023100d5f48876d8ccfbddd0fcb2bd11f88c0d8b3dfb28906f5bf503fc37922def6b401b80ba9bc916e6893fefa54247ebb059023100ce5ac9fd43deef95051fa35ff6f776114d434551bb500142c7ec45be4f54511d7c684387ce452824c5488d3f334e2df60302047c435bb500683066023100ea86f6ebb5f7872905efa571b62dcc7bcfcca48a15b2cf76c806eac1eab739830c661d8c08ebe0821bca4ebe9e395f19023100a47fcb9d19a135d72c6707c18d6e8585bca263cf9c107479bb61931b739969ec25ffd2a2ea3d9fb9d1e30761be5e559e0302047c435bb5006830660231009d56ffdf2c4014e3cd7e43c43c348094a33b7e6f4ec19d98000f009ca9cb9f5e405126105ba6cf3ef997743dd71df3b8023100bdb4b65b0f2bb62b91f25ee0de95466a3f0a3368bacd21c5ec1fd1befdd430c03a22c2d86cfd7603615f82a79b8c762b0302047c435bb50066306402302e0461de9e4373bc951750cd4c790a4757107fb4cb408504d32437d3d5dd39a6ca557672b6a57926815f85abcb855c0f023051c6dbcc4f6eb458bcd58d2becdbc817c37c5a4b628652079efb5e3f15e3e715f67d9dc134c3e8ab5a184709c75d85930302047c435bb500663064023005d6ffccd71fbc9cf80abccb9ec3f89ea01345cabb8de208820c7bbd89332cc4a8f8ba19c964aa9e38c4df5c9b51b9b7023001e67a9701568fa8883310360e9728fbdd2b48ba956274cb894151854704ed489aaeffb6ed18ea0e07baf7aa1eaf15a60302047c435bb5006630640230415ad3c067086938da42f1a6dad8b4ac13af98245d074bc9b042bb6e18068899d2add6252af4bf89e7a32edf7c3bb6ed023028f2d5478d1f70459da75517757f549d98364c696802800bd4f456cc658d0408489d990fc93cce27f734f0e3dfad46160302047c435bb5006730650231009e5853bdf647157a2d17467dd19c196488412bef9e8a3fb16402aa1144c5c88e6e876a893108571499957ec515c1a0a00230542c1b03ee938cadba0f271c878614c0c787f57249f434ec63d44ea99996d88d787682f90e482423f2330435e8ebcf9e0302047c435bb500683066023100b77fbb5a92064b8b5618228215bb934b960faa1c4705a86d0dcf2cacb947de088afbbe94b4ede5836af683247fed94ad023100e56945fb30cc3d53ee487b6fbc767ba60f612a3b33efe3a75eb7195e03b8847936af40b4bda081aedf1876668c37d14b0302047c435bb5006730650231009ead97a8e9013c5c238292f1940f6b96ed509a07fd81bcd9384fc00003cdfd55d980f55e34cf8dfbc7a4197a7490efae02306334befab0758eb6f2f42f6be00a78df32ae12ec590ea0b7e425d8ec3604a8da9d19a08e4cdccef497d00f356754a9a80302047c435bb500663064023001079232078aa93944513a1bd46e12bfe96747a857a81cb8da424f1a4b49f42599276854ced8c0ee18092c5e17451fe80230486c117ee9b772bf98fd050910fdfa46d56a388b9c34ad89cd3788757ded6924d74bd409ccf02c3d57bfd38c9db7dea90302047c435bb500683066023100f5e3f354956ea8216d56e53b8c5f9d4fb6191bea743b599613bb072abf99dcaac7233ac87be5e141fd8c8f09f173dfd5023100d9fa65fee45733373ccc1588e991d9794c3f046ad45bfa068e86c1f0964172e90fd475d214fb26cf043df977ac271bdb0302047c435bb500683066023100835e40a0deb0f495405ef279125b6a8fe334a40151ccd2970296e5e1b89043306202fcba22d3448f92b670c413c2517f023100a0ee642c33f0905556e71984a23d41af8940d3e364b624ffc8e17d1ba514cbd1a5803f581a52ec0982f625f39743f0530302047c435bb50067306502307b0e842cc9c457febbbdcb1c9d1a5358b799a1d71efd5ef1c02b99373c832846e284f9a24fb9ffd58f02bd94fb776bed023100ccf95a5a46cf929ffb7391080d6cfe2b805404c79f13bfbd6754ba7ad85ae12851862287c8efc20a97efb57265598d160302047c435bb50068306602310086d08519e9fd4f865f1432b6f2c701731e875786fd630a5880105058c6e735b18d07408e85a181bfe1267b338cc10707023100e9094ff2e351035760a62f8db0cd5517bd903cab680b4d52a69a4d12d1e067d84590830cc067988ed12b279021e5b0160302047c435bb500673065023100cfb0cd8137b574643cd54b26a507c3eede25e0cd1ef8453fbf9a8b4fe0d6b9edefd21ba8dafc93ec0b2420d0049cd3fb02305ea7366db9e1f06dc71fb7623e574ff9cd81d8e0ecdf9f97dc404f0f848657f1ae16afe47620525821efbbdbb44dc9270302047c435bb50066306402301097dded0a9b3bd849b9d655877e03fef2aeabaa5a7fff38fd63df9540aff7892d3b6a98a2d2a9d946431775cbe87b440230668518e27dbd02dedbb53cd84f1fe5b5fea98716e703a491ebcb98dbd5c82e579c367856835054bd497c182407958c720302047c435bb5006830660231009e70e3b729dabb1e6434539ee13de91fda489d803aee4fb5609fa7c1d6a7ea8d991af7c476fc4e81282077511d670f7d023100f6b013a5ebcfe51d8f890a1008be1ba8328a4edeadcff67f9d9b00f9019918255ca2207bc22581986568730716fd8d5f0302047c435bb50066306402301d1025d31cc815ccf8781c3a96bc0564e5c46596baf7511986f80466469439d49c07496a8c85392d970998032982966502300fcaeac98669572536bfaee6fb0a6f74be485d1b9c1b4ded40165a958825d0afa0a971cf744bfac5f0e697db11cf7f5b0302047c435bb500683066023100a4e882d7b69ca5fe386d8b19a706efae372c06e6a678804554ea34461227c5245ba999bfa2e8409606482e370296dc4a023100ae838c61df0d7f738abbcf8f8f0904126110d7ead487ee51c64fbb36014093fda951410ae777f2507b67def6924eed4d0302047c435bb500663064023021d838af641333b8ee3a5b5e598ed4f48ea42e485082f87673fbf6814d4a408b47460c6256bf499affe55b52dc447a5202300ce6bb0a91cd5ba1784d69e74dda6f38ba704b037b661e8cfadf934cfad0c4cfa4e7b4dd19a84cacf69c395fb4acc2920302047c435bb500673065023100a5cee164bf3ee313f7d00982c20b63217222fdce1e3500fa554326b2a0ee88cb566fa4fb032ddf6b73e908c8ae1899bd02301733f5519ee4c76c68ecf96c7ea9d5350a82ff57df94deefdc430b54f0a8e3f0af4978d46ac0490e28cb82f320172fc20302047c435bb500683066023100f42fee5a734ee900a0e2819873d6be2dde39b40c82df89e52b3d55ca6a74ee7102210833b4627127e3ada54448893034023100dd5c1fbae10c4ac27c903dba1bacd41f781124651646400b657f026f7add672049d8a42e8e1b98fe56813fa617d0e1590302047c435bb500663064023024a9bcb0c6951865448d5a3f183a05990fae7b9d98c1eab9020b9734817a98b9289dd9e40a631764c8fd080619a10c050230536f69471cdcdf10f661ab7ad2974072d3b132a04a7b72492af5f800cb1ecdd717424c6363ab770a9a63c578453299f20302047c435bb5006630640230122768d045d1082863928ef7556707944f22a8f9c964b9e5da36cbdf9f841ac9506ad10489bd1fb7a0d0606699b7797402301de236bbc885e2158eb8deedda559671b9c6e34b130c00eea6159137985d2babc441cb69e67ebc375cd7ec34ee28d8d60302047c435bb500673065023100eee1dd9bb830b42c6f610abd844e9787a3833c5d58cfa7f70046d89a545f4c43ada72b2917efb0ff5e814a461cd00d6802304e6b57583266bf06d59f98c7aede86fa622aa58c983a8d35a8e2da8967ca47ac826510063e5d46a8439898684716592a0302047c435bb5006730650231009c5b93b1fdd00c3ad9cd5ebe8b2da1ba8295fb65abeeed095b2267097ad4161dcf30dfb2e2cf18cbcf3255aacc39aad60230129e5f11957f1cce9cce54b13f09252700c70b57765356d4a58227f3ad067837563e83ff592777f692434133c721036c0302047c435bb500683066023100921ab8c36bf837df48443e9004c047af4e0ec15d66d80ec6b03814c69e5029ee9c3f7f3e6124e51ac983d24221fd88510231008357e87471f2e0816584fc04ddb51179696e094344bb60aba3a7dcb9ff5e8cc3fc2c94b4e637459761d7f440819455100302047c435bb500673065023100ea12c3e426d38aa5f1434a808646c1978f8f92471f4da09d0e3da7899e4a4361a104c92b45e13d6f2f03fd1ae8d8c76902302fcd69f194238ede86961cb356a8d6d8ec9aec4d60156d277aa40ad329a52a01a08d98888a676c9f69d563f51de0f71c0302047c435bb500683066023100fdd72e41cb21bdfe463fce1b8635f231759a37d409ced59881d67d81159397e6442b006af428ff22ca994e747691f35d023100ea8e6c2c2c72a286d7372d018c4996487b77e482532d9dfefc7e31478d7cef5847057b8271b4cd25c9950e7ed9527cb20302047c435bb500673065023100d02974d88fd5c0f95d77c581be46453262ae8efc9f6240bedfb40eed21610bb5af818d08321e31badaf7e322a6df5efb02301c45219b9a6f9a1edea8ed55d97377e276ede065184ddbc559c2e86b7903a889c214bd35417c1773a3d1130636e634f20302047c435bb5006730650230292656ab02924830f02a9eedeb28029d6d936069444b900248619c51035c7ca715cdccf70d28df01b3614fdcfd053c93023100b7343355131a2809afc72f46260ce1c6d41ae3b9d39f2aa7e2d6e4e13c333c62c16cfd7599e29efe2cd8b92d800256d80302047c435bb500683066023100842e1647fe29b6030dcdcb0912a7c96d786a028c31c9340ba593fd278d27513635622bab6730224324e87467b4609be0023100dc2728ed298ac7c2bfa5c4ee7de07c4a54cf9b504c2f24c15711145fab62b125a580f8c2687b73c83eeb400c604111d40302047c435bb5006630640230591a8e3c8b74e31632320b5997b4879ed09e21c421dd031164d67c00dc816f7e1b8f2e33186b2682c34e1892918ffe2602300595cd83e85337ae6a20278f8d04dc23f232c0aedfb1decb3d01e23f4575728e9a30e88c2fa30c7f0e82c2eb9d42ead70302047c435bb500673065023100e19c0e890cbe1727144780b3a6b8e61b25cc205549886cb85188c07b8607b64483880c0f193fb35725c8bbd5bea2743a0230023bafa69e9d270743ad488bb052ee1da2be9cf552d2c6e3993371702b3664db75db860014779573f622596d127d2f920302047c435bb50067306502303c8e1389b016da9fb4a313c7d17c5a55ec27574836a757ed2949b03b07e0bafd3948d2709e2b75ce6affc088cbd46919023100e11dbd784eec26406b22cab6fe7255e5fcb4e5a103c4a7899a57a92e12775ac813a4f3d6f7c72d859f140f2964f7d2760302047c435bb500683066023100d19c9b6c76f05b28fbd53999e54763ada08fc38ae804e9c288d6733d744a41fd620075d0d042d1ccf04094e57468668d023100a82b65f2cb3862d0a4c515dc5c387fc90283a62219ee1490980ed1b4073853fac501b8492c3f3e9b3193a2fcd3ab16bd0302047c435bb50066306402303bbce1b45b12b6db516106580d98756ab012159510bdf64089aba06dc315901465851504cb42f90cbce20da16a6d993e02302efa29e3189cc44403ed6429686a632ccd3ab5496928c50ffec567ecd14333bc031b0259619723f3ac36cc9b70ea2dab0302047c435bb500663064023047d21005409f51097566f1fb4efde1c3e8c63915f53fbed96ae8171b172efcd4ee5625c256f29f46faa8e233ece84f2102301cf835ac0aecbfb91f63c13b6cb55451c3a09c9b65217f30813fd1171bfdc448f2da7570fc2a6ffd09e00f9cba661d560302047c435bb500683066023100851e1809070788c1dfa88f7da32462d3fc6c6cd8bed7490e22f18dbd949924791b0a553685a026331832144baaedb1b0023100ed961d0ff22276fabf381568194bf89deb531b10ebf22b5e93b9cdcecfb7268e4306b24c5ba7f3a032a151f960c11d080302047c435bb50067306502305c8c21b6f0f031a927f688e6c669f3fba60e1c262858eacb52d4cf87ff278c9ce552631d310be14bc836057c673edbe4023100a0850629c65269ecd1c69718df365be2d95817d1ee414420b17ac4766a24c9cd6ea01917159a37d3b7ca246f85d8fc1c0302047c435bb500683066023100c9dac01fc8b626034249d3e5a656c5a9e2b1c69d55da000e6d5c1a25d49d29d8cf4d46ef7ba7bd78f9b46e4d438d3a240231009572a3dc9035eb2c41c849916e4eda86f2f2445dbd7441fde6490f0d18ec4ea1cd0c30e3732c5519335938490eb96ea50302047c435bb500663064023043e9ea362229c0a9ff9f629d92373b630a17fc4b91f656ce5d10fd0b85989b55f400e819cc0391751a0d955a251d4886023049e25fb66ae4d82f8a0c3b5e3663f53f40fac74132c8ba6e500f6298e10342425f06ff31194e7a8b357efb29a5e493650302047c435bb50066306402306a8d83000d61a61365195b51f5e9b63811e00c37aee369d042c157719d63894ccc0eb695212ee4cb2cc43b6ef99064ba02302208a34196aea9015be3653ea66fe60a8681385371777654552f503e83dcbac161da94e8f3caf634b5fcfcbdeab5f2680302047c435bb500683066023100bc15038d159b918731af091175b849fcb7e344a184be5b194daf6e898e35e304b5be1c374482e7183bad610a79f36cea023100b83433dc7b525614c092e0b31e920c91becb46a75a48fd2ad544fcd6f29ffc2c0627d799b3813e8333fb5e979cd502a20302047c435bb5006630640230673e528354a606d463565a350b9af930ce428dc511b0d14727dd41cf9f024ea844f7b9e3ff14f35387f754822e45573902306dc3296adb9f6011da76505f3db6773e1b5ad241ffd5d9d416bf6cadf16b379c110a9ad394ae4e5b4ee01b4f5019a7260302047c435bb500673065023100952e3bcffd93b0d99c71670d5ae529db57ce3b6b3219739f3aee38db314880fd68003fea594d1ca5028a4c107fbdf273023063dfae09c0a86936510a2a51b71cd5c0d916152d696409f3e0570a08e057d2706e6a5fa8c08d8594af911bec014341040302047c435bb50066306402306c608e6be447bdb9fc28ccd9ba5651b1455a248cfe100e5c232fbf2555ad6dfc5c3157e5d82207de65b0bdeb27c82e8a023072eb80fafd7c70eed24e69b8a579f95b3c77b620bd85efa3efc27a7c0929b164d92aaea7359c3f937a41e2b4a0a343830302047c435bb500673065023100eda7ac85e02d221b895dc328a6115f23e325f388f6589814fcbfc99c869eb9ffe07301c54f23957f403b9b0d72caddd702301b88ebf3833cee660ea78cd747acd896797599aac26a49854dedf716089927caa001a8a3e43ada6a2a5b95f13d07255b0302047c435bb500673065023056d928f410541720cb71f54ca34dba18ea842489dc7694f86328c44f72533f63bb02b545b94ba599ebb8e5d6418ef12a023100e5ed100eabc519f98bb453028a74ae6f287ff26315926b576b431dd4bd322feda7471065f86b21c543e64747ad3a16b00302047c435bb500683066023100f1e16900ee57b19735a7e04149cbec027e92a70af1362607bb250a61d52f3bd491537fbb9788ee274cf05f0051d592bf023100c87cdf810fd50c6e4628cd13a65f7074518c9d0b6b59c187b281c531af88014b9ab0be502842d1d9b71a4d75a9a1a3d10302047c435bb500673065023028d00072684a5cf4af4c98b39013fa422c39df5576551b8ea37ea4fa1e91f050bc61c0c74806bc36e81db71456fe62310231009c0a90a6d119ae6e468f2496022c3cd59f251de07d4cf4070f041c3595719521962335b7780eb4c695b44597256b44680302047c435bb50067306502301c20d9324c5b98482c12beaff71cd2d53b87eec1524d89ee1870880de5df941c7cab3183f0ad5e0e3a00cc85d455015702310091274ec63ca0923921d86447ac1e048bb9e97df8e2a33b182fe68251c71656b570378befa7f31ee03f477d7f982f04230302047c435bb50067306502305af74eb6b64050c4726c44977c19f4080a4ef34b5fc83553813f1736667dc1b3ee57eb3e1bda89d1f65cf0eac95d45fc02310092e0ec0a9d7c66cf09c258f01a73518c0440c3782d23abbb25efc50dd9ab5235f13fb32e8c7ce74f2a1d0b283b501e590302047c435bb5006730650230363834e706d13fed88eb65307777de3464e645a48f1879117244fbffe24867c0be47a82fae62d5f6256ee944ab6726c10231009e594e23ea5b868d7f2103d10c240aae1c681ec34fc01bddc1d9c6503aa226d29bdcf411dbf3db8ccb324b2d12272e4b0302047c435bb5006730650231008a7da38fdde6cdf8b6daea63e7370270791267d64526a3ca154ddd022400d2610fc73c09522e123a425f2d8c70eec49a0230666c3f26f1af3eabf881a1c9534c443b3896bd1980451ba4cd6ca2fd6a1218033f90989d0ffb53590d6be195abc255430302047c435bb500663064023078f44b090c26048ab0c0bb95e9613cb34e204e2861cbc5733400fc4639ca4cf164f36454d2863a3b381b0141920cf05d02303db0afa872cace4fb27876da214bf0fc524cd4cf8ec424c83bcc41021dff0ad193cc9c6ccbf9c44227137530eb3449a10302047c435bb5006730650231008c322a43d759a978b3c58bba10e0bf66510576c8c98b127fb9d5e1e678702edd9913eb2ca3759b472d58fe1fba0c702302305eb8aa96f554eb25d7d667b9e824e63ca5ff4da6e1c7f696103118af84aa480f22087448be4d19fa6d5a09eac4c61bd70302047c435bb500673065023100dbf188eb281a87aa8f22ae67e0fa8cdc7e1afbfcea84d2646efd53254adcbc9e490fcdbe6a063f0ce213d4c6f825188902300bddc1f2c1597c3c64ff9644f22935cef2c62b04c10476e82fbea174691e01fe20d752dd37ecde9730fc2a4d75224a5b0302047c435bb50067306502300c56fa93fee7c2b38418ea78b68a09e180d48daa5a155d93ab64f8adab4a55fea602596aabb69bbe2916bf39e12cb28f02310083ef50503a5897dc555f68fe59add1a1d26a8ee98363ee8e6a1154f30bd7c3fe8b6884537254daaf233ff795e65fae870302047c435bb50066306402307f6a0947c7708b7d1b093fd16fd098f47226112d0fbaa920b03c3bf516c142e8b06e3949a04672084d666065c0dd7a4d02302e61d7f66334599ceffd384481d4a40a8759a14c47a03e61e51d26361d77f5bcd83f9aa8490fa585aecb7cd1d4062e570302047c435bb5006630640230554583519d84757e7b9de7868b0189dd9730e74365137eaa74cccc6b2753926bb004e8ef6e92ac8274703b6010ad16d10230133775f87eecb34b31f6337b106fff6b207ab4c976d5fd85b3d65663fce20ff260949ecd54fe4a7b8eb68792aa45b2d60302047c435bb500673065023100af21e95c0f6d6be708a32cd6145015a26779e520a156375ae793087b8209cd65f27c371c715abb853ff5c15b5b294c2a02300faf778e281cd0abfae845d523a52146d48cca2936cda12d66d883236d79affb0558907e93efb2f97866be8d184f98170302047c435bb500663064023055dba50f2aa4d27e93bce9752ecdb97986c9f779b1bb95e1145e07ffa267e8e41a3eea1becdd1522daad38317fe5b13a023010544c8785837a8186743e4b4d576e70233435eca43e27b26ad8b10c0702892103861532e069523898ab9e7dde559e630302047c435bb500663064023055b36b0c6c23d89fbc8afe55d0b3bb75f0447d7dd8dfe52a2bddc198cc5dfe9de7e497aaeb26a3f2012debfda7829f300230404c550ff714be1bf4899cb8df4947d230ea2a40ba8a669e2d104967d1da342e6acfb6a653683e0caeb817feecf830430302047c435bb500673065023029c6b4d3f820005b2ea4ea1bc807d39665a033ef9ae1668ebe4885464816851e83761868b8ac0888add11f37405a54dd0231008f758a633dd066191d68018d23b5777e59bb123ed64cf9b0fad52f0b6ccfdbf171dbf56cee9e38583415ebf9c41852d70302047c435bb500673065023100d2ceaaee318cb77dcef16e6d5bb782c84f3415e956d84a84554889584e30699fc09745fdd22990adae3b93c7c4b4a2f102305bd1eb41cbd15f685244f5b38c6c3ffe8b1cb21b30a478fdca62c40710131fad241b91af19f9a7f67a8bbc99e1e14ad80302047c435bb50067306502306c946b1e4ab6ab393055a7f26182d5ac56e2900e0c0adaa3e322b8e45cd932addb5f8464660fdef6999bd58b7c948f15023100bbcb216af97ff9ee8c374b928641d44ec681d495320ff29ef008e0e913d311a83a2a7c832e19262a0045720a04b460820302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304a7e111a56b8e73dfaf550ef3362c8953bfad6d6c51d17e9e067b2b7e290608970406758f52cd9484c0e01964071f26e023100fe82869ff0dddaeab2426928870021553fc98a7b80356bd994e1b2849a22d5c1d4d22488317ebad6d503a6ff394333390302047c435bb5006630640231008749ea84eb9fb810e2d58d4af19c1bc9536c389a1a1647ae09634fde98e8d0d275d3545fdddb81e148516ee9b1fb06c8022f4c3619846d0b6fd6ec00e5b9ba4e5e49f656f8398301bd1d338924a390d361a9c0c00439ce09a009980262f0d35ce10302047c435bb5006630640230021a0d20a5dfb68426563e724f6ab540c81c6fc1196e78ccf72e30b3d0841552b96ebbbd26a834a2e31fc8203d7d782402307f572ac36eb1b56a2b06572e3fe4cdbe85c6964eec1d2ff5eade7879540151313affa61043e82868f23e0ed8849305220302047c435bb5006630640230051692ee3856c8677fdc00f9ac844180d912bfa9021f215c26d9a2018a650ab61cc2848b584576706ff744b982fec1030230273dca9e92338188bb5722b87eefa570cbda83c11f23c10cb44b15c6d1032bdadaad85c669540021eca6d307055ddad50302047c435bb500673065023100d1531356019ba06955c9eda1557ab334ac2170cb5aa67e7f3e59cec55eeb4deb9e08cce57cd68140757b1ac00263d6a802305f26e3d75a7445fea1a8ddded772eb915d526905b1522502009be747a2d65531835c29e228f7d7a47efb395e54ba72920302047c435bb5006630640230198d9b2750916771ee793dfb8fe0d3effa16b392283d310f73b2ad2ff1307baefdc5ff2a003a3bafc5feba21b7a14fe30230565116fcd1f3159448c99c876426b427cdd277cbce1523088e066d80a29d41e77db255f81430825aea4475740cf295a40302047c435bb50067306502301eaa85b56d1fb3b365a5333c3c7ca0c5b7bfc3c7219e0243b6701b8a92342fa4e73304911f43ff325346b846885646530231009172d4453253a310fd0fdd48a181ec3c81f071aff543440a9887eb545f5a60aa7f6d7e4449f451eef3ae46d277bb94340302047c435bb500683066023100a886dcfad3592ee3c825dc94d04fa69e2477f7ae2e125a596afabf9413f5c3922a24d6e1980efd41ecf4c1e99d3d7c98023100c511c9fa8a664aabdd93340cabe2bc906cacafaab813b8d650299c31c6b0ce9a072acd739fc9fe668dea9312ea45b2c50302047c435bb50067306502304039b586fb2af4f86051266a04db980a584d8d3e709b42277879e58503be2cca50f744337c6c135e9e65996546ae68b5023100d1c707d9cad05a9d7c39adaf3ceb8dbc88ffd6cd868c54b4e2735cadd5c9b19219ae773db15958a5d1a35b3eb838c5320302047c435bb50067306502302aba740bf8d872bfae37f53a9c13dab6a123ff391cf0f43b7d4d2c652f57ad30c61b6bbafc789adf40b94be524fb5359023100e154f5c8705800a89150bb5f417d509cf1cdffb6d4294f38f39fa919a3b01de4cb4d66b6cbcdb26dda5f7f1f79d648890302047c435bb500663064023046eea207ea76b5c992dbcec888ca7a5b22a5747553b86f646e0d9d1ebc6afaef484f9c64626072f55c4d222c35f804a402302f0ca5429613f1accc78e85f05290e71a7f00a9fc090b02c4c77b9e7fdc66908182d0252e67ea7cbd61da8d98f8a763e0302047c435bb500683066023100851adb1b16376b9e4b15323507b114778a4189949f0cbdc6973699831f8538c090db0bf0001d211db98db639a1f045b50231008677bb8ff68a82d13e488ae3b47f76c179121dbbbd6e117d51ea5dc252e68732b1fcedb05bb81f10611a0b09fa2c25d10302047c435bb50066306402304f4ca43a05734a2432dc1ae12c59f7983eb36494aa429aee8571aca5ae22e342119e9e760525d29c6115545e025084aa02305c9db78ec0f50ad6eca46f3cc25c5ab7fc721ae57686f65c398155435041b2100f4a1a3d854ba6ad1c3bbe6e0daa0b350302047c435bb500683066023100ebbf76eba1b401aecd7bcb313e58102e38c2c2c3cda8b37745222bc3edfc452af74dc9ebbcc2495c9d04619b05bf5d3b02310088c0239882b3237d943cf2162d35186fc00fdd13a9dcfae05ec172489bfc7b0c5291c764dd9efde2d1302f1198e3d0530302047c435bb500683066023100e8972cfc1433cec0007cbe5ddb46d061dd2c516267ad38f0d8a272591716247b4d09733c81822c51186cbe5328fdbfb7023100d8e91207f3e1f2c8f682749d999f4ec06075c7d93d083b500d27a56b460f143f7f7780aad6abc6795083b4108fb810420302047c435bb500673065023100f2e20812b565429b63c06189aaf7d5e97c7b50adc708a4caa4c9f147bc6b44c2af1b34e7c18ea178f32a5f11ac2c22930230367fc2c142c055cb3d802521a9a7e32274d46476865e8b84f3f16d7f8b31919aef1ed3c6f390fe1221c25ca82da9bd430302047c435bb500673065023066888fa67592dfd48bca58b035723cf98d4ac668f7a7f0ab02292a3c787ca6e3f34d66e8884d71c776343b45d8208d6b023100aba4fd6f836c0cd3b318efb61fe50a00c9fd2f9fea49d82e09b2b153d58fff527f5ad8b7623deb818bce448b9f24daa70302047c435bb50066306402301fd2d89a92e6fb636fc45ef05aaee9899aafe820e150f430795bbcc319408e81bf527b25980533c8d1273bdb453e787902304e00705714706b27f0c2c0cf1796aee0198b836fc48dc86aed8fd678d7891f786e0bfdd6bbd64269dcca9437d41afa460302047c435bb50068306602310091e7a4960f92f2e62a25b6d72eacf89535b457883fc905832f03b406c3ab9585cbdb6e4047d94b554a32ec7cc11d8b0b0231009810d1b0f7b255159b9efd5dbfe7857b4196abc92f5f6da4a8b2f4fabe6655b5b12751c5b8b701d6ff19d62aa3f5771a0302047c435bb500683066023100925f595d701e849210f06f3331102efe9dac3b27e7b055c4cf691b2a430f3b3e0808556043a902decdc8ff056ea89b38023100c2805e8271456e3edd9a772893fbce7d0c32bcaed08b444cb231da55cca3e2418ab098928b68847d86ab29dd3d6d57420302047c435bb500673065023100c8c4d35cc56efddaec22d24d7800592a982a2fb3886934d0f873b7aebba7bf076048c3f8229b55bcdb7523d1df31389c023040dfcea9b1fee7671103e513da9abceab213950a32036e32f44088b1d4a06ee5696a62c9e961a5eff0b1204d489f6ac30302047c435bb500673065023100e3b456781bc591a23ce64ca1af4ae8ff9d274f8f025f9f2a96a0d6bda3e266cb2ea03df27dfda91fe82da01d4571d88902300254a4cc7788f31fa25a4d3f1ccc9d17f5fca1d7ce00124425277c2e357412089cc02f0309a83e683dbbc2fde7e12d9d0302047c435bb5006730650231009c205bb896a6e8ce7a8a311ae3c842a6b79d16a3ef734ecf3e9e1e8eec5d04392536e099d2fc567896c25062f9271984023000ae3c2dec1398b9073d4ef513b61b07a2c7de726e2389a85e81650bb0c88896ee4d6aec4f35ce9b5ddddb3d5ad7c38b0302047c435bb500683066023100aa983bf69aa4d4c6160b2d93707c802486a8e32433be74fd3602ababee0b60fd3241c6de5a8b756ad31cae1b3acc474f023100e47e52e2f4994f42edcfb6d7041b20cbbeba338d11a948c827a3d7147b8398f91023e8c1e0001eccff66ef08a45bc7980302047c435bb500673065023033a3f8360679d4c24680ffa54fc99c76c2d13853552c40754f4597e14a2539fced4406824bfb7e69ad31a63658ddf996023100f18c2ec4b3e43fdc975760d464c7f35aabd169c49e6c5db6140d4bd90acccbd8adb77f3ad37b1e097839f47f6efe38f90302047c435bb50067306502300cd33c060f44e2f87397738d103aae94e7082b1c18712973f20d54d79266c0856205f9032882e921a3e484164c1c58ff023100b09d43c1c197109aa6f3e01d5056462e165d76e5c062d4d052257f5169f608b8222cccd76f2e64d1a3341539b0cd8ab90302047c435bb500683066023100eb2b75fdf98664bf18d1adae63af3496fa86220fd5e1b4f88f87c56815638e34318b87dfe3f80f4bea7064034b64553b0231008b2b6afccff8e7943af2c4fce7c2f7565c050d4e28d03574dde7717615c289cc72ce66d74d8247b2aef3b8e00d40f9ae0302047c435bb500673065023100ac6b1f3048daf41ae8d752ffe7e2471fa0ed87cb6db2808b124c235af8eb21b7da86e843fafa4211da21d4026e0efdfe02303ff886e1177c779a8e27126d63a7e4feb4446ec879f7a5f5b2eb052438d5760c0fa2a70a2e056ac18efdc41d242e6dbb0302047c435bb5006730650230457b6176e1a3b285f790c5cf73ee7ee4c21f692b1087f4906280a784cbbd68ccff462412f77cd02ca8a352172925b9a5023100d47a948c3d0082aeefc696729c403773a64fdbfef32e78a5edf2be152b967a4469c276d7acf72563e004796e2f4077e30302047c435bb500683066023100cd30ec0f5839f256e7d24338a49d7b017ec0373035af7f1ce225e8b1155ca85b1d4604063b1bec3346096d911c1debf102310086bbbe386b0f5f0a5f3d35761850c013a42609c333c7b6e0dd6e8c5ccc097b674067d7ff366218038709aea0282396e30302047c435bb500673065023100ade5b494d3b1c04908950bad28a514c13f462e1fc6706daa0c0eb4d58035908c43af601ecbff96593e524690cf63f93e0230794852bd545163b5cc4a8191bc5a8894ceaa86b00e66f2baa34d1a4bac073af0c7e743ee4f459f83bc8817939fa591610302047c435bb5006830660231009b65d4cd3144be5eb3c80698f65f550674f9a2306f9fae8ceb8302640affa7aa16469ab05874216d0b15df577fe82e95023100b5ca1c9027d9008546925c8a2cb0f9757755f30d4731c7c911712012861aa4211ba00f575ae1a7ac82d070f302f3787b0302047c435bb50066306402301dafac915ea518c12c42e79b968a0117ae26e524a2a412cf0246e16c0a05ef665004202e45036d830002b7cf738dbd1c023072c7572876e287b5bfc673b5b12e80eeed0071816caa8323564857376689f48132f7b9b9657134b42daf7f4bdafd2c310302047c435bb50066306402307fa3560d0bac7176c88766db0a3406d83548910d95f71c0e7ebca4cffb4a3617a524a79f7f7edccc506e9e0cb3df95840230622fc235716adea1be0db1e6d8e1ff24e62fca31541395e2258712d551807542a10b064047a505b02bfd8ddf686f9fd80302047c435bb50067306502310086d5a73cf937cec56172909a6206d25e620ce16d32be4977c7d2599957c2333571c9ad967d7505795976fdca8349eb5002306a7fbcd652d2f11209cf6d503d2e8a37e19b4dae8bedae949ecf765d4fe9c6f4e8e7beda0dfec23a7933414f3a4d353d0302047c435bb500673065023100f51ad5651b9801700411406cbd41fde99c9122cffac7bc000d2098d28584b035f076fe40857c167fd07253e065d768730230626cc734d66fff346b10e8da57e8b78ca0e992d341085b8157364a3c197bc81c7fee67998678ad44b3c458412c8817850302047c435bb5006730650230328f50798007cef1ec14f10a16ea8340766a2969ead7911232233d0b6569cbaa8f5720f2860d322ad42b644adb3ff693023100de430a0f835de0f5bf0eb311b4a99be8a57eb624e60f5bd599a8ba65c23b25d3494ef8633be0bf7135246a89fde153260302047c435bb500673065023100de2d02175d565932ab1bc39175d0b9bb5b728ed207bbe55f4f04c516fb493c48fde51f712c02205e15e5d9b46d094ad6023020503d7a4539b06ca161eeb7b9f36fb819fca834af2e9e9000c16054ad735a9067ad1bb51c5585d1e7af5fc9f7385b760302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306c416e6cd8e297d03ceb7d73a69f2348c23136241351022708787d05efc272cb56c89f1671886476c6ae5d15c8b01adf0230245ea41cd10df87ed6ed04e1140081eb71ee090f7cd90ee4439b329da9881cc16d25cae80a4d787b06be715b5baf432d0302047c435bb500683066023100b2cca777263e8c2deb4944f09dd59acffa77b06280949e28dcf1045de0b3206a1d1cd88da29d4a61abbcc3f180551e95023100831070e780ced3d89499954aef84168fdf8890be555f5d3607896c386937b6ae1c09e55c76d2b568d8fb7bfd793a45990302047c435bb500663064023021d12b586b7f2805f945c95622dd62f6072dfe4e4af73a8140ec0dba2539ac3b85aedb4727fa7cd5dbb2dc538d2a905e02303f9eddcde181d8da5c4c05379d002184d4ec4a0bd6cadacfdc242aa44c244514b52da56031f3c3313f60d4cda1341aea0302047c435bb50066306402304f6ccf353c487b03f455a785c6c96eb7b2906a12ab89d2851d6f87f6450fd2c4ef2e93b4b8ec7c7f6c420eaeb3cceea002304f06381c3bb352fd4586cca062dd2ddfb3cd7cc04e66f21bfe798e15f74e8537fe186bb1005b964cc8b99ac288ab183e0302047c435bb500673065023100ca458988cfe9d46336ee99877f2593d1c02cf39b2a523abfc8ba76017113812c102bff4f7c1069f877f8589dc510ef84023006c239aa2cee1eb76fa54c44e0ff6bd1fa76cd10ddc2cafb7da5b3cea19f05c74200eabf0177499cafaba3914dbbf77e0302047c435bb500673065023100c70970f746976fb0107a60ccc1e55c3cac48364928fae3aeb1055b49b75bc1a9d6214472ed2db4de08e9e420b1163800023053dd5c3163ba0b2a5845a889c540414280c8710ad8543fcf7303010c8ccfa0509d7cb46e02ea64d7fd93f9815bf3ccd50302047c435bb500663064023036ba6e058acfc3d8edaa5ad0c993d989334b6977564335ef3c1ebbaf1f54e3d1e8cc7b560bd315110655d9ca959bd9ed0230072861bd65a98a07b591d92fb49594c2f704445e650f83b2871e0608f4ba838ca5203772f7f26e89e9213243ea18de820302047c435bb5006730650231008a67efd5dd11c98611df52934b6c1312279577610d82a5317f75ba00596952caa71f67fb825b9bb9d6c6e045f03ced7802301dd60eac7c6166e26dc7fa8f5f8932ad37312f7bb1c39d0c3398c3e8e3895a13a795a9e784f67ca5cfa3fa4896eedccc0302047c435bb50066306402301e016dbcc05eabf7b4b2b52b667b43c8813407784e65f06e66c6a7382675ff9cfeebc6d49f3ec3f59c8a26604ff77ecf02304ba1bbb99ef12aefdc04f35b92d7e4c42a0c8b53966fb200d82f8025f49eca9c2df39be8b8823deea2ef7e323fff9a380302047c435bb500683066023100a29460cf9d420aa10582ae2a0573bdfb18e6b5ccc22e494bffdf8e65e5fde0a3675f42fefb7a1da463323dc83b5f325a023100e12c72b4bde075a85ab23e3cab9f2d20143825ffac517722d39303ef22a45a53d7baf643c76b1bd86cddf066cf1777710302047c435bb500683066023100f02d97e1d29bbee868c83ac001d77a481b7813295b4fc5365e9ba00da339bf52207ae344baa1e05b1688fca7534276bc023100e4ce7e7cf79f98561802f2aea944d5b41179f556719b8c55c15c41712fe5407f9fc0e7c28d144716436fb6de02d216910302047c435bb5006730650231009c3efc66c26046594617581ccf44e3c1b3890f30c57db7f2501bd4f14bb84143aead0ab5fa9f258fae9cfe30de7b60c502301e51973bc764a5d629b8aa98bdfb915c78d5bc238c91948777baca0cd1f4f921090f4bf2e3a52d0e54b0a5910342b07c0302047c435bb500673065023100fd0a1359c4cdea4112e236418c7ac70be6cd885cc5b6797730486a7fbe4a5586df1c29e9c5196bc16de8ba15c901fc2a023018fda951d58f6703bcfb0a619147603a65979385c289dc6dd3e0dfa83c1d5cf275254d3c52ba375d6c18908f518e12640302047c435bb500663064023042fa7e7687d02cf8a1bb4c2dc2cb259c62dbf324909c963348d83c0c262da688bf889edebff5c9c412654d56712243fb02304aa6df3dee6787dbfb61ddf985a867c1022dfb043193633d8d82cad7e3583ba1e07b074b008e345707ef134cf071779f0302047c435bb5006730650231008ae0a58c4b8f84e878b9d676594755fc86ad61bb0892767388667bc281f1fca17e827bb1afe0f4ec3958494b517969c60230576d07f8c4e55d8576c38fef7809b68620a30572a4ab2805681090e2f3880e3963d91dc3cb5504da2bdfae7cb67dcb3f0302047c435bb50066306402300568b08bfad6ba556f2315e62f83519509233495e654b48c3b1433bb884d60c22ac150f994382ebf3bf57c2f2101ef480230713376407f0c0f48ce7a7aee61b28cf9f6257cce0aff5ee1d58bed0b46c315aa79f085c61412578a3c324f569c16fa520302047c435bb50067306502303e13d0904c4cf7fe64843d41fe8a5fccc4c9fa02ec8d8f1b526c81420c88c8e87a9c5acd2282180041752bb7dc27520a023100d3ca697057f32cb60f31abd5181e5280432d7730d0e793b9c473e89ac84dcae2f649ca547781fe159308334560d97ee90302047c435bb5006630640230394691c97056a40450be26422691c4393d8570cdc616566111016ee60e00c1ee22bf6b2d9a1cfa2efa6f96d5dd4d2bc802306a64dd8b29bea1707f872809d95a2210e7a686ce5afc28b995f69cbf0aedc5b2e042ed579b0a1c5f6e842ace699c124f0302047c435bb50067306502306fd9141c2a57f55a93d746eadcd39dae4a455c9cbd4207e367bfbdbc610b9c5203a5f8237ff12e3d185b8e251933013b0231009c117a6a28dad6ec5a2c20a103aa34ea6a83be27c05ca49f2c334610ad4296d248886e9c63524a65ab758bfcb9a681490302047c435bb5006730650230124717893048bcbc27e6e06c73fc82d79906a3bacea106f488d8988700794bfdaeb1a8530a09e0ae968b4490c67c8734023100ebe3e43764db715f5f3106a51d37451761e02f0fd76314925c16de326849978f52c151b118f557e3a5e27cdb5573ad5a0302047c435bb50066306402306878f0b8101ff9fe5000ebe81d7fc8952d522b1e22e5b881d0b12a71d47036649e0ac4a9c3dfbf6cd9f44ffccad197c0023056a721eb5f1420f3e67f26aa73b5a1e5fb81fbe49147b1afa128f508e28c7d237c5abc8647c8f7d79486656a3b078c4b0302047c435bb50067306502301d5cf653932868922209ee2ffed9a3e5c29537cf2f089e1f4ed344656dde363bad409b6f330dbc45013fd421814cbe24023100c9c802c57ab87e716e72f121bb8f10ecec0c534be2029b043584ce632bfe19f075b782f81ffcdde326716f3a011114a90302047c435bb500673065023047ce9c038785154799db7b8fc458a5c89293c70cd031175ba5e07dc9e90207542e721e3d96b17b767e4c383ea9d0cb93023100f448fa056e9a86ed3660595cd5de369898053836d49af17b3814a4ab497cf217e3866839ddf84c99aa26d70bb55882cf0302047c435bb50066306402306583b35829226d07e50b8d767244084350054971c174928de58146ac42b10cfeee0ddf36a572e7b88ae75617c03bf76c0230309d004a628d7513261dac720020ea4b7b0515019799e8a780629b07cab30eca768ed1dda01fe6d49b3c381e761ffb200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023049cbbaf2ada9ddb0b4c1a6040d77e3a41c5e66c319dc0180293c779d2e99f3891f0d6dc4f9140bf0e3cd018939581f05023100c22eddd775013951a0f6da634eff59e903968599d064056e26895916ae6c2eb2c979c63466e10e0256aa83503a1786310302047c435bb500673065023026ad1fa10011c804887cf96b2ccf4ed3f15265f480bc7d29aac01655e319ab9b772235164bb69733fbcc876bf167cab0023100945ae5221b7214fbe3f9b8f1dfa0f7c1222877cdb708ccfbd10460e5e5e58ca165b08f621a2e25b2648b6158a7950f520302047c435bb500663064023025a4b66d2a7ce6f114f383aecdfb6f811ebf9c6d5192008f6185ef78e7596064556eb87d4b6fcfe4cec9a8232ae3f5d402305a869d181338c5f62adae8620d78db70e7d59de9e58bb018b8226ec174ebed215e1cb1d036c92318e612a7d782d2dbff0302047c435bb500683066023100e9d17690b57567d901efd421eac9eb5e8c6744548c9bbbebfc529ccd4c2be4d24eb16c8ec98a7f3677354c533731da96023100a9b287ab630b85ddd6a2a82e3aa3ec33bb0c8f7e99d9dd455a99edfdd1fbd19a7509f013832001d797f9a8a331be63070302047c435bb500663064023050f5de746f871b7867ae6e3205811c6b9f79b472bd96a09ba818837dc39a5deb78d60e63ea044dfce97e427511a4c9f6023052523da07bc6fbe8ee83265ff8e13439e25287b2486403dae023f22c8d639158d49120d7013e6237503dc5d409fb42ac0302047c435bb500673065023100f119c34a4f470bd663d44805debc269bd4d784e11b0192d2ba393849b9e5282d05d4924c9d1c32aa510711c34b1c57b10230670efeb1325118d4d498fbc89ba12980f431f9d17c4571b99c03b0631785aaaf683b525f22152a90de92b5d47a6f179e0302047c435bb500673065023100f324f39d3bee95b981a68e43c8ab6c772872a048b582a2ee671966ed47c1a7bbbd71b15ed112dae635942d83f6108af3023053373cbe8ea9ba688e54e7152ee1c0853a2e58d113d0c7e239c64e0dcc826aa0426b39df4ee93658e08c0cc6036f150f0302047c435bb500683066023100f0266413dba02f2b86b9d6dcaef0b385bc612ef7a1962e891fd000eccfe1ca449118a09a1e081ddab968df97a11fcad1023100b4991042ea3c42b08dfc019118f5eb3a6933591e8fee2bffde72232a7338b9257cdc3f87c54da348324e9134c9c74ab40302047c435bb500673065023100cebb1c3363767b5b86f1097c2ac76ad6c6a9caa5994fc6c9724dc563493c4f9877c176ccb7771a9ca56f64a5292f584802303ae69827c850a7e32a57c34363a43e8a481ecf9e2046d6983b8fc4e013856663d5eebb85ff740c8d2748e673ea467d6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b9ca76145088a998b18ab9983c6fede15fb9e4698784d7c22c894b572b1677653ddfb67ba1d6ed314c0b548df51eacb9023012b59c593ff6e348d2f3b1405e107f10817f87e8c9208b5976f89ddff8dd2aa88e7b398507f86c8cc6bccacecd8903ad0302047c435bb500683066023100b1ec91dead25f858340ea454a551d9e27a94faf07c79bc7784523f16efef3a235280503d4858af17ce5d3752bc84ac0f023100dc49db903992f0ed05b25c8b7445e4c1c0808f056ee81a2185c216e59325cf99302589c3a944fd295afb08d1fb8e44970302047c435bb50067306502310086dbbdae5d5be127245ce3ba65d0696c9f804683fd14138ee698638dddcf81eaa06829d714f6dbfb6bd64e7138f957ec02305330255f60ece85bd64d5d282a106af01bdc2950c8dd6e3b1c7fc7b137f308d5991997465ab87e4ca9b54986f20671d00302047c435bb50066306402301891a28552ce2ea56462d9eb28fc217809e30f5f1c35f1dd38b13752fa5827f21a73a4eaba42ee3c5d8098d8e40c5fa502301b88fd7bb67e90e5d6753cabc20eef547eb4a8c3d1a5bd7ad2c4b3d6495ca2d8f669391e7656b12d614f3113a0db68a40302047c435bb500673065023100bee9f5247777a6027c8934556075e186ec8ee9db4be45ed20863249d9b635327a168d8f5ff1d2322385b7dee51b14d2202307536530bbd7d40cc9cdf21421365659e863efd30f152c3011122ccdf5a80f6978286923a5a8c5daedf56c73dd213585d0302047c435bb500673065023100f4a893b44fb7c6c2a58a9e94c0e3b411c6d035ec7855d39d1bb196bf7c72460ea96ef7e28d2a06578933b15193810e0502301cad12677e7e62cd60d73527b379d6d9d985403b00339b5b5be43952574113ae8b6cbd3e40dc1ad3236a074e6a129ae20302047c435bb500673065023007121345d6f7e91d2b76c8e5c8cacfc9bdf2597374faf6d1a57e061afab3d90b13dd0abb3ae219ef9632b124b2bfe639023100db1b73e625d8d2e84be7324331667beaef642d953758816e0b8d9a36a21abb75760c11c79376048f3fee6c968863eef70302047c435bb500673065023100a8c7943960d6144f807f7e55727360d87686fd24012b1a7b579cbee41f24bb11edc9c2393c5ba2fa39f4456b8ab1dbd802306da8cec814f46452be3959ce41846f7957bf9ad0679104ef270d64fea1aed88659fb489cfe1a369a2017376aab2ab7570302047c435bb50067306502300156be9d8ffde8008de0573f17cc20b67263f928b894f0a4b339ab193e306a70ab9395720935f079417b08d65f86ecd3023100b9530e9e6088479267aa01c46573d0ee263f1d37a67bf08400d3a0b3a19305e181676f4c4a45a3c0441ef47a1a99bacc0302047c435bb50067306502302ec1d35f2d8aa06dc77a9e761776a60c6a134aa765924b53b60d15c0051d0adc5daf4b67680ca0bb8519ce6917ac61b3023100d832a28043459c93764c23a76e8b98e2a778fce02baafb1a2c50dda392c0e69f9e87ba446d7b1e82a4688d222abf36590302047c435bb5006630640230234e4683d6af495f18176260665288e343a97a82f8a61610d035a5edb317906e5b8c6261a7af0916d727bd230914fa4f02304af151c78c164cd56f43770b6e9395f7eda2ca4e2e5916bf41c6118ce6aef6598bbc669364b2e1db672a6a400250403f0302047c435bb500683066023100a144014819cf838687060b29a472c0c06a28e2a2403a14cb09b57977e7a5115b5b697c6392116710f98703fc8c090ea3023100f44a24674fee3ff3af48c47fb8bb051ba3e1c919f3f91ac7d70f7d9e24efeb085b64ed79580311d5fb2be23d03509aa00302047c435bb500683066023100abecba6cb895c803a8f920a82a62b178d3aca6d2847a357fb826f00548e6b1f33c4b16b578dd7f8a834312f4b4f161bd023100eab20f508e60bced4445789c71a41ed744f6ba6bfa1c38af7ae54fde598739c860746b269e0fc8646d993d36aaa3ed290302047c435bb50067306502304889e6d2fd0c47b458f581e64335472225c74e6a05f86748df0049803e348df8522f8bb6fb1689708f0c05968c2e0e1b023100bc37b1710a27f06e6fc9beba37b9306932a7cf41fddc3595e46d0eefa0c613f86d35d98623b5f7e3a63f10f44d030ce80302047c435bb500673065023100d4aad40ea51acf83c1c6317f495489850044c809e4816ed906001b99db12821d84bff825f1a94f74517d32c3dd7a4276023054253d107a6b71745b28028510ac1f094f92052dd8af30ab0ce8cb047f9e5741466aa035c2e07a93f86ec0adb7626ff10302047c435bb5006830660231008e3fa67b4651a2d57f9f21bdc711009522bea379857945ecae37c4e17089ff1f2b2bfaee2a064310eb1a4219cf4c529a023100b1c6b0830d5a7c68fd73600bfe09c2574e582e0db3e9358d1f8a35726a54adb2a798b9840e26ba121dcaf7a87924cb250302047c435bb500683066023100d873073b98f1107c11a56a13bafdeba6ccb5b6b7a5b4c0f322484eba22fa567b8009bc8812ebd5dc46cdf16ba1f1e7d0023100d0b037eb39774645fc256a04d8e02833e5f89365e51f97bbb76d731f44ecafd6438ae45e2e93462218e58c76827d8a3d0302047c435bb500683066023100a80735d2ba1abb1c47e4b81ba84520031e6a3eb4312c9dcb4032a847ca921fe1c726d62a0f410928121bce5fdd705a5b023100f848a1ac73544dbb4dc868422fbf5c51b230b711cbfc136b78cddafbd1d96d3654d7ebcc14acaf7f1c9ba3d887ee8d2a0302047c435bb500673065023042d85a2bc1c610c7418950b75478d0f924c57dc717adb01d716058e11b40a6995f2331c26a01c0cb286bf986cb5a603c023100f83f47deac57b7dd5edf8701c0d7c01ab6ab110d29d0cda8909596fe72cd861290cb528bcb16b273705244386baa7cbd0302047c435bb500673065023100d37e1c649156a555863ad49ea4dcb1b5b2fa11f64c364d730638bfd4f447f49d41f2613d9605a6b2052ee6f1af3e7a9f02303246c9277d8fe62cadf6fa4777134090564d4cffef7edbddee454c1aa87a06d97c1144231ba8b53bb7d96d2c91d1b5e00302047c435bb5006730650231008076a04ec080514da3150432de9a2a809e96618c4e7e2658103682e7e87dedf139e1a199bf7c220fe88e7cc2f6de0d8102303c597f2b5c73f6903208212a3ab04ec2ed2b7407417f96c65cc762e9b14b6581a44dec79b56ab56e1e8ac32d68b0dbfa0302047c435bb50067306502304c63ef48cff896c2302c0d1378f22d7f2009c1a79d5c197f9beaa3f8d5f3d20488875e10246600b6d7f47f7662c331470231008631e984e04e4cc1ef9838aa5649067df071c32aff5f59ffa539af3876a6f81977afe499c4891d8301f124eca813c03f0302047c435bb500663064023031f38a8590667e4e116e80afa9a22d448ca09eb58f473f1af52150a26104920083831507d971be82213ce329d262054302304617d3d3e52567f6fdd3df40aeb0e9b7ca5b23362c8c89ab526093c58c751114c588bf705c26bfad9532a1e1b75e41010302047c435bb500683066023100a189bb00689b61a6b42d71dda367cb99cb515b1371fe91e2c12564967dfa6aa1390a9bb2dedaae07e283e748b455537e023100feb6f1ccbb708d3d59d38dccefbeb68213c05b97c79eb835a1657dbdfe79bc9eeab3c38d27338121d15170a98b5f72ec0302047c435bb500673065023100c1034e983b0b6b226ee135cf1246bdad88adcca9755b6a6fdb733a20ccb37837166140b5f10f0ea85eae371aa94c830d0230392d57a40a8c8704db2d0182b53f79adce9777e1c85a40d10562135af2c1406ea9f69f8d23deeb1df3c0833614acf07e0302047c435bb500683066023100f92ef55c534f3258cc89aa2963c8b031d55390357d790e1cbcd93b130332d685ec83a9ec20cfc13c82391e6f94810d5002310088d87d74b63bde4dec05c544b32f3c1845b47cfc25ff8ee5e4c75bf4a9f5e1276da69d32a7cb9247f027eb23e17ce7c50302047c435bb500673065023100dd78d427a58324249e5453095b06dbb1aa64aff00ff7a83ef2f77247733b48333fe14b821a8605e97147aca918be33de02300a3bc6d83d22cd5eaaa8422c6a4a67b034b05268cf71f27dd4cbcf4bf852891cd63e879255ef9dfcfa34b5b614b547a80302047c435bb500673065023100a6d145fa83931c0c0f6520d596293a223d201a5f8bde235e69bdd6de75df016bc9bca2f0f0dfb8bf81acc03e1ad3259002302d932700ee7773c05b3d02794fc2cf9dc176e8490a49abfc5b943ca513d2161f1cede3ba72c37b76f047f1fb390266470302047c435bb500673065023100e17bc620c1c50756e18f855699744b906871789d9c8f828497f8816307ea837ebbac99c8cabf564c573cfb48a34a498c0230706132c2a4252436d00281ff73d5824aa14230cf3a052df97854069047cbcbef570ef1f1d461e2a57a725202f144b0270302047c435bb5006830660231009f3a8e55234bfa51847081f8e208f554d9569ca7716dd048e8f45819612519151095d52e4a8dc65d01c54b394eb22ff9023100a0268c14e3e08588767b097c4e16ccd7d6bb3a089022fe9901d06a05e9e85a312d0e0e0d478e7e6effdc2a7741d549030302047c435bb500673065023100a062b9aeda7f850bb70596e5e15f5a8d2298fa9de60fed056350d52b945f6dd3783e60f61b8a2ed8efa29f24bb7b361502307409446675007f8f1fc0ac7ddf6f0968d6249cd9bed07ce72cd614ae8c9e393b2961f9f0aceed0b5a2a07f3eaa22f4b50302047c435bb500663064023076a36dc52e7f09e009a51566fd24f38f3e93d368b49225a6afab92de3d5114a109ebad4cd85c5072461f13297e8cdd7402303b91bf5485d09929de7ecaae885769d8e9ff2874575f9883480c3b981f79c3322c7f1cd2b573d5461c1c198d8b46e10e0302047c435bb500673065023100f4044423f6c1681589d0f2d5e9052353e87d423a8dd8c1711b25e5f24da827eba4363663415d0a6c8bfe83903562d85002304fdc1f87d4c009c75eb7057d3e83f03f3d38a52b2341f5dff0e649b248ccb53db05144a43e3268032f0516c356ed03f60302047c435bb50066306402307dab8e336687087457fcf3c8d7afb46425874085aa667f25e7478a44f56dd439e00678de3dc16dfa4ccb99a6cdd6455f02306405e067e71a18074509fc8985e22e2225f737ccc1233ff08397834c55bdec66265b83f26c38de7b2dfd5e8c3182ab0c0302047c435bb50066306402302e980b173d781b4995a902a602cb8edf46f0789c41d8ff3f198a2e7251d661b9064d2c5b89ce36a915d9c0ba5bf1684f023066cbd26927ca001d5bc1921f7aab842e12e47e1481a72c1ee878b9e043483008ad1eebb7fad46f5c297932465d29a99a0302047c435bb500683066023100cbf52e2b443ee0eeb3f777d852778d95e06cbfe277a4d27b41dfba2bfd71fe84be44da38f662d8b2f7990931a7b5bd82023100c8d39621a49f19c2a43399cab2eac22f02bd9b188da5595f91ea6709ddadbc3f02f91fa4fd214968f8842e5e18b6806c0302047c435bb500673065023100ebc1f8fac852d9a4c537d262b5c8f50ec5a61a7817f6c9a032e24937beef4c00d3acd0f5379506385ea7bc874a4e23b102303973937accecbf9a1f91b244abc19056848a20adeb94064aa379b8c085dc695dd6bf3a1359a58ce3b5f2ebc7a846aad20302047c435bb500673065023028dbc3ccaee2bbe159e0e519e7c0cc24409287ed1bcb248a6673c414b0103e455187c9260d6d9cb7aa9d710b4c28d6b60231009b5d1f84c41dd1c6b2e1f15be8307d3917e15ab0cca47770b7e511e5cbf517273560ae79b5c86a6370c13321b318f6a10302047c435bb500683066023100cc5ce7cf9a4d84c0a3c0436fb273c8d96a872e7b26c7a054f879f7bff3c1f9f333b4f967394e80b7afa632ecd0560d7302310085e62ecdb8f2a855ecb7f83ef517c0daff14ad7b5a048f9af8c45ed2aba8805c115b41ff15898b529afb2c0387ce95030302047c435bb50068306602310097eeee29c4eaa55c87dbd58e09bfda7a089ad657ea7ba545fa5096dae7ae3be4321e74f31b3bd974b441cb7d8a21fceb023100ba38afa409c1bf13ae95623a512e398410e7d933d862c975d3ae97c0bc6c2337b7919a30c1bb4956620d1878f98ad52d0302047c435bb500673065023029166aaf0b6c6458e73762cf4290d5ba469f2dc177f3854a0420e34d95c69e8763c5343434ba8c1f3566f555b4f29ced023100d2e3a8165203fad197d94a994e3d2771c255b8a03c3034de9a606ae975b22fddc02d3adf5bad1ae27f1f8ff793dd5b490302047c435bb5006730650230511c632f7e3cab9994213b8355bce8b5ebaaf7b5616bd8c1d0302c877ded343720837723fc1f394e4ad7ca927a28073e023100c3bbe83d42cb46d696df01b3f65e56ae62a391e4960e97b26bc982d5efe3c87572880decb0c7760da5272af22a8e7d540302047c435bb50067306502306972ab646f01d3441a7838ba9c9f6cef9e28afe16aaa77e3eaf3cfc4ffa3093eeda6c3c3b5a2d9f52bc5c63483118788023100ba19425c8374f2c8155bf1d9f0039dfec15c88712833a9ce7f00faf93d29e7d4d2692b92a156ce9cc4451844f8b25e4d0302047c435bb50067306502306307c8c1c679b246198a94c0f67e68bdbdffd9ba28d9bd14c4f718c9b4d5512cc192437614c2b72067c8275db0cb725c023100c6050da9c6463d6076d8c6b3b7008cf7bcbe455de9f9535c7a6c4eacb5113b15ab91d80350a3d00c02c40b307b8fd2300302047c435bb50067306502304763c6bdb862ed77e26766d6b65e5e379c5782db6d4fdb54146d543d5240b63ccd37c8929138d2bd05f5d8a1658db42f023100b2320098b0f1190d0e3b6d5eb9b483ce1607e982f6f78342ea4f57f76af99d6f321999ea939e4ccdf1058b8751d9140b0302047c435bb500653063023049ef69e698786a2aa425e575e0bab9f9ce74de4da979d7df3c7488180d5f5105e23fb9b00fb27f0b2cc348667c8ec938022f4810a7a39686a6c41ab3286003cec70d6a0a389c87597cea039863bcccb6599dd27b8f7157a5d0547a0d07eb04f7230302047c435bb50067306502301311d0eb762192292e4b003ad169a80a9148ef3b828c76751b81beddf786a60ddbd5419fab4532498c6f75a553b2570e023100ca23505884d34a68d52e870ddae6081ba73c6cd03d632ee5bc3a1ff4bd263778d8b347896846da2bef76b49c537100490302047c435bb500673065023100b670b4c98416e575fa79b49b929149749978fe3e012b910497ff22131ba640ea228e314db8b2fbbce856ece5db8cfff602306a2d73ace84e7b45a92459f410b11419830c92101f06a956aaba9a069f8115356b46c3f24044864cdcb6c79a2be6c9f80302047c435bb500673065023100f3136f7f849cc269871646e9962cb34c7dc8ccd724bd0e4c518396dbd8b485fc20ad87d4b5f934e7e2baa152f1a4968902301c960c16765f86b67d1920292bfc5dcf885f5a4fdec7aee9d465e2db8dd26e3cd8cd9c629e17d388735aaaf9abf9a4e20302047c435bb500673065023100854602652073cbca65596bbc66923f953b265fcf0de2c03b575560311638aefd22781a2dd231aa4f793982c949ca7df002306f3561c9866d56b510a964e9a829f862a7bb6a04fbe22dbd4f0e0274264292c40518047e5ad856ab43aa9bd994d017fa0302047c435bb500673065023100a80ea20b9e75cb01193f8dd3ceb7d5fe0d011b2d36b034d122bf7609587c61aa5170df586fd0e697a2e04045aaee065e02304b086c0dec5cc3cc108d7b8c10ef32507d3949306419897a1fb0e37ea8dd1b34f593dd76b12e7dd2e947191c0194c2470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023033f656f1156fabba5ad38cdf905aec5c383a7eb4a31f2df4c507ebbe5baa1d53204aee03b3449ada5d38b05d05709545023100c9403da1c0899958e828448be55966f7be41f13030ce9ee10124f3b0b405ff7d583d63d384c10af0ea72a272896d3dbd0302047c435bb50067306502301f17c5777cbd742de7be5f955ec89c7df54c27a833a0014d6ad5056748ba4f5e8e5e1080c600cdbefaa473f7da305d91023100f147462e3ce9e6ca37beabaa8d235c28d979f7b473b076a77294d73ccd8e0525c85e84f1389b15b17764d5b6a63805bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023023b52a919e17610f67345c59c7787244d1173f993d0666de1cbe5dbfcce540604dbf98cbd7cd97806063dd4a59ea2c26023041f6726e7e5f9ae382604b367b8bcc85f3f04d99e35c158f6ae33d04b1471d93d8d1d6effc52c7d355870a092a8bc5bd0302047c435bb500673065023100c5f05783bdff1ac567bad9f94aad8bcbcfaf1b7c928f43919a32e2df4334aab6ef90b81caa49f9db696445edf7f871b202302e7f4338ddea1815bec53267f7f7ce6d259523b6b09c4614c723813749d663aa3325eb1a240040adae3eea81ad08bc120302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023018ff3e215145d98b8a7384e556818a23439caebc3fe9cd49fd0f8458a420791c58a6a42e344b657642e503a467e115e80230390874568a4a629a8c195336a3fa6302039110d2039ffe019dbbc9198e361cf792a590ba43c2a356dcb8f3340107ad080302047c435bb500673065023100c167c182a98fa39e2125a1a86a077e1134d033b81f24878df798415d60afa2d9ff206f2bfe34d3d60fd80d0fc9f50f95023063f2dda3741e4a397e43c281905cd854987848df634d501a621d6a7ea3eb6212cfcf42548c22edcc4b17e6b69e619e7f0302047c435bb5006830660231009a6c46ba491ccdd2da937f4b725ee5233cc3b89a9955c1ba6956933180a568be05f974ec071521b509bd47361551061f0231008f8e0f50db280a8daa0d4285503015d20b0396be714ff648c8bc05e304588b2e3b2bee42bf6b75ab14edcf6e92e076f50302047c435bb50067306502306f9efe8ed0290f1c3d47118c8cd08c342d7afd4e5486884ece26e1c10afb6a78166ba2595ed55b8f173002f971efbf2c023100a54418fdc64de2b2024cfd4b08cdff1a3d162b77c5f2add756282c557163ac8aa65d164996c1115f8b6ac1a36977a7870302047c435bb500673065023100bda74a5ac04b99af8ff7ca86527281c20a2f52fcc98434dc62a7e29c4c658ab2811b68ce333cb905df029bf1e2bd1c2c02306174ef3c37d0243f2fa1600c9f9e606203365f91c491884a9fe321162e151f4172f3589ecbd304f6aed0aeae49ea71fb0302047c435bb50066306402302eda77158ea82ff251731cfbddad042fc53c143abd86fe9d11ce611438ce6f7fdac51f7df0003ce430c18e814dfc4ea5023067959f418188cb306865cc85ff0afbc15487a8f22fe029b780b167e8a68395f42b2c296730cdb62a43b785c1320487fd0302047c435bb5006730650231009ca556ba46af26420fdbb7edf62ddcdfe4e9f585b6b85e08de6063e1946db426d5321907cd2d8e053fdc4413140b450602304bd47b509a6dba994074d452fd706e0ee11d9ee41ce7266d9aad45e12b96ff59b76f3a335ef5525b75d30b48a23321270302047c435bb500663064023043a7f9014614c155406b878f46826d9b44a3dc08c1ca7481209417acbc11a6ae4be7153188d119557668c40a85afaedf02302bf0e1dec842d9c987b86e434122bff648ebd81cf4295cec87df344b08bdcb745bab9b50afc34bb43fcbaef370e889210302047c435bb500663064023046b21f54994d59486806343ff1bb2fc60e6b6d59e50abe36df29fa249525ff92407e862cc36a4da6dbe1896825f7646702305ee7b5db67013eb3119987a455466da9563de3d82502ec695238abfc2c48f66a0c85bfec29f8ca02f61c8cd27d56f4610302047c435bb5006630640230482140c91a270f8512a76004a3a0c8e653663a2238b4eb8803187d85ea63576982899270fd805c01accfa8b46d4389d5023016d9e22b691d87ca584b5c046ba9a313fe4902626d680d53ccf0798f72e7d9cc3e53c3fa404e5a870077dd7512f23f950302047c435bb500663064023001de44089fcf1823812b55c508aa0d9740beeec11b672a7cb0a758a13b52f0901fb6fbd5012313cc720f45c23172320602301bbf3af601c8f2446cff9758f4e6ee2aaf61d5e56b63cdc70d500fb9f2161096b1bb4ef8f1ec8aac1f7fc5c5ae56018e0302047c435bb500683066023100f4d35fbf04d299e4e85ba3a49c586feb4225e117d3163dff4d2c635524ea8a2ee8970c61d83cad63703381474f7720fb0231009ff9044f3f3d36833904c6f9f981f9b067bf941afef47b8254e612605451df5cd93c026eb712008e85f86cb7d3c587ef0302047c435bb5006630640230677872b44fba57f2b63334e140dba3489029556713eee3be6895fdb5d662cc3fc4ddd9ed36b777aad80bf066a4c52c1d02303c7f83d76f1bef88e7551680b329a37675afdc0ff319e23e0a1a73f45124ef0cb1ce8e18ce1d7e3dd55703ee332816210302047c435bb50066306402307f1028b383ef7f58fa21027b60902b6a58976fb8c90b79d13d6ba5ac96340577dc99c35512868d63fa6cfd0d458833da0230561df27bf1c0853f1f1e725032c498a060f75712988dc3053272267d7dd310e40203289fd60778c6841515e4ba2a9ee00302047c435bb500673065023100d29727f00535fb279d44b8add8a71f5e704426049bf987cdc640cc51da1b089c972288554fd3ecc965370c4e0c9e26ec02302adf9662ada668f6a3a5bdec95b67b2eb3a4fd9f5db5af0bdaba6338f9f331dd4542bf944a964cb058f5803b4095627e0302047c435bb500683066023100ff709048a6d1a9a5049f5ab20a48672db62e6b76ee1b0e3375001b30b8454d55706e15396f50c971fef5abdfc2ed698d023100c8cfc6a0dcfbe0af8ac0d9b66d350940ed225aaa6dd24540736638473ce9628ac97ad185269c07fc65ffad44313bea3d0302047c435bb500673065023019659bc1e0bed1096593f3c5433c6d9931b5043a511c9939a8481b5a9a54a2f6992207c8c770ba8d347d104c0f3d5c53023100ea930871f027f8b67b2cf432016099f546d4a3add10cbad6e33907ddadd114dd44a7c03b529ed8bce01d6758188beefb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c2cb5a4e1215357a53017a627763998b2c34f3c3af34f20cee5f5d4cc202d6ff04448f93a1ff445c6c46177814469b38023100988e3f71970a13db92b01bcd82abeba53f6ab1e5e010c89fd4b0a65e91ea2f1db509fe3b04b12a1a17f253d482d7d3e10302047c435bb500673065023100dee400077d0e7b5c1f13ad7f5c9340b4ac9c873ad8ea6a1d1211beb3dcf5a05b28c3e3184f773d40f91aa434c36f9201023038151a73f618fc693119897b9d2a35857f848adb704b3c01f9594a875f5c26271f62cce1f45ea756fb664ed06e2131760302047c435bb500673065023100949824caf6650eb16d8ac6cec5782c09b2d45c50868db2c6871dc1a4d850548e1065731ce346bba4b76b8b35deccfd0a023056c3f995ecd5acc5ab8c46304806d5f519916f65168cd2dbec7fdce2b58368e48324d9adc4e0645c5024b22db86e9bd90302047c435bb500683066023100c45578c26505051a40d8a942db79bb0173536f4e1344f7579a31fd6491224dd7eb9c251828775da421d07c2142aa807d023100de8ab64526e2b4f0e5683e6bff592d04aac7aff251ceacd5a1de6023ba8d48f14c06d57a75b5ac341407f3264509a63a0302047c435bb50067306502307d9babf348491c227feac918cee48444f257f4e63f9affbee35f5b758450024f3a03924de7cb3bd10c5d6f7a3ca7271c023100b086ad7a2d321f4b83b83962ed8392638d52f798196562228e59e6c7e3890e5c5507bd3211bdf4583f16e524a076669c0302047c435bb50066306402305becb85c378b0c4feb3eb3bc739a53142462bcac4b04fe2e1b6d8681f1a9ea52202a8d3c4977e55daff39975c32271b1023027c47fda0df20a4e245ba1c0a024b89b21af086e6abffae0dd5af11acb67c3e332c8d4de4df8f24f19e85650bb0439770302047c435bb500673065023100eaa3d89770fc64976a8380a2407a10a41a08ce4d07faf2f09412ba79611fcf3486918534f72369f5c0db2d7f9af760c9023015df14cf6d57d93551f4ef4c34c42578d766c8d0073b987ffb154ae6e3623b73faff4064bdd828dbaf9d9487402da6840302047c435bb50066306402307984ef2c43a6844b1a69c1777f2cc3f5fe651ab5250663c3542958ab7a4552dba864eb1e0faf6f14b617a577e74b575002305f28821a5647ed9ce30c71a9fd7c4f36a366ab8c2ab745521b5982109360457bae91781cc115fa05e6247d5f7e2490100302047c435bb500673065023079598ae9c796663ffd7ecf274720f2edbb57bc3d1ba4c9e2410f70b934d7239f79a3aee1fedb1ee7475710b6089648c0023100f2faa73f38609b7722449b2e068ed16ef064655ee295a433bc440d9960316ef5f40180eae433db9ada97a241dcfcf4ee0302047c435bb500673065023100c1e5a523f1768e0be4c3084a288abc00e1e1383d3b9d534cd93f82d15a5020836a5d54034208b84580a802c7152647f302301769163729c2b7c67500c48342d5391804df5ed4a922db16c811054b808165de75244055eb1eaba6e58a7b5833c94d4d0302047c435bb5006730650231008619b587e06172f2997d2143f8eb7fafe6a503c69cc3e295801e8f8a32f0d2f142d6507708b3820e8cd9b85d9a51420902305b825993b38da3b9426f9a7595fa3c86dd15cddc89dab3985ed7be44849a3d2f37da30ec1e26c33a5a2930d4b06d3dfd0302047c435bb500673065023100ec101bb19e3050fe23b8bc12f99422a23b48a656613d352e7c3f5a421458a218cced6bcf79f2f74557e3941e5c0519cc02307b6fd16abad1c485dcdc60ecbe93b37d53db0cac359ac416a20225d21d18fa2812454e0a40732fe6298ff6f4ceed9e7d0302047c435bb50067306502300164a9ad893cdb803c53cf3138e13a21c9c39c816755fa0ee15e861c7f3c418c8742f156ef8b94f517a173a0f6a74c45023100c7f43f8049cd8f0a094173269390b9d1005769474c323f2d4d96668a44651081ba0a5d098464be683c0faccd517a80b60302047c435bb50067306502300b2f6d955134b2476c1187ed8312987672e1e3f21d49a7d37d5bb39a92cbf642865553d269be122e5328ebe542735a15023100b9b06331a4a7d821ed5e2bc048ee5a737c8ce366382811af5ca053eafdcdfec0c80effab04dad4a59f4d63d8259b561e0302047c435bb5006730650230370b0f7bb336dc09b8c8b26ff22c3f5e0fe2d5d9e1d5f9a59d9952e3b9bcd0838d34ef9fbfcabd803ca7050186640ade023100a7d5953ac246e1235976f1c2256534e85d4e3ab3f8468255367356f8cd18399ad01fe17e33d75fa364da27f23842adc50302047c435bb5006830660231009b695046b696b89c6085e8bee63bf0695cf7a9afaf2643a76dc2fcb3541dd0c6445c8d1823a18ccba45c354fcfcb6bfe023100c3a7ba347246ff35df0d2cd83056ca3124e603bdd8cda5a4f02befa64e2b00088e530fed5aac21859c8a65920e422cd90302047c435bb500683066023100ad0f1d22adeb0b747d66551b3becfa37e786babdeacaff36da3da3be271a533968c1c701935562bda98d8bf246b3a04e0231008f839bba340a59b11057e9c349877b25cfecfb836cb60f2e38506fb0cf6181e357fcfc25db9a35a1a918deb258b28ff00302047c435bb50066306402305db6b287e79b34567c86392eb42d402919f8e29b8dcce5af1ecb3fa99ce24b89c0ef0428bce51652c96d61b9a86a508e02300ab623e29520fc12b03cad80646bfccd417e0f7885c3d449d23ed0460ffe3f764cea5c7ecb2b1f014ca5d8d21e059f920302047c435bb500673065023100a058e66268847d67f420f03e10044c8920d492a1d16e3fd6a74767e21862641cef3e9adb877e1aefc349291b4f53d4560230729dd1b8306beaa5c4a05a1da0baafdea43d1879a09465a5e0624d8adea3a4db1cdde9ccba15b5e06c12c1239a90e3ce0302047c435bb50068306602310080346b0802834bef9c603cff851693b1660fad076175797abd8d464f825274fbbce410ea1095b749e7284435bfeb89ed02310089399dc48de7381e5ac4357f6e2ab3090cb43069b9210b309e528e5118574076c26dfea275806aaab7e793fd3ad33eff0302047c435bb500683066023100aecb2f2c14e6478ab998853af1634fb468fe69ad9fc56e22fc7ad68f55f401ffc824ed07a2d79d4d2f70b5d0690a0358023100c7f3d3c90b43cb3c04ba657939cc22b339221836484524c88223fd4ba44b32dfff93ef5b7d051b614d4eb1f8d7c6bbae0302047c435bb500673065023031045173150343e51cd078bbc5b281fa422406a493afd272447bd2f742a89a78023fb674a0808bf918a49c92c8090e80023100f762e95c1ce91bca827a6fccae479764c94dcd9d69549ae3730a7a6ad5061bf9cf91cd9a9bd7771a434a70200a0337940302047c435bb500673065023100ccdeeb889ceb1c7f09a158b4b19c3af3ba2484e1de89b5bb3285a5e6241c94cbdaf5e149194b151a3ec720fc996e91ff023013aceb3fe1d534ba64c320b556bb6e6d0c0b441d20b58a964a22a7893ec00577ef360b0259bc3f055b62c6277bed95bd0302047c435bb500683066023100dad41cc868b46226142e3a808fed17fd460e8e3c7a6830ebe4e396df098ea6da55f413b1e190d534db8a7cadd34f94d0023100c56ed055779ce7772dba2ba3800f1158093649dac1262a100cb12ffdecf50a15d8449b9be9cfc45b977cfb9c4deade2e0302047c435bb500653063023000ff0925e7c6632c0088051258543ea4a0a4fec158d25f632d88aabee954eb93fbcea2006b5c532efd052ffaf208c15b022f51e1cf4f814b18fba815a68b902299f0120f78621e6c9ce12332d14bb85414633759e675a77b4cb4d1fb96d5c2cd080302047c435bb500673065023100aa429df1ae1289bd4af2964c3c857af8ee49cec5260762695dfecd6af4eb15ab85d2137d4e8f545cda1ca9a04f88a144023005e7d6ac9b8cafa6658ee03efee2d09710977dc692df068fd270d739a2325bad32943d1b2730b3c78fdac96ede9d897e0302047c435bb500673065023100feeb11bb7ec7433eb04ee6a1c8732f3d1c5344957cfe3ec3916bac65d8890185a592da30c6aa2db3754be076c7921fda023060f2eec73962cf137e0c72cddd2c3736989db911e726c99dcc1869c71235233eecd8d3a319e9fa23eabea177802661810302047c435bb500683066023100c73ecfee59704f733164ddf8a52a67fa37ddfefb2c677af7a4dd98c46a652a9531f9e01b19885e3005c671711e29f2a9023100ec39b5c4c43b127cd8cbc2b47f4d3ee4a055007be8db5edb71b8e0a076a610430c9af09eae3d2449ec3f81ea9f43fd1c0302047c435bb500683066023100d126a45f1dce13b3d8f4662a2b6aa7eb1f1e34c5727429d521dc74789becc493135edda5e6e387aea4b0767a659f44de023100c9b2856841a425b6e1890fc63fbd99a23716852f7e75314e91d5a58e9462bb1050b531772c7956ce1c1c3b0e236693740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b06dd1f4ad90270c4316bbdcfe0e7cf0e365b89007730c85252da247bbbedb38b6a4574cb913b82f2f503601703f59ab023100d2446d4eb49b6bc7e384e8daadd4308841bfa57c20d8ea5915d735e0fce59546e8920326e84271f38812a23adfe5414e0302047c435bb5006730650231009f0c54424278c5d958d3cb5a76e49e5cd2f86bd3538d764ece82a41b643a3b0f58945a8d5b46a0955ae4740132cfeee3023048eeec27da55d5543ed15da63a5377a8bfa2d9931f17cc0622d3b00b609f212ed5fa5c2034fe9dc7b12bdc7c2bb7a5c00302047c435bb50067306502303535b2627d2c0faf9df6f870cc06533b0c0ad7ac6765ce30759fdbb737a1ff31c7df1b711842d028bf85f72ccf1a5c260231008c99b1c582cfd410e92aefc325120075503b74276ef10ffa8057b9cc509e210dd69dd98311f0c9d8c0106c9f7aad09a60302047c435bb500673065023051f91feda8e9d5556c1de82cb768d695937c2a42a050c49f4770033370e4c6a538b45b4849c0db9bddafecdcd027060b023100a8dc4d8b66119bb19e6f98709f03cfdad214289af17f1ccc0bcbd1dd36fe544e03b001f4f52dbf121dc7c6cfee21385f0302047c435bb5006830660231008890c3429f08a6d409e37f2f9ad56af4e3203fb51f3850bc562263a8fc3b8c94c78740d1ba89a01ea46f0db9ae956f170231009a1a1f4d25904f04847950166dc8c3fca13a0b5f1ddba372fa5226c80b08fa2502d67cbca32cddf675e617e5039b8db70302047c435bb5006730650231009d64e58944f0d97413cbccb260f6c4ef2ace90cc97bec5b890b31e8aebec11c356325ed555aacba93eb3890ce39be6f302303b55be969e5fe503b92c169dc856e3998b85ddc2a302b62b6007b4d5f2e3913d88b9a2abd6520116530630fcf5c238390302047c435bb5006730650231008bd62caed6faacd15a7fbf1c5a7b7952a46ccf44b9c4794ca977a56d41768b5bc0dd93d752dc8b0f182e89a3b2a80a1902307fbdd78d37f17c4e833573501a678e170cb1718d56e0bbbe5873c2ab16b8e9ce07440692bb2bc1569549311fc8aa4dfc0302047c435bb500673065023100ffdb7afa481f5076863e44c9912edf455cc6bfd065c652154b85469b464b7ea62f8fd408a74f66cc8cee27da11aa7c3a023037a8545940a5fe85615a648d90574db4a7f618a2b8df6adb80b94efaefa9fb8e1a6897b798937033244e977a3a56a6c30302047c435bb500683066023100bdb75f26626a8648f0433b912a994ed7edb68e502efad36674d0a75bd69734acea6b71a1c75de7cff57319ab095319a1023100b58e819517da7157b180c9240736352d0c98036985610d9bf2e3de3d822b5a8d4b3c91a45920cc1a09938dbca2c129dd0302047c435bb5006830660231008590e9957901832a1e01b3e809234c64e40f3d436b41639ef9df67f62310eccdf4cad8f2bc78be3edb00c50d5e7d54e9023100dd0c715e3908a3ad9ced8adccd1be27e95020dc0b91fc80178e0be1bc2c8ea29e926c2f6cf7bf77e9dde20d17a8afde50302047c435bb50067306502310086e43537c1dca2887d160b4e6742e1db0aa76a443cf95cdcb56f99fe0fb071fa728477ec810f026a6b67b48bfe00c12b023042881ee04794c61d32d952fa620bb7f2ea0d922ab71765a5488e91692755af05d335db67035a28f4e14f739efb16623d0302047c435bb500673065023100aebe9a65d4c17077c0193fcabd59bfd722bab1d0787b0084eee1292e7a9f320d33b720c3874cea95befb2442665d29fc0230660cdaa870749bd45e4ae622905ff0c5b876dac565aa935f134dd4b8cfc40be26d4b7b6aa472cdf9395332041dae77cd0302047c435bb500673065023024f43142ca0aea65fca195faa6ce6239e244f16044380eb7846573e1e67d8c7064a3416f2565946a44cad08d1b729c83023100bf47dc33304591d89f25303b245c69582489a57c9a8eb175c32c2453b2fafb8790696e11a908ef1ccafde8535868b1520302047c435bb500673065023044376e0d4e7e498d80f5fb2a3a4aadceab0b49e73c17077e2fb306456848107b170110ab7cbb705d96e7e0cdc8573a57023100fedd691e437f38a9622b2aa1f4219f6f8232585be31a82406135de530694279053f386a4e6261db38dae982ff22dc5a60302047c435bb500673065023100e1ba96cf304dcb242ae43116d90c80a89bd6340ad7240c1bdaaf7d45fa401de3a1b317e3a98707061a8745e28c29d456023056a52457d08ffbd33c61e3acd703279225c1ea440d6ae6aa149f9a0668f8fc09125583978f269aa49047e7ca440648350302047c435bb500683066023100a374f3d4c54928463f400c88134f9ae9369aa9d8d717aebe2c98aca7e8219b26b4aacf7ab1881cdddefc2136ba8d8934023100e24589ab4ede24576147a3ea4e99e2bbe88372405354c8ded435a639e3272ab55cffc094ec37d4898223920a376a93650302047c435bb5006830660231009fcb6ffda68296e624defd53d66b21ca7be47c270d65968efe3dc75975fc12dc182e2bd42aa42b3855e946ec6e81f47e023100817bb6ea22b1de7bd1d5a4f230a67e8bb7355b94417ad891e4ef8fdd5088d4ee311e57a6e943afa9c777d2802a2be3770302047c435bb50067306502301d12d63e6229eda671f023592f192403073f641b67bdbc67e8521150f18d308a7c426c9bcd847548e4505164a4fecb2d023100f964de7c9381746dc2089402c6a841a2962ad1f1506ce6ff1c91fa95ff919af9d7b697438d5e2368e1f2fc4236fc7c7b0302047c435bb500683066023100e3ba3caa056fa733b0be8a95038ef74ca7e815be96c007a0261de8d503992c2d8c9ddb9fb4adaffda7b3569948892a34023100ec7ee6ba810a28b2b3a385c7b08e527818136ee9231267df9b018f034a67be295b1a2abdd1d8585456fe886029cb07250302047c435bb50066306402304742587f9b7d01510c506b659ccd7ec145b82a87014037093108b20ee75c8e288ddcb06279036dca8d2da3bcf0af29ed02304065be480a72ffe239508e7f447b4034245e691f324187c608f0c2c5f6d09024a90a80af12d4a50268e3eb0185c645660302047c435bb500673065023100aea62c240308f56ff7518be9f58cc70ee4f0226591764d649beb2a89391cd733b569018589b106410b326f74d06f98f602303c651f6a0c5d1f129e1ee729dea294a95169a01c2585f71a11c8a2b757c9bd32cd28acbb57a0ca10491495926bde11780302047c435bb50067306502302e262bf9ba0e061edf9a5bec4275501ca3d07a081e386307bf5d9ee633085d7748a930496f8ef23f2621c34eed14aba102310087e95e91b4ad45ca58b74d4baf0ac63b93d206bde51c709dc464f8e8d20fe364e6a53193d01de374a3e9ac870a4f19010302047c435bb500683066023100b7f842be28e032b2d7ed0df399341676d29b9efa621e91e50d9390814dd3d08bc14f3f985157435ed4fe45819e3ed44b023100caa60be774326de315721e9eb2f199d27767bd1250e9eb3fab20e762d6662c34620e073cdf6bede9c7c0b99d85d301260302047c435bb5006730650230011580d6ee826503cdf4319234b63018b2da2243247efc12d79bf4042d692092d1fed789b61a3c11b2845816eacb200c023100b85ce055b4bf3ae3195d2a0c8376c73157831a41805b281fd1a65e8f750521584b06d858423bfa0462485a54f2cd8ea50302047c435bb50066306402303e7728ac3459d3d020070c679b7f3900c1662fbacc2f5aac4c95791bff0405042e07aa61f73761a761f773a08f7921d5023035224520786bb2a8505e212c714fa5e6bec5d61ed7e9fd71997608daf5355ea0012acbeae279defa18e3d842f8d8b8590302047c435bb5006830660231009dcc21d0a7be193d6bc4ec80909889ca320062a828bf0d3e25cadaed80654798f5fcd5431b91b39306a15fde22bb8180023100940fbacd61d8aefb6e9a7a1f021a2d07482e2fb8fc201a2ff978e25f0b6b527b7cff55876445f0b6307207e6738c827b0302047c435bb50067306502305507d5a03f001d1efe534624ad61e8f583a490dd6c143a61a35d7fbadd122159bc4a20a4f993c6af194e0562ebe5cfc3023100fc4cdfd28f1089b5187e0eed073437bb3500c0653e045f8a4b170cbaeb67e60242e356c4faff6b20fd186770877dd1170302047c435bb500673065023045011da6b1dbbc8fde1fd550066f365d8368d3edb1b0e03360b85299c107c4fa49df95ebe6c83521662a25fce66e67f5023100981513a17a56c145385e65062e7c1ba41806a69e809af4df08e5a8c22e7a57d9dc3dc38ad1358a8325b2355654b3cfd80302047c435bb500683066023100f068d3cf59baf1b517e3d53062c01e36d1f020a0c367bf3928f3b1c8e4616728463805d1af67eb31437c0f5946c7112e023100cdcbee3687b7004a7ef09cffa58cb6c7ee88a67d5660fb89285d187b04ddd79ea1a8bc24a35f9fdf3db01b75f92cbf570302047c435bb500683066023100ce474cdf265d32415ee5340d9cd9308f488e2770c2c3273636f575175c305b88207d1fa4e7d494a0a51add462cd06d68023100d5c77570eb3ee9d7d356f5e6bcbcd0f5268d4b8ce892ef3aca0e3ebfb565b03fb2c15f0ddb91a67fab9b6e070ba072a30302047c435bb50067306502303cc63137d52dff18e92d187b2add026e00a77ba221cbc42ed435c5378459fbfc84d52d8cda82dba584b5b4015019f7da023100f99230a4d3b4de202f52972ccfba3cc36cfdeb48dec7ddfcb86ae73ab609021b4014d44b3c698ac1a17e3e01dc08c7a10302047c435bb5006630640230417e17c7c017cd1ae760e19214b46f944469a33a2cf1bc541ec858b557871aefb6b466a240bcf0317b455c0c5ef6066a02300d64c1bd05d96d7a39be98f4a3ecd6cd1cf4cebcaa740ff129d1a371d0187ba1eec61b64802fc23f3971bdc689f596f40302047c435bb5006730650231008688f9b0a825b9812081cbc0990d721a3b3f2d2b127d80b35a1d33053fe4ba758957bd847cd6f995b9c8071b279c29d102307e901dbf9c28aa2649a78b07d02649b473e607d79265e0255dad40e943b74cb38d4e6442cc4f943a56286ae44c5f627e0302047c435bb5006730650230345ec55f23830465d1450ea3ad5f8e11300e93b9210712850a1af8191a48f9e3dae54ab2460096d0047eaf44e506e020023100f07eb505c2875e6cd39df0c687581b9367a0e684485f357ede3b81cbe3ef1b5898e4751ac6f7d020a398b314f3b9b66b0302047c435bb50067306502301e0ea2da7ff16362f3af07c22af68d93127fc97848a09367a8cbb339d3325d86fb12f0c0119b4c17edfa1299d9171603023100e654d18136b2ed82fccf48f902550b3a9b3d7010351189cb950ad72827733581c835ea5add44f45a36e703d4f61bb0330302047c435bb500663064023079ed59cf2d8777531dbd0d69c953f10c7cabb9588cd31d3afb689a116cac29dcd306c68042cba471fa537a32bd939f92023026e40545d9e6945a3f78d165f1b95474131cf461bff202a6e6fcc5441bd3ff219ca0d9901e93ad323bcc24153b5b31a90302047c435bb500683066023100b6fe43de77e7a07ecab6b0de45c2b00d096a2df425ddab71aab89aa08ebeb792829794aa639cae0a7c1d6b28b56712a10231009293091d8b7d7a8793026eb34b511180285710cfde540af10235f6bbdec1eb36a68705f5dd9100f3f5cf284b3f5d9c2b0302047c435bb500673065023001a02e6d3eaa8658f9e358102bcbdc71f475cc4cdde394d4d72026f442a5f909fb548b04a544396d2edb98b9dc7642e0023100d4b16b02d1b7bac4b0eb400662a96a7c60406d760d7ab14b754966c201cb413b76632ba01b873f2c48217d46c40d2bcb0302047c435bb50067306502300ea4ae15b8be9bd7d2959551bd2cd64cbf2920304506bf3594f51dbeb298b4403953b15e47d6603e78bdeac638b7890a023100fe2115240b43c31bfdd08d634499c9d5569f16004a1e653fbad1ec30769234b56d8e278a61c7f3b8b9f3e9ff624327530302047c435bb500663064023016fd9e4dc87b1f21596e05f4f7a90b8fca83c5a97ed863a5dbd8fcb82e5a1a8d819d169b26dbf1913a105eaac54964f502303544abbd3020a0c028b5e926f2882186dcf44f15215d85176496df246f699d261c7d387140e721f771d07912758ece1d0302047c435bb500673065023100d37cd8d0487b1df3725a89741376eeeaadb0963d4e158f504ca32620c74a6f87c9fe66018f6d263f129bb4f2892bdc220230379492941c37533056ebf0b878dd260083c6911b7f1f48605ab5f532f8245d52370fbd2dbd9f1dc315b7d120f007de920302047c435bb500673065023000ce80702bf34bdb7a0ed8a6078bd9162d4ba7ef1dc0b31a33527a73d2ba34126fce304915e5d5c50324354bc58c3380023100b1212c6b3fcaab5b065d9ac2527f85fb9b7739c463bcf0ddfa8fd5ab152baf2ff91a870558e9f79a2c15ec4746ade6cc0302047c435bb500673065023100eb52dad749dc6a1eb4f5e00931958bbe1af3ed63a0624d7a67fad7725f72ec8f9c8c4f328e9b444f6268982496265810023067cd50bfe9a263b1b3ed6e53b9f24d72a0b2beff28c4b974b2a80bfded0b199f6bbc557662cc4ff7f0ef1718d3a9d3740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e87bafb5a3be4777405a29b2f151e9210e6227c48e97c53cd0fbe8ec79446551da9e86dc42d07d73c5136d23ac4e4dba0231008f28a76afd51e1c231e661ea1ed6e0836bb0daaa10bdb4148da0ff9899a5b95bfb98825b0277aacabf4e5b61fcd1a5ca0302047c435bb5006730650231008b356fe370aa983e74ae4f8a6578384b097c010cdca2eb6d74503153e1a6830a28214536c8ab5f9fd1ab69b233e53a4302305528ddf47057e76bf824f1d9b361e53f5a9582fc356422d4670a0c0fa9eff532af938062130100a791ecc62cd63bb9010302047c435bb500663064023053f1e33b641a5572bedbc6ba64936d8f30c96da1e6f1215aef09bda1f2bfc837cdef7748c92428e398a37c607083b60202304fb0d0e1b23c329e215c260d91bb5fd1c0b45743223611befc9a4294aa04e3c10ddd591e10b17414e9cea93e80c5c6ce0302047c435bb50067306502307afb0d2fd249496a6a226b1251438fceae9a5a6c46b147d0788fa77bbb61e95ab46b8a40c55c7760c18c8780e0f73b8d023100dff2440616a026dcd7dedc3a226c42613fe6146eec921d4956fff9017d07cb5a128a6200a4324473419375d5e673ae4e0302047c435bb500673065023100cdc874d6599b86c531a8f7a54c08aec83bd9d515e22768378215edea8a06bb62e0b18bd547d1df778157cc5f70e734fe02303c60007793fc170192ae5c5d8daad9a1a83d58e4902f1ae6514f75ea90d9ca8776acbb170eed32811c803c85805fdcc70302047c435bb500673065023027f3127472bc3d39141b467f91ee7917571cbeb62cd08582ab85553e5d875c0656821bbfb9fb8d2d9cd4001f85a13255023100ceb197200313d414a2403ad649a8c91866fff8eafb0b66c5c95c3b80aba8a7546799f0328f7ae55723ae964dda018ff40302047c435bb50066306402300555798835d9c3853db85c5dad7125ab4925c030c22d504889a97e8f725d3ab1206e535f4c7d1abdb5d3efbbdd2908ec02306815c74a217c85d9ebd1beed2bd8967ca69e83dd4badc50a4665fe8a82f3d1f9d22809df33c8ab5a02754a918864c7cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023052d5443dd52619ebdf0011343299b6b66601b54b443f0cf7bf874a9148a6d6ccd5b2e2ec683917f11102fe0fbd05605702306d459ccc173d2a36172d6b4c77464c74e649e2b6c11b9e619aa7a2328f44bae0604f484d43c4db7b3199f5522c1a2f2b0302047c435bb5006730650230320d89bb6b164068d53b30b87a5eb626a36b4c97273ecae18a11fb74d4795e62e20a94e9067a4061a1e04b75c416bf8d023100d9886159e082909727a53745f6d9367cb027c4f9896122d9b9c9f83b71a004f99a5ce652dfc4b6482464ac9c5d9d26f70302047c435bb500673065023100db960cf2db408e2ec8a7b2cc85fcd4ffb74bd29de5457c6242dd36c3fd539c43a7a119942899b121116da14f909d740702303148355c2d1d9def31e864801abc22f01d48a568230eb4d5f5f3bd4696f98ba8a6f7e672afebac643e2814437e3720350302047c435bb5006730650230616c9c2ec3fa4b3afc55f1d320ce804f1a6d8e09512356b5c3d9415b9f9e6441404e1487e2439520cb07340ebafb37e90231008fa25fd0ef6ecf45fc38d9d15f362abae64e54383983dcdeaa5a8e5b3b91678fb4d1acf9d220361fa723e4d24099f4100302047c435bb500663064023060dbfde4bf156813ba5099ac9e6305880aec386ed7c701eaa3e13ef5f99c7c03902466b618bd487e2f77e411da3d44c5023020d37797e0ed84b09d3652763adfde507ba8e13928cbe68c85a7263f42fa24f5258ba4c7453ed6ef6f109072ada379f70302047c435bb500673065023100d79f1ff74e428872d809023bf2de0d6c3f6ec5aaf9b8824f45ec1726d892bdec5793dbcd81909263cb8c8825195bcc3202302f3ffc4c1f84b7bbc17db67294716f395f207c1bccf5c8de27c87c4d25bab290d79318c5e44ae51dafd71f7f9da4069b0302047c435bb50067306502301ee2b6227461bc4c24eb301b30ee37e9d1d1a58fdf08a8fd78fbb469fc9acfffffca062497f657323cfa407a5fcb764a023100df9523643f392006bb135ce639c2b9b187fc8547800ef5292360c576f45372a5bccb27e490366f9b784a2b6c5f0335ef0302047c435bb500673065023100feb2b5bbafbab22f30fd39cfad4ff8e58b493476646f043c571ea4f2ae81ed39d7a6ee9ea60e87aeeda5d5428729f420023024cc3970c9583b0ef93253e352459bed3ac496b596b59d49deaeed89385f12aba1dd3c405d9b8de0a809959ee58695ad0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303e2c24758c719d8c4823402b3e8543acc5aec5999e4b9dffaab6fd1373067154d798fbd625a9884cc52b593f8e432c4d02310091f3f1e2f1410aa99d8ae9966b566abdacaac64d298aa258142c0b2c01c52ca19258b2a4ca2d696a2b74a856cb15a55d0302047c435bb500673065023100908c796ee5ea0e94ef1e4233908fc87131aa7ea077c9ec92c94fe10a651ac3b350872bd6a31f7c36634e9adbef00a276023045076e639534d0a4185d5e5fe2c253a922f9f2ac41b1bac4fe9e9adf5297601ff718ce1f416c035cfcb2c9b58b055e640302047c435bb50066306402302d3437f078951e116123e069ec00e06d499531d0adff85ef0594cb3b91c800d918412f5caf0451acf5a864b0bfeb48f102307bc7502238659c102f59abd370a345a24ad8c6bc877ca8e7a41d2c7e308894928dc5e600177b48e47da2dc90c3b1d1fd0302047c435bb500683066023100c3f7e1a530456359a15d4de319bb25aea77005f320dcf60f9dd96fcd043353dcbd606323878d1f18f459460e32085f1e023100ff4661ea1c15e1e20c665f7cecb8c88d7cc4af16ac3399790e7eba89dee9b4e74146d6975c4cd840dc4348977158c9090302047c435bb5006730650231008785c9301f8d7eb0f5f8d94549460a15f6f21aa6de1e2a85916857265ea682fd031440fb12adaea082a52083482f5dc302302433faee03f56d15a7c5b66985eeae37e80c536a10f9598a4724861c4bc9af15d157a923b97fc6080ebc44ee671c6a9c0302047c435bb500683066023100986cf5cf2a7097416a246290b2141202a77031fae06306c9be5b551a42f4f471f906bcfc9e2d6d59cee0421827f94996023100ed39fa33132e465d2ac0c2c913d22e9578cf65ec63684716b4e8a332b49f44e58218c20586261a75714e606b29e9f5700302047c435bb500673065023100d0df285919fb2bcc9e940b31f39002199e1a0be415534c9d13f7d480dcdab41ddd76f7d2012885ccaaa825c36e8e9b0702306781b081453426fcf79adae89af72cee69503cac39d0984c4537b748d644edd627f175a8815c1c8be51b0416493f1d750302047c435bb500673065023069918c1051743a591ea4bbdb90dbc71602d693ee0ba1d3c53ce74f2398452e483c71a1e45e1a43ef2e7cf4a6cbeb9db6023100b4d1a4ae0bbc6214948e15fba5c489ac15fa53b440875cc8b2f0eafe4a2af9bff91745b85ee0f625906cf9dc6a16a46f0302047c435bb500663064023039e3a2ea77cab44f4b2f9e7ff4d9dfce288d8b9286cf0cef1c07a5ac9d1072fc62dba7111bb9fec957ef997143595ebf023001b7d085c7b4b797dbebfebd0bbf1fa227d8042d96e36eb2ba274d950a9099cd92900106bd5a55fe401068448fd213d50302047c435bb500673065023062932e3deaf0d80a1f06ba9ab4834b21291524c601880db064dd4760c04b605955296602d41aa41ef6a88767b0326abf023100ad5a5d40bc014cc927953f448378e449032c371dc27baf713e4caa2bbf06efab0f489ecd3ca35867aa44dd96eb79882e0302047c435bb5006730650230199ac460196fc0b020586f30bc1cf854e46d0ae1ba1500e527082769ffd7dbc9e356ac71bc76b17fc4f4e36e0d248215023100fa9aecb81cd9cd3d16ddfbe8dfd1492e93b4c957c4f1cd4bdb7b8617dad88f3a6a76f5432762cdac3cc6af34fc3dcdd60302047c435bb50067306502306dcab6a5e7cc8baf10868943d4a79e221d7018a9b4c1a947498d2ddfa089679d8146ea5a094541bea593781f5cbde576023100fb6493f35208ecec29224e409cf02a4613c9193a21834081d60235e4a4e3d1399a74c92a1ccb6aa5be9020f54bc478a40302047c435bb500673065023100fde23c6b5df7465cdb3b784c4640f772c57d3ed97c70a9ec904a22ac1d63da95f6f0a6b2d40252cc14fe2ce69845bed2023063df457a01fa1aad05037c880ba578330828ccdb4f72f4968e01f2e6829765f325062fcc7c212b99cd88f0e132fae4500302047c435bb500683066023100883b12bf5e1aa8fab327496603b242ca6f84003c688d4bbb72d21f79b7dfa3fe26d46f732d5793cc6583cab9dd343c07023100b3aad79b87c698830cc259c6546ad997ef628e89ce89432796254adc1f2499fe26cecce47475a085b8eb2b2e5c26d6510302047c435bb5006730650230192872d9dc1f99f576085cb2c4508c47c62bfc50a73c6e52a6a1bbf18bca13ebdc0b276593bf0741ba072b1584491f27023100d3f640dae608ed3670cf1f9d1eba36bc6ec79281b51740cf3c1ec3a812d15dc6ae1bb1d087574d93b8c63d47488ed55d0302047c435bb500673065023100e161b9b25a0e19febaa8695f798b676c537a32f11995d5ae11c2c8e6a91d51fe9ce66ed19c17233d5d0ccc7d1847ed4302305b62859dc437da777d6361950710a30ab93fde4300ed544fb84ba01b6337c2ac34fb32e81fe78ed9df80a776dbebbd0c0302047c435bb500663064023011f1990da968cf7976a3a8bb02defa45f9a66c9315136dcea76dbea900f9ed8dbf87a01fa943f450f4ea17abca27c868023018913f4a9db5f173bfe05743ee6e6532c9dcd0161718614f192895c82ff7cfb8a91b1e11086ffb40addf41487c329a760302047c435bb500683066023100cf45840987b03fd066d62198f5bf809ed3f2b4b37466685113417ccb783decd08e434518617eb42e20432b8585871362023100d314e30d63f1d48c96156932bd8cfdd861c94d2e18ac78e3be7e07937aeff17ff90db6815772857539f06491b82c55cd0302047c435bb5006730650230763d28cf4edc204f9f0b7b2a38491f2a267919fd7dc7137ceffff22c8d0436f1ef954c6c8aed4eb95a542279a01759f8023100d184ad049c9438e6e45d98fc6e0dc980911de6df22183367d8bfa96429104a25304a946ba3f7d316231a0ce2339690310302047c435bb500673065023100a0ef6fea1d8bf63aaa46cfe76b7a65737674603a2b6748635130d31dff49c42d43131e0ce92d7fda9bd98b0d3e687cbb023070faf0c2da37b8d998d5d30014e9990c90ebea78b3aab8edebf729b33917f53055409c936988b93e2671f824a0ba9c650302047c435bb5006730650231009d6e7e8f189c09c645ccb1c4fe9c40499f23b32193511a9a4509ddd55dfe688794cf51189128d9f7423e7369ede6d90902304adbd8dbb32eecc496a5de71ab531a4ed85a4f232336619d036ea20bb9359017aaef129f04b807712b28364e48617e410302047c435bb500683066023100c413ee3ee4aa428377d93cf9edea2f169e71fbef12310a242457c792ab6f5a146fd6b1840036ba21d114232e2e40fcfe023100dbdbfbec23c9d570ca8a7f0e288ed153250cca64e2990dace24ff44e1f98679c985dbc99178c0e95e11f66db079742c80302047c435bb50067306502300daffe8001c6264b906dbef92dc3bdef6a8e2aaacfcfd804ff79bf2608f57fd5e38a9fbfb149d3dbdbeedafe18d2134d023100e93b6bc990a3e9d4cd79918b374e6c75fa7f88da9ec064ffa72151a02d48155991cf9be9f235ad4cd76893be3b4d7fa70302047c435bb50066306402301bdf2f8cd8d447e94057974d7644870249c656b5b059badd3f3994f1ed28c092ff247cf1ae9f1c7a252fa2cf56b4dae502303530086c13d98344928a88843319cc93da68a7fb29127a3784ded6a279c7b576d8875999198f28777b6a24e2091395940302047c435bb500663064023009423a9c67977f7246e9f7a8498b45ff908f5caac2d6a5f57bae519da6d245b984115c438c53f2b514cb0a8efc12b68202302c576c53c8107981db242dd2d6dc7312c390a22e8248ea202b5cc19a0c65e66c0c367d977b4c27bf8d330b87d482f0be0302047c435bb500683066023100e1d7900fbcdfe97948caffc7c04010d36b79e9fdf4d83238d4909057e885790514cbd7784551b64e1e44e07432aacdd6023100f9be4e9d00a555d16d87eb93393b4da56a6b7385f8966664f899dd0d7ee862edd0bbb9f15f18d48079b829b56b9badac0302047c435bb5006830660231008e72bebad902b86506d11efc11ee8f4883602b4739d7ae7ce814c378033da191e48d758429de263a933370d6d93797c9023100da995a52ff4d0fb549952e043d80c7a73ac1ba2f43c31a99f724c43a4f38eb169009ead84256c2fe916928bfe1ca18a80302047c435bb50067306502303fb74c0fa4d834bc18747e5006627718e90aea41e484b513c8f83049c82173f38884b0baa49b03dc4dface7fc9ea1a74023100fc8ec50b30eb99d2e4f8c69506e440e273976151657b2b35e4c5ec427fd48cb8a60645e92b9df4e44d961a608d01c3720302047c435bb5006730650231009f1fa265b1a5d20e093818b7ee2eb37d794c902cb3095b139fea053c62e1961a9a90c47b42c57e58d43a3e6191d887ee0230421429f1e0f943e4e5bb43d4e51d7287e1ce6900d07a6c841065a7776f39f36af7a1ec1344527063a730ec54b234ef4a0302047c435bb5006730650230294d6f60dd4dc1430853e203c1f8b9c486684f4c56b7ddf14f8917b08f83a5decc9f98494125b190ca7e469b4f69e301023100d54edb08fb9077b61b2bae95640d08a82756601a2a5e8bdb3663ad651a384d7333acbbc3f5a8eae82c3adc3bd08407a10302047c435bb5006830660231009d1fbecf7315fd0b540aec0cec2fdbb704dc8b34d3310f717a6c7fdcc50dd94c9213588c5e32a22c58526821e4df357d023100a930ccf0399578c21aefa8d2f12a308aef692255d8ab5da8245b5e64bc612e9206d54bcc103514a73c965328f8a622fd0302047c435bb50066306402305e74764616edd464abbc990ed2b211c9879c0fb7ee6700f9c187b99bc34b887c105db47397c2a2e0fb9e99ccaeafcf1802306ce34e9c147c02433833c397bf09b939edafb850233bc8f5dce0f8b3498dc5cc0d64637591ef9d02f54006d4ed9d7adf0302047c435bb5006630640230368437a6248f951226b71752517860516c0642526116b18297206ddb1e634c442edb302c93bef7091e6a81a85b34f7fb023034499e08eb19277ccc2fdf5e3097d4de7aab09cdfa6e19baede7b61aecb2080f915d099d498a26fdb13e93f7615800760302047c435bb500683066023100a6da9e9ae8e9a5f95a8660978f1b0e56532470cff3cdd22cea456f5fb1d6612ed67b69860e9ad8bff4daccfde5154fe1023100cec7890db2858286e915c149a2c8a2c52ddf197e0f4535637d8f47425a8bfec231fb14db18e7b6c35665ac8683ca85360302047c435bb50066306402305ad85fa22e983907b7db59e29eb9731cd7598636e06ff27b98f03e13ab7c0cdf09371dc1e69efbbc95c9b99869c2a97d023034a2e65cd556ad77408cad25d7d9a31dfa1bbdc53c030c975f6050d904e8d909428a1338a664500ee182215d6c83dcdd0302047c435bb500673065023100c71090ba97bca123ec2c944513e4e2fc022a03913769ee0dbc0cff056622dba461b4ec37270c029e84b8862cfcf8c69402304074f606d21e592d9360fafb85cbb760ef3171d382922d98caccec738dfea95826c0008349fbeb1be670f8bb312acd410302047c435bb500673065023100e52ec13aa7d4dc4d74a9d241624cef0568e6e8f0c3ece0decfdd8c389cb9da98e5959ad9d912f555159eb71f7c7a450c02302960f0930491543cf08b8f17dbeb24ced8b2af85de91bd886c040a78c5ebf634e87cc459569d2824e2a1449ff3c20ecd0302047c435bb500663064023063df0fe3eae9f777c503db4f12cd8644fd293c713576803e747863e9a3ac3f3f666da2c6f7c31af6d66ff65b49d939a102301625b740f9c910aff2660d1cc498304db5c0f12de9ce38d1e57dd012c0bb024e66c620ba60f51b3b63cd089b256f8d530302047c435bb500663064023068954e4a6557f275503d05f624aa1f9225ec5ce880031f7dd059264d70842681795273c88800ce5334abad6c9fcb034202300aeeefc5350693018ff3ab073a6f69aaf653d5116fa822d50e75418e5d505b7aa1c55b158843aae262d959576323ad880302047c435bb5006830660231008c842ee772bee1e4c4f0d2ae8241d16ff4aeceac058da6faefd182233b1e678e5b5d889bcab81e97884b457028fff41e023100b918966dc6e2b209191038d1a680c8a338083681c52de4cc21f3f68b00eeafb58f8c6ed366642de75a9e32f24521971e0302047c435bb500683066023100883e7bfe4db96fe7279760555945eeac5c8fdb464f28a96cae4ccd93673f82f79b8a75798a93818b31be8091e9794e23023100a2f1e463841850b0ceedb9987f9508f334c6352665ad0866364a39bcc1301082b8db8c921db880882386adc1e2f58eba0302047c435bb500673065023100ee43e81b644969f9904f5e4064fda611eeb2f20487feb63752171063d708975a07a5dd41cdfb72bd57e21f97c46a05d4023019354a2c21322f1e5661d49e04c617c74ae1141da9f176e64e847e57ca127d05242bb801e1e9b0e89d18d2a10ecad7b00302047c435bb500673065023100d2fc0574f153e9f60a4ae4f972e78f9df7d8402981ca5ebe571737dd5920e5e6e14ac000dadf8dccf550f34ac4501c9902303974d4a64a55db1ded73927b2579a8ceeeb2fdfb9c9f6368bd7589345382513e49f92859f6a4eecfcb317dbcd340ee460302047c435bb5006730650230399c117348e41dd458a8cccfe3371af7ded518cdfe3296cf4136569e9d520f5fc280e3945c61341a7dae742eca79da93023100d0a1e8620141840dbb316ca9e144c5fcbeca176205d2730d679177e5fc85908ff24d750de25b8aa3a6663c70c2fff3e30302047c435bb500673065023100d35c4f78e8cf6c5b89a45111a891ccb0bcb9c07813c05d86d00f000013a2c1c2c4a7b9b33082c696d76f7037ee210b3a0230524faab6417d499cfba0edc0bd904a360291fe2ce47c5e3114e465b8187e44da3b67076bcf1a0b688c1a33758fea62f00302047c435bb5006730650231008d2b6de5e8548cf597dac208a5c6e617173e3eb6f7c8c92238c1dfc034d87bcc7a31039097a33b7eb2d2f6f0d081eb4f023049c05b439d71be14f4a4c2ef9fab6978c4ccf2bbaaa0bae081b3aa3f5b3edfa69158367fdd0df2dde066e651d08cef250302047c435bb5006630640230294ff4a7198280e4c6cf152bde0b1177cbbaf669b8a2a8359e0048972ba3e0aca9a9edb887a9ed3dbb47eecc0582da4a023076f9af7b6ccd467c7dc14fdc697c1292ec0416601238118213bbe9b85da6cc9118fd3b00c01a956bfaa7ed9adf0245810302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230745edca5119a27ba084fc53444b3b3d6a0e3a0c69f839e5d6b901f4dacecb5d80e89b35af71e936020b94901bbe4d5cf023100aee998c22a3301e2c32a6131f5812c626e54cf957a75ac6d11b0def6d1c8b2611c3dbe1622c64f0be939f0c171d769c60302047c435bb500673065023100e62348c13d10e769ade02265bc165269905f214bf7601074441380d40f84a2439d1b2213951be05319fa70276a4fa4a0023054447001d4c4b76ae88554d35e0979597ca1b51001715c813360fa580be35bff6b26cc4ce7e44f778b106ec8467c4af20302047c435bb500673065023043368f0d373e8a4eb39c0ea1a740ab07de004637ee6c8c0589740733218c80ab55c599e22f9a6fca57beefac26d09b89023100ee7f41c3d267d7958ecb47979e36fdbf37365774cde81e5b0c7ae94066d2dc6c3baab417fc3264b6bebc65f1f19b1c180302047c435bb50068306602310098d953780d7f0ba1d0dd5ee102321f64ac93f3f1d98c379c78635e3def6ea433c09dde08bae3648d8546777955e8812b023100aaabaf44ff1b62be41f3f01801dacb1138ea95752a062a3e47a5e4025a0ab1ee09b8a7278afc0286c83d283cfe4c2c2c0302047c435bb500683066023100e8db17edc6eee4ba17c8d672058e50ab1979f974274b5a626c75c5b8a77366d099af743c2978c0c5235aded583d929f2023100f09e3832eb404f46b16ae613470b829611adc5b9f25924bed1fe5f79f94f988e110a3546a9fd7becb593dea8c395cabe0302047c435bb5006730650230276e4ea9cc2f8a40c5301ccbf333a39e1a30805c278183416349562757637e4e6a2205b0c085b019d549eb8440641ad60231008c0bb779d9349a784c1232b357f5128977d08d0f6c3881b6f74e0961798c50745d4705191793c844239853f9ca15ff500302047c435bb500663064023019aafad2262eee3e654db1a4588bcd54eca8361eb22b2407492aed7d2940ac5430a1fc91e5ad5611c5bf05f1931ff9dc023000e47d39e7362794b4359e8f8df6c26b371cb2610352e948a338d993ce5f0a5038dfd620d9801e2d6ea4b37d446c553e0302047c435bb5006830660231008cd3aa1ea3fd719e8a9736b5d393f440c5721f510fe1e3b169c5fefce4bc258957c9595bfda2e821a682d3ccd9439d6f023100f32c44eabd022adad74573486fb3ec064211892655013654470f943d34d81948409340d57fa4422e51ad39e463c6280d0302047c435bb50067306502307b6ba94786f57264e29b292b83c61053652ce4a44ed74fefbb72c9fa63f4457a4b87172d4a965e9aac0426de5dcd711d0231009ed94841fc3c760095cad2cecde33283e0014b855ec8b4290b4f94804300023aab69d483b92b6a83278cd6c34266a9ba0302047c435bb50067306502302fbe062bd8bec81952ac6a30eb59070309c4f772520db497938c62df2182dfe6a16e499c2d36c376e68c14bcb7e1059c02310087820082056a9f5ceb4e1251952c8f85ea18693f6451cc4757f177753c9ad3ce4b4f0e56594101b1e60f94cd7f5fdb9f0302047c435bb50067306502310099f0ada08a805f68b646084f1c72d324928c24b42c09da866ca426bc8960ac36f52c7ee90ef3b538c097d34b30505023023067a9a6ac72d4e2c5255714a7d5c0b0b7e2b038fcb68f66164ae9511219d5c42bb37fa3f8518801b81a5f30430031f5cc0302047c435bb500663064023032ff90ba4f3ac9b8c0f48e6a68928d0641af4ab5c26e3c3c75001e830c908400a89c6d18dd27eed684773e354da6c76d023073d1835f6f8186c5e4e9d69690b7f23b174e939a3d733f284d9b856be498a9b4fad856ed0c001089376cfebc0d4b8f7b0302047c435bb500663064023034e5239bc18f4441d793700161964946590a1102cd7c8335161ae98a8684f2c0213cb6f42930bb2fa4d7f8759d6f1461023060598f5aa6d523f116299af9c32ebaebc819669eb0649b59216b584cd0c17d403eabfdba1d39132ac68aaa5c772526ad0302047c435bb500663064023009c67ad219ecd53e3c8d1b2834e6272754c640b5dabe5602b114703b0fb7b561b20287ae8ed519c166ff039a4605c62502301093c3a8c09e1a49370a2848ad91e18503f1c1a8bb7fe26434d22d3670f98662fe28dac8f7cdfc9cd9132da0438027890302047c435bb500673065023075566cec777d9112bf84f216d814d5e28c10ddd14642a2a60b7ac74c0519e0dfe98f9690507e9a65db2a2ea93b517229023100a5ef0d0c9deda18fc428a7890f4cf43a3379bc0453e4c04f0ca87f1ea7b7fcb73163bfa41e2f24aa764a87eeab72d1ee0302047c435bb500673065023100f9186e686469472de63538dbed0049902a1a0bf80976838c44da41233566c5e4d185ef05c0c8830a93b9de2f42d75c030230572382f4bbe9531c64d1b2398aa8114c21919bb3654cc4f1d99a2d76d773c2d9392ce89fc01905ea7b459d8486d578660302047c435bb5006730650231008aae28b71ede3b13554caeb6ff96cd063ec4ca479689225ceeab78e0342f0d27189625fba73ace882c2be6870974a302023051ba2d3f9c06ecda6451b57f89544405f92442694693be68bc1c9ed0bc4d31f9af72c5dc646c50a29c8634d24b37c9890302047c435bb500673065023043324fe9dfc06f0126aabff5f97864384598d5ff9bfa3038b92ac19e99ae0acb92784fe24c1fb44fd5e9a7a0fdac7a41023100b6b7b7c72f3694e236c3fd50f4161857ed1275596d7b9883bd7617988c2fa08470fa863a61914a91dd7b8c80969da0a10302047c435bb5006630640230115747364fd8d5af87d4656b3e65a6088065e07887af917b622ee9ef075e8bedc0f975937b20d9979c2f0acf7667128102305885b972e786451b1aa2ae246a7b8961c23b129b98bdf88a389a0bb3be0d90d7e5721d38708da66a36dd69996f60f16e0302047c435bb500673065023100952c8bf6c828eb1cccb1bf678b56dfda8060ee3d88772b1b80f42b16f1bb709621dfe97e90b40faf38da1759a68597da023037cc682b7b4ad1414a49d3b2f02526694607fe28268bcf34daf067597bfa71010eee75e3837c25e8fdc0ba10eede4b750302047c435bb500673065023100a2213a62aee0e81dba5b9b28f38cd5eb7dda288ee853043bfefa380d9014551ff31ad3c777da354cd94ffe093b594ab60230077f69eb3954642f87ea815ff61441a019b147a20e6b4a35206cac678448d061d699405967903a4a2e51c0d7090b350e0302047c435bb5006730650231008382193fb69612b1eb10b21e66293fef894da0b8693a2ae3f83255a3e95fb214eb59a84d86a6832547ecc7fbfa89e5ed0230472c4e788b61cd05ce1eb06f62d5c4f8fccfc9009a8e23dd6202420f827125e329fe77ed9aab1dd6b758df952bf8ccee0302047c435bb500673065023100d45a392b5958f97d1658cc70ab8a76592ba976f0e15cc8dbdfee0aa5568a7093b2d6f393489d1a6007c847143ad1b0e702303ff4e5587375cb677546de073ddb46edd0b8565e6bdbd0b8b8021831b63e5129aa58bca377d2c31f60f1de97f7f49ddb0302047c435bb500673065023100f6dbff43c27641ed70767292605d3ee5abd1a25188e5f7c91d48a22857ab12e3739af83b821df4c22a1c8f432743ae6802306d677bf760a7de6dbad4e020227fb58e84ae0769e902e9858101fd0918bfa1795855cb8b5a56579e09457ae17977b7360302047c435bb500673065023100b8f3eb7b8e07a118f7437667697fd104925a3392c37f2c981771c9790c7e228e3a66954a25b21107aaab31d7245c33f10230503807c5d2ff0decbd4e9db6b3bf1d95637bce97ec5839d30ca986577de87bbf272f612ea0ae76cba48dbfec639ff8980302047c435bb500683066023100e9ae369f0522b7c262d64232f8a2a26eff897be67fb0a842a6420189a0d3d2e2a6c3d19beac9a3cf39f429809ce77bcd023100aa15afb5ef430207628df561981a3c7b0c7d33d9fc149d0d3b2c76723010080f88dd2341a6d7c452120f3a95c6c7f5ad0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023038a94600d06ab233a7712a3643af7c90a52676b40f40e54bca401a76da58f88783c11d5aaa88a498199c220dc468420302303d603def5576b7adf51ea6b538f2aa50f1d47add807527ea7f6e4e34e6bbbaea078841db265d67410475a168838987b40302047c435bb500673065023100a360c6979f550218796531b8dce27cf768c292427cb6ad437abb34a9e6215b8dd6d2b749538a414bc7c822484fd976e602306163645e9564a8f7507027bbc4c86f1fcbef76f85176eb9c4c43a940179b805039a4959e864fecf09e0f476e9f868e2f0302047c435bb500683066023100aaefc90a3bab11eae7ed6cd9e2d671857ce71f9fdb696f54983ce4a9dd2910431628f91fd09d78dab22eae60d561c8f1023100b32d2fd2861ad59078d540a3c707c4af0fb0c06aea08e3b5e3cb8b601d76c81627b1aa58bc84298d381a52046afcc4ae0302047c435bb500663064023100c5a92263886b1f88b4d1c8d119ff2cb3efa02e1f3e67d6ab46a662c06be80464ce79915a4dc7aeea52252652fd7ba790022f149b6d9358105a2599c9e494dfc04452ca1557b70a4b2e721568ba448775ca2688e42b1625d397fafcd7b2fabea8130302047c435bb500683066023100b04eb0d24666012784045a82b276b1b66991d08fa7f67415fd5a9dfd90ea46592909c53ce17c7fc6636d6a1ed7d7ea0f023100d4c00101df3879205c856b361c98c80daa8498f986e0833450ad5d9c11e3733fd858f5ccbfa21d9d14b94a462b0bcf7c0302047c435bb5006630640230103126d71720e8aa5979288bd27e5efed327a58899eb53c1308d7a560cc3c25bfa896f8352db693027169ec0e1a2c54702301053ec34de9b74b860c67a9b70e239c53649cfedb1e431e07be91e4adc3c3bada4657e5b98268681aee8dcfe464c2e4f0302047c435bb5006630640230039537cc65e5dd674775e5cf1862dd57b62c1dd3fcc602924790337a7f64593a3741341e6caaa21b75aed93dbbdd6d9102302ad7a4f1e719266c4d9d0696639968beb5ceff512fd830f5f9268c60c201806dc1db633244c250330886fa9d270326650302047c435bb50067306502310081e10c5e4a98c986fec6ea64ea5b0e3e99adba3262c0031d16a62197d896f0a8a0b3e93f8a9c0f0d5bce1eea39259c9e02306988c0d9244cf8dc8b04f917878f7568edc3a0988e68dff4f4735584c16a98b93e162f77377adc1d919756622277cccc0302047c435bb500673065023100eeb0cdeae93a65b4c6ed77344c9f8cfaa9514d3a12b3b95abaf057dd4864bcb192aa48d693e385c8a429b3f0824d091c02303bca783a6bf0138f9fd2783404699339bbf764d5ef2b491c09103886bb6988cce55504127133296a8c93cf13c8248d630302047c435bb500673065023025f22dd8f1b088dd95a0731edf21db81c9f7b2b73bc01d5f9d4584a4b013c62eefd2c7c0a1d34246364c0b7fa2fba188023100b5c6c7fdb4e194baa2a99de956640fcedf9d3761d0cfeddfe2aaa2cfaecd86171cffc1d8fbf2360a18a7468c3d54a9430302047c435bb50066306402301d1c8a3ad9c2ad543e5cb368c3466d078b5e2f5d92250b28074b66571bf1842bae1878957bfc5bb0610087c6ad0d8f9d023071373a294395914edfa107777d412096d97aaa212488e81b6400b388579ee7dbd7c0d8622036103ccef76805e9ba720d0302047c435bb5006730650230373f95d042e5b8cbc6604a5b1376153062f890acc2658a7ebae0526e2eeb127923f40f492696ea1f8b4b09ad72a7b894023100d32393c382bbb4a09af7d9f2bee1be6bca36d72899594ddd2959608334c94431f1d7e9ee15629b654cf1b726424bea940302047c435bb500673065023062b166c5c1117ac2db040ca4870e74c37acf7512ecd6ed838eab9ba8a5e2388569e4590c61ce237f4fb5341062359cc6023100d9232ce5645df013394e4c102d45676cfb19f36628e665c52f8f828e213c03788627da612a12aab97a62b335cc72d4750302047c435bb5006730650231009d581a82f8b572178fbb5b2245d8498877bcb3109e58ae8dcdb8fdb2b44fecc359f53bcf32d1fdc69bf9d5a27c719bc102301243d1a292970d32fe58ad2f14b57803547de2a9947646d1582cce4cca4dd977dfd4694996ee56c888f9083cf0b77cd40302047c435bb500663064023002a85723c404f8276d4b571276541fe6b0b9d32ef3ecc9793ac4779ec4404d384ff066be1961903a3f4f491e2c5635960230389d85d9e659fe0b80f7c1bb41f5f73091cc146c6ab3c32589da301dd355f4a3a370aac44a71a593a78db155a0e037d60302047c435bb500673065023100ae10897679de3a64e9fd5ff42b968d821442ac98ae807e77e138909e52abed327ab9ac168b23909e491c34051ebcb42a02304dd460222ba004098f1bac56c31c78e809b91931871a162b013763d90820dfaa98d6617a508452ee4f93ff20731a8b170302047c435bb500683066023100e4fa0df1e955bb4d7471bae3a03ca2e1bca8034604908d125e90b136a98139305c30d4f0deb5886beab2b4512f301a870231009c3ad77349c916ace02be65439f69f953c83f7cb2ba242163f021a1c03e07be407f42403155ba0ac0aca6d02e384ae850302047c435bb500673065023100934c23d5be2289272b97bf50f0b218fd7ef5703c70984323b33ea14721e4c60b3e83adb6547bc7049742fa8f9b70bf8502300927bff66f59e344c2a6810a99f29931e9f3ac4a3fe2f9f1b562a5de48f3e0d73eb7842ec3d03e025e454ce91e2683200302047c435bb500673065023100864dc98440e2614af3ecd919951de277984340a9e8120da026fbbd4a571385f4dbf10bf5866f0d7ae8d71381141af18a02300cecf432eaa016c01f0b3d306727285ba69d38189cee7c3766aaf7162379dd3f9621a98304ef9f51f5ef13451edad40d0302047c435bb500673065023100e8dde227b8337417525740facf586afcdfd15cdf127effce73abbd0ec822aa8b84e4afbae877edee26d658a9bd861ff502306288a12ab51135e8fff5ee9f80cd2f7d5461ad471dca8781dae6c743243f443cd55cf6eda0cc707d471c6e1e3b6b61dd0302047c435bb50066306402302987b39f69fdf43f520d3333cda1867045202f80f0c4a238957875c84acfa45c7b7bea47278bc412ee495d6a7209ed3202304042dda8fff8c8ed1c1291fe95f4b8cd524947cfd5363164f1d3191e7ddf40da907d4c0b8479738b0ae1637128abfea80302047c435bb50068306602310096614132bdc84f10bb56b807b2e6f3b8ccb6d11253284a6b5c15430d5aa8fd5f59cf27a6b2ccc5f657592eae6e9e10ad023100ba1ac740a0933f64137decd9a4886f80b7dc7b4dd27fe2d3bcdf06a7ae3ffab7d768f4be5e0634b67e9c3836052f988e0302047c435bb500673065023100ad87c259cd9cbcba63f3ee90ba84383f47f1f1208677b0a077e6c2c1093b70d7527b2cc7e255bd9653969f5868e54517023009e51876301c2e43696ebe0f40859df0de090ed48a1694277e74034c6e485d68583c1855ae3b69ded37319324e6af4ad0302047c435bb500673065023100a7f958de9534fc3863fd9d1a18e4d5572ed29689202788ab90dd0ea12b9d9e1a6c9b1b5de5110f6a028467b7413b0d2c023001e298102b3bad6b76882cec90cca288c8327d7d39e468ac6e02f4eb2871f5562e8e17dfe998cdd6e82d3ecd14c51dc40302047c435bb50067306502307ec6622e2ec9e5e6952cc56b86f546880db7ca47e26decbf6a9f6999b02b00f6fda7f237270c22b37df5b12cc27e8143023100ba1fef6782398cd6b09b81379bd7846eadd972409caa6fb2ad39469d1f0923d7f50939afbf399bdb15e322b77d1d9a690302047c435bb500673065023100c1d17cca158bbce99e4d30992bd1970ed728e6ac1d8a1d91c1c3b2b0e69a262bdef3e78afc63e6e03ea3e73bb98bd01d02303730b5522b536ce34434c7284cfda073c59a65b9b5ea5d9beda85a0b00841aa97dda5fb5c243374df88cc550f2785c840302047c435bb500673065023100f9a99c547e65fb5bd04d260e1314bf20268a7ba0ea9e9701c8a6db49569fd85de75fb711c6da02ce39edcb7878b25b6902301d0749f08722d686c9770b8fa016f0f1eab06d111862cd18294f34787efd946ebd951735a52fb4e48a4a4c8d9d0dcd5d0302047c435bb500673065023100f8ccb6053ba4ffe12e664c0f24a5fa6b3a8d3d8aa545341c38965142f2d3f48a9f8bf226a736f8e45120689a8573c541023011e43417c9af09c44fcd1c25791a5f44382238a0e97ad4550c920465245fc69b5f4ad2a7548cb0335f9148bd5ababd060302047c435bb500673065023100c62e88e73aac32c64ea2c48792fdc7acb86cb30b2d7568e035dace11540e14892a3ffc60fee9d2a3f4422e670b9076de02300e6975c09b45f949ca9e51c49a94b9832aa2b7b62efe9092fdfc687c95076a1debc0026b0e53d6a8e911249f137d29d60302047c435bb5006830660231008f2972f7ebddaeef0ca918793a31ed8e40848e7d81b9a93d6e6debe0fb5c56ddc29d415194ac0ef4ccc6ce56fe7935000231009da5e12f4bfc30765fbdd23388f88d8081e52961b86e3221b5ecf53e22f577e29be87de4dbd6f5d188daf66e9262cee10302047c435bb500683066023100c3bbdcfdbffb8d756e23c8991ad1947a1c3c1509d56021ccb6e4cfd3c5464d17402e07bcefb3f7ca57a67600867a07030231009fe8af51fad11c1ad2b07192e808ce8a4db7f2d9526ba2faaa41ce3bd3328058ae3686c8197728d88d13539e2a11af5f0302047c435bb500673065023100d866654de47d518a85d9cfd1393411cd0010d67070bed3785ff8a8ae4b6d4b5b6ea3dbabd796709773806d117c066b60023013f28aff7ba37f2efa48dde5e943c0552fec1093ca63183c16890e67dc1334475e78f85f9646ffc5deda0d5d78b8c0c70302047c435bb500683066023100fb46374c9122be6be1fa3a9347662fab6e4fe9f5a38ac84461a44ba84f2f69ce0294b44004a24b84d823ad168496adda0231008b9a2489d63fb74ab8a6e1ff9de6ed4e237a62c089ee77441f992bdaa032dcc252867a6076f6d2073e7d4117196106dc0302047c435bb50067306502304be14328c25cfb6c11900570630d3f1ef0527be76c9d0d01c051b02ddb8fb844c16da6c818c28e62f8047a3eaf3f0eb9023100da8ec42a51978af199e89b58d3a7230121cf9c0ed8a0b090bfe0e55a21f2c12f597088cf8a9493acea84b3bb39cff8400302047c435bb5006630640230747355be5c016e2a1f474c741c85b405b449e38e6fc3eebf69afad656316a4367d22813761162c40e33bed21390480f102302bc4358a55b49bc1dc93a14d20511be73ef55782c7dc76dd1f31bdd91cced86fb5a7005c5d8ed6cbe42cf26e882891e60302047c435bb5006730650231009179dc98dfd3e404077bfed9c935d6dba93f19d93edde413b721ae43f0c7c7a3b06c89505d6e8cb49096de751e2f7087023009a95dcd0cf10908c65adef83c6fda46d909ff21f2e89f7bc29667c7fbcf362c8102bf9c5546568e2f088f97808e193a0302047c435bb500673065023100b100c165207b3b7d8493a02747b65384a9f25ae5c944931157abab13a86f7a13d0a533d6901477194b8dc2d2521bc99c023073a58af063d3ee4725e76d67c46122f46da7ea7f856b4386eeeaa1269fd0c637de449568181cf2f55fcf7f24d0a9f1680302047c435bb500673065023058cfe4f74238dcff4287762b1db8a2e1218606ae080e516ea86be378bd306b463a2b882b0fac761edc5e13fd398e65af023100f7f11d9a277162ae2e5ff9bf8c57065ce498aee58123ea02dfdd5d01745dfda65357c3c3cd3479d5fdb611e69229f36e0302047c435bb500683066023100b9eb88e7524d360fdb5531037d32ad0385b50a50008a7db6f537429d72e1c8cc9c8bcd37f334d6cf5e1d4cc5d5d38778023100f999890fd5dbff2dc01d0d47052dcb2a5095f6f02d74b46911f549c3db9e22244b9199808669e1204ecaa69aceac4c130302047c435bb500673065023100a4342059d47fdc8d133e00f34782b5ca196037bee84a46e84c4ea674654203810f717cbf5df4364cd816ac26bba4b0ac02305414ebab690166bf6ded49fa085506d960e33009fa729549bb915a4bb8ef4c597c925761684ce4f14598682d502787fc0302047c435bb50067306502306a426eea6c567ab1238e95be8bc6a16ad0b3e389fdd4f8352816b79879b816320ce66969a179a381bdb6429c26dbbec0023100be0b24d21354ad7e7176b7de65ddc5cb9841058300d209dfd3d7b2eb027324f1ea42f94420a7f24cb1cf4cf693ad83fa0302047c435bb50067306502307cee7e1f39e61799cacb3f5f2f978827700f06a9539276cf825ff9bc68221d3020a1e0944344a050af6c74084e694c78023100ed8d13716ccf760eb3f74fd97cff833fb2ee18b1d9c8f2c19a1879a068fb500c89f3743637a046c87bbf0df970d8608c0302047c435bb500673065023100b34381967da49dbf5b13e945e4d5b8f8bd5fee2aebd6937c668e276e025fb1cddde07e896f4bc1b5ad738450612b3f9b02306f73cc40e3f90323fca80686e91450f094f4d425e6c63c004ca59899b8b3ba411edb576725b7be61a79b796c60802a330302047c435bb500673065023100dff4c791510145045b67c56f5dd79e0b386960761b9f339ea5d1403ea0d7350213bf8454a32a986e121a831955dee8670230627c1fc5d11f874899a844555d49d53de0eaf37671ffc94ec531a6057e441d82a9fa9d81aa1e77f8f833f2548189d6640302047c435bb500683066023100fbd56c0197c2519950b8d7b435a00149bb9abbd5ed9658ceb33ee686f6c96a7b7a38863e00e089fede100ee36baf6fe9023100a3ec3409eca100e60ac130fbd26b3c13e9838830163447f4c230b1d15629df3e3a5dfe6900d11e6a6893951627b9d6c50302047c435bb5006730650230513cd57c81bc68fc539501d6e0e65f2376a91310b2f0d1e5812e5b7305831e2b7b0baef10ade066fc3126bf653b66f0e023100c04e333593f322c056766c8b8c80866e5dc8b94296ecc68d2ea8b654b90cbed41bbae5e6a815fe49dfa1fa7f307c44fe0302047c435bb500673065023100ffe7534408a1531bbbb99dcc1f34ef7542f47ba75e9ba4bed845309900af9693d08ef08067fc0621820e0e78c845ed3e023074a41fdb58a7a2ac3ef0493bc34700721f449b341cbc6cac7befc053a38ac9acb12aabb29b26b208923a1014a8d4b4340302047c435bb50067306502305f5506ca46b92aaa1d4e14cdbeabf2081c72f6f6f65b575968de2cc547df14103bd7d1fad168a268fa6cac8416773305023100f37494127f8cc68dc2bb320a20db45fafa321dedae41c468e1aa1f13c690157b79f0134bca9a7a5e707866fe56771c2e0302047c435bb500673065023100b873accdc5b428fcaa4e0a6a7ee9072cb196a8d6bf4e7fe4f798c8f8831c0dfe7f2baeb0c6c010c72d9844002c03966002300e4a700a425dd78e5b4fac2c63d7482ce6612ec3a136241c8f0b5217c15f0797a3cfbd913ef38f7346a358d6d1427dcf0302047c435bb500683066023100eb85d26b320752150809fb37b9cf1cc0ef12518c5dd2fa54f90635d7be04cba2dd9f9d7eefd37f8d7a0882fc9cc1f1e9023100ae84a1ff3f37b59345c3db1288b8605369e7d0d15413e01c4d593bcf959fe7d568ec1e1e2b5449e914d8510fe12ec9340302047c435bb500673065023100dfe40645b3f59ff618086a74b791282327bbdb232714965ee6fa251255663f53cdd4e0a0d2ec755343a52402959dd14602302b36be8da483ea9f977ff3f38c7638de4099dcadd103c9a9b37e97e85dd4c1e9bab9a10ca079fd34d6098c2ca056dbfc0302047c435bb5006630640230240baf14112ea4f90e088e65c5a13ee3b79580dded3301843b95db85796784d42bafb835f96d3852bbd7b81c0f4be7e5023067fde81da92777c345b4f0633789973270a644607b8bf54242e83e203e0898c37fa55a5999c8bd00145c9e3158a4ea8e0302047c435bb500683066023100877f1f16b7a8cfe10ffda19e165225b175c9656c2439dde8fb160e99e7a636564d5ed7e8e74d6df59ccc69f3a49ca8c1023100f9c21c9cd06e0e47e97f76e4b984c9a77d204133443578a5c2e6b5cce1f3169a1c72a8aa0746e3a6ede846386ec59b8b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306550ee388fd75a527ccb12b8f3edea38654fbb9ba5bb0279f5fd63c730841ce6a5efe5f27de9636aefec3833b5b0651d023100c2cb918eb24602e75d3b6cfcae2a0c9a5b93d2f665ed8768e4ae598849709ee618f6bdb37ae5011aacc121924fa14c330302047c435bb500683066023100dcea69dc22a208f17f7f6bbb7c37eb044e5396183e4d7a2b87bd2955a466907a670fb99f8be9acf67b032d0820d113eb023100ccc507c5a9bd7fd8e5d2a3c34a74f8e35900fa4a3a3c9bf9340d7f60e19e2e74a76cbf3b590633527fad0c7d3e516a000302047c435bb500683066023100f717b99faba026985db15e954afd2ebba382b35d8ce1e59c159161c8d90d3fe46bd96bd31b9403ec79fbb9d2058a584a023100a54f1e7ed75a1893d22168296755fce1be4e3fcf7cd05090806d3716e89f26a8eb29b18441c71c14608c325eb25c22010302047c435bb50068306602310090d4d6040b2b020f16e63f71c41ecea79726b29e679779e0d055a36905f7bfa9a5f6883bf68db9b674ae4fa9fee198c9023100b4aba5627933480872877554a2db7dd926210de27f2861fc5887774a3f720a334eb9faf900135a8c0e3e3a835bf650480302047c435bb50066306402302bf8b1be89bdf511c8707ed393ed95e7b607ae1679857f5d152b7b50e2957e01d9805f2bb888a21173cb64dfbcdbadd002304077e0d556935d91ebb869cb8e8b3575ad13552339878165b0d965535ed1155bd96fb8ead5bdc1a1136078a79398efc00302047c435bb5006630640230184d9536ab7cfe0861b0e7e8f88fb73405b72063c44fba9236f2e30e688c80dc34b9a9994f878f1a8de714a5457fcd7002305e7fc4158028777d14c611a08de8bcd8c5cf7d064f220ea7c09e913ac5852d5c83c75d8df2a4b40d75f263752c6adc2c0302047c435bb5006530630230373ff72bca0873f27f7f231fcf70b378c234f2d0e768e3e467dd26b447d587d369657eb75d250d90296172d7862e0132022f314d88e3db1a0cbdb0dd398d32ab6a9ea8ebaa60f9ddb20631e480bc0bd6c95d459216180665bc54d3718183bc08980302047c435bb500683066023100b83297b22f1313d00aaccc8eabbfd83e75e19bffdd839bd6fffd808b6d8ba288d680b6679323bc4cd8a0167ffe1ca3bf023100c12e150d7eff350701c594f9ce6839d01cd56b0bc3cb1ef8407c78aac2cdc59e4a0092eddb16504129e52a8574e83d1a0302047c435bb500663064023079295c14f45116dfb6d586438cbce938ed08b427265c25ddbada22977e50518a7ede09b5005fed5cb49e673ea453c0ac02304b337f5ef259bb84fb5362bb66da88db6a075b37a3ca06593aa3dec3cb225f35c0608822c7d9fd0483fb472ee50ed5eb0302047c435bb500663064023020972184b58eb79e8a928afad5c62129cced13d31ce65d24d1d5065ac9e84ca4e41fba420b35fa2fbd2cec22ccb46c81023072bf33a795f52d76ef18f3764862838bfef85b3b89d46ddd3db4ed813d837c5a74ac33a886f4881abc2ec72f2e0ee2620302047c435bb5006730650230563c3086e4a0e91029efcba8bd6a155bd171fa6986aba2121f18d2117209e4f6228c869aa09d1556fb6c45cc72ec58f8023100a9fec2c312c305d09d5dd161dd64567fdf8fc640d64a23c36b761090670f2dc0359bec192269e1a3134e4adf050a388d0302047c435bb500673065023100bbf6b4367b5c5fb33483f5881f182e67ba840926417011fa9759951c2ac2e388bf64834c8793098fb7635cc7ecf9bc1f02301de8bf53a60f1e1deeae26218d35c24ba128c8b146969c737566b999d3b1bd27af8cd74b2581a31ddd06659f7fd0eccc0302047c435bb50067306502303951fb44f78fdad3f7e95d84e7aef3c0db51fe8f29f7ec0bf39db31a4a556329e914c2e5f25ebddb536a0b82adfc69c1023100c252863d37e5a1597532880c67364560e29912c3019fdcbe561e11a3b6236e456a1224667671b65cb27876c59676820b0302047c435bb5006730650230014a33e393e05a750f50af7cb7722783115b56d2dbc4d8da6c4e19aad6cecc5bbf3869255deef773ae2e210f95e28111023100826bd494c837561b1afea4575f9779e63973899fcb63fa68247157ea7877e2ec622dda0c1adaf1ff073c7aef45af19800302047c435bb500673065023100e832f196962dd5fef79339aa676fffb5ae253d02ce54393edc7b6489d2aba956446424dc747eb74f8942d08e94fdbe8a023054eae331a841d39c1b9a50d6f784aa8d3b7397e626bad329dd1f74a75efcc26e45da28b802b828bd8c29c00edf63214e0302047c435bb50067306502301d5fea67080c05666037cce8055936a35ee33fde62517061de06dc19d62b5acabdf3cf2ac403ba0abad6e1f0b4df46960231008b56c72faf2c711edf37a9f5ee15770929477edfd49554d057f8a3942e922af69c68d576ae753a58cb71834b88f35cd60302047c435bb50066306402302bce90a94a29431cc6f084c5452dfa4591561c6810604d70096498f3daade743cec9e728dfcf818ef4e2e1c4a2652cfa023060f0cee3773fa93ce64cc1387d852714cf6fbf4971593eede646d667bf40c938f6201335c312e91e07b8cdfebe53b6850302047c435bb500663064023050c04f3b58493d8d8b12bae5949d7e7cf0d8a1a3d26254d72d6aeed9eaac48c8730a8d1f3a092c4b2b90795e89a1a83b02307cde568ad096487a4acbae2c803db54b08d87b35957051965ce923a3cf9affda2bef06fb21a8c7ad4bcc2dea6924ace30302047c435bb50067306502300a4fec6992d81bf85498c90df1381cad5271fa1e56ad6c7649b4375cd83e9fc6ef2671fccdf9a92ecb1a76f9b9011fc2023100d546f53e18de5c237946f9e9d5bd9d6aeac10a662be40b6a182194e087c42d399bb9ce244535d2912c4b8bdd6cd9ab160302047c435bb500673065023044ab88431e434bff68b51a539bafc57acb65414bbc648188a6e71d82b3ec26d8e21debeb3b7bb2747f147482f691ca77023100874a54222e04f7d04036d6ed1ac2f8d3a3786d83e2fa17a0e5a4ba7260fc9143a436850f88fb41649f6264fc28082db60302047c435bb500683066023100b453971f326685b2a36685635dca1d3b923899e7b2a344e54c4709d14b533882577711fdcb08ba08f1f6b8dc2036436f023100cb9ce1572aa0e516ccff25ecfdeaa8c6599e6d254b49786c246e585914d64f446e41c2c8f7af5e8facfcee68b737344e0302047c435bb500673065023100f083905d80f1fecfc180220a6122b87ce146a85a503c769b14c44bb0948c191f1c1ca1febfd78373138f5746bcd0f22802304829ec0fceaba8e64c7cc3c9d2876f5b0da461899a0b24e77ebe2a1ce7d7585a4f4a21a65b90c7355c9d58e5bbe4d6140302047c435bb500673065023100d7fd0d8fc7041a9a5144ad35aac414a2a958c0b72273a001acf50a8b83c01a0134c699332b84f7bb4b84fd5ae4da396d023049e3c5759af42b409391a12009f5ce63779dd93a18ea697ce8fa8e5ec09cee24241a926c92cca82026805e56bb5f379e0302047c435bb50066306402303d87f49b4b6c3ffb70217a7b7c440e9cbdd61c6233c548819d9d105168eb6e2f0d8bfc9983f2b92fa9807d7ee1584fb402307ed6abda502a1248ad067791f20da44ef89f174a8eb4a301f67ab381c762e3204aba07a51aa85a0b994518892cf037cd0302047c435bb500663064023070b7ca2dd99a0336881d591372d3c480ecdda35424cf955038e160e1fbb99e37b018723c3c59b2aa644d678693b4de4a02301d397fd3427bd2559c5eb613e244f3ac0586ba9b9ab40323a5da2ee8420b5114126c84ad8f9a01d7ab27e2b87a19aa610302047c435bb500683066023100d67bfff8ecbad66caabdb970e933f25fd9c27d55de04490865d3d35edd085e75edff2378807480be76bbb5baa300da01023100b805e6555766123c21bc562dbbb8ff517a96089c4a3eca56454cef98c89b22a7d30453278ef68577965ed02b5150297a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307bed8ab0aed09ca5023370a8092ec38bf3186ec49c2936102d4d31674b5105f784505db221cd18c47648a8dce6815cce023100891c0db068e1140d4e6a066d5583d696763fdaec81f994a1180d612244ac0be978a1785672a7bfe94ed628e25945c7d60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c307f4ebe1556498253f94d266259b06d52fe97f35fc430f985c2e28753567da370026e3c4c40910a746bf0c1af27e7d02306ecb2424f741523bd618eea82f50737ee1c83659baa64eafdf1771aaee6c893642adbe2921bc8b1e8009cf6d4e93ccf80302047c435bb500683066023100cd9129d6c71a3e28719f0028892f1e5a1fae6b9d9c8bc2ecd28bea3521d144169110d1de955a3e7cefc9266a1cae2b40023100dd634fc9b58a1009ab00afd7c5c28cf40a0b2ac78a8d5adb9461ed32970ae6f3ae0137bb1743b10a4ac09f67ce2ea56d0302047c435bb500683066023100b28b55de27cc0db496a3f9609310215604068805d5c87e696cca5b9ae00852425d9550facd35492982ac79a50c479916023100929ad5bdbb96800c7336e87280cd414471e1c68081ca676d6092c4d51205565d46747f881f59f4f863f050347106d5220302047c435bb500673065023100cd8fef7b436565369b576114329b8e24c6ac47335b6f813a4c0b130adb8fb94fc774c5dfb9e311245ca98bd8d070fd2b0230795b8fd822ffc09d49e1379b27a903af1fb9a102e0c2c4f7ab87a21f34444622c20026b37ffe2ac6fa31c7a6735f8f260302047c435bb500673065023100f2dcbc088d0faf717d6cd1a903e71c40e59f36a7fbfde2e930ff1317c54f13de39c21400ae438f486ba7b47223a417ef02305be4ed04dbe7867a7dd4f631e9bcbaca4d2cc2ed6a4df5a019ca22c8bbbe04713a2ec086d47e9f6e1fd8f35984d56e8a0302047c435bb500673065023100ff05f63e9cb12db9bb576028f0391b0baa0abd1b26b0706ec38ec96ddea6fada61fc658ab0dc5cf4e20d5ed4cf3706f6023073d8110d4f9c4f7656a81e746608a003916015502a15feafa9d69b34cb39c235eb3af130e9468242efe6bab63a5e4ed70302047c435bb500683066023100b960c82b30c5d54fc7864319ace2f2598ebddf9d565c75a45d1c32dbcb1690d5a10a0f8bb0378d060ef4e2c658f53161023100a8718029030f7935e65f4e0287d890bc709d58f58b537f5ea87047872a27d60239c0e3eb1be45861251c679113f0e2b30302047c435bb50067306502307dca09777dbf87006ab5fb7988e113eead5d808d1a6dec22891a62c07dc902916f669d218ad7eb051cccbf84d3f5a5930231009875b89db1ac20149395740e8229e3b81e2fa5c59c8b9666b8cdd88d234e3fae8dcf9b5ef9b672169a468e0d9db2f63d0302047c435bb500673065023100c738cc4591cc4e6f2bf0b6daf3af09467c0d1b6ebb8d5ef542abb6a4fcc05222111ef9296d14872cd125c64bc234926902300573db208007769785cf40008663cc999c7b758454a11311fcbd9873a84f4c6bfd7739d6197f94b8be0a07a84b232aa40302047c435bb500673065023100bebd0af4d86e866ed9d50d4ca2cae4f66cfbb2092910e81b272953a42efaf3004900bf000b1c1d11e7dcb77798e874520230270c385b972bab5db9c7ade115af9604368c136751d2d65d31494c36d127e497a1aeac4da63ed6e7752586f150d0e4d50302047c435bb5006630640230024fd7c62170187f224224bdd3ce9db9edf6218216fc172f83666ac408c04a0c8578117fbc6141ae3a4dcfc1d2cca528023024d2905f525fb350d9dbc6dcc8848efc5d76f3ae6585a3a89e5585567cfbf69a32fdadfb4c454a7e912588ed8cfafd4e0302047c435bb5006630640230759acb7a3b95dbdf140a5ab7b81082dd54d6a32b2e8f2cc189aa6bffec16b171a7506ceb697a55fef24e93853d7170e10230218db6fc420d05a5edc25b9287dc0d59231ea928cb8addbfcd02c555555269bb04f7a6430e185a93941c3fb7d8f661870302047c435bb500663064023100eae88374c60cd4d24eddbe04701a4879b17a43e51e78d2d843414f008af56bbeca170fe6d0c958185ce4aea65f5bbdc2022f1be1ec10a78c89b99a4bcda7bc677abbfd4a0d82f527cd6877abe9a781e4f3919bdefc70a854578ef56d177cd1c5130302047c435bb500663064023060fa7c612bb4cdee7fe32b99e499db3b4ccf57382daee21430830c2cf33cfe5957efcb8abf9fef5eed9dc19d34aae4b102301530d28a536970de98a25ebc9398fc7014f94bb18a3c607db7b6b4037ac849c16e611375eed51b2f5aeb8b14134756680302047c435bb50067306502301421e8a32c55b1730329522e26c480b4e211c9b6eb97692e225d2009939b8d861691cc35d3d95b78f44a775b03d5586002310096916b40c2a4457cc80d35df1bacc4725fe2c9478a4214894178dfbae4dc1daab3087a80355b81995be408b912ec25010302047c435bb500673065023100d03281f5c9081c6b836a41cd4e4a2a7453aaf59b0fbda644bf7618c81dfa89598824720349f415d0d6664dfaa1341b2102303d1e2f03b9e1ffeb5fa3d2b481e98bfbbc01bd738dd2bd3dd91d7ba2cbcb02fa63c2d14800272608db0531219d8a5a9f0302047c435bb500673065023072105a4e5af4a5636995f1bde5cfcb166c31294a0fe14c131e93bc443e6eb6e6f3b9038379577601ecfaa73d22990a29023100ecd580cd170b89c78395b8397d4896e170726452f5fecdcc55e7490c0ba67fc94b29b954b9c49ce05e5d05ef302081360302047c435bb500673065023022e6c86b021ed239cb1a43646ef6f523c20faf95d8101234eaac7a82c393170ba77de484ea17a59a9af23268e05f7e03023100827e8382dc6573e346e506f1edf8ae535687c994054c960afb198da4685d9d59491f47834d9cfcf7a5885b34f4f7e71f0302047c435bb500683066023100ca596cc11447a2d12eb542a97bc62c324f2820eaf4a764213cd3d887b290c3f350733d6a46bebced7e22af46a3f190f1023100f7002ed30f54053ac2f1421948d3a2b9d7e585ec2d6b026febfd8540dafcb89ebb56c9842fc176b22c3818e629e8fced0302047c435bb50066306402306d5d12d86a4cabca6a0d6a51b7ba1036a8603e3604d5f2e214db4386a6c25b24fa0a223ca71f7e7111f981feea5029cf02307a26e794dd35315ae27115f27e5c0f5dc6e1c26d2199f35743aa09b48a8a2e2c3ea5ba429f21e64204a5a37273059a0b0302047c435bb5006630640230191a1f92bd167a35f4db08993c9adfe7eb756ed842eacb1b3d0f67cdc4df6f30f231c94b47a6c01eb5bc429b513d559102307870688b2def8cd5df13b8c9857ce301a6952275087c4e338ea8f1fda66a1ab7e84ee3fd5f934b53c41d645d13353f070302047c435bb500673065023045e9543a7cfc0e41be393c77ce47ca91ce05f07edd8f4d1cb26fd8f7d9e05e3532e53474580fd2532eacaa78f1f125e4023100d2497e7f2a67301f23e7f03f8f10d8edd5220ce81576b25519ac1763dde252881948c1d7081acdc55167517dc374a4dc0302047c435bb5006630640230012307b56f9b5366c80ed4d55f127153e075a196cb8440880c9d0da9e0e8b9d5a01bbe88b4145727f07cfb47289d3fbc023031ee3d3383bd3def74c3236e272008fedd0f610de10dfe832840c615676c545f8f6e6f2bad6da5d81748b4535898be6e0302047c435bb500673065023100de8ac4424c0809bb2aa26c24d104a03cfb47cf0eef24a436e0f84ae6192d1e8ae89b2eafebcde2c6e5927d5e0af75e4b023013d7c5afced91d4828931445cb18567517c620c06d4f305615c8ecaa525c9ea9c0bb1e6e20954d84d9b3cdb76c910d040302047c435bb500683066023100c6820d69388a02e3142597d60d87ae2f1a945cfff6dcba82084a11d62845f8a6cc45513862c87f2db200f7fad3ccae5c023100df6971a1bd0fa6deeaffb2bb342fa22fc1f2e8aebedd88cebbef66e38d61dfdab4ea5244fa4423fc19eb5771d62d155f0302047c435bb500683066023100885cf033523ae6b05b7080859e0bac0826e4c0ea1eb2140167cd9951b039c07946f2727b470840425e0e8c989ae8d74402310094dff9fc2379354f3d24e49b4d25bf512a880b9234c753b3cd5e2beb9b4ee6763941722ba2203db820082ebceb19c3a60302047c435bb500673065023100dc55d1aecd20c7e6e98d96efb169f0f8645d024c998dad49c12d7e6b65b41d68ee79ebd79c79ef9115897294c270d563023066012deb6c0da24891b93182140e82f3d10b04cffef855b7f876b1f0a7fac73e6abe82d2855180d040edacd563e43a1f0302047c435bb50067306502310081fbc54c33d6046214306277839f60f23457b9899b07e1aea6c44d2d8a7d054f8251918862c9fc05d4d6d57ed118128c02300bb7b5b33e765139b457b26ff159b1c4b66fd55c9bb60c3f46b232a506f6c18f3212487e3f773aae90f8922f89552bbd0302047c435bb500683066023100e11ad0e834550e1203d5ae3d74ae8e866ac9384dacda01638e9b561a2775db16bba7f3f741bc881ab45c747d4b024174023100e727b9ca2dcf62515ca55fdab43981f3a105fa51dccf15c539e0b9a05e42bba3a2dacf7b04d436a7c8d733531510a36b0302047c435bb500673065023040800662a0eff062fe359e4e386e1813ae7707cc236a906278947928856e23fbc9cee27b127255050bb99cc1b0758f97023100ec9f567e5a3de6942908e28e619e5efc671b032bd8ad2248645f469cb2450dfc6c1f3a95126b1244991b3889d676c76d0302047c435bb500683066023100e784139e635e0e31e71aec9b69ef3a1c8541afbf5299573b772ff8222d6e23325536e1358203db97c6481ec72580cb970231008a6cb9fac6033631876a57bd0502c292fdacfb4b2f89ee46ebdb9518d048c445ca31e83dc08d6cd63b9b0f7c7e7ef98c0302047c435bb500673065023100a4fe2e14c2bd90a6b0451d9123bac79fcfc956c46b290491b2be22c785faeea224731b87109b5848bfa2a1c79dd6f9ff02305b4b6c62d61026196680ab57ca4eef3ad3fac67d193f6662ee84aef739fe48d42da14343de4d14f2bc16979ece503e880302047c435bb500673065023039abf077385a550075d8c8310f68c3ec1a4aa404218a2ff9f85fe0f743daa0a39ded3d45fda47bab829bc86aa1c533800231009f0ba75e76930555dfbe9e5ac746599803e8f6d307565e25a3ab11598da31cd2def0bbea2f96e91bc032dc7da728e6b80302047c435bb500683066023100de6f4c5cdd8441240b76cb45ca57aaff295aa631e8acee861238f6a48688869ccf6fd942485d92adab19250415e0bb08023100c9a4b1a976c43994fa460af137b49458450bff3f659ce6baf14975fd29d865fa1720062b70bcb15d3909ae602d27cf230302047c435bb500673065023100a5f9498c429c5d40937dca85528dd7f0c3b343d611e1b84a9129bbd38839d35800d96d67033dd340af88d241764b845202304cd55c904d954ea4ff565f66322c73adb6b11ade443c6067deb8f257abbb706e4fe8e83f567621ab10312ef21fbc5c280302047c435bb500683066023100bb4a38cdb5581a8938eb0102ea65f81f5138bb6e6a884bd602047b5f7080a65c849b2dee13ccebd44289b97874e6f257023100a6d32e2e2a770cdafcf6a00864fcb34389358807651b60983931a546cb1a4ad6a57eed86e6de90cd93ca3bd4f6698be30302047c435bb500683066023100fda97908f32071aec0eb0367038324b6919b7ae1640762994e86f3b2c412c29e993adb638ba9dd45dff9fa3e27ac47790231008391c7b8cf1a73bfceff6fa0ed755857039e476182d0080e873a87071ac4ca91bbcbbc5559e0a8d35a18dd2a40c438050302047c435bb500683066023100a0815f7afa1f8a14ad8fa55173631ea2cc9f499232373a6b317763000372df98aa6473655dd316f4ce651eeac2f73fef02310085a7a5e5f76a18c08b888765a14b699cdef36b171d0da203e2dc9c37a42e2a88da8ee53e80d04092e084bf932022e8ee0302047c435bb500683066023100c4b7bf7649a61b8a6c64100e4278ec6a2309f65c5d8ef67db2d1a3a12bae344f5ffc3f9a0022237d8ff88ced97cbb52b023100f1786c99493f7e17c945bebe2c919c72c10183966beb88a95160d46726528844a5d558ba0d9a4c4125a4b983a94391b90302047c435bb500673065023061a2beed70894d1f076496d6bd2137644bd1ce79e1b5280f13259a47fe43d9e41fc380fffa3dc78cf1226bec28e7fd28023100e66e2b2290dcb6db5b0d7f0d76e64259939debb04ba6e6f1e2b98915f8659fd372b91decdb93d90b2f61b7b8a6e670e80302047c435bb500673065023076396183db50984f8918ec2d3c373618173b9a18184eecc3bacfce7af3d078d84f093c6b8686b0d8791da93d5db18707023100ae7baf794d9c7c0f5c2830337a395a6b3ad06e1c5d0974fbbe448fd834ca1850364a9d81b4cca2c807af59dbded6e0360302047c435bb50066306402305a03f7eb82b07082ffe3ba18a583055af3fd218979d2799424d66a447641f053bec781cdc26e03f87a50a3f08372c69402305b34f1c2943a18a8f7ecbcc8cbd9569f0f05786a80b0e7f173ec3b8a55c1e3aed001637af1ca94d6b3dd0e1fc24a67bd0302047c435bb5006730650231009b039a94c5eec66e9d76af3a84b18a08faccd2ceaf4165d62aecfea8c3b74d79ed337fc6b6a655eb2607cc5f56c1de2302303bc973253c434a6270c9b7093d5c0e32b5ea616dec10952c4960433809b077601e035d1f94afe812c4731e0f64281ed80302047c435bb50067306502301c999a0bf5df96d7d20591689ee0207738cff22ddd1b08673c3229f0b6784ce98ec293964d8e469fcf36212ad0201273023100b254dbba7b8d3c7df85968cde2b104b474180b1eb659eef88cce1fe8745e9631e8eae3688799b53052e816bd5ebfb7740302047c435bb5006730650230749ad7b0f98ea72692424e5a63edcbb5908bd83353df46fa2d00143eac05c8bdd9fddc7334690ba35ef3312e3925c08a023100cbc219ff7bcffde959c001f849220597cba73a3bfb30bbc8f3263d89b95c30d2f0432c45cda1998093863f0c99dede1d0302047c435bb500663064023072278bdd0de5a5464b9c4a246e6d21c13c03fbef72c7845e071f2c12895d61deded5ca965edabffc28635d487bf7c3620230337608fa0266f80b04bc74aef7bf73c6cdd641f39495aa88b9124a42c4bda5a80cd13d827f35b289a47ca6c1d046ea8b0302047c435bb50066306402300732e742b6ab3dc3de96ea93f4483dc490e6089b0e5c2bec43b83eed8d76c007c609d5fd6bb45fac3814944d8b6b780302307594d46b3b39cc1bd486fd99de3b8be5537b939c17d924f7a617a26e2031f1b2dc1368451582f3ed848bf7713fde55900302047c435bb500683066023100e56f17d1be928d0b9ef7e38c189f79c00ddd21fe3c453693f34e24d15b7ca80d1969c89a7ec1252dda1546952e2a34d3023100bbca1c7cf37fbe1cd6ea669b37e78938f8a6b6adf58ab806169d66368803a6b0a0d852a877b240d02106ce56f0d7da930302047c435bb500673065023100a3fb569e156003cd74027345a041100205563847c1194a450cf9fde0d1c21df1d4476a54a8310a1e4bf15195041e2bed0230358609a0d7f5d91efd0c9092f061d4d30ab060e387f41f9e9f9853e427ec1b216241edb38c0644c125494ceed5e186bf0302047c435bb500683066023100da920a62907542e528d797e76ca58d7e5b68cb40a797bbae13059991f0cb2401bab0c930689bb7f7c330da3b58485562023100c77c0fe71b4baf659e11a4d6797b3665df00c47fab3c9c325a1f78bef74cbb67bc3cbbae6601e559786536c836ec3d0b0302047c435bb500663064023074d296f0c3208c77f6822240af5656384d05cc35384085ab2b2e3a9308e63c0182678fd8bb0596659b2697ed97f3605a023058f42a236f925d7253598deff40dd34ae93fc76c36225698b4065a6969029b84742d5fc83f70825be96a894e7bb7e0600302047c435bb500683066023100c1e5dd44b0c916842e80265163387e497d66173fd8b35613eaf31e4335f6f165fa2a86863a1efcc89333b5e5140e62f5023100c29daf13bf984497bb142995950853219301139d3a73060eabea0e9debecf0e512d5ec8d1d0cb296da6a04c74e40eea80302047c435bb500673065023100eb9e15faaf06f98959a5d1938dd3f886ce07ba8acc207cdcaccf44eec9f26356b48fe042ca428ee3bf2248b75fd28ae60230010b4d231eb82aefe8759e8d8ee6a3b80b270ea059daed3cc03328e2de487641e337f268cf5edf502cafb5152cd30cf00302047c435bb500683066023100c086447cd68973a98ea80ed5555daa82fd281cf4fe40c0a8151b4e955bb5f47075df6d60debcd8f6c56c229841ef3b70023100f4eecaa237f95806856fa8cba70b726b449ef55955923dc662da35947fd7d65153709e27d6dc8ec10d63f3ad314e88770302047c435bb500683066023100c3466b95dcaf0015414de51a4715dfda19d1b52aea59c00d0a011522a8bb1bf8df67ab6d8aaa86fceae3473a1073d7b5023100897ea184db970370468e3ce5ce443959dc4af72eba4c247b2270f8e8b4fb670b6e1f1fb29be3690af1bfb62a359ad8650302047c435bb500673065023100a6f3db6d8fef07a1cb712599ef59774baed1d025b2c1a65c2c784cbcd05d11a4ea6933c7266c8f3963201938fa84eb1a02300a8b6292678a7fcdcb5d3fec0bec15a66e13693dbb7435d86598bca336aa94c309d88e5598bc5064d855c7d7fd9834af0302047c435bb50067306502310080835c66375906f6dae7ee22965610943ec3dd8b01d1767af0d2893fb3884b887505362c87d1b59f84edaf2c296ca900023070d6df256ff2ff13fb2f88610dc2f0596cf6fb898cff7c3ab928b10dbb029d3fc9b8ef953350949e46de342f6e474cc60302047c435bb50067306502300dd9ed7fc86447f6c7544be57e749216236d58765fa13bac9772a44a4afad254d266b348af61d1fb5f6190129db6c29402310099943da8118fb3d3817428c5d22d8e584c8cc7c939c78c65913d59c88f545743ee10175f98c664dd72544f9f4ac93f610302047c435bb50067306502306e67c1889dd449a6f8344f9542809f8f8de45c3e3bf0fa674923dad140f8527d5a9f9faee7bb30d043c43ab5b8f4de48023100f80200b20a60b265fbe4d2e75df099914b77692afd74780e81106a115f1a6211ddd4723f51055c81969f4a9b1f77cead0302047c435bb500683066023100dd263a11e54a6da814689e33f076b67f4f882206fd4b8ca53b739c895f50b987498f8ddecf16accfaf17a8b506782c4e023100e1bb34a8c747e3199cffe0054e24c6ff3729b40da35b344041105d4f23f057ea5db75b2d006893e380799de4618788da0302047c435bb500673065023100fe8094c3f7988df4f45bb040c62807b11c8e85d33fa7e485373180717befaa00cae7e99d721a6b84c6d559f1d738d3e602300fcecc1ffe7bb05050ddbedce83fbcf9893df07c16a3d29a5437bfbb6553641b6d0e87c4c122946cd5598b6824492fcb0302047c435bb50067306502305ec86446c3b3d197a800fa7c55ce0d114a385fae23a2c924c58314f422d380a719f0b1b675a6a19d8030f14c5dcb7897023100ee98c9eeefe4e6066f7f212cf01f20965644b8c1efb9ddd480b2db19be711d395903f5338bf9a54582474d3ab43d4e3f0302047c435bb5006730650230597bce282b1c5c63056bb7cbb7bef161f2ec781ca025be8e49cf5dba92a61c8f988b8b4fea49f0b37fcfb1377f5552fc023100d26a6525a79e72754806438358f4e0d82115c5fb45bb1ad6bf4d99540363683c8db658bfc01ff6d5691be26e284f7bcd0302047c435bb50066306402303013dc565f422b70578331faf2f2b1dfdbe9e80762d8fa74bf9757497e4dab1ad9cc7dede0eef2a225cedb23b1c6742702305072db8b0c1f9f040d36b18864136f581b7b7a6d690d68852dd5f075ee27470ce8ae7dc593a41d6ed9c37cc82060014f0302047c435bb500673065023100bd6836ba6c113f1b7a2065fcb937cba126e725f3fabdce5259920fc9fdbd981ad3da5e7c3410408703be8e72f283e5e102302f88d3fb9b602ed3d15f5419eb3c1194a30e7c366857f1bd6ac6bea710fd5fa821ad6387f1a0ceaf5ce5a749f8e947ac0302047c435bb50067306502303edfd367d996f555dee3057d814993e530cc695fffdb7d167d1bfb302293704db7009b787f47ad6fa6f79f6081c4d95c023100850857dcced441b2569825756faa04c5511c08230a1fca252b3f20e5e10298c66e5569879beaf0a17a4b559dc1c76e690302047c435bb5006730650230286048a3ca99cd253a9d9985622e063e8d00e8b127102045e28a58c48bb19c9300c41fecd48c8e8a13de1b71bcb637e8023100a0b5794cd8e42e58ba88746b2e8913eec6a8c8b2c30641c0f4a9cba00af9efe212f352c19eabb3b151f29c0a50621fa60302047c435bb500673065023052bb15be25ecc0d789472b5282ef662d44ee968b0de021950c9bbb977dea0426e1ddabe81e205327259ba90fdb209ca8023100e1633b783016577887fef1af02b4d715c95397776f4cc83f4ac7db5406b2069addbfdaca64d975469002bf3c34a078990302047c435bb50066306402304b4d05c69077a52a8b385d9a204365cd15625041bfb83641b7161172d0993b3861fd04dc0d11937450459468e0f3dfdc02301461f8ea4492f671df265655169e806533aa58c3f383af09c14defa29ce766581a44f081cd89c74a836c932dda9633150302047c435bb500683066023100bf0f437f17f08d87cec0eed9fc2da7e422f474dd9edbe361b3bfcfb6c8a3b88463b727f41169d42df666414ca58f04a20231008d2eb472772ba6360bb2e65ec2e3e0bc7cf12ac8f66fa5d7c99a4d2f5833502765b80426873f187d66b2a2873e1946ea0302047c435bb500673065023100b6ed7da766af16e523c723f647c3b65ab13a405ca718f72f138b9a2cb1c543c1a9cc84210d6ed9a6f49f60ff95096e060230073016758981f14ed8880dc3e71633edfb2de859e587ec9cc1b15729eed64e26be3a6eb2c4c2d5e660896d0758a6342f0302047c435bb500673065023072f613d95a7b9118414311a1bdc1bd79bf45d3fb4da21208065f54e46fe728b004a67882e845aaaf079c030c752ff06f023100a151795df7c29b061068a7be5103c66ec27e0997fb4d18bf750916a04ea26b3499b4e47864dbab998935b962f7d9f22f0302047c435bb5006730650230724c198e852f47fb8022e65158fda1369abe94707123f59ee8ec955b92458dd6a0407955daf99a33e22b95f44bbc4e3d023100b650c677a6faf99c265975f8a4e138b9db2067b982ba3c31b9980a5044a4ffd0e46ab93ca3e12848e5389b076b8240180302047c435bb500663064023026cdc7db78f1685a60aa926746fc5870b80611e0cdbbf12d5f224f7bdb5303130775fbef49f14d3f112de98e403ef26302305d0810f1bd187aeaf1a97bdfe29aa5e0d34fd5dfce516b0ac8219691e2d304e74d5caaaa399b26be5c8a36267fcecc6b0302047c435bb50066306402303e54e808289f37dc434a985e6338f18889a34002dd2530b9ebc562eed59e62ca449b3732c491148f39022d3199c504e5023046d6ba8cefa5ba5a45b2524b2e90b46d6b3893c4225f1e367bc707d0a1d170085ff5791d77dd296351cf7519569751740302047c435bb50066306402303c37cdacfd0cb014b68b976ec251917e9f32853394229d2c45ba8079c456bf901ef64b0020f14c57bc018d8c27aa5e4502302e35a9d7a473ab24044339aa7f71e06ddf383c1884e5fac01799185950a5e2de613137dc78e5bc93f36faadb3e0f8f2d0302047c435bb5006730650230181a63238eb4a60173b96a4a935691d7165b0dec1ffc0e63cb004f6b9a25238e1f8c73b631ea113391a1b24869cb3162023100fe272a67a0efd297602bea09288ed84ec9f971b4296538f58b44a3309ccc9e32309ff016bf043cadce28f5bc66d667e10302047c435bb50066306402301abc38a4fa9975cd01eaf6012d171b18a937a52b8065d02df6d8a5419150a44ade9c4f74a9d2650b4f427e07f4fdc60302307ea3b90fcc57b2d169ef875cbe7cc45daeaffb612e74875d422562f79a56b9a3b79634447ad4aa89e301e1c62caec6d40302047c435bb5006830660231008e16e206f8eab14d0b466e4d286f1e2e6ff983f75fb8a1d70107d233597e358e7633bfee8d4ae6503b4325ca77965f690231008b62ce4706b577349eaf7bb4d9986b7b5edde13d82ef41008bf51dadf1cdc6b09b4aafdacb17cd79b2b4f7d5d973a0650302047c435bb500683066023100af93901efb3068a99dce38eac3d59293dacfcb91a48bf3d821d1164268fdc6f53ff3e42dd563cb359404529c6b59aa05023100ead27cf182cabe5227e7ceab5be2beb90e5a96e5c1cbea2ca03a2e3b8f547a182213245f83ca8117cf033eb4dd5e236e0302047c435bb500683066023100e012f345e58cab98767ff8e835075e88255b9ab3cefd9e8f9f13fb97026ddf6f9d1ab781fa6bb7f69e83b657724825e8023100b1a4d05198fc834f6a8085c51ec4f16d312abe312a54d73f40bc1fe7d059275eff8d82f77dda7841932ddb1b8e371e490302047c435bb5006730650230242e4f944ead3ff44d6053a7b177d3b25d78c7404f3791090dc55f21bffb377b8cc1bff1c41872096035ff13de27ba480231008ecbac016c47ebea23ac8080c349e19d2a78649066c5d3fe1df421b94e756348e46d456b0f2f50e6b0f04a3d8e50cb230302047c435bb500673065023100811593d10539fe0af37ae2556a6e8342cd989a32c83fa67f28a9cd0ee1190c94327e14810855d67543d8df07f281b69c0230647a0a55fe9de3383069bd8adf0a6e5fd0b4608678e8762132c6006e4a778e653d86b8c2e63ec25b59c1fcec7a8302840302047c435bb5006630640230691bdf26cd375f006e6d06b5352db0b55b988156dc464a6ebc9e8ffc82a0c49103e730e794b1237db6f5aa937e92339b023023d4a578bc80c672be6f08b8504a9f0b9771678c0ee2738b4bfbe78615529abf4b9912280952269ab2517b1a159629be0302047c435bb5006730650230359669363efd3e2e3d520ff32c56382414a0afb56f9aecfb0b118882f26e67308ae97d6335a181d1f4af32cce9db43ad023100c28cc69cba0e38d59e0c896eae09c369c6679ca5ff248f581380e4b38ce63d3fdac13cc40f132f895e85b3dbff6982d90302047c435bb50066306402305df6b94d515935850bfec3c2f50dbf381e7bb485b3fda6336335081c190862adbecd75b806c9a5c868955d452d9bd36a023014364f7e8d1d9c59b366e6208bff47d524221eed41e74b114d8dc07647ac36d6e42ddfdd1bdd406ee728d484775843340302047c435bb500683066023100e8cf113707fd962389e25fa7877690d8a4999ebf61d0e235eecf302753da2c81f85e219cfe0c4a85ffa66794ed968147023100ec390765c9dda6e7fa14359488358ce9ccde7ea1bbfa4ab1a07ebbe43eb0565d142cda8baba453a37e0bc66bf08d7fb50302047c435bb500673065023100bfe5b4aa205e0afe08d52f55cb9a33bacb8b0fea6c3e3a83fe16a77246d0c57cdc26a473c4c4761f0b7ee6d54a338cfa023002976d89b0760fb345c34b0e3a4c6744ab2bf1c14e6d9ce6f10def0bc3b8542a82df2a6c04154bbd2c8358b817ac36370302047c435bb50067306502301c965c3c5cdd15a1e6ab5d64de72d7aa765c3d41e1b343644ec9721a8e6b7df1d83d95c46959bc5eea5b46a241c3d71c02310080b3f5967fe8f476349654fc5e3f53172cc3142b2c2c0e5bd61589e70480b212875fde6a69f7f78aa0df56c1233516c60302047c435bb5006730650231009a7c001235be2123333468f8a8c17f46b26aa48c38dddf6dd271526496c75a04a178bbb7cffec3e3bf4c53c1025e0b5302302c0fab0a031e8c393bd6957fcefeb16d4eb6812fd132f52148689d487fc0f27967b5f78fc49def07866388f814b239200302047c435bb500663064023051a28aaf1963c8c40aaadd4feff6d06f3e5e53015d16047afc12898067a0ecef3aae099c5f830922974461b28bb2af320230280508fca467587b4e1ed9b8d6a48937ca8c3804eabb9f64b72d4ccb247e03c15f14838a97bf7630f2977acd42daf6e00302047c435bb50067306502307feb6d91c80b7408deb2ac13d8b67b4391ea71a5ad610b541385c245bc76a4a8f9dddfdd27b9f268dde48c5ad2a34490023100b50d4acf0d47844ae6121aad4e8d462029cf6a93ada4c2dd839d58e09c6e7aefde650beaae513505495884f9e99d4ed30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c01e08ae2ba93468fb58c7b1ccc5316a836780ec71d2a3d76ae3cfa411025de0ec01b60a0242cc304a4e062160eb6d910230787bb3eeb60052a6882423fa377674d666303735e9d1cbfcc5601ac0cd6051ca3c4186c5a9389ab47622cf634f13f9020302047c435bb5006830660231008579c16c28ea35cfcc2c8830a0cc66548ef30b9cf84e2f604ea02c505cb16d7cbda95bee8005514a921ceac18195258c023100a39a5384bfe7ed920f83b9abf02943cd3aeb53caf2cbf0591ad89354be5ac2c18051598627a5a4105fba4e7fecaf79640302047c435bb500683066023100bd1b303dfcda3b078e25a49e01447f53688897e0a7c9f94757cbe8e79af7414cba4b58efb59076bcfb6b2aaa6ff2fd0b023100ca2644a683fe5131344d9ff95dc96df33f1c0ca42d783792a942d19ad0f40444a25759ab9e207b9769a6f84bfdff35b00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fe389e52516fa358a5023813d088c0a0180c24d6f812dd82e1c92cd3fbb5d93d11cd49ae35b687fc599d74b6dbe8b52a02307933bb7570e32290edc3d68e3dc255a5807391bb34037dde7c253aea6b31bf5504247d5fd91bed123f6acfbbeeb625940302047c435bb500663064023038973cc935ed64c59252f9de6dd05ff1cee8b43621a9dd4d6e80aefc7a053c2013fda1a6f06c95f332975f3056e1c9610230708567f09b7674228c60ac873c5039e4f0e05313861456364918201e799aaa7596fef6960cc4dd2af9be077882ba65ac0302047c435bb50067306502301e170e06018fcc53d6681174c325e4594070a86c3b9157b1f8f1a3fd25171af5583aeb8e5e1b42e6a2fc799f7e19afdb023100a3ace9160ac4ea531f6571e2f652eab8a142fa592b743ec63fd0abe9724677077bafa229f381159229f5b121a7fe7f370302047c435bb500673065023100b45a5a49ba5e80058a5a02103632df9871e27a576be7613f30536b9f2ccc1410e863716813c5d870b535d9ab20c6e13102303c277ceed62d248a00a50153f5bd63f77d85183ea9abe6ce55353bcccabdfcdfcc4c11ac6b719f13e0d55642139ea0810302047c435bb5006630640230287ef6dbbd3da7ce04f00e4f5100bd80071ce1026ee6696a19f9a7fa2871bf543bf9a5956a47eff13ee48082c6be8362023028bfb2980f44653cd46ca49b3522c2caae6aec5128fa949d95c41b024e960a66abeb4c121481d9cce8c0a97e89f4ac040302047c435bb5006830660231008c96d7b916b138366120ecd9ae903eed0af8c5f012d04f9eb2a278873544d4551750bde63a2b46bd397d8e468842b21e0231008ec01eaa266cd3eb9244b274228b1addd426c0b72b4b5144c499cbaf82b2ffc8e4388ecb458f5532efd9a9f97252b53d0302047c435bb500673065023100e80d5e75af6b31410c5a5de61a89d488e2043313c11a73badb8ca3400a2d3a0782a66787047986b4c9cc8276dd5deefa0230295f05f3d092064418f9b4850d0db1247314be839aeb8e46e39a0abe2e7feb6d955dbcb3d81710ebc20d7a32a172fd860302047c435bb500683066023100ef8942df9ccea3be2cce2d533d78139978cb50161d474066c4f654da222173d85af224f9980a8a06291475e5b6d19c9a023100f1a6fd18677595e3149120fcdebfbd416a9d12e46e3e3111c50016bb682ebd2bcb2b8b643e759f364a970bb3a02693580302047c435bb50066306402305f95778ec1985e49f54fa6ef4ec0f65b6c30e9320d33d89dcad5432f027758088e269f35ca53bb5e9f2476a06b79c92d023059afe923e1ecb9bf12b8cdfe139e4ebab16e38b14463067c62e1542559772081251eba3a779edfb726f52963f975c3fc0302047c435bb5006530630230568a7346b06715bfd33585fb113c56523934f7fb813f577acff5d3e807ab31d055fb4e81cea7322f62e391eb83f53bc5022f31b65404f15074fd2126943001647646a29ccf167b46a76ae3f8611f7991ed69240f46430d84ead452b03570ab4a760302047c435bb50066306402307b1afdf06a04ba1144b05683b058a68cacec6a49e627c9780ac148f2ff57b36a14fbf0d641e19134f10747867c7edd0a02306abfd195b152c9f9ff00586ae90298270fa5371c3a4163b55704d2e43878fc88686a33731366ed61b73765315ba9b8e60302047c435bb500683066023100829259056e31b2703bc0380d9062273858c7eb9f206b1e84e5ca3bc8c3520d7f2924f1af650c13484cc6827ff1fb3cdf023100ca6c59cae23ee290226af7dde4dedd3bf59086fff05ea284779d079e0c3e6195123abd61d658b3b6e0bfcc5884e7a05b0302047c435bb50066306402301436ad90b9e4e9617f27022b1ef05aee4352b4d588b93c5db83bd3e8e5869868c1c6aa964e6995f519ac2d02d69dc89b02305fcbae4216a7bd78c63daac038d2fdf2807f4475a3f2b0e3f1e600b64168b7278b60552ab93fa8046e753d63be1cc9f50302047c435bb50066306402306c4ff77e24d7f36c3c636ed022b129d7a234ee6fbe4396e028be6c76bcf46fdc298db6bb24e322a68bde0a4f8474499c02302809387aabd6dfd02848b09785ff6d7a2d681eb7ddc29f84ae195ca73d0d41bb0b6d460072c75d5758d5b77e509a8fe50302047c435bb5006730650231008c7ae9e203bde39949dddde06c97ceb509959e3d15674a3b87b7a023aa9e6ca620bcfd29d38c2da44ddb76641bb23fa602300a26efb1590cc83028b2033c7846aa2ca662d9246012f57ea4b08cad23d95b1230c0ab21aa2216f88dc168a9a9f409090302047c435bb500683066023100b97591a2b8a0afbae378c2bde4213b4d3c6d36cf718314f0b6ce9dd635692ae79fcb895b2176bffa63d38aaede40309a023100f980753b06fe35865b1712c0fbef053c01d965668f2fc2e0a60ffd0c9a69bf563e77a889afb529861413ab5165e86f060302047c435bb500683066023100c5accb73a42504462c49b55c3d43a76c926d9dc7b5ef5de97cd136700729ce139fca82101ce762b33c3b77cb02022cde023100998399e4d3f5d4614f83d2f2ebc41f7d132edb5a751f97d1c15a0fb6f700cc7529a09875840fc70de3ebc3db654e3d9b0302047c435bb500673065023100d02af2616b3a76dc39f1c76752184a008610c96b17c0a251c11a41bbaac41b46691fbed5d8a60cfe1b83b852302d6d840230412a6bf24f9d6a5defbf8cbe73d12b39a2379a34f9a2096948b0e74df17b2caae53927c5d6a2d530b89862be988370900302047c435bb500683066023100f698949250ec66d929ba6973370d168b7280edd53eb4ad42269ef6199cd5d12b3c04351e166426597ec7bcc66f0a82a3023100fa543fdc47d4bb5f2e05b3c52d14485d55674d4cd56dabc2a762e74d8082c40298213f040e3050eb43e784f294a5decd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d645200380d6c567cf181d4819ac6fa5c42eb1d81742fcca2a30459ab61417c0d5c9e8ddea44e362f5c18334edb62f600231009d96d9ce7ffeacc49915062c45344f071e5698668a8709d64fc07898cc1aaddf3421ed33b1043258ca62d279834ef30f0302047c435bb50066306402306a19f16c4d031d46468c4163695d203e2eb454d88b7cc9acf2caa0ed6674ddbc61fd2f2dff73cd1686287bb80107cea202306a7cbee0813c0b9e8ccccbba76b25362992e6d12f82da05c677228929a3bbf21963cd802dbade248511d6c9815807ba30302047c435bb5006830660231009c82b9a1c8b99a49c656908f7504c524d37c8ef5f0c7929c95b984519a946569b4818d72883b5db3b983f9edf53511fe0231008a114228f20a7912002a2a51786c83b0a425a4a7476ce3506f8bb26c5b82156ef9a01f4f6d4d6098455abf18671ec51a0302047c435bb500673065023078c9a12cb153c8ad2ef0fef296403357dbd8a5f728e2cac62eb636a3bf9a237b48009f9e0446ec93bade37e1c596668b02310087b041d12d732b870e32e71a44ab41c11467e3989bc3635220f5ed42d5de06efa03d3bf51b543012c74dac5a2a1a29d80302047c435bb500683066023100da7c77fb72ce3f7da4d291e1ae1effaedd567bbfbcdbd93db37d604dfbe23049d1b951d272f17311444aa1b9f105138c023100ea41fdec7872be3d5874f416a342b68667d439cd880b64d78b8472c58aa448c01f7942dfe10787553e44848fd63158e20302047c435bb500673065023059c3efd138efdd55494f525e9af82fa0a5bd6e9c884c4a8185f8e14aa988db212faf97ba6b2883f4dd69373c9fbb54f1023100b87acc2d9153ebf590f5ba20b16cedf603c657584f72d5ec6ac28134976c76ed311e7e53397fdb4a9f6cddebf07acb180302047c435bb50066306402302a69dfea4222e8ea1426b95b34c556909e8375b716b752f38aed316eb3baf7d52022223c9dfc52a5d900b4df247d5c43023047240b852547933dbb63fe4ab0a0acdb634afba1b7a0842498f7fd9b65dca9bbc0dfce1377a4e732eb3e7e65ac0e43660302047c435bb500673065023100eabafee500c8f9e35439b996f9541fbd0ffb3f9c7b90f8ccc2aee1ca5f6c43e18a3a9821f3b4cf8f7164c590224bcb0f02300e8ee699bfed4dbfd60b4891ec2c49f3f58f666d2e2ebbc0f9cc20de2823cd44d740434d1ba6c4db4a59bc299a57d9b00302047c435bb500683066023100beeeb72a21c90e7d77d8b68c2f16a6340f4cf7d6777e0f421b24849f220499c10ea8e33b32668e2e337f1be4d496b164023100c4b2d06e53e54f70d04a44b4f1b108c992ae0a3b5962c876b1cd543536b90d86011f030cdd3847467428ea21bc2dd35d0302047c435bb500663064023053b2f495ef5140e7faa20c6629723b07116affcd2a035271f4453919bae40f4f60da61d8daecce5094989a61c5c9ad9402301e085105f0a84f2e93bef3764c4c857e517b8a6db3d1d84c53dadf21192233d349430badc404b4141eee1653072d96980302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b1ad14d0e119df941f165559f7e085f22beaccfa09a450b7bf40295766623f5b2440201e236c8e6e6e1284813ba37b9902307a45892c9345546c12163a021da0f2e9198ff02cb91f2b549af54b36a897113457f3dde934d48735eca2645ae89799a80302047c435bb5006830660231008ca7d8fc355e0938e457b852e15461435962276cfa5a9ebf25c0a35e7ed423c57fad7e15d3a8a5cfddbf4516a4974e3b023100c3bc782b9e7d62e3b693bc637f7a36d845812815ad2b8e1ee2119b1ec879a80c705c5fe31ae27fa8447f76cd432b0ca50302047c435bb50066306402304f0e9201fb611d87e907776e4db0f94fc7efe75ed1a1089be11bb02a7a58653278145a68e954a56b5a67d7bf1ad6cbef02304a5518280f92fddb9877470321c8854c5bbff854d0ac588f9f6c843b4afe49bcfc01b82aee4d034f262cee9789014bbc0302047c435bb500683066023100bb318252f2054469bca4ca0a803faf2feac148b7f6d700ce52945394642767c4b199cce013bd0624dbe9270f84b38d180231008bbd68a3906f8cab56ce7f504d92aa5717c568ba1ab81f618ba4ce8ead3b831bea0395bbae76979352bc4dfe89b291d80302047c435bb500673065023073a3aaa6166ffef3ffd2fd4d27975be07754c552b8bb3b80cc26c836e63ad7a319031a20efcec65522cbcf4f545334a5023100ff9892e6dc3c74dd5c239c6af5ea118c38f27e1727e74c3f2a4cc1e4be0c80a2cac39f8e26a8b52d95a7b1e9f602ce790302047c435bb500683066023100dc25275f07cb7d8c2a5f86e2c3fe42567c3d5ec9574b8df90b51d67eeccf12bf94f2f83d0c93afa13a5cfc8feea16101023100d3ca7acfb870c1fefdb2f484026a243cc48749e9959288ee051cb93c05279e5054604f634d69573604a3c289302d38dd0302047c435bb500683066023100cfb7127aa17c5c1ea8938ff151def98772d4281b35ab463b9eac4690bda7221792882e019172502c3e852ed1eb9af728023100f008e1ab8334cef8cc88f65861cd8f3ce240d7e9f9cb0201d0c5311ffa3582723e684018b24b57fe78b9b3356f6484340302047c435bb50067306502307f3c55c13758eb08bb4d4e0a432ceba6110f670837d0e11b4903c3f9866754ab12d50c29fb0d8051e575d12c1ecddccc0231009a4f33fd0a4cf495b07e348f0335f56b8af3ac41633b8158cca05ef98b3b0f88d0797384007fc1256e8d3c4413ba95440302047c435bb500673065023100c5aa7cbde165380fa0523fd03438eb9e2e74bc1663807c5a0769e683aa7787113b876a896e0d3c1424fe207cc0d2e518023078608525d5c3a3e0496e06475de6c743b39e4f44a1047c1752ecbe49900c5e818587f9b75a3ac26290738097c22c78d10302047c435bb500683066023100cd73b9c841b50a37a11fa505cfa087f26c61ce5d21666a6d494bb69bd089edc7fda309414bdfc1e560d0ca76a192e632023100a3d17ba04ad5e16dad4a6b618be1e26f34adb7540efb7a858ef04312a15366566d8cae1a484a9c0ac5efab8dff36411c0302047c435bb50066306402303fc06145ed110cf33a591f9375fa6f74da7757ab2f2a984ff1b49b9e9888c92cad366bfd2bb81f9f24fedcd18c48cbd6023040d3c7a6f0e19ef91762acb3aaa4a8bd4ca5d09d768d0ca39daaddc82086622f590550208fb02619c2146a294c9743710302047c435bb500673065023100b0d2302e9037d4be20eec8203399cabed9b3c78c51b8c72efa202e02635817c8b6730c77bf310f8fc2a33730578dc68002305a802018a681b36fb199cc16672230dd00587b9c2689ff91cf5391dde62a3f28edeea5d45f2890bd7f11862e07c2989e0302047c435bb50066306402301816cbbff9ce985d4d4644b988a19ec81e3bd2260551b9242537eec8d909322afa19f8a3b216ff97960eb7f360e6df87023052dee21a7803b7e2bb749e02f8d8365a171e14e820b638841bfd8ba59870a68c89aa0eb8ce86bfaf56c786621e08ddab0302047c435bb500673065023060e9e97690b48db4cd10326caf087d9967f03a8a230ec0e61dd167c36c2f8f5cf4ef6b921adc7c26543b60c74dd954fd0231008dff122d71cc53c8d8a5da2681bb91984a8eed353d63f6e0b844f282b00df362fa70215c1dd7f87e6e115ebc546083f80302047c435bb500663064023049e64094906c643fed4ac9dcd0cb7e35ccf208756d268f485becd149b162d8f8752edcd89c8a6ed4e8b5dd08488aa7c10230317f89b2824787af8aeb90050ec75390d0e0baaefb0b5db372a10ea0c97a3a00c027d8047e1387c1faa863b75637da140302047c435bb500673065023029e653e6cd3fd48616118e3e2fb3d8caea74d93342461d47b8bb983c17d93a4bf44dc8f49ccedc8eb1cbb667f71a3779023100a6a54b0b9f97217ba589a861a7f567f641bfcd681a03dec9d1b33c4b277fce427e42e8786b95ce237d97d3526d16e33a0302047c435bb50066306402302d8a51647ad1a4e369ae572730c063bb058526cc1f7e0d5570e3b5dd7743783654e885a20610e13d91ceaa8e99b06a7a023044973d182101ec810db796532208fc09bdf214308a53d455794b04769a85f64da64fc236314e5860ad5f32bf77a5653a0302047c435bb500673065023100b1d7c69f4d384202854dcb15f8f9129cf881f4e493a6b2c7eeb40ec63dc5c21429154612ebd51427f099cc2c64e9eb43023057fd3bdb636cc5b1a6f4039320f6a0d327f462507bb76cc5bd923ab2b192399a87b9a02e907fe2391caae691b78456330302047c435bb50067306502303e64d22d98f4c4f129b7baa45dfb016bdaa9416831b121c4a000fca5bf0a41020d751f4436962dac6ca9c4902ef95af8023100c47bb7552efe22284187eb4a4848fbfaf8d091e31109daa75345b1843dfe16f4a4d328c8f599144408dcf8cfbba9c0ec0302047c435bb500673065023100a0338b5cdd905233cf8b8f70310c045e9999498911c5acd8ad6a5ce261e7053e29c974b23a657181e4a49dd97193c00402305883b0575bb6be916a16fc3969eb5532621a957f35ea81be548dfd88586097a0ee6cce6134cbf313ce0611ae77ec88900302047c435bb500673065023100989edcc6760263e802ec49fbde56e8abc6739328493d4b76c39d93445bf26e0f240ce9c481c81fdd468330afb0cf0282023067cb3bfec2719855b0472168d8dd65d6304803ddaec7285dc1874f650ea2dfd1596561dad18fee67436c49e245ef6e730302047c435bb5006830660231009e2cd5d686c5904c93ad73903fcb9c65343c8572450a179dcb4c4c7c4c62181a02a5475a616919aa4de620188b8b0825023100d4dbef38559621ac418d6ea6a683c1d2aa2379224e235344eb12601b396f2feb0fac682cc3e20845648347d2077dcde10302047c435bb500673065023100b61742f9709f4d636c09bed95e086313adfb73f5c481e4021bcf5d623e6462cb7ba064e375e74e32d2e4db81689ea39d0230153ff13bd22b1031f59d01b6864814e1f5ea2a1be7df41c04fb7a852b0a6eb56a9f200c9c8ea1219d9127e07977be6080302047c435bb500673065023100ebc39cd355a27b6d67f23b686649ed92e3198add79873e04db1e185337aaf80698e4a673fe549a4208482cbb233e6f2e023043642333653bd0271f76a818d5bc2f7e882d690774f2772c7f3a784ba1c4187f89ee50b9f9b9040e3e98e6e24b2875960302047c435bb500683066023100c8a0033f995bc0820b0a31393a8252016923de1953c73ecac3c0440d50e1d90274d05062d4c280da9b451cb5a01d9865023100a772cb356924bae890c135719311bf6df59b77416b026a3cd55c5edf6137d37dc142d5204ac83762f09bbe5667c24afb0302047c435bb5006630640230294d3b80749f4591be9122431a829657ecc8b5847ed9756508c6be572b6efe49f4db88b32dacc09dbc1c94c6ba52ea2a02301f2c26260bfa59ff72868fa8af89d10a936a795bcc54517085b835b7280b7011cf4a4b4c695ee53b4ca01ea3e346e54e0302047c435bb50066306402306cf0d9546c441db942938696eff10ba938aaaaa615949c2049bcc9c5be8ac1eccf29a78d6ecf935a2b0f20098d152f6402305a76e9855aa1c4ae8063e7d37dd5a1c8f6afdf68452beb5292aa45077d4e6d80896ade1a4dc1eb5ab673831c333148f30302047c435bb500673065023046fa535df1c2793b908777e312814b493c0b005e9621a0b7b2a1df36874f9c6436fb1670cc6206e431aaff189032afe002310080fc1e0b345b00350e8bd2a40181962896076883346c5b8d1a8c023c51e93b84f3dcb522d1dd7ad1d1e4210712b45ca50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230030729297281e98a9f58e60b8606f64cbf0fd43a248fd47a5fa53ecff3f1a5bc9c242995f97e63f1176677717e79fcad023100ab29a50b4bfadddf2e1e1d89bfa4ea6228257d39bc1e6040bfbca8a6633a0ab6cadced8655e5d7cc8b07abf4a19abedc0302047c435bb500683066023100c4fdbcf99af1435d597bb900441da5231335ca7355a6d6041a1238105b81fee17103e352db3805a902aa789659be06bc023100d29d8585b9067df4c5981daadd2a1e38460d3a504f4567f3d8b58bf62ab24502392249cc517f4ac2d8e3ddacc5d258670302047c435bb500683066023100e8e0062a56a82dda61c9f4f842f52fc3ad37cc0c3ca1e2a56321dbed33588d21ed5898939993dd2dac1fee9dfedd411c023100c96d9651531e6a5087aedea87558e3e6c32e5a9c8ab79fd79de68b93b89d6ca112e0dac58f293edb4b3590fb2d3c09e70302047c435bb5006730650230165d07dc77579906c28f695d9d31cb6af5e6737b8863a884df99f401b931f2bb2236815ce037006892f633e4dfb678dd0231009cb40148742fa430396cc76a2bcc1133e83013c1b6a31fa9064e087bd96860e1aa9d766e92caa97c29516e9eecd318810302047c435bb5006730650231009b3c620f57bc133e51e9cb9886956bfaaa4f403c9ec099d91303eaad929451a6f9ec98a570494ac07bcae53c09f399ef023078586301969cea16db32ea99bbd1aee04c91f4db43ab868b8cc762c46756747f0d0f5d33b0affa2c99c0f0f77f466d7a0302047c435bb5006730650231008d8a8b7ff92b50a7894e2e1e1eaa2877619b29cca628ba7219639f7318900d9c5ab62e85aaac158ae344d3044304b443023029f4dbd5c0abdcdd1f6d1326085eec1d87e1766cd06428d8b1516d6821d75d4dc9262dd5f3e04a243590f967ce997bf30302047c435bb5006730650230258438f96231e1258e876d3dd07418289deeed5fe7fa82d33a9520bfb459ce8df6d9c9322544965de0de9eabfd3532c5023100b0bd2b00dd53b2cc334608e20c8654f0fbcea09d978acab1ae133b67f36311b00d6cca7d244e4cdb4086164d73e943cb0302047c435bb500683066023100de32ac8fdd99ab84a09336561c217112cf424f25012a1e8ce39fe0de0062889f5a4797b4a93c68528d235c14bd165684023100c7e3b08646daf785e215944353060fe96b5704bd750fd6921e16a8a0804ca47507739dd0c6edc549eab8ea85a33452580302047c435bb500673065023100c078bee96759d0a6fb10cc2e197b4953fe5035f6b3449e00ad355bdd722690ed64389e4f72c0706128d39b43faca38b8023070519a79695c8f3041db60eb85c0e569d2c05cc678077df5497655f74aafa2353d59888bcb0f8aad208eb942c60edb680302047c435bb500673065023100ab60d9eb8158e3f971984cca246bb2d5911f24fbe8ce4f8d82f7dc1ccaa7461fd3fc37746bb849fb4f9ca6813bdb3dfb0230131731b185788226a1158ddad37a3c2a7c21b74e32c15d7df288b1fefcf49806ff6545735e23c168040c3d6462c451300302047c435bb50066306402303cd44e512a853a157770a4892659638f99a9e279d20e3f1e7adbc288161f27cbb865871f1f38f584296ef278773690c80230022df159abc130ea106f3c4f2117d2009b0ced136b39274362f52ffa2c418a7357318ee164ea806dd67a6384e84cb3530302047c435bb5006730650231009bb30680903150eec05b4fc7a298be0cadd05d16cd3ee8db5cc41d6d284d019117fa4847f5147db526ffb108c0aa5a8e02306acee9cc3e1eb0433ef7faeb2000035880eeaaf90e10aa48e9b3e14a9d0368c45b473d40b0fda5161707185b98abb0d10302047c435bb500673065023100ed1adf566f12c1192aad2a2bc793ea7e796722f998c11ad43cbe67894459edbb984f7ba88aae2fa312f04153a45a910202304922f061679b1122b5b6da68c387ff03abda225c874a480b8449be7912efd878b6036695533da2643fabf9c4d5a922f60302047c435bb500683066023100c3437ca5901ded7c5967271fc3cedf41de6fc0564bf23c80eda45660c85326a15016f386889516389735aafdda5aa1a6023100dcfc6101b40a2eec1efea4025182caf19cb049d3dafbd907d27430a1009200fda92e4fe3f6ec340e4287c2ab6929fea60302047c435bb5006730650230029674da6e42a759f6d415f03c7cbec94e4f71df879a169a552196f480330f703bda4b9e5b7c870410b51cf3cb86d5ae023100a9004df68d8984ff377a44e8b28d53255c7fb0d87f01142bad2df68a271435a7e0de8b2aba3f1c8e9ec5ca090e937efb0302047c435bb5006630640230757b19b3bca716d53b30cefe01a3b1824f268b9dd7f551be451be1d7ed17331e737b82bb1364646f90f060ad891ae22702304f0529556787a2e87990852622cb1ead88c2d1937974c78bd469e0f086bbd158fddbc21444152ce6a0266130e6ed789d0302047c435bb500673065023100fb0fe5d1318045e465f4f4c0795dfe825898a7612fe36775c3c40924ab46bd7de4ccaa36d97ff25ab31af173a19a2e4d023016a295d7db28316806f761e929dcc09ab270a648186724f74320985a39bd2f2597600d3fd317f17cd410497acfab14480302047c435bb5006630640230090fde9ca300b5959b682df6c0f0a8b0f1398c141e8afa1cf36fbb252af8e5e758a345ac0384e7a990a9fff3c6fcdea302300e11af373ff38573137a3be138dbdfc4100bd55920b87959fe1ef5a8b7e5379b6ece08e0847ea24fad12114cbf8c39030302047c435bb500673065023100d2dee7a2ef90a23292f5e2ef4510b0aca0a5fce62822bf3fbbc67183c9df624eb4d088ad586ea2677e28cd3ba165ccbd02303431ff30d788159836a8cf8f971a579d6eaf34e4b317fe9fef1606088483fac941e43e1f85851f6c62cb29c14b5339740302047c435bb500683066023100d44a59902ea76ee986237639038b37dbfdba391b8e8ed3dbf1bbc61be645b41ca28427eeb25742a319f528a0a92738b5023100d8278b01ca125d3102004d5019f7d8be05d23396715c9029427f598fdd8b8719561b2f5181a895d3dd8e5aa197f18e300302047c435bb5006830660231009b12ddce285a8f3caadd8dca4e719cd4c2ec4f00b3bbef104bd0626360de08b0d9ff5cda890fe78c0aba5bcae7be984d023100ef55e0c9b39baba716e5c1d697fe7a17b6dc3485d56e63454190cc3911fce8e9346d765fdc3c9d63666700f0b5feb32e0302047c435bb500663064023001c6ff6ac376fcad3ee88d2a70500001016fc2cbc873e79fbb2a0bdb3a9e6326d2fc182a257b60af556752bd590e4fff023004c5cd390bbcfc7a683c8ebf57116805abdd590a5f62e900f8f882ce729aedb9d6d0bdab18dc9df35ea7d49dd6e44a2b0302047c435bb5006730650231009f807f154edfa7c0b8db96b10f5ecd9ae4af8ad734fd007bfd43edabff1e6df5b241c4a6033e713ca6e6cb3b4acf8ab002304028d4e014cd62bb00aee85c80c7b44909105883406725622dcca25db26284d7a26a2d714bfd35b848bf4e2e632546390302047c435bb5006730650230578b3b40cb0720d37ae59126f79c532daa41e1a330bfd96fab3174179ab56f6d87ec0d37d9ba8ba758f3a328d5992282023100e7b69807096d3650a789d89da5c34d1e810556fb099a0933379b786dd986c20bde9117682f45bdab7e68ebc1d6a4f6a00302047c435bb5006730650231008251f0d902728fcfb3645c2e013b7ba5f71cf07f65f7b0cf297b706531194b00ea31e8e806c812003e15899f8c0969cf023005e8224d3a38ad672773ce0255f4bd8f1e51a02fc84645a7f32406a5b8642b1e600ab09c7e79a26cef19b38ca94547650302047c435bb50066306402306dabde34177c9bd48cbf76538e777f72bd9d2ab3ddde812ce662f4d8ba78c4e4aa73de99555f16ccceb33c5f68af345a0230032f82965572f6f16eb41c2480610696fbc6c51002e61eddef239c3ff762ad333fdc5d0e9dabd37a0c44a99b0153635c0302047c435bb500683066023100a67726dc4686e19a435e1116bdc04d04f0ef0d37c1a96c64d6b535e14f477448c612a3e94660cc597b44cda965fcdebd023100ef9629cd19532492a7d328cc4f64d1b0104fb25b9fe221f767c005c5cf30cbebfeb00ddad452d41073eac2ce0df0ce900302047c435bb500683066023100e8355a9bb16bfe21e259b37f8f51585032fc26f6bacea8d8cc6a843d33d9a2d9bf4b28866cadf7b5af53832ac69df6c4023100949389ea9e79934383a555d013f4069cfed3a9440ea505783cd4c893a234eeacef7dc399f0ef8dc5b01275b1953dd3980302047c435bb5006730650231008e8b7af1b305f3691a314a370474938b148e984c96c3d65849899ce270f452a643a534709f94097ccf687c61b022a198023033af75dea3f9ffb27f5f1c7cc4bf317dfe6ac3519a0e024fde903783e05b3704715b2a39fb5ffce49e5db3cc7e5d56b10302047c435bb500683066023100e32ccd734e0694498ad1612ba22509d4222071b6d329abb9ad9d796a0918184d6e8f4efda3003dd2785a023e459097e2023100c296dc810e008f58713cfa179865287deddadbd52eb29c81fba005aa5a6408d3f0bbf0ab609c8a5be8e0ea33949c6d210302047c435bb500683066023100e8d9f34298255a5c84c288e10e465aa2e6f0311ab875ea524854cb3747c10d3bf2780ed54c6c753ff32df5f5ecd07411023100ff35af276f165d9b3c2ac2bb4f4b4eb02395d2d255d80fc7dcac4627348b3b7ef6cd0b5d1cfd497c41224b46cb6b5ceb0302047c435bb500683066023100fdaa328bf18084fb75496e8a5c3760ffee057d9d77546d0a7249cdcb0a7a8ef930b8158481d4a1c7d25efb45b4b2e40c023100dbae8b3a4f02ec19bee1fab4e1fa60cbe8e1b7a7efb2c1411ef70386b607682235d371aa253e7258030bb15194b0849c0302047c435bb500683066023100b9d619488fec882b499902e9afdbdc54b4190ab70b52001118f754ab7e01d56ac5200306b710198aa595939eac95e943023100cc59792a0b7219ce057952a44fefae0471190363d87885fdc19a37fa7eac82a0fc048e27e92b1aa140c4af80bbbd53150302047c435bb50066306402300207bb26cce1702f9fd911979883efa8d635185673f6324a580dfcf0d40e87435a0b6e92d5a4c3c80aa692573d8fb4630230273c720f1edea322f6c40aad5fe90f165572a4dcad4ebbdf1583003fb9e07785a80ad752734bdffd95394d2a82b600460302047c435bb500663064023012a88c22149f6c41d588f27a55ce14d14bd625d02e54ceaade7ce40f4463ddfa8831717f39a9d683f7b1af8b6d8faf8902303897371ccca427f51d6155c5f3097acb46b56cfb2361d8a85af8b355c968050d6de1bc0d8ad375375ff4678b3911b3290302047c435bb500673065023100a6e13f69d0a326db4ebbf56e1753f260d19a1358d47d1392b2342359d70a9ef8a525cd09b56ef408717c870eb938feae023033eb3b92b26628d44eb1d8aca66b52f61eb0033ad9ba5a9f2e8229daa1a6058641c8d4d9b8e92123522dd334bf1002000302047c435bb50066306402300639ae9819240b66116bae22a2252c7b83e369e0d86c90241cd2c89b53c875cd038411edaedd792c914a02ba16311fe4023031dfbd3526862356908a1cb987e1195ebf24ab516f90d14c5ad016f4b12b87fd855ea3aa00c6d40ad246714520e3313f0302047c435bb500683066023100cb6f21ae5109d2e803644444b211b1af091d9d025f141d678f2b244c025655145b6a3b4d32942edc2c5aa075a35615c6023100aaac1674d4eefe008944e10522e0610b7cebe7d3dc3532806d8c5e985c7db5d62bf95ac1afffff1ffe7ad34b676eda950302047c435bb500673065023100e62b4f5f6a49416f9300e683e280738766cdfac9d8d69c2170f48a9747eeb61bf30c719f755acc77af7e2928a3b674da0230543a338d6b09a4bf6afe7d4e21e319adb4466cedd3a53654a748d1432256e4bee6f9a5587166f729b2fe3cf2dfdb419f0302047c435bb5006730650230359272ae3d58a6b25aeba403f89fea1845899cc0b527ed67882ebca294bd7b8645ab3e0b3cb46ad19c824a303c5be889023100cfaecddd9670041fbabf91ce6d2890bf0acae4fcb5c969b123b66e67ec59f7e98798f739e66ca4b001d92f00f7d911520302047c435bb500663064023051496d862de8f554495355799347064cf76ad2ff519338a7e76f8347e465722a22f93c09292aa48a5350c0fa8872576c023005bd847fec0b22dab958f95fb349a60005a8c28e6665fc187de846df0c63168f3614a1492ce04cb00e816929676b0edf0302047c435bb5006630640230395005c2d41058d9dde4b22a16a0d42f59d29dd5425018fdd534856fa7d80c7e5644c4965b11f68230c4db96b099fa690230342953672df6c98eb66574352612459d26c915a4e70136f20f7123165479624d58129902b2cb7197b607133c43939b0f0302047c435bb500663064023070e665b978d408f2fd999c0b8d386c0e48287d6462612593661a28e432b297989b52256f918a2cd39bf7a438ffb1e61a023010f78838b5802b9aa0be3e525f6306ff61397efe4a3cd0b14e5a39acce0c8a437ef5ca06a9809a231393d5eb9a2c98460302047c435bb5006630640230387a69cd382b3fbbc44bd429788f2ac58f1f18ec636179a67420db1acdeb1e461966152b8b9eefc253c2c6d0df3ba0de023061203d10f4f58c426546ba809090862d42e81decc2111baa32d5a7aa6f3bae491b0edefed37fe0174ab96d6f5cd890160302047c435bb500683066023100fbf2b8b82de95c6f107925af7b79873b2cbd14fa3a861458f01f92760cc1763173a48e7026cc1cca240c5f7ddfb21636023100d515a2146a66e0ead462c82591a08864adc8236cc5674355131dc57cf9d284b2c11c86e655f930123a873547194821980302047c435bb500663064023017e73db668cbb3df71e253b9c44d779aaea5e640f0622818af11e5b4a3796f1548046d69a9821ec797f63a129d3b81bd02307d469d4e743f44a452695288f3a06e2bf936155f1ce0f45bf9f63ac7eedd859ebe9661e8ed7504f62a7b2fbc3b3506df0302047c435bb500683066023100ce2821b5ff175e12d56323f5470a86071976eca8ab7838db35dc1c2ab39d97eead3a4bb7edb0658d5ae8dae98f9a3878023100be1f8e6751c47b942c56a193f9acbea77c0acf29388eb044ae0f5ac97b0a5b6b346867ea372a0f9025bfffc20f2303300302047c435bb500683066023100e7f2476d1b01e6eeecd712fd81699dbf14305bce9e759e72f86967a50eed45ad4d6309f7e53152daca600c72a8b9f8280231008cb0353277d55f419c96771e3e489dce1c95e4e1467d22a7d17644d6f402f421ff456824e819ac616b8a30f1148e659c0302047c435bb500673065023100b507d73f45bd3f551cafe216895439dfbdb6fdd1062d2e8ef582547ec27ccbdf74b210742fcb17bbc12eaab12d237e8d02307a4ea4c700ce24068a750bacdd79de4d4e4fdc18e1a8e72423b5f9e17e07bcd1188910069e21be4d758109ebf2c978160302047c435bb500673065023100faa6484425455d0bd25f5093138ddb9589c0d0348a508bdad11611af3816888ec80d216b640a03aedcb13f647a1ea0460230228285a2d2769a9df58dcbe7ea3d4a423d892d53f75b4a6106911c6ff7df56a7dec2ddc2e3cf70285a30f98a262913940302047c435bb500673065023100989900d907e42f6dd8801eb16b08c6685bd6b660d879df6af719dbda64f6c0ab67462855d85f87b87ef0cadd9f4358b802300a9efc531aee58507bd0651825dc7728e7c99ac26ff435e623d92f34fc7ae62df39adc176ee9c9e08e1a83ef0f6e7fb00302047c435bb500673065023008f038a2d2d3fa562a5e9a1f4d2f7aabba63a853fd67b0d6e6a9b45cd10ab1efd1c686e02a9f103c2115b1442c790e1d023100eabe82e826deb7aa5adb221ae51bb739216396bdafa4bce3b53e301cd17a4a24b1684f981d0029d2fbb204b8d6e6a1720302047c435bb5006630640230753c72d263e9ae1c43f5a5c89253a7560f733d765f2471f1b8a9417068f17fec8ff539bda9c9cfc1ef036e943f18000d02302be07de052b29a4396009d371f399a4e798b35a6ecd8a2ab6f52d141ff4701b47f962a77950ae864dfb1fb0413cf03ca0302047c435bb500673065023100c279d10e282dfc7b30ebb2c422e6cd46e6d37189570edd1396eaafa087e29f2cd73a0731dde4c2e11d406c86c2f8fc7602305cf2e8ef6b6497692b537fcefea833ed8d32adbd5d5340cd2052f8dd3504dd46147f75368762e1b0726be8e8c2e3ad3b0302047c435bb500673065023001d1c6714d15863c4c7a9bd459b1804316191fe40a5e62cf35ee4f588f60e426997e7664c106b95de4410481280cb3a7023100b212fd2f7588a37d697a4b36e278006e0bae706719d634a2991aa5ce111c75fb3bbdf30d7ee663c1ab4e0034ba27fa2b0302047c435bb50066306402307fd66ea9f792308bf225c810d54f7ae16f628c1756fbd911653559cc32b2144151d5fceca4e885cdda96b8f34eca107c023022acbc5d54fc93aad659a2e3abca548c10731c054692695ffc279267a0600d3a2f965b380ab186fc8851d18ba4dfc1fc0302047c435bb5006730650230443e72c7adf65a8856b689bfb63977ec4eab684dd8c84f2c7ee2d3dab6fea9c047d7e7cf6f6b6490f368065fa8ea4253023100ae832f9f1376b86b76c7836c8bdb402b84f51203b97636b67317138061a2032261a9670097719ae0e34c5d38be32dcf30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023031a0dc9ea974acad96989cfd9e297330540ef06860d02bfaaaef1a40f221a06f1b4b0a33f6fa3822e7788e1f1492e737023078e86b3004631a20d203ad040fbcc12d0ecf3bd8af8d4742c6d81ced77846e2f1f582b16fef138a9634c13ec5b14f8030302047c435bb50066306402300843c095434f797d08bc744e6116c0ac3533efc819ee0da9200a1cf3454c9e7eda7fbbaa3ffc05fc2d7e5b63847a13d602304b5dff42a25a8d1430fdc86c4746b17c277a60262d24af019ee7069f523e30b9c11cf9bf225adbcd92037d1c14634f170302047c435bb500673065023100c22ace7380e560176113927ab4492f6f5d409ac12ff384489604f93f65af74a3efa1224d6a71b747327adefa6aae49ac023042b101f37a9c5c7a3f1bfdd27bc9c4e1d5879e1e42951ba2adcd025ed40e77a925a331bd9f4168a2579db7bd49950e460302047c435bb5006830660231009f32c6416244a54d6c09418058266ac1f3ed79d9a4eff4d82abef4316a91cae5175bb148d6300c37be9f2bcf9041f12f023100d2f5e4e1d20ac39488d5e793ce7784eab04ebfce6d21b2ede84669dbd0e59e6f21f5935572d69cc95a44e1cf9263d2e60302047c435bb500673065023100c0d10002b7b666230afedd573ec80bf6c5980cb4ed56bcc762e30924f124bff474150bc645574e36ed79734b0cc7685b02302b275e1b1896333f54eaf5b2bcf0be7f2981079290f914d30ec56d42e6d21f502c37070aee6897cf18d2ae3a3c7f9c6f0302047c435bb50067306502304de7162018cc69acf26ad1dcd9c5362d7b7cce7b466b5c87cd44ce4010eb8447dd75886bd78df3dfb9e29f3aa36a934d023100be8b40bdaa80950fbff77b49f479304dd35318fd5c8a9616be503ba10c1fb7f8a8d9c2a91b3975a1322fae75dc17d44a0302047c435bb500673065023100ad6dc233f8c88279eb70f4596c41350dbe31a3ac0adeefb76732683d2e65e1dc935d964502c03bca54dc57e6a099cd2d023003fa8aab35b461dd0cc5f6c0c2b4f1db44d47a7d105ba97b0e246c8d0828f52429b4adb3248ed57b0ce33d975c940f890302047c435bb500683066023100874c9b64eb1963d708d65cd8290c78a9b95a71eadcb4abbc95bf8fc728d0de899863f39991915980a0c0a54ad7b1630e02310098bcdba0faa4a564e62e6863acc970c239db718a07cee5341c7fdbecac3489682b5f76794651051059bce4e207a498b40302047c435bb5006730650230475c292fe562214b48fb8b52d081c1d3e1ee63547f6a4e77daf90f1766faafcf473db35f67af5f4ade8b30d08c43d5f502310097a086c04ef6f163946be25d9ed59df8f48c3d8001f3ccbf25038b7e5e202244a8a5f7bdb07beb0ba7b0b5d88dd2d82a0302047c435bb50067306502305ff9b325b08bfc34e175e050cdf5dc1c23f203d402028e4333ab37ec05417387c1f3fef5003ee9b92fae1b88e1d4ea2c023100d09326457f70f6cdfdea969c0df667048a3247f7d4d6a6ed69481a7eedca8f90da98d29b6595127932ce14a3cebb83200302047c435bb500673065023027eab580f6db510f33cab92bb79bafa1052321793c52e603cd874750e7c29dc6131a0712a42705725021a84fdd28e396023100ead5b4ca410ff630897eabd06f10c1fcf407df3d24542cf06f9db58ca2b3ffd5ac6c6d6cbb6d9dccb919adf430f2378f0302047c435bb5006730650230217966b12157036540177a2f2bf34c9ac2179e26f4acc10db64c0a813950392c48a9bf48fde76ab7dfbc8f60812e1151023100cef8e282f4e70060ec2c20bcc99d41e6dfaa850672316904bf8cb97afb861f51ea4c6da6f0175b2cc3a1d438ebf199a80302047c435bb50067306502306df5adcbc2d31f3f6142e67c363f83b2ce541a8a7a51959ede2bf56d0e79c18150bb22b02dd26146eb90024f5b93c26a023100a66daef5cde8ad542100d4c597567d51dec6e590df817c735056a0c11b6f56c6016b1abd7fadb6af1032a60d54340c7b0302047c435bb50067306502305a92e1c20846355dff792d821018f814021f906047a79901827d10a2c66e70d8f6a48bd266acf92861c5dfdaacc2b314023100b076edf9b7d133776a6f7f77af5ffe207258315ce0d366f30e1b48a7f75a7a6b34d1b2c7d0ac84692b57ec5190f094fc0302047c435bb500683066023100859a969465b1b66f3e6cac8e3024bebf890898757cdd4a2b99337e0ab63bb2fe43f97e0660082084c2473675135e59c0023100969298fadbde7c7971651236cd8419f456caffa75baf8c84e7cef872a5b264199fa31af5f1a82e4a5370bb0689ecfb0d0302047c435bb500673065023100a9d059e9043e89bf07079e2bd55bc9df51892972440bac17f45455a0b01d076801c4d4816a0e6f4a12326a4904c986de023064969074749032f9eb328d85c21a82d11b63d091dc276de22178c6f16e116e81506a280fa0ab0916cca03248d39acff60302047c435bb500663064023042bce5bda38bb4bdd8da50d990a7d7e4fd8892af96946cfc474c6187a21e2dad720b96996113ee50bdbf5d27b94d950302303cf479bc2d4455cfe6b6158e4846f87d0e76dbea28b39029b03c18af995a3e676e6d6a34a3bd7c66db5b431871df06d70302047c435bb500673065023100dcc0a870ca0b52a310c9e890091d47e33dc4dc646b06467e37f54eb010f6d31b19d4409dc51becce84177e5f591691f102304e998ed81ba7eefafa9da726d58860580b135390b9598ae2f9be6d67f6281df3693f7fa5ee8db9ea710cee080950b48f0302047c435bb5006830660231009d54adc550ba460fcbda168102bf43008ea0d06491fd591221745f02f825b5d7e0f6176cc3ea9f711ee39593c907701c0231008b1a2780fbe617faf98869154a6df7a9ab7676cb7daae0b78a7db8f958965cebccb6335395c608772275ea45721610e10302047c435bb500683066023100bc11142e5c7efb2aa0aa78a9b46565bd3f91d817b08176af07d466999232e93393a7bcef75c210eff76edd931730031d023100d595c7dea48b305d85ecb6e75225661fa61509617d4713b5e029e271bc165d0b5432aec26b573a4a11df47a9258421170302047c435bb5006730650231009a3cc644d1e54e9905e68b566fa7bf99b1968d7c2722f0bc2c62273ff69b515f6044b0c7738ec8a5fd1c85dc88fb47f202301d8dd1d8da0fd10c3b60972c7f801ad5fa377d2232361b58a35bf81be00d98c49ba335a63a433bece714a4f9c5e559790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e066c737b810b99dc983675bef785d566cc84ed09946d4aa5e0e8d107d8dfb5f0782893918ca99b8e0b3cd1825a29ff602303088aebf5b24d31605204eab6ad0464b61f4e729eacec8336b993dafcfa69a522e157256187b9866213231e3cdba1ec80302047c435bb500673065023046fa2b47030c0f48ea67ef4a9b382f23042a2e92fb0d1c6b205ca28dadf0f6fdf670752561083be119ad422d0263abdc023100a23536d0f38dc575ca6c36ba3824b4f325ddb3a43ba177a7c55f89caff1f496076ed56506cfa587925270dd1f9e211380302047c435bb5006730650230540f4a4ac0ab7d9c1734792bafb53a550468a73f8e2ddfa631a01e31df77515ff87758ba9cde61b9daf1c39aa301948f023100c8c707704367f6de749fd39c6a1a30684a9948d58f978276cdb7428f809cafc05866f272520219944bfd00f8f373008c0302047c435bb500673065023100a4eb37fd4da9fea290774bb5781fd0bd8f0ef3a69f6ddb26ef2c1b1d4567f6b0a5c09350f46dd8900a1ad3d43b10bcbf02306567370a7f26fef0c42c83378f9ba316fe761945129497cd77ea404e833ac3dda713a07548bf30eae428226c7280919b0302047c435bb500673065023100bad569d25de35c42d7cc4622f69a0b3fc68e79d43e1325351f6954e45b485fd020a569128573e9bcbf2db0327a6de73302302b5c634543a3b2f38af55ec1424fe789f7490c21bfa643cffd225362112e8423dfd363727d7f9315b6a6590a875b55b20302047c435bb500683066023100ad5c4d87ff62a1e8e64afa631178e53a2045a1c9629d6b3190ba6ae5c657316ed981d7fef13bac70f0aca79410936a770231009a725b414c74dc89efc4bc84f1c144b93833bd3aead3a27747ee3b01c631396d777a7c8e590adbc9f29636ffe21befc20302047c435bb500683066023100a57d5945dfd1e0cd8f8b3db1df551625ae40d1e9030cca62f5dca6d04629bb37cfd16e0156f1c95ac82f5ebb92ebbd1c023100de4ada2e1de4e9c77958e9ae1ba7e9cfac2410db90ae758d12c07a4bcd4be72d1e1c2e262dc266cf821e217157ae4a5b0302047c435bb5006730650230014343c4a185518a40833c80a502d7c0c816e68ed2ead5cc039dcfdecb5656291b1efde0d5dd3349ccbf694198304e45023100916ae9e66bfa82ada7cfb0d4008ae9e3d15d5649f237e756df6966c8eeef588d0749a5c339a9d449159d93c976c087730302047c435bb5006730650230754a32e48f2d29c0ce14cc70f96e68f0cbdb238a08365087a365ee17c6da645160c73a429f1e82abb4df2e7d9144f956023100a62078d5d8e02c24cebc48b8ed1635ad3c7490977bef0df0a62ed3023f1d8d490f12efedc60f111a66b257762408ab130302047c435bb50067306502304c88f65da959b29b19dffbe06ecc138948235ee609a2fdfdd51d42aa1d3648f8b5697890ae1a0ef26d41ee2b851792e0023100cc19805ccdd00ec4d3ad6524feffa60d8996edc2b58d82dd76b42d18ca5ccfe708550fa3396c36ce4e6e8394da5e6ca30302047c435bb5006630640230201e3adec4696254279e02bbe7c456285cdd0a3f02a65d1c423e92dd2e1fa72a56f50d8ca829993b8409b4a8edd82a8b023011c138baa1d30fffb5c43477f333e01b56186c60c44f5a0eaa6a71fc0aeecd2f740c47733546a5927a0cf4f73b8fa3ad0302047c435bb500663064023042dc6ad9fe876a744b340f230546a211114ca0b7f05459970083b87ef99864c2aa4ef3a969ff54b3b11c81ccd42e30f002306802af582ef6bf8395a48ac416d682116a12a306dfaeb4a4de32a2876dbf5c7973e1f257cf0cede86575aa9fb14218460302047c435bb500663064023039bf3c5958c66731fbaff36896efb966c70f7e1755cfcbc9b47c664fb0a49f1cec5135c9d254f062c6b5e154b108696602307ae132a1a3cd95f302e582e4e16954284ebeaa2c7cc39f6f84fd8e611f4c6e075738642c03bbf5dbf97995bc58448fc90302047c435bb500673065023100ce0be00a19fe8b058cda958cf861cf39e77f03a14e3440e22e35049a5fe10f386d3cc8d3d35626db0f43e9b57074620502302ed5d53066fdad6b86bf9049475a06cd5a24a9343f87dc67e9f461a39c91ea76c0e916bd069085c7163014c86d1778d60302047c435bb5006830660231008d6c6ec31da8c6976bd27305df37c3264debedd4b5e1cff81ecd1cd1e711ffdb3f2e91f8521d73cc973f359fd10978a9023100a1eaa298dec2a5332fb7a0e3d3105ecac4885bf4c067faf779af3d511df5ed888fc24b39b32443b2d7b0b099678dc3930302047c435bb50066306402307dc840c7530584f7bbf5ae2e6bb1113689b46b51bf6540a3051858dd28f29714a4ab0d2da803669b16977eb4c02903e002307937a12fc518b0ffe0cc3e4410049fb318a15585ee09b0da2be2a4330effe88fbe45d2fa9881c12456d88f2c1308794f0302047c435bb500673065023021caf5e83fd67d2686287dc5ca3551443689066c669c28c556f9c972c7a8304f61d3211450acd4a9b0f88a7f103d68ff0231008301cd0a68b5ae0fbc1d0fd625061b0cb26173273db65e54884c074c7829d2626dee97af226a8936bddf20277b66f5e90302047c435bb50067306502310085a49fba46a3087d89256c88535ee861e121e2eb50fef568d1fdda5bfb2e433a691a215b0fee9f316955513ac149f50d02306f1462d1e391ee48c3d2a2366b5b3b30181b89692dcad6b8f300c8902a357f98370cb07f8c3d68cd55a9ac90ef00e59e0302047c435bb500683066023100cc73c6b82638a4631fa2d970f935e20c022c10d074198f9b260f1c79ed79fcb65ba17ee822ad45fcba600d38c1b22c200231009add8aae8f26b3e5feb7b2c946ce0d0a18f5fb5820da45d8fc1c96d007c325436b31a6d786ac9bb36085bf0805b7d65c0302047c435bb5006730650231008cb5ac6075e0678e3726b36d5e69b313d18a25641aeff10f859dc727200c500344784055976b984fabac44033dd7c82b02301b8a8da6d7ed21a87a7b175a09275c5bf0d2aba6c817ad9a88b2a6d33abb49acf089b461e6dcdba971585962d9e9764c0302047c435bb500683066023100a17fe74b232af054b693e74c6e2b62fecdd6674d7f4e49b723f9919d210f2136d55fab60b0dee3434b56b62c184d4724023100b0c083132025aede55b7034b1d7927343ac9d7a1abbcce4219effada93bd871002af2e03462005c55bf388fbdc321c0f0302047c435bb5006730650230216d96aa2ed6852febed14df044e2f1f1327a786e01d7b85d1e60b9a20e6c8513f419a97e28b6e42460b0749dd895655023100e30112cd4f419ab7ac5619bf1be28fb1d34dba8dd9bd642e2243e803789be83ea42068810944ada20351ea68934d83380302047c435bb500673065023100b8dab605c6b2de5c55bf9e332ff62fbd069c119b5541d64925ee2ffffe3d151a8f0e8fbd505fac92647c051980844bb202300c6da81d5e7ccac8c90d6fb3097790977b32813074293126e0c7d1fc9983e9373290b266387fed7f13c26e132775523e0302047c435bb500673065023027c18f97d9b20b5a3ff1387a7af2db432725b826b89ec0a77a02de3c13672c241d7ca8822d3b582927e198da71c42d7b023100fb6b8d4790cc2ba6e1a0921ffe0cfe7d2053ff0feded062b56c007d44892112b29a97440ebdd261eb80ec7a4ac721b460302047c435bb5006730650230733019243898cf28b4bdcb7e60b6fff6d4b787f49f75d5ed7f07fc2bc35cf1b246d849970abad6bb898d369d3bbbd7b70231008fabe402638e03966564cb2c34a3df93fdd4cc9acba20d25c397d2e6ba8b49c60ec6327e16ca002972867fcbc69f8fc10302047c435bb5006830660231009144d1b758a82fef1ce13f40c66b36f38efabcf4d9d7f27726da8c2b7169dd7cf976ed4fde7f2d7fe193108917e4a7e70231008a281cd58a7b8184b35b6c9743bf805abc0c169465fd2ba05a38e31063765ca6807932bfe573265174ee88650c30397f0302047c435bb5006630640230729ed344bba8c4cf2a93762f344a5709b850156cafb729f91da7591287adb2d46a11aef18aa77a86cc3cbded5304dd8a02300f2850aa75c5c138f1dd0f9379430815438a451761055c06d62f746eebbe1bf00dff9114d090d7661f8cf0154b8ca2a70302047c435bb500683066023100bed318b8f499ea895f37c798562d42fc6ca0f0b29c935c9e588c406f8af0bf4ffcd16bb7ff6afd6ff43a2e9461109e48023100f0791d77313cadb0f5523bb7e47a22f38ccbebde4afa4ff25277b15c5f5264993f5fbfe4a21d8fed093b2e343e247c380302047c435bb500673065023100c770e2506966cec77b47fbea6e424caebdf6dbd57c450718d40656245a7aa7947330d4b6c42dd1add98a8cbe81651e7b023051427a6b28588c91ed38706f8c9dc5a8f6a19d4fc0cd6e34b442ae3214420a54d87b647443305d84e74f31d338a60c320302047c435bb500663064023036df21b4d67bd0bddda2e067bc31ae6dcb1cfde1395e517cad86816c81be0e5339cc1b43db271cdc3c90782a4fcad9580230105bd7b76a72d8086e20563e0e1cda60a702d3e18e50dbce00a8e57f6a8c2530ca129e662c4767189b932fe5d26fd2490302047c435bb500663064023055716e74227ae8c9df6b209741e3b9f7dda3e7bdc635a72a0361236cab9afd08368e2ebec3aeed8ea60410c90c3462f5023030aed3f816f4208e09b6b9946ebafc96962edc5b952fdc5ed984ba31e80c99bc4d3f6092fd6e640dcb1287571bffecd60302047c435bb500663064023050a95c2b61249a6821a46ad9d7aab4e03d8751f8fc708c896796cdd9545e2c519c7958c1f9483e6108974f34cdbb499f023002902956587a790fa5643a8d07b442c92c96fed3f195ab8d4ac20d76b171decb67c256805a6d00f3b7613e85fdc5ef550302047c435bb500683066023100c45dcaaf1ee113de09cc353e675e778f5080eb93bb71a61e47f2abcfb54f2ad6be48036ad4389e3b9652af77e07593000231009f4909f646158d3fb6a3fe4ccb37a28709a1c31f9ff2ea38daa8d309ddcb48f34c5e412db65acc9a374f21475832f26d0302047c435bb50066306402303d3bc8e7e272b9c704bd54b9cf8f483793c244f0657bb186cc5b6446ac54fd5b0d89b65bc0b8eb95959a3fa90932499302302db63e187daa9da95ff2540f80ba6519cdc5bea46b683c75b45218947b9bd7040ac0c4efda6ed65f8428103e637a7a210302047c435bb500683066023100f73327e797c2eadb4db7a52a9b8ecfc066c2355996ec7de2a999d4f714cfd9402c0e7933065f9ee488ba8d12a6bdc1d1023100c744e97ef9fdef0600730a43846a9b69afb209b4bfd308fc0109a314a140cb07ffcb90bd3de8d8d1dc4279ae999f6dad0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301231362172a2333b5c456713f2d2f253ddb947aeb1b9f71d941bb01d6ff13603eee4091f57833758ecca0fcc8aeed90c023100a0cc5e1507da176826a0a08f94b4f41dc4257840fc468f8e7749b524962d29bac4fb5fc57945dd24cc288c438de06f470302047c435bb5006730650231009b10f76a6052352f29e86afafda868664acff5805cb6585e8d9cc2949a74c7e28623dbf2376237ad0b5a04c66768733702302fa812ee4338a0500e3ade640cdf1b193aecef446563e7e736c19604208e2156681b27797164d7de614bcedbc0d62ab40302047c435bb500673065023100f785397514e6172f0e92f02d50ccef29c221dd66feb966c9f9e91cc475f55f4219cc9e409c7e34198e51a104a3cf3e5c02303585894a7dd0bcb6dc7b9d42dae7d3c3073ce99a29b12da7ca98fc92dcd1170200d800e873c34cabcae5f1f2d9ae3dce0302047c435bb5006830660231008c9af4562766e0759b303576f57488ce8f120f8c3ae048636823d432f40af696e3cd8ee3250d1db50d47c7043835704d023100b1f752bae0f4c0a01a17144e8f060b73b719c2086abfabc459586e182ddf60030f2c571d20b1f3ffdbffc99171210e640302047c435bb50067306502301fe6e9e7ce1fc78cfdc066f2996434a953ffc6fa75920a9cf3ba90ae4e7473c960845cc5f4618bfd02475b8df183f09a023100f6b8cd5a8f15dd7912db20ef70a1cb2b01670bda925d50c08482077ca76b17032c0245ad439ba852f8a0f86b7a4e3f890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023017de01d273a61f1ebd0e40fd1ac4cc25fa4c59e3cdf12e8df758be5eb35d46f35860a913270f433a4547793d94d7f3c8023012d1d18bd60e056e745b9a57215361ed8956733acc2778bdea693dcfcce13a3a26adea2664d93a052867fa31164a0ec20302047c435bb50067306502303adc8f30c00a86ae9e2ca70e4509e288231be0bcabdacc6dde31123a2cff33e6bb9286653794a0620cb0dd0b94ace82402310081b96ccb0585d92ce379dfcdffa3c53ce3d7ec440f8c2eadc0be25a87cb9f3b4a8a5435ae44b17a971b68f427c1761dd0302047c435bb500683066023100f273b48cf03a5777844e80a64e173431d4390830478fcbc523d7d878fc22d2f361944aea3efe18517320deb758c889d8023100b4333815eb2c138bf5e0bdc1a93ec5ca159508a9870056140a0df8ab2bbbe1f4cb32bb9b05e938a0c3194fea212a98000302047c435bb5006630640230413ca04a21ae829f01484611ee092fe3a414850d3d24df6b760c38474b6043728dc05ea5b3cc1ad8c0aa21b88a3e715402305ca038ca2b37c9e6f7a8c1cacc4aa52c8320065f6a2746eec77a28768421f698ea74fb01954a7ff37edd97d7aca29d9b0302047c435bb5006630640230357475fec9b4ed526cef6a5996984c378cd20f1691df889d52e5f77f58372f0fabc71645f778c66dee0ce611ae274a73023023a97a3307194f712478b960074440b97c72c118e04f9763afe82f81d7f75ff5b7c6826735252581dd79a690c91c670b0302047c435bb50066306402306b6845a2864b6078f7e851500815243d928c085664bb09a6bbe22cd1547f51ddcbb7d6988ba016f0df0e3a7290fc1d74023068f785b6c4d4373f3f2fb27b08780c42f199b5cd53b4fd8258ce8f12d0b5357a0b46bb674364e56e827e2e2b7e08ee190302047c435bb500673065023100d945842d969d070bc057235ae36140be6a0173b42a3475add62520b419ecda6fbfd85f68dd5c5633078cd933d62633e9023002a544a8df3be85d9b0903c24359cf232de862d76d5cd077af2708c21f0e1a72df3c174aa30f1bbf4f6acf4ec2f55b570302047c435bb500673065023100fc28808f531efc92d696bce0c61d929a16d6a6607e92173a0c951bf0e4d753d35cc231e37a44d7eed81485c746a719a502307370074f48e3c3fa3e485b5527f74ce8e985cb0186cd03b7cbce0bf465df06387e9997ce97b79a0098b939a26ffdef870302047c435bb5006630640230159bac58ae938baebb56755f72ff11b5a1290af08f92cef1d752cd7e2106ea4c7b8539eddb9401c484425a62395ca8e1023063b0e398d5ee0cb2a44ded8147a8702ade5af795a1c8dfd9d642953ab66b8ffa838668853b72cfa38f006379d7edcde90302047c435bb5006730650230681c22808af745b6200e0ec14a24c2d9662c9df5b5194e9925c344a77b0b9574a103c7d83abb2c98e8857e7d175ebde4023100d3ec452daa0966e727be7c0bf8ed661e4c515eec19c9625a8fd231efb09cb927ca2a9248d1ea152c367c32824d17b9af0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c6688e7e218fdd3ee32396ef56c52008062ba39cc0e43d60e866687ec2943bcb5132f689f7ff8ed15c3d7a0488b6ecec023100da9d4a4d19c512fdc1744bbe42abb4dd695c954a0573a540146d2bff00ce7471c13cf37e6dbf698fb21d1ed95042eefe0302047c435bb50067306502301451175c476ee2b5aef71fc98b1dab7b16730627f374c331e9ccfed22d951448673b9e5002a2632d540f036d8dccdc13023100ea076548b47ca883a2faedfb886fda82751a658717dae1dd7f0e71daeada04ca86ab861486fb109ff2c035640c0960c80302047c435bb500673065023100ae91298456227a5df171333d426b3ab6af7dddf56c4f44d58149086aca37001ca6151c175619c931d6f6e8154fe86b6802302981d03b0d87ca2835c387a97c27897abe05a6b4ebffacc010731bda7868384bcc681bba365bd8a0564733b13e3e2f400302047c435bb500683066023100ab187304f7aad9fac3994aa4579f997c7f688bd24e1a1987ad1fd14e4d4b68badc5da900459098a57f35bdca3324f25d023100f1e841c457665c86cd820bb419d42979803c4c1aa947c7d932d37e354c802c98a0b2fe0921d4409307d8e00f5ceceade0302047c435bb500683066023100e24298fbf706e408dc5dd2416588bdda70687f1b202710ec7c6c973f7e0b1d15f64c6743982bcd87db400f10aaf8dce302310099927f4cc8f09b34a9c3168ce61d365d5a6a10dace016f0f5e612a365167110aab5b1849b02c9e5101c25e0ba29296430302047c435bb500663064023006cb6f1add6d75d4f701494b85c940f853c546ae7e506ba4e04ae6b3dc97f32f8efb9096db4faa234117de7d8308ae9402300830133247fc33ad86f264778d326b1032a7aa773b0cd0856244ac8bc4aa3b875c0b6de885dbdc5c1fb9a3042ae2d10a0302047c435bb500683066023100e1ed463ecdc8bdcb608c9a5dcd8c652d8398a836be4ca100154e614b4e8ab20c86d09b6a27039d1523ce04e45b7c970b023100b0d88ad2adef2ed3538bb7d0f655e0c3254194e4ce3cbb1470b2bcab05fc8ec22ef5aa85f2f40abc7b067cdaaab0e4130302047c435bb500673065023100c89f5b48ac0f9bf9c9fd325fe03703c4ba39bc3bf1e4b6ded55820d95c35f1aa223ebfcb436672180003766fe0104e480230740938ffc01babe449c7ed5933fdb7a56a67127f4b761d0f0ec87ec3ff9535d96c624694e89e5229ddea768b3bfdd7470302047c435bb50068306602310092466d93656f42d07572a180307e132b665f174e3c6950ee2362637c780765cdd6cf81a33b7dc85ccde6014382780a51023100d3777ef886222d7f9786b47c0f12af63ca0f6979e21d507b7b4bd808cbc8a0011a875b8bff0523d4e02660c7cd8580910302047c435bb50067306502310088cd77c061ebf19c0c67f5f31c50e4b563086834dd034149c2f57ea3cffccc6462b22cf1680c10a4f1047fcd73d1a5dc02306948b7b43f1a4fdf6099c662ec97df80ed4830c84eea1fdf1818a0fdabe3dc09031c603cdbcada13ee8f9bbb375d8e8f0302047c435bb500683066023100c782ecc14a0d215bb2b2706acd734b7772686521d3266e3ae7e82e8e2412d4f0bd3258353ead7a77a0c9d449291ae5b5023100d1e51881762f551b9db04cc665300637a11e1e9b9fdbb9262c702a74f68e9ac7d302cd5190da4f482b21f738b18933b00302047c435bb50066306402305ba4d59be315385bdfab31263e86083158c7ade5eef54562708f325147d3604c1ac74100a59a6e6e29b4688c1fa84a00023071b393477e905fd1e91749c6af336355ce7a37e01f645efee09a4aa1975921291da0adf6f3b2c7b7979cfb82059f98ee0302047c435bb50068306602310092d471948deb2d2752cdf19463e7b9480890523dd9bdd258a59190bcf2f1988b32c3112c3d7d8f015157c5443bcece29023100fb282676c7400d4cb47faf03feb2e5748274f9f11cc8258bca5820f9e13516b3583cca213b5ddb335069d856e02030630302047c435bb500683066023100bccb713930e0ae9c63ee3b443866879fb27421cd4bf7e4a1bb771ea783da746a9650d36373f96a8184c43ed84af58124023100ef6ac9d8e363b2c7453ab1f4f87688ec500915d89199cdfd9d9da6d18553b2bec3758f9f43df5a502fc1141ae9f316820302047c435bb50066306402303d6e8f0ae182fb68fe26e9544b8987fe99c112821605d46c7e239f12a0a56e14457c93efd14e66c5c36575b07737f03002306e23ce589a1c150b9f41002c15e0625506dd3a7237975f1316ceeb474fe59a1a733dc4de8488f1dd134bbaf1f2a10e260302047c435bb500663064023078934d3c064190f20021eec7e35082fbe0cb0e6e9e55e72d9f1d71b55444d811229c60a81249bb9b15910e2c8cb60cf502301321e0de6e4bb715376327cc4cad8a190d5d112815ead94ad59f570752f735f5ca43bdd9774270f848731f01ecebf5940302047c435bb500683066023100ca0965c88c2dd6e1dc72b14a98cce753401d001c5ff002650fa0826745ee68ef8600c4217701806f23fd4a22919d2841023100994a05d6c8573142e5d902389b83279be063ae7664da8bf12d82c6646bb43483a3a190c67fb4104384f3c41e4adb38130302047c435bb5006730650230521d77c3e7fedd3c9826a71aef3e443705f1ee04595b3a8f316fb9ec268126841b4607deed6bbb4a2269b56fd9f3c878023100e7e3bb8687a9e37a77dc1eb58205ce919bc56a299dcf2743e367a66a5194ec252cbc7912954d4a5571be778607d1b31a0302047c435bb500673065023100f7f2a4d8c69a2bc751407dbe8731c1cfe786f25bebc644dee02bf016200b89ee58d47236a62e323ddc9f2109bb28544e02304c11e4ffeccbbcb2dcfb60683a003e7058b0b5404a9a67b845cddf39760da9913aa727143d9ada1b3ffb6ed2297ecc130302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097cdcb387450f8b2a7987ccd8b1c05a8f96a6d9b130d497449dc50956278f94cc582ff7a26ac3c96af382ed7c13ef3e002310090e07293f76018534923171eca81fd4751bd2830c14d845487144d19c94d8dabc23c201ff6b7be323adcd26c7e019f350302047c435bb500683066023100ee2c810f7475c6681218f94791a4a02c7a85b5cc49e68711442ae182b3d7e3cf5d17be1b8e45185c74bdd6de7b4556b8023100c189113c7002447943ca6c11273e71a94196054f4790cb3af77d2aa0bbf4f897744dc6c08ddcd2c38136408c9d5b91a30302047c435bb500683066023100d4bfb4d40486f53f0ab76ec291b6d5507fe3efc7879f17d58c0b66c51142c17fb9ef50dee8781a54bbffd634970fe643023100ad162b92dc8c0b40fef1358d128bdb0702b17fa01f96094904c9f629d653be2d977effacf863de653afb9a7a37f9a0be0302047c435bb500683066023100ab25633ed246d5a8ce382b720dd02364b29747b5ca8fecfe852818d4d7fdd46886e93431deef26afd8bd5245c44836a8023100e7a7bd589509443bc65a82826a611ef8e9455293caba5222c9ae9e95636a2f7639a99efaf146e17607a82b76200adb1f0302047c435bb500683066023100d7d8e47a1ce19ba5bf9a840b0605343d299741078fd96574eaa1260138fafd0d999b663b666019ae058a732c715fa89e023100d4e0ef4f419694e8d79766cc23826b5b999c06489fde35fc415aefea09d3a6a737800f9c6042ad9e77cc57d8c26a4c0d0302047c435bb5006730650230222b6cdf8277fd663201d1c035c1502b7dcdd0cff199da2dfeb110144081049f338e42ff55b1bf57f173dd42f382c5f4023100dfe530f5eafd57b91bcec93a6f660b9a28f2763ea3b38d6b053dd2d5e075c82de7f243984bf9dbe43c55e88ba68bba8e0302047c435bb50067306502300284eb25175da7b168b62b35ced9a1542674cc604b8bbc40136e3e8479a5ea8c0a20bf740fb6ae8c788ffa0f4bf5e054023100809764b4caec893cb5fcfb922ec222617f6b6b44a5cb34a7119abde9aa3df18dd449b513710ab601a4c87ed712e8eaf80302047c435bb500673065023026a5b5aaf74c30e8152ad49664fc1341415c2d4a6c4469229e7f778c3630337b49d712cc28a8cb2a7fc7808dbbefeb3e023100e54cb8c0dfd0943b6041f97a184e043601aed515c9b0742636a0047a88618a41f5b951f1cf98134a60d5159dbad8b3310302047c435bb500673065023027abd254a2905e5380c8520c3c5b9e21f7ce82c2eecd8aaaf9480ef1aa3cd40fec5b52abdc7fc6d2b030e1f004780e75023100f76500443746c2d65e15fcbdab247c5022bfff53a5bc39c15f6b72eb7235c9e3ba773ecd7107d05a5596449f362f5eef0302047c435bb500683066023100e325294b5bc7084a0692b5dbba4ec621043dadb7dda449d1af5fa01408e05727322281190ec61b9024dea3b8c363442c023100c899496dcaa6e3a9cfc25e62846940fdf4918883b75c50b6b69042c4c767ec2b500a664a720d18893fead20af0b6cffb0302047c435bb500663064023100b19005e72182c5493633582aaf11dbaaad8ef2956ef352632e53133e76c48ef481a216c4d1e77a51edaef1f8a8dcd7bb022f5667ad1bf67156a134114335ed4d8bd01d48d38ec423a215ea86b0a905d521d2053ec9378ff4510b06fb832cfcc7210302047c435bb500673065023100ed8688f58167ddc15ca4e8c5dff1ee3fc6f7d4af16db08e10903f28a45bcfb80f692fed49398345c5c1457d4baf5f65602302435eb5274150485103a2160b48a111ce0c06d895cd3f4cd4d64fa9b3bf654d2622062e639015952e9199a049f95328e0302047c435bb500673065023009228bbc48e97432cf6ede86d390be2e4e8bc72b597fb0f2351a5ffa1809a086363fec7e7e907beec1e0ace93a87ae47023100d9971c4943a846997427e3db6e93a43fba632f589551595fdc2109b422adbf12e89448fd0ea9a378d129f7a23ebfed860302047c435bb500683066023100e332d08a1b2fe52ad37c46e09e2dcb7ab44db2ef4cb983d5c1c75dad3b8d14b18ecc83e562f38c1326a4a2f27d3a976f023100c1fd697ac7e2968e48fbb5df1f47800bc6ff4a5cff595fb006cb6f8a59eb8dcbd3fc541d604bc7b0659ec840319f40c80302047c435bb500673065023100f87109498e9eef21281846d909362760078eba980f6460746238c19afc4b1d50ae34bcdad21205dd6df4a1f3455db8c702307a0f125fd9fa2f78d351eae918fc14dbccf69baa4fa9277be76ba4c497a6f6d0c9b7bbb43abea5e5c1eb2284d3ea226e0302047c435bb500673065023003e24345ee232d89a0298802babac9a2b8bd71d76484e8ed5c959290d705b96f6d6328ef6ca238240ce16c1cbffc95f5023100e79bc602412f32e3e6e4380eb784bfb297ac49e095b14e1788eedbe15fb5a450c210ac4cc6b227f93893785d13da8f560302047c435bb5006730650230424f956a4bf2cffbce134c82af26585adad20456f3573080d59e25f16a9b34949ffb45730fd526e2a5675e6f4c15a12d0231008aa646daed228af845f2f8ac7a49b3b5c4b384b603b28379890d4b8f7418943d8758fc0793ac6953d49a62efc8d1792d0302047c435bb500683066023100b5546dbc1a5f804cb4f7bcd34c8ee582ea53230e593570963205d7b47ed2cfcdf189f1fe9ed0711e6c7702a58da58d75023100a0fc50dcd26a7977841f099806da2de8532148b7cb898dd1677eaf7e355661a0a06c117db8a527c1685978787210942c0302047c435bb50066306402300fba88affed3f9fc0badcf50beca841b60b37d43e7371d3ea6d6af6968d5d3749e5752083703239bd59b4b2033890d40023071975df95664c41b5ec806795446eb88f52845eac367147f483dab89791bcf1b8c5b7620e3590d544a6266d012f9f72b0302047c435bb500673065023100f29ad2116a27f818feed4ac6f4e61362c4d61eeb88a83930a2d93de68af47321ca854ac1c6200f326ec08ee5a7475c8102300eeaede94c7185e76fe490fc0f7ebdf592c0607cc5806ec7f6654bb51f31d9737b9ce78f32af3e16d1506f2eab3ebd230302047c435bb50067306502302613e41847e1f573a6042531622b840b35b0c6336c7bea5603a14c4c3d71427a8e4292d04418bc44289ea68d1f5b09d2023100a121316166682dde5e66084f5348785c8cbbee3b5328e6b1cf519633b8b734a5732a1e8d0f2d1f683d55843210dce2940302047c435bb50067306502300f02ea901b2ce376208cb521721995ee8a2d0bfaa754eefa5a72c05aad53444d246a87fccae71f44d5ad482680e5e067023100e0a0a1cf38a862d0e0f8e494791e1e4101e08747747d8423d5beb1f5b854da5cc648a32709a2288931cdd3da0ead00870302047c435bb50067306502302429a1c675750c499b2a8e639c38e34753f2feb8c1026082875201871ed7f5175f0f2e5ddf1cc4a9014964bae90a0a2c023100e4b6255f0c05eecc97efec5db34d9dfd95fb34cf3052c5298e1b20e3d3cb605fb99c25063336e50653b7a74068242b8e0302047c435bb500683066023100ae5bc09cfec8a2448e0d3b5d0ff5575886b1f14e4c84060cfd16ca1f1bd71e10d78efea26fa1c7462bbdae1239989fda0231008c714bdc012adac73a29da1dd6982c5892877943b25e38d1cdb99e1abef745bc43ddbc47af5df3b5a95edcba02c7952d0302047c435bb500673065023001e30f59c040863ea04bb877e906af672551ef513794f4edfd6aea3f08333dc65d00aa5e1b7b846ec8a5e15861ab0fab023100dd11ad178bd3854f2ba430e36cb35a28ed2e7c273340366b1e07b202a8a7a4d81a50eb056e26ab45d857af79c02bd9b60302047c435bb500683066023100d196af7a010330fb9d9a5db354ae45a31528fed952905527eb3c91c865c8abf08cc9d6e49666c6e32251e76e3f72bbc0023100a05af869ae7f2ef829646f7884b127bde9fb7513e405a0535f6c67b1331c6071556ad6b434ef18cf11f2b38dd79f1afe0302047c435bb500683066023100b5917e278f5706bd530727db13bb9d06015874330f6099a26d8b245b470414235d4027cd6cfe4e2a45d2fad88d136246023100d89666dfe013de940502a11f863f0f2d7f57e7d6a03e3d3b3ce71dd0fea928909469ed93811685da80ef2153eaedd4470302047c435bb50067306502301ce068dda1b1c7fbafa7524e99824e1ea599b57b999efbda3d6459077c781d5729d3a69dbbb759bb945b5ff62f6bd0360231009048050a540b125176241fe84a2d8e934e03f9dd665ad3f0f2697c79e2d2cb535a96e7787ec3b3144f90d1a7f8afb7be0302047c435bb500683066023100cc094a717f2f47bad6d6f118142bd0de29935405c9176b171aef5292c2a05f783adb75dd73edb1af80d285e7e7848d3b023100de087728e1a04e237a8e1ae7bbf4a8525180e15d478d5808bdc2887632ddcb19bce1955226163a9ea8f0ed1847d5f7780302047c435bb500663064023020e27b59db7b15cceee97bd2f8daa34992ed004188dbbc171ac11c9ddcf4d4b26c2d47b0812e8fb121236c7576930ac702302cd9989e294097012fc0f1bf8b38e113ee8552e8ed8f1fdfbb89b49f9a4c6577351070005895b148f96fccd497cd8a640302047c435bb500663064023044434ccfb3ba46cded6f4290556fccf23ea27b58cfaa8bbf2987f1364b2759fd8858589e7ecff0871bd213702c0c81b502302669ebdb1b593546cf44e9afab8b1b756a908ec44b149670c14d6a53c32cb93a195a440cf20f8270a5922d806bfdfded0302047c435bb50066306402306c63726a71dc1baaa976ef01e84c38d94454dedf180b5e0ad6e6ec4ba4cb8024fea837539939ef4a8ce92c4b1b96de6d0230362f2393463ab7e823db9e1a605064c53ad95294c74264fe3d87f0944f58565c319ae7264d894f0a195b896b39abb1140302047c435bb500683066023100f9791acc80b27e714cdf016c492cd940af98b40a512de382c5b1adf93b33429840a7c365ddabd8026761af9ab0c09410023100ba8176f91b4088fa5f1ee64e1486f673487b1f7af565e71aa184f55fdfbb78cb891431f1ac9498f0ead1ed97b85530c40302047c435bb500673065023100f112dcbd7dbe3b2ece7d6eee6e014d4c38daa6b77a5472b844df7791b0dad01ccedb91e6dc62e8e85f84609884e3f3e80230144accfd120d4ca600e2169effc5276719d5d128d9b5620bd08c5c72357be7b88ffa91c8cd5835b0e74bb58798eda4250302047c435bb5006830660231008fb2eb9a724e7c08080ed35f035d91c298cccc992da6abe61c3c6bac6fdb89bd3cfcd1408882281b42e4e791149cb155023100a9cd39859e6c50282b73ea5694a652994d98a76f1f50ad7ac3338cc3d3f891589ec5aea9b0a91da3044ccd9fb372bba90302047c435bb500673065023100a1a4022bec6bc91719adf6768290ca19840facc6c366dde1471652d23b39cad9a9c9979f7cb3dcd87281c9f78de00a38023041c17c55fee656a8ae476c1624f2c2222b110ff50ff0e51fad3dd4c234e7e23993a47e79fcb6f36d3d54b69d2dc1f54f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e5b5fb753473d8e9ae06c52aa3315e4b5a52c539ac3141c6ea2c1b3948a51dd0313026eec7f4f3687190da59daaf4e09023060795faf83d47a5c581cde4af5842d7e7292e36e7dd539059ee19c1931bb97d7f076ce3c63b89b6875494d44ca0881160302047c435bb5006630640230724a1b398e295d5dafbf635b8db508255114ff3f0d0c14aa30df0200fc2d44be2708562600330e4265e31766882dd78a0230729912074befafa6231307711bc89a54b38513b17ec9692b3c4b91db1f0c98c0084511dde295349230e8e1ec50a95b6b0302047c435bb5006630640230214cd563f713688b447663f84a95929c56f4b4b2fd92d82e30aba9d77a3428f088d16b186ee0bbf6fa1febc828fcc51302302ff3836161b4b7bd92d8d64acea9559621235a57ca400ec80deb3582a5f1619359a18c7d2c98bbbd4f5c95d469b8e6cb0302047c435bb50067306502300c20babbb3d0089df606c0d3d741b8f8864cf38da2a9b674d7adc5717b9a924e1fd480eac6ff0823ca86d6833b6069c2023100c223c998b72c74d17f7265d0c75aa68e6a49d1e63ba0a6995ac655f2248d1f95a235325a904d7a2512d73736e8b2b73c0302047c435bb500673065023100b62129e72d62bc010feda536d17aeb74ce2fababe60a931d279e369fd3ecaf54e3d7fb6ece4350f47cd469b8b1d2bb460230420976db9aabd297db58455978d117457acffa94a66ce8bd3f0a75b324ffc1a5053b27afdff529ca17d43f22419923ab0302047c435bb500673065023100878e247481799e290ce14a8da746bad20dfb4433f2787b4fc378570c47a7a2e73dc55c308b6b1995616088dae322e3fb023035c5040052e4c9f68c12114e4651bb2a0948862f961527e62c0d859bad9958aa89fdd0b663635df66f5fea68b2cde9080302047c435bb500683066023100db1102d54c07374a4420c0c4f19d816eaa77fa7fcd9f34cfca3bd3b845221015f5a7cd079cc3a6c71f69ab46465dc75b023100f9dea0aeb4c0a9db090552421810b519ff2f715dc9165db1fd7eba2dee6e29106fec473af8d75e1edc17141b1c7bc94b0302047c435bb500663064023076b3eca1a5889b81bc58c46120a19019c3ebe954d4c342b1a96357ab956a67180f93402f14cee025d35ac8f647658eb902303d413fc862d532a722c037b2490215767b355a0551ad39ff76639c6a532275816d5d1eedfa701035161c6c81d7c7ce270302047c435bb5006830660231008f2ae9931aec4ecec481f909723bda7444b74cc1c54c6b204f4d394f0baa3b763552be01d52946c8d5cdd5466a755f48023100bc715a8284c42c1d20d622343e8b1d4bf8995f9c2bc673b8b02909199a6868c5c67c5d8d0953ede697ae22ad36dc18a60302047c435bb5006630640230248f433e3f01292272346c52f9076c8bf96c716695c0323920db210da54db9a5627a0887555c82e66966b125265ff19202305bc80f4d8452b91f2698dafbfbe6fb4eed043fa357761e9dde91dbc43932cea42d8f8e0d7cde20c8f8ea21d77accbea20302047c435bb500673065023075d7bd8c1a0202367c45c070b321f6da59bd2c4c51929af3d984b961143c3d88bd551df60b9e82c073ca664b4071d2c2023100ee49943591ff30eaea203b23411136a42b6d70944c2de8582932813941f600938a52519d4e5d513ff17b9a4abfd446cc0302047c435bb50066306402307efdb7c97c632e73f274cc483a72bd1579074faafb7dc75c96c1d46aa40e5118fd6dce2349eb0953a10116f1bf7470ec0230094c365e771ce4a7e69d1956c43ca6773f096f103130329c7e6f288438332806d4e42b8d52584f0007b54a24ef6c78fb0302047c435bb50067306502305d568ce71fef00f6ad6605e6434fd5a437afe7828f83af85feb9c39461fbecfbab876716270e2e4544c2d3181d5800c7023100d35c768abf220abeb74620e7f7585191e2da7a03d0d36a0c70663961b93b3cc3479c312d3d9b1f133bac2e5ab8c5a59e0302047c435bb500673065023100e48fd214edd8b30b8f0c16962cd60d488dedd291b0da89eb64ce5d7e48db1f971dd56511fc73eda802e19b6d237f6e70023067d38034415a3a178fe5dcac7519474cbd39965f05f665c0454579eafea8027daad82f97bfbbb68172ed0666f81e2cde0302047c435bb500673065023055b2237c2247b6bf8cf921b23d686134a17a4b7c6450999bff33c9a941979784e5a84c782f3a0e1aff858e0519088637023100e0c2713e6a6f8d83e3b99c75b6e4e10c0f4e76252be668779556dd1360488ceba914851b8cd52b1b143299b7ba4b63a90302047c435bb50067306502305d29da4359f8cfd753dff7b9d84d6d1276378a15a62213030e9a0bae7d3329842cb6a7837568b4c05ee733ac9829798d023100868dce2461b9fd176aba4d6d9f994c861949f1c437feec67dda2e733eb371301467ee21b6a84644b555426102a96b0720302047c435bb5006830660231008bc9806ae5e71a74cab3757559b59ffff69df7890258bcb5f3c3762a3fe78ca2da3c13dcb1e122fe7052358ac3e2f694023100a7e52e4e2eb5f734c77a70552ec4cc3252024015d811a78daf8fbca99d78eeca6fd7b4b9e0710bff57314a07290f69f50302047c435bb500683066023100ea770c73d7235077eeba90d03f4179eeaba66968b3ad3d1e681c4de7fcc15bb13f9421bd9ff8328f8a0a13e853ae71be0231009c002f092d1ae681fca77ccc015a2e7919e5d94546f165266d01f23c6de828fb23736e8c46effb11cda18ca98c5e6bda0302047c435bb500683066023100bc05245a1e6d13e0f444f0e6ea52163885d4238afa7032ed6c77cf1e162353813f87ade30f7ff5a96aa898d38d6c6bbb02310080b94d543496cf3ee3ac0e712274519715da92c50c97a49146e92bbd78be458c7adf1837d629d4a8c700a96ea408c5060302047c435bb500673065023100fd3f9753fc8ddcd55d7809796258b00966230a33d6d7dc79601fe30e2f19bd4b7af270a4aa0b2b743c12272c9ba87a4c023029030906c29632232c72d2ae433ead032d3341908fb3b604430ce37ba47bfbe68d1eeab8b41d6421b0e6c777d4529d520302047c435bb50066306402300f10574419556a2232f80297039ff5d8d4224f5469d886223f1dc6853db6c6c39f4240d45018521b40bd99e529c3e198023012f531d6cd3cfe06d39e4365b44ab07054968308b2e2a478aa4cc8b0c7caf4a63761f307738ef1886c34f7422ee1330b0302047c435bb500673065023100efe4e28afca5e72959e3e6713d3c308b55370f4806ee34da5d9840c2e12ac486c144b8c874dd16452762723acb414aab02301a792534143eb631f47a419aaf8cfeed53ec324e94b7262db86321dfbc760a63987e9ac2f95ee638ec7ae4e4903649440302047c435bb500683066023100ab47a0d02697577acacccab6c252c08bcfa5aa90f3c8ecdc48bae50d64f831f05a920436510aed7f981361e34714ce66023100a4cb580949e74b6b4bf101f25c7afc622e0ffc09cddbfee49eb2b1e8880b0bc33d5fbd1f1cf37654f87002775e74900f0302047c435bb500673065023100802d2f8809ed48269d0f0539683d5ec66328476eaab779a17a227de1f93f9669f0a031f0586617d592b3424bec41d75102301f24b3e1a3d0a9767a52a742d665c4de217f78fb6f6c6beb6c7fb5c373aac1cac49f0d4aeded8572c9936f3e436dbaae0302047c435bb500663064023073f8f603783611e9584f3a76660ac9a71b5245f287af7917566ed398c2a6c925533fe00bab4d9b38860f72b63269aa5402305d8ae66700ffba9eba91ba0890b31826f41810184843fe6697ee8d197ed167329f137806c6c1fd6281642face63a29d60302047c435bb500663064023069e06741e4dd005407169d497f7e6f41dfd60e9ef0efff850f40a6fd2993579d48cfa95eb805a1fe395c482c3f6f85d6023022e1045f1ffd8fe6fa37c99f62d7a7fedc6f2dec74554fdc53def59c30fe843e9ffc5450b2d1279ca36947baf9e731d60302047c435bb5006730650230716f0e4a3eecf533b4feb09060cd2984befa234a9b3cd89f60867fa32bdd01a5c04ce3d96b5e9bbe4f67c312523d44df023100ed23af87c03edcdd52c3ee5fbbc687eacfd194be76a66f41c34e8e168b394d5b0f8d476ad0b9c6b89a88b8e63dab1c450302047c435bb5006730650230190baf68063935e12c2dfafa8020a024081485fb2314ecedad4850605b8974bf6d196a3ea276d65efe1b9c4e626fba3a0231009623b16f23dbc2b4d1fff9eada88380218344317ab843e8ace71488ad83976ae474ee534dfb879d1da09d091ee563abd0302047c435bb500683066023100d0ac0e83a30c112b403c6b8808ecf7593f6a86d72b100ebf54bcd3da3d2588c5daf58531d088b5f9cbc963bb912b51270231009921a6f56631f45f4343e085245fa01e2f6ca352a24b39a63aa8c43f28d927f87efea73e247c7bcba7aa3517e6b741250302047c435bb500673065023100d820f66cd68401498b2ab6e2636b0010a1d5af15ea74d62d904c0f76f85b1b7b2233af88f220d203f6ad87afb08bdc900230555fb8543fddf1c876761c9df9b482fbc6f5d6651590a0a079d2c58e2014eae6b2eae091638ae4dddfe5aff6d57c0ed40302047c435bb5006630640230435fc49a726a16919c101f060b9cdca5de015ca182b45418609150673a46cea516239b78ced48e0720a48c57c06be23c02305ddfecd5a785998a0b8c06756d01609510cb5e0632b799bfae06c7da0cbe856ba5ce2522fba5ad2e38c142ba67bcaee10302047c435bb5006630640230683e0dcf4cf795b4d34709b9a98b2503f8cffaf51f0f24772449dff33022631773aed579192b3bc8c2811b31673750a0023060ace5fbe1e13564669c77cf5f42045fb03eb793aa6fc0e3cfdbeca9b9f2e839324b9e5cd6a217d8ba56c8a72bdaccfe0302047c435bb500673065023100ed9b74aee922f0339d2d7ea0aecedc66f0f54b30b6047a071e40a255df08d9fb8780ad1157bc315d95254e0ef3df5562023004465e5e96c86d87cb6565dc916d13d7a96006b7f0b72383e0a13d4184dc900f3a7d54ec1edd1666c6c41563aa5c19bf0302047c435bb5006730650230708419c84a2f4d82a7c3c28c2ba544fbd519ceb60e603f62b5628fa5f3ed7dcb1e49fd69699029272c96c5e8e4a3f4de023100add8c39583552da2e39c1dd82a72cb039860f331573787560b5b10ca8a81da048026f4661e17dacacc4f5d459806edcf0302047c435bb500673065023100b7550d4f6eb247df231c952215f8ebf38cbdddd02aa1894cc8a8f808f87d62307a444bf7857b59b5290ec49362f3663902306051dce68a71980a715036b9d73184143bed4aa34e15c5c8c30956b844b29d46ac73d48143449dab66a6a98561d6700a0302047c435bb500683066023100f76ad380b80a42977751b14b12149705ecd61d53600f2ec542e95d8ed77d422e5bcc7bbfe3d0c1bdf3c8e74c984e852e023100ba37dacc41a09c053efa297d83835ac683aa66800e047dff2b7881ffda694eabf731b3f8ed0995e72a4b066c5173c8630302047c435bb500663064023034d85dcc4c693ca906230cce2342bc84318ae1917e0e7476f1c243db1883c3927ad0e3c1f73251a3c370e488ccc28379023026ce34e35674031375e67bcd67197992ab5ea5efce373024e63c57382d0c9e18b82ecf5eed01e4235983a9256bfdcd6a0302047c435bb500673065023100f15584ada06fed69df01d4171f4d47d625c119a994464aed363abbf1e866cc8c61553bbb491b855b0aed4681e9ef6f1f02306337fc3e78059487b57c415b116b4d6532ba8c3f132289c6ffbcce713456b4a4e03271764b2d33be40c6e5cb10c777310302047c435bb5006730650230403b04ca55dac5ae12d696faa07f36ef041049d168258befc81dd19c8418639e8bd3ca2adf5ebb381770ec2d5426ed9c0231009eb683853b9abd5cb0cee8eaf2d52168fcf2269286bba24f5b19eab48667a416d9dce3edacb0e655d92de80da00998030302047c435bb50067306502303865617083044e0da56f7558b42d9aa18dc3de2f08b4d38dbf9b603ac2b3a7ade47630a9a0a3bd6469ff27c4ce982133023100b6ab4913eeb31c7039f505ed505c749030be94f07ee7f14f33fcbe443f36301b0c4acfcc4d047a24a7e21de7a979b0620302047c435bb5006830660231008245220e6ec0fee2cd62a705aaaf2ca5592ad88b4517acc659364d269114ad8dfb00b16d6b123176f954cf0ea028f2150231009630461e15a0b3f61a8ad187c8979246187cf7de971bd7f66ec1659d0aff73105bb27d6b3bc8dd17077fb959d089cb8a0302047c435bb500673065023100b89019e248710522dc73d512a7404c15583eee8f241b47595cda3aa49dfd71bc62fc709b73a19b780c2a7ef8452c7a33023040cf3265a808e6b7771bfbf0d35649a6690378c25b4d2643bcb704fbbe55f5c0ffc4aa6a7b8621ae1123ed832ccf3b670302047c435bb5006630640230484db0756651f630f1c239c011a5d086731ac13bef4f3e2139cd6df04f5a3383a33e753d511a9c1228249d9db789b16702302276ef61693b092992f304df73cd833299b8b6da99c7af3ceb2f636691efb8819ad20941276d03fb31b500d9dab76b830302047c435bb50067306502300b6f1287f13ea08f10929dbe172c6d6b2b70346f6ed024c581b4a8d9694cfecc1444882e6b580746a56375e6310762dc02310090cbf71aa15374729897c71fdf0cc0f92ae041140aa23c7d3e2ce0a2eab2ac3328d5e036a599849d54d14a347bd0bded0302047c435bb500683066023100a077bcfa3f27d7b719c829fa9e6c84d9a24c017a7ffa37bc3e096b8f437328320be16ac6f672ecb243eabcc29db1b51d0231008ee802e49ee9e81e80eeaad304b7cae083a135444bc6f85faa2366828fd39531615b135c99320bd945e4e93ca7f9aa950302047c435bb50066306402303b6dc2f54820c6909cae689a739d9820c2ae6c4528f0c6a103406f3fe749707ebf1c225f96a1a2c88545c7cbdc10c8f402304f70987c676e4513f80eeaa8cc3c94b50328a736ef2db2806ebd432f9baf2569467a75dc8e43820fb09b116b84cd32e60302047c435bb500673065023100a206c290cd80aed6769557119d16b21a8044eac94af639a802e504a04b4f2c1f03c1ad9ba8d058160eaa7c9c3a672f810230045d9dbfe2df365ae6ddad1cbaab950d94f5ed5c1673c0083e7ec7eee547b0174f207f853021bfac165cc91207ca426c0302047c435bb50067306502310089eba6aadc56e5572ae54ee45fca8f9028b34b2535f327c9f37bf105059c574284ec78fb74a6fd7ac89ce7a7821e1eb7023034d92acdb7a6d68fdd01b8c5ca40974aa3f930f74b0c99183f32112fa67d1a9c81754200e0855df9096a0555087d695d0302047c435bb500683066023100a558285a8769f417a138e1ef5f112c0293119a8c29f41dd9f71bc05837dbaac25123c3f58b93fa6c050c8f063da3f3e4023100a5c349ba6f728ff9eda5994472799af81eda81a4979b30a65dd8be58e285d432fa959a67ed4384bfd88764cd4aff03560302047c435bb500663064023014d9712be88039ce4e43aed884f45d64ba12b37dafd85c740c38adb8301a04982d329818d759c41860a3486d1c75cc2b0230595ca384d81541f0590650bcfec332cb54047d46636bfa4fe3c000152f9bbbd4315c24b5cd28a98c55b826583c71c7990302047c435bb50066306402300af575946073d7de9595ef0744aae51165916e711916107aa9d1975db87bbfd0bf5b520906edda271acadd9b44964a95023074e94b3ecfbe3515b203f5e177209a9a8738954443967e5a0d34fb0406ad38b0f95aadb7e278f93ed44946f37163717c0302047c435bb50066306402303db2385ff12e157b89bec0a24f594528a8628e85dfb61aca15f1fde8c29577587de3de00cfe7b29671063ea4c2d064c6023061d6c1cd3bcc29aeb7e1b96a2fdbaa9780c6eb105efc94079d3850ac7e7629b5da0542b054e591f1904ff7b26469894b0302047c435bb50066306402303b2acde287a7b5fe657d7a8bd622679e5bcb97fcd6cf6dab72900ebd116357816c5a43fd1a70784b2001de4299916fa2023068a280c55c6f4d29101b99294c953e9c8592568b70cfed9e88548f811f1da17a8c020581cdaefae58ab1e40591cb06710302047c435bb500673065023100f6044829b73a93d03473cfa7dd1eef77a80506ed1a11b20d296b057d5572dfe3784e4d37d88d340f7666379bf61f6ee502305473ea980d3d27edc4f04783ec7e52d07bbf93c1af1183a7c1127aa831e8b561376caa4bf8a5d2ee7ac105b947ab84e50302047c435bb5006730650230796cccfcb7610ae69ca041b45850e09adbb750f2bd27a38f76bcfb0d72827e4da4fcaa70867334a39a4d2854a1d8111c023100c5c0febe27b3ce1c32f47e0b74212266ea63d677fc34cdb47a1a0dd00ecaf31a9a36bcf9e39c4450cb7c69eb9930664c0302047c435bb5006630640230736e83efca094a5b2159f90bdf72271e480608fc2d25e0ca69bfaff64cd608d15c935391bbe2300ec90393eeb1f5c8f3023061725013aaed26e3f2249f31bd81f7f66c67d386f8365c32b3639b5698af612a932530aaaf38ad5d72ab6c6969b3cd1e0302047c435bb5006730650231009a6282e80e9166d7310b15615ed8fff9c2d5c6183b1b6094f2078e8bf5d25c927b454248748f69b93d65a81765d8cb7802307d68dada3301e4e56993c82088c8657728b7b62e6baa75cb22d231aee4b67d50e5839294a973d8df774359ea265269d00302047c435bb5006630640230542c0c8dfad9af28ae0c2f1e5ac1a124b3a42c6d6d9c6b94d16d1adeda7c0e14485a842556f118624c63bab57188cc0f02305b4e6ab2ffdf1bc804813fdb565ffdd8719acdc5ba65dd3058c501b0dd8e3f925270a01ebd47b1dbe9ff59264ff058a20302047c435bb500673065023022b220e65e2d46aa1a283a1276dbc79b623ac1e8ff9b67ff593356a15f1bffd3406d57f60b39ac7b23734911574d4316023100eb8a7a47b87823831311ae9b36f6f06f6e2081ab6509358da2016886e9c1fe19668ec0cf055184881ac9f2e19715d2cd0302047c435bb5006730650231008bd8461f3b9d865bcb785c297428d2609aae13f28b71d7f4561dbf3a009b4981d34426840d9c4ee3115acf372e62a13902302b59ee1856335048c8d30a67b28a5dd975e4a0fdb4d69e0a536a89153480dc365b1214c8b1f3370a6391778c2e34de760302047c435bb50066306402301287344a052b40b8c067cd43c1cc9e04a7987a7320f30dc746b85c13e1262158a40ba9566ea210481a707591ba71b4cb0230067c3190ac24cff061217d604544463c7bf8dffec04fcea842ff7d08de93123c1cfd936355fd220c144a7d7e4c381e9c0302047c435bb5006730650230728c42ae5cb0e5c15e8edff09cfb74d569ab030d6e569f64b4de6b448a27c93e1fc88bdce5ec09beba73b11e634df70f023100925ff95a735974469d842b1431d154700f3d418425295b43e194430e0ae1e47ff453208ea64a15daa1d90acf38d2e2700302047c435bb500683066023100baa5ed461ac087eaa35755774f44f62b28a594da9155f544c91d0a859bb9cb7b8fc44f3cdc3fbe8a0fc9e021fa4c5f78023100d893951fae4b3ed67cfcf268ca1e60f3801aaac75941c324ee43094a8773a75606d3c5a12a3e84a3e79b960a509a7d5c0302047c435bb5006630640230481ee0ec0d7b24b2626899e13acd5972db33eec87e316ad8e5ab053dee1891259444079e4e17f798f708ca7a192bb0ec0230023f5152e39c4f9046897ae41d754f3ea7b3e51bc40e63988414c9f644d2dbb3e788e4eab9ef0506495362eeb30f70de0302047c435bb5006730650231008257bf36a1cdc597c3f3d98b1a8b61f21be5e4bbf95552dd7d1109481860960a9921c431e584899311840a39e88a4f9d02303b92e712a478e278640964b39c986579ea254e03659222fe6c59e951997e92e764e7e61c5a030edeb69fefce337232490302047c435bb500673065023100e6da88b3d79af2dc83331d4211c764361124bdbd50834bdc638ad771a4851673ad740400a3e68b7511b9b5fbced09b6f02304d807e3206485af18e5161abeb5013acea9b38e424dcbd7ab7a3f20eac317dd433acd719bb9a1d3cc86e694c1707aece0302047c435bb5006730650231008c478b3b0e3d592bd35d1848805abdb3e56273cc4357c02b96e0f226843e0a6cfd7ad7c6b8c33fcc739f3b18fe1846b302303a30d6c85c6517169292e3a19efd2d40e9a9b744a066caad3aafc4c6aed60f7a61929af13be28f79d28699607cc005f80302047c435bb50068306602310082ef72d74de2b7b3b29f5cd5948b8fe961780b9940236dc4b007d1e9f6f999e65e19bcda17ae3f14fd90da858c1a5ccd023100e2e5be1547beeded15adbed005441e5553d90676a171da63001ae0ea3acac6db324f05d072fa12471560b5c01ab20d3d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d047928d75040f8fde4fb857cfd281e2251f988107f5ea8bc5fd7fbf4b282e746efb845874c361341000558fdf0c264402302ad3706fa325dd766ca2e5edf7c61d5196067582149483722f584cfc7dba1d858582ba8bd79f15989d6db0baacb519e30302047c435bb500663064023019313a427d45ff1ef6e7da63b6d224d13962d8546ac60030261447597931738fa19bf4198ff8c9fd760741fe0ad3180902302e6898070230e13deac73a0fbb37269ca44128e28762f566f3030ccf7b13b1a544ece25dcd7f047a8fe750506080ce9e0302047c435bb500673065023100ce4a8ebfd2d9d497f5abd1290abae81f1d35a4921caaab357b2b2f865e3b00b53b2929cbd8d031551e857f2f06612ea80230219c4f471f2b01ad0452477708cda7a25382280bac38848bda9c09f0fe10c44c2c9d193cb7c7c0514f3509fd06ca42400302047c435bb500673065023100b8191ef4525db0fdf732a4fb44db2e61974a7a7317ff4a709ec8431b27cbd7f1863e70cb022acc1aac64023fe5e855af02303bc6264b17f266fe6bf3e1cc4c47cd4e2e6f24053b02d461e73ee1a3faf02ab2374e4ce3ae4ce4d3607374b72a105bf10302047c435bb500663064023010ac90c063ae86cf46913a1596b1d2bd93f0cd7d267f21e7190b7bb788842625029fb577b990c2687b697811ff599aba02307d43af1aedb5e23d4a4552a39d9efd6549dfb5ea028846a7f96d631fb174c29822b7e72038b01e9ddfd06529565cf9270302047c435bb50066306402303d11a09b9656f5eb37242103c4c27411f131c093e4d12ee84b7a1ba2a38a015e519432a9b3b4b47528bae5853e2caea702301105eaf819c6d7d07ac0f17ea3747ec8a8d4e3b4a7d9df2916912a6e48bd6009a6c2f97f11148feafefeb04fec7721b60302047c435bb5006730650230150aa9a226935d0e15907f830de40f6576ee427b9cc1b61286478715d0c8df98a3ded83933c57d57c76822eeba940bf5023100e6eb201296b31d0efbaa7114bf615e95fc3afff24ca38a510db7453eb63f14cf576e7ed5a9fba68c9ce06fe94265486e0302047c435bb500683066023100e06836d110cd846dce7adb8f39434a028c859610cc06de323d5975f1363be343902692e7aeee0a2e1c711f95764a028e023100fa4e9e7eda25b88d45452d5b5b3e8ce47a305c26d19574fa68a5a366744b0758a3d54f36ec0fe42125a5bab0a3e7effd0302047c435bb500673065023013840bf0b546007c33e199735467d31aa2be55248ebb4799ecc18dd48a2a4ef9675f337498a5c63a19eac76f95c84603023100c69bc8a343160181572093f35f0f67d6579d016fbaba113215d1d8eefc316a2ea8c9593ad1a988df81df8e333fa224770302047c435bb50067306502302e0c731b498e33bab17ce7e0beecd26f7ecf78cfc293bd800b97bad8ed94d814f1a57b281eb2c75f1b0001baa50bc773023100a15364e9124b485d38b2fff47599b0867a32fa93c37da3cbf36872590fdd18559e713b0290ddc65d2d20f9b8c6686dc30302047c435bb50067306502306311f7ae44912ed873781fe29b31398468290311e3b914e016322ab09f01d2032f244ec3b88ea0b2f3ed2764c66298e9023100a4aa4d62474a820b33bdab3b73a5f2e46abda419e89070ea5df4248ff7419652b8251e870919e07c1edfce7e05df6ef80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230183e488dad8c698216690dbf586780854478de5f9932da486695fcf031458536c6f441ee42a0a4ccbdb08ba09d50a33602307c055f6f1ef4469ebfffb9e50f98dc1efba7d9f478683a8821a0615e83f598fbd5cf032a6812d6d2d8476a03a78398bc0302047c435bb5006830660231008f832fd4b0d3faed573868368f27436dcdaefb2590f1c49bafef2fbf8729930d1822d50ee7516318f24f569a36045075023100fd8001db5499c7494890e70b3294eee809b2947794489da8d2edae427fb145c309aa9bc57233eef94dd1944ba588aff70302047c435bb500673065023100c1e768a469616666a96cd1429cc3e3a758ef106434f5b30224a0dd29156515fc434089602ed5292f7858fea6db71bcdb02302a93eee69c253b11d2852e7725b5f28886375a40f9d1f5e64b272fb92a8c9065195746f5bed594faec49b12e55b110f40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bd50c3921abf8fc2a67b4e73998479dbba6ec1bdf635be3f75837e40364f3b52dbc10aa1574cc8b082dcab0eb5dae08c023100fa941c338fa904257ab221ede56593b09d2e99796893793e6db021f9be1774d88ca640a3c709cc4829e60483f542ee8c0302047c435bb5006630640230210e0652ea8de3c14e08da6a189cce873602895095a9fcf16924339ccbe7de083ed10c5932a2a8a5f431bd17b892ccfe023000b9d18e36d6d758514658879e6bfe756e8ce03bc23d293df22ac18db5ac536a3945592ee535bbcff6815ae59750062a0302047c435bb500673065023100b16ef002c137841126062b539ce46ddb3f3ca6c618ad68fb494515cb170c80011071582ba4b535f7ce3b84432503916802302b7a19e0306c6940805298981ec801118ad8de9a041d3298925b111070221aabb376693a94b9105e585336c4bb3bfef20302047c435bb500673065023013a8191522c83ffebf8c6cf86483e657bc8e3efaa36a892cbc4687e869ec40dbd09d36ec9614b462a4a7a0be279b93db023100f89b00caecfe152c980413c26acfae438bcf082f9f467c5335ee8e90bed6d8d9c730f7a94fd387a03be0c58a8494cb050302047c435bb500673065023035a43908e5e3d3d169cb84295be5c103ab2361f948406906c62b6bcf0ebf48a352bdae5e9e91aaf59e686ef74c69d4a102310094b32556bd215c8a712084641b548460c995904030ec4466f32a8f1268ad7a2ab4e9e95e44fcdc5efc684e23129f7ce70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230520403599246bc4fef690eb941045a2450ee858bdadb7d230d7b3368f36061305cdcac78e0ac7d0191b02adfbc1cdd58023007dea4d7e75516e5bf8f0f7b2e6fe47f94f9a1e7db96836586ef452f5104d9ce14c65978a12b7186a3f50b07456850d00302047c435bb5006830660231009bcce7ed0517bc511919c842db604b66578ff7acc37404670cd6ff13a7a6c5dc88c864c5be013051ef4b019b8edad224023100cc044344a3e6c17b6d4eb253564737bf70b85c3f2fca7727ed7da3de48b0c6594d7bd82102cce56c923110328fb08e6d0302047c435bb500673065023100def5d33b8a278a45297300e135025e41d95d768480e0dff701c40ecd21d93417df007af6b00c2a985d02654f50fe65a502307dbb9d2fd722f7286a09c5aae3b7ff87a66b95e79f58991a07e60da4cb807a23acc9b7d000e31a814e4a137ea878edbc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230581438d25be38ddb6ead25b2f288a847cab876bfb5466078799c7d30ca28cdca8635cf3e6414ac79aa38b3cf53408c2f023100dfb20a005e43f8923ab4a28e6c758e58d7c8792d041026e2e10eb93f2811591d3c8d72bb8ef083685fc73766306f0c720302047c435bb5006730650231008b66c9ab15b964013d44c83ac57a65385ee011990ab6f95c091be84aafc3206b005f378d7ffc88d831c95dca53b2da5602306cacb8b34c8608ae5e1df9eb54de61ff2cd744ec6070b84bf288b99e0c6a1177628e030653eb374930774227b204ad660302047c435bb500673065023100b6dfe16c0a53c2de440d9b9cd306fb732e745311e2000454e553f4df07735653bf165db140424cd04c60956fc039fe6c02301680596d19382794cb7b7a2227a44e05bd87a7ae6e8d93c9beb78872e8708ddfc9fdf10267ab0a2bb47a10009ef9112c0302047c435bb50066306402301f76e0fc46225d7b6341857a6bd811965d0320ee042a33dfc710a899c20d48fb2d87971adad3873c4c4bd182a9a75f2f023021df6ff497d4104b6dfcbec09857824a541c6f3e4e590230f83fe05e7966cc4ced55f2c27ab60c751c6285bc6e432e100302047c435bb5006830660231009f714dc286ccaced485c4e44cacdb5f0bce8bffef3bda1c98f655efa66c31db2fc1b02a9fcbda3d44bb9f088b4637db2023100a7667d9b983f36de5f367c5426d000059f183348713bec3445a7f911c941714dc8f98898569dfb3ef018cb08d20c3faf0302047c435bb50067306502300bda99ccdc7fec19a19fc2442483a2f08664c82a8d893bfaa4f9e98ec6e133478d11d40334c835bf15ae46e17440e1f5023100f7d5846af30139ef9a15d188bac2b8b045e508cb7ff973160d126a2d2c2e1ddbb694aa89da4458f750115b3c88b2fbfa0302047c435bb500683066023100b4bd7b58882992d4332e20681dc1a9c4fa306419426ef6db99d02981a9249051a9def95a5d36920d153faca23c3e57ee023100f2046c13755af75dd020278acd11cc223b6cfa980278feea29137c938cbb4023e4132fb78e189ba47b760fcb041c66770302047c435bb500673065023100f6b09d112e15f8ff42ade9e1ac19b18f72401f050e3e90319a3e4b6df95929a50caaa172ccd4f9195a727e51dfe00310023023aad4ec21eaae2a3983a4184b97546a31b7a6a59ed793badc43d24c4c974b4ee4d4618ce0bd9eef4b3a11d82eb223d80302047c435bb500673065023100b261302ba5e556c88bfb1b968da70228a0b6c66d3a6a8765128a20d33a0077dbe0c3c8e14bca2a4a3c84bc748b910cc50230092b3bbfcabdc90997cfa0dc83d27569cb79cbdae7d37e16c4e8f60ee530ba3399b8c40035010a780b08177e37ebe5280302047c435bb50066306402307a9d2b3b06debfead18a5b9b89468095b39a7a5e0b7b80d4a2918f0c73140ed3848b8be1ea09c0666205ece35f14c1f002307e5c9bd10b3cf0e3ff9b02f3ba7f75ba4a15ceeaf3828cbef4d1185ecfb0afabc399e194206e2d74c9981748603164f60302047c435bb500673065023100d1170487fc5132ed7c8b7e38ed7af1e1ecb7c096b571e71dd4628526ef7d3be57aba1d95a5911bd06dc42b3161a6bced02300609128ddb560a4bf30ceebd0ba26fa64f668dd2f83aff5c015faa32ba09ef6cbf47800d1ae5e4d7c000abcabb9def3b0302047c435bb50067306502310088bd691cf2232f12776e0bb8cd173d74444a600e9a20b92bc83f1d4d893436d94527e3eadedf5884653d236f8eb4660602303c9d4e82d8c30faa86bf48d7dd8e482771322d666cfdcd8867d91fdf5c29f032a07aa34a94946ee8dd5bba68c74e2b300302047c435bb500683066023100f3b04f82bdee6a2971728863e3b23237ef62006acfcbd47f61392805cae70ea60a5ca4e6ccb3c24062d21c12ad182d9a023100853675d413b0e6cf820924dcd94027f3deda2301c47c4cddab9eb2f8aa867ac9dc560938163abaa07db6b0345933f8890302047c435bb500683066023100cc897f3b4d6709b2607dd64f7983028e15c9cfeb7de01a1b4b8b89607e5cf83960f70b5f1391c1f62280f68e77adaed0023100c609afc0dd4e9d89912c69ec331218aa2f366833e5c77be5273942bfdcfae633d9a8342b3a7dd440d65f98f0e8116b820302047c435bb5006830660231009eb45b92158b1c5c39ca0d092af63627c81e88e6da302880e065026e363c7f99a73120a40545a13ed155b9da8e9c318c023100c0ce36453e597df27756b332ccb7cf6dec67622c166cc52af981685314136f1e50339c9e6f32371ea6aaf87f380e73210302047c435bb500683066023100ecfa1e1eb51128ce5bce9d8a29bdc5a662e9c088e4448e09850e1eaa414fd582cdb9d62c64617b671dff68c5a88a60ae023100b829093d57d8a12b6e2e5e6409749c568b6152fb29a36a8157e9016c7f15d13b1e63e27dfd897d740e9c4fd566e210f40302047c435bb50067306502306be5b062d5ed5500f293949d3b11d38df868db9969d9769acec3252e922967d11ed46560a702e99aa258157c2c470d5f023100f0095551325e34eeacb21ea09751aa6339020e9cdc5d250ce7563117c552c67fd1550b258b430db51091aefd2b3ad3e10302047c435bb50067306502303f2dab370739d13accce6674920bfe0de760dc736f855adeb92bc19f32885c2c66db314aa74857e77fb4411e260d347d023100e5717a64a3c510a2c8cebb808656c8658ba55648bede6f78f12ea1f47e040ea22c4a08c42c4aaf42280c2efaa713c0c60302047c435bb50066306402306943b9e16ecd3dcf71a712c254d24d0b2bc859dc95def816e5e9642b135166a03bc156486c0d7315256eafca337375fb023046f168cf940c4d8d804732c4a0cd8f4da334decf199059fa93b5b0450d465ce535596469757dc9f8a523111e7fd102d40302047c435bb50067306502306ac10bc4c11e018b6c79e5293a94e0e92329d95073bc07578cdd6fd39e6d4741ed0392025c8170139202dd9e701ff1e4023100c3d2771d9a03bd775092ffbcdaf8b373858586f467ded8a672407cf6e6f8dc054f56bbcea5acd0ebbdb3f25170f259980302047c435bb500683066023100c5fb4e8f7ebc140af86d46bc2ea3d7f90da55c2eda1a49632e8f5c7407dfbb8679d51818438a6a11378150400a217daf023100b333cbff0c2b8d1fbd83480413429259bef5485770eb3b77e042a3348c79f941edbbbbb78c8c6fae7e6ac9aa5c4e9d810302047c435bb500663064023038b64a4772f79a07b8b5174db1bad7e297f5fc001db9a777f3b26b9a14dabbc95a7d39f3e1c094bde05b44a373f7ecda0230026d1d719123210102ecaaad33945d3249e2b4edce56e167b13f15adbbfd572fc78a4d41a9455f75c1dfe5a6da8fe2400302047c435bb500683066023100c967eb316b80485d6c1fb40b3a65519bec738b6087cf6b52e825fed115ea27b8036156cf881584230e62ae54244b31ac023100eb70ec350e664e8fcc62de8f7bdc0943f48fe66792187de9274ce6fbeb8d0bea975adc6d2e4380cdb26b0aa09302017a0302047c435bb50067306502304db63afa61f97910845cd54b61b2f75ef6d6971786872da5e5881d452266a12848cc70aefd798931aaea4e24f1c9e0de0231008628197d38525ef4d8ea617e8c3d7bd6249c0e328ec8bb36042cc18e19f9510c7b04677613db7acb4d81fa27bfeb64ff0302047c435bb5006630640230500b679d3b12b1deeeb464a3dcefb4d28e8157b6617535a93391d7e646197cc9e5b8699d6725ead112fdbcd0b1f0401e02307359d9af92e12c5fe67607c91f02bec975fa64bf355817035133ee03c2959f36e84760a6b736fb55daa0e75324fe81670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eb504e9bbce4bb8b5569ae0c1b8e774528ce724e42a7a94c9252c77a6a1712f73c4c7936caafad2b0bb7e1c86f0da5cc02310089d9b51f02af878fd70eea3c7fa8affc8c9aebbee4185c3a1b062aef025d462d06c28cad940bc9a3fd5a6d99d0044f320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304d1057bb877e1b8fb45f39f21c83cbde03e14fe66741047d6118c228097a6a2867b40af25ae8fc5d48a87f45518c6be4023026bee1ee0caf59cc1b0bf6ab36f6e78c92e4de4bbefd07ea0da7279632975f923339c584dfb90abcfaa5e82c97a8066b0302047c435bb500683066023100d1164e2a7f570a5390588b24639623d6b793805415b13e07b6c6a79b412544f4038fb2db016115506d9358b8df4af8d1023100b50190bd201149f2592159742b5be21464ec57d75c937336b9e40a11796558a73453bbf76fe30c59d43fcd0817d920520302047c435bb5006730650231009e14b6aec9209121f37435cccab47eee28b1170c9be83de60b652ed8e352020b391c51cbc481caae678fca944f8a894e023074bff49a424eef1819dbfcb9177dc2621d37efc4d5cf53e01b39e2e2e3ba7a14eacee1f7ccec31740fcaca4a44b4daca0302047c435bb5006730650230017ebd8b771c7dd4e4391f4e524069508a75563d7d02f64968573986a437c64c9fea5662a3abc196e7d8e30fc1be9695023100c1199cd821f54772f89b27ad30b46c706eb141355eb175d4a97612e043d72f20eb14411dff91d06192b2c808178d3fb60302047c435bb500683066023100da8634447c93cae97255faedcbabd69f45f98a2fcbe770f972d223783055e8f6153e2d2021472e94a75a8627036ac04a023100ead47929245583a552efbf29de5b43c3a83d902793e91601a0a7c182c8750b66b9141b96f0d3bd66e5b8f53c8ddcd6870302047c435bb500673065023100c5be06e942a6f5f05b61dd6088b11aaafdd3a90bba3d2de520f740fb088fb3a9662e167f98915f707be217a3ad05632802303f82c3caad00038496ad531187905e7b933651d7a80502d30063a87c6b0293059ccc26435c0fc83fce9c0245dc8ac1210302047c435bb50067306502302d760aa7cf6ea0fc5125bc8e22cc895490d0aa4fc49517efe5753b9db67f16b254e5277e8ef9b04e7fd7b0b4567a7603023100fca2ce9e7d2a4ad888a389b7dd83edbacb002297b7b6884b6fad0e90cee8199b48c58010052520219f830cc272e0558d0302047c435bb5006730650231009e57a1085242b778c28c512718d444a57a8a71f12d1338dd6ae9c6fd955a1aebb14f97fa069a8e6f486c15c086c5f526023006c8e17d4396f21b64c2e71b79a9b123b510ad112b5f53b2866c60cabbe06d3c71d9dd731502ea43f91dff282226d86b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bbe3c3487131376b21c21d941598be8bccbd6277134282eab30814d40a0ec79bdee255334cb8a1dbb4cbb6b99c9cfd7402310098419a8aee8cefe733543919ea5a45e67fd67e6be8ab0e7e8ba2eda943ad4cd0325001a49f9126308073b1a567e1bdeb0302047c435bb50067306502300a503c7a454da095a36e418f3a27eeaa2a341f2902e8d120a97c0d55bd4c8975bac6fd617bb0fd9c2ffa1dfc5746afdc023100d856764fc8684d38915f1b710e2b99201fa36f8881cd69fa98548cf32bae836935c0f3ed4558a2021b862f9c38431a280302047c435bb500673065023100d4974ee2b0e032841f8fa8552900826d3bb8f6ec0875387d0f6185108c8f1c539773d0f5d0487f9ed13d9f56ff215a9b0230412fdbbf406745556cccbd45cb1245851b0feca331e05ea4b3df474d63c695a6e71ac46995e658ae760c6937a0c515650302047c435bb5006830660231009baf65a69fdf61bb3c028f7b56917e1f662ab7c4948d37d8da74356df2247da2329cbc4276d64b04748476b37f0ed3c2023100f9bbe25961fef9ca1c30f101a05d0a8e6bed179907a0e906c1d9c6062e858cc537fef61ba4de544012c46649243f1c770302047c435bb500683066023100ecbce93c79769858724d0ac28a38c8f5fb8598420ecb8af0b866c62f7c39521717e2d96bd2810b59cb74c669f8052553023100d8c50e429540c7d4b1f0396be6a2fc4faef16667c3cd2cab74c04558235224772cfbdc2fe395f24ff797629df000583b0302047c435bb5006830660231009034892f0601a240351a4e8b6fc056b7ad95925ec57a72f95f7cd015dbc68012ca1827296db008b9f7f24e59ce82ed830231009996f2a0c54ae644dc0d7fc02e70bd1c692e1c5aa2d4dedaf59f302d1a0cefbe6267dd6a28df60af029bcc3862c103e00302047c435bb50066306402306c0008abd9ba47114c7ce0b8a53a62efc8be58dfc641ff159f8cc0103e8de1244ae6f3e8dcdf34df4562ab60a7b621de02301dec44fcf4a74042a1875480509502225a33a736c708fd9bd6e04603bd959c564201e441f3db48191485dc90354979670302047c435bb500673065023100de1ea3c2d8839d315382eebed1be4b169d79968585ab0f86fd9009d0944617c86a90a923da1c4e3d69be19046e20851802304e997d031bf9115ef602b4ec0f6a27041ab7f23f6dc65bd4641104ae19981d9c82dfbb8b8d50bd7e8d06ad88c4b463720302047c435bb500663064023005ac17ab933afac43907d6470f9491ffebe3083bc6d492cba8d473788297f5477eefa29d21103c1a27b8b953d440c7020230283bc0bf44226585e84a1078ecc35b4dc6e181f4bf816a347d6020f51ba957fe7753e9b1c33ea43a8c4da35afb255d610302047c435bb5006830660231008bbb2855b7082179b2405024a24f12179e38b5cf8ef52bec9fed5c4f7ef3292b903362764eecd24b94fed4da81188bd5023100fe09eca52197664885b5e1d7d289d4ef408246997de5ad7663c28e239a6d4be949620766e087a2e800306e1d0984e2ee0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301eca25c6944f56d5a18aaaf23ae486877ad6c9f18bf8cb0d2d841084f2c7712453ec7fac1ebe2d26d70b61fc739bd17202304ac60a2ddf610c991132e73d57cb2987eff5c57961c78782a30a560f124ab2b3a7e73f89ac6ff109c8f969b651a9d2410302047c435bb5006730650230489b9e84a7fb86fe37b3253854a0cad1cc422cb7ceefa91bae5d75348fed0beaee5bc48842261eea790a66e0d9a53c6602310097fbc6937a7ff624331d9db12b7993ab7a79826c8f8babcf826b2fd20affadea6af7f2f4a6a9545479a03ea46ea3e0cc0302047c435bb50066306402303f9dcbdd836c1a7149c4bc1332158e6915feed7e506130769aae7a9f3264de175068af18bfc9c4e4ec3fc994da764177023006003d6b77854aa020b81087f9426ed89fca833d5658e1987025629b8a5d167e2c41a2b124f6315f0d39223f2e0e62990302047c435bb50067306502306287b92f963abe8f9cc85053f41859624455a78e22c3f0bf5299984af71518ea5d521a96c3b42c8afe9686cc72af6c2a0231008fa1e38164562498f583df1c5e1e4e180b3fb8c9442443e78374da7c12b3f7993947eb3e53f63cd821787cbec63d2e130302047c435bb50067306502302632f38023db4722d05e7b22821450edf1a9e7396d7cba6d74a2b09422331750f399fb93042ef24a4d3da6c53b86dbb30231008a25ce96de63082b13ef34f5eceedf626e3bac2a195d7e21e78ffd577c8d03e9ec7b82e3a52406695838f94712875e1c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310093922065c2d550e5950ab77f5bc43ca51e411522eaf4b158ea6f9d66bc99fdfa59445624132b18c4976732a5d9501efa02310092e6531605dea52253ac5a82c14a4d4c10159ac049a9dc0ef6d037ac27227073e3b82b94c16cc8506ad08cd9219dfc730302047c435bb50067306502301beedc634b9bf62b261cfccff1dd5873810d014aa4963f51ee6252a87fdaf28826bdee334ee0b42f4e81a6bf6e96d916023100cee02de8504d342bafb5da35899de273897b738d0072404fc7b51b409ca363983f440afb94a20ef0664451d474979de10302047c435bb500683066023100d9a1f4c90e9be8dcdcedeff75b460d0ea688eb3a322379fe6cb6b5833a8026151d7ee534c37f9664605d05d986f2061f023100c9d8398fa3596fe0cfbcb1328ee3161d3c166ad032bcd5eacb1862b7d9d52c55639112e85f81702bdd58ad11b23fef940302047c435bb50066306402302fad22278619dd735c5a4303c4a0c4b0c26b4b932964e7868c0f09f8d648d03657e71af0b23d816196e221ed92cffa27023076ab6e355ef97126d54a08fecc933ee9550ce656cc0e3b0300918ff8af159b422b177f91ae52035b8e0af486d0a6845b0302047c435bb500683066023100af8e004a7803a08932a723cf663fedb551234b6b8205dbd582b0b2621182f771ebf4ee20d30f861113f7eb0445e5844d023100a39f4d965dbcce494fbb48c3a068e83357225a1c17e40da2f6cd943a0c009c532045ca4b63a9e13eb9b54ee15c36579f0302047c435bb5006730650231009206bc8ebce634643368f88f3d09d608abf216b3e935d2d8ef3932ff69a289dde9c8f85de99fcd89066eab698011a678023069f7310ece162265f3eb133d4bc8fada910140052d93e7dd2a2e6552a08418c47feeb3be1490cf00adc03b862837dac00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009e9796b72c8d4f5eb4b04f181effca8b06e3b107cb7355c027b0dc4f1761d8db587fdb4f6f85643cfd71e3aeafa5a210023100fb005509354a503c449606074da623398f5e0438deea1ff65d0528b296778c974f1adfe5c5cd979a62b4554696776a980302047c435bb500673065023100aa5da10081ecabead66690edd0bc98d373f2e96767a8190da5b635d79e865fceb6734b997bfb74227f778159857bc091023023484559b9e41e2e6af3ccef646d66653f03def641435c18e6472c11e747d2f47c594d9fc4bce66c43880bd8845547150302047c435bb500683066023100f22316ea9363185b2a473979d9b1fdad47745698598ccf9fd7186dd6e65a04a3948e035ce114e8cc6e06fd8fcc2f563d0231009eb0f7abe39a24b9af96066cba48927eb69252cdbbc642a71ab2c9e672e4b53a80e465b277a902acf5dc18a03efc26930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230010b1a5949fab5c735947c9dd65ec94117be2e06739415528730f75d3755cb215556af404695bb28e222a73457828f43023100b123478f02deaf8368cec3d4c898617aa2f88e8a638a4f9ad16a66d290eaae2b0773628b8a828f895727068a570e88d00302047c435bb500673065023030b1df5addb63701a2f08140169b7244c121e9e7e4f76e802aea856dc2698d0db406a7078737bd08cd7191e8bb3e78af023100cee10aa3bc96314c372ee580e854a13d41fa000427142c676241e3f760f911a4b4dba516506fbe7006302cbfafd952830302047c435bb50067306502303bf1a1ca04faa056a238e15232a8b4a3479929fc26bbda1d1f22e390b01b1fd41dd728d1e30fb7c5a87ea064e333f3de023100bb0989de04cca37df905cead7b0bd9a7fe86dc4a755039500f9136f16ea557d6e912d66c1ba01d01af45a33905ed12480302047c435bb500673065023100cd792914df540c589970946da748304dfdcc6a78619a5b6ecf891f00163af6cf5f39e3af72354ecfad3609d7ab85c6e9023053841d07430a5338a724dead4b8380c0635cdfe24ae8ae9bb96cf6ed7eb09707e1d118659c3ea227e8b50c1951d291610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eeb4bdbb710c838047c67e9122a88d78e55cd181088e8831e547ec5bdb8f1eb7cd137d83b7185e7362bce30e5fd25638023100e1b8d5f2444db99d43b8f064ed0eaa06ffad9d8f970b073dc4b172ec86826156657f737d81a984721c7a1fa268a3aa5d0302047c435bb500683066023100d69707bfcd50c7d7dbb00aeb13d4df075fba90e3b44c1472c4ce247b97ef73dd4dbb392ea18c1bd6fd59ae5e5d2a9592023100aa9b118ea4caffa2fd215b318650b8e352032bbec80d0eddaaab401dbb0e50982bc37122a83cb216b21af2fc4982fc370302047c435bb500673065023100f183b49d8ac869ce6c6acf0bc17ce3a90df9188b2cba5afae68da79c4806d823b4e0cd944df42c86dcb878bf0d24776002302938fd94c27567b2d4a5068d1b6d5c6f6390ba92483fe52b6380d2f974194309263c765a689dc84dea9269ad9d68a2120302047c435bb500683066023100f7109eeb770f6c314517d0987558e0e27a721459afecc1f7538c58ef43029f367f0c5b9bef6196f3d199c34ff285b139023100c6cf54d13a108aac4a59b0b92e4766dc0cd341c3220791e7dab0f720440a3d5ce1e491143f87cf08a47f0e7ad9b7da630302047c435bb50067306502302b06eca912f7cc1443d39ac15dadfa43f2d73e7dfa0c37104409a7a02c44e988fdee06d6d2ef47b36cc0ff480e9fea63023100fa214f039ce827f1c30e813c5829b632ba11ab7f95ce86ce952714e6bda9a3b4bde08919a4f56472453736074ae3a8d70302047c435bb500683066023100cb9fc4e0fb0721d6fb48131a49c1c33c63127551c7532122010a679826989bacc803c8d273cd4626e24301321c316e55023100c93296a6de17a0f85a047496fa6c14e434b090f2f91169bc4a78463849a1137f78f84ba9c04c2ef3b8135ad6f01d4ffb0302047c435bb5006730650230043abf28df90c65672eeb343c485356922c6d02bb8c2b0f5f4ab05feaa860e8c2226dadb50a73fac8be3ab03fcb84922023100a6a3263ade0ec8722358bd28d5545d02c14aad6ef6a97419fd36164c55d551d32c4e3b33efa126c8ff833da46e7a6f450302047c435bb500673065023053c2b740e84490b120cbf0533b676b27b7efc13e00cb4f24224ff946c51a053a7bee73ed0990cf2031b8f7c62691b3dc023100ec16093709373a9aefe3931add1bea3558dbf3c598d904efea7561d9118016cd419e4dff0a8e5fdb87d1c811b44ef2870302047c435bb50066306402301c4b8d3c27a2f50493a32fd4c573cbbd95e7e504e309dbfebe52d5e4565a1f1c63c29a5696d09eff165033bb84dea958023035b4024c2ee308e7c05e3fb4ce1b8018dfc1de3c9a4f11bb80dd7ddfc314936ac9405d94e85d1a4f48adca1ae3299b4a0302047c435bb500663064023009f9c880d8b2d191df55fdfa637b1f93aa75764407bc3e465d0d1b3e8f32e0b562facce54f64c35ebba70c78d54c0c2202307db35c6ff4ef7d9e5f9f1ecbc8890ef3a4261375005f12b26209252516937447ad8199ca62c518878a53b2d802915e940302047c435bb50068306602310099e1e22bb3e59c0371c331c6b1ae973896920c049c3f80efa9a88a912728a5aff89fe1533cb53db27f023e7f2134717e023100ac5013cb61e78a8da9e1d3442cb0e3eb38c1472627ee14784121ba898cf5c7ca96a2990abe63e041390fc1d074cc92e10302047c435bb5006830660231008b27a28127ca358af28a186cbb8fe50eaadc0c3f1504d84a6d817b0c6a113865e71f517dea7f09fddd234fb64da1c121023100ad69e598a2c94d67ecdb8aefa2454c9b0a8e38515fe9ff049448c4a2e2e56fad427ba8be7b5a2478318f4aaeb315ed4a0302047c435bb5006730650231008a83bf8159b90574262b429d52b336679b118bd38be64cf3a99c7e155e8dec86b201bbc3e68947b329c2718af7a7a7a702303c69365507f2afc313faababe038f85bf00dd0d85c08ddf834e7e7d7489369e3617d7fd944616ed75346961ca0d0abaf0302047c435bb500673065023100a869286ac6b29d9232f4979da17c48d901edee30152915af9257e207bf5fde30b101c9cfda8b1a372062e4fff74a545302303a29b5ec68626bf10e15d7ff50e5bb3707d3b52eac752ee8f0391fa8c810b73f2d8c6aebcfbe526d69fc0697471c7bf40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023022aabac6f34b9623b9175dce62e21482d1738f243289b54d9eccdaa2dae978ba3c109326f6631f3a63bf18e8bc04fc6402303b6cab307318f0bad2ecdda0f11651c885f9a5d26efa6bd6e1c4d1a37f3f8447c7c09fefc64718e35c5ff486c86e6ba40302047c435bb500673065023100bba93e4c7d3fbae2797e780bf7e5297292d04aed46b24e94eb503c2ea3cb217eeb8f5456ed3e8d6b5efdc8d0d0cdb83302300d90cda8ed77bdb7443a63b77b479d327fcf5d79dcce42fc101fbf2cbdfbceb867020344e133845eb4c2c39c6b7da2770302047c435bb500683066023100af9e3cdee49e2e31143d33eff848ee4133a43d5a360e4c31db5ac5a7bf6125c5b487048fcc0254fd6d8b4b7633252d560231008f8b43a5180ad2dd020bbd9abd1d0db427b7f1b790ae56d9f385626763aeccfaa43f72af5889dec9f6567848e0ffa3770302047c435bb500673065023100adc129e0c4511b6c785fb2f21e0a3415e8ea8dc92f7ecbb04c3363b39458e9dd2e3b8a712da4be1cba1cad2bdac47e6a02307975ef2586b277aae0efab10d8dc617e6f602fc49d9be9239f5eccd6f9e804e87287b55ed51f298b6668949afb3169cb0302047c435bb500663064023063cce3a31f497393e75100e3416aa0b31ac1a13744b56d348a8ad92b635bb72326b371cb2917cb6459f2d963c968c2950230205eaf414b9758502cf408e3b242035bf125fd2cd9f8473e26877332eac4039cee041a023ca4bf0a842656717629565f0302047c435bb5006630640230762743178b7959645378a69632fea8c27fa4a9ff0873668678f1c4547abf87953e3d5e835b4ded140863d04a0f32399902303ded909597c9f9ec31f2a486a9eeb5f65af8cb4eace75e45e989b8fbe55a5afce5289bd59b49e41ce9ac71baed3c27c60302047c435bb500683066023100998fb27752ace8580f6ee0f96f4ce492e8ff9751ef3d8fdebc3d7610ee18f8bacc0a501c730968f24fc043c0395012ad023100ed67de286f7903e99d7198d0dfbe2f1ab1596067c284bd5eb32a23c52d29a1a6e208f9c3b4222e178db4acee472383a20302047c435bb50067306502303224b42e19ea76316bc339c3a29db9920fb35157e04c56d7d168f8e67920f4844ee1775c23dbaab2a80c86ca0b85d4f2023100952c518061578e0b5c2936beb82f9381add1794d9c96ed537874014c8404dc8727cb5a19594912cf71885b59966a70be0302047c435bb50066306402302f825af30b1109f612bf8d2991ab8ee798c12c7ab08904a173d9b0d5f4fa740a2809fbd64474e2235ad9948201417cac02301955675cb0ca7b5f4e1f542368797e445118acaee265b48b1860396f8b065111e6da08ccb25d101327006585cc6e6be50302047c435bb500683066023100a879fbf59746b21c2cade30759e3691ec3db57a45f19b88abbe1104a885178868ce6c48327618bee094e97ee5aa3116b0231008297ee1379065dd319f0c38f3f9c4028ce8fbab914e41a0cf19d0bf26293209359db7bc63b740f1de9831a36b0f3112b0302047c435bb5006730650230246e384da13cae55c76fe2baa5937275d26fd2c95567b8003bc3a6e3da6def261c0de4e83885050d2f940636989020c8023100cd942e4e8d9bea86d0b0a1f8ecf8ad42cf0c285bb13211e9c8183ba7ab09cad5d782f2cd0ebf2a5276967ba4be71eb480302047c435bb50066306402305b45bd6573584a89df38bf627a570a6f79c619db6fd480d904a5bb95cf98d30c674fb663f7d3b1440125a5cbf7c3471b023011b49f716ec83151aea510da48743a64a79c0a8327056748eae4b404cd93413bbb5c3150f95e2774d5a866d9f3ec8e330302047c435bb500683066023100b0eb2dbf8f8988d6ff0760e6819dbda049bd6c09260386e421b7ac67d612ed8f14b4663d6b632970b775952bf5bed8c9023100ea4d39d485e005688f0d5ea8bc4665ea392551305e0c617c628d86591f6e54fb765f4511fdfc077f06de49539983ea0c0302047c435bb50068306602310080fd31b23767e5d8f658c31a53e3feb4a23a7c160e1999bebef3c79f32ba7f66d9f5316562b65b6f25bcec19f9335419023100e55698ddca91c3d82edba9df4e3dbd31048ee0bc3f5b79edce6a5f417e9a7ceb29638a4d543b73e14363573fb69c50690302047c435bb500663064023070ecfebebceb60159234578206606fe929287e8dffc9b45a08aa9584de7751d5db418f66baf1485bd2c2e8b3ff012bd7023069b618b5463dbd76ddee1ce7e75ecc1987a348ba3801e4a3bc441243fd8a1fbb1a9163fa0564ba2a1ccac614cb687e490302047c435bb50068306602310094fe0e56e1625aa9f7713100db4c76979fe52f592e0f84ca9c1c671e8bf4c5e180d309b173b01ffec1bf90ca7884f2fd023100a16f271379ebd208b7681ac16b07ad108c371e5892996a7ea569e0dff18cce7bf7e2a7726e10369419939b86a8808e820302047c435bb500663064023011cd31afbc8acbc48ed3ef7feddc76b387debe548d85af1793c43ed7f988317c13c9da47ce7ac5b1956b74851204258c02301ff5fd6ce1273157ec26e91f0412eb10b2b0d9d419a74936e4262a32040391120a32ae0e1e901bb005bf89579ffeba320302047c435bb500673065023100f3baf25e329a353318e2321e84f9236a3176b7029e733c90524454f22131ff8afe839dd226faa607a86fc850e6e8cc1102301bc62aa82b251e43681edcc0d76b754e4194a916047d33b2b10e1615eb82e037c9b09a3ea1affd21c9ed9b61c7a721910302047c435bb5006730650231009c5f773af223b0fa71cb966bf361b963ba7dd1d04e402542685eec5c21d152b2b6327ef729d4ac4bac45472222e85a680230587369c55fa0f779447c55108eeb40b5e4ba1d3821896909a6bbdf07b4bf01487382561dad7c9f80c386a9c8439930250302047c435bb5006730650231009d30f2959d3eb7cedf1c7911b273d7990dfdd5e5d5e11cdc29e08cb24750c82bb24ab87cae14404cd70400561755ccb2023058e123542744efc299a49f421b2b50dfed3ce2e52934d966a8ae998628c643a79e0b8ffc5a37c94d71c48a942b43eb250302047c435bb500673065023100cafe6b4b216b7d4600440cda6d34fc06624aa894a5dd319a330e3ea33da3fa46824846c9c7299979297fdc947b4737cb0230371b2da09a06819614774a28b80bbb5c9748756fb1630ec3761129532f052be8f67f9148d0988fd2eacd2c847fc47b320302047c435bb5006730650230684382fd8e1d218b570b6c32b704ceb0d24cd59aa737dfcfa2be6d604e81b6252507ade8efc36363d85c97254a416e84023100a6d9ecdfaad916ba38a538e836ef3de553242d3af1b8dd7b5cc87db74a6f04591d808ec08bd0e13bd7f24089f847376b0302047c435bb500673065023100e3f08102479bf8f44b4ab696ec663087fee3ae42f1ba493b384659740b4d3760c207893870c51d34416337343209e218023014d5c090fb85388e17867cb488e07a851e752112ae3bd4e494904ff67214f8ff59981c069338f7537538e28ca7fa32b50302047c435bb50068306602310085d61ebadb98203d4749ec9ea455fc3e1be4805f7c727d31476f0e775d9c43f475381b7b22d751809b3b5ab1a21a7301023100ef4dff00e9027931e4c51230453b57d12cac313229b9900de2385c80af1f5328755c4814309fefb75ec09273f1c3aed40302047c435bb50067306502304b051b47af430a734bfbfa1f105f6ea71d1f5ec5695373f5fe411e68fe348fb7010e7bc283858b9ee5e40f0604ca179e023100c58f1e77796ca57de63b420b4709ab2d0fdce6649c464bbec275e3085e741504e39adae2b4839e72ead9d3c781bda0280302047c435bb500663064023032b803659231715f08ddef6fcf17b011925c918b73257e2b9e6eaa97ecb019b40440c3db0cff0503831d895468d24f46023074358b93a1c6e1992ba00cd654179e4d4a8a4396a9d44a80a214ccad1e6d9de74b540cfda58d191a3f91e59b06c1683c0302047c435bb5006830660231009a7c283773a4e834238e360c773a8c12adcfa650e868ab7ba4457c169513db6159b95b21934e51d8f78edaced43bfadb023100ab1620822de2dcf97915c27cbe0daf9ce8ff0fa934fe97fab847406fd3703759c3eb9771e13b5e7432478a7f5d0dd9770302047c435bb500683066023100b3b15120d8ad2fc33ec0da9b7125ecc1f6d428a9a423b17f2ba58c06eb40bb7499c187cf44151faeb4557fead4dbd35902310094dfc267ef2c1a4a88b806a0bba277a544be0e4b4f591baa13b612910ecd61de0143a7afb400bd1ad5417707ba0d816b0302047c435bb50066306402307788cbff91abfbe5c5ab05950e05cdf6a741e7e7c6296f8ef727e53030013e5c3cc2cbd3050caa5455ad8d89c9992938023038302d0ff136eda398e019df5aff81e63b7f7796b63b03325f53e43c11c2eefb40b7480d519a1bfcb4b3e678393e8f960302047c435bb500673065023025721013bb9e5cc5128d2d39e5eb304f94a89b7caa30defbf73227dd91496df47f45df02bd6575155f4243800fdc59ec023100ba6692d453714c6886f29113da49e91c9ac50194752db150422b6e3905e60a8d352f87bb2662bb2a46129f8e967bcda30302047c435bb500683066023100cc6f9003df660f8a030a516f7e2d727c82f67804e1f1aaf4e57116f8069b52cff5d49366632c18a3900467625d47fcdc023100f8e122be1c4eac267c871d0fd44d0049f3ff4381f9fd84499ed926f0a23ebb7266b84846b2c7764d45f4197bd1abd55f0302047c435bb50066306402302480d4b8f138b7e4787aaf6c35dd9ef8c0c7582afcc8524659c042ec79ea363cdebf87318d4046d80cd034d876097808023004056f6cc8ea8b5fb73638cf73f088cedba3d91db5e90c17fa4f6ebb4287c303c1a3f7a00f279b565a5dd624054da06c0302047c435bb50067306502305e86e30c420c4f3fdb433f97a0e1fa826e6dde16aa1eddd034856776c82d23f1a0dfd6a20d605de0b5f1055c30f40b74023100ed2fb024799bcfd7400a93361e3c2f790e8d4a5ba725d433b727df1aed0847fe6d1343d42ac611ee0414aa73c31c371e0302047c435bb50066306402306c3a69b264ab59fb461d7d7c05fad3b0fdce9243de33e610491fc3be6c580b820b54ad8fa524bffabb7947708a5c911f023051fd27c4ed20b3f1fa3e5714ca177835b54aff0c9792ebd4d0e947a0ace7c4c988f42513e353ce92ac51e18f8f53db6c0302047c435bb500683066023100a7a6c1982aa59b93d099067cbbb683c3b51636a2dfa3670cef8fc2ed0d2ad1935a844eb299ecfddb0b7f0a0d2424567c023100add00a39518c4b001fce865abaa5061d0f805713c6140ab1299ab2b582da4e6e08eff710451e14634e7e6a1b7dc6640c0302047c435bb50068306602310081631da941bc02236c885c1c4e3ff450c45fb5fc6676fcbb78bc7f4722612a7f40a901cc701b93f20048b2d16f7e3efe02310099573fce3b99c807160fbb4d1412eceb0a90d8ca4f067d8a1a00d3d975b53e4d5e68e20e8bee87d12257d404b2dfad560302047c435bb50066306402300b21c7629055d9e10bdd7b2c8bb04edd6dd1232d270f26750431f8e9fdcc02b62707e4866ffc574ef6061ba1f26552a102301715c779becd2dcdbc02f7dc3cfc01a88b4aad1f36a90c60a5d9b00c53b694951fee879b15d7d7c856bdcd63b7b4bf840302047c435bb500683066023100d3312c8c88a03c81fc4d05d2233bfdcc3fab7b5d9cca4a1bf908a532a6ba9b8b839cde15081fe6e3d19faf80814ebd6c023100979322a46926f0cd0b7011060ac0af2b7572d6ebc37b849a00ad6869018d1b148576eb94626d6cc35dfbe37b7d3434830302047c435bb500673065023100ae00c69ca7f5c204a78fc0faf0ce32e988cd37b62b5f5419b2c21cd18058a6e3a7d999809037313522c40eae665afac10230386f1b8aa303c5ab3864cee62dfec5c4b1d931b8d42f0181a9c5a9508099569bd02fd7ae9482014dd7e4e4ee794ba8bf0302047c435bb5006730650230168245689b15faca8b91a989a539a5e68b817d80f9b2ec09e9c97246d5abb61fc3a465142e73f86d87a5bbc390570a970231009913e566c57fabdaa7800de29459bb32b3c8e6e020b501f4fd617f92e956250a88652e85a80443b99e04d065c90811e70302047c435bb50067306502305da2ab8278f0ca5762ae807bea98eb24f7e529bc916674bf96d31a45a719f2117e61696fcf3d70305ba2b0bd19ed893d023100c745142d1a48cf4e2199624771b6ce8a6e2ccfe0ded6e5530addaea6a795a712c48892d02dabd85a46f9339be6ad70ce0302047c435bb50066306402300f4caab2e0187092aa9dde523ec93f66186a2e9174230ce45b80c3fe95b9a641a7554b677b2eae95392a481192eafee3023069b3af3ceab1ffd1909b0fd2321ebf24666c2ef976b26ae270696a13c5cffe929ad4ee1b467f380a75ec1e32388bea860302047c435bb500683066023100a3ede647a1e2d1b5669481e488ef7703bfeeb9b6af8413f73b2bba932f267c045c9ac90870ffd4247c948f069db0b40d023100e756c921e259262e633f57385e4b9a4c2f26ceac884d93a0fc2fbe5b4b54ef10f2149ebec129a6a684e5b832fb82b31a0302047c435bb500673065023100a468c356ae50b316c505fec09479facc599c37e024aaf97a27b7212204fb7eeee74395ed4c3dcbd9753b1679e78e4754023012d59130ca0f7982d58146ffeaa531e005cf13f3664cbac97af99afde9cf6c6b5bb7cd922dca0d540415e88ad339327e0302047c435bb500673065023100e6a3a7cc5fccb584223953974da5049f3d46462fc24bffc7e442d60ccaec264fb3ab4eb362f87b7a565606a58d9ee84202307841d39c2c88671bcec06b27c7ef0d6da55a164390d5894d5e48b09f9d7ef0ac1940f747f0c24ec7e5d87a02337492400302047c435bb500673065023100d982fac62c59c048e9c9843f0faf5319394a4cd1a2f0398e46947c803910289ffc558c09cab0a69939ba0f44ed86dc03023024888695866f19f8c88613ee59292a7f19434d310254368560d85757f2492e55f71e6d50ac2c966d7d16b1a8f84e06620302047c435bb500673065023100906a4f3e055367912b39abcd16f36e450563dc4c418f33d4d01f756ca3bbbf617c65308bfa53c9fdbe53522fcd06587502307a0153cd667ff86d24830591e8dddbd63e7f9ecf272f4d9711aedabe6349c7aa2b65278bc0419f0c93f308df5bf9f65a0302047c435bb500663064023036a81d7ffd85042da9bba6f4e0ec9a88f8f92781190c4301c93cf66eff26d1d6c7327e7b14113c0fca2a1e61cd8f16e802306dfe42ced280effbb9b155f1689e4e15c017d2c6f90f999032a6845fd4c8a10d85200f4d20e735fe747870520379b0530302047c435bb500673065023024af55a0e0256955c41b912021dfd47050ef2d194cf2238c1e9982c40e3e0a7149c4767e69f2ac330f69cac8c37225d102310099203f80fe2ca847e70e47df5fabc1cd73f6ed7d3ba165e212b697aa0fc82c57bc4b83c1a6bb318c3318e8a8aee7d05b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c7e1a49076e6c6943e904313303b1e47360604dddf78381a76874b3e29f96232d8c560b84759853dd7111e3fef8812f302304d8bdedb6c8fb642cae16154db0271c4265a44de9d9d918e96f5cf1884b6f36405b7139e89c5dc9f697206758fa283990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008cc515ee472791e43316a5bee6d13f68da19fc34c24ca81aed1633f5c7539324a74927c811f97bbb5a4d8f3be326f7f9023100e9adca21d689733b07d4c8601d09ffc96ba8c2f8324fa58e1fa9f9e43b74e120a701fbde932508c86cb44793c93e08230302047c435bb5006730650230761fffe94996ae273946667a1cf97d46c6d2bf69771ec0925be99733260743863913dbcfa286567cb8ff832a7871a396023100908a642dcffe8a2da12326e3d449d9fc03eb2a5350c69bc8cf933a9d2f4a36c6282e1f14637b2f9abc91791a0d0bcf5f0302047c435bb500683066023100e02c1f002e16f6d59bf08a0a8ed0c42d73df53eaafe78b47e6dae1e83b4cd0e50ff3494af5a5c8282f9e2ba068bb80790231008cc78eb159bd5d7302c6166644812d311bc9f29e3bab013a5e4f7cd9c2c1809d6ad0f50186fde0a858f2ac483eada6f50302047c435bb500683066023100b11df1c891da9b89e2370f73ac6d2cea54285b1407ba58018eed53052e3e62c96a8af1b60db410f6fdf862bb9d33e53b023100949f6ea0b6947e719fc3b6d83a053fe0537e56522d51291a00dad039809093eba9a1e31b8eee459b440c0e9b7b0becea0302047c435bb500683066023100c0ce72c3d9c6d59af181ec3a91a86ce605e381f4013c3ca1cccbcdb45e76da3861022b394d364f17b331ce7c676024c40231008d4fe1dfc963e521f40bae5e30cfaee157b50673865b7042741a613d212c4e1884713a4118ac63af77802bb39aee1ea90302047c435bb50066306402306a099bb40f91fd3d16fea8f6161607767aca22e8ca4a9f1c3bbde50bef16fadf8eeececb122ef3b31a58d6475b54cbdf02304eb06b5c136e7eea5cca9e441d83d4d0631a84f66b9c51bd4426b285e259f3062c7f3f9aee1c76c2ecd236f3711cb1510302047c435bb500673065023008f4043cd54883a4d22341e2a6e49380e5a2f3439a7d299986b8263ae78240a66886847a44cd79644f8cbde661616572023100eaf4d2c85573c9686916bfcb744310346b6da25f6891dd0009e394c1a6027766554a93ce95c55284550206a384c80a050302047c435bb500673065023062ce8aadc799b801a61e88bb68d52560d7f799191e6533e76b617990cf05822211ca65d3422d42174027d0cd3745470f023100b08ddd28d205b67184dee76547664335767a856899e50fa084457f8ef4706396aba77e7ede77a3eb51e816b7384cf3b10302047c435bb500683066023100c9826b8476e068e8ed8baa2610292aed3bb890916e9b8ebd53341c744617f97e823cdd93929e7e743d30d0301de56331023100ba749a395324bf076c616c615c91e205a48d908dcd9c4297e42e070b1b39a41c1dde06f9d4c1a3f958ac579c7a6013120302047c435bb500683066023100e61d7f02f319ace043977430a6f60b3fcd8a7280d98e6b7acdd718f402534a69d55d7b1ad054efb35d6e0d08c899aa820231009fe7ddd644023b0b82f20c10bda740a47224ce28d3d6f00bfafe90c067da76fb613c747e19594b365f599c0c7448d09e0302047c435bb500683066023100c600be77796fa071e1e4318eb4df257d16ba947a2cc3d91c5a23dd9ae071ce004dcd4e6aa05c07b3bc7e0ffb065a42c8023100bc621f93f8d225bf12399f5c59fb5c0e053c3276a2bf3b8fde7697aab6ff3b6038c2ca985cdcfbad02a356e1df1284d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100824b27d9f3d8a2e6275c98dd85ebb1f45852a2f2616f76177c290a1546cf86b9e00137eef1ca823f7f096992f1e0098c0230710dda752b92cc47b9934a9aabd80e17250bb1c0a577b82e5d8af7c227da3c714f4c1f0c74f3ec86450b29d0cacf21920302047c435bb5006730650230568846610321b2898c02feb534c83a84cbbd03980b2edee57da33c60f54f862b1f349ea6f60fb3f96d96a503fa73a801023100c728587f3100c3b3556ad6503cc66f3c64f8e67f67f3cf1f09f4f85206b9654b3174c6f0a75c257c4c5a03216406da190302047c435bb50066306402305c334af76e1c9a3d8c4da9035dfdc95fd879c3cd25e0ed885416670713837f71b4160f871266441652cd0710db77d52f023044c92c6e4a0508efd61db844b3358ee909ebcf510fceb4586be41be78aa3017f724dc23e38f68ab0db31e72ee7ec55630302047c435bb5006630640230082d6d1360e113b7b1f20c50029ed24abcf9fe19cfac071fd2ce8b08de53c1b34255b4732192a69080a25fb7815510b802307db1b1a206bca53d47f254839b224d4d4f6cedb3145943a5434383dc6e1c2354d9660af519248916699199162f2773800302047c435bb50066306402305eaf43f3c6c068501358af95d6d693441d5b31074c408995f43dbaf5a52e528f2ad626a92f5393cf76535a79f3f2f927023040d92cc7737cc280266341fa4c8dc3b1499ee9a8f0e18562566e68e57ca0f019ea1ab979293051ce6bdcadf2f4f236660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304369607fca5cfa29ac866e9c1deb078909b0cd2b8094c9b955cf5173a5d195d2612df613d4f4fc1b68e8800dfa57d4d5023100c04cfd002e20812d5c48ae996ccf738c3cc4dffb83ec5d83f7a514ec3d013c2a30f4bf663e42d4e1da9a0e9b3c3076540302047c435bb5006830660231009f786b0538be48b1440cb654ca369db5d2e36f7a7c744c8c12e7129c433a96e23578524b77c51f9d52425d3f3648d145023100e97a7d8fc1553b52c1edef3384c012a8a92b417d64384b137c70a6720eaa8d0bce16c3e85c1ba0a9c1462a70c12c0b5d0302047c435bb500663064023030841fe6e77e6e1310ff96a27949cb96bb40d4582cd934b843d67102c7876f100bc442b4f46ae427524317a20cdd59b90230462f4db62713135563d51efb582673aeacec9b47961f4e74d2d022a61b1b738703877ad567c05e0fb05df0dd1af402810302047c435bb50066306402307bd1a110730bfd015cd7c5bbe90a544405ef4373e23b250dc411e1a627780f12519c9c9e036db4c2a4f00ec3edc65d5c02300fee762653752bc6a3fdc766d30bc1fe89fe7ebf0ce956448abb4093800f3dc40871bc7b08a513e7a9ccaee6eb4638580302047c435bb50066306402302cbef8c70e7143dded2dcc4ec9039142dcb510e348a5988a0207645e8c4f2e5c419cd050e8819a8179afd563a65e100802305e5bbe7e1bd2d1add1584a78b6f6a8f370518a1741611c9460463d508e77306fb3d863d80acad03f21352d134f875f0c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230702348425e4a8b846bac712873c573c12102c7b2ff980cf0f47f517192f6a1e6f11584a84dc0748e528252e4566551d7023006d5b12a13d0041a6489f3cf94ef0e31803f008a9bb1092653d10a0526b84c4add7be9750c917287d43ac9613b3c6bb70302047c435bb50067306502301992dd1b38f56211af5d6ca02c5d5d60a28dcae10535931e35dc27c8397719b2394222e532ea03abf8fcbc5ef433a1bd023100bdaaac1e196acfc33a7d99f0b4afdfdcda2547a65bd11f4b817e9c0c087b0336bc4602a2c0b767b16e63b051e04d0a430302047c435bb50066306402300f52f137e510f4cc0901b0c4e9c6a97137b0793e84b7716513d69f993e03e49fe06be5a3f1c3886a2fff967478b2a7f102306a738272b09b140d63fe5d4f3ed673fc5d0b930079ca7b4508185ec843ef9d5618cd463584767629d97a903ec16c33d80302047c435bb500673065023100cec7d0711f3ba45d9621fc8cbaf62c359f8c4871ad7cd5a9aa645a77f65bf2ae49642dbaed2538c9e8ad88abe29b351d02303a86997b0a0d3d21dbe727278b0d4622524ee2e8d6a962fc3d77bfa1c1cc384559dc75f61ed5a6a0087b4de9a2025eb30302047c435bb50067306502303275e3e0a7b6a90580e91f50147a428d279a1f16249dd65e1f06d8cf572fa14caf250c035069d07e0104c7618cb7e406023100f622a9323ffc6810e12e51ce3250c3345fd6b88c62847b8a8693322f0ce25077eec981b5ae3520c7676d98506c86b80a0302047c435bb500673065023029f75d9721ffecbb53bd55c3044ddb6d4c960608933d84c29971e663c32908670cede53cdc360b56ab9389d44b282c4c023100cd3550a88485234533f517fb9bd5dedaeeb8f01fa4d186e38e01c10f55e2a4c25ea9833eca76010ed7c934ad8e8ee9ee0302047c435bb50067306502310090c8d3abcec2c6d020e5fa3032e1933cf11963b9e09ee342399fc3e4e23da860b3a991965d65042e6870b0ae81103da902303b5bb226e6708250a9bbd7d016516c8c2d927bbd6fbcb0ef9cd97b559e4e3284b492c9e56f8e598d241ce58e3d76fad90302047c435bb50068306602310099148234d3e766ddca7ae485230b837cc4b5c15fd5aa10e5f1ab03d3fd61696a006d32cdf3b873aef925dbb30ff68328023100a5e4b100ee227d5f017fbef3303ad9f4262b299433e5bc1c9e649ab82e3f98cab481b2cfc507305198fb807a5b28059d0302047c435bb500673065023100ae2e5618602c8417d3459b991ad55aa56cfac76205d83c6844d13400686a6dade83ca40ef7e047bd6ba6140b9cebd5c702300aa798d41018ff9636bfdc01b9ff1d5c9591d6afe84c6c4686d726c000274c7dab84fd1996bbdb6086202bfb3b9a93530302047c435bb50067306502301c292349b4d708b38a339b10e84cef45e91f643d53e9f54f8db1b5cdc3b7933cf6859a98b25a4db498141fdfce6f22bd023100955a2a3f9307acc072133ca5a9de8154aa78e9ee721b4a092b7910d602a2b2f892130d1ede1b8f81d71ec0e1af1cab2c0302047c435bb50066306402302ef49172d8eaff2c045407c7e2ae164d10db0b3d202dba61fe79bd1518caded415fdc28a877a794ad9fda58697475d3c023028a31765ae690926858b9c06aa9ff4df5a238dd386be1e08d28c2b128039e1d7dc3dc4dcf60b707656c54c960c0189040302047c435bb500673065023100b56e183ddb7dcb79998bef42f37f7eb88dd03c88a050a6b64f31d3fbe6f381fe36067eb2dba1781aa48e7e75b740677602302c678fdde3c309bcb385132e19b7bcfaaa33f7a17e2304cd76eeeca2d5e55ff2eaa35886e84ea44c5cf9d09efe934b320302047c435bb50067306502303c2c5f6ee53dbe44d34d54482aa5dd552b069eb2c2df7808625fbb13cd26fa3192d0516ea1d65cc2a59b5c6ad1d84dfd023100b4376ceffeca267f453987afe17b87588d31a3dae9e07eec8a892fad9f42bb49307858b552ec1a7eb968f6c6d0c72fa70302047c435bb500663064023070fd04543038fb9cf8a3b3c66c95971ec486838cf39df23ddaf1100dd989ffc696a0d4f5b36ab7f6afdf9ca4f1d63b2e02302aef4e331f4622997b093bc3f4af310e9ca72283a7fb986b49ed0ce10f20a9e502da11c5741745e0691197afcba6a2fb0302047c435bb50067306502303a0ac81ae06a1485f419776ad38d0df3ea2809e224e8620cb1d8ce323eff3d2da17b736b12008e13c5b1c7dc89215783023100fc05372504ca7d550455d7aa64c40943dc43ce086eb6f04c56e70600872411ad830a584df4094a21fdb057a2814160300302047c435bb500683066023100abe6906d1f9084bd0fc85cc000bb03ce66f8b287772adf61102797109465300827d841091084641e735387e24b84a07f023100f8a31016c28098db6ea96808e83936d3d083bdbc648ba5c66f783cca2163776dd0c57c485274d9e596b0b9f95dba64f10302047c435bb500673065023077db6088989733aee148bb6c390a132b5b334395fe7f4a71fa2f83ebe1b7da5633c7864f1c9ab54cdec8b17c7cf4c00c023100a47a41689884a2511a2b6e56fc34eb80d3451c20ab449d5ad7a68603fbda564e74b99b15262bb564976d6433c1b6058a0302047c435bb50066306402303b1e96d25fd517b1e349e81d9b9e2fd50270d894a64eae8fe9ecfc68073bbdb10599405e8e65262d5b5be8b25f5ffb4502307a429a8bec49068cc5d7390f1cb8a30d125ec14436fda0dc52f6f6f4066a9ddabd0e53d871d03e36f33b27e0298b2dfb0302047c435bb500673065023100cd9939fae91687ea780a32f04b75b9e41a5efa5db6ff10718e72761929ae853601bc73451ea12b0dbc4652c7bcb64cf9023020313d13e4e332db8c6515563478175e57edafedb0bdb5d2584c66965634f0ca5859c9707c15b953b7e0cbf3a8556ea00302047c435bb5006730650231009fbeb8e3e9c00b646f04109117dc58fdc9519c774e11bccbb73a28edc6d2ea8161c1fc767e155faa558aeb8e841e008202300d499784e2e07d4dfa6b9412387512a975c9524d06d5403d4936e454479d6be51dbf80d44cef3033cec280e4a782ac960302047c435bb500663064023048b03a59f49ee9dcc3b7eae6b93df6eddf517e9191f5e828163bf0cda7a4477e13f2f6e2a66619563d3ba352e2bbb65702301314677a07d9e099d77727535e637261f6d6ff5458e1eda2d715254bc3feeb5f1f14e6e420cd5c678acca1e67cb6f7420302047c435bb5006830660231008133660aae1fb5f5c82f33da48f0aab104a6320b660b187421695919aecd1ee017e7eccefc42152c3f857281a1536ba6023100da73faf2b592c6924dc2658dd0ee7daa60ce6549a4a8aa41e5bcc7939147e58449d0a3f4927041f6352b29d9e96a728d0302047c435bb50067306502307ddc73bbcb9bad3bb1fde4b98a0bf156e9b9c8e8efaa7a2d669a53611e27e96ce55ab50f5a1b4acbef5ac06311d17710023100fc369c227c74edb3df4bb3a4bae003a6650785eb7c1ad149ae4d59854993136141dfab1286c8a97cb458bad2ca2b9e8b0302047c435bb5006730650231009d4f39a0f9adc8b2e5efeded96cc8037ef73799ca7e499871333c18ea80bd11d1123e4a5e0b5ec9abdc8f9e78b0ffcf702304da94be23b6ee849383e45d1a774ea8c87d4210c00cd71d0a8f8ddbc44c2f027135f68a62badc46cbd91983e3bfdb9590302047c435bb500683066023100a66f357e791c5f0536db67cff852e3b891b1ff56abb146a3f0c370530be255359737a4f2ad526ebd5106574078aec7400231008408702ebdfe6d3837d10576789ef34c58a3a3795ad7e8a83ed1f803862bdc01e038e401cb641d35f41c20d49e2662470302047c435bb500673065023007a9cdeaac35396acfff32ae35386bedf363f4ae02ae68835ad29044b69b066aacb939c5f63b7b0c1ce351c090b48b46023100840473e673da6484962464fa40efbe71cc3cee2dcc533e8832357b1b7744381fafa76ab4bea3b3780942d811560e6db90302047c435bb500673065023100b7a99b0ee9e2d127d502c815bfa3b6bc3ff250b92116e5ea0a0645380a75a169f5e5593e23955d3d76dd71ad6cfdf4df02301d31ddda1478a64d8827f411a180a541ed119487891e88774c60ad666230c69772d8557af12dc1286cf6bac125b16c680302047c435bb500673065023100c0a84577a95e3872e7e050b3dd6618687645e0dae1e3a52a2bb6212db16a42e8aa61c5d0d87129c7b08f7e440316cddd02301b8ce4b05c72291767bd74ddd76314d30e0f0f855044ba50270eafcfb00e647884b51d951a49d1940bd8814187c1b35e0302047c435bb50066306402301b15957637e0d5482190fed27018641d64585c701bca60ca4ab049f356d3629a6f9f39b7a7083e0c46636ac9a88938b802306137a842fd23f01a3a890038928794f817defe0d9b1c2eb9496de796c93e9adb7120e47c9aa04217c6fc1724ec4567ba0302047c435bb50067306502310081641b0aa5501004a6e936824cc30df208a69d40ae64dc4c565b6931d00c19064e31980edaa859115abcd1fe224a162002300e77361026916dda315f0fe1640bb2c69d8fed8b888eb52fb8caf517e7dfd86e6df3e709600bbdd413d3a953c498f7770302047c435bb50067306502310093b35983e02be3f023b6f742e3143e82d2bf25d18aacc396e9596b3b2b5984a939aa98df39e06cf6d3af2b76772666e702304280d0b85776efea17cdb21afab2f5d2076619ea95086bc6a1e516f9e488f2eb323551f76f24308ed4c6bff66539034e0302047c435bb500673065023100a172a13d048e1d032a7c49dbf16de2e5ee2b5c46e735f007bdf693a49565d704362fb5c0ae474ccbd40ed522956aef9202300432b3f681a5d0aac35b7c136f8bede97b147e57eb51c37cf5cbcc626eb84aa60d75976a74f07f32713be22fcd973da30302047c435bb50067306502310083fab2eb686fcc1b0fbea682d827331fe2235f5b254585c5f074217f4fd56d42ca3fcec5c3408b427473aa0e8e72045f023020efb20a0d016ebb7c4b6533ef822b5e7289ee0cf3bc9a0e83b7084ed3aa58272cc3a4f0080354bdafc514da290f0daa0302047c435bb500673065023060a1c39b8cb02c41e34470054cc653bcb833b56176930a69b743b07d0f0d32b8b19badcb36c77d53300ca37f8839171a0231009dc60df38a2f5e14d33140c07566a7f33523986c8ef6ea5e62ff37660d22f19b14395fb50749dac331c2fdcee891ea440302047c435bb500683066023100f45d4c12c34b08d01033ebcdf07b7fd2e97585aea27b78cb152d9a79e08da9a1e7cfaa15f0166fe748ef609b5b7af3da023100878e13804ed2d82b0cd90fa0d3373b629c66f950f6f546e4edb471eb5f55f1a77c352a5b38790ed6f53c0d5180945e1c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c59f765d0a13e56d96d4a391ba05cc08a1e16326e864042ba2a7a05787010a89a7e2f4a7ef956260e8bf9b4e03ebdd95023100c1a26218f4e0a2ff60595f3449ebabcd59907b0660b48aa177d909c188d8229f5b3149fa8adb268466ce1044358d6afa0302047c435bb50067306502303a9735cfb6311ba49300453aec5cefa3b56a9fc46733998d7e375984ddda9ea28ba21dac75d50cfbf3d6238b8a1ffb98023100b8beb80ba4c0c16895c2b318671056074b1b9aa6b714bfd098849e9850e0b184c2e88f501f2799fb35096c6efb8b97b30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023060d398ddcb3661dced307aee7e2d6798edbe9f2728cd33176060d3d4005dafa283f975a2fd77badca2f50ce3ef4b52e70230416a20b13259540fd6cab16a7854472bb3e390c5bcc43cd0068ba6e35bbec9f859a39ef99973db6bc126dcda2d4d7bd60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023044c7350adb94d21cc9fde7a6c09bcafcbeb5a9f9888cffd0da5a049e067aa37840365a6d1b802ebddf06092cea1417d502307a625c170f414255b863900ebebbb055ee296fbaa2a39da5449ffeb974b2386887c4d5408773a561cb76b56276f7447c0302047c435bb5006630640230591f8bb4be98412a916b9fac45b0d94a0364b2ff70e9cbc8003ce0f3fc01bb0aafb940a3f7df22035f4261f6e465bcb202305e2a43375c4a2cb67511421d364bbd3f8d3caa76f79a65da40bf1973484da34b0f60f52a7ca4d171e9995eb24751290e0302047c435bb50066306402305360a164064fdbf6b515076492951dd706888c7979eae69787a33103ec8b74cb03d466755a6ba9dc7b9c21dc6223d5cd023053508c715ed90efe79c18bf92800a75d693913027fc66d050c91551b91800e96dcae1e4dc521b8466e7fa6120b2a4c590302047c435bb500673065023000c6a1ade6ded8c5f7dde7e50abe20689508d8c9f355b9260ecf15b6c69e7767843a2479c66638630ce18dd5d4077dcd0231009091b23cc07e8c27dc81af64f56b80888d1f92ed7b672556f708ecea025fb35446a8f08ee4745fdda0203117305ad9aa0302047c435bb500673065023100eb07245bc9dd0bbad95e71024dc69be170d646f11b52355d06efb7dcbe9e784c58b76bb1ae0f3405b27986ff2bfcee590230624bb2ce57c797b8e03dffa6d306ee9ca2ab52217b7f6fb6d4a6f5543d19ed6bec8a00ff8b9402e3f996492d9c9ea4110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023052592bc75fa94fe4a49ae9b1a989c078abcb6d632ca85a106cdfd498539f4df757e074f4923e214371c1ecdcde059c1602310099a4611ccca8f62a405459d5415cf73ffde24ea5994f99397b8832e200fc493c1080299310782d13d2adf390b88635d90302047c435bb50067306502310081bad287fd4cbd8697dc840934c62bb85f8efeaaa03b997a1dc78f7914bfdd0c7fc6d1de2c9508097ae1c5a699e2240702300ecdda17c19a7c34694479cde388141f36104b7aaba92192b1c8c4b39a1505c974c80a954280f0977e85771d66deae050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023036e01f6031272c4cc03dc00f385fff8b2f4b29b8bc85254e5547d150993571b00db9dc60a76d05109513e5b299262b47023100d628b68ad5086c1d01a3657088fd7a20a415176b5954ba72749d078f3740df5badb254cbe18ea476e7b953b36d8625f80302047c435bb500683066023100b2ff57ac5e8e0063b44c418cb21f97c15af5ba809e7c9d19f2a4dacd8f922ffcdfb45338f843dbdc502a9f69f606b26b023100832656d246d186b1117189df769a87d4caa69720e71c31dcfa932d7ef0c92e5447c33c8f7d885a7c24314a23cb6050ff0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f536f3f901b1bf94d4d332ae13a482589dba3c40d2f455a9a1cac469c60da2680e49cd5e5815660178fccf824c3cd75702301450c56bb8495b56b167c7a7cc75cac98d2b156296ca0abc48975f7cb9003ac7e286b2c6de5d765aa22e697aa25ba8730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023024dcd6d7df7b4718a860f0eed431970333b66d5618320fac922e362132392df28c55c28ff02f09f54f482416de135fd60231008cb266c1c4be98cee25f05e2b767df8c46902da2cfdec15577394b8821e2b33bb0aa6c3b13bf1ff5495df4b2551713e80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a64e1923565d99dc3b7a503d99435dea627dbdf7ed4d86f715febb0ceb8cfe3685771cc9910eed4fbfee6d31a36b6bb7023017ea9bb2486b3b822d2e894a2fa62dbde8804162196a8b591921259749a911463a3b256ca21d4c0595fcae69e4bce6a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d073aea86dd1542879d20e8ee36d20cc18f93cda6040fe4bbe8b549c05d93323e3ffa3e6fd7abfa5ad952a8a0c11647b0230013e3ea795f94f4087be0d8d416a17a90bed9b2b0805332b34b92b9079cdd2bbb8edb69b6f893945aabaa39ee818a4490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fc756cdbc478bd6bd00ddb5d578157b4da6a5790019880a9b495156a343a3d10abe54b25613741f03d2beb1e3682e330023100fdd8cc07a0d408783ca615e5e045851a165e249adaf4f25ab606ba91fb5815e1580b167e5b475ce73907c0f5793709380302047c435bb500683066023100ae517026d68222fedb3917534545d096c7c3ae87bb9b87fb3c22e33a90c726f03094505dd7af230b3ac952a5ce5a72c4023100df879d02bff4cf2d9a817dfe65175ecc1099ee5cc85d639eba824a1855197aed43d5a4c0cd3f3b74dbc06aec2856a4de0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f9c163feb9a8668e9a11328c2279db5ab7b54c8b6270978f9276d220627000a85b4979f976c9f3a5d43a4a48e6a16279023100b2dda19d05c755b9a70b5865fe18e009b06eb7268b131534f205ff1bf10fa6f26be54c6f8902a910dce0dbaa47310da10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c54a1b1796cdb5d7b15040a050b89af707882206019dbea8a04cd2fe03a8bcc5dcddc85b0151ce9061e5df61bbaec087023100a31a84ac552ee94a03ddc22244d3a46e891c0419de568c7c519bc3805d82ff05772c46d2450da961910b8e82efbcdc330302047c435bb500683066023100fa123ff2f67b24c06e1ce9ad3c6f495de23d8f7b66d6d38f1088d6d207a768782e87e01e175f549b7cda345276bce79c023100e98624e453860b378e64b3953da8913e443aa158587bbc58f21e33fca8f70eafab9b1d54ce29b40ce22596945b914bf50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307d68ed0d7b24431213272ccb055ce340656447f888dae6359dc8d4fc72cf5ac4aac97bc782dbeb1b4623ba9af8899fa902310084d08f604da65237b2b8dc4625252674b09c86433180fac0cb47104ca02182adfcacece7d934c10d628d7c25a033147f0302047c435bb50067306502304c7aadda512b70455af696afa677e4b6e88529007afb2759a7f9ae0d632a4bb283d3fea04929c83510bef0f7dc1b2165023100f7780b599d821567f6dc56042f3abb8be1e5ec1338c502741c50d0dda5dbf84a0321267317ff4742ef152ac36a3250460302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023061a3c48b02b47c8e8513cb2c6d2deba14073e790ec5038d92842627912ef1aa278576c42081856215c09e2962e009d63023067af64a8e5b989aedf4c0134cc5155cc4b893470af320fe78b567c9e6a475ce194d36f9cff045e70e84aa20ef2bd0f070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302c112fe78f874cdbe744547d6fb75074a6c86ed660dc45f95350f1b6de38c7466e78d68a8e91e8ec4010aefc3c3eacfc023100d432f4dda9a660b17548f90306ef531ea2c1e954d1a1f5e4db139e1b11878c6c78048a652ba3be64ff3514decf73c6ac0302047c435bb5006830660231008e49d4721ea9364fbed1d898b46303289dc5b27f5a5133e2e72e60ed79d85681a143c799adcca51c52b27fb30818eb12023100cfbdaec5a5e389778a722dda8575cab28cbaf81a07289a0e874e9ad2091f1bc566a981ab06ce5bc26e68d82f955bfe310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023051fd437c01b21e09a53851210bf70bff3dc3902b3fd3e530d8f54137fdd3ce2b3684cd2e6484835cd495f6be90707a0c02302a10b4bd0359d9ab089e9ebb534af94a83e943282b65d9ccbb57fce7fb913964ba099cee10f6f4051a987871b70dd1fd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100826961595dbb5e87280cf9e97ea28f795f58934933e5c36a7e8185f5f3796046167f482b45386183c90046c142308ff902304edfc4edc3edf4d7735adb18d9e9ebc4ce4a85a0d872275a9a55cb9ff0935c56b66e1decdd960cddece19f92a228f2c70302047c435bb500663064023100c8dfa7fdc5d8517b0ea8e4144c91d6354d8e13d9ae7e09378fc8d0b91b06bb6f6ae9189eceede0e8876d691cf0f9356d022f10c9493d9151c39dbf79c9732efaf8057bef3611632509dcf2291e9e28b56947921930c3cf32106e9838c3feda1b190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023025767daef5e4f337c7a373dbdc120bff39579f4b0ba19fdbd2cd472161cead90e383d83915da850cfaea4063ce0a1a5002307165d49ffcfe80605bfa56bf7a22eab87ddac2d330b15008f24218607d21487dcc34775f7ddedab8e3d469c7c4775d110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100927f73c9a9799350eab0aa94e03fdb065b955f5d7b8523f8f5da5c3311b542fe9f3973886b65203d9c77bdce68b2951102302a8df1bba36a64d66dc1dbce5369e8e01640aae77ea9280b27a3f9ed0b1a1cd7d4f9917ef8814d7915e73ea8d1e9f0f50302047c435bb500673065023100c2561fa397977c44e26049ff7a79e638f2fc019c046accce776c6b9a22b96ba2ea7e15c913636fe2e9cfcaaf2a04a48902302087c9a82c1b8809de6c48d6648ab827cda8e9b6e952ba231fd583d7ade2dbc5ad5f92c4d872e09ce5965af9e82ce0cb0302047c435bb50066306402306fe16b99a4f37888bec6b020669777e9ec25eb43be44552edefab8eae430a5e87e6161a1faf35987ad7b1541d2721e25023044a8fe864f15b3303f30c87c85c3fc460331793d29619f7a805e33726fdcf9adb64b2d4bc65a5ed1992b1a72c84a7d020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230514e1d57b551e76beef04458c40a79ad2e49d9bbc5ac126d35a5bd40a94d0c3858ac3fbaf93f91896d89e8817cfd388d023100c514976560aa50c36359c44bd0b157bee5f6f083c213be6f3279f53b17542646ec1aad8db92d0dd14b7bea92cad074210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023037a785a09f814ee8d78681010ee27094ec4c85b07c76f4097f0f833459a9ef4e4b906482cc9472ec4014ca48aabbbbf002302e9c100e1a251cdac9c536b6ff22ba5c1f96be0ac4c59cf9c9610659b9fb32a61cc81b31cfbbdb45d3596e78546c30760302047c435bb500683066023100f0f15975aca15be5c541f35c167c0c0c22b9b3b444d8aa666ef967f1c00ba1b9ef174489ab5261d504de2ef8327d475c023100f8116cdf99459040bdf2afe863ad26b948fa06bc1c9594be30c7c305220ff24cdc835e4f0ede54577182198399293ad00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230746916e27e56dfe32df252a4d84f4cbe6f3b8e2c69044205d37ba735ec04e602523cce30d22b7f8ff5d3f002c43dfd5a02305c9467a0eef819153362d962235ace1e16f1fc1ac6cc0953c71c197339186f974102521b3761346d54f855561088f7eb0302047c435bb5006730650230498b3008cb58f080faa6fe3655b7df99b0066177d911c1938e08278b5faaa56125735adb96527b06deb764d3675f84520231009fe655e63be2fee25a0fa9548cc325dfdc8dee9fcfdf4b35c9aacb273ead2f587a3314eca4f8f6e747e35f9ea8e100010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230259ec680900509159cf3b313005fe2bf854ebcd0623e6e5621a6202dd65bf805fd3416056590315613f2cae643344105023044f950e6caf1a1b2848caec40e051c3f68c09d4a414cbaaad1cc5a8fcabffcce2799d1f0576dec79efc7247bd434ee520302047c435bb50068306602310090fd9ea89e8b0ff3f415f64a22e1377489cfb16d708f06192a515b07800c34196aea049ff66def66b96aa3f930da7acb023100afc399effa9de4585c3444dc7d135bc55bf696ad673fc5953987ba0dce99209137c5b742706ce47aa99bf11de66315c40302047c435bb5006630640230570c0779d4914f218272b5f089a27658bd159404273f3ca378dd787a35ffcf17a36c238362d5fa91268724a486c38cc5023065027cfa606ab52b2389350749672c5eac91546db1191d8f568673f26a8fc226176379984980d9d22fa386dffbcb99790302047c435bb5006730650230264c628bcc5a14f3e927eee5766eb4c5e8720666b7df242dea41882c12d3b1bc5194386c2a51f2b2ae6d57ef643447bb023100a4e992a12b109f3c76fe619ee4af381920856e2ff1477f4b6f5801d8e9ed631ee1de66943ed3aad46d55d9aae31f7de90302047c435bb500663064023025a96e7d55367052e7c519549cf7cde331e9e2489a9e240732fad5c97d3530dabeb55222bd6798dcbcfdd12ce0c914cc023060550f65058dcbd182e012dea82b45556e148b335ca2cbb6ca6bfeda575e11cbde2661c550516586c15b1a2e7ae6088d0302047c435bb5006630640230241494d1b63474e75dbe39c9a7c2cdf9bd572f9121f015cf8d97ecced73b668998f42bd4f06e5ba6e4874066f8029c58023008041b6113d91c61937a35024ffec66c4ad927304b4d32430eb63d4d8f01b64931acf3e1b7b137e1d48a0ede9742a40a0302047c435bb500673065023100e44bea464a384d80e9ae61dfc2754dfd98a699871d0869dd9a5642e00a936ee81684a85fb52227969968c7490b234be502301dc492464aaeb0881db36296bd42cd26013176eb2bf7f65acdb85b49eaae20f43fff798f241fede34f152f5592a1521d0302047c435bb50066306402307dbdd06231d81f3a2b6054dec238d15723fe6e2942810e65f295cfac655c5286be5080efdce143c0a00a1b90cf3dc7f802301d7c2a0849d785a88faf055d81fece2b9bc2ee1826bb9708f54774509fd78923f748ce8230696b073ee7be131ec612320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023045db9cf25ac39de0f99227cb563ef99ba9f310175a1e9cd80f1df41d2a3c286945fd172af1379c767e4afe338a54d6ce023100f98f439ebfc3fc62a5f9603ba8846114836e2d3c1c9539e44db323d2c55d5c87a85a5d5205d6a842c2b84a2ba66c09110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f587d697fbbd3d838e4026c498d7e7b53d903f11722ffb5641e10d3bfacd7009e4873e78df72e091fb0de52e410c002f02306e01e94825d72e65767d5fc047d13a710aa03fe203ac7d016680d32865cf9fa8f996d6701d6b27b3d569aee83740a0ca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023072e27f6cd0d2c343a1e1ff4b82c8a1eef6ee4514ef37702a0ce75bab729a6f5111f7c33049f719ec3b95d03a5a321d4502306434b11f4e0e4257da497c3575e5d20110f6c7292101c8edd771a4d635b41cd978915f0f7431fce1dddce41d899b96640302047c435bb500673065023100e20c1a859e02e8e591457e357d04f516e4c0ed9cc3d9844979e110c2ead3a74445f61dd08edac235ce1bd6643c91aa830230422534fffa0d81db90cdba3a74a7fea1b80e41b8752dbc4ab57ef4004b7aefeea16cd63065db3e66dcb3ecd002ce4d720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023010f87cf06b391632168694a9a0f3929ff1e683a194bfd3fd66fdf7576eb8aa741fc4d02d8eb2835b43befe5f42930d8f023100adef6b0b724022ee4d144247bf4c2de68e4eb3c5d1c539f017b06857d44b83bcb1dab3139b4c105d6618ce7638498f2f0302047c435bb500673065023052307cb6db30d8c25168738745bc2ca63571e33e1202373496248d9b0572240120c375ef7f819bfffb4efb8f9801e295023100ee0cc32750c88abda32d99bdff8a2b2f0c9e00b283f0d85f5ece48052f2a2b26554ccf84a38a4694191290a324c786a20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302cb7a3b16ccc2fdeacb67efe549e762ce3359756cce9a574749967befcad83b98a788b97f5bc98c0c7c373d5c05b343402301124a65dd3378fb87422dc17879c47e66aad9ec83fbdcc6b20ffc37ec96974045d7195586a22eebe3001c67a2fa5df7a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023073d7cfbc9662bd1c7915422807a9a5f74e7671984808f4ce37a1edeb893f527e49f80a5879a3c93ca5da828fd5706163023056ebc574d0ff3e6be143a5666067b122b730705d081640d4cd0fccbcf44eacb34ebc55adc750a47f7698fadd8519338a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023056ab7855e5814e090e144520820712a38aa5bfc518e3307437f1341ba17b319c310cf4b02a4e0f6763747dfcf58a86c90231008afc111fd385c5e5260f88d4dccd4a05f10d203272a1acc429d0e1d18bb9cc0110ef5b97e96a84825980b1c3e4a03a690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230327c2a05b2cf151aa546bc08fcfa6e77ce40e7d9d742a83924e9eaf8b4cc7f95d110b04448638a8106a72098ae510d2902301ecdbaa2b1fdb5abef3251b2750c30fea718c3094f199ee166dfd5bcf5942746c8b233f7e375fe73a93a9e8e996b26940302047c435bb500673065023100a927498fdf3abe230538bed8c7ab4b31778c4d0d0bf083d4420e9befe7c99e9903986cdec9639370587617c54f710e8602304c5c87669a21d982e29764ee10f665edba8efbce60e298d17bc86bbb70e389d0b4ed933a92a462454818cd55bc0510010302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a673ba25b038f804edaa1e0b45771909d2e2a9dcd0e1b56c1ee3beca233fac58ff5716a44c7766107768c82b62fe492302301ecdb51d74db449e28d794027821937713c832c254f5b26d1366342941ad7c22d9597fd1ac71021504ee5a475711b9ce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008e3da88931388ee9a9b83b4d75bd936cfdb90c9b246e87190100c6ccd877d39c445529bba5d4c8b98050aae27f282c360230106cbda3395a0c1b50ac5cff6b3a5303e061c8500e303715a6e22b631e2056ef98bc18fc27571c8223e40757d25b87140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306b9a8b7ea7a1426837105ce396ebd6f7d86834ab372a88adcd5aa59fb8ce03b0303fcabab86b4fdeebc74b89fb57ea160230088238ad90c968a2e0dfbd95ec35d554ae7ba52c525fbc054bebfa62055b6c6de9e99fcfe4aca882c837820793afddd10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b1814a84a4b48db4980b8dfe29ef975f6571c8d56f51ab4958670a3f42faaf21e3ffcd42f7b4c9f463dde49a9b4074d8023100c654321d7a31420a59410b15cdfbe860c66ca875a0b8713faefa8e2d1ec5d139dbf2119d385d6bc5a1f15a75a21778940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305a8bdbd0f454780b73915157ab78df671cb9a40e70694e928d14a1b08c58891758e0d16756736594ed55b3bf81a714a3023100c7772e666d57b9d703bec9c984703a2d1836a9d1f4d0b8deaa0986fd9c661cf74005df190d55dfcdf1bbb8288f6314710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230011630b4623ebb58c742be44a9a18c83d48fd4012fe6317239735b90a4bcf8605149785fb0e4efbc2acb0a412fcef585023100aff19e5d3ca4d1684f8fe68dfd979401ad85c8e600b97054cf38498be04974423ae8b4581f2ec800460018466ef6ca770302047c435bb500663064023079ea907c7759f5a232ae6e7201f68b8d1b2240241d81d2d449f10fe542af93f953a300178d4b485f2bc22e0b24242d7802307be6c8770d421c9c9c22392f220798f6c44f487f2da384ad2e6bc7c689023b95e25a582b3de2a63a1748629a194795490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303ccbafda6f50d25219fbf38e219db960b9b7332ab5b3d6ad8749c65f7aecb8c784d170cef57f3cfb72097fadfaf28d45023100e0e0d9634644c5a693a24c626b67ce78a6f6671ff516973fc553428ff5184126e5d3e7962e619a4c9b2f7e9cef11700f0302047c435bb500673065023100d77e46e5bb3d1c5e46801a394d6471161ef9a7d95e2c62c73bff013ca57b5dedd720b9ca814afd06650f26511ba0f28c023021828e5559459534d5c470074fc16297b7bc59394845246804f476ebb71e832c571c7ffca7ba21e24902173863e52cbf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023071bc8184172a8c2d52223039f3aa93d905abf9785daa084fb8377e01610812a9b800be88af7b5d3f1216afdf22ade5e30230065823d7eaccb67236585afbaf6cff8f086f2fd32ae8c775b2a2ea0b0f2e0d9e6cb0036f802b02d7c423c188bb0c66fc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023020557395b39c25c26029abb35571cbcfa23b6e160ac2cdeb0c11bf8c8b3c457f1888de0eb9d405c6bd8f973802868258023100f468c14c60f44d8ea825feee3f06544c6ea5d1d6c39c1465b62da389eed65291fab50422c1f76c6ca5d9ce901806ef960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023053ba7612128ec04ac1d659fb3e969bb98adea88e93aaaf52145732fc88dd865a2676de2312972beff16fb113cd7cb6b5023100c1101cf2867c44dad9686252d572892f9ad6005a1d1eb44ef985f78803cc1a357ead354fb78d32dab10db9905b52ada10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009ae1246b4cd0696cdf430a3b66e2b46333ba600a8128f120a0d244eb7639863c6be3b09cc7a0edc8695e67b8f37dbf0c023100b3bf66d1d26f713fe499886976c352dbf7dc446ee263768b21cc42a4dffc50a35f26572c3cb265328fe4df300cc84a8e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307fcf92e860def183d6b23e1280e3929947631d158549902aa9d1e717ca5ef2463607d755940716e5c09b1a22a5e401dd02302dd5ff636d582a056900d11e72c897467f7d61a762f358124c6b2e0cbb4de5735285d6191bd9e4b02892152d33e4f4a70302047c435bb5006630640230042fae4fbdcee3b0de28d392d933515aea346c3cb4081b747101a32afa73f7de6034895b1ea472fb52b7db740e91154502304ea3de2b656feff0af1256d8792f53b85f4515c7ef4735a0a71628d51d614626ce7187b6a8453dfdf4ab6635c816dca70302047c435bb50067306502305f65f23742344f6501bb01fc818a1ca75b059ea0adc489e30b269fb0d3bdb64528cbcb4bb505ae10745f74384e1e2673023100fb9e3821818b283525292f95be0e580fc3437e2517d87b1f72a4162fee615b845f9e2d77c643711c31541ed4a58357980302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230628b98ec9bee4ba6620a8cc5cc3c19bdb4b7ff06d88b99bec63a0de8848f5c4301a3448610d4a1dacadcd0bea7bebf1902304e120ade9b10d512ff28ab5c55f30ad518f9dd1e75c2891e1bc168a24a4353f9c439abd02d78d379e97d3f9e55681f9e0302047c435bb500673065023031d6adacf1de1639052079dac97cba0054235f6bf2f8083dcb69d594529ad335653685bed8e75842bea2f2e75426ddfd0231008f60c28456ff40d5c4b282eb51b72bc7b469b182e4cae68ce90eb9c41ba5d1ae6c90a41a22741f0206c1e335243cf75c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306628a62f2a7e86f2890d2961b847e16cd4c123638c97cca7559320d83f07cfa5f9de5d45237ed9506c1bf5eef43fb346023100e264bb0002159e3bc05d99f3c745b77fcf1d732aa134f19e8924f5ffe20a251ccb4ef97319e6dddfcb4d4b3a5c372e4e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023002659c415c23c0fd4503041e1e0410a1997a158921ddb9d217a8d0ccc5259b5abf3b0d468ab30945f9e06085adfe135a0231008fc7940328e545621e9a31afdf37190ac8f9a5f2aafb02fb5e118ab889162a5e08430f8f9c2eb15b29cecb89943853770302047c435bb500673065023100f1232bb75544e214fd810e6f0d75f8661b4a4bb7405ff57ef12cbdd4d93a41cbf2bfeff54fc9e1b0a26b5072867cee0602303f5a8a7506dddf8d305f82b1de017a7fe1f6f3c1eb5e3866a8c476873be5fd219e0b7209fda0683cc8c81ffa36869ccc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d4c124ceef6e468e783a4c8f02521e550b833d19a45b872eb42ad0aba4dcd622d3d4ddd808382c799aeff8b852a83cae023100ada36b856c5cb4f664835ac70209839a1c0d1a73fcc52c1ecfa1df17d8612f823eb1c489a2cf5def843d390afe1be9840302047c435bb5006730650230709a442b50b87baa53eb91c6e42286fcc92e22948c95913713655a0eef4098009208d987f7446f1b17867835c6ab685b023100d774ce46167da58814dc4fc318f7e220adffea4c9b1b8fd3d8d55663ae92d779dac54fa953b8c5b61cd5f7eb65ef19d70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a899f9ce3010bb58132d06b80c7b7b5be1e0a7bb5987abb8b819393ab1625556df3556b2064c563811a28d98b194acfd0230625ae43d86e437b02ddc33eba06cedfd169b62afa2fdba8e13f3453d1fdac61f2835ed9a1dfb4de1bc5f212fd6babc960302047c435bb500673065023031ec9d236295eb33174fa6f6b2493fe454ae5b0f1f95378c069d1e95f8f0410f8338e1710059067d0b1ebd98b5e2e775023100c2ecc915decd21d20b57e4ea90bd59d4cee6cef4ea3e9b64b82bc174226b2883f9cd90617d5e6f62db49b9cac66bed410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fb9bfa42bf1c6e99f74319385d8f055f9e4fc6614382866d779db0d0e3dcc0693a70a813c92f15cd970502f67e09894d02306d6c4a121d816f3f74e878a19e7f27dd756c676019967b50b453064542d68ffe0bca998ae60c2b192a19fc0dd01089b40302047c435bb500663064023033c3732685e6a7d54c3c265f5dd3911f57cfb411e6758d62e1394abc378c093fcf8606024635d10360b3b90370afc27c0230038ed2a11d9a210d874b4477098dcb5bd2db7132490e7c33210ef410c3f47e9361cb6add827872b0cb9ad19252868b360302047c435bb500683066023100ca28533e386e325d746c812724865e00e62589e3e6f9daa689f3e9ebf474f6be4a54ac8d85c80c22279896d8021bf0ca023100adc1574b7546246f9e2e72783e6ffdfb0499176a8c216d440fa8c226bbecdcab26f6d40c110292beeebcb195b21a44350302047c435bb500673065023100c2fc862de19945ac1daf0a0a2bf4debf2e64da96bf4502f723e3b2cda8dd69c538e5d72c319eb9aa316d98a8b45ec89902306c2730d2779b1654394e7c9dbc544c56966ed2a5b1889c3d0927264aa146e5a207c6b9a834759347f8b6d91d92044ff30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023100ea4e2032f97079a9351fb9f1714037e8d7045fa8736e5b9e36e49ee7ea94d4a3f46c3e32094178c92d6d0d82a8d28873022f428a5f570132fa7884c015d334f1066450eebca974e6b2580b2a3a4e748b4d3ed6f8e91ee47c160662767d2eada93e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307a91531c2a83af2bedf7a6383e84cefd0cbbf711f1d21d1ace1082bca77216c8d66fce698abf7e01821ebabe5d8746d70230372b5e5d92fc873fb1e7d0fcf9c3a9062a2cc02861723becaad3ea28728c8e80474992111f4e33a3c602a481d4065dc40302047c435bb500673065023100b96a146a858f947d0ad7f5642762991a666e7803b28f8604569ac83391d3f43bf9d91e51e6e759debbaa8d5af8094ef102307b8d2c712d8dffcb67aaa940b8974a091c29f3e1c589a0e89635797127b246657a3c3baf2f3f7af52f38f3d467b351320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230401e479f2938c51a9252506e1bea2e068212310534ebbea11b9d577ab25ad2940b7a7e26e2d1fb8fabf0d0fe708a7796023100fce7e771ab4e5855743560b5bd538352c1f9d4f4d60c6a8cf0a498ca04e31d3f810c2318e3906ef0407f00454fb5883c0302047c435bb500683066023100bc6790ad437f32e44af1276dd26209b4c0c8aedc4f34c1b85bfeb57a86cf990f15b9af5241da051f4dda17303cd52b9102310084997c5209a78c8d3bc1686f2c7ecf6352ef93e8ace4418f4085daa2b5cde54ee9bbd7bbcfa84623ad1662645db56baf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230489a3657fb5c78e5acd3165d982391841593c7b318879b49326080c570588056ab92a603a6d84fa7e0f60555f48b92cb023066aca1ee2a93f012ae5468f71b46afc0b003a9e605c6195cb9715c44275b6cb02229663fbb2060500d7bd47ded6cd27e0302047c435bb50066306402302e67cbd3dc5e4d86fb03cc1301d9e33ddc609e9756e95d85eca3d5aae7d93aeff470d3997d8b613031324fc7a5c6e31e0230642c9be675bf89145fded2891df92b05cef232a6fe9e697cc4fea314de655a405eb06fb91811c50e7080ea0cdf6224630302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303fbfeee09f9f874d851a50f8d386a31340fc2cfcaee37acc5663f3bf62203c3f5cc8a710cb1d2e3409c0e58ef515162e023012ee82dc5d94fc190fc1d2c933b23c0b59fdd5aa371ba80eb155561f26f5d3e41244ff8519061eb2fbaf5b5154fb20c00302047c435bb5006730650230220ca70c53259b047ecfa6a2d036ef732781c3766e5de0a9a7fe9f12e755b484de2ef6f7e64d7c4e0919472a3b2c304a023100c34d963d162410a6a8db7eab019b1082eeffc5856d58c94e501dc47320d7e1960267fae5844eb985f533c014bc43e3f10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300d5d7dff82d19c6e1821347c20dc3f509722ae3ad379999a386e3cd3d9cd032caf5593abae46c827f222992ae0bfc53d023009a6963fc7189812d0888bf8fb405badf097a4a911ab3f1ce6dbd0874f28aac48db8b84c30efc5b856c0982a0cb80ed60302047c435bb5006730650231008d6ac49680fe8d04957768ef7fbbecbfba031bf32e2e9379746d6a16344bdb54414d1fb6c77bdc695d64eb624b1ecd3b023006ca191cefbf9f9c7166e5b36c7fc9f63ed42a3cfba097eb5a818f56efcb431fbb62d66159ab96384a4305f6472173a30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f582af2dac6868db6dadde1ae917eeb8cf570b283bf1fe74b6e4fcc7e5c193d22560c4de62de106fd1b9622209ba3159023054ce8e22c2536aea88f3651518c37a4b559ff2f1d63521f753120d58e1f0923794ef9f01b5a8c6be83db4eed619f7f550302047c435bb500673065023100d5e9ddd075ed9dea7f75663a058e3ade4309bee8333e2ce682fb5318855ba59fea327cad0ff41130f54acdbde697ddf80230506d8a7f5798a618e4922d64ce7045381eb6e9bd02308b25b7bea69a216e975b524365b994a6b6bf0bcf057c7bc9a77d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aec47ac9b83a0f5993eb01056e623d0633a2495894adf76340b519a087871b0ac34e350914d0825109609f6c23e2454102305fbfbd3db6c70c8ac0d7b8e4c5bfb0135c47df09d12515e21ab7045eb8926a35b9fb3082911c6cbf493c99a76729c1140302047c435bb500683066023100a1be07072f3201955630e2861cb061fa001c56d9c7f0cc6cf7e572ba7fb63bf87ef5e782a7f381040babcd0c67c705ae023100f9a7b03e5f727c7379e56e325b9ff5b3928cba85b6fd85efa2926b8c1b123a8aa710627a406bc72174977583d85e41b50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100854e47cb69cf9bf50f4eabce3984e4a5cc5df8954b81229fcc7c3378d08e917e921fc67f0e35d37f20287d83189144b0023032299d7b45b9fa3847972c410c62c537bde4777e583eaba4cea5af5d992d6347f50bc02727786319cae4d8bc4fe0958b0302047c435bb5006730650231009f552abe09a777da3f247e7b36efe02761bf698ded0cc185ffe900014bd748c58d8935d5f7641070ad5528917da1d9fa0230568db7ed7af3b3dfa6ec499f5ac585ef21bf5575d4a765cffdb8fa00a33e461a7401906188b725caa4017c0b1cafddce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023066543c701636a76ea4193cc4e16e569aae56c8d3a230fcf245fbc8c63530151f536c70ba27e753471f7c35ae4818c05e0230213c7751db41abab566cce9280e0236081a63af53231b99108d51f9e90b216bec11e1eb9286fb4c90829f7ff461c49930302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023051f4f39a22c08de987c08f67e0cfd8e8ce7f44cb172859bbe064d08bdd33044d344a854417f75b1be52694d0d77c4ba2023100e787389de0e91b095090a84c2c02617d692d61d695dd0cd13573afb73dc129622d176f73501af5b6d8c7c96dae960e700302047c435bb500663064023030661ea0462d0207bd364de8f4b4aa7ec9c4704737127c9ed81bbbaf1719053ceed6eef87bd3bbd881271d31a93bbab102306c83b9fba8801fe3341099eada56641d1d718efdfabe65c2bd24c735bd197044e3951faf8913913415dada8961a3111b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bec4367d64bafe0a712da38bf31fa78893627e75ff9ce5ceb9444b66762b7faf109a1df1757bbf9efafe9fb6ec895ba10231008d5cc2ab021531c03fcfad844543a36c5394ab58cff4bd06b4555e59be70c24ff4277ff195298a43987443f8bffad9150302047c435bb50068306602310080b7aa1505a8ab740d01f3c93b17b601b06949e0349f515ddea9b5a1a91f8f4e5377490581425d6e24f8c0b0d82045840231009d88d42a061fe92d4c2012bc619bfb1d5edd0a7b9163fa0125ad4e5b0c0880f8ce854eed0cab9bb68359ce3fab8b93e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008093af0c0ff6aef3de599031e7e1b6c9b2c5d2a1e34dc5dcdb8111239012fdbd218542083d2dd290e630927d41442576023100e08655ca91247961b3486dacf268831d398d45c26f029ab36173d845591a3f52b8792736679662515e6acd0645f4a4190302047c435bb50066306402306737187c3b3fae11b8d7fc315451ba7b1db0ff1dabb03606d500b2eabd9f49f8dcb2816e659ebee49ee8b18e29095d0402303f7264829338a2eacd3e9856eb09d4d9bae04929bcd8c072c9501bde002dc650b2273dca6a42c19f443d2baf7ce718a70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e7c84d7a85531c38eed5c6f94033eb3c83fbb2b7a83f4152b6046e01f0bf8c04d1d781a21400f76b78f1e9dd4cb5e0790231008e19ca5706398126464f10d86e35a93e9c6193a212c978d092e8e4527fc313b3d4e7709fd81a7a0273c1a849c2f2b35d0302047c435bb5006630640230645af3e01ff51a949880793fec79bdd605599b18cc56e0ca3fb9b360f3450969590f677e6342716109c05bd64e8547db02300695c299797ca9703ca36b670e04f2298ac1e704413a6d9b832e3676fc91c39d24e4f9d82a521112cc83a6047de317a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305a8bf648024d7f6a342532a16d978b9bc5dee8304406d6f472135eb28c19956b1087a33f576424384db7600a56f5457b02302d1bbd851cbf11411c8b3d87eb194f1939c86bca8e332b55368333e9c2ec1500dd8d0f2a5537e58c880078e7480ba5ce0302047c435bb500683066023100cb9ad74b09e7a3d9c4406f28d51bbdadaac82f2234421380c72bc8225ffa654eb6a9a1e75eddd2daeafaa650416addf4023100fcee1b061bd92bb054dd59d490e5de1ab5e576a0f999326c5c1e0ee1af163cd77f5eb06f3fb87a4234d67538e9d679ed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bae1689e880f51eb068bc1ab90d8f2c536dfe41007ec2e12d1426e492c4af5d04632e3cffcf43b22a0b04692c2fbeacd023001faa3a8f7499618ae0803735a2c0f02c137e5f0a7c5102c8b2e29ea862535381e7babdfc211734728c08b4d4b14e7ea0302047c435bb50067306502303a05948f3914e0c1671481b7b4de71a139560f80db0b28ceaf7f3b518d60578813b7058aedf80873cf48c16ffc22b830023100b2891e301935d1486bcba8c77587c439631695d02dd7dde608335c259c9813e9c036364388dcc9d0fc88250d7d6556190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023023dca93c2a92f7f3102f784a1dbc8645043ee128731d8b9bc98e226384005053f1e7ae11be93363e9aa0bcd36667d0fe023032b4fa15d32cfef5ae4424110a60e7ea956b6218f76f71befed2c6a0b9ee90e3ae8f9cc89b997485f04b065738a7d1380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302187e731f594f4a6c3deeae6d67d25a19b0a965c2eac9e3606811dd08a6b54a0e78e472bcf86b10297395572e0511a7702307f0d234583e3e2b8ac899f02f7fc2f452356586eb201fdc8e11093edb2c3f6bfdfcaefde54b4189de670c97fce42ce050302047c435bb500683066023100af1ecd6fca453c88313b77ae90a592b15029dee4c3158910754ac94bf697515838cfcdfdbfe57c808991015aa8e148f7023100d878a0be54101352815edec5a459b357f10855620521313e525f83574e888e54592ca4a0a594568e955469f23b3d185d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303917706c939c70a1ef5cb084dc4971014d55010cb78b10f15dbc63387f0215f0fcd22693e7caef401d34aa3637d36ea0023100f18bb1fd5e6484d80f6207fe314c8a186f93d6d86e3a9033a44a45941e992b481cfef9dfb56249c70a752656e8b96b810302047c435bb500663064023044d534dbc2c526a9b18994486b9b823a8c5679e8a28767baef8c0765c149200f8c41a08bac7a831918df1595532c1f1b02303061942cd830958d717566181ca28ba704c8fa3a0585c53bedf0ed540d7fc36bdb7ceba32944c4a6ecb90e24ed64f0c30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023065be38bdab404889a09ce2a40b3f30413d6a05ee7d49cde798bbe19309c5d2c5b592e6735814e57172ac831f90ab2b74023100d58ed49662c62d7c3068cfedb52b8f30510abea7c7ca70f16baa6b61b910e0eb79fa0a45243f446f01e43354ebaf867b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023012b71ed9d69836a87e67ab49c221908c5b79eee5abca5f8582a4dccab3bd34302bc18ab1cf2b7a2ff6d71d32b4750deb023100b82ab334b244bb474105322dcbaa71f5e520a4a659cfde273a1581ade5d1a4b29ee344cbcfa75acde359b1e7f25350890302047c435bb5006630640230682f6efbc0913937bf4038cccc856c98d3da32a01a2d6292f8107998d2c76212847df4eee8b475122c38ac14530dce72023024c19d07ebf5c8b20c06f9fdbcfa42c5d04b0cdc5c4459b8f20a8b5a460a486424a085ef4f489e8ef3c57dbc0c3a94e20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d6154f1cd2a546e11b432d761c4ea67010612553d0ea1adc74157c2dc0e14423dfa51769f5aea50046f0b4ca91f527490231008c3b30a678b3699e6b95251672774393a2114cc03e78f863ab9576ef94fca7885ea6ebb63a77674259f174376d839d8b0302047c435bb500683066023100f376e5081b6a99afad91f6ed88d05b2106ff5626bee1902fcc46476ef4fb78c2a7da2590b32e5def27922961641477d5023100a4a323298c8080b3b06756885ee795bf6982db68d61078446f5fcbb50f1f15635935e29ec13823ccf5fb4b4319c497030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c9d1e070d62f0a23b85bc8ee40b68f40f2b812d8f6e057eeb0dccc6957fbc1f04d99ae2191decc5936775657dab40c1802301c76acbec3a9215f0067e79fc6e1150b2e488da0fa80e9ea84ce01f25630674b94bfafbafa48755d95df6ffb585e46c00302047c435bb500663064023035107b803fdfaf4feb7de577e58214d187fcf497812749bb9a05ef105c808e7d406269c96a9164f15f7c8ec3359f7adf02303abfdb86c66a4d1632e72a6f449566d890a8876e28429682da0da3734dabfdd9a645c22942f177a3eabfecaf814a3ec70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e53de1955f5d3058750d95ebadac9f1be8c18c1500e84074d7fc0cf8887214336b753a58214634239dd26e301d040f3702300fc7bf943e8fb53d4185cb9b3b437b10bb606d9c922e4b166dac98d5e7a81278cc3ef350aa3ce7b543be907530a68ea40302047c435bb5006730650231009ad9f76bc340740087a2da7fe1addfa225534e6074a5d41e5d88a5f129939d2408df37e935991e72268c660550cbfc1d023029b58d7d102fbd5b9fc9e6884cba179dce90bb597405da22c2c841a85e3dbeebc6f80433935cc34144d360ee0bb45f660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310095546d33d099986501fb1cfceca45dd95627034bb81c2fd548153af95396cfbb60cf44d21078c935df5f73bb2547054102303b5d63a98bf9b1ceaf74f1aff3c0fc125a9a14da2b8e543869fc0bc89d68b3ed3f6e2c3e0247062060ba8c6dafd607cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302a0e61326d4079087260fa975bfa4b59c6a27f23364db225a38eecf9b90191758fa6f7be484cd5572fc46a3dc19841bd023100cb59e451dc56df53ab0ab934ef82f20495fab7f0399887afbf475bc0723e6a835fdc3c0ecaff165d7b0f7fdae5a01bfd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023031fbd879c3f7dad11b9a19f65ed926b9f3e4476ee95f5cc42b518899f3ddadc8b5e6f775e8b30d0478d3998b1aa048a50231008d8bfdedce4f3364908fb0a43742d95f82a1bfdcf00e0cdae8b637537356b7833f880a393de7dcc51641bc65479168190302047c435bb5006730650230477f353dfa48477de07c8af90af8a063927bc606e226ed3d5090f3531250de8fe304ed5651b6a2d43599519a5224a9360231008516a7238993838cc6b14c47ad8189742dc6051d765f3c2cb0811cf5c549ecea8763111cf62c3302c425273bc4632ee20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023077fd08e2ff958a82a151ac57c10f552d5606f224c6bdd600b8bd0e8733c1535b07f4b7b981fdcd235f78a47e5daaa185023100ff13d0d2367533a6fea998fd3cebcec8c7f82e8a35566daddbb249b085c11a145c3e66f1d100b57ba5d64b9ad611c8370302047c435bb500683066023100bb36d8cfcb75ce2626c2c33072d50145b178c85e6c7776bbf2c051310df40d64de9fd13cd3bea3b2aa25ff72aab4c0e6023100e4799d9b907b389476c1adecf2d71e1b3e0fe9f5083a00b9d035cff5f0327d6e946ccb1bc45462a4a61a5833f5bf8d140302047c435bb500673065023100c2f25eeb31878b11a4aad705854cb5c3adf4005edd0bdbca07f565d879adca7f6981bf0ed5ef7e23837f6e29e4d2a62002306b51a30352c7b07f20cbaa504131a1056c0febd4441d73bc2f651772abc1abbc15e592dcbeca8b3808d78381f0aa0b620302047c435bb50067306502300f0ab0d4f39b338e0bcf634191296b22523fb5d7aa3a0a0480ff5d44dcb2837f90d84b8f202e138f5c9a21489be1f57e023100b2ecd782139f39be28f3fe24b9a6eb8985ccf1c5b2c271ad04521c11ad033d05b81d0fb4e7ef1d002a35ffa1c6947ce60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310099f7119fd1f39ef84a052a0c160effdc658cc65bdb440f16f281cbe76b9e87d481bd8e92f0743ac9e9afe5b323ec47b40231008aa41776d420934e7fcd04a11a9361b3b760a75429962bbfb6f1a355f83b73a856d6f57c7645ed870ea91ec562023dfb0302047c435bb500683066023100917dc05748ff826bbcac467c0813129dbc325d8b40f7afd3c150010103aa1cfc261b13290c042d61962b9b3ba718118d023100875f232babf57924ce1923acc1d29197d6880a81b57fdd6f5eadcfd32d93f8fb0a3ea780ac6e4a5ee740a604afb2ed4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008f75b27e8f4e4e883a8cde684016e58d33907fde5fd4e5b1c73d95cad0e4023fdb9c3ca1758fc9505b02c996f35c95e0023100f49e067e27757291c8f8bcf5e277ba84c588cd4e32ca742cc89ea1cc2091b20e431348aaf555aa4a283b8c73b06e25450302047c435bb500683066023100a69ccbe122b291bfd98f7c3bff13de71e547b8adf2040eb8950b0ef8a6b23dac76f2d557568abde033bfa948b6a1e1c3023100fc19e97e94d125aec744c2fd09becbff0295983287ecd961e309acb9aa7e8f14d7da4bdcaecd2142188ad1e42d6449e40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d037ccee344f3bd9a8fc1f7b106ef54ad6c85adc3b80448507c772bedc678df48ca382618a4bdc8f646853bb5b8352dc02306814d53d6b5ef2265ca3ae53462d446648a8a8475d1751f9c01290af939bb64891cf1ee63fe497c44f8bc56f0bd7fb520302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b3fac7e195d00ad668238dfed5162f8aa58b4e1616da43cc04cf236f7d21b2b850c9b9880323a2c0a02b1bddb8825ba10231008459b25aff98987527ab6230feda81c58974c08f3ce227b86d18dcdf43dfaafc1e04332384c2ae075ca2c578460a82020302047c435bb500673065023050d499c1d65e7750edcf453ce4bc48a2c1df4c793749b61d85c7fdd2c87103672ad6d6ee3ba753517e44ed7eafa3a86f023100b690dc69088dd34af6d52903a5445e905debd54ba4043b797a16e9a0aa4ef2b08ca3197fa9587f6b2d5df38c5fd7a5bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c0c3bc3c4aac36eb25a8ea4d1658af79046398823c84474dc21730897d3a4a181d310f6686a3dded60e4d11ab4769f0302300754022cb48de7f4dd632e12ca610411ac782062b06a3a36132ca7d52ce850a49b63e1e4fcfc931b104e10db762eb41c0302047c435bb500673065023100ff672a9731bd829b3dd2f9d9b2cb922361dccb150a0aeee446a9517c3713777eeb526498bcb4e8ac42e32c1ba4e4395a0230364a38a52d63931ccb8c21e776fd6232dc15acc2b49a39eb1e2d5b3fbfc8139fece2013aab0f676e5ae745cee05452790302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310092bf6640d17cc813cbc1121a3a08633d27d11eaa2704f887dfe413ec49a0c630b817434b6c0096e0069f24aa90cdb960023010c9ef319b7d24750b29bfbfd4b081dac7832af89382e39497f048236eb99701e467c20d3860898b0732ac144bca299a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307fd00f30fe72e2c2b797a009aa039e708e357c747b4e129f551d7ebd6f08e4b67ebe6a8bcd2d4fe48ff5cc7cb1c55eae02301e64ed270e98b339f30d1175e6a5f106ea9fa78d37f6169fa10293ae0c199624bececb563ace8edbc4b66462429a47770302047c435bb5006730650231009bc5a3206baf7c4a57b0782c28d04ca1d86b3b2cb1367c552818eca24571a589511efbca7d798b4a808c51278511b73702302fd002fe19fc65cc58f529f159c22e927619d203d2cc2160c6797ae527ca3be7fd1c4d6fbe5e25610e42e2e2589c06940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008934ec177123ab6e9f19fb1ccd35df2db62dd2e5ff98e1f4c5f2f96e2675add85064809c6ea19962ac440165aa0d3ea602310098fd9b21a9a5b39cfa3f4d4a66850ae33d0f53bc9d2ae9178c7ddf0833ae1b4eadbc177fa5b353abb2e5c5d0dd16d41d0302047c435bb50066306402304706a0b2476dd205e2597b3c3a38c68a595dd7975d1fab537919bd4063531a61b57aaf528f78f0b40a4065a3a7558839023024b7613fcb81adc12b675b8c7f9edff599986652eeff1bae1634e8bc8aea9bba4031d5cc2ec3fefdfc16b1971d34b3f60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100934be9ee2c87ce4699abbbe90e1d31dc6b091888aed191524fc5822d2c219d9660895ed1d42d4eaa4575ecbec8bd5ac90231008506391b57b331526802c5ef15f8a1b60bb86e95fbf29a377532166379f0118b5b86cee6e3f11fc8c38a4c55d4edc3f10302047c435bb500683066023100b9dcf8abf30a05968f6014f8eae4184ccd596b9b907b0058bcede8cd65979b4108bccb84b31792e00f141facc45bbe8e0231008b3907008b8540a7f6f28573bbc6980ca7ef70e997b1d583bacd9610a1eeb5295e97481bee0e1cea26e05b14b1b1d0630302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301bdff2ff8216e7503e0786c62c91d2ae874084fbb524c3ac42873f55bebcc923b96427f1f0e948b907de8d40a732b33b023100a35d1457e0f1ffb8e5851ace0cd369d0c15791f4f8b233b511e97d18521ccfbfd88fa81081181c3dbe835043620859180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300d994bd96ad00662e3bfd3237a89b9012b9eba10e7b4d45282119f69a73ef85c1657a2a9aee2a3c20cd6ce4eaaf461c0023100cebd3a4b608d1eab0cb7bd2722eb52cb5a2bfe0da017023eae016ac0701a95ef7486f16bc937a02379bd567876caa0800302047c435bb50067306502301f4a93a821dfba485b3d3dc71cc20d12da4b2dce57de11731a1d3dac367f6b6e8d7e146afdb85ac36645867ade7e046f023100de4564a27e7d94a6ddde0fc48c8cf9639833ebe860fc7b51aeab7b5586b236c929f9ae96fd3d77695218fa6d45f8fadb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304da60adf2b8291d8b48253c3a5bad405bff91988a55cc495f6164124b2d87c8559d0c4c8009218be4ce478d62b190dd5023100dc3c56a75eef567b6803197f5fdbaf7542b978f7c2ba0d1619718de33411fc02468e132a33b8e36f37b6f83abb5079da0302047c435bb500683066023100b0613702bb799f9b1ac1496e10d36b1a9714fa916529274e232beb3de38da8e8e8d9f1b0bfdcf057dd17cbf6c7f22271023100e29c5fc2420514abab56d29921689403ff706626bcbfb580816441f195d01f5f071970da283a87357cde8ad76e0900530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d4464e380e215b3e624f5a0f46f982f6933da9b04d8bae05cd39bb9367b1bcb801287c5747b75a4916af6c9f880263ce02306244fbf2b719a4953dcf4168f26e3703480e60683576101146f1a6f3b0e1d9418875074e4b1267609ce486c489dd0c390302047c435bb500683066023100ba745822d126edd86b04fde7a477be353b06a9064a5770315d5cf96fd27344b8e5799c8a21b6c5da7f5c674e29e8576d023100cf072fbbfc948bc4eb525eabd5c9db4603e7e4617259d8630cdee411cd7480bb67b668d7dbda56912542d66122fbbd840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303f209f2be013b5af41fb733951efd63b08311a2386c0ce8274bfc6db0b6f26fd7008d54497a533c9475caae3d67894a5023009a7da0b719825b2d300a1f9169c842d9ae0438944a7deff01299d7b6bec5b42f50178c090d8c2e053a0398900bad9ad0302047c435bb500683066023100954c0a5fa1e3094814cd92266a0606c12efc904173c317bf3f0d5422547eb32ed8845591145ba874a36fbd2a98d6ab60023100a624549a58d15f3a2ff8a5435dd51028a69ac6d076bb7f49f77c7293d52c7b0ab651131263667b12ffc619fb59eaaea80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d014d1ca3ad5b8cdcd949e1b609a03ced6722f3cf6035bb42c4ffcc2329c3a402aef01662184b8e2ebe5c17f7588d663023045056c7a0f974867247d0126b7c4be16a2e7db5dba3582962ad65ab8377c5f49235c2c2e6b6a707b1bddb7fe6aac1c540302047c435bb500663064023030fc69875157b792afa3615f6960adbe3d3bd162a5bcd1c3450da47146579d4554cfb8c2474f1e4d6f5b17f5b583113702303021a95a58f00410bb5128fb1d687aafe01327f8a2e0ca2ea6450976a2f759c389ae36eec997e8d16b438362cf612dc40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230675c06474b961f4103650be32b7aa138aae7c9fb41a19940294ed15685882e7dce1d0fe889a285de4c3dee531a7b6540023046ea158e876ac709ed88a3cfd6abd2f50e0d99dd3544b742be2607084ab59040423f1e67e62c6b8d0dd627281e2fa1bb0302047c435bb500683066023100e9e73109a697c67033d5402c5a20f5a022e8c67a559579ae38aad3697d85113572df741f2cad02c5eb80171877033e2a023100c2288fa52712abb1f4be9c7c273629d1c87c65807c8e00bf3107946da26a51ae911ff2533f88965aa333ef0e6ca0590d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b525ee3928b148902537544d877e04a28a5119a69950411b9985b70f04e562b5fc86883d0a34bc166268e80bb9ef8de30230483cdbd889efbe0a0bdae2d8293e40efdc1fbf974d44e00600e317a5e98721f44817c670a5961ec76229448ff7323e900302047c435bb500683066023100848a9bf050a5b9f964db985824ba55daf7e12cc7786c490621a5e2aed133e298d2c30be8c39bb5fa2959f1df26ac8967023100d204f0cbc0897829f062c2f698f0a10310804d1032704775bcb208f674297fe73b592be1b3d35684fd183fce99e737470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c2c78c12e01ab071d569e6ca99313f7571a7c2f2f30f94d8612bb95cfd17371ac316e4260fd7d229c6cc917270e88ea102304c168236c3edbec133ca17c751f03e8b3a9055588abea13668db9ff8f27dae4fed0991db98c07324de95095842e481e00302047c435bb500663064023079318a7ab12e1749655f679a385132751e0cad076414606ddbd7f6f47463edb32779c82c4a7a7c9701f7436e6282d69e023068689be37ec1ddfe263974a8359e6ba1e974c13bf046cfd87822e0957f58dd047d8313a603920fd20b2d23ef68a2314e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310094c56d483efd35f66aa4600d6bfb206cc647493707cd024ed0d639d56c12e6e487916c4846f08c7b22ba4aa96c91482f023100f8c6d265b402b557cd17178bdc8adc56cfa800dab8811f5bf38a0e42b83ca89aef9dbe0956470bff8d50fa267666e5a10302047c435bb500683066023100da91f5d06dcd3527a0d7251b5a1d5173397a6387e7e9c7c479f13675f95773ac58911ab182094a93b3931da8300a2dbe023100b33681930f829936bb760e7d1446d04a6697db0fe6cbaf2d33872af4643687abf0febaba763f7ea8cdf3329ffeaf156d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023025bf1bf20cbd47b62e0437cc26f004d5c06413b8c0a66fa033f10c0f310c9d15b9d217cf28f3e34062d996eadf717f97023061f81c6167ba39a97612e83ed2961ad174db8e1a5e0012e057be23a003535d3488f6a974e9abf9c2d4b7e78e0314047c0302047c435bb500673065023100cd16b2cecb1445869296089f4d0f6f90b4719c2bf8a9c5e7da430768eeaaafe204f816ef4b61b0798340c0fb2d069f33023072e727b410c60ae17ae7045e70076ed2b43a1726d9951c2434f2d4b810d868a9e74849aa5a2185ea98252f9cc8e580960302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310080eccef9efca8470918b708cfa431f1edcdc319bcc77fbd1b11166278b86af77bd25c19982472e2d69fc5b1a002cecf40230624c9a45efa7b5398f1962c521314e24018106f612598887aaa2c321d7fec58779b1de0384023c98ee248eea3995dbd30302047c435bb50067306502305ba517d19e7787dadb8183c75285177a55c738b515848244f70e9668e60c5d40c6e9288c65dfa6ce17d03aba3957b8c6023100e43d65bddf117d3ce7687b2bf38340ff17c2734bc081c720eb066af784e7d80d104f300a374a2be5197c93fcd5132ac60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302fd19ac0489fee0fd4abd94edb057d4bdc7ff31788cc7ce7338716b7fcb1c95614aeea9aefd661c2f726766d75ae517f023076ce602c30062af7fcb9dcfa4a6238370849549b0236f7af1c395ed35f895148cdd66c92df6b7eeb47f574d7b7cb48f30302047c435bb500673065023100e39e06b7ba21c54b4d34097007b6332ccdb827c2661cef03ecd4a57068bb4c8939ef38d259181344e7d9440a2c292c0c023023bb36f94d1636f2923e83649c59b930549990165c40115364ae5bae561069a6e68067b3d9b740b24eadb69541dc38650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009c9fe8405e22bc0d8badbbfeebe1d54a7e9da8195e2c003626423d5f1604efd8a5c3c73aa53f11151d004659293ae5510230731459b109ecb3a6993f089b53610ccce924df7dc2b5e9316e543c498c849118c9878efcb3b216e578259503c982e24d0302047c435bb50066306402302f6980a5c1b7c7c4ea97d641494d6b654cae5399b465193869055b120504c938428b9a020b7a8805ec3f3c41b1211dba023028c64fec25aaf254204b944e8abb6bbaa1eae4e1ba58862c3650dea834d562b0dcb227f28ce2da393295666349fb875f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b7f3337c83ccff4105990fb85fd197e24d64c81fa26f64afbd458045198b9e1b0853b0e5964739d88c4e7a506c484b84023100ab88fc2d9c0fcbef676987b2b3523ff747e025e03def20b9581b6a492d82393272491a908a738518782a33e3f5d3b2c00302047c435bb50067306502307c0725bb1aabe17681a2985668505a7dcbb3d3f89c74da2e84d434f565cddf150e6a2bf8a157a99b0b8b286140256782023100ed587baa62666a33d7cf6ec1db8b6f37497ff4a7b2362022c39048b33f63d0b27f2ac80e76e30156bb79120c359190170302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304c68ff1344797947045a7eac617d0bce618df7e04bbba2f3bd6315bdb3d676f639efc8ae5b958d1f25825a6562bf9f8f023100964ad8b5bc9292a8b999591299c0b90428700367b05906f95e1cd6fdc34c599edad693bd0a92c782842bd4fa0becbbe70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305bc1ea19d200848e4f9434009f86ae3ba946a6fc4bcd3f2998fa4afaf368b7fc7c5a625f9af2a315b282c94465d29aca023100f6c8d3fbb60c75d173931a261fed0d2035b44d422f8878955153e35c6a103023ff42d92b40ab4b3496da1e4078835bf10302047c435bb500673065023011987143a61fd469bdc0dc8109fde47274824ff6a724e4cc4d736bc84f2c199d883378853fc40f958eb92e7c117ebaeb023100dae0ad69630dc8959773bbe67df79851ea1ee06c75a236144daea37bbb83fc38504879ce42531dad950bfac25dadf4720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023020f54bc3dab089b0942fb2129ec9b57501634cfdc43d53829fea2e065c9940995cec8ba4a6e67d6100e9946d29ac2fc00230720ad7c4ee8c452d50f875374f94d330b20ac5229a49f6eb72450aec2f27c4ee80134d3b560d15cd5572e4a8e34d17530302047c435bb50066306402307bf22c2f2a99f61f8d764737aeadc302e486da281ae4776e266b6415d55389835e6dc5527e7aefbc3906fb4343fffa4a0230611639b9f781d7d384490d8fa07e010c8c7f4d5998e76679694e1d1466cb944b3fbde8cade6993a4c134d5eeb5db8a920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304e2f0bac52ee584aa4041087e2fdc3ef676d24384d9a856878c17fbdd272bb64c9dc82a3951b1bacb046341b4e3b11cf02310090754b4f4de19f173b15e6b19d3d0d85e78d88cfa472a62c4dd6071072772c1bcd7361e8bab1dba914f4298417f6e66c0302047c435bb500663064023013d27a0aa0528467d6699ca3b6f0bcebdb64cbd59e2d48ac4326cd31486fd07a11ec7cbc19e7cdde67d5fbbd40aabef602302631c631e450e486e23f5bdad8a00a1a415e7da7fde2680b109ce5dc22d2ad6914bd3ce71cca7a6c61bbc255d2d8e1a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310091003f9c5d788206f6491579a00aa9e802cc850031d631184433edd1be72521ce892409c9d823d82c44737fab0ba25a20230714947fa95329698d595fee3f2945ba2c0b40cbebd9c1b3aeea82cf3534ee20c04e4b384043c83c5991f53f8482a75fd0302047c435bb500673065023100eb36ebf315b0c0f8cdaae4d80b7d9d3c3c82899fd9fc001e49c844180713c85b85d0ce9672ec2ebe03c1a121366f671802302cf113d130c656a9bf3c36222dbaf78f3f5c76fee5fb0a29b7a9bac70678f92abe1136f7ee7cbe8c45f56631958c16a90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100935b4090ff1e2396ed46bd03bb69347f852d5f4ffc735dabda1ea3773619a7c814520133c59d8691026115090474af53023100f2e8e1e54d96aa23409e73dd47fc8f8ecbf5dc1a4232ca6b0219f60b65c2289cac67143b38635d46d21952df176b0ca90302047c435bb50066306402305f7ec6e54b1d93c41faa41c0d1879459dabf5731d7b426469b79adf83c71564faa5df899e8a9cdc995178c9d8bf5bc2f023054d989f2c46013c7a08b3f7a013cd282ac187ecd927881016930157bd9027439a0eba7216bc00eca42320c77104da9480302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310094eb91d5bbc41b05be39bc395a7e105b1b83a35d5e89a5812d1fb742534ecf76b55a3984dc774bfb14542b06b6154918023100c8ea05bf0698b38277d73da6ed4a930427132875f3b1dd383607bac7f6c5167c4847ad890a2a3765d2f05165c751b9f70302047c435bb500673065023055db08e4c4450cfea2978dc13e3c0be6857c3e56064473497247d6b03fc7300bb56877d313d5d4ffd3b5e2bf0a33a3420231008e533ac3766fdaa1c32f2cf42c40095a93ea53765917e488752edf8f9c7cf9524989ffd5447d2f3fbfde06e53894aacd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a2406d709059170a9c5027d30bf792bd417bcf364507ec1b700a0adfe3673b673dd5841bdc7375f1c0a427445ac11e0c023100cde7d00e99af45f38170416bc59ca9e81a2c2ab7c7d124be8c2c9cbe2abec806b97daf83dc4453c6573a1b698493d6960302047c435bb50067306502310092e6142c0d2639e03ee5034ddaa844d5181041558f006d13ec787b5dded8905e3277b145a04c4e56903df5e955dfbad002305325dadb8132d6b673f6cf473f5d3a67b74fde1b3b421fd02f39932fec0ebcde4a859f3857a9050c88d528694f993d9d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aaeaa0b67306f5f3b103c3c76718ff0347376b411ae092bcec99ed58019d8189833ffa5f6b2731c9b334acecebf750b80231009cc2779a1b66d4d37b9846465b2b85d9dcd7e37f688cbdd56614a884f3b05a36ffb1aea8baf926476c4218b47646b5e40302047c435bb50067306502301e8fbb93f54d44e320cc6df24040d53fbd8435034ee6dc84d973bd8a1d4cd19c5cbdcbec80e871750966c067fa8ac93d023100a608dfba32b362c13bb0e55ac59e4f7fb313b3a9cb32d3e543bf8c74add3bbb11e2506e42ee98b457dbab628463875bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302f3b4c29d3b9a521786389abb36eca8153a4cffba34ea59d81195184ead5eb5bad3d84c23316ea2b312f4c50ea72120c023075b49b9ac4774163cb496683a7f742311cc490860860141e568afea3b9baba72199d71d45be6a56e9fb4095c1f1f93770302047c435bb500673065023039ceb562518214f206b8c2b22493834c96bee6afeb2f549620e1daca9e220b6a79cef5cd4c7fcd512e3bba5cec6e61a8023100df28656339eab76f7627a18c188b89d59661814b7c1db78f5e61732ff3a4e20f43b9ad7624e2df5d8c22e348cb6dcf020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a8362d185d95b0d7f08a6e8caea012f728c0a621d2ffe382a27d2ccf377eed5ba180fe59fd4e13b19a402598ecc32d43023043dc9c90881979b03929a6e29f48895fc3c0de87f77076a3bd433ccd529ecb34d3e4f5a26bca3c9069eb9d1acd7884510302047c435bb500683066023100c1a5ec8d7816bbb801307c057f817aec44df947a07bd832b7065be9662fc6df49d596c9b7d470d5e69c7315f6e8cd9ce023100cc21068f2e4171806f42068d7311d2a51d566b759516cefd3df39f96a516dd3676a5311d09e0d4c89b34b8ca33027c330302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ff6d66572339e54e90e721f222d3a4cf8992b5738c7dd8ccfca42b254924463f9fe060d935b16c850040742cf67e9e3a023035d81b982cd21f6fd6f23e8dcff032cc94c6564e4ee7a31b9f44818d97d8e27345e28a5433001991dab858bbbabb66a20302047c435bb500683066023100ceb12476516fbcd6d7226c7c239c73705ebfc5899febe58ef2f60ca8ce8060bd4aa75103aa0455d1f4264aa9c0ecb82d023100b5895a1e81dee3b1f455015ab075ec135045bc66cf2bf261c9819705c478e0bc5a79058c76112b0596e48d82c39205850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230578861df0ec6c8721bc7bc1fade00977f24460bfad9f67c074b84f1089c70a863221eaea2343b610e0dce8d7659b40fb023100f770d4d01f866399c0331f0462ceddb6175f03d4d849d26fdaadcf4f71eb8ac5882b509a04c88d6b9df9197d4bf731a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100dba55e928aabfa765e4c815280bd694d5839d5e41961d55165908f2a604a1a9d343f3af7ba16c5e3ef13c2c68a784d630230688e6aaed48f9d967ab81cc1c9f51451d7d1776c453cbc995afa1ad3bd69d11b274988484634eeca8274e9e194b7e7bd0302047c435bb50066306402305088327fdd2586e1a0bdee25ee7a49c4fe270e61d229ea621b9a51b47015c33476ecff91ea77ac5f1a803a3917dfb03b02307509e7afb528546d6ed4ea48603753228968aca02ebddd78cb8b846ccc5bc767428b10336d2f9d38f12598fceeeaead70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310092454b368a5931373f8d6d5e2dd379897f266bf78b739b69f9b8695de2cf13043f0979f2e2da85ecfdfdaf462cba5a1602302253a99e843a73052c40c1aa3d3ee30839f30add611703d99bf02f41e5605625d54cf1e3efec8f0f5b93e0ee63c31e780302047c435bb50067306502310099eb81b4bdfa0cba96eef202a2ae0815bc5589f4bd6133d4c6aa4499d1d20a9760de949fc9702d72d65a446f766821c202307454891fc321e5f9c19ea046c1ca629466cfd9e65db4917382ef69bd73d21905533e9ab692ab4d639b83601e9f025bc50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305bfe581c22c41c1bf94b5107a7a2f6899986e7c448dd9590b69b581255fe56ef92b4fa1e55f1546f547418eb83d4077402305536c3d38e853d886ff7e76f03eff57b02e03070d302761c2be190dd4486dee982baebe5d2c20a3ec636fcf6505f7a910302047c435bb5006730650230027c8306855244616afce913b65a053d6380f573543428dab256fe55fd2698dfec759c050e85b75bb81cd82b37533341023100fb52b0184b489e94c7936cd2246d9fa3d33e617db931f7a99cb11c69f4ca239431314989626962864598f5f4918484190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009b0f648d60a662cf94d26f6475d4428638879e4243db47d3e133a6c16fbfcbfea1ce7c460ae6d0dad4547af14c284d8502305e24ad3a04d76ccd285a420f4857b6beb22dd4ee1cc4a7839d949ad90146e944738a459a9b7492bc4fff06f544d7f56e0302047c435bb5006730650230402437a68027175bc1217e671a88cfc295fa5b23635cc904ba57a83c5f8cb55145efe5706f3db4b842d86afdeb1c6b1c023100b6a152b7b3061ca5d94f2b3b2626c9c734ed3bab67499b9ecdbc3e7f781fce2d86ff0cef14bf5e6533ee16714f539e430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ba3919f27e1e88165a021a0c09baf8f79c7891678fcd4978426702192b37f732886ce4090daab92944ea576c1fe91648023012bda95523ec74af06d42effafdf8ccb56e9dd15b039408df0f12910842cd545ebd031d77624684449710afb30dca3880302047c435bb500683066023100e76baac1c63f60f32133d83e4d34f96c1e09ade4703585f30a9f6a43413ca7b4433ed7369908ed40409d21aef1e26f4f023100f7aecd31be6a9307b1ce82b85cb1a01fd4fad9dce9384b98660800721b1510f43ae19f8cea53dfe90c6b3e1b21a6285f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306e3b955fbce90b36521038534e1d24d08662280478308b152cc45858cbc5cb70058bf843b77d3a7c1b1cf7fb337fafb702307a82c83ee77f5911b85f8c4b86e133a6abf07733dc0a4133bfbe800a6e82a6db606e2fcc0be2ef78c5be8258c41d94df0302047c435bb50066306402300a01b0b8829850a783a526a0ed0e80418aebbe235162d7088a1c299bea137c6b04f415e91a0c4ed715bca4f9b069a34f02302c15bbb3e06f3b25b5cb319e94a42748e2d57bb98abb0805ef4a8f5d78e15e7c64a6d25289319c49e64bb191ada632470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310096d6bd4e27ecc4676a16deed80e773ebdca30b1a61599dc0493f895b75756b4a7ad87e9cc4683329de7124021eadee2a02301269de5d8f3e7737f4f47152c8196baaa25f0828291bfc82a5049525ea151bf85e69c116a56ac564b86c18ec17d0d7510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306693355c102bae54260ff163ef54ba5c076341636fedfcef839332df67d73390d184ef575584abe79eb585a021fd6627023100ebbc648b5de187f7697a5ad8ee8f0eb79276249b8cdd008f49b6b436a350dc2d496a44586509231f8974ded8a522480c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230732b2811ffb52d703a13244cff83908d056216d2fa7a2f9cf2cef95f1691f92130b9a5df7438dae618a9eec8701161be0231009d9d01dccec4f011053cafdbe18513737cefd98b1690b98ccbb82906bcec07adec62e1f451920b4409c28326090a8aa80302047c435bb5006730650230403344919d2ead1e288aa94e985918dc4d2a3fc23a004e504662239929e69fd23f011bbe1899b764102b6ad56de887390231009e5d8ba899eca091f447157ff3327c2a417c7181dd5c229953be8a1151bc2ca9b8d8a2b75b182c3616e7e1a1cc23cd280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008c79e679845de49f5bb00040072a3c5bce8f8f4683684e22e42c8d969bd043199469ff77d6c9d322652c3c89fde24371023045700a8d92f120faa9ffbc4fb8c65eaa817530beefbd6070443f2e41cda99dafcdbb52b4085f4eec943b338bdd65180b0302047c435bb500673065023100d370f5b0db2c793171a3cca7d8434c6cd814bbc630a77a22d9f3a1395573b49820facb70f1667f5287bfe1fc2f55c6d80230641d04d67631e1651a1209759fdca176bdee5f204b23bc7e80a0c9e75272b7d3727a4a7e27ecab02af9fd85adba290e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b80ff2beb02e6303583390c1948990ce6e5bc6eebbba70c2564d70e521d361a839bd1005c995feb13cdfac99e2f7d2330230708eaf72dd43c0b46e4c6799c412773555efe7af12d48730ef637472c6f3132bba6dcd84e0ca63175c980fcd24183b700302047c435bb5006730650231009544af825bf5848316fa958819c42442917627fa45a4a70154b49314346b43be3676d6f78b31ce0cd1e93f6c66552dcc0230290f2b2426ebe270c5c69d73a496b8fae359feefb2d880d5ace2f22da3001d1965922756f9f3ea206288ecf6dcc8d1130302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d09cbe0fb8a4414dd6688c2fe4fbc78e324fe8daf5556c47738f7f48f1a786b8d635babded4234ae914420830f62d9b023100d20f81a4a502a4bf0ffeea7a130f889f1a15afc69613020a87cf500a4947b8a24754fcc6981ab9b526f7f098d4e2221e0302047c435bb5006730650231008af849780ba528e3208ee45917b1d3c64050045a7fe139df270b3fc11f8ec5e39d0aa7fc95c786cf7ccdfe257f0a7bb4023063d3d751c68ab01d41a4401ed301621bcae7918fe02b27c383bd71e3ada8261c048c814eaf50a8ec490f77264a1845cc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d9d37e73b8b463f99a567af111062ba16f1f6fd4100dba3e9447e4e2e83a22baad224843b5b8c18191fb3f8e885344bf023100facdb6b6d1a51d211d7c58c9b142ef7e35cae342d4a0a56d46354ff09fde2985e57686a655a250067454a3a4087813730302047c435bb500683066023100fe01dabcafdf01780aa56fbd85f0fd28a26a93987421f76f8da31bd0105cc8dacb7e8db4cc6623bcd65d611c1f263b5d023100aacf941d240fca73859337674052f8b33ca71be0f8dc625c69a977f68c82203984a71eeb9cddaec47602f7042e40ddb00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cfa66ab7918c43826e1a5ea991b8d56453facc6a21e3d43932c01ab509f7710ff32a0e4ee1d6bf2ab72d5f8a812385b60230330a831f6bdbb74f31aac34be67756731fef96f2cc5535778de96a9a70c232afadb9d0c826c33fc31ec44ad6f302ea210302047c435bb50066306402302a68e71e62958c5817b600bd65718cd0b11c9e235ad42dad4a79646d26e2ff0e9c14f0663ae6ff1ba438a5da9f3df51b02307767d8d0157f788cdf86cd39e1561753c398a97cb0d4d71c423cdbb1f81294e0c968486ae1a5b3019f237ae74842f7fe0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310089c3ecc4342e1563f0367994c5db8968638555c1060aab2e27c18edda39c19badb59e4b2451783b4c47c9538fea20eb002303b90a3426066b23cf0ad987164c7c6e8752d70fd09e6508dae0e21cac8f50cfc20620a74cfcd519c147d3a42c5866e070302047c435bb500673065023100a843c5ddb3a204a8e29371e83a957de7502fc3282840cc9d982865650c4e08f699492ab6dbfce6bf2ac200bd645a76e20230627b1a23a95ff1cbb710fc36b32ab3e818bab9906b1797d02e7750ef3af31e32adbb144fcf05dedb636e9b0c3be008140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008d16dbbd14c1995ddc9fc0c753c80989a815f26a1fa65d1c69b9a28681e82582400a7d6a261b41bc1061d55b6f15b0fc02305a0c2604f77cb54e99cfd14aaa0f9678c0d8394e6c3fa88d7e421bc6f8914b0646a8cea514597c26fbb50cc073e6b0540302047c435bb500683066023100e901e0105b96d37dc4494cfa5b4a07d10472b3fb6f535af968fb773cfcbf33ced757e9df755593d986e19ef77d908929023100b858eb79656c7649fd1c956d402d087353db668311566b99ec11841fe61685a47f9108ee5a9d5bc47435690217e030a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b4b7ae18649824dcb37f19a08d36de08c8907860bc2bf4f6b6afe7be56adb1c9ed0fb986ffe3290c626127b92b0972eb023100d58ef58e9e08697bcc0348cde201a3ad2bb51559bdcae4d1a8ed3117d85ae647b7a4cbfbae869fca2175a551026d4d7a0302047c435bb5006830660231009c0dd18c7af38160d5e1f41d1cc0b5cd7ab9d0e5dc8c74cd42e48e729b5d77eb2950a89fdab04a011c5949d82c818167023100a18eb122f338458da8980e555641bca234223821e13bd5f5a8d197ead7079083870ebf6fa87884dae825cc583b51c2910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306ef860ccd539f960fb251a6c7def6599f889af12ab932546d9c91aa6e86c1b4da425c01111326a614fb9c2626e1b7d9d02302e478968e402479a7f6978a279d6aaf93411574921403f42651247d366231cf4ad1979cb4fa594651107b09b561d66460302047c435bb50067306502305a3700a126cc483227b5f3c1963723d788de5b11d48d3a15847ede6bf6c76bf3ca97f341ec437d3595cbeecb35c2008e0231008c9424bf82fe9c6f9e51824c650b3fa5ef96ad69a72d6a8942e69ae5198791c69cd2e59e3c2a15a606d25581407e7f210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009fc89b0dd9c7efcf2cb89003b77033af4bc17db86474cf3ae0425a09314735ac68598710b588362ad90a3c32aa5ce1ba02310093131e709c7da9e7258d80594a7f29ada59ab8a2d29c04fa3404e1a0f4bec2b49003eadad04c3a5ef8d5fe10f02100630302047c435bb500673065023100e10e7b53f594b4398f4bc0021a53925cfae331773ef6a50f2ee6ff4f3fe91bdf8394bd018a0856b50d8c8b1aae876db4023030edeb7653151ce56ce256f617bf7a3885ab6fcd241f13938756dd5e75f56af85dff611e71889d0a64247362b8383b430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100aa97477b349f97940b8bcc0df88e4320b7b5bad5d4e13466aee2daefe8a8a1ff5fe9e14efb11f9549a2b4f32ae0755a4023100bfdcb2db966a0f33bf1601d137f85573e7de2dd166cb9c44ad6dc79c355f65d863c192a1a6640f5d2b9d84eaa64eefc20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300fe060c6e05d890806eca4d8da56aa5cef1671369fdb33a3a5cc6ff945be27e22e8210185ad788a272b23d76d7e285ae02300839c9015bb5c6c5b9550f71a5f9a43e3cd4587ac893b49dca135672db281eb6d3a38c714d9d902f2359ef620322b6ff0302047c435bb50067306502300af0294d78031744f24ec060f34f4a5dbc9c347545d4f50d873339775571dd974d2270d36c52cdb2acccdbfe23d19df3023100cb81f5f00d4d2fe78d721885d50a02df5f0fa214ee2f38c32bd15afd6ddda96771c3267608cbc9273a1507a7c026b4c40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305cab12c41c609ae7747cc648b33d627bfb007766dbf1ce152f549ab59170d5435d20f8edda0e4e8b47cfe8fe3db66d00023065e670b36f3c19aa76ede4ef345d4b5ee01efd3746a5bffa241bb416eb4441fc0768e5d9f5387db5c6fb45216e0642d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303e942e9163c47fdee99348006fd6c946f595ac3560aff7368cb93447349b941079f790533b32483998d46fdc5383a29202302125f3c3ce2f4954da76b40cb50a2ee6be67e05bbbdfd0c15da899c321ba0ecf8fd6bf830374284426bc0645d40a0b530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230119ef2198f7b1dae98a4295668da0feddf6197f3b53c42a53ca6d850a884be47d8e0d7e47abd208295b665bde66e59f8023100a49d8383b047a9ca8e091b782bdef06095a5d0b673198eb8d87d33f695cffe65ded9360b6896fdf081f3507cb3c129f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009848e92c63e10e8172cd08a9ac2ea68033ae458dccc223d5993115901915348cecc5b7ed754c23f905483ef278987a4402305b5c36fb91878906ab03aedeafa5daa26f8ff3dedbb7a6efda2804eb962fb22de04b6fcbde9137191f612a56929e66650302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023041c0e12526797617f5e00aae9434950282b6d9e14590fdbd113402f6abe07d745dae23e56ed53f2838789b1c3079077402304cf07e8729e8939c489df457052802ebfd7072060e0b83714ff98ce97b5747df680974d8fdbdd757989b7270c3dd28db0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009bac5f7e31daa7753256e2b23096d41591c6c0f56a8c368620df5ff7850e045fc0f5a45a26cee2ca5395002a8faaa482023100bf8820a9c860e03d223fd4b6d95494826ac3183d6e2e78fc40d3b62da3af50fd84c884216f456342f8135274afccba580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100836e44e0a0bd43d241a50ca6025bde984480632a4582a67f22e1a7c616fda3639a56f4d8e5e80d7734ca8d78168e408d023100ba9e1f72eb264bf68463fff65a2950feffeb4679ab9d3ddd1142e39fcd6857631f3068d2dbd49f77591c4b3ba34b71840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f77a2743ef14cae6b7c675b1d149b15717da5c9ba4b3ed2182050f6310762b91ee65a0e3bd52bef650fe4afd80a0b931023100dbb19c0493425d16b7ddd0955e2b4f9077130757dbb17a3e5b9d0ab1167ffbf4f290f3e1fbe82a46ff3a4762f94233390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b9ffabd8940877a788f14fc9bd19e66472390d8cbe71af0313452b644eb2fa97c7b26e8a1d411d4419a61cc841693270023100953edda908162091991014451816353b52e364dc1c24fc428122b14cca385d9f8d507eb6a430bad67c1a19b131d28e9d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008f17b92a15db2228c030c612855cd457595a9b3c59a4097ba0256427f0e25ab8da5fc68298f393b6051eb0cf6bfcf92f0230232386e99d832e10aad5e8757e7a9fbf4de82b896b921e0dd1e260addd70ae5b69dfcd62dac8fae4bb5f765edb3f38c80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023013d29fe24acb05e93abe77ea9d320ef42c87dbd6fcdcceae59a688497616966197d4ca8d56ae28835802adb9419b5d70023100af82225df4ef1ef8c17a40804d0dedca14496a0db7f7cb69df644468efee08d02108c6e0bdcd12e2614d9852f90dc5040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e9a67cf68543112974c50d57442837138abe79647f0ea22bc72f84b2538899bb0c05352161425a0d3637b7cc7012ecf50230373d6d92c4d668169c807e455a1acea8015e097ce19b16037249e34ab228c868f221ad9990b71c396fc0947b621eaa250302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230597720466575085e72c5b9964e6ada4130ecf173b7f8f07acf521ac184aba6ba8445db4cdfec23c3a3887fc179476011023100f59e54df52e1ff1bb62efb402cd236d4bc74c3983d214a7303bbc573d615622a930fa9066b0cd607168ac215993c9aa40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307259bc33942b72b4633985bc2f8f4238cb407ae1c644eeb6f1399bd188a440f07649f70d6586cd6443e15114a7ad0bdb023100ec573bdf0bea8524deaea816d80595ed3df502084374a715e769d42bca45c8abda7d9362713b020fe600b5111e36265b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230102bb921b1647f6908dd3afe163476962446a912d10ceb051096c049139a989c0acc1b4c866214c1ad75b061a6e8f3e7023071a6162321535259542cc26952a6c208471df802071d2438d5048f9ab8a9b93aafcb06a6a061b936b600622a17bd2dec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023037ee32d5053b50fe04678076d8e5630d5538bd8ef9c4872a2f8d0be418e3b1dfcad88f2995452b879910716d2130e1db023100cff6d75b6c62a08b32f185a09453ba0c35fd1294ff35c3985ad20748889e80876b68a668253520385da55ecc66acbf100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e48c33cbe83d18e87a7926fd272b589c0a437370f6ce09368619a83151a707b94764d819c12993c1b1367f327af4a99f02302172219586e490f1e59478f483845c98d540890430251078659d06ae0221b9a6302d618ad0ecc36a250b62eff9bec7080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cb83fabd593704cc564515017c35d5b347268690085c66da087784ff71ed1808f9f7d5f64d4a4cc1f7efe823d2628576023022dc29840a6614ac947f49358c58470672cc60e94bac82209dcb910f01454cff1495909e6313aa9e96ed4c93396de6d10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304bdc1a3b3bd743182aa462fb088ed42e6ad6514f9d76c0538849231be4be135704c5e1e9a2961a324240b7196b7d73a6023100a231af1bd267ad581fa58b1e1e7b289ce4afd717251f1290031944991f96aa3a941530119a6bc5145c7127fd99e3361a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023025f8cca8c1c9aa74f4cf615d896c34ef4686376bf95957c8e6223a657bd304ef619475e21d956cea013f2244ef98802a023100e5e314d7e051f8de6f94d428a95c72ef2367c7ab8a14905df6283feced746eb93170becbe3ead167e640b0b51bb0d9660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301111e19271349a8e9bac27bc466aabcc1c3f719a4d07be33186fa6477da6c1456432f7c5319eabbc593ee0f426ee8143023100923bf2fb5d428d933905f78770b1aa4773657907ff420fabb7ff64fa5b73b688d0152b0007a3bcb260588943e4588f5e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310090479a1d9e1ea50771644373c648b01a0a04599700642a85f42c790a3c6541f60498b412aa0619be9e7ed5914e5eebf6023100d32c4b322f3460d87155c8abb2df1b9b15766e73c55c6785afad16294a80ac65402690d9997d9bb6f13209383693c52f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d0b0224be93b0dc435eb0716f8af5af6bc01bde187e636b84c21c86dbb60df20fc3d3bfe5ffb9ec0691dcceb8a856442023100ab75ff8223cf71de3723f27ddec70109903ef6e10d139db5403e2225cc711f6f9efb0c55cde30a02d4dbee0ee30368560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300f1adf03dbb6917ec87148ea80cbaa9698f160025926cf36d49adf29cd32d61441cc764671ff25f4c8f4b405d57e8721023100b8f367a9117d045a7dc23e453c0f8198e95a6f9acde4574260bc39220c78386456fe219207a1bedf06fdc841448260520302047c435bb500673065023100d28875284c83f1bcde3e0b8d4b4a98135895e3db1d190b64da943897f4db8128dfb32c1436f79e06a2cf5d63573dcdfe02305abd0dd6c98063b0e7d255851f0ea5e7c6aaba5fd510b4ab17e49623f4e2a94b0a72563b5627c88fcb742fe327ef57210302047c435bb50066306402307b9afdb99b25a0235053b10a0732a92ed9bc713d00700f76dfd80e21771c3b424f528b74c466bd515baa0971893d0b9c023069e8a2097684115e163bb44f4d907e40f87dab7926710a37632e4aa94008d48e72f3432cb5545703bb411c9dbee1edeb0302047c435bb50067306502307331ccbdbf57f47eeb18727210842d2a9405defc87c75a860e29e5a117b06d28e28ceb2d16cbaa451b8ad1922f99b42b0231008b662ecfd09eb4045cb6aaf43628b38275a0fb689e2edbf0bb661cf157d8da91bd43c4ed9066e67aa178c01bb79851b50302047c435bb500673065023100b6cf8c2911e8955b02a25580f0d07b851c17531c2aa5f96765d4be081d973076042b6ba05eae17c435c4c519c4f9e43b0230457f1f33bad4673d6f2fdc89d84842053ea7018dee8d2c29f69f75797b8b0a062a326ad1a05cbeb2804e2e609a9ee84c0302047c435bb5006630640230386a3ff1065bd662d0b1f318bb9abef34145e72a1749824b69a5be01e9e80cfe70645c82edca7fcc09750a9f7e2c05d902305649b907332736414eac8b73d09070a4e9c79988971f4b86039675b6d119d7838ed731d092372a1df9d34f8eefeb70930302047c435bb50067306502302c53373ebf0edada1b5ff14f1fd4fa1f1038a0b1383e3007a5dca429d05148879913807877cd842a11357eaf36c8fbf5023100ea1feed5d36c6ae58d1619332db56f8022c907c6700e6315a4667e5d9e07a7ffccef0f51c7956ae73916cbc79dcf37110302047c435bb50067306502300dda26c7779c41329ad2aed6e750e4008ff4f526404c872b7f92076aa0c424f15337631b19aeebe4c2ae7b615bd41c35023100b93c927d74bd0a81fb60d04aac68c5bdc3b6c5f3e338356d82d8190dfe83cd0a44403588aaa1e09cb1bef2b3c4a7e74a0302047c435bb50067306502301deeb893e21cef797d306c97735c81e9d479c0190c82ef3230d39e6125cfb1d92d1a045f0743be320c20263131c89cd6023100848f223ce5c3bda7374be9273b23be3a2120551eb5b930d687bc3ce8428af5fb1629980e7c9a2ea597e4349cf9f542b90302047c435bb500663064023070030828386c0b13c75ae3cef025b5ad989bc9c75b160df4cdba58312802fd992093d9f5b50ed3cd80a3dbe03ff3266e0230799a69df017129065454dad1e34f6ce1fdfc9d2b1e56f6b9d34a79c368f9835bb9287407ce90156b86d5860ddcaed02c0302047c435bb50067306502307dc59ff7a075561460b94c53f8cba25f1a181c51364ef30184c216826a6d3cdbff612209f78f29e6ae68af82a4036477023100a357a97d78447cc698dfb292f2d3b3445e1bf1ab5c02e68dcda882acf824ec1cf8fa29f37d8f22680796ca389c2395740302047c435bb5006730650230516e431865bdfb9bb31f595fd18eb79df718f2c35a55a6456d1f54b49468e92c84ae0feb8013a5b7c0b3afdec3fc2a31023100bacfec66073706f9382f699a5871139d981ff590d61de57af814af92fbf316b47a8f110956a3b74ff353ad217218bdf90302047c435bb500683066023100c88eb280a7ae6baa74715f34609c8e6a5196aae02f2fa8cf131012a5e6aae4bfeeb327efe8e08620c422449b486c4dab023100e22bd2d9fcfc7c90313bc540aeb7c19ea7e200b3385088ee1423bc8be8e899dc42c99087ed74de2bfc9eedb345c3ab0a0302047c435bb500673065023100b45911a80588df9bf80731adeb705c9db87a43c1cfa11837f8703e75f535666eb7e2c728ec76b06edccc1947081b40d6023079b170b1e380c2b4856219e31917ac05d7267b740d1c65aa6fc379be8b7ab541acb4f566ac66ecd25520a743023fd5e50302047c435bb500673065023100a94bcb0f47eaed6784a9eda51ddaaf2a34285ab7de116fcbbea27f394e81067f4594a3dbcbbef80d2c8a5e826c2ff27c023033125450ee9e0f132865435837f38f1c44a42b11e6d80d57257048f095660e505ad5dda6889e5571b566830949c3b42e0302047c435bb500663064023043b4de1c95a624a2a7a50562739d1745d30b67c8e06a796773ff4da56c4e6c8a1f87f5f9190bb7d24027137fe501c5a802305e42d66d5cb36e32bbaed37e8d54c5550646fe61bce0c06004f3dbf0f65436092e31a011b60f078ba0e19acff291dba40302047c435bb500683066023100c3684a9cae95e9645f966c3e1a793fb59de36b50b6065bd6a079913ba020cb071d9acce3b76ea93a95c8bdf2968901c5023100cfdb906c244acb9945f4b149a3e21ce6a8d02f96064faf4b8eb2ee7941516fa113549157af9d8493b75226ad9098769f0302047c435bb500663064023063da51b3659f7a5e58d831e02c5929709f9b5aa32c467bf772013aa4963521aa72c2bbfbcf70946296cdeb36a331cfb90230297a9ebbec27aabf2ba7d1dc5c5be80576bbba9ee475692802654f9b62a60a156780e15019c596aa0af5d81b5ec4fc3a0302047c435bb50066306402305c69f8045cc0532d1b230eeba58fbbeb0b78ba47e614a1c8a30225fabcd505d3a097dd00cd42c56fcceed3920c58795f02301d23e537feff6d83335114b69e959111e9ac24c9f2182b03b42e5d6c68cd317109b9393222f2a573ac821e6038a97cbf0302047c435bb500683066023100c3632810ee97a817e8aa4dabc48667221bdd11881756b023a6a34670ae53f1ccd54390031c3c1546530fbda5d26210bf023100824675316281509be728a3cb4ede927e4aa6ce250f1d33acac224de4daae74cdb01d59dc6312a2556fbfc61148c339350302047c435bb500673065023100c40facb88fa44e10ce7c0251cd82094c8d67f1f8d0696996cbc90276ec5f67024b4061cd8c99785b92b0c7f31ec3b3dc02307484d256ecc63c78a3cb79e1ac06b47463a3205ca76c7f19ecfc839ffe86c57009057a69d2b6e9433d48c827f6c66d840302047c435bb500683066023100c739e86ebd1b94b26933f93fa3843e15a02850eda87a6890a28720f583917af4f53cdf970681da35d6f1a6160812a619023100cd441c1ddaba3e1537794cb70800b1c6deb44843974f06105e76d9e34df0cb42576fe5af7498b823ee7dfdd45cc83c0c0302047c435bb50066306402304aa78ae075aa17fcc78de332298eaa415cc1db3d7db239dddc0232ab2d4f43c60a1c7359bd4679c0e7ab880368ffe28902306cb95d79a0b1f5be0a5f4b92281802787d58e83a2266dd61e463cd6e447f83c01bb1d002a8b51d45d0e341ae5167b9020302047c435bb500683066023100ddd2902be8e94f0d6ae37dd536e713f9c9884bcc08ec7fc4e8ec89dc57308ccd561c97e84ebac821de4c8983de33055f023100a4e7109d86e625bca5505657f0dc72af77ce8f9a67e1e6bd26c610eca82c3c7fbe2a5ee6d5b159a17826f9aeeb3d90550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100abc38bd68c01319582a9d49b2b928edd88f4a929af97fce408843567fbbcdb1ffecedeaeecfdf5354dcfa3ccef5dae03023100e204aac88ae0c8e4e18a4adeb5f255dc4df25c48c61bbd8596db2895059ac72d6256b9d6eae3fd18c79be8a0086943950302047c435bb50067306502301d2ad47a93d2ec9085780e4a88d7783da0ddb92f623229ee52171029c8bb823627af544803caf7f2583c2c357057f2ec0231009612533b3a1bb100fbe84342da5f0b1fc5d0e15f5a175ce941dfebef6998a540c50f0fac5d606316612b96e8ca3209610302047c435bb500673065023100ca6ffcefff0bd89807fa73c143ee45bc5f0d9e6b46b53fc1012ef5305d683e7c06771bc865f2041f202c632a574dacaa02303dd8a56c77c327ba6793db4b6800747668c6f8ed9ca79f2ec5cefdcf864f2dc6567a394a94b7722088b09e3f4e1b58420302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500673065023100f36a9dcf57a7aa1016837757f6bacbcc5ddff64be7d4024f8c7eec3da5eca18e0e9fc192cc88619c5f3bc5141758ebd602300eff5f66fb6d412ad8b183c43806853933307821e9eaa4c6ddcfdf8f832fa3d07652c20aa971bd4042c029dc6654128b0302047c435bb50068306602310081c1e6b788274c43640ebaed61d48aa60352e10f382cc888a88815922e31a6b5521d79b68225ac93b65adcc08e7ca10902310097e82098e6634bfd61b6292cb17552634f1209b5b264d9922b3a3c4671cf7e4f891b65b6e7223bfb649b8876650c166d0302047c435bb50067306502307870355cc3d375db97097030a87b6d1208bd8434e78e3857ff54661028ccd5bb0b2cb5725b801aafd81d11452b382847023100caf4f2acd4bfea86a2b1b81dd723f08f786e8e6e6ff9c87d2bc510ee2a14692ddcdfddd0e04433b8f882c7fa401603040302047c435bb50067306502304031dc41d08c52c1b454e90eb49d90f00eecc1eb9c337428754d3b43e0397ef07f08059043241ff1a3e281ddbf4a9ecc023100b69e68742bac971a7669c772be2d2f254eaaffd3f548519578158ea1c71a2d203a4876ae36e87e0e8a237228cbb9f92c0302047c435bb500673065023100e817a6e7df60e14390b93be1cc47de1c49969aa5ba835687f8f2897798f775279fece77bf8c464547ebf7af6f5d5421e023071a4085a77db01cec81779ec96d290d5195890595091a2fa1a39d042ab5ae788a6152a28c83cc4a766f25d47e6fd8cd00302047c435bb500673065023100b5d926e5496b343b3183a225be011203c6835627dc4a94004a06b67516125062881d81b5cca268671318f83d72c0162702302f7d05147f0d73daab5dd554ef8e8c695ce9d6596e5e8d5d150fb01bf1bf6e8fd08dce4e9d3e793e2d26534dd604f06f0302047c435bb500683066023100f61e8ed857bdee33c7f6f5a2ff567053a33658e073c0ff43e4744a9b0e513b6cf78a6fcfcb0c1d0ccdc751dbdd99afda023100840a599fef4f875c2c6e29f004cb12d3c16a5501ff7e84c49d6e986fa640f765b06d30d5d8630c7478bb4c58c631b57b0302047c435bb5006630640230245f23bc49e760b61ca146e0c968a5564506aa1f5aba279a848c9ff8a4ad0f90bbfc3c2498fe9f1cbca9c4a0ccc5444902301f2550de71e4bd269a2d477f84c54d415b92393ec29ea6e5d52eb59a672f64e2fa1978aada3887efb5c9750636c205850302047c435bb500673065023061719aa7d9a911ad823a558000cd573fd20f5fd23158e84b085f894efef33c9d4298b17daf395fb27aac349877e3bc3c023100800c483b6e8de785f54adfb4b16381531758480c5bbefa54f17e1a846df89fa07cc20511c9b0a1de11b2ee327e1758ed0302047c435bb500673065023100ac5176bcddb8c774661509c36f5fa02dd5b3e404ac408732df687d54257cd485af7634877630af8891b7148e3a8c9f8f02301844831ac6db6c0faf2a2ff715bc83c46473aecc6d1b73e62c6fe8c4d5253640a0ba8a469909cc10ef3c1f28d404d7220302047c435bb500673065023058ec42ee62a80bd5cf469ece8918ba63346e99a709b1a914edd14f243d1442af49fe003e8b1739b63070ab76bcf487d2023100fb16ffaeccde5968dd515d6e191d5dd427caf9fb013927eed182e5beb56955a3ebbf2794038cd2579f10fa5dab7b97870302047c435bb5006630640230365cd266614996a69a075c4d7d8fe25f342edbb49f4b27a1976385ee13d6474e6baf81d0299cbf9e2e6b9d12743cac1302306f6a0b5feb1f8a7030736be90d3e28b5b041845fc5e6c7fbabc2dbfae9dc55b3a543c3fea0ab4b4a364655f0dc202c020302047c435bb50066306402307ee995f574d1526aaa35f49f279ef0ec9df0b732793b2e59532c58740ee3f0b1c357ef5d9b8d93017062df45c400ba2202307576d332e9814b2f68c98084d370f40e1740132eec35234160510cb952893ec2501d32fbd021ac81f7a11d4301aa08050302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304be8ec861033233d8fcad179a12d4dd8cf1d8050bb90957fafbb5963f4f645b63b3a36f5dfbe2c865461fce8d135a8c102302d7aa5ede7c70a8514b38571e8daf6bb64e1aadabc748d9c7f251e598687e19e36002b863f94dfffb2190783c8f01d360302047c435bb500683066023100c40bb69cb23d03a7fb58fe2ca59c5e6062c47748f5d877e6ed3baa1728f01a6abb45c4cb4434eaf3a90e8f26dc7173b0023100e780a8f080ef7b2c6e21ee9b2032c256c81aa6f7ca45d2cf40199886ef344a9bc55807566230aea8b0862be24fc15bfd0302047c435bb500683066023100886b5bbd71b8700dc46e3947d43400fafcfd2e759cb41e62df6d600a7423405e13cb66ad9c108e658d6a211ab7ff5bdb023100f78afc7a3d970eb612d4025124f9eaea7106689e10b1e7b5301b29b508d57d8d34ed3419325251a9dcfba6be7b13ac6c0302047c435bb500663064023054831a183ba72b2f493e03ed7b3983b66ee9a3f0013c9c99c91ede60a8ed313b9f83c00cc9346ae9503740047aca10cc023030ccf4ac97bac2e3320ad95924be1a167e636620941ef1d34ad5eb763844282298bf6e690988074aafff63c49e770ca40302047c435bb5006830660231008a3cb925038bf9ac05dd8a9b758e58c8305d11786a93d268e6810eb5132b1d5321deb690da094a9a7280d63061c4287d023100f9f97021aafe2f30c953872f03a37d1589bdda38edaa60180732f1608eee7b2b5af8e104f48413da419db1e47ee640230302047c435bb500683066023100bcf6d01e06191800689f19d1f7b2b977eb1b398bc12e80f501cf50b5b6a957fdd49ec3b0bc29559ed3930d0a720e5bb8023100b8d66bb66aa817ac4aaa2d2e048991432d105159d51dad7675fa884f60ca1290c1f5e7126154a6c9386a649f165bdeca0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230775b4196d562210ed3e1401bfeae66760abb07b654462d77430aa7a2bd73166ffb259f770a000fe0a68f53d2a3409db902304f2bf201aac61aef2bb44a23f9fea0c513165ce5187cd61161aa127cbcc44310f7490810f91964a0895c1030669a0bc50302047c435bb500683066023100a293aa9a444c1a4dfaa2b452ea931efa30f349aa4615813961f73f043daf40e1edf3a7aa9aad702c4ffd15b599cb1294023100deb95418ceeb2a1d92c1c5800c43bf73539e6853dcd8130a0703096d05ebdb8789bdf67ba92fdefdd919ac1caacf77ef0302047c435bb500673065023100e38b35b4d63b9a74b56aa330d99771f9b2aff984b2dae3fcf0cc0c590de3ec50c3f5eb84eca68e157ca63d0aa5ce5a8202307e5630e012919e6ff13faecc500462a941993778d562c7581c224103a3205190c5914de2af8cb51c8278b949ce7ee6120302047c435bb50067306502306af9ff0ff06e80bf30191c5f7fd7e748a30f2e2f0a33075c024d74c41aee490c6d9a4983dd44da3b1997f018ccd61ebb023100b09783c9afdd3c9d45b292f5ab1b08ee58e9bb09c842c4f86d0f0a0a44c53726c1ea48665f4f3c47c9aa9627df0b87860302047c435bb500673065023100fade33a2f1ff875e00d4d652852d409c93e0ff1255dd5decebeaa49f63e7cfbd2f683045f10c67ceab5f47f083e7944a023038ae9d5acc4d417650534fb5bee5d321613a58332f4444ae9ba8f4424b5fc3255ff165a788304eb2203955fd95b5891e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306897b8d9b8198fdf2e88f76d0726114d6196b3c148acf5bd05cf32704c1146d1eb9649cac23d3973b7df95bc8f4ba3c702306e7422c33a9b14640b76942dbc0ed38b4d635152f1043658eac1dceba9fe86d34eb09c16ebcca268d22c9c555be853a10302047c435bb5006730650230523785f5ff2362482aee075879fb97fc9e0d6f4f984ae7965d62bd1408c5698b4a9f60451dd728db5d0d85405c7c8765023100f79b151c8f98d35a474d956b5bccb0888f317940bf0de7ee4c2faacafa10c05dcadc353c4b5d8d6934c4c0e9603ef5690302047c435bb500673065023100ccd2f42c45b557d5cdad338696e99143434475e94ceee631276f0db4a64fec2b75c8ae27bfdff15d97c154ae01516d7502303629134fa8681b46dbf0697a09e529e4866cf3b6286b9f142279906710ce3a4459dbf4fb39b299c8fd7d922ef94409690302047c435bb50066306402300afc555a0f69f8d80cc5a557e46c706b937d0defe0e8c903dfbdc90b9c961e8f53a554c1dbab786c494931bc56eca58c02306ecac16f9c4317204f4b3908d01ad4119d95dbfeb62ce06b621eba80834bbf18b953aa243aebcca363097c9b8059c03d0302047c435bb500673065023100f5d2d2718fb616b6ad5880e1d67b4b889bc0e3b329b885d12dd23e1d52330e4e194724d704d4cfe2c85e92fd4c8cf59e02301c8e56fa796ff8429395e65dbbdf8870d91198d8659a54cebb906e29f322f71be9541a2ac8c767db9dee24d32a925c420302047c435bb500663064023041110c88f69a5cc0216310eb9aad29f4afbcc994ad952653250d77acb21813041970301e879a5053c05e64cee876fd670230204bd60d0be82b7052eb4bbdbf0d710242275b014101766fde24943fa510fe73aed04d031b61676542b1dddbebd7a5590302047c435bb5006730650230071d9b6dcf1dedfa33443acc5758ff6a09d4f78fec538835bdb25e36498ebe90f9ef54ce9af22034381c528c53e56ccc02310080cc7078ca8daf5404939aa49bf6511cead8cd27fd7e4328cd649d30a746f5574c02cdc57681c744a04400906817088f0302047c435bb500673065023100f30c3485966a5967040332f88c5c97591097f920e8958a27ce8c1e96b72b7e57cf6718caba0cd3c4bea365a7ed6142ea023042012136e06ef1c1bb3205e14f7d66561140af4fbc250d52fa3b8b8cd54975020b02cae7cec9ac2b69703cfbc59a14a40302047c435bb500673065023100fad94ee9e55d4b57d6e4db5c5735e8c72fe09de52068a05bab9fe8df12e5d98d1f425c9a70718c82b69d47bcc493d65e02300f3fafaf0a27ac74b928d2368f8e7782bbea8dd642201b2088614ab39843ee1424be3662693b4e1c6ba9c83be16feb580302047c435bb500673065023100e4346ffa981f2c6e890fa9a2f8de09d37888a3b91fcc57df295f27e99262d66164d9ae936dfa69bdf1209d71a62b005402306723d890e31a11b5f291555f2baed0578769e3d8df377715624b046ff1bf988048718bcdb46978627920784eb1346dd00302047c435bb500683066023100b69bed038fd5583489b52945c839e8fa984f1ace7508aba639797bc8d4a9fd97d8826d2f26c8e088ee5256b984ade68a023100c35871ffa205dcc9991a8e0d63d13e44486692c94fe239db0f6b98c1000ab9ab6e9049344c7fc9de8c115c9cf9fda8e90302047c435bb500673065023100be86c9169ba9090e2c7c33a7c0221a6482092829c51474847db947bdaa19a457bbd7c750bea3474f07a6c7a39c37399402306046ff4558c44481d5547e5488d17559261ae2a1cfb70d7862b81e2b9e078347c0e532e07a03a0272bb2f996afd6f9830302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300ad36b86832f8aa2118510341b91da41576b5abdc5ff35c76f42d2b6ba0bbab81f95ce8f830e96e1915a8a6cf49ac17c023061b287b1a5b0058dffadc489707f62632a86c7c720061bea0266cac905ef5868f899b0edd7559d6fe96376b5afb0ccf70302047c435bb500683066023100fc19dc6e1fc86f4b3fb2f4c90cc7939767901bcbaca1f69f1bfc72294cb2e353e30fae71abf3aa3f1c9d6be9b78f7ecf023100e00ad5f09bf35112d756cd0fb014791b7ffb1cb3611354e9eb408c682b75658dd3fb306b48ef2b5146964f84e57546cb0302047c435bb500653063022f173317534c725b39a9b5a789fdb813da6df0cfcb64c71ca62547cf478aeb03a94f93821273ac27bf417a8a8e4f048e02301e2adb58ab161bbac035695b4750fe8fed56c01f6be8116ad57a33ff60bf9efdee175ada0ba323012f8da795416a5bd90302047c435bb5006730650230761251135e9d2dfe9cb347130fe38153f0eb7e7259804bd846fdfdb4798fb7f747ea4b7935a7a87006dd964197c5cfba023100d2ecc7cbce8aff24582d3da276572c98f5d631d60d263f960650ebfccea172ee740d7ecbd418f277bdc3bfee6a053c460302047c435bb50066306402304b5219c3dbde06786c83901f3fafeaeafc75b8497f3060eaa158a84f998109e91122f6b9f7284671a3d59a5fb268a06f023024f68a688af3a2366424505d70ba75090e6e14bacf814b5f0899d881964f072e68051e670c4e5ed47edac1ee004bf3530302047c435bb500673065023100fccf7460f3a3d1e5f1f0571a6497a7b1f5a91b24a41c3963c50c7eb4fb6694b397dd72f067423bc3f8e6f6a5c012247602304edaac377af5da050631ea581781fb1d433b7077f8686be0628616e40a6297b9c44be0b4d5c7e3172d3499d26f9c06790302047c435bb50067306502302a5634bfb7ab01cd4a45f6cfec4e33eac2ef87ebbcfa01b9ada0d6aad259ca8eeea63afdcb6574a38aa97faec30f5e8c023100888fa9d6bfacc565cea2f87f3179ae86165ec23a8334c40b4fba6b361a28161099cd806605b2932b3a79370221e483b00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307f923b13b2aced26f8aaa9533374312917f90ddd313b7968a0d033d925b6f889ee9af5b98d8496b4a25b82377d1a90da02302ec39b8330958142dce8274daeb61cedd8c93d100a8876b930b77c7fb5218b93771b9617210727b72b31a330dc4878590302047c435bb500673065023017f5b8e5c0faf107b950e17ee93b0660192384dd966e736f48709aab242f92b16c13b3a34ed633f70bc284e083f8e062023100e9510e2c9b69637c032216fd65a797c9971c837737885b8f480664ff22481efb6197a516e26cdae7024d7e297e06dd0c0302047c435bb500683066023100d58c1485818f67aa725a914a695429cb4ea946096e7c937c2807a1c7dd9c96d13c2cfe714ab43ca107756a7957dbefec023100f79fadeceb2883a5c39f73558ceae1a1abd40054aa8284f518291857a755140b39d2651f44de3ab3a6754b38691d98430302047c435bb50067306502305f1744db8058e1bf6ceb64554ac1379d14f6a6b000b36a7068ff5d0b18ce654ca5a490ef74cdb97a4e4af6b1c8c4010a023100a1d308a4ee5f64f9739fc7401ffa9cee579706d356fc02904ba0b5c0fa875d4f9fb4f41b6fc9fc27a21bfdb63c0ded580302047c435bb500683066023100953d5eff1f2f07aa87eccbe78a8d42416c40881a760e09072993cc810518f969c83f7ea9353541408c31e64de8f6164f0231008ff1ac41675a20523c9c6ef2d4137d8e8795c549141b1762714b1a5efa20bf61b2a1fb4774012971c7be6db9e609be290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230256560aaea63e81e5723a02b81dd900def7400346794759f141cd3d1a2628d97a77d85e3d68c74e1c2ffbae6230ba066023100addaa58265e37392040777852f3e30a14d208fefb6ce4abcedeb6ad0da7a403e2ccd7d32c602523c1b74f67fdbf263420302047c435bb500663064023057d655f435ba3fb017e9d55bf3835814a9cc607606afe2028dfaa7e9218da6fc053ec4ef9c702329b0e815a7f3b268ae023022b35c72d22ed4a126276b0e248508e6cfda6aae6748b93ba77b6d9c009da56b6c4a91ecd03057e259a191b8f1abfbe40302047c435bb500683066023100f553d1cde612cbbae6f789d1849d7ea54e8402c51709c34785b53a2af4e89afbc72f7fdca2c22cba9542fc4257c20dac023100f4ddc46ca60d3e4d4f64bec0b868a92ec08a5d6b5884053fed54bdc3bc9bbb8f1cc9f56f50cf09ee61dc4f7ea42bdb0b0302047c435bb5006730650230242f132bd8e825c72b0a9fa4bf7e365d0c77e15c4ba95b737ecadcc9c2898fbab382f15f1c00887665303496ad3925230231009be79e6de753be4de0dfc462b39f44bb774604b731ca47eb0a815614ff3af2f7f62712abc585eac7d790921685d9cf4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bf25c61bf2addf14bce244efefda096478216385e86a6b7b6cee92d5439f334aae74bda3dcf5296483bf694e615b6102023100b17ad98de21b7604e06219a5d261abad5873bce53ead68a6f506757f354df5e22a19c43c56e9a0399d62c56b499306170302047c435bb50067306502302d1137e4ad6662712cd198e9998c305a8a25637d8b105b9ba46589dfa916a1a6665a829a1d32662034e4e22f0ef6671d023100d14a12130ba5d63896948d2dc3302785b1f0e889840692726849a1daa5c492b3727eb604910c2bd8f187c49ec288bab80302047c435bb500673065023100fe4a958cb2f9a2a59e5e3833e2b855368ff2ce56424ad22346375a870fc1838a2303fa4e3780cbf207b2a549a4f84b1902305e95e96b041209d8bdd6fc974ca44bd1f40de6a2e3ff44b05e9a401e8f9ceaed1ef9faf580c0a33e89ed106c5d2c41da0302047c435bb500663064023073f46c81dc8c782fba244fc84fb329d8a09b33db71b172329c17b7ce233da7b0095d6140f3d1db45cf784eedd98932b002306e47779d9a9d2fd85675a0346ae491c7b7f9b85ae4b6593aab61acc1852cb46940c24b90c6dcc96b38d46cfdb014fe990302047c435bb50066306402305e1361c397a9ec09e6817aacbe5e6bc3536d5335a4d1fdf5d48ef02be617fccb601fdbd9463d966351dd6369ecde988302304a035638cf9d89f113956fbe0fee7f405713e5b52bc662711dffe3e3bcc31c1b444fe94daa728df7898d2880a8c57f9a0302047c435bb500683066023100e72f5cdb80f45b717eeba5f2ffd014ff24cc3e1275cef99c3e2270333c7f980bdd71dbdf720db450cd898d90693f3c65023100c9e097a2b7723bf89020d1dd8aef9dd54f47f25a31358603fd25beacebdfc75f99ef8674e0fba05007c0f23ca331794e0302047c435bb50066306402305120d219cbec663becd56744dd12445b5f0fa1c3e14c641fa2ce995a260016923d05ec1a63de1f8980e8a5cbf2153982023047d295812723db44c3ae192c75e3cf18c7a1086b4ce4048322775e265da7b8fae409290748373b9c641128e6d01bb5d10302047c435bb50067306502305d802ea20c63615226da38dcefd604117c5a4c60fe3d25a4386b310bcece784f59ffa6f9f131e687769e714120bc46ee0231009912cd509631525f74e4c23af64905e6e9ed721c38b6127c81c0b19fcb5b4b1e003bce1b419884892918ed476a04f8d90302047c435bb500683066023100d77aaec85082582316486cdaa70e72797edd63d6484426fa4b099541934788e766f619198574b2017ab859ce69ef68a6023100d4a082dea2cee72fab5f3650fa5e7239ba791d5a00348876f193df09ed0fe062fd24b6324642d78e4d8ededd3afc9f830302047c435bb500683066023100a80803dc219852456795b93975383c05d12f8d2680da07b0bc3815c8cca1785e4b6b94d10c75369826af36c684c78df3023100c43f6d0d7646fa3d0376cee23e7d2cefbbb57bf7b36e20fecdeb504ae7a90e4f02bd42e75d68db1112c5051c841563660302047c435bb500683066023100d044672fe13603ff6d1fa53f5d52af6b60398aced27a526d30dd430c146653e8581efe46050283a022f6bd10a5631924023100cff96aa89bc7551ea0ef5c55d851ff367d37e39c46aecc701c9cee72c874dddd9f66dc4a4621e5c0537ab3ebdac40a170302047c435bb500673065023018139833266ce60839201ed80b02434e7113367992582dbe27970630d36a6b60c992dc8dd27de11b02e8ab4729064e2c023100e9a4ac68f79c45919f3b1bc6d706897dceee05c700bac3b88ef46192e0a2248768cf64d367ebb51d24353979311035490302047c435bb500683066023100baa3b8bfe8555548c16251c5f66c6467b085116b36dc1bd70d4ad2db6edd7c90e62a8137d65bdd6a4b59ac9a4af6f32c023100918d4a9412b6877f50b75acf0f2ec145650c56742c8636304fea7ceb6a85ae5023c45b2df6ecb99ba3f809f5eb0a53cf0302047c435bb500673065023100baa0b86c2467aa61c91f71703d6baf09f1d88be9c012c8f243aa80a39d262dc12de2032d83c6fb33cac329fa144028cb02304a6e67266f1bef1b85531626139f5881d2e293d7ee99ba94bfee050dc58a13cf5f001e916f8abc478e306128a73dd4ca0302047c435bb500683066023100e79a5fb0ccf9169ea7e21039bd00f4cdc47336f6cc85a5ae0fe3cf3f2a7f2cd0b05853467039496b7ea43931444adeac023100d62e656e2b56d019993e3e8075b038ce37a94fb60833820389b0b9d6e538e96994baaf81bd609ee7982e4e7ced56d8fe0302047c435bb50067306502300ed13d5dc6d6d651af66129868e5f6da5e22d4bfa9e5058e943357e1f9b778a81bc5e8002328b5dbc2b89b7ab7a34b3a023100e510f4d5e4309361179f4adbb19b100704f6e644b4023be3378aaa848dcbe3f697d53c4eebb072cd02d65348d2a288440302047c435bb50067306502304148060d24267e683a596d2d2894b5f1d1fd385a2d9b0df03390dbdd1390e716051bd0e61dfac57cbd6195cfae82703a023100f85aaa6af7bbda90a572c588b2685cd64f6985fef9baa3798ed850140fdd5ea103d5452d83210d6771ca8b3a574089ac0302047c435bb500683066023100d78149f380274fe01a7395e8064fc541d8952d53399b39194d1991c715815efca63411cd1f8fd9e42c6f4e5a1ccbcc61023100895cb635641df00c852320a3c080dd2ca3fe465c68e39c0370f0b308fd56ea085bed7b2c289bbbb305c525751b9b6ded0302047c435bb50067306502302c1452ae8f60155fbe501bb3426de684b805f34809fe778ee8d877b4e89b64b8a712c3d44fe1cabe92ad48503a9e2d9a023100e602c6bce0bc587c5c4ed89d5990b2a416a55a23cb019e5bed9d97c79c814fe00ca7c68534bc8c63d0eb1ad77fafb1a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100c994a32747ec94076a1d01d0c792183150ebb1adfbafb5c158357126c4668718077ed7c1b0aa7f1ef3389fe25b76441302307fc288b7cfd0f069bedd0aa2f8be399a23c2449f633017bb3d344b07242b32a6026c993e1f60d45ebd889bd2c56d48e00302047c435bb5006730650231009b193352b18226eef60706156f3627f76c4a05d93aa8b423cb9f71513f844f5b40540dc3f1b216e881562686b34a8a9b023064b2906a92bf6cabb8d4c0a3c54c60fc01d7990ee714fc997cc39f7a2a27228d388aec3db964e2097b74d7fc493cef600302047c435bb5006630640230016c3f04875c3965faba01c4017b6e6c596c591c2b1e61775b82701fb7d7e8c3f63ed08c9b259427d3a4cad2c709d698023015fadb77c22882657054e3e62948be54e7b60cc3b9491cacaf99c7e40d941c8480465fab34ec8bfbfb0847ba250e08330302047c435bb5006630640230568e1c700df98a2dd0f1128c503a2c9e42ccc12e6f534617b026e7ca9ff9d2a29cc30ea265051c73749b8146de7aedb302303df243ce3ab8311b5227d2932918f8aba114cd70d450ebf9317282b3c86b546e293da25ac12b540594deb663d05c2fc60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eeebc33170a39c697b6e15285a188f230221105e12fbc666a0548d995d11794262156bb3363de51b56ffd9eb3db61c6d0231008cf3ed4eb18b66ea51dead2e1cb5158d09223d643b69114a84a8f41c9772e72b6c5d9b5435ea7b70cc10fc9d4f7ef29b0302047c435bb50066306402306a3b3d22c999d60d0cfd78efcaea079a8497c3d7b5de3eea24f38e17604f23b0b90c627b01e079fcc501919a2692522c0230367c61c7b9139f776f8a5aea8e2d14062a50b046aa387d081e381edf49bb08940b88e5f9618480370aaef443badd25040302047c435bb500683066023100bc4f16f1a63f53da45cb677f0f344dc0a36a24743eec13cfecaeb1214538b758e3771071559c87811510f068597ddeb9023100b55d5d20599fa8ba8d57419c8c485bbb9e72c039ec06c38e749916b6526c527e1bce44afa3c72c814cf0ed0d79576b320302047c435bb500683066023100ce90983b0fab8f19ab3bfdc1a24d0908e7c1b8a2c8728c208d21d3843073812cec94eb07b8333ad28323a1acce19e9d1023100e130556d94b812dd477b3a5620363b5427649a2086965114b33eb949aff9c8e1b8a20326cf724fed11c504d39604ae820302047c435bb50068306602310084d7a10b6c213d1968f28861f39f63d32368836cf9b8a4e72fb6818fe31292c8691c684a3e81a576a73cafa1e0aee840023100b24429b6cf55c6a9256bbe60608f6eb4b31b16a3a4f6a5730432616bd42be1f0e46d36d1b35463f71c690cb4b0d8f0280302047c435bb50067306502302ee8e0b106e306e30ec979f4b58accb6f890fa30efa0d3c25923596f646873b3c5f324e7dae20ace37f2f0b31686d30f023100c0bfc5653e68ec7bbdc3a5fc55cf7feb562f542e7d2c44f1c051ac6793b9a65f26419b72d6c0b8087f29addec1b560260302047c435bb500673065023100f3f5021cb3442a6ce14129f3157180be4429c0e215a8d475213acca31a815fcfa53d83798856c5600be2016d3f668e8902306a00fe8b0c0545ea953ef265d827007a3084ff79f98dfd7651edf98348e9185b19868d0e48e1d718e593aa5258a072c70302047c435bb5006630640230045a1a865f3333b8dae042f3d11d18c1959bec660e41867d005e5e73a48e5b917f2871a5a8f626d7a1bc2b79bc717570023074a1094fc00ca5d263922ce43081ad98cfc1224e8ad0c1972d0ba1d8b8cff1294dc974ef9978a1593603912fb1e372b60302047c435bb50067306502300cf3418a227333459e0edbbfbe7fa359a2eefd0ecd801f220225afc301afa1a3c5f42793527e418161f8e09e3cf74668023100be43a0da48458cd2273ceec2e56e6fae24d946baec840fcdfe89342e6eb29408f28664aa34af9646e75894a6212ac5910302047c435bb500673065023025218fab50142b23a0bf3d367c1b461027092a0cc77ca9e42908959905e2002cc4d09b4ebdbe1be63ef290a00a5fbf320231008ae86aae3d6eef64d90f270f7b46038f8b821bfb015020e129ee53bd59d574ed65d0ac5b38b91d7264e7896064a4244c0302047c435bb500683066023100b6f2163ebaf75cdf52edf51e81a204fd516ff524731bdd64545cfefd2d0d5d495ff4b72824bf1db2d252f4b6508efe6d023100c0e125d1d6145b274ea1606449e0c01451adb1b7951d399778b1f5221faecc81827fa436542ac38791d1da613d2832c90302047c435bb50068306602310084028a4b93299c5af1e7ce620da908825352016bc13395a8efcc596ba73b177714081a33a60ad8b8b8cf5b83ef24a5e8023100b6acd003a5d9fd8a3f91ad40223a5309dec4fda5be76ab0b0d130a8afb36d18c484326a8ae4114143aadb6fa2db31a890302047c435bb50067306502306b30ccde5fa7a99cf62124d60fefc9dc3d92f72cac13eb15fd7ee7547209acaaddd0d6a4588a1d91462a9235858b8c3302310083f536bc94584c12d4e7e5fb3b2c531f3811a43f750970a3cbb2cd65b23bfbe134d16d352852879c7af041c6ffc3ab860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b098b96ab6730c69e882dac75e35f47ab92dc2a1aadba4e22910f87b1e914af882950bc32c0f6f95e1ad4a3f330b48970230269bff40546cc4f5efb16d2e82adc9659a17453229f63eac4cfbd7a35e451cc8f4e270cc25c340e4ca70b8ab680912db0302047c435bb5006630640230645d93a0b55ac5bda82f5e201de2a4a6fe52eb4e8cf8e7bd8a87389495390394beeff620ca721d3805e57c69a8672f7602300b7fe6c2924e12e1c8bf360efc582aef2086201dc86b64fa1d053b56397178274a712944d4f2e8e68075f458591567430302047c435bb50066306402304200e28321b917c9c1840988c5a18bdb1bbed90918ec27467f5d8786e501d09385b422a17bd9cf425960d07870006a1f02306a9c0ef1222594c95a487cccbc469e91092c66151f39ce438425a32ee981a145fdd677bf1e54cd4cab0600c89b386ee10302047c435bb500683066023100fd143fac9e980a2ed4dbfa4cb8632febb7104d326fab10ce812536191e2d6cc8f0e5c9fa534310548ac20e05ad395756023100895394ba76905a7d676f0820d16b119fe0ecf644532dba4aece6145a301b2bbe1038f1dccfa7dc3886d34a5c89eb1bed0302047c435bb5006630640230595f7480bfb1272887daa6b4a0c5ffd3c995d7d7710440eab9a6efe842fdc9294a6764e33c51b66684047d6eab579c490230687ffe4ed80b4ee94bc3966babf7fb31cdba446063fc64a01db7ad1556ff6f943af8bd94a71d94aa84a2152eecf8f9ef0302047c435bb500673065023053bfd91ea26a87525cb5482f492ab1620f3c49b82c211b2086bd214b4908f44cb24e269045b9d5b4313d866c17c31b9f023100b8cfdd287b8700858ccc824a22699c71759d0d515a5460ba6d5897dcba3dc2c0f47288b54762d1db021689977508426f0302047c435bb500683066023100d145b4e0c173694947aa3e2e4bf8e424915243c0710a477c2478818fc9d194f9f9eec665605a3620d8e79640f422a52f023100f77777c7bc33d11b08ea94c6c9b6549ee468b726b42eb48fb85fb4053e7d7e1acb517775b490e652b1e4ff7d53d9f5120302047c435bb50067306502307526f95ae84d9fe53ef3011b7a70a1f17599f486f7aadcc04ad05c8c24cf7efec9f48a312160eb2b1e08ca1e8930fa7f023100fea8a328946f88be59e7ae3c1346f1c60b21fa54f4a4c957855db2c3b3c58cb2a7eee7a6f14945d9b14ebc24015d9f050302047c435bb500683066023100e96c91b814478c90dad45733793a3168bf22ccda8d6b51438e85cdaa984fca93bdd3343211834259314bbf954915d158023100b388cadedd7f53637acb52918385a73eb8c6326a7e2127533f11401559ac1317be94a31998f4662d368067c27ac43ab90302047c435bb50066306402307924c9f34e6092e7dcd1145f7a5015420f464f9e2ae2733544ff1d87e6836f15137313d3058bde51cdae9dc38873ec1e02307bc25c039acfb8ef87c4ee3917b391309a2c40a888d2b89792768846b8a5cfbe3eca9680783cf0a79b7861c148d7e0ad0302047c435bb5006730650230751ed5839ee9d733d0c204c3d456301f2fe4015c7ff4ed091391626f548b928f67dccf98e4512dd8cf982720f882670e023100a1e9999fc0568a3df6b2f2d55101c70717f8ba799c29ae80bc01b6d5c2db35897f04d941393de6c5550bc616f77b9f6b0302047c435bb50066306402305885cea197a970c8afe0745040a7a4f4e5a42b7021f788e1e02d2e396af60d5716ed649cb150e42b8410e3ee0fc4e9dc02300a0f594f7345093ea17bfebd187736ee35639421c5eb27516a26f71454bdd6555b9d99c54b715120c5abbb37c5ea111e0302047c435bb500663064023025b9ba4b5869311a1e517cfe496e9356c2054851ac26d54c572dc116d3a7848d8479df9e3ed4a18bd5340b12f30a0d5b023068421aa3f2c81a1eef65aa632f35f5e7e8d3dcf03d33ea09b47cac84e76e1856342806bcc05f8737adaca52abb8179520302047c435bb500673065023100d1875afb8f8f16ae164f52343784f67a60c83010df0ad9072dd6b1dc2ef957301327e47fc91e3da11a7649d0cdb9bc350230623645e9556b60cea9f5772dacf182589e5c77bbd33914f912083fb9a46708e77d0103e78691a7862a3c02f1d0d64b160302047c435bb5006630640230698857de73caa08746d83586a869451cf87d8a120aca46b07027433bc94245348c26ff2b509999a6e18ecfff39bf5130023055dfbe74473e05bc0c788110bb59b6e2bb580e37d57a578d5d5f3e478cbb008ec7fe39b5a0c0ac2afb77ad7732334d790302047c435bb50066306402304d7f8c19374011ed8f0b6fe88fcf3f63f2183d3a6cc66cf4fe0fab1787667e66821da0bc50158a878c700704ae935ee002300ed65004c03db1e79bed690b14a7393970cbd38e796a7adffb194970d0cb8b668c71d54c3cf82b68bb3e9ca0cf17752d0302047c435bb500673065023100deb4084f643d33ff73ddf6b4bbc3250bad45f59752516a16461b7169e6577d7d413e78d77dff1b89da4ceb45abdbc0d702304eab5533b65a8b3f8825207b4f9e64e393459a77f21b9d8d04fba58eb8437d081ee1b9212ea1c7f802d9e41ec9cc8d980302047c435bb500683066023100abaeb236573fc6237ed306ff3a6a4ecaf27bc2174b729181b085ff8979ab4aec09bfdc9da617354986481b87ae381087023100844e9f44276ded20dd7c99eacc24fdc86b32fdd5efdbddf34b911d37eb31cfefaff358bd2e11031ab56441a988744cd10302047c435bb500683066023100a7ab590bd5481c31cc1caa4f37c595ee4d970d6e4773cc8b81b7f3bac8d7b789a408e629b0641020906b8133f16263bb023100a19ab78dbb49f47a6d00af939fe272707a786c6b2d238fa4998e3fe28731fdb0d4ffdce8db4015d4865cb74bcbb80b610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300d425ddb40cff0b8cc8d66c3509e252bdb78341c4a09e7047fb89f2961568ffdfac086ff152d5ae4904dc15edde86b98023065bea34cafb7e47170382ea26955b9ca9832e280ecbd982569a744dc3cafb12859af3512e59705fe6b930c9a145d90cc0302047c435bb50067306502304d0a97d1246a2c7282aac2361118e326ca845ccfcc4188765f90cbc8b705c142da3cbdd994cabf7013b2fadff47961aa023100cc40eeb83f00f37b97c2647df7f7081804e6f4910d35ac187287781f962f6c6c676dc5cdcb43141ca694cef44fe6b8d70302047c435bb500673065023100adef025d100ed6d79cb9af7eec3907d907b7186ca99b11ffde8ddf4289dfa3097559ab28b0395e10699f31ff8bf1689b023043905377ad749681154825acd61deb88fa85d1a629bd5973208ae22e979ace5fb2766b13cc841353cca7f3d700728ded0302047c435bb500663064023026eb3a97f6c5cadf3e03acb546f8214d229cd144a39bc578f27f103fe329ceb4c43d9d8925ddd596a3d9891b74ed10f00230475a1b5cf0e8bb5f85b59af9a0c636b44f032fea84a553183e7b3577e4fcd6a067acb2df1997a11139796f98b09f9c710302047c435bb50066306402305e40052175a54a7f5e00cb594bfc45a02c36a1785bf50ec8b37c3813649ad9ead750aa3cdfd11e449d623997c17fb5a6023006a045b8333e568dedc2f32716c9a5033d59a895712febbfdabd1f2a659fb9b4f054e9c2b2882e20dccee1094771615d0302047c435bb500673065023061a79d695f355e4f21592c66eade5fc313b066be4d0b6eb48871219d713350679d509bcf3d1a7ccc2879be4938d49b0f023100c002d8fab6eed61aa586b31ceb8a0cab7848fdd524ff605aa5f513e881281aa1f35bf9dceafe9ac3c7defd667cf0e1870302047c435bb50067306502303d2d4a0e279bcf3c9bd1b39f4570ab48f4facced239070c35e56cedbdfa7f55a3caa43ebee567aa8d785a18848fde4fc023100f4b2f1f37179a777f9028782ff2ef75082a922d306a6060070ab02acaa8c6156a70f2a8a5402e1f6d7b6841869f8a7c40302047c435bb500683066023100fb88b48f12ab4aa2db35ad69d01f9d592f94265323a24deef47e5b495e41e2956c66277b7490f8bfbe348e17b735329c023100dc1fad70cca3546435c5f4ebdedd51419bd99efbdebf4eafbc8c6e443bf3829ef11dff845c0ca0c236d9b7d4337c0ccf0302047c435bb500673065023056e02c7acaea2e5b642786cd238144c192cf6eee7e629ece31dc9f614218badf7419b1743e9826b547b80a1092c0b2a5023100b99069ee4053253826a2b298bed3f3096525eb7159f752bb2e11ab172d09aab6e1a27d6ef10aba92e90ab240a11e8d3e0302047c435bb500683066023100e32e946abaf04542a5055e0bad99746a30fc53f9f5bcdfa5f58363723d29c4c497698135af18f8e52b9a468be67d8160023100edc81d66c75ad8e9baccd6b44c31a526ed11a4169f4a1e8f40322a0e61042c15d7f3a3e087e4b8061bf2be0852e3b7b60302047c435bb50067306502300e0ecde7f1f0b8c220696ed0bdf802b9a9926123c936e85d10f892dcdd63583f7c38300b3b934a916a3d33a28424d0a4023100a95dc36307f09c4e6ed5ee579078f40257db1fca8e17ecd20b906eb2ac46690e1b1560f75eb5baba20d85da1f555ffe40302047c435bb5006630640230797493b91be162619af4e29910a9dbad480f9a7f2c463f8a46b213c7772a529251812c47d1cc096c1daefe55c0b40d4d02306c83fef34274696383b77dc5850fa25a830e703dda776eabfdecf8fcf504a180f5b685f12f1a4be1e77c1c68694b1f360302047c435bb50067306502300ec202fc4a455e3559b3072abb3bea0a250d20278bf9a2fa916d38b0e897ab793d46936faae5618eb654a689d937e95a023100bb4b08cc258c4d4c490177a5634d19972b48a001d98f138523fe5cfb6ad54b58071d8cf1121fdd1616c1674520d631be0302047c435bb50067306502302e3137c3c025d7d5631c509691f5eacf54d1564b6b5b9d68b2de24fd675ef7b196044559c08c47ac28e6ea4bb20182850231008226ed1def4c5049ee525716b2f5648c9d06eebf6a4a8a3d821468338c59f7c2e223a08ad0a36ed6357b522b7cdfe97d0302047c435bb500673065023100beb049cb19f1a1e9dfe733d0ffc14b3360cf759553bf4ad399c46defe1969b70e94562e18a3e494cce1316fe45b6169c02305bd0d5f0510fffc7fe3b90ae8992c870ba22de6482b313d0dcdc6ed019fff104134effbdcbd66d323942825e435eefb80302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50066306402302d064c83b50baed918f23790060ab388f82835a41055a20a0036bbdafdb8628866c1d77d1b3517d288631721fe27e31a023068c8f2d13671b2fbd445024056c916a547a980bd0632561028b71cfbcddab256109f2f2babd768b8fe327a3cd3618d180302047c435bb500673065023100c2b3220a1098969e47168562f4d0f717f6ef5ce31968fbeab54a81d1ad7e73860f07675e043303cddd727f75211f6de402306d76c2f2c8187b907cf9950308aee393228d6ef795337db32f33141a670693081e3e83ad9474e711e66b0b16362ff01f0302047c435bb500683066023100a81e7af3832db9215d68a108cb52518e61f131309b7973272eef8b70b68b058182f8396692d9e81955fac82a227e783f023100f1a586375c8f41f5ca4278fcde534fc625732a9fc0217be9dd0e701f2404938a58678021093dc135d17d876f1190e2d10302047c435bb500683066023100a1ba44e61b5d6164979ab6ff26bb8e41c3687f2fd01db3e34240d9477c603f62eb74c08e689bb01b1ce77fc1609f4ad8023100bf29599b20c4a68fb0c1d9f6aa2ad881850842e9a52137cf64437cbb0f81a74bea25e4560a728ca1b44e6ac09d3700ca0302047c435bb5006630640230655a2b7aea3c1730c0184b975d389947b15534446b7ce3917a43d605670e4a11829845f3139ff90ed8d4e1812bb40186023047a21d2e35c105da80efd3bef270540dc9988f283e9aeeb39f45bca4a37d3a3e995de82e881ca0bca356bf39506ab8ac0302047c435bb50066306402304e89d0249a689c91634ea93a72c0e32dc8eda4b42af58fbce6d49d6d28fa97a8e219fa6363a809ff17f8c079c2e4b0bb02304c2468ea48bed8f1c77660f6f747736e0937351db13c72edfa61170f8ebc2aa625976fe8aaa524955fc044d65cc5ac9b0302047c435bb50066306402302a3d538ee44e1f4b991914c173b6866a5ca7a0d9748893a33b510c0cd2d701b8165f176d49ba6e6957d70e6516154385023002bbc8d9886ef8abf1ce7f29f6f69a64aa0ea1f7570dfdf627cb6470e4ac64f894cbcfb5ad35e82386c7a533276f6eb40302047c435bb50066306402307c252465c3672f51ab180b8f78394218fc74ed59ecc1f0e91aab7b15bf694dda1dfb6236260e93075418f9873472ec3602305928b0eea2e124535965b7a8c2ce2f5176536e35157b13949e1b157e393245c1e719ba45ae25fd56e9aaa5c3f281ea480302047c435bb500673065023100d8101a56f23a98b832aa6196f1e7d31bce5fbe21f18a891b693cad6c1ae4da446dfd247d4cbefb5fcf076835bf2c2f3002304cd10f5fb7e0216f64a40d4593427c115986959b9c57983fd74ba0ec0a944abaa5b7f4a82f55d7c0d7c0d6cdc5be2e740302047c435bb500673065023100f987e4950c4dfc7f948f288d85fb9c0a6c9293fa3f38ddaaec90d7c8c76a0eccee8a6714dc41dc72f439e41d55c07adf02307bacc3742a662240ba930247205ee3aa7943581f3d85e305dcc8f2324a936f765f4e75c91a115ba1e6c0740587f3a3700302047c435bb5006730650230432ae8c65852433462cbf406179e2d9e7f8b8ac80e5612fcace150bff017542b0f65419b6ca2744ebde789c3c7bb45eb023100fc1d3bc80a39a06d76ea80d2a67b3bacfc419321716e40a8d0753bab3380e22fa40b6fcc1be223da32bd75c433fe93f10302047c435bb50066306402303bdad2f68062f747e78db2dce4d0a92d51ba8702310a0fdc2d91482a64bc978bd7e64a4ac4ffaa3f212e05511bff425e023071093b754623b3fa6e570c9df8fcfeb22e3f8eb52a10cfad7e608755e60c779487723cdd1e6aa64aaacf7c1bcbe2b2150302047c435bb500673065023100a79cdce4870aa3ea4bef1175dd34096f37e5c11036626626fcc9eb0ae9ceb743e058c919941efa18a64d30daf9f2e0c9023011788fbcab93319f74f36d83bf96b10eb0307b5a061147475847594c50c1edee1ae7feadb444f838008cf53c26af90c90302047c435bb500683066023100eb1bc82ca7ef5ee51e039bfed189622678221e584d1ffa8a69f3c81e60a28e7ffb40f747f390816fedfd73099066bd32023100dc4132fe0af51c1ec030e1e3cf352ae7f00f205ecac329759a67348fbf82880ce19737fa5b9b5498d3836963bc665be40302047c435bb500673065023026f3324e924ac08270e39761b0f47793fe16fff217fd3d928ef43dad40fee3a4e62a33ed4c90d9077363766ef720ee5d023100e6509bf2a1e94e012422df8b7eee8096213e5bc4185ee0ec5e044f55ae3267f7754cd08ae54ffd2a091dadee811036fb0302047c435bb50067306502310082692f1a2cb69f6ce69616d09ff5fa7f4e201f6467478e9fcf385d8b633ef784b1c6e19ec2c0da8861d54cbb8628bb370230681b2426bdbb8febb3d64fee8dba665c96d02f510b313aeb9b90fd5ce3367aed71f376cf868f6269fe1a337b45f49f4d0302047c435bb50067306502302d373deced62c98ebbb71fa048b230a1d8f2e3422b8984845e6ae2941c39115a733abb4098b54ab53aa78caec410c262023100fb80d061a3f09386a4263cfefe4571779b22f6af2d1256a778bdb12c157407676fa82f07c2c4569e41c3359df4ee847a0302047c435bb50067306502305586f93f5c11015cd22cc8fa968aac044994a6b43f469514295ee899a732c2607e2aaecc30aff1e56779c71f53e10831023100d900d2ef2c2bd194679989aa300fee85e508605c246fe6c8974bc7e335507ce6983af21771f875682933ac3c1b0af76f0302047c435bb500673065023100c503151f1b1bb3cb2d4ceca8f4eae7421e0b4d305509af1c4edd4e27b044fd60035f02da9186afe56090af85753a9d4d02305838ccd944569a7cbb374b37ca0c96f4fdd6d763d2ab3fe808ebdf07591ab2e164f11155031e8d0cecd527dd0d4a50da0302047c435bb500683066023100c11af2379851b5745e1a4a8d4648ceff2ea99d6934f97a59bc1fd891d3cc71c7ef391395e6d7fcbb0b7bb05d43d1b997023100fbb5ad4ba81be70e2464ada2bebb1a27e83e0157148c213be580adbd3119452f4638fcb102e3442e3bea5fed4ab6fed70302047c435bb50066306402300108518ea307d5a9b7f5c41f8c31dfb60992ed87fa274cdf21e8bde583d7864237b71a49533a3fb760a2ffdeac007a630230559ee688c0ab793b9a936911a1b17d114be652102a55d9fff114cb371f784cd372536b9c909d5b750f55597e5df615700302047c435bb50066306402304f6b9de7557e4b41600906a552e01bab79f0b8c77f57393e8c987ab5be96536e24153490145cc9eeccecc35bd22e1e70023037863c58d55e124c5d812f15a2e0333cf6f10e9729336cbbe69e9c2fa63ecf3614bbf8a1fa1032fe1bb8f9a076a4c5000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300c7659e6b570a1555742a1c7ca9b3e308afcd73ccb6e6e46edfcf6d46a550c2ef847ced2f46083e8dedfd1fdef149ead02302e85254225a2a7901afa53ee89075ac6e3081e6a4a1936cebcead53a221c05a4b506c0baa21d491dbddba833b74357a70302047c435bb500673065023034ea213e7eda79efe0ee9111cc54695749385135ff962018a3a28024aeeddf5c30a4baa530a1842a265fa87b401ea6d6023100daf05de62b5df536cdd8de1a37a88a6675ea006f1055e025e2bbd77540ed8063ae1d2cf8d98d9963e7cb93c0a836307b0302047c435bb500683066023100b4d248c014e3dd15fbb675321c53c71d191142fd458e218bc40e7bb24487f6eebcfec6f5d1a0c2737c6ca5dbe1535d23023100ee2799a06b31b19b1e82348e9261e2d656e28831779c48bfdaaa4c7ed41b4990d7ece1e820f8c734eae306f38f6746ce0302047c435bb5006630640230342c469c62a11fc1e94a4c508af1620b8580d71862e9f1f1d1b322ea9357764c74301913abc8b52b3f2e5d9c4828ef7b0230705bfea7330f7301253c7ff7485ddd2fa91243413805f64ce6a28109f82e72ed32ed535607e7773f5e1471c3703a5ebf0302047c435bb50066306402306da051f6b3604ecc7dcce9a89dcb227668d6fb3270435db90d53a658496ed53f396e7ea6144bfc6713c50449dbafd8b202300220e1fcc68cf5b6bcb9be83a3a3d95b14c7a6f7af01f39c7f5cdfffb8d9b2832de02008eb6677ad7c705f986142a8eb0302047c435bb50067306502310089ac55ef2d0cf86d34b2a32135f4dc6e6937a5cb6b4ad82c1a1b711deae0d8f560dc6ec2c377897c0b0db9eec8b773d10230317a6cbb81553e5f8d64de04c012e2d7258fcf3705e7866fa65a0769b878031d7e11e9137eae6faaf9dee9800f9cfe520302047c435bb500683066023100f91eed507f3d425a0e3ae2ac40044e1c4d0e58526575095ed4ec35b405e603d3b047e0367a683831654fbf7a6a7f2f5a0231008584a1bd5fdacb019aa628222d1dd887ef103ac473d8986258ddd91ce15cadddc99480e04f3e8fdd24e3469ea56d20330302047c435bb50067306502304600c15261e13eafc817220ce1f66fc8c9083000561f9a85e84af439de7a918daaac0880b6bdd86eb1217b7138ac5f7c0231008e56cd6546762505915878839693fc4aa3c6a6bb98fba19431178fd8333d9a0198ca352cd5bb263c7f77c6d61b5586a30302047c435bb500663064023057ae052dda7bdfe0cc8465b6fdce3337bffaf62324c640db929ec69b540da2d7234e8039360ab49364985b779e7cfded02307192834874d951d1608436fa5434e5e9b7fe5d0158bba45e2d7dc05638fb534078b8eb87f13e644aa9913bebfa1364a60302047c435bb50066306402306187b6cfc4f495c8a2f6071dd064149697a23210fdd30ccb9be605b6f64cc8cf61ef47060ee5d768ad52e115ca3e579e023024b3e3ac4a1a97f08057741b72f0cf194c52a5aa6595f86e95d9645862a38e262de2a2a181d06eaa64fba49476b080a10302047c435bb50066306402305d783c9385075a281117541dc9a6a952342dfa4a893d32a296561711efbbe4d76e644e17f5642a41870d08ce61e706eb0230380a01c368c5f88b0d034452440cb698572b9c6d8bc7afacf69f60f157877f7bbc4cc0c719f89d6bd64078dca25ac5860302047c435bb500673065023100bdea25b4aab577f4589c9d383c30a169f927cb40f6b113ba084e8f3a8a010742ffddbf68f986505184627ab42774b51b02300cdf9d1a0db589f92e431583f57364fb7f2f3e71132677a55497fe24c2b9ab75d5e310d0593b2f87c16236db059635c80302047c435bb5006830660231009e6efbd8d578603430a199bdc1cdadb2cd2cc606efab9075f0911806ca4d5e766197f96a1fd3651bd7aa7cf2d0479de302310086221b1e1d1bfbf9c0cc769c9e29ce275e9559d6bf96b1918e86b6d76701aa9e29f812e949960dda633a09d0034620930302047c435bb500673065023062ddea0cc478eac3e851861bff9d3cefc473dc840720d5f7b507e524ed7d783e4e872680b7a554555b7a450124171cbd0231008a129f3040916beb220af44b9f0a27dc8ba8aa5e0ada1bc3f4977b2f848f3e6b4b6a49d7c39de7e17ec7e09d0c7dc4fa0302047c435bb500673065023100e51d1e23c8b5f52bc1b527d5ffe3ee78a9c854ef59888688a4d7fb2c327623ad161645a49f1484fde2e3293f8aee921102303ebe629ef01ff33c2c4896325093a671b804c019afe0dd2803f4f817ed92a7a0ddef9c8f4cc05d88f84a36da41d2df7d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307029bfe4cdb321c6c130db3bdf6c3dbb5a3a83c28fe83c6beecdbff4414cbcf0f4f898e14ceb2cad98b33b0e065ae594023007ed9b984534f4efc615e8af4b6127ba8cff4978f49fe656f532a9649330aef9209a9a2216f55318706f76c9be359a9d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009e8de47397e3600d9a3a5be8fa7172240b41f7815f636cc85529d7e1c631591a751f9b1926f8febe2a3d242a8feaca520231009b167e6dd69939e8112e4666bd4007448ff373d3fb427032cc148394defba4d99fad141b7ce98d4585e86c6fe04961600302047c435bb500683066023100d52164da4010c0fb163f47acaf861b805a58abd36c6554149a59db713baf3a8e02988b3ba4521b1cc7fffda08451f21b023100acbd02883b93278591806942c55c9d7cfabbf7d81f0b918aa2c05755d79d54ec14903671fe740073c4a86da06b31c3ef0302047c435bb50067306502306d73dd84677c45e68a0c9cb2b8d2a4f43ab7a55ed1b28d8599452e46e640cc67c04efd5024aa2f1faa1a02b819618d6b023100c7d33c3278fa69adb4d3612d0c158a4fb757465166f4e889cdbc3380ad588e9742ed5ff36a60dda9cb7578bca5f93ae20302047c435bb500683066023100b50903cad44068d97ae7f1c483d2f9df4fc97dab7998931a19c0ff9c747aa6e8fb386232dc01101ddcefa13d71369745023100adcb62f090df6fc6d42570d856b2a3c542968598ac3e2c453ae0414e5d72886f23c2b26f2743452c61266490b8e1569b0302047c435bb50066306402306b816680be9506965976a8e5b7df891660db57365894cd64cce31de97037f3356794d2d76c290900693996675dcf1c6402304542968b04862af5f0d037a59e40b6cf59ff0ef38d1b69fa8b6346c1aac2fbd68237ed242b9d38d02003ce06dc3433bb0302047c435bb500673065023100ebda17f7c7312fc74173fe54e5f04f1cbe9956347df7734f271740957aece0676892f473f23ae8bf314a8a0defdf1e9702302553696d46ab531b66983132c95fd4b19d04373731cfe53e3d06dae954615d382ea968d79f29c6e9a23d37162e31f9490302047c435bb5006630640230664639590098b0b104b8c58ceffa6c5a338665eb06accb83dfda6eafc86ccf83421f8ad07ca6af7d46884c429c7d82be02305861fefcb1e35ceb9563127e62ffed20248dda0ac0d97a2c57e61c458dc8393936eaf65230759f0c3d80e36a86b069540302047c435bb50067306502300686e22852a9368fb4c1da28933ab50f72034de8a3c8b3092a381c3e42a8bee04ecb6b482ead7f6b5f6f3b950d3605620231009ece2f1906871dee9466410673b5b59c01e35e73e9c7487c0633a198447e92fa990c12362dccdd32e71dce8e24ac7b460302047c435bb500673065023100f8ea95d6f90256697f0a7afa991bb2e12423ff0d155174ee87926df42a8af9c02c91e0aea3f542386c6c7fd40d7b8053023042fda784ebe8ac2ec0cead19991f53fb05ffb064a4ba88ebc918da01dad78a145aeb544d9570a4320c79c7fa5a7b085a0302047c435bb50066306402305872e543ed242eeb0e390b5bd456ffb8e48d84d97ed0f66718bc9480b6521640bf9a0d91672179b4cad00494a05fbe5b02305fd41ed311a0bd475b14b1f36407af26b0778cc1d0a3189a2185d16693e27591d35500dbaba7655bb0355f19be2fbd690302047c435bb50067306502306735f36d7e2ad9aecc0dc5ec276d76cf7b4dea6c0dac97c365d3935c6b4761de5ee13ce9418a1ce6c995d513660a89b502310080ff4cdb9b3b89d66e9350c17047da080128511ca672561c1d4e726e374c29ef2cfdfdcc3923115e42ed39dd8d439d870302047c435bb500683066023100a5cd85fd7574944bb58ff9a00d9f06609af14086dd6aa22b7d466ab38ed41173feaab4c98aad750daed2df85f0e8aa7d023100b322436c4fc65b705cba77852ca1422bdbfd90d3ca34ab0ce7e7567c370aa8f00fd068ea329015819854dbaa06ee4fbd0302047c435bb500683066023100f229bd928616baebb1942187331e738b703ad0a2888a8484d06b04e575bb54689a2156df9db48284f4dbdeb3262951660231009baad96016c2446345b3616bc2126835ac1b8df8c34579f700efd59f028d02e29724488d2b4394bec909674c92f567730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300095fd4f8b6f585ba24a8d08439946418f8678fe3513e9307a1a10b5e92e3b0a408d00c651157f1761c46e39c1b0c6dc023100d28675ba23ead2c78e0397f8fe4e2fa6fb2ec226640cb75dd1c29844b4b01edf1d3858cb797adfdb7e424844e80f9a300302047c435bb500673065023100843bda8683bfbb486b947a84d6361177cd0f563dbfbd4ade669a0c945cce340d061156d73cf806a082d3592624a0f19e0230561d27553b561c7bd54b97c919352e2b78c5a6cb2eac311554388c2667c8cf9dde62175114a37ebded7e95a4cab56c710302047c435bb50067306502303aa03640726c56b969009257f3ca44a7061b1b57dfc9a08f42b9fda31283ced4931ffddb7b2e0aea32048096b6b488f7023100ec7ec3be7755f797cb71d06bf6722dd1752689f4c995b23f9b5c826f688403e796e8cf476375081a77dd907a88b7c5e10302047c435bb500673065023100e9511924f9fbc61d8a1ab9c8ba840000db121de82cdcb0c0802487bea3f852e372a784b7ceaa174fb7db971030e924b10230767930fa3f823dbea3b56501ba48d8e620639703f21c75ddd19e181ae8a18173685e5774382b0af79c50b63022d560910302047c435bb5006730650231008f51885acc5e544e1c34720f83fae99e238165ae9cd5e2f808324f1eb607d3f621132e7931cba8b9610d43f5b2f65f8f02307f16ee4766ccdd71a2d93b1a22d67b264dd2212f6f5617bc2748232ef3b611313da901db982d53ca3a4f37203453a96d0302047c435bb500673065023072f4ca818ec3fc9380a62c56d53818b56e966f23adaf14a7baf52500e604371d14b33dc91d16b28abef7a58330ff780c023100c92b2ef8e00386d5e5738fc601cbbead89845740a7475309feed22c3e28f817ad0558e0a72ec18ab5abb0718e8c2e7e60302047c435bb500673065023100a27200288b9800bc8e3178b881b08b0f48e8bbd1ead6919a98b2813bfbd72516960693c821e5fbf6ba6e9fa368acc95f02306d0b670d06bfa309d2788fb9bd3feaea13a3c92cbed5a42d9e8255d052519f72e4d11f1ea80258fc2cff8ecc6e819c9a0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500663064023059f5c580effc2aa442118a14aceca865d33d01e6806611552e9d29789caefef7d794b7c330f3f733099930e3045f14590230073319087cb879e948c950d1e5003670c193b259b9af18e4a842caa0e336bbba7bc2f47feed591f7037e8d667f8715280302047c435bb500663064023005f37e690a76c3b4732e4982f54323bb0e7ed76113b2c2af738ca2386f42f279a95e22cb7e297ec0588d50adac9d2e9202303b26b6ce242494a3c945c554db1fa8cae6acba5796d9de38b3a5600b6261c481c437d8b5ea13d10af967508e9c9ef5200302047c435bb500663064023053abae9dd1e5c53101609d0a8637f48a4ff78d95a02098a7976974ea03e294edb55aeac1d3b2983844fbf4d122eb081402307b59a9d9dc004e4f0cd1c806e9a72418ff4d87c333d010479fea7304ea74a809c237b6b7db8ff9a62f50983638b23d880302047c435bb500673065023100dc227a33f2b62ed02f012e7cbc1af467487da26120501ee0fc4c2f2ecf4e59b8dc742365dda154cbe79322374172e326023026ecadc06f70aaf9402be021bc043d1c4c747d2ce34082692ed89bcee5f08e64f7a94c48b65d989cd8ce14b8abbf0ba50302047c435bb50066306402302bd4882efc52fc58b2c9376b5ee4a3967f86b9b281a34a552feb3f6bcf498c4a4e2451266e80efc0c581f395cb8e89ce02302da228922c72223435c6388bc591b548d6260d3f71403cba3d3d0b998de4f68e8b320c8b356b4ebd4c74df3757d29c810302047c435bb500673065023017a034c90c1218972bd24965ac4bd20f991669bceb429b87bceb07fb13db92c7556e859e129e4d7884c7f995e8280b08023100ec9bec90b5339738d08af1bf9bab2298489da078fd57d8c14ee8715f426d7f739ee383c3c8c383008dc766b3f3db406e0302047c435bb500683066023100bcc9c9427561fc95611ba91c957badb65bea1e04c26e8d3c441fc428dd6f8792d459c6fc6d42de64c4f656a36778fc79023100de87f224a0e4244c2239fa505fc554b8bada3964a975913badd4eb4791cc65b232778ac96d981d17c366ffa68e615a0a0302047c435bb500683066023100e43917a538bdb87501de86450d75357e53d0a15df2d5b706dd70a477d917b19bd4666315e18bb9a8e847cb5c041494d102310088707fec14286dfe24e8d2b78ebdffc1a378cf940c3e945c3934d446ad06ff7a5130d3949e6d7ffd498b047fd65a6af70302047c435bb500683066023100db536ce7b8201c05e7b1ad1d85a24776500514afe3809d42a38818838e95090e2f56aa345170bb24124454f670bd94c5023100b2813642d864c59707676c55bab8a270bc4841137a4b25bc786beefddd45ebc91e16519052bafaf6e284b8d2432203240302047c435bb500673065023100893355107573a57578607f012eeaf3e2e8e7b2afe3434316daa4a5f3098bfabab58b0c0f73b20b63675a02a723f8b4230230693b24e88ee7781e1bca23d9de5ac2c1b76862d8642b6e7626573549a292b1086b0c6d3f2a10d492855d559b07b6150c0302047c435bb5006830660231009397fea00a2e0e65fea2837b4f9e536765db9dd61abb5c517a893d3c72e89af0662dc87bcad3b76ecb7796693985d55a023100cba56ba664a0e72125e1f07efc4f8f58c1656259b4c28f7d74177049666e4e8dc2197344eff5682a983142e007ee06030302047c435bb500683066023100a9a880059ab7c6a68d9098e6e90f37a301edf75a23bd0fd2e1384a70b4fef64c1ea143104d1f2fcabf263167bca303d4023100d9d2edceeeb0cc53c9c85affad794d5d4db85d879f7deaa13cf367a04d8d5bc8615001d4b2d8bf706b788b5376536e5d0302047c435bb5006730650231009da84c37877c956542d7845dd16be962f32f54e9b38e131c666572eafc0590b69f9279e91922af00158fa38e9763d81802307a6befe02481ef8b16161c03ee515e7898218ca9b81a8600a208bc8f5ed915c7f0114aea7a1b823b19523f3419d50a640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bde7b575f693784f93464a85bb6e393aa32e681e9fd06a6b49c5a9acd6a2f0af631844bd7569b10a3a4c604d8890862702303faa4b2bd84871ae626dbc590b38a91c398c66b1fefe0dace28da3ca77c59adf807cd91d8b54104f5b4a345699ea46d50302047c435bb500663064023033987b9f93452cb7b20b3e75701b303392e7702773390910c353477292f6ba5871930d54572e5aa39544ff7455c9e9d702301efe13558fbfac4790ef4e177e17dfbe3c0ff0f894a407dbf7529b8f5aea972cb3b2d18c260be590b73fc9383f2be2410302047c435bb500673065023066adeee4242326f50ad262240bfa1cff04d3a0fda6513a08b1233ba96e868a23b271bf6cac2baa4954df5ebefa8bd6c8023100f65e14e1efa89018ae415c8f37c70bf06d92504eb9e5228c0c131511b0630ae9dcb745391be98b6b5d2598110b42c5570302047c435bb5006730650230630ed9c6cd57deeb444a42e656148168f9150ec0c661b1a8b5f05bada60e2e9b26c257b0b5c915cc25ef339f92cfa078023100ee5902c0fb6597576a60c45325649f5fd98951840e7933d18a7393addcb33fc73eb1c83bf96d2a7a99191350a42918320302047c435bb50067306502305cb642ad200cb99f24c0bc2d5ca4d6bae65a9768c9927a7bf6ff632c4a2a7e1aa54a4344f4da17aa50a61a82bb4c62fb02310089668460dea490f71b44480823f0bd8fab495b587f4947fe3b0aa5a153df15895e111f5538eb438db064e9c0a78d01350302047c435bb500683066023100b3f5b27c33d034b265c537959f27f56223573c0c13989825b3959e135d6a8bd614d6910ed82370ab805e28ad3c964137023100b37ac187ed3960430d3cb37e623138af9c78a80bafc084de2a42975d04a9db7e28f27bb5b12c6a83e3e58c804df1924d0302047c435bb500683066023100f5090b7f45723b72ab304a9eeb6b934b74a41069777d41281ced041d6356ef46f6091ad2490193880067812a62683f6c023100f76fb2ecc8219a93589c8f420d675049b7ba538f9c983564ca5870f118c95f0a07f98da3bbbfe57bed6e29abbdf415e90302047c435bb50066306402302f1e30b18354914da1b6a5ad182500d3c072646ef6dec187f2017ea7d74d848feb682bfba42bca3d08d0404b6e17f62d023036d275df4f379dc2c7b6a29249743c7577aee5f602b2778174a1f1775bc1fa62b95210be68a16acc6b1c198232e7f3580302047c435bb50066306402301ea45959d6312b31ece99767962dd23130d029ffdb355f8ccaab132fc198d7e26adaaefbce5bcf32fa0fa43e28863eee02301b065af9225efc27258ebd380255688a50c9c4f849134a4d31d6a18589f674640c420b2f98689dc89c4a3f705a333d200302047c435bb5006630640230432406480af83f169b97dfaf7003706832fb6cd618fb6d97ae726e0c7dbb48bc93c09124f2f768edc7a7e8bf2e5f6a2802301fbc2664156ca50abb6fbcb43226042a54820287451c5c4a349c03640b5dd6458856caf1fc613e77a2c6247ed23e417c0302047c435bb50068306602310098ced9e07065f34b3562d8a291422de4ee9ed31785eaea4a0ef3d6b448be933f8c896b1d39d0dd41654dbe35013229cf023100c72a1a5401bdd198ddbe95367dffd71f93ad5224ebf4d35755db47ff5eb69702d89a866799db08ab5fcfcddc617690f00302047c435bb500683066023100d767f6d90164daaf592a4f3ac94e3f9b72232bb964c4381197f6d418e3b8ff47df4d6f9073695715ad7a26c3b703572b023100e3359a5ecc560b36549ece6bcf32618040445a5fdd584b0f07d1232bcca875eac4d55dff8a3b299391fcfaba2ee3264d0302047c435bb50067306502306643ab8750ae2db5eeb4fbc25699812fecf42df1cefc6210e64e9be9ac526ea2c6d11f9586dc7238615a4350085562fa0231008f95123d0e6f084e18aef98914448f0f5477ec5c770cc23858022ca849266aedd6a082c1b37bf54bd04a6f3ec3a679380302047c435bb50067306502305d6ee4dc1a46b0410297b23435ac3b28441e47b459178f0183471e7d824c69227ab5f73b71b9ced22f9f19ade68ed44c023100c5e425d9366f544e063d333ede47dc753154e958807ee252f578ac2542dabd68825264748b56fca6bb5bb83034cdcd630302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306e8ba8e9f573777600290bb97f249e14d90844c032aba02db4abcb9b925614d25dc49334cfbf1bb40c033aaa3a9c33940230263c40897777c1fd5a4a2af2f1002fc88e26bcd84d77f9a7b7446a453796c11f3c4ae7e4dcdadd9bea200cdbde37fe5e0302047c435bb50066306402300277ac7405e3a749deeab78fc5f55e13ff3a71588d37fa543c775e2a305e4b53b0b2bf94e7c77df088c78fc4f9cbff9b0230607cdecac146709a95b12a7b76b358bbe8a56d5bfb3c48ecf9e4d46728874f11dfdaaff6c031b34c12caf38d33e64a000302047c435bb500663064023026f0e0e95c7d9482fe12b4ce1d9beae983441f39454a6a5d8a6f3c1ea457fda8e1db83dbd727cf8ad51a3b3221cc01c4023026910bc3c5cbcbdc40c5c0b8607b7ea2cefcd99c6f340113fbd069030f75c75f2ec50b1daea66ebf282f4c7b5ee1a1ce0302047c435bb500673065023057239258f0318d167e1d3febe8ec1309fae345c05a986735efc593599c9c5a65ba8620f7c6c3dada37dc451b6f0c4a96023100834caa0a1e0186fed03c9ccf5ecfac41288f38447df2e5052e1fd096a40397f8a91fea8c9cb5379d1db7848532cd81e60302047c435bb500683066023100872250f69d45c724bf422213883a20ced129598fdc762d84ab6512a318df6aa5bb945eed634431dde5e6cfaa3e3909c8023100aab7d9c264b577cd3cbb2c167b05548a5092dfb982a739476c4383a2a525c60701418eda51dc756d45f9911e0059aaf20302047c435bb500683066023100ce32e810f3f31fd450ab4eddbcab2415e314335648af8b2a7c0d7d2add50a8ac1deb262a2adf31f9262e539394da33d702310084d70134493d71b7a50726a4cf2309ea741a9c1a34fec31afe0229199a5e5c1dfd1b555861bb03e70a442ff610922d230302047c435bb500673065023100882bc109b97cf4628458dd6d6e7e1b2e92894bb55f4cb1a56fe05c3799ef6a200563dd491d06cd1dba7a372051020047023028de09ae21527fae3b0e74e849fab9eec11579eba6aff1407693d32190282e6bb89007d942a11233e880368b3c78d1e70302047c435bb5006730650230533977860434152d7f20a84bc6d9820e43979cb421cd56f5114e3537c7a289a2e0272445e85d7a0ac1721a395405f1820231009a4a28bf55a02efdedd95b6d4f566f1fdbfad717e238d09b9605985daeb033e1b7eb92a86f9ac022da0183346b0c46b20302047c435bb500673065023100c03f73880a8fdd124eaf272a5563cec032b11f8c6a0008e9782ad36ee1225f974927f2928813946864c53895bc1e79a3023030e3ffd7a59429da6d1b2f29598a1e7253624be05babd51d6d489c528b5e4993c5a572fe9b4b8672f670bc748ccd6cbb0302047c435bb500683066023100feea9fef7e503d38099e1879e910914c62167bf887ddc94a7c9bcb44694001052cf687a80ba687f2575c0ef6af9ab86c0231009b0bebe9810c3d8c076cf77b450b70cf02dd9dd5c9be614d050183f79cae8b3054a1ac06a86693d646747118f4f672e00302047c435bb50067306502307bae4eb5a4e7b588f0d0a823d046bce1e81f63934e2b288c371d25b797e016f9613381d738af2635b728a3fc39d5c28e023100af1d0f520b521c32a65a878211e83bc72344d35ce7f0101a18179b965aace74b5d0022a5ab1a5842cd12d7f40cefb2390302047c435bb50066306402305e11b9484f37ea34df244d0d8696e3ecf64dfbd2f0412c16390da74327c741464b4992d8ec1e3f7540f41933ecbf984402306bdfcbca643cb463265cbc477866cc7e820423f46cceb06d8f7511e901e6e7f92b311c471f0f4c46219076a8525243400302047c435bb500673065023100b3f59b142eff1ea1a0647e501c8892bafea7e2f00411470124f8ceddd5d59a461b3651d994f701cfe10d0db123b0f35d02304523de8085f952ea2697a000994096e47fdd232777ca6da7d96f7e751c1f70cec867af0738e23e604ed0394fd9708ebb0302047c435bb500673065023070c5f1787b0bfd2a3ca29252c1f63677398f11f1300a5b33bc0fb696f888159916639d94f91c4e7c1b4074eef862a5770231008fd87863f7b039e0a9cd7d6b08801ed67dbc79268f99cec3609b6609f5effc7f15a5f5ab68e6bb4ca9ed412c2ba0bd170302047c435bb500673065023100b7054d8c27f2eb00ee099470592a42035b54dfc5189287768fd55e4620763d8dfae554bf6e7218870d37fdb45e1f05c102303f4d46976e85f48606eb60ec4798b5b8ddb00af3d565c4c10cbe0aa9bbf75d49522c0997f965c9216586339694d8ce980302047c435bb500673065023100f1ee40803740a0aaa10fb1bab257dcd09640c6264eb96a99e6a5f4f759fe04cacba7ec1f44f412c1efaa37c612683a6402304f003195524139339c689ff77a4ae16f973367e9db00f66a9f48b166e0044a0af8af5ff25aac57e997aff9a9e2639b4d0302047c435bb5006730650230480897f93197bb030dfc188c0b95a642c8412e59220a0ebe6fb052fd0cc2ed9b1b43ce896a373f667b9737b332330104023100c5d73b06b324f5699c311e4aa020d8faa0c571b2e9e4a1af2a6005a49d996cb7741e20a6c3e25d7031ef3d94ed52c5e60302047c435bb5006630640230620e86011e2ec7f945b6500c3ca48cd7311665f280c0fd590cdcb74e30be91c315120035c54f9728be49df38b7ddaba0023075b3d387800da37a58a44270a60950b70cf91e1701a216480ff48456612ee9ea47912263108559a56fb510c491b811570302047c435bb50067306502305d918f1f36d13f5e2ab9896fc1be818241ba874633652f0ff090ee5090e206b3dfe74ce1cf190d243f86a7cbf3ad7030023100a8540fd612be53c7a577e47fc36ca20ce4339b97bb6aa4190cd189732e881025a7aa1fe0186d8f1e111588a9ae9dff5c0302047c435bb500673065023100e78c9a95a0acd7bc6ffb13dcf730de4e63d08b17e580c4d4261b7278b5daada16421c8d4ef503e2629c94ce5e6531993023025494dcdfbf8d1c31670d0a99b93c18915d2e55f93327b8b1a6ceb0123aa90cb6deea2591ac6fab4ab55bf92e23d6a950302047c435bb500663064023044557f6c5d374c1c08ac3f0a0f6194138eaea036846f47c03eaacffb1b0b4169123a0da9df6357da2efd4028be95ef2e0230646a12ea09a199a76bb8de7e1a88e7425ff92d3491761883f6253e13ae6a3d30993c926c2750ead2e538d7ab111e01b10302047c435bb500683066023100efcdf81846dabfd1bd780dfc68a1c974cf8734750a93e52226dd256c4e21b206fe9bf314196154b8fbe9e33aad7871bc0231009d7034ad9e83f2909572a7b1f8e4ae5fdb2964435286f5f8816e80618f0ce5bfc035eaadf06e697aee44633f0017d0950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230352fc2de2f34a5dd81d5b42e88ff57b9bccd7bd07b731d8354bd60a3625771f6ea053222ae6770cf18ef8174f2e5484c0230701006b4288ae4832a6418bd8dd165546463ae1188e7522c6187b9590f705c9b2b4109d89502abade2df2ab0d0d2c5fc0302047c435bb50066306402307af0696bf004f2e500fc61d87978cffd4e49cc0bdcb659f6fc1208498206714a8eda08428327f9b5efd7c575237c78c902306d5ab4650564f9795284553373a75ffdccdfd9f689477e2a996dd8918dbba73e70217191be36d726595dd7336c98c2aa0302047c435bb5006630640230558735c56252d32d6f8df4df229a302e5be42b1e26d1a1e12c35a890f6d87c25d265664b0d99ff4f510f30421f283c4802301dbdfc0439ed0320718322a44e40ae3b4f7ce08a4ec12498db9c3e2a1e149ca561279ed80877ebf2b7d645cc78ccd0a30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009fd362b73656e9b7e0de46f20a47487474b6f961f53e28dea9db854f548512f90e073d8e8f46a950f5dd00c65576371802304ab330e8b8287544ea7f4b2f2dc9a982d5144683425eff704ec7bf757603ee12b557bdb998475ff83345b2b9fcb5aa250302047c435bb500673065023100b3cc587a2105757b2144de10b297321781a836f3f016264d463f542adf1f6f061c8881817f8c4c36b0bc6b989ef60e70023009c469d0bb4f1edb6a049d1060cf74346ef1f51910080d20615d663a0b1318c38fc22aa3e1ecff4b5ff7d16a6223e01f0302047c435bb5006730650230410df36b0c88100a7c55ec56879b380bf4dcaf6390153ef7fa71c3d523f9d61fac33795da36e0857d95133bb5cb79e91023100f55dde58c44a731773587263c790e63cc39ffee5946d034dde5998fc805dec10d59831fcafb018589fc382b744e84d1d0302047c435bb500683066023100dbcd9f73f0606f845b58c1038a71f4dd2d63f512b249a8fd35cf53b8c0218c1bc2c995ca3492fd8515c29925391693000231008efbacfb11c9e79af8f319f4e72b8143f05868946819090a51d6c1aebc8f1ff57c9ab877eb23e42d9a2ebf84a440a0990302047c435bb500683066023100b787a69fc368b8f238daf0eb060691f8b2da0777e061add98f4fe1083cdf9eb4269af85efbd2ec140c4bbe58a7cd2dd60231008061a4dbf0293365acd52d2d5a6acf52e33832d298053ebfd9920805e48058e2860f1d23a19c63fe7327c658b5ac7e760302047c435bb500683066023100b2e48606405750d7b87066c644ac371da70243beebea6e3dea3cdbba0235d7dfddb6d55354da1d9005ff276073cf7a21023100f3ae27999d75b7c76a89c53a609985f57d7e58280821666c8ea564d5c3e332e4ad64d1e179b96e9e4bbc54aefe16081e0302047c435bb500673065023100c36333a4cfdaa79a25fa8b41e4e8423a72751e0a832e0b0e1e6d0ca547c1d3525fba26174680da55fa67a87390cbb40302303fcfee87153e153d8a8ccb31940dc1a7a84f6789455017d15b1aa0fd26174d9029864981b5a1aed0bd5682b27173a6040302047c435bb50067306502303b0d97f9c968d40f15375b9a2e864b38e7ac69a243929f78eea390004e9cdba6b02816aad7b12a17298d6ed5c63c9332023100adfd028e6c20d7d4befa6051fcd1d7d36057c13660a3da6ad198744eee2b9f39c28666f9afc8a3098e1661a6ae64ee9e0302047c435bb500673065023100d83fa96f99f98522dfb4550b401d93ddd61aadbfeda11bfe1b4bafe8f856d4750be03d3e543175947eb787e197d735cc02307d8036737c255435fe99369d7c9ea9245a2a0b0eb37641af04136f1d94c0cd8a997e360a0956ca11196a20e29496b4710302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d373db92294e339d53ad4b6d4c9c760f9c74ec259a3b43854bb226f05a01014ef34b9685917f129a89ca8657f2b739a7023024aa0e7159b42f96b2a911a7cd7c151d0fa42b74fa761df9b99a7816f7c2e996aad4d6ea902baa35397c8d5b2c0e08610302047c435bb500683066023100db98ba2d840e9344a9ac19b616d8d9c74e50e00679ed556fc80b06d6146ac12a7e6b2579e04e5540ada6dbe59efa2b17023100d32c634f8022c24cdd1208dc7a850b6339f125539ab9f78fd4dce34e24cd8650523da1b31c95f59780fc14707ed5a2180302047c435bb500683066023100dfc2cf3f88a8d6f2ef1db30317db87ce0336870b77164541af54ba7abee555f50dd6df9564248f7e117b434fb82de2ad023100dafc425f6a112084d706f7309ea64e78c893dd71209cee26af4ed49e470e162f32a703c830cf6034ec5fda58c9a6c11a0302047c435bb500673065023002fde5fe96a5b814a3b8889f767bbeab26ccefdfdd03fe86571cb02d62ec50c67479382e76a46ceec99d15fda28d5030023100f011ef7f53b7c8210f756737051a5168d655ff3a47be8bc1a7b7bef340864e32d202e761dde9ab63a76ac958380e8ecd0302047c435bb5006730650231008120431b1c3555d2021358144cf29dd6a2f05f76b518a4bbc5810f9c9aa4a71dc658faee789ed6b9b24142a16dcf9d1f0230737b29c3589028d52af945374f739ad33a8da48ff35ddfa3f1b407b1f444b737250c6e2a49462da0a7261cf9f8a96a4b0302047c435bb500683066023100d1bf271763444abeb9ccfb14f2698cdb727a6b8f674101946b338f3d6850a25b74e996bcf4534047e0f23911438bc2a9023100c5c390b888a890e612e762e171e400496f19f46e10d6995582f6dce50ab34378901f0f8e00eb78d8c092561da27293ce0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230710cb9dddc1c093036f37cd3c03d2f980746c4b5628a0ad772a2767bfd5d192c1e8ac8f8f7c2ea01d2cf0f2257677eb6023100c08a0ea92ad97f78c363235e90ff1ef5989d914eccdb077e28bf43d009c637c3d2282151e47f33a493b999a7f7e7e60e0302047c435bb500683066023100cbd49374367a4e2bb290660ea94d2a827126fa6db44f83612972011092601cbe649b87ba41fe10d4731949b0e3ca72cf023100c59a9aecd8deee953e2d20057db156af7f6e81751099a75bf3fca832f7eac411a5aea5a92978ce9008a1b9020eb9653a0302047c435bb500673065023073586bae6fdf6ceee960d642396540c4f63b9f39878c02c8c9cabaa090dbda8668cf0460bff9fe04abdc41ab476faa05023100f1cca3d8ab040a9d1afcf1d088cc70cd652aa3c764057d868d1d9921f16be57950916609914063a85d7be360290dc3210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b3257444ed71c58ad403f5a8b5ebb776d05c1069789c44c25f88fbda567e5e517b881f5856675b42fca4b1cb0e6761d9023100950d2a8d79ace6bbaf11ebb577d498cad88c0e7eb5ed23bdf5d822c9f1bf25c8814bf08c27e3b43be1f0a0d2d3eed8c30302047c435bb500683066023100bd97f4a0ec8ebc0eee696f014c4a9e8db7cd46d2d99ba79d013d2305ef486acd0751b30ec93ead8831220d12d251379c0231009bccc79633ffb597a17b71e4000b8bfff803df3ee0a6ae0a1934843d2a1d689ae610a65293ac396fd4f9e725aa9fd7fa0302047c435bb500673065023100819e34851304ba0af624ef978825398db4576712decef64f967df597954d5de28d6e2e08a6b6b537e1fd4696143ac790023011c7d732202fa1354ef3c7dee4dd7574cb4fe15772ac549c967a95351e7d60d6edb246c1f322a9f5f1b71d00df9950320302047c435bb500683066023100b3257444ed71c58ad403f5a8b5ebb776d05c1069789c44c25f88fbda567e5e517b881f5856675b42fca4b1cb0e6761d9023100950d2a8d79ace6bbaf11ebb577d498cad88c0e7eb5ed23bdf5d822c9f1bf25c8814bf08c27e3b43be1f0a0d2d3eed8c30302047c435bb50068306602310088bf130d857746097032e535cc284925d7abb4ad9392d47a46c2d34e65c1375653823c8fd761f769327bd14a6ae3f7c4023100ddf5f7599098c37085d2c71889329619254aeedd10787870a9f0b38d16088fc2340fb2710b2505588847556ea3eb0c2e0302047c435bb500673065023012de310dd8354727d9da189f87bf768b0a45ed035fa9a4873b0f08482feba7e0c8e2b9e8574bd8efcf222c94c8d39421023100e45d3259932a80045a52a6af7dbcc9f49c93e128e5041ca4c361d9506cc4ba0dad4c4bcf9cd38250a041efdc4245c2db0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e06703915702c76e2e41167d11f9d17fa43cca1adc5fb7b68773b7f7027d178a1ce06990b8aa5243a401a68b35e79445023100f5d85738808f4dbd58dc49a0f85b845ce8fa05b3876232acc361502c353981446504fba649d8a42783559908194ce6120302047c435bb500673065023100856d521380131cf3d5badf042233065657b4304893684b56d73f42442a7478822526d911771eea51c84916b21edd33060230236d85651e08a3a6c2ab7350d123e3bd64047ba508af6752999c26076ab79663a495a674b5862daed5e67811d375f20e0302047c435bb500673065023022551de2aa418e0f591ffba9648ce0fdd4708da6fb47f8a69640b35a98a3ba0e97b30c0d98b7fed597cc0b676ad31a8f023100b50d9e81b5884516386aee56425fac51f2569f06f2734f9f3c03ae3a3d362a37828f1a5f429cc28bd4de9e0f7f3646840302047c435bb500673065023055b7e5ba455fa66ee9f5f235c0a4dcd572b431dce7224249001f21f83e9d368309ad1226e6012d96c83b73efeab6941702310086c29f3687f253a9c998d5a93647951b46ef34db46bf191200b7cccb2c71e427679b495fda4407169b0dbeb4c880c1c80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310083e65020b920850e2dd3880bc035bb1ce6d6cbdb2773b371731a23c0fbe6e33ca53565956e5123a3a0c2e1fb791f9cfc023100a4f759d0ea8bee55af504914fa71a146d708cca9d671f8c7a88723112f2b4f303952fb47b827456f5b300c971632e3ab0302047c435bb500683066023100f4266e71602c6a87d1b90e460ec9cc595cb841afe885c4ec5728ff3532c10e84e90d0a1d3d1424895a42ab6984349b75023100e82aa91938a00306c026a6c12b66f82f7274497cb5715d518ec183ab8c1fc96c2948ccb158faba8af1038f46aec886f20302047c435bb500683066023100ba81999bd783ba365e517bb9e3d2a9fc51309f987ff7b3b0bd5fa239269e1e97c6d4db7cc7b7217a74dbaa372e54c35d023100dec1bf31961eb4af13333c25f52b767d7b725655fce911dbf75b86b089e486e39c84597e8ac79ef46689997e65c941110302047c435bb500673065023100ff876a5475ff79bcb4debf06cd6b782c2b56a70569817a46ddc861378823cb563942820e12075b41fd1f2b9b9db4db51023032926df0efee3a827a678ce0f94a13f16a75bab5f80d8ddb20874d424af349d6ccf042d890f01706359a1be49d9ec5200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230665bf30144ebfe7140e06959ac9696e74262702253bd6d538a38bbbecf2fe5bebda1521ee145d4a1c1d011d7aeabba46023100a5dd61715d4fe9a5733f2efe4901a721601bb52d216d824ccf65740cafc168b13d7b645b24005ea0afb1f0004167db3a0302047c435bb500673065023100de218db60d236e0eb579eb336f7e1dabc28c256d68d5dfd4be3574e755b10284ca7bfa6dbda2a78166cc2aeb3bfe772a0230499bf08d2ae6e98ca4bdb8d6b3c110404827994aaaf57d0f1952b908924d1513c31376c2d2378893f5b0fe99c22ae1870302047c435bb500673065023043c4f403858253c7a96f2e19d6da79e37140f8b67d775abdb1b588675a6b03451e96953e8a44e5919845f74b27379b95023100fd7e888aff67a6767dea9ee53180bd7a95dbebc1b8a3abe3616ff4f19c1b7a1ffce7e4170512da180d3a98e276a7ad300302047c435bb500673065023100e53da61f784c7107f83cb102c2bb11c98e90e7c20b00d8c8acecc8c3786cd0b4af9911c7a139727f54a20d125179f29f0230678d6f8c90bf0d96a8cfc616982c959d0a7f771c4817837af8f8c475bce0cb8c5f0d9835492191d9cc06e34b6dd161d70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fe729fa6068172fdc4b1a4271a4e796421acf24b100ca2c0ef9bdd8bb8d9a112a3153d4644e80bbad1c99b1e4ec93e3402306c70c7cc606db0b844205921ad2f1156d498e95a56f70d197f06550e2056ff8ef371a2fafcb4478c08dc68ae944ebcee0302047c435bb50066306402306bf170fbd85f8d16eb31a9323b9275ea7847e79f0edf70f24a6550232e5eb63b2e887df79c5cbacdd982588489e5e66d02306a3ce820823a9a9c0bdfdbdb8b6234f6fa4aa0afb7d77d76a06cc74d659013e1b209dddd5913326d1855e6aa379b37730302047c435bb500683066023100f79214c435ac2b3816bd3c0fd60e978ce6001d4de3491eeab097d152c630c38f2c9ef84f997cc6d171f5ede61542025d02310081ecb6b7011b072b3b207054c1bb292e09b7f1f16815f0e482d42ac939cd51184fba85d20fda076ab6fcf0490ae6b2c10302047c435bb5006630640230420b88d9dfbbca4bb0bd510e3343ba256b7f55ed8f8a72804489f0f87c6cea240e54aa3fee600c8c2f38bee721b0cd29023078ae2a43147b3540436350729e43bf1dfe7d95c33859f1508bb0b41469172171c7e1788b7f75bd141c60a445675e98af0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009d0952b1b6cfe49c25c0b581e6618b8296af620ed104099fd17899670d2d696d8aa1757129a60941d4e298a4a8eedaaf023100d9c02e48206cab409200fcb9fd62ef0b8807b46201c5bdec6974590c1011084d667188c7ab28b51af17ac1bfa130a8560302047c435bb50067306502307d1c72c75fde3286cfa678135a2f1c450238b9de1109889f6a846ac00e75e03f1886d7ef5a74fa2248c80911586788110231008adbbe880eaa6fd049743d6cc2819ed46af74d42f654221bcca76e4c70ccdf7372accb0bf7669716c31192ed2157aac90302047c435bb500673065023068fabf895b5dc2739d96b47828d29a8bb1c799f311d7c04a9a55cc9c4c5f78b3c1560b6d520779c6d26ccef08b160280023100d5d3d9baca0ed8a72984994ac67f13d9eff66310896d0dce509b01e9fc7a675e125f01526d1b695431c266c63e2e2cb20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a5e9781b4db93df97d8f59af6f5d5a3edeaf9eb7db8df702e628c3d98b4e3fb81d64535253d0ea5c906cce42259fd92502310092bab85c1aa11ed4f483e2188141966a12a85753a5f969c292fd27a22827ef4cfab2fd89703dfcbe7276b46b9a71398f0302047c435bb50067306502310093565c96307d81062c70c415b6049f2a05c0ab389bba1b398855aa894ddb6ae117a799eb30c642bf6140e587fad640160230208a1c2398fdf20fd8fc44b2436b73732b530b039e6180985a9bdade8cb2f769113420f87ba587f4086c5b149e92bf9f0302047c435bb50066306402306d6fa0df9adc9196a1232fb6d09febb38d7a1371cabe40ef7bb579688a53461c677c63f4fdaee281c9fbf0c37b43cd4202307bcc2680bc453a9bc078dfb694394e8b7390141fd38398967eadd9570d1f022d012adcacb00aad2befffbb04a97103340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230658023912e21bd76ee4818b53a80b6e80f02f6c30661370a349f8c9d46ce7bb87f91d8139ab44a61d2ad07d76a6bab89023100b6c6a4332e2bd061c2238a04ab5feb423014134c4c9e8d9844267d9a4ff568790e624575d96aad1a0f083c4e3c7f6ef50302047c435bb500673065023100c11e82c16da35825a9a675c42fcb38de8abbbf1447a6f9f765993bfa0716975e4afccb23f014c9f9d4be80bd9718f75e0230555d2e02bcfe42373b01f73ca0cb89b00cc803530353f212c50e146cc98c9f4a8e5c8e1f6396ff07c1ccc025cfd59d030302047c435bb500683066023100c3232fcc422e055492bf727468c7fe874ceebfd54cad60fb973e9f32cfd50371323ef11de1d8974a20d634ca308bccc0023100bb4f8bc4b8ad4642b400d9df56b413b759295bba02353a261c5eeb31d4dcfc52ab54d5bb6c8cbeddd7fb99143460efc80302047c435bb500673065023100f344711605496a658dd37144be8f9a7dcc99d804c3639d55eed7d7a716955e9617eeb827da1b8837a283c6ff99674f2d023027bd0141c9e5e813206f98fc8c30962fd8ab6624054e74dc4858b9a8095d8f4dfa9655f0f7aed5bb344856c3d6298e3d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230455603a921fbd7c5a9d1f65289e3a1213b5a16c02309e8570b11458f95908c4d72a8be64df65bb4b7e54b49ab501aad802305c84040a427cc9b5d7e1dd6cc9110706c6cdfb39bfeaf35744f36cf31437310af6ed1365647ce15842935725b1824dfd0302047c435bb50067306502306e8631eff9d41f32610d77b961d8ffc006b241b9600e1c87b063b165f5dfd935f46b5dcd9490cf102a2c94cb98170cfd023100ffd37f399b68644822918fbd06affcaaf5e084900173b830a015d8d2474bf95e4c09f4c76bc35c42ef0e19196f52d97e0302047c435bb50067306502304f80ae31b3cd62354fbbc721dfe7f4c33b63afd8595b6c49bd65f701db8dce878119201da5f474fa17bdd092e0fbbd69023100c05ff68883d5d25054db56e0145767844f46f28774e2c86e741633933c049a156d672e7df695e4cb09288381d2439e8b0302047c435bb500673065023025e321b0b0aaeea2db3b83653ce67a60c626f1a1c949545dfc3f5b3f72bf7b1388ca0f850aefae4d5885678bc8cf60d4023100e3b40fc69c2945e356260b302a3b8bf9e9842a39e266760eea0818e10e2793f1113214cbf56947d05a2545ab7ebf8d850302047c435bb5006730650230041128a7b70131336448628936f5cc4c86657de7a0d3335a9da700e04a8e674f07e76957d3dea86d69887495c8549b760231009a4896873155e10ce7a5689487ff400233952cd6b65213dfe03af7725c22c52b8c3f430b6420e6033a6552b8fa3e7d990302047c435bb500663064023050f2bcd8436d2558d57bac11e0720bfd89958c57a384db8ebb07e6e12d372c0966354c7af60ba7f9a77e84359b0ad5b40230257703aca6e1f9063c000e53af525b31193fac0274173cdf7f3032310a8b2a50f2cede7e7c27d843fb897850e8c97bb40302047c435bb50067306502304bbd57ef8415c2351426b1cf69eb0db2446e86b7696e0db42b2c21d66a4c52e16f0c21357556c9289144f73ba352b8f1023100d98974e56f8acf589913c57027f76d520c9f8d2e4f42c5710743e24ca8fdd77250745fb7532397fc942488e200b435d10302047c435bb500683066023100a2b56e32166d60e8af8d4a5c62af3d7e3bc944f36ac85fb92461369566632f10f42db772df448690139f1a0959962e9a023100d723a68d0dcbd512a2879570b0b92293846e8f8a6611b49e2c3435decf894720eb9b9cacd6e6a44b6bdc791103a147ef0302047c435bb50066306402303b17bdbd4a2c8b90f32f29a1f5ea1213f598da96e07d79a48422779849da3bbb3a85b0a593f580397981f7691ac7b09102306a5a91a0b8e897edf1d8d68a0b6a7aa4f3c9d58e0a40e7c4c1d9b7624502a8970ef3df8635203d7a4fb7556520b4e8940302047c435bb500673065023100db74065d8c1815c60e282cf1b6a38e7cf1de81f556477d333f171660ede024a76684a383a06de2188fc332c59e2de5d9023039d24450073ee72a65eff58ff9f5d29f9cd9aaa8651c6d43a74eb1ec57b72901d64150e5f248a5dc31030bf56a851e840302047c435bb500683066023100dc6752c3927620df47a50b068ee22ed0840f7bae2139b628e5374a923493c2a8f8de13a474ef8b2e4d236ea25cc7d261023100b749fc2b0a25ca5fe62bd1bd47b25554b14fa7f384a60a3d8608ca16b9f0aecd1be156aa9754d229264290726dfc1d5e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307a773005ae38af90f063d1dd536cdbcfab3e177790f217a4c0e9a0acebebdeb0dc1a7351a5637992e5bd8955bc1cfc9602300fe1eff1c6931fafc08e8ee3e2ea13dab9666059f730c7910f4f027857cb0790ed403e1d8c1c287813c12e9b092a9b910302047c435bb5006730650230051afb54c0a5ce2778b34f29ec6bcaaf130c1ae9dc1aa76638403774d6fab449267f5e2a08fadf2a5ba4ccc87f6ac7e5023100847d574bdab5d79abb5d4cf7be5a332a328310062d93c153859e68abcdad7153b1a157e75a452b88d0dfc9de8750603e0302047c435bb50066306402300a9fbed104af687d9955b22d6467b260cee8dd23ab65ebdab512853fd2d61dc37ce51badb517de14da4d88b8c5ffea7a02307bed5cdf00d486fec3f083caecc1b42650a4111f373e099d7ea697940a71823a67bbb4347ff170d3ccc3e834272226820302047c435bb500673065023100e2c9e3bebbb62925b39c3b7a59b7b7155de8aa8f99a460f221ddbdff5d1f7bdd3f4724da1ab0083d663e975523c204320230109c26cbf27f5b1fbee5743d62cd0e015b21af9cda79c49f94c6ce6d244d1d2750ae8e0c576f300f99073b997664541e0302047c435bb500683066023100f1af905cb75eee4768298a2a93950e03b52f1a3354f6fe1a3b155d34ea218731a4a43e3c6b60e51267cc2d56fbe1e258023100fac7245d092cebeb24953bda53863a913c8ee3352ea486b92a7eaf842f972173b60c6c1a4b5df60b906e1fbb7df267520302047c435bb50067306502306cf151726e03f42f6e9f58df2b898cada0435229af2cb2caa071279c0fde32b1d9e8c48ced2db4a07e9c098e8d114d0d023100ce6df97e7d07159827833f9c85203ce9592c1780cf45d58ef0fc094c212a3a0439b8c129b4f8fd3d450c273bec4468a10302047c435bb5006730650230487d92989f8b0653916a8a54a299ee2af24bae5d595f750acf5655abe71c7fe8b24640aff4863927310a298f386c4345023100cb77eb3d966e02a0e29ca988616bd14677788a67ded8052836ef5b2012bca25ff1e6997c78043e89b7b23b56e9fe4e3e0302047c435bb500673065023100d02482e31ddef0c65c7c6696c06d8c4941d460614e89a4e4e4ce785c409ced4bb3c183c925e1a3b426cf4398aef4c4df02305590a4fa94354bbb7593772c9d72aec4caec3ce1583c4779ac411d8b48df02a4a9263d0f6589f8c06714dcaaa8c13c630302047c435bb500663064023055f7bf5ee90cd96f1f7c1a695ee4deed76fa467c407e3a4a0893d71ae67195156ab3096b34a895626f87606c1b1d233c023079f9c0bfa80a0866a24243b2833dbdac1e7397cff8e1393f3977a90c810d9dd64e98ba5d9ce8a32109c365df37dcfa4a0302047c435bb50067306502306e47bf32927ea0b47c987be746e10d9a72a845710a4cd6a30dddb9367d7821818bcba6d84b8ef2a55d614c170e2308a8023100ff4e4e811d074793ba1bee147197ee56c3d50a399bb596cfe7b140ab3b1fdf1401136afb2838dff2176020ca935fc1e30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a7a6f617429c0413b7ff1ecd42a2ba871fcfca7d9f726eefb66d1065d3fd33fb329613fa77e1bc2b53487b45f830ca11023040edfa58d01a7c3658ab1a8e5cf2c59b4f0e2398e0354e4ad1b2d43eeb1c5eedc6afd4c9363005bf305e21ca453636270302047c435bb500673065023100c51cbeee4cce5f6b9b21d4afceb61c730b12c207367ef92a738f2eccfb1f0ce3605997800ae662dcbc27ca712c1fbb5402305166a0f4c0a9ea69070cc8563541d6fd42812f13456d5578a5c06526e8bec83e8a4f483ee7480f1ceebc0bba6a5e31ae0302047c435bb50068306602310082e7fb61ae3be4c189b4a9aff6e2005bdb600057f6a5a8780eb4b82a3b2be1556ac88d10bfd7c433434f7f0176d3b78b023100a54e0eb0dc687ec9cab124c697f9e1f46e5e67467cce5267abe12b17431e755264e78e26e19e720f0fa66eb482f1ff310302047c435bb500673065023022b4d8edc9f697f42005491c73205456dfda1cb5b9e20da6ac9d945a347de0bf3420635746e288c6715520ac92014e1a023100c2b53e92bc690b80629ef8c3b5bc6321627d81c053042f6368bc9c3985419a76ab364f28f4dd94a3282b17b4c0fdc76e0302047c435bb50066306402304ea12d817ee495b39e6962f0e1b330746046d9884f277df0a831665c657e392effbc8e44ad57966ce5f279db2823d423023035a38e2a16c63325e7a3800a0684241d196971bd173f1bbf812fd88b9088b8bfb577322004ebd12f77e2c8b83e8e06760302047c435bb500673065023100ae006dd82f4e71e7e5b5b0221e704bfa51b29f928a7f0a9c12c8f77bcb5b5f2a62d1d87449d478062c53c6de21abda1202300fc70eede48cf2b4a3c57cb9f3e258feb9ee8f26fcea9951c62a1eb45f9d992d339f1d87dba9b449043b2f9da3d555520302047c435bb50066306402302d48609b47bd0d909c553a84f07256609c0ffed28641194e355b88183413dc5dd2c792a2af24ed2deeec479a0a29bbaf02304534b31db6f7ee1a53de2fc8866b1577abd3325b51716ebdd96ab26f11541d73b802b9f06889cdd68fa6c34bdfdc85bc0302047c435bb500673065023100e9efc701016f6b45bbfece30cc01a9dacefd2b551eed4605863832420ed5e00795b46d137d18ef2e8579ea7c1ea78d8b02301760f2999edfee704fc2a4301909e1bf2ae63f8803474872d0258a103153c46ebd57e19237bd7f7e87fe5c3a14a181030302047c435bb500663064023034d21a37affad68268b9a9e224001123926b93a825ade9a20f908a8de5206f85b6a09a64113a4fc5ca16c4309a405513023039e2212c7720e461711c0ed330fc3beba187402f186f0588975d7df2222283fe57ae9cbaf72930ec4feb17feb9a2e9dc0302047c435bb500673065023071404deb6589062b1abb01d7311ac9fd59d4ae3b8473c1a1d4b39066a68cc771d5913bea021586296153fd9d4bd3f5f3023100f520fcd4eeb184db9037988ce1695e60167fc8b6ea74f033a2c2d919d8f5417b59ee70550613b05d4c33cb73d86a89520302047c435bb50068306602310086d43b82c4fea99c6aafd23090891411bd5017af6b151ab06947f30af1afed6447a92249cddfb2780eafe462139adb46023100f0802ab6309916436390570f7e68afbea246af5816a2fba50c4eacff0aa88be84e8bb6f2702391a8c8c11f5ead7204800302047c435bb500673065023100a4cb10c4479a0a8f60ef7ce99314499285ba0efe711f583fd7299ebc6d0819f16bf67d0a27169f1dc82a34da017931f2023079afe47266611dbdd20b79f042f6433ee6e0a975760afbbb0ce3d2a4f2e16b9643c71e45717f793c537ca54e5745a6e10302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb50066306402305ae0491660ae99e14d585325131b54c402793ce9334cd8d31227e129530791dee3e3c515a0923f0bcc5315cdaa90554a023062d7d47f02f56262e4d5549a7482b3fb2a84ede68b45a3671eb267b555770f78f5b0d1428dfe169f66d6a0e2bb1d0d980302047c435bb50066306402300e5b649536c59cb625730808ea51edd6f3c4db1eeed2fb0a6b2a45a9cc6efd13caa8fdf4b99f638d19311a9d750ac2dc023056543b6190c089d854cc3d042bbfbda1173432fafd9007c9eb454cbe76a81d8a8848c43c9aca2e79a1ccc0947a21702e0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500673065023100fa4fd6427ccae8c72950d01a3a4bbfed8f6feddd17535ca38e74bd8286993ac1712b61df8e15619b2cb4606b188a47b5023032a8ddcd56c08309023caea8e97a34458f52986ea479b013261ace5ff93c73d5948cb37a51778d5b0ccb9ff0a0d1a8520302047c435bb5006730650231008022c3d3007a6103f0d439f999fc26bd89565a1ba6cc3b0edb9129584a52207c31fd7b50078016a3ab31163dc59ed88b023074b0c39f3e7ae847ac8106a5c385f8168c25faa946909666b7983a4c23bdbb0429b6c9b55ca9a849d6286b1d1a92cfbb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f31ceced4fb7d77403cf8c5b4561ad39061b3cab6b6cc968fe51e947db6952f42219f0f175a70b571bca2cf35b69f77f023100fbf4ab249b8e5505c5462f54048e1705521951460a0f8529d5d4d1ae6c8cd8b72ec8d18756acf22607234eec8ce6e6b90302047c435bb5006730650231008e24f53def2adb642533f56c857369f743f051dde8b388cd0ec5bd5810152eb84be63e0b8636e2615539c8c5d481c57302300ffb24d046797f7035f97533ca0e5595817a40be9cbb1919a6086775528515126e32f1bc5a7a7261bf9c6325af39469b0302047c435bb500673065023100ea0c5cd98fa75d92664f7dd70860ac319ba890c5696e3ac292a0f0c34a9e8ad59cc05b1d9d498c077710f44cc67214ff02300fde979c643d924d41d992e0a03ae1068987bdd7d576a7f586fbdf08c234b4217bf127426d4f483dc8fba126b147d3cd0302047c435bb500673065023100a698590f9d60cd02e051717f81ff3b31b091226d44666dd62efc6607c9abb858ef09f98dc6726a2f42e73fced2cccafb0230017859eb851b1efdd5f7440f80f799f356dd260e948dfe5e3a6639f503ddb61831c1cf2f9251149c575dd63eb59f16ff0302047c435bb50067306502301fd50b5620b3e1e8050cb032c62c6086b094245fa72bee05308fe22e3fbeefbacbba489287985f906a1d35bc878cf9420231008ab7c5e182f0fa6dc254b739d1e61a1e3daadbfad20b27b1ba91e105602cc4523c82030c71a21ae98a9770e7e0c845a80302047c435bb500683066023100bcf638109179b941ad79d67305e746c39dbc621b105124880eb7b98726a37137480e873c49900733e92c53825c298a31023100fd611df161cdb3afb89564c599a1cf823633ea3e4ad581e2defe6de516ac03263c9aa6988145d86197453a98a395f6bb0302047c435bb5006630640230118850ad48441241801988612f5426974fefb00ceeb79ae882662c8ccaee47a45c2cc9d2f82e1656e26e8a8d60107c860230762862b698b720eeda7db55ef6013da9657c1147e2aebeab2d29b364b1a867fa86431e43e83968b042b3a25e67d48b480302047c435bb5006630640230039bded12f8b8590e955b8b8154bb13a002290f0755ea053c80a7db58346fb7dfea8f611d08eb68647d6d40107256fa1023006441f3ea2af129546034485cea1383978e53a99f4a6c9cc7bf29412abc9da939c01936bb074154124a9675c103b5cb30302047c435bb500673065023100c992191c93e56aa9bd4b7bdd17de42400192fc0b9b4a0cf981f4b0a054aec5ebdab6f58bfbb2fd54d25d42e96a2af6ee023046884fc012759e465c745fd4379fdb8e9c2b907b90b3d817fbba3dd1bbe9eaab3d0edacebc5452d54ca73a0733d263c80302047c435bb500673065023060e3c6b893cc9057500ae6e179ecb39cb05d82907394f3f2b42e118d73a96682b37e159d59fb132b5b9b4accb9e86125023100c4d5a79cd51041d9206b10084b7a16f13167ef43433bbd0523f325a810a174d9abec4ce92db6aaa14a50e03c961fb4660302047c435bb500683066023100d8a83de3ea10d4fa01ffba8f2b1cba836d1bb794ba4958d17c70e960c038682db4e50f46475dbfb5888e5ff6f78ef3bb023100eaea08ed439ae419eab47ecb5ab8934b2bae09869769298708ec095e62d154c45931c39e0d5da598e5b0d27a86eaf9160302047c435bb5006630640230124ecabbb598650fbf42f9964093b6d7d894dba3c8329645b01472c03fd705514b944ff4c8b79bbfb5f2975ebffd152d0230067c900a95b7abf40354cf0a616aeb0f4a76b3116c418afe6899ffd1829945e3389bff925bb2dbae1501c64a43f1b8a10302047c435bb500673065023100ead8d642add685a2544026db94f58ef9e15c8f8ba97a99f6ce863595f29315c62ce737c1b25d300ef21213f92c705da1023034f6f9390597890df9de7d84c1c5f82b8a156c1dd26743ba3298751e73a7d4da41e0f666fd0402ad234b44fde381d5ab0302047c435bb500673065023100b358d834ce46950d4dd6b5032a14ea38145083c7fac5891a9c2732b931eda22067f801ed8e5b1c28aca1b02746b0ca9a023020639dd7d547507c121914fa6db3b75928af0aeb497e3d704ce79c612b6b3436c005f38fbdda6222cf53e6c03d1a216f0302047c435bb500673065023100e8224f857467a2509683ed75d32a26ebe1febc9e4cb5122e2652737b0dcdebed0a728dfa3ffa8d277e9ea4a17652cea702302ddad09fb3f183e004ab3477be785c1c9e5c55d5283359ae4b41d9c3b833899c2803f54e91446e6952d16122c1010b740302047c435bb5006730650230246b8fcd4dec0fb9925ac727390b9a5ae0c6faf141b35e3e304b4ddcf59b331d68a120e782602b93bbadf38852794f42023100a9290dc94e6936679e524c52c486a324952c44e57a63ac2143aeec9ef40c570c905949a06e7f5dfeeab6c9f1103013720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023044667188a947778f816ac51336e55708bfed60f170f4dba4ff4601436a53deae4afcd693660568ba64bfa6a3fb4bb73b0230542558b2a32a14f9fd36cccd5ea3984921f272b06c64db886aacac789e03a48a118b4e8b0e61ab276436e3d441ae82290302047c435bb5006830660231009a959394866cf1cd9ccf4c9ee50433b1ec70353a88cf9c27ad99af89a5e33b8366f27b39214a39324d6ca582c9344258023100eadd1586f59a9a35c72b1a121b989e76a2687325459730f2d62b85804f6043b5c38cada46daf3f31d9997a18e18605270302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ce4c09d71278dc96d117f44ac809bed3d63504b01c1757f19a67f92c4f7d4a95bb7295860928420b1a0cab782bac94c6023053e2178db76c1f95197b28e6cb90e6926cda35571d13d4d4d94399a8dac39e0e1f5b7618a7f03e715a4f5318c576653d0302047c435bb500683066023100e236b39632131f527d99e70d47e58ce4b91615864d583e1e2be6b3912f619490e0b8eb907811167a71c0e983622aaa64023100a5807b69c1eb80645951665ae310d9ae1b9f2287844fe0a91fced014ca02c881ecb9c97bd97a866a81743d42da2a247b0302047c435bb500683066023100a3871ecae2cd7d606865c585a1a3c20a937bbf07b249734f42af966e2223bc7fff4fe736da3382d0bdd9561a7b8b0cbf023100cdeb9d850c2c04bee75e3723bc38ae4a6050f1b44b14aba0cfa163917dc76336e7f3aa17e7d303183a1e762baad7a5c40302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100f26c90b93228acd04893dd0e4457ed8612163cb5860741f4b6e5eb456090f4bd2687b115486fb61bd02d8a58c6b4d2e0023100f76bb21e00e59d5a872b4ae880ee691c84b0b80637284ac71039fbbb2c4aafea2bdac38dfb3cef0869eed9ac24f45f000302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230152c6018b57351612d0853abedcb3752467fd26fb43fc74cc59b653ce424fa35db21d17e05ebd57cd56c4c72c34b73d0023100cf35d951536d0d7d1150bf8ca67bbb3d4d4eb9456615dffe59473f6aebf42f804c179ecc828c05d6553ca11f0dfb224a0302047c435bb500673065023100f64412536c083f30f1a0bb54e023df127f5d9755f3441190cd01d1d1ad1f277cefc5cdda0913579a056cb300e0aff43c02305f7cbd34cdf9534001a48825310c83cb026cf43934405a7577d1c3881145ef83d14c2cb71a6a7b2087de1a39f0ae9c2c0302047c435bb500673065023017043bea0841421667daad6c9df50df4a27e95122314f658470ee468e9ca1072dd6165c7231eadd625e46b5fdbd7c731023100c24e2e97fa9ea36cdf6d7a059c517ee4654ee0ce7ff34a236d0cd3b12928ef505931ce9a0b1c72a98f01b02d8b3c88d90302047c435bb500683066023100f364d385df72957c9299d59db5c3c3d1622280268b44e934d8127a9b35bd213ccd7e54a1f202c511bd6ecf47c4a4ca48023100b9a868c21b0c1b3c0cfcf5b8ec6057536eaa9ac6d1d362d3f5bf6cdb2f9b1cb2f2557bb2171b827039f0e4b22848a35f0302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500683066023100cad34c92db0fb56782721a63a4cbac20a1415a76742529dcaf4dfb349bf36228b1a6c4bb12af9fa88edb4372c5d07c530231008613fedb07dcb54a7b62d83a425fe338c3ce378798d2cc9009f18dced3dc1d101eda577b18074b809ab1dec9d12a6f790302047c435bb500673065023025b3aaf2d9af2f09e8813a1a298823834c73797cefbea6bac3058f9db16d82983e07ba1b29d5ca67a1159b9a1932e1a6023100c7be5ce04759cee08d328b12d3e9fc8b2e3ac58316ba17fddb7b0681c960efe2b8077bdb8dd0048b01a74615c674f32a0302047c435bb50067306502305cd1e4b6ad1ca8328727fdee4893f90446820d791fdfa77c8c274a68aa1fcb54c2559e6f8b5dc0e71c8981eaad6510060231009b4e76020fb3af9a4f21798933be6c9249baccc1cb4e9ecc56872ae7b1e1cdc1f5119b8b0e6d319bfc7bb3ffecc254e10302047c435bb500663064023058d4e3dcb8c2fe71ab4729fe13a61440fe164037e1a9be39b13913184d5bca24a9b0d3be0fd11209b272c30bcaa14030023046ff8c76eef97d61abb4476e1b3655ffecd05db0608e6d8ea64acfd774a98c14eb278d67f444bcd00056fe28d3c257550302047c435bb500663064023053ac7c5d81af4fbde086f69078cfeea45eadf65c6186be803641796583affceb84ad1934406989aa620e85e85d87d00f02300d1841d775333753102597c71de5ead532005a01ef5b5c5d21720b600cc0c974d4addbdefc4ca43f6c03c36983dccc760302047c435bb500663064023065e4f92ef4b2d9a41792b8f1e22337d253669139c94f24def16481cfdeca4b3216a21445b62f222fbb2ab902013a386c023061d9e8c2c0fbf814ba11eeafaad08eff7a7099d612c634c25c92d306347e43968fe1aa97fd4c729702fc40f50bf1fd9b0302047c435bb50066306402302d606a729335f252f87c3a89e430f2c941a68c3c24fecb4f33b72bd867b2916c2ac5ae1b0d72ca058ad0924d769978470230646e4ace3faf35f6f59db108c9b976605d728005d86079653d17d9a35f7d272ef191f0bfeb174685a2fe3d91894c17f40302047c435bb5006730650231008d7df62d63869529e76008d7a2ec0cb2abf8dfdd00ae9b82c5dd06a9eb852b2851256100094c614a04f8ecbbb0a3b4a7023039ba251192b3af9d910654a397ffac53d96345e7edfb30b708c5fa71792af62da8c8004d5d2f78987e6030d0c56385620302047c435bb50067306502301dafe066a3e12f280004f24f92605d21d1c18f82b8968fb543db054a73aabef5ef5c6e5afefcee94f99ca3abc8b9b0a1023100f1484be3194d24bb86df1f3bf2c950cf1b39872ee1d6e31e7154e430b3af41418781c414982963cf89334592c530a29f0302047c435bb500673065023038b755e683180911635493e69aafd8a1ba767d0d732488730332b6a833bcfc94a8164fc599c654385867569b5ad00ace023100eea6f1348ec0a2c891d4e7944dea61508490ab58864bb87444bf82e5dfcacf5da8c1f42b487876dea4f11a585ee8ba9e0302047c435bb500683066023100dd2db142ce4d9d974ed3e2e64ba9b4574c6d271e7dc1ca16279187cec73a95f197ca6d93a5c791ae3889afb0902627d80231008ee87101205c3a7bd2ee56e531f566bb2f1de386ee723549c2bea2b17df066cf032c1a436906aef7500daa0011e0eb170302047c435bb50067306502301a71309b4abed50412db5da2aa9b1c6f252be913873f2e1bba4af4c00280b6af98903efb3199fd4e1a6ad1a2ae9c021d023100aef47a4be24bde540c00e3a9325b1d0f97d7c56d6d95cb835fa53642e5312f90e4b7b403abfb2faed5508d16c64b6a630302047c435bb5006730650230561bd4109ce45c5c1609b3b54d5f9c2511650dcc88c42d20899fac9cc5e4df23b5d86101a09c0a1674e92fc658b01945023100e99fe9bf832f7b0e571ce55f97bae3df010b9ccf6906077140126ea569340aa70c124477773f1927318dd5de3adc5d5d0302047c435bb500673065023053fd8160ea7273815c5c6d2e87897f05bbbf8adf4e2b4d74dfdaa531eeb7b5badeb177476f804ec8f241ce73e33e0556023100eafc682ffc7511c3028ee6ba4b5d052bc440b257c2ac985fc1072cd312b08bdfbe289958d045e6088fd4806c431475fc0302047c435bb500663064023000a7cf347067262db79348dc9438f60c1216871c33a91913eb5cd33ed56ab0213816c86bedbceaf2178a5caf467227d202304fd680dbde21e076ac545eaf5d72d6cc54c5f12faa52727f7af69c3277b30b6c974cc3934b946a83b121c16e93021bf10302047c435bb500683066023100eedfb0f1e6becec81176bf40d8cb31668d2048ca1c26ee906595a3bfcc62829125a3b90c39aa553e7266114932d20e6c023100c6712e72d8e0457209c2f1b5d745e0d19d7097b76dc79b7c9150c95eacb6c9ecd92da47e8c9387cbbf9c9652e928504f0302047c435bb500673065023057cadd33a809c2dd7314f52fa7369e147b8e5b91a6acc2b5aae46be59592f4cb20bfb1a902b336a60e1e8471461b5f87023100daa7712d40ba39c674fdbb671df016547bc84c985c2b885f581bbcaa86185cadcf17e650fa476f1fad464349658f4db50302047c435bb500683066023100e7110e2a3d9ac6e8ecab89440d416bd1aec10ea212e0e75ee8f05c881ea5bc63f97a699af959c8acfa65fe7a6e003e1a023100ac7b03e7ca0c761a8ba284c57e6f86650d6d285579bef804332db420c8dfbf8612f34f930205dd9ae4f20254b87811d00302047c435bb50067306502301e0ea763e313de2877d148127722b038a7db7d08773c90feb47405d778c42b36163a507b6c74f1d968f6cb8ce8695ea3023100cf34c2f217568d71b18b05d19a205084f5109d27594e9d1f72928a1f95140bcdedd7949262f9d00ba490262426ba70570302047c435bb50068306602310093f2b9fd63d2edf5748fb80e87ccd572d4565116138ef4d0e4466445457513f1e3c324497d0d6aba8980de9e159ebe420231009cf9451931a9337edcacbcdfdb8f4304535d833094df592e8799b7620b577500a5ed8240184ad0aade0776fc932066320302047c435bb500683066023100c04f6fc8a31a1c4ffe79ff1d5c00bb4690904a3b533903548bbe094c1c935b53a6bf40daf8d56024e48e46f22ff581e30231009a0f13e144b86affe19f49db15d74968b4666c410de3a72ffc8747384ad4604d49ab4a3e4757d6faf2d3ef96f231415a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e65eaf91cf2fabe1130a560209b368d81dd66bf656debd51169d537238662a5fb37bfc90945febd8004636ddded9d57a023071b68b5135bdbdda575e7e26ba57240ac8b8949891809849a0724660c7b0c3229a594429f63021fa578291c3d822669f0302047c435bb50067306502300e25b80e0d514a70797fd04fa66d1db1ee034ab12d9c958bab1e24ee117cdffc2e0589c053f3a82e362e61c14d049eb4023100c1f7d60d530ea642033201161a0d27a2f7ce936c56a1220e828a5846f9f034401366bb8175bf08519670b2e7ff10878f0302047c435bb50067306502303fad04ade6901f82d7d8611541e97b28ba5a093922734d1f82ccd943ab2a0daba3ad0595c9b203ca02f2ac38c252e916023100f73042333cf1075e9ace0374899ca2cae9e62e5e71ad74c5aad0ba12c7b20c9eb58e53d794bbf85fe2187a472c9e994b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023045c7bc08ad2b13a68bbd6d0a0f24715e4d0a90f50e837eac70d2cbf9d5decf0071e445e31409b35218aa4d2bad458ef902305fafebb9c2420d3f1cb47b94287172bb4e93fa65089089a77c4d19eb6c7e2bea440924add0d71a36f344cbd0cb406b280302047c435bb500673065023100bdc23680e4c4c1e1eb496b680040a254ba2b06b9e3230852afca347c68e3a20eacc562b02061b45e1700e011611b6ab5023023d29e2468137c18ea5b4f09f64c8cd3cc8b46b4387390c478142dcb7bb4b6b995e639db30604b2cad0114ec9e419fba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009925112f2b19482d5fb9d247ca25e39457d90a32ef58441cbc187483aa256a4703a54df18813d8c19990289c229f426d0231009b12b3769c5fab5375f2737f5a56348379a3461217d21f9f28c402951099bd12c8f06888b25d558950d6bd8918f80f570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a31eb47ab38a39c65be5540cdd256859fb05a152ffa00627dbf626931e63f1074b61e31b33d80c879da868a1c2655044023100885a3c7279b2aea3e1d8b7bf4d1a1f1abf16b74fb5b369300ace98dd76b673b9b1088eb7f8a3577548a40ef18ae5969d0302047c435bb50067306502310089d76c9e365d490739eb21771c10403e997131be47586335d001b8b45db75373888bf2fb17441d8e022507db1aa4fb86023058d8a35f2168545e232d306145e27ae99fd9031a30d0d95a2ec9f463063f53b296fa85cbe7004cb352fe34b8d28144340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a5833dd0a697ff1905b033f191f4034b880fbe049f5350f7967347a89cd414cb92de486fd3439e53cbeafeb9549cdcd4023077b4220fa76bc86c2251b2ecf3396f23e9a82b9c9a622a4e1a6a767b490688188cec345f47374ba815dc5b2fe612f19a0302047c435bb50067306502305c99d31e7fb469546662d38009c1b5e3b285997a642bf593ae39f267316fd62a5d99ee7ce7d2c4b4ecd97e6a17a02097023100c7df014202211c1e0f9ea9ba1e8419146b32fe19889c6dad2998116169a9e944691f7544de98651ed3f802f1638199bd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100909270b66089d970bb522addeb095676e67a554feb538bed83b16ba5df076aa08ce0f3d3323000c1ce44498b0b53a6b80230019372353b7bbab81a2d855b1764d48fcf8f640991c9f3add32e2e8ab62f5b94509f77d288be30242274c97160e889050302047c435bb500673065023042ec321c357a9669d0cc8fa079c86e46bb907aa43b6b653cd359593d167ca20d5a92c45456df4badd92036294ad5c22a0231009520f3b6c9fa16a1352fefc9efa1d1c73284fa4c610108fc70cdac3ab9b184294846f593c86bdf0619a5d446f367dd440302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a830d074f9d46bee3def72cc5e1eb95ad742295dcd60b79a4f4c973a328da098b4dade37b851bf4a395c02cd13666fd00231009400d39ff036ef4ccc741b2126cd7351b8df21f605c51182355c98afc5f14b47f29298e909099a50b7937f823b01a3190302047c435bb500673065023100b39469bfffa8c6418058a9f2a1f7d58a1b51fc39a8ca32e994cc7dd6d45ba6859aadc88c8c29e5fae441c0bad80031e902302c2f08143f4e89071e985f04f6c0f89b8f2cc586d7c82c786d3ebe65c7a1f78e7084cb4a77c653f62bd8c3d2c1d6a8a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300e64367e43f969f299c0fa17966eb5edc2b9fe823a5fc04bcb9b375cf5ecb6341ed586fa03cc90de696137ca4af25f260231009bc36cf62d62705d1ea1f74b902991777c7859c4efecd201308d8c0976f0a15412d6b087fed537e1ea60fb73ce63ea800302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304a3d81697a040fe2e5365cbfefb40221672404b92172cd692724818246406ebba3ef58f196ac17001d03e19d166c01e4023009c9f58ddc0ec18f36303c505458d16fc69dda88d0af4fdc1f8fcbb2374f978d89f0b4674e93a016ce24971525fc21530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ddb3a847ea3629cc86814b34abb5c13b31d21f3a1f55119131ec5776ddae97e518074de7f08ef05c96b1542065a72ecb02300bf8298410147b1faa054a4f1498cb0b24e8681e087b8b93488815ffe8cf1f641fbd7637304f50b0ec6ac0165e6fcd1a0302047c435bb500683066023100b2a7c058f03f768273453ad58533c92a577f074e5f8a5eb62cbfc592ada94faecf2cc7055dffdb76cae89968a259e5a00231008a82e25e04fff282186e8d9ed54079f5c53144b327a680efa3ee609e436722d92e839cd1bed2026ef5097db0b84c420c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100e1679833e62b007840782941bc58816553ea97ab72b4299b353abf8904843bb55bbfe04ecf37d39e6a7d1066a93f48e3023100d2334df4508e92ad1ad8a70ab30bec354345f7a6dc4d073413934af847e54e72aa9fef50418da69530441c7d9e89173c0302047c435bb50066306402301e9962ad6b363e5d1c5f3afdd0f2ddc165a6b275271e8c8ab4bc0f8f203a0244c40f2fa407a762b8512f0956edc5677f02306e36fb5ad5f82f453e2aed1df7246ed863cc1fee6ecf77be96ba0a393a35edd48f19ff9ef478c35af9c07a83b5dbd0340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c67b33178ce867c11fab5d9fc5ea0036a2921fc56462ad0d7f1615af587ec743719318628c48fb23264dec9209fa2d9702310095edc4dc74bd80c11fa764eb282a0a82db5a4dee3145a9e87f113f3167b4d70e4b89e8a54c6139c0feed64fa9237c5010302047c435bb50066306402303ce8975861561b349bb5257ff3a28a68b5037fb66635003d5ffbeae8a7ddc01fbcf101df296410e29f34fe309b220614023071af7ed62e14fbcd22e49e70afe1861333c62ec8d7239aae1f233622e5e99df062cbaf1a1107df520a6071ea6d8aef4c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f8833ba098948563481ab51dc98927b116ef23015873624979da209a7760efe5669f97ef095b588308102ccb5bc87ffa02307eb98b0435e1f78cd2133dfe08764910285d8c171856a14f218731a3aae79e789b4805b17231fa64951dc87a005d58540302047c435bb500673065023100e7518aad11569d8a30e1e93e08a5a3003d53f2806cfbfa1b9188c3a44973fad193a43d693b3e41c8653d7e90d7bb5bc202305fb8fcd401fc41db12a8936f452f6c651abdc59f21db804000f552d4c637bca3ef7b063dfff645e4eb851c7b4be6965f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303b098d40bed71dac4b2647deafeb210da3bd91262452b6333c4baf884b27984b551d50f713e364e2ef5e7d2adf5ff21d023100d668ef44289d3836bd799267880392f4a92a39bef832e21df1f24bd36fedcb8e86721e4dab283c639ae42797892e323e0302047c435bb500673065023100c93e67fcd3a4f4e49a9d3142a2750fe48b1f5c8ea43d9a9e58e17b9988c9bbf907294db90abc189b4c715b66fa583c8a0230353b1797d867877315cab4d6fa2b46c71ec825d3b9df26699def9277dc227f0a6cad2cf23a50c34c11aa80a52f1d6f280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307194be8868135e5ac25a667a75afd4fdb5d098100337b95cd2ccadeb258964bc29ce6b6988ebe6796349bf16e530a65f023100ea582ab46eadfc057ab5a3d5951e56c7b93c84934ae2714d68370cc55f41b51188f1b1d1f871746bad218545aff90e2c0302047c435bb5006730650230320ecbcdabf06cbe1172b65d41da6df4ae0b2df530f7227c61544da12487bdbae360eb87986bbd9b236775c7b447d5e1023100e7e2428d5d56330991f046ae89e534298e3c1ce91de28ba21f3561917cde5dac7392c02be320b09372f53a1d4957127f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305b9e545d54dfe46ed1924b8dd9bb0e349886d84ac9ee328616cdbb942abed7bc26b88cadefff576297853fd403a1fff20230051363a78d81e320de20adeedcc98b4508c864fe81b484d6fd73a1c8f060fbe59fb4048ec1c0918e40346a8b6794146c0302047c435bb500663064023051d51a70d2166e8819026c05646218f0e03e7a42b763a2771a41f57456ca15487efd7ad604e11d7bdb0ae15d80325b46023068c45fc3c2f03f7d361174cebfd8fde60e4e4d2d22e2797edfa50dc46c8d0cb49461c45f117405f98be7ad984ec929410302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f6ceb04408852a561bfe0f9c117f8430bc21db1a18b80d773f0fbd0679a984a6f2fad1fcb951d15aee472245897850d702305c89830eb5186c6258e632cb65d8ecc45984948323d824e40bc411ebd61804edb814f5d9ddc3b65d98fb795d11ae745b0302047c435bb500673065023014c52fa9dd7e6fd2b51093f5624c62d0499065d9f22400627e269acae7eee3f87eadfc912abdada93b42c853bbd840eb023100ee32f7c3930a212e507cc7335b5f0de319bf89d8c65a880cb6713df0782773b118ac74e2b9908afe17d6660831bc69d40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023064c3e27e87fa4845a589009936f89af9c9f0ded6fd60142e613bbf49b23e5cca7ad27b196b14c5d55da9d4110ab08a88023100bf9a990f8957e5d2abe13557fb642cf172142c2301e369885eac816ed29387102e65f4f4b007eea2cdfb86f6643676500302047c435bb5006730650230148892f5b91e2febaaccecc6fc1ac1b74f497c087a19c7ec736c5349ea41406716f56234859b48f467191bad3c3f5806023100f7a0277c65a0882f69b53fdadb0844b2a2e3e7b3b94713372702ccb08abd8fda829383244d5c135f1209f0f3475a78b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304437da79b44aa906644e0adb06ac07bbb4da22f64200e70274dbcff64b890c64eb9313a12b851ab7ef172f188c1328fe02310091aea9bebcc7eb6fc12c10fbd9479cfb885a147af646c2357d36d26f1d73e370436a8a62d1b4d2b0a51dde26e63126950302047c435bb5006630640230732367d8bc7c6c08eb6fd4ff495403220807e485bc425d55a9c23c0dcffcda0c6f3a726c7505231c8cc1a9ec5a6b7db8023012e51c0d5284ed22b71314887ac20c8770341705740eeeb5c2d12559d0fb58a43d79097f1717dd649b87c1996bf485220302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a1571e4b94e4a1dd832b5c3a9b6922815efa1abdacbe274147d74ee20fab422a0a4cfed9c4773f545211ec29be1e1987023100904f333122e5e81b266bba83b485043f8973965b389109d046db3c3a0fab10504915932cf312fb0356edf3b20d0fcc580302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b5bcd9eee55721dad99705f5796e2080ff66aad7d986b8e3788739eb23d97e3612da6d0a4f96ca90f259f5bcd99ffda202305e78399342aec2d05a3be55038b1c91882559abbeaf7c59f27872d4a53ff14e0d86747ba97a8315d6e159c34cdfeb7a10302047c435bb500663064023100cce16394fbfd7cf85adf6ba8dbda0e1b232062b6bf89569c81a9a41bfd5c0fee902c387ccaad9b21a9446cf47b368009022f6c43d4540c891e9d9aaf13d34e1ab201d231601a076bcbefc5b88613a8cea1fcb78398c8dc49c759252e55e1ae0c820302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301893c168e9e5f8e97b2c8869d9768132c9b12d213e432db1f78e1ec4093c88fe7450b981d03f1ac534101f7c10dedad9023013dad897b09122e38551d29b098575eaf8c95264a44db359f7c4f109e7634bc68de29e22a42662dc85ae9a9088ae44b60302047c435bb50066306402300805322111dc5c49470e8e425621fc3e44b0656d521d56f5bbacbfe6890d8de6ab7a80eb3154a9b34403376d544eb14c0230799330c8f1c5d105bb398549d2f794996c1c4b78db9d6a9b5ed2e7d60940f2b7afe3a2706d44420ffb68a07cf93da9d60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023037888ea66571a1523d9f459cd3ba11ccf78dc65893367bcf71af05cc78021c24a9b836664f466c2dcb9586d35e6281f2023100f0aa5d9b8296839a4ae27134900bfa5bee076a48af606bebc541e040142cfe6d4710eeb9daa4941948b1d579530e49860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ede0c3ace087ec548a2aacc9d93624e95ac6b15086669dbca66de2d8c82268cae38299626b75bc1a86c07451357f72ec023100b971713ed93af6b2cf2bb1d6190c942d59e907fc01fdf8738ea97103310f1923b4653649637b0467c7d0485f90ad73ac0302047c435bb500673065023100fb3ca0f1f0e5c6bfee30030897e4d29a3c55cefeb115fe8c2fd0a906699f0a1ecce0f63dc81bafa771b3d98f0c52675c023050e478619e38b6c68d3042ebe91ae896e7ba677a9c8a11007591cc1a2c7b362f331da89971b9eb3857278888b2b9de850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cbf3692d9954d99db860f6d3a5095f257d8d0f084c8b08c3e8269484de17cc6e774f963bddb20cc89d33d1a542ff5d7702302101ad512d6150e3347f053f7234cc2f2e03dba8b3041acca6c64c4eebe483e292dff7db1c7870d1246553a0cbf3e1910302047c435bb500683066023100ed3fbd945545d1008ebc1fac36634ccb6364084b5e14979fcb82bc5815af69bc6da6cca343d8c7c3149488e8d975a076023100c73c1bb28bbfa4cb7750fee4550059293475e6fed201b6e4c253d2da4377ad51ec41ec5f10d7630477415c5e40326e8d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023032e4e267f8ffba60f2418a9c1d4cc063d66a1e63b9dd9d3cd6fb328639e1e4e6992e50200af5d5354d2ef3821f09a238023100b2a2b1f9249edf18c17e711349a9f1daa629d679df5a9e4797a94f410c43a61bf031b7a9fc88710015f294a15839a7240302047c435bb5006730650230475c64461611ab925e6b4cbd98a4d41302b8f534a737fd0acbd768da2a4ed52d6bc1e3b37e2534431d71634cac65312e023100ba11ba07a6728b08d98525b85220099db82e8b8ae24f7c6c9a6e31c662daf3ac328f618c74f8b65f43acc576bf9e03560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230759ee08cdb979ec86fb131873f6e26bad0c7ae15498aab0aa6dbe31bcf8a847015a8bfa4e32860b2bb4a58bd81df78a502303334c37df343d3437edd7a7e2a990b64c60bdf63d95b07e628479e8b98031f7bf1a7b70038ae5fa562d7ba647b24cd510302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fb8746a616fa966e7170b16abe9ffcd27febc6f18ea0d7033063c19d1f02c38560030d543832cac70ff8453e27587613023100b93870420e5cdac3da5ee9ecc84f302eefe98dc5720225800a5b33d66be4c058c572f4bee123e3b912d85b305b550f390302047c435bb500683066023100ca94607f1a400b1a333cc6e34299bcb24b52593e0cf580d9483d24e96be1125f85e3f203a941a69ea3a3235764e57c51023100c87b2cb0feee21690a42760d762b08c165ec77de3fb73c742ecd3eee582e599d3c9113bb977e57bbd711ed7dc078eb6b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023011766b751956a6eefc994e166f240e85c885f5ec0ad507c5f88c336cfce2bb580fcbf2293804de17a2d75097ee741f72023100ffc55e677d3f5d478bea582e7f8d17fdbaa4918517fda3b1a127043aad14240f62a4d729602d8aa3e1c5958ea6920d780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008e019c9074952e41d41b4887645fe98982f6d902c007f5da2537872289e3a6708626d10345da6ae793f3404630ef54cc023100bdd7806d945f95d6f8e8fccef1629a86d7f74774a7ecb26a531a8345786a66e709d4676c9522375adbf60e27e57545860302047c435bb500663064023044cb7d6f7cceaa0e099640835672f1c94b34a96396b50b4a54013fdc8b9f18c4c07913f7d2d77771c8c50cf2221139450230571cdc3b64425a62c4d5f1dde5143a91d6294fea68bc9e730dbbb15f78ba63a0f232bab9bcda39aa6d3db203ceda23190302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304e0ea9c63f6a8839e8f4fd50b4a262abb345686855c7e2cf60c4e151751acaab99a32b7ca92a810fa65792ac6321c3ab0231008ff81e1502f8d7df6c18da096e8e08843734ea27b611f4f1f7c3cde08436e1befe9e06e04564bffacfc1eff980cca83b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008f6d6153bca86fc1fc5202000e7a69a533b58eb646dded7a557f00d17088e4192cef8547994dca2d5f024e65262034e00230652561636b6f90f8826eb7c6129858ffffef67fea491ab3ff93f1dd16746525c2b60913b9fdd264175fb7043138bd2950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cc5e472b5e1c081f093c53b037719b01777a423aca034066d973a1e4f4727a0f7cc7469076c4107cfeb299a946144d1f02305c964654f3232907dee4117f0db0f916d7d9efb81f34d22d00cb9bb2b8b24062dfee5d950064aac3e30f9b59cba1f9f00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306c179fb14f48d5870d85f440eac998d9965862aba9b24b2a0a45cd2689739339130faaac0de7cb8b6402f2a6db025634023047d65db0e7d7cc892aff1869ef29ced17d799914b88c9e23ad9003dac9a165fd17a9086e41ed1adb01356419950ed5e80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304b4288ce99e335f9595959729c0f6f770964c44361936f777992bddf73cc1c81b2477cc722546d4ba8043ddd446f50840230195c8937da6622eea17c3e1ae1efe46a86c0833fe865fff24fa16862ba1adb53bc26418967e842f6a3c74175a548c25c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023075d9698f8c98fee173c288a8403d5ae5db47e942221e864f9ee5031d44a4ec36189e778d2e99cf7fb8bafcee97bc3bac02306f7016ad319b888f6bc8aa0932731eb37632ae1a3fc3fd79bc241ac023ac9792afcf126ed76159d3117032c26f7e73c10302047c435bb500673065023072a4169fc2021c147fef379d38e2918a448cb2177e406022b2e3e0192c2f13771b5e711a0bf44222f385469c017e0b98023100cc5f54e0bd04436910ad4f88192b1b3d01863cc680aaec2edb728286ac81da5bcce78833b9c09220beebb298c56a629e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306a49326c5847e63660a1ffb8966cf82a3a7e67bbecfff37cae320ed0fb9a172d341248af011cdbd6fe139c709bde71fd02301c73bd08bde18c4fcb2e34c2a9642d46b66ecd52ade1747bc692bc4d486d2a9b86f933c923c2521024ad7379b7a21c310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023059fc18a757935a3c25b95ccd6e736e30a6518ec615de19d850c97bc5919e1850687dced27aea0a4b0f512d52b0d2720c023100a2191c6b7e8e841fd4d60ef8a61eb7237468fbbf8a1089eeb86d4b9bac0e46c3d3968c109cfa1d5607004e5bb338c57b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307bd5b8c506651150a570b8b84271efff3b58176a31c6296e455040216633c7212050b7cb2be2ee04155dae5e48b3ecf602303d68ce6a6ac9c665defdcf903b88298e42f96574501bc99f9ad0b394ff28d2f3bad12c2b04c73a4ee3a080734e8291fd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300b084e0cc003acd0abbf991fe07733c4b917a74c43c899ac69c3631186ecc6b2fab1e4e3bcb9bd8f678d1b887e75a22c023020de8dcb4ff6ccaebac2c4ab4922d0983dc6e75d2154a7cd843ec77447adb1acaaf42fe0b32cf20a965dfcb72726ec660302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307c6a53999c3c423215e25b8ff34484c366a0e31a14965bc94612c13e9ba47bab0d84fd6cb0edb719f4b3830b125b97210231009c34cc4d09c27516ea83aa8e25f2761c689af7074970e735e43aa8a37343f5f69ee6a57f67c6938032c2f526acad5f180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303fe1c8538a9630eca34efb8522f35db51cdea904144d4749d93085d75c7ff64ac183517cd523d1a8dd1f484e8fe12c95023008da345cc2da569bac61c8e4d4a0535ea66bca700d3dead32f02130f862b01c1aaa16c01268928014a8d560cf6cd0c7b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303d79d8940b204cfdfd4d7635fb756bb72d9ac96757cacb28a7f38d6738d9d1471dc80508ad9deae4d11ea80a6a5cdfb3023013353c52bab8adae7df68d1a34bb9b96aea29f4bebec98cb3d143e427cfb39ab6d656ada22927c2ed618b05204cff4ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023000963deb8fccaf5d5c26e3ff51fdfe6f720bcf14299007c7a65e962241227405c21169dedd34b479214345caa4f2239c023100df45e52fea2a8f8df8ae6bf5e6f1c925dbc937c87f6a882723efce2e709cb80edda9c4d20104fd2f9c7776e259c094700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c536a9bfe4a40ef61920b35f43699bae6a392941b24505ac0133e3c4d184c3b3dea71e1c4c4901b88f359239a62161f6023100d4362b89a3c6b2b5a49b5104607ff243e790ba905c74700d03938867ba183e51ddd56f46cf55536af51c3067dc31c1ba0302047c435bb500663064023038843659272c7a82385815286d9883865b9211a2467f47fa669321102c9e166645b9c5c554b53c062b041d346624660d023018cbbbefc706f7f4250368a420672de1718ec28db5b7c3015fa6b027e38255f9145d2971bdae9208869fbc5a53cdfe320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ece366c9f754fb67124990c205ad04bedb1d924b967abb568f88c6a2c00c928b570e02da52b3c54a7f171254d5480d1d02302e6382290050caaed02e808c52fb0b29f8472743ca73d977dad597267d15b40b46a2123a5abd691f83e4cc235d67d0d80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230465bba0b796e1b1426cd03b7aa69dee5b69f496320fb4782c67b313b0509681c0946432f8d7e4e8a80a0120d2aadc9b7023100c6cd0d9f84b3532f8c9e3aa5515045720384ef06efb167d01963c48f7ad1342f2018f2b90fa8d2c25820bf385814d1690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009fd54f422c46ffe0518ba23685e58c7f95d30c6759368049ad8e3632dac86e2db4a57522fe47dc73e96367473367635b023074ff1d43eb83128af42f95ccd3a79aafed543f3297228ea16a29d660633019859b3a2ad6801732d81ab0b11a05f0e3160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d87f73755e744d65f46d8a28d10859a6bcec8f65cbe758e902b4eb3436248641e729eafdc06c62f5b104f284ce5f9a47023100ba6821b7e4507ad55404fa9628d8ee12b0db6d2ed90a534fdcabb592182595dc500ca5b6fb9f05f91d9cca81165da96d0302047c435bb50067306502303115d2ff9691cc121edb9058341329f6836ffe29516e7e172680d5820c6a30c2750a6ef566e5c19215503ad20a3a0c34023100e5e73c720a8bd112a43732f3aa9bcae1e37c9474069aa9dd6448f65974487eb29c158c952b9b760aad02168d46ccf3ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303fd6cfa7988573c7dd4257f53cc158655d01b70eb0a1f499a5d8d95603c4b22b5fded2943966b22d73214d7f3e6979a2023010e4932c5e44aca95872e0a04e4a9c97bde48f98975f99838116f88e2e472bdaff8ac73a776be567ef95bccb26fecc6c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c98ac62e16790b28a3a22f813e1467bc3fb9a6c57b3d2b6f6044f82a16b4a4535116d4d0a1b1bf8ca2a34d358f88cd81023100aec5184a0bcdec4cd5e0f0f76012269c7a85d3b2e95dc4f0ebcef6e5f3dc764c0c3c5e79f4115a81c3cc14734af20a110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230523d3e49d67614603bce265cd4fc2e35cfdb58893ce4477b535ecf10d005476a93b3df0a4206bdbd817d564a482288d5023100d10d971b630c2b7a7a843b28301f6c1ff0d050a09972e0554afb379fb1136feaea5da7e06513abdfb6b53f2f18af198e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ee8a108f695ff1492b1e3cdcadc0981b8bad2c5b5d290aeac6a34e483ad7668284f1aa679bf5189b8f4cfab5347aa81f0231008bc2c0921f3a2d00e89cb151154904852a616524ca275303a3ac4562db8a8942cdef63107e12d87e5ba305579cd8a20f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306fa57f1d397616d2e8c27efc4f73fd937f02457f374c16336952afbfb1a55c077f8cd6937ff482aa9aa19243a46dd2400231009d17191dd3b4d9314542b0ac959b833daabc56b6e2d686aed0a0c44276a9d0640610f4c2f9e82334e24714e3453b24f40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008af6ba192860222ef5bc5554b4376673d7eb42775c0b81505f62ea386c0e4ca64b3ff2eb1f77867c14420c2ce145d5c1023100bfb8cbe0e7d6eb5603eb0cc30415b0dae1e2fc017f722c6870016c9600f08cb89521bfcbf5d9c1d0104a71e5cd2a34f80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230540788d57eea494a8f09ea3d2c092112d0a84862ec95a5e8afb76cf62cf416616794a1c9fbae7c9fbbf7d7ada72e0f2c023100ba959af7efb89fad6b1001f625d23019d13162bea0fd2063af9ccb9dc9827b8f1ecedfb3a13355ecb325a0770e8cebad0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a5cfbe50885345a1f829ef3491bfc8df601e7add14b89ef583840cecebfe8586c30c9849035bc54f80089c694e6641f0023100e155ea8a6f73ea5a5966f4fdfa3edbcee346882fa39288fa9612090fd295c7fd7edcf25390460f31d766eb33f927efeb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a27783513b8ddbc33c64896c40a0606205495e243a5ade072012d572afe82f342f8d23c920bac8ed928db933f7dbf2b10231009223f94c2693fb375a927eed8ac2e61f8abb139e63c1a19654c505120017a6575db6cb233c5bf1fac3e286bee32b47aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302faf21466d4ceb3353c5e1bfdda3392c0986b2644fa4573913e299a92fcb581e1e9a1678878601bbe53d5dded647e2910231008ab99f1e8847b3ebabc1cd2f60e74baa0c25434769f639812170e9403ed6df5d690e4be75c380efc37d209d966c3417f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305b8ba93ad9e57aa11ad7a326947f3d322cbc28448dae3c96c2d7d7f8ad8c8513f1eaff03d3216f8b659f31a1da20abc102305e8a59c498529a1b5a57b23478b404a49b9e069831bc3fdc6b9e2424d8a4037019757b0ad2803404b5e8a9d89c20d3f90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230488eb4977cbd13b03fedd37c6d6151827a2b9a09a92dad6f77c398c7aab5c018f25d426829ed13646c1b41cc3d6f6de6023100db0fafb9d0c5902531b5bd3a50f73a74c00e06487537f2a0014f09266f87e4c42a258db2916e49b33d0e46d93f18016e0302047c435bb500673065023003c0f3ce3f27c776013fb08559d7f0429ed4618ed2ffa4d1ce40cb817fc807e781e2245b564889c2c9bebfdcb9728676023100ec800f3bd55c1fb2284c0139b5726a4f7e58f340f2ba6dda072a693cb053a815bc87c694004a016a9114fee1c3c260a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fff13889408cd6f64c2dbf1dcef7a1406503477156a3e2e411fd7cf7883ae5e291bf70af380aea29053c6fc0bbca715d02307adbb78c8fc9a17181a3b25d641dd60764b2dfc5bdb90af905101ff2104a842af4465e93d756550cb4eb88635336e05c0302047c435bb5006630640230508bd946963cd1393c2685ad6187e75961083caf87e985c9bd3613b8286860a3e3fbbf59a4bd67d143b7802080f0a57702301e3fc297b1edf956f9ea1bc4d10a77d6997daf9133a5c5a335c964bf82162db779b707cf58992536cad38d62c1c8f9520302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023009a1a12259ac506c1dae0cc6dc31047db3c9767ed54ca281448a2eb123cdead51ca531a77a294f1763616bbf37a796a102310099f8d29057fb244e4b80e0cb1980da38ec58e8756b1efc44e5a0548e8fab77d7afc7039fb7c36d22c99b9d555a23f6720302047c435bb50067306502304af88b1d5358ec9df45bfc3d19e6bf946f361518cec0a1f2717a15e3ea27e24c8cf1ee0f24c0f5e3d8a1de11ab64051c023100d2e6b2a5d6fdbc15854ba7f9fb3a8269fb4f6633aae0983624a60eea8c8fb42ce15b5dd07431fcd62c7a57bbf3a2c2470302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304f9e1d6d026c9a1926eac7590b45ab07329902b4780f544aacf2dbac0d0f2bf9bf3729161e3c5aebceef646af5e3131c02300cb90ed4114e10dbeec4d6e2b3cfed6c731cd2f9104b56d2337aee092995cafca2cc4a7678955a9f47ceec12d35cc50d0302047c435bb500673065023100f88c7a787d4d6a647dad7381ae0cb9f771ed88ec4ade0c5c8f5aa17cf33c2975e9233b387a8ca3adb8b3ee86b95923d10230398deae058f60f789448437808119482b04194cbc125b916bd592a4eb460e558a7ad937e6bd2f0e11d2d5bf2f536d3770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230041430029e2a5521c24e3169f41d71d804813d28b461197353ad5e6b2ce83d8c8e6cf94ce1216c95508651d6f2663be70231009d9994b01aaf1abc106f82e14e51e7789a0923c0504944714002a35f6cce062eac282900b84f9dc19af976ca87c7e5c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023042d5e01a5c28658ff1864f10801cfac3d02c45638afba5598655e36fd252ad2d5fcca70b0d09103eaeef81eb04400e14023100ab82ecf04acb11088f59610adf02dc7ee82b1e2742848ef52249bd574b0cea1a9826d796ff81dbcb618bc1538dc45fe10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009e03a75ddf4119ab2e59ee34a085648ab4847a9af0b1b34c468f609612cd9c0908dd013630e55e940c2d10714d763dad0230048b4f29c1c0c8dd68dc662c25c11bbef6812530e7e31953df86e0745e2971aefef1cae5db21b9965d2a2b35434fd3f70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e136f2ce235e203c5697a2cc88a66e1b9a025cd7292563d683bd9378bce23f825c657290d4a73dda72d903608b14021902300a3e368b91af347754e9391ff50b6d4d6637a9915c17df57bb8731600d3887060d04d2e7296fe21489dde55d6c5d868a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cdcbceedda509e4e1953dd5c2084ea1c5c4789c4801e363271b54719c4d6b22cdaeeffc85595d89d7d25ac2eb2d0971e02307a9da8f1ea95edd7fcdf49e9fe93efca029ba73f2a8e4cb56508f835f7fe28f8943538f221f2f8fc76f805dfc33285100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305b903b12296d49c67eddd2a20dfc7e085ec1f2f872e40f06026b092eeeed2e8a06e045b209cb7ab320628cdf3d18be45023100ecf9bebd6feba609f646b0aab22aefbcfaf777c835fcd7a8fc806c92af2b26466dfe23b07290023b47556a14db681c5d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230316ac9466eb6c2d62bb817121041d0a2350beb6a630abf4fe9501abce4a35a7899bb5129bd53d56274eaf2f9a9308eaa023100abf68105a29cd4e63ec56c558da065ca45a4ac94a73386356ad64df1ecdad7b7640452b67f5a664f1dbec912aa780a8f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bfbdeb53f2893c99868869b91d72b2a553c9fca2d228d875aae4eaeb2081c0b1a2e6c452cf5a19aab4319bda3b77406d0231008a2dbd384988a5cb8caeb788156bbee495e3dbdc96af1395471241690b4bbd16c6c42155711eca1f723530c712cd01e20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230424fc2404e189b780645078c605008e0eb9c9c3709267f55f5a67a23a2847844a2b82fee452d6685e4560e859b96e22c023100953db7c498ccf3686f6df5816204f596d186932cbf22cb0e034cc74b65a2821b174749b5aa741c415eb6d74254bde6120302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301f12653fc48561bc2424b5d511c43930b9dba2f30aac981ac100ce7b13e50bf773c3a700ec7fea5d36ada92936981da902307d05d0ef8217b9abd51a00b77f6146ff743f432a4fbf433d8fce5653e4e883476b5adc77463cf49bf09ac944f642f1080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cf7acdcc8205f495f9209ee84349ebc0077910e8fcf497299c95fed2a0bb8233c6b99c8704863d399f1c49bc94df74b202302506739476c8e9b0c6ca20dcb7405e492467e4d5fec28f2384fe86a68df9f7b8ee0eb9703e48b8c365a983367633fe030302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f9c5048b45272493079540a1859d0d3bbba91c1a4d6a881aa4a6bdfd60f54e037c008cddf5d0d27487f424953a00750b023100ccd0861ac06a62c15fbc93ccdf7eff88de4640bfa8dcd572e26a7f73d53926f1f3fd0fa2debcef4e144096da09c499c10302047c435bb500673065023100a4aa12166b1f53f299468f1bb5479d2012c56c893106d79695a1cb9c7dce1daec39055649f60b4f539655790ea146dfc023038ba257ea9d64f32bd2c6c17783624d1354ca9e925b95b1146daf2af2c5fefa37b6a35cd7ed996cd9ef46d58ca3a25890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009bfd44c5085b133c4aa824b23531ee4a4af3870ad27b99422f5f956a823a2d993b04f127487f567e67da91cf84f8361f023100e9b139164e05404fc63ad175d78d4990f7ee35436ef008ba8b537eaaed6aec163c8f5fe7ce3dff42af54f214f5d80f800302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023029476404e169efe546a1f06ad97554007438a313202d89c5130e1be756b8a1ab5c8225f80bea06ca736903f23819a1c2023100bd4fea1e7fe49b864cf1cd088d2265eca442d4969ae84d44d428ba61c3b1a44db50cb583e0f3000eca5c48a3b58adad10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023006407e41d9023e249b632b17bcd53edc6322d85474906dcdd08e8c4dedaa73b391ab4c6743807b1c8684871cadb42e25023100807d283f3246a5dd7c7e8c418e66cad77aa02b051f1a221f0bcb175bd9403ed2cd80d0cc4008d700eb4a782d506a93d80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009816306eac9a60fb35c3c4b639164fdf1a3694008fbce976671cdf344ceb44b67fec2c527768af135c1f0752a23c1afc023031ac049925ce63c37b15291b9354777f3d82fbb5d74bd86bae8f94ddffa7d63d8e88be6e3888289fdbaa37be1a5005b20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302a9e72fa999c8fe96fdc0bf1f4fe3a21a0d04cb1dcbc22fd8c18a82b0d5ffa64758d466ddd279ce480053114ce86c8820231008e144deade833c5dc6c20c1f569ec3d7dceffd4ad3490120e3056d7c9b02c6c6baf2aa4e86bac533332eae860876aace0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305cd926416a43d007a5a49b94622da7d97a7a5e40e710a654e89281a0a35e77733b3296a20673f2f0bb90ff1995a4d9b7023005cb0095030ff3954797a15dc4280a155b3c2a0c0a5b68494df5dc42083b868652080cc1ef8621bfe46f7b78bd9faf9c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ebe07b105c6b858a6a89c79f5d8be2016c0593e737086491e8a04b51e84f34ea4e4927d5563567951a38816bc8c01c4702301471d4db13417e24ebd751e751004dd0c52201a20e56279ed4d03b693cede444ed9013fedfa325e22ab8b1a63001e3250302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b6ac123064190616787a3aa6534ba823d15f5b97f0ae8fcf45c93819e79202514550cc8f35067f920858d14c11beb94602303d5c1567ba4cc0bb52e74d8de2377d1d698fa77b2e37fd53d93949c70007152920f0f2cce97c03d5aaa3ea0a00cbaf1e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023076f8c17cfcf1291a9cb167d8532fd086dc8e058f50114e8de4aea2384fecf923f0ab4ee691ee458ce8dcc5ae3f84eddb023100ba46756de2c137fc8b7f6269e9e70ab41751ee43ea2df8a967bc22e667b8740d37059cfaa36247f47efa4a0133d5218f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302db6570ca03ed486680983a37b14bc7c110a4777d2c33fa136266fa7c99c908c00b2878fb721ab824b308f11c77db34102306adc3a8ad47b3efccc605c38daf04f9fecab8bb9cdaa9121c58cfd109fa66574268b514b55e68409ba7d2829a65aef8d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009249d2101d5a003b4fc6ef96b7042564c8b3b16365d73717bb1ba9d71f5b714d6bc1001f47d63a192560430e88c325970230269f1455273482d013ef3ee48d5d6f6adb7a79a16760a560198feaff398fff91f13c8e290dbdc80c3c9e8b50094a72d40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d9e617cb02ef66881ce5308d35c8ee7bed7f7673b5225d3719f4880cc94448e88b256de028c2bb86e1d8fdfa75bd2b950231009778bf955e7d8f8616e2a3f4a28c4c90ef702b1090127ed68cffbbc8c008baf9903a1838b4998c869dec6032dc4efbf90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f57653823c5e981f5afeeff6e5c3fe7258ca2d222ee67091c6b0c3950f569f8e3ac43bffc186a4c81196e1cdb6c37bae023100e126227f3a3308a77dda6fd5acf33a5ab4cccaf0e29cec81fdde56e2f74ff3b4c44743c148a0a3e5e6279a0a454107260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ee57c5bd03748b39a8d969f20134d3fcc95fbf10ae93552c22fa93a8ef603cd69495b5a088843990af4069d488a40ac5023100a0a4e9b3d96c52e2bfb239349cf361aaf11dfcff93dd9c228dccdcd45e27850bb9ecb642a0900093630a29c3055c3e900302047c435bb500683066023100c3c844246c29ec53793d9659bc9d7c9856f2cad424fa0a0104a3721bab8535e485e733c3975e5478e2f711040c02ebbb02310087f93334217a584fa1d3f063d74ef87da4cbba3a05ce7cf9a15790a8f760177896efeaedf0bbc0fb2339cc81046612560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302d42cfbd95d6c880d4681e4e75d6eb4f591607f21ac0d33e989b22cd14fdf7295bd5d4ca825a25a1b8d7363e778ebde702306c0fcb98cf2fed6358b3171533a4ed3ca2ef161eae61113636d18bda728ba7765f3131928616f66792f4951e6fa851040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008a73330950eb06f551de8eb6e8a95cab7fa24711336a8fb2bdfa13ebcc9bf54b0d5c3af89e66db93e4b486407bf46ad2023100fe82834d64bf57134bd51ec7daae4b3a68f4fa8a1678acf1767b93dcb6917c13c12737bb3229b5c920cd431c6181acbf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230305f45d5d3fc5dd88f5b02f74441c4e9e8329710d6d541ff5f9dfd9438e015b022813c647980afde6ae838624e7d89ec023100c330f3cae2ad295a5ace104cd246915c7b486bced5eb629e0cd3d003e35540743a6927813216b96f59cc0b627f01bea00302047c435bb500683066023100ecd0bad2531091ab538ee6dc41c74c437445ce42e53e274e8476aa3f2d5440125d19125c204f14316b83abf23dc908d102310082b8b7ec1034fa8730d7e4691757ab00592ad08ddeda83029847ec86c6fba5207533571eb367fd145aba7b0971776b600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008750b25b6b9a53e7c26e46582936e6713ee677f82519436eeb85cf259e7bf2d287613db8f27e9ef91487401510ce4c9b0231009e6e746f16ac61cf5d8568f8670b97bc6a3c28b293cd3a6322a2038fee7ec354fe437b6b37bef4c9f91302b63dc38c900302047c435bb500673065023052a04b32b80edbf1d99edf2ca7d228a07011d15c5c31c75e405fe3b0effaeeae79d490cc2053e24054b15555d3b83676023100de94fac63aeb53e399cd9fa1bf8a1de49bcbb4fd37a8e14ef878e37ea695d53d6971c6db79028eae0a8f775222c3e5620302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230459ff629113da916d1318d3010f35ca05584b61e9bb155ab839c76dd6748875b6c2c1cca65cf16e609f049b67f2cf6c702305de52515bc2081533bb4c504e6ddb5aca1ccdb9db4986aaf8ef235247162f92c7c52737e7e778f96dd676116b3f1a6a80302047c435bb500663064023054576ae544abb44c80026cd7e0cb2c82c704615e9b4b7d0e7ca9e3a3554b0d9cb7eb5ba9cc6e7550a7b2aa19ca7cc5d7023046d4738c7c7218191300a6185e01ef4a69534798cf334a434720399a171d9f3cfd8536beaeeb3c9d99a948ea3fe57d5c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301ced823e5748d2112a2039823ee89105f57b049601b3add5b82043feaab1eb19cfcd9766569b8402e3848c8b197322f102310089af427ad7f33212f35cf5dc5a19c2618732acd38e329023dc9af62c09e50a5c8bc6f794568fea5cad944d65decc2eb00302047c435bb500673065023100e2dfe2dcda39b8ccc6fd036d0ecd436bba21f6a7a9385c24d2d6e675025c878b302824d60c474ae0bd1348aa06021ac902306795013a205ce49fa0033ccc92936c4062c6e29bb6d9e94dbfb1f4be5219065c111fc8df285d3991b14637e1a0ef0a600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bb43a17a64e6eb33790ab4e6e91ce5e6875a1c4e2675b546d1ad15c30488df28d9c4eaaa5f3568f595b166ce617f666b02302869528f294b1ec4efaa495e50e5eff64c226ccddae2cab508c0195502d4b5c28fd4adb87fbc0096a4a2094b8623d1980302047c435bb5006730650231009889715bad57814d67c9c2d8747ee81fef1a203d0765be5f4f9b9d1bc3452550d0361c62b27608ffd737cf84cddda57202304a8d0111d8a8888a29f8763c3b2369a8b82f93d15a39956ce726edb90ef6c0c74796ec1894c49bf265783ab4fb415ef90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a6c55bfa0ce0c1d1064f6acadb786d09df06397647a0c2a40305bef7613a4c24523632866ba28ee88baf015cc82f0568023005da73f3815190e5c645a118985e22d82884874ff6c057abc4e085c0e9f3f2aa511f4dd8450c42735d3cef47cd7cc9600302047c435bb500683066023100c6d878e4a43606d7cae7a64ef5a0ba5aefc33446aa0ee3fea81c2cea396bf249ce90fc0d6fabdbf5a461ed9ff85c82cf0231008ea4d7f364725ac1ab196bcbcb3eeb09e3a784a8f17e53c0bac952ab0003af12a8e3b6670cc7640bf8b32634b8c9a5c10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b23e6d713bbd656d0896c11ef7a019c47ee809100cbeb4389894363047f329e5e3d61c1fa509c7b2d78291d597da5342023100889281240e73bfdd06b9d9d9565a10950f592ba0901598dc4a0e04e8548ebaac225309dfa3ec1fafaac4e1ad3a31c7b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301857483d41ff399248f1e1e7e9a3179ef1bf730d311d365244b13f55003688ccb943f96e8d26c13ff619aa2d544e3778023100ed45c1cc1b8c8189a292c2a4112ce8d1c4c9fc2015d78786dce109fdc173f2a46e5dfc645b925ed78fa073fdf016c9fb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302ff1b1927d7f7c402ba46b496eb148874251dbd6a1940c3d744dc1f7bf19c6d5e329d4d467e5129893606abfa891b6a2023018dc688d1a1c97ecb83c5dd2906061bb2ac796a8052f41af01ed69b5641b3c6e43f5af848519de0e5cd2869add27195d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300c7cee04183cc3e3f75bdf74818f26feecf35513fb4f4c2a66fcfd74d6adc7dbfcd73f43daf50966421723a41cf8793f023100f1671870c7115de0be215d9023dcc41779f53cce7be495455cec76951bff1319c15d41c3839f545f136aa6ed85e1f3d40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023040bdeefe9de00b44ca658537c308487d28219f93c1e5776845aca73600f35036192e38ab7c71d29e37b6d0c4c436531002310080411731e3bd8177f4c4755f532da2880caf831cecf768f976c61df4329e391020da24df5db4a928d9ae88e9e02aba2e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100be8d08bf7dce11e0ab1410fa9bc1d1ec12a3292382d0b8b762be08201692504f477c709e0ea3b7afba1acbfdb8d78b0402306e97f909d7437c771736b5fcc704f63a78576a38197cf0b1da2922bda7a4eb727f94b7ee4ab3bc38da6ac9c8604d3ef70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cd53c4050382462024c38f2448bd45c1243b0558ec9eefad0b2db29d45e4ffe44a3ad0a07e92ad4690d7b54972a3a81a0230442c0cc023cc94b0c3692efe1343be0e0553b340af142d1831e64b2d162b97f02edb8d06d6e0e37995a9d2202b1cd6fd0302047c435bb500683066023100a357d86e585b025137c2d7f162ae5fb6ef9cc783a377146120d96a29d1c19c3ff7f84e681467a7abce8baaee20a9bb2b0231008cfc66ffc965de90ea20b983e3633a96aa9240985e855f202df612b1853c439e39e9d06ca43e84cd2f5c0f07810e983e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230376731f964663c78ee98b48e8c3dd7b98f73b0fb3d6fe4dc8befe9c79d0a54b6a6bc997d744dac0cb550c8694b2572b1023100fbf06c347ff334c09e4a79952f785ed80be64f7e35888542053aa10cbbf84df19d509cceb2e16f22c18550ff3bb7f8c90302047c435bb500663064023100a21e4f90f9e60ce6a3d3847599810fe022e0ef017365668c3a382e73dfe54082a6e5fb84c3033c37e65d1d89e6420eaa022f39e7c1e89a60aad0345a84e9366a47b7df72bcd8cf63ecaaf24f656f36be61b3324cda0aa872555a665c57eb22bf690302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100adfdd6dc3b5ccea59a091f8ce76430efce6c886ec4ac3749fe16a0760b17c09282430e2583df2e122ca2a0bb5522846b023008bf2383111c5f18e57634d4da483899512f1e48fe9b89783b81596ac4e92fa95a8950478184e17c6cb5994e99f7254b0302047c435bb500683066023100e02deb6a26c21a88ed6c9348a20f1a424c829fe32cdb28680f259a73513bdb74a0c74d2ead9ef5c92dc1f84007a83607023100a3b609b49176c42295e6790e1e722d2510674bbf5201496de76a481b90c19d1bdd3aed2de9096a4533b9e5213d6919200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023018727c2c6f796d3149147e368cce8f87aa6add9efff8c349893f4e9d148ff260b268793cad014e348639c6c351fc8696023100eed07af83c2f4927ae19597eaad9b10723b03666a8f58957c5da92cdd07931113ac411ee455b3937dfa5ff4f6efcae2e0302047c435bb5006730650231009be26f5acaa2d768555240a8af9e4f8a4c48e3598ba32a94d1927e6ac6703355ca8b801c23b6121be2a8f536bf1dd0d90230312a815f54ae87d2c3a197019b6b43de2311904fef451056933b129bf800994822bb9aea0ee287ec11e458e9c571f3dd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302bde190e5df1eac99c7f1419ac5c22c7af9672561580c24ff3e067258c4ce0ae4791439279436c4645158b41ae94415f023017cab75ed1227cdc4a1d17895a40e796962ed958761ca32cb291825fa1a6ef5750171c85630e5908342d48961882896a0302047c435bb500663064023048f3b82fe8548065e8730ae22de6d5967f101771decb42c647c6ae6b3b82a1b8869375b83c0fe252b62535b9f8472ae002306bcd1f3df830311b3cce8f981c7f28fb8973f618569a17e5e63877ba4f6c9ff8f7a283fc8ecceeaf48adea0dd16014aa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300f7a918fdcb3f150225603c8941c4547fd67177096319eb1b580558b5c306b5c03748b37d5344965e5df369aba7bb58d023100be812a7fd23dd51582c9fdd1f82193cdc08c5bad52ef705aaaa1c1903e905b87a1b595640f2e3d617aa3ea8b3b33ec190302047c435bb500683066023100ecfb2cd75a02608b6d8dde1000ddfc5dca6c39d08fe36614fa894fb68bb461baed6067246d00caa19bfd53d0a75bb43f023100ad87f5aa741b4e88dc82b0cae3fce6c9cf026a003fd4b58fc85f9c78330e9a1dfb16aa4400f4fba6b1c777da133c799e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008049a7c71a832299dde503d80ca60fb50096faf7739e8bea3d39a13f513e8a9f07848e7ed6dc4a45ca94bc05f2fb59b1023100961ff2e544213ab31866d8882fabb6d9ad59f8d55d7c6c567f60699c211d4d90f27e082009fcdd2699e7a055ffbd79f80302047c435bb500683066023100e7ba0e0669ebeeb14446790b6313bb6e3ace49e16ee6aec654940b98b6f905416bab94e72770a797f66ffd7243c1d44a02310086101330ca81c1d2baa6d680ad85b648e230db2db32b552699d93bf266c6e33ac3779fc8fd7615887dc057dfaf845e9f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ad656e1057af9bd1214a6d8508056bbe4337f2a2fb2cc3da7ba093bc9390ff1540f35344972b96a2f88b054c76bcab1a0231009eb58bfaf573445b9d09d409fdd829bf3caeaa431dd65945801eb2dddcaa26b02b7f18f1ddd9f53993082ca83e432ced0302047c435bb500663064023077b0dfbf20dd9ad574945fd5462b644a744f1559207f1fbef4f6520abf7fd7ed25f5be973c81d44d8be5e14ec67e0696023077cf7c3395d012ba471c4f122ea53588a8dcc95ad85e373c9d5927a5a926cb1b54ccf84b0d5cc121112d4871427afc4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ad02ab323ae30294fb9679bd034ba5f6367c48e6fa88fbccdb71c739a39cfd5151575760d387dc6089f6e57bc5aed9b102303f399b75bf7763e0c6e8c8bb8b510eda1f0a49da645051ccfbda09a9a13faf233a89db07e0f16e4090ba067f7d44933f0302047c435bb500683066023100cbafdfecec120c2f1aef43ad6c1e8b33f9dcb212cef4226a9cbe374a13bda1050df4a9e379f6381b7ff6ddc9bf3c3c4c023100fef369bfa274fcfbabae224f216c78b54cbc141393a3f114a2ce5d5fddabb1d58555e70f7be5aa258740af72dbc1074c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302c4a33e662a62884718c9c8b5b68f13cfbe9bc0ea65c03afcb702c333d6057e3efd5bde689a97aecb8c2137623cf4558023064b425fc44250a45e8d3870435c6bc34f995ec4bacce131abc6aacd67e6d17f26103cf8ee6745dbf4c7c6d900be731030302047c435bb500683066023100d0c546ef78f1867f6744ab7544cee5c2d585b143553f813182ff9828f727a6ffb4196dd24b7eee92688828af6cae6b5f023100b07d5d33b9aa49f224b1382ec61a6b92b4f525031fcea9dcf0fc56adea33f5cf5b2fe11714cbed1ed06f564be352f5bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303108a1f385925f2cb207e2d577b05bfd56612fbf3261dd6a15427a9289f15821fff2804bb5c1bf348fb7220e6c650ac702303496bd98d403e02d2b33c99221cc99640820509b3898cf1bd858e7a11386131f2e93fe24c6cfd3c8904025464ae0141a0302047c435bb50067306502306c15603a10a5132f0a1efe9fe66b0d73c08576218ce8456ddc26c6267f5f9938fac12a7272cd4757d3643b5f46097b78023100c152782b3d1e3915c6bed5c6b01bebfafd565216a0b925e1088724523bd0a208b1a5d7203c127b55c1b13d05e94bccaa0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303a518ce7ae2ba7abe7068e737f97880dcdb9c2c6cbdd5bf72ecfe01d4ecb2d18783cfcd600c57996a2f44ee3bb2593ee023100dfe1364412aeac2aed8c2d8ba9d35c81a36b87500940ebbc66b3320a14938f998e2ccbe2ab5c7125f1212334e004f31b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023062e846262f9f602a81a49aac72455e210daa01908cd83a61117581f4f488253f283ca4f31c508db39400d8f0203c4df902310089038c051b947d59ac9d7da0867f8fed9a67748454c9f4ced2a1012d71936bc2e1992bf7a0fded025a2ee6c8e4dc5c220302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100add60fbc6b72cca4da2ad83e0e8cfaa7c854ea735f6b52e4058b1a7e19521103671206f4e5fe2f6b4e717cff989d3655023075a5be3cb6409ced252f6b64397f110bce78ae663621619fbd2e72f6547dfb1c29a600d17c5933feb59cf1bfe8fb16f40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305265a5f1e7607e25f66d44a036504db41c8254eff00534e986dac7652fc72fff8b9ed871e897ddf848da15c92c921c6302300214740e44e526e21b8cff76f7eaa899d5843a5f661a5b48ba1d7af493f2a4588e86a8c05015af6a7255a7299c73d5410302047c435bb5006630640230290e62cc8399d00caa4cbd1aa63d1fa61fcbf1278006c947163ef181d4cae976ec393bd4559ddc94a566161072c3c22102300411fa29d42ef804da873b146b733f81d02ea4aac8eb967c5b6b324aef93f0a49ae9c3f4305e7ad7c099fa290f9b40a50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310099092a734e231ab31d2078566c95d7e8b0fb1a120ae9362f81279bdb990b083ecc7468e0e134b8df405add1d9aadaac3023100b5d86495801874be95340c3f1f012720de1ed254781d9396ce928ace0b5ae4aeae30b2a7d00842e00e3358e44ef3e93d0302047c435bb500683066023100aac61a3ab546207a61f37b3ee3a15fef71c061702af8ae3bb9c5ba8ad852f1bee0a06587948eb28a88435c50d7743349023100833ee25300bea9bcf052caab52ad3234579be04cc4bbde0d6141be8d4a01de84400556fc1ee917ccef1d85bff3dcb4770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310086b9f80479bd9f2baacac54ce8e96e012f68da6748f9830980ad11620964a52a9d4caa58a7ab3a2587ce1fb6ddea9c00023002b9b39928d594c74e0bb7d177107d9ac0e29e18761eb1344e6658ed50225a73c477ae30182cef02af07e912239dece60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310080e00e8c3ad876c35564d3b7c049f4b2c8a193101ea50d2e03e5ea8ad29ffb35f2a1cd5394fab1029d2ca7ed19c3d51e0231008a5d6a9b8223b7cd7a1f2f9aa0be7330df691b68e2d96e9475e6dfbdb1564a01a8345d79eaf2e7e3d2570c78d5e9920e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304d82f48e0dfa1fff3ee3d5ea48bbff3b145f4fa3ac61c34b391728acd79631d8693714dd3852de48b74df6b37c8c6f36023100db022a536e9ffaf620b98cc5688d6fefc3921b02f56ab787d7587d7c22c802111edd656054ac44a3d1fa96d8a85c27bb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023048762b5b574b80fd31921d34535aded2642067dcc3a1990c34a99aa7953d8542b01e2bacbda19a0f6cfb2307e4f5ac1d02301e7834f09eeb003f0cc83d0c52305d2d6ad370173b6211b9ec142ac8d5cf0a1072774e590dd955bd9582d1c2bac2a4b50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310096196507abd9ebc19228d61cf7d460c678cbddc33b16cd1817d87c379aa81a390e363493b34a9b8903d02ad3a8567ae902302696e707ca710683d64b115493627567501dc649ac5171c8dc223231a429b6da745590385d2b4fb99ebece14db0117230302047c435bb500673065023100c1a68a1cf0c29e69dc5f733572082ed5dacbe5ddc51e2ae70e89f326cc6d86abd4ea2b230c73c6f135c00fe141a7e58d02307cd782cba43ae8732835b07888c3dda58f34a5e85280d7a3d7cc62b4d5af75db2015a9ab15bd0f963d5419d7e1718a7f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300f3c26ef6a97a14717e37b315c08c17c4e93459115608e7c3a9136088d89033864021ab48f311f6f541120e8c5ad60d5023013412e132b4d4965209b760928c23f55e0c770d2c06f37b9adfa4d3771a20d384c6b00331cd8e725ba793339e9284efe0302047c435bb500683066023100daf06ed099808a1021493d0a40903888230fa83783e23f6c9cd1060cc644d80e80c032e24508a5039fa732dbca034e2b0231008782e76697d25d15dca03bc3fbcfeca72e57b9599b817f9b123502cc1e4256dec15c8178763926942f478763ee2fc1800302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bb038a527e22df18b2d1dc8c4bbe0f75939d96237549633228d46ad38d3b755d6f683a64314a78b68de7e1d5e53e17bd02303008098f5828fd9ff1b7ff353c16aee3de694709914e70b39e8d3013ff9e981a2433c991d25a0514475574b33a57d9bd0302047c435bb500663064023040b750a02eea59eb5c2f85736535c26397b4ddd49286b018f81e7911ee461f03592546502f335370b41a8b6149c7e2530230185925b0905fb34a9cb1e8aee918dc00ef3293c5a9a99e13a06f63e61487ad4cc5e1c5e182acfa8f6a4377c00f5b31620302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301484d224a2f9b18ae1b648b20e5e5b33214ca3af2b6f53c6b5418b9b1dc9711393df5d792465a66cd9fa0a981d1233df023072cb7d662709e3e184c6d72689bed0c40844fe392e8581536d68400e48dcd626688e02c9cc97ebd9162876d763cecabd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b85b52ba930d46ab317aa0900f77e7e98a03941cea8ed17c92b2a6765393298fe038ad624911418afa039a4ba3123ff802303674ffb719d792fbbdfec2d4ac20684a94bf8eb47f38ebde810370e19bb9b078a1a17962f0e63c3ae8f29ec40bd05dcd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b37a2725e83d62074f02675f9adbfa41fba646156725591d7f206014c2a0a44969a4794cc8621e8d5044cbbb6df00fab0231008b4077189f2e45951373f06239eb31b6b8df0ad6bb56857b22027791e9dfda17df6d5e8c1025d47b43b1231f74c25e020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023062ed8c7ee7db282ca742b0813eede980aae220ef1c5db4daaed53a57896959602864aac801ec999e4b699f13da60d518023100ff5050534f5545d2dcd5968a6fdd1ffb157e00925105af6a8c93e1feca070d79e8f0c85ade78bfa8177835411e54f4550302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ea05ef797b4cfc64a4e6b33820fc8a6b0f90fecc87523217c66c319955b1255e2a38d03702524c68e95b694e05acdc44023100863a71080c2caf52d9d3d78d8b123d4febb8eb66b853ac9550c8e1f5c2b789d7642376d30a698b9703c53d4bab5c0f480302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310092044c606b6a048f2426ec49f43904a6f9ea3ae82c3c7b72556a89725ff3e854087c7240415fae55d850e71f7486c33b023023827d530a62e897300547fbaf0422a145c661a3562b00559355a965080ca2fd97b3281bc51f16ab4a2153f86d94bda50302047c435bb50067306502301741d0cbc2651569b20080cbe471a0d0a1fa978bd8d51f3421ee90dbe0c953212a69c03375bac401e0d4dc17ebadda59023100cf62204b0cfe9e25421107f91c1e9a45fa52a17193b2516e095dbc1f85ef3eaf86049d88ecd895174ef47fae6cd2a9a80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100faaf845e4b66fafa6a391731676f8dfe19b30aceace542eed6b396985775497e5928cfcd06382a4cb50c00e99f34cfd7023100d41a5558519f7766350b1128e7f4eba61fd57fa61abcba2572489e593eabce343029924c972181dece22eb90ff79e4e90302047c435bb500683066023100974274c56d7dd4932dc954abd90b8f9e9f293ae9fd8adc32dce6f26c45a0f673e352de5b31e88d7bdd34ac7aa107ea22023100cc5d008ac4086b3b586f0f713efc111be1106e6b9a6d6b60df19b0d26a07b7b063d14d11541ac650136b86e89127965f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b06050dfd0121b4e004f9de6126c3aee8b838ec5e09fe27d1dc0a604e08b6488eb7cb0b36b55a8c02f9ae043e8565f3a023100ab32b788c6ed77dc1d2b0055dd08d6b38a2839a0596823e52d56450bc962abc99ca8a01bfdb01bf1d115ec1818b338db0302047c435bb500663064023008faf86f778c1b4e9619748e2f9aa9e4bdb03ec89fa8ca203092fd18e91e814ad42e28c8d7086f218158ed7f7c1e9c7a02301111d491baec2915c10da12c26e7d63801053f895b208bfa24be85621e76c610e7a9e8b623c56cd6186bf8d87a5220600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ca59dc94cd943657c84f3ba538fc3ef7e6d1d018a132ed7846d0a0e7d9fcaa133282848b18c5f58ffca8366d549a35220231009d6984c8739451e59abedfe9c6228e8d2fbe53b7088aa69f2e4945becedb39550eb3a0c47f68be3fbba09f373a83c67c0302047c435bb500683066023100a6c57eab5c13ccf85cc2a01e63bce8b1c65430332b4c7941acc378dd584d28e6ed7a6ba0cd31d12b044dc9eabef99fb902310085fedd8dbfa0cfc0a504437e2d3f36eb59317767bb1db92d5862d22e34abbe8868085a2d15bd43e2948ccde851c0c61f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a4ebdcf6d81b3c2ff165c11301f6c2eb9026fdc24122edcf269a482cf93a31a53c4cab5e996f5776ad177b89daf6098c023100b0f9a413f6ba378ac4112e49768e347ddfcc471b7d68da21944a066ebe3ea5f7f633e83142a8eb8b3159b9998f3e80430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b566bd9e1714eddc9fb7d9107e43fc0ede1a983ffee9ae1857eb5310d9083803e475476d101a2a014813064a92f9623802302aa96ae0e37eb71cfefec632fbe8de7cc264a915ae5a03495e9b927ed6ed6010070dfb5944d804a46e6dd0b5657cf02b0302047c435bb500683066023100ed8ece0e89665413f7712494687b455fedb2e559dd7294907ca31606de9fa8bef474bb29ecb202bedb3c76fd0cf556b8023100f16bbec45924caf9557f75f9775b0b1145235e1d0542047d1c4662044226efd499433e63edb43710ce6261eae6925adc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307158542a722162781b5f567a51caf7257796389ff9515c1b04c5326b0f548d332b3365727d29f1066099eb032889dc5902310080f676e09a08ed938196000a12c034c18b6f9cdaa0d476b0f80d918228f1ce578fa80848613bea9a02935b9eccf4dc930302047c435bb500673065023100a14aa81164bf2cffcce7e2bed1a50f700d234f73d627d7bbbb3a380f6c089d4553051912543d87fd7578da11579fe65f023014f8f28d37ec1d4b743e0a1f8b869181c7b2160243c68c9ad361d89be22e4c4108bbd910650d114ab51a6b9df4bc725b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ae2a37c5c3ce09fc42c9645de1b63487bf1e429e48e4e5a1cd62ad08ca84409242047a7135b7d171fc041f3269f69a4402307529bf2ae39be9108e41347ee6b3f19c31f568ce76f03b376d939209a163f4d755a01c8dc14363bb24b204b9d8b0e6780302047c435bb50066306402300cadc0832086c1db056e5486000cb86364d88686966bcd84e518377716f6a9e5186ba393c440c9dd164a9d9a932b3f320230706a86508156185ea8b9a9d71ba36ca5c9a095e3293fa41b7e1234e1eaddf30360902de9344237f9942c4e6c95abf92d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230318cecfc188f2a3482071f0f576551fd86a0a297565c05144b22107d91f797024c5e3258db7e2a9e9cbb8d5a16eda5560230413bbf59502d70d61b9cb60a92ece5fa28db3fa2628f7e1a1439729aa2befc25cc307960ebbcbd414e6471b7dc9145de0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009d886efcdcbd869092720ba813b32d716140ebe8e04447c09745e30ae3d77b700d98be0acaa7e9fea0112ced36d196b302304c19ab622fff0fc2a442f9303983edb8e17ea029895b08b14091b9a92ae4a9f3b95fbb7acd43f7725e25fd2c2c0bf1a60302047c435bb50066306402306c0fa61cf8d1b77b6e5207a6c37011b9f1a4b2a6991175cd67156eae2e7bc159c06f768b3f77948aa3109e5807da3a7802306c64d5691ac021b69312a61e41909188d44473d86c33f44c16902f5736f4fd32a6a1e290c6e39de5608703d9d62036390302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306a8d75d344e44125ca3510bd6392fa8f1d365f23543ff8784b1ad56a016b209ccbdc25b53dd423033bb322b9597036cc023100c01965774de4e7b951aff30ff307ce0470f1111835c0883c91a46d3dcce1b00cfc6da4c43fe25f0432fd8e880362a6100302047c435bb500673065023100afb4b97cdb075fb89b0561bdde75e5e0d6f0dbaf0211515657f80b805bc45717dd4bc155fc46be6161349bb7e9014870023002b1b1cd4948eed7071d970a1962ce53ee89211f3956190378100d9523866f64cbca9f432ad42c155e53faf53538b78e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023019ddd1ed1774b95d162f32d931f654a3a22737acff610e57624edcf2ddcf2a842d8c61110043c9ae48454e11db8ddc58023100a0f6f00ec098518033cff7a51beddb5dfed7b1d594d89b52030eb3a2e7ef1feea90a64c67a69c46924af463f42e51ab00302047c435bb50067306502301b500f01d13ef9f3e4ce54504ad76b8bc689cb3a462c70af3e395bd69a52e79a7030b09e84d3544b523cef8130ac2b4e023100c5c1afe8cdb41d7e7add69d52463c2e8792259a591426afbddcf46ea7390001defdc1b000cb3568a780c777b5eecae590302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307af53d26e2c4df6aa63722a9b049a6e15831972ffd49f75b92ac439e07a8ac00cb067afc89f37f10fd2c10de5463933f023054c21e92dbbafb244c2b5fab2a6dbbde01c63cdeb28d34413b90c3f82f5a754b7c92ef7862b52173f09fde3639b03a950302047c435bb500673065023076901f6e72f2af420a2bc6e39ba615fe98e287842ec2a66800d7023e286aec6a15597a37195131a076e182a5b68f249e023100a9384ec1392e1f688f2302c221121dcbbaff37f0cc5448ba88051c47af4d164bfd40521d63e18832a6450561ad75f7640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023062e7b58279f1603ab90810671929de7b839cb89d3afa353a98232ea38769ee72879777fbf3bcb9b47f2adecdaaa24efd023100a35e2878c037cac4d577ef8b09d868b0953c74bcd9885dd90bf18fc80967ed299c35976914d4aa7c9d285f7532656b1f0302047c435bb500683066023100a800dac614faff6b561e8008d8394df28e865b043045c3f02d81f09e27ec773f77c0d3e751d7e2716b1702627e3a219f023100fe7c480f6c0cb045ef22223264f2d255ca0ae6456c93df515c2dea6b6ee3fe02e43a3d51b48a45fd9308bd912a40d2d50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304ed2a71a3b1b32034531e9f9b82dbadc22f74c532c0eb4bbf9cf278a2e427ee54093ca02d50c24623437a705b950adf302303a21d28a03147e385296e3b7e9ffb7ebc5d930b5e7ab0a8e478016eb3f3a1bc96e9b67339388a103c87a81bf58f464780302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023042965f3ba79c0b610939b82de5d4ecdb674d736d9b49fcebc9a597eed8635fff0c97439e8259769e6e3982fe4d88f61a023078d17c53cfd145cc7a2c136016c3043a62d18f8aa654cd21b928d6e0555cff7c2f861bb0d9ea07f7b7329d1b4d55b2c90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306f1ba159b06a594a82694c205a70f9f7729cbd4853bede7f1fffd0426d19c551d3d68fe0590e5b2c6f53c217a7d3670e023049ad4e40ddd04c28975528d5d021188c4456ad59ccdb1edf7ea6d16fdd207dde9da0d6e96bf45a0fef269f76b6b2da050302047c435bb50066306402306a863d44761d1e830d5a0c969346e2e4ecdbcf0201541d678076d28324ffb77e4699bd1f7f42be49f5325dce58650dd402306a34f714d43c8fa308ab0bcd071786ff23639ab7e9904364b7163a9f89f12e7815351d99e329d0befa9ee318d4f29a040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307c6f724afaf47a43341da0ed8bffd838a051e1d68951ab0b00540dcdadbfe4a85c7d5e0e2b683d226016af76abca15cb02300addf65babe732725f2776be8334effd354f9cf4b23ed4dc67e41db34c345e3e5217b3acdb5dba39616b80e2d457ed4b0302047c435bb50067306502306eb184840183282b1299234cfb975819e58edd786cb5d9526bc0c07de163cfeb308ab1b55103c9bca2135249fe46bc8e023100c6e62942e61f47bdd2f3fec48678488f7d673281cf06fde080fd6f1198eb4f028bd3fc1fa76561ddc2c2e108acc6fa5b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009eaa59518c6bbbf82b302c5ce821a80bbe5efb00340bd599a16989592c55b18396e19004e74013aff683e33c4ede023b02305f4abaeace2246d055ba6f075f6758c80541edf24313cddb1bdab35c86ceaafe0a8cdd85bc9996c7bfae8e4b9ee836550302047c435bb50066306402304991a13699c80bb77da4b6cb1798db5ae296043928af3f5a11fc9a63a5134ddd121d1166fdeba9d28edf97cfa036b8bc0230526d80f0be32dcc9efb5f030f0102da174a06c5d58a3b29a4a3c39c69fa19b32dcdd02a9124eba548f9efa73d82a7fd20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fef35f532557f4a360b6bbb0529a3cef5789d0cf1066566bb7c7e62123651a5f2fdcb9e2a53c7fae2991981a29e1e82f023062ac62fce1bf75ab3e34f74f0e8a7f580149579f8c3dff97ae1f5a01487b5b824d88b624d4c32f9280c228b32d1d8f180302047c435bb500683066023100abae629d52d18a01486e4bcfbabe41de79d749160aa16165d2f74c8a7d46b088107e04dd45b07a8283d563b001c1e021023100e73e9834867877a0e7aa0ba0dfca8f0ce4927244a5f2ca738f276df6a8a1adcb3ee7c690b1d596c5c0e631a8df12559f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064022f5bf6a286990b2048efbdab57347304990e0328dfb74145b8d3b22389be19e005ca366571e469b78ac5cb57ea42ac4d023100c413ebb8e28c761a3426c75cbcb1b1367fe377194ef690bb72b5838e172eb6207e54ae2b203cacada1b3e1ec468a7f7d0302047c435bb5006830660231009c1ae2914a122b72a724d4ac64c5294f60a26a58e45912c94e1038e072d637e3d02024b225de3b959ef868bbc5fd3692023100c9cd29b4873c58007dce2ab9bd94f09f5336ce6fb107aa58e29d5bbbe5f5a7a511e526b7817cc753c90f11bf5040c3910302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100adbc2189905672d58d29ad2ebfe5788a7a4d83843269bd126659a20cd868dc3aa92da04ccda7fbe1e39d4f50f48ad8ef0231009939a61b95bb4d88b826f096844efe075a0f83e550ebae2bf17ea39d8efeba2973b130fe342e0d4e13ff5eeedc804d690302047c435bb5006630640230212ea4a5c518e69f79bcd081ec7b1d5320f672f899e4fee9dc74d0a634e2294987b16048b64ea0481bf2c4966ddf0f5002300e37cb0d643575a6135c91620a0740d23c1ce2dc9ec561b04fb59647c4971f4c0e5c73f66ef385c0bfe7a5fe58ad81ea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100becb630adeae6ff3be28a0e018abc065ede2537b23af882ebe9ad280df4f5addeb0a6084dbe8c3a78ffb78aaeb4c51c2023037670c73c3683f047f18ed9653a2b6a6f677db25e1654dd226014d732a8578b25ddff5a503f730ffa36237eafabb82e80302047c435bb5006830660231009a477e271d9e599de0b1ebdea52342ed72d33df01d3d7aa4b351d02ba63acc09c5a22c25b67f7b7931e92c541867f957023100a32d10a8f7b0334d0d65b3378cf98eef153c8cde45d536f238dfcf042178796834993e496640cf96402efd0128c8dc300302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ed3072ecce541c522375d1bae5144b755e071a1ab84504e078a19019569e343dcc8a785bea56fc7cf5abcdf245f1aa1d023100a2310775b3538b0b26dbbf64d52849148057377119549c2771fd8b4c34921cea70a61732e1a8b0a0499d6196516835dc0302047c435bb50068306602310096b04c7d88acd5ebc3b143d6bf70fbbf6c0d2803e04886c7c2c6a18e1fbdb43fe412f6c73c36cf32ec0fe73af8899065023100af0a0827aa5a28e20183e0235e2960899e34ca015bda8dcc4b236b9713abb68188bd5987a634e6f3cc126c028a1025290302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008d6ed57aa839b56976a6f674005f51b79877145461f5bd7de3b1af75b8eb9843890df3573fe8621471f16b668d95c6f7023048905e2c346e4296a95c8bdabff5bea1d64609ab08434da2c4a8811c9f7fe6ed198cf671dccdd4f6b05443b67651fdd00302047c435bb500673065023065ba7bde08db257bf1e7e29e19c38dd3290e067949dad3f6db5fba819165324337def5570ed3b36474a69b424587a4d1023100cd275c91ae5f75daee03bee681e3853751ddc8b32f1a59b0b908d71d631413adcc6092774bf28f87a8954ad50adab5fd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f023378404c0ce2b9535a2ae4a3fdcf7b29331db7cae8e72013890a0afdf0fe704ebbd922adc593dee50c99b0a06a67702306b019c0ef14523df5714d0d2c885ee8009ca5b74e52badfa85529fd3f8bca45bd0c6701ccc2114b55b30a8ad6a4d60e20302047c435bb500673065023100cfa75ade7ef51ac90ff7c276be8ff00751f1ee001995d5f41b5d0182b2a61e568ac73b49a7ca65a9beb6257eef61f5ab0230154722aba61eba09d19f90dbceb426a718a16647e9314008299fe59eec90c24046c94f2c8226a72ca2865b3833d0e21a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e2592eb2299e67426bbd70393e2b0bf3c0c534118b19bb8bfc04c6751606c3d65b0c8364dba2a02072f6ca85792ca80d0230375f85995b8015e0529ac881b03f784ea9af27cd7e403c447b769cbf6deb258394e1f54eea3f926b667640bc9c6dc1a80302047c435bb5006830660231008e0113bc5f176d3fcef4260f63d2bf406be2c0892341f0218485308d110a306b51c475f0cff9a6a6239c1d0cdbcb230f023100b3a005dca82133ddc96ee0c0656c41572de7c746731eba8847db1af77386c6c004a55f6fc70b8ed7fdfcb83e02387f850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a35623efd9dacbcb7ec95b42d294d3f6b3ad8d865bdcfe3bafa44006636d5927a90eb84e14d7af388183faec17c83a5802307e8a1227bfd4cf9bc28ed9fbe6636f337344823c6ce06ed5f0dc3f8ada355de2029ebc740dae4e2189f1c756c850591c0302047c435bb50067306502303d2dbfcfb8fb19d2880431c1a974b747fdb866539d0f813b168771a19f12af07f574ffd8114b2920dd9caff3a5912341023100c2ef19f1f40658ddc6e73d78cee63f383159e907cb33f64bc657a22b3730009ec62a4d4e3dba18abf7c8366c2e01d3ea0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230396b701f2b57805cebc2c2ad1df76b65e00e656848ea8f22994fc30f6a3c5e5898eda28b7f2132ca55362b91da95d0fe023046128b5211dab7f166b18a28bdb72031e5a08773ef98ec387de160e18c76bc46a6a1c6a8271a78415cdecd8cf47ef77c0302047c435bb50067306502305af39f04dfe9397cf99854227a36d6359b2636faa7dc8dae5abe8c843c11e286ad756ce453eb17e2914d9c409fe9e32b023100f25edbfcd38298c6e9c437134a6733f88e7f5bbeae00281727e3d83c67e4f63b80a708228ea39846194cb653a6d9c9160302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023074e47e868fb177757f3850f21cb2af05e1012dfa133481a685f9b7db58fa748ed0220289f353c1665c34b55438ee3285023100fa801194add6b3499c7d63a7edab212269879a20d7599ddf93cd692f93e70cda6f10090d447b87225dcb26db59e5a4c40302047c435bb500683066023100aaf9bad8f4881c474e233f7fcabe9ab411315ca47ba08e0d548dee47a8278c9bb78b936eaafed031df1f274434715d84023100894c693a3d60375f9f157994b79adbda584d4db20a1c95c3f6c2b9e43142f1cf2137cfc3b71f9a69c22770b4d8945ac70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fa4417296af77981ead913a5ebf02f28a866ed9376e4e94d16b4ffb0c035347e2b9c8564848101248cdb0cdf1311aac2023052f3b7b26ad0f80e6bb35578c5422e29c56949018d38e8ede5c2818c8593939bdccfc5cab01bf77946adad2f5d46adcd0302047c435bb50066306402303616e6306c8ba9b3f24b64be8f5acca20a52ecbb5aabced897a99d77ad902b050f85ec336abc5caf81cea249b75e780402300408283cc5e20ede20d9a3431a25984f34edcd0ce9665f2920a047f71ec5eccf4d39278878a017c5b018d952028b51c70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301f3bdb15293137dd55b98a95b82aaba2aa772651f2e75770425c0211bb7cd236368f2bd2918d55c17719b30836509ed50231009b5c576b9518e7f8cf7fd72c78c79830e0d9a35504266247c5119a77af53cf03eb9f3d39b39c2a3ce819073bee41c6580302047c435bb500683066023100b54529d59df1efdf7ab1dd9338c3b214d5405b0f8ed9e6ae73815161c95e2907b624285a9c234ce1f76f3c20d14e376d02310094e669c80bf0a8cc38621dc0aeb594e548bf6082ddda71e234ddc9b3ca6356866cdde21bbb504ede0324886f7b7b52670302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307e3fd0ea8e5ef523266b3a1f2d4c588fac45d6bbd3fe68e50b5392f1cc3271cdd4bd380f5525fc19adcd8d75712f588a02310085325e46cec888ecf87097d1977a3a1d77af87d69f87449302225ba2ec5d628c8f7feb6da2aa8fc42d56a1d95546fe100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fe3f9aee4a4871bc1fa8c9085f7aabaf81491de25164ac7b30f28baac664a3d6c8035037672dafb5ed234d543c06173902306a1afb477c7d0f28138e610e45ad6a4063e57f2d4a329d393ea9a3d6dfe5a0b9dad5dffc26762c06239357b639cde7550302047c435bb50067306502310085e6ecde859db43a32ab70ba654cbd02699d2a5ed71106e230e7b2f1b81b573f568a605ca713d67f161a5e90aab6dfaf02300b41eaa38683b2be43c637571dfdde85969c3decb31d40d155d121a1331d1429fa55dad7a3b57142fc8f341f4ac18d1e0302047c435bb500673065023042a0e3c1e5bd5b5e6723ca8caf2e0933df70f3d10971e92634c112eb8391e879841719ed59f88c2ed443be09eb23b498023100d355c187a1e2d13db2ce3130cdcbc493fab52db5bb393290e005c6c539d16ea8e5b01efd239d4947df916af93d12a4cf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023019bccec2ebba51e1bf3f14ed96b81e20acb0d9004b7b8f27467436aecdd9e5abfc4feef987c592a9988bbead6dc586dd023100c2e5fc34a05df77ef6cd6fcbb67272fc405649cb386ee1c79a03a14a11d40e8904e330d513d6d7075b813b6a1cfa2b270302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023000f137d839284ac56362e39dd057bd60a0d9095e0d47734b7cc7103003535673fef29cf4efa29a79a82ba5feb4a77d81023100d9f159ebd6b2aff3ea3589256580e7afd62a8479c20567d187cb87bb2b26e46169fad0bc6d8635e89b794ab87ffc5c680302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b52d76bf551f1eb946611740063fa118dcfc07d9f01ab2e673442495ff2ad7e4786c7b478525081314a0564f06644fd402301ee81911c7430bfe24e2e48cfb838b64ad308c97bb74d904be410b53fe625fa8b1a480b1a4859ea861676fb6f69b46610302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023079d05a153481f7c003a5348eb925af0abaed61c2a9570b74402fc6482086a10141a5a12722cb94a20ad38a1692fd56a60230330a21b4325e0fd394112748d476219b6031b1b4984f44e4e4775a2a71781779b6ba8168873d389474041e5fa37667520302047c435bb500683066023100e3d333d38e9196d9dab8519a75e9cb0efc72de76d35429e671d60b1bd79fdd11b47197fd180fa35f04b132c904bebdea023100ced0cf80df17d9225a786f7d26f47baf0c07995f6c562ea9b07b9cbe4b361454708a147e977171e86bf5370e3115eb8b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310092d49c54a26638b313e32a6ae36147d4dd1e03111c37a5d34fc9ba9adf38f0e88c69832bced67362d54acfb2b23bc372023100b37fbc1ac5baeef798b4a4ea5bed4ac65a194337450c74eca098dbfd2675da99162a2d80ddec8dbd91a7db16d45069e00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305fbfa2bc1f27bd9880239c7bf8f6edfc9560bcbda6f5d101f540fa18b5f2eccfdace4f82c3a40556cd3b3c6ce87ba07a023008d2fc555c9f33dad39b5dcaa40f0c680b3762e828440d1aef34f03e87d90c7b8ffc9a79ae51c7f10af99cfa1b24995b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300944be4612d81a26ddc974fb3e4da75ddb35c61672d90997abadcf7fc4a8c660b50b5c4c0e080d233f48bfce7b40b2e1023100dffa35b429c430a5cfbc73b577769b9faf68e6e3553087050b5988d33990b1691db0b618e8aa5623d9c125a0da249b4c0302047c435bb5006830660231009e38302e2d46eb86c6c24bac61a4d5334674cd581794c8dcf4dc5efaa6a3ac9f3028f7b29bfb255cc93d65461f0d2676023100f3c122586ed65792dab7d381747b11458cfdc3a1aa0617e7ae77c71cf942f0fde18824a4991af835ab23dfd1f5bf194d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a52262b66a6abf138e1c4d565fc0065732f271223e6a251de588bfa8ec901d181adfb43dd4d17dda7a3046e2447e012e023100fe319183fedc551044c99f3babd219d5decebf2ca2327d2ce16ba38f9c13ece59c1d9f13b382fd0a4da5d977032c7c8f0302047c435bb500673065023001e6739a51c37a621bfc79151818149eba06c56d9121c293b3bfb4b79418b51629db5a48c7bb74dc98693753f4660525023100ea5b845ac67dc668acb2ef96397196edde0449e8dafaa8985c9d065057f546b0385201c00c63abec34cf2141b4cd5fb00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f5214702ea34c0c4e49fc9632cfeb3bcdb814c14ff96fab67cc23739737ac75abcbfd6d6d120517ca4289f9767455e4f02310090b74626aa969cd7095ad28f13882231100125338f6edf16973c21b5b5a8135e5d93ffca2c02204d073bcc69f9a83dd40302047c435bb500673065023100b67d762b8afff237885b0103c02c4020ae4bae40d04d78c2d17cd0d9775d8e84d6ef17dec182ce8731fe5ddc3482426302304056011c1042cd08e9830161468cb41e2fb25975a1d4457f9650b0e80bbaaf230cd9ab7fc59baccffc52acecda424a940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300487a0c8f2b795da5b2079cd1e8c478d7cd05dc29df832859e551bd8a96f86b011c50aea71f3af26c7f5654d128817df023100c669e868f39029d79d0ba60b7526855656d022d10c534f95f96d5afd71e75a175ffbb3a71f62155955534108aedca5ec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100acc900c19e83c30a41900fbc16d913e14397582d2b61694ed79812bcab28df1a604064359f62925711aef092fb2fdf340230662d60b0006813c64e9058c2d674a9acad1c9ee6205def5cf875e5ac885c17700d7b12457597a850ac99bc06631ca9dd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306958a0c52a5ea6fca34d79794d9db1f1df7cd6c092dfa46b400ec714a010a828efca765bcc5da3664a9f09ff8d73d6b7023100df9fbe8994b7a9a6abc374cb17d4f8c2c11b6587e598fea417268dd1bdf975424c0729b35eaffe07679c4d5a68f7a8210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023062a4ee708dad9f0ead0f75182b3426fe438d0e85f80cd2f5c6ac738cc29956447551961d1421c650ef439cf3c1d81583023100a69e4a2ca62bd4bcd1203791a341e969b1a4f40029d20c70e5c9e5268b27704b3615e731bf21a4099b0f5f178216d59d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023028e693ef116364979cf46ee71388c13d8ddeaa1b7bf1590fd4e0d627df497ae05f0e0fc4272a9251114cadb6d6b7d9de023100b97b147539fe089af3790ca0ea393f5803caee1cd339749391612abd73c9c0d443fda3ae57fe18e08e17303dbdcdb1140302047c435bb500683066023100bd8127b5daf848bb9681aa689faa7955bf469439d9a4da93156a2b6b819534f61957cbf38c38007b85e87b8da2677bf6023100972c1ad94e51d491370a4369efce57526356846ba65ec7d884afdea2f8d1bfa27a4f8582743779c837953e702ce55cd30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d7f1cd855f263c61039cb8ae0b4dafdec0b4b6dac3ee913e1e893ee0c722f1ce630df8b6495b99169253e27eb7a7f074023100bec12cc74a72443935f92dddda158bec9f27e6431318a96a2ec2eb93cdc0c80011d9b95cd3bfcdd8486fc25f3bf873230302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023038ed7e7f1f42c2b3171792d11fae9e14e6b1989446e0b53223b9296a8b5fb6a8983ea88626d8154a562841825e62a97d02304ccda3a50b2221dd72951690fe7b54592b8d8bc03c4e79c29fcd7ebf51c2dd0d4983ab773805b2ea01dd237896b944090302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e74e131f3b591b9f96a2a34e124426a4a7d60e75104c52626b9219fcef45a92f27f198693f12f4ca44cada6d6f0fd51a023002ad46234eee26dbb738025e9b099316f3fb5a64bd4c380ecced251c4fd2e2e20a8ea4b30207ed4050f012c5a1e944580302047c435bb5006730650231008998b99e1f94627bd84e16c602f554e5436da0ec8f43bda964fd3e96c96d85bdaffbc9a0397648832891a7eb42f876f9023027adb23e1a9136840d1089c6cd6a051cf48f2970a4430c52a695f75247cfeefae4420f6d30228c0902fe67d8e5da169d0302047c435bb500673065023005ed744619d891a4c42962e926a8d4985a04292c491bd9aa21bdcc54ab34372adaa4bca4004a3e57507a848d45a9b54202310083a94bf26420a6151e29c5ce17f6ecbd7fdde700ecf22ae1ba3fec3984698987190ea2fd6ea92297d247f037bb3d86040302047c435bb500683066023100f5b3b2f4d49aff66464b40d69f4fbc02b1c37786ddc4e4b2e85ade4a75083d50d9c57230cf39eef019dcce5b074dc5e6023100d6712c73989627d2ae79677f04f1576a82698f0dc7f7d35912d1e53594e2d0392766b80771b4f27f7f4a1997ba69d81a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230487a13d0c4a494793e86d03be3adc1cf4a7cb95c69d519579722a782b0103ee2b2efa425910c4f1356041fe82aa89803023100ccd70377ea5b638df20492315dc81fa15a5d14a294dea0639cb900dde09750cb27c833d82adcf21551fc516e1e53b37d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230600f45c0b6334bca62f7b082686d896a7c274fa54df9cb005d26137722a354f36f9e3b765eda8259f5ebf2d4ec86a3ef02310082a65adaf1520ea8ed3607f8d0e9e68384dcabb9614dd674215915ca7a21119c9ebb420b430a960ca20c8340b7e08dbb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100be79bc56c13ca7a6774099e86017c6fd53aab7e3a75535a6578a06666f0338921604d1ca6f1af810e4c35cde15e7921c02302dc09b5837ae43e8050f91d552e6c92d889636c1a02a420ea261e9c24b4cf8ddbca2d231125d8af38e26129812847c2a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230790545f4cde8d9ea82eebbe237f52fd852f3ced43793f8d1e34a369663ae3e15091254bfdf712651ca84ac500e9a925d0231008c1bfc468ae22fcfe61b964ddfff22ade89d03b6049e0b756e77fed219480262dcd84825ca383430717c33c2ea7749020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231009f9da4c254a36c81c8c8ce547143ddd5b90e0e4873d21d8d4b9c58fd29fd801ffa619e03a898297987aaaae2449ef7f70231009c28d4e7cc9fb334c2812bc66ea4dc404d2550117492b1736e2165f7cc694ef4e629acc2df89ec315180c951744110270302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302cd8527bcb3195c56445b6ceafcb36c0d31d128da40ea911addd5a3fab058379f94fc7ebc989f5dad8fe4580196adeab0231009d35260d9e6b74e8c0af61e97f515703f98e19162d427161428d31d265b3a00289db462da06aee2023223a9ad527c83a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008733a247a6dbd620392a1aba274e8c5ee0bacff0503a433033a14a3d3a4504f5a529e5a3070e806a8321e41610e0c9b402306449c995d97576ccec54b472ed50fb8a125b9ebc243608589e55c1ef6dd721f748b8990939bf92761dd6e90222d46af90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023055615618c0607675718319ed5cadf9b8081e10fe58d7ce5e507d1fd877328d74013ef5b722113af5717e3efe17310d0b023100bd75b5a40650986fcdea2e58995c07af1146e825124a7dfdab7bfd107af0e33a04e5220a1d7d255916fd5630787d48bc0302047c435bb500683066023100a339cd0b9cc54067c6fa055be967db156b54fa660e64a47da738140e002b066cb1e8dc17f62b04146b75646104ca6d3d023100f8e6128deec0c8167bd027c1c16d0485ea6d416b71fc19f6baabf3b66c32c5a89c2cd2e7c041113b4079324030a831080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310082253296a9291a6f0c71d1ea76fe69a65605d752f28dc64552b58b1f3b4e835453a1b275009ed32ab83d27c7d8694582023063626841e7bd557c4522510e66d8ed891ad3c7804f0456c7bcfbb168bd3c6c6bbc9f7d22b039679736961033a402ac920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301cc11cfffb45f3f18a6a763defff95559d57e278cae1b631f6297753616f7d7b24c9f17924fd18d8436fa04783da7fdb023100faa70b23c98e168cb961714cffb3c1ecbf17713f59fd8fdfdbcace7b72336c5fe1a51aee44ba684f2cb4cd027d3b47e70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f159da4bf260d729fdbc8fd0441be78924914ec7501148bbd2c2f1e58b5fa2bda711a92a30ea1aaa662b8c6bb59db632023100deefb4f0645abc39910c2bb9232a00d0f5d0edc1ea291eb4df57a8478c4b0e247cf24a68ce35f4d9dc97d61fad27cbec0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300e87da67cc144c6f3cdb055f056a671526c0c3581d4d3ee794e248cec500a0ffc4d98bd12ada4f31f888ceba049329640231009934ba4b1411b102f0bbbdeff9da641bf9ff5426b960f655347d0ada365019e7cb8c78b68f169aa4437d8aba582c3b7d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502300e3499c0cdf3a56ed333221152d8811964cd92751cb8939fdb49780bc16d2a31b9043bdfa053b7e04a933cd57eaca7dc0231008915c1ec87f34dcba71a499b158a9f60729ca9a53f88077102288b6f1d14c699ef5a13edc8ac2622fbd87b2a6e53d6bc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307c586ff62fd78cda8d3260abd62367fb3066363203c1cee86f3010e328aa969df3ba89d5e143b55a8aee760357291515023100eb82f14e089bbed396c73fef8582555df08f64d145081aa4f8a6124655bda5f5929cb611c37b737ae74b4a83adec9e070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f4639a40cf542d8100fcf55dd6b3ee84010fd4039f27e643a401bd6a80a887fc7dfa863549a15a934045d1726fa7c97902300acda63edfcc548078ec97f84d3ba59f7b58b115aafa111ee431814b34b30525d910a625bfa1427330a28bdfc409c7f00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100fa7b16482229db4f91ea1c44e50dfa3279f646a07513cb312cc070ada5c438db1b6862463de9e9d6e124ec121d245038023040c3b54cc300b14eb6cd8dd05f0cebe1411d2dc386f2f31105f1a2405ae504071f78c2b1826abc23ba5411ffa31002880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305be7410af6a755544d1568f48d5da8057b7e4637689e78c6816a9d92f4a5823aef60c051205a7bbd69e5a22ecc4d6977023100ae4af32ad404839d66d21e476b383f63df60124a61cbc924ebbb3a556ee8b8040713098e860bde3a4560a2d7806992550302047c435bb500673065023100df2faa502a94c7e0fcc25061cb36457465a681f10ff15d40820a38e2aee3617eae4eb7a6aca261d6b45cacbe502caa9802305b11b4291b08b6426fe991df4a99c103ae11455ac5b5052dd4d88bd656eaa349b4a93351448dd1ae7f6a24e7e91d175f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b8ede6c02a64a391309610d09e0eeead3aa012bab3fc7cf9af6c8e90cd81e9db3250b2451c8d6741e08a81f45af60b950231008db37655678ed78476ec13844d187d6d31378202a85a00b593351c1c9b5b4308700b18b6572375be38edfbc878c82f040302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023033b0fee88ca8987b30f28c1656ba1b6416fe205efdaae51f7ecf0df9bfff22e33a4c9da65504a893472f6ac72088bce4023100c3e96561ba9b4f7c9a848b6af8e0d58e25cdfada41c58595582f8d9cdb5ac4396e60136006fd58923e426e1de9ba5e780302047c435bb50067306502306d344997eda3260d4c9fde612e6929a8a510cfd582124ff937e303f92241552c5be7c6d19997830fbc8e3c891820ae3d023100a34d7af9bdb1ea4ca45519b54a2da603798154bd91426282217b066a5ce99919ea48923aa9a54fcdd6a3221320e3af530302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c1d41bb7bd95240f741403d0b344cdb3e435d7c40922486f5074681adca8d82bf1a608496dd792112d50fe0a074714a8023100fad5b7d2b02f546d63aa8d03641024e0f787466223e722903da8c6bd157e5dfadaf8b6dd029fc14dc85d0ce25dc2ce1d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100aedec76bde1f1c9599cce02c2eaa35b8667c3c47ff47f51d6c228485fd5c6e710869933287120486f4e6679ae6dc50e702306a6ea4dc7051c2971ad17d08f15694eb4f2f34c4323ceba5f48ed682c8bca378dfa8e59ea6f51b21fa6dfe1b4b1abe4f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c5637204f9d9c75e5067a5043a16553ebcd17ffbb1582753ff11bde27055f72bc67a3996b3929ba86fa8ec7273fe9921023100d97e137f5494852d40741f4d6fdf305c0e76d87443b69ee41e557883131c226914407396c1d868b6f4c3191b631fb3540302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100b0448bf1442162e2aeb9110f93cf78e038a2c9166604b6d31be4cd2d77ddde0380fcdbba1d62dc0d92867575af1d016f023100d7ffccff85aec093fdae36f326c2ac3c8a50fddaa5c22d550982179ea747f22533a40151b95a605a39a1687e566d63a30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023071646def4492e04f23d3ef2e944e0d6f22064caadcafa15f9da8597dd577ecefb74baf102bc466953507e637b090dfd10231009efec43450fa116624992791f8574a08e0318da2c8205c1465b371e91ef2893e4206d0673f04a4e78825a446acfe1c200302047c435bb500683066023100eaeb28fba33565632fe330b466741df701b2804224c14186999fe8edd23bbdb204002cafb412c27f5154b4df411c9df2023100a0430bd0a2b1ac9afc96e8b503f2db069e4070eea78df6a12d8cf199461c9607f7fe4f3441b575bd184b24112fe9fa460302047c435bb50066306402300671589a6281ef26d64048db738c2a9d387fac0266c5ccc346a0ea2d2a2076e2b5400eb3ad11ece2ad3aa796803dbadd023028c709de297404f40dec4d33d5cff70b3b316a479c8d7669d313882e87df70ad35c2348bbdc9fb22e4fe121bb0bd80170302047c435bb5006630640230325f9bfe80ec89b826f05fc1f7a21e4deb9075fa3af4fe89f02cb9d787101879832e5c658a89fb90151f012442cb1bdc023000cbe7cc5dc2a0acdf410039ad054ebb5720235f035f9edee8b26a1cc3cb8a2e717f2b2dff933caedbc75d996ac200fb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100be3abd09fff098c630533c21eb913d89a7feda4af4ec11067004a0b8e4d72af532c385e8a668ae0b56b06b665d3a1d3d023100e330b0e747e7819c4a0afc82198919fba04c1765fdd0db394d5319fa3ab9c83d25eda365edbb3758f1db77110583f6a40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d533da54231f1f88133b19ac3afe35a0e989c37bd72bf8d09f0dc8e718bd0cc8583fbbafda4c4747500f74f94e61fdaa02304a0ed6ae0c646bf3a7026deb2eb9c413dce3173729787549c9d1d2586c10b465e31fc957e5a6eaf188b97f2a81bfb5f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230779ce133fc5fafbed09445354dca808e688a992f272620408e773dad752c8f933a5b1829f43a24703ab1518b9ea1b14a023034b812172ba29d914bb26cb4cd4d6a8fa419eced7f22e7b49d54b33cc962d30f313dd7670d19660e35444e3a3ba9f6870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310089557342f8bc6de8848c5f546dddd4bd84b4618720cfe7a0a10c8521f87cc98bc81bd92b6f8daa6c9d93aefc0d3ac6810231008d6e4aa6978fcbf1d9d079dca29024529e786058d2e5bdf093b071b9db6d01d36bbc651e3b05bbd081d2111182f8f3220302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402307d6123dc46cb8638fc3cba959d741adce11a9cf9ad3ef205ac5cfcd44576aeaa48e5f1f65acf6c0842d4f71c60c2b8e502307bcfb205cc75e18ec61b3872410fe5af6784c76be3fdd71508f93fb39e8d1d59ab2f22c0ff1757042643130410f9539c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306a106b4cb89e440f4d83f4f4d29854c1c3645a3e9a371d1e117360461db64b946a3089434b1acd4a01a99f878c209ca2023100e2c0b91ced7d11152537979aa1dd283dbd5d1f4280364b5528523e143f25a2485f3a4848ffbd192df63da1239c5f57a90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230779ce133fc5fafbed09445354dca808e688a992f272620408e773dad752c8f933a5b1829f43a24703ab1518b9ea1b14a023034b812172ba29d914bb26cb4cd4d6a8fa419eced7f22e7b49d54b33cc962d30f313dd7670d19660e35444e3a3ba9f6870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023051f25ba4669eb43b207e8b4420d6a575c271b8369a78cd8db8457b98d48ea7ccc10f99bf6b1b40a7c8928947995cd85d023100e6afdc340880ebb463e91d8fdc195ed4e2a82628de79a142754508f312dc2f3fa131b562df03627a0f52c235b89beeb30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bcd1007be5875056cd586ee70440856950cfd93ba71c5a0f1fbaa13670df3d1bda0130b876a58583d16ce21b6c907737023006fbc5b7e512c0c7374791a0f17354e764a706d7b76d7ad8dafbb11807f791b741bafb6ec20e640e67d5e6fc8f2e77250302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230779ce133fc5fafbed09445354dca808e688a992f272620408e773dad752c8f933a5b1829f43a24703ab1518b9ea1b14a023034b812172ba29d914bb26cb4cd4d6a8fa419eced7f22e7b49d54b33cc962d30f313dd7670d19660e35444e3a3ba9f6870302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100927177d7436b9a5fb7d2544e3b05c74c909de55f1e16f1a6950b1360f6bcf8aa23f31f7f4cdb708e449454c0da4af60a023100a77186903141e05289b9f8862057f9919ea580e4c189c43049cb452f1ae561350986fd4c83ee96ac72c1f0a89033e0180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009ba82ed994ad3506f5e605336fe736bd93b1b68bcdb942510b0b74ebb6f7e6dca87a6e840b446618569fc1156a953a2302304780b3a19486498bad029f7c4e4d230508c924a6eaf93d600130046c19cdcfca073893c158a93888cd3697e558601b6d0302047c435bb500673065023100d8be99da86800674757773d414efccd86552301f06e53cc0502cf1a4c2c62cbaa97e158909b6bc6a0e4188992a8a10510230744e60114722ea8c06533156b1479e9d9209114c30378ce1f3503107d66c02b1a790206601990d77099b1ce2d3f18cc60302047c435bb5006730650231009c0167f69ec3779c31e4ab0912f8cb3fe76d593d9f85cf46ec9bb50236e96f40568fd9de3c0f6c97a41e8156b73581f802306ea496ea56999bebb5ab50f478173738a5e412b5068b13e0bb7c8b6251173e62c239974a0983878b30e91f01145379310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008481b08767d72cbd07b6a70ee36a76e425d568d5c8e9526d43a37754f59cfd13238e866255b15991bf07c794ff7cc9c2023066a893fe49b1fbc9df493795db456b577cb35b4c2c56f8f8e15b6e0b37419cc9f05f74eefe3fb706e82e646666532c950302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305d231933bc3706d71b72d121e10739b04097137d875fc2c9a41bd4998dd636257a44d2b75734524c9b6d1a4a9c99167f023100d79d5c95f7b599068425255875880f0ae29569fd5553964ff47ec36866268279b1e6748378ee72abf47a43d7fbbd2bf50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305da347ba4cbb2f710dae14af07ab357a66cb5f84b315e7e363e6ac1a9d776339af4b3bf3a252110c8ce41dec70db1f6d02303dbb6da668a0b32fb9d3af37a2346e0f40fba853a986fa2be6ee67593d82b3f058a9cf2fffd64a51de5989e49fe1dcf50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023045cab2e478a892115809a7554210204338781347fddbd616e693994af833f08a7f7702360af7dbfa506786da112ca3bf02305d2271a0a59008ea5d317f124d4fb40871deba76c46c5933baa1dd08b173949b0a1b4f05d467f42202e18cd39c52f0110302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b17cc4e0d018971e2344d306dda7ccb3e96d567946fb738f6cf7fa803634ceb2e3f1f09b0d28fad1b219f22139b1e74a02302957d447fac7454ea6645c81ec2fa80e39c76a37c03e4ff592af1bd2739138e8f3f19e72b597053ff7b761451d1f5ed70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bf0a85eb63639763da4883e0cf085ea9c0e68257d7ebc4e55241a52a07e2472fc7471e20d7f62a447216a1c05ccbd939023028fe7f4118e91c14700a5ff976ed5fc173fa8ed0a1672eca03d6932c23377c897edd643617fee09ada314d722c33ae640302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008575eabd3fe125510e904601668a5b107d582ca9b174eeeb3b46737533401322fd7b2ccf5e902cfb8e3976f0641dd636023067647216d62315386242329517feca0a056aa2cf7c6e1091e5f090a231024b8071b479bb37630f7681b2ad003379b5ab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dd8139590378fad5f212b512a71f9b06fc5f94d211811c34dcc9a9a3206f96680b23b9c57d29748bb0e8a18e7cb88fd8023100e0f77c836a1bb20b1bca4cfbf748a77942ff451a9a3f805cd64b9b4cd644914e135ab10543b890d6ce8e4f94375db78c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b6813560d7f5d793373c7a3e14ea38ff0ee3f16d97de6134929a38206560cc47d3f42080591266b242f3d4a6e52008a90230565e5e85fb3466ead587364151b37ce79ce6bfa7bbef673ba1ca146792f3d00d624482a8a745e7f0660089d2a73f5f3c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100943bae2dde83247e05359aa5ef3f6dfdea89df973cfcfee7667f2304b01c3fa6b88e7c2b772e59abc371bed7d8b40979023100863d41573c723622c22c062f8562516d01941ac95b7937726622b6b75226cb4fec57af4278154c1e357327bd4f60c37b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402302a37f9a169f55407362bf45ad35cc0fd2be91ede8383dc72018fca49933b68f4204e7c7719a884eeaf2ad99c216ca3e802307369f1a3ee0e915e4c741b16cecc474bb256df7983b6bf5928ccc2c9f736dedc4849af257311b48ceb4785f2bb53b9970302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023012cdfe7c5c8062a263cbee2c59c3bdcd3b45c47eb317520ae5df350503cb1cd6e60c8bd2453288a3cfdbdf231c866e40023013b306871af2e299ebd53ddbb18c6bd51552a7087975fba319a59f6dc13dc099b53bbae7a5b08ca2fdc2c7f8e9d506990302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306034ed76f8fe97e34cab1103a7108e947e092215d789fb981f6d11fd8d77bb68d95dd6c3a67ebab6e5e69d24aa3a6f57023070de1c2c797f69389643890458e82c9e0977a161e9543fded4ee160c18b6557a360bb080ce959fc9a1ad585c1d6260a40302047c435bb500673065023100addb6ca2a2cfe34c6d631f38d4dd94373aaca3214cad3915a26bbfbc5c8deea8cf8de908907d78bdbd300d72184f4b0002300e2928faf9e18681d464d333fb60b4c17cda1a51bd27e83cfa5f3cbf886a100bd378c72c06e0ddf67e38246a3103e4d40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100990d29918d2f7c7e2308b114cd28740d2cfd11063adb208c8f95ff40e08f758fdff9feec40c50423752ac20a287e947a02300a166c619eb32b6e8ce0267ae846fb230fff82e7cbfec0a02f86e571c7a30c0c0e0246209b800c13ef4eabc169cc1f260302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023073fe7da92b4bfa5122d8c800182defdfe82c5af53873e4f2b4adff2620a4acadeb0ac23d61f7dd0f1c2d86d2b0e0ebd60231008cc49b4856bd95a3caf065cc8ba257160f1a9b9cddd859aa0903a054b8a5f7052cc388572a92394a03f9f369fa6877890302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f6cc3c9558fc640cc85f212b079966dcb04f70048b8e22615fed994482607c05527781aa48fa188ef127936cafd4d28d023100bbebcf56a8462762e189ee0e004121843135d14f718d87bd5892c40fabd007cd7d2efe58cafa2a02c3d06dfba14493730302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307b96a1efac3d2f88a9e131b2ed71040e872e77a54b9fc5666962f9366b2637c413507c150c42e484e129adfb3b7fd89c023100d43cad977c315799dc7a51e381325022e2602d75f88a1116bd0a0d6fa8c34f2d860c69e91dcc8c0c26c0a6bdf319cafb0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064022f7571153931c2b9cb6fa0fd849701eb75ae785be8cd44b197c54489d6cb2c09a9cb723ead56244a57fe91611766083e023100dcbc044b65797b21b247e0194bd8d75c369df54dc99d16aadcead8d69aaeddb648c30b2db66bac8a776dc9e8d38652080302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023040a5bdcc46cd8f05b0a33f0afeafe3caf370bfbc5c4478c7155ca0669a60fa31ecb94953d54ea792b123f1da7c9c700902307a1231f987f332f9cd509d3f8f0c9da9431c875ad99072b0d6b4d41517e47c9f2913d9a8b10526099d7536c1e1f27df40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bf6cc1c5230926c8cde6026e91fe66a88fed049b8cecb4041e4182bd495d8482248e12c283c88f315e504a1a67c67aa102307f0febcbdd27738fe84035738c99585502487fe1c7b672a6a9696e9840407e12d5e374131b1507bb067d29af1879118c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300bf24746f55b3575230638c0c9ed4a9ab2014384c672829bf05935db887b5ed566a851193ebbc4984d13ca3abf19484302303d725e40a96650a952ab07976b1cac3f10b7e1e4406b7c510c30d682d3f25a0e807be686d34277efafcaf9c3b8f4d5b90302047c435bb500663064023021455601c37f8bcb0f0e891a889fe64c49b47583c26ccd0caaa6afe7b90ebbd0b7fe710edd5cb1c5ef291cb82e04f6330230396f300e586f50c8e2f9ce42d992d738c35e232d390298522dda2fc022132f01a74a38b74cff879ee27e4d1d1901a4140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100eb511ac98bbffe0b37121e8f1ee09880442a108cb4076997bf32bf67d07a53ee018c405ca69b285c98b77735efc170d0023100ab7323ccad8f85ed10d0e8843bc0afd78061d8866d3837ffbe7db5f95da02fac7c524b259171e2afc9c81e54e3ef21850302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009db0b1e76f751ce97e6056ffb01a540dfde77ed55312d1383af1501a267e200b7ec9b61c6f1ff6b8f2eb4ab835e36cfc02306e623b07f374e4454b5b2146af91e4ef12eec7bd511830bd2340b44184e5336cccd57014ef42fcb558204ae7f5ba64230302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009ae85a52304011437437a86776e55e529cc1f37ebfdccda5c6280d45e8d359a27d4a94f1874548973baf0183e6310f7b023020d31105af84cc8d2a687aaaff3f47043f8e4d3d3f3bf0e0296e2bce64cf00e1342cc092b086db777cb2999bf37c0e200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d2b1a673c52de509c4eb6f13ceb8e108d0b1847caaa8f48684e81be3114b3804d7d7d73539c4fb2fbd0f9979644d550202304faf093b090512b29166c70846099962ee4ff5516d5bb0472f0727f736206ec7b93a5ff3ed5bc0e046118b5456c2945a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ea5c12d01ee078ba308209d0fd7a2054c67181848856c965531f3ae3feca4ddf162fa94ef8e22223b905240d976bcd2402301769d3120c58b29258e21f1b804846b47a8dc46c3913fd96e08ce5816ab3f90e27ae6149d7683cec50d23b078959065f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008f1c30b8f14623f52f8a64f2f2fba5d434d449181206de1ce22226a6eb402ee6399c0bb04e40ea7d2b1a152451c955a7023100d47670e97e767bb6fe2d73ab06147b80ad6614eafde2c5ffe3f8363fae56f9bf20183572687cb47cd4d1a58e2f6a404c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230668a3204dae9824ee37e2ffb85498142e98dd99d635e7ae7558e67cc9c40edc5d8b1f947fb47cf3ada839102f4c925ec02304bc98745577fe369c5ffc9d8bf0e412d3c7bb3b258a609c3f97a878eb68e8cd080a98ef62ee1a64ce23fcc08b211e94e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023050c7b52e4bd73b21c3939cdd37d47f6a2c60d8bd64053cead521fbe652cef12b1e847eecbe0cd97d0343c252c797ae7b023100b98a0347cef127d046ffd5eb33d35ee9ecd209a18f5c7dfc4cdb6449d980cc06c158a4171fbb2906df65245cea1fb7da0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023057a8e4da1f906d45d457f84480bedcccfa78ceb02bb6f5d58ea3286070a441ca17ec2c91352d11d313c7a4fb3e31451002306b5e16b4e9686d98832ae288a0f20dba96f3da5333d547376ee8710f57534cc75a79cae496a165bc2d418ae2ca1da8e50302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230147fa89a22765dec263596abd7d3db8a13ae232c50cd7b212cd04e90cb6ab64984067fe7962bce4924a9080d7596d656023100f9153acd53d826e84ed44f25fd4dfacf6358105aeec2d771a6d47b5cde5918412bbf6300bd1f6a4022cf12fdb68d23be0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303b7afcf7b141de87a8351034663f6f139133bc0140e64bb536877b5eb86c98bb3505f7bff7e6df2bd9e813196060a25a0230585142ab7cc44d3275f0ac8b79cdb55f98c354231e98eb9373babf8f77c8afb291715dff1e3c6e141de34fab0a34baa80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230534b6094a65e2f9bbb1169aa554487b102d93d5acf5cf01a0aa892c283251837ff0b0a2508f25860c1a17ebcaaa28c0102306b3cef915b36937312253724c701b3930c4ff2ed9e0e0360e83fe3933053bd498f5eff48c3bdad6d3af61722fe9f7dc70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100edd2612eefa1e40a772c7d22f6e316a8d087192203061b429bd2b01eaee5ac46ea01386f596fded10319bb1a266340fe0230241b95cdf96b7142f90ef01209e3ea4fb8b472ba8759e2a56263775de725eacc52b62c18eb1cf91e32b56b6c294a634c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100acbb3e794e430c25175b37099b29245a338aa71aec7a22cf86c9c95f92fd8970dd933912b200bc64aed4d41ed8e0dc87023100d3578c2e5fddc3d6ec377656413776159d71bb26c2fc0c51b51361550576ef6da688adcc277cc1e491faffb17a8a350b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230577e717f76d96f8762a80913c23cde6fdab7e6db49be79fc20547e256885e8124ae002771e8bbe4828c36cd42901e4b1023100857e56b15fe92ae51f93b6094c9d2a9e0f960d7b7c8f27096629ba20c13171f0ca3cb9925e34c61f1bba8737ec6b5fa80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230343df31fb6c362edc590548d867b212d6b12ed716a3b2c8b69c3fc622b11e68d00864e5bdea9dd35b759a88ee997be8e023100b7ff25e02a7a1f0edfc7c5a6067ff7892380e89f82b1f0b77a6a011e999f0924086ded639a7bccab0d284a4978ef3c600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a09a079b78f4a4c348dff1e27a9e9eb0a58be75647d05d081ca4275f422920e5d331c6a6fffa27e8ae33bf7145184ed6023100b0576a3c72b954e0f6bfbaaa6952a403d81eaf423f0d8d1b8e84faaec0889d9823aab59a5dd944aa27e0b4f04075ec570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023036580b027080a89e5d6ca241bb0901082b330b15f8e61505f79853778fdcb07f91e0fb323a05877e4addbbd337fc14f902305f75f691e3f9d3a76536d73c27390014074f0e714136704de9cb0d821e80de199fda8b6e3835318cdc29b24774f0e5b90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301abb9044c130aecd2d50b960574be464aaa68aadc0f7530433f25c75dcd794cc046d8827693f9adcc5432dd7d5e3b8b802304c5ee4406d8734fd104cdb0a95758c08b3cfe3efb7e82a4c0dcf342d01217f7c6a1efc39ca837f374813b8af3d8f77180302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a69245b16b922126482f1399f92372feb8e575ce69d36825aa2ad15e1918db205395992e89aca2bc9634aac5125569b60230597f445818df2d85dd7ed50f8a379520ec70ffbcd0d53037fea5d6b5664496f47e6791e8813661708fefd7d21b0941700302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310096b7c50ec9d3d2c60777c5823913675935496ddc2193665dc2e112dab33a6f91211e4aa6d20e32a019a2b8ad834e20e8023100a7bea40de5c803dc52086f3e790bf20ca3e7ab905cceee49cf1fc1a7ee735e8c022e9d23287fe736cae39f965962e9c90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023011b88977d6cc3248a4d3e08b94353301c7a82a5c6bb4623eed927153459dcdfecac7288c2550f6ba9d1a33a40566c6db02302e3a601198277a898e4af12e5fffe87cecf0aeaad11afbaf50c504e4a50664edcd2ab3f350f36af8c6783a0d071fec320302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e98cde44e4d88b8f984e900a379e4a720f9b9dcaffb0504dfd00b82f8a19acc8cfe404577e5844a73e11d0b14dd5b1ae023066e59f3fb66733d7774ef68da6b169a9bdf59bfb92c479e63c3bab82e1c8ae205e4ccf53b81ac6ecbbe4c9af9b59c9560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e89ea2d9f38140498253e513b8136fd8dfdc399fe70e69b51c57c9bb089686ecc9a92712f279e7803553e34a512bd91902300d898028fe61103bf944cd6749799210226a83b1b41e4f4cb1749b76a6a9711cab630008c3b8e3a3ac8ce879e16f6ada0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023029ac3c13e083fa297eb3af21b8a56b4c255bbee7148eeff089f3fcef4edc615621e3f3f46fac68a45c97bf3fb3db2af5023100ba3900b1124d963e7236921a19fabc1241d27975e531eafb44eb31d071a99a6ff11d71b049bc4633cd8a12f27148d08b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d01e33dc42e4abcb7b77cd1e89c8cc44693b37c146a8af1b4e655abe838104dfcaa861776c3fb34f50d82e6dd8edee7d02300a0a701750eca19a6bd09e437edd05d262449dac5fc4a51c04fd156dc9f73f3c58f47a1c3d729d3c5bc07823c1950c020302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304cb3e71cdf89651cddeecc052f88884666a07f53b988e1e6e2e6ac39a54cd9d38a706ae4ce41c7a4939ded32eb9996a6023077cf8dccb863820e0913e471976e96cabf3cde0878c8eaa4b8beffcca886ccd991ae8a74e259615baa5bf5f7b8d7c70e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023062ab48778f4237d2965d254f7675a23e00598e150812e0a0fd0f87660fa073f6eef1c2b234957b9d4d780624ed17299b023100cd16e4561e917241b05102576fe31249c2948e11c5e33ca4453719e81f3603dfce49d6e6ceb659f77def2807b510d8880302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008986282b602cfe5657c2292e3d74f21f19835c472008a2183ce99b4342496e77e23cdc39eaf72431861a7e1a405ae4a802300f7be794c6d9b03d7a03fe396e93fd8b685b7352723eab8f105c1fcd7e72734db121f4981f5b8bf23aa336100d9ae5070302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305fd8b9a2630405f197686928596fa6f985f20769614010888350347cea4c6f77803a6c40cb0f1a5ab942aedd601ef0e0023100fa060900ede76933838bcd9eea9e8c8e408a02efedd9f35cba81200df5138bf83ff840ebbc71303d5568a3a5a48c438d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230518bcc01f5c38479701317a8e3d4d280f22c6bf14363fa838367e13c0e31ff792252bdd40959e24c3c44a7f056ca424c023100db5bed5fcc7ce44be36f5c76c857ce270824eb7cc5716a7c125e7257836d44ce9a8adf6c8a640b72ec4e2e25184c93be0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100bc0248c8d0cb9111e9e3c07320c8956a5525e6712a4b8001f908969128676dab06e36d15e2aea18524f44f9e882b41c102305a2d7a847aba0f49037ff90f289124b34328287e9a276ad391519420d0b7961b66d25e73c382e972c20b6b3b13aec4720302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100b00a8c33c767f86333a1a6cc7c4ef1bb8acd322da5ebd4c23b32096a925820cad2bc7b8127552c5f0ab68f7cb39c799a02303373f9c27250560e891216dd12b9dc119284d0730fff21694cb21e68013d546a0d9b4badd4f78c7ae378a4d13c9823860302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100dc4f023fe265bfc6431a8d8e820f974adab14bf9b01af2cbdec63ff36a8f1b6fc0545f8fbef237cf5f90f40213a62b1f023100cff00e762e3829fdf0cf933bf59722c52d46402276379db6dfdec047d774a970c41216493ab948c77066d21992cfce760302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100bfd40c09a62275c0ff4abd52bd2ee395d0d1ecd41cf7c69a4ea291990a807d17cee62fed6762206a516e25231aee79e50231008e6d06793b4832d1a53b5e08bc70913ae66cd66e8b77e820bed55fca1c5b7de9ab1349c259d881d24534ce8f846fd45e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009088d503d182ce7bb788658ccab5594fd3c99a951bd1bc84cee35ed533d97ea60ba3803999fec8bade39dde07f9be0240230788cc33385aed6847584374234703c6984949391dd1fd6b3d4841ac5341331191053e91584289e6ccd33c3561f5d9cac0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023010d86ea83c8ff6e6cfa6c289e0dcbb620ce2b0dfeb3ba62f2ff88e0eab7468f83eaa655405ad99d7879e212fe14fb129023065d214e634b0aaa28e51a832871fc0b7ca2e8ea81b48351cb03b45307c16887406bffc7a171c5f18c16ba2b3f4f8f8b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502301f8d07d2a7f5c675f668ba6b562566ea09af39c129196122318bdab104db925f100fa7d38679a1636d7b8561a0be2f04023100cc9806e74ad8675574f7c871f0476475f67146071e514c25b73c6aec633f1e5f7ac03e74e19d0c77a6a1ccbb7a687cdd0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230688a0179540b082f5eb4d913145f248e4528138a006e061a8fb73f4669772d580e777e72a8904d79ad24944f90c443a7023100d35bcf093ee1eac21f8d8b0afd040bdb5e2bb26310ce999f8c50fc50b84728c9ab81f387d1e557ac4e610093570011370302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ef275a257a53776e7cb38ed5593c1f53c71f22385243f1e986ab37eb2cab74e1f74f14535f1bde8ca1faf3edb3283b1302301752db2d3884a06725828d5a26c565defc55808aac033c0e75da40460030b6e3ae49cccbaa0355b0e5910fcf9c33b9430302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d2d9ad841a9d53910ef8aff9bcdf27c7c3aba3ae4bccb6d25ee2bbe49e0949f0e269c1c5c803cb803b6204776f3835f0023100ce3fc92ffebecbbbbf440f42b410b0066887c829c410d8d1584d73eb6755108b75e0c55dbb264d407e129251f5a8074b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305e3bad72f592f37be1b758182232764d8cf1992f891ee82c3db83d3c68d8e6ef7163814a9c195b45a3986a64810fa8fd02300ac15325936b01d97f02cd1f0cf20b93dc002a003e8749bacc4f71a668b55eb441f342d53eee15c4f1253dbfa0ac6d7b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023072708aae916d1a2ffd6bbe9eca464e653bc59f8aa5cb9b03e269303a6440242d4a42ba148308e9b5719a29a52848f566023100e8fae7a30b4013a80979ff13df9fed97f270a989c9a7b8ccb53d3c1c104e10be2406db8435d223fe5b3a891c779681210302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100ea39869690740e909aa4e4fef32a676647b73cce61c8172881d4a9ee44011267ab4b6172cfce80a5867fa7d1292d9d070230220b53cb7d2149b662162985db27a5094904ddedf75042c91f77a752eec7655c1c28de74790305ca6214b2fdb79172600302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023035f4a411c6a75b1a1b6c32465bfd86742245e6263e55c23f93054c2228433573535fbb31f7e3edbb82df4ab9d0a068640231009f1b734ceca0381a5b41bcb9b3a6ceac0ab0d9a52874f6379f0ac56e3e6d453db32b0655466ec3ccbbc49d71b5aa2b2b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306aa211b1c136a26d2b7e851d1dfe140f43a2908b412c6006df3b70426b64c4a1cbbf92ca4d1cc3c7b96751597a6747ab0231009a066101993db5ea5d25c80e8e7b9d8870ad183af6ab01b0f238ede1efa3c75c72c7c44ff4213f7c0e65abf3b5ff5d800302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cac1b50e73a2f832e0514aa04b5b25333bd4554859eb87612352bb28a2025a9aafd941bb0d212336b186c3389874cf580231008bc717dc2364430fc97d27040532fef09ce12b1d5c12fbb0ae4a805828e1fe4b9021ae57ec8bb8549130cc26ce57a52d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502304b67696fe7f3f411de069c1be25026c321b07113d3af722a261e1f1ada9a13b043cc5e35024f190d355122a19ae3887e023100c93e2ad29ea99bee3b311d33fd971458b30a5ac33bdeae4eb17de2f7f0e3d3051ab09af6c8a093a41b2dae1aaacebe9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230355ed25e61a171fde2793cd79ee191f19fae23f4e79edbc653f733ee8603f42cedcc5ce6549fc056deb32afbf230a0bf023043ad2e58124534a39c474630655788397a7d2cb9fc443812551d28bdbad0a20f233043b1d260256b16c2b43204deb1140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008546dadeca165bd1bdf0566d8271a09badaa80f485dbc25242f0df6947bea3fcd093ad3cd3d5ceb33ff8740bd93ee782023100ec27534d38065f609169f97d8310e48f69726e3944fea8964ba21080fe1134962aabd19b39a0bbff3f4521862deb9ab80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304844fc87ad2d4586d541e4e371b127b3ac81929b85b6466cfefee309efba9140f9cde16dac218aa0c2139ebd8cc7262502306e97b3ff26d45ea9753917cf639b4f3162d630f708ee1b84fa53b69e822539d92b426ac3b7659838e9843d6c4532f3920302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100edd670726e0a60314dcd6a50cce563a2b6baf1eb191d85f9e9d2bcec7b55b5c78e444a2655fedf17a910c8b76ff4252402307be9d2bbc5adc5f1858ca830802cff691c204fced8d816d86689944f893e55b324150c95213b4a80d40e7028eceabfe20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402305d8b26725fa50797a5801e9b462437fa5d22e8f03cc10133eadb45e8504fe4d92f4da05ec189402d20b5b6f5d619746302304885360a1f698f03a9a25ea95a4e1bfc6ff6174e743875c019c5d30563097a8066d68244fc0f22e052576b365793e2f70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402303f777a595174852dc24566a6efccc4561ae768f70279e85d60b1a4290666ce95d20f7f55a9a59fd5fdcd696aa3df0a3d02307a64aad0f11ffeafbf963498744271ec1f799e0b9c9a416b41b87acc164b9e4e941ee21b4e32abd62a884a43630340630302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306ff9266811f93cab32ea04830c5674f3f811b8457f115d95a0c9c33ea3dc2e9c7db7973379fec12fb643c908adb9eb9302305886633a6eedff6b84db7787fc2f579216c7cbb8039020798a60447fc6bd1244ed23bbf4757db546cdfdcad5d169c1d00302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009fb845bfb15fa45e98c4dd1312f334870fbdb40354446b8b73b8d767e890d37af5b040c157526ff8587ab1e5e0bbed26023068b67d7cd7abb88e9e32401a82522c76791298146437cf37be87ecd373993a9d44aefef8da00683a3785958bb949777f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023024d92460b3dbee5526d1d15ddc862acf46a24a8a9fdd1f05c33e1418444a3170fac9961a3bea04e4eae8442b6e0136b1023100d268298ef5817cbfdea663ed60d742ba82c87a1caed245b28e36941698d962121c7ef2fb6a3885e8dbdfef8ed9873a2f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023047d6f59bd01a728a796eadbc3ecfdb0ccf72c77ad4ed7905e1c14f38cb2481ee5176a2434e52b557caccf34bc2ccd0b10230496a119b1bbb008d6476d6267a789bd75be848e152cd4600f83be55552c58b31765dd9268f1c67049fb0062568c763770302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c0391fbc100d6722475842df91f1a4ee19782554ba00b8ed1c02fec5efceffdbb27feb1d1664a98fc225578b8a25a08e023100a2e682f27fb235147fbc0fd0e19266294d1413c273493bb59cb333f8103d4e6d3f986d5407e49850c7dc8054855a6d560302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304b50574aeea164d995fd2f8b2becf7384386b58aa6c39edaaab4e7f6d65983ba9706c78a55d4c1dbb6a6e686d5bd324a0230532ce4ffa480ec56eb2004847d5c678e569b02603c0973452823e0efb71319f6e9ec830da1cb7d3ef629186dc52726200302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100d543e8985f3219cc3d408ee517f98bb284efdc5297254dcfa5cfa210bee53baa259ac35ff0a4436b152e3ce776c6e0d00231009ada37aec98f4771ee5851f7f4f95994889859cc3893ea4c44e59b770b0d85ea30ea3141dbd4141bac323e0be1ec22330302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230399fa1173d4b80c3398e5183b1a1376bd191ea7a3fbac3a2c6d4001154de3ae18b65273f222d62473e618709992982a00231009b8ee55f77cf967c6ca52265ded803a0113e2576a42a33e1e1ea0d34f69ad5f7b9896c3a3b3ca3224b89f1721b1e4cf90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023018ff23da623dff1010ea2fcf0b70c616d336e7e90258ac426496bc003b7abb2db4dee9f70a055e696201b8d7be668d5402310098960ce0e888b082dbd2cad1019a7310250ae337535d151191d90eea05254352027a320f4d29848eda53ebd95bf211280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502310088308105ef3efb72823706bc02ae41bbb993556e249d08ddbec56a9fd058a86f3becb22ffa455f2800d2758b0c18b5400230321e5f26d3b1b5047248de5d649a1576daba84b62e4090195970c631f505e352156ed1c73d205860d4fb00bf7a8f59e70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a4aed19f14080f6d5d2092e6e5cea58fa8b09a15516fc9333c7fdd73b0f55d61d08a533498e9114feb96f033caafc6d9023100d9f81f728d0765f88ce940c419cde8ead8c6fbe0b29b93f1862eb0478c89891cdb8ebe85097ddf846fbcf4edf8bb02dc0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502305d0158646621982304f66e46e8d317a38593477c24099a603098024830d1257331e79b50ebdb25fbbc3d7a0a70ed1542023100aac5c6e4260f606784406d1486b23f500b7cdee976f58b5b00a6adcbd9dce97a35289a2ad00dcb982f0694ef2afc94b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023062847054f9d984d2b0a70ce2b448c00fb325ebe9bceac2ddcf55e01ea3fa912e5ebe3f7018ae5691b3706e350511f11602307acdb27fff68b328ff76d745abc8e4a29b47595793a348d034a74d21c1373aa82f068f70579cf03e3cfd49dee98313d30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50068306602310097df9a4cc4e7f2d5762e60d13fcde0ee0fecb7e6d9cff9bad264d21186358f5e34c0b648f24866dfe0ee373d5a1e9c41023100b218c176f39863a51a8b124c82f0b6e1be9c5994bcbbe9b2282ec77d2ad78a65e645de945073dbb421e757962e19902d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023036acf52f032a888b561d07cbbb2243d2ae3d2353286b622326f495915ae522bd43c1baf2a61377f9b6d947f4396a294c023100838f6072a0cef7b57a620d405889d7aa348dd8f5c3e7da671c59ed6b6cd6667c72094310dbac0df668d7ec6563c953ba0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023056bb167ac2aa79e8ea935fe434c8e5eca6d9c42a287f7a9cbb7923f94fa8893897432ecf349eb9490b11dc599d57d55e02307b454ee9730ec9917335cf547f162f8ae2d8e018cd2fbc806e8ccf35f61469e7d494a5a54406e1c71ae6b58f081eed840302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023052d33a3b0848af5728f5d4004372916e88eff184f25bbd76cd1c3eb348c9a75f9b3c0269660cbe0e150761b572149f56023100a246b1d1777fbf9a98a279aae71742aed408d9d28b99234cffe4add0beb85b050f0acccdecc3d075c535c7be748483d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402300aecd585f6d55b512df2794ccacd4760d3d0074b0d69cbb1feba25317948f951d3cd5cba3b35a899951dd6fbe71f436802306ea5e69557f761040a8c8701d1f99eade25da376d54f7adc347bdb42e8a41a0a36186b53ce3466084195c83778f12c100302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a4319a6efb245ca05641d9e93f2077d079313170a04f909a29f10213eeb094f4638bdacd49b73608d568e748f838786a0231008cdf196663b5dc091f104a57329290927cb670a267f2347b04ecd84ceed4e5154300c1ad09c8300fb63ea243371eaaab0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100fcd52a4ab6f6f15897dc287383fdbf842eac2b8704428b44e6f19be65954aff7f2e282fba0fd866a1d22232a1740ef8c0231008036d57cce8a8c90e848209402e5279e94e5912373a8fabda8b37ad170fea51d7a5573c3cca270d36aa82ee55376e3280302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023069582bbc78da4a7301ba9f96766425986d074615bb59a3fcb07c6df9713b3a153cd2d97d252f0a697839428a9d378f20023055d7c15ef2516bf20372e1862b185bf678f203e341053338a5cdedf1bcd636f47ed2580ad00903f120a4e23b51a36b0a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100953ce47d6d46cd5f5954bf7e512a48e2993ed7d2c8a304c147167f7044becec52b9d10aee186ac4fca6be17f4af14b74023100a22041f9edc93cf8358707113e991b89b6541dfca575514fd2983941a9df53ff8cb02eb580fb3ab639c4fd7ac1370f3a0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100d640be57b39daaef810386ccc6fee813ea916a0aaa95c49f6ecd57b63b9fa9ef981c90b6c92e4e63c3612a7b50f3de5e023024ac265343350a33ac7410cfa5db38571a5610ee0f22c96d2753f3a867b1f315b41cb316a4d5c39c5ff52ef7fea6f1e70302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230133741b7d499a411185858314e546b15fad043a1c6b4b2d58c52b8d77117e4be351e1168bce0e4b1a6eb350f3a5d9a4f023027689cf092760648d9a373103d959ebb6d6a49d6ed183ed84683d4ba4b8ec69abcc866357e1718bc32bf83bb516b032c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100f9630ccfe0fef6fb0b7ad842cc54177da57259c3f5310dbcc81ddf8eef5a487487b1d162c67c31eab8b1fb7b4d619652023100c7daf2033f0ee82a2158ea5b92ac7483bcc64e9cc2dbdb28f3a9a4c0d5047228339c6244f5c0c7157b115606bb84ecc10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502302f7881b459f71fe1b18801e29df9615297cdc89f5780886df3a4ee482de97f522796a1bf7e21fa89e03e35bee63bfd63023100eddf1d01e99750419b4fb7ec44eb0af28859db1b9f8fa89d80ef051579fb030817c12ffbdb62d4cc7a874c8e9307fcd40302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502306cdc4a3fdacdc35e91e57c873a50f789b8cc2a053fed19be0a2aeaec855d5bacd53c43792e85bc80cfc4ea585723850f0231009dad16d06652312043d407e3d0efadc7bfe459d594a40f5a85ec65d46b59be5071ff501987e1663943eae23fd8d3b1f30302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023046f8a7af4cd757540281869c0182879a1e4a39c1a684fc7220c3dc2c9becb3ba2f06d1930a517e99d411e471a26788730230268ab375c79a17df3d93a3710f0fbee37e302904167f60bc223c6cd7aa73f215f83dbb572da903c0cb5340ada180b0740302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008c3c2d51060950d9db38f52cc39457d6b7fc83fdb00a51a8c92519b277f3e4297f7fdd4a4000a0fb79f447e351617f5f0230173ffef82366aa4045fb8f966c5e56c3ede5eb0a326276eb448267a5648114290f014b30bfd423a4f567dbe8622a53b10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230350888086b7b49eabee02e24e89409729feca62101ab792c2f7d123335761adf4aaf91796b6d84bc8fd5f282fe2684a10230547235d4fa6faa9e5aed15323c9c07187e62542e9d9b4323edc11edd76572c28ba380d146e04c3fdfc57e5561380814b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006830660231008eaf808694b0801f129cd886eb6b9ade6fb47fb1fe39c01eda2d1d9781b2c3830c73a957adf90e21c774765d1f5b51ec023100f28ceeafbd7ff72667ff85b8830228a3bc1e6081cedbb64fed530343cc92bfdc4028dbf137306d54d6723a30a53d6c380302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402304c62b4ed6013c35de651cf92504182783bd97e06b60f1dbb4ab37a33dabcc4d0771cb7674ea99fed31c73f9f757e2092023024694488a27eacd498732ceabe3b9cbae9e54f599406ea7064b013c307b7b6cccc9750af49210cf45416c6a10ea50bf60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402301d720aacd1637a296e68f36b909333423bf4fcde56e48b211cd28fe094a71cd9582cf2f963b8df346bda14778a5cb7e402302dbfc649af9e0fe00ba71ea2fd7b26bf0211e7866e3b0c2c22bc8533a9bdfa368bea97eb87ed83653d6dc66b5fa6f46c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306623f54192d3be87f03fbbbc6faa328d518127c7f1bdae6f599c6f8365a6e34136f851582673f61f40618de6c737023402302d1c3e6399c89455b710e6dfdb34aa9df574556bcf98606c15b41b7f66412b86863b697fba3ae36f05ee4850b9069fd80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303cbc5fb3002a593da7492b061acbbae05819b7e15e3f451d6d8282cea8cc6f35f108e03045db3d04402a047ba3fb36f6023100eeb65a73a62448712efd25f0a69235060f8c8b6e34f6d4732779bcff144bdb0a074d477fdda96da9d46c6177338982b80302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650230326557821fb378f5b95d3987560118347493c2a249ffc39a0104867e53bbeafadcd9355b92093a2725124c25ff47c4b6023100b41c2dee5e33dd402bc14ddd0ceb7e5abbd57f2d644645bccd8a8ac0750401f2f4aec1e55d3d3f3f47709073f86a09bf0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006630640230504370393f2ccf49275474bb6d3731a04464d0c351d209b19e45cb8270aa0280d3a4ed06483d99f751d253fb31dd141f0230543c859a92f152e8773784fd7e53d08d2ac4513f1391edee82984a1f87f468fd4b71bfaa922d05a7b48fa5d49324981d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100adf6c84ee0a1b65b4d013e14de9edecc5f59147dc349435d4c60f95390c10ba45bd3f2bb7d69b0983191e09cdb092c8402300c97dc7136c552bd1a6acc58bb7cbde21a9fbaa7f53af67ac45bd8a9631a9c09971c7427174373ae4445477e40f6f1d10302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100cf052df751a51188e0de6e66b367f169ce90ef3484bb0ccb403fa96de7626d9fb295bc43093681ae0166942c19ebce3d023100f6526d82eb296ca6246e094353493c4c1c44fc78784254bb8e4eb126fb8a05f591372b8bd80f922b9db2f560288cd5340302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100cd2b4770cab0447fee604f2d2a3718cc48096d250b2bb37bfd137498215d22d04480328e17ee84e4af55fc9393a1cd6302301e3835d4f1aacb8737bd0a9b999da4411231ce1f5ed5756edb33965ebbcc9a798393abdc70e90d0206dcac9b4e20939c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023003ca7909dbaff72fa11ccf064fc5487b0d8fcef68d59204cff37d196c709ee9f09389eeabd5ed3ed2790f731a8990f8e02306b24f61de401ab9cb84c1fb8cf98339b75c884c84dfa2b36b97980f8ee90751ca61060febad4b054e6c8baa92dddb21e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023068b2b7a32bd1a25ddd419da95c8c16f032166c2256bff8633aa862e9afd9299d53fddb5ee499840e47fe1579011b4dfe02310088ea6308dc6c6a40d3faf43b55d8bbaeeca859eaae8560e67ef868f2bd9e21456cba19b13ca814c7e6c22b55e61b824f0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231008733049c3f3ccccac4dcb8927b4bd037bde904c7968bb037a382c9d1abe8e6cc64d8e7e692af17df4b4238ca97dddc3002300cd9341a5b108907093014146731f5318c0bdaf7bc7fd7d77dcf2b1adcedac9054e01b0a7246594946a21b9c85d45f570302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023072a1abffbca5b65367cc05f7f6597320d6a0ad08fa9742343a59bc4b774812243b1fcb490ecd0b01b597ff2295e99594023001a004deb0433abc89eb8a576838388d924a337c525c497061c41679a61bf12aaf907911bd48ebb0131ca46a2496afa90302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100a53e987f017d055cbf119a9befbe93d98d707e4814b52ee9614ef0314056875031d667a0fa39e2eef311e5946635ee3c02302a55a0dc62e80d5986fb2166243852e800458e359afe90fc2eb40285c613a5cdf03d80a78acf7bb930d26999d16442d20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023056fba077869c2522c348141bbaa5c37df65d742ea8d5620fbef50a87bcecf6b6981e725be08337ebcfad36b53870da21023100fa75fa174b71956e323347bd8df4593d58e89e5d18aa86d9cd9788a2b245dd029115242af84d45f0ca0e7896407afe1b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502307a81a7ab636b00d1b28174caefb80921a48dbfb0da648fcfc89882e7f8c4863cd3f888369f799ed8ed5634d71690ccb1023100a6f35baf7093a07a63d50787e13c584fc3969567c720c27bec42976fe570f7ae413b4f42192f289c64c73ae0d6c52df20302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100f87106815d3bd33b4acd4ebe5225603ea2ed8f04164613c103cfccfeaf244a4b01e6065e51d1d367ec8359cf26d0754502306ef280f382b989e28d3aaa8b3a4b689c93effc4e8f3ae8b216a39f2b323a07cc532315a4762569d8fb8caf3c57e3bd520302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023033b0d236bdcadaf0dd5e55ee223e4dfb2a23ae980f22e2123732d8ecea4755a612ff57e42ec602653293366c8161590c0230368c0ffc4295a19e922a7fd7ef06092fec64161363b9f37d548bcd9eafee3daa8a65d7294b36acbb5e7ff91f9cbe91d60302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50067306502303d635d492c7047a8fcb98f7820a8db28706b5c9c9f1339972372f9adfa14dde2efd00fb07aaaac5bedc2bf40d29fe108023100a19b25439984da3629b9c634e3f69a33d67c1094930addacacf78705101cf5baa99c2e96ce0c72210eb04d3040b41b1b0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100c3b1540c9e520612dc91ad20b078985db1dc2283c069704bd5881cc910b6eb962fe0de94083d817a01bba1f185f753d10231009f530a8f929afff60d2d4f8dca76678fa7b2fee331f21c1690d76e2960fcb3156a49be4a40da16f185e483df51e1324c0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500673065023100e3635a066f0b70e1a930f2a4db31241a37faee767332f5a5cb9783911a07e6a2a318dedfb485a50fbac722111644cf050230336f462ebbd1883bbaf42708619cc9265dd530621308adb53503ad19236b5ed68c4ea92b09fe8e7ea92a4902b0c7e33d0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100ec29d821b04c0329f427365ace64c9b5d49f0dc2f2dfbe01bb2be12efac8d8ca30b5414187e438e182a2e5c34e4fd85e02310092cb8e8d114e83ef51fd1ab9bc94adb112e0a1b6b2e21dd208d4f27f04030704b1b2d69775d27743f2d7669065606a310302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023072833a789fc58065eb2873d494d3eb6d184c31a45f073c3a445ef4f7c11cd254c91b0a07f11a108046fb99151dc0ba7502304db2b5db55e147ac2510bf6bac48671d8b99ced7bf07949670d8143676e1c6d64b21fc39463ee784f60cda0cb2a10e940302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb50066306402306621f563401fe9b02ab41c27a1e6a6938f6bcd9577cd1b6e1f4b328ffc0df6736a5d2f523e6bc54d063bc83bc440ee5802304a6d3e4ac185b6e5202da5d4ef6c00e00bd3aaa1ff66231c6254a7fa467e98a5084cb37a35474e0e78bb3e22c930d9110302047c435bb5006830660231008af91e91a8a5820ed266f392a3f7432948836f4ba0265604a8c7a5ef254979c0f78fcfb396f941b758e01a3b132d53f302310083826ef4dcb2a727fb12fe6bf1b124410ad3c70e0be211ced29a2eb64b2b40856746bbb088484bf8e16137109b7cfaed0302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500683066023100a3ff9122c2131d9b853ca46edc2ae4295a0ec8ae33d098b401ac8d4dad93e73f46293bcc7cc08da0d34fa3977c3c4ad3023100efd4320b2ffd8f955c02437162bc9a6fa77237b4299575173854d706968100a181c8261e57d2843e2f0064f18225b0490302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb500663064023031f246ab218239d72f08f674f7a106b7831b4bb8408c968a02827d3a355a1e9c5c7c685b53478b8fe981a7142a5132e902306246a0a8223aa5bd31e0b45cea4fc2f528b70e0c2bd5396769de08670e76ec9f052472ef2c087843c8a704b58d40c3320302047c435bb500673065023100c4482b13cceb65866f49989e441f1f33198b5a8e3a3a31c78826c51f1761a8c0b59925192caeea5d7b3f3bf62ced822c02303edbb98b9fd1fe2e1aafabf621c65a2cc1b32c83587b5078fd834914bd034773267dda87b1609ab1e6024a3b6b944b140302047c435bb50067306502303d0f81a77f6769cca78de135e1c56252a290d105e219b64bf83b83ea80478ab9f6efc3dd156d2aa989c1f2aed093ea85023100f246465c6730469c54dd8cb865a34b552cbe5069e1836831566b64276b34785e21ca17bc1ffe53d12a88bc0d9ddd6c9e0302047c435bb5006730650231009e0243a82f30e0ca1305f73f0cc0ea97c74f3e86fe23ffb2b6744c4aa04469059491da08263d1685b3f2d3dabf42bc9002302b6dc9065464b0cb525d3d5512d5487c737101f71ffcd4caf9024635d7267cf129ee328ad4b79b18fb5c5c11a2dbe2d40302047c435bb50066306402303e657c029934c730d7c50986171817858eb67dacf44bb82d0dd1b6f0e59b72362bd88eaaf044e7d8a6820587e4bd50330230147c49b7f7e52b9b64e42aaec2a6b6af1da53acf5bb008612cdeff763df450ebc91516725588ce4d247441bffae149bb0302047c435bb500673065023100b7a3545ee245248b393cf5e32167d78a81a1eb36055215d19b2486c9358c3a1d917c7f83331631b86aaf0ce12ab8de2b02304a1c2154df91038401f5c31092309f08544e17b7add2c3719fcd2c25199f4d37bc2197be35230e5dd0ed39a091456ccd0302047c435bb500673065023025f4145ad0f3535e3c7aa7496d882cc672b0d5e318d9cf3fbf3d8eef63d1f811ebe266cce2739326732b80c165ed42a4023100ee001842a58cb85b391ae30ef0df21fd394679be2708dee696b40e096f3a4858145b2330ba1842c1d87f79ad1cfdd905rȉfOh U]zY)^>= P]nԜ`ɓ+Ia8ָ u[9=o냬=ƤjNAs5UihZ6ci?å7uWj琜)E[::fHx@nc0HGw59G=]1[;lS*ڏ* !]vup⼇d5p>m ?md " fC VpEE E .E DE nE E E'E*LEXp(89:.R>bGbEHxEIEX,Y@\ԘE]E^bb.d/e/f/l/t/EuFEv\)lhllllllm Ckernel-devel4.18.0553.5.1.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.fL6aarch64-01.stream.rdu2.redhat.com C v> i3w(+YW&rR9A9 ZqU4 +#+ NQ}yB tou&TE6gvDFMZB/ DZ Mh/<)zTX +w\8N$ixV BG 1 R#" 6H(;n=XYrY| l2& stR3 Md ) w SF   f.0i:hX6Ee[b/! 6k/-!V&,\d7 2 7N%)v ^^?u<  l = s i6! ]1lw I D3 3@ # =('+ " #!&' !#! $#%# " " ! !"!Iw 4C}Eo J)9 | 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&.<KJ 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;" ;i3leSa=14j Oi<&$|f/x[X[52u,5'%`%T'%<!gs  *C Im9>/#Lk}Y&nCՃ (aR9N .kie5l B.IXo$8[? %UZ> 7B3 Gr3VW;2 fKvaMH6l:O "2? ,.z:i1yYtX/; aXh-[A?tA8d6?qXk`%}!(\' jA[65d<\pL/kg= b]'6 eE6>PN AP{ a\AKGOTt:O ~2 fD*7`OJi' 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)[KUu=[]%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]',.#YzD/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#^ 'Ism p<]O}f@nzSYnkQhLH18 hD{WMhga-/zӫ +juqF 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@vSD; {E+0=!x3gE j A?EBg[AVa 5g'pV+[_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#CAvSZuD/-c|NIwW R s_$ G /S J#57p'$_ +:{XE \ P@ < ")" X .P_^gd%q/Vq^! o\2VO L0Yj4NIt =L6>Kp4 6 2/P1HCsI)"./M N| ~ { # j%}j?4=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?(0H>@Yb1$b    [!F. t^q-"b zo (>6 D_S{ t ".& S'  > Q  T?(&-P Ol/ 0 (W/4Y/ dX+ e<Ci5Z8bCP 8S X %>Q;*#MjxIg6 F6 W8+ Yte46} DI M#^A"nj'(lH9K+>N$:K/.jjpN`bE-GLh ,;:#bk m| U "nZ738t i Iaen NKb<1+D")oL~ L*1[.1:n$ 3 !2LI+ "c"+ npT+a R *oZC]6=k("W;G*UCgKP' ]1 uGp)gj/_ ~Bw q O( XH^ p(X a 6,G)B )u< A'&>@ /%$) 1˳# k+!K6s$ xS@'m*1AWN d:tP,S ?nc>.]}^T];fO`  UF23#zX + zI0!8 7A 0 i=i;v5 I72Z  's)=+%U.lL yP ?  iRA(5H@[itZn& `| + e f .!&2J:`-< Z 42}?@ `?Y f!29~  6Ez1 ;-#feJn-q+$CR7M?a=a+)Q [oa! PjXv8Y[ 8 PM 1~c= v< 31[| { "6KQ K*3]cW-1 r C!/3 !' _ I/  K %= K&v.m$s }i)3#$R g.Jn nqTQ 1 Ni|!;5-~ A `}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[e% t[#tJ0  h &+XNcB `{( K 2o.W#W\k bO3|  0w=1; $)&! M ?5xMmJR8Bt f{*21 K;A)S q љ!6;j0u ?)17&<[R("  B\R @ c:uI5 lr# )yLH4(  MfD  - tѻ4*p& f + 1\4k w c~P*G  X f*0` mL w { 9B \ OG vGa9u<  fh?LH+c4 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./jhB  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  %414a "/&D< $8 %\*>ao );&_ B8[ j_ ,D-CSH9(,W{I,"s- [EF{ZFh$" 2 OFyA-M@S8D%8L UOB Y,QORbY7FS p> pE5K&_T#-) )d$ }J?9Y57TK/D & 8d&3 [ o^ \^8"w @+@  cC CF [a ' Ic)F) %rW+$ duK6=t"|YN <{d 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 ~:M4&`m$%kLO mYV"h rRM l+ p!4 k pN/@s6 $ !O`|,E%  v 97j 1y Y$! 6-6&dV ,R 5$76`+ o"DSWp%A*;97T~%=GOJ-Q 6<;b :?6N*& *1 Wy ^J jQ y@Zd  z']RNU jj Is'\KXa#F"x> 5y(0a1:IJ (d }fB-;_qX-P*z,?,W $9SB !  WRfkj5JE\I v_D Dw Cyp eSs @a4@4O%$. $ 9&%0ZBLa N0i 3~ 5 4~8p z 47B  Sfe># ]{5}9.Jg<3FE'4 #-%pTY4 qT-' 2paD{|0:D4 z4u=+m[=!<#ypF:l9' "  oo ) m1`?- v(&-!^   N@3*?xi Pi& _ia &'$ k.N dF%M/C_ - )  d 2M'A.U":upB_^)64u 2eLhK"pH q ?PRy]Bi  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,c/CL/o ` Rp~ H_-1Ea  I>lpen&m .+)^ >W!#T:38g`/K Ya5wr e @n Mj=O2L P.s rel}Cf  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#S48Ks@)I3 iv HOvX [J ~@W i pnh?im$UN : $r X*7O   - W  )t<!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 $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{ $.] BY w67i4y  LYEz: ` Jp+)$]sfk 6^;eAOAb 0s zIo<ez%/Tfy/~ e bZ`4  X PyUv( ITS(Jnt1_!AaQpKRe )$*")y#[8X&<Be)R]",Vt̟"$b39n%v2*sS: *z `!+ |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/ %!  yZ ]&;Z 6-%d) u#| HV=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_&' / BAIkon  '  (d 8*X[&= 5 2.vB c@h "( .wg , I k*< +5k'.s#}6wW[i>/7m%42|1C I]e)u0:L' rYHE W &&>QW^-]Z8t) | Y~z7zYbvA 0:y k8;@ <4  %&Q%)FLh1U^r'mz-ap=gH^o}mW | u!% G~y$ wt [>K( YG0HI0H0 X)Y)T ]r"Q=lAHhpS2T!bS|<J_P&wd  zW}E8a er<VV WX;@$6SJB$0%)A큤A큤A큤A큤A큤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큤AA큤A큤A큤AA큤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큤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큤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큤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큤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큤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큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AAAA큤A큤A큤AA큤AAA큤AA큤A큤AAA큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤AA큤AAA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤AA큤AAA큤A큤AAA큤A큤AA큤A큤A큤AA큤A큤A큤AAA큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤AAA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAAA큤AA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AAAA큤A큤AA큤AA큤AA큤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큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤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큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤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큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤AA큤A큤AA큤AAAA큤AA큤A큤AAA큤A큤AA큤A큤A큤A큤AA큤AAAA큤AA큤AAA큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤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큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAA큤A큤AAA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤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큤AAA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤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큤AAA큤A큤A큤A큤A큤AA큤A큤A큤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큤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큤AA큤A큤A큤A큤A큤A큤A큤A큤AAA큤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큤AA큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AAAA큤A큤AA큤AA큤A큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤AAA큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤AAA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AA큤AA큤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큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤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큤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큤AA큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤fL5ffL5bfL5bfL5bfL5bfL5bfL5bfL5bfL2fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfKõfL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfKõfL5[fL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL4RfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL4UfL5ffL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL4RfL4RfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL4QfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5MfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL4RfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL5cfL5cfL4RfL4RfL5cfL4RfL5cfL4RfL4RfL5cfL5cfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL4RfL5cfL5cfL4RfL4RfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL4RfL5cfL5cfL5cfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfKõfL5bfKõfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfKõfL5bfKõfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5ffL5cfL5cfL5cfL5cfL5cfL4RfL5NfL5cfL5cfL5cfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfKõfL5bfL5bfKõfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfKõfL5bfKõfL5bfKõfL5bfKõfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfKõfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfKõfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfKõfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfKõfL5cfKõfL5cfKõfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfKõfL5cfKõfL5cfL5cfKõfL5cfKõfL5cfKõfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfKõfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfKõfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfKõfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfKõfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5cfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL6fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5fL5bfL5fL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL6fL5bfL5bfL5bfL5bfL5bfL5bfKõfKõfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL6fL5bfL5bfL5bfL5bfL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL2fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL2fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5fL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5fL5bfL6fL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL2fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5fL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfKõfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5fL5bfL5bfL5bfL5fL5bfL5bfL5bfL4fL5bfL5bfL5fL5bfL5fL5bfL5bfL5bfL5fL5bfL5bfL5fL5bfL5bfL5bfL5bfL5bfL5fL5bfL5fL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5bfL5fL5bfL5bfL5bfL5bfL5[fL5bfL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5bfL5bfL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5[fL5bfL5[fL5[fL5bfL5bfL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5[fL5[fL5bfL5[fL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5[fL5bfL5bfL5[fL5bfL5bfL5ffL5b761b33479102d2db04e3a913a8f7e88a231e0a8a927a880fbac79f4165543bae43aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079d3d9f49436f9a52615c6f28da3589cbaff69ecda6c6c65f4a6ba8f7ac219a80f6b6f64b03c15db3cf7f413e1c647d160c3daf648717c03bd7d961af71d0f91c0bd21e89e95cb76cb445f401ba4d04e59cbf36993da17dcecdfca38894178f65301f0ec2a5b5d5b0a470d486ee8c032bd6685873b034b872b167cfd5140b578f431203d1d9284d3d8db4ea0a741a1b03e300e2a9c812205222e8fc026a458420220a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803df2db4a45a7d3624839e9e9cd0de0f3a4a71efe6ad3cc4171b2bbdbbe1ca4057f1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a9422897395149437f4c139951c84ff606c95cb258a810cd68d460472a1f3b57383388c6a5fa164e5ee8388531b08f32b25eaa15d988316aacb5eac25ac5eab246bf657ec4fcebe6bba7e639e3b03d0d3b64b40ddba5857e29a00c9165a607a726875f5f8ed1514f1ab60393b353b3457de91aefde21222f1336f5a8ffdacc410025667b2364d6c3577b5635e971121562bfb9eb3b99e6845d823f649e1203c246c0bf0d482b77041864b7c184c99de38baad3941a1e7b4aeca11c4c37fa2d12e8be65cbf66bc318b6a335521158b230ee7b8e75dfa5de3ffa4e7aeeaefeef3249c7b237c4c719597348fb9c0bfbcd8e673227a20969f3dc5dbd9b08f53a2c8d9543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e3202547b9970e4a6d79e80d0995c11dcbf78d13fc032879a7417a6b5e8b0676a6ed2a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f694073d3443dd574000e3b05276ae7484ff552a10ab360e7f78e2f04fdeaf666b6b761a948faa7583f728d1aaebcdf9d00f095a92d310bc88203840e7fe8736c5885fd7421cdbdf6ec29496e2f08286fb855debbcbb5b38e62cb28ea1c228f08aef7c0e321e559e9f5857c65bf31d030c43f238748cf522ca951bc579d33e98b58f8bc7bda167dd2493202e98d097c5e2529d4e570a647f3a6d0804082290601cb3d8e484da3ae6ce37b800abbbb680e36a5dc7434ec1279297ecbc8f33a43c769619053e0133b880b283f6f3789e9b9002a838500bfd76dad553d47dbb556b10d7dcff021ef0ad2b02b156d83425cc03ba7e996ec09ccf2ef6ff3883807f2f28d5cc2341f18cd47312961ac007577a0a8dea613bfd1d7a7cc70ce7d86643eddbe14cd4354318da13b8317161d58b49f1c230eb1fb02b7082efe686685f6ab143a598dd12164c8eed5bb1954f75e2639cf7b6856597a1ab0924d1b4b33c7ded03725f2234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d0310045e06ab1611082e7ac075c20a23394b252f7775b50059661ae55ee7a5aeb2bcd9dd9c2c081323bf7ac5bd329ec2060c94f24d84dc33d3305497d004e76edfaa3c7a93c43018c375ce4da516e66f7776400c851a57fbb4e6821fdb193ffcd4aa30de521efed13d78e80a2eddf49255a4d3bfcbb495ebed22bfa63f0972b34d16a75598c03329db79f534907a07e47806c63f09f2b9da94e30aaeab50716fb7a6bdc0217366b67fd5b9468943d48d582b462fa9b2744ccb79ba24dce1164270bbe7a8a89099795250c3e48b36227c0efcb30890c65eeb563d9d5f4abc7f5758904fe8bf53e78f9b2c809155391f0cc67d4992f2953884ad161c3fd31d1185dd0ba8748c4ee4b756efbd0f98970395ceb78fe3ee85b14f34ee1b9e0fc60bd543ecce0d08feb757534da0279f78d62b4b653d7abf1534617faf827038b51a8912b4c1f18c8794aa56283b6cf55379deb5faa7490ed588e215211fc1d11da1c1d5fcdc6a00d25f138a78314df9f6b4d88c200b39c4e6aeee18fa5e29016c06e714a92459d39cf033d755fe940c3d476d587c26bef2d76c7903e6d172d0c57b85560fb84de6536e3d4c896e60994b8826e64ed1edd50271fe734a10557c34ae52ca947bdee04316e0a05e147463895b16a78cbb24a313ac72f11e4599db712635a00170b6bafa446b9065f0475d6bae305707a08f47f57c16f26eefb75d91d2d7d10b31132dfdb0c5b4177a852e2928438ba8b2042a7ed47c0f71df6e51fb24a0360dcce1a1f1aa954e39e75c6098f2cbec69565b62e6286a86776f3403afd4d2106c9fa43d3e3e8122a9806998c47efdc2e86935e81ffe5ea06e0f2f557c7be333447ff0e1dbf91c2d26d1d37d76853bdc97f470a7af955c806aa9beef933a4d90835f9b13d5e57022f6e8e1fd2e908010b6d486d4e159559d62cda140ed6aab13b7e012540a456d7d399c0de3d6ca56cc63eefba8615fabb5f189c871424927b9872d1f1efb466b3c7228e948aa6258e2c7582e5725c934460ccc2a2d993c64c65ffde43d4bc87acfa52412c523682f32c7a222a96b4b1aba646444e680be44cfc003b97c8ef44dbf66dd559958f7ca2a3045cec2afd73f4b26bd1171d62c2e848c2a2e0a262d970e60e201fbcbea7cac82d374ef665da4c666283f27595f54a6d0bdb3f40b3c8f2dae525fda58c3b13f1fe66861bf6d1244a161e71e750e4698917a2b241dcc192c9a79148c06fe60fcaede7283533707233a4feeee0d72bcc5e7abfb12ea595eb6ea226b2a9444a93714563aab08e50a3e98540de50d93499b7696263252a3a1dff81aba75ef8a032bf5a9bb7b0181cd43c7ab5f3a0ff3d3a3a1c40b76e82aa1a8151add9419ed4e5febc52f42acee04bad878ad445cb818b6f493d6b162a897ed72afa88a190b20446cfb6acf9d04eb47ef8e8a49b484c1fbc3782e70c4279d5dff0f9311d3eb10f20721b4d7c7307ec3d9387c6d05209aeee2da92c22418b6c06dfaa3580a63f4360fdb7145ce44becf61650d7a34fd4139a51d5b4ad65f12bb3c17d4b1884fb8cc437db34f3c4d1dcda1af2de6c8f0d4c066cfc2ea8371d87d365e496e3ac4c23d43815d3074b4bbfc71868c2458ed81fd5cfb4bf79832430f173bac1c24e777082fda453f886c15fd64875a80f1e111abb7f8ed46974f444b7c8714e6d3e066b41f345b6501d93aa9db46a2fcf5ecb2c3dc9eef7a67bd11602f64fab63e7e1399bb0db77d1c83e92feb1677a59472d9df04c417304495f84ad32f4dee0ea42614fef8bbacef84af163ed3f35ecef5d20cfa49c283bd4d691603258dcda5c8e06a8daefb876bc1cf7da98bd93215965d4b960af30efeb697d84ad740aeca6958b42c1631778e05bb2035ae3637686586aeee726f205b66245cf021f6f6ee553607ec455c9da1a3d964e2c599fae69dd9c650b2176875a1cd4c64e4a8337ec301c3fc3678cdf215cf3b379502a50251e6832a5984bbf4323a2081715cf5f589bb0e3d62bb64a12a09c6366d7e5630291a5611451d99046881927dc9d932c1efcb7f939e481baf729f46d4e5a94cda614743922681c01419af0f699d6293bdd51818836ded635cdaa2534268cd88ddab6f5e461f6792ccc72eb9941c88abb1ebb3841cd8c2c70ee22a4c8c4f8f766366b7428961379b709876ac99972e7c763fafdd034ef6b1465b22f4c331ef721875291cecc4fd357d12548a8f524916631b8e52570aa081960d36c3c6f6b89989187d8691e8b2086c2e37adc0f31c24e03b0f0eea6ad0a2eb2fde08bf7a8f6d1abe3c206166fcc4d50407b88b4c1e5de1e4cbca84f7bdbe00757c78abad65997e95ca16c7aad2e1dfe58fa88d2f069eab66b9b4f10c7890f4a9e33eb84a7dfb4dea54642b2d6fc93766efc5884f6aeb7211a047ef58cd9906cefe3a4f0c7db7ab622a452ba750fcfe62a2f2b0207c48935fb3168ff57c93d5a864433e817afda22c3661a072639dd42116bd870a965761709e48b53baf1f45abdf02cca225dc2f947e08ed2ce12d0849aacf9de83c13d811a2b7d91633a22ec20f8a67e9d1af90b7d08c352b43c7783b659e8e5861ce9d8172282b3ae9f7b770fe1e7b361a9a0f37fdf9094d0b2c9512bca945dcf91fd056e12598d5dfaeddb571da9bd08e04a0d8848347524bb1b5b19bc3689f17c7476248d72ce02c283d0168b9f7ea54f6e01431be291c1f418b4647c48a32c3559ddf4e4e11671f28bff4249248d496c84f921274e074ae9950a8ea1778d1fba462aa5d5f8e4f46ccdd3ddc5e7755f7768e9d970b0b612bcdb4d92adc1c453d9d79dc76d398d6785e789af1daba640b5613eff659d539629cec6219565171872598619f524dde627d193c416aa82b9190fcb220ff1d50bd0b4b6f03e0a5307d6800d0cbfb413974548b5b5f2db06c1363e05098583829dd2047c862505199009003d6150ca96a443fdde91f85f99d4f58630c74404b326dfefa3ff3f6b22b872e2dcbfd63f7c969b1de605b756c6dc64d542da140f598bc01c59ffd89768d0d665a5f9dcfd8adb6a4308e39c7e0f6c70c06dd4e19c07fada55b22d709a4f5ce6e0933dc64c67bc8c958cc328024144e12f5b63582742413de3082b0e92fb2d1d23b2c9e2dbf36f3c1427b57d1f8072f540a84e63419a0aac8a94e050ae18b5368078bc5c967a0e05b5f7a44e52eff4757b4f41973e975e689da1ffe7ae7e7031df1e7d0d0537a1adc38f3a1acaf40bd72e3983677a1d43b2999f46f7baf1b67a149dbd8b0d9858121ee9e3dba4cbf2c93e89de04d76341bda4d22a382606ac7f782337858314c2fba139a748b1b64a2ed2dbf71205f827dba1604e7a47bedca71de6ff74bedc09f64633d95634ebff9f7f2ee4dbfb8fe3889219200754292f474ff0f1a51bf86559dbdcad72d14ba8d88713a5aff2b3733e5a9abaa199b1fecfa0c48b77f0eb89a8d35e47d27065a6ebf007b958c62213d7c6c9a94a8058415f7fae5139a0e71f00452cce8eb4f7f6d003bd8021f33f8f34ba575c02527f6ec062c4f63336b3b0d4cc4ddf73ab8b0f35eb3d07baefdf6c59ed8e003f0d82ea2c32f734a6ed0a75de80dae2a330bb174118bf355eb96d8132585739158f359303e944e603c460218d6221c215a021727a12ccb58f8082b843cac8849c2b8fa4040e3f77d1a58acd3ce84784313d9d24642dcb62f3cb4edce40457f5ab6a31300388b7a0deeeb174c7accfd5937dcb0d2be2b609c47aa653655d5ff188abc1f41ac2bba78e44a8cc73744389c9cfb185ec5967e0869ea54332f5851cef7acb608b86b270bf735908b2485a105a2b08591c49b4e992be1fc982f4874969435b799f4a8670c38954d07e6e8aedd222e35d5f99c6ec2d3b65dffc7a3269240652ca3d9562bfc2c05f2b9cbf909f4714314b7cd83b2d141bf310c71486bd4fc0cf985d2794229630ccdab888db97c2b56d2486e9312f6bf971301032224ac3dd12df8eaee9926dc28344eeef2ff5f6a3b2a57e32848901c90b927b08e9274e9f356612d838d54a070d9b4d5e0aa70e174ee63b1afa8056f0f7f03d42219afe1bdf7e4ae907cc598154eea1e39c0406492126cd4358821219a5fb483e827ef5724a9b57f9d37734c52ac2fe0f1f4d2d2c38870bc194cdeaaea4575c0f7c852b6142dea47b2d9bafac4b496b0003ce4701fdbda0471382a88c49b12df071924ce189d75461efea781c48104760762b89d29a44d55a5a7eaf0e047c39501538ba8727ef2a8fb77a6dbdb1d4517b55f7e070cbd25375ff78e7b81574b397b48f0fed86f40cd4233b7f964f8d484d5188a6cd1a10aa156157c14e31b1a2dba7a3640a86b6a632cda51c88a7218e70a949c31cddb7f6ba0f890b04d89dc35c1dc0fb23fa6865665f3dd320a548b05cff38343b5e605f044b39e1051fd4caae8772d876981c3aa74e4338ff57de64a10f44d3883a5cf870337882968bb0e30b823d774e88cccd0226bca58d13be699923162d91c804f668b72cdfb95b1fb38bd8f33251819198789ca22d63613786989d75aaed4d0bdadc1b1f164ed4d4402672612a6e4df704836e748409a14533c363c25d56cb33c4fc87f311a90835fdd0ef25df5b6d9d610c57cba42aa85decb49a307af3fbb90335341adc91dada7942cfffdaaf91e6f951f260e419b9d9e8bcb8bf1f987f46f29d4eef67e2057976282359279199bcc4e02a5148217ca48dd6747fa08076aa5df82f0d9c6f70fa4aa40a0df4ddc30cc4dc969fa26ecca4ee0098aec8475d846ad3a1a30933d709de9df786ffa6faa42bc4e677674f0074110eb68c9654b8909dd767a24fea2d71eb00a9954f8fc7011e8d0b7dadce2237e1747daa19bf8494e8ee8ce3ba00fddad52a83cfd1f9a58467fa4578abbde573735de388ddef5a13ad6c2fc5bf181069e02e9824792a321fdc44b35c050ae75e1ab94afc06ecab023065e633b5f51089ce191615214c369bb2d03eba58a0c16dee47a13375e4cb765eb2a05d7558a1bf21bbe5be82fc1d454a804f8dae51a8da8677110bf3dfb4e55599e63211593f771584770e9e1730b5f0a99e3fd3d0e8c0fa1ba769d1117a144b5340f89f352df0ec9b455033f19c1ed35d88629f836cb2c760d8bea40e37e3474923d07f1fb32180b728989910e140b5f98494aa41b8f8967bfcc0780e7616437a94ed5a5315c5f604dcf072f650059994529798c88b96a631ea2fdd9f0a07956592bda60a97fa8bb7d3270cf8139a6499371da994f7107f86998e36210106749c9801152fb581298abcaade020004a1423eb3670ea022eba8382243b728b44378cdb815ab170cebe9b4f9de96d26cb6d57df97f3be2d000d23e5813f4e50edbc8d6adb3f040aeee4ca9f50c72b3f3b64153757404a33ce1ddfb98aa38511595a15583d7f60fbf72a62108de2f6cc5a98b94063f1561b5b8d8bb8cd744221757425d3ad867e1515e7f3c72b91b3d3e014e0f67ae263271fab750b7d9ede5b18bf4a4d0ae4e3578890f6dbf89c4692d56c2cf3606fe61ec9b08f9bef9ce4fc3f297a843f28c2426b59fe1d9d9527cc25fc6113e73e3b12847506444530f9341f192ee78195f2ccfeb58177cf5040e4bc2bf72111f3a2edaaac10890246e0e247cfeb378bfbd3c89e41c6f0a55edf704b70a171182ceacc4b2abc23348aa12badf34f7b6ca4d25cb4e7412bea2889f5129679348c9872c5ac6048738183d6182209e758719b226e22ec72a2a793b52d03f8bb98ab573d97cac72e3dfef2feebf9dcb9885c11a87b2916236eb6a4a4167fa1b9eba109d8b0b05c6764f13fe729ca87aee80b9aca2fe5875e11262eb8ed3181ad6f8cec015241d86f5604a92910a871402d5b889b795002e9541819a6500571e5752c5501720bbf41f3aff187273fbc12995b0292d2956c6ae9641f7b859dd5b984e2f3684af7f983872b34b168a3f9787150792a268413bfeafe5dbdcbc579911f9e278dd90b5e778543b2bce34d8eb35fa8f8af2d2493cf56843472874551cff42de2b1fe35b24fb794eeba39e70596b7bb065253a8f21dca9c9f0f6b39505094dd6b5348acff845051891e3f52d8903d39678254630a6a1a66535ebd4a0b5bd7a1913ed68d9f1d1611a54edecd61d7cb9ec05a575c9eba5c94c7f17589897f7022416c6ce3c6f518ae7197e81ea04f86ebe707c167573a062e78bfe27b966908bb8d8bc7fbe5212029f12814371a34b53482b5b6623048e61a2c7a8a3e0ea8b5e4e9efec6a4a489f9b4ce7579046bd0d9be4e39f5bbaa4fc5ee671f9246a01a78ba1d2a271615068d3f43ff3200136c1015e99f72d67a88914a82d7d14c094b9c6d2b7b6958f7579168de58ad4473ac957faeb7e98d7c9b151ce36d8721e0e34d417bb829672e59dc5b9a21a4b7ef1c991220234e3d26fb51da000e0820784e2926047bcfe033649565f49bd573da62ca7cbcbe05eb1fc396751d7612c7aafb83cc640bd336eb2369326e60939186b0978b120b137bb2dc6c9c3cf16aa295f2ba7fc3dcebeab327ab8f2710a5b7b728ba8be5bebe5c96d6a0b2bb83d6e890487b939ec0d36317f79c965dfa94cc0011d6146062bb08e1789e191774b951e420cdbe55dbbfcbf8f1140121adbc68951bb7be2939da35e65f353a62761211ce2c53b99ea80e9ccb652475cad08b0cb33a2e7147e7f77ee55d5fe657483c1e0accb5ec66192c7f58dd19da6f1c210ebd0716f6bf657ec4fcebe6bba7e639e3b03d0d3b64b40ddba5857e29a00c9165a607a726875f5f8ed1514f1ab60393b353b3457de91aefde21222f1336f5a8ffdacc410025667b2364d6c3577b5635e971121562bfb9eb3b99e6845d823f649e1203c246c0bf0d482b77041864b7c184c99de38baad3941a1e7b4aeca11c4c37fa2d12e8be65cbf66bc318b6a335521158b230ee7b8e75dfa5de3ffa4e7aeeaefeef3245212170b107c77ca729bd2450d8427243bdbd756dbcb4e7878fb76062aefc8c382ed55ebde4bb9acc70a3745c2453d7bbaceadac1bf217c4109a0b5814c9d7d0676d957b86a8fd361fead416c26a3a1388134a825e44a06dc5c645c198f2111c0e8a7a34e8679f46c9e59f18b3e2b24d82a8006bc67306705ccca8a163b274b3f8a7cb3b75cb59a556641b64880c62c8308099f640c29cc11149051ccbc1205d97ccc134b0429468cde24a9c8afa1349b4b4381e872338fe8b7c74bbd5f7de120d96461abd23bbf2da522822948455413a345f9ef8ac7a7f81c6126584b3c964071a3b9a9d55ed9fa0ee15f0e58bcf066bd1584fc862082a3c477148cdde0d64b1a54c24a12ce2c0f283661121974436cdb09ae91822497458072f5f97447c5d5642952058f28bed9a4d77ad962165c563ff729160442e64ee0f1ff3fb60fc4f20913592e6680e3c927121c6de5674ff59071bcf5b8caa7740fda9425689e2ee436a9c327f7568c64cbdb7f7083365fe5ca2bb2ce3dd0d718bef9483efdf6ae5c1478466e40ef29d7d9ba8396fb15f73f9223e69e40e445500251852121bc76d7245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395ee31f22d5b78e1510bc885571c49556f4d9a7ca49ead96deb0dd22c04ca903d99d60fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5edd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a990782ce66804d000472b3c601978fa9bd98dcf3b2750d608c684dc52dd1aa0eb7e562185c822e79d362de4f9f76a1a7016e1529a01d88a7da9552140f666c6a9471bb3801c1b6cf9d36bef650e297aff61dc1cbbb9789d0e667fea057a262e39e8fd4f05382315c0a32fa3d77d08b9c75b190bdbef49eca11f61520db974316ef5ad7b3432b62307e642e300bf85ae2de8923fbc77958556edc95847f347c205524af01bec99ae5a7c73e1d67d33e7e56b18e90417952813c4f40528649e296d7ef067f37ff479b7ac377ecf62081ad12e684a64fdf4bab16de9cdc1e46f90352cbace03e5fb47f217c61e2df997c59e1548a229c4fca514d348b5fa86a679feedee12284b09ea576767f2d83e5d24c4c146d1c7c432cf40f11f7f2f562c504889190c8ee1e77a18d061c00eb36c164ef0f4e2df1de6cc80181dce9446f950807a70c29b678515c2c164b72a070538d1569a09354f7c3aacf9a7184806a953228175db7a41a4e37456429a2fa77aa9523255b4af9a66f5639b89eab8c09c75e79e7fcdaa6505d18e1aa9ba4e973a461c726b7e640f471f0649bb0b25fc8a3233f1bacc52c22478d12fc815d315215e426d255b29d15e26e5f722535ad8ad714d434ee384515a4325315992e61dd957f0fa91f3858fe7c079de59f56edded51de869c6ca9e365296a6b66747cbebdcf76972b8cce7aab91e55bf4ab1f3581df9c2a857d11a8415a18e7a6ccf23640cf9bddf245a5f90c43b3014d08d3ae19faf9527d7b26fc15cfa914dc6e03d976570242ea37377491f3619ab287e6169025df66e2bc44e87ae07d97aa6a00572733f32973fa22a08f2ce0c9ecdb85255c1afe57b3190d3e10f0b603a6a873690438ef191f74245bc7109aa9a0c7525d2cf3b015832154fea591ff628377c8622f8d87a4b673afe06c3d8737d3c1692dcb1e90910b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d91b9471b621e0c1a31cafca4a94dfa01cf27aaba40391ffd744be455aa37de5b3c1f17a01e81ed720ebd0c5c18afb0d43c4c1b1928b4583595c4ca35df07645a7175b80f0fd759d48de2f33001630dc4905ee3786cc6097fce98163266119569148e0940e8a6e8861eaaaf90853a685fa803c4e039166060a3c921c8d79001e3cac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1ea01cbf770530810d20b703375d8c6321d438eaddd88f3515f5dd3fb062ff9c72cba6faa5749f84248b3e73894fb6731dc558af01f8f5a626d8f44ba6fad469770c0899ba44a3545c5e137ead0f121480c1d6d3851c8d481f1d6822e39a4cc60db6bdcd528bce555b2ecb58e8a1624e3e13e09312c31318023c4e86b957e2b01fa248acb7f5ad9b11285e0ab8d81d9487bb81e8787a87192ec104b99626537a8bab5118f0766284fda95075b8d2082d451270c4e3ff9099fc1fd7a8a6e1981de284fc9dd6bb62530cda94516a8cc023483dcfc29ba55566c0a551b98159da400ec44695770a2775ca77688e7d03c0c29e914973e3693b0207e0d1069f5c9d3bd7b56bd14eac9f3793f67336087aa64b234d9c16026f83e3cd0e0baa6bf27778f86d43602d5db08d4f4acda256ba09009c43b9d93b9283ad9dd75ce7c9dd2b6864c11f2b8968a4e68b3450b62a1d8807309160d78f5cfb64b82c994383b0da7b677e674c49ca72fb558beb34a4081a8f23d268af0bdb6c75556b48c1cc3455c3142ed1fc6ecc52f21e6ec581bc1da454595389079cb794ca98351918ad3c1e1f26e2e981338954386df0a7fc477b65f62518979405282aa95169d86677ba6cdc4a864bb5dd0472413c19099f312143977d21abe6238c1fb1dbd3c0e1a2af1c5fe2ef6ce264aa33309c5b69ad09c2bd293c9bb79a6fc2c3cd22f34dbbd8f5acfb1fae52d14d226d264e3ecb1a5e10ffbb579fd71e99678a3f1fde11c56c434e2c7ff6a50ff1548f7980161fa79ab367a7cafcf65e15a5257132cb03b0aa4975835d674ec721ba2fae3b533e2b41c9ce041eb32ed949484de50a6ab304c8d1d539c692c29473269b68c451736ca630be953aa301223328884cb89bc15c016c2eec6bb06d2f44ccd9ca49f9f4da2c8088eba0e8959c2a947bd33c9431386d5008138e660b7b5750e7c5dd064bdd277f2eea9204fa7e63108e2465bbe511c80b5b581368229cf1ee9908ca88954998b8e0a974e0845fbb6440101114bf2d7752925d79dafcb7557a845c3704066b47c2e538c59484481d90edd7e993dcf160bf3adbeb252cf55cbdece5ef96f6e834bc9f48d043008038971b9ae4bd9d6bfd4dfb9fc12ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991372647a6b25521d671b4388ecb20531368722ed203f8ce75f7bb0a10fe3e256ca1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7bb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f29961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0c09679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c7134b0ca21dd0c12afa087fd3d48a874b37c04ae685a70257de60369f71ef9b6156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0867e0050b0495d9f3ed09721a3859efe4c26a1717cac734474cc560a418a26951ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5ebb081784d3dda750f1c2dd089fd64383151ae52476f2406f3aaf1a55b7ef8806ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a0d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0efa5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dc116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c819795105a48ed440746846b7c45aa42fdf7f8117f45ca6ab4b02ca2b9c2e56319cd15cc781243f332ba8ac4f2288eca4353af9c529d45d8068cf6ef2d9d6e92de847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3ded5e9bb9d0cd9619ca9659445558295b59c017b1481bfb1b7899580b384148aa12e5a60425f4998c02aa0a7c2ef5d85ee1289556d8cd86694dd9298b26f39d040f7cc469922e233ebd6abc7eac863946e6fe7d66c4b3b3364a54e9758768f8c2f51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa6946595ac7b9e40319d9d9d718db4c187c6782775d9a054a4d042cc5a1adcc779a40bc70343056bb250d50e357fa2f56ae37aea578d5eec47bf1ad458b669eb9aeb48c5714af7a8067dd71489fdadc66c81690efed6600e832ad5a138dc53f7d5881bb98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a63110a95c821edef343673a6e01f428e40416e3d68753ca99db69dd0b26cfe8af220e63490ea5e056751a9968efa99d1fb0f7c4a9e290c2bcbefe385b3f04866c32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f01541ec0cf78ab96f5efb851428cebbed3aff631a044b9af96b4c8c2213e82e76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa89d88dfd12a232904e5989bba5b71eb0526cdc34eb58ed009a9f46d12e4041387779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1df904ce3659fcb20977a62fac57ae645507fb1224fabd1124544eed9fa22bcfe919450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f81948425e513a4244d30c1d2602383a3481c40f0a8372a54bc869c8bc61ed3a7898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade3360183132d86dc5ccf71efe92f720ebd10842db80b3468e8be5db5f37ffb73cdd5623badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa46e133f7d855f83c84aa063fd85e0907b41e4dafa221f7cfaaaeeddb35c84bd295f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc8216e12ec7341871fa51040d3512ff5f3700f8ee6a9c08f1e22a1b42d97345583daedf51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c082da36b931047726850ccb98c1e71f8095ffbb9c441c0705bb8224e9aed7cab9453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123d732a7280ce412179b0a0fb56ec7ae4a296a864b2067f7ec15d1dd36c25a21033b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c8ec04ec8782e0a4203b191d970f27b82fe301ebb21489b97d97d73671f6f036dccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f847c05a5e56071a3ef62134dce4b51cacb03675a1e76022387dc5c598839eb5daf6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fab7e87bfc702737e8e78c9d8384b10347d63a2e5305852dc7796b9bbc7311fd03783f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a48b7aca20bb20446e70ffd55db62a40eb7526c84a670eb857abfb51711f44877b10196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd0f992e1a310f1f414fa77d3170f1208e81ee0d9dde0e9c5a4000b8159ffded7b0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a22b4629e7730fc418c1d2be81f2fc4171ee7a6e7b6b57ffa5486b6642a45b4a6606b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e49db477eb23d9bceae2f13012fc15faee4f1c9866e782ea1657b4d908c003c268042f28832758722ee363294ece4dac1adb5a4facf73f3e83c748cca9a0da97ddd42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d81c72161388ed76a51113b35d47888767b7d8a7da8070438bc35d4c75e69c466973d4e7e01526dee0c4827e6e12215caa242f42041ff0d57b82309a3ffd9df4403a9e0671c6d32cbb188305708b3dab6d5392ee404468ad461d8ad5a7c358773671dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e3593a47459d207f537070f5c107c5d53b71d793a28c46542fbf6d97287b4d0bbef47ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa34b0ec1ab576d074a638d45f0581d4a96be6045a1ef135a656a74f9b1798239904476507766a7212a243316a76f2df89b9ac8b7df4a68f0232dac3b38238b2715ffdacad0bb028a42588357e3fae10fe5b1541579ee42df588b38de71333264b81e24e387e1ce18afddc00ecfd8720ee145a48c61130c224300c8d2f0361b19bc541eb4e8896f7278f666083ae589456c9efa3b55b964f53c43e91a1a5d5e73887dd6fc4af066e5b5f65effe7d94d4ef607351e64e1f0e42099f1f51c425b4ad0e2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae5e4909d91b75d30afa3c00ea047779f487f1a0e4ab2017bee29fd657f5e3da75cfd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0ed2df772c1b495e65bbd97e993be010a0a68148efa1d7c238cac0d3139b81554da5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f474a501aefdddb47a4aa72afff6d4fe8cc84dc7ee7752d73bd09883eb6a07e3b5d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80bee22e47a6d6beeb7a58bc8cf1d265120dd984311a2fd965a9611f6f5541f89d4d0dbd9a9e86f867fde7879cf801302beab20f447427126f4420ef7310bfb6c82d045b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8b91c203cdec9aa4513dd68d16704bd8e403317f838cf951f40923bb110ecd350339d46cdb5bda5d7de02ce3093925a0687a84a1d909bf0ea61a7fc33d376973db5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2bb62025e51a0560da519e9a76320793a36c1907921a1ebb40ec4c3c95f45f3822f4be28a8422ef70cf1e711cbb14de0e8e338258cadeba061581bed9e67734e2b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b509dffdb56041182f7604f79eb2afd49630b70193558ba8151a18321c4d71b141faf1400937282ff975799cef6df1c38b415c0a73d0281f4e5f49caadcead482e8fc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e4b7e80803443ba934fc76620f629567cc7ff31fad9f19acf06c197713894fc08ff24d59493ee733510ed8035ee361363e3c4bb8d45c35cae3e6231a177a24286b8273eb06e246777347a16f58a9390c7c072d27baace1ba51593d1d38c405a03d6402ecac6e646d23e137a69e46df7bca3cca889f5d26d70d2d908db1e42f0b02a9124279addc9abb1c60e925615f8950f27f61351d32a381d3782c3c385b3b62fba36a2c07e01c80d8670aef9452dc9898adba4f5c5f151392f2e59ca5d658cc46b013604e24b328af307378f683622d4d29b9882a94ddeda8392322a276ed35c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d739141e23e0278437e5665365bc9eaab51e689542932605736dae32a89fc05d76a177996838a093c7e5942f84df58c52360eb36a7a48f6aa8ea3eed9fd3660d3955c74c6f310ee400d1d30b3aea49835a53738ee27ced4232c2d952a5b61ca7393146448319627811329c327506d383a95c089579f6f8e635a045a581ecb4d7450ddfc844a6b96c64fa002239ad670b6f913517b69dffa07627dc468c4a9725e5785a1b3361d97c86838bf197ea2b64ed29af82671d0c938e75f02105949abb75e8fe80faeee5370358c8446372dcd9fc6d30208173bae5bf6dda898da8eb84b909f1f9a8c8852c7c6ec43ceeccf08cf947d2a85e72c99b69f8134ecd9f64607087a577cc1bf76d2ae7b74aab73332308f43dfb6ff2468d4b2f32e84de31559431d7d954f260dcfee0d4bcc480484cd20e8429316d4508dea754a63cc0bb0f58136b903be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf540851ea2cba33d93b412cb65a649dc5f3b0e16538d68d754b9e3ecb3e79d1c39673f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b7260b14ea36ddd9dbb40932f3280655f3ec2818117ce342481f55be27e6ec84195db870822780a89462bf56bf3893b8d22c588527477e127ee6dfbc0af651dc957d92dbaa4145ac9388d35136be66c191d2221ffa23db7ea11156aa92925830e89f7ad4553be528ed7012deb39ea3051078e8e4a6cfa9a9fe8dd9832dd326d94120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af4c497ed6e8b4dfc2b8cb18b6211fd34871dd27a42daa84f438af55607650d883e7451e6b0a5362242ce2e6ddde2ffae71dd342c3c54b71104a3fa854c6be1310b86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c438423043fce6587fc34eec805f68e711417509267244c629bbe3138b1df445fb9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08026297c37f7957e21b7c1838f1c11fb67cf0e954a1da4dc8c6636f77f8a0d25e37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a347bb1b38a6dffc764f6592858d7f2f6f4e236db42161cb37506dd58109a7b6c35e364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f69cc7159de2b9e2ac09afb414fdf60242be9250718809129e45ffa78905b11eb4ce5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5efa9c5dc57ab8735b71d7f8825586ae3b9718698ecf6a1c30f15e602dad5aa908550a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82b857de81edf53951f3539b08a572b8da124faab968de18116a4ae7a81f63293a53461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855761b33479102d2db04e3a913a8f7e88a231e0a8a927a880fbac79f4165543baeeba86ae0183f5758d5238d5d4b14213b1eb645c8406cbb9f7c334074426baa47e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855997424ed6ca025705497f121bd929e927dcf091537422831dca98b8025501a1be3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551c18a1d359054162276dd40bfc1824adf3f0056aabc6a48e0748b638133ba862e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab970820f149cf8373cb3529f8270e640a1d6db9984dfc9969c07ed9d9ab99b714e88da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a046bc28cb76e0b7d183e13409a23db3f264c4c796f8f6bd620773dffb3e151a57930cdd0db401513c15a5caa7905d8a5fba8e5da872b33edb21a6a51228fade5caa6274a9e68d25454ac5e5c5450d42791b6cc40324a121e00ca133568b17a1cc710d555546271ea7a54a2d6cc3f445b86f4a0620cf9565a4235ec6bfb309554082496c45ab93af811732da56000caf5ffc9e6734ff633a2b348291f160ceb7ecf163ceec966f71f1b324c0b1477264d7e5adb63ff4aeeba778f75d7d676b31fa4cc56cab17fe282be9f3317b040bcb4ca0a841786bcd0afa7b5eabd487982049f6c1d0a50eeaeddd7959e3443eb4564a1914145d7fe566a1d8b12344d5e587b5bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8654f6d6a1d39c3c6af0be2ccd384451de8fbbfd436f3e337bf581f80ecac50d9b71da3e2b6754b1fe16527484bd1187dba3b05823dabe43bac7a40e6af3ba741debc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e316712ca10f6cc37264eafa1abd88bf63b8fed29fc82590ff5d518aea7cda630aac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3cede7ddcdbe853f4ab9125ee84ab072fb1ca16a3c00baf961b532ee46a4eabec438fc0177cdd9ef205f2136200f1b0021252a29603a0ff68460047658a57f8706451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e43bbfb6b3f57b0542db92a7deca128b48f1b28b7e7ee62b01b955dcbc7153b13679c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46fb2eef9f3f2cf62598de90b49e9cb513b352753309b1f924378060b4b759e54dba04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f99055cca4ced779708ab825b44ed27ca88ae83aa29775125b80f8edcb1cb36538c078a30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bd348bcfe68f50e56f1008836b1906f895d4df7bd0b4fc26073c041e7c77ed9cb77964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5672d97b2259349d7c49f7ae714d252c3aa351436da39d66b4f39e741060820f5e359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e156c84fc860df0f904b54929c7b5f65a149b47501db3c245258846029f2e6f51d055c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980c3d40a2c67e1daf1c74f125eab5154e5db32e66881c97feb6867229c2134471b7876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457dfb46580ff0b885921c6af041f293cb4dd1cd51b5d51ce02ae04975893eea02303fc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544252b9c6b2c29e752e8c5f3927d94559ddbdd19abf6ff807c3954801f0c560d195e5976935d197dff9b232d4f106a955d8d39bdebd3b3ae6f48920593606c069c6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd71f9de24ab727c648a790ff671cc794d517ccc784d531830c6ae8f533bcd56426dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef63822daa4fb27c584207ba4f56c054b5ec42ce309f6a64f5a8dd97bae3f13126658a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383d22a8be20e77ff00005c018c905a9b59456ac019cf46453fe8370e7cf07154eeb172296bedce09665c82d8d7032ba7bfde86ba8237dd7a29ea1443ac6e75c638284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf845492863848d630e5d04a6e35f6179b1ee34fbe8cc2ac38d35f6fba33b451c54e444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b3680d023ba8bd88e2e735eeba442248961743881d07615010c832152ffb45259c2c4c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583e86fda55c49a4570a1cd8016aeaf2c5aba375acd5dfa6ce9aed7f701b4fdf6947ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cfa2ddc0a76cd5be325b4c4c5cb8bfaae8e19826a36b37ced6a05ec9cf4de425767856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e6745691534261b986a79d20ab4fba5c4c3a2d92e50bde59e66defef5d8b9d645c56868168803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a2173d395feb9458ff0d7b8d69579a16cd0502baddf17236139c2fdb13a0b9b8189c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e499f75f4995a5f48a83ce7b938796c2556ee0cd864ab598677017833a76a7368a2497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f23ed0ac00ee8286557799a9922518021f0f15cefa8d1f5fac39f05807ed63d6188ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bf814e16fa6a3c9bc5d611c84417ef8cd38aae00e5cc2fc70178e2b87da88f97f857027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db9243ea16d533587748391cfc049d0139d04a9420b5eb3a8b6489d74d246e535fb36dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e9451c8efba81360c8971f148e1ee8f1b7e3fa4886a97fa76ee7307eef614f4717e388cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f15497f6ed902d09f4ca11b4397757f7c43e508d29b367ad7003659ead59279733d57c12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f09b1d5ea2de0c650203d0c4c1520ab362fb50578e967d242fd598a13a99210116ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1d5f9fe0956268f1de883a72dab668c43afa984de82e3b5bf76552b72f8a62a59224f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda50d83d86481a79acc228ccc2bf6370bea06652ff452ead0904f9750f8a2e9f6660411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401610f9b8aee6385800717c205dc7d901007c261787c1aa922be20f38d73f164c66dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e9044468745aeac5900b532da79a3a906b852b42d73e0d751ff59dc896c6c07f7cdafdfdb5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb112c0800c502bd67dcb960f21c310bc398e65ce48ef39899a22f56c2cd86e403341df524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c021f3a6a2cceb3c3934b3473fc590fe3e776152369d7110d6f1eb6d59f7219dd3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b5693396bb0dbba3e6f8460868901b0e54d6ae3ca4c174d83f905ab30ca57e66bd498af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42cae94c3a81fceb66d2c421f40276be484fbf2ca00775eafd0c957f9515a055748e13d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5393dbbc04e2a7d18586ed65d8db15c1094034aec60bade9c8607973e04a711a494659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5d684fb37aa674bc47bbb80bf8df5517c41052ed80120d25f9e8b2dd177644299e986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2be45856a539df8b2a0027b6d4154ea6e700d11b0d75120f880328a5830025c0902d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d52017622458fe712985fe670cf24a95e82b466ae95d3e72e94e92e8fbcbeb12ddab29e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe53712d38edf71c4541e7a9a9d64ea1239e73f36df62ff508ebf7743bbbe5fcc12b9246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa32baa1c61fc2ee17dc3bb5e2f66ac74d525a67af34e479f00fca03c27752873f065aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c3d8f14457ce60687793562bd4092f09f475e700b092d22b4e78cf325716f2159a767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2bb31afb742516199b547baecef44fab916f1a979dc98b536d66019ca6cebc3d0852f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987d9b7132f8d62401f86db62a2df7ad32f46898963e9afebd3f68308b22700395080d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c64c2e7dc88caab9518889bc9e1929e0ef91059d2c543ea1d8f438ebfa3196ed6d5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f4b905f5f07f65d3972933768050b7a1ef8637c9a0e59e024ab9008ce4bac41aa44481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db8579f7da95bfca08b602331bd6a54a27684cf0dd3c7bb02c64c8be3d5adcecee2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c6706726ae1e843d692b56afdc3c7f1f43b5daa4d0418f9c95a4a19650ac24f436ee86cbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c7789e0801b7a50d21bc2036e84b516fa8421f3ccd500a1f90100619feeee52e5c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df56dd35a225c6b97381c34d0e1155298c836ea6d304ea25d38471f7d903b7c1b069d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed303f0477c2ac8220afd72e71d28a37203753ecc8c9ccd4e881e35f4428e13a5d4a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83cd1415b6437bccbf351a26eeb62caff1704c432c6eee24c5942d8fc5cd8fb85acd2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c566a3e62e8e0b55bd0e984455d7eebb320414e172cf366d408a6c4cf4af940efca4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a9c6e8bb427dc1c7a6b164c10ffbefa83eee634cea635323149925f3ded96364e72c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21ebe11e336286233fe4af1b6308a80e6d4e58886269e877f18d5635763ed9fbaa119df02c98ea2d73202fe4dc3e63935e565dc308770a9623ef7a18c213d0076cd502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567b19ad85c70a1801d6f85cb8ec4ff9b158c859ad6745ee1af480a5c92c0051a6d1d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c84260446eda5204f370ecb4f90a946ed6c1cdf114bf8f73f9b998f02489610396a4dff288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7abdbaccc715eafdae9c96cb74f5001b641c07f0c5667badaafacf032678c20bf7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43dfa4dbd8ae17fb5c9a4d7c3f4fd3ee2bf6b363fb1614d721d4c900a2af7e61963341608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec8482a919ba2d35103664f1b37677592cfcbad566a7410275caa0b63ba86f0e9825ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c70b35da192386048f4d7434c6e015bd9605072699fdbbe671d4ec989a85219336180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302efb9373d6ed75ff484346cbf26fe347584502703972b728cac8d7d48b1577d0e26f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fec0307537f735d2456c7c0b132cb93872690ba5533f7c95afdc25fc1809e991058c6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e93e500c44dd257692d23977de8bd9af5375f930642698a78612648c3dbff59c18937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28a80f614fcb8165d7fcacfbe8f74eca0377ad63e73d43b6a587f91860b95b77a1bb9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec9001b6dae5adc491105f1fa10e7f3579c02716aa12627e4f8d6e5debf6c759123d91feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a0b5da9cfc53dc9e228d19904172c48ce2c1b1753126a8573a78782739c683ffd1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c3d516f71c28a839041f941d492dcc6dd84b6535cf1168f10946edfc182ceffefd38d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f31e1b712ce8700306b73c447d4fdd1dfc12335c257a3374f42a34207ea23fdf5830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd10cfd712c4717d149421049f1577508cfcc488532bd9856f04539ddb8a428bc49c96ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e26526270269bd21fa46241cbaf6fb6d1f55b1449eab8f8a9c92fa9b51e084db3ac92679fb30b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d4237d0f4e22f9ab6b73c34fb95d9639ad5206b38a7cc6cdab796768250c1c50587c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c97cbef889fd513acc9311a7ce9b34228a46642dd22bb930fd1223e64bda715f2c4ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9efa986db183b107c3493d6b920130ec6c59914460a1336db423de09e8ca49a8ca0f3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e847456a6da63f9b52e1101060ed3ebb2953fc05679c7f8dd9968fa877200f1179a66cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e5e4f21e1dc15bb982c4da23b062e41d607d1fa37e61dc16de209394691b46f28935f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad25ee539d9c8a355bef9c2ff409203f0220acca549201a9607fccd1a028acc8ccef1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd880b286bf9c6dcca075152b45698f8a2483985a29dd99bb97d24eca8f993c37d818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c180f6fc82368987399003145f1c6801c94282e16a4b9f53ac5bfc861695fa95cbf21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6133a980e0b88895b6b1f4ad38d094dca549f2b220252cc252b0c606d8658cbdfeff91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bd4f3733e4070bd93841d382d8f7eef2da9137165515bfa3ac7174f54a5145582ee2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c88c3b38fea3e8687933050d6ed5c31e4d5c59e2940c0283ea5b3cc92f78170e6f75e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d55a5098c031dd6f62c7139f08b0da1e4c4b7cb0a2ec95ed60489a9781c24b0d1cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19d8bdf0273b5cf16cc96e9e7d5b7ec98a928d792879f7937d66aef996fb056a1358d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5b9b13f465d09d371ded003452280f9fea33869fcb9e59810df816c087b51ba8b43b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97ded1bddbd7ed273d7fdf50cb095716f47e32579d1a560a5fd8ec65ee8e4cbaafec3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94cf863242c00a4687108668db0354f11e3dcf6b0a44b77eb655f511c3d8be0418b6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835ff10b8e4cf7da17a6dd46e481b5801d455639cd57be829656bdb95f309e27e4fb42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb33912535f0db74c46afcadca46e1ba72f687961ec1d40d159aedddc8586b930f53d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753dbf6fd3764ddf83f2bf9e31fbbdc9e5e669fedc1aef68d29401f74fe30aa63bebbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b33cccc0bf2074f47d79dcd814351ea337f9c6989e778dc42e6c849b9d29c743e2379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d341e8a4cd9dd6445a6e3998ca465bc420860d3dd6854d429a35476473160d99825effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47dfb5e3677a0188103821b0495e85278215575932166f36ea5eacde945b74d8dcd531a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39d6964171ed4cdc2445b2075eacedc5fb2a7848394c07d7ab97737b691b82d49ff5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725b954167d7dcb5c9ba8a2a6e76c0e365a55d82b4f903e243ae1bbd1d57cdcfa7cd699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2decc585a33cefaafa7f9740c99a3955abe97d29f0cc1c994483ce14312d29546478a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22cd7e168bd2def20538192db40792ca286a9ed5308179c40315abee64cf0849f88247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d287816160ed4c4cdbae9c2dae5d993d2ae0d32df58fe9cf04a27a29db990a1f5158eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6b8aa32bfdbdc7a5f0041a035409659e1c327f94eee90124ae6f3fd38323164d57cc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa466ef2fb9cb14f8382237a433353f1e2e4b5729ca0b4035940e6c0d1dc0fa368b1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd9819aa740e0f574bc671434fd53c3679da19255cad0befde0fc922b04c87b85da4d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a99335e118d9d097633f83c2104ace94a12bddab9d5c0f363e6fcc90ee40e89236b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c76b08232b3e0d28ffb31c3c29b684422ddd2d91472fef8d3cd1c4455b332f27ca3d8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdf192907178018c2039d2a67ab37f02f021b24fe519b564b55f31bd56ebb9b39893b2265d619efef75a02e183250c5ba4fbe9ad28223e59b1b50e5d7fdd89bcd3bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e451c0e785d94bb808b64ccd6b52ddc52a319e2a5a366c7f5b7378eaac32dd77d847971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf0607b97bfd6306e30fee0907fc528a9ad9d5f4780bec95b4dc33aed16a6ece1c4645462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e8976859817b92cd3acaa1d48ef613365a0895a4f8aef45b1e06f5fd7b1108c9d5dfc9e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c723323422c5a17f3141c18a07f7bd119f00fe1e7520ca58217597d6744dc925b6f1619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f846eb771d8d74e72e5c08b04de2ba0a30e1c861df91eb6482a97667df893411f090572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dc3fdefbaca1c465134b790aa170ee2ca700bc10128bb4440c2be4e7f9b5c541123824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2e955d4521509e408c7be37ce2f937b9cb1a969ec43c98da45fac913d41e74e2749fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ee47f3d86718b5f374c0da5aab2b8f918e179bd8f03f7e8d80f1e52698c932ec2749de385c0bb2e193dfc9f76f7b416133f40e530952fb279c3463904ee17c119be303d7848f67b968844aa0bf598dc402e9eaa4f6894e98420f7b4baa3f94b5eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc8143f142d479917039036e2e32762374bc6459c8873f8cd7e1ca858fdc9ec0a08327f64727521d2a86239303ee6898f9acdf9734fe42c9538e1cc3827716d32981c9a757204327137dfa219f40cd7a482ad105b590b2313bf89125600383e5529030f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90f0256e3d3b2755dee088632f8476bd342810a0c3fad7ebf09365aa2ef8377389668db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5e11a1d175c97bda7d770ce0aca4fe2b45ba87c74e0ffeb0fa9936f066cffa769af5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a01f379447d5886648b017de3cd0370044c15f655a871ddbca9fd22dbcc6ea4105a977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda4010c9b60dcf32445d21de4daf194cd1687827fbd4a6e949837d135c66c058afef942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96faa6a60ebf473ac977b01ce5df020d84d05731a7b3f02b2ba95eeb1bcb835b8174cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae5427d30bc3ec2ed93b632f0b0b075e64a89a1a92ad45d9054f2d37408dd3ceecb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f0e961cc2dde40e383652465c7a68e29fecefe1e74fe6aac30593c1d44dac658f529a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be636f2a7e2ad2e17a4be153a675755afec6efca95e1af47f80afbec9969ee84536a83121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa5ebfb6cb7d63e3a2b9f9ce8386968025a7301eaa82c73be521b469f4c2704346f2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759e37474e36e181f8bf5aac04cf4681c22f153ff6dfcc63a6ea15b856785494f01eebd5a297a9a3b282745059cf74ddddf82df41a2fef816c89e1eee5979cd5e96896e5466cdd43b8dae2e8b2cc967078e2dbd974dddab4fb026695e0fbcbc5f6f42b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba752734853f450535a26acc69afa22054c9e86e865007d14e80a0e5e244bd456bd6991de252e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d10c55551697dc6977d30583ccac2c0b3747e53701073b160e5f71b327ca96a2965c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7447bcec8d21ffb2f435619efd4112d328bff5a1012e78f26726d867d6e62a704e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fb94dad7f2ca3adc1567396b0a8f69ae0683ee98f3404bea81c70dc6f34847335e86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319896d001c026b7400252e4d897755bf5620ec58885f443eabdd9d3e3a0032fd33d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf2d5bc5775d93331e6b8a734146280f79436545d75555c826163cb46731e95d5d5f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5d8675d4fbde504e4018a99a819f15bb6e7bc4d30e33899fe8e9037fc88e55a5867e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3055f4a09a5abf36245064d50aad8ac18b8b668b1c629c3cbcf3cdb469c0c59f0f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf526b923d82102002b3218ddd3ad49ea53567dbb4672ced8cc3c691dc6236318269f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0d5e82a88787320f1aa713439bee0614ff78faa7781217d3982dac17f1cc76c77df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a8652780841d69bb638361ee7564d9361b8ca893e02fbbc98f1488e44e698429170bed9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad4810e6bc334329838df86e1983d2a9053045faed9cf8638e399d435e6088a1b251938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f6e7d9a527cafa1b49ab33e5d83ceb79393a56c8bf018f73bdb458fd15268d8707e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0f52c78252f7f50689683cd2b4ef06956cf4aacf472d9af620a0e8a1d4619cc8fe55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c474c66a914e9bd8195f5b9cdf9383132c485ce15ec34a1bac7744b0722035aad0cc1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e33825fd0c61ca02e33825d669ef77abbf4f5503af22298d66cf31a02032652ece102381c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb00b7a08bc4a5beda49cde349e6d07cd185b44e872e560ff5b65056353c5ad94fd4a4339d822fc8b7c68c5180a45388ec96a6c7fb568c97d2aa495f88c917e221071cff2b5cf4b113285dff0ea2bfdeeb8953a213f2d9e7ef640a81dd33f70486295e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c35fe619401ebd67bb7eec714fc03656319364c79d574cd0268e3049eb20104d4c35ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777ebfb46ba4125e44bcb22661cc95374b861924cd7f07c9646f110e9fd6e170f5453eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f5468c48acb0bf28d5c3032f5709f88aac17058eecfb5459c57867785197c69c6de4dba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadcf6c49c2523bcf6acf607973d8705d4e224dda2193105eae9a6c7f82edd4a9aa63f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdddb524d4e99ca72b674afb00477bf232e80047564cf21afff760cb178579f9b170c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b68f5c742c7a2f4366f34faec8ed26f339b29147ee92bff60b1767810d6498ad57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc791d9cbb9d6e74b9338b5a00cb4c7e99ac9a749f2730ad4208adf54947cc566551db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbf51d303cafdcda4b25b5253daf655a836576880cd156f43232c87e6f5ea0b91192b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d34919983ac96517a2187e476fae716554a1e6ba83bd86ee6e79642217b6774b4fde4691935b2e46833b91e92a544c869581a283aba6565d2d05d997cc1e8f84c140ae28ec6482e54ba62fa1df4fb65605f05575826235eda64e210ef6138cd6ede0024e26ba13680476f751bf4f7d79281c128667885ed7c0e7e9ba7204ebe026b7cc265234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa6230caa5c86113a6bfe1f5b3da541b354bea1d13b0e6f2e3f2f6fd6876b74af81c0fedcec093121d08fc6230852300b579e89e0a2a4e794dbe434f56311e0fd02571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df9e589dfa23c80bb669548d54884cc4f2338e1d4371d975f660ea357a5beb7214bec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cf1f5fa9e60628014eb7cd074e6812559ed0fde72fb426a7fed8fb019cd4ec3425be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b40981e645b1d4abeb18c4a5ffe6185c95a48e708fa2bf7a4a7e1d6f292bbc2e5c8c340c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe8ca1edbaa66c3816606267ded3cd47a727cbf9e9960d80307eaa1bb7ea420ca31728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d6760fe9cafb8be6e6122b705c6c6018bbac079584fe546b62e45bf44efdc62a98c99cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e27829420785987b8276810da25444b9ed7c9f7f734359f14a70a3595b509529708f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdb867644cd4a20815b7d8be14902b594bb6e30a81ea159aa5c67f24212c92cbab6c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddffcf0ed929933cfa373d3e71ba42796b5b48ab461dac30f7afb53285903a8b6fadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95fa3ce8db58b46478c878e81172e6087a61af5668ae23684056eb127548b122eb408c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc00719badcd291d152446a6f16d0e35884409ba8eae577b37b01e091a92122395cc4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb8123b4d734b760e06aa8c98f1b2d87bc84af08ff6954f93fcf72ba6fb8b66add6d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c61465b3640ae4952d3d0aaaea51a5248395e5288a29dae87d825943ffa2ec9691479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c515fd6fc2ea2a5288f804ed6b8ba0dc8e60b4063bcf404e6c6c295d497dc2b10c1cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98be3704d68750623cc843a9537f7aa3207952f2f1be229e5952a4bf21af2a0cc7d0cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb85209e2d35cf29db6bea270fa2d69ede2a04be1ab0596513f0d1f3e51b2ed62604b3954a837004806dc6db5cb28d0e7ebd36e55b828fd5db2d040bc08ee7186ed85a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340da4b66d2d7fd6f15d6db5e5444edca2cfae3398d362a87dca8e2c44208f95b31333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c347cdf93dc10625c9095a83914208e9b420c03ef1a2856c78218f9cf83bc9225d2e8a3cb7026dcb29f07dcdb3b8daabeb0c1c417d2c451516b78d4d5b9b9df09a00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e1904602d9327c92b8cf7a2555b46e19a09b10c1df9d02b9fb1a34b6d47b596048d136401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9d508b340681f722cf50b49277e642517944fd3c4390d2757acb3f12f6828e66b5d9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e491065cea83c816253266584c7c1ba53568114e900677cee29ef3b5ed524f6da43633038273400e08e3cd5bbb771e8d3ffdba4d2e65f03dd275feadf8366cd330246eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfdc56b0ed63b07d6c031aadcd37702d93dc6e654ddeacae9a3d962398246de0ad04149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b81080a382daf8092689f5f459f662c423fed3f20722d927ad7ad70f5e3da82733cb4f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec07df1687514aa45113a54dc2d2c33df117ae0c1f265baeddc249e7a1ad25d5179cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f547716ad7761d636464c4eecf66ff228bd7746675b89efb79dc1287d07c29bbe7dec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3daca2b627f05abf61b69cb36b81f316cd306929d8db5ad05d6fe2fa3b05e33ab0374fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670617ad2450052295c81d43d22868f8f02cf66d05ebc9c8aed79404a9248f1cfaa9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd936756e1b0a56d874adfba7923c0cc116876ca7f07e783d2e804428f79419206de47284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fdef4d8ce30f89ae88b7074eb7853a1e884c16c11530812cfe5999a12bd02a2e4d4005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8550d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2e0fa1d0b5e01dc35e0ef2fdd3ed4c090bd9ffb818e82c3fe42c3f12271c441f5b3ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e9d580d84558983ed9e645a38e5c0806d9827cc8c9f26be4ccd424b218e90b37544fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a7886adb42a3502d203b6746fbb76d4b563ba96a528c953771430361883b139b0b436c4a1fde160e7d87974e3b8eeccf9dfaf67c021e0932f6ed99be4eaf8605eec458e1d37df2b2e495aeab3a1c817374dee6cb93f9a2e5d7f515b762ef1bc21251138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c55c46d4bfb5908b0daebd0dbc96267d7b01ccbc9fdc7f4e575c8ca870336745d4dc323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b9571c6a41eda35815dc7968a2f716dbd52ab4d012fe90d4f07e372a06f0e9246a38a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa77b3a4cc85efdc2e5af4906ecafe3e9ca8810f1c9fc6b26646d55f306d1eb1290e83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f2d645e3a1bcf733078da27df7c69fcf354b2b462067de3f825da917ee8dc59fcae37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927c610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fac52a9bd062455f5980318fe872b7da0bf1aef628e1eea1a5106e6907c3a924aefd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e131488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c13fd42945a9f8bf7d8873512e875bfcc323a19b1bc9e9a6026f367f552f26c6c41aad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3eae72a2ae8db2cc96cdf741a96696b2bbb8500c80ab81106687f9166e3c4f31f26cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35c59565a767e01cd861ca6b07d6fdcc17b989ab5ac1b68f6235d737d609eeab4b22a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac50ae2ad678164266990943aeeb8f95e072e1ed3f28ee0fd4f0395cbd59cac628a68e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde7b4b738b446102fcf660f4fc0d43a772c01a2642f6bb7128ee0037c4917a122840373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb374f48cecb57a00c3f94c75cf9401b8bc1ce7e0d8b9856b9bddab3d612baac5d192d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2a98b158c7b88fcbfc5a865aff82e6bbd66cfc8dda72e8d142f5d45a67badc80217203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a3343b85e893bf5d26c0af21d81c4ecf76210bad71a19cd915137e3f2828c93ab75771741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef40cc43a2f8edda19a252e420d590980fd8ca9057a0fb7e21e70c1f73a53fad59e1b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b24484d911574e73d0522b50f1c701cdab47e8bd6ad758846c4d7174102bb5107ee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c129454eea100e42813a6f2c983a3f4a54e2b02061251dcb04142f3ea6c77c065c1e744fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b43579a1a81287749357f4e71fccec5dee31b6dfdcd84b81076cd0e4ba6495ee2ee595a523ab4af9b318a7771751fef91bcaf9a480dfb44c57570e671d9a2fa6452d85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1adf2ddc61e18f136c9d0c4969997c55f1e97c9959448de5ff37e836319c24d8553d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1174863fc9203f6d3b51edcf61553d497f9243db48a7a814c18faa0ad977e90833e0371ddc25767e2d35cf364d0081d08d69d0bd3628b53974a9624a4eea4c54d583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa3f1b738627e4bb17cc4fc1b3e1b5c84297e7906f2cecbc666e9b03bdedf5b951785ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056f4015f8fb0eeacc5f2636f54d9ff54cb24f28454dd81f545de5c77db77b13dc6edab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98755870b651587339ad15209fb3b5c9b47faca217497f974cd5194b6d112cb69e7b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c53ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249a9b81962058b0284fc6a678abd5aae733df2a9fff9d9f7b345303b1c6a071e798b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12139c0b32a25ad0eebcdde074b0a29c3ae9829d8371e1b71c0838379db4d5081af2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f6107e27e9b34f21583f095e62c009d170457ee0f91b8fa54f90326f1b20122028204366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bcba323a34cb7ad0b3cf44c2ab458dca3e3581e1fbe58d7e3ce8943a1f1f87f8dbf51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005e4db9da88ebf5f691695276ce7fc1166adefb4b10f8737ae97497993c7b1d897162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a231067d7403111ede3984976545fc9c860eb09259fdba7fce03ca9bb4ed90b961519f8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a0578447538efa81dff39f824ad53bf0881575ed4f9914eb08728358b28827fac262cbe2f4f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838abfd2efb5fa4edba1bf8e811c9deae079631e54decfa74c99c7cfe3f5abb6df035ddf518cf8d6c13febd56b7d14a2de63c186f1008d1faf5067906d65549fcbb0b../../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/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-4.18.0-553.5.1.el8.src.rpminstallonlypkg(kernel)kernel-develkernel-devel(aarch-64)kernel-devel-aarch64kernel-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.3fK;@fDf?]f8@f+@fff P@f[fe~@e8@e@e7@eeBeN@eee6@eeee@ee(e}@etVeoehy@e_>eWUeTeP@eKx@eGe?e;@e7e/e%@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-553.5.1.el8_10]Denys Vlasenko [4.18.0-553.4.1.el8_10]Denys Vlasenko [4.18.0-552.3.1.el8_10]Denys Vlasenko [4.18.0-552.2.1.el8_10]Denys Vlasenko [4.18.0-552.1.1.el8_10]Denys Vlasenko [4.18.0-552.el8]Denys Vlasenko [4.18.0-551.el8]Denys Vlasenko [4.18.0-550.el8]Denys Vlasenko [4.18.0-549.el8]Denys Vlasenko [4.18.0-548.el8]Denys Vlasenko [4.18.0-547.el8]Denys Vlasenko [4.18.0-546.el8]Denys Vlasenko [4.18.0-545.el8]Denys Vlasenko [4.18.0-544.el8]Denys Vlasenko [4.18.0-543.el8]Denys Vlasenko [4.18.0-542.el8]Denys Vlasenko [4.18.0-541.el8]Denys Vlasenko [4.18.0-540.el8]Denys Vlasenko [4.18.0-539.el8]Denys Vlasenko [4.18.0-538.el8]Denys Vlasenko [4.18.0-537.el8]Denys Vlasenko [4.18.0-536.el8]Denys Vlasenko [4.18.0-535.el8]Denys Vlasenko [4.18.0-534.el8]Denys Vlasenko [4.18.0-533.el8]Denys Vlasenko [4.18.0-532.el8]Denys Vlasenko [4.18.0-531.el8]Denys Vlasenko [4.18.0-530.el8]Denys Vlasenko [4.18.0-529.el8]Denys Vlasenko [4.18.0-528.el8]Denys Vlasenko [4.18.0-527.el8]Denys Vlasenko [4.18.0-526.el8]Denys Vlasenko [4.18.0-525.el8]Denys Vlasenko [4.18.0-524.el8]Denys Vlasenko [4.18.0-523.el8]Denys Vlasenko [4.18.0-522.el8]Denys Vlasenko [4.18.0-521.el8]Denys Vlasenko [4.18.0-520.el8]Denys Vlasenko [4.18.0-519.el8]Denys Vlasenko [4.18.0-518.el8]Denys Vlasenko [4.18.0-517.el8]Denys 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]- tools/power/turbostat: Fix uncore frequency file string (David Arcari) [RHEL-29238] - tools/power turbostat: Expand probe_intel_uncore_frequency() (David Arcari) [RHEL-29238] - uio: Fix use-after-free in uio_open (Ricardo Robaina) [RHEL-26232] {CVE-2023-52439} - net:emac/emac-mac: Fix a use after free in emac_mac_tx_buf_send (Ken Cox) [RHEL-27316] {CVE-2021-47013} - keys: Fix linking a duplicate key to a keyring's assoc_array (David Howells) [RHEL-30772] - keys: Hoist locking out of __key_link_begin() (David Howells) [RHEL-30772] - keys: Break bits out of key_unlink() (David Howells) [RHEL-30772] - keys: Change keyring_serialise_link_sem to a mutex (David Howells) [RHEL-30772] - wifi: brcm80211: handle pmk_op allocation failure (Jose Ignacio Tornos Martinez) [RHEL-35150] {CVE-2024-27048} - wifi: rtl8xxxu: add cancel_work_sync() for c2hcmd_work (Jose Ignacio Tornos Martinez) [RHEL-35140] {CVE-2024-27052} - wifi: iwlwifi: mvm: ensure offloading TID queue exists (Jose Ignacio Tornos Martinez) [RHEL-35130] {CVE-2024-27056} - wifi: mt76: mt7921e: fix use-after-free in free_irq() (Jose Ignacio Tornos Martinez) [RHEL-34866] {CVE-2024-26892} - wifi: ath9k: delay all of ath9k_wmi_event_tasklet() until init is complete (Jose Ignacio Tornos Martinez) [RHEL-34189] {CVE-2024-26897} - wifi: iwlwifi: mvm: fix a crash when we run out of stations (Jose Ignacio Tornos Martinez) [RHEL-31547] {CVE-2024-26693} - wifi: iwlwifi: fix double-free bug (Jose Ignacio Tornos Martinez) [RHEL-31543] {CVE-2024-26694} - wifi: ath9k: Fix potential array-index-out-of-bounds read in ath9k_htc_txstatus() (Jose Ignacio Tornos Martinez) [RHEL-29089] {CVE-2023-52594} - wifi: rt2x00: restart beacon queue when hardware reset (Jose Ignacio Tornos Martinez) [RHEL-29093] {CVE-2023-52595} - wifi: iwlwifi: fix a memory corruption (Jose Ignacio Tornos Martinez) [RHEL-28903] {CVE-2024-26610}- cpuhotplug: Fix kABI breakage caused by CPUHP_AP_HYPERV_ONLINE (Vitaly Kuznetsov) [RHEL-36117] - net/mlx5e: Prevent deadlock while disabling aRFS (Kamal Heib) [RHEL-35041] {CVE-2024-27014} - x86/tsc: Defer marking TSC unstable to a worker (Wander Lairson Costa) [RHEL-32676] - x86/smpboot: Make TSC synchronization function call based (Wander Lairson Costa) [RHEL-32676] - net: usb: fix possible use-after-free in smsc75xx_bind (Jose Ignacio Tornos Martinez) [RHEL-30311] {CVE-2021-47171} - net: usb: fix memory leak in smsc75xx_bind (Jose Ignacio Tornos Martinez) [RHEL-30311] {CVE-2021-47171}- netfilter: nf_tables: mark set as dead when unbinding anonymous set with timeout (Phil Sutter) [RHEL-30076] {CVE-2024-26643} - netfilter: nf_tables: disallow anonymous set with timeout flag (Phil Sutter) [RHEL-30080] {CVE-2024-26642} - selftests/bpf: Fix pyperf180 compilation failure with clang18 (Artem Savkov) [RHEL-35576] - md/raid5: fix atomicity violation in raid5_cache_count (Nigel Croxon) [RHEL-27930] {CVE-2024-23307} - usb: ulpi: Fix debugfs directory leak (Desnes Nunes) [RHEL-33287] {CVE-2024-26919} - powerpc/pseries: Fix potential memleak in papr_get_attr() (Mamatha Inamdar) [RHEL-35213] {CVE-2022-48669} - USB: usb-storage: Prevent divide-by-0 error in isd200_ata_command (Desnes Nunes) [RHEL-35122] {CVE-2024-27059} - NFSv4: fairly test all delegations on a SEQ4_ revocation (Benjamin Coddington) [RHEL-34912] - USB: core: Fix deadlock in usb_deauthorize_interface() (Desnes Nunes) [RHEL-35002] {CVE-2024-26934} - usb: xhci: Add error handling in xhci_map_urb_for_dma (Desnes Nunes) [RHEL-34958] {CVE-2024-26964} - fs: sysfs: Fix reference leak in sysfs_break_active_protection() (Ewan D. Milne) [RHEL-35076] {CVE-2024-26993} - xhci: handle isoc Babble and Buffer Overrun events properly (Desnes Nunes) [RHEL-31297] {CVE-2024-26659} - xhci: process isoc TD properly when there was a transaction error mid TD. (Desnes Nunes) [RHEL-31297] {CVE-2024-26659} - USB: core: Fix deadlock in port "disable" sysfs attribute (Desnes Nunes) [RHEL-35006] {CVE-2024-26933} - USB: core: Add hub_get() and hub_put() routines (Desnes Nunes) [RHEL-35006] {CVE-2024-26933} - netfilter: ipset: Missing gc cancellations fixed (Phil Sutter) [RHEL-30521] - netfilter: ipset: fix performance regression in swap operation (Phil Sutter) [RHEL-30521] - netfilter: ipset: Fix "INFO: rcu detected stall in hash_xxx" reports (Phil Sutter) [RHEL-30521] - netfilter: ipset: fix race condition between swap/destroy and kernel side add/del/test (Phil Sutter) [RHEL-30521] - x86/apic/x2apic: Fix a NULL pointer deref when handling a dying cpu (David Arcari) [RHEL-32516] - x86/coco: Disable 32-bit emulation by default on TDX and SEV (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86: Make IA32_EMULATION boot time configurable (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86/entry: Make IA32 syscalls' availability depend on ia32_enabled() (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86/elf: Make loading of 32bit processes depend on ia32_enabled() (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86/entry: Rename ignore_sysret() (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86/cpu: Don't write CSTAR MSR on Intel CPUs (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744} - x86: Introduce ia32_enabled() (Vitaly Kuznetsov) [RHEL-25087] {CVE-2024-25744}- s390/ptrace: handle setting of fpc register correctly (Tobias Huschle) [RHEL-29106] {CVE-2023-52598} - net/smc: fix illegal rmb_desc access in SMC-D connection dump (Tobias Huschle) [RHEL-27746] {CVE-2024-26615} - wifi: mac80211: fix race condition on enabling fast-xmit (Jose Ignacio Tornos Martinez) [RHEL-31664] {CVE-2024-26779} - powerpc/fadump: make is_kdump_kernel() return false when fadump is active (Mamatha Inamdar) [RHEL-24401] - vmcore: remove dependency with is_kdump_kernel() for exporting vmcore (Mamatha Inamdar) [RHEL-24401] - mtd: require write permissions for locking and badblock ioctls (Prarit Bhargava) [RHEL-27585] {CVE-2021-47055} - mtd: properly check all write ioctls for permissions (Prarit Bhargava) [RHEL-27585] {CVE-2021-47055} - pid: take a reference when initializing `cad_pid` (Waiman Long) [RHEL-29420] {CVE-2021-47118} - i2c: i801: Don't generate an interrupt on bus reset (Prarit Bhargava) [RHEL-30325] {CVE-2021-47153} - RDMA/srpt: Do not register event handler until srpt device is fully setup (Kamal Heib) [RHEL-33224] {CVE-2024-26872} - ceph: switch to corrected encoding of max_xattr_size in mdsmap (Xiubo Li) [RHEL-26723] - ceph: switch to use cap_delay_lock for the unlink delay list (Xiubo Li) [RHEL-32870] - ceph: pass ino# instead of old_dentry if it's disconnected (Xiubo Li) [RHEL-32870] - fat: fix uninitialized field in nostale filehandles (Andrey Albershteyn) [RHEL-33186 RHEL-35108] {CVE-2024-26973} - do_sys_name_to_handle(): use kzalloc() to fix kernel-infoleak (Andrey Albershteyn) [RHEL-33186] {CVE-2024-26901} - idpf: limit the support to GCP only (Michal Schmidt) [RHEL-15652] - redhat/configs: enable CONFIG_IDPF (Michal Schmidt) [RHEL-15652] - idpf: remove the use of ETHTOOL_RING_USE_TCP_DATA_SPLIT (Michal Schmidt) [RHEL-15652] - idpf: workaround for unavailable skb page recycling (Michal Schmidt) [RHEL-15652] - idpf: always allocate a full page (Michal Schmidt) [RHEL-15652] - idpf: remove page pool stats code (Michal Schmidt) [RHEL-15652] - idpf: add minimal macros for __free(kfree) to work (Michal Schmidt) [RHEL-15652] - idpf: fixup include paths for RHEL 8 (Michal Schmidt) [RHEL-15652] - idpf: fix kernel panic on unknown packet types (Michal Schmidt) [RHEL-15652] - idpf: disable local BH when scheduling napi for marker packets (Michal Schmidt) [RHEL-15652] - idpf: remove dealloc vector msg err in idpf_intr_rel (Michal Schmidt) [RHEL-15652] - idpf: fix minor controlq issues (Michal Schmidt) [RHEL-15652] - idpf: prevent deinit uninitialized virtchnl core (Michal Schmidt) [RHEL-15652] - idpf: cleanup virtchnl cruft (Michal Schmidt) [RHEL-15652] - idpf: refactor idpf_recv_mb_msg (Michal Schmidt) [RHEL-15652] - idpf: add async_handler for MAC filter messages (Michal Schmidt) [RHEL-15652] - idpf: refactor remaining virtchnl messages (Michal Schmidt) [RHEL-15652] - idpf: refactor queue related virtchnl messages (Michal Schmidt) [RHEL-15652] - idpf: refactor vport virtchnl messages (Michal Schmidt) [RHEL-15652] - idpf: implement virtchnl transaction manager (Michal Schmidt) [RHEL-15652] - idpf: add idpf_virtchnl.h (Michal Schmidt) [RHEL-15652] - idpf: avoid compiler padding in virtchnl2_ptype struct (Michal Schmidt) [RHEL-15652] - idpf: distinguish vports by the dev_port attribute (Michal Schmidt) [RHEL-15652] - idpf: avoid compiler introduced padding in virtchnl2_rss_key struct (Michal Schmidt) [RHEL-15652] - idpf: fix corrupted frames and skb leaks in singleq mode (Michal Schmidt) [RHEL-15652] - idpf: refactor some missing field get/prep conversions (Michal Schmidt) [RHEL-15652] - idpf: add get/set for Ethtool's header split ringparam (Michal Schmidt) [RHEL-15652] - idpf: fix potential use-after-free in idpf_tso() (Michal Schmidt) [RHEL-15652] - idpf: cancel mailbox work in error path (Michal Schmidt) [RHEL-15652] - idpf: set scheduling mode for completion queue (Michal Schmidt) [RHEL-15652] - idpf: add SRIOV support and other ndo_ops (Michal Schmidt) [RHEL-15652] - idpf: add ethtool callbacks (Michal Schmidt) [RHEL-15652] - idpf: add singleq start_xmit and napi poll (Michal Schmidt) [RHEL-15652] - idpf: add RX splitq napi poll support (Michal Schmidt) [RHEL-15652] - idpf: add TX splitq napi poll support (Michal Schmidt) [RHEL-15652] - idpf: add splitq start_xmit (Michal Schmidt) [RHEL-15652] - idpf: initialize interrupts and enable vport (Michal Schmidt) [RHEL-15652] - idpf: configure resources for RX queues (Michal Schmidt) [RHEL-15652] - idpf: configure resources for TX queues (Michal Schmidt) [RHEL-15652] - idpf: add ptypes and MAC filter support (Michal Schmidt) [RHEL-15652] - idpf: add create vport and netdev configuration (Michal Schmidt) [RHEL-15652] - idpf: add core init and interrupt request (Michal Schmidt) [RHEL-15652] - idpf: add controlq init and reset checks (Michal Schmidt) [RHEL-15652] - idpf: add module register and probe functionality (Michal Schmidt) [RHEL-15652] - virtchnl: add virtchnl version 2 ops (Michal Schmidt) [RHEL-15652] - net: netdev_queue: netdev_txq_completed_mb(): fix wake condition (Michal Schmidt) [RHEL-15652] - net: piggy back on the memory barrier in bql when waking queues (Michal Schmidt) [RHEL-15652] - net: provide macros for commonly copied lockless queue stop/wake code (Michal Schmidt) [RHEL-15652]- redhat: set DIST to el8_10 and ZSTREAM to yes for 8.10 (Denys Vlasenko) - tty: tty_buffer: Fix the softlockup issue in flush_to_ldisc (Prarit Bhargava) [RHEL-32590] {CVE-2021-47185} - net: mana: Fix Rx DMA datasize and skb_over_panic (Cathy Avery) [RHEL-32579] - RDMA/srpt: Support specifying the srpt_service_guid parameter (Kamal Heib) [RHEL-31710] {CVE-2024-26744} - RDMA/qedr: Fix qedr_create_user_qp error flow (Kamal Heib) [RHEL-31714] {CVE-2024-26743} - hwmon: (coretemp) Fix out-of-bounds memory access (David Arcari) [RHEL-31305] {CVE-2024-26664} - RDMA/irdma: Fix KASAN issue with tasklet (Kamal Heib) [RHEL-15776] - net: bridge: use DEV_STATS_INC() (Ivan Vecera) [RHEL-27989] {CVE-2023-52578} - net: Fix unwanted sign extension in netdev_stats_to_stats64() (Ivan Vecera) [RHEL-27989] {CVE-2023-52578} - net: add atomic_long_t to net_device_stats fields (Ivan Vecera) [RHEL-27989] {CVE-2023-52578} - net/sched: act_ct: fix skb leak and crash on ooo frags (Xin Long) [RHEL-29467] {CVE-2023-52610} - net: usb: smsc75xx: Fix uninit-value access in __smsc75xx_read_reg (Jose Ignacio Tornos Martinez) [RHEL-28015] {CVE-2023-52528} - RDMA/core: Fix uninit-value access in ib_get_eth_speed() (Kamal Heib) [RHEL-30130] - RDMA/core: Get IB width and speed from netdev (Kamal Heib) [RHEL-30130] - cpufreq: intel_pstate: Add Emerald Rapids support in no-HWP mode (Prarit Bhargava) [RHEL-29444] - powerpc/mm: Fix null-pointer dereference in pgtable_cache_add (Mamatha Inamdar) [RHEL-29118] {CVE-2023-52607} - powerpc/lib: Validate size for vector operations (Mamatha Inamdar) [RHEL-29114] {CVE-2023-52606} - usb: hub: Guard against accesses to uninitialized BOS descriptors (Desnes Nunes) [RHEL-28986] {CVE-2023-52477} - media: uvcvideo: Fix OOB read (Desnes Nunes) [RHEL-27940] {CVE-2023-52565} - media: pvrusb2: fix use after free on context disconnection (Desnes Nunes) [RHEL-26498] {CVE-2023-52445} - i2c: i801: Fix block process call transactions (Prarit Bhargava) [RHEL-26478] {CVE-2024-26593} - overlay: disable EVM (Coiby Xu) [RHEL-19863] - evm: add support to disable EVM on unsupported filesystems (Coiby Xu) [RHEL-19863] - evm: don't copy up 'security.evm' xattr (Coiby Xu) [RHEL-19863] - net: ena: Remove ena_select_queue (Kamal Heib) [RHEL-14286] - media: dvbdev: Fix memory leak in dvb_media_device_free() (Prarit Bhargava) [RHEL-27254] {CVE-2020-36777} - gfs2: Fix invalid metadata access in punch_hole (Andrew Price) [RHEL-28784] - i2c: Fix a potential use after free (Prarit Bhargava) [RHEL-26849] {CVE-2019-25162} - i2c: validate user data in compat ioctl (Prarit Bhargava) [RHEL-27022] {CVE-2021-46934} - platform/x86: think-lmi: Fix reference leak (Prarit Bhargava) [RHEL-28030] {CVE-2023-52520} - vhost: use kzalloc() instead of kmalloc() followed by memset() (Jon Maloy) [RHEL-21505] {CVE-2024-0340} - RDMA/siw: Fix connection failure handling (Kamal Heib) [RHEL-28042] {CVE-2023-52513} - vt: fix memory overlapping when deleting chars in the buffer (Waiman Long) [RHEL-27778 RHEL-27779] {CVE-2022-48627} - x86/fpu: Stop relying on userspace for info to fault in xsave buffer (Steve Best) [RHEL-26669] {CVE-2024-26603} - mptcp: fix double-free on socket dismantle (Davide Caratti) [RHEL-22773] {CVE-2024-26782} - crypto: akcipher - Disable signing and decryption (Herbert Xu) [RHEL-17114] {CVE-2023-6240} - crypto: akcipher - default implementations for request callbacks (Herbert Xu) [RHEL-17114] {CVE-2023-6240} - crypto: testmgr - split akcipher tests by a key type (Herbert Xu) [RHEL-17114] {CVE-2023-6240} - workqueue: Warn when a rescuer could not be created (Waiman Long) [RHEL-22136] - RDMA/cma: Avoid GID lookups on iWARP devices (Benjamin Coddington) [RHEL-12456] - RDMA/cma: Deduplicate error flow in cma_validate_port() (Benjamin Coddington) [RHEL-12456] - RDMA/core: Set gid_attr.ndev for iWARP devices (Benjamin Coddington) [RHEL-12456] - RDMA/siw: Fabricate a GID on tun and loopback devices (Benjamin Coddington) [RHEL-12456]- i40e: Enforce software interrupt during busy-poll exit (Ivan Vecera) [RHEL-26248] - i40e: Remove _t suffix from enum type names (Ivan Vecera) [RHEL-26248]- x86/sev: Harden #VC instruction emulation somewhat (Vitaly Kuznetsov) [RHEL-30040] {CVE-2024-25743 CVE-2024-25742} - i40e: Fix VF MAC filter removal (Ivan Vecera) [RHEL-22992] - i40e: Do not allow untrusted VF to remove administratively set MAC (Ivan Vecera) [RHEL-22992]- mm/sparsemem: fix race in accessing memory_section->usage (Waiman Long) [RHEL-28875 RHEL-28876] {CVE-2023-52489} - mm: use __pfn_to_section() instead of open coding it (Waiman Long) [RHEL-28875] {CVE-2023-52489}- dm-integrity: align the outgoing bio in integrity_recheck (Benjamin Marzinski) [RHEL-29678] - dm-integrity: fix a memory leak when rechecking the data (Benjamin Marzinski) [RHEL-29678] - RDMA/mana_ib: Add CQ interrupt support for RAW QP (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: query device capabilities (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: register RDMA device with GDMA (Maxim Levitsky) [RHEL-23934] - net: mana: add msix index sharing between EQs (Maxim Levitsky) [RHEL-23934] - net: mana: Fix spelling mistake "enforecement" -> "enforcement" (Maxim Levitsky) [RHEL-23934] - net :mana :Add remaining GDMA stats for MANA to ethtool (Maxim Levitsky) [RHEL-23934] - net: mana: Fix oversized sge0 for GSO packets (Maxim Levitsky) [RHEL-23934] - net: mana: Fix TX CQE error handling (Maxim Levitsky) [RHEL-23934] - net: mana: Add gdma stats to ethtool output for mana (Maxim Levitsky) [RHEL-23934] - net: mana: Fix MANA VF unload when hardware is unresponsive (Maxim Levitsky) [RHEL-23934] - net: mana: Configure hwc timeout from hardware (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: Use v2 version of cfg_rx_steer_req to enable RX coalescing (Maxim Levitsky) [RHEL-23934]- gitlab-ci: enable arm64/s390x/ppc64le debug builds (Michael Hofmann) - arm64: Add missing bits of AmpereOne Spectre-BHB mitigation (Mark Salter) [RHEL-29005] - [rt] enable CONFIG_DRM_MGAG200_IOBURST_WORKAROUND (Jocelyn Falempe) [RHEL-13214] - drm/mgag200: Add a workaround for low-latency (Jocelyn Falempe) [RHEL-13214]- x86/efistub: Avoid placing the kernel below LOAD_PHYSICAL_ADDR (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Give up if memory attribute protocol returns an error (Lenny Szubowicz) [RHEL-2505] - x86/boot: Increase section and file alignment to 4k/512 (Lenny Szubowicz) [RHEL-2505] - x86/boot: Split off PE/COFF .data section (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop PE/COFF .reloc section (Lenny Szubowicz) [RHEL-2505] - x86/boot: Construct PE/COFF .text section from assembler (Lenny Szubowicz) [RHEL-2505] - x86/boot: Derive file size from _edata symbol (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed: Remove, discard, or assert for unwanted sections (Lenny Szubowicz) [RHEL-2505] - x86/boot: Check that there are no run-time relocations (Lenny Szubowicz) [RHEL-2505] - x86/boot: Discard .discard.unreachable for arch/x86/boot/compressed/vmlinux (Lenny Szubowicz) [RHEL-2505] - x86/boot: Define setup size in linker script (Lenny Szubowicz) [RHEL-2505] - x86/boot: Set EFI handover offset directly in header asm (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop references to startup_64 (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop redundant code setting the root device (Lenny Szubowicz) [RHEL-2505] - x86/build: Declutter the build output (Lenny Szubowicz) [RHEL-2505] - x86/boot: Omit compression buffer from PE/COFF image memory footprint (Lenny Szubowicz) [RHEL-2505] - x86/boot: Mark global variables as static (Lenny Szubowicz) [RHEL-2505] - efi/x86: Remove extra headroom for setup block (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove the 'bugger off' message (Lenny Szubowicz) [RHEL-2505] - x86/efi: Drop alignment flags from PE section headers (Lenny Szubowicz) [RHEL-2505] - efi: Put Linux specific magic number in the DOS header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Fix the missing KASLR_FLAG bit in boot_params->hdr.loadflags (Lenny Szubowicz) [RHEL-2505] - efi/x86: Avoid physical KASLR on older Dell systems (Lenny Szubowicz) [RHEL-2505] - x86/boot: efistub: Assign global boot_params variable (Lenny Szubowicz) [RHEL-2505] - x86/boot: Rename conflicting 'boot_params' pointer to 'boot_params_ptr' (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Avoid legacy decompressor when doing EFI boot (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Perform SNP feature test while running in the firmware (Lenny Szubowicz) [RHEL-2505] - x86/sev: Do not try to parse for the CC blob on non-AMD hardware (Lenny Szubowicz) [RHEL-2505] - efi/libstub: Add limit argument to efi_random_alloc() (Lenny Szubowicz) [RHEL-2505] - arm64: efi: Limit allocations to 48-bit addressable physical region (Lenny Szubowicz) [RHEL-2505] - efi: libstub: use EFI_LOADER_CODE region when moving the kernel in memory (Lenny Szubowicz) [RHEL-2505] - arm64: efi: kaslr: Fix occasional random alloc (and boot) failure (Lenny Szubowicz) [RHEL-2505] - efi/libstub/random: Increase random alloc granularity (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Factor out kernel decompression and relocation (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Move global symbol references to C code (Lenny Szubowicz) [RHEL-2505] - decompress: Use 8 byte alignment (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Prefer EFI memory attributes protocol over DXE services (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Perform 4/5 level paging switch from the stub (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Merge trampoline cleanup with switching code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Pass pgtable address to trampoline directly (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Only call the trampoline when changing paging levels (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Call trampoline directly from C code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Avoid the need for a stack in the 32-bit trampoline (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Use standard calling convention for trampoline (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Call trampoline as a normal function (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Remove .bss/.pgtable from bzImage (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove run-time relocations from .head.text code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Assign paging related global variables earlier (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Store boot_params pointer in callee save register (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Clear BSS in EFI handover protocol entrypoint (Lenny Szubowicz) [RHEL-2505] - x86/head_64: Store boot_params pointer in callee save register (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Don't rely on upper 32 bits of GPRs being preserved (Lenny Szubowicz) [RHEL-2505] - x86/head/64: Switch to KERNEL_CS as soon as new GDT is installed (Lenny Szubowicz) [RHEL-2505] - efi/libstub: Add memory attribute protocol definitions (Lenny Szubowicz) [RHEL-2505] - efi/x86: libstub: remove unused variable (Lenny Szubowicz) [RHEL-2505] - x86/boot: Robustify calling startup_{32,64}() from the decompressor code (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Simplify and clean up handover entry code (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Branch straight to kernel entry point from C code (Lenny Szubowicz) [RHEL-2505] - efi/x86: Avoid using code32_start (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Use Exit() boot service to exit the stub on errors (Lenny Szubowicz) [RHEL-2505] - efi: x86: Wipe setup_data on pure EFI boot (Lenny Szubowicz) [RHEL-2505] - efi: x86: Fix config name for setting the NX-compatibility flag in the PE header (Lenny Szubowicz) [RHEL-2505] - efi: x86: Set the NX-compatibility flag in the PE header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Add kernel preferred address to PE header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Use symbolic constants in PE header instead of bare numbers (Lenny Szubowicz) [RHEL-2505] - efi/x86: Drop redundant .bss section (Lenny Szubowicz) [RHEL-2505] - efi/x86: add headroom to decompressor BSS to account for setup block (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove run-time relocations from head_{32,64}.S (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed: Fix debug_puthex() parameter type (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Use 32-bit (zero-extended) MOV for z_output_len (Lenny Szubowicz) [RHEL-2505] - x86/boot: Use unsigned comparison for addresses (Lenny Szubowicz) [RHEL-2505] - x86/boot: Micro-optimize GDT loading instructions (Lenny Szubowicz) [RHEL-2505] - x86/boot: GDT limit value should be size - 1 (Lenny Szubowicz) [RHEL-2505] - efi/x86: Remove GDT setup from efi_main (Lenny Szubowicz) [RHEL-2505] - x86/boot: Clear direction and interrupt flags in startup_64 (Lenny Szubowicz) [RHEL-2505] - efi/x86: Don't depend on firmware GDT layout (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove KEEP_SEGMENTS support (Lenny Szubowicz) [RHEL-2505] - x86/boot: Handle malformed SRAT tables during early ACPI parsing (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Use mandatory 16-byte stack alignment in mixed mode (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Avoid globals to store context during mixed mode calls (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Disable paging at mixed mode entry (Lenny Szubowicz) [RHEL-2505] - x86: efi/random: Invoke EFI_RNG_PROTOCOL to seed the UEFI RNG table (Lenny Szubowicz) [RHEL-2505] - x86/asm: Make some functions local (Lenny Szubowicz) [RHEL-2505] - x86/boot: Annotate data appropriately (Lenny Szubowicz) [RHEL-2505] - x86/boot: Annotate local functions (Lenny Szubowicz) [RHEL-2505] - x86/asm: Make more symbols local (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Fix missing initialization in find_trampoline_placement() (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Fix boot on machines with broken E820 table (Lenny Szubowicz) [RHEL-2505] - x86, boot: Remove multiple copy of static function sanitize_boot_params() (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Remove unused variable (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Explain paging_prepare()'s return value (Lenny Szubowicz) [RHEL-2505] - x86/boot: Save several bytes in decompressor (Lenny Szubowicz) [RHEL-2505] - fs,hugetlb: fix NULL pointer dereference in hugetlbs_fill_super (Audra Mitchell) [RHEL-20614] {CVE-2024-0841} - net/gve: update check for little-endianness in gve kconfig (Joshua Washington) [RHEL-29030]- sched/membarrier: reduce the ability to hammer on sys_membarrier (Wander Lairson Costa) [RHEL-23430] {CVE-2024-26602} - NFS: Set the stable writes flag when initialising the super block (Benjamin Coddington) [RHEL-25266] - smb: client: fix OOB in receive_encrypted_standard() (Scott Mayhew) [RHEL-21685] {CVE-2024-0565} - scsi: core: Move scsi_host_busy() out of host lock if it is for per-command (Ming Lei) [RHEL-23942] - scsi: core: Move scsi_host_busy() out of host lock for waking up EH handler (Ming Lei) [RHEL-23942] - gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump (Andrew Price) [RHEL-26501] {CVE-2023-52448} - smb: client: fix parsing of SMB3.1.1 POSIX create context (Paulo Alcantara) [RHEL-26241] {CVE-2023-52434} - smb: client: fix potential OOBs in smb2_parse_contexts() (Paulo Alcantara) [RHEL-26241] {CVE-2023-52434} - smb3: Replace smb2pdu 1-element arrays with flex-arrays (Jay Shin) [RHEL-22143] - cifs: Replace remaining 1-element arrays (Jay Shin) [RHEL-22143] - cifs: Convert struct fealist away from 1-element array (Jay Shin) [RHEL-22143] - cifs: remove unneeded 2bytes of padding from smb2 tree connect (Jay Shin) [RHEL-22143] - cifs: Replace zero-length arrays with flexible-array members (Jay Shin) [RHEL-22143] - cifs: Replace a couple of one-element arrays with flexible-array members (Jay Shin) [RHEL-22143] - cifs: fix FILE_BOTH_DIRECTORY_INFO definition (Jay Shin) [RHEL-22143] - nfsd: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - nfs: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - lockd: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - cifs: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - ceph: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - filelock: add a new locks_inode_context accessor function (Jeffrey Layton) [RHEL-27441] - dm-integrity, dm-verity: reduce stack usage for recheck (Benjamin Marzinski) [RHEL-27849] - dm-crypt: recheck the integrity tag after a failure (Benjamin Marzinski) [RHEL-27849] - dm-crypt: don't modify the data when using authenticated encryption (Benjamin Marzinski) [RHEL-27849] - dm-verity: recheck the hash after a failure (Benjamin Marzinski) [RHEL-27849] - dm-integrity: recheck the integrity tag after a failure (Benjamin Marzinski) [RHEL-27849]- tracing/timerlat: Move hrtimer_init to timerlat_fd open() (John Kacur) [RHEL-26667] - tracing/perf: Fix double put of trace event when init fails (Michael Petlan) [RHEL-19537] - ipvlan: Add handling of NETDEV_UP events (Hangbin Liu) [RHEL-19098] - ceph: add ceph_cap_unlink_work to fire check_caps() immediately (Xiubo Li) [RHEL-21760] - ceph: always queue a writeback when revoking the Fb caps (Xiubo Li) [RHEL-21760] - ceph: always check dir caps asynchronously (Xiubo Li) [RHEL-21760] - nfs: fix redundant readdir request after get eof (Benjamin Coddington) [RHEL-7780] - NFSv4.1: fixup use EXCHGID4_FLAG_USE_PNFS_DS for DS server (Scott Mayhew) [RHEL-7994] - NFSv4.1: fix pnfs MDS=DS session trunking (Scott Mayhew) [RHEL-7994] - NFSv4.1: fix zero value filehandle in post open getattr (Scott Mayhew) [RHEL-7994] - NFSv4.1: use EXCHGID4_FLAG_USE_PNFS_DS for DS server (Scott Mayhew) [RHEL-7994]- ext4: fix kernel BUG in 'ext4_write_inline_data_end()' (Carlos Maiolino) [RHEL-23386] {CVE-2021-33631} - i2c: designware: Disable TX_EMPTY irq while waiting for block length byte (Charles Mirabile) [RHEL-24019] - scsi: smartpqi: Fix disable_managed_interrupts (Tomas Henzl) [RHEL-25747] - hwmon: (k10temp) Check range scale when CUR_TEMP register is read-write (Steve Best) [RHEL-26167] - gitlab-ci: do not show (results can be ignored) for rt pipelines (Michael Hofmann)- perf symbols: Symbol lookup with kcore can fail if multiple segments match stext (Charles Mirabile) [RHEL-23760] - perf/arm-cmn: Move overlapping wp_combine field (Charles Mirabile) [RHEL-23757] - drm/amd: Fix detection of _PR3 on the PCIe root port (Michel Dänzer) [RHEL-14572] - xfs: avoid AGI->AGF->inode-buffer deadlocks (Thiago Becker) [RHEL-7914] - dm-crypt, dm-verity: disable tasklets (Benjamin Marzinski) [RHEL-22232] - dm verity: initialize fec io before freeing it (Benjamin Marzinski) [RHEL-22232] - dm-verity: don't use blocking calls from tasklets (Benjamin Marzinski) [RHEL-22232] - char: misc: Increase the maximum number of dynamic misc devices to 1048448 (Charles Mirabile) [RHEL-23758] - char: misc: remove usage of list iterator past the loop body (Charles Mirabile) [RHEL-23758] - char: misc: increase DYNAMIC_MINORS value (Charles Mirabile) [RHEL-23758] - char: misc: Move EXPORT_SYMBOL immediately next to the functions/varibles (Charles Mirabile) [RHEL-23758] - clocksource/drivers/arm_arch_timer: Force inlining of erratum_set_next_event_generic() (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix handling of ARM erratum 858921 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Remove arch_timer_rate1 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix CNTPCT_LO and CNTVCT_LO value (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Disable timer before programming CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix XGene-1 TVAL register math error (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: limit XGene-1 workaround (Mark Salter) [RHEL-19605] - clocksource/drivers/arch_arm_timer: Move workaround synchronisation around (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix masking for high freq counters (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Drop unnecessary ISB on CVAL programming (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Remove any trace of the TVAL programming interface (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Work around broken CVAL implementations (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Advertise 56bit timer to the core code (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move MMIO timer programming over to CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix MMIO base address vs callback ordering issue (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Add __ro_after_init and __init (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move drop _tval from erratum function names (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move system register timer programming over to CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Extend write side of timer register accessors to u64 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Drop CNT*_TVAL read accessors (Mark Salter) [RHEL-19605] - clocksource/arm_arch_timer: Add build-time guards for unhandled register accesses (Mark Salter) [RHEL-19605]- netfilter: nf_tables: reject QUEUE/DROP verdict parameters (Florian Westphal) [RHEL-23506] {CVE-2024-1086} - drm/virtio: Set segment size for virtio_gpu device (Sebastian Ott) [RHEL-15465] - xfs: run blockgc on freeze to avoid inode inactivation deadlock (Brian Foster) [RHEL-11344] - RDMA/irdma: Report the correct link speed (Kamal Heib) [RHEL-23967] - scsi: core: Increase max device queue_depth to 4096 (Ming Lei) [RHEL-11725] - smsc95xx: fix stalled rx after link change (Izabela Bakollari) [RHEL-22312] - ovl: remove privs in ovl_fallocate() (Miklos Szeredi) [RHEL-17933] - ovl: remove privs in ovl_copyfile() (Miklos Szeredi) [RHEL-17933] - Bluetooth: Add more enc key size check (David Marlin) [RHEL-19666] {CVE-2023-24023} - Bluetooth: Normalize HCI_OP_READ_ENC_KEY_SIZE cmdcmplt (David Marlin) [RHEL-19666] {CVE-2023-24023} - IB: Use capital "OR" for multiple licenses in SPDX (Izabela Bakollari) [RHEL-10238] - RDMA/rdmavt: Delete unnecessary NULL check (Izabela Bakollari) [RHEL-10238] - IB/rdmavt: Fix target union member for rvt_post_one_wr() (Izabela Bakollari) [RHEL-10238] - selftests/mm: cow: print ksft header before printing anything else (Nico Pache) [RHEL-5623] - selftests/mm/kugepaged: restore thp settings at exit (Nico Pache) [RHEL-5623] - selftests: line buffer test program's stdout (Nico Pache) [RHEL-5623] - selftests/kselftest/runner.sh: Pass optional command parameters in environment (Nico Pache) [RHEL-5623] - selftests/kselftest/runner/run_one(): allow running non-executable files (Nico Pache) [RHEL-5623] - selftests: allow runners to override the timeout (Nico Pache) [RHEL-5623] - selftests: mm: fix map_hugetlb failure on 64K page size systems (Nico Pache) [RHEL-5623] - redhat: Fix build for kselftests mm (Nico Pache) [RHEL-5623] - selftests: anon_cow: skip broken test (Nico Pache) [RHEL-5623] - mm/gup_test: free memory allocated via kvcalloc() using kvfree() (Nico Pache) [RHEL-5623] - selftests/mm: prevent duplicate runs caused by TEST_GEN_PROGS (Nico Pache) [RHEL-5623] - selftests: mm: add a test for mutually aligned moves > PMD size (Nico Pache) [RHEL-5623] - tools: fix ARRAY_SIZE defines in tools and selftests hdrs (Nico Pache) [RHEL-5623] - selftests: mm: fix failure case when new remap region was not found (Nico Pache) [RHEL-5623] - selftests/mm: fix WARNING comparing pointer to 0 (Nico Pache) [RHEL-5623] - selftests/mm: run all tests from run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: optionally pass duration to transhuge-stress (Nico Pache) [RHEL-5623] - selftests/mm: make migration test robust to failure (Nico Pache) [RHEL-5623] - selftests/mm: va_high_addr_switch should skip unsupported arm64 configs (Nico Pache) [RHEL-5623] - selftests/mm: fix thuge-gen test bugs (Nico Pache) [RHEL-5623] - selftests/mm: skip soft-dirty tests on arm64 (Nico Pache) [RHEL-5623] - selftests/mm: add gup test matrix in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: add -a to run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: give scripts execute permission (Nico Pache) [RHEL-5623] - selftests: mm: remove duplicate unneeded defines (Nico Pache) [RHEL-5623] - Documentation: kselftest: "make headers" is a prerequisite (Nico Pache) [RHEL-5623] - selftests/mm: fix build failures due to missing MADV_COLLAPSE (Nico Pache) [RHEL-5623] - selftests/mm: fix a "possibly uninitialized" warning in pkey-x86.h (Nico Pache) [RHEL-5623] - selftests/mm: .gitignore: add mkdirty, va_high_addr_switch (Nico Pache) [RHEL-5623] - selftests/mm: fix invocation of tests that are run via shell scripts (Nico Pache) [RHEL-5623] - selftests/mm: fix "warning: expression which evaluates to zero..." in mlock2-tests.c (Nico Pache) [RHEL-5623] - selftests/mm: fix unused variable warnings in hugetlb-madvise.c, migration.c (Nico Pache) [RHEL-5623] - selftests/mm: fix cross compilation with LLVM (Nico Pache) [RHEL-5623] - selftests/mm: run hugetlb testcases of va switch (Nico Pache) [RHEL-5623] - selftests/mm: configure nr_hugepages for arm64 (Nico Pache) [RHEL-5623] - selftests/mm: add platform independent in code comments (Nico Pache) [RHEL-5623] - selftests/mm: rename va_128TBswitch to va_high_addr_switch (Nico Pache) [RHEL-5623] - selftests/mm: add support for arm64 platform on va switch (Nico Pache) [RHEL-5623] - selftests/mm: use PM_* macros in vm_utils.h (Nico Pache) [RHEL-5623] - selftests/mm: merge default_huge_page_size() into one (Nico Pache) [RHEL-5623] - selftests/mm: link vm_util.c always (Nico Pache) [RHEL-5623] - selftests/mm: use TEST_GEN_PROGS where proper (Nico Pache) [RHEL-5623] - selftests/mm: merge util.h into vm_util.h (Nico Pache) [RHEL-5623] - selftests/mm: dump a summary in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: set overcommit_policy as OVERCOMMIT_ALWAYS (Nico Pache) [RHEL-5623] - selftests/mm: change NR_CHUNKS_HIGH for aarch64 (Nico Pache) [RHEL-5623] - selftests/mm: change MAP_CHUNK_SIZE (Nico Pache) [RHEL-5623] - selftests: vm: enable cross-compilation (Nico Pache) [RHEL-5623] - selftests/vm: rename selftests/vm to selftests/mm (Nico Pache) [RHEL-5623] - selftests: vm: Fix incorrect kernel headers search path (Nico Pache) [RHEL-5623] - selftests/vm: cow: fix compile warning on 32bit (Nico Pache) [RHEL-5623] - mm/gup_test: fix PIN_LONGTERM_TEST_READ with highmem (Nico Pache) [RHEL-5623] - mm/pagewalk: don't trigger test_walk() in walk_page_vma() (Nico Pache) [RHEL-5623] - selftests/vm: enable running select groups of tests (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: add R/O longterm tests via gup_test (Nico Pache) [RHEL-5623] - mm/gup_test: start/stop/read functionality for PIN LONGTERM test (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: add liburing test cases (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: hugetlb tests (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: THP tests (Nico Pache) [RHEL-5623] - selftests/vm: factor out pagemap_is_populated() into vm_util (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: test COW handling of anonymous memory (Nico Pache) [RHEL-5623] - selftests/vm: add local_config.h and local_config.mk to .gitignore (Nico Pache) [RHEL-5623] - selftest: vm: remove deleted local_config.* from .gitignore (Nico Pache) [RHEL-5623] - Kselftests: remove support of libhugetlbfs from kselftests (Nico Pache) [RHEL-5623] - selftests/vm: use top_srcdir instead of recomputing relative paths (Nico Pache) [RHEL-5623] - selftests/vm: skip 128TBswitch on unsupported arch (Nico Pache) [RHEL-5623] - selftests/vm: fix va_128TBswitch.sh permissions (Nico Pache) [RHEL-5623] - selftests/vm: add protection_keys tests to run_vmtests (Nico Pache) [RHEL-5623] - selftests/vm: only run 128TBswitch with 5-level paging (Nico Pache) [RHEL-5623] - userfaultfd: selftests: infinite loop in faulting_process (Nico Pache) [RHEL-5623] - userfaultfd/selftests: Fix typo in comment (Nico Pache) [RHEL-5623] - selftests: vm: Fix resource leak when return error (Nico Pache) [RHEL-5623] - selftests: vm: add the "settings" file with timeout variable (Nico Pache) [RHEL-5623] - selftests: vm: add "test_hmm.sh" to TEST_FILES (Nico Pache) [RHEL-5623] - selftests: vm: check numa_available() before operating "merge_across_nodes" in ksm_tests (Nico Pache) [RHEL-5623] - selftests: vm: add migration to the .gitignore (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: fix typo in comment (Nico Pache) [RHEL-5623] - userfaultfd/selftests: use swap() instead of open coding it (Nico Pache) [RHEL-5623] - selftests: vm: fix shellcheck warnings in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests: vm: refactor run_vmtests.sh to reduce boilerplate (Nico Pache) [RHEL-5623] - selftests: vm: add test for Soft-Dirty PTE bit (Nico Pache) [RHEL-5623] - selftests: vm: bring common functions to a new file (Nico Pache) [RHEL-5623] - mm: add selftests for migration entries (Nico Pache) [RHEL-5623] - selftest/vm: add skip support to mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: support xfail in mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: verify remap destination address in mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: verify mmap addr in mremap_test (Nico Pache) [RHEL-5623] - selftests: kselftest framework: provide "finished" helper (Nico Pache) [RHEL-5623] - selftest/vm: add helpers to detect PAGE_SIZE and PAGE_SHIFT (Nico Pache) [RHEL-5623] - selftest/vm: add util.h and and move helper functions there (Nico Pache) [RHEL-5623] - selftests: vm: remove dependecy from internal kernel macros (Nico Pache) [RHEL-5623] - selftests: vm: Add the uapi headers include variable (Nico Pache) [RHEL-5623] - selftests/vm/transhuge-stress: Support file-backed PMD folios (Nico Pache) [RHEL-5623] - selftests, x86: fix how check_cc.sh is being invoked (Nico Pache) [RHEL-5623] - selftests: vm: fix clang build error multiple output files (Nico Pache) [RHEL-5623] - kselftest/vm: fix tests build with old libc (Nico Pache) [RHEL-5623] - selftest/vm: fix map_fixed_noreplace test failure (Nico Pache) [RHEL-5623] - kselftest/vm: revert "tools/testing/selftests/vm/userfaultfd.c: use swap() to make code cleaner" (Nico Pache) [RHEL-5623] - selftests/vm: make charge_reserved_hugetlb.sh work with existing cgroup setting (Nico Pache) [RHEL-5623] - tools/testing/selftests/vm/userfaultfd.c: use swap() to make code cleaner (Nico Pache) [RHEL-5623] - selftests/vm: remove ARRAY_SIZE define from individual tests (Nico Pache) [RHEL-5623] - selftests: vm: add KSM huge pages merging time test (Nico Pache) [RHEL-5623] - selftest/vm: fix ksm selftest to run with different NUMA topologies (Nico Pache) [RHEL-5623] - selftests/vm/transhuge-stress: fix ram size thinko (Nico Pache) [RHEL-5623] - selftests: vm: add COW time test for KSM pages (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merging time test (Nico Pache) [RHEL-5623] - mm: KSM: fix data type (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merging across nodes test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM zero page merging test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM unmerge test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merge test (Nico Pache) [RHEL-5623] - selftests: Fix spelling mistake "cann't" -> "cannot" (Nico Pache) [RHEL-5623] - selftests/vm: use kselftest skip code for skipped tests (Nico Pache) [RHEL-5623] - selftest/mremap_test: avoid crash with static build (Nico Pache) [RHEL-5623] - selftest/mremap_test: update the test to handle pagesize other than 4K (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: exercise x86 XSAVE init state (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: refill shadow register after implicit kernel write (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: handle negative sys_pkey_alloc() return code (Nico Pache) [RHEL-5623] - vm/test_vmalloc.sh: adapt for updated driver interface (Nico Pache) [RHEL-5623] - tool: selftests: fix spelling typo of 'writting' (Nico Pache) [RHEL-5623] - userfaultfd/selftests: hint the test runner on required privilege (Nico Pache) [RHEL-5623] - userfaultfd/selftests: fix retval check for userfaultfd_open() (Nico Pache) [RHEL-5623] - userfaultfd/selftests: always dump something in modes (Nico Pache) [RHEL-5623] - userfaultfd: selftests: make __{s,u}64 format specifiers portable (Nico Pache) [RHEL-5623] - tools: Avoid comma separated statements (Nico Pache) [RHEL-5623] - kselftests: vm: add mremap tests (Nico Pache) [RHEL-5623] - Revert "selftests/vm: enable running select groups of tests" (Nico Pache) [RHEL-5623]- cgroup/rstat: Optimize cgroup_rstat_updated_list() (Waiman Long) [RHEL-18154] - cgroup/rstat: Reduce cpu_lock hold time in cgroup_rstat_flush_locked() (Waiman Long) [RHEL-18154] - cgroup: use irqsave in cgroup_rstat_flush_locked(). (Waiman Long) [RHEL-18154] - cgroup: fix spelling mistakes (Waiman Long) [RHEL-18154] - s390/ipl: add missing intersection check to ipl_report handling (Tobias Huschle) [RHEL-24612] - drm/amdgpu: Fix potential fence use-after-free v2 (Michel Dänzer) [RHEL-22504] {CVE-2023-51042} - sched/fair: Don't balance task to its current running CPU (Luis Claudio R. Goncalves) [RHEL-8854] - md: partially revert "md/raid6: use valid sector values to determine if an I/O should wait on the reshape" (Benjamin Marzinski) [RHEL-24518] - blk-mq: fix IO hang from sbitmap wakeup race (Ming Lei) [RHEL-21289] - sfc: introduce shutdown entry point in efx pci driver (Izabela Bakollari) [RHEL-11016] - KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache (Sebastian Ott) [RHEL-5178] - efi: libstub: ensure allocated memory to be executable (Lenny Szubowicz) [RHEL-24852] - efi: libstub: declare DXE services table (Lenny Szubowicz) [RHEL-24852] - efi/libstub/x86: Avoid overflowing code32_start on PE entry (Lenny Szubowicz) [RHEL-24852] - RDMA/efa: Fix wrong resources deallocation order (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add RDMA write HW statistics counters (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Fix unsupported page sizes in device (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add rdma write capability to device caps (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add data polling capability feature bit (Izabela Bakollari) [RHEL-18229] - APEI: GHES: correctly return NULL for ghes_get_devices() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Make ghes_edac a proper module (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Prepare to make ghes_edac a proper module (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Add a notifier for reporting memory errors (Aristeu Rozanski) [RHEL-1603] - efi/cper: Export several helpers for ghes_edac to use (Aristeu Rozanski) [RHEL-1603] - ACPI: APEI: rename ghes_init() with an "acpi_" prefix (Aristeu Rozanski) [RHEL-1603] - ACPI: APEI: explicit init of HEST and GHES in apci_init() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Clear scanned data on unload (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Fix NULL pointer dereference in ghes_edac_register() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Scan the system once on driver init (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Remove unused members of struct ghes_edac_pvt, rename it to ghes_pvt (Aristeu Rozanski) [RHEL-1603] - EDAC: Introduce an mci_for_each_dimm() iterator (Aristeu Rozanski) [RHEL-1603] - EDAC: Remove EDAC_DIMM_OFF() macro (Aristeu Rozanski) [RHEL-1603] - r8169: add handling DASH when DASH is disabled (Izabela Bakollari) [RHEL-6505] - r8169: remove rtl_wol_shutdown_quirk() (Izabela Bakollari) [RHEL-6505] - r8169: improve driver unload and system shutdown behavior on DASH-enabled systems (Izabela Bakollari) [RHEL-6505] - r8169: fix dmar pte write access is not set error (Izabela Bakollari) [RHEL-6505] - r8169: move rtl_wol_enable_rx() and rtl_prepare_power_down() (Izabela Bakollari) [RHEL-6505] - r8169: prevent potential deadlock in rtl8169_close (Izabela Bakollari) [RHEL-6505] - r8169: fix deadlock on RTL8125 in jumbo mtu mode (Izabela Bakollari) [RHEL-6505] - r8169: fix network lost after resume on DASH systems (Izabela Bakollari) [RHEL-6505] - r8169: respect userspace disabling IFF_MULTICAST (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data race in rtl_rx while reading desc->opts1 (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data-race in rtl_tx while reading TxDescArray[entry].opts1 (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data-race in rtl_tx() while reading tp->cur_tx (Izabela Bakollari) [RHEL-6505] - r8169: fix rare issue with broken rx after link-down on RTL8125 (Izabela Bakollari) [RHEL-6505] - r8169: check for PCI read error in probe (Izabela Bakollari) [RHEL-6505] - r8169: fix RTL8168H and RTL8107E rx crc error (Izabela Bakollari) [RHEL-6505] - r8169: reset bus if NIC isn't accessible after tx timeout (Izabela Bakollari) [RHEL-6505] - r8169: disable ASPM in case of tx timeout (Izabela Bakollari) [RHEL-6505] - r8169: use tp_to_dev instead of open code (Izabela Bakollari) [RHEL-6505] - r8169: add rtl_disable_rxdvgate() (Izabela Bakollari) [RHEL-6505] - r8169: remove not needed net_ratelimit() check (Izabela Bakollari) [RHEL-6505] - r8169: remove useless PCI region size check (Izabela Bakollari) [RHEL-6505] - Bluetooth: hci_sync: Fix not processing all entries on cmd_sync_work (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Fix unbalanced unlock in set_device_flags() (David Marlin) [RHEL-23781] - Bluetooth: Fix not checking MGMT cmd pending queue (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not using conn_timeout (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix hci_update_accept_list_sync (David Marlin) [RHEL-23781] - Bluetooth: assign len after null check (David Marlin) [RHEL-23781] - Bluetooth: Fix bt_skb_sendmmsg not allocating partial chunks (David Marlin) [RHEL-23781] - Bluetooth: fix data races in smp_unregister(), smp_del_chan() (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Fix leaking sent_cmd skb (David Marlin) [RHEL-23781] - Bluetooth: hci_sock: fix endian bug in hci_sock_setsockopt() (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: uninitialized variables in l2cap_sock_setsockopt() (David Marlin) [RHEL-23781] - Bluetooth: btqca: sequential validation (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Rework hci_inquiry_result_with_rssi_evt (David Marlin) [RHEL-23781] - Bluetooth: btbcm: disable read tx power for MacBook Air 8,1 and 8,2 (David Marlin) [RHEL-23781] - Bluetooth: hci_qca: Fix NULL vs IS_ERR_OR_NULL check in qca_serdev_probe (David Marlin) [RHEL-23781] - Bluetooth: hci_bcm: Check for error irq (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Fix spelling mistake "simultanous" -> "simultaneous" (David Marlin) [RHEL-23781] - Bluetooth: vhci: Set HCI_QUIRK_VALID_LE_STATES (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Fix LE simultaneous roles UUID if not supported (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add check simultaneous roles support (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Wait for proper events when connecting LE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add support for waiting specific LE subevents (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add hci_le_create_conn_sync (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use skb_pull_data when processing inquiry results (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Push sync command cancellation to workqueue (David Marlin) [RHEL-23781] - Bluetooth: hci_qca: Stop IBS timer during BT OFF (David Marlin) [RHEL-23781] - Bluetooth: btintel: Add missing quirks and msft ext for legacy bootloader (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: Fix using wrong mode (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not always pausing advertising when necessary (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Make use of mgmt_send_event_skb in MGMT_EV_DEVICE_CONNECTED (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Make use of mgmt_send_event_skb in MGMT_EV_DEVICE_FOUND (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Introduce mgmt_alloc_skb and mgmt_send_event_skb (David Marlin) [RHEL-23781] - Bluetooth: btusb: Return error code when getting patch status failed (David Marlin) [RHEL-23781] - Bluetooth: btusb: Handle download_firmware failure cases (David Marlin) [RHEL-23781] - Bluetooth: msft: Fix compilation when CONFIG_BT_MSFTEXT is not set (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Set Privacy Mode when updating the resolving list (David Marlin) [RHEL-23781] - Bluetooth: Introduce HCI_CONN_FLAG_DEVICE_PRIVACY device flag (David Marlin) [RHEL-23781] - Bluetooth: btusb: Add support for queuing during polling interval (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Rework hci_conn_params flags (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Use hci_dev_test_and_{set,clear}_flag (David Marlin) [RHEL-23781] - Bluetooth: btbcm: disable read tx power for some Macs with the T2 Security chip (David Marlin) [RHEL-23781] - Bluetooth: add quirk disabling LE Read Transmit Power (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle Command Status (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle Command Complete (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle LE subevents (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle HCI events (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Direct Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Ext Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Metaevents (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Extended Inquiry Result event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Inquiry Result with RSSI event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Inquiry Result event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Number of Complete Packets event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Command Complete event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse BR/EDR events (David Marlin) [RHEL-23781] - Bluetooth: btusb: Cancel sync commands for certain URB errors (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Cancel sync command if sending a frame failed (David Marlin) [RHEL-23781] - Bluetooth: Add hci_cmd_sync_cancel to public API (David Marlin) [RHEL-23781] - Bluetooth: Reset more state when cancelling a sync command (David Marlin) [RHEL-23781] - Bluetooth: Limit duration of Remote Name Resolve (David Marlin) [RHEL-23781] - Bluetooth: Send device found event on name resolve failure (David Marlin) [RHEL-23781] - Bluetooth: HCI: Fix definition of hci_rp_delete_stored_link_key (David Marlin) [RHEL-23781] - Bluetooth: HCI: Fix definition of hci_rp_read_stored_link_key (David Marlin) [RHEL-23781] - Bluetooth: refactor malicious adv data check (David Marlin) [RHEL-23781] - Bluetooth: btusb: Add one more Bluetooth part for the Realtek RTL8852AE (David Marlin) [RHEL-23781] - Bluetooth: btusb: enable Mediatek to support AOSP extension (David Marlin) [RHEL-23781] - Bluetooth: Attempt to clear HCI_LE_ADV on adv set terminated error event (David Marlin) [RHEL-23781] - Bluetooth: Ignore HCI_ERROR_CANCELLED_BY_HOST on adv set terminated event (David Marlin) [RHEL-23781] - Bluetooth: hci_request: Remove bg_scan_update work (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_CONNECTABLE to use cmd_sync (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_DISCOVERABLE to use cmd_sync (David Marlin) [RHEL-23781] - Bluetooth: btmrvl_main: repair a non-kernel-doc comment (David Marlin) [RHEL-23781] - Bluetooth: Don't initialize msft/aosp when using user channel (David Marlin) [RHEL-23781] - Bluetooth: fix uninitialized variables notify_evt (David Marlin) [RHEL-23781] - Bluetooth: stop proccessing malicious adv data (David Marlin) [RHEL-23781] - Bluetooth: hci_h4: Fix padding calculation error within h4_recv_buf() (David Marlin) [RHEL-23781] - Bluetooth: aosp: Support AOSP Bluetooth Quality Report (David Marlin) [RHEL-23781] - Bluetooth: Add struct of reading AOSP vendor capabilities (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not setting adv set duration (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix missing static warnings (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework hci_suspend_notifier (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework init stages (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SSP (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert adv_expire (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_ADVERTISING (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_PHY_CONFIGURATION (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_LOCAL_NAME (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_READ_LOCAL_OOB_EXT_DATA (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_READ_LOCAL_OOB_DATA (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_LE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_GET_CLOCK_INFO (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_SECURE_CONN (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_GET_CONN_INFO (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Enable synch'd set_bredr (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_FAST_CONNECTABLE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_START_DISCOVERY (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_SET_POWERED (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework background scan (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Enable advertising when LL privacy is enabled (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 3 (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 2 (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 1 (David Marlin) [RHEL-23781] - Bluetooth: Add helper for serialized HCI command execution (David Marlin) [RHEL-23781] - Bluetooth: Fix removing adv when processing cmd complete (David Marlin) [RHEL-23781] - Bluetooth: hci_bcm: Remove duplicated entry in OF table (David Marlin) [RHEL-23781] - Bluetooth: bfusb: fix division by zero in send path (David Marlin) [RHEL-23781] - Bluetooth: cmtp: fix possible panic when cmtp_init_sockets() fails (David Marlin) [RHEL-23781] - Bluetooth: vhci: Fix checking of msft_opcode (David Marlin) [RHEL-23781] - Bluetooth: btsdio: Do not bind to non-removable BCM4345 and BCM43455 (David Marlin) [RHEL-23781] - Bluetooth: vhci: Add support for setting msft_opcode and aosp_capable (David Marlin) [RHEL-23781] - Bluetooth: btusb: fix memory leak in btusb_mtk_submit_wmt_recv_urb() (David Marlin) [RHEL-23781] - Bluetooth: Fix memory leak of hci device (David Marlin) [RHEL-23781] - Bluetooth: btintel: Fix bdaddress comparison with garbage value (David Marlin) [RHEL-23781] - Bluetooth: Fix debugfs entry leak in hci_register_dev() (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: Fix not initializing sk_peer_pid (David Marlin) [RHEL-23781] - Bluetooth: hci_sock: purge socket queues in the destruct() callback (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Fix Experimental Feature Changed event (David Marlin) [RHEL-23781] - Bluetooth: hci_vhci: Fix to set the force_wakeup value (David Marlin) [RHEL-23781] - Bluetooth: Read codec capabilities only if supported (David Marlin) [RHEL-23781] - Bluetooth: Fix handling of SUSPEND_DISCONNECTING (David Marlin) [RHEL-23781] - Bluetooth: hci_vhci: Fix calling hci_{suspend,resume}_dev (David Marlin) [RHEL-23781] - skbuff: introduce skb_pull_data (David Marlin) [RHEL-23781] - Bluetooth: defer cleanup of resources in hci_unregister_dev() (David Marlin) [RHEL-23781] - serial: core: return early on unsupported ioctls (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - lib/hexdump: make print_hex_dump_bytes() a nop on !DEBUG builds (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix race condition in status line change on dead connections (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - Revert "tty: n_gsm: fix UAF in gsm_cleanup_mux" (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix the UAF caused by race condition in gsm_cleanup_mux (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix UAF in gsm_cleanup_mux (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add parameter negotiation support (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add parameters used with parameter negotiation (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: introduce macro for minimal unit size (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: name the debug bits (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: introduce gsm_control_command() function (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: replace use of gsm_read_ea() with gsm_read_ea_val() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: name gsm tty device minors (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: initialize more members at gsm_alloc_mux() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add sanity check for gsm->receive in gsm_receive_buf() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix flow control handling in tx path (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix resource allocation order in gsm_activate_mux() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix deadlock and link starvation in outgoing data path (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix race condition in gsmld_write() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix non flow control frames during mux flow off (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing timer to handle stalled links (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong queuing behavior in gsm_dlci_data_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix tty registration before control channel open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix user open not possible at responder until initiator open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Debug output allocation must use GFP_ATOMIC (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix packet data hex dump output (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix buffer over-read in gsm_dlci_data() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix sometimes uninitialized warning in gsm_dlci_modem_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix software flow control handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix invalid use of MSC in advanced option (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix broken virtual tty handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing update of modem controls after DLCI open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix reset fifo race condition (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing tty wakeup in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong signal octets encoding in MSC (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong command frame length field encoding (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong command retry handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing explicit ldisc flush (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong DLCI release order (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix insufficient txframe size (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix frame reception handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong signal octet encoding in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix mux cleanup after unregister tty device (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix decoupled mux resource (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix restart handling via CLD command (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix deadlock in gsmtty_open() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong modem processing in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong tty control line for flow control (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix NULL pointer access due to DLCI release (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix encoding of command/response bit (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix SW flow control encoding/handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove tty parameter from mxser_receive_chars_new() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: don't throttle manually (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: make mxser_port::ldisc_stop_rx a bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Don't ignore write return value in gsmld_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: clean up indenting in gsm_queue() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Save dlci address open status when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify gsmtty driver register method when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Delete gsmtty open SABM frame when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify CR,PF bit printk info when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify CR,PF bit when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: stop using alloc_tty_driver (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: don't store semi-state into tty drivers (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - hvsi: don't panic on tty_register_driver failure (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: switch rs_table to a single state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: expand "custom" (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: use memset to zero serial_state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: remove serial_* strings (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop mxser_port::custom_divisor (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop mxser_port::baud_base (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove unused mxser_port::stop_rx (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: don't allocate MXSER_PORTS + 1 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove cnt from mxser_receive_chars (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GETMSTATUS ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GETDATACOUNT ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_CHKPORTENABLE ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_ASPP_LSTATUS ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_ASPP_MON and friends (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_SET_BAUD_METHOD ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GET_MAJOR deprecated ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop unused MOXA_DIAGNOSE macro (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop UART_MCR_AFE and UART_LSR_SPECIAL defines (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove else from LSR bits checks (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract mxser_receive_chars_old (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract mxser_receive_chars_new (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: simplify mxser_interrupt and drop mxser_board::vector_mask (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract port ISR (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: cleanup LSR handling in mxser_receive_chars (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove nonsense from ISR (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop constant board::uart_type (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: introduce enum mxser_must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: rename mxser_board::chip_flag to must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: rename CheckIsMoxaMust to mxser_get_must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: cleanup Gpci_uart_info struct (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: integrate mxser.h into .c (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop ISA support (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: use goto-failpaths in gsm_init (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: mxser: drop low-latency workaround (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: check error while registering tty devices (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: mxser: fix TIOCSSERIAL jiffies conversions (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm, remove duplicates of parameters (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: do not check tty_unregister_driver's return value (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: nozomi, remove init/exit messages (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty_port: drop last traces of low_latency (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Demote obvious abuse of kernel-doc and supply other missing docss (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm, eliminate indirection for gsm->{output,error}() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix bogus i++ in gsm_data_kick (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Remove unnecessary test in gsm_print_packet() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix waking up upper tty layer when room available (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix SOF skipping (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Improve debug output (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch constipated to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch throttled to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch dead to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: introduce enum gsm_dlci_mode (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: introduce enum gsm_dlci_state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: drop unneeded gsm_dlci->fifo field (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Replace zero-length array with flexible-array member (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: avoid recursive locking with async port hangup (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add helpers to convert mux-num to/from tty-base (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - docs: serial: move it to the driver-api (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - docs: serial: convert docs to ReST and rename to *.rst (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Mark expected switch fall-throughs (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: Constify u8 and unsigned char usage (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Add copy_config() and gsm_config() to prepare for serdev (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: switch to ->[sg]et_serial() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: switch to ->[sg]et_serial() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty/serial_core: add ISO7816 infrastructure (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546}- mm/readahead: reintroduce legacy madvise_willneed behavior to force_page_cache_readahead (Rafael Aquini) [RHEL-22476] - PCI: Disable ATS for specific Intel IPU E2000 devices (Myron Stowe) [RHEL-21011] - PCI: Extract ATS disabling to a helper function (Myron Stowe) [RHEL-21011] - HID: intel-ish-hid: ipc: Disable and reenable ACPI GPE bit (Tony Camuso) [RHEL-14732] - HID: intel-ish-hid: ipc: Add Arrow Lake PCI device ID (Tony Camuso) [RHEL-14732] - HID: intel-ish-hid: Fix kernel panic during warm reset (Tony Camuso) [RHEL-14732] - net: usb: ax88179_178a: avoid failed operations when device is disconnected (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: avoid two consecutive device resets (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: fix failed operations during ax88179_reset (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: Bind only to vendor-specific interface (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: wol optimizations (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: move priv to driver_priv (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: restore state on resume (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: clean up pm calls (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: remove redundant init code (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: make drivers set the TSO limit not the GSO limit (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: add Allied Telesis AT-UMCs (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: add TSO feature (Jose Ignacio Tornos Martinez) [RHEL-17561] - ethernet: constify references to netdev->dev_addr in drivers (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: initialize local variables before use (Jose Ignacio Tornos Martinez) [RHEL-17561] - gve: Remove dependency on 4k page size. (Joshua Washington) [RHEL-22210] - gve: Add page size register to the register_page_list command. (Joshua Washington) [RHEL-22210] - gve: Remove obsolete checks that rely on page size. (Joshua Washington) [RHEL-22210] - gve: Deprecate adminq_pfn for pci revision 0x1. (Joshua Washington) [RHEL-22210] - gve: Perform adminq allocations through a dma_pool. (Joshua Washington) [RHEL-22210] - gve: add gve_features_check() (Joshua Washington) [RHEL-22210] - gve: Fixes for napi_poll when budget is 0 (Joshua Washington) [RHEL-22210] - gve: Do not fully free QPL pages on prefill errors (Joshua Washington) [RHEL-22210] - gve: Use size_add() in call to struct_size() (Joshua Washington) [RHEL-22210] - gve: fix frag_list chaining (Joshua Washington) [RHEL-22210] - gve: RX path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: Tx path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: Control path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: trivial spell fix Recive to Receive (Joshua Washington) [RHEL-22210] - gve: unify driver name usage (Joshua Washington) [RHEL-22210] - gve: Set default duplex configuration to full (Joshua Washington) [RHEL-22210] - gve: Remove the code of clearing PBA bit (Joshua Washington) [RHEL-22210] - gve: Secure enough bytes in the first TX desc for all TCP pkts (Joshua Washington) [RHEL-22210] - gve: Cache link_speed value from device (Joshua Washington) [RHEL-22210] - gve: Add AF_XDP zero-copy support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Add XDP REDIRECT support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Add XDP DROP and TX support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Changes to add new TX queues (Joshua Washington) [RHEL-22210] - gve: XDP support GQI-QPL: helper function changes (Joshua Washington) [RHEL-22210] - gve: Fix gve interrupt names (Joshua Washington) [RHEL-22210] - gve: Handle alternate miss completions (Joshua Washington) [RHEL-22210] - gve: Adding a new AdminQ command to verify driver (Joshua Washington) [RHEL-22210] - gve: Fix error return code in gve_prefill_rx_pages() (Joshua Washington) [RHEL-22210] - gve: Reduce alloc and copy costs in the GQ rx path (Joshua Washington) [RHEL-22210] - google/gve:fix repeated words in comments (Joshua Washington) [RHEL-22210] - gve: Fix spelling mistake "droping" -> "dropping" (Joshua Washington) [RHEL-22210] - gve: enhance no queue page list detection (Joshua Washington) [RHEL-22210] - net: Google gve: Remove dma_wmb() before ringing doorbell (Joshua Washington) [RHEL-22210]- tcp: Dump bound-only sockets in inet_diag. (Guillaume Nault) [RHEL-6113] - rh_messages.h: update driver and device lists (Scott Weaver) [RHEL-22126] - vmstat: allow_direct_reclaim should use zone_page_state_snapshot (Marcelo Tosatti) [RHEL-22138] - rbd: don't move requests to the running list on errors (Ilya Dryomov) [RHEL-21941] - drm/vmwgfx: Fix possible null pointer derefence with invalid contexts (Jocelyn Falempe) [RHEL-3179] {CVE-2022-38096} - atm: Fix Use-After-Free in do_vcc_ioctl (Guillaume Nault) [RHEL-21179] {CVE-2023-51780} - perf/x86/intel/uncore: Factor out topology_gidnid_map() (Michael Petlan) [RHEL-22189] - perf/x86/intel/uncore: Fix NULL pointer dereference issue in upi_fill_topology() (Michael Petlan) [RHEL-22189] - KVM: x86: Constrain guest-supported xfeatures only at KVM_GET_XSAVE{2} (Bandan Das) [RHEL-7558] - x86/fpu: Allow caller to constrain xfeatures when copying to uabi buffer (Bandan Das) [RHEL-7558] - Bluetooth: Fix double free in hci_conn_cleanup (David Marlin) [RHEL-2555] {CVE-2023-28464} - Bluetooth: hci_sysfs: Fix attempting to call device_add multiple times (David Marlin) [RHEL-2555] - kobject: Fix slab-out-of-bounds in fill_kobj_path() (Waiman Long) [RHEL-20926] {CVE-2023-45863} - kobject: modify kobject_get_path() to take a const * (Waiman Long) [RHEL-20926] {CVE-2023-45863} - kobject: Remove docstring reference to kset (Waiman Long) [RHEL-20926] {CVE-2023-45863} - EDAC/amd64: Add support for AMD family 1Ah models 00h-1Fh and 40h-4Fh (Aristeu Rozanski) [RHEL-10031] - amd64: allow F0 and F6 registers to be missing (Aristeu Rozanski) [RHEL-10031] - hwmon: (k10temp) Add thermal support for AMD Family 1Ah-based models (Aristeu Rozanski) [RHEL-10031] - x86/amd_nb: Add PCI IDs for AMD Family 1Ah-based models (Aristeu Rozanski) [RHEL-10031] - nvmet-tcp: Fix the H2C expected PDU len calculation (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: remove boilerplate code (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: fix a crash in nvmet_req_complete() (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - ipv6: Remove extra counter pull before gc (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - ipv6: remove max_size check inline with ipv4 (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - net/dst: use a smaller percpu_counter batch for dst entries accounting (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - net: add a route cache full diagnostic message (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - x86/sev: Use the GHCB protocol when available for SNP CPUID requests (Bandan Das) [RHEL-16382] - x86/sev: Do not handle #VC for DR7 read/write (Bandan Das) [RHEL-16382] - Revert "x86/sev: Expose sev_es_ghcb_hv_call() for use by HyperV" (Bandan Das) [RHEL-16382] - x86/alternatives: Add cond_resched() to text_poke_bp_batch() (Waiman Long) [RHEL-15221] - x86/alternative: Fix race in try_get_desc() (Waiman Long) [RHEL-15221] - x86/alternatives: Mark text_poke_loc_init() static (Waiman Long) [RHEL-15221] - x86/int3: Ensure that poke_int3_handler() is not traced (Waiman Long) [RHEL-15221] - tools/mm: filter out timestamps for correct collation (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner_sort.c: support sorting pid and time (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner_sort.c: filter out unneeded line (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner: use page_owner_sort in the use example (Audra Mitchell) [RHEL-3821] - mm/page_owner: remove free_ts from page_owner output (Audra Mitchell) [RHEL-3821] - xfs: up(ic_sema) if flushing data device fails (Andrey Albershteyn) [RHEL-8464] - xfs: reserve less log space when recovering log intent items (Andrey Albershteyn) [RHEL-8464] - xfs: fix an agbno overflow in __xfs_getfsmap_datadev (Andrey Albershteyn) [RHEL-8464] - xfs: fix agf_fllast when repairing an empty AGFL (Andrey Albershteyn) [RHEL-8464] - xfs: fix dqiterate thinko (Andrey Albershteyn) [RHEL-8464] - xfs: fix uninit warning in xfs_growfs_data (Andrey Albershteyn) [RHEL-8464] - xfs: fix xfs_btree_query_range callers to initialize btree rec fully (Andrey Albershteyn) [RHEL-8464] - xfs: validate fsmap offsets specified in the query keys (Andrey Albershteyn) [RHEL-8464] - xfs: fix logdev fsmap query result filtering (Andrey Albershteyn) [RHEL-8464] - xfs: clean up the rtbitmap fsmap backend (Andrey Albershteyn) [RHEL-8464] - xfs: fix integer overflows in the fsmap rtbitmap and logdev backends (Andrey Albershteyn) [RHEL-8464] - xfs: fix interval filtering in multi-step fsmap queries (Andrey Albershteyn) [RHEL-8464] - xfs: don't reverse order of items in bulk AIL insertion (Andrey Albershteyn) [RHEL-8464] - xfs: fix ag count overflow during growfs (Andrey Albershteyn) [RHEL-8464] - xfs: don't deplete the reserve pool when trying to shrink the fs (Andrey Albershteyn) [RHEL-8464] - xfs: fix agf/agfl verification on v4 filesystems (Andrey Albershteyn) [RHEL-8464] - xfs: set bnobt/cntbt numrecs correctly when formatting new AGs (Andrey Albershteyn) [RHEL-8464] - xfs: fix rm_offset flag handling in rmap keys (Andrey Albershteyn) [RHEL-8464] - xfs: make kobj_type structures constant (Andrey Albershteyn) [RHEL-8464] - xfs: allow setting full range of panic tags (Andrey Albershteyn) [RHEL-8464] - xfs: shut up -Wuninitialized in xfsaild_push (Andrey Albershteyn) [RHEL-8464] - xfs: use memcpy, not strncpy, to format the attr prefix during listxattr (Andrey Albershteyn) [RHEL-8464] - xfs: initialize the check_owner object fully (Andrey Albershteyn) [RHEL-8464] - xfs: fix uninitialized list head in struct xfs_refcount_recovery (Andrey Albershteyn) [RHEL-8464] - xfs: increase rename inode reservation (Andrey Albershteyn) [RHEL-8464] - xfs: remove xfs_setattr_time() declaration (Andrey Albershteyn) [RHEL-8464] - xfs: Fix false ENOSPC when performing direct write on a delalloc extent in cow fork (Andrey Albershteyn) [RHEL-8464] - xfs: check return codes when flushing block devices (Andrey Albershteyn) [RHEL-8464] - xfs: reduce the number of atomic when locking a buffer after lookup (Andrey Albershteyn) [RHEL-8464] - xfs: convert btree buffer log flags to unsigned. (Andrey Albershteyn) [RHEL-8464] - xfs: shutdown in intent recovery has non-intent items in the AIL (Andrey Albershteyn) [RHEL-8464] - xfs: aborting inodes on shutdown may need buffer lock (Andrey Albershteyn) [RHEL-8464] - xfs: only bother with sync_filesystem during readonly remount (Andrey Albershteyn) [RHEL-8464] - xfs: kill the XFS_IOC_{ALLOC,FREE}SP* ioctls (Andrey Albershteyn) [RHEL-8464] {CVE-2021-4155} - xfs: prevent a WARN_ONCE() in xfs_ioc_attr_list() (Andrey Albershteyn) [RHEL-8464] - xfs: only run COW extent recovery when there are no live extents (Andrey Albershteyn) [RHEL-8464] - xfs: move recovery needed state updates to xfs_log_mount_finish (Andrey Albershteyn) [RHEL-8464] - xfs: clear log incompat feature bits when the log is idle (Andrey Albershteyn) [RHEL-8464] - xfs: allow setting and clearing of log incompat feature flags (Andrey Albershteyn) [RHEL-8464] - xfs: remove all COW fork extents when remounting readonly (Andrey Albershteyn) [RHEL-8464] - xfs: replace snprintf in show functions with sysfs_emit (Andrey Albershteyn) [RHEL-8464] - xfs: reduce the size of nr_ops for refcount btree cursors (Andrey Albershteyn) [RHEL-8464] - xfs: rework attr2 feature and mount options (Andrey Albershteyn) [RHEL-8464] - xfs: sb verifier doesn't handle uncached sb buffer (Andrey Albershteyn) [RHEL-8464] - xfs: standardize inode number formatting in ftrace output (Andrey Albershteyn) [RHEL-8464] - xfs: make fsmap backend function key parameters const (Andrey Albershteyn) [RHEL-8464] - xfs: remove kmem_alloc_io() (Andrey Albershteyn) [RHEL-8464] - mm: Add kvrealloc() (Andrey Albershteyn) [RHEL-8464] - xfs: remove kmem_realloc() (Andrey Albershteyn) [RHEL-8464] - xfs: fix silly whitespace problems with kernel libxfs (Andrey Albershteyn) [RHEL-8464] - xfs: deprecate BMV_IF_NO_DMAPI_READ flag (Andrey Albershteyn) [RHEL-8464]- ida: Fix crash in ida_free when the bitmap is empty (Wander Lairson Costa) [RHEL-19681] {CVE-2023-6915} - mm: create a new system state and fix core_kernel_text() (Joel Savitz) [RHEL-5227] - redhat: rewrite genlog and support Y- tags (Jan Stancek) - Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d" (Nigel Croxon) [RHEL-22698] - Revert "x86/fpu/xstate: Fix PKRU covert channel" (Steve Best) [RHEL-22192] - net: tls, update curr on splice as well (Sabrina Dubroca) [RHEL-19065] {CVE-2024-0646} - smb: client: fix OOB in smbCalcSize() (Scott Mayhew) [RHEL-18990] {CVE-2023-6606} - smb: client: fix potential OOB in smb2_dump_detail() (Scott Mayhew) [RHEL-19144] {CVE-2023-6610} - smb: client: fix potential OOB in cifs_dump_detail() (Scott Mayhew) [RHEL-19144] {CVE-2023-6610} - ovl: skip stale entries in merge dir cache iteration (Miklos Szeredi) [RHEL-18076] - ovl: invalidate readdir cache on changes to dir with origin (Miklos Szeredi) [RHEL-18076] - ipv6: avoid atomic fragment on GSO packets (Hangbin Liu) [RHEL-22149] - ipv6: fix potential NULL deref in fib6_add() (Hangbin Liu) [RHEL-22149] - lockdep: Fix block chain corruption (Joel Savitz) [RHEL-5227] - futex: Don't include process MM in futex key on no-MMU (Joel Savitz) [RHEL-5227] - locking/rtmutex: Fix task->pi_waiters integrity (Joel Savitz) [RHEL-5227] - locking/rwsem: Add __always_inline annotation to __down_read_common() and inlined callers (Joel Savitz) [RHEL-5227] - locking/rwsem: Disable preemption in all down_write*() and up_write() code paths (Joel Savitz) [RHEL-5227] - mm: make generic arch_is_kernel_initmem_freed() do what it says (Joel Savitz) [RHEL-5227]- cgroup/cpuset: Inherit parent's load balance state in v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Free DL BW in case can_attach() fails (Waiman Long) [RHEL-12873] - sched/deadline: Create DL BW alloc, free & check overflow interface (Waiman Long) [RHEL-12873] - cgroup/cpuset: Iterate only if DEADLINE tasks are present (Waiman Long) [RHEL-12873] - sched/cpuset: Keep track of SCHED_DEADLINE task in cpusets (Waiman Long) [RHEL-12873] - sched/cpuset: Bring back cpuset_mutex (Waiman Long) [RHEL-12873] - cgroup/cpuset: Rename functions dealing with DEADLINE accounting (Waiman Long) [RHEL-12873] - cgroup/cpuset: Skip task update if hotplug doesn't affect current cpuset (Waiman Long) [RHEL-12873] - cgroup/cpuset: Fix wrong check in update_parent_subparts_cpumask() (Waiman Long) [RHEL-12873] - cgroup/cpuset: Optimize cpuset_attach() on v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Skip spread flags update on v2 (Waiman Long) [RHEL-12873] - kselftest/cgroup: Add cpuset v2 partition root state test (Waiman Long) [RHEL-12873] - cgroup/cpuset: Update description of cpuset.cpus.partition in cgroup-v2.rst (Waiman Long) [RHEL-12873] - cgroup/cpuset: Make partition invalid if cpumask change violates exclusivity rule (Waiman Long) [RHEL-12873] - cgroup/cpuset: Relocate a code block in validate_change() (Waiman Long) [RHEL-12873] - cgroup/cpuset: Show invalid partition reason string (Waiman Long) [RHEL-12873] - cgroup/cpuset: Add a new isolated cpus.partition type (Waiman Long) [RHEL-12873] - cgroup/cpuset: Relax constraints to partition & cpus changes (Waiman Long) [RHEL-12873] - cgroup/cpuset: Allow no-task partition to have empty cpuset.cpus.effective (Waiman Long) [RHEL-12873] - cgroup/cpuset: Miscellaneous cleanups & add helper functions (Waiman Long) [RHEL-12873] - cgroup: cleanup comments (Waiman Long) [RHEL-12873] - cgroup/cpuset: Avoid memory migration when nodemasks match (Waiman Long) [RHEL-12873] - cgroup/cpuset: Enable memory migration for cpuset v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Enable event notification when partition state changes (Waiman Long) [RHEL-12873] - doc/admin-guide/cgroup-v2: use tables (Waiman Long) [RHEL-12873] - docs/admin-guide: cgroup-v2: fix cgroup.type rendering (Waiman Long) [RHEL-12873] - docs: fix memory.low description in cgroup-v2.rst (Waiman Long) [RHEL-12873] - cgroup/cpuset: Revert "Reduce cpuset_rwsem writer latency" (Waiman Long) [RHEL-12873] - selftests/bpf: Workaround verification failure for fexit_bpf2bpf/func_replace_return_code (Artem Savkov) [RHEL-17256] - mISDN: fix use-after-free bugs in l1oip timer handlers (Ricardo Robaina) [RHEL-2553 RHEL-2690] {CVE-2022-3565} - firmware: dmi-sysfs: make pr_info messages rate limited (Prarit Bhargava) [RHEL-21096] - xfs: short circuit xfs_growfs_data_private() if delta is zero (Andrey Albershteyn) [RHEL-19431] - net-sysfs: add check for netdevice being present to speed_show (Michal Schmidt) [RHEL-16007] - drm/mgag200: Fix gamma lut not initialized for G200ER, G200EV, G200SE (Jocelyn Falempe) [RHEL-21054] - netfilter: nf_tables: bail out on mismatching dynset and set expressions (Florian Westphal) [RHEL-19014] {CVE-2023-6622} - netfilter: nft_set_pipapo: skip inactive elements during set walk (Florian Westphal) [RHEL-19721] {CVE-2023-6817} - ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet (Hangbin Liu) [RHEL-19794] {CVE-2023-6932} - s390/paes: fix PKEY_TYPE_EP11_AES handling for secure keyblobs (Tobias Huschle) [RHEL-22160] - s390/dasd: protect device queue against concurrent access (Tobias Huschle) [RHEL-22161] - s390/cmma: fix handling of swapper_pg_dir and invalid_pg_dir (Tobias Huschle) [RHEL-16317] - s390/cmma: fix detection of DAT pages (Tobias Huschle) [RHEL-16317] - s390/mm: add missing arch_set_page_dat() call to gmap allocations (Tobias Huschle) [RHEL-16317] - s390/mm: add missing arch_set_page_dat() call to vmem_crst_alloc() (Tobias Huschle) [RHEL-16317] - s390/cmma: fix initial kernel address space page table walk (Tobias Huschle) [RHEL-16317] - s390/vfio-ap: do not reset queue removed from host config (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: reset queues associated with adapter for queue unbound from driver (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: reset queues filtered from the guest's AP config (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: let on_scan_complete() callback filter matrix and update guest's APCB (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: loop over the shadow APCB when filtering guest's AP configuration (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: always filter entire AP matrix (Cédric Le Goater) [RHEL-19575] - KVM: s390: vsie: Fix STFLE interpretive execution identification (Cédric Le Goater) [RHEL-19575] - KVM: s390: vsie: fix race during shadow creation (Cédric Le Goater) [RHEL-19575] - KVM: s390: fix cc for successful PQAP (Cédric Le Goater) [RHEL-19575] - KVM: s390: fix setting of fpc register (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: fix sysfs status attribute for AP queue devices (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: unpin pages on gisc registration failure (Cédric Le Goater) [RHEL-19575] - iommu/iova: Manage the depot list size (Jerry Snitselaar) [RHEL-10100] - iommu/iova: Make the rcache depot scale better (Jerry Snitselaar) [RHEL-10100] - iommu/iova: Optimize iova_magazine_alloc() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove two WARN_ON in domain_context_mapping_one() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Handle the failure case of dmar_reenable_qi() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in dmar_insert_dev_scope() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove a useless BUG_ON(dev->is_virtfn) (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in map/unmap() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON when domain->pgd is NULL (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in handling iotlb cache invalidation (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON on checking valid pfn range (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Make size of operands same in bitwise operations (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Do not use GFP_ATOMIC when not needed (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove PASID supervisor request support (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Use non-privileged mode for all PASIDs (Jerry Snitselaar) [RHEL-10100] - iommu: Optimise PCI SAC address trick (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Use page mode macros in fetch_pte() (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Allocate IOMMU irqs using numa locality info (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Allocate page table using numa locality info (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Add a length limitation for the ivrs_acpihid command-line parameter (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix ill-formed ivrs_ioapic, ivrs_hpet and ivrs_acpihid options (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Do not allocate io_pgtable_ops for passthrough domain (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix error handling for pdev_pri_ats_enable() (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix compile error for unused function (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Improving Interrupt Remapping Table Invalidation (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Do not Invalidate IRT when IRTE caching is disabled (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Introduce Disable IRTE Caching Support (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Change macro for IOMMU control register bit shift to decimal value (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Remove the unused struct amd_ir_data.ref (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Switch amd_iommu_update_ga() to use modify_irte_ga() (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Handle GALog overflows (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Process all IVHDs before enabling IOMMU features (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Introduce global variable for storing common EFR and EFR2 (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Introduce Support for Extended Feature 2 Register (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Avoid memory allocation in iommu_suspend() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Fix to flush cache of PASID directory table (Jerry Snitselaar) [RHEL-10100] - of/address: Return an error when no valid dma-ranges are found (Jerry Snitselaar) [RHEL-10100] - iommu/arm-smmu-qcom: Fix mask extraction for bootloader programmed SMRs (Jerry Snitselaar) [RHEL-10100] - iommu/arm-smmu-qcom: Read back stream mappings (Jerry Snitselaar) [RHEL-10100] - of: Fix "dma-ranges" handling for bus controllers (Jerry Snitselaar) [RHEL-10100] - swiotlb: move slot allocation explanation comment where it belongs (Jerry Snitselaar) [RHEL-10100] - swiotlb: fix debugfs reporting of reserved memory pools (Jerry Snitselaar) [RHEL-10100] - iommu: fix MAX_ORDER usage in __iommu_dma_alloc_pages() (Jerry Snitselaar) [RHEL-1261] - swiotlb: use the calculated number of areas (Jerry Snitselaar) [RHEL-1261] - swiotlb: relocate PageHighMem test away from rmem_swiotlb_setup (Jerry Snitselaar) [RHEL-1261] - swiotlb: reduce the number of areas to match actual memory pool size (Jerry Snitselaar) [RHEL-1261] - swiotlb: always set the number of areas before allocating the pool (Jerry Snitselaar) [RHEL-1261] - swiotlb: clean up some coding style and minor issues (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix DTE_IRQ_PHYS_ADDR_MASK macro (Jerry Snitselaar) [RHEL-1261] - iommu/amd/iommu_v2: Clear pasid state in free path (Jerry Snitselaar) [RHEL-14152] - iommu/amd/iommu_v2: Fix pasid_state refcount dec hit 0 warning on pasid unbind (Jerry Snitselaar) [RHEL-14152] - iommu/amd: Don't block updates to GATag if guest mode is on (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix domain flush size when syncing iotlb (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix "Guest Virtual APIC Table Root Pointer" configuration in IRTE (Jerry Snitselaar) [RHEL-1261] - iommu: Fix error unwind in iommu_group_alloc() (Jerry Snitselaar) [RHEL-1261] - net/mlx5e: Fix error code in mlx5e_tc_action_miss_mapping_get() (Amir Tzin) [RHEL-924] - net/mlx5: Fix fw tracer first block check (Amir Tzin) [RHEL-924] - net/mlx5e: fix a potential double-free in fs_udp_create_groups (Amir Tzin) [RHEL-924] - net/mlx5e: Fix slab-out-of-bounds in mlx5_query_nic_vport_mac_list() (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header (Amir Tzin) [RHEL-924] - Revert "net/mlx5e: fix double free of encap_header" (Amir Tzin) [RHEL-924] - Revert "net/mlx5e: fix double free of encap_header in update funcs" (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header in update funcs (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header (Amir Tzin) [RHEL-924] - net/mlx5e: Fix error codes in alloc_branch_attr() (Amir Tzin) [RHEL-924] - net/mlx5e: Track xmit submission to PTP WQ after populating metadata map (Amir Tzin) [RHEL-924] - net/mlx5e: Avoid referencing skb after free-ing in drop path of mlx5e_sq_xmit_wqe (Amir Tzin) [RHEL-924] - net/mlx5e: Correct snprintf truncation handling for fw_version buffer used by representors (Amir Tzin) [RHEL-924] - net/mlx5e: Correct snprintf truncation handling for fw_version buffer (Amir Tzin) [RHEL-924] - net/mlx5: Fix a NULL vs IS_ERR() check (Amir Tzin) [RHEL-924] - net/mlx5e: Check netdev pointer before checking its net ns (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Don't offload post action rule if not supported (Amir Tzin) [RHEL-924] - net/mlx5e: Remove a useless function call (Amir Tzin) [RHEL-924] - net/mlx5e: Fix possible deadlock on mlx5e_tx_timeout_work (Amir Tzin) [RHEL-924] - net/mlx5: Increase size of irq name buffer (Amir Tzin) [RHEL-924] - net/mlx5e: Update doorbell for port timestamping CQ before the software counter (Amir Tzin) [RHEL-924] - net/mlx5e: Add recovery flow for tx devlink health reporter for unhealthy PTP SQ (Amir Tzin) [RHEL-924] - net/mlx5e: Make tx_port_ts logic resilient to out-of-order CQEs (Amir Tzin) [RHEL-924] - net/mlx5e: Check return value of snprintf writing to fw_version buffer for representors (Amir Tzin) [RHEL-924] - net/mlx5e: Check return value of snprintf writing to fw_version buffer (Amir Tzin) [RHEL-924] - net/mlx5e: Reduce the size of icosq_str (Amir Tzin) [RHEL-924] - net/mlx5e: Fix pedit endianness (Amir Tzin) [RHEL-924] - net/mlx5: Decouple PHC .adjtime and .adjphase implementations (Amir Tzin) [RHEL-924] - IB/mlx5: Fix init stage error handling to avoid double free of same QP and UAF (Amir Tzin) [RHEL-924] - IB/mlx5: Fix rdma counter binding for RAW QP (Amir Tzin) [RHEL-924] - net/mlx5e: Fix VF representors reporting zero counters to "ip -s" command (Amir Tzin) [RHEL-13397 RHEL-924] - net/mlx5e: Don't offload internal port if filter device is out device (Amir Tzin) [RHEL-924] - net/mlx5e: XDP, Fix XDP_REDIRECT mpwqe page fragment leaks on shutdown (Amir Tzin) [RHEL-924] - net/mlx5: Handle fw tracer change ownership event based on MTRC (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, fix peer entry ageing in LAG mode (Amir Tzin) [RHEL-924] - net/mlx5: E-switch, register event handler before arming the event (Amir Tzin) [RHEL-924] - net/mlx5e: Again mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix NULL string error (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix mutex unlocking on error flow for steering anchor creation (Amir Tzin) [RHEL-924] - net/mlx5: Free IRQ rmap and notifier on kernel shutdown (Amir Tzin) [RHEL-924] - net/mlx5: Free irqs only on shutdown callback (Amir Tzin) [RHEL-924] - net/mlx5: Improve naming of pci function vectors (Amir Tzin) [RHEL-924] - net/mlx5e: Clear mirred devices array if the rule is split (Amir Tzin) [RHEL-924] - net/mlx5: Dynamic cyclecounter shift calculation for PTP free running clock (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix trailing */ formatting in block comment (Amir Tzin) [RHEL-924] - net/mlx5: Use RMW accessors for changing LNKCTL (Amir Tzin) [RHEL-924] - net/mlx5: DR, Fix code indentation (Amir Tzin) [RHEL-924] - net/mlx5: Fix error message in mlx5_sf_dev_state_change_handler() (Amir Tzin) [RHEL-924] - net/mlx5e: Add capability check for vnic counters (Amir Tzin) [RHEL-924] - net/mlx5e: Expose catastrophic steering error counters (Amir Tzin) [RHEL-924] - net/mlx5: Skip clock update work when device is in error state (Amir Tzin) [RHEL-924] - net/mlx5: LAG, Check correct bucket when modifying LAG (Amir Tzin) [RHEL-924] - net/mlx5e: Unoffload post act rule when handling FIB events (Amir Tzin) [RHEL-924] - net/mlx5: Allow 0 for total host VFs (Amir Tzin) [RHEL-924] - net/mlx5: DR, Fix wrong allocation of modify hdr pattern (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Fix internal port memory leak (Amir Tzin) [RHEL-924] - net/mlx5: Fix typo reminder -> remainder (Amir Tzin) [RHEL-924] - net/mlx5: fs_core: Skip the FTs in the same FS_TYPE_PRIO_CHAINS fs_prio (Amir Tzin) [RHEL-924] - net/mlx5: fs_core: Make find_closest_ft more generic (Amir Tzin) [RHEL-924] - net/mlx5e: kTLS, Fix protection domain in use syndrome when devlink reload (Amir Tzin) [RHEL-924] - net/mlx5e: Move representor neigh cleanup to profile cleanup_tx (Amir Tzin) [RHEL-924] - net/mlx5e: Fix crash moving to switchdev mode when ntuple offload is set (Amir Tzin) [RHEL-13501 RHEL-924] - net/mlx5e: Don't hold encap tbl lock if there is no encap action (Amir Tzin) [RHEL-924] - net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer() (Amir Tzin) [RHEL-924] - net/mlx5: fix potential memory leak in mlx5e_init_rep_rx (Amir Tzin) [RHEL-924] - net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx (Amir Tzin) [RHEL-924] - net/mlx5e: Check for NOT_READY flag state after locking (Amir Tzin) [RHEL-924] - net/mlx5: Register a unique thermal zone per device (Amir Tzin) [RHEL-924] - net/mlx5e: fix memory leak in mlx5e_ptp_open (Amir Tzin) [RHEL-924] - net/mlx5e: fix memory leak in mlx5e_fs_tt_redirect_any_create (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free in mlx5e_destroy_flow_table (Amir Tzin) [RHEL-924] - net/mlx5: Fix reserved at offset in hca_cap register (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix Q-counters query in LAG mode (Amir Tzin) [RHEL-924] - RDMA/mlx5: Remove vport Q-counters dependency on normal Q-counters (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix Q-counters per vport allocation (Amir Tzin) [RHEL-924] - net/mlx5: Drain health before unregistering devlink (Amir Tzin) [RHEL-924] - net/mlx5: E-switch, Devcom, sync devcom events and devcom comp register (Amir Tzin) [RHEL-924] - eth: mlx5: avoid iterator use outside of a loop (Amir Tzin) [RHEL-924] - net/mlx5: Update op_mode to op_mod for port selection (Amir Tzin) [RHEL-924] - net/mlx5: E-Switch, Remove redundant dev arg from mlx5_esw_vport_alloc() (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Wrap notes in admonition blocks (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Use bullet and definition lists for vnic counters description (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Wrap vnic reporter devlink commands in code blocks (Amir Tzin) [RHEL-924] - net/mlx5e: Add vnic devlink health reporter to representors (Amir Tzin) [RHEL-14659 RHEL-924] - net/mlx5: Add vnic devlink health reporter to PFs/VFs (Amir Tzin) [RHEL-14659 RHEL-924] - Revert "net/mlx5: Expose vnic diagnostic counters for eswitch managed vports" (Amir Tzin) [RHEL-14659 RHEL-924] - Revert "net/mlx5: Expose steering dropped packets counter" (Amir Tzin) [RHEL-14659 RHEL-924] - net/mlx5: Create a new profile for SFs (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, add tracepoints for multicast (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, implement mdb offload (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, support multicast VLAN pop (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, add per-port multicast replication tables (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, snoop igmp/mld packets (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, extract code to lookup parent bridge of port (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, move additional data structures to priv header (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, increase bridge tables sizes (Amir Tzin) [RHEL-924] - net/mlx5: Add mlx5_ifc definitions for bridge multicast support (Amir Tzin) [RHEL-924] - net/mlx5e: Fix SQ SW state layout in SQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Fix RQ SW state layout in RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - RDMA/mlx5: Remove unused num_alloc_xa_entries variable (Amir Tzin) [RHEL-924] - net/mlx5e: Rename misleading skb_pc/cc references in ptp code (Amir Tzin) [RHEL-924] - net/mlx5: Update cyclecounter shift value to improve ptp free running mode precision (Amir Tzin) [RHEL-924] - RDMA/mlx5: Expand switchdev Q-counters to expose representor statistics (Amir Tzin) [RHEL-924] - net/mlx5: Introduce other vport query for Q-counters (Amir Tzin) [RHEL-924] - net/mlx5e: Fix build break on 32bit (Amir Tzin) [RHEL-924] - net/mlx5: Set out of order (ooo) by default (Amir Tzin) [RHEL-924] - RDMA/mlx5: Disable out-of-order in integrity enabled QPs (Amir Tzin) [RHEL-924] - net/mlx5: Expose bits for enabling out-of-order by default (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Add support for VxLAN GBP encap/decap flows offload (Amir Tzin) [RHEL-897 RHEL-924] - net/mlx5e: Add helper for encap_info_equal for tunnels with options (Amir Tzin) [RHEL-897 RHEL-924] - net/mlx5e: Remove redundant include statement and adjust code to upstream. (Amir Tzin) [RHEL-924] - net/mlx5e: Enable TC offload for egress MACVLAN over bond (Amir Tzin) [RHEL-924] - net/mlx5e: Enable TC offload for ingress MACVLAN over bond (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Extract indr setup block checks to function (Amir Tzin) [RHEL-924] - net/mlx5e: Add XSK RQ state flag for RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Expose SQ SW state as part of SQ health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Stringify RQ SW state in RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Rename RQ/SQ adaptive moderation state flag (Amir Tzin) [RHEL-924] - net/mlx5e: Utilize the entire fifo (Amir Tzin) [RHEL-924] - net/mlx5: Implement thermal zone (Amir Tzin) [RHEL-924] - net/mlx5: Stop waiting for PCI up if teardown was triggered (Amir Tzin) [RHEL-924] - net/mlx5: remove redundant clear_bit (Amir Tzin) [RHEL-924]- libbpf: Add LIBBPF_DEPRECATED_SINCE macro for scheduling API deprecations (Artem Savkov) [RHEL-10697] - drm/amdgpu/sdma5.2: add begin/end_use ring callbacks (Michel Dänzer) [RHEL-19603] - audit: fix possible soft lockup in __audit_inode_child() (Ricardo Robaina) [RHEL-9128] - audit: correct audit_filter_inodes() definition (Ricardo Robaina) [RHEL-9128] - usb: typec: ucsi: Use GET_CAPABILITY attributes data to set power supply scope (Desnes Nunes) [RHEL-14574] - perf: Fix perf_event_validate_size() lockdep splat (Michael Petlan) [RHEL-17968] - perf: Fix perf_event_validate_size() (Michael Petlan) [RHEL-17968] {CVE-2023-6931} - Bluetooth: af_bluetooth: Fix Use-After-Free in bt_sock_recvmsg (Ricardo Robaina) [RHEL-20743] {CVE-2023-51779} - md/raid1-10: limit the number of plugged bio (Nigel Croxon) [RHEL-19121] - md/raid1-10: don't handle pluged bio by daemon thread (Nigel Croxon) [RHEL-19121] - md/md-bitmap: add a new helper to unplug bitmap asynchrously (Nigel Croxon) [RHEL-19121] - md/raid1-10: submit write io directly if bitmap is not enabled (Nigel Croxon) [RHEL-19121] - md/raid1-10: factor out a helper to submit normal write (Nigel Croxon) [RHEL-19121] - md/raid1-10: factor out a helper to add bio to plug (Nigel Croxon) [RHEL-19121] - selftests/bpf: Workaround verification failure for fexit_bpf2bpf/func_replace_return_code (Felix Maurer) [RHEL-15938] - bpf, sockmap: Reject sk_msg egress redirects to non-TCP sockets (Felix Maurer) [RHEL-15506] - bpf, sockmap: Fix map type error in sock_map_del_link (Felix Maurer) [RHEL-15506] - xsk: fix refcount underflow in error path (Felix Maurer) [RHEL-15506] - bpf, cpumap: Make sure kthread is running before map update returns (Felix Maurer) [RHEL-15506] - bpf: cpumap: Fix memory leak in cpu_map_update_elem (Felix Maurer) [RHEL-15506] - page_pool: fix inconsistency for page_pool_ring_[un]lock() (Felix Maurer) [RHEL-15506] - net: page_pool: use in_softirq() instead (Felix Maurer) [RHEL-15506] - xsk: Fix unaligned descriptor validation (Felix Maurer) [RHEL-15506] - Revert "x86/hyperv: fix logical processor creation" (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: fix logical processor creation (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Move the code in ivm.c around to avoid unnecessary ifdef's (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Remove hv_isolation_type_en_snp (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Use TDX GHCI to access some MSRs in a TDX VM with the paravisor (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Bring the post_msg_page back for TDX VMs with the paravisor (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Introduce a global variable hyperv_paravisor_present (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add missing 'inline' to hv_snp_boot_ap() stub (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Mark hv_ghcb_terminate() as noreturn (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Support >64 VPs for a fully enlightened TDX/SNP VM (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix serial console interrupts for fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Support fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Support hypercalls for fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add hv_isolation_type_tdx() to detect TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix undefined reference to isolation_type_en_snp without CONFIG_HYPERV (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add hyperv-specific handling for VMMCALL under SEV-ES (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add smp support for SEV-SNP guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: implement and use hv_smp_prepare_cpus (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add VTL specific structs and hypercalls (Vitaly Kuznetsov) [RHEL-10110] - clocksource: hyper-v: Mark hyperv tsc page unencrypted in sev-snp enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Use vmmcall to implement Hyper-V hypercall in sev-snp enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - drivers: hv: Mark percpu hvcall input arg page unencrypted in SEV-SNP enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove the per-CPU post_msg_page (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Mark Hyper-V vp assist page unencrypted in SEV-SNP enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Set Virtual Trust Level in VMBus init message (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add sev-snp enlightened guest static key (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Do not corrupt frame-pointer in __tdx_hypercall() (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Expand __tdx_hypercall() to handle more arguments (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Refactor __tdx_hypercall() to allow pass down more arguments (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Add more registers to struct tdx_hypercall_args (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Fix typo in comment in __tdx_hypercall() (Vitaly Kuznetsov) [RHEL-10110] - arm64/hyperv: Use CPUHP_AP_HYPERV_ONLINE state to fix CPU online sequencing (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix hyperv_pcpu_input_arg handling when CPUs go online/offline (Vitaly Kuznetsov) [RHEL-10110] - PCI: hv: Replace retarget_msi_interrupt_params with hyperv_pcpu_input_arg (Vitaly Kuznetsov) [RHEL-10110] - PCI: hv: Enable PCI pass-thru devices in Confidential VMs (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: Don't remap addresses that are above shared_gpa_boundary (Vitaly Kuznetsov) [RHEL-10110] - hv_netvsc: Remove second mapping of send and recv buffers (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove second way of mapping ring buffers (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove second mapping of VMBus monitor pages (Vitaly Kuznetsov) [RHEL-10110] - swiotlb: Remove bounce buffer remapping for Hyper-V (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Change vTOM handling to use standard coco mechanisms (Vitaly Kuznetsov) [RHEL-10110] - init: Call mem_encrypt_init() after Hyper-V hypercall init is done (Vitaly Kuznetsov) [RHEL-10110] - x86/mm: Handle decryption/re-encryption of bss_decrypted consistently (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: Explicitly request decrypted in vmap_pfn() calls (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Reorder code to facilitate future work (Vitaly Kuznetsov) [RHEL-10110] - x86/ioremap: Add hypervisor callback for private MMIO mapping in coco VM (Vitaly Kuznetsov) [RHEL-10110] - x86/sev: Add SEV-SNP guest feature negotiation support (Vitaly Kuznetsov) [RHEL-10110] - ALSA: update configuration for RHEL 8.10 (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: fix missing report for jack initial status (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: fix out-of-bounds in snd_pcm_state_names (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Fix for old systems which do not support command (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Remove unnecessary boolean state variable firmware_running (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add Pioneer DJM-450 mixer controls (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable headset on Lenovo M90 Gen5 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: fix speakers on XPS 9530 (2023) (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Apply quirk for ASUS UM3504DA (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add supported ALC257 for ChromeOS (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Headset Mic VREF to 100% (Jaroslav Kysela) [RHEL-13726] - ALSA: hda - Fix speaker and headset mic pin config for CHUWI CoreBook XPro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for HP Laptops (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for ASUS 2024 Zenbooks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP 255 G10 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP 255 G8 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Add Dell ALC295 to pin fall back table (Jaroslav Kysela) [RHEL-13726] - ALSA: info: Fix potential deadlock at disconnection (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: ASUS UM5302LA: Added quirks for cs35L41/10431A83 on i2c bus (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add support dual speaker for Dell (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8540: Add self recovery to improve capture quility (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: register hpd callback on component probe (Jaroslav Kysela) [RHEL-13726] - ASoC: dapm: fix clock get name (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add ASRock X670E Taichi to denylist (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS UX7602ZM (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Improve system suspend and resume handling (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca: fix speaker route missing issue (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix missing error code in cs35l41_smart_amp() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: mark cs35l41_verify_id() static (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add missing check with firmware version control (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Remap Level Meter values (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Allow passing any output to line_out_remap() (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add support for reading firmware version (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Rename Gen 3 config sets (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Rename scarlett_gen2 to scarlett2 (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Detect CSPL errors when sending CSPL commands (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Check CSPL state after loading firmware (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Do not unload firmware before reset in system suspend (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Force a software reset after hardware reset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Run boot process during resume callbacks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Assert Reset prior to de-asserting in probe and system resume (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Assert reset before system suspend (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Use reset label to get GPIO for HP Zbook Fury 17 G9 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Fix mem leak when parsing UUIDs fails (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: add quirk flag to enable native DSD for McIntosh devices (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt298: remove redundant assignment to d_len_code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-pci-dev: Fix community key quirk detection (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Stop processing CODECs when enough are found (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-config: Fix JSL Chromebook quirk detection (Jaroslav Kysela) [RHEL-13726] - ASoC: da7213: Add new kcontrol for tonegen (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Fixed ASUS platform headset Mic issue (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Correct the process of setting up Gnd switch in AAD (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/relatek: Enable Mute LED on HP Laptop 15s-fq5xxx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GU603ZV (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5650: fix the wrong result of key button (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: reorder the argument in error log (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715-sdca: reorder the argument in error log (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt712_sdca: construct cards->components by name_prefix (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt_sdca_jack_common: add rt713 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-mtl-match: add rt713 rt1316 config (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-rpl-match: add rt711-l0-rt1316-l12 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: update HP Omen match (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Fix missing include of gpio/consumer.h (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Ensure sof_ops_free() is still called when probe never ran. (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add Focusrite Clarett 2Pre and 4Pre USB support (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix microphone sound on Nexigo webcam. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Change model for Intel RVP board (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix microphone sound on Opencomm2 Headset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Cleanup and fix double free in firmware request (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682: Fix regulator enable/disable sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: Fix broken channel map reporting (Jaroslav Kysela) [RHEL-13726] - ASoC: core: Do not call link_exit() on uninitialized rtd objects (Jaroslav Kysela) [RHEL-13726] - ASoC: core: Print component name when printing log (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix non-functional mic on Lenovo 82YM (Jaroslav Kysela) [RHEL-13726] - ALSA: aloop: Add control element for getting the access mode (Jaroslav Kysela) [RHEL-13726] - ALSA: aloop: Add support for the non-interleaved access mode (Jaroslav Kysela) [RHEL-13726] - ALSA: intel8x0m: fix name of SIS7013 sound chip in comment (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: fix for firmware reload failure after playback (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add Focusrite Clarett+ 2Pre and 4Pre support (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-generic-dmaengine-pcm: Fix function name in comment (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add read-only ALSA control for forced mute (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Support mute notifications for CS35L41 HDA (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Support ACPI Notification framework via component binding (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add notification support into component binding (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 merge RTK codec with CS CS35L41 AMP (Jaroslav Kysela) [RHEL-13726] - ASoC: hdac_hda: fix HDA patch loader support (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Make IRQ handling conditionally built (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: Make sure DAI parameters cleared if the DAI becomes inactive (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add support for SKU 0B14 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: fix Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: hdac_hda: add HDA patch loader support (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 Realtek I2S speaker platform support (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: scarlett_gen2: Fix another -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Use size_add() in call to struct_size() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: MTL: Reduce the DSP init timeout (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Only call sof_ops_free() on remove if the probe was successful (Jaroslav Kysela) [RHEL-13726] - ALSA: riptide: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: cs4231: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: ad1848: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: generic: Check potential mixer name string truncation (Jaroslav Kysela) [RHEL-13726] - ALSA: cmipci: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: firewire: Fix -Wformat-truncation warning for MIDI stream names (Jaroslav Kysela) [RHEL-13726] - ALSA: firewire: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: xen: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: opti9x: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: es1688: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: cs4236: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: sscape: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: caiaq: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: scarlett_gen2: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ASoC: imx-audmix: Fix return error with devm_clk_get() (Jaroslav Kysela) [RHEL-13726] - ASoC: hdaudio.c: Add missing check for devm_kstrdup (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add correct product series name to messages (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add support for Clarett 8Pre USB (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Move USB IDs out from device_info struct (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Default mixer driver to enabled (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: fix wrong sizeof argument (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: Fix DSP core put imbalance on widget setup failure (Jaroslav Kysela) [RHEL-13726] - firmware: cirrus: cs_dsp: Only log list of algorithms in debug build (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Avoid stale SoundWire ATTACH after hard reset (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Don't rely on GPIOD_OUT_LOW to set RESET initially low (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Ensure a reset pulse meets minimum pulse width. (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: mixer: Remove temporary string use in parse_clock_source_unit (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Splitting the UX3402 into two separate models (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-sdw-acpi: Use u8 type for link index (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Only cancel jack-detect work on suspend if active (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix IRQ not being free-ed for HDA jack detect mode (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Enable the IRQ on resume after configuring jack-detect (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Do not disable/enable IRQ twice on suspend/resume (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix sleep in atomic context (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Revert "Fix sleep in atomic context" (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Use dev_name of card_dev as debugfs directory name (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Fixed two speaker platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix non-functional mic on Lenovo 82QF and 82UG (Jaroslav Kysela) [RHEL-13726] - Add DMI ID for MSI Bravo 15 B7ED (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm: Shrink stack frame for __soc_pcm_hw_params (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Consistently use dev_err_probe() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Undo runtime PM changes at driver exit time (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix unbalanced pm_runtime_get() (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Make use of dev_err_probe() (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Undo runtime PM changes at driver exit time (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Verify PM runtime resume errors in IRQ handler (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Fix broken shared boost activation (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Handle mdsync_up reg write errors (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Handle mdsync_down reg write errors (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Disable power save for solving pop issue on Lenovo ThinkCentre M70q (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix a non-functional mic on Lenovo 82TL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 I2S speaker platform support (Jaroslav Kysela) [RHEL-13726] - regmap: debugfs: Fix a erroneous check after snprintf() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/cirrus: Fix broken audio on hardware with two CS42L42 codecs. (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: NULL pointer access when removing jack (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add DMI entries to support Victus by HP Gaming Laptop 15-fb0xxx (8A3E) (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Don't try to submit URBs after disconnection (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: Do not error if a DAI link component is not found (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for mute LEDs on HP ENVY x360 15-eu0xxx (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix a non-functional mic on Lenovo 82SJ (Jaroslav Kysela) [RHEL-13726] - ALSA: ymfpci: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Override the _DSD for HP Zbook Fury 17 G9 to correct boost type (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for HP Victus 16-d1xxx to enable mute LED (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Correct amp_gain_tlv values (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: clear dsp to host interrupt status (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: clear panic mask status when panic occurs (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: add conditional check for acp_clkmux_sel register (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: remove redundant clock mux selection register write (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: enable ACP external global interrupt (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: remove unused sha dma interrupt code (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Fix possible error value of *rac97 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add module parameter to ignore the CPC value (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify the reference output valid_bits for copier (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix pipeline params at the output of copier (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix the output reference params for SRC (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify pipeline params based on SRC output format (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix init call orders for UAC1 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: fix typos (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add VivoBook Pro 15 to quirks list for acp6x (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add kcontrols and widgets per-codec in common code (Jaroslav Kysela) [RHEL-13726] - ALSA: aoa: Fix typos in PCM fix patch (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: improve the depop sequences of CBJ detection (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682s: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5668: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5665: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Convert to just use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: change cs35l41_prop_model to static (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Drop snd_device_initialize() (Jaroslav Kysela) [RHEL-13726] - ALSA: seq: Create device with snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ALSA: timer: Create device with snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ALSA: compress: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: rawmidi: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: hwdep: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Don't embed ctl_dev (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Introduce snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-pcm: fix possible null pointer deference (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix the loop check in cs35l41_add_dsd_properties (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Fix new control name check (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Support systems with missing _DSD properties (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-cfg: Add Chromebook quirk to ADL/RPL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Remodified 3k pull low procedure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: Add a token for dropping widget name in kcontrol name (Jaroslav Kysela) [RHEL-13726] - ASoC: dapm: Add a flag for not having widget name in kcontrol name (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Refactor code for HDA stream creation (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add support for Dell SKU0C87 devices (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5660: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5659: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5514: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5514-spi: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1305: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1019: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1016: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1015p: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1015: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1011: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-jack: calling snd_soc_jack_report causes a null pointer access (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/cs8409: Support new Dell Dolphin Variants (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308-sdw: fix random louder sound (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: Use devm_kmemdup to replace devm_kmalloc + memcpy (Jaroslav Kysela) [RHEL-13726] - ASoC: tas5805m: Use devm_kmemdup to replace devm_kmalloc + memcpy (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: Add software reset in io init (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Initialize chip in hda_sdw_check_wakeen_irq() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Switch Dell Oasis models to use SPI (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for HP G11 Laptops (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Update the basecfg for copier earlier (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Simplify get_slave_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Allow different devices on the same link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Support multiple groups on the same link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Device loop should not always start at adr_index (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move range check of codec_conf into inner loop (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Update DLC index each time one is added (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Pull device loop up into create_sdw_dailink (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Add helper to create a single codec DLC (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof-sdw: Move check for valid group id to get_dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Check link mask validity in get_dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove duplicate NULL check on adr_link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Printk's should end with a newline (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: intel: hda: Clean up link DMA for IPC3 during stop (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof-sdw-cs42142: fix for codec button mapping (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-mlink: add sublink to dev_dbg() log (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: IPC4: clarify 'pipeline_ids' usage and logs (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: add abstraction for SoundWire wake-ups (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai-ops: only allocate/release streams for first CPU DAI (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: restore gateway config length (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4: avoid uninitialized default instance 0 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix u16/32 confusion in LSDIID (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-mlink: fix off-by-one error (Jaroslav Kysela) [RHEL-13726] - ALSA: info: Remove unused function declarations (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Fix incorrect use of sizeof in sof_ipc3_do_rx_work() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp3x-rt5682-max9836: Configure jack as not detecting Line Out (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Allow SoundWire peripherals to register IRQ handlers (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-acpi: Add missing kernel doc (Jaroslav Kysela) [RHEL-13726] - soundWire: intel_auxdevice: resume 'sdw-master' on startup and system resume (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_auxdevice: enable pm_runtime earlier on startup (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add support for Mythware XA001AU capture and playback interfaces. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_da7219_max98373: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: kbl_da7219_max98927: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: kbl_da7219_max98357a: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bytcr_wm5102: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bxt_da7219_max98357a: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: da7219: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp3x-rt5682-max9836: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp-rt5645: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp-da7219-max98357a: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: max98373-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: max98363: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1318-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1316-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca-dmic: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1712-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt700: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: make regmap cache-only in probe (Jaroslav Kysela) [RHEL-13726] - ASoC: SoundWire codecs: make regmap cache-only in probe (Jaroslav Kysela) [RHEL-13726] - ASoC: SoundWire codecs: return error status in probe (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/i915: extend connectivity check to cover Intel ARL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-cfg: use common include for MeteorLake (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: add HD Audio PCI ID for Intel Arrow Lake-S (Jaroslav Kysela) [RHEL-13726] - PCI: add ArrowLake-S PCI ID for Intel HDAudio subsystem. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Print amp configuration after bind (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: set variables dev_attr_vendor_id to static (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5665: add missed regulator_bulk_disable (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Remove unused function declaration (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move group_generated logic (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Merge codec_conf_alloc into dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Clean up DAI link counting (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Allow direct specification of CODEC name (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: break earlier when a adr link contains different codecs (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move amp_num initialisation to mc_probe (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove redundant parameters in dai creation (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Minor tidy up of mc_probe (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Constify parameter to find_codec_part_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Simplify find_codec_info_acpi (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove some extra line breaks (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Rename codec_idx to codec_dlc_index (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Use consistent variable naming for links (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add support for SKU 0AFE (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: rename link_id to be_id (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: allow mockup amplifier to provide feedback (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: reorder SoundWire codecs in Kconfig (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw at link 0 in RPL match table (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp5x-mach:add checks to avoid static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: atom: remove static analysis false positive (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bdw_rt286: add checks to avoid static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: simplify code to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: add checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-client-probes-ipc4: add checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Deprecate invalid enums in IPC3 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: update dai_link_fixup for SOF_DAI_MEDIATEK_AFE (Jaroslav Kysela) [RHEL-13726] - ASoC: 88pm860x: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ASoC: fsl_micfil: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: bcd2000: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: xen-front: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Support ASUS G713PV laptop (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Update for native DSD support quirks (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1316: fix key tone missing (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: change cs42l51_of_match to static (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3-dtrace: Switch to memdup_user_nul() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/relatek: Enable Mute LED on HP 250 G8 (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add quirk for Microsoft Modern Wireless Headset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure amp is only unmuted during playback (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add device_link between HDA and cs35l41_hda (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Rework System Suspend to ensure correct call separation (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Use pre and post playback hooks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: hda_component: Add pre and post playback hooks to hda_component (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Move Play and Pause into separate functions (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure we pass up any errors during system suspend. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure we correctly re-sync regmap before system suspending. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Check mailbox status of pause command after firmware load (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Poll for Power Up/Down rather than waiting a fixed delay (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Use mbox command to enable speaker output for external boost (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: add HDMI codec ID for Intel LNL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/hdmi: keep codec entries in numerical order (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Fix missing header dependencies (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711-sdca: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: wm8960: Add DAC filter characteristics selection (Jaroslav Kysela) [RHEL-13726] - ALSA: ice1712: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ca0106: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: vmaster: Add snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: cmipci: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: via82xx: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: maestro3: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: ice1712: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: es1968: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: cs46xx: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: ca0106: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Introduce snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add support for DELL Oasis 13/14/16 laptops (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Fix generic fixup definition for cs35l41 amp (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8821: Add DMI quirk mechanism for active-high jack-detect (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: fix SND_SOC_AMD_ACP_PCI depdenencies (Jaroslav Kysela) [RHEL-13726] - ASoc: codecs: ES8316: Fix DMIC config (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP Laptop 15s-eq2xxx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for Clevo NS70AU (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: Go back and simplify with snd_ctl_find_id() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take lock in snd_ctl_find_id() and snd_ctl_find_numid() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Introduce unlocked version for snd_ctl_find_*() helpers (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Make snd_ctl_find_id() argument const (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Add lockdep warning to internal functions (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take controls_rwsem lock in snd_ctl_remove() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take card->controls_rwsem in snd_ctl_rename() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: delete unnecessary NULL check (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Check for failure reading AAD IRQ events (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Flush pending AAD IRQ when suspending (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sst: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ALSA: intel-dsp-config: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/i915: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add controller matching macros (Jaroslav Kysela) [RHEL-13726] - ALSA: Remove unused Broxton PCI ID (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Remove unused Broxton PCI ID (Jaroslav Kysela) [RHEL-13726] - PCI: Add Intel Audio DSP devices to pci_ids.h (Jaroslav Kysela) [RHEL-13726] - PCI: Sort Intel PCI IDs by number (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Update jact detection function (Jaroslav Kysela) [RHEL-13726] - ASOC: codecs: ES8326: Add calibration support for version_b (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Fix power-up sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Change Volatile Reg function (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Change Hp_detect register names (Jaroslav Kysela) [RHEL-13726] - tools include UAPI: Sync the sound/asound.h copy with the kernel sources (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Add es8326_mute function (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: fix driver to properly autoload with automatic module loading (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-dai: don't call PCM audio ops if the stream is not supported (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - remove 3k pull low procedure (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: clean up some inconsistent indentings (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix the issue of speaker noise (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: Add new dmi entries to config entry (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: Add acpi machine id's for vangogh platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add machine driver support for max98388 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add machine driver support for nau8821 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3-dtrace: uninitialized data in dfsentry_trace_filter_write() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GZ301V (Jaroslav Kysela) [RHEL-13726] - ALSA: jack: Fix mutex call in snd_jack_report() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Use dmi_first_match() for DMI quirk handling (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Make use of DRV_NAME (Jaroslav Kysela) [RHEL-13726] - ASoC: core: suppress probe deferral errors (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: suppress probe deferral errors (Jaroslav Kysela) [RHEL-13726] - soundwire: fix enumeration completion (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: add the system level suspend-resume callback (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: check return value after reading device id (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: implement set_jack callback (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Whitespace fix (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG G614Jx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Amend G634 quirk to enable rear speakers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GA402X (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GX650P (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Fix potential data race at PCM memory allocation helpers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: fix a possible null-pointer dereference due to data race in snd_hdac_regmap_sync() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for Unis H3C Desktop B760 & Q760 (Jaroslav Kysela) [RHEL-13726] - ASoC: stac9766: fix build errors with REGMAP_AC97 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Sort headers alphabetically (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Use device_get_match_data() (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Use agnostic irq_domain_create_linear() (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Refactor GPIO support code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: refactor PSP smn_read (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: add revision check for sending sha dma completion command (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: es8316: Add support for S24_3LE format (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: es8316: Add support for 24 MHz MCLK (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix sleep in atomic context (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for Clevo NPx0SNx (Jaroslav Kysela) [RHEL-13726] - soundwire: amd: Fix a check for errors in probe() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add pm ops support for rembrandt platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: move pdm macros to common header file (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store the pdm stream channel mask (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: export config_acp_dma() and config_pte_for_stream() symbols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store xfer_resolution of the stream (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add pm ops support for acp pci driver (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store platform device reference created in pci probe call (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: remove the redundant acp enable/disable interrupts functions (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add acp i2s master clock generation for rembrandt platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: refactor the acp init and de-init sequence (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: fix for invalid dai id handling in acp_get_byte_count() (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: fix channel info for compressed formats (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: fix ELD constraints for (E)AC3, DTS(-HD) and MLP formats (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: update pm_runtime enable sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-dapm.h: Convert macros to return a compound literal (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: remove acp poweroff function (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: clear pdm dma interrupt mask (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for ROG ALLY CS35l41 audio (Jaroslav Kysela) [RHEL-13726] - ASoC: cs43130: Fix numerator/denominator mixup (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GV601V (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: cleanup soc_dai_link_sanity_check() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: initialize dlc on snd_soc_get_dai_id() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG G634Z (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-compress: Fix deadlock in soc_compr_open_fe (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Add MODULE_FIRMWARE macro (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: wm0010: Add MODULE_FIRMWARE macros (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: setup primary core info on MeteorLake platform (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: pm: Remove duplicated code in sof_suspend (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4: Switch to use the sof_debug:bit11 to dump message payload (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: Dump IPC message payload (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Add new sof_debug flag to request message payload dump (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Free the firmware trace before calling snd_sof_shutdown() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: test virtual widget in sof_walk_widgets_in_order (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: add is_virtual_widget helper (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_rt5682: Add mtl support RT1019P speaker (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_rt5682: reorder quirk table (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Make master_list ordered to prevent deadlocks (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Prevent lockdep asserts when stream has multiple buses (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Fix possible NULL dereference in snd_ac97_mixer (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add quirk flag for HEM devices to enable native DSD playback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: Add support for IPC with a reply_size set to zero (Jaroslav Kysela) [RHEL-13726] - ALSA: timer: minimize open-coded access to hw.resolution (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix broken resume due to UAC3 power state (Jaroslav Kysela) [RHEL-13726] - ALSA: seq: oss: Fix racy open/close of MIDI devices (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-ssm4567: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt5682: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt298: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt286: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt274: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-nau8825: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98927: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98373: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98357a: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-hdaudio: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-dmic: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-da7219: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: max98363: Remove cache defaults for volatile registers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add a quirk for Compaq N14JP6 (Jaroslav Kysela) [RHEL-13726] - ASoC: audio-graph-card2-custom-sample: add missing CPU:Codec = 1:N sample (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Refactor rx function for fuzzing (Jaroslav Kysela) [RHEL-13726] - ASoC: max98088: clean up some inconsistent indenting (Jaroslav Kysela) [RHEL-13726] - ASoC: remove old trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: use use new trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ASoC: add new trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/intel: Workaround for WALLCLK register for loongson controller (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Workaround for SDnCTL register on loongson (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Using polling mode for loongson controller by default (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add Loongson LS7A HD-Audio support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add dai_link_codec_ch_map (Jaroslav Kysela) [RHEL-13726] - ASoC: add N cpus to M codecs dai link support (Jaroslav Kysela) [RHEL-13726] - soundwire: debugfs: Add missing SCP registers (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-pcm: remove kernel parameter init (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix SoundWire/HDaudio mutual exclusion (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Delete cs35l41 component master during free (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix endian conversions (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Clean up Firmware Load Controls (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Keep the previous numid at snd_ctl_rename_id() (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Log correct region name in bin error messages (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: select CONFIG_SND_AMD_ACP_CONFIG (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda: add helper to extract SoundWire link count (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: prepare for code reuse (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: add DMA config TLV to IPC data (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: introduce DMA config TLV (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: extend ALH-specific data structure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add get_hlink callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add calc_stream_format callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add codec_dai_set_stream callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add error checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add Rex CS42l42 and MAX98363 SoundWire entries (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add support for Rex soundwire (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add support for MAX98363 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Modify maxim helper functions and structure names (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Rename sof_sdw_max98373.c file to sof_sdw_maxim.c (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add helper function for cs42l42 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Sof_ssp_amp: Correcting author name. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: ADL: Moving amp only boards into end of the table. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: ADL: Enable HDMI-In capture feature support for non-I2S codec boards. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof-sdw: add Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add tables for Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add quick for Dell SKU 0BDA (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add table for RPL Dell SKU 0BDA (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: increase sdw pin index for each sdw link (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add rt713 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-mtl-match: add rt712 ID (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-tgl-match: add rt712 ID (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add rt712 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: make rt711_sdca be generic (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: rename SOF_RT711_JDSRC to SOF_JACK_JDSRC (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt_sdca_jack_common: test SOF_JACK_JDSRC in _exit (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add multi dailink support for a codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sdw_sof: append dai_type and remove codec_type (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add codec_info pointer (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: use predefine dailink id (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add dai info (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add missing exit callback (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: select CONFIG_SND_AMD_ACP_CONFIG (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Remove unnecessary gotos (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Invert logic on runtime alloc flags (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Remove unneeded checks for NULL bus (Jaroslav Kysela) [RHEL-13726] - soundwire: bandwidth allocation: Remove pointless variable (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Update output control for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Update the calculation of FLL for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add registers patch for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: soc.h: remove snd_soc_compr_ops :: trigger (Jaroslav Kysela) [RHEL-13726] - ASoC: add snd_soc_get_stream_cpu() (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Log that a bin file was loaded (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add the management of headset detection for power saving (Jaroslav Kysela) [RHEL-13726] - ASoC: es8316: Do not set rate constraints for unsupported MCLKs (Jaroslav Kysela) [RHEL-13726] - ASoC: es8316: Increment max value for ALC Capture Target Volume control (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Add check for acp config flags in vangogh platform (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: tidyup playback/capture_only at soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: use temporary variable at soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: cleanup soc_get_playback_capture() error (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: use dai_link on soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: indicate error if stream has no playback no capture (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: HDA: Limit the number of dai drivers for nocodec mode (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: Use partial match for connecting DAI link and DAI widget (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Allow partial matching when finding DAI link (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Add PLL ratio table values (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: tgl: unify core_put on IPC3 & IPC4 path (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: add core_get & put support on MeterLake platforms (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add pre-charge actions for input (Jaroslav Kysela) [RHEL-13726] - ALSA: rawmidi: Pass rawmidi directly to snd_rawmidi_kernel_open() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: Add pci revision id check (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader/topology: Query the CPC value from manifest (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Do not use the CPC value from topology (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Rename sof_ipc4_update_pipeline_mem_usage() to be generic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader: Save a pointer to fm_config in sof_ipc4_fw_module (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader: Drop unused bss_size from struct sof_ipc4_fw_module (Jaroslav Kysela) [RHEL-13726] - ASoC: stm32: sai: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682s: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5659: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: cs53l30: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: adau1761: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: mixart: Replace one-element arrays with simple object declarations (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant log (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant log (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Do not split message string on multiple lines (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant logs (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Log control load errors in soc_tplg_control_load() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: Fix locking in hda_ipc4_pre_trigger() (Jaroslav Kysela) [RHEL-13726] - soundwire: amd: Improve error message in remove callback (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt715: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt715-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt712-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt712-sdca-dmic: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt711: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt711-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt700: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt5682: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1318: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1316: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1308: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_bus_common: update error log (Jaroslav Kysela) [RHEL-13726] - soundwire: cadence: revisit parity injection (Jaroslav Kysela) [RHEL-13726] - soundwire: intel/cadence: update hardware reset sequence (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_bus_common: enable interrupts last (Jaroslav Kysela) [RHEL-13726] - soundwire: debugfs: fix unbalanced pm_runtime_put() (Jaroslav Kysela) [RHEL-13726] - ALSA: compat_ioctl: use correct snd_ctl_elem_type_t type (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix an unsigned comparison which can never be negative (Jaroslav Kysela) [RHEL-13726] - soundwire: qcom: drop unused struct qcom_swrm_ctrl members (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-pcm: reset all pipelines during FE DAI hw_free (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai-ops: Split the get_hext_stream() op for IPC4 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify input audio format selection logic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: New helper to check if all output formats are the same (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify the output format selection logic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add a new helper function to get the valid bits (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Handle output format special case (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Rename sof_ipc4_init_audio_fmt() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Move the call to init output format (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add a helper function for output format selection (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Handle input/output audio format special case (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: read AC timing control register before updating it (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: use substream for .free callback (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: remove .free callback implementation (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: use substream for .trigger callback (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: remove .trigger callback implementation (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF/soundwire: re-add substream in params_stream structure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: remove mutual exclusion between NOCODEC and HDA_LINK (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: use HDA_LINK instead of HDA_AUDIO_CODEC (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: mark functions as __maybe_unused (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: move hda_dai_prepare() code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Kconfig: move selection of PROBE_WORK_QUEUE (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: clarify initialization when HDA_AUDIO_CODEC is not used (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix DAI number mismatch (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: remove use of cpu_dai->component drvdata (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: simplify .prepare callback (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add tables for LunarLake (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add new mapping for HP Spectre x360 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: start set codec init function with an adr index (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add support for MTL SDCA boards (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add quirk for MTL RVP (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: remove SOF_SDW_TGL_HDMI for MeteorLake devices (Jaroslav Kysela) [RHEL-13726] - ASoC: wm_adsp: Update to use new component control notify helepr (Jaroslav Kysela) [RHEL-13726] - ASoC: ak4118: Update to use new component control notify helper (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-component: Add notify control helper function (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Use set_get_data() to send LARGE_CONFIG message (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Simplify the calculation of variables (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add MECHREVO Jiaolong Series MRID6 into DMI table (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: simplify tone control switch DSP code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: apply channel delay hack to all E-MU cards (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: simplify snd_emu10k1_audigy_dsp_convert_32_to_2x16() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: fix+optimize E-MU stereo capture DSP code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: roll up loops in DSP setup code for Audigy (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: make tone control switch mono (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: don't create regular S/PDIF controls for E-MU cards (Jaroslav Kysela) [RHEL-13726] - ASoC: sof: Improve sof_ipc4_bytes_ext_put function (Jaroslav Kysela) [RHEL-13726] - ASoC: sof: Improve sof_ipc3_bytes_ext_put function (Jaroslav Kysela) [RHEL-13726] - ALSA: uapi: pcm: control the filling of the silence samples for drain (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove now superfluous mixer locking (Jaroslav Kysela) [RHEL-13726] - ALSA: core: update comment on snd_card.controls_rwsem (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: fix locking in snd_emu1010_fpga_link_dst_src_write() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: use the right lock in snd_emu10k1_shared_spdif_put() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove pointless locks from /proc code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove pointless locks from timer code (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: refactor acp power on and reset functions. (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: remove the register read and write wrappers. (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Update copyright notice (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Don't filter slave alerts (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Define dummy functions for snd_ac97_suspend() and resume() (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Remove redundant driver match function (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Adjust the gain for PDM DMIC (Jaroslav Kysela) [RHEL-13726] - PCI: Add Loongson vendor ID (Jaroslav Kysela) [RHEL-13726]- VMCI: Use threaded irqs instead of tasklets (Ani Sinha) [RHEL-17673] - arm64: kdump: simplify the reservation behaviour of crashkernel=,high (Pingfan Liu) [RHEL-8989] - blk-mq: don't count completed flush data request as inflight in case of quiesce (Ming Lei) [RHEL-18055] - md/raid6: use valid sector values to determine if an I/O should wait on the reshape (Nigel Croxon) [RHEL-17287] - powerpc/hv-gpci: Add return value check in affinity_domain_via_partition_show function (Mamatha Inamdar) [RHEL-20259] - powerpc/pseries/vas: Migration suspend waits for no in-progress open windows (Mamatha Inamdar) [RHEL-20243] - fuse: fix deadlock between atomic O_TRUNC and page invalidation (Miklos Szeredi) [RHEL-7989] - fuse: truncate pagecache on atomic_o_trunc (Miklos Szeredi) [RHEL-7989] - blk-mq: use quiesced elevator switch when reinitializing queues (Ming Lei) [RHEL-19944] - lib/group_cpus.c: avoid acquiring cpu hotplug lock in group_cpus_evenly (Ming Lei) [RHEL-8128] - netdev: replace napi_reschedule with napi_schedule (Ivan Vecera) [RHEL-19714] - netdev: make napi_schedule return bool on NAPI successful schedule (Ivan Vecera) [RHEL-19714] - netdev: replace simple napi_schedule_prep/__napi_schedule to napi_schedule (Ivan Vecera) [RHEL-19714] - x86/topology: Use total_cpus for max logical packages calculation (Frank Ramsay) [RHEL-17893] - x86/fpu/xstate: Fix PKRU covert channel (Dean Nelson) [RHEL-16175] - x86/fpu: Invalidate FPU state correctly on exec() (Dean Nelson) [RHEL-16175] - x86/fpu/xstate: Prevent false-positive warning in __copy_xstate_uabi_buf() (Dean Nelson) [RHEL-16175] - x86/fpu: Emulate XRSTOR's behavior if the xfeatures PKRU bit is not set (Dean Nelson) [RHEL-16175] - x86/fpu: Allow PKRU to be (once again) written by ptrace. (Dean Nelson) [RHEL-16175] - x86/fpu: Add a pkru argument to copy_uabi_to_xstate() (Dean Nelson) [RHEL-16175] - x86/fpu: Add a pkru argument to copy_uabi_from_kernel_to_xstate(). (Dean Nelson) [RHEL-16175] - x86/fpu: Take task_struct* in copy_sigframe_from_user_to_xstate() (Dean Nelson) [RHEL-16175] - x86/fpu/xstate: Fix XSTATE_WARN_ON() to emit relevant diagnostics (Dean Nelson) [RHEL-16175] - x86/fpu: Cleanup variable shadowing (Dean Nelson) [RHEL-16175] - x86/fpu: Remove redundant XCOMP_BV initialization (Dean Nelson) [RHEL-16175] - x86/ptrace: Fix xfpregs_set()'s incorrect xmm clearing (Dean Nelson) [RHEL-16175] - x86/fpu: Remove duplicate copy_fpstate_to_sigframe() prototype (Dean Nelson) [RHEL-16175] - x86/fpu/signal: Initialize sw_bytes in save_xstate_epilog() (Dean Nelson) [RHEL-16175] - scsi: mpi3mr: Fetch correct device dev handle for status reply descriptor (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Block PEL Enable Command on Controller Reset and Unrecoverable State (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Clean up block devices post controller reset (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Refresh sdev queue depth after controller reset (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: driver version upgrade to 8.5.0.0.50 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add support for status reply descriptor (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Increase maximum number of PHYs to 64 from 32 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add PCI checks where SAS5116 diverges from SAS4116 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add support for SAS5116 PCI IDs (Tomas Henzl) [RHEL-17365] - scsi: scsi_debug: Remove dead code (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Abort commands from scsi_debug_device_reset() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix missing error code in scsi_debug_init() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop sdebug_queue (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Only allow sdebug_max_queue be modified when no shosts (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use scsi_host_busy() in delay_store() and ndelay_store() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use blk_mq_tagset_busy_iter() in stop_all_queued() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use blk_mq_tagset_busy_iter() in sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Dynamically allocate sdebug_queued_cmd (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use scsi_block_requests() to block queues (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Protect block_unblock_all_queues() with mutex (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Change shost list lock to a mutex (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Don't iter all shosts in clear_luns_changed_on_target() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix check for sdev queue full (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Remove redundant driver match function (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Add poll mode deferred completions to statistics (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Get command abort feature working again (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop sdebug_dev_info.num_in_q (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop check for num_in_q exceeding queue depth (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_host_reset() device NULL pointer check (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_bus_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_target_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_device_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_abort() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Stop setting devip->sdbg_host twice (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Don't hold driver host struct pointer in host->hostdata[] (Ming Lei) [RHEL-16241] - scsi: core: Introduce {init,exit}_cmd_priv() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix possible UAF in sdebug_add_host_helper() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix sdebug_blk_mq_poll() in_use_bm bitmap use (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix qc_lock use in sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Refine sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - ice: fix theoretical out-of-bounds access in ethtool link modes (Petr Oros) [RHEL-15678] - ice: restore timestamp configuration after device reset (Petr Oros) [RHEL-15678] - ice: unify logic for programming PFINT_TSYN_MSK (Petr Oros) [RHEL-15678] - ice: remove ptp_tx ring parameter flag (Petr Oros) [RHEL-15678] - ice: Fix VF-VF direction matching in drop rule in switchdev (Petr Oros) [RHEL-15678] - ice: Fix VF-VF filter rules in switchdev mode (Petr Oros) [RHEL-15678] - ice: Fix safe mode when DDP is missing (Petr Oros) [RHEL-15678] - ice: fix over-shifted variable (Petr Oros) [RHEL-15678] - ice: Remove the FW shared parameters (Petr Oros) [RHEL-15678] - ice: PTP: add clock domain number to auxiliary interface (Petr Oros) [RHEL-15678] - ice: Use PTP auxbus for all PHYs restart in E822 (Petr Oros) [RHEL-15678] - ice: Auxbus devices & driver for E822 TS (Petr Oros) [RHEL-15678] - ice: introduce ice_pf_src_tmr_owned (Petr Oros) [RHEL-15678] - ice: fix pin assignment for E810-T without SMA control (Petr Oros) [RHEL-15678] - ice: remove ICE_F_PTP_EXTTS feature flag (Petr Oros) [RHEL-15678] - ice: PTP: move quad value check inside ice_fill_phy_msg_e822 (Petr Oros) [RHEL-15678] - ice: PTP: Rename macros used for PHY/QUAD port definitions (Petr Oros) [RHEL-15678] - ice: PTP: Clean up timestamp registers correctly (Petr Oros) [RHEL-15678] - ice: introduce hw->phy_model for handling PTP PHY differences (Petr Oros) [RHEL-15678] - ice: Support cross-timestamping for E823 devices (Petr Oros) [RHEL-15678] - ice: retry acquiring hardware semaphore during cross-timestamp request (Petr Oros) [RHEL-15678] - ice: prefix clock timer command enumeration values with ICE_PTP (Petr Oros) [RHEL-15678] - ice: avoid executing commands on other ports when driving sync (Petr Oros) [RHEL-15678] - ice: fix receive buffer size miscalculation (Petr Oros) [RHEL-15678] - ice: split ice_aq_wait_for_event() func into two (Petr Oros) [RHEL-15678] - ice: embed &ice_rq_event_info event into struct ice_aq_task (Petr Oros) [RHEL-15678] - ice: ice_aq_check_events: fix off-by-one check when filling buffer (Petr Oros) [RHEL-15678] - ice: Remove redundant VSI configuration in eswitch setup (Petr Oros) [RHEL-15678] - ice: move E810T functions to before device agnostic ones (Petr Oros) [RHEL-15678] - ice: refactor ice_vsi_is_vlan_pruning_ena (Petr Oros) [RHEL-15678] - ice: refactor ice_ptp_hw to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_sched to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_vf_lib to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_lib to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_ddp to make functions static (Petr Oros) [RHEL-15678] - ice: remove unused methods (Petr Oros) [RHEL-15678] - ice: Block switchdev mode when ADQ is active and vice versa (Petr Oros) [RHEL-15678] - ice: clean up __ice_aq_get_set_rss_lut() (Petr Oros) [RHEL-15678] - ice: add FW load wait (Petr Oros) [RHEL-15678] - ice: Add get C827 PHY index function (Petr Oros) [RHEL-15678] - ice: Rename enum ice_pkt_flags values (Petr Oros) [RHEL-15678] - ice: Add direction metadata (Petr Oros) [RHEL-15678] - ice: Fix RDMA VSI removal during queue rebuild (Petr Oros) [RHEL-15678] - ice: Correctly initialize queue context values (Petr Oros) [RHEL-15678] - ice: Fix memory management in ice_ethtool_fdir.c (Petr Oros) [RHEL-15678] - ice: Implement basic eswitch bridge setup (Petr Oros) [RHEL-15678] - ice: Unset src prune on uplink VSI (Petr Oros) [RHEL-15678] - ice: Disable vlan pruning for uplink VSI (Petr Oros) [RHEL-15678] - ice: Prohibit rx mode change in switchdev mode (Petr Oros) [RHEL-15678] - ice: Skip adv rules removal upon switchdev release (Petr Oros) [RHEL-15678] - ice: use ice_down_up() where applicable (Petr Oros) [RHEL-15678] - ice: Remove managed memory usage in ice_get_fw_log_cfg() (Petr Oros) [RHEL-15678] - ice: clean up freeing SR-IOV VFs (Petr Oros) [RHEL-15678] - ice: reduce initial wait for control queue messages (Petr Oros) [RHEL-15678] - ice: remove unnecessary check for old MAC == new MAC (Petr Oros) [RHEL-15678] - ice: do not re-enable miscellaneous interrupt until thread_fn completes (Petr Oros) [RHEL-15678] - ice: trigger PFINT_OICR_TSYN_TX interrupt instead of polling (Petr Oros) [RHEL-15678] - ice: introduce ICE_TX_TSTAMP_WORK enumeration (Petr Oros) [RHEL-15678] - ice: always return IRQ_WAKE_THREAD in ice_misc_intr() (Petr Oros) [RHEL-15678] - ice: handle extts in the miscellaneous interrupt thread (Petr Oros) [RHEL-15678] - ice: use src VSI instead of src MAC in slow-path (Petr Oros) [RHEL-15678] - ice: allow matching on meta data (Petr Oros) [RHEL-15678] - ice: specify field names in ice_prot_ext init (Petr Oros) [RHEL-15678] - ice: remove redundant Rx field from rule info (Petr Oros) [RHEL-15678] - ice: define meta data to match in switch (Petr Oros) [RHEL-15678] - ice: refactor PHY type to ethtool link mode (Petr Oros) [RHEL-15678] - ice: update ICE_PHY_TYPE_HIGH_MAX_INDEX (Petr Oros) [RHEL-15678] - ice: call ice_is_malicious_vf() from ice_vc_process_vf_msg() (Petr Oros) [RHEL-15678] - ice: move ice_is_malicious_vf() to ice_virtchnl.c (Petr Oros) [RHEL-15678] - ice: print message if ice_mbx_vf_state_handler returns an error (Petr Oros) [RHEL-15678] - ice: pass mbxdata to ice_is_malicious_vf() (Petr Oros) [RHEL-15678] - ice: remove unnecessary &array[0] and just use array (Petr Oros) [RHEL-15678] - ice: always report VF overflowing mailbox even without PF VSI (Petr Oros) [RHEL-15678] - ice: declare ice_vc_process_vf_msg in ice_virtchnl.h (Petr Oros) [RHEL-15678] - ice: initialize mailbox snapshot earlier in PF init (Petr Oros) [RHEL-15678] - ice: merge ice_mbx_report_malvf with ice_mbx_vf_state_handler (Petr Oros) [RHEL-15678] - ice: remove ice_mbx_deinit_snapshot (Petr Oros) [RHEL-15678] - ice: move VF overflow message count into struct ice_mbx_vf_info (Petr Oros) [RHEL-15678] - ice: track malicious VFs in new ice_mbx_vf_info structure (Petr Oros) [RHEL-15678] - ice: convert ice_mbx_clear_malvf to void and use WARN (Petr Oros) [RHEL-15678] - ice: re-order ice_mbx_reset_snapshot function (Petr Oros) [RHEL-15678]- nfsd: lock_rename() needs both directories to live on the same fs (Jeffrey Layton) [RHEL-19591] - HID: check empty report_list in hid_validate_values() (Desnes Nunes) [RHEL-19237 RHEL-19260] {CVE-2023-1073} - ceph: do not print the whole xattr value if it's too long (Xiubo Li) [RHEL-16411] - libceph: fix potential use-after-free on linger ping and resends (Jay Shin) [RHEL-20390] - ceph: fix incorrect revoked caps assert in ceph_fill_file_size() (Xiubo Li) [RHEL-8003] - ceph: silence smatch warning in reconnect_caps_cb() (Xiubo Li) [RHEL-16410] - ceph: fix potential use-after-free bug when trimming caps (Xiubo Li) [RHEL-16410] - ceph: don't let check_caps skip sending responses for revoke msgs (Xiubo Li) [RHEL-16412] - ceph: issue a cap release immediately if no cap exists (Xiubo Li) [RHEL-16412] - ceph: trigger to flush the buffer when making snapshot (Xiubo Li) [RHEL-16412] - ceph: force updating the msg pointer in non-split case (Xiubo Li) [RHEL-16412] - ceph: flush cap releases when the session is flushed (Xiubo Li) [RHEL-16412] - ceph: reorder fields in 'struct ceph_snapid_map' (Xiubo Li) [RHEL-16412] - ceph: voluntarily drop Xx caps for requests those touch parent mtime (Xiubo Li) [RHEL-16412] - redhat/configs: Remove multi-buffer SHA configs (Štěpán Horáček) [RHEL-14477] - crypto: tcrypt - remove all multibuffer ahash tests (Štěpán Horáček) [RHEL-14477] - crypto: hash - Remove unused async iterators (Štěpán Horáček) [RHEL-14477] - crypto: x86 - remove SHA multibuffer routines and mcryptd (Štěpán Horáček) [RHEL-14477] - fs: group frequently accessed fields of struct super_block together (Miklos Szeredi) [RHEL-12504] - fanotify: add API to attach/detach super block mark (Miklos Szeredi) [RHEL-12504] - fsnotify: send path type events to group with super block marks (Miklos Szeredi) [RHEL-12504] - fsnotify: add super block object type (Miklos Szeredi) [RHEL-12504] - netfilter: nf_tables: set backend .flush always succeeds (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: no need to call pipapo_deactivate() from flush (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix memleak when more than 255 elements expired (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disable toggling dormant table state more than once (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix table flag updates (Florian Westphal) [RHEL-1722] - netfilter: nftables: update table flags from the commit phase (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow element removal on anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nft_set_hash: try later when GC hits EAGAIN on iteration (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: stop GC iteration if GC transaction allocation fails (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix nft_trans type confusion (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: defer gc run if previous batch is still pending (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix out of memory error handling (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: use correct lock to protect gc_list (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: GC transaction race with abort path (Florian Westphal) [RHEL-1722] - netfilter: nft_dynset: disallow object maps (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: GC transaction race with netns dismantle (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix GC transaction races with netns and netlink event exit path (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: don't fail inserts if duplicate has expired (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix kdoc warnings after gc rework (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix false-positive lockdep splat (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: remove busy mark and gc batch API (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: adapt set backend to use GC transaction API (Florian Westphal) [RHEL-1722] {CVE-2023-4244} - netfilter: nf_tables: GC transaction API to avoid race with control plane (Florian Westphal) [RHEL-1722] {CVE-2023-4244} - netfilter: nftables: rename set element data activation/deactivation functions (Florian Westphal) [RHEL-1722] - netfilter: nft_set_rbtree: skip elements in transaction from garbage collection (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: don't skip expired elements during walk (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix spurious set element insertion failure (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: report use refcount overflow (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: add nft_chain_add() (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow timeout for anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow updates of anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow element updates of bound anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: .walk does not deal with generations (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: integrate pipapo into commit protocol (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: honor NLM_F_CREATE and NLM_F_EXCL in event notification (Florian Westphal) [RHEL-1722] - netfilter: nftables: add catch-all set element support (Florian Westphal) [RHEL-1722]- netlink: support extack in dump ->start() (Hangbin Liu) [RHEL-17272] - audit: don't WARN_ON_ONCE(!current->mm) in audit_exe_compare() (Artem Savkov) [RHEL-16009] - audit: don't take task_lock() in audit_exe_compare() code path (Artem Savkov) [RHEL-16009] - IB/ipoib: Fix mcast list locking (Daniel Vacek) [RHEL-19244] - RDMA/IPoIB: Fix error code return in ipoib_mcast_join (Daniel Vacek) [RHEL-19244] - ipvlan: Fix a reference count leak warning in ipvlan_ns_exit() (Davide Caratti) [RHEL-14290] - ipvlan: Fix return value of ipvlan_queue_xmit() (Davide Caratti) [RHEL-14290] - scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() directly (Oleksandr Natalenko) [2228079] - scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() directly (Oleksandr Natalenko) [2228079] - scsi: qedf: Do not touch __user pointer in qedf_dbg_stop_io_on_error_cmd_read() directly (Oleksandr Natalenko) [2228079] - xen/blkfront: fix memory allocation flags in blkfront_setup_indirect() (Vitaly Kuznetsov) [RHEL-15958] - xen-blkfront: switch kcalloc to kvcalloc for large array allocation (Vitaly Kuznetsov) [RHEL-15958] - xen-blkfront: fix kernel panic with negotiate_mq error path (Vitaly Kuznetsov) [RHEL-15958] - tracing/timerlat: Add user-space interface (Chris White) [RHEL-15142] - tracing/osnoise: Skip running osnoise if all instances are off (Chris White) [RHEL-15142] - tracing/osnoise: Switch from PF_NO_SETAFFINITY to migrate_disable (Chris White) [RHEL-15142] - tracing/timerlat: Always wakeup the timerlat thread (Chris White) [RHEL-15142] - tracing/osnoise: Fix notify new tracing_max_latency (Chris White) [RHEL-15142] - tracing/timerlat: Notify new max thread latency (Chris White) [RHEL-15142] - trace/osnoise: make use of the helper function kthread_run_on_cpu() (Chris White) [RHEL-15142] - kthread: add the helper function kthread_run_on_cpu() (Chris White) [RHEL-15142] - iavf: Fix iavf_shutdown to call iavf_remove instead iavf_close (Michal Schmidt) [RHEL-15675] - iavf: Handle ntuple on/off based on new state machines for flow director (Michal Schmidt) [RHEL-15675] - iavf: Introduce new state machines for flow director (Michal Schmidt) [RHEL-15675] - iavf: validate tx_coalesce_usecs even if rx_coalesce_usecs is zero (Michal Schmidt) [RHEL-15675] - iavf: delete the iavf client interface (Michal Schmidt) [RHEL-15675] - iavf: add a common function for undoing the interrupt scheme (Michal Schmidt) [RHEL-15675] - iavf: use unregister_netdev (Michal Schmidt) [RHEL-15675] - iavf: rely on netdev's own registered state (Michal Schmidt) [RHEL-15675] - iavf: fix the waiting time for initial reset (Michal Schmidt) [RHEL-15675] - iavf: in iavf_down, don't queue watchdog_task if comms failed (Michal Schmidt) [RHEL-15675] - iavf: simplify mutex_trylock+sleep loops (Michal Schmidt) [RHEL-15675] - iavf: fix comments about old bit locks (Michal Schmidt) [RHEL-15675] - iavf: in iavf_down, disable queues when removing the driver (Michal Schmidt) [RHEL-15675] - iavf: initialize waitqueues before starting watchdog_task (Michal Schmidt) [RHEL-15675] - iavf: delete unused iavf_mac_info fields (Michal Schmidt) [RHEL-15675] - iavf: fix format warnings (Michal Schmidt) [RHEL-15675] - iavf: fix string truncation warnings (Michal Schmidt) [RHEL-15675] - iavf: remove "inline" functions from iavf_txrx.c (Michal Schmidt) [RHEL-15675] - iavf: do not process adminq tasks when __IAVF_IN_REMOVE_TASK is set (Michal Schmidt) [RHEL-15675] - iavf: Fix promiscuous mode configuration flow messages (Michal Schmidt) [RHEL-15675] - iavf: fix FDIR rule fields masks validation (Michal Schmidt) [RHEL-15675] - iavf: fix potential races for FDIR filters (Michal Schmidt) [RHEL-15675] - iavf: check for removal state before IAVF_FLAG_PF_COMMS_FAILED (Michal Schmidt) [RHEL-15675] - iavf: fix potential deadlock on allocation failure (Michal Schmidt) [RHEL-15675] - iavf: Remove unnecessary aer.h include (Michal Schmidt) [RHEL-15675] - iavf: Remove redundant pci_enable_pcie_error_reporting() (Michal Schmidt) [RHEL-15675]- devres: handle zero size in devm_kmalloc() (Mark Langsdorf) [RHEL-1025 RHEL-14039] - cpufreq: ACPI: Prevent a warning when another frequency driver is loaded (Mark Langsdorf) [RHEL-1025] - cpufreq: drivers with target_index() must set freq_table (Mark Langsdorf) [RHEL-1025] - cpufreq: warn about invalid vals to scaling_max/min_freq interfaces (Mark Langsdorf) [RHEL-1025] - ACPI: cpufreq: Use platform devices to load ACPI PPC and PCC drivers (Mark Langsdorf) [RHEL-1025] - cpufreq: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-1025] - kbuild, cpufreq: remove MODULE_LICENSE in non-modules (Mark Langsdorf) [RHEL-1025] - cpufreq: Add __init annotation to module init funcs (Mark Langsdorf) [RHEL-1025] - cpufreq: intel_pstate: Add Tigerlake support in no-HWP mode (Mark Langsdorf) [RHEL-1025] - netfilter: nfnetlink_osf: avoid OOB read (Phil Sutter) [RHEL-12299] {CVE-2023-39189} - crypto: qat - add NULL pointer check (Vladis Dronov) [RHEL-19124] - crypto: qat - fix mutex ordering in adf_rl (Vladis Dronov) [RHEL-19124] - crypto: qat - fix error path in add_update_sla() (Vladis Dronov) [RHEL-19124] - crypto: qat - add sysfs_added flag for rate limiting (Vladis Dronov) [RHEL-19124] - crypto: qat - add sysfs_added flag for ras (Vladis Dronov) [RHEL-19124] - x86/speculation: Provide a debugfs file to dump SPEC_CTRL MSRs (Waiman Long) [RHEL-16845] - x86/idle: Disable IBRS entering mwait idle and enable it on wakeup (Waiman Long) [RHEL-16845] - intel_idle: Add ibrs_off module parameter to force-disable IBRS (Waiman Long) [RHEL-16845] - intel_idle: Use __update_spec_ctrl() in intel_idle_ibrs() (Waiman Long) [RHEL-16845] - x86/idle: Disable IBRS when CPU is offline to improve single-threaded performance (Waiman Long) [RHEL-16845] - x86/speculation: Add __update_spec_ctrl() helper (Waiman Long) [RHEL-16845] - cpuidle, intel_idle: Fix CPUIDLE_FLAG_IBRS (Waiman Long) [RHEL-16845] - igb: Fix potential memory leak in igb_add_ethtool_nfc_entry (Corinna Vinschen) [RHEL-15681] - igb: Fix an end of loop test (Corinna Vinschen) [RHEL-15681] - igb: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15681] - intel: fix format warnings (Corinna Vinschen) [RHEL-15681] - intel: fix string truncation warnings (Corinna Vinschen) [RHEL-15681] - ethernet/intel: Use list_for_each_entry() helper (Corinna Vinschen) [RHEL-15681] - igb: clean up in all error paths when enabling SR-IOV (Corinna Vinschen) [RHEL-15681] - igb: Change IGB_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15681] - igb: disable virtualization features on 82580 (Corinna Vinschen) [RHEL-15681] - igb: Avoid starting unnecessary workqueues (Corinna Vinschen) [RHEL-15681] - igb: Fix igb_down hung on surprise removal (Corinna Vinschen) [RHEL-15681] - igb: Enable SR-IOV after reinit (Corinna Vinschen) [RHEL-15681] - bpf: Mark PTR_TO_FUNC register initially with zero offset (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Fix out of bounds access for ringbuf helpers (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Generally fix helper register offset check (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Generalize check_ctx_reg for reuse with other types (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Check PTR_TO_MEM | MEM_RDONLY in check_helper_mem_access (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Fix crash due to out of bounds access into reg2btf_ids. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Add MEM_RDONLY for helper args that are pointers to rdonly mem. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Make per_cpu_ptr return rdonly PTR_TO_MEM. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Convert PTR_TO_MEM_OR_NULL to composable types. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Introduce MEM_RDONLY flag (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Replace PTR_TO_XXX_OR_NULL with PTR_TO_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-8476 RHEL-8925 RHEL-9037] {CVE-2022-0500 CVE-2022-23222} - bpf: Replace RET_XXX_OR_NULL with RET_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Replace ARG_XXX_OR_NULL with ARG_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Introduce composable reg, ret and arg types. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - ipmi: Explicitly include correct DT includes (Tony Camuso) [RHEL-14570] - ipmi_si: fix -Wvoid-pointer-to-enum-cast warning (Tony Camuso) [RHEL-14570] - ipmi: fix potential deadlock on &kcs_bmc->lock (Tony Camuso) [RHEL-14570] - ipmi_si: fix a memleak in try_smi_init() (Tony Camuso) [RHEL-14570] - ipmi: Change request_module to request_module_nowait (Tony Camuso) [RHEL-14570] - ipmi:ssif: Fix a memory leak when scanning for an adapter (Tony Camuso) [RHEL-14570] - ipmi:ssif: Add check for kstrdup (Tony Camuso) [RHEL-14570] - ipmi_watchdog: Fix read syscall not responding to signals during sleep (Tony Camuso) [RHEL-14570] - ipmi:ssif: Drop if blocks with always false condition (Tony Camuso) [RHEL-14570] - ipmi: fix SSIF not responding under certain cond. (Tony Camuso) [RHEL-14570] - ipmi:ssif: Add send_retries increment (Tony Camuso) [RHEL-14570] - char:ipmi:Fix spelling mistake "asychronously" -> "asynchronously" (Tony Camuso) [RHEL-14570] - ipmi: simplify sysctl registration (Tony Camuso) [RHEL-14570] - ipmi: ASPEED_BT_IPMI_BMC: select REGMAP_MMIO instead of depending on it (Tony Camuso) [RHEL-14570] - bnxt_en: fix free-runnig PHC mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: handle invalid Tx completions more gracefully (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: take the bit to set as argument of bnxt_queue_sp_work() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: move and rename reset helpers (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: don't handle XDP in netpoll (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Implement .set_port / .unset_port UDP tunnel callbacks (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Prevent kernel panic when receiving unexpected PHC_UPDATE event (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Skip firmware fatal error recovery if chip is not accessible (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Query default VLAN before VNIC setup on a VF (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Don't issue AP reset during ethtool's reset operation (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix bnxt_hwrm_update_rss_hash_cfg() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Do not initialize PTP on older P3/P4 chips (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Add missing 200G link speed reporting (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix typo in PCI id to device description string mapping (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix reporting of test result in ethtool selftest (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Enforce PTP software freq adjustments only when in non-RTC mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Defer PTP initialization to after querying function caps (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Change fw_cap to u64 to accommodate more capability bits (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: avoid overflow in bnxt_get_nvram_directory() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: reset PHC frequency in free-running mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Avoid order-5 memory allocation for TPA data (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - ptp: bnxt: convert .adjfreq to .adjfine (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Add a non-real time mode to access NIC clock (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - igc: Fix ambiguity in the ethtool advertising (Corinna Vinschen) [RHEL-15680] - igc: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15680] - intel: fix format warnings (Corinna Vinschen) [RHEL-15680] - igc: Expose tx-usecs coalesce setting to user (Corinna Vinschen) [RHEL-15680] - igc: Fix infinite initialization loop with early XDP redirect (Corinna Vinschen) [RHEL-15680] - igc: Change IGC_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15680] - igc: Decrease PTM short interval from 10 us to 1 us (Corinna Vinschen) [RHEL-15680] - igc: Add support for multiple in-flight TX timestamps (Corinna Vinschen) [RHEL-15680] - igc: Fix the typo in the PTM Control macro (Corinna Vinschen) [RHEL-15680] - igc: Add lock to safeguard global Qbv variables (Corinna Vinschen) [RHEL-15680] - eth: add missing xdp.h includes in drivers (Corinna Vinschen) [RHEL-15680] - igc: Fix Kernel Panic during ndo_tx_timeout callback (Corinna Vinschen) [RHEL-15680] - igc: Prevent garbled TX queue with XDP ZEROCOPY (Corinna Vinschen) [RHEL-15680] - igc: Fix inserting of empty frame for launchtime (Corinna Vinschen) [RHEL-15680] - igc: Fix launchtime before start of cycle (Corinna Vinschen) [RHEL-15680] - igc: No strict mode in pure launchtime/CBS offload (Corinna Vinschen) [RHEL-15680] - igc: Handle already enabled taprio offload for basetime 0 (Corinna Vinschen) [RHEL-15680] - igc: Do not enable taprio offload for invalid arguments (Corinna Vinschen) [RHEL-15680] - igc: Rename qbv_enable to taprio_offload_enable (Corinna Vinschen) [RHEL-15680] - igc: Handle PPS start time programming for past time values (Corinna Vinschen) [RHEL-15680] - igc: Include the length/type field and VLAN tag in queueMaxSDU (Corinna Vinschen) [RHEL-15680] - igc: set TP bit in 'supported' and 'advertising' fields of ethtool_link_ksettings (Corinna Vinschen) [RHEL-15680] - igc: Fix TX Hang issue when QBV Gate is closed (Corinna Vinschen) [RHEL-15680] - igc: Remove delay during TX ring configuration (Corinna Vinschen) [RHEL-15680] - igc: Add condition for qbv_config_change_errors counter (Corinna Vinschen) [RHEL-15680] - igc: Work around HW bug causing missing timestamps (Corinna Vinschen) [RHEL-15680] - igc: Retrieve TX timestamp during interrupt handling (Corinna Vinschen) [RHEL-15680] - igc: Check if hardware TX timestamping is enabled earlier (Corinna Vinschen) [RHEL-15680] - igc: Fix race condition in PTP tx code (Corinna Vinschen) [RHEL-15680] - igc: Remove unnecessary aer.h include (Corinna Vinschen) [RHEL-15680] - igc: Clean up and optimize watchdog task (Corinna Vinschen) [RHEL-15680] - igc: offload queue max SDU from tc-taprio (Corinna Vinschen) [RHEL-15680] - igc: Add qbv_config_change_errors counter (Corinna Vinschen) [RHEL-15680]- s390/pci: fix iommu bitmap allocation (Tobias Huschle) [RHEL-18202] - net/smc: Fix pos miscalculation in statistics (Tobias Huschle) [RHEL-18203] - ibmveth: Remove condition to recompute TCP header checksum. (Mamatha Inamdar) [RHEL-12553] - net: thunderx: Fix the ACPI memory leak (Maurizio Lombardi) [RHEL-18244] - null_blk: Always check queue mode setting from configfs (Ming Lei) [RHEL-18182] - drivers: net: slip: fix NPD bug in sl_tx_timeout() (Michal Schmidt) [RHEL-6655] {CVE-2022-41858} - mm: thp: replace DEBUG_VM BUG with VM_WARN when unmap fails for split (David Hildenbrand) [RHEL-8517] - net/tls: do not free tls_rec on async operation in bpf_exec_tx_verdict() (Sabrina Dubroca) [RHEL-16720] {CVE-2023-6176} - nfp: fix use-after-free in area_cache_get() (Ricardo Robaina) [RHEL-6567] {CVE-2022-3545} - igb: set max size RX buffer when store bad packet is enabled (Wander Lairson Costa) [RHEL-15188] {CVE-2023-45871} - igbvf: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15679] - igbvf: Change IGBVF_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15679] - ixgbe: Fix panic during XDP_TX with > 64 CPUs (Ken Cox) [RHEL-15682] - ixgbe: Enable setting RSS table to default values (Ken Cox) [RHEL-15682] - ixgbe: Allow flow hash to be set via ethtool (Ken Cox) [RHEL-15682] - vsock/virtio: remove socket from connected/bound list on shutdown (Stefano Garzarella) [RHEL-17877] - vsock/virtio: initialize the_virtio_vsock before using VQs (Stefano Garzarella) [RHEL-17877] - vsock: send SIGPIPE on write to shutdowned socket (Stefano Garzarella) [RHEL-17877] - vsock/virtio: factor our the code to initialize and delete VQs (Stefano Garzarella) [RHEL-17877] - virtio-net: fix for skb_over_panic inside big mode (Laurent Vivier) [RHEL-7165] - virtio-net: fix pages leaking when building skb in big mode (Laurent Vivier) [RHEL-7165] - virtio_net: fix wrong buf address calculation when using xdp (Laurent Vivier) [RHEL-7165] - virtio_net: get build_skb() buf by data ptr (Laurent Vivier) [RHEL-7165] - virtio-net: fix for unable to handle page fault for address (Laurent Vivier) [RHEL-7165] - scsi: qedi: Remove unused declarations (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix firmware halt over suspend and resume (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix potential deadlock on &qedi_percpu->p_work_lock (Nilesh Javali) [RHEL-9860] - scsi: qedi: Replace all non-returning strlcpy with strscpy (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix use after free bug in qedi_remove() (Nilesh Javali) [RHEL-9860] - scsi: qedi: Remove unneeded version.h include (Nilesh Javali) [RHEL-9860] - perf/x86/amd/uncore: Pass through error code for initialization failures, instead of -ENODEV (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Fix uninitialized return value in amd_uncore_init() (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Add memory controller support (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Add group exclusivity (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Use rdmsr if rdpmc is unavailable (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Move discovery and registration (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Refactor uncore management (Michael Petlan) [RHEL-9993] - RDMA/hfi1: Workaround truncation compilation error (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Fix potential deadlock on &irq_src_lock and &dd->uctxt_lock (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Remove redundant assignment to pointer ppd (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Replace deprecated strncpy (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Use FIELD_GET() to extract Link Width (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Reduce printing of errors during driver shut down (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Use list_for_each_entry() helper (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Fix possible panic during hotplug remove (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Use struct_size() (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Suppress useless compiler warnings (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Remove trace newlines (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Drop redundant pci_enable_pcie_error_reporting() (Izabela Bakollari) [RHEL-18211] - IB/hifi1: add a null check of kzalloc_node in hfi1_ipoib_txreq_init (Izabela Bakollari) [RHEL-18211]- Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb (David Marlin) [RHEL-1231] {CVE-2023-40283} - amd_hsmp: Add HSMP protocol version 5 messages (John Allen) [2072238] - KVM: s390/mm: Properly reset no-dat (Cédric Le Goater) [RHEL-17383] - KVM: s390: vsie: fix wrong VIR 37 when MSO is used (Cédric Le Goater) [RHEL-17383] - nvme-rdma: fix typo in comment (Kamal Heib) [RHEL-10968] - nvme-rdma: minor cleanup in nvme_rdma_create_cq() (Kamal Heib) [RHEL-10968] - scsi: iscsi_tcp: Fix UAF during login when accessing the shost ipaddress (Chris Leech) [RHEL-8200 RHEL-8992] {CVE-2023-2162} - scsi: iscsi_tcp: Fix UAF during logout when accessing the shost ipaddress (Chris Leech) [RHEL-8200 RHEL-8992] {CVE-2023-2162} - ibmveth: Reduce default tx queues to 8 (Mamatha Inamdar) [RHEL-11209] - ibmveth: Ethtool set queue support (Mamatha Inamdar) [RHEL-11209] - ibmveth: Implement multi queue on xmit (Mamatha Inamdar) [RHEL-11209] - ibmveth: Copy tx skbs into a premapped buffer (Mamatha Inamdar) [RHEL-11209] - ibmveth: Use dma_alloc_coherent() instead of kmalloc/dma_map_single() (Mamatha Inamdar) [RHEL-11209] - vt: keyboard, reorder user buffer handling in vt_do_kdgkb_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, rename i to kb_func in vt_do_kdgkb_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, use bool for rep (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, union perm checks in vt_do_kdsk_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, extract vt_kdgkbent and vt_kdskbent (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, sort includes (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, include linux/spinlock.h (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, extend func_buf_lock to readers (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, simplify vt_kdgkbsent (John W. Linville) [RHEL-3015] {CVE-2020-25656} - tty/vt: fix write/write race in ioctl(KDSKBSENT) handler (John W. Linville) [RHEL-3015] {CVE-2020-25656} - tty: keyboard, do not speculate on func_table index (John W. Linville) [RHEL-3015] {CVE-2020-25656} - Bluetooth: RFCOMM: Fix possible deadlock on socket shutdown/release (David Marlin) [RHEL-17716] - Bluetooth: fix dangling sco_conn and use-after-free in sco_sock_timeout (David Marlin) [RHEL-17716] - bluetooth: use dev_addr_set() (David Marlin) [RHEL-17716] - bluetooth: use eth_hw_addr_set() (David Marlin) [RHEL-17716] - Bluetooth: Rename driver .prevent_wake to .wakeup (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Ask ic_info to drop firmware (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add support for TP-Link UB500 Adapter (David Marlin) [RHEL-17716] - Bluetooth: hci_sock: Replace use of memcpy_from_msg with bt_skb_sendmsg (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Add support for MSFT extension to rtl8821c devices (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add force_prevent_wake entry (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add force_suspend entry (David Marlin) [RHEL-17716] - Bluetooth: Make use of hci_{suspend,resume}_dev on suspend notifier (David Marlin) [RHEL-17716] - Bluetooth: btrsi: remove superfluous header files from btrsi.c (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Set VsMsftOpCode based on device table (David Marlin) [RHEL-17716] - Bluetooth: Fix handling of experimental feature for codec offload (David Marlin) [RHEL-17716] - Bluetooth: Fix handling of experimental feature for quality reports (David Marlin) [RHEL-17716] - Bbluetooth: btusb: Add another Bluetooth part for Realtek 8852AE (David Marlin) [RHEL-17716] - Bluetooth: btrtl: enable Realtek 8822C/8852A to support AOSP extension (David Marlin) [RHEL-17716] - Bluetooth: hci_qca: enable Qualcomm WCN399x for AOSP extension (David Marlin) [RHEL-17716] - Bluetooth: Apply missing portion of previously applied commit to correct context. (David Marlin) [RHEL-17716] - Bluetooth: Fix wrong opcode when LL privacy enabled (David Marlin) [RHEL-17716] - Bluetooth: Fix Advertisement Monitor Suspend/Resume (David Marlin) [RHEL-17716] - Bluetooth: hci_h5: directly return hci_uart_register_device() ret-val (David Marlin) [RHEL-17716] - Bluetooth: hci_h5: Fix (runtime)suspend issues on RTL8723BS HCIs (David Marlin) [RHEL-17716] - Bluetooth: hci_core: Move all debugfs handling to hci_debugfs.c (David Marlin) [RHEL-17716] - Bluetooth: btmtkuart: fix a memleak in mtk_hci_wmt_sync (David Marlin) [RHEL-17716] - Bluetooth: hci_ldisc: require CAP_NET_ADMIN to attach N_HCI ldisc (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add gpio reset way for qca btsoc in cmd_timeout (David Marlin) [RHEL-17716] - Bluetooth: Fix passing NULL to PTR_ERR (David Marlin) [RHEL-17716] - Bluetooth: hci_sock: Add support for BT_{SND,RCV}BUF (David Marlin) [RHEL-17716] - Bluetooth: eir: Move EIR/Adv Data functions to its own file (David Marlin) [RHEL-17716] - Bluetooth: RFCOMM: Replace use of memcpy_from_msg with bt_skb_sendmmsg (David Marlin) [RHEL-17716] - Bluetooth: Add bt_skb_sendmmsg helper (David Marlin) [RHEL-17716] - Bluetooth: hci_uart: fix GPF in h5_recv (David Marlin) [RHEL-17716] - Bluetooth: btintel: Fix incorrect out of memory check (David Marlin) [RHEL-17716] - Bluetooth: Keep MSFT ext info throughout a hci_dev's life cycle (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add support for offload codecs over SCO (David Marlin) [RHEL-17716] - Bluetooth: Allow usb to auto-suspend when SCO use non-HCI transport (David Marlin) [RHEL-17716] - Bluetooth: Add offload feature under experimental flag (David Marlin) [RHEL-17716] - Bluetooth: Add support for msbc coding format (David Marlin) [RHEL-17716] - Bluetooth: btintel: Define a callback to fetch codec config data (David Marlin) [RHEL-17716] - Bluetooth: Configure codec for HFP offload use case (David Marlin) [RHEL-17716] - Bluetooth: Add support for HCI_Enhanced_Setup_Synchronous_Connection command (David Marlin) [RHEL-17716] - Bluetooth: Allow setting of codec for HFP offload use case (David Marlin) [RHEL-17716] - Bluetooth: btintel: Define callback to fetch data_path_id (David Marlin) [RHEL-17716] - Bluetooth: Allow querying of supported offload codecs over SCO socket (David Marlin) [RHEL-17716] - Bluetooth: btintel: Read supported offload use cases (David Marlin) [RHEL-17716] - Bluetooth: Add support for Read Local Supported Codecs V2 (David Marlin) [RHEL-17716] - Bluetooth: Enumerate local supported codec and cache details (David Marlin) [RHEL-17716] - Bluetooth: fix init and cleanup of sco_conn.timeout_work (David Marlin) [RHEL-17716] - Bluetooth: call sock_hold earlier in sco_conn_del (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add support for IMC Networks Mediatek Chip(MT7921) (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add the new support ID for Realtek RTL8852A (David Marlin) [RHEL-17716] - Bluetooth: btintel: Read boot address irrespective of controller mode (David Marlin) [RHEL-17716] - Bluetooth: btintel: Fix boot address (David Marlin) [RHEL-17716] - Bluetooth: Fix using RPA when address has been resolved (David Marlin) [RHEL-17716] - Bluetooth: Fix using address type from events (David Marlin) [RHEL-17716] - Bluetooth: Fix enabling advertising for central role (David Marlin) [RHEL-17716] - Bluetooth: set quality report callback for Intel (David Marlin) [RHEL-17716] - Bluetooth: Support the quality report events (David Marlin) [RHEL-17716] - Bluetooth: refactor set_exp_feature with a feature table (David Marlin) [RHEL-17716] - Bluetooth: btintel: support link statistics telemetry events (David Marlin) [RHEL-17716] - Bluetooth: btusb: disable Intel link statistics telemetry events (David Marlin) [RHEL-17716] - Bluetooth: mgmt: Disallow legacy MGMT_OP_READ_LOCAL_OOB_EXT_DATA (David Marlin) [RHEL-17716] - Bluetooth: reorganize functions from hci_sock_sendmsg() (David Marlin) [RHEL-17716] - crypto: qat - prevent underflow in rp2srv_store() (Vladis Dronov) [RHEL-15642] - crypto: qat - fix deadlock in backlog processing (Vladis Dronov) [RHEL-15642] - crypto: qat - move adf_cfg_services (Vladis Dronov) [RHEL-15642] - crypto: qat - add num_rps sysfs attribute (Vladis Dronov) [RHEL-15642] - crypto: qat - add rp2svc sysfs attribute (Vladis Dronov) [RHEL-15642] - crypto: qat - add rate limiting sysfs interface (Vladis Dronov) [RHEL-15642] - crypto: qat - add rate limiting feature to qat_4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - add retrieval of fw capabilities (Vladis Dronov) [RHEL-15642] - crypto: qat - add bits.h to icp_qat_hw.h (Vladis Dronov) [RHEL-15642] - crypto: qat - move admin api (Vladis Dronov) [RHEL-15642] - crypto: qat - fix ring to service map for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - use masks for AE groups (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor fw config related functions (Vladis Dronov) [RHEL-15642] - crypto: qat - count QAT GEN4 errors (Vladis Dronov) [RHEL-15642] - crypto: qat - add error counters (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of errors from ERRSOU3 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add adf_get_aram_base() helper function (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of compression related errors for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of errors from ERRSOU2 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add reporting of errors from ERRSOU1 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add reporting of correctable errors for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add infrastructure for error reporting (Vladis Dronov) [RHEL-15642] - crypto: qat - fix double free during reset (Vladis Dronov) [RHEL-15642] - crypto: qat - add cnv_errors debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - add pm_status debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor included headers (Vladis Dronov) [RHEL-15642] - crypto: qat - Remove zlib-deflate (Vladis Dronov) [RHEL-15642] - crypto: qat - increase size of buffers (Vladis Dronov) [RHEL-15642] - crypto: qat - enable dc chaining service (Vladis Dronov) [RHEL-15642] - crypto: qat - consolidate services structure (Vladis Dronov) [RHEL-15642] - crypto: qat - fix unregistration of compression algorithms (Vladis Dronov) [RHEL-15642] - crypto: qat - fix unregistration of crypto algorithms (Vladis Dronov) [RHEL-15642] - crypto: qat - ignore subsequent state up commands (Vladis Dronov) [RHEL-15642] - crypto: qat - do not shadow error code (Vladis Dronov) [RHEL-15642] - crypto: qat - fix state machines cleanup paths (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor deprecated strncpy (Vladis Dronov) [RHEL-15642] - crypto: qat - Use list_for_each_entry() helper (Vladis Dronov) [RHEL-15642] - Documentation: ABI: debugfs-driver-qat: fix fw_counters path (Vladis Dronov) [RHEL-15642] - crypto: qat - fix crypto capability detection for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - Remove unused function declarations (Vladis Dronov) [RHEL-15642] - crypto: qat - use kfree_sensitive instead of memset/kfree() (Vladis Dronov) [RHEL-15642] - crypto: qat - replace the if statement with min() (Vladis Dronov) [RHEL-15642] - crypto: qat - add heartbeat counters check (Vladis Dronov) [RHEL-15642] - crypto: qat - add heartbeat feature (Vladis Dronov) [RHEL-15642] - crypto: qat - add measure clock frequency (Vladis Dronov) [RHEL-15642] - crypto: qat - drop obsolete heartbeat interface (Vladis Dronov) [RHEL-15642] - crypto: qat - add internal timer for qat 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - add fw_counters debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - change value of default idle filter (Vladis Dronov) [RHEL-15642] - crypto: qat - do not export adf_init_admin_pm() (Vladis Dronov) [RHEL-15642] - crypto: qat - expose pm_idle_enabled through sysfs (Vladis Dronov) [RHEL-15642] - crypto: qat - extend configuration for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor fw config logic for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - make fw images name constant (Vladis Dronov) [RHEL-15642] - crypto: qat - move returns to default case (Vladis Dronov) [RHEL-15642] - crypto: qat - unmap buffers before free for RSA (Vladis Dronov) [RHEL-15642] - crypto: qat - unmap buffer before free for DH (Vladis Dronov) [RHEL-15642] - crypto: qat - update slice mask for 4xxx devices (Vladis Dronov) [RHEL-15642] - crypto: qat - set deprecated capabilities as reserved (Vladis Dronov) [RHEL-15642] - crypto: qat - add missing function declaration in adf_dbgfs.h (Vladis Dronov) [RHEL-15642] - crypto: qat - move dbgfs init to separate file (Vladis Dronov) [RHEL-15642] - crypto: qat - drop redundant adf_enable_aer() (Vladis Dronov) [RHEL-15642] - crypto: qat - fix apply custom thread-service mapping for dc service (Vladis Dronov) [RHEL-15642] - crypto: qat - make state machine functions static (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor device restart logic (Vladis Dronov) [RHEL-15642] - crypto: qat - replace state machine calls (Vladis Dronov) [RHEL-15642] - crypto: qat - fix concurrency issue when device state changes (Vladis Dronov) [RHEL-15642] - crypto: qat - delay sysfs initialization (Vladis Dronov) [RHEL-15642] - crypto: qat - Include algapi.h for low-level Crypto API (Vladis Dronov) [RHEL-15642] - crypto: rsa-pkcs1pad - Use helper to set reqsize (Vladis Dronov) [RHEL-15642] - units: Add BYTES_PER_*BIT (Vladis Dronov) [RHEL-15642]- netfilter: xt_sctp: validate the flag_info count (Wander Lairson Costa) [RHEL-11728] {CVE-2023-39193} - nvmet: nul-terminate the NQNs passed in the connect command (Maurizio Lombardi) [RHEL-16690] {CVE-2023-6121} - x86/speculation: Mark all Skylake CPUs as vulnerable to GDS (Waiman Long) [RHEL-3876] - gve: Fix GFP flags when allocing pages (Izabela Bakollari) [2140228] - Fix double fget() in vhost_net_set_backend() (Jon Maloy) [RHEL-7162] {CVE-2023-1838} - mptcp: fix disconnect vs accept race (Davide Caratti) [RHEL-15347] - mptcp: fix accept vs worker race (Davide Caratti) [RHEL-15347] - mptcp: stops worker on unaccepted sockets at listener close (Davide Caratti) [RHEL-15347] - mptcp: fix UaF in listener shutdown (Davide Caratti) [RHEL-15347] - mptcp: fix lockdep false positive (Davide Caratti) [RHEL-15347] - mptcp: use the workqueue to destroy unaccepted sockets (Davide Caratti) [RHEL-15347] - mptcp: refactor passive socket initialization (Davide Caratti) [RHEL-15347] - mptcp: set msk local address earlier (Davide Caratti) [RHEL-15347] - mptcp: fix possible list corruption on passive MPJ (Davide Caratti) [RHEL-15347] - mptcp: fix possible deadlock in subflow_error_report (Davide Caratti) [RHEL-15347] - dmaengine: idxd: Modify the dependence of attribute pasid_enabled (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioatdma: use pci_dev_id() to simplify the code (Jerry Snitselaar) [RHEL-10101] - dmaengine: Simplify dma_async_device_register() (Jerry Snitselaar) [RHEL-10101] - dmaengine: qcom: hidma_mgmt: Use devm_platform_get_and_ioremap_resource() (Jerry Snitselaar) [RHEL-10101] - dmaengine: qcom_hidma: Use devm_platform_get_and_ioremap_resource() (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: fixing the wrong dma_dev->chancnt (Jerry Snitselaar) [RHEL-10101] - dmaengine: hidma: Don't set chancnt (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: Free up __cleanup() name (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Fix passing freed memory in idxd_cdev_open() (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: make misc interrupt one shot (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: Drop redundant pci_enable_pcie_error_reporting() (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: use PCI core macros for PCIe Capability (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Allow ATS disable update only for configurable devices (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Expose ATS disable knob only when WQ ATS is supported (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Simplify WQ attribute visibility checks (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: use spin_lock_irqsave before wait_event_lock_irq (Jerry Snitselaar) [RHEL-10101] - dmaengine: Actually use devm_add_action_or_reset() (Jerry Snitselaar) [RHEL-10101] - clk: fix leak on devm_clk_bulk_get_all() unwind (Jerry Snitselaar) [RHEL-10101] - drm/amdgpu: Fix possible null pointer dereference (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/amdgpu: Fix possible null pointer dereference (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Keep a gem reference to user bos in surfaces (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: fix typo of sizeof argument (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix possible invalid drm gem put calls (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix shader stage validation (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: remove unused vmw_overlay function (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix Legacy Display Unit atomic drm support (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Print errors when running on broken/unsupported configs (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Drop mksstat_init_record fn as currently unused (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix src/dst_pitch confusion (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Replace one-element array with flexible-array member (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Do not drop the reference to the handle too soon (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Stop accessing buffer objects which failed init (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Make the driver work without the dummy resources (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Stop using raw ttm_buffer_object's (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Abstract placement selection (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Rename dummy to is_iomem (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Cleanup the vmw bo usage in the cursor paths (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Simplify fb pinning (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Rename vmw_buffer_object to vmw_bo (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Remove the duplicate bo_free function (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Use the common gem mmap instead of the custom code (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/radeon: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/qxl: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/gem-vram: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: prevent moving of pinned BOs (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: stop allocating a dummy resource for pipelined gutting (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: stop allocating dummy resources during BO creation (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: clear the ttm_tt when bo->resource is NULL (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/i915/ttm: audit remaining bo->resource (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Stop accessing buffer objects which failed init" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Do not drop the reference to the handle too soon" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Fix Legacy Display Unit atomic drm support" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - ACPI: NFIT: Fix incorrect calculation of idt size (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add IRQ override quirk for LG UltraPC 17U70P (Mark Langsdorf) [RHEL-1021] - ACPI: property: Support strings in Apple _DSM props (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Remove Lenovo Yoga Tablet 2's MAGN0001 (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Do not turn of unused power resources on the Toshiba Click Mini (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Add 80862289 ACPI _HID for second PWM controller on Cherry Trail (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Ensure that notify handlers are not running after removal (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Add missing braces to acpi_sb_notify() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CBA (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Add Picasso to the list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_madt_oem_data: Fix flexible array member definition (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_dmar_andd: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_pci_routing_table: Replace fixed-size array with flex array member (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_resource_dma: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: actbl1: Replace 1-element arrays with flexible arrays (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_resource_vendor: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_resource_irq: Replace 1-element arrays with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_nfit_interleave: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: load of misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within null pointer (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: applying zero offset to null pointer (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: load of misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: actbl2: Replace 1-element arrays with flexible arrays (Mark Langsdorf) [RHEL-1021] - ACPICA: Introduce ACPI_FLEX_ARRAY (Mark Langsdorf) [RHEL-1021] - ACPICA: add support for ClockInput resource (v6.5) (Mark Langsdorf) [RHEL-1021] - ACPICA: Update all copyrights/signons to 2023 (Mark Langsdorf) [RHEL-1021] - ACPICA: acpisrc: Add missing tables to astable (Mark Langsdorf) [RHEL-1021] - ACPICA: Add missing macro ACPI_FUNCTION_TRACE() for acpi_ns_repair_HID() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix oops when removing custom query handlers (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Limit explicit removal of query handlers to custom query handlers (Mark Langsdorf) [RHEL-1021] - ACPI: SPCR: Amend indentation (Mark Langsdorf) [RHEL-1021] - ACPI: property: Refactor acpi_data_prop_read_single() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: warn on invalid argument when explicitly indicated by platform (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: Enable ACPI sysfs support for CCEL records (Mark Langsdorf) [RHEL-1021] - ACPICA: iASL: Add CCEL table to both compiler/disassembler (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Rework system-level device notification handling (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add Medion S17413 to IRQ override quirk (Mark Langsdorf) [RHEL-1021] - ACPI: LPIT: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-1021] - ACPI: SPCR: Prefix error messages with FW_BUG (Mark Langsdorf) [RHEL-1021] - ACPI: processor: Fix evaluating _PDC method when running as Xen dom0 (Mark Langsdorf) [RHEL-1021] - ACPI: s2idle: Log when enabling wakeup IRQ fails (Mark Langsdorf) [RHEL-1021] - ACPI: processor: Check for null return of devm_kzalloc() in fch_misc_setup() (Mark Langsdorf) [RHEL-1021] - ACPI: PPTT: Fix to avoid sleep in the atomic context when PPTT is absent (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Book X90 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Add Cezanne to the list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Expertbook B2402FBA (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Do IRQ override on all TongFang GMxRGxx (Mark Langsdorf) [RHEL-1021] - ACPI: make kobj_type structures constant (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add IRQ overrides for MAINGEAR Vector Pro 2 models (Mark Langsdorf) [RHEL-1021] - ACPI: PMIC: Add comments with DSDT power opregion field names (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Limit error type to 32-bit width (Mark Langsdorf) [RHEL-1021] - ACPI: NFIT: fix a potential deadlock during NFIT teardown (Mark Langsdorf) [RHEL-1021] - ACPI: Don't build ACPICA with '-Os' (Mark Langsdorf) [RHEL-1021] - ACPI: PRM: Check whether EFI runtime is available (Mark Langsdorf) [RHEL-1021] - ACPI: PNP: Introduce list of known non-PNP devices (Mark Langsdorf) [RHEL-1021] - ACPICA: nsrepair: handle cases without a return value correctly (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Expertbook B2402CBA (Mark Langsdorf) [RHEL-1021] - ACPI: Silence missing prototype warnings (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Avoid updating frequency QoS unnecessarily (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Use the "no limit" frequency QoS (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Drop unnecessary (void *) conversion (Mark Langsdorf) [RHEL-1021] - ACPICA: Constify pathname argument for acpi_get_handle() (Mark Langsdorf) [RHEL-1021] - ACPICA: Drop port I/O validation for some regions (Mark Langsdorf) [RHEL-1021] - ACPI: PMIC: Add pmic_i2c_address to BYT Crystal Cove support (Mark Langsdorf) [RHEL-1021] - ACPI: tables: Add support for NBFT (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Force AMD GUID/_REV 2 on HP Elitebook 865 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Stop using AMD specific codepath for Rembrandt+ (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add Asus ExpertBook B2502 to Asus quirks (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on Lenovo 14ALC7 (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on XMG Core 15 (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix ECDT probe ordering issues (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix EC address space handler unregistration (Mark Langsdorf) [RHEL-1021] - ACPICA: Allow address_space_handler Install and _REG execution as 2 separate steps (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Medion Lifetab S10346 (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Refactor available_error_type_show() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Fix formatting errors (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Adjust acpi_processor_notify_smm() return value (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Rearrange acpi_processor_notify_smm() (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Rearrange unregistration routine (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Drop redundant parentheses (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Adjust white space (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Drop unnecessary statements and parens (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Adjust critical.flags.valid check (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Convert to use sysfs_emit_at() API (Mark Langsdorf) [RHEL-1021] - ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage() (Mark Langsdorf) [RHEL-1021] - ACPI: use sysfs_emit() instead of scnprintf() (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Tab 3 Pro (YT3-X90F) (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Remove a useless include (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Silence missing prototype warnings (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Bail out if extract package failed (Mark Langsdorf) [RHEL-1021] - ACPI: pfr_telemetry: use ACPI_FREE() to free acpi_object (Mark Langsdorf) [RHEL-1021] - ACPI: pfr_update: use ACPI_FREE() to free acpi_object (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Fix the _OSC capability check for FFH OpRegion (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: Fix initiator registration for single-initiator systems (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: remove unnecessary variable initialization (Mark Langsdorf) [RHEL-1021] - ACPI: APMT: Fix kerneldoc and indentation (Mark Langsdorf) [RHEL-1021] - ACPI: Implement a generic FFH Opregion handler (Mark Langsdorf) [RHEL-1021] - redhat: configs: enable FFH OpRegion handlers (Mark Langsdorf) [RHEL-1021] - ACPI: Enable FPDT on arm64 (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: use sysfs_emit() to instead of scnprintf() (Mark Langsdorf) [RHEL-1021] - ACPI: irq: Fix some kernel-doc issues (Mark Langsdorf) [RHEL-1021] - ACPI: tables: Fix the stale comments for acpi_locate_initial_tables() (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: use hotplug_memory_notifier() directly (Mark Langsdorf) [RHEL-1021] - ACPICA: Fix error code path in acpi_ds_call_control_method() (Mark Langsdorf) [RHEL-1021] - ACPICA: Add utcksum.o to the acpidump Makefile (Mark Langsdorf) [RHEL-1021] - ACPI/IORT: Update SMMUv3 DeviceID support (Mark Langsdorf) [RHEL-1021] - ACPI: ARM Performance Monitoring Unit Table (APMT) initial support (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: Use kstrtobool() instead of strtobool() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Add quirk for the HP Pavilion Gaming 15-cx0041ur (Mark Langsdorf) [RHEL-1021] - ACPI: processor: throttling: remove variable count (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Check acpi_fetch_acpi_dev() return value (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Drop unsetting driver data on remove (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add another system to quirk list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPICA: Finish support for the CDAT table (Mark Langsdorf) [RHEL-1021] - ACPICA: Improve warning message for "invalid ACPI name" (Mark Langsdorf) [RHEL-1021] - ACPICA: Check that EBDA pointer is in valid memory (Mark Langsdorf) [RHEL-1021] - arm64: acpi: Fix possible memory leak of ffh_ctxt (Mark Langsdorf) [RHEL-1021] - arm64: Add architecture specific ACPI FFH Opregion callbacks (Mark Langsdorf) [RHEL-1021] - ACPICA: Add support for FFH Opregion special context data (Mark Langsdorf) [RHEL-1021] - ACPICA: Do not touch VGA memory when EBDA < 1ki_b (Mark Langsdorf) [RHEL-1021] - ACPICA: Make acpi_ex_load_op() match upstream (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Add LATT2021 to acpi_ignore_dep_ids[] (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Vivobook S5602ZA (Mark Langsdorf) [RHEL-1021] - apei/ghes: Use xchg_release() for updating new cache slot instead of cmpxchg() (Mark Langsdorf) [RHEL-1021] - ACPI: PCI: Fix device reference counting in acpi_get_pci_dev() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: note more about IRQ override (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on LENOVO IdeaPad (Mark Langsdorf) [RHEL-1021] - ACPI: extlog: Handle multiple records (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init() (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Drop redundant parens from expressions (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Use white space more consistently (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Drop some redundant code (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: do not add task_work to kernel thread to avoid memory leak (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Take wake IRQ into consideration when entering suspend-to-idle (Mark Langsdorf) [RHEL-1021] - ACPI: resources: Add wake_capable parameter to acpi_dev_irq_flags (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Replace loop with first entry retrieval (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Deduplicate skipping device in acpi_lpss_create_device() (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Fix a NULL pointer dereference (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add another ID to s2idle_dmi_table (Mark Langsdorf) [RHEL-1021] - ACPI: Kconfig: Drop link to https://01.org/linux-acpi (Mark Langsdorf) [RHEL-1021] - ACPI: DPTF: Drop stale link from Kconfig help (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUSTeK COMPUTER INC. ROG Flow X13 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUS ROG Zephyrus G14 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for Lenovo Slim 7 Pro 14ARH7 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: If a new AMD _HID is missing assume Rembrandt (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUS TUF Gaming A17 FA707RE (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Move _HID handling for AMD systems into structures (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add module parameter to prefer Microsoft GUID (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add ASUS model S5402ZA to quirks (Mark Langsdorf) [RHEL-1021] - ACPI: AMBA: Add ARM DMA-330 controller to the supported list (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Remove unneeded result variables (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Reorder symbols to get rid of a few forward declarations (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add a quirk for Dell Inspiron 14 2-in-1 for StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPI: PCI: Rework acpi_get_pci_dev() (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: Drop unused dev_fmt() and redundant 'HMAT' prefix (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Refactor _UID handling to use acpi_dev_uid_to_integer() (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Refactor _UID handling to use acpi_dev_uid_to_integer() (Mark Langsdorf) [RHEL-1021] - ACPI: utils: Add acpi_dev_uid_to_integer() helper to get _UID as integer (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add helper function acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Use the helper acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Vivobook K3402ZA/K3502ZA (Mark Langsdorf) [RHEL-1021] - ACPI: APD: Use the helper acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Filter out the non memory resources in is_memory() (Mark Langsdorf) [RHEL-1021] - ACPI: tables: FPDT: Don't call acpi_os_map_memory() on invalid phys address (Mark Langsdorf) [RHEL-1021] - ACPI: s2idle: Add a new ->check() callback for platform_s2idle_ops (Mark Langsdorf) [RHEL-1021] - ACPI: property: Silence missing-declarations warning in apple.c (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Use PLATFORM_DEVID_NONE in acpi_create_platform_device() (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Remove redundant print on -ENOMEM (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Sort forbidden_id_list[] in ascending order (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Use sizeof(*pointer) instead of sizeof(type) (Mark Langsdorf) [RHEL-1021] - ACPI: property: Use acpi_dev_parent() (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Refactor ACPI matching functions for better readability (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Drop kernel doc annotation from acpi_bus_notify() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Drop unneeded result variable from ec_write() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Add BERT error log footer (Mark Langsdorf) [RHEL-1021] - platform/x86: asus-wmi: Move acpi_backlight=native quirks to ACPI video_detect.c (Mark Langsdorf) [RHEL-1021] - ACPI: video: Fix indentation of video_detect_dmi_table[] entries (Mark Langsdorf) [RHEL-1021] - platform/x86: acer-wmi: Move backlight DMI quirks to acpi/video_detect.c (Mark Langsdorf) [RHEL-1021] - platform/x86: asus-wmi: Move acpi_backlight=vendor quirks to ACPI video_detect.c (Mark Langsdorf) [RHEL-1021] - ACPI: video: Refactor acpi_video_get_backlight_type() a bit (Mark Langsdorf) [RHEL-1021] - ACPI: video: Simplify acpi_video_unregister_backlight() (Mark Langsdorf) [RHEL-1021] - ACPI: video: Remove acpi_video_bus from list before tearing it down (Mark Langsdorf) [RHEL-1021] - ACPI: video: Remove code to unregister acpi_video backlight when a native backlight registers (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Fix NULL argument handling in acpi_device_get/set_power() (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Remove the unneeded result variable (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-HPI-Hybrid-Graphics _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-Lenovo-NV-HDMI-Audio _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-Dell-Video _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: Drop parent field from struct acpi_device (Mark Langsdorf) [RHEL-1021] - ACPI: move from strlcpy() with unused retval to strscpy() (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Fix acpi_dev_state_d0() kerneldoc (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Eliminate __acpi_device_add() (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Rearrange initialization of ACPI device objects (Mark Langsdorf) [RHEL-1021] - ACPI: Rename acpi_bus_get/put_acpi_device() (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Rename acpi_bus_get_parent() and rearrange it (Mark Langsdorf) [RHEL-1021]- s390/smp: move rcu_cpu_starting() earlier (Joel Savitz) [RHEL-8624] - net: fix net device address assign type (Michal Schmidt) [RHEL-6383] - net: add check for current MAC address in dev_set_mac_address (Michal Schmidt) [RHEL-6383] - writeback, cgroup: Fix kernel bootup panic with cgroup v2 (Waiman Long) [RHEL-17504] - net/tls: Remove the context from the list in tls_device_down (Jay Shin) [RHEL-17301] - tls: Fix context leak on tls_device_down (Jay Shin) [RHEL-17301] - RDMA/core: Require admin capabilities to set system parameters (Kamal Heib) [RHEL-1033] - RDMA/cma: Initialize ib_sa_multicast structure to 0 when join (Kamal Heib) [RHEL-1033] - RDMA/core: Use size_{add,sub,mul}() in calls to struct_size() (Kamal Heib) [RHEL-1033] - RDMA/cma: Fix truncation compilation warning in make_cma_ports (Kamal Heib) [RHEL-1033] - RDMA/uverbs: Fix typo of sizeof argument (Kamal Heib) [RHEL-1033] - IB/uverbs: Fix an potential error pointer dereference (Kamal Heib) [RHEL-1033] - scsi: RDMA/srp: Fix residual handling (Kamal Heib) [RHEL-1033] - rdma: fix INFINIBAND_USER_ACCESS dependency (Kamal Heib) [RHEL-1033] - gfs2: Fix quota=quiet oversight (Bob Peterson) [RHEL-14849] - gfs2: Free quota data objects synchronously (Andreas Gruenbacher) [RHEL-14849] - gfs2: Fix initial quota data refcount (Andreas Gruenbacher) [RHEL-14849] - gfs2: Factor out duplicate quota data disposal code (Andreas Gruenbacher) [RHEL-14849] - gfs2: Use gfs2_qd_dispose in gfs2_quota_cleanup (Andreas Gruenbacher) [RHEL-14849] - gfs2: Fix wrong quota shrinker return value (Andreas Gruenbacher) [RHEL-14849] - gfs2: ignore negated quota changes (Bob Peterson) [RHEL-14849] - gfs2: Introduce new quota=quiet mount option (Bob Peterson) [RHEL-14849] - gfs2: Rename sd_{ glock => kill }_wait (Andreas Gruenbacher) [RHEL-14849] - Bluetooth: btrtl: Set MSFT opcode for RTL8852 (David Marlin) [RHEL-2531] - Bluetooth: Fix return value in hci_dev_do_close() (David Marlin) [RHEL-2531] - Bluetooth: add timeout sanity check to hci_inquiry (David Marlin) [RHEL-2531] - Bluetooth: btusb: Remove WAKEUP_DISABLE and add WAKEUP_AUTOSUSPEND for Realtek devices (David Marlin) [RHEL-2531] - Bluetooth: mgmt: Pessimize compile-time bounds-check (David Marlin) [RHEL-2531] - Bluetooth: Fix race condition in handling NOP command (David Marlin) [RHEL-2531] - Bluetooth: btbcm: add patch ram for bluetooth (David Marlin) [RHEL-2531] - Bluetooth: Store advertising handle so it can be re-enabled (David Marlin) [RHEL-2531] - Bluetooth: Fix handling of LE Enhanced Connection Complete (David Marlin) [RHEL-2531] - Bluetooth: fix repeated calls to sco_sock_kill (David Marlin) [RHEL-2531] - Bluetooth: switch to lock_sock in RFCOMM (David Marlin) [RHEL-2531] - Bluetooth: serialize calls to sco_sock_{set,clear}_timer (David Marlin) [RHEL-2531] - Bluetooth: switch to lock_sock in SCO (David Marlin) [RHEL-2531] - Bluetooth: avoid circular locks in sco_sock_connect (David Marlin) [RHEL-2531] - Bluetooth: schedule SCO timeouts with delayed_work (David Marlin) [RHEL-2531] - Bluetooth: btusb: Fix fall-through warnings (David Marlin) [RHEL-2531] - Bluetooth: btintel: Combine setting up MSFT extension (David Marlin) [RHEL-2531] - Bluetooth: increase BTNAMSIZ to 21 chars to fix potential buffer overflow (David Marlin) [RHEL-2531] - Bluetooth: Add additional Bluetooth part for Realtek 8852AE (David Marlin) [RHEL-2531] - Bluetooth: btusb: Record debug log for Mediatek Chip. (David Marlin) [RHEL-2531] - Bluetooth: hci_bcm: Fix kernel doc comments (David Marlin) [RHEL-2531] - Bluetooth: Fix not generating RPA when required (David Marlin) [RHEL-2531] - Bluetooth: HCI: Add proper tracking for enable status of adv instances (David Marlin) [RHEL-2531] - Bluetooth: btusb: Enable MSFT extension for Mediatek Chip (MT7921) (David Marlin) [RHEL-2531] - Bluetooth: btusb: Make the CSR clone chip force-suspend workaround more generic (David Marlin) [RHEL-2531] - Bluetooth: btusb: Enable MSFT extension for WCN6855 controller (David Marlin) [RHEL-2531] - Bluetooth: btusb: Load Broadcom firmware for Dell device 413c:8197 (David Marlin) [RHEL-2531] - Bluetooth: btmrvl_sdio: Remove all strcpy() uses (David Marlin) [RHEL-2531] - Bluetooth: skip invalid hci_sync_conn_complete_evt (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add valid le states quirk (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: Add runtime suspend (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: btrtl: Maintain flow control if wakeup is enabled (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: add WAKEUP_DISABLE flag (David Marlin) [RHEL-2531] - Bluetooth: btrsi: use non-kernel-doc comment for copyright (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add support for LG LGSBWAC92/TWCM-K505D (David Marlin) [RHEL-2531] - Bluetooth: sco: prevent information leak in sco_conn_defer_accept() (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add support for IMC Networks Mediatek Chip (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: Disable the hci_suspend_notifier for btrtl devices (David Marlin) [RHEL-2531] - Bluetooth: msft: Use the correct print format (David Marlin) [RHEL-2531] - Bluetooth: mgmt: Use the correct print format (David Marlin) [RHEL-2531] - Bluetooth: use inclusive language in hci_core.h (David Marlin) [RHEL-2531] - Bluetooth: btqca: Moved extracting rom version info to common place (David Marlin) [RHEL-2531] - Bluetooth: btqca: Add support for firmware image with mbn type for WCN6750 (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for QTI Bluetooth chip wcn6750 (David Marlin) [RHEL-2531] - Bluetooth: use flexible-array member instead of zero-length array (David Marlin) [RHEL-2531] - Bluetooth: Fix default values for advertising interval (David Marlin) [RHEL-2531] - Bluetooth: Remove trailing semicolon in macros (David Marlin) [RHEL-2531] - Bluetooth: Fix crash in mgmt_add_adv_patterns_monitor_complete (David Marlin) [RHEL-2531] - Bluetooth: disable advertisement filters during suspend (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT interleave scanning integration (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT handle filter enablement (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT handle controller reset (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT remove monitor (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT add monitor (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT add rssi support (David Marlin) [RHEL-2531] - Bluetooth: btrtl: Enable MSFT extension for RTL8822CE controller (David Marlin) [RHEL-2531] - Bluetooth: btqca: Enable MSFT extension for Qualcomm WCN399x (David Marlin) [RHEL-2531] - Bluetooth: btqca: Use NVM files based on SoC ID for WCN3991 (David Marlin) [RHEL-2531] - Bluetooth: fix typo in struct name (David Marlin) [RHEL-2531] - Bluetooth: btqca: Add valid le states quirk (David Marlin) [RHEL-2531] - Bluetooth: ath3k: use usb_control_msg_send() and usb_control_msg_recv() (David Marlin) [RHEL-2531] - Bluetooth: Use fallthrough pseudo-keyword (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Enable WBS support for wcn3991 (David Marlin) [RHEL-2531] - Bluetooth: L2CAP: Replace zero-length array with flexible-array (David Marlin) [RHEL-2531] - Bluetooth: Replace BT_DBG with bt_dev_dbg for security manager support (David Marlin) [RHEL-2531] - Bluetooth: Replace BT_DBG with bt_dev_dbg for management support (David Marlin) [RHEL-2531] - Bluetooth: Clear HCI_LL_RPA_RESOLUTION flag on reset (David Marlin) [RHEL-2531] - Bluetooth: Sort list of LE features constants (David Marlin) [RHEL-2531] - Bluetooth: Add HCI device identifier for VIRTIO devices (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for Qualcomm Bluetooth SoC QCA6390 (David Marlin) [RHEL-2531] - Bluetooth: Fixing a few comment typos in the quirk definitions. (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for Qualcomm Bluetooth SoC WCN3991 (David Marlin) [RHEL-2531] - Bluetooth: btsdio: Use module_sdio_driver helper (David Marlin) [RHEL-2531] - mmc: sdio: Add helper macro for sdio_driver boilerplate (David Marlin) [RHEL-2531] - kasan: add compiler barriers to KUNIT_EXPECT_KASAN_FAIL (Nico Pache) [RHEL-5622] - redhat: add new tests (Nico Pache) [RHEL-5622] - redhat: disable kunit by default (Nico Pache) [RHEL-5622] - kasan: fix unit tests with CONFIG_UBSAN_LOCAL_BOUNDS enabled (Nico Pache) [RHEL-5622] - kasan: fix array-bounds warnings in tests (Nico Pache) [RHEL-5622] - kasan: test: Silence GCC 12 warnings (Nico Pache) [RHEL-5622] - tracepoint: Allow trace events in modules with TAINT_TEST (Nico Pache) [RHEL-5622] - kunit: Fix missed memory release in kunit_free_suite_set() (Nico Pache) [RHEL-5622] - kunit: fix kunit_test_init_section_suites(...) (Nico Pache) [RHEL-5622] - kunit: tool: print summary of failed tests if a few failed out of a lot (Nico Pache) [RHEL-5622] - kunit: alloc_string_stream_fragment error handling bug fix (Nico Pache) [RHEL-5622] - kunit: Fix wild-memory-access bug in kunit_free_suite_set() (Nico Pache) [RHEL-5622] - Documentation: kunit: Modular tests should not depend on KUNIT=y (Nico Pache) [RHEL-5622] - kunit: update NULL vs IS_ERR() tests (Nico Pache) [RHEL-5622] - Documentation: kunit: Update description of --alltests option (Nico Pache) [RHEL-5622] - kunit: declare kunit_assert structs as const (Nico Pache) [RHEL-5622] - kunit: rename base KUNIT_ASSERTION macro to _KUNIT_FAILED (Nico Pache) [RHEL-5622] - kunit: remove format func from struct kunit_assert, get it to 0 bytes (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree(NULL) a no-op to match kfree() (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree() not segfault on invalid inputs (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree() only work on pointers from kunit_malloc() and friends (Nico Pache) [RHEL-5622] - kunit: drop test pointer in string_stream_fragment (Nico Pache) [RHEL-5622] - kunit: string-stream: Simplify resource use (Nico Pache) [RHEL-5622] - Documentation: Kunit: Use full path to .kunitconfig (Nico Pache) [RHEL-5622] - kunit: tool: rename all_test_uml.config, use it for --alltests (Nico Pache) [RHEL-5622] - kunit: tool: remove UML specific options from all_tests_uml.config (Nico Pache) [RHEL-5622] - lib: stackinit: update reference to kunit-tool (Nico Pache) [RHEL-5622] - Documentation: KUnit: update links in the index page (Nico Pache) [RHEL-5622] - Documentation: KUnit: add intro to the getting-started page (Nico Pache) [RHEL-5622] - Documentation: KUnit: Reword start guide for selecting tests (Nico Pache) [RHEL-5622] - Documentation: KUnit: add note about mrproper in start.rst (Nico Pache) [RHEL-5622] - Documentation: KUnit: avoid repeating "kunit.py run" in start.rst (Nico Pache) [RHEL-5622] - Documentation: KUnit: remove duplicated docs for kunit_tool (Nico Pache) [RHEL-5622] - Documentation: Kunit: Add ref for other kinds of tests (Nico Pache) [RHEL-5622] - Documentation: KUnit: Fix non-uml anchor (Nico Pache) [RHEL-5622] - Documentation: Kunit: Fix inconsistent titles (Nico Pache) [RHEL-5622] - Documentation: kunit: fix trivial typo (Nico Pache) [RHEL-5622] - kunit: no longer call module_info(test, "Y") for kunit modules (Nico Pache) [RHEL-5622] - kunit: add kunit.enable to enable/disable KUnit test (Nico Pache) [RHEL-5622] - kunit: tool: make --raw_output=kunit (aka --raw_output) preserve leading spaces (Nico Pache) [RHEL-5622] - module: kunit: Load .kunit_test_suites section when CONFIG_KUNIT=m (Nico Pache) [RHEL-5622] - MAINTAINERS: kunit: add David Gow as a maintainer of KUnit (Nico Pache) [RHEL-5622] - Documentation: KUnit: Fix example with compilation error (Nico Pache) [RHEL-5622] - Documentation: kunit: Add CLI args for kunit_tool (Nico Pache) [RHEL-5622] - kunit: flatten kunit_suite*** to kunit_suite** in .kunit_test_suites (Nico Pache) [RHEL-5622] - kunit: unify module and builtin suite definitions (Nico Pache) [RHEL-5622] - Documentation: kunit: fix example run_kunit func to allow spaces in args (Nico Pache) [RHEL-5622] - kunit: test.h: fix a kernel-doc markup (Nico Pache) [RHEL-5622] - kunit: tool: Enable virtio/PCI by default on UML (Nico Pache) [RHEL-5622] - kunit: tool: make --kunitconfig repeatable, blindly concat (Nico Pache) [RHEL-5622] - kunit: add coverage_uml.config to enable GCOV on UML (Nico Pache) [RHEL-5622] - kunit: tool: refactor internal kconfig handling, allow overriding (Nico Pache) [RHEL-5622] - kunit: tool: introduce --qemu_args (Nico Pache) [RHEL-5622] - kunit: tool: simplify creating LinuxSourceTreeOperations (Nico Pache) [RHEL-5622] - kunit: tool: cosmetic: don't specify duplicate kernel cmdline options (Nico Pache) [RHEL-5622] - kunit: tool: refactoring printing logic into kunit_printer.py (Nico Pache) [RHEL-5622] - kunit: tool: redo how we construct and mock LinuxSourceTree (Nico Pache) [RHEL-5622] - kunit: tool: drop unused load_config argument (Nico Pache) [RHEL-5622] - apparmor: test: Remove some casts which are no-longer required (Nico Pache) [RHEL-5622] - kunit: Taint the kernel when KUnit tests are run (Nico Pache) [RHEL-5622] - panic: Taint kernel if tests are run (Nico Pache) [RHEL-5622] - kunit: tool: Use qemu-system-i386 for i386 runs (Nico Pache) [RHEL-5622] - kunit: tool: update riscv QEMU config with new serial dependency (Nico Pache) [RHEL-5622] - kunit: tool: Add list of all valid test configs on UML (Nico Pache) [RHEL-5622] - kunit: take `kunit_assert` as `const` (Nico Pache) [RHEL-5622] - kunit: fix UAF when run kfence test case test_gfpzero (Nico Pache) [RHEL-5622] - lib: stackinit: Convert to KUnit (Nico Pache) [RHEL-5622] - lib/test_stackinit: Add assigned initializers (Nico Pache) [RHEL-5622] - lib/test_stackinit: Allow building stand-alone (Nico Pache) [RHEL-5622] - lib/test_stackinit: Fix static initializer test (Nico Pache) [RHEL-5622] - lib: test_stackinit.c: XFAIL switch variable init tests (Nico Pache) [RHEL-5622] - lib/test_stackinit: Handle Clang auto-initialization pattern (Nico Pache) [RHEL-5622] - lib: Introduce test_stackinit module (Nico Pache) [RHEL-5622] - kunit: cleanup assertion macro internal variables (Nico Pache) [RHEL-5622] - kunit: factor out str constants from binary assertion structs (Nico Pache) [RHEL-5622] - kunit: consolidate KUNIT_INIT_BINARY_ASSERT_STRUCT macros (Nico Pache) [RHEL-5622] - kunit: remove va_format from kunit_assert (Nico Pache) [RHEL-5622] - docs: dev-tools: kunit: don't use a table for docs name (Nico Pache) [RHEL-5622] - Documentation: dev-tools: Add Testing Overview (Nico Pache) [RHEL-5622]- perf vendor events: Update PMC used in PM_RUN_INST_CMPL event for power10 platform (Michael Petlan) [RHEL-16880] - gfs2: Fix another freeze/thaw hang (Andrew Price) [RHEL-5340] - tcp: enforce receive buffer memory limits by allowing the tcp window to shrink (Felix Maurer) [RHEL-15023] - cpufreq: amd-pstate: Update policy->cur in amd_pstate_adjust_perf() (Prarit Bhargava) [RHEL-10028] - driver/base/cpu: Retry online operation if -EBUSY (Waiman Long) [RHEL-5730] - net: openvswitch: reject negative ifindex (Antoine Tenart) [RHEL-14350] - sctp: annotate data-races around sk->sk_wmem_queued (Xin Long) [RHEL-14838] - sctp: fix potential deadlock on &net->sctp.addr_wq_lock (Xin Long) [RHEL-14838] - sctp: fix an error code in sctp_sf_eat_auth() (Xin Long) [RHEL-14838] - sctp: handle invalid error codes without calling BUG() (Xin Long) [RHEL-14838] - sctp: fix an issue that plpmtu can never go to complete state (Xin Long) [RHEL-14838] - sctp: add bpf_bypass_getsockopt proto callback (Xin Long) [RHEL-14838] - powerpc/pseries: Always inline functions called from cpuidle (Mark Langsdorf) [RHEL-4666] - cpuidle: pseries: Mark ->enter() functions as __cpuidle (Mark Langsdorf) [RHEL-4666] - cpuidle: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-4666] - cpuidle: driver: Update microsecond values of state parameters as needed (Mark Langsdorf) [RHEL-4666] - cpuidle: sysfs: make kobj_type structures constant (Mark Langsdorf) [RHEL-4666] - cpuidle: Fix poll_idle() noinstr annotation (Mark Langsdorf) [RHEL-4666] - cpuidle-haltpoll: Replace default_idle() with arch_cpu_idle() (Mark Langsdorf) [RHEL-4666] - cpuidle-haltpoll: select haltpoll governor (Mark Langsdorf) [RHEL-4666] - cpuidle: Annotate poll_idle() (Mark Langsdorf) [RHEL-4666] - powerpc/cpuidle: Set CPUIDLE_FLAG_POLLING for snooze state (Mark Langsdorf) [RHEL-4666] - cpuidle: Remove redundant check in cpuidle_switch_governor() (Mark Langsdorf) [RHEL-4666] - cpuidle: powernv: move from strlcpy() with unused retval to strscpy() (Mark Langsdorf) [RHEL-4666] - cpuidle: coupled: Drop duplicate word from a comment (Mark Langsdorf) [RHEL-4666] - KVM: s390: add tracepoint in gmap notifier (Cédric Le Goater) [RHEL-11434] - KVM: s390: add stat counter for shadow gmap events (Cédric Le Goater) [RHEL-11434] - KVM: s390: fix gisa destroy operation might lead to cpu stalls (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping keyless mode exits (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping userspace-emulated instructions (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping kernel-emulated instructions (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping into program interrupt handlers (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping into interrupt handlers (Cédric Le Goater) [RHEL-9581] - KVM: s390: fix sthyi error handling (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: fix index value of replaced ASCE (Cédric Le Goater) [RHEL-9581] - KVM: s390/diag: fix racy access of physical cpu number in diag 9c handler (Cédric Le Goater) [RHEL-9581] - KVM: s390: vsie: fix the length of APCB bitmap (Cédric Le Goater) [RHEL-9581] - KVM: s390: fix KVM_S390_GET_CMMA_BITS for GFNs in memslot holes (Cédric Le Goater) [RHEL-9581] - KVM: s390: pci: fix virtual-physical confusion on module unload/load (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: fix virtual-physical confusion for next alert GISA (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: fix external interruption loop not always detected (Cédric Le Goater) [RHEL-9581] - s390: vfio-ap: tighten the NIB validity check (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: leak the topmost page table when destroy fails (Cédric Le Goater) [RHEL-9581] - mbcache: Avoid nesting of cache->c_list_lock under bit locks (Carlos Maiolino) [RHEL-15010] - ext4: fix deadlock due to mbcache entry corruption (Carlos Maiolino) [RHEL-15010] - mbcache: automatically delete entries from cache on freeing (Carlos Maiolino) [RHEL-15010] - ext4: fix use-after-free read in ext4_find_extent for bigalloc + inline (Carlos Maiolino) [RHEL-15010] - ext4: fix another off-by-one fsmap error on 1k block filesystems (Carlos Maiolino) [RHEL-15010] - ext4: fix task hung in ext4_xattr_delete_inode (Carlos Maiolino) [RHEL-15010] - ext4: Fix function prototype mismatch for ext4_feat_ktype (Carlos Maiolino) [RHEL-15010] - ext4: avoid unaccounted block allocation when expanding inode (Carlos Maiolino) [RHEL-15010] - ext4: avoid BUG_ON when creating xattrs (Carlos Maiolino) [RHEL-15010] - ext4: fix delayed allocation bug in ext4_clu_mapped for bigalloc + inline (Carlos Maiolino) [RHEL-15010] - ext4: fix uninititialized value in 'ext4_evict_inode' (Carlos Maiolino) [RHEL-15010] - ext4: fix corruption when online resizing a 1K bigalloc fs (Carlos Maiolino) [RHEL-15010] - ext4: fix error code return to user-space in ext4_get_branch() (Carlos Maiolino) [RHEL-15010] - ext4: init quota for 'old.inode' in 'ext4_rename' (Carlos Maiolino) [RHEL-15010] - ext4: fix undefined behavior in bit shift for ext4_check_flag_values (Carlos Maiolino) [RHEL-15010] - ext4: fix bug_on in __es_tree_search caused by bad boot loader inode (Carlos Maiolino) [RHEL-15010] - ext4: add EXT4_IGET_BAD flag to prevent unexpected bad inode (Carlos Maiolino) [RHEL-15010] - ext4: add helper to check quota inums (Carlos Maiolino) [RHEL-15010] - ext4: fix bug_on in __es_tree_search caused by bad quota inode (Carlos Maiolino) [RHEL-15010] - ext4: silence the warning when evicting inode with dioread_nolock (Carlos Maiolino) [RHEL-15010] - ext4: fix use-after-free in ext4_ext_shift_extents (Carlos Maiolino) [RHEL-15010] - ext4: fix warning in 'ext4_da_release_space' (Carlos Maiolino) [RHEL-15010] - jbd2: wake up journal waiters in FIFO order, not LIFO (Carlos Maiolino) [RHEL-15010] - ext4: place buffer head allocation before handle start (Carlos Maiolino) [RHEL-15010] - ext4: fix check for block being out of directory size (Carlos Maiolino) [RHEL-15010] {CVE-2022-1184} - ext4: make ext4_lazyinit_thread freezable (Carlos Maiolino) [RHEL-15010] - ext4: fix null-ptr-deref in ext4_write_info (Carlos Maiolino) [RHEL-15010] - ext4: limit the number of retries after discarding preallocations blocks (Carlos Maiolino) [RHEL-15010] - ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0 (Carlos Maiolino) [RHEL-15010] - jbd2: fix assertion 'jh->b_frozen_data == NULL' failure when journal aborted (Carlos Maiolino) [RHEL-15010] - ext4: fix race when reusing xattr blocks (Carlos Maiolino) [RHEL-15010] - ext4: unindent codeblock in ext4_xattr_block_set() (Carlos Maiolino) [RHEL-15010] - ext4: remove EA inode entry from mbcache on inode eviction (Carlos Maiolino) [RHEL-15010] - ext4: use kmemdup() to replace kmalloc + memcpy (Carlos Maiolino) [RHEL-15010] - ext4: avoid remove directory when directory is corrupted (Carlos Maiolino) [RHEL-15010] - ext4: recover csum seed of tmp_inode after migrating to extents (Carlos Maiolino) [RHEL-15010] - mbcache: add functions to delete entry if unused (Carlos Maiolino) [RHEL-15010] - mbcache: don't reclaim used entries (Carlos Maiolino) [RHEL-15010] - redhat/configs: Disable AMD PMF driver (Prarit Bhargava) [RHEL-10011] - x86/amd_nb: Add PCI ID for family 19h model 78h (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: provide user message where s0ix is not supported (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Fix memory leak in amd_pmc_stb_debugfs_open_v2() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: Remove __maybe_unused from amd_pmc_suspend_handler() (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Move out of BIOS SMN pair for STB init (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Utilize SMN index 0 for driver probe (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Move idlemask check into `amd_pmc_idlemask_read` (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Don't dump data after resume from s0i3 on picasso (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Hide SMU version and program attributes for Picasso (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Don't try to read SMU version on Picasso (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: Convert to platform remove callback returning void (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: hsmp: Convert to platform remove callback returning void (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: remove CONFIG_SUSPEND checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add line break for readability (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: differentiate STB/SMU messaging prints (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Write dummy postcode into the STB DRAM (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add num_samples message id support to STB (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: add CONFIG_SERIO dependency (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add a module parameter to disable workarounds (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Disable IRQ1 wakeup for RN/CZN (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: Fix refcount leak in amd_pmc_probe (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add new ACPI ID AMDI0009 (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Remove more CONFIG_DEBUG_FS checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Read SMU version during suspend on Cezanne systems (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: remove CONFIG_DEBUG_FS checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Fix build without debugfs (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add sysfs files for SMU (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Always write to the STB (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add defines for STB events (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmf: Add support for PMF core layer (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmc: Add new platform support (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmc: Add new acpi id for PMC controller (Prarit Bhargava) [RHEL-10011] - platform/x86: Move AMD platform drivers to separate directory (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Fix build error unused-function (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Shuffle location of amd_pmc_get_smu_version() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Avoid reading SMU version at probe time (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move FCH init to first use (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move SMU logging setup out of init (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Fix compilation without CONFIG_SUSPEND (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Only report STB errors when STB enabled (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Drop CPU QoS workaround (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Output error codes in messages (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move to later in the suspend process (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Validate entry into the deepest state on resume (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: uninitialized variable in amd_pmc_s2d_init() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Add support for AMD Spill to DRAM STB feature (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Correct usage of SMU version (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Make amd_pmc_stb_debugfs_fops static (Prarit Bhargava) [RHEL-10011] - scsi: qedf: Add synchronization between I/O completions and abort (Nilesh Javali) [RHEL-9861] - scsi: qedf: Remove unused declaration (Nilesh Javali) [RHEL-9861] - scsi: qedf: Fix firmware halt over suspend and resume (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_stop_io_on_error_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Fix NULL dereference in error handling (Nilesh Javali) [RHEL-9861] - scsi: qedf: Remove unused 'num_handled' variable (Nilesh Javali) [RHEL-9861] - scsi: qla2xxx: Fix system crash due to bad pointer access (Nilesh Javali) [RHEL-9859] - qla2xxx: Fix double free of dsd_list during driver load. (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix NULL vs IS_ERR() bug for debugfs_create_dir() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Correct endianness for rqstlen and rsplen (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix unused variable warning in qla2xxx_process_purls_pkt() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix spelling mistake "tranport" -> "transport" (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused variables in qla24xx_build_scsi_type_6_iocbs() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix nvme_fc_rcv_ls_req() undefined error (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.09.100-k (Nilesh Javali) [RHEL-9859] - Revert "scsi: qla2xxx: Fix buffer overrun" (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix smatch warn for qla_init_iocb_limit() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unsupported ql2xenabledif option (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Error code did not return to upper layer (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add logs for SFP temperature monitoring (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix firmware resource tracking (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Flush mailbox commands on chip reset (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add Unsolicited LS Request and Response Support for NVMe (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Allow 32-byte CDBs (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Move resource to allow code reuse (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused declarations (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.500-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: fix inconsistent TMF timeout (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix TMF leak through (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Turn off noisy message log (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix session hang in gnl (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix erroneous link up failure (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix command flush during TMF (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Limit TMF to 8 per function (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Adjust IOCB resource on qpair create (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix deletion race condition (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix error code in qla2x00_start_sp() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Silence a static checker warning (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused nvme_ls_waitq wait queue (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.400-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Correct the index of array (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Pointer may be dereferenced (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix buffer overrun (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Check valid rport returned by fc_bsg_to_rport() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Avoid fcport pointer dereference (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix potential NULL pointer dereference (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Array index may go out of bound (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Drop useless LIST_HEAD (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Replace one-element array with DECLARE_FLEX_ARRAY() helper (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix end of loop test (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix NULL pointer dereference in target mode (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Replace all non-returning strlcpy() with strscpy() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.300-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Wait for io return on terminate rport (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix mem access after free (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix hang in task management (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix task management cmd fail due to unavailable resource (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix task management cmd failure (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Multi-que support for TMF (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix memory leak in qla2x00_probe_one() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Refer directly to the qla2xxx_driver_template (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove default fabric ops callouts (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Drop redundant pci_enable_pcie_error_reporting() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add option to disable FC2 Target support (Nilesh Javali) [RHEL-9859]- cpupower: Fix cpuidle_set to accept only numeric values for idle-set operation. (Mamatha Inamdar) [RHEL-15215] - powerpc/vas: Limit open window failure messages in log bufffer (Mamatha Inamdar) [RHEL-14968] - udplite: Fix NULL pointer dereference in __sk_mem_raise_allocated(). (Paolo Abeni) [RHEL-14372] - vxlan: calculate correct header length for GPE (Petr Oros) [RHEL-14527] - af_unix: Fix null-ptr-deref in unix_stream_sendpage(). (Guillaume Nault) [RHEL-2574] {CVE-2023-4622} - netfilter: xt_u32: validate user space input (Phil Sutter) [RHEL-11729] {CVE-2023-39192} - netfilter: nf_log_syslog: Consolidate entry checks (Phil Sutter) [RHEL-6044] - netfilter: nf_log_syslog: Don't ignore unknown protocols (Phil Sutter) [RHEL-6044] - netfilter: nf_log_syslog: Merge MAC header dumpers (Phil Sutter) [RHEL-6044] - tipc: fix a potential deadlock on &tx->lock (Xin Long) [RHEL-14830] - tipc: stop tipc crypto on failure in tipc_node_create (Xin Long) [RHEL-14830] - tipc: check return value of pskb_trim() (Xin Long) [RHEL-14830] - net: tipc: resize nlattr array to correct size (Xin Long) [RHEL-14830] - scsi: target: core: Fix deadlock due to recursive locking (Maurizio Lombardi) [RHEL-15311] - scsi: target: Replace strlcpy() with strscpy() (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsi: Stop using sprintf() in iscsi_target_configfs.c (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsi: Fix buffer overflow in lio_target_nacl_info_show() (Maurizio Lombardi) [RHEL-15311] - scsi: target: Fix multiple LUN_RESET handling (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsit: Free cmds before session free (Maurizio Lombardi) [RHEL-15311] - net: xfrm: skip policies marked as dead while reinserting policies (Sabrina Dubroca) [RHEL-14518] - ip_vti: fix potential slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - ip6_vti: fix slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - xfrm: fix slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - net: ipv4: Use kfree_sensitive instead of kfree (Sabrina Dubroca) [RHEL-14518] - xfrm: Linearize the skb after offloading if needed. (Sabrina Dubroca) [RHEL-14518] - xfrm: fix inbound ipv4/udp/esp packets to UDPv6 dualstack sockets (Sabrina Dubroca) [RHEL-14518] - net: skb_queue_purge_reason() optimizations (Antoine Tenart) [RHEL-14568] - net: add skb_queue_purge_reason and __skb_queue_purge_reason (Antoine Tenart) [RHEL-14568] - tcp: add TCP_OLD_SEQUENCE drop reason (Antoine Tenart) [RHEL-14568] - net: move dropreason.h to dropreason-core.h (Antoine Tenart) [RHEL-14568] - net: fix kfree_skb_list use of skb_mark_not_on_list (Antoine Tenart) [RHEL-14568] - net: kfree_skb_list use kmem_cache_free_bulk (Antoine Tenart) [RHEL-14568] - bpf: Clarify error expectations from bpf_clone_redirect (Davide Caratti) [RHEL-15040] - veth: Fixing transmit return status for dropped packets (Davide Caratti) [RHEL-15040] - net: fib: avoid warn splat in flow dissector (Davide Caratti) [RHEL-15040] - net: af_key: fix sadb_x_filter validation (Davide Caratti) [RHEL-15040] - net: dcb: choose correct policy to parse DCB_ATTR_BCN (Davide Caratti) [RHEL-15040] - llc: Don't drop packet from non-root netns. (Davide Caratti) [RHEL-15040] - vlan: fix a potential uninit-value in vlan_dev_hard_start_xmit() (Davide Caratti) [RHEL-15040] - af_key: Reject optional tunnel/BEET mode templates in outbound policies (Davide Caratti) [RHEL-15040] - af_packet: Don't send zero-byte data in packet_sendmsg_spkt(). (Davide Caratti) [RHEL-15040] - ethtool: Fix uninitialized number of lanes (Davide Caratti) [RHEL-15040] - vlan: partially enable SIOCSHWTSTAMP in container (Davide Caratti) [RHEL-15040] - net/sched: act_ct: additional checks for outdated flows (Davide Caratti) [RHEL-14032] - netfilter: flowtable: GC pushes back packets to classic path (Davide Caratti) [RHEL-14032] - net: sched: sch_qfq: Use non-work-conserving warning handler (Davide Caratti) [RHEL-14032] - net: sched: sch_qfq: Fix UAF in qfq_dequeue() (Davide Caratti) [RHEL-14032] - net/sched: sch_hfsc: upgrade 'rt' to 'sc' when it becomes a inner curve (Davide Caratti) [RHEL-14032] - net/sched: sch_hfsc: Ensure inner classes have fsc curve (Davide Caratti) [RHEL-14032] - net/sched: fix a qdisc modification with ambiguous command request (Davide Caratti) [RHEL-14032] - net/sched: mqprio: Add length check for TCA_MQPRIO_{MAX/MIN}_RATE64 (Davide Caratti) [RHEL-14032] - net/sched: mqprio: add extack to mqprio_parse_nlattr() (Davide Caratti) [RHEL-14032] - net: sched: cls_flower: Undo tcf_bind_filter in case of an error (Davide Caratti) [RHEL-14032] - net: sched: cls_bpf: Undo tcf_bind_filter in case of an error (Davide Caratti) [RHEL-14032] - net: sched: cls_u32: Undo refcount decrement in case update failed (Davide Caratti) [RHEL-14032] - net: sched: cls_u32: Undo tcf_bind_filter if u32_replace_hw_knode (Davide Caratti) [RHEL-14032] - net: sched: cls_matchall: Undo tcf_bind_filter in case of failure after mall_set_parms (Davide Caratti) [RHEL-14032] - net/sched: flower: Ensure both minimum and maximum ports are specified (Davide Caratti) [RHEL-14032] - net/sched: act_pedit: Add size check for TCA_PEDIT_PARMS_EX (Davide Caratti) [RHEL-14032] - sch_netem: fix issues in netem_change() vs get_dist_table() (Davide Caratti) [RHEL-14032] - sch_netem: acquire qdisc lock in netem_change() (Davide Caratti) [RHEL-14032] - selftests: tc-testing: add one test for flushing explicitly created chain (Davide Caratti) [RHEL-14032] - net/sched: cls_api: Fix lockup on flushing explicitly created chain (Davide Caratti) [RHEL-14032] - net/sched: qdisc_destroy() old ingress and clsact Qdiscs before grafting (Davide Caratti) [RHEL-14032] - net/sched: Refactor qdisc_graft() for ingress and clsact Qdiscs (Davide Caratti) [RHEL-14032] - net/sched: act_ct: Fix promotion of offloaded unreplied tuple (Davide Caratti) [RHEL-14032] - net/sched: fq_pie: ensure reasonable TCA_FQ_PIE_QUANTUM values (Davide Caratti) [RHEL-14032] - net: sched: fix NULL pointer dereference in mq_attach (Davide Caratti) [RHEL-14032] - net/sched: act_mirred: Add carrier check (Davide Caratti) [RHEL-14032] - redhat/configs: delete ftdi-elan driver config (Desnes Nunes) [RHEL-13071] - redhat/configs: delete u132-hcd driver config (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: fix a NULL vs IS_ERR() check in probe (Desnes Nunes) [RHEL-13071] - usb: typec: Fix fast_role_swap_current show function (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: Fix command cancellation (Desnes Nunes) [RHEL-13071] - USB: serial: option: add Quectel EM061KGL series (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Fix broken polling mode after system suspend/resume (Desnes Nunes) [RHEL-13071] - usb: usbfs: Use consistent mmap functions (Desnes Nunes) [RHEL-13071] - usb: usbfs: Enforce page requirements for mmap (Desnes Nunes) [RHEL-13071] - thunderbolt: Do not touch CL state configuration during discovery (Desnes Nunes) [RHEL-13071] - thunderbolt: Increase DisplayPort Connection Manager handshake timeout (Desnes Nunes) [RHEL-13071] - thunderbolt: dma_test: Use correct value for absent rings when creating paths (Desnes Nunes) [RHEL-13071] - xhci: Fix incorrect tracking of free space on transfer rings (Desnes Nunes) [RHEL-13071] - xhci-pci: Only run d3cold avoidance quirk for s2idle (Desnes Nunes) [RHEL-13071] - usb-storage: fix deadlock when a scsi command timeouts more than once (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Fix fault at module removal (Desnes Nunes) [RHEL-13071] - usb: typec: altmodes/displayport: fix pin_assignment_show (Desnes Nunes) [RHEL-13071] - USB: UHCI: adjust zhaoxin UHCI controllers OverCurrent bit value (Desnes Nunes) [RHEL-13071] - PCI: Add ACS quirk for Zhaoxin Root/Downstream Ports (Desnes Nunes) [RHEL-13071] - PCI: Add ACS quirk for Zhaoxin multi-function devices (Desnes Nunes) [RHEL-13071] - PCI: Add Zhaoxin Vendor ID (Desnes Nunes) [RHEL-13071] - USB: usbtmc: Fix direction for 0-length ioctl control messages (Desnes Nunes) [RHEL-13071] - usb: usbtmc: Fix bug in pipe direction for control transfers (Desnes Nunes) [RHEL-13071] - media: pvrusb2: fix DVB_CORE dependency (Desnes Nunes) [RHEL-13071] - USB: sisusbvga: Add endpoint checks (Desnes Nunes) [RHEL-13071] - USB: core: Add routines for endpoint checks in old drivers (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: don't print PPM init deferred errors (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: fix multiple times discover svids error (Desnes Nunes) [RHEL-13071] - usb: xhci: plat: Add USB 3.0 phy support (Desnes Nunes) [RHEL-13071] - usb: host: xhci-plat: Use dev_is_pci() helper (Desnes Nunes) [RHEL-13071] - xhci: fix debugfs register accesses while suspended (Desnes Nunes) [RHEL-13071] - debugfs: regset32: Add Runtime PM support (Desnes Nunes) [RHEL-13071] - USB: serial: option: add UNISOC vendor and TOZED LT70C product (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix typos in comments (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix sparse warnings in tbnet_xmit_csum_and_map() (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix sparse warnings in tbnet_check_frame() and tbnet_poll() (Desnes Nunes) [RHEL-13071] - media: mc-device: remove unnecessary __must_check (Desnes Nunes) [RHEL-13071] - media: au0828: remove unnecessary (void*) conversions (Desnes Nunes) [RHEL-13071] - USB: core: Fix docs warning caused by wireless_status feature (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: add quirk for ASUS Zenbook UM325 (Desnes Nunes) [RHEL-13071] - ACPI: OSL: Remove the helper for deactivating memory region (Desnes Nunes) [RHEL-13071] - ACPI: OSL: Clean up printing messages (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: Map the mailbox with memremap() (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: tps6598x: make interrupts optional (Desnes Nunes) [RHEL-13071] - dt-bindings: Explicitly allow additional properties in common schemas (Desnes Nunes) [RHEL-13071] - dt-bindings: connector: Convert Samsung 11-pin USB bindings to dtschema (Desnes Nunes) [RHEL-13071] - dt-bindings: Merge gpio-usb-b-connector with usb-connector (Desnes Nunes) [RHEL-13071] - dt-bindings: Clean-up schema indentation formatting (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: typec-tcpci: convert to DT schema format (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: try to get role switch from tcpc fwnode (Desnes Nunes) [RHEL-13071] - USB: core: Add API to change the wireless_status (Desnes Nunes) [RHEL-13071] - USB: core: Add wireless_status sysfs attribute (Desnes Nunes) [RHEL-13071] - ABI: sysfs-bus-usb: better document variable argument (Desnes Nunes) [RHEL-13071] - thunderbolt: Introduce usb4_port_sb_opcode_err_to_errno() helper (Desnes Nunes) [RHEL-13071] - media: pvrusb2: clean up unneeded complexity in pvrusb2 class logic (Desnes Nunes) [RHEL-13071] - usb: move config USB_USS720 to usb's misc Kconfig (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-nop-xceiv: add power-domains property (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-nop-xceiv: Convert to DT schema (Desnes Nunes) [RHEL-13071] - thunderbolt: Make use of SI units from units.h (Desnes Nunes) [RHEL-13071] - thunderbolt: Get rid of redundant 'else' (Desnes Nunes) [RHEL-13071] - thunderbolt: ACPI: Replace tb_acpi_find_port() with acpi_find_child_by_adr() (Desnes Nunes) [RHEL-13071] - usb: pci-quirks: Reduce the length of a spinlock section in usb_amd_find_chipset_info() (Desnes Nunes) [RHEL-13071] - xhci: use pm_ptr() instead of #ifdef for CONFIG_PM conditionals (Desnes Nunes) [RHEL-13071] - usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Add support for polling interrupts status (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: add PMIC Glink UCSI driver (Desnes Nunes) [RHEL-13071] - tracing: Acquire buffer from temparary trace sequence (Desnes Nunes) [RHEL-13071] - USB: serial: quatech2: remove unused qt2_setdevice function (Desnes Nunes) [RHEL-13071] - usb: typec: tipd: remove unused tps6598x_write16,32 functions (Desnes Nunes) [RHEL-13071] - usb: typec: tcpci_mt6360: remove unused mt6360_tcpc_read16 function (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: remove unnecessary (void*) conversions (Desnes Nunes) [RHEL-13071] - xhci: Move xhci MSI sync function to to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: Call MSI sync function from xhci-pci instead of generic xhci code (Desnes Nunes) [RHEL-13071] - xhci: Move functions to cleanup MSI to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: move PCI specific MSI/MSIX cleanup away from generic xhci functions (Desnes Nunes) [RHEL-13071] - xhci: Move functions to setup msi to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: Avoid PCI MSI/MSIX interrupt reinitialization at resume (Desnes Nunes) [RHEL-13071] - xhci: dbc: Provide sysfs option to configure dbc descriptors (Desnes Nunes) [RHEL-13071] - xhci: mem: Join string literals back (Desnes Nunes) [RHEL-13071] - xhci: mem: Replace explicit castings with appropriate specifiers (Desnes Nunes) [RHEL-13071] - xhci: mem: Use while (i--) pattern to clean up (Desnes Nunes) [RHEL-13071] - xhci: mem: Drop useless return:s (Desnes Nunes) [RHEL-13071] - xhci: mem: Get rid of redundant 'else' (Desnes Nunes) [RHEL-13071] - xhci: mem: Use dma_poll_zalloc() instead of explicit memset() (Desnes Nunes) [RHEL-13071] - xhci: mem: Carefully calculate size for memory allocations (Desnes Nunes) [RHEL-13071] - overflow: Provide constant expression struct_size (Desnes Nunes) [RHEL-13071] - test_overflow: Regularize test reporting output (Desnes Nunes) [RHEL-13071] - overflow: Implement size_t saturating arithmetic helpers (Desnes Nunes) [RHEL-13071] - test_overflow: Add shift overflow tests (Desnes Nunes) [RHEL-13071] - overflow.h: Add comment documenting __ab_c_size() (Desnes Nunes) [RHEL-13071] - docs: basics.rst: get rid of rcu kernel-doc macros (Desnes Nunes) [RHEL-13071] - docs: Do not seek comments in kernel/rcu/tree_plugin.h (Desnes Nunes) [RHEL-13071] - docs: deprecated.rst: Add zero-length and one-element arrays (Desnes Nunes) [RHEL-13071] - docs: Remove :c:func: from process/deprecated.rst (Desnes Nunes) [RHEL-13071] - docs: Introduce deprecated APIs list (Desnes Nunes) [RHEL-13071] - USB: misc: Remove unused include file usb_u132.h (Desnes Nunes) [RHEL-13071] - usb: ftdi-elan: Delete driver (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: Drop unneeded quotes (Desnes Nunes) [RHEL-13071] - usb: host: u132-hcd: Delete driver (Desnes Nunes) [RHEL-13071] - media: pvrusb2: VIDEO_PVRUSB2 depends on DVB_CORE to use dvb_* symbols (Desnes Nunes) [RHEL-13071] - usb: misc: usb3503: support usb3803 and bypass mode (Desnes Nunes) [RHEL-13071] - usb: misc: usb3503: refactor code to prepare for usb3803 addition (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: smsc,usb3503: Add usb3803 (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: Convert SMSC USB3503 binding to a schema (Desnes Nunes) [RHEL-13071] - usb: typec: fusb302: mark OF related data as maybe unused (Desnes Nunes) [RHEL-13071] - usb: typec: hd3ss3220: Drop of_match_ptr for ID table (Desnes Nunes) [RHEL-13071] - usb: typec: hd3ss3220: Convert to i2c's .probe_new() (Desnes Nunes) [RHEL-13071] - usb: acpi: Switch to use acpi_evaluate_dsm_typed() (Desnes Nunes) [RHEL-13071] - usb: Use of_property_read_bool() for boolean properties (Desnes Nunes) [RHEL-13071] - usb: host: Fix refcount leak in ehci_hcd_ppc_of_probe (Desnes Nunes) [RHEL-13071] - usb: usb251xb: Switch to use dev_err_probe() helper (Desnes Nunes) [RHEL-13071] - thunderbolt: Refactor DROM reading (Desnes Nunes) [RHEL-13071] - thunderbolt: use `tb_eeprom_get_drom_offset` to discover DROM offset (Desnes Nunes) [RHEL-13071] - usb: xhci: change some trace event __dynamic_array() to __get_buf() (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: allow evaluated properties in OHCI controllers (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-device: make "compatible" optional (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: hcd: correct usb-device path (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: fix yamllint check warning (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-device: fix typo in required properties (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: convert usb-device.txt to YAML schema (Desnes Nunes) [RHEL-13071] - dt-bindings: Fix SPI and I2C bus node names in examples (Desnes Nunes) [RHEL-13071] - dt-bindings: mfd: mediatek: Add bindings for MT6360 PMIC (Desnes Nunes) [RHEL-13071] - usb typec: mt6360: Add MT6360 Type-C DT binding documentation (Desnes Nunes) [RHEL-13071]- net: xfrm: Fix xfrm_address_filter OOB read (Wander Lairson Costa) [2227304] {CVE-2023-39194} - drm/qxl: fix UAF on handle creation (Wander Lairson Costa) [2218333] {CVE-2023-39198} - x86/sev: Make enc_dec_hypercall() accept a size instead of npages (Vitaly Kuznetsov) [RHEL-3656] - net: virtio_net_hdr_to_skb: count transport header in UFO (Cindy Lu) [RHEL-6030] - ice: reset first in crash dump kernels (Petr Oros) [2139761] - perf/core: Fix potential NULL deref (Wander Lairson Costa) [RHEL-14982] {CVE-2023-5717} - perf: Disallow mis-matched inherited group reads (Wander Lairson Costa) [RHEL-14982] {CVE-2023-5717} - scsi: mpt3sas: Drop redundant pci_enable_pcie_error_reporting() (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Fix in error path (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Fix loop logic (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Remove volatile qualifier (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Perform additional retries if doorbell read returns 0 (Tomas Henzl) [RHEL-8246] - scsi: mpi3mr: Split off bus_reset function from host_reset (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Update driver version to 8.5.0.0.0 (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Enhance handling of devices removed after controller reset (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: WRITE SAME implementation (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Add support for more than 1MB I/O (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Update MPI Headers to version 3.00.28 (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Invoke soft reset upon TSU or event ack time out (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Propagate sense data for admin queue SCSI I/O (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Fix the type used for pointers to bitmap (Tomas Henzl) [RHEL-8232] - regmap: Drop initial version of maximum transfer length fixes (Mark Langsdorf) [RHEL-1022] - regmap: Account for register length when chunking (Mark Langsdorf) [RHEL-1022] - driver core: update comments in device_rename() (Mark Langsdorf) [RHEL-1022] - cacheinfo: Add use_arch[|_cache]_info field/function (Mark Langsdorf) [RHEL-1022] - arch_topology: Remove early cacheinfo error message if -ENOENT (Mark Langsdorf) [RHEL-1022] - cacheinfo: Allow early level detection when DT/ACPI info is missing/broken (Mark Langsdorf) [RHEL-1022] - cacheinfo: Check sib_leaf in cache_leaves_are_shared() (Mark Langsdorf) [RHEL-1022] - cacheinfo: Add arch specific early level initializer (Mark Langsdorf) [RHEL-1022] - regmap: Factor out single value register syncing (Mark Langsdorf) [RHEL-1022] - regmap: Add RAM backed register map (Mark Langsdorf) [RHEL-1022] - regmap: Removed compressed cache support (Mark Langsdorf) [RHEL-1022] - base: soc: populate machine name in soc_device_register if empty (Mark Langsdorf) [RHEL-1022] - regmap: Clarify error for unknown cache types (Mark Langsdorf) [RHEL-1022] - regmap: Handle sparse caches in the default sync (Mark Langsdorf) [RHEL-1022] - regmap: add a helper to translate the register address (Mark Langsdorf) [RHEL-1022] - regmap: cache: Silence checkpatch warning (Mark Langsdorf) [RHEL-1022] - regmap: cache: Return error in cache sync operations for REGCACHE_NONE (Mark Langsdorf) [RHEL-1022] - devres: Pass unique name of the resource to devm_add_action() (Mark Langsdorf) [RHEL-1022] - device property: Clarify description of returned value in some functions (Mark Langsdorf) [RHEL-1022] - driver core: Make state_synced device attribute writeable (Mark Langsdorf) [RHEL-1022] - PM: domains: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [RHEL-1022] - PM: runtime: Do not call __rpm_callback() from rpm_idle() (Mark Langsdorf) [RHEL-1022] - kobject: kset_uevent_ops: make name() callback take a const * (Mark Langsdorf) [RHEL-1022] - kobject: kset_uevent_ops: make filter() callback take a const * (Mark Langsdorf) [RHEL-1022] - kobject: make get_ktype() take a const pointer (Mark Langsdorf) [RHEL-1022] - kobject: make kobject_get_ownership() take a constant kobject * (Mark Langsdorf) [RHEL-1022] - arm64: topology: move store_cpu_topology() to shared code (Mark Langsdorf) [RHEL-1022] - filemap: skip write and wait if end offset precedes start (Nico Pache) [RHEL-5620] - mm/mempolicy: clean up the code logic in queue_pages_pte_range (Nico Pache) [RHEL-5620] - mm:vmscan: fix inaccurate reclaim during proactive reclaim (Nico Pache) [RHEL-5620] - mm/page_alloc: don't wake kswapd from rmqueue() unless __GFP_KSWAPD_RECLAIM is specified (Nico Pache) [RHEL-5620] - writeback: fix call of incorrect macro (Nico Pache) [RHEL-5620] - mm/page_alloc: use write_seqlock_irqsave() instead write_seqlock() + local_irq_save(). (Nico Pache) [RHEL-5620] - mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock (Nico Pache) [RHEL-5620] - writeback, cgroup: fix null-ptr-deref write in bdi_split_work_to_wbs (Nico Pache) [RHEL-5620] - mm/khugepaged: check again on anon uffd-wp during isolation (Nico Pache) [RHEL-5620] - mm/swap: fix swap_info_struct race between swapoff and get_swap_pages() (Nico Pache) [RHEL-5620] - mm/fadvise: use LLONG_MAX instead of -1 for eof (Nico Pache) [RHEL-5620] - mm: Make failslab writable again (Nico Pache) [RHEL-5620] - mm: migrate: fix THP's mapcount on isolation (Nico Pache) [RHEL-5620] - mm/memremap.c: map FS_DAX device memory as decrypted (Nico Pache) [RHEL-5620] - mm/page_alloc: add missing is_migrate_isolate() check in set_page_guard() (Nico Pache) [RHEL-5620] - mm: pagewalk: Fix race between unmap and page walker (Nico Pache) [RHEL-5620] - mm/slub: add missing TID updates on slab deactivation (Nico Pache) [RHEL-5620] - hugetlb: fix huge_pmd_unshare address update (Nico Pache) [RHEL-5620] - fs-writeback: writeback_sb_inodes:Recalculate 'wrote' according skipped pages (Nico Pache) [RHEL-5620] - highmem: fix checks in __kmap_local_sched_{in,out} (Nico Pache) [RHEL-5620] - mm: fix race between MADV_FREE reclaim and blkdev direct IO read (Nico Pache) [RHEL-5620] - mm/thp: fix NR_FILE_MAPPED accounting in page_*_file_rmap() (Nico Pache) [RHEL-5620] - memblock: use kfree() to release kmalloced memblock regions (Nico Pache) [RHEL-5620] - mm/list_lru.c: prefer struct_size over open coded arithmetic (Nico Pache) [RHEL-5620] - mm/kmemleak: allow __GFP_NOLOCKDEP passed to kmemleak's gfp (Nico Pache) [RHEL-5620] - mm/hugetlb: initialize hugetlb_usage in mm_init (Nico Pache) [RHEL-5620] - mm: mempolicy: don't have to split pmd for huge zero page (Nico Pache) [RHEL-5620] - mm/thp: fix page_vma_mapped_walk() if THP mapped by ptes (Nico Pache) [RHEL-5620] - mm/thp: unmap_mapping_page() to fix THP truncate_cleanup_page() (Nico Pache) [RHEL-5620] - delayacct: clear right task's flag after blkio completes (Nico Pache) [RHEL-5620] - mm: remove lru_add_drain_all in alloc_contig_range (Nico Pache) [RHEL-5620] - mm: always have io_remap_pfn_range() set pgprot_decrypted() (Nico Pache) [RHEL-5620] - mm/page_alloc: fix documentation error (Nico Pache) [RHEL-5620] - s390/mm: mmap base does not depend on ADDR_NO_RANDOMIZE personality (Nico Pache) [RHEL-5620] - powerpc/mm: Fix "sz" set but not used warning (Nico Pache) [RHEL-5620] - powerpc/mm/hash: Handle mmap_min_addr correctly in get_unmapped_area topdown search (Nico Pache) [RHEL-5620] - mm: ksm: do not block on page lock when searching stable tree (Nico Pache) [RHEL-5620] - powerpc/hugetlbpage: Rmove unhelpful HUGEPD_*_SHIFT macros (Nico Pache) [RHEL-5620] - arm64: mm: Export __sync_icache_dcache() for xen-privcmd (Nico Pache) [RHEL-5620]- pNFS/filelayout: treat GETDEVICEINFO errors as layout failure (Scott Mayhew) [RHEL-4969] - mm/kmemleak: move up cond_resched() call in page scanning loop (Waiman Long) [RHEL-8630] - net/sched: cls_rsvp: always try to match inside the linear part of skb (Davide Caratti) [RHEL-11730] {CVE-2023-42755} - vc_screen: don't clobber return value in vcs_read (Ricardo Robaina) [2221467] {CVE-2023-3567} - vc_screen: move load of struct vc_data pointer in vcs_read() to avoid UAF (Ricardo Robaina) [2221467] {CVE-2023-3567} - vt_kdsetmode: extend console locking (John W. Linville) [RHEL-3016] {CVE-2021-3753} - console: consume APC, DM, DCS (John W. Linville) [RHEL-3016] {CVE-2021-3753} - vt_ioctl: move vt_kdsetmode out of vt_k_ioctl (John W. Linville) [RHEL-3016] {CVE-2021-3753} - scsi: core: Fix legacy /proc parsing buffer overflow (Ewan D. Milne) [RHEL-14311] - scsi: core: Improve scsi_vpd_inquiry() checks (Ewan D. Milne) [RHEL-14311] - scsi: core: Fix a procfs host directory removal regression (Ewan D. Milne) [RHEL-14311] - scsi: core: Remove the /proc/scsi/${proc_name} directory earlier (Ewan D. Milne) [RHEL-14311] - ibmvnic: Assign XPS map to correct queue index (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Toggle between queue types in affinity mapping (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Update XPS assignments during affinity binding (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Add hotpluggable CPU callbacks to reassign affinity hints (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Assign IRQ affinity hints to device queues (Mukesh Chaurasiya) [RHEL-11210] - mm/slub: fix a slab missed to be freed problem (Rafael Aquini) [RHEL-9526] - mm/slub: simplify __cmpxchg_double_slab() and slab_[un]lock() (Rafael Aquini) [RHEL-9526] - mm/slub: convert object_map_lock to non-raw spinlock (Rafael Aquini) [RHEL-9526] - mm/slub: remove slab_lock() usage for debug operations (Rafael Aquini) [RHEL-9526] - mm/slub: restrict sysfs validation to debug caches and make it safe (Rafael Aquini) [RHEL-9526] - mm/slub: move free_debug_processing() further (Rafael Aquini) [RHEL-9526] - mm/slub: remove unneeded return value of slab_pad_check (Rafael Aquini) [RHEL-9526] - s390/qdio: fix do_sqbs() inline assembly constraint (Tobias Huschle) [RHEL-11194] - s390/lcs: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [RHEL-11194] - s390/lcs: Convert sprintf to scnprintf (Tobias Huschle) [RHEL-11194] - s390/ctcm: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [RHEL-11194] - s390/ctcm: Convert sprintf/snprintf to scnprintf (Tobias Huschle) [RHEL-11194] - s390/qeth: Fix vipa deletion (Tobias Huschle) [RHEL-11194] - s390/lcs: Remove FDDI option (Tobias Huschle) [RHEL-11194] - net/ism: Remove redundant pci_clear_master (Tobias Huschle) [RHEL-11198] - net/smc: Fix dependency of SMC on ISM (Tobias Huschle) [RHEL-11198] - s390/ism: Do not unregister clients with registered DMBs (Tobias Huschle) [RHEL-11198] - s390/ism: Fix and simplify add()/remove() callback handling (Tobias Huschle) [RHEL-11198] - s390/ism: Fix locking for forwarding of IRQs and events to clients (Tobias Huschle) [RHEL-11198] - s390/ism: Fix trying to free already-freed IRQ by repeated ism_dev_exit() (Tobias Huschle) [RHEL-11198] - s390/ism: Set DMA coherent mask (Tobias Huschle) [RHEL-11198] - net/ism: Remove extra include (Tobias Huschle) [RHEL-11198] - net/smc: Introduce explicit check for v2 support (Tobias Huschle) [RHEL-11198] - dm: fix a race condition in retrieve_deps (Benjamin Marzinski) [RHEL-13917] - dm raid: protect md_stop() with 'reconfig_mutex' (Benjamin Marzinski) [RHEL-13917] - dm raid: clean up four equivalent goto tags in raid_ctr() (Benjamin Marzinski) [RHEL-13917] - dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths (Benjamin Marzinski) [RHEL-13917] - dm integrity: fix double free on memory allocation failure (Benjamin Marzinski) [RHEL-13917] - dm integrity: scale down the recalculate buffer if memory allocation fails (Benjamin Marzinski) [RHEL-13917] - dm integrity: only allocate recalculate buffer when needed (Benjamin Marzinski) [RHEL-13917] - dm integrity: reduce vmalloc space footprint on 32-bit architectures (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Refuse to create device named "." or ".." (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Refuse to create device named "control" (Benjamin Marzinski) [RHEL-13917] - dm ioctl: structs and parameter strings must not overlap (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Avoid pointer arithmetic overflow (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Check dm_target_spec is sufficiently aligned (Benjamin Marzinski) [RHEL-13917] - dm thin: disable discards for thin-pool if no_discard_passdown (Benjamin Marzinski) [RHEL-13917] - dm thin metadata: Fix ABBA deadlock by resetting dm_bufio_client (Benjamin Marzinski) [RHEL-13917] - dm crypt: fix crypt_ctr_cipher_new return value on invalid AEAD cipher (Benjamin Marzinski) [RHEL-13917] - dm thin: update .io_hints methods to not require handling discards last (Benjamin Marzinski) [RHEL-13917] - dm thin: remove return code variable in pool_map (Benjamin Marzinski) [RHEL-13917]- cifs: Fix UAF in cifs_demultiplex_thread() (Scott Mayhew) [RHEL-7930 RHEL-9046] {CVE-2023-1192} - x86/platform/uv: Use alternate source for socket to node data (Frank Ramsay) [RHEL-13360] - media: technisat-usb2: break out of loop at end of buffer (Desnes Nunes) [RHEL-3013 RHEL-3895] {CVE-2019-15505} - can: af_can: fix NULL pointer dereference in can_rcv_filter (Ricardo Robaina) [RHEL-6429 RHEL-7053] {CVE-2023-2166} - PCI/portdrv: Prevent LS7A Bus Master clearing on shutdown (Myron Stowe) [RHEL-5147] - kernel/fork: beware of __put_task_struct() calling context (Wander Lairson Costa) [RHEL-14767] - KVM: x86/mmu: Fix an sign-extension bug with mmu_seq that hangs vCPUs (Peter Xu) [RHEL-7210] - net: tun: fix bugs for oversize packet when napi frags enabled (Ricardo Robaina) [RHEL-7185 RHEL-7267] {CVE-2023-3812} - Bluetooth: hci_ldisc: check HCI_UART_PROTO_READY flag in HCIUARTGETPROTO (Jose Ignacio Tornos Martinez) [RHEL-6357] {CVE-2023-31083} - RDMA/qedr: clean up work queue on failure in qedr_alloc_resources() (Kamal Heib) [RHEL-10313 RHEL-11030] - RDMA/qedr: fix repeated words in comments (Kamal Heib) [RHEL-10313 RHEL-11030] - x86/sev: Check for user-space IOIO pointing to kernel space (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev: Check IOBM for IOIO exceptions from user-space (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev: Disable MMIO emulation from user mode (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev-es: Fix SEV-ES OUT/IN immediate opcode vc handling (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - USB: core: Fix oversight in SuperSpeed initialization (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Fix race by not overwriting udev->descriptor in hub_port_init() (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Change usb_get_device_descriptor() API (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Unite old scheme and new scheme descriptor reads (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - bonding: do not assume skb mac_header is set (Hangbin Liu) [RHEL-13959] - bonding: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves (Hangbin Liu) [RHEL-13959] - bonding: support balance-alb with openvswitch (Hangbin Liu) [RHEL-13959] - bonding: reset bond's flags when down link is P2P device (Hangbin Liu) [RHEL-13959] - net: fix stack overflow when LRO is disabled for virtual interfaces (Hangbin Liu) [RHEL-13959] - Documentation: bonding: fix the doc of peer_notif_delay (Hangbin Liu) [RHEL-13959] - bonding: fix send_peer_notif overflow (Hangbin Liu) [RHEL-13959] - bonding: Fix memory leak when changing bond type to Ethernet (Hangbin Liu) [RHEL-13959] - bonding: restore bond's IFF_SLAVE flag if a non-eth dev enslave fails (Hangbin Liu) [RHEL-13959] - bonding: restore IFF_MASTER/SLAVE flags on bond enslave ether type change (Hangbin Liu) [RHEL-13959] - drivers/net/bonding/bond_3ad: return when there's no aggregator (Hangbin Liu) [RHEL-13959] - KVM: s390: pv: Allow AP-instructions for pv-guests (Thomas Huth) [2111392] - KVM: s390: Add UV feature negotiation (Thomas Huth) [2111392] - s390/uv: UV feature check utility (Thomas Huth) [2111392] - s390/vfio-ap: make sure nib is shared (Thomas Huth) [2111392] - KVM: s390: export kvm_s390_pv*_is_protected functions (Thomas Huth) [2111392] - s390/uv: export uv_pin_shared for direct usage (Thomas Huth) [2111392] - s390/vfio-ap: check for TAPQ response codes 0x35 and 0x36 (Thomas Huth) [2111392] - s390/vfio-ap: handle queue state change in progress on reset (Thomas Huth) [2111392] - s390/vfio-ap: use work struct to verify queue reset (Thomas Huth) [2111392] - s390/vfio-ap: store entire AP queue status word with the queue object (Thomas Huth) [2111392] - s390/vfio-ap: remove upper limit on wait for queue reset to complete (Thomas Huth) [2111392] - s390/vfio-ap: allow deconfigured queue to be passed through to a guest (Thomas Huth) [2111392] - s390/vfio-ap: wait for response code 05 to clear on queue reset (Thomas Huth) [2111392] - s390/vfio-ap: clean up irq resources if possible (Thomas Huth) [2111392] - s390/vfio-ap: no need to check the 'E' and 'I' bits in APQSW after TAPQ (Thomas Huth) [2111392] - s390/vfio-ap: fix memory leak in vfio_ap device driver (Thomas Huth) [2111392] - s390/vfio-ap: remove redundant driver match function (Thomas Huth) [2111392] - s390/vfio_ap: increase max wait time for reset verification (Thomas Huth) [2111392] - s390/vfio_ap: fix handling of error response codes (Thomas Huth) [2111392] - s390/vfio_ap: verify ZAPQ completion after return of response code zero (Thomas Huth) [2111392] - s390/vfio_ap: use TAPQ to verify reset in progress completes (Thomas Huth) [2111392] - s390/vfio_ap: check TAPQ response code when waiting for queue reset (Thomas Huth) [2111392] - s390/vfio-ap: verify reset complete in separate function (Thomas Huth) [2111392] - s390/vfio-ap: fix an error handling path in vfio_ap_mdev_probe_queue() (Thomas Huth) [2111392] - s390/vfio-ap: add s390dbf logging to the vfio_ap_irq_enable function (Thomas Huth) [2111392] - s390-vfio-ap: introduces s390 kernel debug feature for vfio_ap device driver (Thomas Huth) [2111392]- netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c (Florian Westphal) [RHEL-8444] {CVE-2023-42753} - cxgb4: fix use after free bugs caused by circular dependency problem (Ricardo Robaina) [RHEL-6261 RHEL-7058] {CVE-2023-4133} - ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1 (Florian Westphal) [RHEL-5742] - bpf: Fix incorrect verifier pruning due to missing register precision taints (Artem Savkov) [RHEL-7534 RHEL-7535] {CVE-2023-2163} - mm/memcontrol.c: remove the redundant updating of stats_flush_threshold (Waiman Long) [2238379] - virtio_balloon: Fix endless deflation and inflation on arm64 (Gavin Shan) [RHEL-1672] - i40e: Fix VF VLAN offloading when port VLAN is configured (Ivan Vecera) [RHEL-6384] - libfs: take cursors out of list when moving past the end of directory (Jeffrey Layton) [RHEL-15148] - net/core: Fix ETH_P_1588 flow dissector (Paolo Abeni) [RHEL-14379] - skbuff: skb_segment, Call zero copy functions before using skbuff frags (Paolo Abeni) [RHEL-14379] - net: prevent skb corruption on frag list segmentation (Paolo Abeni) [RHEL-14379] - udp6: Fix race condition in udp6_sendmsg & connect (Paolo Abeni) [RHEL-14379] - scsi: megaraid_sas: Driver version update to 07.727.03.00-rc1 (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Log message when controller reset is requested but not issued (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Increase register read retry rount from 3 to 30 for selected registers (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Fix deadlock on firmware crashdump (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Use pci_dev_id() to simplify the code (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Convert union megasas_sgl to flex-arrays (Tomas Henzl) [RHEL-8244] - scsi: smartpqi: Change driver version to 2.1.24-046 (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance error messages (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance controller offline notification (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance shutdown notification (Don Brace) [RHEL-1728] - scsi: smartpqi: Simplify lun_number assignment (Don Brace) [RHEL-1728] - scsi: smartpqi: Rename pciinfo to pci_info (Don Brace) [RHEL-1728] - scsi: smartpqi: Rename MACRO to clarify purpose (Don Brace) [RHEL-1728] - scsi: smartpqi: Add abort handler (Don Brace) [RHEL-1728] - x86/sgx: mark as supported (Vladis Dronov) [2041881] - x86/sgx: Resolves SECS reclaim vs. page fault for EAUG race (Vladis Dronov) [2041881] - x86/sgx: Break up long non-preemptible delays in sgx_vepc_release() (Vladis Dronov) [2041881] - Documentation: Fix typos (only the SGX part) (Vladis Dronov) [2041881] - x86/sgx: Avoid using iterator after loop in sgx_mmu_notifier_release() (Vladis Dronov) [2041881] - selftests/sgx: Add "test_encl.elf" to TEST_FILES (Vladis Dronov) [2041881] - convert sgx_set_attribute() to fdget()/fdput() (Vladis Dronov) [2041881] - x86/sgx: use VM_ACCESS_FLAGS (Vladis Dronov) [2041881] - x86/sgx: Replace kmap/kunmap_atomic() calls (Vladis Dronov) [2041881] - x86/sgx: Allow enclaves to use Asynchrounous Exit Notification (Vladis Dronov) [2041881] - x86/sgx: Reduce delay and interference of enclave release (Vladis Dronov) [2041881] - x86/vdso: Conditionally export __vdso_sgx_enter_enclave() (Vladis Dronov) [2041881] - x86/sgx: Add overflow check in sgx_validate_offset_length() (Vladis Dronov) [2041881]- team: fix null-ptr-deref when team device type is changed (Hangbin Liu) [RHEL-13961] - team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves (Hangbin Liu) [RHEL-13961] - team: reset team's flags when down link is P2P device (Hangbin Liu) [RHEL-13961] - teaming: deliver link-local packets with the link they arrive on (Hangbin Liu) [RHEL-13961] - kernfs: change kernfs_rename_lock into a read-write lock. (Ian Kent) [RHEL-11484] - kernfs: Separate kernfs_pr_cont_buf and rename_lock. (Ian Kent) [RHEL-11484] - kernfs: fix missing kernfs_iattr_rwsem locking (Ian Kent) [RHEL-11484] - kernfs: Use a per-fs rwsem to protect per-fs list of kernfs_super_info (Ian Kent) [RHEL-11484] - kernfs: Introduce separate rwsem to protect inode attributes (Ian Kent) [RHEL-11484] - kernfs: move struct kernfs_root out of the public view. (Ian Kent) [RHEL-11484] - iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: Fix potential null-ptr-deref in pass_establish() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: add null-ptr-check after ip_dev_find() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: Replace 0-length arrays with flexible arrays (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: remove unnecessary NULL check in __c4iw_poll_cq_one() (Kamal Heib) [RHEL-1734] - block: check_events: don't bother with events if unsupported (Ming Lei) [RHEL-2407] - Revert "block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers" (Ming Lei) [RHEL-2407] - Revert "ide: unexport DISK_EVENT_MEDIA_CHANGE for ide-gd and ide-cd" (Ming Lei) [RHEL-2407] - block: disk_events: introduce event flags (Ming Lei) [RHEL-2407] - block: genhd: remove async_events field (Ming Lei) [RHEL-2407] - ibmvnic: Ensure login failure recovery is safe from other resets (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Do partial reset on login failure (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Handle DMA unmapping of login buffs in release functions (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Unmap DMA login rsp buffer on send login fail (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Enforce stronger sanity checks on login response (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Free rwi on reset success (Mamatha Inamdar) [RHEL-11211] - selftests: tls: swap the TX and RX sockets in some tests (Hangbin Liu) [RHEL-13962] - selftests: mirror_gre_changes: Tighten up the TTL test match (Hangbin Liu) [RHEL-13962] - selftests: forwarding: tc_tunnel_key: Make filters more specific (Hangbin Liu) [RHEL-13962] - selftests: forwarding: tc_flower: Relax success criterion (Hangbin Liu) [RHEL-13962] - selftests: forwarding: ethtool_extended_state: Skip when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: ethtool: Skip when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Add a helper to skip test when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Set default IPv6 traceroute utility (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Switch off timeout (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Skip test when no interfaces are specified (Hangbin Liu) [RHEL-13962] - selftests: rtnetlink: remove netdevsim device after ipsec offload test (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Fix race condition in mirror installation (Hangbin Liu) [RHEL-13962] - selftests: fib_tests: mute cleanup error message (Hangbin Liu) [RHEL-13962] - sched/topology: Align group flags when removing degenerate domain (Phil Auld) [RHEL-2524] - sched/fair: Use recent_used_cpu to test p->cpus_ptr (Phil Auld) [RHEL-2524] - sched/core: Avoid double calling update_rq_clock() in __balance_push_cpu_stop() (Phil Auld) [RHEL-2524] - sched/core: Fixed missing rq clock update before calling set_rq_offline() (Phil Auld) [RHEL-2524] - sched/topology: Mark set_sched_topology() __init (Phil Auld) [RHEL-2524] - sched/wait: Fix a kthread_park race with wait_woken() (Phil Auld) [RHEL-2524] - sched: Add schedule_user() declaration (Phil Auld) [RHEL-2524] - sched/topology: Propagate SMT flags when removing degenerate domain (Phil Auld) [RHEL-2524] - sched_getaffinity: don't assume 'cpumask_size()' is fully initialized (Phil Auld) [RHEL-2524] - sched/topology: Make sched_energy_mutex,update static (Phil Auld) [RHEL-2524] - sched/fair: Fix inaccurate tally of ttwu_move_affine (Phil Auld) [RHEL-2524] - sched/fair: Revise comment about lb decision matrix (Phil Auld) [RHEL-2524] - sched/topology: Remove unused numa_distance in cpu_attach_domain() (Phil Auld) [RHEL-2524] - perf vendor events: Update metric events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update metric event names for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update JSON/events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Move JSON/events to appropriate files for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Drop STORES_PER_INST metric event for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Drop some of the JSON/events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update the JSON/events descriptions for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events power10: Add JSON metric events to present CPI stall cycles in powerpc (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_partition sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via partition information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_domain sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via domain information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_virtual_processor sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via virtual processor information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document processor_config sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show processor config information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document processor_bus_topology sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show processor bus topology information (Mamatha Inamdar) [RHEL-11205] - KVM: x86: Add SBPB support (Waiman Long) [RHEL-11272 RHEL-9298] - KVM: x86: Add IBPB_BRTYPE support (Waiman Long) [RHEL-11272 RHEL-9298] - x86/retpoline: Document some thunk handling aspects (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Remove unnecessary semicolon (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/rethunk: Use SYM_CODE_START[_LOCAL]_NOALIGN macros (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Disentangle rethunk-dependent options (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Move retbleed IBPB check into existing 'has_microcode' code block (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/bugs: Remove default case for fully switched enums (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Remove 'pred_cmd' label (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Unexport untraining functions (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Improve i-cache locality for alias mitigation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix vulnerability reporting for missing microcode (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Print mitigation for retbleed IBPB case (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Print actual mitigation if requested mitigation isn't possible (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix SBPB enablement for (possible) future fixed HW (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternatives: Remove faulty optimization (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix SBPB enablement for spec_rstack_overflow=off (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Don't probe microcode in a guest (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Set CPUID feature bits independently of bug or mitigation status (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix srso_show_state() side effect (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix amd_check_microcode() declaration (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Remove amd_get_topology_early() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Correct the mitigation status when SMT is disabled (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Explain the untraining sequences a bit more (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu/kvm: Provide UNTRAIN_RET_VM (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Cleanup the untrain mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Rename srso_(.*)_alias to srso_alias_\1 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Rename original retbleed methods (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Clean up SRSO return thunk mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternative: Make custom return thunk unconditional (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - objtool/x86: Fix SRSO mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix up srso_safe_ret() and __x86_return_thunk() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix __x86_return_thunk symbol type (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retpoline,kprobes: Fix position of thunk sections with CONFIG_LTO_CLANG (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Disable the mitigation on unaffected configurations (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Fix the DIV(0) initial fix attempt (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20588} - x86/retpoline: Don't clobber RFLAGS during srso_safe_ret() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu/amd: Enable Zenbleed fix for AMD Custom APU 0405 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20593} - driver core: cpu: Fix the fallback cpu_show_gds() name (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86: Move gds_ucode_mitigated() declaration to header (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/speculation: Add cpu_show_gds() prototype (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - driver core: cpu: Make cpu_show_not_affected() static (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix build breakage with the LLVM linker (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - Documentation/srso: Document IBPB aspect and fix formatting (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - driver core: cpu: Unify redundant silly stubs (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Do not leak quotient data after a division by 0 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20588} - x86/srso: Tie SBPB bit setting to microcode patch detection (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add a forgotten NOENDBR annotation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix return thunks in generated code (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB on VMEXIT (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add SRSO_NO support (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB_BRTYPE support (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add a Speculative RAS Overflow mitigation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retbleed: Add __x86_return_thunk alignment checks (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retbleed: Fix return thunk alignment (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternative: Optimize returns patching (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/microcode/AMD: Load late on both threads too (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/returnthunk: Allow different return thunks (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86: Sanitize linker script (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - objtool: Fix .return_sites generation (Waiman Long) [RHEL-11272 RHEL-9298]- kernel/rh_messages.c: move hardware tables to rh_messages.h (Scott Weaver) [2181912] - kernel/rh_messages.c: Wire up new calls (Prarit Bhargava) [2181912] - drivers/pci: Update rh_messages.c (Prarit Bhargava) [2181912] - treewide: Remove mark_driver_deprecated() (Prarit Bhargava) [2181912] - treewide: Remove mark_hardware_deprecated() (Prarit Bhargava) [2181912] - treewide: Remove mark_driver_unmaintained() (Prarit Bhargava) [2181912] - drivers/pci: Remove RHEL-only pci_hw_*() functions (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_disabled() calls (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_deprecated() calls (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_unmaintained() calls (Prarit Bhargava) [2181912] - redhat: fix bug/zjira sort in the changelog (Patrick Talbert) - blk-mq: enforce op-specific segment limits in blk_insert_cloned_request (Ming Lei) [RHEL-14504] - tunnels: fix kasan splat when generating ipv4 pmtu error (Guillaume Nault) [RHEL-14377] - net:ipv6: check return value of pskb_trim() (Guillaume Nault) [RHEL-14377] - sit: update dev->needed_headroom in ipip6_tunnel_bind_dev() (Guillaume Nault) [RHEL-14377] - ipv4: fix null-deref in ipv4_link_failure (Felix Maurer) [RHEL-5427] {CVE-2023-42754} - powerpc/perf/hv-24x7: Update domain value check (Michael Petlan) [RHEL-13718] - vxlan: Expose helper vxlan_build_gbp_hdr (Izabela Bakollari) [RHEL-12413] - vxlan: Remove unused argument from vxlan_build_gbp_hdr( ) and vxlan_build_gpe_hdr( ) (Izabela Bakollari) [RHEL-12413] - net: ipv4: fix one memleak in __inet_del_ifa() (Guillaume Nault) [RHEL-14375] - ipv4: Fix potential uninit variable access bug in __ip_make_skb() (Guillaume Nault) [RHEL-14375] - icmp: guard against too small mtu (Guillaume Nault) [RHEL-14375] - ipv6: ping: fix wrong checksum for large frames (Guillaume Nault) [RHEL-14375] - net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr (Hangbin Liu) [RHEL-13954] - ip6mr: Fix skb_under_panic in ip6mr_cache_report() (Hangbin Liu) [RHEL-13954] - ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new temporary address (Hangbin Liu) [RHEL-13954] - ipv6/addrconf: fix a potential refcount underflow for idev (Hangbin Liu) [RHEL-13954] - icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev(). (Hangbin Liu) [RHEL-13954] - ping6: Fix send to link-local addresses with VRF. (Hangbin Liu) [RHEL-13954] - ipv6: Fix out-of-bounds access in ipv6_find_tlv() (Hangbin Liu) [RHEL-13954]- redhat: remove kabi-rhel810 directory (Prarit Bhargava) - redhat: Update .gitignore for 8.10 kabi files (Prarit Bhargava) - nvmet-tcp: Fix a possible UAF in queue intialization setup (John Meneghini) [RHEL-11509 RHEL-11527] {CVE-2023-5178} - sctp: update hb timer immediately after users change hb_interval (Xin Long) [RHEL-6045] - s390/zcrypt_ep11misc: support API ordinal 6 with empty pin-blob (Tobias Huschle) [RHEL-11200] - net: openvswitch: add support for l4 symmetric hashing (Antoine Tenart) [RHEL-10498] - igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU (Hangbin Liu) [RHEL-10475 RHEL-10477] {CVE-2023-42752} - ip_tunnel: Preserve pointer const in ip_tunnel_info_opts (Ivan Vecera) [RHEL-12418] - tracing: Fix race in perf_trace_buf initialization (Michael Petlan) [RHEL-8648] - Input: gtco - bounds check collection indent level (Desnes Nunes) [RHEL-3014 RHEL-3892] {CVE-2019-13631} - x86/microcode/AMD: Rip out static buffers (Prarit Bhargava) [2225261] - perf/x86/amd: Do not WARN() on every IRQ (Michael Petlan) [RHEL-12340] - netfilter: conntrack: Fix gre tunneling over ipv6 (Florian Westphal) [RHEL-12497] - netfilter: handle the connecting collision properly in nf_conntrack_proto_sctp (Xin Long) [RHEL-6157] - sctp: update transport state when processing a dupcook packet (Xin Long) [RHEL-6157]- trace: Add trace_ipi_send_cpu() (Jerome Marchand) [2192614] - sched, smp: Trace smp callback causing an IPI (Jerome Marchand) [2192614] - smp: reword smp call IPI comment (Jerome Marchand) [2192614] - treewide: Trace IPIs sent via smp_send_reschedule() (Jerome Marchand) [2192614] - irq_work: Trace self-IPIs sent via arch_irq_work_raise() (Jerome Marchand) [2192614] - smp: Trace IPIs sent via arch_send_call_function_ipi_mask() (Jerome Marchand) [2192614] - sched, smp: Trace IPIs sent via send_call_function_single_ipi() (Jerome Marchand) [2192614] - trace: Add trace_ipi_send_cpumask() (Jerome Marchand) [2192614] - RDMA/umem: Set iova in ODP flow (Kamal Heib) [RHEL-1032] - RDMA/core: Update CMA destination address on rdma_resolve_addr (Kamal Heib) [RHEL-1032] - RDMA/core: Refactor rdma_bind_addr (Kamal Heib) [RHEL-1032] - RDMA/cma: Remove NULL check before dev_{put, hold} (Kamal Heib) [RHEL-1032] - IB/isert: Fix possible list corruption in CMA handler (Kamal Heib) [RHEL-1028] - IB/isert: Fix dead lock in ib_isert (Kamal Heib) [RHEL-1028] - RDMA/srpt: Add a check for valid 'mad_agent' pointer (Kamal Heib) [RHEL-1028] - IB/iser: remove redundant new line (Kamal Heib) [RHEL-1028] - IB/iser: centralize setting desc type and done callback (Kamal Heib) [RHEL-1028] - IB/iser: remove unused macros (Kamal Heib) [RHEL-1028] - IB/uverbs: Fix to consider event queue closing also upon non-blocking mode (Kamal Heib) [RHEL-1028] - RDMA/uverbs: Restrict usage of privileged QKEYs (Kamal Heib) [RHEL-1028] - RDMA/cma: Always set static rate to 0 for RoCE (Kamal Heib) [RHEL-1028] - RDMA/core: Fix GID entry ref leak when create_ah fails (Kamal Heib) [RHEL-1028] - RDMA/cm: Trace icm_send_rej event before the cm state is reset (Kamal Heib) [RHEL-1028] - RDMA/cma: Remove NULL check before dev_{put, hold} (Kamal Heib) [RHEL-1028] - RDMA/core: Fix multiple -Warray-bounds warnings (Kamal Heib) [RHEL-1028] - RDMA/cma: Allow UD qp_type to join multicast only (Kamal Heib) [RHEL-1028] - md/raid5: release batch_last before waiting for another stripe_head (Nigel Croxon) [RHEL-9875] - CI: Remove unused kpet_tree_family (Nikolai Kondrashov) - ice: Don't tx before switchdev is fully configured (Michal Schmidt) [RHEL-10997] - fbcon: set_con2fb_map needs to set con2fb_map! (Wander Lairson Costa) [RHEL-1183] {CVE-2023-38409} - fbcon: Fix error paths in set_con2fb_map (Wander Lairson Costa) [RHEL-1183] {CVE-2023-38409} - mm/slab_common: fix slab_caches list corruption after kmem_cache_destroy() (Rafael Aquini) [RHEL-3652] - sched/rt: Fix bad task migration for rt tasks (Valentin Schneider) [RHEL-3872] - RDMA/irdma: Prevent zero-length STAG registration (Kamal Heib) [RHEL-6389] {CVE-2023-25775} - mm/memcontrol: export memcg.swap watermark via sysfs for v2 memcg (Waiman Long) [RHEL-10099] - cgroup: add pids.peak interface for pids controller (Waiman Long) [RHEL-10099] - mm/memcontrol: export memcg->watermark via sysfs for v2 memcg (Waiman Long) [RHEL-10099] - cpufreq: amd-pstate: fix global sysfs attribute type (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add a kernel config option to set default mode (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Set a fallback policy based on preferred_profile (Prarit Bhargava) [2218687] - ACPI: CPPC: Add definition for undefined FADT preferred PM profile value (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Make amd-pstate EPP driver name hyphenated (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Write CPPC enable bit per-socket (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Update policy->cur in amd_pstate_adjust_perf() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Remove fast_switch_possible flag from active driver (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add ->fast_switch() callback (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Make varaiable mode_state_machine static (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add guided mode control support via sysfs (Prarit Bhargava) [2218687] - amd-pstate: Fix amd_pstate mode switch (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add guided autonomous mode (Prarit Bhargava) [2218687] - ACPI: CPPC: Add auto select register read/write support (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: move to use bus_get_dev_root() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: remove MODULE_LICENSE in non-modules (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Let user know amd-pstate is disabled (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Fix invalid write to MSR_AMD_CPPC_REQ (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: avoid uninitialized variable use (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: convert sprintf with sysfs_emit() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: add driver working mode switch support (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement suspend and resume callbacks (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement amd pstate cpu online and offline callback (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement Pstate EPP support for the AMD processors (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: optimize driver working mode selection in amd_pstate_param() (Prarit Bhargava) [2218687] - ACPI: CPPC: Add AMD pstate energy performance preference cppc control (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: fix kernel hang issue while amd-pstate unregistering (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Fix initial highest_perf value (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Expose struct amd_cpudata (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: update pstate frequency transition delay time (Prarit Bhargava) [2218687] - cpufreq: amd_pstate: map desired perf into pstate scope for powersave governor (Prarit Bhargava) [2218687] - cpufreq: amd_pstate: fix wrong lowest perf fetch (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: fix white-space (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: simplify cpudata pointer assignment (Prarit Bhargava) [2218687]- Bluetooth: L2CAP: Fix u8 overflow (Wander Lairson Costa) [2152858] {CVE-2022-45934} - tracing/histograms: Fix parsing of "sym-offset" modifier (Jerome Marchand) [2229575] - ice: always add legacy 32byte RXDID in supported_rxdids (Michal Schmidt) [RHEL-3379] - task_work: cleanup notification modes (Audra Mitchell) [RHEL-1064] - perf test topology: Use !strncmp(right platform) to fix guest PPC comparision check (Michael Petlan) [2131821] - perf test session topology: Fix test to skip the test in guest environment (Michael Petlan) [2131821] - sched/fair: Block nohz tick_stop when cfs bandwidth in use (Phil Auld) [RHEL-2527] - sched, cgroup: Restore meaning to hierarchical_quota (Phil Auld) [RHEL-2527] - sched/fair: Hide unused init_cfs_bandwidth() stub (Phil Auld) [RHEL-2527] - rbd: take header_rwsem in rbd_dev_refresh() only when updating (Ilya Dryomov) [RHEL-11241] - rbd: decouple parent info read-in from updating rbd_dev (Ilya Dryomov) [RHEL-11241] - rbd: decouple header read-in from updating rbd_dev->header (Ilya Dryomov) [RHEL-11241] - rbd: move rbd_dev_refresh() definition (Ilya Dryomov) [RHEL-11241] - redhat: list Z-Jiras in the changelog before Y-Jiras (Herton R. Krzesinski) - Revert "mm, meminit: recalculate pcpu batch and high limits after init completes" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm,memory_hotplug: factor out adjusting present pages into adjust_present_page_count()" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: move free_the_page" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: allow high-order pages to be stored on the per-cpu lists" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: fetch the correct pcp buddy during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: track range of active PCP lists during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: simplify how many pages are selected per pcp list during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: drain the requested list first during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: free pages in a single pass during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: do not prefetch buddies during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: check high-order pages for corruption during PCP operations" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: fix incorrect PGFREE and PGALLOC for high-order page" (Chris von Recklinghausen) [RHEL-8539] - Revert "cnic: Use the bitmap API to allocate bitmaps" (Chris Leech) [RHEL-1950] - Revert "cnic: don't pass bogus GFP_ flags to dma_alloc_coherent" (Chris Leech) [RHEL-1950] - scsi: lpfc: Prevent use-after-free during rmmod with mapped NVMe rports (Paul Ely) [RHEL-2602] - scsi: lpfc: Early return after marking final NLP_DROPPED flag in dev_loss_tmo (Paul Ely) [RHEL-2602] - gfs2: Add quota_change type (Bob Peterson) [2224075]- 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~EEEEE4.18.0-553.5.1.el84.18.0-553.5.1.el84.18.0-553.5.1.el84.18.0-553.5.1.el8.aarch64          !"##$$%%&'((())**++,,--...//0001122333445556677889999::;;<<<===>>>???@@AAABBCCDDEEFFGGHHIIJJKKKLLMMNNOOOPPQQRRSSTTUUUVVWWXXYYZZZ[[\\]]]^^__``aabbbccddeeffgghhiijjjkkklllmmnnoopqrsttuvvwwxxyyzy{|}~                      !!"!#$%$&$'$())**++,--.../.0111234445464788899:8;8<8=>?@ABBBCBDBEFGGHIIIJIKLLMMNNONPQRRSTUUVWWWXWYWZW[\]]]^]_]`]a]bcddedfdghhhhiijhkklhmhnooooppqorosotouuvvvwxvyvzv{||||}}~|||||       !"##$#%#&'''(')*+,,-,.,//0/1/2/3/4,5,67789::;<=>??@?A?B?C?D??EEF?GH?I?J?K?L?M?NOPQRRSTUUUVUWXYYZZZZ[[\[][^[_Z`ZaZbZcZdedfdghhhhiijjkkkllkmmnnnooopnqqqrqssqttquuqvvqwwqxxnyynzzn{{n||n}}n~~~~~~nnnnnnnnnnnnnnnnnnnn  n  n  n  n           nnnnn  !!""###$#%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D#EF#GHGIGJGKGLMMNMOOPOQMRRSRTRUVVWWXXYYZZ[[[\\[]][^^[__[``aabbccddeeffggghhgiijkkllllllmnnooppqqrrssttuuvwwwxxwyyzz{{||}}~~nnnnnnnnnnnnnnnn             nnnnnnn  !!""##$$%%&&&''&(())***+*,,*--*..*/*00*1122233444554664774884994::4;;4<<4==4>>4??@@4AA4BB4CC4DD4EE4FF4GG4HH4II4JJ4KK4LL4MM4NN4OO4PP4QQ4RRSSSTTSUUSVVSWSXSYYSZS[[S\\S]S^S_S`SaSbbScSdedfSggShiSjSkSlSmSnSooSpqprrpsptpuSvSwSxSyySzzS{S||}}}~~}}nnnnnnnnn           !!!"!#!$!%!&&&'&(!)**+++,,--..///001122233445566677688699::;;;<===>=??@?ABBCCCDDEEFFFGFHHIIIJIKILIMINIOIPIQIRISITIUIVWWWXYYZZZ[[Z\]]]^]_]``a]b]c]d]e]f]gZhhZiiZjjkkllmmmnooppqqqrsstttuvvvwwxwywzz{w|}}~~       n  !!""##$$n%%%&&&''&((&))&**&++%,,n-n..n///00/11n22n3334n55n66n77n888999::8;;;<<8==8>>8??n@@nAAABnCCCDDCEECFFCGGCHHCIICJJCKKCLLCMMCNNCOOCPPCQQCRRCSSnTTTUUTVVTWWTXXTYYTZZT[[T\\T]]T^^T__T``TaaTbbTcTddTeeTffTggThhTiiTjjTkkTllnmmmnnmoomppmqqmrmssstttuusvswwwxxwyywzzw{{w||n}}}~~}}nnnnnnnnnnnnnnnnnnnnnnnnnnn                      !! "" ## $$ %% && ''(())**++,,--.//001122334455667788899:::;<<==>>>?>@AABBCCDDEEEFFEGGEHHIIJJJKKJLLMMNNOOPPQQRRSSnTTTUUUVVTWWTXXTYYnZn[[[\\n]]]^^]___``]aa]bb]cc]dd]eenffnggghhgigjjgkllkkkmkngonppnqqqrrqsqttquuqvvqwwqxxqyyqzq{{{|{}}{~~~~qqqqqqqqqqqqqqqnnnnnnnnnnnnnn         !!""##$$%%&''(())**+,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-------,,,+................./////////////////////...........................................................................................................0.....+111111+2222324225556667665555855995555:5555;;5<555555=5555>5?@5A5B552C2D22E2FG22HH2IJKL2M2N2OPOQRSOTUTVVOWXYWZ[W\W]^W_`WaWbWcWdeWfWWghWijkWlWmWnWopoWqrWsWtutvWwxyyWzW{W|W}~OOOOOOOOOOOOOOOOOOOOO222222222222222222222222222222222222222222                               2222 22     22  2       22              22 ! "22 # $ % $ $ $ $ $ $ $ $ $ $ $ & $ $ $ $ $ $ ' ' $ # ( # # ) # *2 +2 , , - - .2222 / 0 12 2 3222 4 5 4 4 6 6 7 7 4 8 4 4 9 4 4 : : 4 ; 4 4 < < 4 4 = = = 4 > 4 4 4 ? 4 4 4 42 @ @ A A A A A @ @ B C2 D D E2 F G F H I H J K H L H M N F O F P Q22 R R S2 T T U V U W T T X Y Z2 [2 \ \ \ \ \ \ ] ] \ \ \ \ \22 ^2 _2 `2 a b a c a a a a d2 e f f f2 g2 h22 i j k i i l i i m i i n o i2 p22 q r r q q s2 t2 u2 v2 w x x2 y22 z {2 | | } } } } } } } } | ~22 22 2 2 22 22 2 2 222 2 2 222 222 22 2222 2 22 2 22 2 2 2 2 22 222 22 2 2 2222 2222 2 2 2 2 2 222          2 2 222  2    2   2  222       2     22                 2 2 !22 "2 # $2 %2 &2 '2222 (2 )22 * +22 , -2 . . / 0 / . 1 . 2 322 42 522 6 722 8 92 : ; ; : : <22 = = > > > = = ? = = = = = = @ @ @ @ =2 A22 B2 C2 D E2 F G2 H222 I I I I J2 K K K2 L M2 N2 O O2 P P Q R Q S Q222 T T T T U22 V2 W X222 Y Z Y2 [ \2 ] ^ ]2 _22 ` ` a ` `22 b2 c d c c e e f2 g22 h2 i i j j i i k l i m i i n i o o i i p i i i q r i s s t u s s s s s s v i w w x i y i z i i i { i | } i ~  i i i i 222 22 2 2 22 2 2 2 2 2 2 22 22 2 2 2 222 22 22 2 2 2 22 22 2 2 2 2 22 2       2 22 222     22 22                                   222 222 2 2  22222 2222  2 22              !  "   #  $2 % % % & % % % % '22 ( ) ) * ( + ( ( ( ( , , ( ( ( ( - . ( ( ( ( / / / ( 02 1 2 32 42 5 6 6 7 7 7 6 6 8 8 8 5 9 9 : : : 9 9 ; 9 < < < 5 = = > > > = = ? ? ?2 @22 A A B A A A A A C D D A A2 E F2 G2 H H I J H H K K L H H22 M2 N O N P Q N N R R S N N T N U V U U U U U U W W W W U U U U X X X X X X X N Y Y N Z Z Z N N N [ \ \ \ [ ] ] ] ] ] ] ] ] ] ] ] ] [ ^ [ N N _ _ _ _ _ _ _ _ _ ` a _ _ _ _ b _ c c d c c c c _ _ _ _ e f _ g _ _2 h i i i i j j j j j j j j j i i i i k k k k2 l2 m n2 o p o q o o r r o s o o o o22 t t t t u v t w t x t y t z t { t | t t } t t222 ~  ~ ~ ~ ~ ~ ~22 2 22 22 222 22 2 22 222 2 222 2 22222 22 22 2 2 2 222222 22 2 222 22 2 2 2 2 22 2 2 22 22 2 2 2 2222 22 2 2 22 22 2 2 222 2 2 2 222 2 2 2 2 2 2 222 2 2 2 2 2 22 2  22                           22   2            22     22        222  22   2  22 ! !2 "22 # # # # $ $ $ $ $ $ # % # & ' ( ( ( # ) # # * # # + , + -22 . / 02 1 122 22 3 3 32 4 5 6 4 7 4 8 9 : ; 4 < =22 > ? ? ? ? ? ? ? ? ? ? ? ? ? ? @ ? > > A A A A A A A A A A A A A > > > B > > > C C C C C C C > > > D > > E > > F F > > > > G > H I > J > > > K > > L > M > > N O > P P P P P P P P P P P P Q P P P P P P P R P P P P P P P P P P P > > S > > T U > > V W W W W W > X > Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y > > > Z22 [2 \ ] ^2222 _ _ _ ` ` _ _ _ a b a a _ _ c c c d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d c c c e e e e e e e e e e e e e e e e e e e e e e e e _22 f22 g g h g2 i2 j2 k k l l l l l l l l l m l l l l l l l l l l k n n o o n p p p p k q q k r r r k s s t t t k u u u u k k v v v v v v v v v v w v k k x x k y y k k z z z z z z z k { {22 | } ~ }2           22 2 2 2222 2 2 2 2 2 22 2 2 2 2222 2 22 2 2 22 22 2 22 22 222 2 22 22 222 2 2 2 2 222 2 222 22 22 22 22 22 22 2 22 22222 22 2 2 2 22 2 2 2222 22        2  22  2     22      2222 22 2  22   222 2   2    222  2 !2 " # $ " % " & " '2 ( ( ( ( ( (2 ) )2 * *2 + + , ,2 -22 . . .222 /2 0 02 1 222 3 3 32 42 5 6 7 82 92 : : ;2 < = < < < > < < < < < < < < <2 ?22 @ A B2 C D222 E F E2 G G H H H H H H H H H H H I H H H H H H J H H H H K H H H H H H H L H H H H H H H H H H H H H H H H H H H H H H H H H H H G M N G G O G P Q G R R R G G S T G2 U V2 W X Y22 Z Z [ [ Z Z \ ] Z22 ^ _2 ` ` ` ` ` ` ` `222 a b a a c a a a d d d e d a a a f a g g h a a a i i a j a a a a a a k l a a m n a a o a p p a q q q r q a s a a t a u a2 v w x x v y z {2 |22 }2 ~  22 22 2 2 22 2 2 22 22 2 2 222 22 222 2 2 2 2 2 22 22 22 2 22 22 2 22 22 22 222 22 2 2 2 22 22 2222 2 2 2 22 22 22 2 22 22 2 2 22 2 2 22 2 2 22 22    2222 2 22 2   22222222222222222222222 !2"2#2$2%%&222'''(')'*'22++2,2-./2022211121134115611171111118199:99;<9=1111>111?11@1111111111A1BC11111DEDDFFFFFGDDDHDDDDIJDDDDDDKDLDDDD1MMNMO1111P1111QQQQQQQQRQQSQQTQQQUQQQQQQQQVQQWQXQQQQQQQQQQQQQQYQQQQQQQQQQQQZ11[111\\]\\^\\\\\\\\\11111_1`11111a1bbb122c22defg2h22i22jjj22kkll22mm2n22opoooqqo2rrst22uuuuuu2v2wxxyw22zzzzzzzzzz{{zzz|22}2~~2222222222222222222222222222222222+++++++++                                                                    !!"""""#############################$%$&$'$(($)))))))$**$++$,$----...../////////////////////////////////000000001111111111111111111111111111111112223333333333444444444444444444444444444444444444444444444444444444444444444444444455556+777777777+88889999999999999888:::::::::::::88888888888;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;888888888<888888888888888888888888888888888+=+>>>>>>>+??@@@??????????????AAAAAAAAAA???????BBBBBBBBBBBB???????????????????????????????????????????????????????????????????????????????????CC?????????????????????DDDDD???????????????EEFFFFFEGGGGGGEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE???HHHHHHHHHHHHHHHHHHHHH????IIIIII?????JJJJ????????????????????KKKKKKKKKKKK?????????????LLLLLLLLLLLLLLLLLLLL?????????????????????????+MMMMMM+N+OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO+PQQQQQQPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP+RSSSRTTTTRURVRWWXXXXXXXWRYYYRZR[[R\R]R^R____________+`aaaa`````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````bbbbbbbbbbbbbcbbbbb`````````````````````````````````+deeeddd+fffggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggfff+hiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiihjjjjjjjjjjjjjjjjjjjjjjjjhkkkkkkkkkklkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkmmknnkkooooookkkkkkkkkkkppkkkkkkkkkkkkkkkkkkkkkkkkkkkkqqqqqqqqkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkrkkkkkkkkskkkkkkkttkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkuukkkkkkkkkkkkkkkkkkkkkkkkkkvkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkwkkkkkkkkkkkkkkkkkkkkkkkkkkkxyyyyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkzzkk{{{{{{{{{{{{{{{{{kkk|||||||||kk}}}}}}}}}}}}}kkkkkkkkkkkkkkk~~~~kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkhhhhhhh+++            !!!"!##!$!%!&!'!(!)!*!+!,!-!./!0!1!2!3!4!5!6!7!8!9!:!;<<<<<<<<<<<<<<<<<<<<<<<<<====<<<<<<<<<<<<<<>><<<<<?@AAA@@@B@@@@@@@@@@@?CCCCCCC?DDDDD?EEEE?FFFFFFFFFFFFFFFFFFF?GGGG?HHHH<<<<<<<<<<IIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJIKKKKKKKKKKKKKKIIIIIIIIII<<<<<<<<<<<<<<<LLLLLLLLLLLL<<<<MMNNNNNNNNNNNM<<OOOOOOOOOOO<<<<<<<<<<<PPPPPPPPPPPPPPPQQQQQQQQPPPPPPPPPPPPPPPRSSSRTTTTTTTTTRUUUUURRVVVRWWWWWWRXXXXRYYYYRZZZZR[\\\\[]]][^^^[___RR`````PPPPP<<a<<<<<<<<<<bbbbbbbbbbbbbb<<<<<cccccc<<<<<<<<<<<dddeeeeddfffffd<<<<<<<<<<<<<<<<<<<<gggghhgigjjjkkjllgmmmnmogppgqqqrrgssgttguuvvvwwvxxxyyxzx{{x|||}v~~vvvvvvvvvvvvvvvv  v  v    v         vvv !"""""#"$%&'()*+,,-./0102345464748984:4;<;;=>?@ABAAAACDCECFCGCHCICJCKCLCMANOPQRRRRSTSUSVQWWXWYZY[Y\Q]Q^_^`^abbcdedfdgdhhiijhkkklhmhnhohphqhrhshtuvuwhxhyhzh{h|h}h~~hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhd4.18.0-553.5.1.el8.aarch64.configKconfigKconfig.redhatMakefileMakefile.rhelverModule.symversSystem.maparchKconfigalphaKconfigKconfig.debugMakefilebootMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilearcKconfigKconfig.debugMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplat-axs10xKconfigMakefileplat-eznpsKconfigMakefileplat-hsdkKconfigMakefileplat-simMakefileplat-tb10xKconfigMakefilearmKconfigKconfig-nommuKconfig.debugMakefilebootMakefilebootpMakefilecompressedMakefiledtsMakefilecommonKconfigMakefilecryptoKconfigMakefilefirmwareKconfigMakefileincludeasmopcodes.hxenevents.hhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hxen-ops.hkernelMakefilelibMakefilemach-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.platformsMakefilebootMakefiledtsMakefileactionsMakefilealMakefileallwinnerMakefilealteraMakefileamdMakefileamlogicMakefileapmMakefilearmMakefilebroadcomMakefilenorthstar2MakefilestingrayMakefilecaviumMakefileexynosMakefilefreescaleMakefilehisiliconMakefilelgMakefilemarvellMakefilemediatekMakefilenvidiaMakefileqcomMakefilerealtekMakefilerenesasMakefilerockchipMakefilesocionextMakefilesprdMakefilesynapticsMakefilexilinxMakefilezteMakefilecryptoKconfigMakefilehypervMakefileincludeasmKbuildacenv.hacpi.halternative.harch_gicv3.harch_timer.harchrandom.harm-cci.harm_dsu_pmu.hasm-bug.hasm-extable.hasm-offsets.hasm-prototypes.hasm-uaccess.hasm_pointer_auth.hassembler.hatomic.hatomic_ll_sc.hatomic_lse.hbarrier.hbitops.hbitrev.hboot.hbrk-imm.hbug.hcache.hcacheflush.hchecksum.hclocksource.hcmpxchg.hcompat.hcompiler.hcpu.hcpu_ops.hcpufeature.hcpuidle.hcputype.hcurrent.hdaifflags.hdcc.hdebug-monitors.hdevice.hdma-mapping.hdmi.hefi.helf.hesr.hexception.hexec.hextable.hfb.hfixmap.hfpsimd.hfpsimdmacros.hftrace.hfutex.hhardirq.hhugetlb.hhw_breakpoint.hhwcap.hhyperv-tlfs.hhypervisor.himage.hinsn.hio.hirq.hirq_work.hirqflags.hjump_label.hkasan.hkernel-pgtable.hkexec.hkgdb.hkprobes.hkvm_arm.hkvm_asm.hkvm_coproc.hkvm_emulate.hkvm_host.hkvm_hyp.hkvm_mmu.hkvm_ptrauth.hkvm_ras.hkvm_types.hlinkage.hlse.hmemory.hmman.hmmu.hmmu_context.hmmzone.hmodule.hmshyperv.hneon-intrinsics.hneon.hnuma.hpage-def.hpage.hparavirt.hpci.hpercpu.hperf_event.hpgalloc.hpgtable-hwdef.hpgtable-prot.hpgtable-types.hpgtable.hpointer_auth.hpreempt.hprobes.hproc-fns.hprocessor.hptdump.hptrace.hpvclock-abi.hsdei.hseccomp.hsections.hshmparam.hsignal32.hsimd.hsmp.hsmp_plat.hsparsemem.hspinlock.hspinlock_types.hstack_pointer.hstackprotector.hstacktrace.hstage2_pgtable.hstat.hstring.hsuspend.hsync_bitops.hsyscall.hsyscall_wrapper.hsysreg.hsystem_misc.hthread_info.htimex.htlb.htlbflush.htopology.htraps.huaccess.hunistd.hunistd32.huprobes.hvdsovdso.hclocksource.hcompat_barrier.hcompat_gettimeofday.hgettimeofday.hprocessor.hvsyscall.hvdso_datapage.hvectors.hvirt.hvmap_stack.hword-at-a-time.hxenevents.hhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hxen-ops.hxor.hgeneratedasmbugs.hcpucaps.hdelay.hdiv64.hdma-contiguous.hdma.hearly_ioremap.hemergency-restart.hhw_irq.hirq_regs.hkdebug.hkmap_size.hlocal.hlocal64.hmcs_spinlock.hmm-arch-hooks.hmmiowb.hmsi.hqrwlock.hqspinlock.hsegment.hserial.hset_memory.hsizes.hswitch_to.htrace_clock.hunaligned.huser.hvga.huapiasmerrno.hioctl.hioctls.hipcbuf.hkvm_para.hmman.hmsgbuf.hpoll.hresource.hsembuf.hshmbuf.hsiginfo.hsocket.hsockios.hswab.htermbits.htermios.htypes.huapiasmKbuildauxvec.hbitsperlong.hbpf_perf_event.hbyteorder.hfcntl.hhwcap.hkvm.hmman.hparam.hperf_regs.hposix_types.hptrace.hsetup.hsigcontext.hsignal.hstat.hstatfs.hsve_context.hucontext.hunistd.hkernelMakefilemodule.ldsprobesMakefilevdsoMakefilevdso32MakefilekvmKconfigMakefilehypMakefilenvheMakefilevheMakefilelibMakefilemmMakefilenetMakefiletoolsMakefilexenMakefilec6xKconfigMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileplatformsKconfigMakefileh8300KconfigKconfig.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.postlinkbootMakefilecryptoMakefilekernelMakefileptraceMakefiletraceMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemath-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.cpubootMakefilecompressedMakefilecocoMakefiletdxMakefilecryptoMakefileentryMakefilesyscallsMakefilevdsoMakefilevsyscallMakefileeventsKconfigMakefileamdMakefileintelMakefilehypervMakefileia32MakefilekernelMakefileacpiMakefileapicMakefilecpuMakefilemceMakefilemicrocodeMakefilemtrrMakefileresctrlMakefilesgxMakefilefpuMakefilekprobesMakefilekvmKconfigMakefilelibMakefilemath-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_enetKconfigMakefilefujitsuKconfigMakefilegoogleKconfigMakefilegveMakefilehisiliconKconfigMakefilehnsMakefilehns3Makefilehns3pfMakefilehns3vfMakefilehpKconfigMakefilehuaweiKconfigMakefilehinicKconfigMakefilei825xxKconfigMakefileibmKconfigMakefileeheaMakefileemacKconfigMakefileintelKconfigMakefilee1000Makefilee1000eMakefilefm10kMakefilei40eMakefileiavfMakefileiceMakefileidpfMakefileigbMakefileigbvfMakefileigcMakefileixgbMakefileixgbeMakefileixgbevfMakefilemarvellKconfigMakefilemvpp2MakefilemediatekKconfigMakefilemellanoxKconfigMakefilemlx4KconfigMakefilemlx5coreKconfigMakefileaccelMakefilediagMakefileenMakefilexskMakefileen_accelMakefileeswMakefilefpgaMakefileipoibMakefilelibMakefilesteeringMakefilemlxbf_gigeKconfigMakefilemlxfwKconfigMakefilemlxswKconfigMakefilemicrelKconfigMakefilemicrochipKconfigMakefilemicrosoftKconfigMakefilemanaMakefilemoxaKconfigMakefilemsccKconfigMakefilemyricomKconfigMakefilemyri10geMakefilenatsemiKconfigMakefileneterionKconfigMakefilevxgeMakefilenetronomeKconfigMakefilenfpMakefilebpfMakefileflowerMakefilenfpcoreMakefilenfp6000MakefilenicMakefileniKconfigMakefilenuvotonKconfigMakefilenvidiaKconfigMakefilenxpKconfigMakefileoki-semiKconfigMakefilepch_gbeKconfigMakefilepacketenginesKconfigMakefilepasemiKconfigMakefilepensandoKconfigMakefileionicMakefileqlogicKconfigMakefilenetxenMakefileqedMakefileqedeMakefileqlcnicMakefileqlgeMakefilequalcommKconfigMakefileemacMakefilermnetKconfigMakefilerdcKconfigMakefilerealtekKconfigMakefilerenesasKconfigMakefilerockerKconfigMakefilesamsungKconfigMakefilesxgbeMakefileseeqKconfigMakefilesfcKconfigMakefilefalconKconfigMakefilesienaKconfigMakefilesgiKconfigMakefilesilanKconfigMakefilesisKconfigMakefilesmscKconfigMakefilesocionextKconfigMakefilestmicroKconfigMakefilestmmacKconfigMakefilesunKconfigMakefilesynopsysKconfigMakefiletehutiKconfigMakefiletiKconfigMakefiletoshibaKconfigMakefiletundraKconfigMakefileviaKconfigMakefilewiznetKconfigMakefilexilinxKconfigMakefilexircomKconfigMakefilexscaleKconfigMakefilefddiKconfigMakefileskfpMakefilefjesMakefilehamradioKconfigMakefilehippiKconfigMakefilehypervKconfigMakefileieee802154KconfigMakefileipvlanMakefilenetdevsimMakefilepcsKconfigMakefilephyKconfigMakefileplipKconfigMakefilepppKconfigMakefileslipKconfigMakefileteamKconfigMakefilethunderboltKconfigMakefileusbKconfigMakefilevmxnet3MakefilewanKconfigMakefilelmcMakefilewimaxKconfigMakefilei2400mKconfigMakefilewirelessKconfigMakefileadmtekKconfigMakefileathKconfigMakefilear5523KconfigMakefileath10kKconfigMakefileath11kKconfigMakefileath12kKconfigMakefileath5kKconfigMakefileath6klKconfigMakefileath9kKconfigMakefilecarl9170KconfigMakefilewcn36xxKconfigMakefilewil6210KconfigMakefileatmelKconfigMakefilebroadcomKconfigMakefileb43KconfigMakefileb43legacyKconfigMakefilebrcm80211KconfigMakefilebrcmfmacKconfigMakefilebcaMakefilecywMakefilewccMakefilebrcmsmacMakefilebrcmutilMakefileciscoKconfigMakefileintelKconfigMakefileipw2x00KconfigMakefileiwlegacyKconfigMakefileiwlwifiKconfigMakefiledvmMakefilemeiMakefilemvmMakefileintersilKconfigMakefilehostapKconfigMakefileorinocoKconfigMakefilep54KconfigMakefileprism54MakefilelegacyKconfigMakefilemarvellKconfigMakefilelibertasKconfigMakefilelibertas_tfKconfigMakefilemwifiexKconfigMakefilemediatekKconfigMakefilemt76KconfigMakefilemt7603KconfigMakefilemt7615KconfigMakefilemt76x0KconfigMakefilemt76x2KconfigMakefilemt7915KconfigMakefilemt7921KconfigMakefilemt7996KconfigMakefilemt7601uKconfigMakefilequantennaKconfigMakefileqtnfmacKconfigMakefileralinkKconfigMakefilert2x00KconfigMakefilerealtekKconfigMakefilertl818xKconfigMakefilertl8180Makefilertl8187Makefilertl8xxxuKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8188eeMakefilertl8192cMakefilertl8192ceMakefilertl8192cuMakefilertl8192deMakefilertl8192eeMakefilertl8192seMakefilertl8723aeMakefilertl8723beMakefilertl8723comMakefilertl8821aeMakefilertw88KconfigMakefilertw89KconfigMakefilersiKconfigMakefilestKconfigMakefilecw1200KconfigMakefiletiKconfigMakefilewl1251KconfigMakefilewl12xxKconfigMakefilewl18xxKconfigMakefilewlcoreKconfigMakefilevirtualKconfigMakefilezydasKconfigMakefilezd1211rwKconfigMakefilexen-netbackMakefilenfcKconfigMakefilefdpKconfigMakefilemicroreadKconfigMakefilenfcmrvlKconfigMakefilenxp-nciKconfigMakefilepn533KconfigMakefilepn544KconfigMakefiles3fwrn5KconfigMakefilest-nciKconfigMakefilest21nfcaKconfigMakefilest95hfKconfigMakefilentbKconfigMakefilehwKconfigMakefileamdKconfigMakefileepfKconfigMakefileidtKconfigMakefileintelKconfigMakefilemsccKconfigMakefiletestKconfigMakefilenubusMakefilenvdimmKconfigMakefilenvmeKconfigMakefilehostKconfigMakefiletargetKconfigMakefilenvmemKconfigMakefileofKconfigMakefileunittest-dataMakefileoppKconfigMakefilepariscKconfigMakefileparportKconfigMakefilepciKconfigMakefilecontrollerKconfigMakefiledwcKconfigMakefileendpointKconfigMakefilefunctionsKconfigMakefilehotplugKconfigMakefilepcieKconfigMakefileswitchKconfigMakefilepcmciaKconfigMakefileperfKconfigMakefilehisiliconMakefilephyKconfigMakefileallwinnerKconfigMakefileamlogicKconfigMakefilebroadcomKconfigMakefilehisiliconKconfigMakefilelantiqKconfigMakefilemarvellKconfigMakefilemediatekKconfigMakefilemotorolaKconfigMakefilequalcommKconfigMakefileralinkKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefiletiKconfigMakefilepinctrlKconfigMakefileactionsKconfigMakefileaspeedKconfigMakefilebcmKconfigMakefileberlinKconfigMakefilefreescaleKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemvebuKconfigMakefilenomadikKconfigMakefilepxaKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilesh-pfcKconfigMakefilesirfMakefilespearKconfigMakefilesprdKconfigMakefilestm32KconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefilevt8500KconfigMakefilezteKconfigMakefileplatformKconfigMakefilechromeKconfigMakefilegoldfishKconfigMakefilemellanoxKconfigMakefilemipsKconfigMakefileolpcMakefilex86KconfigMakefileamdKconfigMakefilepmfKconfigMakefiledell-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.h8139cp.h8139too8139too.h8129.ha64fxdiag.hacpiacpi.hac.hapeiapei.heinj.hghes.hmemoryfailure.hpcieaer.hsea.hapmt.hbattery.hbutton.hccarequired.hcontainer.hcppccpufreq.hlib.hfan.hffh.hfpdt.hgenericgsi.hgtdt.hhed.hhmat.hhotplugcpu.hmemory.hi2copregion.hiort.hipmi.hmcfg.hnfit.hnuma.hpcislot.hpptt.hprmt.hprocessorprocessor.hidle.hreducedhardwareonly.hspcrtable.htableupgrade.hthermal.hvideo.hadvisesyscalls.hahcixgene.haio.halim7101wdt.hallowdevcoredump.halx.hamdphy.hxgbe.hampereerratumac03cpu38.haperturehelpers.haquantiaphy.harchbcmiproc.hdmaaddrt64bit.henablehugepagemigration.hmemoryhotplug.hhotremove.hhasacpitableupgrade.hcachelinesize.hdebugvirtual.hdevmemisallowed.hdmaprepcoherent.helfrandomize.hfastmultiplier.hfortifysource.hgcovprofileall.hgiganticpage.hkcov.hmembarriersynccore.hnonoverlappingaddressspace.hpmemapi.hptespecial.hresetcontroller.hsetdirectmap.hmemory.hsetupdmaops.hsgchain.hstrictkernelrwx.hmodulerwx.hsyncdmaforcpu.hdevice.hsyscallwrapper.htickbroadcast.huaccessflushcache.hubsansanitizeall.hhavenmisafecmpxchg.hhibernationheader.hpossible.hhisi.hinlinereadlocklock.hbh.hirq.hirqsave.hunlockunlock.hbh.hirq.hirqrestore.hspinlocklock.hbh.hirq.hirqsave.htrylocktrylock.hbh.hunlockunlock.hbh.hirq.hirqrestore.hwritelocklock.hbh.hirq.hirqsave.hunlockunlock.hbh.hirq.hirqrestore.hkeepmemblock.hmmaprndbitsbits.hmax.hmin.hcompatbitsmax.hmin.hprockcoretext.hqcom.hrandom.hseattle.hselectmemorymodel.hsparsememdefault.henable.hsupportsacpi.hatomicrmw.hdebugpagealloc.hint128.hmemoryfailure.hnumabalancing.huprobes.hsuspendpossible.htegra.hthunder.hthunder2.husecmpxchglockref.hqueuedrwlocks.hspinlocks.hvexpress.hwantdefaultbpfjit.hframepointers.hxgene.harmamba.harchtimertimer.hevtstream.hoolworkaround.hccn.hcmn.hcpuidle.hdmc620pmu.hgicgic.hmaxnr.hv2m.hv3v3.hitsits.hpci.hmhu.hpmupmu.hacpi.hpscifw.hsbsawatchdog.hscpicpufreq.hpowerdomain.hprotocol.hsdeinterface.hsmcccsocid.hsmmusmmu.hv3.hsp805watchdog.hspepmu.htegra20cpufreq.htimersp804.harm64arm64.h64kpages.hacpiparkingprotocol.hamuextn.hcnp.hcontshift.hcrypto.he0pd.herratum1024718.h1165522.h1286807.h1319367.h1463225.h1508412.h1530923.h1542419.h819472.h824069.h826319.h827319.h832075.h834220.h843419.h858921.hhwafdbm.hlseatomics.hmoduleplts.hpabitsbits.h52.hpageshift.hpan.hpmem.hpseudonmi.hrasextn.hsve.htlbrange.huao.hvabitsbits.h48.hvhe.hworkaroundcleancache.hrepeattlbi.hspeculativeat.hashasarmv84.hasn1.hassociativearray.hasymmetrickeytype.hpublickeysubtype.hasynccore.hmemcpy.hpq.hraid6recov.htest.htxdma.hxor.hataata.hacpi.hbmdma.hgeneric.hpiix.hsff.hverboseerror.hatl1.hatl1c.hatl1e.hatmatm.hbr2684.hclip.hlane.hatomic64selftest.hauditaudit.harchcompatgeneric.hgeneric.hauditsyscall.hauto.confauto.conf.cmdautofsfs.hautofs4fs.hauxiliarybus.hbacklightclassdevice.hgpio.hlcdsupport.hlp855x.hpwm.hballooncompaction.hbareudp.hbasefull.hsmall.hbcmnetphylib.hnsthermal.hsrthermal.hbcm7xxxphy.hbcm87xxphy.hbcmabcma.hdrivergmaccmn.hgpio.hpci.hhostpcipci.hpossible.hpossible.hbe2iscsi.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.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.hblock.hbnx2.hbnx2xbnx2x.hsriov.hbnxtbnxt.hdcb.hfloweroffload.hhwmon.hsriov.hbonding.hbootprintkdelay.hbootparamhungtaskpanicvalue.hsoftlockuppanicvalue.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.hbtree.hbtt.hbugbug.hondatacorruption.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.hcaviumcpt.herratum22375.h23144.h23154.h27456.h30115.hptp.htx2erratum219.hcb710core.hdebugassumptions.hcccanlink.hhaskasangeneric.hsancovtracepc.hstackprotectornone.hworkingnosanitizeaddress.hisgcc.hoptimizeforperformance.hcdromcdrom.hpktcdvdpktcdvd.hbuffers.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.hchromeplatforms.hcicadaphy.hcifscifs.hallowinsecurelegacy.hdebug.hdfsupcall.hposix.hsmbdirect.hupcall.hweakpwhash.hxattr.hclangversion.hcleancache.hclkbcmns2.hsr.hsp810.hvexpressosc.hclkdevlookup.hclksrcmmio.hclonebackwards.hclsu32mark.hperf.hclztab.hcmdlinecmdline.hkunittest.hcommonclkclk.hhi3516cv300.hhi3519.hhi3660.hhi3798cv200.hiproc.hscpi.hversatile.hxgene.hresethi6220.hcompaction.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.hgovmenu.hmultipledrivers.hisolation.hpm.hrmap.hcpumaskoffstack.hcpusets.hcramfscramfs.hblockdev.hcrashcore.hdump.hcrcccitt.hitut.ht10dif.hcrc16.hcrc32crc32.hsliceby8.hcrc7.hcrc8.hcrossmemoryattach.hcryptocrypto.hacomp2.haead.haead2.haesaes.harm64arm64.hbs.hcece.hblk.hccm.hneonblk.hakcipher.hakcipher2.halgapi.halgapi2.hansicprng.hanubis.harc4.hauthenc.hblkcipher.hblkcipher2.hblowfishblowfish.hcommon.hcamellia.hcastcommon.hcast5.hcast6.hcbc.hccm.hcfb.hchacha20chacha20.hneon.hchacha20poly1305.hcmac.hcrc32.hcrc32c.hcrct10difcrct10dif.harm64ce.hcryptd.hctr.hcts.hdeflate.hdes.hdevbcmspu.hcaviumzip.hccpccp.hcrypto.hdd.hchelsio.hcpt.hnitroxnitrox.hcnn55xx.hspccp.hdrbgdrbg.hctr.hhash.hhmac.hmenu.hecb.hechainiv.hessiv.hfcrypt.hfipsfips.hname.hgcm.hgf128mul.hghashghash.harm64ce.hhashhash.hinfo.hhash2.hhmac.hhw.hjitterentropy.hkhazad.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.hsha1sha1.harm64ce.hsha2arm64ce.hsha256sha256.harm64.hsha3.hsha512.hsimd.htea.htest.htgr192.htwofishtwofish.hcommon.huseruser.hapiapi.haead.hhash.hrng.hskcipher.hvmac.hworkqueue.hwp512.hxcbc.hxts.hcuse.hcyclades.hdamondamon.hdbgfs.hpaddr.hreclaim.hvaddr.hdavicomphy.hdaxdax.hdriver.hdcachewordaccess.hdcb.hdebugbugverbose.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hlist.hmemoryinit.hsectionmismatch.hshirq.hdecompressbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hdefaultcubic.hfqcodel.hhostname.hhungtasktimeout.hmmapminaddr.hnetsch.hsecurityselinux.htcpcong.hdetecthungtask.hdevdaxdax.hhmemhmem.hdevices.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.hdmaacpi.hcoherentpool.hdirectremap.hengineengine.hraid.hnoncoherentmmap.hof.hops.hremap.hsharedbuffer.hdmadevices.hdmatest.hdmidmi.hsysfs.hdmiid.hdnet.hdnotify.hdnsresolver.hdp83640phy.hdp83822phy.hdp83848phy.hdp83867phy.hdp83tc811phy.hdql.hdrmdrm.hamdacp.hdcdc.hdcn.hamdgpuamdgpu.hcik.hast.hbochs.hbridge.hbuddy.hcirrusqemu.hdisplaydphelper.hhdcphelper.hhdmihelper.hhelper.hdpauxchardev.hexportfortests.hfbdevemulation.hoveralloc.hgemshmemhelper.hhisihibmc.hi2cch7006.hkmshelper.hkunittesttest.hhelpers.hlibrandom.hloadedidfirmware.hmgag200.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvirtiogpu.hvkms.hvramhelper.hdstcache.hdtidlestates.hdtc.hdummydummy.hconsoleconsole.hcolumns.hrows.hdwdmacdmac.hcore.hpci.hdwmacdwcqoseth.hdynamicdebug.hftrace.he1000e.hedacedac.hbluefield.hghes.hlegacysysfs.hsupport.hthunderx.hxgene.heeprom93cx6.hat24.hee1004.hlegacy.hmax6875.hefiefi.harmstub.hesrt.hparamsfromfdt.hpartition.hruntimewrappers.hsoftreserve.hstub.hvarsvars.hpstorepstore.hdefaultdisable.hefivarfs.helfcore.helfcore.henaethernet.henablemustcheck.henclosureservices.hencryptedkeys.henergymodel.hepoll.hethernet.hethoc.hethtoolnetlink.heventtracing.heventfd.hexclusivesystemram.hexportfsexportfs.hblockops.hext4fsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextconextcon.hgpio.hextrafirmware.hfailover.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.hfbfb.hbacklight.hcfbcopyarea.hfillrect.himageblit.hcmdline.hdeferredio.hefi.hhyperv.hnotify.hsimple.hssd1307.hsyscopyarea.hfillrect.hfops.himageblit.htileblitting.hfcappid.hfhandle.hfibrules.hfilelocking.hfipssignatureselftest.hfixearlyconmem.hfixedphy.hfm10k.hfmcfmc.hchardev.hfakedev.htrivial.hwriteeeprom.hfont8x16.h8x8.hsupport.hforcemaxzoneorder.hfortifysource.hframepointer.hwarn.hframebufferconsoleconsole.hdeferredtakeover.hdetectprimary.hrotation.hfreezer.hfrontswap.hfsdax.hiomap.hmbcache.hposixacl.hfscachefscache.hstats.hfslerratuma008585.hfsnotify.hftraceftrace.hmcountrecord.hsyscalls.hfujitsuerratum010001.hfunctiongraphtracer.htracer.hfusefs.hfusionfusion.hlogging.hmaxsge.hsas.hspi.hfutexfutex.hpi.hfwcfgsysfs.hloaderloader.hsysfs.huserhelper.hgactprob.hgarp.hgccversion.hgenericallocator.harchnuma.htopology.hbugbug.hrelativepointers.hcalibratedelay.hclockeventsclockevents.hbroadcast.hcpuautoprobe.hvulnerabilities.hcsum.hearlyioremap.hgettimeofday.hhweight.hidlepollsetup.hirqchip.heffectiveaffmask.hinjection.hipi.hmigration.hprobe.hshowshow.hlevel.hmsiirqirq.hdomain.hnetutils.hpciiomap.hphy.hpinconf.hschedclock.hsmpidlethread.hstrncpyfromuser.hstrnlenuser.htimevsyscall.htracer.hvdsotimens.hgeneve.hglob.hgpioacpi.hamdpt.hdwapb.hgenericgeneric.hplatform.hmlxbf2.hpl061.hsysfs.htegra.hwatchdog.hxgenexgene.hsb.hxlp.hgpiolibgpiolib.hfastpathlimit.hirqchip.hgraceperiod.hgrocells.hgve.hhandledomainirq.hhardenel2vectors.hhardenedusercopyusercopy.hfallback.hhardirqsswresend.hhasdma.hiomem.hioportmap.hhashkunittest.hhaveacpiapei.halignedstructpage.harchauditsyscall.hbitreverse.hcompilerh.hhugevmap.hjumplabel.hkasankasan.hswtags.hvmalloc.hkgdb.hmmaprndbits.hpfnvalid.hseccompfilter.hthreadstructwhitelist.htracehook.htransparenthugepage.hvmapstack.harmsmcccsmccc.hdiscovery.hcrecordmcount.hclkclk.hprepare.hcmpxchgdouble.hlocal.hcontexttracking.hdebugbugverbose.hkmemleak.hdmacontiguous.hdynamicftrace.hebpfjit.hefficientunalignedaccess.hfastgup.hftracemcountrecord.hfunctiongraphtracer.htracer.hfutexcmpxchg.hgccplugins.hgenericdmacoherent.hvdso.hhardenedusercopyallocator.hhwbreakpoint.hirqtimeaccounting.hkprobes.hkretprobes.hkvmarchtlbflushall.hcpurelaxintercept.heventfd.hirqbypass.hrouting.hirqchip.hirqfd.hmsi.hvcpurunpidchange.hmemorypresent.hmodarchspecific.hnetdsa.hnmi.hpataplatform.hperfevents.hregs.huserstackdump.hregsandstackaccessapi.hrseq.hschedavgirq.hsetuppercpuarea.hstackprotector.hsyscalltracepoints.hvirtcpuaccountinggen.hhdlchdlc.hcisco.hfr.hppp.hraw.hhdmi.hheaderscheck.hhi3660mbox.hhi6220mbox.hhibernatecallbacks.hhibernation.hhidhid.ha4tech.hacrux.happle.happleir.haureal.hbatterystrength.hbelkin.hbetopff.hcherry.hchicony.hcorsair.hcypress.hdragonrise.helan.helecom.helo.hezkey.hgembird.hgeneric.hgfrm.hgreenasia.hgt683r.hgyration.hholtek.hhypervmouse.hicade.hite.hjabra.hkensington.hkeytouch.hkye.hlcpower.hled.hlenovo.hlogitechlogitech.hdj.hhidpp.hmagicmouse.hmicrosoft.hmonterey.hmultitouch.hnti.hntrig.hortek.hpantherlord.hpenmount.hpetalynx.hpicolcdpicolcd.hbacklight.hfb.hlcd.hleds.hpid.hplantronics.hprimax.hrmi.hroccat.hsaitek.hsamsung.hsensorhub.hsmartjoyplus.hsony.hspeedlink.hsteelseries.hsunplus.hthingm.hthrustmaster.htivo.htopseed.htwinhan.huclogic.hwacom.hwaltop.hwiimote.hxinmo.hzeroplus.hzydacron.hhidraw.hhighrestimers.hhinic.hhisipmu.hthermal.hhisiliconerratum161010101.h161600802.hirqmbigen.hlpc.hhisttriggers.hhmemreporting.hhnshns.hdsaf.henet.hmdio.hhns3hns3.hdcb.henet.hhclge.hhclgevf.hholesinzone.hhotplugcpu.hpcipci.hacpiacpi.hibm.hpcie.hhpilo.hwatchdog.hhugetlbpage.hhugetlbfs.hhvcdriver.hhwconsole.hperfevents.hrandomrandom.hcavium.hhisi.htimeriomem.htpm.hvirtio.hxgene.hhwlattracer.hhwmon.hhwpoisoninject.hhwspinlock.hhypervhyperv.hkeyboard.hnet.hstorage.hutils.hvsockets.hhzhz.h100.hi2ci2c.halgobit.halgopca.halgopcf.harbgpiochallenge.hboardinfo.hchardev.hcompat.hdesignwarecore.hplatform.hdiolanu2c.hgpio.hhidhid.hacpi.hcore.hmlxbf.hmuxmux.hgpio.hmlxcpld.hpca9541.hpca954x.hpinctrl.hnforce2.hparportlight.hpcaplatform.hqup.hsimtec.hslaveslave.heeprom.hsmbus.hstub.hthunderx.htinyusb.hversatile.hxgeneslimpro.hxlp9xx.hi40e.hi40evf.hi6300esbwdt.hiavf.hiceice.hswitchdev.hicplusphy.hidlepagetracking.hidpf.hifb.hifcvf.higbigb.hhwmon.higbvf.higc.hikheaders.hillegalpointervalue.hindirectpio.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.hefa.hipoibipoib.hcm.hdebug.hirdma.hiser.hisert.hondemandpaging.hqedr.hsrp.hsrpt.huseraccess.hmad.hmem.hvirtdma.hinitenvarglimit.hinitramfssource.hinlinereadlocklock.hbh.hirq.hirqsave.hunlockunlock.hbh.hirq.hirqrestore.hspinlocklock.hbh.hirq.hirqsave.htrylocktrylock.hbh.hunlockbh.hirq.hirqrestore.hwritelocklock.hbh.hirq.hirqsave.hunlockunlock.hbh.hirq.hirqrestore.hinotifyuser.hinputinput.hevdev.hffmemless.hkeyboard.hleds.hmouse.hmousedevmousedev.hscreenx.hy.hpolldev.hsparsekmap.hintelxwayphy.hintervaltree.hiommuapi.hdefaultdmastrict.hdma.hiopgtablepgtable.hlpae.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.hipmbdeviceinterface.hipmideviceinterface.hdmidecode.hhandler.hpanicevent.hstring.hplatdata.hpoweroff.hsi.hssif.hwatchdog.hipv6ipv6.hgre.hmip6.hmroutemroute.hmultipletables.hmultipletables.hndiscnodetype.hoptimisticdad.hpimsmv2.hrouteinfo.hrouterpref.hsitsit.h6rd.htunnel.hvti.hipvlan.hipvtap.hirqbypassmanager.hdomaindomain.hhierarchy.hforcedthreading.hmsiiommu.hpoll.hwork.hirqchip.hiscsibootsysfs.htargettarget.hcxgb4.htcp.hiso9660fs.hixgbeixgbe.hdcb.hhwmon.hipsec.hixgbevfixgbevf.hipsec.hjbd2.hjoliet.hjumplabel.hkallsymskallsyms.hall.hbaserelative.hkdbcontinuecatastrophic.hdefaultenable.hkeyboard.hkernelkernel.releasemodeneon.hkernfs.hkexeckexec.hcore.hfile.hkeyboardatkbd.hkeys.hkgdbkgdb.hhonourblocklist.hkdb.hserialconsole.htests.hkprobeevents.hkprobes.hkretprobes.hksm.hkunitkunit.halltests.hdebugfs.hexampletest.htest.hkvmkvm.harmpmu.hgenericdirtylogreadprotect.hindirectvectors.hmmio.hvfio.hl2tpl2tp.hdebugfs.heth.hip.hv3.hlcdclassdevice.hplatform.hledtriggerphy.hledsblinkm.hbrightnesshwchanged.hclassclass.hflash.hlm3530.hlp3944.hlp5521.hlp5523.hlp5562.hlp55xxcommon.hlt3593.hmlxreg.htriggerbacklight.hcamera.hdefaulton.hdisk.hgpio.hheartbeat.honeshot.htimer.htransient.htriggers.hlibcrc32c.hlibfc.hlibfcoe.hlibfdt.hlibnvdimm.hlinearrangesranges.hkunittest.hliquidioliquidio.hvf.hlistkunittest.hllc.hlocalversion.hlockdebuggingsupport.hspinonowner.htorturetest.hlockdlockd.hv4.hlockdepsupport.hlockupdetector.hlogbufshift.hcpumaxbufshift.hlogitechff.hlogologo.hlinuxclut224.hloopbacktarget.hlsiet1011cphy.hlsmlsm.hmmapminaddr.hlwtunnellwtunnel.hbpf.hlxtphy.hlz4decompress.hlzocompress.hdecompress.hmacsec.hmacvlan.hmacvtap.hmagicsysrqsysrq.hdefaultenable.hserial.hmailbox.hmarvell10gphy.hphy.hmaxrawdevs.hmaxlineargphy.hmdmd.hautodetect.hcluster.hfaulty.hlinear.hraid0.hraid1.hraid10.hraid456.hmdiomdio.hbcmunimac.hbitbang.hbus.hcavium.hdevice.hgpio.hhisifemac.hmsccmiim.hocteon.hthunder.hxgene.hmegaraidsas.hmellanoxplatform.hmembarrier.hmemcgmemcg.hkmem.hswap.hmemcpykunittest.hmemfdcreate.hmemoryballoon.hfailure.hhotplug.hhotremove.hisolation.hmemregion.hmemstickmemstick.hjmicron38x.hr592.htifmms.hmessagelogleveldefault.hmfdcore.hsyscon.hmhibusbus.hpcigeneric.hmicrelks8995ma.hphy.hmicrochipphy.ht1phy.hmicrosemiphy.hmigration.hmii.hmiscfilesystems.hmitigatespectrebranchhistory.hmlxwdt.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.hmlxbfbootctl.hgige.hpmc.htmfifo.hmlxfw.hmlxreghotplug.hio.hmlxswcorecore.hhwmon.hthermal.hi2c.hminimal.hpci.hspectrumspectrum.hdcb.hswitchib.hswitchx2.hmmcmmc.harmmmci.hblockblock.hminors.hcb710.hcqhci.hdwdw.hbluefield.hpltfm.hmtk.hricohmmc.hsdhcisdhci.hacpi.hioaccessors.hiproc.hpci.hpltfm.htifmsd.htoshibapci.hushc.hviasdmmc.hvub300.hmmummu.hgatherrcutablefree.htablefree.hnotifier.hmoduleforceload.hsigsig.hall.hformat.hhash.hkey.hsha256.hsrcversionall.hunload.hmodulesmodules.htreelookup.huseelfrela.hmodversions.hmouseelani2ci2c.hi2c.hsmbus.hsynapticsi2c.husb.hmpilib.hmplsmpls.hiptunnel.hrouting.hmptcpmptcp.hipv6.hkunittest.hmqioscheddeadline.hkyber.hmrp.hmsdosfs.hpartition.hmsproblock.hmtdmtd.hblkdevs.hblock.hcficfi.hamdstd.hi1.hi2.hintelext.hstaa.hutil.hgenprobe.hmapbankwidth1.h2.h4.hofparts.hphysmapphysmap.hof.hubiubi.hbeblimit.hwlthreshold.hmultiuser.hmutexspinonowner.hngsm.hhdlc.hnamespaces.hnationalphy.hndblk.hbtt.hclaim.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.hamd.haquantia.hatheros.hbroadcom.hcavium.hchelsio.hgoogle.hhisilicon.hhuawei.hintel.hmellanox.hmicrosoft.hmyri.hnetronome.hoki.hpensando.hqlogic.hqualcomm.hrealtek.hrocker.hsmsc.hsolarflare.hstmicro.hvrf.hxgenexgene.hv2.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.hnitroenclaves.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.hnohzhz.hcommon.hfull.hnodesshift.hnoptracer.hnouveaudebugdebug.hdefault.hplatformdriver.hnrcpus.hnumanuma.hbalancingbalancing.hdefaultenabled.hkeepmeminfo.hnvdimmkeys.hnvidiacarmelcnperratum.hnvmecore.hfabrics.hfc.hmultipath.hrdma.htargettarget.hfc.hfcloop.hloop.hrdma.htcp.htcp.hverboseerrors.hnvmem.hobjagg.hofof.haddress.hdynamic.hearlyflattree.hflattree.hgpio.hiommu.hirq.hkobj.hmdio.hnet.hnuma.hoverlay.hpmem.hreservedmem.hresolve.hoidregistry.hopenvswitchopenvswitch.hgeneve.hgre.hvxlan.hosnoisetracer.hoverlayfs.hpacketpacket.hdiag.hpadata.hpagecounter.hextension.howner.hpoisoning.hpool.hreporting.hpaniconoopsoops.hvalue.htimeout.hparavirtparavirt.htimeaccounting.hparman.hpartitionadvanced.hpercpu.hpcc.hpcipci.hats.hdomainsdomains.hgeneric.hecam.hhisi.hhostcommon.hgeneric.hthunderecam.hpem.hhypervhyperv.hinterface.hiov.hlabel.hmsimsi.hirqdomain.hpasid.hpri.hquirks.hstub.hsyscall.hxgenexgene.hmsi.hpciedpc.hdwdw.hhost.hecrc.hedr.hiprociproc.hmsi.hplatform.hpme.hpcieaerpcieaer.hinject.hpcieaspmpcieaspm.hdefault.hpcieportbus.hpcipcwatchdog.hpcsxpcs.hperfevents.hpersistentkeyrings.hpgtablelevels.hphybrcmsata.hhi6220usb.hns2usbdrd.hxgene.hphylib.hphylink.hphysaddrt64bit.hpidns.hpinconf.hpinctrlpinctrl.hiprocgpio.hmsm.hqdf2xxx.htegraxusb.hpinmux.hpkcs7messageparser.hpldmfw.hpluginhostcc.hpmpm.hclk.hdebug.hgenericdomainsdomains.hof.hsleep.hsleepsleep.hdebug.hsmp.hstdpartition.hpmbus.hpnfsblock.hfilelayout.hflexfilelayout.hpnppnp.hdebugmessages.hpnpacpi.hposixmqueuemqueue.hsysctl.htimers.hpowerresetreset.hgpiogpio.hrestart.hhisi.hrestart.hsyscon.hvexpress.hsupply.hpppppp.hasync.hbsdcomp.hdeflate.hfilter.hmppe.hmultilink.hsynctty.hpppoatm.hpppoe.hpppol2tp.hppspps.hclientgpio.hldisc.hpptp.hpreemptnotifiers.hvoluntary.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hvmcorevmcore.hdevicedump.hprofiling.hpsample.hpsipsi.hdefaultdisabled.hpstorepstore.hcompresscompress.hdefault.hdeflatecompresscompress.hdefault.hram.hptp1588clock.hpwmpwm.hbcmiproc.hsysfs.hqcomemac.hfalkorerratum1003.h1009.he1041.hhidmahidma.hmgmt.hirqcombiner.hl2pmu.hl3pmu.hqdf2400erratum0065.hqedqed.hfcoe.hiscsi.hll2.hooo.hrdma.hsriov.hqede.hqedf.hqedi.hqfmtv2.hqla3xxx.hqsemiphy.hqueuedrwlocks.hspinlocks.hquotaquota.hnetlinkinterface.htree.hquotactl.hr8169.hraidattrs.hraid6pqpq.hbenchmark.hrandomizebase.hmoduleregionfull.hras.hrationalrational.hkunittest.hrawdriver.hrcucpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.hrdbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hrdmarxe.hsiw.hrealtekautopm.hphy.hreedsolomonsolomon.hdec8.henc8.hrefcountfull.hregmapregmap.hi2c.hmmio.hspi.hrelay.hrelocatable.hrenesasphy.hresetcontroller.hhisi.hresourcekunittest.hrfkillrfkill.hgpio.hinput.hleds.hrfsaccel.hrhkabisizealignchecks.hrheldifferences.hringbufferbuffer.hbenchmark.hrmi42dsensor.hcore.hf03f03.hserio.hf11.hf12.hf30.hf34.hf3a.hf55.hi2c.hsmb.hspi.hrockchipphy.hrocker.hrodatafulldefaultenabled.hrpcsecgsskrb5.hrps.hrseq.hrtgroupsched.hmutexes.hrtcclass.hdrvabb5zes3.habx80x.hbq32k.hbq4802.hds1286.hds1305.hds1307.hds1343.hds1347.hds1374ds1374.hwdt.hds1390.hds1511.hds1553.hds1672.hds1685ds1685.hfamily.hds1742.hds2404.hds3232ds3232.hhwmon.hefi.hem3027.hfm3130.hisl12022.hisl1208.hm41t80m41t80.hwdt.hm41t93.hm41t94.hm48t35.hm48t59.hmax6900.hmax6902.hmcp795.hmsm6242.hpcf2123.hpcf2127.hpcf85063.hpcf8523.hpcf8563.hpcf8583.hpl031.hr9701.hrp5c01.hrs5c348.hrs5c372.hrv3029c2.hrx4581.hrx8010.hrx8025.hrx8581.hstk17ta8.hv3020.hx1205.hds1685sysfsregs.hhctosyshctosys.hdevice.hi2candspi.hintfdev.hproc.hsysfs.hliblib.hkunittest.hnvmem.hruntimetestingmenu.hrwsemspinonowner.hsamples.hsataahciahci.hplatform.hseattle.hhost.hmobilelpmpolicy.hpmp.hsbitmap.hscftorturetest.hschedautogroup.hcluster.hdebug.hhrtick.hinfo.hmc.hsmt.htracer.hschedstats.hscsiscsi.hchelsiofcoe.hconstants.hcxgb4iscsi.hdebug.hdhdh.halua.hemc.hhpsw.hrdac.hdma.henclosure.hfcattrs.hhisisassas.hpci.hhpsa.hipripr.hdump.htrace.hiscsiattrs.hlogging.hlowlevel.hlpfc.hmod.hmpi3mr.hmpt2sasmaxsge.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.hsensorsacpipower.had7314.hadc128d818.hadcxx.hads7871.harmscpi.hg762.hjc42.hlm70.hltc2945.hltc3815.hltc4222.hltc4260.hmax1111.hmax20751.hmax31790.hmlxregfan.hnct7802.hnct7904.hntcthermistor.hpowr1220.hpwmfan.hshtc1.htc74.htmp103.htps40422.hvexpress.hxgene.hserial82508250.hconsole.hdma.hdw.hdwlib.hexar.hextended.hfsl.hmanyports.hnruarts.hpci.hpnp.hrsa.hrt288x.hruntimeuarts.hshareirq.htegra.hambapl011pl011.hconsole.hcorecore.hconsole.hearlyconearlycon.harmsemihost.hnonstandard.hofplatform.hserioserio.halteraps2.hambakmi.harcps2.hlibps2.hraw.hserport.hsgpool.hsglalloc.hshmem.hshufflepageallocator.hsignalfd.hsignedpefileverification.hskbextensions.hslabfreelisthardened.hrandom.hslhc.hslipslip.hcompressed.hsmart.hslubslub.hcpupartial.hdebug.hkunittest.hsmc91x.hsmp.hsmscphy.hsocbus.htegrafuse.hsockcgroupdata.hvalidatexmit.hsoftwatchdog.hsoftlockupdetector.hsonyff.hsound.hsparseirq.hsparsememsparsemem.hextreme.hmanual.hvmemmapvmemmap.henable.hspispi.hcadence.hdesignware.hdwmmio.hmaster.hpl022.hqup.hxlp.hsplitptlockcpus.hsquashfssquashfs.hdecompmultipercpu.hfiledirect.hfragmentcachesize.hlz4.hlzo.hxattr.hxz.hzlib.hsrcu.hssbpossible.hstacktracer.hstackdepot.hstackinitkunittest.hstackprotectorstackprotector.hstrong.hstacktracestacktrace.hsupport.hstandalone.hste10xp.hstmmaceth.hplatform.hstp.hstreamparser.hstrictkernelrwx.hmodulerwx.hstripasmsyms.hstubclkhi3660.hsunrpcsunrpc.hbackchannel.hdebug.hgss.hxprtrdma.hsuspendsuspend.hfreezer.hswap.hswiotlb.hswphy.hsymbolicerrname.hsyncookies.hsyncfile.hsynclinkgt.hsynclinkmp.hsyssupportshugetlbfs.hsysctlsysctl.hexceptiontrace.hkunittest.hsysfssysfs.hsyscall.hsystemdataverification.htrustedkeyring.hkeys.hsysvipcsysvipc.hsysctl.htap.htargetcore.htaskdelayacct.hioaccounting.hxacct.htasksrcugeneric.hrudercu.htracercu.htaskstats.htcgatmel.hcrb.htistis.hcore.hspi.htpm.htcmfileio.hiblock.hpscsi.huser2.htcpcongadvanced.hbbr.hbic.hcubic.hdctcp.hhstcp.hhtcp.hhybla.hillinois.hlp.hnv.hscalable.hvegas.hveno.hwestwood.hyeah.hmd5sig.htee.htegraahb.hteraneticsphy.htestbpf.hkstrtox.hlistsort.hvmalloc.htextsearchtextsearch.hbm.hfsm.hkmp.hthermalthermal.hdefaultgovstepwise.hemergencypoweroffdelayms.hgovfairshare.hstepwise.huserspace.hhwmon.hthreadinfointask.hthundernicbgx.hpf.hrgx.hvf.hthunderx2pmu.htickoneshot.htifmcore.htigon3tigon3.hhwmon.htimekunittest.hns.htimeracpi.hof.hprobe.htimerfd.htimerlattracer.htipctipc.hcrypto.hdiag.hmediaib.hudp.htlstls.hdevice.htmpfstmpfs.hposixacl.hxattr.htorturetest.htraceclock.hirqflagssupport.htracepoints.htracermaxtrace.hsnapshot.htracingtracing.hmap.hsupport.htransparenthugepagehugepage.halways.htreercu.hsrcu.htristate.conftrustedkeys.htty.htun.htypectypec.hdpaltmode.hfusb302.hmuxpi3usb30532.hrt1711h.htcpci.htcpm.htps6598x.hucsi.hucs2string.hucsiacpi.hudffs.hueficpercper.harm.huhid.huiouio.haec.hcif.hhvgeneric.hpcigeneric.hpdrvgenirq.hsercos3.hunixunix.hdiag.hscm.hunix98ptys.hunmapkernelatel0.huprobeevents.huprobes.husbusb.hacm.hadutux.halim5632.han2720.hannouncenewdevices.happledisplay.harchhashcd.harmlinux.hatm.hautosuspenddelay.hbelkin.hcatc.hchaoskey.hcommon.hcxacru.hdefaultpersist.hehcihcdhcd.hplatform.hpci.hroothubtt.httnewsched.hemi26.hemi62.hepson2888.hezusbfx2.hhid.hhiddev.hhsicusb3503.hhso.hhwahcd.hidmouse.hiowarrior.hipheth.hisightfw.hkaweth.hkc2190.hlan78xx.hlcd.hld.hledtrig.hledstriggerusbport.hlegotower.hmdc800.hmicrotek.hmon.hnetax88179178a.hax8817x.hcdceem.hmbim.hncm.hsubsetsubset.henable.hcdcether.hch9200.hcx82310eth.hdm9601.hdrivers.hgl620a.hhuaweicdcncm.hint51x1.hkalmia.hmcs7830.hnet1080.hplusb.hqmiwwan.hrndishost.hsmsc75xx.hsmsc95xx.hsr9700.hzaurus.hohcihcdhcd.hpci.hlittleendian.hpci.hpegasus.hprinter.hroleswitch.hrtl8150.hrtl8152.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.hmos7720.hmos7840.hmxuport.hnavman.homninet.hopticon.hoption.hoti6858.hpl2303.hqcaux.hqt2.hqualcomm.hsafesafe.hpadded.hsierrawireless.hsimple.hspcp8x5.hssu100.hsymbol.hti.hupd78f0730.hvisor.hwhiteheat.hwwan.hxircom.hxsensmt.hsevseg.hsierranet.hsisusbvga.hstoragestorage.halauda.hcypressatacb.hdatafab.heneub6250.hfreecom.hisd200.hjumpshot.hkarma.honetouch.hrealtek.hsddr09.hsddr55.husbat.hsupport.htmc.huas.hueagleatm.huhcihcd.hulpibus.husbnet.hvl600.hwdm.hwusbwusb.hcbaf.hxhcihcd.hpci.hplatform.hxusbatm.husb4usb4.hnet.husbpcwatchdog.husepercpunumanodeid.huserns.huserfaultfd.hutsns.huwbuwb.hhwa.hi1480u.hwhci.hvdpavdpa.hsimsim.hblock.hnet.hveth.hvexpressconfig.hsyscfg.hvfatfs.hvfiovfio.hiommutype1.hnoiommu.hpcipci.hintx.hmmap.hvirqfd.hvgaarbarb.hmaxgpus.hvhostvhost.hiotlb.hmenu.hnet.hring.hvdpa.hvsock.hvideonomodeset.hvirtcpuaccountingaccounting.hgen.hdrivers.hvirtiovirtio.hballoon.hblk.hconsole.hfs.hinput.hmenu.hmmio.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvmapstack.hvpvdpa.hvsocketsvsockets.hdiag.hloopback.hvsockmon.hvtvt.hconsoleconsole.hsleep.hhwconsolebinding.hvxlan.hwan.hwatchdogwatchdog.hcore.hhandlebootenabled.hopentimeout.hsysfs.hwdtpci.hx509certificateparser.hxarraymulti.hxdpsocketssockets.hdiag.hxfrmxfrm.halgo.hespintcp.hinterface.hipcomp.hmigrate.hoffload.hstatistics.hsubpolicy.huser.hxfsfs.hposixacl.hquota.hxgenepmu.hslimprombox.hxilinxgmii2rgmii.hxorblocks.hxps.hxzdecdec.harm.harmthumb.hbcj.hia64.hpowerpc.hsparc.hx86.hzbud.hzisofs.hzlibdeflate.hinflate.hzonedma32.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.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.hvdso-offsets.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_apmt.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.hamd-pstate.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.hhci_sync.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-core.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.hnetdev_queues.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.orderbin2c.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-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.hdevicetable-offsets.selfconfig.hempty.cfile2alias.cmk_elfconfigmk_elfconfig.cmodpostmodpost.cmodpost.hmodules.ordersumversion.cmodule-common.ldsmodules.ordernamespace.plobjdiffpackageMakefilebuilddebbuildtarmkdebianmkspecsnapcraft.templateparse-maintainers.plpatch-kernelpnmtologopnmtologo.cprofile2linkerlist.plprune-kernelrecordmcountrecordmcount.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-hotplugMakefilemmMakefilemountMakefilemqueueMakefilenetMakefileforwardingMakefilemptcpMakefilenetfilterMakefilensfsMakefilepowerpcMakefilealignmentMakefilebenchmarksMakefilecache_shapeMakefilecopyloopsMakefiledscrMakefileeehMakefilemathMakefilemceMakefilemmMakefilepapr_attributesMakefilepmuMakefileebbMakefilesampling_testsMakefileprimitivesMakefileptraceMakefilesignalMakefilestringloopsMakefileswitch_endianMakefilesyscallsMakefiletmMakefilevphnMakefileprctlMakefileprocMakefilepstoreMakefileptpMakefileptraceMakefilercutortureMakefileformalsrcu-cbmcMakefiletestsstore_bufferingMakefilerseqMakefilertcMakefileseccompMakefilesgxMakefilesigaltstackMakefilesizeMakefilesparc64MakefiledriversMakefilespliceMakefilestatic_keysMakefilesyncMakefilesysctlMakefiletc-testingMakefiletdxMakefiletimensMakefiletimersMakefiletpm2MakefileueventMakefileuserMakefilevDSOMakefilewatchdogMakefilex86MakefilezramMakefilevsockMakefilethermaltmonMakefileusbMakefileffs-aio-examplemultibuffhost_appMakefilesimplehost_appMakefileusbipMakefile.amlibsrcMakefile.amsrcMakefile.amvirtioMakefileringtestMakefilevhost_testMakefilevirtio-traceMakefilevmMakefilewmiMakefileusrKconfigMakefilevirtMakefilekvmKconfigMakefile.kvmlibKconfigMakefilevmlinux.hvmlinux.id/usr/src/kernels//usr/src/kernels/4.18.0-553.5.1.el8.aarch64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/alpha//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/alpha/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/alpha/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/alpha/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/alpha/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/alpha/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/alpha/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/plat-eznps//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/plat-sim//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/boot/bootp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/firmware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/include//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/include/asm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/include/asm/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-actions//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-alpine//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-artpec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-at91//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-axxia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-berlin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-davinci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-dove//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-efm32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-exynos//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-gemini//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-highbank//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-hisi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-imx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-integrator//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-keystone//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-meson//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-mmp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-moxart//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-mxs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-netx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-npcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-nspire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-omap1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-omap2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-prima2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-pxa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-realview//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-rpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-spear//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-sti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-stm32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-tango//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-u300//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-ux500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-versatile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-zx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mach-zynq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/nwfpe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/plat-iop//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/plat-omap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/plat-orion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/plat-pxa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/plat-samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/plat-versatile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/probes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/vfp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/hyperv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/asm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/asm/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/asm/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/generated//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/generated/asm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/generated/uapi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/generated/uapi/asm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/uapi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/include/uapi/asm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/arm64/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/c6x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/c6x/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/c6x/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/c6x/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/c6x/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/c6x/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/c6x/platforms//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/h8300//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/h8300/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/h8300/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/h8300/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/h8300/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/h8300/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/hexagon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/hexagon/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/hexagon/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/hexagon/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/dig//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/hp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/hp/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/hp/sim//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/sn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/sn/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/uv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/68000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/amiga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/apollo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/atari//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/bvme6000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/coldfire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/fpsp040//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/hp300//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/mac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/mvme147//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/mvme16x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/q40//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/sun3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/sun3x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/microblaze/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/alchemy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/alchemy/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/ar7//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/ath25//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/ath79//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/bcm47xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/bcm63xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/bmips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/boot/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/cobalt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/dec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/dec/prom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/emma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/emma/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/emma/markeins//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/fw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/fw/arc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/fw/cfe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/fw/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/fw/sni//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/jazz//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/jz4740//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/lantiq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/lasat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/lasat/image//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson32/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson64/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/mti-malta//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/netlogic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/netlogic/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/paravirt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pic32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pic32/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pistachio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pnx833x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/ralink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/rb532//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sibyte//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sibyte/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/sni//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/txx9//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/txx9/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/vr41xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nds32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nds32/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nds32/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nds32/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nds32/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nds32/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nios2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nios2/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nios2/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nios2/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nios2/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/nios2/platform//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/openrisc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/openrisc/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/openrisc/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/openrisc/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/openrisc/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/parisc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/parisc/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/parisc/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/parisc/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/parisc/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/parisc/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/parisc/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/perf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/purgatory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/sysdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/powerpc/xmon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/riscv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/riscv/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/riscv/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/riscv/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/appldata//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/hypfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/numa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/purgatory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/scripts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/s390/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/boot/romimage//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/cchips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/drivers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/drivers/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/drivers/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/lib64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sh/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/prom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/sparc/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/um//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/um/drivers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/um/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/um/kernel/skas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/um/os-Linux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/um/scripts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/unicore32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/unicore32/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/unicore32/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/unicore32/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/unicore32/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/boot/compressed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/coco//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/coco/tdx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/entry//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/entry/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/events//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/events/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/events/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/hyperv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/ia32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/apic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/mm/pat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/atom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/efi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/geode//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/iris//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/olpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/scx200//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/sfi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/platform/uv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/purgatory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/ras//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/realmode//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/realmode/rm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/um//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/um/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/video//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/x86/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/oprofile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/platforms//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/block//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/block/partitions//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/certs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/crypto/asymmetric_keys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/crypto/async_tx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/accessibility//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/accessibility/braille//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/acpi/acpica//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/acpi/apei//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/acpi/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/acpi/dptf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/acpi/nfit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/acpi/numa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/acpi/pmic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/amba//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/android//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ata//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/atm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/auxdisplay//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/base//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/base/firmware_loader//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/base/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/base/regmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/base/test//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/bcma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/block//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/block/aoe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/block/drbd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/block/mtip32xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/block/paride//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/block/rsxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/block/xen-blkback//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/block/zram//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/bluetooth//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/bus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/bus/mhi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/bus/mhi/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/cdrom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/agp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/hw_random//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/ipmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/mwave//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/pcmcia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/tpm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/char/xillybus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/actions//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/at91//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/axis//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/axs10x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/berlin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/davinci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/h8300//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/imgtec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/imx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/ingenic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/keystone//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/loongson1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/meson//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/microchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/mmp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/mvebu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/mxs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/nxp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/pistachio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/pxa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/renesas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/sirf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/socfpga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/spear//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/sprd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/st//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/sunxi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/uniphier//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/ux500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/versatile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/zte//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clk/zynq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/clocksource//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/connector//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/counter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/cpufreq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/cpuidle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/cpuidle/governors//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/amcc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/axis//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/caam//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/cavium//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/ccp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/ccree//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/chelsio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/marvell//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/nx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/qce//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/stm32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/ux500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/virtio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/crypto/vmx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dax/hmem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dax/pmem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dca//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/devfreq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/devfreq/event//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma-buf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/bestcomm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/dw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/hsu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/idxd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/ioat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/ipu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/ptdma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/sh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/dma/xilinx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/edac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/eisa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/extcon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firewire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/broadcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/cirrus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/efi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/efi/test//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/google//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/meson//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/psci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/smccc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/firmware/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/fmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/fpga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/fsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/display//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/host1x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/gpu/vga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hid/surface-hid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hid/usbhid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hsi/clients//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hsi/controllers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hwmon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hwspinlock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hwtracing//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/hwtracing/stm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/i2c/algos//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/i2c/busses//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/i2c/muxes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ide//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/idle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/accel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/adc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/afe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/amplifiers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/buffer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/chemical//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/counter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/dac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/dummy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/frequency//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/gyro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/health//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/humidity//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/imu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/light//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/magnetometer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/multiplexer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/orientation//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/potentiometer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/potentiostat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/pressure//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/proximity//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/resolver//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/temperature//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/test//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iio/trigger//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/sw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/ulp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/gameport//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/joystick//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/keyboard//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/misc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/mouse//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/rmi4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/serio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/tablet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/input/touchscreen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iommu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iommu/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iommu/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/iommu/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ipack//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ipack/carriers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ipack/devices//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/irqchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/capi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/divert//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/gigaset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/hardware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/hisax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/hysdn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/i4l//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/isdn/mISDN//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/leds//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/leds/trigger//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/lightnvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/macintosh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/macintosh/ams//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mailbox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mcb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/md//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/md/bcache//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/md/persistent-data//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/cec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/common/b2c2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/common/saa7146//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/common/siano//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/dvb-core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/firewire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/mmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/mmc/siano//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/cx18//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/cx88//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/mantis//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/meye//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/ngene//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/pt1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/pt3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/tw68//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/am437x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/atmel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/cadence//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/coda//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/davinci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/meson//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/omap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/sti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/stm32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/vimc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/vivid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/radio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/radio/si470x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/radio/si4713//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/rc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/tuners//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/airspy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/as102//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/au0828//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/go7007//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/gspca//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/pwc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/s2255//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/siano//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/uvc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/media/v4l2-core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/memory/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/memory/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/memstick//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/memstick/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/memstick/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/message//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/message/fusion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/c2port//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/cardreader//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/cb710//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/cxl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/echo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/eeprom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/genwqe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/ibmasm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/lkdtm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mei//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mic/bus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mic/card//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mic/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mic/scif//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/mic/vop//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/ocxl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/ti-st//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mmc/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mmc/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/chips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/devices//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/lpddr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/maps//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/nand//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/parsers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/tests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mtd/ubi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/mux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/appletalk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/arcnet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/bonding//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/caif//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/c_can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/cc770//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/m_can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/mscan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/rcar//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/sja1000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/softing//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/dsa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/dsa/b53//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/google//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/idpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/via//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/fddi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/fjes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/hamradio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/hippi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/hyperv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ieee802154//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ipvlan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/netdevsim//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/pcs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/phy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/plip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/ppp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/slip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/team//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/thunderbolt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/vmxnet3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wan/lmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wimax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/st//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/net/xen-netback//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/fdp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/microread//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/pn533//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/pn544//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/st-nci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nfc/st95hf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ntb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ntb/hw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ntb/test//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nubus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nvdimm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nvme//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nvme/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nvme/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/nvmem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/of//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/of/unittest-data//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/opp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/parisc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/parport//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pci/controller//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pci/endpoint//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pci/hotplug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pci/pcie//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pci/switch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pcmcia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/perf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/perf/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/allwinner//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/amlogic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/broadcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/lantiq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/marvell//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/motorola//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/qualcomm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/ralink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/renesas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/st//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/phy/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/actions//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/meson//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/spear//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pinctrl/zte//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/chrome//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/goldfish//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/mellanox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/mips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/olpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/amd/pmf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pnp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pnp/isapnp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/power/avs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/power/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/power/supply//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/powercap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pps//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pps/clients//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pps/generators//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ps3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ptp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/pwm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/rapidio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/rapidio/devices//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/rapidio/switches//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ras//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/regulator//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/remoteproc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/reset/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/reset/sti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/reset/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/rpmsg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/rtc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/s390//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/s390/block//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/s390/char//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/s390/cio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/s390/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/s390/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/s390/scsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/s390/virtio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sbus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sbus/char//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/aacraid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/bfa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/csiostor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/device_handler//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/esas2r//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/fcoe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/fnic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/isci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/libfc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/libsas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/lpfc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/megaraid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/mvsas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/pm8001//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/qedf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/qedi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/snic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/scsi/ufs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sfi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sh/clk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sh/intc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sh/maple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sh/superhyway//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/siox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/slimbus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/sn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/actions//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/amlogic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/atmel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/dove//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/fsl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/fujitsu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/gemini//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/imx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/lantiq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/renesas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/sunxi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/ux500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/versatile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/xilinx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soc/zte//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/soundwire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/spmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/ssb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/android//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/android/ion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/board//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/comedi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/dgnc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fbtft//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/fwserial//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/gdm724x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/goldfish//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/greybus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/accel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/adc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/addac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/meter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/ks7010//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media/imx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media/imx074//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/media/zoran//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/most//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/most/cdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/most/dim2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/most/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/most/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/most/sound//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/most/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/most/video//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/netlogic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/nvec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/octeon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/pi433//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtl8712//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/rts5208//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/skein//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/sm750fb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/speakup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/unisys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/vc04_services//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/vme//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/vme/devices//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/vt6655//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/vt6656//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/wilc1000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/staging/xgifb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/target/iscsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/target/loopback//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/target/sbp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/target/tcm_fc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tee//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tee/optee//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal/broadcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal/st//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/thunderbolt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty/hvc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty/ipwireless//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty/serdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty/serial//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty/serial/8250//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/tty/vt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/uio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/atm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/c67x00//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/chipidea//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/class//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/dwc2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/dwc3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/early//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/gadget//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/gadget/function//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/host/whci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/image//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/isp1760//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/misc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/mon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/mtu3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/musb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/phy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/roles//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/serial//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/storage//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/typec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/typec/mux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/usbip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/usb/wusbcore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/uwb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/uwb/i1480//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vdpa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vfio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vfio/mdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vfio/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vfio/platform//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vhost//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/backlight//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/console//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/fbdev/via//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/video/logo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/virt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/virt/coco//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/virt/vboxguest//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/virtio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/visorbus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vlynq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vme//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vme/boards//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/vme/bridges//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/w1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/w1/masters//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/w1/slaves//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/watchdog//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/xen/events//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/xen/xenbus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/xen/xenfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/drivers/zorro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/firmware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/9p//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/adfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/affs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/afs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/autofs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/befs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/bfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/btrfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/cachefiles//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ceph//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/cifs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/coda//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/configfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/cramfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/debugfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/devpts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/dlm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ecryptfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/efivarfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/efs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/exportfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ext2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ext4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/f2fs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/fat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/freevxfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/fscache//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/fuse//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/gfs2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/hfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/hfsplus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/hostfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/hpfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/hugetlbfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/iomap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/isofs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/jbd2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/jffs2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/jfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/kernfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/lockd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/minix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/nfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/nfs/blocklayout//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/nfs/filelayout//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/nfs_common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/nfsd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/nilfs2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/nls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/notify//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/notify/dnotify//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/notify/fanotify//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/notify/inotify//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ntfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ocfs2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ocfs2/cluster//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ocfs2/dlm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/omfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/openpromfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/orangefs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/overlayfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/proc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/pstore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/qnx4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/qnx6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/quota//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ramfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/reiserfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/romfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/squashfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/sysfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/sysv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/tracefs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ubifs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/udf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/ufs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/fs/xfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/acpi/platform//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/asm-generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/asm-generic/bitops//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/asm-generic/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/clocksource//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/8139too//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/a64fx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/apei//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/apei/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/cca//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/cppc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/hotplug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/processor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/reduced//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/reduced/hardware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/spcr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/acpi/table//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/advise//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ahci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/alim7101//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/allow//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/allow/dev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ampere//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ampere/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ampere/erratum/ac03//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ampere/erratum/ac03/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/aperture//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/aquantia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/dma/addr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/enable//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/enable/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/acpi/table//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/cache//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/cache/line//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/devmem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/dma/prep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/elf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/fast//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/fortify//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/gcov//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/membarrier/sync//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/non//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/pmem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/pte//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/set//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/set/direct//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/setup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/setup/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/sg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/strict//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/strict/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/strict/module//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/sync//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/sync/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/sync/dma/for//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/syscall//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/tick//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/have//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/have/nmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/hibernation//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/read//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/read/lock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/read/unlock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/spin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/spin/lock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/spin/trylock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/spin/unlock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/write//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/write/lock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/inline/write/unlock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/keep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/mmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/proc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/proc/kcore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/select//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/select/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/sparsemem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/supports//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/supports/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/supports/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/supports/numa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/suspend//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/use//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/use/queued//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/want//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/want/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/want/default/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arch/want/frame//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/arch/timer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/arch/timer/ool//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/dmc620//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/gic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/gic/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/gic/v3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/gic/v3/its//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/pmu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/psci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/sbsa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/scpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/scpi/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/sde//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/smccc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/smccc/soc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/smmu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/sp805//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/spe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/tegra20//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm/timer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/64k//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/acpi/parking//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/amu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/cont//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/hw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/lse//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/module//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/pa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/pa/bits//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/page//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/pseudo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/ras//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/tlb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/va//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/va/bits//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/workaround//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/workaround/clean//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/workaround/repeat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/arm64/workaround/speculative//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/as//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/as/has//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/as/has/armv8//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/associative//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/asymmetric//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/asymmetric/key//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/asymmetric/public//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/async//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/async/raid6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/async/tx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ata//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ata/verbose//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/atm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/atomic64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/audit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/audit/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/audit/arch/compat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/autofs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/autofs4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/auxiliary//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/backlight//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/backlight/class//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/backlight/lcd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/balloon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/base//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcm/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcm/ns//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcm/sr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcm7xxx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcm87xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcma/driver//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcma/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bcma/host/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bfq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bfq/group//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/big//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/binary//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/binfmt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bitfield//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bitfield/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bits//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bits/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/cgroup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/dev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/dev/dm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/dev/io//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/dev/loop//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/dev/null//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/dev/ram//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/mq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/scsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/blk/wbt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bnx2x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bnxt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bnxt/flower//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/boot/printk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bootparam//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bootparam/hung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bpf/jit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bpf/jit/always//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bpf/jit/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bpf/stream//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bpf/unpriv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/branch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/branch/profile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bridge/ebt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bridge/igmp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bridge/nf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bridge/vlan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/broadcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bsd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bsd/process//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bsd/process/acct//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bug/on//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/bug/on/data//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/buildtime//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/buildtime/extable//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/8dev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/c/can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/calc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/cc770//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/ems//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/esd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/kvaser//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/peak//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/plx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/can/sja1000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cavium//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cavium/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cavium/tx2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cavium/tx2/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cb710//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cb710/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/has//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/has/kasan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/has/sancov//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/has/working//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/is//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/optimize//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cc/optimize/for//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cdrom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ceph//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ceph/fs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ceph/fs/security//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ceph/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ceph/lib/use//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cgroup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cgroup/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/charger//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/check//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/checkpoint//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/chelsio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/chelsio/inline//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/chelsio/tls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/chr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/chr/dev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/chrome//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cicada//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cifs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cifs/allow//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cifs/dfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cifs/smb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cifs/weak//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/clang//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/clk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/clk/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/clk/vexpress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/clkdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/clksrc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/clone//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cls/u32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/clz//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cmdline//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cmdline/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/common/clk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/common/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/configfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/console//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/console/loglevel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/context//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/context/switch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/contig//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/core/dump//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/core/dump/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cortina//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu/freq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu/freq/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu/idle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpu/idle/multiple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cpumask//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cramfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crc/itu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crc32//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cross//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/cross/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/aes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/aes/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/aes/arm64/ce//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/aes/arm64/neon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/ansi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/blowfish//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/cast//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/chacha20//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/crct10dif//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/crct10dif/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/dev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/dev/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/dev/cavium//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/dev/ccp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/dev/sp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/drbg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/fips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/ghash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/ghash/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/hash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/michael//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/rng//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/sha1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/sha1/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/sha2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/sha2/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/sha256//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/twofish//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/user//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/crypto/user/api//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/damon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/davicom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dcache//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dcache/word//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/debug/info//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/debug/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/debug/section//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/decompress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default/fq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default/hung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default/hung/task//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default/mmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default/mmap/min//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default/security//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/default/tcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/detect//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/detect/hung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dev/dax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dev/dax/hmem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/devtmpfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dlci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dlm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dm/bio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dm/cache//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dm/log//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dm/multipath//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dm/persistent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dm/thin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dma/coherent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dma/direct//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dma/engine//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dma/noncoherent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dma/shared//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dns//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dp83640//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dp83822//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dp83848//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dp83867//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dp83tc811//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/amd/dc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/amdgpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/cirrus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/display//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/display/dp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/dp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/dp/aux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/export//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/export/for//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/fbdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/gem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/hisi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/kms//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/kunit/test//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/load//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/load/edid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/nouveau//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/panel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/radeon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/ttm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/virtio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/drm/vram//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dst//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dt/idle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dummy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dummy/console//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dw/dmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dwmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dwmac/dwc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dwmac/dwc/qos//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/dynamic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/edac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/edac/legacy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/eeprom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efi/params//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efi/params/from//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efi/runtime//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efi/soft//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efi/vars//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efi/vars/pstore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efi/vars/pstore/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/efivar//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/elf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ena//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/enable//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/enable/must//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/enclosure//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/encrypted//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/energy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ethtool//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/event//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/exclusive//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/exclusive/system//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/exportfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/exportfs/block//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ext4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ext4/fs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ext4/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ext4/use//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ext4/use/for//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/extcon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/extra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fair//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fair/group//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fanotify//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fanotify/access//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fat/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fat/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fb/cfb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fb/deferred//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fb/sys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/file//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fips/signature//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fix/earlycon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fixed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fmc/write//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/font//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/force//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/force/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fortify//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/frame//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/framebuffer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/framebuffer/console//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fs/posix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fscache//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fsl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fsl/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ftrace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ftrace/mcount//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fujitsu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fujitsu/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/function//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/function/graph//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fuse//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fusion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fusion/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/futex//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fw/cfg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fw/loader//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/fw/loader/user//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/gact//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/gcc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/bug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/bug/relative//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/calibrate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/clockevents//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/early//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/idle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/idle/poll//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/irq/effective//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/irq/effective/aff//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/irq/show//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/msi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/msi/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/sched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/smp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/smp/idle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/strncpy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/strnlen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/time//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/generic/vdso/time//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/gpio/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/gpio/xgene//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/gpiolib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/grace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/gro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/handle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/handle/domain//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/harden//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/harden/el2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hardened//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hardened/usercopy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hardirqs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hardirqs/sw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/has//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/has/ioport//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hash/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/aligned//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/aligned/struct//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/compiler//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/huge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/jump//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/kasan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/kasan/sw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/mmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/pfn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/thread//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/thread/struct//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/transparent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arch/vmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/arm/smccc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/clk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/cmpxchg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/context//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/dynamic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/ebpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/efficient//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/fast//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/ftrace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/function//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/function/graph//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/futex//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/gcc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/generic/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/hardened//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/hw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/irq/time//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/arch/tlb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/arch/tlb/flush//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/cpu/relax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/vcpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/vcpu/run//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/kvm/vcpu/run/pid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/mod//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/mod/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/pata//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/perf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/perf/user//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/regs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/regs/and//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/sched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/sched/avg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/setup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/setup/per//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/syscall//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/virt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/virt/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hdlc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/headers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hi3660//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hi6220//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hibernate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hid/battery//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hid/betop//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hid/hyperv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hid/logitech//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hid/picolcd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hid/sensor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/high//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/high/res//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hisi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hisilicon/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hisilicon/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hist//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hmem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hns//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hns3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/holes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/holes/in//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hotplug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hotplug/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hotplug/pci/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hugetlb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hvc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hw/perf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hw/random//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hwlat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hwpoison//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hyperv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/hz//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/arb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/arb/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/designware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/diolan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/hid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/mux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/parport//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/pca//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/slave//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/tiny//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i2c/xgene//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/i6300esb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ice//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/icplus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/idle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/idle/page//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/igb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/illegal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/illegal/pointer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/indirect//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet/diag//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet/esp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet/mptcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet/raw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet/sctp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet/tcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet/udp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet/xfrm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet6/esp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inet6/xfrm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband/addr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband/on//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband/user//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/infiniband/virt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/init//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/init/env//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/init/env/arg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/initramfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/read//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/read/lock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/read/unlock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/spin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/spin/lock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/spin/trylock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/spin/unlock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/write//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/write/lock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inline/write/unlock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/inotify//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/input//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/input/ff//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/input/mousedev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/intel/xway//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/interval//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iommu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iommu/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iommu/default/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iommu/io//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iommu/io/pgtable//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iosched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/advanced//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/fib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/fib/trie//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/mroute//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/multiple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/nf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/nf/arp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/nf/match//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/nf/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/pimsm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/route//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/set//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/set/hash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/set/list//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs/mh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs/pe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs/proto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs/sh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip/vs/tab//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip6/nf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip6/nf/match//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ip6/nf/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipmb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipmb/device//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipmi/device//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipmi/dmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipmi/panic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipmi/plat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/mroute//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/multiple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/route//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/router//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ipv6/sit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/irq/bypass//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/irq/domain//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/irq/forced//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/irq/msi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iscsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iscsi/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iscsi/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/iso9660//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ixgbe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ixgbevf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/jump//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kallsyms//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kallsyms/base//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kdb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kdb/continue//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kdb/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kernel/mode//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kexec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/keyboard//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kgdb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kgdb/honour//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kgdb/serial//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kprobe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kunit/all//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kunit/example//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kvm/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kvm/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kvm/generic/dirtylog//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kvm/generic/dirtylog/read//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/kvm/indirect//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/l2tp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lcd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lcd/class//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/led//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/led/trigger//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/leds//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/leds/brightness//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/leds/class//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/leds/lp55xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/leds/trigger//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/leds/trigger/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/linear//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/linear/ranges//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/liquidio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/list//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/list/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lock/debugging//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lock/spin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lock/spin/on//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lock/torture//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lockd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lockdep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lockup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/log//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/log/buf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/log/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/log/cpu/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/logitech//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/logo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/logo/linux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/loopback//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lsi/et1011c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lsm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lsm/mmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lwtunnel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lxt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lz4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/lzo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/magic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/magic/sysrq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/marvell//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/marvell/10g//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/max/raw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/maxlinear//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/md//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mdio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mdio/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mdio/hisi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mdio/mscc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/megaraid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mellanox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/memcg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/memcpy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/memcpy/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/memfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/memstick//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/memstick/jmicron//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/memstick/tifm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/message//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/message/loglevel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mhi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mhi/bus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/micrel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/microchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/microchip/t1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/microsemi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/misc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mitigate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mitigate/spectre//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mitigate/spectre/branch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx4/en//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5/cls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5/core/en//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5/en//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5/sf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5/sw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5/tc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlxbf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlxreg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlxsw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlxsw/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc/block//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc/dw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc/ricoh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc/sdhci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc/sdhci/io//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc/tifm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc/toshiba//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmc/via//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmu/gather//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mmu/gather/table//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/module//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/module/force//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/module/sig//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/module/srcversion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/modules//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/modules/tree//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/modules/use//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/modules/use/elf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mouse//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mouse/elan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mouse/synaptics//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mpls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mptcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mptcp/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mq/iosched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/msdos//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mspro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/cfi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/gen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/map//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/map/bank//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/of//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/physmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/ubi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mutex//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mutex/spin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/mutex/spin/on//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/n//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/national//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/dma/map//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/multiple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/per//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/per/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/sg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/need/sg/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/act//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/act/tunnel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/cls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/drop//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/ematch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/flow//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/ip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/ipgre//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/key//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/l3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/l3/master//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/mpls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/packet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/poll//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/ptp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/rx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/rx/busy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/sch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/sch/fq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/sock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/tc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/tc/skb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/team//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/team/mode//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/udp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/vendor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/net/xgene//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netconsole//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netdev/addr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netdev/addr/list//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netfilter/family//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netfilter/netlink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netfilter/xt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netlink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/network//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/network/phy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/netxen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/new//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/conntrack//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/ct//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/ct/proto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/defrag//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/dup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/flow//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/flow/table//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/log//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/nat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/reject//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/socket//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/tables//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nf/tproxy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfp/app//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfp/app/abm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/acl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/use//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/v3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/v4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/v4/1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfs/v4/security//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfsd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfsd/v2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfsd/v3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfsd/v4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nft//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nft/bridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nft/dup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nft/fib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nft/flow//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nft/fwd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nft/reject//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nitro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nls/codepage//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nls/iso8859//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nls/koi8//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nls/mac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/no//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/no/hz//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nodes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nop//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nouveau//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nouveau/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nouveau/platform//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/numa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/numa/balancing//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/numa/balancing/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/numa/keep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nvdimm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nvidia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nvidia/carmel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nvidia/carmel/cnp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nvme//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nvme/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/nvme/verbose//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/of//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/of/early//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/of/reserved//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/oid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/openvswitch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/osnoise//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/overlay//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/packet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/page//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/panic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/panic/on//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/panic/on/oops//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/paravirt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/paravirt/time//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/partition//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pci/domains//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pci/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pci/host/thunder//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pci/hyperv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pci/msi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pci/msi/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pci/xgene//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pcie//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pcie/dw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pcie/iproc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pcieaer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pcieaspm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pcs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/perf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/persistent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pgtable//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/phy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/phy/brcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/phy/hi6220//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/phy/ns2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/phy/ns2/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/phys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/phys/addr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/phys/addr/t//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pinctrl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pinctrl/iproc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pinctrl/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pkcs7//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pkcs7/message//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/plugin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pm/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pm/generic/domains//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pm/sleep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pm/std//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pnfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pnfs/file//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pnp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pnp/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/posix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/posix/mqueue//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/power/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/power/reset/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ppp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ppp/sync//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pps//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pps/client//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/preempt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/prevent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/prevent/firmware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/prime//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/print//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/print/quota//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/printk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/printk/safe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/printk/safe/log//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/probe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/proc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/proc/page//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/proc/pid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/proc/vmcore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/psi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/psi/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pstore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pstore/compress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pstore/deflate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ptp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ptp/1588//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pwm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/pwm/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom/falkor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom/falkor/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom/hidma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom/l2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom/l3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom/qdf2400//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qcom/qdf2400/erratum//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qfmt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/qsemi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/queued//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/quota//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/quota/netlink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/raid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/raid6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/raid6/pq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/randomize//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/randomize/module//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/randomize/module/region//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rational//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rational/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/raw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rcu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rcu/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rcu/need//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rcu/nocb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rcu/stall//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rdma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/realtek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/reed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/reed/solomon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/refcount//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/regmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/renesas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/resource//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/resource/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rfkill//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rh/kabi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rh/kabi/size//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rh/kabi/size/align//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rhel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ring//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ring/buffer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rmi4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rmi4/2d//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rmi4/f03//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rodata//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rodata/full//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rodata/full/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rpcsec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rpcsec/gss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rt/group//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/drv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/drv/ds1374//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/drv/ds1685//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/ds1685//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/ds1685/sysfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/hctosys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/intf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/runtime//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/runtime/testing//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rwsem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rwsem/spin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sata//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sata/ahci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sata/mobile//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scf/torture//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/chelsio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/dh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/fc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/hisi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/hisi/sas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/ipr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/iscsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/proc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/qla//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/sas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/sas/host//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/scan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/scsi/srp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sctp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sctp/cookie//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sctp/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sdio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/seccomp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/section//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/section/mismatch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/network//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/selinux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/selinux/avc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/security/writable//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/select//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/select/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sensors//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sensors/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sensors/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sensors/mlxreg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sensors/ntc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sensors/pwm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/8250//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/8250/many//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/8250/nr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/8250/share//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/amba//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/amba/pl011//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/earlycon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/earlycon/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serial/of//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serio/altera//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/serio/arc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sgl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/shuffle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/shuffle/page//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/signed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/signed/pe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/signed/pe/file//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/skb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/slab//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/slab/freelist//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/slip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/slub//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/slub/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/slub/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/smsc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/soc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/soc/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sock/cgroup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sock/validate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/soft//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/softlockup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sony//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sparse//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sparsemem//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/spi/dw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/split//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/split/ptlock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/squashfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/squashfs/decomp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/squashfs/file//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/squashfs/fragment//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ssb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stack//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stackinit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stackinit/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stackprotector//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stacktrace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stmmac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stream//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/strict//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/strict/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/strict/module//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/strip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/strip/asm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stub//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/stub/clk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sunrpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/suspend//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/symbolic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/syn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sync//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/synclink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sys/supports//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sysctl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sysctl/exception//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sysctl/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sysfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/system//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/system/data//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/system/trusted//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/sysvipc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/task//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/task/delay//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/task/io//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tasks//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tasks/rcu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tasks/rude//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tasks/trace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tcg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tcg/tis//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tcp/cong//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/teranetics//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/test//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/test/list//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/textsearch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/default/gov//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/emergency//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/gov//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/gov/step//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thermal/gov/user//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thread//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thread/info//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thread/info/in//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thunder//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thunder/nic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/thunderx2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tick//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tifm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tigon3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/time//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/time/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/timer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/timerlat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tipc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tipc/media//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tmpfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tmpfs/posix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/torture//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/trace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/trace/irqflags//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tracer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tracer/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tracing//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/transparent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/transparent/hugepage//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/tree//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/trusted//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/typec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/typec/dp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/typec/mux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ucs2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/ucsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/udf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uefi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uefi/cper//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uio/hv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uio/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uio/pdrv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/unix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/unix98//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/unmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/unmap/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/unmap/kernel/at//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uprobe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ali//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/announce//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/announce/new//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/arch/has//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/autosuspend//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/default//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ehci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ehci/hcd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ehci/root//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ezusb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/hsic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/hwa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/led//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/leds//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net/cdc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net/huawei//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net/huawei/cdc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net/qmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/net/rndis//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ohci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ohci/little//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/role//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/digi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/mct//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/safe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/sierra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/storage//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/storage/ene//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/uhci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/ulpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/wusb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb/xhci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/usb4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/use//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/use/percpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/use/percpu/numa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/user//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/uwb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vdpa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vdpa/sim//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vexpress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vfat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vfio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vfio/iommu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vfio/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vga/arb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vga/arb/max//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vhost//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/video//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/virt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/virt/cpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/virtio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/virtio/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/virtio/vsockets//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vitesse//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vlan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vlan/8021q//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vm/event//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vmap//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vsockets//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vt/console//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vt/hw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/vt/hw/console//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/watchdog//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/watchdog/handle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/watchdog/open//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/x509//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/x509/certificate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xarray//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xdp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xdp/sockets//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xfrm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xfrm/sub//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xfs/posix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xgene//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xgene/slimpro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xilinx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xz//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/xz/dec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/zlib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/zone//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/zram//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/config/zsmalloc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/crypto/internal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/drm-backport//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/drm-backport/linux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/drm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/drm/bridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/drm/display//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/drm/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/drm/ttm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/bus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/clk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/clock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/display//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/iio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/input//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/leds//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/media//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/mfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/mips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/mux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/phy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/pwm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/regulator//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/soc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/sound//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/spmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/thermal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/dt-bindings/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/generated//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/generated/uapi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/generated/uapi/linux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/keys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/amba//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/avf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/bcma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/byteorder//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/can/dev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/can/platform//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/ceph//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/clk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/crush//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/decompress//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/dsa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/extcon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/firmware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/firmware/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/firmware/meson//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/fpga//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/fsl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/hsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/accel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/adc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/dac//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/frequency//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/gyro//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/imu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/iio/timer//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/input//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/irqchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/isdn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/lockd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mailbox//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/abx500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/arizona//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/da9052//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/da9055//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/da9062//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/da9063//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/da9150//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/syscon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mlx4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mlx5//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mtd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/mux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/net/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/netfilter_arp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/pcs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/perf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/phy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/phy/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/pinctrl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/platform_data//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/platform_data/media//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/platform_data/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/qed//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/raid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/regulator//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/remoteproc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/reset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/rpmsg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/rtc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/sched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/actions//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/dove//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/renesas//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/sunxi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soc/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/soundwire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/ssb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/sunrpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/ulpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/unaligned//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/uwb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/linux/wimax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/math-emu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/media//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/media/davinci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/media/drv-intf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/media/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/media/tpg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/memory//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/misc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/9p//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/bluetooth//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/caif//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/iucv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/mana//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/netns//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/nfc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/phonet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/sctp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/net/tc_act//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/pcmcia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/ras//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/rdma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/scsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/scsi/fc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/arc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/at91//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/bcm2835//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/brcmstb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/fsl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/fsl/qe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/imx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/nps//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/sa1100//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/soc/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/sound//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/sound/ac97//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/sound/sof//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/sound/sof/ipc4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/target//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/target/iscsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/trace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/trace/events//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/asm-generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/drm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/android//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/caif//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/cifs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/dvb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/hsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/iio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/isdn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/mmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/raid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/sched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/linux/wimax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/misc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/mtd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/rdma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/scsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/scsi/fc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/sound//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/sound/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/sound/sof//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/video//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/uapi/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/video//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/xen/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/xen/interface//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/xen/interface/hvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/include/xen/interface/io//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/init//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/ipc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/bpf/preload//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/cgroup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/debug/kdb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/dma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/events//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/gcov//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/irq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/kcsan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/livepatch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/locking//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/printk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/rcu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/sched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/time//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/kernel/trace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/842//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/crypto//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/dim//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/fonts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/kunit//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/livepatch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/lz4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/lzo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/math//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/mpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/pldmfw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/raid6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/raid6/test//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/reed_solomon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/vdso//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/xz//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/zlib_deflate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/zlib_dfltcc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/zlib_inflate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/lib/zstd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/mm/damon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/mm/kasan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/6lowpan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/802//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/8021q//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/9p//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/appletalk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/atm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ax25//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/batman-adv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bluetooth//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bluetooth/bnep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bluetooth/cmtp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bluetooth/hidp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bpfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bridge//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/bridge/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/caif//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/can//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ceph//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/dcb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/dccp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/dccp/ccids//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/decnet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/decnet/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/dns_resolver//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/dsa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ethernet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ethtool//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/hsr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ieee802154//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ife//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ipv4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ipv4/bpfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ipv4/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ipv6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ipv6/ila//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ipv6/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/iucv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/kcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/key//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/l2tp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/l3mdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/lapb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/llc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/mac80211//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/mac802154//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/mpls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/mptcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/ncsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/netfilter/ipset//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/netfilter/ipvs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/netlabel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/netlink//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/netrom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/nfc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/nfc/hci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/nfc/nci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/nsh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/openvswitch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/packet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/phonet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/psample//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/qrtr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/rds//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/rfkill//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/rose//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/rxrpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/sched//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/sctp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/smc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/strparser//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/sunrpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/switchdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/tipc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/tls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/unix//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/vmw_vsock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/wimax//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/wireless//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/x25//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/xdp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/net/xfrm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/auxdisplay//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/configfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/connector//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/hidraw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/hw_breakpoint//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/kdb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/kfifo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/kobject//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/kprobes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/livepatch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/mei//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/mic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/mic/mpssd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/nitro_enclaves//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/qmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/rpmsg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/seccomp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/timers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/trace_events//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/trace_printk//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/uhid//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/v4l//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/vfio-mdev//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/vfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/samples/watchdog//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/basic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/clang-tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/api//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/free//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/locks//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/misc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/null//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/coccinelle/tests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/dtc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/dtc/libfdt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/gcc-plugins//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/gdb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/gdb/linux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/genksyms//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/ksymoops//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/mod//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/package//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/selinux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/selinux/genheaders//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/scripts/selinux/mdp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/apparmor//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/integrity//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/integrity/evm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/integrity/ima//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/keys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/keys/encrypted-keys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/keys/trusted-keys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/loadpin//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/selinux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/selinux/include//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/smack//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/tomoyo//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/security/yama//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/ac97//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/aoa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/aoa/codecs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/aoa/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/aoa/fabrics//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/aoa/soundbus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/atmel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/core/oss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/core/seq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/core/seq/oss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/drivers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/drivers/mpu401//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/drivers/opl3//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/drivers/opl4//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/drivers/pcsp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/drivers/vx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire/bebob//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire/dice//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire/digi00x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire/fireface//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire/fireworks//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire/motu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire/oxfw//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/firewire/tascam//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/hda//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/hda/ext//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/i2c//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/i2c/other//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/ad1816a//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/ad1848//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/cs423x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/es1688//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/galaxy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/gus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/msnd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/opti9xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/sb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/wavefront//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/isa/wss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/mips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/oss//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/oss/dmasound//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/parisc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/ac97//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/ali5451//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/asihpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/au88x0//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/aw2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/ca0106//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/cs46xx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/cs5535audio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/ctxfi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/echoaudio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/emu10k1//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/hda//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/ice1712//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/korg1212//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/lola//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/lx6464es//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/mixart//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/nm256//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/oxygen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/pcxhr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/riptide//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/rme9652//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/trident//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/vx222//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pci/ymfpci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pcmcia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/pcmcia/vx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/ppc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/sh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/adi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/amd/acp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/amd/ps//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/amd/raven//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/amd/renoir//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/amd/rpl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/amd/yc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/atmel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/au1x//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/bcm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/cirrus//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/codecs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/dwc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/fsl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/generic//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/hisilicon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/img//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/atom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/avs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/boards//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/catpt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/keembay//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/intel/skylake//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/jz4740//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/kirkwood//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/mediatek/common//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/meson//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/mxs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/pxa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/qcom//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/rockchip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/samsung//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sh/rcar//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sof//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sof/amd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sof/imx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sof/intel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/spear//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sprd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/stm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/sunxi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/tegra//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/ti//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/txx9//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/uniphier//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/ux500//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/xilinx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/soc/xtensa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/sparc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/synth//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/synth/emux//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/usb/6fire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/usb/bcd2000//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/usb/caiaq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/usb/hiface//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/usb/line6//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/usb/misc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/usb/usx2y//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/virtio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/sound/xen//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/accounting//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/arch/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/bpf/bpftool//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/bpf/runqslower//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/build//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/build/feature//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/build/tests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/build/tests/ex//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/cgroup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/firewire//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/hv//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/iio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/include//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/include/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/io_uring//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/laptop//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/laptop/dslm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/laptop/freefall//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/leds//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/api//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/lockdep//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/perf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/subcmd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/traceevent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/objtool//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/pci//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/pcmcia//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/Documentation//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/arm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/arm64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/csky//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/mips//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/s390//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/sh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/sparc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/scripts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/scripts/perl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/acpi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/acpi/tools//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/cpupower//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/cpupower/bench//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/cpupower/debug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/pm-graph//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/x86/turbostat//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/scripts//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/spi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/nvdimm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/radix-tree//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/scatterlist//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/android//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/core//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/damon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/exec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/futex//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/lib//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/locking//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/mount//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/net//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/proc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/size//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/splice//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/sync//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/timens//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/timers//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/user//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/x86//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/selftests/zram//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/testing/vsock//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/thermal//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/thermal/tmon//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb/usbip//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/usb/usbip/src//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/virtio//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/virtio/ringtest//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/virtio/vhost_test//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/vm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/tools/wmi//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/usr//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/virt//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/virt/kvm//usr/src/kernels/4.18.0-553.5.1.el8.aarch64/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 -fasynchronous-unwind-tables -fstack-clash-protectioncpioxz3Taarch64-redhat-linux-gnu                                                                                                              !"#$ %&'(directoryLinux make config build file, ASCII textASCII textmakefile script, ASCII textC source, ASCII textemptyOS/2 REXX batch file, ASCII textassembler source, ASCII textAlgol 68 source, ASCII textUTF-8 Unicode textOS/2 REXX batch file, UTF-8 Unicode textC source, UTF-8 Unicode textISO-8859 textPOSIX shell script, ASCII text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=a48de1ee8b872cab9d4c8247f9ef66c4a8c2f2b4, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=6399f715b0981e2fdf570e7a86b02489689432a9, strippedPython script, ASCII text executablePerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=bedc08a8c519583b55960fce436ef3ec272badef, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=4ff4cf817d80748c0c22ef4e4fe6bb330c3df6fe, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=fdd873c5092a2983a8558aecc4d10201ace7f658, strippedC++ source, ASCII textexported SGML document, ASCII textELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=ab685e5ee2d6e87c724a8fde4265e7610a7f6e17, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=0306f5e28b355587efb4bbe99d1b711c069991e3, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=d5146e723d9875a9670b5619591e6d5f33ff762a, strippedXML 1.0 document, ASCII textawk script, ASCII text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=1db35f5738b1e2b544b24c91bfa1a0b27753d38b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=264ee9cfab2580ba5c2e0a6032019a17642f3782, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=3d39c260841fd97c2985b2c5efa9c2e4fe6232c6, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=478976d418d81b1447203b4f992016f5a75abfd1, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=d748b42d7be40942815b43659749dad964a42912, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=039f37c759b5cb661bf8ede15de77f82f239f35b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=e86ef9b501bfa876a8d414771690f28acf8afa0c, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=91e01d66b019bbffa209a63fe68ec3c2d27df130, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=a0e0923c88459e5bcfdfeaa74019742f9bf5ad1c, strippedASCII text, with very long linesautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-8cac3a52138f3caf772c488f696f35d76a850a5afca1449339784d40bb64b9e43? 7zXZ ȓ!׸{] b2u jӫ`(y0A,b{$)V%T[- rӘ ۲-:kd@4Xc˱hqSZA}4lVB{ G #phg{E|q* =UӔ؞ j֍eqEU+nu\&8f˞{q9߿ume 8@X\AG7zhtS_c>,Wig+9\==n:ߪdCkMR~.=4 8=E(+phAPK]z|d!`gܭn>͒+w|Jln>}"b^5ABP+\+6ԝXd,3MdRMO+vO?h Wc",<%nO&awArMI{'U0N;4@G$ӸrVZѣQ: "f0ScT$ OPָtz7DKlWAL)K-3h,8lC4dwLeH*\xS[h|UTAwGRdK MbC:-"+/~9Y0ЮFdtWԧ]_k _K%hq5dؼ7BrwJDP 8yW!P6)v6̷S}<7w'2<ƫ;YOuAR^b<@TI"*Sp'xia0&,Y} #i@Rt0AžǚjG^*"UEOD-2\ShQӹDKD:萘%!'H%E>3!BnQIySXJJ3nf#5Pp#MC PGn`! ~YHP$ WboMtyL;D/Xcm.DW=BmSԅPNκz45>4DQ2$8LOp%A78B@nqt*=yN܀׋ {m?И,PwBf}3sԼ 7P$}k?bfC|Scbz,p_95&zO̘4z^vί#}zcu.g@X}h!̨PS9I *y]w?F_v3A}Qܶ㕞;D:@{ꍖpl;~^j]/o@`J~6P@k /?AفB;f 㲵AZؐcE~\cMAZ]QPc_ DM޼󽗗9TOyrRY眦V0Mҩʆ9`6Xި`uWǍ m#O$egn"OFt(B)03V\M+X/OǕkpn\߉g bM>D G%S#_tfg@jIWnm6[B@x׀҆6?\)ݯސ8Mk=ow7nSȟ. Nޅѫ(C>@:߯#(ifWa.Wԟ{c܌HfA-<b2l}4i+" )X bNj> 6zyi[FoKma _nRgpªT ?&_w [ ` Zz7fZQNE<K_L)w RvIi7 k^[bnH\:>R Z+[߮J{MV5 _fń~>3򔌼(IgcCf/6)HXRv܆aGہ/"RC8y|iiJ6W_iJtYMT\PNRc0x*W~ŜjbY:yɎ~o9o4GK%-9EG' BynYapGn&d`=W#+fsѳ7,{ 0B&6B9@#[7\󆾏j˭ 9-ʥ -?H*]Ӯܣv,̅geyPIcLxIg՞>Fa>aX+x&UΛ㘵?"2V"aLS"(d{q7)8Jz j(s$+A$ژfRL%9λ,&Ge>NpҪi<Ge]w1Ȍ~~ R췇GH&aƇeȼZ N1CT? 2dF:UPΕ'PmG?VIw9G~vP.ލcRo u-F\JyU03ExQ̩VM4֔i֡DBn n\ؗ!,00gZSOK$/vXea)զ⨚fQ\7pƚpٽ.['e,6O!+\ڄ/)m<z32zS1 _?doZ/xVҁߢb;LBBw5Bߥ׎σZ.._,K9\q>7w+a7LZ&0mٱsn5^ f$ٯ?ip?+55_ae9"6]k9m0bb"Y _vפ.a)Jކ&o|}neyipCx*dƜp2J؄Aklԉ ;d_zҹS%1>ϿW ƽoڄ4f(SsTդd żO''HzJe?X_1#].Tȝ*n&lke7>j5qf;76 OYgGMTqw(=rN !LR69|^][f xvAei!Ä; D0/࣮;3ȋL`7t Bu_̻h[*(Hߝ֜kˬ%~ukBGx@Qk^f:Qb`fΒ-$6|ˌ"_WpԗN3L; t5>5ٰ>xB|,IsRkq0aEYbSHfɱc5a)Pܽ,zI<Y+,%n]=|WަuC` n2w K'sTvEA4hQGkb[z$ "B`Ir$(9Ɋ"B@rzْ>b*ܽP~"|뜰1 caC&GS,SAeH .9PE,M[_˿guNW&^+V>s~=| Mg[O&hgz|vix.y&mgXDߋQf!jz}^_ 6!$ENFIGܞ/5 (2. N*c"UN"1Wv}ct"Ox Fa]hYL$$'P ^|lt_!!YOj}~dtX5 F8Ep-0֣%&/]4M:SWj?VYwjrK{7KjiLh''%l{͎B!%QpmyPA0 _6eF[ i` I"efXhP1gXFA긤 KK V6?'v/$ؾHCyqXxS_c②)|s5kLb8"ʯ|Gb7h- @a&تhX0(2JݔJh(Qd,Aէ8kǼ t8<0E1^C 9C=6DS{ȟqЭV~>NoIa5D=}_w)yxr? /j 'WER/qOlڙV/~_VU鬈UOEt;0xLМ=/5o"hmӇ/S.3o834(ۍq#$v^'G]p1_^|$Z} a@=W* b_<(AAFý?*E[Ăbt/j\w#rqUcpy[G}eF21/Y7p}5mU@R-kg,M| 8,zܶ~%Ѐ<~=2| r5!PO Bj@,D!ہ&@j "!uϱld_TMp]~ +͏Er4C_흁yR^U޸i.w [(g UST#Qt^3"~Ӓ}Lj튧Az^[LSуЕnɓT6/OsopzY+J ]axתkv=}pD0wQSPM;?Qluӿh I6wS}%8Y8 +f R-jߣ  @8j*\җd;Qh Vpfm3PVOƅ0τ{oO~0/ǻT$-B=6v7}9ᴉ4[S*h|?} Z?_ʃD\Q*<[,fQ>c9b_*cV-M/lG/߈ 2ݷjW*G6>m)wI|őePUd&q { 6d5I&I㢨Ypwԏ"!kqt hƴh`2r|{#42yj=KY(G6 VAC%$tjj{AY/W]W!~eY>6{,<*O*l鈗DRշteZx C^180T^ˆfuPVfA`1!zOBw[#:swj<^q!kdr-:By[$i76;EjOݛWI>c+qƅ YksdhT#m0iU'dpb^z]Sc[Lՠ$j--?QƊ}^$' E `M@jٸ6¡VEd7_1MM-ekK"96rۀ^떃{Z"qЋ,EdDge72]#jV]ȵ{qf͗0umlK9Z_ EK5IܓVuVx`(I%K!VR.z&wb@bir:[sΥo! ^X/ū5 ]by41aDj%'GD"A __#lOՙ6Ic%Z/ھBfw!HfǟDq*oYXtWƔ΅/w Jt'd;NYe&Ὲ}'' op[sox-9oa%#\oR> 4p9]0=D9H6Y{ء7n^+qAR^Z+`oL,вڭȧ ǎNP;Lr@>ӬA;Ri8_) g,D:w#G eMYU2H 1sYV;)?=?Ix )AFNhXeh(|ۥa0}ihR7)ޒ(V=I43L^"u#|=TCĊlR;y?{/` 3?5IҪJow.q )ͨKօw}_wNFWK cGO˷>}F) X"#(5Ah V[oC<#cA LdxJ)X76E!I'm dE%/܎FE]m$~ZƴӜj<&J}F\ނ=&-I=˹ij>z-߀b=$5zs8[,c%CK&} \Ftec~Z5Ġ-YG zM_te9ָ72U7]ߑ;r{`^+P、Bn?bƋ3rFc,\3*m'1͒w٘!b`F]e6?Dsȩ/{5O3 k]}Q4-<4PQ]DA'"oW*">|ܲG%"?P/-nR ϵ:U\OgעX`z<K}ᦚXW⼔Yb]I4gFt%P o?y?`wqkkQސa,yS0qmmUDk"IAk[i ٍ))IS'4:O+ v YG?;e@(ݬEͲTBakɜ-Kz@dfgˊгAk6ץ:6?ݺ_;hFY󩡘u>XAK?`*ˆz[D@RVlۭ==zš LAԀn[ 17pؑa8mkT \weTcq*= )-)&|^ԍ+2n!m|UÍȿF!gkw٣mח!4&GIʮ'MT-N٧| 59)27fg.TBB"@`S&:{P滎&a~3:?ƬwpA+% jmm4{12`;.#67_'_:PJ~t r'\*Xl3f;c ?ZI0MFpE9ߠ|⅙Ϋ[5p~tz.ղE^ADCЫ9'g輽0N-I (̍7:Y` t^\=>12d fPd튵+]Ň'[\3;@࡚BǜkR.12"ϯGjOJYA_HX]`X'9`[&K&HczYҍk+0+ZV{v[ ܥޱ6)̎C;[6LGj*-[Q6qr xR6gn<μC/A/wwEIuF1f@gqU KC¿p$2<w}U,P^eG=anjix=HϮ?Ilĭi ̓8XLc'ɾlS$BzѲ .;rµZ׎~t'c甘pTAꅥ]c?&!~E6!&UCIK)}gQ '~qv y_eD:C(: q\/b,c>X洏 vmJMI4AP1lW?C0ȇb.]n*:Uokױ7P)/pŽm:›%mm97Aę.OSM YCGI[\]Dt sԪϰˁkqQ7 HVcx`}iuqls&}nYɥ`m]qĹdJHq#_!-D20c&L&c!핖8?ߘv= pܠ)F\v{bd~S4BS{W̐7֥;S'y&pZxA-,c *_|~%E=/hG-ݑ*cȬNI}vjj.(B*aP#E1鸢bT8GIVU=aXQ m:6N:"L4,Ly!Y~G}aJO /Gw/#S;|׺vl&=D otܦUxl #3p\A($If9/t{ףͰٮnoV0&&U#ϩ)!mCsyKwj۱J|~9V84 A+7DyOK%J5=M/<$EY6v tpFk/2pUFpMG+j q>d_' O_(ikiç)v:Xi4b{-[c_:,9 @t|1O:Ьk.5z7혝l8 'y0?!Bq,\fYo/:)f*{xgdrn;Y7`_@ͦdxq{RkL#5;aO6u9"5fۀI̵Q15!jbw#(U"G,u6"&2NO<ʧXҔ,9 /o.?&|ɺ0l9oJu޿:F\o}-{,4X$ _ٕb&~@ L}&/I@2pGf1ۚ5'qvF5 TT-^ԘoIwC𛩮Ҁ;Z|Nz;1l@6]u/bmPml,K&[z~K\*|90{4E! ֆygoRH2o:#_xy26pN}RrSarS,P?99$4ޝR~k=TJ%}n@ +(ѣu6r4zMKL0X﮾ KL&9(&?鴱/=t!ɂzc; 6?e*]%IȆ+Lە/pPz [057K*s!p ஊWSX7..'B2뗞5_Ҥu ޤnb71Ќ $zn*YBG^Ͻ\(s2{3bc=9*}l˪^ulrL6=k=e5E?*lwDl`# r[7[ Fvn&}XO94v6ʆ255Z1[=`uA^lz/RvD-;B 9ɝaض89۰"P5?du$zxd@яc7FmБI$ʁda=)7-X1ޝH8^y uI6:؛{-1pM.:j[L^j+E1jKpCʍ~4!%*o!3{{bIMi >d\ N_9|/uSjM,%Sur1$ӆbjblAvZlZ/ }w\U2W ;+w-R>6l'r+dl|.Bjao,>)-^=w&-cgꎲ(D+s~2S{bz'SH6T.Da we]6?@Lez$ orsi\LjzڿV! ymjg(m E8ݞmKYN\}6JXt%E/JTOeGy'imD,E<9Ul-ݍ=`%m&>4vÌwm'&ɊE,S"ۓY,N|3 ҘOOT~Qt9 c\*]Bh-}\sml-RFbq?C-Ck{۽ $~Mz1BhˈWvrd hMKe3yVbA/5fyh^a_1K`RVXJĉ5*dMrٿEL &~S̮.RoF[isnS)G>_,DO@9޶ ]4I):uN7Wq#3E+O,gK9~&UUvFwqDGfDmY[wkеq* )p'v$+Ǩ85OozkWcnxtG^ Vchjz! {.6E{ykH~\+O8z~ꠟw?vw]k 9)Xy9^/4~qU.HȶR@ Qz{8}N!_-Ss I@\Mw]m_iv IsR8~Qpc He_7⌑;KQs0{W#]œoUė 3"UG)vKS"OvMJ #FYs˺qgD?\yp,Bq./{C_W@@̑2ej&~#"7< &y `)籲̠J 7uB>eƨtV3DY̋#U(~@olnEhL~ikq9(ƒ8 GyF(p|?J p}s}iRvڮpWb _0ԩoA!9XP]IxS5oos8CI֛#7@=c7be q (>P i`$k:qZc .F5[ItH"&=Ji˚JrF0O s,3#hX,pT)R`M?|l=-W+LG8\8LZQ |TY^t*KE (@v2+r:+bk`/KH!up}$h* ޅ4]S8یQyIJTS #P~7?\+uB8V CML;Dv!Pyd/hS)LoGYAm"[w1>=UP1Y!`U{ zրCyF"WW[IeiЧDgY*z/-p&5l}rK\Ǿ5}ɢެ5ȍ} k~N>]?0{"97G7F&M-ݾROTK~_y]1RThڗgZYL|@Z MNSȅBHjFxY7:lָ; Πi/y&. tfCmDZ\:7D+i(o0LJA]F/kE<.ihVMEzT#o}jnPn)|;Y|M>hmXp&~?6Q7J ;t$w- ~Р o}@v>ҘUka'6%RBBe{ʡ_7ƩݝQvz? šz$D!JuwNR8Vc^]p. D $ubkYU%6 RoH2Z)!7~父%NK5{AR = jްJ|cr'dX#wl79cPriT#,1E_nO?D iǞRsTFT'ԓܱ%r-m٘a^$%oǷ$ɴ˧Qb*‚pf:Ffh fzKȻ{E5mfT1[בɗCCf/h X&jߣ*h }):eD>558n;KS7FcMڡiO0![ZĹ׎Ҁ,.M)"kα#’GD1=S :.K!V"Tc1LGaɋl{ #l?sYD*R Mfk|]x\SD}gG[hK6AsOs5;wA*Jmpnr:),:/muyaLQd34 K'5̾;@,Ic#3 'b"_F{ oDchI#glY`heV9)E nsC% cԮTO< ZR io'#1=ꃄe]_#mwYH@R/tS^jcQݚG7ѤǴFst&^r%mAoh,R`5; 3 TG)MO\HD1m1Z>Wz>j5L| OtD;DRd_1sz:B8H0jmi;tp,3(C}kڸuؽ< Pkv~eF'Y8TD<׹\]pU3F4 5pfY:QIC—UWx)Q5 qLAXV=X:U9>1gpoӽ^%ߎswyNN#94Ccxc>sa8Sobo$Ϙҏ1=z]8X7X\g)5wp$;ۣacCl)V'CҘ8W?,(V%Q %edd-yɧOq+twCu]7$҇h1ہ{8:;M v+oB69st(0h'$&3EZɝ(k@d 㰞؅V3I -CDUITH  3ٍvl)ΔUH}(JQXkH%ZZ0f}dTw5O OԷ$!y8uL 9f C(< õ(USɢsE/ic: GYdS(Pl#Ifb?&!|~Q_3 t_Ih Dz0)5bNfk{m'zoFETa4 󯻨J^QFV8rsS;vJ>[GiNѭpӢ'VPNmI[b) 3{Ay^Q7/:|E=[״;JOy~T"#"~s{';bX7 8)<7R$ex !kt } ٖ)-.Qdh[IwUe*+#ǫRj:m  ֯PC(S31}w%.xl]j8ƌ:]S N 왛eq㲞K;T(I>f=t-c0 U g5, a9Bx`*^M=܀aa:^SWbzrO]aZ9CpCE |;0ŇYd.<=7%LNxxju 9=OaQYL)7U~bEнxjʫRWW ,&h鹳; \G$uZ$rrq)o72ݛ3tި(ku)-kT-`}hQڠH z J*Ey2oHԶȷE*]jJf |bo|#4 L?cn?&,Nt:}. ?h`ܙ&&LvJxb8 Q L"nK9)[%8\n͈pyṘaDga~;ԉvkŞd+OCj F9LPH]JY/-l%tdZ1$yޭqOJXxrB hD Diy﹣+8^+؜ J.|xxþw<$VqTLN޺#qȆmѪJU^2cA˓\$&Oױe[EiH_ f3SeM%~"tu-a.058qO#:f . ']ن;^7o Ʃ5n*w+\ċjFnrXGH1iaRQjӓyBTV⎩O}Il'x7R?5A,-Ҋ-\wV^?΃&@13jHt ߝqUJ &T)r1F܇gGs s(y<3ubB'΄߼VP$(XFwT w|g,xciѤK&X`h4,jX,xɴqjX_`5 Oz9һeU?S=CRs[mߚ kRFP i2] KQ:̀1R)m8$9?ǻ#¹|{_pdRJ@kAi/[t Othlƥt @2\# I;vU*;ߴeb3V2hE#8f(Tmrr7++|qD^-\ (& +z۾:i\xCOAN"{7m_帾 kKe%d<_NrI0UƏbdAhF?@>K¤уR462YE<^8P6qRN "lv +Vcjʲ*#מ;t.GD[@QY!k\M!W,*z$IE8h`0&0glZ§*\$D"fWx+PB;,l %ty '_\uRo.~,EkIo I}-hoL-h\:7u|8 Oֿ6ibb/ x7eX'2*321l!꟱m S_Bm])X/ {)kjRE2[jkWzP薑jf)՚x xL{GQ>8jN4%r<k -[=s d}H~[UU#gUAn؎^,=atJxv>֏TB̴+7NѦWZ̪cz`3)H a Ϯ.̙xYÌTT]>5kwdA|A`88y=x H)Q@Qi{]9F_Iԉԥ{HNRL`Zؠ9"/X`WDU6GBGVۄGzt0n6 ҰZe+a=k"F$EŎǣG%Q\9 *ޫ5T8Maeq`J$|4D`rOY}Qc>o1|bTɏ\K >ʏaemL7Ս6N Ra$l1 iS:m=q|ŗb˼~2 @kiqĀbﱝ~p V* RD_r叙2P%Z;l!CDFo3N}'y^}n+sX Z,HOƞ2: PjfH_̈:mɵ2}=@J4fw_-L ar֚ͩi {ͤ>zIT(tʞ0OGrce1r͌ Dx4:<.㯏T &vL٤:klcpe+M759-8ݨ !}sbza^|#Z1 bDV3Md~YFg|;$ci 8Zn@&Aou3귇L=~dI4u_ՁZG$ d]"#*)CqM@N.gE]~v#hAӷ/yc@%ogWei4I |5_ /&~uFhAVrwFjbLfQž t`5Hֆ@κI;f"4w"6 e TtMXa>_jA~ eA&Kp2!D.d }P\׆ `Em>w:6J9QVߠbQLylҢkn;" i}b\k a-B8mF*5|!J@AmSV#RL]! Tܞ]ôtL~U 3MF X*]%J0Q# '1 ɿz\Ck$K68Fvg&kd׳/y@9| G/T8otyx{c 'TC.8oud}}Cʌxfadݗͣk6Hq\<٨3ii>bs\RދD09}.0Ԋ<:]bRspzf§+LJ!ǓM. crnM {U2rtff":^?$v|bx?\dC~C>oz=N9p%I$fkMF#(S %pE%V֫zjr JOV9  7P\] yl&`OS8X=o+:Ѣnfz\5 cNX9SGdKj i١\~ ;@:tZ&w ;BmKٳ.dze3ymF.ϟ)D`90_ =Ѫ:e{1WD, 1oqǃ˫"Fzb]s%5EWV Qs;%ܢ).g72'c\$)lE@$`pI9`aXf ZuTx96Q}`0'fMN ƌU|ir qzk1 ݕp-\i66ZKjn1`UU8\Up8f((  @?!Xk.Nԧ0LK*["8!HxM{>nYwsW` ydS8.;l? vn[ `rOi"y BV?z{V2EHW= eO} |I)! @٬LM|h_ LmJl~Z$+>͡9?4|wif',0E29u/"y AW?ܼفRЬ[|5wCg>'o=Q(p!݃.E> Z7fB~'um Scn#߲Ag2D=@D`<=!̓gt+0󉣐y5yQurlpș9^z23(9$&C9dm0wDZ ms (\?AS7Qw1Nq>nkHДmڥBÀ$Ct^=ax'+_1gޏX!Pbm>8è$S v~9"ޜ PcAtz!@nݛɵ\@c1 `ܦEk't6c8}k$$D*蟞j8 Vm> V-?mVQ0ab$to] Ǎ{&cX}wy%9~T%z]j W n>L=ߡsi X^X<Z,{)Fٽ:j'+o)D 4s;e)Wd17VJOs` AЫZ4vBAo:d_bKkmD`L^a+&}|ri?@| iClzKg'UYJmUj7>?ÿfT~`>M(d6sg4r4SNYQ<8%^fG;@eO椕)&SRW?V2֛pvJw=^B]7\:1fi39Pc.{*(7!ك17 %Ў WK8OiŵlQ*;?ԢA 08 +|+9f&#eܺd!_jO=I?֑chx٫Eu1B|P<ʼ'P*ve|QVڽ ,]jwP9ݜ#*v3*[s_ [^cͩJ>'m`EmؑB=Z 'حB7#(>[U^ވ'osʥc0WnVeՁ} _b{ ,'!!ܝ:rM8ޣzN8Z9ٌ94ɼKGޓX/@b#+,.R #d4Q K⛁̘"1#N! -kY e{Fv6/5D1PD/z @;fb袶bϸۍnhO"zX\uSao 3a?qwla!I"ajì(a:)g[GO{5 E}h]W`ǮgAt:*ՔwPJ7_Z"̂^3ҼhPpZY@7o`%fΟ֎ޖ;t&pA~[(K7ZuWv# "MT'k|A)")ԀU^B*1,]dt\G);%碅4-ѵ8fLp[sz )rmou;zkn쁗ZvArʪFHg'By\2)vvnoRn0/iTV+<|5r 04ʴѫ3?vS[UI"g^RGD-  KG);t"o Il< ~Qfs_hWa%|=YSc=Xk`x^~"uYA\aZ4^k|s<TL#Mfl+P9tP)0§?=R\xX-۪.URG0!a/ίTBX_}N{~xU4N>C*[gzLskGC89]NsV2m2ثO=xNR&־k~?v( V2a_#}Lv/w(L?yΝo;]<#c±i!pPfJM0wogCP/n<@s ֳdKN T,GEJFvM Yo?mG$[>Np2;*#D" <1t';r33֚ vF:8̎r{zY Q!7^_L{/DшKTcFτ+<[6v SWyׯ$WiAX#s){fDsLrc.YAP\%7l{2\v MMG=asf8] )t 3j!`5b$필+x ׂ)&*Vct ycqg&ɽJv0V]߆)P4my2&lhͪեZ3=$֢z0N\>v~E y7a:'mS뽉Gqv) ɦB[wEVy*re.hfHr|*3U tHNod}bP`6~5*0o쿱@Fnb@uKo@ \H?ۚ,ȝrݜ|f: Mے.q8Sb#6B)X6ӪCNrҾ^OB/EU5oA,"G\, ?CLvHO.e'uL~I 0S!)fD۷tL4/0bdn9Vԃ:BbcKP>nOv[:*g(iBɗ1?@Ż&b b(:1gf4VdUñX2lq%r&ܦ.ji<)E.GW`D&Vkh7I0SK+h IaZkf8j;*-i ހ욋Ե1Ǻ9ٲarӠN,*T'%%& bi-<((R"٣0МdWS7t DXʡM E8$ؿv)fҾ NAn7Q8\^E4$g10H"} y /ȣsH.}Gԯ؄bb78W1z`cҿ!z8P.lMݎK%xIqdm8Utk\E; &ƫv)g1~fpU8`qvwbE]hGlmr3GFfiNC&)qKVSgqڎ.7 !C]#23(O%Ht?Nkޛ˔']GƓ:l(%toJhjZ595X!VP ƒQZa(JYݬ>4,g 0mOXy2HHaq) ֨Ku-WeLCD |`n=&7W;AsЭ^BnQ)O34ҏǤВtl &4fdC/ RzjpwLl;X)؆H0[ `1'$+/).lF .h̹j7LBUa*7%#v:6;PuQpy[Ay)q +2~B3z~^-uF.b: .`;V+9oNYA}6er1͌Kyx2w@."M&@qU_lB WG\>` $c蚰inlIv{(ݥa `xxi'{ziN)p (+ͺ>Mrqw+~w 'ތ:1nIe 'ʔ&=8]MۑBzWXq,Vp[1&;^yTܒc~0ěe ܊Ak"ql2>k ށ),+>>ѝX<+_.~^յvtD/Y-!oAx'ʾ/phoDYlv㐳>¹{4b{LTlv5S˴_1#dxU8kn+hKmjlwLZ9 zrj_=ϑ!WgS}5/<'UX 60{ady091Ƹg88+dFr]Ȩ@@6,MS#4 k=ffʓ|W?za"cBkwXf-Pp pFSM~ԔY?ښyѪ %<ɡkn7_d{ހ@#H`xI<T<(/nqNTfW>i5*>lc3 ݾ׻R6/']](Z9+V1}A`ZC[ cʮK8& *X:x9)xM+j \4XO7ToiOZ )qlWt|+G|D[؇=JuvJF=Ɔ+LPs:pLG%h::Tb?qH20zGN !>]Kš\1&s^psgU$*׈'͆ _qEN>=PuJfQv,Qq8͹#H!~Tr/g/QM~~>qAd`z6}Ouys[Kz2_ý%ym=jdRefȾaM *\m԰[w?I91ƣ4w#XvȮcMZϽv>mfxԳt3@DlvOLw  x?0Oq ]c3k KpvX5aHǘs T#y̴4+흳8[ ~s,x)HMK_o[th=Ǻ4Rf[n$%k1MZ>'wOR$PH[ڡ!y>4; d/z`UmI"mFY?t;4w(ojv&P3>5h%ʎŃ!;&,wI>g3҃*uO_>.ֶip xjjJ# uQhvpOBX?Q!U6TCΐF{B0n dOE. "z) 1x B{lhWח,\Y|R$BV K}=FcLFkʈ/ G^d)Rɓ$ȿ>_;mq:l.׎?kC,/6ּB`{sӧrU%)eC!`z@.Ҙɜ0 8d*\f"fB&<9'34ez̭d) (Fh`5gwtUEᵜ r4i)%ǵζ$BKTTV+oY**NUӈ*:Iwa\/#]#]qMrQ.$.Db x ݫIx!yo`gKNH*S}@ɕ˹M<9k(d h0V2?U"R8CVpzCbσђi31v 蟈xȺof B)>ss<Е{NÚ2D%O`M*K渄yPR>@$ۗġ}AĎ C/,XugG񕋃L]_u!-08 pJ:kQ3WꅄtڷĔeF|jk*-m%?328ހ-/ov3ҍ=m`qҔm|uҾ(QhO7AEáCe\g#SSH,b}AO<\K?UkATg UDu0ȥzE - n:sz'_vB^l.ar9p7 V^?|g2?YH0%G^zkY=G=]zj 8vA3cO?)@("0Cו$#iSigY5b< 4̡d+|FIDUp3 SUG#ܦj3(=eftM {Uv>|s}{c5֡#"bqΖeE# /9peE)mDk݈7*:^%C"g{\ՅYAoolO$!T .F6_)3߼7c].$==$=ɰ)awE_xqƒ[FD x:f`K+g>(yFAwAC`Wo"o9~}+tUp 9RQρn !R? iH`x z~%>pG-)OY%zHMdݘxm?5'4,ڕ-KuFm7]҉NVFڅ+mtGZ"A $qMbaМaPjjSBPc许j! R#m|]&syۆ0EIMj=uRt8%Vݹb1sm$ T֬v 0$0MbrOQڴ6Il9 vHwBrZIwy>buB UM : LkykMeֆ|SZ4ZB=FGnTZn#ˬ} Kv>'VnJA}7S˶ĎW22P%8 dAWGYLcz2QE۰(W1#!dUEl^usH{!u@\2\BYNYʹ< Rkd a_ l\ )y]N]I&de x\ԯd_F4^{t3oGmzp=>c}!?LsJ0 ڴn=Qf"yoM!2xr;k0vBu'( M>iWbE"޵b"^ Дu11j:KBB% R!óusnjQ'nbWJ'1:5?`{ ʑզa\l^YnFvoM%J6 ‡dքYBQѤPaϗ'!br#/L0zhŔY7'>#}p ^,kwH},N#N'ƨ뵃^Y rD1dz)m ;qd{E%tdV2"z̕0d<.q{.K{HR ȥ"\]IW`0fjfu91 b]OlP%.&b&1 ᫥݃)HbВ?)D cyCo*zZybAc`2=چLwOhUyꛖ c}J7r`8`W({qߖ?4?N+8'B5>_cuE6;b# H?l|d_XCR}pŇ-ݚdf,LdbU;VUj4 Re\zLfCb$LG La*ﶷ{x`P›G.{{QSIТd7$v:uQW\YNwDIʖ#Ɗ|;~'? ^^(9 yzWauy=M N%׻c݄/g;wʢ9+7$J*玻D'DW怆ouwЖamUa xFK2A%I'ѬX1'JhJa9ݳSC%)A^*|Ud ėC- O8k0g'`VE`U2j-'I`Pd}F),[pbkmb0 ǵvl2 tj[A`盾|˟Kh4u4:7;V,88CtH"BKaEa_%5fws@4jEqHf ~E$D68~٬bPO[P&ر X*i.A"聱"EBk'G\ ŎcKmbZ\࿱2 `Нv h|\ןb:]T,6ztdž_f~vRETI{l&TmD-SNEw | ȿY\O0ֵ_T/#;[Ncx^6@vΌ%oZp % p*I+[AnB\?׆ë_Q:,yJa|͝"?;4?[҉ <6 p=#x 4hڰl rBiAt6/rߜ<_~yl{>mOdZmii[Ph$B~db0Ut_yVq]6HcE-Q${4X*'+;3me_j>KHB8qIhd\pj^8.sm]ֳ)Q44 :J9ˀ11 5.H“kev]H XbYZ׉לס#MPt+O19΁PЧK{|8KM83jGQ㏱cb0N|3#Jke93/Zَ,lQRafnt5mk|K= -#e0B{>SLbhɎB~;.&7Rp,u˒]H<lƇd_(v`/DԎ~pJ+h8Pas>s(Fc=#F蟖j"ҫ:Sd`.~p<+抏2fi^ظ^R]֠C\%ƥ}4&duyѫm ;fv;~sஃĕL&v @2p6l⚓39,x,2"ν5s)բm3Y~%i9<](V #3Hb\>ٻXLcs=݊conԘM}P7A-,i gC|N@Q[Іخ<-Q8%Pf:ش vTdW03G]ҴYD' }Ҽ-T:?x9Dm\u,߃CK0x ,!UiaB*s୤.3G?*jH㊐ݔeTc\&lĚIV d_͵Snpq Fpo]ȑW\y<ҋ0=Z?Yc rfB .*Etbjtłw'kUOýcfS)5@g R"\^_[,&w$ع`CC.u*TT'uݘ܄oQxQW:9 o\26mgw׌c4FϹ]m (bb;JP_=U6؊-|RZV.)wN$M霸pSqH;7F{lA˯pkB-&d4~ -Q p=.L[.ȝXIXip^k/Ԟa13z=h.)&|αALs`x &<"CagzId>V,&PBI0&ip%)3dohJDɕ~.V Cz*zhTڈEO?d\ (" &<}oE%.0_4$Ӕ'&L耼vXs3mx[sQZ|ڳp>š\ JѹH.[W\ffB?d R,(n׿i{׭,qii[@ RUx; 5Op3JoJB?a{z*RG3֏=G(qק1 4; yA=z۱ImHbW #Gju|w|ᴻek=Cf@>|BLn" IbĖ wGyjlhh<*IZЪH܌m+glJ@VWl^ir̯&L+ܺ󟩱/0͈aڒF D6=HQ|P~m@6 'b*WI#V8 t*X(q[p[1L7x2iz9Ax1D27( 0*Eg'Fd&֡|\1|O/KZ@g+ ~s 8AsDC l~7i=;O|>.T_"، 屓b ܙJ_O7-MJ% ^G A4$=)27'V` J͈'z`@nú^;!)İ' 1΁ݛ9^s?R$s~4sV$f 3c8XF }3p@`LA4P̨IsQO5x `J[O,X}IVPȮX  ={}m{c's+j cy{yG+[0a쾍Җy4~gsoYRjDoٴ{%̒C`e~_eƱSE&)SʎLS!941,ҧt!-4N},АB)V8~wzVCf*~(:G{Οؠzx?;nw9?b*$HCo' lO(VO qNU@'sKdY~iN + *>Fs܆}`x՝Hc4mQ/+%,)r6:kYڑc Ynv] [;} )Up{FW`̈́+rM?kǚ$/;iI37sU/V{X':}]C`xQ-5 6N[pR5 Ug> Uy`n d:Mg*=>* kC&/ٯXW [Ww% ?FCTgj#Uf4Fv^9ѩ[37h@C^=ɔ&.[v8eCro>"uPfk]dcsTnwt 3OJoc%61MCz0u jt*8mI\"=%HyAtvj|ڂw-L;tLMa:D tx¦?c1$ܤb3 ` ({;N&5xlN6F,)ڌ p.Ӻ Ɋ5cbo 5B '4?䠫*/LU()ȰI^"dPwDQA@-:-vs@>z.dsvI:aMBRos9_FVʜggzrӰieԉ6Xj ǚ5kH3_qJeV?r">i-zcczJAH'_557cl8OqtJ'5p'Fw>%mw&TN8L1"S:@Wh6ڪ91zfj=-.Mhaw2Mqχ$ۈ|ҖM?"ZOeI[^7%dDaB`"dgq8v,x=lşxkdVW-26'6fpC`9DIvK_ǰ[/#ktewQ'c=Və0M4oIѕqEn KMʷ<% k ^C_w;,7DZ늜$~`nc#14`9lI}b [oRyoRhpHgz*}/DC@jAd[x{xHiyM14o^1KLjЦ~pk$0[ޱoDɌ+΁c$,6|LjyjH>b4',lmOxu[gɣ;f4%BJ}gRSE6LzpZ)n H%ꞸE(,4r &O`9@cݶ<=/3GMO\L;bBGjc?ō /7h3?FvUUX,94lVCLb+M(xӘAt|rw-wD0-kֈ(czύSAB~o& ?u'Ӿ,'cޯB|pZ} vՇIxFRZ׫ ƻk<=qXj2$1mVb#jlJJ{4^KקD}^,>MjuK`kK矦Y簯 D}R[U4#¼ڳs|%:x7>Ft㖓+6?)VQ^pnwu(D-`kU"D+F!/|6PS ! 2:]¦^S ؉c'r@ukV|)XPH(VI&s2o_߬@$IL)ov;!"_IQjս*F7Xy/<'\2t ++qI)nxC Ym "krQrw2]^cqR>v/!B ww50L{,?T0?P%Δpz;t-t:0!Q4^CFUɱX _c[=8"ljˬvnbV d?& `Mp7K' 1V`u d4?Xd߁FۑDt!Ƃ6DX1F:ULQgL\TzeN#tt鵎LHuç('O9͢ay.uSvW*)4f4eՉXhI[B{ϷSgjnc ʐܞ'*ct&+LwNĊ, C z.#&2|k&S xo<Džeʯ@_*oJXZhqxA/~-xxb u%10ק%|fjT-/k pP0F+Eբo#ePz% Y:M*&4HQ 4ARs?i/QCi8 88E 2sUU782ܠod3{)W[21>;-B|Qu[  c5% (rtQř;b;O},5|j.0G+km:D*ڑ;5sQ?A=X' ܑ ' p*]YV87w]E.1Qx{'o4+q:b/( )ҧHXߩtI_zqb$AMO.U,j=F&!#CA1 E⋐ /Ў'U.G(Fb#RS4CrEp7?Vysq<\ٲHJ cJtoz9إJ,\M{t_? D ,KӚͽFM/0n^$&:3i Y7&} Π{MKŨU&3R(>H3mKLG]azSX[dD:{hEfL ^/ M[7q5g1}JGgEe)d9m9 V{ bfG%} ,\UTGI2 !?`;~!B(fvRTg >֢SD2osؒArSPZoBy'$yӴ `8i%sg5WlA*S@rޞySTmc)+o*%k)8y4LkU{KH#PJBŞOr[]w7O`:8#\oɬ.IbHP=F.IU ʹC< '3%!"im/˥.MJιWi pJ9/^C&`49+b$-\:EHOl}OqB}__mBZ\ ,VD[֐ٯ&IL'ln!{ZCIK`6/)Jz%x{(rBTDgdƄ/!oP1QR߁#i)$,@?ˆ`8 ;i8XЫl4 7rmŰF{5+M~p;ؿ"}'[P6CVE{bB7SNЊdS QI⼚D` ݴb.\7?w#h]{Z`M Ue!n.2?ڽ'FR=G.ve[AOSG;4Z|sæ<3BfꤱIv\REq4Q6)HGت&zkEEKGɗ]X9E_!mH5)Kig.Z0VC_.Za(FY;/e@J3*v?3\OԕԸ0uy3biHط'p~|1>6j{޼u Hal*a0ɴ 78rV t&4w⧣_UiaMPE[8V VYZ)C-8SY6?^K,IZC,ThxgW7Ppq fNy(`Y*X!}1`'PezWf,XmU3Go`rTG2ŁCPr\)1 TdX}Z9zp'=6Zne[VO[Y0; >jQ~>?#,GpX]-R{_5 ̫ѬTb <5Jtr*̣+rǔqrdAy^^̠0͆.L8? Ht*Kʁ8wR|Z{S0'C=Jk}ˉD̮Y#pV:asA/Bf냰"r36kE鱝#TϽB6?:R\x`G}ei 8c6.詈OS,~cVƣQtLˤ,'g/S˰ LjU QS 8 LQfL}{0W_F:xRmĝ>*ըvPu o )ՙ> _3RZ8kڹ ir&?c&04pjkaQc%هbpۜt>Ֆg]8n7АŔ`>VIf؈vUnk3<+w8%>a⊽מ#`ljϬq# /~If7KZZ~GM蓘XU%\;G]0L2 ~Um@s޷U="ݻ +S`~<1ўp !,6T [PK*O )~-ܺ9=Pʠi`ah1B|kuJbw"kNΉ,=&*_1Ͽ#p1_꣕awdygE+5jy*$Rlqe|٭Kwzi8y,)]{jInS!m\ :|9XNTO_nB#H'nŤ^oILJ߭2y>go& _f|B$\CWv]UtQӖ+ΪhW"  mO(17hrµZK<+G y | 6MGlgN2QUֿJ;92ChKjqEAĆ1,UuьU $ [kFʚUږID)n;k'?5O秦=""O"Obt_G7MHȲDooK]:'Kz-$'M)%myyP$8lqʫ mNӊ^{fSœ]N!O )k@sTPSg~E!i>D l7dg9rO|5_:plEP_p?' $$92~sdY:Σ@I9Qv7kʑ1Il &07"mHbOeJ1 5 TgˣJ W.v=#GW0"S_d"Jj0S0 ZF(Rɺ=vsٓi9\WB$ {}s\x٭.nmoQ|{CU/7zU?Y& 14bOBB|ٌ f_6O]GJUWX\impݢnUMU"3T|b@%Nw'84L_xtpg5<hSwcv9(6Am[Z;;wF5qu˂Ջ*ޅ*&{Оjʅ+H1jԯr׽#.ZsL: nDCXVߴu:1 õD/k)w[o~抑]c'[=% +փ5 +^F.kn(dk$JIi&!2 ì/5#f JD c٫I#l΅QHG rƱ0fH"_ē,w![:dB8]IȽ)wvLLIYxJMPW͏1ۘ <)pͲR5:{pf*Ѹy_A:"|\CO>\il|jr۽fdRz$9PӒ="q:>s\\6]TS"8I0fvGk0k'"$nHu/լK"&ZsOׅ4} M2Q{~ r 'Ȗӭj!b+UD[تLYo_*9 `{’M|cCffn"XƑ:E(hg[*=3k_gv[fqoVО:X4f Z|Jwx[9Jr8fbJˉmҨM-qXLrv^>,j],~PZRnD}ײ'/*ثQ6"?FwA@^l ,(t\7:<m{7b"\3 Mos[f;w(1}#ټcxe({#mʌU]ٻ6goy]/!SKN"ZH.5ّo $P<"p[1)Z剫'BϺk'9jVv ՀѤ!ݙCr ejZibHh u'ڬ>7$&6uMl9;H!>q? G* uVpBm8d/[]\^ÏNPvDJ,}>B~UE{ҳ6ܝ 2{~\A4De$:VRP|L"(np/=U߶#u& Z~ W*AgʚXyVb;s c0=Xdű!YMeؗt\ Jż2' faǗ[$'y pt5{2At+`R1pPc*s;!>5,Z?yiW'ᘹm 4ٿUu4++ZDkҁZ}߱Fuș$wP0h͗fU'Sb>SևO S/x<Ou1w0% 4trAbjٕYMv0gj'5l/EfE] ԉqxr]Inׯ @mf )񐺏7X&u}k7fT'bƂ/7ֺbԐ)J Z1PIVjի@W )h$.͘$z"Gd]w wCْ՛O_Zķ-`&E$*8-06Ђpo] 0#| SqZWy7PݼD EXf^ ypN"-"r#gzey:jm5hPĺXyb- kNvK?$ah/̬Mb9Ԅ&۬CzKރt6z/4IrPh<%2L 5%0FEg{*^JgVa`v2ʜ믐AއcOQrwEYGz-DK_QEc3ڤ\]jS!6BHB6Tr Ƥhm!f%gj!6 [ح̋ z4rcQt/B2gUW\w?B^" 2{r#4>R7?ò*Vez^pD'F(CBT =Q;b$xk UWu 0? h]hAzw❃{ιrmz'.Rf&S|𡂭 BH{l6a${G*yWJ7{3]'!G/|л싳CeQV8#cXc,Eew~!j*TQf7}tFՆ0ʩ94w7j K=ö,<83 bCiڛ@:^Q%nm%aWRT ~ a+"f7Yu,Π"ǀhLU{ϝwTP=-T?d S`Z03hUFց8 (sMJy;2cvBwf;*vރ@bؐT]H}97cy7Yn_rsxߓb]7W:2[6)wC۠i/q֒VT;>:zAY C Ė莨5z:Sa^į똺]p.;pÖQnJBن VFX;G7_`KQX\̒nQG+\ʹv&y Px{A?Â*糒z [_p:"M©Wp@4 gjg]m9tX}g$L) $ŪN;9TYuEb'Q.O^# 33$y3i2z6z]7ſɆ,TQRu7ͱԭˤ>{wxm/JnYe6P\|XO6bd+ϚflAL-{xƐ.@0޹aĻ\ʆ{o_&Y.b_Nd ~ [̲φ 'Z~3*H^''! dDڣȦ%ot}_h&Ud4BXm݂^,/qR#%y˞"FM;hTKӶWַ.q4-Ibqm cԝ>w(C p;]=ΩcC}}魂Tx$1S꬜mC,DwX S1&P'Cv(ÄY7ʒ r-jg@xLJ۝iRLw }Ix*-pM5BGU0+'p;)ՓjP)ayW&1Y*;yQD C'ݑ{ dq< $f+xȴh:[, &"1gů[P0g g7n'˂52y@[BX0ߢ0P:`cq]1~+GڝPI$[DLj,ŗE;p.]5pd`M`*\%ƔS;s.UO.jJxO0Â/o`Rs<{8_8̽  :|oot}^y7 b "c͂C;cԍ,Nj9iܐCpڰeL4)䀿)QEh58 G"[,@sL0H+%jܰ';RC2 ;HW-uĠ`$LwGz_~)r2+g5/&͒!u\zDen5h_e  Tk!ə w>J-R:3\#bbjW}E HSUWv?-G%%'hߡq X\&ӧ,~q1JLQ`Kkۋ=_8R7-ǺMRi(:Rd9( $Խ`Ȝ19p|Ys)*Q]w@٥2x r5I`R}@j,n6At}6`6b0,iRb}Hk qp5KՐYSO)8A'2N7#e /s=(Eʯlv;Apo6,hl:$d  g{őŽV ZHK]Ԧ Nu& ֜RQKœZF ~NNmnA65`)~mfXVLDv,Q5Nr,CA1]L „vGȾ! 䉎a ?_+y87eESN5ivٟ[xT[ˌd @ 9t'):QLLX۝nQEu1t#^p)rY/FI 1E_QodN#9 a`ͭO)sV96x퉽OJ2Bȑƨ:MJ2{ѣ}Ae/8Mfm/Zh=ˍ΂@zC 6 @l d֣S&kǾD1.5 5^9BI2BR0GyN?|Թr#*҄wmA˲(PQg^t$6$!~1&(˜#P(A~ؓ6 Ѽ`]Y M%?׸dK &-M0R+В'p6XS8|2?$f4y!F5f 3{~y+aRv<`b3|v d9\p"89+_Ea?%clzjITjHږ(;H.=>r3-A^ h!ފtL0"}b7UexiC_"&pWaRE-Gl` Wì9A/kq%_1Am#l8 1A(]!<(ƿg*ThxЩQ~(C{:q M7Mi<_/V5?^FĶBa) V#>6o@m RJ G3s?ⵓ2262g3-mД#7 i@#mHg[UN5>qzqLLZ?;.Z6ڨ U1 KtqH_;xeSʭ^}xyk_TXu^x ~`5`7>,ۋoY knYs3gW~ZݑuIf1h)tH򠽙ubG޻VL`S"#鿂=qzG9+jBt-,Oho#vQ|׼2!ɜԺ0pjop"|cC=;U#MhA MG}mEEެOM~l'yYF7PXux@ m9' v?6RzP;ϳq/2i !s(vGQD9 aJ|C"/5+V4}X^flC } 4.fIucm/-a/FAA4΢]A6 $e>H k/Gk v<`8>>3mͩ cyQ^HmH{#g%f"x"!R:pI^&<L Y‱ަax ~Wb1mGNg'x I k۲<9tXKpsS=PojL_/%@"*X&Y ̦rI 9)H<(_ ߔػT_2>b*P#+1k֬"7a>tSj8I5ja$cGV?]]5;i]vhC?)9tE7M'7?nzQcn@i}lzK.XU,W?Ֆ~cY%gהj/ņx\}Dj˔eй&PCWZ$Z@z 5g7}3I)G;2}.N/;ՓN͚_ D;7wmTQqZE;Lj~TJj]Jz<.;u\ /U||'Z9l|z=y<ʑAP|}WZ"{K.{Y-x~fK܊B@~ԡ)FBbyI? *Ё@6w_88]7oOiCC]k P7lx򅞵-asfS}茪=8Jի{QMmy; c|)Ea4E@[qdFW?~xW,Ԝf󢀨G1ȞQ9A08 L/t .nJ)leEsݣf>P By1ſF`."nhJR?uBE?zȋj ʄ2T{!GաE5`X['}/x y bh9R mFE~E@# a!B=cJM3|y4^ AokgŧǸ.n:V~9",e(|h#_5+Щ;Y*h7,KnǒyMɨÔ0EVrg g薝 6$Q1?z1HB~YeX]I&I"Q)4IW+ ]A/dB{ظ/'4->tvisy;QR=H8>zMW9mS ~gR6Kڱn OGkkEf҂wh5h3'chܻF]Ύ},TwsFr;&YcCFr9_:Dv 1Y9A<ó9p8Zҝ_I4ˀs9iv~_ϖF? ,n+h汳cWs?ӒK?+m]]6]gK-b,.>qt礠\_}.qǫ\NZLm\Iǧ^^V 10s8jtT+t]T hd[}u;}ְ'ߐcB!-~t-/ fl1 KPԔQVP0@F 톽psCD_Noi MZr16n?`*JzE2?a5zE h!jSUv-B7bTk+i\{u P7ءh¹Dx(>3`1 5v[{Po{#r"<(.;;HytocgxCde3 Tԅ2_*$QWL2z*+|[t6wj"fP2aJ<{9z|#Gym g`XXqMBǹ 'b :>D9H^ASyPڃ1yX8-JDώv<μ}"NŶ P6. tYwdM1iު5=<8LCgzɹblP K#U'I)&Y@! nt3o~?0Feif/^7P)?2@k9_neYi>scȨ/q2ݍSN'Ou~9c3=: l׬Zؼ<#Uy9pE 8-Nxq2yN2a_"ΫE=ʴJ [`YRgt :/ \?T]l" x#jag}g'[l~/]$ A2dfpVz6H͝Ph b _X}e)u#0]0W5ƍ^]{jM73Z b- g8W Ǻ_6~6Z}yPs VhX0X ).C̳Ϫg6ăo!CR'l9 -+M<ahZ7>)LL+vq{h&R{[U|恃 F0"8޴~a"b_da}צ 9Ɵ%8,)chU4}BbݻyӤoM\sq,Iܪ· %wìx*3 qHr?q q^uSGמZ8b|AD`gM B`Ǿ^T]ʹ"J[%8ifvH=y:Bah @Oi_D(2DwƄlI#n|1CWIIݩGip1g,&y"W{4v Zl#'- 0.9JBm7_>( ks$1/*H|Q $ pr%~VUP6xkG[OF|%y?2E*qW#!w/!3_t>?Uӟ@ݭlcS9y?d(lgO4G$1r[ ,IA G:\b1ڠu#Ѓ륩50.w=sCVzB[0jMjBQՎ'(B[ɲI"`x߹ݘ*H |l74P0g&oEs@W}pN-L1MT5f+WaFr\]Gp @$U*<!|nڭL VjjOi%ԃ32yKaپf>{LSQSc8wCݦ~W,îDj1.񩡅LxGf*ֵ`G~ j L͗8^1#$U0 E:Pl]3OQ,DɂռVF{ז7_Vc} _VaBjTxKQa»oyMiGX%qHJ26[ 9m$d %GuHP;H#Jv|2n0qD͘Ѻuљ|881ˢ- uK}/^s ⭐x|/6K!O^6.'+!{/ҘJBJ!-X\ ӐySgSZnaRz n;KuITS90Qgv;Q~Wy'>3MLG )91x^9K 6uʪc/{fv=\OVۀ>ap?ނ[-/$d?lS>&5Yve08,s(RWJݼk~w~dK룎z#KGpBp[sN[Uk|5 V<;INEE)@1iApYw'3?Sj)HKPxso&X|ɖсߵ{u 'ys8*T=@u>Fhk.#/g" mO՗87GTԴ8~lJO(/N[e#Zz㿻!dU{UYg\}K29ϼhy59l SL?Af6 ց>XB,|o@I+>J!EPtdOdF H?-Nǐv>D]'k'T쫪gq:_%(*۟ɦR"QzV֟]p}UԒ7rT6 Gc޴4I})"nOWV̝ _~ :!G(HB(hjma|lpp3e#1j+;O,_oÃi *PC\@ggܸ!`%PD/}z{V0P~Phkz$p~}.u7vb"'+$xճ؃Z-QekhS30P5RS)v_ߙMЯ!2ɕ6#K6̮ek_ΐVvh|GqF1l$,FxdȰoF-Ĺ/B2ɖ!]aҁCX}>o.Cѝ'$"mIyn]~~{@[@jzHue_EzGqWU@LGKcS.R"p_v>@/ibO?e^bt쥑] 9qU(ڈzNǡ,<$HghEmηn=Oz. hM(z$ n#!Ʃ ;\4pñْ~-s/׸w!6 kC˜'^yrm'⼹4Wp"L`3+ZwZ(z^^ЦtKh!B{'B)ĵ >}ݨ Y%aA9#k̘MO5dOxK|a5gsBq!M AL܀x`@5dl$69dj[U!-ۋeJe# QyXNgE%F zB=zǟL?UЛJ@7kfJX8U:eT.(H 6vt/WOـ+>ӑ€I^)A !RtGcAMg^Peɍqi[LӞK c\wHe~J \sߚP:MŁc F̆-J[3=h5hZ>p[ՠ<-)g>pe2@!zY҅ɬDu'4HbIlkUp,0s ,}Y7M9ft ͷ2_"Qhg*#mWLEeW@dJ}hPK%Lx)(wCH.b51M#~, DF+]fMb&mJrȢoBYPf@V߳Q7 '-P;qoQ1|!/n=!hl0CjY<  ==}zϒF.EՓ_ٕ $E)vdB+otƕ|~Yfya0+pbsk?~蒞+$}Y}&Wa.h1L^gi! :c tl^=uIC<w 2GaAv2dno;I7\DCq5hNqnН]L8N8Utzrp~qt}Ӹr:0驲-' !}2f5- \dԆ4ͤ=s6> 셛΃S?}?f0FT Fx~$"EA"BPfM0*5G@W2z/T4{2e=߭ob2Gm);BMSJz#+QhvhXA6OSʤA]/~=&cJaҬ.uqkiEK t{&\y7\t*İP"O4t dYA~XwVKfuef\s@WMB*@Crb g2R5ʿMc67,IAPmܛu6=@lr/F,uc<4A+W<ړRb!eU3d~~4W Kg h%--h**36"b?oHk@tYa(Gs29E Ǧ6Z@F'`Z8Pw<=+W~u#;GVtq tk`|A0 4z5ci牼 fxo^[I7T2zƢi=j/z-9O%򋣱P_.bg~m&;wܦ_Bu^ \a7e?=XW=XoiL4 Dm(01!e 'OqO]и R~Y@ԯqR\l/-_ć3q:sr_6o-д ;;8M) yZS ;a` /Oӂ:r/䚧(ٖ LV "Xr|yCn?+51muao1UJ1)t8lPZDVÔ,mdkuE(@_ -;4PI %5D/ }[FnbTtuKl8nRbȓkר+eqd:!v 'x2LŨ7 %y /IYkvȥ)]>z`WgFL aM+*3 SOHf)#SUp㛡YTԪ=澧bU ˰͔ːi5_)>E t4ܓa (:scW>(Y2lp !:F.!ΉvTPvǃ9gڤAX{+v4|Hɾ3z[>㫴ۻ<جRAiL9VTU;5_ԞU~BO\)9\>3Qdy& UdY"AIN$U;D?dVwaʠ$U޴bwfF+]jsaQ[gBz&e>k qzQ3]JX_.< Fxv,Y$rz˿\~)ު[UuY l]h$"ta=Ao a|Gy$Ӽ!)dLz>RY(>Yflc0#̀J<x+4'U+WٞV8R? خo3]srO ''.=įr)J26I̍kgA1iPw.jaepڡ>;FO伽NɴT2w P4Q23TzHK_v}1Kq)țYd%_n*Va4+wdyg]71ԫD`cS?cya98*'8\{AGV&Db(H`{r-v8)Ϋ( +S8.|OxіڀA(;Mkm[Dgc}B{ L|LyؖOXɰE?ն*to2qٛ7šrI_~3X8"%͉r-e֭ m;MU)!Lqf5'>-<;Z>}3@M8'"Tx\+INT2zнa孾%uis WEɅ|5ahIxha s`CO3&Ze*Ҵ4A8h]AMwc=͑ADh&Swѓ #]M/yHM#qiSܑ{kNu fZWf.XEMXJmpsp y@*9H3&vс,*$HװptVPMM ^N[Α^|Bt30'$[<eyr/;4V]$|b-/1/Dn=?SM@I E1 )eo߼iYqF~a`ԷԈ/I8cg1ڱB[5rAb nF"#B.4 }|%PU3?" Nqi ȍv][}%p4K`ڭH ͝wI1Htjx k 7F=?YU .1;`޷1]Cӭ$}n93 q MqH69'zsH`ѧs)lLBs1 X~*~uطb<@e}OE;Nu-QBlo aGeíҹwn9iZ}|eV̑Iю v)ntM %ҿrs#Ad;k( ".;ybȒ\8}hP3CW;ۺI.t!Pأ[M;ޛ2ZZGeErL3_͇pkj+ f4RTFѡ'} έS B醸nv2'+D`0UC"=~BApyҍLHnz/"4qa?AQ @0}#LJePBW0X _YwąhTZ} [SV2e 4]xuI˷Ȃ KG ,ˉS,(<+~fJsJO!y9S2,Wl;q45@p&E:q%!M%i@s@%LHU3W H#Ts{UhiY_9uZY[kB#.(0✟`0'O$#sD_OKbrH@$*:\o7`0?V:ދ#50Y膝<UC| Y ȤŇi9 q$4RpnBؠL1'^ob[nzV&V_H~Jkv~ߛ]/?SĄ|AhUL7f5{HcAG>LB)Ȏz='Գ8Z+ze6TAůC$h+"+ PGc+ %i ȷ 'FeR[4%Ӕ3:v߲Do㥂pd3Ϻ7r# w < D^grN3F5[]vrw\43:~4ƣ\ӔAZ*9E U9䮆38{ Jȍ@:oGh׋~Q핽O~mɜp_h6lāiI%U@@Mec6 p1c ot|W pgTWFۛ۵!Jg2yldkok{p.>t&Y;v`e9kfXʏlhd W;{_ QdNoglx$7[ aiOԭ>[  ir'/-HG=2Jq|mwv`&n 9SE NL'X2.5bCuKB{jԭjZFU g#[vr6V siμc[9C4h.{h~eV*%=9;Ȱ  97r._g9pY`R4 !﹃O 86R+iIL FDbsMuyTYsy8 .Ss0$Q&`x,^$F ƒ(ia6 ^cT!;|G`"|_Bq PIr\ˆ#D#kaK7IȇgmG cLcۀ #X&r 7F#Eް㚡X{J;5P@9BS|AA6㉟FHj_>$Dw>=޹402fD7QY39g񐯗ﺠH{4#E&"_;7BTQJ(?Ѭ<"}$뢰H<w, S7zypo{ay:^{M 7G e϶CrtUdN>{[B:$ra]YW> Ejt7LY#~55kF*U?J(qE@E 9lxR t\զ<ͨtxI^P5VQ$zٸ [){E/.R:iCQ R=}J|$U &vun57^8C^Ml:E6Q2dƷ#9u>.<C"|ha!;n2>rlBl2C{ޝ}xtܣWYEy-5 q O,'Y{k8ڡ*yl43GKgGch:I%y#z$hL9cZF7pЏ3\)UEѬ܇ O4HC& $-0ӃaU2kАq~bdxPm:nQKGoIW#mJl hssRmf|Rmi@mD51ƥ!E*&2!^.@dλVcU؄K&GhyLR 𸌉jj{MaۉU4`% !sQ둆3I_h%x4= Ghu4HkQY3"̩R,{8)K#>wN뒦UXK0wCo 4vɠɿhrQ/r-gU Т޾9?!X}JK z _>_'а]>9- =ZP <wVٗZ󳸓w+FKhL4vrkay Q v 1ވG}52-M^XwsMp,'UԄZ ڂ=GpŸG*gRށexJԿaE"JFr$eJ&Zʄ=ky0(6+є .8h2m8=9M7=*}ć1j SIN:=zRH E`UCx⯭rt<5}w,VVJIQsD%}EȽ`\,6Muτ U`?No>xaҰg͜8 "W |=DFՐ3 vwvGv2c=or6-E$;l/ M9"ļܱJ]Rjƹ(0j4w[2T{*k6xZ3szRӖ%k8YCnL:p(N`cٍebm%/3wɮ^Mֆ6I -mXmXsR-Vi9^S:9;ͪ_Ț_y:(2v̲|RVȮ~jmh=߁aJ{TУըgBKC+*nҷP@J24C fXmk mTAa -_LCE>2l躐#YѠ~IҪ?jQXKF1;f9Mww ")5&OX$ 6l 伨`o*}$YE 󃖒Zy$N%7߈' FuZBcAeS FG WumNĖ{d:=\-#\r.m-ViĢc P@2N9xtXePWMpw*9;s1,E)-ǗMn`Thڳ?5;@FoVOg3W=a0kt.ǁ}`?SJ]b[jMF~O@%h&dv8sJ8Ex?o8 R:ל5ЈG/Ok %(=.{IVNL6̼]XB˹ Ƴq⍚:9^b/,=Twg蚴VYi!$sd>W^l[/ 719U\_[bDzKpZ- !]ݐ21ڨ[ߑU9~޺=؈$ }+Bf[._!Ee򾶁K̄)i0pQ)K-'-;[0d0FY-WfoF0OS۠zmQpt/1}au TAY -C O*Mb +]ftېijKIu"xW>A)T3}T<`ry܈\VV*Ay;ԲFuJ'2C_bU.Ի5*D$ uh#a|Ah"??:Z 2{|M)#mp>s# 4˜Dz1 /Rtbc8r? 8T_h5N.?r>@\󼀃{_"fq(a 5ή(s9I6Dʚq,A˾NIi!%x沀$] .#ho\18ht-Oy<6Ӡ̉ 6pyT'3ʹ_mrg淵}{='0D#RNewPyľVe`U4#]uqrI#hA/ҕIib1O)kܸ$Sm&Cg(DkU ^.x@%KѷUΠܚѵ^wx+$&`GOƖp9Wu"xp!A ^Nro(ᰱQ 0l_YDlSbKKǡ+ 8A xTl62Tύ섑7H)v+t'b\7Slwʢޯg5G5p4tUӲ(g*&ST܂r4_} 3Ol7sao~-nUOtOьP56g̦UZD嫛=C'n'E%쿶;L •S:^ k|_0{xh7F9&Cr1 Q(\|-FFҴ{{k]y֫,r.(/+T,5H,_kP#8,hAYtQg'Jfw5x IlK)_b1҆jnBb¾Uz%U<0'6Ͼ`M%yjtgHINLDϢiMd1겼yaX\zڟx?{S{6.48B7nWڃSb STɸd?Aq[8@8k D~X)`l1zB:Ħd?cuw&q>GU Y9Ljgqo$;tJwT?6!߲>#:ZyQxuqĴ56' ^0e*|z]LY:7wugG@T"nw -ykűh N2f+NT Pd7פ`} (kL"%YFxZ}nzHƕN+Qo(XlȀQQxzuG5R! E{fKmܘ6,3=ExSϴʰXcԑZbN-T7^#La,Bپ#sG<7E kesN?NgE~Үw/-1+5I)sU8lE3ɁA)ӽMYʷm#CkkIpFt ceWᶻԵ> U)Jh9FZ %= cS!h{_LHF$sS䝮rF/%^E:HQ*'ZeJUB^ޘ\XIu~xIJaW#`;LL ÇF{*-# 'jfCO J[A r"MX&cؼ >G;6*5<|a.#kv"ѿ|sBbד6J6H^UhQɽ!Ie0|GO*ː2WQ0jɿ,Tc7KN,6#66jf9ZW}D:?-vnG+IOS_ȁ Q1Xʴ0 N,ޠq84&{槶©,25:QyTTS1$&”6z b}V ͊hU{R#]8Zqق&g.r}n=^Vn&ؚ bqE F&b`LA7g,CZ<]/ r=>`fP+AHوf`  Q= e 3gt1 n$O6`uePN( .*ab>BE~nFRgBZ ,>WH'V8o yu’ҚJ'^vIiKFE 5ЩeA"+zR7QRKJLг5yA3l;kYݘGý}cmE?98L=U͚i& <Dt£  wǯhMT`OA4Dnkʮt˹/5\Pբ\S&N;Fc(lO¿Yo/`LL@ lZ/gr4qAR|<Ϝ%UnfM mxN3F]{D9\,f& JV(}i3lWu v08UUtIsL1p' %oafNV 3SR!a/<5u#GPd_n ߆+0}z^`^- wJ-qyI!dH<6Uj('q$%g]c_W@K%EX</4w)7M?hHZy}˔YKUmmsJBS̊4[Y bcqnKɟeuP:V?^8PI Fn$YaHyK, ύv^Tz[bLOQ^fg柦``7DfA7 hp v(Ҁw"oAr%IZ]' g@a4-nAO,33ovP:/ qލ dz+RTGTj~4S<.+4G!m=Iosy#f X ^JYM<ײ#6s#VH#4- %.ĪBA8v% a"a_٥cwiă؎^=~9I'.5Fm+=bVM[_dBSB6$ү.&h(#O6*cWa)j>Έ+ltƃu.ʱlc2a~B }Z|X|6+k3,g]S $zJH8p<#mhƖCS\CF pߞ4.*٠3Ή*çx'#<1MSقa\Ö\r݋k~"]jm쀾0bͯ-9A/`>dŌX\&λm (>א"Pb/o5፦k%^*r5+>`=ȝ"vqlk"&, ej-7PZjVVD6V˚ T9Lt< {eVXQ$פ3U=ώ`D\ZZΐ _f\>'C5uR_/w奄1Nqkq/ "=ۍn|<8f B M7?reEc$F^(w(TR,cM36QA'0=.Y]V' |7"}a[i ]k+;kCQrكTgasj, 6F1D3>(4knNqO7ʅ'ʠD) xRM--U{)?u *u"lRڶPVl|֮Ͷ UI8TsÉqL$C)q)e6xVU%CC Ս\3tpI~=.)p`E-Nf?d°HD+r:ˇ%H0c 4>JɰҜ#MαFP#?7_Qf򕑄ߵW0#y `h™oXl{UEf!n 1 LX<5+=d[Uϗ j>,qMI`]޾ sS% ˂779 meZ+zDa.V +MÙ8F.QUΗ+!硪~s%N+5PfH=w_{o4߰c[P`"K ]yy";Kz$f@=+9*1OfxF\S!/uvrSV;SnuN|~J%SY!JdÜ{ Vg$-G$yӽTXNfzZ`XJU %3ʤK> \y*VdodZx%v p[~mQ ~U> ?;U{!oJc_Ijվ+?~ݣ8[I73Ǯ@X AǑ~4ll+v._.֐ eg'S<u:vBPt!0p 5LUG4Y ڭ4i3û)hP<芹\*ehQs)E`7t?-MkOK>=Fٝ0 ?Юge (+S&.XCU&*SOb&sLt/ӫ@ޝs˗s`K4sf˥b\wRNֲ^* 4U-/5Y 1T%_Pq sڔ|Z<[~.!硠LǃL^~> ٯcL3{[ 两?J&HAcF|&1.辚OAtG>)ſ=`@xr 0Ӿ/8mri^SK+k%UsEFд2/4?[d Z@2V-7T9 ,IɅnoxNѢ[lW<3}kS\g&%zEuSxjnb0I^۩Mx`X)׺0 3EY;3}ӻf X-WŪ!#͐ ?L3j}VC38.Y~%IfƨKR/}`&)OάbD)[q[04",Rv8vc^u JyHp~60ksv Ti sB [X,3>g :Zؼ-@1( o5(FW 0jme-> bG4)#?'D&a.l&h83e  ZQ5uv?tyX&($Dv=`#'-;cfPҭڜj&JHX\[)$;#_૮;!z."B4"IGA~aYԊY3 OzdXxrbfq>{K@8 עg5N.fމP 7ҥ~ƾwtF~6|-FSF2aU} J߯/S7}ei,}Tl0fo0f]lx&IAMwTr#4$F8[T!^I]ѫgt{|>^%sF|[_P?(B`~ @xe=չ@H1QZ7|ۤ~ /ʘ񁔨YvW}AӒ%4H^&J>ptv o,~FگZs6)Y*Q* 2eJfMoɭ3U|Nyy!} zOv韛a W><ڬۺm=_܉EN~)pӅZP/y0qÉ)jo4osc=Pbk8o~|s "𐑭`U?>*u$xOך@fjV+Ԙ6l X0YJoқĠ@z}sI66(=QYu=1dU!"f14I4wg ]kDɉI3~o>PH<*H\G6e墶;%.(C| qqp{$E0ȵv`[;fVZ`BDkd,nq[({cפMCXJzqI .ol%}+Q'hDo=W֧ݫVFy,%[v( g1snK\ρKvp$G뭐aB X#!oڔ ~<K@?tANsրaD]0o~-[n@)渚OYv)W2R{=4{##ѵyks N/ѬT'IC]FV# Q.͉Pv )"@$d+L|wta*؁wBd ۺ 9̪3mvNH"۟Q(|v{Dkd%h^pC9Jf.X{psG6m`x^\oF * ˹ʝ>=m+ Lw42}4ck9(:۲Ih4& .\ƅmp3,~ ~_A_}Acюg׌G*J B3vF- X9ő.wN^5no]*{_{ eEΦ@!CiGP:H1Yf~>}0GsЎ|d?ka `|8dL,XWm2rA݃"7yf(l% lF]ah:]8&Xk:5+k8[9`oeKk4uV\"e]9Y6aNMΓfȸ 'wueo;ԙ\Gp~~|s`4ҭpM) Q{:e A@O \ 6MY !HޜK~K߬f=%lLdFYdDH5)HI- ?t(U{i[%ByS7= ~<p:1:O23:S|ֵR+_'wl {d r(nM zӍIX.JDACȅB#ϳ=6sM!?%2׀n?(֗HOP!vz]\88AץڟBdd?n]eAF=!R`lHt'xc$0p~+bւ]i5MԺ|]aZ.-¹AY/o".0G(x K´3jS:8 ;K]M}R:xs'V^T [ig-V1|0!mWjʛDRJx9yx ?ƣI6]H¶,{%!_ `k}B5T>$Zs2DSifJRcT;L p5yﬠ:#2q +Aq+i=Jx*$? ]PFecf^?d3he8`jU>YW-c|-N.;$?4!J%ބw^ S[-47=J$R 7oP.yH/lY Yy4b$t ^8.& P-dGDxeJZAiCzc x=dgptIJtm' 򞯟CWVrO;.!8̋ Mxm(*Ͷ{)ov { zKc\|x6 =8 DWuKmQ)%j¦R"j vL{bo2 2GULt~qR>Y#"I)Y={VXGX-\)iUX-Cz5W%R/˿aYk\9X{_1V*@ &uGŶq?DCR) A!LgQl+zòv }c,j?`ZZ.N`_)GSms8?E/ԟL5_kk%gKQsZlA6(记3~˃ȲBZuo~3#*k_YdZ>DGA81\Y.e(>;\ <'aY?AQ_VH heMr\'vbݖ$gV_|HX^JsUj.)hQfv_:Phszכ/4ͬUǰm*0.!8x+}Q@{F^LH-S=Dp P|åI`2 EpӣJwxJOtBF.}gV te;d<;s-3<19kPd=^huMLo!B lfuntqkBXG.}Au]IA,"ſ%c?Lp_;{T͵ń>󃶀\s7ΰfY2-K^I +A .HWT05ved9YHRUYﵕSV }9Eq4zU᪄]fWТ&-e] ]i~e?9BaM&'ӴTbmj_U< eUдi:L?׫N&9/,J*`wJSoоz5?f.8#(b{ĠoX-v9hloƾۢNQFx̚m/N-9FҪ {('Cs2-7fMl%Wd%o"qI؉J8Ez6U*CE, 5[{Fq;\ Suٹ#}hv"ȱ/jlU-[F')K>d_sA|}__s)gIʬ3늂l" uz%$|]]zI+;GRUSzR/lwXQQD%=LFE ny hEK Uh3hKGXUUN!UyC10+i7տ2{v榎: 4ޙyn^4 R)l $k;_LW962}4."|CD\_f.\x}zfqd^jYNx6d!`w#ݷq?.L./,Xm*+criٷ"o_Ϝû h oe`dފ\Buz٘{$H }#=I/ j2zeu<TIx7~u#V!!G@d,4a8:l> IhK!}ؒnA%J$mGG|O^DSWL Z# hL]g |Ōz317~qubi/wOli<0b{c\=rKJDݡEZ٧ O VM0(Bܯ;pC|*C,xUz-Ǭ1|Kszd+槮x>ytHvW o:=O:}|0 v!hNщzŞClnRGѰ ($yb2U $%[VYZBSѱ⋖0lk'33bʍa࿼]c,hs2nk)P8rW`c$`mʋv(k3ѨTST hM ( ``st0poQ6-5Z),3E5ѐ]Q-C 'VdGfY XeE[ _E\}oG nӔt9>\;$ nw\KsYwWr"H…ۚB~zhkyEwh`ꥨW wH.#c_YL mty{X&95cq)ƒrɮ$GOwƜfM BzL*F6{N84[d/ !#ݲ6{@;R0@=nYc~ؽ0cYg gQհ7E'lŸ02N0}^/<'İپ D<ōtfVO{!b<($eo_ڒh?R/ȫH0oyS3Uue](AtiT3VC LI9 #H(xY'>3z&״1o-T՘,z,wa6ݲ`;66?'滚`qi2WW|TQ.Uܸx&c[ 2 铵Ry!Qi8gb_|D0łzךj]锺^pj?kK- RV\'tn?M??]jӻfy$~^J\sJھ= 0^ILޙĬ@yZ4VaZ<ʞc+~Ly?Nxw@Ţ6E5Ko_qvA^I_>>|эVI>_jXk SSO3N[t%珴t\bK;^#s&`'t-iS/>|#Q튄$*N+h49 }FϊȅVmi1&#+-u5.į(\2Nbdo =X͡xN9` rC{ O]ϠNrE\^!#%{dfA 7D:lXZ+} a"ShnWEWPV,~:cZAS]͚f㔭@abMSXpk@m!eXTUh "'xd=#b{Ozyd1۔l?{qQ>h'#" :'0ZڹCa;I(DVNhչY$YϒΩa_ |q{#C? $f<9F ؙ\*3?3y Qq%{ۢ]I@oJ{8ݟ%׻E%DZzCWFGyjp JW-uwFc);^S|VܸW[Փ` ˄FK Li|Rx`[[=JMk猏O!z?l0(!>bD.y~mdvaؐF Xh^#N.dqln^~?VUe/bl&b@Oܑd{- QfP,iG#:_λ@ǗjU_x~4Fna@ >£$WlZ|Ԉz ͣRaTvt\53&L.[]H6(Lar͙8NAK?6 m R Q~2R2 7$,^ %&\ !JX:Eb=>HLŘqϰJBzUȆAG >C1}['xvN;t CHugM2.A : |6KEU޻/^i.:i';0W=j]hrLyY},_(N- JKpX*l֨MC$D, PuI}Ռ | TܙW `; g7be!hR((,(dD@nW{@r"k-ťq)jB x)gB&*YqV|Rֶ3&TS{MA_3'f?)&X,WJ7ť.HSv9B[{'۰83opкLtp%X8-rЍ>J, .AL Q%HO_a )3 8$سS=eq@4V3az#Vg%ȦW%R:X}t@Aê |9-h~V>=FGֿ&VZi%c|\ܗ!`oxN`;"`S[7Gxm W#mU~U%!OmupgoJK,$ZEjh& lW7ETQ:>QjVK" r\T.%C=iev ʵPy؄) E a}$̬b$/ QYRė{?<}ũ=}Y#\4,xigYU۰2*?ADph2=amVor &aٱ?Z -BjMvq Vl>Mytw5R8- ޫ@?TqqBfЮU굂]wֿ7SF ?|ϥF)nEtyW, cpk·'YDkd%o#yS[kSM^ZASƯwA'~3ūF<:ֈd˵ ^3V?'S)WO\MKYG}JU mAX"ԖR.]E?ra?2iy4hbBk]C/PfUIkoL]i`z(QCbNH~A XbFJ};ޱZ{8v `ʘk7uPӞgdEuL@ō@a9_m/ wuyUjK'BӐ-%6T` 8pDɬQ-4,qBV;&ix)u, dœ`ʛm×G}%E[3M 7Sn3… ŠT$O]hH=#O'yR(jnm%:JO(7L zf^ͱXOAgAREk\"VS<;KZfX{B8_K3T f3Owe8u&(Iа8kb 5T`FBr\EtͫwAtBTtoB^윯2jz7*1^mݯBOJő6/H SsÊ[!&a &.%K&naƦ$LR)=zi*X>/{"Υ&^🥏R{Q=όJ_4Q|F]?}s(RST vXUH'"Z`$4pjҺ6%!||3#b5mC sZǣbsBUe91^? *RL(;CE+Z2@*SfK8ɚՔ>?o n!6nPR{9dy>{A dw(>#yav Q(\F 1 (b4$}EЧheHB,pOSeJjBOݕ3Q;D6U&q喀2⺅xQAAj2|eXE2$16 NS,/kh91׸b $~]~p&xx)5~$A~&4]Un& \Z p~(te*WLM ]M\%g`5PZA-\' >>g`-aI-߃wµBД'ݵ[Bȣ BRsc* R Ccmz}&bڮXF{ l}LkFނ@dE̞I:dC+PZA f2cݗg{w8P*wc%iQS۵ӣXp孎UVyPB.7,EH^R5aʉBuϬʧCl!AE nGQT*5Gw[VvVKژCMhb((s:ma%\54SsF ڣOQy'$LAdNK09t]knV.U[bIVŚݍEdrY BAZ #>!Y>\**+K*t&7`\. zz'?YZ`=)8G;޵=k*݅/ U|*sgo5w] Mjn݁s hdc5orM-BvƨY˙aMk,g gj颶bP/oߖyrYfhD[~*AV"%py_kgE-K0Nєi\t5 crekJHC=[KJ}]1E׽g(3G. 6+H vϏbE+߁q="nqR3o3$YV{wdOp`Iȡ5n$B5*i AP %пE5OS3O4j#RS (}?-TX_ǝcP 64? t]M098r+x1[@YJ ؂sy!a`l~f8w橬(l^GQҘ!el%y~%!^,&ؗib0*| ",w3{" petbE:e-@}+YRR)i2Ҭ3=u[7ti4XR۞zO^_\d&\Qs\7u< yEs#,H@SW.(6~-B6 :4?$m"G'Uwhռ ի܂Fp{Gn' 82TADgW0=d`<}=V]V!] YVv}pUwtQDN0^6m/np~_<_| 0<4XGuP$;5N&- ,^S$x˚hv,f@7i>2*6G?&R#-G2C cp515e3a1:)*6K#tkx%+?7)XLYg:}%HbN~V@-$s IwDf$جcPB/Wp/Mbw?#(]K ]3W]+ӀQI1^peBgdtB+cA%i"M(F̨kLvYǢtJ oG,-`֔Wqywck([`M)W>O $&n0ݗ96_[kvԋ@v@IEGI3Rvn@}}߶ErU7yẗ́݀(FjT3QX0f:+}.Єn#=1Fڙ֐_ώBuSaY;o4iOLσeuν]9p{-|莾Sj6GP Ih‚+sՙlY&؆ߴw6"-( l¹C+fDG)P:!&#D }䲶0QԜ[UsdMxumE0YQ(tJG眂#4=У8Nѧ@N `w4#Q{e# YC%.SyQ7MF,ЋNA&x%<{ 1`ʰ@QWR"Bɴ<q^b9>$|]?G L vhg{J [5X<k|Zv=ct䛛$Cq~YZ@_Y>Z.9DEI"SUG -olIft Kzr^G)qx4󍃍 2 h,W- 7`[a #P->Ql-[{I5 0cvJ z$nQxtY2i}י MRk#zp1=g'D%#}acM#3&OYKh$o;AtXz`TY*֍,0!lOﴶC/#DiS}޹~+Z"ɀ^ #[B8FPJ8\lnn~v|bP{ $eF!s.{E.`-@5I:s L*gK)o}%\*#!`Q8U7KoMjjKqږ ^XhMPf6ʌ( vp0IXvR? URXrʆ,&|ұ!HI!\ge#,=~ uo:X"*}Ii8{PAXDFHЖU|MҰ+, >ncG0b]`ENd ]#fYvhU{2QlIIYju 0oR[+ʙE:!-/-z2unϰRco`'m7n@Vx(mdxC!aG .edEN|>>xθ7xd[)q8狁~p+%H>ZB"UIncG[$vi$AwMq# 7`2X_54;$3HTSW<#JϒM8+_nh?,ۗ]ݯgXq O]bg3G+S؅rBY]̵!92r/8e.*NZ]߯tT/RI + -!&d/|-6m'"ùkCVF^|> \" khbkV.[dh;sҮ55;.5 }%>g+=¹Nw`z }) }^U3il,rS(:&}+/ݝ;\Sh~oU%v=*.M_t0\KcULIw|#({νeLp[ &+ul\<1&u]ҝʚ劧q2TⶩxӘ!mr7ZYbJW٪nY!FŖ2J-z(vz\{^Do5exۮ~5=/мR+,Cd(AU@ubEWw2ܣ@gv]7uRt~X{/%En6ӌp A`iXS%ew)F[;(qb,]7Nd=ܜ|aKn$ UCWy%GW euԋo4!TTNXEZDK=*DK=R y\rC @T` qF`ĺ8'^BtUxCTԙNGCFǝ b/͏b>6hrU*c:""*?)1\l&8ʰޝbRy#iձ:A5RC2xūd`9ҽz ]av^KMM D_$3+\ ݄jb)nuD&cٺo XnVRa:~Ҏ0H31 7ȀUb%j,i^:kf:FPJ%nX:3i. $ugOV7`m}G] Q25Ap忇qu-MOOz\i.~FW֐{ 14nܾ?BkAB&P|{ lQKOu!AW\AAOlѣ$ϷhͲ#]#0_AC5f7?c ɟP.E?ySq^kYKfWNoE - lMu[hI\4w,F ,Q3Ai̳H4īR}=ȭgm1$ Y-Veg*H-hW*\m$Đ s0Al~^FU(JzIO4ɲ`C, pc7f/H T$Cm$'dx&4 o-4h-SqyObHtb6憤i c -qd\TnݻhOs'Q!X?jԕA`9QX<~+[xծ_K^Ӧ,Y?"^=_VJ$ jK2egVac1̈b+;RF@56:0[Jk)KKA3~eli eтB:l p!0~<8vˮr~yAj)$QX BiH~ 'RG&L)@;4ۼt͎V% #Z^O2ljO.2Ǔg7N:z9՘"ݣ?vՖhQA:,9wF[ѓ7`ʮćI-Ni9J[lް~8?ݚX|UDlL\ aJ,?7pf _pEZEa;_ p , 0]h/ltڬJ4-]hgk,෬"n5(;jqdc ?]}G>-J`{Sˡ 4e_b@@ JObNt_v> el 0Yݕn,ff _rq(ނBһ9{$8y7 Nb9ڄ ~~Z/I 2&9L7JukR( MЅsd1L,gXҫa,c5,Uv WVȿ䆃TP)P؟rŔ<A6u~Sy0,Ǧ'8Rקeª8-[$g󓿞Μ2Al4{7JU2'&'* ~}R Yy'mfF_,?H^gWIJ4İ^M`kŢƔ 2|* \>\cyQ ;k6zXs49F}B5<'}6-2Xȱҕ &z9iucd {aR_ YT afo+.5E3%GBvʮ?4N4weP 'c2ԋr |l)d3s0k^ps Ɩm#'CVo>|lfMy$.~cG4g݉/UB"(&(yW+!  R%O٪ =D]s)kx`ijQhiP8ajb+K وJSs!=p[`h{Klt'pս^7sxCшC#2ntkv-Cg(W$McWԌ󭴜B>2E͇gx8aa3rQaLd}FJ)V'(bU iib_B](D$xt6if-m4YSi:NG٬FtA6V$m3 E"!pL -9rUEG^_0*8]C#"ܞIo݊`T8:tv~z8Bq&f#Xb+' e0\Ou7Z1TtHLgyJcET9VEn<\fG?p)ڂbOov)*"kD{«uk"!/C%xW"v5+X=vӭ#jϊN)UU~fEg־(Z_+U ~BEڄ`Zt Ŵ_fb'9Saߧ3!G s)܂nkK>Ss|&k2,sd3IczQ0rlџ)4rdwz,uWq >ŗj&cK=fLaSZvQ*ֿ#,g' . FeLP$`nuE|?Cľ2yOjrUoh+a5ِqذChnu6J%]~*R ލC'z9 дjf 'U*}(-ݤpLud( ȖU$I"z}uM|Z0?.+,SV'' _nB͌8UM~ <-=vv$ޒ9 ÇCz}7|a5[hzwASwz˲9bj ~]ۘ Xn9d`O(S*,jۻ@ ,,VyhP?%6f1va/Wea])Vڤ-*mրˏό T> y6Ԣ2~(4wQϔ;FSˍ7HTG:yp%V;g2a}V;Ք2b,{╪=I`]uLJ3vv_d'ad?^&+W$$s@R?`J+0W_Of>q| | ۄם\;$=?rB w[EgA~KK޻EG]5Kh[diJ×yxx$FTS20GwM n14oZ\23m Q]7&QrFI;UE|YwQ[EU!69)8?+Ov:F9\(W,Z.(6WN32qGz qM3 D8R7r}!j#H*Sh7')b_=Γ"m{YRjp62>a_6NF򿬦laq79|~:#xh,uFK2 g|N*;oJ'ʴQ[/y%L\^CܶWhwjmpck|hi.8 _bHOi7)`S?w%܌^nCfs&?YA@աboKKWэcWmP_5~Y}˶:|i4=U ktQRywR"ɉ dth6 N\{ A]`{ɲYG1  qserďS4jI6˪,#& "|h?ԊyʴoSݜV3u`F.{Eeァܐ:C{jΈRGWs[8x1f>bʝWAZǵ2 T";b+"ZjA0u9z Qt*Dpѥ?)/-՞f<"Y*X1! LZF,Wi=w<;uh F jGRನ> go`.L`ljKJу2)Y!5l&$wD&A{),l>ɗY _ ODzzHR3e$ߞQڭgv*vo9j!/o͍yp\?c5b`p4ЕcTƻ{S3ڦwYmXB-Dv((f&x}yEC(  yyK؈G n35|8gJBe4Mref| {7XZWf 'n#  F<"RXӌf Ӽ 2} M+_L :Ur<%ZLn&jxpA|,Pn0#$!x7IJv|GJ`nU?WS8҂؀1`Zůh.j^Tӭ90Yϭ u{RrMF ⟞˭a`LMeY.%Hd^Js-@h+ML?: U)oa$a7͸be}:Z&LFyW̧Uʗ/?[ buvf7SPP֤z$94}? {gP 2mh\tZ^b- |IdŠ Hƕ+c0=1c+m _$!p Ituя>[ls_Q4bgLvϱ =δ!tPpAl>by@kak˦'чjU+at,th!U +aOsi˰y҉sLS} o#ur7d$j\R,,v>e)2gp"Rc,`)M@4s;thwg#]W݇G>g`l9FY,'.XO= 8uG[ɵuva.> G]  eMG9! iUY5[QXm2Em# 9\ohBQeTA>rfK O=L=MNDhjۘ+=:MoZB~V#UøDg@qVfJ|R(,֍ǖIóU|ew"߱" `~8{*Xw~|i B aP}S$7(@C%)F?(fm02-s3c٢O$$"r&ItaJ%ݧ4H9+j ]"0+8BLtv[ T]JRKL2gA=67ț}PeȔ^=g/EO @R9A:Tm/n%LC^l{D }hPgT QjH ej)~GUFם]%/ՊIg5칵!ZPO+;jˌ>l!@b؋xۮFu1 elDRe_/Z5\RٲsyvT(m>Cuo&:Vxaq@6ٛ㺉b3 Cm!N,ǂ^ %(>7ՖU^ z g?Vr0[>IYxEYݠo,o+9rXgwqJi=~S873lTΙ=A ,"wGx9;Y+^xЫpӿ-t؋~>]jrkݼ֋U m'"E!SረEbx,ـzxduMݢ{۷a:N]\E@k6MdL|tP9`5\5Dd $o/RۀNũ$9HhfN  47gFG_V'DHfE-uҗ:A ^;=滾@-{)^S{0CL$gUV8$g7y *, H}'"wS xvy< A!Uq3mK`G,tW8`O' zy}MLbEF&sz~JQ8xpH ֦=4X)Zy;c,}lDsB`{K!Xb@ ]npIfLd/h.$mloݮ6S]D 'PDYUny8 sVёI#ZAR%k}g*T 0tm6 [|`O>߄W}Xcjˡ]KQm@`w ef] "1'1F!taydD ùBTjƂ~/&x"S*jҋ UEpn{|wڔB W;G`:.PXÌ4S7t#;ijD4q̰fͩCBϮ(:1b>#Z ऊ-y+aʏR$@i9P)p]~tΌ~bOIrx{V!i$% %s|x;dHC=.XHO6PS8ֶ&T i+lZym ڂ-UjD4ės'j5BVbɊ&37WZ2սM?a@4"2`Ysv U_vT:gϓ߂qWsuӄ2Oڽ}'&{8asQw5)::WKMB ~qhЭ-*EU$<*/q9E.pƶ[RbnG2~6ܾ5܎F6T{`&yeL]"lQZMn)Xk!rj b{T@:qw3PcY,xZ|/ MϴQ;9[JްPwJ3ϒJ$ S::0GSГbyB|,샩!Ȑ^CHFCWHA2,ݹ;f3<Qy^F ]Z_5)&D"i;)p}{Xk>ξZ<?#&6Ilvėx`gC d!]sAXagOڈ\ElcP _6T" "0UKl 8{߁^JL $os ێxh[gʗ,. 4y.^VIhx?IVo7 IZ]/' $}Omt &v'vFǵ S=X1.ON7Y[+!뭂@5e¤j4L*-(@7>R#)e3+;s&W QM,ۺ Wy%/m?s ǀ)SC֯.Fr5vr~/'\'nM]FsEn us*ZPX zcmOF(h$W!mee'aT-~k)Bڑ2Cr[Ĺ"&+G O.L7m7_N2Td6@]UZ7Kg`!NTIUWekW*w,2o]z >O`Ak# IwZY9Zq瓊s+8TY*|;5+PTh@)z@3*dIr"ȃ¤~DnwǨlIeorq TVɝņ.a|&נaҼ0zeCXtE _pBDp<<^Y0-7br@և] Њu)[.FJdp۫oKNX4=$j3E^ۄb4L %xbX;ǥL@Z9#6kg}xaQbC7懮", }hmw"D[|Gѻhَ*]F*ȄĨxNj!D]={ hXt0tg6l+`u!KO{fWC_3̻L&UjՉ YoJi5rW9st*ŷEt^B)^wiSyՅ 2Fr4 f:m]J ޮ/t򄼔ڝrгe:Hzu\]7EyH:hu cSA!~@2m\q;}ǠϸK&̯0UZqf6%">śdrGa"bRg2~kiO8f2#򁆝^CzNRfq( ͤ6> T97-΅$kF ŕ'c_>Ee[W;[*+ŽA9ݙcC70 ք{Ftj1ڕ q?du2P?uoUEmn=hGkoHGH+h"r|$1ԀA zI_{bfcukXXM!,Z8Yhg Or0V]${ٱ2Rh>qFR;ZP6*4*AAR9#?`['V8ւQR2j!a) 38vE2L\W^0(oIOI3n2RRaCIP'5E, 7~>s|F$+ "RZ =m:{2Ϫ!3 'o6 xo#;s픚M!E`N~> J' 1WR /e9F!r]`??^R-zY>mi{e}j#R-_C{@Nv(&32Fq1aq)J=ᰝ.kg\^xCRƆͤ4O (թHZy08)klCp-~yS]5H̏^ 6-^!k]ES_v)0[؂ۦV3Kn\?Jd,'~vB:@vsb0Y mbC{Pfn*pR*~$=bk [~nXŖV!cd12M6;18ńgTg++2L\4GU "DÕ9= O,:[rIx`( TˎMexUtA\͖8}o"&˷Y*@'rT Mt<R|吡XST*&}{Gx PgoLp(0qk0Xs$`dV *0isHpKpt-ÁW:_RG<~`[P,vu̴c)ajn)0vñg^*$e OxXy2UnH>@[VKF077}%Ӵ܅ P1SC.&ػG1T,)+eCC}f4!֯gqs9f{M` `j>mSގŒbZm,ٔ x?w ꑙ(yXNKdpdLsCp6gJDoienq)7yjc\8 flWC5/7(K8t2:",22gpb@[D,t}2̯ ;q!W<} `|:N:.!,˪2ڲ <(CiySu=oB۾[h.77,G^-u=U Z^9+N@o6Ju!nxi⏹"xU1&?e# /nƄQsVo'g-"?Ҝ 'tqo%괿=h Aʞ[G|MRcu2 "!t/-G] TVht72;ttkkC8( ҹ5eAO|3w-3[Ѣ,c@UN QK!Pz7%JY}oHP&UKǽlɬ6CfJPA@Py]AA⏹ħ20ᘒYa١nSN6++ x"\]l]xZͨWxX4:[ik"Aq.5c)H``MvVkdLmXfn)J3OxvفmF\J&^z l^_ɑhO%9G]2~絍gs&W78agG{ ,tJeסy5W2p咪*c =t䵍xmR7^E"`QZVzyY-_%&˜aI434(HС,S`ic+e#aU4Ų!6;:} 4Q>WecY`>zA^e'ry"fR'7 K!Nis<%F^o98M7*$G{\ J_S}7,ܢb D9p Tj ڠDꯟsOϺU\jsmL#j+9cr$K0KL @ j1H=f%9 SʏuI袇4ikDijj;qâ-&(^<4$}kGڜ4oo*Wٲ|k$MZ|`ir/D#sjr~p~AC~$ )s| 2lkB\ CeNTȼ+F}k2G4xP/۝zn'q^փD#CRGp 7G:^CVhQ#e~hݍ1&z-Ĥih?KkYP?~1- a]AZX bۼH\iڃqF uA۔@Yo1|ZhcE#%&Rzpg)~kG1媜!)A]1נ^UAi(I~?s;=Zyݝ" =0ܴJQX< qoi|Mel,զ_J-F`HZ\y2ݯ;} k"m2cF#>SvxwT+kNȔI;Ž\\a>!A;p݆9-=ſ~dVFq}wiҿ w nu@Uy=?x~W%{\-LlOǙx l΢q/58zdTHT]{wK xt >ZoDV*Eh qڻ6q9;(OӁrw/cQUƂHxqpvJ>OECƒ4lsIr ND(?=?nIYN(DJLtAQ3u:=x/,i/_lGV &OЩȁ YhSV[șNak-١ZsD\uKrЛo̐w .t͇[JfZIV{fciXW3ҩhVI&_~GBvaZOfo "uD;r1)DL16(i[y&oacah}b{pM zrdH|o3fۋpviZh_L J5H]BX22!6519gVDU.ՍQV{\5 &$l$e'魒RA!ʹ")i-6_k[}%y+Q}` 5La63_@>roΣUϰz3lK2^(G@wh/84 ĆO11o0KLXq DKԫDZ6 J/<7JJPS+׀>'6& Y#3vZCS w5.Xxhkc:'g9R]+.>|9S~fLBTqA^"Եd"o{Փ^s{7P#VKItА!Y+\%.b+؉DSB%4a`RH#nh!OpB&v􀭨S#ɋ1HZa&{%!ߣ <%2M 0H3_Czhq* #7Z=W3ʹvvlteK.>&^#`$a.֍j.E7uC6Hxh$UtO52~-&:be PIx{2rQ'` rfO֔-NvQ =bt X\09ጱ2TO1rg3.k /2_z \-w[ӒŅs;~F@«(-H\Fi2ؤ;xv/ [imhflp:K˞EC<kusDk :][6ݟq`&UfA/,9E"V_?x~rM~_ 틘4]$_OLsoi t3aw]Io3kx^] ~J};/H-h!n#! tޣoMx1'`+ِcV>$byv:fo( f"62eWi5Oucq45zR}$cXuy[k`/)s +щW7;ƶSУƗZDr}'o*MsxN9d36 4)Z80ۀUs9ҐajcZqĔ)V|JlC=.HU^3@F݄O@uaaJ~$aW~5qT*lI/ClV0ܴJD]1}TNߒ닀#VjCñfh(KT7v?bFc !r(ز=-H' s26 pT_0 qчp"u& IBeo(2?J%"UC˞C{7ph/hm-ت3Nt=`H_#!3$mcזw9J7vTi@TY@/Z`P '*" L f Ȗlfiɳ-eOԪȥzyB9`tkTNFj v}eR ` "=<(X@ޖ=GMt׵^I=/9wLF:"6CoU%A 4lP4 :-1À2z:mS[ XE1k!Ly7X4UW#)Ijr?~y\VsM+/"E*4*Ձ2:Iץkq<ޡN;8Lvcs.Mg3dCD4{xs)0{.2 ӌW>*""b W;Hk+xoj<'dO)_XdaMX7ORsR$w@Tk_W(ZqX.`2 d)$xPnEk70ҭHkO Zw)ɧ5F+rPG"L_HٙKe{U{(鯶R@£3E_S2Z[sM|T^-q+btF/*%x|j'%a*4 W4&#l;%%M{%@U[s;[j=AwRpRݾ")A< YϳTCn{smAoz#$#wm]5R}s؉2A=ە&1t&PW#n$9'e@9m3j_2{ S1*࿰anUvF`&u ь~^9KJr07[?d r-6r慯3e<ZZ!hZ Dm;c@ref1FH[}~} Dj6_%^v)Y^A;C6XZI*KN!0}ayČ_J{MUȎͱ7**nԞ>dnxAe`y AFdԴP'{neU2!\S6ru^z PB-nC a+~@m=DE1)Af&A=[o5"Gt}$Y"xڣlLsgʆi;5VZ>u)?EȪ-fW9M:GpWG͂~'0tXxܱŦgFp~޷ O#i5`3O?(L)(Szа$6LEQ|'Ml#zo¢Lm{I,&HCVWo33PkL]O&p &eTYJ39QK.^07y㵤%H?YAN l',yFÜ)1Y c팶<, "7M1OsN1ޫT~NDP}*6MT;J7O"T aȜ̰#^|"p&'厨1.eg$%Dd3l{,-HlvJ^\8W4) v}m,Q'syECڧ^L$JU^Wcs _Iacu NHɄ4G|1eȏU3XaC5}U > 8J2_qW+^؜kڔ^7 A${A@=BZRiVeT_2lO)hA"M)υZ.BG5 Niq1^ &nPvUܓ~mjfyc2#dp "dc9405(DB'y|j.xjN<*YBf%KI4QohO^ԛM&\J(ihHD56<0]+X]|fAgÎ` ,& ڞZ<4 x9~F4MQ-HǾh=./WTFD^d kS]48i'A=ol%XF-0Tɂm y$#Q(tXfpm1ldH,229&4[\.osHKz9UypT WAGdZ3aاRj *U6k9ѪkBYA \޻̴J໢TV3nod,RucҮ>X1QbիO .tj ;)WXoY q3U{1mq#3>dS)M@?*iGT 1L?wuqzD4uoTÈqc= UiVBp 8tIն("!bdnoL`Y[mAXTQ8lKθ%șX gո۶ZNn޵ˏL_sFIԱ"(r{h[;Ԉ[\8:OԪΖ?]k 0e?:C%p$dmx.ˤ \dB>Nf⩺~'q2@J°6'9a1I(vkF~ r`V8͚I! Aѹ:|TI!#}=% gnYC/@LxLoCߒJG^8[r\Cv(=]qܞ6(Pa#4`kUZ~`s pF&`lrM0-ٳv2WF@۬5 cկEب-<\$QB-4EBA;L~b?Mm,K[ˊs B5v8p:UӤBdʓ6xqSAMh |Z\ZT>;޶jr*HN]G|o邍4okǰ+$Ɏ3gY:]Z: H!DO4.)t %1%Qkuv)9jgX'':>hضB媮ҙBkIu݃%8XKOr4dic]x 0Lqz֘UskkwT>KB:;p*ߏ7 #DR pPo3̘,$]1LgWcd EGTD53Z:lR!3wdᨚJ^6+<ƲQmܴįkƞlP)]YL s+Fv`OmR9l4AĚ1{n#?^t7 y1uoS&qK 7#[t@몚 S"N)]Km8xРzpQ<~xQw I#y uv|.>*|1TAr@WЏh%&uץ\@;\cJ&)}mtLZݟ+VY1U)¶lZk?q vDz=%2! (9z^(XIA%y>%X## fuUdGjp'RU5~w(@Yd^GJBV.Ti隭-1O5y(Z Z^.$,ݻUX116e*i*$xGd sjgkH#(H|xb3(PI$ ('ftUDW k8Rl `;¼Q6vҦl640^ɍ`riF:0~][t$ \T=M| ,*1;uopU߂O_s!,1>9]fN `ˬL~RNI- (܈ĢYZqVBGwx,q QmkbA2S6b^.*gV!d;+}x_.,/- X?5uf>Aqvsk.|lW~d֍/z{;#QJX\`VC\Iˍi& ױiЋ$Xy1B `ژmtEå _bwXdLA\ΖnIh GU8, Z g!}P׮bMfؐфUJ dguR fs=Z{UqJ8YxLt{K1k?M2mO)}/:4/4悎ҽ=08b`>JMsȉv@vsEv)YHZJWL{fh%֡GX$)rIqQPan UN9U&Ö/fiLŇuWuC-88(7TkD{Rh}מ"?q! L0MuX'&]@?2$] kFn'_taa*W,;)݃ѡkALuQXD>Qd Ej(6IKFBk>,*!/ZV5\-z큍-E'B t.O~jbD3AdS6d, y1CQ9_ƞ^Y8`\?7v [ ( &J|-IYÝ:fhlUSCZ=h%[ۤkڸeq,Nq"=]АٮzX aup[(&U8/ph?CF"c{+/ +mȟGƍ_WOֲ/tòG䰮EI1#=˗r02>,֩Ϳ1pݴhlDs{0#NUZ467`TC 6U;{1Q\FrL*=h%>9Bu,dq HVEe%0s )j0?Lw% ; 圧.8<IDh/蘊҅Ӎ$(5j4/Y]xKZGH쁽Iꄓ~4dMΤvNnyz `Z0_"nW c6#I4Ǯ%ά1:wǕjȡS[HAtw*uwGԋAO`hG۫wY- [|q78!r@HP AM7ɢ3uHQk &şh&ÿ\w/ ="iִsO]%7CHcD:4q2> iFTc2ԆxzH] Bj(uڶUp)EI(MY>لjD )$DuWoBR W86NU#<].A Z nQ^-+9VgdcvĄo/fvn5}q  |x|fi.9{J6Io3$Q8tZ8^ƧW7`^^.@8ƒzN u5yq0ЌoxطR$SX\hzRqấZQx1 L]=µ g( $01zҽ;5E}J!5N9knHS+z@x T1'gshqfG,[rĬNmůtf2'#“Z%cIӐe{vHx fP.[=?]]xC]-D\ɧefSFb|=v<V#Ot}o~N5_(zI0_'WkP_䅻_EQ?ɟNl-c44o+_oBL,H8WS#L̪ S|bNMDwk4ps4!`ruQJ¾FYZpNIXon'XrjaH!S5a'I8ozUO,;Ÿ).˜];[~1tut_  CP(MaM-ˤ+`oS c :0`vHK1;eu2xw q3)vIFWhz`րy,R(nk0͟mQh@$Taw3fL.m\64g.05n4>GB%RBCZJxܕI?c᭛`1}J$g3GovCfq{c+sTJ/1t #G[.@k$r 2Tڥ].X3ӹb'\ Ohb5v&^F}Q +s%"%: :Ziz}E(z,:X+=@r+UEOSz?谐>ƥ.τ@j-l̰/q0At~%tLjy/M%FyXڰd۴qGV` zۗߗqѤuXAEiq*|eR^V{hJV ݕs&/0[KK68xootߊB<ՊQQD BS-(>Mg++Ɗq Ѣ `Gke+ B|C[aCx40wIV!|̽7 3QKS_'#(>͘>w$;ӷlH[ m/5W:'ut%;0\a.1-ΠMbIvǽT8!A5>{Hp"~)< -%I/ u_= &y,F|ʸsEr$RSRo֝8^ߕ hfsk7w<.)2+a'ܧ@MAkRdD5?JjVx![TG2BFfY(unpnhr11* ě+y38K'4OݤQ-dA.`] >exQ X3n1V[a'ǒ#RM{>lik\@o}w3zͷ;;nJj;64Ҩ[8e?$t)L-/hSE4:4~ ؿkEFj84%d3*~#OC+*-kU,t=WY!زN<Yxdc>YƆl[@+3?}$}|kd7lZns&_MX'1T상gU %a m=gԼXykQ.TW"/P"2BOK0rSQ:hbA ~T@MeS_?γ/]Af ]vjX^Be2"URk!&D[Ս ^ouEK5qް!uI]!߇rw;+4GH%9q3ӻaMT",NG$4֚Iƾ#Sb5@ѹ$9Qʧ[0."$z3vŷŒVnGi_ ؕ~9?}KR9zuK߻JwGH:= .֢fE+BCT1 a>o/+rzE) ; Sn2I9+<صJ=#5V-5ȵGdqyRL=<;cW|Zx7-RF'?6El {foĆbS02'ń$t|9PC=$0t?ްz-SxdEWJfSU9Vs1֙f t|5{6w˛MƖ&iHpU$1%EmsqIaV!6o{+%T̀F^s%qGv,{*56>>έؓFOx[+,?loe$YOW4TdFf7#T@S%$iV`V1`2Jj5B#ER&f|{" ίZ/tjYτu(EѥҙCCMXtV9ۼ94wHuUh *x5?+aNV̹L Ik;Ɂ c< ďhn#Y|sibR!Ƀo\r _*Dƅu3viR^ض$ٟĢpea⺷ yqC</-fIɤTh}D&Kۦ  VF2b Vɷ#j7yιB1)y,h,31Ppg$R_{߻"y?؋2E"+ۧFu>y&ƛTɽ䞡FU"Rj^&fc3&Bd2>P#ϻիq9 IVmPhF_s`02^Tf)].IoGR/@0\\C@, YhڕX[2I[4OMvac]ةmX7P q~=[iZ~gpGK]) xv `79pq ZmΒE5/4}I A$bнP${ĽS6h;[4jRӭZp~Sw.ITX+utZN~$:[ЙR7cVCc[䛥a2%&qxY/kfX\fVxOkbz>R-NTh@w{. c2`~D@JrsgxNA (1yfu",ywm$P`m+{XSGt-V'/뷑ø^!MI(RkY!lrkaX b獞kQf>V鐟{/GB*kwXhtmv{fu Q>'IJw!ÐGyg>M25]w /6R ~]xtDH7j>;8BVCLh5VqW '}<\%ǻ>!d|%0K'L2Rֻ bPQwe#C(RfrPUs|'3{w5&2 :eΞWXZ$=V6W3cݴc!}Sg;Mt0pyDEƊb`tJb iy"YGd9圚lCs M23V'Q un&/r$N>@YHK˗ ` dVC;aD*:sSeQW=mq캥⍟P97sLX.VP@7^C]xn(A9 0%bG;+6ޏ6hGD]7_%{^lw:(|(/.ϩ.d;)F^gk[zR+rdeͨ}r{^5`)I:':ij%%b34|UM.ٍX7mF%rϞl}H ,iND5)A7N%ztߔ$(.O gC@?YA׎"81O-܊Wa*ή'~Rx8;,`*~YŔC "k<2N:8'+ojm8(-Ɓੱ3?!B)NB^vTe)'XRR73FP!*M+Zԭgr$ziUE֎M$tȈi>u*AKAmi2ibBV˟Y>ͦY:aySQD2DB&5h~TM]"GkSM&Bz4OX$r_/a5 R% z REZ*On퓥֜ qz &f$hWxk1y-5Z\yYWSM4r/ f3{Ӳ}03peCpvI+P mnMu|]v>r|\7rd hJ u5c\nk1spWz&#q.ד+Ɂ=6y븜_Sh+f&HaWP-|,N+!Jùd#Q~ׯL,4m5BBc3GbPBՈƹT;i.gcYx&G>_;n7ƧK̝MYVɱ5&Y]MS&8E6en6(ss`p[N&H?QAgreΐFl4C9 ۢJ~>ʏ\ގ0 c]zLkzE樧~nl,.k2PekPsKFi]DR,͕GbxSsT4'lvx5o-!Dz0, }#@8XD& cdzmƛh:,3@ Rf}=bvkaN+ X93 澳\k+nl+ &e n MKtbzS*h,|9bSy5 [Ē6rºڨ7ZKѧwSblﺗXޣtu0UG9rq+%ˡCa^^o_tR9njw1+߄RV1 r5-@{Siw΂HRkD| zcs2_5 ZͅFfR9yQaP׋%$]~ؤ`v _!r)P` O'L!I!Niy &?D:,7n_YL@Xu`b#oӍ" "WR'x xxW=Ny UC>B=aKQTԆuGUe1kqdd8QL(AA7bPC)m(!(,gD󠃺y85QA<@ B";/( d\ [ ,.yg,tFCQqQ'] sE&/x=ɬ#,Icsv~$e֢k)?^L+ջU~oj )7iz;{nƦLcG5ReTҚw#W6WSAI7V[Rڷ]E{;=9Y *;i!]Zq4 %Af@2 О zߩe#Nm|[*h 28|2_e%AֳJ( Fبk?͉ +F(\́r,QGn"`+:mzd(, Iܷ$76ftma5xӁdxXׯ#!XNAWzi'$W>4&20A(ܢ9#MpnBn\t5<ڭ0P  ,F zy̱wAFW4Ba|v\i(.!xir`k m7O%xNmxTb%?"'9B[&1O'@2=UXK `$,_2/ˡYmAPn8p=J;Y P|X%?})켍MI^$f_Q4{|f:Ҏ0C`!ce7IhK1=~;M; > J|J7p4f:S大پJj}-)QG|BD-rD6OP&3kr:(a<؏M[!:]r;%W]iH w⊞f󺆝qۡyV\E$- 9*珝j}r=`/Fy6 #zyNPuJS'ç!A4 2/'. /Kq\M0ٸ +  Юzi6sĔLUZ^񓊟F ˱$Y}Fx'S*_X8TvZӔd 8{+)+-rF0alF_!l(E*%d":G' x{ nAu'suw\/ЇqI@ dW88ؚ3z I2-l'C L'\^%@V60ay`Bv7:rRS.93{a"qV9(CmǸ0 ;Vae"WUQNwh:-RάģJGnBira ߧYwGCCq $@?h㫿;`8x:%40a"']]mkwlV=wkay'U##|ZS"}fffF{Ġ!6=5II%.gqP*>[gøQ-29mA35OFZE &߲EJXzW=nT&Ψ~;}YK(r㸎`MWs7ߞz*|2 yD)& `赩V;%Tq2apI~S2vϲz4Ei4֏]ɔFT6Ixk'{|vH ^nJ( {,;Sѹs4 QkCz=(Y+T=̢HKSK*`*bCtHq YмNfUN *ok$^3ш sa&̞\Jpf2ƙMYLi_1zT OKB N lLbZ{UhsGp4_7\c𒼆K%JAdYa%~]pE4Z)̢9a;OU8}x)~uXF_ۡe: jt*BFU€ӧ5C:/[*P6#W>*YgU> SX'+*inN$usĚG*QS.Ty"jR!aB0jGlesISqUtu0m.GלY>@RMG6ٌqtAY-jf^7t%`fRwO3k"=wIixV}Uu/Q>Nj1W2 yACźpb{4}H94G"8= l]l^5!џg]K3cG4rd᾿3?awaqj3WcR/s> nXE\ i۠ך0Bv10\.*Q@U 1%rڄ~n=D#*dMkVfj4`o['ipߓL3TA&FpN<^MРA F6Urg7W~x1jӛ+bHFH;|PWz*Nif&Ix?lYO\0ٮN7u2eݶ0%o9T0*u€e;nTӽ&E^c+&; oV-V2T{R-``gҼk.'IzB- EYR>+qS= ·N%ċwȝJ^mKXzj7hR#V12r,?4$gw+ZNYoa(Yc2_wS~C ùlsrGƚ:EŨnF#|>c'}(;,IHId'gVmLKCL5~^wEڎ6MG'~5[쉄  es9(e!+gA}~~ |;_G|j;OVE<_:k~gm~TFN̞&9a \,@K>@2Bi:1fSS$e̱(R0Ndԫn0\:IBDGd*Gߥ:g%>"2[(YyϩG {_V!tc4';4k(j ϡd8Q7J'7Lh=J7sPdIM֬zM[p Xowkޤ/'LP`Vs)Yy 3J"IH?/_4fۃBhu!p2#e.l EJTc*(c|eR?k qRrI3|#KOAH3`~YT Ch_D&~>ڧdw.(,l`vlTLO0B˰6Ո- =JnrbQغnuC*!+|mX^ex{^cTחpE{”m@<|}3ݑ GWР5 XKِʑObȈSUktAj B> yim-|iCwF=M.4_h_&6Yn1g:*e_ESX;QZ(=^Aig*<çd"F'X={  AD )ϖ"DgO3J4*(7?0: \/ez2Y, Ch_n,sċ\k.=V.dCJtdYzJq$CZuhsp@uNSgEz؊⣮9&.`t֕!1P\eK2vY6y2&ֲҘ=rc[ *{saQ8ςLqйuL8NQ(?xp'LA9dMm]wWR C*!ϒ{VA+^߳RTU%CXL#M qImOoe&L.&g r^ӅO.# wy0܃۪bKK Ό+ $ GNDGWCR:],d >\œҊ*r|h&b=m/sMg5NtV\[D#?aH2;5) 7K)u 0NY\*%%˛ts Z!e޿+S&>#jZz %O?}EnnW<+S;kԉ .4聠X0ܜ"k)UÖ%|v`ln{|7.[hW&_#?lT<_+(☈י.pU6b;fZ+h^C]GFPX_UNܟZpiaWJѯ+aG4ܶ%dj/b0Y*t!`YznN v|:[cuHk˞TQhn8Vz YAO8 ?5l1"">דFrC+-S8' ͍Ú>d->f^#2N!dlܦR0,$ PpI}UpiU47ܶ{[b/HtfHc8m'dFj~I6_7nP+^/8'$y @i6DvKsF:2Fl[\3cCG$+y3w ob,/xJ:lO7jJJ0v~Fzd̏n GjfFF+{3 :G/`Kw˱F,s+%u-8Le"LTQ(cǡ#w b_|Ie͵%SЎG^c1ʭٻV@ou;e>n3xGbЄUPnOP9vd_*A*Z9IG6\'x6r\wJFr`$rE$lNٟPӭ߇M9rdOϛ o% Ӌ6P<HUl_ kH@(2| ֬}1ڈ{Ob5C~BfHIByA aDf JߵH&YDRb q`wO9~nF1;_&@h6P=JQ󜾆n){ 딭81ɣ*sXhE\:Q\pd86d#lh-_t0Zx/d*Ťԩ<8iШaLq6MŠ܃h~MU5Qϑg>]hOvuQ^ڹűn2'Z/`}$tu*$~=RY#@!^܂5M5Fwl6C&~l'98iP2c|6<2gxĶ1,h}  }&^)^ۭ%1OW57wee Oj1G r7.ߦ$:(,<2Pkn;EʻR}4|Jc˸9X**jN׮Ve;Ht ,*?YA+tNCpf2hhLpCd]K*t (JpKJ-3ߕk`{3;"mvA'J$ngt 8RMmKLor5C5¾ ʳ`lӏ^0Ach1I^@o_aATTKl}{Yں~W,~ !> 1XWUI ʹ5a.;gz+8zf<;7@gwmvG3jG*uM["༝\:E >Qi3T$cP!h4]*=!@4!)oEcx;i|#,m64>U)#@ 6r ĜT^܉#^wƟTafv[_|.~!Ra|gn\<[VP4ov;ElkhAR_\4JAO%W&;;; +k]H {N`:4SW@ DSITZ5a.;et4 ;0Rtxz:_/YS GfAٝ#ذg/BoZ@qV<RQե+'*uǬ8KeB h켖'RU j36znDnLGU(_69}]xN6m͝z`-eUԇKٻ3`lxj׿̜S hXfnVyY}˞֖~ד!fF HOI8F*&v| vI;gr=ffz^)e>TqHzJӏc}q=ih[7Q?Ʉ8$ `u^tXXh{OmD欩"'F=2~ThǵoƤbII7>Xshwyb.0#wn8bMjP@cfXG(S5uX,r!FСqCye؈9mt8W$%/-,r]*˅^vF0ΰǷF7ϡ!5YX:C$6N]=Hs,l>}(B-2-u_Ș /(X{|7Qi1c0LRLAS:E>F>1'ۅRWr.߮vl\-Nc +iv*+5qy\=4Gmw"Leы*_/vX |Sj7oCեCo i-oNT_v3dp%zRXΞ7ӪAzȷ?;c:ۢgvov9I$ ,MlDPǏw.)9rhL6`<0;hOm3 25*88p{u~mvT{xܸCB'?dqtx+`縎-҉W Sx 9^~!ӷ>B͠MGzBM|QOZ :|bFv0ĺ[ژ |q\2 AVkd1m mpTVє4c^GEިFv1J;q,ٕ[c>_p(~2!{v5h  5 ||4l[)&J5o(ւJ #Q`wng)JXY DޥEH4h^k~VY]U#!m;R#PU1+̿{`9חgS%p4Ť"@!֒AA+EՏ挽!@Z /&Px.F<Yk=;|?=.벧N] i {D= &FFpXLڰ8ey&頃Ȭt>pO _FK!g ]o ~<,( $+ßB $Jf_qCHqhJ'2:a[`fqw7/``sQxVFсG>)$>;}.Dgm4n>cPvO[ѤKV=SOa7âoO~Bp{n~Ȯx7];i (0pjRا OB`("i|P'4V nY2?~h= \krIHs7T"6@+}gŒZ 'VmD6L sk`7"D(1fN_OQ#kZ-xVXpJp܍kJqY4 es$p0Dg̹["d KP9mᮈls 14=ǢB^bnWW5 _δG_[1fmqxf@͌ro!fts"b<! 킮z3F'5bfȗ:̶vXkռR~Ҳu~.<_H(R2B>vI΄L~7mY!ƹsa46*1S+jVuR!%œ N{%jlX7$K Ƶkn~0ͧjwdVv׵5M類4D7W*IŦF?8 1%۴;4 xzC8&@91F b e①Ald4ƃ _9j-g%?|`>SY6gkzc`CW%]fA jYɤ ?9 .xfģctM^ЭcP賝9&vi ^0q5IQ^HbD44JmL@j)]i3=Q/h m'@r % -2s#ܽfసt_3S[SN_S芲E=X5O^ź4![~42 v7{yUvˉXw*t*i'.3Q" !=AOI7>jBj8V[ʡVPs28nQ~]1w3{p;..:Uh,U*bs165%权j9j|HSN‰'-B:$GJ :^3e4;Xkb, uKX L@sMl~V&PXijVY!Hjдqj#DKjTcV2m!vi/ps7EA"Y͞ԒWazi T.aIw0I֑qjKw\h&j:2jǐ-bǤ 1ײ w8FzlQ(Dn4N#*D7+=]lZD$R.-4.Vr$biJBϹ-WF I|[U!$meI ,nth|9q2WY㞓*SS]m s 㒳]؝,^:fBuč0\f!v" Guj&NcJL1ݚhC Q7_,}cqM |,IsK6]S4./vBv7?%SG=fj 4Q'rP(1멆MMQ"gXQ'x뉁o:)8Ţ(h)&0lן Xv􀾰5To_ZeC[j,`jzL)W:~O܈1.30)mI \'7Z <饛K-398&0(s^Î w %!] eW@dMEZ=٨jZmR94bT*7,.[@,P@99@>K#(׀b}I]õm+ـK|u;c P\2Dxe81d EP&HI~I%lau$C 799kK!yg%[~GLшH\%5 Ձ7`uUblߍQF03~Ǟ i9c<F:Ɂ^tFxy"r O2#>oi#h|mf4:8U/ 4on"AH E;"Guf*1P$E-|[W-4T峉rmˡNqK*h鹈(/$ı`AYGV}-O YG-T^"_.V&4[\L wJur&Eg:c^j-qXFt6P;"Fsi-49¦\DS.dV/v͙GG%Y(7jN~A'0A3J9Fe5Cϲ6T܍Mqo{"Sh(~G’U *0@vQ:UtE4ElG=k-VͧEzz*p#7Мdk.9@ͩqXf!{8@ I)B{uMd&{Na橄l'aX`4#}~U/: 9DhIEXC߅IJY<}}iz7)+6FW0V] i_6yeVR3E*a|.Bev:nPO݊vns~=buhC1zqǁ, ҷXLk֏.l߃ += k$\ͮNnӼ7 Qgԥc52&SVp񇋊W4+ި^@_n x[07^el#.c_qAR5lOD|IѲ1 ğHZ,Ehdpy,Z H F)r!|]4ay2~r+"@Y3A8VrIN/AmP)h W>yɯ_J~HPJ0Q0b @vPGKIo{rdJ=;fUΫ+B+0m P+q)W$;|-MB}NxJLjtQ'2`3\w~ UnIjz_heIމHUsHwf(٣RtVӪ⥴R«o_Et7>SnaLPUqZ KriH 892IOkWs,ikr=0 ejփ|Dw8vm՛ (v(s, E::b5&no0AU. PTEbpa`@~lBeD54C$a,!#;syZPS35K9Ɇqoe:gnuO\Yt*vsNୃ%G r^74;JP7mEϨU)¤əBwfUE#$ܙ̭gIeI+"bx.9g56VΫP/o%YAxfυ}~Wz)<;,و;8hPzC~thCtM@ dS839 -^ uS:2h98W# .-:YsRSSY"; гE32}ә$ LFٝ[yyңZQ  kgC"28/Ǡ-A .ʀ3yplH&~i`@C!p! h|E'r1LqokGc9$ {̴)d W#XCy3^ agj"f6i#xpx\i1dXˑ}QMx _e_2Zc qMArڇ һA+^k Vdtp \z݄!;: _K #wj=-)J^H#]ac[0R `L_' !2"i!)o2 Dh0$ڽC[^~a~n' G a,k $[@gFPs'7pލ{:C}=O668p"Ȳ)8a9"LlCQZU*GWb\u=aһ.rG6HtT*,oI5ahڋ]S2ig,?EN{!M!UAAu:^Urm-FЯ-jA6^Y,8Pk6faxÒsiZЭf dℱ%x4A\)-?łXijtP29u/Frj'XA[g4Z$}=2ep19Fo "_)]Ά(^R&UО'1{أ{Z 9B'J|6 ZFQSl˿nwgy\2ᝃNmsg[Ksh("ԅϢ!WepuIwaEIc WX Ԣmث@[ez[ CO99qG=v:ƺtGc9g_3Cj,oz+!a>גB`tP5C.zGgyMn`:}štv܆䦁&4qX[ùܶ,XJo{[2"䲣@aTf./̞5n Cw/n:*ȝRBA6)yL1ehRsbZsT~D?]B8e1H-"tԨ0#"淖uG |E*ntF5-LonL ]9AQ=iYyP8Hk-t"Jv 8cSSe`qlL#Z |g Ve긐 [E>V̺MxBMUDs 2Z -Ddn\7$_5 ',-לc.87F ͽ[t.8Ҙ?>#pD{N Hl}+:il|V+ #Sw Isع0=CT6ۙ/kԍ&[!n6>rp8tYxL^~Qm M; Yf:D-=xbLF+/wMGn'Gy3Q>Ә;L[nMfqL؈b8[mҀzjYL~S~r:;w,Kѣ%&m^b}߅" ivJmjj튷(bУ_zNIMhbn XtJ:hb=VXڒp{3'*Ggx`D[]LZPf<@=_z[K(UYLIdf:`v6r`%@kzk'DDF\铐pZb(!7e Nb'ՅK&%ÉաXxg_DwO[#s'g -VJ#H\oJ)LS*w}ܔs׳BiESB;Z}3{h33$V z*~\:ȟyʔC2; ŕx HvV>/\-ǗHɇμ' A.9P *V1wWE5v1.8U/&)I2Htڳ~!S9BVX+(%ZY&SqyTUɿN x^ \%M^6@}*5rAgw;H#iT1[q0u46DF7{Ni= 0֪EGh! )ns9ɴ)sDġ2ǿ0fz~ ǧwt6h@"qex[>9:?Q_m}/ZVRUT`%0 u =roJ%5ϧwī|Jiyb.9^ C7p Srpm:yHpdrl{^M5?fZqBt<}B4M0aA<%Jafa$ǰR:?8wL&uh~oU@?ɅmJ46:G iΤu#tIBnKH> uE-p@s * \h;,#Z"^x<1W6wAlN,Knδ*o(UER7{L%ٸ]"<U6Ô/jėut7Yvyl$:[*t9.1Tռ3o 6GӮPOBs+stHuZDePC^0Rֲ*p|p A7yݒ&N.3>pB*QshvtLyfelo 2̗G$\J56H⭿Swƺt L+v Tl״~x [O:җ nWeJ]jCUƊނ6Lh`T ӃZF \ةk6wnKq |Wz[_Q#e&4W"ڔ1[#mi qf}lzu#t3m| g ѯ2Fy5< */7ۄ0kЄ!>5YPـ[x&jK9q|>6vUnCu&.HT*b܅W9Ėi퉆+@}fJ&_&Ba.l{셯` ,$xsZ?iNuOeQbWf5sqgtwAI (xly7?U~di'4Hp?n(1Qƨ{!$1i;V3 5U|m8]TU2Z\k ɴsA?lDBm?B"k-^zO%_98^<-T4yi]UJ)YJTn5nAzDwm'\<6i 0sS32޾pȭǦã/Gtn@[cZ,L6ȉfi.נ1Ӥ aFg6'mA);H3M B̕}/ճT\ZRs S-눺aCyc u)!ם9 [ !gkvu**^J #e҃Z-G:]_@uN(HTM>8D!6^`.ҭ=]andALk~L{b1҄U47nU0 q"e'oe;U)g35<ĊHds+؟MC;` ϑ8!뻑p6Ԃ&B>4Ql35k@6d^\JI5yGa)' "geF'?7@p'O _PQ}tC^Lh `<`\.2a{kE8I:TBcY edsAuf ;!^絭{?kfнs aT$ix=jOT]rjS'w1U(qxA)[X+Mm[';^=Wzc%0Tw,>]Ah9Lm+y"i#u=. x`75e2ŢN *;+!\W'VtasrvOSְBNj|YDsy 7!?RxOcsvxөĶ /EbI ґα,9BwOh̞+Q> uV@A&0sH`33vT,[R&FDғf[i[JXГz&-AVRH%p"N˥D:MFx֎Z{Zy֗$*y!@Cog< ro1Zg7#Rk̇z/9_@ʰJu=!Vn[S2ٙe E83NJse#5~A,z4#! %,`{}wWD "߸:- .f3MȁL{8T'P[ 'P'lK!%*َDx^4mld2old9>(h r 31]B'hċu)٬2^́YB+ur>"z[~F&ww4PFπl9K$S; xP,8 W'Mjr+2Mj`;dt3Q&%C^h)s{XXHnh6ϤSq5d>!0rY fH nrLŁ0"O,spƧ>pѢ.9dʡӤ*/%:,TZSm@q_7;-Oqkyhm^wBgň];BlȕP1_A~\"ټ$ bʆCtoٱN!-Yw$Ө enaDq6sLjG73A(?#+^' Jo5!pf:DPT)QwJeg x#@H&\Q/"0@~`t?ƭ u)sܽBx) \0R\Cx2|>ǘF Gۄ4$_C2Tྜ"q /!9tkcN=|>u'16) B2 D.:6s8Y Vw8CL5pRM LĪ8!3( ˧|ӿnh**`G1}֧VBk>Z]-S]mh~3hD5zaݣ!^ Gm5Rⴤ=DWum|[7/;&F?4}#cy?YJ.g$5!Q[vVJJd ֜M)^zHӌ8}Zk7z% 뒧s3H6`/MqL 뢍ı2Arр `WL܋0z#pu]i)GMe vF!NΞ]*& 麳+1RkxJO3K.2h:5#I2_͹}رLj+a XULu||Τ`:YL/4=dzņtŒژ *Fű yqjY =CsЈ g_6ȍVVZdJ_K^tZmO.zC26\ͣ.^wZ,AfE aDNhW8K:O?Եvzc ׎K$Ȁj%V-MpX$SGHLL(Gǔ,7MSҬ3lgGfFJ Jð:Y}!&˕QDټ'1\'zg`(8^eMp rݔ~K1 \,%(⥭הAlႊ^9B}(> De#%8u%FjQMy~Wg!?mY!u>Ι*1"y\ kUH.+hCJ|('0# Z ʌzi "ķA4*"V ҽҷBE7ㇺM|݃yPBޱ> 9?ς;,Q2}~nT|8g\.%nCi Bu(8￁$훢%.@~ 99Zn sqQQ \>9"ߵpdC.nO /vtmR;%!\!;y9;OY,gl bI З{6ڸ~r(W %7XwӦBX[9KYި6s}p%)hU(1 I<%d?Jz4r2oP+z1 ~뗗dj.+ =PC&{ҩJBG8U+2􂱇t0M_4ÀO jX@tQNsbMv&)~ŮA9"Z:NzA͏Pkz=G&aݼȍ0}Qp_2Tll0Lg5AGS@{(bܶ-«U zujDQRje#lW帜oą3O" !qH7FWt{O3'&!@@U #4O{aýwa|h_a@lpgΛȠ4/V+JB_tP1lRy'}m1O D xɮoBlE\ÚBjͫէ>ǐZiUt}\`,2 MBWEk<C/׌"aNiM[Ə."ĖÄcy;դDlYN hy@4fvo P=i6 #gpyeؓ#Z2Q seðNt?j$ v[8"ãa1Kqv#Afu [f$ޤO:K\**\h13 '|RVHx98ʈLzA˫p2ӽ v)7P{!6LSugoxaDXXS<}x}rJ5| n,RS'+(eΜБVp WѕFԻU$~|ZE+n9Dln^"8DZBT8kxĠ\ކж|~*%Q}k§kB??XاpɟmH,fFO:+ÜNT 9(cJvg%^X{+ &u)m',H7LO \zUOF2ufΧGvb#}cxFx":F46 ߶ WNi ATۘ(&c%UR\]:&6vN;eT֟2M3tٝ6m h9~#E& `Jl=z1 xYUT! M7J a E^фB"[6o*<^22]kGdlMW(`9ؑ7kw&rYcA4"ź} ѐdcY)_%L1ŧClYЈxa"-*Ј@a~>-BzYfؓG*˾5 q)&L+/Uº::Α Y7O P/i(H&BeC߱ZE8'p/m)!@ DvUI*?܄ , 8uUg[d^*-E\Na+%!!58epU>wmDR2VU7q2SjQƕM6C6L)羄$]aR~"畮Y>w>ٙ'c _%@:U89dWBTA}@ ~L˦PZY#$d4aK=u4Ŋ.xdݎvO+[- NjJH-'jy}^WN%Oj.@K`S';iyԻLr($Ǒ=-aqQRI۾|Sz |h 4t\p;E[keёPܗ18/b7SEm,aX`c0\^T\c8wu(A5T0@ c_!aNÀ4/tc[(LWU=q%e[ci:&Yj:N-c< %aol%7.]=f\wa"UVu~?佝̈wnFC(9)kto+ *hnͣܞ^PR%(@#[@9eCqN_ۂp*;%r&h̼+ٕt# "o5-Ӫ_'yRH fp1 0NKӽڒF]&ɥW:u@޿q爊?vaEk:QcuCEsdfK4 Sb=KQ"ʨczlLLFhj|kQ.UKudI+2Y;V~Mq8PyfpG!46aKiZ=TBemFqHy3p d<$txُyxG~W3 N=٧4|;rt=TB8zYlo2a ruD,4F!lU\v0x;i\yzin)Cu>dbJo1g;.ᛛhUJV9 "5,[|(6 (LY8&Y,evI f%f߭r ⱄJQm&?&fq=IjFqV|4GWǷ{Ɵ'g5:SP5ifbည1CSLR%m& ʈ2a3 NBnc7\W?ufx %KֶƐ/~83DY轙ƺ}үnX(9]6$*>7l#X`D/JݒlZHZ EipHo0WHR_\S;Pba*)+9VbN`Q&}G'ӠcPJq޾&Rrg0/fW%`h'z^dz&' ^ vRU50ݙ9Ў&= 0dJϹW`lFP` `ZwQ(0uw)k| rG<ݯr:'('W.DŽo<+M\ɍ8&lOd ; t>" !wWEku>ZF To [3H.ãu2o3Ev Yc鞺; 2D fI9PMMu.Kԗ+^JC2 Ǿ1Gŏkw^y4{?*CɸpQhH3Ƨbk ۂQ˞mR#-{ˆT F:' %#<~܊#K)߄ Xj%NAQZfxk[WLN\:_<1\AƺGAuJE5lveẁ= 8&ߚ54tiO.pR]=K Ykihhp=ӽLc nX{oq7"nTS=M$p[[Q+>MAa@` WBA*ԇ҆n ͻNj++Lk歶ʰd*+vA]x (5,Wkg*`}Hsǿ-跠>“ʭ4Vid!z,~̹[T>e`<;l:Dעa 1F9)Bʡ4n|3NNU5T! 5Tm48 ;y.O5Tb ؙ:/ ofȟ}|*hNX4s[^tBql3*A!; ĝ2Wp;wDŪ#e %N`_(lo,e|`WlJ%/X x[%Tݛ3p+o__xinb9Xž ^*$LK> '~v(qO}ZSMIt;ݖ|c[{m;HlU5{NAҘ)(Q0UnsK50bo vƎ^؅l#8k7:lFh86ӳMLTu,ՎfDJZq=ߵ_VePVephb-Q0)4]; zކՊ6k=:x&z)3%bPES*ߑA^fn k<l5kȜEɠZTp\wFr90Y." l= YzU1پ1-d1 $,ˀ4 *NC-o?WxTvH[禶w7r ޯ! ;rfRqvЃ-ϽI:,M(yf5Hsp[cic!u -!ؖaƃI4A@ 1u=rtiyيt(%nNi<dPU_chĦȻ;~ݧ){wHm\&il.WZcdmnshdW#(NJBHF㇭7w0[W7Q9qNLiBk$$f{>'Q *qh=VzONK!iSag܆/-gŞ$_i jp''0Q&.JȬ#sBVq @nCi<9rT*TgMΜ0QvtbswQBD{'{_L(6 NsDӜޙGT ψꖨv be}9=f5&2-뢍Kv/akEOYd{k!a>U]q;Y=cę;bsCՓt6O55oP3P~+h5P̟dϛ޶[ݢ Ǥ%~ 6=2| +䏑JԾt]jK ,?%IJ`{,xI CaKG$~PwDox0?%KSj,4=u $PLÜrS.]'ak ppOBo& HCzqRsW?BFk7 .RA*繾{,mÙ,풕Wx3Đ0R!̬~p2xˬW[ŪecXI"{+1,V=а!i f{gbɀ4O9-gPߋ$,ǦcO6Ɵ^F[̪"@EZld͹ewx@ݜm00)۳Ōf4wɩp(UJԖD`}C?ōK7cb;"8$uwrwmTdP?YH U5dx@oilUcGŴ7jQ%CVuVTKKYZG9<ޮY?J+PUc7({o}{H7ɲT%9ĖZ)%[{U?C\: l[5r]H BOC{'qKl @JAp|_/ˊ^y'#C (1hR;;6BR)'/eVT=1z\=\H&Wc2Ey^[Vز"3 JM(abeF8EЍ/I2f 4tgs wz'oWnè+GS>x3B)f K#XAݠP_[E$w`Su2 #3=TJfLX߬Qw"%d(3V1J(΋4%]A: ON{mK'D9R,x~{kؿ~#SUv` #E}7uہXMʣ( *8FNrbDVf)*ZzHE!kNJrUHgGfDD#3F#@=3>wOIKFo śe~ncc:8{]?dB, prԪrl斔@%ES@VNH9wн4,@<Ħysa=ئ;E!;*"있hIڮj([ -㋪gf98a6Sn5"vD@i4"NWDx{qWT7% YC2_qr k} ^I7gdHh -i?WER8o?.)kP\.p?[^4`Պ5X=GYE VT"EWp_&a0)O-QEM‚!:Np~j),DCa`'?a5r=gZa;[1lu gb-eAW*㌘L k!R|2-Ajܔ %sXg{{cZ#>v 6nPG!gJK782r1F[6r)a~\`O=Bq=q<!Xܔ! r#fZM Q"Ķ86۱mT7YytO0z8|UWF#'""#+"{-gB5c2kF rœ:g^kz߫y;Q;rOaumuL 0uj}Cԥ9VM(vƛ1©Vzf:!3.O^2oTBlh.!Aq@Cyʼ74`o)ҕ[ԟB9eKڦ&Bz-r.qp_3XB+i~P|}[WdVAN+>N9/q7в+Y&+1ufݰ}*[vߍyC1-0qYDLf<XZ M7zcUjΏ;!j1d;$F&`#aD 9A)0ǟען<9m]2H'9Y@ 6@k`eѳT Eigj5qH K`*:MaHe[y3 ( 6et_Ε#l68]CI(g\-kI3Mw. QN(Ӷcfa|Axbkp> û.kM, 0Av%a'N[f`1-i? XZ*.?rBD"ǥM~ꦩc˾:?jOo%L5Nj2+ S6]nԧ)hp>ϡod4t܀iE r{SQ >F?x+dE`oꐣKّ%J(fxa4[<2*PEJY_Y`b^*Nprg)ݮ)Ndh4l2ݹDC`IhxMh%Mݫ%k%?\#Š}Zo7Cї"eJl0NFxyL뛧a\m8Rj0T-𽙴]m-2)ԺԦi/]Yjd|Ŕ! LIc?@YV5x\!Z5o j67 ź(;3Yfolœ/*%~g+5,lh1:SX3(lC J;өFz~SOD^],1 P ERBa}946]FxZ뀉TXQaOm2U6ʟ@ =ڼqiKEI{&#ޠyKi.׎솗ȗsH6tL0RjcGQ$9D8ȓH'uG$ 4SAW.oj&ƭo>}nj{~tXa"'e p;\*V%s r[ a-n^ڞΤ~z 줋Geg Rn6ꑢm#! |ȣgR辊rZwec !#T g4Mq'g ?tU8:88*ECȤ$gn9S|_:U?vUOf F&@niߍ5-e\s{nos @STKYJMkd=.(!eL|e8u+uo\9ːour1AU.AY S6(Dt̸: s0:cMk-;Dܚv m062Щv &En\>f-:PẢ Of⿘6.U__w 9BerF,~TpLPxMl{P}@af+\vkZHvqB>w^?| S,F,I(/(# `9|Vk02쌼zUd^χ`1 $7@VMw19;isKZM.% FS,1l,JOcԇthY?fd/9b1|'BmMETU2;B~[[V)F+Y j/=ioR<a`ўە O noYp`RM.e=|}dfH]lbP~2*z1~. uq(i_bqrke/0VΠTLߑ*~[帚}>+lxebN6j/{XF%quHs+]*9#6d# 4P|\Ӡ9K=*Lep n9AAyVhIxxwg Rl4-%HJގg;UǯiXRM ol#귍 a*99ညxWok2Ӷ 4Qv}622鉟9䟣S E'=&@\w2ZUL$wV偑5P5huNҥY$x[|J}[P`ӉADoL/Yx ~`X Adф8 $K^2+b|kƓЛklgm5dZ'nJx6eq NN*(?o$*"(wZZeǽqp21ރN%'y4+ǀp /n_LJnֿOXuk@Xؒ0q!dR@s9OC,h4n-zrZ@F9^4'9kAZw`r&?k:Q K6H)\{Zc&̊g"K K˘d'@,Q]˵s3t8kGCR^c tu<Ȇ8uJl#1~TLKTv;דfCjiU1sJؤސe64yU\wY≯tƬl`[5}3w:ٖYvLoCz#꾸~F.4 '}-40L4()ru3ī˄Z $f7OW(0ކ#EʡcU'{oC]j7%)#V-E 9F).F=&0"F# X~N,qChڥ&[mqL`wzg3w etC6F 'Ke'4)/MON_]Hś+U(+)F*9=FoKv\\q'YycUO,FA Ν|gt^TS2/hyrE"X$D_*T-fkיcđ1DJ)ElU'%8y]J#%sA5Yf8NIVWXt2$k=Q}>}aܚtJ5re P߂g4F9o(Trk0 J/_MTr炖v[MSuYZ.R1Ol%8D,sJ&;@*e j ?{ǘXv*9X "xN,6Td?7,P>L{+C%^(*ZY6|@f FO_1Aѩ޳zwՂwA'4&"/}c D[dH"62AɼCVZt &;ߴ~L%ׇ+k+4 \r9;u>Bc1_?^2w( H.htฃrS6j;~>({iQ"B%VℝEl"vJ8X毼 i+Ʌ&yw-WݎnO@?K?< 8@YX}ug#6u䍲DS;ώT\0Rj+} ;^l`(mi Z{Ҙ?+WoQY:~;^}9%3Q>T&p@B F mhK)UAsCs]gZ>* nLAMQy[Јyw| 8{FuErf} 7/\Nѿ )n!/?}`{-!]X"cbkZ7NsWU <.>bevd{$g6Q/,$5 -lAHЧ-iˎ@1"="hiEjm#i l]z,Hl&0@=~[_PGq~Ȯs`WXEmh.[:*is5wmA|;>yd!a N2&)f}C.KBiQg3KNq}Hm Rb~0~i'&,_dwAN.뵦ok4AyB_}cQM+.#fC*Ȥj<5RwX{CA0Yǭ'tEjѾ`WJ}(^t6ZgS~dr.\,xѠS(02jTō\nc `cCT)$W:6uwp;MKDbo5w`&­žmɲ!{~IZ둟Ocrӳ- ).2.orJ*V1|ҼY#4Ɠ$EӖyY.HqL0ME|SXX¯JG$DdGaҺH vUH8nrlTs7$c-C /~QP,;,9.kNJTLEFIa- #/Z3/wwbkftoq b Ҷ8J0<8ek28p{  NVDbHL]lAm/6N™EGMiEnƒ2A+wo*æΫVP0~6 tug#U@8{0NyrR}gFf!~k|6jIAXtv#g qgU"2GEҊ- v : -wJَbX TO [-6pQXR8l!n4ֲ4iYф [i)Nl er[\ENO:PM/'[K,{iP-~]zu s @:5 t8֓HZ۠~a^i+жf '=QcUUfRaqQuq* 》V4%פ2rh^q@䜰`%-6 zBW;mIO-qWn T@пՀ(\֋6 ]2B}C'wϢV!gUj$qdAw`e(ؔ@n:NSKy2e+N9,?^_ָ)B-`G6ƆIm+!C]lM…#_1-lf $bUQ[?G0#k`f/Y9HUIs% N XDPu ;pZ6؇em妑sS7p $?VeVA`vΝˏ1QWR"HK#gQ“+#oYi ¬o*).{_Yu~M,8=~pxEsЅ-bj}0>L6ͱpyKRB~eXEp^]* ~J>h+Ưmd~lnlGO#2*+)ImgYx^:g9:I4repẗ~Ker7k{y勂Ɖ Ck@rB])r-~)N4dqF=d nN0|f,WKެvZ0`ZS{hbAH9 h;7y,OpWbUE|;.1R|[h337w-7 F,e9l=J4]S;gtSß4k\JqfxlƵF# SzX_mqZ}odž>CY\f>3=5εl";_q Ԇ!B$+0hT$T37iO XQ Y/*\p c;,y.IϪq(eפbFCCR(:'' l`|u n]Yg,n]W0@}V G-w8n֌7w*ceL!l0Lr̿Խ]^|*ŋpٹO/%fuQ/p3Bs'{ +3O ESj!*Ɏmb--'}긞g]8{gR )#J4z}zj!gp9I&j?9 e_@ ҵB^ >4vq } L4'zѺwejxxqEƩZ/%JC73Dc4lb6; ߪYIZ2}xQ,YY|OV? Dظrnܠ{j2)jlc掠{ pwŽ#hc;C/Jmp>@@@E~Y;>p((0 PjBXsZFꠛ!1c惠08Yy&^2svcշa@U]p#$(cXJE¼l忘XzIρ$S XwޞڿԃJyLr4gY+S|(CdЩ-o/"tbȺm:z.1c+%Y]2NtOAkI- 8jb#hj^DzO)Єl-a'~p}S_[[/έ)9 Z (|L:YvqoD 2R?`Ҥ<3?ML7SeE[])@vzCe Ub"F%?U}BIf'zu~ Ňc)2qf6`E&]+LC1Կ& He&jp)zg+e#ძvb@)6L-g=j&TJ8ܡo`6K󑰽I=p;]6|{he-¬#/L5gf^hg3b:8]W|X.VW'4b5 7S)8G6 ARQѼb?uĠW Rrj78u=?x0;tk*E_6i b%E#-T*W`1(5ޅV`qT@ kW4D1ȠbX6Bk:؁y;NAV^ypOI[ {o]q,WXr,(Pr%n 7|~\%j BU4/٤ԃ~]wZΔwMǜЊ"yFmvB4&h3%kSMa $3^wp9'M#MD"ZO6yZ Ɗ4ɧQL&2|Zxʇ+J71 :+wr63ebKl1 Vmg.Vn63stZ[S/1XI.Uvޘ|3T`YFk?3,7SM Ij=`$w!,mDE\{O0|UU)mʚvJ# #k-̪_4 筁5h[~@vUZ9'iC,M,a`bsIO:lvT.~ιJغY-|yہєTgKȶ̍qHO!m+dzyЍy s_J_d Oh]Ӌߐ)n]qȾ N|RQCNDd+ g޲F`]> 4WqJ7O8gN?'ܦ?'*ޮyS^Vr 6Eٔ:||dd7*mfV?lnokr/< EĝT/ AH}NYm *Zќ EV"iYL.Jӎנ1wXx;]ʐ-*e*t$\}"B ?-J:Q٤R":]r5£8&gj*w^6r0BI0ZɆ#9n<5Ɔd@i%Ӷ5Yz^#+I5c_r{pm u) B+gJkN$,(_\Z9[NeSsHF8Un=[]32{˙uX~%YɁXg TIi[2z֞䖧@eDr8ƈbw,mn_ iZuٔePOu:%e0`:H;_ gv귊P;jEsB׻y뮆^3r&;Nc.؎QQcJ(spB|GsTL[@!tpcqhӡdU2? KH>L%WʿՀfㆺ Feg5X?02Kql'X*X":2Ɵ;bIyzY[r!Qސ pg҈Fix2S&#_߆Q\"h[)/Ca.R;D3 #2 " "z}gжA4lE˦%7|1eQdy, j^qK2HՔdER7i2iniP`%K;:q$F%ß/i"*YWNW3wkbіdzΛv cuEkK?kEofCV>a*Ⱥzx=FL`a?x8k%u᢯"wNNnh2=ItuNF$cNO_GUENigiNw-bs^*KZr5ڍBʜ|s43#I)ıeֲ3uW@_ 9;GP[ E,vknlU5lcQv:lk d;""E?da`(dm\8rS&ZoMe 8 c~yg'zGQ#\:_@c'1h$Y\1W,.[])ߍCR%BC#C"rܫeACxn.+s\iwR-c[m\zHKg͛kGbJTnO0mz:xFٕGѢ:m5. [V%+O?i&v]kYI[Xc6 T\{X$?l8a93PQ_7'K:QZ}9T>v0N<@T0oֲP>qs2M%N xH-9cǠ3T.L:@Q`OANqDtٿ銯Br^"O?, ,.꨻' :F؈j :py ]gab] d}V%;u:iكﳒY+JRNUgãP^[ ajٚ8c\ [4`#/\en"ˌ-7a H,fm"frQJs*ӥWEdonEe+Hnӈ6^#{^N8]#w[GZ%*s8gNO (!S{>]vȤ^w?GbMA\Q)NVQV^a ķQlx(Zzy~BKR/Djt[p?<6V:α|sD-U13vc=;wukrg,Wl2EMm~|(*\Q\e=e 3`A ^4yj) \ӿ{GV2h2KbE<zEjY읬Y#tmiMިq;9 #Oͦwr#qJka ,M٣P2y| ]gpX5Iәq*]M-c(L *_ĢP r]^-7+_zǢ:ۍA*~ x) e`|"38b [ +ŋ֖]r~#:G.:0QMw٥BFr[ΡQis7[gN?=}1";HyRXr("QU*kc@_z:[vʏpZ2bU^ب}rcUI;;#J/-2 }ǧ:Fc9kFz@{QSȒ2xKc*KPdTm`JT4ZF#ӯAo*D9K43`Vlg1!ͭ'%K61P~2_O3>?B;-k@#^1LOݡXW_'huIR4ԯ=8qzL@Z2t2<gƕ0ŵ9(3˺,<\b7er7p\z\͔ܽx[Hg׾ԑ\gVmuCǭ`J^(<^Cߓz&iNyTma̫^ 7φDZ1m;Y*L_WmՉtuw)͗9/dn7W1#xע20gLFbELj5$b1]k ɯ@t,mq٢Yڝ{Y|:.8+cf7=k8]IoOkAH0L-cń] Kd٫7D3fRؾ׀|l~K[P0F fRẫP}{aO`~= @ =V _${3 J8#(CR8OT@םCr dh_Qg/@Ƕx @XW 6WjOIC>dko+Vpp(ڹ9N+ljq g6$7ЇxAR >R-A?*LºP$i@6$)a?Z03ĮCfyFLB_Ԗ'ׂ8Z4]H|.Ip*Iy#up,r׆LP"{tcL;LD3fuT=i#$)V0z+7ɝVLZT aH%_ R QWV"HH`3yCDle/"bTʀ~eY3pJC= iN Q}˜;A4HuD GWX:2ĶxCYՆaYDf~vm`(;yDFVp :G66gNLm5>^l  M꿽RxtUPrX@k|$wP-:Jq%@Gxf'TtpI@3=~Z2[j8PK48@1ormZĆ\`jXXPkyçs~[ %+M ȭ*? ݩ% z )=bwEi.n'x@׺tȯTsTFD:,Xw摽 踄/.r/NRhs:F53[Yּ$#kzYomF XlPq׹ze%~`f<=[Xi hVee O]ߕGiMe'Aeu5vsc )bI. `J3ЀRZɏq6'y)ߎJy6m$QUڀSHm;eֿ-Z݃훵=f JzG?oo&1Wm a-fs1*|6s& qJ+J oɢi i˾>!'%džHiWڃhk=lF /ͰoQ ީމ=Z!7 ]' &W;LTQmDpNʑu<ꕪC6.ʇ6vA`A=a'Q7%AJ<ݝޞI j&H@H^t$VFXK P%=fJ>dm2/A!.>Jv!f|IRn(i{XdŗٴS+Hbtj"XoxH#y'b43ZH&A|GN`kX}27+ȭoNv۠)@̟=J$:ܐH^SW02$et% nvS%¶:'GF&nږDE.! XTy %Rކ(}Z7O7bѿd~hyGD?ed ,Yãh)7ypsbWW5 2Ҹ{wI{Z^?aǍBpYfJ<%!2y<ďvYAo!IwK#m2ޱ)W'nωn=׍h:ꬃx0o~8+|܊37F#5!/B_AAf?&DIVi@u]T "i f>.q} vpAefrz?f%C%JRS`@59,(ܯr"/_/oMdZ+߄{,gM U+f"ZV~$H"RFO ^qHRR6h ɑ$7FXu DY7S'-.x[)z]=B9یS`s7_P{ **EӝQ%]^82c)OV1Φ+a*{py eخ#+夽X84c/ɖҭF\;uc{4˸ѣ]A$PsQ1 3*6MOp]7BT?Z!iTkMb_0F}9} 上M:]c1?~ $8ޔ2m|'!QQ_6q f ynNvUk3gz}}} ^)lrœArsw$xlN%[q^E5bHc:mHCϔ/SOO`̳a&y (3T7o49VA8.c #Iu ym36J8Y\zCO%La(oU=(<Ti)!{LxO N;}a5*melU${ōEOyVXPߠb7Kt/#Ih!秷CWC90}5Y}(Xk f?,9.>'&͌f~Ii"cpݒD9"ҏOWMKruE!#OF8hU/2ɥ5"-y>C73/k-kjd.},XMTF\T;z8ren03^#P:J5I 9;BS>KµA2^mxo&r7.![$õw47uKsqt6l;A-/Od"s)NKyt}c҄ 9mG TC%&f 'Lw2)Q璀5 ̝m5dfŇ+K33G,]IJ>E[[:$?RXwoYݘZ^Cp30t]1ME+نMÝ_$q)O4$8:Q#ʏ@A[7CYZKnUz7.]$-} -ql[KmѺйxdW}Fܔ`:v t8>4}Il>$lrCd6ØՖ'6Wv֠#&djs-ވ=X[Phf:P@gE`ÙzaZ=2ى#륥 dXRwC=#Ͷ18Vk\GGQΩlkM[2iFcg o|%]јM{1鈽- ;Nv.!7Nr&! ?m5۵vjgs5Oi?a-ȓFl Cº8akHt]۟rob *|o|k\U1V;xyrRo ]t%l\U D 3PI?eɁZOZFr0;y jӋﴏlI"k/v7ǺZFB:%?rvUR''瓭][U,ˡ٨B $妑~zg2(ٳJ_^PZ0D;*~j~, h6 UnkſЪʠkBN7k>2f4w9Kf69|Z:=͎=bLQ,ٴKFa׫MԓzRœ]{wDc?ay(0hPIS*++TB|.-jdzhgm\VȒ"ubJ=ָfhwH/AWh#?!6huA|5ū}EΐC#47%vqPt^YSg UNU0M۶&LD]dKqtMLo,< MnW>dŒ"uR*FT T_TcR-zჩ߽W!wnPLÈ~cvhǕ׃e l ;|gekⲑ cɆ$u(CVdܐ;5tDuc"@Bo=h-wL#aaa:$scgtƷlQ>y[׵<'f1t28dAAVN\2b_OO8ފ=!IgNޗ{%[mKj "rF.Uu,].(F1b[C_HѪ/jfiBƹCƙ]@Ҋ]kƒ6Aj|yHBၠo`UUJHC˸*bwIIN8@W\߲rrF61Q"\C\ɔ'mZ.χfnƱ:E GBpT Օ1!l-sR8OSՓdmw|4RP[^i|x2GvV2kX|%`bBhkmP$շ-p 9}0ed |b*%`VwC|&%W5K|Ytdj{x$uqWkuywP$Dp ʐg 5 ;?o![btrag{*jOk,J\q^BnKYFL Br-3 T8E/}xH`٦B'!G5ڴLxcE+6ePpplضf|xyƕP^d qJcE Lvv/߳_vrA$6 y= F5f DV:b/>XZWΎ%ı%"vnV'R*Up{ yg*Y$0$°0u#I%D(iSez=i4ٰo` 5)X0H|bV0 Jiȼ57j+;k |yQdQ<=UOf g$Rn@sriM_d L!2&LcŝZƼthm/J`KL8'ᝮ•u_n #{:aN(9.`̣^0e޾n[EƏ!BM(`rDfie:cfbmρHj*U]M o5ϜZb aH.Fj*Džs#w :̚NG cK=]̖bgj$JAa=c)H8ͶD>r,wPǔ;d[;ybM3Ù֕e?~>6;Xo1(3sRժs I GʲxEu1$~!c,7ښ} Ig.~gG͔d<5h#+ᳵJsGne ꣿ^QN+S ?<wB+)kk WdR`a 0cFX#eke L՚'h,RF~U%tEm([zFeOh3fRy\АG?:[Ah3C>΃9e.+77ŗ eaac/n*(E7sFmz=j wty7Lk_\5N3c:GY؇ډ>_<I6lH?2@l(ꮯ,)r\1!А8>'OO~[8D ; P"kxѿ/V#KxC_y o];lcIRxD%w;?.rXu-dF3ŕJC"3e ~j/Z\TTCxjލRr|SAIJËƯ`-TԣH"ZsMOyl+F u5I4cz nunnjgߔ%;}ٚі)hEWe`@`!ԙJ ?I.cqnA\\g]Nz:af-%͂]ISҺSW-aHK:7')kl:,@RA}G) 6%2qޛT%~hHj}ah^u!w@pfn `+M]w.YU#f[3L'w(|Fݛī 9 /Jߍ;HИGŻ4YGC&3óDHVoS#ҋGs>l:})y@mLNr#P:7n}]>`϶ㆴ O@N:ƣxd kY P"MVDLqٔxhӑHYݮ atO6<$ΧtnW451^@R51?0V4];.#>F-h^ H4rF(DƊFH;~[a8!bn{xb;&75= Z6hJR֨Ɇ@J@Uԯ!fo@7Jq 4|]KwDgk@ZDh,R8%$X'"֢Y+GY" ⻹}s`\r[/ @Δh%M}S0R(}xN ~/H.>Y#c4cb{hjn v\vLb%S$^!n~^,*`7?Sl<λMjz.ƻFx ꍛJ79DwZ!ԿYqv6F )H~o{&nwLqn93.㔰>UtTܐ$+)1Ɏ X!H?#>SHoEJxgr2W@QV/U͛M a s Rڿstt6f>HQ4(!yò[uaMǙyXd'yQ@=e8Ԃ bI鲽baсW 3 L5D-oۨ?LY<\7CTJK1r}D(qO'6 CZqv/>BY{`ء%1_FOAF$q.Ht?8e rcDvjU,Ⲿ8X_7X5r8DUP]PbrPk&c>@-Ș ?`4L f.Vᆢ|܊NrǜHN0&8Qg^S֕ v]e#_5]eP[,0ǣztyŒ&2qXDžJ=]na;ICV:7Dsݤ9(^~kAEC]Cz.ɏ޴'6>Ӡ7/C X.i(?p"$j8KA3 U dCQbVx0:8jGdglL6uJl3  XL)Ф\u;\}UdE`ՇEjX܃[3"SڀLP-qI Rl"p hSm,}Hι~8b ¥ WbjEבFٌ!" `,9Cu z?|+gFŁhMp)0Y"2t[(lDʇCx'a67Ǡ_΍?ϱAJl)-$xٝ ]iz}wMr_s"N'pn+v&nB9 GsaHcgش ͬL JuèBp B?Z3✊4 >t&:׭VI/} \,yIK=9s]_rWwԉ'H眼c Ԣ/$Ky )jmⲨ"aFq)@Y&Tꔺیu0(=O /{<)P)I@ORbz=lBv,?K{a}aCs)dY݋Am)u˱ڛxGrnd!hdZ"Fԃ[pbȎRV2.+0zoC,ON]K.61'% sɡ!LgLCqzTCxz|d@$$0Kc/z 3*X2hxq[˧3aT6y ];l-GB;Kϻ就0,[ynimIU1/&D¨qsPJFFv8T[kpAW6D%چw*CI,$8Na=&X0̽%$vagu P!:_:ڿ_pCK baDZAyẄ́MO9Q7 u}v yފ=J;akcZ[b6n1.;&@ dyqBl} J# ,#Ki>? 1XFH&1bZuֱ>G aZ9 ~u6)J3;]`D +cX. 6'Qg{K\[\P Èa/YFM WSb&#\;17OS_ n4SDLnϢn n"V5klξm흵5E|v.èq4QϬ`hc?(8y/_ȨlDSSwRx4x=Oȱ5&vzip^ SwGf-qцFNрU<ɉt^HԈ+yјDxqBǜ (怎H#cWٰ,0aE<35= GsONaM z׃M]JC,7DC1>5ӻџ A0ِ'|~Lr}ՠVuʉ ȡ@CBqE a P蚗O?p/oO;3_^H@JZ ^w{NC2%ju,ѵsZ [u a0eM\Ehَ6Mqw1zVq}:uo|&iۓTB>NqѩwZ O}ͲmIp\-Se[] qθ9þ16}Kǻt#Kɵ Y-i?E,WË?\Z5m  Q=AtwQ*"l&nMgOw$Q /stE-հ>:`DU0> _$ VOw$i'm7ƛC+wOZ"j N-AusQ)Pd1o \(pQ7])g<hnސ9$~ˈk!c D(j$Tb+!:_WX 9-!Bʱ;JA Þ>ۑ1/Rq|牻F>f3B_ze1P)uPvw3p8S=J\.gj~^!B f6FXhiȟh@Of?^F4(69~b#Q{)}Z\;YoԌMO B@D2+R~Ȱge+Fr+9ژWm͢e2qd+`Oذ{:(`htDf\J{vT$s?/@|?9X R+L͔vR5ExԃpQ%xJ `ƞt{E_3yI ޮuڗxiv/1VmlCׇ"E<bK9BO!=?"Ig[Sn=pT pQ98Qzc9Txp[Qz|JSsCGqMψBҁjQȸ_?Zj*oI JO,A>PR.*z{ŕY03[CLLMBhm=Rʄ^rʺ5lb|e ,5JC*>r,:d̏-SU]3NQqfFcHS}U5j%(ڗ] Yuuno#m(Ԩ#ᬘv)6^)$+_F2X]GƉ5Fa'*y+.+$Z=r/ښ9qG%}4 VTiC*zsޞ;iY1(رa IՀW۱:Ҍn :R1!~)Ǭ-$x>.ǘA/(P; $m@*kܕ9׵~i\ mVG^O[;9U%WW{ Meq]d/`Z|:bZXm 3w:hE^E 7Ū˗GP&J}9zU2ю8^Cw 44aUMl<Ƹt'oAZEI"HO#蠜h m"~@\z뵱3ڈ=  >s@Qs/b{,4"ybV^jh\#c~l_@uDV"'cRGňˆr_!9L-u|Î{дa>sِG;!cvaVj-pZ -jhZ2P/gH_2Ë8KN3d]cSgñYK5$|l}OUڄg y Za!#7 z8AV=07B."ˣ6t 1⒗ b9G6Lb|ꁗbuː%]B#3R_x WzH9Y(>B-}Xc&E&GI>N/1lO8xˍמx /ճmf02E+DYP?&#}j%7زxQv!VX 05o~VkeO.v~(=oiJsd KK?\9c,D$c?oo˺cDqU*M̅afμ} go sl7p_p=095T39bpxu٠/n!Q/GO͟G!s{(/Vzb@/c~'pvG:G&Cn@o5Ja±ed}b,0|-ꖺKVXOC[ {$A65(Ω7_is#Bs7D~dBcTp]a-&I>b?NnΠ"WCY#\kbXhPb^5V¥i&" BI -ܳy-"]c͘E]bawթ0#`9 }ʰ(.@%˘-4nW-OL-ϟ9p\YyM}' jJ &QS(qKs=4A#կCml4L ą} K %2Lj`pe+CeXwx{$Ñ\+[rH;FNUiH{ZqQZM Zt{Uh"Jpx!Z z:.̬Rᗢ$<"wN(ۿkMNyMpHsK<  =9ن=Fp(?v>L/܈ JVZYOSޗxľ~eӚ"lؚss|ZݤJ#=n1WTeH>1)&lE.& (u6k pFtPy:g8K ZțկHIDNZ[!D93!tYѬ&\|Vۣ+W.!0OZRUаEY>旱 :wT#qn,ӄӄ DmX?}|I{FB2Af>ކ5zZ#ΛP;]/JVjF`ta~/ɄW'jw>$m@t$uSgh>~Va(vS" ˰ǀ'ZYm(MՀmύuqOn·i<7-hj`gr;cVg:8d7Z_!I87"ݞZYH&PfFLFt=9 2(P ϋbR4w3c{vY%t(u]&솵v!˸J_BNn꣋IЧS[aOS~egӹLTL.L @Լ_^^LFsDek7||⃍ܴHdΛ"\ M+e! x~wYFly"k]} t0H|@Z`w#"ʆb*͉JXp)<Ћ`r'8eyƇ ފs@ucݠȝ/Dc(uaG(*jf&xil16No暺 0- cq;2v;0Gv^S0VerfB%7w"&&kM1M87_\]øCzS|:}(*L~ǔMTurI\М̌?HZa^I;4Hq؀00"܄NMuav%8ܞmaq̎ oJmFEe]}6*3$uw3`E>2]E=BN9 ȊZ[(gP)Bqo\B)L`!~ MmÛ![eVMNQ %BݜDe 93'".i(Tܙ._av *M~~XA԰4Q&I27 ]g6M T`B3pMy6N^ ٹKiz-ɤ6w0V&7\eo"Z ;x9ҤP7$lIE7mno ҖTyt&T#mtmO @Z\zY+^_@r輪7ZL7j`Yʜo 89)v6P [ KWp1lIr6|o6DWg3w!&?#[ߔnK9cb1 cwQXGWKRD/USw"|;LIEi7~W]f,xS!dhL+yCpCAdZԊ첑 EOW+=w>٤Zm JDOWhkhp/p PCu?MF&-Q*OQMɽ /d@}8FSdx XzwjKN:xz. 6b*r5&{1p.`g/B­6z~niXOc zߜ1cQ ϴ-.p~e!>oƥvN [ #AN`dri~0k?-mQhۈqeQi}co'0K|D57Г1'Y/e_|Jq"wFՃG0/J[TTų h!AY_"!h|ե-)bB%eˢ[ DN4FhC=\#u٩&0:!i,++|:Vc¸ៜyzyF%|x:c{ |bX]/Hgyގ0tm+⬧aj);7ܔ@:|юk;9HȢ )n\G9 b23;; pb֪9\.Rm>XmB,3}M20@Ipͱs+[柢{uKd^/B QX%v3qY/rPP5DDҨ 'Iòa'£hH1fjTLnb>nUhm}^ +q&l)KM7+nm\bf⸑%O{l\ClzhJmTӎ]661?KR;5S)e>LVFZ 镻n'1pn %idYCLZqSG1Д/bPSv ׸3(66+7>!(;vK;< ?sFmp,HOZ/ar4X `,KAUhy??~DzǤ(,3CֱT׹}Ie>M5B3P 2,[{s?ђ [R^NɊ5!rcEW 9c J/g !Evoh#Kwx48E8=\D{Sk BdmA~j6M2Pi`p Ux >GDA<)vo;K^l^IJi1BM2v !&_!e>dCǁ=o̗e T Yr|g^v֘;$VܨIvozRO?Z(2HV!,A[:iX4Ϲr~벥 H#qWWIz]^` Tj!0m7x=0`[:/0)ۊ]<xi/̓K%Z)'MU2jYmK&2ż&n3QH%GvUNpًp>5]xalIڶiV*~ig1{:+bK2޹Kq >!lI&ƈI1&ΤAʛyjrZR,hm'u.+B srlSxV*AiL,pHus-6٬-ڱ)i.shXuk l]ml;-&RJk )IU2D8o9s2Y;~M}RGc1XrD <\<˯W.`Nl:$3oə}'B\XvZ(dY5^u|WZ&`8кO] s9i(V Sz`37ߣ$>;,=#/eOgN+zʜ>7a.G4޳Zhk h6ѹӉOs,0 )4͐ B(  a$n31S5[h1A̅` &6~`:w{Ckl<,OyG qAD&GL4dGS$,HDSqyK׍Ґax^wkdwoG{SIfۘ!!<5ͅ!z(5z,}l('ޙ v:.ЁϿT b2&?3&v;XQ{V;Ub}Iҍ[A]zpwY(*~HMv91kFV2rX zq~JN}Njy%BUĿd` /aV[/vԛ?(256=AW"}DeumE&Ng=ĵdg]_Q)ttWOu=hNPA j8s5˚ٽP{a7["Z|FH>3Zf,WHzyEM,xm`;.vڠ+=ULY~'f}i;>N|kKo H~˲ܪn%3 !pA4x56' f&ݬ @5tl|~SY]p`z0yvw3҈uK?E l@99{~pn``asxjL:Hc}tnYj9c7'4يP>2 r,96]0Q%B[>D'w= Mk9osq !/R_r| ts9Arن 4&t2L@o R o' ,5q1p^U߼ UnOhy$M^;F]|.@ &[.Aiq īg0njR2:pKNvbXQ؉&39Ǡx.5@lܞkE($H*!=zAtrnȒj$W X~Q):)P$7kWVodCf;1-j2!~?S.|x k9Rm"72LGQdz,c\ 8TJ| m>xXן!d}$ `嶿{4gn4907ksH$Qz*'Wx ǢbX').&{֗v;NU12ubtIK4I*/NXHJ#9t3$g#1MQLdL33-:z)\, A SP#HJ} ʵ0a*hXD_0nlJW1G3(~"яrvA2y8˗]bzK֮2;r=,mFSK8&w$8;|˖O̦('O2\_8 `tW_aFe%>wG o9n|&b}71i>_ʼnϵq AKF+%*' I#IѾpi`"`J%,cu:j HcWIgQbyrX_91z^S°4JƁJo_< aMi b.aup|( *~4;Yhd[ :-H3<@eV@n+ZPэ6Cȉvu=ˇ%Q NSF1q[r"ʭnx6ΡnrfDt>཰uH譚  qy+81`uMzcDN '6 TvGbUb4łK$3KG;fs i֏5wm'/ޗ9+^fH I"m%ZƲ1= o>ȟ[o,1exIr vHc'سqi,K)53V63">vFzN5aq=eܸ$xUa`r/=oL:\#X.#nwnӾ4Ch-A5Ӑ'lEmУ=Pk0_V6⌗B;j'[ {]l70"]gP&6wB(~~p Pџx(('¨o_JP\Iy5CEh^n6hG߹yRtNjG,k N|ciuS7 *vvf u?C͞3e] /fxo]R ѼZf=;t`8!gCC"n[#6J>o@/();˄2_|ڿgXJc6X6$`l8MxWAuTBrk q8sٹjzy`dJ6(PrJzp #Se~xVz qbWk/?gTU9NX[Ni+͂uo_jLd&1~>M`vv8Bhvgj|w׋d!0>{#T&4N@5OuP |ëO2 >]Z\ '(QqKǍ߹P[9m# @\^=F!*QӴ L zVՈvbz}MNj{"\BӋx)ver}O/ _f  c1̝x.y3' R8_iwwuN؝#-P;./O/ qg{ށ5ك#\^Q".2fQBLHiQVG$oK" STzMxB)K3-;x' )G].TZRܫjl;8ť._ "u7Rh>_?Gq(^L%m쥽JLSy|la"x|E>˷r8v>XZ0DK3=&J0;GxAa9ҶWcbA%{K`ϿQTXƠvG=<Ѽ316˛4f5#:_ÜJnK~/Z=\5&rO"kN'ֲ>k"g#Lc~MC^L8i4?٨rZYҨ9}eAV.#f͂5&Oa\yj\,)8VE@fM ~kf-.byYj昲VS^iä73(T0[Cd ﻝ(Hτa hۗ<تwpK`sii:c^w+uu/t-2/+2ue@gCp|E͆,![ :R 8<O6v8}e`{5ꊭ4rw/5+WքgL?Y'k)`Qwr"hg^v[ˁ2F?X;?ꢹJ&S(xDvܫ(x$eLbҩ601b"MZY@Uwg4YN }eU 5t+vE)N>鐋ذɶH_yu"T j(FŸs"V}z2 {vġ0*rۏDϼ(}Ʀk1WB4(a #E.~!#  O6-4̂N>]*&$eւލjbRu ;y~ gv6[ XIǻe{k H WG6_qO{"m =r*@_eI4Ltp1:G [wi82?qT+ڍpouűSf1oPA7ݞeQ Кc=PϓU(:P>$ (Lݱr@9w61Y?ytr#>:mn<kO>t\$~t1`8٭sm7@yY>'3cRaOy}ʠd+%B9w ehSpsGf2UڸCBEr1Dhwbfn|#Q`V-듮6O8/>( uUphAc[lNMB ]( 򪏣}rH[z2 a:8C~hf.;Yk鯰zQj]̵ kjH߱b+ak3+>U"w,2ql}!"9RMA)Bqze)m3WoJ)x1]쫪| A<fu>uqRQ'0 q/=2Vl Z)O;W8Ej(W։|id+u@VmjXS* 1И~y$R_E1͝>N;<3]Q0 ɻ4g|aeI(aʣ 2+N^Omb[v2ʥw~VU'u-P͂hu1xz.\S"]+|u&DB'cy1HWb YIK"W TlDd>(ۖzuLd%oXTyS{ \t/AgPг5ҫ8l8ڄ% cCm;Fb ho˶1."M Ghm^t 3e'c !}erR̃sw(uٿAѥbNT핝e%bz@ߦHˑUl4QZcJӥ$%cv)`]@m.y*. gDyh4Et:2|T1~X$f Z͟]rk8'q $4XvZ`tDjb7o}NY_PXOԁ ZKIЯMuAf4?P`b`{Bz\9CV&::4]wDס)]  %/bרgn!Bf n*%a) (8]!.20'ZKq ۧ@QZ*I#!TF'lh^%ԁLߧoEu&׹Bc"j}Y9Pt_~A)1jM <ژr=}<ñ3 RG))'+z%q:xB*D\n(vv){ڔF["g))ifxy RS8Lp},.I j;VtZ9Sc.]IxC$ l}&!u,t 3K韑,Gʾ۲ɪX,=p(WR9gJYj2˫qt깁NbpKwF; oTg ):Jx&{C&Y9 ",-_+j%)ɦ\t `{=$G`[6xhR`&ٜ)fLL:Ye.AZEs]GcjZ,IBҧЏ>Pm9< Ӹgł"SZ#y-]t ,86ZxBlxl^pwmi۰zHTTʷ~J(kD47LⓂZzKu5uH(!])KJ|{Et06߅I`tcm\ؿ'* 3`C duoGI K 8=- pu b~ST5pMnsh0 kck\~羞egreDzu> gm//躿~{fA Eڝ;rGyQv}6 txGu-9Ilޕ'awCaw9b?/%o5հcj:y<|^\"|Цv}y,,[zm]>͢}$v G Lw7G78kxmuԭGAZG/-,ƙr}2r@O=sWJuw'N  >uF1){fIMҵԤ<ޫ44j:O9{$r^HgNUIׁUTLB:o}HE~YTGۛjv'hⅲ :F%Yʥ5)`{QJ{㵋`m:f$YԴO~K)!ʲ<ß^hc#{%$=;~g5oyNA .nHpV $ Y->+ D 69-'[Vnv+Ǿ,|ԙF'cvk3*SyWƘܝMn]_hқ}pBkTd. JGH<To:UU5q5$se2"#@@1 6uHi:YʘE-rxXy'[ F5[1ey1O'.'{3^>KȚ:L|I |F[Hvt^(\hO4E;&YNJ#^~հ;$KihWs8|^@ ɴa{ Xe.=lbK'';k qvʿm'.|e꜎tpӹ;Ãl}*w+G*"8~Waxj wƕ#)tlzPҞCASm2}Kw34E#<³٩^*jՇ4g4.m#N QE-Jvt-0x/Pӯ '}sN܊ϖC;qSf$WXqa]x 7B3oB wi |XC.f2]K?^JmA\ A=! KB]q[(a7'ŋ~r/Շr~"_yCk]oY[DS |/-&1CeGQ2tR/gMʝSlu(%ȬQ7QHnDWxU 8_T}ړ{:ы'YK>y~@2ㄳ)"*ُY%|)u>aGr>S~#R%1k7W}_t8TŅ^Pg'P;dtm5 燄Z"Y }_:pbiy_ZPg |%A8DD!,"jz)3^$Z+CnS3"u5<\*~5>!cucHB+xA̼(yy{H95aBM޷4brBZc$Syy܁y]Oeܿ_ZR{aU1DXHJ s%v#&b9?/%#tӨNFy)fdy&ov5徦s4Xc1 ,HpW}Ιvc&L]GO " 6rt}+-}p;N9s%jțG=Cuh$<BH8H3jGwlzQ"T|JϘvρɭww@F*~)JgYF'5  5C?,-X)q9~51Vȏ2 >pbV%E8$Gp4rW7)!7!dЖʫ濎uY14V?lL5xZb=;𖳋FO hߒu @חP4=Mbsz ҩ碥4R1>+3"Ϸ##RlCfԚwxw!+86 {?GܣHk啂T PVyX!ؠ/D q"]+m(Xs][ A . tV򩚚RڅjXgB޽p]cDལn`l2zZ} kf,nkSLxmkQ ;OO2KlJ.ԫFﳅGed|n)B&d/ruOjɡzX" uCp~SXD(k詠\nj *+*26ZPF;0\^'jִ{ Zɸ|v*v EO6WqLp2]~s5__9= U5!ؖAMGCqHk>]lîPA<g&3,FxGocIAz'>Wj},ʦ% ^=>jUjhR1Zǡ"H go_= N{Pۄ\H6)L_ ^&}MXwLǐ}*m(1w MH|s0Y]m/鈏oHHspB-2 yNi[韢4C=gY*5D)[C5aAb6Z1K"+%u_a4 h[xFK>XK`RctbVЩ)?omJ- +8]u o}i%bTZ2Qz(ȁBʿp4aL]@m4 3*|G-8zJ̲T]r#U{ w fC֗ͧTt\\YJ]oq~$ 8uF˾ѣR%RSk>g^cu>,c/=YODK0.D, ۓ\9k%meV/T l'awP u5>yW\c;ãHI}[[ =:zLt uE͘!IQur)noGґt%->FHՀ@sT(SQu,Sy&M-%΂j)J$׷[ׄL ai>vq~;TG9NB &7ᾂ:UpTcƥ,.Cz闈T\GN2D]s3 0/I4 phؤ VȄkTA3VᝂF$K! ms.lɎGA;.,~ybym?g\aFma$upp!p;G[fX^ Jc^.R"ׯUIx5SJ$aUaN%vlB#/[b\IqǔUoqx54#LZPOB9xXW;غ k nKB Q9 \#{8ºCx -2˾ NLݕȏm#jbק!?B 5Pv{G),1#E:5dz~I֘ Hxeu @LgVڴ3#JRV ߻%)/.Ih>g:"U@6"G3rzzS2qmx:BDN6ڄl1Up5|Ȧe]hIh s擱dAUO,R=*ej߬/ N~Z4Wd56W] |,H.xj1ܱځ! tdFƃ mdcgB(N2B8'L/YE4V1~E xra,Xbd{G<r[ty=a1qx~fn꒵n+0.]fff68p7׍QV_LtUC c (0VS7d5!WFIDH^ƴٯn(-c(RxdgܦUvHʦuXƎƳd9~VY= ˊPJ:!bZNj7 _xW1ᓡ{LVq^y! Evu_m r .:HB*ĞkږJj'PKġrTA)Hq20reՂW:_=,^bܓ'A<!9R w>0y =wEwm;+aW\XowIBԓ[K GkLCQ5T1 3AFIאi?H~IImҨ7DrRVZZ$iHY9[@9ݥ%a~ګTPtw݅zL%A~9Cea2ܺ Fr[Y@YWeǎ{D{T@Mv/-?,z% q7@YsmO<|w6,q=ۧ`cxKH=vm%n;m'ݒܭZy;Er?cRxmp%Μ[MpO^X+㟷~G[ׯCe%cJNwSsm$4blCԔ jTxxn!T=F0q (uSAtw|-ꮉxS>R, wlĭ<7wH,*Baxwr"Gg/Lj*/J%U2%D(Y'M8Qr!MF>^_v޽ +;ntE+B%dm^Vrz_ϵ~.đ)ԳRBs?[G7G <ۖ&+Qʺ Tz%.d0YF#{8uQ܉7LZoofjI37yl!M srl%ZO}[%Iuqnh/fJ019uA,?6AGiedE |LǠu. ?=oSſ8ep%_Vp]QvM X 5l97E5UʒK$*\8yZL5e;4[`o՚^ZKݶϛk{yW?DU.0S=ggD_ј=߄H䮅^L`E(Cfvr/ğoRFc;*d>.dgqCbpX[JYQK+o~  gUo l1)c|ޖ<,#uqnXX%,iĥtv o,*ǹD!ڴ3.'c~N]L r, (0V>FW}yž趂sX!K=,q+|L%1Vn!'tal{f|/Gm"sm׷9 cjCI$۔)!&{]$SRt"bh&Ďԫ%ՂLL%1YkdSg9$@z|Or \3Y4FzIm`&]AGXLV@E we ^v">0j5-2V3E [J!>b^Vǒf"!hEsvԇu  W{.َ̯v'FM21_3SG<-!噵 -RDb ~f 9clQG{^hєܹ?%?z@!Y?(wsǥ(JCiNJf$ $‘Utw'e;q^/tw7̟b3,*`Qg(¿jjdUNd%\%q2 7Yt(GX359q.Hr,=/y` bC;ocg ӜTpjPRu̞?RϾr'd:/3)+JceKz߶#xIq+j[_Q~dL 2.@0cJ@(+ۂ)/8p>X ,~)<%zIy3@r0 Hp K2v@¢4oFl^|"è%ʣv'8K:8o>?UR0IkJ6j!Cz3(*xi u6zb`f|H rfbS.-؏K!Pnw\5Ifz.l_BB'7nAX\Bi[Tfkqի5)JbB|xB\C\(&iԷDd'd`<+ǤrjUGxh&X6OCX+Z.7IQ@bO\b4 0583;>7ԓHP98RUDEBljX"o-:(q"vdu4A6ѽ^|` 3B󋲘1﹩CbvŽgHlDJ"]SeoƐz ;Ԟ !b߇JNZ:uXbe#AOƈs+etoIbzVz}Aqnj|[GxדxVMT 869$@SxkHPw.pa吼md]t(y-#8iqx|J]qBQmh0  a ).c>Ylǀ)(FB06rH%Y߇K(2-Ѹ'Zd:ٴ&\'"@6 Jg L?Μz yqB6'YPQF'I/k*]a? C 콏fCU+Q5E(z@J-s kKtM&x pJ8+/)=EU+4N]8]L<С g`  oOT lk |Hr]YB.dwD}p?b$*X(}McലucBe?"^J`6sXpeb.vY2">{fE?.聲ĪFCuQ_ 4!?6||DJ,Q#6'Uߛg_2 ʼEk$F8r(AKw"P}8P/cGa hۍh.[e #ُiY$|oTg\ m^M4`rxLo+a>p $? rppxnܚ Hy.9!1}| <: =c3M|W!{g'#U{l2 Q>蝏E%sFuBx~`pf`%  ~)\Izi_7&|a2D+ͳLZQ{͇ }*1; qdULxc_:lgzlX+?$JBwNv#TP?@83JUXf=Z+VV 5L`+5dBPdr(is  ~-"Œ)TL<"R{3XRAfO 5r"ýE[ G 3YE6I5naN9Y53A"| gd\m^/5dw':h3ᘍrmJn:6vSh&b_qKOQ%8lNǚ3Fn&0osŒ ֖ u͹mmJ!yEn*_a퇠x+OҎBXt1DYFv\3:D;$eIH QD5(*T&G(]4X×pL؅b1)U-R}lJ-CW$<ȗWu:b^v@,`\##Dw4\t_L~ ۸~pf unDYpoRlEtb7,xe3I 2!'d^} V^jP}&94(jbRVQM2HgW6-W4H"Y m26]>Ov!6>|b.Ӿ(b>*-^\lKDž/1T܋EGcY~c2=_h,Q7!Ӄ/8IO ! V]L8J i#7?b8ΜY2bc%K@{;; f@&Nz- 3|O9y&t6$3b*u %?aܿM,+7~Ysy1}7l+1{b$X]@})_VJʵ8LPQX%ՖT q~j6v(yC5Gv x P#N.yP?2Z _-b 5ɇ9,"Rw[Zy.B4aW,kB~ϗ*\ހ~=#nuB>K[܌h& cI{0 ,T-C::<ߋSV5#G030D534tP. )De^ .pryuhYW?i%ƕ{PWfA7=ۗpkl>uΠgNvf\^RtjEGt49"jY&ԔzYЅ'*':CCo\JϿ5]A ~P3$-Ll CVZaRK!= hG~CJ(8Ī\|$M\1bsF@KrOroS E¿BcY7G 0iM`91ٔrB $kPiIMO:{K$\7K泥k U5.Uk01o8VCQ͜)_dLI2y+'ؐD}H+ p`Vr/xʄ@/"|=V{cpzĴi6(i~)tmr( %3/V' XM 8>Ⱇl>^ç]sjV>u[,@A4 wCďSUV ~uby~[G5rZJ5Iu&MEqSқ;˽E!Nt)Vz̔Ad S>? ?k¬tR5t 8RTzB`U|r~͗×py{(ˉ> L3!}D>[bTlZv,{rI-Lph= K48AI\=twj^F= Hj%UoXk 4{N?u[IPsY~-\Zkh'DRa]JE '-t$y L-ө9͊`dɭx$;^+-؁4,/iR_NQ8NMȯ k|e9H F鱠2⌚n1|t,Fu#YyIURW0<)w] tyAԠG[omz,7μ2g0j):sJr٤jl[GĮ`ĜjTXTN.)8\_|#y23wK +or!Y(>Sv|3xc 2>I(J NfY&@,imK 8M"&]e 25p(S:^Nǜy/z#$`Y65y=,BfD}ݰoyQ :6׬9[)ps[$'zx,[5K9~e7bx>%6;?7u#d StB8JA>B*XAh8p=nNG͉oP+{pmh=>D>|4V$p^UL`T,QM> Pq[AH1|fKe>Aw.vcUJDޜ$:R*t>x mmzAce}fwȞ2nVGLEF%w"'T[p /Р6QXe 1M n\x[N:Y11ӈ*gNacǥ2TV8|a[Ց(!S Y_kF/RL4),b¥= )'H7墴B*m @߆a`PAf6xfv /A&:~ͬ[pY-<; p˪K33Ղ8z&\O1mI,0/R,e_ Y7rȾ!!ȷ *M~+bٗU3;gőU3N<Ń0&X+쀮 r02uzg|S3 e&/7גB?{Y/1mص=WL;*,R&Rw'J'6:4~liw]AhϥliJ| Eݏ̗UxI< <9NcYަa2L6b{2@)IYDff_nY;PPVe dEaQbn`g!bi!;~7͏`FoX,$\EQfr#uFta7E ;B93ijy-&%1$W$&88RAs \{7zOrյEhSEF,JSGYF4YN(l)hsKu>w53LL-o\hy ?4"5a`6|2W=uĴvjfނ\cr [Q0l|P"@EhFT4J\Td"$[~j酾m=ZaYY5ckD0L]̲C5fБx l#>hbsKIEI3QG,5 !Pp0=cς'Hu1Fop^YZ?rk?nJ;><{Mn*DZ+.- J)y`,h1NRoSͶ-Oge5ڨdXs 8 HPzy[@#f ky+T=f3t4H#_,^˯8݆S_KE>j*Rmo甠A^f:0_J{^CN7'I^ [(r\9r/z)Idp(\O]l;$$?U+n"/;FG4uN{JcӆV#2PJ83L]ۋOWOgʞ`D._ޜi\*AוJ6w{4ۣ͟3'ȵ@lޔC?7t5 φ (Y[ @f똡s3S8\HÞÖ6&(J/IKOo:Wʢ]Y,ϫ5Nw?h]-{&!]%aW^ ɭAx1$45/L-r#% uy-%Icҕ{"5{HC>+DͲx1J"'jf[QidVѢ>-k}ʼ+|P@^R.P<.>>wG]ZLS?=~~;к1`RSdJ9GOڛTVvG(#YݴidWdzMޱg:ڎ'\a X:ѬhjR1xϗ:A}h pclxtԤ,NTo[" qWH|R& sy> ~DL*^ޚ,wJMj9uZlͼR)r'˓DU@5KbrK^9h y߷f:D3V蠔'^yo^se+<rScN\_5!^+5Y.CyzFͽH=g |}٭-8U+b$8>m/R("Ց31Ӛ􂜌,VƼ)hԀyI^g!"D9A-̠7F8T),~po9 7fʱY_ӟS J}s=$roDA -b58:Cܻ~*z%(9q}o%߭_ӄ2\U3rW"y͇m2!,7h٫ Wm]yz]Is5wsy 8U˷H-X~ߤ]C]7\y1WȚ((-1 O喉鑝PX2Dr_>Rh0T;SL1A",XdsFU6&U[X3>l?O]9)Ay!OZ̮MRBz[T+ZѪ5:ڥb 9y>&<3[}k(CToqi(> g vD^ |ҋ՜["0*.x"`8?W hNW+}T?im 1 1ꩌQFDPd ։Ԝ{ihy=:~7s&:?:BCQ}貏0J('B1 !-mI Ds'6_Ib%q%r <(p-;p t);!yr?U+&m󍝚[fzk;}yC-ϫTdqrlOě&' uDeYCI?S jp ([˜W_]CվکO`Ή~'A}}T)m'H` Xٴ`Q\հ }$>u2R 5 cO'u{$^]C"SybXolIxcxb5ek˦mz1_>;*Gt1(>Cz' 6o&hG'in{I./u rՆ4['ͳ{iDS);B(_2U)&Z}~q$3ƄZRpy*' M\,O@X P?D Aj~%ʲicUZWU]ho^.%ϖ' aI+{m; Ǽܗ ~STiYvnx\8?qG54,b۵β yn6\Raϛy\OЄ ;9*K 2-BUl8xŋ$E W# {y63IVzdgNٔ3 #ɡ静/ef\ 5*(SmIF|jFizhGϽE{O3mޛ'JQ!~}0p#4.>k'͕uC @t"DGX]3wϛ) BX8xv@dɇ3-W9G:OVN 9~h}9.vi.nWҩ Ko~O,l>/#ےKZO5(=.Dpal<[W9H󋝉RsA8,"ep/'f>wu@kO%/Fm>Ե.dWJI5Xiz}6q2]6TlF\ ]jv)\HAȉef8Hrd@s F% ,i R>:c~Ny!LPn_O3ckf_]#u@9s=t3mbLкO)i\uпܗX6N}&3aiOhd b*oCwa݂׊` M sW$o2^P Ҳ$6 Zj1։ `}KYR)rql9XAg6f;8|'UZ5##y= ;Fl| 5pK*}*́?iAi|r1%Ftz(lTKlv/߈P>3#_rwl7UnkA gC(v$KL ~KGɷH)kjGf;*Hu k(CH ˮ<|LOSHUol]fY3aRuLOL `6@h3B6rКe/kh@Sm=!?x yEY= CA_bڪ~ӯ:iҶ7Q- m,-2xJb."D7U^#ϸNlV@cآ]%qSc[tғ-F 3+<]gI21n",Mx[cIUl0,jOM/ |]mxn [rNRBĂHgr'ODxaWzOz/[f\N r1#&G1e }/ɏ3} J4uנup\8/4TL겎L6qOaˠԆHfz#P(}S &=+u)rFc_S1=W.BD{I{^z|2,c'5>/2A"]`wiu{1_c9q..3j0x*-v~oI=51SډlI;:o`B,u[W$|-rGhNsY=*9͏ƈj?.Pu&ޯF/6 >MZ .7ad:0jgxoh'mqTGo<f<3.vKL/q2f3P< ҧ E*6j0)JaU}#)Nn0MӚu|Tʇ֊w%-*8a&y'|Ee" mct^:Z al3G =- ՞k128ME䍥WuT'qraB*T/)w7z}?$Hky1{[І\Zo;թo.!l%U)hzZ` +M2׀+ q]VĈ:/'[ ? qIjwFwtU7v֝wǣ'M /uNfX#t#%h8d[ы$ L =N]hHu5 F7hu[Rr%.;}l'CL\>q:hξbs#X4d{5:rj-T]%% 78b|D!W3Է!h2V?z%Ny*k>Tan6l3,5JTj!/oug{ 4>цyUbt<J͇{|&$d`Ψfm(kU2߮_k:eQG&ePߵBxU6rV}it gޜiIIAYc\|=Ψ}ӠQls{ySRL] mmF-@6Lp9mq߅"4a,)ݔdGqH 4":E@VZZӆ#\AzIFa R{8x6sEoSJ<3V}DA8v.1iՏ0& '+k2t.-8` <S c#wЖУ'=[˲i"MюLmh;H<9 7/{S.1 ^aB>v /?&:(A*>}iMRUx{cc,&HxŎ\󅙟-M>46߂7QJ{)){0.XtݽtnO|U!O QiD4qK+FTcCsػ `ƈĖF ulGU!{9*BLQt(t"S̾} y=鬸v)ۮӕ?\>ͪH2us y:?N{iA$0_Jt\f|&FLىD^Einejw-+úC,?ڼ y+ ڗ`. .β)OĞ٭E_"[]dM Hď>g}T}y ݊S5BR8 . W+HSAh['1 D$ h 9Aډ1Iky_ٻy@w}a+i,c}Q&%vbW%BcrG~1$ktZ1\UrݷH>kPH(aX1/``qhO) dA~q9c<:rydg4bav| fiN͢}ݪC$Z~ي]LA-״2ЛLaD`ĉ&oR0pI )EtrQfc)uC;p4'T01مҽy.%c.A{ wBxKsU3Yg"F7%=U81/5;)[ҵLI9i&B1y/}iN{jֺ-w*ɗˆVJ_,|:wXr;$vm}BEO֔{RXU"xekP'9>X쐑 ڌ}PB~tW59x!_e`4eVH5يEؠVKS;ka*|7wTǘמH-dYU'~l8g2U'rI@GoR?IKHK %9P\n_B\օ,{ai?I~r L}xL9i%G7; (TNу8LFS YsCSw[>GTN"j=β|Gcc_o3y T*fŞ_( dC IĚ5n!*}ЫeXʐ׆E,1ץ![~mY=``9խ,aGkv. u @wT5pX/iАI!CH%΄\ uAѹŌ g$bƒ`ϵ_Ad_ ^}=Igͽ򥮜vh:\1jFZ DE{;*dPe\ѫ)KB;hS{5qojόS5aJ}GS &BdQQo) n=|n{]8Ӱ2SExԖK!Dڄs/UD-\}zq_upe}x`ʅ„pCƒ$WDRhJ&p߂l^ !%~DYyÕz*NXZеɽ wVx$oHb}%-+h$5&meBwhJW^<DM+S'RuT ae t֎r:&*8K f "bV1; 4M*O5Be@t/Ƅ~Dy.Oԛ]ջNT`ŗNljȍ翽[?zV&9[gX3)둾+LDP~'_|!>HCu$3ٙuY9; i80 ^aQ3ek|gh'wh"Kd2sNc"*jjfR oĩqܣglIU$M_rwRHfe NTܘ=ufa+<}G7 $\[Y[#=,ȎzJӉxi$$8hm0ádA{zQ]=R -21vH lB!e8^0N z*27l|˸4yYk`MSz;#jY %8}/~r&HmOkTZHqc?Ϳ:wn (5h vR_@W/90B((ׇXщq]hP) [lTZ_d-!#9>d_\ '/qRiqd0#gšϭa\Aɣ]0i$iCb"kڙvw6v Y+hO 6Wו)8V)jEJT<Î6O/QsJX"FIj)aCqO?]&x;b?[ivOޫM/3/~qi`Xk@%l 'Β%j[(f[]V CP\M ~G'^&)/~SnB @mŒ':BL{yMmk+Usr {C[z :">\18YY?GQQMfa .F˹ͅ\GHeֺhժiAA-Jxߋ0.:Og9{m]@otN>g]|a8Pjc$_27L)8Ĺ4ǒkHVHamP&u+Ď Bد.[|a&L2jGH9f)ϧ{-t8sNq9*@Fû=ɦ9d#ͬt{t,e j/JMx;G+՘$j4v6thJ'FonּƒnbzeFַh>gEѽ͍rSٖ6u x9t5qg e<[{ʡW|e}Knfj5k&~tIOƊ=g~ٱjP6`v %Tz]p^g1/ǂ/elo CU(D&G5D fzAvVk!byެ?5A ;{sRN+Lһ?«6CNđcO_laG2y8u)h T?A]py8+usy\t}l2RB?Wp# 8nQ$ ȵ> aQpqy9ܳe%)$P;Dхi]cCquemTx!80p lgf蓬nL$3&9H n4&u_ &W[ Kp1kKL]oBG1=$}y hњh$ޚ)SF dl\ j.FޝnSFSr0efim P$ \$ }f[GfcK|6Z W^4L$c5,b>ӱBFd>=CdJ8hL )&uQmv OQXD>@cL_lDYY˘#o) C`B8&Ƞ}CmP{ )E Ңc<+Pͫ5++$Ry\dW>QO 9OԂçf.S5W2uzY47CGTf;%S;)/ R]IɈ')[FcyΎJ\܆ V:p,WPuA-Bj WTCGvVf:?;LHyϮYo+]E5$t[aQN-7צMt ҟ|Rj5X6qkP`rS٣ﲤ:b;mpt\Dv5'GY<{\:Ɖ㩐K<ȰeH Lp2ÕG㕎 N$sOǀ2rcl#.AJt`/Lԩ,j []o1 82#7]R-ga Ҕ9#*xw`qu(U]Oצ{ KxZy.t>T+iYv9oEd)Rcy-KV>jTHq30c'!3 +xj9F$=œiܥGDSzɽnq$ȓNt5 =|y`#M_ >S!ޘ);^PgA70:?̜];aۂ2\m ;VQeΙ8z5diw¶Vm~oz\E\bjݔu8]ueCaGd1 }R% HF5 Vp˦۰f_:J]2m .~{t:&N{vhP^38C;")twbg!/R0E'ІO}2pE4&lj*>b$FB9aabB#yxv`0kVNf)Y8<[(5nd,؉sCQ?vUdjY?eDL׳*oXpWc-KUmCl_w{I-,"3d }Kpg b8#dl?$ò5LTNE4Yxp|8amBcǎΤ6 u.}lʧJ,78%ObC׿,֧K /="Hr "'@V!L ZrUՀ~}VY<2ɍ5Ws PVs@8sM!ntJ,rFaؠTWQxC䁷g=qA(e)r5o5L E}k^܌+H+0QAwX[? O7s3F+h1$ pĄZrqY]CnL:]tt'Rkj_F"JRAr,f _@y i/s;||tQ& m\~)jo/¶G.LTۍ\sCjFD$xLcz1n9^N 3>9ņO$S޻,eA"#.^qv;ҝOՃK lqT=Cw/gU~2H˯}9v%tsݷixm& @+Ѿr%($ez0ݒx̪{^0e[T!-8\8-pUTr3v7=O77#^v0`9`%[`n:wr,_[ aVaFe(zrM'E 3/*H0} 3`AI.3ʡuv٬ꕠUGIt/;f })INċݴxm)~p#(M T']+y~?{ɫ\иCDWsT"Vs8jxs9OHK%x]΁n,#0Ri cv@w(\2 [IMLP/@[b;/hl?!MOq{^zEL6zGs88!y dׄE iLHi6^cܽMȼXqd_/sKދvlxxKU?_aohNGŠ6R[1.&Hbh]Փh߷LIyx%+3îPŽZɖ7c@^(yײG[;guc9!|Ȱ]\o9KU!J3G,or'oh ^>UL45+cDs`ez#7հ]ZvOG'}\mg A%F.29;@y~gs9%8$ڵhi'7,Yӽb &+ž(莖oBFʥX.Q,ȺaݺOZ#ϑ:2f&ĽGLÇP>${CQw<7d*Y=g Йb)(R\ȿL7F)Nr` 3<'F^܀XJ1juޚψ r1IJF2!`3TfJ+?~U#^g^}J\tT+kyP$] 6o&a6q0L.7cQfY" 14&qpb 7W}[:=v$ԝ! VP;YuEe[!%/09 RĝGTp}7##äȵ5dV6hB=\ZffgcWm@,w FdW-GiznWB12 2VŚHbwlA&4qZCQidxWkbSh0e5Gш7m K YYaDt/E1NM*LgGlR-5,k'~mG&bOR2pO7> WVp.6 ?OMć">3һꭘd GPӋ b7H fnyH?A M CD]>!lHv Fl[!^.)/P|EX/rFDXA! d* FwSn6zXPQ7Cry!G*̵K؄l|:[Q سC$ȘaA c8;=(YHr:@Hbx# ܓ0qctg8VwҴ;$?K0C)-O\ zG}S-/͢K/n CKuQ¿WM윦 g}gsgؖ qS!md}{!y4Xpjn#NN~`cLY8N0VJ:c-c99Of~9 ,0J@pL/c3Q_zes{y Iw9pETlD pt샃r JK 5@!G;vc,"OȺT`$AvWPHje?f`}9^*MU>=hǃVzɐN (f-׋zm;Nrh#ۘ$n}A˴^[G+f[~aQ UD /ʳ63_O5Ͷdv9; R٘*H4\z _+FqFv,d#Yw[Z=)QN \8l%zO8BxG"ּ}vay&\m]Fwe ҷS5+[)VO ໍo9[w 0y•,{ cGT.4>xӼ9~툭%h[|lc,4oFd0ݳШ[x9R+$͔%?ׄRmb6摵foY4ˮK2{))ZǐTLWҧi=SxRav}M'y[/'Nѯ4Qp@E/#K_2LlU:mhdXC^Aj {\r#QlbTgg_e"Ys@QC輎!0\Ylz,ozyݜzB )'\"njdO z] 𲚵r"Z 8,2ժ ƈYn*g, 0TS]6uO\%jvuMH-JJ.nZHv&o6ݘ`P/벏12g{TմÄޒ䲕 W (F0$,|,Da}4Jleg J䑱?⮖q]ţHC,ILB$NK`t`Fv̲쵮H5 kY ܰ " l>jbTS3m?UP ™9$?"RӘP󪯯ab:?Lx` i=q#n#'5jJ/̙v[ީ6prSQJBVFq _#ٲ\|7hr@b `?hq8q[pw&lS02pBY8 >E^X& k uQߕ9(\!lQ4M~1rkB<ۚǀU01^~[x_QU,^܉4U.Gϛ4?*|P\_c`1Eg-q+:"DQ Ul(‡uʵ ̃m|@uݓ*VO4Q Њ!i:\s]%J$1&'L#mҥKB R mSCuݖ|Ǖ}kOB!n#[IgSHTFDK`nQ·r!rx=ꑾFhD n'_$>.۶_:5Jq^ EddMV6>}3^4u>3nJ@o$[ٟ p98Gi!>»FG]'㠂X*qyXDrinEBIİ@"*s9fʖHs)ǝƪK돉Y<3ƧSKj9ε]Ah봿|`q*6=4XRѬK}'Xu_e @Lj SV!oED&@gifQ`6h"'A G&o%Y0@4G^ђ GCtdi}*`a" z-KÍG-6J ۫0"Dӗs5z?f6YCG?Y+]2kK=Dȵ+(Rj=p"?PX-y:q+Ӯ(XK;DHD%,"}C/2@bU3 #Ya TPK-j&By::idiB4u0>l5CsskM9oyXaqq`L j n-Jfi8s傉 УC=G:W]!Dk~ܜ3KlK!ҜΓXk7 9KAen;2ȜV0ؙzL!N48)RC+*2bI8lz\eÍ鐾f;N>aZ2or%{+]GwE7oV8TCDUih dHd#Yӗ ЕӐZဦZ4l(G?>Ƿ0Lm2sJ{z9Cݑ<`nw>h|G)0;] N,}B i,asݳC9j.ьƥWtAP`]%xc9ñT}#$xޔKZ \[MV)Q,i`.)i?zu!l+2E^)׹4x!XK*dVTRC~JpȺ` *kmsjAPh@d$C3HY=/^F=k4*HsK!y `#tϯ)kL˽'ZN,MoSc{A5-bF"LdY" 1[UA_A(+[tBI^m;? ghňTXMWzr\ G-o&WBp(Ɲtb9wAr YS*/$2*/@Qՙ۵?Ypq|m͒BMWֿjtF5Ӈ+n^ +I, u#_ᣖwďd9Z/O87!a&7Ū#YPB /ʳ;jTwjyNEh\g 4/PQ+ zcY;X!xv(xHn`&$!rS,["=kA8km7_4q޿LDg(kibٲm]Kb} iC;LԆ, $< L~==/׽pˆ.ZԺ663g5G'Z! ;5% Lω͝xs PYF<'Qߏδ-@R~7A`җ}#9Qb`$)JdQ;Wu/ʇmUi5a$KzXVBT&Aܫsjlsr-G=(?S7? /Qx5+ o$ Ӝ&nI^%)ڶlF!](V vX4^1̡LezJTXtrtDqSrV7iqgYEj~AS~Н++.0ɠ4s}.5`vqM"䁯pWڐE,}&&'ڦD5ـ;\w~챲qCz9uUS8}Hbe챽c'D%Zj콡^GƂhF:tS8Ņ kGN4k⦺'_n/iOvD щn1~5UFH>v",5DG{ډ-[ZwX^Mj"wEqHF<5KjCR vDߴ{PaMd+Vfj4=`⯫ËɗEpo}}&x ,OZ[N{ҰED,9B<K.cJ-okhm^0AgR+I3 W)}D44Y84@k{jZA#Z3R sm8.*Nē`F|/d.$VjIf8B"N:ڒ5 a8G )f]aנ HRӶYynf Ԇ:\Շ."6$55f2H.OPfqAכ(*Dsb)D NjR0䖢5vug!-hN}!cT\֜$>Ml\ZxHCJ#O{0YP*Wq 𻉳-H Z^a*dyMxI&X],{69g <1BH߼=)VMp)&SbX7eڥk?/9z[ں',Q;7116,~ͧ[/@:!JKVjSU-)d:cAXBN0Bu)HhÅ%Z2s0urgCfLxp+@?-<]s,1"qYVnݱy{ cdqXzZX#^H9o7/V =%4j8sX9I|u٭>0z>s[uKϫ8>2JEgjv,A吘c׫So7n|ѕO8 "|> mpyxpC⮏ٚɸPLPٸZ©^א+L`x?)JV κa;<5NAO.z{GPYVT_> }g`n{ı[E,1^zF_+WrDDkiӡ\EQM+a@Ԁ҄P]ŲpǧuV޹0qp`E}ܐFFG^H+y"\bln ¹< 0ԇ袉TQ@*cCيaKKۭ\oRU΃-& v2iZv 7=:&K^'L5BZCH2[<[D)f&׉չ싩u I wI!U4q _Ye` jɛ _wo Wt<kD>qz)6wS%t]ݧQ)x i f 4 RvvTpdJ\ZonRɕ50k%Im]u?{#ǖ6izS#^ƦЃ]m.|1ƒA(=#?>wqE 0lP4CRɣ~(Vb÷6,N^J=1f%z;FGCG ?ؖ zE?{%3m[32Tkc:5-VO)Y=[eRCa8V׹WD pd]h)D;fECQYL+ݶ4N+W `1klmxYɬ򨬄)*4$6_TIL7)8yW:nop.jVGN ']b{?9ş,־4oGo'-J<)c(_V>R^QSb:x2t{EքLM0؅yE&VX'`?;~CmR]ǞIs$w4{whI+Nȿ^ѓ|d#BrB`Hذ`%nۃB ~.K'pێyWى(\bVAutq~Dp>уuagQ Hy_U^AU8!/ԃV88xb%ET7' V]j?S|Gz! &\WYF*8JhHD.VND3-bs<eɛ\$mHaIk 0 QfώMM#hUa@AO}˙\F"  #.DWp1 o~M=h/wfjQjXI{'Ն<;HsW 0ot=s] ~uG֑{)DE}RfN@쁀&r u&.Oy-Q5oZraJՏj>]*s>0mY&!~' /{y6knt٨ަ=#;w〃ec'wEDHTn'lYK/eVEx E}{q#|= X 6-'D6e)nzi~ =o,7Ixj[Vq!Zzv75jk8Z8hS{q FC oLK'g=A~ zFK̞톓J;ߗ:O *j,a KKH]ċ]TQ#\BCE\9 k+'bZoA-He`:-2.Ljy~i_ Q;0#. Gm旮"b0ѶYrZldk +%JZ@hC" o<綄F^ks*u=G܉R ;xjxٝr K /^&ږR]ه4r߈ ~2^ gU!R[JúH/u"&5A? UrSl)$X}r_DB5.L\`d uآ JXNҦ8*z(}-[};.x%*wXV#3z%'~t*ַmp0qh 5o0&Lb aۧ WTfXBio{Xh3hZDLcYE6^t/]sy!&vu2@$Td>%}_5r3ĸsg~'ړ] e ߃NeyN10G^b=2(86q<._I"W^hu+?+yLSt&=r!g1  Sd*mew3H/>_۰'+O"0? aۺS]xQ 6|I%tDterlE0ƃG3!PsğRe:q8N! Pt@:s4DTw +}-?{%Sm+=ɷ%P 3P 6HV.1L[aG*IJ_n"Lh!qC*#B!CKM(49ʧd[J[Eߡ2A&-sih4c`)3b<P%MD -a;`, 9m- ๝ܬ<1k{pHם),V LqhDZj fPm(.؇J~V%DT#Be#J[A??&pVuBSᆵaرpxU[U"5FP?u1:'3sa3G?JU+LJgDgFs|L&z+Yv(u vm(:sI3<%;os~Idw2 ZGF%IT1^'p$CzwHjw綠1loRPiQE`BX K & sꢈDfe65fXs7. dj]2gs :E;\%{~sن,phD3?CPoj"g2d$~ưI[Y-<ly֭*xvFhpl,49SzpTFx Cv8NtگuB@?d^RrŠأ;ՙ pR@pG0Hf:hU;"cX[ǓtePSR&{O&?pjO4$!(>|^gϽL)ND)5Bqp=-0֟FK-"i(7|DIB18D~-J-$EB lc]kar5(Vut m{Hg@Ď/ABBQ` G*-܉B㇫w4Ib5qg-5Ru-ՑMԆG>ô)$/bL[]DͲY>hbKlź#nxe 0[*Tthv,^7^ĭ7W@xҕ{i&湸?Q*ZyTmߣwja (+_}QlF;ޕan<bx2mzu2zC1+'Mn!ݜ3&x@pp0F nڙRy; c ~ ƫʋ #PTe\:Wi y&/~튯\FWCr 4ɋJКE7B{;;9v1G~D&]_ Wj7%& 4fj]xVR2)j%9Gڔ莫jFcRC^7zmWnڠN4W$^ mVQ4Tġ \>?5Z1W-Y/zHAfEd!mP0|X{Ñp?6DW()P?C|p8oi<+4y\hۏrC kE5J'XMeCQϧ0"_eUDޖ"Wb>9y򼸙uK qp(VWbX9k\!nbljM/uiM$Ce8xKP,('iA/wt ](l Jvt> b ^>./%\,_Qh}TnGgG~+%#@"8Pڦ?04-Ӧp)凱k0:J DBF n/;=`Ɉw:</See%Vb`HpǻՙSR塬㏊ޅ5a֚t0̪}iǀlzU-B| lFGh,X?syq|>txz x;XJ<ך=&tiOyQc^R=cB]xջ᫏/U;0CH?{&c&ظg "HC=M`o(W\c E7j\B])̉FAu^Bf/kiuq;*Kxv߱#huk ֝ȯaW;PXDp0I%^L0,NjEG]0 3xvC /}x-wi3ZY4Z\. +, yo ̈́:ML5܌Ehw "H]ګ}ބW #gF먯u̍0HDQ+ hM" ^ݐD{bcyӰɂERmnб @YOArI y79j679@ >b`;DC{jcGBoGDňئu⸲'X=ek-ؠm~LKpStHЅ5*tQy"I-Q.*.w}<#9M8\%ͦ Wi)3q?{.1ȡԂD~kZ|l.qv?Foxu /Y bv BΑ3ħhbdXw/ o ňu0k7`t6ߝ?kIȋTg@L[F©Ol4>K3ek?/C۟1V2\4ꚅh˜60X:t_Ɣ@1m{˦ Sߝ/Qԁr>gaRGl}wL)0kp ѿ?؂y3Y;0Rbkz.DeFs)!l(3ϗӈK &;w?u# m\|t3RSt۞C\r!dC~i u]ͪPBZh4 ,7zޝ Y3x{+I~\duҦЫ㐝QІ *-1"UI sSA!t7hc2*hAɪxfRJdY!dwo,RԲҕ+Ǩx9ƭS!x 6y!xb 穂Ψ'  {t:imn)P!5Cs;^;-#VOvn#`[J kG+_I'u`QG6%0n ujpPSY3m;OkΙw.p,[,xZ,hS`o`s{(tNGl,5apj(1TG|B,84z̍R y|NQ*Y`y䮛z24J!ȦHa\Q8sN| du exdPc4޺q$ndB;Q͊GM_K[q֐5aCrb)HNUvmgE1dL0;wl~%ɹQX%,V҉"$Sh{Wg4fԢAb*'kiD X. lzL3 @NOe¯3,( ֔>DWzy3`ecv-ZQ)P^%'ܜBKcw][sNS;*#Z]&`uj='j@AjvgoCgb`5^̔{((1;-ahp.};}DED |QNov.[N?bՐ-SzNӶ`ٴhzF4/\% K=YD$jm/-11ɑ>d5c5Yw@(}4E28ym9n\`Y#/vnO;]zP$2/5X;ʓ`.VO>52E36)b`"⏿3Z9Gf ogxl]._ p8Ѡ2G:1:⯡Tř+xĕAl7rJ|4^!xhZUQc ?rlS1 `fXbT0!.QEVC^nY}͸oOjHױ^4ijwQL C/A6wBD#Y7Qܵ=S&ۅJգxr=NCj娥k3:kPN;By*Fڥu&OǔaBF5gL-I"&c&x#m^Wᙻ4 hHWAٙV%n4JV`cQ(`ngAgR ^(t2|%rzt=2?jv S{ʍӝWl,YL =-۞`WuM4;(D6 v8.<뇉c" *GY0IgZbc^% SV̉Q%.iQ@q.$ aU $ҏILkj0 !ɢ tr\ɾT+"DVh- :ʸҭ[kleo:KzKzs: 5gcߢGj4fv 3sDž0fZ FBH, xO.H]{I& C805".^dVByg Zwd[="l=(k'4d{w]LajxizȔW^[hhpr xBHB`ښs&sNTS gL.#$kko'|~/<ғ+r8qpTR~m±QA Ak`~ݢk9k~ ax~ys)Vm,j ZзX|cG< :xSdda/ ƫR\Ɣ<m9}ty71ԤȷߛO8vǑ@QQc3%3ISgl[-wѼxOwHPݪwRHV: *ͫ GKv9l7To=poHIZG#Mu_ؖ [sQRѬ '%֨ug8f[0!i' ǩX)7Nqu6]s 5> ݎ xΘLM -id`[˘@J Rħ:愼U`5dY8%eLu DDي"t937bCpntJs+j.6`(iX SXV}g;mˋ2rKAP}obY&Wr8,mk^XC>; ?HaR@=*;lBJYS$~4 @մxENd} y']W1ީz^)PbwUN.:bVagTi GUO{ˉWz@a-5zfrA[A(EH,p',w :.Ƞ~> lj@NC3Yj9Q}\W|6fb<V#inH`8'vL [K1=ي&셑CXc:Q&0R4u˳#eQzjPD{cz_aw< E vN{e 3&4*߫ײ8ð!OȠBk~v_ .oQBhO>\}mސy}/yl>h5{q [MjVrZ2i7BrVCۣg$)Y߫~>Ǵxpt!2߂́H}XpP`!q{^H2-kǩ܈ʏ&*5 4~|CdL *N߬҃\QmVȪJɜ`KY`vC.:ʋ.zWSƲz 骫KK!hxlXjK :r?=)n`@x9[v`F ju+H4hX˜4|2gVwTyڄجJntz1Z5X`t7aܚ$z8nKޠ[bٻ^!!Z ~gT] (mwq>0TmN4ZBb'h[6r^Íd|b3ܾr)e\& ﯈S EЈ]W+RPKG㐳M kEIK6jax91H+/~.mJHdO%-wb[_М *kFJh.] {N,X?Gg5.kܡISMR۩9e ؔ2/9-;y4ЉD: ]T zq`8KlDZ=r\)OH{ m$ 3Ch}NS٭.7_pm dY%jpn|ߏlt{LA z> d! gFd)Mw!_vjL8鐚Z-;U7x s(6co8a bta>IJH2ֺ[2CkQ\Oc'j =wr0vEY@y6NuL@f W>{n[4HR|)  K@Ȳi_4=mr>j͸Ÿ`ßBxs.~pD쎏2Ȭ O]i[dPzL o墳9Y^Oq IgHt>]`&5C%%.wNBۈ-PQP@'<=^x2~ED{m%۬e#(84vEBqaF&YkcC^&o*clqeNx֝ɞ%'͝/A(5=%-'GxtcG{N5Œn]M)jevQ5j|߃'Z/ڻt +֛2qbο=F 79LjQse0*'yMw$?J jG= }Auq=[mLb*"1DvhRɛz-@UdbU`ئױյsy=phg;|M٘dPRY SO':X?=5缈- Qؖ<.ojma!aN 8$zdh"$ٱL65p8띳 }I%T7|>1מTC3yMrcB/RrУ o21ӭUɳݣ5fjGV/~sjv0 ?hk(H/Uyakz؟>M ȷ DjJ+,(i!Qpv3L-gE+,C[a4 %Ocdw./NHT"M-WhGW%~n3 VH mOOኢNѵ:EFW+'7)E!Ryu'2]9]i bmōSxM-!jT/߁PSNFl(k %#hkQwKidnPk629Uґ'n!I "=y;p_r6``#=뉟z]{9Ucp} ՋfA`l3-l)m:o;T:@B>R r| + Y )^_ئη5ݿI?||5[Ccfi˟$co)ǑڀI˵S!$%T$VkһE33/9ki܁7!"퉬]WC>E"_-m-%IP#Co_M[: 0orAe>g)8_N!}DRZ%dUk݌P.%N@5g_6⑽.||5|\>Aud%Ƈ5k7>Lx*]^=RkĻVK̳>? l͔m<CB3VYuTߜ΢sˀ.iAcRe|?P4!<&UI_p?IEpA rZіt ҏxOIQDO؂"T 1JDK,q:̘c|ux9|?^wUeWP 6%CU^GӲ6th\BEA3TX {bSFzeuw=69e{@ ĦXϨcġIhg?h493;= /݆ޜ1CBTn$@+J}3zy3wIL4Ծ}{&amxk9es@Md[2CDczaW B>!^Įww{1o d!gߦi=њQPx ꪯleTp|԰>Ἁ ÄXJomF$U1^NWraG#a Qm# JѡJ`Y lI_ԃ4zަT}KD>_M\vc►uk$? 4(. S: z柜 ~s[7s &j]E7 av%U%b>Y բD;߼֋FX"Orc_N@PzR7$:TQ/0TE,4잤La .Imߤ"畦>ʹ j#K}Oؐ&>y,--+ȦC3#_%UO1Ab"P ;M8yPEs5R*\O6c;=zlQzr OkH.2hOk:pky5 l_qh*_ 8^O`C-S^Y`UO#Hc-EXJ;:$?s,,D7r<+XGw/긔{7U;FݨjغMGlq)$][nΜOg%'Iczښ$G+-,yZAhJhP "*e1h+_R88f:lrvw7AY ׄEBYSԘel]vU@sK3ֱbd䌹_ !BTdVqm.Dè hf܍M8Omf}GaL@fV='kΔ\.yb?ٯ#Z(j;Ȑ2h X % &pDkEqza3D=KT`?!9X#cmJbUzXw#MsS:',Uo^4wQ+gCN|rBD{S<YuG"թz]`/ ڍٸ _`#Mft r-ˑp~30 }3r01e5jz`53P8+Nͪ$zz-` C7{Y Rm#1}N!EfTTYwq8Key׫ :2KR%S"༘0oz_C{6,[_EJm+z N=ݛw #$'[Ir*Lw Κt *8 y{">FC.Sۈ8׺,+ŚR+pE"G GȈc3TbCjSP0X*K4qCGRU; Z׊E)y ޕc)]q*M]Z ($AZ7ӢSx G~l5оZR/$BDE貎EFײp%0&}W: '#qMfšpR)xVŕ l.jDW;:fMHtP~vq7972Hh#Sn4y~uȅ9ܹM)a}ј*䢛3cd@/)GE<ع#;Aai;&cRf?%_*hZXJL*o@~Rhqiݒb_2`҉1f,ڻ̆ o"#Zk 뾀f--h%GCc& ?5YG^'e]~Be.H;8?QV,vvgh1ߜQJ+X9Ἁ]`Nn ̂{|m/\49LIvYeY> v'ZkZcJjEra&=g\y7INx< Urh+ŝ8KZ1XDJV'L$h%sc*s%ߗx'nOؾ^6eM9ݑC rpK+|g@) ӦǣRt{ߥ97A\6=&$̭H˫ bxl2e/൧ tk{Dޭ4JX'Q^.BSԑ5 LjR;Eq,30m>>fVsx{6H΀3Є=S<;dFb`i0NmB< h+2߷8X.]G̎mU?:JT2[μ,& 1Z vqI eƍ 4=T0*Z5*B~b͢~r]'/3kfgJ٠[Ȼc]od6i˺V6Q8|1Z6 ʒ>r"1Tt;6άz@ (7-7)rdN٭|AZL~|s/&3t{7]L>{&]'HfڬradxbL(Rk|4Ty|Rиj@/?&`tRd[t 3&M7>+y2/q38hCIXcN*4RkM1|20%5*oз^zrt $7;]Di%T#EI%cGP!:>ʉ  ށ>-ek>G}!u:ʌAif4)bSچMR_o#őueHm 18%,HX$8,pT9HZ-K[7]1}yށUW%v qVLki'kÒxjbqC1xؓgYF+`>I+^),Ԟ,[ou`NrV g}Q9FnpupOuqӫx6A7H,l |.QS5@TFY, ltA9<+Ln['`y9~JohwYFBR'r己 i/T6u6$n]?q'Fʩi.zǢ4mYOJ/EF} 2l; X(4Z)c4b~#1>7;z&/lc*&8c@I"wb%Gn1<')yC8[2zk=wMv;2{}E q8g:Ba7"u!³&"^ƿ{wne5v#(O)&KWUZ}0а|D9wF8'w#iaT|Ԅfa`Bn]*-^Z(b$FNfƇי24A::)m#d9\X _Tb bB+:LPPw;Kzs̜oѪNs xndElIk=܈-l>E4zB"I(U| SP&dN.g4ُA>x_`mJxb/؟?H8\Tq7Edz2puf05ҙ>.˯"fbIq??^WXԉejZu  ۍ}q䥿'(#jm-~x"ץ]-_qbkR~ 6`SMw<GC"Bc6FPp)Yn5csDw h*S~]$j3Rm'%IW;GI= D }g_pC{%{;ĠT+ANj0|1>̏J7wWi_pfJ~;2[Gu8[6Фu:;IH{>@`ȥj̞b4w GU2zGUXInJeë цV+"h'fo:%]asΊ=$Y|2Ϝ?|Pf(Vh/޲wxoAx*zSCUk2!'˔$D/@b9:K A٧B"k2Z(iRcL]i3F(;o4*Zϲty]<2k]?sCߟ&qb~Q*F+n撁+' hGpɐ5G(L:P d}vA8PG:!]µ"N׿/W˃RTpF_F0nAi ۡ )ՔTϿO~hK%*<wt?@6>'0m pRvO-~AP5l[˩*tL,E1f=?X -Cn3= #AN =fupxt/#Qc-ߦG؃s90kҦK^_Y*G*Ȣ mú2*K,h6T3Rrzmtil~Vdl|Aj#bMG$bv(k( d+d U`4.4*w@uM7=wt1Ϣy@~0d/EbIB fSP( gG8"ivbn\@![T^p0h0޺%mPC$$ G^Hz= kMQ}>Jy-茉΋ypkqQ1f´;+a7!5\%;a:6I9Xueä1uͅX U|OW Bᐘ ,>=a(#L?OENgRU*Y(npDF@Dprߤ )K8_/C{<7YÎ'bKL?ZC_r/Y0lO0I:&P*;vNp՞_X ZQ'ohѸK.:fUs['Y ՠ SEOf]94)s20b8ó]H5F8!8gs$<ΪTdd3MK障CU5 ۙEtˑE %G?9ӶҾd8A ڂabf{ʾЕ{ Vt9T-Y^c[I;Z^_Ȯήs[*cPCѴQ$MEи4_ ݬ>gH{ JJ"yTV\SnB -# -@a(e{IMbˁHɶksw,==!:Pŝ akZNЅ&0龭 ,HmX?bž[ӵKk1/cH{L@:UMOTX >]B+m*|xۍj}'+ &jOLW6"NՍB?A~Ջ-u %r'8XhkL4=!r5({Dg\&D$d&N-:rgQX%OԔ EaVs "Em\")# ܇d-yGsUbܘwB>W9o=6<֊̰ݼ)<{t[x_>y $ڍ 0x?熂b~pO'z l?; #" \[1ט6bk}WH+gc4&-&g;3X1KKqZN jQtDK.=ls&IuKKKUX?2pB1AVu;>'}Ͼ͏:㔲Po&E3Pe ڠf h]omGqn[5g|ȧ|]y~RIeQ-xg]$-wHTQh7鲝#1yO+Vjgķ Ui rB_$,U[\n@8NBě/N04~'{*Ӟ8K|\$yoZepW_ ȓ^A26!syfe|)_P{Fɺ= Ҽ$ZcM͵kLWʫwLحi ?,o^ ^0_Qrbܹf Ja(vhBWkB bUΪ{Ό9%&?x=" ~ؾ I}D#Bu Ɯ:.6Twq V)(y?kGon8m=IUzRƤ:rSTYZ3X4K!oP OܩNF8Jx5tVjt#EcI]|UEf;qU| 27l{1 V#PBonU.&/Yux캴eԮs\n]/*GJFАgzvx5ǃvȶNm,=52hW*xe8:1َn% zОVR"%M FȄN29ǎ!(=׋un1Gk>JWv͋V@lR?r9P]AM]Q橳:3S+,]Jl-}$jaJ:]lp>lX>{%3&2Ec\AˠOwqpe0%CPuEHZl,*3*X'oW`qwoD;%Bֱ@/p m> h4R5){98m-@̼C+GU|a>N"I ~Ft<#1h9}߷Q/$}\᧍( s0ir3 ہPs+c5WNe)яI[ Yہ'* k{r#j;IILSEKM (7 Iz+ŧ5n+g_mHwsqadžSӁ.K&h.{vC‹Rƥ|!د~.FWo&k^Ĥyv%&O?%E%hv}pf0$ 9(A,_}$$o!:;gљ5Vp𒮼H)Eڥo!(i2V4 l|Nj3 p~ "8a?gƽ= #Zk=Y0q+yrѣO(۞N*9ZG5-hiKkWbT)IK& uJh~mS+\z6)SblbMN^9#bkC~rsN5_N-צrC V?i-.!@ۻ .oa YqjIЄ[ .`! uNAiq;N2d?ڀ' El!J{2OX1#?Kmɽd3ӰnW+PlHDRx|mF!Qp_I9 O'ĸsj%#P9E'wrK!`|XyʼnYAР,."DFNiZ"$hwC_| ++{F1naeKo$W ~R׺O0v1N]DG[XD6ȁ5~p,vYeibъ$zn#g\a<e}fQ`{PMvAeLy7雬`0Y \.S0LEV-Y|-> 2m iE8! &`dc!8F|;\)Nݝ` BYb0\_am.P=zc' AlMjt(\ר=kgS^ < "he')d)v.꼪|Z.*%s%GOT*PB!TA 86w@ZerNvoɿ䘷`c9(g^ ^k%kZ> ,51E/!K/3<ю] fxi늫A}ᚹthMMs=Ktl< YfaN]֬zJ2w)Y,) ej" xucWJibZ6άXg_͌ꁘr0C) 숚tMUdχ]W؏V>gЮh=ne2{w՚'@R7a& l{d/(Q( QtKFCvjhu7]Teu9,Z;ܱHjoӳ$/qsy$ios ds3f _Ѣ^zz(c)C+-9llT U3+v%+8QyDn,[C\%GS 3 #vIT1 Qc %!g\CRѢ/uAW+ /߸i^ e> jݙ7_jc Ղgnzj JpX^F؇_\\[&F՝PRBA 0Xj :cݳR%5BN϶ƾԿ<mLdQRfժLGs9PecCS ԈI$CKKT` ]j?%SPvjA5F %QA+YWy@,ѮH0bPW5 37>J'_|է`m>xl.e7L֋ĵזz{Mդs #~$&{e 4BHmP:1tBEel;ea-"r0尓,١3F/.DKFv-pW*Jܑ%Ѵiy񰕧hw}vJ]_j|W:A=u ZO Լ75*O]GN1.<"E @w$ c7yckA3p/-RYƇO.,#͘:BȺ**h Vu'Aۂ83 ̺_UzE^@du)uիn#+9tY]M^p@ă.Ih9wc&%l€&Rǯp%Ogc6N=|E{=o{)%OHd}::(r͟t5mk'@@ރWdY2KfYmj[SOX/ouOsy.B IB aeָoxwLf_ \OL-&]ёeƈB sO6if1͍eD+iOAt*&6̜`!`iќ''<+Pl9@@-,5JΒ,<ΝѬ5I`szsXM>èJLO ֈlpp  7Y9/IBi|u/ V@՝3k϶#sWpɿJz=k1^ջ@QW<-eOʰ&XX ldeM]K+m>AޙǴAENYgA4[^_DtVST@)yjUmaf'Wj2 g~ڌ5Ebcv2!W*VyU gw!j@k\l`x۪U*??3I=>O@恻 ȉt$Rc'Y]0ѹ!k7ovXZu4ZsGC^F:~Tfzݰ[fu6LWϕxS%E1!cp#O!.Y5<:wuRiANm!YhXxzEIL tOFSuͧ ,C18,k_D3,ԂMܙq#7k`vx3e; hg Qq+?E|i3$:6hBkpA#LruуEȐ=_si`GȩY2 [my%"QՀic_T":@-jΜz`9xR A&7VT)u gbOVA͐4S-{pǮ&\ S3q!Gd}aV肋a\vv^m@XK+[ Xܞ2}1Ù}8lQ[cO$]]KWI&^y;TZ,ì:"ȃXo|'og>ԜFILjJNΰ%%1s/+};(ueekB Z'qF@6>Ey~H4(Z$t!?E㍈ ImjJ1*Rla22lOd,1l4"`g\aC1Q!} ZNc׭]]De񗙜saJ@*p&G)ыXZ'Hƭ+-Mm)}-cP+vܥ-L8/&9%4B[LzA# sqcQIn9!} ޤr#205Na;^g!1o '2NJ$YsNԅyQaͷ&+v&rJ|F!%TA,e.O[JJwp4ėӑZ^\t9^+nԦ_A%ȑ0܄[p{C0O6&)d!eՂ=쒟\mΨDzdtS91˗`O2H}/'c -@(ztb55mڗ}!.$q4AjBq' Dme:z>҈9w?m89!z1;֌MRǔEW. ^,| ߶J7C;<&fK,Vrc2\q %}@$ W< @6qЇ(X `JXhI(w>j5 #nu f$s !5D /T^ J ÀvzsiLeCm}$ GdΉvԬz9L5X3"-́y3ػuai,x1oSYrRkܙdm;4ZgoX!qwW>8g6é/{7Tkmeb!&eb~S?KGhX+v[|BN0/ ᥮Zc!X TJ9gEǂ2caxduSrݓr=i]J۱#62lQ\K)9&Z14x!r8 PN%y$~W0KCZW$ǠE_Ce WHV\D _ {>,& ": \\K0rm0kwV.oDZ^q׈=͹̟{>j$ᵸ&Zڲj,W1Jex@ H{=R`<\+1V6;8xvZ33`u+CIm{ [;n$4b_P#JU:d2VEBIc4D25*nf 9ׯ;pPrc/g`QB 7OOzpԏB(gЛkP'U x^ 5ǧ̤o}yt@mfٜ̀K&8l\v:kq(K/D `ݧoJ !M"PB@K.^G S9aC#&1h-Rd sօ6n&CV60BDaݖhM MLnOR󷈰W!-ȣ(rKB/6Z7.7I۬#Gl@6rO 6/- 7z1CiͦJyG4avC<0K5G7FkQSrЄ {+:[`vr9v*|Λ^J–/ǛI V?~ 81y0b,Ɂ뀸MeVC =.øR0Jx5 I 8*:8!$\7K6%ih.FE.ĐT)~iTQ/%΄cFr^jKm,R.j]uΜcVyO: I@c&2ٗVK(eK`>T*FmTmV҇~@aYJ&b(Gv]v:k"@kEDƠ7wu Ih]>c -Gw.ۙ؏+u~SNX5 />eۑu9je~]b ,lRńf^mqEgC_1Pyt^]v\1 DYA934H+cz=sN_1CPWCƍ rtp[L[ E:i@g\ƍtBv됫 Dv}9fE2؎bn2~ WENP$WiSA_$?e_V1.u꒷R׸0 +F -ְiyd` P ȀZNM$uPJh@.dg_y*)[Hک<Mx;=|IECx _?~`ˡټg}g{&ztv.` >r7 =wp u>3s{::wP#^,z(ǔ%B^>Dm?{pAz\NĨ&VMnWXe{&R'^.}{԰@5tx$%Z|ȯm Y%~Ma-OX\}[L3b'6m禙a~:2|luvdHөޏb(4/0L 9Qߚd駯rƭW9I^+9Nؚ=:yd;'D9NV(}cNd^C,*agz1%nq&ug&0}Ӱ$~^:H2k?4 Ӥ wT[wS-{'2I|̨tۍDZդw(|!H^Vd ' p%Vw+ K9,+Iux_\_L#~n8JJ\wugP-6_13g `^`ʤ#lq6&K!ZߠSn G2O.#yB/z|:}]u0_눜_ =C8:)xՇl.r'?t=dfݼL03Dsdn6%Ú/1_09֌TwKB6Im_"K[wOym`;kTyi%oxe LerzPϧ:57zH' D mx#IQ[+!S}=7C 'rd6Ō8@p}#`ڴP1Kmh_v91Y)<3-Fh4N$0gەif -BA?|_ou*<͍YpS>8ܖcpnbmFÍ)IqI/ЋtsZ& iQH,k(u `2kʛcs"CMXɨZS6;vp;ކm9UzAznjp/gIr$ bi]b",F̓d=;TeO!Jܺ}ѐ~'tiAε'dDg+qq, b##bmk8x,g\@LG7v ad|9噿~w:PwXQn3*5Q_j3@i{Rfj(S2gOlX!%-*g(?ߵe-Dg ̃7gMۋ_ L3RFm)(9J'PVvv:{J^NhK+]z4ڴ5/.e|tĐt] ۈx7?6)Aְֵ%ԁ]~(.t~fu30,Ħ)v(;Z.;OBlWڝ8 e` dp9Aqkw9&>vT{7;4橕;DsvѦ|l`A55S+9DF8Oɖo2htBz C>b&6\qd\% wj{ǂP n0sJؑEa7)C] %z3sFV^ 9D*aav5 | ddwONFy556 $C/? Tm!x\衤lI 3g#DGz›}՜2(J FdGmx>&t3E)`xKoW@鄢ѯSNεLdgq!׆nWZb[r+n MEكqJؙAOuxY4uS4~%LUOzIւM/a5[*[ H4' >&S)jj1>'l"eS ZF5LCaU7n؎ l|>x^,t{9?u0!=A!al  $4@`l'@Naz=ݼm3a7,n~JnST {·S cbg DWG~_AVUdK_^oAN<% d v8iHRvj4{dIb)Vܧv&"Pq+?!iFKVl^JKؑ??R ԰XKC]|PN`}Qj;m3 d~NB@# mŹw>\p [wz-8Ұ Fة"F'k>MAK\d܋'gH9,dP4;3J>li/8#NjovS8Z"X-R?SkLUXהiO(4cS;{/Y HR8ƗoZ,Kks/gh.nDL_Gs[RP5?Gz zΑع~ժA6ɅQ#~csOUp'.Yhe#Xg|Iϒ_v,b PrEgJXz{pw$:oqdBK3)}t?WNJ3UŃ3 RJ0,s>|r`ՠU6!ݱ W m3}BzVEQB)y ì l#bLvBCl3]p]~a81$ؿpq%]{WqNjW;+ 4N=g /i}nIuؼ,NR4,/tޞпeV3{Ѩ7O%=9fj^(iG( #܎RE()O=#eTo+-\áeCSM[RnZ0,1},XUa{`U?H:CF+SoU҂ٯ4Kw9KQ%_8TPFn3DPa:@2 l>s@Ga]$笎ɳƉdqQ")UuWxs9o_Y[ځy0W9 aw*MeJ,8SC(xg"쐟k{AL"i랩hH's%iQ]ۧA{o-'!OPy@n6m&3X84`afS8࢕?As B!M- "*I$O+L/KjAKW4yƗ bGՉ|KSn\$ʨٲ`#V<pQViA"iwpS.?'Uk~X..*|'/Or pjSz(BT])s"H fYY,|¬t7>l4_=`%U$pٹ is` K?lL;wγh0~ңk )&~ CsMEoʶpUa2p]I/$y`cFT2xQhRƺ$߸ne=^5m&>Tu>iA]=G}# )2}`Mg 't>TWd+-ݢj~q@:S{x; sc]*{|F.)Ua],rg@bРyFuT`Y<] 't2$|[~i[J0mfuyeJ JFa͌Ӡ&'7Y[oCR൴)m "e ~BW59(B{_[NفIWe5 ̎x|Yh8qLYEg`pCB.o90Bj6+d.TEonrIdr>z]k>/(xȍЯC(N}6e\d0Ux%ՔXJo̻؋5)|'x[Rw,w.?mwW\Hh6 pJ/!;;v|n4Kpdc7IkzQ8, G?MD>C6|x Q Ytpohxl4iWܦm4eWdcvE*s.K[Uil%_vicP?V[ÐHC|}c== KF[s>[@@9+-ꉚkcd7[{ArUΉ V8a+olSEmg\ӑ2h\'LÊh[:J >}L%+PQc~#E@2A~<qwo$s \xEg2mC ;aׅyMKk v+)}E“cğ~,xlS-rZ&og-WՖmن6g:^H5ɆuF 9`9a,gw`s^pxAU v14<kKU.p7i$çn"Fk+43wQ W{ ѭT!u<9o,|eʐY|v>0QrF/BdZ5Mk| TO Ù\Y! tp];Rj.-jR(x[Pg E`Dse~{ȵ%n>aq]eKw4zOoinQi43.vy<#40ri:a {FDSљ#*UV'g_qodWݵ7C٣cvj&N<*~h`_@2]ƖwKWh:w҈ߋf!7*QOiB7iqgM}A3!߂^ $E \Hsq(}82 I~,]ik@6MJzŊK_ 8ۖK*͊:8iB{)2NDx#|/&/MlYVR~zgb?U3zOfRtUMa2K۴?#3<KԒ\7Z }#_T+=8ʮm|0dhOܝTY MV{ms"̟EDy1xB i *LXK̵h&|[w>͚gzB^cb{߯!?) SSWpK ,/?qv ϸU0 tF~f#˸gy^pk9+}BMOC wEˈEOu ̛ͫլB1Dޯ2. /dhWf*KՓ͢QJARum+VV1WK*J$xM1+b716R{Cx,/5J>BTɄMOJ=\;{%I+ q{M4@?Ώk`t؅o=B98wo/zMQ' I3؊mhBa̞.ǹ1:(J OceӶR`WQ9`߫gܯ]Ը)hG-JIBrp&*DX([q9WAը#ǖZ\ .AhH Utt"niNf m`ru  0彩љҎXs_V4jXJ09Z!mD;-Oǡ*[҂~T9 Ԇpdi#79~9&BjɃŪ C6K 6[敱U<.9] ~$Cn]%>;Ys* {4?vg1+xpztlbxJ,sPM_GTKJSS\45Vo6oiA`#&t7F08==`*e*R #46䁨'Yt V+EE|рb'1^(ڣTH.;Bu 8I^jv)?Xa0(->AtF y*j|&+1MgWg"Ɨ-0[@˜mo{.+GVG1zԺE@!dӶ}j}'K>sRC~&w JBв#pq%ſ B~;m[IH>I+<j#Yz*ǰ~_ W*,-̜f(dh/tf#t:kڪܯ7gbH ӆ"Tm51)uѠʒ"'brە#PB \$CPVD _ls, |"ԽՋlˊRUK8t ަ"JK]x1BG 8&/q A5$Iڡ8Z .`\9ܻށDs qcz?^D 9`_q;/L `2AT,Xl ^_+ߗ4{K2YW~q1di?{6&XЅ,q *&HAlRf,7GQUl%*ޞt88n˝"%w$F+lNuTuwupk [ΕKudmM FOC6'@"@/>Lum& W=(u3t8U6N?M4 0 fw~8' ^A$ج,lcjUm%>wgWDe)L7̃ꯉw}q˷eť׍lbD'pF0/[Zz ': Ud3"MUzUJooqq9mf l  -,؝0ksaZIO/[+Tv@8.O8ÍaG_.[RHC)'- ыbHa$$R!dy;ՆPB& 2c E! z̞ЌfW:G+xR oB{ h,ʻ)E4||8xJ`q MAl37kڼIx7a%Rz@tX }峨`pH%9`,x"{#N.h5\-c~u_-n׵*uKryRd rYlV_5oO7zoPo&Z}qYK_&8=V翼>΁ *ogB)Ն;`:rPZ!طu '% [S ?Tu7JD[FT샫'j3a"h"K+5QUfx U1h3>؊ĕbC O"sN R=d۾+̦x\~tQ%ď5]FEI)=J/.̾hKѺў(P@կ"0`xLhW̻x*?1c9nUnOoҜ7]V'| u$NEn%n֪TuD@a-@m"ܼMi4fƄt4-taJ#٪C ?=p01]ɳ!eTiO+ JڢЂ8hx)=̆,ά?a J武j{bMmA{ED6?qfXp\I@8w6ILc7sW Fɯk|-ߋڽF\on?'vHDF$䐶aUxT"?NI 8ֈt[{{* Ɔ qsssKO1+1ܪT}~4YvYrWJQ"d@Q""s6g.(wceI>/cM6]YvH L:pM"gQ{&֒7vAM:l+%a 9<Z{ wޕ7SqJ2 r@}}! M$-N ]RЂزM*O%[ 5體ٕ殟~=hJqD,RfwxWIqTi,{|ɡC("Ij"鶞0$I=.H Hu!;{b/mlK<`PV3E_4nP_r#{4Aa/USeu JN5g9L! *bptRhVR6_QiqzbJx &LbZ e'=sO/YRd}V1^,3WRW .RXPeT o9GVGҶ3{I%HNf m ?0J{qi8PU UNs"=r lkq gjx.kÔS,S/R'{J-aqK`=2اVsd‡!)(B?ve(2РbjLeˊJ`Qx k{W1AZ -u46.dw s OC?|8I EuNI#PSJa | TR16T qHq4?6\E1RAB4G߼m-a=b'"-,ۉ))%!b3*? @NFV ~DIlXr#)d k,j[&m _\xg/R=e)(<L~vQn2 xW#%ހK:wMBxyVa+ &7CS6@D%4~Nߡg09|Hblzf&ح!uR&1Vrj!|l-[啁tzoES!.Wm|I\7_1[}4OfҽT!ss&.DO3ȿKjA p:}O*<-5q3]9/ͣ5$_Ό/CoDž71+PgLأhoQ[uzTQPqRBek8" "ؔ.wT?cW~VG8bZA18;ԙK|NN^Bc$_tPPb\/Q~v,+_&\)=鳋1@:m @O:Ś==(mn]w%~c@_^VqV0Jt.log*F1;=e @Kvy1K5oɷتAUZD-k/>;+ 0~NJ Bs:*a$ȦJmȸe&NAE@ծY˕Mzš}X)\Rz$ vP/L_E7i9s jl 2 X=ŋLdY_ !#Qk.5p[UgtJ{FOQpToL~z8i+ ԋg_*mA tIYl"<3Ȏ~Łn}AIɵjy[c;7olU*S DnFK)/Ac +.z0B=awȌ(6t^Yy:PTifI"Kpo23KW(= Mc9l)'kvzj-EYطHNULMY7#ܞHh>5 .|Mv]64,Kc얱(n1[ mO5xcr I/qg"a#Qdmh߭By:Q! A>UkhrBZ Õ;O{I'n[~I~`td\㞏T6s3GE_5o|? E2DB^վ!\s!1%A!8"|.-9BlW𙣮̔.WLϔ%d"I%2O&iGJYx}߹a=[-^F߫O-rqi".Y]Խ^o7 rXG7p|[lF' ESҊ65j8N)60D<-{x;`{=Rw_\m5f0ܵ4Z h7/ҧ0;ֳp"Յ"R9lעot+@oqN 9=-a}T͕Z7geݓ/g`⒳ˁU`5>&cI~"́=f5j<Z]% A 2"RSԟ&fUI=_Qn|rSXv˜\34'S^q}Jך&W;QN:p)na%䓸Y:OS O},n0O<[Yw"?*5(W`߈Tm֯(X.m89v9>7)`z[hsV̾xB%~HՀA8~CuQ̟߬`;H,>\(ѩJj3`$"E3)c*~!;3Ɲ0ׇ6VNm$=@M(݇@A H2f1=-`P탁[yߜ2Hb~GBHaKq7s_4Cv]I Q9=pK&u3SRjK^zgA+ E]"^VtOC۳2.zsLxVyAF,MGqqyQ,a8D~')?1;z PP)93+=+:@eGHKq^n1^p=hUuװJzW* /$ r:"+rhXLmG.[eP[<`6/mC_Pߞit4'-nQG^Xj$uEYg&OTa?(My_rໄQ]yTj3"0D d_kD$Lo,Pjx; mFq%&xRx䟅lzW}O=>--RhNJ _҃$kc9~qXLM[:(ZK@GDc6˷rMX=Ł?'I›BRB!VJg sEJ=t=OOǮ]U#~],}{= 7嫳<5q&G&9>w9b󖌍Gnq-|_Hyqi@#][ j%"d*q}A`+Iyp*-/ y/BM(-QdJ;AS[~˨pMpjzeb +D8BsMI7xKu =o.!.Q[G~!scm ˨m^l-5o*{&1{)O(]FЋFC]^J{WS%ez;:EQ:͐/s.=K(:{'Jg:s=|MTACojH͞V,!qXbGS DPTJ]lC~)oKOwXo>bn!IW>({*U^ϣ͓U9ٌl6ty8[pӧAw.#b"_f=ua5Gx O XΣl7jXto9qI &!%kPU.M7j+Q6)||ĭ).aIKfdBJv4Vʪ-f*ɽUV{o*!x# j&!ɷDdp{0A߽bal}eF&_6W8eжVa^W.[1!`/]a4y󩬭S]Q&;ydSç؅%_ 9Jݮb@j\l:Aȃejm2*6#6IظY8D}fLuhס\,((A`wl<8CK4~ =l"4HmMI 8hR4ɠ kXt,Vԕ{my꩖Kk~~:7k <GN: '@㹦fnm41.ZE')kF*\̇1X4~! Ϯ~Q}:{T_9yM%;,`;'fP\ϳ"?b;Y `(+ZCV6ht~!H:3R! [ޱ1'l{ޘa&!_V|hXV@A (:)TIځ(C˃ydbΎ病%B?`g_~CbٴA[q+y!.;6N![H?\hc_xP5\s9,l#e9xW(#2]17%5C`Jm`/Y{ ~߭[dAx/yYpE]!+ɗؙ]?`)0:YIh;F Miy4]gdp %jTͽZ.P!RcGڰ٭N׊Ռdk;2 Cya.d]Saoe)6Q#DV];[4|[a[cҹA.-S`RuRc[0D24/ <]?OO ʹ%e+Լg:7s1.Xz`3֝  M /P?nj{Aud*Q HR5$( RyEN`2d9 /f3CۙL0TgoSEYŶb"qyK| *'Y e6뗄A{0歩czE"`;ퟨ"jy(Ɇ6X4̎껥bOͦ,Nn76[K׳9>Lvzl @bup8\CʋY25}a[z v^XR2-h>r 9֔F5Fgay[|l\"ֹ3puP7>4Յryt]`|Z0pzo~7.LJ0bZf}dGA2 wɽ 65,oSH3YdxyCzkn҆=a`G~al]ڪҶ ?T4Ws({SRir +#:*j{QeՂ,Yt zXk!~Iys">6d*l@&%pv$a:cE֯pA>m*O[|eG+u·U d\>4K,Wd{)b@%|0/Tľ: ^8ӵcRlN9YVhO]_ n9LD~FU1>1K 6U/gbQ=O͔lG7' TMa =;_'ov=eyjEBJRfL(>[ R>+яGNߥw= S.-ǤJHXb(oqtZ8,~cnDl1hHNܕHi٪j) \׶OF 5vȿ @;P@3J?bhSC>"#fõ#C&,)zBHn6)u0 `s6j 8'N%TAҌs&algf._[=Eh֬{3!WgTs 0Em޻؊ IdB~!t``9~n!GSfz{,hPuOIqysn2˥ڮ %Hi}ws05]eYi橻Һ ~ u'lB?FG@9K!t}/ظCEweX(Ha ]pZk41XrFn sF檼sA9^Op8W4cJ)eo@qM.i^^R 0 4K F A{*2e}S22?P)d3I%(Q݄A3zCܕÙ;Q7Jl{DNo H*n1kEI>nxHM( p: uT+[|mbT9FTE0>0gQT 9? GWQabe`UZV~'\FkL]@|[JU-D Js1@iB;=u!$Mh޳ UwX,T!$[Xz؏WP?;}Ŕ?G| D50T~,bd _|-Jh>_|+p!h^_~ uvcX|to)R ьOD#;G݌ȕ yϭO(@Mm=z!W5a1QP;-rmZZ_$w &ClMsS*@"˄E Ƥ|:,ΦyZ!Or􈆛s&BL>$+ա.>uk\,po1,Ix%1 Mw(9dwjn) zOkYfCnR.<)K/1\S@B5b,$`Ǖ#xsW|yϳ"EhΏv$ PV!E6ia ğ9皁l7oY`$~_}?ܙ -|*jP u0 ĺ\0AL\He0ı 4PC#*cN?|P'J8:vrB qWq1asc+(d)?Ydݜ_bDOob WtAPy/'Am^{%Jwd!jb课@oÁ1)vc*n[ gP%8Lv,i6ܐx'C}7+ʙE ^ݒ536Ya7J2М!7"!|ߵ ZH'l*Fx ,43ABA?^ՁDǺeҥ<_H(#GׅZ42}&^όR76D&շȇ5pyM훉!o(vK<q1V$-N@Z3OGӚ [k c?qs/0Pc$Lo\@).#;A[1,Qgi'0h*%!(o(,Noi>J_@ 9r4zL ?)4+FTYqߜ\-ܤ&}eO!Z;1=:0gߺ[jДSR"!Rᖈ[1fںcBwm-"{lFl/ op]Kٷ̎*u'|./ NL&] `YMd Zo6m1X@Gk^!(ylE/E/D"MLAݸw95"r1W72@JXlA(=`97;B}v.LM#ҺA+Q3]ŪRv5<礙\:nZڐo.h0m˰uDO3j{FNn! w_Sfu0WjĘuiɊf"F̍BN)Vi 7͊i,0ܬ78CX2ÍjpA=ȁ캑 ~ÁBnxcs.>j_>˱@+ u2pSp wUָcNms2=W%6>YEݬNӔ3/|PBg GQA~6o(zDXcxaIUFQsyB}M"}_$'?(,-=)c-l݄@CK"ٿtx.p2u7psGD]LsyF9qh]Ud/IR&L͸w%Vu=dyi<_Efѭ,%ccƮu]P',M6_E}PkP}j[z`MQ8WV)y HVtQ,T5nډ`l |(~)r[,HoKiP߂}(Խ\K|Aĝ&*2Xlrt#ԺH5";r|"YRn~ KA ;-BL\IVwRi)"kgh7+@gX<)"oԭ2˃R;#L/l*11f9lJBӉ,; R^Ǝ?q8`U1| PĻq~E0Pfۧ#"@ERX/Ȼ :ũ]Nqg"`\ݟ]. ׹#\-PS}+e״jSYu=eWpSoEUV69BvU~.ı+/X@tXx,j ]#> kUG~ʿ~`(J# ʃ|V'E*97'74o h" 7G*8g xʴq,T;QEK1 WR%Z Ksxw/J@dps2LJ^{ezƻ6}='mvWxm^a ;;'y[=[`y١Γ`us:ӢlT]IFLւ!1ꡩ4+E3A[B=- 1I C1eC{m6Y1NϊB\7nF2Fç}!H:wEuXjW;S-EijV`a4h)[SlZ?ѥF89J|fY[©󀩠P̐R&zU"C6 ߅p9#v/.GYr?}.yйpQl1p~=Z 4|L K;RfkdԦ\w8N&Rj&T p)py̯S6h[5́zNryf*;i\)Rw<&"ؕ@Cs$&*4ڹlU~ꉑZH(T.װCnl^> z͠)f w_, y9'çiٲ:=H 73>3J?Y˓j\6l{=Nlv;b]n\.D@43S;xW8eEP%rNs`G(U䟦c)Car %۹s=Waj|'1 fyރGҏAiogx'hΝw#RaQNʙHP[JGͭ0`'?h|/}Qx9hCS9.]t+sPM^ދ߻x_)e"&Ąe5MVy :{$Hry0ԽXɴg~ujg\ z*kYP,?u~蜵d>3l}: x,HT1n>-rhIO0߳d~-V ]@Mgzh ~(= e4ϐPQ5Ӌ#钹ucZp9w@Rj}Z %ɹy;BMyҚQ13ŜjaנN}RqԼ coSVO" $(Q~,I-Z!ap ,Ax|]Ȍ7Ӟbazhc[ֆ̯FǝM>MsRЎ$Q]KON 0E]\p)yjTtD< 4IG6dA.qHl$ŝ@g=pmqҴ?\.B&>qx^ǐ_\vhW¦Cj.ZGPVeGe2vmJaxrWM)wuszs}w ~|`:۪0?a9QUߍP~ zgGc]kuչ zѨe-ï= iylٳ;{peRX(+ijo3ɪўf%Ov6+(9 e9P7h-OF6cA|qŧD깺sqdф@J{leiWFU&E6S9֤VxӠh0N=7!e6]sByrABKG׾o-P)uآDx$^g bFb;)O'|wz>)e3F;jdz|(iL^CQu ) Ni3 ˋǨ8b`+[zz?X@x$ X~䂪ˤGEMJ޾uelzQӳ6r@ (ۈ;e^K8ЎA?{`E 2@[L+2h=ÑXfm/@e]9//1ԍK7Mї" N3g {*Ašz/L:x,OëԩYfhW3,މksY>yS 7pk"K&w!f@Ş޺+؏EUxeI:˚#tK*ZTdͦ7"|9]ez(ߧ5Z%fk"mM3GwQJe(x]UCY/ۏh ?~ܹkO> @;T7wg[,AԵ@EzWH3_sZi:\AWB_c߶ڬU+޹8{A5ԅBEmBKWoiKzS Ũ,Ka-Mr L kL|݃O?/yQM$o"7V^UoȈ`eIŝvXqZKĵԱDEr[{XH6c{}|f78= 9~\ (BlJ:pg`f3g14t4Ů˹&=FS%ə n~ytճg"|Չ\#\,{S57+a.]inʳ`噧(g![ xXeVӕg*w#Ɏ\Bƒ ыzJwww'y茔CYoI%_B=1r0b1'r&Xn=VQaodp;,Թ~d8QEٵe)K}8et>ۣ2[6qF`;!kI RBCuk%FFM–/VęZOxvs alD/ŨEp)אgh$]ܨayw s|)\}zy[/3Zm7lqmT\f_bN6Cw`-=H)]s{/:X$d_9D nw Ab,.k6f=&==6܇} YmEޡ YѴٮm 0W<6lwQ;H/JO|fod=F3]kKAyުz{v+qyPEZ<~jQr|b.uUPaŝ'1jؤ/z4-R=խ㹽}G=n]޵)&H<#=3CK3lRSny{-"hhQ,q 8# ){TqIv+›~|QDl-=~#s}^תP 8@tǷ?eu;8 p`3w(ŠěBZDN> +9yj}yBiN3ѼV-Cȷ]P ;Vw$Pseg7; -|ŷQt:u`QR_&چBYЛO(h%8>J6b сZl9>ti^WM1Pʋg Y:{2gv o"p#ea9jIM2C*l4U?.{)՗_m܊@TAq.ƼzOxLu+,Jf݇=AN8xԋϺZEdȟ։띚 汧EK]?0.J(JWke^x դ$|IjJ>ˊJR\pZo=<՘M+Y[H%La~׸委693{RVH})8I"1pEz8dN"1B>pw! ĘLjIU|3@ij= X64_{(I\k2gDG6 tEs |/;ZlAZ3R!pUU,f+Kk:Huyƶ-KX芊\3T oUeahrOмQ*Fwka~ݚWAK Ehe'<3i&N7Ʌ'bfnlS|]t*v٘k1ۼl}7# mUx/saOo0!P)e|C>X܍ ۹_*X@h4ڞDXT?0!'CSk˗~TY+v$T 1rCU?j ^\C8"6Hš(pr E*}Wj>) W]M_|L)?9>"J0j[UmU7R]:aɅ enIlEp6Y/<쭆 ?Ge}"i"L%XN׻*dE0{y>{#_z4poXO`}AW>!϶CV۱-^J/wI3-+"rĞӕaF={3kg?]Itc\VS"E<Cu2W!2( դiEQ>G99)"` wmAezPqY8{c:YU9G=AL9;-ekF)Ȃ%Q±p""<VDۜGXږg=7pFQI:a0fPŴ$DNUU.(\,lRg1=w |"a(> wEv԰>nIbhk 3E*&w aj*iVLM঴̈́o <bS.J 0dskY)A>UㄕB O=-B?q~[> uIPAȒ (ˀx䡔8׶asIK\wj"!Ң-!үO2i2ByjtՂ>e*WCyQ _ #$V^;g_ u<4?@5 U-fCĐʼnvj0 ЭzYJ@v) vΩ'd/`)'qO(OO ߌB`ѡ-ZXK?'W!c#pejy.'xO\Oנ`&,wO?w.L2ט-k* ͒Kd\z,!vz[ &){S*9o KSj yv=@#jT| bnr@JQhrTƥK Ob"n}Vէܪ3P >FQawg=()xi.W 7 S` 8ey{Xx`e,i"E -t0>~\/rP KR-݈ѱqz`&H4ng߀^Xtf˹?C B8Jo5.l֛]!c$kDZ]NSާe'%YSRCs}ak@ްιYaؗxEkb}YOFH0Fief%І@%0@b-/DN_8ջ1I:p  )Rqyx-?][%Sb<4h= ATDr+kQs{1DaSviv++XZ9~eW\33ݰ= UWsu8h]{;|Lj,!JMHsk}OYIJPdF Kzli'iL[N zKP$0@B-O. N>ʁP=+X]2KR`/&9gLywO:SL l $)=;ު0M)p@9f2G5Jz!smE&Y*\ u]~hO3>Gҟ 6>ӕvдgb%KEWq:x{'-3"Ǩ=9N7x0N8eN$)h/$aqeC~=-FlJ|c@q3.F ~*-?ˆSg!Rh$BCRex(.ȻT\@Ϣ2U[9*ȟA+C9> Rxta6hDPٞ#}imNq~+۞5' !Qh*~$mt~w@ H^!/vn qt\m"nXtN\܈ y<&矌^6-DVX>`~)|gsox)f :2}]/g]y?sQq_@t„tд/$K(s^ ˭|(%Oֲf ˀݓ?iV}T@x}=qe#sAwLN+00َ2.B>g4KZ&qL!`O(饉5|f\s/rvQlKtY#&-V4^g_d&%q/WG8!۴td5AZtu\Ɓ(MLZ7ksN[m\ꉉlR| k=U-|D6e ;])m9Zs=1"o*~yl ݌cEA@0L o2irJ{y !Y͸:DBw\.n @KTEjD k? padaC;z"Ǯh 9 JR*@96  E  f;<uG2Q?7Jb6l%:#,emA6ӨK $Ba޷^hiXOZk[<%e݄&-^[ 0X\% @wl^\=*;RW^L:mjh&f?btQ(H'*f*1Zm2tr6sj/4m`kDj͞3K qō4d31 vׂ`~ܿhMoXnNDG[6'!O2NϜ YA+$f;˲H(?.ɟM`2]B*kl,TyLp2~uNȘkʐX Tᗫw ;aA09Ly{^s@oj Z]m0_#@X^UDJZU5!~z}\I7&Ɨw,׼xq H|ihZn#t̖t\)uo.x&gk"Hy7y:fPst cJ"aA`.%5i-\ܟ ah@HaNLV"4 D 7ڈTҔ̐/Rf2^vBҹ`H{axy,gih%:?^P 0 gXzCdĸ SNck,x#b~;"Fh^#eCSi,X,08<@uK>h% ogOB庇ũT#YjNR̎ }W5#cͯ2.m[ ŀ sq\sxD-dk LQC.NMhJn " t#2h :Dsh(n1q'l)@85/8̻܊h)upc e a `P^< ;(`ZLMZk7v\eYgj\[6M#Xjs@S4NԓE3;RHMrB؛“,kqkCgM9ɾo(n5ѻM+8Poig;ٯa yUZ4br4$+г=`J-WW~*KrzջKϾ H[ccc]n`&bgJ5PRB?,6Nqw;q?24b+ *(q׺? \:7p0H$i豢N%"ً m>lce^4eK3{Azځ}A7ͷpj$ph@Ç~b'pSNxֿ-vv̀PuXDc28iVPj/1uPԄkt2P9C%JmS!N3t%ei5/MƝyt.V]oպ,ݺ1ppPoj% P9X7{iuP{B3Q3h@pJc(tGʜ|ǂ eȋS71W*U9bÜA!=qn)kʅ_@$֝)2euKf\8R@қ2r)b EM+a`=04IUMyecch˃2uOk"ꥻ>$! ȧ$YOdJޚ9|ݕ[g2} g擇J]+ᖨGd \[Xkפ{`P Vnku׻Fɼ%ë4A~DA| rؙ~"¥i4ֶF%7 $)x騛4E_SdÄ]._*V]Ogyd?CU;|-K @9I?AxOOFOT40l΋/ |?mQYr":@n/ͬcIGV|A{ڍ9lZ W#Cuib+*þ`67 K A,OA'OcS$Dq]}s+ {!eRh!~Jx>ۡZC"k}f`lE"c't)αSм 4-;u5{nURzd/X_XrE܋Ns -w}2~#@A4#94  'P}^kUX%LK 0V]4%+\D: cL_SR?heO#m[9Ǻ"ށ _m<@Ł[X֑ʾT-xLL>GN% a ްcAq\oig9PEonkm>ri߇\"ʴoDqAXDI = -bx*8`Ͷ@ZJ@FVg']y7|C'ő h1YQ.lԶa*O 'ap&Nr̕@,!bP5-bDBRմǵ4%y9?psL;k? c+ 4/F/xW6E<;.U?qMг0cO*< j4&4agB:i\҄fX-+x5 NK9˛~&kYՠk@QWgwLw֑RUpLsfSU1?taH0 L8oH_ ?mh{JU+]* sd8‚Ok08&fS >_IPOI?DwdSsDہ„KkkE Ӝh 7#;8SX豿&,=1a%p#PhК5qwu!z\6yD9 vhf{#p(%xsDz9~{Z[0c NёSy%cZ{b](-yh܁p;|Z4LLb i >ZUFaJp; 5W>ؔvKz6eP6Fn3􎬠v ܫVHnuv^Z;1+$mooKN ~*pOԌ$%kg=?tjSij5hfeYb31蟑Ƥ.j9 }ndKE6Q!.K,)*ȬN5ByK!ElͲm)rw]}\| ^vE?-CT7ڪWMӐdȌ o[дaHOn?_>=P/ur<:6sf ~^}Ó/Ҷ%Ŏa\yh bfCd$WO@I19MM28:]ضSf:&>+T F@YW-A*fn*"klhpBǤ{#bz<]V()d#Za؋g˘2aU7Ѫ e/׺Kfvsn:@p'~>:,#"'Ep :tfӨuL)0KQQǛ *yi eS5VU8o+\7s-ϺD jciLŇvW >J"wŴIXs< [lZ95LNG (+qb_B7!7s,i.E(<'n­Ii 1L\ԫ} +~i|&vEn @MDe8;)A/ Rh5ꅾB2qTo><#<ȏCm&^Q66EրDRbf0ȕ‹UG S"Ghdmr+hUp{sZ@kf\=3+E[А$762 )ifIlS?MX\)B|Ŕ:&+b~$bGRX&mbDV?HUaG};[j1$x"^SY  TLӪ\k.#ۉD6.71aBY4&ٗY&fcъ .AU?Vm9Dȑi Ks`ڵ#-j Ť(~[L̥9Q/GFGҹq+ a]0~ĖH~[Rw׬ +X z|%ӞqgWkE^we>4gF-Z~@RfXVa'*V֚q,rylE+M{XbЛZ=%=Hsofn؀D94$#-Oyg8|IH"`_~$s/iigoG5_GoZw#MgӺ~mΝ1 Xg^_VCs#2ߌpɁDxQ"vnOÒ90N^i-e[x7DfzW\R\t>[itrF"سlit 5aZ~gɀB/l{GIꍙoL[rúafGI}z89hp%;Ng p#-E+ťKASu;x r6Q1,J2%Ѝ^ĘJȸ1m2] !}w!r25 cS#z_8D+io%1`.;9ݙƳnN߁KdzvO q$hV>4ӿ[ %<ƝT@ iIq3~]PUہ39|r5]b_r//94K2(ru6{A  {==ϛذ7 >@cln$L\>g/8;=YMGh/.8xHTcIkU,) H p&8Ps`v˱)lU<&IVɌStO؈WFE,1Ah[ ]Hy}DxśG/s…x' %:^3 $KeI $:{XQvfh_a@LA,KvccJTNNIw5 _C|Ѭ|E[%W,Μ"'C"_~_v wlk;%ktK=y:5x2-ʻ M,drˊAD2o 85QYJ_CoyS獮 (C-lg3צՒcWSwG);}"}.xKL0j L3k ueE/L\ CGssT|r޽/{[H7TTyb§#ǣV՜NRСAF||呺:L1គ,y:bPK4  g/jJ DZYȿ>ipK*r4>T6q3/dL nvdyjSlPBxe\=PDK|*MDezXR6F S6jw.%iz$mWR(6"Oģ :!Wo;9\̧ڻ1<.["y: dǔ`1E vOa-Fՙ-j g<̎ nSP]oy)f=6ڏg]> yU%h{c]m*wp-rFnLكe;|N`HM)}*"tVW@2.o ;z]nXjfB9Ək!621cv+z'&h8D&54 E_ wWn~${l񖎆J,C wr}sפZDSvZ(-@%EJ#?tw,"fRM̡ny-Cӯ̯hvAh@aʢv !*<Ռou &0l{D\pmYrUY 颊Gwl@ Y㖪@z:f79Dl@\HJ,ˁ/#cHYۣ#&_o5.;j ّ`WAbJ?@Um*Im+b͢{=]px^#՚n4 5#!Ċ$3\3XT*K1" FA\ idžھwsid(26Lphx(~JdATBwUl[ͮ{gXy+rVxI/O?O66ߡoH՛.pr "fd 2 SsgKG@|zD(.{[e<ٌvIIL6`O3&u΄ݑ|TT`O)B[j4 ӄB';ǨsfW~8É=pe!`SAѹnMX8R#w|,V$jn*>EraZr0-#-|So.JwDڔ m'+%w8f8 ֥Ua]m¯{_<;beDν=RcM(,7-%Pq*?r9g$-OPH\`kcnOwwת]cd]a+2blfSNZ|Y*ڟVY1S@e֟W[ܔCy A %f[% 0W~)ʜĔ<~QL%e9JMEsXv!|ЩJ Ro(ӡ>ߣ UsDaGAYS.wy%)Qqܢ*}(^CGvxTU hN$4pjww|lk"+/Sq[AwMd3yh 7S%kNex#/R5f$^Pr;ػ*[&!c9~Iy_On/MS-_f;=0N2RՔm*ؤ ML[}c1FAO~2b.]YeC Tυ;0E欹3K{*g_|e:xYc>6JnOS7P3Pϊ5tҚf--L !d88k)nL)EբcK_cC{<&(BD.$ AMUczݥP:#f: b1GhL3sCAWPMBx zǑ>kܓ5쭐0ZzĆwz l5, {8,^=֊872F"7-߼HzYґcbH-!!OI{cx G 8FrmiZgb3FÃ5H7mszUq '9Xr]$ѕ'G# .A-"J;~a?)XD ʥ,jQphnhѼ.!M F%#)#A$J]/Z'-[$AŠr FߠszS7]`wB$NAAA92lx[ɆGa>cCzUq:7W3w1nc©a]%C`NYiJԛ*/Tk~4R̪4`Ͱ*:AL+#T`&<غ:߿,,H9e}*ӀmU5&.k$U\8cv̗8d 3ǩ\etH9Jr{z>^xۈ T׌qU z%LVԤBpdf(!M)Nơ}~/P t%̄DK2_,Ѝ?^uȰ $ JwFaWq16{!u,pXPo:(&+2ۢM< ='E+`$T/s2 Cg HT0E߲͜i-Ӛ"6UE%ӱ$ВƕQp-GeaKB'i4;^N^o:=h}}EK"%j`<" =6ɩ_AW+Pq $a`능~>װA;|$m@ ,W91Yx=Zrt6Z`StI!{iE$,:4 tk?pgU.>@g"mPnUeg K#FɾX2sE7xkLgCQ:RFK885JKQM0.\ŀ/V](T~7Z&b"4 逸?=&v,دc7Ȉq>وdP|/)j:P-n^xiߑnEp^91}LQҒ+{]փJ-k=w,pFSCF,i(\/H5Q٬kqcAXB@7_ CJQF>IEѓٛ _kCIվ[kDc͇6O1Ȓ”m_N*Aic_)/~Wp#v+} BϘak~Tj .PvXb)#fdV8b%U;v[95,[_I, W}F9-M]Fk[ɔ6P%Z,ZCU壩B%0 \|ȑ&%Z@Se#ݐi &jЀnI)Wi3.Z$Nukó"?%`nPoЌdױ nd[x<㌴9'Zom{⫑;Zj'W}ɫEd,Ѳf.s~,^B C-Bܤ̆g8S lٟ1nj)q"HIzB|lͽ/鬊d.HhR['&7ۅ^SqL(:p!# seH᏾`WDhpy:b-\!5jzp10N*|,B:C^& #C|f~缪lˏ7x ?O7%? vk(XD htDܷ"?S؄mRU}'ԊI&/'4KX=$g.}]kj30͔ɗ&Iͦ3srEREF%~e漯o]b`e}|MTaM X6RŊnDc[IS}}fnA/n;֠x}(V+׮g88^[a8C-~r$_ @n5hqN E46 ZFhBNAj$lخ;"PVPjI+zb1/|%/4a9_ đ^v9Â>ZKE+Xʩ3cl3HeXh%3Gܲ>trVm!%٤)-Ԛ#Z}4|zf}awF|_7RN裴3DYZȮ8i x:>% oS-ӫ%vUl4 ]ܹwYCg4Ŷγ/jPaHլuA@"ѭmw>Z0ØLi&*T=xn^r8R|˕~ecq5bwU4l:F?-? Dyl|G^x9ƃz}?WrmʖIg[Sq_yFb6ĈeR&=` ^_%>T!nv7iuן|Ѻ6EHesqD̟sgq΂P7Kj< ɅUvzĻqs^]+b53-=v|Л6]A-0?d74XD)Ly̶׬2s`V|´;lv)>2mJ+!0hF!; ;l/5bwUcΔ|, ~/,8sKb![f~IϺ%<F92QQ$V%X?Ũɖ-չFKF~q(u18Jhq-Kt)3)"X9b0bPGZPUL7fi! KDA䷚\Ign.b1e N3ʽYr"BWMT7e$.IH@s@{ K"k@Qyo'QYyj'o \jz 91UO~jvp"%30HmqK𔢥8vce0Vքq,@>(Ϝ1p4(HJY$e@f+Ǧ0/vk [P89tڑOA-#  rm7瞝#^ޡȮ˛2|đp:(/PkQWgwjkp!GZDEK추 'u]ӥ\ԽᓡeS,>cn*Qٕqhi|4-ي y=٢l  i"A48ǥ;F龺W7HmcB2͝$s>0ლSQqe>(1Ӯ iwɥҍWwG7>[YV;4Xg?ʾm>/"~P61ًϱT޾ڕG%^zߝIdwirhԅCdR7^rFgU_͑StgnUrɣWVՃЁ9yv?[\ ͗FXa`Aq~漕ô"`oI&JO8]ڣd.°L'*C5-@*"wߗ+Vϐ$k9$)H]Nw]0˜a|֟.<K\ (yFl`äFI(8ӳQjel<>@4|_ӋLtrR[^ex}|C-@ZyO[YN5I/ N.um_"?F"L.雐Z;ߊaI)7~ c~u4֛ ~ S-BUIx??NK<`DڷϐL>wPXi{ݿP5r+NŎ:qGGK_5"_?; c$޻:ozEAaqD4%Ċq@T 3$N*&%e8Sӥvu08:x!᥼pĴ X<|W1o<} Ç*yM98Sx>10zKd ^U'%Gv5X|zgK̺ULBB A΍DJpj2n V\擗FJ ;ycFS}g(VKXR2ի\"n N'NmCm?P2y%&#Tf2$/Yz> HOz53fJ>z/Isl"ou/[٣e}%MkF~!4W8i4m4:nOk/XLpuXs†xgt&K{ªRăq+_Jk>|Ȃ nfkϘͰۙѻJèIegvOM3ᗻ( Ez`S~l.xC~ ;YΛ8{:3]$L!.a뭎͆VujEQt0A֡;^2эl}p8z.~歝@"w[OA:O{C\F*Fu~*)&5DOΙ0Kt':O07s'!8AVxCOmXdS1R5S2f ԕ@z.˚I[G͏~l@^叅z\0t!:>lyXgOaE5/NQ+_٣9]DSۯ9c ;Ƞ@:ܪd;EG1.+?H[a"JX,jc`E4_L@QQ3@"OA ƅ[RrNme&mrviiX;q?ٹqBYd$>>(׽j%FX C/Yu49q".(h0֔tA!79$z1vxӪNG_F3aOz/6G$TrdgF%}#:t1~*'MԡӽAa!%}1I-˴T; LsCP #~A <87hWVCl&~t4-ٿ>ʋRLJ\w CcsT#}-#@=4GëN:be) ŵ}t^B~:YL'Sf OAVƉ/u[^ސ N uN0Wqc뢰-lD;o9c[yڔlXg9l.B-< GmJkDDuI+:lIc½)\廱hgŐ&d3g?m*w5ή;o~SDz3̀˯QL\ڠ@h-Ɔ|m_(|#Vluv~Ii1 Me`NˋT7@nKԑ6<ġ+NY] .r/(ΞѪWlDbv"!1+XDaaзTGh&u|R 8!!' گa븮S7)Bs2+_ DAR~}Vtd1,/^鍍29[熛AnӦK!*U{.BKyaʾ!=*V*gɃ :- AҳE'vҹw3Q%ęFXt }d!ka$8!"5c(XI/FJ{΄5GќդtO-çpZ:iRݷ}lW<ͺF"7omgWa,~+ՆLb]&e3*y  5_c~{픭OC0~8+4^jqɦqWnv&;+R⛎pGk3h[ZIPbl,dE`fG0 ^&x"&3q13Vw] ڣ֥;>Do"bǹWhFΝPV|f- *)-Hd#RwcVGGS)Qj RQ(x?Hhy4|P VVV^Y6i!kӦ(` E]6.Nh rVwb<4[Tǩqċ! Iv:T=IZV:w'7mÒ?c0 \C=;>71:+ 2jis U`'g @k8#^΍nd}b8Hq385^ѫ\9)KZ8 uLTfGעnɎNT8նnӃuqmY[U6@u!zY |" il8 9e[T|L T{f!v`gz>58mUw0N<'C|t '|*a`]wD4{W QXn(N+4~s CR9L5yJ 2DM+c޿]lm*d=ܱv{ @KrMϦ\K/4ńjTTуjՍ]cSc-60N) ~Os9}PVe[*LXQN#W5ޅ#G/a[_Y.nXvmΚwxKPFchٶ}:3Bh3݌%]"cD4MS_øQOdK/S*l4TrHS>ؚ1\a3GHmCqʎG`,ίg~a-UO H+Nde7OɈ!)m2p`2vƬ$<`3rv [b H3ّPPm\l^H4/u A-I AqAQ'?!g#wf &:%`>}+ohG BŔt'W@>dC)PA[A-u1fxe2i2R΍XCh:+X +{>Wf]E,˸qțIO ȵKu\'܆ O`N7cL#dH [kͪj,"IV5K8e1[!DR g}5Go#^0|05Sƿ2" aKFgb| nK&Y^8r,7}㡴Jv_]i-v̹:of!5OLi)#*󕸍YN$a rbzgZqJ]_ے"fkd/Jf|̷Lh:jW`p d1w~+ZHDLH{S~!Ls89V`xgC K ;ibTGV9É:G/h#駚 [T%L*Mj~NBªAր5箢@)'M%EEwr}?4>9Ε| EF xr^8|Q&xT3qǸ.m<-Ʋ% @麝[de{xrl" [/gR_Vʟ8Y6QMҀp [y%mN8=C³\:#sT~u*ڡ(+9Fs?ˬ܀^xOU4eI| 6"Fn ڐ:̠|4<6-ZR *4|+R~ĥkQ ^(~1juql7h7(z"UE>İl/:sD%O~RYP4mey]â+\W`#ɻ3h8琲7KmЛ 4-?D!2Xy$)I H-&G 1 d*] /$P1 :%ɃYW"xuPj!'/G/(X=v+G"#B?vG=O`e#d\-r?nXQZ zm;{h>裴zW$)|EFkjOOid n+ ?*A:'=9I%p<>D+%}!䧩6\)>wLJ=捎PQjN3?AE9`d;jb)o Y"0)^{"; es17aMv^Qr >g-d\]3RA~Ĝns~Z[@pPbnJ2eΚwJ;mG-4mb_S5z[s R4N}n-w X#kWvnl$ZVϯK0Ƚo 0@?*t[j̜xV amL/hz}#&f "ʐ <43RnUC~^a: d&J:[8^D;? ewz$DT]l~5M{H+uf SPRHnPq4t |ARg~҃5i7Hjtw媇N$CHuTW aЂe2U`*j爂N1xЯ!Fm5!='MS0=LJle`MRAp13j[Z4a E NY٘ Ж(*[8v/i[%?XYtCP ŶH,tNtLK ώ/F%5sv/=v;#$[ `:$){2/Ҳ'B=PkmNk\tp*_!{_rEkl\ Mvg cm'4Pe (ʖÁMiSvځU?%(ba3U9[(/k/닣>QL0lBWYӄF0m%>4.O)@Ԑ?~Ѳ.\O cB&bf kG$r bCtH? yhm?l+Gv{I66veh/[yCVLX,A]!2:GSb%ϜL볮JoYmP -SQ2 w}?|0:׀}VoP+tи*YѢВoF%敄N#5I{q'´ }2@DU{A&&ŐGg?@߫N3ݘsVl֜7@+F4s ͙6O[zrz&bń~yS^ߢmWT;H=o̯)ǟ.R7PR2*^rk_Aߓwtq\~!wH&QAP2|gq6&h/t\A;+ORO#ey`UnT'6"HET YG!:F\ۍ-II?`$~y3hעM̚90HZu*g? zoNV\U\{T|J~ 6 [yF~粑{IY͑j -{<\ZЃS4,?*C;,ި'9-裴ʉ,h_B>~, ?qΣ=lkzבP mM+zgԵF]D(J EI<8w7a׷s|/1,E 9 L3fp/VWめbTqG]JyZ 0ڭ":$c@ 5C`Q‰n돹쨯x=5eHnJWc(;9tnvz]kMp*~B=/hٕ=zw8?wr0 wx&nBgGRYRQ/Ȼ`K*4;ح!VOO4' 2^HFk5c $~.B|%-׌@ HjɆEx5h/[W$= <´)`a$ۍ겚Gm`mB* ^}%N c=lHS9S"/X$ɲr NmX=<ޟ+{0UG\Atc5TǏQ𛽱n ihN*WC*dUbʢY5OTbT\alJF!ˆ+L/Z"g77J+.+U*0wYE| AyZ?O sF*$,ZarIkgNG8oػĨ;A]l/V$!]PK4]/pˏ v*dޛ Ƽ]U`dGgeD#l5Iwh&aqDC?+ .O?[vM^Z.g,PB6͝.P0X`)@=M+{0 Omdp\̗[.BC;I s6ߊ@,pO0q+CP%ȹǀ Z4؉m1 quAc{lV[:t쾣{ vDKBTp?(*W@6Y]~G(KUif KB׌ z`2ZZIiFZ~nű#B q(310Mqܣ' j'(PYWBvk~։Y.> : %MG-*5:ۘ+nNv[0_ ֍o_|eo:T4KfmMjJه'xNĂs!v*7U~cq~-7UBҞ [:g{>fU.z!X?R4s'phX S:8Q5Eb`Tq̆oBE̹~!"ǵЊmQr Wt³1ٍՐ1kp&%kS0>x-*SoUWȹ(ʹIg2:삵HF}^kJ}g‚+)rᨿ(^n.C(@@$ Mde#v\4  `W6PT UgcoB|N!!=8 lm~, K.vۦ_2 =(9+T*"x (s`(fs(z{Nn =RD9bYWΛ<'QncFJ;] m xwt= ]5Nsӗח"D=h|fl4\bz/ڤkk}O׿CF->/S-ΓjG<\g [e&E*!q֠yGTmw\~eNLs& Ot,H 3ɛ)yj}]J"dólG`uqbd)4-&ͱ4F'Ӯ U3%()pZ`'(!Q$݁@4r5@*2һCmḓPvۗ*&攱â:d^$!39|#x8u]n5^:<6{Tўmp*"HkbE30jz@Jcuۦނ^96p//CEQIr ^o?ŢsG -W{AlMF9+zTM,$45#udzJJX#~dwשpDax{n؏8IJ?ʥ{ziC 6S܃\@S0W p.\*y*o)[nUvEvL-E*j8+nV5Z3E|S{2VIkDhjgW{HҶ<)M;3Ҏҙ_"h71s|[uqa PKm֞_EX "lI E@*vdŪ] &e_>{zd=jAtYέ:)M?43Xq8sνyPlo`W E}>g4ZC.CpVgM'ccBUBiƣ1$1B,<(stAnCEB i[>BDc'nca #)" /ځ5cIc6IɢqЏ蓗d)Yo"q'n?MpԈ3vHS?טg"efBy$3 qsvEqI黝 X {# r& ?2O3JjJcUL47w $roD8rXeN*^v ‡t6 3TlIUH4z=|r%:83 u4 R'3O"l6G3,a0UaM븸4;$-ZM$4F bywNK]xjsxçzh*W!yw Jbu ^˖L×a.nmdܹ}ǀMƓarS|Љetzitq;ϗ@}VOx}2I$7Vi&}50B#79"x/ό< \/:Iwi(K[=*M>Mj;B^[ugl&\qzbR)Q.3✝4K~]۞&{~0 os+iǝ\vWՋkjR+renc(QA9#n뇿GJ-"{OYcr.={Ɣhظ3@5JtY23|D6aBDh,qEY'AS߹f'H5Lm.B RpΛAWXx2g;8b0>B3ߵ`t,r0̱A0hڢ)T'< S31ɫ(WPSfYs{I)R.7Ho)@Ҭ)Mw YR8=I-E0! 6DAi?UxPZpu=aV3{C\i E%$T+} ]H*yq+R@ƚǴ!I*J؜ЫKV63ty͕͂:9棒HJ.5 N4b2"/mq{Qw9*D0B"2;@d Dt'B/n:r" H?_4=nY R\硞}}6)BEQ9h ;#=;|5LbiJMr]/,"jۦdci#oci8^=TqO7Lri!nKR dzJMh3eg Ubzrs]x VC2@xE']NTJTyE,.Ⱦs¬kj>+lZˏWÉ3!5GMG@@a_ȏd֊Qzbvm֕ty&`YHn1DCY{SR ѶˈCǡ\a; `Q̜]Ra-a/lA }(iFGa;đD>~@˩P*,H|C\$S 5HEy0S~ כXd1ZHp a8BC+_,΀r{o %+k2ic7dd\JO ɎC_pV늺Q;~l־1|a8X&gG[y2(ib,0jtTfdh%@#,qO%"IHnKisl#UjôJP9b 0-Ar Iw@ͬl n8(ByLv,7dpxhjSBA_rQ 0F4pAx|l w'(T1W@|PIRtcN`y5iԒ~ɸݘf_ٻ(E3.RvCW:A%p/iE>5ό*P\XBZ<;A:"o =v-_Kn8߱['jXLqUYvlz6,!7-%5VL)Tt)ЃuxpuEJsnɵM:':T_/[kbIĎ@R*c yonJb/X=9#{b-2_va  ^jvy!z_/R+2r(M|Sew[I쏪h@V*C&VXJ98F|Xڠ›q*; v2E7Aq=Q7Ɩ#A\UwGvjV&؅)$ոڕ4pDpVʸcwjs6~@!07e";sb z؅C{v87~K夨pR@}2+YuPP+(–TÈvmakay1ST4>,Y ,/2FՑ=> Àn+:(@xf¸1Tʾ3 @*X}\דWiuDf>).x= oq> q6b\çwn&ƥMe@L0 931>oa:~k1j6c=t$(iĭ6Vԕ_O T̗wD V3Fu,V ;=(/);1Mrh O)x4[43sL?VYBƯm:So8 /k[>H^`&Dh@d9tъ)r#&%;q7Xh| fV7aabl:E{<nPwDgd4/@U΀B0(\#$0xuFJ9W)]͐4kPOZw.H]. e߿K]0j݈"mCtxU(݁x{IcY`s;Ƅ!3&Hx40-%OۙV`r`Qa'f.K##,Jt9dQ:s$PYxfMMT 1JzD(Gbk^0&ioM#0;5a֢xbBȪS ,;^ YJ/t ݙą3%NKa;BW(*A9X3Vk$潻qDh{Y~u$ճ[Q yGB~-n-%)fr<-&eB pM}ݳ?a/Tפ^ xN eXJj[+yż~]4zhVq#O?]qEsXZs!eyZ9dAnW@Mc[4\Ju=Z?-&/% ^#*// ݈ n;.PjZ&2.ݹM+0Z [_Pif5,DޙQWg zf3ߨ=HI94Ob@%zc{ nj2 o".G~ ' QNοswXA$ JLi F޿Y;1m^t&ae0:!Lt (4Fk+˖3/BKw_/~$ oZj "}j攁^Qt+ czy 0P#i115%j xM6:Ux1FI!{txThE_,=/avU` ^ZQ %UЗ/\NIA(9u?Ҵcy̾͸(gW5x+_y`݆貴aؒg#m>^7ILoBW xtf3ďHzĵfEr%>|@*ۆBDΣyGR!A˭O|pAA ':BZIPB߂Qy3^_.z Se ;9rRgȣZ沈>5z|R|@ r? ʌLX,L,JN uu?ɣ@huL]H0۷D&,͉Y%issp2KS 9hLhqjFf %%\B8}5oaڪ u8cu>溤Dĕt_fSn^RFJ<*0]բOG1dqFe3Au7O6/y3婴FݿJXT`6"$0_w8Vnӭ'Ƅ!cDK{]~5t;z]+aM]QvU ؚ|{$*6= tȤiiSAZ2K"#k\IR*+)RBT:2 #=P!.qcLB{XWt9C01/mc7k-Ȋ]@PyxN+Κ0b-FE+4!poʝVE=SnzxzF+NmNT뱑a6fuy\;cavF@gUg[/;^:$c"_6 T,jN+ٹ0P4~ߊ`W+ H}w\ym'eC0< ;5cЈ-9|qtj8ɱ8P$~-Vp;c%}PT_"nJ׌͘obTPågL \֝2YŨ}SE8e"V]@x7Éb 1UvǴ2И_}-B/q..GL2& 5P{+Seo䳍.hxya-H(޸)ɼBv5t][S$naAyG#} "P 4y穟G+jy KlǑ@)b{c`'S\AIh7VI#R(A(q8X  /HS[@xf\sN)B%kt"7OofG;~|85+ɕfݖ ?_!#bb<xAvׇ4~#72ѝUe9O n ւFld E꾬P ŗ.E#$q?ywZV4>j`J+g܅x>f4X {RC-}.?@93 eI LI.yBV-/mw1ԅj̳b%A% # =aXx"[?lE|G)[znVn0 !1*BXv͖N &Gσdl_ -d&f+X kA?WG(*(ΩM*4-3/{0 {&e}u-`hduLM]"eм4]z9vlrK诺ŲVcnf&ãDK=k!(O;*?M nScj͊ p;]聒Qchj2xE֗3T[?6͟>[G,DIjV-?Eɿphٰ.3okmM宵آң4H|sBZC)!k^t.2IY FI[ʼ!8/VqЀ=G}#adxT%]·= -$7s 5x>o]]oԖLaq-Pah&3vF).\*-{5kODD2 z1 8HRD 8-a9j=UJo#_<(a(ߝhTաvU8;Naջ;)X:ׇC[3==iY5MTXr'ǗYZwzyeT*gpRRZ?.1PAYiı}~6W K q BhdG'ȐEֱ9 -샒+ue s϶Tϖ]TV">3'ѹ e*!й)MH ) 6)'|eR49=E.s%JrP|w , 1~ la #V_ Ѣpo>_Jﯶ*]?zYi@qݧ} BҜnTmG`P+ApAzWM+eWu#*dMNZ@WءN%k&A91-,ihp#:Wpf!OT 'yJV-\a$%bCW`uqN.@ >#sυПuɬ [e4t?Xyń^T] giwLdعƃ˾yuQg~k}}8Q^Άr*&tPgGxu oy~\ph[ q~7iӖ9VnMH}"Ͷy"$RgӴ3sQ@xH|"(xAB !YN炳:bIWmnJil'9gQɪ&`%4$+ҷƎ;%!O'K7)F(M`-YUj^b m2 .I?hB"),:ϭrI dI+U;4lOob7}:T=/{1 N -zU nӜ/w,"M“֟j_ okAP?P+/Uޮh*<i g; `&H+,{oiYߣ7یi9YֿwcH4[(d ո+ I)qͯ0.bƃmk;uNTe0W' ?We.;|tmqvSՁnlvp qPiAXՎE^bL;z$V;4G/ΔIybpN8m{I__9n~ p\+ y}f7ҰBS~ŘK'y *OAHUydt/@p<{aZt3F*\@^E_UXLY ؗg |,CTrJH'ư/dJݷɤlٕi:ص\jkYMb[n9sNPI+O,rLNj{hh5X+XHԾteαo8 8 HoAo;u,uFy$uJ1,K?x8,k\^-"YgLy IM3iB7{.iң="$m8tZ=%١u_)1o>"vU9,Q'1֩'61?[f j 9|v^C?lA;VK ;x h1f?pf#>°uu Y˭2 ]q}j@+4ofhm( 9KeQG#h# pRX y3\R2/xܙ${?mUc w_(^ZC/ŰI_MMgLE h 0m]g9ǬFfWQA6͈aB ؘZ[m}ֿH:1K#Ÿ{(?gh:7} qMVt~.2?9JP~Plc@RJ:<,asӡ k5rqcC"pwb1OG0עIx4KŞ=^~|l}vhkm%5B7'N8 ,DP'S/7wht9&u$rиx 6^_8w?}^d\ T;_ fpsY@e2ۂ [gqu4c2I O\%tSE~f3|w8e[•žmqI@*5!T M{:rh%8p(0O"r%k:j.FL30n[Gpؐ~TC FE8۠-:S?73yV(^'H$kh{346esrHJVnmWvu{c6Oys9+GhI}[x y Ow.ͬ:;%PS`_:{w c}4D*mo`#c-wгbJcG,yևr$ ghc )fqAWzl',1VaO21E܂;,UV2QhWO) p7l6ڡ4E;ˎ)ԒG-&yx$NϹ|渧Z k X?Ac|1 ЉI )hy4Z5\-nH)\=` S;)p8VjZ1\)/ґ7Z=XAp%BcISܺxgZӿ/FzC %0F nk%E)= 3ϓUbCpJsX;$t^L?d@ҷ5YZ°܊;W͈-'#t!#dОb{kXȯߎ5Y[Ď"v`lGw?q`h١V".j} ^$a-Xi}Jjq3Bg>+60-h|iWS)S|{70WPT._[B̞yeyϤgkCp9h˱x:IYP UqzBÁJµ ^:qu p@xͣ>il$R̓J]%hھP=~^ޕ76t]?Z/c)Dj\DMn /}6St?-8oǮ*dj܁>>⌙IQc'O1R/d|AR#NzϞO5/T^8DAs`$v3l 456)1RޒZ4WY!_!E) N)"TxWod_XC/?܊W*UWN)63 lo&4Pr<&c3Q8&=+tu؝JkUr\sd%Dowo&nI $gى.isgl_GJDD|Κ8h8/BR>c<0(hr|vlim.bW|jEf{qS9Pq?uhr ̒&:vlf@뭇O_@nn&E![vd]´`R:m*T4Hu֐ jR|J c99άا\sCكigAL58Ed jTHBM@Բ2# n,$j;GKQv  $o 2A- fύֺ; ][9+Ȋˇ?v'Zpk 7ؼJd\:2Y̹ƾ.{G-:tOYUZ$«^U{41ӓv;>w||0\1 ``NccBOs T*EDG68!! WMtސ ¿B`,wu{bdFUSJ ; P HQwb=Ιd[7AhKLP}8ߥy*<(i8`Vrt'׫]dym{cΞ;o!AvG*>\'DA̔w?_E{"_( {b=Q~ꄱR@P/W!Pl  3*9~|m_%٫r_~o}@a|*?\`uZAi8sZR[gzX^L AX&_PgXC?\=UM(mȍ͟"O%n]oxQڥyXδwT"x) GX(y8pTA& [Md`J79)ohv\|ՒLQ/4KI0eAD.j OAmƸprD8rBK%1_ 洆% 6R.pEfaEUk>d lGT2c@ S-f9.d=Yۀ7 mPyK"r/t=1D%:w*B(w:`SgUqKU퐾&9|:`c Soq:1Gm]7B[ԏI*,8ZXɄaZoo~jVo| /HI^6Qw"%0SB<`įn?g:ΗoJmC۶vNʱEGT7 2S`[d]$2xU Ⱥ>ake44 2+ry- a@hL+~'kREP 9ɏO"ȡ ӄ4I`%p4#TjFDju1*Юe@?e kleNJ[:yYߜurxy%d߰*C317\ tL9wTcJ,j)U@MroTmof?'2Rl]iAtWZ/ytC7sg&l1=_RTPWDd߱l CYZ EM|ñ b}!Vx.Iu3+̄HAZ[Zw؞xJ*0qGT!+"*8<^15V٤!,Ɋ}!Gdր¤6:̪%y) eVxh 7U_Mo A{KWKi cy?C\.Ss_?%8]8^NH+UF+&&HW}dIlъQ gU_ztwv݁1Dwk+ \`ctezB79Isxۊt4d(m4J_(`#prp<t1g5]@<[rXOYl^bBT,t)b6 f0I?|,jƉ*t"PD_^, Qo}.*)#OVn5U[ǑU1Ņ{GzH3ڱI6nXaZb}++RJ,縝2tHP@:Lh(Ozi$do "x* Huҝmˎ ;vf@tfVzNZZĀvH3<@d &?@6"UImJz OٲTZœ9XHb #ΟgP+"(hG\'YtiλL/Ϩ,pbIEZS^ N fX>κ>kpkVknͯN_/ 9 D=?Z Z.oNھs{M$ tϻBSF>(by@R|Nu  tMS8n13m1M&l9vNIu%mqB* UK.iݕ* w"$sSoe˒c*/Gɓ&^wR KݝGApb,ffx$c$OU %_tSUCp4`[PɵT4pho" u٧7RxYk^{Vkdםdݝ*T! G9~9nbu;&##$jK4OJyi Wc.hUNCy.1 b*_gTkV)T6/GLI6Q]kbMUh-b~_K=w6.|Ѕ?) [ \9^+E%FKOzIeg޾3\ .T'L2s0LQ+\W^9@3k$+~vjfo rH#YBR# ɑEyg.,U~*47F|P{`(7xӊݜbaߔE>Ԗt d0niٖfm]S:e-Q-X["p iF*AYC-w5A9sPO =L\H)~aK ' *::s )k{ V7t~TظgBيHNǭ\bcw,^U!1O3O:)^\]r h7żJ%OJM?L8rSr(m[uA[£[7yp8OQYG? |vİ-ì&rƳV rkeɕN30j1SShL>Io"iA=4R_0=E)(7n;{?>Tx՚v4$9}ۣ55 umyo HYhr!\tS0˽I5"s8~#@ࠐ1:\M߯V1QI?!sac'qIj Sർ,Uج 8/Al? ]9E)  P* v]F9'Hύ/G&,lUV1~7.vyyȿyBGۆg҈VB|P8"Ɖgt*cm)F_ݦzn!G)pJ\`ODziRF) cLEEmnctҟ#C'9E!oy#SLٽs?T\pPM6UQP?nZ$>f \.))4SQCZlB/ݡHж:\c_*:v'ó@:;|}QRUVj2L:—yq|F>Vm{ca a,yx06t8I$: 厽Ǝoʪ&5,cJ7 v( gI[dF>c|u²7E*4ĪUȨñ?ӿHzIvʺ/2ӝbR+)U=҃/K:-IUlzU EP,ĸ>c{ba|֝)#^pgy3b. QhScv2r7l yB_H] C5baş0Ȧ|OǷS>X<8Մ.MR?? ){^ K4"-E>!._ZmX@2aaX>1D xdW!bפBwI8v>`&hV9 Gi=P yY7bs{t7(1~6ٞj p;iA4?F`\7^iC ʗ@"4rփ־Γ.d3MU8_vqj^#2gr  . &r)]*[C'KsӢEG.Ne\IGNL#+^EVBd b&qXJToH-KB%JT6A>8hxv0pؾ\u&zxk}"*?q[rJɳȼx~Y;S9rYLUeF?uxgPcahZo`u=p똜ۗgO;.TU2kbW|Dgõ~Ct@@C ʔfM%T"k>327Κ!Qmhk= .ED:YY=g(iB"y,a"Vˁ} x?)k-a9ptZDr;䟴E׻A}`A^|wS:C󚌤^ $\&@\;J" O[Af 3s49*"޼zBIZ2-{cmqu=X ϔ>M6RTO[|_ T~-@ٵ0ZVu )$j6 0ostB+pqEM6͟r]O=21]n3JM8sf4voacp\{qQ6]S<_dsfC2.iKQU)\# Qɶ0 j뤥v8QJv#DDF .+,/:yT,X\C5aWnDHU3 f䑝^dIӓ :.@ĚzDbT2t/cGErb!KHG=$w.k: ww51\_Ҝ1W״n6 |UkJ>nbkH( =ݽ^7Edhm^RߡTP@ m8׉9)J?#4oWξQm$u''-&V7 0ܭj$#BG: AP.*߼Z9uzf`y%b5,Ԓ#jV2^>JVp0%,6~M&N^ af7[,P4fq7 L&H6ftD9;c#8OhZD+爼u_0J:.A͎a(@;_3, X>w1gMLM=`u=+\'^= ю-}䌕ʟc\Pטs@,ˏ .X:o|.*z30pr7D{}BpEk+ډ /(Ǒt [Us)^ZiH= ~d,Kr|k^ܥ^]$GfNg\%q("XNP SD*-ޢD.j K):CaDoKh+~2 ( 0UȊ57lʳJHUVhzu0ԧ$aIgZ#B0 caAM#g5C !LQ;Ja2cM#ѹY>63z ,#4Љt,"wG|ݯsm3U+elhNS|%my!BxSeEdgZgۜ` :Q_L>8)ЈVWa֐6ۍA5ýr0E=@LY0`IɥF|?; Yɱ}>Ra[5U6UpZ7)YMVҎ A*'pAuVl UW(t}4 +(|}{Zp`1:x?cBd!|{YU/M.WW ExP!'u n]{*w,xLWw#u&N_h6Xq-T8f uhgesn˻ug?Ma>deT H6 CcO`73)Nv^[j.B] 0dIϹ 88 4Z^E14/ґ؄IsU< qs#snL1o"T,^t#6{Tv5w7$EԁA*nᅸ^CSD("{ 6w%s졘K9 zH“VN0C*T/{eht FLh`B1R¹IF`$- 04wƲCo eC$KW$H$dэS$t_ UкLyѐqWCvNfVdo5`U`+!bg]J/6m8@6-Gs--0X M!uZL3# |}b[U $J[|LL4B?X6h.д3j?)]EK,&+bp_PP8-t9\\(|U#5E޲Gb1Sz^]#lӅL^r-v搟% %t~1CλIa~F7 f;>e>j7Z.c g1@9] %u#j"?#J`eą~|)kxA#л 4S|f$x#)uޒ`皰 hz>8vA)Y|)wJu&'׹vcO7{n(ߴQ~-~=]DÜ(+|}į($Z< y-̎ oQ8Ǝ_hZ^}@Ȇ DYm `JV2Y`ZߦLFhsG`Mǟ_<Q(ILUH^,muJJqYc]_FMD:9eե Qg?5sU 6"XhsOŶ7lcCz1\s-AŶ9љY" .RM0[T#p*1xYUKk{u)L6<2 67</6%j'_L}$@QstVAJ9]Бlm<:5Bi!Yxz㖈Yӡ4"{FkpQhֈek hX}:C*fT[OXi:E?welntK\(I2KTa;Y&fF-GAnLq$D~]&B!Z!xZԙ.7t5g( h@%]$u*>/"ٷI0SCn6%m]3\#IdU h6(85|@B={codg9'܄׃}oITW$Ġ0"ur[Byؖμj*EGc_FxkrSF^e܂V3Ei![GE VK'XW{= U.7]a=#_3L R9F#Z_2h8cOl8n``udYK~?yÛ u%ķڭ{>V ?EޤDORYxg封o\Jzc.98BzH[A4n+=d N%.<$+ -xփ%CHnAsBwҮ2 t^b*և':w\ !ϯ赏 Rަio'zn>.~b+ i1b)_x:lܙ)]Bo"pgoH\zE#SZBΥgF ;KC\KAu{ofj5$?058Pp챊s3xG-halZ%C sAO(| Kp N߃9a#U!{]8=F*]V]g(fԽqe5o 3Hq(o`ՎK .`4ZzpAEZ4i؀DreԜXl TykyPy4Q ]ؗ2CFA54SPx%w>1AQ)p 6KŽF۝Q k2iic].Ȭۙ͑h0ْ8n޶߯K]) 8$U'I&%vsgP|-ٱzn-W/2 ,JoٕWMܛ rNs' rRn]AkLiC5/#[(Ϟ\p!Zt9<|v_3;gRS>R_A-os:cQ֎!Wh31Mc#%r`z|~WmO&6JE'ӎJvˌrݔoUd#H] 2!;.P{yA_)hI(ũե`煘ش#Q"}ro{"ތ`|~CK$礵p|S|͞ r^f=GC}dUЖ]Bbl9&/&,IA$3[n8ڱw(|+i擙 Z ]lpr&kFEoR{6W $ؚP$(t?[ Td)1t;wQ9!D-nѹğGJeZ59{ +Kj:"**_ 6Ҍ|)Kͷe[ʴmrC^)D05l3/\s;HZ i@A^<o%*,@F\\sGjxbqۜ $媳H?Q#m")?dNwJmnA`޶}vG49AP-u /,t?CtB߿ M@M $KH}4$۸WN : #*̈K͌QK<ڸԐT 6MD@DWSv|ϫibADiݳ!besYkZxßtk*PlWWhj[OTF)͇ :,ƺ4(fn_E֏e1Oo96o 5cGC6Ãf}aCw'J$D;z a"&uɠNIs8 y;cEkft7tWXU~dg"LN7EM@cWcEY(`C|XLq-\O$ $fj '.̑QAڣ <ΙX(U8ى6۲blŒclIRDP#mj3L1Gm7Pp,XjW1?$pd7% ÍD 8OG^h 'LƁucZc/kW.//@bU3֡Œ*H;czf_|N y~·N=?[ȃHǃ2onSҘ 'V7.!z-%SAC8etR0rpǜIVDeWpi. E y{9Z?g׿ YōKBw=.hc q]wA;kSR%-àaP%]2ELYRs*u3r}<(6}e3\ާ<51f:JXqbvy]nh㉉/-{'$"ܺ|E\ HyAUGEhdi?@%%.g5(UqX*6t3@Y=/= "I3.-:'fqz !E_ZP&"{ d)&"rǎ 3#ņL]7+1M^P͠u'ܣ1os/<|]xWZ:vݎ_sxn0jVe~qvkc.I!RͲ,x؅}ϖ3ηfJ}'LIt*qFHz4DE~(H gN0jx#l?Q#?aRy\c&+Xų.<  K?뭎/db{Zay&;vKTK~N>6߸TZu-K2dɜfHY5ʮIq[$ovZ|M/?'Iv;AnևdI֑0wz͢@Eqz.d^Tft3Lb 1+Bf M #ÂZ2FWΥ:}xzTF_ .LJB_pg\,/h_Xapc`t+MeK!üoCπu pNspeԪ# Fڔ>}VE)࢒(M'1yyb[&w$1oNEXT;UhĊ=]wmR)|ci7P;I |BV@ċgGqB#ٝI/mzh-^6*O)Kۇ8 o\R!uۢ뎴~ TnڨmiAjY[э:)84w:H6YŶWRz+p N[zϜdxS#IO.̨ܱvj+r2.@W7Nl\"M^g0W|FP(1PZ.ǂ҆݃ueu_յ$b[@W09a)aҡWL20VΞ||.d;.8*° fAJ ?zߏ,8tO ~KOG"qq4F ی]7|)v{2⶷J:& ,?gVՏhjE'0:FxW" 8Bc;uAyB bjہifgek AW4ePc\7VwhƯdHcEVYVZtH7U@jll}hBqX92-@1 hg 2J[0R- •!gcbhmpzte3&K-ooQH[DQ13i:qIϽcbC]y_MҲD莬]Ozzl-D[1 8k;~ۭD8?U#fh>?~1}{ 2 };^bU,n HAhHB[Iscjg=9hf!IԬ!ɳƾkS6-Wd,a3XԼ5]{0t#; B!M"K2e)Y77 ]^ w@JEu0-l:8~zN ;R:ԩp"2!Y;BF5L rC֍ɕYI@ɐ3ܨ*76#P' }f&;=U=VJ"Ai д)@K+2XazhϚl#{Ep!H^*W#Ck59q-DJ'8m_`ȘXhĉGr5/@^ү_q $GoH dMlb7 \Z MCAhV+/\(f|QcҤu׊߽wEw[J佽&_8/,]P{ 1U#P,p|n;/KuD{oѪ] fk7¥Ḥ4Bi84@|Cc/5P Ǹ&⤻j`/v.S~X=.PW4F~#~=.]ק1&B +g Jyy-G]DcR ՛Lәp@N1 [Ui}5[eC'a FXom|_]CùvZd8đt=P=1=EusUpM¨-)T siǷO"ig-OB>;}_#ž&R[òؒ \߳` Yu5Ύթ_Z"?mC)dtvkD"HCGCjLsE_=Ăs. t u1(MlUAxZq{z"B_Ш#cS03 (Wa^  st3`OL!(9r|ܢ 3F>YFm : 'ST޵kXpZhQ_V9ݑ}3,yeBz\kWp2=ŦfWc7&y~ lbaA8SChfv=W7DW9hD{2{'`ӵ↜W{9?"gC_)[z T`OR8X-5 CG[fM/O 8Kw&]${ns6'ډ[@VkrⲹiҼCJM؆%Mgs?I$45Ä>ҥw* Ֆ5_=#pwo\0Xytxߨ"‹<$ϤxG.X7uF[Wmno'MVڢ]H'v[p qjn_fV_ya<6is//y͉Kt6\r7B뾊>ygj0kTPxC%,.E!6i3@qqqV"1կ#S5zI 1D?5&S fqjuYYErEۧ jU=ٽq{FC^"X%. ~tM?I;emԭV0ѫ#ΞVlHQ ;FQ!hE!Z2fh$T,"wo5y VSijȦԉ {}!8֢f:ʴsߑo撩4h|'hkU9WS)r EoƤRpWӊ!4RC("#2s6N|\F4OBkU(jj5[WD\S|eFA尽$K{!/4n<1eo{  e 0AVq<>hs B`rݘu}JVھN|]G8 iԋLpɈ9Ugyv XwQmd01Fo3=Y0wn/n8\ͷD뾁c:[`C܂_34&r{K%]/*sZdI` ]nh80έPXptמQW8C9rpyYYD$ò?Xd19=l؍9}TPb"n#f\hr47ŚP){ޝ|ېž&? 43m=D|JB3e5W?)f8ZAFӄ|0;;`=/f+pLu[B&׀TRwxa9:3-4ouw$Xa_E *,G߶~z ZhHvIV {vZrOQg65Cҷ`Cf.uLpJc:& QhJck[m3d/)uչ">BWQu[A&^'Z@23ͧ^з s_i]\sGb5~<v]š`jB$Ɨ&rŸjbР/];F94`+ѰeL<^%UU$\%3Re؞Z] O0ָQaCIUuR 42_4z*;%y'-m7Ç%M1+[܄u |ᕩF8Ċd Ve45Jtİ%ʛ TcA&ɧ \·t"̓7܊u2pt3.8l3Plʩ*#hfh*sʵ :Iی'#ߑ4)dc&-4F}NC-GRɠm0M3aGUϐ;?F[7hS&S> v9$F P)BfC*uD4bsG%PC,%8tO*@Uekg(+50 XB}e9 FΈi8oOkhbưD,"ӫwh1ӻ"fPjrp{u I֡$%._-j3 K/M)y=5pT@ x9\NBd`[oO [yT4kVޭ?xp|HXW^nם{ de1:n,򋨞W0RTz:/P!!)ixTwu>@#$NƓX<0-/[OE *I,G~9ژA-|5$XȎD^:t,QlS-L!P^z*Ց5wdRByV~3{JMdK9`bJ*i-ڲ4䔮c[Vx{z깚y[Zp$^K&9L{miWExT9B}td}>Z/e,_QC";Ly !{ Vaf$ZA^z:?M-02=p<{}Uޓ/Oe .._u:7oK9Uq/&̾5;"eGz+͉i{d+VB&Sl:BP 7lQ ƶ I_:(?SW\btã8F[;9pJ`Ѳ-SL&e&c.Fu!nef:=d! ՒyI(d;='JK28S=)LM͟pU4eQՏQ_18jmXK Ty#xQ&0<{ סiåwSn@P|01*j"a=+gփ0s+Rw)wԣ,b^i@n?^D̤ʹ ȲNƯWKW#c'I?m)95Nf |j K ) 0nY8:)(8Ii&TƄw,iH6A\R ..D0M N *mL#ے8`LGb.{g)gؠ8i%qk3DQ /y>U+}(Vf_!RU&mIF^SSoj' *+6a|L7JlDģGe3S{uhpalϧgl9` 91ːJLh'2b9{!fu=֮i`|%=o\ImH~-]ر AI|6,__h9Xi8Hұ0($!n`x lGrG)qR>]BSj1v(JU8}?!a^l[)f1'0ʮoS;hh`\ ׏ }kHȅf h5Q53Л"LvTRN3W%44 &eGx'~Zjd5 ӚWD-p'mhVc%Æڲb-߅|l!44!&RV^o7@ϕhAҁ=yeG':ndqjkZQ|tpWk |촁)JX#{D(30Ea~P.&bD[2x9cWXT&[k{e%0 jh}E@%z!>7F:3sB&ANM xv &8iͪTAA}>Qr6U /⦁1\}T Mc+X=iHPpƟns5Zʤp\I ө84<7t,),rWȰ :+Q2Mi)Sf*˪/ zTS=F7ވ"#%Wط%8Ԅ^Ljya[Ts=P1zHĠ&H Ϫ\!Q`R!VAK'43}6FG u)Cu/ йbe7 *}wn%kw|)#V<VEɱ^_G6A( zUb+9L\'C.Χ9\y@o~J1?hTD#:hbS= xCEo3:<>JM$7ԢΡ-CFʻ_w52D.oz.iR3Udu񩐅dS!)jĸ5C]<&x$Ewr._R; ?;:Js@q2V?h$ItJqv-MM+aZR3ǮYrsx W<~.4uS~F[9/'5'.]k|ޜ̗Yxy>jF4Q9ԦP=jqmWu1mf-8PեpEE+\G a%Oεw2`~X &&m9/I}e9WG_IS3M60#vR[mEc880 Sc{5oe Sʲ"3o2(܃CǭٙvڒuQZ4#n&B!ARƖi@˥ޭM癁}s@x'< ƴm;n/N1?(Yө׬H䴉D.?Gd  [wE'Y2@k- IOb̢@K,)g {6쀰*l/fE۶ZVX-Gމ9(`A&Ey2hG =0?A1٭C~":'|5&4ۿ7m TZxUVK?s%.J0^3%WX]+EK'l?HJ1 afذ &OPU#ߓ%==$p*p4;9?W]LB/Jm`e#\3죭a1όV_,J~r$^0/x>v\@inX}(zLm$g;ԠOG8N(t.% ^lf-C L(̜c!魣;\X~kv|H?ao\i ׺8cjU Gߧ< Հ ]/`|w|)-xIE62; <3ll-EYeˊ,Ĉ5ݪlvOlF],kpF"cxן)SЍe1NVO9BR7_{Lj]o!%9,̋7ƃn5yKFҌ_ҁU!Ћ#kK*[}E%k }inE'5'#kg)t}7nBX)֒KnȤFFxӂࡧ=`DgbCch`МذE2E;X}ƐHrvGaBrG][XT lʔZ\NB”q/y;1h'#y]\⤄=4^佻9`,6; R`vI7բuUw;*H#s$ nU+*aOPMO!?HhDTh}8^O(1ql11DD@|ڞY Բ;oQ3FǡQ =)SQ𐌩5Ʊ4HKsM :(񾲚 )䵘RDqO"e=li%Q󫝃/$ nB5nmA9Վ-;۾&ަ$rM=>Cx@z9T:)b{}igUd@BL 6-;B#̥ J[pĶ 9}&)fC3Nz^Ԙd̍)_G~TIV׿FWY/bšq`1eg$Hv.E?f书O ċXX kICgOeG *gƨx0d2PDSom.O>=JuY}c}CrNG[&7XV֛@9A>!3C:t!2;fقW_RƠB(7P^7ɛf0 Yl)=uk՟&H_9⤔^D0DF8ۼw!i`6ڧ z$! jERo/PC& *y z4l~y954v^ª->O6Ѵ1נ0힞DSÎnwm{eL{">3h^BfHkn5a,7%Y$B/b@RmȄaRaX9j A5 4$LL^,R[Xc NwvJgRv|Zix̺q ~-fCHҥkqMa 'ҧAR:M.и,&[Pv*Ӆ(_ז>-J' 㦡I1.MpkM~"1= O8!իwxWcXGh6h'zz{t]ӛ: -*Bfք[&0iQњŵs(h dQla1ISoq/ ٝ.x"g_8- O`Ö(.RiI5Q6c)a8a>2^(܄*Zm'Wb3Cd[$Sk9 M{eB QA$39 aD78np ^_8V`ɞ丁r"gո,,&-T;R)5N+2.f6Wn*D+y. L߰C dŨۍMM[*A1?=J?U!H=Bҗ+ Ko-XPڨm൉Ĭ1ƅ+tǟUӺӺ `Nˌ=zlm ^ɥ#X'@M16Ztֶٌ&z ٚvOf*`Η%E^~STrKn7c?~ߵ;1UcWtHn~T IM;_=. uWf!c=rxzO*Fdؒl$6r-^8@QP$ [B%rmTӱIjQM}<'W ^G79!&¶f|~Mi*KU,1vH_P=`denJak'liƇjh;sI,QFOC1̀LΏm$(yStՃ%D;||sIMhb|VZ\7+O'z  fdFV̜:mѝ׌w֍@-LڑWC6ъ>4 ]2A}T>$.QQ^s9jT< "76<]bB[w(C/@ ~haxT%' *_VMW.pCВ8uŰ5ewwL* d5?xiiЌբ}=r˶XK?X$F2ߔ=&B{Rh!Bo5myR Ud\nLHp`o [Z\}T<N .exޙ.RK8:`f; LD Y'SA$Űt˨ 9Z:rxEMw_͘UPZJ *Qn<,[l63T*L\lf] iji7>볆W@uK\ƒįhy }s>£c[D&QX^KgqR?fdeu[wq89O159"/(\2? ӯ)ZzQ[{:f0H,΍v'\^^p kەUԈr@EHuVc 86飔_c{!#ѫ_[MTTu47u:jWG.7e/XXK"DY_lRv>u5P@qz[%%@͊. NHΤ![GKeZ SɊำX:Jbw=~/}zMC=+Ayo$o1)j+u%G@:k,W;Ԉڔar GIli'EJbK7t ڐ{낁 #B\xl@ͣ:+A]KGa뗷O|_X|{M̌gBf B6aj][w0"j0D9NfL۪D_9Yx4"7k"PA>ҽ%@ Jy;IuFmeb@ \HF.ݵS;Y9%]f`pј+_6}T$p b95`d\d$" !x մ%3& l }d 6ݗ&-H˖7 qTV樓!DQkM2Oh-d<G@}*b݊m `Gjs.u̮Hfmtʥ`@C28*ExkGC׹rHc(uޣZǜN2wuiz$FոysI]Wˆu.~Q-0WWIN[Z !P]e4 3D'}}+L,Ҁv]Tg/,qAG>E75w͵%'!lNM22x ~:lROfnޟ+겴EfmMx1?PQݥeOdG`9CMnW`菉?Z-Up= nsm0܁X~Th(sJ&:]ƴl=<8``Ҧ'kF<:38~QSֽЧHM l?4~lm |Pjt9J>cxjA)W{^ՙzH`;Q%B薐C"5vԗ6C @;wD'- uSCҙrlXfvX}T FG\r9@6;}"C:1 Ijۈ2˙kšJ0AWwPVF`2 ߃ *BQ.%ٶ@g%E Zg8VtMzeVank׷>JOήi_e䇎QΌ#g H?M~Ut;>J[4*A͡O@E]}K&ߊGeHrbm'_S]bxo)?sٱ&%!ªRBDnd~\X $ Vph0`at#;o;v37>f^E 9?F?o]ʳ_89ZШ`f \! q\G ;pg%_~;pG'#8&P&[,uJN~(ﴓZ*k [FLW5ռ>/"uFfƯ o`> d.0=j*p]wsZq̿7}KяY=4$fV h/ZϬ搢AZ%tBg5 (#"rzsbv [ :/x"ѝEr o:5aKJ1~YLYK䵚ܹ\!rxkBr}].3c#UeȺRyƒq2wo>z:;D?~<+i3H p\a$#b ovHˏh/eZ!11P!t{¢= ^cT|SE~P%T/eڇu Pth&\ǿ`sa ŴW/.MZv+?a!iTg4;3"fbmI-CcS5ý<ٰ2BY--6Jkq`iU3Y/9Ͻ_Hڤ6SaF00JXαf]Ο:%Um.evphdOyZ>'AQXԇӼ||֏nql騝ߗ7:ZdX|~RB?̺ ^fjyUZ[\лH-Um[8wQ!o à 8(cORaiҚQ~![Ow{}"|!1aϐW{=QSr4Dk@{\` '߹uЗi6ǻifwI(bCCYJ :Z=q >*9}9dM'먑8zc}ZyUx4=)o?#ե_"WEJ}AX*a50VN˾^ƎmM*FHPDsZKQ3Hl_\=bk1^q`.Ř;ǚxs([ٕ&E.q nu4Hڰ{jt&A4]]ڌ w EIX/lomTb [~ b4Z+?6RP:}P􁙨skֿФU1VXz%v$H+`@d[eThS@+oJ\t843(?\w^ b!9z!s!)UoT:_FPa j!!yװy;{E8ٔd $۔#їeXE )P[7rW:з\33Ե;_b׊^Fٹv)U j+,ߪDwk+뎖7jCj]ɒM/m9+k[tȪdo,èZK N݆V"xB|gotGGY$(^J }O bAmNO#`l5Ϫ4L6AE7Bu3X+M|\ܮ vCj4?&滤ٛ^9ÍAc*)I$l.ִw~5+ûYړ=GgQEݒHlA/޼/iZ;:]}EwtʞMm n:M1Y8ɡ,TY k7²|fcj> +#'薹0ztY@h&3ӓ k6.|kJ`j'S[* 2cXGIW2Ù6yb=3J\sDgw_"~az¸F?nRZurXsCMS6iְ>.liy FPH6"`O[H}\ER#F/,=Q'G·ڰWx\TOg3ln|kyoL0o28CP[/Xђ7Pyk,0inS7qDrbw~e-.e_ Bt×\`ېq.T49|60Q&ҍ͠2[#!F&PSS\VS"̵ !&9%97L zE|=!n:xb').90Cs0[kpg\K4[\g-!#Q\. 6)և7&i=:LG :<~rgJtA-%y =ޑfE_}6=)GTt'jSҐ  ,ǫ+oO:C[' ;U,U]ؿf3EUтK<&S!X0z"2:#U6Rf'*ӑFVS^_S"pĘ)r`5hOs^po-/.4fQm `s [Kˊ 1ؓ#̼!:Iޤ\0ZEL9cC)OT䊷L G|c8hk2s@ ~/˶ph[l=" j=a4͞uҔq;#q//Ʃ}:ƆF$WʻKo12D DQ! K=n:p5Gs lلN|7Q5_ҨγsKՒ1Qsu,O_6 6g56gR\ I:kʯ"JJ$9A $dyGqP7E =pA]gzyo/#Fտ-̍-ix? CqEi-% Tk晸Ytn|- 1Mtb|ҋX>4 5`}.F%UE:Ή-ao6&zH|eYU`Ώu֧HeW]o(xs7PAu1 9uOVc_o.~RE`9% FxVdV>8VmڒG eBC{RB+t $ՈO?W"|c؆O2 GЦ]?cɩGNPݖ26K :HRtl!mZo-~.5ɻ.D9]9zJ =9ɡ?Ͼ#Fzwwe*HLkΈzmE(^C4=o<#.ܥrKT&h>-}>GU{>TSqРaՠy<bmNu̴˨e,ב+g4zBЊ!rtIOhcdkKfleѰs#rqY 4EdT(V#Ym]XInda,J| -:MC*<_i)r4lLoNG8 Y歐Wpbxn:!vcR#S<',O+(Xh墴R@(3Q* ]~[VOΟC2{4IFY& RPRiS&sC*ӓгbF,"p-3F3W1"]ve^󡗴{5ϢsL9f-=_b+G .QZZTF[:ڊ%Y6J{…j#F ZҾ:Nϡ*%|ZQ)@ sVM];;'Z;PXvrC2S)qL?Z,Xu; ( @1:_dTE,zoZP??*vhh =4#yӑY1/fMFbhYc=שGt`YkoK: f |Os܅\%eG5:>()#ɹq@奩m%ՙN$қ85hO屽0"Pg]}j H`RoazΛ|IAZLT(P4? "G1zSW]deXʇik2[u>֗9Y{c\^WJ5*_t:e*)^[.˴-OȮD^I$$wt~{dFv"o*ֵ)<4 Vcm⿏sÌb@[6Гޯq kQw`ΘG.٧ȬH 66̒$mW1_Alc[L-l /LC3U uwk6Q>)tɹbߒ,H} P{ ]dž}D;l@44r;3L čq( eT&9 <-$@tv!e%Ba]+$0e yeW_PW.#{[d~VI{zx'F) N߳>"@Jy7 R z^Re`AchX2JTZAc< 'G1r$&* glst60KaN ڎtf%4Gn2jgJ^l3F`]QO!7U(at\qo0Cbd`宬zS@j|O@<ԜpM2NA&0fsg֩Hӊ>Z] G6Ky_\܈z~hOFS!.x?`i bk;{Ą Fs)WYg @;`2Ĉbrՙk `ŹZݾ̈E=wv U&{a8k(T| țQR_KhxMdrvt(sT_Dh3|(Ug $} $[,h 9_G]T'$[ z u,.Zˣ&Vjr/A,H,UϾuҎEyrCm*@H~F:L9]K^Ҥ!55:~!Sxm͸N1?=_Гy"S?mGaґ7WFn$:^ތEA{s@jPV!L+1 ɳ @)iG aq5MXR W.oA6,cCQ*l δz R3nnH&E?gi 53D6v4Y[>NW5C8xY޸{1 ao ]=hQ漻NFF<2{v RA9gT3‰ m%+ye;(ZXrX)'-BY@nkX1h7ԲZ Sr(^^W*_6uݣCV 3Qhtx/,\'!ס0;t8&yT]̥Vh?$.]Umif>_:x=5cM+,紴FiiZ ¯c}NelUJJq1LV]kt !Ҍ;$l@jg_5>DMK-.vT}mG:YKUUv &=d+6eꯝ}=n hw[cq">1q ",8PYE|%XYY#cm58\L,X9-x. -ޙ.M} w e>0 uztn;Ѐ08˙@x[|dI%?iQs``:٘ 4hn;Q\Fں/YjT"/.>Qpk$t Lj\XeL"?RVl*&=n- $MPSSE3PZKWFD ֹvdBq&Oxso:AԘ()n\ ‚h710/^1mQR{,}†⁸FcӲZI#>ry=ep/Oe8lS*5]J ћYMj|ޣ(ܧH Pd_ mȳHnAb=y;7ʺ 7(6ek\aX0۸tmnWNHc<|/GtTBSqP ʞWCqr'Y{2cw(] cک z#9 %~:)HPOc82 LNcÇ1 1(V)filIDܿQӦZmܫq7}JlgO { BK#X4ia\%A}cs @jVX<$س;6b@3s_4q"Q~]PA|0}Lžxr*ysPhA U㭊Zܸ[eq[!D4S^gG@6O |`n-)evg+#_)-BXTթVn՛1ݽg\ry !LWi1g/9 /(}F\pa8$l/p^d y///HMь{x` Ps%߄fT'L-q|Y?׼Ixhw W]ޟCJ&r֔R9@ SuJa{(Eu}|^-̷XQUGMzfgE@6N (d,ByKB!R:#J.گg(;,}^c9l.IśHB8WLv$"1%:DCVa/Hxgm% z)cSz'ۍCȸ*݊d$vC9v.ԞҹU5>Dҗ1i8/Xί)NmeC $歂.(!6p1l[T)YrUz4ߡi:i[.ɱ3!syIcȎG!Ղp8 ,QG# KwbL/)t(<-.yCVPeglja3?^U!ub'.OڢyKI쭕4V\ ff kŸְTyƛl_iZő^`zig?g$bX&Yy}#EnZx`s9) z1J\?2DfD2K ћ: ʌVލ>3|(طHPssww`eV[}z`[[^ CbJR\)ͨAs |qsx( i0K<[q=H ̾ mQ-W FH ںi練-1sYsGg1,Xan :Y}tN v$8pɉ/%KtAه},%5ޝFw{aysTQ}3®L&<(pIs #o^i83UGOslaM«}J8CFy h6vFoH2XnZ9bىkB;`.z)Is,y G9j AO8" @ ''l_BS|Z5}pY 6TT;\@S ,~N'#kƴuG~.c^W!iw:R`Ȉ; 4Ϛ5$nBd4H:J/ -egYERB(I-ڢHR9͟bU&ݸҌܚ*hj 2L\鬇Ȝ4zI+[sؐk<6lyS@46L&';sl4DD8X‘$[3sm{Gp[|}>qo_Su9[ xk~7^=$% :h($Q9^7] i+rk%$/ ܖᨉfˉ:e[ڦop.yI)4Rc3 s" *>t_S5+;,c7l_T[M2@+6n_ir X$?^e ~%tݖiPAlnan} w5M=l*lh_!t[F+c$4@frPj:6Df3Pr$f~r IhJD׸QrvEG3 6ݠg\t 3܋#*x"3hF0vtaT<v*8Cixx[Lq>7'x.H  ^ԌA$OC9i ^(6˹(ԕ@Sc;*-ǤZ{}+cHD\Iq0[)+u}wV4Iع2LE3oLCA ђz'B '`z,4Kes8;A}Sg@7Qpl7;D,uiC{UaAy3RAy \/Z_b̎x^-E (AVbn zVمOGjR*WQZ,v91o ۇcAMyT¨Pc婮1 JM5C=Y%~1By ͻ1鑔~MKEP`~/ݸ]Rc7˜zw@PRsa ٿJ8$Hj>Ƨ!,:NeX$B&მI<=g"MCݾ /Iux/AqR3(+rXUEN(C1Lp?ibIC xC@z*̸o4ʕIeF΋ZT*<@d!9i2z`Әе89?Ā_FكT$`_pz }8Ў:|UQY,Ћv4:_gP+˽ @dlw7dy[Ty]jN [' lλD~hP5״Mn 4_AyǺV`^9a!#Y9A{`35C, ӈETNŢ\=T6pQqj._J-]sќk P|MpmXjQazV[b IQ"2 P롫px$: f^돀9o[! 3"@'q0J&n7z?F(lR\2\8v,HNQ(7c 4 եj ~uT Op)? @ b$X:b)ZJjp$ 1cJK/k26Sy~z ['7U{8i2ORsW2 fBk)W(EkC砪8Z3C#|xЕwMŸ)3}@߳3T1,8}w8{K u~}D"'Tem0ĭbGn'Lm^f:{hě .TX]ӾwM#>h'd"DRmy%ĶЌs?KanBXPvT H nf1-.ꖵ &&ܺ?A&i : dK&o`vY ,'CF \'WuN?uIѐ4l_0sYQ٨FW;Ws@+[Fl³E\*"Fw-C3 @@!D6̽7{Dd -~ޣA Ց?0x|`oz!EKwpZVᦛ`{tAe-:4+jGhyW60⵰4`^'VwO>XH !*-C'Yɡ)>#N'$ysQdޠXQwykduDiw@hEb(6q&hVh8-Ta_oQjRE"u}H'ZO?ԋt!Uş#ďVfPu2ö>eQw=.SRhdT#f˛%+Mr$)(i|ΟC|ξCi3בXUjo^!-2!#>J^3lDI4(i_ O\g_UcQAn/&ۃ,59%sD-Hbz OPzF6>my DU`B)zA'JE:➲%Ė#Q73h?$xF`JFm1pǺ7a^_W,֪8 ߵ[%**eMr2 *G 4>ۨ,.j8B% ]{ֈMέ|G(jM.i`'dtLs#)e;d"崣[(>-'A2L4 eFM T,[~O,2EdDPܤ |D0gD{`0H$=N<96,Gۄ*A4b}B @1c9SU 7\OWN*Q.#} x>@5k;DÿǠpS`]zai׼ViR!9I:O0}Sd*K~FÞ-E[oVx0 CNǽV]8>?7_\ Gu_9"tWFD2}rz w^tEzGHQ0~smF{j@!`g=K8n0V{@ >t59$qjB͒of @C"T/xYon=hoʘ;Dީ߾uC ޤ]z,8`a~!!I%VhfAOp'*SSrR1ښ@EmD_!gtb\\0v*ƒnج] X3&=(v']FsT7ŬJS4MQ0j3MjLp1OC@p}`R6`TiAMDGhwɩ Mzx/nlڴ-eˀRP %sKm&'eYkл-O)$9v cP`XiJ ]L0G'ulFOCq W5+@[So\OVX 9ddNjilգl-"]3yVV!ml/tX\@3ϣʫsԄ&]鐷x\;Kh lC{%Ɋ.<0Wr^ϠK4. *E\dȌ``q]Dy%l }`Uuw(2zM;PNwh-_Q2(jQ!MMmr7y Ǔ&='d/'d o-h{ۣ"#lR:+ɘ >¡dž#7<h᠜ZZ ]GY/qJ'HX8RVՁƝSfB'(@[kb"hpIt bJcȣDDO/I^Q2BՁz”62DwZ|YlL&-m y1n(7y[VRaF[ B9IAJ|ů]e^>-ڄJK7yV67ѵِU Zw:>P|{ơ#EXFYa[jd!kCR+u-hZVͬ&K`_/dRʦK S|($@l6  q.wf]we'.ism-ef1{B#f`A]rfſo.5gʰZԫ!A0(`ֽ>^̼1Kwpql,zزdӺJoD;+7(=,4Y@_ 1SH>̐Ga>rt !=P͎Dھ/ec?)]G6ϡ,lEQ盽#M=lAIdY!syMC;N^T7L7S+ C~ Tmp9ij{jeGNY06$w ouQW* $_;?WΒ([giP=>Pht?,Sv{0yy*qb k `zr>m+A7mI<(.}4ѡXѽW 7Ca#V@$£ZD7qL^E LS18Pw̠̲mh3!b=$s(0BVRa5!~B'bs.F.Iov_l:BU{ѺJM˨L L؍/ +Ĭ)q%T8aӿ$oc 6ّp/Seq:a6’P|oq)_+tS;a%&ܥ!YQm+&33<_NBƗ 0Zv8ۘk @`ҩ4+[hpJ*}fA_XadUؙU~ϰOY~.0X՗+F{rU>OiPn;y&Nj2 8N B]_4URȁƛT೟$G^J]6]U{r=Β\SuR\5fsOx*\+l!eN&\R]V[Ka3̌`vT|Y26Oxt<'e?t!>[q6*P.`ck|&G$%W4@g.ˉ2N5U*pWISA"9I/V+"Őmlod`71SukMZ'R,ez;Xu+:!ZӴ_`4ЃN>U>T+b8\( 6׏=9*wq4_U-k'DYPƌjCѨeǼ΃1$@Dw]ţύ7}Na\ f0=.wHx]w?З>\[.ז;-mRX6)]as't_߇g6.$TА*Ut'bUNO⬾# >]s.u_>@kO!+ۡϡe̥V|YUIj/֪iϷPOIl]%(]_.o,|9jy6G?;h]W}KzѢ1Đy3GpדhorK+@j}ة;;[ڿ;DEW]YM\oC + S.}Xir:?då>gRI=\Moykx.5kù=e麅0kcKvfAfn/N2@>-j!CUVn9>V, _KI}*u1<%Vo;g*=n(:pY%&6ILaW/$f엣Q<<ۃr 9z0g /״ w.'\iBSik ;wNs@(:/e& VIZK;Bhя UtP_'[%atD'|e,pAHlu4>,sOsdSeqA{MIy=5qweTܫS&QO}iv&)hZ\i{jJhO!`G%TFqXz^Yc^$ 9NoBW8f+r]o?ɹ,kXjjv)ΓIl vo!+Y42 #MQ̀EJx)g_LKr$Y^\O7d Mzu*??y? Q.JY&S5mPctV9ptf?3b"5;n-t@Rc((w8_MVMGޔf䫻MOyw UI&]kmGH]z8.qEZKF*x1˒ZUƄg/b(h{Q>Mƥh9y lBy^ҌWx$MtSb!r_~KjZ77[DǬDZ}2D1+yYx[ x:+>pI9qa+KHm#o+~x΍ct͐`(i,&<,k$_g/<`eBmQ PB$M VI o> (5CCqh[ oo4$`~>. K):KvCO r`4Z(me5RhO~8l]\nj73 7t?96'7ɧk&^ϖ4|\,H~VjWylƨPڮ`;v½J}.f%oV!@/äu >qKF!VZdUg3@B*+5~B3ia)M <]g#J4 ZgxOL : K|Ar+c5:H+̫+xfJ-v|HV& g}KwOCl`=#W^(zPGPY@IIS'4zC v(5UF]- oa|}1bLD)RQT_T^{QfaPdxL(CVg-fcȏwvEUY1KMðW )zm'In3^m<\vۻ.FqY WjD$@:~g|p()g|5m9a l޷!7!uGzMt#qJ:cS괔B/""^|u ^Kq}$|v :&;Ov9"raJnӆ2G{B`ȿۓ N%ҭ't(Ԯbq&1kӐ(н{bV ԋ aCi۪S''Q+}cYy T&cV jDb,`pn€@tkIcagQ!O3 Bkƒ/04vĮi HH-aˇ\Ƞn/H@ߎJ}&7zynYܥt߿EPGV}e Dv [;kō6Pف\2<+%[`=IDy߬lp);!U"l=dW̔}|ۼl9X[_ə(<V$<ɵHf>wwQ|T,<;KvNh);~Ũ$PYT.B;ڿrt/Tc?lB > [VZ*aJ^J6#$˅ H%M{bi2a")pD}<:ę/J7mRgЙ[`ux;z?E*D8U hs{7fUz N6_\sNZe2)R1Y /ßfr=&zs62O |yG/5cá$d 0xZߒxlW?ʢ}ރ%$ݭ^˜&sm-s.wϸ 4{ gFXv Wi3M-PcեVMbEX,K5nu YQ%$OAX y-@p?hB-_ڍ> !.qĦ돂$WLi`Œlp+xb;엚t^e'}9aىJ/(x?&xi,n"D(s ryaBh쥐2ą~:̟Z̺3as7kO}v0{CfY&v ȪiEԥ~空 vX{w&dk_ܤ}uٿ7'um4H詍u5vBˬ<Q>MO;~GyCm]H5( n, $KMT ,Jd@p*wױǪ&l g`#[\Q ׹οegU{i@1MŀqQI5/0Y gTb.*/S 4[&iz d(mD D6  +J+ыw)1#pZB#LT;~fۚ(_S[\voίXьыص9A.=iX|cRM*dj|-BJ.jɍ XNbl)+{M 6EXRU{clymO~ʶ&ƙTHZGUrvb6|lvmN#ns[N~HLá ۘL4I$ qxYVc?9n3BbQ 3yw#$jG^`ĤMJnyɸݍaM~D~&}4616}G'V@0B(p,2wUf)\#Ith+q01pZƟ0vG/v $_0%V, @ǻ{7&pDS9L[LpC}TwNu6 ,u2>v+)(1`m=Lu`_% TRЪSh)#EѬbWU݊Ew lX Y~,p$+XW(x$Ƹc O!KÓkt=~yLҡ"i_ިOZ_I9}X'.%1:ѤרmG .]˰ .qLG2sN[@ ;m[+y%N-g?VإYˀ 8M FL}ԟ2A7̰WYXeZ]<U+Բ9ܜ X+Ew(V_HB.iK RfPŊ&Gw3@l͋x(cr ms'?@mGf g ]? xR݀(ҪKK , 3vЮ׌x^Cr ~E)4y𳧓g&15VMY:cflG' Zo'SpWy19s_ciJ!"5ɑ^$깓TߋoWIQܿMZDr-fwJŧgAXY֮W%V9DeoL}]yDnȨW*Juuiߑ`e.?C@),싴&@|*)uB0z9Lk  +/- N=w-6Q47\{^ʻ F[!] "Xf "x*XL>mF⥍f<u|Y嵷ax[bc)l8T:;kKGS+N/ĻRGt_7;lT"j->b)Jٖt ׿K8zz=ڦ@a!od Rx]#D@Bql\dsj {e#X-vλDb_A2'2 t9խ9Yzp ʚM-o5ʋĺap,ZX<>b4tF0f-@]5 u5|☉ V|s^*z(εU}J%g]ԺudpQi;Ԗ PIt| {ji|% |!R6$C$Y1M& YX}" b&{kl394U'TC!G~=aO#Aw,Ex>X`(>12ucpܰzϢ Im"xU4)LqF9"gaxFU}^f+Dp&,:aD3QueTk)6rW@-q>5lHIޫ.@t@mD+H_k˾KXä[˴c†5邍~.C$0?0|",3Cv\98aߠnGGNRњ=Jyf(;.De@Sw"ߗ#Xw0= 峛(e^BZYؠĨlT Seu |]<ӵ#=1Φp?fixxv^#5Av͝~ӏ&.el,`-J4xG^?I6+bR3, {!,AT'H8ߟWa`̡SsN[iW瓰?z4Vt{Nl.Pc9_8pWS2m`I=I)0x.\Xغ,0}KD/تyo0 6u|x|@NΦ9CȌp9d;){з)IT4'i2ymӟ:d[򰎅O"W,ga-1N#*[\HPAD bt8aD<>;2_{pI kmgf͢ȤЃ0*^ֱǀqˉ_"{-j|$BHʺxr?$H9NgS_yG j_},A FBߵ(iSG]F @QW_@'9$^S#?LOyk崳 j6a 5鳌)n!&V}UNB90CؼI#,8qRߨY9N{24(WGC``H@+@Ө"}7>ك >hjӚ#Aް΀M觠?=d1<4Dopz߁h+,  bوSy\d:QM_'&[h5Q߄F+/W!  '0B1, [Gk})|Z.$罢j}5EtrX4ffό1Y,@n.,Ŷ1Tݹ'~{ JFUW }(ק1VENh,˗Dׯ "ė0Lߑ,K5|gy~#4Vx#Hy~#CM=bVz|wTc4ބc i* 0j:fZs`2B:FϦ_ W%KnAlV2N'xCM9=o|O2l8 1OL#0d0YZ3{yUA~4Սa Ѐ#nH(LrKKD\NqJ= $*Quqn+gOjH %h-(ւ3k(PӃ,WUfRwPsv@EVq_E=(iro [ͰޒB9OJǏ_W@2c]] ݴdz<* PaJdw`$x bϠGI^ oom͒V/)5r?FÕNGqhm{ 𴩊Zrf㫌}0ĩHèf_taNli˄[g CsG#' n.xOQ(ej0{(gѺq #+wVE#܆76P)3 iCwUGj`byYhsf!!ɫƶū!w(]^ήv۝0g&Hb0ER<6ߡ;I+$ViუKܢ_kDMSsD☥n)f"/kԄZ ϽLgiAV]Վpe5ir(?qNB7jtq['K" :U]͘߄ߺW pzi0aĶ` )A/ߺ!2Oj-j2>}foVV}˸7rX)p4[޳Os@b{,_DC{9Kgi{Ħax8кLjM)Fo9<~\!?8{AiƝ E[V/n^+y0"q dj%-+a g^A!".UʒЇ]ɿĄm{TAi͵j{몈\t<(I-/Y44f$ZOMZx„kq`7eH0kDDjk\qA8pgw̖D ^ޚy .xFBU|joa "r 2' Vl5+:(z! }O΃uX+.Yp (@휯62ǻY@4$ ݑ+z43߰O/N]=G0okDC-[Ձ(If#-ry~5 3ΫI_9wOG^s19@ ːw| a#}XXb\J!Cu.jH\^k"s|/'3fyʺ,Cw Wk·9F"zZNNݗX~7t5 P=> $ .?xK0ip?Mr(Ek}o()Mr5wAݷĹ{(57+6 pJ24m%z | uLs-ǒqT嘜dJS`:$mb>/r̐N-Ӥz~ufjf?  =oY3wéw\P%i{j/aF0SåQ6<@.jR=H_p?Oh\ČaȶڹiP)Nj3'~_G ׃ *aa&^-eȹ|ޠ+Bq+~Ɗ~qk \7_^z il:K>9:"ۡPG5Ǽ/ |C+%YV䟢%[uf^2ՌuQJX b*v^ =iPC{vR.dm1~w g3m`#,`Ъ'PoN3B7T+k)ӫLH8-[n̠?lu#N" \VDM%XU@`o]auz!c;Xz#*xg}0.]!A:m`zC״2lrU3{AR_[,9z@:^A/| 4Eo ݤ G"rf\.Js 2`^$O_.2ߦ|[d0M٨ (Y3Oȼ@;y`Z@{rQ$:DgOkn&bo7ٯ_Շww Wפ]VG=SD925m;6w^1?+Ψ};@eFxr佇s"u U^%68My^w};H2؁5Yyn+J)a!ۣh)JyYwX,~rXØ;<#_5FJ,AU}&!B'Δ.;~z5H1!Ywv u!&;1L*G4z!7EvS"aN0ÉYo4p˘`ۧQ@q4i;#?".ĴHpaI gi]>FuІ hcsF(1 Q3g5&Z9H4ĴmM4Hv|Avs3nu]W'P_˶l[gAƫcNZݤG~+$'(+. N R^u4!<%+PiY²|\RV=Eol";ˁ uWZXIMFjU ]yZ0=]GFޡ#ijJ*6ӗhWuO$PM .̙Ƙ8ոX:ˑHTBGv!]>$SCsꡣE ݇Zk9_F,҈.`6|zT04}o2Oyv:J7?yʷGЬA`bUj,Q!&! 3!Cspa߄r}RrYDENp!g Ci\ךGƤAF_!]s==:v|\ h:]P m% 9ސ84~f k#S,+ȧ9°@'6Y9B/@0qqxɾ$mls={g1B PV'N5}AFqTUR) 8Vc:)t=X֕N QL3^݁B{PpV62wT#RYJi`A[O}6"[:6Z|%s_l0Uu ѦʱcCAyrY/(W+f+\& ac(lu7~."2T~*V?fD%4; -=QѶ]=UvڙZ#控NP ELzW)$3}քu3&%9טFk4:MO}e8]p?S򳁮St1| c3\nU!{ ւ1~2(ÀQry)ql.dhi7蝅tc$n"3cɵ*ʹ8@YhQ4 Gr?!,!)n?榛lB`-_φWk")'=ް]u)H 4|2 w7Aԏ>'8fVaj*}z\xMszLłtQ﵄;4( 3LBg‚SJ$xg_$boH!<%C<ۂ@GUu` QCF8 sߤ+/e_>p\u"<ܩ@`xf!cLozѝDwӿwӪ&fcVqq>,Vp@qQl78RaFM1(TƩ,gxty$hnq&bФT$#=oۀBIk:EmϝVcsMPqQqX9Mۏ -/r| `bun*ޜc^'@_" {`|d8L\N-)^H@J(7'jk{Fk,t!n_& }/ F 'Q&8D |ІL(+3㛖gOFliF/H^e^ 1N3Ojb|/X6%X1k\jH)L` X~6ߟDQ%#Dq8NiŊH"p? IKn3;B*@b{zHB7{i^Q3Wv_Y:53<? (0b}q7̧>lOR^@9gK;hMN`~M|뎵tQbf7ʇ=ˌטLQӎI |XuOт=Zٷ}l!t~Lj^y36/Cv/Ƚ t:Jf}8bJLGب`ky/ sYn!ro7!+.UJ;XoreH,*\U:@#awDE})UN _"p $~yuJJu8>p Te Pt€&? loĆz<[ڿA?Ke Ļ8$|B#ê2z$7#G&D>?]a bPD6yqn!ir;jCb ԛSaj#EhȽTX'4~j5pep?"z]%IS KK%jàOa,/!3f0 2nN KPrT`X5{ҕ㯊dPt;TpH#~/Ѯ`6<"Pyc>Uzq2P@݄ LfS &LG1c]UǶ$|=pWʸ1"u0Ɍ[I_5@@ʝ>X? c砧'p54G_B]Slkhљs>xd˧#69z+N"pUVArY::'GmIs8{~Ax.&̱Dls&#kk0rx$y2+tŝ$#1^]gHHAh=֖}`'魙0h~^[=)Lp::̷ WdUVZ!ˋ@$`g0&".ŋ*N-Bs@*%{d;VCСklsEо]9Chʚ A4I?Ӟ3`WF&zRgsAcC?6qig% i'Yfq`L;* õ!9hѩV4`B4%VPC`>h&`NiȒJ`S]+#X{[Qc4wl*Ԩ.Ũ`)D)+ɑF g-Sx^b8'\Snx9/O[lӍp;a{aXg:/jA24fcY8E" K=>Fg,l;x[1U7C[[4ȹ=jԨcw:gȉPIs=˟:fц l?RCz2)wew(f?dDq鏈#t9:!֑n'H30_c!0YBAC0С/:¨}$rs+n ϑO`N~yl"Zȷy:q;^`V]Tlu_rT0wVaWeRs*Q\,pGGۗϯqZS6ðLU fxIZhbQ/r̟*z ϫ >|hclM@L "(#iTY@@kt鶈=B9 GJ/򀥢EP|9q5OET\0~s3}sF* L<1*f30awBz/H8[Mv7P">buYHru\ P~)l2V'f J#rP}yؿtL1ۗzFM24`8f`A*ԈJ]fBK f- w.8vu&!YQa&~6r5EG@l(ƣH'F?ܢGz,y'؀]t-q6H]绖B)h(Z؈_(Jp$iR,!mMxN]C_h,*>~FJ*|Ɵ{X6T?T( cR݈ǃ+UhLRo[R03g1Mn.J@=[V~cx,'k؛G^NI./9ו[ D84Ee8+O})d1Y$x.85uִ挚9u%Dz`몚 {O]ESLKeMnt~& \3QjT(9<%DQ\ *+(@mnw~R!iOya ~H|Y7R猫ƞd$):flRW*a0]aIІ*ht*S L}~Z a[.ˌڜk8/!ŏahBÇeg r\V֚b1H[wJѓN|Wa!\+R9wvI eht:}Q4*kEU8پ,-; -lFxlr[W6>{oQzƳM7.B=kdu< QXcZ8#ǜ%" '+4K#?-Rk¡³n]% S m`kŵuqmPg5Mo /JcFTghhy(`s9 弛-^ݳ ~SH V (^\ i$Lxۋ`&PcP2T_>7˰d]c~O,&ЧI32a#)nkt ]ՅkAdXm^yc#?Pa_eveЮvH '+o~ʌN/R/ / [  3,_wEwt-$(!̋[͠Ɗo ffb ڥeAIqƄQVnՇѵt3ix`Û=rvQ\-˅;[ z$ 3D2zkv ,Mq!}1-fWecMM4Pfڟ+`{oRgN!CwX^lm%KŬ5 cgp\M PowIgTlK`# ?=m(Lbo`$QnoןfRؼ2.Ey]v >sxFz'&QkϻU |g|gRkQu%ѧ-muĕ< 0?"xo^Mlzl獤ӽ+l~=}H۳>|RW*+ œ $*:G jGz)OJl1 ;FṪ]BuՅ.~ yfH$cOV֬6Ұ̯(LJQrlq7%F,CFɳYIryz3z <@b+5~ZhHedE-б.ć?z«0p$<)rE-鰟UB56P^T!gidM*+MXP=,h^Z!-8qDkkYqt؟nJK^?qTx,ڕM,AHgcUݞ)nm|M;5)RO`+2Em~d#gQ"b?&w  bZRބ+/V~s!]Ce#aVΪǍR;PyRT\tܵSwCxEiO-@Gز$,+IGgF3jC(\lQ1{NAjN9,)! t"i![\.ݜ9uq/ 悉I3vkr\ ghc]F{gD&E7]$Cr 2xSnH<0>iI':;Q&Etx짆=?:iE=k%- nx|B[ma |KQ/ʧu%ap,ێyJOn>]4!ge7ϣ8#7Aot }b{`j4~}Y;tGmAGp`؅`GHjҁr,XduE~ 2bIn~^&c}toT΅suK:eu`K W2Nh}tx~cޣn`HIƪ}/#^".mu0Q#XфiÂ˿/{[VGewaANq~L^VhotYl $_f2k[4BWSыȗLehʟؕƵ&fD}YT> nS/j$S?a7ް+מ@*K%rI/M/=,17\Qt"yrnzπ`cLqA͓e|s,MQ6Iſ]u=AmjSXќ gJCY A> yѮE˱X}(Ɔ'|omyHWA &]+ Z2Hf$gn)!25þx""İsM^zb@΋K /6'!( ~HUä+T%c=MtVO;e"{UK7Ѿ̭;h&}|*S7e\\+]ܖ5\hG0h{ hI Sqj8 \KeM!>R އ I .ܹ#lZ{8_ה\ W|#|NcA]=w}]Qru-1[G26p3}~[~@qb-D4tT *>:W|NBNA?huWED pk>;V4ҋO Vm))gB=zکQOXλ/([؞튁8P4Kl̤ݾa\𸙟:EoW@XH:UԺ#߾T=䞫 26 ɾ=گܶL\|KXT#߼&T I T8AY&pCusL/,Lnk\ mg^>NiB3SB k-j8(ꅱ1Ost<ʮׅڃeKgLW*ڸa^р>6v~k%6Qr'Cߛ5 йOA% >t~4cBJ+ނJmQ;N)?Z" G h ͮ 7B +h/Da.LXLV~49Gl&[XfCGA(z}N-JI-OiRGK5GƭPø:ޏ[3&W̢Ln!^je鹄*%DG}SU J48 G8 K=- ;o>m(APJY"nڸY)(cK|4%u3k#I7 є,BU(F2Ѹo:xI582U3nQ-c"Bt[>PUA2`G=xVZ2V@#Yzi^,b [365YZx[!i W:iH? $1+W 59QdU6x$CnӸc;ݤxzhBi!. d4:L#xn1|cݰDyep \J5y%|P+VZdam3! a^]3ڑݠoUs_sb` +*{`&T l 5 9"pjU@2*,}W%oa]&m05}ulPI-&\A>TWi6(uQp_ y3k!CM/CPm Sr:;qRG^ŖG9V^9$\CCz&E>d|)xlZPLN-@ZY:JhYnp(n&j9 e7e`KDT*H~{ .$ :T9;0@hhm1%E`KKf^C 0<ڲL̺DjYS]mV*o&2\uj .`@(J@*1Rh*oڀXNgZdDb^eߌ<@\-QH?&hz~p" @a ቞slɲi.RE)/>99*'a~0O8 *+ 6)5[0XX}/0J04c{w߮czM3(6D<lf%?hɜ~]`#.gssti)5_q; D"X-`?mttEݯ{ Q*58-{<6g1= 8m7vݜa-ɐQ<[L迖=l9?LVï"T⇱?6pz[d*b!Qrk&LV<+ԪhL{x}P@tG0}F[kúwUjWkRD6UfUm|\n T4z&~(+nD=u3rЊ- q0dMnRmnQƯO9ӈzD52҈XFv.ua~~ଷGae@`+ ? }7^Ā֤fG`͋ddEujKU.(܍纒+V G'i#[Z/#9rAGы)9hB"SֈM2d*{,) vSǂMT;JLl1gF5C5jcҘӦdX䴷Mnej M4 G$"K6߰:;2SZu]t;g}^G}X bVY`kI/@D&khןg$cz?Ʒ$/ܾI<+\}eUVlD{mw~ͺQP1}6vIw i_ v95^ Iwȗ[Ns{&Xpn+U3-kr! \KO2d!XKҍNyJ(ێW-F;)2D\隒d%&YP(vթҤļ*:$?1`c:٦ ..}vY9MVۓÞ/6Ou"Bc-@؏D%Ύ7 6T8ïÙVɞIsRi[U>?AUE+ےR tY->`>ŎY*߫T6Rlcov/~4No#X!FdJo}WQ !U-$/UcmIN`M>\ - m( ]{,~ѹ%6m[VHYLKNXp)zW8Sm]'O g'O=4 wV&/pM^u]IB)f?k1il * BhsKԿ;jwn i"B4 dbQ˸&W1Q=AG9uJw@PC=id:V\m;aGK[U)Y/Ͱ=SᎯ+t{Ӈ]$d&33{(?,8luZwuN}&N#ȿB.2EZYu2czÚX>&^`*D ~FENƟkcY^8E ֺ:YR_ǶG * HEdlj l2&d~n-p"*A*W?8#`UJ ܰ`\RU,0C8$o205F>W@Ս!+-h@oXw1`xn}Ʒ]`H<"@IE%9[*.9%%mۇSmhy׆ L 5_$s{Q6EXaFUV cvVU؋Δ?)d˖6 n ̀9E"5 jH޹{Ӷ?\} E83$EsOi^x{sCB֚꽍QJq*&U|Fɛ`*x{e50dU 򙥺rzԌ;"N><$i<bm/_7!]vb =g>3؀̉6WjdHqé7 λ~,cGWS\rO7w=g(Rcծb8rp#G>l-9f=vuGoloCLڀarQR=F.*3jCz[%(nEgBqfӊ{dƍoKijOމOdCi Y+~R15]ءyOr\Ԑ/.b Z;u){6:MWoLlٚh:e/Hpiq2&˿!%d=xa렾7q#GG`{%xָ }pYz-4 nhϳ=}BvɾKe`3o 6OPc=.L74zF<}WTz?x\X~^_N[Ȝʳ&N%?;O&K߉smRq"5aUI8s8ڱFĴ۰qWCj0i^-Zqra-Rf)fHEj0+SHuT*nMn³h!ӷ$\Ie{hW !6N%0c#y}][; z6*lѤe f|nlVNA(Gfܹ 2?K ]\n-caڍz)&$Xc!j wu"!˟=SA`+sTT򨨴tbsVSP=d{D5tK4烣  `EhS}SKa*Pu}6H>ҵmǐѯ'&];cgڗ% d9[jS"yf͌-Kqw*)i er'vi/xW w4EKZCkݲZkĤW=YZY,rr':}%NMok_`3ݖ߭0Jgǒm\ny8n ;b]:zP|ҙRw6p7cT:%n{p,eC ķP<^Ŀ *5ݟX"y' O}+V"X;iL:Yj{ZwDZHXMn =P,Pرc ^Odž;nTgq x+VNCF!ίfm'?^p2Uy?%2&$=rx} #9::qQīJrBrxg!,OeN64Qڊ2"TƱAgV%E<GND,r}dv˾="^S_]@6=qg23~~5ʊbmX3yP'+D9e*K`^C*lG%IL{>}+ W-~]p.!Xhwu/XkFY5u4NU xк,I} dIl}!Wj1CYo  /w 4<ߓpOc ҕV/l~+[ !FG" +{ڽ{}!1Vʬsx82m7?9F(RoǗTc,&@y(ATHd).{8whWlQ hāO`-'" 4L hslhít\6µ$_Hr,}Y4X8 Ct:sNZ;V8P @.SE}yf_Gവ݆R5xK5!ά_pfP2>fHiS۹M!>юgZ ǀZzKhS7"6,wB̑b𣇲N=]W[tiKo{{+褪~*zaWv>#<3X(WfH5;%0 [ن VٮV١K6VNf8P6R~rzՁ,n M@u E^ ym^! $Z\Z 4 S$dPr>% | ޾ %n3mrbl V{XV;[uw\C6 )gj>.6:ǁabcO.ykhXuFeTCQ!@ >A,̪4N)j"Ge LN<:xyTZѻ\h>]L49 07_Ctp@U1{~Dd|ᙡSQOU;76ӸAwMfomoY.׭>Vڐ;6&lgifkЮ*zr\9"nlohY :pHط "̘oK1|MZ gd>C(a+4C BgU׏{eŵ+*cC@8,y4P312E_.gh|nܩ8*>Ex20#$ ܹ{"q>nyS8Pz+d yr |خNnu.Jxjl|[`!ɞmEl~ +7=:Zr" X7LN3bTƘ͹Q7V9aF_i2xVgZgcu{jP2ys *2IaD񽼵'4u(buUa z#)3 $@b^=WZ+oKòRlD”tP\ ߌ ]5+ mZweL,3ӪuH|SXW42/5m(Ju[eYTg׭c;.I  oct%s e"u ޾+ D_+c: e9 [0O]>oq,"&TNz0Be#C=50y Q[9Q${~Y|zm(v)x4)_Ch̛֦_(u//U4ƒ;*4\=]l~ /$z^F{RR<2]j.^a?6ޠIŴ]w-5 gU`5_+ͯB7R8l뺼Okiu"#ѴO敽lln0I}AS[ZTY)}7OXc%OSV;2[`S´W5/"67MMzh~ꥰ9(̀PoT7FUO8)aW"+\)jȟSyn8=i7x>B5[ʑQ[|/%wc^㨬]Ϝ%s82%Ζ$K`.Sä7Fmu-Z[[o"_,Q;jr~b׽ ۥ}E$%wKf9E( r) L"~,`XT6 lK0D{Kι*JSP&I'=Lr$, 91- vr0C3m9YTDnw2h%ױNc4G~AM-bS77W>S"58b lJٙΫL~vUbփUS>(zG(Yl \'Ğ@v[ ǽtËFsZeLAOU5m]LuL`Y0[%D!/oo?eZP<<|"J&y20T%TI`C z ,9u$xRNn6rIP0L"1k- .2P4| H!gfB1J5+Zkb))6\dRLJ*R^z‘r-,vN v=5ZթxjhG,9~rb{kAb]h } J+!}rm*9 6fހ1x]GϿK 2h9ݼVB'J٨u_1 C8c+T,}^#0.?"NyiOLG4'@q&+4jh[{-aQ\qd(;*==HBʗGlSԍ!{Pq`TAn`e,;7%!)r`yHdaG ]dD"}Lޛܭ*lF*Y.0a'Fl;z> Umts`˪DwN3U6xIvVN+:WyCNP\YQԈJFij< rzz֯XbZ[!Wo*ZI2)&)03ZOeБ |i}TBй+mL vi'^q%h=G'ބp0gZŴA✣ph( BzA S2x`=|t,l{נˏѮ 1.>F$<s%sb)D/؋ks+$,M; M3t.K$N4#FbpfA%܎̆QRybnxyX {@^bpS?l> Fts as}D+ذg'e0{ .D,x0+t+,p ~ʴX/ .JGR~sytY8pBPqҀjU-M_?{ΐ3lmD\7`>5Ġ ÁfEj]xiI(_P!/q%r}1LP銀zq|e r |2(4fsbhd_|p]+bXݰADzzSB …iU OSʜY~ At}ީ7k AiW K&N;|FtY\5ts̷AI&ҞFZTDzP%D'^Tؾ@ D~c \O9'*Tዒ0_%zs* $Oy5>'qٓ:˂fKsfCѥ~)?}[w 5Sߏn3j ju7@%#|[[S*~έKc?m(EHOb{16z ~tj:f5./Tp,Ԍs(»i@9ˌ4٢|"b FzXrݼ-=?rcT gXIYF]fo5Umdžp55mpIn2 2o$n-xaEx{M0 T|g;Š{OY=o~nf8S }-̞oJoK\?!E{&! IJD 3A]u y}a7M'9$(Œd/[]6  w9@c*p9A.lv님GR,bfu` J& 6* AU_$ɱN͏ڛ40U񳋓*Yt!it 3`{v1W#ۀ!GÀ]E9\=XFGί쪝.=tHd%dʂm&牳< ZćxmѸ\ hDž аA=Rj+iu[mxYKPNҫC`ͥ0z '?5^9˓A[Emn> .e^: KP\k+3򄎄T jw#\VdRKQsCݥkŇK\O&R;]ɔ;VS*¾j1PO/9E H ƕ͓vȨ70:" %]ϣO-)Lj`VCC-bY'zbX yG.5\b1l7ICtYDE .GHvؠǼD^JUEkUy?ڌ"QZ:eӓ_~1N4_lsי"Aɶͭ(js%^Fl\k͆aѥƻvjf+1+ Lꚼ[>@J.2uthg&-"]XF:U4⬶.2e+/i&ʞJ[>xKPLx"l|;caEOp K;{T?%2 :.@3lQUsk+~$:vZ(윓06&V 6!} BG4ʧz$!j®}&_bsׇ~ZW;PqBXn*QZ*ǸbQpgc9ӿs&s<M[)cdž`Pz6-4$֞? ɞɿ7sQ+\/8n#.rӑ7DdVS /t#Ȭ{g;"ps'|-;7}Z}̀j𹅭2LWtT_R<2ԲL׊5qq 0^w~}FuXdGc9Q\|ܜF2 Ô֬ '?yUSGwbx> vF8SP YZ);0].]zU=E)  {vXfKT_X1j}-*~H/vC_7HğlqfU㡿-ZK$P-g-dZ:~ۮR@ab6e Xn#y#[\.lȫ#BN fM8)&g[+w$eL=?%}lA%u[@lѲ+eZTnϙ ep'=r-!KK%㩓U3;J* ^hA㬯{3r A \fz*W^t?R#h8"?N0q#6-V"&6 k C^|ɶH<>eE@ }8Bĸ.l?X OqPM] tOMf\-eDڽO#{53 xj2@ц5LYLmaOJgl{z ma_D9 ]"88)m\՜k߾~7KSi"&d+-Zœ\2 MDb7QEqULfD{"Ald3^шi|R$+dy4ׯ;~`s he0n޺l0Ye8_ns֚ܫVbu@IGsUFXt㰫>G8 V28bY.\l&$4D8BehnWKC SVD)]|Ltw{|U&2}vsvǩ>zMD=;T]fU![HR4_V{#Aa3a\)3K)W!hq쓛>4ѻWonaH. s Bh5ݪpz*)x1ndϴׂJr6%Y )Z5'ISCo>d9&@ 0iu'Qs-yG 6+o sw/3uKBDqM'czw}毖ƪ{9G∪f'_x瓂/I'X%G43[ub0 jWċ@;X$NZA'/ET0X#rJʼ`rQchesK L/M,0Ht.;T|H͸8`nr=~IqdOe{N#pI- bbK*E ׆o_,Gi:|5lrWnh OiF&b/Z#S{e[XmzC.؁y]B d,qʰTTe^w[u5D,G+2z:<ȥІ%S|n7 $( @4Em IOLSI)qAXlčGk@R9{v8m\H+yv(͙L9O8o贑lOpBŦ7xgw2~@h|ْo9*$Ӿa` EUm}8GŒ;[P<jt "yTsfoz?`ώu  =گy\ )Xc`9mE^?m‹$^W5hmG7@/l,tGYAZH0ЯI?EHETF#lds.9p-?إŹ+Ccc Mڙ Me{B;<&:$݆$UA:GY֥zOF6n|u5ݥĩ|LQ:o_&8e=&+Nl%bvZ˖:=kSЧX(9_AF2hM}hfR+儏Vؖy-uј-׋_0f2L6$l^ے"VtKыKr4Iy `yŦ'c1W"<,]I/nuu1it7 a?f%,yk>vzX5~iwܣqFvcܟ%!$nq3Q5@+)R8 /Ap 7?-lR~u(\܄S ?W^(rz[L=6)u]RO{*Y5jeQӗ^\3fh5:$kXPו7fRRޚčqN##Ax;\;.HE^P\(l ?yA)N`Vқ_1u{͐ ^,0 ǥX*$[挈Ou3`1f᚛+{u)ֻfv`h y(N+1}'x@=zj4qơ$pXjʆo,?`\X>9 j#x{}zS$=FPu<"ە hmkI $f]ۭ X} p &ZvM'<wd9pBa)) @:,Ag~|u*z o&5+9<Go޺L%Gxh.e證8mybkmNʋAo7pz e[[&aWwTmݘovK،gD($t*T[mO'h/Zj[̎F @S`=`E>Bb$2V*֘\'L=zS(A^4tЃ[O)p"7bvRhOE(x0+q4[uåkEAՄ3T'5:>ΌKݗgSIkMcʸ+,tWѻ sb<~S`aFw] b ?w ^.*=0 ȩ\\ =}ZۑW?o_(iHxF{lOr&eqB mk\F09v) ) OLl)YWAYw:%8эֈN2<,^ P]b[6ߟmAZ0ߒބ(D;6 SL$P/(Db+n")4 =enCnA`c;92 ̥Øj6`vCӣN/ ?ijhV$mv ;2grTI |Dtiӵ )L~sԠA>Ju㇄78?VFPDܨk3fVŭIڈT$F":H5y;ޜT|-d,1[ۘV0X[/rL?Hb2J )%h& V1*D'Ma>ʤЯMm,ApjƞpzۀܹifrnE=WId6k]RYWi`߹TP<nw%3¶rtׁ/XJE0@®Om{>wE=dwc{cTĿ*#.a-[޳S4(f鶗g|.9m(}˫KRÔr4G%J/*Y~`8g.s72.r+ LJ3INzElOCT!F[gwSN)։DLD˦Hv,-; ܻ~q3dQZ+^ƃ[a9`H߉*y{, )q_ T{yan0J WG5 عNNb50J a VUr[!Ex1|)SY?b-%_'owU̝xMD:kz ԇSSt>0Mf^ u-EzYopΏHIJqwi%d%6s<y 6ap\Q,0ۥ`d{R%n$'< &'lޠLj]tVհwxVQin/ 2 Ig r6u˅m 98 P1D>m咹.ZkiGiRԞ! bI%)P#<_dǤV2W%D|7oX &X^mv7X-&s/ XaVLlJiJVƭXU_*8B/4!Nr[j3^9µõ!y  0-`d$%}i|Q"ށ}vqOH(  <*D.nvA#V9_]v Y4E{es<;7aW(x(j3v֞{XWa)Vp]ߜ]zro#dlQ 3ev'x=}m<\I.SXT {>`1YQ :OcVn pci3zSkmd°Mb6,i+w&|HbmHFrЙ|)*AiI&eR"m`yh ATgxT6f$$s]KB RBDGzwHnwNxA~ϹfiDeWvvl_ˏtI%F A6[tMŌ2반ۇ(puFBi1W;{ATE_jatì)C("#B܊nL*+ R̤RKNtSC.}A˞WNSjAVx&u@ݡ+Ԙ uPtSoJ7y!  d-C:ō2y5$10;Ӎ9;清nZ1A<\uϙb -Ofa%fomPmӴ"ҋbh83;6)nF l;JOUZ!9 "Ef-Eɶ- k FfBJꋫS0XuWޱ`3k)p u,^0ˏVی_ht \=a}1]e~}[YқpӅTݗ`4 s+ 2?$=Lch /.ʵɆϐW|˸"Qj*àmWTSLY)3 !f!i&Ɓ`lC Gu=QAFc{9QP 2@63ƱE8'&逰7߸iI=);"h4:r H=m* üR^4νE8*Qĕu!4$7O>{#KGۚGut^)ulf7zj+?R1~Z$fz.tus]7fyKZ\!ְfy;ljZZfֽ̠)L^wmJ f՝~X0Eed&0gμZxEK׷t9͠If,? >Ax}?'mb{WrPG&usPA<5Ȍ,ee>8Ee;Ϋv\5'v~@2 }6Yk3_drA`CI5LaMab-i'$7V.gZg-3Ə>6E92YYU"K}ryP0-}c@SʂkMD# p!">*|;9M*H~IK;M@ΟLo 5: p) g$ZaZn1@_٦˜tABc8xaj>& 'T /-JsUAN4>MX3h|Dt&1NwcTp_}* R) 'ٽu5ZU0Lm`T@teAVz] 0(/]\q'C8S*_~7ROz+\Q]G}u踀G}_ּ{ C2I_IWLKLO`VlEsF!?ޡHIJpq~lvGXYᒏKK@Q!˴~C% KrBUI`pa[ f.g27+L=M~' 3LHF~ %$Mg" ef}5{W8􀍟-i.6{o~)#6Bd# "<:܎ۮ%r[s"8 ɏln+1Sh,a,=mҲc1w|[* ,49K͓?yNfM+-U\&珅l}d8 j>L Y׶Vp8ɼ'W~BƄ)HÁa?KQcJZџhYp8nuL|)f2){V$mJM_8j.aV27jo N-^=/=2x6=JfѨտ9 Qس1א\_%fzXf T7H,Dk&O$:1Ò 8bcoe~05N'hpRA!qj̃G+j<Tŋx9/5mb} 1c.0Δ*-+A(A_Mxɢt.)# >iĦ-Dl U}'Wt  ="bR e1#C}iPQ^h9n2ƬrZ:8?bԱcРԋGTA>B^Se0[AzmUB_ϻx|Ҭz!yno{ 3rx%[;xYu& @ ӇB>o/,Q֫M&3)s_Aњ'va!Xݶ< {2x_?*6 fn;K.Z5*@ F偻KEw졌z.L',e[c:Yw|`xe2zEӰ?=I025!4A([Xu »R=~neT+,=UR]޷fҔ` f|jH".~PLQsϦMS L QP>q'׭V/J_׈;IA{=Q6I 3>'"gg\Q;}[^k+,}ݭ27K~nbk[fsvƫ9a|qДU'sSw5)QS.x5 9yz:_/ tz)iy0k.:@Eb[$絘l'B;6u4Aj[\!p>cq3إ-MݣLd:S95}jv~Kl ܱ4uXAs! ڬ=˧y}V @`=ys@jy4a:!O~'c;V3ܩo Tjoaq`nyyD_+xm;g|ëYIs Y'.zo@ÕYAHM<:e5Ӽ 0n"~ cVj`eeqGLdX/ͦtJu[LH?^^KIPp`< m ? "Qd&SlnT@x tLs6VHlm'V> bN wQ)$56d5Jf!U~cQ@QAERom:lCUĂxVx?Po6۸ɚ@AzM6Db[DyKӵtqU6-vgs#ܰb9fRbc\된,fvJX Dq7-(A8;`D(5\=49IO*N޺='~bE׺ %6}=Z0I3cy3^z [nNi;kJI@r?Ǒ?lzS*s]HU q1LUE@V>_ / E'`=HvT:S'z+n] Om'1T;3JǬߘ>*e= [4H>բC_ ^qNEOjyCb&cJϠaoi\ѭnr#ַ14*ndʈ٣Xv;Sܑ #l63pdu<ә@S}WzH ̫2f{tV/V\zC}^>B I7hj}ƪ;i\cW0Ji/ri;py!g8.Fe;?/TWcojZ  h+?S‚vr.Ŧ(`h+ciB&mj,aJ]2:wяi>mC.oY6.Whf$E}(tqPz[X3TS1퉹R_ H÷Y=tҐ(C)zJ|IƩ ;l'W0z7

fNbQ3<0z7聳&"5a_WzlRX9|q 8[!.9ؽ/[ptj5ѸtqԋSBGLgOEKձ ڕsBZ);R =\¢Mjm垏.LOӮ54 潫W(1I|(_8R%`Ԗi~ ubEϴ,Uh<"M h1F]3X''*1/JrG_LbJ‐ܥ6=3![zӰ F c6bNiJk=(ˠ|@t̼|)55a hY_:*7`MD2٠l&챈ZS^;iiݝa-D5&Ԕ|G313椄'Cr^y 3BRg?L\??O"]D7$BX1OX\"'vc\ 2mJCޯ؏GTHfߣy#ֿBf S*C9 qʃALJ{gצbK =Pơ̋2H!)~a3,GGI'JmR뎸"+:nUGXNF ضI8.. Ta h\fkt?3korFuG͆wV{ҏ8ᗝsEݦz aJ"9ئxH}a9tImSY[цW5e- ZZ*L'c@0P 1/V'͸Ľoz=WccEY$9GC5>wdXG.G\X t|EJdAU{o^VQLl 77?/Sjሰ Q֍(4swTpMBL i lwX#Gds=aD;d*>OI.Z* wJn8_3$fR'CC]>_|J0ש?gW|ן_#z\У|4`L6(s ZrFZ>H+G-2O4uox~ݙp,B&< `?X i߬,_# T,Qu$ q^JS{ ->A,IŜo7r|TlM oUg/bmRZ¡M#iО1K8^wHSSӋt4u(ψkwR_HuQR8Ke($uXGD0 $M_f܈)O6|Ki8ԳymN=R;]ӷZ֬iPVStͳ2; QIw(zN"ꊉ9oG}&B!$Ē)"a Fg$DB2{e؜LCqjiưݭu61ucEːcxCdu&1v;ם[k)Iv^0ɐSq>*а5(AGʎ$Ul#F“щNj P8'H#ۛU$z! C~xmZ(/oC$1<߅7O {wW^gp$p4[Nń!rxz<0p#HGHE`>D#{x2ɿr[=Ł=BO@Z%&zlҿ@Ae (ha[VWʂ5QtDPV9=|[ )rcp j@jC}̵"Xmv9T#0_tϲ{ĝOAK1B\~] ^l4:kQ6:=hӥ)^ar6-|//ÈX_)p+&q];OnZɌf`"qq3Iu*;LcFE?X..0T,0VTLb#ܟBVH-UA^hK5dkʉ~ABe x ֏i>\ -h[MJ,*-2)$RZ>M;&Κ~_ cڬnJf%:_ A*1 ֕2G)Ŧ{d }[ r~ȿzQ01aLղkBGއ:`!HD2ʏHΟZgIUPj:mVK_L)3Y1 FEc.Vp;L@xPk35x5Hn㶍تÕ ɂtB4Ȳ Ay!Z+ EFfh幕 FE-Q;JALf:%6 oΩ%\9h+c׆E& O?jȎQRtEnUWu3L$,#֬ܶҸ+o;x@VXKh"1|浤1yaf{f4z$a 9}CӰK`Z+m /iGjP+U ո He O\w0،%kׇrYWu%ic|قDI Mmt|q#G/xa9-rN!I%DQ4`x,:L \YݥAc=Sꄧe"{6>::z>5M>Xu %0pO\yЫʇ6ie0հLy`d8T[H ͝ZcQ'ǪPC+ 댶Bk"#CPm&`z2?W}ӷE2B]r}G⼈cuTkUk.8u-钘RE.GBN+x5չ(Ftr`9œdxMѿ 3v3T7Md?*UKΖne}flP-K`ϵP[XaxCTF*XF'\6`N#Bw< GEU=i9am 9SkBs]RɛI*i%?`gh6̉ W3S;gk5.qng ňh֫PmX¢iP.vh bIZώOi0N;1WE)LoZi Y"`hqҎ'6^Xzn(IY)rn=~8l <1Rӕ(S~'粇xV"<7iMy,\:J@m "&g:I>[[~=WC.`dP`6hRMKŢIv/b .e ٙ=}s7i]Kf.w!~I`mv2C堙@Dt̃[=r4 >JXlW=hh.C[*mb[%G.ȌxͭksO{MDUSh0KdDڻX*]g@ǎİ2=1@(_9UГݞmIrgI;%/Խ,1h>C)l<0D4?]ų4Zk&Ů![8. :=PtJLt`Oq#(1wDvE9{+:`8&Jn漢W$>m&(!BNQkϤ,tʓ dKk% pYof8]W8/K3yCixgyu"6oo-1';%Hȫrc]f0&PXs2|B5w]]f1t#l>;<OnĹj2waR&ܵqcD24|%NӺ'uO]x 3ċL+/f i8k tF\0۲CZ-(nO#2t1;t9t]%D 1 nFVq+*{*c? s=:BpAC+) iД0C!6Tsݚ.H<&L-VGc`NmZyfB8$?-X&*tJ䠒 @w^39GДT޽Kw?lb1KTrV-HǷ_@ [Y$DBUAeBk} s,׾-pmǼ\B IG"&9Wma)eF9ŽS"ٮI;zȱG<^XxPI޻|C̱c`G^C-X''@X_.q+֧#}\Ox&cU䠊,g]aÇ5OYL}@|H˛)|Xkwg_/S٥OڃQ B/5`y. A.Q\vch҇/1eG>چ|}|H~9B* : ~ Qn=+_4UkX3Jw/*HX)䍱p zk\RETֵQ#OY=K0 5̖Akܲh&Mfn&v$G / 2>:(v4i 1ӸM)?&6%PF*"IPpDIK7n~`X+JWxז|Jj\ /Tqw@?~Ͼ3¸%1N5Ӌ|c͹Tȅk@ d}`err PSbW5{ER1p95c/h?J9ڌfU`ă9͑ f@z3~Qj~Rg]ƞ%I}:K!.웊'`?:-օvGxk@Ohr-݊-ca~C DԤӠwIsY~UgmFKV2e]Ri`uu,qܭtQ>B; &cb#' 5u$22WV`cp Y'cQy0gn{'}_K.LAU](xk[E*1U ~ps/LyXJA6f[,*kў7bo 852ou&)7E.cᦄ/vt̼QY }ާJ18d ]/NK7 uA_>I_؉??:YBr.ąT.E .QtGȩ2D/ܯI$v xK "AU$ɇ_EJ,K]мVd'$+,s)lڮFY晜;5;D=^2΢H1$(<2lkXx&FNmUc9bJ$eQdv^'xS\ fvDpXqE" M1kwrФ>Rȹ^zj$3U`1C&؛&W0⮕BU@zZ&)~A?eR#,q<5]/ T̺>MیRٔ 7Eػ݋e8;KY@RbP. ޅPIE2 Xv% nr_ ;g Ucŗt lW#̨k~NNrv 3Q4Be؛Ar@8_E#ʌu(T2ޓ(\n(3rɁsw) ] `~n+2)~mˑJ5# TcW! dm9٥Nz'?r߉F׾NSo̹㍍mk(ܞXdoF怇Ah'ؼ"E;D9Ķ=u 5 "ܟiGkLiqn~4 m[Tf6 ܺo5UpN|X!Z T5&/yIH8srx3=y:$%`mʆr]oqzvng9;W_nPu]T%@TAI`P" g[j)B:cn^oWӮw!D3-$~^N9#9E]Ⱦ>5\UŞ)WtK\s8opcH=%aē4Ȉ NFZdf[Wh44B8ut9t86D')e3CqC0ϲq@ nDASoW=709Yϵ@HG ]A!Гo ˀ؉Ǜ2q{4&MjT㨘\;Bn.Y:QMX^_O-"Ldi.C8Z ŀn/m>H#goZfj1Z>bY8ZV0Lk@3)nRSSդxٞ%AȜ, :;NB?&L$wչ@U!MNw/ǁ6gx@rPU41/IG#Uz"t$2|Mb!=`px^ EQL#&aB ? vEZj5:E!c{. ao-B_e%VtBvTѪ.`y-qJ7lݔ8š1cޙ=ޕytQE q [t&p mo) jэW|iEONR15z>7|Ҁ\ہG33 3.'Kt&̇ʈLP;8 *>֚L[ ˲ "Ѫf>T!2yD..Ak\L5ӖtN>`dT)c#.$mɨf+=㦰{ }O]a?:dyذhLŷOuLHvbT؁o3ʄrSJuk <ƭj/ d/^|3:y]#eFUX+HHn>䚝VBd)S66AWAYw}'DO0`̞.Q|hHEf݊Vv >wҢF#{A:Zj9o FO?}.B |Rbj3B+qӻYgr:0 41_vF<\ҩ*:ך:C PgnJވ򢿚}Vv !N}w!wzD8oom" z B9Q4=WK !N[crkI鑚(K$Eu] 1_nN0yΊL=?]K_l,7Whz6f:璼W {0@VkpA/m5d>T)F7bm$nM49,ax6S-7;?Y(0'oC]EO:-&{F~EvRx.o` -QnƵj end~xZk좱9DwGs<[[J2a30 r\XNW``׳|%4SX`K?&eEYFeu^D3wqˉ8OƾB}dm:~iزM+^7.2-:muZ77uqը_`xي:TDHMp rQbZ|b -G.Nay4*_nhڷT| V">;63~ucU$ټIVL2!edk<ֹhв vEw5MOiiԔ,7Ab))E/NjW^Z5\FUo2$tHu0lM1,ūF9)m2o{W.녶ƗTTx\DEtZ9.s]V6unoȹ^{-Njh{5-^R,@򤬢nTb֋R/عjt*3qra`gg`9ދ h~Ǚd.2D9aJ&`->98: Ji ؓRO3I %Ð\4;5;Ǚ,:iA*ΙmGq ;gw`qW7P(U=D}^=}Gvp=n#d|V֥`Cs}n'oܝ]C;*'C,7ߎ5syjw9$IùX|1r()(i"s"69Z/J$;kt n%x `K|vPNAvo]#5uT i"޿3~ %sEHIWo&,'۞O1(]&|N{Ƶ%N0 W$n f ey&r&a/_tn;'·Ezd>zA%*RR؄ee>z<>C +&c%';t %<'X}P`rBS@~x5IU+cmD誄fzQV,HʐY7qus0+YlyO0t/:G=j9_s)j8-dRӌ*TG+SˈaB%YuTɗR >\oA#*^-aئs.]el+t<П~)X 22imT23k5ʔs!Rgmzt_ԋCFjH1 )z6)>60Ԛ4OĀ' U'*u,PtJ]~ ⌚߰L 0JI$FRZ[v|p)ɒ&A6#HEg qC!xjO|T+˟9S[|pph_i7Z߿܌P#t,Δ;_9a_BXBIx ϸ/ʞC"e?V=~F#-JMC7|7'︑pkiFq`a88TX&졏Ʀ=5I}o|zhU{4.B~h VV}Qi<]v=2SNS\NvGt],l"& ImN]~'f))=M,۔0(6KfD7IBMAUgBWf@3{rsy w= QjnPƇds=:qS4"/6k-̤Gq,0f3i(G$Dj൙uxxj%ZauDyhQ޲#I.0x%u -IMABwÓcw>>~d_wu^AuRß~,kRn PfUxXŸפv6$1_y~ 쫈1Gr  D]ޢQO7"ԇOrHX)%" ̆jz){\s AvYBks1|b_1 K}NHfv+1t-ñ9%2HVBk5m^TuT6x*? ۚJIse\y`3Uvno I/v~ ː?BU5tB!S,ՕS_Ad"0RJ+L&?}   0*1WMM~Ÿ|QC6Hx)e0X>6a`[3\a=8pRaiq^p$&dG. %;~dqm u%PĺUrZsu^edq#^kl^,{xDF5]P}DӴ9!ITٟ8_ ;},ȍP[<)wLzusڰzlٌ%caسWY/8W.'B@FXmmk:,ln8k$N-/7$T$B=1*351qahGsh8}͟chG]4zdhTjvx Ψ7H_'ߌ26|'k!%.Y!YUsPD?ú@z.EFnVz!ȿuvmɃq?׮uRYc2s(4v{ax-kolޭpK>'0c9^\ƲNstnqvI!T7{n24tid.FGo's=] rJYflr`_'MdjU&9ʡmD()Q 0wt*e/ btJqR*RpK ČZٞ&C^p&uZv]m=nY~Zڍo7@^%t &uzB`R 1)9 {ԭpDc$Kj4ޚhj 5BO|OcShȴjY$hC:҉,`jt{Ea\MjȀ)S;2m\U!zݜW+j*-(|<}ętj"dS TL}#/+hpt0nGE]Mvy;:D^1U]9L\ eh\\]"WeW52R+DIѽMcwx}u!)Қa{3֧,i@O: [=Fg,s4 ouN{[F{ۣgs~a:>eRTaDD2kWQ;A_&D~:0 eX3Zvj=ƥC}cZC]+?CGKǛ<(#Oe6FQ8<47sz΋VRO4,>l_z+xd2rYt,HI#C;g9~Zz}ZAD`w/"2c #&$"o:Sj&C5'Z2]B<䎓g ׷87kCA-۬ -F-K嬂kd- %FÏnٰcb/ *_uz1Aro(TX w%F+A}EʟHCEjr^AacM!doh8Dd8Xj& F'{Sz |AC i[TU4j䧰?ۈY-L0;]>4N&:vM飲 D_:O!.rJQhPAXz{71(cê`qΑ,PW[NB͘Xԋ4J 0K k d1F6%]}v> Ù, 0NcuknPjH' 3MXQ <SI`Okr )b8@HB.4lp'r""jKbN8 #웩_[%5^c(x'r2q8]Rn+IJ*3" lVP5[ Wy"R`?F\* o-IT2VX01lljh$4 >+n_}zタXNNW+<濙t _at.z- fqΐHF ?C36##Xa0r,\N pߢǃ3yޜ-\n?l]/L6>Z%qF5T|!ڤ: 9]`\ЙF266T#m8AȋHE' Z=s)eȉ{IjJUBKq!!8&)kJZjGPr :!D*B} 9#WOjAˋ@&.H78Z *k}0:ǦЧ ,l &3eq+on9L4C R1R2ӼDùwvVHSp!`iUh1* l3Y>Jwr(g[\' =qq(p=gz$ -fڷ(=2"bnËC򔂘 ^_,ƅ;~B fE<+VlN /7#=C06+ Z.`ǸTW4ctn@eZ ]@z= `/rf;OH*~Nx.^Dse4}N$|SR- FL\\bE{9֢auf0K:Job# l%ط}s2ԟUDZ2Z_!F<Ζ8==N㠩&Ⱥ#w}2vIVĆf-s^UH2#%r@ Wf9OstkLȵ?"z)vdvS4+8݇0#8I(UC^D񜹫4w,e&)/b4 (k ,PNt.cXYtQk?\/|($j [4wO!loΑsJEK0m eԑ!aš]/ڍ1A8XvhZ)w T[tS$BM}OAC*# D18+)(a$C[0v2J` LzB\(&, 3NMs9,q=` xn$+yF"f`۞#=kÌϓvbL yPN?Lŵ"e3y"^G#gj4,(Sy"4\ wU6*~s'xwxĖDc 7Uz}^(&Ցleȓ ~9rmhYʫ e QQKۜCq6κyw-dEg˟K Vr\ !BĹF93\7!G PzÝXemw9oXp[T̹rُ4J1~>wd.qp`hM_䌿r'|tuy=Ȣ&zQWt_t*~1sU{ezz:MtdRJc/Rut:' |‰(% &Kqq!MICAl;#\c]g]}> =g4/G1t%3|6Eۧ[\h/n6AX[6 xF?fBSiUHFp'~ w|c8Ŧ c,M@`S\g vxX&n]ۉOEO‡Rm}=rLĊ+% 4Y( ka`n_K2L}3gs}C;NwC˕H*ܓ\8QV%j>"4y+UntS,ҸPaIL<+ տdDotR$?{bg(rn[tN~2^'u iOs\ <~ÿ̄cq'Ooglr(_c(2*(lׯ=ffċ5ix߳H6Z0#ÂHjW Ȋ(ZNٖ8PP=jOeoEf4vWah6/_4P2S,("AZdKxIɿ|j8ePW.e鼊;4؀p-r2f@oBy tV$8ŌGzXH#iyZĮC)7ƪCWn/a%wR:K1ϯq.Qgm^YMvCq=Q!vRr-U%Zalg }A9}j ?فT XP߇ǐy u9gmĭ{Lqa56$h/l=ŅMgí}Uq]'} ɡpl &噳5]ͯ ,`5!Ī.$ѓp)kqԔpk%hoFy M"I?Dhbt&؎ S2Ėg>WIQϠ^M_F@Lrzࠣ.O!|n?6bR5 y[%ؒԫ[ l% ٘I"ifv (d6}˜e42Ym_RݔGBc#T9wIr}%bgj U:s[ ZEf*qQ0KmàE>vμ;ɃPmQ!)%dsr/9m. ^΍s\ep6!]3qs\O"R;b3?;YOޙ0$F?Z?k3m|A*xxKSr+ęHSۢQbt6͞;}Nxc#SQ9ۢO4nRKxrSkTEBKgDZ[WgD큎AT jOaa, ^.ϰR\d ӵ5=c#K$EU~0]©%P,Z]m-AKڥCWgXaK芦>X(&FB2ho/XABMi+}9rNJ&yvfE9ECa/jM%/o/GM'Kx.aW^o^t9DL$k1ZOX0Md .nuS&"d4 XV=f:7^N BnĽ.LZX9AVns!ΩXHgY-3+L[CV=uiJ~?sO*أ C:kv8%!T0 s 4~|d-^iCd{М-_Sܻ[S41^%LjJEҴjYbP2pޮ j ^lbUzqҚe6"8U묕cXyȕMaog]5A"z ׳w_/ :J}@+ F ٍu(BO_߲kBSk\RMȓ;^&=ը!&hu*֠C _ ӛ&~ !uf@E$q! bST%Pec_zti*a.-%Q) T:Cl1k+LjR1ڙ' ;yhM?Le@cD T s @XU(u ߍWe:[KkLgyyY=[i\-s9Fc?Ki*< >1L_0m9wDf3Ǒbh\RlmVtU(xE.B,,;dt]o'f#L,=-̣T3neFY;VQtsAKPx\>ċgk PUHib0=0zp&BCcc}5mgIJ)Ç[>P= hnGdz v€i@Z#iD*<V'5J\tY^c*=IQ;|7$m0'8pj_N랭-7VjS-+dS DUȦ BhkK^m85w%klL9݂Qq"#zA*f\?})l0i_hnG|?dُZ=@^ %پ^4MçBcUpEGig?wh;\A+ܿ= ׺S\&dV1Q!\}_K*9ټwu#4ruF'Z>zPˬbUceP='[nÚ"ceD5 ӃC(G:-;j9)2$^$8P"`6f|_%?mZ{ (sPuq=^`Ǜ4r(?b &0c-uA!g#k)VƯh|0Ë/'ZUv͡p#k*duDߴn:|}3bM2p'4р<|v:T$Uu̝%c,G3Jݹ() - 'r1ܦ|bJ Cta_p! FNbS}_IK#%fbr_WIw`5X!` "0Ls~~S]5a#I,\O6u!gFn> GT1ڷ8Rv#G'Ԉ6KU e:W"䤏1w 5$F7 a3gصg'X^Tǝ%U:R7RJkXY pd+Vg3~Z45hRGH.%j~Gjލ%h"8r)-Mh_'1 +XI%%eNFEҜctY RdvO+-f(pk:SU*)"=>ECM2ѕw3nPdɖosZX/gTM}8eu/G h爀93CbXK`GML/ΙcXF֋d`]pߥzGǑyk.3WKё|~e柾i?ĵj׆TK,҇ז֧GƴUu{kFjϯcu_]A a@i(e򊪎h+;AC`,DW\`0}V=g+l4s=YSޏWQ#r4d gX oYxGy 䢅{ Pij D3[8Ő@%@sk< ^a7c)!#PIopt&4`ChP Bnhփ2%-Wu^I> ! r4hIv~!s ݢ+ 9hjԣSfK5(~[k]]޵gYqZoY$^͊ 7 iJdKe`, N%c@U$Y7Dt)2<_4 3(' sSe #)I"&:Ѣ:ĠA|c dݘ**:.A5tRWԴefO  JsJ0%*U#/Awc?8EUx&768,u~$-hT,$Ka鎀:sQ5\^oZU}y0itٞZ~E2I4^1D^/U ]%!~z>$fO~ĩ]V.earI6JF*A`H.O6ʜ>#<d6$ Hĩ5wtG͗&,(#a~<: *+QЮ$4lͤƤh =:b=t^kÙX N)~#5 4 +=\YhBf9o V`P|DNJ2^.MWV2kIӪ;yZ@c69*[_YB@ uIlD+ ;VIc`X4FejYYE|Tal,Mu5F*kkF,m+D4HqڕL4׏͔akZ²tBM+E Ch\&B1KҘȤm$wBAg浒R3R7f|JM BB'ޣE5zaC0,c'YЫº+^>vU[NnҊnc'6HѴ[9lQYqf~d.gn$`_LbxֹB/5PG2txmhǪ`Fl4W`'pUlP[?,>peD4%šak(gv]R . vOAɜWzf$O]+QDRb9*Rb#D(_#IZ^G{<֣ui+ߟNj&+mlVW/خ:Zo^($r*?7jL7a24'5K$&JSE H HȉݐlIOOLl7 8}#k0`)ThUldѰ\,bѩ:2;C;;'ARL>,wy_dȽ[+vB[*<\SYኟ gKc[o:Fsn{+wJ$u5XRS (Kaiz x"-Xhϧ0XQ"JW}>-zF|1Dv2j"t;qWHs.+l?0Q?0a)Ԁd>Tb(Ax5xNC$%I[3W *P1w/+paAof18wC_Y@ 3$(F;1ݫz9Ph%-z`zVZ%L`=ۻ>Yaįtv W6NwtW."@-vo-@jԛ.mһIKE_;4S#Y ,,?:'fuUEr);&ל_@T u=8;]4@җTĘwSff]ۑך^@emm)_t ԉYN/:>,%z'YT/K\9ښ^Q ٞŽ(h3ӭ~fa#%;t&n7~Kϝ|ߌM+E)"g?*5>pLd5xB2g[!)@9dR^Q ckDɼ l I(EwD+̆t=CuJ.G_șj^^E 3;۞>M9e+ѓ0Y~ Ү 6 '1"<@pNW_E߈ `=,y(qJۗ2e(߿h Kµ86bbgy%"ET:ʵz$lV<y8טLxZ4Tqsf>?g8Z.})GZ~#X/|) 攌R$;>q_!oQ_Fӎls;m=|'Ji7y]U&/pM^%{&l09\7Y\J X^KuJ"ߤG;$jCZf\0fiqg 08KIF T261؍Bǩ$d Z%꼻1_ K;ĵE0ͼːc)Ad`EwZMWL|M%88{P J(Fw㏧O泈D @`}ȴ76+t:n9 L;21mS: C4Fꗘ5†Q5X' l*:>O^Dk(C^wC'fz:0]Ђ>r:MF9T#ծ%Q(ذjn$b2\V젥 i[  {$f&jdGWso-, zB'>*Ɨxp[˺O.sBLl+h2S|f. :-QYSuǍ {i גkVWcT(6u ,-vF# ]4o5C&AND57-=#;^r]ň:KY N}V'"l2:/U1euk5ߠYǬeуAz`9@եi(G` ^d5NwK{`@VLyeY<ҧXv銼y#m7`u4>WĐǻ9V?}/1F5@ e3J @<[M1G *4SSjQ"LpP-I$c\7xt{pƮªN[.aOїƩ89<3CcO'YKkwak/L<83pF%OGEIuK\%Μz쾎P:ؿX{n FA0 Ԕ{Yf'-jI,lU"mw,eu=, YN-5~:71%T[a*bhoR&~k<8&`=F։mÂL^޺3++^tŵ.~S-|tvj tYѫ)de];:B&AR;FA{z?mIAZr/C͕GOML?%P J5):>e<,gtH\aPD YuI^&%wefٸwbOB䗈%V$Au,H>roF3M9z]hk YCكΊ2dp<ʃimDw}Z^/j2{-Eu%f>I{( }VZ;]SCޚ q_1&rFzK⧸h Ցaw?ج%38yh{,F8\q*iӁ:I0win(0";9mMc77Sx8B:*X*HuK^{0֭)B;~0$(M3b9K i ݡ ͂%f;xa۷*7xŠS&gBG3ֶX_w' $&Zd+\Ho # !8nHs~66<ú[fqcqe 똣md]<{mj Ƞ勪:뻹OvOKEz&(:?L4|0פ;7\zhq&9gC}TL\7q 4Eɽ)Z.~tS W vlXt!\Yn6Rm׃g tG`۔JlƜdbJ` 1iVjB fMͥ&m&ujv `eD"y^m_yq܊ z1TQ8'=eXhcbc{ʹA@^["{~b Glx$[Ę% NUlB@z?/r.6(5{y&f8ۄ{#ho39]5Wzw$o\~#? 6p |>S*"Ig汷bA9LpbOu C2Qw G+1 t%A|Cf'k8ON0nN5@Iun='fwGQg9 >(Q\JFZ)ъx^듰 >8# !!.uj! 4VΕ54F`h^$5TPxkvqL:ݬr$BmġM&]osň[^i mva1a&ttt܆"[yP|#w56іiYiAlѧ5÷b7d|ޓiףA`gh?7\-I3Jgl.JR݉.J9n#QDͮ< PҩAϳSn~>m}Ds65l$@g,zU "?.} ~O$ߡ-ݭKL" TSi}H9'0pD,̤цEbmqv" S*S[Y9yw,#cw$e3>^#B0WܦqO*%.YgЏax~>k) `XFb6Axl@OCHZRғb*A$\#O P@ .®̾U,}iL[=-V`qB un#C-mȺ>dΦJr 0]~Ս5"+7j"O*"O!+\o6whi3`N {rQ"ZB$c4Ex P90<=iFU-4.#\-޺S[`dl]9֮n%ϵ 2MW"Ӽ] i؝-e,/l#0>;K#iЏqԵ3UGn( gpC]OtQ5dyfπao= @iJVDy;fGr N _lfϴsv-lúӬYQW[uvq%@'`UϨY<Ч$: !Xm'%Khq7کU UW[M.Ӊ-n*E$kS56>9himkXX1eN{a|]5ҧu"e3)2Жr6A ZJcQ8,]֕J-¶yUlط !Ѷ6wAXFor9puUہ爘q&AE1 ! [fld(Zҕ~xb6ZT"(R{BNMl VZ;HQFI"ޖj=Ocd|Fe]rcOFvئYνsBGsD#Wh]MTfPKT̎dӇw7vBuQk@3}c*/!`ɎI^tAuM܊J^PDLGj%LCZ5`=o8*5/4 <]n Wq ӵQ,B.US ȘVe)WnMwoZ<ʊ'iR{baUȫ _O$I($.~2 }"}ZWk$K@!"Q qEs0-E-S"<( ]т@Q}j׿F*kJ^`,J2O''_9 bT9 Z!a|?#R@B@RRq3(v;I4M&HoȈtbӢwv2Tx a:8r^As &Fʡ8\JYBXbN(8kifde)I?>zMD8Vy]9'@KA4PS|@sɣo^{j}0B k.<T,cS=9BED,ר˥"h7ݥ?+kaYTUoh+W3**|P|py%9%O%jBRtxR΀=X6RwNv֕!kXnS2P@+5& ˜ʴ&dR Ѝ=D(/}\$( , L1cHߺJ:ΙETĥvKi(gtV`ƤNkomx7I6*= ͯsmWN[})?.\H0cQNNtuRϔ3o1dԎ3Y8']/D#6яEhR]FLP$7u[?h/-Woxn@|{FrE7"\ m^TzOJ3^k#Z3\rΈ{G~X[Hd]G4g/"ΌnnrYniirm6dD&ǂWHؘGf!TC6!%^Y[F3$a5C 5/D$]=Q sOGJ pR)&}m|DI%[CV_Ra msrz߷wdFezK~rWb0"> NjETilХwA՜*| J E 3[Xh݅hHYÈ8[J2XHWwSHO3gq- _ǜS#\le!Uu)^7E2=Ou9|3 wx!4HVS0R_i}&%&i85x F9z] gaT>^/g#s+~/u)زҢ0He4^(@K?##oxàǭܐ?$ [%_eC 4%Pktuۼ 6sru~9J]KB@q3IQOCS&WSQ ;_g!4 Q5;׬Xt2/&6{ uV"arI8O+fzs(3WM>c}]"'1Ź8)yf fY伴^퍂x M1~<8R"֚\Z6ߒeDԂ2XGGl%"6ÄNC`.4D 0-8j7)-hi9c[_eeLdUKѲS9HNԿH<[ZpL5s\NT[~ ` s' VA :wvgT0k滤@ J%}qkM-18Gyb͉,WA Q=IPVMn#W*i;={f߼Uztf "Æ=zbԋ1)u5:tYXƴ]< zpW @|􎐅N}z)`!R?8rH#g/soAb۪*0z.Ҙt,{HzZ߭D=hk[ M^Xh U!!nd 21g .vX KDQ.zDTZb3T~-/Xw?k/=Mơh(:H!-%-PG&.~G's262,A~y=5!m>C WucB@p-C N<JPlh_ʇ;P~?,<`ŅdZoHB?LVc紟tOD7w,5zB)jRηH`[Gܩ}ݑecy-&];B!^_Y%d=уQ@MrLVMK)V2:/ٛ@%>$s~%Czvi|gc&/0q=he-/.Z94'k~lnVKpC,5GaLs<#KNP7۵GC [ Q㾧eBiǙ'y"Gx#Svn0 " ŁE/!W@RR._w3fhPyɕL91%(yLv>%I΂&5|sF|<]Ɣ m9*QrsGAF)H{,s' mPC0YzՌ)t6Xv#8fv#7yK 'wg,>󨲩pficmK(ܐ-4ѢCq͓c jÁӼ|vM- ZH vAjgdŁƻʭSᲿzTsؾ]BܸJf 1Pk1\ozAN7z|]D*y2M&9\CWC&IJz'a|F1/7lM$)XBhVm6 cO>Md,7)Ru LDd zB+KƻizȿIK"jw\ 0VuxfK^}-fwB_:(}A BbEbW"g-mZ!ȦlN0;{UB1B=1A)_=(17Y(?x( I2Zx~l|{+B^eNNܫ *)XʯwR+]!"&rePrW^* kI4an3j:`ivx0o"0|0(?n*)PԜf\zg=/xqtDSHA~%_aaOxDd+7}hOh"98"xU07 R*5`Q'NnqlG-V 1+ 5a:uB[bhΞ hrqHٹ)X徏gpGrԘJ/)w:'(DQ`\%nKI]4hp`!w9Fdn{:uںRmD>tK:`{f=_Šތy ^!U0$O[Pb!}$E]|5Jd٩Kx]>d6XEkXg7.Ǩ()ͻ ο *A:9bmn|T# ^}\O5)ύ@ʹ `x"NRY/_: >znRr$$]2joerMMdk trH[|4odE:!IE7 ?x5)$*@756UH3(pWݛn1QZaԉ !IxH9e7sx5La?4{9eTJˋW I1eF3]S 2"w U Uh|țȗ̉I4C{@QI *.뻬v3_Ny̱ !+S[lعAR9a4KoZKvټ78d^hc[L$24ׅ(pmq+~P9D~a/p阇 ʶɧ]%K~"96KرcUϑȠ T|Td.` {t0y0, xv' =CӼ̷2'g_*/TmA@M)@M+A gF47WUa0FMAw%4VdL6v{k A&nA"åQ5Ki 4 !̎ZkY/"Hys ::+hJ'}PJX8d"IRG0K ,._}"Hyk!  #H# |ڕig%m^Q>KkpRp=tAd"I c?n)Y5CA59IF6TWԁ)KH9sIΟH.q8X8X߉p5%HJh8PuV/SD$&%riq,׿¡2-~^]9nmR1eٙU^ vܒ ,rD*OR79y [QDm夻Q|dvU ݵI m.rGF=8ɐF$ 6,*_!&J/Oƿt~<[さᄿ?ݾZ-UF,1"ِP!bo`iT}eyAA4ՒM9U}0UТN _Knw@CPmփ:@S$w|<jAzoxܴub~ko)dXE/be+89c?R0Nv4) mQ{GfiڡQv0<`2C ʬF@ιk>ePR4oGnU JHx0s%˹kə.qq麱 i-`<)gø7YMr(#XSkc9ҏ{?#FQ9ĕ&@^n 4b3( 03s̥D##*5=A9B)O¯o;?:NkNnjAgq  اXǥ?4 ÜkRx7__wshw@9֧U.pvkp\NavE/>W_ U?ޜl=:BCe4CzP}^1~'(#]>UR:zT֌ʗ$=헨bKFD {T%qȥBP2qo$>Yy'W'zfTUil^- $B7߳tۀ8Աg Ole QIbN][/]a|wu~zFZE3ڸdXց]Oz=Z3! KRcQT∎`Peac?۟dD{Zc9n[Zl{d¡f@$NCv0%K!L/{"v!ݙUaͩRw3]$~!|XCc5!Hqɑ[HRQ u~ ^spس#q'uFQ75m?5]8եa)G_.0^*hܢ9rVkwrUyd׋p~{A&!" Noe $]5oU c Zs5}f.IhO,v..}"=NQ<6EF] ĀCg aΘI x[[>w[)pb)Ȣ{UȼS {'ʂcW'11]cxlӮ)F0HXM\3jT|HWΫiJ_ӓvYLl5&,8:gWld.Z*lw iׁC޼r-#LS֠ Wjpu%8xlUT[TLǩ sќݭOdQ@nV:C,?a24U u v_ bɾ<;W")cMBR_]B*e dw[L+z{n;i%ߍΒPoa "ΰMyk^)XK$s*ή!d(Z\2FA!o~1[8'U>HK3F+XH3g*$ Ij=-Pwq[~'{Ju )'њTYqLq3o_Le"/YX%m-]+cfeȕ\jPn8ajiId&\]={Jkya7 䬕c,wܘ\ϗTb ,44Gd[\y:6!5Inv:JDV92â!8)*'2$IO:.^z~F~5N{;3u`y,lĐV>*F2nu4DZ֍.$L)& 2,@emD; Q~bDE?w;5 ˲- T{{&6y ,s0}31*}~L -!,;s 9|% d\GOAܵ B|uvJMH[X\dMFwHX+Q/&P 0a̰_lr s)?]Vj$,D0Upҙy%qU|V@.R$%ޞZmD"KND,?6QH+0vhsGD$9±]`~Bz@kFhKK!t2 P#,#H՞*GPv>T1::K 40~IvuS77zY6<$Ugֹ]Τ>C 溷!*060K|ǟwҗ6 q>Re.RzhX| ǹ)݊d~+v+iжR`E@0lU+.{<ͻ_o_9-'lV"Ȩ "T]z68iA࠙H`&$ݗ ,{Ѝa P!ni }9X5B8.g:|6T_ \/]3d 〔 rEB"}[W`bLvO.zƒP{q,^ 5/56 &+'Bm:tFn_`Xx s_7Z 1bV*-LTXḙ $sYtaHZH Bt%eO F[EmԽ4kWhs|-al\-T`ߍ\},+KG-DM4ϐԈuWrRy*x~'(;5BVuI4eQqJLIT-f6s̞a{϶,;1q 6_VX^2YKecv"=38n 9x1Jd3ȥ|V]9;s#G~U Ҥh:pv$"?֌O;QSR7 _骈w4o ԴPyљ@lX>NM>^WXSNsG45bTA6`dB.gC霿XJ[4#3rəE~g@nS'PNY$15͗{~)VŬNbKŌἁJ:b橭݀5:M54,ե;OaV!1d *ICֿpJ#:ѨӚIQ腏śr,u`lpobKV|OHF̅7p/札;M/d s-t JҖؼܠr@6}GRӢ7Q܀.{g'~@)lRJEKۂb1r@N}#!(-(1';ty[!bUe"V $J!6fb\+Rڙbe `3 txbꮎ [dd ri`XF!Wę v\kk@H"VrtfOu8kg U7EH֤E!jp9%E=DtaϾUĂ+_Wb+^(B)O3h<]zlg Vgv弘 YÙ,牖FM?Օl%!Y: ]KNHPRӝ8nfuRWq)rNTiZbnX(e?Xp[e,R9d*5p.A>(Ubk* Y#[#;2(>Ʃ ;: 37xe^<'6 QN6OG??břoyb8'jU֖o˗^ˈ(ӓ$S>&TeN!V.bz7euaq^b/Y}U(Gdh/A fQ@h֟1M/%xتW۾Pq'w#r bځCR)(kQ7 oGWd"FAc~BQo Ez8Fwh8;MѕOGE9 gfٝhyB߹33$Ys6&'~̈́ 6x/D 0yŪDί,ܽCP uAAuJY.OVvM5}Ah,a0pP[zĶXr!D"FÎMQ9%s~n J %?t]eӄr7бE`IѴBXdx#;{b`,QgCӐxp ״H#I_>`2ZJ6>ΌHBa#3~H!K83nd3t9UƲmE _ HeNDwmVeWrI RjjR]v>+ m|uaaV7,) aNk`nJBXc=?ipN8\ yt X,k!B,GJj6h?BW$x5 3Dž [*B4tm+Ya>tq:{8l LOg}#xEn֕ Z*LP0 8Mۄ)dqz6ip= n-ws Pt/IheU8;_Crߔϴ3.pzZ q_o(#d^AϦڔءy9q!%Q&dP>sɣ`G% 4DNM7; ˫4 uPDQPQQi7ks>AiY%/' == Z2E2[cΨ$P~I1g2Ç'Hu{;MK|Lj 0ψӑ6ӊ| <@]>M>eA\F^|RI4inDtF j(/iy|X|櫾]B=쳿 1?i ,8MջSy1'|! k*A49MПf/o @K̂2֍`Fұg)`]W}s+!`+I-:3tGuV3i2Ӊ9#tҋh;b Ċ0XF םҍ@$bWݡ'[&!W b8Ѧb9n MMhaPA2/xwakt |ޜ^'Qdaf2*p1ܽlq,ٗ:iq$D_Ge4̯sȆn0&7֣ q#i!QLyt D\%n~$]eL9܅(Ou9^Q80ևEghbX+"-R nm류>F!Қ/MLUrҥqC|ʥf'_M-d#Dkٵ+tm?wo3( <)3K6duClOTRds=#m?H3ԬE95r{"tSL4'vξOЈ*i-/3dd|W6]Z J$ S._{OGvwtit gZGe\H^C[~J4V =͡8ƨt.=v|{_X}mQUj<583܁۫IdVGYh,҆/^03#5kWPrJ@!t7t  b<.9tq&W FO1"CŽM4| YpsC@kβE1Dy L-~ ֓J dCm,fI٤gO du=|F^ SQI{b ;Cjj)+,D$*|APvYbKW8qW=8>.fS("~$٭\Y>d'ΪȽq V;*'QT4dH>kbi8 DWpܬQ oK{i@M}spj摡'1>0#AbJncѼ^ 3.j߭Q*(7jq>O.h.Uf%$~!d)'smpPr J\\; m 8R)h-&QRp4V| W Z!'=a)%o.Rj=΃blaUAWvmN _S )m'T/rfbé[[>`dQ` a-BZE*mfu sN{bm2LYDp߆@3F.KNhm<\ REc,*)uɴ3Vk~W8,6[7\9h"lF^>¼AqzaK9w*56[r'e=t4ʼn%(m[Vޢc<4V_ྲྀE?`w~S Iδ*QTHn#f @i={j4zv6WȅiP RׄT+2Ep7@d7$&RO]`;ygusy%7 u1_S]Jg=Zi#Hj81FjVHo-ʡX5T2-i @PVR>7?*{BԉBG'*4It7>2ә`߰(&Hwd 尡 E,H|R~}K2ycW-]==ee5 <{^Z^Ū,=ZUFaiȞcaIGC!_~v_:JEfY/XO}*:cϟ`QhoO' *ϗ/&#0\B:RZ)#u9I{ٲ+{"e`b~[Q\QZf7E#6e~G,=B%SxWFyl>Zr' :,5?Y"L.(P{m`c'KSBs Pʖ-2ϪM!:K;$vwT8 uûV8[c$6=EÜy^<q%㠞g@}M὇xт9i I KD$0}\3$DMG|+ 1 O3.b:dd3pt vFfYMЂ +~ic[cpzs8f \^n,}{D,ҚhP?oPc~A9u$'9^ f\Y> m6~\=܅aȝS~V,TA%D{>}wU! -^VPwu =ՕvMb+?oSknǥӍ9.8&1.''$c Һ${\Ԧϱo} +us$#? I##X >] 2 u U"GTTX]1 'Q(wf5e(r]RXe { WegF<1m !Kw]cKo2FE &.A&CeO[NR̿[5~G(|O'n:l'NHcx5։ ;GjzV;U$ o,w?GlՉe5NdnINJ?a%;+ˮS l )1,z  =)u9cEIrj-i&ȗy >ßQV[SU3, XR9 }Hj#yȍAiҪQ:ǎ rTuv;\m NE;RVF}r5|a=W٢V[a<Ϭ>_N.Z=C@$HQGn\&hޟi324$q3a7*WX%7C-̀S狚[ˋ,k|yJZ(hNQIH8Dڹ6+ 5a xF FTDaV PN^Њ GI/L>r5Rqŧ5Ek$9AM'SqAXqx)^¶uf?X~m %Sڐ\<:Výv͙gD 7~{|ѣV{%l'!H a{r@ YvOkMxtFH4D$.o(a JN0e t-mUFݷKiE@ib 7./10]E4i^M6l++_r!PgMGTtiJOڦl 0Zምq}kǭ,OUFbXZݜd_9< ?þ"<~q6MWIޣXIvAq58%/Yܸ7ՕZN+4),a@VN;n=#Ɩ.M ׳SIy}' ,-ZgXfҷf=z&6CD\6soVe]r[^AGcpm4w_0l&J9m᜞De/.kPB#WOS%P;Ioif<@=u ~c<؂@}^yoWUCǬndc&ޮvrt,^y/[Sh7{O~v@?Rx ~>/6{xkۓ(#auQAj^ I>kii:Lk0MrUu㹟( y" )t_aˌh,(c*ҕ:\<:a2%aeE=8{QSAfA}]?8$j=@fSFUO2u+3# gqHrA4b-Q1YG{">=Զ .s<=|}wnAFaPBcQe5XKk/ʍJdת^ll7nC8Py>B1{KҬœT|n5[;]9^?d59Əj"=ogDkA8b-,3 %\l3vOq8aY:A]I -d\ ,53јgjE{^XjC `qhf1Ch]>Wx=Mq*>1ke>^6Д |<I1h%N4f[ 3K{ :G͵% xJDP5$Znp8<Ig|n=I*K&.u` ܉5D4> _|qC8C+-?y>Z/'k TBץ)(G~]̾.ф-b31sf+|oApSgL?<(눥OtImU 뽔\(ߨݟ:F qBY+K l;ׇoǀWaF<(c@K,>@w_{X$.U%6w\Xm}ԩR-ԇH!*4T@vbZl7,lpc-8=+4? I\Vň쒦J4ʢ Zc|<LLuH_r=szxL?IF.$DUsI-@f꒔uIt7$# 9uL4׵3Xa~BI^AJIql*aCkzhke$R[MIUo TC)B"\DEWq{BcHو"\0a fS2 0|ՑI8ls|Ѽ_ :6!jIH< MND.1 p7ʣb 0sH 桽录KmTg, 7qM`,W4Œ:Webæ҅۴* 5~=~\1I+KY'](Ç =BDh xoieMu.'m&$cYe>uU#'om{e.ǖc-R BNGI}DHBojx+>}-d 9?b?v[Hdjt#Ѻ9g9`1Iӕ%LkĞeЅljIHzN©:sP!od/ѼÑl,C\wPдR`a)BuM4G :DgVҼrBۄ EhL@[hn!*33Bј g_Bx aS0'ޝpqʱݳ£wWvÍ%',<8 88jz6`UcOҽF3#7zaXRD+*1;JO~NVE?-~)Wy)鬄C2uHQL3Qh܋DT4*5fHPϋ` "#SRyer8O޿4DDD|l~˪uGq8bބ% >/|L},'&qUB\7:H#X{=W *2DŽxc|kṰ4}ЛϷ|h!Qǽ/G2hCԅ!1$,B̓ڿ,oDhPٖmZEH9f:B#T6H*"|o=liQhw)= b м:sDg9tUI׀EifWP|Y9ڠBhf-'U~TJffh% $Tt uinfMoMV[[/>0n9Q"ɌtXlGAg֎.X56 0g{ v%̶1K6ojR4?F(DOȷ_}l30ZT|Ie sb\KEz04_a~|*/'EEP YJY h_mu6rQcL%M#F.doCQ/DRЂprdN4KY; cql'B?@<#5$D8T9|' RM\;`gZ~Gm D֢ 8TTWe|E|ŭ}(Z CӓҎ9y(?1V?]ı;+byWb˪~Z 05o& {4ʤr%l]Y WGh?\,#rԋ=#d{Z;h?a.~<.n3=*vYb0t7z;#;vn \:6IZk`J+H[E#ny߫@DZ~1h=\; "_87 l"[=kE)P30cbg ucƫ7ċ ,\q|"W5|v#բ 0sܺckz{ȏ݋K:OiQ Qer+Yi :XpEKiur?cn5rw}MҞT@*v UX%sI544ؔ4hnLp5h}p6lQx*ggzZU&߾/ >툖zUw[<GQׇ4j@5>5%zLQCZqwDΎ}1b1؝k~n*)*^HxOE5-ZW:1!U;-GG PCCSJH?䌱ƒDHӝ,)z|Gc{њ4ڬɏG%?9cn]p(w|:Un%G6PrS#~I-=[Dηc4IYؔǿp}˜_,>|GܚId2PC/5zR3IvA<&euK\4ԓ!*yln mLU- {T;ǵ\HAB F9/nCܿU愡N3|>a\kQ>̨ Q;9t!K.5ӺqŖ >;\/ 1oG)%Fi5oX&^Voyʼn̆f SWe!3J{muB9 W3dݘxxVk2b;"w4VXY焟yIZs =)wJD1Dw\ҸqgE e&nS1f3G&xkJɋS7މ}3R .`;Q<aC hjp^n2I#hwk;N)|3 y۽ofE*l`T2;6c: YZ6(L8j\˱A'HIO f \ąUB}jGw5։Mc*Ġq_QTo UиuD^kz'2;LG/-QkRL=թ, $vVQ-b4Z2B'2H֑q/֊:)EnJI ૺD`ܑ׏Z5t 'E@g8FvhHETy荰rs"ЗiD%AǾL4<xO 6oKhcIM߈UR lP58 @,, Cxsdg~@˗"Ԗ{ԁa+-O\Kv8MFbG=P`V=G:i!_hY_ɟy5X]ǔfLKWwZPǫ]SxܸpwZ+!RJ\qwD';%`Ԟ>..N'`ǟ /lhN̄zυyUK?;J cx!?hgԊڱ#Ze[@n'"G$wvZO˩%D7G)dI<|fm -37U~5uyJJ,ڨҿcWOIDGT7Dmn[#K [3^ ?ɦܩB(xqmہ8.P''+ i qafR9y\6_b D$\e&rIȄ@0uO\#Q妝oUݖgb`|ͨtQO3NA>Q67˫sK8gQLQߜEH](JZ#Ɯj4H-?-5dd91D VH qmJ 1Zm/KŠHָMZ=྾Go¹%(he=>#\Z׿ _*^muEC4MT+@JJ \&*L!6Uۋ.e6wV30NEi+A:v#{g1d%ѥ_MqaaWkGF~ dwMn)nyh.mO#8d$vzsWҫjf4Apfkn*fEeADG !⥵jhNC{nTvرo,ا.r Y{e.9;)%څo nl ezbB5lkSۗc RaM7%8{˷gFcQْt'"a$}!BDm|KfC0] q9j̚W7 JRpmivaGl9r{eǦ۲#usg( pؠ}qF'Vћ sE$?/=mnoS۵QK験7!mI( pQZ݈5U@p"ɖi,DHj::US5kyg(s3|K5/cxe 4ml2SGawEw*7[+r_ grLnN&ܶ&>߽9dk_Ro0l%q 3_XՌT2K&h.{&b4#褈)mH!4?r0T@s6 {:q,9z<8k>ѓ |Gz½)gxz:^N+0ϷFEo],g+)}ǑHdnԼ[fH^,<K/0BᢔF9v3QjQĶR,z@Xjw}Q9s/H4B, dꪒ*@<#YFYK~thgaatB$EFQ'UٶXi4.3CPԎ3QUj@6nbL-f7Eq8GOg0!tS "e3v 2hʚĺVC `gj<#?^0ZyԼc9+6XPtTLEN}A;ޘr)*ۦM}4ZQY@0'8D׏bi8PB9S}x"#q{=Z$=@:{ۺRI#ݮEun KɣX`"NYY0.xĥx"fA`4^F@ߒ󠿨nK3pߪQc4m!$i"ޠB0 񀳞LWvgΰٛ+\ S#T [UthTy7JyVoX6!5t 3&.eͪ^ohe%jH>HSg+Uf["Wwoh{yDn0dNKkҚ O(j~;*t_enjg׵ iW+u|(;+F]1 BMl;>w@p[y_mŇL_@=h2}*sUf1`8>J&Y2_3bӮ +aI?9X#/bXI2"-B/GOoj{b?݁آ&c (bL0ɮy|mw~aOGI) oI`)2 fOPm%K՟/|j ߾DjSOqy3Crbs>)'=zqذPYHj;CU|}U43 uzm tEy]˔81TBE'=e G햊p3V\ٔ7}{8IE2nA>؋KiKx.בn53]_ts׺3㫖"[vk@K[mv[lE@8ĴLK;+KL'/'iբB5=h_I eQh߶B3]j?]6XE(+ )鍗e˛ @=:1RYyTP_~nF+X#^XA.3xT;1 7c}42~=h 0U4EzIx,+Aes)wNUD3n+>»'daBۄJ;P{h}ZESTT9#Ɲܖ,wb@ۓ^'ɤĘHɯ槟@ /^qYihCQY]*_*'kA+qR0\9O#rDe%؇=6 ؉4e GJΣGy4:ruq'EVv5l;ǹA C{xU(B`17ulM.J[C^"~ ~WMbV X>+$:+GXtޒ?pPlm ֤` a_T;*-ݻtA; yCg6B`]H|aJ2x1'{n%RP( < [@[i&CvX-[RoăL"#ѫL0uJ+E͸!Kd2GÀ ^[XyjiB ESXa/44}Fo] -)Np?;A皯U+b暙(ݟ@< ]d> h{5b˵Yxz=@G澾OL2H0C%a{@-44x-.4ulcZkcxBǼXP}c[*q24r 'bf6 an1! 8B@0=D/3;[(y >2Q ²c7$h_F7|.!c+`{6㱽5xXf1A ݼ ͈ֆ:Y !&*%m7oW._IOB ;Bn>)+ {V Sa V@ ԹE<KWIxH6H˴lD 7j]HZҢ4nNqY *L5Z&ٟ&7 )ge!mib-UYt~4#}[fzS Ԣ97 ڀ\ӃC2WDaXN jZW8v7%+E^Abe’{ʘY`4lF^Ani!Ds+K)@ Z1H/k_V= 9)RgFqO3!=5Ä! 6Xaf q^)IďŰY՗Pw4]YM=~9No<0sY=ꉒH$ۏL2Z:@s4Sa/1B+M @YYꯕΰuZדpRf͂3lZ@_?i~91"N]GQdasl_F&BX7'e xUлO+XЧ< ݦ%l 0u>xitv_`&U ˵u_ KT:"6WKY-兔, R\4SVXqpӆLԠ[M ElLOPv E5yi9de[-^(,175Ce3x0 Q2GeR΄HxPV}=fDO53k(7wҙ%>-s a;O#E849H䘜 _rrw5^F12 5V w~[(9@+\g^۔'O.ŻD@9Qmt}L&򣸃;ΩOQͽccZҠzjGuZF(3߫k!heBHsl.|ޟp>?mokJ:\v2qNOkr~tNBfX6vmuBzHTS[[\|j#ԡ8I7b=!QIDD?\plNNY˰@I2 0sgEƑ-GѹΆqIn4†USxɘOPGXSVR潎ROA؏m0n@Y+D$3G-4HHS>t˩3,DPh'lX!ݷ9Ҥ<\"=eK(̤;6~MQ9E;(d>>)aM(\Qx m*^2 buPݩ3tpFI⛖Xrm6s1gLT>"=0e_b$~kvԁ/F{L;և5q8BlZ^y>J:93ZNpixr eܛ (] jCE%sRַb)4N߻8 Z<74F_>+] 3.ށYZB(GՃ _J?&r8Lqs Z&-vGRu1F >"˹e}r{'$C*.}CiʩMInd)h.^tb#1ʽ-H!6s@TOiZKӋ>lr`JM:.O\^u38⒀h%?Z1@ϹKdGqK&70ZÐ2PQUׁFn=֍)6V8I)*v2eHid^ZXHJ>c6X7 !߉GX\2*1޴v\GʊFQbriәۍ}0|x92 @Y h>` c Xl^,~ِ%s t\^h~#wjf_jGjl46  )-G=,iG%q26= +3:}X?tp߇#prq,[JTG JPg.O%F 5p&u8f`u/'܈n9nc?(1mD/pAJ$mjƄ4Xl-=w*r z1>@펮ދ!.f:,iMhq& U-O9ٌCt5;^S, m fdKE*W*)n1v֎ΆC03bGkk詽Ni){z#S0`}k4ìif͂fʯk;_O+oyb]G!6M,dTw`I1o_5>z}Nwa{H1Ku+O_iIwPNE12 )ޒρ;(PɗdP&1#Wv<(طlC?8VbmVj#bnѶL&胔/?&Ȏ(1:a܃<]\}T %0nHT E$zsZ󴜆R+`(cX_y6dʖi!f@KC5(ć3*O)zwb~\~( `lbP . i#ZS pOI|o'}6ІG ͗wI'\%<|gҸ*ĺo[y.xS263;~dL-?ՙX:+35+imhfmA'J(/ߒxj@3ξ6],])Qߊتe8~Hf_j(R,8Ul}Zs=F)7kߎ Y)MN_ԾO)%cC=$gtR=1AN@4R;٫޿e-PXe@AvzpSThoC$HjVkkBҲ Efnn-F} ovK,OXi갂U*g  '[ v|9#{1I^.܁џXciuxG | W5xyHR,g4}iv8S>)9OגF7C8wwƾfk6䒦?TS/o;B>Zc^v,'~g}'DsfNI3P35Mb'V~~n5}*-zݹ=ߙ7yU@$] "N7sP\@:9z/ d$0o-4+wB |b9O ǎbrV%)+v uyѿeẁ@>O?Tsç(y Jl;S- X)v=2J "c_fLeu5pgŸSɊfG,>( x|4T,&ֺr8QݨE垤Yj<Up WfXT\jbI5p c[F\.. : Ho4D0\ |ebzS?Ǥҹ5qt&'9A; xI }^ѹW^ mYU^0PneF[f_2O8w1bx -R 0sχ<ȻӮ+L8r&ٵ~ᚨvUc"h̉/ɃS'0i]J)=JLffvwM݇]c13F:|:$;,>^-Uqۆ^QNPPgAl۾ t79ջXDItՅ4';C6!4T \J3FwS Wmx%k֐Wk.I35cbr^S\>Lt*b"ѶB-\&2dmHpKOWc*h^8"hcޑfӄQb*\˅Flk}>N!$Y6L{cô&!i?Jsd0W@6,j.3iLb+%;he%+9vGS2hWZ9"sBV@FA{bV4ӣ .)s筸N$qOhoq&ABQ69ztsH%əoH4%EC6M-ZUMf/`ZFPT_1[F14_b?2Â\t:df YHτ\uCXl~ɈٰO2X1, Q.ťhx_@q'aFIFQB #Q{]ybEAk8Es m]kY V 7(R3C޲!|NiYTSXtRnT$Gn7pB%ү HaRcp=e[1&5d0zhtZO&#&]tfWAz52$0*5pŠイ+OxACXb=sDd1[u$VzkCFDpfĂ1Hv+K#Oɶ}3&& qۃ`4c88v#|ˍpeAl 9=<]H?|DLA jɚ9;p%:\h.*5)aU@n\DmX_U4 k9eMaj$f*J *@iOe,1^;Ȣk>~2Tu6W@v"3l3;Ao$g}hʹCN_JX;<Y.R$( 32Bl̒V=t$?7&ȠRko}IC&^ɰ:ס_U7gnu6++sBpi}H.!K@Dz3q(<;92>H13\eeF#//mT0f)Ֆ,,Z'M=yZv\+piK'5}AHiY)`,| f(]A^1PRy']e6=gbG_xFto>yFn Ju+,f@As.Q] 3^ %+!>ZTj#"bn s45(Qݹ/bưwwq~nZt)11KF qD=Cx8$aAy0[R_)M<˟OW:<1T!Cu(":4DO}Da6ND=YwwJ*\䥶] aa?V&GBb``ȂgKVԢoe}O9Wio|I v^}a`pW.F|-V.*O*sM5zdNTYw.}s:|׫(:d{`&4Ь[DSa:xN=*wXtͧ!EET k} 9Mα%`YT!25Qy ͘QaW9G8?e@Oݐg5v݇u#K>tBa,78w/&gY@ oNj.`Da6"~CӫŠG'JM9iO %nsSqEe(fuSuKs |ovsAYǮw&*Y'ZdmiYN90+ _a N+f5-"EysɿA\?c͕qGAmѓHd@:n1F! 4 F:[ǨbNTInAΐ7% Ь^ud4?DT<)L1vSY1:fGW)g4ɵGڋX dd![%7XLWI-\5އ.H3BPԣ0V@~I$KG1 ?N}V>;S>Аr<,I5sGC_;l<2/?|P{mes7lI/{-ȶų"G%dư'}YZ%hH \5$1\uߔ"sŜ1s/бКz`njp@Y g9zGNՋj֐d|J/n.t\,]/J30? "Οf,P)º] L~MP7[3~p'())*&E^{JyYS5iy,ռFU]u_'c4'a%`&{BWC06@@@gT}%ҏ@4Lz_ z\ڴJZkLПxtqsD}S`=(›҄X٦\&OꄛzDSoʆw5yrIޤW`ƞg_Yh4Wcu~79EH$^Q+[ `)da[_y$uNN腇[h dd$Ǻz]j6TuGA}VC{í?И׼/ #c32:OYW_lfQA$Go QV#)1~Cx%xAY/aBG>(@p"(m/14⺽H<)xk.ۧ9+yOprbX{6*%n(qa1կesoYbgYٺ a3E*p%&:v5j6A`ƒ5ž49rv8-owUV ܪ;P8ş$MA:Y4yQawyk""nqW-f_|cp6.OHFkK nRT=C ;xE Xb&勻-mk=074 tPVОWhy&<)} _5)aF׫o7H.Ne!~.# MkV/EV,MWcv>mіl6Ч`*YL0Uw&ȗ ̶GCmrvYAGK}O+a.壅^pu!$iԜ4ɳ^t6ꘁZ Te*b]Zaik!@F+nbU6,eݔޏt90ھm 5F<3kHrҖ  |I:M  qۜa9[̈=qw1Q'HIPRQ'esfzLa bV3QיAblA~&\8ތiaH kiSaJ8qSb_A3XGS'yTBƵι"[N#G5я `!/6L籖gj>+ΤA۝-xy Ug!:ј/gսh8b@}MS~,ھ Ƕ=,"UiS\ %]%ʏzdH!wm9J*'\槽Fq{f1q (Y9_e-G@yd(}k36)XGY0}(\XYܫ[ȹ2;/Ц*qmnR& n~ش Ì/MCҏ"D |kc{ﶙ ʓp*Oqlm%hΚT%9/PAN/%[-IIޞ:j(f{6ɡ$ b9*`+6c2v$gFt`O0(/`O9r9Qqi\}RȅYP:ISlʴ7ј4$Nt󥛟Q^»{ХƮ<oE |`OK ;H? 2#VrTdis=CؚJtfidƼyXnrovPw\f[H%a<*%ln'|t s}2oA=55 %zT1o 1m)77R&0`U;6Žb\Up萓V8-B젭BȺ|WypēVaSR1T'e*ږxI'<zFM!k?;l`$5S9ݳ%ZUZGbb/ߖErn@@O6y/ 3ґ_E6O3AlI/J!DxsW!&aȅɰJs)Қ-0I]1Z/$qirPMGy%?ɕ&\>]Z\ORHfj1QJ/K4RM"Ք[$6P2涊Y09:O| E_Et!Y3@D6Џ zU,GjOV3\irWeXT}n߬QdEx%fU)zٯPrX kE0M %iF?=Xe:DQ_@O;L ,=@=y~yW˴Q}>׀ -7Uszi ;hi'Lne/~!$gd*"X/m[؞D۠7\ 6hDd$;Nj eF{pހ]|.uVC"2ೱnވ_ZkMY$v/<-_tZ(;_yՂN /:fnUĩac&MSB2E!ظ$.ljTeU!(X7tHaydE3,>*\*Ep-H(q 7ԟ_ ?~ʜ'Uj,B:90m٢-V_&Y@e2,fos <`2&u2Zjx#uoҥ9VFSD[ UP!;-:*oʧB5CÿOSC:j1hdGQ8@"jWP\;@]d-b=2%@)f,xf7<Qw,mh_/DM:s1?'w.4)BV!1,w''csEFy{'(#@YC ڲC0[^uW@>Rǀ@#.Muc9?~NoPgjJϹx!^ˁS!ʮtvkHvڠ3gtJSZYbeGǪ'54( g w̎^/~:C";Kl"`mF:rU}#lJ=k/ Z&O22֧W%ڧ UBH_Nڷm^P]yot*/ V{D$S ԥKNα*VŒiD˲9y[߽O:`R /|T-^HwY]|@Y,"CXLY؂Jִ[CM3炍@lAp7Vߝ@Lq_ [<<&#'Hw7cfD%m *# wg3"9JڣOd_ph0qG&t.TxCYglg0PO%#rln A Rrj,ᨙ ZŒ$asqqY>N%FOכ<#T!cd5**QnE20*C֕OPš:& @xЛ.ܽ|i4߭k|쩭:v _ƱF`m~xM?:,'oKb^9WS'K}Qа=Q<5@@ bh#Mv00k쬾0ڶjQzJ7EY7q*2  ISЫ"3$xү:UQ6Pĭf!&}ƯZQ4Xi{{4vu,.eR€NM-զF Ss={O tkk2oY.!D-X&v=:OGAQyJ(H)cW%<(*:K"(1}Z dF>ϲVcK=>ҝV 1GF 4Y-tI gWK.=wvo5)k#Z%> 2|#!gC+fV,V.#@OPL)a#%&S7_9$h, b(<ΉZck#<;D^fEb:uh_=xQtj"pKD2e85 .U`$h8&>j=4Z!{3]Id_\Ns=h*6$Q[l4#5XM;UZL+)g.p*kۋ>O3\!`s⢋GG>n^2:[z_4Zy"7p̘/dWNc{H u-I/{ҟx,i^vcr}?-zL ,ղ7Lo3*EiɾÂ}-B]86ĺ6E(_.c[-ZxqŔ.NfGEմc#Y)0봪R} XLJW0I_ r43%5w+ddaXYE|34[;LV <.+n큳7p:Bq`PU]S :/f4S M-TK1oY1(Ih (֫.' ;nOij$L۷3k?W~LY9!io ?N`YYy\[ n+Ŋzc?$Zc{ s$Xqh&Aֻe}>^UL=?jjc &?{szǴ"rN3m7Ǿꊇ7q]79P_97!B~M$(=v(Ѧwu:=dⲨQI`L:]ydb-=D\e$DJħ.Uܼ/N'<" JhܣGqa>ExIk_|Ġ1f&7,/-#VE?b ݁jZ"FydU&&|-5`)ƻ=Aܖr/*+0 &L 9S'WC4|qi4edX5f#c8 FJ.4}%qm9q[L3^SoHPNhx:p0BM5gCsW}0r?~۪&`M 4WI.#4zChlwQٵm"y R(%}tHp 3穄r,ͭ%^rayeV:Eo\}ue @+s B-r:A(B(IqMT|R1qvFԑ]3pJjjaXzTZ톀OoWx)"j^k= 0e^4RVΛC,. np4]&l)8qH1~:?!"(? y7X &Y'OA T xU76D邷1 9Ko+ 1i8 ,VV1K+v`⒆ϐ Whq7P~vb.͗'g$q𼦵Y2g^o;> qtT񭹳C%/gP.H&౏^7Zo-CK4ƴ?/qĞUC*mGd=㍩v;Sv f$ϣ[$L%bcxTW3NmktpWP 7F0-ېYdWo™L*7 wt'Ss,&ͮB*nxw*X5PmbyC,^§=[l $K˻!C)?Evri T"G5b)STwHf> x(%kLR5he;P‰VxEU`Qqak})Cydɕl@*3H䝞qRep""P}0A2"jmh 8#V&I*tp}jk9eA@JiJ0G.aoxÿh#X@']Ihk!Q*N=:vk<.6T5r,Bh.KEVnSlJ|x NюfWh,\ yqXԐQO_%jQ4Ls0BBB~~r$Xb{@Cȇq5Dg0?e5x]ǖͬijwLPaq?rtRŦxݵc?9XZl ^+]HyߔmU$SU)J=Ak{F}k!V zT"$*UPlkN$|jP`ǐxs{ ۰Q8;;IQqS*4T}uL|9 T?ߵrIlฺR @1YI5wj*>jb;},<@q 9NHcѮ=VC =޶+BSFjk@bJv*ʷj#WRv h)X6d,[UE|,kxaj:{ rۥ9]~Qd zV s-'l.)2 2#jMnq#VX= N 0BKR^1ԡ g?8<4n3k&2>Aڿ)rFwj3 ^nzl6Z3ݬ/q Fbq`cͨhu[tKBU۬ uәp D"BB:Fk#|k mc['w ݉aȌ!TS?q!*6"n)z,d֚3aW4 Pp=?D6f2=M?3m p XQ^-*9V-M?r CmN?! M8%{SA炝r){%>͋զ}C~ic3^atwﱖ~tO N#>F˔50F 2KKV W"8w;9~3fp7PuG{PR#ǻ]Wm:ᬣ#Q*bK'm #50} S,|VIAF &"R;.+(#?R¨Wfs఺]zb_@r[&zufF"´:3pGv1خ" 0$Yc-1\1LPZ=˸sz9|U@BXѝ,6hxt7,kEG9xԾy0(3a`ڽCPr[gQP2Ɍt.E݄_o~\-Y=ʩͦtƎeNazLAbCX)26e^}PX 4Õsx)䢋>rt oG]}i\@"2vok:KTF_ݕsIWHN!˅HQhZ{*X}ЁR=\4J)?t6CNk֨R}D8"cECA-tD%hE\'}c~>a-y ߧ@2p@ʂJۡ"m|{wм}~@!?-%<1! REN!Z#GuGkJ]"  ho6G5ߏEBbu tb_凳֏I쑊Vj;Kw^ >sYfM-pٍ|isԍMLH|22 ,BK\V35X-(T6G2QpGaz^2A'ydSslv"_J p1SMǢ%̳twД'OC ݟs`Bdz@bQȁ4W& M?e cg60+sXRw^l b M4S/YuvYeJE/o}q`nʓ"#;m||de*K0~}#h9 D?*u$V:bmR~ZDto}C @v?N>`|ԵVK] LV9<RG|Xr<`id>@Kh:4+Z}Xm :3qR) A|dvՆu>䨣my[[+h+.ArM W7%wyw^Q<1Z Af\8۶B{Ao+D<]?T=)b+͘06Aݚ7ybiz[ Fi3xp`#'JU@tᕦ@@3p>o'b.7['\t@̓L?GRJ?bǏf7d!DI|c6u8!h6m" gms%\*9Fl^epOʺ:QN s;bx>,]`ݲg.jZǦ{Dх,WuI9J0dy X9€B!n4U|`jE/dSm+ɪJ-a℉&Bp5;Fv\e=FvM_RY@uqaOV6,-UC~-ꍺYCpVe=/R]_)"mN;$d =f}2r^dZ򱰙'YΑBp--/_K5UXI x .~ȭJf )vTj华PZz'uP+ h#"bs&X06%(FGLX?~_nŝ, +weJq*Ny۶pW XFEg>N0M>r Ԕ).TaV3?7TK '&HRB$uٖqwb)?E9.5  кXW+U U0A2[[i6&z.cC.S|xOdJtWa\SQ\"YRnL=x::\,a|0c' mW/*IGĠ&W- uvC =b>ʑ24G{fh/R41g7+[3NwCB$uњz]0zm>UXM"U嬃YEC/;8nA "{Tv#@5B',>9iN{< jދ2fV%)(C7|&:koV}IȌ8{ʷYXz ޗ ?J: h+jח GhȐjܑz36"T,%NGMn02D6F V1C*N'?Ϋ y\`[V~"y(eO5J5FJrVq!FW h89o/jzG?aDGKP9<5(IGKNXN19R5VR 䂣L!wqAU$Zݠ7+/l+;L,_x9|W[0Wʔ%*&k .7};<;Et^%*;,ˇɞ^gSyHνyC `5}6)v xG%؝>4Vzzw"5̳,3΃51* XY?=Y6ɢw͌Ex(dQ3tcwؖk 9rKQ"ӥ9 :@G#2Tn@< q*{IFŽpՄ辔|-|u["2bץ#THT!T >Q$4XO .lj+. ErЛ* Ǵsm6h5U=cxi1HHF;U)R\a0|).#}"֔:g5Q 9uP5~S0CMvm ^F@aŶ}1{V, 3LxiY0pA, aB^ ؠcT {o ^Du mp>֡C>>y$ UЍQ'K~jo/nx9&vJ̧Kn7p@o[vٝ/CdƞHDɢEdy)R_=~ǩiJg?%#̡^{5ֹ!NMuef<\" 0۽jAp Kui)Y5~V1MBBl',q5&TX8$:Y s|uL`_%B &};8ěg`VjJ1;h+hKgLzbM%Іw$|Q%\`k@B@:Kl&F ]ܡ߶rzdn=(ɚHCAS*8L^L@1~((+F) G6ώAE@sİ}|Y*"nɖMwj-Vq3/hN6{f("oӅf5t'e`j)cQ(-k$$ү-)FU#R[筒Xuҝ&y1_ZkpOOdp+t[>ې$ODVXaK$Mu^r?(gܲŮ}uO~tf `LUf9H^b6˥}5p@VJFlH|*CL- _!RH0.4u 0o)GWe43\pA.޷N}E3.xW-Gƒn$[ ع9#?𛃼mɚo_Ĭ=.bv$мPؿ( hЫx%i$.@D+>Yr\xLLTL:9,r=ӍPvA\1Pa&k- f5m *{}~~/ }~s ]fkKkTu'@ʻ x޻ dK2>(:ꄫ-^񟇗Xk'3V&@H눖{5u1ro4şґ8[2~58 ƧgYXZC2Nk1Yary-sXB35a#VEniD03tmdy1k]=xenQ^t lA*kKI9+>|VRDpfP*5\%0 COéxi{Ƒ:S# cI`v($0[ 6"`Z4>E  0\з5\ԑ â`EZ$PoZi%5_#^!4\sX z`%tof NiRR>*Z_'DvS @o\pLE@ЭKͼ򏪗QiCsҪ( G[fyfelA-o6yM;w3u\[jzB<L#1>TՓ~ִJ*fM+)z+xURӀ 8nw'0?0 V~s ݶz:1H9xzl=fφ۞ˣNGQ9g918FyQZ'q7|'eңc@Z۠А*ai6y*+Ŭw´IZ{K }ΖpbzIyΟ ? q??3@D1YXiÞ ۮ,A9l-0~u4dKNrG3Y'`eR0evuo?˭ejK}jw GRNG3h4: 8t)qW /FcEڄ$['Mo/]gXwv/`&q ||fꎵ]~;5)G/6(N}a?v' ~:8j&Rbo0xCO Z / ] -!  TR}n%ANL]۫LOw Vq/i<4/[-w`a(Mf-vX/Mx|sͧmE*wM|7hTZ9|ע.0Pz,v9a(8?P)hF[wdeFSz̒H@*7_ӑ8;:g@6<ޒnT& m*2f 1e(ا )rTZ鬏w5m5^0 $64]PyD]̞3 #e*>IŠi"d)|c‡#!k'_SsPe$> Krn*.7MJGJnލfL4.[IM B{"' cCeщ9ƯG/97te:\;[Kbp_ZXWA=(CqQ\`6.MޤWW~:"h'. &}b6bS,a D$B0L o:o*!}44c$x,+QSNyr=ڍ U"J uY{rv-ӽy"9]+V;rz;7Fe$'j빮r+HI ayܹrId+["a1 l-\*XFygxMh!p@PMD~BOժ~Rf?P35CԌ]kͳ 8 yf|Mҫ}no^r>״ dV XNO!$xjlb!2R2h,`XrTO0}0NIbqOe v=^sY $+ҖxgVGg 9sYEfvBRjWKMxz3qd!:|:OA =}NamDB~lFgɌi T~VS*4%7ׯWs|D5۔$BƩ'aެaw| q 2-n*Dg@n hYRI\?iET`:lmb 뉇!#B@&k}\JT1oZfs3aJS5f3"q-mR h+hb>o-W?HQm2Q_7R0L|%*.&R2}yjL`ϊtd2ULk-u@XF馊x[׻8HA]Yhsm@ hR;@ 8<Ȍ,;:yvZEEsjQUS^f~;AZ&&q?iUte\dP_E9ݗ(ڲ}nH:f,%ͭrP΀>}!`!7$͗m񰼜4<cǫV/oVrRʌ];f[\T:%<$Α_OAM:G;%lڽ>9pzH@>AK[D"gJ۾{`.8OC\us6VS5EfYAGDU2vWFq!ٌ7ӉA?!P#zJ]:rvʲ덆5( F̊%mm(h &Bۆb7烻6 (|<w$GcG}ΞWluulKc>@F j0#` a^*M=|_!A:hvKCmx1*9cLRw4s0ŤzFmY ixŝpٺM zy >Q#1HMSU+g.M<޿* a_z>pZݜc$z=NVdm5:b)$%}-/#5RktBpZ\;*tOnx 19Fӏ~#*\rC#A+=AG@PDD] ԉO\pnڏ:')ӿ8taV9Ⱦ%oqMDٽG0whD? ].ZHk04Q*V1Ie9FQ:)@;F[szm˸_F |Gq]&Bi^BOZM (gkG(3S0p=j~2\ PϤ K1$<tZJk.v9Rv:ɝ_bt92ȿk@p*\-%vvV')E @@1**c Dk+z}P#0+_HA|En$CwEIӧ J[A\6qebkS!:M(dۥPdß/kSwVk ~ ;6;eLH:2*rI$x]' INq^kK[2Gxœa";WI%gO+`|Vύ!;u]Ͻp_VjT[OqDN5&%Ay:M hbߏ4NPUa>4;ן+ II{iw5jOT/c֍wFϸ?$2 nX\AP8+^͏2tpDtPU^HĪg(F`M}_3ydߝþ+#lؗ8egA82hLȖ,0r)D:B{77>aB[.:b&HbX5 Cb?kCj6gجGA2i['ۼuvIqǢ$jS5CAM(lv\gZa ZtaEtܞN?KBm:c8`nqϨ,M*1(8t 75E0w;hУX7]}W ^m6H\~PQr+6rEw !t >),xmK$gWP?UzĢpDJ,`oF*bxR(Ei=!l%,8嵲)9B=Q Paܯ#Au]*u_+-]EpکV NBU<B9`;x:`xq;cJsfcl6cõ F+]zc^g87 j42/)G#1N:o:1]V2ND<\aؑ:-(uk8t f=Uz3WFɗH 0 hV%mDKzK؎lAk 9p"r~g*h.J2y&z7)}ps(@ pZGh7II;6Nr2L6;EI҅ JrL_U8"PSU .Rh;W4ߧfNo6ObY틫O ޸I^cٻ օu]J:sft^DPBRˈ6D yr9VlZFa[Xf r<C;襷YU)YߖY2g" 8nC1R:I۲ApPO zf'-b;C|R)&%IƹqxxZJ5-QtoqF 2>dW; NK?t!8:;)8O7Q*:Lk`F5¦v5C>cK3#-I3P ?youl*iGyx%s/S|3K-iua..V%;EVd]]'؝, y<ًpYC%>h@+{XK VRъĹSMFFbV.m?*MBz%n"b_67gXuieYLC.EYKwI*qh;Sa.]")S-NsWFc(<(Т9i>,ُ}%lV3%8tj*JJQ#ĩAY-!Jٳ<`MNQudF6JaF }=.ZO:qY<]5DQ"i,͉Lc>DRb|O#rua./KA] g5OF~x='B}mO 6AҶ`_2)fN&`/n3Z9zPzk)a2uXyWΜݹ4ƒ6w,a +6K ygY j'ɜYa,k[DDhd>[6+hXQYѶbK"8+Qb,Jjꯏ0$r֑L"0p=,]H%gnBG=;~9KQ">S3Y"zxH KiMCRwȭ@ėԙiE,٘v!j<$R$by 4 K䉂G4mB zH_MBrq羫 s'פI1gX<χp=1+OcrT-Dq(_ }F07׳@ 矌V>`H%7(y&;JKgń}9v CťNupzE CM [].B(H[NUWh"9|9/q8յn9++̛Jo"5D8y+HUuxPv׋40ǥDJaPg18@ kdOY7Ud4PvR-{.jM:! Ք G8D`s4S&2NQG~C@ަu]Vcּf4s`)4UwANT]49LB.}y$:Nۃ/M 5 Rt|.Pf(D*m7Dz|Mo#;6o9L`)SvA"H5wt?9Ydo73lu{?1~"z^ Uo.LUK|_]9ae.- _yu Mv?AU$.3 󿁧 8vϬBZv-hKhpf^>АlvRۨ d]v<$*v0D.Ҧ[ { iS`w~ݡvm>fAQ}(>*t=k ʏV#3u3 Q΅܋]1~8ÎάlX[T\,%l'x&[86T+niSK=o ~{ǬµgRĬjmK<ݸܬDDX7F@@C|9 1"fl@7ً=JRoP0N! nܺ%͝Ru*e̩x{D2΂rJ&~ [XvgHPh!Ae*<=-BGE`yf})\C&~ B_{|wh2e =ؿ &x*1rD?59劾~&&Tlƅ$CP+P .:¶7 8GFePNEPG?+Zla":嬟9BQƓ@Ԭ҆Dc~R I!A֕l Uy^؎1`Pnz73s 4"#/昢nK/ CT=Ǫ]mG""Hm΋ Qmn| ge^`9\*}u:[jiS= y &'by*RzaPeBc PvF˞mSgͶmJXu/߹TJjUMpL577rMx=|m2NوMvr+_B2K:rT'Ae3Pni mV; 1-ZHj*'om[op)Dq8ە4hשsNv^ЄCXɠ0=#G)Z2צΘ2hMdO'jF26!* Ngݢb~'c냡HibZ e]8Ql}O(2ajl+Ȇ iַlwס63r#{h@Yʙϙ в2C CU[0VHojr ^myIb-aIgR4{Ih :=ιZ~jZIs@"3^Ye}uʞZ~* dXRC-?9!4N<ǐjYeB>YGw_Xt*B @atFϘ/G'Z/h)\Ϧ-Iv~B2m /G =-vv 'TsqZktWtDv|!ku=ibd/ܼ= >}b^toh4gy*񋏪]Q%*j@wK`@_f;1M S# y'g] 1@%77[jjڪiO B5zFJFG9DDYݓ|2[j=XUϊ9gNR#EЋ%\-SMX}z)fDB\--fiNKQ:#Սa,6=q!}d,5mՅ~%40c $cI<*.]yg_dRE24G ¿I 9 3)"b2΁іA5UO$[ ]pAsOggbD*}7EsL٫=_` YS쾓 wwC̕tibHN ]CHp>1I$ۼ+|Qb60g3NF dGE\zU FOz%؁"9? hbOZ`xnxf5 T&27mKTv)F-XxSkܚxJmeXn 6Gփ ʉ+?x]8`L 2e$ڈ kV+Q2$8^wqe {j_ և][a:?@=dHŌ5ZJd$mb͹j;i4q$2SPY TI݉TgfaLT$C7s>`i1[Pj*2CyJ@`\6-a*9B=:,’=tN9T;ꈪ[AQ](=6Tν LޗJsb p&Oyk篾gj5 ŁbEw? EU|,Ϻr{4̴Ne!NK>?ǞD]j2bu~Շ"<[B6\WJ ncrYtHh6 p.lt݆Obߔɧ$|ʮoxcObxн%[ }+4cΈC>u UGk;K662Gi^F`kvqݶy>o@2ͲfYuR&d8vRq ں=w1+cK y\ >J*c0h{Vhŕ?3Q!U/ό{3$^1 . ۛOI_PO][w:5p]3[2ea$jۖU^3-6Lmh u?30̓--W?`%3cgA,.`2d==\M_NU : Α6o+z-ĻF[g8&EAL3c^ ۨWo \y~{Ġ&؝lJy:ZԍVZ"hQĒQr@g,z|UX[gF?kR YƻGAKSYZxjC܎qS}gI+]"CķK!Q5ԟאh󱮺bUODe}rxy͉݆m1}=Rɷ"zT6JT0F Ɣ了z|g܋m/vx8aq 2_99Y oHx2†_`͂wXjj|vJ: 'e[=E .eX2tVmGQvx^u=x- J@Z^dz_J!GB)*H3˯+1߬Sk%azzLfbѕ]}d4y鎕H!iEۯMYpRu&"O }W^K匘%0DCkƣ; fV2`w|WU&`lSY(d-cH( w`]}a _Ŏ<` 6cM=t.9[V]Afp 0i_@ie7%ngT[M9c$XlfwZxnj 3+mSR%bq%~XNJfK-ܱ"661 +j#tp S#c63=ݤ/.t<h諆5^[i\~XUwPR:жkoJȩB}E1'ĒؗEfN AҌ.['M i/Ekjv9{f2e'ǚ@'ƍ6\x7XDOA- ꓰܝcnX JbBvGSA+1T߬~Gw۸JϿv=#hy%R喣o۾mƌ (=o/|d7Ў+g_.K3Ca2re^PLCֈ; F/mrYomNZڬ.0%%⻌pӿ/=RS| T`5]v UmlHRP&uvܤ%A.v;h_pXU9*E?e |-\f;\K4GmPڳq ZpބHNK=.+h]ݯa`&mZęyqw?K~mE}xTv^:#!]ȱ=^,zǹMRte)Iun-2KF%FPNxr[86E )pC36/ۄ ٪D-)1H|`AS _@ JYgf[3&2+S{ʐ6Ŋt%,9(Q*u-VPrb d=Ro <mƫ# fnʜ/4 A+'˪|7C|Bó*: 9G_p&AQт׿hI̓,eYΝ=kV k0c e~Gj{`|q.Lp>ӗDҮm'')jJ Dl͝[|- uuO.zzaj|5BJ9ZUAo%wvګl.2;goSdARWg( d,Y-õ6bo2FW_M)G9˱F``kgi-n).̓Ze՟N,Q-:3xaX;3P>3jh;"A9ba[ֱznM*>J4U~h`{ /!yZa4lT`#JkF ->Sj(G J4WRdݑŵ G M,wmLiPsD' Ο'rj sAo^pj?ٞaRȞR`/gkJӑ\>"ρ8#3{*I'tP8$l iDu4Ϋsn"BTDZ/}bx}٨'r 9 ,Yqeҕ.c%%~yDpe-k Sr99V}ߧ.RHa 0, hwhT{@'-\5Qݛ,07 4+]P53cUec?to.V]_ Y9ψӏg4x:r0qgMAϗS;:/,vlo@;J28r?CD|LD!XK xZo_O7HnG Y""Ze/iM^.Kn?vIZv`:@Z.Ӝ?$zĠ䭛z}"; U=SN\.%W!0~.3ڙ"H-sPrnTMS$OlwC|X1MBt'Lk=,xh XP>otU6Ͻ{ 58=vPSbۉ^) B[#ʿ,jGLTr"'G=- Jv15;n>tM˻Mq׉ԫ境L1[佫\`k^\i [8LK6l }.&ctq>diRaEKԐ.XeX= V5yŽ8tSØ{v6M(7L mHIǷ4~kC\G wHmX"}IUC<+U|j3 .|M( `nO wf6]GA- {3'2f4ASk| B. |FlpFUҶNk"hi[fB/D̂~&ǵPU+3>/ Y!v%%шwN49ĝ1KpMKAbwY$oA9IΜ?b"O#pjTR{t/F8;i1Ca;d'F^؟Y(D0 %J}o{^SqNRV ( NKx1KWYP6M_DGj: 0Ԥ'#Q=/+ f2$l*zEuGp0!(=OS tۑ:!`9q Xn9*#Og՞(x9s )Z`Y,/6XAPgf]@!*1YnE JS+تTfi&Wl"p;I>20\V+2X4P߄# CЙu&R EĀg8$&+ Uv1u2 \U/2 Q댷:[@q\Ev7xIk.]K>^x) ,d2Q-%'BqMΆM9F._ωY'5$d@ 2+FTۭ~Uc@&;c3 o棴@@'`9!oMJW2#f% 0KЄ\H"edC?v>sldj\eB#T=pkָ9ׄɷ)0d-1Kyvzf:,>un~`G`mDؔ3iF'jdj׍kp\y J5, A%@ \?<$R9{!-vz?C ި81Wn/]T;Logt[>1dbvZ똗ILd} n*[4'~M(:U QȻ,%H.B!lb) !=q.V|as`BM(y5P_`.D1m$ieT$ ə؁3N"C W:AVS 8"( {PqH} ڤ  !7SLM%ouޒ]U#t;t(Jr#NΛ2bI>kM:zDLFIae!b B ko} tLؗxv8L } n3҈,P;e_t>ah\y!(ޥ]w8վ-I5S)~yqòNG><HmT^tb-YR(P"\v$( dc<"c-$wm?Hp =¢M aJa#WF$Q0X#a;:! \lV[jD !37(HPdnjb^j ;i-3҇ۛ 9ܵRr8 bsz^&>@a߅,5;N2PvtXԡ@`GH;js"A"='Fod,a8{CQ*"ŐlH>{? 5&jyJ0KfGf#Q&ΝLYHє/\"IE:Y'_-كH|Eߤ:YcŐ10ήV:[pw"s#cq/Ӻ@ _'0CeOzщw 66AXg}hgn _1)A5#$А #7L*2;Q =[;#xKZ9,%6'Ʒ"(%i12c(g ^/dCu[2UAh6o H؍WΜΘ7>bHj.qc"w-g. U/[6Pj3!CϷڡd,{ܧy%n@j0FH)0O8ͩ"Qca7=||5l&_Wx/8^ҝjO^xͧ8._i.-\JUh>Шj~Rғ$UQZ(?5s$8mȳ{W eS課O ȽXHtO1F6@R6]r;z,-Ҙ휭MMFt\: flvԶBjrh4!UIc4ZZ碫]4xRNo(F29~@.QvNdg.wY_NV\ziҫf>"(!Q:ch[kH ƜL_}ESdu(0Wx+lGKgMoKL=(6@I6BtŔ9RHp4Mz\%F^vL7Zp甯;fYK=%MA-bqqj w̒Nd(kޗ1Hfb~/D\JOD~~ dQUߩfdllaeJ'hǼO+g)w*dO̵P;a͑ )2KXJ'fl5BOQo9~բ+ɪ$J짊 `jKkZMG>2>Z/D^աUNvŎ?j35_8=_ 6Q,xMΓ))ON+ϦVv5ۙH7CN=i?c5MCB!gt7K+{Ǝ \iz uR8LY ryi,!^l}ƸϏ? i#6|VArAAQJi1ޑ^R.'p0E0#*w`F'ḯs/ 2 F͎Rr;*dL'n(G\Jc0zS"_M25tl;ףr%,$C\h*Q'.?ZPEw3:Me?z$ny}ِtIEx[ 1yl7~šgk@vS\Ӄ}KŦC>67mu#ʫjױ˓ Ҁuѷg`Pqi[Α; 0m%K!t3+NRc'#D; Z]2'"L(lx.̯S :!F׏Tzws7@B3#C.##Lm xH8~M-z&+xDI\" DV*3oa y*El~G~\[<>?OJ<1&^^0-@x|Fa67E˙\6ŵ_v7sJ>&CM6Qc)-4RBgR{P i:<-)$ c㬩F!s\}FKub}`Du&P]S3w|lThTiz ǜ裏/Sw 8c{yd&SLa%[NU*}R;a}}C}xn9r0.jNLQzSA3[GA.IL -FdL%nJ7n^pTjgẫ]qnԻ]t 'B3Ee( R-5&ƅ2 x9℅4W#WՍʀ=P>}\#]YOS L}۰ c,iIc"Nq h@D9 eV:H1ȴ3qԻg,^V!9)ZZ< .{0]9W&:FmP#S!\ͮm2foGġ6_qW1K,y ECG+y7怚sV2CVvՍ)oڵA|G૔FK "pj$xBIə~WSMzn6_y 0q/8]\8ARAλ|j> *Y/UDȄzHbΚM`J)}m9Bu)xBQM;5A^~qSlΕ-FH¿k\5^ay=b⣡[M>jwם ;`~YE >잋Ā,2^_T ;&[,›$e.iI2UIuݎO= fWO,1T~˰,F$vGi՜QQ nkE.I4w\,~l))x618O ,R6qQ|C21иA|4I}k<,֌W29@%5)JrՑeKKiߦ+ , Gk$L2DY(;ړ8ᩮMFܧŨbڀaDO՘R~5~:L<;GSbv^>MoƯjɻڥZOD,ͰBXi*xAm} 96J&As^n^`3j4qZ.F$ķ?Z/A4---t[ؐ;iET*3`[X-+.+ԟ"mANo6d3H [Cܝup2CvxiH_B@d#?2 ?VGr xH垩`&8ޞ a#;DH).z0YU#x: ffA8s$H q RZJ_2?*Bd49G`qİ'#p)$ԢMpġ?JQp\@IGWx9e6SndK-BmH'UKG~0y^8"O!*ap? LCύřCIݐ+[Ӿ`4M&Xmpcwd8Ƶ[F{ul}#v'b-g<Ϣ9Kv !&A|W3 ;FW% *c'l[@ǝ~ =n!JO1fҧ[p~6РDjG+7mNN KUCZ);ҥI& 2*@߻֫CGNglĀo#TE/-D؊ugKlh1>}N3]|ݦ7\5z=6tuVKh4SfQl>P1X,zdI+$y+9n̉yeQ A`:+ +p-,$M/'1.ʐM`=wѬ楀ft^DCsYy ϙASvKbQ \ABO;-fx?WhroeCy"@H F8詧(0LgJ,Dk,Y3iX(_$J}oP`)T]LՕd},/-<}a\^ꋵ9 :cWZdm6u4IoJg:q 2xL`>;Xu\E.EU< o҇Ϣ BTJ_N1wV@(dg& f eikG]ڤ'VnqibzCֻJ860D7t[ќI(@_&Ad C\ ɏFY=/̈́H<3_{Z8~Dj^TZA^ JthVwoqWX{Ŕ:peJGݕ_Z_lnFF/n 3n]҅=[tl:~nr&,Nz ^';H D[J*"42s?E1q z_֜϶i$})>05=vq٧a+ 6 Ld@nK$,sP(_E3!nM(ݭvLi̔!WC?u}:j?-3k,幉ܢ+\bjm JM%$uҝ #&i(ۥGUok:YуP)[9(?)ʳ/$eFg:i°$:nI_qʣz:  {쫠@q'¹i!dhI}k͑k8A7GPE'Uq]='1 _`)!-i[SMC4ӗb ؖxMWK\ix&C)% Tɴb|Wl/WGD4u mO?Pz%cؖJQGÊLbLwtܯpy{G TE^J&/L"`>l XZdǜK+{r|a#{/cVgu k³*w([l|c:,.+Nޙ$'<&<^U f㋘} _#z[.aAo{CeE11U3t@; V^JL:ӏD:Gpb,h)k2;&;Xr#gZFİ~}9!=ڌ ~}\Vƌˎ-9} u?"Wns|WbB4ѥ+?0µa3A]Ȣ%Hzb3{@#@n2©2Z5 ,+>ޖŖ?tYJ쯇ëi;$SmaޭqE/\zs -XZg4ɢ Ѫc5; -xة[۸IzܹlKDK}DIHab߲"uw5t.`#a% pdp^fA`S*'2¸p6θؠ\A*\"f9"~LBoQZyogDQ'{t 0Fg`: }tcR ?8r)F|Nm\@,Pz1B̒oFv|ꮧa~wƫ\ ww_y9K,7'[@Ɵ]JD8o]*y'#-,GB•t"u";Uf$Wyt"pB㰬)C G4h'L|uP`>ܚ o*D5 Vǧw^Rh]wmF.| &#;;@O _kz 2nuvD%}[E@1!2c'9dR2K`(K%x[b2R޾-,͍ yͱN^ot7 Q#t'K.(p;%5‘(d24B^|AekK̎Ġd9)l|ݤqV7^YSjA!«|n wܩ}%4^,l%$o@&/6,QA{Bl'OXTr⪟Sqd-`#ii+nMiޝ}Y3lǢGlC S 02ѭ>5k= ;qEj+ۍU#1'pS [=aau3qz9̿Uɼ=kxZ!? XJ! RNXe9h^tm:\u M*5l_3N z@5qޏQ'}Pi=-pnKӈ3ص4QLW$tMYk6TPϲ9J€^4A/#|M ,Emzb ړGYeW`~19=c7ߌ$s<+1r,ݢ T[cdP 'k#JeY4VvCT M˟6~-P>i-Zktex`'wy*e=ֽ0ArjzSWB3Ydfzl{ʖ p|P+b@#*4t&Lẍ́`{2!ZVDkEv|";iKaJQ+>|, Af*FY!c\L} ҂?5X4xG5G: c#Wgا%Ja_!X(JͶP]*/V;/HO#8YEeae}EݡXW_RlY&oYuHp Uc^peT!r$gVgX֫<'j Γ,}[uն^sk7xmY{>/l.]3)Znk6 8nkqۊQ\PG0rcاOG&H\rا?yW3B#m2FTnk!7ي`%Y~YSI=d`b`6uvhN1,?V +З}VOJEDmt¥ͦJZh- s稦!6^(紒S;%l^s;['Z$7Pr!!"dQAY~g׈6rvCt7,Qb20ا::}4dY>QpMmjem;4P9~B*?NȬq0JmOÍzL6I/ty{Hʶid`B*py\:៶֗ⰽpm>'I{1,/"#.7< fpv0]Olwbek`;7!һvk%U@|d BHb$$/d#1*H p(8U!rE'K(ݻM\q5h"ƹ7VG\R,:9pBd)D.1]%~wā yl<>}vʧߝdW!sh7?B>nbd(BX|*vCȓ2-ݸ8gXiW`1r2At,Y4i.MqWmZ{zu-H9 þڑDb\k.6k5F꛰WH%a 47@|JinUڋai;U"GwQ-.\*]W QPTb.1$7]x80ee],TV7So.?--mWྈ8 gx2Mn?) U^=]2]J~}u GLB$cG7JҔN9n,’ s=Vc(|LuYo(U5#OUVk-Ժ;=OFy>`G(NĿKzGy3cvr)^s1;?z:\jq|.|n6z`>s9?xoauvd,)m%^ptw3&G0D8v b}iNHtF9R,N^A1+YiKT8VXGN0pt/C3g6*Qd6!⻢ԧ\GrD`qJ VF]3bt|Mo'YcwUUHO'ZGzr%8WIO4UņзH'"XhDRăr6xXN`ވ0r> *Q3ADP_)I00YIw,uLjb&M[=(5uŖ2Yh%Uơji3PDJ]~)bOeCXL{!%c&_۞j!2Ms"G)~NpΚ=cldxڥ뭯öZY{J8cs.Qf-4m!Mf%=pb>eQYmVf?ۜb &5ӳ@&>ԤFaY_]غDݢ6B nG~O$/} t p(KCޤ9(CS9͒/Щ_[P3L!67]DOq? Lt$3"$x@ js1yC3,ٷ*Jtahq2F}ȌǭaDZ9;)JW,hM4o+dY27+:jؗx(0կ^FRM`6^* gYma흉҇|m!5>cP%ZWw)1B`\D"9*kC8 !aF1 뭦Z> aB775SWEy"d m$,ޓ3SL'io@O+{ !%DNSc ,QH.;7$J ~R\_5&YrmU9OBHz 2|ZOly% }cQ>;t)b%3ЄyCG=17G e9|ZX4g9g}#nY.By 3; nj繂s |o{Uky\7~4#ovNivG ^nKXjFs~Ќ o'4F1(@q@N1D[M*GUd]O92c=*! nbaVd^nIiwOkjy3OV7I/T>fuml;}m#7壩ءV^;p9q3f=tb1áWBW>(;)5JKhA,& !9r~fe,fwv_aAd"tM^eey(mƲxRQQj){ H>R4 kp-]HǣJcS70<{_c:dIq}}ۈbxm4p"| T)ӑ{lb;;sq!d+w 9kK^_P:+G̰lulz3u="@G'"ѻ˂H;>hkrO@.۫-mFevZ7#5 EG~- {U\Y3jpCC;=}X[h9U{ͼިV5 iɗlZ6vDS^W)5L.9_Z;@oL n-r 9b=B+ۋ$ A!F(jU%< ˲qQDֈMWW3J i_ 3d7:so# 4Rj$؃}'մ0J-]E0_9Gi{~AN5-HWJUPr 잿gP5 ˕C1Z3w'C)nnEuSdqtT6v(L@p֍ɬ}G!Ik>ȜmO ¯N1;1%٘s~;ݲXydzggzllWK4E!j%N焠 GXRO%o)fx!;lv'N-3Ts% G9bD ]ϕXSp9jV$]8%zk{@LŽ1YN,ᱸ(9=bh~Z| U=]=vz0QNV徴t5{OG-9lI|՚ռRAa&HzrTsO#f{e`L|::|O/a2/?_7IœU$"^2:^c~5-T,~VOA$9|3DX n&9YeBL6x[#7_}B 7d 0i6!hbCU$#~zx{V Nj,Me#5ܞgsRg'=e@AIvczp($b)6PBfoo 4KK(,*%pFS2lzF1 h ntQԝdtW5_wn%|?9^TR* >V r2s P>=,oԨKáils潫޺SaԈ*a}1•\d^89,Jةg[~Oi1ɷ5okO' .Y Z"[2"%9ηS"؅NyK3qMx-1+-->&AK?B^ǚ"ЂX>AO?5Pfit ͩ&D3~)P+Z@*8ロq!\w69W/n,VvYjWHU@Og%r]6l^WU|9܁dLR#weDB֤_"PTk܇ 0$k} YuXKzU9#5v Ě3&_L|jdL[꘷Z،Z~mk*|q \HU*&?c-;AZ;bBzfdOdF_6b n\5jrtہ"_ '#F-5yLLȖڰHp(ͻOuD*o3:vZve@qq朴gֱ8 +Լzfkf:=ڒjV T!Sv-@t]ǎ;)#Cߎw| ^5w"0%l15GuD$ZHMa8G;~mq, 9baaI_ ӱnk`zHe T႟kAMA D5 m*aJe+ڀ~PX.5}7c<icԏu gаu$8pUKkJy%Wi߿lMFsTG._CIF:8%…;]xLkBe}anA$L P;:zIR(.!rsZB n/uoPdOu=%“s}JB%v 'wC=EB A?EsA9(?ɐvh- `GKzL]]_|XOLoN?&phK18((rAΒfIL?ޮjL,~0%Hapپ1>8j#DB.\B#`^?FpY=A0gV0@^F&f`=T/^=01 w&Xg{gt0Зѐ4uz\r3ߥY1n$f.3V3/RsWjuiDog>j&KPD]cRͽ{u.FѾP:j/ D.wb h⦘YΣ-,W},h"WVnggI6b}R?xm=Ϲ7h]:<| jC[bPXKCYTk=Lxo)07! 13eZ^+c]>^fۓUqOo`M9yS؈[߷>ƒJ0Mo @(4<7@5~lzr 2AM4̜ҬC+~.yɡ9'3x)Q]4BWox[JXR7GǝC "G8r?芫 hv=j%X0}st ԯP}MCV"eNY0 ? `/XJWR^4P'R]L1CfjU3?0]dhBej herH-%ZUaC,ǂq!/j[bM8rC*jrS>c3mX"5斧|m#N2* d_TӼEG։ȧN7%h1)s!-Xr#H7޹MM:ǧ\TTD ;fz.'NW5/ N߿ /omJ?f(7xwfk\K_AS8,ke괹*Dχd\y6K?ٝmNW-ީ.nmzȿ9yV-pFLS;4Ȼr#ze^Ul/lwJ;ej[BS *D4 ^]wt?#bjta%e'%Ni\xL=1Dm`'E¦Mz\wfm?l @2k I}^(?U_鍶߹ Ȣ<2ʉ y\XC3)K> {fs#+R9˵4Ny'YJ4Mv=}BdB*Y 0”*-=Ξ|>3ԙV&X-S0NvT3T`3<,gZ\^nIy-MŅhHdӛ3)j6QK]n _\&z;.ILҳjC}g./x$wc _:Y#niěS{ש)7eDY 꿈E0v<ūX){̯=DX6=OǫrDeɕzsI$BDUtsG>`ܽુin+sa2koiM -( <-eK9oeT\ j^3&y[f8ԎP$_W6 eX ֵ B?9S{nL '? Qk$Vܘ,`|FZO|"e:/Bȣ_|6{y"ԮNƺc^/SWfU4c7ilAfDh.%PE'ɦG IьkyV5O?w-o- y&@,NKgZq.USsֶ %ݍZ?G43&k97yz#H#)-$}&s11?],@("Wc wCT~'C%S;K#(3o Dj?,-oi3C"B 0g@S[}N煐 v bg1I"A~,'p,Sk6DŽm)hr|s=‰.y, ɤ.0,=*y73IĀPx?qfhS]-&AmJD;vdZ@и;MhW,_];zxg}kE~!\j 1]a<}|CLt1}aRvf|DDZC}SGI{@xD@}-]2ia&8s.&=J׏%ÑM`- Jx'XyGWH^J^{D~<՚YoƦ+%(53'Z ALjF0KD!`('=zh[@ep5nlvl\Q?SMzK1"#{v ZO1i6YlNgzmh(Et {ITZf;NJ n8=e&| il+n<>H9~DC޻+obdˉAIړa`F&b/ER"n2u'r5HĽD]JمR xL٣gSПX3x7*?S8\ٕ0:ƶvI+as} [zm8{&cC qhWFu%CSk"c "9h}KC^*:k8gû#ӟ{vT޻;5u+ЃDmu{?ޖpZ`r.1XUC*5üF0e4P3 MgV? { \>cÿa߷Yb¯kFIA1QXHD@]%rA0%D 7 O =mɸyT Lp= -.41K `:$6{H><:@TJ:Ai%"yrMPGgdo7X=W^qF+[LA1tOHAMrS7\ tLgl->o&. #t'>~VY&3Jl]'vHp=0I#lybC3<[i4; :R c5Jk;d-?3\w]]_0[1qKʨqRJϢ,r LlVչKcDeSS"f=?~NsK2V {, 0R :fF6.n_[uULSd9YFtpV&T/gX];Ičf㺶q`enWVp@&Faj ۻ0<[ܴ-'Smt^l1ӱb(iHj & x ֈ?Ln ˋ HMϏDO!~Љ% XxQj.bwU;&$ \mT!{ VGSUzX_1PKes{P3eӊCɱ;R2J "Vsٿ3!#N}5YB[!Oۘ@!ÿO).CfQmehSU@* \5Xt/R+5x%GJ&bVR6'x3]< 7¯ONuJ3-J<(l$%&-usv!?@N!ugh2&%iIVMZ>"A^We)$P9vlx3R'/I \/9ʙPw~ uup{{Șv 3ŒW5< =v`TP>r FXTAlL4ix9?'GgΝ,͑BF o:yÐE]R<|܅Ɩ 5?'q>]:g4&Uxk8-$]йL ho5=\Y0Օ+j!z9ıHQC2r$&WQ^ %a'IǑ-pѫNM #`(WkʻzytY ٳ, K-Ma1b21),g4' إLt霔f?B, )`z(M:{,!nJW 0Qzy.@-8RZP[mv9)bP7q@ @Q 4R ZAkgs"^ h`7K{ 63ՠڱ+}OI{|JB[ct#-ώ^~ PC5PEk&/Le|CSg@㞌>Bג!Zа~Iٽwh N*uӻQ@9:pݰqJw.vkn9}hQPH:ouq׍7Mzw<8cO Wx39n呖}H>(n<wf75 #Uj,-Bt/ ɳM__ևq39m[oA(F5s\Rl\zj![%s Q HpJ=i#4 ;k 2Itɻd) mA&|_t oF*)% ͐]:QH')âXRf0%ieAbJ±$LL4yYC1g'~{$@a e@bWdWn)Ia>8:)iH?hIn(&nZf䘰ɮClƑr6"h-j@Ä $?ZA8C,/|]G`F 7֗QSabGʦ&_[ d3a)\6bJRHV*E^^]51tBk^vQK-u@y[ׁ)j+.uU I41[Mul{%A󚙥ҌK!V 5MǦOm4a.`i.]ZjSɀ_$NgRwj,qz1XO7O3}]AFc?H~IfG=lad=ֽ>mRAZ k%;t>KKIXnkX?Kxޮ+ifұdENU>1vƟ=u >]@TEQ] aA^ܻvTTpS^vmp䎷WhF:FpK,كl;IqZU|֞O 㥭t4XDH4`&/I*MZmd >Ij/@-w]t4HٖcY1m.UTǝbXbbpfZșDp.TW$z,~ )@)r!o(mzdLMpkoK Zy\Q:oʭd6J6[˱DNq}(&^dե3CR9 u\:Wa**y퉷ĸ#ԲN+>vS2yL503\d:|_1v=(2޻HwKxS T'U0~/lYqL c,►7*=#GX ǵYf b?d1 EQTQdlM~Zd8TV,D9ղ- e1ݶXתZ>9.Uo8ByV~dNK+58XwlhǦm3<PӽR"3z4rsKԞX|̉-|ӧbo׭bZs#ާxW4vH$b~DnjȒ6QXl, b >;UPn0xfl3tj&̹+YѹuShRwe7Mzκ5F(Ï_Q?5  ?q۴&)0=WSGB~gZL#cҺFK,W\U6b,84`f^ۨY O/E#&i7qurF.e Ja_q(]6Q˜uxXWW 9x#| ێ5_cFb]06 _e~~]~]T!Z~rDB<..PH1g)ͱQeȌw (j% պ8:ƂԞ nF"ڌfxqC"0 ѿe~muEzuWF+@1sOSֳ;2@X~AW;LIrp>-Un;?8Pn)a,tI+@6ٙ8^RIshiH|*h@!I#?ʯdZ,|u@M0`A+eoY@}?dM Fޯ֕ nɟ`,d֮b9PbSϯ x}8(>˕+#@1ͬXD "b+2L&%:{ r"N~%қ*÷iLns#[![BMt3ݴ7c)h l9L&уۢC1U_=ߟGG&Fw"N:b g,LnqWlWʍNپ=Nrrߑxlx4# ?V\ځH{˹yyp,싡X⛔)gJÄf%%~x!ϑ%;x[ôPvjGÊ:GUʈ9 &W R׫ibx*kGXWk_GR8T?*_Hc.J%7W.Kk #Ch TXo=F\t%8UbV{T CX#az;D/"0R-m_ Kҁ4HểjG1U<%bOi `ZPY䅂X|>==8DhõGMaC\x)6M=n"e!2@˂ Zȶ'=@B~~?T z# E܆dJX>ǔãjL3gu88?HVtMe˘N E"iًm0t" $U,q%1A q׹j@ʆI]Ih;&h ~UO|S4zMsz'we 6_.[VP.ADf6zy|b E槟=|ǚLvz&TB p5@t_`/GPJBf\1D2a001D HXen1g;f `ɈyR?hMdj7B!LPd%)V$-Wam@R7gj, 8HpŒ~Jn{>kE@\׶efob`6tFDʣ)5l_殓F_tua_fjޯ DTkE @_E,* )c4\d6%3kC64}-(jy~U_&>"W򜨱xr1^JG/ *0/B ]wVi(KrZF ǎtaZe$~&yG`K?)+k5)a~8vby0~N 3zW6֦*X1~16j$3ZKT86g7at/\ʝp%K"^8e->`3S`ǂɷ\jA<UUs4=LRѲ!UAY kP^:ܖsM(A֝u+_sLOʸ927;kGd h4*ݑWoI!8"gӺr-TIf/b액6iuH}8ayfTx̏6b~3p8k}zF'>t#l'!4~c^&Ѿ)Q9v4 H*m쮡sUu'D C%ӛGh8ы8GcUeU_F9L+vL +I*U7hr&iS m'tF&˷#n#S\M'u/ \@=y)Jk ODtYx  ^=-f$g L0X? 9E-FsL65rX]"  ( !Μ$;yw*V=!{@.~1ooHb^sop"ou9^yVm>=C<2XU^J,o[C뷋lP[m1iWN[~*g̹o$Np2݇=RK15_fT6QB?N$ZCH#mʎyhv>dB}8t)!D084C5~Lx%k5]' `z5bbeB̓$p')?l駏 KTjphzd?8I%9)&qg$ L,O߀t!D_| J^ 13T GbNRM(x%1ÄyqRvx;?-l/ F1]$¦VGCk(T["]ة֤cՙju@]O !;M9C+E5+-N%vN EK-~<TZ{C1N^ؗq="ٓDr>ڬ:ۏG7gzR $sE ΃fr wkK"kD 2%&Њq"^T)Xsˋ-1Ĭp^Wpc`4 (i;;ZQ}Z8̺r2PZO9kF(7y͈v2ɨo4!~sV+cކ F1;x~f!l <;VɽFFf:T'F}8Wd|%5NdcA/j![lcQ{7)C2uY_uoȤ%i>cB<_Zisl9_#Ro0X|1^n^6[^{,9SͻYP߰viHI'_~['1F)1?b*Qcխ\@RVj0s/6C7>Bݾ>m#UltD __Ċ~y=|Uk- v IޔT3]Mx9k3}.tysFr{"M'[gN!zO9%3G%9R#oE?Û촃_Ga`ɡ4Ͼɠ1)=7%&^#/-Z߯9N;@mx {! R ˫N(C)&g(U!f١(t1_؈7Ng4Hݮ HA%MUn⶞ݎ-3D q>+ Q}QCsnjtQ`f)y+>E9|$a_)U>u{p<n-Ct{azsma%@QV DiȀGSv7,싞Os(`H\oC'cy<u%)**@ 9܎:GS]*Rv! ։i;Y ^G@X:JJ.]qU㕕'k>> rųWNIҀ=hui`~/Wew"?.`)5uJbٚ&** )=sغ&a,)@ֆt$|LDlzp·J=7 Np\٠XJ x:gqtB E>jDYRO=0#T s"Dq+9 X|'̇.ʦxMƓy\ߖ LkU8xDGT\ԅr ǡV]܊y~drO2Wۜpj Kֲ: zcxZʦ516/51—kirV'V_lҺȲxz+W}=|O= ̳WN&>%I\S@ sFhWWkgd18MJb47TUтP^S,gRmeŞÉSNQ8Y~>}O.T\DKWkZ/6|≯\X y5N:_\`V=)ہNZ$X6wU?@t FIM1V~9!@=NcȃTsVJڡU6H+ 7eA5,|y ̊^0a[x&bj4Rϊ-+hBl@Q\lY/GΗ8 3rY|qZ=ږatʮ֤',Rn̏!@[ [F{嘰tw:Ojq`p[H#ݜ OzN%Lj4q0*VJAA 3i=JOhGC0>-@p !O7v~%"^$,xk}ߨ+M'04-pợQJ.;.aJ0.Xe,`ZO b@x$ʹVݠAZϻ]nXa=ܢ:Sq{L&jy*tk9oJ-BcZelZCZZ~CT ܍ulngii;^FP؜t q!];_&D] bs[ӑ=fs?,S#ʙ_i|^1zk'.dͽS7KXƐwj,jKDs?uj%uIy˾4jd5!@%<8c$t;Lx2D| ?y9M志ZV1㛦jhb6gM9$4E߲čonc׉1):Sb64ABbUMS,Ê5ZZV>0CdMrD ʽKkt &퇅l5jȏm+Q֬6)ИaFT8H,S~Apww~yDn A  OWiM4[eZ:\GeB`OOa. Po9~"~2v!/+$,|:pc^" 8m[!A]k=ex xV1fRAC\sPQ=ޤ7h1pQ .10\,wvDI\LhM sArm * sx@$qJ4{'Om+v A8+Q{ca`} QA?pN̜-20Eoi$u\g3QS$K*;A72T(ӋAr2lp^}m7rIB%jS,.b/\_G䄌seux+ޝPw(?B-[b$*<\t]Vƞ;9'0 QS5XPp&j[ʃ$H94itZyHVB-fqPoXq#tY|r2N}pbmѼEMj`3.Ȧ%UTi?uU(J7-ħ"!FK GyP>NXdWb;p=Eo}q`W;A4j L@aF M )QiW]c@3pTвRVߠz FiIIYCq'_ vKARPb{WlOH|qTv (g,Cok#&7,N7&3ⴊuȖ{%lG|M7}Ĕvڡ}M %pzISg4Fuz*&N"7IeB9/O&vMcYXtʈ{#lrꎟ)^)!H9U~IbjVTs;4@KD;*!XV 2 j|鳄_Ҙ.pc8y B ]Cg.ջ>¬,r#O.Uk_PnrG薭8?ӊ '>t rѵNd~Ϲ4`OM&z+/J]S}L{:i98@5xzd|>)%pH^4lұ ,M& 5jPRI+ rT~w0XCۥT2~hD )F?nNSji]d\zL/Ix;&˃5 '߻5 IqgU(-u09ܶ u[,b/myZȉ]XyNKo f]?Dy\'3<եJ9"Q\pSm9P퍣bh})*wKhBXS#*𗠺蠗]CY/ukw" 3zPUMA"]e¾䑀~ {sP"_lw75~Ne\8Jz 7筌<{)jU-yj&i炘v;6'KFκu6K5%,*[t"K og05yUwP:xdp-vWf>x޲k.S{׽ W3Tv݁"x"4Jf͋磉=($cز8/= 0I}6J}F%_2j%͕u*= w?$kT11Ne=!|^Ě]qȒEe8tt? Յt"_E'哝lQi_'p'zA,>^`R4i**>CLq+ ȫι^[MW2kٿ!7W_R[ {ĪN)W^]bҁU?.^&G`T˵0xTedb. Hm4W{wԭ%T0][,?EQx=5Nի}qB;b-;2θv%,G9 g75JV'R-vN+Dk9bEdhRm6!\yĝH&(G7YlZMzgg !✓?\H6h೤؆oXo#hX<-ȶn|2= j-Π~%|U d{D*d\gmN-_[HUGѱDl2NEetop^"$1rVTeU. S8 ?ƻ"<`K)NߏN;E#m4 S:I)&Havڋ;_W8a`זc*SM@ egcT(]n2'=5 mRD)pJ.K-=d!&5q̞-̈vĬ>E\ Jy!tZ0E$!: 6.A= (ۚϓR Te NƈZ_a{(ܦ$pq VW TY0)F__hs >ĽR-3WB13hl&OFW'wjSZ hh.lVs!wZttF!FONT>@E$[xd;3[k`>`"+Ϩ$0/tiV: /mݼ/Wza(xmZ~hg)^%b|  4xrXlwfXC FXIX,VYfĽTg+d@ykg5SB5磸A}L|fםtl$*l]Cim*Hs .YFors1#Z0 rMaZ#\]tF7Znt1.܍VBzm(;Ewd0Jrp|o%`ki˂ST^ʵǽ;[VܯtɁZX0 5Djc#wLYE G!#;KSP9T'xw?'6eb#Jz{1PTD\D9IJfWS U;ݝPMO0G:с Wu^U$:eN#gvrD.A߉{%Kf5hQs .iuE6!kt-,obίGwIlq{j^f[NoXJ,29bDqM{7"1?? $W^$ZElϪ M%{Q:A~X56Y&(m$0#4FS ^iB2XueMZפ`ˈ8M39s/ bkƜ vFPRm<-Jf5PiΑeg@@%?e7('xRT7'kLQ?ȢNx0L5~3ΨL1u뫒 *K'TN"F@eo湢F"[a\sBmIg?>йkiM~A߸^ ?@ZMq߶8߹ճi֟=U\!%<1SYU@?ꓲ KΛee;wd_-T 1Y` YGenMHN1Z.vMz/%=˨#ܚn$2f &on֎@ A$in9=,Y܄yPu[H8)aWItg☯Ҧ՜YZ)tp@u_VR s)tr0ZHʖYoQ X3UnXx٤mk I!ZQB$m-TqυbC? DzZh4[R?QV"Z ;m=9haiDVjH6GWʵ PS6hz[+ѭ'\跽]CE~|2ڗa_&K`.n{[ݬyG\%ܺ] cI}wc_pxm5-i_·}5A(oЩ; Y\ =/R(}n<9AeԹuO|x53R2*qLJSm4kp;DۆDm^]z-]`7Bs:BI \z.n 8Й-:,OΛNa/-PфAov Hp G?7J — V|N7Nv ї]gl Ӻw>\5|A2)a>֦X'HQԧT7GT~EII qi0.&qĨ(W&Өlə}< w0K.Q nKމoBG̀qepaݥ?&㱎Zx-_ /S x_YPF颊6j6,њOê[-<IV}54 bM,|Hb몵ٝKOԿߩbS t(a.ȷ7VYsx3yM>@v- $|Kcoݴ9NPLePHAXTmkK8Gob;(SßQwJw{ `*~Xkᵨ~̫*R ?Ա8l/T6g#Bfn]fhS_ 0L/R!m/u.ҕ/(Lb yi\R}@xJ,Z?e"{ǐ kA* %vTp4%k:!€s{A4nuoՓ9+9{ ;[!y(}U6dʪUJ$~&9/xZZ,+ZUN7DzCW|OB@ډ5TlԌ&T̮~9h7b@TuCO09VX߰AS#uRf8T G^|S$&5?A|.<:3vs-+2*N/ւ 2Wc5v$\H#$ԝPf|r~}_EZݥb Z|:8u !¾s9AyjPVSE"IgCO/pEy[*} JFnjXҦDaÆ`gRܻflQ)9w%3.P8R#IgAp-Ej쎕3h)Vt]NAnv~E`O4G+㌙,R~! FքO3* P@ <\;[ؾ ”?-(mY`'JXC3oH^(GqyUkRs+ z[Ks#` AѮ G,eZ|,(_amaykA̳?fOޣYu2V|hR^JOMj&hɥk5'F%q3{@ZziVY^AO_}w: mR_4žY D׵ޅ 5xReR{/$CVSTkRڦ@"5"MAYq>Bm.fhPP5O2b. jQᐎ&I +"vZ6's~G(x{lkc;"@,N5YA$*ܲEC|_mWZiynHI9ǎĮlԱ'Y'qOiG+|z( QGt 4O>P+ܪ8U͎d<91ʯ~f)ˬGz xRXj T ʔٳ ̞%j@~rƒabUni[6ᐆcᅕu{f.4 GAcdU re@i_, Wqә_WFGU0ʣ XO`dh f{b2oȄ6Di,ε+va>2ǢbSғ`j~ztwiga0H3<*Yc8*+*-T\QS%S1DMܵG)X<p/B;bi525z  qJ{$X2֔_%I01(NÎ͵U> X6!ԋ?)5$B5P8z@_U]LH2GHfrM7XcAi&IKZN1A~En'-6&Lx'p4>>Ȏ6fG0陌fk1%A],*Clu\db/FAQ*S<ĩ|ML׼ms.-I)+ˡ I8AO>O JJϒHOO?]3Gg^SoښTiPBI[1\ru]&w2v_r0b:Ydw7>]~JDrA^m~q "xS߈{qb!*ߙ 5- bO=%S|D߇PTi٠lQrmH_Aod>'AT)[@l%RV, 2'3]ZhW,;LpwC&=1IN]vUJޓ+;?tDvK 9agwc5r c:AUcId)˷a'A>Z.Du/ʈ^=i+%mt+V xDTQ6LjROгӅqŕ6B qSXհWO`__$&"O4lG-ACjvSDI`7HX !6F3r?~ Ez5`W>0%_Lj>KZlM!50!ի _:WܜF' 65΅,g΃fKNL8I7م9٠@ a7LIdAICR~=YUg**.P4o)ڍ`[_ VY;ZR˄akMI{|gIb'>I>IxkF=(\`.ÏMWK*s˛$pPs-s+T~>RIyP85?F조ѱIi 6|DžDK9>P:DTGes˖(D!e#S͎YwG_>{ +$U/q{܅Rܷ"goE󹻇Sg-'e--Pg/B!X_1<17)}xO)u儁 &||H/T˅70Nub׵Q)H2ws44j#ϗ+9U (l. ãoLōvxvp'0k4^ȵ+S/JoUbE7ś4z4U9 ی6%?.b4r?YfU4++b/dU}UNs5U)T X&\޵μ`ĴcdL`0AQ^\C؜?4{YY_N`8jz_;o RB6vhn<QD#J[$Vݒ\7 Y{4FW'e2GË%q`AGOgBS,aI\n%~AK8?'ÙnXwR[.Y_5`-Z0#ȾMRBXHa*ZذP- K~m˶ZӀ|bc 702tRQ57KF;h2[h) 6 3#v!J;J E1j̡A@L}5uhQ{b?ruΌqem2@[DN}kxOelF~T bVpB&j] oE2ϊeG3 xi_LKq"t%Hu.<^n.vqF1@[Q?&iPlVU_lFqb0f§VCyڞ-7FKrOB_df lc\`tNxE$c`Oþ"HEQzxG[$]_!0aeC+T;Ǫ8I-K(@u~$5[O !7u &pU!BVPԮX~.]Kb]l;Z%\B֑ި4DDm97́%},&6/H 3Kɖ)1Ղ>#_i>Gcur@*w ow75;ϿmBnHa24$F{=|1W}+d*K0N-*(4:ٜhiySoT~<%Eμw+ ZWp7(Z .!rLl/ X,4>ЭMҀAD\ъe.w*U6Xj_6 DA>؁m sYCMt/$HLǡ67fUcg ^vu΢B:?i4 ?A_Ao[)ohytќNֲ@q[=G@S!R^upE/YUOҹVR uq?4;pR;^Τe x{jE_<di6/,s_ xDEE٫zbPWQ=NOaa*і `%ҪU-%!> Vk7yD|1 eܷNH 뻥HuʶKi;]˃Mo2WMõßA[;/u;̏ɟu*@Hf,)X iPx&g'$Wz3* 8Z^U+t51N:E-Y s5K9g/_t9c]:`H1/m WK2.?Kmc{g[~N%Dj98Wʬ),t1i@ώ:~:Pjhu7 $_;+~B[]i2L&X)S\~{@ E @'" =/޻W4f4#QoB57lA]$m~͜@/Nik/2[/e(I *hc!Bgku~5=DO8` 3Gbȝ2yXw:Wzzζ:qjoOsx"~E#|jRpLaOmj8F+8wǼN~somUEOj!Hc _/?_`2-s Ht˦ʵ6+\1qA7buҢ@3oeJmܽ=V>boLP\b7#c"M3FtaPZ8Sq.ecY< $Xwysə@#ceW+c?d?~,F^zqNUF3iML.L%fgcĊEc$ݲmm7K#uhqW51I=[hʯ.ZP>Kv/{iAOHJοcŠh skHVm5/a:IdhH/0:sKAnlSG_c|sţ $I8_i O;H_n=Z6K;8f{]P\7FS 5} xƢv,[ !bi0Z`4l8K%U~;I0ɲ楈)BU@-fNn[ "BЎ<WZBE#f]JRuP\cJQGlOr.E>~0G^Ya?H,vj'節YʻE-ÛUxx5:G2SsqLRP /_ߙI:׽4҅Pj"(8V-f]%@qHqcyX SJ.N.ԮQB;{pNt: ʢ9ox `x8n?J&8inbS 2l Qe 0>xz ݄\ȇ]vpEKigU6YULWV9[]S1H`H. {Fclǹd[_lr$Hen}׸a!&]S$)Zz'ئSGHU?q BJ)L!T5\A5:.g\UqqlH.`цq)T.K@|9|PakN&Q|?$$S鈀.AR𻑧 TbE̦ |⸦2A$P);$ų"ߕvj)2ޝ@Ds8/\sYLF[lh@FI#6|@gDuH濥. rZX1"U12ZOyilŒ ViKɈHV1dw˟vJ ne8z27Օ=?@盉å;ԏʥfZ,@캦,nk]TK @.bo%y6i-0>pVT_ӘM}d7NR8na8(K- 5ѦsG&[\$̌\!gf4b"+Qh)Rx3ZOEi#Z`Ѵ`c_*>K "W'M(EΝÚ ZYa+DLxoj5d ?n9Z=en>ZllWeu噄ij5j)+83s'!ۖ>muPͫ$i&- sjxSNS#Q`]vY4t[tҔY$qՖӚԔnʸ>.څlw])؜"'M̀q<@vX /`=>%M2Ŝ%r| ܑ.X?ۭG)r+)1:SN{DSiT\z0<#r ?o\F9pzt )B@m_ϸTc\l_z.IEޖR[Cje\#g"%H=]pd{ 񼈻j ' `B;O,G{_2R/&e{@?S{/ff\˥*V싅LyAO_na`kVz}2} > ZrjnK'?6 I,bb- xL x4V )#ltV $Z8I5=Xh| >Q|ХSS[Cu/2r3-uyT2}>u, G874Bmw%?JPcSu >`* !ʰ-k]Tn=PiqQe@$B,V>+ ) wxS8OcK n(SZrbѸx+| SnxI.yO,j! Y8!Z;ŘS 2=\\r oE<]kfļ8/P?vJAia!٩;l'Q0*8*E8 Ћ˩{=٤I!t[,Awl^θb4I2Cr]=FS ujlrߥ˓*4d :vP^Ow X,O劓ktT.pX7M;u; 4\0O'  ;͵e^ys^̘ cqN.`<7Z l:7Rπ}p ',u(.V5J+,LCt \Oq^U`}w[kU3~eOC'eQ[AR(h;>$tV[P]ˉͮMI +ZҌJ9@Ny5Ћh%zC՞~ \1 q¹xz n UIVnP0jGha[$ hP z)-e܁8{MYC=Xk:isD.[HrQG"xiҎgOvCC9aQzq9r1(͆٬#^ȃq4m!+0nG3X?̺c3 *3G#fVS VI.K q*M0Hc6I9Cfdn.`IG'a%/1T_%26REh*?ڽeYo^!ׁv]BoOwׂ dͳ֭c&~0@.JZB~$)#6o=41XCuEf?hAeUdzg+ SC#¨ t>WHE5~*6(R#vPydk2d%FpU9T!ڶrx؎YnyR|*"rg~R>!Uv&`6_c뗢p9qt!Z^T8zE"v: uIH(ÌUkqcK\ur _9&$0b_Qt}#8>2fO[~__s2.tN{0hW2ߤHjrxrGJActZOcjabE~ S0^n:{7C` ּӧ G8#ɼ)nMN{1w6!`i[˭ko~ߝeQh[?m421"I NkzH ., &Q,g.-7=׹Nªc>S}47)_Ēt:VՌ3q3"=pgp0~<>V#Ǥм$c#ɇƕ4W {Sgl%[*s}YDzX|i|.ڹ>5 >(n?T4L,ke $'"!sdG=IԜ)jxsUd} UOW$9RO D2_cC=łGg?˅iJH9N,pca\CD{y6?f2ڇ0y#udu5-'F1(Kn_vÅf6ܝh{Y1 8wM(d.oq4- ǚ4BOi>֓\e2TtJKbtqThK/戈eu[q[^ca蛛<'O$jZe9"Eu:̬QLD".f E!W09?]jGѤ5#PlRcaoH8$&^FwBRy{Օp/=XkUKVvK6رK2o>XPX!=ҡ^oT X*|ՙƼ o%獓8)P#޷/A`u53jlXvҟJ^85e||-ZxIPxcz+\n@zWqzL +>P,;sdV U@BAH$lJtОےK.n3Z}׮= I<U\c?$|֗\ Bc5#.I?%Lr`HqvS&ΙX,le?4N/yQ>P09J^Fd#b2"R0FKRJM''m*(+<ϬC3SWdc@.a۸&CPMkj}f켻'* Si(01KL^J᪢9)˛020w-l ~5}i.G댩d0F6FLaWB~FysM* @'/_+lQ%6Zn EjPab,c~AbVɆD>T9hr%Q4ymW{L\,x0 ejBxaE !}#56bY}As"?4sMҭt!o[dqpDԑAzBXdUItMS79 7n] |'TtI(r@ZߖR4gV ujvJRQJps @JQ25t15ĈhBd}^PT&'5G$ODv1!*8osAQ]&j:ΩϷp1Ao F- n|n;sxEd,;)P&/ uf 0aKjc*G @0s%v뜪>T.xŻo$f󈠡.@1^X. Bo-S}& >WMؑiHfAqg1sy@آmrC!wu< H}1cobt HV* hhq<'_U77FDAS:/Vג9nm:5$)+;X<3GZ=W ǯ:X8pMʝWrH(a08y1䒭8 3z͂m%8+5V7o#]i- NAcN_Ta3R]PYFrHA]~ЏygiǬ&[8](\ ! ?ԔmF0R-G-%K_"ZP<"x⤉\C,H-Ҝk: s<+%D_>Ek_n? ;GP\Z fÛRR 'E5 =rF_#Um7\4|ڊY$Pj;pgOIn=++ O7oIqd-}Ĵ\G3-ƽy5GtYʔNx ^HV{Jh$=$VOwXI|v"H1L%>6o".kQ:v( !yؐpD`9F4yd/OnbӿFS~N59O㠡XlX2O">ƾʅ(C)M Gn[%e7SjeK>!W cWvT#Ի%᱉9tKxx*;½N u;G/پ/  lmz'FaߏCߵq*]1}H Sg&:HM!2,Z%O :k8V¸fC~͎ 7 j1iF 6NHNvuDw+]X -d=b\_S;KZ!`zUՊv5In)تBIFS4$Ն#?pBC[銸,8IθEO[T*#,!P&)+aGm{=U+9տ3 rM~*`7h~(7Ԍ|/"ېaFIrDQ757̐<:2VYpm/VYbKqё:4g)3j%N$<2-g '̤G.ֿ!kZJ{p[l(U1pd[sT׉- Ǒ[ns0FJ6V8]ʿ) G/5uW?<OS5id;﹈PeI~e$V1"`%W//'nZq @nGҦ%mt=~ u75T ll/>nXsP ?kDnjU-ჴ y u(`BKMFd%JUӢʬdIcjqo34N نK:IRC)pVBt+1׎t o_"=j-XbԼE)f'ghTT}䁠QaL^ׅ%`fxK}X[i"k̫P aVC5)sҾsmᾠBuk#!oPQ+ CI#`l1 l 4p[6^`;v\lHmĨdiYXM # ?\@m\r%_AUin{{.S$Yo$0,TkAN؃N./s F@"~Ŧ1uE, b1ls)ѫuw%`f"6>Ui$@(OZwS[U݇SPt0A-dZ=kX(y{f2`kUƐespw*yҚ<1XV"8Y$v+#]:Tܠ:%X]#{44D klWöMR9kq `)gq<0AK`L譣U&@zCt: ~QW?KTO;Fxq[Wr!B[\<|tW3tޘkqq?U(Ԍ`g x~@Xvya0KWV0ey)~ؠ:7L$]VW覀%I )/ H3/Ҡ9ҁ8?kKmg,Gu^U:UqعEϨB_[mI%[֭lj{~>Ib(05y6\ϏGE,m'Q֍aH~+ozӐb+Mg(ȓG RNZ]W<um%F U┉TDw3#*`$X%ž؛̐6,nۧNVyDa<[)@GN3P-VTT6)˾ve*qj$~ հ} VZg[; aAmi*gc 6GOϙz~C{iT@;aA4̈`OwvТBU3,v8ՏRa(zH(|9/)>RHG||65A0rtc&Ɋfo4KwU|`\S@At?tnm_#+ *as.sJջ77jĂ M<b%sT AmὯ~QPعOU3Q/怌_'ry[i3R)qn$*5)jݺJvz48E@Lhg.J9ם{;Yy^*=ߓH݌~:0"ד :xS9J/ Idq^1m UmCbCdfcDI`S2I7-bF\;:?UãT-590Az/FБ~Hv/Cy.8窿ڰKvկA:%YP8&UDŽSߩؓXǂS|.[Ug/ARlQk~!em,@[~ Ud~g )+D2V\iHaDքHlTuX=/|JV^\7cS `ܯ0NvK`k\*\(;Wʀ`BW1BgvG@޽u? ''}Žq3ܔ'F>\#Hb :UP 8'O-TE 6"fxUW(( 1E%2H< /َX%:Ēn*<ނ#VRRӅUK /yyn3! $F@A`DCXp&"6K1RTQ[9{1ӦinzU5,N0P(+eEGr0 dC}:At (hY⊢tbIT2red0@4jQqS7yR_(kQro4̾["\fKi ؄YA2޵)/#c}{#3Nkxa49bC`*XA$:tq\:J9+oUnoj(uNA@P\x+G= C*W 5_9ޯ&w ApyֿSդ[^<>s6QY Ll:z@TG& ^X?T?P- v 7$;F韚|L~(AۄF$a>+܆" cE2sdcBHO[/8t5_ &fGrND~,mz e#hpL29rn-, "3/FD!K(e;ɮrAѰ0?(םTÒ; MQqow=##+_8ha,ۺ!xu~:tMsuYߢ j:}Lb^+4 Q'tX& h5ЍWgkqU?/*阵NLen:ɪ6ԏ4G㠉?iHYR8vW,|*ؑY\saP-Yf3QmHZ޵a3XC.E~%/ʚGYI#1d8"~D\qh{ LaȗK|g>^4&й)$xbKP#ZrxB>e!pծJfgp285 q ݟUc}cDOKpY:! :PL"%zj@S*Z\=RdM<(=*7g#\g9Cxo RZޒy}KR;8UhƠaߍ(E؃HlwXjbgMDj ) T?'OO=t;7:n\؉JJEpw U(O95^RDd_~-| 9B~!28á[D C <,LXn{(bN`¢eiZWeڰ-}j87[Nڠ S_SCHF6sFH -CEh=ÇUEV dTV~vF>p0b [K /NLU۶JyejV|7j,O_]bX&"tE_ ߤ`3F~k/J`G'a/MItE_Fzja$LƧ5MPFL8E"iinh,˩wG9xş|!6m7"S*x(Uy'*ϐ J\צE]5(O"6So_t!yH)uA9yş}'2;&zV$as{}F0uYceUG+GY|'7&?9i}5L[7h`&AVl~F݈NK>3BZT S|Pd>ȱ7*p@oXo .w L GM[ iXG|ODTxw1ds{,[a>L& [,ꄻNеC bstE -R.epi_κB]GRs5k?ka^mBYAT#"ٺ[^5) e0qؚ&42u㫃 $Xܢ%Tņu+Cf'ſ0qܘeJV{{ו%`e瑵\ V(<~i!b~ߪP;x 7ՇHl5 !'vp3뎀hx}4zC+S+05;} WӍV#K9cs)W B 4mhQ}gZ5lS~]镶(b;C̻ȾۇtܘIpvx܇ĭc,;И˰K}y]FJoۇ 5 u^e:1QGWxq~oo7*)=6K,/%3V Jյj@͗OiUv-tϾ-:ѦM?=Y&kHrP}*aXKA07Xy ;NyXr"n͆,mR3)W䊩褩,K:4f-_\uy-lu<A݃ʧzzm 4Jr\u$9]XkrX̀X qu(Wecb1ݵ{LsڭZBj[%Ff|,HlQfuݱ@$=fw^*:@f#E/1{xkCPQv qyQSGnZE1.A1Wbr!=cc\f᪉Z pE*; 7]7ʢǪ lkJRfx7?B;5ވ k֮JL&,J?VTq/GhH;:_=0B1.41- ?yn',0 Q$[\H7 GVgxQV0K+*|]j|s¥^a # 0V$^!)U)O;Nybiz= !j`z6*e &~ޏϟb-+xjAh4)s`J+ޥFA|~HՍggi#(^1̎=x =hۿAfuwA:HYYc+q~F{6L|:E۩0d>:1wtaH'DDmMX!d Q#OgD ދZpW l .8Ü&m&̯:P73^[uOT{+VtՍ|kĨ6Q] Hݙq52f6C{(#zG.bD!Vԓ U4Dƚ@(2`.x'o5#+HJA8CD0w5[95qk4ѴjqZ] }&)qKg?UDy)G  m:%xp*Ɯ*lנ:vWS*8;&}=Tk6:/5ȮSn WL+EҫK9RP1P>oD|4 &CK+>6zt**O壒P-cW.ؔa?;=@.|n1kk YW*lSHCAq &{Zʴ҇8;IpD\)7, _4xmw܎5_1O;6@HǙ+֜\,% \y=O=߭Z4,^1[D,-cIQsG}^Hۀq jny/+o&Ϛ}(~lUCЫK`cH0]j`FгŻ7[Y8opZ*Ou.?ykUE^rBٯ@S4s)T5l-LR!mxݘs--<]M3MjՆrWH‡b^Zuq^)P RpWWMO`aG5It+pIh Jwb%ڛhcC~+#rcߌM?豥n^Ы7yW0AQKR½ ~`{<{T.MlRx腇gSKDUChx.; .1\KqH H$;( 5B3C-胵-"lVU3@&Y͐s 7@|gIQLr-!} қl$W"a/NЙЁVv&>LJk4HtS m\gݾ@@l$ThFmU)F`S])9z3}{TP~[Mg1y,A >D͡GGԉhP0@R"M- JUifq nZkI.-a&3קNϸi -PFi|ܱcNUu#k&g)LuoVG. e#Y?z<|؀S~"F(G>k8qS?e^)e!%) BN'̨ɺZohgDoiFJWju|v!DXwOoqFauLOJYj*%t9ljqĊSC߉ d71_'rڗa2$dJ*Ѫ^{p70K^ Tw N0%ǔ!.FMEc㜲$_)TjQ# f|P ک@Ӓ&S>͖;`pDb=al?w [tBWU |:OviHN)J,uˀj~Y3Fj~+\d}21:-PQ(u&=@ڴ޾Xԫ?kbOym: ʋᤛY[lk&Qǫ]8^4%6DcR ތ .?N&W= nE_.Ns̊NX\bQO^gBjP%V KەXۭ>ʢ sVU`wnkn@/PMNLRE"m S?ۗr]-3>h ™b8S)Qr~Ml:m1=+;c̿M:hLȹi0x 9P5v,mkC~grFR< s<}g\4[N0DV7l%;/UfWI1[Ts ŲIKсϜkHJnY"?pJ@,#aM(s aN?Hwu&( Nr8Q_$W:X83 {fʙZ@<_Av ʌo8Eb ֙dzᾥ ~c{ aCާM,Usܕܻ=%T&k5H%ClžIޯQDXK-2|7a}b,.98Ldx|[p $ۏT3@v~|CKK˱7jf?{0p}}70WXıy !ڄ$KF)j Q=qKpP_vBSH*Zvqr ?ȹX/xNe-6]qbYS4_Kcɞ=hGNRF/PB\ُ d-TbhEF6_K4`I2c- 4ߌ_Pq.^S>;=1ywη~jA jyDF0yp`G? ,9cx3?@ s,jA"ǿIHR2a i3mG.hr e샿(Ja( lz>JcZ9h.-5=0ڷAmZ \TX1*R_vJ _ {J O-G*Pрdh9 A>c*t})~U@Dn<2 qGru6t &qԉ I>-ԯ-ex-xO]'ɍYHEe) 4OF5c`+:Q݊ $.TJ#b?4Khz](H" JKQ`ډsbGb<}&[Δﵝ!քBNJ3ŇF9; wfD'kVr*$7^'F.0}}[z __vj>5%n W"LÖ'.;|b][p-KMXǥs-eP%Qnqʸ("Q~ =- wP&L8⋲AUB gl׉r4^M`**PhScU?2&=i@ql-*$S^v<+OOur:]X]ͯ'#o~tE& 1I( 4\Sj=TAsc{ li{__qßkg &!cžҙR~~6! XTɜu<u$̾ ;Č񚭹ۘ ǘA WWc*?w ^j3UV#kpw']upb=b> R[9gtNOEm( |zŏc 3(w赌% ^)B?ɡӫZ9K)6C{Pz;[|37k1nrb 3>9JGѕCn 6_ՓAq\}9T6a:.PD^b?oߞ]NOȾ ae4k14[pT()v6'/eLlSV3Ukn,ժKu;К88o8Xy꫐Bcmx^#2e}KvnֳaW1IZGx*бJAjE>'0hSل$1R@QMXᔌ<;H"P8uVh^[n! )kJqjô?Zm\"nh@PTj|Do2fFPO&4 &ʑ#HF* 2~gT3ݫBk^K'ڃz[-~f|AV* ]Jf@ x.OwKK#݃$Fw |m[Z@΅w:-ncEwo9wRЍϗ>(6o" :V=eP"KYQtFs TFMӵ1)07 (Q#جbqG 2c;cc~zv"vThף-,WUm-iV{Νւ1)p cCj}z&MEנg2Oö́/Cr*VW(A~+bO'#\$wѷwliZ6-{S_?eMcobW!cɛ/oY *KL Skf/IZɭ6Oiҏ?0#gpT3>3uU@?Y,'tVU`ЇdeoS4Q{ cl gkWbv^^6U/xp.{_NwK2yvjKKW>zub5Li;޴oqlKHd[azM(UOf⪃7^G\/J#L9=gNg|@cf ѼQq Aq`nQ,en+G6 5Hyi38h7uV9ΉvRD& S\ڠRQܺ.b +`?LwvY%yMZ$VoJM_ǀ\M!#/M+#)+Oc)#5)\}N^ׂҀᵑnd0]vHr0~dJ #XB#:V7bq :q4*4C efeVXB :ja4} bu@:llYYXsM?✔/cq tTO;SRX v"*qnF0$CIMy2Ћ ][W]7-#ZPF8w/nZSu`<8b(H)4ֳ=vm!XUR9v2b0- iӿ5~85mNQ}FO3%ŪnU8M6%oI CȀ*?l.bX`wAʵ1롬&;8kp2z'B=iT)2fLW5yf=lWK|V|` [^#>LS .@NVGp|0 *`8YQ&N1ECQ}`ӰJ lhW;('ȟpwsjO9NLEr$I4;IpXQ݀ey|?&x'-k:N>!&_l3?SS¾* ΰ_cTݽP~zuPJL7ICb̙l(ʀK4cctoUaXGD?HB%cXcFqPt>t#1Tnv)qdf4Qz'UQޖy0$oq2 3N|NyѾ>x܇D%>BWP_50[hp6^![q0 :Ia{\ &TҳAߑ4mCZ{2[Ӑ*CLR9T\ UmClǑ6f.K6M3Ȁ:9Q+4δ1. ewla3#/bORܤ5NrRE3aj$)g&8y֔+Nw=>D  Py?ytreW/OtQU*s~`:\Ь+=3=u>*Ș? ];sNmN *׭1ʟG&12_6!M}lB{aXFiL];#6ϣB\<[5v?^х >ϻ3%Px]~&&CPέJo ÿFаss3ԃDB.qaGbh_ZpL6AyXS ;d=ִ>ia{_LFߔ::'+F,L_`l^A.b3i[{ ZQ8(UFasG!E:SH U߭pg&ɗ5oy2zӶR=wZ\?JB|2o^zZeUAyJ>OzEY2)mT[=3C.c7: .YBkMof&E8$n3?3+g\wǼP"*UZM`ݞQ-M2`Yj<g@CMOqO~4Xn0aƮ벲&fLȔmO)}ӗ3Ta< 1 fY` 3W>:^E(qGF}~(C?"Oxn[4@<@„o;Hg%,٬ٔMv=&+, 'EUr%-A(.@] AL.&lwvn|x#>̼ +s,eObf#٣( #~8|B-׻,s~$ *-J#6 8$AO"r S|MOa 8MmC`uwa`6A<6g+mP)*T%SWr $aޒݣn9)F$Hc8 R%e?bf,ː#{^^1*S>fg?قr)@7j(G%t Efk(YvYH๙32i|w]E+LөݻuYu,! pnޟHET"G$- B} WоʥY lՉ^"8o\9+ n+,H5usRZזMr[jyoEixZU€Rs›MkS{^8ߣꭇ6̔,Xc oFݽ&UdcTvrKg{|e4%d_h1~8c`D'] wBP,Kvs:恡@e/tKM<ׄ7HD>eBpV-+5 ?CٰwmVC oo>!>=ϾZ,AQb4lBCXy]vsAK#I3-@w%ARzv[#!X;G9R@Ie'.AJͩEEN<!*Jg"_ ۪{!&ھno.($W4-=\&E~V>ƆV3Djw| `(D8Xd/CgՆ[j(nQ/18P:  'T;&ztq܈u2zɕ`^*[ zyYXY3{۷S %6uzӢH4@Xutۘ24vgn '5DrM]4ǔ`~x&l4paXXUOsw~Ig:LpgKG5)c̷PrYS[#l2d չ=d=5:i'vmB#yįT}xȦ@OES 2-<9׍a ?ұhNBAI"rPC>hFK%BjP.lv:r,J/5\!b`}ecH1@nA撎W!PWUs ґiRI{K[H 5/Fvދز'to;r̞>ߣӲ ^$6_cRd& EyTj(rth_(qđ. Es2o1b~e';{t"܈rTIFD;! m׿C $8f`ɭ%]GY㲺r?r>>xu_q2QqT<`o$1X{OHWIZnx]U<{9zyqN~Ga=.L:F/cACbrmUy1Zb%6j^40}r\}!_33"t=1nɣ^?_L%J{ /Png>=cFz .].b53UYM@k{:pkQbXfh4͹nO:o҇t#K2uR;t?_@Dv:nc8} ,l/)Ili rNZj]pYbBQ6Nk?CAAD(FgyhXyi@OV.:6≪qXӟi#sEZhֵِaqK%5u^F$ mԕU+?L8aE2q&gkGbTwCA}:7- Ј! ` ۇNuBf}VE%^ԫm|*,D"yg(7-TWr1wtpe)"v[NnpY`a{AmLx^MvY|pP@0O]|2 'SJtd_J#]Tt\|>á2BEAfWkSAM,I4@KSP{4"S; ||V۷&J/wy U:z"7x}x 1/קL^P V˰HDO#m9.[jvˀ#k+/Hf+q]TJt4=6XW?d>C—譂bnZ"սA&*{6>qSaeH ?vNRLb!.6\ڢshkl GMw=[DTxݓJN5/J-[څo[ŤZ_)*7X ϿPc1NsNE!IRgWүӼpyUK?v ʼCK3"/ᩜ4Qr/ #yR"G$Η}q<:\Ba NDYH!f'msHL$ Rd.11JYuĀҶ:72M&:uK`O7V *?ڵ8"iBgP< ~ai=dX@,h,bn$sh)򰫅M$WgűH< pWcjXx* wiWUkA8bh؂D#vn!A; XD,V8ӵFp̜7[bm3 ^Q's*IVro 3ZŽ٪ۺ؎7K~[Ӳ;4QԮSuTVLgPΐGth ! 0XzlKQY?+ @ڔ?mV&+|4x!>0tt[^b1y^dk"9))$1uK:pCtDLг@WE-)G( ƗmCԘ'yT͡ӗae4W-RQ WBa5qǟ.$k~wJUN^lCbiz Vt)-nv)HA 'C*9oLY}@7x.c 윁1G]%H>i㤉 yl⨬E?^H|{rts )S9r~t}o4PGpc]~Oi 6U7|b g"a}ڡ#*fḰ/ثmcX5Wat\{ݢ)bM)`o3jYH+I=T@/^e$1d/}H8Hָtl bJIAtө[dwhI x1+\ w)uH3,o.cx*h9@Ļ6G@+(OQCŪyj֓T|լMMTNrW|4x'-ȬX7yZ5=|G_XaRo\׬T`FF<8)v[ߥɷu)Y9)&.l=ǡ֤חRy~9]5G~I|” Q9`2O@;Gɂȡ@{Wq@ ji03siȜ-b[U$4S:bHKAuCK"ۛ^(q;7i1 |b \zt 2z}2hS@H=U,| v2B]WvW|HI)vyJx-jq;ӫ'Oki,'ZaO^bNg DJBzt}=~~V|̝vRv鐌#]i{J$oZ_wz|# V^z5P~z!0"5nXs|]8҇Mj!L*䎏k!̑@ɇݯ"tgVϺ#˃iƱZlS{[rPKThכ`~Kցm[#K}cqG#QN]J:fv^jYVn!BJϊ9duIn\TEK/S8E>|搒љC.ddkxDu-X $dlODńe s-k|` 'ZԾ b5Q<w'&VSMw!fVĦӋY?1*m Ƣ,V9?iI]cnG7+N3AönL죎')nۛ; ѭ(Uy2҆*\DX5ZHSF:җ"J_AW[:T,Ҵ}*ļnKյS B'?X~`4M?н:ze`8xE|"+0 95y#Q/+ZdJ" .Eha./rwq”$W!\S`>׿Yf݆tB|4kj)q=|wU9#'n)o%Wsn>s!$G؇F tH1kn}W1XmL[V;tC t,@<@lx߸ScXIq|OyzS pna $Fhw ?`X'Pᓹ["(#兝`k e0-b/uH -yFblkkk("YvIL/ոN+B!#%bͱWmuPP0!B-+S.eҰκnO鳊3p?-M]]>Om lMjJ@)DHY=Dѫ!X(83ݶ̬#7S@x(ŧw(x5g'3ܸ{4v9G:ءD{LX2ӀvI3qP;t1;`!|bkh:1TJKxkz[F.!"(F `G".qaf1+"w^I .x0yeZJ>fdު)N)-NZ͟/aNm>1 EoIҁ=MU{{|%Ӽ8$"XҲ99Աeb qYoERuk)w38Pt#dfw-0ZFm)Yڻў/Cbۤ ޴zydoDު3\"Bka&ٺeߪYtGO4>uPIlEua`FKHȃ&Yf0l7Lg )=ULc v@iZgZpf o%nEbc!y[V%9|;GJt2~P908K&[%f.鄹&BA A;|)gJ+ ,EJbs/T9ӕm0)YpĘŋ$!5Z]kt,#kDT&qxi>RҔmVEwP)}|ЍuCxaw-˞PױvVOP?$A-V-oG+ЄFʑ7p$K|M"R%eg26<X҉Nl!F:c 4LAjݪSwU [Nk(PZcRaa(>/ñl~ǺrӦ> )5y~kl'X9"*3pTx0SݹyKbqh|0K\< k!TŻ5?\?, GuN!o[Bcony!Qk%g#9D=Ja@v!H$߽ O肦+&DaUTf4RקGE.bl]f0I*ð?x8$ӻ|vuYX:fuν\sGbkPd;~A{9FjlM^*CI# $ތ[rIy9@1{jqi&E5N{%-'UL|˴;aٌNJ: ^+1_jg+y&1>Uν!զv쮻s0h+,5@ ͹##/fm7w*dh]ڰpQyt8r-95T g.i}QNe]Bk 䇲9l-Yw]n泡-,.-( 2˧)K"b$ݘJwwp(8`cf+\@gNc, (a)0gE@ȬB+5|t*ĩ2>]KL"0԰.^@UZ _ՠ.ٲߥktg7xʤ[ZۇUg^ӎDN-:(ìd(f癝hy{tYp;UY-&E쵓&@U,xNpN{YE]PrE[hl]T#J,D[1U1u[]SC2L^ QN$s ⫁J6{O˾Y&5JµmR7a=-p?$1IiSZ~%%--c=Q2v`Mp4ll fk_fe((R1oWw:mf*<.tR6S e"Ȅ=ӎSD2o=vPzכ'*?P3IRLM3RT'sن}v8@}0vOW6[{Li&t̰IdA9/-͆vxf\yLaTh^LGЭ檢V~;ad˺CNq$„ *Kx)b,=kO+mv_U1zE2Ip!/?` 4e*3-:L@V;BkǕQADcWQl\ƨYT6T΋xLˆVͯ-5jcJ0ޫ`E+4'A- ZC2:.T2hצINeA4 ~rYVSiӥrg@lVlt=]k#/?YՍ`΀m:.k臅920d825d?x q!w4,n)'N 4;<}WKUB;ߤNn 1t`u.ɻ* ߿2d TI{tsJ5,$s"4mueNJ6үX2nC?ظ^MM ZpT|nσ,fZ" 2!$!#:NZZ;Xa>hI5$-N0EV&%, LPdvSW Tn"%gtcQ1?e ek-k7˿^s)Irkfo!# ,'+Qhjڠ6V &IxA5;6a]c]d>yMcpRT|#g"&;Tbcޤ+SD5^/{B+-diu eah~ts2(`bFȋؐ lu[޼&]+چSWf Lp60\R['|:ȟUK>bns| .:c HvTWUO!Wx$BNu?61SѨ1T Nބndt̓Ȋ{3C4c`%\e?^<ڱ^0(j4cBY E_WܑX(R]I(Fc*T]t")Ms[J1*-~N)P3^CO8E >{9J$oUoG=@꽌q:(l\B~8aM@v)%q[o㨭49F&bBO4Z:oRbҪ~k1o2.HO7F!28_dOTLx7^Lu.4Ŋߏ e]][ aQ9!Ցb񄨙.TT&̝N~BXvFsZzXs7tY$k87%>*(W3'([+6D'=#"B|˲: l'\zQkwo@%De,J'(h&.U(RXأMՂt (-\ݯRq &4G幗R[10$V\_Z(Jۏ=B鈇 6"YFS FN*k=حC Rl+a~EUXKr F 'xa3,P]֓z,؄ݿ7Z6*%oic .wVLZi]-_([!YupoHٖts`ʼn*pZ_+e*єk\J W*UB(8sT>Ǥ!TyvY4R`Re<ģ3R7yEFoX.K/>k/dPyU ^a h>Uf1>E>B$$5L͒dZXaąYR"Hܯys ϳPw;\nȁ,]jhb嘦54b>̆䮭&UBLDZЕ2/j2m+`  ԍFȂ9`$"DdK|gM w7*/Zeӏ}'scdՋgt*ޮb?n4ل0:^`]oԨt [7;xO#,(+l+MA|썘3QpKe.AV]x+0.s:YUԥMS`%|BL #.&>GA`ذ! pEIWkǰ#qF<uKN9DC{ΫGIs( qv#C U0mӕ, 8`@ '~AVctʥ~6SUz\mn ako?d#TN>F ]*OP{a'zn3m0qmHf*# WwɚE;m^-^#o%E-rCWW!>`Lw},. ` Rro(8"V(-DavE3mìSO~$7eO5ll+2Xɍ\ƑA&Z9:+fF!.rBtz}$F)mjcFSE~;7AYX~(!Fùp,aLHoĖ!Js+mc>A'Vo+PkSUD㕢-X&ْ۩%k!5|ry-ٳP섭UwbQ'.-J-_gZP?!4k%0SX U4E qr NwmL$vTNu0Ay 7V߀SLK$2Tj{8ebPTGC!yQ\}ч\OzW3$vrѵYCQ|κ&R]1&sCnOkáSzAഝ1PƒlDA`V͌D0%ƁZN`Y{&o$A8CUnuT w 0Z:)֓E4O1D?&jٚ5|kՀ'd!5)_nQu:B.8T5hi}qDB${sU+GMbڎ:M֜[IJs=:Rϙ:\H;pgy8 .ȷ4:&uq95ӖeaýI&!xj1 KrNX`6FmyPpn\aSu?z{#" Y26'/Ύߓ,MKO9既CRgq޻tManG@բFHEkR!({4k;WL[^1TLId * rP&EB|bȦm:σm9 Ig}"4SXX+itFtGS<7{ \f`;KʝQ5ז-} Y4|s`e 1] y9ۄ/E𗁢%T (PޢX~1!7;dGwώzUAcD:7 AL^rpkOΜ캒9105;\6 = cm4?@Ey}X3V"i#Vgm]^MXitء/yW̻\gooJ*8i3Y~5㝝& Fworւ_yy.7>H4P]h!nɫČs\b>1m"Z4}%/q%^!iXPCoί 3ˁ>͕ݴXܿf/| H톉~GvJv$)@-Ch7QXO0v=`oU!yoX3Z6Uc[l[bњb(4a[qeO4~i9P%Jܿ wP8NPR;O`PBvuxZ_L}tD\[W̫p }q[Uf6ЬL7NU H8'|059Tu_)$į Hn)}-~8mvU82jhK ѐ>\1=A؋Zˈ^32Ύ WEٴ8^y H-8Bt..i% p @I  bPf{eKi^I2ӱ ORj fXM ޙw(q9&FKz Bw3*p|qbwWҙcީ=j*M>3)kUo1UPl|G$#䩡 N9w #:N&@FύQ79o[JB"rduJH[/GKՔXTEAŦ=ۦQ-?\u8;Es=4sWsQ#YDt%*;>Sjiofr9 4'ZYznѻ>~~5*AGWN@_};:}䒼w( $`lo{]@%HP5Y ]btoʦP\u=$+kշ Vxp4RW¼xJ5]M 柛 MoǤ o;ͬDHE+TD)Tu1OFx&ře"8l-eRA;1WX/r-_G}y!)4CsJ@=^"Vī& p˜N^ځ^Z[ݣ;N^.hFq,wF̐G}j|fR8iԸeԒ3 -3"v'"Bqy,fw;\$L}#n >5(Xv+Xc n؈˶%ߋ?jsoyTrJ-pe=*>7 Z]Z܂|. f,(n~PkHb$h'sP $c;,zT[Fd푤2=b gkťk|L?FuJ$j4KKI#5:2^{f\) k?*rfua/2;契%=(חko=̌"dve#NYF%˾}8PxMٴV6ek pZ] UfcL΢kKrLjL6qHLC)t$GaH̊ґV4zh yU3Ho.%)v^gB8I+s+jp`lT~FإkO=3W,dPUZԘktaϬi]61]Plpׯb[OhS{uM+YΕ̐cDcN#[6T@T½y_4*3~y]3ڮZۥet`'rJ?Z(ʀ-l5l\wW؊ѫ#vd~.|Hr?'vG#Yp\y6 bm+ebDȏb# ~Ir)V}$> &kjuzN{oMy+Ӓ#@;f4o+\ @֍(pޓJ먬9΄!M^k:+&xDSWaG%WI\, }(d}=}"[Qb5xA9J*ۖy Fi)-,a"7}蚕BjoQ~LȀAbmyRB$bJyT IѮ*;2F!+yc1)EQljG~`hN2TT* Z9n<.?QQ ;uUe+j9o%6[`|=Wļv|@G`m dR~O8yzf2QE#䦵Xes))_ͷ~( 4 ./\KD.ܒ$֧ FS?e/~:qID=l99;vU4&{C葉6+խ*Jy@E؍rGRA+N!' ƸRZb̦wINNY;;jp= ʻPfG;rMr̆VTv$[jK0€8"GT!ǥV1Nٞ C3d;@Iku >bݙE)eJl%'yE7;tF|5ɪhi RJ| >0{ZfB}X,,J˥1 8*`a׭rgaO)U*e "Gs?2:[ o^%ۢ/BfZr;wQt!&u"Qۢ)( j*93:\Gg$ኈ-]S!x=w516^9)?6ەHZ< ,®T^t.Vzɑ3[05oXlXjG':<m*z}OĹ֕k! i}ŸZ\[NLжx}oIZa %p*`}ƽ BU9JVxnMɣ*2􁗜?F&I?b ͈N|Vp kpQPdX$i~v]{saP-`LoFő/[[ҘH\74F8ぶYNĨ|Q0sY 033w,Vk2!_c,TY &˄%ݧ!),Mu<*l^]ˁ rjqB ]u8{'n7%ۂA }s*sbÔZ5z'O ٬ykI 3o5sabm!:C2PpȹЕȀ8+yDo[%UU}N'4Dx|"vȴ-I<l1c=LaΕ ~(jFI٧%guE&3 d4 $CȂ!ފSS-ߥ-XM=![QTf`B(2ٟP8t\-vW9/j4g?e1kXY9ayRa`G0d`R K~[(JN s=&] qb_ )]Ҙ@p Z06Fϩ]@)kaڿ{x?ĪZEApVI[Z)!bp㤀CudtZ`z4 tq?ԐEimivb Q ro MDT6Տʆ$m< dhdo^DQ@ ,,\1x\`0հ27Y?p &ȷݍ@~PˋS=^{n.Rft>#1%4 N=mH^;0C.ŞT&ʊ8< i QWLEdŠn&Eu=!g42zJ@7UEȖLj ]=rP`B< KO`pY!sN>qQ#}}Ӂ<0Z%Q'4Kބ`+AףF=zѩuEJA8dt,U .O|#WgFlH 8M\M&1ss﹈2WEhM,z-['=DWoF;l7iiy_ǩM_F$QdKRٝK ɵ9F?4L*=>?V ~P6 aJgDh趐w&!AC_TSsG'oS ~VeWřgb9.8`$SFu^ Ĭ7|M0dtBԭXW;81+/»\^oZ/F4LoÙ 6G)?BT?Iޒ @6l ǔ?z!\KvZ4: 7k$/> %n.] 9 8=`߂fLi}†#1/ Ħb^֟uCR~H_o<`g2K S[*@n&knj@4 #iT>tVkR~_ F[Q!DƤ 7u+&)8TN͞YQ/@dRNvdt\=lv. e^$5}{* OM UkvRNiJgm;f)=e݀? cbx /y١JXdA_Q/e6E-je Pӌ3ԑ5 5"Xaڶ&G4 K4A,]3i=++1` ER\}yD[&GRf4u tQPwY}tJ7zwI=U}-=Jzv睖Td{;w6Uzj-B,]΢;ҳP_K|I meݢFqLZEjz _nV~%@Iр^88}|&էs@H Wagn`&1Q'>ڃeE>KD |bМE(w]a`u5x@,{L]@gr5# j B[@X!zRF3 n6_s#T0<w8g fZΨHS ʘP+f됋6;3 #l Hϗ;b`ˡHΚ9i5${F~IwxS=aHh k\?KF.,!C5RÃwF 82TR3L &9> ,#9 #5Br>]elU# Uk kmKǶ:ۘr_u"Y~=pJMS~%+3%QP PKmh_Bׄ~ea.Zw`,d!pȯB$QwEUst^ E>HijN:fgiN Z~ebV<!`3SsAڠLx}zf@wo1NPV #fkp{ MLD[\2#p+E!?99pf?:?3uGw 8CE3GM(yr`%񴪳ѝ,;!`KEʲ[^ں we`DR6k|5`9^xDQ[D1hlTXhB,V5 ɠ!xX=+3wFq I5C8O!7L 2j%|Eft cBh'絜Wu`ˡ˄1tύ\֌|ůhL9QpjnsAد( uS2Q:R XԬ}e@av׫5 oOxYmk炯ʓ m,rɃ.4 ppoё6W2ei^/ŕ|f8-ISS3L!`7{ ,*Ϸ섺 K$8.ă8oǬRɈ6/\ 2#+P«->:gu4iZLg""WC.OUY N[Fs1~ ?=p^;L$k) 9':+B 5i|d.Bkh}!2RL'mc#rXC˕>.E\wBJίәwBݣIUQ4 Xd2?\5g$Qb_~KĈ J CCNG{?lma@pߖ5Q¦% 7<#t%"[[[AV0!xX"މ\=!X*Ico"-wJ5`X8;=hQ6q>Kl@6kLZBW2~8?JxGUgS5FW`nRZg1XJ/.r˸7J)&!6oi>^njE}$c,~~|ȀT@0NdjG4b];rFȃ s&iiWkZ#5$_6i&7 )q%59V|FȵI{ɝ\A >+RBcQzAlD H3M(9NnBLO |5)FOq \ȵcf&Iuo7鍘TЦL&`G|DU=LA7R2fi.ra|SgYӿ,1d% khgI^gq7XMUXI(x7GA(H"R oCŸK^bJ>߹ԭ{f;RԔ; eQXkCF]~jO! 8IN0Y/.lf~hm  :<ßRf PK4rav#|(7eXI=E/7F)P_ւ;4()K<kU<B1,j&iaHHpW>>󿔧[ )8n;ң[ 8M}8Z8DEJg)@ժ}LJȋʿpXC nX鋚IB-7ixͶv,ᷴIqeqxsZWLWsܥjN;m?3#x>'{1^v0WATtr}[&ghA}wt>DִHA&"EF-?hBE:J%9@nqKPRzy1{WN"QlάqtGd~_d)l܆VP[P vw -ƃ ьUd~N|(@EZ uqՂ%ha-1(3V]}"5ʭYp5cXb'y5F7as[s5)!-y|C uq@}JEA#QZ!]N`Td+eR~ɻaƝQx-c:kU n/z #LO\P6xQ&40fv'&$ _Y\&2։dGU8o$:$Os %%lL ^ N݆S܃mE8+ńHY Zr- Iߠ| (@aeQ[?u;fPU1Wl,(MS'/2NhRѮZN6 \8(Ȣ΁?Os*߻ɑ)5=+O+SS`~aGfүlRԌ>sa09$|6 "t$ʾsX**\bu%iOrzty9b@o@\bSǠDJ럠e٥DlMzԷA`I%сp*xZE.xH|P)dh*=lmNio5a,Yo Ą5s PMn/EwdddKb 4E*I+ _PǠls@So|/'4aQ4#P@V;NZ6Jyit(6cGXWZ )}(jVnFءba!Cߤh(s#01| 2Yp{A46Qt+r/ жvu(3BlLr3WNxʘuz-bݣ[:|bh"1@0Ks´k-bVOJ3flpd yGM*Q]1{I3 t}F.- e'壀i>oŴ-Z{f\,іg!kBL{juΕ/b:,׻c~SǘZVX2 Ŀ.u}v,Cc`yd438~BM,yCzX(CnO_cظCR;ʜe9}BgGuHC,5(y-!Գ6h<4{QܖfW~\WD7ΘpKT>p>rLWzCgMc?i ;z_ \>;?N!s_ְLh.躊hˆZ5xHE+x,_[f. 0y@Aߛ6[{z!L?z# Eqr 0[Y`QAvl+|$&/p!~,c."!hw3 /~#W9{\tՀQ$,G[؃mN9:u_ɕ[@ݼzrsKD)&nXhyN歶HSW=K'&ʽu]9"g1lve{ϛdHHជܖ?njp<| ɓؑr' eۏ1v /)?OY`5ç1e6k"_TZrI`xx5NP*&],Aq/idAl.#aetqzO ܌JC%S `pk^3ڞ\H0ZlaspRks`.S)ՙ:֌=0RMd=w}56nŏP _ҩWϔk A˰zKˇgD _S{~6 D?̽=vtO7a&"(!:A՘IBW]~Na#N/˨}uxGxi\stȽQ+n9`Oer5#K¢tHhʤ*6\M0cdld$`KW/ ensDɦi@}H'up%|]K#Y[gAً.SL{˯{oxNҙրx+Tp#FN (h~ZeChne,L.9 j63zG'mn=*ޘb10U0#J*K*%<Vkc:%z^¾x鷝+H;Fz#m 7<'R'Oк/d cd,kS*vP:B~R}FT^ГV ZhBŠ#hehss6xLk]j1z<{FTPt*o~̓d( c7Nt<VSW%0䵶c@yK]QP/ep~Y(D.'_Z*{]N9/S$HGo\p 0]mStL:tAiCq_e.+ r94,nr+c M @8qn>v̔'m[&s%QT pYK;1of&~yPl2nTFCc6>YP_r,^=*Un+G`#Xo.bO `ϬSF>/.bpNv·Zs'[rUM8VK4^>BNBAhC`|)Zgvzp\B+\ҀH s8heH)ct8"pU'@Ā"֑?2$.U;,Z% vO=<*V잸2%PN1Xr _KAf-@` |4ONf:GnO ĵBQvYHoU(mGz6b*D1_h42߫Kg shxL )ee%bvnJ3H1NP{1UyLfʫ'.#";DR7j ?%$[;=(eZH\i@H+! %Sds^J*@t.}!"7^v[ K!69EC˙,B@p2VTLӽ/kĚT VImat֝ƤvmZhH q@Ե156("XW] mOڒqe/i\SvvShfnO\g]eU]wzx jh)W`-.-aMVί\wvv.>;soC˲}~Y|}}ieF1 N\ӹ夲v;[wSG ꊁ4#1vHgqr1 IK~{:M[C3;P\>=e0\TN^ hiQlܦ],!\`z}-Sl$4T1=m]$nN7%hw"Rk0{:ɱQKQV / 9*V1E.{? 0P [ED~-67H۔-_Oc <&'wj_wċary[ky:A ;2ށteVP-kKr=s< x,5n ;f"|{.^q7=P,[S$pNDIan;oQ=sIz #casp U,`6T'UO^Zu+7nWcP:(&kM d=\7iY9`ڱd?h[@N>R@4! Sּq`Ld R2 ~\a=:;~BnWȍHU}5{WPV1RfO\`2RuMpLXdgtTPwR\15C%Սi{:܂ wvqa#ʼnL v_кII;h#F*C~'.3rsȡRqM!%2R;!Ц>(v}_rHOX.=olhaxU(A{y(i_3&@cA;IAy%U^BYҋMN+kÒuY3* h}f7L eTZDNE' f?2-jT^t*^ab}F2{7:IySV9ykx $ӎ\MFr{ئ<ߡ$uWABVNYp*_# *wuIm[ߚߙ[a 6 Li9^ M\/ ?f B4`#mb#J[h̜ꕒZBEuw&q:iVJ D*Ծ0x3^#/LqyreYv)*瀨۶WO MkMF4,Gj"HSYϙLd  Dz/0`UWo';LrCi,J'à&* #pJ['> ]\k]_TTTyI+2v\gS/1 $&F7iZF=ߘαM~,Rn`ktʭqPj 6|<]bNlt$I86Q1PLs$ o>Ԍiۋo4ڻ OZyQ u*q)*X\ }W"G*u ;0!^ɆC-uwB@"#)P󆘩S6j񚐘MEY1~7Bpr5`+MWiId-sO5ǶVYsdžk^:]ǀaزBE=,SdeP;:loV ޻. Z&uʑjŖSv&ŧYK<*7gKVު^xN,ݬq2Bўnc>LfP2jx*2 ,%@Wh6Ƃ٨-|#Q_>9}gQ 2-a.ڡ fZZ6[$T*!! iW1hC*@-!sm³ ;{)h&~YELI9xDHaIpǺӲ7`Z750LՆyY{@B;7]72DP`3,!ta,з,2 ;9Up 0%w6.["UDal-#P~!kTR!A+05k:T aD?phc)˫'#Ms-+~F78`?x?VMwcрGkB/>]JJrASGnv^Iw<B (L]ÁšR]8JJOp:6`L#qլ0N("Q>1d*3xҹ6lCeF\exXSTt9SBΕ<rjg*joTCr[pB1j%VKF*qӣFX^KS7 u/r"j \AֲN"MHVta'_c!c|¡f߳4cҳȕ뛢2ͽNu "Y6ɱb}.qu?Χ 'sZims'bp2 Ye jܴohJbQ 1FM7vp0^ ~n~o^9|w*E/j;TF/`#:r.WTZ"Ł7DT`[h HjVY*QR N\OP-N*ǮѲI0nw!?O} i.6` ĝCKXB -# 7@0lӕ[p,@m@j^̜]hЫԞ2qA) |_J-/#Sj築"d,s+ :9E -13*F$ѱ)dhVUyIG_z;A&,U4Bp?Y RkZxHJVl@JRKcNW/xO$"}CEVKP֫:';]Tƒd@VFSw1r!sI+jv@(WY$7UNYi|w@Rc/¿hfu̞v(ghjP:98-EN[f\(N׶צ$N[7=4& +N`X8 ecf_|B>S)e^D1;BЕ2<ϐ_`hF啒U;#Ũs r]+v_JyqԞ-$*i9jxa.Ѯ,Ӌe =hL =}̂G|fsmM; *h;o'(>/)rpR؁]K~ItjÇ F*A`q}Q(XƲuO3K^X$9&9UOusN{H}ZVGђ-H};F0{X 1GyT0L$?KE\o~h[(H% Xn{BJю\ccK,k'PMa'N Бv˓ C\%j{)otOIZ5OR3wۼ+ _^@p }sn5 +1>+:coU(_ kReo7v]i,iUg TE!T֦Vg!dK$M8hnYu7́ !M8Xpoҍ_P'=fI] 7mxEb3.I #~=Um ) si`X};RR8@M{,i[`qR].<K"1# .X%+Ժ~,|CsZm~9OL M)Uw1JuDL;Vum.c0S=1bottp͵{dAo8\"<,܏TG8vׯIx@ŭYP ͫ4Ƀ2{r3b;{`dj5cEox7"S\.<ۻ#ܣ.yr>1@nbo+BF)șBqxMf/1}L}'gq*܈Dawl7푹6v1t\/S@h8P M#k 3DV yX1EZQ]R}.WKv;zh[F,H$ͅb֒ $1:GHI1 ~&VDkkZ ߏlEI<{˦e;( u8~]աȋSh+lN8j7&"7d/;d!qޛAwR"HFAy֋߻*1] {[ڼ܃c(% .j~NHB Qf-wy%o-QeSBUI0 j˿gO2̥%uKĝבN5퐅?j-Vx&wsbS]ء%E6Nz_{I.na?Tj&bwj4sB?J`~RJX2*vn)K ]iN,Dy@Xu[ ]aǯss)Rk?fq% HNt8;SdP`oŰlFDbpTr;A5؛1%2l Ub ]ri)jTM֒3H{ )Ϥ5w^얃d4NJ ]ev3N{U򺰤V@qKSlRMeW[竮ȗqPU #?(e/k:rOGsr4k3G`(AL)Qó1vYNZ: 6_N;P&;?$ ,Y;0 SW#+ʩr@<ׄ~mX'_&#yfJ#d~ifC^⼂\3e`bb? \?N0@iKhw(ב%Op`ď}i؞̒HbJf?Ib5ʯ~ħ˺![WH\͠yj9TD7{0}G}8 [*SO,ȼ74`JpZvU?Mn(L#,"ZMq $:k_= لiW*4x,`)BI?yk1RgpV@sVa5%s qcqXbpP'Ag(>xr4m~lˠ%d{yZ+Rjapsf^\WXyG8jV%2>ڼ L@3o`$2`ß%#@xwY6Z\ UfqB\1 |v7_Nj:u+!frlOl+}3(Qq@M/8"!P+RQ(;~W*tˢ=&lDzK+x'ᣩ+ wjl<߼b[KY1S[Z5t~m 1!=,(~]FJRf\YꝵOylŌLP&J1#, gtOvqM{cF a: MMt26σ䚞jvt:Sgƪ|ę@.XesNMߖz?}cl/$rVExNZ7. m$s2kX:EoAY6 {OeeF < ɠQRk߲8M%D(TOEkrլpdx#='>%=2< vj@FhD+(#"tQyaM{feLA:EHt5 6kv.k"}Qf+ycUح.PpӴ'(uB)Z8jdw*Ou$:u}05IK!;q#| l**:yHeIŻ Th8[-=A[vZAbה:| |=pC3%ez5Սe)dI o11GNoJ:,~ eqju)TVLX?qFKmP! ɨHZ+dH$gM~ $z}*\vÆ8 |Q 8،O4Q4gZB1Xŏ'Jc_q{5GhHP;3dJ NRsVy(C͎u.I]D`qk~&  $ztq&%`2+hb. 00Q3x'8(1\o'=ъ%QMø&l>ӖLYn{^PZ4}pvfQ{ 26c;+N`]sΚ I7M s~eQjP~=/dgu:k&zLɭo\+kC޺UjP^iHؠy"a& '>A{MzDD6AG-7̅dytQwkGS lCsE *g 森{\dlx&w0e.t"mBMP1"@DD0Pd]6GPE# OCw:WX,GsOX7;QP{s4aŞ=U*oe n/:pJw4I20沃C: í!l*Rp;rɔ >ݤ4rV9AesJ7͔S {]$jmk]1Ж 詉Sze~/6խi1'wCp$;RE~kqR&)w9ѡ-Mwsyx/dWɋ˃}q(=HxRb)/P)~jϒd;-`Fc`s*0!WS'PH׍ D!mpBvyU@^|cY8]샢K(G.h] πV:[t#Mq+(bu]PIpd A(`]ؖ{IO{/\zPz`` | "1R%&Izcश9ixꛂ.CMkbEcm] #VH >_؄LovH3vkKmgC)e}QP (FťV@덽KFsb75:ba=M~^^pqo،*cVo YZՈA B#5X.s4=&ERwXH$Mlm` W p `pufZXb9BIZP 笔8ACېjbZx͘XVjW QmT2ӷpX5_O)>/=K&ǽ@n+BQIՈ(gu7L2-7=f8S3xU8j@s5,?//#ۭ<].`/m:9#_`lk;{>\6UgTLXS 5g]NZ3NR㑞JlEөj3@ [T+ CU=f\4cj"~}f&mRR?" &.uwh1 JP2 qzb=ՠ82o'.)x/W5 ܓZF/`mq8%mKlT&4#iGte5i#ѼS,(_BEQ:VL #C>qP?9dl%QkjjG[HDI~yɋ[:Us$g2'k_Cqr[XB\m'.FfVDqY_tjd8"a`Y4^@d6?5 WAk@Rt>bDpe@\g17!- ;[1QםhfHI(~$ pn@?cm5ZH y*{FEv[߿5!FkiɃ[lΦr`qoGUrESi Cа. ^ϻHjEbJZ );RJ戎J\Tϸ+rojTEN%a)m2w8qKFN/% /bzN^Q|yKu0e nMy^i&Hs9 nhz_>c mv\Vչ6."p42ub@V*\*"@u\_aCz$1i l?/p*N0(En%$d0x7hg 1o[i,AE O@@T>~8(>/nL9Nզ?ɞs$'/O3[eW[$2jh9ZUl rlhY$4Q;O^: $BE6QG^hPǰ@anF-Ӹ0sh4$H|g, ^G(NxI8U?v0xP>kdb$FB}Ngyt]aut{TiYX/a%u/CoKV5;]Wh^C6o!_v'&'CM6Z}[56vgڻŷ Og.UW`"Pc;@W/ن㒕\5V70 qLÆlT́/R2$c"/bs[}&!'}?4xOxoc0?Kzuw*d;#gVfa6 I?>|y;) W4Ũz@15>YI ZSO^h6a-Q( CFkѲ"6+.|?0sVKIh7h-ew KC!퉒@@9a O 7wACta [ w<*PFcڸnZV"T1(k-–$RcͷkO*t)"ff#+q!MZc8q;y{B ldT: ,;󿮺YЉ^-LSѣ/or(5#kҚU՜ ser- <6= 1Ε?e%F}&thQ>6ןWc{A@Z )KJqB'5Ti49W9Wdo_R&^MEFG#; NcC#CwCud.`6tjJrK)OR%WYDZn":O7E! )@b#865\yĄƄ"R*" : }__D K)b4JX*+1 hDNJT,.1&N֟b I;֭%atOʯɏ#]6Uk|FS*iER;HƔ;Iaj %PK ,6Ls0^Vdz0&V4hw`?Ѭ/5?K\QMoQA&czNC`^U_g7 e||侭dC( E v"5᲏ tBaJnBW?B5|Dl.,=EӪXEl 3d8z}[(f Cl0" JB&M#6-!h"M"=xS [yҞS8ĉޝ&r B>?shJ&WRc82\nR^ػNxanLk&C跁;B,Nt!ߗ ١T/\o ʘfGQ-Z Jr@Q8 LPl('?^>wG2`ćx0+l*P7:ž<;偟5@1 ae+d+;_J{5Ʉa\ 鲺q]D;ӿ/cY?2(jLW}QѶQ6Q&ُO;UbSlBO#u|~pO ZEMP6t%v{EDy5f>׷(0Ío3 L8āguQÉg oF89D@]0P3*b!؞ t,.o+1 1 Ŀ0Hc\f"$/1 tgG~b|! Ŝ=C%~TDzNm c$Kp*xS*r^7^9wy!:MdooGsRdlbD,S/x r,_cA~iw0*c76ƢQAHQpsnX6q#F]hWWeQk䢎hV{L@RX(C]ޮN{䩐)fjMOk:`YNy7ݻ0"P b*L}v:P)̻HA *ʡ=/"!CN&:(Ϡ0Ey!R!솪%UHQONe:REۜ}5`0ȯVQ*},@%e[ jGhd.U6!]?YV[yQiw@YifԑߛWݐ":maI^&ۏ%ee@NݣF>k--9_Ž:O 9:HprGuݵa2-c9'8؟El_HG"vAwxuU,H]/wqf%uE) ~^a,0jh@"*W/vM,:;^*-l̒XL^ OHy䛍:RlncSYI;#4$v%T/BLmH `f`ZU}7 歸.zzƙZj+9ayV&w*m _z ₩1* R_iNqb8e~VXwb`EȳAK{%Qq?)~L^KJ9YSU;8>Ȅ F&~-E" ֙U69md_nkm>seRIC˿?o=9 `Y"ėNϮ gm{2dg8MQ =4CGy~iNJZsRKOC|B!$jd&X.73+rE\EtJOd,J@[L6it\KwC6TOPӃG_3 e)6N;Cf$NPZS'bu˃YDߝXkJĖ?@e܈W@ܼ,./Q&9R9{sJ8,Kd$NMoir5SIbT=$ 'ІL>jLu5zkloh2G =BvMYaWq~< ]kиAm:ftFT@~p^#~gD 4 U+ "6wqfsto[%X95PZ$)ϛFl+9n $ QTkr^okVs ХHϡǪm} PxJ87 jj]XB֭q=A "oBCF5\p>w Z8w+y$#B7ZϥȘГݥ]gJgT1m\Co\\DȞ cy74q ޱVC%uqc+m?"(]zJj?'J"'wc+Zٜ{y 蕩zwa [D[<([.lۨiϑx% O\Sd峲>%Ж}[#));4%Fp}\Gx>GH;p@ j {"s37K:HsLB3Lju7HWzOܣElG]%|W|5uŸ$AJ-MJ=W:>Qr"62TcRM3J]H}`5pjMkɹ4]KJgW!1=BMOuF^fL)GV6B DV~BGwO/bGc22RZ kY<{OeyFjpz|j"g]mIw )Wu K!P.Ÿ1` 暨6%2w JPR̖BX851A>mTz겈U":Bp5@uMVa^lBG {Ń w4#`{ŭPDB?jܸgY43:=Q#Wa+waB"lC/ **ʻ-]ChԘϹGH3UN,P)A}5?q|+5ZLxr%C$,j8dWe;#PBJN1J+p+=Wt'>.Ҿ2FG7 Y+.\*B(ݳE6x#Spomw.-pXB3Vk;Q Ua sٚ\X HO2) F! " > aףGwYsS9hj`P>ҌpZtoKpkӾcEg7]B4TE;O;^c9In$,]k~8XEfAеzpS32=G4~6h%LK7`9ƱI`_J'sNM5ߒ-܁!YwLR6^5ZJ.^Jc$|E(1 "wmnBMG_M-*x_2֠Ϧ)~d*>^ 0,x 6aίcGao ut(|gI;bhh~{ |J.u|c1=rv IW4Ƅ1>lIP\Bx^s E[C;zXX3GE $6ڍtX,#S؝m\U;tQ߈? Wh+y!*3Ęi= '6 GG9;x;ؚ \Յ\́eMC{N]g%no۲&ms x<>s! UEd\φwsl=|b}N˲½gMէctPQZĔWC?ѱmpTh_ ,|[ o[x: d-Yg<א0u!="CX:VQc2LCL|4u #jMw?Z8禮7cS? ‚  f*)AC51ucZf~49KROoG_'.̗9i?KCn$eޅX ԕU&=/>nxA@b6,*u)y#ZmڸյRSQ16QGK ˮF΀\06}a %*>"=+>[ ؿ"'Jv;m;!U%;SI¯81(kyCZ gkd*酓j+ur{v>5d [ex]-zq}G//\P/ޔ9XnqpSEŜxlɍE<"ږo~p57Q=zCwDf 1`_3(Nr!ro8ڽ|vwsS)}4 XBuuHr>ȿ{_Fs™# ]W5ח4wr/ɻ 7h,(2zµF?8}q0IB` 9wъ75d䷾TȂv$4hZ.A97azOrNF>>Paͨj d+v|u86# 3/%抙 B22I iScJSZA(u7τz04^Z֩ D{nH&;zzS+fOTC"Ei\g[k?MmBRoCwIEQu~ QA$R]Dܞ4g9NV {FWKPJ|1(V#-ԖL3Q%t& ;yEW=ÐM?UӜQBNK#TDih -}@nܪOD6ہە ʾBP$(_qXc#U-}2yS~ݕJ韺Wl)_㷇X@ %|l{}xAq|ݺ3&꾗z&0_yɛaCRDlP]EXYy-\(P*w]% G??swd5PTwwHevD8VA`ܴKedd~+Nz' R*"nJpXt1 feeϋxYZ T+LJjS HeۥV2v kHq[ Hd]N5ph?KK 6pWCl QTIMZUM@_6Q{"aklj#l8**뒢CI& qa& )T'U +oF~&"Œr?uГr41ub{'8OjXe=NcHIt [w`džne M̀X¾/Zq f@kdi=f j׳S'/>Y,΅Qc1HW#@JL99-iCL<-$,0hl$.wCgRh@op䆑dsg=܊2ؐH\]1/ep=ԝӆJH0kĜR9PҔVIR_&(9iy֐&t}jⰳBx^lyL?ef}gK_{FYlN AwRƊicYwλ=@qk v#9È-2 pE}b%q<'F,u\尐v0a'?c=xnd$7R8hR M3[rIu<^S㸱 聀R=' W znPZGOӍBK}G,SFRt|ҌEvVDנ+D95~=>iN"]-XS6䆳iN<rUf+9]BShnWqvlp6/bEpUfK[ޥ+#` iq +ym8B*%G;'n& ͎8<:&NJO4ڑh=4B}-zWn"FR=_Xp0xoK/˦=^E95QOu7K2 JL<"8쫜 $ƚ<#(mو :5("Wߌt saI5T d+3m넏U!M{ O%kӏ}}[x'Y1jByY_eR[X$\Vll)O{DN&3Jy*ɁLZҧc:I:? )yMJ@t#ɗuE<[E"pšD-X?c>_!= Ҟb]Dԙƍ${8oc` ^^Ӽ;U>P.cd·Rrp[ԟ"=a$\p6GvnX9% 6-GY|b!1!zK_/mthqs1}a={rƇAUH)% k"J< <CUij<̛{7eQIzUt; &.[ -g &5f:n3.:36ǔ9a 曬H- 76^i;0>MKBB$ը:v"٨zI}6/$.R 3\<( H^o2G̨L-[8-.)117ͬeg#;£2"@fRC9F#n/v ^3s 0Ƭs_dY]2Y66bD1αp 4_א2K̹2Z%[;7bn4f5T V afĥezJ;꾕o<(քFb vpW2hIKAİK7 \p׉B=ײ͕]b?ݭhypJC8\J_ƣn(LXsqV|ig~}ȐH4"”uCG#~u71l S2zOE|78RK2F%, [y>;ύ9ndy~vWhc[[sK(òǴy3 ks88R0PKjx6OSuʒT[V-loncB''i^. UZ1CԅQ}CkU# 0Sͮ9S.0B5 eWt6*-/|&sƾ1( /wI+nT6{Gi@j,gfXՉrYn-:7q:IHEFף@*b9-Bw q\o.rIϾ*P& 9ʍ";B*8R|.WGBYf0CZyK9yH 8cG{ ~֟Hb*FL|#1&ZJΙu]a: .WS}LG^#nv9AO^9~ 2Y5?)̅`xUm'fح3WtI_LD`<{R\(甸'N&h ufO*-{p;F ^N ^(|꬜]Uڞtuӳ.T\^JA^64$|Rwģ(rY1؈HmXܱ.k]paLMIH+/êv3Жc!'EA>觘8=9BxXjQ ܕ^&+VI5bMwI Ej:y01-]BMmE']Xgh ^U͉{, |N,פ!RIaݏa`t%{D| gG{ţܐ*:mRO20=MLeM 2 &<6{3ޙcwɇ<%yߊP5wö~s>w1JI8IHWX9QD@e? ,-IYrEI8LnPנLHFO\rJ^CJײڍ@;{RU(ڹ0h^L! &;9V^.MJa AOs|x1;djj:97!:Epk񄶘Op+d+JwFvG]fcÜ՚]S?3?S֕>#X-ޟB-S~r#O֪XQڔ>){mFrv-sNju&%nSGaPþ]zP;Po^+w#{TB2MOmwP1T6Գ1/៿Q[uvL!GlT3_:8 Ų% .usg7AHL8Xw=|3fΔHfWzșw.<;SFK̵dQ+a>?)ѕXx5r霅:&+I<1Th-f¥ {y<2(U}UgqJ~եfC"K7]s Ls m{ILao7pQJqp͚'Ny\Q\o)RXE<Ẳ(Ud8xv-}q #@4|:R t6{ c 7<">.Ez\hU,SI7&o6ClR*d#vО8,# hYS>= &?OT[2,K:#[:SQ$)6EK$ӻN7OM3Mh8V>è[dBycm-L3yJ'C@ed́$O. X6 [sP9OZ7i.m UibYf=[t Ex*@lULP1Y-V9w/DGBr||62d^_8ȓ&oHzjLk)QH;udPq[zīNM @,g)gZ~ȩ om3SuI̝3 j@KFDTR/ԩȟoywUdb{ /D˜`'Yy+-1f=nHFۦy\eċ4`?_xՐo &Gw'C`Qsugn+5LRd"Нu5K0eyᣲZo:z56Ckv`T IlWx^ǻVeBZ¦u ( ²F?i`ڢL V[\>Kr]M:nE4AAa)ܩJ!M $_~\ \b-,ߞ|jIl'uͳݰe/9+ EEX7D:fA JMȉe,#Ԑ6&4Bȗp;0Πǧ{YmrG+?MO@5>yI/71=!YL{¥ߨ]|@?eZ*XdoOLhnFTSEwAUָ8pI}W ]B9B;4J2mAy϶>cU TV{N71ٻJ<h' ?7fp8Y9=\%\= e9VMfm GTnQI˰^]N">눈L}K\՗T% @>FV 2H?@Lq6i/cQ7Oj YFK71;r񱙠 rMr^%ې$ ̤s@SBA E|CԎ;[Faۉ,̅}G*D-@5B7 z6~z,H,DiI7+n8! uw4$1q ٩ )o5XvAzDI <}LB$tҽ&?:P 4 F=Ưu`Vwi_B6]p{*,Ԗ<z5?%ۮiB{|pWwM{;UoV"mEaQgF/jro@\[w;+8RVpP<sN(<ދa2C9{&mRT[,%qZ4s$ӟm5+nN`=/p +y{%7Lu&*ee)pA!uK~dJr)}RtIdvS`͐d6OA_ ^uUuڞ:cH| uKX„-Dlu:!!YGiuguyMS\5" cӁUآHadmi+XHT)KaDg BPļ&R΃ r+W*Yjdz N W{3؝ Pj~~5r7fƿ-}Ɩ;^`W3%YB%Ҥ;P}1\MCzP.ʳhP =x|ء绾0у#!x? al㦔 q..LѪ餆N3Jt9Wd<̩z\TLa QsHMs}RIТLak[_.5 kJrmO:߼ux0y&v~O &wǢ[F(VF185(v0ěaZy.~ѐYv)q;Ǽ*e "xp)^ RF9.; E6ro7zhd#uY!YF}X`JNԓ@CkX9?BD!s^$0;Cͱ8" y,6O|O~ ?~ŪAzv#s׹zt@H{k4syI擙8@c|*SzHk^_v2S\3L [4>Z%rڹ'֚!+`i~!Ø ;BKfz a2" ш2?oս@Qֺ_+,Lac@`qhCiٸm!.k@|# ?+ʹ6ҵ.-(\~׃[ FqNPJ>( |▷(4!ZoG/)shEUvG1ZaÂNt.Bl@r eaCp5p᎔VDa͕|-SI,{ U{,x0T h+[t(u9jI^|+K.hhi3O80 I-P.$5.oLg40J0 HRǩFFt 6>G iHϹ qe PU0 _ZUCJʃ[ hf_zr ژ!^,}h#k\8MI3aª(F3A7}eS?=@ q%f蝼YX/zXO:<.oESP?)˞ǵπRw-%f dBzvw>*>*+o"$O.K0h{w1e3In)oIIÓE&?M1 mdVs|X>=F%jCn^۽t*ԷpEd^uhUǯGrd,lyV=J+R;+L$τb7FL$Yl&KN@c$+9Rl!D rWyXF+7aJĤN ^Ϸ =Ga_QڹhU.%]~v݀Dr2~EBw*$wo﯎@MrPF!1mO/Զ}$F~No(Sv*bOR2Dy@RzИWI(OqTP(KWo) ҈'R&zMPZSWI4KCME XP"PQu^=j5'BTue+c\~ YGd*?Xfhs DK{Z/vom&WmH-*K&La}^ *X_[ná(70?N)ptxƜlSB25ġ1K1)刮VP-z/q S ɞ\DNGnÚ֏&d^ ^KG7t0SHlLY iA7? -ƃ+zܛإA<@͏"iMs8u >hra29!I_H5='mջVأ> -_<aTPh"u QWq+[y)$U7dzvrZR0MyPgR @tyd ceu]6A*$&<@ߎQaype+]/Θ46H:βmd#CV`/.A/U 4li%2G}gJVu#P Or?K3 F|GN(E3-/yJ:YNR6H*K ۅ«aO4jT-(hfzFy}7\$d#"|]'㉱O+++QYFA7tƄhP(4\boHqJ@j,{܎a8:aŮEg';TzR,BYa;R!2,f=d24RپGT1S"[cuw:,㷛@oU J.2Nj˓#ƭ@@w+;.tޝTg>èwj" } , ]j iGlk3 oD'NjnLKa=mE#]NG"Eʽ sy}M|и[AWY-pIKowYT\UZfl^;@/ ~'ϴ"t?rO*Н6I;=1``":źe?RXTlVWEP& _QC qn³7 6GHp,ƴ g:# iZL@%j٫dOM| qR>݆"0]>-3͞eo@芕Qsx %LVϸXI6+VN'ȾAH_.4d:Y+5kBP ^t:@Ýx]iA.h*f+}oXQl } W]5!;!GҊv\vQ9m=+]Q#%ֆH~ O4` ]E0R\VphР8QlcTh7&WF4ѣ Yo^mb*;W7G{a' t^ p/Eޚlgz=EEiޣ~-aM6㤸:L E)77 MsFbzdǘ@6dI1@UB mf9 Z^y #=E(Bi6Т $uL̿]DXE/ tpW:qJa Dp 8C %OQA^*SV+Q.'ͻL=rdOhJ HXru-Hn-F ~ڍzQ][2V. .Tz[MϗnK<5!ˈ+X$ YP^|-n};1IŬ!+<;baXl/!-,%7p]a`o#Lw#+u%Jl$RfIh;ҳ9uJy 8Xϐcrw 7q[r Ћun|#ˀ7cdb 0|P\vx1 O2J9\nmiM]Y]WubpH ]а[A;FD^!;v+ߎWdGwkՊf%F;܄O :+ش5no`tGLӋ>N{KQQVl79Hxo>c=xK=|dDFO'*X6fq\;#ʈy~;`O+(Q%3wxirHvdXA-Rr !6Ł8jD 8rsiD`n M? Rǎ=P8;(uh>2p&iØZE1Z^ Km陁G-_c S:U 1gGT߬*\>.;Z`}%s_W3P9~v!.cK { .; 77RQ. `_cbl ?jaia.S1F-H epSvU-W|%=G] !nV2pǀ/OIs~-6HX̲ceКa~p:Jޗ |Pi@rג">kMCIkM}=KT10=L/KVXcqkrT0-Z81Z7o-_MmA=x!+Y+': 9\) 8lCfGd:Xv핔6~w q mX%h;B\:_ ń,8;֚G[#Y?ʔFVmݥ zWp4v$50сc42.,G=hvoܑIj<JG6;gXFydVu_;Z!_B-P8"4.2>n,:! Ol~gOK}}ɳ,P%-sVIT>OlJԭ!+:M*c-jlO o/P3G`9O}%px\E?04g\o"H`B7u pǴь< kZ:0dE^l% uKST 3yDLcNoZՁ8B0˓ߟ\_ٔn D Θr1ly6%)  ͙l|=(n4w' {>Vv//@IDv9= *kL^t}q`5X W$Qt[tș#i9!k O}Ojx;.Vhptr,ϛ=Ck?fQČ8,]8Dk`C]kёQ=C$`6>fb]#VZ?F(u_'{ߏ6bX~0`n;6}X|qXz+Ѕ+)}>orBnaÒE#Ug bKe @P)D9[  J}QZZ x:%V)Z豋$cٹxXΈ~=Dw=p;9l1A=s?QPPp k$%z~,կ9POW!=*jFZ6 R_0# ʺSӌZKL#X2>`N3Z3qE>煀I$Qj6|+$j|v@hEcc2p%]-P9&\UZ &DYdF#&r:amY_ت%WޓbyN2j;$zl eB<޵jC嬉@Zp_QFTs]Р=I.mĎ|/sŰ IwKN ֩C軆xʲKLT|Uw7+Q{Y\UJ{!}c6X=MRH߰2VlH*L?׫+ 7ifneBMffU\V؍TvkjZdMGK t l粊…x>E0ʽezcG ]/N| D,WGQVXjm.Xk'eJ׎"*1O,'jmS^^OrG*#h68QA㊥.J*+9?o+'Y98B>nTP+erq;Jq}+ҺRDSryoضPC!]x<;N[& TX&G]-@4 o_"I޼\4czǗrQJ:l[sU/sRT:uN| qDr)c~h=0±kN~݃zqblP7ݾQ ǿmfܽt [b!eパ6J@cmd bԓ EsPB:RV0"a/RB< s^ՎΦGnq씸'2S-a]vl7JX|@IИNOB6t\?Zrfn ~~hP}BXjkD C^-Xx|=C\{8dI5ۜnsYb-ߋBcn&p;w)VN |NKbyrmc`G,u׾ZL#&G?F]8.@O~^ٵ{:?a[0#EDh 偡..B^0GHAMXFRGPx4E  W!-X݈uy^-H)-'4jgn8~wW%ߕWyȸ3?O0WN̬ۮd獠nf4rv+B<.r/wJ! F8jz2j؟U0Kc +!o#ρ6S,)ɰIGZj\Cd$ ֵ=XL:)@'#.b>L)QpTBK5`?MYMJt޴>r.+ц֭)$F:C;4@:q.LLx LGH___c w ^^5D9H r/ }z) _asm._WgRR==9چ7[%\QvN+QP=Cάۛ@3SO!W= -TaCц~09Om8j [616aqUutXԷn0Gjo*mO"Y ؋4z)YL_PVbںQ hYorvYwCT`-^0S {0ч5Yh mjs p*Vo+Xf@|\_fJZq =)DԱ:P~Q=qm-R۾> 5YҨ9 3$R€:I;;$h6vl}# 4AQ*QhDSZibz:iVu ITiA*)s>m^* Nǵ#{:D]%T.ˇ vb97g@}g KQ,P؇,ƍKu^=4Y) 7͐Ć"et07Z@#^c^13Q eT,͓'x^^`i+DL&&qFQǨzA1 p^l@CW;0 IzU¾1L_k=^v4^Kg .&2L<ǟ4)+@a^yDءw9îD{cw AF^xyz~)iGXI:[-j4\n.1::}U'lj!@~o3Roz;Y6'&k伪w+c!W|xKSB[*:"ڥ*h ?+ +.W+HtbDf,8^ x>o"Q` sC,4eJ ca{G*aMFgC\tEJD)0`wTx>|pI9pvP v(!sa*gs Bl A+ԈcǣU N+ b|f%CX4ppU(!10 We>(te|=jbf)û$tb{Gx`}X&psHu>VֈNWo9h])xO  #r'&ehxXUs9%M&Kd1޶mou!M%ʜ/LiAr4W'nkmݽswR fk+饈8Es)iwUmdٙ"{^@\g,@B ɋœ٢\?MCuyeꕷ 鬝RAjg؅,nePe`r$4lK\$~-B |a/I&zCh 5؊= ᄱk2}ep|;U7veL|fA]8aZ hFNIʠ\i J .uY1\ϖV`EPSOd2PΉV4Îfs#P eruN۔`szeƯQ(+ "<M[3 !X$`=|'5Lكtf-^mC +- !"qXzBYoFU| } -Ϻ; U]6k cY+,czjgJn74k,0Pm+-^kR~bP(ey9d[x֎N`⎐KtP<xDHgt }.yaѣgr]fYrLz܈x0Nw5pz355o TBHpΊr?+z}cD+k9 ՚XCV-"O?޲|Kލ>SQLSo )<35s0 9y_Mflmk&?7?6.IqQAT[(C¬ Lс M9ڶ{Hn0wXr#թE]-+[:F aʪn؍zъQHz`\v'gJGGӸ2f5/$'Kz3pF "`nB9:^`[~נ/ Lbk1YKu:8~ UgAoxmg=p>Iҁ\GZ-XKF2YkYs塢T4Bmd$r5Hm\$ˍ}M^v?n7{uw[oʹ&mh.;&ш,8_"f}X{Vfn!B5%dkcx'rPV|⨼gt\/t %-/X;L.`hѣ8~*8YP|\ktpoaeOmx{=yZ#1hB*>ך+Ti0pR73'ÒOۜ~K])'I*ba\O?LHO d?aE'Ze2pIhݼQ%g4#ʆnd݊]3(y#30$ CmPPFfFE .L\>om"Li09&1%lvg||Vvg aDM-hC70]k⣢E` J2OJ-dDރ2&'?s-8rT!+tJET Y9Yɪ4Ӎ'=~uA$}s6Z膗/9l{"F\Z\`OW/Rud_.$XK[\񳙞cyO_́VQ9H.'e!GZ#e6RULSv8b4#ߜ4Rն,7A^  8u4\x38J"rRv ( C$4Lsڴ&$mTeW"+K28"GRqKoc &Ȟ&p*zez>q``-|Rkq oVt `B(ٱ('>iz;Mk/vڳ%8)2rȻ/]1t1 ? +dͲxk/7Y*ſ}ŋ @Mۯt{,k0`s[rX%a3SݲxAꀵ_ IyJ7ޒ@:F Uʿ 0hQW]@$D9S:/}[JwU߄و1HCP.MI}~ۄv$3 W6k/$*p~'q/^^%a'-_crjV;D&d"[a! )Qp|e切 bb5pvρg-pyvc8Z~{ecPP88qFO0IJ5:Nqi:ul|Q>, ׇ+C]F瘷NW VM.(X r͙37dc޹05l70DFcfHNL: *~ubn( ;iakPC/%|ޓX#eM6o떦D7C5U`o[cHt;eK5>dbBN"1l{ٜDB%>.o(.|S*cXD!KN( B8 5Oܹa2tdkʵI5L3Mj(NKŶ6jyⷍ@_wkKn"VCs~N. ' wX7vnڸQk)3xq؞ #:sPDŊ>o| 21PУ'a E1q^ۖ|툐7vtQYK\RI1~ X'#wCxkDNlLS^vzӳɶz"ꙻl~"R H ƃJnP (9R i>W\ - Ƥ(>4T]aC,E) 2{4_8Cz!>[Jphb<ȋdvAGp2Npm9mIUF#:[=JF}BכT^--d!UGU.cGXJW =v7a`@O&.azͰɠq( g Hwaqr/c7/SuS -=s:ٕyW"AM=N}vVQ3͏6<[#x[wSkη.9_E/xX2U͎"aF @TOǍm_l:0Q \5ڶ+F2@`lڼM[jMCɚUEuܠMVYD28i/׮kںڅhk~q VކJyu̶ >_n{8Ԁ=U[Ώj<ͮQvZqW >`2K E#x$ s:~5F ti#ٽeƜՓ-AكlRt&٬)`w `RmE={^7=VJJ<:aAe~Q!0oYt~a&}(oWC (J]-ͷ̘YOc |D ,/7o]Iwz# )\*:G @#V%`ٷ6GQFzV%|˒Kv3gB c"zNбt;?%^XVC b55v' PQ:ky5gm Nz3lmv wET6^&[av{HH~8i#Ԑ7]RwHtnyQ[a|*dNN^e~2"7ߒѷFj${(68^x_6J&pQ8+xHW*d i2BdS nXA0aOh8`;kf .;B n`ӎ/ ]aѓ6thw@6+9->THayW#4 HXJ0oBLNƛ3ӄI\Nepѷ ,~=.'zp*4u;Qu%w|Y+~CX`Rb]%Cʸ,WH6uNқ&O0DF+}>x5Zox T*T?ڛǡu_$Gj}#}̰Oe˘lKtGq;|UØ0$q6?!]MɍɁ%<|FGDԥ9RwBU]$7{mbs-10ݔlFK#[{ju3j٬F˗Cj͊My:]QSΒmZ2q6 b]OA"VO'JUjrS[j.)kWH&3!*&&1H:O-^=fGDL3n) tp9u\+sٌ O[w:DapN7Ϛ5lܓg'Nx\n dʟ͔o=q^5|b訍.4BB9h+|>0SX^q&Jrڢ6i`vJG`G@\3O'XxIWkL#=)l5+,P'$[)׶Gk-e&}Dy~for{i3 гynCƿ<_AK!&&XAO Lz/J҃h9DY==.V0)yV*y3]B(4M?`[-34]~:|^DP< }]9 'L\3î¡q?C?⤺kgj3貽GF0.[}$}"kr%} %F]p9TѬ|eOEuVM a xMBl]qԚ5ˑ Z+m3\Bn^:̵ܓ(l7y}Bh5edt*m§i0}CKr$|w`eB~9wVy9]\9},"|sSQ T:;xCL }H(rͮ6 N [cȤ:x5S'G8Hݣ`Lj:)9dTZGM,opuÝ,w؊G++%Zr$7 K [ԙRWg+I5cdUn[ʂn^E}a!ѫZwC"NX^0@a)wZ\c6Gz'Iֱ XD:ِ]Ky׵ѵM^TYdl?3QSƂ^.6{(7M%!VDZ#1Pބ0pu>;(xb^>3:h,Je *cl!R!d iPmr";9mGܓQ䠪 ׋g "qij,z5PFx^uT(zr,J!7%NP+Do9TQZxP-`uX87JS=ѭHuWO~ϠZw|moh@w 9#JxzҰvv[TMS(%dg1d"hzYBPnE4z(^8bmmH:J3H@?] 1Gc7-Ua. S ڠQ+H2ȞbcȌ~(a?M"șڮcÉaaiX9 ?﹎QKn@FOw~O\&}0z?ٹFwV: cHpˑ!m$,9]x-CDL*6d@ DIbo!YGiK"peG2Z_6`Ѽ-C>`J"_(]޲g/:S`[e u~^xgdc1+n~xlX"ԟ,Mp,Oh!Y$H3WYnhB" B?SloYB&aL͖8$}7L{lKBK'J7ۤ1sk:&۳`AnrΛ ')ƭޥ(SgvU~C,߮Qnh̷s6VlPEm{k0s:Ek{E_B;QJ컉xU^=hm& 0tnR Of#d8i`ɔ!UvyKNZ|J e_8ㆨnT|+Dݓ55җƏQXH/Ӻ/ςÞ7ܟθ$ԹJ΁bU@x^]ϐߓݷ\K8E 6V9"NC-H~qG_=Z{:F&dsŞkF# KLnԅ}KbV| R6JN_Uǟjnмԅ`(N(wXLߒ섀;+@&(}zI y:1Oa"7f0vH^To"< M2WxH T %tPLdٟOu7Hw'ёT"{ ':qo>9qxq?МQ^&&Ή{%еre=9Nqcn|lP?fm1q) tzh;OnS&2R&{G (S?\P[&H *:tm5Ap abiKp!)ċ{KבM $ ?CHjyҭiÌ"#nP[|Nfͪ*q,4Qf9#jh]Ҏ$8wiq 9gf'Pڇ$E曧E^&Y܅{b9)эoH^}M^I~>S@ .=}Ȳ`(p~F4W vROQ%Hr\ '^IvRޅZc';X'[5*p>T%ȞܓDn '5_oo_faQD<Q̰]kv!E6RYHaj'>l?X!q.Nvg/-,r g̀(rzM{x>KlCH哾ɳ B&I}ן#bV|?,4pKY6޾Xk :AAIڑkж_I^S Jv -ADZɏw\EvV#clpM 61#^HfO⾲"PxXE'e!%r)ZdA^ȬplcJkKMK ) V:z%@מ*o 9f_T\ l B [^h^O"V%61X2fј),A8Zα:z1>=mK<#`y_n^uz( dד" P*1Oak$&€|b%܂ BGV\grY&(i n&ύk7^ð6J}L<9qmtVnIA9Ixܟȥ@'C)Y31EHKk̷AsJBro'9xn%gu]nj?Ki4yn9pvXl\nA*Q |1JxhfeZ4zBTґ;d * .|9jM%14qcqwm?f\ux++͘%Gv(S^~&-W":_}?}'6׎']>,#O792obاg:?iv :IE ڌ-r6|* 1B+<h"b?=] qҶLԝue|K! y_gB6.X MO5*JO[-I(ƶga~Q.)5yw0o#Э Ez$E3=`&t4LJ>MT7'zW|u[åh3$6EUi>y> \ ɿAla7:cR:=O| e-pe PI%Vj) J1`Rqb4j#sáV/T(c!!Dk6\"4*LqT˜yjö> O]JAtё@)@XKnpHc‹iX'{=lokߋkK]s#~MdOjqh/A|R.WTuʠ8=ƬUXweU)ǹ9"M?kP鸮+$B >*Uo Ma u t +4:BT ䷢IRi X}2Z-g{F 41\4OQT'Fl# deN/$@El03:e{_º^ C'撦;4mBLI>[ j\İo՜E^tImCEÁש j Y PTy=ǽA89UGI?ʲ} AAl0CyUB䌊`Yre7M'JPP*]d#[&Pm M[E\MH7`$k<8:Xj&)0-̅1.misqL! (C ;~r:8U]Cڅ3o+7r> P "+/#j:kҌ>zæ (8EV}vgX*:فsT!x֜<DΕfbUӏ*xBỎ K\QH06'ϻ 1Sj'9kOC+i1ϢRwxcp)R㝤Xnk˭SJ]"$TP L$J3`{VIjV0Y͗ƎxHQ\y,GHzN}t'~ al$Aٚ"n^ZiTthpwl=]V,Ssfo=ߍtOȸ:?:!nsH]X .>SE֐ƦK4q(Co(riĎ{m :EW=Hv8 . ֶ v**5(K܃Rt?tc,/ѓ5SXBȢ]$ﶹNy 8'&++*.Ng҄&>6![ԗ-ЁxLahJԽƍٴF#LpsD3ʕȱD+O,).o:Cd3JL#3dL[@Qv :bl0d=MB^ߵ5rwJWɵ6L4:XhϾvy LW l:^b>-p`Ӂ[(L9Xw7W W"[U鴦EGv9Q r"[%D~J~i]dZ3yl+|K5Tr,#=NS1w ܋RDjtISfI)Yj^@+.M >;n5U%= dL0. Ru4|ߞ5yjе˜L|U sz6+7G@8-򊢬]t>R0H] *QFQm*Ps`"JSIdC6Y9>ܯ'*m2Tvܖvl^4u*>Z5GY6d hZ rxSoe#,_ C,r@sh)pl TT fhU&/s[T, =JCQBK H&[))[ˇ\fIyDe.@!bp# 'pC~l[0[63cXOezbmS7mW0`ĭECx>[ģ1ۖ'/"~l ?<&QAuZka`l;(^0 x\XoSV%gVir9&>H 1oػkc2<7TTgT݀Ow`ö,ʧ0H1S,n;7G9›f, {U3lH Nhl$? n^ ܘʺͳ)wfu%!-:8_;9  Z ؗnVlU!7愀"kpX;91IE4"h@IOox`3وbb'p'%9 T銈9t ȾʐG}t#7 x8E7"~b^#Kdy_O'_΅%Pj4Y.u[TۜIgrk2d`7_ٶ)K,n\5 ebw""<[¦$#` rzd<fjYmFA/F]J/K~CXD B1;]5Y^m] Kq3v@CVz"wl`?_)jկzk2 8 ք&,v6e'4*xd.~Z={)2`TGMoti?/ꨡCO|K?( jpLw=1SDdL־@W`>Ig̪k°0JikwĕZ>_x4S$7`ѳ fڝg\+=1h#N+Ge0be'Ph%!hݦGʡ.bg<B Ub3ՖlOF$I` ^qWѷ Ce/9eB?OCcPJ>C*5~\Tc^YnQ_:ʣ9dEJe8C 8C͖SMBLl4is10ө^w4JvuC^ǎIX^!a"Ai8RJd{,([w X+h;rףU?4#LeQ3|?=gwIHbШأ\ê}(%4NYaVˣISJf鄨 ,hg7ܐ9VhdBxyBt|BA#81S V*21޸S\1YfW'`Ky%$=< 1|J);6 A%*Ɍ[IP?mU; zorNjLj' e" ʍMoAȻhҩ#Uf/iǚʴ !?h_ 2;m$gI*C^wfr4k_6NP=-a#C9ds#C.$8mftY aݵ8Fyguqs&ۛ$f`Qb踰oRNchUj"ma^i͓*pn)M'tCb@͂-(r=천Hb/kSD CɁiF>;O=;ih7`j&tRcoK?/wgNXt1gsm'B)Mz\Ah 1Nw1?o0Y$Ѕ:~K'ffYpez;(]95~*1U_q1A)fvJPt ]?,p}:/8>ZҲw ,DU͋?X{ߠ!Qh̾PUԸ?nK!«@8L[F艳XfDYY[o4qa' D4*Z()N }RS A#903{O`EI8}1 8:n">ϺP8*׵ *xln9<2٫^SPhqto,)y. O<ؖ{o|瓩XMH䧠W ,{?A H u]o:G߁1xz L7Ȃ䘒`< Xd1LJh=~bp|qkao ".p)}&h'!UXHnsi"MH/:nzOu4]q'U%~Y- iuM|e]a%sg)+V?&H=Î ؤS=Kk :^MueHxݪqt-LJ:z&yp2ϧC4 4g?S=$~3gI""(H\| "|Ύ(%j-MAd1|+yE^طe~S vڴI@,+8<&6`dZ[y=]i#qNjrh^lڌsX@IVLP*+G Lf2NԲ5OL\cP+J`)u06 "xI|/[N7!GX뵚~L|º#-- "m-5s#t^ыLF҉ D)㌼Fh]c7W߾A.9>i"z|F;YDTH=+nݬ[Hf䶣ߟMPw25a%R"z3i)qE'(>z994Sk < $[C|N Ȉ(4V>nԯ&6\%5S5x"<ş'ɐ/I[Cek{;̽rELNgov#h sr ~,|30@x|+뼪^mDg}ӣÂ#jmrHbN'E{$t9[Q^JjYB/JЅ7^m&\ߣq?Nj|wz\n#d ė˙XUĀ|kCU&LZf9 bCmsl,c)T5xBN"V`(.ʾXD$++,9T>ʫ'<7*)N<_y]> ;O Ns/4z־5C`%~f0!vϳ7pH?tOjAa1̐b/$C v%4 >@TJnȤ dtQ}hH# yA̠* {f=C1^ *ʬ <~aԓ<3js6"So)e|$Ig> 3qWws!j-ٍDζ1Mf'!ymw~c*J`+n +pN-’VH}R-=Y),RdͨƗOꍒ|YwA_`7 .{dX&z΂W*fVA,k9>9=C hep/}"*9 vt͠xo]\amnmyK-:":/rH< S7ϥ} ^c08sDp7 &*\{4lz";,uus_hh>@r|eUp7qG,̲|n1An7iLX8Og{NCR`M:Rey4},Vp:HsirjOz,({NOp͸/k &zu_$QF^b'B ^-2*_p&;&a$Q-WlWTrgx,C[ԱR:2lcpg&} 1ͪ( }'Lڼ~tl|4_}B^bu(?hPc~@i%t 5m8bݖ$DŽLD@QF9PԺ_s20=*!$:̑3FDH[Zϵʬq&-B.s3fWn~ %f U~rا6'ֹ^$m-lun\aɀ 4nDVqqKN v+X"b:ςi-{ǕaS8w"6mXn!l8ADS[=ó0v=h"gJj7|5&\& wZѝv*̎k'Óm}{^5l͙Sn]Wdd@}1h$sKOD4m?$s,*?~.rlFgU6-e4׵Q,vZ(J w'a~!B@sI ?s@wp%Pŝ]YULdY,OzXhb{^碯UFkP2MV65"d_y07O >yM$"̝a bk /j9t''VYb6v{hA+0nhzjEяG"M\ 4>*4!ЦܥŚ lxY/ǁH!F$A_'L=n~Ί$#hS"bihqVX-O.L*B-z2sy>p:%&XvyEP˧!Șt}~T9/ֺTx?MD/. Xtc]ҹvR=Lcb|P‰אQLOCխy2 CWd?; #aWo_=s1Z:$7zCb2H]s| 6H0o.ѷm"6Xy|+} Q6 QE ǢYK! P˽L{[lFR:ːT>22 A,hc a*9Kjz4mQ^~r*=#>OgUDn %iz@,֮3 ~C͝蝈+ANI"2!}\Nd{ƸX7]VlOc?4 'Fk[SCEkf~"1ASuzkԼpmd ad޻YL9u&XDrW?M2Eb5p#OUDqHA[m5HGc衴d2#-H yoL,VZ7"NbBNΜ&S[E5y>'_x%Hx|esb' }-gerNe8H^C)iKkhٴ%n,| O :cZsLU%΢0є -f/® ӿ]! ȗZo9!zoQ$)F&i07x+k *N8|(:C>(RJ#QNYLfZ!+6lYOǬ3KD@o7P'גzAg\K$"ΖklRV89ihOQ|2כ|mqɃ9bȏPQeMcW2$x峔 l*0p<"Y_snۥ. (K)[`Q'ѡf3r.oqF'8jMkBeaMK {,CbNpD4ixw}X@B^ʫ\(>`z7Zn$_/>+Ʃv6gLsxSvK osRK3 9Y:|W)ʧb W1𳼲2>o/[-jYH1U5zɒ /3h8|<4=99.T9s|ם<8ދ/pKyGQf$dmļ/Ij_x tj"|`)YCϝD"WJ_ 7wq{U\8=5c^b杺7K={+p+3=w.mX1 'V]#>8hlH1"b $RgђA%F)*G5JRZׅ%BhΑYmI!MbhS44e_HwruL_o㺅h6ikd*>x(=ҿ}YE%zQm?S^j{7mU^ʷ_Y&aI?F% ׭W8fQb^*[H`1:i}# zzgm3f-v'g WH(V?E]$57܋Yۡ풓*p51[hva]lp*=v%|'A{}"U^WW휙v;eLc5kqطὶDۈ,(sd ,l'#iM嵼Ѝy+Z±_ 6dI* QtW~ ^i|zpi8-á(cW,QDI|}Kg3jλ4$'Z"gTwekvwln@M.%ytTctڿ|509Ⱦ:z-'9i_ܾ`'c#te`{ϐ 莙zYC&yQ3ՐG˿tLCr'Q5`{ܐ[RYD}==ns\_6 5 0Kudk4j1OFd:s/! $Yg3T)NP+6.M° S,:pi.1Nٛ6`TC.W5s=ܨ>4D@hwі\V ژq66ʶc y*w%߽D ~S[CN``+kGÅF78z ^ aA/`Mq&$T+6fws} iǽY7kl띔b!VEe>R1E`yZ&!Uפ?2ٞz~k3۵0och#-TGD=7@X UIJyqļOIut]k6 .y0T< g1ݲ'DǼHilڝv N̿>í8 Wl"\~4>'w9HqE)^K̲)wȌ^T9&ӶS_;*{|3fPW29kĞi8v2?GD, 5|B:}P55y'RP"p`t9N; H LaTs-*뒾ߠΨ 3ChST1qi87s_')rB#N&՛';&3$Xvь)3`\"z*_͡$qm0vc0C"!2D֭p߉} Kq0z%"3iFo5;*;p;'4v]u+iz-4 W}{lw"MBkŽwW` [t&A8m~<5˨N6\w}.N6z@]f` LY_08Jj٪|)A&#AlP=ht4^,&QŗS)ֽ_MÅ$$^sL.'%tS/'y߈ =%^7$6^/wӵ~XA(7KW90 1~=r>.yr.Q﬏dRN3Q9I)x$gϨ;L wt{bѶzT$9sU& ͯzWG'n^K&;RI:K=82BVqYwy2!:PH*)2<#le o{K}>o Y'!j:/W֍ Z+@?ccqEeܢ1SQX!twW`ӌ qui2Pab>)N&k,mG."M8JA%(>B4W|vN|Jna83?EoN?eTNFdǥnZ?W&'po"HZ]9G͈v[r5a}pUiE,Qy A G0 t_p/-Ã2%@Æ v%L#W w*JoTZjulB\~w Tη{8Fq˭:hQªR*}UfHJ* t!pFc-FfS'Jp!G!΅Z*eυ}ڻu.KD#~vqW_,gxud6J0Ş{ަ7#~r@JTn盽%08_U xzG813eisJ?툣o!m&Jax+'Qx"o:D}5YQل}]^_eW8r3ߤplLqSVw9BXH"d~FJ#݃eW2sԊ,^~Hi -U$-}$:,99YyjWs>CRČi 䊅囑Jud1ہ<C뱥4Ҏ_[%(}oQ:D嘝q50: #4t.ũ>(Hb&EǰXɎ(w2@&nj<=&&K,!rI)Xar pѮšuX s >uv l~I`c^E5S)􏠩el h蠸k1ϱj2*Ke`cЃFA]Uddi4DzgARj5&A܌׷dz^1O*|CsKpZ @!4e]:N0짖22S"ٴ w T:]RG>0ulk:hrt:Z$[¾c}+!dT;] ~}vd*fZY8 ydPOj<to8Q>ƒD=O㍫X ʘd TK9<%/hι!Nyx|E+#r4:;WmbK y=J'8BޘVމSILHR'9Rdzw0q-.-C" 2pfL}ڏ:&@oERWェƺ9 m _CGC0n YFd\y@}m]IQnMjęl{?Ј7^=+fe+A].e\B€t5uB &B4 ڤIL)qŒ(x+ӁkVˬR$ΙϬ#'Dj2~b>,$3r[;q ]G2D"}=SYݴ_ɰkqYKތ$CB$F6ăNՕsBtja>6FKܙĆx*/&0ZRAlf0`,\EewMml@Z'l@N r61 z|YX /7ҭόfa%hCc+OQNjrbF5_S`߶_\Ѓ J%x#Km'5)ӟ1砠+ItpNxb#>{(#& :)re@NFz$c3u:!з 9]4!@cW1:ŷVcͶ;Ugb뇔bhw:q )T@M7v!X(T_:mNSŸdR@9h_gI\ݽsx۰dsiOA_O-Ve.L ͩ:Fz |%PD 6[~j&E}Сp9y߬He3*d}e"B;5u>wېJV5*-?U!ZR04dnף/[g ]9^)4#޽v%3!JZQFJ5%T,9UBqVqSHD.CI᫗x=_/r2ܑ'ws5xVXu)xiO"_,5^aŖ۝^L/Ӵ[)?r"U5Ea'fqTEViGD"]hW@"nbiPR8*sQ^0mEcZlaofsS3su!Y7JKi%M%(PM`Nf7%Mf7'fz)s%mWQIFYuea/lS)|R e mr'>ځˆ zEv8PB*wxzFqs 2*ḂrUb3HnaˆH оos:euğ:( BƘa^MmK{'m WH8: 1~_KGț2E )^?=[A_C>JHoO.ћP ^0ij`+G2=|GLnpqA ]䗹U(_P}k>ܫ K7GW}Ko10 {O"hɂ+^3PscD+MgNCȾ^+`tՍxK.Eej5-61z w8 bIaAnf߀zO45}['MY9ZI͟_E-3n 0~p'u[`;+ЯrVɞok3FR^,z r|FP!꿕r0UuT`|BM5P|v ~>"N=gxʷ-(Ĭ˥2.^Lp~'P#o+g޷ɀ0k`!jWt nj+і(Xnc$q0v0(D$<`tti)H/.ۢfچPBjď;Z e]lm;>,,R1~_l"4MJ5`TDx CɽY}Yl3ui]ɛU`4,g^"?r5EilCf󀮛WH$憾D8+FiwpE7ŗ 30\N)6l&GJw]V?ѳ1 ΑPFr)T ux&/nOi% #6wstOY*=qfxsX<. ecνs!n0ƋN,aI !ԭPPc5yTMiYAϝzU]2L) P;dR/cArVr&ЎR çզ9JP0_f`Z86~c005 &XH?ِЬ_ s5skľ&M E D☋ ɹj:l6h%GT㒓8Z"$}H@5s>{s!`xT'̱QL{ѵ' Qr>*jɣ9;JJ~6Gg?'drf<7Q4H)R ic=$rw(#la춀e[b]ULI잶*b4 e8u \‡R#mm(Yi&o)boˡmMظ,W5߀vM֗fcu%nqzDq*N@nN@7P.J fQdĕۯ +mp c{\H!%ׇ:e;ޝ#Wk1Qte!!e$RXǜlZB ^vwQxv&ܲP?=OvLIc=-}^,pX6Yyr|=T\Ex*F")BY1J,WX~gxҔBʳT^QE7Lǖ֚`x} A/cJ'b3^p!`@88X+#c$0PȚ<7 g9_i%A !IW?>bf(g_o6{LkiA3C "\w&lPBlwUqh`%5/R5ۺ{Ʈa*<7Y UJ{˔r!kLZt{SnϣG,5@U)k0C5-2GTD> VK5"z! جO yvFQص3C*xbU9bZbllk#h\/ӡp|7~QCԔGS ]Qh@Q{6W!G"[ y7$`J @s΍Ro%Jd K{xw"yAK"_HXȰ["(YiWYpOև?LpsDD1>PPHwm̵%{j5,@zKc#ĨC tTbש6% nJS#kij{yԑae9(c BI q@}5""dRB!}*F!mw/c)7'`+72}-b=65n-m=B83FKr@l^hv S0\7)rnVryDlIˏf\PR3@T9XȞ \c4LQn^9љ1~hͫ6Ǻwdy.8eǨQM U639r$$Sfz=TF24dM:ӀNg[`o/'h(~xq*m> ruev̫o1ƴL<_҄'Hc@ PՄ? l<9 вdᷴvM_QBH[^VN6ƌԈAm I+[ Σ筚Z$hLdb$\sTX.LjZ^Xފq  ׺?鹕 JH -#o*GmvrjAK}V4?˨ 2yhvN& ߌH:ڢa [.Rۚ$dWhH%AoP{Q?a72<ŗڥ`wѳVA*dABJgMT+0AB֬ >_DA_TJBgžBf/ܡ~Aj*+s6@._ӧQkaZ -R25-s7&r!K3NڴBUL{H}a*FlSr_9(KHaDg)h̊N!Lcjf;'ڿm*ᘤ4lפŋ,scb*pYɻn q5HԦ (s+0`5$ÿ;ו=i1TL߃d1fXW!%F-V0v:ۄH)Y% M !^h7NˏG@= U| ;cnZzMVon+o; 6/ӗfgo5ىv{RCrEԗ]6ρ+DypəۮN<^Ά 6keKψw  ;S 9C8mn>b;YZEiIO܃G7^PH%,UJF+3 f!8Qe2$}W?07;[i 5UߛG42c`B|Hu5Х3u-d@s'觙"{Ku)0M'!/I/"!b}i2O gNгk{O;4!/&]y)/T|L`\8 ZPC(&5Ng01RB0<Fb1?@$fy'`G'+Zd jT%YC髠iЕo,C/*y,I!P#,̧, ֹbh;CU Z/"ZWҬ[8"PUZMž~w?S!22|xScvZLl* 2lN@ΛC-pUn(F^B7clXx- x,g@JBwM闆M?J$E5" Y.i7_'Tsm$TX ž\íɏ_TXռʛwӱZ O0jzX7`J=*B%֭EY-b\kwۤc^.`coUǗHGrm@ )e}Aׂ<U3M}῵GR^{KPƁ9<|{h*Pdt.W!)VV _]Kj?;wx\Jqpr6~cp0/q(kQ-vV1̵ Ζ֨SVًT2t OY6ROy}6\XP穀( Nv &`lo}y3?[#L+zZ䙃o@c l& =n]YE @I+X~NJ1g% )'XW@>mi{'N.'}tu921RNit銲T@ ɰUq5I'nM?k)9Tsn WUZ$>&2 W97#z/;.YXܣj4DXՎ3??aa_;lbYiMH_!\] HWzRgh[3􂭄4uC3u6 &M<IHSk ލkzQ={!Eҙf)j5 X\u2e|:lw'sd7pQVk%(s+k~/ڂSa٥L ej*ʦlHv,OKez,q5\NQ*V,놭ُg^sV}w̞hԙ$ڪ HI>;3 %Ss,kmUKK55[:>| ):`UF&|2=Y|k>+X,\cB*PpYj{(~@HV֥D"V&M"&`UwpI; z;3ufWEuZbQ4izi8OL!QNSC/ K"F ؆-<=󔁻 [>Zl!r fBSf_xtͫ"W\'t~#N$$q6 ,c&F6S'*8ld+';HzU (fʰ'YãG[:!@n|qm8 }Z`Ŝ/F;:7K{k}Vrpo .vowIRlJfw)Ӭ Bg$=q+c=^3}{^%nK..RvVVrШnv_h`Qdf̘n!a0f ܼ0F$.}׶[He{TK=o7|^_yxQPz۽ ^gÂչgۢJ8XkHRPOTIS-Ni}355b Qi䛵jPpzd̥ wG^۸aGjpXNT4FK>F"atp1%RS#a9KVFB}Y~}zDj?ĐT} +9f̛d[ Of8-8Dqkpw!Qgwg B$ @:l` 2sКGhҎ|}to =bq!qD}&hYvYCm%?"˺!*>}-1F5^:w3VcGhHL@lVjs h.w c[|p uƦ$ruA'7՟pLN2it6g[[%[Ȑ ;,{EW2+x5y3f\ lgAVM~L 3k\ = b.Pi@!-;WMq}sVGMEo]@DCMQ1!5Jy~HNgv|l$ri3WYG\.c6* MpHg4o<`=^9s O7ZH.KkzUCi+PaLp#_xsGZAEq:TcdTBuK`rtTpQL0-O?G紳B7 R!#tyogJ`q.C9<ϊOYN7u ZB#Aو%&,@^4RЗϚƸ##E ^#rÌ_CuiD-GzۓY[4<P, ҭfrzLQ1gXWQb`ћ+3zW4BnQaOj:oH{~i΍ސ?mhV+ʅy")*v:i޲5^8 'W"'l#~]{z_&/D!T.G1~"tأ8A9\߷4G3qx#=Z!@-\n(ZM;U6)8577Y(jGwrU؟TkhZXi#_v81 (Ȋ*Pf`_#c7H?;oRGWCDf 0IHg<~ H>1UA䩒wMc_F:| cT_ Y{9Os˻#:\h;efit #Q8>TdQe 8 N30b+ !ʑ'$Ⲹp|6Sk`/ͩV>n{=siGծ%jsό]ߨLϞaMC Fhn}j񗩊MQͥ]QO7.~gɒ\Y+UrZ2N^P$R{bV AY߷yvvs$YZ`zsk^iCjY[&3XЭFtstf3^HnNqQe PU4ⰩYNz{W;șvEЋEh ;/pеe3vwIU g&b]Pf[+ig y,xX%'ۈ۟7s(Q1*rxksJpfvʍ]Ni]SoN3+agXdW?i|;$IRҧތy+1Pa=cO3thqC:m / @ۛVqnO@BV]YhEtvc?}/Kٸ̏W{/ %A AVtXJh%,}@1%!|!5IOs b?1kxne,y>WE³Se@[uKϝS))J#M!VbEac ۛ"9a$B{ӧͫr"irs L4P Vo9M7hJ&+aŚrwmXաUq{ u8ڂ+4dpiC׉ZL3[bvb\  ݶ,>swl'լ3Vblܢ7ܝ1O0#o\RqU4Eh%>M8ru^}|bo R'e,yw ;ko:Z/d"HMV%$ sp)h0LoqHEчf-+>ٗ,)!84x+#k*W>Z_v,Rwje*п?O)3W<5)9z`kKX&wSJJuܫjqF\8q#K )]4!ZwT\dxfxxhR Np<2駣$I5s.  ̽zqȍMД'pEASj焖IQRGHo^mW$7X^JaJV|6@j83 i@|tpb?v,Ϝrފ[>6 K'+ .P-ZSO/^ˢX`S_,U;eO WS0zH}sH;$Af+Z@iE;\|^g-|f᭧|Fܲn?#+9`6*֒2PW{ZD3d '1nď{ԸO%Ӻrd`iQXo<s^nQkDm/\=VdrȤs{}p7ԛhgڳZMfĝ_A *0sݡ&zk=qocJZdDzyҌƦe@r-2zTqxأĦ 7;W53R+rdɤYA!pkFNuha?%~rDzpw{Shk:.7l3+X*6Y[Vӕ2&~p7 sTIaD4\ؑnBS-iJ]@*d&Lc <-o[-a?;,H!Nah qx@UzwޯzF"\Rގ<8!rC+RL"rh ?)O@%>6䁿v@ \ x=1Yjӌa[9>Qdb| lyf)s`֝I0~k GEC>Z*rE1{c&`)\3BK]-c`m82 -h\I$/%{w̳ }9!כekOey~@-6^Nx3[SO:%z/OJ2"07h G\2]ZHW愡R;tgD5pCޯEYhWO7'΀^Җu7 ~ffUNc8q8P~jĮfxݢS9TG3SyPp0z}23X9d4?أ>`[ N$$\O$xC;]BOð kdŠ1/ks+ YS< N\/z+6b |kӳg;I~4}C'VNu꩔HhYtʐY ~-jJ-t 6HؽߎBH52MEkQ=As%J DF)*ƒD"?8tF~׾ʼnك.Թ kkZy.6ԥ&*G}N!'b-;>UŖD5}.i Z1@_f~8 ZUtʀ&LHu~c{ oc]erJ8+/JvzSX0&O8Fu =>;g5AT45a GX}XiDb^OH$Mvan BG*^4DnD#&e_i[:jU]J8SrmJv;P-hlc= u걨b0!6APs:aY%'GԚoz'.`Շ_YB-&YOl"؄, XlW̿@MU vF5D.~Ʀ s6m!Ǟeuu+]?{-8QT"it :cx}2.g5g|X3Ul{gd'?Sf*1`%džR ;\`ځT8NpV^gows|.J2/gV>4C֋0i {1Qj&z*zkJ8B&&k/aX)t|=Tzԩcu;8)]~f8~႟ڨD=Z!Ea(ay"kem9$vvgg#a[t#cBLy2JX'1OE)L=PѸw||K/X̉~r4x{[AɂɈ]}Sσn.MS`ӸX}.Q_c*s~ \#BH7ڼufBo<⩵ɢ+j3XvFd2vV7%؂=|bF0 \S8 X OHuX rHmHNZp!ǐmc.7G5{ڧ`zm>Ffx?ekj T \CT$ŧ*EIqxgLZhx1=BZ㰂(UJjTRo+q0 Vf:]!8jgGMXe>B[}("7OTy31b+64[ v|Z" $_j:8tf #s Wdz(n_u%!δ ql`"^l>b6 'javTg#EK1%GOU?6}5[N߯6g<o=Sa6RXMJ=L-eٱ'QXdJʍ6VctV m@59.Wiza']/KJɝH/0B| P]96R_.& V.B a\Y%ydhv Y R깅#BdxLw.,t,pNu%L߰φhjҤĿdva*0Ĭ]wRU *fְG ?ww .+ʆP$-72;C_$VՖ?Ɍ=o??>夂}LhRz\j.Ԏ[Z'`!H&ҍ+)W΅y+c7Xsg; ŐۋUaAkfLC %6)qw? |TM4Y.6!ne4'3}U2_b^Oe\9S'zOq]j$qV)iԐ#UPttS;9nQqi)O+W?=L[h .RXDxsjTN"q.Av*1:K+.lC_~jMIJoł8Röօ)nVHAqvڊ~maڗ0kgB`VԭtUDL_bMomW@'Lzf9-’v-be0[&\]\}3yE{;Sզ7QD*p.m݇!#ºk5>>;/JGPN혔NCvyV#E#N1+=)']TkT1(ޡAj:kdjB8zL]QKi׫_f~ S sd *ixtBWYz¥iXQ,z-hpP(h|hVdHfˤΨ5$~b}f)=&܌IKӞޒ "ok"&/3K9,Țx01,M5u46`vN54"<)E+W;,Tq57t?v;%Nc& @xint?"(˩u9@3|'Nj:K.a5F~ %0wxCDBKȀxG8\|`ߪt'3:k`j;Yud% BA j]Qah۠m@e-~D#&ζ`*OtA+H0c`YXMjy/]fUdcsK<8*hXl-$¨wa\=mjeܲ qNVR#8 T֨yhEyMq-4\{Yj.-a#*wIAߜhnYM)e}9;F J`YS=>{=E"a 1ү=krd^n;gACJu26 JjSGpF ې ;C9̆H[Y%O:v՛Y'Ů;K=zY.;XXCًhdЉl־l:nZ w> TYMc+Gri!njA"U-p՝ y~,Ӏ9W,럅*+$4(Qq9ttiR鑐|mBY󽡇:-ޙ$wAϕܜ_/+$4g?aZ#/}*KxboCnZxI/>A ΂dјS /̐]ӓhD$ `4j˯wާb`}{OۺU C' Lp!6WJ ~LEpnS %M ZKgcT2N:,CჃzDE,Ȫ&V JlAަFԷ"W( q)zyv]cY;7zbvG6#*V}(.Xc-</8mFD}>0g"X"wv(Dz7 9ZOFL~}4(˷j:Te繦3zZ+'Rܜ@@R= r}QI-Tp#X7T$d 91( ~WH Vg 'z]na(PvgaRr B) Zr'%X Cܢ !JXyq-|A}ATb!N'Į"r$'ˮ@/B2S=kU3] f~l K) ygK;ǤM-+l_Ppz_q^މ˦S#&g=pS ${bFer?b}9M(}Zc8F:`c !B_^ q\-J,Vƫ7Q nx5BՓN|8yss5'm=&x!Հ@L E-=E/ڹCm$e82#.3y羸\DK~sOuнK`>j83OHS1y }"S &;/Ƶxҵ|("obDQ:BVRqV3#k_K؛3mmW.}@JYkx41V&L?!osvMΥ|-"+ &ZCjmN7_.YMWG/tHy5=}lSP:_9>(EDA9iZCڬ}Nh$=J 9\CM%jJV}ԽJ#J)9͘\0CXn$PFz#/^}F O69[I3~΢x qEgkSv楝ז (N-8N̴QƎ`Nf.y ix0oML9 ӫF0Zmû8фc. Rf\#Xwag (E'9}T!TEuT>Ý3IIdqAh㠶]}6Z!tT鍈  zL#b z;x|M(hxFC@妨vutp h[ֹ漨*/_ف;IVAs`b0ºWoıC)Rzi, ?FN~.%HzA$H ` 2HĭJkHmAL%3nbM'˼"Tn~3| f8_5f݁n֜Cd挀vSwS|JCpi;9í`j'oXdm>dR@[QHkʰC?3F. 1#)>P5tIDIPDhċ.wʮ2Ј!&F m^*k!qADu ug]yKqy)9cq\ҬXO?RiϵR.[>OQ@)rABvJn҆D?Pv 2E:`~4QX?g[|77O B-ߝ1"By |_OaN7~LM,`>,AYfΓΉƇﴃ 8Bδ>OQ*݋9w6ѯ)ոUBNEGOOy(:jÇ /~9zw&?u<~(zղdz.Xra :|d-Hgj U4W݊1@@.`pJ1?]Km0JjnXCDycNyw9ș"Z\Bj_6 Bkl߃K08YH5iõI;:!IK角62_qR"Y}ߟ4SL?Bɷ[e_Nb ڍ-q;:cyQҾ\ $TC(( zAUb S⟾HlL?oFk-&\ScMuhl-1}MN34/Y34ȳZORp@>&IrW9{6/&< zG( Q,!jjՊHՠ9 r;ya:|V?wjKeHW5Xu`^/lKl=R2'[P|>`1OAcK(a 3cWnbC)gYhItY$XQ05%O=d/^We2\#Č%&EJ(N\BIi"Uim FJHw͸QE:5W?Vu"C0 :[Jvq YZ/y8'd q۶m:m''a͑_}NEjho_,?.{`ao؂\ƽ8gaLοҐ`Ded$^L!杜^uX A8 RN~צ"lfe`=w~c'hOj.)@8N㎎\r,Y 9l;:N䁥ψ%AΕ8JvsN"<Ƹr)lsآ&l "`ǧQՏ=3x= W_|.g4ޙGSv!zsQ#"Ýxt"SÃC]Eg=ގ*Un|g%>G8{nN~z7:wDsgi1 C 7/HLlxvG[3hWݼU> Oٗ.pst }k)l#Y]\ @'ۚȂ+m,)h7yNYq$߅(pGLJ~ݮMЬX{J$b kk9A͆( =_Mj)I%j'@\(ᙧTMF/RP6GXm~(AQ(˸3~V|[?n ,#cJvDO}7D 咎ٓAhhFlYd@]2}[J'IZ0^mPW`2"?*\!=Wo|@A<CwQEw(V6{୵J87WzpdetAu4<| ͏nYIV>?SsW'bN$q‡ f5n|%CK=)ۢ9UVtަ IzpOb6 5_so|޲paxŁ7/|3O6$֦*4CPMӾֺ*L$F+&]%@$x?]lܫP4&]Լ≮|ctWhQt F8̓?W!{.ЬcrzMA(+tCKTh"S3=LCs@ %Z^h5NGM3"gcYBL0xE*IMOHd^ UɆ0 ^nyѩluk#k6dBaE7F 6Tl^~ x_f=6S6fz:¼Hy XR]言}Bg18ᗃnLRw8)<gQ|nUsfny'm,uCE7t}yu[fB$2v _:zQ9I;8mC~4.2b!郧ϺQlgYȏjݠ Pnb$1j6#<'xN/x\]B('H=P= bE 8$gdk'8ѲXH zPZ8{*NQ8ЅiOy a7;^PYa.B|\<'oRiPFzi#9Nr'FWNd Gx`)tT74곍cwoYt=QUZ8Sg" uQP}}:K^bNrNwWe9$?P8g4}gSȑ>]2,v)Z؟2҉sߔZn(#aE2zsixVGAfFqZg܆}oֻfDPLSB8[-B>HJVg:sNwxvA8ׂ7_DC'l^  0sC!N|F~'^3Z^0u 15:xAI|JTQzԓ^yNehߎ<،0А .P{h@h?Um%tqv%u>)mVu4$ְ?Ʈ]1:/h<|}7~r4'Nz)K M}tAHg5Elm9_-x2 oh͈ҥHdNgY^0̝5F?_*(EQq Ib=uh'JW$"vɚُDeCi#`1H$( f֞S 2&'Pcuk5srxߐ^@lw%`+:zE|i(]UI%U10`/ _a~2#m4Zk4 2ހ雤QaҤx% +i;6-UR}zf6Dԗ8163R'OB\d#6yԛ8by 9fQ %Tm?S& 8C'[N0{"DOQ&1bH]]ZibRB8OT㧥2~RN.ݓc[󵾩=ռuΖy߫jc '-3-1}{MX(I?> {wZ -^u9QT٠ MPxCcĘ:jB"a/]qU#xoKp[&)6?58XY[Bez" uή@K~9z"pOP^ %kw m>t_N(x\YK8$o`tz}~ r] 6Wϐr"($8(*8Eu/W΄L띈T0Hj>y}Y4'9oCwxFSMQ-!cu5Ibn~k"/9`T?ޟVs+wZ[V,3 "gk V۳mTҜ8J{xSQ&dtԍogNuF{~.J<0oJ-.Qs$ٯ& ^j+Rz5eFj[Xe0 >#XYhݩVQ`@!Xyc'Hջ'3ߤ{n<-z d+.Q#լmrINwnM#f5F8~_K죡sUv xKlٱm|n$E;~Boj΄y5=CY3(6 TAv6ctx8v-B$yDC.W|4{ ]qt.J5M:^慖VhHp١D /B`~2aW[3rvD<.*ܜ\8U:0k$À.x1H ;'*v=ٸ7Uips$Cl]~a8ՙUQ+$عZtkG=),ʎ0-]#_XBiYo{$DTJ9e'&R>̫@!+  hqJH~mV'\/6KoS-!IMQ >W::.d 53zvs˕#/Sw7U+Ȩ/-;x=3%b$i2Ŗ֚"aHź@GwNZ>/ިnܡR'\ɳyxwa65FݙN )έoB eo)&0p + s+]ZNUOw*7Җbӱ5R?fP%0Wl.I]H!AK*:zȁNzSEMo8_鈉T{p@2f*V64~^]1&en:, rN3!6NE5D˭FC^@ N+YQ3OXR٠Jjժ.9䘘Fywn6qGtRMvHE;JO]VI蛫R * I}v;I$6lMnϫ~p^H}[4ԩ2e("[VS i%$:x[BjΌwS1)-+rK$vF3< % wt-]IdځI{f. W%9.%@{" ߸S\{e gsiQNA ILL;cܣ |o%F3eYLRv/?!d-`],-k¢vx}YDhcU< D)Vx40;EȧP>,a~=vE?`̓{ خ+m3cJ(ؖx9ti,S֯".)[uߓpj(W?~@ܻ͍:+H&n.x@an=yl\E 8œƘnؽdԠEm9X{Jx6±q 󇇵U/L6JjffACU[45K ;ḭ3!^QBcPS͢©)~'6u[x1y^bP.ŧ[#4.łȏg[R}ˬH.KgmG?Z!SeިNd~ӳ(JG%?!Seci*,HVhjwSmᒒPϭIk"t8%+ B4S^=-:1cizzcqT=94 ){om>#HdBKiK@}hh:%GɴKb2хiq6EaTub%W t~-K[x52BicR!hf>.`\ I\Mj_HCmKQDɖj=fL˂7P۠)$jTԛdA[E' +;}eЌ9f>p8M<yoMZi# ٳR>`nnmRi6@I=g) C(W$ֳ9P 5@^}|r/ePX L)'9] &2Le`AY _^Y1 j&i.oP[|+ov![Gi J?zN,e9ѓYiinn2JI\qt$Ei0.*Hs&3Z@:uRhL̒6x aRZtll"c2m(=יmtV=zVTKW\ L4G:3bwo!i߬z=Jh`t$LS:{nW;'K-0يM$$:5&<U!u7q.qm]Շ-X"1sO2??}֜:qYt:D/2;jkKN8wwݵh`znݷ' Ay규d7\4DR&9,{S&3MX}X[# 3qϾ08~LD .?u) ?HpxFÀPaJHЖEC 7ގ˛#SR]Bo>z$TOH!V$RR1Xw0gH薽B-phfF5&x<Xqjx)zGLd;o)HDFz\o{ 2oe-x sӢڄl!?*3nhD}ZU34HGєݶ.*o^'*ߊ5"Kbԙ凢mxuP I&j&m g[2ذ}*rrdu3QG =rT]KHQ :J ,jA Ա O v5 "#D$({SG+K&?0LjMhB,bmhoe"Mhѫ> Fx\hdZQ m3" Qb}cP`Yq?h:U)vre}πь3+IѪGtmj5yu󃢁bT!ѓC-WD0>a`H"pwPSt2q p6gV%kA d-_zCV6ϚeFOgA gs&pha&> HB+~B@%A. yi:?٨o^S:ވEyΡ@ /u ]穬Ղj̣UPj|!'($,`~}8C-#%ՖGRm ę%k'wmވ+Hz TR10|T{f,R!!Zc+&V+nja٦w3YPk_m"vhX0t] )ZSo#z 'Nelz_ eLn W"CrwjyLO'zjLapUaH&G]@/܁VUﻛ$ fPF\vƒ ]G4dAWl!Io[{TPY>W4]46ʐWx^G8uMap1(%ʨlx׈7[58S}I=#dE~=:uuN[DBzʟ.bk̲8(y.0)=ATTnU%2{eގ"Mz9@OD*O BJ  V03.]%{8Ùs60`.̬B@7Uh쬘{V"&JOmBRJ}%Xu ta+u?M DZs_DHxiK1< }+i̗W1DҜ t!u)1[OQt~ wpuVWcg`ǵU-O9 < 'nK=\c̄o 1zjȮkiO[]y~e ֶ07E+ ^S=Ќ_8YAmF\&ؚX=/As.qJ[& }PX>R =n-g4ة?חN`5Oa@zj lAN^DG{Xo8ap韸P3.|;- 9.Rb^gsZ3{c]5 _P 0x1Aju$Ɓ;p"'AY4e gTԋ?* iąIl==sﰃBm$zи_)y);1{8_EXh|٣x{b@$Yלz~`Ras޽xȾ rbXPp(6bZ$/))vuoi0*{A/6H)=.rTnҥst'҇\zk}~>w]+|&_"GVZa;՟`O@nt"խW65Hyg`>V]@Bg@ @3V`RBsi ۽I^Np͢UQ^R'4CN <13&MOS>]y<4cnB?GٯX&ءZ^0Ś EM-<<^rrq1S k<@X/ЇW`~̓!7oiv?/=x@9 J? Kykm+'\xӨ0-JI3کԤ"zbIf-EЀzjG'b &htl}%8?L%z}+$1R ~ipcr\5}ԫ3B'[ SXh߫@ $AG@ɝK})D4c|48!^cJay52 J=.PMc&ij8!en <~/)[Ey)v{Kvtɧ`N}Ga ۔UaR 75db'|X.ͯ ]4຋ Vѱq7$,NW#acXTk݈]LE4yR{oj w  n# WayL#`V>j!n:}LUU<}tퟮVKbuuLPqjU[Lf¦z@|V0WIO "h㛏CW72+Ejr~;9BY^{ 2d2ԁ={i_Cz! 0M7,ʠ3&<եy5@g[O~esPF Sy]g.dn ' 8I6|2 l-?lP8I 0,B~e8ԇ$2<L-&.6%Hh+U6B39h IkP2˱nGfw~\h 8T>e:TE+x!)}`JOL`x-u_KcUۀuxgXsw^mj#\UB3"9ّ ˜4QR)vD"y—o oqNOVQвvz CowsSrX07Yw `+ʳiADֲӒ# ^iBIe %:wO{Lx ~AOЋM,\hC)N4{)CŢgrԟk#@=rIt Hkh+S֖6p]ySǜ7Z`-'l銳|0SLȟn",SLzVI,"&&V|'LZE-ZT|b/9m0[c0#ɂ-t`Y{_J x{_BJrr+Ei BWy.[e}T>Ngp7vsGoEk$kI@ +%/et2\\gʦWn tbźx (No4Z#e8=Dz`_1B(Ҷ]|r7ΠT%ѡ/(TfD\Yk--pLI&ihfBmтK 'zBZPlMhKu\YT6 ]֎z2KqżU ZB) QΠ8 Sx }SEG!?`S=7b˳3W̕(( N` PnXQ4;9bOQGPb> V+!o[:*id /ωbf ]= 痖M^?n$(!"@+d6Aiۆ Vw'Þ*ޤ&O̸d!2lD}ǧW~Ṓuu5d2$(EdVJ^&3 ߚ0 䓹0YSΙV=%'F4YKɤ=Obr\4sq C0ה Ϙ@I]{?0clPeuW U1WnG~ iVņwD@F>dje<ܒu1*!KCۘJ].fB*"M 3<͎gײx^BAA$挩v! Ƀ]y}zbu+Tpd@휿.e/4hա9jNʽH-SH1LD996mi| =y`-cFmϵSD?X Ⱦ!$D-M̭ʡ6ʮ}dHɞmS RՂ:U ۼ|m)A+;(q+@e&,M6hi"E8w=vgUræ -5#LQazTl~6D<%^˭[[xg^w*[E_eOYݕ8ThOu#Sh0]_~^ԯfc-4Ё˩_ְ5VW`}s.)vֈvԮʵOyUPgtarψ$ѬW;g$R1~" p0]i!mΔo /i'"_Zb˒ˀ`+6xH^E\Ql5 r.H&h]na\4{7 ѢNjp?q:+XY)Ez6|"׻sۑ}9}yrsF1| ibx% B<、OMFx﵅)S=WJVDڅg-Mÿʘ6m9D\)$sb@q|'൅_\Jnz]¤w#/=嵮(7X\#?tԉW7 e bӦS.h!2-f۱]j-J| ټ'@Rھ0walP.񈄆W'YGƳǯX' "-ؘ5E_(@W;1\U!%yF|s/Sq5 P:Su;A6m=\> h;uHYag;a@R 6:$)ppOA+=RjrBYj>zbf0vJΈ'3c3ׇDf)˳U\U ^_ %ӬϟL+d`bAlWkz`p}]oJWX]lla[M׭;h n3O<ڜi5$95?3xuSA4d`k,OHEqg9~ }qȠkbd%iM%S:4yv):؊(Z׶r83=&xTGq@S$nXP\^*4u7).dzݖzΫI-+>-S^ߣ{i2|-)%D,; kwwn8IҾߠ6~2MG΢TB\Hq"]ae+lf˄1sM%#fiMmɹp@B~nH 3XYՔw0s,uEqK#ɎQZ.V(6,!@:XFj`k ra~uim|Ta5ݷ:T+f+@ oEVswi(;ȏ2YHq+12Y 󸎯eL4$~X+]~tM Z˲ߔ|HlKҐEx  !,z qA51pZ7Uɵ'J ڮ8~o;Xb7DLRRm H:,3 q#B̟L;A<ح@5i=ld*9^œ:(c{ȼJG4 'Lkf8u8WPKB001~VI] ݄-3J^{`u<.73C²2腁kؽ8> {u%NCm)m};hb+){^0 1_qkv*цjE֔S&,FRU}oԓwQ6220/L:Fokky}ϟQ;>hPht!^,?\tfQHH![eŊaE- i0bG>`hT#xa8U{}a#ޣ2C0ٵ~+R8lx\beʥ~*UZӑ$!Y3rA̳,̃:YX W=K4TzV!9TLJ&k 㷀*@)qgpx(SYAφ"ntk*}(eITN%?M٥z= `xpqp1v`Oh6eZ>R}^U`rLhPlEOɌ0_Kф$UI» fSa:TzWŽ3HfÖͲj\'_G n" T(5(H[I],՞@(fV{hjoxҀ| *ulWMyON5Mr!A7 V;iֿR'}^3-fr+)=(n s-:79,ގMې" ,X1#I2Ǚw> XYRI`%Hds,NN10z͘) m)pX& (?x{[jrWs:x;Q('0Ɵq%Tfdu&Qzw1 U&rqۈwm:ZJ+b0S_ͤATOi,:ܣO#@(GdFy)5h7.%#dtHYfLem O E4j&ԹʽTƙYg!:A|4W$!@Hܟ'l`#*AC3XHON3]Appb;ŧ~A7rfٴr%q4r8ds,p承5J+_>lRס$ϱj6N5|1d]aqsCP^e⑧o^Hz a⬦e<7P$wjfPH9k'r֐b -~Z'u]$[jJc=Rv$Y` Lm 3jWK)5bTtͽ.I'ag`CwܸLHZv" >?翹%RSi31n^4]gPoIJTye+ ~rn%V)oV Nyf!4P`zQ,5ƌ~NZ'XRx،(j%ƥ#߁<mg`od!~HSBHlFX@"hN4l1o+|u[\yӘp\fˢWU2cOV22vx{?hX>hE%'M:O gB/HI/Or}c\ j8.kqImQ@J=W>)wu4B4}=gC*꿕YBvuki(D֘U^&-9}ݿp]vǹnJPGexŽ5Yy _H+&zC k{qڒ|~ֶ ݵJa1ބQ$^l;y>`Nd^.Z5'7c}._o@,t Hp]S-<-~zh~"4F7r‡@CTނG.Y [/}"_o<G-՛U ugdz9fꓧ` SmvgΛyԕ|V9{ʊ`*C(RcDs`SSdfvSW睯pSE*,ul;LxБo|`BpC\eRo#:U \a(6J_?}iƐgKJ2S3ubZu@qaӗзfJbe um+Eޏ&uk9ĩZp/|]^%&LbƘw:]7` o܌#ܡ6Wyjs+ )1]˵7(~uJq;D{$'4эԧك[Pn%R׍f>׆عpzÊcN %>+`3&W7FBVDz:|.;{LWak#EAHؤY[}? kc=钟bq=Pxr`h{(bJXA 1&|ciU1O&\sal̪REFtٙV׌;gYtݼ9&R2T\i7Od(ىm-e"T; vBO^Y,@R+sE[J7*#5ծ;Tkݸ&^hi0tIJw҃7G kƸ&jF 9Fɾ-D/ j갥&}#h-WHu|jƙ|Q~6+pHd"A~.o.q]漲#]g|Z$o9 ~4t$|dPuvJEFOS:ؖ(M,PT-8z;f_F3 |fnLu,wDEDۺ>ve\QeE #嘒oFT#H=Vbkn& HB`~EC~ElkpI|48:X=d%ΈGF!oS@C/NBթTX9?PʘI`PH̲G0jgRNiGxTfN:3uq&3v9\;U ]#ڬ4(xvixB/fL:Yɣswz^KGewR*l| (=j;^K/-O\EAm,V&\M?< [m~20& .2R(X9w:8 :{Ydx=weqpD4\TaU Ȳ<7 k9xpMzi)ſ} `LN" ,aVDvú? rawkN=~uġ*T)NLT͜^W6< ˮxpi[#<@P[2w_ncwߩgW< =`ӣ#^UGđ BY\ H :PA`X5=;׻ ~ ū8Hl>~A u$-CR3KGezXbP%2b{!p49ɚ3h95s G/ܡmX&)Atx=Y7z/"KiD;I y +%='BDw\H&ES `So4+m.'[0vlҰ\]@%߽M"2ͳ)i*mHs V=)8n=׍ H(`-!|M msaœ)iE>)W(_UPfߘ#,pYo/h;Q]ym$չ/`9Q <2Acs{Չ2]{]jyh䶉F@$N3joTjf"WIBD*d.(2lAqq1f`󧈎 QH=+L\NxNVҔ^+vU9Ӈָ˅uG"$蹾eh%̫&U^ڨX- 0pmXHJ՚!,#FdCZ$6|›8Oߘ2uJRg%rSNk&C ф }2%Ӵt,wL=Q@ a! z[=5)nꁠmڴW;ح0z EeQ4"bߝ}~mILjI6Ep;;U N !ПK3$+~.d _mԹ{Fg gwɆ_F jۢKc 4L_.ށRV 0e"g'9 h]Fxyw}H>69x3sO`B4j& D,y- 5 *,=԰#d%]@!}x; ñ%;|Ƶb[4C+I5m4NuoJJRL4 ؕlk/a@&FId#EC]{=McEq] -SFLXNh+# Q/]gBeVLݤAr2_'5ࡺ]2* 8DJduJ46pf!+ ?9xYZǨZ G' /G OVU❋G3#BwP`>"ViӢ]>Ȩ⧑ٚ6FTLL:O$fC{hA1:N8I΅`8o<*!?蘜vdK9b,P<W  Ȕil f>T=zhS[Bx蹆ѳEIdk;"?ɀ$,L Jitn%`~dqSX5kMdEgl $ee ﹯}ӵ6#d(YNoʹu\iej |JV^b Ҷ'roz/F / e^< ԇvaF%ZC;BLߚ3KWm5Qu3ڔ&bG7<\GŠn*fK ;_6CIf Y5,z=tocݮ#~W3xp.sEiz6;G8qݺ }DS53Fq[~'4|+ 9nhh EtӍjq~o .6i p E*Qߋnq~[CPaIZqΪw7)5sZP5k+Vpu ;EǬb%a ǯW ךr),8O%Mt5qW nq.65ydDS;1_c]LFIp͝)+Uwo"B1j"3ش,&6m߄) /}&F"^x!ϚWqI=U>60W `Sĵd1ӵw$A3%_Eo3\3 F omVm^b*+~gSAatVwvFk\ ~:N[dO rY +motW>7['em( Lj%\96f\GY>VJ|AC8V4v̎Sb‡3QGrʁ) /oLZxn=0Øx|zb#|%p;BŽn?q(_xVHꧬbslP,5|jBW, c\Cүt0f\V+46o[ }::)jړ$jߡ@ ߤ5lvT4,FjJҥΣlpbXKDMdWdTBD!Aۅig@ƛ"\@M7*4LM#3=Y0c>Ue*]lc0C m kG$`ajs_QfxM@DvYUc!5vnhz|l:1HCG P"6m(14ֱ+񜞑ڭX 3`/W JvW]h:NHg*N6siRMli0n;0G* _q>!4Sbf MyHd+aL6Q^א %8|#t@lBŵ1Xŧku;T>D?M3z٦3 gCZ&*/5ygdz_)8ީHsvH(usT"o{VT}n+WUI[a)iYW'gpv|NPeށFe)֯V)EJUKI{p9֥un0V lkQrW/!-#jjGskwrC&aYdnNv;qq@d'hL9u8 7o "a|uO(84򥈁iL?hnapH2o+6T%"SASQ-1:$n4~00a$VЄMV/J݆Ϯ$&t$GMN+_8@ nqĺ?ȁ\⥅~c)H p#2Vei~ ESg%SvzTXݐzeI5QdЮHն47KeMG=Zcf©b_l /OE&=](".7FWmVO*f1U'aF@إ?M~.#d8N=lII'kq"'OrA̓"Nb4P:eK;}#`}2f>dah:ȟ$x}}ŇusA qd>% m'Y- 53\68j v:jz&}ڮJsZ 'NH$';M%@r);xLf!=^7EXV20}Btg1[UrfV͵O(K^HBb ߚ~$Mƶ1 fDf@zU 4)8M^-2 AQр,20|PL<+z`ٔpy JUZaZdmW P\=~Ӆa+SF2IffI:X- )c5#ZC` HFJ@-%yL075BGMj[K2E J\r/W>[Ճ:RztY~C?zOuzڪ.yH+S % Hy(ow&8>^ ,a}9jEdR| `R `S7;4 v%7.QvU=v>%˄h&~fV4= YCК!>hF$>mG`|we܂ r%;u~iW] vܴi U[6!4/8RI`h|A/g!:]`xak7H@35o˽rTˢ)_Ch8/\.dl3J!GMXETi,uENWAU qzwM&5mۿa r$HZ,^+{>Kce' ,nVg9;JqͰoʁadك4O" K61"=;/$ ?pa>lOZyMi&BeA1)+6̂ 3NAP8Q|;޾|vK.ҝ_i(@"ӱҬeq\ oZgk5ul!>?ar(d4`#C&7N<HWO#"E!RF->}\KL`|Kdhs oG<):5DlNi C`E [,Y)Y[/};Bt]5ⷒK/xE7UEg>ͷg.|W'&; ^&&Fwtpw7d?9k;VUZcJh zO$ 3 xx 3<ͻ2FM 8V|h;b+)eSY{T4U(e;\qUeS/3sĿ(e@ \8ܷaN(Ł+i5Wm(Ub2 %^ގbLZXᗨ3e'0%6m%rbm]@8;-K+iw986dcnjHckFK:w 83`Q yn 54xn/P9oB(IYfEa3Qfbx:yW/V ?H ,VcxKu̸7/o7ؾ%e#토ܔX0QCUoi&rzSw>@LHk5`5q8%#XZz{^UK1/>"Nc|Ote7Jhu 6nᄞÝh1A+D\) S<"{=(rvXW2Բ= r%u<%ʦ$й*4.lU(!wdȩ+R)7duĈoI%FJ`cA /%IYs6b08D–T`Q@Zk0 ʹG9A=)\7 l4ݾf2_:KT,_ͪ*q Q81F`Axi)"^QBUrF˳'pMCw5%^f)z$S\YI;Oʒ]S"rKYFH)G^TzMU9D{^¥;S𔦭 лw侀CTur2$A)0>!t ':pŢ'eT} @ &9Hdʅ+RT9gϐx_(sE^oHb$@TnM" -2/r+{)3Y2}P DC Zڜ'k kvqsd!;0bzi}q i-R`I"wJNJ 0\;+X^SO!`]M>drQ 6, u~~?.r-D~E~|SZdX%KgBzk,C:ΰ)lC_NE5,HDiawHeu20րUřT;)-(jG$`3'@!m+__ fD#S`*;UHR8&j;7y0U\zAQU> dJkKmJije $wgCSQLQ}BĮGD͘.z$_P_i2}@[)h3݈01`=߇ڄ3K>} wKy ~E98C/}3?8Kq\w|P:uZC8&IprdLJr v`7z&҈G$pd΢Ї.ˣz]"M5<{(QSuC`b'-3R~?(~b=ߤ?3W@$IZ>>э4a.T؉fkѼ7X8ZOʺcj-Lk;l|!>kT @а&`D裚kpd!~€^&nZmJ'MXoB(E %tXH6v4+^*)ElCI$hm:&)/S.qē]",y>9ij S?YcNuUR_u%t5|=$zyZg!uM`K}˔3aqgI=ƼP)4k`%1H|}P~ ?Xtup)y|ᅬQQ@Vy J D}DjM4Y̍e!5;S{!j)EJY5q+1ϰa {* m^]+dV#Fnt,Ӥ%XxriQK |@oni'|Hw]jAՒ!MaM(|OoV ΤdJ`$}d[r<ހ7gϺ5r(ߋQ+{?86 }2[c/FӏI=^jwTwj%ʶp&s4g jƷH /ctt279*4đyb]56)2٦xS%{ 7ai>r2po -RX&U@S E< ]ަ?qzBT5*+}]!" ?q]ΣX2VAŗ̏)mKӸx^Z;^<\fQG~7(gTI}.h\.E1c~w-/ aN8'!:4{bOaua68[`t`ƃA=)X\y,V\ϛn?lSC c''}prBr:3^>.Y)o*M~Ze5s"`1=?Wp |3r/ą, sL*TGg4,o\<6oI%Ql3%̓͝S ΋#P@\c` e=|]5g0F%䐺KJ[XT̀_AIQc3O 74}e}M3nsvQC^IYOLO P 5n(ZeAsJU?:cR9>[xa|HwhKx@!UAx (``v+#L`Q'b]h-m>:s/!\0o#þ|0 wN,WRAMO^d2R`:HgpAF*SVG˙R)O K((zZx? '[k5@6Q$/ȴf3(7P➊a JQήY`{1ߵ`xLE/ǣgug?ͯz(Y=@cay$0Q"K\A *W%snC)\:\ʃ|p7ME&B ;HD NJt7fƘ?H5c@䅩TKTR y;vh& (J-VЎՋ(Up(DQZE9FHE4ltAh\י&IB1x12j,eVkݓa){3 ~G1!F6tf'y1HYN+C'40%;ɚ]ʋ މ[73l/\Wv9#ϼ~yT3C\nmȻ`E#>u&ɽM$@ 1#IJ/Be7 5^X35(7&klJėi4s*z(<2"ѥRxb $_\Ȧ/ķ56u-PawpMI<Cۺ:9|ԋR!I^9c+H-Kw^2*`Qa%ZOc*e` Pd!+. ݸaL'J-c)>guсzrb5cY{LXv۱Yk-ϻ.FǕyK[Y u@/6zq(u^mEw;B Y>h;創Pfm=3;#g }1Θ_P2$Թk4YDiFzT%Eufp/f6G8\,TZiFKc9+"ML49'#ljHX~0Z;B ŝCgX='Qa^dCdu"l= ={!n̪<+ՋvkHrR^C,}-^$.GBB ;SDžwٕo5a Tl}4 ;YI$:խ:ؒڽM9B2K;!Wr6f @v!p9 )(uh!u7 .B5ҴW'.@X^~80'2Co6(]{j4,s3&|̇Y AJ'V.SXqY#j"rsXbI@=[:t(<|hAQ)/V>>AH@ml6Z>0CÒDBx>@z202Y‘Zu٩GGZvBH*YiJ^ ] 3}w;\#BX-m҉3@=%_bcFyȠW1!@Xܥ3F6!fƧ&:&nNʑ_(dy $,( ֨=\p t%ۅl,]fk-n(2nW8PWm %-hBёؙ:_[3huv·Qi}#tz>ߝJ>'eDs>\f|3*"_u?*D$tAhX`8i殨91$ݻN*@ YzS:oݷoUUpSpIRيMF#N$i?goXi!g$IyF$nAbt̠lco1>P&AXU&&o"6FP*2U5"0퐏\X'ߗmďz@P)OA78bi(ѧq)Je+œ[B 93vK~1@ZJ5$x.[}&D OÒ5C\ F3,TQ)}PT?v ~*>)؇4X\lWD/WػZ rIm p8 T$b1͛*$S k͈ZUEcZnLNbGq|'bRӲ@2e0ؽJo8"+a$o$ ~|'X! ?Nm#%5lH;QñQiiHq3יno;or_ǫK0&ApJ$z=2]rz, #X|3X,`n.GyEi=Asò=ȕSN95&4x)b" pXp_ q܈kʎ窢%cL T7-= ]fagaĭ];,W)+A_oELbQBKkY {_Q؉~Y@;ȉ0y{va6_Uy?E8Ϩ78uP>xoxw$P*^vi=gnD=.ۅRt`M(Aux[q|')ʑna<ljjvew@og62i}L+UK`ט"qߕR^e=aS@ VDv5džSCf]]pv D`w;wx;TT;;CCZwB L9Hv^P¸2d/f(O#baj~Q>Ydy~rDuە%Xm G|?!ʋr@&F?tVs)R#YN)ЦSN#_3/:өYj3Fa|q|*w(\M4,G?Ph߁,:ZÇ){◜H=(y3`/?Hmr`T ތc]N,vULLsK]e5 };Yj#te"TbՏǯu2EPGX#ؗzl <Ӹ"!a!SCpNr:7g tv*Ŕe0ui]MWE{0U~ϸ 0?X%c MyD\݉r}to>#AɼB癬.&[ǪkKAu X ܩm'Tĸ|@oj|/HBm 'ڕu:`2FcFR +gH'zqF<= M _\ZyBs`ejn@ [', ˑejZdzE hS[×p( aZ!o)u9d,[䙆H?{tRPV)P]YߑsV yv=kr#sAFPmNA#G.J>ĜRяM֦$<@s -E+M۬tX@W34x2!o97Ut?-%&IJ{k7G;? |t ~[ehMnҰO\)llWLC2 a$x^*s)_S Mi~_< ڝ=I[DWimȾ5tL\ST G`rg,$=nmumm&9C>g@vXzIAlGbF} N=yuakhK¾UϳwE2RSe{ު?/)Vt,IN"JkjG!N]|6u7:Ki~HU7Yk^y!+DŽm>k'H󩐋ÓO$qMp6|fjm.a.r)tM{6VgA&"pXFFvz҉Qǎ,_r.gMd<>*uj3:lC87Y0|ITZr 3Z8De\2 ]q$3rHhF?G{K1q[1^ (@Kz.exy7شj{p+j ߍǬTs V|5da ~ ٥#/rTj4yyW?'{ 󇚎BK2C T, cC?֩t?D^]dqO]q+Q8H6tB6b?4kCfi*A`hX@m>BTq9g}AG/9U@I gGiMNCVѬFwؾC=z5 d9YMl`O:¸\rR\m @22j.ϵCT*hx8L P7#\uvDϊ84ۄ#B' & X`YkOrҚ{ p˝Ov`eT 8YnȖPĎޏB呂}w<Umg? 3 LbpNˣ*RIJD!=O5 "ZkRlSȓȷF\' Kd7}7ya=wS)f5˳ C=(dp3Qv 0mèۍϘalO!dIZ[qv >MB YgB@W曯>'+$,jwU~4 ]t>eIKc80$nZ"_!X%\{,9n<[ǍK [g ,H{4@nϱ!=4عHWlh u׉6sys0Sk)nW BGIn`;C|u"ux׆Y@W;5T@N\aM:E+è..H>~\PQpL@E4;kT@_Qmm i9l8xGJ@mfå8WVI'Y™0w m&85y2;05LXyaD42? 6:X)i'pq)BP6qUc{^]?w}Vt41je^j aТE|9˓n/_mN)I5)gA^ ]v)Y ޳'nDa99Y&kt?^wRx:> %86$To_Xnm k6@ˋ/95THr.Gen:J̘ǼSsHtr:uC {Я*e^wGCY.^UH9'gB]jE}=:m>L|1Mu ܻEliDI=q| ibQ-JWeQk˱qdC45~:/ 3.6fLrZ(ncoIe X,tnonZ(St{KN,i}%4 /KQBu)ȿct:$DHϱ @sRTVAӚrZ]Lm}i8o5ܺy۪ET5,-4Z*?6vq3mܕ4㸙W8;u> +*q}`}k;ixTsyg?W9׼)o@~«A:;4>E7%l?U‡&~(FbU0ޠ}he <|DP{4p{Sdm }ZM&w MȲޞ,F;t,ɂ*c)5*`s⃗2MϱZaFF'irlYDŒbtE>,1, ,T#m|a aK$RU`O/ m,Dt8S~YEWytdW#ד6W=#9jt|vg ә,3خ GtW%cXrWRrlQ4@zA$x, E۟y9J{( "ЃSMeI@'Ϧ8zi14)03}Zmjo׷`1gz&63Q D$t.a,޹|/^Jeq{^ҥ8f $TTW? 8PYo;zx m f>E#%* ?Hu}Y qةR!=L{)wT/WrwȆa3n)CEo) jtqn'~$xy UiLXN$l2"'uU,% ⠅cJ R1 NP)^/8?dbuz? ځ  r+t7wl6QcA6<'P0MAX?:^^3+ySmch6r_r QA`ץ]l*SXEc+p˲_5;zhrD3s eTJ ,4* ')07[-J% ܋|"I-E5|uoSK̐qF*W]ĆkD9eK% q6q={t^Xy8n6mpE&l^riRiʱYCIxn ^4Mzn>%O;-J%jxs.ZPJzvg;Dm%~h`kX1:=!jœk irxqQ?~5`)ٗ6iPhRFj6f>%SÌW0;S=ƆT}%Y-A:m~LMK)pEWF}<KDT&FՐMmU<1 GQ]3p$+J5M4┙xShc.A[o)DB Jv s);-٣rx~RVymR&Y'jʳu"uB3GJz{se><_IZcq&#0fϘgR7ª{yt']SZ)8<.3 &]>I[G!`+3 q6k~iWKȍX ͠ ZWZ*-dϿnTa"n]BN(*ۛwFZ+s V ḥ!76XEzq75zv fs5|N ]$r!tQBiJ1η*:bJҜ$i)Z/rA(B:dX^bFPD8Ok)d f`./sMIh} ]T&\–z{T@04y7BC!XE17[$`jAFۭa3p4Sǜ_|H6 co&YA4ܽlΤ.?Dko F KUldĔqdws[@Y\ľG&2gjd~C5b8>?¸4BYp:^ NzQhjy$~=S2C Gl^GbX9U\vW *e/S}J%Kd-@ eɺ]1Q$FA}BBOɗ~onہ<%1 ܐBZA1wLCR1TrpTqr$M&tϱ-(RKF<(^r) ҅aǷ]7R->fX0sdw˔RYfc)NTO.ZeqJi@;GE{NpD/0cpD3m):嵄/=|1z6~3?i.L+׿3^޼1HU }oг} ${OWAęF'룻Pe8=#/&?#u&tXrصp@90R23i'Lޒt%\rl$lkO)y5T$0s~hA xR*6% KEdp)%/RNǏ*jSv"Y+mlr߷#\uM'!Lj_la&[ߠsyƵ|y;DQ۝i|m> g9s}DU.\ًfgͱ/96>$]C73!]_ a&SL]թ.*dT[UY<aEWl3%;AyKJ^|5{(I^)7YwH`TKlv8ʟ9;l-\4b}Wex%jю36s .9~Tͣt2Kdwo rr-h& b~n鋯`ٺsԨ+t֡B넁YC]qV!B A'ܽB4wAyZ3BӔ0! hϖ$5eF%b@4 F8t]潛B0U|Y,#<ڒ(WL.6qz:!XgaB'VDPMG8b*B<ٌ qeoB2fml;zCpT\f,~Wq8SŹMtB({,u.e %ܔS`7BG&k*% hr32h ;IF]isJ`M1/U4LC u*:`7Ə啻#n>AxA}Ǚ\^C}|ɑܻ4$>czMo{Mo1: 6zTPndivx@}`9'wNygq:pN֛{8`ao2,變YD|P$5#pPq ѽ|Gn5:[B- )I4xLJց 狖f Sq @=tCHfq-WZ6[iVfO:.zo_Q9p:x{BGxv'PZ;KG&syI(xP_-7=i$e8rV,yЯHd C8ޅv%}VM9y!|v w]хeRE]j,޺`Fu.(lOWCq.dQ! >bo=RYunҺރ93@' DotpGKd[}{{"5p=e myGϩQVʤR{H/t^^pb@F{Xg֒e}> G>5%eKハ}IJ+*\'3Mv6 AVk`#ϡF ^ 񣁛 Oezd<=)e&wSIzg Z| 'ˊMQKW.'OxKEU!f:\Qd"Y6uO*!*>i_8OdAgj-+{7\@pET&p\BR?Y-ƸJoZF \>SJ>I6GI(5!$ݧKr^8AQjzmq{@-1s9xM=cpH=XPp31S`f%g[ߐ;ޫCXUީ)rL,p|f=UԈ|VI\KosZlUZ4^Ӵ@ISH?Ev !Ethl\4oĩ K~BԣFtUkd9-:" g0\CM%J7H9!#=OwrǢnկ?-'6Ws|yq!=3v8n ^8i7F}d|F*6 AMmkrKNqIRܓq'O SI$9.N&V v~Uuly7*;āc+L0j@}i^Ef#!ScXLA:-%ST\6u]TPؙ }Hzqq宾œFǣw^g?T!El \\"R]no gw-у)@T:<P|o iw-FY]4#^E|HgJIw+?n!1Sgv0hJhe-ڼ鵄׷-II4;)l^;- 00Ms`9` n 4^ڎyM@jbEo6=CR.h(Dp:- R "cD=éٵIKmmJsh*gX'd<|n]{7q.pR 7Vo8bTS`44Z5C @ c&u+3u,gԒ꜈=8IxS.jRu/[S zK=J곈D= AJE iR'EMHF *m"yUlZYƈ e7@U~ajyϱR9.z,R4n#]C^jxRrp(z?ӝnUJ KU 9Odb{ 5f5vʝŇ)bX('z2SNrh!VhKP<@hj6dz/~k}V=^֪<&W%F֧)v'M⸥32[=fX?*-֜^!s? ^|3%Q=| =څ Xq?N .p7άHw BBzzD:Mr 㺟\eZb QI7KYV/>ɤ n䍧8 \P&G7DN/<5L6>``Ji'C4ϊ}Sz`b7d7't (]@-wЈlxΊs8(dtB}pbYs B c?li{iHH^+͚6 77WDAAܿ6|^WӴtmo*5AmIOMcRuLjJlK_5 '>o&whꩪb/2ai)( OE͙iqS/y,i_:\)šAefDP5ݓS\F4Wm2tDͬ+t]=#K2!}u]dM? ݹ-LeZN޺W@CX`( Հs*r"A߱mچB=X'+*++|؅f,(<'ˠJKQF&ڃ?CQ>&ZEݚA}7 H,¿F39'D]єADs_:`F3pq*cIeo;h t\b Hv5e.> ?eQJw[!vj2η8W`6WV c)a $#rT|ws[>$cBX 7K+۞冡nޕfFA xt‾I] d+BU"٫ q֒pBդz ;3Vwk:mXThƳzE2D>7c{hIA̦R2ůa\Kƪ052-nh6QCA#T܈N!dPkl"Fw(ˮ(;<`LB+ ({@>98铭s5S^u#'K mvDvqmǞb%eX?q(Ǖ Ǿ@I15hv{8cp8y^a* 6Q8I6P[lM )jPc6ȷ d` 'vMmnY*y9: =nW6oq:ΣVfozǏDuC#䐇x`w>HXC{c$}jEy朜,uMr)z@gXaUeFJ\=eo2q&OzZhPp[5@j3ۿzZSg]GBR^b55,+ڋu=s{jmP e?Xq:~4DHM. =: pd`UơUW) Ry2se'+7ض+/6">v莗=Ya1RتctLow~8#>ˮ~OS11䔎L62f4F}9wzEVm?3wc\+Il.16Cߵ\l$!I#ւ<<輺_0v1iYJ)~+vQ>L[b4AJ;\>ȭ L؋ 0˅w}<߮^SC,]`#` l-K:G/$ܸeWB2Te@e|9TWFpZ0A ۋךW#j 1[K/w>o?4 d&X+anuw_z!Yi*6kO~:0·]s4cXg-ad6%yXE-EѢp`ϔ/nΧx++bf-6q %wckЗ,8HlCkC#k\B/Ivvl鮍|;4d!"GN̥8T<ʅpVxnZ0eRzڧVsض[*haCg {I#eUp0:n^o ?֡Jo)S?02㖯Y=j *C!hM#\k􁇩=wPU6Nv1_tG%cM%hGz^S930h ZpJm}61Oye?+)9y<_3C/M|If-ŚRjnL,vq1*I 1dThw2c$誛+J <0{)8$3`T$K_ӟLW&!#Z8~J{l'Gz:wY +>OQJTE q p"HN"VOH Rُj)8kohؿTWNT}^wlU,BY3<jq꯵2 iMfStx"_*qwPe3 YUQM-8&TE+-SM*U!lQJVPQp9gǙ\v޳q=Uי AsKǤQrTgn+?0 M_wnFclȅYf;C٫6c)#OՇ!84y$Ѕ^4S7ބ=p=p.B⌴>%Lޖ#区mnJ_z,cP0ѤmzpΦ#Vj]裪Dp{E"JONOdae]lxٸ$B ט&@$ bnPɾ_9*vS]aڃԨ bq Q~"NM+T20bG"KdK=_M0)Eqp"" /Miv_zpDO36WB: 8e=B[-aM;c&XVeA"+-ޑTCAtҠ_H8pepwBOP,&Qe@VLr {*H;[R!d5ק<; ֥ڭ#Io[C-zyr5yýqoUޡ5E|RUPǬB6N>,}_:lcA23V^qӏ,ib9OzӿI{x8J Tr=LQG{[QM~LZ;0-"ZHl^G5Hnہ\~78eD;2bgA-Fi~|T9_hI,m(n"dw4_K<^E*5fi(FZ'8AnJ9>LΫUvö~ =0DOpbG;G5n5ji+'(C+Z76{ |=)kVp@&7$?}?Ա 'basrB)[#{=t9TfZ]&G4^gʨힰLcK#-@'B})i)yRMҦ( .FFL.]c0s0vw b".PyGH^Miz)mcx^fTR.y1G&IS$Ld7#:*4u80&~V]aL]Uh?kʇnxeaZX0sjiAvʬ$|xCUGNx*FYpaGLΊO%\ 8S֖tjsxH6s5KgOG*U {^؞I 0lnj2* p[xZTjLh.1|-6'G0Ȝ!3'P֏-l[)W{qC>/S:*C F=|1 `J | N +RAUC&(YR//|P`Kl0oƮaNo{oQɆcj*K^8â ;X\zё̉]Wf}r\m ةf4^ N (aE(`1%jˤPoy7Լ8ݼ82OYL-ݻx&P>n 8?E INI5[t5r1RzxKK0Tt>㟜u u>pK% "!8"2)mD.w85BS4vã[% iMx~v9m8& *^*koe{ ;|O?y|1J&l:^<j6TyU#om`Q!/5rL\H!0Ǩ<+"AcJs8ŏdٺǪ*{)epm W"Z@h㸄jReǑD$̝`$ 3|04H%2T"6V&EU3+2,GI Ѡ%WռVE35%s+6*{%.lYKyt!⹥.CejCDdxd_[cH5#dWj..X<8f2JazcD֟!FUZ/naYEuhoāQ~dwWJ3ٔ߫TA| f7E(!1!5 [K(nÏ,iU924:ٝvtTatܵ|8bZ$M628$uxS AZLP9 %WD5NC9V;t9{9_ץc[./_= zaq H]ՋrthޒLCϟq1m]%} S}V3˳F+Pqc Q;jzv%PotIG(CT⌔c8k^v(0ZWu0 2xNP|õNL9-DkhR2oryt+FAdD0tj[F*Z=ЃUN䡁4uAʉeۈ{XZ,-C P(|[so++>Tn]/vB^!,<Ձ)m0S1M8?#=37z ^^`p"W~prjMj*~,}畯߅'.l}0-3m}TN8V]NZ- !O[LI; ]6|p~<7e}io X/ϱoY1P]o(҃薯Hz(=n&9r& ^q|d."S&aEhXwH*BQ2B It'I9UhWsS_GDZ/~O=A=K|yIJVJ8{YJH#$.HfsI!xK̞$ "~#(%Զ>nDW"gKh`^ ъWNA=DOMx$~FuNnD>-13kd(cY*v-7hJQ}!GA)1|mt } JY 1xPPQ#Ʋc-# /X6M[4ڭTΑa B.T1m=3-DU ].Gk@e;7q@\AvoG[2@swms#LBR)ncK~M0o-!S Us><^Iv3eJ2{sY' Z Ii TTk,P(CU[| mŸ2._NN3n/k_QTMYHRX{31'`7KIqT!XP?νA$,r!yW- >){T[9NL7%T'$M cJ$c>|Im)$-0rfi,H_rfdp|l^=e Al-"enԟ|m;)oFNzGH{KhUhNPX*N[=.rK-yKC*bv ~L& O-R%8WC D̾]直1_44 "wDHi*ڮh&LzXC=^#S7غ9;P1 A_ N9=oD,L5lk"[PRK`;al6|A_h7]wfktzdBr^@ ^[J~o abr Oߘx%K=q'? R*|]r)HFQK_K<*GpO DH~$PDgJwqK4V}>4JK'HY4d}21B"-h84C۝_iǖv!u)';&,Cu9TmS:斃o ܼ.#=r"=kYB"5 ?e 6L0GH+t>لHsƇ2sK%0:uN:ˏ`SHGG0_Lh#7U+-;u$w+z>Bw꫙"(咔Gvel}@x5ʌ:GLJ#C/H }ǦkZinwj(1яBv SCLY-52vr{  abon>Vrԍt)94$lmK$7E]m0 _[˾R9~Ȍ?2;D]>o XX ˫k ;7=c,'1?i'KsOkSUt+UcsySDZ*CL,,\xpfkV|fq ڔh[a.BukEZpRߵ{)9,[U^g&uR;Vԑm 3BwF뗣DgqzWi H\TGqDU6a""жBYt+5R$8GF * H4Ԍ~yNkܦx7Ni$^|a'dͬ b7Š'M88Vnm L+G!(BI$Z|͡l^Bl7_eGc>kU@Z;'`>=R޻ĥїqdz,jssP ?<,/[]jp Vq>e|g$1O:!!LG)(G*+"EGA*&H"IU΃NirP _G,+|4 ZZ=[7>f ɞrȟ)-@w5R2 ٱ&r0Ob&̰ Q(PY}2ɍ g,<\c\5ʉdv 6#(4F1իe cՄ]FL2$f ĤaiwJ/H}-e+Jwd`O&D3#gFA[aAs4D!Ӡv@๕fVd6QzVYTv_Aiŋx#V8ؒ% ,$ {;RjQ7[gx%N$D"\J#`\^ L=`p@C w{[}΃#~U(:s29Z#_%I&T9R-YoI%W)GIfc i1"e\P~slxv6 񆥆7^gqPjW SCOD&ŷk& 0=h"W_tl<3 ~f vEnx-(&\;:G?MpP{-5YޣnO}L(j쾆A1agN)_)!U"߄RuwlI{.$-q=!u܀m-Y*~|޾ͪ|30czWHz&qA! "_ /Ez .% B*+G8eKGM$I)1j('/N%Os.-6Tuc#Q+?|-)pPӬ JLl_zB򴅺wYJY2zn\gJ۠ 9aRXEfG)A[w9BK[ަ,rIy~[j`LtǛ O߭VG?\j[4w݅K R3·%k͓ђf0ЄP|ja͐٣2wJ-l5sXN^=36I-> )|(y횝uO (ղB[2E\!j!Y* ]ӻˣ㯘}->?oWW*鑚Mn(ĢTd{~+Vk>F(53pCOd6<)"@d}FUӎUPnJEth.H,a7"D2laДyhOy2`S ]J&NƐD/cyB׹:ۼW<,J>l¶ 4;` Sye_ȗQ7j4GT5K*; fSw:[ό[a7V_h,`=iC!&+8փ'UwjмpX%hrX 'hwc'](ˑL03SjSlG>3jP7嶝76LXVO 끁;G0O ~Ocd&G~s7}PN4|s/bJ fM x+g$e f55-JT};P`<;+O"{IȂc%bC;\|Ex0VG5 ߰ΎK};oɎ[s:[#ܳJ/NEĺY/ F:'0oc"C0*DX;7ÊP㵾Ed3x!e\;գMp gn' \j=y-BDA8[op/D+#]#0ܦRk3u)gG!.҈z0y2JO82_l~+="SLa`64UflO7y`-}ƒ!CGbdݑA& !c!~7Kq8 D? 5:w'j ~w( GgeCURܞ=M'9e ] ]ebedQ0MH,k֪\j)e QS;#ײ1 }1݃?ΚuRvtTTEIvޢcwY!w.C dŶ'*\!3JcxzyݳtE'cve΅5~*pTA-Z$g7/3J\تU aGzJb8l&K}]kҀFk֪Yߗ(nFl5 5yTRu"?J~qcy5cE{8`.1"p2{ ڑЈ/ge"`ԙ5@89[`*% M[\Ҙy @~Һ:"ͱS'}.?sĭc{GAe4m&b<3P5l VJ*<8ѾFvR'ڐ8C;==eA6֯oKuDy'\jeUs$_5w<|O ] )DaWd'G>ơo1 Qu+/H3(y(4 k{lP[5I>b"?6l0 CayRuSCۜnː8Zrq~;QP2YԌ P3f/&vu cQʎtDJN@{ga (Aļĭa-MI_Wm,0J'3s/-M_WFvNVLż/33he ?|fܔ #^*IW:3 qwRN23g[J)5- i͂/^ !_7ZQ;ΰJS_s;4 xzM\@XFT%l|ӐtBhsEm̴QRKvVlm,h`B&M?>rVcQn[/\nBg~J;U@wމn]Vd` xG:πc r9 ^ge-U`.eq%<ق#܈V d,^+F eD Roe3ZvMeI{ iGg!s;dq;2K"kQelw}ŅڵL#"VR&;֙ȼa::hJZFJ%"VV?=UgC?paNUcuViLa#!} E'Qo7ߏ6AD1 bGpoF3GM%Op`4JX\g ր4oo {7R k$o3 ~8*Xn'DD49(Zjo*dߨBpDM׋m^aV4¡z}wşOcOvniimNgq8 @-jyB~'8(UHd^iTJ XR-gGT)Vo(6o?@z[׸>&εtTrָ2N\tFFj2A RjGv3>0Y͋gX2rtApRea ES'޼LŻ1a/g(_`'׊!ɵw BVxf-t 9e>m!rR[<ڣݖH?(`YeWKFTp,ȶDIq錯- 27 &UBPWS$C hK СxiKmrM(")5㷻ݭǗ봌yF/(d-NWnX#v a;}%Na(U@06e,߽%\q@7b\` }\0 q;؇?P S0uw|Q -³_͈JN,mP4]_  q찍[EMf n!0XSr/zF._QwKZTW@u0x(HaVLz g=U z#1LQka+Ƞ=(GߨYG8sQ€T-$);d>+%9U 2"ia[8a`4WgmCЮT~AF\"Z}_g sB6&69wVbH0U&֝O# [gU~%'FV ߻2tm )sGkšɫ`}iŧ6cN094XP/>zh(wr!Ҏ7&|f6΃ct?8&"YG[3gSTD# mzZ1u$ް֓s~e j9$Ũ<"tOk37dV[pM`RmZ1#E1Ѱ- wéeAtWD|ʱ*>ŗ͸ڼ cKLCC>34_֮vuP 3 0xjeC$<5.֯UdF*}WTq߇kà+]JԖwW}(l3g6볭@nn?lI瘳&KU\=5Ii].q8톪=D/g\4X'j.)0<$cשR'{\1s*@bRDݿ*6V[{3PX'uC2 Z 9oAw)Au(oZc6¾pmG-[q$)7.T}2}&=A/2I_/ܐٚGy2MJ+BȤ)y9lB*.n3<9L8Pֻ߉R;^ vZ8|mPHnŝ >}*9PKB?ɖB˥qʅ'{p>^yXusw:`E _HMOXvYBu+p1b'& $"=$r?b!C (%{7`M:Cde\P &<u!|Hy{βHKQ'N/~"g_#E3(CӎlĽx{MI@xTUì}.UsF]P:;qۨZ}ȧ9kFDI.-9pkF϶'~,FDq'4q>R\ {A"yQO Ql5һ4|Eˏ4(OYB{>hăK.~ךWfGaefE=rjCO4g". 'i5+KdユF؞sIzypr5&t\1oN2\|#=hus|H@c7&rS`Yn\C&t @ZU:[cGt1v$G2s'pњ<jLz_^..5Ѯ3xtMUy&xk{AԒsVa/r.Xyy{'aY<TeÌo<xp) -0Σսʼn ɢ=!@8 w# @(`>KJlG3ȵK M*ZIҊ}lGb.u'vCq$U=>wkXO}}5Ws܆w\J:3L,7!K7/' ,f=kYazQuM9?ZaN+Vr/ E'P\1L0D:[`7~CgG;P~9f61 q{+$$ص~ч(8YZmav:=ۜ(luUT ٽdzyBf2~>؛Yq7:A5p*÷L۳Fܡ{/ŋ1q uܞ!J?C f$B߯ p DW'Vɵmg{7:`O9VVǸ ΪP@Lz6`LY.չel6Dz)/P %$c&k.齠7a\EUGbz_ pgȶF?詁RrXDu\N+&%GphZm~0â!Ip!}yP4!'LW.@5bEtM}`^G=pl㉓vU-rԟ<%\K9 愪Za7M[NV@nb4fރ#:)Vz?Y1p\ t^兦$+V3S!ޫfJ4bqEi t,>Rּ'XͲ}o#旵 M@V㲅>Y?q>N]]}O~Eti~Yrij J3y`9-6Di_&^lY@Luf%5 P ,ͥv}IR[S4s0Z~ƴM4΅Nc+CCRW%/pa4(^0hqdpBT#5Sji ̞ٙ%q9 l5ͽ"S,]MXMI%4,4~9 mv՝GQӺŠVK}Y~BVy`+DŽsg$83EeȆ/5krurN3c 9V8eX.t:27pUq|2D3'Z=u%~䨼6& [,^=tc.Gmpxy0NƲPBɜ5@Zy *+(J>.[:Am`7*jm6`8TϺ<}BV]h˘SB`f5WVڣPwۖ#<~2Zn ~AaPvo&H%EMU*L꼮R<:GVҪ %2SU#^j!6 j}xY ^viY Cנ1ަ{ (/l8u@ ;U(Y-3p6M@_i'm zgl|i3c ҥu7; Xlee 3T/CTV`/傶ni!Qv  gΖ]oT %IRX˄bL2 fSkGۛΝ.[Gx)gk#c{2^{'{I {u"hcs@_Y!{[B҇†X Oo7qC!_HYD0y:NB^:(fts!IӾ({){Z)2Jv F+NI@paه*ŦW Aتvo!8TD5BI&-Io*" VVXl0#a/q]^œa*z e b}4` * 2kd]LA[ŎB6o[^jeK-MV'~BMUz TQ鍎y:(vt[f\0``gJIa;hcvK\8:f0YKbDg&rōQ7SDq:"\Y0%,gɛG$ܩndLSxRLlTe ~*NؠrnP[1}凎@ȊX;Qr,yg^ Zuk.Xń#BP;0'""d|h/"6y;{ZKNUJ ؆]`P~YjUpOC&ہӸ(b(.\^|ο?;%cTzg :֜1Ug WOVix:,a> Nt^R\t7`^M~ރwk]ki)$QY s~߅:j<-dbm!x00h+!,'r\+Dt=u Zlp8=z*^w 诵O{x8&r7}nV?nO؊p2wL2slنJl}m>XLv;'z̥01\_{xɁE^y ` ΟM =1c>]LUȂAdq_BɊ^_9ԍ2W_rH *e3>^J٣ե:S``o剦zHLnҵ1/ThQ*^Bn`U`gA0.7N5{oX|1k:3W}dŧNϠ -jWlxfEu&9^W9;-Nϛ\/:Mi>ðt%rh[^oըU3õ*F9nׇ=srf6^[C$u+l qzSOՇX.+ QhB ѫCe)H_P2D"LkaHɘ jYj1ճbئ#{ Npb1A9ϟHmthNSf55i'U5Qj:)|8hB'XuȎw̕$hQOQޠԚp kmZGLWlf c`(3ĴMzykԇ`Ts5Ңud[kc->ccM'!?Ytnm_yve sȀT#*BafѥuT4t,:XMїkf+/t4T+=BŅ7fBD&RK+5Q9zr]151%N/ lHX?+21=ۥj&LHbVhwedW&a\KR>FKj% l k6C䄈d~ȟ<-cGY\FKF{*5JuHr-6@i}篨@= f8m#ȿ LZ_˃%*#PBv #dEzr"ʴ<S x4ߺ-2yZ ZGݴv5`OA׋p+tեi7Cu_1A mnVccG{?cˉ0XgKh@yd dwaz7Dnndh*0 RX'nUTqф#N>A1#[cV&oǾ ')N{&O2 tN-Զ-n$Ns|mf'>޹u{ @Y4?rt:%r%%Ks  {$(sk2z`T%O7 aSQ3XrIoɢ(`l KBmٱhynɭDP/"=7m_\9(c.Wp&E\DXE&:nx2#2O*a&lp/9<1\}3aOF Ѳ#JQ4CN,x||=Mv8R%5@ȍԐЯ4on޷A.*,ț|4zzT ~{^U )(_E1D{ XX %=V ANJ(GaP&5 ;Wu~ءfX#TJצ_*.gOm|HJt¯ˡhmY~'g6QCgk˗;H4ZK=Wy<9C_'ȭE30^ D~XsmVf=]*:ZzlveLR5ꞪW,ݷ)] B8ɾ' uU%bc!m2릪V/l\=W7vn777'a.]k YMA7^Kr qjl%Z%3VVzNGyJ }(ZXMgK90ٍ_zTYtjٽv.|V4LF߳eOQʼf"iuڠ.sgoB)TBE|5&\UjoV%%Eց1]M T(1τf . S1!@cZ9uCGoٹ.W8i+Þc6u60+S6F`\0b:+l:G4Ic&̳ѹr:dV{ÆgiA{&YB Z̔I#jF_N3ld|-;] 0?B߁2}N`j7"}^z#DV˦5 yÀA) ?%ff[67Eo'>u 6R() \KտR; agDw=LnǢ>\O0qy1ycᩒ=D#}pCP,2t.K?[%,3ydR5}0 mU>}||aKTo~N@Xjvw^-`20rxLzGT(PNXܗ3# A\+9jh 1\{N6- bgJwq.)oC}33 %ycx%E1@9'a <0wosA صϒosj/w* K,)6_A'Ѣ +o6nDz0}|C$2m,'ԙZ +MU3URbs1Zh*1胊MXwUzm?z)i`/TFig*=7f`X*Ow0C(U\Lsz)C쯠G0]$O[-:$uOe9;Sɘ&dUх/u0.wD1H\egxYT;wr"3@H*|)oEoߏBh1yD sh>"ҠSL򘭢/ԆBoz4ȜgAH/c  T$@q~Zctaf73|r ATRCNu\R^}X[|㑞,`D [Ro'1QC=N5 'AMڌ *$ϙz 0Bk9f'&nh!`V΍6W4;m&frkfQpR ,bz,#{?Ȕ^xb\1VwRa_=&Mݼ[BZ+;׏DǰT!7dڨe0iQ䁯Uϑ-@$@᧚1BD˟XAؐO𜒹Vo^+-]dKq1sHٛKRt(p_A6,7AC'?I[暲I`"_ te9O it61!fLH ytMN%CeOu~~2XoOcAU<1B#x85ypf6 qpaȋ*UPr~_KVYt6wrd?̍jqE0nz8nԻ-@$&q&řQ7An;=kz,$xô5| ޏNl*!!^525[8E5)m}(4w)r,̄pҵ>>SEu0mä^[@Ǻ`SFF T3_}E{s;W|;g ~DYzSkPo} HQ򭃷qb/T1h7UIaif:E[esik<듈K>P3uo}EΡeRr^;tvLJ5}P;}-rAl S\|iw{(%$RB6ɧ5 X#>Ct#|i[PFzi&? E]qXAWiKgU )x}]ULNbpjDzi40A`0d)tNYȁ ~w;G[P70w[pnoݼM7of2^X+aѶ[\HFC"GO3.I#"B`; .G3'ԽzӨI:֭T6zHzП (^=cIUicf"at,u糸+5mxɰnpi5ڪ\6{)\>{]wט9&ՉC'QN%H \[\G5n2Q©&x] Q a-r"\kWMu-|pH7<EÔ'P:2! 7b_ 3%2ʾ;j&s04]Fž+<乬bR*̅z*t<+c;^6Gb3C(lpMN')~b5ÔS!zM ,1N.)4-0Ȗ]BɉhpX3KMs+J=+_|^obNn&ut|̐(׉TCº# Ki/~B![T|/^f$g$" Ժ@*)ùDHmmf| &6O]MM0ÈxD@ K"co%tݪ'̓$ݽy)&%OIJAifBg8[(xnBWNc V~vm |4YDgZDS |ŽQtŷ$3a nGLl jRKh%߳;"a9 _%ɵ̑FީDpl8dIJW ,0"+Z SzUTXooTIPZlOTq~lMNϗ=Ԝ!+!PDg.1Ns>Zu}pPjlxGuw5[kcyE SEr:b?k0UHpgxER U|=?vX_y FOhBhHAt4=bJLAED*Dެ7@>1{J7 'O2Ś8;~J$x@d0Q||O|dxj.j^e'*+Z[M}2*CvBoR*y0(AU'THڵyRbq7k.PX #(9{Z*"Et5)>nOe0%?cD"U&yg^DZl\X }qbyBn/z|au$c"oU 2F\}-ք-#.i3E >qbpt n"#Xվ}%H/$0YApp)egLZ-tZ]:v<:@{6Ho@{k&Y x ȕZ:Zz ŲGؘ+)0ɄdQ̲`@s)j\W[D>-'KGE/,]ԭ_gs|`LQIUy})*sC\G]9(6PSQ*:09CC29$?'hhqHɂR?]]%JFML sN?s~3i _Ť2˙6~O5 B7pZclnUPU=Y8kD;[ce9IKф)`z@Ti6$b[#K;%V=iJaهX\{m,p9VwvRH"[?29$|FL@>'2 Μ<͚Av10uL>8qM4JW{@O@PJa$+rbXrYﭮXԙqs;+ݯv1շ0 /QGqYrt?+kj@š'imLS*ǽoOd LQtHyy?x5Oo)bxqAh$»U*+Sy|lRs Y|YwRݼCJ9u&ZlujTf=ߴXK)_{nZq!3▶SYWM#T{J0:|H#(ŷ %TgCYJ#+LF:Z˧,AnMT;uY֠ 2.߂ZN?҆o6g!o /s*H:kxRnA[w&Z-/wEݨ~P\cz„ݹIxx~󒌜fl~j8AD |y(9=_ ț#xqV!/ ㍮w<[,Shh+!*@\s@Vv2Wqܲkך.m"xwSOd'ɐuh]n33Kz/R4Q+4݂ll{ ݉lgRy:ēp&@ 1%iuCvb+"?=-eY6̑x+jʻZ+7xY: \[ nIօ>h3eWwMqYM- A4#Sɕ%~Qtʄ ?5\T+RHEg!2{}P5_ ;1Pw 7% RT^O?=0m׎`D1r͗=\; cٍ.+]}s|KڞZAŭK% ƺF\O ̰z=N"0g 1 ?߱  #Z%GsigxPęʬΑGy+ 3/tbتTA‡el 6NeOaQfnF'7 oqERvmEΆLG63hu;'=*תL`q<cZ跶B,HPAcB=y^ȉRgGo?) 372-/ɮɔL# N!J1{/H@~$ %e"j9 $]Oj6A7]-.s=qY{i>zXgգ%n/ Ct^NrǿR4amÐEӄDH^*yɐP}PFѡnu4uC|iN̨ AnIT%,WD5Qޛ2k4[cWP4F_iQ:2wU0#q/^NmvK: DBJ um:xu38A^9K_~*v[J&KPN{."Y ,@@L]f被=q_~5kNUܱGf(8Ip~Vm7Dd5'O~5;r~IKD?EcPl#JhϩC wBZ_s l%χE?FO b~8*X ۴*~ v˔Ib$t͋at.r6,yzjfYDU G89B6+~YC_|ƑJvrS6hXK@FPذfpC[.&%"qKAI%>,@2^L6$4ykLJ>5$&8C\O4OgTGiR=7\/ gilZB}{ٕaEz8kݍւ!w\Mh8yg:9woWs->OT69b 5C#2e.dtj^& =4OwޠrF倞ߎi`Vudj^P!iLFavWZq& DqȪS3&\Mt`jYػ0HLh.%RRV*U{+j82N"mGܲ"F~J˘(^A[=HRB-0wlEkaWL A *zA. MPjKsZ BۋE_XeN9}Խ]2<5sdډ[Syxm"¥V+[J;,/};dw5B}\;|k~X@qȒ^Htklj6PZ*9fVwPSNn?T\>WBۋb8.'T7.r{p3R (EOZ.g2([0#ndr _:v8e7VeP5~A,<֓5㢫](m]( 0J<,?}|hIfPe}5U~^wuL{E[F܊h1PCq: )ԕG T &kYb2כڡgנY)]/s styϕFDk&C8Kov?d &[ R&@|#1݆`5MFPzB,,#~2Utv0,S}* Bp-g:p #'İ9WD2*ӽi)>zF-f2˧ ~j\/]aTP֝{iaɲʰi!uk P]ٺWPɓsgAvX(?{U4WJg E1A c6|&(gH;u6ji{ڿPnÒgܹ\RMڼL&-ZDۡ_q;FlLf0(9я(vm8bis`$l &Vc'F&r2SXKC~zѹ + )8d<ޯtbx۝#Xdx|$ZJLC7E 0m)gn=H-*rbpW1J[wOK8pE`dmD`Q;֞iD~ y W{qU =?O6EP$Zt Gy`TUj l \:I-Z~jE}{ +лlj-bɺ>˜%?G;%(&ko(4)e ԣg <&rD_o%O5LJp3K6*CInNI {,q~7m7rdUX 'G7 οltv];.(q2^Ёɓ|t_ۅJI︨4 4;kt>w]2]x1u] UB̏x$-Rk8L/iNpkܱ`+EwAPItp WYr7l}ZaHqs].ez:qEat}gCJxVօ6 iilO|4g~Jo0GHyATio}Z~Ai755nlȩr@:3s"~ڌU}t$oxZ`u-$(bzy[r׍F|IødI8/jD&kP d:Z7|WZ6|O)*T3mo^ z*~|ECUMPʗW%[;$ĚWe1QBy0PV2SO3p%J V_A^/~Bb?Y&s+QDRMNǠԳ}?8{I -g|[E"ԛ?-SKs( Ѥ|taC,{u)7@bDS6rSiWN{OHX3#( Īwm}Oc47/4O _] G M2r pAPR(\"TF[r TCy m'[EOu=_~uE=Գi~+UJ 8;iA$7`OB?L3щ=2 L43\7zV;nrxaGk=~9=EMd ft&9_x`ɺ ',]l3fͤ!&&i<^#*DMG`ڮ"Hђgu/ڱt˛ i+*WR~r!po =Hj\N{.dq2%WNZm4k+#wעB Hc\g7 .Dzs̷~#P1i8Ya:Y>g[I{?RH; x9d95m)=aq^z@>DȒԐdߛT僁x1Ԋ'Ӳ!k1=/_7.{1wp̖N_9@R{y)%q%V2m8ۊ;['X2Q9yJKd]L2yHئ#D"x$’Jj O *XP+bv+!{=ٿ}eo"^JAf lj!:~V'6p'x2g*ɅYBv $9hߒ,yM&ۀ#D1pQ{oe[m.Ÿ QssJja;$= Z'YMN9p8&FCnK2(>虂q5u#xrq&^'n2RZB/տelRz0JDOLCEE̝HH3;J'az5 uf 'v`9Do,-ր4Cnx* E۔>ȓ!z)1j,҈=8 ԧ58\Kܔ\lwkYk!Y:?M(s5wG>Oi@Ѕߚ  ei};*{H޸A8%'M'Ϯ"˗&S/Gr%i l*iV$\ۜ'bxSL8Wfۄ}v]!Y@ 0~ֺabE):(]8jWe]:ctH4=ppYHˢ)6~i5&r i}! ;،񱏞hĢ.)gP蒊Fagz==#Ê5${V&)b.q[Q[졚^ftT2ngkܙ_9pɅRyFuD9a9-ޣDp-QK ;GYz. c EӎJ V\hX'=f X(XtZJ?~RBO5?YV(MpOxδ<\-1f{FU~"-8WR˓O( =]u\%o^ G~FGƯkWoL[0 Ѧ=mU'Z70_!3: Gޚ)gAǑ\۱&M&6;[^meFdJjV;lj?FVK3 whxjkɨ8<4tLMXKD LV٨`tL׷ Ã.NQawҗT\ޢB%?>~4BpyR#䢰S!C^ensT@ u\F'mں;@x۳޽2' \LvQ |Qr7xF][P%iEbFe-}-SNjF} TGW# .5k}aԮ8 s(UbEH8U5>1HWR'ŽRmI.ъ1(]{a+ࢥ$bz)MZҢrb  nWHԿ.LC@ _&H88),SNU?_9E'f-нiP OhŞqs>@Sr%' q H^zN +ۇù|+c]X.D$D~#ʱ쒱qVݮ3Z<.  o)XD&4}@=6L_=P(U+4{٣ЇtR5f6^' sS s_<[THX 1𹼙Oi헃3P @.-9Ћu[ ֐pGH=E-w2MS"/ua~=#VR,l6is P9d6ʆg|3s&(I !| U3LTR'}FEiaaG&gr*vQE"ZMbBafUK EfG"-۷j[!:Ut7Gq=NN{ԏIGu !~F"@#9f(Ǫ.ǓНlI$+*J'7Z]'jj5!7QÇJhBtk`d{A (xD!!(XE: jaw¿k^ y̢J!a1~dhz/n8AxL{'oP^xFIe"/ti'3㒝>eΐAVUsBIԵl|=Yنn'6=cwpi&qfAU[Yv.hYKؤ47(_[ -ƽ{g<@ o!Py>b)*!IN;k6 Wۓ&;c*}.7FBYcHwӝrv 4WN.Q.laft'Q06j) I >@/u3V[ɞ(1ĴsvCJAkQg\YG'QA$6-׬~JZ1Q[PX5\_<9 axv9S?Žaԟ@NQt'` J)R$iͦ ~O v՝^]/z%͢ 1B+yLcIȎVԅ*fJqx4;tjx1ߧ3ǩFbJQ \ C7er[CпmO%9FٹI4+zr6m Җv_A @-ɂv|4ΥÁ5PO 8ūx|LDZ06gqSӶO1b—.?wAgW~<c* "!@B68vua'&J:1)5ău.u'.%~%]rLfݺ_{ӡ[S#O yѝcrq6!0j O  :g*1II;=|/Sjok= %Sdv£qHAul`, ֳnZIC vQybFݾx ǎevk#,s](6j1{K:m *'Ô ߖdTL' [&ȊEg )a~+3- ?j+p:wD٨ )'{ ,rgdV((=YcfU~ԎфqߞEj^AzKC| ;X߭r/N'QX?'lEdٻcJkILbR0=[0ӴCqXnqGwc?i^VvU#55?5.Yx%"(b0 4smyG^a < ^ylSt۝j|xs#1uqLY],?JSdB$ҕev mbgZ\pʰA O8/x_$O:"xYAa}Vq?ޔR% DAfsyB KGO|!')IH;l"?dE3(V>aW"sIM޹Ź>vbi|J}:o sW4bP,|&Iu֥g+dM166EcßF$i9e"BMNGt զ3|ӳC_|R2IK}aݲN)r ̩S1ZfBqf ':)oe mgNȞc As D'͙BDĸEm_Q̒/gĖ -YK{&(wcqfawJ0A/ X̵å@W3OhZuq1xOñ{+f DA-$KC V79Rdt=J䔝|OyL )%;LQc^<zeO4)YBC ^v],6D%Pr$K_^<͟=;[xA۱NVU.suc²IJlPJ\a2΢[ (X|ʹ{8Hr4rQɭQ~?7.$uO4+rlҰֱI(2+Z{uOp;Ա u{8ypRy{NP jB SR^~V 4}>PL8ԱK>S/k  ? V,;%5%vb%߷ eU>==`:'3Ū&ri|v0^j".$9 ! 7M(72#kֺAɵMS`:OcHc'Y#nҶ 'ْ+yF56 UVho! z)?+6L( x>5 H1p xsXC \h%B4Bո r6*; [ߪ]Iv-txR,_х 5ڛ cFw10R+~ .˄Uڬ&V%^;AgtGԏ, TywM k0DlSN{~ xgU2wF '3{Yz-&&+m7\<펛*.Ѫt[׈ nеxpMvюFRTϐA%ub*M@Dd{4;/H /bB^_0Dh𹫙~4t6ۙM ֭"Aj!$dz㯔% &Gd=ZQ́{R!#ҮG.*8 Vvl,;* AN6 Ed>ik@5(Lؘۼy{]w1"KRR&U(N?b\suѼjmq&s] i_˱_3ś:䳱r7!qs'rURCԋv66qW9*a'zin_1`}P{<R.鸎{]Di1mX=P‹}XB$0E5Gg%KyIREZG*JvGYXQpAۼ] /2**+8~Afc,JgE- I R祚t`M;K{t~ Km˩Kw~Y{XB/Ŷ'0vNLO ^c%O"R*zoLF oDG`gW rR9ZGR,WN:4)-N{b3Q8h;إ?$WA}?f':sV͹H--e,Rs蒥mj0T DuF)oIId$"={kWV3O *6Jk^":p¶iYYM. ( l,2nՋA/7WJ5=0*۰aWYm5 pH^mT4v@6pmKZ H ٻ| `R'A*")m c zw؆* "+RT=FkVA#uZf1{ov$oJp8L HÜ^yXb":U͗yjv*N"ȯx*6>nџ<ŃЅKmVDL&nX%IEƥB%E .Nes0Ǯƅ7:F"N0/妆鱘K[y6I$+ ;񌤍)cN"# ֺؗJzF?^|PFfv1u %pܦnLޫy7zr. $: wD7惫>]y.˞QcY5<7D~(4Lc+4޶%|F!hbƲ>T>󕡻X4zH/vыEA2NX*RPqE1%Z2 :Ș%YIʃy}.g&Po; EJմk)A|izm!o;|6>Z .l.^yE5d)~eձզF3:!R&N=+b e./i] ^cbo18ch"$A+v f\%xal'жV&{i1(.戫ێFʸ=he- } A;]U/*f..T<[1-/ 8_6e{,u}\7n0E7W/%YHk56J)YY7SWCX|JkOUǵ?nx4uxLoΑdDϥ#7imNݲQy5;ΚHj?!vOM5[~tQLn*XUaPS5<`92KZA)X髖)ɝVwN%mĭFE<ǙL:h4,J̵\@ þy; + kT 4r0Gq %׺@g}nyEL5vqcobĮ#uq|QKGoHEJ"CՖϓPWeuq&?-*,{gptӄh9N{NH 4΂R9z]3.LWA*Lx+vp_ǫjKK>>NQ ؏; P\YAϙ, menbQ4Pm'ԇI1l9˙pvȫ-y?H;/:n:3I3W9ٿ&f!Y3dD5`5fBz]!d[HH|Z]֑$>QQmrX.rڮ,Q*`r HP7%FsTҴ%XÎ9DH&wq*@UlPTbs}J-̠qҺm S֌Aߵ u`ۣS1>z 66;?&>pyB)l[c갲r/Q QV]-3;'w,ՍF,'y#XS@ *R~EU0ţC * 5.~<ʘٷ#]nO`ь$6 8#&"j*:m@"  M P30&22xbmBy[7qHt\@}EI(oEOB+ԵYn`.2grNӷ^@豽hя4v|&]zV43'`C,2XCV7ǐ(픏2{Pׄ//mQh1Qx|wPmL>%?+䜟ؿ@\; wiLjn֨V);2~ X]=^=|0Zjp7w_jY^]T*Fxpc{aJy>@W{o#ZBR' 谢} g;{R E VtYLO٧tEg= }StS:M&3{.W 8nK /6iٓ}ayp^6.Ln ")BJM\ĪC/CwMW׫kw\#޻+/REU}2߫Za+z ` ,XkLy-. ݒA_9rn!DsbJiԶl;uyz;IƆ{+"frAcN{М_|HYI*-'v0 oZ -XgW>7WX 5*A4j\$BiN;Ũ=N!wc5^q&-HSFL8CC>Dj״A'$C￑3٩u#%|gҰ+ź[ )^2ȗM;i{ob#X:oje~b-KВ:މ&3dS-Mw})]yJ楥[Vǝ.L]DS8p%?mv$,8hM;BiufWpn,/!XX`!L97Ȥ2`{ɱʖkr'$:Nw|Igxبf l° 19{z{@_שOXVf瘡hǤ' a[\|ydҟ&,%ըp&ɧi0,?]4`8Z̤A?{Q$RjDJ]R3r88)P(l=R%bM#]~d8џ@X㒛R6=Qe_AJ،TZs?yY r m+UV:ry zdDCPflzWak8kl`t{u?_'_%O$֘V:u3N;,>}$1vM9;+7p2܈Μ<߇r 1[b(TsrGRs6sP51$FUP*McGA-LsԖp\ZS ϝK0 bK<: X853ȍ=3T8hҀ&(Q$T$od~KjOnRNf/LKgy|9zLBllw[>ou1 :\R(T1*j{pgx4Q%HAx:O;>ݻ+l4in'{TP?-H$j")u@OJIrEUԵOrDZQI*} $OTJZe..46:>=b޿)Ϻ=B->Kd-Y~Պ[N>'=aAGVj}]D{FMoJu 姅^ئ9OlZ elH">4J۽඾%?[= ۢ[w_Qy) x3%,SDSiIѡ.1YM`SY$q.TѶ8Ms|[]!CFr+^ ~ba!)fџUl2(MOֈ t8'[3;~,)r1y7^5/5 ڎZM&H̫缰ou _*WX)? "tQAQ^;M`uOd,D_6ZG&m8Q5J?:4k߮Uដo OC$fB-rgIP " 05* ӛMPaVR30%k ˉYAȮ5B,zpiNiJ(^sk%=a-!vK̎1*d'9]aW-ܠE_P /P3%ĝk/m֤ wh CEZ_V{1Xl7S0b}Q'eEu7B卧ѵpe}+ -e$2 y7Cέ.G@\*Xdzb'rᮚi(uAQJMIgh(C:E'g+!Tw>33Hhy^ jAr=JERpuٸ?lY׏v=K(U62g,$Cʦ3ʧgAn49sh'6iS%DAV9u| c ~#B~귌O~-18R1諣j_zGKn8J~P>f9xwwO@3v].x djy֤ڙ&2e/[ǵπԇ h)4O.> Ձ,CTl Y+ctۻcXtk1YN]^ʻfϱQZDa>YzP_odQ_i|6 #PahtemHXVuQi` qu-c}+1x1ᣮ"2|-d;Pڝ& m#{S%4 n_xhN-=JV|,8sfg=S?3TD"HŬ0:Ive֔LKXeUkn ~zљhHQSwm9\-P !%!8U^D/PoYK=q7rcZJ0k+d-LxXqq׳,Mr&mO2.c?xm(nAbojQ D%n(Dk[AD@mKa"`;|'`\k qyB}ƞ@0 wުӛӟHY ,9;#͍!5ĢQ7D8CssFr4n"GEbgJly[sDԄf=n"%tا3P4x?Nw`rg5O &hI+"Z7TeHs3] UlUg˟StESj\?@o֡ψ{1pJ/8kYj,=fmYx6ZM(X?ɶApp0 g{~c9JH3EE *[Xv6ǜ]Y%߾/lX̩}:hF-9n`au 0or(/wj9pEMEY(ayЫ'@1O} >!SdM6h-Lg"8pjVI|@&pzFIZL5ry& }QlD YI , Yϴ ot/&ij}3W}# T<"ܺm{?Aday;W"OPPf"z*=ba{pG!X=/ 551HKVsF0U-9I- oM\E3Q) F4 qT&@˗V; Uu{C=<8@KUۻVlP4=TQҊRahQK7}q]V;w?6ϝg̃-uvqa:n/0ִ\6^s4*hV4I>Cny[debvؓpLʠhL}ϟ& 4)۷j(r=Ռh!a& WQM ?=scv8âM; Tǩ7b#ʑv yp}#ڴulD@r\"jּ!/KNNc41v7>ԅ ashɳ_TW*8^U>5ܩc6:8lX>$مSt#f-Xݢw>kF~c 07/oʫ1"OS5@=SS(^Q2a(8:eQ߾d_\Wҗ:GpqkOH"OOVBҁgASuq?rn_+qȬ͐S[]RaO^ݘyTC!Ц}e}BWfSB=f,+9/ϒ] ]ϫ"vl~8-ρ[UXYpV_Vqo$3?:O{RW+}W&c2Y?+2*-d Ron4ީH 60V`fM EɈS5 J 'Mv ;KQ!A;ygOi2,~wu h^ޥc Ϟ; j+NVziuWx]-g8`UÙ~.nlք*4N0exNwopwፇ }\~ *Qy +&B.qWgԓBT 3xaN CY$z_U{v_O+PRu1 GuZ9[IOd2[x4kPuqEv6f#!%Pib?v -F(I &#s/7-Bgڴ}pi>. xgW!o:$6t`dkJ:y,A؅Cj>/4B*$S2g. ԛJŨ&Mpz˸1`XptMXK`t^mO8ӽt=`twWK`ѥ `)L? !Or*/!NOe 吼VR&WQPP8i=rFd(;Pn>.Oϣ.X&g?*ɯy/Sz:&Q S"'imKj"=*RR±ƛ jZAEP-Ekj3I)M+RvLF"ZoımkD~H(n_?SQf· EfQ[fcЄrob8uጸ$VǭRXmIP'lGp`7&C:YWs|XZ#Xr(h09=9L`vG@s )cY'BAxss]%ab}UXbؓxGxJ,HChaʔH6`'Zꋧ6 C:Gz$L+xĺB>͎ ѵ>ߏ$c {J13qiW5w ~'ODA;K6zm:n7LuQʆy6l8`uIQ9hE%JwoF6G$o{vJxpA߂rHm^EgҽՅ4m|<E'}W^MX[qQ]24R^ tQ {*ha|W΄t ֔M)~ + SԢO:>*=Ib&-Ug;̾UvKJ.n(~8ckN5œh԰s2FjԸ fX;ȍ%^_B"/[OП`wy .N.(^yt1`OGKHY8-#r=>1o P2B ~{b$1tW,mp$eiaQW~,E_.k/A 52Q*̆C"5/?bnj~qlsI~K*22}j/3%A>aKߕR(8  ʥ4>zz\u+## "Rx`rQgPWD;Tb. S*I ȬHhKE}=h]<{DZ'!LzEmO2{Ƨmw8u @jT>IzWZ`qF6-K٫ѾeYqyL+F"">ҔڜfE Oenߨ~^!=a<' g %>JXH 3^ ,t6{F/<>/i,QA]8KI@$\8(S|N3&:5&-Kdb8_]iMtBZxݕVma& 2.OavC$؁Y3’aøEfw/An99JY208z,ĝHBC,ceMv--}5u겻H|:cRjLV-P1ua"z<< Tjf!iƶn. 9dͶ /X+Np{BJ)Q#.3^<dWS$w/mkA ^w\Jyf@OmvqU$2qOGP!ZK0pDkH´GtZo>Xe/ҹNǐXmG{^Keo7_}%{ BS4󬪉y$%`tI3*-H Y:eo?cҤi:QIsl\2䂬p/)u` |`Ƨ. L%uBg=Wc>[em>'?ެ<^ XoM 5kMo1ǚ2J?6DȄJ^֒a N`7jq ipj+ p4iFQG ;G#YBJwӿY:8 %mZuCLV/uO+wocͭT!wb@o_cG]zƸ˅®| bnII:iH_ݵz6gnpYT?+5!I Z Jd"dkTia^H%eD#gJ'p(Ks[(k*)%P`w"6% l֙\;mEqlrI^P(kKs"Fǫz't>.ebm_PTi~'xI?QZ UvY4UcV٘'([m]^Wu٤zr͕ݗA/~& ֌0-wWRdДZAaڋVn/d,$Pi^dg-/|fLIfP#0;MCYM}qqҚ'_e%aJxiY@~'nbTMV a-%:v礀@Q53ͰUb = LqeO|M%NBC֎!7wMr@~ ΍A ޛǶ)٨@3o+d $$1N&{246VS_ft0!v)`V jSM3'p;߂RJK¦si&,4flMm`\ں{d6i2zoS̷-ma-ywFiPQ/i],Wfl?1vNT$|Zl g;lFuqS0C染 oaYU-q 3\ϳwMV PMPs3XV6:2f+c=lf4Z4P+&JKԤq^u>K{?fH0.u-sހ}hAsߜZZ/t<z@66/͇m|"Z"kFtv$.WE6QqjkTTػZv@!ȻQ/,jl ݶ晆tAŮLƢq3LsGn WJ-J: >[Dɾ*+A k*yR)P"U402'c\Lc7ђm}Y7NpJLon/5{CN;rwANO0EE+ %x"lGZy&9ZGQV(IDXCY:0Gq)ܷx@h p^pDA/^TДԇC#YM蚵H æN%UR={ "S.l>nB߻BøB2c;DagCvl3D-t Ѹpmhpgqn TcCؼabĖ#dJ' UYULAn|>]۬ vCasgn{7$mLf~wР|`Kv]kEsqKCMx;_ ̨C bB]uu:␋Ǭ,ŦP62;gONBi!H0~-Pķ[ >vcyè벨}LADKwb[;\&U%duIt V ;'֓A& )%p-"\nf6u~) ;=4226H|~va%&Nnf-o9.k{I2oxE6f]z{[) Ӓr56ad2kig) u#pϨ>ikhnȐz(d,( jc=_d5TXmck(ٸ)3~x*b kXdZP7 vP<3 2hCnIU.M;p:7v2FۃKEBBArŊ $2F"i>mECNAmz3MuB]Ҝ~Ip_,Șɛ,qJj0ؖL8wt?ߍe^@) G?|JSp_|ΝEd ¿{o$O!F}!ڥ4Ѳ}kͪNᦹ@Ws0St "Ju[`Y6/gS(w).kM<Cg8MA=e /W J0><,Igr kjoIW}!9+47L9d7p-c|C{W"¨]ي|O{ (e)ʠmԖޛ\G VfK͸ev\TX K=H8IT` Aq<Ev\e7M2W΃ :}`;)7:J`ĺkXu`?fAmz?h]3 AG01U{\ o@ !N܁Q/g? VcR4HF4ݬq8Y +i[phx2cşL-Hk~Ϗ@qXgb>+An6}¨jPE:h\k"PSm_G?J%doZ?_05>/vKgLrP UyN T֐.iNr|ly < :*: {gc 87hOOBk x2{Pѭ,j m'}P.?Y*!fL5;L4[H|miR74Qx%~|<aQ)J+GA}ϥm9G¦Γs-5Xe?k]A@;sLbiy~=*.bx,oℰ!ϕȕD'4eOm3;PdߦF0{V!ı 5ȅ?~*9Vٵ h %^Rf ګ<;)ۗ"8cЉbKƠamL< ^@٥=nck u"IXm}t;|M$S@a: c&I!I]׋'S쎜Êb6@{kM4 C{)VPZnٝ9hj"s+Fh8 vbR?$)E<^5ES;nP蔋[:%K3P :\2p lD{0`џW O5>˿iݱ \B1:~~V58ێ|11ܦCLz6H$m`9u:<ދ UL×D[+r-#ghFLmt0-&F8IjģHJКD>,O7T a[Y BWhePdhȳWwv/q[ro=ٻ0fY> \>dmT&cD2>YLx'獰b"D4V a :@9p&pum20oP_2RŮa8"H H'Lςd9fԇ`s!M"\~v38stgŨa4r Lly2A-7--q_o=҅eӽ Syhq1Zڣ>RͰAѣp̝"ѬztަCH5}I%W<e ` 1-IІ{B- 3jܟ~s`|J^g$ lO}?ǫ!~G=Ws p$%#"/(|S?cQGT0NiQ==i$~ xcyu"d@6@~NĬvxAZP25Q6M%9T s?zu|l;sČU`fyvoP0F݌i.WzitlӸ.X6c0#599Z?P/BZkN:KRR;*cߦkY>XaYȾKLOfCO F\B \샬َFTduҿ]LޚNbIQNs.t{fuS(QC"COy -xKtvUGeyP 3FrC4r [fYPP}2ŵ6AΟ)uX*[Iɒd#Q2ai 7cB55YB@O} _ZI3 ԭY"ge,GyW 035Et],^ȳ{_{(/@LŅXVZ>Sw>%3,^ /LEL |,= 4N˗)ir%􉳁~})BR/>'t`?͝34Y!D{$YŇtL9Ўٹ:Gtv+= V;FOTS<D2Ke :dlH0#'XWE{Pj"k _oD cÀ\q!=`;fKLs#in IèpAu!eX&YH[*MiyiU$ul=~㑌V4@ 6.B.kv׽.G/{êz\ɲe^ȀgC>▙WtSHjT C:օA>O<^E4N,$>pu$ :vF뾭m۠bYPuTρ"C;;':ׂtGUK-Q[k=Vj2qK:j &~; V"<: i 15p'H3u}TQ7Yc7FAtP yq↴a13vՓ r0֢K<ڮGaw+UG&ǵp i멩 ޳x`WSJ}-nIZ(|#sL4Wp&ϝCQ1H&huXFuUIc7GD^D>ʫl٢TTv]@XX,ca]~/#_x#wqG1ԕc_y3 T%.%q *޴*yNfI@߬c1=5WҮJ {Ygě=BPWJ>՞Z$9fҷJ]ړ 9; o'Ϙ 6>88nR1@t+R\3wJ"WĔ5<لOU:]YL>}! cqE!GZ4KZ'H>oh#w4$[{~&tRqg|԰iN=ZW7XWj;,*$yPx{y1 6HSUTx"/Ii ֩Qtp_X=m$ʎϿw{%Bv柟|W Fߑ zK\;j&5рn/wϕqU!W1xiq'2vjmKm~{ " o$ m~Ӟ韁her sܞi Q*B9l ^4y,v`x339fAs7Xlgr7'/9IWrdhRd[5^ZU;xS1jQ+#dN!Us;V AȚ_6/TG_\bА5δG5˟Ls^8")Wf:-ZfNٻ(n' 4?f)ܓ-\C5Ki"3'!"0BMց]'>i?#>kϦ ?la2mb}Uyš S3`<_\9";~2A #rpaRЉaФV,ٻ;dЭZɮEքVܤc_M䅼Pw]ٰMN1\E]b%PuCs3SM6A  3 BeYU?)crYT1@a_{"NBOf]đ) Oi7 t3 RnT,1a$C( 0sS3hE+Mf3XE:C-z% ރ>-5`p gaM!Ab$GGq, }g 4=]:wcGQKsORf؄Ds.rmlxuiW|E 0&7K2*p"JM}_8O~ڰ38&E2 |Uh}A$p\"6o$nq8YUS1'\`**8&6x3^ۓDy)!!O3Q5|b=̻-^Pi#lWiȽɌ;S$m]g"Lwd;% a;xO 7>ؔ;slߜ,DmH8sHD1jv<6"rQa6/ "_$^Utj싥=ȍKO~eHhNzC)9Mbֈ;GJ%Y::H:8aNBgG:ƽnF<) (*#fŽ %PU 6-W=a5XLgEhpxhnǩ=%`q|39NoyaKku1CV]$~5>xh @71[MpgdOp:n6%"E?1COm/)7ES IǾqu &)nD*Bn9}zAg'SaT?s"4mP2a5> ҩ ̰[: l(I$1E@QchPCY`d'+ZXC*N4rb isU#7' )}Fm'<~q}Lo[ϲʫs~\Oi_:'2}(ĚbN#=q~)IUmq^ʋjL :xQD doAN}iӞ"4Gœ @xX4Ox+G4Α:`XAחB|},_9KEE3񩴫oOi!ğLHm^Q8 $' 鈲^# 㟕 w'E(蛪lPx=Dӗk'~z*Ք #U)߸~2K\T`He{B(ҽalYI_TB}Rس>Bxb5^' 9xQaWlW\uRp)xFgjjؑ ԯ SSS9N{iꃀ%,!-pr>Q./~4@,CJߋ_ۆRI DyiU9/c6psk<ۼEo?vQj+U%wri&dLb a󹞌Mj ="QW|wM.\ NؗTM{+/];hP 76"߮imF`tm)@r0C}_+XtIi4Y:ObN,h%fzIxDm.ّ;3K[ @LiUn29hJdZΗ;0@Q͟6nСHޚW;e.g: G8Det~./YfHُ,w%gUOG -3ev`뤽 V]RmMjZE5e}C>,>=EJL;li|Kžf('Po>,?< vrf 3sz=P<I)>`s/MѳQ޷ReUj%MO _cxFz y@>|4̼*d \JV^yy SYQӷ%> zk.xku1; %NE2c$&,4⤅X c :}^`^e'{tb <3'r<_E967zֱ{Xw6`~Pb!"ǭg6{8\1OR:Rl@NB{/m&x3XVQPN13:_Y*(T-#F7',9]z`u$ o ax\B:Ѡeb a; nTAۙ[X 5hY?g `swWBĆGN×S<7:CM{ 'NsNlإIALjh {/}.@;F1LgSp Ɩ'=kgDػ88hz|Ν`6sܶ8>04lnPe>e@}EKmg RX~2[]b/aCra tH\d'AP@)`DL<-(nAnn窽 rPj]ZH7ED+ۆH&c-MDp%w#<ܥ3D OnĵEe3 k,NCAA瀓sdj."gX8مNkQѨ1j}P_DjW1&I KHx :zi:KU I*ו{=sP7<M(pa#Xu/a>W=6=\*8p1g஋l|s!qq[=r˱1}[u|F0?ɟTںء! m:(/J<7b(/LB\LBZQfս%n,\@%FXA{k!һj|lKy'c2 aBNCFP0 =98c>x(['ծFKZy)8~ouD =R &i.X[OdƝ80 EɸYLT 4M{ .\uigczåX8;_`'2-]MдAf"8dDii /r2uB4%N$Q9#glz, eGC*Ɨ%`-|%3ޟt5>l TB\uʑoBs ]wRg_}5^)nKqI -m !.  mqgӤ95tl1ZUrrBqܱj!0j$FGNڬ# 46I}Ѐp H!U8odDWMx4U|W@S7Y_RnWFp1":w+1]A mu3meЦ/h\VmR&}b6'`[hΔP_;ЫK]qSp c2/vD37 |ąx 7cjvH@nE4Fb1Q@1*ÿok|ћo.h :$, ̐ɓh{׭ND: ?Id,,Pni c3 k&wk"I~EJ7Ud%iF&+!3":ec'zFTO㞗-%Z?V٧D{<j^7zeꤰ KE9; uu5VO;fD+ཱྀLU7By۷ΒKY`au^u>y;"G>m@cC "PuQc{O,'D`c]r")F'S}׎LJNS|Xs)tֻ0BM̝wz@X&~Q, -CgQK(W*nC `cLms^]X}6P; ;GFb@PcB0[b,yr2g h2N%<4NB *A5csΥYs*$c+ #M^i(/JݥZ%Jޭ%of8m)dYOv,ZqۘQ>fv sח^ASN 'j'l"4[pHYY3vAGJtB|^F|* ʷ:>o!iu?94r갘8e$xf ORzh 68&Ro6 yWEǧ@va#Ј#Y^*xU4qpSp0h˴3j3]Or8 "đh5TiJ\ BGuնBJ@oN|gHr#[A: J0܁H[qf8z*pHOtKBCp4%OYD8\!CM暗]c?{pRF%,Y ڬ\gBB=ĵ.r)wW`#Sq ӟ0&΋3 uͮsXN)pz3ۮyd`Av8?!rNev2afy Cf 3=}BH] i>_,1ڢ*M%e{eyi[| d껚moW㟅&S Kܗ9]'hQd빁HYm:|x"UnQ~$+q>lQp;jkyV<_1M^B0(YM_Xd9[rm~k<9uȄ S9ظf.X]M")OQW)ni]6C#|qŋ͎mWfr&,%pv~ulnT* mROr?i'$_ ct=qv)gIg Y aI$WZ|l*exVs6aIUH}xA v GJRޥW.\n}'MR]( $ 设.nvnoM$Ч By,Y*sl N9%b#j. ]/FTGGvz3ѫW|*4xgkb-"'` '椵ge#o~ Q舆\+$$6bN:؞.iY.KFp:+@Q٬1'dl,Rt;ZVxXrvx"g7::84:o;|:nh',K1`ja3ww5K悡uH9Vcbffvs|úz>0Z\Zfnp\ʉKR:k}Tw`ԗ7 b ]oݷp]P9LY=,8S$=Zcf.هo6U/>3x>plk,fd|8_ S8dy:SFY1?uZϗ,3ܶiQr~gx$]΍n=_< p;j c2?+Ԩ$7w#T (W%|E&uQ +x/*?ΎMGG7{u?%ʋdEh٫v'2=HSh2y*C;6|oH^2mtHmB_f9'λf_#WTބ ؍u_I<61ĆeEx (Eg8»+Xlh{5&C;Jwi""W-eeNGPqNO$=LC-Bo˽IiW ? zLPK9iZdQEs:0Y*k &[-i*$8L}ń>Ŝ( ڛs+nO ГQh<׶S0LmXY>zf&ǷMP37E pߎ0JaSEіGyl"!$ ;O8 T03̧f?x~ :lts"/?kg?xo:OW5Dj5xk%c(Uc+SvJ),ZP0L|k+2qc@E*{]QX`Xpp/<{q,r~wAG3 ƍ@LY>Ơi@xt9d{™3̕)!G퀼y}c+L_5(9ccHBj-<,ƁOj'Yu4"Sv@lN71q1 a5daCumI߯yHs=uR4:8pD"g,VX BMs{nȳvof=E8N&W,\Ѽy]O./*g6倶].Aptsb2]9;*bm1L(DXש.zEM̽ byJMnrw(AckSTX &b\L%h{||g(D0օ ҡ7gSMم"Gag-Ϩ7GlJ^-:nA c3l;†'ʱ~u<05eUYWLAAUb@~HKTKE[˔q6rtO+e;/F 'OJ*۲]ۦE-x'Y]R~fɔ Uz!dB!OUoA9?4'j0> yd 9d#K|ub({ZIhO6jO,qm.8!??(.! O4#/31YzLtUhLƦ겱 fw՝72<:{W^qkZ8 ? qQrJ9O-iP&RBDBNgD7=ynrҒzrN 57A.(w' v;uvjsp)u-r F@e%ţl۞oga &j8Dª!zs {"tX"s7:"dG/4:uc*ZǜUCF fY`N*0UǵN%2/Ȏ[N^=H}#nrgP%KOHa>EigNef['yi p!e + ps#kbi>` faL"Wd9,뱒xjV~3{u&;nii^uK1 PtgUjWy"Ԓ$ߐ@8piB(P5C7a_ueXڗO>ւKwX.+}lS =q;ɟ 'Y/_䋿i5`2܆>ϽuBaoB[ߪkڳm=MHf~kx~uў 'FƎ:QS`6p6<\a/"09G]] <+G? Jipl3 i\kBK(Th@ w FNVLc;wdnM~ dX@s^G1R[sZӔҫLQZҧ6,8 6nX!!mc wsPZ$+I7 49FT\=W7_UuӾ7\P_Q@Fhq'r$#Ʊ.ULo۷yq,7fæ-,\ݥn+o2` ,Ƙt^] Yv R3F"+7,u9Q28!y^Vll^L PTw(\%ք]8<4#ƠiSUF̎(g[3yL})%N?uW =KPܱ!Ǡ2W  92`!jYI:A#D6+)$iD^~7}x'3]ԣ4-!T#=8"G(2 SD* =ҧc̓681̎>V;VKhrT]XeԎ`]♰> $-j y)p$ta:?$PE.SDd)}. c^+ݛKa S, t&S6}2jaftEy=b TCcڑ` @*wJ ״`Y%KȆa%L7bo$O>a$E9w`NY˱( @ArxV)uK~<t.!W)qg/\Lhٺ&q4CQiTF,aETO6MWmMqNFu6Y# ;G|h }_ S:dt`D3pL5N|=!"pAqcޯ<-Jt!bm)ܲ.w{l;v$L~FOܒ+*"mf]Zl?aMTD$0x!!M#lgshٝRQV_68uW1`s ۂ9f)}YXf)wV\V˫ =]gQ#t 3eD{ V\IOQEJuWz788 :G&ȺDFg@Y1S0ؼ໩]XGݤQρ@ZR[.nf@7bV2Dw|HbpY6{+1,gD02f鍊K/M8.fTgWhEF]`&F*0+CM['ٴ)fvm r*Կ/ӄ[LQPc)ᆕ4U;FS^rKi!:I쟰1~A[Ua9M:hGSV17XO->4BraCFnP=0݄*SރxĪuڬ-H}`!+OnoB$͒Q^Tڶ![H~s>[~bzyt9mȈtgQ$\6,)煰*tu]FƉf*1h%Ȟʅ'oV=ɞMz7~ݾHNWH{ra(t ;DJZ : \La1KըuN/M,.f`fM2:^g8T¸)bj }u]WGEAD'`JY])tnŝk$Z|/2hV?,f?k`198.NX ֯s=a/x}27l"wNއ P,&JN"}?3%{U2HH͞rpf2JkRg>䞠3b Y[uzrjnDݳd(DQ(wW1l% DWC~y9bUw)utMNj,v;|`>Hj-Ma%k4k^}A̚%!+A N,#ePK?.@/Cu[7>5L>0bqj c5?!fڻ'}r&S6Cs3 $kzfLI!)>X f('Xp%MD<{e)Z݄e=i~pR'\Hizgv]\5qIMo?4@U}S4^A2!1USO͚##wZ}߾s]_SI8Hv2I^-VYiYzFV0.M<< Yat_^h [r}ٞ7:5SˇAi!<$N'嬦P3ðJ@ =FFyߓ4BJ7 "7>ڡԠtW_T%l  uGS ' 8O<{Z!%{x1cqƮ!֔wB$[?IRF.ckh>#fs2tBmV[uå*l Yv?z ê Pg4u,-M5ˏz١lU<8I1y4Y1dYVKi-5 :ˉ!}dC!8D!1>}7I6ݘS1{ 0,G mO&h.2pZW J?D@酆?&y an<1@;)J_?'PLf{ Vףcǿ4N/K&Nl{]JzZzİ#Kefst%QPz۟ߍkc=|k =1&5|_hIuX ̲3yҿqd4'*.l[ALΡ@Kgz6%_(]jps\d<'5b}`Yiv%6(BH2z7;gaA,)Ju ƶhfƢ ;Qjns:lZ ǔIFۛWmBQ?rCKU@c}5P[ |nt3q48բY %Kd,^!7a5,|L'X{-&Y(r٨_sX,G^JS y(}`sy x fɵe:64}]OϴOYzes9iC 3!ds@r{5xv`5P9ʏxrM4.p|yHD} (;t?@Aa'a>VS+*8*9U7Bw3Ce.9Iw~ƍa:Uc 1Jpi>Pvsӣ$Cj^1-WU520D n;U[8qny~a~ۡZ4ose_<3< <&Q@YOR>p֒!v.,UuanýLWjd" n+6:VweQ6=|]?R:CXŚWU33KєD7E#ڣ2H3hOcy2[qs(^ cQM1+ :+vX;gj ^g8jEgEA>09W#έWMs)2XuN27@&HOMG9:2tbɒ' m1Ũu~bqݓ]C҉ڢo? (`ixm%u y XK&5.pVw?GPMfnd8AQ'6wE؃DƞFVz@53ESKjTn[ Η@] b7=Vkg.\O3#I5.޻gN}?E0Sg񵷯xBaJ? յ IݜX^hv/&wf_gΛ 8%aw!$K2CTؤߑn7֞'bTL0vw;w@,mhz[T盬ӑ .EMoQЀ\"}3H廬r70}k'HwTQ0Ʀ`\ uŨƺ3]$ݑˆ֒RWaPY"::nTE'{G 9c)(5~ D}mLnTy?)pt8)F?-3l+]ħ9Vx@;"^;.%tΉ}SJ = H6|A(1ֿd^]Tv~EfA  U 9LˁReMaц aI8smz:~NMKpp-?ƍ+YdE˼5J [2H;90Ȭ< 28R \11@ےa/%)JѪ X6Rm;Q%9o"N_<=GSnܨ1(Yc+JJ V876ah9  , +N պ\:?jWپfk [|½G xP`\uώs}C?zJXsJ+&+sv 6n-5KAyYKȎ0j-?6 axנiX(BnJbaYHu{H%[~6):5 }pTA#acE]w+3Y aU䫕 UbG5zS,r9)jY]|ābHsylV̪|6+@O@Cx[8ύPjVcU; +u:>'b2ʼncݫȹ"$RzXs~,2b tфt8 톚 2tؤ&azGa{KdW"7BާpHY f8eה--16s4V%Grf[GO(.C]Omzg,$<э9in('R -%[/ $ A2-kgߙ=ĔV~'_!Y9EҭR@ ՕTmbp|vƋtOAo9O\6INGQXVaSߨ]ү,1CEO; e Qɏf±D~*^h['$%u̖u_[|TNg` # ۰V eX!V%눙PP;PcO{_' Og@.iH4ƈ|_T>6E^Ӱ'baO]q4QZqi;8F5x =IE\ﳭvԄM X.0~  N2.er#<' d:,szawnOC[:6~xj)TCEN(n ,z!"4!BDʍyA obcQ" ߧ5m(ٿ(hh{&]`e:x jjD)[wDp ͫD^]p9$th?S<!}]b7*"=v:JB [%W+]uD:kƵP;).Ù@f"=5nfeVo; F44/wmSIW<q(ϕic%3r (3v&N蛋6Wkr4vt$pf5]nNQlv6꾣~D&?Ʉ +< Niaj(&ݕ-o :JIFZF 0j{+^C#˛ rF#>+C蘱._v E=^4GSy`4 q<]g>W 5p^ړͩ K1»@8&N>;yy(DSmtXֺ4(}eP; Ljޛ6 !J^otKLϑaR0ӣ}X'ZT) XHj4 A\$^f7d.7OJۨx(B'j)%mSND~.D솸?ە {DL¸: )!]!ʽj{wdyLJSoh/ĕNW,rkQq11-\_ L`\^;}( I=V}"7<62!ϪNdHdX]畗 .]);~a &{Yp#W.Ikq6_E=]ބ Ĩ?>: !%e]ثcQScg uhq@jcuARu9 ?QLwHԙߛO!]3w |,N\*oX#%Y*8Ϧ<B_V/W s= 8l''[0S4OaGN$/niָD_ ٔ(-Q.Zb&<{|n>@$:׆fRSŜ+8k%?o8rS >Io4dra{(܉qpXP/h>!π:lQ-EQ\ n$RUt@U׫eh&2"k+w!~{F0f F15 YIQ@G軍ENAl1CeuK9f[8.VR@vGёJLnۉdZZ\ٶp`XŃ ߥHF ZXz7EXCkHCV/Z"#ŕ$PN9b׮{2bqj-'=)l0b9)iM! ~,㷖(͚ X~ PXP%JxU LvuhO{WMד:zd3rhǓ<3{VѾ+|zj +N9r3Dp3i`L%VŚ->p&QqRDD8sdbWOΝrv^&"~VUτk+qbt' jpO1bQWG"< QD#T`߾˜.|f3œݭ ),/dS;nf@(Uc,Hlg2vC>YuTCnB <$;vL /We_M6;F/_+CnvEj?FotaI Sl{t;Gj^-"wZqZ<Q(x['Mݴ'CD̃3-eȬ:G;sAU\0?b|GG؃ 0O7\#n Nɰ0Gu+_;pz<*"ؓlrF63^0ࠒR0b+=pܣ'\Wn6ʡt2![AoDFᾸI||Ɗegm­Ӭ  /$y 2S-&e_' `Skɠ*ΐolc`>PeX7@j'܁|60/.gbw}z/;&_xG+p]j1hދ,jhVn8 UhOؑe=~{`\ _IjWa y1A_ࢸٖ|3Q'ӽ Jٲ3)tHgU_6G!'i/rO\4XGX=)V}8 ٚ f1 z |U.ѽny&U %V\{Is3Al@`'wo_ʢibr'OӐ҂Qgs]w,/#ٖ٩g`K'odԤ,0 E[Oz7t'r.ܳI"4+rR1[Ob!sFG܋$,# 0NM8<A%x85:Y}eeʼ(L;$Z3 f]M bL=Cw;befX!NbћP HRb|C3xs ٹC #@EqsgTAPi|Bii0C̨' bhٵ1w0` LC]fzWkGKY9sj52=FYiB-HLviol?)YDuQPǾ=8 sVH]bwC #@;hyƴp9^yë8H_9bZKVn\Ea|#^#CZ~kX};7I*U҈W"%TuB\C5>0B(a͋WdDU>E2,ɦ!)@Rؕ(t[(M3 H4M8gLjIjZsLU M*pώ ?{Sio, _+X|T7čǶ>Xn\cw?G92g_vu+ _,0F1>B.հBB&U6^/GZ˨G`1I{m획%Tqr۶U:u(MV¸F<%=%%d:x2ѢlzYMVέFn=eW4 _v5Fö{IPM <X\U)|OnԤ>H$=j`E(};x־8JmsQegS'b ʏ'1D>d<G+zDr8fěW)yd#=}_ݸLױA"~X86&+‹ыML\UUidنf#%$! S| ȑ(rjR浾=]nvQ2c*GIXߴ9= 1<*LlAka^Tz =9{ph23 βpP BiJZs*e7KCTIkV-˫ㅀ|O!ed_c4t#z8Т9sΆxA.\>Lr5xGdJZ7p41hjU5M~CB.jߗqhL 4TOKVUhau7 u5,c@\g.w<_ ? ^= [j[o'k0pcĘ]/F[&s%,̫n?XS+hy#N)&1֊>EtO;ɏ$HSk @eY? _W!9?T HQ_0]DQ0ȜhsY}6[eCEWFPK{rDڈN)k;aE!lv_L A!-B,Ld06mE( ?Jb0x]3b-/ʪ 9imam ֢ g#yWp7 '\at PY@;؏rm^\zxj(DZ$Tm&SkIٰãw#Kp]E=׺?4_ :TaM"ʢk*OJ(NW#M^FYJ_E) (h ϶Zae3:4եq82,<_cO]U`'HplK@% )sWk.}@ZMSK'lpX0 rEp9Y>b=7H̷.fj}lۈ': l]Z+A RP'l՞0XşPͿןqA@JI'nI'1o8|t|&~(١l=| Dd}'wGÞN|Zlr&P˲vAЇ#r_aNӐt=g/ kQMbc7j(-<+sp Շ ߦ"e66 ,}$Z7 ΎF:w|Ka/꼍o*0aݎyc `Z õuq]L9bxe~D$MKso~?ٿ9t"{;]GkŢD86B35˸II$r3bxy @!:#0TB>0՘d8\zy0j*k)=$A~̶b;iv"c,JSzTQ84sѱQL6UW#G 9LԺ:a27*+&tl߄H) .xJcV+8U֐YW7_7P1 F4u\Q ÅF ~M L.>#,It1ީSRtj?0ASq𭻯k-8O;=ӆN3to>4'-?{"~QSp2u:.Le ! |z3 {3- [@eC*pS[?ÉCAfãujQ͔m)zjJK*6\p)\*C.6&+/ו5 +m,?"UbaFW{=J~琰 mIEv`:+y.[yN6ECORE )z_*AtzŶ~L(M'5@F/[֪XiѥwrȌwOR'l~t7-C'G?i ZDPqf܌֔UvUsHdA%*l TWGB>֫IPp|gN[YMLfs2嚢 2<9YI0y$kԍ=B)'1tjHi;y#+3؄(*4v3- 0cUEm8&X$>Jv -LXW{SaуFS i+). ܏fhgNT+#?. hיnl  wW8/ IhW~ߤTdk X Ò&WMt-"|W(p!=a3Mz K]Zz+]z[ GELG4+H7hj.GvT5|w(74pHF/5%Wl4/o O̹UVY= .4kQQ}v{K~ "2ly9. c zp)DRIEDUiT\.YM{/{0g9439*{-i)q ”{օ^tHџe0jߚ`N)AߋBt]rq "V(ho&>҅K`io# "TbBeedAF{s.f+3*vUR X/N#w,1F6# Sگ- ?':rqK߼[rh/PbRlYRs ȥKb?iwpk2!o)mlfvkөuKS %o?KkS42M-4YWs5NaT}-^uwtOXKJS~F>yʨ3 Trpi7=TUATBQT?uXQPfna3w2=i|?r3,VXO'#4g0d+tm[B]*t1HBڃhOP9b^~ҍw$K`M5D ]ϝm;'Al~"dJFJ(^Lwǔl(<8J*kl2Y5_OXXRbKzw G ex-c@Au9ҿ=,:oy3/L[@K-a ㅕCp5b_`D!!,V 1ڴvN` zz/"+J4u 4GuP;nI3WSPBFd+- ,:bn >" a{K7/:@?Tשׁi^,k!~8PF(7i(10f2H ̉'wTy YrRˬw7]hGi =f} ؾ&M|IX-i<_@; nS loռpsJ _?,Օv<<ϱYqKVæ)CAMTA=[ |`̭\^ I]ꤏClkDmt}38'Մϣ@6 Q7{VW5@lDi[Ͽu6Oڤ"ݕG^xm%_$#OD.mOU۳"K"SuNÌ2#ZZ-?C694p9{ڦ6EZN/9BഌmMގotVLN>8{\U;4@}cϮZ;G{hxgVqɠl= jǯEYv&1j Y~>v8z=1.@uyS:zוB /ɕp5or4Sq yzSoNƏxOSz_$5$:8&I"Y!9Hy;J)\v(UKkl#SRdl)ИWm6aޠ…m}K0l0E_fQɢ#YVr}HlnU:c{ zIR \!dѕ<R>=cE]ՍmQ"qP9;oWF3@Tvi&Ɵ^D x?"|Q'yL,Gxbe!n%eHe~z#^hV ApI1T 7ltn:FR@B!Q2sƽK!PI& ͹sʢ_>B2[>+s.vxV`Nzm'"sX1nvৗcG;9:/!Hڱ<ʬIzg-ǣOO̅ #d c?SͼRMk[*NN9ERMM-E}gtWL4=NnEVG X+F?z%JҜ+:#UFlUKb4 ۑ|m ޫc/vvkM:b&7;fa+^hS& ZݑL)SBe;jcS\EC?j~aR>"A$Go>y Rv:n}3e#% 1ljZ$U&sAJƔ{1NcV\4=a| -~myNnX{xca%b'cO<m6W^ZJ޲)&L- ofr{V9鼄Sml 1,;̼È=_Z|U)>s22+l|ɻFfDsFWZ Oe<4 MmڧF7-T*T,!StN'C(U:hS*|koe*b{Zqi|eE/J@Ф%>WXbaV-4]E=xM{qBL< v#0XrK uxóXl {2AKf"D%"z^ ;Eu!IӟZYjeW M4tx+`AѝusjVKKKuT ;A#n$@~'EwV/E<n[o`Dv4}/H 850KvOoyhʇyB{>oŭR0RV>[12L[nطQ[z/R-zΩ\r 吆 ?= cm߰yXq-5'w44>6PeA` c>T,tMC_nC/DRpeI cPWŎ0Q߻/:oi$S6o4-&ă"-Ĕ KǧbƖjY RIvB2-S .ɿP))a>aI43C=X+)z䘗 Wؾm$] ?px..xcgq/>uc7S (}2"(du+껌;u= ʖɳK E&ilwU<;5{X=t~Άfߍk ]v~RSюgYw>/qlC2zh"\"'r&Xd,A͞x>;аۊhvMvg/q@uc9,*CTxU!4ٚX5;DéfR ΓQ|֊t*įӏH;`/mU.hrvrd JK Ç/oo"@ se,e1I!36I9z yr SE 52MFd &l.l@ Vn%h`F0~FD'uW;CeN+ d-/NP4Gv>*즜lOqS{2;T1[ xs-XX8gNWNR-[||8ūAIGњCaZΌNL)~")/E\r93eGlߪb*4kNsDT8cE,[5*$0 vt <so[gQg!!^~&f6WFjRMx'^$1?-rnWE,p!ngS!u%",#iaQQ.Uy-<94o1)l*JTBZMH: =xȏw0=]p ض~=I(aA7g䡄AW-:{!؃?ǯXƮ,BA^1fz!".nOEtg͢4nxNmCmp8,\WEGu;za ifm0MDHT͂"ГZ0U"#sywGʠy lym#Kb!0a^w"_f.vp1 wXO h #qSf$j$]il <3bOxS?cMn {/*^|Ag"wO\ X=;K)LI5~zDJ17ayt~Uqy 1aŭuv|$@sgD+l9u BsK"7λǸ[1/_"K4Hӗ'')XL=5N;Mx8N4 1`Uy. /yB(X<"e1etv?MwQt9EGs٢4"gb.Lq9Yx uF: 9IgZTZ OҲڨ5K je wL4D`O龵C=!~).R<Lq'GR^g+ųҝ{ݸ8:{_0RJEUhv{uɫ8~#y)ঐV4UA.lqАς]B²iMJ_ ӎs0< 30" 3g45T(/9 i,lxniyRn]kX +B=cG䄶J=-Lp +w4M:N\'Vrn+skm\#xW:'vϐvƄh9-@:.1?+Z+]sђrb)B("*D=*.D6d F)"zmQ ]>}>zyL _w,=ȊԀ ǂزB~5F>>^XzJ8ڥ{1Ǟ>k\ Ā0},nQuh}g#60raߵn}xW/^T) *GVXM<m?0  l ]1r5Sh#~ky(̟}󇭻 l`;5v붢@`f;$mes>,&zk3,7[oWZ!nyJƍY'{hQ1+H53A)ߍ$ wRr!N| l$D ܀M IV).SDt, -+ R$?#Q\ /{RTiYD%Ƣ0=;O@jRmuhm6ELpZ] C~!K9wFni j):xhcU7J[v3kO\%!TjHXYN/޲ҧDtՠ/%pnt)HQw˽u]ʊٌ,d 69_X-B?\Xµ]TՁoٝei|pmbk|ek`6XOP"E #LrnLEnb}Vީ+X>n@*D ܵ0ԓ&eTdnQӍ׊Kh6 QKSZtIrv9cw4KƮ%'cdfh|KXSe(Ig|!QO\]2`D ґ~Mx!"h[1Y0ʑS\E/ưc5j|r[3b"rj J^(ؑcPk] /%w`Tuu8#ZoƼv_%- Tb4\zw<5B4=m!i*wNCM@o25q,*r=?\ď[0sĘ;k讀1WoɃDy;FEL<}#It. }&Nozo'iVe(ZU L c7=0x҉3@0(~h3Hq!95q {I[D-?M2[ca/ uZ˯op%@8RP>; 9]S}PfX>iwŠ[s $?u';uB1KVJg|/6R=yLDqW1* DBȝ;Ka`Kw .(5>8IƑf:z3>5jUiEUO1+",!_ 4&&|say ̛Z~FW^y"pEri9|y} .h-47ò>?FCtr>Ⳛ\CHwkd67L&/dnG/+{L# ef_ԬzݪWV p kTZcw0G9t̆HWs0lk&\hfI/RrhY& wZ zФjp" . &\K#\ng4vV$-# 0Y]&{[+)5! \ԏl7歂%+Ϝ;$ݯ|| <0!@AnѐT7Qx6;r-WÏ&IݎƐ.Y;k寮A|m'@ٷ8h_r a,U 6<њ7$Qf(Gav6e k? Юt ,mEn9Cn[,^) {|35Ay-S~ ELs,#ä2ylVN,kdX{Ù<,%4k83w !?27 ]me9UJנJYcktdҬm6#;z/AA#%#O~Imk=1d_ByobtE|J.anyYjBhqb, ̠.:8>mIl n nϱ%F&%2&/*`qva KMM>XsN1/:kɽQRi#̮( J:ejBeP+WsER ji}WNd{8 Uly"0Y^؋[grO'r->YX==O I !J?i&mgol2MR %\2!^e'vg\ HKndx"X4OPrR3N DY8!v_ߧDxUsWMۼ<0 s::ȕ_ﮈ^G^iz_%F6]ee1^Bp3F)̺ #1iw`jZbnqR;ˉBky- ̑  $h8Yp:֖;xEH4ވ461.\6M IWU< g#R%uҘE D[.q~16SGm!}n8j~Uu7ΐUNx>d-s}B$埌1l+M_Ǟr G@kbJ:~ n*$W{TNPj~ JaN {%B)tW7tBj2M()tMYjI ! 0c8Lj}VzX"Tn-wjlÖe[?_- t)8WC$YմB4 .,;O4wmՏzGX.#~i2LFj w)!G|ƦZ!S37~XA+C׀/XE1p? yQ33jT51aWAw^C%4|5K.Uv,^8CpxX%*?̶ ](gu|߁6b t1#^q.Z7jE }"|KT3(_72;r,MUR|c.r.K`SrVJ]@ZW:I3;Hyj01Lrw*&N]E@JԂf r.lǾLZ5Cս9[9Bt T~[YI_Z&X 7ƪlSw\!T莊7. Mb-3ex vk6< slmx=R]+(44f7(Η8Pnf[PiH(.PpQ.vMrcOI#W'sV>D;t/Ԁfd)" ҈3XҺC?ou mu+QsiDBo<ܺ>`~eY!КZ1q:qsgS׈&1v=oF3?Zӻ\@0,~'cBS6Jn]єdC`\UuCS?SNB_qWs#_1T uFq5ysG]L$^b5iw 4+U> :-P_s vj /\ĸ/4A)*—ҙhǻu ALG-/o,NWu'.~_kVGh.b~߶X0ɚv!Qkl-Rz_+KܸP޽P3rqC6_%rRU^Ldg耴20e\p6рhIԾ{uR0eC݊F%U$򂃪!!y"hM(~ LQlcIS{ nA IYLr h>xЗm/aVw~^}C'fe$]qD,X ٔi7|Fe/hso:]>%+ ,liJ~|FwEP`(H*ӬW0P 4T:50]a P1@* ޿0{UjWb R7:8;`\[6Zr܏Ga.kOgx,8F`"ݏ7d 0͑rGu<}Wl 䳜.:#%@MaеEZ>7ŶaiVlF8s}1~Yg)X8lwq;<`?b7\Jy@_".J'f.\i{6ahkYBL ]ի͠}XIf[JW"UĠJIBOPxiqI**,G҄)-0ax*bKU]C"^/8E))[SVZ,r8 4Ǯ6ݏ`OsC5u#s;R E=nY`q+?rFM@@)LEo-CmSdX1RNQ4'}H/$GN3RfqV-vвPcQ|5ty2|ح0U& lśE }W+_ Ke.ΑW5)憾ĉBIolCLWߥ%#!OUo7Q8oηmؖ z7bB0hK2J[ z`]XgMuhvTU[]zCIsrK]Lڜuݲ68VT@U mД#cЬ+k 4ɿ n;;'Q@Wkͻ~=!TQG]p/[u~A¶>U`p>[lX=1Ub@pg[h=ĉBATSυj-aX{_lVSHsO#Y%c<} Y:u2Yl&oPoEtC7 JPw5x͍e<U^7Gbe. 9MN&`3q" llרlVV}GAXVZƧrz`,é(Q\d 9NE0cm]TT0LjA&Hؑ~'n1aߜ3Z-B!_"az`fw?ŒP9C˻5֔Uҹ M $%9(T%yd1@ܖI E:CWO ccAt[ UAeKzPc ϭ л4qrAEм{XT;7BAyϓg1ZKm!̨ xf<_!!PI_(bWatO W]R @u尩-k7Q> @KJl\^?i ?/exu#2<{VT$K(y{pA3'Wu:(NU{j䒐X [ui kmG ms^}z&tz [ jx]xzх1!7*j+Hr܃d ĖGnY]|MC'<0nϝdx|ڍf6NE%)]'JS'TO{K?hOd+Ak3P9o~L*EG;EqO|IӎЊ }, #/j*=l)EA0D=&nG UL@=*DZҨI,b6@bJTgjGߚ$>왧TS[]7bgC1WDcA幞d}g`05󀄞0ެ]OAabY˨,iAcA#b#e{&jǍDqIJ%d 6w8pš`aE<o @cw<ߦ2hjkrGi ޴TI섖ɘ0UxO+eYa4nĜΓs* mܢ`S*xFG/5[#7?oo\qѶHikGu^ZM0 f`ƆD`Fg^:R\U ך$,viwUhʺ 鵃ݒ{6#7v D3UeaMʿVvvxOMqm7r![I胎" :a!̼(hwߑ0ܾ|聀&9ꙐA8yΈ68'ZԢմ  0< סQB[+'|MW9տənuB`gv#*>8&K4J dx77"Efjmh 1rf{YA"PKfGq8OKx5{ ^0^>սD'm`|@ҡnba=ŴXz=>d?D$|wRޯO2?0I)AS5\QVv-߿-hzA'/w\mUh2F!|ٽkDLnfoa- q(v ez^l9d;8xk=Vx8zrԸѣjIeXgD7f}3[`[T֘N.ABavP]zSj ˿9{ \<ۛ! p*@u{-j ÊM>;?Y< eFt) ͂e]7i=$ʉ 06⏕F{R|BwLZcz0?r82ZKI!vmt3)‚O·*O`9i،pF;fln?*Cq]N_l ˱{g׻#|%:r<ěMA.4 K^ :kW:E+^,J I^aJ (';Na^ 讉h5o,%}7]'1,%BI*g4_`tIe`'3-~bXfRL/J,Gj|O n)b{=PA./*d!*xgNjaiZ}1u~ErL/; A%qP\?s1m`Sj43dE(&K54*"`fcf`Rr`@:lF{3'e/Ė3 \|n/ e)ι7qh5 H5 <d4lFJ*Bg>蠗/ʃXgrŭZZM : ^P;85լ,'ۃE#0>c9:eezH /_8>"!^KZi#ue[cB`}f5㌼۷[HמI8r儇ry:{s,Ve,a=y#ZIO LZaN;f92391FZ f`SQg֋0(Ev=bM/CZ+$/GD5Kچ^rW:Kr3d5ء Tc)8[4\ap@rֺ"d|ٌ&DzćՐ==>+a"M7"ݍ<NWedBLܠC&r=f~)M,p.`M^c$h~)>o]4ViơHGIhNB/j~B$,ʜfuQ u~9*s4 _caL H E ?Ƌ_"OQISɢ/y>^8w .5:3SJ@'`̸|{X]%`SWw:O@[b=E&Kͨj!Pn-_Dݯ&//̶:gRF$aô_@E^_]e*ZrМ[Wc_B ^ L#Šu{Pq`O_Z35R'?hrg,lHk׸[,^MbT?XS{0Aqnٮ;}B-⌏I -~nl$dƏ,IJ{(S(EEFCk9(r=[j v=GM&OrThlxvF@ɥo򄕕%1H62QcN%FV[giwx51n Vo5u'ELfn"BW_*5 6L>XsPMMrt'3B>͜[% ۪F }*@D6 G[sV^p#bi`w5/ *ź٠+rwAT|VWjxd4BБ _w)/Ⱥ5)+` !D|&x>LKi'I<xƾZr3kL@l@< ml vX+RTG·3x pI4m}6~-0Sڲ*pbщ^۞vn|O~ʗم).*\!dGxiEo,4GB̭Sdk,Lpt1Tnyb)_bκ^UuG_>vm(שPGޗ^ xKpuk##wX{NG1 i,n1'†7)#]U*;0Tɠ(K,fJoz<֣PE2cpٞ՗;RB޼-U\?BէNm.|?*w FFq-y~șV󉮤zOվukGŠ$[,ؐicYh rvO.@JLΘU4{88U/s@Ojb\W5/ϣ(vnС>j׾s\9:!Ga9 ~Sr":l ~[ =Ĭ;91 90SR궉܍cTVoӺZ Cb chKEW>WM.H8mlza ,܅#r'LAZᴜ0VS5X_q,%e`I{k3pBm.1MeڵVy2mMF8UHDÈE^rVXC}~uctw<]MD64/J $N>BuHȈV>ف D~`,GX~tguܯQ KeouD8:SL}` !˄#cPsua+; V'+_  ¦]^ ֹɴr,.L^ڧauHp+59Q\ޖ:Q('̋R{]J1e\гuMߺ|%a+U۳?K2bY=󭽻UBFP ? ]Bd$6L=k{ot8SvU+ N] bK#<Չq=[Gj Ĺ}`lVn4V REӴnThޑ8Urnvjv ˣj8ZA7Q,tpw.wsZ4 [FKp J5П ۸sҰ1̋w⼺W"x^/xLDM@f܆&hpB(m1ꅡ\ՏE4p4<‘P.K_~=@{`5vo)0Q{G,&"P 119ƫCئH=7xeAIwSڝzhD0>41$$Jвkp6DSB[^W# x$Q{0TaRp9QلރDvߤOxilكuBm*BuAogBğjy0e-A/P7AeM88M[r.}-鰇*pO _qrKT۫'BE{+{wgu(r9{$70&r6n'*0{ >rj*`^XS*ِwT: ث/Zgj͝,_xg07hLNMUo6 EE+?sk衜*|⎸~ÀƌHc eP]A\|?HXZ3Yb+U LWvi"2̰є+`[MY*/^>~ mO$R+~Ds},rTPgXk\ zg?3@YHhҬ=pUa3aP:vu9\ڐX(.gtsZOrn%3A)3-l^(9U#X-#9APAB1%+:T1-&!M=\ %'`uRs9$Ƚ[)S֡L:$ #7b#cg< ]eekBD[@nr;g]d Qt*B91ka` ҫi?Su{cŖvNU Sy+3\caXؐ&ZdD$Y@UsQ2O,HAڲd}u:j!:̋{ZԻ{٨“p>aDB/>V?upX,e@  z~gv.gBSc~hژBa>;Hd) .;@$Mʎ n9}Sϖ-3.[ CQ3Ό!M}KAFDTƧSY0__J|U%ms`:l/fOCyI;{$I+]U9,1Ж^ PML溩!:]xߛ/Gb;8XIeay&Yf 烉>[iM2lH lf Qg{C EUZ!iR:mxbHBo ]w"WDb\v]%/*F}M78l' t9?=)|uw=7~PfubJ'0I/ ڧM~@pc S'3RfWJk{+2;Tsvcf$Lj{Ƨ# ,4 MDu˞gYUZ}~f7 89n@F"|[ T=y?Rn25cN7-ňDT{p${y5[8wǏ#vs z4,xC 3xG 4Y4"Oix7^5xR 'ȶD509PRio'@/ Bjg^U'ݸD"9R|7L'I%ed*Ц T8֫VZ#ˈ4p184Rqtc 8;BOp2"7V Z0yfϜ8\",̵]zO!՛3\Ux̲@tՕ@oy)3wц]O}tB~ԟS fϞ0;n+za wy 9xc&?ԇ1'z[K6>0?\%2fcyj1sܼqKWŇeXmW ISF LE*3 D ffGuD <-F28Gse d(}?=U%`CwNatCI62PwVU:8_ JVsv~ Pl.WV%6m)ȞpIڡC7uLU h{8~*Nx#`3DxA47{ȼIDzhg Itdꊛ:Jʹd'a+M1%cg&OmȜ_MF^ lQ ߪnq6>GrjOLs%43|f F@\q!s<7L:OU+y-\_-0}*u~ɚ%:2a?œ#_`(ӽAgu_G < BF3'hA)k|q7`ZV&r-_ N,ZnU䪆 nurOI%,&Dj,Ls`w8k1F־/Shu"s w@~HD?O6N$wkQʴ0, Fq:*6+gYػkOO'.8vh@HK# mS"^G`|`6v߯Z1o<V ܀^t{ޓsdre]\яsd}œ&e \A%J^$gH0h֠?v&K'2ʹ&J~T0r-MdGP)syn';3fY [ ΋FuG^ȯ{hjO8.:O9@ hh&TA"4l3߰_*X(v)P"aKzVז귞=~|և1mЧ͊S>ADX=քtªJsI`]?%0ܤA:Nkmg]k/ޑoa?_.c!N*c9Kd8 8Pj:;ߴɆ|s,? ⪨+Ul?w * ):Ycɻeɼ-;|V%Xmן>$X.&; "a#v 2kfD7 ce6P*Jq%XRvuɺI*[-(ZoRj]Β;s~}*U*& x5&`"[-hF~uMզ޵)Y:/%&7}R)à|m;t'gwz킮CDE!.~sV?}~DlR`kh6ߨcXt5m.Gg&Q=3ӹMlVN>Ѝ AuT@-'i±oSTyUƗَ!2}On<qו`e@"oIeo&?ιr v7 YԳw.%xL#:;ŕҡsbK':5uQ|h6]vu_#xPFUڦ9}) }𜧐mn@frPκحvz?[1v޼)D=)3hw~ҧh86 saRafͧDG-U뺼ƐŻP8I@@r>[ #!D,ВYW#Ǔsxk(_/h4P(տξŞpD.zvO:qq,f @`أzl ]`]hfO0hh.fX7B}FThVЖgƟ)WbjU B2`rSO4h{v࿁cVVԉNfwsBX5\tje,4k Q^ >֐KYb8Xqx[x8s/^Mj( s/y,_=B74Ѫt6.L`"_K.".T8[Q)HI@=[Ʋ˶3wZU!,iϰ!rCF,}@H)Xݬ'<]W{ yOaұgMkn̶מ\/ ǽ>%W {ټJY UeY:7W x &fѰʧ V~]V7;* eqUʭ z.0lHA-DT%|/}fw9!hm;~Fⴑ 5n.[ Y4_D~wp"L_oy"}[T5u3i'1V*3ZoL0B4KJhӄ9*eޮXa&#@ύ˘ėW,tt|闸 sz*?fxz=!,=Ij8HQg)Tr W$FS![m}*J KFgVvoqRجw&J@ɄQY4eRe֎ $Y˂)kiMM$)'PFc, )q! V t$Lr$};-`,ëd7F WK!.=ܡH;`l!;x >K"ǷQwٞ!dMt,af3@Nv .It J@@Nu`5Lwh!QnÉV BWbX8Ƙ 9] BALFq]?ztV̓վGꐛ'ĠwkM,s$2z S(Eb< jguY;̫9v?(2}^`D[HV׾Ë J[]7঄NEr5;ҪiWQG͠6^:eDkiSy䘗MG&'o&}?'Ovzʭm Zm2K;b1&mڎ#݄*Ozfp+`CDgU;z` =ˏ4-J`oݽV-~ S}z.ƢG [qHgv}f=Jj`IuhX %:AX9scaXvlY+PJPەmh\$i$Lߖnz4S RR3WvtN_=ꘪ~nmy34jˍ*<⚇ JP]3XyA`,fO&6K\uȀܵb\zYg'9.02fTΠ,=4@wF/3q`sg'm؂ΪZwFHZE.N3%m .?95>UjQ/-$_ב7Apo7%v"+2@F*6潷W:.5U􎨖{ķG9[e? dMCߌ ^'k;G)1ƬLjokk t .g70 ,sPp28O^G4A'GȅJ!"Iʱ D]o;4g6UH8kKA se4 mf3^kF kpx|z6<[vOj^S^ūG51)o+zq ܈~ΰ*jaKBpKW6"Ow.X5G?,HXg9k˜=]ߠ3}.:ubt 9KgP9ұ 4s 4 tEtQC s\۹G!|滻4zλ(DᐕQIàj/jdavȟ}SZԖw7]CE<4qjvDnyt74W ^bd⚈gsȳ)ٖ!^kA 96v5r=,4Hpb5[T>Rw:8Q?ha |Ƿ8NH2ޏOԞ&iRY@$3+v+y٘mkxΡ"GvCzh1:`TF$7Ko%Hz 7 #(ZahWO'g+#< 6$%!$BG6$?,Y; +13y0\V-͟}qi9q3fqt)G\%w(7EMlVӶSTswbZG$wm1Cu\PACWqtIahq!L5â` i1<ɦGf45g 6h5qŐs G(0yQFTn2a%jD!zR"ި4ܖ|n`w{ TŇ*00YSװ`3;,KP^ވk;-b WO{QK8ǥֻf(q9EΥS4" h;!2]b"\tO{mAT ɔP|תa5~߶ϑKtt mᨭ|i|5 $çP5:{r9[Ύ_ܡOfM Â&!Y4][0;R׈ p=ts^C>P*y-sC/ؘJ?:v' &zQ|kr.P0\&8ϗ[s'A.˸Mr|Ҕe?:ދ!0([L&(#!Ffz3i,= +sN8C@@T{a vSWJ12)DE>5]% /l<`)\DhS;R:^qJB&g=RnLDFF;dk 5BuM.8I[0FY-Ƈm_CL6Jx?stSKzx0Xr=|021׼WХa-p߆$= .P:ו[N[jH̍]Uc8Abbj6n֖5 кj@]% qM֦X8IC Z 8D/'v 1MB*{2#:͈LG)O>CکxUOO6g^&e2nYj1\c_7`-CxST'j@-jNOl(o}wM!v0C]V\ dosrց[_$<Φ < :`B,zKx#I}>@ƴJfvAl4C!G} Ģ˷ӎL}:C" &HX zx%7wBDC d!B4>G-Xc0L/%d;)8%N >p^ :I';DAI&!M.`d͕fZ /&}o9[R(&YLuCsr&-߭K 5`6}IGOc`kn^z(7x)4J8k(W)ƾnʺPH]d!d36P]3O'DZJ;ފ!;/8rorw ;jcN8`8i(5e2,| ԤNp|V8]wc6]Ʉ~D6yޅa^:MJ3SU|X'} 37j= r _gFW?F\=A [T,5gf}AoXr3،ܱ}VU \vҧvZ@$+ Y%%Qб'{ Na%햧+\J7{w-"xBh* V-,PIGOa r+rRY|G_)}_ݞl,/3C$ ¢%ʱ9F ۱-³!/zX$kPb#J|(ȝ==О;.D⫒\Nُw~O9V&-'_}t>tYJI=p](,ǭ*4i4SzqSopD"jN1+ $P(r[&dt_(T~=pP  j9h~ӌ{S}Dõyk4&zwkLw@YRnQ}8.(\e7/aH^vŌ##UZM8#%Rې$W+Θ !gkچg'_;Ɇ;i7clI'\ouQD _\I0F)a;mn`6^Lr耦r qVD,g..y];}5ڏ . ӌU 9% L1#"ISMۏޯM*?B'$܈\T{jU1"m!EMKX$^ _pK,n pnpC9tpw #'le74bs]r0XϿW4[α}-c*1́^sޅcW6ovhJ"-UDSj4+prhT4+ȭRMؿy{JI]᪑R( jQֿ S+: w̹葑InDQ抙~Fœ8_rHuFl+.-?r))*/fsysHN{}lm1H6R_H@ЫДPyG^ Wt\-Hsy2yVt&YSځ↋?+ZH+~T!V)~{gݐU >;d fŒs7?; Ų\tKb TʠDH ~XAŭe}dU%m!Rx1Q}!Fh_ ѓ#,:Ia+9̹)`oMJV7Q:>\9zѣSӒPhŢUL{}ml\5[K|WB_.y+ڈ%ҹ)^WCWR IhUwk>զLXf8AVIOƂO9k=L"7L\xfn3t_{[5KPRoՉgRWIi)۳I\ |Kɻ.tz'l@PN)ĈC_-h3grI'!s Syx^S!Ai_(W>.-k Qӡ5 o5eEAђf4و mVD}5ڂX*>Vu2 X뿅'RuqG{`8c?纊PMj-"ajg zu~(H6ř[)83qZj% y;mt]|e$|lo=g E_\ʙ{AXGcTiCR9 \?攞 )CPHZ >0brAdVI{ODO@Kͧ IڡLt ?}{ fJ7J˛mRPк;C8"g1npHh% ԝ~HZ2aկ `D*҈cz3M'4d|sQfSE};8c+@" @&9zr>N\ĻgW3@г= $c i0VxLyz:s0սABG1"  5y桺d;EKqmq~˃gB|s |Ct}VSbR[~|\3Ik90_u?Eki! mbbyeNK(r a?b]/`K6HP99ctZWC8D;pv{78յ \N0Vo(hc1v T;'sQX*y8/‚H!mnoֽWQUDMF&N)|> qgsOvΊOFTih8ZZQS#e3m)%kuƛ=5f˫%˩ne xh3O5d˴mzik`%L{$ FXrWZ}f?hݕ߆,S,z-.: >ZomZܘ7DXC0K@mGOlwV3`a|ͺj^2;Q.^Н?$z)8_:菚A ЀQi3An.i.ʂ_ Gp05Y6Ļq8ceԞB 3t`!|tNiqrOmI9s?RyKe-aGnv#as$(p<[1&mfա -XG4h N2.48Rk55T' =%+;Hk?W{D5Ǔ (#^K?&SñF#oƕO?2N[7zp+:wZƷ["hG&7ǎijܨ$ݒ]6,N.ֈ ugvFBt1Rt4[ M\5K:%s+3P+7:a^RG[TNv8rUޟv} $ S Z+Zgj^ EO%.=Mk]aa<'UYFO?M+}TVٝ=̛6i'8wSVD|˒ÕsrVfz#8$H\K}V%mޑ9ӌHť4ɵ\U| 2'2E5}Ov@>V%f}"[]7JQȨ-"FVPW6Y6&,\?<1&+ 1, q,BƝ]4C:8٣xs;dPqX0юZr=Xx;Xs$RJs /&<ť-S]\f+\n{^4.?Ix6Rl\l|6OwEY0-fsqs=Vtj=q-#c4EN6\ !0fl*ixt Ny;o Ug_gL40^#l:4bL ƾhNaG@F1! 3V |OsHQGώ}fvqr1ͥ*4xN~Xڬ>;R`b nD~QQg͝UjNC9a:@]G1"liÃej"7>MLoxF5Άqd'ė;Pȼ]Ѐ&  pJY72r"bF ~~fG.AA&ew`wq#8%jǺ Xÿya4Q їRmD\x3R2 g2yHVtL5 d9(^zرkHcjf_:iK?8IуkJQith|y0ɱu)?4^+P4+%M,Xc<&PüQ㲾5qkR4hǦ0kU,tݙ9jn`c'@Z{Yo2'tJ)Rn}`Gul,jЃ,J̱D̿*'C[!f#4מ:,>hʩߛ ŅN_G Xℚa1yY=^.#OBiJ$h} #a$9x7v"vi-u a4avuf)Nf1{?/a 9'+'ͬ=!h1&vbO1䄆Û0uv\*(ؾ7tB !LaEj"UIJ5ίWcTAMnta8oעfL ɺ ¢ t\7˽}ȨUpVrRzrCs׹|HP4 !M0 V[< q-5aHsR+)я+.K@z}>y %cV0',v2.DG.mKL& {g~wP0ѳ5ER xH kءPxgU|8qYJy(LsG;3 ϯ*!8=w:y'޳%ym#5 A,AHt?f1|8׈օcV5喌2ɲw_rt[M CtxW!X\h? xÒ/uq`YC8])%arER7w󞙔鈎5nEC@ Aؿ}iF]K'A6|z0Sx#C9곢K,L&Nm~ )z4 g[zM5kgWe=.@6$s;˞mj-O;*Z-GP@nZJ R>oggR>ڇ+iM9*<y@^%LoOsq_^g6; om"m"Lxz;A҃W0q6F_5F@CwDf}H}dc#Ò)paD#<.ɚ0zTOۍ/SMݿ7"HH3 > ӓ3 C8:eke^z:~Ћ:u7P C uT8va鳹&6$<a .Y&]56S)u\?[Hv*n]𚁜._}G\$ebxUgƑ}Na۝čAC*_fopʞwD,< I w:S wi>a@uNITTB/N;tȥ:zso$ŠQ,k< }Y7فx> t\a6vrAKBࠍk0k"Z浚K@Bi7&Uv{m PvRA,=t8ŊfPQ'޵FȘ6di'Bh>AtbLlqK(湢(=QCp :{@pxhtLlpV,WrrM`nq,&6 ۿSwAWPiu;z+2,^V҃#2ɒkqe z?2$`ʜ@fOS0=ςKʪ)Z t1aā$jz}y>Vݯs8feT`;`$B'zB1+|GzE-QYJxtuUH0ԧN6lV.vCpbc`mc'/\$ bvgdFSD'7Ow#f;f+B~ː PmfQ9;P>m·*ER(nqa>\9|2*},(X/9?\X܃LŒe.ge J ˈu 2ὣ1^2?RE3l}[p/z_KbwZR=s5㊟Jq55pii5ʕl"dxJIQR0a'͊8;_ ~Hx$R b=İ׉,K(-!\n/pvvoZ.p|5Y&^Ed_s&1%h#>~b#*#{[,ޣB'J}xz\ +@RJVpܱ}ڰ6I|.'md%Usl0<;zG9!8}QE`<ڀS"gv3r$%Ts@P,Bi _&bG& ę 6n:tܛ)8uZ{ŃMĥzSgabD0tEK@3ƒ' #A2r˴q'nks n1,ʩ-:q@[agÿ@~%}!Emp{m`Ef[9ODT궘u]X^d:A4aMY?D#qUP{+91yοYGnO*mO~?4!eFO,1{=G1m;V}mNX84Hduọ'rU6jidr a"eqs@tpr~zbSnwxq6Vtچ׉Z,8⥪-@q*2^YҿP8?.$T!poixӯFq1R)LAVԚZ,|nt3&'DY֗JO@l%&f hDZP"6[Ӓ"d)LVB} C=nN}8 G2?(le#ݥqK>Bżs"–NiJxf;tmli*E!VbŁtٹP>uIkhEMVh> 8,M_0h(ZkyCQ8yBصyk6ȅ A!nc_<QRZjI NVYy~LFɔB}P t Tg[;I7 +skv2PϮQƷe&ēxΒGJ`ѰUB\ߦe@KG ٻKZf:$N,qF#?UfFԒؐ]7c a)Yw S:$4 ۫oUZóp(5uCk3$%v?f 2<qjOdE쓩D@ ǖ}:ȏtCU8ghb6ōX)~[2/8K> 02ӞoA;_KYy>V2X`6=Ed|M|%Qj::y/죪W.bз:.Q #>oxf4q0~^_B_<Ԭe|tn8 0#_w& $E)"/8CKzOw'klMm@jK_siwl;93- 6VPuL..h~i`\8>vZP45N$kF `d|~D3.E{΀nN'ߵ?-N)O@yQ+#[lsq?!  "P% xs}tQ(5ܨC-<]峺>HG*cYg@<>o7_1aq$Ԇ mg { ŗ\YFZ'x;PЙ_[!|5soSRट1I -!xyCl G7cDԛZ|&m3#vƜFXa?rΟ%*v 4 (p\nӁEi;h <*pY76=\5P#mW8'/Kn.4!/=`)գ7Ozsʣ3Op,O¿[\^o`YCVlbr?Kg2ZVu [RZ"qjmq3ek4|~#J:#ѣR8ʗa:ƮYq}?(jjṼBoJ _7n.JKJ\llwL@ѷiݎxN+A&r ؕ U!"-fbjsK arnMzKgsG^Nȝ.$hѐcjpt(hH X8ب= :~ˠw)LGI*lw]Kѓ^;Rp=Im]h%yd [t [6qZfxH-3<iS?օdwTd3jySL!Uj&Q).r4z.ZV,09bPj$Kc.?P da<1ߪri2z3 sR){5ӏj ez*`XkO!0T蛢Ȼ{] o1ETS)Ɉl>j(Yl-ܐ͜ %7 aV*0kfS[VsT$:k_yCځ%ɛFsw˗'`h5Zvjc4T[1R+Eb)/o-xjNnjǟ& ;O_y%X pw ֫L`_F,LjqxPY cpv4;Zބ#7 ENqmGO)C{tu0Z#A k6P0 l Q.Pۻ}DW'o\U$X"}BNʈTSvXi[o@v'7WT9~- &U[ٍ/Sp}2 +^\ή }#N|z]er׵6ᬢ$_`C]\*Ec#j&6H﷒f1d7pb9 tֳX(0N4)H*n`#粑'Btڔ(-Iz4B0O(ַLpɳ=!T+yO73zcBݘ||*ukQ(5%س%L!@/>u7"w[,\@06KZ_НdCrԂS}fɌ@m^)GwY/^O/ ;l/?+N:+/nWQhe7'N/ة#'̎VdXQ"3IʋxRHAo} *YL5ak\O{bT녕<*Q wqZ]̀&EM3h12ʶ;&RJH+ e<66[6M=ł p="HpLY( B4VA3ujT#I.\\uP*==srnZUuL Lk,r&=DUteVetx(ΆISI7|jt*] g] Olw DQ! :K =VĬrY¶0,_kK7zqlqwn<Ϫm3sPu9DA v\QR4wD}oQ G~9JOpIJ= rj@Yu~@%=ams^uFGlWrj/0F. Ͼk2}ۜZ!#zz< ?UuRL5A0SjSC@KDB0vٌlO q5 Et{˨5@o# a<jk+ qPxlGy@2RQE"j~Mc2т;"x9q!-ynJ#% IAڇzu ?|cZJ$6_p,%F Y{6o JI9-@TD19BL놴hmgBGLU槦`̞v0JQ59hNY[lh_bJYf$JfCY<1O{O!Iȱ޵G2V@|bq;ⴺU'x%KqM!M3a' ?HtgoGW#]pD4ßx^ۂ!~f<=8dU7Դϙk![jwDU'G|A!2 9 si[\\/eˡjEZb|"X P*Q5Wuo7TXeJ=VFe#϶z_^כ.čY(6jy EiE+Q^CGxg.ٌnY܁ڍW,ꊤ)eb;mF<8t똘Z^Mo,Qe7z6}"-\&W3k^՞1>i a0_揓{rn@[O@@*2@ϼ!g'N8c]Ĭ' 9rM3 a%Ƞ;˭9?=%a"\}x#h_ۓ{&j7%~/_#OLAOՏj)$aObeXm\wǨiM̄3?W qw|eּ=Q>]w)=}y%X .ΝW)*q+hH`#xQ)fT t=8$;QIJR>0j,DLB﷿7pщ㫦 NzxfXգW< E0PAh:vd om܎L:a wQYR--8K7kr AH=>Щ]rNQ̀Ď~΀Ifd=")9WS<ӴYADY eQR"T'lԿ^CLS>nb¶ P/+K9ãywC쯵snVnrcxP4?x鬐܂)(ڂkW5h3z t9!?|6r Hn) ͒E8.8F_2i)kN IpWKR@Qw #(u&ztgfFY&3ĊL0Az*H".SfPSt& it)4#A6ƹQ-3|cbOU[7X_D iӻA:s#JGͨ$}J\ >% 4lwF(m-66nguybh)]oe4F%@뾸j!#oGk 7xo[[ۿw)<|Ĭn""'4(>zAr$3KSwxG** y iIN"sʮT @8[sGX잾9t$9EȺ8KT] r*>3-D\\&qK1nE6gJxo=yFԿ|x?ڔ}FJ*\鏻 jYb :tg'G^O3e_M-sl͖JDDSkgq@F] JG/UP!a/{S&>+!j\7/RQWX+ƛ&z&^Y=8"9Ōű^}xO@t@KsHO@0ahHPv DJ]xmc)LaL+]a(G&td-[~^] &}KvʿR);OC2U75t{߰N2Zu&H{-78xҠu Aޫ)2(Eb8A#ع4R=4 %`NxGJwmO5H$I" HM;D' xYjKU 嘮""ZrD }`s3w ~s4GŲ<ɟCE,9x_T 8*@3paFU / hb Xn[$X&.:=M _aQuoI0)d 6P@ÐIo]EZ|JZg'NHHʲ DdI_Aې!LsDRq\{x ̙i8;jf|f*#DL u.N/ԝޑd1>Zz7.ң3QZ8gY>,A1= aMfQ$}-ZUÀ=#Cd>XkWW[kWLk}9-E= '(*C^LXOl\ʼnm 6 rٚ ^3MDMj&\gdoM%)z T_gߎOȏ!?1)әZЄM邡g0FsZ BnTr(2g+Z&$|;q3Ux&I\XhN 5 3?ߍI{-PWU.Kx q_ڴv+Ӟ.ɰsOk]{ ł\x B/ !LXݎ*%)cr3ʿ`'cw#v jӫW0[!u111SY+XMQxSࠊmE[/L}DsܼמehXk0wY3AǺV QegP8꺹u8ȣ55϶l_(D_J]ar;\|_*?Es3ty6Nto6dW[$IRr:9I$(cT Ô܂iwIq|46yG^pqv:ÔCy.2۩ ` * CYdv*w'ݯ1ױ/nh #pj+/UB^ !.rREL^jHI x'`WP,' `V{8g:*.QO4-֋({&lT3H(E/2b%% q;ci0kN!'6ru89׭`X >Cgp -VCo{svە9Qe%u[.T9'iQgWWQS./L1 lq@ڝAl#]pcgVоkC8~vJRǨEK셲QOgz#P8.:Q˘1L3n bT3ȩlb\i]@taOmuaH`_AS38A}CfOߵ|q#⋗fmE-fLAtf3E-־Z7ɢfqm̂-Ѷ: ^q\CXjesFCҨb: Cwom,@YWIOȟ) Z\B-A L4 BEI3q /gnDL}r;q?1^Hj‰6"#pp#PMaUJmݩMZ%gZBW!VZr٢0}~=TFH|Dm O;Jp@ӳFϠ3Jb(SVy_1{˔ yܰ:=dOkGgʓb\JnUhت]jrlSZk`]_)[g^ɭ?2;|R$h3*.-GlAxtD7W*zYSSs ) Y{QԗwSbH= xᚖe 9QULN|yi'1X*ެwkYւE+/Vap'ST:vuY7LC !rZŗ Q}r $PD#dq@j7ģ߉J Q:e ?H #o+sV| =䭎L8րNEGMdCᮩ;}'c8oE]ѳ/#n۠ou?X?(M'a]SǾ?DSb¨?߉_ H36>d"yh5'q<3(ѐEC_!WyfmE [x_h؟'d EG^0E0kVaFڸTjKATSs@SP.ѿ衸 xt4oy;It:?}8Ր58_2*_}7`o٭ySHnӊC qAhhaZ2M{:PgՍPթc%L,9I@9%nEg6T)qDV;Am$ܨ'NGG 2Wtu ZIsL5Co/Bb/ab<=wH2@He ?eOzDh ?pҬ#g1͢-kp5kQ-S-utXQpYi 9:('y#:hzap ut|z)JDTqUsA'^yl8Ȧr $I:h6}Di&&,{٘3'Fd:qs/=>Mici˧dL!* ϶kxdu[c@2<ѭW?ܛ_Q4#Mhx4ZIDU7޽8[We69ٮyj2Q+q.hbuy^ͭmR漘Ѓ7wʼ@Ҷ}t\{~sC2F?KĂE!zHPWVZgnl12)W*3Ld3ZH欚^r .;} UW@W͚H B7Z]*`K?pjV=2BJ)UZW>@ B%aL7mx\kNB>6KN.q {$L^W0\m-Ua0<Ɲm)3|0Uݷi[g(ËHf3襧q6P nH x&ej.̜z7ݼڹ[x_7Yal3/<Z X[6Ozt^ T]v*sP35ӷ>&ugC >bSVmCvv3Gj}E?j7'!;;-q`-lΨ*BD74N6-"4l`شm=PGG3i\գv u>|^ q4d4YOEd"#xGDGnSՐ%s5onIBs~>;MP'<ԏYQZ0O(46rP*#JfkAMqdȾbGy-]?=]!M\)(I{=zޟ?v++/M!lO]h;NƨiDV'KP$-18o𪻳lWHspu8D$1:L)i~laSw W&-r[4 OZf2Վon/D*L} //+`PLGOM mu22|GPش֙Y fUI{T 8/.@V-sz͑9V ֘6N  s)rL4YA('e㲌f aJ4ͯiTūch?VcԐY4!%cDp:Z##WǙ]l\*۟阺Ҫ[7PB0{H@ض8=$&k\mC\& 5ue.+ dnbC=;?A6=Gr_w{v˻\$\t^ A{;j5f-nPm"kl,,RFфKt#(g+*b$7%!eO>ySNP֢%&Eo،W0Jz` IOs2m⽩{*)B(Y ~54m'\Omy5L>J6/; l Gsxv;q볱Wa5h~<{dnw`+NF T0B9#YMu4 Y'3A. d&ӣ_].6ގh2]k<0\!ůB:`D1McM,Y`i1 1]*,%)88_K4!Q5DNz5Ox=kH_(F X[Y:S84.$t&X|UA=wgiS=Gdn*i[ 5𚼗/G9Z,qE~aޤX$%^[ d+iAHӈa2̲@J@0PVhGb7˓mвU2!aoDH a`9QdE9/uy*4 ]"Y8y-E*l{KaE hVUJWዒD9q,E\` OThI6 UH V8]\>-7~ZSȀ%O)*+!Db )pzV-$CEQ*,U_A܎ +rվY2 R@aD-M6ևE,öA+sdٝҫYX&;MeB:S.M%uI"|:ln$.DxUn[g 8ƣ?aD[)KXk"gZ4ͯG-jZ35t Jr!vFzN,iZ^b+XDb!/s_U^pKŜ3{$,Xֽ׃cj.S;Q$-WhfAW[¬yr%¼lOqj[ENUO'5a*|ηl.ttU,,uDd r( ͙cAWO٣vER5 tx#eI_0Si:5~Б ørseDu Cq6+}.V,R S\cj5cީ{TnTPl1]ҷ@ SJM9'.,-K9J>P:O6!N6ձG/|6hWN*!SPCYA祁9k/fT6{CȠYHf2磉E; ;HC (5k JF F;W[Sn:B[R I)*;AB5m0Qđ*۷#%EPG?<;#/`y* ˽?oP5 u2"GV3xf:nNzqjL*dDwg'6$`t%SxЋB¨PMrcZJ4^:\k;v4m.gE{'0Rl7IXkin ̀8E<' l7}9\?1L?lD(WDHIh})Kgʒs@)\&Fd@?W1YoH1 d'j>9=r2qSFOvmSYSCE}@aINoZ jS  -<g@Ǖj@ +?⼟g̑fVLWx*YZkQdg-[Bz<6DVaKmLTM/7fme*v-޻NiHGU8sy)\99[#ץD"GOJH7^_M ׵:hF "DƈZRi*r_͎L $^-xjfH!>d},xJG)Hm.bv WKG.}dЛ^d+6;LmRf["XVyf޿n E`&]$HGfC0>IOBgd,)1=:u,#m%&nabVZ^SloD֘H1q_(k0͝Ӽ/ӽvcw3$?+IAoNGGawcU Gqh i<@Q^u8(" q\&E%wBuۇ98+]A?$%%]n"5]Nyo亭ie LNT{K"Om&I`ZU's,"=CH;fXvsgK8>o҈cEg"-(z.HdXS_i]!ÅY$h)<`EYXFP:$! dXsN50!n}~ř.wL7C--GpR%"WeqP&hY.{U_pnQ-z~\|R! ԻAg:jn\W~Gqe jVm 5H%e8"|N<Ht|>|h#VM~Zn'}2"EFW\w >*5i9Bh]g۳z1TQxYc+Tɍ2\kUX⃛yJc\|{1r۶K%zK"C8/c.iɴg5@7H`d' Y+̵ [%&mid@2s ļa>CfKP#J=82PlU6J5 ]l/59Nmmɣ8ezf#x[vo25M_ Qs9^.^~#„$hE5+UjJ!ҿOêHo![M[lF2 `7EjH`)jBTC˫~&ȋ {<( \"0JD-Te,~!Ξ38L>kۄ.i>1=GU51䀤˿l#8N'#lxZovezX@aAVVEP^Ϣe%` nx@K6W!DX(P_7Z*u-պS>3ML?QH9`؁sY@$_褢рRՆ +z\˨[~)4#иjF5߉?qYD7 wN DLXNtd͹۲k= I"X.eWa>/S2piܳlxXqG>{La]L23Of4טݔ %՟rNa/'A'Mij*-+ijh +-[Ƙ lsmUC &>$f̪\%/xN/g ߕԗ6`eP- @ OIJ:X$S6ƽV9јЮEJN 3{J^?q8b*`v(.n^ |~jxQٚ= =oܩDaIDXSBE ^tml.v1 (vUc>()[=j^^\ް$n|_2zX}lsľ-\:i\L,$X}TQ3MV^N>漜Ak;DM~ Y~„yG7+yeqDSQ-K1rJZdXTD rXl4Ϸ[K#2!;DOXzx _o>+I?b8]*m}`m}d;[Yϗ:0m3$0%QN ,qM/*DO6PgM'FO)iMp. ۶"B32/,^;ZՂ+6[ Fo61]V(z Dkǁ u gwtY9s?ҺSqD0/Tw0(ux}f~D3a 3ze7s$ԘPK_+^e L2{u?a" iI\Ew/͟EMaV*8w'𷞞X0P0*ҌMi``FêW(l -(<O0*R\\b-iDw}r6.@֤P+bu9 郼DZF'8*~ʜ^a!lAK}\Y& ^_5J #{LWґY-g ~Ӌ]r rbhUqe ToRtG^2I/7aSrJGJ7,`E(]nyZnj!Գ'»g[#G1{Vy];vFhD|ˍSw{94Lٰ@s-gP7` ̏30s֎dΡpΊd"l귕/G3~zsY5WNNi^ 4y-NS4*y =Vɤ tnm t*B-);;XI;i" wZAMq I.qs抂u׿k I 73ouG{Β๫eqMpZ2:f=`DkoXP,Qۇ=_N8 HO5K( ʯ ?L*) W^lqwFf`R>R| T ~UjXN?!b [؉Vk,2 :SB|((1x@x=WAŗLL ~xe8=wGti`* e9C(ap}=4+y)&*_5hEbK!)e1ܶo1mTåJ_j,oWAgKblP_˼ )COrd|gGu,ņ:0Ay(B)dVezb*$3r+5/\UO5A\hX;q}q@ 5L"ZlYP#}Y>ŅKg a@ICvthusD3j3kwo?)cwë\ Di8 ΏS{Luaw2k\Hr+c|o82̡2!!I*si;*SSm(bE8-vd(M{MBF"x jCrkZ6p*O7T8*=b_"{\k58+BGIF%Fl28zGV[7:kE!ց֟(X^#8&%**fhc~su v\T |YIR@ǣd7T|-ߧoǽ 3Ϣ^l*U%+7QӜdiE x^}rIsLhc7E[:? <ܗTk7{)34V"5ʣX Fhs RD3W 6:8r,hCMVJwKEE Hʅ\-wx`9E$eJ$k&gX^{Mz!^R2 Iv*yKb/Lh%Rچ+]|C{"k悄^3QN]:X6gD53NewMV@!N0~?:R=Spˀ{ ݺt4fUb(ͻT6ݚ0ӄ]LQ0a$ST)F>f%"y0Juqk@amƝτ20s`l8$FFjnQIHgrѓ+dXl|0@;7` T"~wB&fEC;#29t$[m [}"y(a};Eua<]RĿ@w^ܙH󬊶s-ۙ*C;xs6xH#fh5jRs }ȋYTzBTig:wf6,P$;=m52愣kuծfy.Ц_ܛS#~$W$~"@.8,onb'ml>C:1-K(J&g$¦⚮Lغ%c &,*Dz`!%^%y)򒻃M[kĬHС IQ,/$ߩT6\8g" >' o[N<Џs"'Ř`Û(DG ql@}ہxzx -Tĵ۞h>Eɝns7g=IS͞>IzKKfq2Z-e3@)>3y YIKIs7h!o|.%~ =d2Ril {@kohkj3 ӗD)+Kf^֒a>}x\2l9}r*II$9X@L نugfaK>po$A V1h}=b[_dԈ'K [sò;'; v ŞDᲝANC"e8zRNL ֝_|\fYacZg֓j_>(E=>zg)fŽNj(\FtJ|E4׼kkOƢZ ;+n:ZJ:aO|^?ALڏ$X\v(+|ـRB;9l)߄0d +/O6BRa rN"rzW~%jV[+Ü0sۤ؀2r;g Kʯ$\hZ|k6nAD" m.7g2`k>.N0S\"%X0mwfG%y铚cR׮׷ÌZ)$yXΎaU|+Jergu$`gqy;#N[dl:t"3'Vt2X/jȥF6'+eܨc_3PS (C:VP1&\lQׇR,G{nkKԦ'9G`+=8^ģ 9Z@?&^7$ `OH& ؐ%Mg\׺Ґ 8k]V*M=욱<~H+עPk(($[oH3b-udhTHdY٫ sY%xSS,яt2Ldl̆pYrVyp?4\eN# sΰMWMB~Nr&+iċrTsn6H¹Iz6|.\Yo٬{dZB|}F4rβhڃoWTȍ۹$uxL pv{s+{`K:m_-;O:ѿx]`\e5$f3N`ԋ&A >IY_ қ:O(Fo(zֻ(AL&O2RFL#AjtˌDn6BF(WC1nGK]ד~U&:|B)5vHײ"1"rh$4 kO6-aJ[q M{C*?Ov苇QY. I)C8h7sδ )0jOl`BI6>(5,PZQnRc5&d:2S |2d9'*fWܣN:OR)M[(%y\}DaGR?k*9ďsv{=(W=J3 :]O*}@_ڻдdd?%MѴ˰@Ћ&kobDu]Y(P*ccHQi3EVSS3{m *[r) &":16·T k%I[SxX;bg Cc|2GvV쏃77[s$_1‹nִ>۵tgrpu.6qID׳ ,+ l2dᅓ$?TuD;4E%Ǽ}3Fɱ1{o47ޝ #fV ,/5{d;=(si%ņbTNxΗ !ݽ10ѳqjvDR{mHXE7:A' &CLŎKS̾ad.Mo֑ctpC8t-M.r.tK-,e:J"M!C/٪"9Gyh<% |h~G}򗽡@;@{:M2U 3L!6byVf2i;,NڛO}8Z8[C* }oGY;kO0q%`9ݜn+~I5_/k_p6i:zK /%tI]Cy v HDi@tntd/ ˣa F>{?,{,n wg*lkaNLDɃ# 8+RzWּqyb~T]]3B6$my!0ܓ.4cu%v6#W4E%x(#SoȌכY3ov!+Yi| ,;>*/lҩ/ weHx\n '?FV[h Dq>ͼ&0Ρ~骚:~;0V12PkS;Ď3AsW5ˤ,Tބу[{Azj;'&4&. Ԧg3, v6Zäu "{ I ^/BulH$z܄t ݾXf@?J7d]"ڠP3?y~#v,_C )6rd3a$N9>COٮ9Z m0g9  r `.# E&b&!D𥊪c7[璹;6.Lp-WnjJt͖"b$ ~/J꩚0#@B$}>NQ|:K8nnPϥӹwa< XwWS a?;yV&NT`q$Rx.LM$V˹+?6>а-±~՞P` $V̿x-`hR(Ͳg$;h@3I U-#g:_ڂ$|ߞCy`o?H&o-&}A0+QtqG]69{VYI;wđitDN{#ӳsC.. 7GZ qBjD9<7p7 mR3D" QR:Yv(h djkF^ Wm4zb:wM™g <3)~̵Nñg:dmT2><~mpX 81 dp BMVjo.$C{cs&rl~L4rKEȻH tBW~p6F4ip#:1IoP̟Z0vΜvsZNcOȲC,k)m, [N98Ȅ] hv[6,bJj:Bu+FtXv!lV 4/AZI;`LS&(nXrU ^'.X(!NQHIIj(:37tmZ2I$ߏo%z;BPaq>%Pi~}!{ T0VeP&]{oj _)uMW폄S 0o!HFRpe<A\yYܕMtd-Vr ɍ7Oz2ߠxnTfGQ>z~̟!!X}R5s Dr4Sgk#兤!0,EPA3T{>S(`ĺ], W,3nEw.Yo>:&.S ZޕJa%FCb,XG$(H3 +,I<`G=?(XxA>;E.1[,S٩m,Rͅⅸl2NӘ^9]E31%#~->&EzL߉&;RPbYM21܁T#.63P&Y-bB[6p1i{k^ìi],`Vax}頳JBO9YOD_m8>WjSty16+TkId3gn.*?'b>DaOǝҽ0Y=dXUz+m.r_!ov5tN Ѡ}1[M%$Hڕ|tF{j'xkG'}$0=r2-aIUZg_R% R`44JU}e{wov4z~ЧTmJڒ7;,*|cpH)X.8ӸIc9-+IK㵍ظJS>Tl( ~2ÆNo+7>QNe;:~2S9TJ] R7sQ;;.':Y7QпK/,@S҄u+c;I~9QP_]^k5Y4"F,<%'nMDRٔcf(|o~Eau\X0f|.xc-ބpҦl/NFyʹOl ,;z4>x;uQ) x%nJARH,Zcp^QPd .qdI<ئ$~P a+ӷQOFI E`\GEa2 3s*BυdNc;Ur3 yM.sYHGuܟn4ʇ2l])P|@[ "!c]}/T kCFCv"i'{ys֨KTo?i,'[*dB^?^^H6Ź f|os(k hnY[2Ao"%eאk&fIo%\1mpXW9+~D5Cٳj5IK̓"9iw#ztvFa7PW` )ke V<]NǣK}ȱɁW]*Dåի~yY׵'dJ>d *Q? I $b\ѝ4#̷wleدdר<;;4KM-3r^FTVCNUWnCZ ݽ)po«&l^3&5-87=:V@D0v}6kJ&M,!VbR``=AT-Gk΁ԂIv)m>n2_o]ox'1n9fnuKI<ܡIt`-8߾qHgL9@YV0;TKJk|j_gƊJXP[E ~HG+𚡍SRTCu`L86>HlԄD:A`"PcRQ\]#6ǎ!}3"H).X _7c |4aB+ [trM9nBۭQ"r<1<0,ʱ儸j_%YPU`*fSptTq{<҇BK2/b5H% Ltb f1iOl"t& )aPfXr3]l+:5A=(0֯e5xO!IFz4s} :g !jƲĶY$UiUSKj-qz1J'$"It (VOǶ8ik7_J;k0ͳN/{cYTX'~ G[򗇈L pMQ'@E͢l"R  WTlq(-kGiyHT:rɌGvkNIr+X[7 vMYHɅ/q䔘4[w ,S 1Czі-`ˋ=,Khޗ6Kmּ:QT|Mԙy`P 0r!/at"܅iؗl20&Cƌ(_<-U($->|sh[k>A`$OJ+0Hʍ0ߞ6|brtsg=9AC^]W1?Wq!%5NK"w,*6I2p yq9I<0z{,y `X`m,ͺMȃ&#ߗcY<84;n (s@:*=% <76 ?n.4ޱq[tKJK UFj"ᦩI/E"j̴rYKL6 ,ck )gsGqT {H^ ]5hڠmP1lBHZdp?i;_*1?LwދeY0Zs@:%PQb^jA"|MJ7wX,=1^5:r{\)D,_O?=)C3eC(cl~Ο &d^uzG8U@A ';߱8(RE󗼜4*5ר~5ePOa"]ERH2F22ДWbB]ϡ乛 S,[,n] &-Fc<ςV5f(>l[sl1ǰMGa347H:ҿNn8m'^$ &35u$#'|I/27g^9qk Pm70kIOIrXXu= 'R\,5vI4 .K' 7+Cjwmߒ[Ίź{;ߧ#p5 lp[_p;t? *RV@'7IT7uZh4Jy|*O:>gnuUU#'a 3(w\,%i[w4ЀaXP<!(sJĚٿh35)!lȗ##9%w?|Qdh-: !ZmJ%B+LQM׬?9/Ra w{6*i%)be@_<qZjI2;-C/ dE8?P(̷1}߄v`tYR% DH;[̌A5AW&um#ECAz`$2CM$ lkL(jO;0q/,6-Ƶ$&mE5`/Yb?m=.5LY)9WhLJRv\Lcsq|}Eo|p!o T/B=|mr0_x I 7L_[yzKU[heFXɼ488z`dE-E+N1N:ztnPnf3~҃\VH)XX=ǖ 08l3HT[7 yZΉp5 s<K*CFZtmuFNHH{#yf[d\)2uJӫۚX,@Y%kа81?x TPY5[VD6s.OoDЂM5G oL*WyΫГRأΪ/8njĞ0H1x8ϽnˢrBRypN Vy }Tw}ug% w¹YOhp?,z)}lN⮊&~*!K_8a\8i ^_9]eS|+li]8+P\;z qQh6 `:g[trPB&hEJu- ׄդyYQ-x+{c08!|RosYH=&´ŞI4@b/p!W/?R]EYh3,c ( N2QO<6<gm !aUHC0w5 }4W3s춗T|WɄ&*&5̷HD}*GGu!sihsjѡx"{ߛN'6`>we{b%>-Uk(tk|3q2d/ױg8mb,5ZXJ-x(qNG\֠;Z˄ֵpL A ][%圳Y1ARnXz2kB, L7BDq9EV-;i? HX?f,@]G.Jof$@vrmlХgf8%is pwLѓ C7(v3+,w+2ICOWlƹ r&D[h1!$ 5B3$r1Ɤw3-3apS즉:O$'ՐS*{#8r+IBj.kRbߪKRm9h0 !C}1 n|) }f“73Oc~O^iA #vv$3֣W/W ^E'k.ꈤ"'I 5`[5-fG/H|mzhVtFWm&VF͚2D<$ {*C8@͞WlaP0pCoe9C0&$DPDeЇ#p}0 sZ m>瀥v߅i^Dj]EGkп|jG,̘OٜT')XU-{ :*꠱Q4PR5SSIr'KD\y: Q>x?{O2.kd(Сh+_ c7s# @igpְxD6M.8X:&Tnis$Bѣ]@ V{}ݨq5c(1pA՘<yt6> ެRҒbt"'`GP.Y,[z<51n&<X3'Y ~bbX|=5*`&;`DdoI?~!]Ls%Iw%C( c&"v8K׻;D#>Ɋ.J"xEթa\ƺCCCOų}hT:<,7l1X`Lb0IL# hpQQo"syӲSVh[?Ja%"2'+9H?(@^ =g+1Ç A/eUP%L`Q$zwJbB+@/x]]ZWƗ#<YUXY%Ïc1O"UnJoDuqX}Q,J{M A|c+~i'ˬAd]<ÙDlZmdɋT=O@&lv'9"[_*(5j-7:̖I="iն4,"dz=%kY);)}{]~֐ڝIpAKd"͞n͔%uWtDɭkEuE=:1jG#8jŗf).\@5:Cqջ=8MՂ}0I<8=-Ϝ ݈  YK<}t2;El,n$¶\O} rxg3A =lCb1U0}Ds ճ)".)- h|tlj[&:Z+-tv֢f76 fGȢ_ /JSAWEZ+LK%hI[?p݃l'l(4Xp,/k}$OL.(G$MX\9tnNހrru54[k^XJB%RD/նu˾kT^ JSʯ$ E)@Dr(:МP7rmƜc6{DCk=|ZɯH)Tj8VXll|t.6,j=9>w3}%@ג10;ts:/\ktt=;yޫujt {whҲx -jk XR|#MgLl4WxQ | Hd@z $i+C-hJMIUX")NP-]2]Z~U_Q%@8]**iK}uJW>Nt+ix%n&D3k- o*S t>+g~匬N̹e]ju}o$")ٟޘ$ũZN46Xb:\ #a*7ODPwR_h+['F74> K0\>dU'NW[XX/{l)ogMvx,*M#Wt\Ta牤paɔ3JN;(npOnbm*Wr6^DDر*d}θ}^aHs<=N~ ]r7ztFS#%&rMyDIr&:AP ,Ʀ?__W = :LiZ5Mt UhZ3`C0o T),؜a p7 p؈z#} ?! @Tb|lq, "DmJ^"=fa"X-Uм%ʯd|J}~҇axA+v )-@{"k-BG0c'n~k'w" /Dx'/ [=Hfq`3ӥ xM jB;'<#kw̋vZ2nRV„:+Yw[XnǨ6iZPB>lI䤰<_T `^7(x vvhsb!l,ј1ء^EKnr_fWJ5%w!ph2%\M6{!uwkphV̺} k5^Z*1 ["b Ƚ;:cc W<єBO°eUs%`5kZHK1r}&攃^rDڋvJR#5nZ+aAxٳWB֞^|H-K~ |uf/hl]lRtQ4tރ A[6r ɭޜADPۢ|z.ɋbJ 2-OIa];O񌶑>oxyBZ̀0׵0kXzZ?"(sė՝+)EyCO' [ Rpg0wJ뗀ܠh1Ҳkb"mTQ1sRQxS.-,I@!r4FҶ%C6B:xAƺ@d'B}<'|`0<;CSYwM͙%g}Ptʃ/1(*dk0* J6P6(7*8PFLSPKHHNc`meJ .:K['#ڝu?{t/7x@hbs:YWTjL_h SR GW]{~WYͰa/B+ L3c&پ:6go7. @/E/"r1fNب"+\{ᘮ)#aRFkj6b ^|ڨjP? ڍ=i-gwi]F ܩ )MuIעH'\ZH,GLr-~ƾ7bBh\CaH Ƴyw6!Zޅ$›t,y8 ҪGΛSFZT{!4 Gn*]GV:E1:rޡkR Xa=Ȑ!&q)Ԩš Sܴo/>Qk pŶ>Ǩi&,"4p Q9n"6`!Įy["PGr6o+p+߲vvFekH$ (9Q d98`Ƙ)vY8Ycŕ=9}opz^fkfOwcPLZo\„r$0x#E$("CaԸq K(lD.mp_IE _N^3I}֙ΑIk"v4V f. 5ͅA0wA!!D/8RUlUH^QXNL_A; $oqz\O:e943{ZuLѝͲvb'δ)wFQ=[iR4,Z5%"_9愰$RgiMȣjV5$!qePb8xi]؊XXm5lk1|&iZ%g\ٙc \fj-|`"R[UHXYa .`0E&:Aݜ4 Ӯ\+h]O򴛽p؟=, k׸.-Zt.,c͟M_KM|~~`,OyO[{u.979?Nzh.Q} c9CH#N%~dopj.!AK,jDt҆4@.F6ac %ѡ/38;axm>f(ʎŶƐwc3c6oJ\VAQK yڸuoAr*5Gozon j 2:!ed wo,~V( n8?\,g' j<5\ H{T^u}A۱"Dd`ZǚM_PJG!ʿl >LT(u` Bo/|ZD;&6hLgoպ{pF nz @lwhDRD ļelñ$XFeo1ࠑVpɘgpoA=`.푇j2Q{4T|LIC6~(\mֹ'u)~U+qGeb+b $:.Ke9J9K+1}.gQcC4s?^j4uiP>gxܴH} fx*Vk$pPHвYݸfn CZ{a$jټy.* yTu‘7ˊ" R'<7d3B/>5!|͡/E-grk2"DYF@CxYt\S,8,vWTgi jSNd.eEJCI-h&' Z]D1 vCM jt sʭ.kD9~ w*- 3i(&#@`@mld8@Ofi Wh3~k69F]_Q~r sԙ⵪RuQqVі= cN[ΘŊ˽(R<1r(Cxu$ߡ4ó)NOnB]"h`:dES|JrmB\#|vAk))N 8*R H* ^-·IPtsp,% ցeۭus"$h-\ wG8x78j\ڵB01HŹ҅a{P:0Z0S(Dq{08-!]Ui.O\]-v%=K vuLz5ttɈ֤!Kyuax:䳂fE"C,v{Ľ;[wt3tYU# YI/K^Ҏ[߸B|`+XČա!6.> 0>/JrU̽Ei*ѲLIbA0QH'xyA3@{,5\ M}$SQِDlzwb'"<>fs\K<#аdz|*@18;@ݯ3A=Ҭ%BFb$P)m;p8^<4 -"8?zkAjJLJcas#YJ3׼ٮoTwcp B(Iw_Β _h吭^2/R+ԸsDt?++^;-0+L\Н9[HOv<\Bנ[ԻW\39ڽuV?T(0ze?X׏IuK)f(o#h5DW~DWЂgjxLW|Hgg!>i&l`B^)#f*@S!}SҰٱ|݃n^ 7շ3W{yЀ8d\ƞ׌8mIj5hW.#gtsGgU婙EQ!Q s)X6&%)Ce! !ܱZa'>*~̿~9 װkwO Ʃt/XmH䰚ʜo@{t#7d8|A16č 704]uuX`e"rJ/i1E92z qGKTM>m.a|%v-mǴᨥES= 1-<(o SAhmo(|WAċNsuҐfL֗nb$g%W"lD1 # ϳۏK@ @ĺ=}‶l kPpW9f%xkOҌ$ p!wZE M'᱐`ȱˆ16D$':ɵ^ap s#7Sw(>~(䶖X#,"( IDK-z7T/pXBO(oD|"ݣM힄UP$ڃQ=P'*pRō.=#k#L MuJʘ-w" Q! 7YU8OSspJ;ȑU5a)[}-|+"X]tmPt]v2;z٬?2:}ǀ N YTt-1^Y@j/i^kQ _%ͣ^0E![D3%S>gyv#wm b8 jד^ak;k^@r%lmȇ~_$8Y)Q\A jw`$7[[zvH nb(N`tXF~*F?Su'@':l z K͒^.z utyyK* {@{I2)!6&3h.IGDEoTxƈu"'eIJ < #0u@6:ssBw/0?SY~1Yghǥڏ%1+ׂ2; tlOmmx>,s:f@v_KؠE&EF\ZTJCoAbHX?ԫ2c Nq-;`( N5Qj$ʯǯ幗\zwV\6KFw<88 e.^fj^Agr؁<SMT Ld9X=JSԚ: -Ccw\f(]uƳQF|dƠȖF %)pO%[#j?'^X1Aa$8؁U8%P߭_Ch䀟t-&Α"{toƕRGSr!GE1]wt[yu n[*NF&L6Ze>2 &'!Cjw-K)|$^ЗESRwN&Tdg[P1dˠn{2PZcn>اLIuzHݒP]VO,&jӒQ?\k}^TBKa~RN8.VKutdCN7em u*?LʛټJӛ2v$>\9ΪQz~ΊCHRnɏnt]^Di,ePcfnIr| i`n|"Uyp,^[rqK23Z3/L.wG,BB.v: A(-r)k]DF>;ڏ/Y@"P ;Nu:4_ ~ r&TU+~bsGbOsM;i H,Cqͭ@sR|]-(*Hsⷁ2%ِw+qN{!Y\>8&{Y6I|wwz~]U1 VTg73_9_xtU ",q_ .+8,<n'YfH@x%$L-ZԀO4.\c9oyj3 U4~qGFF"Eљ V,sXW9(6?"JL:=&cۡ8yG@6R D:ikj/W +]ӗIn*ԸEQv9Mں9J>ytl yՍ 뼽U7J"l!gF./,n'^}b 0V \eim#4%\_ZcG(iHB5 f)GmM#yhzZ_zpZ=9IU|~dJP|Zң˳9j93bIUJޛ2L[,@=Mj,JxmN?WFnA7վ`GZ\c ^nF܅f"acwF-oJ;t#"5)t-.Pӗߴ/c֧{Lg-oֱH:ZRdDqDZU?+F/%q?9ƙ=80Նoo0F(.fL1N=-;ymo dˏAx\{ܦĈbB"aZYPrBu0ܻ2bcwrn|&9[X[wXl)xQb+-I\5EkYbgdJûk֩MzofoިB( F'ǔh's%=@C*`!t~w4'z~`"EAI?{N4e"fnr759sς|BoP45GsrW6c_ETr9*HChA2ЪTca)XPExcH${t3X;l{*nn ҍE~ʲhD?4Yp?{C2ܜbu8"ᕑݻ{u7 '`Qq[p$`r1khd\!$.iM,@s.ym@ZF)k :L+}%T 㟷j@>7G3-5um\@[G_|k:8U9:D?Ch'HTeD W\cP%*cw/oBO3]7T.)G ^3/][ ^fB$=K4!Iۉ}(=kuCY!|1W ؓ^IC(=ٞɍ-/6]c 0:x/P1n$e*-{0mճLYKPپ q$nnBRMj_$X>9_H}Nj  kC!* s^,;')O4K*$"B ]qf_zfMP3{%R|۾Ryg .4xP3HT P}8'Xu*‡J9+ϬUb.fL#9 |%L ݄*%@'_>rUA6 :?wGR9蚉SL&S MB ϯ ܌iaBd#|TwTׂϼsqR.W2?6M$zYVMIZ'ɖ1d[c+LI}[$T37ꑡW5>ڟg5aㅆ(+xhc]tLmVās[`+Ht9)zDp((Zi! u;jm7{>`W8Mg!% c"@Z6g3H hU66!O{"14'w /fmgHXH ==uz+RL`7ݴJ{'7 PkRdX" Ƌ\kҖ {6MHg>O<(WCL~ʙI\"RGKy`aQQYGMɃע#ڥ t-!Dw5j@~w2wڎ+w9J7|;tWutHW3F4=&"oNm%%a#[!@:PPG>x/TCXu̙gf0F3&UqԭΉ;'ćdp6 X/H ;- *L}dPǴZ$eJ<F=kL=F<7$DI䢛(vŢ;7qr Lv=ئ#tp?6S}jO[#e/KdB>ܼak"K$;=zz|V ƌzZݡe\ڃhR9o ^Mڽ O}Ha.0gۇN}؆cv>Df祂52֑mRVHfOgRMu2n&"]Q; ͘@k͓GɖDpg\"#BhRIU>tBsv s^| fH2l )R[ Jm}AWFPODKvl 3N9 S_ GN}5!dK[ 3)WD9-Mzv)dL榁&kb6iL*T VN@dn`XniI:M担HJ.0~GY?Ftɐv#1s1c7{ۢ=?­h ddehvAw\q=9$ڋj7uz܋R^UE| aDuTF%fgQ4rD\k&IT gb]&8ҟМz ǥu'J`@JDxSM;A 1{[Ig) 4Ix&5XLIp8J QswL|es?t;dg;bk&S2#O-Hϒi@I,p_aΰ[F.8J`|-yWޛTtzhxPpo#hٍẸ9Vʥ 8Wu/نgqLJbZ$ylx--k^]Ft}伸6w]!Y\ur+eE#}nw[һd:{T,H3hX]_R?ߑrL@DVF3/-0|!dM Տ+;Ʀo̵ǾSfn9!lA=1ڌE!;osm Xu߷x)3Gn90փyV+W2xG1M1[Q`u^XaNLfN5 auQYøC>Oz$4+n>>&e5#vfrNaUg*jե`A4FPf6łE w&%:~TMaa|RXS1 V~1GL3W' qյ5X9L2:sKv ag ϼ91m\": 6 B'ԯy&jfI2͙bdEw"ΐn~$9Pg=H6d@ ^yRw a\*|ǔ!mIE:xK!*胍[|$ \=޴Tsm|{-жILuV?Ty>cD+:Bz7ъQԱ8NIV[f(\"hV_Wyi6VBH~=9"rXERk-x>3Uـv"P-ka|i!ìrX&z`3[5Co)r?vEWs=)ue'4q V}<&+w3U`3H3$ N3cLrɹE ҕe'z$> o5Ey7&Vi\Y!Ym@5~Q0h|l[鐸s `&3tUz}Q*K{|jW4z>a$ A}tZgbI)tULZUtGxÜmߪQ<.ЯCv$u >ʎ@ͣ t&ny~*"kݖe- hW.ۦ ڟ{NSWHк[nQ3ϊ~Y1#)?qKym4*\ρ[-V=Sjm%7ha{:Dp64BV峩@+RܹNRAr֥#Ӕi$BWޜ_>}.-Ztf] $OÅUVSDϲ(9kN <''9X7ŷRUNICVC=ٽ^:NQl_|73X^KJAQ~0L ) ƞA(mvY"8^v 5sU%-hd![ &rb7o]&ln9jY8$'aNWyf;*jqnNm^G~ F$/,Cvw)`uE i  9̪C#,}Xᮗa"'`@I$r -he(d|2A+eT 5éD6d~4LaD-xPw{Eo}V$ދgyG@H7fcv3 R_7F.m?K29Ko? wp{}ZٙL5k h`HSN<ߍaOb[-\ԺeXRq>F#Vٶ 4%Zvk"/X?2%7 4_ojڤߋm}ա,x!?u; qE(ƥ xay4OW d}eNh[|kІG8^\h유Uƫ? a&UsZ 䞠RD~xeILy[WHTp[ ffvfU|C#"+͜ I+*]1LA͌#|QS¸/pOPٲof' r6rPBW̮MWq};V0.S؆ NЭL$^[;ӿ);T}vg T &&{jдF9p/U`_|`c܄9Qpg=gYjgS$Ags|Ό#m) X5 |F]@;_s)|X_ƸBwVD~ExVI! |fDwE8 o(-1:z,߮[ز[et8tsi&l:7,m$=$Ѽ!xD{)gD,}`\^ug}<;q)PS'%%~27FnTQRf.2QmOs#^3u*ulbj-nX%'ݿ %t+!,p2`1z$Ջ<$K+zpHFSH`ˮ伊4DΤ2׺Lj(us&[a xcܽu[J:w:#J*.ƒk}cfxv{i.btl\8 .OCH-Nc\yrwE[:2' Jsoip:-=)GW`/z#ò(p ${DBƮ'ôlW$fX4T^Z,-n$l_u-,]~϶#_2/7`q!epg'vYG7;w"Fq5 IL_@7YTA~ԑ~*::9mn` =H_ Ez>(6`,c`1Dr8 v';t7xJLykB:@FVTCf7Hp~@6ivdc, ?]oGZ;_L8frn:5nSЊ2N~gr 5~W7[tsYwVW[ǟ\ %IV_+4jX@wH6.@|`zmeW]He vYn׊PԲH$, oGY&O 2bՏ`؁T] Y6r熰maƂR2!B-kٙyY'Uy6l"hxm!55f"7Ћlgag()H[#,;qhV o#Y]-$@=JF}s71f-?}zn[;}tM=8 bcn*=zh> bbUV_T>}? A -5/Oҏ:uN^h,1zM[D5RctL`"|tZu *\~ 4jc'LQ7iR)1$o$K&xz!>fw"X\L-!yy+:V K82Xgf(:>O3[U4ƱTG }Ms]XN>#ix Hϱo;WX~loXp)5ɆK P'[g3 勝+f{A-j];Ibyڻm;̂;5|Ȁ )"vD8Ip$*(dzpwy'/!Q{ $`h>jdj~ fpS?sl)}bmLEFf}ͻ_@!'azY8 m(aNT1HF 7VbWQy\(jO e5DJr$1ޞP]NN*aQJ="8Uz%̜FG9zάt,#U&b/az/Vbew-G'[oZ᭷aNVj FH_:FR옶س05J|v;|$*5jF]PP6I6w~%S:SO6 &{Em%S8FQsGZ:7Bݹp|tw첺ϩ_IJ Rʹ) 1.Xiq!^3GD kmeR| Jm1'b$t^SQOTT}YI}eķ|-(L>^XYߞ0\0ìɥ*RwcyӔ >rR u9g%7\FS40=X:L' ύ-4 *,VHĤ#}~RhIGO@~E_&VwS U 9E Lj; M)$#yYx?IG*eqwfQ1A#U@Er2nr G`>Aٳ'l 2ݒV͖NѲ g.;%S/YQW84r, ZmH3W4.ޯwgI_8ts0$ECe $R33TEYydB/-g}J/I&7ጌړ E0nCW/bvqcy:7c=0B Ԏ޻Oe+M#am#c'zo!Mai>ɯ\n)H]aIՕ&KGrh!9L/ۑ|"O4ؖQ_DX6)o|WA(h:p??ÛZPd>y2ܜA$Z\hRd 3 Zk.r5HmFAJgso١hcB}ND˨C`T>wדuKx\~! ֣e  J4:{S(5,xnIHGOeB7b=?̯fh[x|w8jx>L;ljFjBSC+@㪗C)?Pv5p`KB޶ D,{Mx-#aA| 4Xh0 \h0룩۹o 247ʲb+ IuCΨ "([)2utrd;oY_G}bs 6mWuE|5r۰lDDZ,y {qu vmiC]NO, }I\#^4r;~xh#Ǚm]Ӕ ƘG.o#5˨@[VSEe et[SY?&7LϜ}܄1?8|_m !Rb8&]~8OjȚ.O<͞[P>&&FLL!-JFH;-%b4S.lk%쨷 _;"rb>nx&nʘ~7O$Կ#`q4 /<֒3H=AU)mqmhJ"6TJɛ0>=SLnK PjKI#{bf9+XP/ ck{-|ܐ2Zkz'%zY϶ m,HY!+W.81_u!'jWbɛKS 2s+6: CPRH^L~wR9=0w#,Zkv)Ñ[l=\=Y^:IV$tqlC37t<@R6kUw`ٓ$_)VjA]fg~|:>'~~jtK!{^yP'ڴDBsV1YedWxaq_Bñ^`PL5C)^=!W谁-ui)B̽$ 481nTl F,Xb|$|j!yL|vja3bJ 9`m:@|.bГUi)ZSJ5g+] rdШYŋ–6@"D#{Zxr*~cEI`v߭=Pz*8p؝zo5;H%pDj!l,y7+WuIˆtQm$k E&s?9*5^scPB# P]=PCd wb }!IoSKSvJbj*̅-AgyR='?ӈ5]_]I+뱤eDOH&+A=cexDh6?eN^1 DK6x^we,?t ~wּ$o ͺs֧`oE p6PnyILc*0x&%҉IXE|25+'兑"wgBI}43sX.>VmAezSsΏXO-LBZ^lSiF е57\h^˘E{OX&j5{8ؕR83,lU\`'6#p&6.JcP57H$N).fc 9ͶJuT*͓^9Z[ *3 t"mCg/ O +U*Dhu !ZQ `JwɤwKK'ae 4!cV+{Hoe 46 \Vh= 3{bW/5 MxrɬּD#iъ'D05L9{}{ieXME~SȡsD2ۙj#.aoJZ+q>̒ =3BҨ%t9X*@h9C+̷T))EN;m87GpBKc/0\0,ʝETCbjÅwF-}JHjjy/LXEE4~ޜfU\p?&;)_d8mVXHF yI8XxN^L?/MNg셆Bg_A5a^q4H)x60H? R.}JTs :}vQ0?Ls7>\0qI`Ѥy8Y|iq0Es-H-E{s偐$_Qyy^%[nRf9'IF {eUP9T=!R2Q6ݣ =5Ab?Ք'r|^k>e3?`y?ۅfl;4L= 0bJ9 ԇ1 7.s*/)=mbCQ%/i\$O$(WS+ *?u1r^r A!CPXttOʴkU3^ʗ»m_7G|g1;*5"І1wkE>R{&u {Dy*}DMH:R/\nKEVaB_W;5 oǭ~(e4t* G&pl#R]qT|WZQO7=րO}& zvvz)!>v4yOe"/>#CSfg"Vp_3o\}WRa#V1EfDm$g Z`Eu`A٬|L0mS$xaLjaFP8%c|ώ}tQ4)Qu#q_.$r#`WB;#Lfn4*qȱ* H0v+C'QbrgdN6x-1%Y;iul;vQ)v9j?Cv`6,:: za$ܞD.&l?M7{ jbMNpg3-A**s gq^ϘB~L-p, (kQaۆ!Eu5龆#nSJWeØs&do+BLs=G>|)GԜ"UM^<9EdqL[x=bn~ 7mΞ=?ߪk{&zZ>X'Fාw2PYWVg2Sz ̖~@SJ<+CUHxf'h$ dSp{Nk&F"*ǂL5!!0]5f>lG4K[+L,Om7p/:sB?my?FU^6,rv2'+)z{]/B+DiyG-0Y[R,ML!P.& M#zǎ]`l(;03Xp]&fV8TgI9MsyS'B ۥ\>p*`FFw[Ҹj5%5޹͗6HO~/m- M ][h9@@ѕl(qj NkDsR*vɡ?~{OQL})zjHTU$>!Gߛ7a̸TIGCs=^_ޕ)y9x02)|_ WH8=a1n&/Qi~qIǪKuGxlЌ*^#hnOa_c(fXe LA=Y+8C=tboȋ(vI<#A]3Er/`ꬻok4H0)t˵u% [uhwd$0 U&Y(q4Güqw")QzAo(٩kOCGc ah l=?XU3c6~'#e$k @g#\XH?mu}s0R-G4S3b GS.8֡cB!@=Mp0N%E:C, /񉔷[w\ >/B-~2wRQݎ> '6i8z{$񆏪I; -9Weːq,vrJ[9I IZ?1e ^?4ږtT#HŠXinw7 Ic xP$ jns#ΐ3otcSRͅA6Hp47빱iI8ci) yg҈22A]{ǷH%i"tukcSaH^JW4 ]l4Iqb[Tlty:A/v0ܓMò wxDds|-5|0,(G-BDh(^~QЮ~x}֣q9 :3>EO>ծYn,cN2nfkwvdZ Rؘ3VHD5@, c4Rb76U9%+Xɏч/m9LTl!lE@Q2;eqEmϊ ȅ肣Vp<:%Lo%PcXHŒ`?3˦v] |wqq]Rݷ$-{~o:g9MRod2b#S,u=E$ԧKDnf UQv]Š獧\ "_C+NYɰ>?=Ϫ w;=@L&|Z(b-6Z;_6Kw\=w0Eg$պ!O)yϖJbKTз7иDGS1'CSVHsISdZ*dtW_Jȭyx=ikFe(#s>cBaTCMio-F c&"AKh+'gJ눩iF~M9Qg86{h٭W27kku+~Nc $- TğdܱIi*\`Z}A]^ 7o#?rF/'E#KI#ޫJ8Eܬ4€C~ @p@e_yL$Os̕^PDKŮ9HG7{} Dp27Pav<5hdO,R);:'ѣ2l: *"~cMFl7'\KZ9eUÏk8X_0IR! %/`9_S8rr71Pל]a0-paG7E >_=fԔvɾ)l")~L9Xk^{oq~:3ݹ:Mܾޑead-Cq;Rc˥ Dn/[3Ri%J _xq^[#I⇍GioǫL2f6}S1TB0 S{5hV/ڊՅSkhw,.>Jܿ(N1\yR/_,QRN>\9iXDW|[(`WmF*?luB3zU& oBvA#>uGeΎ;-L0{q;pͪ"qO# wE͕* Ho"У:c@xc&mqLjWM24 ~e 3q熃~VaEm#Cc~C'ry]#جwICq Ld 0HiTî0F ێM5TOF.}3MFys_|=:uWaWЁ2ib3Sg۩2S) 0-5hMxX4MC璖Y&y,  %#t{W4xPoo2nĚ#*C!*'dJ:船kf'`Qs[hfDP ʁ:_P!,:28yV O`[?sXK'lR)2-h$HDiF(1V!lenD£'l%9a1#>G{%TZ[W+糠VGc?fײe+ @T-ΞIWU1-fؼ11xcJ `9fF KRF$p$N*qF'O {(g\{ 2>3Lwumz0?+Hmq|nM\SC%~/&B=翁C숬PI)x+DG05%}s3+٦U`e{1:M \Qra%GUCxD (׍ysGHaE@Ȧ}(VQIV~-|AF(>v;h!8뤥P,9Wy`vi۶%KU{BLJ#b=룅10xlD\^,3\^ BAv'N{,$_R'J2~qd6@K1jhOXt⨡uTQJE9狮n*B جY5 wߍ[Új`zut:&EhfOY t':׈9q 2cspV̶jS\CykЗs̓+NPbP*nLj]%^g7DJ¨aIsW{I.^84Mj㉍#P#'2`߲ѽ|bRs8cg=^/ \>@9*{&E"U\_YշS>ja9@PVq ѣ "<5Wf_=*$-B=x0ցh3_uYc-cF߶$ 4T[cP(Aj˫]y+_c?Xu9uw#Go# ^DZӂ6,RDQ|c=KIn|"c3/Ӽ6 FY2ʒ`Bxb-(:KEIWKiW+1XyvQ 22ttc"͞Y޲}bN >[kD}SHV 9n 4Qj:*#r*<5'k5/p\Uٜ`XjN/;a"g?q*ЀDE[ ~Qci3)Cy2})4]"z9> 2v⼕obhquZ9M|KUک,;k/MtcYy5O|]-' ")6HWsؕ߰<v {1c,TnY)|GL S=:5puhkCb jzWe'ջ+SLokV\8|\~ZEb-s'"@w={Փ,SNᖓ%*<Cm{t!S2eSe4Ⱦ^^RJp#*[}yKcŧn`&H~YSi!0}=-v\% l^^M|1nq8!y.4ŘŽdK_s>77%JJEk. ?^L|X-e++W ΢&,O3c m^ZaT:~b$р02桚}Vљ5-^"8EqV%f:e no(Yz.o:BE)8xJ#bR:L:K:8vqd8T>D1494k\ 6,bX^ w)z)R xJ@8R;^:.a9]Œl%H?/߁@"fIɄ]AYR,ga¯V`Ԛ:i[##m ՒF;:ǢDS滨bY+YkI `Op{u>, /NAgO'pAُ@|'I$狎M? 9^b4 efilh y+D7RN8dɡ#"jxI}4 >*$'j l[%8ƆBsziq?|Ĥl:"26̰QT9. Js(#Yѱ,{{)_o\aK-=}eDd439( )~Ҧ/1N,D;@ @xŚ[bԍT&wh"V9GwY?}^ O]ߋj35Z oSnZy] IOw[Г\0+AwHTL-s:Vpl3" Mi;EC̄qQ&&=ckr\NŒc6D,UܝZo`}B@mٯ'^6ʒ!w^Q4˾O{0HT^p X\:*]#`+q6ŧup̞|WRPȟ# $TK!sLX dϸnIYJ+xjE ~*.v&C~5G< N^mO5@t4O8F'N^,qҷ ?>q$]A "D$9Ƨits9· Q=ybC#귣1tF|L|ol2RE+E_FxlĖnz6t hF 71i.Cql_ -vF~/~ZmM/o`H_WJå, w8T€G?';nn\?+]=''My ]sr}Z.l4cB,_ewOLBE_8wIMyYx&I8 +W O&sU6cAM, }`W[ϼ5T,+|ȜK.U&Jqn VK<.[UoMzOOj[,RƸjX P D@6 kHi'uc . ,KT֦ Qr;mP F :q%qU"K"%@w#QVK!{ȮQwa\ܢHqbed& ZH(ooKDX¬@fu:v؂zi"އ k_m-8_/` qZm&a.ЊfIǻ cǶ5 XtP~S7f } #'%1I/NQLI]J9Hw#.vbhԣ{1GKT~?^a,8~(TC;?)ؾA FY#MJǭ3W96 BY+^m]St67sYiS\%dKɼE4lD995y:?R9dxF=smRSW/ E9 YD P@J^]dr60]_.[I8ߎ ;13iK3,f-%?@[`Y Jh!AJln Y^h!ywSE5"9j!wx'{U%jAИF~N]ED?t$#0=^Uë~8k􁫌HY4 jAѥ3JN6@.Z4uDy#n*G {YȤFAb.8Ъu>/[F%Z&a31GIu&"8{Zj gI*/0(ٜgz&N8BR}:Zo70>L?m)5|fQobﶸpnZ)cLNl,_31=oUC{ɪPHp\'8\] 5s/ d+yCu%c/^#_6%6ܜ%#uM^~+z[7 KI0jp6*ݴv#l O9X2p.A+%z6/' -Fqvy !a#K3ehL>oLyh^yl~.65fQ̏j^jb|e~4NY龅93=uxj}#ev T+TbXQLqZL/9, r=!' 0R+(5 DxwOM2nU453da?7+ QIxf fH /-Z"-malrAZE>"EaNec2%z͙b3* wՏMiHw􍥠8s^߽BO5'KyiBUEqcIhmx?>hDmP ,l.ǜ2>$JUXnb)Kdw&wy(訰?lM9N&gF>ϑ_ 7=גW TA;z;+pp'lYD.k]ՠ fXnj(3~u:\1](G95d<ȸ iM Cw4{4Li6AL>?|<@|i1r/$?B} ї\Ξ6Ap6Ļ'7qّ@x}.QIAE)~\;qT-GΘïR^k㩊`gҡ̃=YwpftxVz^#7Zvڼy4︡X4(j>U,Ek/+Q8 ~svlof_zD2`;$ޚxDXX1"M{Z@}X_@usb'sō]#v]zQ̂9ED |x(rF5t^W  S&}\P0 VA=EaC]bI~.^^uqr!RMC$ x7}T2]ixHP`ysP b?߮.sK}Swo\FTdT,z!ʙ@UqHD&a[P?ސy9@%'=&G;`"MF(|.LT(4Uyfh W>6L$ϱ+X?o6/Hח72(ͯ‹J[wxbcHs<\fk,jwſGW@PqAjGx[ \ׯq:'A%&™_l eX,INA `D9BKϿK4w*hi Z*7E0OK1ƆtCt:w_WiPiDᾰw RߔfbՃ!lE}{oQR/qw>Q];"sQBv:<ʇϝOO Eٳ{,hQ$@<^]}nhH8°ֲxJD E?aNMBKvuĀCk ݿCw::E<ȩiEk]:fb&I렳hTtAL?`F-`M u{IȐ%[i5S(-).LG̊&YSɶO-v؏z7Tnr(|8l \ו ~Lr]|Ř+PZD1XsoTg{)vYT@І͔VK\ P؜qFp瀻<'3dt ys&U̝*n39#3uȱ( Ny¦+Ng ;% "X@%WMWֈtؠ~yM5[JU#n˙Խ8X> (c/\pd oP]e^ `u#ki uiࢸ%=@:&KK)D] t;OE(uJ$.5ĵF(#S7ssby L)+b L͹B;NLvZϗg$=EXOE3k*HQnU6Ts{mM)F9b+*?$ep#b'lC+C !1↍'hD0{vqD9w.GzK*9X}a(<\'y:.'$i@44(ք$߇fc^ۻ Wt%S..4qE2"߅_g[  ^4 LζAk?}<eGh mH@ 푨 WG#.Xpfzn39Ѻ7t= wg+u߯XtQ  zR-Io|UdBfszE+2.4S2le̎GcJӁ#-<ϢYE;=TiWާwu@ުBy3&a@:կۨikT/х%4,)_XC=9ŝ!ɪ6'v9װ`8 NhtrYSS/B#>[e袑RjTi@XR)ʕA#a[\m8[Bj1!(n8=Ϧ!b=x:ħʠGs>uw9i[R8E<D .+0FKW@Zz%[@r[Mjh_59H W¬gPܔ˫F9qN^8\s', Qf8-d$#f[^yVJrth$"nielN!Χy)MՋ]L? =ڟpAѺ;`MLW8N1cJmƽ ѨA 8I, ?Ɨ1[mx <þUhEW< g %hnm#0[WmDK@?ED/!AhnzI nr;Q~`L4m@q@`۞m\Ma֨G/f{Z0s5G,|VH (F]!fJ,TeRӡ;x. ~bpyuAY-#29*zb4ʯ:$+\_S;PFD ĴчE /Ҭ>8WiFG`e ίi\dkZ-{@NNT0wߺ% \7CBK@ŸJ_=zG(qP! @ 8f61PF;n %fۭG1S {I<+]_bvKqqKay2tylܦ*DM{AG[~5]?f Cl3LymzD4YLmjIs#~s^o-)&~DYuq'CjsT9y3ꩰD2)9R7W<ɕqn}0ݛ4~հh*]mxƒ !^$u;CJtZqmMKU𡱾71${5'l@.Kf*Hɠ`aIB#¡ؔޟR,j4}g9#KCZ/¬:Zv:vēw ^r 0 Z/$Z‚7զF>1BVO>; ȃ- 0Cqv99iQ-u$*EY2"Z2iۆuOswZ#[&;N w[[ ĭǒEAd4ϔ+L+s9A8}t= &i!.8Ćb=*N'm[r[~ߔ\U5U@)nE5ki.rZ.\/?w;VîQ5H'J[kqEP-pӋE_Г_*QQ1h+9k _FE0{̇UB|7T-#8p kx-Q_0A ZJ9T2M(+3|n>Ui8fU %CUDx7EO(y q#5P .3cC~&G<OJ<6TFX'zr>h(J?ID--yAQ|fWS)/P@pEZVHLﱿ:LpU τCNL]+ZfwPx Mm ,p+10իc/?Z-X2Ho6:rb$ӂ]Rc&?8h9oq*-X`ګo"\&8/ up"Bz,o+<:yr-5]{~p8 /((7eսA^%rA'ze2Zdp8ÊErŸMMzvI\f#^35vO7Gn0FYB;VY;OթB}J 4,Dr2R;JD-1'ȗ)3v;z#*4?۷aAj-+oMC@fN|Oxuy-\e~zpLmV/OacU׬xuY19PS 8[8Pw|UЇJ{jڒu0(Z}ƈ1qCf)F"܀Cf-#q4yL} b|MYOwYaZAkQ wK\7"{Pv{ŵw55h$c|?\ۧxR7 x]}z3ժfo=:/)te!m+ztI_S*8^"} әZehDpf3k"nݽ^ JhUb$ J bG^@?{13iQPR3LpjláݟVb t" 8ug`@vdCbza\Q_qhk{\bƮaw`ZIX7}C`.OTڡDn/W p.fx|crwTQ )l Fm^ŪZ%#Y>§Zu)$^WybI3r(3`y-k%$n|z;fxG6{ww;ʃ9/ -ozzd E˷N0a$zMj S$8jH<~"MV|Ʊ#\qXE&beFE5y0 n.g:J; ']ؓ(|QeJz=zs 6h/3NhgVfI|>:P'B$Qg8jehXv;X>%zmT;kۻ=53wjTŕʨ.@}%2 K1VE\YG<ӿt!r.-?0ĨbPsIM( 5ꮒ[̯@ o{W9N-zH-|fBs?@NNV=LEGDapkI}I~7fj$} &_?UČn?mu3R*J,cVZ3Lq] eήD1+!wD>69gMSKdZ]„WNIeK.()RwV zWǜ!xIxГ.y]f@k^ jfc'yN=kpNHg]oշ5 JDS'f0E\fxhKYQZHRV'f}x7L9/c+5+dVmפ-1m1,H@>ZWjUTC89ߟaat(h3O_ƞScq;*LoY6Vqtm~Wv0M@ `]ORI. ] * !*v֞71[r-&R/@м*@TgyKx0Hb 0}n˴W(`=Ưgah9Et<*?v4;6[ݷYR*^8;$`ߑjl*dXDl˼x")z^6jr#u=.mh8l9V>+J~ -S֟9*e$\O _w_G7x>tiĴ<|مMAr'"{\4#A,d _ᶔG\8Mo.Uɝz9}Gv֖$+_VDwZ-@J<'[Q3 ! *z#wl;&Y- iŕ3?uSQWsw`# ~6[X YyY׉)y.|x"I\>CJops*-WhH-^\,)l\d&D>'_lQ.,aV=?:k1h|AɨFٶ-L\7 >c4oz0D}*VϪXUӞw@;#^ j6E,ad\]Z#s\R O&@ ӞvqzrKE[hUb*!˕n7NDHA\޾0%[: jVه@ q !mYbْP6+ KNrtJe:贇-}+GQ2ӺF?sAe3g嫐w7U=͘.6+L@"\ F 25"0'A-,t2Փ%Bdݬe&ȧ|o޷k$ެBCAAAqS:?) : u ^rbBuXva7sM̫_j(֥dC ܩ؋rd  Yafj`r! AmZ6cELfz-眕 Uf?s\r|g;UlA%ci7v)DA`;l}'\6EϤPnCP㮣H€H͋?dd3(6 7=!ڰ*r ^S`L]@ygCuH,'hMRތQ~zkOv4;\y ~,_)Μd$,4ښ$OrY+Hs Ɉ6ޚ5k/=LM>ez3,x}7RHHٮ v]Nco$!Ћ:JW$DVLv}ttM,Xݸވ7; $<fޒQw~D)Y˞l0(rPb-\ɎGnޗ8i dCC~J\vWQpmo&$`sá^:;^{Zrr25;Q 4*bf*<挃u*aI>EVv%.Cq%Gm_uƊA}ˠX!.瓐;zAVꁟ=G{@nHU Oo^p)sOjc~qλF\jsb>=r%Tvk=t298N> w| I~!O:2($+^i^U+ F،KuMEσU_ƼRm6IÎMuaD~Tz%!STۘǴl%K4+g~u{&d_qZ1D^/SjDQ9.d[9PAgaw%}BW6!4Tv2=5UX4Ilkd|"TYъ}'՜/&Wf'ݣ5ބEP Rxq}9vOTB Da|c?Tn>q2K (x+K2kF(k"9kl58kDԝU}Ӗ}24{QRD(W,.;yi`s .H&ԛckI p-wBt8kB>|Qdx}j%,{&-!B:{6$!6&Tg@:uZ$|ڐtcJbn|ZH ?K 4/@rfzzV-x()fF k}<艄_ ^^佺叵!z8/gD}"DX:x>.DZKGsW DɈ؍)ĜdXIA]TS5]aj&uv7Vv φ{GlT86d-#. /ֿFIKUȍL=TL54A~hUE`ʓ-4n6:LYꃦfY\X+0K:T MWrxC/11mPmhlg}(z^G޵`es=tqL[=|x%T'?$TOKvo:UsH9؃AmWiW꩸ŷFZk˰ݵ;{2=⼹e[, uQw3,K8ب@:۱0/9lF)tn+\\E/}~s msxx" DsSKy.WOc4[w3=ᄚnz[^s^&+|Q & /*z+C;8 g,g`Wb3nzzjϽF*:iG`b=;jǡh2[9myI N*? ShK{A'qǵmAt %X2h< o<5uXbmH{{,))H1(Ty@z̺EO蟓M]Ҝ9nrN7J -SjlN1: _Emڑ Ck.#4%H^Hk2Cwٍ{"ǵ އC'|DU|n-vIyIl ?\Dmr?F7HGS \ZTǵ¥qIߢPmˊ^uZpA-G`" `2 fo2\[T[5?x{Y;y^ _dƬN!ĢvWu#Z#uoN_V^o 8-@6Bexx-w r B; _we#`Iv&*=t,~c AD+徑j|/ߛq<:E4H }rpgY5(>~c{ r)=;R桔Ap[S:0!TM*F qWݰE|@.CvK)YuVj͜~w<R^%zْ]2Yɥ6EV\79_`#vZJv4.ǻ zA^!u |L{٩H0W;l$Ys* %kNoG .3~f 6][ϵ5b#B2᪈PJPl( $FoUĻ(3(dxcG'67J5 XV^ -š`sC2BH7+ /ɹS`p]/ʏ>1^=2EXj /*,K };%Vt9ìtb ߂33PT(9MXT(`gm~-^Å-&FVѫ3N7? lqx':! w:LߣYH%)w.^*@mϬ$͌|@[njQPiL)7BL%X9?T *y1\,6@R*˓| 7{͵>[\w8̄괪#dUaGҋ' j[A\{6k 3O>W83_@c/H<[s`KA0+ }},+l}D< BVw1Cu1 vsW^0SDX ԷQ;+2W&r?fE}ڼN2{]o8Y¦v 4173V֐R #2mw +}CRZ.aEa/٨}D'U9"p7.*6H[QQs# 9ğAZ7Շy[4WTUf\ΖbҼ\D~J$3RT:ɳ˘'4bw5;ա-2uV=7TذwmF% s({ Sd+sjBOudOMֹ$5Z1:#ĦtZ c;|  Ĺ;KX\浖2 *:GEI7\'<&d\*Ԫr2V½_/oE)WY:¢М%KmӊzA N/n^ e' 8"!h!.f HcJmBBĉg:MmiB{iZ!xaBֱ{X6oغnJS,d`SvuP(}G%o#1ֵ҃z7 qZHLъW.ʆTQaXW+"LFx;jv8^UhX`"I.xr(@6.{*Xᗑ0&Å/&n=wI劻ZϺ6l x.iƙUA -a`_ 94VĂq۷Vdp.X9) # Ur< Vt,!)j'T=gUyXdS/, i;Az-[:uS)MвJo& AP䚯T3s^ Wz|H:}m_3cSZÁ^Hcb< d{ ķc8͒LT4SX^*G0-'?#2Mޢv̥; D7Xg+*OkUQ5][sד@Y&5Zh] 1{[4?+kԛf,}=0\UqNaEyv(^"[h xw­@ #e;EBCCΦ#Aobf pv;|Jn'sSSOu(7o`CS扵JDV2~Hk6ym[S!Ntw$7{T 8[(? qwt`\Q ;EÎ#+iB+{Oeafs疔~IV1̖_5@klj^@Xd2kdA~x`C]EA[Um`إՐV]D6[5EOhAT┮IwṚM !C٘pk.EkzAd*-_Bǽ am6ta{QQxRc^Nai5ăbM"@&+"|JmqYڵm5)K-A*Y6dl#Kr8dVΆz k ӏ 0VUb}e^} j` ¦^&Y=e* .7GθgG~&6ִFַ`!aP~ ԹI#b;)UK$m}#Gy>'MRe;H=8bQz^܄Ɠ8֦F\ˑǀ>bi48t aʟ?=&\7{aYʴ6&aGJY#u/b\Cq+9ZY Sy[(@ykV}VS`6FVeʫY& d?ͤ|_~ХGQ)m81Vo9'|!Kv?bg}5^mfQ*yFFw %UCD XE{#2T7vgRܐ86)>XĬf^*_cayana# s:ZR°%<:~hFjAWvck/9<#ZGDភ>zėV /2g FME?C6fd9L,B( QLTC/ipJ VMv̥էirUu \)Lů*R!kx $ 3&Lea7^{q9+9tn `Isdwt UUy$?U1p˙@iݬ)j>Z.-O~ȹ@Q6S3s3ۺ Mf2 D[T=똗r.l B \$"Ъ"%o(Qw+C'6i&O|hCE˺DwrP5OLF?wMi-Fz*CZ#;mS@~>o)g]4SC[#i2αc>9;+ʰ=]I1:122 g_vuWwʰqzZc̰oA:dO(5G{W_` ojm-]+_Ƣi a[!Q5?[&v=()#Pmj6tr=L]KGMPfY*) [/A7dE٢h~_&;o{{ ߝZ0뾑eRX§[Ajva%+~"DX,Ǔ ##-fGT>yȖH׺Ucy>7\},]flw;zCEFYxj&m..B牶eU@M9Y25ci[ozL7q2 JR1jHCu 0p@F90;y tB?ʩe U?}U}I`5,Uؤ|]6ag_1iy3G "Kqrf(րϛ!I)8fy_}ٿ95m^@NFHq2ƨ/,>˿XL]\ܲĊ<:luSTg׾@@suRVf]r˴e0[?t^6ӟD{`c)@ݭbsQҤz?3s,v20 Iyy7{`(ZI~*QЕ)APϡX l6R-"jWh2qәD\;tBMEbD'ϑ5r uq8|@U X,FQ>^Mn۩vq5N J/v!Z*X\בxHpzBLcKUF̩퀔bs^.~Kd: @HGج} 4 7U:1RIܞj <X*%oF]6 ։BVbDJ ɗԯr̈́MS-(e6Ř_Ir.q޻W1HQihy3vhnS  ^=[+%xc@X Hp#ca=ۡALE5Rp@E9JY5#kJi>Υ+nЉbD9deydsJJz-6_ĵ!uP)f x˅5Z;h$Mguc$d"4xRQ 嚱|@p ,w}xA 'i$',s+;5_2'_#.%XC9;;N>P]J9 vq3/V9=Q_ weZP+isų"lw'̔OXn>=x -i7+@'kH!"H ]Fv c|8ҍL[}9v{dB^ Z߻QlmW2FLH*ZY=3fz_R5NI{cU0ʾ>k%V} dcOWHÚ<ހgb[3Q]%9q4ɜ4B_!ەqch-:W[PW?DnK~||Ơ&g'J\ [Pq  E G.( QEn,TaCLT4zNB]+TF "7{SGNQ)|ڄȚP|/k|f&|A镹d)0\K2N}2+]MFy˴NI#=I9,_a\r$@L6I䝅?m4 g? /䙖WOCYEfDeF !88ƻl|^( !xǧO c4 (N1lyyuړ Cܘn hjWIBem[WXvbe}'~X͆$z~/O8sރ W8ČbMe񼘊sKd 2},,!h\bT ]x 7A bh3280 0mxy>&H{.fH0*%^8^>dnTAc 'Rݬ28 ko\:(qҴSUW??n_Q<;RV:Xj2Y(Ր#fsJVy].BkBk cF#v};jO%3[fE#B<KJ/ZHj!e%Aѯo ˌݣۜG!VW2/BMP0YWDTAoO&X#/ٌbY\;r Lj){i2^zdXdQl~~)fgûEdy8bzJϔ(WisoQW+it Tw >g5ƾcA1 bEූ/\plĒBCB#~'uc&ܞcmX5џ[edeT: O>o&W"uR@fnrȡhp0[`t2q>+^I ڻvT&ʐ4ev ZJ;n_DL+|2*3lwnҐ6AEU<um`KZW|DրjDi(X/Qc )6jKƺ@-ȨG[$DV!L n4ʓ={g"Xf-ZA2Eu?!u+NKDN?Tw~]dτr-7X*C~>_= q XU;myU$SݕVD'a×t3oD&ͽ$-V]b8/_)sƈI\4W&BiƀX.aZm`J̛&3_@n:c~|ܮO~\QU"n/d^ Xh ~ΗW Cr2\G,?M I.CYhzX~`K5_-;Aͯ @+&b^gfhD Qp #ysN(ꗓP$rcw6irbk7IFpH`aCFnn׾$4EFF\_9 >YHm%oT+%WDNKUeYg~J[慺~&~(.ͭ>HZglPht*Z$gS*5+R'NnP^Uv+Lp J(V1˺ H]\#?W V2y*0nCJx0ҕW@4x9gϦZ{Ҷ-\,jkT ِͦW$Rqs7C,`ˎWrGjXb̝>NI!,'bUU`i@8%( &X56`vۯvߝIQKi @OuF!= >ݩm&1[cme.ept m󈙡dMA9JpЖ (=^t*ƚǨQPU+? >|0+t<0=7_ pw2q\@K<>f^E5aꟉuR@ݒ bo!nK]ثydıOӳnnAviv>!) NOv ]NYD7>B&ZطW`NC-=@T[^kX*bnvq3ߏZYU5v5Ȉ Tp/ )Z%E'# *UF_V5EI*eVœw,A k_i&D\&eڡ29p;zyMA_<J-'2<@6+\5-tlS]tUj\2kڿ8 ,\A<EyZ=2k7u%YcIN2҂Cd;\[̷(ꋠ:P˸\{{EÓ?Ust̝O Z08;1 + %خXV_1Glҡ(5=pZ_SLmۑVmh*UdaܶW 3*n ?hmudm!E[ڃE2LQ:E 1gB}Oݳbu.~dՈ= Y۹5^+{<"&1v'LT8C'M{KWܹ&XC4ޓ,\û|<|!fȗrV MdY-6z-\iD'oT)aJJZ'sdD)wi,7soַ+(;ݴzatRlChӡ%^ժjP+'揫!ړU㎹0G 3 lэ55k1rX)UtÎ˹*4JP K8xXAܴ)e7$r3i䝹+f@VMIci1SH+UAΰ8E8B$eֿ:0'@[7\E}{X%2gѠ zS?.(љZp541rR' V췐_.8+G_bsU ^tYN% kQ̈́]s f徟{ofhݛ~W4۩&F:}X$|EaU<FEX&ԈC%mpa(*w @X> Ȉ[Q͇oX'-Qu_q}9ǤWۤMҨWw^} !V>DWu12q@ݎrf3Vku<ùAg  3 \ |;a?E$NJ6l w謎;f_x1(L'w:}ˢ& cwݯ,mUGo 妅S9Bfoh޻oPc |Osc296]WSm'Q.*ټKR۸6~OotT_պ?T+GTE(]{aR$/Et_}!"6w*rmtIs4땲?9+uMٺTD虇F֙Kn^[]G]?(ӗVtvy31EXJww. 3d"H&νtby4/[Aw\=Y=a2 V1n&X&@wjz nʞa`OQU8`-$HDJ]1[3nF}`5BSmRڻ–K|Y-Rw0a厂Q 45do~ʄP.A^qɣ𲐭}vyG-G8GyҦןȻ,O;e%iVe(;c&)&{r}q+l_MMLDi~i+.[`@Y뺯,¥YA u4V_$sZkÃgTC9YKĠلU$ ½`.՞En#WcJjmhğt{ѫW<֏;]BmOqZ fpr>?NjD1  ?Z9!ڜsa 4S&Ǐ\1= E% EJ('8ɬQ5ً` 2o֒FìNxuҭraĀaQu(#-RTiU`oD)rpИth9ƞzY,,o^aQH޴qjmԬ8 8MX}m4y XXDӍ6ص2j6V>w72qeᤝ<\r7x\ e h\>؄`Ǫ̙{Bcmc'ʆFff(o3sndy%mg6b~5g-J\3[VO<*j,_Fob`wS°rx#7ZJ fϥ$*d;(ygl(/rFSs[ k|XKdf&͋l jJUW?!~[܊ qdgiy;%ûtznYt,Bļ؇P 4++"QrɠRj0/:wWM'̀d Ž|=h<՝J (ԟ&ʏ^ PH@xGkbXl)/TnU1pG+ 4hHxoP44yqd(>%Ljd D:2?WIYGis_!ݧg'"svѴT3YsN4w@s&?؛po(M`' oТW:.-4~`b0S3wƃw)8R dt}r?فJݢz4V zF8)v49Z5!9( c.o+*\A k^H]cyjy`q~Mb1ΩRO.e>b ggR!.? +ӻM vKꅶl!X!Φ/brSTq:Wދ o,#Kw@y*3W/\Ëđk{3=%(-I2ϯvf'c5rKz,3}c#X@`O=Yg<\ 7>l YsG?/atPdӂH`'(I:_REJNk.i^N)?R_5:[KZՂN- ?Pu%9g ,l_0\h("zOsZ bB_Y3Lq$B:lkq@1hpai$V-r@WS?9pi*,L4 *ikhWbT22D8\d TLkn;(>NqZ{  l4pqO; RWQtTc]a6NӶŴ漣YX‡0LX"+]奕(2ch|h*_nOޘ(@>BFa?Z׆'+&{zBJw&~,/ϏumIUu9=ܴtZX-JIU6>,@/Fhʬ1p 73 G sT! m WhUՂ8 xs:YV׮Tlҍ .O_/zytRu 1JTxv<<Ul6%Ň˚Zpԟ#\BTP~dAni\iܸٟ%.Mc'8d7C '~K?Jo9=M#!AUU?ŮSzB@E8O :6JBiFTE9Bhri*tRV;pjX ӜKCcll>"`^gΰQ}d,O8eR4`AJ*S}e ij\PյÙG7_ *5g~P6[ՅaD,rN rڄ bmyHV"ӌ.ksլjq%lb 7E4F7a8 _MN4.*+ U\ψMAY'{o;R ';`"6z.ot/0Z?"A{db X",BrO'C.7X8e{I/D󿆺aWks3Bu %JKA?(?֎iJ ]ܛ?L ̿h59V+L|4 ' "J.bp.,󲀗 r> 9q:պTj!5eVsM!ԤW$wANK2r9cfn-)Ša½";( G{A1ްOAAbӽO&`浇b59 {&0 DXn/ye>x9.>Lv+S~xM[^lGk@N/T8hO-!0a4:vɳo 'EoDV 牞w<΋VH.&doE^s&>m%K' 6B fL&LPQh@mٟlX"Zn. ܭo".ʻ2S']j F1lDT,T#?/Oc8İW6N>H@c=/3J >~2{C"FlƲ ~^w 6sLh>f/7C_%7{јdx{7cF ++)0k麏_qԦOS -=qOt ܟ= >iKzf?8)[|x;䃻kӊZč_iALe(E/ wŮrT6m=Ѣ a %{ tx/UںzĔvJ] >P A< UqB/KH:%]aYĶnmgi yva+A! ::ѱy?RhN6bHӍi,+ XFGhw`Ag"7b!߃ >91AR) V!Vt+2 USNsk2S UpO.=/oC tOyԝ: }1q`4Ho8P Y+>Iߊ~J~<]J[D2<bՈ{E!Q| Jn4(,{MP#Cz&syIT9YI^˕ Oه0o֑:v9&_"닲揭7'ԡc`@ԺBfG;+f]si,w4R3[uKAcTڊgׁSܕz@pa)J q.#H`!Dbwπj v^ |XF SOjpa3.]efZA&V^kROJcո൙vCs{Ñ"`䑞DZ07"o^[/D B;SBي%|B(w1r5Ja,2qϛ@#KVq$Rwo0!X'h#ø%q Ksȳm!#_ a 9. }~}Y/<^Q5ʊ $Pٸgpˈ!<)lE|drxAu=-o=A=t,07Pß4nEoՃ{[Q q'haiŭ5i PBbn*=dC%苈,\O/X`pVAx`E> Bi1j|^bEH DU!EdII>_v'gd1_B{/~g+ؘWΛ3nB/ߞeIn2T[U94;#@\eQ [d 9c#!MfM [N&b@Z*9&`؊Aed`/l+4Z^ XQ`m{~q~JxXTXgeEuЦCԂo\椼^ >9X7Vrb\i:Jj ه&CQ Ci,i\x~a[o-o}5!.|"'1f80.=k:mw +KK D?(pKT(n@8 IF=MR brxHG`sOƥ_ZBO.I,Ivr9ܲnQXZ>{R~.hDB)'zM$|oaP yN!{jckv.s! wV3 C+2%_**E[?~>XhʨđBAw)EyHO@L9cTktlh"ɼ8~8%F4qrL ӱYW%rXG~v{F8Di#ۀ5Rj*Qnꢊ}ʍRtYƁ #ziCq`Z]q F}mT_64Yh\0CR|*5YoWVI>rQ+)z|{E_< _ וRNkwNc *m,:6La~M1{vz`(9IzK 6FH[oXUk 3K˰syB,[K*=հ r 4*2㺒WEItLM08g*) / ʠX@?eFߨNnw吵EErjR,#Jw>]k79ߺ,FN|rEzOb[},@Z'ytq8{ˊU@e|DDnw@\яW54~iH>hQĸ{4xV {nʢ\m |"lL&"wPq PqڲL;V\U7ApFs=tIHDQ9HyvT:] U& \P Ʒf8wrTXgws3GIX.( 'Z6r({<&X`"z~聯(2H "2zNU&7\+ @p"F:m"K6iZK{Zufn+л Iq?LzV4^C0/0KBXgo lyAUe.C(4˓ܓn cTFZ?2%3:YS<u?Κ=(0 hmDf_8sIXZ|Y"@E2&XaACr?e5DCCL TVW'Á8|x`-tH. .@uIFm1OK.LUtu./Eڭfƺ7BzFWQA"JïW..b.6,'a&ǽ,.)r(Uyx#xr6-whj *CCA[+rWWc8.G},WKԽ(mIÉC<%B,m$-]L8#XGiݘ5nd*Y|dHR}.|RaK]L ezG rHB_13E `Bo]F {TjʁB@Z1nRq4r3^;]968IaOilwڭ0 &C%#mbj% Hګ}07RnA Y&-HWfK ؅㛦tA8$pg٪'Wva P/3WDn{Iu*lo X֛$7~Sw7ԃ8s|sG*$'xQ:7ɸrgb["uk:a2Tw3/U/m,$I W&`>^ `X {OE !Tl¨a7s6/Iє +(0s\}zpPC"R/=llMi-dj 77E8ӥ2||iBNX%ּ ["lv.-~i >|tH9Oy|ZL"r۝ЂZJ8Fɱ{ï\P8`c\RwYZŜ by Wqs+B, Ʋ[mC0 'wy<=d`F}nq~V1rۑI/]p <'E rA@ԮqF<뎖'Hs0t,'{b3S,gH*}dWjjcv:t#'jcYSi9E+L,]ЀvȚg)X|H2Kk7ĞIEL7JV.OyuLn<<` }L:z]Q&Ξϒʿ @]vN+vG|B_k rR:Ҏ sz\tnY&l$Ⱥ^9̉f =$hy_h^h%&ڵ+BH|Y 3v"Ă.D 6sHQ>W";1d72TrqD2ɛ3)_tEtm*9SDA2;B$j 7Cf2HL)`']]UZz69~IpeB^72%.`|*|N)]E0GDV(/|EUELY[nz ";A&@h*W8I'K GG(8ϟ0y7?W&^/% au`u3t ɪc\c {>JL0ʣ؜iI"pdbw/sڲk"OT?{W4ܐ9D!{'24`*&kѿ1VlgH =l&!J?L.CZ^C%pOk[v 5өuzp(ѱƒZ~$~ٕ64͢tZa<K(qT8fA4pbTj`G5fl]WqAOD7*:WEO4jCh8S;T&X@i0d$kM0X'Ƅ'v¦LX$H~dҥ 0,J GЃ,hy8]γ,xsqo‰olט Vdg=ľHhI8rt,'iΕÎ^@E_\^M] ]ͭ3\%b|A`@T挞B1߭ 6kvݵEtJ#!nHC59♒'}U1&Zyufp1~>s_w;%˦M,L9 ͿsKT'- ={暹А݌AS ۅ> TNq'%I?6-י]2Ҩ"LcZRWS x~`hvJj&T'|9D\ϡÜq]L7A2O-Yf0*7HC5=m)]|*xB4OGy* .qe\ٗ,o4o 3](ܪnCJ -[GMT`Z la? k@!E`&9?$#rF5Ot"7:"KZM7Fo$q7٥.uA7 O؉f!7DIZ/BϺnV{'#XxŝGLVT_uTZ6,a;,v>g> ]^̹}&~wYpW|LhY n1wFs/Br+ |^ByΦ.bOb[aX `'掣?1%<S#R5ԥ5/h׃'M *U"Gcީ/\%ǰ?w(e5ずz_a^N"Կuf,lLMcmB|z%`~VԚ .6fgDWk>@ϝRL`NO#r x _5)J%08ъcN C}$J7ڑ}Djy,6efae#M8 9 ̈VU/Կ#Jԃ/0uDݳˁ V6Ȓ .T.ޜd'7G6id29Gkl7-.CB&+k* mkڃ1"#K3Ufgf*7sW$x( :CUTHg* H@*$9y?,Wh7]g@u=8~LK3,qi< )Ov?޲xXdIN=T0.hX{aIx 4(k?QU,Q#Y-]RFҋ#~#>o# zD:[QXp[e: `s0%a,IY1ǀ uӲ w1ɷcdȆ?YmeW|Dbvl[b99OjU ӑ4ëpsFK##pDC%  i~)!FTvܸD_r#@,2kLPt(_U`A ܿ P8^S]YfsӞ5mD!/&u:)HK∰u8GpMMjnͦxH4}"X`ҾNĂ.UUt\4vƘCS^\l [(kxz9wʂRru6Vc9R4k5zBAw7{c<^r⽈qQ\C4'Q^!a{|GQtvrAX&'i{)l}QuޘV\#U7\"Gd/A0ZWP-/U~*IQ;`<מ]jnt<= @rm(2+v0pVv`ALܙ/Qxf/y!2s1CI3b`4fQ₮\%-XE9G8PIRڷ/37~( ]{0=Cqs_{F0<GWc9U>8"1o>.lId' f؊/O0@gALG0f.ݓx4o9^@h&5PXTs]~kvްQ<I*%#ѷ{,g,0l=3y)9.7\b|*6|ʹ{kWq:ڿ.].eMyJ@j*fzZ~f֞{:Q=3 [nc h (3-vJ:#ZVȔKQi_)D37XO:cFq6 sn+ BcBoOO#h0|*rkmC;t_8W?>3x\עTZhN9ēePznm4S⓻GZ#hlGBTWIBDG] KQwwj?[Ѧr,Kw,:5nA z<X:B0-R3[1㡁ٗilux9W\Jl 6L )P'uit2 1ȝnzie[Fv ?d%Gsٞ74|YNO@lRu4Ӽ~)3Xpgʗb6?sb{@˺;BW7S aQT 3ǯi|F@6rv?&ګe=H9!Iйs~oa@N "N@dqŝ5E׵-ݥYKDٕ4^`ҩ[AG%upjrKk) R܅ "C@ x`GA<7:@?GŔbag ]`jQl).>AM,io5P& =JnBk9" $8;Ƚ|24Z7c*.q"0бo/c4K]-J`81hd:*A%B}%*#X*'R6y<(rAw޴?+QQdИ|l;^8oph^oxT3–z՘ ]Y2O剚o$LY8O6dX'v,t$WbM](z`5!ZvN'g-S)7ZlI  J0<I"@eSKiE>|ݏwŒAQ.@jG3n&DhȞc:cjQ򸸮tfؓXk-\ow0ٹ]L1wf"0CLE&Hޔ(%_q/_ |oKqy'=i#3i1NE|#ȼp*$ŧܪ*0&u.<%u7 B >Ƙ^cE3t6na< F&j؁](8x;֡b8ƛZCj<kG:)w{6(O]:lbOyRL8Q~I<"/z.~b(|@"t pPmTsQUʂȣČ!ZD_G9os$A]6&qu b%ݙ 0*SM=0lZ6< ; m{ A̳zhA7]ybr_g3"|.U93S=eN!R]<1$z\t붽`)s&wF8I2DgE,vai#p.dte(zNaPR0j~ 9` ݎ|VI [`zl&!|ϗMs+> 1 ,!g:/gD.sBp((٢R:(m^5ݗ׬e},sh0A~^JqNHUq6?Fpar3Ts?%lR; ,![=@y>XE/]=kg/3w!b= 5]A*;uڽ7 绦7S9g/\8 %_]]",>U@[F׋N*@wx5Km&pcʶMUخn76Ucx 5.CDkĴէM߃ !-xUR>/+Q|h]vQT40'QiknO~rdSDYx_g ˬc[-l{ˉT.4ӑ/*'!DҔ}-~m6hGބ扗}k}͗/pS:Pv&tW]bTmVZSӒcwn"tr8S2ވr^3MSgEl0"C)IKz? jE10퇝5CDڷW)WqR0!nIlwؾ_2kڬt0 ߖ[sE]n?l?X)`|75lfMT{2HPar ]d -^Ҝ6Xv|^gMJjbԅdM+ku<2ꠗ[@dmOk"I)$,mg0uG+`uLn~f[Xش1ʼnLuO;oYG``z$d 9T9Ml?d}Kfd(c߇@!Pz ]Z’ [Zi=K'P)ٷ@j 'D ".lҴ^[Pbc鶴ȕz\1F㜣dm;xRτ|I*3ȩAƞԏnUoHi%ucs0xuKwVt i 㬍w{[6MZR%?:E]f%Jc@FznnFi]@Q`SPņ'WlƒxfĸM_2Km>J6t2"7 IZY_R)nU:hXQ#{8qNj['A\=m'6*.2| pUX,ok.:)9CS6g>lZR:ۜ##>-8Vx S˲Wx =J-15&ziQghqz j R?ilm7)~{wLgh->5έlGL"n7?t{- T H@̭x-{ɳ9 +RObxʍ9c.Hvl.l;!(bm+êLc;nij Yfi[h @Nm)OR.)Jjp)ăy%:jV?V{/h5hjR;tBq1d蘁{FhuY%&^%=o偖EHH ET]ew| G57Qz!3ƺ5nr5Ԫ 9onrwB놮d^j2]=O^̅g\Ҽ?Mnw@g0}d6ԼGǏBVqiDI/cZ6`ڿFbGÈ#Wk.΢@)^וĚGs9Cc{QB_\NkU=\{Lz% D}{RRz!0S#C1=mNYXꯁ"묒H4vKl2g9 %NkHkY`k :s&{,v[I$94X\T1i9X m( 2cJԤ~!cU[085]cqVб>RfDVu*KWŤ3ƗnuYirB^&D[xTP`N=)T\k0-S˯ahwd5l盿S5t:T,:[0+ siЫ,"5P`g'K._tC"͚p/pZBb ëpON.32e뫄ڃWȃ9V#siђh>_Y*CzLl26G2Ԍ(B&Tgk#~&/jP?r<$4z7KxMKQ=م z?Q 2WW(`oh} ϮMs)XrP3~S\6Cq$QY4e 0WQ"=I|!#HQ7^2.eRT'w\ ` _!:"_X>$6tH(cH}ȴO5anLo'ݴ R1oL  q_\!YwV4o'/yfRd nUTB=ukI]A;rJUk&d+vjlțf%D0MAPAIq ^)}PcF3 ?5ޓ4C#R@Q}'`t]CC G{գa-u=F҂ SKRF|8pD\C${))s#K?Q} [ԍm[R@`|"} 1"SoǡHT`!*qUZ;9 x'AZf `cqֲ,yQf ҧ^݂̗۲Q~~`6?=;Js " "32M e/US|&t_2y%u߈ysOE3Cub'b#0IbvZe&kO16B43 Gohm%\5 6.1;F xWVCk+xqf}]\ ß]%?6P]LY =bj2EsFM_V'ְPpEseґ[md#x̚,kס⭀,u[A;/IF'M2m*`;*O*+laW;-Fؤ#)-Izw)']lh,%dq,;W2UY0Ȼ75L xD8B2OHz}+~%/I.|^$C-p2uc$:}W&M'hkeiK-M!Jaܹz}h*uJ}`PJ.|X$pgn5RlZ>FDd Ehn4đ`\W%~Jd>.e2">H(r}v<>1ѯk٦.nӊ+0>vZe"ťe52/7;pD!_:<<;7$^:ӹB|M"]x|=DAUrӲ(iRUL_ >0y|*U:\k z?e_r=MĄLSwWCt 4fmC熢nIbrevCw*yf8 ұB5et,Fۿln1֘Y $wdI47 <4H3D%P\~HArЫ']Aϩ[;xZL1yb}sK |'v֓?Dem#&64ʵG"bE^ .ҳp/.SdۖTD4eN<{E`!ݶ&jb[]pL2>R X<%G]h7S(#Ę|&x6!$RbpeKzOfez -{,- PS$imR=%H`U`lk0JSSdc~oyeB`wjInIe(q ;]('G Ah=K=uyxy"<%(3f(Sm%qj2I#* 0^9saw6Jp0҄A뫨dF]>3e.'\IQx@zSmI;8NT̽ȵ3Xx-Le(_6Ϙ1>́` I8kڋ ~( ٕ(0 ҌEE11{,>3qє';r 8 xfADb;)mK]KK/4Qխȍ_2"IߩFCH`1X-x7K&|"J! HŊd|Ⲡ{5:`9Pp+%sRH=yud?`'L59r8ۜф3У{Y@j ,|U*F`e~T<J>$?gWd8$6DO]|la=}f9"R'8AIAԯ(K:Xrz"NoaXI3TdqC2A~cdz-&#$5+,VָPtg,> aUY8{:/ε7o}3eu6 )y~^84:#J^!& 9M~T 3DY/-@=Ò`I.MDa]]Oo~o972s VW5\7+N1dRR;Hm+vDKu t ΐ:b*Sh:šYG<|w1^`9>9"GRF =uCF Y^]_O;voU3pX yLwG h醋.D$ x>FK.+OpR [ҼU[KⅪ/O;n, .5s_j$m 1.K% ͭZȂA}q5_?+IK݂:["OPؖ_x0~`!-z8餴8 Zڹ/,s >q2Fl?sTUz/l<[ 3 /- Tu/LvǻZ۴YJT?Bi!Z -WCD8k-R 8?,:VDK1G.!Pe,M_}'̞& w!m{adinR"(6[Ի[rdž= ]2]4_-*^nA)_#Mh =ା~qYz:&My+9=>"CczĴA j4b8clQߐP`XP D<;EU22t* !#Q! (6鎅{hx|f A1zwBl+'-SZ-Na]^Ur]?I ӔrR˕rۖrIAyTʤװT߻%$h /ؿgVoڲ_s!bp'= xNwmܐ'ʣ3dPtLOQ)%IQ@3 uYKdL, Poz4#{wxɒ@RzE')KQM0Y䶰G3O{ͥk+ jkJ.b3sQŊ3 (Zm_3S_db9ݢuAF YǩP^Э6N3Ko'0P=niV@َyG c~1g+f y NFU *n G]k)eLD.]3 hdxk~R< z$"|.RïH i#!OaFV1'{+#Jd0 RYT2uıE S4w&!Su5[-O lKœmiAp9L[~%!"p4P n#L`6(~e'"ʪ0M I(xt-ǽD>_+8-15q@ 3 ay@[<~7uؠ+%i'G9cz!z/$E#K1w kvij>Cfxs^Fk`s4u:™ aLwo({ yt+-Yȼ"޲MYMME4;l{YL{{0>$ ,HtoO\{P;41Mg ȡ߈e㺬"Z[0N]n7Pp t)vͫUzqmz |<9wid~6ydwib~fxRY#>F<*\YB Fw2}c e[ȼ0)=ԟZȄI֟) #-OXy*X$g.4]2'oƑ$]JWxsA { TwWMkWFsoo`\,/[1$׮5k7B<ՃK$@U>!fbS;?LV4X8 =/* wڰ0͈1I1_An9;u'dar Ji6 Q8{`o*[:}=?W xVݙҸ|*-P1dH:힣+/n1o@A]QhM-ǯBao"{PS/}ݟZ9]8 =R5 oP{/둻D"V<*QȢn&N ْ *3pw+ZfFjjR5]&>B >C73ќu uzȼCܜbcLj%['`qXA,:h~(zzf;nT3D$P @)A֫e`,8Pd?ɴPdzk2qL͝<wPn!%*' Kbazz˹|9=ٚ=2 [[sedoRcUڕ.{mC~eY֞&n :p!q~DJQqzl ߟo;/a&uMt^qA ω?|D f㧩a{ _0 Ժ!]EAjo@(]|ߗBl HV1B Ȯ^9X ʼnh=Z&_QBDH1ga;덪;y[~jWi TivRHt}ԯL̔;_YP A&׎r"pp̅0!S- ҩ_ҳ:hg% V];BcFE&{ג'Z,Լ %=̕ZHze>T9h^ GH͏i:F8QsCqQ<w" Y4ѫer Œv܊F"D2 [ --8v;{7{EÅXT9]3XɧKͫU?9 $u|Z33Q6vZʊF~eQ ճYsFԿ2"|`FUt3 A`? n/CI%L7KzĹ70 OWF?]mE3fr~5T~z3)nϫȳMQlk'xXSV+l~=sSna 7Ob_Ss=+)H c-:nG]婜 s,Y"]5޾q[z;VD? T:O8TEu|в,Gttg RoX1$P~:y34UTU~-k8Ŝ[je{sa?W$+ߌt2oVX(=fwEqZoGbRe&2 ԼfcbgʓG%HESBX@]3ۅʳ_bH"C#N0ˑ k @1!hC$&oskq#r;7LnmL|Fىui0Lu.WmTkW)zĽfsRA΁nHiNY8xi l.Xn$`¾r~|yV[pRܭ>398n\Z?&oYp/o;ic{d(B;ONnCIeN)ؼkd[[ Aa!k%#:')|k~]{{1Ʀ[ƫx{5;t^&j0)6iܪ^ׄwʎsKô#0GJ|UvH8w@PDWZ£qC&^1"__+xF8QpD@.@ea6a v(jϴ?te311WnUT:s1b0/э! *,3c9/2.]BS=ICa):.BfOGO&xj&94Q}j+ϸ'S+v)? E XKHdGeQ8E6hxݭ мq$@#UhCY. T'pohԙUu=?ehz4K, CA)q k=Jq %ՖC]jeFRO;->Uf }37uGg%vv%2JrzhQ5Aş& Ǔ]jne0E2: CƄѝ'h`chF> Ɯ.R'bBahTVS2Ջ?sήW;+,w mcsPĤc0₪rURnPTW](f*n6#17GFݓ)ٶV7؀RW\4ҌhVe#+9ٟD \r]X\މnKUE@1`uCUG@bo6T-!\-ɰr:1ap$٧<$351Pv;|7*L,n$^9 6&=7MзtmnJ/|zN\gf{CJsw:֋V¶pܷd4/G TW wxB0TKvHN%27lt!Wb~=c 0NZ\+zP~cQ +T=8c<2R >)$a&&PQ:ja,L5hfeE;DoNW+ꌦ@8p62rP2ɼ%vЀ{{)cW8ܗཁ١3hX*./45sG TC^dTɋD& ?.\Dp(r{3씻Y,pk,ѨK>IxJF!qYX\L,3IX {1Eh?EL *NK/g= ||iH$ZJq& Ҥ6&!;s90 ¯D"o,fBɤ3&i0`H,j6l+?4 zh\5>l! 1!͋ GGxa>3\lO0D/$þՊ eKw*Et!&Lu,4;C>J@>`[=>уFr:8J1Ԧ򶸡WpQp{.%?NJ~EMíTX̬M}H! *ǒ!Xv }ed>ioZ~(,t Q`raomf@YdvP'*"IgSF(O@~T BJZsSJ*+I/:" Nq)IGcG%5/Hfs^kq|{{uAf:+_~9t;zۍkRr: <nwgy_Oa2*8͠t,LI,6#'Ogr%x\`'=bN71lɰ7MX$UDyI%$Zk_x 3!M k^Bi|9f,/Z7OHUHI`NJE ~>P^ ;W1pY)Q?znTŬQ&3:Z,woʷ4ߛ5u jq--eBز\p MX> ޕp>ys}_A qdǾrK~>gAc|‘oZ4a/_{n v5? -/M*~ȿfDvlWY*ߥ~FƏضŒej!̩fJ- 2 {0uQ4Bnya|30@4V㡾:͍b-@lCV倄Jx+.愳SA5,)z.R7U~Lhā=`q1J/8H卓hn.ĈkC̑wM|j6e^:nZ63Q޲ 2 !ϵz\\&z,ɃNRMoPVR-qQJ ؖF]'7mURVBR%[L `ԁ~lRD3}jZxއ^FDp:BģP<'´FLv>y]DԮSRo|7 2bTc6 ?'iDAw6>:][*;3+Wy'DW#$ Ϳn=ϭUO~L&IFĶ4TCS s*6bq|:ۊ  P'}E[=M:Z?ӻu JVhQ+Iv250b^89 /TUA 8VJ"9}Z#,~奰܅|Ks3*+0 tO-/9ݞ fYu+k͚tLFd ױtG`8eȲAp=;zJb@.zo(x l Ɲ5Nk)KAFwJaxoԼ%F @.zJw<1Fꑒ+ߡ{@ 6P]i^܎;)o )5B!{-sm $+>`iSQOɃ  (a6RuR` |u>"_[G2~b6Β;0w|:Isgu?UD` v܂IlYUka/#xPZ`L+$ܣ3⹥ꂮr48Έ F"_)FYZlHN#?=n0'|AMbLl+:dȾ0> &k=ɚ'e @& Y`P60^&x-w w K*JFk$[,$XD(Q.v2cx<2i'Bgwl A_p{Dd\IYZvKRsqGٙ}5[ UI&&k}X6Zk.]O qsVbN[1hhv#F ^!Daҝ9/Q 7n9xjrmѸZ]bPf|`X>Ýf@/3[+\MwcG;eFzy" b[63:^t KSKo{ހrvYw3f"ǯcqB 5U2Ke6*2P1.lGPI:VWSa=dbΜ0bpYa9Ojͧt 1`qKn唑sv,qA NWܣh&=oߪk%G7[CS&qsʎ+@Hj81:Kx)R* Zi'}jkMcj9"f9X"lԜ1Q9ޔvx*#{;3kZC>J3Vƪlmhvg!"J0M<^x%l0O1iS:dZxy!㿨U+Z\NqSim5lJ; GLĂ (Xl.L4bԉ~$/& 3pu_AբaR'DZVclYoW2h]'ㇲ9za𴭔;ȋzm~b4@ܞ') CP$.Nio EFf# Oq*--CN-zI͹DAFyO}W|; I){=eAbc E(STPpě,lxLb$k D]KyG5~k=qn8 OZu'!}ƃO- Ifvu|Onm5ːBՓ2yFθ8ZV͂+ 0 ;ܤm{.pAu` T'T۩|:zfJtk-w j5JpJVҸ5 PI-Ig9Ai H e'Ft/ӋG.r~<89M>5?V-QyYb!NIX6Ѵp#󿁣Um$GLn{x).s Mg"=/Fu@saf:YZP|u[m\ {g $]{͊m8؃%# 7Yq@Z 6Yiz8u/&ϲN/]uX-Gb%T붐/.%@P>, _ztk앮hJ6Uc}7>^S .V`ZdJ0̙e. _jzM<;7_waE3;W A=6l:6v6u*:E4ߙ58T&#!Anl|Ŗ-_ |Y6Tnh{b +ۻNXҠ|l ’ajOncVGkIB@w4Y]<]"7Ptgj\:aa^`TivMٛ@C7&FXD{K!X(DmZx$ʤ;joia j}0%7PA|v|!j7c5 N%Hy Y I_ۤ `:@H~^Fj[,7ZqrS„?ArSgl=5W"d`ilqޣv{ivדk}ΞmTQo @A5N{L){gDp*=fOoԪ2Q7rH5reLPyn@~&GzCzDmDuq[ /&[ hE?`\".Cͫ,*F/_%g9.6>FmWJ3DT)4 e.ۖˊ,^Y䰷A@cDgy.)ej`5PGЅ:`ǪJ\l(7g{Ś~5z'0]R{TAe5247=P|anyf- ,WQ0Iw,k & %'К͜%HuA!W8<|'̀lHXjFX#-lbݳ29/)ꕱY1s-+F yQzaCm[;d23Z4JT˲Ct ~Jl1w!7膪i bbx=NBGq9洼~,)RG_67܇˲sRؔ| ѹ60,ؽˈ:*ҫoWьSs*Ci*+>\%b<x*%"[ݦ/s앿Yl}Ѥ#fuVBKwFnTϩ&R=ޯ\\>K3{ brIŃ8WOUq)t/(`zj/!LkЅtMP<]e9FJ+A)?4`$b3b/U amZv ,CF\7Dy\╪30FFd^ЊFo1@2vx[sKt뱒A -'D#C֊x& K &2ctwwZaZ6G  VSdqzf 7.!>Pl|3 } ?[󊧺_տ"" 0>wR˜kg fB\Dʡ6r EhDtӃL}h܊+}0R:VFcuR颪rӤ3}= Fb < iin"{%)XDs9H[+c!M+oGpfBDhbV䉑(.j~I+r`&WQS. yD%$x[~"qeڵzUZ.|[tXU/[8XVp&5P0.^~i/?Cl}!⋊Joccy]'lޞIX 9nꮈ(X\f# Yl dkzd"rqVRtaI&VUڻB@7Aޓ$xu EwYJ{+/atX8HP6K%2ܲ&;'nMT@_ ijF4c*IӔg cIꃿ_F_ K'˶_pckR8> ;f5Q4^Jo j$|z$sֲ! TIeqcZT;i &K ߯> 4č3NF)< Z^BCR èTM]69ae3̽u2ϪE&o6L%;pldFPl -d w״rD"-$p|qguQ mEEK؇lH<)`e~h!n̵yWB跞'mvHFHqp{Rr-!yP .6\3ܙOQ>Z85JBP: e`Hm tt \p:+MG"TDϢH:>OdѾ̳)@f|!6mMlpM˧rXu+7Yxk??힙@[u!Ue<ng[l\nLͱzĹ/ "^r#e. lZ&!R}UӨ6;6;R]`?ToL"CTHA8Չ5$8ԅNQk{^MAjZN`Tnͅ\8DbUR7[4`f f O^!i&/ZꥫS=ƑQ!7v|AeO5 $,Q8 oG ̉7#ss$I\n|9>;\g/]5:螩Aܜ)RzIsʅRYitFGwp+5_`Mb )VG !Ց^"߬Y pL[֏̋9K{'Xë3"-k|ƕ}+ejz)pc IF', R/Z'Jz|0*Y!~ Ev{ )2%* ۣ&qJ=itE:.9z +hJ`LDHCJ z"fr&|pcD]xyp>m~Yb#tY ].$걐2 UH(82ٿcdMJ.&ғNTm-Z"3ʃ'+ֱQ4VƒGMm޸(yR}*O-!^fn+KIR-t㪓(M~j7\qK"4Xx9Y$I-0AЊwl6љ2/]A֢}"7xE/xO]( k>@/~يh&f~Y,FeYUR=VaPPM9'\x8iC"B\BB{(p0UhE I,ݤ`g .Djy{!L 9jD6Yǒ:[\"'>\Jb/IKSD'6yd)9JPZfl7/<;h}2p˯ (c@h1j}Č9LwWvalft96gњ۝?sg%ςZKeU!gޏdQ1+ @BI6BB-,uDJE':6¸@:LC Ȧ6nX_g^ BIoH:0]y"8O#Wǧ^v5: +D0|nL0O߯ul;z團x'$nl4ƿ|r({ٕn˫S;gPf&; n*]fӭ󡧬n,|1u˾[T'vf]?]a3F0#>uOmxb/!Q-w f≕t\]31ydw-23pb9^W U__$ĒکFa8IhC/r\>(_Ie&v/<*F]RZf NsSH?=R΋D7,^SV,'ǡ, ;Q>ˁhMv!7 k+ Atr|eiX)û?OUWiS!ku0Q5DjoZ&)>-\0CDx'}V\R$ Zř8QDgs0a-ۺyߟH[늦3?cڐ5/ 7:N:#6Kw %j4PT?RT LO^EaɡO3T*(F*&BR@([n-0+ ob@}۪;@%0>fFI 6yleu$j|۽Z5GB7 ~6 scUl6Wx*I(~Ba?@qpH|qY0(P~i3ڲ_|̇5(SPVh R 0tJS3LЋqh)(͓}dA0l#ϥj:jl,l*r¦('OL-_vtY3ƫ 6m; RMh9nLrAB#O +O$v)Vz? ¸6b\^ \lM>C XKuk)|]IEF~Y~#?;[n% JR*qQ8:mļ{!b 8eh5Dn:3) Dv:QK"M}&lݴl,9KX /b'pH~["I[pMxmVj(LĢǖZ* :DfA#tl\CWIZ{[8Bϥ3g_K烅i _'D3 d @+aH iSN4lm;zM%Vb6Ǽa^c ݩ|wkl#8y9!f¡oT"]wEP[YpyEc5ALޗ^c`OkK"pzZtN]]UruZ@zlO@_muSVYv09)>GUܨ8#PWGgDELx%]NXgLڹ9킢ه|ʝIS+{ BeQ7(e4c/ |BO)#Å޸CQ`s {`ҤD'3҆kk˰6  $=Z7 f'~ /6xPf#;ެ:%F`/;pi~b+ݺuZL61 ׃Ω5xpA|u E5 <={Ѵ"q6 ~H DS( ^s;RT՛'^G.b u/&qA!i^UIPdઃB0kfŐ{N=TyH }Љdy?Qp(Srl:SH$`xNJBѶyLqQScr>A0tĜTxcaJvnhhQpJh2rn:gax +|NFɶD{ט#OGʓXb6sp`ʾe֍oܫN{̰3 uy2{o<#~snFKpR^X% AډqU tRGUC8o{EL* ܘ kÖj`88{܅F])ˤtԏyݕgZ.V+'9= 9 Tn) l N" 4O|n & SKoWbAz`4&ȉƮE #i_j -S%z[5i]"dD V#ɿo`=6],È Z5Зg ෝc!33+Q q eW\- {ެr2>DPxHj1"NA'ʺ,)}JT^]_[ؘL!{3dsĉ\#߳ѢXܭ7i|oGB`_i"@ <{b?=2w;Yxۘ^ǹ vhch .~,e.'Wp 7" o8[Jh?<K+Aڼ)NjK:YBkyH-L"hpu,&K&M$hFԇtbRjx4t*1#~d-v/k@ʢ,Q.3gx=:aUv8T^8kv+iX,Y.Jߞҡw"=tkRNぽ\HB@`fl-ҞL|l(G.Bq^L}a*~?m_?nU-U=׋m-v0{ܷН1(28 b0emL-$Nq8d^ac 5cB)4ߑnGg0%w}clw1;=$y \,ʆEQ6Z/,UO#G_!3_iu/gy1jM%o+z`$EDga~{п/ M>FtQk`U۪Qt_D٪79<;Z=Pr~~^P6F0+Ԍ$g[p?x X(&{ .H2-ǨHji>rD%[XQoG9\+E6uws0 ^|bqcByTD9 IxMdRHKa~8ikg/mĶ~Jʑd>OAFHT;bJ[2,3Ë LJA C/x<lmXMjν9xJic9gsLlRMKm̠SLiL"LwcJ> K[? |윧YN+S*·$<urv hHST7T7 v^!bI{/[K|Ռ&䦡ro)!n`(nPn ߿81j_A2Eimڭ#ͻמ?Ll w}t>SZgyU۔ 4 * @|Cv쭶I+mi|`@䏥Yj{myZt6"'߉h ڕ^ C.8$B'чhMm \0 4RVG^\4Lp*hb=φ|pX^X/hmXv7+ ӜJ{"1°aC}7ٗ:RfUG4_r_)Ώ!r b$xHª=(')Z7a]*M(gYxR3=Q[8Ecd,oiW~ܮ-Ie<3Z<7 ըu5jv.#C ׾vTdʐgcc?>^]!,^d1UwGGtn5w2lGd;!p Iޱ1.Ai K2uhٕHp1+]X^Aardg5OxdHL"ak葝tO F[Z/t; ݠQ#*% q,=vtl.B ImATp@ŵw;b8||]8b{9t/~T`=Aәê# JrV{k8xΤgd 8w[QWShHD5FՊ!uk `+XTn_} * &Cy#ΦaK\Ҟ OT;wh!fmOxҭ*缊+d5y̪Dsڏ-z472#<CXqqP59 ˜ÚfÉ\" ܢhJ)ߕ^^7>ƢdyOUp>G 5̖^Ie *hX;{$eº0?AF+';/ :̫s$>V*ai8P=XK .M,OxEH30],$8!-U;mbno!Jue1vT EWz# -1ОsHo \'oQafS<v F>1MmqOyDvT>0( 8dn{97-|B??O9"S9*L?ɛYLVL.!Be0&v񰧋@> = ]Ƹ4"dB5HiN ALUKp}B!{%Gh%%kMQȲ&\o [/J15#t>uDSXL?vk#<9vd1 XWU^m&G:}^;Lk=P# UJ3t?RuC'5T$rE4!^Ax%JBsЀ*$ ɱfir_"sVw~6l|sg9[nw.A %rfƇ |A r!6S⏿5Cv،H.2C7G(ؚYcƍRiuӣ%Ш>H -+} NiP]O )6`OB{3ًwC5/1H^D: qׇ4eeF0fJb i {8-p. /8$A/])sIP!qwɍk\]R^_zi d$E~ pܕzq1S%)s< CN]26|> ЏM1B(E/f%.,)ȗF֭]YHn')+k\Q֔[bx*:K]|&sGmw,%A)>8 E"ϐXSzDg-? = 螞IAȷcyHP,+B혗2{VUVAiRp Bѵ GFD@}F֢AF!JW[D٫V} ʿ!d5嫕ʳ<:/VO@0+v1pNw& Z3FT.U49k T?PSi}&P')Zd3Yrej lƣ ʏ*)dÅ3RniI*Ţۘh XU*u[[Jhp"ЙSKCLn1qL)ѐ篎~(KeX}YώYͼ=7Q!8g!SM ]1Lߊ'R#- y#[*l/ gL (iS$ȼ]cPoC˃NEv$u\S,~m;yLnhv)nwϞc|DXOk8XjX7 V{i!(CfEC6H2hLFs]%'02/J鉺O^&|`}s)lb)~U1MuWd>&K5 B.VM)2ddV$ZI1GrʠLnnAE.GBl7w<gG,Lj6U{p+v"EuGI3 `}xu=E V뒹]:I GΰqDt՗W!]}G}D. ;}#cw'6WnLeBx:"ĥs :5 ˜lyRE̾uy3,B <ƃK4XƭfŶO1=-2g6t1n Yvяoɵ$칄 hS hF~J ߃q9>,۬+C /ynwP d(DŽVϊJM.5rrc+’!#xg*,zgo/Ըr{*=C=f>T71KCV<,K7 l'=)_Bnʾ>|Z5,hrNA,ѵB~^L`B ;{#W㯬EmAOZU=iZD'I`6}YɶKol2t'gi?ҠmO~@z. buRxRJh/C+0хxG 7A#1,Xt]-),bґG?O3H>3m7-K)Dfս"a dW`~_`K..x;"< wS342Aeukm5tyBs{ooA9f޻Bc HvYKgc;m Q:& *74~X6 hy]t{nŵnM*Ʉ2>sV YS hY>"bƳBdDv[VCc.wr:2e2$] Q-t6ɐ-fz Jىq\=O6{ދ@sѦ n)!w(lIhEjZH'.㶸'Iβ[vpx0lS `bah;q>!u=LYU׻cҌ+F 2E!/!@{fd<;*@Kc `ŋ2Q*"J=NZ;@b㠫GU5)-xi9>ɰA+zfP}b_P2W9"6tvģ-dッs^poK.C!TrvYiAWA%bգdXNoۦ/Epԇ.̠ KP6+u!fr7s=wtؘ{8c'0"뫺k}Wnc,=z߬#=$m킶f) qDTTeZ/OG41_؆ZW?ӆŐ!*es;r:YŁ*,KRޟ-nrq̡":Y3֮Z9aٿw3 ~S}+qLS:YJ d|d,$_nzV]6Bw1^Herpy?0[ Y++jW R\` o]5ᑦ |JCw:,iQG0N 1[uG|;c@u@Z)G_읝7uX3luϽ!'A 40Z;҇ͩ>NPsҫ7 9[7wy{aR8;]10l\`:o5>TsU â 2 $;o_h㻘C;sQ`?ǵq͂.YL NUFLhM3j;*(BW=R3^奫9N`H.1W\\TyeX~nH?UgN[~W7)ɬᅳҽ'3vg )hd03Ʒ6:%5՛ı>rL;V?tA??KElKyh>㩭7g!F-z}mظeqB-'~]?/-歃J &;^48eM8gU7[ك̴Xij60%Bg~I2jXW_K^ ŷ8kaN&aN`q}yȖKUK$ vi],We%;KZ9v*d^bXFe\Vl2n3C\Y[WI0 F,g]>G aoghxN PQL^ [c8ɅiSu%eˬ+RA>I3y:rTT1T C]VZ-[eǖ**sZ5{/ta@m#abR+ɘPGͩcqRmŽޗ, ,nbP8e`NO2Bu'jC[ 0H~G@Ht!!xcs1n2*ouP8Ա*9i[<(q8CJ>PLrE5~nX'JU{KTJKhp詨5 @LOw??bqI%& Z)B~:Xhdv}&*gR1^c3$+{y!YЉ:EXB&CT;Q=EI\Kֵ? 6C)5!0y"U$\D4ofX@Hċ `A@7}.z)xK:'v"[$DϋJ&T*L%mW:ZcE˒K#i|]C8՚͡vi%;mU#;ST\ B T+,ɰ7[U#tc_s2Hm"(%zSWx\Sy񤊬{s޽9G!ֿc%Imٸrl5[w3sHkl 7=rs6PBe6뒧}TʩR7`}kVysd0cزcw1?dpRx, eX~a".ܹᮅ>B2Q.VZ#ZLvDS`ቡۜ%FY-/VMl//2ŧXArlEp†Sc/8D[)ĕxwf z[p7~Ein{8,(LFq ~emۊ-XFIU %頣iM7#]L6N#p}9Sޔų!oo&x<!IOxf;I=C+a[;ݫz2R]U\FcN͑ݻNϻ} 9ZশkC[ZFO˷m2D "Q0 .Y{ݹBx=0l/luΰz4¹hrɪF@[+m:\%ᶸ_<-z.o1t-1D4pX?d& m҇W4  s<4V@v/n9NsFx}7zirY(ʔ/UyrcӪjYQ"}O~=Kѽo&)K '5;}3y$O Զaȝ͍5ɜ7܌Dv߄+W9@0"̎L#rkTԺV IEe3yihHRZe??cn >uvb.u+lDgč@[e2 J,r#/}e .kş@6g]qV=Eh.|E yBv>;fn?G~F2ՙ|iQV3 ųUO]s%Cc#| lQn䈕vE`A,\)4D7 um?[Dx@t9_t%3yHKAA,-uڜ)Z "*sGyHELH VH֞S]R!^C<(sE{<7r/,y홦N[[4PBLy}樨|>#s3œ23| ?=s֎n=;g 8ПD4hCͧ&?2LK f^fWkFPp5Î4~/X׿TQ}9/+TvNHGu] ?GAvǕ~hlH1ow%Rwϛ]zs[I$! Yx-RY=6,ڄES&LDU_0`l_B\:u6Hl7nZD&@DIOEh%%8AbBH<ŭ|Q ilE@o)9}Db/tbgx,c'NN5 8NY_aT);BDǜ= _$ơ =_qKmqɧRSKpl0o I K8~>Y ٘%[ƭM/kh}n}b,~T/b==3:vGmvѼ Z1|Xmߐmp6GkFNK2?yx0/ɷm'oF|bN5bCm z޼U}i^+G$+%cpgM]"R: az!v[1K*[ۯ쿶a&A\w];)&]|dQ3)dtՂ%.C.ј[#4UZGfxB Yd}HYEHckӄ/v D|FU_GphZ"!~<_#&.h}͌G:Bؑe_fR/S-UP>Ll5^P&޿ on'z]@%~zRs`A1fh:a뫋N?ٹ;!f/uHw?zÕ˶ *2biƢ"`?\[$\w] pEÑ]β`};kU ' nC˜{Ô!pùF&oU3э?gA!ׇ_^T7M7&LҘ <@[CfCG/!2ڗ:RPdcchUk?mAӽ)ztS kݶ$X`7/#U [mE=U/;.(4ҁ-ުﱢ¹QE 4ĺpw#./ƃ1G<憮ٜ}N406djhq-pEt#&a4BjY۰y4gȠp;YڏAC9L;@Jozoj# ļ5n`Ұ9<$juxJ L0b̪VwxVuE _㓐x'qt=9{%^KSs=̈́#2w zgn?x,f_P(u&+" 5m捍-_AHerlT<U۾U{"eHp6$: :H] -/`ѹ4j '7(0G&jӹD,N)fO8FDyǐ;҂?&q-/״a/"kzS8o͸̔QRQ15 y8drm|kn+|K}¶E8(JriByP5UK4xr>lETKù+h6`- 5g5OXoh{VpΫKܼBGt vZOy.[0.X\k{o[?Be ^/>/O߀- ="-ְ j'"9Z~*D$u J,M A9 QFsYbXE8O::Z/纙(|}}p-YEγ{q4WNj˫0.ZTȲɲEF"w&-B %+?:Q ]l,a>x@:+3Ep+ĦkÎ 1OZ`}J@P%'ց[zǯk;1)UZڞ Ϙ !uZ ! ;~^ $1$FG,8%ȷR:.WbX{ChРSt1[/=Ώ%M}8q'Ro'QЛ\?1iNs>% 6@1[Ѡ$ 2 5k}3/#hu!YA*}W?߁ V~3hw ;Dz0t~ҰQ>"8[wyli^*%LnNIiCL_,$ |ѱu%yb4_s_FdJRz7nZHQ_`3OӾ8tX},u(z r[ho@TQ!&bGp{sXUP6Yv?/Y(3n[Sfz FE glLB 6bx/aM =b7)XX {bфz Z(I쮑@N}FH2` gBX㕲J`Vw&)96>Ȋݍ&ܦUH]K19'uXJLADҍSq㎁2i!2YµNhо(z"}#aIkl܄n#)fL(3%СaB1矡H5C5㢽0ofMuKX8n~&|cI6 .ʉ^sOSQ^UxԿ 3} &K-0cڥ)J {fc@nϫm!wK Hse߂ i*sBΫ"b@.$SJݰlJd7({f{^I9eR?zSiedxe1==V'<7 f֓wtȏ]ڂ?;ШlԡlP C=(mEQ>E#,{nʳ,} yΛ˙nw_k'= J-%ͥpvëS QoY;DQyFnG;?B|(hdyok\}y=ޑLB{Mnf o-AfXʌC6Z׶&yK>q(FfͰ dM#I=vum4/Z ]J(Qe:kw9bw)(VkVo*4ѝк24.쥒,Yͻvu7\]h:>,3}͋U!jx_6@{'w^HW *oNLnU= '߄=e-9N+uYEǰZB1 E6T'Q~k^|iD )ِw7[h@ODPߤQM-h)xB^i4T`d-:}~KZV)A͉ZFëӅ `}n7!Қ0#7(u;"c?P>ztVY˸զx6Bؒ16sLR'EƓS3 1y1ؽn{Bá)| vLÌYi (gk kή#w*`@5_8uMMRbcVeYM`;#wȚɬưvY-#)`aS~߶2|P,v AC8 bW sIX 8tc 94E\XRN= oޚժV3710\ŁϱrhsȦ=qh/@͚G (#C`ƯCQլ[P`I*<OU\ J&0_{9MH)f_m!juYlhXi+lZc@7_LEIN4)zshiY.p(|P<&mϬbZ8/w@ZTn`V$dr9mܸ!JL͐<{md1- WUƘ²Ժӝa0BzۢnmgV;b5d#gE=r0ѯ8LKUxirdf8FեynoYX$ 2 N F!:y-qBJxiq! 1y1"-<;Jk8ίC~gpT,go. *h$7؟ `@ߞ" *> 4'BVuB g?2]&5<ƚM*E eEڢۉEZkmʄ/sK !wd-TXU)d1>mJzy {cP7' "v>Gܨf]I7QI,5lFTL~`@xM e'RNrB|z|~MfcA(i'J(/7p{'['g5@ s;r9sPsMM/ԇ^gdfx߼$H.Rk4?CFFl>hMph_  R~@H6ڲ@@>D1Ȑ <N*Pr7{Ymm,1LtPN{]:'-clYQ3*v,c#[w >3U֩L|G0F}ed:p( Cs*݃.fü55\y^c;qN8-d#?a~! is|/'79k^3%(7Ke#ɕX AȑQ}5{:OYVpF[֒QڰVO!^Zw228mQ)= #NmCiXhD򒟐W`QK$&"<܁=-uIRQGZ%i96GJ8Já6&11*%zvѹF-)T9'=H?{FQt|*1(Q#7^N >1 x vİh]O9!eGP؁.$ټK`;z z|AzHc %d2=>%}-h`(V'5>B838/CJR߄ڗjuK9.TUy[4xxKF5x_g01 6S%.d,`#'#p zT TL1ȚGeNR +@M;Wi6Z/4jOVma˖NLzpYKVHBAfRs8ziGTEnВL9fz0vj*~9<)8VAcؒn%-toFXY$'x1y*֌b`ڕVlYWl "=qv)s&DQ !+Xcpm\']v!jS|V¼>Y3'[W1wLL0amTY RAL:!q5Ζ6*d|-DN/= |z·}rJf:W#/QX~Y{6XL^J4EUu ':nGӃNѕE IetGDoK^Gwh87>NI:-ɐC:L>\[Tgr8yPHJU| NcPٔ R OZ (( „(0 eD?7}JLf*h335$ƠJ1 O]0E5Ooi1Z2a /"EOk t(}99ä֤{kW?wIљ}(woG!pAcG%A4eD?АN(QYM,B~!:V=wݫ\z9C׶ԝ38a zB,z_K(y %pe_z/RJ@//Mq*+dtȰ DK%@ Jժ]E:y1 Gb+Uݮ?iWs۝!r*g *v !bęasC}9=:];=_ZWسjf'WC<),-׎SL\b 2ݝuZA(|&yL+n2C]ظJmߴ0־|k_kq_o4e= \zPt5j, 䩿C ,i?y "]2j03!z>'F`3}b(tuCLIm?p>aZGl5.h8 8Sw{*iնñ#J^?BXTQ[LA;3sĖƲF`A?hb(MHߑNN⣧ƿ"3#IB^dpy>CExs>-6mTcM}!%B(m̽w&͗LDM ~}5$< 2jfR= 3oɂ]"eН1 %!ZTB-N-|8-Z\+PM5!0W3{A?#(Jeb) ,e Z>4qGڋnh+-׻r$ >S#GeتhVPLf  Qo-"KʿGUxH/y H {^?TwM0C;H}qIa^nwՠ?lR"cnp]2g'6K&qS ½/!PeznI] nG;|B>:!>e] 9c5,WU^ 6Wf{7 9y rT;Mqi3[..SZDi)ihTDE+|vTLa+] g6>mPGW7HU_7l)}R@Jۼ$a."Tq(nZ_|-ͼ kZKSuJW>rXwVVoO? QvЕZo[sf4X7Rg&x3zDzWy^/0{ G>ϫć8QH7"½xNFw+9.dJ"o₄_66# v¬=EIh\|\x_ [cTcnqoZ XN<7_5\@NO"]lr÷ ޷(ׯ tVeNAT٤6=|aY&-'uz-BYaRJ:OIpUP껧l4f b?Y8ڰO`w1@,6ֹ⏫ZDNn 1zé (aO~"$;,B0DNnϓfBM>`N_hqBB8 _l3nVb=A.tF#K`bvA0a= clj4Čױf^>Pf"iA/*牯 1&~r}A8V["@)cڜA1˽A; -&ÛV>zz=p:Ж Ę D9O&mmæ^ѓj`$&٪tqv((1@I6hၑ DyCq 2e[KpkP !RL _psɑ&W _)_C !WCj2 +UdҷDvCi <-z5Hf (KoĪ1MUƈi#Ra,0KkP^iE9'_2<7[51΅4}9{댳dK8Y(/u0AOuֻzn$:ٙH#{O~C#զs5opg0 ڤ|߰Ň׭,p Sp`z4d޺Zz':ZOU0Q a)Tۭ悽J,q zKDҚ7EpfwfKd-Љ3&%TnDݐbCcՌE|$'xmŠ~zBܒ \8-uLV6Ӕv:UTuA8KJ& ȶ&Ή|uKPoɲw馯qjIJ阜`)@fZD> zKt 3OtnUY.VRGABtڦHhn5t!}=(ׂfĖF a30edP^,T b2"µºuӛڸ%0,&$@1]{@8\lۍLyA=`%q54v#R5-c,]=?YtWfGIunSxRgUGO 3D#ϕm %v|T` EoyoK1\0|AjS D|xdÍx3@!9`p0Q`=ҥ<5b~RbÆvB`r=lj`"Z{,i%fa n_tl]H>i;7òDՉ EwѢf`j;t#A)u n]m+e|ˮ)s˖f }l꬀^Kj$;Kۇ5;zKAFɬGe[t#h.7A@Gwh$ryv&^ȈK8[9k̺W[\߬~]:زI1X3J 68(Vkl]Đ`+iQu0n\#xnc}$ugL74 d?c\HsXvҟ.oh0 JMğ zMڻӋ]n9$eî:UqN+ ۖ텽9B/nI=hO"d\= SoREøT2wR *n'c\ofm8#|M)Y?䱦<2r?Mp4 m$^EpەBHj%,`(xz3QX9} 9qhEe(R #%>f&C2"s<+9RX\+FV@+yk*, MuafSi*n"e&p6  AO >;`6g^!}&.qdq-`]bYͅ'<*Di-HlWj,/K7I8ßoY̒\֫I~ q8l3\q%w,W8~ZdX|4!/,OrmG<0#]/[IuKmp &50+9AZT:;^zR)>vd#A(x4SxQKiR6[&x `,nv%uGQsdrohnO6a |8ҊV6ϝ=^hj/&_ r9K6)YD0TB"iT"-"j{uW 36:aOuS;O;V*ތD;29Tq9Tfeiw*iMJ7v$ hiNV,Nwp;4S%8 SLLm/2/&>ygzpu+}6DWʧMaч=v_U2ŃXZ9nYhdyZ|Dt(Pdӏ(8UzԔDN~MNwga;pw~#nb8M[F=~U8gd &M㝽Wͳc7hc-7,mH8J,Ֆu\p=tRG4#P&#o^X70'޹05bM:i>3dSqi<lM ˢx`]#bPi#lx}E7>A4A LprY|Y$\^ t¡1L&_Ri؊\B)8'ǼϾdvS~7|3VꗄF`G@=,},tz-3l F0So܏|;{bmGJ/AF qsVr=jn$]w RZ7<>U]]4gM{bg2' tֳ:6_v:HD;p/*gofv]O$LTp/!Vģε$ûd:L^ģ1]h1ilSf  r_\SiúMn<~ld[D8QhE1ۄBWEWNO`VH_ .<c5/NE]}3tBy{) J&x"c`zdAVOH9HFӛE=A$%/ˡ4ҡ-~GVa0~$1;A40.$'Ȇʔq3qIVeBK;it5и|jXBi8~ NUJD-I1~@?h& }EU?JM. uguz b NP !-!yDS{&|&HKj.KzL|P#}'aǫ)d=O9n(G|=Ηi%hG9hdε̣P M,;|}ݪL6lBG{23t>x5+gaYt U=(ՎKN\oiO? 7)ʭ?8LܻQqoIcO&YYPC<\ӟ\5_@{ϫMpc,nI.%QVx5oDc_#}!hΕ|rLӉra I%ZnCpȯy+} SzؖHwBxEFYO%/U),׬7cv+S3%)6>7 on1301ݲW5=|rFExm8 ;.H:nNgXGWݷ =$3瓌eLr<XYNHA[)Z&m[ |'ypP8tP"c^-eQ<1&ܯ|ʷBqyGKqWڒMh0%{&M̥}wBZsJFX&#nO6lwgZe(ȃ"^'/O$52o5@P'.dy)Q՟EŦ LGDEsi3 Dt]}n^!u2 ct,u+G>a*DkQ3d G4Ψ0C]3X^ ZTX!`ԀNt h4K$Iw_3GdV12EOk)v>?Pebv+hG./H{-Ӓ X/RV,3xs48a%\FMrA 6,njxOkwMSM~%6fV0k?W(ZᗍKb+ ۢ_[MiDas#Zk NʸVדwVK(WRĪrRocpC.Q^'*J;!طEO)uzC҈US_>8Ә4L1DɹӮ=U^8T`D)c?Ԭ mt[*ȗ/IXA0铭ΐp{H56lȂ"}l?|37CWtu.eNf{3WJNi{*"A LTƱkm{_>o2ϒ:/ῺY؄ dНcRU Y J8P}gڿ f%#k2XrKse@l"eH5>S/" 6GA$Qpٙ^wlmU:&}GDHkN86ӿ*JMƽ# $F< ND+lLusd&;I#AwzL=D Y(&oOӒH7KӞ~OK6aD∰ *-۔ʣ[餫.Y{K>ہ`پlÇ$c g7hc6o3{# aA&)wXVU.S,9΀iW-UΓmҧmƑ㱗<G\=<.6@#%BxRz/cdfIB~l-v[,o'yrEmbBTzBMϡ)P~0yS|@ bP10{y,BIDFrAj !y+t~S(eq{78!,X#ݗ#om0F=]Ϩ *{$Ll]D(~*O]ԛ@SJ]ߡ(!zr5tg0KBZ] Rb C#عDt/x԰}}545U඙cb8[ݤKllG:dRAou>̴ךF'nxRW ̓&}x¾m8^w34G]o\ T b>^L/nUh ( '( ZbE#$1ڽ{IX4B P&4,%;Xz-ޓZu{S< A2~n8V+iVu_DfNihڥ;ap.Jw&)*+|KgLGb}TK[hHi(Ypf@1Ӟ vp {5@1{}?o29VPo2$_%Fn>p`jEP!X= gFؿ],ĕ`At-p_j8^MN v\#~e(MSjёcLmD@".ޛ٠H6::18D׃ߝwJ< вkaʰ9||E ;KCMk~z.aҗ|Br9 F-rGOCdz"HzGro/Hs&tN{FXbRϛ`PѠ YA2O息/<â߬9cgRa&dSb;ͭD:~Bq)0JlL%_z"<9DiM1]yvu}=n)cR,4*bmm(L٘dSqhMXтN"8 {-7t]xTRepެv\XPS$Hh2B9V)E?BQ媑bBM`Ǭ83;,36Ik: A臩Z+ci,K\sz}ΧMjع[DhXE ǢR96N @$V" VB"WM|cpO*AU*kJŕ'9:jz z+`>+Ƴ+RKP&IgKe [QLoN 9 Z/?~7pDQj%](j27滿6x@F#AfwPxʟH6݆UǓ}&|$)dY l<'Yj,]@`( C r_i)"w~ȰE|[W?U۳͹fn#)@bnY?%y͐$~Ur Z( tn[ίnSx-jl*&76|r8%K:>ts-;}W Cm3ܞW*jյ98 b@-Z'.KX7Vm2@p,~ZSƫEj5S(j*U8Ck9~=>{-&?HPΖd  Ԓr>'$TL $NAB$PS=Z\X&SN oJ+տxns aT€K4Uf .ߚ[LȨ#JQoO7VX($aπlAy /:h5w}8B2w\) &6rHp/:ϒd`3[-m+0WZgc>> I h!qց& t3BM.5܋܂CȬ~: G5Dۨ]cV".3Tuuo:eH2:HJ̛c*֤[Hi ݬ4j{%^rFxQQQ罾_3.,aħ7ݳ4`&! VM$СZnYνTӻKUOj7Ȯ7(iHB|Qa]NEv!ˌ-rK­#;Z$g눰tu dhȢ09-z0{XiP={?珻S-3Jz.4'{C4w6*h_W@\{0*gcV B06xr/Ӂu=2]_ԢhFIQ/ {Pdqj^{Wb] /FFx[(93x;^atKPA _&9J Ƚu"zt@5!zh͜"w`b /Mi*RA5O }F7U>mXS0@F h¢N2bUkvP xjo=S^*gYuNE1h^=n;_}AJ]-ØGzP/eN .P#YGNSΞU8La@0LJ]V8uIKI&H\ywި!N+wo5UePW<%ɄT%j64r@w+#I MT^!q8[ /5MMUAeK9OcMgwa(J^'ۭiȞR?l٬1VA?;d=fD" XkkURU尺bZh^БW/7,tm.B3b|%Æ^ky63Ry8(Rj(\7Cq`t|jvK6,# gm>ԹòQoq}Gɦjg7TQUSyPӞ0 \ť[tcX-5g u3aWф2oIi2M%_fwze( ` ht7csTb(re(B̛a+kRYQSFL'#Jrs2-zP3M‹J,̇[`^12Bp2aIvʵY;o;o,ݒWZFoU'VvͦHhmܡ=5Z )['-xHҶK.🞘k$B"ȿv.&͢"s{"Zqn/5&sE}? oTj_$4"X#tEMƗ{{.㮡Ӏ ]rJ/\ f+:n[p(jhWj}z's!_lc=fe9'u TF:cLO 7\=oE}ݽ)bN`F,}B @{ySM$NS$&A-'T'7MY=‹xRm3(.Mڥ_n GF#`Ǹf}7u=琬AZ.{IESo±3*m@A^&/̨.4\@-S [<~3,F_?ΒM&=;OjF`q RTgn <&3>JtWPL;[ǮQ.m3l0Q~`ԪYÔ |LEN[\5lIYW_גD V1G&sAxꌜd`xQ<hiMQWSPu- 9BW~.f%vRJK 8 6j'+(4 FT.sm jNf¶đؑT8T5ntV}]\=RнC; lO _Cx^t1ɀtC090$ -mHTI xZm(c (H"ڻB2 O5:;^LG97x@pX"tSnmQOٻ졎uW%ovbc'Ļ\ H^ Cά=v @Q#a=3d'߳  nIge_k!r V8^ۿp׭M >XeͣĥYixH;z2orz?3\g W9u}2{򖎌6ӻ7]7ͳ&j7Q9ْNƯ?rݝaDhE`fLI0WF40,l2>'#T T7ŰyUM[s|[cţS+eGLpv}1J9dmvK{+xcęyAȝ.Ɋ`ߥ h4j ZVn*RB@^;S֓^Q]_u18_~<|$ Lsi뼸(On^% YPZ0]TӳOUyw~9_w CgI0Vw؟@cclҥq`#gl2ԑ?LZ~ZA5L%ُИ52.t=#%GXٝ^'^_L ~=xAU٤rsWː) :;PT`(-L/ڟc V \AMIp/TJ\̎ komxH\1Z.c_'6✉OA-l?ϛC[Z,o f~Dz^+o$)7nq'lFP©qc2]tj:c ]0Gh}O4;p~ j{R+ՖG &ï ~Z>k"zqΟHS֔xKoLfu>r\Z]fvɹtt{`sv<^/N{ /tSff1s0(9C=Nv{G1Wb寓y^zW%<`|K#Եo[6.]א Q> cv77Be: E.?dឨOˆdϻZz%t&)?_1qg(RĉoH9z:ts0^u>IF%aWyr=IU:aU2+Agm2Q6P CN7uAmv@;fOq; #fܞ$r6`Jy9= !¢m coEN0tk%۟T3ugZ}e<{ċ7 noz˜)b01Gʑvg=^OȖ=x0A1E$濴kV*T(Hc vV?;};]WTiW)#F &d Tϔrsh? g@$ա٭OWHv"l!n Xav[JhHؘ8u$[OdzM2١qGYӄ@}T ڐ]h ;潤nGM ƻ`ݪf[X'dw!hd|!:{0@i""N ؆j ڥݎ,qc̟e'oX>ܼc" c$t!]g`6yaԽ8iaC8>oiD3WȃCNZfrߺ, nލ9͡\bU5talF+솶ap퇨_xYEp>;XN^QV-hYPIyeWvKqN&ZEhm`5F|1Qu5+ j,KQ%řYvK?VBq'O;mqb8MiJ<lz) Z9md8$.]?r[sMBj9"`xɉU?RxRc/dEl`d3b۟&XeoL.uV4vVDL/;)|8cNLV4y\(6ᐪ҆*rW *f* l3\W/yVu.c $:GrUetrt[кD12%,Ba]BQKy/?|ҏ& W"8k7^q>`›88_ B, ,TCvҋKZ  ,)+fhK2t=-&ժJ)0,mV[$ = M=y*9`v7gb};4A4dBT#Iukɉ[DfS5$~wQ G[IC>ΪwlfTo!x({L C= +[{^>]{po߂{B❶ XF Cc +oDGh|ufڞ<>ߚpYilu*5!Ž\e W'i BU`= 9Ho$e:RtW3fʉr 29@vX 0"u}W.|~bGYr%(?qh͐q̃(] wJtO >9oV?b3lAXQZqhc1Ss5Q@GhhՖ)d,>y/+,4ޖ?,?.J`9&moPbs6B9N#[_G5?Z\{Cuz0zi'-sOQHÙ d2z V ф1VV<GTNg:+ 2V7r5O~,I" @e\pcuGRWR #IxI`&FCLKGcbEsChp|n|'K7$أGˤZ@5Y.#bQfDquawX%2}W&zrعC!(}z1}i|BBo  odi52. D%fA<! O*mּHaIIrĹjS&RQjn{Jȕ^J}d;͂Yz+i2y3G:_%xd4fC\6- G'op">EO5-{Lj(DJtoRkyޮ^ɑN۠TH)#*3ps^'U%˜P:z4zM d-ϵC #m%?["}7o*V>Z OQUW'|GpK6uE$.nyPSѫ QFPv}3O7Upt8?KcԸkqfHp:_h6oآi.]7Fzkz3F gb.leA""&wS/ RH7j[PNL*JvjEP1\g.8@՟i/RzC vVam aԉSߐ*:iE[1YN $'Ӑ|+Ry.o}Nj73 h]"FsoxNDG1 [!'keA-n@DDݘ]:En;sU:] ;@A ܒwj([DwN;BoV-z,jZ#{@C4< 71z\FQ k޷ wrfۘ~˒ow*2Ẹ^;JQD`Ah?0Nj)S$>I(:@8]<:pA,dZ(O}rA2YFi`"N?aCǰōk|B()f׷^ATӿLIb)jLM}^~m6_Vkwj"w,'!GE{?0&9`cΗkd7r6efXH/D|hItov `H5H }edx]Ǧ!չ{jk'9St"w(Tw%!QE+V9{%o(Oi2 G:ʣ6|b9^9`}nAȍ|A+ŒȢ~dl9_pgV=ִi!;._o=t_~CBLMFcd|͓& +%sNAэPּ} q5VuHE-q~Oț\WzNg3IX!ǝA)R ْuWjL2E'RA< DQ@#;R.]E5 zULAwvCi:u|6-d(YH~-1<!<- z$X;EjR0XGRnyn.&+ OO+д-b ؕqKhsyTpIVs]WTSX4m ̶vE`u0eg njs<."`:-6\ 61aP}bHܧdPN<6ɲ@Ÿ|I`9sm%fFe p(c\b|GyDr.I2>@E`1)4ku[f^ x@]568TؒKKEy M> R:+oTJ[d(&8b!3М絥޴(uCӊrJ8klx3kCM*r)u]Ȼ9Y(8q fq3۔/S]@}­#W:9YYro&#cbY檅Bق=U\kt7؟EY%1C*s}GrqB_,L>_Ya[!"X^3xw&Nǖe*Apg$&gi"VD L7@W+}̹?c:pZ-)xjs(YHyjrTX &ONX_C|bP^uZMԚ=oˤ] 1kSx{zd@br9ȍ3U´.aeUOsk6RxB\ yB/ՠp(j.c#0#%[i6:gO.|m9O^1Y $_p!eͼlkh; S{I6f ( J od؟!;y(B'p2q[pzcdzE ؽbpۭRG`"K:CHGsY gntO"![W#Mg| ѤiKaa~!o4uPfY=K!9pZdžaO['MUk ETCLJQ[ڐh `y(){`6"Ht DڞL7oy8XM4|(phh"ń7䮗Y*$krA3 X٧8}Yeȣҹɢ1c%dasimbs&@%Aȕ]Ps!?LqU lg|+`\'x}M5d7")xZ%;* ih$Np.@c9y-\A k7d捚I:H0UN8iSS^M5q5WCO|.c3(4Z` ]ŕP-L+kHOkI[W̗eNٍgI/ 1l0PGJ93r'@dsnPLNqU bg+$S3~NXSPrWM\F[t cxeU:9yHZG;pݻdʌaN N-MMUN _89t2jW 50R,#a0N e@ fiUdZI& Wa]:ZXӀKdYƌ^ʏI#3c ~\uPaohH_Jnv 5rh/XEW.UܡA3XBqyNU,$kMX2?)vWcU{ZaIW_tq藨BDNr`m聘ROEaM;_rx7)D|fN ;u?`UV6 ]G^]{irX[zꙛ2RJ?P.]ݿ(Y?E'}7:r{}мǰ 3( VĎA_):%΅ؖD'E,oopZҺK"|K  w4Y2eb'#ye[f"sak$b{v9Tgݐ* %6ifj %ԏUb$ F)`v<^:1ɬlG17 D*njqg&Z}*3_X%JρOGlw{7W:Wə H9MG 1̿h[]=vx`wP 4 ;"Ӽ? hBER[R̤n0 =ےP ؃I_L 6781pjB$\t`6Xz}- Άތwwa\a&zh?%{ji&gQȀz*[xQtjγk܄gEL6uO,B;/XPQcinwOKQ~9"u<y/qHNGX*՘9N1_ U ?rv&_RP.i鶆TOxEiî_^W7/.'˲9 AsG*:qÄs]hI>'ɓç2I<>eKJDD8?&U&_-NXvfg9A X8>ueVf*B  ihP7/ɥͫi h(Qe+C牮ap<[ط6C/ *~ALNA_(]5N )eb*)5j8A%cmo"ow{). wtk`Z\p{msjd/X[LSDQM7tC:Xd?f:di&81#*$+o҅$^ Gz:f;A}IA* MQlǾ2Ѹ.?TgeJОKn2b4"fKziN47=V]ڃm~E%t[I,l}SGfVvb[_:^GI\>𛴟n8)|g+Wu,@CB'7f#1(|嶻lWUX 0"8?{XYF#=v _;(vgG(9>I*!f?7[4A8g)d!u.:ځaz& kSL){@ؽUXyW_d)pt>@X=hw< )V}/Űί_ k0}1;+uDKFmh,1k@Gr \؈BNL@LF~6i<=@)TawQVv~4;h{3:;,ft[Gf^\B-mәr]HTb3`GFOIOpr*&?#FZnՉ%?6)`_#[hJID T E:dGJ,)l :ţMٳ|4?;c0|=sIQ})c7Y_NwS?֕{ZnsqqJ2!Ob_8?ʠ5']kȀ#CznBKag"A2(|}ZL,u %h3v-k9ےa@1 7GzTuO>"uB7UKWȳ}9'`5F䖈rt'xDƾS,Pli1C"~[v0ݯrsLPk^$/\+KLJ#A017h)D' ޸.A`vǦXat)޸q5p$T>* u"oPAr1m>$m=gNqO6%o]SIYym wtVYW?^xqЬ$pf& /A]{4-?=;=F.]ʸ\"u"VߴSԆ]تn(FU!^+(,Ŗ< YKoI` v58~W*Bd)W(9$:q^g @_im6bPʲ=gL0ĭ۪>`R?iSu|az`EجXۑ""&)U. ޻lo!eQ(lE2}le$lCW?Q RhL8~< cKpSJ}K$!DGY]v/!=ApQ0ds@Q5>.LyN&_mgW{vYn@y_9>T ֮6n`ZI@kfeW^7'*>Y64Qh0iZHhcbGTTޥ=nKcN+c@=E5'8qp>#Hn9:JӫP;C"qR*iҟf?\m:!>3$sg|G@C[ӕyR*9kpDYl~[j b5Q^>L^dt#Ow!?/FV~9p TSRxĒ#pZ'!b2Zj귷"R)  A\]yC0!Ǔ&QpW4T|{#< EĿ0Jm5oZ<BJhW 9NXN*p3y^D^*I/cby)~ {*;h+Be!ܩb`v v"5;6beY}+ae(y0e9s^0B :c6T>YZ_CLEsO-g,Rp IJ H 71o&xq\جNRŎ+*X(a|* =^S-(a:-1"das35ՉЊyc⬯khL78;65gx9+j>_Q]s-WUvlA17ͼ͐MUnp| ^KB( 2 {Z%R?j0^ezn U=: UM =!?ONfRcSa'$Z\5L)+YBUT.F_Pe#tvJU;oM!AK&cnUq.rFW3%xn]?s0w4 NV>CTN#ީph렘ME٢9.~ I+LQZ,Э&1V=Ɋ녩Q{vaX q d{;Bo4ɷ*FpB^&$7r@ouniF#ZA'#ʃ>=c&,|M04,B35*c#?4A<`5yT| ᎍ EɏU 7xiȺL=!X&s`TkϚ,F? ݰ{2*mMchfL<Nyb$M^i]K=9L2P;&D{8R]+̅Ĕ~-^763o[;O/`m[AB zTi{ c؝wR1S/`1`(+Y"#ʠ$t>CbGzoc9O`@_$upu^q*nQ\֪ PEXRm=tܐ)Vvh>χ;ymG.ؘY`^|b-)^<\Uf$3$do _EN9KH(TY]Q,v GQش>$3fzkof38sW14)_uI?dLMY`ݺUQ)@Cో)}@,c`N0,xsP w`^BWIXk-R_ lp7?9Isp3Jj@nYjbCY5ݞ+8o8Y0Kh;Ѱ L2212gi@\7x-GnB5CYo*т@7FK@և0Z{<K6UcH[$vK[KRn=?.q_E]RCLVarLb"yiN9}Km[63sp\Ȫ `&mxh i eo|ɑxU^U(6!C- 2~?fL2<*23~rFd^QGhX JT@lzYӅ.y 6CZ4M.cz˰ŕJnO&6DD$⏡ F!ز$LSNqM ?fBVCx(gq'PUlLGhz<~b T7 e œM+K/(*3Ք-FT~dLqĨ'#H0Eـb7.dt~Zn0f/A^DD+|3jT5oT -NXP͠xB3t_I|$\y $ο*vc ewA2" ?w$)$Dag'jX2q Uы4o<dQ'P>Y!r8ĎI%{}7k ܍$ | #VC5yrD\uktn#NSCD]BD3^:VHQ4Zoe~[PE,g7~ǕȟM }+Y:?&[AkAOԘoR?tJe ~(ՅA#i~3$`<٬MvVT 4q V|!/tDC4VZ6 3Ge@=R]$!Dd} W3? RL}~,^4p-B 5!!JY?%M1  OtL  s\cѦIA?(J ">H :Y4bǵ÷p@dYX`!zww=4ZZ5L׷J,)5ɡVF/p4xvw2 %}ihۍ@%a@5~d6y- yNmU9_OhnVONN %wC*3?fp3]g,^%M~֠ C7~@ yw; I%}ľwS߬K[YkA^,rɛ. 4@E1뺧iu3q*X ZY PcTf?/vIH*_: B#l x'|\V _Bj2I9j$&oQP[6"Kt%u:%Ob A[KЯO|c>X5ڝcP;BSz,\6}]`HJ |/XRT_@XL׮MSYьwEo9D7LqպZ0i>j?|肭*0"N.0aߡSWXY„Ԓ2Fk?džʈxi=7N-`f(>k]]$!Esc1QZt`!"Յݴ\eg6KLgOO*tI" <6:!ԋ %#;'b/Q 0+\Xa갮qsK9%0ZԮM)+UMe?=:]w$&I[^\Q,]V$a51 T-Rgf.Hv!PE0vEhx(a?"6& iTBDJ8(FC7CHOlP?9ni:N. և /=D?5 ΰt- BNyF71-Nj:R rxgoUiV>xn&HMek z95X{r3X|F"YM\2Xͨ~SEcld&2ޡI5ܚ+l}Œ( 2%]aG.MX3x~0/GH}uZ|. i>v p۽Q㺭y}:[0#8WǬ s19k)FL!!w0̎8?K[WF}/w&:MFVp.7jL/J{WﴶUO#5$7 L`/xX{m'ܻ=ā&3{+yjl%0`9U 2J>5h!ż'$;Z7 Gq0kBvJ6N4 "ȥy3#oa! l1;0\ypNZ_W;EDlC \ە ڊAmzMa&H$%`sƉֶu}vVq '`ʑ92{y%6A!=:`sN߃tCmt?vY9+̓^[<^ƚ`vktNA;vtV 7)^d9tu2w8*Wc:-%A Q^ ɬo]ceo-+)uщ!݌hB8rB4C@NK@`Y؃@/qUA{mVTn } }r,ux½,Pt$ $8)m Wn u|X ჄߨZXjk¡B$jLU -T,RA w& Jja_Fjk-%ƦDTU{{̹DFgVap\f?泱i[UqDdo :ma.eSyo*S_ C)_DM$z);O 7m~SkF+Պd񬖐V =\m#ʙ7@yCk?7.ʢ7(@@ Kqqplq@|Y}˒{uiKJL^.K>sl?~H# [ڷ5&vG$sNmy,7Oѕvw!¾Ɂ:I%s1t?"o4)Mf秷FKfB7|a:,VʧcH+gkP 32Ոu4m)B3 哤Cy>lA$:Z&?aԚ0&|kǂG$".kj7q'OLSJ6Eh#$ߠd.xGRM[P4"E n?U?Ӹ>686kyj5\}vIPIɑrZf5"˚+𥚏c`+.Y*4.@nDtVs[Dy*ྙZ=d-( 5zڤRd;4'`CP? la7moxjGz-974e]V&svi"ԇޱTSk$$8NJHԞN\cuԂv]gئ^p!0\,aӋʒId+RdR- F`d!phTF/F"<{7,3{*hx iyKɜM3*a)g!^d k.SMĽA"֎9yIwoHn"PCۯ>lJiGTOG/#MKgaZ?PK5BBeAsCYd %^j0oƧ/7%OxX߳*FB)1ߘ9K<9Cnaӂ'Tl굋+a5hx2o2F#!WCi\r( U\ BtF'W}Uۛ?I2DASBװ#*2EB(nyBlɲvAj>81p\Ĝfk$9 #Ek:z(^z4Ft1d1)W~j)dm68"q/'|@SMYEѣxQ{ ,6SE;KccX.#h 2v R!ZpmN4ehRu0ݘyݽ+O]E?;2q(iư\/CB*/)T~"ӞR cr4- X8lqv)mh$F:n>DWEy$tejI4%Q'N3JrD=Lh{++ud{-3uwD2A9](z΂r j̝FxceNGA.fG7wEi)6$XmN&&%4;ȨcR#h=+s^8:VjHCKΞkFhƜ4NᰕWm}h3`@Bz !ӕW g=,AV3gR?`q"PWϧo?Bs|Kwds]BgB iG걶/B} h -$z6x1mLo {@1XeCK +(*nvҳ[y9{7pѵ";>WZ$yG1!HEtq^5IymBkP>Cl"i m UV,.U#w*O !SE+Ra2)-pz)hc x#oW: jӻ?Wˁt5[6,>u<֝6nOTA^PWC9ҙQ!fv[Ж'[=P]KX*XNoT!'ѓj#TJ2e]_`_?Ox}C0 O7@7C(Tɐ0ykC%mYMjܘ/43KYK/<>3gbEkAytA\B$U,!lиo=~`toY 4I 4o."IvVP"|a]xSY'rRh!a8 ǀ'%Xmo36(( SWWVm(8uKm^6qB`ͤjWݙ0+kOjԘJvY!VLbUXvZCzWЄHs[TfW֖V[ܭ? +Q9a>=qE;*r[ϔ!u=1lz_d+Np+#RsOz~55L93d:9scMش%!92tPO :'%WH_${k!Չ uAd+NIF q! (N"AD)-m2䙻w' 5$M}~gQlHt.OQ)mi2ct &nU_ xH$LkBA/lp7/UK7Hi P 1 \'O,l%R$ӂE6j\F߈LjUF7cҩR m$/!2͝z8b!n5P[r&]y?1 3,˳$*u@8 AwsmN "e%7 01@.#h65; 8a걕Ɏmys~lOb$bJhBK*aPE]yC-*s0#V%dW/P˙he jn)Wv3էp]= *d%2A } ^$xb Vڦ hArf`_`cW"8:`=+dUCx@k +.i5[OQ "@fDM}}uW H Dv_7 aWٻ(uR%a!y^DEo =(8AdBd9Eɋfۆ 3(xx8J$C:qn$"kȰܬR 9[]ڋBc)]D?sia_',z:+͵R=ܨ֢Ibt8Xkq=|,VtY9x?[vmQ8s Ab e(&g8VЀLOJlyݺ%0 EC4jՆ[_u:gd '&]'u)]-oB L!nQtJqf*[dޓh$^ ޒ|ub)5,jJ(sjf%mAR$jD 6Z/ՍtT#ۚn ? d")OCD.V1qDoNb{S^ӦmqOUt? Fqկ{vbe+jvm[$5?~: Vk? <ԗ%iHmoU=!h.3AO"(BN0 sU0ڞ#ބ(Ԥ0!, D!BY2YD,ҋ$E Y`TԬfTn Nǥ7L𗙛cgbE΁(zL?gWDրxH6CT_@cy0702`H.".-UW yNy,Kۗ@+hб.j I^)j 5 B  ɬI,mp ݜ"C".xN-qm=! rJYVK=h-)6Vsb6r ˙B-̔ysm ;J q m1I*Gv*b{4iWP\qmH.톹"݁1KY28$;A !mOQ錓!.N7<.)s*B[mWkT0 OdO-pR" jjEuCT0+|%xvCmE*"vWVԦYTSIe{["3$p$l?1)hOВ#Fk1>M!4kK=_<\ȘU&hiEU?XrGic4Hɠ5vKdF?Ux% 7* ABDڸ&qt` BS,B 籑JH`E{entR ⛎?E VMFsRne0oAvgGosxc*,9uQN6>+P Ya4mNya} ʪV%@ci̬v'XY=fJn,h \&yjS*#vK,cx;$1D߱M~Al_Qƾzڄsɀ-+Gh1Rri4\YdKmŵ 3reC޶W_@͏PhU60WoK#F:Hf& Ȕc[GΖϚ ZΗCI+0b`hu ;{oW V5 fAwqu&pT&wLKL<`X1O*Y\dW=q ~+@/e_72Z8'<@JDeއZ֊R \(~; C0dD_BiXd]FP6]FxsAXxZ9f_aq W&k0ؾBOn x0qP;3 E3eَta5󣻓 ULe22 b=ʃq<תֈ%N'Ycm3Fw6 С[84Qutx:k4QTalQK] 9Bʧ!JZ<~c" K5wN)5,8 ~&PfraC‹GL+TRl;[5e_Pp7[I(V3h6]9-~ҍb6EruZ6mİE`{u\KF7M@H+6S)Ĭ}8$adyTK| )w(lKIeF[b6$\bf:,( &\qnBSB ̷!'sJ2kZa^N (7s!hc^T`2قֶ›EgPq4^.ӱR|[ivǧR`7(fks  =sQ [pIkU?L/>}aLnWɛ׸I#%sН1$2 %*SsAj?· HtL m.5ENM7eODP2mX_Ȧ:Ϩ<'̽Qo:Xɏ;)=~(Ö;!&[S#F =/miWQp!m$g:ԱuY;*M8`\#YlܯgF!tc>̌W4d}l @c]8Z+J  ^T+_YL!Nj wsc `ӣX X" uQ}*oy٘|+bN ~b[H]9gaÿoM>TB`0V1r]0V1!6Y(Qu[`w"ޙ}z7YlJȞBBRinoHJypGdꑿ9!]RơQVhbn=#zolɇ$-3S)Ocm1{V qUگKUd{󤿕ABwi&sWyC5 ŝc7ψHzfIB',}%[,p&Ko2_D*e Kyof6u\i`&i3Œمh@(?ޡ!NA0m~w%O>DB/qQ F'}IEbLˆH2cmp:пYt 2<}\bCvNR8iR&LE&g){YxYxrB8-&3pkR>]g Vd )Qtl$~0_">fn(inhcD[IR}SPUM㷳$qY2#8"seLj М}ܜ U'*fS 0@킽'J?[|` _RIU`39:- S;WO @~G!]Coo>TlS_c_BБ;n!6Z]%!?죄L M#g֜c=w:#h2|7l%qEIw%_ L R_>>Ґ[Ī ,ʁUQCJ~>E~%-*.ki$PGX[ j'rUlo\AKT^>;n!Px2i_@4uov/`&}e%_ҧ㤩yڢBhV}L#I$Dfi8 NqvBzTn o- dx=cA2J0Ӽs@=@{JŒ/{ Z"tuN!5WHp%}pFXJ㱢$ JL5oVR+6" 6uTI}+⨺8 Kg7{cGaj~z/Ns،mn]-`Ԑ2zpLXk4Qh7XbkOt!f/XNZIӬBP25O)ǓyǝOuiI=|"ɧR>0$zCd'TpєRY<l)e>En[}2!Td $$9d&.yITc9 (p:M$A?Xy |KIٺCpU߅##> !ҸxpG\Ƚ+%B+tૣ v\gVj2ҜQw =JՅK_bT~&եsA,_K=)qnT^۽ 3tǔ{/>adjrl6eP3L|s̾ton0kp-L9V?Ǚ[Ѝz 4"G%/ 24v3oC nd$Vj솗 q}dK8xG+ؑ9CJ(j ;FM62VrZ 'vG"91dmmπY .2i">i} E)CEșη.j#Ac?^.wÙ"a*f)FA+1o9$6g@#p geڙ%3EP#yxBh3V`~R:5l*hlN TunpV1ţndT*ëF3II8#s{D_f-t^5s.b.tDZ*g{+xO7ZZv 9gt Jd%ϨtH-@| lw "&QVeN ,r)'ǐwz (k>J]hnrvg@VFk6 ^f>I5ZK6E&k,C^,ѩ Èuԃ++w LM:5q3$q.^ ^/+c p?> mm-VڨPW? :V=TWy;a~>5ԬӮ.u~ lc ^WF^gdFȋ}S-1X5ItYOԻ)f9wxN ̥U\dec'KI޶M!=;"rz'_v6;]l!W9o#H܂9-@&\:]E!z _n1GM0ڙC8^Vnw:|݅㮊m(3Ǡ(;0QfϷr&y"XJ+رMйh` :;߂U%~s3 [̎Ӛ8ޜMKd{4 ]En hu\&y2];DW .<,&s\<Q G(N#gfk723i O\p߳(^#MyknbIR>iⱊQ'ٽ4j>eKsBX\I[j%|#hDrnj4&F ~O4Uo}/pr-gݱvQ{ DXȒҁ~?é~7Rfu+sW`Zlsʐԣ2f[R I~!=և\]D]|'Ct̹݉@W) BFY'++E.}}XS=rI/|3ovyqQpD9=+|cد2Wl<; R|yFenhP_d#G2iƆfWfJ{|ӺÒX3WHh͘ d Xmsٿş$ >~nE3vEŻY]mo7k>_@oҬ߃Beod~63*`,ҫȰpnc-FD'x]mgcT&d*Re1䒾L h O:>QduALxfb`vj8s9WC@:+AC)Ѝt Tӳġ anf3o bKCW:Dy `fX[2߷ L\걼e՘vg{ XT mH%.w2Lތj%[L>xSYMҾ-߻7hjn\-<*\y\]R\2|?ӎ<fUu6]i2.fՀNjw$o< a=N3c>]#^pA |yڸ 1Q\LkJzrFDzZɊYW0]l{GoCLCQۜI`w}0펉JsL)'qSJ3Kު,:rdpo]GSl2H6ӏTm+{dG}b^M[ȎC-fPʏF3}/b Kn~ބ_+xцN%䨋#5 #]]*]MW/FmVq2ר|jn1S-Ӿ 382XϭOmZ( 4"L*r!QCh7m('RWlp1G2˔a{G~ ^Ҥdm&WZ?\&j0my#6boҩC~u-R~f,a7Xm-ט<*%B=RuXdJ>Jtgڄ"TcapY!.VG=feGsƅM2ج#r>0\ $]91lO9>lw{.=/c%-N-Vnd,J4"O(j5Í tXQ1L%ϷFҰ%|[O[c_a'mm]n(mElEIwT9"'ئ;ĽnyabM(!˖A-"9vPz8VսH @/>2 0Ѳɔ9*>ȇ #C/يJ1C>UV@Ckqyz#h9gI|Ѯ6HG^<ئW.q њ ^$#JOc'ȭ⯷B/v,rq g; l]MupNO!s|nlTtH6,D6ne-}&ɃLi!XTycZOhxS@xӂ*HcV cY7*eq݉ bE/ KSg*6O|qlR;2zJA<QV7˘u~}E@E}"ˬŢ;T7̋u`u?Eф9uUsEċ7`Wqgz8S0 >GO^wnV ]0abCKzc.KT&6rfW݋|tv\|SlՂ @;;.^˟F/΄̃ԡS@4ek 3ebf9㿌$>&r{*h=W.-V(M$~ݑj"Zt!I+ $Up|uiH['^`z $uNd!tcqleT"N3QaC$ޏOcԐbJl0 e[i$T=v{73chW㒰:#٥2;FF:ney  ҲomJ 9eWzB' D|b'Ϊ$M>I;I5q  Ӥ-EYVZ)sN ^y70O gQ MnSK4j*߿U[ SfdЅQs>#fSt8dAѸugIӬvIOlEaPqȁA Ęo7o1!GoOt:(8ޣ^p^gH׽%h|Pb]L-Xzu*(}]ޡs*:u2E>Å`"*vzQnu4vGLs]#C((IjwEVbuɐk,;hQ f;!U-YP5.t#ʨjvtԻ8t9ۡd 7MDPow#ixY6vC\ |o 77t^MNKdƔ ԝ"nG0#`M 0w9xྲྀ!#&sH-mXRf4u Ra/]Q#fӑL/sz6G(ߢK@G遙DRjf8oC@+}d CaogW1}lCX]y]fBy H* TX` ?7xynj2>#Mm9-F,`\ ˧]#WQJK7ruGFׁs?/ha }6.eLFdC?B/,Sw]NB:PYE_T!' RVk[@y8iCĿӼ||ũլ+ԋ-_-c mUY=D%3ZT 2FqFzݷHkg yG ?Iq7A{Jf],"to46ҞaW|dgiuWUdL _EEԟx]igƅx:2w1_Sx2 lZE-[ݍ܌O1ԡ[]ɗ;j$zŷJS(CsZAܣYG.P>yx/Ql9>VU<8UbݽqZ p  elNd=|i`˩n0 _wfF5-pʼҲnͦW=i:w,k5㐥i<'c6RmsnVoUy۹]'-ÌAf˚H"\9Ñfl8.RB'"g.m!D*9L;*/3(LO9!tϙ'mk{95L/6'I0o 8Zy'zc- 1tDrdS݅kHE<^cVZ4yeCj6:ɡ\;#$+yɻD,9Y-fG}el޾=u `n<& %濦vvj]H9.~٩Ttc&vϊI/9i=p\E)lj d?KR;:)2{%ne-"TcD\7+2{{ QeL)c9L7KGͼ9.JTƠ`Xvu`hB 5<<%H"~M$]@~JOG0QviU10j'ҡ,8ܒFYѰk-Lƿ=.jlftVeœ&8>^@z A)WHU\=-t2qE?0Т?[*Δ&I4$i\.PoqsSNƮv?cJJs߁EQ{m?Õ7uuI$an"j|WP#ںFV\"!1j(x#RV4njlgZYuAlXȂūfOc ̹W<")ygM83JvQkv(>Nf! RYbǢm˰ >u*?. {8ݒHi7nĠaG>.lXƏsHf@Fk鴔J 0FA*hƝ˹%FRQm^k%(ʰwfJ6p1nl#LH,+YLr}||0M\8a:kЛtW:ηx9!Ccb%dPv@g_ e,r׌&ۑD% ^ui')h5\ٰ "g:מ92?5U)V#J ^,3Qm.0^TSm BwLJrhTXOǏ pl1L Rz-^d~ v(r,dþ<7J/.`Ms8UP{Ջ-^>ncVĠ2aT :Q578j ].m$HM@ps!#P'ؑ1K_OɃX'qNٲB3} ?]U@gL$EpK8:IٰԔ)S6* #%`:slHW% ~q'h VCb>NYKӠ\&' %/ Km`EoR^4eZ(-Vda_1|S(ù;MUǶ41RžŤ1jV1?ͪm dRL?Qz5bBݥUundcN‰Zƀ@ĮjKj;'7,(s>vvn? 2?p&ZN |x F Vei%jf # MO2qM0ƂO JqfIR Èv,h-%'(?oHf>Gd_|-V .OE"CRsٵbTH[ A`9SEXT78%<;4w4F }xYɟ۫<^*_CcOpc@U F"4dbŹ}x:I=##^U7^h] &C+C?%Tz\"JE ||he{9n8󍖺Kkpf7Raù7>gzj_ſV3{JsWE>~03m=1 =C:`fy3406 |ޕU1ʮSSɂ_^CN4%o8튲}W\$&u. W;ؤS '>P\|lc)]X:#HAPUc֦x8t ?PaxE=Lw:eft$ `z\VeViWY'd'ྸ#jngj`K;ŝm=o ϑ~(67u+$g)+[I S PSy'8<l̓M+npQŀZKCojҲʵhd%k9S/JVVbOM ԙ@7XԲ|Vb;I)р45 5(/GO>ϟg5=߽lif-o`hHaFP{]0#kszqDL4HE9Es,Ǥc ݼx,M8Bi&bg&E;-j`00Z4HoА+5nn}'y,@* 5ƚtE[fA#}.9CR#]][vT. qo3e-AR I+1|+TNԺg`ЦE?//hmWf>(}CEME R4 ؋]iyy' [Ĝn<֏ns⺼GI{eۮ娉^bߙ`J~YpA˻*>br3YKl~V0B Xżz*UN`A 7"QXYJu@1 m 0ZQ %ǘ=!8N5d؀K4z Q7s'n}Fl_UCY-wlÞ XT$jH pbȰ#-)cfsY.ބGD;^CI?Dc ~ Xv 7j@=w2cnta&;N[cσIa \HRpu#Kk|o g|Dg8|y%>ૐ4~?1(q 3*n/Uf⚽%4f6I!طk,GQ/jHvVDɒwl;'x?#9Au L{mOۘzB‘v]۟epx Sk7 SГ;k64˾F明nqɝF~8RU(ayG`{f0بM0kxfa]e+qO)|3aūdQs3$qvYXHC:*R@OV=LrY!M$Y0#s|iLsh ;P>[} >ܥLj9@uu eN9X'c ,d Ap 6K-@D0O(>bH%:gM?~1Fi@*0cfqcRԭ 5% ]Qah=:JmStR Q8Yx:ԡj_#KxrUg[猦,&JQҬ{~&F@ѨZ.zkV&2͈"6e,e 3Fia^LN& ؠRI `qD˞} joI2FHn@[+VǢ\ۓ54A h8뤤o!i#KG|9!R~ w:ۣ%Sm²y"6h)lр9q|Z"fЍ>fS]f#ˍ4 L] T E( FV}蘇,wV+2)ptP?{,e=| qLڕ"*—>1 }ي_rNxѮ=YUΟ(*z޸dReH#>G}8aQ/P :;4I(XPѾ蜴- @;&1wGaU n@9O{DΝg_ Y_+`=ݭa:CwQ+݂p#BfMjAnFϡxB1Y#=Y"ҥ$[4=SYn2/n$,A JGLz) mJ6 +4*^)I؂Gµ- 8-I5:bK׌LgBf z?abBLW玍COIc]Z&z*,نvR|PA3Pǀ)Z\x aA #Ϊ˴{hًHPq+y{f*]|WXϬ{cf6rAⱁ=MW4ٱȲwt]Ѩ SfG0~A1" Ⱥ詢R&dн-g`~[)!X%zYl<+5^"g65jr&o&\8YuElFn3 0 ^d[yIRNMY*sa EzB٠w/\$w F/7 #7d@^,J>R! *mmU>G|2;BtE#”gb]-;0E.[yM"֛MԮC YM!;7)S'?BGҘ/lN&RZ6@4t Gb=w@Ib .Oە8D0D^fC/*7TO֚:䲁SQk,)c2 N'Vu5~V^kxև_ƾ17fkȳ[lѦ(r\CAZ"{x1w#9sUeOuwbbB?FtYـGVET[RQwc(Cb:\Ax~'zk+LWZrM2(["+q t5$=:JtPT_]f02GId fKZݠ`qa!אZ8DZhf5BQ6U`A˄^'.9u=c>6:V-B̲唔/TB^kB?e)б=M!Dm$Td6$!`i]YzSסɤHcpГԎC ~m>ס` ЪHZ%Ħ-An \m~f %1b3V|K5RV2N6T^p;!k :CHi&8Zv,g|?_l:`bG.F-l?gW%U=eX|d+ip l~|v-1 TB~ A5d5e]jL9H ?S{mo Z:!£'V mg 9Vj὘q-bS@U+&]eH{fIsQ)dL@7eq=4fI'dFy#w21Iw֧.qK: 9G<[2u\K50>}ƴ^sƾ q$hEE$3 g瘦#\2["qȾPnR:E1$(E{T&RDpߛbYv ]ڢL aYL&LU>t!Ħ4y8mkWpOd]kÎ}r߷|PҪ:YfPu A1.!B,_).L P͑o,ޠ>S(n;~V0Jj#*Ӕ#f3e6dr 7)aLGb(<qƤ(;ܖHXɕ;L6Vqur2E/(mv;ڽHHb5]"d~7M6˪ž{T"cGk1Տq Lᥳrߨ f%7xV&BCh8-W4p%X0Hy#&+T{?pǜ=kDl訂kwz7޲pDtVMh2{Mߣ;STRGp ]Y똉g.$oU-ˑŝ#JKee|Dg>S@\N!VDoNxFm(v菽u`Py'h/Y~ EnbK3t $}:G2+e zT_N;Ndhʚ>O~QP?*ڴ  ƈ^)Oq*|AM_◼X:|7OJE V?W0=G#s&3g/~=XT؇aܵ׸$XV=@]/[->69>$6.5U KS7KX(%sc+92Sأ^.?ڎKj# ʹXY)?M?%=8nC/ ؎ R$SFu@0j O]/f.TQ(Ĩ!AP8`{$93Rj9+S Tx GeCtQ=~0j!H^`;(;yÀڥڰR%?_Ac:f[w@C= qDc6Mb՚QTyåxez3Ȍ-q 6dzJ_{/6t|KN*oae>mbe,A bz+h,{d궅MZ'yq߳Im*{ӬxU1ez=cզ@;U'9O[7mp`LsH J[t3XLQ8i9l#=,ā~0B4@-I= w܃ŧ$ΠT YCOS̩= Yr_D4N24Jm[9X^F4nhlǫM$QVJ4i XT\@Z#@6`\W;PJIHSS$bYݪ]u)ݪ,bVjՠܡۡ ϡ=ߥhu2X < ]fh :tfƆMI &ByU>aqzOPHA"1#Fx(dn42-\}-eouPlCܒ ]-,:Vu[UH:pS(ZOV$]mc&ШQ9mS%9=XlR2ck!);M%1. 8(ҕ)3f}wNJ]1 v5b-y+YphAg&ETf}v:/^kFK)s,Q]_U5ߪ*3`&ntgfHSuGki( ?OeZ7smβZk^\^h7c,>?Jt(o|fhC3U\a;`tVQTK;aAyFbtjȒ-Z_$49f} JoĒ~|WXjtrOy}Z-ODZoofX/BV~[FIv+4y/ʷ=_/7*)"1kltΏ5%,yB%6gdI !D͸%U{dU`T@*T2(Gle<:K>Q2d)ZSiH6DQC-*=2j-̻ = *seYѻ:4ӗ=UDv MYa{t2+֕["/Sf97\70 AjMY)LzӒXWQ*ųQf ;[M jE{nNB{_ŋC;صKM3dOg  Ǵ@vcߣ#ڟisJZ.{89Lx6*Gr:)6;Kb}v-ߢB,Y7 6'qƉ&ExģBX<2 I|#yf=[D5G j)c7?eW9H!A)L'pQn'!%FHKK)UR]+w?>^np3{HA"=}o t=bo_fNA6ԥV jQ)wMd8 @wZ8ir3!DժĵȭaCEl6f_)h3㻏H^:,>; MMЫ̦ZkRmvUf 4fT+zT笌DwtrQssYqGᏙT9֙KXی v(T[ a{J-_6gK3료Q4>>1hq"^U:m}_Ziɋ3-#$@Ղt{ie ՟QQm';?իQ''3|i'.14 5ij6a2f$du,cBL|^-O_ "ٌ@iQS\]c/;`<Ɇj%j.)*$R\{3(|8IpY@vVf}s<5_5BM0D]PkKҥo"s>X繩Xh= MZX>#y~B\\omV`x/4 n%:8k;,8h-@^D5`c\).zw+:,%-Ƭ_N;ќK 3&2 n0uSJS8Sӏ4C F;}.IM\`s#U^xO|~Mы?-5R+[Q#0Б׏~PJa:5-6av%j8h5xkr!yY|>-=L/SL]' \`h3t?Z؍ou0n?/:D)M,&R?Gӡq( SC_[lM(coS 's7{J&TgڭNXu(1_S]hګdV"90D+l$(,,h4)pFH+.shf8 ϳs \]uA!m"4y/b8rÅ*>J_y؟t͓1(ضW2 zul_9&cMiXY_6ZuZҲ,?1di+GZpc|1/v"o  Z CG&!źR)~EndN{-.7 Ƶ%g``*C\ $b4DN§Y&i &tSpO!v"T .jYG/0# !ϡό^ܺZWiO4EdO} c¨>,G;1Ey3  82C}^K6PqKg]q75M~\vsݿŘTZ!՝$IҷyȾI ܔ"_K߃<Mi&b 8`ዟ6L)HQ3'K#qICNi?RpWa R*3.1"j`AeV"#tBQ5Sry0eGt~D{os{8D%yf S~xI,GG Eɭbwa%$G:J_À?+2> THa  \ASIH;bH<uvInwR#\V17}kFJX@\1L/Ot;GooYɯ3-xoF.pmk1_t=Lz  e#KF>BE6WLm^dv_yaVREf?f g^8ߜFC|70VO)M/Vc˭_ ?`X.x FY6N~g\U?yDUwNVƴegFm8/2ǘ o9KB~ĔES[ySyn 'ل"ʼncx&scP(]2(6-gH#Mf`I8~(IU/zGg< Pk!o66u,ASRܻJ6Wprg0x  %bScv"5h˽©뢡(?n"xGQ5&"$?ƶgK]Y vŘ~z$C[Ϛȃ Xlj=pFN5TB6:sK$"Af'{-.Ak#8v $(ƦXME{̾PȐZuVXa hLp w!8Y'} ,L Bn[NJ(DZH%Hy/7//9['QX;}i4vī+ˑFZ}w$ň2ڬDY PA\Utieuk"Ցee,S()5V4SϚ\VWti6O J"AF>+ H'i}Kt׊J':z,a.($*>bl _яNwXJYvO=-/ȃkn5$Vq NݫMNBg7ˉQA)LfKe*Y'ѭX[Nmc ap(h!@lmZpҕ7 P"STp5bu)(cMs0건Ȁ1%81Z &͸UԹZlVETcwςgS>AW_5.0iyhI*qWSχ꠳{ЎFAB%c{AA\ՇEu-*0-9iqJrg8$(Pϲ@HHTu2G'!hα%4)8؇,(mv#A Y}Zΰ2_)G{}H4MWWEzjSf~썢Ӓ`yLkHNDFB)^;tQ ^ˊPFRr5c1ja%'yT]ڷh0f|@k8E(4Z#- M` qDf7=Ecv@BE*&56L#!5c Z/!I#&c?43CYFYKγ><)𙸈c%&n(Z/΅3;]g ylҩ9iK*HRu8LB6X+6rCoU^d~y?:qҞOx*t>@FzEl!q^6|U<^A{ZNg-%a3kWikO&$)'[FonZV{լ 9چXbj0$/tI( 0@H(Sz/j9mneU#tݙ"6b8 {s-",P=6RlS($_&8:;5XW= ԇ(viM9Gf*wZXޙH~ .ds;"~J|Rڞ9$g +g RA=+5+SvH:H0Xd2\gQ`f-Y*8FNn2|sN./1%M_\?՘QC- ߑT `ڝ9-!Iڗ}J^7hl?LԿV%P^B0jӷMuh|\bgX0Z?FQ/Oy%U)h8禱]M8@ugDTm] ax[vhtOpg=`+#]!R1e0w{˼w<(cRԆ,sjʁۊ6ZN5/‘ Wkl̜S]۩8aץ˸ Ӹ]£)V3*[9Up% !z'grGҜ 2P%@IpM!u@"WBV,_Q ia(9gw{UCdR/p4@Ɇ<釬M_'7mbD Ƭ2eM M bFS*8^j(%K8{:tW~.MyNQ'7U؊Km+@>}ӫ! [:7=lF BG;P ش=)`O=Kk]Yķ) $ߌvYgo`uC?s'qE;ֽeD? >]3co"f % CGOw1l$_jSB%Mn=fҋPpdJ܊s#6G(oz"FoSǾ #6Z`o9 B*ZIJ ^B!p]?ܴaDon$ӶAG7L1WH7 u~HFX{rCD,ժ*v=ӎW*?/:6xp댠 ByU6Ҷp teO"_dzUR֯| c_hI}vjjҗuV"{30_a.)㿲`2B>K@ (ޭUr 8C"+-hJ@[ ߒ7# z]& EF n}]id5G rL`^:?􄱏B  QA랁Ɯ| I]H, j{N9I,JDjBV(TGl&9ҶT)Bs$0gVOm{:">P5ٓ*j~c.@[ V09~5qu!zW3q4of( ǒYvbHp8\ks@]1B$ 4f9W(:)  {?Q1b<apE}FVؙ衎wtIPxW'n =ޖIkEd.d%ܬtQh~w Ic{ 뢀J^2f~ ٽGz:}I߂_Oj+#^[eaP;PBn,ZZ%&?eEsjbBcdrXubޒA&69V {']/XEW(q.V8#ebU-؇@OtY)5ة87Nd޲$h`w*IhךsjD MηCC)_cH8r&a~,AGI6'ʮؖ(MjV5`!I N >Pddڂ.|!lg*YGɸ lWU0Y)oʏyǸ-+,pJI u" QLqUodu1ƷN1[Ar<S̘I.cIC^(] /_4nE)Oc^,II0԰t%:v2Wvl IjE]0< 9:_ŧU E$׽)YB&Q'^Xן0/$  P,]4+4*v;y=#sF#5w/%=5l$~3~ P%Ǫ&NMM;jաLl~=0jC0c8 &=U?{ sB!,Z>+"`٤'>I.]ƤqN+I*A־<apqMb`<#-ufUb9. Ldw7 `E>Zǎ,PtET#M?7c1ЖڙVQ~r|zA?PAːt_x ystl׏$Rֲ s;S\`?8PvJ7O_@rݷt$>œN!꨷`PV$3%PQȪ,/7cD&JI7==61'>I;% %Jkil–h4K.å!lOO;.&fS#zSj9kМu^*@)TWSua>Z.o˂7Ȓ&V]ڞ!?n%/ZpŽavB@>FFSҩ^LǑ?֣hwks[ד+|mڷȣV nf~Gkgey2J:1:Ø>b/ꦺ3 u\4bgaem8d?DS)׎7Gsҍ]#Z4RO o!S)XkYl:Mxn8DjĆwSygP4kIs;A[Y=;hr!yU=!v ĵ$Z@dq X>œ{H:4$!arLy0i朒B*d=XpώG8DOg^ 앿Z{[az6yFpw I|"nPaĵ ^v  WIBٵM5h{cT;)*EL)(Vq ſjИbl ,frROW_ w!Xy#9v.CEbGF~[&>)VRdےY=c 櫳fh)oH34oa50ќZwA|PMtԽ4I!g>k)D u(zNwr^ɭ-7 p"kvqJa v>q)3r !49 )ogDI7qzN@csH٨󛚵!ʬ:\\[-f ~-&'EM4&ܥ^aXv0tILoPKҔʹAC`H BD^|mUMpf5Eȼ Hݭ~qψo0u_'8:wOW )ӕD)FSv>u+9eAGSd]U݋@ tԹm))ǠvAWAY2d${">x01GI:]˧iW@ۙز~PJYޫ+t7*)) L K?c>a33YvO$N :Ad`5Ɵ9x*[KHLymp@.{`ɁSk2on;58f<ʐ9cXÛ- T&_Ң9 )C1>fAEePlQt}ze524N~$B?L<=G7q!(_;桋j yҡjNyt&7vI0VJ5,rZQ&>;qO0ECD})'iZ5̭C5C(WRhnJrmQ> {T7S[&5O [cלnE/HZCξ$kf~{C-+u ;j>&bEnwkՈuI;|Oa/!"wK]k.Ld6C34rC̱Y>-"|od}}1o<%d?TLÏ#9LȋR9ofh udtxDGΚQ#eui}~pEГ7!NVv=NrA1LF^81/<:6:LmrT!SA>j,b5n#{~dO*L q?&$r̪ʂ>4jV>rP0M"l+JJ9By>Gq|dgNy#b֙ɺ ȧC_T7'ŢlnW OTa;#ozGA{0[SnRM}\[_ap\WWNb9@T׿~EcRI%pEKOJhX$>qڷd}XI8er g]aX.D9]ә<H1=.9% 5[do GBRhG6Md6!j|9A\yO@a prnO[_|>:o n S{8MZU]E71D-A5`SۋfsU9g-pV ;u50/+YQ؛h5A\5a63 ΰ^f.%#ǡͥk8!b`5]ƸEb&'} FY}`WD#~Y|J)U7";\ xK'Ӄ܁C7 D{d~LZ!QQeUdv$WSK}_İ#/“axɁQ/xPYdFa/|(f毰PC}wSFkF9ХS6$"N.k/ z"uC G> 3Xpklo!6fy,I#pm8NAHD_n)Mj:]Y&Tu*Yw(sFA` xE!%͵>kY>0q%]ԣL?HUx_kNR+ 4%Yg8UeETMzQ+(uz4 0`EX`:xV=I892#.Eg:-9Mc:_9@~=Jds|ukD߇{'3ڗy7Σoŝ<9J)" >K,vD4GA(<mhդTt-v!.>ɏyt4jhsgSN(O[@ 8KJO0Jh8ZBk8>a/T:uZS/) onHV38mw8>9ʾ}b@>ȅWFdB҃!Ot-وLû6%'ӣ_IHg eoqE5p!_ G=Wk#ጉQ<%woѥaS)oJs:wE-kNjR6-BMա @m %IGZ)Q2) .H +PRZNHP =h($ke*'VJz0s\ ><=fV= r-lد  d5vtNs cXNV콣$+6`:9 _LAWd[)s]v OS·2M0Tt=a棗d;\j>ն8%oY]&!c~A+NKj\bJbuOmS=v,yϩ$bj,5w$ɞ3F,M(4c L橻M*⿗o+/!6hpC<KGdأP΂B9;J%p֏DQq2D.a>[OCHJk"n78w;l_ko&;Pӷ(/c`j#KNBR"10ȝDpijH{f$f/߂dO2(z"^zh:u aynGL j45H5&õ1z3qD}vN2D%irjwD'w3m@zʲ5/eLLﶞֱ̦W_YAY@LPNuNH\آ9[K`&䤣54),?x^,>O1.է@0ۏ}+ӾQBIj#8]+@ *|1./ _a:XvC΄䍮n'^ZgxqiqUc>AL-VWhzLx3%9ZC,MhXAJo`9ٽXz?OL3EcP;ΫاhϬ4=gs$za+o7o>U6Cy<;wыx a{q8BeAg( "%eP4 t)4'o+801.{'_ԭa=Vz6>m,[292 , # "-#zhh[zG.$ A[g4G%Qe`a}[?ϰE&T Z7+%&䋱3/ڽ\N_O$R,ޣʴ 7⻋WǺYTS9{jaӷ\2jnD%;F:( 7~ =BRHBw.@ZiŪ*N'U~$yߵc OQA0mͻ6$cb0 <}W6p^M?Ik10ٹX3HJ/ږCYʭ,@jv-BV%੦՜~xYh c=PJ#gb`A/ V,8 bi4ɝ/ 1 Qv w GL;p'X+g GFK^$Nun{ و[cI= wJtR=!giHH pmȉtlWf; .|R{ʽԴba{I; \1b=ƪ q_ƏN:WR.ЏM1\5R! gq{BqIHB"Pz.1'L,txel#lW 3*r}bKLBxj_)/  %N]CPK/i՜2EnrCfQBאlVX6*:p޼gxǓ 1{>ɑF1S`@ڦ!Qoz[ qYgh 1vhTЙk~ uVBB=Z8[L j ƐhFjp<(1帱(o Lֿ.2ܠϚ"{0ǡD!3e9OX/gt+l 5C(%F׌{OSm-҅|g8+x'S Z|X*љl$?; LW~K6ZS'`d/̋!Wu AuI? ~'˲ZI'.L : `HB1rڥEpLa3Q/=fK>[ ,M,hY [+|,z!n2A=*; Mض|ŏkxS84&9<“ךhZ}A@ tdN*\mdsF[An,BA<Y BJ!0QU}˗:'=56:R#syФKܐ8YHkYM˪'ʁiIZDW&4C'^Fd j^oqKgbɚ@zVmSL<.|exZ0D3xіc-EA]syx`}$9B|f!GPR-+}{lxf^S,0 rЎ5?2Sh!{tp2B6reSr 0|$UQA4+ HW)J~2IaԺl )  m:'?=[dnR}z4wO4/d oq,<-#4y}Lx ;\p~V`Vkx雵ZEIh 1D$A{@G im6䏕Iة/$|۟ }4WXVQc@/%)$PD h&)tc̠rTA)~G"Hl*k4r:|J0_/M@le9tښF"7g{8>_^eSҥVweM̳s|/d$T s|7߽L(z3&/Jsj ǯKoU}Y_ՉOTcLZ>g>\UAQQQzh#ڤQL*W! .=k ,װ!$ =My2ۗ.G*Sݹ/W]7l}Aa9џvCs6$Yݍ]N.}R8u+x%-k/` j7iهeCȿ`b_UZmE@ea/E$FZw`ܝko"3Bi)hw(`yE}A17ȐS ^n~7$yzXܙص1`&~HZE^1y/Ep̐[+f/3Y񄵔k|XիL ,6 $BStG&oJ߶?zmB[R5ou6PqrF\lWmb_dCcd(8 IR^rrJ;)S<%_Y ˂Hd #`[Sp$A&kޓ[[BN B/+ Mr*JBԦ^ f[}K _WVIUxr]oRLIaN&Ƚ:hڢQM|gM%Ca7!)e%"u8X6I3ZK=I| TmfoAI:Z7ؤ2VOBnpp& o`ex8o5/"Fvyl*Dp~jJ+B8dXR>-9aBm:VY1cA{6H1mx9'>aUkQ"X1a?j]1G(@ǻK1%>:5~ ۄ[B!y߳V[`HV2?NwȻArOE)?`lm4ɾj* ~FZp,jM-,a;A۩ʖQi&4MhM%8&%(gHz^fY MҋEЮ63㸹`Xv68z[wCP}YmPj 緑X '7L}g1^%ۢӈt](WA4Pn iB'j\WOg\$U5HGw*6m0¯zZҁmBE)q6rI_EE@l\pkG)Bse/xۗ˶/B)\CТ8Ysn_J+Al_6.'ɘ ]`%(+N_ഘb]㭚MoA'ur>RlImϽi񏅪ߖ/uIEeiI3Ia؋k'x+2 ݧ_QQ q GO|ujE'fQ9i|IQo|cCq|5(I Y(DsE6!f%UU8{g$Bcz'VWf7h wW} %d׋Ky|6;)lz!{7'D:8*D |CJKYol$9ͩX#CtzD9L%`q긕/ΩZ_E:L]nQ`=br#ݹ` .q1R]=spI~GY~ied'z{ŇwbMB<Kal&J1Aׄ;Ϡ+z]#:oei4j0ruz]^=o$h^_ڬWFK|aS&bGu$\0[({/>c@8j:K'HZg6m= )JSujTTb[kqT;o{4i:8N}Ww3;Qr.s!9r?OD/ }H蔍>HDEM[[-xcvV:S [&n#(t$LX[ZӷAA0:8+V1Fi `rD,^;ikCHSjPUĠHe?Ot6.qI$L!)g58qx?y0kOBL&A3dJ.s)H)|x]CeHZRGU5ڹ^fQn'%;M}-q?N͂})R6"? .&ؠ$DNr67 ՟gFt1Ebun3:}\o]¿$L؊*6^1_R8gl*'* pw.w0Eo%8"I{wґsCfAfh5]Hg#u`BK)-IAh$dc '#,~@XJ6{Nd/4;#nH3nmྔ 4(7 :9TCGq7D6+2`C:QV19q"?x ܹbn`+Xpn4.wߝt<@YY_pj տpE#.63ю 6bn8aKSȻ{xj32NK%_NNI]pL.Y1enwtcn%[xoP]!ը9<$!~KdYW #(`_t<)ń 2n{fm.(}&@ḏa MT wc.9وx)a_=ZQU0r0hSj  (1QRzi_5j3UK UZdmʧh/ob9 ?bШhVm\ !N, )NW-q4E`kBkr>Ůa֪Od*nM(L7Hf 6{\EKzm? 5r7z)#8N;jͰuX nCKJS2-lZL 5zLVHuy7f}W %smza+`miC>1 kq_E8\ex#D@.8LY9 ʠ]/3[n,ŋbML.>dĝ$Y(wDq1U{8sbYdH?-`.k.&Pۆ]Rzh:Me7-?8HnB 8@"#{h9 xK* 0(Z4(GrH-,h#1kUݻ4@5kv>A~٘ﱬC%(hrUY[߭)|EH$x:#mCPKġ> jHq|-uIjmꡟ& qo] )֖@pijIB[Lm*aNPblÊcwhQzԁ W}+=kWê 8pkWJRVB;01 K.;4 HKXu@yOQ͇D'L!P;T r静Ʃj 94?d+}}.Uj9 ۀ@B2P]\yHUkC+Ih|dYtc&6Uſx^MrW`v*ȉޤtwy>^m䫞х53BҰ !mrd-@F XT/B8^4$1zS c˪zo:=^{ˠ(F]V] ܫd٫4>G>ܣiD_EDXr|oGA@xSCJ-5f)xt{Վ+>^Jg&Gy ʉeg2Kc.l# :Vㄻ 먌h<ʓ*lápd~ӛ=3bYUP-~ )yWY&ؕ?QtؑIzjdjԃia>sL`)Yނ9o A2I.\>bV9f-Xa(cUt1UwQW(zbs;ۃۓ (sB@`g>C:O︹g [8IʶpSYSj uhgZmO7sj(t5nzjg@Y!gc5{{@QX^ЦHxOXwԡI5_pAjyycRͻ,:Pl~=Q]OcĨKni+\xEj*;X4*0BA?*e [u2D,2WlyX^8}IXI% j6`⼶LyK`'?;{!/ekfx.7p(U ebpF%,a,.?X爚oӗ\ ~xOc\dg0Á DIK^Z“E`V9Js^ JCSnC]tIDFDy\Tu;1 I$&ZжE%* 'pm69}mJ]"ur?È*e|_n entt[O} G<y TE}REnIakg]~བ.=ݲLHH2"Ϸ}QU ڵ:x٩mJZ6|Z0v0|G=sVTY5xuxeXeO>kP"݀ƃ,9e6HcbdAw$nrLig{0) = {'5} t12BYIeF0r㚻bp[*j+BaqPݡzĶkρ TX^\FW$$'5=l-o/y-Ϊ+'̮?La T+&ȂŖXWM{8 CMh6\rn5ɿĊ&eAORH" n5f%kS[暫3nFl}%0vI1H/ Mݚ<7Gz-=#aJgE`8c7{_U6vXLb~ޠ `JJH ay4JDH㊞x_҇dhXo&'ދƉr< 66l[H-X. ݃$,/׻ksUJ_âmt@@y(קBp=#T"L~0JV74*o 3#^,.%=U4n0XwJfc(|bK+iTMO|Q;ю⩒M-GsީAwPin9rۆ.`i\lbnjmCX>kF@Mu1q4>3{LVm$bȖgH=_:8dACc}-n2Cip͞<dIs3;N$nJw0e&(vpxiދ\H,7ܮYymv}P9H/΁I.!y7̪O9NտWtg$)Z/\kXtN9KO c T04тlp|<(fz_gCd]>kDyCW~KW1~wqp3*G90JlHtj0#L`Fl[BDTrSB@{^a@ >:Լ*96 {:ାY2Fh/r>wnkSvzh^{UQ/1y3u7KIQTLje8W]G#ysTފjm*wV#B;&{m\u\uk}lS(B9YMJu `n鄼Lk8?l*`JIci$m䏵: ڠ 2FUYPM%ZM+>!8˵J-5Xu;! U7[RcorݲsNbů DžΌZ:πqu}w&Fj:f*qᔏ zD(h+]`5~˃Y@h tE¯en~E;^Uу-{C &]!hOTC=S0?mm8.C;;f^mYxjcP,)0<%U8?+Ƚ ;x}^%;?-T$`-ѻK?[ 8U[ [ gs@;!tab2ĭLa&#L я#9,tW|4D  6 VWy#YיBFhۏ}q1\?Dy_Q!wA+O=UŦ+PA;X&Ǒ;X'0T^8JWL1 @51FbŻ r6B$PSh)W3=A 4FdՒX}sW:_Ԡ/vCTNvOնġ)2Q]XdQ,!^T#R6'^-t[hɳ.yҋ[/1&*5(d;Zuc\DVSKT##URΪ!,HJ 8T6HQ~P/ m] tzK021;XjJ xcKe~`[Tg0m=D#pMAua2H#?rKtvu",-" {RCm>!o.[) ?z.j?0ŧʬK[VRV EOHrPP.,KckyMƛF~=J<;`XGmt+VyRv|kw[M2.!-%Ia'ٹ4\U$x>>i7FM/U Vx\AZH6kWPiDkϑnE}+{cbC<.d?7rꖤVG+*ǿsՁ_o˺=mJe\PW !3gthM[3 㾋 | ?\ajLیg/ yܴ|dƦtWH8[VIbx!Hu˭F;6OvGQ>͏ V-'c uJZ"^&gڹ=i"|{3;67Χ#4.l mfO޴b&j -{ct:Eg\0`b }B%/]8SZ;0[v=;S0g ɒUiY&JLTser-]& &[u,4}1g18"\*:9>EAV5pw=Wa 9Pmp0 2e>k6ftk8&ىH0 !PRa ;FjsC3qg |B|+[`CF5 @/ Z:~ 3}1EZV,xO _Y3 > @RjTۉ)dܑh 0+@xAMQɉ]#ds{ij}PEI/a .ݫ/9uЃqwʋ_)KP(,=B DCաħI>RQ9ۻLo*\)+ՒЋ; Z l{`n xyJvUcz=r`+PoHZSDa.L' f"U:*?sH 4a"AwGx/Xi'#0>]RW"7#B;<%LXǃy<*FeQ^eP0ْeG@NL[<\. R h! V<3Rc+BE2.P}4 -fN!B~*Ė *ˮHB3:_է(rN3U\>Ȏ# 1+yXG d9bba-)>ȑXa1vڷj)ҭ.- [?#aeFi)fE cP]kɔ2^Qqe;5vSHҨN)MX?N`BgYK9$aY?)AM 7Ƈ@bHg:t^-)N懯F"Rad^RW}@/#K܋vou'%` ϛlD7k30JzN=dFћe;*dM[E M"^ȼf&{h9dOrn?IG1/s䐑j)n4"ʦ}+#n#rӑӷ~MmF>&ʠDQJD<؋G3Hq\MӾ EO3ڣ/G,7SCP5vߐƧ{fPu0 &(i<@6طqM>}sjѣ`;b~go$ )@ȷڛ7S5{KwKz`G 50+ YEX>C])S؜NAJ`֌ }h2"Kn i{vѸBAYpVmK b,sN&pHwc[loej$yh2JKBOAH{Rv ɫ])YawL#>s _o{JB=jf7L\hV>IqHc3s{c"jɆVRcbܲrv=8J;g2ZߍS w7"0X{i.M?&$4`I@}Z3Ay>/ZXq37\3 1&!k8R(_jp$ 'Qҋq…93cT; !xY|vbp GZ7<7h2Go5̐t[K88^f@2 N'Xjqb8 $w},+gY7!}Hπj+^יo:eGsyO#ٟ< ^sG.6qaoYWŵAgwg(7k> BbѭJćyLU6gظ@~e\(ţH2iW~Rs撷M9p;[}6dvOA.p|;›>g:Rs "  4m  Ǣ#{AŮ|Y-X7R}:q&ک2thRؾ {M0Yׂ|@X{؇BRxs[@j.1!_sHm&JU<aED YW7,&KB=Dioq0e8~(7pQ!^ŒT/D˭u N1ϢV^l{VѭNR+## h~gmJ}ت5w+'D?%kv*!jQ!Ah nbtܘzTFyH$oɎtaxd՟G.W1[;eD模Smg !~fj2N񄡻MYnO#tG5ˆ WjauXmqL8]@+upXqsn1Uݩ(DOiYF/q9OV9v2Bw?7μOR&ϮkOF8z; w 667҉s,T+PY=I_`M>z@ShVr@k`Tګ7Xw$WHH9y6 .u4 aRW9}GE bu 6#iy~d^U/cԟ4:)B,7vnTiM8 }^-kL&Y|pSY)7>)`652_$x&ZG )⥌oGŸޕMm*Mf%S `MWV/ok*|"Fkino~ouicp]s)ʠ"Q7D)A( V DPujUI8SDG\p8CCeHT&>{hE MaF$gF &}eE7ېu'fOߔs@dO9 Eg%lXp89+ʈỦ+egAM}R tS%fʗasz 3P AyFFH UZb+)8#gN6#WcQ0=➌-}C36/9.W36;`i ѵnW[/蠌g$u %TLVXycvwA9> Hǽm1ZsYFKGtK*K=c8CsSVy Lk2 )WF*Z'޳6qC`ȱMl =Qkv2Lh'堟'r[D@rMMMOt'|Y,c.zgGs{hutp]gvbTXlF"&.,~Ǻ^x7<fcHjGOInI h!m7CnKP$}9֗{N+WOLo:pj?׸Snx 3rW\?ѢonA*{&kwz΀:3vdr7g4ȹOaf珣uHHix^غi-U} 8sٶnɐFeAe0[ii{q~~g.B7$QY0}Vj(Lkm/^5|;U'R5vUui.$WB|\.A$M5*:#xCq{! +o_&HS W?¢Ʃ[?OiAٲu+*m `> TH1(|16R̫ݝ*o=1wkNlκh@7c1Qp87EA]>cTV8$ƵRU(8C6Ѡԧ(94Z^Qt֊8͖8VD B>W2(C;$7V-pcһc] kg^nDZ=JoZ*/%F}Z3Xahg>r@B f&`zY$Q:W8dVxДv/o("*KҮٔ٨y^E[Qc+'ʮ4/ ('h79`!bM0;-vRV tW;g&ډW= ]Nn (u0s i0eKG_ aqB,1i*S.A&nK=盲]؋=Jc&t涀ƫPhTXLJBtKO2g9g~PVk|R,.QGgyu/?r&R&ZszB hh `.(j}ZčdSDk}6/э rvR Ɏ'q`(2:[}~u>LXvy|Du0EQ8 v w,lU?ߌ-xY{;;V9B.Rtէ6o/Z)BR#oO~*u[=Q6y ! k%?Smt7>DJ-?"u]f~g0W  $7浗($H#9.:fԑP1#*/.H$%r9.btmU=cAp$sR7(Ȕ'^2W4@85IMtf%=G"m2 IF "~W{p:XDL ݟmJ²ًNL0+# Ԏ#?OJ"* Ԯ˛/G"0i i d\}W(AL~W(ׄ́8yB1ІPu}ЊOVqn@;h`Ng5&;saV ⿖D!I $#{j]y|"K4x:؈? 0=A17I!33F(VrXJ&dOu\6_oXE5Ks)`-Yps SNŻĩVW/qΠ.qd'͎';(ϼ#h սQgiSqt6hs=:#ڌf= Smw^ =Rv Dj `˙L+]'Z?@,ု, ZXX!N6 < 8qosDʴjaќqF bAߛ> ͜e6Q]Y7 -Z,M*6KFl6A~Y#^ŷ9R7M, m[numC@2 Q"Ygcʛ!0WشgQѶFs#͌4ثˀ-سﲆ&Hwq(F! -7*A05CD + fG:YFPc@7~%N Y~(ړDhjCהrd5ͼ.t9!is'}٣1kъ&}8ŷA3 %\ 54e.~ eΓmʛE+[-?["򸋥 L.k.DZPH#=sk&PZ7QN#Tpk㔤dʳC,AoX~7vp_P$2Ӫ(5c/NF6d|Nmt0M%eo'C p8z6f],@.oC}GT Ҍ'~#|a5)8M?gPI3vh .6Ua@\'E~cU* +D$Fh\^a@V/s_k\1VdHP<{ 1k$ھ+V/xa$M& +șԭ:cd54`N`,W.HR5]g )Ħ@yi5qjH {~M.+sDNeZtjD;ҏ^svD!>m@8x__^!"utzn o)I$axOi8G3nPh斌0maV|_hĮ^#8.Dr9=n@^XdMؔx5vVzB#j/u7 8atvq q3]̝dvy"ZslHG sgق`A.g7ﷁ":NqkZq@ ;U @<0/{+lxVg%>WOwwydj|( 2kZǠ?oz{IA^^u?6˭)"eC:Joǀ#2ݨFs=?IK~^^Exst}e }˰EZިބmE)Ӷ>+f;f-aEGSd$9ybnEW4Y3l/22 6-睿qPK'Wsk8Q7Wy5^ٓD9elȕWFL9MpyTh7&[hC^Y;ƀka,=QG,As*rO=IpV1k5$_SVnaV%3@WR+p8(΂x^H _R'N5~ޤ7Q؉  #IS"D(TDnR= k9lɛ2oA/FN<"Qgeh1Y U?^e:md}x3nX>[ ͚@fL"Qbー] ,S 'm|p¨J̝JTD{ Zu0Jf_c(0Ȑ TɕfF!_*2*ќ@`a_6dXM)oEY=l<ɂ[-XP 6>L+3kF[OK8GaQ3<c[rf*\I/0M{RhМH;x #k;vOޓs L0 cu0:Wb !R < d/`ogKSA ' zj,?>;ArdbЯ˺$1\׸^| 4qRQ7 6= Yx&f؅T|o^L,cngp>'t\wnmSz'gE,~M .?J鑃x ]Fp S2#/D#2Ƣ]9wMM8!śgҲLf1Gt 7Nx 2Mw#Ճ/14KkQM~!Sw bHVM(˭k?c8B#F1 [)k"x8?0o`DŽtzPbJj؉;"^90tp NBzb[cv[vW_ݱf#Q 㴤~|nn+<o}?OcqC{H9 "{B|HҘd*ɝ۸=As#eΤmWdzjw}CK`ضOC*FhDT?M_΢=e_9#?zUxՀl/PEnPp^D XՅ}G2V/mX'b9 ȈI.[`- ܭMj$۩PjeA+ U p.,&Ϻ, J8<}X!;Z}#ʰdSqY7,EZwyjNKɤs$lmlyȒR[X o80FAo@rUOwT&@x#['ŸKtvS0Ca9ΊH~=)(qqᑛD`%!h5 %O7C3d?]i5k>W%.)h.Zn./ 'ˆn")YB9Q~GmTbl$CO.sGNʧlޖQH^x?~wM+ 2˕0]S^rS:w^ L,qwF(d?HӪ= *C-=jw/sšDoǷD7 = JG~ۛ]F'] ?ī.o$gzɉQi9ɑ͡UY$?=X="8YgϺiAv(l6<ֱ3#h5#֣(Ookm.|ThLD;=3~1ԒC )^/|Nտ q>lI^C izky1SL-4yꂲe[<;(hqs*ɦ$ HGy]A8}~DBc [)y[󐆆Ucu"ސ&(q}&k~svfux/|F,vprveX$HA# >, )D0n#.Hpz:X7Q{JPǕx#4 )7Oh?j:O1dt1"1[NwBā'B3@EFS:7\6e)y1ǀƅJagq\{㪓b':#9vq7HhB7ީ$s Ec*]ƞ!hŊh>×i5_+nB+DYxzHo,^4=Cx%AB8͌ͣ??iO794!Mtdnl շ>7fOXtMV,S֎8ݯaA8%mz=9>B2v;6`WLaC(Hc'k;s% 2=`&IY=X>[Ī%h|^L3 bCqPؑȟby>v!;Uzh.}ώC̓%;?×%zݡO8yT#d"dDT ?imE)<)˂WbS&'Á\zFb9`*15 3CNwnF\&4&<1> ʏFp,>X;bU~ \d/\? \h8x+ |r(r@h.MWtth-lܪ!2|M}$.[/WOEKʍ!\@;V.%3)w]e7i#Sptq~ʼ K:zYʷ?]5@jiM/=@W\%9dcPhk>RwT0RZ+WԽz]ȗQ-cyfP9b'K`nQ5t.wmrֳb@L1#68i()zi}aa76u ߴd_ljZ:OIEAD }`)z5,$;oN ֬|{g}~OeVJݚZwͥ>CXȢ[="8Fj j@~̸•T6@:BgK̭'b1͎uWMC/EgQ&#?#r;p$+ΣBk˶̅STJe+%/ɗ'^~^w ,)o0~^jv l#IWDG*yTJގ!Vɀ﫽)y_7}+XG/бZ/A҃;^-?*l0Vgdv-J.A- >a_Me:^wj]`*޾Yl. HEE_usXisqx=6uj$Jqp2Z)'GM8C6.ӆ֐_ k3r=D@DnI Y+d`q-iHր@:8^ ha3u\ׇmGI4-=lYf<8^0|n{The&SP $fS!^) JU1fA-> MɴO4mW$cзF+;kPr,nF@,ִ1@aa$~it uɿ睯sӲWw8! V*ōK  ~7ȶ&zMdovmX.{>-h`ˤO vd~] *8>[]d,c.bX9Os : 5SZ6f!oɺ_eN5#1dhAʀ%$c3h:v"P Aqn$B m"[NoKHj{|6c@+#wf:ɯe,X#WC 2oJ3k<a{MWښ#'}FPN@r˟:\WF4L0ģ+U㮢W5g@Jp7 :ʖWgOT-I _|$vP^2CGT( -4~ޖaHUKY6/<ƱX-UwIAw5[|,bţ)h;ٶ$ I-!`oNy A('lhUΌ%|' -ٟa٨jhP{Ͽ'Ψ=O2g{k&K'}5Kj,ҹj8`ye^QVz&ʝ^DDk$yyQ+.ڮCcn:N %x 8Ɔt+U«B#d c6ӈeh >tm9g^vUFU{tJOzU?d^{W?"r)WF$zڒ.@8dbnTn.9aWZܦ)Zwpi2O=UHg9L# 3E fkV^(7AFf"O/1yZ/WC+AslQg=4g*_< qC Ew5şߊ8ocT/o?oW ͛Ʀ_( Hj0:#Qe =dgn<J0sZ:eȭ4y >m]f$/W3OIFqjF4W}l?. !@P80hLeww"JBn-$"q%*\~~h1biVW"KbVsӄfJ u=sΙ#,eS9O2f֤`"ł^Q4Hzy0Na7텁 *qa^(78 }lM=HyN6̋>_%c-̻)3(apkG{Pi>_uX,A8bQ!ߤR 2|r/ yM֑ %}Q#rK0VS uىE'|ΕK[HFoSTO!OX/\gi~zIz,ƃrcBqh+ -/F]m}{xtHʲ)j@@VώӮ8F䰑{oнTc<ղ(zLdm7Lg<#e|i?>ݾL@E.1k5ԃ˺BO8ZؗK`sʺ{q&Plawɹ *%FZ."I'ZhUzQ]u+C[#w=4,Noh_8 W*cD{j:Y4 6kҤ $*sPZHȯUg}Q]=&[:: { 0Q5d?lt@hRRb<:f#GPlOfk.4ـ>aCєg~@*Ӱ%0 4! d?qfM0<tP#QP)fxE#'xQ[`#ƅȁH˂9&G<~_͊*%A^]q~EʯC>δzR[zG|*X.D% U# Q{rMĂ`({~9ݚQ2 wN,Jؔ[mLxYboEt7rDPL7ty`P0[EL?P]^x[pcOic '3ݞ) L uE(X|WWw:F\xKA|k\괗MУ5^淋TnoD}0ㄝ_ž P> l$hBPTcQvV Q_P)^KN{zҘf -{b#o^~WNm*X֓Bb N/mneain"O,Wv̪SA@$"mn8-85>J+)t5&~QàNԝ\47Ʀ|ajyVaE1ubVeHO$JO͒oUBS֪-W< 3:-vZI~ѓ@Iy/v۵_Z(204EAD$V Cp*4ӗbu]ͧr%♋dc& Ne[3 u -)tӌ%/}wt4Kk4@}SeMbdm2`JQ@#>HhdO٘}[\Yt%b($~4Xp(;u~ݤ +x0)APX=]D<.zlwȞC!2iRB[h'gF#`ʗ%+MZ>gM )1x(x3D(+  01]id6P:P}J#> <_&n4dC R+ \pG1~w59Y[-g{qdI /*({s^fy)OhRy~a$nX3RDB˶vg+ lMCGt@(6UޘqZ硻vJҿ94\1.#k ^F2%4J'H110cK5΢KA֭H+24{qFoV erW7b\~AC{毙&ta5s5gL֘nME uig3n2s~7)ݬ|WP QW|h&a_!CP KH冲V_Y3lt&[ l,8?0Z/ e+knU!kK)&οاn^ua t IJKwz` Q;RVR1z^O?FQM\P*`20̓bJ![!W192( 9f~%OfRz`zNyuSn"/㥪Ȉs$3g;؟q=6֦ȅR\8]b.p6V`dsb)lHv7'm(;>24H*:3H~ u,иu;tE_O~[^[`&߰ELh4[v,opl[?ّ߄Qk5m׺4C$.6€ϋES ;U2/xh:(.["ÜȀ e51pmн 3Kb@Y+<mxdžc!yʁ4cuFccE*TZ*ߎE5R}򙧣vFÜp@~~jPZ^y<#U_k9@(o$ƽKOe'g0X!T"dض|Q9<^k?7ǥ3{پy|!Lȝ)ǀ[*MJ2~J>o~'0_SJ'X~ɦ6M\D*Y-S/0^B]i5C WC\ji'7FL4?|h9TpA|H Z Nvg-uzpmj-"8.N-*ѫ9ʂ/ڵ\uKTw8,1gKձk Z _8w6"w,JG+Nz%L(Fl 3)/n=,3:MW$DvCy"_D Hڽ?,p, nיXuN;,JCU`8ug+FLyM!obԊrY,n iA65VI®>'~1QH˚I Q:{uH4qi-~f_+}NÚZ!LYB-r1F$rMw>trVC=nQ8LU2~IKjdJ;>,xPq"P$]%A=l.Z|Ϭ .펯o_cg-˼c(ٝ:ٓ~ M{Tj>YhjK1LK|@V)R_N!S1HKrW lT- )r.%đ@IYJ_&qE>TVS9y}sшO<mL\p nA(p 'z0pe!:s 'KPp,;}*b5&A-/uj {@"b넯]h-Px˙2!eQI%rn`>{<ne9Y{*/sRe61G7"v1VĜsƪnxkUTyU=FAֻQੁí?P14$O3Zg}M fڗ4cxIaWXxh $:9qgCЇd3Xh=iip8 vn&K.dZG_ߺ/9 U򜃥Hԩ?,2KL BS!U܋*xH:8 v(%UF:rLX;A0(hӓ<jU [ШPc@4Gq@w|Nj!TyxsK>ULK82,v%䛂%Efki|YJqDh2ν8R7--Kq~  7Ğ|=|WxQ0i(ׄ6IA܊UCUDw誵T\s }tE͊ ?#R3uLU?}?V;[UBhܛ%204u_ةܨ{֮1esN)B"[](Kϗzڕ,t*d끨Zn GR,8./R„;ؕՈXλ"NA֥{11\B %6+,\+'lԑWs<(WzHD3=n@陫1+ɩ:U (cUbhYX3'!~;Ip "l)Pǟi,n[N*[Ϡ"vOXAOu [ⷹبl{jIzI<{JWqάM⛟v_uGz`z {5.,˵jۼZF*~!J9 ڢWQVYjk6ߒB c_ ^럔GcOIK R7Ts}WWъq Ѽkƻo̟%A@cGv#TtN,.kʂ6J&ܶy{lz~uJGE އ3AT/!!x{+Xs*I\1Fڍg=-l°tѮl?~CF](<[QJ1LJB_tƎi.Lw7N]~bj"{ 2]AQ ؈AOf."oD3z零\mOix5{rVgNx-~T9H6q p0RMb3A2Z"ЉJ~PZi1ZRTq8W 5bMb. r"v FX/3ۿ=0}T4B&YOy1gw9(+ziMӞ{LH*N~O+){.KKh[(P3̟u7]Z)gPӛVJEc5DÄHCM{`X_BȂ.=w{\VrF(S;{qצ6Ll@<xM;kކ(ݣaxa}!4 98RW H{zr ~|tU7:R)bo𢭸ruRsWҳ|UE&,t bJA @pr=GhLfd_e@ɞ :s)t(~r⸰7Ccxv* hqZuC<7ea+jq_m}Qgm PqqCZ)27!(F6K?gNхYgOv!*n5v 4EF9EAI,(UqŽ15} % I7m!O=oz)]55O>{`[0|).1+Nzٚ<ޘ|9߰n)]# Qb!3 Y L!Xr/>mA$:1 y\L&h ͮMZxK;ܼ;ft]s\owsd T*'mSw+z7 BZ>$F i7.$A,QTO Ff^w]^܃?\E͞{UGԐe;|b9z!OǼ[ScnV'A!*y*!ƦΡ@>F'֍ru o!9`46FQ;|ێV~nt<"M0j)^%Z%lገ}Grfr/pT%[րcں,8sbQ(evѭv@k_"VVvP >G lu. =snU/.TyZ|r2P [nvxtyFJn>cqZ}Դ[P~Bk7dyK_STU(WlRY۫Zoʈ--DpQ+cbWJq0O0LXCsE^P`PS@݉C1"*ROI#__qL1ƸoALKTщϊA9%}2%m^;WS_FX8A9Hjr]S`z9sN\ xܓ.pXrLx4,/薤A u0INppEzHʏ;Zx0x?&}L']Hɋ+RpPF35jM΢.|ЙŏP9@%vʨmvjfZъ ]t>uG3Dյ'۴`'% (Nz.nh}ib\Drl"߷dBOg1sb(V|$MA~?e 5" Ա:jYሠe|L_mplݩ2%엊_BM ,&l1!SAs^B$S^dt .IiҔΞ˅['J}MYNܖhMT/uŦI%w O0KskhdWk9JFy:\~^[UI9eYzjAYuNWy &x.os0uitAѹWP;mQ"y=i*.aτ9'r5ΥWUr{4.wI!zI^ҩ6QMc+w[/p*X?0dXk:CB2.QVR~,Ϙ7`H]au^{~Cr1w"@&h!&$<#pL; bw&QۼplG{t~3}>Zu1,3V@D?kivKvjQ#[˜Ց15jilO = ;!؞x| _YY[7^U%'bs)o1kN>@)!4 Jolyv{ǘRم ݔ.ɄxLrEtZQ_# QU%l4ܬRpW4hQ>V4?Z7`ńℱ'~uwf l'՟Q`8V 2t>QG|a!}[`z|j%>BFAb}<*D_R"+#[L4OAFN,vHVae5rV+G" ݒ7MA1Uʰm*A@bƮrI)֑g gv@@)|KR~u}'xb!GVGv)/Tt&>5e19QK F\5,KD"c*tqc[yR=Cmuϋ⇢,ͺ\+!eKϠlP<7֓}Ro@R:JBJH;EAhHkhvxm-.fv3%D*(Uq92⸹t|Y <bEh~͢KaH$muİm]s.3ͅi y*HXj#Rq14-n΁5;?F+€%:Gޅt^2"0oy$!8.R ªzǦ{ȽE>[~C1˼ʯN2D]VJrIb?ꂅL Ϋ,,ɵۢ0̃eIhw; /(̾cul堂5#r f~Kk12vЧ h2T&н6E딱m$ 13E+} 3Zaɩ==&c ;]B3J-,kQ."2}dȦQFP1}N/vTv ɂZJy{ B"8&P(NrD4>#pVÖE `RPJāhe:^S X"}pxOs WCSzt)­F&d2>qiogPx9u"h-AGfqaqkޛ]荬fgC`={pBv%`([mI%$<0 ^IyOAGGG~ZRKmu\EQw!!wgMϗRpTߐSIb@,uG~?aϪȾqXޏ%[0v FMCfA ,$[__\$<&uRfpCT^PfO0e_ަT"cnܓ.o<U&z!~϶@MzBz<ﶺ_=v/kWY^ʋ]xN+QR!$vٕ6PNkDJmچVzT`vjher/_d<\Y%]jp16@$&w RB|[gZZK BtL^s:^mI["w:cE$@JsaE(P~&Xfbr<;w0o? W἖ C-c*QLSx ` Jl-ѵ&$=-=-A)Xj! n0ޖ!?QԡhUi16pc-SHI~E?F >C?vvFNݚk2fCLBs[5&1W"#(3mŤd"#+#džh"HuumOH(h ˩_.]_!q8_rvm7.;Q/UźK},ērM A⠨ =KqK9-vUYAx/71 "*B p> (XG}t,"SF-4WǷ2~E[dv$`P$(\YpB2fQQPOejrIKKË<7ĝM0=6G+bT@?"X8I(I5l n_Ꮭ d6WMOa1Xn5f3">)wM>F/HSL*k1Ɔi(|bWJ ~k*ώ]4NF[ٽrf"].c) c!qzjjmF,@]\+A\bMQJwtuH G6:74Qfu"`j|"^ ~|+8"a1+}PkO0w[mXD/֙HKVQ*&l9'îh6I쀎NZ_gjz_pWdh~ |쳗ꕘ*HmA5;a1mm6nh9gܢ URrǨCVg~Ah|҄ʸCFkY.`\Ĉ ;ʣwheBHගEXBê Ľ'e+ʱ#"#VqXʭY>XA5v #sjEII,CxU~+..rq71D+u`d&:7"$LA\8!2#zvB@ԞK$G0r _4n$cB^WK*Ob,!uI^;Ӌ 'zeBxPϒsji'k&HpJ)TKׄW+夔]hBfkFF$^YVE y>ȇ<Džd/:YkHn۾&btʔʎJ^h,fA&z&B9un #BA{)iK}ԵJN`ܬ*0%\ryٴ{?_uFFu7@9sREQLQXvuS YO⥹T*qcE~BsA]mR8蔐]6\Zy 28$[WqnۮS.̠|tsq"`D6\|OJŒLGJ2.XS#e%KENi;V>1T!METqPEf^yM_h0O\,w?UPT{𶚙uX7u-0 6/R_{[GƢ悆V}Pƴj1E³(aYk I5Ts1L@O:T탂|gY:e!x\QqrธAq@ X E][C2|q39;3[~1zAZQL^ XfL&7iTgjc[Z=$5w`cKPG{]ͬGYT)! 0=UKoZE 0|vpt]k? !mofEUʇ8!pF+ ',"a1ܚ8t*s_,gi7n|K ~%Zb_H}}IN㟡5vG@}m-FAW>s_L%%ݓ$:j_%_8ZG ēF$q ޖ*|my\5? O.X i .z'Aa5yjpТv} Kߪo 8$ ׃܌8x2&Ħlo/Go\A< Q3 Ohs!_g| XI36NK"E6y?ڠNfUlώ9 N ʷbL,6+4JEmw;%*^qkGb>dlw~= p1 8dk@gh Ѫ׌ ,Czc9v{Ora)KUt0w uEc!?~ ,4>k3kiP0ୗ{r̪IFl! )N@V9ZUd}z<ч(ol Ek7:GxQO*7c x4UGl*Q`s;7 @.gqbUzҁQqu67:NJua`|YF'ui)6Rߊ_4ߌ";h`jšSR̔mzLǵEs$,ńtLvIl=b׆JౢqE\NuGdHS* ?_' 0B4ل.'0D;h@Y2ձ1la.%v%s$Wts+~JUcsgơ?G:<:O KwaIJ擨AmY;_..C\rf(sU7\ %8?_B_T',GE -%P#@nS{ `1iP ~Tp'mטЕu*as)._~1Ix m}y]#g=s#C7NlZ?ڜR.Ic|KDv#&RAJ0% ,wJD+fTcC=%{;8n` =qY|F8YW0oCx}JoW/0tmSoc=9;/ T\DDń|lmjR> A"rB`V .SsQ2*1!ǎ8uj2ii̎5pBfyML60E}h2ҹ,lH3՝u!$(GF*ꓠՊU H@ܙVanIEVzm2 #uD.LKi'eܹm?n2<3XgP.bZ ^ 1UaQhL#1v&3e4bZY2[`Zd?~Z;OLD{lM|*y4 "{hqߟXWO\_x xS{F!9FuaAλ+CQJ8H8*CY+lzƍ8>#t)ZTv+8gЩ __*FP ?<_\J:zq` ؿ{eBP,#. zzaG7{>pr}B XF̊NrZXbW* *t? }AeT'2DKMO] PkbpΗ3Sbhq)2v7vk9 ccg䱚 ^y.9-%⮤* NVCV3 x 4ABeG+BytvW= R|F\ɢ _cU2ڶB/{Yߘ)l $xք5|f'Ia,Pn8F3dV͘sSة3qޭ&|5 صY([HKgJټ+7Ƴ9A@kyA%r`:@WR,۸wLE<sT;!?W8NǤUpZyx 350}-))~aWWJ7B-G]nnNAyg\P2H^M@uۄN2+rpAr*%(Kd1[iRR@o`yYrJGj&x)WLj1H_D!N]441l9}E*ps@(sM;!ھ?!R}#>iyes\X&mWL@cܟ ԆJ{s;&}1*E&!tK}!H _=nב(8%r#a@U uDE|t q!~3tfˆ=7+V\e(M&3?m>.+ٟRVyM>W>>= Bj1Y.?(iA&Kjx}/mU}=722AW/pzd)a^uwVВ@OJX3ۢ~9|˦tM^ޛ/WH0+3>A"Î'.4$hwÁ*f)b(`. \4)BHf{4*#r_lduLUɇ'j >rB)n"G@Z]t2ԻXPH%PeH9{CGB`Rڿ_*T k@Vm-Lth?Mv|ۉŪ@e^" ha Yub#Wf&*һcmg/zʹ=M߉GQDZ#cDJ<*η+- AS$kO~$}!f@E'qT}8 ύ LDC12~(CՇ݅Eߟ]Fh<~Ҿ P=I*^}&bꕩJSyxS()Yq-aو }&"EuJ~7cψ..$cO`ת9O'`ϔ'DŽd1wƒ[C>L6_/%-:$yob˿;)MzSMwcQfag?>2CT}>^7L吡M@#q<5G9c%>|dd WuÍYF9z-V`iŎ_akGzkt$8` wQ U%Q8XNhl$G o %x;5D5R;|aYͤp׳K4nYڎ|-W.l +IXs߷ #=8֢/Y9xf_ vHqA)d  ?}yOo?"():}H|~Ii϶Halksզ>6Da֟ ʥЮAߑf_"I?S-׼i#Oj8%> X,[#"x/W]}w9iL(gQ=N^qS~ƹaϟnMG;Yu+9u=%)Y 0Uk(}H/0Z*͇ԏ5EF14J, /+mk\$K Ec5=B?k -eT:(ɣٯü:pgmPep&J\oBb7q4ODC oT s>uUK +2 -ig/sPԖ\ iEngi&A5:mȼJ+7>CLX;&#*7̓BX|s FseDkU!r0F>$ÀZ#Eu 8 __c+VnnD>ՑArCsiD3 礄4elR}7-Rdg%E*$:[c9ْ~]Rh^?)q7RhVJw&dJ#9Ĝ(aZ\Ous>Vїb%-"rv^mY?zzġ^E~ilֱ8Tl\v{Ⱥ`btp82{1>n3Q6NG3x% $&FO^8–;22%ĩ9QeQG' H#reSPMa)|R 5 Lv;B;fAZ-,)X  -ujf{AvwڭAxGe_ӾnBXjSp9;ӝsf=5Wv=v%W/w2P7Sj5jNjP0YϭߌkqfIZ) 1-wsA‘A7gPSfwGU=rXL/(9FLdCغAޛo!w:`cs#eKA%3Eec,d]_.Bk?R>b!2 wE2j}Uc &< y\s&u?@6P[ۊlO`B749hA%)Z^QД%cj1$'䦕,s+*G֔8S]HQ3қ;3[%+A !={hzfwk!ʩ& J+XcrE~"" })(#DŽTK*e{^leW :ᒼO5\HU]D$scbDy4m"˲++O. Gd>؇7~9ŗL}nuM`/1`!MThcCqru]CEH !W]|-#?m Y)Ӑ+ U܏ҧ#nYJS7Zj` Hy6p7P |2H.8 j₪9`xI!Ivj=灳s $n\mvk[a`-XLUl{ƽoe+ߗ:66bq /ѹclˣ']*2$Jgγi@h#VPGK:Yӷ|͹2Tu_QxB~$1.0XnXa 1w+&Xis$ƤcC x2' )ԩc?6D<4%WQ:-f̅B"G 'o (Up1;|bItN]akl**P@>ßspG%M%A^KIRLYO QGFW.G`g9X +#Ko͝Gj(^ o$6疮 +ͪ\%qb (rQܖn#m=08\0Џe+%\H^ݦZAv>ۭLclhzJg%/! s3~ 9"+cpy\, Pr5H2@gdQPvnKQRC6j,]֚b!V9&kGW{L^[ucLl#ِDS60dx Z@:O$q9YH=G*ϓMgY|#aӥFPY$|@e;[$OW5#V|6#{ODɖ.Ţs.o|hy3q5$ G9]ӳ"PZM- HZ^x`M6sΑVXxLfP$-<@7Z"hwuTr* K[Qjф| è⦚IXwm5NH#"RZR7y7zTA"N^ly/Mۚ0#O&Ե5@#ƣqE\sa8Ӎ/ZHLgQIX)_c.IfsOs;vS-'^Ή溓Pߵ%"/{x`m× Y\sy@ǜso]2?⒧NyBfa)?|h9?ДMpF3KFHLD =[#kW@_аҷ@a(Yz?ُI&Öh~.^ ؃"/A ҝ>EMXvrvlpіI$?)V{Q/Ȯ$Xgl-< naa7xM#=͍"?FUdRH"\)4 (`0vBPpB"DZƙ&d8'/jK ggfr 0݇RNb6\bvص.BHJנUy7Z5(7YT-pf?U!R ]*˗9U_BQrıha38O73|Wդ-~gefe?Ci&`qT`(Źܯ,#ۢ&P h 7HN*DG8괈J r7s<ʹ#[0QVËFdY- ތyI\Ps75`9wQ_@@Dl V)'y9a p)^b8,bUlҭEgJjb|g /gXyoE+֥ܜP)B+Ձ c*\/̤Bn(A-YbhHIJ:c#u`@6C&d`fbF)w_ ҧ/xrM,s)㬿1QAJT9 &{Y/^ȔN~m+fZP _L(kۧT#9:G]\C)N%N^wX@I86cO=Ew`Xo##P:/a*̉:޿՟ l_* 3![p֛Lu0_A~|.cpʣ.I<P9,tKrFqE Az0=]7BQI (&'\in̾Cτdlk͊+l+0BY +is4aIH'bıtI˽8^1_7AoVväPG*kDJlb~DpQ,!5+m^Q~F\\12+("*.FgKX4@exc=B*9r'_h]ӥ8 Ż.=맞ꉽͤ:em iX'Iya@P`N;1ttNd:orwK⭛^PeͲi݊blۑ^gU1эz9nLל/u.hnN%I=A֑s}(UO$/L@=OVntڇW0~|◺YFUo1P%Kf1-\7' bm'>'e#xKc$ڸ9V=3WIF;o|AMc4{d'Wʻg@"_7rKJYfR>1^sraDY7̥9S`:OL~{{ +'8FqGUbGpܔ9Zh ricKzpeƿhZ8;2ba{Jcfuzv"%y#L@H9 g* fmo7#D@.*Ï+Zi\ un}t]U\g.,9aSR0N$q/m+Eaf>CfUr@q;GU;B E&4i7(=q6mq-0^~+Sq]y%zC}kyƻ󠰪WY5ڬצ ?Cnp&&eR-u#NRE[7\}ykhPOdͦ ކG 'FpeKxP}_4^Uxߺ7߮Q]'|<߾_!Cvc5T RE8!2 {_ 4%ϳp(cz(.8NqGt .XrxBJm+5w'#ŘLJۜ Y~q*# `IO]yfHLj|tMmb!FR!"R_̀\mYhO)qX29#+h`vEq7cx C:Y*ak`%3 vq%Zg4mY)0GF+؂|h$ dФM( -P`Y WI,LLRcdދZEdHNPR-ƵK*&7&~K@xfd(PiE%jr2jg)׫CAe h:KV`0p$Wj0WDxRU?ceJ!q Wv.fBٚq*]WI3^Ϯ-ff5fUd~DI -T,)%A稽Zf%a3 h`ڱpWU&E9((%S>S?|Aα=B숺oWQ)Z9# _a6:;J‰cz"@RqW1# HmVˍ,0 /Le?gս>> {wS\I𮇋t.m§ !iUɄ˩-Nw!a"L+GnpphvsHlӻB ƹB>#rN9."~"RG+ʹVG,$rr*JOzk˟&(ПAt:J^N#$)hcu\<ʇDJR]Srܐ5%"uJ1_4%b\ۍڧ'd_QS=CTlsgPјIܜmTH!@[o3,}$V ĒY%|5x=fZq؎T@Ŵkٱ"tܺ6O}(bpu8VasRy:"#qE-0t.P=i Qe<޶Z<\jY7II#͆Jp {M_<5䪉eFf}?> }8O)rKޭpyk%罅{,3}_a%ǣ ~hͯyZ+!{dǛA3OWq?]3^3Kop?,f7fnq0?ݨy*y|7iU`F=D fb,G4EЃ\oԤ$m*< /4J]{.q)Pjl1A'$Sv%0jz~1Ƒŗ_(.f-2ƣz hjAlov$c;:ӼL* 7%DAt ?B{cf#cL+)lS/|{.Fm[= JgK,%cj&/( ĜK -,Ũq5-3}R`Y ӨIw_4hRXzk: 7ߠۈUQB-U|QD .C-U*G~ln%1ds02Q]f(ؚ?;x;@b1y==7#SoUBP^Ĥb7nkN8KD}+5?v1qL*7&U ,=--=ZoaP2 u)U4_a  |\i7 [LGӸl<7\AU=nl6Rjc[D LgeZwSTe3iVMln#5JXGlk0'\-QZE!*汀z+G,x/J DY8 sni:O_K@Z/NO_5nskH%2-fa\19I3`YDX1$Y+u@oӂREc]A#gkS$L2p =(sʅG ~T]E `h%z'i}Q ?_'rY@}4sXmډ m\YjaPjhZy,"hß Ւu>JNLoFØb=؎2J [F (4]4Y耚d*vy-JŹ⍊; [3.~,>Ӗ0pV=[^R*/Jy*#q.Gt0b' tyrU]nGbphAZoR첾 Dcp3o#'Cmn6 C&:v#LHZK@ր򶳤b؋8<{^}Enܲ5e~k)Qy']Y34{zk%I.Hz%(Ę7X`d7ZM%= UkaNU-PT|rf(T Snm*f%8FŚHgv '\/nVqقڵUGDUn7uut/uEN/ GtHAMbاS@Ͱ"|w T9`PD<( (' k %{l_,,mgs6HѪ}G '"MTU~d'Ӧ-[nݿie`QG&)0)(LzI[famweMLoHZ}M$3ё> l-Fx•Fc*6ńwqf*:My}2~ BEpȃ&q3,}KS&MS4ES <"jgfb0=p)MVkЖ:=Νytx}8?xp-"KjaCxG6$a6eNcSw Ndj7W^*?nFS>=ڳs[.ĤܝgL7%d*@b;06=2۫zko?,ZO)Vn@1Ŀ,a}dQc]D6@3Z.x@M̰&:pwG'v Rm* cܜ~=h\?>7Бl2r#% M vS;s⦷Lᴹ/yl2Şrze5"?9ÿ$>:G/ :YDꏋds8 dcW yfSUG[BhŠU^v s+KSS4g m"~75d%4S7J+bҍiwEP9K<=T؅>,.(Xu޲pO_w"4|r[?:%3h0Vb(q"Щॏ5@AE?i4d X $7Yx΍ۡA$C *((K 7X2+/Vh;X*, آnaFwe67pFi^'"J Ȇ@ŷG gNQw.xZtygp P|XS56\mֈGtF^^JS}7,/mަ hK|d)|:ClCl t}4dx8 i6y˕h &?TUq*Q` / >B%t)Q̡q'ɊaYʝ &mH\@Uc鵥Qb.(ݦ56v~?@cs/͏Hx]MD*/Hx:)rraIԩi7]ć2djuƴ'@d 09KoEÕ- 8\ g}-{L AkR.KیE ?&M*yɉ V{A~#{I^PyJ>)U4<;J{>PhCs-|$-gp䢎nh 2DWz쏸]a,$ xMEzV!=>avݵ4^7V#ogG <&7$0,tL% c )@نA1?X̣BU=mSpi4I5h# ;PCqI/3`44MzC'}pHЀ6q^( ֈ`f̓Ćε:?, %/OBHĮ/7H.@e=v<ƻ;rA1ΒzZ+zenƀEEo`rjǍ8WLp>] z=(*V`gUb07! 꼏C NG.xF(>+\lP}uIL_u{ }7rﰛ(d\/GT3Cɬ F'Dn".!Y}duo{hT'h I%ay/+[>Nᯖt= 2!(t7A7*v'?A%?7o V#'O"ZG94K1IA8}Dj[ h8E,@w( QJRfv[UŖ]jkcbH oT{gK{y\)wK1^/}[<;/mjP b0u=1ͅn8kBpZ!qЏ=!yIvv*0>QB_Uj7lrybAm>>/obz:*{! l?^TDUq|?1$=Q DZڦF_ڳ4*_f[,!ޭ!="TQUAi(k9 tdbO|g|=H _hCR[ xs*ҥ/mv@ii2MV]MPm ~i ]bǘCÝ?5#,:p5[iec‡  6RedT[:"ZoŀruyFF3哸OWr]~`ϘZ :meQpH׼pD֒d:q?73AE 4P]^Yu0rP0@*!|ƫBZ0v}dNnYz~ 7v$܄1[='^(J25RKо}KFIr"5ݶ}F>e,aEʲRF߆Mhh6?Ui;s}#-I?cp3il\Hhho0{1 934-⡋؛y!V9l"gmFDғמoGϔڌgvѱfN^dǪ>ُJy5Э7QBm> hdE`5sa Bx;S=4|F=~"k>#iU~n-9h(숊64^L.!jmFDFz X$!&ET~}1GմcN4ͩ3+T#oQyLSTҴdG5ڪA{o"zӔ+mwAe\4=D,δ@B5~?H29ԼA.eq:̬+{JS8uTļ)pSKf# GR/ٙ3c+u,l~ND6+kn.`>U+˕ތdJu8ڧX@#EMF{8]B}9WѼ 3bwA5&$*F}h;ӥ!Jo hbxK@#:]칧GI/(}x6`)8cTR[5z*d$zy-*r| WX^K]vb=[:B ^|H_#Uuj{8.4Ms)<6ߒf7(¿ C:a>| #|~2#{{uqNY}V Woc^VIB7pC$KN0b[cƩPH>ɱpb+&je*(+;ߟl8m{a?gYQ,sY-"ic((,oLbTގhbA1Q |MY>x@Z7Yad0 {y/UF!/n:ßGj+fkyY.1sx6F lV/_9;$ aH~:S259BYg6jtMl75CEugk <^ibJR+6T}Ě薣5#P sjwo;PG4 NIm'<@vv;[4,aM~NͅQlZZL//~&y5\*(B~SN"Po?Nt40HE8>WUP.F" a4іo׃wd&@R<'1o3<`.O~B:i2P-.XQY.Zf4WDmwxqmgq톁>^$y:=g•AؓԴCZ'qMj %F)~_(Ӟp=A__P4 ZNt6jn> c“垊w $`\"q( UEbDYg5Afmk_oJ9B \4N"0'FR'ӳCOn_y:aˉ ygOe4;v  $3,(j u^2mJVyƈ)0ijґJ=MUPKQΜ߉\} g6u^eWI r&ս':#Ն_ʮL!Ft^5R3`=z:Z"Bͻ]R_̞ _!N28`J GDY㇤9ȲTV /Vv](@%pٔԩj` 6>Dʄ1#XpTR@\wp4O5gNk2иL{KI\n*mcih4[<+MJXº9[XpmAՊ[V|gd07 h:9Ǡ,MŽhշ)h,0" v : I WIn5ӟCk/g1qv3nHJiaG -)Ni?r x1vzX{U 4ae~ vTm;n.=(L[`oձz+Hv9r( Θk0A3nVhN`[vxFQ O͵49I#gtb QHJ}Ȗ:r1qQ;7#s2۔^Gc3l7Dop9ƥO C:$3kaLnel? 4wɑe7|[] &*J: k|R>_b^ x`,)m .|B=EPi1r[,ZSa_E6z^ ï9gos()W yr|agRKQjXiiU8\[Ȩ0+0)C]);%Ϳ[J;L!Kh{&Ud(\^߱-"\毜AE4cTXTk ld(څD(RĽCiYAg]ME=n8IەgJvg6QP u&ab# _ZPnE+Gx:\Q>N}` DsvHn ݦs~]#|vt&3me&O'&JWȝƖ *vɥ\KA/򍻿夏T-hMvMF: !3?-Qv>O'373{8%'W;"HFi@hPkyP,Oh=hQm\flxezl<<8{Ø 4pyc@&a.'X<﫭b$iE &B,5KBeJU@"XMFxBԨl K&nw9((ެyrnRePtvo0=-V&B|x 05&v t{qR$),[RUdu$>X\/h|#ד&ݰ'}1TC#i* V5ŠRWAtr PPTz˖%[QS6_|Yxvq"~dM/:U'- NG诅A˕։ӣ३ L]lOr]k.Sοk =< |rTN䶶lrSڽC W@L"*m̶j8wu@8hip jWp&7ӶQ[w !nRM./&N}3c&ɏմw;YwV\FLKtA',c H暩sz͍u0n4Njݚ oxܡ 0fk1mOM6nx!S^H5B?MRu@LgՎ+;ɇi5usj,uۤH+p9_42/p/j@c4}9p"U}t-`u7`u[տsx cM@f24/댂#奯Wv"0z5(߼AZמ7i֥%%pqNҜm?kz 'A^Ӹ~IEcM7}B68QإL3@mmFZJ af醿p0@Eyߪ2l3k 1z׸ o,Kx5ʠߍnL,HYQz) BVmYgQ6`OaHo;ښ7hИ]'óbǥͯηhrGH1aɵ_f/a"nIwwpo mll:‚O'4*1\RP{_7߼տHIHou5'-{u䴰|Rԟr/n&"R=, e֬"Ja4eegY:6`uD`ko~r-+nV9RPXZ5 rp@:Q:a :oDNtQ & \N11jӯl >-(zO㼮/£˷a2BjXҮ@Lu1[qb9maÁA $i)t;!dDV7T>K94Hugbc~_s8DɻHW` ; }b52͐ߵ툁HѸ%l#=+Uzy*쾰ګ<+g.,wlV}uL!E/q$h|h:<($_QH&ks=YѡiEVaM6WS,jmHCUa膦 <Ȟk+ K/m?L-TZ rIƘ#".wVDE4Hэ9ϕ-*98ߥr-2$adl`V`83mA@ƅt`APD&rрkQ#LtY 4C Lm@|hv΢.*>ª}Cn&/#@WFho&Q >I-w31f%F;Hjͤ2#0~h|HT\#~ķvh|Aɣt c#-'Ouջ߿ wwˇ/h`ҘNN#_:":8/?cM]EӏBuofMr̃y !ble3aք. H<1<;_ t\js$aOhYeHprDؖDG HOG?DP06T'}\] ,mi+sߡO2XQ \vtتdSJĎ_l>S1r1^9),5DhSA^'K>hFسQL~"g6x\/-2úp)IEAh$`sOi0Cwi%>l+guqa]kUb[-` ,"۝^fhܷ}^M!Ix6$qbF;"-zbͭ9}]q^f Hx쳗R ؿ 0aJsa6Ψa!m7ڂÂfy؁d%8;-41=GWyQ\; 6#zY[ UID(vCËp*Lnj]/ߥ4Nzٗ&n&KbgerI}p_Oȃ,&] 3X~u=13ɉ[oXjoIBm/*}jIDm#%c1SrpFjC~SǍDK2FQ!itTfxȈjK"'9借9+ Z鵴umm|; f*BAD>KDqtJ<`xLXXViQAM<98#`n&`` Kٹ; <m.OMYI@GÂS]QHuipG5fmuLbr(ɮtJXm/[tCdTm9]ltۗN dJFErjn.nmFH2';sHxM٣W:(tK>]jY=Rk=rO>"8R e|^~;Z-d:5M, AI-\Yzݧ2NclSQ[`BB.'i5[9)&K`VG#`_Yh7i˷.+iHR30QDJ#a?Y?&ʆ4'\{CND%z}r44ٝ22Eqo'R۟`"4m+ez'"TןXOr Xb]%a*(Ivt3[}6k` Qۡq] ﳳӧckk7zոw&ٝ]C1z}D^"Ա71)bT@9 Pw3>kwͼ;kjE0| J|hB>ӷQ3$V i:JU.4KGv:Zٸsqk!=\N旯u' G wtHW`ePRzq7Oƍ7EǭdHU)ϊu Q{a ) *46x-ԥlD(hIy~=OQl^8j?T 9^2:p_i?,']7^cWJOᴘYM)HA/]ZY-Yiv`P«'C'H6$*9J(ɧ+6B?谻ss# c\}QljL1+ 67To{6COH5ppWvCBp(@13hM,(ĦqMωK\va'7H+3nyu ʁ {"U[:m-ВO=ZcGt׻WQY ͮ&`jͱw;B2U6QB$'JWA *}!~8VhZ8j.5O2yg QY* ֣顉ʓ,_ Ao}OMl0_$`'pGTٷj'عSmhXI`\,t)ƋLCAc-jV TTUϧ78EN |gg8δ+W}[~ws(aB4μI鋈BBڑ^h^gkR17b?ϖZ5Ǫ:[=aJ@Y(3iZ5uJd`^@ޠ?8ϓ(|HH\9Sf*8y^QLx%Ug1%y7ͪ嗎f!+¨șsĩ?2Ed3D˄S+nɯ;B&[A"Q>yW8H.9^q2Aڬ`dl-_*qZd(TC<2ܳ*jlcPlDhOwvo( &6{PuyLDl;lntZqM 13.՘{lΒ,t!A u;n!6OӔq{);)Y/)pQ L]?XBēs7]A巙ۼWV`{ {˚P~w[ iS| b 1sPMn9;D-NECU1trF rH];n[, PMTeW`|u@i92vlGYo?%6NIw7حI"$gumu@0u,qhx 3dg*J92=0fU8pP\…yk`OjLCEcjaeXS?%(&J :"uRepx3E;9Cj=n=vt$( x-t+JPD^:6A:)H,bpCιtNNJ eŬTLl\C NUˌ .{ɴS)(TcMxfӉ=}-:MGѨƓs׾P50U``G\C3GEVvVxהZg=jS)^48V%n'M[ו8m O?0A>5fPRQ[Ed K`6\:{&ouF1gHD_"x'LΎ '[S|V UVp uWz+5 !QO?8_3>i_Zz^ݳ"nGpabmR0 [,~eB%}l?ڭ~И|90)"^_n;?NOOGiE¦^9' cx :q.pvE` S!WU;Y /\YmGsʮt  |EH۽(.CoFת!lRD . Vx.V2$3V/TˤT,"mEDaӜVO)2J0Iۮ? DA_tƪiMFS&8%ǫλ8l ky9w%ϊ}`@/ 8DouT.^;@7 X'R]An,S)f03/Kɵ'5YR n[q ƥ7'QILU`z[ËA,x 5eQ"˚VJiPW̴ɫ>^0)2K$iNoYu+:2ιQlFX2% t͊dTq0q\b.IHTɰȆUӒwŽ J:W*DLIGTx$ RFHCBp*Aeiτ wҵH Q : L\/f|PoE3j`,zZ^}:_}܁ݎ}^wZK]/TuɊm4Ɵ dC9Cgp̮?-%iNb gB99nNrq0oLeC;8:de_׋;mJg(],S5~j%SO laq?YDHDN}]_ ;,]!Z(mc$#3:8@(A;ČصVZtY+pȗZx cCV69.;#3Uw3rp#F f8WM@ɝQq n8]n_ߏoGn!U +֞EH9?}a$@_m֛ZbJ?Ыφw 4▀mF9 #;@[!9Å:4-Sj'_-P"yOKULDm#U&ŘOvD +P 4!8-|aheFxҊ,%|(8 `BFb/~1&ډQOz ^<Ԫt=fLqymĺ:uq^A}&r;#4>f:?"2YQ&,W%8XZWWn{9&f! {@ɩN0#|kzb&hf:ܰ ڻ>EVA,,Gq}8uFxH}?/: x~+3kw a}{Z?8 B]3HhupFt- l ʺOCf$qC0a9H~:䋘PEɀZ2<&Yªh`*LVaiO$eLW<n+ϼDu]rR %B{6f/? Wj:3% GFIqXz#la.BؕH|C?A Oy<XM\S ?M5e`u?)Tr_o5Wj% :hNmY ~.;Mߘ^u N0D! A/* z\ "LJ֟ziG$dxRc{Io~XG^-.^I_% HfD, Zm=*Bܐzz຀uP."hl⸀9k7b;߄9Us/z#_ Q*W$( /όDt <3::osqF[̝g#SIU&5PUsh6m-rZOKdxC͝`%Js\uA3s0\*wKߎ<$9aS6x@5lb3=Yk0iNq$nsTZEp8_C0PK!j'0dnw; /VdD.Z_Ri | J &psX4Xm -!mi}_y&Ouv,/@Olj,ZD0&WjSWv Ӝۤ_s%[wInu3bϱ Oro[w۵5A #Tܻ YЛKW ;juBѻU5w2U]-Yk5&%xgx=]'\'7B,ķ_J4$ pz G9Lad>{}ꗨL5]2tڝɹk#CY={8 BUvƂ'ZeL'i]rt:Z%i%Pyq8}5v h#Fg1LкO}ލHЕw; 陦@> mGna*P0ƤAV1uqC%RRĕx?$˭yUxF<ɶE.|xʧȂ7+d a{?>7W$pv=_) FۖU&z# zSq;#]=(u &@0>lji 0hiĀߛb¤\]8?>G_tH_Tnq ^T~r }N`^b>LJZH6aNre.ōeCL(H 3"Pطީd˩(\]-.LZ=zby&=WAuS5ёS %`4wLɜ򸌓 <@o/[m++Og.;cre GV>=A(Tc{o=Um}t I%-4Wاw7֓2*c3h4U$ȏs uJ'X p*dPyjHz\uIbw/c*[ To(Z[t<XW;V56|B4 13f$l趾ok Qih@}ɷk]i܄+Z`C~s FC/ xs{*fqeSSo@pqFA6mFQ]' 0h¨"w>)KKm#-(a& zQXۋ7{b1Ez/KiuAK L em pxYzd.J& \L5wI߻=链V {]T2S)XRR {)1{X/6$_JLh' Da7VF~V=?Sە-ň?Ws21\F;d(pR|hZk^,C4'sqmtۍs-u3Hq9f0 4x8S碪$(y'FxV֮VƩ/gyLIT跾Y#Q;4ځ8Ќ5잝&^Zh0"hWv̀Y׾I7'G(C?RCPsI;2Leb+1E7ƧIȮhl>]U.zo[Mm?ՙHD(Aɽ%J[BX@ǧgFu3o&04A #S^R[q8ʩJ f+` DG X:WA)xFlϽ餫O=8dN.JOMu1Ԯ=1bR6i򃂅3QLK5{ C\y*P*<f> DIZҾ5E)7v%k\=Rf;+YPN60(1rv<'RHh Naq#9x0 57.C;b7DۡU'o'㳾 x.X^ Z*2es '*2 \~RC2 l}.DZrJ 1Zr:8W5=WmS_F $.3rujFSD3JΒ /GSLvzPmV#}(5z#-cze!ӑѤGc-5?SA+ "?,q}#Q6}y͚4ltQ3O=X,z cNcU xIu>|I*1e*vƱ~C)Fv ih.dNW2v \&8 F #q= H8Q5_fd ~H.?1ߞ Z{#T|?y $lh܆up`ªTxD]@(/~jL= -97] |T&&̴)_ f^-A.?;-#Hq-7G-cmbMJJ^k$A./#ȁD,He;ҚV#01SJP0(l5~x:˔cA@o.`(5De',gvc-^í=Z84-V,)Σ]hⳇiIy|zߔH.k92|>hU HJU4Pnd'=vn(M=]Z{4Gu* ̺4ҝC}}%g"iVgejnx(t2 Mq  Xz{qg2߉7Wr[tb nP3@|SuRO2Q\]yΤΥ 9R8,<:+@)\zoSC:-,jLV*hNֺ!2YB[wqTR{`aV&#p.h \B|k^^ 9d<~8&T7h1}3?[5]i 1(%N9f0P%/HqzM“.2c`iIs$Kr?\ k_@%!Fn>nIPT[$շ%^\ti>T{AGt6کkǢPT*a~hcun}V]HiI\-~H~q7 UZȶ9^s oYIx 4qS|ţ.Nn|e$'^/-dx"C6]OҶ|;rl6x2 wR8"qyB{js/$ƀV .ܫKDPթsňS-OS1xw3j ݤíS|ApۙjH4db,ąpP[ 5xWc)PNϑdO^4G&0;Eϯ_\0G!HݮQMZy(۶,qM%3 . wT&zp_7K@{#ci5 uPuG@)oH'QZEOP7qZ\Cfs:b(D4 x~ס`ջm[~vb$: pX"g* ޵\7V^"m/8%8C!K2~q(z.MDž{K-9"N`nĨ 6wE蚕HePHn)2|O}ćGeڦ08]Mse`t5IZ|v grNjKn :+jGjJ/ /d6T{ߏhvwΣFcQSc)p8K'ӣCR8 w&^e?G+qaғ'ckYTc'\` +͜G˘bQW]~xi3AotT+}RQ=[")*d =('S --m@zo qʊDYT ]/ɾk HЍuV+4 F@)]Ӛ1kY(I~S Կ}~NHZKu)^!߃!S{N7UWLxh{PALQK|} J2@e# Cvo-h>qj_ v$D4!M$rǿ w3~BP w" v$!j'Y1c1g3>"Qa:e]Jźn9 P0a3ӦNй"C^1dN[$PaffV.cp8F.;WH>^A_u ZU(/5D6f">Jo2# ;Oq0t%帊#W$!. e#boW3y>31Sm ^)qm,11.twa_bBױR9 C:5\x vmg&^TYCyk]Oaݧ+T=pW Ħ!}gXwu Gi,,l v;8gBP@Jʌ-ZZ}} y!>>U .p QwL%EJxg/_2 cFn+d_*ɚ5dJ[:t†F@-9]͉Oxx4Ra{:#w&K=q'TVӗ&84JȚ~~{p-\s^MVn4QZ?0Pur.zEU4='x;}+!35;B4 'xrhUn妜^ɾi^i%doaXU#3 kN$.r kƻ%7ؽL .1"9{WȲb/`$?yfꑴ9{q!׺N1\lv)iTz<mS_6C{W;l 12b[cC#1/0*!?pAe9eVA{#63S~_{Ȗۘ v%uB po]h>j(&Ky7Z~(}TCȟ6[IԘ[կ)VAr56ImsU$"׳_.֏͋nާf(9PMI<&RyWZIԻS*(w\mZVD+^s{|~Nm7]3E/RL;k$u=cQYd6pl0t\d\V;%8nu-QYPblu3P>.˨u%}y-Pڮd &5!AKi5$33@ӨOiħ?>2D׃'*<U;{ Yptavt0n\Z};ovЏW eOӘpuv xiQ^m"k/wSq# dE;s zR'VF?VYUIoF~+ QOfM ' *7w_oel)q\C̡9TM{9e K6@*l<mfz Khr*lW,'JC6IXf=tg\pX:K''7hN0^~{wgG +٦^c GK3IƵ/iю0ez UǝAr= 7'&Ay4u:l CCJ++ݑ/Iy1i9_lQRljbL w Gk ~H 1@sN 'Y@GW"N֤F$lޮ{/iBC~+$3&_̿:(WL-T1}8SSGpbsu.UQxWtaz%eAAjeRbAu\:T$fjl|\vDޟsazޥFTzЊ=b4)L3\h WDAdJ~F!`ApT g7MnpJRohJ,=خW^pEr٬eh[G1pJwxzݽ-uYq VekC{(g+ + ړ4@|ln9Q`bʌW`އȘ*QC<_x:E* B SiR{Fi " S}h~A./37yK,y!'쒍rUe[9z MFw'<聏&tC0K=(/Lb!P':!P "'x`bB{׍M#efjT6дExA(wDfqܰ?Ĩ_Z8dg&ĩicZTVW` #o^i| !3!>s֡&hͤDx $k r G۽|@Lv|ރe~OW5b}ZBF0n̺'.X '4Xҏ"Wȑj⣷xEĻ@,uojm~ GH11}RM[άYbސ>L*DX&O|^}JQ)BF,@"@UJa\V ?؊Zxɯƍ]ʳ"Zyv{ci;< 9Vy&@ ~zYYD ͏Gyq=5JȢìfwv_{)Q)u}[hBܯ\Ё7_/g]ށ{s( eYْEJR=\Es̊qEi{0yfamɍYLw jM hy(-͂!v(>E:R c~3ꅎW2+MVZA '3 i5 *RhKR !s{(}̘ݘE{)4ɰie-n=_-B/Aџi*{m AmBM^|A65e' @`9^6/۝i3f!<96/H+`Mm>ƒz|wtm% \iD-P Yޑ s^;|k3hx\?^: ]5Y` %3cWuk ǎSFBa4$JNƆΝ“G1|'Ѯ {Y9 ϰRl([;d{?_`Y?~$I< #'q9v*Pz"UDG6i}6qUt\;!_.,#  +L6G7VpM8p72,}v%⇇gLަht*#<:JxjEX YhB?[5FZn4ZNXxӑcs@B4s|.66lr3[qO"U:$9{(xaX̫2f'?llJ7!abb V/c&Hrgeͦ*#?x(Œzrm˝iE-d@&gI;AVTzuu{rӒjhkMm=纗 #EojA*Rߚ{l}NǷ#>Rab ޒbD$D˝EPaװ~M3O|O㕝bY|LÏxXm5~TGmعŢ'KǸ8?EWڌ_Ǹ*fGnEqO|ūJg bCP~ks;s axț>w(WكW<{B<# .R|6Dpt?I'2 SI_{J`wJ"طv5c+Qýc՞擽Tfn$`l]}pu"!vٶߠurF':+fQ LbcC.Om@RA#\+qPX -<&t9{>؁,f1b'ߡK*YhnʜP-/eWO$o[synT}vXhZigizb9UB6b^na"Dr9[sUvl2VrTRRmֶ>nRMٿb,C27=isL=Mýۈ=W_e5ga"~vd= fWnu5Z8Zl1TN?Gwk!KxAKwF7a 5Ap8gmݴ0yHsUnx*T?bk*_%PCO3]J4Z>-}W8gTmJJ$b BYRT^v dYZh!W~8g /f[߲3g>-$ێt1ek˭vDFeΨTkShv\5lY+P<9 $7OgDrgKsͬ&N9&mPH#IQPd8ZYr:{ mXNX2 tNHqǽ8j.`_k/rs1<4! nӅ{jEi;eR6CҰTx{mi mf&c`Wߝ:{>[媟0̈锵.@%s_ %|/DP$ i”ۚorf1^V1KfYW(WFZfcH ˘+Ys{.oʽD(zoU }}hb2)3z62Ȩ&]7J'6FO4Z`''_A9+p|i W}YQ[+ 4:={:Z{H^YC`HsX ]H c Bc|>͢Y2˃Ǿv_lP(g} T!x IGsZ~<Y \c ˈ)ggh :Cv=R1bG,:_m(0qGdr)9&X>(5 bMbJtغ&ل"T8選8C#$h(&axo R03GUCIJtt6]/H|ԭTs$t+nhF]}K"rMHqPv~r;_L)2셵sei:muГ+Rad+qâQVrTZE: Us2 A"YήTI}uCk3֭NFE p:ĔrJ0sM< 2w 0xZs7S)r"6 JuqkRol.Pw87MF{A9~&U9%/~}St:Jts[ ptOIp_LƮ/cS[Z=-a!4Xֱ"64z&UǬ}4$~Az8F)WH [|QS&9g&e_-Gqot$JkqiIxݙ: )8X?ER\姙m9syOxㆬJy&݃^gf h> -'I>2+,P ֯nOT^6k”{>ӺbScb^cxM}ob_X*'ifO4ӘuCX=jz]#{)ji G/9?z&+{K45\nОL^yˌci[Hg'][U@˞lN0fhI քGi͵_JSJAPtzHIE0xW>RԴA7M8?oK:s)sqMsjp7ɛC%Z xbK-P k~'4,ByޱC֋ Gl  7MI_Ə:*FMکFGg>ZLpR3 ǬWfuZ☢Z3Ґ>=xB)7wpF'> "0 b"ErK6mMt'$To(.KyQok"V찎q"Cw-hZ66"?N*UϹMA&Xx*󍴝F-w_2L%͍$Ś'EV H:Cz:/DzH̵`2F"+QY\-4!Qdi~GO=ܗ \ Gy?=?rH×'sjY7+fNE"TC!XE*o* 0 9 FH抯zkخxv!2|? 30Ohd&Sb8jy `9N%3fy/^`דMKfZpDh'ƤBJ3f8UY>AZ/r%F^:43ޣ.ĖvboL]$}I"SE)U" *6M#qD:;1en Io&L$ś+G1 A\;c{tfnh%=g`FER%[%έtpq=uKT<̄+="<{Y+;G |T>X-5pHqƾj" gʭn,!'=s\7!VMzAs/hF ; !mS ( #lk&~1^i~nNn~&t2[GT ΆkYd6[ ]w-ŷ8:)zy$mjd Yu4F= # Ji( cj;tnίwW}k[ыP}CR۷n^sxcOR0WYTl\spk:w[ u/l--@r^T7 NBqeGoBdz"f :Z޵I 5/%ߎfN|n<{|_eSQ+.Zɦ'Ԓsm'UQ|kSZ6 9Y'#9'K W!"^Dtc-#FlZLz5 P,4GS<`1K1JDH79Zd #9&z׺xD$!!$ o$kMu #/--K$O}ƛXL/;džȗ` Cꯝ!h;}5ZMYPSl/ҷT.MjwWd6~FD絍=1ߣ,A 6,"v~i96Q/`~ soz{2h–݋ &`b=΢*T|YY]z͜.&p**uoOmhV pn^OkgXqNR9mU3@Oh'8jaq urvk^mXmg6E1;2廭})@T<#w*<@b<2+uK::+A#bm "ǹI:4>h|mU;>FQmWgV2ӆҳ=@5fU[1) EP=o!=`=ᠿV~]8j:)|cRO3Qs.uϴ׊PJLOhD+WWXLadsm$8gW~_Z(宒y>Kk8y]܊nJ`7 5b\(.Pj> sqYb:0-VBLה4v/}v{D( xmpEqJJuhJxT0y mN̆jUļdY"NgPcZh+]O+VK2|;aZwϨlk Io*BO\1ЋZl@:,C(v:i'rR<-i|ڄʠbl'q"5kHWFLribQ8?l ~-юh'1f6!aaԦ)%/W6bG+*{뀛\f֔Cc^gn)7`U!Ҁ*͟&Ko .{aiBiyPYk gvBuE[-^/m-e?liȫ(Oe[Ep"wiYA&;t?.=^Ӭ4f/g+iN:ijzt_+%*E?n DcRf>H~7GS>˲,G]2ţ>S㸙*yj dJ)R=UP4d:eSj)=<2c]Wax0q]m_eRo  v x6zGGG=KvD7-#fB{R߰O*zVrUIIl+[?7y<4;iX7W)GQ4$Ϊcb^K~97/Oxƻu*Ĥ$w:*7_ ZrnTn/@eq4hvSndI Xu67]ra[oD);XT#EN1I'KGʊV iu/0k_D͹uC'\k l4Xg| mmƋS0ѷbj3O^d_ w|Mۻ(?/`u(P6FQV7qe:HLy=~{ѬyV~GEۑxn "5S&wėF6BE/YvKOnAǓ`~hWdk}]auX1 lt}hdR#:y )jZ؞-~n) <3XRN\ %`6U&G"XeǠ}*-%p'@(޳W]RGkof9m%h=8zZ2|:wgWnēC)`~(LCKnZ}h[=M _Fco) k!n m* -sߤNu*E@qp[$_kI0cwǤ/! ($JX&[]SaӾbtk/iGu7>MHܠ;!afDgt'ơ㤞l*bSXbv5՝ؔt숆JL?M.z6t!/\Pv/ @t#.ASwU8jفNjL'NBͫ^[U0nF5/| [4@YG}PcqcQNoL9mB|PhA`2"?zՋZpym]ws؝Q?_ QN IBjz`޻hU&~㜼:?Qh _J҂5̃}ܷrB^_ˣS4I\mMMڎ-LD($Otcٍhh`j6k^sv+a^-Q1p+cImpr=bPLh~&KN%bq>*\|ctЀ -olzXTƂN,aV3in#܉P"*s>E}~7}F~ӂ8ˌg e l*܁t59R(s 'Sku=m6 _> Q9pf0Xl- ᓚDŽɥ(LYGeyUVERe7Wr>8m\ΗDNTwD&JSLD˘[pr,Eu?-*L;ʊ3.GUA،_p``;x6 Px{kI#ywKp)N7vĔinbi2 gj¯ͤrD_B xXoq _ۘ@* Ėb+̘UJ&)+.5Q~EJRFw -u%_YX;yV,bݡHB-4ohyIa~򸜮 DLЍ"q(D"?nOk̬]~dV_.'jՕ*:ПFIZlp3LuI} !O!ٵJυ5 =>t!ݩuI^NZ>"G ջU=dl SĶ9u򰔜#uѐѵzeHB-SDxo؀j ݊/"ɮ>G [FiG=*R:򷱍0U3F:85o)m=Kdt+V_)Rx[޼#Lv>#eKH+x t?lp׸-wdmU(-?%GE*=@Ϡ}'7)>̓w G#JsAZ;+O rPo+ǥ=6sOԛ1߅/aBJ5D,U*W>=*.i5&&(Psg'QB83}x&[A7ZF-9\ֆdBwA96UWii n ]p&4vP(a p&9NIl1hPK^RТބwDΦEJx1"SeoFamǵĪ~jS4]&⟮nip@h}X//J+ȩz~_ZIdrDC/I.oծo'͌G_ S>MTJ ZYEniV4͑4 Ψd\Y&K&6g"=3-Q.IJ"XWscKs6 :5v HO SNyHʘnɮv)*=ҋx7fGC%|re~׬m$G߅ ="+\aχ)5 [)}%W ?aJOS\*(?Ws}'#iEsIo+U\ov "c}OGG>Gc';/Ŝ|+ =8Lc4a0HE] 2Vc]KFXnU}u_XeWaϥ0/oߠ\ Ծ{h1N1~.ՃER=qF'dpX_T[hs9*tkC9a%, BEi(KFտo6y jP")QLG=cpj9Op y00_B#aⱉ@Td&xfn.A]ZIJqsc])l+ mT> g'wϐJ6nVPzOVm1^R}tts$S1! emxQ8֞$]yۑyre}yY|djI (k?,%znƪB ՔX0Z&-*y EQ?-a 2Uӽ#9;ҷKPCC2PqQ! ׿ka\w,(M $sAI*-<=UKZa=H۪xB;.gֹ:'p^l<"HZ=c'UfMm;UIdR*cv@w19>)AY"E`jt,>p`z]nP' ]tZb2x9Bfj ejآo yu.x3?g|:Y2 -y"?̧ssCO>M,\˝GB\(^/߳b'}gqЍ11KFT2-nPMeCG_{/ +Ƒ N3.hIuah:d3l7lR2 *; U}pUZP}!W2|yx=g^{ ;/A<9 Qc!j+{t# =&76E$.mb_5rs)]UAQ*.ǪjN S&; ہRn|Z^ gl^T$Fc2S eL Y)9 b Ȯ-'5Nb+G6<4]:Y bv;%oPcL8fldkQ3t<ڲ{#9hqP_9KA@uU1p@dwaYBmO98S?$nw;Vdb$TN+l_1Kϓd)5ukRxV>N2iT͘ iep,:υa(j](4BI˨Idv\#A\xpyN?[:PAKl5ֲ+v=hreX~kW])|w/l1هU] W=Gi.kMϝo"`,QW*1)窻k DuI %4OV[>ց(fЪFz*K~\5XAN;I"Gߣ[ $l ? :f g3/: ڽgI/[; Ͽfwȇ=-$hV+@q`.ͤJBa'$8;Ƹe5WWe w=DSnّƥYoJ9C HpcJA|.v+SGx 馂{.>Ѭ<]x໇kU>DV8aߐ:W.}E:SX_b ̲~{d^1ƠJt\5a%01eKBxeӟn`,JPKJKER6? Qq}#Fv;gg Ъj@\^v:"gEgA1E]y%'9 X. ޳ 8J3(Jj3qǏX9Lo20h'/>K2kg`%6.gkP  Gr>ͅmwX/D\$^_p-X]@kbpNr*rH5{P,#Լx)o`!l& -J#` ՙFJiyge Vşt9D@`+6bd}*L<:kגaּt[<lh}PM&B g s`,m̛ȌY7D0#V@JCQ#[|iKjn؜ cqʄOSvAW_4d >?.Q@ef648@O'|^olp`-׉]gQ(T]~5 QwaR$F\g]  yT_˿RQ\?F=Ia.ǵĘdyJSE,æFy#C14R7 [7A-^QEEf*Cn%vJBqbK0/t>{PYi;l2Y1Hx_uwIdG n\C3c0lyA42a\5 B*f݀RtbWW*|"݇FjH Ln= S.99y:'GgĔO]J+qr缾 GD4RsmKy֜)pzjjlzٯ^'C%JIM;{%g󔫌 oO<0Fi Y=odVgg̎ᇡQ ^جR{*fdTT *f*.^HMQg#!1=N:, }5 ?4Wvך!˕k16WV.i`yW; LK6.BtG  %_HNMRqp=J^.\E9:htB&A$2^!tN M)k0GU8nm'*S J֝8'H]bTFk]6Q`R d]+\q0]援2 vsZRBv-6l{q=~,9?UHkpMwwLM ?ث.G*u~Wjo2Hh0H[9f8W3<xpɓ9_l=//$. x~ucwiP >~!`pT|)w(#qV&@?OZHWは݊_{oxq^65b2t%]01s)m;|q7dnBFge$vgj䛹?3pK/婀k0rI빔Zi^-XqA4%i`F'Oًvf =⥦#,V_S%.1[ zU3I\a6:}ps<茼Y߽_]:7~5OfHO &ĠB{F^f*mrR$g~'H .%`x_f@1v&uIV; Ѳwȳ}flL4>Q6Ũ6tGgyw/w@L\m'l> -k[uAH d據fqQ%d5;xl]FþLe\B?0!%xQ %Ϡ>_?aÃih;SX L>9 = N: w+b<#zwFZU$=4~[$9ߟOd5[]_1$t%|VIRKIHp7HZyiD[73}cN>:c"{ޑ, VkJVX'K,06QvRQxx7s)6Q !)G(DaKbhHM8锷Ȃly2) *ᵒRz޸?箾68uxf%HEZι%(lNcyiZkW_mdA#)}jmJK2tp~Tc$NέAuzKk;@_٭4n& lJj']g#u(1"*'f΂ͨRP~' zn&cF^ՇoL+|QI/B˹v1,X#\z;w[ `e곷VnĒJS p*eD6|(Ӿ/ŀ~a&H4,&jb V!#L&s,hCQJRc `&pƽ 9&J~nv!7kw[ź؜'s0wn hFk=Uʍj腧nȀ2aeʝܶ|F9Lc}L¼@x%k&Ea7LOS(͋ %RL +i|")F : ~so.9Uc!C- E;~R)uEU{(|-jytks,H2Ӂ𠑎&$ #RR{=h 1@6") 'e`,M!_S;rÓc"9uݒ9T_ngrr0'7ս]DFL5ipOu#~$$R+ *+㥋xMm$vqyc5pBt V7GU&fzd &s=iWOG]x¾lh\;x!G$qD@,Ղ[A L3eLl <.[AQFm歹>NZ'=;\LP.݄Q{9kKY:nhM@5p7m;}N λ}?4uGڪY!q `Bs@G<;a$?)@s^KU"H&(5j.+]ãk)@įi{6iq .TEK%oi4E96h?k1$>p?浼c';ō?cBԭ#r3)Ucd e_Fט@(Vhڊ[&eߐuCgnb; hUsoLu!اȁnj̈_| N핣BMmzݦR ug~6s;%{b5[;9y7RVRCޑ$R!*QL^+K:Xŗ0c31v/"+H"Ҭk޽a$+=ձ@ RJ!*zyfzb:7e)9kEU]t24\Kz7Ba!ۯUO;%5kK?W(_vq^mWζCxA&j;{.ܖ]ڊd')dɑׂo|Hl촣vG\. C#9m"0LnoZi^)D9u׹暘DavVG{OY7R$W8WKqӲFY z?_VvqKiY#1en% 'J^g&z!1%3TJ4۹8!T٭cLH dM^{&<_N sl.zK)1}c0gL8+X7'-aњᙇ2doՂ匂 n`~@}];{ 58Gy)l}FJ$F$"Ş~B23bޕ"W{QAўQsnYCy*'.l  tNCLKJuJʝ+(PkMSjǻK_eVM/0 3aUcn`Ǯ+-=PVd\nM%$~Il>,2!E<3*FS+FT<; \~L 6so^4 9S[;-|Q>yq]M^^euh1TZI4OKDXO+$`'!d2?!\+˲#7z9PPJp FUM߫r܇EhKH_D} cxmH6aG4ƅj]W"dĹF10"u9&W@m|aac6l-_{q Z |0]ܸx;X&q&qb~WT>Or|vWxaLfmtsyOnJ%)STY^oɒK(%\jS)n-Zj1kgWXћNNHq4ƣ7!MʓC{3XCWN<׈O=rWp#71 yz0NZ| =~v[e"p+FbC -cSۙ]Z 6Gnj/Թr|MSB͆X"B}##%Fger[bGaSYNpo}[ ۂg tCtn-A@tgJLԀCFQVXi܇:Q,j!L {hP3|WdrYճ2mSsݻuU,9yqr?4:rf^`e3m\Dga " A /ELR jjK2,ք5$ >` 57K81z=IH{8UmWt2, .3e^m䵤h)b-V\1xZ ,5.mz BqF(j/ zSxLbUP ȪGܴi.>46 ԛh-0re{ƫ3Z Z 3g%c=L{u+wKt v 6}52Mz61D'y,SmZx+%[(vQ*hhK:2 ;µ $3q\LCF46i.L5lo^DK\ exUy7v;" 9i`"<n?\"DN~R-ߣ[\[Y휻&e &o/,^]AOqV5 W?Y&= q5zUAd?50Z1N"z`|^Q̈chkXap/nvC*+ʆyȚ^|y/9E[$BCt;DWk'P-/h:"%66UI9Q|T'm]kxuҡZpBqNgcLd=QGAA~0$Q [}P!yFϪ D/,g.*J.g&݋E\TxJ&0q;&:.=6Fl~e|.Zԍ__S֌zWìON4vq\4.qqz#%}Pm1E \ 4t}/ws%Ri!E4y_"̧/]&rl?Hf/r/B5xSYNK컂?i-ؠZuurGkӞNsp/jq"Vme33]'d=_s}.?Js)wWAX@3)%S,X^VFo5k("#+vX*v ϑ@>}%%Hlxy]0B=-7QORlrvbUko^eQSCD0eXMX#2*={2Wň˲sFyTe @W=$^Hո(z-܎%}x}=͵ݏN Aj'R;X+RLL2_M(SW[ ?),)x 9`9 k'"$7Mȉ1*{$qĸl5=l:$V!ka'~jX=>O[9!G'Jx~6۱C8֨-%HߏHpFس="?UC0saM A EôY kh0e,y`erɅ"Aq7^J|xwU!#+¢2M*+zph҂-ӈ,CC*8v,JN50_թC \kḂ|{xAG:bb3?ֈm9>I.:eijgHXTg 69^.et'Pp3 u Y1/g/sICq(GI< 8Pל·GM`&zCS m0?د$Ywph/ Apv΋SN(3Qc]6K|;i5#ëh }tZg/paKSeN?woT[љV|3Cb o/ 7o7[̃`dpр݊m !ú" ag, OЋ{rpDCGX/yliNwf okv8\86҄ #E;o* ۾S$-L"yR)7R*'mлC._a z͠ *SXW#ÿ#'+x|]71͟m( T>,7vӓ`#6]TEBױM3ڟa@xJ&EMf\ĭm%?"@ڄ -c+ Ovt,g{*(olZɺ(;B &B7O'VQ?ppШJCSŧN0o{|Q`9RJJ 0 ݎGR7z@|Y`'7K-EY&!>D xĺ.FBOYywZ>eV(&+a^h@Yw.M~oDCOOufbga9{5^Zs֐cY{ + ;~<}S;@dC.H|ۣhKt{ {4zKomn)Rм^ 3K6wf{ ml@GErB f($"{6, aϧ&GKǿ0ܫNGDd$)bAԜJǶҸ^cQua` ^Lg1m&d`wٳAD 9\ו::[p<PS#hIG*̚{'ă LY-'{:1KNaF{dgK0)mB|C!IpV5;Y:rB4>`^NӿhS QڕOV) YvR-.a6ye oŁ> UvjɦPd>li>5i.w!ň;mDBm_87wT4Tkv嫢l{AA(c9'as|UY3:f* irTMTy4w]*"!tVqس#21tuMaU,o%<8hi7np|UnWo;6Ӌ6`%]~tl1Q@ErʦA6%0f4} tgj5e":CDzhM-g¨:g?OBUfnѢ6}"(+l3,RWX_׀6,xI`'yݠ4U˩L+wP;Fq='U+ٺ\f`4x>'9& &} d mSyu `"vwcw\7-GN$~_EZ^VHo51t\J84o/sjOY ؟ `A lu=Kw{dc6Jb9,hH^qk-ٻ< 5^i#IF[w@ )vn|=`640 @u}Қ_3`gVzKDz Cdgѥ$Bx XO ј%CaҢlWCR˔!Y"\?zLd8y[u,쩞i(m;yREnh]baö+$3H̫-+;Nl F{QNB<_'PRUƩ1w{:ǡ5|vTa51CN KjSP`pFMZ3B˹bEzhqIo>^L H@*&܇7 0RB:5 C ĨTw>OHz>'QB+O`..GW͂K(Nv<, fʂP`%* SjF\nYU"oJgOFڤfaڥ2!(>dm}lp/b"ywGCug(`%$+h`C^VSy \2il \7x"CfNh[l'"ȒKV/՜ 8lFJ`{Jp2iJŘ8(MbuIaP^xt cK=KurA@h?4T !U<f؞޲J3.,P}szCgiZҘ0tI?Y7&s5,bdlU&q71]TKW? ibO6iN?s^"7tY$=L AB={Y|75؞(qeoX :BAjצYtyn Qqv{'\$͚j{)jC~ C)q12sg-22oT hfy=J1jy/x7{~>'Oъė} e<0[z;O:Ujʭ[- Үc2X%2jn8pB((t2mb99'xT;/nH#!,VT +t%_Hx_E(X+Ix-|^yZ u?9aBRyE_T099foa$I\vS33@$껙$uQQ(y`{O4ҮJ )<#+/ :p&BE,|ݬ)gk6fF~j$RN#RC  iߥ}###r6o^h4|pj"1ؘڳZZ_UK;_#Dz =ےO0r%Nb< 6as_>k2 ~I@p佃 wYɍ,TVk_[B3nY7u{+ "h\m1р02Pú5Y9R!s[ÂQ7~RPD~X}aZO$WBH,U!R/~)厡0Rr*;%6 t5u?'}9Qk1×Tq 2KY)jޜ!F6ĉϗ{q4aܔ\i%)Icos'*O7\,Ӫȅlb+^fR)۲A?.DyѸ *z0 =m:hIkϹu\!4U!kUZ5Se"^8/yqIZGW1Fopnmt-6iN1ϛFI\u#AuTkS˹zFӿShV=@46T `>Սۊӽq52"c y$!2tAHؙJ+h6s͈r=$ $]Æ} ^L炮@MKW&T5z#( $uu?J"Q`c,5Y?,gl.cGЏ6lV PZTg)m4;p?vӠʕs$YfM4%(MU7 ܅k^a)mTj4´'7-T N oa?+Lž o8|SkӉWuÍvXۛP$z**IDuB̼Є{=Z۫tDϊ,q@xc9¼Qn$LΪ ?YbT,*)}{3|>LLj^,5u}薦MGLA|4LS@ pXP, lsBO^܎ &WF|dcm zzy|Q;5`[fTye1P S2֡ap3K_l$Ȯ/-":6'59%n'A^CQ:&YN3?T S F1lE,*Q'/1%xK0ooh)DgS$x "FH;5/;jʽۆ&thݽc)V (TmdUd,<1@8ؼ5N,%<3ANb@M@RS]v4z{E!;_ t{C21grq|z4s]R0qiCV9fCSZ->!DMh Bٳy(qZh"3AY?P<{SV# #;"!#0HM㐩:(dɁȾH/g҈܇F{Z 3<#TY K Y^V7O;-ի񈰂9'nG&` og\is>C**u~ pNz}ⱏ*J*~<  Ctr)^6Ty*\Atq^x0hG×i>71Mfob9 ;J0|r CP 3 ;k^"L7탁"nB$"]5b$T^|}A_m#*"[]oJL^݆֯4U Xwk#+y*V7FIp7Xi$֍NXhFjR+WfYS\}Ro/kW8N:dv(Qi =>u&bpAcP, X:Dr1(d:q*Bd){B\- 9A>.Ի+A@bjf'o8oJ:l{%']`|aA-%<۰aTon201,Md՜҅L%OoneΗi=rn{@-rÅ"c)Psk\ȁu.W).~4S\S'zӃzP]f=ifi߅s3:Hr\R2= 8VPO*?x#S "D%W8dETߕ6];6Ghza6v`i(f1_\mb1?Q2fQ5 "|Vm(jbUØ@e eF ,jRb>a=UwꌵQUb3{HEi'Žnmj`C{lU qm  yʓ ՟!B1XՂYsA} z,4:n[} V|F434-|܁YF-@{gGjuS pw ۘY1U\S_s}(|@uqڗڟ_L|{c @0x ڈ\=UH|*YS7(/fr_m+7-_~ M-Y瘟t`q+(6?p<>S(Qi&΃7p_{v@ Z^TT% ZtO]@oee؅Y"2 q[O$ &7LP OviF+Yf`)}5'Ua*v`"8"Csj4.="{ɺɩ!U@o#4' F Rt (V3JX!(FX)#a bXϬ_Zb"rt2~an;Uk aPQ3-C" ;WnۉٿHٻҮ6]ƛ%c@jUeK$SBngWp%j6y3boM[(.H*8J+5h>a $1Yϱ.Q ͰE+(Rw\R'HY..oEGcAJ/ y;=AUMi-0QSPtnDQg4j.j)]fŠ:Ț3leÙ ͯ#dD0֖u)㴸2mQ{ .)Īyw Q*q23wX% ړ:qMPCA`clBz>2tA|86KUG0ꊾdc`sנӞ2>Գ7OA T$Rg)JF l*j%lG.QY)$¨H*r2EZ7JwfK{UkE0@C'?{OfGed"~$EU5Zd!PzE6ÜG^eA #m~yR2@nV=fdpK02ܭ| VZ!ŽK`po"l?Z`qCNF k &O Q_V􎐪&޲Ƨ{P`i(y>|"E}@Uf`*L\N'[ &y een᩶& i2rId @^\ :bb%Z\_QN0?Ь6rH% ?0:3ǍY8f@rYO͈9$wJcRr\ t6xѶ.XMz~; e۷v ( hTy),Y_NXe]YqPWNf䱪Og_+,_Ԕ$ 8>+厠5Ml2ByӝᑴwՅi:M)U4AT/QZGCMmpN\oБL4+8'|x- l;ѡOd $e[ob|RA7a'àXCp#O Ug|@*jynuOaYDw:YVrYֳݟ wHxק;o\ŠtGX& 0sfPB4W8 ylD%wTki 2G +f0!z`2Iq^tGzp{Wh1|;= RSE!:^=)YKC\Po|>,{.Д;mG4rf)Y7yG>#bm|W|*: Fy"C,1.X.W^DvMOΦG[x,55wZgJ{<Ҟ6)@;՛3.eɁLjGz*X[5Jxd;&xpuz tTa\brH^W:>>~;ĆQQ/.sp\D H,%׾}Ayy;0m> :ٙ"aa$$H>**č(pEwSn&9`>zD{t9V|I,D/zK a 9pv=U&V4݂:"V\#VXܸ*S_ee7 }Ƀ ~bU3.ۂ1:__:p -T QzJ8/qhCk3A"O[/d5[gLkrK=]HwtS= H Iv֥ٖ&>І;Vu@%HVBF/QoAZe ׈~(sKH+vnC2S @U,JF\i&N''Ưj#団K}v9<.ʙJ- %] W΀"},U+8 tIv;Q8ޒq 'M ݭ=$f^F`}LCYֺXg\+@ 9T1`&i ucx{{4=7[I7)KO:dDsqT X: :ԱV <ե~ ~U'5Q~&y>g~O˙!-7]#8 qtJ>W7KZ{>&ӈٝ £Oʒ7cugjaЮaZQW1'*$f_j u@ WNƸMBH^c9oe;p^b\KV> }Uܰ1O:+o >D;_Į ]M3蓌S_)Sәr> Xc$= Չo;\;&~)c#\WNXQ==5}I#uC'#v 8s=^x[| zMO!Xo`1 (^TE9tZqR+D5 Ms' g37^BwZ}|u<7䣣=th1>*=BNTQ(X&wc;o_֢Ab>µıD O&eǦݡ[]foM| Sc.= tZ\Ik2NP`lt Op}]qMnnjVPxU:`Y }L8Ƶ)T=yi9ZhfQ1Jɦir$UfL2B!5QXYNQD$^ԤV 9iNωO\2̘ Oe@ʖΨ}DQj uuł|squ Cy ST.Ph~+$uŴj0zZQ2BMMX'ud;H@EkDwicy:"Oh^Vξkml!mob thtKЪ ֱw (|:;jLdȅ$qO>eɷJdJXrH=a{Q[ր.8yO pTΓFTz>!K>p0!p3rDҸqPZ5;,֌ż_sLHFF!!;W?F+IUC>کQωF8,+q7hWjcPx6 zbjRxOxKo vapGcnߖL.MD,$odՆPt]jVFÓ ؈5ԥ;46 ǪTA߼O<32y.n)]nd8nuaHKGq4 gOsKT} /+,=Ɲ 3t<O-b8nqxiB:j.b:"=NQh}-#j/>Ms MFj;oSj,9J]md_ҔL: `ݧ!U1y5$ %8Ҥ¯0%&kPio0ӆRH=޻znRCsF Bgjs懖>Z߱% =(VAZ;gG6hƳ+SOF(v'n=@AB@A+:15]i@F*;V~ M8 3E@1>!ɐۛڤe .rN\hUaӕí|R\߱rLpDjNg\k \ջ=K5SI=_]bu$vhXS=ԋ$;ؼ^̯"! ɴ=ʎf\e o}"Z&6%n&U+h@JA32P%f^ο;Ύ p,tsxe#W$mp>DB _r3KÅ+nYZZ`kE/_ }vm˃Ip0Un Qk^T>XWF_wHRB[ΠVUѡ^{g9޼^˪;hVNz_RxTS%7 o3XFg.8XLQ"^A_5ۻ#g8 nngѯx|-&|d7!0uz\~LP$m08 4 ?z0B\%]b z,K+MZq Vu"k9m+s쩢?cA6vJŗmJs;7wWn4`Bv)ԡ&6dQ.~( |0XLg)klKz!ֺ?^ؽ&>CWՍ} z+ bQuc>nZJM ho'"$9RR XGBWHEhԁtb,l~_;lO*ꂇ>"Prmg[<M{n7-}6w3 ^#=,dQlmJ ^3}w%PZ%QxkB7΃B$P^R2>-8o}M_n|bIg @뿞:ӻ)V>G:N6Yd F aX159Z1W7qUd9Z~ n$#\QׄFlJk>W4{|ӑAT6eUB Q4!& #v%f3?nLSXVѕ p:[rQ?jJf~Ģݜ-ղu2~U\3&EG"xM-qyc˲8+?R\!711d*cCt@$) S{tdI[9dX`h'CfY=t%Bjq/HzS1yxA} \>ե† +yV✕XTU`'wmQĥW9-bH{k\> j0w~ Ķ$ݩ]m;6Qp,J=W~6n2z <ֺ:ֺ@">nT2 : ,ۄҐİ5'loԨANc>EŹp2x鼏>5/P3:[eAԙdk'S,q|1 uTӥ;"X7$KLH.yG1j \`?n9ܺ\M6~K}['Մ9[o::(K6%A$QW]\0 ~cBק\#h߳dRY HmŀvRgI 8>8jo6zWIS;@o(BPO.-/=%#fTV['/}\G<,noUwM-I{㭮yeޏs7;ў!h]s$/iL> >cʷtř,w#{ۥp#+Enވ wuJ?ԛ(_C팤U{vP r*gf8y][9.VpXI"x 7AaV̽DTTI1Q4^n+ۿTPt}Z%հl+*:; ѿի3Q#鼰ߜsK٭5Сvj醜D /zH"oRz;_]oO34J<; 8bX*Hԍd^mU0q'~H Ze䯞C%苴 INx,v[kN%YoD>[MX᳂5XiF3@Jɜ!x=2-/qnclǝOx9JTZ* :u*r4EX;b声qM',A2/g-Y^^pN,E7g@==2LGV  U4ۛwqJ/~͢~bMې-s5@9@Y<4rH4g%#d1i%N ;-j)n2]Ǡ\ҚC'{iin&Li &pU0".;焒dv8ʱߛNTCsu&5Ҫ5/Fʷ2ҏsǑ_qss:yý@E_d&i>ڱ(&q{p4xtCN\@~Fuj[GτotEe+ͻxyɴ? _ ZlkZdРΡM\J`֍ieap|<|]o-gl⺊5=Φ*29$m"Egͬ:\g+ùwݰĚOLUfs-zH.Ɗx5l/,ē+ӸȚgZ4tQ/H]w;,-]ۺbV/Kgxl$ gx8k1Dz$kaNvץm GHgv+)sʫx=2`溹h,qC9VA3[Z+,3=7.z$r!^u L:ah4Vi&Y܁ڇdFZPsCue= ;9*?YD#$am\j\ͤ^i&\d!}h3j=[/^P0)h`Q:e3F/I(]A> s$vݛ*G"X׹ ':S;ް*xr)ˋ.b3jW:Ss5CW ^aaj1R?ZT*cSuwOgN@b+O%Z5(¶!ЯѼl@u̘m:dV4~ u&WsU+^4miBKuMg<*J~i)ܫjL; kiApҏDv-J"OjвcarU] ΖF6 4oM,J1Hta5j!ea(pĶGɏ`±lg~@{V(zu* e2$Y?4vS貮Lkq3a&&٦O6o  ƼW^.?lbKK6/s$-| N'KBB1u{ZP3@ ̦Tsg5xOq׃cZGnIj9CFJN[a^,2$~Dğ-~t-*䧻Dez Dez3bUgP WBmgh~3^`RH}yQ gC] Ɗm%oBiq6b~6c'M'ědUex>zAHNL,v͟Nk2 ͽMMs$5&F=65#e'HTb{ؽ+zhA[?t EMN$؊=CH$-of2k5/KD y92-[hb34M H@t(Xľfϛ1xcEKM5ík8fC RR'+=.iRt >aʠeqPNf:$uI"Ҟq T>øHxߡy,8E5@~x"Yjbbn3P, έWw[x& QUy*mb Dі0k*R "& (A+f } })sYB{~a ;7aşBҡ ބcUzlO'K<_q%h lI;c[BftJua{~9H($b0GVY_ b(=bS^ ;~m]pm5*2鞘re=*^)zf 't  fF 90nDT:= 7Ώ)-msh&u(<dqO9(]ϴ6vQ>aWVaZFAoF۞L ^b:n=DPLe 0=IrY:[-)E/EۜuQb1r4>)[Uî ̵,YTVJbZ;cѺ{t R5C}ED>~w`JKZ2lzXvKiSEK= ,1Yr} f64VmlL9gqI(!+:@8"\'7SP>۱ђH6ܯQ' `|¦ZehDٓ憥v;1?| 1}owC(ERμTp=5* wn~˽!!AN4-O#ZvOڐtQKn=vG1B:u"0oAJ|a(mOg@E;fIZ;+VNhorIׅ/E5)%P*Vd.P Ex8)|E11A~\'#6a}@K^T@n.WҢ b&1a Xd1 r,ts4^ѧKM}Hd{F(f[RY8f7\O9yYcI@^)8 Mp4/E}|+#GP}Iܺk[`jb8j8i1%qGPgE ȵUx`Zٳ="6*m2Ixyw+# |my잌zt MzC{b"Ac[VRב3U1pww?4#څYnʵ?31*ȪRs)]h;i:-Ty-Pّ=<˵\[L=m NNsN?)}95b˕qS^GvǪPPEui~&9\ (N]Rq6$I$`mHTy!MZ(a&$ORҿierԲ@C;M|-14 CPį_V{۹SDƜشp I͜&.Bn&{?S/Zm6Fk=L;H!ecAMq)1D%bN@ b<忀RQ#^Pɕ=Qقnvmz[{$TH ~rtd;z|~jawx\;r $3n^`'R8 Hxu!"W=Žlӣ4e8y껽}j(C(gj8*N z9=/FL+]8Ffܚ" RJs^9"lDw"O[ )÷|㣖c}+F.si]0B3.b2 H~NXj옌$+%pHPaaxͲ5TԪAg&z@l35llLKpMKݪC{O(ݝ|'GOޠUF]k qԑ_2\g`Y "m߇va<6:]Hxf^L$̭UrN%7+ﺝF࣑E~!亻v oP) F;77+ ::Z]3)-iTѦm?6h>?i6³95?}0J6MܗدMYE͋xubJT&FCJt{ 5l>A;{emItj*їo[rH΋=#Uv%_abrqLǬy '@ͽI^^/mS54ЌeAL z 6fXLn"<:5DFSHl79CIf#PvTLw=!37sg`9r{C?Xstz14"[R 훼ppSC & 8fNljřdܽϣ$uʋCgBվ50pn[- 5}K<4Hى,;>ӉcYڇ̡{>gkQ&[Q_osA0i.T ۔#԰Y/%Z$H2,$h4qϝNn  %s:5_@#6˻C;wHlHJl Db N34ԋۨM]9.a( ß٦Å+8>-̡>%G!%O66x8}q%A4GP4QjD=d.Jye7ݪejln#M70?MjR4sW{#1;ɌAW˒"ߢwv3Apz@}Xy01YaD4GM-Yi%βa[ԧ= WE9SևJڧh.d`g 7`UĜ_(Urʉ%î` nzY#j0М)`F`6 Va\[h [ ʥ2MUC5ք1R0B}]j+M& DڻF|dnT[-u|նo/&Ig!CoolJw^RlN2B;[wF9[cjŤCEF!IX)86e&aɩq~Lo\6uׂS܏w=~ol›hWg\nMӇ/r*rĠ:0m8й^K.`>nFG i&df]%gwR7|uiI]pgHP1}8U5Amǃ f39Sr 'x @^MR$T#ӵc.7» ߑY$-}dK+WgശlF+j]7*ś|[iuI<1ƏThUJd C̚ ˛ܪ,|{̯=R V349-p{I˘3T {P= ~p8+8IfPQ[31X41FV blh+A1:% Q{H1eCfn:9<#h`G/+WSPgC8{7FaPm5/>X|KY+dՒocq.^dEdG%uVz.'qGJ?v. ]j78}ك7jfE~ 3'|F1,iaflr =i}iPd BB&P&yv:3xeyW|&)o]iR! evDR% (u1&dže?Cܝ|WQ~c dr̪V7 fsMtI#P`Ο u dB]ꬍڒӦ M}(aq3UOVhϬ 6/f,aHce~P3t6ҲWkJavLNiOx6PEx"؀ F? KvfkRU4Kz3GpL?>rc9WڡՈ"N`KUX *z{ؚMj;U3fiDz+v3&} *bìVkՕ'Xt} ]@E+V/ݐ#l7zVd!!4^yYǰOz8KvQSuINص U?)VV}ZTA~ t $ tl&vQx'yv%(vSnSyx7Sjqt[=@egԫP{+ښRPX{܅X7pN5"/YK"^ŝYayRs_߫ ^It@ERZ3Ē#a)FY7'1zRYz"W6 #qnRE 5zqI [A}sˑ7H_cKcDd-'| I(?Dk'HGj_&P n@hI4`iНsq,|կ< vsl|8]lMH?Q/joL!w,ugn~|ssP I >ovf ξ6BV7>![$7\|I)elm4y5 hz~mE dZuE~Jߋ-e>9ɭdFkaA9xG5%/}{8B﫛bI.D[gEr`0S_:PL':vi ';_pmU2,(8N܌i+q{&pbW5/ f8Ff7.w"^ L"w_ ՐsyJͿoCcêgKIm۔o4e/_t;N?me e=aȟj)jz^4Nֳ6a3[D*"hg`zEImj- 3-_5voC!U)]f>@(B`~ ȊcI7lN!kvnv1[?K\ 'N+Su8 '3Xf³(!6k3,ϧȐXܺI"6=eߑBrVr$OChi\FsmUBDN;,%-Ih+Zӛ4u/kގK7+t>oE{Z^$`]w|: }ewx`5y|\^,}澗OpL嵇`1ꗚi?sZç*ӄq*WʄP\';mA,BO9Qņ椒P Tj%B@'\9 w\_,M>Zl-tCη@L,& *8W/̴􉸡|mIM΢FTFKxFh+tp@EA bbFzbw?#p%PK%T^xayZUW6giy W+L )`kXLv*@8]i(8!F5Ixed:AIQ*X"_WxNR\ ٻ'֯:Ik': D_ӄROA>/NGSN<]C+sC`_ygz^0>p+ӻwFodU*'KIKY“Ls;k@ֽH !6itݾ x\my^}qggpuh%8;[^!!T7/OV@b}dp7 brZ;4xlkKC0lF?@62s{֬Jdz{9wC!J& xjfehЂop+occ+cI>)O! D~r#oȽp1Z&k'(d[sEz=Vq_e'1g`*fH㕬N=" 88Ѯ;6spEL?Z+mtF&: ga9D[89͂D87jv@M7G}'.3;E|~J+ jèVgIbCr,I[7(Jg-4lP-bDa6v+º$qnZHO|1p f%F*ߡ'w.C##5K7_,w'c수ĨY7Xـ&vC~ɇ[u5q&ʼng:t8r|nxT`[y]_;y%!Bi:ڶ%Ot<[0 9!]"q60 K{!zM؝TTB=lAp9lܐ+ũ)p)MOF? P7OjK3mB(?T|Hᩰ$܉:DU*FT]Tee}9-~u NoiL0 r$ >O_܄@PW5jLwBнTfXlS=f+]v.wF^,i| n \ffz= Զ|rX?zp#q(K$)՗$FoRLMHTRPo ;'P ɂ6u9)P򳹦Ŵ16XCE-W.^)~&$ǘ;D5h4=)cJG9])i I<}^p䊧20XEZóʙ}UB'1p.2D4sfKlm `#g1Jyp<=X>q@5ic;!8$h; |l_`TQ=G7ƌ |_v|v{[ 7P~|#`x?x@\:rftX +>LüUos_u! #N3b I̝PE`^E@a|zGb.>x$_ qO.+ף; O׆ˏkxN$7m #8?5R>Dˆt6D-k"\Rg88C7mRq}g$2 ߼}l@ u</aL:AKT8L(z2O~JXʍvV}sA0~R~M,7ex&NFV= Y$h GYĠP>=.Vͨ^ Wdgw uFM2Q`cBg~P?;>j84/ߨB7%OWǵ"ჯ9˲ƺހZ) TSM6T-09TF>k`+ߡ43J9c(bͶ *o?Y-Oܱ7;Jp𓍱l!h.C"xay< ƌcAE u!B'j'!3 {/}x5>G(_f&UF{It#18M3i3D^CPcm.ήuA x,Nj`{>dA\/TGQqk8~O^\C_:4aKK\4+)x̘zB2mi٨!R]Kح|l xn%ApBLݧ!\ÊnY y 8j UdΡWM%"Z$`碑u뙅 xFI>J 5uD{3+tWӁI^IGB6ϪV#>P!CS L8O$T2*t|HU%_V.R+|czkQ2ZB{uy ..lS@x wljN0wV;fK]jfmj  3ɂAue.NM~.8Jgo.0EBPRcmsF8V]ϩꪷH .7Gc#=]c8G(P6K<1`W꽑ٻE1[+>ٹs'?K<#d1@+S/w}XPhum(evp;z0_\uJ56F vN-Y#iK~T>3\Hi;,K[GjTjy';_:Qd_1 #! hAFJKiryg5,gI9M*rn)$@u2.)P?Fq:A7%z@7Tx^_ c8}g:`|T6q+Φv ^Q_}Bbub6&jB!)QR_<9 DEtyJz%l_S"]lݩƆ.(R9P1 R7Q2SC}bdd](- WK8Ȩ4GNb/rezscqT:д~XkiVHH1Qqa1>Xɣ"4U:#A^je!!iOPP'}ڐ4\ֳQTۿ/B?'l_|;ZW%}u~ 9UUcQfg?j*Ў(GJa9~\ʯ#f!,[yҭ=++Ͻdi2;;&V mf1p/0f{̜R[ 74tk۬O7vjיoإsѺR# X냍& EԔ鹰rx_TmgP6-?>3 2#fQ8IQ BKk1Rq7fa@.%'9TJX+ zX=m2 Vb0o}?f*C[Ge#(_a\mOTj;qO`*KGja߯Gd /k/S4hf=|fh66k' ss f3lB;n.ayeVÔ`ZS=trFGO:0!_rQR̪d^$CAvHHd킑m3Y%}4)_Pc!Jw&g4t;.i-]2y̝j`9Ml{ɩLR%W*nMfȴzjYf(Hk4ZPզ#-}ƨΈ2V[9$H'vf|#mIagCoBvhSx˙1SI`pn%|C6@M+ }O W,:DE␥iҨRh]U-ap/lHOO5;/`%xB.k|T85N>71k֨㨬.mB2SB=e-o@G 8Nqj: g송pnO:PxW@m pa.u (&EQV5mw҂&kt_#~?,f 7gt W?X6S)\Q'(k*7J$Yf ?tfmL6>oAJ/_袓_V4b fP}CsVpƣVѠ՟3>#z.,Yv8AW`Y:_9@:bjBrlyvGSx@ҫ._E6ɷ,GoZC7#-;N08Xͷp/d7w'bר "c4lʷU|?eW4^h+I{.Ʈ ,U3%ͬiχ|Ď*ч.='XcԌ_kG7NvKCL [raqxAN_]\[؞tZl 09ړGWGFWbHtW붸:Ap?|P?^ ~aonS~z05#ǥDQ@?#ƨy7P H0GА v ]n\;jHM 9yi7.@m]$@kvE4D$1^Շ%U<Zi=RgKL{]^}5O$44_/%[%]6w"^!2< |F+Hn[{ Z/:hQ4ɖEw*+6@hBT%L&`N9Tur XW$}rd<]8?RJXP;:x0'R8Beu1&5Ot S-=OǃȔ7ߕ.]J%:(Tven(>n'xA ?ti3PZBKHc&A./?~~[r O؜/9KLfc9'ĉ?}zW@4:Mr4R: sgʿ(%ˏgk(W02bj4![_Vқr@4)@r(e1[=}.l֌l6'FxE]O[`[d^h 3;Qj$t\tUEJYgXD<42 )S'oNc2]bVln' {>n*?j} 59_Nx 8]i(LR]7U$'Vx2yE?Qn@$OIO`\Ŭ@\dAp}5r|؂H?ыxCXá5^}Zsq;?!i5?_aɶ{p.o{sR"?^R$V J"N7-|"$ Y` p*ZfT|tkY0%Kss,8At஁Y*pZP%!2ыDr6=^N#tsup@U^zlBxS'Ro:̈Y2lXdWw%Ł}^5E=z<1h_ZTIeqN:;J'{ ?+[TVPJC:ٵCԏ4kPDJ9 i`4N-2FOfiL,=•EDvaSn#W/$f}74^ޥ]hIk~bS,^ċk}hۗȎ\̦[-a3>*l-ePE}$}#3㝲,4+qtu տ%> GUvsi].a/ξzK6fܸtr:U? +]t;jhg΢>h6u2E^Bos)ߟwmxwt!L,.‹#Yvz%Eu.N2d`QEx*ɰ0-]+Uc!%ЦBU{6ȋgZVsl.e<Xa@TE/R^b7#q^W-5$2ibG"/@_.uA`D:6q>Dh^F\1wޒ 7ӧTvb^|Kw./vq=e]{DPU!z$QqM@沓Y ʼ'K!tV) Ik/, #Սw2QKw0gAdad',7d9@@KE/Z&G|OFQٍ&<*>6luU1JAߡū% Zl%[AB?޽Os0=Jh6 -T/Qg~s }Y@Ӌ˘WWA]GHtyܗbKpK-Q#2H*#m3jR)پTx Rw΃k6l3_YHB|>1Ԝ"_Iuw"q67/ +8(,Y8tj#LÖhWYNJ6,AKt쯜-_H+fPmCc._[În<)N'%Ui˛dG7Wp 8Svʓ{=#1m.Hqrrt4 IW|70:Ųj(Nt7Sڃ 2f5SFe>>Ho | Ickd)td9{w鰱E&P5p"Pk=TDG*JY,óK/R}.b93@2.;::blX`..[Th 5m;DWVU|޲LǁgTM;QYbͯ&QI|zG`]=)(XN)>CaXڗ]I0u&Bk@m)\AjRw4*W*ZOt=I_^4T% ӷ֪愼/tǬm@Pr͖@ފځF'A9}q~HuȮ?9^mh.T^d]OJ=(_=Kˈ"#,wə_WmgU TQum܍z?s&.*]jF«v op{<};fe*/dM;#&w9u35T>lJk jQhg+jb !?R aiS, סBMQ|T1xG>R- 'H +Q=a%{V"tf6RK#9/ȯ6cjFZIѦ?~vGn< OXCn\e0/kxjrc^?7r1L9>f6%D+ xKp%="n\SEc4^\ťnܴHk:;zb? ~CW5DJrgdqߧڅ#CRiSZ7#ШfIpt>ZU ޱT>,zΥս:4t H͕4.x}x 68?cN% P Nv Br,2MuV>pJ=:./Eca,_œ#xR|k$-A3d)$-MYKu2- _H+ "EGkD+P^*~L:(Ju#U&yӓɬp~Dh^{ b)TbYgV9hT+9~;8 =@հ(pe=eh D`" ]^c;mJ?0i6G5y*hƁt0 qܖTJA\vt0~%hR%NدB'H9Uedlׇn% cߗ{4ζheotP0bYA[y+ ͚0XǤSL8M=?X4lU43;ASh&gk$ar~ ޘ+=ztҿ?k h*YC ,IJ9c1{E]TA:xve(}{i#Ą&~b/-kt8CI{-$ (O صѕΨmѕ] f6鈥'`E_js pīaܸD}Alz.1~JHX@B\{\ #K1__U`aF)O򵣷h2L~|eZ[MkcD"w1$E/" 6S-f术oNdP)pkNf(61>ȯ\wBic"׍|XBj-0QjMɨYԍJ jɑ3N2iƩk%@颋~juGhB㩧YTAa^:Fh]I' mS69#c_~>Wrb򉎩ν6_u~6:}lI<lk0Fy LV;3V~(p |X9{ѹDL+PDYy < #bF(7?ijt7#._ @ ȑ؇M ԩh [Y&j6p6`Dc@=E~:wl]IrnKK,h*bQr Mԝ`aSuIT"5U:eS8 dn;+pC`n-1 ErY11㨣mE'5am؉>2 }wJk80ap VV<Oց 1Y+k)juⵜU(!)*\aۺ&1+IV%"5pżmq׾Hhpw+D b`uU@rjF`^򰅧.$X5lmE wS N{ÛߵvNSz[#lЄe#Q6Jc8we0bijf2͎y̓7>چO`a2g)31QdeWoaR{?1?"U&efI}_ھF;,:턋' !.Ҟ=t5@GFV1fWNGBsɸGB1-czv`TU(WzPwiwH!R; JDucXrԴM.X]lSihzHgIq"S]L~YcCs 1o?gHb{ 3BӚK8T-9M!ZCq;CS'ȟIԢg^L8%c,鯖ˀ/ 6L\@R K{l7DžYSȩYNXYvv&`VwȔF(po|;lXkRdF˓-Ĝ؄-'>j_쁮o.T*BpъğeuU\uNٻ.z"ϜIx<|rf˩@JQ8,Ӿ+JR񔥕D*"q(<7l&ڭ:+?]݂{S('9%~P *re?j1>mQkA=~1'y:HG246;x醃S:\˴wO.lb~. 'ULx~dyMTe%81ixi?\mNeiF,s(~Q2NO&ao!XAWb' BYYőxDU< Z6)-RLpb6_M&٨ٍNcCOœO`H10B+hwajo@XZ%"WS!YUc86rAˮvlV1Vhiwn(A^^QV4/C"4x&cWKfEQdS=S9ҍy UhB>Lj-'z;^j !ͣ1`""w`3BHm3 8 9y Dˉz< v(>*c7_T7^dCC ԝ?%هtQ.W?\$/eKן.֪2{cЕE/ ЬZPt tΝY 1šk5路Ib#_=Y+9.-hk{8FZ GLmJX]@XRopc,1YBZSVo5q\]ifȫc6IN驔/qQ6? E|J/6?3PDLk_>ӈ 7U& |=N5ӟVOhtøKDσWK2?p傲 HRXo+\b~;qO: Sҭ)P/:6)Nhgʣ k.(BoNΔlo_AՃNE g$tYvU XT}ٞvGhy2)*bqKM?v|8S2mQ@ܒRnceTZ=O?FAS$Vܫ2e=J7|-"pV?./u!e6ۣ+cy,2 cD+c+Ϋyy97Px,Ht=Ո\)3HÄa 1ܝF!m5ns9bv;D8gfuzs镧bi ?6ԶV׀K)ڠB ͻQ cʒ$V>D6f]jܻ&$u"ͪxB1ӷ}%0 =zD0gfTtI"0TGweIM[3 AnA?$.& h$4)N|ֿ_Q wرu]n-~~GIf&-A$DDŖ.2R}{'3C1j.˗=L1<*f!0؎ ]̾Wsj7 7"xN9f> )sb8o=wꦣD3tVߴsvܜ׿wp@zf Rmj_t/ڞo,01@xl)D]lBB'-24ciVznca4u|gU;A{͙=IK \i)e%.s@I;BELBo4'M I: HzH0_)~6|޹N,T|z-y%J0nU*t.wXjȘ%?64azkj'Nij"[P?7O8m}vXMΫ,.V:lTp?uZ ߛ_s.PDV¿tR j ͋`x:Ct,u֕p +JX|"Ji[`= >&,% j!yHGmsǕS咤f";^5=2 WTo!+tp暵zzhǢ a+nе5ZK.VҿA*I"(i>aϟ2f3`OcX2llw'0F-zI4Ӕ!<8i3='Xb{[V1)q7f% Z!n}ɚK^)Jp]n4dr Fz Pyn2,QSښuaGRQVuY"5:ρJ]A5k{NWGݾMO!2mji!5vTGuL5)L{o槛 RD(+ u9Y z\LpY4CjfWrؑo"!YvoHpa+Uls,c Z..6[&jE&[LW}"Xa@q.0yJ&T3aaKbJtYtq=ښ$rB :8Hgn8,B"\ c5LJKo%\AXwh#:QMRgܒ܆/|2VhMIQwDq  YkFb@ YɅKK߂ ^IE 6}#ef{%>~8(MQ|jv^=&mlbD?xUYNX*,!e3)YJt}gͣG76sfakh&严d bv6 )xO64([O\tPZk6A`!qNjE6^H6M!OPg!_i+$HsFmljҙ\_vn|R%Ŀ? XÏp7M5]ptnKo͋m5rxNV"/*T0"˵@eQMܖ6fm=>=Y$ipM6maGD0 0PE| W篣, V6<2>Ru0jqDV'"3 Ot j:gD&jNoME+!O OquGc㧣-f wP}+!@.݁>,0 rvY C 8Nh<ؠwZ%saKft$wt'5~nJlaƿ Ǽ#d@,TH`0q$\qpnY5vegQp`:S͹=ۢ;C318+#A^KU6C6- hj#񴣆KaϞ'q_gٗ[ՊfTW"/Or\TMז{AC-Po,pFl +H0 n_sf'(`bz/%qH*3R3o@)=eʻzPs"weXE4iy lXQi6`XeC`:`Ж%kIS8iu er6 FpRhI]$E7_fꀣȗ{U˚B$ 4σ! (;#fv?I̟qw3UCWGኾ g^%dŭ]Y<оimEIbGma@|'n:`PK"Oefkw;<4QaNŐB}I[#Xn;.y(Sjw񥲖 [=aQƶ٫@[5&:EI(&F&qSW1 ky}X<犡k;fĎ#O 4y^V6z?o:$E=Ĥk[!d ƽ k )Q任2;lubeC\p -P-=_5* %T.2Ҟls[N@HXa~_3-t#(t:(M9_AԪS ;52-?:v$"`V|6?)JCsP0&㷞/>Jlz-{~4h8☞ pX;efׂ˹/.fZK0%#/JómĺY<# hQAA:ςhr` "ཀd'awLm+l7J%B^9VNoQ`| 4 4+Kl~:L+cdP^ iw&K"7{vUC:=r7=: ^?-:!BeNE$D䴶^x6ZXy|AobUVdER[(] a&|J^h%L+U4t7 t*=ΫVҞr_!O{Ґaމ+^JĈg?3:^bulmc5Pt膠Am( Yπ=VuQFN+ހW^V |\zn&qm&,IP+ \Q|@XaohϬ)[{n~wFݳB" ] |t}7dRb/Yt-"Z5&Tet_ MꃭN FJqEVK& ϶}0 Mx2c PO"r4X̧ (TrkSp|/mvܦsZ $f= )*w5\_u ȕp|?b'm3O/5r]nau-\5Cߪxx 9ϨYJ v#0Q cg?_w;Gdlx)q%yL()gl|7B2(Y]G?"<<&@JLAO*.j f }1)",sի/F,PW.6ƷO7y#|ДŲ`]K |\kGXV ڈ;!L 횡IPj>00fWnd[zEZ:[c\5lL? E7ð7A}+x1y!DoMBκO&VȵN%e=!ݵ̽$^a&}LRRZs6XStW;ڭE]%4^%{i.r!kTTazZ/oߔPM(5U\A3t3wWj#_n^Ѐ!hˮ'#GYUJRuC!aQƈ~21 Mr&I@E=rTiI^8,+*V b- !a˓r~ %['|?1=0zt['3A~Nô[?sJq_P>3Ke%UD IZTlI 2S$g SSegHPV)z d6;Vy}dxs!_)9gz} BT62lf{Lc 'NXR$>L3Uj0n)؆@߽ܪ鵒7W t@a4]S'| u| &ml̈JzEn],ˆW95]jvnmq0-TamT#i<Xmsc',`MN Wx'DiD_K}zZgTwGyJ;Qq.ޫo Olp[_# >V9;8kțĚV:Xϻ>2][;0T؊O"y:kewWcdo>|Y^و. l3\TLѸSSY X0Mnw+C]hEz/#|9~ApHSppȤUXA^SFweA8xd[n0ŷh_lY؜ 8"+1_k>~axh6ud*XڴNu +\[g S14|/2}!nu,9z4 kBvIGGOU WJ=ƊN i)dAJ4{w}]4rWZeNS8ou[3'B$InÊ/maFD`fahZ@Dzm1)m]`傅?ͺ@z"E*FUp?] ڣңjڂ맞 NЈKiTʎ4/g~U]Ia%g{!>8a%Dl0{ox4?'0^э&@3;Y~4x}'[8[dO .4+:-V2M, Nn0g L]bS6(Ru;[Fc zX rˣ@#f`[SS%(؉lS> 6f¥2.@]xaXD_ghy !SHZ>`wt2/dxf-)(ԗŔ)BjZhJy/"z[5 D/O[{u8`[,.ߌڀa`h#׫ȓn BGCvUs^ ϴi3 |Kww&sþb" 2Ԡ"UrB̈$埕{U%̔3ƻ91jHM Ը(xX0adoeͧA1nr8Qج`\i`.YvgUCO%_C vK)qE:5PJCsq(NM?7e=U5:1C ?g n&US')DzVq,UdC{3=@LS\`cBG,dlH}dYaɶҽ_!Oؾ$(2%n_.Ґɩ nMq( U]cuZ8ѓYZ ]uԣ/nyye!^gkJ,g\ZnIr|7rwv|6ɱu>񟇥A{ r; u>b+$uΉT&/-"6)P$9Fɾ&9IhC1BAXA?1s^] .Q3~vPy?;z'(=6̺?OQ;}#azY(#5\QsQla>Kuafn#^.mE&ry"$<Eap_LJr<ԛ+_>JOt~w!z% tߩYғ%~;_>)[\.F6&l`?ΰ>uL 8EeM :ч#1O|y~" ;\pĘwʆ~KB}6,6mOdߩ2uǂD~T4[B.W,8a8[|QVc$x^SQ^zS>` ܮ?cR:q@q )ړ;-E’9|0͌\q,\*ݻ3; p5`x5F)}[o@eglkQ=o)q%҉9> !v2}y5=OAe99 pUGFZ|dی(4'Xa!8ā R n_'!(#98[YBAQ-Zt%Leexz&Ne^8Hj63"4,Y 'gEʪlS0m .Yds_X ?:1芨KAX;s^9F b΄ϛÑJfB{.&7Q:V3%~ s :q닟S1bI˘djc A}7w򤬡W!-DTh?q(EGrQ] pSrwbdj'?Nw W߁J~,9^1u+?aq@pqnK/;QD9l!)4?Մhhm{}rӨܝQ`7Lźr2~i;ukpV6u R6n~,l|1"a6C|Q=ԧJCNSdJre[AYëCɥzQgM=5p,̨$/mx,)9/{+uTiuf̱3,7zv!>Z7a{KvleZq5+{R rBM#`Q#wfjyݔ]kPHoim Sk% PSaXs|gWJ鲿|`k XQ1͟+s‡5#.cRkPrDQG[⃰2zlh{_Ye<4`|o' |nɭ qc~a-`gq]v9Gk:tw5'@4{+#ʞZ (A-ѧDLS#~{G~Te w kp.փ(() !%PѶIƟ AVqjn dx~*'5;H9>Jx$CR;ap%.ly$eI]" dzt"f}叹ܖdq4 eVi߯U 3Z4.j90'^9䴃+_L'/?LHΛHG86b {C xR Mb@X&,zB7z.3K-O^ xnA$x}ߺVp$秣l`@g^ߓg7>ji.S gA¢OH{3 ٟ?8HOĠB&ိ@=vꑧKݤ{&O@4sEcbJh*' 2ٮf18gӸ:cd/G =iSu?}0{ƌOm~z~/67E4LizU&!9x/z~Qbcf؈Cɶ,Q42_Xѻ5> _~&̎gE֧3VUL_V؄?uJwiiT ftLL5*:&;Kk(>QP b 'FlT9μ+vCizR?bIP.Amw f%m?1:ha UFh=S,:7Qѧ]F1;O-u\7r # M D"ǥ !wF C}ܷՠDJF$t#qΊ+nhO?P܀DEŠR}[eB#5=NE 8VE*yepx um%(NK B}^ @?qEuFO)VmZyuа<ɞ)TQ:2yKā`4d|v^&+*>{!ls,_џxyeqCߎg _ Pbknמtg&tOZ8?)\[@ZA4r{9g䅓"e{rrFC9w⃁ԋpdDLX>"L!%Cy_U"e#$ }PONئ#eo-N60; `_g:/,U Ϭ66)ŀۥ`^RxTWٸ?]<3=zbw4Z~]8T3[LW 3(~>t{$&.lBe.͗3ZO|0x,O= @=qwyAv|9n6HG\¡AMѐxK jcʹM'?oN揠c/>0ƺ= ,[w^7b*M ܕU=鄛͍$Sq!㟏Z93{u)l`G1uq4L: 9cN~v їj쬕C4!`/$azn\A4p yYt a2Sl"#,pfCƋE!<#Fr,9||616Gs[?WIRGnN79Bi~*}@;svÖ7sBhCR>n  ~˴:nP4mW² g+] ha>"!/OH&3ք.sMGOhe;(O",jThtь5BXޫԲSS7iˇDp$XJ-loj U@ҲY 5䍘Rppss~`45x}O镾˷M4>hק,QQ@1H>L)C9) zV#P ET`@UXS0t=+`2%8|_&\=d \;& jhd|Rm .L~x-kJdݭ93W p_u|XׁJz-gֶ)l+ #6 =/. q)NkvKQ>13m |ˑgUU?bHF\3.PoҀ@f`?'4h$ۤ@`Mv]$,|n=9Z}[@ut(:ʔ.âؼv'u1 ҢOPӛ8Uld4^OIrh$2DprtEPž[ hguz~BSۼKK0u{pFsZ|J,UJ,%26UN:E }l#I;Kw=57qr͌\?oQ*s'F'>IģVZt+4,5E/FDVjN¯L_7_R*Hb+j,g ^̅&m ?,\SGUDl_c#/Aۼ:̪l,C/9~ )/ubsmll%>7s DZ68Kb4T41UaymWNq՚}K5Ge+H}w}զ 2GqL  N oU-59$h7dtӹ`u)EP'YU.Mٵ;AA]X[͘Y ic8+ܿOzR6Q#%E9" P;;nT0Їitmx6@X OA:A>Qky%څeyik]~2D#@YgypM`(+6W=uw.0Pr!u" ΈjvZ)su)]/)!GϠ~_a] 7gvarj"xB8h|J6n[`%3 ?8wHvT+a H˖KAJob󛡨nLE%_(Wh+aٙ*p|xhIf!_)‘IpT@?}Aӫ,S6mdHL-ޯ}l>%wI&휇j1yMe FXSpW2|_n2$U:!]VpjhVe+=p-@N؁:=++O tY='C-KkLH9YJ[r`JpJ3WuVq(UGvs!',Vȥk$rZƝ|T}J=XrC]1*Y8 F/ o+Ϡ^c\8dz<[ꂑR9yK6[Δ>0d+.2M *x>yl7,&|)N_Wk9dt.D2bLýhZ2qMA>UƫZY0W3"fJ‚86p[ aL`nx8r>m|}qsqFꇻ~]NZGkOPU '}+{q戗{M%^A KM)" 9,)q((t!CT2Džl/P 07 @h(yy\{m/ <ׯ NK%<OXI[A#4ڭI:7J\a0ـ4.Q\ƛX ]Y~Ǖ17R9/ciYܳcWd鿉9FXaL7"> Uъj8L3bݢ{u1f Y0}<TnLs%R /ʫE\s|:CJ[h!u{ev-0\:+W'Pg+ZNPhqWl?\Z^Lk ,đ훇x%iِXŠIj@d^u? /1/nApu4ǹPaPaH!,Y:{X?3ᘇ)~7luE$sٟjC؇ Dp~l=zEcSt]׽/y#b ຢd 2aL&)wHDn3ds t]፷p')D}TT,D`0C_E,8-L]Jpm(!Uiw_TLFti* *lMnZbL))T{YP|˪u˾`~ бUi>k96cQ^gp*{nUq 2Rme4|GwtٗU7-*mlo KMN֦/V3;<~`ud;GYcce)5IDn(pV R¿4`=V4m<<t磚]n9N!i6N(@<V79HI9{h6%dI ?̧HV pzK'1PrQfFa5/#cq" aX+* @QN̥T|u(‰}@(:m5!}R?. whcB>7me8\;=K2x]9CI&wU[zq>ٯ~:[lJ$pHyInXϑ|Az:F1gDْ۴@YI8ָkL .s#cm֓vGlޱ^48r3Wv?h+ !ubH.C9CB mKרoVguC!Ӫ-˺RU;E{#4lf8Ueº<_{;; Jh;F)=]X x.i?] |Ql*#QwGW{,#sspdGWL= un˅\ 3Ƃ4}? ̅&] Qu):p: ~OS)@FPL[7rlzVpz鼕j.yٿͪ@#YpթWIYYӫg$*4';'0"D`%1}Ӌ@)^ةY[wD&(kzGtQU|x#s设-.x- NlpHBb^zړSɮX[&_ +?6  !>^kVe1 c|đ۷/$Zr83ű"Hot/Vq:;*161c!g`,>_e_GE\GȭYj2rH>Igݯ4p 5oz] aFq7:|c:\WAl-Н\Կo`xy1󳋥DT'FlT}S1<)غ/Bz֣e\ν6QƑQ |;MVګf9nCZ0̣\@gՐ4o0'!y_$[wrL%\9wvAB":o;coy@nC%xN.]k<5z3)UWşI`q2H'wԧCXu>osN\3U%NZuQ`z $'>,\P2's0KC_7*47aWep5jNҰ'HJKL!|i t[7Pwhb*g(,'YX@o\#rT$^pybce$U6}VW-T{&ًG] rwΐʶ&t/41{#)&fv KkLD\i YOYh,&}>th 4 @?qü1^+k9ORu^+g'm!%;|;d`XsVW,+ЖeE&ΑŊ*Z'Íw '^Bt~Il:Œ3" l _,}NBZҖ2 \B邷P)/Q{_N9 _a poSl_Rm~a,mlȷ ?r5C _l[LlH*C|z6>􁏶@4])8`=O&iwԂɸaPr#vZ)ҡX1QI!ʧy:TaS{$nHPdz)A#P^Wbaa:Vի37e?O'iێ^ Pd6ˤYbY! J a&Uq d.v\a(.^)>y2,ۋo Oxn>.8]XxOpΰ; 7<7Z;3EiAs\AoQݳ;:׭}g=G{[ hveO_l=DA>-g8eL47NÔ C7c`˄ʬ2HtK!:)/$Kv`͡k{ͥh0' \TRsk; qs8iK1iƫ认yN[Q8gՏ_p  S?ycMh?O X8]wlj Rl=.|!9X;^.Z92 ųe[&<ะ [&p̱X̡8:E$@٫;]Qr˵X5FB7WpdPr42M#bX5)*t ֡UJq;kbw̧%n<#g*}&fX1w@<ճO.5~YOhֶy&no*v] <$Ӛ[hĚQBrԲDQML$]?l ;@e%e pbC;%M^~ rQ&?G^ypwE.8œ9y-H5H‡l^9gX8Z߮w(1;H4zEZHͭ}yqo)"hUs%!1s!x&ٓ0G ڷv((Vtl_3ؓ~aPꝑq ` ?Ϡ_ WK)&D1RtrD#C 瑶tdՎ!9n%V(zˬJxnE}2 [h!u2btǗuIMoRaC xD.>-ԛ]m/<ߝUcNx*=K@0[Lew r!`iIg9,L8;?ͪ>ǿ߳\Z8pVX` B^$G,NuY ֓sJgsw~ .%ّ@}wI &1!`|ҀVsr}k_Ut0Sbz 6 WT ?bBxxU ڴ%LO; >>0DT'N9Fxj=uCW)qqkDA䧤{)ʊM:SܢDğ7)e[iI"MëN;Pu먑Kh XaWXRR[dH*I|Y%:Bk"|{H&V;ijZp7[аY3q >Rw +t ƸHi@ &Lކ?E]jxCۺb侜ٞk]K^DՐzoo*\p0X!%5H#0Vi,wD1heteW87<: ْQ!| aaU7 qJx% !VTDKqnoј8T=V(^ %{v (:4JL #[L ;ӊh+vv_,UnmDc1hVL,#`* ǃeŲQyt\~GkH5{1$j18k1Jlmм5T.S 6^CӹiiF7o];_*KEjýP[s:];Ip(.a j ~kP6vpV J]B&XƧZ7ʉ͖\͓=ѤriuZS}ysB-X2VkWب9FѓmFΌEȤ'OFBa5п~.P/vgֆ3x#8M[j Ӹ\&Qׅo'l"9,OP6*Tyue bsjÑ!ƷN%t[>=D[O@e L`E3DWޟ@ͤRs*w!'c? 'e SxegcԽix(P2+V6wWF"HIN)N7{/KO3U:mLp6w \ gYSs#uoex*fEȼU.7>Kɒ>9W6LZDⷂc6Dc/uOva&Y2 ̳1kUd+kNY ?f3癳(půu?ѓ> CώnZg ¯ $w…6J| }+S;KOpf8]y_+CR"DdyJA;MlęxzhyЭ A|6ADUr`~C>rZz]Beŭ5|w}v['%6V*4fMeP<Ju~_^GW^fXٝ)ѱ`F.=K#(;`+qљHY!)3ʔoII@r8^ pz؅W>s(?q1ijG =Zj(j_l&91=^s둔<#d(pW,iOJJ]^TDy>fo,ЯR&P :D ޱ*/~_>ȟ^B?n;z9OqNG\.5PXXDƉK'f;(! 9sNNU}'7 $!S- `*N)Y[F kPeAV\+!\nI{ A?ݳ>dvsS--oE7aJݑn3 #T̽h/;{}$x@uym<DtT>=}:ҞCfHuQ͎%%rzqLΔ>wєʦAҶ- HE# B~{ӂ%>,!4#CO6~Fg (gu34x~ڿ;X8~`v &t#C:(G,V`DeZWv6**Ƨ2BR_Ck0~1,or1DrH'?C+o7qM DPP"h;?HxR{<&}R|7cLL-":c,[3E2T'c.7al/T\ps#xjп?U|quH%r!<+ЁĴ ~X8$rx(SZQV/Fc;:Hq(FL?"\f>/WCvOa^g`L ^<:G$ϳ<n,(&aE,X\|hx^|T:@EdWN!_9J!%&ql|&*>p ID:~UuJkVY BFWzi`u+H#Fl>?{^)ؐ]|C=3R.V3i/^[gh%ඇ=p% $IH+/A" ldMU$_"U}OOQ:WL,q>2&} 7 H)i/]a7ПB{ѺVML QOJ.ܹ UHc7K)Hs՗/P1'rcm`Պ x:3΅ r \M~-sſZ8F >+AOȚbG =2k!cOߺ=)UBl5y@ ckojl.8A !V581yE5Cjv <>j Ѿ` _!Dzr{2]剻ʢEN̓_ARD8d/Rϫ%b3L-|9ޙN(Suȁ-H)\L*<Ř1PAaD &%d.dUHx+alƬM[Ow6JN`ւAu܄:G HsoBeUg`3! h"g~N:FDY4{"G 3P@$"r3qB;X?Qڈ1bJ+q/c+82cص3L'2;V9 Y(>Nu@Cc.v5IS1VUGS/$VE9R%Myj@o]<44"S!q/VpvAГ|]g2aqeS i3<݈Iy.k\=9X `;ta>Xtm>K 2EnTSISڥ1 k#+A>qAmqnb"ΈmeCW!N܏= N|:IT'Ob& γD8kU[gr&YVq+ܷ ƚlF W'e#X5FCPSž;RYDxr6PX""-Ҹ~O`WptPaMipi:/wwﻶ_# v3?fv zU8ȖhK1r5iG#g}Bi$vvJbEQyaK1 ECe } a5? ES዗Aǖkcf :Zi ހЄlI7bcfff+uSG7f+z!_.t рg h0@rTy5Hblo_k]s;ȶ ػ0SW+/BVP>H]N ֚|l\h΋粴يGaF )I¶3ZI{#boA*"0_¿ '*FYWcrp_%aLd 8yLYP4*YXj !lc\4t݇h7E4@iFPܰhs;kql"l0]0 <$M|H[k} [O>ap@_{Jz1}je?18^G&'@9c7\&y:oS .UYGl hkOu~|>[)թlSSV,#)zh" Z= @yI,!e}z^j&'&%/Ci6 jz=C? =ՃqĴMK\f9XXF?<+21b&l k#1\KWĆ{n ?:\!̓ɶkq؟t4Q̭zS_y5nŨOOO];ڱf2VL07oRl*/ 4`%,a!ESnp'clMva$oC6J6M0IM$AJN|&2P SAx#"p=4<0ɭq&-%]+jo$. !u3 D O"g}~a#ia۩FRi.|e [ N$y*4O W_9埾5ˡƔ*UE=EYB Db{`!hyW"2{PBat||MQew=&ˡLI|;#&3MZw/Ęm@ݦM6+oO?:J yq߬ ©,&*:3^<|Dy&Lя]3SS+˥NԠtc EPv*˧f / mjk#שA _3RD! 2OKd;BNcӻñY9iJ76J-Nov::.}y\ D.d~|M| 48&O|(Ԭd~(u+r 7P,e.)y޴ GCm5Hؑ5vS !]meDX:1/jF ƹCդ#~0w:ٟްt<S*k> }eGր1g!g7/ߓ8RO> C'@Eq5'! !JX0+}Qd"nhM%«[x>FaZ~ߴRT[Jbq)14AuݚҊ~Tӡ/iF+F#.$ iO+bS.\(Q'y9U M_yn@rBO$n 񬬳!QBv-$:!m@eq2kA(t|iG#Y5gHj'w>k8rfX/ǯ L!$icQTdiGB5%TO=tPGrc*(FZLjzx?l@zU6`YJKL7h~m;xpփ?AЛpگ< Vj|[%">zˈi.ߵ9 Z. _iJZdߔE'2լB{8eVTDі'ӛ(o Vb=ߴ: TsGbc)5j"].Z*#fFơSևB{NE~g`>bMOFƋ2)_E<&L1|y> =ѷf` EB&!w-u أdf]*fz* Ofp6 .ؼ-0&DlI'6s4!5m^U2h _1ӿx1E=d[vfk[p;fe >y[ ?ㄋV1##)X@LxN}.LqlfH}X^"@U_m4iWɚR<1a H`hMH$>YGat>).@&uj@oRllv%:$ܶ\۸I%e%|'^=k핶{]%5z|z-p6c+cw./PuG~5ۣ 㸏j撱[^^Xl5' JVb.x»:.<^u΂wO,f$TਢqkzƂ=5m۔n- {_?>.Ыf/Dcaw(ߘhoul3A@tB\T<2\"k5*ֽ{W]]RJgzLawwga6ڣ3&\!TXWN`'h%m0f2 [ĸme Aţ4E : 07Y-eUAMH p}?o^X|8AB4 D+޼qlY

,FkGi/6Rz\գp|T)\QĒ[5Bd`./,Jwq$96>:DmZgp"={Ż5HaF̓h1Ao2 K=]&HS C&CZ4`%u䓤r;UEs3@]/Q5*]6[BYXaKa4R޾GcJH?ve&o?y\y>_Yj<-|Eǣ)C%G_$b27oStB~r,(Z__^%lB!ž!k ] 9d^xnf۪ ed5 ␒aY${NFUGvntV %8*>\{9r寯tQo8?F۵V/C5s?t]]Ax4\ܬqDg-qD!3`,쳣<L6{GvsR^È7ԍ:&O*joU +,`ݚKqutHO`҇š,5N=0D%`_0/3cJ?5]lQR# 7BCԌQj3-n쌡(T_ bYs&W=yrZ=uĪxyKhSڠ5)lȡD[f&¾Z>4 ߥ`i3 {CˌqxtT`w9XImA%P>sbiQr4aiPJGD(H/-mtu!ks$}8](ʧ2-Ŭ֜}'0ʢTos1-?.و~rbdmOoqUt;T"".p&+DŽf."*×`nkky6nh"[mPX|K0\aTs((в٬4VO!؈g*wnD z:u܁b)vZj$]PZ5(.D219xu+<~ǏTA8k潜H9B鉓 Lu"s米&Giw7ڦůӚ:p =^N߿G|o iCaXೕA@46b.p0:Bs"5Y:],eK&YtUivH5=x~!`(x!W=sr`?w ؁0!9вJʛediJZ94ViPly u_apvN?u <6.4Th%Y Mwhk"~h<;.[8ubw,/0 dZF*49 OOH B ߨ@v c[xX8~GŴy;,!F"z4wuCCnL?jp~H}_faK1O(ޗlp"zDɝ<]ݞFӬ*Nl+ }\Μ׸N M_ XB(fL ;<$~ؠVwvhƭ>NϟTvUoTYUICO}J^6W 7R<6z9\rmnrr(sX%@50V fW͹ikRjOA엯%>77À>=Tc W^MEy8-|,0it{ө+[й/dR񍖄fudȯ]͐D4 ؃ǎI31pV9f]v8"zHr ) IC{s$~{wq^ KN8O/}ũNAAwJS Z?NY*RiG {}85U ź*ŘF{ p pbRSȈqDSz cgZ2&>wα$5`qEr~Ī-s3 NiӧF6<$9~;¦!7:ϒ[ xCCiV"uAS%#%pcq `~cy1zY }aVNm#nEP^ͰXbeN?nhv~F܇MZ,?vQl v< ӂZ L:>0(G.-̈F7ӑ{KVũ&\8EO&^hH h5$[sJ4Betx$}Ub4ݦoba-˾N? Fݬ#T`[z|'ḢnɄCa:BtENe?{C1lVر;(re>I.ߏ,*՟Ș "p(KI V%tJ:h~!s1$Rٙ'U:S'tjt~TF@kl^E64_늱OG)B"vϦh03xݤ']+& I1> LVi#3Grkͱ(=fC)? nNk0]$TWR 2 YO'CB"(KNz|LYctB;N/Nv]OmzsUWT77j] źhƒhͨA bOW|γ^MS"=gլ}^j0ub"Iwfyj b ӡu'tiIΡe.Ӧ*jQis9-v,r%U´PyD1~Pa';@/ :u'Xe>XY4q/k(N<1momBp/6ꃆ:䞄òp6΀'xzlc.̙}^).Jd> 47<_ QF.G9]I=L#^ҝmϧ!Þ1ᦊȍ M]KD.OKź NW˗Q+t;S<=mf=t6I5h>ȶ~a]pl70. .DLӀQКw=̎(-&CasD k֬[RyQbT____JIS46(2r!*QJq%݋}&pն?P+D~wyYOV׏y~94X^##EKbtiL[9Mt*V9ct_TvEi69CbgY/mͤQQL=tn76 hKh bFskLuS@ ^3p]-$ѽ5߳-uPZ 휋Jn!5;<<&FNf[qb }3mjX&Q0+wjSL[$1*62Vw!oی=GdOzĿLɚ #Nєppc 7k4Y{{kzԃ;z'Q>umlOT6/qin/#GIr>0T7˟\: CSzjK+mMV3:ʼ2*.#*N:[b`YŠƇ9Fdez*tmZt}Ǚ#{.'̏wwL~/%7#u(Bx24߳8^;Bq۠:oŠ.ca>`zJ>{cSlonm;7"YN8|x2qalWat_g^RS %hΰTB[#qez)AXkjf>$gt7G]$VjDh~mg܊*/9Fs<8]zD&!(XDZ+˽զuo2CAU!,=;/#c?GW&buӮ-Gr\.#.r ۂb`g\MŠfJ_p<%7 =BSh}5Ͱʴ.lmܛ@7NA[O;96%0ʠ9i-i\[J;v-bn`u9ʵp ڑj:,~x:u;DOH_"yVpD+cR4USR` `Gץu"7ÚD5P%5ЪaousőǻC7rZ!k"lNVcjYW@J2Q H?Z.Q>¼2 +FƵWoχIs͕0o0'lä́G1 9<*yaT~bN2S5c-y&L<&,3fu *VG=ۑVP ÁY76ŐO @E TxMB`i{s%5|4T4.;>Oy'ܺYt73hޫ )68d5eP ^8eú(ڔpfE/.?2 i4ؽ rWP@2?MڒCtdu߳ Z rHl2ЦMγ 4sĭXC4HXG sNg$͡g%(a%֞dͪPDXynYE 6b>^^t_13 Ażd!׺-\/W?0\4NSa|J~H&Cm9rscE-)ɧgƀ2:_ d88#f*3k*Yuww됽OS=~8 ںd(\\3ZHYa@U !Ξl2 BoZMGcexa[OX̼- N8E}U<~Mx°[|Կ#{ȶ!FmQNcg3:y5{@ .tojLz]w/ f%ca[wM|ŕ=f|iz<)>D2TMm-M̀ըwjoXiw aVms6g ڏV/?FF]ovs7I }E6gM2#÷@zY/?3` HKXuBXR~~&<ꏟy\LB<'%z**FF!WpqJ׀`?A٠9F.gdmh2Gfcbi 7{UiS.vJ> Fo- ȝ;])8#hUcJ؎Brk^?W8kJ6::>$k6:OϿ|*۔9jJzi+;`/ݩ*llqFSEa]-;// s8(D0c ZljƸp E)XI Q/Ag/ot:e ¢ ih> 5LQ%ya`Y%!}}Ta #Bp˹&^#nZa>" /1/RNP}5 G Nmj*"|PGdEo m58چ6ss=F^,$8l@>1)NVM#Nc'"^HwڇN75]+ 誶R%8cBAfL' iuMHGJ\pFbTտͰdco3CaV^OQZaNx>P}'˃Y$mwXA{{ǹ0䚀iSQ rG})rݷڬP+|>%^ ye'@0$V ?[ϳН񶒗f|_* f`s>ZX ~x61S?]ԅ)pqczsIAHABh3e_oĊB{!iMX C\Kf7BɥruodYRJĻb LN%ɏ#=:<V 3]zۧz;`Ue-Ğ [ ug/J_EG H"[Av,` `*]9RMy,eG=>腃j*r~K9oxi'Ws0N杚(:~<4RrĽk|mX &GmqT!o&0<3.wBUBqrf!\[^Uhˍ^[?0v#>qwߡb#eR2Ɲأ.@KͨEN.X{8YAB*ykVSޘ9ЬoB^u-JOP1)<'^JW:LO/1 &]aNR D\y2"\ Gu(L[Sd!.n놔o&Āura\o(\mjBt7oVDȣͮ' (NL?[_5T9I!T8OfuEğ{#AT LK8[>x擸dUo/k9fI0ՇoPO.eF~-o1<'DX"za|?\ ܏ƒtRЁKuiGwJ⊔[+HyXL[TຖS״"?PǫȎ"]Wû $(2ZIܧ!V ~aέwPcRWtIG!>nӲGYwHZG>, ²6'@mj  <w߆Z!5 dj7\S +H⭳Xѡ.4A}Z[JHx{|Z6 ,h|p]dde_+nT~o0'A9*+e|Imk:J,`hT\t"wSd}_,9G?.s 9~AXҺN_LXc]&Z`DFHʬ>q/[x[ӷ n-PUY'sj ,8˔ =l9[ϔ'gRT+ր.9V:Ո n&$VB|c$i/b/A)$z\ܢmS {k.vM]./`$F8+5zI_ږxUMf6Dz_w!=hZ0I5.ۿ() Gƾxp; ܚ@;wQ.28)xI1 Mԩ+{؇t2 {AES: 렁~TI頯7NMD<\l 6ùQKױ.IsPת5= j9Me|$:fUýzµV.x&ȈϋHrr-#Mr{7jHyUVڑ i4|EVCP؄޽/|GT\&Vr " ;ƵFJCWl+6{F]MٰSSw&I|ZBRiMta}C'w%7bV9t4Qsv]Br1?UTsS3=oxm٦6oZP 2V@HI1sLb! vƫeoV; i t3m| $vL 4&۰՜+͠nG^֍CgXgTaUxIE"AP-Bͼ0!Q!N&j,ByoRYe g68& x$a=` !I5k`NՓ2 pYUј㼧0q 2be$<ŝ+ʣ5C[֊Trqd0޸k+A1 gg-ML)26a)Hza!ކ&Lc(mJMb"Kmev%ۆ.}IC˙bj@aqqTD o+tP݉4Y^֓]H?NeW,O ucsc?/Rs@V$<)XM4U./rn"05ng 1? bK7 ;Cs\& t&~ q:ԝYZr '*pƶMr܋S(]hCR<\Pi,|o[O O⧻֓$*K.K -)2ώ_6/B'6$ejE5%R}ZMy^9}gv͘.PhJX]ս$#VTbCvV7@`&Ϭ^8lL]ɨo֕B= RzNҭ̭!X۬ctrZM3X>L'etqR~iz )=.V9g ][qb*$aa<D]hBݰ _nD:vX7CS[N; 3STű9C= 65.tPMS="em٠ŧ cQGrș#r2T"_`qD}LΠěӨGroIJE)Y/$TcjLckgT:pmlhŏT4H&[6. Xά8j<_xtǵ]ʙA}>DTP2ۈ': HTXCVWR-{u! &3,~',^fhh2PJgy!uTbU2`*<$#*/}hz\;'Hdtctp%FyB2Шo)9]7S^ x[\~ƄmV=Y#Y>@#_G4K\nd,ˁf (릑MK Mh3 )hD2z 璐}> s?gontsnG"3">O\ ovN1%aD5XݜCb#B%Eى]]Obߖ&H4 0xO"&A+i(bC>cn!H<~);+YQr$v팪0Rq߅YoR--zu 3k.XK 'Jcl^} xeH-vLW7uX5 u>;QRNZ 1%VMub4Qq@p[nf!Œ$[,L'`oM;-q~{v 5aэ@gIC퓻3VφAfhT)/v<{Raw}w`btŒ@]r,zcRRwĖopCZqІ 2Q &hm`p ^b)A)da`V[Bx72OxΒ·|lZ^z 4Y8)G*7!:3s㭸v6^|Č/oSrرPbM).p)ARnG;X O ݌{AkJtF$Vձ/*p=ZV.goƣPu4H36$ubCg*tc0.o|pɽ(_j,W QRL,`zcpXwG81g*K:A(kX*Cu!}٧V3x|k=?gm==rj._X1n DZD/IԛŇFRy %A2.N GHV"[^Ɉ쮗 /ܻGC&0#wMIImfkb!]K OOYkab* ^N͟"2Dznپ>G Rt}m1l8T/ˑo?Б !16#JoKU@@꺃-@@d#/:}\AVd532]뵹~OIvZQOg06l0Z?P\k %R )^FxU^pżɋB>}xl3UicکAXabyXzkX- P wnNYÍJqGay^Uf'X^?\eH(*3 9rZ2kzVI/&sϬz}LVڴ狟 s!Yn6tENЍqpIzU3t"$Ui@xKL1t0H0$RdzMš, ųV5Y6 RjZJiQ$! |4~/p޷u;)(ϗO^&,O`PC2q!?TΨ*ztH+ TwG^ݨR{2%x iy@kk:?IC%<|O}J^z=׭7$2cAH&v<7E ]d"w, A%ANB%zSPs;vY [n⭫.roA<[XU(vK$AJ Km&ب?e%Ӏ>R()V֌hݦ>rTV#6!zxO$-yddYIv>i1o4xJ ; ]kC#WWpȍO . VN WV3!tVv-5zS~'hp}m|~.|wI񕰨x'd` Ò9W^jV0+ֱbsIbs-Hx%NlӦw;xhjHb&qtC^\tV^InTpSؗPxV̨=.|:}`Qyp?{QRa./xc PZ%[Ŋep= 2ntqA*&%3DwA !*nzS8dYR!Y@|>KHu2 Kki+ x]\kw Ev̲,2.|L̦ă[N;X&cRWJA?fhQ0)qo3)V}ӗ]Ë`Eb~x JN6Az830. $ 5Spern1 .vO1kځH&}{%6Zߐ=MxUvzw$M|?u@$(bfIn/4Z2N?ּ)ѿ0$MnktdSd0QfT36l)趋~@DۜM݉չ^퍡$ t6K?*}saCقUxUefBMd31PZ%:ihp̱))P8Avx:*swo{23J\w:f NdaaB 6t)[wt/JB ]3rx~JE!`DPjD^r0$JJ> JO.M$e2F'oos:td2 yA= ѓ,B;(7!] c_Ƽx礟 'ٻIz8aD ] hwrD㡵`-A3g_' w+{Fb ;ǭziV1g#yxh>Eտ)?t]T( y7v>] 1aO3B"ɑFvI9/dQBLZkF<=tVg Q<rsWӂcBOڗޫ,N*ҡId j[ʅ ȝ^ n# -0Gw,B4€YLܣ"yBSgW7&áȎVTwKUOj˗#x[-OhH$v@?6>7P8aDVWUFHi#Bp &֢EXkYIț^ zg#368PQn0#ޢ;٧}l=IpNZY#-.CD-A:DEuʐKIB[F2KRzR T!&K4I4NdkK %:v(Zf{8 2 h!PاA܌?~5 qXZU~& m,QhѲgz;S~TM/뇢x~$VzVȎƞLyqE% ̟ib s9d &zlfk^KeJj!Xuq#F_1l3 9Џs6 MAa%`9#Yl_|>Z FF#"3svy\aI܍i" Yf~KwXH.#hGN' Çή1eE54Ю?=ŝ7s,XjwV70z3'ksĊv2C,)0얓6mXM^^F=scf8f[6eoemo ikf uI P?z?)bz{b9kKӞzOeֈ&;>Cq/ S $m}PBN߄A-g(*RFP4s+G[t p"/NLo1v.)a4c( /IBM(0ذF%|S5}|!~Pm\ds09}P܅zRioGUO|m<7Ħ5aq&Ec o'hW-v eH\pڱZm>Fmf+|qў+G{s 5*b#o*FU7"Pjxa6>.p*(/b`!nLn~L $U(J|t:\4SاrU[6 Vخ>YvTd%vC)V RY/5ֆ-9$>%8c, H8gKq5L^,?ydNݛARDsWGgD+Z ?I]c[m 𸷤E>jد. z6 vYy| 0_5d,9ӫfQgف.w8w(OadvHGk.ܻDp[,BI BK3.so s;2 ƙ{Qиu,+Mq~NG1B 7Hu43Nnx*Rt:tdOD %#,B_hҍ.u6LѬ .knTZ7|fLC.+Vj"*zrmhKVЍ*Ťjk~` ?aȕL LPB?zH"k0$q/" .^ni[=!ޚߙ(H,O𪄚M]J0LZŝZ9ẁYI;7eCWQh r{U)"UD_x}QQnį;5f|+,^B^Y;~,b0Ҿ*ZZXʤFm3bPT l e ةi6Qn12Lynř:o%G{ "ĥzo湈oԜp)]s 3+}UVx*h_aqLӽǗqu :Rc݉~ſdq$R((V J&{yw3̯_2 a|k 'v?B)LA:^EnAu=f "!- ~AQt5ZYF)$|3ipCRR76gtƷLŒxi5=ОѪ T } 7xo=MA8lTu@vSvޫMYK'Jd1{chYk^*m!_lbW<:~I\U-h *gFϋ|=k ҠI&`M܍ `% 5ӻK)IpN9Q8ȝ|\iz6x*#EdqF=\=i ,u9[:ݳ:d("j,+^"Tj`0 V)T/|$ԢMBq܈!%[zҸzGڏ;PEkcܶT۫,KDM cQIc_2ɹ0 HyɊkxDY7 {͉g܋-WWmEnߥwtve={cY*пI@C%1"/ /w{У%&<]>4*EwL]ofFYP>2tygzd|ڼ|9Dز?,% 2_Q$aW}|K3Hldj;F :dg*T %+ርfi s>PV;L>ռ:8Cӵ*HbvpIjW U<0, -;ޭ0G4o't'6s7{I0XL~\xɔSѭmN4ŊvKOyA}{3VhW"&G",l&iՎRsvV@,* gJ?|}`z(fim)^JD\SJՕ^Ch$cFG9խ|,TI.FP_✕aw˚I)83ֻ.kЛT!u W,jqo|H":.ݯ5~T⦄qImj\/&3GZk cJ!M9RK4UL&fEUC<#d\!Qi zU*֊eO^֠{ ䷳B`?{:"`'oZl֩RBHfnvk -vyټ)9m Zw9hW2^ #jӯá"?xWV$ˆn<򇏠uEe:3!xGHk@ N|̬,.QWܹڌ";D}͎!Rkq+|T6T}2Krp,7p3~=pnMh# |`5's?ǦZe'(O\U-wAi62bJ`0*Bܙ+Qdy,oK|6,Fåyo9K9~׭c*U]1LrjN6~iBߗ#bn\Tqn?AiU:aKȃ>04R,fKdn!Rgc{w#Hu T{d]zVi_.鯙֮[q f3R/۬™&g*6-9֓f>NR鱹vj\Vơ({+Q]ȋWM0Hpr|uDJ|WN突0\!%ݝ}MxHr:vwx>^:bW'$`I7JnQIзM ];&ꬿjۨGtM#E7!5$mx?yڅ<Y$jx3:}Z{zOn-28cv )ЖςX|/ZuTϓפ@CUbpG#BvP8#6wѧX+zx`qn6CBQI!4_e>PgTtB^x]yC .`/Rsv̘үdk-~Ilk֙N)I, 9+m1=iX0\ȇ)zqz Li@¡P% l 8A~/>ΘM'j(ԽYY[hK*Uy2] &;G)Ӣb ~ΚS4^h_ Ga-ʏiWZ{ǻd\ǪE.F5+<ϙ" Jp(sdG}%\8J&<)(LO*A4ԄI2;yK_;#{*#lM<.]OM2e?Gn C(? b p3'KLFft8p۵Sp*Q7ɸy ٖ3 hY9F+(ayԚ Q,(@o ZgP+Q_kbJ; 4u$2Iė.m0O*i0iWJOh4f^[8`JˈDP1JF+mNksb?0) nb׵:AyDCkғ;* \,5ChFCo lv^[6_ qu.J] XM*iU›6Dj:*,4)٧rcU\re4;OځjMx_/&k GV.@H5j(Kv[^&" &6!’{ňAYډkR 'gI$ <9/ [%;o2_ Ĺ]BO5],h<,g5_JZش8[Z8+.FDӛ}ݽ3瞽{{#jew]qUN3 `oR 'APR%bSA9)O-2h2G삸)Ewkuoר.yҍ~ODs[n/u$"Wl'1fuNWW.5Rwe6TO2uz`NmMusHH"*}/ ,ȎPpl) t_vgw|H̙7DƲd[7qe +~{CNkwBfЌO,SFz:[ӟ<؝f-7Q2 ьkA=i'lߦ0z&%?菆>y|.rRmM΋*[[9dryS޸U`ŗ`ju c|a8魮_|8E \ Q7ӯo%,Y=uM= v]ln`8ruTNyzZ_Ӝ :eK?+AQl8 $X?'Qx*㊔XEy;y 며bJ{þ N)o'5&؞ǗV  P)Ck̀?B>7U\])LצvIKF(PX3ރɱ M8ʒ}*0}h@ eiYD ;}xZjdw G5p=/l66Ob U5OzݱCE2q^H>2x!MDbQwd,q?טp֯ 1K<02Q[*u7 ]YށAz;<$iZǞ2G9RM~BNC4LaC7|,m(")= ~SOvU) ݼ-S!נ_?P^s'Ո!9 z1'G٫2,LCy.o hc@O(9;MOY/}4xVn9KѰ}$K'+:9o*!j^g1F#9tmNbYJU$<=R G2_:B]z=.I:U+ s(x0&@e"-o{He;NaqmC[Zcs, A&ŧ Lt9OxKǰ9u`(ٕclŔV 7?ڐ&+==8{\n9Bu>Y6BsG_(pb}0TMXrbTtthvi4X)<5x{-Mh ϸ\pX hZ7dž1vyIY{pn=N$M= &L`>1)&U 䌳qmUaK-kid RYhĄot'9l 5&%48 =nz@4e3yq>~Bz[A1tT8ĮEL^<$sR3. ֏o-!'hc_|b#vU|g~\Wgk&)rGo‡x: S`?%}GMbx>TKE|,&LCˊJAa&w+4fgLs-/.ih4S /6 yH`mx0ؓEI֑/~'8Zty <8 Q;'dzO89 OOGzT!t- v|HJsJ^&D\I ,{/E yВY^V[Z[6Εrf{1 X}ɍ:c=f4pnA4ZEDWlL ՛=$Jsǎ , &CsXD7g!57<NTT""b> ~#h0 6ԀM$Βr[YZ.'Bs[ 4缓$FtKv*ˇMLi% )>)Lp n"ݴ8UNu-B %!@'f=hR ұ<ЖK,-0Ɏ@MYVej8 Z6p"ވ̯Β4|-NwI}E<mboI |\BKIYr0x t͘%@k6"T%.4Aϊ$0wl leƈ2[,5N7 'urk/D&3FU pJ@bGZMf`|W?C~H{0 gm6 Ă"Tzś-:@y>:G2O2 _?Y*{sUR4۱RVDP\P`'2v=l!(8 @MIq('WW:XUJ*4{Yah ̹JrSĶ/ hyսbl^w>Y}/xD#bBPHDsą;<e"M$fxBli]q^[6.P {L-IJhjEHyD;;ZM_|]햄nQ`H} p>m="xv)T2-@:LyzL[ճI4;K¥MiOp@WI9r?(W9>BA Rg|)(Rw"165:]_=('>GX&zƼLzǫ n/~Q28/JΑٞշryDN~6­ U5hJ:;fiVL:뫥@TueHMt#+a4^=V|& QZ_Y㱌D@SU/6`5 tBLY=h;A]' R{)@;Qr嶮t+Z(%{>qN^o[FU+8Zf3@Y ]J^( AK3× G &] RsP4!CGxPS'ۼ;iR:m/_8P+r{|׹>}&wJS{QlMmAfc+#W.3+`T.c=)lI9nsS2o U, \X|MeVU"ek??AUegcrrH/ŏ/Ə D+)f#Z[z8A=ݢṡQlw9H%ʻ&ex>roۈvƂ~@TNo-Ub03L!=#xSa6_WXn˃tSK9,mȟ{ Zvu؃ h:nNf)vRه फ़]O2sJ'BTTj37G6`p˼,4NϏT HVh=oWۿid86< %P`6!`'YWɭGï 5kUI,7YTqn6>-10&Fdj&YjWgEUrCَߺSa##-3%kBFly.ʙk%w JgJLĥq K 6j{%ׄC>M&[&u. 5B8zΐ>,ILV=J*4# /s0#< tb2FyO,Rr7¤n&A1z4AԞ6oA:#_;N):}ٌ |fxt,̯sC2[p&"n$ bJeb:#mNl4ii@B4Np=tcrvR^3A}eOZ´Vҟh$WTT`DgDm糝V@H|osP(9`Fm8Qs06$57U;w{u>X҇IкCƁ V.ʮ{VQq{Gw㹛kzv1/%O 3 lp(g8t]^B9olWip?^/4#)|2B">֍ShKg#g%6̓;7cttaRU;6!! aAȺf)F1!i. qQօ>O8]sV[K9;&@i4:ȴ] 90ԍE 9jG,9I&53{J^ݎI$ɝ,@m/Y˳\B^]\ Pޒv83Fx-p~x11(R_. dgF8jlf㣣ʆmvM,V-.d4`v>Ndm9IAF)IfH Y/|$ !pBw:a4:4b'1G\?XPn;XMNej@\PXK=P@aMr CK{k69rsbj0zeF5Kv2d N>p+#GOԑ Q0 PtC~w>7,KōT<vYǔd0aA1]j.W&ʇ>E%071>z ՄTƕW?]#n;M-|tÆ_@g)<>o[upYkiZ~C bV(R׈)ań~m?Yaz, !Dz@[pÖnIܕ3 ggi~-<f] }FUa\C|1IqRIS)BV/B<jI;NFgnQsAC^L'ʹQ7K bmӨnnyvqX6݌J/1s_5}G[7OP|\k> U$BٷGn3?bS4̈/Zai\-aFvm_1-X}{cÕZ}&:n \4N8l4,sssO)+/6-EGoʧ+j,eb <ٔxo0}o#;H0 :tGG%B2>1*b7Ɍ6ZpSY ߠ*rr7ɹL V\Pcwh&&}L/dc+_*ELOM[;&N$`%gCmYH'g7ygmk[k X0UD6F咊Oҿ#](2jp7jo&zҘ4ҥթWHU62:ny5M0ɔ[hG$HZD_tQ5,l -@QNp4ж|mdd:|)͹#=v-6_67eP%-)KdVc-1HHtSppIYאO6j;~GW=+Ny?2 6Pjʺ?bt:W0R*dx n-rJ5OzۀJնioXP4yړS+PG_Xrgq3& oT95ffO|Z1(g𺇡܅%@ D ctcmbfbJs͏2 ť JA xSD!|P7ɮX-}>!錹i]~x=<ɂC%;Nj)s^` ~=1nkiD߶:F8J?HCJg~d4 (HTQ}~(J*sH[ct#.5x<<қb䭎ـ!Z.HuZinlֆ#vख़>ld6Xy%׷LRHc잣J]nWW6N9=bto;B8Cr:#a6SiH]{y*LO"V,2gdoRozX*DC#m[hjoKc7r{t]:!׵i ׄkǿ;|Գ(؞(x$>;ٛQ,Lӯ V|s`DXKghݓCm&[ƽhk`QwS8lkY4B4_l~9U SGŎ Sߌ) +Ȃ8x>Ysj^<vP]g,ڢmp鷆)$T9B5 [tM|װ1#  {px6@+DЃgtM23MF%:֪WFʙVrpf:2@SWit)zp`H9c>)ijI]}/->c|-66qX.7 \HXծQuqWkVuh}kiURBͶA Y.JH FߜhVUT5-H8_𰣱aIIT AI(.y$;K|dSINUoҕis[t9D+^ԅq36(0I-/43ls9 ne4O˱5<[؇f\!1hYɬq(6 M{o(=/ASbB̆LPrwD}k!a:ʪ<zˠ0#hr*#Iy^@g_5^m rNmadl '1ͷV"j3|2zt7϶0ˍ ULQ7g:`vh 3qk*Kn/j-if_9]^}>-J(? 7Hɥ.X#JsV&ryR3BF+ Y#5>1.j  7Ty19N69_jy HIK$+Y`zŃk9ZgJZ G1:uA䤨O# |_ť-~ᇉI}/"3M_)WqzaRlXyc0ÿ bHjMW j]"k#$:Dj(BKyʞvK@75o$(qW^xw!u-'{ȁβ{`b6" c&ǔ݇3F|̤8_i~?)!W Kv6A٨劇1FB2be~VxƚFVKRB?:M`Hδ)qSv"w]K WN!ysB%"tp88bhC2;6N3oBi-{E }U@ۍIXfl ! al;gX=AfSQ YTFE%<$ P<&;&Exo'eb޾B#bYG"/6h\o_9 pp ZfŃ6MЈH3MR\&j/+ѻma,@ K5. jyI%4c[n.,guP{FTݟ!ycQg|1b&^< :'oƣ ct9@w[`x}hx*FxDEJI^@ NhN~Ɓ@:dQ<))Qā$ؐ7Ͳ=z/1@ɰf iG˧œ i%ӔI|s Ş)1kJ&{ZMxɖD/2^F^]Ft8rTHNMacn_ Pn7s0p/%-GKPzf[> ;dn1sÂv`(|ũP|C`~t#}>{`Hm@d2canי!!|w6B|z&A(nE^^0=&>1 v/:G`$i4y,ձ5^#wzŖ8:1/rPƦd{G 7dW# szޘ1lp&;8>b[D7a߮8"rV\A4 n2cLWߦb%I$q6AhLʸ98"+@:qƪ|u1VpՙU Ӻ.#x} psVu|0Y.HSJV SYZa=р $- ^wO襂 ~鞾{ء5.' !Cm 149 UFv/%lo V%,3a J&ƛQv)`\ IAjuL pͮuʮgo:s qDz:V !gMc$\g1N="A,8/ ^b(?4)ull mq?*oY Xb6b^tIy0vسzhy^-<ǪUm(KK`x i_^ƾa&FٵɄn0>>R] 2 nWw 0,Lnv_Pt-k沿O8m9io8xc4ڢ[ƶn`%,Kҙ.ƢHi mh25x 'YLF͌*.Fo([O~mYpi$H-iKLw* pɀ3D>%B \`_6UPXևNzsH=VSqWԾ_dwU "*p@KUJn7S3|^:'8ǐ ?%4B/WϖܢB8|!|_j'a%/K;|6 !N|Hـ7'pnP,?ӅQB~h/>Jpij:nXd^Z˞}eNzN5oJ_:.DކRʀ4&XRlxa;{fe(=#-Ϲsdc29p݂ w=Qqۛb lL/p99<1@dIiA2v3qV~ǹIj$!қ1:,w?fA׬ýE{)LzA'G5SAԟ.3\jlB+!k !b|lŭ&t7> 22?>i0*Ըj(yuj =HxvuSh5T\?1"@Rrѕ19sG^4^{`yxZB*d{9S5v!in 4-+ RZacxc`/t\p%31A @M>/G|1:#KO- wdvB=/b:iV7 , (u+Uz;GdO ˌP!H6D BS (_i)kĐ Ċ", ^*Kyw4[uWAS= U#5IJ]8+xPzs#(U)MhLM.3=UO@0~-]ӁA~ÛlqF}I6yNb!ՍXǩX4ڏ:1]Ć3z+lqyw<4= G>qjc| I8h3Rb |Z9zx KwǎGsm=V1CIH{Hc8$Hr3Qzncހqw;XӸ Amu%AQ(GEl cIg.Fdi˙Juh)`d:^Ξ,KV ƝՀ:'A -N0kᖢeDٚ}0$R\1SiZzg9= dt_;1?B01DQ8rflΥ"_-8z{1y\YCJӚ2/͎ ^ !ϓd;0~CF#)V+i ȔS~򎙴vj`"HkPWPXM<{aꉅ}V-M1Q' T8a lqb@K7p2t8B'Z`vpkq U7SH8-=FD⒵?@G 70p4"2 "}zހh஋1He)rL}^_OTT\yNUC?-UB @(]{{թK#8ց<{#IiU&+с"V:NO1iĥߑFpcgw D?ӪqPr&E`pS@(,>+5%wZ6,$׿{%OG?rL[11K$U,!xZoSn4e`~e;QKx ]&;G: 8t )G\u&m5149`(iU//4J$ Ĉ,l6ڜN3xwu/bs0'"eF()od[v9;wy8c

%ر\SeFt>z4Uh&Tݯ6?.+}rs^Xs:z8u~@حZVUExIv/T@O``w8.?J;_^?J3Ed^]ݤ`<&'g%gBBΡ}']tq6\-{In>jx$Mh(G"83gvr64e\³\5*lp YTyiH5Vji\ Md=AJ|D/2axV aڊb'42pD2^wcڔqڐ/ $>2sy6 ꐂ1eTd^1rth p e'9Z pÇBp[#RYrlSv3A9ٲJfDk-!ɶK&7ξ) c;aoT Ce<1J(I?A_hVBRƕо605۾8?iOubl28T@>)Ά]9=HCvâQv8G˱R\kyTRjlj߮pXmޢIjʐ8B<gH4D9l"߈8! "sϹGRՓ!#șAy'۝}$JNyPXkյ e|kT:]Au.h}WX$^1qLn嬲YLבtF\BPyrz:ݓ馚/:/;F2L Sgs1Q5iFyx6ykr3U1r6ϣ{=}^G6kKVy;ޒ nT۔dv縷<@ԉqOd=Ze:+j4G^AE cʝmINcw*1mIUԛAuIIy'2(@#Hri@]s['>_ ŸqS sqOHaEY`72V&˖:m4Eǵ%wj+t(n Q3]Fy x<1V9xt2JIϔegA}.6AuKz6M{~ǵK^R0"<Q*Xl?c\%w?#ަNA;~w=i֔O4spq&} JҫƷP 0JViHc~ jGyٙrvƉF#=0c>Qs`[]XL0 wԃn>) NBݎ?~GD$7;~¿NTD^ϔ3g6&_vZ 4>c$KUcvvA`ߍl@銟L9PدFd(' #,pL(yd4n;L1 Ѡ7U&>;Ea@o$eT3i$Rxgc?3yu,&m:%^Y|[Bq}q͡^7BĻ+Ѯʕ& 맶-:՟Pa2[ʷuR0yk坦IA &Q&``-֭bInx)e!:L); mK%:[#[cu}cP|H/b'R%,|EjjQ:G/wz~<&+t2f)V,w uS%&xbb9+ym9z*I= U@߮-U-Ϋ|SGtMKq̆}{.+OQ؃Y{`6\[F#1!h〧jY=$T>9$G?+ Ol?Di>S@!^8Oh(j1XOekBJՄiNl,qxEDy褸_h8[:LV2u BqF\ ʜvx}&Cl@s:@VpD8 \3,hҎ<|a.nu0Q3Hyҹ"^Jog4@aB"*qj;XȬ 5—Ni3 hĭk(cքpĆ(9ڡg2-`+)T!'xvw͈i;'Ve@7Q[vKRjCHی3*帬tT ID2w_93o5rRc]T*D(n}z#p\;zgE*BvL=3&09 w9`E ޘ OV-$ͷxn1AVwH|Wpz |yR%+׺Y7~IF-vvʇ &P4/%ta,.5İJ&{&,V W&OIa6sĸkUCFr\4, eLՈ`nQ+^ȱaf҇BW$xwd`KHwoH%+&c (?u46bڜ2{T(񰼣8a \u\lh'I x16Y^0ٻSM"VJA>܂vMcYnXP ^r AXhX=ȕ}םe<ށv&~5 6R!6y<x;Ly㙵 y|l~ҝߧWOR[Y>Y,Ք8t0԰..3Rd}xnĴC-҅-p"' vˏ bz0p |ƺA.@tr1+ڟ[ӆIdg.ɑ` C@ؤt MꡰJ9Yk&^a,; a04y:_ )͸8Ivc:|G46!_?Rwxhq|{)Q28r9Zb\ѳ8d5ȝi\hj!T>uݫ#PY{LsX f V `M.&+a$( 湶;i: ъȾm}wTrjR_;ÏӶYd^ILtQ \ U B٫[y#U8$ERNlةstp}}l\Z V@e򬏩{(1!a }ø7.j8(Z΅yq "m$꧒}Dv"͝ܞ\h/C "Xd&JU./RYK4IHݐ7z/;Ia\3H( :Kuv[Ϩ,Wbq褋BMrۓHOzuZ7d|ϼH2;F&ԟR riQS&9? Vo7NZy٥9=mtŲZ^DJcv~oW"PorST~N3jN$Y#t!$HAc6u9IVw;] 1KnQ.TQS4YJCn{"M9i U[Ti~Z~KnT6,mNOfF8sO` s}hcBxjM)"~\o#vI o{sD f&X(tE)8 !̔']=Ÿto6/u1qt %&g5|bDz:T 3z`"h9zs,TA8 7=4Jq]}:AǨm!:M.t eX'ڨʑ{c Dj n7"s?qٮӜ艗 苶z/JpF<my3X"x;Ц/tF' 8D>:=7wɒސPA5(xD:a =U6ȔwupԂb| lFZc+ERHhQa!o%nYsp h"8*_ Mɛ|?‏|p ps IWAYM*Oi'?$q:VeDv90}x8Iuٞ(ώ?m Z'ۚ*K%n-5<ɞr#Rdcme8:/o46)Cpv)4n .!o&ʍR&ExH%k(sC7/̆΂Pqe Qu(m0A\/gӌCk}HW|M4JJb_Qx~U.NT+b3ũCrW9V˂[.Ue!uM%~ %z$q6ήjyM'hsG!~ha,|jpKRn^Atwᑵ9lEGLF=upΟL#lB(t^eM]5iwhtwܗXMRT[4eS6D [/hǹ3lUءGe' oÅ|E"rsxO7:쫞q}v6:zcHycN!)>[(^?18I=C~7L f3:吘?Êc[FfzaϬNؒJ]3'uUsr{?+o 76DθBNfݢJsOA Qf vYYqzJӁD :Yav&ey\C*L |ws -uśUۍ@[v4g)I@v-\ 0HZ{|l{HP) Nе%+q~.vvbvɷfEc1ݹ "1wRųQYIM :)>e-/_m_rKzbpt1[tՉ$|=,X{ < M{Ǎ>4!"+2,YAXjVJ5(?Wf䥏)I5yܸ⑮F\~񛯂#:VƧX3Kp9[-)aPAVgaF\ZѭH'TѕZjAx[tP&z\eƎj!dXyR[ |HߋLe<>#ZE1Q̏Y-RB JAN =dd4ҘÖw~Be:;*m?yb@{XhjA#  wiL]EӢd5guJQeGC)l[u*$tԺ i̭q r%C`ѕ!2H)ŐZ /y7Y&J<>" Ɂ>Ƃ RaВv"]踬DxJ+ aMycɇ1[72Q2zY=u/sQu&5 p錄p{I''Bwa,06?bUCy5scw.ʼUf~tFH]W<?<ЊR^h-z&- 85bxu~i(DBofqȘVi,uPwe'Sɍl|[(M8-916W,|ܢq 2{ .5~@I'a-ǯW%iJsۊtO@xHO l!bHHsAؘJ*r'Q  h6YzxxY 7S-Pŭ6׈ָ/^9%-3dq7sʹ1.Sr!McljLE]3߆,Z"UP-V3gklQw VQm ;eH]??XV Ɂ]~kGF޵00(M .W33uQr)Kbۘ_ fT͒a2sᝫ 8@xD2n;xE _ 23M4 YTDQ|uCm #Me<\ Lge?䖉JmvmhH"HDZxRgbz9e]H)5W>>+)eE.Q(NX`! nK'4tQ`@ 4w",R$n*n- n΁ٍ&*V**ƦoCɼlQ]Yqy;3Nl ꄶy_B;#{ϥ M5"5JCsiJO4)‹rYirj!81LT/r|}V?"hՕJ[3 rV1eȼw7Co!{"'r_x;e.ᕩ뻁ϟY%ֶNZ^hJ36 *Hv&|#(|{%:e2qj~Y㞽x/x4x0 |?u!:_&wƛX$>jG٣MM)fEopY}|\mWQ:E 3գ;S?W2jD~LYZI]$qG;;,?ܛ=U9MQSaM"Fi!=hH6uaD%E%@iS6g~lS}]j qO+5 7`ց*< SV9o%ڰdjaFF{1lX9'܊:/zER{ *'AeNл2A"t=`Dh#_Y̎)Օ  ÀuYd|K(lqtT >EBNJlD*51RF'yT^F6cI%-'|u<5ѴL֭z;^> y:Jypć[@x`[xYTT`f^MDW ŴO[z T'&Na ZFN+qRTZn8w #~^z8цv1Ӂo"cBe՜ҁE>P-$qדtuZjfry;n%2vd^x pt+䓑n(a5 43-YA mzPg_$P֘vP-}9IdL@O9@HϽh0CሂX/vDG :KAYY1%z˖R9Ep-V'bXkYRs$kykHr\:jA mdHͯC:k1&TEs|zd`ZJEzA4/5?%:* l>I%tRvQPi+pXg6҉(|'@[]nL*nM1 疝tdP( ,5&^s)qݵ)xԚ`Q$/ߐߨfC7GF >]R"xI64 G_Ό?֞i!8UԼDZQ@G&c,-?2~| ~HM>zap,y??WgȀ1?]S^dHZJW5RE5q W*Ƀ=c\;3b\xl!q6 ܉cZ9? U»}T9aCGtXPKLf ڦ.F? x_+{^Am:?,> AgJg>ׄpW[އ%P֓0%V0Io{ wN&P6r/L ʪyhGH/QSe$U~vHpi{a^f'퓪PW,,On[i7{YQZQE>5v}i󙈏gKVkz[VSUݐ o<iU+f:AgG?{{6 *ʈKc/U=~QM"i>á1d4T+T ݱڰx$=zvN*`_~-j"oc`74)1۷y7am~aLy̍p$NH:4_*sy5 65 N}4'oQO&@LRذ%wNBqOtL胢P_P)شiSw{&q2Y9LE\|N[^PM OC<~~rqW֊ycݢOho#2hl3|L>:!6M!GZJMZ,~5gKKүlȯhȬí_<`S䆨bKOo_l5 >y\Ԙz3 ڬ43{C?."M;)`õ+C^ iJ,)U^3O8kos#1,өZ3EZ(^8N`qQ`~͗jJQݚIŰ/Lβ&KP郓ۄԾe9X7jH1H 7S!?"ˤr/ȝtWz%T wZΈ6OQ)ෛt/AW[vE5Pd|r;ji>sdM .DHGBt?m,CY: #[Hч2p IӲw^KBHmR6(}ͳMAFfe,j6i}M&㙅@gep!Z}]>Mf 7 ܔMsEZƮ~š΃fnn\R UOA%;^1MOQ-9 cC=ӻ<'jxN̖-̢UNYgfc/@,f.o̗wV_fI:?&zk"GU ~Kx<ɠhoPB@Nl-)6|g=.餦=#5m{`c6Ĝo?6X2\j; 41S;+;%8xch6DT5揭dRGQ,X [gOpga`lCE/>01#UGcpw,\>d`.EyB89oCi4ppr/0a/ =՛\S)W'^5ive b΋\0}Y*lp9IUq,\[b L'yR>s6멣pTP)Y  w=4媍n"BjBmBEɿL~m@`oCՇ'd Qa + ߿|Lrp4=Hu0&-p G3-EeL9L-9Q|^k#HJ40qڕr3DcLTlSTzr|̷gC";^kتЌQ?O@C!;U(RjZLX KMx2CoG ޝ#~jOS5ٯR}7`;/aL>=E:Ya Sv'(Jc'g>mtb>QWnv/OlL^,˨PG/ ʏܴ%x_JcoRY'"/)Y_tǛ`TV"gy xchu\ݷ6NĻ:th]҇LBR.)d?3)cKڶÆ$>VJsoymGOF!͡(} N 9pm~zmUm?8 ^aP*r_Odxę,\@?__q]O?D[ 'RA 2L1V$!*NqTݱSS|Ta}L t bX_: 4D 1] 5L0P߄/NᲈH%;!/ `󴝗y6T%8@Top"w6Hq9i`jP2 ^X(+KRB1E h~,X\3%ސgO5ts,0M''3^qg|x | >juv^ 2Wy_ʤGh`UƪFޛ\̬7 TÊrhWu)/k ~0yQqsLpu>O5Tu,xHyjc!]qEдc&UepH.6~a=Y@.]Izj|ךX=&JInYz@U%IC(yv{O̶d"L4vsRx}|AW0ʵGqd *5S ]CPi ݋iP,Ht<9ON3IJTX$lL- v=G $ߴs6cxc&bV`H NGx3Tr퍉#6昧:i迥K.phJ;Jvoj6TsH+jCC A?j9Tt)iN{)GU6%`0j3 ¸@icJvxǎPHfvdƬ$ N.ؽ.(C pĩЕY׸͉Z[Wb&>I|ɤх&j4gp anSuY!MO*0A s{ PnOR/Eaܼ [j1m[jϞ&l8DyhLuCD*CrDCo|a1j6\z^Ťq*ħ7̶8*r^wVEHϛ8{tN6U^D#;W x^ a4`fO/ÒhR8`/򒯸9] o-0`JaNx:^ )$8̀Y+0>PrO29Zvk;HjD4}Y zy qb7jtJ>\bnݍ8dhTSi7|nuBxtg;aVy@I0 stgӰ~O ,{i:ܾJ66,v`g-a6,5",rѤFsUͤR(0SGL!]x*+y;3S(fP/f7k 6htBg`nƜIM#O :|.%zy弫|z6z]Gy? ،j՗!igφ6F[|L!u0}#{;_ -Oڕ>0ZE!dƢsIP훷/{cGH :^SJ@tFhKwnAW0SQ&@bg*g[2=;Db\Q (t0SW;iMyb(_f/g >/Йgg9wlh3*ZÒT;>Fjծzn3r6i4]Z&[}EOnDJcjJ*d6 Q`s~Y<ФV(Ƣ 傧9rOճfY;AG(u0k~ 7>UD=;UI <78W$$rL,ӳ`DATWU)lf VNv>49ڛx lS7CZZ$U=N/7.NH5ሼx tqdX? uC>o00[H7Zoc_i&e3qQϕau C`5faL^XإD9V19BhTjPUãK{`3:N r ~! SD=7kl~W4zA2zFߙwO> #LVG Bc ~[JȦa櫺< w A4ZPB? ˻ooKxC? Z{+z'˱|$fbǦ'c~2]#tV -5d! Nv$my!P8~!ПȘ6/"_Dz1 D`dqXU0m~_ex0T}}Oħ2ߖ︋46Ko< 'T!gQdx Q?=ŞLk';}qmS-eG \(ݐ`㕥$h n j{X|WD=j`N6N1ʖ0H7[:Y^؅m~o FYL0M?t20(8Lg1hDY)VӅ*DYh "&>4,l&1ʂNʼn3fI_zF׆1~|eq*%*"^H8Uj`9;lB}MX辞6wݳnJ7Ǩe(,vFBU.82 P H*>ņj<޿OUA>Wp&N?ZOd텊Qx{p}b_leNVo>rvۂԙYdtrD#,=~UȊ|߸pסώlnD{1)A䗪&B'e5Mﹳkәcri 5H[>XȊoɑpA1fo2jyhu&'u6?a?劉@)~Sz *ŶEBE _H#W0#fCQ;7b~K$-CiGMn@Aءh_0ꚑzr޻9tȝeJR=mtJj wWi}c:m\F4[hv3ȃbOW?vT [a fHl:HK,dj>ihSimu'i |tFzW` HC|RwPb]H sB3\kWsxyPg)}^K[ɷ`x]XNbB7#<Q*4gձU\bthۆ̩+8>;GxVXcn,\hI,`;x;ZpVbI0lO|?`S 际4 NgElt jy0eu?^Z%Sdoj:Mo%g&u,dL^͜`N#]tK|f @7e+*<;Z?eZ45WkuvXѥ-9(+)+V <O ?* V3aJfߥ 꾚+ &1yjW9X>uy: F\HM6-}5VObkcfFۏETpx7]HS1L XWnl *n>E+hA XrmJixFtq0U9E՘|7$([͏gě9%W^s#' ~9Uzx_i䞰 tHߤxM Csm: Wp%Ia{솞"r}o"PO枸ia eeDu%xTb%ʺqu< ?э3jDq9Ij6Ou{`ѻe;=8q{,m"P]oB9 {0oJnǟC:qHdEaml WY5eh&V-y֬y5 -6c_k_[4VlW`qF5'u]~OcaG&gb̤iӣZuebCJu6s%x5QP)ɧk"}&X`BX5gDYBX_>5خa J2RJ{d+r27(EʏrY|ЬΗ|0x4xtlVvb͝ *>ImNc2!.8\Z1=3PرAUb!nscf,6l3\:UrϩCÑ~]Afg en:JZh+ se2_ LN6w%(qPUFvW[ H6np!5V o+[$=p4[Tg\{]!0hq!l},s_b~/c|ϒZ@]M$,mݹ|ѭcx ƛ=H* <;?Da4M{鼳(sɚiB ڭz4:[t :aa)>`+Jb'ԝmL-Z:6PEPO5XDyΐ䭮eՒzwz4fndg eN̮*n.p&b6ͅ:n>6?#.V]:&'2g Q)1# 5&dY#lɱa)Dڭ )SEBd)#3/>+ mґEs@A{1Z"n~a@OM |5["MSrT˲/nU60o.^IP]fy[jþ)J56Kbl} @7^ |BS L)"4!cB*ѧphPQrT>:̽Tr*ANZ`;ov%㯰9Se?pߒ|uYLq=}~RG SA5J3owDZ A6+~rfI_[e:J3c2Gl`  R:Wk bw2\(`S|_=&:D`K!!R X./ppbvnFCA ޽[:)N,%](#Bzvi=zw{jI)@%:'3 4P*P?',3TGФ@`wRTXb"ކmhyK mHEoWx<;3"5J<"yr7i#MVk~@P/-Gpd8ݣTs\1Y Ȗg}_[`p^CpVVmZ+8|j=zy<Ov5%Y~RϦ]pqt+؝Ita=^ B6?<9'Pd0"t%%X Rޅ6~%ê;pB?AHW #IDazhܫ̽ZR_ p\)F`GlfUnڼcdfoi8c6xG4p4!LݟHHC)0`vu⨾Brɷ:Ҥ)pgA邌 Vi 3m~q8DYE)cX\s%_l~Ԉ H(ߞqh~EfZ _u_ O!7ÿt ߒ$3KVN@LVKi} <\=8Fz6&cgoͧQp 1^ %NEqEQbaKh)9u}&h!?hquH>x^A^5n1'ə޿WZSdx+߫ZIQu SvU eH{1gGf@z.Fx?/?@ߤff毴yj%-vM/cSMvZ7k-Lӧl54~^|'0s3"LȩXLC(,94a;8JjH؋WA\޺NX6}eO׵p"Fܡ@*~aM4SqAS3)dU,F JF7@C΃k|$BkXqۤk|*nK q=_4@, a+qcS(W^#4FJzw΢h8=͙Vзv^(P7W7mrf@|yŵn8 ΋ PS_xK/^lA V=#Y+~g^12bey!rv)4p,u܊.TΛ-J<`ev(+G:薫2F'Pa* g &@2ͨ9N)yDR`](dXiI?fSQ/TruO /)̻ž@K[:m1[꩒V@9?K&W^y$|Q./96D ޘW(i_7na?ܦcohV*\b/E3Hkl+=ma*Շt)Zuqk%Yս&9fAvnLDn=5 j]PC%7F#'s_"x,N˸tMP"q`(-h+djKȧ@5C 81ⱏ1LO~L>%G #i\<# 76D+xt2쩘Nf?7>6 Xg4 'fhY!'+uuDڱxC_&ꓹ;D6)8* Gӓy>JU2ڝ꿈P/ d7,7R=K"o٘@i3j;OHQ>H /ǟ2nx2B!Rzy-;(&E3\7ɀ0!ݸ41CA ؿך]t2&}/>UaB5VӚc H% :YH#]3ZT h 13Ýɪka2y?Q4o^Vf8roO1po P X gdDaCJ " eYiq=X1j_suAB_q1{9~A acԤEFp@sY\}Bq";Mn$u{t&?-T̔_!iY k&d[wzi׉tE I4]u;LM/0te#S"q`v57A*VE"M ͪπcA6HK780h05+yߗf[3m. ը8S,tT @]pyb,s1/C<\lEJ հ| ЯvA,S 轾{&\p"Im\v^JƴKNM - Gr],ho ~;i x +K؏~&3u( TNb< 5s QJa5|A ԸH΍)M^"mGMN_B؝PzSwٷI,~VnTzE-!u*S[>ir Gv 5%dtȶUkfMMKQ BvqnɜZO>Bt)išҗiȧ9WYi-s1 Ӏ ; շ֊{lX;ExNϽEP.'g3pad&0<_PsZDqV Y\󩰕 Xqeզ$|ٛ _aa{xie \3?Z,Δ<y4sS.ᬨ"jyMH9`RujLD35iU wޚD P/A,3aceGJMΏ *@a#u0>~׆OHz|DIťP~C "awP&?FolXPKwgTkz"fKC+ۻv!_rt&vNVǠ*sP/5*bO)O~%dWåpgl V3mڞhS_Zv3L&1=$IT}/Tƀ(U7~J!UBܗ(xuovBLYS> (I`cşTDv`&4]~)cjܓnc>|@]6D"<1$/wi0Jƺ1y=`L&crQgh"df}Ʉ_-Evf+g,.L l,=~ dϧ l5XeOV!ax"S47ݢw9}y)#)dכ 9jO]Gd10ɀë9"prd(,L>hJk+[ay*T ٘_`5vp\vG)1>2T y\[U*De{f8tpYZߘ ilSAslCH#Ki GE5qO2?TTM ϛ63 Sz S@eEXq่8-1r2hQY 0 xEM0`ԇŽΦ IjknAg>\<.v dՑw{;)e}ELƐ~XԴDN7v"XEAAu4rUx;нJ+/%麾P0\6OAImCI~Q1*˩y1~.q$oSr<=}AP`U;q_Z*\-w~B0N_8N_5] w BQ+b<"ea$_yqt9~D!(6BPt܇tq*eҘ(Ld$ Gsxl}G:kGYU[<j\_3/~dZGGYP]C|0~2[߾W^4$sf+Lԕmm 7Q.`W 5)~4XUɥHS{^OR#_$0PTܰ(y׺Z0_v }q,FZRamLj2rYSb ;]7-낖ů5!1%?'dg IOSb"r@b"nhIVYʂNn+*-Ŀxb<ΜanwwxtrK\7h'<>X8Gሟpk:'>{+ꁧjȸo轞@e.12EQ-QY;y\Y:NC3Ew73G(c?GZ W_\ %Y 㝓kOW 0cG񃞜JՕRLd +_1Vt ܚ|UE 7E=n&̅F)JX5CJ<`ۖ'TąŗL<ЃNh@Ն䣌]M:iDHS6"V L»Wg=L*ps#Y2gh҄)raԧv-PHLDENH:]۲0V>9]7>Do9ZQtE+a%c)F b٘xozZ`I=֢ !b8 ZyǾⵁ?!'ݨ\ŌwSr_~ mXt-l%n#8Qo]Q_Ѓ ui8?Z8g 'Jd8ifRs6 2 Kb 8 QĂmtIar`T(ZWFz+Y$ eİop[69d[K 8 3:ch ueÑoJ_.L{7m&Qus8H}CkH6J{ܩޢb@-[OqNi='dl/YMrkqnɤ ]B8 C0"D-Qbk8BoJGMMj8BR{ z\Wޚh9FNyx2Bl:=8 ƺ#o egR [SjѳٌD9B[M +Kl!gVj٧mPYMKHARff3L RYp2Dq'kȳ!F3Ķ]nڮ-B 7&"GJMD|^Add\J<"1:= A?XiT^_F+Nhƻ'Ś륵*.paԻ3a5[P4`x,-yw6{ePJ&abdHf9'8u mja[ F?zĆ;Wd}/qg gZfВ+Lj(w` >q.H]W`MGfp\D+Elo0]ZSLF-3W<%6-oD #_N_r+a;vM "0)[Q\ҾSР{Ɏf \;k@1JMs&H4jY{vwNeqɺ(u 09ݗw&e4vhk*e >qms %D7wvե[V:xگ*7_:̋f#0B 2?9Bk~^6 7ڳL,M]9֦?]u,9Nܲ9oG`ly긓UNvb 鰠a+f^+ƃDbYCE(Kͺߍ%YV?热A\oY7 ozV;s%?55Yh\@33CS?}eaNܷ|ABFm-:L3cun_/Tw;g@LYxA*2]==RTH6FÃ:)EhO |O֝9RX5)Hf8%(dË?u=@Vy9쎌ڶ[MU R ^[_&'LJ%En`LE\.Q;>?kw(y\,:Wޱ0HL”KSC\ZOtW9qD|&WjlNL<ͤ`DM_?m ݹ\_⁅C3 K(VOSA}cy=-e|E7Zԛ-kǾF&Gln9%% )&o -uYGQO)| )>>;WN0d#l)Iw 64nWGLFTM  0d=:~02W @0r;\rBi:ECK1XKҮr#鱯ĚGU[~mҥL~;.2?ƿX`ܨ+B!(6+"2Mޗ0|ݐ`G (FO>3I^Pu1sqZ2<*(F3hAXE(81׸P_4LM-"t3e<ڷ&8C DǢD*R9wdߊnzE$ JXùו]5}N߁t3ӥK-Ɓm"UnkEc[`+KqrbrdP[2d;^K hn(CÓ ocu3)UVĝ(bqoYJE!aI膪'fwݏ/p̿:ھvt"nf`BDaC*/,<{$ 4IzߍQiA |A(;9#ՋY5# z(MP "Ƽ>Q[& SjsWw]+@<ܥtVc2*p .xRܯp3Mӧ#N^,I+'N3sQkt8+gPD#avJ= 8:p23T#]GW_g;2EOl@T< FL1/E|*jY^P`Q͝bD]t!i d*G:ķp ׊~1:GbM4DҾ𕀨 pg/Vч 5kRgw$!J`4ܢmZ>96<~k6k$O V&Vtq!psxHe|Fg x5PbdOaZ23އk}UD*Xǐ!.$1_0D%yfeNB>z$DG n|(NK9kufoyB)?31_[`P\_-w+EiҊ-bk8T YPZޕӆ<J*v={6J!M?$#*IϹ(4[>[$?˽R 4<!X˩'`G%j/EOlif8*dKOwܑP~ő[D&~r9G) pN(*! J9!/k' bB#UϽM1Lӷ%̆[Q OL(B_:G"NZ!V1 I1(>R˕K8r2);Gx7[oզ^[*.xWԉLq+d-cE[D/h|I5nYZI&udF}=\9u<N#"I˶eȫɛ8@n$5 s%>r0m埉T@̨~f&ߣxoU,cF )Wr{%>??rV76ފ{)㠮znlNuGJV;HLjCJB )tmyI#|~,-5! ȜȪ#Sr,z,ë$Wv] 6prXmdTATk- 2"e%gGf?fݿd|o'Hr2\F{zLTDri"G(??1a)?b up0}Y*:#Īsب:X-ʇTDvK埝_&GQX}%5Q{Xт:^ "}WhTaϩkȗG Ie/ZJw~cjZi4]ٸ`-meo-|G2\ (mfW 4Uٜyc :- Iݨ~λ^1%17=<(T~O&DKIM[6b@hkNNf8 qJL^u-_Jnf~0bd.ht>N`xtJg`5y0-Tj1*RvS(ӗvM 2\f| FS226ˈ,ihXD>=Vtf^b\c\S8i?B-gm򍂙&?!`EG /xF?`?تSd4B\1 S]v"ACБU$`ZQZuA3!3 MFo0 OBB,tDY [uH] Pr[h&>,b,] ! %8[V: Y r}*rC)dJ|{[Lc3}h1CWVaÐ֍%clRo\-2)XXyaZoO6_;eIkXӰ D,iPˑr<~+vU` Lڧ1q@`E`Z\ UV_'cű MlA U3+ 1|%mWhc_6b].4;+!q>2GX[=l0F1[tً9ι>jĬ]Q'ߌOGA3‘\ibc>գ~U 8IK(d2-U9Qɭ,v$iRpjP}[ L+⣥3K[Dx]o&\9 UK&(rKMI]?/SyÛm?ԇQiMʱ S9@lB xd/`Q-N*Tb(sDY?\kJ9TVGɡ2x?&>N|ʏ8@"܇\ԟ6D6i>L:-Z7Z+YVb +1v0C%zo]}N7wqm«,2bU2a#!G`jiFZ͝nlڮ-A٥VHC^]9t's.zRjSPe޽SePE:P*s.GUчBΚi)2$a,EaƚȠo7$<0+^r0Ņѹ D;W,'e-FMsvij]sAUTIIDž6&04lA2BtռePi)ei H.;c&\S[XL3/'8AYbwj6.j)Ӛ(T0CL.d@9@*MP鲩r/E@߽~~np!]TQ=vxRM`fJ~|ͣ׿ l0ލ72 Z?A^CGowNbZn(GZ Z^,Ӿh%YNy{$L4P>Wƺ34V탋r3@O{=c1Gdm&f /۠#XWï#M X[=G^"ⰹ V4des~w>ՙL/gIg x\% jf%R9v2cPǩ s~}*e5/DSVA+00qt%%3tz7:=8TrVCH8,恓\MiDtQM%|g/2ݕFYHwf$ K#;q,At9#<ϟI>Wb_[LK =Y nu 2m0@Ϣk-}4\{2.=ːh{'r]?hC5Nsvp”FBЉͨ߾0t{cHl'`$g7o3Eb+SC,$;T?e aoC(NkD=d7]d˙ó3fn(?1_EHںğW/iI$`YJ!.QGYϝcbݺ* + zt3]QԢu'y>A#~ĥ橏kZc㉱X\ *.?i,E*|s[ ܾ*y+ë n] ]x|{*&i`X!=' T=j}uF8=rK/slԉ[θؗnjDT+8u =_2r?{FuI>$64K: W19Lpe&=Fu"σV~Ӕ+6ƕ0غoOF1]y2Q;\odAѣhZe%ڈݒP$&wٸ=3V})TmqwR\n߁RU ᦹI׵Qoեe@h6p C@ Ֆ#..Og㬬)?MKzāGb lv疚nOO2rai%)xixĥ0rL&{CÂ)¤ѭ)Ǣ>R Ά[sz\6fⳏ&T}ot4("nJ [ߝ딦 6jHy^} x.L#áRvoKMls3d; 'U=fX,N}|t떪C jCˡI<"qݳ )7 7v`zJ@MDIH"2~`<\ X0?ha|JNEu>D8TLl?.2X1V9V!ʀ$P' W!9]O%)ሦ&J8uVL{AZcE_ O\'4rΜ}mss,RD-4Kjr=0ܙ4σ%y }˟1Ѩ!Ebvxx0}HKLH2(_;.H5Tpr۷REwj:;j)ru/͕,>J?G1zcr;\8WNPnZIfE8DI/cr GMl<|脪& x]oŪN,x4 "̳sIsXoLQFC^e6_CL%ixD^*t_{iIgv^8H z0~RCe yw06fTDVl4&kXrÿ{,qŒzXR6 ނva>n+7I+HmV(Ad=7I{B"ۇ-X >n_RH_f)*s;ʤ+h"u+&F2GS , ]:kԐ)% }GV$zjFYf}IGS);Uy;,(rHf&?tɑqP4;v '#üv:bNiT$d&-EWǏ4% ?\Xo[# ¾$Zu|N͓3թ-{>CL 4H)D6@Oi" xxsC~67Z#ji/rtmSdtU8$e7cVΉUvzkDC^.V^\l} ;(BkrKP9pS0=b:PWtBR]= A>{TPzuv0Z+< C5xL}sdMf| 7/@ (e%WB-{tDP+N98L22UR8:Ջ[_;nrZf j/S. I40n ?r59I9z<peȒ]}Ya3<{f\t^rr[ d]Ꭱ$=1ˠ{Rc:+kAA7vgBR"f5- ?ZR w1ףy[#U{VjyYLa6m ctj|A\b!y^~Z1  0ݥV}VE UdF9݇^e8Z>mg,LUc&r8!nȜ7۔ @cE~K+ri)y{& $n:-l?<9>J궧!81'p6.ll D[-1+6 .w&Jhs8VN,x I|ِ^YӳpmU+igJ*jxlܒ`gLyNUʀ8ǚs#C z㌯֢enkY&˕`*3KdHzcAICpQBxA_YD^®%fmAү !l쇩%cP ?PvziƵDɉư֘O3@+rxn dHNƄsH6#3s֣v!"QEyuoC64N'SH%88jqJR908o6GuqTUVn^nh0ﵐ֊@d)㳻2ja[yuR0Yjjv5o+JBlً҃e]<%vHe+]o檳PT{-D8RMjB|aasmnlJݝR@NRu*G_J jQ}$8Ozb_ H6B|{B&Wހ{OtnobNx I,|Ӣ-np7:J ZS3p/$>oU%vޢ8횟[/Jyg<_Iۓ7L/x8.)zMSx.Y?T yH(Jo^ҧ@ ?$Zj\x=0ηdtwu:pNȩxeG&]}dhD-G#`RJA+Av43! $< jT5y8'̩Hu 9UHDwo^5AA9WvhuNwRmh>hv/qJ7V g2 G2[!,'VRR4q` R9ÇZ]%t| ]>Oc%Q1;!Z~rʌN$@ degJT%z&ix  @]63J%U=A LL шTYZxc2XYdvhUxmT *YU8x*(6^>.w)<* ,@` e߉_ P%!KX"gq߰|4'Ћ\'7gI?'(|J~#J"8}hą9[wqyp@gED͝-fpW-T_t$)7Hd%˫Τ3ĽK\[c$[z*%;/TkFA0.56}-<|HxhM p[ܒOAk]Pj}NSgsݑQc ݤ[?\ ګE}bsEߏdf0e)l3\5 cStk%BsQ(S &,AXP1  0HmM, *@݄(yhVB0j%+i  i_ s\E&bhVhaG\lrօMqV;d"+sagF"sdfxs[9#9@5AU5CnjhQ EBe{6N(D~ؚtl]`_Ob`o>7o)',?-'R:;mDpwrq4w&3-t }I1jG`}| K%ɇ5(wWMZ1 NÓ)qNo/7@c4=hLf|OƀSX΂{CŴFfMWA -K/23s/h$o%W <{RrV[ظh#ׇ }!Q%>ӿNyaq (:Jlw S*dTQrXӓMg9y[)FFT^Jht S=LG{+ 2mmfڲ_ vN}D])ֺddQ׫q}_PT&XBd\@aa(JJOL]gNK}*eHHGk’9TQ八Ew޿Uy q937'Yi\ cq'm>m;+>u6xCr uZyObdf\_OY1'1X2A$Vܡiۅ @̗&ou{f3Nb?ˢǐM1Q4F1] (u}#__8\ ^ulGI?)[T3{ة"S¥`g_hn( ~Cp_ZkIsi-ٔ8 *_n۶5/zpL6u\Z*oe͛%yQyygmcOe;u=$K$wL/ɉwt4•)yQ1ZNqTQ㦁!j# md}>yS|ymYsXC㚡!m ~lfxU,gOOWZmNG'5L 9߀b *gzܺHL8~mk_t  [sy=7N>#'~)ҫ5_ qua .X]h:ap6U]co%$UOnLh5ukOAЛfZLML "7U>:&@6^f>$et(Ϗ;(螋r [Ё5m0UG ŗI<SYIHyھ̂nXLÎi x*6-$5Eq3Kٗ7f7o`O$^&Tō6W$+-OU5nqa!}=&u)7o}$1~;JRݿ3''٬N=Pc W|Wp@vQK` _7LhCO㞊5cQJRoM S4Wb_/`&$K {K6|-jUFs9oS¡-} M/Zr)xZW;!èZ$ #,~I[Yw1DçW(a ߕƅAJ:Tj&R((R{@!^4*?#6MZ i5fI~E  f#ؒ9Խ]ę,(:o9y] w7~KnS 3o(D 8/!c)cdH a-+9^4kK(S1i6$T'E;e0kp0ڔ'AY51.(>*7l1Oh,'+ƝC1&Cx"F -F%|AO% Gl"&["kW-z{;eTH4G%+ޓL32ےy`__V<N ]WC||(ꈟ6`\1џ^FWвjaW?2#Nha ,oԐ0}G HtIgUK}skg] ./I2 Y;A' L~ZGul L~Nn3'tn @P(}) (yU]afu- X݅N|+|]6@OH]ZZo8i yTYhx Mw[o6buW"HT5V s' Rk1;L|ur>=o MfK<xP!+un" ջxVA"(ejOK.N-'W<jT_^Z8jgl7*V~tBxiIe}M_&HeԿ5( h!X%P>Dn%psёX`BmF+@ vG88vihta>:豓UJrb8Z BL2Ѳg? 81TmY/ڒZN->ySɮlU'CJ%k bT}xAFXPJi;<8UH&NW/hkNi!9_dme,ډf*BK/'Mp\Q--Zp#s>3Aڢ>R,j-Q&$?+/GZ."d5b|7Q#ԈO[čuVN")M%ͪIi=F0¢Y9 DR/%~6<8X5Qܧ@j0XHCu<"zNVq3άךŬnd'4<ɘo;=UT$}\)yiK$FliJ_ 59O -L`u.l&yTO9_?m\MW{%Īr\ƓҜr6/Dnh9JH)c&jv tu>A^+Ҝv̽ `PdIfgzwJ{3Vk*m?I;kh餠l}gqO(Vv5=6>cXQ DP-UX,;Dzs>>^[~nt۸6' #bs/KO,NIeea4H@(y/ e&?!hIN Ƞ ehVF ?GOY[ {[a_i8nZ:Lɓ(c I]9YI(f%bDa_ v7cC@A1cGsR[*::b8#oxAmзZsVFv 6g{DSgc?}dgjQ_ p~sgi*5 zT'm5rCWGH2͙!h]W \Gg:|ǩκJ-){5ՈJ5 QLޭ`>pyC%` ;>zd6NO+ޔŧKBPͻ'.R+BL^`I ͌{Z F$ Lۙ4JµdެŠP_&G^zT,XQDIs@aN&>, !-IV"xӦ KjEupSn0:gVU) MFVr !&K:]:^S%~-~M1Le*=MyJ靐dZ$^.Mqg[̧aĶr)OW+>:)6:Iӽr*leHz?aƬ+?]}ԄRzf[%/yJWvąS7/̿i A&%lzeoXM\+Ȏf$[ ᙺ1ȳPj SPE=Km4m+bʗ? ps ڄfef&;fW8Gg m%DW D}"Ccjflob֪Xo>fSAN9V#{] o#ZWWEv[h MK;(t̍֌ד۲P;QGFB ʳaɑ%δǤ*4RFNx)O[cz Mfin0 ×+ĚMtVcf>fX6+~tV wܛ|ngrQ/yk<$ŠL&LMy}k8gvKD@P[qcLa.12DTi:^D*xFOj,)_73q4v8 A}aM. C$V]D겿,UZ7׺x'$-B lk)ـQ5o0;w$m"O`aAۓw]HQyהJ=x\#蕇\c|J7!wgz\y[NQ 8')yV?_%uQy;hk+wb u!){=,"ɌX^V$i]H f5)mضTM3{oZuL' +iů5S&2)m ±Fs5W=ViB7s>bATRj #%Ä"/U\B1RVZsuǸ]ILέRVv9Bf@WFiPY_oJ]꽴Q[vl8E\jn0/"?'kTccEiȺG-wdL`GULGR¹;/crJO³L9fDc61cڧ()hOs򈎺qD6iN󈫈CS4ҰU/e,~Nj|K]t*jH_UtgӨ2هf/CN>j&=\5so F46 {3G} EגV2ו^?0-Jɶ„C^\ %E쒪J09?O\4żG 9NXPݡ>,%+wn k\p>yw,3$lJE&X/z,`Z@眍*"0@rJ+D$bNɸi28WbD,߄ `1ѻ;lT(R8QN=09'iDnr bʐr_hlrnD3FNk9%3B\L7Vdrͤ@Ijf&= ٩{Z!z}a+vrf("*k=N nΈE`x'{ $өu50+nujSӢxն_HjsX-ZSwk m ɵk$[j!?"-򟝪d%r*l4B(Тm͗&t; .+w >Bq_W}.;6ipt_/B H>NTPRS_9,e!Rk\g4hv!'$/q ^/%ol}am"s^28s#Q@ƠUpWlnSz hc`6)kJ1V 'KNfׇl{au=Dq6-Hb0op%Oӝp(0K)H-N_MM2zU7h8wHŜuUUέEZ 䯜ɖzS³ {LaD Cu]틼8)& d (qfAK?[L$*G G93ҫv?BUYY[%=(^*tǬyV=+M׾f:E;']w, yep]0L4iHN܏I< 1~BT!HU># Ajzu3e[u*yAwu5uPM%tTֈuH_mV.x9Osuyd1:qĆ?WQIW 굻tڐs:So7f8̜~jF1SN?Պ`(y+eڤ+) t@呟Rip{1y͙>|!wʮs1;+~"3rT#P:QptDјA3}Zw3P-HJ0dA{{5dLR7\hr)}{r>:w+fHxcƆw ?VQbV>BrPnhb7#T.BzCc2= 桏칋0BG\L‡ު|_ɐ^(PݝH%Z9zSL$O0()UVnwua;Umzz0&t l騮F\?G})7Iy;o3$Ж`RcԫNRcemk89t191g\(c:q]~>0>볤E먘"% rj34^7*3wa'h>;ňZ+at0 =xwAզpo -fJ>!Ff=1<E i"Tgvl P+^ICА-'<1 Ƹ= 4uz3)_8*4_}@ EGM>,0пGiVt& 2zڂu@J;$d/׍\RcY;SQof\qR 3e+fubl{?3EҮ R|lso3G> LWm%(|lR5[i?KdHQF'Vy+uWƉ֍@ߠopRT.>g$W[\'gA34Sg"΍ R_#OIh7"ktU׺q1-" >,2qRE*WHݙD*t(E q"jwP-PX3EdPV. S4@B![$O`o*PxK1b\6nnCj"]՗p(|xh8\W}^y uJPž5ťObdQX[_[V 5گܢ-J/bn|džALv秬Yi`JMt#I5 cTLVד>KP2xM-{N9;i&7.~yN0?9t 9pssIjr 3ՁKXJS8RZ/Nz1 )& D<_fi/Ȭ [)l̲uAp5A+I_i3+!ج 4e|*Qџ5|#]8ݖJxغ:Ky(8 B]SD;U[7=.Qe}=ȡ5y0ySW w̳!}CsV SsOFP̯b轵ZG~whߜP'm⌿z{;`٩w=@Ue,9$%H* ޡAA!{=|2ݮ}<^$N !6Wgwb-6z)&+I-Ң=7 [mWǼxtgGWCXp)"bE,X{ͳ=Z 6k7u,}AgH=NX}ؓ5S4q&hh';~+)Ì xWJh9:L ` CtBƒ-peJBLܪUK5W7eօ~^90 yܳf zI*NVg)'퀰 i7>ҏ*D= ?)Eⲍo|`-Z;݅xuAkW҉g1]g+EկU儱ж3ɛ7ll`3tL %v^F~7*dDJ5|鮹jt:OH/hp\#Ws-@@ !bSg2HBY982NV=6/݋hVCf߆0i Q|·_s{SX4N2;QmiT?>1Y#;u6[Uc~ uIH M>_{o xәVdoa6:"? ߲@` q%ҡt]ne_ 1z&N|271A;4qc J:.0aoaotvLCFzO΁f:u7߀|g# N>0hr׃ե%gLD,Ц) oT,WΦ(? y+/ݯ3㠭tX=:#ƮG?) D@=.T ֧QiI35O~/C,h 'BIolniO`V*+|轹nRh9&xn҂F'q;AtD{.c,oVM+շgڶ78h})2r4ge3bɸ\( "Cvo*m=ZDq}. )q<#+(!7t!PpB-K2K97+yTNFeV=sh?mc;MX\4V1EM@Pu0:#/Lz#/$0|)o1RӁ Ht@^{k,oSoS_cj^IZjCP0}t/c# c则6ՍmpM.X SzX;jx^낧#ѡٯ;:3k|ڠge;{&q!Z07 P&?i]`sKؾWxJ ŷ Q} <݇$Qf}]s-J|X?oLC4nhInG8YK*  [m'߯5E`R 7vKW2we5m71hHWINmWHK3)uP)*H/n6,\\_tG{o.~ i[[(|gM5:9~SURpX%qkXJ[[C؏3r8>5CEfZ'L x A.YlwM@+&$7sCDipZd8'2[%wPŏОފYj2m>]Gtt5exvy~y3264³ӎ !XhܠC}Jn~~fO[hXS6:'-n7lYs Rvk\ɋ_|r!N7 pK )k*Э)ނ%,b¬/+_&=q'R3 UĭK1ד, %Q3Q”AM p[; j~_B%R_jMzR!nHͣ]XZs! A PٹݶK#7Xq ewM/v1ծb>siCj;@ɠbc)r$1#i+Q]^~؉u)VG2+.Ph[{q#tEQ9z4TA352OD9 < P_ybuKfšQ)\wj=O"g'a'r @F;LԟKӎ;ސ`TiGtT,jpOFVWAOׇۖl giS?x-ؠ:2ppiD!iTH(ԃ=I}]+6pn Ce߉: I5d>Ï\w/w W߹;Fu)d=w[K'*䁍BߺuSU#C|V>j@ #,XkYcu9dPGb|٫L2'v2Z ޑjo@٘ft9n0xvl܍\(~lnJ+$}MFqvbB:pU1yU&~5KW樼S Դ]%+GrLRٰ'rH&A ռx.I9 䉄}1CPc1pJfjiӱ-v6ZXI$v`>l-F`ȷE2iD.tbPeܳk̳+}fJ<N0P 7 7/M_K,B!n?.9.=,*Xp" G"dz|Nmz=oT͛j3Tp1cd])TI#N05X gފ w茭]D)kjTĄ`X7ZˤvJ`?2,S%l9iI5VW64;3;W'ށC[gmXӲ/VٳIpwcnF{GcAL6WFY=5˄gαːNlcZײ]<ݙgod2Ь 8*0i?=vpnH@O(K9hH2uP=c X)Y4hbei{,ERTl+h CAǧ]<$*M"#?0ޙFH!o刟`x(hg7nַVe ǩFMvbqe-` U.NV,×0-7⹒GLNV-5NS:q5]X9pW \&>5^ŞY#VAw{.ioK Fyc2FoTԒ|'S㋮UUknD/.DHK8ݱ>K@:nI:}F5/KjסhP(>f,ƈW4f3H<D{wNØ/N< OJif;r%rʽ17$}d[DE. _,wDE둒񩛩P?JYSj`]r51b?þNbv1Eub{3U7u+O1&Bl'[RUn#xS\OlKW5k9huĊC ?X+A- 3,=VH*c%0 2pLc0.y&HNCb][?P8.r3'`0:%.UM>88^mY̛de5Fed&c! wa~8ahŹ6ensK.B:;F&5q2HGGEHY-TB1¿1.֞5kAI ZE(f ) NRcKYN 9u[EkHQ9y|P<< ȶR*:m$Jf"|P!ƶJn+D@ܲbw"ٚ!De۞=l[e KчV, E *;*GqO֏Uɣk8,uA$hj ŸGFs{mR 4+؋q(|/|<*@^n'q{DInGи@rV]ܪzL3i IK<S_ 'V9-\x3N Xq03h/@8U'}OoNXC7GU)' \kOZjPѕ Qk?+g',d뒵 FdbU&-":wwrnܻK.Emn%3X OSiel:[ucY> M{/viP % *GELmY+-R>>a&$f#Y?$z'[ 0#YGwEARWa.P8&p(g.S05!ƍ2V`W>,Eɘk~6ˠoyn"eDğSo嬖B&ad X@+#gB:XlhRȯa,=q7I¹橒g$L#h.PVbRXI^g< ˨y"`\~*ՓZe'su i}/K;qg@d ~"G#!?S 9m(Ԩ3?܌=g B1r$-'$$t]^q^[a~74kAs&lDt_L FJMf>1=m?l?T:WZ탾(ZO" 雂; B{*y;3 So>Z#d{^^yx*fVzc xo [^υJ\x#VdS41yU#%҄'e]pۓL[£h!@ӏ+O>#@pNN%P Dl>ȂȈo\OU<m8CcZ&\̜*HkL09+lC9T̥= %LZb[94P7Rgݗ; 5@ 8UwV8??.uME7X$>8a7{YaWÅ]T|'0P>&IR3 Wru}d1!2\/D@mߠe8{oRaQ/0{"wtl4t { ~dstBOdqث?*7] >mR^MO* Hj۱:=FEt#[~X`̑.Ĥ.s3W*l\gwlnWkQN{3*ojYZ#x~S5W.q!ڼk#s#y݋/eEJ$a`ib)V |Z&)oe3Ή5]g]A)`vLI@3Hh5v ~(c5?cM&0rVU!v=Ki$y"hVqsK4-^l6τЀ+lpfd,:AubЮ`(7/o9}K6m 7\niaRΡ)=)ـHy<]O/%x{l=̜SlMDN^0m w1727X;e)/$m2DMޓ6@"f^ϜSmad]!/Vi;Y;;#Py=>e̋f˼tLmr6~)?DөI f]W(D,Y晴,<&ng!iQ;tQ7WŌvA!4C<]Qޚ.J<]i~Y9Ph`{G7 m46u> fԣ:4Zt8$r0s& o=~oA2 Qg>3HEaad٘hIaM`v0HI0`Pz?(ݥsC!J1tI |˶Yۇe^U `rL٧> Vs0%O!#]|ױ K1n@ OJGrh]\$z1vow$u&Fi/Iwзsҹ}f|4`UlO_MFiy g)ן",E~Ory\UiG7\5D.YWƊ)h}aN^SG}ԙ[ n^UV]7bTnƙcy(l'{2sUhZƛ4 TQNmr/<r' -4ǫ?5êZr &/5t}*#bE]X%co ˂BNK޾=Z~:hQI`s+6Fgծ8FX`Qtѯ0D:O+kS1\ZU|Jƣx ,ɫad[%d_P"*JZJнCŮ9UʩH;}8VBݦO*;#B9tX1S j bn2u[K LKpӎCz؊FKpˡE$K6IrQĮ4/9}5 PVX23PUtYJjke$JG& YwfX @V(֫ҷbb51WNq`C8S|oZ؀gpnW9|;Z7ݭWQf5{UEXЂLӇk~+r> a]UK elK/-?;ymu>0D_skꪟO6b?>ǀ}/*vEQtCBXȒi|e/Tf{ENm,(߇s v_LldD#M1^/|ATD(i t[. 7'ܡa #mDGGUkHYѾbYuT_Nv"/;5oo}<{\6`xCډk[uKC89bPY]^< 4} iZF[0*g0U}6 b k,6ׄ[ KVWʈb/~,%lC-Q8c1(ը GVI3%2 T}phs`Tẓ9=*Tzr{pffflD]crTrbXfax )]pV K[o`#c.ɸa"خMqs%pY:oqt1u}0?EG6^'N+ \{S3z_:2|Um.l>ڮi#z6\,H ݔ[0c1#kN;/|$*ڜu7k |0:ugF<.ZY0EL#eu#];8v:ig6z-b/SPRw~?\\a[3BaN2';woEp&p Q %ng!%$اJps^tD\j.o B{+Я/J!SfF(g1FjS`2uMh}f=Vwj!ܢ/\zJ?IȖLQ8bj|l])kƁI2r RKsjG.};a°{/dkR!=PCl0>$Ɯt0c͏}sPn}K'靖Ysߨ4+]8kׁ'Ƀ 1>7jT%~N[k#iQ]ndfa5^.:VOg"56cS5X.ϋY e Gw1͚-2:l뇺XG & % 1;!v/mk ;I^IOOEo1(Fc@~ @ι/0],˶G:?lk$ +2{{Gb06W*|- jT@(I2K()эx{emW@/hI-Jc5/*3 ͸~T;ncfu%b-dR=/yH _ȥY]ws[:Hˆ I"Vk}K>W#'>2[oF [wo.p"a[jn``~}z{s:XiTx%3K(rt[+-I[j< Ԁn!4baS< 5a㯨&8HF/c_'x]%$X@B\hq`Z=#6cg=YZQGU8?/RK;p@qPebER%y8]Vb gU <\?[Gb0_"s<7wh: RRblUuK/h~`vwsN0l?μDkͳyx1/z7#ۦ/Jh^Ӥќ4@%$b E87_8gxYD 4gռ8qX}VʰB%կ" dxjoU񌦇]jh)Y aҕ? .ްFɉZ ߃pμ@ĆPvn'm%3鼑_PD | zw"brHү5}ݩhsCYNuh[tWB=Z9p&l1X׆A-Ձǐ#.gU aby7mN&IbbPd!=5ŊZP!rԡ]Ǧ!`C(nb/x~ bHc4:WrCh*s@fb7|κY0o4yP+Axf}r#0|<ƞgJywqSVj{jΗ4ByyԐ1%eׯSXPL7N~yb9y}$!>Uf1?(>_?-#z.k1.rbX.nc/Mb@8H^g (j _Y3 Ke:'֠OIg3 ʛo>C3'f:o/IvRPaqU5W[sb :|Fdoڵ\oC?dyzҥײjsm$p>]b\3% v\DJHH[s`@ӷ4d\gD-{o0w^B[ YbW! 7ܙoO0W$=4uR.g"EY@\{}_D28V.OzkbӛзArڡ7`\$*y!~=q{<1pHM.M)1SjAFH?k>"ޤk`OS+xO'Q45B`j>6Ox=[BF&=9!6L6$܃s38JA$7"Uzb֎ڮ -4rAx_W67K;ܿ鲹Fʿf ]ep 9õ^mvDR(m2g`#ﰬEvHayYS5q>`5dѲ*XA)IZF.œiGm1xiQٷSG3}/ᔟؙéPM)Ed0#i{řG5 *h>T@nK l{&:;b)U75d\>+[B^d 5:Fx'`?*>dErK1n#K%hNv6N$ ~67}FY8C GJFɭߪ|(6oQJV#mUȁ# m^יG+_m_jn7@1}NXmiv凖8ox;!dy!QIیq3oe'qLfO?!e2 n̺!LM(l8~C׹V]0}?,$qUw4'j=XMگ#] =QNb f5iW9hxH٘e5 `洬0h9ZK] qήY7>4eͳ^;ɶ|$!*o] "\zUul@w>s's3]`/v dE >D78Cv?Jd){\So{zoxP_vLlcٙx_qg#&%ks8{2q}e`|fV'X*F{m;8Y+HE(sXQucpE8Y %tDy.gߛ1o-=p^i\t =B$s(g4Yo|nADC џ/vtw=؊W*>cx=`ZPBzrx !_VMl!+wVY{n.(عpݡDdۦd[ ߗ9zz\9Yyz\$&ʉZɕ1NXK9%.͸QbfudvBѢTqCrEsh}hHI̬!$Ҋ).50PL6m5^nJ%(]Uv-ܫdӞ{SnD}OidH$MPs;-}N)b`#:ͣum?+67+wXG*r]1q?WSR5(9ac{?㿃81l'.2hFZXw] ~` VμW:Ms4v~xq=BcW#pI,5MD!r 6l8]mgoMe, LwԴ%%is_J P(+>T*\Q'Ek|Fcq〾7db>feQq9c}^n4Ǫ@e+iwy4%Ko.]$}B3LO*@opƯhMd7 3TPk!6|PB)<5e1mfa2^2F[`4d4.KI6Lt^hZGuLAoФAŀ3 ;t.Mék%d8tܲ0jeVIzMɞ(ݤp GppklFi:*)bd!aqܚcȾO}k1Ui(Ja3:rzDNu+{=8eǩF 7rf0M9;j-ڑxi#A5_*xcF(`)6 , ld| 2U^}wnˊu[2g8ԂT8RsI]ex'>ʩ1ހDR<*/ 3A=@~{}}y.b<iHpXE`Z"Rcz0Jc?`j/AHjNc>T-oF|Vqɝ# s^f|"um_L!5"="2 l$Rmp.دÅID&Bk8NrbOh2]u[A%i}#NX=QL(jNs$#6rqXL~ۤǣɣ03i59e(!w(T ;'` ѧⴏ;zi>lF[H^*E"} ȎU~)Qɿ^!9$ _) &p~ΟDt촍h5;n%!Bגl8 OaeGtd>@a/$GDy`9%}LBVz|erZ.ߤ9LO-+U)*4XOJOpq=-e.L.#Sњ5!!8яP#*|^H(%p-CfF3W}h3ҐES.iJ驒 QkA8|SeQЮW]EN:0ːٮk4^q.[w@2o"wPɲ _[leڽ)"JܐT>)kOg=%yɆ<k+C*hSι+DS4E&mHP"u^N@~?.HXQey1+̩tD$UU p1BQs\sI*̉UAgo'8Nq%_`qx~CRA7]mHM=N{1%4c(_Ty[O@9lHUJ9釪<6^aW~j y;:? _bE (+Sbp_J{qQ}`by64`Hd_,KBluN3q',` yHfjdD/I<1Ρ[ `3wKvIs_%PhW-De#ɛ#$gP=Ke_y67=]Ь~vALdG{e3]qrP0*7e"0E'aTx|`|уެ; 3>yw#FZ7x1eVVaZKX=0).ԛ+yPE{"pqIɀUc T`a~w5'xʂ'5.>]..a4阕H˶ xZ XӜդ:˼8vg\[T,F姁:R?t,]|SYs?w ѣ%[O)Pl4)o8E`,nɑ^I߽GQ |z0 }2f3H|6"%nZKutWktUƕeVCOOԚVfڽ6}lwE:HϏZ}e\JHzGP> 诀ā eud:^q_0 f^wg(s=B'N:ƙt2Ya}TrR-Ueh-Z|qv_xXs+Or¸a2_mGfm{;S(,{ȆIR"@$k<4j$*._G|O{ +GeI-4(SY.?x,q^7$ 6{yB+ A[ƥLG^̂BajnĪ׆f.NDB`'͊SҴsW pLdutY4Z}9`IN`7uld)߿v !*WdzC$W>Y+`z̏2f_170_nszd[ZboD){1 Mwnъ+'*1e^okNga& [⽔шhMj'~9c/\9J~5{蛕vQP4yhXy;kI+Y-x_h1F[H)h&pQ7Ezw&F4c =(h5|N(Ei9XdSgyTٙ\a},{k ;]md'DYxsʒMc!o2o& ǎtuEqODV ̤и af[I`۪%[OC4TSSYK*:kVEy U.aj!_lON[ksO!t}1FD5]0ab镠a8Afɱsjtt5};V=>I'a. L0(*Hq%Jk fj]|HG!ۓ ҏDILlӠ-=0o~us8*Gt@{J^ $&Բ}FSjڿgey -@{[cHrÛs dW#S̳)G/[ (.љ2~%nGY@/T:))vI{Z|4o>z;Xw9ƪ6;ZD#sl.QȺs(T5sO[zISo k &JvnlN[A11FX=(j06YR>>Z'-|%]e{vۡiLS"Lo.]6.^FU+)O}gBnkÂ0/Dy7PbB%H'w߈^5ݑ򢂋&S$ &n<|Ym ΢|AvVf[9o:KK$7Iq &eZ &DsY@Kgb=Ȝ> sGҳEpI-3Yi*.`+ŘkSZLz)O|(+ [Owas9N~6Z5:忼:7᤮RANa];|FDOq%n*tW|ҢMYoBi<;;*XcWi-!7(/˳+2;+$?E~߂yNĩ/T1@MXP::T5jsA]F*M K$ʧ:1bG\~KK0:A`ƶIXU| Ւ0pt_=fj)8kWSHCg\J2g,"9)9z N<.wFՓÃ@x;.=Z}KLJY|42I_%'w&c]4S1Z 4 aғ`Fַgo% 4e& Hq̘h\s?^;3J3eL>kOK &sL4J~-2ix}MԮGIQGS>75UN(O YZP]a֞*<ybu6\$Nd6ڒBs)iqfk]TRXQO^!k9\x*3}}7"=@EAj]Lt!SKaJ ^!CǶ6JQ pBF~ TZMɦ vB3Q fG$k0E65pdPag ȽG> LN=_:)|L94`4?mZE@)V҃Rܲ#39"M~gܣpk'# 0{^% |yf̦"ͯJ߉$'.i%eO9ZA^EhZua]?E)-{K¬ڟ҈*7y%Wq/{r7k}PJn}p T墠[66̭ W߼h%!w& 4hԣl -8Vu$Hm29>u¥xzdj_t٢b'RNKiY~G(Oui|Ȱb؋~h068 ֔iNnps]nБZVtu(Q0SZ pw=k!szs·CA*szq/HWvcSjHkIZ-%:ӷ3h+GL&5)jU.g.- ~:8iVBX?8WJ&^}і!,&LodՅB';#63J$ԍ1Yg/0>=CBm+2,ViRTzBFmrNQa֏zM|)<^J7fe  X?$bTxit+wCneDe4fYK?_TEE]]Buޕ8ͮLN0M]: Ef8y.h 2R6% =-m{P9̼Y0d_y m|%T:Ch%H3U)ABؖͰ"՟~r ѶgS^$vuܳnm *w,(q$ۋ0!L9(Aؚ{xz_'= RkΣyߡ/a߰!奛a :9DbLR.GE'On)z Y=w5!|yuƈef]xEfu9b3}t5&H!7GqV utd2gJ P3d lO-7۳KKHV]bbC=Ozx}Du#B1{~3X]&*ZP`-aS!eMp(Hu띫JҋJ{jeupQ(%ج:Vfo~2yV UiNɗh4nC>C'6"S}.uc k 2%RTt5fJ=y7>N>z*>1aLA`gv*TV%17Q^3v<'q 3E*zũ*ݾ!?\9{PJ_W|Vc -[E4ޮ8EzEzg- hGBewWſָ^1M5" Xaw.U6(.߃tl ?x앆{SS~o`V2 9!LJLBe 2_=w0$FR-Z0 Vgp:ٿM̆ڽ QB?҅xbYE(v5Zu7Ξ69&׋o[ꌤzRtɧ[WAiagsLXF.G2wmW o&6.ސ#.-n僃h!l Ekio_%Llvabz̝;gdQL:TIuMmXVZv{sPnY ރli8"Xq%ź#TǡZF,S=~*IVr=/Iٕ͸.BC7#> ><# 2V-PB$6d¡\ǣL$Cl*O'F!R űrJ5 T{)S2#DgևQg¢;ZSbKB5$x6XcJ=[|"n PvaSDf"jGL ?г74'ë>@PQ'r9^% ZF lƄ+"3=_>S~좋ޜm}|(n:Q0b5dro AÎN".Smg9*0S4HcsO2hA;z'ENkY^Aɜ1u dzFwJB%(IqF[`X9B=ݬ|3+I\]HHvL·[. @`  K=J& &Mf:_•e;CGR+cDD6ҝל]Ost#9 hvXnjh`e !I)W3%jt6 z\W78ZݏaޫoI@`𦌡F!c"P\Eclbڵvi/Ӳb`ɛ{#Yrd݆n-S ρz9>w`Lv͞Wt2E@G$uR펼#'aL4-ӷKz VBݒ'^`?2Bb30JoF^dFZpxuizWbxV*i2 n#BቊԮqU,?Yw7'Sۻ|wx5Ɩ= (b.jX@|_adY+0R&6(IUvZ3;KT!J-;hk[KiCp[K$,ed3zw$wKz&֢E/aPw `(7l.aV$@REl(%Mbrgؾ8'LG>`*%JBK,s x _CcW].|Fjg$6z&t[n7J{%BifĕkaϣC}񡏢5|~q &vXZn~"՟x31 ?e-A5Pva 86Ple=wS{lⶢGw̕Ԛg[1,4YKvprkT$!%*jgJp _,ߵp㷭2h"[uխ:$ d>gJ'*Wj+q(%t@KBQ~7_ȏe Wz״jI|%YOr팗HdRUp)/YG|>QSX)U1mI٬g2xzHW`7i' I+&ݲE # "&xDt@d*WM\:S9K]L?2atF?f?@BL{"2IddG,lЬeF; 2Q<#ͮ٪SˁH |XeTME P5C#ZF/ z3>˘KB`?۷P* dxN|CB-8"U9K/];7-s #ng]؁~pYeEi ?&z28@rؿ]8aݿ(i?wkk SkdȘ,٬]W] b2n]Wͽ%h5\aIaY]wy *ڟNw )=z ?vcz -u`Ctsp70Y7uY_ts惰Ͳl3zB} l7=kA!I*_UTI2%+vF(5UsͨHs}oמ咙qc$*~ 4F9trqza]%ߨ'Y([{l9Rj"s:@Hvӌ\G-43 S2K+PE҄ⴭЧA׫`i5:%]$^>24RC&06\%Vpz}vҢ2:(7Ɏ:$ M!>ҡI>iMKroscE=^Q_#.n.ERN? ژbԁ{BcOxŨcF2#sñ%% 7vHE:@.VMce6 cYˇ?j>ՠS`D ]5aE .~Iw^4o0SWJXem x5_T1!<;)vciD|SУp [{;U keL$w xo{*|^Wn)6y.W]ƪ?(nV)v *ٍMzCmEKo׼0jne8syߢ̕QxOxK%>;-z)46.Eep<.A ɒV}ݥ-ZvҖ B[BȄR#FA4V2J!i4?m>a]hoԲ05NSTRR'?_47G*-xUmzk氵󬞌>k+{i'[FܭJ؜Sj},LH ;r=HK` w`>~8 nQuida%qy&=jb_ۜCd}QM{Nz;=ķ%=} E OAu#z\%0ſt֧h)7d亥.N*Ϯ:r(ZM:/PM=H< D_(GdYU lEQi8L~Qc]6MD#uj/tҭs.se{8Z43Æ6<E5s__)h`_ްóv՞qAh;ķRtb[G}X/&RvL5#ma8!Ӌ߳ap"Ӫ=-[[խ:J@mՒ&#|gMhd+QI,,y ʨď}u6 * Tska~^"zC]\FdB]BJ>p_.6̓d(*/ܘYynj`FyɝJ`}zq^ݒw4kBBDI٬ORX|*swsc6]_{)>Aѕ48-΋~@5sj5},[ɣd+6b&7V \v ?[ Y'f<,N aq.G\y'B-|/B=fdK}(i7(P?cNqⴹ5⡤߼2fTǽ98m9_Oep~e˦ JsEA+?$ <4GȃC6lr( ˅V4 PxfDy~L9hpc3S$:ςW9 &}## au~%Ȣ*ZPUѷO*5B._J>Dr_b'1^ct7+Mʊ6CsQ-Oe~%,/+It=ϦAơ141LU}oVcV?c:<{8I'wbʼ?쮅6EGvNٓOżI"/wL/tZ+ bIg&h̭Ĭ WR{ |q @3#j 3.dk2>Ww/r5⎼lIekIZ$ɿ9vv{y_b9$p˿œ+D2w OPm]\IVVn|_9*Ʒ.t懿Sb/{ypP9/x,ANx_:͹ =[ѿ*ʴT3b#\ʳK;;֭l J<_䌎^W<_ιG|Čљшg"f K)$UF$n[@Aku3f ԠGdMiR1ey|«l0Cd:ED#HB$di8Á\D.(fz2kO=SgZ$.Lauh%4#6M61!i vDG)4br-Nudn ntV<J^tnMo5؆ =2 {ej]h ivDK(Vk=6Ƅ"~⎦xdoOa)?T@nMfL 1Ayb7-zK-C GX*vt+6K%uD!qUZ A Fn |Ӆ Õ3CX6^,ϛT-iT?'h[zWi>( $J B<jJkeNh.@P3mүGEOM6! UB7.0XYb0[W-6LBI>jVDYI>R9B|0#kMxƵ 9vD$g$jtOR7E%NPQ70ËdRv~!;ݤu6zf.cӨB1sF!=Dq+X92 J].Ay\j'Q-=a%zڥ Sd e/ -:7n>v2M\}1݌*)|kt$RMKo#8 gDJo`wO KBl<^o/{p ^D/.^9t]+֤,lYˁMI??.6ϟi3NƮ~m3 />$WL'[3 pβdCꎟsgӁxwHTpwA%f¯P/Hob勥Ce.Kť,CpKM}&׎=uڼWгz&l8rQIiZ5>߈0'o,G+K;BBGLZfX_F;v F7x$A/0؈&T !("fN3CDSw0Zn-9 ï/Hg+ˢuDyzDUbt}@¼ 3% 3샏Ij LGHI[&Ǘu;IG؞Z˝b'N;vZ!X45S^$iVEM%ݮxĞD|]{*[ĒGLMHA\4xiCHl} kdJK bs7 Hs`>j=%.ߘ²1^̵Ǣ+N% bBC#HÖ/KBRn%@xObT%s4F|\#1$0e<}5NeU2Ѥfgҍ{tEBq=LVXGq,Es^sw&*)^b?Tn79.?caHWt; suD&oXʯ &~G.9Z@XTӨL (yӉ(T裥Ot,OCפ*F.68Q`RҁǧM9dM&'ZdboPmyӌS-b ċ}"` pp,bxҎyhE>W?%G[ݴx1` 5-z6,QR~op0,Sd9(Dek({O'w=!TѦϥf$>u\yhI̳9ES>s6Mn> "WBNG i02Ed7QΚv*. D<%-ٖBҩ''Ê`X4qcWI[ <<>o?=o77L[hϾIѷEsd=pWW Hj7CQW6v]Wg'8_gS_b"d#N?$$Eh`%`#5"*?4Mތc˳,vсT?R!m~w*Ķ$Cn̈m@JBQ,1sa!c8-R̐4Ka#sEÎKc x1F:,:;\':a8|B0g;C"- 'măIG u{f߿\9d":vң&-̔XF#P%A+Ӧ*օtB:1hA\åBn O:7')rh19 WUFAc\~pe:8w10^}/?i?VI`rB] |* $Am HZJ`Q~9\_e4Pc {0qsׂq9A{5qVtG9|M{A$9*b?/2sf`<83˓R{q`0-AJ';Cr7׃U,Bx(,)p:8L4a1 o&75wsUs/! [/sGg7zQ8msY/$*_k,#¬?H dpɪ>i|EĨ5|KKNrOqxN?&xcS+{ς;1&b%,إNzn0 &&RuؓU 󁪀ApȣSI+5Y۳A%LjrCmcapp')6 E6%.d>bޖs Vq%,,OkԈ~kLu4 ; [ `R]$EѪK#vYc)q9ʶYxK5վu+6h PU\]-B k5p.Q}uIJI os_BÏ:WZ,mc~0ۊp}g:,x8K &za/J;~1 ڦぴ~f ClC7BO0Uh;*_#ne2 ~)ydǏ~fD^KOwS)!amV.^)!5i 9xud;7("tҖ>o/o1ĩ"Dimˉd'I3Mg!f/"ufx>[Flc*&b yBG@(#u k3UIo2\X<W|ϙe&^KTiw)Ry >MqO"fӬ/3$o/@0&Zy[It@l/&~O]8Bڥ=(ЯmVprE Km0%VH~9)r'= Ex^6G*TInFU)[o }ys3;5vf xJ1¥>DRik!dtgB;l}Sf :slA [Wn`+K_cLiΚ"-vakp1 Gg) %ϲ w+Y~&η`x/G&ųY m-I++$Em˵Y ~s@ * 0ƿ$g6 vEZaQnrRAﺘV)-N-شצ}"ń:|)3Y2l͑o/j'ちfy8qLƿfI~Jl}9h©Üg ?us +lw#lX#5`P89 YEe7I>wZ5ΤP 兙QR8M`FqFRtT4{|7>lUڶ]{&# Nnʡ#ԕ %^KU&Zj4WmyLJTÁ g= hy'C={o.C'T3G_M56]5U|fT囚乤9Fw\6Fe^2CL6$`Ts>Ѳn,F{1qP.v]L֧Qۍ뉣iΠ[0.G\G GdK%t":Tz.1X K03HX[%EڂT߉LdQfY!Wi8ܥKɅ+]7?uۉ"\6KU+4AEQ91MWZ~/i^C K] AE%;xIl=}2qvsC 0Gچ5 1a5WPX 43 YHᗹss/z^9Ś\|z|)os۵%pZ,bh7M۞ENpw͖/Icgx >\?!Hk` {&Qi| GO]8y'6RMC(éCOv:: ũ'Ub0AhrG`;3{8zx8$vCA>-2{icܾ0C֬OJrR=0icS?̻( mj%xnd:Z!ʲnghj=.ٕM>gX8-wo[9f>^>lښ搬`(S{Iܔ㏗DҘHl=\aO?+:N$9FUљԞ-[wK|h̓=AD$UȇHN*jJm$yvle\yYkf2A\ o?jM3dZct~2\𾴮~%?(7O4Ⱥylc^j0B:>2r*!:,%p<+0)D| T"Rl$_q|.qކP~~*9{i5tBVg ~1^vB{3\4|^>ͲM1 x(}t~+f.ײiOu+E)^?K5gCTPPwi=djsb cD M.?i3lk}\qj!ha1f uj+o+8_AЕ|<`b5-b B¿ݒŗ\DA%H>wS/LS'{4Q0w:RGz$ڑ`X'IQ->i7 K20a\u4Ǜ)#q)o^{ s)Te,rK&ѓF#B:[A%m2 2}}.U%UɾO YGѶ5 ѝ dgN(u_nMb{0;6{)F \Lcf7caYe u~ԕp@|ym-U_?D8"vqޝ11WDS&^D)Akgu )Wv\ ]?YfIP0|hD)*zq4Om '^؆F!KE_ &NNqN3` ׭BխWgW_"sN@dF2vi56;H]G7'Ow&g?Ե3%%K.Jșn`>}(30;{X;h<(+8/ ;"m c/!!ֹGfڗ#,2 #):tCm,@)-=VN{43rE2kMg WB,VAiLu k.l| (lMU+QEؑvbKL, e,XO^\iH{.0uHǭ5:G۔(-PRj2ŵ,FnX Ԓ9 +?u}wwthyUC$z#/dP)O)'CkԺs1po b$Sm?킊Z֜XS$2Q^k3&L-:;,> AlUhl)tLt*ʉ56s|qzK_l9.Pn|@\I*,5ۗ[;};=ogؾ{b,rhܺZH_1nqJIz4^WDP=c@6ke8i$6QFP`8Js]V,U>'W+av6,+J廟 ۿQ1;Pkj LI*x5@Jg7$fyJ5 p**Pp°. R3Tko#Ev^@#% [[mv͡I{xUD) u]Z ts؞lM+j > SBѲR&#Gm}]H.j bZn#BUCf85ał6?"ߖ?.0oz( 0jsGm r%CHԓnS?h3殤DpGm"|`OSJN{Cy&ӧ5bg& _z`&vm $ښ-b5&k#ĕ ]>=>\@CKΛY=>aH,cxM(h+~ogYtmM`T <[Wr.&;sLm4]'Tƚ=h=3!dGC,kHgj:(.C"&ޑ'56ad%PRłs1iNQ*M) 2qM)Z[&!iФ4^%0cX},hĽtS4YhDiDYb+WJ pMiŎb"TՔƙwPk‱k }?ю2RF~U*oAU,juR]P3繯)~=+עv~^Wq14^K H :.ؗnU]ҼPIIC[~El?I?Ch_9#(=yڃܝ(ls.ʳ< 1"RH?n4;{E f {$^~D= G #Ͳ窼 +KBȡI{E.HWv7ty ?+YfV@̣) #Q)Ϻ_XxzS:QW],[FxȻ1Bc@LN8ф$hF~%b9kH M-ΊgQt#"YL ;ƿ=ԥ\hb^.*HJزr>h6,l}=z9\\92ШU* W"9VX 蛪+pHت 땳1;s\fR׼ؖB \"Bn ?KP!Wn] QaJ >kON]Y'p!&9{rBf%E@ƆoF8ɩ:9 [ʺo߹=4uRڗ8,̋͜Y rp!\|X7>.i^X`r7Im 2krs&k;xMQ&SpNѤĈchahl+%T>-Eh|Uz&-O4i̛TUCꑅ u \҆R^Azlپ3h* FWl ,Fc#;g{W> `^;9IE691av|l5ѣ^? f[p!Xu|q:5!Y-QX8:o-#{t'Gd^dV)aq?޷w)^ {cZ8eXLaf﹮LGxҴXxf퓵y+HJ7|Xpթ14wZq^Z.{ M7$p$bٛ́Pi$SZKcoNU-@\TK(h(`_\tXS>_!S deh GV2fr-؂fh$iPw7Pd! d%> 4|^]1{eh?ps9n <~{ Im[b#w68cZA.۝&F'1P'am4|2lʩsmGQE/F5> !|$U%gzf-V44 G,U(IZ6(Km ObM 1J )r+^WocGF1 O'm?|Q)cm;U,q&UCPTHO0VNU)L8&pU`p N\˝WIY2nIBeMPbt_󪻔S<8mA-FƘyW,@px5 r *l)m=Ԁ\PQک}xd {1#l]Grn<p&Y>j#)=*lVT=xBČM]6n ()Nt6Pyt܍GW &FeuPĵéϋaCLzQI3g*@?TPŘeBjn4ҝmmb*? &*cV: .1~%2Xo*Er$`4nLى<+{751VVo?ר=uYJVa逴!I W_&F2/M`8~^#7k!H=[4aʇd4EFh39#=?,~#vǽe X 9_gpj5? ij;ON_O|*V|QN1;t@!d,tr$4o8 s1r,*v#7e6olio>Yq^B`)?N]ၥVSgDZ}%J7nqJ$xnlR(O')wvp$Hںy@Ph D*چ\7 @?748͡;Qg+]NJBԡ":4eZLCB">z]qbGZ~ !p7<2I{3GȨug]^#>gY._/5C6|a*˸f԰='A `>9C=Ox 8+荢ǔ<<=8KאƎC !1Y\𹫭;Vێo; ]_P"wNz , V *{w$aHc+tPlp's@0|z@y]~:&U)k%ШW$Yr})&~gvTy Z 1nJk[& hiPqoI5TfN$T Kr5\w'FM2\,`=ha<_92ݪmOe@$%_]fmfCgHuLm?3 aE^M2 nʢ fŘ:Su&$bl7rU&|xcJ0KzoyU _J7տepUŸ$]=d9!7kAa܎,ɷd5cVwe:r8=dif L4zx5c}u&F^#ߟJ|U+! Gq?"FuaLaso7leԧ AQ+X.GY*v) enz6$4veMnUX8p_÷0_/CqHhd1B6Cvu8;eHyb\ڼ@-}r©ҽmG眆FғLHy-7">A -BW0#v7rTm(M6ȹRfRϘ,&HU[rsr팘g^I->!ĉԡ;LTwH ~R7(NAi>AS!3g<>Ϯ#q# UhzAdCwE1Z/ {%mo:HB -A;5܀Ulp~3 C.=N|TJ? wpLl?<& *ⒽK3W!e!$>FL憇S5~lM_͈[~bC ?VmXyw*k3GbmR(E,sAsfhRv %i+C?1?J^!JyXEyQy<{'8.ZڻUq0 E+RP[t7yGggz[Cq[S@'VA7KU&!o2L'*K-%WKd*?$cUTW <-8 0`iRSV3Wy3' PbjM["<yip'xt<_0^fA 巁)kuK!FO+nFU])hgG =EJG2KєpH(#%]~~pl5.6E)[nVsZ7<1(`d[5{0xiQ:.H|D" AƩs )'JG3|즦1nfP4懠z^WW.ϯQ" &EoVя(o3!Fd dDB^$P.ڧGʍۻ>eOD!GӪ:ܔ~}CދΜ'd\OTkI ]؇;<2][փo|ޫ;#a!7/"NȽ<xƾ1~@UG;bHj>m3Ӊ \&aK "^|"gO+TR#oNܘ РI4ϳFn̊܂ۍנ[ 4Dq4l]<oR^ti@nrӧ͚!8O\pbl دkYxuڲL[0ͱD%K`2۽K7ao0=sRռe?ϝU q<>Gju{}mc&r~Ex`1Ijp"2pUV<$ob;UH{Sdg Yڎ6Ěđq? >)QmJFUT*!vD C.Z!ԭFo"mV7exՏ:y\3byDn˓6JɽKd fM:S/$˽Hϩ,׊В¶Q`Vf~`Ree3cd OoWqdQ؆T{\H%WگU(E r 0 f^ܳX1;tu`9y +|2+߆_N @o^7^U6[uEeʾV6mmWq=HS'tº"!ސ}[r\oct4Ɣ`qx"/FCaLyYQ ވV*^97`@7o\kRe 奔΀?vl#3= R9nwHŶ&`nĽyx9iopkw'5*r21KQo'렳l,qG,&Vh8JSc/d6v@WKZi쯵K"(zS%I?=.I!l\'`;_0x])9SB8L%Y 0A:J ql⢩;%t 'cpi5#QQ6ЅaO P5%*l(@l=-Y'!K5TALNgMm89qG7SNĶ1*α jΨGWgio_CalyZ<>aNR=]*e{7w+sf. T.`]֨}v?A#^;/*KJw9.ZU %7ykby~}xrt~hzW6CksڭUAҖNKK-!GVO5ן2˭K 0@;h]-E^B#ʻ䠏=v<eCýDke<$(#Úa;ͧsdWMI&ћx=damɍ}\wjGsh S"L}Ҕ]"˜8?mkmܵ*aԡMRzMez1{v&3J^_^Cg.[EUjkjP0:T8,͋xhPZF's~;gNvL3QAqP.ք*з:V!JԁXkDk0~(zl`G 5JاG4BU) Hϖ&>O&pmϩ߾u fWQ 8тiiZs%G>h>8?R0(@2tFPඓߔNҪϢ"8[ '܌zy#ǫD6.FWq/#R+J"P7)]"=ڴa2`AZp6͊ݔ}㹕@%{Bu8(T ׯS򭷘 GEUpXQ2ըbW.bi/"i-) d |D <|?8׸\RD/R\3[G4 ֣kX26 dӮ`NS;.x%m:X31et ,RfZ@c^JX MᄾNL('+^B;8u  /1!-Q9oGTݾ;?0E$}}hq0 {&@@W;hW"٫=GPzYn<*lUfri4:W8/5p Tc"5ف GB˱f6]pP_ h v5CҨÍha˞\Aee+l6_ {HO)+# 8:m,ӉaRVR|C4w*:iBxN%okT3~܍8I#uِt>QCŻVwPG>!?9&Ao"6nc~ fY4+ONG8?'$QjrfkpSl` rB`U!)?oʥ@O7H׌sOti @`Q*pS#q4wsP,M/M'Y(-A|&l@`'71t\j5=7S<ӑG ^WBh~w 0Ӵ Q- ,g.ٵY %7XEM b5pdD%r$|J;81,rEsa}̃>bG\i7&;hH>tW=һhAp^ ZJi=^*z~{sM :/ Cim!\wșc +!y*1#8<]r5"{p*'[`<$z.#y*~~=\wr[VX>i#%˸P;G9]W/qΛxwg: <紱^ԛ0yye9qm fGMa 1%}Rc +ō/V84uL/t|c}r╒cDO{߿"nH}!ƵߒFd-[c0clʆSfd=*]՗H2fNR@.Qij >sdo ^=`*m(L`Yt԰uZ 5azpB7cj"U%޲4ClK([GKB>3dqF'S8"--%`ΈiW 앬;z>&i 7|/q͏ vsBJ#=ۮa _0]`SQ{S7q X|?8%y_&괥 rN:@dzUOŋ,!O̟RS(wJx~Bnp"jIAu'S)juz˦ip@@zEwʑp"=m? qgee!5E6:YI+Q-mS}QP  mد$S@j&h+Šl\ɧd/\`A$3 5Vg]/g{B,k8fu` <$߯@|W\J?gj2m#.TInfvX w0Til\-\Ftez'B;](dvՑس :|(_8!T-NR?lZŴ>)Ml( X9@LxrQb#ҞnROJj!觉zw2,C`hVf{wDgU'L}¸;}A3V 6-j@Y;?^TЕJp؊h\(Ah psX]++J%BMzhRL/U͇%Fڜ,hضX\4tڟB{G&R5Ư/ w PX&/_ ^`lق MF}li9@MSS_k43ϖ|Ů N@l=;qܒQCWb8c )3!RV_5}'AUM>}%$W¨ kI@ `ZHsFVޔ@bn4@H7Ў>ɑH=A@ F^/ZASN B4Q|3Hmc0J3'Uk>|PO.LIߏw&rL^ qy[c6 8llZ_{&F`! yP[{wBnʬt$X̗Xv`D_0a\cHFlJJ9zCߞ>*F` u&()1$w<:p^kO5oiXM`S$8C`)`X7u"cnj‹ktoqͭfDDZ#Ea]ҩW00O2-QUѪ&˥ d7˰%3Z\CM5WJXO-&dv0a4u@*P SLΜ<߶7Y3r8Ҁ?|mK8@bMi]drCa7H+PX*PLi1vY@JJKSWyJ #y_?zmfOQɪ8q{g2'Sz R&BNd@ǙIP;e"Yդ(Zk RMqrʡy(!Bo.ofصR3O_NkSΏ`E} I mrHINtn A}.uP3-q_q)/Q1PT}'T6Զ+pMd$Oar&#h?z6]{*TJuoxgpdO8@ H&5)i8bîGRqx>AD9e¦2xv(}P")SgGcQ . ;rMoַ9-GcFj-BI6%,d^-IC3:|jn*jΣV0 !]w[ ێSE|zGcKa'~RA.qφp,YcN ]]i.ʉJѿ'"Ae=(*/Q qr~;妙-[-8Q60 'Cy䏸% [{De5R}P~\. ZX-6`m`:$x۫SȫQ! .pcSeлqf Z o #YJ`o3Pr4]GdqH!h_Zβ@H| ]2e0!#RZ&b+XJ~m{7%0O3D=|ѧu͈ h/[}^d'0?q ??r﯆uCh?2Ŀ` R_}^T* _yiDʏV{ϠFWR+mgbdogr7*-P (Yə8߻ϿZ{[+6&_4~"g0g$7Tڣ #Kt … M6rpԝmT;N/( صZg]"|~R|ȴlVZ<͕W%3"\nN\8VO#WΫd!*%^7OϜ P=QE+0&!UoyW>W+ _1UUNjcO߆t͞uD/lOHga Tj+ wB]4iwbp^ #̿ՀMg}4p/6ũ?&޿g1q0 `?^p--`믕_gH mLp1r-?V2y'ӉOvI g&UCUU(g1i1(-f:Ӕ#p->xo>߷l1szmAoy@tV^HQ/-}lfA.=)r7!7ǖ2\^nY4\mČ)ĢT:pdar8cyYRy([ݔO/ko_o0.~@]yxE*e(66c#r}sLfg]>teof*3iG45R͝9iJ_-&hju-x`DvL:ͭu1rВi da2P Z٧jYFEVZҴq T5喉`y0 hxC&@)/dM <![, b i,X8+(Oggko-&.pU5t[T&;d!1 OU.0^ldKH^ujg_/~WN*a8Ҷ(2X39gH+J]n kza|%߬@fd@f19j-l/39E}m"Q5->)cγ2Qfe./:͊jȒ4\{'\OD VFP+lFY| Fš*G햹q &V ySrksߗޯ?{9 4\RJ #:驞ٙe(uQt3?ؑٴHD|Bs'g~,=#-S!h ԆThF! E# j1e-ՈlFO-LW Ks+~R">^ fx.| . !iF_K.i'V(mmlxfizٞ׈X;gxML/|mfTj Ƶ)h&Sa# 48PEx+  ezNC!/PXg<$yMx%M:Hh"Y,X"aSP8s/{ujn!}rñ:H3,^,[5L6MϊRgur`#K$Ma],?*ޑmHsx@;|ciְOFac$b]X0+Ĥn6M[b#u(dc\SI4s>71O'7Ia<r6 6*\ex4>a _R<ԿaT@# g>Ցtx|s]:;Jà룹6N-N*ykXp]utM0'A{8!Vȉ+FoBMffkB݌5ҵ. xuF:,QC(䙍UUmVAS-hYxIת8:?磦ݪюO`>e+n!RsPwS.&=S#,H2`wQaCK5}Km=:dօ4!v+L]22xX #"6{/UV~J?" eЗV{bI8׳5P,2b6۬>ZX'ĩn!^TsZHyvL! ϲ :lxlPX~(PJg-֓-J>@H9U^=_6cuxWxRXW)%O:ah) IAS aqC.cߗirnfOG$#i>46__SNA+8CPS|nmum܉M‚a<;fbma0pAgwy0!|_|.x ş4wdmwrz hѺ5 &/ؤ/۩")DanoՀV߇eXO=g?F#ɑJdr7/cYE>!1) =[j!Hd/ O{+Tj(̮b2.y ]:_/+^]uŜ/8h/W Ƹk}/'+ͤ 7ZZ 9=R{~V ʢ]yxsݑ2 :J*2=#o߅# M 5͆˷'!Y/g3¨L"z LR2"};(^6+?&Kzdщ5T4FF#";g&;Stިj\fTl,=h?|Z^W,&y8jS4>O:nTAr4!VBk);(}C{_]E\1N*c>`"Q/\x8]e!YAr o&cL;S#e{(Q#M#cձ㽄sI9.6dj`rgҰRa,6lLXQJTSKl2%gBj&9k5~`(!4]#>N#(s#hc:Ui@Mσ:{iMaB[ˊ^rܑ!:Jj,gF M' Xs>mJ$1V/ަ/B߽m`P`hX×ˉ K_.R9 5y/QM_H >=k`kUu[^]+XB gt8A_]%^"1͖ZGnqE%#In/DA%!B"BqL^h :\ ?ƻFyQ%R)[L7\v1qf3(;J\ہlkmCbz3X6|RIbN[%~R-t J:Ɖ?~N*sM$3ܸmI nŵӆA6T"6pq fM7$QE˰XJYoCEU_+GIW%8JC53CcR\p[!>s7޼`XK Jj@ ܻYC!; gƜ.k-…&xV/og dMX?2!PQ|>BhH5n<]81U&QJ K^qߏf55~}% u;O j<&A_)A\ߵ z;_ ))(հoz ,s4KynEآk3A5B0AUiů?IDpI]5:.(oSI*pbմf#sI*1YA.\L <^B;j5ٍd;G3X' >R-/{y,b*,012 d-|$ P`_0GI1WLvc FnI=qFB`UX xlMdМ5p*,3ZBH*suhw?B՞e*O>viG?[Vn3 (K:s–۾%ZOWǴv̦āT*zh硜u>61 {)vRqƵKqm ՘yT u-Vw8]}('Zk( Zfn3NEwOua(t6g9fP= L>gϠo`mW;~5w>zC[ h* 8[`Cܾ$A_qwVA5K ԓilMX[(3$vlxt:RbHYnp{-KP_ӫ,kP: -aUx2|#˻ qH- vmyQ`J.}i^ns\I?ǹPX":NY AHZ1?3{n y"`S-ᷔ [_~Һۜ?|37WgvX>ކe-O*yцpYcN;TАdwRQRc@%t)cHq9v'|Xw~"y n/e N\tDhk. 󵨏7 ADs~rBԠ\_==9Ӽd > _U2^nqcD$[,B0˝nVE7X5 Y?lcb?tÜu Sj$_풰YA?ͽ,{lR@%s'(Kg)_XuA;:q2x~+۽o{"Ci:._&c=~xgB }UX/V"U˛h${$.6E˺wSWI֏TW|Qݯ XLKٿU>q/\8ZO @50Ðo(Nʑ9@0n[jϑ8x>Ks ţCVg8z@hۆIJY?p%IY S| lfR]wҲmc͘-+ԊXrwȅ|;chf=!'#/ǖt"0ddѴAJGN 䮳=.LdIJsCthZ"]3̜X LU=ZUWg\9 f5/"땤d D%z+0=02Y2!p$nz,OR?p5;*Aj^Ƚvi~)Z >j5HGLrVyfXUywdtvd9ŌZfPUu֗.IxnkE܂\ }(SnmSaC(ԾK?lS]uee/kü% 1OB&(~쿉&_7<@ } ܙФvHOz-G.¿em|kZ ljT9fQMapR6q+RȆv((ªڒ.zJŃm=9Zen!v@£W4S4].t+Eu Zn& Tl )(_iiO@t7`N2'R"n 02#ylG|kx; 3v5LQM`\,3@9Ph~h" aQX~Ԝ5@8s xdAMHq_K,d0Ⱦĸj)i#LmA?GyOg2L<<Ӭ6S-0D?tx& Tg A,w4tW;v#*{[1BC;naK AKhQ-+v#Pb㺙 ?ߘo>\%,WG9Wyb$ũxB2;s~k{൉ ;8刀;=w.Q ȡ9uhO\_ģHHUuжFKSp\tK7u> 0@ f6dMYR`ܤ)+.X Rp3lFՇlW%[P؍p+!"*z<02)pCr@`m,iG;w-5C+`=rPL8gR,ٕn~ibR5Euo|kS  * C/^ (+oʕlȜӘ1gԿ{zO y![=#VSQ' ރkOCFA7eKeH#."G{|3+,~NᴙX:}8;" :Ous^?b.&I?GFlj=ObAo/ ΅$ y[s9$7J0,`bMQMt~M!g|7hh(HId{^c<_d.wgiTxtCx^ E!%;Y4Tno̠8oYtAʾPfŔ }oCkp].H V{걙5+C8s <} `A{|k)d+;m*]sD )N"p -RFFCi`SjK󅎰RF`n@~* D*3ҕ=Bfde;IP2,w5 1HqdYrwv23MMcxF c9/݊ H1L@X=^A-SvDd*L,]q"d=%OJ90a.71@פ5 [yc84jRُeВcU%~Oס+MBE#!0"7"'Xv~fuX/SE˜}LIx)yLŖ`0 1;ail㥅dy9IS>.5BySS' Gs=ry=|Q1)7nw~# <_{!jo3U*R)4bMv : ĪK-,B56b9 wX>;om4V>@|q6`M;2Q=mJ[ɗQsD &\,rNim Ui4pjU_h]*5C@'K[:fQ&ZI@- gF-Vmc% U9Ckd֯}Ҷ4Y&CmtCH^+6AX.X;mlMڊo*%7ύ-QFSЪM5vwYSi}*@b$i\yE^!> Ew@v.@u\<٢_ƿpS<$pn_pџ3LHd=v{(_~{&Ѧdgl^/%/G >XbSkQNe毱d]j ;j Ą;:)8wjyN?vrQ!-|1oR5a$o@JH \f.ze i& ^2Ӂ2 yJס Yk^xtfv藭{O:R4zߪ:pK1c(4ԁ  Ddh "t[J(5-^t*=c:eôWC,`ԣ4*>_dP!֘,aϕQigXeM_Z}xj'ojYOi0;W(vv}pVsP.КZ:οG 0wcv؂؃w_-߄``Z%_"c;ڗU!֛+tXcn{XfDN%e+JmvS~0Ck[|_\xC *_Xd>]= IxIl q {sf5ZtHE  "U b:f2bcN|kgP9[q#B+oN7zm(j'J^B]}NN3!u93@AKH`0*9,0BZ U\Op8X{^a@.No= 7.yf&Œ9q,܁ɇY= kNC8K+_psdz-͒xR2ƸcO56q;䨏-7aqP)1¾GXBptUB1='AXC|buˑu śM'zneQ)Bkkʁ` RJ"VۉۖSҘ򣢒55! ?2Mj&{r>$1ib}08# 9/V{pGh^v=9kP ΩKsD<ݸ8Tc"CxqY$Nv||M\` H1g& 7ɤlo%沵zWkz}mhȝbj.|Кx9yY>;SԅBa«J^_?xϿ#I>(MF9nיL$,mnW2YD˓\-FP(l4[= bnBAEVojSXBZqFR~z$Q\ghq͘ ^Vw "]ݼB}֬ߖ;9# Rx{!+=t9mQbeYQii5Q\tC#Y4]ϱf57UGMiLN; 0Dc%bRݮu^il]&4{<_+x!?E@\ug6`f_RL^ǵn 鮅L2Wy`$*r%m yR{a.KGg+4A`zq.me"u^JC@<7 T֤sܘ"F"1jF]>׮s}WgR}K6i}*)h1u#!/5QeDYydc 7vldp} c|uGSgRnHpe+N"?E{AGfjSGL6E tKuD,nw&&fD1ɧUlux|$k8X4>sߗLGMg} }&u3̇9)CU2 [N\ꐠ bjH>O5:$!md\L-ê#qUF*P  a_#rϋ}a0r#ӷ95;Ig7 o!V;ѴRT#ؿ@11B%QtiUҾSwIHꊹ9&&O+y1#wgFd'xK/j%^0Xz- 6g'qMs|ֺͩW:(MЈUi!޶oV]a1.ˈ;$mNpX. 񲇱WJˋ4q˙i7GrO:Mz#5"5q4@!,H3(4Q\ls,]ی. 4BaW<Y r湙@3ChY h8~n=x6&8A1eHHRQbƐl>c(9;9$Es@P(S)cSF!Ǔ߃|E=ȣCs ImgGb,J9YNGR o\u ;vڴEXBԭ괲 81M n 8'S^MBmF VL+qp$8(RN%7D1{1zY]2 cW9H#u톿I;7 T~ce0TM?FAHMlc!i;RT5o ec?m]G97t*M$jT^*R)@,!Hͱoj\U.{g|Ii,,|輹L b4 .AVO/I?}e2E+WBТ&T' Q5L Q*r/*ш:~2%AIdC 3ceX0)wL+-'L#G50?WROWDAا'>Y0+9>MhoƼFS1ڥ:m0]זA1H =+Pj1\OU9*`(}8 φM`U@ {L[)Sn^MI \o/ X'"_S|m3(M]Wg_&ѳ}B!B}` w.8n`}tFRf[ $膂:U;@i(`,s/l G;eW^`aUeٱoR*5g?Qۘ~E CSDPKbJ7poɆ)[,Wi7fD'Lhm\ҩ0Ղ-IvQɮP[Y Q:Iir&eQ_vl):C>ݰxL~Mi69**WٴIaC%԰Hya:i1*9Y6Drcz3i"IR@|2q~li:SUN "M;R1|Rݔ+ :;b8:9|_AC#7HKе*B8*qOΟv?DWu^3 ;T{V<_^\_pFJgNrz_L&]A@|q{ +$_]νpk#^"R5 l,J(Pv]ny#hjva1QXa1ۍ4R@-ykZ_ >91?r}~^$aXAu7ܥ:,l" tePwD IK4Rif=xjJb-y@h^Fٱ;uΒ"`0~R!+}亚MI_g dqɡh !;'C ;Y 69F8,/o4Mj`֕1`167v(f@Ș $s$0mZmP @39C%/Ty+tY>A4C }OFHǪ7sSܗV&Y:.up261X%fO n4(V9ɒ_$r.'ܻOפǖ]6ɏ\Ɖf.h `}b8kxw{a Q1+m @}CIB-Ann7 $Ϊs&".2MaaFeFTRUQOO6٩|/u+4ef@o+ޡDc.K.Rk0>[lMjzztlUA$]+Sd<m~DՌNPkqCjs"ﮏ Mq\fٿ`$-ALT~Y?\c7ƶ X[nan 5lK wᱺO‡Jf5Փ|iy?c"1fVOOJUb0o{7UI`)s5:NArL͂pMS Ey 8ر(Fr эZcJH48 ̷ef<'\_)hŌ@ 3bZ)w4NVZyVK7E4W$w?2[@Z;8 O 0/;>~rM +i{:Ȇ}CCx6e|8NQt0KgL1Z52roԽWlAhh :YϞXB5l|z @ܹTA5LmG]@c&>"AvS|2VJNmjy&ڟJm$ta\!ę<&DffkQ%q: Eq/w:ܦP2  Ove&#sRi*CjVIvyJp"8 Zǀ f tYܙcRs~')< {}|Hg,4z+P'g\ظj^TcB; Ny0T[gIPNR[y!2L&@&^D?dTqs0 $HNM/, /ņ-붠Nq6D2[+T0Tl}6w_a]5df͔ݏpDVp4=_ f2}D6J`i݄bSɬCřsgPsk./&(b^ߢJچ֖/7jAHk %*/!-eg;%q`PC۰S8/Sݛ~Ro۟"Y_%*AJbI!ũS$+ bmTzWhj\zag1N?=l.%YuZsݽ'Yx03(/BJ^C> ZJ1R3}McÎ6きB_}'%y#t*kz0) wAH̆޼o$[\UuK~1[%ׂN 5y75z"yqa[^Or!лR %g$8J3F )fV9>'W?"澮(\[ [7\%u~RJ^ӷ:V#-zT 7=Bp#7Nfa39sLu6.MolM~7}@WȂ(Ot~ $:7)Mw6KZ}szS_3E<}5UЎF$H6x*B0Be50zJ8 aKd J1Y{},fWРmb:=}{%7:,TIQ]vʝиp 87QpYӤ]We ^2X}qH`lN$"gŴ꤄?UN1>ƎDxT0~hWs';k68v2íM-) zA0s@-&Cdi JGuޚ~{8Ja>CJi/. wei23Q_B)/1x,K4uSf4elH5e탊Žcn=6$ >)om_qS3o!h| Rz_Kp{Mz}LUn'UvF&' "}\9_aw){ wv; R"]W rQ`s &D9@/ד\|e莌V9m*Eۺm.+~jd}B ڕEGdN8圀cn\hldrǁ hRr8Zy, Hؤ;JGj$-$i҄=+wp_FC1]>ԨUSmf2v~3Saަ D⇫Θɝ;_ *8>"\']eouiN_5aV`lVUŴCx輮(d;c}s$bڼ.>Q9auULO<%eUع"~|aO#dU&>Vp[5͇\-/QQx=4@rN[!]_wH dXʍ!@VUSw}g'LZqѓ2ﺔ9H6~8t5(V"J}򢙝p00WIWcWRoÔz:r @l 8A'x\S\2в~/O:\|#kEvCB/UF}ܶ |I,j0{(N*98JoYl6]t aAL̶ccD,\Q`qH@NWoog$їip׽[mbl = `x(3T)b]u4mr/أ]896rGXk1P6N]l.GG!)D5="A GygW/Dúç_3/ΑàY!%KX:Vęh0܌l&.J֘55p՘]#߼1nG*~kec^" `?埏J l=#YWz/ zEYyDX0Q =yAK@Ԡ;-4Z_+I !kepֆrJV{Iq>%[>kb2n_'LU| whI|- [ϫayȥpdQڤqyO{pa$% y%` [*Y!w? eưmʰ i@2NM~m6lvy-DeZɌ|܏&I12|n1bwBWpH$d!06 : i؜&3U(89uZ}pIǴS_ڞ sq`Τ./}VרhGڙDlT]م2~G2I_\<ph0j:V$/o/aJ Z9 2B_pTؼ`XN4/=ni9,W[Ъyk4&wS9$NOl"Gc9hdt/gv@VWkN{ؓ]y.:+n&X!EҔtRznkUP@:=l@J?«K+gD:E')2 >0KJ_A!Yt1qSf)Xz%Bm[Y D^P 2.jF%/_1.a((WB% Z\ٻO5%*p=fEYY$тhdyQ}@X4G!ބ֐9Sћ)TZ8:%0"82+_Eh45-Ij̵f@ x- T`}G޾爕ʌi3+;˭\&V/k"m7[Rw,W1I挲"MR(DA8"~1r!$Q~;@\i׎]4EHrEs5S&Dճ;SA4eY>m*.t66G|nc(&سzFAwysR]^>EPt~ݎL7mܒM}J13S}N)=!0/%*6L]p),Fz<5 1j OK'p HYdyi֋ bua`i|]ж,&cw\pyrAU-#O"Q+$'qa3OTn[]1 PvO:< Y̰f4k ozSE<Ȓkʴ6T q&\U8Ԑ*7Opԝغ`p ,FזQ# JXT>(C:鹨A6tmpR0 :-jf4<֪ EKj/rF/W)(0\W1yU",[3&<2ŘV49u|lz&_VKAu7=2{Vf3Ut=Dn c+٭K5BzGk=AKlcPX?pʓ .u{=͵1/F5T*FV+$vN yJ!{tW.)+\j}Pg.mf 4X0 >-6T{rUaWƃ@8ҽ2r` ~@W*/ϵ 3MY8(ؠ#-%,!CRv9ޓ"l6 auR "Rrt+|;"*o,5~=?TJaUcޅ[mMi$Ƅ Q:&E ??|9*R #[ wk\3 ]! R23W@ W_quLVX }(CTĠhޑ2"mstY9kq%a$JL03/FXNćI{>OH,poi?UNdCa>x zogHJA5f>@}jlljt;|V&^D0Q]pZV>¼R'  |!^V{/CcY?_2cp忚Ҥ/+XtϞ1{5~TlIbJ tZ+ו,A 7絞Apd.IiجNB*K2Bqmh< U{@#\<#0MG]I=BIGXE߅]&|j<]h.XH*$ %{ߨo> dE2I&̈́xvN\ AoYct9R`o^h!YMk΀8#d˻MgٶrМ;5( %( U2mmTuRMJȺUhi:p".9":R #3ޝ~]xayd*t6OjϝQk8N9DlJ`yP >G+c,hZ*@ܽ?,y!+2j6%pxrt`ƍYD?>+K! IYD.h7B`ݜ^s h$X\7p5_, Rz/7pkBs-FMd8G!f*>|yw2" Vʶ k(hႝE?&y$h6^~,QދJ-Yy~ #фb\d*myz/@VQ*́$m*GGV>۠AbƾdNq!92-5:YkԷ 5C-+WK|k[܃!96QNcsOuB\IwުpP: EqWŒY5 GU7!X6EZ̚~L> _V{ ŇF;{l@ѝ5 ЉFP)ruxKZϺ MRli?YDB=L Q7%wJPaXm;tœ`i'liB|6#Y2e| YVB#p-yiw E*'>N'~YjQ":Ҧ$8zzu4.)>MHb˧(B\,ӃHw ȍZ~Wy"1jaS#Pw)W`Dz!"ҟ{)oN" ~?TuCoO)9\n} G335CT}xqeM0PAU9u^tܘB7v{ @,FV"kʗ#\-,PuYcU>ܧJ'"wU9[ƴQ^5QZ45 ѯDv_5K'Zc]1ELk#zk9#q: ň!DO!~ω,|] u}& i l85 F T~tPBQn,^sXyoѦ-(mvuktոPXgC`A/ԪA!M~YԞwC3nk|d/DfPsEAa#WK-H_yOmvg{`U d nW0|DGu GoqRB/==TtĿ at16D@>|TpWa{ )f ݐ?(^ J(dc 0k{{M]T0T\iB::S/`]WU@>ڸ:'CL򿤴7P'50偉$"[whi0-85'(s,j-GrQP:f8$}H2c(&D{A,&Lë<˙@F`jdf.cL~t~ % ʵNr'BfJ}dIh[췝lmHDxq5;6L-C<ֿ{0iiVv=ǺXN"v+Hx3 gl`8ezx5NpᰜW-.NPXcm[ xBm"gYz5cGпQO܈ZyǠ\G{#VÅx i|RpIpu33mk3QvpiTxبȿ OHnbOUQ e~ ~61=kg:k2W!] v,Ťq4C]Veڷ9A{tN%R z\^|y)+*h5,P7S^Gx7Nl00Sxhb-kȞ83qǬ%['OdG" .@qM )LG֣?ۃYEU4{XZ55CY4>Z!?i O$E_,i3+fwFNYZ}"̶#~]oc-p&OD2DIޡ[fiN %\Aa҇Y9ab2﯐ ~5< ͇Xo>`u[ 9W'x 3s+CD:C/ht!N8]<P6+PNXh=,5e mz[6) 7[2;C!x]M9Zр[.i$K%a`5 6pr ,]!DPtEӺ$;=* >Z mH?C\i3a?Zc8eN-Bk;GUc`nZ F̈́_75&߶3UmOQ_PaJzPђ7 #4?w :Lk٩[M>4pdP}զ+3 ;)NTCUK~7JXc șDp~Q5, -j-;i<., ii2_`j#?WvLjt b*`j9,,Q4ceS.X$RN>fBƅ;^;"?#soO-kϳwOF3f}r=$nk1D:bF ױK<_=o:j&Gz^֡Ⱥ"JK%1Kxcv\4+,[pf{[^[U5dpkCFO`&B#kO4}}ځ?Ȓ(O\(.c9W$34|Q!c+Q뛶9&úﻈ4zNX3Tݣ[7L߈qEСM@qC[[kF|էc{.;~佖AuQ7HGs ~-w?s" /fx` AOQ뼕 (S4U46H'pͮ|z?9zSUXb-8dF|fEuzZ+,YDRs)ĚPJxp\蠜]^b nm35e SeMƾdjQBfNݫe<I'w@SPVSv+-(y^feտI&mPv sfFGh\]^Uyuaa:mx W4-%U pN@r3:Ym%a?a.YYY܌؉<z)WY<'~&{HniOvz{*A +pEa=WwHZ//Ztr$y㻵s~qJST,ʬ%6M3ï bsgo2@CQoL1k2LBMȬϞmp/4Mhw[(rF&ܶ6DOyȧcA=p= ~t gWE!RV)"]G"緧F,8t7!7뻑ʀ5%Hmo2wcB#m皞QMWL3iՒʻUjp@xUe_7@z4>5s@xNUw=5=frT&lY`zpAu ^֠[Y=?, #Ȼ! 1LkD.P-d=yr@"}]&J!ݩ$l?"|\ .$ g+;jb(vC`fu NA fm*ܮ+Ww]A*KZs_o ЀRh%Rxܮ|a`X#ujbW wTl@v6Dr) *#6*l'Vt+%T$cE5^`Z. -O~CtK;(}qw~p3 "xU \4N$T*8˭ ?FN5h oq(n~EgTƎŕ?4mbi(&v|} 配𜙙Io6O p7zq:DU5b*Ig1*}̰hUzN]|L-f-Zpj7oXasGMIFNm~E9Zi}]ۗyնk&Ǜ49cPtN`o=$?|Xq3"w+8B/gL`rbGZ=r(>{[^@(βP *${$XGwĒMę^ׅF" bVt+}6/9Ai?jdfvTU[֎:Gc\56k_cmQnu#X}X;¸ 8$G2Z=) \VctOvyH~p?S8IR\u4ϨOkCfK}g̡]%{- 񵽡3(r/^ќφt5G "Mu"ްyrH(S#Vyq{ؔk 5`ňbE3m~F?4r0 7 t 3:#.1+el0aԕ3i.aMvݝSgoּ3QqG"|qwD?9YC>4Rs(iF\rt޵l9 ?ݟ+mտO @fo,yVs1sFpI-l@Goxi3׏*V܎#ÇZے˜ ɿ-&81^}*Ebs{0:38A͡R Ɗ_wvuhڿB47-b 6'j~@##7m9ay(G@ɓP܋cJB# n֩͊n'(2bȑ&))A,i!9{ּ_ g'da{^!_H0(f"՚y|")!DG^:j/|ܚ.kmscF[}HQpCsހ R%4Nn^d;( QZޓ).%?Ow$׻AQF(1CN@4L #Dogy;(Jvr\4/1JY3  ;AK]C2SQȠ6,6wG8<ݮJ)wE0ے灥Fbb^ @*5?_"4-|/C=e[]M]m>9!(5b2B-e:ȕ266Ve.B(̑!O+E}~w{~fGaSv@!etߔhB>j$=7:54J5$tyFFmz,lb<?N=jG+-(:l"%@aщ'0;zB48-or ǡw',i؉{ yĩJ2Q^'f\ Fy~aIih:9w1 L"@k*(-5Ѩ ^E䧂!ޭ#F[\eP`ZHvH/U:?&)ӂ,7D`=`kޡ[e"Ę'{icj#hܛ''61/V}Eܐ@x݃><|t)8Am %ȷ8o+ ,NIsi8T>U;0^iszgJg]?MqKd:l|c$ ]^Gee6D4X#CA`b5w#, USoȧO`踄v!3n;c'@2uXF3?7֡Y딝r}᝺Ż´tgnoݵz*PJ,dki\ݝ&׊_`dcG W)? `C.g)9_c:K0 %w8v`qiJSFp\EW(?rR(|WEu;fR=11UP`TGcV 5y4UN6ظ9m䜞UN'<úQ@J<CNہl2QWYcn) d-=y4Nw$TnџvtƄ nԙ2,ΐIr(vxu$DD# ?&0x&6s0pZt% kwt VOA֠KPb2JlI(ot~gwBY^3}4 \zsdܽr道%({>a):y\ ?bh,R2Y9Nj!&`6H.U }dYlnQD|C=(M ]թZ),R @\t ZᏤrv6!o_Eq"ֿFFX,wлPC43>Y/,բg/uT;quF'D3K{kwL H Gmې퍭wBp5RbI@wU2۱pHQktN?g&9& 6\c4UULњd3ǤE|u.>(SbO@0HMdܸ\9<Ȏ՟ tCO$i!$*z("%ET*TKaە"kR!+0Bx>AYnV? H;r^]\QJ!KKG< S~Uw48DKwkW<ɆWVPp̐)wos93sS(? |T'N@,ϊsP r\I٥^&:%ɢ?T}#|мC?=Ie>)F F Nlk9q}!ĐЁ)A z'i3r20+%Z3T4O-ZR֪Ҝ|x:]=pY>3}$H(mxªf5 sB5MtDA}w#h;X Q4+P=hZdqsRŸ{tDiMᤌ(#a4n<̓~ξ r~F{#w-&C&ap y@ 1K<ȌZ` drXtl/]p?b幺-yUԳNᆀ-xFhpqISᓷ8(vZ G!yn6+NY&J#S FH('E\VRCyJ1X\j8*b6jOlH8>$bm#6m)$28q9֚4rr3]36%xɆ`| q<}yG֯vTי> J%^UbxM/Paojh.>5qEf adA+]5~:J%5DFDsK+".Ze`_rj*n`^ʁ qwb}呞]]j4c8݀:eѮW7;՗]-4E-ҝ6Wb O#m|ST71tK[M-?M;F[b^_~J^=\!Po4O%mrJ{/lzWȝsV.pZWJOp$aVow[Zr7o@@ڟ,/WûeA0Jq"EY;P9'жACg,ppta;$BK-K}[v_9{e(fBېqø4;9+JI>J?h1zBɥI*"+!9!Hy޺ *P=@F3:L^~lqJذ2̡XlBVtBvNHmdkZPݠG14bH~b2g8)16>#P2,/tP:@Lr\{Wv_-`irոێFiOᇖX#Z&4*\|g2ʻ(TF4 1& Mo_EH_Lt+&$ߒp>}JѰh/ri8Bb fkڕ \ YVuMsarN*\9x ]V"e(;7#eu&"] ƛID3@TD%QL8!:oy%M-jc>}l)zI 898mЄѺH4c֎k; #xDᬭߓEf reT ~y%R^kLBHkCt)#OHЅkFC3QN#mn1ypXcl{KCX^ĺlw 9Ke dl-CXYKwM|YjQWrӧ%~ĕQR02)gK,d gKJ |a=]LxBg*ϕÎ JfxV*fLoz֮A:Vݧ%cywyjk<,k4Ihtې!rM3)r(q%[;%J+<˜* }&BueB Vq+r^6`ܪ6t>@Y)Q S6+Ls䍵i\1w}*\>Dfx:eoM`qii y]k47Dg{s\@G!Oʲu "g^:cmnn7 PT h˞`O l\jGCHhً"akZ,"$o}i?/$ 邬S-(a:arf=0l{SЏX jY\l\ ~"EbL%I\IJgr))kEEe,3R*}O]aA$YY7q\q]_ @lvwp|_` "N2!wT q0tO3SgrjtktA5m\^c<>){nϲqvG59xsn=AjhCܰ;W @0֧d`vj.GݶgudL yv4xNWJ=d~n$9@%/ĤQӣiP3)NVvȭ.j}: &5"!*$ 3P0{~~^YcT+:S9b_2mDͤ'?P/٦FӨS}8vtDcNtj!3x\Hz! WcEkHWuIݕ2UT {N@ɏ=|/ e0$ĸ4{,aiq.y*҂]:-N 1HlBeѭUU+$ı0[ >CN0ǣފzqU_ $y~"si,Tp~~ׂQkj#" ݆tWW/})\a̧b.6 eYA+iwerr6D![#o `7TIq^}fcǨjMT2;mweÿ@ pWJ!v R\Ob{ P2P.ZxXfb`_g؏*:$sYR.=`z҆&H]c@\U$ɂ۔[LI[n𶺩|GkWST>LBG_Xp˺~n)C(ΒA)" APE9pB{5SCG~H]JJ&Z 9XW}`9yF:{''D&Cތt1N5s\PڒQbHX {ڒO@DNWp׾}}a)}C"xEO&0Z+d"<[#i&0_cli 4c~ZnuK+4; P0cM,O24{p ;dmyZ]*cW *W}YTZBq1 ֩ X`u*Y/ޜ<qcЎ_Tj* JR z*>L?g{HuB%y]FT2EĨЂg#a l8KkQ2([ ^g^F] K1Fc H:m[]`o;''mOL`mtL;I3P p'xAowidϬ?S)1}RshJQlڹ(e yۀj UVU ˼r|ev@f Nj#)S.>꟬ 'OV [$Gyi '.h=3 4Ӣ=e=Iml СMOn6my)Dy;rW0ߛ˳?[Q+_4:?|'ݛ" r[RI!AAǐ|\vԯv_I&tu iDM4+#`YkQYe̚;qvtb3 MjD黸 4,3M$Ϝ>tZ:: AN+̄h5 lj$1]N1%g\bߎ>ο+;1F0T, ]IJc3uta}ʓ5r39 נ7IMu\u ˖AS+d1o5з|/Pj%#aI+R8DU N9zF_dtF-!g,!q./2Ȅ߮-M FΘ."4L_)L|n.doTۜ X Q҇d:";Ε Ac7&H4 -cߓb3\So:#tቆ]Ejj'Фۢٶ"P)&^6Ӽ!$;=۫ lH E"W5Qta12wϸ:\/ d87z% @yWR2N;^1Lr;Z>3ߦݓ%ƈ(BJtyڎlмZj^J v;d_ӱNm_yVX^:iW9#P`ww_o&v-yah!x`.$ݗtǿ%GS;n/lt6Z逪WOO:/ՁEJhGSh*07Ax%m_<'&X=jG`s7%#דS $ Lg8|N LhSp0\5x #g=(9]lE8I AB}Gj::O37<@ԋZ4|jT2kekSW'ąXgYWhdEDR?BGBacp#z,nq;c|7cXqҚ~{pϞ`Sx:"16{AlCű>R-)"%;T:<> i W1<%X*sPQ/:q CU8+Z42 :: jYny6+s^GbH?^Y Ŀ[LW_uV(TdMdr!(rIq#Uwo|jǺS<gImZTF>ػ:˼1)9 DLKd*Ҳ{Lgj}WĘO׍RciĮ.])Fhh ~솂Ia45+Jp5g8t=z!2HUh5|.J  b5R6LͲ%s"!>]lm|:׆ZQ\KuzH%(\RW8Py[*Yz>j1kcL6^ oCb]u`JOxE N_S><0fkq^^TK8Uʲ!v$:J;fC:'z`%zz?#NA ,e  j3 oS T:m])]> kFߐ,輤ߘM TuSe^myUl u|(&6@'u9})ܛ ă{M(Tē^b&8,g"3R +t &)5Qٯ\_`qĐ@Yi|Û<-kMxM~v8$>OKeY7z+ꇖe~H݋s(QRk[B wkq w[ux!\xOB{N)d}vJ뵑G721)b4 ?`l|3erơUxЯ<.1BKu@Ck r 8O̥K'yS4s Dl}G E17a0#j\f^8$^Xv pV@XQJu҂@y+?ys]n.s.#߀"p֯yE86E5CEMuwil=iZ^% }'!jZ.Jv,VTP )]wC)EL4~&Npݕ&I{Z-+~* ȗ}FzW _Wa*V}ԅٓXɥҖnWvK_u5!˙MWSIЃZf0{ )3MnIY.퀂K:FCFk6E"D^?/X} .| `"&F`!/<ߓ|ƗɼϷ'u_ Aso Ap ر15)}7*ؐF_'Ż%f +EQWp]^oDRnkoDi|-p F6$ z|lN$rѲ 8de3]4]n|g25nN XN5uY"z}bMfg9}Jv]w$۶ȏdVYw6, =8a3su$2JWuĒ]2u 54xUcTم(2+K7Yƴ⟞Ger}0M&)Q枹Tܟh]8TI–1a@%:JfHߙOA9t쿫Mu5LJnPf# ՚I Ce{(,k@qGuaxQc>Mc9Y0@#US@l Vawb\_sB@454/3I:Gti͌ ph6bYEœ?TZJtk[lAY!VnͳMT-JEfu$LC z~`!{cV[vE.𕎲HZ`xuWLSCqǓ;+mG)9FYnǪLQZsqcXI[K:-l8w)|t<<Ic9OҐ}A\8Ѷ*Y4z 8~{B}WL Nh H!Sot➁uoD)x|owyud1!լ~5Ê]q,<źED)$pe(A\0Ѡ|5:`0 f$kW=^*?Z*-.ȇpTwL J'f"%MR}qװiL/3 dW8%nZdDiLI(aZX9b fŲEYp]plVtZH ?cy L0 _UFufdOezZb7ʒtN%8(d2ujobuy3z@ kW7[P%rH),* '4[+CoMmF@/Q YjGUAmM0)cPM/N&P;6 {tU*dmM@T{8`xKi̊a/T=J; 3Ρ*>?;Rx9CRSAGf=|=0TppN+.>2s{gw6yS5T6zx^*'~p`uyl k 6~f7b*u{Ry?y=hBuK4nq86 RS;E p(_9|.Dp-!{g`МvZ&c1fv4VNSWXdԻZs"'`s19W 'ĥ]nA/Rlpe5֓r|m٨Y@QW- 3*ξ m.º2Z2l\ߙHRU-c > C|Ĕ7}OZ6})0M]2}KG|;NDLbM~n;\RX3@s0O6sA%\Pa<vѾC3gDIjsolfZ,/<[ S|K @q`PΥߑB)N$W$D#pbG VRD ¦\يr @D~&< =i~.85̃hVi}ߣ(?lu˃vaAHf=˷MLhq/J=YHōIC9$ L5Gf0G֐I2nԄP&24cVb/W8dʈA903ӵA ܔ52 =16ʭ.;EE+|*7W%>!h6鷙$I M腂}-j6g%HOާrJjkDZMM2aclSJW ǴP]įɴ5MyJ ٯfc MO"_> U* Z<dL,lB\*I?wAB!>xꆫw@_;=]~|-IM|7/Q&QhЋ lSӌ*00Jc`\Ib2e9f/ڿE|,Nб2r3$g$G3fZhԛJ48#kPߐ M0֞I}ۭh1;5poLa$B i;Z7r 48Z-$ )%~8jj;DC F#t8/%{9M:Ɲa'yn5ϭJ-6lݒ)27BEFe9ΟSjs5[d}.2_ (}out(΅qg  y)CBG"wi8%>6[xG NH.z`3! rbbMNg"b*s)zZhr*yJ< %we"uݨڸ$Qb7m>l:CY5J=L'D+,|,Y(w&R9-DڢV9qm4뮏&]NGf<`TCO\׌&"{(bi*=t)S51ro(J{:&SZ#>8B-$t[ՔHColDXli jT=Ӳ~EjMHOe =7lh P?( \|'l@xI_]}HյG̑:jjX'TEqY|Ƕw޿ 6Ȋun4BKwjS=[ds0hDWVqFs}*7' 2nU-}QM8=yԙ88|!B8Wgf)-i7V=5CA?<:̌P3|׫&~QeDIKd)NRA  n( 7Yl_ٚ>&eKOQd>1$kj3@2^,{ud\#JMvi7;xk2dYF`gNg\xH F480A-6BJEIʟ@\\,ZJь,hG#@ʳl^S{ܰ-ذfS|F-DH:՝I oϯGAK%fIu&:bفd⥛I )3r} e#NR9jBa! P~ō4`[8Q_)oavmǿ $pΆ8W?m_nѱYsJk)ATZw.e9 p%Y{=I~|ojF)!\b0"鬙`H3:̅H>YBx&G}Ѥ5bLgۋh8!gҀrt8vOi_W=h70@JblCUG'x$|4'-9[z}p^%SzXdo%"-_,Ŭ$rqMPM~CzCZOܿe ۥS-ˡ6DzWbHYlˣrAٗd*-#tk1IyTPk% M;4=_9o)hb|@Jԋ;6-~3=qͤ?+-.lG @68; E|"ZA&?ϡm>4+'J:oEsA@Zd0xzUu?~fyx:Ogtދaq$2UiπURlA/}q= l zNN^,iQMg 6\w¢ B'߯X u):Ïrc3MM /<(uB[;J^).c>iv^G> H)cawey>~*b geuc;mh7jb. K]F5A|"[[[>K֛U1I<.NT:? 5VVaUij[C=>0%TMk!WQ )(={թ@-\_S^A ;m/k4|CE`oA`y򮧢F6-qL7k6*7G9pp_+mlUR G 9H4R&ZD Gv.?d_<_X|ު_ֻ 0[͉˛ \ߏDł^ #/$#[h(.&k& C}cd$M,9 FlJRJ%j%Ho2o(Y,NQ8v{n*M3xj|hc~Xb/{#, 2# oPlhط< hlh%Y]by*hLT\̢n}ic'z'Gv""Azرc:-tK˸j/gXA2c$x>g[ gHp51KMSlArJqO lԬE]t9n݉?)!l;+XFnog*GUNra5jNv-(Q٠'":_#:S$"I-\ei9;ϭ8 }.Gžrmo;EEɅѮȧo!/O n?o_wXw!qfbLlM?(8!$>4Fo0(ph(T5.B]QENKlrf᱉^aǺXVb3Q@1J~2N|vpE9d/I4ҚKY@68H&X%]uǩ3 1,Rٚ(5vٵD @Tg8R&݁o$8IlWĞWoq8@D+9ZN6ug ij*͡-PѢr/mAmt#!eBvbA H  Ķ1*d-j؎{8ben²f v!]3@?NТ7祰C$g aϠE2PHȇƭw>a$âr׋X [ccڮ0 Qghd!H-6pyD{GZf̌x2jˇS94hyp7 ;ˋqKRc{5`U8EuAŌ6IkoCf \—|@t]*8xrD -zc8X%(e VqxI#ėL-(+n ܒO߯}z"pCWsxɇ ֶrh( #s@LGh"[WQS* 'D0dXk%*`)DI-OrWtk&E]̰=~[_qݮudva*}ޒmcHp7bW #AQ-05 &蛹8F6g^&ȅJ,wĞr޿=>?k-BxsTٙK'ƜV~VshcSFAMr*d5|"v9GRe&+`175K.>L)_O a 4b*r`Mg8WvaM͝"{K/Dw'wt +iÿ998T'`oCp"pyLF8u^ ɉZ+ۉ;:㗓M89(?>gKɌT@wZRھ '5^F߮mkDZ:ɣ4|i}o\MTϭ릦/QϨyWóSy7U<: ^4v(J#]yDqXv* =(s(vr!95ESD-,uFzN4uC9 5hX0?L%~\o- h-.}K3^el`4o/] ݑ@-$(.,љk'ICy9D6(-k1K_N;g. <@}mAuV Q=3l` uXMuu_C]1qߎ\e ٺ[<7W_zR^%ӯW!VW+v,=B9 ȩV Ÿ< 7մb [8)ӁV>,on<]Zv~>`Uk7vL2^=а0sk2H*Jx-J4\Nvۥ}Hס~p:h%;Hy+bomo92SͰa59}% _" 8-H]LajqKWiG!ypÞW[bθuH>mEϵ_wtNmi )('\ћaDOzt LӁH(<)(}5Cڛ]ae".@B 8QH+{P/圴I1h49(W`>W# zK, zv8ȭ nR,4f^Sl0dpL<U/@}&=񵌪]BpN MR. i& 1!1R\C1#59oş\Y/wԑuuHXdhQ)[NΖj"-X+L^p,o ! wRP6@ 3C( GƮK-0m2Ff:WĨ=?z<.qf.!%Pk9 Jˤf)׾B?5޲|2>i378O֑+({RG2A1 A뀘0AJ-si5KJ6~O'}iXfe4^AM9@2!<G}Gm9]N5pz󘔑nSU*V4isJ(O橫YF$=K]h;m)_ij0s@"˙ Ktn<$] fw`[TwN<)() 2K#\oyw;^Eқ$ ̂ȓ-ZB#:i"MA0`@RJ'-:}s{khWݙݜLV,^V35ie٤GpFiqKZ8Gz omnp]NՃF;(/Ym0Lꎫ~ߘp,FĆ>M:,Ӑ?hiGT caW^%)'jsnódH$w/cD2K6˛],VRB?˹~ 85DTBreb矒HDiuYחh{|V()LcAX:W <@9*3Q݈P(/^|^g<ul4x( ȱ \ >gŚ1 ~e6K \dDs{xC !{DFuw\5rw04T__\@jGp~ &z@p1 8M Qz5]TcI #{HQ$W.j ]uLJC9kc H?m;_šРG ̡j^eL"uoƥ\PaKGM RQcEdg7QLm&!VMGcԇ 4?|w*~1JC 2j>]be ,Ll9Ԟ_O6C}uDSiܞTG UO.?:V0_V#|TGCUeaOwer1:\샍t6}k+xo¶^-O$? wŲ5s r9QoB6%ub еt7&IG>Wcgnzz8yIt BƨTϠa(A qk|9>ZjXpn/wM3Wtv)!4abMZ+&:'"o?=F#z)Uh+-SkfF_4n~F{q%% M=,sk թ~F g8+2׾G%DFܞA|ڹvn燦z'aB7:}Y8 9Tu?&=PNCf@[7s_oLfv!!?sլQt7%m]E 'KAwWNt8I溽֬C1eO45Rvgɗ<+*\Q Sf1|AB6)8g]X6jEG)REkH.@#B --Un{O9Uq%"% z'DWK[`b>*O[I ezi<7+aB8[]…*P 7./ K1)*g?M: tG aa}Y8aN^oJJ#L|.*9@b *?(cwp\C^wh~Gt n)Iև"csq `t\Y%S-!@VݥkFM Us NciV>ܒ'NTt-jQW~;kY4D,[3T(Y~JjRV' 3THDoT܌,[y߭=#*^<@5n =aR|f2rz8pdO8z kJQ2w0"IPTt\tKp='zCp bА^Zkfm{Ƴpo5ڕ_ı'3ѪŅpXvX%9j̺zOy"~'G%| ݉FzSBVmS 16OʖѠ78Ї~nb<:3dNG̣?Dv^74V4J^2sߥIH$ a2 zfFߗˣAqrv*G13څuåe8r2Ja>&ʣmxMᕫY1-ؓh74„o x$AA^ۮhliΆ$\äb"_cږɶuh8]m/4qbêTa2F*( ObkDk 1CIR|FfAYVD:V?%z1Je5?΍ ;Mcg*bCV.zEyva˙qOH9e9]2Vjg hzNn9 6Bg /a5* aeZ)Պν,H DLBZT1t9ҭH'ge#rًQ)9Art DB+k9˓'KY 9 ?fTq 3]g`/2DZ4Ȉ ֧e|5wuPcV50*OG"6Svf]izkBNixGhBN= 9BIӳ9yϭD/vpXB? 0W~LzKp=%h 7T ՊP29^$ +0uUsw?جfCYFˏ )0SܗaQ;_USg6\&4:pi.: b%L$zÒXQnp@d)f&8|/ʑ[h[57D<6(RiPk p[xCb8ך P7_ʪ!#kLEp7;rڅ#-#W ڮ״5c_\*'OR) 1ip g?Ek|)]1Z8ajBK GbdNԗ GmƓc h>`r@?wfreK>\ES:k_?Z ^SrB`o c0ٵ$y D^a0SV%bԗϳ[L̅C@L# n2Jy0["2+ɕ=pЯ&Z!sUWԤn<LPzװsDL k: NjvD7_~'lm^I $GhM60!Y_(`Z$[~ RuX5gVH]c<|8}'an*=A#uER#?<7G}`6Ab3~ػL C"h`8M= | AٺbvVZdRd(7'Ձ7Ɓ ?SF"vE[a~;Ζ04F%BOћ₱' B5CB Y{*)bcqDF/ׂjF@R+Dfz?`Wcdb5s.T:5wgK+ak4=6{Yq=^N0| 72# 0<;isOzL|2?Le̦40?)d'ǿ=FL 5).Z:m:v  )Ľ;p bqGkXRŸ Xmw2=W(WSlJ`h$!%zRu',J&8946%X:`H@ne _=KXڻ|}+RKo]26y8W<^z+bnl2 ˰  n1L-AjE$'bma2|;(bu"o}s7@5k3u<]>ǡ0|ۉs,Џg1qs39T4Cwk'6^~1m= ȿVF݃a215V[Z$z]+xdY?Jl7l[K7?%|[:6G`e=f~⿞x_uO`0o]cdcBQ12FQ2mgvr<'.: hذٺr5I~r5gEL[Oʢ3sg= Qf0#7}ߩ3XOPn ^wY>TC[Q @ 5dQd%}-(8 j3GWՋu+pĬ}O(ڄ iLVyl NKvwł)g^5Zg5&jy](=ĐR;|א,}0yT?U) ;i4QuE9+_'зUZSۧɚZjY\~2.t֬ k-<^yInyfE4rsj5N&Ha*M{>bΞlX#*m<0a7o"3c[xyn.ZEK.t2xpIQ% yGw!zcSV1*aN,44*6H -3ŒD<3PbZgZsfAV =~d13f3:pYMWk?Q*Ptrzk 1ħ&46Aӥtl/9e0{~M1vϻ wd cF$n7 Cɉ-XlLO s7t UimBQ?n00S>J'U-Dv 7fr s5..s2j 2U_J 7;M.fL/jmWGY6B.3>oeMjvѱo\X6z -n9=. D%Kz3J:ɴy WDʟ7Vp=ojً9Ș JII9R~1})RX+ Z}Zl*w|}i9lP !{$ X>1s>g O?s0bÅ<1tcdŤFX,9$0}!vę S.yr4x +q:Jc>7(h;T $ıy!bIϼDr>^rF-k/{)VL"'JSR s ְ@e1ge6ĥ61jCUllXK|| 6=sl昋 ӳ EdF[(X/۱pPhg@Y2QbyMH ZDD2ԯ3*-?gFmU!I% J˳Kֈ'Hr(7ZSXMij5^HGjlBz\=jںrPaBl(W?1INGhJCM̺2, YŴ:k\R]B 3W3@;Gk[(6>OΞd9컵B:. ai`Ft^ cG{33f"]L:AbFヨe*->/ƸϝXӇ*!ûju῔'h)/9+f0bl p ^{1O0ٛnxfw[q 8S5v$2O ƥCeG,a_Y\a7PϽp ]sc/ l%_DzR;^ r|d|XH8N7&-޿Im=bTaF.}^b31/73yPr 21T;MwzIܺc豛Ώ2J(rHnu26t)|xxg|V@UGGj_*\&3p9#~ZBI֯uMprx["UU4*aRǑ_xx#Nv%ʤHbc}igNCa=O8 p//}V.).lJ.hWeOאap׉Q}/f`@fnEX4W !69{)Z뽸;8l3Eg!“ cVLﳘ=_IA`# 42  e>_iGapۋtXdTzvXhqPai?Cj7ZHőxqDqX ͟U-i*^# fD^+<'0WϠ14,,YyV`]B/`S1P?nljs'.=cxΉ‘Ǚ+z@8aj; v~?ܶDF砒To;J]jr|q <^72J%cmoHѵkYlߟ5 1^V>_.$W([Ndx4"gO3˧Gv1?IB)gsC5iݏcX ?ѭf>)vTCH u39+EiCҺpUB==&jPwӟKYQ{cv[Y ~YcgW0rg C0\dۆTl814zZ]jgHH;rs:UYFIZ_GogY@̄:Du74;mxѧ\w b# ?pg 2mC_e>9p8g( R'xQgԴS e&kBmYuc# eX+ٵC2ҕc`x ߙ`jf ob HezKwzPD}U-=Ϊ$ 8,yq' iX *:Cy* D#~33t t|-H_mՌ,ECΔhe<3X e`bsI@}@o(!QZPh>?1 'cwiǠ`S]t|Ar1FoԄ9|]v+TAJ̽aYk6T.ƭaDvuV-7nA a[1a8vqɿe0Q׆9VP&Z;*SEx}^d&`}Fd `L$: k9^x7pWw[eꠥ.ASu\-I xfkp@UXh*G6@;q,AYn`!3<X v@|Zb[=NJx&xx] 0s+/"φuħ"g'+JiB16l!3ʳ:7\L!uPuxsp\7bbu Ѿ?|4N3Jړ1fI\x|uJDŽ"|=꼳/=O.>MKQR0OU2P,vsq՞]rl1S$}EX[:Sd]ϱxL˘CO޳wSeP}Fϼ5Ofi} $xcHc/1˚sE0ˠ, dz'Q׵)c, [6opfߕG'-xl--I@h᫻M|rф;= W9DCU[3L0~oe뉥xD2.?24o!E^SVTdz$|Q4uvPm yp:53i۲NeUDYAfAF953 (/'V¶Svb1xV|LN?x;z^80(Ît{+!0Un-?~kZI٥I98r{lyX ˏ1t~3ۋ>V 5 n6W`)w&\#MFe m I, s-"if, &ВQZ=o0A5lXэ+ܠ %2.. 1&Z"9I8ꦯ.>0f@`+t mwN!ڋI휝97r-WJy78?ef0rN[#k 쉰ċ_&)m U6T^@K\]ƻԔcV٘qd1A`o+,]!ũ!jz%S6l(IȆ^\13sSko*yKqpe~$_@m7|'Bu"[04r>$PT`7z#dC*+*ӫ I~LSG"0X(7[q'mZl⋎)eh?G<>c-;p6umsπ YK0D8h׳Bnb;ˎuܴlYvWڦ/1PEb H[xa2r2V5CN%mED:UMטi.BWr '̶)Rn3&ҽ;֙{e@R!{6-P#"τ]r%(|E*AäTd赛D6sC)m֧Fj"0/?' tD /poObZ!'V^ n&q3sljˮBJ} X; Y/,;M16y0Y[r0: {`4C5)!COHt]Tpi!Qܢ1il4_'pO-qwH?k7bmd gޘkuO uG@U6 -:-Pz1'|s`KB ;AIވ-f76z'VŚ`amd[ڑWy Udb2-p$ :s=] _0xjwt787D0z]Β9r~^Bb~>F఑G'yPѤ1"Hq d?#ψc "cMED{HNtS7XG|8,qi\uEbBߚ>ňJ !T눺9okkcêFR}]ޔ&?n>HLΥEd]Gri^xKl[@űJu00GFrE6UCM92@o] {̡^-uEƛRl [T ؘym5墛P`K,m*cl3MJj{<[y?"x oq/wǻ H|,H!p(ɛ]m_3O"釤e^⭝&:K`_[UnqGe,(i ^ eGȣ.>-NyXwȎ423+Gꠕ>VȰ]eպqݓAC^r` V Œ4pM ^qCB!&I,6IQɽ< ɿs O"z}.<>Քsנ?Wܢ=RjbB]Tl!y 9|EL͞z b<;6n yK%dë'ea$@dpuw=ifކOcj+(`TojR]tZQ斱*y008=X/R9SPtHF ;})/|G̚Zl<$.Ԩt-yK10A_Ο(†\b3n!(2}jLX{3 uLF.5'$/6f w—jWPV`Fqչ+ˆ o25HN{'1ڻR++/i4'|шs c 2L.+u1S?}n Cd|1=f!pbʱ9m@eGY0 Yy׷r~9+͞fkၷҒOy%Q: ^kgotW3L:^eMmBAڔr"uIAM>|U2O#msa@4 I˭B>Em7 j4y1S o>vI^Y ΫL pXrVU'HHK<:ڀPL+RO">0 "%]}~Εݡ0tH\-i[GJ7 <>ɹbsö^Λ3y_Tjw"ȲWQUr> eۚz VǪ"`QHβgj ̴! ϧM9b|~T!Hmpbe[yf5 zHw4pw[4cH61o*dj@X" D>0e]TB !#KEt'ED*6~t(dՌ* r~F)ayEw(>&.9@-ZgM ^<;uaTUr7R1Pk1r8tTێuD6RӌgrlRӬH⛑pl퉊EQd]/O?MV NKXSfx~38++רKu ʶzmH@: $l7zCbc:E5-α5bׁYJSƜEg c4?fЋxIqP5vmV)#~K|zm:o;b3c",f17W_KwP+6J )Fa5y9K.'4`ޭYxЎJQbf4*FY "pqƲC^J]6Lkdp6¤7WfiWhD9љH~򵀖{kߧukcgn8rv xyS<+rHKiIt!ܓ% K&a |ĕ ھҍ `OUyj^]%΢_7A-Q&:UySWYM~EkRϘ^o.gbh!g@yiyw)RkntMc-of';FֆًBR]Yaj-mgxY|YtrIBS=X8|b;Z5h.a˜"z|ՑfΜ<.kLƬh82Y+m;y) c }+.)Nˣie#bZs( IA8IS`0X)P1UIGT.+kQ1^II߽ ȗ/ zK;\?2+=kΰ֣v(N"#Z8xM/w(iYu9,^jXoO}ncH7xѩ$W~o :v|<7*8pzQ w-؋PVi^Q[lldD2?deAk~q%5 {JISϡdM(%9V bFC:#Ƌ.ьy˪T#7{kP6³H[y}ɰd#7XvFa|E=trKzK y>8:;]~!Z[Usv-imFmdIQO M8{ 6=Pɳߔ6hǼW+‰@ 𬢄``SFR 9D)1}`0OSܩ"k^䢍/8md:Ej8c%x|s,<15B/Y>9#SmB-tHoΒ vbg"΋E:LXQ+q^xɭ̿DFwxj䐄n@CL;%|$E^ v,3Q(Gc g+ns4*@-x`B;ʨ~ťІ\]VJwaCVDbQR ദq=} ^赺Av[BH,Cvwݜ<1z#i|a" v ;yR2e]yO1Jso R`֥~6ҁ5)znF_щ.au0vUZ 3L9/G LLCz$W +/}0Уծ$]vm*0ٻ-AJV Dʹ Ԕ`%8lQ8T&r#OtM?12C)$Y|UqƯ6 9ա59wKQvKw4a5G)`X|r7@Vks@ǛOt qU /0ۄd;Ꮢݨ3V9N]σL? 0P+!飇UDaT%S*_84J53K5|~=sH?0\bd" l&YAzȕH ,t?q,{T\CD<(G)yYH{$.1$ˍ1uAzI5%IvȿD*WvhZ;zvWf|e\}>~Z&}zgGWIśq=D GOR')7iE4}Q3X ¯38F%p e7Y%O z)q{|X]t Yw^f`(B\92NSmTgsYkWJyYT &ܗh#%;]ID6ƹ!AWVa8^)}0ӝmCwgI}B+Q_M ϔX8xJPz`_lN1ȕfϑ? v Ґg8 MJQJ4y<.$T8= hubZvE!_;Rt剅IUe:"Ti@ﲫ{+vUե]@`TzE¢=תѣҵ3v17?xc 9=z~,,8eW[`1N}B  mY"Py!,2̏`u Nu0_ qp%QjB+ 75uKl(&D Ǒ’]I5(>ih煣qQoT B<ܬ@VΡ%bc;ү=\y)XCwL'?}>P;69D._rx^;\xP>ZnkP)#u#%o"tlڝZcd, ,~ZD%ue؃W hjdVo<Řm,N!Wc˒̝,cQvBUe; l #҈5&K &j'fࠡ.)M+6Ix /!. z͇s;ng.ZLF{.l&Ϲ`#n1h*M̠7Fp33,呧?^2XRR=.x^>%K-̧R {PGן2S<5UZb xjN&:?v}E}gJ95>,VQO+ p)m̠6a^jDBpEE痷H9[H:c@'BWtM'z}^p43y$OLI^Ls S^fߐ0'6{3 | +sv <:% c8#.슨c=@ iL8]fnN]^O|xnkc )Kz2JZya@=ԲAUpge3Y~l7S]CXEiW{mL(ndӨ<iF_>pr,-a\S38Msvu[}I8~ , R!Y ) X.{U78}etB/MqVWg|4A61]C#j%g#'_ާ#c#wȝ\j얨#)[lPLYFp!aK\M׶D>A_ )+;L4.yNFPQx H5X-oP9ZMfu5M Cq^ƃc>iZ!ilv~t2t!|b$. JIDddCz2`]j@Y͌FcNt҂;ZVK>wF]p4kgkݞ2Aɼʐ%'timu'FILp641\6|[VS{U.$Kpm;'':\&o`Q g-bV?b:h6,)s`r(@_CcNpOgy?SwԪa9/ {m7E)^$JTJXMad?"LnItg<ռEgPz*|nQ6CXUn=|tB'=  shkI=>] yd5OI0afϸ%L(}:U,{DiJ.Y㸲""n|oP 3~pMes]~׫:HlM‰;oJ]RKFܦu[5uT$^R);S, [̅ fsE**畼$~͘:"H qrׅY0WXzN hHZ9$.u bJI^lƩTdoSuM\`vN{ S;UL(Y^qrlơ3fbEq}IN|m%[gFGil 17{j]ڷO uny^QA|phtYbVlK1%h$ȧ<a~<:,2۞>MҘ?RqH>gSo^8x~F-S#$Nx K qpZ( ǹ4*jhjG1r[B[vUm@f!3 ,% 킲I2*.E YH}USVDmDP]e(9]lVYi&ZI_>lT0bFބT*9[z"JdJ4|-5q==7j& ƂŲDx3/O~I0xP%I>7nᰤ%ئ2e>16/ATMiksKЃe%5{z+E,ꇑȭ+I`ћ3G¾vڹ6zN,Wz)oe |$ wBfh-OJ7Eq `cQnqc$&Zsfҕ^Ў 68Jj2jHId%A:qaRug&aӇS3+IP#"@;#qZ&B!jHJC$u,,lV^f|CCVV pr;@3_DmX0Ã=GF\Hi7BtmEA@BHaNh#i!U=_oA(]nEpY8R,;2 @]4`MS/Zy2业>~Nx/`we~ erXtRF'Ƒ;yHX2Z+@ nǫsBx"<lR 2釛X,A!{lxC0lA@邐Z{_ UA$&i# ᩍQCqylc8AQܓBث#~~7O  gwb ѧ>.9͚43 Кm9`j#Qd!%+R 4?g=arSM6W5#9*bƇQR? [J/ 2ѿ;{xWW?_!Lj%}Nꗼ՗B+6FI`U1fu!s@2h:e/Nw.b7{ԟx3K7m£#.8os!0.=/\-9gmk﮳[j+e)Q%{%Pv. fKj?e{ʓd(LX4>L 'c3֩;0g|PfK9 oEN2eXsɂ )6b.V]ͮ$^@W(+8!"F\ޒ}RȬYx@!kϏb> 5zri2u?7iXkX|\Ü-@g`ab1@y6`@&4"VU mhn5#? :ܿ>NKUw$!K L 4jى)ҠvN!ȶ$txLLrI,4cG+BefiY`+o|Z ̥a54Y 'ք:[s?˅~\q?`Uq#j Wp,V:|h!BWG_ ~sqoI#"(QI³r1qt?ݚq@FѯIdE{LVՖT5rWfg]Q#96@3x$ IzYNOMZBF1JZ]aL #u ?ф9Z e;!E'W{.4UǏ%2 8SKJFKӚ˃OD7]?)D%r_ +sbs*V_5Y%"q ᓃAY*"K\Jǖ[oD^^<1dz+H"X)ͥJq޳(o6h܄r+w,4BBl)t"́;6.7)n{ؤ@B1 $d4\EDA\~r%OCt>wDT8~}R{Q+jr5Z(SH%^)t7UK#l+W.#$ӒKxmsE eMm` j=ԏ@vп1 #ر:Zl6qEAapi_4TJ"!^ 8f[o8:4/F5}HAJ`T*S2 VRd;+iA,-C<Ǡj@Paȏk&t;+ ڜЙ Bi0~'gw `^CIN6.rTUc3^)< 8zEyG=(Yqem!&FY6Q܃1FwU.i„6&M܇Pp\~@!ZP.6!UIDӊY5tkgA?g6Q>0LaNq 15 @xJϼ|_NmuF{#81洨 (du]$OJyF @ s6uIbRoeuۦɗEӂN;1RG&z=$7>;ڒӒ4U_>&ECXŗ hW!*q _,S``dl[mx~/Vd(8rkЏޖxwgJ_צy<ǟ#U !4긇X>ԃҜ="`h{iAR-B>GYL(@~f\l2S!൙@Η~nVa~nD~=WWin vRKYv8JrΫ1u9.gGr\]/KNᵂ929u%ޏ""g)]ʗѹuQv-B?ձh`/"NWkB?yU5VN6O$r6xF | ">ʣi+dIw!?@Z53  QE./|ߥ^ZA ])\-ix|'ŅeIiH҃:"!k_zH4uv9[0si(9޸b Eyb{ٔNXAQ/7SAmr\C# YenWn/OD]IOm8.> 0Ki\.y%MJbʷIGs _#|&Qhj{2$qbFJKYs?v/ҽK'vl\`|eEnľ>G7+fFAD+,6}U~Nd=7gg e[Å;Aړ)4aw8@ς:18qLh|q9fVKcJqOJO6Mkq~e"np.|ړ c{kx* :rI(;(@)O[oN*RBߎͯy}~ "篷jHM{n ,U=/dM*f~ 9ӹf}3mmmmtq! O3FE)B4#wbnH`D7Vڐyɨ"EXrj>`P{GEzنQH$eWIh|V 5YEi|qkQާ;v:y@`©Ih>H;B)q *>!fXFe{{gX zY$TcH;1:qJQiE 7\Nd~Dy@Hq}}mC/^Ι&9ٗ~1&^5-X,<A=Mo#L#%L 3IHR*rv;PoW G|s{J5lO*^.)u gVޭqY k%W.EI(Z/i!A+%#恿@4qGŻSZeh1¬nGsnwG2-#_B(@l^^8 6!W-0oL+vY`pm N;5ua8X#Fr!'}B_|}+6 ȱs^Ra2|ԗTkG(nR<s1hp8 uRF-:8d7H* Am1MPyю2z; TJo.PT%-w>P>\bHvtg0ΩRrG_CۭfUd+A4jeZW.-h%1rZ<4& խn41!aAt^;le^a2&6 IܐG; Xs%?BU{t7z&7 EJujSNx0;*>]JXE,:K[tԝVnA+#af\#/0aWzKI?_P"RvG5AEH@R%-J Q^TċCdRL˄^jVG`/7\y+r3^Ṵ U}snDSn&gh.b<K̚ lLG@1S+#7,>5MnLO9HDty nHGf:C2)__pZ\cm";u ۊ*a_p9(4b"͔7 >~N4tdn7H].r~{$h9M5i"Pt'ܧH8iVm 6t$$(3%|}۰="a^pvbLo jr6mat6L~IZ$[mfƙS8ֳb:G2n #mF*}EF=G1pEc,=Y?ou61Eۢ )_{:O Wd+GMe"lPъ 2JjƅS6h H(aF<^ ׋zt-F= g^|U#q|7' &^^Pd8ԎcwE4޽"q}e;@W9/g+SiT %KJS-}*>6Mγœ/vv\lF"C=ebY <YlhP\SB7'MVio1@ "#3pH|=DLGL/w!*b%zTK'TŢEjRsf%= 1p[)\Xd B ̱ZlZ}ª&fl&:Wl`wd;StWsPj!tÒ3ͨ`jH7 !d=oAhEuM]@8ܫYoͦp ̊Ckhb'!7"J@>uP?@# nҢ!yOC3\6tʁH.xEjm"qJ2d^jAS4嶊i4E!Njɜ'ghMT4=As4nC7p(&\(6_n"}@" ms%iph(DF|*7PWΊ<̟Cge KU׵w0v7c۞hmx.-4Eb:zNd&3;" 3F}Y}xjAfO7҈dQ ם{"oIw~v訿-H4x;w1H[Pc6$Edt#=ll(ۖn{o1|(8:Dr,B.Գo:[Eh#Hx g3 j씷D Np*nL >7l Tx+0÷D'T[ΉrDxnrl.* +%V9Y7םUw|D3p*Ke6]27S̑T:M&T1npwc*%i߈CZ*ֳ >bbI`m|,J!f7H9riKQ!MN ?'- |iL[c +Ĭ_ɯ5_^}`Q4N%eݤ`7>UZyȖ`GDy9t;h8Hߥ_/{C{X)Rmf`Tޮ8Vñ{"=$1J˧ 2" P$R'ffbZ~}0٨;C?ݖqɻtbܘ.*\f´jV~jRb[~Lbpm=w:?YtNq4s!wJ)B| '*B%qY[0\Ѩ$9Lõgqj#hdB|_Ym{Z0M$֎@ ڜ^!''/8:!751r5Ot>lv\0݅(UU 2Z%d~!Gɤ=HȀ7._Ք2#^Pj3g# Pk l=yyStǔ%6\Q3 9<ĎI=Όl.F J,Q#pKXR75"*Q*uK8+sY։lyLf" Ynj$*gm6pO?`tT5hZHgN [}f0w6CB而 V+| q%Ob8W2eI O>&le'$C殒&sN]L2ZMG仢Xjk"BQgxqRJ^58Qm] `" !3ifT)x] %sIo"Yz#Ô+\$BV*J4y If-՞{(y•BN`c"Lv!{мZ.ξYMao)M'@wbfڧVXs1K46{&?iLvMo|eޭ'u tv} E9.1fx%Wv$ 2$>@,Q]Ga::g~dkDf*KɁsrET&y4rH"ڪ lӷԾ7*e rӲ&nVZ?-kiqtBJVa(Ns.CUC)J#@Qܢx:tlIo)x6c]󠚅C3PS_  )_,=UxrET!2\.=/&40Gjv _;]HV#}^lD*@&}rb;g $Tmhu: i, OW-^+ TS <5XbEhKéБ^ޢgn2=捵aՓ~D5O@ ,+G'_n89~A gGR0_a0of/"ydŭX$FeX1U3 cru!բ}{;j}fvn H?Z=Gɚ+sz$\am>0"I)̅m ed&i?(bGY%US/nնB.}bLHۻ =2|MƬ-v~6pX|25M+7REodyRjtUpݢ]9=8rq/ٸyv/Ee9bidmkms\u AF cfɽMp"=nscK9r+@ag#8z&5,tlͩX^[b8/pZ,iN?=`ib= ?uVrT^-p)![+LO?7P!x$aɹF"tW>Z^'[P9&DC7_cl{`ŊN.Ύۇ8o)9h:DOXgj)lǡh1ISג^kHCq?4Ms~-ijI/r" 7O4B@}!#T|~ɳD v\6'#iĨm$/zU{Kz|nh}Lz *wόq=Z|1Z.5Q׃_2ZD( ZB>z,A6 []1Eو7RPyp O4Z:OxcC|ksI@K`-g\}u[_L|*} הּT%q0֌$Eqc=S, 9{"Y;9 rga ]#B0;caQ,)};*/FxYڤd@|,%@_6dL. [OC^K?]']8hnA73~o&pUڻNҽؤBۈ%>R۶^_&6H?QUX7BJO݋DWX$I\*$oUY|ڟ+e]eA³Ie[FbI7i=Q&=pnI%j0 E$I?Zxcb'F"*Va/̛%g#XD,`z&ct <3VDt-w4K`)X$eSq}4C>2uzp(:9kT0,n/F>! rg^++]U0l:} ъ<Ġf9<.N"<<`+yC30ttp/c+Ek9  Q]߰M*Yte1uk3׫$"CʹnN}0˒eFZ+2n,v.}Y<Hx;Tm~}ȴ=t™XThSYnmP$}ìpZ[2v Ifئ} ܞ,|hs3*)Ѐ l+s7eyh/oL kRg0fk˓U~NWZ/M*Zs+mr^RԊ1 0MjPʾ+B%x@/޸BCDâ'by,%yQG쟗3`6Vp^|gxf3)u!u1²\SllӴ8jGZ@).| Pz6.͊94ՁF\˺?l681 AtcBc#k36\^F=?L o:Ëj B{F.Bքpe?t1CN=8s<0]tOQj_Rk7x~=TbH+(=67g7%[y~u+]uzg@p,B)SH #xV21:Ih9B" K=+r6#|#ȧ8UTGD]xzg2G{ 8 b)jc,Kg>YP YFM!ђ=.R+K ߡrgV (g1M!vt=7B82}-V_!d=W|S  ~8l1w^E*(p&94zӁMԲ3\uR=[W4khd S!z 5`yԯp(p\At{7tw%w'D6iYg,[Fg}\f%}Nӻ'8uz"֤frY4R.[3(5Čm* l=M-!P^*-ioK;j=zOE.t=BuY&UeO'Z cLCVP?LG=7[p7.jDԋa] yOwfPD-!`)98,ųݍVr1WC}%[E6W4ZS p)LF>Ρ~U~d ڈ*<:72csי41S(Gkd$xk4cFf;}0>ߪMGV;R[ڑ(Gtjf4& y S՘u\pWsGqΨ0< O/.EI,%j4`6ܲPݵA+_\ ^'\$oj%zwui+=OV$˳ @ }ސ˒ϠvAUssW=^:AevI=nwPP5<}9m5جTӉ Of81n v>B*u:Yi#}t͔ Drw݅KьZHoyv)g&61DPޘ$3=%0~;~WZEpc3`؟彩eiYWnZo)djATi\ܪDdІͷx5ʨB3 $–|5K6~/>T8ͮ4.펙ϓ]z ( 6*/sdnp/zқBBK8 RڌcF) \EUuX:i4_'R281xd \xQoxp-?Ui^#F7VX4&~yngہ>\ JX L8S sQ]yVYCƞ=8FϏDPnUf +'Ap3>rvF^L(}^X6LA$:rs^2$/įi<Ք`3#B߄ uE1jSЩTd$Ik>e,Ȅq8w{zRB"5T.~d*SJ E%iCQ0 7IR١WW>Ll \q5.d @m8`v@0=%goY>~!H}rgxߦ%.`+BNv Q4+'3#RӓW{VꓐWLS=_hpJ-kѝ(î'S+X R[44Xj«poF *~ i[p Y0|g{LlbtI=8s2*uҾo,02 '*_:Y mvYD hxQV-81SeGM@%Py͞jC(8֚7UM€>1zYrܲK%MB}ϥyX/1#uO2 ^(d8i3Suy~+˛*ƅ`WM 3NfD >(zħ(|G|>Uk܁LÍ@d/A-/' (5 6Fk,gmv-zQdAzQ򖟵'ԄaxNȰkGtg03j;x[|j [0vUg#* c~lvC^ rmQt- m1 v&o#G` ?ʯ(TQ.HipkE쓬` ݇,9~ ث~PMey]^yMlbzWG'JYr'G3/a -sB/'pP̀.UBsTg@Rֽ? NvZD)pGE.73bI ܔd!yIiAsRWȲI^jbl;gy7e1nLOJ[읣ֈwאs0d~,NQ\: %C7^{y] w:م<{C|?IïYVC muC ^@뙈-α/zfei?"[Y%;Bd.{l:.`;N$^|j7F=`?ÍNt<ā1Tt>n&‚a=pTu~2QWpPD.m,OSHSim}U/ ])zDʈoc)v96Tz)Qf\; nV@&ScH/ߟ(</@s5VGbiS,:@ddn`jjb/xs7ڹqn N jbzqomف]:ّ"(A(6@o|X[47pc meLyM aZE洿!X@uwۨ:*泌h*3xIE{X1'ۦ>P\ŌnBlJFsߘ%e?@?lH*|1SD)yB ȵzcoY먢kj@"揉) H wHCh {3xwWK~,.t~!8q]U;viCau'>k9@G!k(I]d?wqpmFSTyqbPg H/Ժ{sߛ׍"/1$QPH0>_pгEuP&{i +ӀRId#@h:NEN 6p8-c6KhCX z?+2/9r_э](\KxVg1{yBm:sƥ#.T(وzĚC%!撙Ӣo+"R_"-9=5OW pnS瑴ZT:_K谑 cKu1b @}v%fZ!ؠqHE~sH 3D^a}MF>cYC˂1q,[i= ozZ6Z FI^=R;MuAb/#2]WE}ajPI|sj^qI*JM )HFISc[B}8@ypH;DKVt. L ^>WYS%:̑W2N5R_LfS%p`wB[dg -H Z+^~_~ Wۉ)b|$GkKf^ 8Ul.&IP<Հ >$E{fToQT2nbɕb _GKX ʖ1'xAkd֏Xҏ:M:΂̲3w=OgRsDyŞ)w1!0,`-3s|r$YN!̝Jg?0AZ6_HZ< ֳW砒=y+|LUgey~C0#%wm9oZ w!0vE<- \qLcf>]dFړ')F񉪍:c}e GhN`qBmgP*WZ;y։QJ\XQϛ׋3r3mе=]RϹsl-l~mKNYҎKĹXoe@ _ 34qztW$_:J|C+A1'ґXkb) ܅x{"c@8+&HBJ݆!XL%'˸QP!( C$6O8lʝ6W#1/%V=-*@/⡀ҲzYA@Z'7~>΃[9^%< ~;>A+]/) YFȷZg5vT4DLwj| n7O:N U؝`r5/b!r"(閐7ug.yMTB8c{jt7TbUj$+K[3 ދ!hWMi j"@} wdQ]ΚE *d:Ejʼ?^U(̭>еױ.ĥMX$`ٛw{fjk14<`;І5Dq$ڕ#4]; ͞]i xx’ʽ4Ƈ FF 1ߥ0g?~u:2fbMG?=? \?4ɒڰIz46DzWt >HnԀ0SŦ-R1~hP( TD%AcDKIPL >率=`lD>D&ժK9bsƂLz^A }O.;JKjyLTVz'uS+nOݝ=~AcHabHyuĞx!QhS~[["_4;Hukň)5f *qY-YD[eRx{ב;x!ف# WN؝lߺ &7rv c잣\ɑx'u|"QPi^*ET%O$!{eC@>?) r@~nTo[Oߪ). =i;:6rV3K3lҩft R[g[%ׯe;'#ii2tL#34y˛e<ȓC/@7n`%p:DIU ?3& SB꒏3?"|Kqԓo'ձ8+.pQhoJmtGd:+ʰ5 AOk }ag{,G=ż=o^$Ҷj>`?hXg4!cDKˊC[~?I9#XT~aGYs%zOMSܠeVp ub22DI( FRWˡQUo!ם9z2T w{!y%q<D $Zhݧ\9ԈgoӅvgla,-C:4Ήyj~BH%M@\'\1Kr2S#;=DIks_"pwre$7DqD!-ljcgG8 5 J/8Iw%aew1b'}%?K Y5T,ۙ!or=/Ap3Li@R1tU פoجVqM ݡb**VzWg *W0А&jHlgrMo曼F~~mS"t^Lk!ᩙI[ycCBޫnJI&)tS]Ku0l^͈$&mm%/VcC/<NpFapcvq㌨OLEJ1fUq"P*/ V#B_#0oSJrvN5&U늘3m5m -½10AGw؏u|x@zNO0^[ _{ ar Mѡ"|Q_ K$]ѓ.jb˼lUCN ]R@U&Ws ׫%!,|`ZN$5BܯJ$(/qBĎgJó"nErՃ=/CYG:#eFRf}.\G$ pNNq$LFVf4D8SxpXt[0q)CO2 7׎Z9}|l&52M_3cI 8G-x 6&O)dՓ5icb) u2Ai)B~P ُMd !>彌_Q_9L!Upy,ǛWnQ1om) Sΐʕ#Ute( ƍgMTKN+s_I]+k1hgw.j&Dk8 %Gqg *~7D.~3])Zf,cƹ*hh[<)(R9^B{ZlΡl,2e G%qˢ`@&#U 3DNTF81]!M=:}ƇJS8<0:)H(2X}w]jT>l?A8i'0v[{vLYG!uOtz|qB}ߣ=Sȱ{>Mi%?+j sd\OQIك+}(~Iݾ̯ή96=*ރYtb%`}"V)ZZiwE#9VN'#0fm"K1" כL6⢃t!'ɹ9#$/ B]ߐ*nkA/{{Dw95Nf@vwەYٳ%nVT5]ӕX+$apPY"Z^P'Pឨ6z>9Gti{ݘpTzum| Ap®  Hօht/ܳ}ui̯0>O9D2װGP\8;n LH<fv0FO" nH8>e[J`Nz1&y\kTya4t60BoTlv?\d#? fb"o܊ :8_&[_C;*; (w!Xc15N ͪd,NҼ|B晦?.@ͪK[٧KV,@U)9ޫC 1'BH3eiڏZŘo09M 3<4zkstbgL7m{#ڹygdur}#(9!Ou| Pr1:c4XОIR(@o&n0[q~u~%vakf_-Hkpǥ֮ސ799͔Pa8JWbXiv( 0g1$Ul.yWi?@ bO ª6e J5 [vO{z]]]|`St&7R-ۧh8sk6GLEf2>Awtߝd'Ğw4"5Ύ1 G]gA+PRHSAE֪̙kUQNÙ̗?x(]Z2ED/z4:t:(?}ǴPM<*YkbO=m?̝4bIw*b@P.Q|do$='c*Ҏגys8JWWÖA{́EC_YcA;ǮZ"(QCFN;X8  /3? |ɚ%O_ɬU8KAgƲ{τD^d$INpU]{}E5ȭ $3sYQS>E$^{ nu)V Ś ڕ@P| JQI9ys60,0yQQt VۻnPWDAY lkfU@h*JYQװ&?ԾE hY1z49AVoӉ cUm`F}rGI(pE6o3Ay赞,x-Sl_D\;ZtgM9qhXpnB Z2>тЎvNY^,==NalV":5aGy<!!a/M]],쥽?1#0YjE->fH\j\(,0}~3֛҄g|fI<6fKc_FJj& j,.|? ~q@ B>2b^ѵQq\kJm-dTHjz4Cs@[㒈S+ЍJ>ҵ%2,|4\gbC`wʪiI"7]8W}P5Zʷu$9:oBwxH-(WC ,?D-q\ۢc yĪPa1W{,G)4ʥ4mTkgS[ iôIcڐ`t*RH-sJ]AԸpOΗe2q9O={B9M:8,Fjc3|sEC䍜Y( 4c':ʸ }B{Y/k0-{zĉr"73eD gG 5wv"9:0 dPX~3&m<4{|Uw)-}6kpRo;v' O3Zht}d2gF Ji YX_i*f٘,W~{0G5 Ҥh^YZ2nF{6e"K H"JX}Ssl +K]s>REKH0b2_h 9+ZD.y3w:;C1QiMwWAϧ oҝ de [|)e}ci,VPv E.<^kJܴ#u {B}`c&>18 .Z+󵱱}V1FM-ǂG|i-۷Widq4"vR!)'l6H(ƤOfgeym8t*syߗv){C/;at<ٞ:nt3"0#n2f$$K39Ǥ #<>["^~4Om/a-417885;m<,p 8e;""Ts:60ֵOJX1ܟ :5 XRd1bmrp.}&zO! Y#f:7uUyL)0h|p)C촦]%hɆ#=%E(,WcKdɚ #vBTw=Y74mwcؿا @KT Qb=اztj@>N^& ¨Op6fvVZ=KqƮ6"BNT6Y7-6Dk9ӴZ$pԟ,~KU,Gi^@iy :%`%bځO !MP `͘cЬL% D1*9oG7``N1smrͰmKۤEQDBې,|kys 04G0G?bO}¹'ø%MlW5dv&E]yWel[7Wzl)#K\⩳czvNDR,CN_%i1O^BCǷlLA(&u~_ )[+ՅPkU[M/e#h؏ Z3R/rVE؎]/0#c2NVv90`8&b8?(I# U x O7A~vN@Bhw13n\#x9 2έKpa yYx]6CYkZ: 扚iҘ"+V0bgɶH,&(hr-֑LyJH܉U.|2Ȇ)TWq^hgtW>V%e0ީKC)Wo(Vy(.S90m=c īGZM31[6m2oX7.qsjCvek0ϝ)oئSo{\ih.vgHMJKejEj91C3/MD 8 Гݙ>vq9HdaYT]o+.O+s'nbXzD)s\r:=~|Aߩ" !aR+W86ag|ȱыrܛFbUW)X/BNNpfZ0b?u X\c7eRQ/éLJZzB2k-cPW~E<|@Q\7fY;xckvSً ,ȴ g1L+^Z/ kR{KD -;_#X6ق\Ш 7N3i׏}d}9tJ}͓i\it%ZH M2)VoCd6;3R&}== ^~ Vgm( Y&(&8.4E9,/-uf,61|7enZ0,XTc)X,6@ORTjgN%Wa9Wv-q戉3Ghu U ue"25 5v ='L F EhB^>d?qa9K s\L"y~3v7CHIq"'W53)v( 6>ϧ@61{+)y # c+B'Y v28huŷECq9\xy W ɷǓTbfY2as[r\&l XU$]|,m7`J#ե] y[o(1d-&Exɼ*\{ ]e,6aJ@h,G![+p`² 乵K;yuE~ ĬMڇ{8wxCz*O#~|̼w Ep 9jv! CLz4<5b4$3К )qReE$oEz#/<j!?;:sF0~:LES+^YUe7 A;,TYQ-V8v 0OL7DqVzs98fDlGBoh?KcM5wA^ \5U>^]A(5lM91\nN消/3fۉ>\($=YOآ*(Ww_ɔB.Wڷas'tog 5 8SbALv3+D- 4Z<[09r}^dr-%XZ5~l񑃙T;l4 jAUޒ*hf, pqz,T@7p19=zLn{b6R&*(J$eC ]Ǫn HS2[TP^_؈C~6mo10 J,:buQ;UX!Gur_<Gp+ Ѿ=K 0x녪4*ĦD?T,* Hf5j$DP΍;+)_WPLY'$ Q x^c lHNQI 4=PpKZB_rH9ap 2 m ]Ηs4h? 4b$SS4eF܇zMYu*"ݴX{IQe\'3ѓ8[J1V35#:Ԁvaܕ*y2q?/rL9J簌DNH^l ~ U. #L._6sP(?Z /T3J$ҠƦ?%EmfvS)ȱ0ybHb$NkF$2)k5yb\I{07Ü'=$QȵuTT P`PĄ('0enLMlvleىAjOVyjvÑJ;w GOZTʼn$ aϐ&}X{{T7r^tهɏbi(Ї^Iwzై^p2%~DƂ=%K[0#@~pF@qEO&n5/xjuP gFo˪H{&w`ao!u6"z7"SO5H?evY |2(|B8lk 6E '5JiV; YqXs#ϛ٣t* "L9 J$*}fe*>Z̊ʇAm@ &ZsXtiO ֞P_e3r~x;[$&C$ UiC71:K(Ba[24L="7n޸5->X׷, !8d4r_BqZFvu0[f{N-8%AMƀGK koσcЩR@UW0Rh`B`WVq3d)EW"[N$ZlZ?YU'Oᦸq/Yx`~DcS-/USV\-06`Jj'Gf' ;=q =Pvdd-EH0Z}7xJsM᭩v\q9?iWl:S]ZܹwϮ_v7Row7uebԏfp* |KH~Z2WœnDYdOYONbjϽ}݊">54b)4IЊdmo맣$ld/^Dgpe&- i6ǒUgL0@ď/ `W N%>4GvbK\]68. eQCmױCPH+|XH`A{c34!Rab*jo{wz!k`]İ'_jk55$$A VOF6I+%垚m&3ѭOYG|u_$&y<vkI*SkS ^zߛXKAiJ^J`bh=+Ag5BdqEG%dX5/ɹ zhي2|5<]ЦTLg -=jOV1uا8٤Pq򸛞Z=+ YkGz v&Af`g3 ]zyk6[Cc"r'qW'1E>4-dw;H᭠%޴Z-j+g!e#N!ӅPA~;QQ'.TnA_gGN0O_t^B"TZ NI)-}j9Zkfeֹ VC0B0嵞0'WdS;"$W !n#&湕P,)LӖz$:|;=ȶDZ}"K%q@*uZ([Q,yN3p?sVC~Hi57~sWs 211sg{z~X%bXte!jNp[+() JG|d,H7fVrJI O ^o@e2 Y|!ï#0K#yGA^U\Ƞ#_?{koSf OX*gɗ@IR[ )^N*" uL=k#B &B2chebxWT!=mˎ}2G~SI\ om' tit,0 4*6;`T!"ߟAP?SK YiM >gY D \1%=KtꔕYmke`m-Zc<^V0ċ07(#}$/SEBX* ]) ;I>eKN_9)Di%X%3.|e_Oe LojdN"nb.k[0{v"8o:Pş=&bUdOU'!Yo@㎲./.? R^o~ TƲx7O^\Į.ob|y-=8oG07`5No3Ў8)mvGQYz׮!ʢԙ^ dp9 _(붖yOE爴 .nXl=_gWUG xV"dQ?j!7k(n%qElpZ}dX`P5R^`3mX!|n dĐ_Md[E'..בffbvW3h_ߐݐ륏?d&37_d]%}{&tP͈R{G&Ye$[}zt*_V7a>aD!E^8c헯qgzST?][5|\YL9od`[XQPՉj$g4:Z!^cZK"|8y!~N7FNӡTq%\ VDL]BJamU~~,#da&YlL|!{Fɍjd&;=EYޝG{bf$&;5ޠs_#s=2Z9gsT;1ι@4&Fn[!z~A֚zdL+ e=WX:f+G]Pʢ؁l,whE_mL0Vp?0tԣн΍0=|͋|y3 / n 'Gi!U~CpˠyZ?>.bHXCIqK BF !{&É$FdVrJdI3UFٷP:}j% F]";Sk;>=#of}r$>A#9N:kWl.CsfK<r g7&Eid@r@\X)7-ˑ@bAma tB +7E7NRp[y0huḁ?酚 `lYN<{TfM_,oO[w}gi8"=Si8~w[7TD]9o`S0靯c_+|!^B×ZC u)hTM:Zu,0 H%[D"1Q7c=$jY"3Z%*DTq}ܳu'u-mGdgInNk`^jZn[>粔$WK!0JaV$GH㵚*ȥHmCGnU-ped}2CZ&6" OtNz%PkKD!3:|~͚{ d%;s[4˅Ҙۘ5n^N*`x-oan_~!/tVc^ݪ oX'ȫIԛN+°s bV¨}᧤0\k1@l*6>b \TIDr^y DQ7V>G.f*߂ ͢:jDOL7^k0p,3#ƺam嶲mY0r@2NNn.4ǣOTa?h.:|tƧ(иR[$N dt?Խzn`hLiAU) Rz="5 Ft(;f0!`kJ4L@xr>EiFUemƹ8; esoF1e1BiCʧ߱BP%ZbK<HRvDԐQLKz(77q'ݣ'`e +H,1T#eOR:5_It0'Y1Re#/ۓsCH| =Vl:Z.ַ;n{ NplWQ&9(j--elx+8t{^2T잇-0WKMV ) ;*!*  g!:esyAׄSS)EE]; u?֥#J;jՃ(A8I=- Z}tUɡsg" mԳ]+DzV_Y~(-VpS9vwܡG~Kp!]gC sY|U֍*=ʕ/l}9Z)=T5M1Kj!h 8L39I;lL-`)2qj?VJ b#Tٚ+䰑p{yGiJ,HɼEv,IL7j6o{bHuq! : Rx P7U7p à;>qyw) LT)u(yv_N I_K>Nzs S Y ֤~M]4jEϽ ƙHpR74Ѫ]1j^{~)I';ǰ[0.?/yнzbddGk}ήXlrqhni?ǍQ\`H -[ڙ9`=2B*Z_8  BoNJꪑJpӘj{b5runVLn͜2b9z&)vp8֎)J&7-ߢkq͑d%t>ܶ*28. ʗjD!,za@" ,FDM=SF:bYFK&=h~;5R づPnR"WI>Pt l~ftڮyUjVo NГln|Sjjk!׵"Fѣw#ficb-[7/@ħ+ o]A9j6tL.U U(NvzڄFՊ[8!@H)L wEy)#5*°iR:IvS(m*[Ƨ6#;L 8IiV9_|_0[S׹7UmYYG`ip)C̜#چ^1YNknBiUka َx R NiV_l#6L| }+dN$ 'kdJ$Yށ^oI Vj!Ǖ:!R ?^oUqqtlTӑvAX=mƒINb 5^iCS:u,7}#ʝ7]["{7i+js;f+0d" T)lI\ GB+R>X6ðq7Rk ŠWK/\3!VSvŸ[ '%HJiсmFCsW-O:86ƓsSFKO)4d -Kս˾̽Afg;!}Ȓp 픗70P_z0~jVܗ\&T7RZdm[,3*.7҄^Ȋ;}W򩏛u-n% [#Sxs#x /r UvFx,χY^\蹚 'ZHS[Z~'^ۓ9)Ξۈ״\P?&VɭwP}2:Yu`z̿v|mck/JS6L(hNiqd#s+pvj`g9uPT[<,*Ɗ7jΞ!8.G *tyEy%]rTZ B P)Ms}SNݰp]nj =X_~2taBHs.>A~1=yXçٖ$Hڸu'+FـL.Zʡs3y нgOtc`r^Cј2m)F1 坤Ϧ])I PE q:amC3 "jBOMVy7{"|8EzB8/rl%JU u"Vf=ՋB<'{uֵY5P1xL3edӌ _`Ɠo "Q7? \A0A!-@ \ӡ~I,(&Zc@g#3_^Xd)( sHfUO(!@*Q4hqZ9vW~:s9%'YP 4,WfƳ*)jA{h #s @r RCU|wu8/9r0[5NYQ/:~}4q+tntڌJ'K&|!MijMpFnDMx :*;y0X%]J 'OBjt3DJyfQMChC%p1ޱѺ:?Ђngvim'ڸfVW|ߠYW=_nE7Sf5IKGjlMW<6'K8-(Iҹ>/9 LКPo@(&kDHY8̒Mibpua] MsW_oc:à}֊mVϕ1qpDp~~OQ;|CΥ7L$ *DrHҡMrz;E~JuZoKZ}|Z hD|Z^TO(;~~}jC+m_2A(ûkA,/ɜQz.)E&u j3Z(oA#ic;gO|vq8IK5,rYL]<0 :I8:Dr49k~_PO8԰O3ퟓ`aG4T$s ~S ˚[I¾Y rmT4fWG>@Vv+Њ2@(SpgZn>tڦY0W51"B ?NB,Cszi0 nb@S25Gn+$%08By B|֖1F[cL0-UsĚy 'It5P4Y+ԋ9"U>,Dr<4)k*>ߗm[ }ڇ̴W 2sdv50p) xLPI(FAx'%PM_K}t״YQ9hC #\Dla{D+AVL5B־*|g(y @kO]N1 z DW}c *,:.$ɀ^ᄚt>̀z=Bׯ1}Pwʖ)fnw1æҌ(]T9,2Dʳث\|rO8lbl"h=:L猅Xp]2rQӭ KUY9rDri~:Z'}/ם\#:5gA6^Xv𵳪 o&Րoy{BRI?c5ªG6ɣL]z/q`2޹vwGe4t?_Z&6"RA(g8G) D`]U!/ZHdC O}i.6CMG@W ˘2%tU;hg_MHdrm5$Vi, o g;("8]ϰַH/GUW5|pi ɬ7HY@:rv" | @qڂYfp➭<1TtZ|z0c U]b(G*QbӛZ6v#ͫT&h_@DpkVΚuaկkkmJ=gn>2 s>lW*Xtl !n0 Kq @uLUYTaqL%wQЀHWo"|RR]KΠ8{ Y!w`t-W\rm9i˽_yqԮj&i7a %EQU&ӔgH%۱XfûQ"~wb bvƃw2z3~ %\5̲MÒP×zE1AfC螴m{T4URwhVKf5ce=RV?񣘦Ӽh>Z$ kHх+ףQiQ7(b<0HzρnO cs&Ŋ(X#*hyVejz璑q4^\jq:=7{Q}6Ph7(ݓ>x5B[.fQM;7:$ZB\ū|k66uC"U84x^ްZԐ5Ýv(V^e83ws&;#2Sjʏ\:䎠lGTTfQULS ReJ<@d7/V;+[ bP#:Sזj"ϟ'ƒcԆ81%bO#qb|-9r4ښ0ՂȣhexNn0)i3[ө{!XR6D>rw5U,?7$3ӎ ^>Bi}|H#l2كT'\TW@GӛY`0!)UOCէ,Mѿ7R( Gg*w1h(=<Ud4s$ě >^ʎzͺMM-N ~ng#J4%AH b6Yl̳BG7T[J6ho!A1~%xh9&Buas/Rg)ˑ }˫TW*ɺRscZ6pW pB14PS9ށ|ڹV;}sgRR㗶 *hQD)p deneHvU򧄖pPdXߧٞwɽP˗cyo6&]GOB6k烀c6jv=ܧZ:V#&^_ ^UDۺ: ItaX.clHaoRxǢYAK{"ZouᄲֹQlS.нaS5:N(&}8z~kL]ev׷P%﹚=x+ر\FӨJ9hj*=</<7Y 6KȅBWdMKQR>4RM?јJ{_ >4mR7"rb\73s;iсЏg)b͎X3=d՜TYv鳽qgՌD̉Ws{Ub60깜On~R8tgj" l CQPMؼCIfRy< Ǵ*U(^GaN6G(޾\)zn2>'%$w`8țc 71l 2N䧠8hs)@^lg!B}IZ> 8. %1wᎈk60\Bau&*ʣEU @t` FyfvhFnKb:֛aq=EY +'h%@Z+=RfKr.w8]1iD(N g!B:22nvA$G:h*,)- G}?>HV^)s׺wQ=] mucE"*|^6|mE*{@=?X^7f)H`z1DR1q/$|/#g wZɫ| 㦫 g*eJB w άzގKNUg}Mld D = WTC1XXnaqmyɉtF(ӆn hu2/%-@n1:hƢ>tlD: Jݬ}r*U{9kϟ}Kѓ>igL*G0e{YPnIwJ~(U~fblbkܰ9Ћ| 8PSQZs9`Ͼ] KqzQ}6 N준&̏&[\S6vT>;@WÍ|=R_؞l%hVHasԵʙ)?bP auW6G 0rk V] rLs>8=/mbJŇTG@/*u^fqe"+G%~MPwvm9ыH*W\*&>R|m{PWS+0F74+0cbu 9E`o$qWT,i-xpLn2*%PBo%M78v 2p6: DE[30['tń'7MCw`iUAY?۝376{ 6*^ f1B&dioqXUK$[hSTyt81:v깐4Bݩv#0)/ ټNL-y-]!N%[JDujoqŦ}xZy Te@F%ތyN2$g=&֓:EeSRhY@h@׮qIhdSi җȌͽk-+ӻR^-yq`X3eW!3$1!u,^H%vl%_ZQ/QVZ~xGss#Ź̔Uw9#>\HvA! \ѵfIvQx0衵’"9 *W`ϊ@y |0V%>^1YV9KVA~6;RK D@"{#s?d$aN+WSH?xLT-N7$^YϿ@+C0~whBT9IBs'p: @aO~ȁǡM^&v;*'xoL;!wFLe-?H8KK*@$pktͯ:gWZ:C%?.]٠"-7VzM4,ctb󩺙00"[}9KEKJ]/gܤ L4@[J̵" bp4ω3~p{!P3^1m߱VOϑ2-Cn/L>O2$JftzFCB@s&eT)9PTi؇8'A>S?~N>\C;Ĝj9TR JJ\t;;Ctb.7h}ެc"h2YۢÞxx[X<_עq72r]>"b[o\hU!8"탚믹y҉xp&;N0؊ܼm>, rJkaNU1CLڐvR*e/ [K0 /j:3sR +?@~z5&s즻d*iձ"ʬ ]cwtdjU~?=p x# d#=t:aDි<V܏V,* "i[DLBrxbz+5X{;rUo@o@(\F-Y=0 JE>{I#Yh%?Wnj;SIt/Ы hU۞9X ϟWwmWvrxKo!HqG(g?g_7 u5r{­yFF5y:8^u,1-ҷ<.~Qq\ }`[u'y]MDtqFGTzpk\"JcN'JЮo1vɳatc)Exs9L&P61j/&zu0 N$:Cӏ'9Eg=BfKFK/B{!M\RS fS܄`{2 H(r2#T˫SE$WHE|laFeg )`Mn]ӂ9{6>my]] KŮ(m 1ƺ0]\cߖPJmA |D^,؆Ez()nմ Z!"< -8ETaҒMgNCaH)>Y19 4CQ9 WOܣ^HHԂ;J=~ Yng ǀW;A>~FY׻_+s&E%~m<-"~l1 d$&?c =L`P0}WFmUӾUS-ڋ'7*hQ >R/'K9;NFnqКd>`GOawa%o]zje+PT@`Ӕ$J2gLI bZjUzংX싖ULus(OM@\>q:jx 9rCYN0@c%(@m3t`G~:3v Dxvqq4zݻ+A`2h0 b{Z˺yg F3_ e 0֥6PcMLӥ9Q KExQ~k525C4yR2qo47Ns.킅DYw}8ꎆ򏫴P!smqU:,Cu%$;0ڣ‡<(n~bx>&*0z{[Kc01}4=W|;> ޶cEtA/A3^2)4BiRR-z`cy6YNvfORbrS(K{5; EVrV1jh* ,҈!UkZN7?(A_!'c=ntGOwnkΙj4=j6' #?q:&A٫f4 h~8+M𐺲=l/VEiV bF3T P!1٠#O>= :Ja-͌vuܔnSǬPeIIedٛ-g@J3*U'ߘaԊ `ii+§x-W55>srç는BAL>:>ζ@Fb<e t ʼng%Rr.̶R"p%z}pzZ%`:$Wu5dB% *<"[Et{O3KcRLeI6/5F6/ 1nN8v](=H#}>&\]Y(/?UZD/]מN&D0 paV;I{ XDTR㈖o2][B)MAx?؏~ |-m+,բIƛ#,MN65}~464;VJW [N:jz -;F e3) &; q}Ǡ oZVMIgҍ}pb:]0¬XtAM=p*9;d&t͛[PW< :hC;MTż@22UR%J5z/JF])ֈh$DC{h0KR~ZDW&\av*:! z..c{' ֣a<#yi_+ nNxN\2@L63/,/ȄLOkw/fD9GM]}ŀ"hQ%eBj+\T+ @)Z7XXNayi;M;nhguR"ImљY*Sr!eE;oAIp=}J;=R &AlxmdHLR!oޓOkAs"N160+)@HۅoܒI2 ]|2Lv~*؁_ N·&_;_.$ͨ:L zmp!+99 ~ Vmgb%Re$[YWďFxKHޠLZ1>!O e@- F rI<]SB7k2!:}Q2Y\ >O3|C$Z1$G6g5 #ǘMcHgq3{-_9R_!*rA@2 v!Zm?OԿ~yʪfrq r3t -?:hCbqqk  h^C90slpNqNNWbBW*z:JaOy9-घT* l2"Hg2oUeXޣrb-4E\mw؇Vz̿=MX%8!xɃ9alvT -jAa BbC ~RH뙂.J3TnoZ.>w) (Ǝڇ6NfsJ _O~[WBdNHF'9` rs1zmנs#c8%Bcgx%9eXa:9Ւ!ʼnصkZQ߅Q1ӆb젟tk=&1<~$Nw?/U*t763`DA8k\nNM+xQU<3I~|bGekgea"= ,Zފ>XXi[OBetwT/K*`B̬EumCaq=JҾ@9&W&`RoTYq&C&&?7r)3n_AIz aRh =r=Mc`XYS10X~Pgt%U¡mD Tx$g#qrVɢ;jhV0w `u./K? ڒ܃0&QSTc hʀDfM&Qn?.tQu"=g)R6v 3?rkmD;r*KU WX廤6 [DH^怌YQ"023k,=[e=cgP]H].~l#.V %@]t#z[u!EϯC;vw !$0MOjW_{ Ю&ZtHY)‰U}/ pOx`,g2C+˛Fo1يQu.D.Cͮ["+.~θ"~{H+~Ǯȱqii%(#\/i5Bx?kNcP– y\*ܣql})yMD:qSEV?P9T"ZQh<opplmPv?!Rul=+<+Rٹ6ݪB$ &rZzXcci񑄑!%{vͲx`C/g?Bj}orȻj:n-Ԝ@8O- 3e y[ȬtokIH:㖺=|wF39|#@\42J'& ]U/2mq&]HShmp*'ӡr*PT@ѳs9?Kbzu,dHNDmפq|XmXWr&!/wE #r1?L@7lؕZ# LG_Sڰ ibˀ1n5+Y9EF h4lI$"!O8y̯5E!x|OJj^2`@/f 61l b,vP<5m~{-d]QkiC,Wn}^Yu]W? 6‡bУlrށt~Y'w<^qZ); [ `ZȎ?@59I? ^>cj&JmJ=3lC23ot@q7c;.GtkO.vL-Vt5r}3J ,1 *o_9MUwr7p@qܩ!{l> D瑔$exL2S fAW,#B_>|<<8%$>N]P%XMI젴 Tr|יfMǚqyK!!әTߺ+ kw AU}Ѿ9.nk.iAQe^Beތ9}xjcseb]\z*~AnvJd3:ayv:(6mBFþ`,Pq+1 D޷^m~LʕG  T=L 㿕C:H!{`[i|#"ZD5Vʐ!H0[-QZ֩ m2UTԎVw\21\'t*>bk 9l8@ŋU[A&ޛEXGŸ+ pî٬^b#FK)jO3*SrJg²ܮ}U9TeR2_hq91Q| ô oiP}>R#4٠Yg3D:sC=C=,bYE;f:1۠77|I 3O0?GBR EfȢ)\L)֣c#hpR75.:&`o w\W nƪsnWN[Ѫoht("#;@HV"Jd.7?qvuCUvIvgh[?FhB鸴1`|.p`Sz/=%Nsy{5?]"^ؗ1 Xp|$rdjL\Dga}9-$Cݪޖmh57< I1:3֘)Q,!uX _~)G*re)C x/R,!t124 9-r[yURzȵ$ܞ3M=qGy?kk3Th)r u(ѷOdI;G^ƝUA7l*㉚-;85{䶩5GW`wBes5,LV.C7$ n9wK,vFFFe,YvRKCE DY,SIoh[s}P@\s'| mu)k ;I跮iěffS>Y/Z5eD-c%~oGLժJC]l-h23?FIHOˏ W->[4?xnlglT"(27gogC%$ AӵopSV,S)^m -|Eo͛@-&8 IK ZJ=%CZCt\P5BRg؃c'DZ>I[Q8l6V48Y׃_h~G~o)Oq/AP\Նv.;|%s??uڶ-M|Orp5c8OE鏬dXE"?Y9ܱy*5e6*grLb8D~C=vz5b; ~;n, `ov HoHR{mы > xRcן)ұA-LC!L~h5=#WAz)yx'םuȄ .S<96x&L-fMe{㞚9ZyR>3=󷾹j f!OIxʺ[Bᖎ2(p92ĵ^DU2 C}1^&NNj!9(އf9Ĩ.b(8LJSpF: '[(wQx}+5<>nzigAWo$76HN&X_4?Zi T\n&SA6 ӸiKWᙀ_j p ;?-"snب VX;9H;iO]ř_M'5ZE),5jbS;"|[v7>(;ܵ +'/"~ߧ }>*ف1Aq?6q.{GƾAra& Vǂ@{mw`:vc"L]S,]gzޘj87/'Z*GњՁZ/E+{NnajPĆ! dm6{-c 㱎Ru]rmCjkkl`u:zB!֣]XzyZ2^U ֱ&0aT"_a40oBP\V:׽!s< Q8t|(zVxy4*N2 xB [u7sny̽pCWIZ*`G]T˷f[br0 }׻ ճ ,6oN'~ħfSc"ڕns?/:t.}!8ԝ% - i_fHfE2K̬0l w&q^2,"ny*4F؆/}RV&y$̓;1؝Z ZC,#LSƱXFAj6o3kEb+ûE쫀 S?JNuБ2ɝ ,e?t9i,0GR9I 757pX>B Ҹ4ݳ=쵇̛tW:$F |&ÂS~}p"xJޱ))#b2G`jYF d,cq3jְuɼYa=zXqf+b{hE.`jMi uFt1lTmfgYKٽX8pynBirW׾,x9,RlOS/zd vv=SZ jz !ƛd{sQ#2+/y$.cD@Ji mr8B2MXI1i@͘@O_H/n]Y\J>5 QE@٬vf{^I3ݔo7ɑ9ZQm@a,2&)UN$֗a zUդ$ş&7\[ ӡ NJ :SEc\})iK,mAI%{2˩$=˻~A۴-K_8驐t,Am9 ō҈cJ/ի}Dt 9))_V-=~t$*ً9%Xw.0YsFp2V28$@ +@UCL|y=]<xnHbJSj,(Pަ wP/3芸~Qu k ,C3%-"27uLgys ecYyaPJ]U.t4(L;/MBȢ⾀6Al'1O!@9%V ӛDc[p1æ.3QA9#zK=w]hBvoa(&׭I^Uj96H@='0ܔi=}ယS<+lT2C|RyjT(lIw*R4B-Yrr߈gtS FYqH_M(nj+ PTwuf0#l윟 vx +oKٻ$x17۞wL2[έjv ǑvV,ϐ fmWX3ڦj|>ǯtodɿ-eCi(V0τ(`[ݴw#98L_7 #/1[(;.4k] vsUr;M'(vGo nDvE{ BefY'v(_ߦQZCЪBkd[FKC7](禀t*Ba;lc0.gPT$m7ݒ4Rn(QIQU2Y3P1ݓHE'ءŕnw/GQ!3‘@OmafA VCٷ၄SVpsӴ2$Fao@|D!Ig#8Fɡ:1e<‚RNm׊o=`( [vO2?39^n]Mq5`z.QVQ-bsq\ݴ*ٸS)MV8,߷s,JB䥧S;KKKCڈ@Ij锤8(p`͇b!n3&7B 5Ctq$Ht-3Ees@+bhw5DLrRHMz D{[MYXSot.tZi?gc*Υ=b~-TvA[UK-('>D#y^ŽO]#:G˾-[7D@͵op%>)~<0)FtgD`׭D HǬcGJ*pea-,6%ġg@‚E%ZwpAtMQ57 vvkB"┰]Qv7;ȗU𻓂ʙ9Cb[U Jw6Rhq?+)Ys)_Q/<4K5\)JcUc(d -s<+|n;Pi7m{ D.w>ʓ|)L=23fĐ[$x4?^E!邟NWe57Ɗvƙ!5ZxlRWh>pԿ+iamN%ɳȾƛ$#6^暸*wkw`2M,mJc>,QbbVhA3$Wh.lU ih5'k,sZz 'z6"KZ374XX wՐ׳cRSY[pDCu!c> űa\2@ Ɗ;q|^٤8AcYXޚsq%Dd>u\+OgiUjQǐG볛HK_@C`1d=dj։oyiEsQhM Oa , (nLk5R(W{@qEu> я{z"&@Xs金?y k?n]YNXXeĚGc[{c6  vo/Nd[4^W32} ~i#xb&C,~`M,d+X`Ӕ cz7|c["ixn+{;vo Si@.aXY7n7YY)̏Ȣ꒲~  9ep_0UǍHi_PO|x}͵&r ?WoM(El#}SpҎQa_xg$t2[IQ2(ܸ^A֜]ּn仦Rq`tI+VVYEV[qԪv˹ڦWM'=ER ^8ܷ` Qb?^kՋB1_նxWZ9A겢nr&} |߸[(fhNR!M3T/y[$Q wZIcSc&8Ki%Ihf且Wbup K0Xb|ex_oKl8&Igk mT 1×yrpP:ρsfS'هZθ8'ratEt;x"#?;3 ulׄAdKq2)lnr~?h_f]$hRn(K yl{WՍ7v=xk3D8j Tri9Kȑڑ_kσ]6'l5d=fǐ+ (b ]r ajQ Rx(0H;OY9p0.`2DEfvZ?Fe4;QЅLkB8i'hk1skteV/F<,3n&L*qC7' h%@wc[o\e~ېcUW܀$Qt+{*N@/ ToqTs6U~'Zu!ntI! gF[V%D`X9JufQJNĄfA[탡^\ZTjg障UͬXI9zPiS[{BZ!/Ps@<['/Zsc۾Z(f4:]hte){a )wl9 {ZCTC.KG mE?bRv|Q{@i_B?.к#һF0@bq+ּY@2%Q֎|WD^?=|g)4u؂rFq'7Ԫ)2pבJ(,09҄H%bav qKODcg0B GzE*UeRͳI%ū J+H'eTH5_"U:0 Q2>cDe-d2U6>4*+ 躀Hs#nՇsT̊[SaU >e5騭}S9 yMz-Man5Qa 3*^Ik R~[ xe# g kjL͊F }愣7)]!,Nj.{戴:D'߲הt81_exF)|2nM $oi+"chݪύTpqcY) _H3ժ[F*?LLc!pTaE}O6bSz#)o,`Hn 7@d*})n/QϪ)4֬]ͱ'A~;T'?[l0dii,m2d3H0*iyh˓kt; ( 2iT(R{]wE'? i_>+4$\y3 $s#(un2 ֹS>w9 ّȟ̐~C#*|)ĉ Ƽ);o[ASA}X\"#5cFBle  to/#elšO`FU?|Asx"P0G'fk\Pr쇦]]%QT#l+2."G*&+*b]: fhawq- iUb_4A1M?r]ޥo$g>.aN87/!F/F@zP VvoЂ< P)-a{++̇LJI覷⨤%˒O?.y]Uu*^g=rW2籨n=X,JW"=147g 2S5'/qme "hM wf0CI!qKv^;j.%!D1.yFWsG<ܹDM3f9WoLjMYajAV͂-kً;gNɚX)?U!s)#UAo0`sSR6b$oFIb'-Z95B<iPNYWE96s^?7304)g RT- i&@c 7 Ck|+t.w!Zv"@jޖ7JtqvRWB/  cz=7.QECn#5JpH։6#6"`L@I =;:Jh'sC^f/JӞW19cECj^7u҂p Y0ڢ[qLf2tB'o~-4Mg?PS/pyG;k-JrJES 5ʺ:=@X"_@( )jTM_v@ yA<2rqIc]ُpe с1Q%O3oQiޱ  Q"p q) p Mi? aA]&q!|}vU-Jۼؿγyċ\`|SW92:3a锞TspGwhq -$GbE>GuOhe>C iFoLf&qIVD&{B>1_J9)?*&Et#pi.(%ȃ6rgg$t $kZy֮,KMbU͒(s$}iP[ӳ5ν!)r*_jUM٦h98M1x`Hvp=O'v'U); MM.]>)p@V'{jfbfSy|&rxg$tdl)}Hx_B]eu.e|_G]'LzWJ&gAM N&޹tuGs=bM;#[M!r3Y *po4ZRff#\{SI ޕ0} tUM B5JeVz.HD,mU_r 0"0aU5nkm~xjD{Jӊ@#!4&rȂF]t+k)"e8^"S,SP/='pL3=Xd5(hh̉@9^==Y/Eˆԛ 06 $?vBS G^'e1p~bUKCE?A{q4x~G<ymͱ;-U[ZaZTݱ OQ>rNۣ$=liT, P'4R_S0oKi\k&:%گr6 ^C=+,RcVr獚"Z[Dh0F_ס+jX !Rʕ健LUY0ލ֤]a,3DM :ZR8G"`l_@M Z;iIU>ʰ+fFӟF%r/߈j@9E,r=>45>,¬S^%hrw 33v 9:_ܜiSj\҉ࡵ_! W{ '^ դ"3wwl=Jq޼$U"= V빘5¤ky ʉǬ)ؤ%`rmO#)V4,Zw HMNcI/MҦ `݋q`UR,h?L>*I"[:.|*NGh]V4>sVt'1jQ YiQv*%ovvvhi*{PbD9Lj{mƢeyIB({";9y].ԝfH3sĴd6 Z:\ogF{ɑa~W1/B FсF).$yʪ86 1 ⢘oy?.L< I\GLmΝ~ʋ[Iqg8 `mBhRUxguR|%kNNgݵ-r(c=}AkʱZU.W=uAY"XWAYF XH8/&lcV n͈\7jÌw³ʍp/MɸMnXx$UzN7WbkِB-p5~LU>:5^mIwbI;}-^%0?U}n|T 7vP>¹/b Yo4W#x.?HP9b cx]Dg @o1/Kf5۾uжM[ڴ6jG,i(;)Q,6c/%!ԐDIJIei-AA;C}Nڔqlbk O1Ld8fm6iAl{z._/";0!YoNuN!1uQ; 9Ԑfz0 N c418}gvR*L ĨO%oV)eRL! V@Vgm)6) 9߭0w}35XU%.ux1e`%aw(%E a=Cmw}GcŭTYbܵ?WypN>)4w(N1H?ݭ7NJsmˊyHśQuQbP6ݥ%1V)8W0,G#c, ]sb&Z4MMq9ȺNr(9F zO:NXme,9c/'|'֎D3}a,N]J J5A[jsMu|B͚DlѺ/hgS%\4d`p(LGKDOOҎ ӖOCNEK'AЍ'3f#Xؒ*6;ɇCM{,. "f}C9* *oDLlx R woxm9z:lGhхUhܡ``9'2~Fd9ؒ:`JNz{4+_>1->>o3$%.;s9k MV皊փ3bBV c)x,0/OHMS/A0G;IHt@k{mK&,."&h ,|b6 i]F%PGW0} F|sg7dV;,{ѕm3;N9ɪ||=WGy1zAWu)41K[/Js)`VI Rx+ ezXÈ!r{6`!w$O(km~?ō^L3=656f;k2?^( W7hJ_~}?Mw|a(DPB#4Zndfx qc+ |/+c J>׿TV'~Me 0b霹Q!t\5b2S >T(Bw_x 6M-3~Ouf>eEMu}mΪ}0zOv:Ъ4п&6:Gc(y0Cwǜ@%b %\ǯM!+gk Zj&i:U31H#fDSp5 C搥u|VgYNZW(I,˜MD Q)9>b~ws DsX>wa~b4#P;DRzF2}T0sP *NUe13rx.B5Ծk0]dM8OJHW2z\,"zqN b vBY!{_ '+Mb~VͬSaq9{Yaѩ邔x{t!5Ő92ْoCL{`RlM›EWbmϕSpfYbU%%n^+-O .o5嫀~ի%$`)9;k}tR(tY`eM "ѽvh[h_1HQ3hpoۢw][pA@7:o_дIXZ&O 2R>F4᳕ఈ2ieVNr׫a~(n %`}`ˆī}?(<^ߢ\}.5hVK]"4W.9O_i2Aٺ>حkgeUna(V~'.4OŲp̷{OoZSGoN A0S(5c*X)u찟bPyANǓBq$%tH;Ȃ[64ANgw@:ϛ'>slG]OܻBvmgȑY0g!:hW*3)Y)Ib=W'[r K*6ۆuu% KtMn ƈOcU {Lcvz;ޑ{DI;*mC)zy_AE{1+%o1ު#;dK1CgqlK JHEldcy4[Vbl2;\rxh% h zՋרgn8_osQ3Պ,BKi v.a"/jnʊuGM2Oi#'`q Q=9ɐ<97B}ikiU#pcF6;gHZ*􋹚 M-)hƀ/OADMVrΈs!q;^P5a=P651WFeʃPwL3h)JThT:CCŪV:am8ZSM@.8Ĝh{+Hi@b n2j|#8M%}-*cq-czUG̕ۈ 3]TLxny[S^n27_ǁivCއVS lWʫ0:/kmKD₀?^dԗd]~X ahz㈉*~L>= cN6l+8~hiat^x)vvR$8qT IN;ٴ[C?505K"ιeMbeYxSB~& ~젒j@VB= IBvXIy" d&2N]P&wTe??|)9/G#/ @=4;m||h3Xa --aitC2I|YA,T .} X?VH7+U![^I4} ^෧ED{ "?z\ R;˰2V0_K͆&b6bSm,y JV[/V2YGj'#M>-YgZAfm'oo m?MiH5'ILЀGt+Aܭ"3ۀl*GHfAڑ@QY;cu Y̏Ģ׬WwbҶ F^).2mWPJOҪd]!8OaR®()n+,j'kOB/m^%!{-r8D4E0AëGJ}%$^aWȼLf⨓ub5ő& 𡪑[gwr6wm A`~Ps8m0N+9P:'ih1E=t~~F".kQkx euOH m%ő5`{&1XSE$2Ȧ6{nr4|.R898VL~`/}/_=A>Sf$TvO&~C-oOylmz?t*&Ts~5E2^%J0֚O,?7+#n\]CWGpB'x)3B!~t|3s -]b˼pƍr^~o#_OS2b0Nk ~˓֋2y$wx@~?' bmߴ Q&>)ڔ?}h߫ MܔJ\؈4&uLʑƾw*[`>hM*"`d:!8㹂P,^QWZFm~{/L$G;[#(?+6_m:@A%iO<\+49,4D5JuX(3xvO>MSsm8-Z}]G[#[Wl_U FI-YV5 ÎO`~ ZZEe1P.b,CD95 CHJQս5 +)Psm%M.4T~>&O.Z-<04hY~RYGN׈Uƺ٭@ 4vN)?DggJh$9֌R~z8|ъW3oM/W(Ns*C_~ WUW桖j5φ7:C+hʆW9+-8D<;Dr`/m ({2ހh.@1Ā,svR{+4uHrBjS5Z,fS7!kI輘`h zr=s`ŔVm~`z>did&KKNog&\Z #Uko&Oꛆwf?3#03h~5- },dM)Jw.ں>*d>Ӷ clko"@7E);$!g5A{:ąvO *TFx]P*^nlCvi [L4ȩws&١lb@,b:b-ͿG6];D X_Ҕto-DψXCUwgɧ=P .(#j\UH ;PiT $\%w/.rWzQHyT/Ɨ1 6Ek {'W@&RMg&`SVԙҞQ,V눴q<Gzkڿ_"ֆh1&/xOEiR/ E1l(!<Шڥ`5B(؝N n7{Zlxs:hh6qtj]]{y0{8ٶ7z֒:~tn[_,0{k fHŅC4=o/JRRNrL_ PT6GqlD5Sf*wcP>ʨ'rvRj"[Jb_ri* WqFͦ=sXyOׯV7F414T Zrj$1$ebWKZL4-T$lx]7[x=nAqr g 2Dzmq >jRBBl8I)/b)OW,[>*mA" ^^CZ H7!RH`vմ/G1ǚҁ2JH~u_FG7g#{"IDʟ Y^@If)k6I"'e3^y?]Bnb51"ٯ"jLʅyS\g6ėTnݘ=O}%4$4şBe!vs+(D`=_ѯ׍Lhe͉@s6g( `No#?qk : گ]moWkiGv11.vץ\X2+b_^#"%'n\дzPB Bku[6 8DDf&\V : c{vM# ~MdZi=%; }o1fe׻&"91pㅙhNZi: ϵuA7&11gƇ* pxCğ \#xReS~@pOVϹjlDrzCUC4sI(jo\n`!P`ZȌx=k僲d{rN׵-/ S@SZQe.7YTگ;:סhPBs tszU!{l_mSk9܎3q΁D$qzR̋ ~]T^n5(݇P?C/}(M@\Kdt{(RE7S/u!ﻈ uW8[fMF(HI hLAw)tgL [S$6:B^X]NN_ĢLnS PMXO2F ;h6(^fn6$2f%pTMMMj@Ps!3k{?E82XcZmr PNGnHk[2*'~]zgn}pWT7RN(~3-QGG2ݏcAb`Ltn ^.jv(NHG7Nʱb^VV"A6k>]fь'+lfbFa4AT+-ncl)gR(w% 8ftOP#y:릟zC:6@>qP6ܶ27p'UCBunZ8) Yء\ٸ9ܡD: 8o%buAnpz\5߁ȮN_RL;5jS"/rzЏy'YqQc.532mO, BoKIPrXM@:-[d+Kq⍢093 )7k-Mt;o%Y5I}keu;=n~2UvPvǶCvC)m|?J ?eYHSAsC>7ؓcyKa*h2ޜsʂzTG2sp';:E1y;3xOSb3 c'A{ߪfz$)}l$p$a.~i,'t͑?VN/-<];# 2PhAs3Z@/_PlQ:,l7Db8!F ۣ{V$BܳKӦԇTH~ɩ@\#"lcf ]jPO*4N gk_R3n]*M[p נ>H~%jSe> +RYŋ>/}S=-QUH$IWE싸] jUZ'keխ]TX4#N5G b#s!2 |$7Aiu^>HH'm0Y~]zmCn4۞q1D^4_o*t;}֛ d ?lq \8lBeJ2]_ӶM oUC'ȜRWp`+٣2ZĒuS[wbFK"^G [Ў H͋:m.F.j2H}rk\m&fEќљшV# n8mgxeF߿$ kg7k_K|ә^O[)SR8ՕeB_j훲.El `D"l"]#6Xh_]5&yr=tѐ~MWc^yAH+| p1C ="'v-Pʤ텃zs 2qS;}݋4VpR( 9Ω1V%AUt2Q(̂s{ sH#Fy $$O yb#7bLfbDVrYB@ >0=@Qd1C'kkR27t?+ iZ@t3.;׾։QV pKdơg', | 9$p''HTCo&Ƅi.tJ]nU7'oz}N+ 顠z[_0ݟߥz lA$m5Mf'4GOj-\P # ׳L+y[njFW-R4ݴt3Om †OƦb5_hLDޤqK'Bc.PĻ^W߫6wM_ìlS% . 6gOSW JMVU.]DSONAZDkoJyc BœCTeͰ0&1{t`QbA N+])t|B!f x1]}<(Q.ڋJ~`ur#5xYUpoatlucU'덇${9Fgwt}Uk!Ƈr@h3 2rVx "vtD=l2RLZ@?ۘN^#D>mk mQ(<<:sE ba68O!/^Nڅ(=gYKKj8Q?N-A %1Lbp7)?Y:t>fC"|N cgȳW"B]-XYjzSDIh,@xOځo/\GazKyD,.V & ć.U5s%wQv?=E&Uqc%w+dY*ߟC;1mS"3>gy`iҚ0A=vdE@:Y5MyT ` a, 憆5maW&=doC{ye/mmWB/H<帘!0h\ݹi(Vg)f9=qT6U{u5ڥ"o+'\e>PU{ GH;K䉋XI$OfGWջ4V,9e'yS2 I撶 w&tD91ݢDh4?VZzT~Eb0NYdb1/FA#7okTP&F ,Nnmo2*/ WOI5GYƪ>V\NhDVOmpj׉FbW<)CGdzӝ7k]nv 6.|6mWA3 yLh_8>(W;ij"a#~BKnlہd>+#+%?c ^$8Y7n31ԘaZ4 ):1U]0.,D~m-x\Ef [gA]/}ce/L9+O)8}Zlglw4D33B5wVSR(ּÁn^i_'Nu_mZ ܴq6fMB6m4u<\gZ|\z bZLuKu4Tt a+ΐA5ÁJ}8XAMsM}&9gj#E]Hb i{cĢksEUdj"sq Ȯjt6Ak*Td=O^˜_n7'V`I[G97j!jMq-&V%l V8qf+ P gr}axkDrQHfjEcR̡6&%(ɟgv&W,xL%Ȩ&&p)BEf1[.ym׉'*ih4rP@PJX0v^C8vYk3fyA҆{A$W܏K4҃9G'=8 JmKq= 39كk hX#988ԾU~a3.ƫF*pͳФXj(ԙAξ# 5z?S@ts/5|Bh@fOJbT uekeUGڟP?3:p`S0p8 OLZ{.n7zsQik1B"5(l%4pvŰ$@*\hͪ )%^'D6~dVS9J ч<./$ nt=1MмL2cݐ1I? [ 5\d BsP"^HS'MqJ:)ƌ:W#8p]n\S%B=;н!-b HMo 9{CP5Ė}1<Q(+ʖ?#U8SZhߔ9xqY.Q3s2!E @[%X<:IPԃ!!E+ Ug&?lsڽʢ2AA×[5\I*w6K,LL9Y=abQz ܦ Eנ_V֑\mEg&Eao 'F_S&c!Dl@.8GXikPGzUR\͂աZ55Yڸ6}gA;]YKJ %RxD|MY{(^ۣ@mf< jS/l d8"˜a-=fW> 䶎ge* ]nLuD9ڴw [0׷J^i^*M)C p=J-=%7 EE.3/{Uhr篔K67`xS:A ~9 7cLqG>4=5r1$KEr}%sQxgq_C1|GPkMo\3Yu$j+%es%GF#V"Њ;2Eo*Kvq)we9OkT _wui 0jg?q@)h 5wHiUms;6'|U8cHSc &HTpb`r.G+[]E XNP(rW,%"EB]:n:v7THa/8cgXIc&9gub:VWd5iv-RXrFxOVˠ@ 6e,~-, I$LN1 \$ݣ "yj`Vfl\v}3YxKZfpcIU׺#OFpHk6#Yryx]."\X< aE] tQugLhѢKNfmJP8slA\I^ORA,\c&X t.bwV3[[#{S %0.q^r.X[+S׶J.qJٖ;؇E\]|FddYzkeX ll,Ð#C'lb0_.\QYu66 HO$C*&M5&^evxu'%/cAC 1,̀ImU:dʟ#ȾI4uBV!cjBl?K} 3pNto8胈 CN}PG5Uё*\% ؿQtV>Ć:Kgn tGW)Vunk=wr[z,P}H2e<.YH+U`_<*ezƍGqz{eOJ:uۘ^G(E7L_q"t&(֭ڀmi)e JxBu?ṛ^(JL[t@mXm' _T(ʌ0Ҹ{(n !]s0&,O>!JE I@_@Ts:Q+O5Pv~iI)'m~X`pUcte-l,05 \/(fmYMt0XIs鰻ׇ|yA{>dTrIO?wRW=OIWIL>QgxG7cWM 53vk'ϠlbE+bHsX)Ь4dܤ{~%8OMUZay)>lΘ 5n78! ى9JQ2a6V%FHo', 85Gi:3)#Ih*^s҅pYǾlBqdXyocv26ku,1:pZʺo2{b­8`~~X'%ЙS5myCr$wT9˨@]g~Vh+,R_ay:wc.c:` hhQ LT؞D"{5T Tv9br#>FU? RN27ɗ-ɼ{  ۼXJŚ )*s`U[EVx+jm 5}D*J^dOrja[EToXI10fgk=jh2 f*O_n NhcUDۄjVN x͇SVRNF}GGombK2/h&VP#' 1nƎk fYڂ~Ig+Y~p %ln)m5pb wva0D*G.Tw)GϒZ^$/)y[6𴀛ȴE`ѹSVs}1="ȠRSr~[x^\C=N]/V_? \=eϜT^ea[< b2w`"[SXwPOۖp7 #dS׿IÛwTFH O]8)- DnտXiOTֶz^1-+sZ"JaJ '<+%Pl$p=0`'ΈzHIC'`XA0W8k& H*-Ol^u^Z0]5]%A׳zZתݟxUJW-.ʵ=tiiݝfmp7MᐌJ棕x`=gL n|רVfJ19!ƼXˢK-7P5-vtndW-Gg>:Q>&+n?1{hy`>5%Ǩd8 q \0G)ʚ3)p5ĻtRWy+/}& Gc&TYq ]#L;+sy)8ch0^Gnj;(l`m9@-I#%.ƙBXBk NSbB0Zi)Gj<jdxd\愸$GfaR|@J?qpT5hߠE@Pfy]G|>U 3Ӏ DNH)2LLTI{ZXFdq!7^8]O_PtEN1;`ME=1WV6h4BlX)=\Y9EEK80d]ς @+^\ңzhx|D(Wz)*zo'+UJybdK1o8'0jXXrJ| EU K~3v\;tK'Χ3Wb#nDa=xURka.>fF1ߔ2h$IKH؟>|UԷ>UI[x0Y%}K 5v\sFÅ/yS[~h(;G j8 pU]}Y2hZr)1K_3gوvqX1#kw$?O NɖO<"ռ;=͊um\qhƦc{IFQm" 1#E W $'S!_9U`$ؖ[Q8d ?MiN.L/{ gxJznv ܤbG Q/ ('{ɯ%9EQ_"SwY E߅b9xAB}Ya X4vc,_B5 UZH[Xꅱ>8F y TlwyMn\{cr]SFu$ԙhc>ֆ7qYrc!1;mSaa`<"%M;t=s1o'֡Tu$"b*UJ!b~(v2XP"qLV+C!DtTɜv=ns^TmHFr?]X<|(Ӯa3Mku(]D$!Q/}Xus'[0/2tqIFtqEF! 5Vwnsޛ%R U= \\O.\j+\Z?٘~x@IvHy m{ ;f v[Rght)+>Jl]F$sq`zwWj׀k53!R̓POb_>1X=6Cf}o@0m>wە% w(eof(;,"n_1³t#K~/:uı،“}߾6CEm~4 Q('.!(alrYp[2ӋvXsz: #GBq*E~+ڽ֞)sBZ5#OLt7Kћ[=㸱Jaql)J(JC$,iլ]?*G )cQu0Ÿʮmy.V\ջ$.½W\I iC)S]|ۢY.Q's=.̨7żiZc5|cbA5Qz*MtB(AV}a{-UGQ;W}I' kBI'oqPj8捄%pC:KPaG] l@eъ\<:Ĵ|\>xCrYpAwS#sgrjh>N 6MV"Llᘶ2}O'8$~#՘ɘȽu7D!$q4ej̻`?36|U|TKH^xwɓ1X`Z̈V::մq#YWP F ,DJ3,@z,$nN؁肨 YfjK.p℆j?Sn4Di芡 w]@R;l:wC >Nx?F;:| c+hSvMŇNJ^^1Sc7_py,#;#f[]v̶[_3`8z`g:8|j)\2izmԈtf)BƳB@[@ 泄mzrzČsƓC < 20PmH-f-V&ߤF+o *C jK@BS[H8- DW*CDt\fy|vx{p!shGM6셁\Ό284~npBw 9nMK=_c>-3 GHB`aW?z_7k$?r?^O؂y1 ܝhqwi")/MT&;0:,ugy!|ls)`D3,;'l':Q[X34E6i oN іoHANn~ۆ{u@&Ds2z, :L S&q.z'iE9Ȃ*R<3}>X\CDxH|*}$ 2`*j8jW)NpZK.}ӱy$Y8>=o)^B.iՔcl# D3S7V4^ZGRxVkءD ](1ĩ~՟J :_:Ѣ_(}q:T/58 :ߞuK4ۘzH׬[(IrrK%R+_[k8eC<Đ!D dIBm,Y6<  YA*E~!rOg 0;ߝɡ^ d7VO ;?EQe)-]W\R犦jf#ՙAUq;q\vO?~0֖ܾBU:BpIr贈43"?r&4#'?ll‚]\\@ IV_E-P^~&4TcYY3;9h) }k}| ~!CbGhR 6&/FDjݗ%ΎmY Oˊ`J=q>" }7{j<*&+oټ)eur?*NٷcA&N/xe{+zul[8T!Yodi0r|`1łKTOƍ1&HG"^YQсidmnA8NbW@ G3ϔpUV-7!9iw Ti lntcbEڜtN×rQy,`Oin .ַA==ydg(FRVa#Y!Q?.7gyM{h<𻴖I @w :{DtȐ ہ5WNŦdGy_ФQ ޱY Thj4A%?nOciS|_܀r!?ByL_@h]#ʚe{aCpUr~"J(󉗷D[?Z@BYpg{#TTzӳSýH `HJh|Ǫ/5=Boΐ,jG9io;`+Zβ3op7:+}ℓRs01ÐS0pF|ѳ ͘5$f yÿrYv)P%ٛ}8-wdR#߂oĩJFy.YkڧCT &bAuBqNSwf2<)w̰z#X=W{P FVPb|hA:_?'xg 79%S̚Lؕz [dΉa\[xw ,u]È'fhȱݗI<5mDm)=_&(&m,[RӸEϪٟ\rJ"ijމیO,ip'Q|[a/6'cy9SwEجWNxkKbOO2mJQ axT#r&Ȫv .ƅRPн8.9єE֜"Y|s8;Ҫ-8M4up+y! di u}.Z[1#O=k_N bW8O ')EQ2Ro*r65Ms+ڏ y?=i'P04;I-Gk41U={fm=QBMԵGB#""&F2 ?=bbA|HA<\ԗ Ė(A{0 #?G>/*9y9qBXK_S7M )Z#xhk _l)Z xfq]PkdzHa,<S2E}=!1)ҠWebr&unOύ=5+fCw|DCVR9\5"(Aa>MO!>vzN7D%U) cNOSMxZWuFg{N؂[ M 5 d OS%ӕk"b>&1ʹ_}ve\5+7,7LmyVs kˤQ+x1 +6c.Z'= %߶av0 iq?u_dj9|㾄Ux([;=Pq@Gn%"1e⏀&ԍ?0%IoB8zzu o0}o Z2W.YȌl4rƘh5%}t{rȗG\tK GŚg-*:)ކKmsƒP#?W:2$gǵd3K ԄEzD.:X=8/9V}'S~׼$RB%Lb[/x{3+xZӏ73m_Q BMwhSX'KC\J'U;V(TXW>fdUxqF/ Ef}r S"S7wcn]$-aDkxmQa>W~i]Ͼ<`VBm֛>SJ[Sa@]5sGkMV_Drg~>/P Td2_YT!Z-fN0[D[籭y fz\]cBb!`wٞTYNҾ$d y,!( a! :ޛjսtD6nN?LZ=7fyQTBU!m)'P/HXO^?{i!Cgv)B!"BO?;{*HkW7j˳z)K\6=U0BUqF.4;J}};QԌ aۈ6ݩwEwB%$JFJRTse2kqHa=j:݇sp&1"fyTt|ΈfKO>"w9*Fa͓}6>СBCLȉ Txb^,' YAeHs!X:?Ҳ֑ǎB*,mq"Wu£W\4]T3h=wCy~W5 (e (P#yr^?Lp@K.!V lʛ3͋2%2|ö2mLn \[Y̬򊥕 Q3.ovҌjSQq W&Jr㩯gX@L]HwkS?PT+ljXJyu{N R!y& *qQ_1w OD̥YKydޔ,ľ`e>%[c pTˍٶn3޺Ju^ >ࢋw_A:Xۢ<3k8Y(cMn`j$ݴ2{vw*4Tca ٗ߰k5z֯;$PI #d&UdxgxC>.1伃xF|]݃ls7FE7?;R^w,&wW!̾iV/;Ed?DV4Vx^KǬ@JDA)41V]c.qGܯ$=JUhY6eWcVC$,M˧Q Ǟ'g'CS]<p!&L7sqMB;KhYG0vFTStթn;IҚs~j|kj}PPQSޛl_!!&$"lnCx.nG5HyW;=`eIz[H[x(LJZXjmSoK/GF Ladd.aXW}i,4!bFIqJȃ JlpbM|\SyN`ѳ".03pTM5bBO% mk4זr9t O[M,LHaXZF$ݔIn̠d`ʶ.H 1j4cψ@h *uz~uU =ԗmkgofQ{EQ Փ8ﰅ]nC3j7^wT8&e7A<9^߅` yN*.tk4κ}?!e2Z:9J?O*Y}&;ƦӼ_^嘏3 {vnښIR$m X9f݄kRӉMV/oh*޶x*6·"5\lӕlɦTB48[b5S5 d$$vL؁F}$w6BY)t2.iU=Aowd*80| \@`[K&£BUҀ}w1~xhN{'GPΟf RǹI+@Z`bw,Sl&UǕ"\? n;">n};Y͛#"L^:]ps{3gKǟg3R>t6t1ցjh){e aЗ+JGP"+@gl-iU(`=̮!N1ڰUbwqNoh%Eo6vz-"qPH<tyNyu;cߒʸ%Nfdmui{g{Ga27xG|siHc.|6oڰEN5\і6㴲Z`JHeCf2?" =jƍP/(TO[u{wN}ȼd.Z. K "X̵/u1%owz寏c̨;sڦpa4J1V_+;{j ]c` ſHYoՑߩ 2XI|'?2*;p~c0OܠZt*`vD_{UHrmDphg1ZYNx;!7Zl)|% pIL`71GYe@v#"uБ@陷i9LdROEc7a(_d5<3_=:#h9dzz㶲o@:ηu0ϲ<Ɲz6A^WTmT\ѷi;9݆Kd~ t#XpfI=> Dv]ǓO_ *br!l eW2=zHNkx&☧i}S(*x-V 5V[;8Z*xMl&]G[[CWntJf73_D^}tQ _X}#]f9е,kyhS09c$bBLTN^IB1ӊֱHOy]/y;qh{2c>E85Ay!|x6.+TB`=q#4Gy4c[BIjkV ޠ Κ긣6<[-Io_HyC!Ȕ PQã`ԅ54E?~5xк/m!EeqB m ƥ.&-Xr,os"Q(5"G$a5≬Q Ũz3Kqğ(25xmQe63QHX}_z]+5/LѢb_di}{!XNBߍգU-kja@7dqs\9m3*G~V )]ndt@l_ C#liE^[Ѓ%(%0DOo}IݍhS0Q/ t:p)/KM5d@mwUgȄT^*݀= ݑ#sτ̄^ʄ "`va=ɒh7 FG+zMA6I7- $;D[Oa@`? X\УX{E%|XE|grq Dj::_"Hr$O˴rg+n!d6QMFM?'S'F9uWĺVnc&TYw;GE3%uSM:v*o/yKՆ'3" T9'9=:բӡŠ:E`}7˚c?Xa [c?a4,Ryh4 !ʨS;,Torb-=7Ѷ)sȡ QYתq_Y;xi>9w'Q$Wŕ1GeĆʀw*}a4 s U1ʩA,sp-Zp̰%2L~ziäy ?1ZY"03%oA6Azfu M+CtJ(>XǭeB ЌtU>*k{C c,6[ɻUdNcbƫׇ:?.hG9ҩF2eezL!Lׂci0Dޝ4z4XKf/;׀j+GoHsmH7z{̜ g٘dh`hֱR SA̭dh'*G\iH9>YϰT7M]; nٍt9 餸iIշ䱼Ȕ-G}[B ɷN((g%&Kq>~W(w(J,5*^ׯc3H;.kҁ^ZOToufuF;D} gq; yZjnaNUTU#H/2&F7$۴8#M +&O /< y1,'WrɚieJPNW<1FNˋޙiOEALWŠ?ժ$^jS޷{BW,nܟp`z~pnb >w~_:EE'I<'/H'aGdWv 9U!sz@L6h=J;vVBOӱaa.g{j,ɑ,^w %&y^ e/p)JH.iWe? 1cO`I^583AB/j6] y,Y%5+ڵAA3ؐ?* #C[ʋ9j# HgG&t2<\_/"=^+`Py!|)+'ߋivɚ'ӹ@% t+IrL;|IaG]W+td4 %Y8+?(a ==^T;-|W_O~KëÑD}cºh<a,`~?pnzqh¥ăf'ak>ء (M{IԀ-{EI )aW"/# 'kF DL98lee81|ń>Ɯu"uDC`!El9e dyrlG->Mq}ǽx8;bHSQZ.pm|-JH@JXYG;R.14\M_+/ldf`ؓ ݝEx7~+^ }J,Ǵ;d&+)V{:gԜt+¢A~Q|l^! h%$(S:[xE /X0a>jMLQ1E#Zح qF1]=Jl.T֕'=Rso{rMQcV2u:~Hs*p4t^wM K0K Oi+?ت* =HDe^9oj`CLG<hjnXe[O2P,sheoL}|tY<0Aqt oyo<ϣ[+I^-F)^eՉI㺆(%sޤ;9B( oiNRzP>i4{#*m)$>5=2O;UCYI[A΅Ww=> 8:s9mEXRojB0߳ft p\CEYcP偐󓞏D7}*#½ BPo@TKܺ0s噩[+T? ɤP.K좹a8$SXCWj1&w#z`ih gZJ k:}"mBox#Y1zOdH.W4`pL /}B-~(*:{t2πwwمWh}t@r26I+ʞ, blz=LDPA[: mΩFگѧ5]ӂxU袔\ٺU6ӼVHXOcD q8!ghl ab9/%P^zDh2x$zƶw©]OQBP+nEYdfi,ECȯ̳\?4|90Ь%lVCBѽ&X:Ň͹Ypy=v(L@[I٥ҧSՔz8BR QG*P[WmܑզS3"Ii#!1jZ"=H%"i a76EpXbHsCva>wӯLyM=C٧YŦBn̳$ dZytsyT`Gg.SAq8" t^Vhu9m'@ ,}p Ib fwN^-%FkEAćԶĖWaN|"Z9,#>Z)%L+y]mֵIH(+ZƆ;O 4aɅ7\"*`^zED6*P ]`{M&k6"ˮZ5v91y*ST8ҍbX05vj@ ޒ1!ԏzqBsYv.O A8Co)yyiGNoϼ~5v}ΙWOmg9Q-PmJo/4!} i`ҶיhI Ș;F:XXŔtR+ո˚IL˃Cq͒는uܺzcwټ2+ hN S,d:|X zX})&nnָeݮHtX}آbW5Lǝ{pQympS%}n ܮa=?uA+X{0ay"ݜ^bB8(c qSI_/D1eGwM^",y3Ca~e}Y ai̍:/}Jݦ .IU##S0f˼r蠑nR?j|9cK1z8>Bq,RTGm<) RMNjV2M2#`[$ԛ|] ΁[i-JLL?tZ+_ݔWz!lHBs(X8F`A.ozaIpRTyQU?ѭo|[D6:`IZ>-Q4tjAH&KX7xW ~S!@F<jѿ{b\ hU~t["D6E]- ˨,}L'Kw2^4l1+ 0Jح8z?U໶"bWkI_Fl!%g@t>um\YЃLͨ0v6t&6z_X8Ǽ-9HBAGG {"tȸˠ/:eb9Kw ~JI(l0udޑLTY~+|}ɳ(=>!XW йizLm^{>2dW#$Ad$&I$S*?W;-~D)lJW#QA 5DʈvF4 R>_xמd9Vlz7M4Zk(D#am$9zu "-DIgZu)bD ;<7QW*pUd!(*Y\k hv ns9Mm n[ )53}Bt7W[Xb`FvWz8 ;6iOPB&(]E0+^'3}jJksi,b"p/ێϱ>6*H,4riwzñ\!qk.'! ߣ*iнa$Zb->+l ~^ ؕC1;Ԑy][pW݆Mx~oyf,4n(HM!ve ~q"F0 t l񞀵y׸Oˤ'kHɩZ`tbJ/ ɮ)U:ScRAf*'FhE;(q m2.jk/b7"Lh3JK#ri%8o0QAyVm`taE *ElX"{7+eJ̥{@On@cj.$|PV+|_FC_nհXg}hy;76pQ:o/qhs6}.4W6 $éBѽ8; V?@\MBJYU?Au-q]BPx#6(sQRE3]a" N$#v%o?Q3M @ٸ~Э6^F+$q\2gcKr _4ԁ\O=/m0 AA,d9"g,}I!&}b(Rs0wqjFOуAj ;ZUЃg |84 g>a,7shNIEoP]"׫X>k[ԡfR\ӑͬ"u1@ܪ6^!";r68Ǚep/̷L h9@UUm*#Wہ /}8 Vt ,d$}q  JXe-%R3fUaEv#9ݲf0peͱ3}>4sAnWcߟ>D),x'5HoRR**k&LF*:L8f2Bs245&DHuyCo":?g[]Do[4YnI:qX\rhz+BU;g1Z3'o:C)AVy4#9,\-ikDхGְ!,1|WTRBeJ2%Yۏ#%ƃ96yBe \ȫ;$uqOhӁ`nǽZ 8MKa~=ǘ;Bӏ~[ @ o46ISжTk-% tCRԬiO ҽU0&щRb^LT 3r:o~3\%ٛG-pv`mM{;PʶH?k+V 3C7>dv=yTY TL.:SW*\j?apq!VfiAUGn߸ɩϒ0w'9 ~1ޖ4$c!.:存D$@5R)GIޞpud&2Ԕ!F!Kk74VmE+p$ {O/V A$-K%\Y!rf= a_-m9 ? vbEf$QpɄf#Y|G)bX{nPCD? 0w !.qdo m4A[S? ( ˢ^ٚE|2 lbc #x\hbݏ&m^U.iP˗љ":Ck<ʽA:6*oS،NVI< YZ^ 38!+` }crd*%R[S7^8&wvU&h9Ǔ̍0O&>'ç^dlPսrK|# ή&"us|2м\ {JwkRrw[u]\VB$b?7i>,ލXNI-;tV?&;8nT8,ܧ MHxE\Բ= rC)S)L%Upo%aMQ0wLqD6&~IÎEtٽ&!-7/%j⻾U-ݦύ  T[̅@5JZ*}1Q /w!KJ|538_gjwfF.9H;;B!zo~_7 :c]bFB̗|s~;GmTc.)]L/@H//~Q8\MK Wdo^t"A?V^I79Я/+=ye@<1aơ d]Hf8[Yn9Q]h9b$t{Ar/G򛖲aWqjD|1ki)hj#^z&¯ܦl›cBEI1IT&&<m~ƍ~bYrg~WT$?# #}5;A":3tiJA+4w 1޻ Q6ffkFgZr^<|a(ˠiK=ps:3sƨb'r[ w ]> Lz [pA=plHSʄDju](]F KM,IncA){F*|88. C󽐦ǯY1a"pn[9?Ӈi AAp sdP\ϒJŹegEuKs-&)jLJp g`^vm|y euI\lRɔfy,1S%PR }QmsKzluc.Aæ" vă^\pg6v0_=8? Q53]Ӵǫ*[܂cg"‡ʅ:]˭QٍLeL~6oҰB7KSK'n߮=+UCIF!cܷﶻW:@</5envS f"}E=0VQegKP EU ;D_>bء p/05Td$k+1dgLVm()rDi*koXd?j#vII≯ MB*ARg[ wBEylzEh-EQg"1Ky!/[F4y{,ѵw@<$hc?뱃Xn,] c`qE3"w+qQ.L`.]( $S/%^LR:b+Hx7h۟ `0ÉqXۘUG-_)A)|w#'`]4Wiij^xhIF -9< a%̲-^C: w?N%@Qly w&Ҹ A$y3{9Uw#@܂.gQ } ҰAK#FJӞ\TFG Qr0|)+ΘdcVV l+kζ|7{>0dܛ0ӻMG-93 LjUJ\,R@Sq!: RT(9w1 \t<gfa:,Cv<|\Hc)_gZuZ8]ꆛsAlvrǒZխ1G8iJHusgds͞@St)nG]ݥ^ۨ Q[|-F~zO[)+oQ"~A֨=A$mc8޶i"HA[3~J%p-y.lŬ#xq 摨a-Q{&e˕j]H|ew%իZٖ:opSV d ǰp.H9u8oz[ҩ=xՠd&FYNf89F|UIV4-2{כBq%{{P$44]Y]vRisb7TO>En3hLDTm dh(lHz 1%mR6_%?}2tk]m>2y=-J BjqrEcCDAxup/~5{/4B\w% r #tkBĻłB; ?}PL4A?jZU\"7]0ؒKda˗,Ix 4%h _dlE:; D㍖vë3aA.9==}Us`%Gxy&ð|MPW@_fZ dt Y3 *+lkN[|ԡCBz\2X1_"MJV ԽZkVϡaYü|u |6&Ā&B{P ѓ10nqo\9ř|4#̪?p׀ lixe -]pE!Cl2FxUY$W?3)?̦g𞻝gwh[EgȾ{pJ<50QY?sbryop>Ĩዅ F9"Ƙa?^QIPFh8Ia UO66hyT3OOf7)+u,HTaSS;nbԞu8\U] l/ wt]֖1LYBŅZS !x;{pqPQ%EKk8P L} LG2$nfiw?ӞW;,?*@qLpy`*Q X×;" T  q:ܵ&ݎ}%V2/j^o5!W泄qTPg yիp: E2Rt׳^2֦$ĥ??4bS N4V0V]6F4p9M+ϩoK&dXL[ Nwx[ɓmh(pEn,Sm3eoysF[L3AŹȉ)"Q_Z?x.J'FoD5ޢ@Fl&;qwJKXyY9}.F|zI2`ؚ5,ݯxiv#;nP9SnsG K/T&1 yixb-,ל[ Qk:*>;_>t3m.q/̆㰜V,Ș^T|I@&&dȸ j3qJPdh‚$I kmN]:آ,1 ke]9 )753[RM RTFI1.x2,T4mdB bH媠Oh觛nc>zUGCJijA}+ 9&B|C sZ>iq&81M'y;!ܽAX+$a>(99)[> >0mR2q6get&)Cs UZp)ٷa/D< K{YzAG8{rZ}q |TqqG~t𧪞l~56 'Sď;es9.k 'o٨i@"{5(H}px*"Eϑ{1}=цOIr`d(P撚1goZ)U+`엤/=K@u=?N<ɒm6SOG~]y\:HnJG96B{jR2e3\9Zc{BaO~^2@00S_T wgǞ_sP]| x6-L)' c.>)ڤOA\_ tbLęP2(Z=9lR0> ?].Gp7¡G.m -Ϥ0[)n:OZRsfrr~4ayǃDTMC=};1bKX:W-t;.48+)0KϾmJGlnzhwUgH=ݶP]9Gbv,\zFew2. Lؙrcrs 72[Q4"'bVLKK8[>CX++a&06@yr"zPw- [" k}̋Hl_ - ]q $ w෯wߡ`غl f)1'u_^IYt|2MO *Ysn աmD]}I)y5)%9y!^\) ѣ%mH hGc5 p!x{TH~ȍV4_|x̱yG[qwg֤. w꛻.lDdB|$@: -`%y wMM.pW9R w;-Kmzn4?vh])[W5(I 9zn^GbI~m1d*m#A⃟GJNtD|ZzEm=Cts+w'7YsYK2 Oo hp9@wX-M/c`={X/H'>c chd=nHQ"w\3ބ&ٗWg:3]Iv!벵dY,``=UlWaxM??kC֋Y6VpHqj(I?NX4B, \RQ!sqѿj;Ad'gK}:6t8qh\ᄧć,[$|ɄSS ߈_9VR-Q|)ϪQ/O쓓~aR3 ByGgPCO:iߝp^UԒyO>3ـۖ2eq/U{-mHD,c"GRdb[g 6&F~۾oBЄdqP&`W 1wiLO = <"**v8gb*glQ!56qSBʄ|ۉJ Z3.o-r&;jAHݚ\ ?zxlC-!GGjC`oV%.$-"㲦oN׍@T|:Fl# 3>d̆ ~։(oY)7Gb*P:WQ4oL{jAՎ-b1Bd`ș, N_t 1A+gl:3tg5%s<.ez{93AzɶF'C#s } ^`[_C{!N]$of oly,>ز!TW;SŖd <ϕFʫ{>7W2)ƞsz;_fv,Og@:[GnHK~AhMc kaU}Yj1SLÁfb$D,)21e/UL>.m[b\ -숛ŔNFnpOMNP&Boc|-`HmWT$ N1+݈(I"ppXD!ˀ+Pn"PM/ft)Ab.3Y+ɶ>잓lT\%yv>vr8O :쾮HIU:ER#s.nIZ*8jn˘O bwN5v E1&ɅTcC]Ɛ@Ay{Sނ&2KZT3Y_a Do)e`,]|w&.-GJvBC[BNM" hm;g9ZgڅXmT )Ss_(6lT*]Pl{d3({whkaR3[E|.xs3C2렲mrm8X>@ŗe•^rE x3U!U>։]'#ӥ!]~Zӎz\X$aH"$,Mr7Kh#4˛K~4eQ%e&&&ql֦|&[ Xt+4 9@78"mV*MXDD3v}EӸ[[eoCI33*%)]a]y,M7X삌ޚ^Ii7&^wÏ[)I($LP<br;&>Qe #;H7As#\OzapSTXduR9xӊ&'U'/3}&A z[Dznaڈ )B{sF67-#ӂV4s҂ĕ9[-BlpVncLG跤 ںt592\ U Wgdy6".yTڙx^ql-̀kr1OJ^RcER8MޗW2voϾf^.K_sֻ$&M@ jnmi|Y~kFVpv1֐r6-)UɌtpm8n>^g݄BJْ1ps(?2&xM2'ݿWvA6.M91u]5f|w͞^.CBrg>Jg>J-6Ifj6n8ݒPŠIKs͟CFtUc$Uֳo[ {s@.@EIyy#y7TKs{Dk 7mSs >Z(Rś@ۓJ~S 6}BHDŚC X-LÇFaںzw :q2{oI e9-\^)H|anOBdx£n'':Zϳ<tek^Ra{ӟE;$d{9j , }W˖R-yX[5-PLF(TBAZ"Hz=濄cuZw+ VѿMG'AGߧEő|?"M1ǩe}UbCiu$3WO e wkAB>&Ih#K:6B uv,&Nlu@=ǂܳ6>Ǵ,oSbo1%mVC^eɩu~hR 7ZϺ-"6Gu [業M#BT7`.~L֡a^s2r.)1Ovy j@|zָeh%.O6a+pV\3x\wJ*UB>Vu`'1ncfv%q%uX5VTPf#Cw{WV>Ry=O.9ZU ns)sHF A{~I8*q-Kbrq3Q̼bG׾C#P4\9B/f!92 mߪ_:VjZ?MmZ.sU]P@|:%L&a@lNa#ϋc $]TFa 8ImHd! i8AlQ\݆ L yԗ`y;di ![%7qLa^әŀB_'7+R#!نĽ"([GOC5ɧK"cץ8Ig߮Es [ dw8IF?W_r3y($4j桺HЁC.XK/)l&Ɗ"kϿӃvH%FUX|yA:fpTGNBlLZ,y`fVj>O#F,)eё\Vi+_xN$_*1 UܨJ6. rE67uI4Ro?7$ue QvJxGa)|c u0&>ƴ󔯜gI] |_.H/F7ND{ Q w!;Śmdw-'(Nw>gLV>j Z9s{R?*WH2/z8Q@-sd=h7dkB889ޚڙwXSNtO)@J;ʣv**u`GF.V1$l>7F:qDphm+܀GUmH\t ԓER ܄^KA㱁u'/ !䔴̈pɎ"fd>R9S藲g%UBy9eOP@(=Dյ-sڒ;9`m.^e?Or6 pLz+Ouos /}z) f2-"saJ4e#TЮzHyClG^^kwJ`i695X?҄{οM8lZS{BgNXRI-oqo Ҵ×y9Ւ_U6-)SXPʿ3\'m!.+huG[Dgyiܢ䫑tM]!k0OdS[iUzχ1[=8|Pep#|N6mL^{Z S*O绲^%j,C0T${p't=IhIP6v)`xݰ3-u?e}`o|'Au~5#k )6F߽u2pBpEV x";"*WJHkS3_C`JRG+1!٘{:Ѯu}hSݼ>~f]"p5@4&e)0x]NVxl>916tϧK _䵣pe K6mZUY[S{75nwdg;F3eJys/w|hU(?/c3˒:G,%VO&Uq7y!p90$Q~5}gvCb^7s$DLa%K] qRmIda7ج9 bޜ̆c:G~R.y}3lDwD0_Qq^ewhq#)/a.xӬu`&҉o_]f$Jn{ȅ&4VgGJ  $eq*؂6^q6rhJ={R@p *2n|H/H8 Cq_FLvs/Qr{5^¾[Q h0JթBr>GVZU BBAB_ gn):=qhwB:-\iŠ&v{W_Xw}%7>*H l1nQѣmlwҏLDN7L^\t':_205KA]`&!sz`uB*s+mș- )Tx[d5lq_p[.k7 xp,Txao_Fմ6)s$~/~ykd& `%.Is 8pLŎ'ıbCԇ7KF:V@B\pmN+6Lo&xܷGc/;8S<ɈTr{)-߉l?@ DYs4Ά#iV_>։S*?h!I_L/J1MI|d^M%nx۷P}PLY{E}w4 IO 7iӍ+DiA4馋~=p>ZאbB !\=0B*Hm~a%cϴ !pL&(X;:{ht>OH0u,f2.OT}Jv`" ߧ#B{pnr)B/16ߚ|kn~3ٛZ!R+y_m ;Y>AuI%BʲgG!]AC h*A:"4I.OZq$ WCcS(+rg QٰEIfK1]wwy-sGHsd븐X񷵶^֟ChObY2]7oa\0~|xbM%ZE~g磜hȀEF:EmhnxD}D(o;y,@qLw١7nH ^1GaK2F )%ř<9PXUֶToC08?K{sјBvҦ[ ?̂I9/:ز^?=Ȉz*4W/\5]rwZMcRWC\/k҆Xj3Ԇ,NWVZ2ٳH`ɇF~@))(J@Dwo>J)3FyxeX.?c`-qvT\RۼX;{ M~寎F/JflvPs%8ǹh_њsfLݸgkA({w-B.2QbKvkV9~e|4RDMˡ`NU-cSΦ=mA\ûPx׫3s|Vȣ/92ɬTGmF8XW ( +"`R9{@"JoЂL CBUr~f/;dd! w87⡻qSჺ.WX~R ת?3$%5P3/h]Dngz2B\:L>WLziz DX'yX0w?W2_I~"{ XAۻA+:Y+U= \= ~Syn#ODe7IZ(gӇ #qNZq}Gqg೗<3Q50W|`<5S1/ux|zz@=:=G79c}rp^YsWՐ?J+-6Ҽ,q8)8΃)qP <8:l]2پBYwiֹDnU9dqMv+OpWfk,O<0~!^zfFDUX:z l3i]eQjzgI Wxhif?g^O~)D>g5ׅrk/ $AI$ao(]XPZ;FZEf-fȊ(,^g%P1a_opu5J(KTb㇊s].7D:X;a=7^Fp,”GF6wO}BjꐺqNv+p4$'rS| ܄P.xK) ̵zN4Iޡūyc7ǿ[6(I>MaB x,o,TPиk 7g2Bm-pCSp{}qscТ\1I(,Mhoc1) y{CwTk0F1!^81̊S]O3IOK&몗׬2%u1yv)LtM qoKzd p$W"d>ܜ_d/=~1ʎq b?I.7.Z?vߨKyL?=_͊/-1N,ʌX3q`f[J |Zx8b#MF?'b3 dwV[餢hǺ;]F%zRB./`,JŪͥjbmf3 gKLiKj4aHYu|G,G(XߎgFOpP{+< TtG|};ھPeţ3Qp3 e(l ^e|U9|?TJ CR/8I@vUev$YiC+q$59)5@V1w~/|3а5W m1'BvVP'l$qg%s_ 3'檥wԂGa-` ;. -Y2gjtq@)o?07jI OHAsy`Մ砇 P5-l!ŖNVq#ye)Ku3Pxe:c]ٍAP)1Ax/UY} !+GёmSk=K =&\)k d(K"V2`jH8+k[kݢãCqKbxGza+7~)ox:܆轫; ేq#ס$ 0W}ܑZ1PD\7@]UXRt=M>Gá݌ɓnbIw(@{ 8^X#?lFx"kT\9uӼOr8pv&,&icnk\ mЮ MBcَ9+/GwGnۃ),ׅO=P` ^=k?NHGR'enXWMBQɷNIn|g&ˆ4.J )p>\{$gK3>TXTS' #UqͬOEOA:[ToYe64f<ȖMx-EO_MWpx*B7Z#(\Ysv 27(S- d t+Œ2>ٌHMQWj'3+jn˳[l 'O%,H1ǝu`U1)7,}Uܒ*_lJD~d/[Q5^*d4\)Zp3!liuKq-z>ÅA ٹZ UHo!5z9!t%qyW@X(|_X"z) yc(L;Q,Bhё)|c" V>N[08~\|.yFio fHՎK"oZѬϩI~P|@#MIΙqI1m;~<. ZЋäm k4C#dҌBa3 /OeR#1[ǫ.Lk%JH5IoUIM G/TTf(*=03f0[qԭi lm(Ӛz.R5RIYL%{E.3d}#2ݞiwxl[\MnM 㯭HZ-9ܤ񣱎UQO(J9W(+)3/_mW~aР*;9.nP`R*$8):&"YclD2LyY[:wݻ@W 7β@i#v1AcF%1AqН !rdzGE"^Fҏ4}9Ur=T?a՝yOQXi7kZ-뒔RwG֡3(ƭpOXv(X,T, _VHXnoV- 촎{SQsBGQmb[U>^+We0k*w*a+m=//\QfѨ{斀oj{^/:eLxɁEɑ$4J@I*1a]1 !ŒT+"g/uCWBٸxN7{lϏgFnܲP@z?B:aZ*j, ]6\ogwف(Ɠ|%=U%e59-!QA ;1~65Zꓤzα~?*N-oBU7AM,.[=?%Zո9YB(W ԞFi/uiSHB3oşK:`O}^Uscmh-H FY䙼Σsf( #%h>GOܼ9nBJsa]4uG_I-I]\."a~靔0,I ^;"͢ eGr\WHgJgqo%p *_g.ߋܲߘ !7cIuDZ ;ŷ~OfX !bf+~st^r{4:t\1mmu&u@SUh3I5g?WXUuQb&L* =aPU^ǫUrb/5 Q3[Nnj0[!sW@ϘL_LqO40s&{O{nE&Ma⪍dH8,n,1IatO5'Q bmsSR)jX$s)݆j*]{c^U}΢uq*Kt; !\Dmoķ-QǡU$I;U+YR5VtwވWW ydZgRX4!^D_Tr9-O1x'V PVQxc!s$x?7"u5J 8NKt zx)ҬN_Ձ+ j_8'BH!d퉼I6X/X6NNfil!K\xsעr* 8"7~ZK0zCGR _ДAEzy g}Yi"qa/TGqQި c7n0IC=a\VҼ>LXeX’іpMDŽj B ;Z 5'ڃ\A>57a#<LuT&-(GUuƟ.c@xtY)#*{UlJi)='?;wb}EvE7Bڄ|_X둇DQ{NlrͥAl92-!]Zv`i*:&Cch_fG"( ` ר1=, ;oȡ9~8%Yd_|x1"qhpa)ϡπySA|ǔW+0dt ?r'?}ZQ;W~\߈RSEZh'3voQGӅ+p|7fp|B.-^eSd$,-ۦ ʑrB[2v;IM|nr.Em!s}$[axLws6e.6PiqNg.mg88]6' |':MBB-h$F5xQk̈́w5a҂U I>pҕQjQ )a/ 2GjTmu+жJ}XvDK)KvRI>:RW cq@>ۮm`:uCˮI nX5i7k'|8[;TUR<#@0U 'MGsalg{MFvk4rc6h\MlhBW9*cw,ՂvIm6*J*v,&p;8VU8r( y(n%oQ\#]D&SRnOD(?u"zꮻq02O)?Ik *XV=ʚR Rh[ZI3tCnXl'J߇Fir21Τ-I݉h}+`Q1/l|Xa%L~(86]X-a灓)'(s{Me=j⠽6Z*&P%uڜ̻*hH:H!Nr当ZQ~'p66:3ި I~H;&mE?lc{^&x) 8`&лBHoFic]BNjKWy%|W!pץ%Q Tdq>bR4x~xu2k_+n[mDX{ʃ%ܕ cMCEk gFݲvW(Oo\%7 N:H+reӪBo󰛢\h5v@cxru7+jRM#݇>EǙ)q!~ao>%JjK/^U?o-ܚ~MO{!TaUM Dk'`,^J Y* 9T#uDo&mdDpT)ѶQH^ia"E){$aiT(yFV [m |*}݈$ggㇴ7|\`M G]Кuk2{Ǿ +&bCH@DGV;l iG}&̱q$lyt9 ٫̙ ǙlY7׳>ΓjEtfl gu F3&ictPE=C߄&Yēބ./Zڣ-7?Y;X6`2Um6X?ZMz 虝$,jjf&!s<"[Hp%b,ydq pr {lH}f#U:j;*(q+Ź2Dhj@Î$BrH;7z'dԑ$<%~WԽ?ihz:l|Q ¯Q~Y^-ۈeT*9hp9# Az֪n 'gG"OMp RT@gs`ablP= AƔ|["e^'4f^KWJ= vC 9p^t!UTsWO, r+ mІ߹tMOv"$8ʕFc;\,ޓFuW#4#J Sj;;=!Jг>uR{%8z%7ԊS3WD9+n[k[ =ե*{_=Q6XI:\xH"20ŀŴ3*㲷Σ4]|MW3_630ZRr#v7-i\,SE?^MOo;{jϗ -FЉdΉwMN 6%g3B˗pKvDFQH A:H%s;,ey1~"XR`-=ڶzSu[U˟S"2GE!ޓG]Wx"AST(ӊal!^_0%bwu/-H骅B>쩔NI u+[8,zSn$Bg 塋71pf$'JA S)duI?(= ^1ӌˆ LJAmt&`K' y(k1uaUE:Z,>I蹥RH…sFhǘ0< ď3"(jRe$ tHHaz|{}O*s6nUtc[7*)?ǯ7׎7YQ(`u2Xb' F\Tuc,/Vsva@o93&(ӆH!h\3:ƻڌMʏ <Y˭y9&+Zr I<=S'>z '\Wd^nיh {ٺ{kQl e.%)B09S:r%xfğJj$[ /DN+`;q!)BY| :Mh ()Y.ܞΣkԠz~Rq=FpxhIj[22L[2[,2.3:g`}ru3Vli Lo "ԲQ$ޡYVE:\xXԶ?J1 r^&3Tω R(Q͑:dTo$΂UcVvH#o2T-6ћiC;7 mP9jydcȢ6 b! %bT 4*Q?Ki'ÇcbqJsŞ` Ma752 e3M@pe*9 Ks6RiZG4y7.9P]79lø*;\ ب?D}?J{u2y=s2@ID/"@Ml|W%-7m7DqԼo zMWNzBCh&%Mvlaovug5޴z_ rk5޶J"9 hL j>3A Xn NbD2A{5\}1Rbmh8vr@`/Rjg< o\ƗFa*5+Xe&?2XYgln#(k0T9xL(%ܳ\@i2Owrcyt&_$pI3% ^?ƿ} iˡ'X0Xz$~׉';+RtWyvje`S MkSTݷCQ56DS#:3n3QxсoaLXbwU~.f 4dfRT!Mj1MQ/B((U栐cYy;k%_^5NNGA5÷$p&X#BLmX)Yo0"% (@uHH}E0m_Ͳl(K\q, d&m) (;+HB-E*S]1?9R/z(f;"v_=We#oubC /x$l(~YjO &u0ÊPc`ک{݂HܲƣB{K@VC^D 0%ͱnkIlLᆜF&Y~UB,E}}bUX \0 Z!AؒHaY:,BrIsGQdyȃ;լxo L7829p&~3=D6cGCׁJȦg,,Px,A7 bS3]4}-v[MLb} nvThJX5!DnOR|2VF:-Eo WYT`1V:GwtH) J3gI_"$C0-/d]J@AcnC46^<(U1*Gs NgRNr^+wx$caf;VĿ cMvC9ennJE{ϴ>MD\+o^ā5w*YFB˄JtEZY\8{2V p11‹GBz}X' .>XR^ۡ 'drF'6Hp9|JCUZ-2"CǩȯYV[ǢE-,ϥyf μ]6D+ Yzs="r{NuDܣu~%foR;Ioֽ $B |8gRYY[AIIb"G,b5'\C.jn^~ɗfUQ|2s&7!<9` $\QK_Ykՠ&k[*\vLj) 3IE"0L-Vg|3Tr[M+O3ҏPf͵TQ(]ٓl l5?b*L@q|3.3* L@L"k Djߴ21=-Nn~i^ (CZe`9xeA2̬qRr 2eeRSp˖Y"^f'Q[MmMUYwhSQAs~VMV ABPdqd9GAgMdJZ53/%;k@煫6fya4䔸OU< `62O3zQ 4P}RU17Vbr:y]rPY9"zzH.?"9m;{fvb4 -k_O~'U&ޚ.fMw݁30Tw2vsZ.Y#J?Vx!.T z&7G#HNdEnWʣ50l:=lgs~o;yM-Dv`"yғ0EG-hh#`!zྣ$yb3"LG8gl]U_-=S3$)pj:vK bG$iD+t ڣtjLK1ФH2X9kAT9[dAZ.F˰@חMVGbQ30"qBhid UM,-V3+ff+tuT|"ϘXۙힱ ݾFߣPFGةTXyțZ[),q11`OŧԳ Bxi" TtKWT_0@)cH #2XWY7\-`EHZ q:>]yvGXhE7y';QT<(T}- #5ė{H'nԐ^ ٳC 4ot Lg- Gp;(SZݰc}BC،4 ǽs J\3`;vX8  &XwffɃ%|j+l٨34/Cz|v xO@@skatC_υ2w?BrE `ꔳIw~xBE:D=GTͮe)}DxR}h6^1@v..%>T1?n]9sw`}iVsqhmzsc5MMt|95Ao(%9YX{yJg3N|W]_^8K#PR밃N@ߺ|ɱ omGOQc("!ޏjm'cjt#CV-ߢӫσ/<xd#.lN !9#my:gODWD]4!P{MY=Լ(CBڦKGLIm˚·~Xt: ~dGl&B9DvwxS4BP.<,-{(k-hmK9dm}M`\+le T/h/r.`M*N%uWv(4CX 2+)ņ⥐7?Bhu+]e+%L+l7z+|2hUZۡau7T3'luWEdXxoe{ߤ%"@&n f&U.ܤbW3D:qk- cg]e:;_ѽb6ђRlW#s[ɛ643~VXj1>VAT SBCP=RxĹM4r\vSg="=G։.a./Qޭߒ:9g{ /bsa2@#ʻGReI|v?M? >Pe:+SvvD,+S=nR) x:o|1'7gQzPxX?pς'޷)lxYZfuK-bsYu鋂`v*[+ru6r]ʃ+ė-b]h}Z:4l|XX5J:'W. Ǭ7=_-'3[ŵ-N˒uҁPa|p4~-pD3Z}|&5Z5\d 1w>m: B=>ƐqVٹTS꟰5KNw<IZ/bA(Z{I&\/w})zb:xRW LtYݘlk[ȎA5G'x i'$":HV~3IUwʀX^JwM b0@4U O#ОMV,xr%+]`uibx7fLJ B/FKAAJ!P֣J>)WGl<_I{́tKb@`&{ 7(/OP -)0U~Ŧ䩕=d{.VnGvZ7z/v `'hN6"$cVT@(,ld^ܺa}m<} [z@֯3O,@vvWs{6$ihȬgјJbȶ9Ea@&Z@r#õNj[(M˾S`ҿ6L H~&7&{8v_)mw\&\ֿPgљ+GF4ēԵ113;7*p93j-o05*{;dQiP?!ήf9صqfm0Qdv0*dFFÕm78›.Q 3ί+#kDJZ87fҶssU)-k*J/}O(.z8ɰ9.֙Ԑ6xQ,ک$2}GJ,uVLK }!ԍ _4Wjdךo_~μPXڿOb!LGQg?^4Վ|m# oߐMU`,C*lݣ:5h܂pjA?V8$R0 9c4؛gc`J,wFv]L% nKާZ_X1 @l/+buA͒~BIC L@Mz +⠲I?gӰ6'Q%0)rs fT.;w:YQ-{-<;w^EЅ@fLٓOFcAx`mKsE{xd·t#z?/kp#Qx՘JUAB2Loe#4:D0ȉA2k8?w~K6 hN$@y>k4ϕUE" 7gMb>Iºa K!^(aʃoSh6lrm4+ fHT8y|@)5稺 €'0 +Nv}I #}575< E~^)b2P \/ʒ `]M*sw8aI8*?-XQ?hI 2Ld|ƇZl#4̜yg"Ώ0*8Z2_ jmI`ee[p^( -ߺ`Ɋ<216a`H,_:(PA$w.CUJ卍O--;HyA#zu&тk]+{*Fb9'wwOCӴ2o:z+@Hh-p,x4jOmB[E>6PIZ\Ugm;o_Z"'ߞ Tpmg7? y_pkUJ)KA6&ȍ/醳0Pk-FNxs㎯H2q}5Hي:/*kqݼO GzmO D9&m>#ҘZDf~y3hLG?@]t ܪGSM lJj/9կY iLQ,ՂAB>y)s6FR\+2ǖ卒V.zJjtG?6Vj#Z8?}2eQ #B:0(rbe'VFM,w´ 8.SJvo!ⅹΦ[ch3>ґ>~x:O*}Ke'?m;m+n)y64~) x)}Ϛ UЁ._#$ʎ,I?C9fvhI&;NDɋϘ e[[E󤽿;.TYn0fدBe)laH$$Ao:DlEy3b8 AWN&E2]|su-+9!ʸFXyj\n!&t%rŋ04@r.W~+=Y?5OᮤO)]5v8(Pu)UJ+E}E)987ܿ㇌DNWmGm}sMaľe17F=9ٻ$_]BӰDB|;۝NAsӰ]{y.U=5/EfO I]K[ lMM[Ų!Ky/`j)J:-S.RiK3TBKY y!usnV8"/q^ |Ie>:?K!ۦaKAݏxb9$Xœ<>W]ZlW)`˞'}}jTShH#7GO%G&eHԶKfjl\brԣV֒TZ^I_Lv0+Tade&43[j\U9&_I%-V,Gcu3q 3ht20NC9w0㋀5Mh? `E~5%!{n5~X 9t$RK%??\io!ETb~:)Np;O!羾qs[ >$V#F%!iܬ:!D99d@[& 1GL!uUZo]HQzM'32 ^AVrF O${FyPjCxGS.gNskNmPQk60%/'}~LZxԘ?yߣ.O,y'% Ȭv4cV=a (@!3,u pبx||[Ȟ 97)ɢx)M,OS}%rI_݄V2@TJ"{qMygx6ml*l0Dm4d$^R~eu'i{Y9^XAO;ӡ֮-_DZA_ ӍdrbTp!HUr:-I֪bDzt'"0DYmrg8L+8k_84j EʘÏLDg~w *1/(nu?};nzw-BlE1 2-Dyd8Z[(O*^@RMEEsʁPDPpzVvĉ?k=hꂡKGnaKc N ]I8M2ڸ%FJ*:oU1MRioMЕM;h/^ ^\O!|^3FCk4]h߃TaaI C/+Ao.B^hon@0Tiֺ}Dus;*\ÈJ"|i0do1jZwe%A0I|X~,N ˏN;v%3B<`\$aw죪Л~5Rw׿0AHmLG-(ȉ,gui%ΖV%3e-su!/)^<< 8A_MX5Ȳ xlL3 bPN (?Mt>ȉ1_ {̤ ;$h6pז.9/iFʎev,S0ķPE¿r=RsO[/}Y6""]0ڑj$,E-ZR3)y EcBȬSCV$v?} rҊeIh԰֔ :ݑv ˭?Z)s PʀmW^bl[3h}BlLêsg3-## )|2\W5 f-[팝Eq4wno :]YG@֔*t,0"(\CV (}2?óLI%FgqYVMQ$UKd$>W)gy9iӸUR-Xfm/;еgy0İp--%f*J{b-LW @ _<3V@zP?~Os~ {?3~[b~|lKa~,K~(27["" p݃9zYVahPb6CqhGĀ:-nQAVة**bpx8eyܦߑվSD)sVM%#J LOi\}IαZ6?m%ojM2QI-1ۛdͺB+o#3@K_ }0:T?84traLN mǼgTHgA|#|G,ġ% F^}Յ4B50ʍ8v-GMF^χyikH&铃ۀ$a,Jo#?<tCW XGQ\rSAIޙhL}g{Y>n vztOT[Ӏd .ҧa/h~'S"h\]n[-YI"&ɯ~nW[;b,ˉp 9$EHj5E#U:y,!YsLٞf" 'Ƴkn<'Q"-#-vRgϦڳG$]Nv;$uVuěO9V>׌X5x$8 &eƄrCf_?PYuƼOWpVUb{‰ G5B2W]-!x@Drùb,%3 F4!|A"˩k{MU~̒ҰRSlհNjJ! fop,:c{{a}˭aZ662#* ͡3c8nWܺ/"w@=hwffXz]jI@懸ECkCmhb69oLD*juoҰc($#x:]LHFGo?(F҂Ub"P`k=>7ß ]c`(fC:~wB}*U?co22>O Ck. hrEbh V;37Д/t- FPpkK K6Ye6HoÙ%.}9ETmiv@ "NtLF"Yq)+U0 .T2(E Ɛ\oec1yqL(N|adR @, 0iSajJs,sz$BOƂUe" { F [ ,g i9i }gU5p"o2G8[e fz 6hM\0/Ћjq~xK{A#} ى8Ki*wmPcܼXg4oŤVI7/$+PsUYut/)! hԠnU@W`h8ce]+]oPϢ4$x{L} '7 +#pH.ӄ^'Φ#G"KW!֖CѲA4#:& !ߛipj+/Ù|eEoEZ佦W$<ҌGjx&ӏA`(RrctǶ>n.l}ȊG\r1a(A|yFr; Zz~gۡ4qѓYZ\Ji{!-;wyni]@ ٞ?/"IY~qupg`8/y( l7PRՑkk;"G0~>U,5}@S0R?i.f l|]0G^Ma}c˜G$1Q%D\Y\k;(p}νƌ RmuRv߬m,܄tzzFB`:\.hИ9^ 9H6YTgJhR+PhXgr*Ȥm_ܠwnVPMrQ`?s7'<ƛHu@k '3.+up$#_Ty/PlTsjsHmԤrsI9V5#i_?;bW5/*I9$uꬩ#uˉ+pˁ sl${7[$8" kL|cjϹRH[nLFCsjpU>q}̺ f9Wn^(|wT3֥TM"63SdzrppMVdO;%ǖ6PgLG"eQdki@J@yqD!ߚI%}rf,Yx{o%z3b.A?ߔ!}tA+0P4`ױ($C_ Pj=YdTmL⶷6V/im 9hIV c[yB[mؑ{}4TTYw3qOTS/'UyZ.ʱ u}Jh"Q;b&Ґ/˃inQ> )5@TZs9j; `5?DPx,Qnl,UO;grcFyD|`J{fb :=H$pr,cS: 'xAVPݔ{%r4LU FտSdExe8g~{BGNٗ~iwnB|ϚOGZ` yKs1Y"ymf#/g ^{W(=E@p@^ k|Eؤ;WUNȵCXa0 DM`:^݈St&n݆]I@ug6*{?MIlx]P@sfh J"Vc= pUdLe0Tvzsb i[B_ø2%t![D GscY98KAq+AŦf%95 %869Q n+S; b:9Y+p U]LWr֢Z'`-29~p'πw-]BͬCW;S>rJMRAZ" AS5Ӫ%öCV;|M8 3E4xۺgWf{m TRu9f OzKio a{( V(U֭؟SW= &e>bM8.DeR{[fLh2{飑|b5k*!rƩ!Sݨ(HFNH3TX,DX̏ŒA8|/Wh6^ލ̫fz¿FVG4uȞgT*A8&2vmp +h^`)Lnȸ t3P<ZdD !l Z-Z{/PQNkW=W5:7QhĹi:nNbzx;'Ut(>wŖ:&`C&U1 <  VobyV|?gQY]+=1zLz܂=y*s;Lʰ(hM}|۸V_f`o)gSИSڤc}Xi襹y^7Wz׋-h2s lL2Z_xEU›i4>H0jJM$=#(]n4 ^Ƌh8pΛR$h8Q S`|BnMmA8 #=|`xVKQA]RHU L5nZ1-4UƮ!tWg8bIHB5鸞ؾBқw ѦW%>< gWOp8]9XycI%o=ֆ8{8mt)!z&AùQ:M:fm*hOTxhv=|xY 2LHtx=DFR,ہ|K YX1x~#-&2檭7D2Je #RP./U@nƛއJ(MOj?vIs}2ިW'+ }Yf|Jސ#g`km'=m:LsoTKPAفnu kcXbQ핒*9^ף<;MB(5޷"=9#-(t˱La}CPrW@]urʦ6&um#C^Kő?u=Ւ|i`#㻳\VzHFb]P-I{;0On=z{k>l%/voF: >P2,c~@av ?M]|i9iirR<9YNhpscqhɥlda=ћ*35rVLї&4D^R&!ORL=3,gƥC]9VSĽ^ fWf)Ugj^B:v+sC+B%@^n&(=%m>EDGԴz_fƸ3N)vh*y*a yY^'|ٕ"lw+z_kSڧ맅<0>SUQQt,97im2 $G.$Ɔ") p ©~:ŒZZh/@V#X{Id_:W/z5my@]"[%\G<7=}ԤZ=[eW2 hSyi h,m]Z7qX S1)XEwT oIW ݌䍚9pe-+&w!,vCr'sk [? 79 V?k[7oA(T P9/K/yo:3]wz5k'E|^2]گ~2+h;jA&pwl-zC':rL ahhjġ'0}AOflIX`ԣr4X]F_Gz`T؎VJ+^[>Cq)]ޖt)-])x>.'#~T{'J(/Q˥E6W#A<ǻz) #/qwGs.[Wj^#۠?ˣ{蔣%!;D$zR *05YxE4\A% Z+%+1ÚXIm.tqoYX!A``qp0 7OL 0> -L 6iCGT)ٻ[FaV\Gp *DŔwT۞X_<4hJ ?_ITto<7֋.GߣpfejtKrqwũDh߼XUTV?l;xwݔ"U8m]]MsEcV{k|L @.`A EMv_7 ^ oKxk 0\ Ĺ `~E#A~BɠO9#9JaPSVC!)%5dERjC˫c TW pZb'q1rȁ 2^JϿEHdڍOQ!Z%)os, 50O&/'5?%zEvT 2V :=yx3N(mJ֟2{^[wwνvΛXSHB7'gDZ1xz/ZD*GW8`l[048MG˾{Dx_'?)`:0( Ncm"VoA:j8qͧʍ_p* =7&i'd- Ã`1챵 |U/QaxAݳT`sL8yiw ($YN ߷f1B p\.uաCn86BrBr#cOTC'Q2#3;\^>FWnGudMu r. f.fa+^ۓAA}C{mo3͜K`’?M/5b!` 0$No}-ҡk+"r?hWHwxW!gԽ]4Hzp,ƒ:U ҇cW}b7+FJj/Ŷ(ko1HC-Bal+ }&]uh/ Ķ$aZ3rkǣ6 h^ iR\u'vZ3EZ%o]*ݏȕXyLb ơh#:X TW%aȊXAd45ʤՠSHs6[:Aɡ3#<~|UT8N =VjVSQ#ym aAeX!fJpb>JtQSY~IA]PPdk42ܮ- i?zpMCI! -VAAlN `oFtlYkĉ?t\ŔĦ۹nk뵋Tg"HTVv^4Ԋ X`C9gb̜OS],>yWҽ& dL,3}/`T ΍6e ٬19[V(1KEg@vȬ msX4" ׆_:ẇq-⟭"]kӁEQriHbkI^ct2E^Z!5{9HvG5FXVv8зNiȃkk0^uOhMϹ/~V(qZ?|e#1A{>S %DL4Vmؔ9felؕLHRy%<4;X*ѺMkMCI0XC*ag1^샓d10XS TMmK`E/|a4+*UV*fJ$1|CӘU|r>!UA7W}4vآS>dw)>R=·ܦHqnlxjbajpo'm0ceYV#bdb|[bȚ|q3AF|k-DtB}O9L{)qc۞ϡwȝbc_ᢾF>JnҖ91m4zYeŬS2|d* *Oт+2Q+BUz1e \E8AvT(fD<٭UCy1 ߷\=V-&mIlF[@U= m`Z4$2( |TfM܀w(ZMG~Їp0I+F@ձ3i,.>!{#9*rqVzȦGZLW;  ^\i0>[83jj08:DAڟ0 //IPX0?w/&9gs3[k#94Ɍ]|2!Ө):ؽͻ' iGWܞ|̿/~'g{Vi-tB$>m+x+nB({o-ҩgFyՆv^Mf0@!ti@#܃vH.DBmUsӳg~a|VDݚ蚢ϥ=4_QD_Nxl22 XKâNW8"1:mx`1IYL y1S}*SUƼVS砂N?uh{WFMu~>7 w[D%='SBjN<`փ |A`^Pd.Z9gCݟ235hCjb[]~1JBPQOc2oi7|Zl-wWF[<rRMs/ 7cwѥq5G.bZf``q8o ?TML|̆? >/)R{ҪPp>ؘ f99A,D=&I6Ws|Oو>QFY^&v0K'&਽𞄛V9yclF^(cv4=KCEZpݯCQbTVQg>$>NZ(Hq hy,N[N ʘ[h)3?Jc]>tlD~11qsE:"mUAa*CCX58ɥ̇Egk!Dzppƾz@ۑ@d_f̻FMG5^exwBw߂ʟ1%\qLvHRyRA]$<fޚvRU_/Lwv >&4P{F#Gy=ø,4m~Uԝ ^ 8\9/̏ITM'Pg;{Tʅ]'N<)?%ݙɼ 1LB  ՠx[qݧHPI\5 02+LGp|H Ggk3qgh[*`k/GʖhGCr 1mzBݧncXwʠE4jˊkMG=H (0 ve J0avLЏ< ֭֙7^L ̖ "ha?=H r#zFKn՜b1BFoy9D`-˔sgf:@@ӣ 7j׼oGS%6+/S K,ks*ɤlsrڹSӪ(QܫYyŠ\ 0IWj(P٩'k]#wQ\ F"QDWEGN{j{m}@O6I;fPmбuj]Љ@ۡp|~2Jx{S{nHNDO AB'8 b`%cpړlPl-ӌdٯ᫂aLX\XAʰPM*<Ig̫@\@KyfJmUHv#Q 6>oKS"Y2bYt˞AbϪ#vxw<4]hc[yX-? Ej 2q^ހQJ'y\LuJ02|h+[[V d p\͍]ƕ*eC~O|^(1SA Ÿ.˶/L%tsf-F[:. Ez?lѩ✡Ւ^ '' 2M rDe, ;bo%uRG3ˈ~GL TMW1a`:;s\v휝:[B7u"? 6I_YLJ|踍.Ĺ>>,o_VMn(Z_ch>2)|/NWLs0ٺ EٟC.41h>A0=""_)XV;] ؾ? }kVL5cnP5ֻ^t SCBҥXˑϴ@ qn[zx.L:bE>FDX6"J@kznI TcHSMz?OA`&s ]&)AGU^w-IRDS `³Ϙ^`s>M I [S$+soF M{?Mz!x(+a iK=/8;ke֦ȼ@GI:+2Q}~{(e]*Z uG+ y` W`(FOet/m?Tg[]l5Ndkj;_v{'Oj1tqKx:[gd>5" ccD4S&ŧTW'IdgF bAP0gP 8<`VTTM~/d9|(dY@![bygjTi` L Ҡ_@AIt`r`0%xDݖ2gUCbU7ݾq=%=bɀ& mo4:3OEX)fB?.N&'CA7wvvUT=(&O(.wrS`hh.(~:6DX.ox|6Wԕ] /O~ D$]qC p7\kVPVc r#6M2DD.xr"fWb|E~X٘3PӠ1W֝6"&U4N_RvM_dk פS"o X {yFXVgf1C,9T敇,_ƂSF!.|`dzH/PV* ec- 3_U=G4 6끶&y@\{j]}U@0EԜYV-.-r\mz|6*̋ثY6X &ND1v,\mYVlj.ąQ (j"بZ-IJpĶ:;N9cƝZX1x8LUcGVkRu@$xu@pirxCCgߪJB֩7H, z*EL|Jl'ior8Qq}A@C|}2B#1bG*zQIm+z@kо;q@}-Y$wCy-'x8h?]f6;OC)_5e츓}= jIU/lIӮ, A5AEoWg JW>RKyRe`p} xy:):+W)a?RPRTtdurGv"s=/oY3ӵ°fgjPUiC!^OAP`&uMaJ/߳MȋhyᲔ,{u7CaXNa e lu9YMX3ԝ}}חIWm6)@_a(cEy̒/wЋ6NMB&\CR(K~vstZ JA53T_筓d n0}誗\]͒Ƶ11A iC/X/5v_#)D3.ᔮm5jĄ\(Vƀ-?KT9+n&4K@ q iLEVS) eht/0c}YZ4U'5vя&KTn$2x/닉&* W(v~ )&YCwS=gr$)}p P򩣸Jom>91?†m1&(Z4N)F=}E'K&D 㯊FyB1rif~Hݶ/=VSu}SEu~K e D. oߪBw_rz+չ5(QqnD'(ݦGbir4>E!OMqωւm5JyNfczu_FKHR7wl-GMN|N,HqBD-D 0Q+(328TE"x^&4Jld*&DQ  H,^cHKxw^VY##oTȸc51Cޘ ;|iqi8*ZB,(+*igCAHEgo-ࣈ10dBȭ! HWJ;Fb'iȯ^*xi>1U-C-'ܯZ{+bl| j$k,hEY1{D3sGxw52TZn|XH%!˗}áϘ)-3V;~V$!Gs~ \=' ĜGՍ˚@3QmZâ5VAv_zvƵSwo)z4lWrHHJ<^' a7E& mڌgH__Ef"zfZP$tٗg⟫g4U >bF^Āg\A5p'rIGBRv Hb-n:Ֆ筵{; 37h+ %h) jI˜rL0;hsrV7n.Yv]) u`'Qk v5o~w@k6yr=DE=:gIzTMBSRɇ3| Dk D!R)Eo'=f]P&IpU r37,JiQ!'Tݍ&͕`?eRr*d}F=~e ]8(*!fA)k@9r#'0{RaTpț<^YJGrHq8%۳Q 7.V@[;|_Pr3A)9/r݌S0T]Q3wBJ^ xL$:OZ8qb9mZ>y-hȞBw[313Xi:'78>V\{r D~*A]P;uY-ԍ2F!iꥐrLFӿח V3ePI% '(A"`.o` n-d\ǒF2żZ)dê8 .{'.zCdY>#M<Ͼ za\"p#sl@A:zd`wzdnIBٟvϨXv| M0;z ^f[9k;59<bT"z.:,Eu+U) n ~ dVF5Z8ǖށm{ͨ(eWBkMgJB^ҫ+#U(:q1\.×.{vLΉ3CCc$׆~g!hx_;D=c Goz$eW,bB;Arrer{ f/DƆ֎=ChҟnD8``rjԪ\;4Gz )AARZA[>v G)arfRs;bO?V)Al!(cn#ό`s'HN h1(1btrHF`a6r>~%wm/}I6'XSi|:ZPe[ _|hDږ?rQr-r(*IOF-+=PXuZ&xi$|yi|thRSyZOхSs 8N׊7xx>rc8-bٺR1VEw:Y`_&|-?)/B[iĊ$`|~QKڑC|\ڻo7Ş)`Uv$EvJ;qP-P$ٰ"$DxT(^GFiQ( #C+:^ d hs TJc8~0Wd+9 IrהUS WG_тHC ,QMh42gRQXH2'-}`B A}.Kω6C@cr.>w4ddO0%?^T45(^u+.%g4&%pڠ9:ϩ!W1vޗ]$ OyB%d* o 얦Dx9P[i?$X<dzL rFנU>(`B؏!lQ`"x'O~͸`{3 K,菪t5;i\= Qw(D4d y{ubſ]Zi`~piI2ID;`EA#E)嵧gD 1*P \@UOr׼Ԫa+^ӯIݤXRKG۴jUϫ ?QI%_jүVU2 |Lц6EMjG%zLE-uM%T҈u_j{Qf76GWEbhep ̟>~əQ_VQ1U{(O% 2wȳ@J֦n+ݫ $_šTYJ)Wd?üƺFi\VgN+_O_C'WFc^<4qrߵG!OkhyϟV֡\6_A.ݴt \~3*y6BJp=j`ew'T8R"D 8҇:zc\G L"% {V]k붕·$Dpݥp˪iKtTjC5xK<`ɢ#3ʲ~.(jG=LA$eY )d :v v{.K=_iAo\ -&)vs?9.KT*u/(<|u3I`YdwHsRƶbRҌ,=PU@H5\]+eF *= 'b(ǘz*{wƙ?#,o췠?R rBXMOSvO/wS]Nizi^Uv ƌwNd|fyI6u'Ə)p4ďUMzUg-WC.dVuAу ޽XqS{# d=HX3AdRhr]UO+g+iAc &䝦1 pg/d*!*դ{Q%,@墏"H?&hmi8eIWmne)oWibtjKY.6jvL|sֿ$!H_-$e6iag)5fՙ ՝<./p =I#V*RlZa6Zg5k)_.vt PyRö/dP]T˭D,Ӄ鵴 %:F٬,^B"[MD? D^>_`ں_hvDŽRҵ:)=ꊍ "2cq=)mS]4v'UwTG:|4X~ rM(K+˙snfhȏٱ!n W܋n#N|oUf/C,F5s,\3RЬ/z<Ȏ kR*7*}[dmy3 k%ubƹHd9E$.9 C%dYFI,,]P^pw˝ݯ5c yӏ*GmSxs|\_٘:D|dS7xv'$\D١ja+ v3c/毾dg*!p5tqR8/rwtA,v*6K p2/҃Ri-Jg?7?m\ˑ$M$-.3Irgh`1ms~Nrm$DMuXv'|-v[&3E$%AzxM{}%#Vx(E)楞 ĄYӟ)a ѳE@C1=@USZz0o$M;x4ojArF9Yz- 6ꍺhwC3 {nJ.$#qPa6#4J@I23I"Ѩ=a6w7:q lgS}ek^W!Iy=G Jw'PظC^OG h(j>y$[,Zum4< @I6Q%-Fw @=-qq) 㲥*ٟ qv}i}ܿ f,J'y0)b@#&I,G${q>y3?J''smNhx HCK&*, qXEnoy2wx)C73B=j٪I{;\}=Y9 23]@N;u,ԛ]`,j7Ns\2-4XTVlb7Ⱦ2Kwעe<,A]ZSUP3c Ze*j-@r3ba젢+Ѓ&[mw}p+`ENÓO\쥕XINSCxgX G]b1GzC9[иl QUO{Ɋ .׍BƺkkWamخ,ڶ؞t|}"tϒ18޿H0%p)4.2ˤJVSA/~n]]fv?ӄO;08lG @@oy5Dqh F)w){q-fŚ&^ ؔ~c#J9ئJM6sȆ%?5[t \}s:^6v7훾\qCsKv-KEȡMG;ct9VkE1w#ZQcI'G*H) KO$yo-xeN~}d5ƍ#rd8ƳnFB$VHGbWeoƦ0g!WJi*W` J-lf>u-EG؋?p=!8J3 T%q%6z R(o!OL785F'KI> xb x:i0+ˉ#PoQh6PON<ܦIHyM .XJ*RC+ytMrvi!71zay<ԙƆKL8cWa.hs$x%8*X+kj? U=;I !π@&x,h&k[1-Z!M"mk>䈮u׼bE tdy/Wr';ZN,A)I{p,(-NN^Psg85 (AI^W^\ !i[TYI"(iuZd,=*bQW06׉+()LAod(cqV xOoP`;kg珟_z>wAѮ^V%!fd&rXWDhv]|g l1ddnͯC0XgG Ht<\Tg!Vk>x_U/zqJg+JtqK"am,OBiQfhF#pD}*(Rݬ?Q]w@R Wbu0\4>Q8I.FZA̢ >P,+?>R9{:'Ils LZASj2[ o"GkPr^g1oTZPRĂpNPx6bcKIMλ& jvV~B{:=(er-/D{C@w&Lmu$z+bIסL{\HhDA` xfxןYCn3')vB 02$" Č  q:.8J AiJ*jI3"NcTm4 G}щS{:'pB/ ڛ_θl ao9Җ.#wȫ qV'baS\Ŕ_8tӯKZ )mMֺ!`|*BI^+#*l-Ab T츥 Qڐbyϊ˭8 ðsկȱEmBŇ;-f#zcmܤ jG#ޡIkrfm>}[Km?2$YmV#\7֔U;#G*FFtaJPԒL(S=Lay@/ʲvJfvik%o' (U-ۡψIlH*FPC_ٽtzGNԑxkn"Ym:]TpO[g;@>%~ŷH0٩k1|: aI`OJ ]?h,R;dmVxg tEe(d2Ç;7B~-XC9$zԛipEZ$uwcu 'iiF*dP]}+.#g^ ʰcm_jtQL~B PpNbk"696oU]oZ?nUib$Hk*Un^ Y$q|&߷z6-JP?AKKIT)Oh)V;T_m"mȸz7x 7$% *-}(ª4Px^U%=50uY{g{6DAn `?E9AwS, ZBK6t3w%AhrX47*jzic*Ch+,r Vw 8\:gBwkzZxIt P]Wu-zb{|5W\?^[Qw@CyCNQ c|q`%쌕Vb>>0L,xlcmkӿ3,(/ b9ePQ }dA5(z>#|XCnL&Jiy@=NFp @G8v/ogvܔ\{?8W  kJg}[i}fu#.| LR@) ̽/6oͣ߿ψ`ߙwLȠ Wp߽XZ>ZRRI\YY6$ou<*D2,(f*HJ@ ?k0UDč'6S>8,~UGcR \31fF.pDg0y@T-az`ӎ(jLDwY-CFb$ C%fSjx-X-T~:߬|! 'ˍkF0>r\Ԃ.z+SmΎګ6Ԍ²ws:})k)dF gxJ :ME'k5CEoC |*TdA(YU0g+r䞩>`81fɖ1!9i0r3vW Uܹ左\C@ջasŊ VSefmv"#.5h"8Mt-̊&Y98U|TS搿h( (g,ǽ$biT$_5/Ԁ+!̞^m|emU,覔z˺kOU^bЪ9mI—JԺ,g9=uЭY7f֡F!@[7(-%?yhLSR#FLILP4*8)ҁlK[JX ~7]ņs(#]fG8CQǔ*T;ݓ"i@/0MJ{OWIIiC_]{?G$i  W,ܱ2,lE#UUϜmD%JvYK`Ty{>w ] kʱ̆Q$R+%4ж K \sf GJ}=fOf3;uh@fl /́CQ=!EV<mTgNJ<4Nw&a.M4"դ:y%ɊڏK vl'fd9d7;JO`"2i% ][zvmɗ*"/";4W^]6ȦOSL{Dip ǂ$ʽqg[>^ysizc "N ɜljeA/HJ#t(4#ĥN r @/tRRc ` ? ]!ˆ=14b~9PB\sD=hs{ǚ27kb΋T=a/0ɪо}4K\a&B,@>ôDZH`hLNbB)Am4m Q`ao{wӷ %Z~(,V+ OiBLfx|8-g0UMOHɛ~8@_gG֣A7'V;wn]A @,R5Vpd_ :#2طõV$KRp1o"FTIQZbj-!DnCye9譩$h7AOVO숒'@TgD ]KYħr7qa4"w=ԺdNhЏ7a۞ޓu 8h,QU(%`QR'?>4RWȣv>%HJ `+0eY #=zFI9q&/iƞ,hZj@^AZy复hVzk4uقjC"ˤb&CYwZ!y4+*[0H>8O,ыKz;,W1 ⨈il ^јŕkB™yFB̧"X/ҘbE|퀠ps4܌{M錩"`tV6O>on#ܲM{ E'.9tI f2"4F '@! 3* ޜY@~z8Ma.Iؗϼ_7r,>Dtf NMt֤ޟΙS˕M4r_˝C9M0srW4ĚިtRĄbA;v#8Z:o\>FSwSGQ f7+=bF(P<#\٠ġbI3N".HHx>;aSHjs}dIWl6$ôs?]%ğC Zn*E!ٍ?#kl ʁ.]qVaH;PE9 C6$ܞ5 NJ+Q\]+!S#D~z+i^DoM*~&)L>_Nd1:A^E*^j{3e*ä!eFեc9PgهwS_M[z YkU#mqsb>@V8Yi m}Őt9rCқcxu`5ɏUD :^.Yg OՉ& iޚ7NyYKogg)o@8JlY:d_2$LXƅJ'X¿ib Aߩr(d*b0P;Ve V+17IsQP5~ed ssϨ_Yl7@A@0\$ܗS+:T;_7ðkM]ɒXyܜ&Q,E߲w^ XJ OClW3ӞxA8e611cg28z|a3zgF ui$qWj6T9<&XnMuLt[&p|N~  |1Ĭ9E`q!N^;[2=.<8pMj޾N#}vd^98^VԎ&kȒ}p4U hȨRɤE\ꮹظuuj*28"-3|h}F 5EmfyVJ?bCKD R i_tW]0k{!^p+\?+LMf#$u$"cC@]Aѣh>-/SZ\A7ٴ${}irm_ꅣzƚƧ~sn-' eF؈εC0J\gL5ג RIf<+0@tHy" g8yV+,UK;+PǧwY'u\"fޝe (]b6 dMRJ{XwR)JE6UȍR>{lo͋(nqj.`SV駗3ѤJ,vxUZ)Y+݁S#ykEr]DQz3SȒZ[2\Z Fk51E`coEl[({> KZ^iCPZˮk"ABޟ3>.`x]ugvX]D9k~(,|ñ گu{R=Z9bFnga3;{6 Xrm~x~z]6i0-UŮ"ngm 1'? e4FŶA풣ƙ/\\a5 3zV; ajU0.^}JĦ:#4G[40ʛV Da NE~h{ӞÆu{0g u *[{~^1 [ۅ+=f/<&lӱ9){G5@QA'v&*4tMGf- `7Xi1ECF3"n\͋\ݓU6|lgrfn&cƫX)Z~pRyyUvЖNFD~b7Etqm]Zql_)qr-Wܒʹr$pNBO*4QCܛJtu&,BaD©mMRYyߖ QY2WO$IN'(2"wc=ئ315Aa\DvaFIѿTN]=)9]*uD1Z=msL. xx7e\P`Fύ(H#& ܚ 'Y/ócТ)KT[/ONiI!l /[}TX8&ա⪃JC?[qn `.XX0~9`p|kV2Eܒ5kO=]c|nX%^uƍ^vY,B7 M&WJdZ*[ 2Ipsr m["2Axݦ{̒4nZ}:-bGԆ9sЏE7",McY>: 36ԀX&Ž$Db9$Oş>Wm) (L!FHSwf{$tvl^|:qg麎GONUwzaj01mtTPf;\[Os[jَdSbHIGE]⼖vئ.aj~`*\I-Lc"YT :ʆ߉u߬e.RNu~bo Dn) 4 (;$H,}N0WS% s}Oˑ!.%?z[Yc6|T{9с>aa1g£9GdOn$sz$5۲(hkyrc5#&,rD?|<}\ojE0# =Q0S`#~ס ֡yy J ٬= jI &ef@VH%4<[Xj$O4yo*"mA U=Njçv.mO?`  >َ0,x#YFDž7Q>nR@"X+$^RT$-v2r[dvh$#^ܐef8f \R+x'k/Z-MAꗡ .b(㋰9Zo;{{!"Zx3 4ʍ Kz@8Of*lM_~G Qm>}@q"\_жPIS`k\r,cWz  -L3m@Wy%}@5C`" J1(_zbIZ d Xw,gk-?Ѯiƃ8˒zY\/A[w#Ȣ8vʡ)C^H7u40V-0KD1 : A3걭Ӡn"CGPshN"_KoMҵoq0fFdTP6_ոJۙ3wٹyVh6)V[>z:`bT fYPB ysr<15c8Lfi]_*9(}Se骄?j|B́i'{) oTA7@z0KCΒK#E)-5n_myFx /3aҺMts:biblyDw^u!MK2X擕Io-:wϙAW=juܦ"B4*/\Ȫs쁹c2;3oZ5x7}djl 8eVGCd<˹EEM*j!:>:Й%!Z _|NgaE2u=z čPh:}N· ܛBOG²{>kMm㿂aw9vʹN}jxm,nj;Odd-B/~59EQ6RBxNoDaf&Q!Jn,B&$݌qfd,զS,ZQ:pdh6Y+{ctӍE4J*yߥyd HSĉ-T݃6L:7a؞0}!9n ׃Wm4IQ5G!D!%_"&S}2;cNbxa`Dg _t [}YZ,ti^$KHKI"vFIἼ$rT eJ C8Zr?H+ʷCXq7Eˈ;n);|$4-ށNw r4s@֑ZYuHlgT ;kfk6apT7f=-8fW+߸_!$Mgjz^/ ) $D!QTNk,iRX{)(_Ŭo)A_w9|[=LukMϿ2&Ū|, Qas. )GQ>nceP[2PT^PYYt2o S}F9;&Gڜ?s>>RޣeL @5pHYc C#/J\)$E2{Zl\Q%c+|2JNOs5х>.[$ݝŮ?RJL{Y(,f϶Ab~N/p#ʈ?t$Ҥ #o;d . vrDTE=N l5ȣDP 䱀1 ͨ8QgTֲBH.Uo713ܮ<9b3N^^۱BN耸$+n^+?-47/OQ9oO.v6/ϟ7푫2M<ES5Ŧ}S46\v6*^QXcRkTݳF(s3MÿõcN&ֿcGa `~bqV";olpK^͓US X֯G a)!ATyhk~3ќ[!ҘV@Hu-)^J*f0L@{Ւ'O12՞Ow +sB @]Nmj ߀&Z/ӭإ&UQv.yl#3Yr{#DGvdCYGEBfƏx5EToy+JbYe ZY"o Dn~Y84B7+O>0<7Wȣ-W$5YQK8޴!c,Ġ-ѭj S*:4(QoGJ]\ Pu6o TN"XBlh-dyͫ%F4paUyا/Q ϯه0{֚ұ X(”($,JqBPg}xA9x5$^]D.Lԍ m/c\Czg4$UF% Z #;&b7H/nH/>3BBY Nybg2 괓Md&ϹB+ %>:hǐʶeϊ6EFy4y0v6V2v-ͭE7^s hJH׸6If\r8XʲKfI{홱yrgdwmى9hl O$Kz`ܻXëΥcOD&<"c Fk|Q0c_1m1)fb||w|837;rRN1bbؤ3O%\=w${$[-lQn8 vQӋnxN yUjVh/%)G8 t-΢1%; *S^([Ik8С1KՕKXxdS"-Z۪]KmM5Ѭd\tN9XAzߑ!'-dЇdKZfPӋ}'\Ӱ~bCϡ^,O?5aT8vQ=Zt`AӿRf$50f)bՙF7$f?v^05 2;׺v ~J fԘi.~VI3<z^͉5Ur[ 8~׍%LD_1 nnj ѱ]d_t 0▧A*7twrozc눷i#=[;:fݑ뮍)~r@ vvcBi-3ASxGVȈ)AzП2G P(2|%\#dLsUHn)Ut/FWǾFdv t(H Sf΄uAMF%EoLznl|%.䒇60m-:ŕ@lQ'al7 +7C|nz`B* |Go2,Blu;j(%%eunٮ )b/uw"Wkp^(T5i];4N , \n9Z vU@1ԓR1 kC!"LGw=裝D\0 vaZ؋rBmLnpRʇ$hc6V|B01P 8 {%|S{' 6[IQN!4e9{O bVށUoD(U1MR..±#d%UWX.M?j[w];Wf\ݣ#u,'oH~ͧce.`鿢@d̹*w/ep95ĉGrEEYEf _ǧ~_ĕQU_s$G&Uɟ|M(ݞ˴@u4CC/f<;rs1MhIc&Etcwf7TiYB*)N'`ѓO5=B?ϊn8pm){Й,/Hex-KvZ 4Y>A P v=[B 2h$[Í1>ߋǑ >t`OLP]}i,/Di].f 7M#Ȯx'@{O'!ZvhP*PR=Q~p ћ64!E.D=TU\OiV+AZ{]6Ztg1-7x* YSB.S8tmD|^{ucv$6sI,ӉPEs&õO4rJOu3RB rRd"9Y}SU}[Q=@VV'eI^\Nn}R>XOjEJ'nh!XTMQ t6F*GG*x`,.%oU},"s@|xec:\480KC& dSţu .ȑ kmFnRhBjޕ2L5/!* 8{]WD#x,|3ŭ0ǬӓFUE. 2ubTz%ƪ=z-oA[^!̵ybӈ:~BT#10{ XU.KeSwwS' Izد+َ o'{!](T8K8$x}~9.\5B_Visݥn[U3u>KbF!fv{4h>y }a clݙevtuܓ#jK5iRpF&)7|?*<)C}ZbOSj9L-V/]Mr{rK6u{[ !q,`~2hZ.VLŮGr‰*&i`Η{o[zE/N’_T^[tH#LsMu&1}9狕];6 DݺQ<iIB#qeĒx+0Tϐx8] kW[_F|~Z8n.=EwM ɯ&j-R4dϥaƦ_<(i֍ªf+si7?ߝ+Miحx%WŹE|΃-uW;&;oa9P#6Ya 8ʚBVPzkN.Zdo~гeA$NոKIcԈC kg@Ou>9>@{,Aכb}& fn^S5"-ai'3jwO5Oभ0ZvޒdBfXC2+ifﮌwʡLum G{t2PmȟpY}cV&;B }-<mmD3^ۨh"r3%'_\|D=>Eu@bv>D$8'%} 3 KRU d]N[E̴"4zd :'ޠiϒA2ueK[=Oe3 %jys^ ~# 2r%z*f;y8 `w ;RzK널]b Gͽ'X%4#peW\eX%0JѢSxq2~H~6%VP5]ca0Xqmݓaʊo+Z+ =c)>!|,+ۂmTkrdiGmP=iUIx vGZ0ӗԆD]%cpqjJ9,rjt=’݄U7zq}jG.˽=S:sm1L|?ܥTqSZl'c;;~𾒔Њcxq!g zz@%KbϷK |-fWèؑN1U9<霎ϟ)-%RJ/>,4P|IwE/STwnLק#jyeDc޾Am5sd}vva[#pX^&2C=Ds* \1rɓo,f P}yJDJ).w]niwJ㳒c;nK{Lxl^gz%K̖B$' h[yY3Ctd)M.hLXJKO(}4QKnvAv'lL[Ѹ+'4|H_3 Vǯ] <93EsĿ!s i 8 ۙrH\&SgɪѲtO8R-1SL3`iζaEH@{\:ېqβv& VӃWyD((W8Q1F Ȇi }dxie`n Fg]o0N9̀ 9$čDɾh$U#&ϽW3?ݍzuʑ5* WiqTUA͝=2`UJ&Gz/;*bD̬RhQ;R_" Ckv0İ6<.):zai9_{_CW -* iCtA#7S(;#n~6'@*l>]$ AugЛ/Zt:w Pv\f/XqZģ* SU"4^5ab8AҌ}w4@:>DFi:W2S(JYz) `[q] )l+/:3SJȌkVr\8s3P:7@Oc8,~5O ӾZ>̼X"d[);{.;FRVRZc|3!%ا#Y8GA*V2$XX֛jsͩQЬ7O׾Dg+څ`I"Տˉ7dd1eTf3u~IAWG,RMeDG@\LA֥I΋=l?OWBl$~ϱ"_dʊlzlwyyw'˞YxEuLH:X3d݂a>SӴ\X|P] <{αҖH5?M_QP㦬Ő]4"r,&i%6c)6fR]JC^[H_#v1OA0%("Y d^6I^'L# Sc~5GS- 80 А4Uҧy+V+~%Y!IbQa2Eox<ŭ;sBX~yuE7OT (&ZV'LrG0esCSx+۰uC?7h[; ~5@KA77#PGY"_|FM]X29s ߟ,Qy 뼢MdK?^ק$(Dt,Uľ|}Aۑif,ɤ*YTaq0)dzҺ.Lch3k2>_i.\YDibO+h .tr#jèrc*@z ozW2(-P^v;@~/Ȭf14ֈrw W_*ՙB9((cn6r~6FަoƦ5&EPfm1s ٨*OYh5ko-V2Nng+7Z?)ZH(. frZʬBDoܮDGQ55KqeՈ))u,+E㎂`@2o%Ur"g',<" n`4SsA ǽ2Sů1Nd}ֻVr5UϷ5AD R.^ $O&Jti3>v\ݲ;ǩ],}@/HG"K,w w+p;(YsoV4b;EdghT/\ D~2ҁڱ??W! 4T]Jbܯic5 `wC^F)r#f,H_[=]/ >Tkၣf|Jt%kr!a Ug13OPPXC\# _D=5=֨6)`n,Aixf @44}bi=Ty(iUgS跾s";*:|4KkeY Wt7'6`] B5Y)*p!O%V5o:,{p -b\hU93eZxa7by[i^@[:(032WzjqCf7s)Մ:tzDCG}BޅkuOok o d>yO`Jի{o18K Q\A,4ε//WezO}NCkj \fPu!7[iK[%?d׮T%Tu8I`Gklʧ(f\zL[SJB"wGm>OT-hDBـyX0jV=)S#fxYϵx~w ZJ RMɠA=Ug<6>($lCXnʱNTtm{㋀ /'o$g"uR| ZOD?Q\P2J6VI;ܫuL/w6(IC(gM:iphC 7ϣ[oƻ:zB~R_"GwCP=IP3uD[)9ݼA }Ӥ^mgmzXQ;"6L"-5*  wd y9c #qvSR!h JQHާ=55W6@o o| ʮQo |* .MIIIf|ooW| 뮺K, baS3z ~/(5˦b灏9Ɋ" xHmr /*Ro&v&J8fp" e `P]^88\L^_x'>TG0|҅3-LwV%.>( Fe5!zV$UW#s>=i:LxOoq]/a]T~(!օ~,:%S2k'#~stԊ2WW,mIqgߣڡX$ʨq1\iKeɤ U |+$Y-A(Gc;l,Hde}P(Jn{XGbp(އ3lv±zgꗳ*Ao^G >g3 ;ǧ]SNsXT)oאe S1PCXt$o Wv)&8αUfOQ>ul&eigb.A]ʓ!2~( o'DPRPobpFC| `zdxiFoNEgŠK׵cq[!mr,1XH7&- Cӝ!*&ŝȫ?1˰t^7&l!mffB."PauEs9|~:*ѰmS_?5`t2ǐn FxDDf/_W#V$UqILbI 9ZLіG>> u_L=IKXdEY&0U{-=%t*\UVzNrZWk[J]EKL+MsA3IcCНUc06/[/p&(A˹IDR` d`AU/?g챰zJ['Vs^6 o5Җ!ƖfrS^TO#s=O\rRЃ~*Mм| V`D@.χǟ֌' l9U`{v95 a"oz)}!CP-Ğ{ZTqPJ'oA-=D?LZP+ʹW?JhLʇ |RH͝8DͻdExIn)ޠ~7-ʠU/BǪ[JQrV 9m|smC4 z,7zZJmD &*_{Jeclk륕HمJ80g?1M2g\~Yl^= c-wJ X{8W% [+ ~~dJeh F.=xRru:&tw {h˫t>qYaіa(Qpih6M1VN@posFdljς&f`}Sj%ߘ3k t~9?ˏBHXH+%V7i>jĵyGLnN@1R5(!J:?7fCRC^a;ɇ灪$#~?:ڸ+(+hAȗ@sFɵi1Fhmҁvs4ki\аyy~M|H "{Au܌=q^";IB ߻7䮌1cR%b͔K=\*y&ic\{̄>"#,yN5cS]PS@:,}mʍmH\w_ G*̞W^Ɩ׳@[>3]7߁3lNW&G_k1fMtRK?Wn oLĐG?leJ77>xV$61-F3Eh_Hzp/D#B77t|">rId:o_- il_ް:<3m{sH#_ |ac%# 7SZ;%CC',_% B v53^fwj nk"q9O6cګe-RS@o*VeV_2ɣ _D:Qy o!vbtjl\z^&;Ut!fL($o!c;B̪8np0 E869A0)6I&J;!!=y 26UDv"iM2D,LY6391HI[ 5bѕ< b6"u>νCzRqfהc%4o!3 EC2A ĠJ,vbi%k*+Z&I$:B5A~ǐ: ہLv|#_1ɘvSO惲3 Jp2A]ZC͝IM^٤r㗞X_^m^pz]-R՗Tmcةx [ˈN!0vfQZ="IiDd3fT胛rS;EL1h<3é S /hS.aZ4ǫ!*%OO!,rC2NTLbcRm@GD³Hz!Y7E}U;vՙIQC_x1}fvǹT\HZkc?u¬,[/ 7*r\"YD0SV_ mFbj.~hQ4>UL-u0%Av؆l[XN5v>]=Hj8i"UDAA<1P{`l1w6 YcS.=x0:r[k"eOGҊS 91GwxHHEjcsdf K{U-Cbl&NTK $5a^dB.bSP5)uDŽ_Td9gʀ#15dLO("xhT#56Խ`P/ςf,4y%} 3K]~AJrg0'b'Pz#RIi,j['6B]2{A5Ge_JPJ<҃%tۈ 6q9UkO`*X.lǼL ;V e$P1ݘ,Q=1#ɫ Eh,ײԷ{iN/oM{"1ӬnNiA :?6EEG8";)DP6Ne&!$Q808g4ϗ_gebB39ђc6wRHm/B}IΟOmï&_=>OR/ \IevI~=@z{%;EL7nDД ʴE@ruSSŮKK]\M0EPTO0zsVNCӿ?RﯭJ,չkc !5+40NaZID!^[Ř>XNꯄBT nȖoU?i#Ӌxʱ+|"x _S#k3ыq 9JFE`X*!JrP7|JifD/ xC@-q=z6 <ĕ]Q][ EDzAj)0uS?O.]L%ܝ'ڢIy6kTwI՚}`K<=F:8fo{ް8o7tdb?oYT2Eޡ,oR.7hO|ӭ K} H@yԈ%Ed Sh\L<ah?gr^3}BmW \y*ϋ0d- 57HLJN_ T2 'Qc  KʠL&~!fČ2/PZ{VS#R'EQ j?khE*?% ;(:d=8~ ;s6 Rӝi=j\M1wH ',6yV3RKsC7<$KO % GSސ /ND!q0 @Uڰj5I;gh2R8SaGY &@#@c5;`VR'k 2 q/3i z`sAMrg!yH KѫOwpSM樁[}aD Jr gܺl΢%7)i"3$=KT0N1a5= a05̽R 00?+D(+κa}kpx*[&66yVBvAD #׸滏o mj_N4w2"Ǚ^%.E<@"5뭸@m=Z:0@Rk% еv])V HyCO&/0;ژLAޚpu{Ø7УeJ{U.E*djoaN.4t **pQsQݒi§\1D:cp8M6<Am+\QBi!|M!@Z9wރߣHJq#ߥd ; 'LN!9!9o@9a1eZiQM /X*-}3Jy3X!y6{jRz4XƽjZ nw/ ֖>@MT}O +HƏEXi?f(C0\9YOΕ!9j!2+b=ʇ  Hzu x$R3*NNPuMKA":̀V6Tz'fg#T\?dZKSL^'2N3zծĖjy~  #`;*^U_9Bw?H`xP:OT'Zp[kdjAT0&'U4 XEi}u@_)P޽tДgj})jl ؜Zv5{wA-k \IB=ʂ?CEk\6»ɚ%gX*S[%0pv ^oLx8*09L g/*~1!q9(h#܉Ij`es;Y7 FЭϰԝ<ǚJtINv|4]ʢdžbz` ?ǧICnǺwϿ GŨ~A.wu^6rfu\H!1FQ[>Z<8;foyJz`t4dֈ懜?^j8º<.CaucY/ n%Zr9;66ښlf8c۬ jD*YeĨЏa* y¥ˤ6hҘoWƀQdzKN66O8 ~&J,G؇rFh ,s5(D?Yas RjpJ\'j*CmIқwƭj,xO8rT׋ Nxh!çb\6Rt҇fB_qV@;c-Z=]pR3>lo,4͒}aŭru&v8 DY7A d+(357}c]ԄHebQ#Ȋ,eg=3Y S􃶎b  L}N%Ʈɾq=N!CqeMՑtq559)FYIet\6s R48+a<"hJN9_55ҟG"31RSyZJ>\i&廳_{qWP*owy C H7s6@\.@?@dP#w.ƓL ^YٔU J 4||g_Ə ϩODc` m9 v=e^f)D17ܻ "5|"ou0L7˿>J+h)4=L'ҚYIeԳ 6r=+1 B%.h`"Rqy4W,S6E`T?v)j{0 ?6Nx- <8\!Vkޱ^L8T`Qx |ېMǘ]4xDneԎ={6 ߡv_)Qnj8[6jT^?Qo ೑4x)= .68 :dD(Hy| "O? ޷0 {FCQ\vs ԏ6Ye7?߄z'G51˾oE(q"! λX-|Is4MDa٠}4FA>dpYVd_Nw xz [8 0!|64Ppmlڷ{}o,EŗACR7ٌ?"Re?DeʿMIE%ɮQ G}All: \o>٭O1tSWUbutF“`Z>3jK vV9 9bBA甉j+-;J=6҈ulu3~e>%6w%СG)AJ:4ĥhrVaVc-U4q򃬰H]1aQ~HĴrRxLJ" ءO@m*38 eYަ&=/S#ѣ`/[vCJe`1+Ǐe!v28}}tlJ5gW;|SH LŁ$A*"kZM}z鿮{kƘXbgV_8.kKP6`hؘ]dʿ WX|"-Q&Ȃ@(yR}QuiU[{F6Dϴa_-1%rXc=0}9y\4=gӂHc ~|0\b$(lRwo3N^1r\q\ j8!Xr1Z1Ȳ'C~8ZLyP(xs5 ^Q߫IՂEkz`(:Dh ߀ LCĤ%s{|kr#ȉnZoO/AQ'#SLs2Xg <\c율$:!)e(7 QRO5$&!ԷX$1Qڨ2}yL8S2z\ >E;g/~ jOбcF,BeᐝNKsTbB ;IKzk龎Ɉm xizhߔ=ujb'@Lf{Ȫ>47uXT`\N?/cw=mN.F%M 8avctVd/&84] d fTP,`ؐ@ 5$lbS?4عNعw \GП%m#F ƹe*gC|^xc@>E9cLR {%R~^_QEz D& eTKgӂFͱip%{ rr8T O-*=`ΨOLvl%Zj@.CnZD"-.gDi[1ӛAe &6XnQ7^و 4LhZd~>%jcS?DEA^fCȶohr{߃WW5np}_\ܯ *i3{(D{A- q0H)Yf缜u{."̿pA"fzPFoQ˘JQ%N(Mne1g"茢zrr3.նN\@PKb,4,,6 m%Yv\9)C('vs ܓ7^ЖAP]jW~~%)X"E@VuˠnKaԚJM}, nŲ }; Vr$0S)6Z;˂;LI+1d1 Һ&&趒&NW$5Rffƚ"%3I!am֨p RED*:D1aNq-1ǫڸDQXG I 4ǃwHoV'Zȇű Uώ<6-x6_}`2aF|1OJb6cJR-ҒE%U<UѦe"7z`dnE*/ =:k[";,Qtx: 0gLv>Va=qxl2Y^Y0(xf]t09M abށC"?0}b#}?zoL'D/'"f$ڛoZl\Ʀ;5~D!uL&X:ҾVNX ȎvR,I7sqNaNGUU-=-hH4uԶɘ3рR IbR%r"/4F'jcLTGsdΉ'VY`؟Cm51J 7$v*r*sJXGޢgпg]W|V#]҃_emZuyu? PKgd"ͨh\ؑW$]AW`;:kP11D kSt{miP$t?O,q%3>I1+ `f^dhrg$:Le`pvj(, -CZ’I!eךYw\T{F 16˶`>q ֆ{^tVnK|(TS#ed;evv’s$ţU.NeNlK\U K`.vc_Π:!">&Mr0-V\t@#g,f7BhqZʐFPmvM :I|Q8쩙3SS;>\SnrԳ^0f{i$|˒ ^̈́(K r?YJc"1l"6B덛y<ɧH&aQ'P&.Ncц?sk~Ev`K8:4l/i ^=]s)ao= >܀W^zH9x.FcFb -1H.S;DOTcA97"T킔 .tZliqMl%^?"{ʫFL 16M's4r|TA_ y{CcVR>Q*vߝʝ 푠 <J)S@J֦]e$wG`v|sR]avHI<)/x`#e^Q"P劬^,7*xG.o2ZyVuUX4)輲 DScy%0? pq`ֵ$ruխJ7bw&f2>:y$1>srkOft"rkp5$cw N@-po;`%s~&.R! bipewP/1+)T+ f\VR;c( 4豧i\<*ƒ &Gsz;PThv9ZN˨*DhW{і&+L‰ :V}o7nmN 0Cɭ@v5 M/Җ;<9$y8ɣJxf`dGmsB= $pI^+~Y;aX?rMH-pYY:w"@wz<njFCwH psV:O$K3vLU:,EulϿg)&7W,'C85In39ԞE2w,Czc?뚇3MGWs :BQ!n;{<9sۉ HVll Cʗ 8g.iN&cfN!a ;Qr4SKQjšzO,q+,H >wL/߸890<:|5R6 !hvGI#@v ST9/y J?-d%䧋i.kT\(]POJ'8`BWhhy䌌?z*  㑉hkl ,榪iuP~{֥LbIlBQh2Y͌Ȼ/1b<8ج?ILJBwn*PڌaIuLl=ZM0@,V5-Ȃ%^VCȮ{kcrTEm`0elMb4)zu .e#BaYDw(ߪ gp-47/ (mNgYʉ%s7zCC,1_M ×ocJHtMY ji|G_Ic !A۝DI%i:s𵛋0[,y %|dN:Qc2 #S=j1O+JP`xKq;?t#3cSnU= rhHg%2W.ayȕFʅ<:U+;M?6 SȰ;2aVqw5ҦJYJ>􎦛Dos6J@sڣ*~c=}O^jFIVo Nnb4iN1j+oL~*,:4) &b Z~ s#3mLJ=:QFוt#Epq]56>eKugx_5L':lWЍ\@\1==QuN#ܪ#RY*j)͢(W!< 1:Tzp*- bS)Je_4>+U}롖 gI ..2Lb сJ9t3,?ʲFҵe7:~qwv(EA@n QZ<~ ,eI &t:"0 S~O]o ghă֔_4]i q!"厺:6$|*KX9@ •dݴoPIyUY0,HqcPy'ųw1_üVVO0ըd!dCCK.[ s%>q49A[X)U :b:9ŀdyMwP}_1clZ0z3_|WvCS(_b`\|{CK9>qxŲ)Cpmpݻ,^X&TBpүtTT#x vy\VQ35Y.By8?bgp,VBS;?W<8?h_?5Z( Qkx~1 ٻM( 9߲˰TRSDˆm>w]Eya^D/JM7`jSLT6/ Ha>Ç/V 2g=/Sm1ȅq7{jέQf{9𢭧3S:S7-iym/ +5|OMEEWS;5b/(ۤg^N_5pOqݕ9, ;?QCcFg/}Dw<(2s<0KԈeoIs5r2%GZ~sv( hgӮdǫucNBE:#zǙ;;^r~4%!i 'NO~eK.! %BY/CX6}&R}^p^ -ʖtSZ޳^ ur Hn?Q苒jJR7F&e<}ڛV{3WC) /aϭ::YI#L>5Ǧn-Sv Ә*ȥD$ ɶBI_6YBP,)6 8P ey,$aQT w@ݱ,ZӠ|^;ٷϼӽ17,;Ղag6Vi.x Tմ7QPoQ'n# \@RR[U†h޻9oiB|h!EFjGmz o&?`]Y=>{93zvU;Fl{RQc9Oi[ &l~wQeW} ?ǫ;ҫwW;JEE{5oVNcRa{ߘ߽T<2^} K-:7G;1]5doa)9=dW\yAѨwUgP;֒p*I;7>BAi|9#|F^~tgu[Q'>IoCE<6L Pt'ko]?+ri@\ Ϳ\dk?i)Quf}Gs@} ukWʳӀl88hv$D&03^Pnp~8WLXda:h4)3nK qt8(`8p˟Kh26){W[(iHjUG~^fUϟl_ѫZq9N3h[MJՓMj`);ќuoe4&dtjJf^zU"_ؔv" cDk pd?'qa+ <#zi\ n)C"b:`6)m]ر _Y d X"1iKܟa˩SQwIb*McLd%p@Ķm\"T 51Pb2E ?=,rT"xhacaezf7)Iu\^ZC6\uMlz-bqeǕd>7 įCG. oiQht<ŰL?_&@oL)W{OWBaDp`dFmzj̐R[TjX[mFHF#}PKA[ Q\@A? $(ݷ:RsHFWwPe: K׾~rKw^>^WT3*dZJj 2`3Wǐ9|~v9.QsM,s yM{;Atc5 IZ%&sh+xy:9BjQ/ G0/{IxoqS0B*蜀NQYIٟCebi0pI5vjT6VHNALyI,a̚5W9L,BM\W9 *G(/2RAU-}F smܴ~H{+<0Z sY: i@uO wZ)?@ѷScv4Ji6"2M;OlV=7Ԏwi@ Ԯ;7'HѤ$^yᵥ(BYߦai-e>/kT"cD.$9%kQ8L 3(aNmB=+e;{p;1.ҐR1I҉p?=jk_9=(ժM8H[r gEo*=0 =E>Y8iɏȴ< NLYU /Om(%؏tI q),[U~.\g5~ «P6byBV 5\8⌼Ys2go8OoMNuS ,T8=3f=j&8cDYMďn^|&G+ǽ1yY?<òSdu/BrxSYOvd撵i)N+74]2N2 -.NBm^[+ރ=lC%eVBm>4žވ)o%j+VTTZjUUV]D8. F…+b#W-P";4ЙZbPm:ұFm:@OHHTmz˙f-ԼI;m&RDY!X w˶_}N7^<ޤ/|nt2@gqs.>(,sXDO5_$lFZ0 z2:M*`%>W_dSNP͐Pt>|y= ϵ4gB꽨ఌzfcƋ q'Vy&A  (oө|)7AxHqJg~+,Ki"vJNBqs[;'!r!63KOI_&,MX 0@J ӷ6oYԢ`*%Ɂe Kq;Pxia$e+.xbT~Z2-b82]4 1\ĔifAHvJ(3`|ķOQX@*p|Zp {i&"GYWg ߄ה$Ek1OF0|f ǜeO oBsSq9h|a \Gbs6B;\ (r0Ũ =Zg1'ºKz4}14H c(]3y7}y*y2vaZoJdXՆOu$2f 4] ͋&K !MJ~T[D UX24qye3rbM= ½;k']Kpe-/1QX٦DЖ$O爏zmoùݾ|*%s YxLO/ D ̌/xpGp4jB X5Nox5}w[mD)%woZ1c?3800BٹF1}Vd3W}8]ډi9/i's B{AvFu{n #Em #oļgcŝ-{F<3{HYe$"k}rF/orzc]eLS~R3It~ AoawМ=?[ ESf1J)1~koGY%rTYKhmeT^)@BUo|+ye2'+Lɐ}D֝"ksMIdo5x@z(`dC0]|q=OM`  Tekmޑx frc TyuvP`ָ.k b7W-jyay̏h {峳!^ ~(f)kTƃn|8R.6WPF77n=[Gs.i EtQ_6SbM vEg߰5zzI+:Qܟd#a _ͻ8(Ryf l $N9~_I1D#PXLG9_a)w=O,}/'<J7dd S\i%* Z4Ȁ6vPs'. f D}ӤwqW\1O2 Фi1%8n)WTKąj|j|{!)G\P0ҴNEL F׾@&^@ %X҇ 3{t1xeZp~Q@Q=|jQR|948vu -(O uqqUϓ{jҭV'ߙm#Y :zB|CЬܐhEYV~c&@9.G;8{UmKo~B^k:!ABȦJ>TQ9Ύ`~#:]}=}dRx#: IL'kTDav [Y?vܧ-% YΫ9$L,wK UY\NϔݭC!""nb>qR F Wom!XyIs|g7 ~Zfɯsy&(]8T7JDMq\[^IBïzvSJʮ{mF8qX 'oܘf}G1gC1d臃Iu0zwZ¦Nˆ]Bġ]plIMc&؋"mek?ͩ^ r@t6#1Y9TT[+U4ğbbP"$KBj x?})ir]ԌPprSq2 wJ-Ɗvx cZ>҅Qlf/;ĹH<]ܐq3mjdUydݳ7Q5T/U)e^F&Nr?q褪#ȁ߳mf&{Q*}vMVv0-=Rtk-3btKtӉuem9f7XzF@Ϡl;="Twev\W1Hֻb+r`&̽$`:^?Wɞ9]-&>2/V g<Ws6!R[Ve'Oef":GWMsTmfƜm[BW?qr%P|.~kq>BVR90(ʚ%qi!/~_hepCyz3\Ƚךd"P\  LS5t-]&mrw54e(!v_^cU7.3Ȫց'=ȻyόxZb/&:#ᾫԲk 7Y> ݲ>iͨ%i"z!VN~uJDH@a%/HECo# Pn^8bXDPLW*(etV^L*{v+ӶC򽷗y)gM7 >A5g_[|٫r(WUH.%kH p7cǕ:F]5 ?Y&u?5⇡3 ^t r3+#ijƇTkt'jiG@mO"~u˞ӕ1m8d0$%n|Eu-Ri&~ZU}k޿kUJU#yrϔ`N(FΈFU*o|QCc֠} ,~+OUMDWՉ%k% |Fo#Ud'- u&'H2&x[ˇs!~s`OQ)δBE#Z%!nZ>'cGFb CQÒײ;AjA}SbW4xS)f3J|rkEȈêOP6&SBIJ~ ]8sh9K}UW1 *]*,c W&l bF ^".dy .a"t%&ۀx+d<Д kއ{y%ޕ=ZАvU>,2RZ,s ϿMWtIZ9S;{!{aJn/}-5&nbPGM?speu|cx&u=rx d?DrHOښVep)d'vnܹ~tWY_x%eFOػ|eL6y#^ml2Ten>W^Uȡ$"TT DֶcFCoq7~[!j40֯|"w1gFW?Qqf117d)ye\|n"\*TҋM}d@VDY{@WvT{jq=0dϛLOWY+ 1:E:y([Ƨyu IQ̄N 3~!!'V j e\|u:h1j. 5C8WE Sճ&*f'"9Pgg,{/ڍ2H}2\׆ \(H\#}RJRӲ(F}Td 6߈N P`~'̣1ZI4g1TfRN+G+K T a_7O@#xZcǥK8ڶtqyъ&LU oC[ 1*v1GAOZU<ţXʙ;aרq#-gȼ@Zb Kq?keB*Ӭvxx e_-2@d j|\v7w @/%./AQ2u{2Z[bH&"Q5C{:MnJq)KɊ6spUuq jRXuch:#?HTOO@jlC҈D)|6Ԑhա@߶u .sm0[\'GL۹suv}A#֓Ac7/.!"ߡ ݱ䐠?y07d" [ng"hl3x z2a1&J/VtN_> "@WwكhmAG4U \fPh%נޚ(}?;+,?EZl;0q{A3;2`c ed@ v^,WB]$-I8Se~4*]j- vD SmCؓ}ɧsQU۰1qJ;0齼4@2sgJ8:$l "fܚ[EϷ;屵xF\ 85и2R\CU3nr֔SZ]DhOpUhM:-k)×!'9}=oN ywCܗ3zKb! K5+-`xB5vЉK=r}?Pm@ao֋fboz&B*ZDWr mIVq+:_RkӵlY?ed2_/_7h-Q]Ibgy+{S>2fD{SUv3YEs&@?`~;OE%URh.3ET)[(4yv*Wv4˜)С7(r>kf,;KC& | E>TKKrۡJ֝^:T )tdˉ+\'UVZD$Deabdq$(qw.]@ KJWv6mYȤ2Ods*-yaGTS)bAy/U GDIIE|Û@#ost[ R[z6݈cSyHL.Y%z:ONbDQE ~4=ӖpFlRlsՀ CFp+$‰]n(Hr6r%tQZ!׶rj[ۯrtVg^utyE}ufLPkcm/7ن}r5#p3/2s'Y$~~ ap`ٻ 5lcm%3C4C ~/%U9Y-c }Z!|u2,mKicкҬpM2 ?#1u7-p^RsR~I.}ns^ kHp`߼HdFByAևhn YPC=a#$,tsɕT9h.S J`GPUP`Nzƿ̓Szio c9hri*f%D"; ^ JSMEcl>:Ro ag-'YF NdOByL6"D"Kh_$ OjR7~)=Tʒ3 ̯F{t@`QjYVpǗ:ޢ.N:Q c|_jfN^2Kw]z@F%MAm_),̪H9c$H XHj,MԢgc}s$vA9ρ" ",o(L7Տ?VߗKR͉ HB6״kCm"ⰡK?&lzsw?9m<4q7P86,j!%Eֹww;kSFI<"X)uC~[Q 7C|㘇Ů4O9^xR*7yТ3{H I_].g0;ou9Pu⠢4`x'%h% m'C`JrM@yYV 6pjެzC(IaZo|$§ ?wJ+;˗̷vώBB\M|RO%@]Q%&ۛfEf  mK:lQιaEzG9ّ-rO<\f<9dt HH•8;A wWlRr-5fL}ƽ[R볚NeCKȃk8fGm&=~1p}erm¥t"!>1MX zñ PF\ H&' ( ExiETt"k`4v2T \.'2nqgCԃEk!QMR ss*yʥv~@8t42@{ܥ$^kcR;<ֽ̯DޟaJǐɟ&ďi?QtA\5ӊפ ,:~7"-zVw7cݭ hg]/;[ԇ!B4 WR.a2O΢ %BKÁE) p?չ|,' K/)$~- ;( s#6o^BK/nmP3%g"KH)9r ]s]G䄶lF8";h-٢p3 mfd6 l,fwI {àqO ;h FqD ljoUcocH<Hc*IKD\D._|C=ldkT;s'd6vJfTz u$jq:XUbw7nd)$?u2]g z;Bw"SuW8a1&YEv>ν/(}<:BW< OBWA[n}2 = X|yH ߳ԲU gVk vWIkаӫ7*8?uaDbxV,yvLbрc?jptT JT*39n;k$S6--JݧO٠.9DrNR!ABg:FF_S8+ F&Uo yPt?I(bK٘*A!`f=}"&F?~KR~@ Ǿ]UŔ6`0Ҋ~m.f|\%2sQᰲc@tϊuǰ1OIVQ5 ޥ q :C nGw4c3v<2|~ULM/"`'FJmZ͉ qf28+yc}x JE_zZ:0I\49G^,>H_%mYXt {:0=?ᤱd,F Ĺ;N{r!kn:gi+=bv 4L]Ny8_t sl+KݾW7RビCVbGz05lLAkJe\3s) GǔFth:s (Ib'u%,%aOqoOmpӬK>p gɊd! `hZHJKU'?i(*&0L7;1G}OH+0ԊRYTMS/D } y/YwcB/-긇a9p. R؂bј)J vUKd % kF2i#ja[Och@gd gT:>|%ZK R0uF "oCQ #qREᤗ;>^+~D]( ݴQJN1cx: FWu7S~i i,V%cM|OJpI\n}9dfDBQAw͆ R\You}2%rDKGY4Q hўlB.O5 ZK8z֣jvKH$`Fg74MȔPI4N.Ggd6H?ntuhC9Ŕx ZuPm j*g?6V]6b @, ^^gSwD= V$$Qvm@ŔtCI AZ-7 SYT3YT_m&5Z LR1(Y%gHA7;sGv}S&6_k-4SM OsGWqɡDqD,,s03%qΖJ{^$F=OXp-u$?OaV54&(XCg2Ŕ W + PZ`]pZfǿ~$>oHRZ*C`oY<*Fox[ 3q`R< ka *GI8N6f2}eDjY}֋~ʡH`LJg@c밐c* G >jP  sXK(E.b0ʊupϡMUA~{!t,_[ULnÈ$ bhG*^rm+Qpx .)ВpYr k8,4nnyi 0l\IFLp'_ ՠ/3r1A=vR|aL0+ ?(W kԜt"P!:Qk+TO1}W_/Xs>Q-k)խn(O 7FLhTarQT5LV}(~W9`p3="3*sJPzg̈[pY٠0ŋ;r"&1̼)o 1&`(pSVԱa>h#A<GOtSx~U@+ߡ4;H$턊ǜx܌9 \r+ֆ$Ŀ.uu tk>MAJ1ֶu3쨼1@ ]2x_-Q 1_(\R.S<FI dJ#MNڄ 񃙘"(KIϹoZv򧬘@REf=q]nƗnUucpim;/J--kOYS#;'C MR2y=&A}$KyOBbG;>T1%D|& z`".Stw=+>텧D Ay j#K ?z<Ƃ. %)pLlq?Z!A~h2S4{.: BOO:^Mwz['9?L.OfBrS3zW8l 2ͳ8dĕLO1|}ZDߵfZф|حa؞ֽ![.nF$X/-yHs&GcJόF"6 wm-Jə ߣ%:7 oY d5+a^ƒB eȲשW!6ЧSGWk^[6Q]lTݏ#K9+t'E)WFg^7&|.QE)U"BO*ߵ?OX-,>=ػqj:JznK:{JvK(5uƈr v̮y.z䘾y99C#@4z@x@d&,q|UQϒ6ɘ@C9^:$a4ハ--Sˡd@MiFOUNl-/̒0w>S G5>,&FLFQI OUJY&}Ttb#!L܄_̡xYuM3 LsTg&l ,Z6jig!]P$6ks:=CGЋ7Ј2: VC mָ['*P]gv_7{+t{:v~N+Q*A'#Fkr,[1iJyWaBe̠?€^xT HG_ 9nEցhP7`~0X ^V.w#V;Šͥ>0Q|LuGUFїz -ڡ /z+ : +o*5P!W")q#k-hK]93"Gn(,x@z2&T.V#1طgY#o4# {'oZ-ҶbB.hᘶRdwcVIү >|vVͤ4>|ugkILD2" ϰOæTtkNmtv'V0.X6cP_? ePƌkeZBFܤ[ Th۱Ɩ('񱰶ȟ5N`1@Iqᙰ{]~2P1grΔidy`h Wnq},R3Wk'_-\q-Ys }WDn^y!KykfXd>xl"@mX%-P9x`[6(tmiz ML&,\qٿ23(c,l{zipl oJ&}>~ %h` sar`0 $;N˝&r+q-@ߒ{ T1( SEK& M|DF'|YP=7r Pl"t7sZ{ctd$m41S(QBT`} F/:͊ v"tn=Nɟ=#S~kM\ʟHlH"[At+1R]QE92Ywr:xCw$e| YPÊ^x,RY<*KDUVWl-4VVˌّra$BqG.Y%#ܟ:{羚F.-Z5O_*̓߱#I_1|7>4*X,Y-A! e9\\k4JR%GYOwԄ?˸, ·^yST.ǛU+,O[TOA_.zP0udzn/ U^z@t$?nnq(^ڠ'+el/5 Lw=HzLUn%ƒsDli ߷V$,z\Ro[nmN5:18+s~ܼt>=sh|=t(*}{Is,qe̺t׈ً ;mzY[03?yAt=v@/6Z=apFGwlhmi*j|Б#DfBK}8 2DyrVfafVO瑩qvQ'"XW_1hII"X畡vJC03 0I#Be 8B7W5rs9v5A`6%d$qU[Mt0quc\ŤjO!KI͈1EN)0j3(4Yr8>^ eHDH협w #Ohpppf MKDi.Ŵfa~R`71ME#vd "Z¢. (~uJzyw>g]0&Z3;=M^>[ZHFO Cc{A>TFQ:ۚQ7gGqӱ8XͩV%iS[eJH{(TcXADF==pHPm_ ׭Qp!uɫyf} FUoiE5u+,*n6_khB^=qk&a{o*f_N8ޜZT|+d pm.<C6Zoʤ&Gsu x1 |*R7"<#>+AB߁̳$)cEniLUV ~y7>BxLNo=>Jc56~N5%]׻=̉*3 ϻ@DR "o6r yihؽsPtݿhŐE^bcf$g{|Hsi%!vGsSq^A'Ȗ-11~tT*pN4vsMx܋k];I3<pTDJ% *k*!.;𽗮vhvc,jz:pd;ĖdRMb J'A-.@]m&e$AhPEEoGCFcyk Ftz~KT $$ C c>4+"c2%GB~7~2zl NP8|6x+ oſ H8jMz\ (ĸ8(*{#dG^&+2wgvAU%ky%)m=uvܧ]{])%TنfzM̑P*cӗìQ\}37TF ~-m7 T1pD^$+ƳL%ܻ V0i?Yj-P5&$):|4g iy. ) f_=ypQ `Wz9?g1-q"{OYSv rod*ԓ_#v:S&AO&@G|~]8kp~řETIK>aX_HDŽS;H~ŽZO':u6zh GiK0{*b1Y sVC0n)zxB)D?[[[eck/6SeCLw=&Pp F޳LM;y@صAS%T:D5x_7籺~yګ@`ZB HE-1cr\ὖ@^l=q{?jއ\)(#B1,xeFGD ^HPx|sUlu`lYB6]X/cb&:4aذk+%:liTO'2m) f8Fx[G&\qΜ'OHANRtWK=A3#Dw$Z91Fo:IHLSk?ve?:xx&OdT괟&UtEkȨ\8)<8ZGs-ÚCƼ&XhNt'6ypwHnK^s>˭) ^$>< J p.\-4)WO)Q27'H< q,7{"{ySy^՗U[l-CfA+I_cю.u_l>djdq /$A5IS=rYuʧMeooEȜ.w3"d@!$ (ӆBD;UdMi[E[4 gN]ש蚵mEVԭ?" Kq&lAު]ܵj_Ԅ%?^d.bk#Y׆B/ Bqs _Q熡Q+ 2!Yv7HB(WB(MAV={>++%RX]AszLcPr~'s[rG:"P̭JPzN}vI٭T0!jld  *P9aiU7[OР@s}!}K\6_DoުmnLyFmL8Cj0w#j|0bQS".t*rWb.I}W5}uۜhwT柰;j4jƄ&]2FAm瑫pp,uܼRMut7cb`F\k0h!׿lNsm(\'ǫ Mt٤1dhMy;ɇL':DTN 䟆\D6Ї(R)] 8q()ajS5m/H`5 ˆ_2T121&Bsz7 % PdT<=B[+=ۗ4 abog-R|)©p {3Uކ7+sXR8ﶃ~ H_s<5}sJc=fVWFsk&uzR+kW7jK]|_RFZr5əϔA˜' ?]g6ȥΡt BĒ&%BM*,Zq7ϲ<,\O#ݓ(wK%Q|:k!5)x\JˈVbVgZqMHڊ+ۏoAƼN~Fl[p=/!7 1l&r5=yue;Qh彩~ocl>H4_tin S%9ߟmxnqӔcE]; : *'[RjdI9%JiRMNH-J=lM~iጶA [>*Rٺ핳[߿i2>@_HrE'Ue1wcJSZP :geSCb_7la<386zM&y*QwIM]JojAa D,) t v Oeb.4";qH39xf/rvp2oWO||ɮd>{'!=%Oq%Wr1u᛻:ĕ AP雟RԵQ 8wfE]JgO7G٤sot YK5)MõU'Jy0>7bu \$^#䭟yˈ$^ Lxm28a̕#5z2}Xq3ykhm@ZO3˂yŒdw )j݊&k;V@,jt$>D`E v9^ E22U)#&u"u85Oh$$^6{EEi7=M%~b[e98D6B0rT$jlqKhvLo)g 懏o>zf(.?/λq֙>܍h#$E1q1.LoClua?܅d17~0+d,"@) /= V?^ Td%vDi]6*yRǙ4 f 82,v^Hxz } _3Üvjz9ݐ#2M܁:[}j(o)'Rj\/QA9ϜS\G:~O؍: F!ܾĻ~\h| 7,[3SC,Z۠-7޿o_u^.쾟 ݧa8?-_P0B@ O5oQ;Xz4Frłwe[dN*Hؕ!>hFZN$.m؄f*)atcHǽL[/Ckl@JpHR!W1'#nd@u 0 fFH8ID+t?N3 ~4yߓX,>}ǣ yt2O0 A'>'>OWw^]VfQ.i qѭ,ILQnbdBWܻ o_/3ӗh\r($%sfU&Vdp)J=8~yOvx䕉o rW'!o0o *jnނ qQFYtA15Q BJ`:A .i5LLu_I*1#f WA:]% JΚpإR2L۷p7}(,ׇe?$T­Υ~d@Q}zBi;H.@G%UGr3عӐ@6!5IۄTBKkjtkFTqWసH\ݰ.\A~MsIƢ7!%y5Fo-Vݴ'i1kM3O԰YsǤa9"5OȣJB S|A&|la/]#dަ=~iҲ U!Dk7𘹭zr]a;5% M!s9JzŠ;gFB&z8X@qKy6l g{ J|L*lhtjwOZyJ] \)A$̩vCAzSkȹ& ׳'&+[UV\ܚ:=̵w76ҍa\]ټ.DADu+׭0/ddnclS;P/07^:0K`]/mM)蝸I=gk&)VP =g,eR@;/ԙ5(,ijkF-֎Gap3an74 HfԃKԀ?{gkP$mюn4],#X\h-mThM#p(ق36$ uDtw-ŗ:x-=MgY{Yc/lܚނہ;q+@Nj'~ ץ8m21V}o+hQi?;q5bD {X„(R#moCdOĻ'@f/ND#3Ysß>Kk5#oDث?#&Z"2y1MvLmj z/*c*&]N &Ɲhk_ ( 0hfxb jYMM3RM8"h MU#e;j蛜d,GYݥ=ύx&I1~%I,H!;5 G>G*-J6]$$ q(H5Bb/sʮxrZUH>[|匤mnvbρ 8"dx4yH|>m&<"ʨ ^ȒĄM14ܱZ8}qIZ-,^`!?jWLwe8}[k PJLlQ,W6EtW3[}b ݚtȾxIDkE92L4a+zok]Q*c̢![ҩkGj1`ػdD@h4@Fo%-w{Kd|7\5FĞ *iz?E\/ RZ%G;mMh&S򥶅M~QA CgHMM9,4dr#pKW$4[>/>2&뭬!]VڢFփ 75:4" ߏ]Fϓw['#/J3eilDh2}0pI5R/ķa; :WߓnF5ge__]T\DF)<}1/Rvu;&@%>P44ilkTKmX2_%: pIFh^"olu)z5e[j[8%'sdq?&C$g5&Ńj&(4SR;rO|}* })јOr)1V9A#Q修(%_[Lq5#5/QdA51ˌOpE #6.!7vGm#qۊ{`jQIE|zdL.bMo gbs&T2J$C׃ l:E:_jq'T< kO l8FLgdk3>*.(FN vyW1u6AF"J Unci{%>DcVG缌 XѴ"ocWFb~}Y=& !5/&r'-vi=<)N2OLS!_uƋf ! W<f\JB Z]`GtRf: f@W_Kiَbd& ^v5?Qq@Sme}*/VۄX [ ]:tHLj+\1W(`3Uz[J3\oC9gf>b|kO맼~eGH! GٻA\g(>S>2c%4[*,H yp~=m@i{ `*x7Hrn6fE=AWE~ 1C)0`*2%԰c j]oTqm8d*g|V !hnFSz&IMReN&wK,:ܥE(܉}p=W>q4H ﲁQ0CBY4ֵmr3&y4E->oKvZo_%ro jI] f:LݿۧsnoI_ȹ[֎ ACK2-:AHPj˕zg8ۊ^>SWmsjØAcmמ7Wi/H'!P4?d9Pvf%#i0IUE:y||Ccɺ7¦TTC#%ibI^ܻ 8s}XLCOP,~ԚzRz\bXHaUM pmɿ ̟}FG1R4,ڹpX7FS8A\nḎsy3ā0 %?<Yw,}*kvv@rqs<%[$l.o4mݤZRP*YY}wA݃P.%fñ \ͷ%U)zL,g(؏9x:?"t D+iYc(yv +gpX:@_}5԰W^cpn)buZƋ$6"8b!~g$ ` AhTwE8ڒ`cG{i2.Pu3IEKF/bgfJFkNox܁#Lb^h/!kAU?u@9 H6^I5}i('&^V}GxSI|")9?&=Oig\=QzKn#(S">*||zVeնE#|Hfe!&;TV+UJ,t\ f. ,.!ڡg{h_lEA_mslqj)V5t`MO MgBG7jc~$$ a'Sro;XWV*qv\h5B@58øZ_Ր*ZR%pԂrrƠH͕ͨRjWA>A~y]aiJOGXN/3[%V֮)8t袷Z|=UD2/ _J~"X֕;Za\eoy{͍Y`i]lBe./ɥ|Cm7X/] nG2'lX#Jpj1+5|. 5M8o)pEklL/rW '3hQh"?1+9;TO15`BѰ1u<+-y#jaIoYH+jt*Av7ur&nq"İdP(j|<:ؙ TV^NfWO;N׽P, miXDtTN3U5%WTCJ0rP T8msFPua^W8׾Ykp&{0o;Փy=2aVg6 FFHLBtZcVIýΏJ!5+xKk URSx2H@S>[qX1jLW$b,T@~94)ժ\aX+_&+S^HWn@PLָޅaIjbu~-u:Tu;irdA^?jTܐ@! Wv AS 0~]ш@N'#*05:<| !,QJ5fam*LnQ/f{'5@帡eCa=cк$/fHnLj.JWl|BQogL'=,A7#oT\G/irFV-cu\AE|oUƥx1K?f$M"XwDc"jc @Ć=Q:#wUבXhj5j “tI1/̴Nx?y#}N]$]1n%]r*T&<kO=|KB=>mK ,kGeW MtKnGROӅ$\%Nf 03r4z˃c`GXda;R~M|ķ5Bp;觃D0d/guxX¨dKD\M XSߏ!iA(85 Is3c`86e.E'ݕYtx iW^8y67LD00䉓HG2yʒckJ+' 3PƋx?Uoٳ~Gpi]{nkV-j#`Lz78uv@oo:x|_vèp]:#~  ]p>@ nlJҺBSxBb;=ŻDS ؽբcL{׿K.t%FP]U[nn,aۙV-DYCfB$cFjdlL`F׍[!{f(|J ZfbbHs++rUgF8,}-dbk Lէ.?^I |㾞OՌ."vvu|lmQ{YC0sIk/ `ܢŵ|rzѰiYeؑS&O-H[!΄?u4JMkbt=zgթ|@}Ͻ4}ԅRvxpna6ӿYHW=l[z|ꀙ1:;a,HyEKGUܩK]L5!@^ʇ>W%|%X" P"(J9މ*ݖ+_Xa]exOFa眈dlBx:m_Hx !uY?ϝ bƿfz<*Oe'πwcD|4q=]l4ǿefCYB}b.O04?@l[ޗquUƞc}jޓkhS 6OFO`Z^}' NPyV78^/" 2ʍy{O&Ɍۂ U2ѐ߬x66b8F WEi,$}2S /T,k0[- .MPPFy-r>|~9T&eZ⌼¶;pv*,d/I֛v1iE)*|" u(T;%*Z s"V) OYni= Rݿ$ar[v _פeA߮wء8BΒ{r ҄7 jj#x~mw\jʥHֆR]8ӫi /L9ץ36[Y9 ]4]vN!(LgA˨S7t*AB4"ae*f;GL3\,9+P1V;טADHxΚLI% $^Ui8)Qw0w>'S "cw|}4X)&K)zʅ/jѿ- :S9fŪ"{ʇ؅ag7fg҈mw^F9]%rHzKu9}K ͖-ߋ]g{-iym::+C=3nLZṠH_Eߠ7̎}sKtbiObBrz)lW|Rۙ[zwV\xt8lJs&Ȁ?Us@0ʋs6w|1Dg.6f$xR ZqғR 6$;*T GCh]#Ah?/j~n;߮=&8BU^[-gӲޠ {ii lT dSC0͊L2p]ck*CaA?G~XoRlY5yEKE?F"xgo)ڣ^q6866䥲 $8ҼOM-s$ zd1e5ϑ=('6e g{CWPgNYz'qhy< ^t>#ПN5U޼mY -=<_ǝ,̎"sUEJI˔%)RMka.ǿFxD gk2 ѓF[=D¹BJ(Nfj86e>$,4wM@iK8;2(k|I=]e^)-萀s#g1Qe,7; ) בG0>0;τx[C#c'퍜e0h Uk(2p^9lzRET s׷4H lDrY *YmU6#Jf&X OVQ[G\p#PQ ك4b:cB$2N]9IT ُk?j,NOh!{sY O8/-ݜZO<#qX,u@ḞET!gRk9 KG՗ XE|1zT=e*X䧞j?q4uJTC`\>jTDb]J/YadOQ4|h )v$;Uz9iƬYEZhK;b!fIMp Sawcc =tDD\#h;@LW0ۇǜ<A7Nr|Ys_ GعQL86z XpVnlu?jT~> +b/2Յ쵆-ֱ-QAP8B^6 @,{;m駫-e^4̶K1Nֶ+,<sK7294hhzzҤێm¼6D>p%oRS cQZ1Ug{0b'_w'$f:o ص[v[oDEsu$&lKe/3"CߊӴ-4JB|ÁM~J;55gqK3= _&d+/rw5n`.4p˵4"9=uEFzy!y- F(YA5)**sjPfvbV8Eh: 3-V;\F@ B$M|^ I-W"߻n!|Qc~fe_[!e<*D aOk:l {i vMy(?L?SKι|@ w_X,v쫕p㹿Z &JGP  8b9@TuEO]ªRS3-R&K1zDL:փA-^$q#4Ĥ- .(80ǞdȐa..UޑgZ{ ~y f}e 3>8zo`J$ 8L/sk1\R,B$ /N%J Մϔ%ݚjf $uWG-! іaA;K2rc瀳vRmA~4c[|DyYDhMjtaB>5h}uveڙZ|3 {z rqyYf{ 5cbAt B6G3y.ѤJbˀzי(n}|E/m$YOqA5mA3 {xoc sTs rQN/ P#6G8K{Օ{tUq!!`y` Nl( zͷh1ۑNvKv@lٮnGmqP:d5l%DmM ف\cQqQ $?xlC]g7ҦNA{ zG\a۵jY8 :텓Gy+%ȁfSjcޘ{uVum_Io|GX_Y+s1=[Q( VR M܅(`A<^e-2f#S0wPVF۪ ~ujn#Mye oQ;7>jenI͒RxnmLOoF9?9*S"t*#&nF_ʷpk$=@<[ VdAgh A*BcT664^~JDR5R'<_DY J"cW=B3oR.+iRi*9@f$r7۔Ur|wߗuA/Gp#rpyniRQ {4DtħAN[B\/7:Qc|W>zT(}} y94K5?U,4g#Ac~%"q/aĈ0: >!"]=>NUgjhQޞ)k:? YҠ.ǰRH˲F x5S:w>=\WN#kښp(ՇJdJ2;0$_{;XO@Х )4^岰,D-`{E 1k˲XͶ5)e;oM;5N)>ˎv'wE24=lgRY|Bf$rcB#?k8?H/Dr'^u p} kS> 8JO>0w IvaK"idіhPfuM(aa5-2roqϹU*m<a/̗S¶|p@'DuEINWFN@,mbpU7bmh5;e%J)OGSX yɖPRX̛y) DTlI^p(E`P* ,?񿏡+'f'1sų ?|q1@&E(AY5)ڀ7j.yT-K/qS(X`FV=gEk e=u,eyB'v^d`\c%؛Jz*sED>SI *и#]&f[GPN: ."k)J16?]l(;iImCKOɏd_N4iIRy+yȍzFo ffSᯓSL7d u7i!{p-OI؉\)X2qR0Kon5/X7m:ª 6nC`Rs=$X2bdFIB ^*Wh9 yJU}hJwbh'c̻Pnd%ѥth-UYG0+xwe})J./{[&%3,/H=u-7x#J `׾F11,tcV26Z!',s>amۓٍI2TЙ )"?.?'KbJs- j3%ӹQiJ[:eQ(KqJ>D _p{/_ ]cbFgkld{&'L{kcl/?R>xXiXVV6m>MEy"{t5mo&O ZK\_|MiWޫ+5[E˸L} ڼ6x{2" !b=YO^.uc+YGdg}…*IQVU5F R弄a}>. lt )Ԗ n&(rU)* u7IڂFU ,6/&WBM;[JUXY<+AwΩJɍu=%vW|kUNQN\҄k!G/# "b%&va`MӊE7n(`W"ek`l cC*2͑}vRIYXZ!*^+"(?`bEej#] -kMae^Y2vXt&~͓͋TqI;f@VkJ;qܦe:I b)+B0J+HYQ&{TzhH֢иYR|tM"w/RYrQdB➘r{.@B*Xa1һ^&Q#H't,#T{JŤ _\i7"Pqw*'#RKUU707W}w2tkRᲾl If0.ZG@Y1xZTA WRi)UauLw9"3֓:vIWwnfpn&t`Jd!aj~s-ؒm%ϺP*p7j˅7JuI@ 7J]أk,HbXO`q! ?'Vth: `ҵTo;З5NX!1tIoZq]""үX.\?a3ЖO+=*}ۛR:^B%* iXK/A+_lwf׌?wǹՕv+ ut<WcEc PC|ZIVZl"o O#IՈqinN/x{0Ef黮(lF%~J؉r[&f$n$v6T͗4PJ)c#aAq.K)1*:DNSE  @+ycRa)K͔жs*E5e=3Vo!]D?k/H\q\J@wp #fxǦRZ'YN:].[7cPc!'b7$8?Tg( fU|4Ev}</ԳHy=u_,!%wqzB]P#V߈/u$1 Qf(C,2YЯ?v3m5'u !b9\'IF#J;n C%3PO& {'ǰji^֘K@=S|yO˂k+UD b ABLI[؅> ^2E*4Z=^$]1VMF4u-)|O#=u~m ^cQk5Ώm0g QW$v=lRN;^8Kje"n{MB}JØge "Pߒ\Ƨm$,wхnFjጋP_F,B)x=؛ 5HcKsr_Bnk$0z5@οTi]y; ?T޽a bfW&#jQ- [ȽU*W)E˕RSd{-~HTmq#72v^mңJPX<9]!mez5jnyIm{_1+59Sv)tIl2 L&|XN!g+:Q $|5 p#/h24g+M[؆@Jl[7<(&  Q8rYS٧ÑK  WW~jfGע*ׁ}GpݥqG\bZ/^&lo zz27xZ< 1n ]&ohLYDMQ;LںK*TXQMoT8zPci/Nc-f~o3moƨPVS {|%xt"a-}n?!|gNQ?\|%GRfrQJkޗF'LsI3 A]"ѾL8NKޱG*xX!~V`D"\XCfRb)xHJPo`Kq00(6_5t߹MmM.p&_+sl?w&͉?p4Ei3ň(0ƽ^0R܂*T ^h}V7X>*.[  'uEm= Í\^6Nj6~dnΈE- bfF7Qd?eM;LҔ&J;F ,w{>uEMuĄv'0^x١G) s g &"s"1œ:py( AdoD} ,Vk F_F5{ k#N!Y̍]ZM dA@%م%`Fʟy:SMJ*9% ZpYtKI}rxkP qW}ɢ;?b*S6OEiefՠMu]2@|rFczo^n6[&oLV:ſb0An3̸q:j6G;t|*y|''n܈uL EZP_V+hVpaQ7q`)uYNYL:.l<OKQP[)f=64]\*,SBCpUϓonxNUu`XiUհ?CUXӜOEzSA\fTONf݃#WgIRdž ձIw^2V˿o{o1>R IMFmisEBx3C)!V]&9׮.nJ'ytO)8,nNU/e͓HQzD_Բ0Pja,Ɍ`N3\Luo+*o$nv&j/PXfK(TM41^ZHB:~k=h!yrp|4K0j{:m ^ɏ8ٹ< O0%Ě Wv~0hԯ{WZjAAn׫B:j"oH =㴶g ZsVYg G9Scq<#ź>]|jd; ~v&HI=Y jXj6{/WW&[Z+lїdFkIKzs@4C߄ezBʖ%t.=D)Z= 9"ʔzH> tbɕ;ʟ1YJIr3a-֮$oRYYTMġ}\OZ}NXoFxBW99Oo?ݬ,V\;j8ȃ8|KBPXG-:B{rሉ".KM̀;rT;ZJG;{ﭠ5h>CCn^~Ef&OaKLc+{aS'IJ^;zRJ8rP:K{pi$CXbFsƈG4F-hHī:ۑr9DCx$ɬ=f4a3oiQ~6&o816t6m%)@w(,%Y3mly [ jسUI]gx;}e^6v.~)KҥQMһ4|'DeSz* !yWtCo!Λ02)o ;3qfʴhc/x77(r) fr>VA1/ssW(cco"DSD^$;ks?^Ze*9)?@W[Jik)NJjkktTіZF5/*=R9cXS;1"0D9rU&nj4.D0ž57r>-{4N=COP/  3Sqŕhխȣ|[ 4:|뎒Pʪg %#?9[߀v;1Qv"RE-3rR2["T\ >B~9X;؁Sc?Є$Ag[Ԫ]42O+sVe#y `ߑ8nm >)vkOj4i; ٦zE|I 7.G'qP2 ;j;UVdYwvhD3\mo`@͜>_Z#?N5rDZr'?Y;(jQQ6:uNJ)?tFM$#i4`+=M?H #-$;y>&沣[+HV94)xQ '05V!c1ym'~瞶}BW;l|9@[7hRB-Ԙ?roӵuEx@#uAb߲08B"N"g_pN=<t31&.&2U Zƅߑk{% x{^w+6.31W[Ȓg9,TNJď9R }/+*7Ѐsپ^gaE GCo's~yX_AbRt Rop#KڣZ # Ő^L"łNFN@a.ӲG)UGX eV+]6ho8I)gJ&{y2ځ2?,{Ik0TdrT̩' >_9LArі7^W MtՌ4YO)y~ 쭔S/'y2hJ&q52}ݰn`Ҙ`ݲi*ġfΠBp-/_#vَARZKE6YV+(S]1VP<SXY#c(g2ǏDS6zS<z`v #( %NGUX 1>~퐪h`X\,#KCaf5ֺIfL;CRԅ[n4}?|9!7 d}w9Qmo.!<A_zUtJ5 /2/h։o(Xq##Uj 24J Sq73oDNA'؉ F PDT¡+prݒn[koᄇKdRy˸k9bOV6Q ^/z_~l?ϧɞˏf"$dGOӘSI?jc~8 ; <(l8: aď'Gt(dst11c6LgdЭ˚m3ODQ1wl.6>cwt͐pEm؟F#OYz:b'v|q^H'%9bWFOi`0Ēb| ElEϢWly$ccKw^7j2hПȧLB\(̀1$I;AK@˥OOիݗwvQb)[w< mY;ٿ 2 3°ĝtGՙ,\%r)ih78ǎ8 `yV 4 Q213cDn)rv3PIYzV//>3)tCV=2X=/)E {Ne<dK5 v:K^-O:ݢL_ZY cBo}B'@؃GE}I|eZ=U,9DR^a5V3v"@e-cz1%dJ!@@Ee̺㖎G +}%bI,bXf9 "ǷcVux8ɐfFNM'~)#Vͪw54ܘ[.eIw͛#пT8PAzƩO<_tщxhY]*l<#26'ӵ'\Z%+>a֛5Im*+"*XS>3tOHWvю+aQVcIFpzDm4Aә^4G2B%ԃ/hB,˨sQ`Y]}]Y& UE<(m)LV̒!7O i!0]6EDoL>:/tL@vy7QM,})-1;'ɔa$`!vЗPo`+\v KIoX3- J`֊#&PX_~CLj]Y,4Vp7iYmEm_c9Itu' KŗΦ9  *ѓ)2CN3TLގZHu!]mBe#&DF[ޣ@018z>q 9Oy=_E:]}>`2 @04ܴbo^ә/׎(<*g,P5* Y-EZQ{|e=!0ܢ唊|bN!&qL4Z/Ӧr M9$Z ]laXw=ED-SEYH72 \@ɜ`+PU`UĭStr2IATg, EM<֘015 E ,#Dr]:R9իD*'ݑhFV(۷ŽlR+_^~kTf |6'vjKrtM1BW<\mXs>Ϥך64&b> 7˜ 7TRpg`Qk>vE)g#F-(\Шq0}_E^ǎHٝ2è]ne?ȴZ1}D޲O $=dd0i&hGȏ氄:{e#ݮ|,ޔW? n΋Q}cjh,glOOXRc}.[p`zs~iL~h.- Hrή(Tutn_Z :sdhХt5dP=\ȯ;]5c_Hކ4Uۦlu hdVy7yX\9zp?u]RKbiG Z_<2=CTTw㨙&7\ٌ#s>cl7{V3:m)%=I>^=@Nf+!d3A9V pgXyj9?~Ps~]Z4J7'-;6zܡrp=Xv9k]z^/HG$tiƟVjGأ[h,!-Y ~F5u&j.2,! C2?$tfm;7A* 鰄f)б 5|3= --y*;<*v})"6TsН=wY'j!鬹Ÿ=dd_nUVBPV1bnQ[ră>Dgpc D;HaA(\iP;z"ѝMe۔,?)NB}lK(NNeKj{(>%~EdH'9 p4?3} ؞9x6z-kP >Fpi%nei `v3 $G aX6 GT DM~ZR,s!r'%Jr=b M2'a=EI:eCudvޙrh8IvTFF1 }}7?{ߚL {~k`뇙MYgvfo+д3)~[S@H\Cҿv~`vdEݫ?_BJ:':խ"HSt'vyd0)=ȝ g 3o:.tc y^dH8Ƹ9Y"L`x>^&:{ bJN9/L!qBWUd$e`GT\SS`6t-P &.Ϳce穐20:Xe8dƨ 0/ H8 6GnI&e b@-1L4Aƚ :T,q~ۀKMbEzPR;c)t2yX9NKA@k~aKarXS=>qH7@݀02@ۈP?]@sw,ȱ+CD"[J&Ʒ|H0Uc$~~g4,ZyrZVXJKz_hvzc xu\l 󏶩)|C7kSjOV!"4p{FzQH-oSԇ^Ʋc^I2K]ܜؼL"_8!H-f@-]`?bvY`篠f{~G^Xcnc0B7e7B6/u;|ukī?s[NU &ڛ(f>ݓOTk0\鰉2M"u{WVd[bEG-8Y:#ԇl* 1,Jb[5oJǻp*nҥe)w D]s"v8un'k&CeKh)hrzv=E1 bu5|ln[iѓb_uty:Sqp $cU F1yZ|C|P(w"##>r.ZqV8Ě*,{ VP6楕^K(R^ D^ԉ'pBkwSfӕgHn2 5W07HkI@<@;M3J.+OџM0;a7xmqbS7"ZiFJ]kO&k F¢y)g.F-8/=uZep)_Itm0$F಩5?w0F 4LHwuY>3O饝D5 ݿh^7FE:!Z6ȲEN'C'5ބ=*d2!xY9N:(W*CeW>BShȦq Y~N"l3B6t7LjP)쀗_$HJ]0IU ŗssVvq~o~xׇ(<em Mt3OKCbzR^AjazFu@kb$es𧭬(o1r t !9ɡޝ*"4(tڹOuODOWOWpvy"wDy: ٹVgN!ﶛ>1 ^Y`ԯ͉8AXC7* B!ɏF$N}<ޞYvoYN \o_Gzg3%a%~C1Z`H6+'K>-=.&_ߣ]=4?WҒ(7#HHŽL?yNR-P?Q́a?1?!LF>؇OG(P:BmSk;LΧ)*˹SpVkK{=RMSMn] @_FĜmEE2DƞVYܫb\Ő>w̍ẓoPsߋk+bpA`pHNYLX%GT0ײy\0+LtͨMkQ"fmP>9}@Z e$fli8-?QĄZ|کMnv}I8xoYФayΗX,SF3G.t*:<#r g$ٞ꿽Ҁ'슷̤7(utS8i*&N?L|TQiӧck|Ih;K o$`CA/&9=l%t czp VbFyvzYNKW|*ėf `X%5`YjU,2< \j($a8^gv<2c3A ,AR@&ب>uXr ׆H. &b.ݍCǜMz&=\U(3v}#PmCu*L뷮@8cj9&LW \iO]+Z$G Ǘ>5ZK]O7% qg; oY(y'w~rCKc z@W :qBbPϚW=WωڛErL;uZ?FPvw{rFx "8)񞈣㱺aƨУyF>o_=bCڄڣe=-9x<`ϧ]@ٮT%\P?,f:'+2;鮉G yc3}<^qT( w8;S 8[G1%c.eH>?N͌,ے )ٜ-sp؍0uCvfa^`w*QNqIL{b[kcBh"jme!%#ۗnxv,HϮ9]׎p1}ACjC E%Z.]6Ҩ.F\ŽPGȚB 4M֕ꇏ_<^@╉izSa -W[VL`b,A=T<1{eJB|[~0Ѐ1hq˅Xe]%X? Z4|wk,6og%WNQ"r#kI4fC8͆sp8rtGx75Cp@9~P UX!z/*U+:d~9fЦnnfd,?DO ;}iZSqfTf6$|p ֜4wk)c _vZȃe?a)cg4RW:DGI|i$u"ݸ?W5W(zs82//fI1OR)I m]PSsM/H9|'cۄM"vxp`^q|m) TͤFq1-&F׶B]d0/ٴ0[s>`1yϼ,#wUb 1Q7 &/i?8eg~d,o[/MUᣪ/hICg=N3BPZi\thS2"OkӂصXrsfUО xxzQt+jy{<(ul4?nyXwC&/?hT^㒤Z1n/\ #w}Š2M@#7TGKN8 [_cAGz{ρ|&K=AWbkA~ɞk2=~g=VΪVtr*f'_Ŝг)&aM!ĩ'[~D^L_ƀob :^"NCZ]9D/#7SR`?adJҁD)=<~W7U'4O% % ?$6JPeM:C-(/a=pVc/Nf1|).HK9" LmuLFsd*Z^Lb.$%,>dF[_gvH!4,Un_p,"܎(Gt5oo೤<]̛k&S\eo[^򄄜^};8ގLuώ3i]!@|RV pU 2=AoC O4-:TrxI;-*_s RCHMp3~,l#B{Dm܆C鬥'EwT`T޶xܓU3]nx+g{LC8uϷOL5n1%nwH"\ZDL GFGE4,r;@xԀ# #(wn\H ̡|k53P8% jc֪j7c榻GqgN`_5 ݮ5P.}醓 NG1Gt]!f$3AW7.׹dR›[.UEl\x;֩B`WsF'|]d4vB*!`9L+"?T\ 6eT<#K~ PqOp {o3H_k5:wAP~u7_BJUHIN>(~yň]_xNQf/!CtpG+^#. >=9}_?e@LTYq*[=Iߴ̤Y5(h`p~B2loǠhy3ƪ)hy<4J{Dz-c ,V9EƏ"WzaYǏgZ"A%@.mHfJ'L+r!:H |2~>[e9Dn=|YM|bxC8 Yx[,+7#qN루\ufSdqK:bo=4٦ps&|?o8[{uY1r2ly8[oU4_qRgi6b#&~{Cf a%/LO/|Lq9J*7V!7?8<4BP>]-uH1Q<OLdǑ4FöƜ>K dĕ1D/y5,Zce9FCkyXmىTR}U6 QGN+ӃbNq]N;+#цvo."c Aw8@q@_[\ V̩Q1 ~sMB6(@`M)AX2H]A n{ݟ%ѨXo)Š)46q\}Ϲ1C nDD 99(6uER ݄û_=6 &%zZ԰1*24SSGTk\(sMH ;sl}1_H _Db/K\/+>Vf>h Awo}53 QԸ MP< sQх`ARHm*> ofѶaEezP[ Y]e:*Xg]< YMS{xr*@a'Y_^uzylvs&io)ԏ"ugZiB\b.)ȱ~Fc c="3v'~})`;gȐW a9 S &9EBuj7ImBybrlhq 'Ӎ֙!'+TxƑ˕ؒ0x̂'2Y pv@@:u> æl ͂9^$&&@yIYl4Q4 ^YN ͽsᙚQfLd#7Sj  ?ﳈjspEQ?nJqۻo;=](Wm^ #U -tD5'Fj3P/7;4X7':}%VcF em{KL-]l|.bܨil~Fy"H0d[>٠/`r`2vk8*ˌAަSU| FQ?Kq:e^ b]?}?!dT$=6"FɅ+ ]yx" zWT/[CvIl&!";|XN'jѻÏ /nJf1Z4-B2o`Zdi}}:UK{}v9\ef \ g0>VR\ቍmfӤCn|Xmv"0q(TbWoV.b9&NZy縯 #3?o[9۝5ŏgNgs |'n"A{Kw>6[WGɡV}-%~jQ6\-XþQn߭_J(Z +_ k&k:xG잻$ h|Gz!wP_c<(4Ưh9pjbć1\9Pޓ"j҂ŰBžU[D>*X_XfH8ހ6mPjAw0':D=FƊñ(x*dt2Ύ.h2? VRGU‡yyMuz}[VS #"3@XZ,ٌB7Ōui>4r83 ptD/)D#L?Fւ)epP_K.;TkWfm(&&p醳w'1').e&^G9R:Wg t~ 6 7wS[#uZ2|[\B N¬HKΗטz'Hn gMo'tz^l%/ͭY"|nJ72:=XJ LKQa(Dib%@?}׵/%ή]Kb{<3=; 'T^X} zp<)>@Gl%`whBB OR]Zĵ7ېǰX߂~3e5X cbaiKM_%e:+sMO=Ƣn#pc΋Gm#rm/BN/tkBf/gRgs,oѠ+xáG%^}j<>B7Mսp3nv[x#Usܧ5Tϙ$@w'z U//h9ﴜbJ'wn:|w[ ǂ@)r5Pv%ˑMD@ҎGRR+@VBہ;>B(P\^^Yi?vl\E;O cJ7ϥ zK3SK1ZJ?>F1l4' .nȚ^ep5!>VmE>3E@ [5&G6~EMzG $"Kn$/F[u-\S˭Mb3g ~58P62v-~:f4|m=N;:Ǜ^FЯEFY>qJhi]mκ$WCs]A҅aC͚@V$jcʕZO:`o:`\fl!SXu^B޺>5L4XDV% 6F N<=ɬ-Mb7"_!1`Agb9 SGǝ#wcF+y*!sӺKNt!{]P<?H<6AOiɴ Rq!qrܙ !t6.L]@-D-HӌoN¬4נ7z#8iA=&/FH޲K>Im-;9˲!L+aMs+LwhPpmpiu|(1$&!HIk DE;r5 G$C~ k7жNJ;nDmNGT3^;or6{ qe$R4s*9/wnw^gjn+1Ld&Ie57US|BXs:LV5'}m'(I]~'ezg\%X ɬk\ynn*3w[8ԤĨOPXzV0LJ8s[ɩ{}¬+V\&щ5~j3ydvPENZ4XPjߊBѓ:]v^}&_ QA J؋qQ۳ǧǿxٯ#`^4@.7ʨBʚUM67ANi=!ܻ9U6)L--bRv2 "{rknʪWv_ I`m.bDl[olrbJ+R9/,a&o?;n=4,w4"QS/[hGUj ,D9 /&=%՟"zU,=#d~ۣvt@vBE6\% #]ӓs6kFFsr aYkC2^"-'qMUiEf3j*)i(]#iO# eʛ?PB55|llw!.URk +qѹNv.'j E{pla$;uU"H><\*kDayXp"I#c.--k]%_^'i"\<]߮3dޛ=ɹч;)D~3)NV1mYW$$x $1t>nlwb~U؋PG d(aDו]yTh/=q-/u%0M|oA}1X%d+-Rl)iqL6NhqpMOU];\ي`Ok/p|Ӣ֓4kxUN|:0$恩0};Ux(i{v?H6TȿC:U#`JiφAިڠ*IFn4pguZ}꘾Q9|-jku{`CC7eOe'*&W.5{&T븲E@*)y>ogmtן5w*:K'KBb2G{{Wm]nr?Q,냄›2pD8BuЬ} OڙhJƨc.V{&T/@YU _X> &fG+5SR7!Ae!|7Ɍ,M䘦c0XTmKpyNB&#aܾ6zqhMOPLY8]}K9qW(y('ÄZ3 tJnyb9hD#ߨ-JU)0ˮU_y蔐DK?T穳q{bD{t^o:ؚG迲Hؽ$@QJY*-z;}(6rg]Ն%^%t -@(vuGwS2ҺH8V[Ig[3 y\FlZ(h_ oYD=8,:8f,gH(R =_oѪ Ɠbw>DD7B5%:wXnB;*;CBdԬp?&CU-k(1N6Wm4ԭ2VҢDw&?QUG(hC8*@{"X/ѹzպ:xAںs*ϳ]w6v%6 -OPQqaXdmkOrvP26G͈F0ulxp: C?y`~W{AÌAO]P(Y^"!ZefmKNwҎƔ|H%|eFU~vW߮{^{P2y)';Z~I'i te$8‡Yn\ `yf+&f "ݹK"vwKpeء*#"?069ќaR-gM@Nk.40hw/4B2)Oor n,*cDJyzsv4|Q'&php|C-VstS\ٺˏc<@ٿ`~yD Qh)]|Dx1pT9f.hzwwKKlf][A dcM𷉈Њe Y0U ©ϕīPҾfx?m E!O hdȒ"n6M6:ܛ4J_ KRvu~L޲~աByzȳ:Mb!Jx_oP([ 7 x1&d/|? CxRͫt»H_D`O1c Zl,Q4Dm+j4~j/n򪶜]6yjN $^,b2HBy:a֏b9kmmLPWP':O4]ڲ=تf^~ PPoIP[rieKk~?+9j'S&Z^HR Bn;k2a +CPqX r:5+Vc7%pǺyIisr|D_~v:2}񨃆P^k #+0ߔ@8P5ն|& `Y ވ2GTb?TeC9\?~3158.Q[@DjMJz,M <~ns,$S.Fh~tl|{u++U}hR3Z娞sQ~So6`-k%;7b Y7@Wzy; co]Vcw8 v@i&v2NkJB 6D'ΐN58tv_3k%tgЮC0ɱ֙l-L"28gk }n_F70c+q8NfOM'O}9k|g–uSAiXC  Lʗ^U+f%~9gΌVP.$6&E˶۶7؜-/ӝrsԶsj!pQgds_&F 7e٬sg9DХId7Rw^ת8W^^Ll@skb!>X8~!LAN ѿQY9T/AТ\C 3|}ըl* ]*h?,.V>0G*/ 8{-5St}ڀj;(.XڟN&p1+&d찆Y-2sv\BQP[KXW.1z+Z^$W1r&)rf;2~}RhW12:_}L1"s=P3CrJIS)(扼w?+`)Aû iozN<^t94^` 6vA\mdVN Ⴧ68J%E7CB >"s*Sē6*H&taVf!V:K|9c~8M 9UkqSՓ6`W]~LBQ` Oc5}Q~U 3W? q$'}B'&뺬)GA] (.+RoC}bt5eA-% ȣ lx0@F}(;O4A~:`ʡWrg?iT~qέDէ%tKl eSf'&%Ǩ=MҪg_>/ޥK(nLy{)~F1, 0 jOhK <{6ͽx.hcõ]lS'a/*ըٔnzwQ l%>hß2ZB<hz伋`1FzfRt*pXBryRj>íIaYI3nXYC!%QAO])Olx)1ԗu>8֚!n&R ?";b(3 / Ef^2VjܪXW! #,v8:-]*LFr!z-mݴ:9A 5\!F.0LLU!J}'y'}BPQ?0ƂmUΉ$*հ ½GSf j|x1p+θDXCO 0jK=#_qVlji&iQP xޞ&ew` KL-8q@NAoxC I81#fj5˙'ĞfJ]K7Y}{D]{G~uceeDZDGJ} f.G%4-@vxc5}ˎuleg7:m4GxQ;&t&z-i‡Ny&+i{ O-n9wB=f$;ԗU"ә Q{zК߃r 5*K3T'm⎝ĹC2N4mk)ϔ!%]=9KNΣ+TऺlM$ x|'8R{ݔe-+h;UqP0@1تƣ/_µ=0^^F{v:vxPwWsH\0{H]`%WȎƴӵ^v@mO`}y01ҵ3)g.O\/U2??ع33X_THm طz9T%\santS/NaZLx/l"y9u ߏ Wj?bV"NCr_: g*tS i.f-gnKFBwM2dYT5}$:O,eoy= : y:czGJ!ߒXbH(ou+XĪ*ay{)k1yBI*8dY"GY+y=)tp"vS2*$jW]S=.oAr C#W|-+CaO.]# w|?9|2>;~Q![\w*e Oi\fMP4h%H5hڐP]ֆǨ{cQ\ՃjiEڍLqF&#b6nQ$d5b31;|  .FA&;ir nLs7 bzd=/)=\w/CV}DFLDqAOcb(IClb CmBٰq kv l&'X Q%t,Y&-q|^yBgs$ }{(,{a潉r1|}VugF^<E ͭ@끊Y ~A^m!C/\`H`,5E߇ fij-KuX`d ~[S/}jmܷQkƶxH"ΌPT[HKe>"ǡe.#I%(/;QC}zOSK|@']0SPH_u,f =8` [cߪ~ 5FxLV\#.P*_EV21ʘjvJFqjaǞFPp-b,)-S9@0j 4-!µDNa|iтb?zKھa,n٧>wʖ>A5EK{nȮ=*!3 VF(uu䓮}Q-÷1;yZNPMwc1˾FaRǫɚPT]n +Zsra|*M]1!sxx>\:LkVr:]x0D?E5|qbU^P܋)< MUzqdvsĪj_ |l%k^T:eI/9  viiPV8Ov索Ř,瘬pV[P~Uı{ :QS]pH4z]X|E"lꭧu6|d4Sƾ/##4;\%D`<ۖ5ڣx!']u,WOɾRdDq|UQ8DzمEPƊ{[d1A,)HfBsByD2|>EQNVwϏ}QH4^C[fbEVE ƴuLod<'lɕ9/ b?Bs>?P=KeI3]ڀC@EG{ Xh:l&D#c ?%}C yb IEKƭ´C~DҪ~\0yJ#CXh€jz}-Lԝ)peZyF(胺7?KyydJdQ03jB:?K~Hu~)dDɌŦP6׳Bncs9uhcȘ_d1 !A]XX̙mD1{.o>>(*ϛfɛXrirO%dpw,K$|ul@1O 5H b0+Ͷ <Ɛe.S믅Wd [:hX="T9ѷ0~&8c̽\-wW}]Zt-SC@WWL>᥯hI]l(BGZzJ#Xs 0,^y.x̛0fa]Ͳ#e"2+x2b .,$!`p.bnFĠ*Oͯ:n"*.lf6\=~.O%͉f:ة4KWx)pkVa{D ]]nEUL Z0P tI($%q`~v'*~,,G?qVEt!u^b3()w0aKl,s>,@WD(Q8+LTzCH&f(d/`K eַ-+l Ӕ3E =h!:^'Npe'$ihaԧ-?J*A>萄aM8:qg d8 }kMסa-k(sDL)98oīO#nשrգGJ5Sbm>d{oA>jW<UZ+ƠroXd2nKDP\Qp,o]L՘bHq2T e٪eܤG{{NY8 sDDj?"V5ȹ-X'")H-oPb#JUF~;s D7yKi is׵^Y4Y5!5 aџC.͸84B ,S(h!GpOUs`StX;=O#k:bӡ9 YA):޸L7#WeB)0K|c.o䭲*re<Lp)R^!)t­Z-_ŷDMNÓ ;9s#d̖txI"dt6a{Sԥe8" 6$Y~p-!eѧEIG7D/6GhU q%|aEn[ct44!B-6;VugGp*W945x9avYz 0@/0>Z+69au]{'rQ>J7=Gjj6|^nw@BmuCyQ4⤃L85%s hŸEqi )bz4b:ءS5rp$~ ĭDB7SAZu(Qٮmm\Lm3Q-̧ؕc֛z@4d* `[6ԏ(%N`r:aFA&hxAb^ Q| 8h$+EpT1CS9yruMkb`[> p~(c!c [&5mj6U'gGuǏֵw,e%%]-RTNDfj ˀPH@TkمD="5ϳ"˯\|ZDZ׺W2 aSnW D: 3/w| u)̄z&0x }.N/wҢ769aN|ë<\,fpH O;*BCY{QXC{Xe.b?]Ǐٽ '9߼h [~O0~I Xv}I8<6MW:*9A[H\%nS>̈́3W@Cu'!Gf@1;'O3 ?mٗX!I`#<)`AL@zl\!.:R9?]x)g3sܾ|Ҹi^O< -:pSDꍽn6: *Q2hIѼz2:Z,[AA-s\iN 2C֌tف:<VLi/nLuYLɲf5>#xMu^adhuT rA&>)P0 aOx{9ӱ6~%Ŋw@dk:DMlo HWJ'D%Z\kݡػܮ=lgd>>TV6`x^zb\y}i$B 9皵eI%^pw4qÜKRf EyQ2J)utq9 ҊS}a bz=V&O5bW}Ox-E;*|Hm"a j)tYvqv@F&Ӹ>JN.( M<_tdǫ}A<M[r<9t%mV})V/tKӳ`^NG1X1dXqdi9\h-M1-{A#m>AOҚgm4G66zD *.U+"^KQ^P=ARszfίZ*ltDƱhJnݦF6Jas&b-p^{hzvsvcZ.Cfv["C0y` eFT"rFYiЇ"~"|G;G9i8ʃ3*pψ)Iܘlvi6PBBR qE"Х-Wք6-qr)A.\"PaP#wwIe#S0NV@<~ #,,dW3S~` =CPUVѺ /2ur9`K._\vF|E/BN\9*KKJV}H0?s97̵>T\29$ĉܨ1-'9䬓%I7ǧ+hSzV#?.CeF 7HhqֳL" D3!C[`9q֐&nX|O]9q♜0>Q;W2ڇ1hLEzO/=pUZ@s,ZqQ㿓Oe2?nkzN,O1ɩ:(lfOŸgia\BIi8(7dz {p~撔wV]H0 Nj W=~^]24\I3:qH F}+^HTm_~)/BhvڿlI'iGcO<&_xCaϖYܭ &f:#6#%ļ : o r8/Ab;IA x!['L`=ym^VB|Y#wX3CJ &^n;D*€Ċ$O~>W-ו#\=g8ިBlr!@S!DyQB*VP|\9MY|BKy_b#6>NTH)RQnyk=KT³& /w/k .nB3r7+OȲ w6U,Zwbv5VAU5Uc$MJKָ"K$gYliUk\"YO4ic&}㋱-/>*s? 'J=,s'GoTt[o :l2PQwRcDZ#YPJ{^;"eC88.%pKxq^A rga?E[KS9BiOp7Zه"QCZQZl`D{@Wt_) 7[`rG>C ;Pи5|^U *V%7'oxhI M:B;7TӪ}1Z Fz@'$0جL扌f`HS{P[9-x&h} ka9/)ȞKoYkҡ8[E>5<cn:=dY?Y$؂H)zsDsĨ} `<\k=],DaPܨ5 (sDm~_zM}ig>D ƻnY$s0tBqDP`8=ae ,Rɘ^cXkXiϕ#6z b`l_H4[4XWtqL%ZJKƎd A(8AM{ad'VZ3{/7N)嵾꫆yR'f"DΏ08p&% Ko-o΃47Ǐ̻ms?KV3-jxt@0i6w |-60?ڨ]S #~qeS[jПa1U6AM7mHg.JK!ox%$.Q!RuHGIT܂ҪSIuDʒcҝ8-c}A)C@*?g(eB$uHϿ="A- S\ݔ 5iLdA*^\C4WkQ|g5gz+`hh:,"bV%gDO{K/NEwp''ccZV9ʂE.]b8vI$`vȎC|19sдj)ieӉ p4K\Jr,,`Xޤ1Cү FGR>ʱ{ٕ'l} t~h*r@.d9XAěo0L MV|oxώX5kYd/.}h qL{M+@|!eAE[~3jS;_deN*|BĪ3i&jaE'M:UPb̳:<HqJG |qam~غr0TgxֺΟ<1~N4ǟD]so=GRضyALf XoQxa!p ȪSS{cN]oVj1e`7 l,<G|97sX~^NT NGcC+!G(>ts)kGNMd@||fAn *Z ^:)RAC6-'/݊nV6iL2nJ,5#^5_X4nJ#, ]$2Ɣ#$ޭq򳖁dAyVVD儈_y yxVmj3Dzn&-B5z"I@ EzgΫ|3NK<O'ȏ O]ש⌆K?UE i'tdď,w̍i wW |#%XɷiV$}{9> iݞL^>w=B>Do#(E:gKK=Oώ'/e}kbx]_QSu"Pq!1\rU"bg9&G۲9G;bsƜe= >Ԑ?F.^͗]N}krʫC. -0'aσ^6oA\[)R|; -2A.s"xhxmr`,ǟWD^3I›ݬg}$g\HʽZ=JU*9=Yv.jyx ? E|n xARGCEsC,! o3$LR&Nܧ'P*:T7"[fYxNݩG]ok}iyyD5uDz&LU4X7=u%{$}NP}w&2/z"_j9\Z!A7p jbS!cis{z? ZJޡi erbվG \q2_h;ڷ$x :KCrxk(ɯ( 58~BBɟiD;&CtrQTRq_fa)\0^1JDؒשּׁʻB@칣GGb,렧P 4fyt70fy)ί"x>{44ϟ1J]k[ƚr\. ;V4j.Q/Π^}DwsWwcð\InYM4E/ 0,]/bZ/fon<@9XEig>Ouˆ8{@^Nd14 /8CWdBoЙ|Em"ݙek[H M(˜f}/;M&Iˠ{bʜ+q8\qE>Q1q;EԗlrVw$10f̧V25^X<<Ï람4H+Cl 3k %}RF`.'6³8{~㰅;3)†wôЈpL{{ /B 7d6PU#W %2;CZ5͌0=#--u-H*׺xM}9yaꝕ}` 9LPe[ϕ mt@K5m--3hɉ#Zaƺ|OiB&P#iv0,:Fb͞ HK$$k㆑egK]VK^[51R|Ij]2ԚߘVd\̧4ݏаѕ(h5(-kn^NҪ ~z.ˬ$X~w*4yb*,b l8alP+~DDԼ Ui@0rͯ3:E|mX4rl%U}0!C{@MX xV~; 3,nB^z>iKGRcE"YU;1 @4hk-qdQIiIB0 Ub?(kDvk ;Rhbl^፝+4Yp$:Sty/Qh+k* 5Ƀ1fjOO1bO!Gy-ɵd`'{sJCֆF,Qע4 c 'iG8*`1e));t: E{Tuc]eQV̶Αɍ?&Ϙܽrx@ܙȴsts,"\Qo-sqf(;az 3QӔJ&Ʒ‚M+TV(0gXDI-p&0(揳]LF_d;'0Kp I@"V4A™)M I5(_y\f]mޏ.#*>0`!{e9]_w[o,qnyN=Yq~1p|D4YmţRM6iw:u0%fu;B- 2GU|:ej!'/h7?'ƹbnSmXjUu15ݸĖ.Uw  e'EQ} <ր{׉tMKVtq*Uq̯MQX%2$ SPq/wd'U:2wZ.F`VM>BjJ2$Hn#ם$ME.uyteE5Ơ& e0M4p˲յhN_btٍ['Rn?S԰-}2xƯi̞ :0#bUӲ@{|3RA.F(>&!2x;R5l7i;?GZnH{E[>LW Qx&tP=_(sDA 41Yg >At(WSc4''0f5^}p4n{Dt$,=U'6-YK42\&z)c)=/¼9:3u :w8Ad^~>=ZQ'˽L-e?wLz^3ǨdEHJyE@yȖ*WNtEP)._ś|K S[BI=c\Kw{~̅X>.I呗-?zP'`~&p2Qzb-\hmHC-p[*2A8m$7APxdh)fd!by5Rй@k/y6Ph+x, @_Oɱ|rY[LM2oL !g#ʤtȀ;a@hՍu.gw&fb [+@V,W(bVr&;pOɂƧN )<RkF:iJ.*V`co"7R\9Cӧ|\ZxP7yz)4rNW{3{g0zDjFnpMOs!DV|(]K ];}0()x{bޔ0B{a=\L=s~O217 Щ>XZQh S̍qOחeS*T՘wc`vyRVYc_ n</KmOEcUs?mLSD[]`${7ϟw[ZGejfx|ySuG1W 𸜢^7OȿXY4R@{V!БwԀP8+X8}h]A%`8bC6 ˔FI~6y7}r=Z-RG΅$߶dc"9pcPپ|ReTʼnl̊37@ҭˀgXȖP)a"k 4|aEE!cܠUߌW&)B˔,TG3HHR|6HNV1~D6Vs5%w7.$dX'1w}Ifh]吂:nksnAsʧknؗ^8*t@ԟdFw{臂ϡ#z.BeP*iˍΩm[ ص~F\ U! ^p\[Jh9QzF^MaxRk204q D: h (]\!]],ayS'|Ńk}vn N )|~RiqwJk&^-{c*' qkvƎׂ;$~7cZ1H"l ~vpTnspbd89GcgNɻ[v^hD_֣`. nPZ!YU›MӍu5yt[)+:UPPAS0mI=t)=Hhxߋ"\efZY^#Ɠ[Sr֨-8AtpY>odKlBBNVFR20~Y/ `Cazi wźt.UB1IL v՝yEy^&&Plt$ߥg(tV؅;Q}<;n.؊"!^]9;D01srg8V]1_sHjޑ۸kf SbKUM`pqKq&ZKԫeeS#JmXզЕskdbtV HoD*3ުi[m EtOUq,&! ʾņG<[N:"T5iV\l9Q.nXK+eIҸl]or-KMvh \Q-?I9O<փԽẗ́c~]8/v syэCI=#ϓj{~7~SS#B :,Tcg% n;%EjBozΣ[&愔œV8ׯڑ#.u  (gPinĴ9jHNd|)ܰF ĕ1;aR^)`n9bzLaA,&ۖX%z=礘Q\KGO{9A4pWdr˜ju<,f= QG~m䉅!kA"¹";hBQ @k^%It5n]Y? q$V4 [G>Zw]?'ȐkH'2cӅ޴Gjrf8I]ё\ϟ6@VBx88//y]i茂/\ggٯ|:cMc 2c۔Ц q|T4P|d`AѕxY .4+VG;fjT`W3^[3uQ0] $St d%GVvqF}`ߓָJ?1o dszL# F6m UULߗGc ~Z#/@-r5m' `*>JA d&ZB bLHw{Zw|$dm`N@ќmY,.\.qyj'H:/"д{wCqRxj RspUרA+*HV4L*m;DCbVhNn|Dj ѝ-# KV04PjI`z&sDMQ&Dђ;FpD: TP~?F+=F,lù>vY XVګ/ۭ 8s!A;i(LGfu4 -`)0 aMpw:;Z8Vrdmplߧ-.9v6J5S$SeQ{ \VHrX>x,zn=BT]ͽ~%R&Y0l+u ^A4 iJtd,bĔV{6C.GYr:K1N آy=3j e?*8a:qz嗏d_C,gT5oYGnNK-_TsS$h"E'rH1 Ҙ2BmSUi([dH0V&x{cd` 4diWrWA2Z,ȟq BNm{~zb*?ISy( '\nB7'a P , >_iB؆X5QKkhk_'u HI]BÔv"59I^Ě1>yu*Y;r8ꎀ7o,l9eͥBތ13n|U &=1cףm;PZς+5מA/-W踅 Ƙib-*|\f]f1"psB6o4MHޅP-]\Z[f!M/toPUQ?H(?Y&]ꛭ~A;1~@ƫ, E 7mݼuŕM<+D:@zcL9"$U: V&y48;Q+9]olfidp\%Uu Wi?$uĭ[CY7:_%< pNm9AػJh-IKG+aa_=8 STj^Pg#hWZK8H'Ӡ>FHԳ#::$ma?P1{ԡ [`d(lbMԌ G3<)BcA 7ۉe1ƈہrYF{Ԉ~?ernCz2P߲dkPNv.+YL$ygtec,VXp۔۞MmҹR:P$v!N"fNۛ0wt+,jBiWj}K7%ư^,4 =^:2k 0E n\GhchӥfyYeɥ3jD`V~4J\bϗp۞:4 布{cI` U'db>%2遬],]gV`Ң!"֐ T# Rmvj^XVaH@5q$|B€ Wf<2̕COK@' CchhI.qTׇ3J%,b^GfΙ$ e(h4+rou֧fվi#GhX~GOJҔ&cU[ȗ/ًgmty}*׸1RR>7y~3 EA?U eU>Xɇo1("g$,d0Iv:hgL .u})fcr[18S&]zš5;Ԙgzv*FC2UQ|&Ն@@[At'k);ansGwF.If܁ u!C$;Lё0ʠi5Зl)lTdq] 6wZ|sduB=^l6MXs> t(o<ـ/ Vih WϾ}@S Y?7x8z!tWK&cxH@"LQF&[>Y( JW"E0VKČVO6Q5 B('O 4M*Uݺ`29*c<:tII@SX9Tuٮ$*]pV!HxuCPDQ/KW͎0fp-^,Ѕhs]qm^r ͡Nck77%zY |GE*L:?)!TDtk:Uͫmu Շ+"&Z-BV/~ȶ.~ϦeWD$XB/ǻ)m֚wlӸ|fvZQ{uQmM= 4?9L qt=;ԢlT1:z%ǫ5oFNC!o2zȨ?*Nʊ";:Qϓ^=ER]Hf3EToE;X*`|Z1*]ƖEb5w$!z~K8l]z>k!w :뺁[CbA5Fz:דNFɣmH)MP]c J:4FMVcckOݛ? X6%\O.x, DBަ:WbaS휆"u a@mIOٍ~RZ *JhL#PP3N*a>P(S Xk]2Z_@GxFqF)w |, PD2F8Li4>E9plY7dH| yc^ wR~c8Vu59@l2R&jOzOq)wd˝TVm4c܁*>3ժ]8 a> \w SPj.,8ēZ-LHӯ1wr/Bpw9('TӨNg&e\m{krX:Q+jV9pI$nXoOĺ3T2044rڡY^P߯DetF6][Z%KTU r%q<b`7"H5D*Rov/ 41*(k$8M^%Z|:{BAL@P C)pMHjF%,dz4_fJA*Z9'YB ?:Gg˝ B4aڴ$bCu5S?|W/,oD­6;UDF+o<6Nze2۹fQŁ^:^s!aPo*gkG@Uњz87]$uNK3zh[(ӄL꩔: p 9xHIGyAI'vW,̌ĽXM+)_~sbG!\u+Ǩr0cֳNv/uoYIy&u+jy2&j,Q2!+ u6Ù.i/()|O7ʬfuAۀq)?b΢ex*Id4?zjo )Pz7EinG2T5Я;'u5;˞UUYʯ&ȯW]na,vs:?Iy7nh':c>Js&- i ߩt2-8vk@vc5Hd> Ӊ;Y^;&|-A'Dzg-DC\|f͇T(UQcŵkoc0ɋ dz3_ٌ+ q³6}p|_JK`SJ# @#bEζs`HGVR6{1pI@PAd ؟BF dWM:dx+t;J-b`ggJvbP,yς%5t0 r1S` &CZDE75Hbf}U dF/"&> j:e$2-ͦE93 UeWǕkПR¶b$6j 5}:넰t/S1`ɨ0I׆WR CqѼ#qdHCR*|XGa:Њ-U>Dc@B? k5{q5_(nu^W2 $9BW+[  wO Z99(3 T`Ѯ的?bp0$үASʼn@ļ{@!U DOloP+oa]!#( dG;2Zv5nZ'"у'ןYd Q>mWhf= *!1r O3R!I 4d]sӬdj=e8}mnĆa.Pevz.U\>Z㭺X{\Rį+=bi{D,'$E߷g؆3)mB[UU;p hfSҡ+`T-`o[0،Ѵv'Dz"ֆZR?eG-ą k q\2t7ImĜ:[btuȕ/j(=R71on袵/Jmuk9IFiߚFo,k{nզ}Alψv1Hyff/{+OL[%r⇼/S;*gF(ĺ|I Q4@5?#ѩ؛]c# ,"ͦ b6 + 㤫tbJbk_7|0X?}(]}!4mYG1_5NL͎PtVZ+9|4/Aj9mNr{"o>gelbE$,M żl+ځP|HVk5;1ˬ.Ifg AƄYd |T;&(+!Nd`YS}77J^wpo/R%1r4M/¸Rq6Q$.fcPpJmXF]p2 _od'%evj9Ch;O AR5okAqgk%J|!*s5%Ѿ"T![ugkr_qb!^%(SOLXL)[>*560!nT׏}?鯿jr?9zsܝxfFK|7,?=ן1:I4ml5lޚ ]|tUQ2z L~/xC#$v&Q" L@1ذO81@.L9< seeP~FmnsinHLwFS+eFFk*=!uW0mcx<52C떤s=K>[bHTVFBvHuoQh¤cags\UPR8$WGDfq .%3*Ӟ5L̺^"ЕE7`LWUOj r &wt$+e/SE?P9Beюt}գh%3PmHe{^SZHl6l&,i[pAp>ѭư^Ih(3/;r=قL0ZkRR~ ns%bhߦz7J7ΔxiUd, Dc6 /x0x3HH]ow璐$λH6AFN5`knZI᳈xK ݓ\;q9ء*h'.ijO2R<'o `7}(FȋmJ fK!KD%5-歮5b#1hfZ[Z|ZF!7LO0h^$1 *ìcs*I³OV V).b䖰W /vxwx-uuoe&R*DMJK-`w}-!674tY 9[1nv=882ӀOs.2Íkׂ T]۳EeeϵmnZ {ȼ1g΢T{/uQ_0uo&Nrp1tQϤVcL^W0]9W=]m%&@mvp B-Q`3+58h8\U>Z2qjFtstQp8AlCopA~l}FdO)eX0j0Fc1oGj*$_WC[>A4@JRd  gK6f}Hu oaI38'( |x%lOU5yL{o_-ۜ`E2z?ST;@ YDR+dvak@Yq>zL/ oJԃf|D`sqMx;y`\ȑ1]nQF:\ZӧZM??W\tϲqg6Z`P)`1?÷+:NPIykXHy˩#fc42!c|U5V^Gk `6?.y=;AWݦS<:-Jȃj}s62(wg`2™9V.UW"ͫ0\|L*r$j,&k)g݀.{G0{'^/ma0Y1BYF?1)&u5. hA:l oJ`JmiKT22d0hE\~jHLP넚`I ڪk?kl@r<RMG_/`k 9a^: w\5LkDXhnĻ̫r9 ğÜ*E`P1KkņhH$G$"N CXG%M ާ>KnaF^kjz!U쎔vF.η!8&},h1 slq9^w-[q-Y]3'xQHz,$I48~\Tёyez9#Ĉ_O` o&ZK?^| &4Mz>ө6?IZ/ha[1lZO v&!ۻA+*a""7p/wiᨱ>X7(I +8!]sI&N-_)>V+9XNf꾉l_́YcfS #Tw$b,޸Ύ=2L.`[;3C;lqIS~nӬJC)EXeN$rmED"X:x4fJl_TUrhn^d._ݸZ jo>+d@zM@\*}t%$ В7 |,L ^ܿҢPd9a}}d+Ve et %qNK 6̿.euRMQdq5|tZ6WWMKW&lODdRXi}$H]XYy88l]?BnduJ'ZJ:!qV$i1xf 2c5Ɨ=ͪ J烠cT8<58J@UPNE#;/¤RtP7,cO|-Sů BYeRpY# &Iur!~ʶK[AUݸX|ɇjU6:ǯ'DP,@sob5,['׮¢+h !Z㸈Rђ >HtG_/M81Kˢ5h .'WXz|>w%Yz9a`*kj= X&D94~‡"Ȳv@&m^+Z!$g$+Q [դ#YSNzrBVBU<>wT$7FMrI7,p7s.]nH;+po 2t -rv<]ڎ^TRտ$bR+ۡ>~6v<=0y.X^B߲RU{NOhLjIs<_FU췴 f Nb)$ NqD3<YOisNTLXLg\/[A`Bjd9#y}q6` <{˷Ck;Ec6)7*yLAa'&pΞ^%LaR&v>KOh ?nBR{.Tp8GyVT3#6 ]¦=WU% =/-joCi7<ؗiCjS|p0t82Gq *HfHѳS]wX=8(goz,(hzq矦64*OlR XEnp#^$z2:]N=5HIV2ޗp C7DVKG{k_VfdKA}}!f9*a@]Kg칇?(W[!ypˠ Mo׼f.=c vRkvEѡ@( \=O#Zh yL1vf\vGtV3Ph&)eO8MejK}nykHZ9U\:zXA|'&*WY#?JMڔk4Lb @m)5C""98~J/ֻ>=*Cѳȟz'11J'L6+BL0@lO~:b>i&$xUdl=-.Z[_ WYpo;*5nr|Z{/_ )Чh =/[M0/h1GF%nJA)rrL`sI(У@=y ] j.<>ޫ:F`Lk2}ϐ .#oIU-X(>N.q[g$oW3t7 x|3K}Dt=%#C3 ;^O(j-(@ {QՌ2g8pCǂO0{;ۨc_U,;aSIQRM(eSx[#}fM 8N4 N"\ߙrok~S@eӳW7Ů8)>KdEɥKT[ƒ~,5fHړ1wnjBF~D_1c1`Γ]1$ bM vM x&:Zh "E]ګiړx{ݹ;ҡs4\D 0f#28],ZU!ba 2ͧ>l[kKN7~Aw†TpO5_\ =8w(CMKq4.$ `2* i뉷5-q4ڶ -Aڧ#!h25VckYۦdJ^ &T>QhͲvZz\\sw4е_mBh++DHX_23GL6 w4MD꼌b+^8xOǭ ;ދJG"𨷻98BG7R6Uxш-[|Uzk b?d+"B+ !e_>WbU1Ha'ֲѪbtBp.bAWE4_u3A[YߥM:_9 08;6 RSdS^|IHVI#nxcaynEWQ)[j:A\ 2\h0e}Cc":l03Ȣ=D ncϿDJӖrhnɗ7$$qJpK$d`uK[̿~) ^>B5 ҠWFsLee\3t&ӛ48E.,J۠PgKLMI#&#wsaQX[`L/CtOJscz$A6A/l#2x^9"}u`\O bQ3#^sР'<_7@]\݋_]W%\҅Q-Nf{M(Q32/(}I2c OGtc_ 9 f}`l n|y@/Ztp:Wa\0-P LHR]V<v0{4'Z>uu+ǙYėE?s-"T(_zͤtBOǁ+~W;F#+5֩C QNw?XrCRtpŴ/2 Yu}<]u#L?S(D3md`ƙf&RmOcVC%`Md,q[氚=xEۦ zInEwbKN\χHoub)wYS^nk*N];.UA ؝NսM y`Ѵ$$|+v_!aRVPd.tP6JY_6OEfۢTpWF *XO_naB::u(&r KƬP2)0gdqAƱ7 aYnL.H`;Ͼ30V|0TkcdK J7흝Je9EAoa&$a鞳fIC"h1J^ua`R '}K/eѶ(#%cPրa'&#[]S97<c{EHPS)fؖ;Ё/rR r"yt"'|}7EAM8ͣ ɘᵴrb9'lSy$1;L`R4^s bB/A \-u?1ɗ80;dh5 [BLWt5HbI? y\4 Tᣀ#*0O܂1V )#^?IĆ k"YH uJN1I-v dMk %s{2"х63|MhDG7-B듚 Yk_c7bkm2h^@W@DM O3 `|;.Pr[Bar,A ]!^ 5مX k5ࡩFˑYn'1-`oQW\ ` Xc*xGy3s/(s 9MX;䔈xr }K,~釉U+D\e[Np 9ê/y=Pe&oabNC{ ~5¿ʉLI')#醃.W{T+ PU |WY [w^ L:#`I:16%bPG})%UFg(t oiO2ªRQ C]-?wW8YiQ]R+,kpF4y=fYḑ%ہm15`dW,87%邙r\2zx%vsxf~׋,B"珵w]FyFw.n| G5i#ܟsT]{|% VXD}0iY(CS=4hA58 ^+qz\#V?i ^2l2 yqhaz3ɼwZ焀R.t-ONjq^?_]D5$vV'K>kO'-eCP@E%kvd Mw-GxiulP;0A8r^j}iׁr-Pȵ % ;PDŷ0P0)Z"ťfOݸeU6~w1YJǸ?T6Ag^ o~&G-'kj+ETlF~"ͳ>ms M\5/렯!$D 7rGBaBWPrÿNdAt:i0H8//jw5<__ mj>wHPatEXbPZkO `m룁a~M`E*M܇G.mIxBX9.zo'86#JDU_OWHQ +/JqշzG% 5{isC9B85X|ܡ0L-Laڮs0L<{υw&U1B"$mǎ݁:UN]Wuj^[zjO:?qT xǓ %ܯCY0ưU~'&3B=R|E 5IzqB|Xp,֋9< K EH.W/M[#nѧOGܔCIGoҾ_XlxPHEpEpը:8@0 I:aKZ2E*~GG$:8Ck-n!VO׽,a{_-K{4DgDܤ9о1RKՇU+JxK>H&;;O6' ~-g`9OpN|S+ae'uId-"iZO `=igkV/V}w>ess'„ sF^s5¹%n9֒eUH>ie|Q9hIm ;Az-HcMF{'Rf5g8xy.\5tϯܟ_̹áPJP&C=={Ll=a;ֈUp);O^~؟oI^+4iCMt*31W-[| 'H|Zi`ei g8guh9ױ(0MB%BYǥ?"(~ dsiY6a af6#,c恸f-wY\?"M0_w̉E$]Gv+eMeZ9v&S AC%N~ irg7U tܾ%y܁4z̟N*:1wW]M+Y߱Ra;u.,0 ( iG\F|9cEkJ] = zw6v*M ?2(xM<~2K^OwcmqQ'>½]Yިho'_Kg1#>ܗ"=jo͈DCg JQLA CHgF&RŞʆA\C(B?9 oϥc %fh;dOa-f^3 ݓwkp[R*O)ifnJw FF8nB\@(lV򟺨Ht\̑Nilա0fg}P ȉߋ?#J;yi !Y|3I8~G>k(( )?Z[ڟ[ssw`e%,L\M[y4DxF'CV,Q[C uub,{#OEl %+@r`[h097vCB;PwYSNC;C@ ֍o8IJAabsP]OMA>ac-|m F:S!zG'Ot\#`@0zrs8Զ)cJcf # N" x=OIX~PG_L/[;θ2( է!Pmaxh||kA)!2<`i\N R 1x7D!y?*NLR_VL"?j&] =0 MvٿfMѲ7t'ntnIKys{469Hܝ'{naKL's} ;:%2i8D#hv)\} EFŌQ|Š /7M}>Z؂~r~Vc%҆b#=Kϸ2&10ر9 `S4jj4mH@L~эKc ǁlMk͛. ,!5kC]{aFܻd2\9$?62ˆnQ5+iEX$DR+xE\ƫcDvO΋Eﮎis{]EH6MF"R!y`c ˨afG|?J3zP1[n!߯v/ZNPƙAqIe,h!=~G=X0EEvLrW_VfR˺: 9f%yt7(h>y3ӣ`gE]͏-I!/[5g(ng2?HzPy Z< Dy\F 1$Uw-djLGX;NiѸ5h Y-KL'&F.؊i {չՇ Iĺc43SH ǯPLy7b;hjDu^R;:ؙ;iϰKF>n$zI%Z|sP/z)$zQ}Rg^nLsbn!xbJ,wE 8BpOR+z!*ֹ ӣh}.y@BImm B1׍vN/53]{zz^]/֤ DxX${b<5e ?AC\/YP%?s0 5gP8-@E>QgUc/z L ~~5ԸI,#KF.Z*Nfo4ۃa_13Ags ?D)Z=wGd||-o%قsAjK7HTᙻ!D㾥p'5qV#B7 tVu=DПiad)C5nnZDs>SQZ#A,xaTM-#%3_k)tս[zʪҒC湸@/Qnu't$Ϣ>q7G}FjPLA9||)IF| /?H7 6xHXFhS}RK#3o&b|W 9Ƒ-m\ȴIOהL*E2Df{?3j3{ p&u+yk/,2NIv*osoYo+礖|+|&%|)nvǀlʋ~'1ؒG4:G |`& vG Y;.+^m*6Br*HR v`{m\c9R'-ZާOV;^؎e_6[!%MjrvBFU/EKs qX E+8b38S pM,ϸILdk7W="UeW@ ~1*[.V3ÒVH-'Js[{7bNSN1kqqCF8K[-+kLeT`e~a35_ b{1+FѺ!N-"ƽ%*{g6FkQkΔJn`mn֙g^hSK.rk:{ĹU z^=ov? yJZ l߅̂zY~??]!\ǎ 7dn*ުe 򃙺(߀zes0 =vt.|o0/)R|&7+~*|"(U?8׏a6" Z|M_?uszϗ &n40jl|0Tb6Ws2 i?LĕI$桴ZMdېzAkR?) ~Xv|~h:lMEdcCڡ&'پq[h#JuցJأ$אoe CD1a!gc3;&5\0atGPY6%GToʵ?;f"|{ eAΏzx֩? a%.ېDf賭#*t.-ISHbH g>g 3 qI|aVh _.W=tv?3؃;P7VU :+AH14驷din"IVE`tG.=ûbe/.}wm<L%>C*Dc9./)0i0qbZH?ZBch+L+Uˤҧj"R[}c"d3d9=Xs%>p2_ g!-7.bZD>q4pZ˒B,_:pJUi6ҋL)zM3^,IL$]]-r\p0o7vsxg9esfBUdhzv{G_oy2z.b# ޢA;!'wr$sb).4@qLhVC/95Q4I* f2k=.ة"8cGD`H9\0~Ab.{je'>*jŸK {uAoȓE KnwVYĨ}9D=ceÅ L0@zN l, Iʃ} n?J U50P覕$ǨQ\>?W!E}SmhFqkw@C5UOݽAo2J~ŵHDY}o:[fЛfsg6CR }5?hB[p&=5~Aڮe`b9-vLڬmZHշ9:#G'ԍl7Dce:" ٜޛu>gGɬi#VB3Y5Oׁ5nIe2aZ:N%D~!AS$z:s!(A*95{C);-@oޛ+KI"noC\7q9و2%b۩hm?Q:_pvM2C ߵw"_P;1 {Kb(pwR6]2N>ѝ%iI)ﶇmJiBKL::_1F 7 }Ɵ]N6Չ=m@]\K%c8w<G]C($rTF~DT8TJr 4O06[v4:jADIPʍ3 QE/SvpXh<@}VОS:/,j s͊kBY%p7AXbU%C^bി75ܟ*|CyhȃI̚"0.eX6z(em̀R"N%k-g@XwP4+^+ѭm:C15`Y ?cnx97KAݘh7 xxԄ@1+qr*f{R?7tjm wβu? D~{ALF|+o?rfCP,kq'`}<|ov#ZEmL5!ķ%']X'h:3'w D1qֽ`qW99p#'/&LB?¬EDq 0n_UACmw@@]IN űz61fۘgK *ί`g>4X7Zmp>(uzXF:s߬{2b &/(2*Q,ՎKM !X@5*V6__ @}a+]-}ض1Ħ[LUt^+.$'"``bɫEjj55Xb^\%ؿ$sO6No ,mo!nïiN䭒PGM;4҃eYa&OG`FÑAǥaVgwp;B M%!sN|B--FUVy?Ct9'?ܬHE:rޛ=&"[R2rbmܾ2:Cx 9#x,$i]FYO%|BYix!&ꨢtNf'wh֦ \!2ʋ'#&UvUg`ہA?NT,wl]Pj CDڷO,Ϗ<q'` w=xȟ~B=X7Y.C0ix{gM'#S6u@|4?M=O^jsPoR@7)LX|ئB۝!S> ,jb8f/J\J)>=g9aV(8@y009Vn%&fFFn"CCRFyJ0#y9 |t®^x1ӽ(mXKT*Rh%z51 EU2rn8w9>9rYY1miiH+ կ8wh܍HNyK{x{EZ;3ꢍQۀS;TWA9n7IA)'4;#9AEoz`3[jHE@?vUPzYF:k)ɔPB-vpiEӜ9P 5՞]^ec4r3 ǣ{kr{G6T&&ZĜG/cO@*KvZJ+m1Lz\dV 5iO Zz~\~ ەZ:ٲl~񽕲*E ZRCdçŭ DKqh\yhqF9ߌʃ] D&S֮`Gi 6 'wN.^Acf?~M|LaRz=9mUMFC w2p6%m(*%?4Vj3R;Ȓp!&\ʇ=CL[J؂Y1{N4HeX$,-0ǂn+l#=dk~೹J. I'+ǹTZaw x ^seRdiVP.Oc hgL$(Y1D733]W⬻Γgpdq"OXBM' U[BCn7k@ShN80d0KVJ27rf dZj+\qX,rnb\*W=? jBJT"mDnqv]lV7":Aw9Z>Ԯ̞2߿26X q휐28}\A8 7:,Iu.Ј+Űl"c<@:}~s2٩%hyCsWOn~u#zʈpA57pMP,?v.wV/VU//бU GȦ0Dٞ1+gZEӓ KMV=^!+ϋh!1}}`}}8ZUJyTo}5"i IsRzvAc]tF2C' <>O*ΞMZ$j);cQfq2" /`@?\Idb+*S|Р4HezBg{Ml.5R%~:-tGv0ܚa)ړgEN3''W#lWvmqbk;?`ݱ_+ܧA,E3N <,N~N{\_-&ޑ}>bʸ+{…JlFNzTL o d)hꮁyC$/ ;Ox{K '¿jR->kGv=)`Gx2-KÇ*`fP}aZbSL `_KϽø[v,ي楒B,qcCOƋy_v{"U) GB16lbY^e\48rkb"|H!M^+GTP^hl#).8ԡiv62H%ۃ6Ybxbi{TOYG"<[ڞ$>;4R\nõ^ݗ0HS$*4daXf33pnjԃP2SK%`#05Cֺ $Qյ8m*7+ӕCcY&fC`)?gvUw֍~vNFm?E*\Uxjwm\^.)O Dy QG+`9GMӊqm,X^m^@~Cs%媷yM7zMS{WXf#{NP' DK=F1@lSJ~ Z<=N_*#`޹.^wpfl@+3,CR/UUᖵ $TzD;xw# zcr7" Vxt1-.7 QuY *uUi·-X2wLKӥ",oWyAB%<9޼6s(,r*"U7s[ޓs~, luPaj=ckVǝQ*XNYAqaT]g@cUm@_)\Cul_Ϝ%#DMD$3XMc%28S{Jr 8o" Ə?tGs&QW N69&bCYXI\ a_D %l/Rso3eY ߽MsF9)XߪD;U8W :v}C7k8T tV/{CwDANⵅ /\?5kkz杨EE (r/m88_-=(D;R0@^4ao.$ 1;כEmvp2bР`Zb^:x7Ww&fyEu/}"K;sqTMxreo(ɧ KcQI4{rHw훥CAVY@Ӄ9!e'ialIGڸDUyB&SQM4f7YRF}:4,)bWŨK߉~ڸaw,NQe2q~GǺFq6͸u T^YOͦ[;RADžP'`wBhZ Weҩ-YL/ mH:ю@7{@}Fn`Bݱ'${F}lL q{|=g֙C$x{PZ>#cz :OIv]eN7xsI]ڃU+펼RNWNRwN̬;Bْ`sbs Yh,?8F"vSVa WXC!@e^7`VZU)tϝTɁ. j&+gm~Osނc}dIRay7*+NIh8PdDhݏbݴ?Kd+ {+mہ*Uۺ.˅ʁcH=3EKS,\{%%jX]iޥ΍O&R0lBd;FO>r1) pNj04³#Y<㯜`YIǬf4˟Ώ 7/F/Iǒu6~4 IC]&G&v4$.e0/K3ΣzM@Ck,Lɇ,uF:\"/ŏt=b:jGԳ(H+! 2 DB^_p\* T.Z3_GHhոy=_[e]b9lh5*9Mclcu٩hgyVL1bE=x]2]ƚW;#*Bb͢ȉ?ϱz+beRQ"'qPkfUuQTXN+@d(ӡ#ǺP20pGP3Z;ƙvk1-?(P^e;crug䧗?W0$C2̗KOyPˈ(\$ *d-y]K4GOOhaC,uo B_},6ҥj-g_-ˮE}^YYy2e$]|[2*:fw8'o>Sfv[*>S4q30TPLhZ'>un%8{F}wkڛ$vȓRR zqTm>[ !rUZD^S5IiʡlqY3sH [&g"u8ңh<&X_f_ϯ㗂;r+i u=n8;ct"nOX;ɑ=yZ|m^tC'--DQ-B|>ȺEx2sR5Kي+b3X-Y>D}q:2d>0 ~&| C'=\6L\ϰ rPC5h2l+TرV4O^K-^73Ҕ_k@7 {CH _.M-ⵂJ̖7M/9sp3r7j5lFJU,,(ƨ1$2V>/u5w1c&\&Xm;5Ŭ :?-¸]{qɻ8 ''r)<.iRTaV\{W[79ߑ웣u'87O~FΙu'hꏳ3:{rj*"S7 'c$&`S6(#bXÃE-MIwvT΋FtANoL'QH#a7F'uɔ|f##P1>ܽpq"$$JF7IgTeMٌ;`AځK|π&.,M5 -nz:$ ſ6D($uJ!?a+NDAHĺC*njc.y΄,%DWgQ nr.K20d4S. Dׂ\M!w.?P9,J0#9FX|C]6>4hd}HKF̔HBIQKNJ1;ԈvZHKG#ԬnyO})g߷qƌw*)p 4/nbNv"_52o8:[iEeOfVT M Y5w\<#:Twz.TX`[=xl]uM'%-I#w5^I2CoL/]oDPr'EPΠʃ YuI;M%,r7`r~I{pUJ7{Q]TW0OQq2n 9.g,)z8Ë #} iuOm&26h!R|=5ΥTCr/߆>qζGTuQAP&Zsw1G ~{ mwlPHoS]T0=DuX$6]i- 1|Wy$yp;m>+UYM:?%+MQ/r7{-;b:0r84@ ]L=Qڢ|E Zd I,"yXh%fn:3>zo^r:Ŗ0|v)_jՃZYb.$Nxjnd08WǭvK)%O:q_yhb/ 2 oLL^D"ZY%}cYƁNUDdާըxʊgl*[AR8&0U0BQ-%﵂ .t Vd.X֗Of1Z| s?.vx1ʅ@L0؂h:b4̫zɫGChm.vn&{)x-_/s)s[}ڃJo+LӶ< ߛ[_;ѝ44SJY ǡJ{: C2>~OC)gpP5W1Y_Bu|6}]Fz q 4򢁎 X<7CNv4 -JXS`ɿab _D2_m?UhIІ&ndFx7d8xh3 ])B#)U_*V✽7 yɔ˽s() y ph]#*P&!Vw]]v]$̍9,\\BU # P>z̛ ^CXy LTU!%6,yhKX3ųfEÏxMVTS"/ `W.H{z7F8鲓@x rSidX'B7mHlA(c(V귛+ c@7amPAs  H* Tq־A(Hw_s^Ɠ%j{kܗ&hq^Y{XdJ .M a7 yzډEK0k nϜFxdW w܏„_F| FI+}V W!yPkU}wY#%ićJr91s}-4-g@C%ZM8kʰJR]2HϔYV;16pAqLx`IXҀOc6Fm!)u84kg$یM'ʼnc-:Mz:TJ\_W0J Ϛ$S@jf`Q[IB\!/5Gm4R'HC5$aG_+7 ̽o F T\,5ԒֲD\>87X.^QA1[rSV%D'F .{pCg'8\v՞!d3lxpw\s0iEuCpA$wRŒÝ 6>8uB "7ffaƜ9ME*p9Flv"\A5S1~W 4<ѷR!R*7qx*yunqܙӘ-WځעDcߤj0#&(`gE>K`<M+vz`1wE\pe.IR&ƛLYC~Ժj861s9HeL7|83QGJsdBy\@*SX! ‡~)t5lU[7EXG`DIpX) zơ=El{қE.Z203v*Up 9`~}j"#/1—Y74Ų2 LWS]Ke+3 Ph6luXed\@5Nۼ`a|'isLӾj WhVerx,O3>sxmdYh)*:lwsL}KIbj+"t+, 9Sޙ=b)8~@ReK}-:R40'5O=䗹uH51@n9|}]rdF06 RC [ Lm /sh ;jiq[[j?Ɩ9QaBck Ond; tڗs{aR.,AYeE^oһkϕ9!v7]Myσ>1D1k&6Vq*< TQ\Z!FkӰˬu{@/+<@88i\SDLb`T:Z@:[Y< DplEto({tg©\%o@ kgO˾$t o?ߜmn'+LԀ_nayaZ 'В=5 |>27:ޙ׌Bأ(KQjEwC=-Mcoz ʕaV/$!Yy6NZUT׬ ^g64ȃ70R@cG_n"6z}I)[ǩmw?[k^a{{8wuyS35NQ^NXP9/Ɉ6 , <?''. . l[eJTmeZ6QPWll㢺bB |B2cQ$n^Qxɀ+ǨhVД_n|>li`x 3?Tvs%φi@KkOXlsֱ~vnIh75 F yk%-c^Z _wMM671nW3#79w|爐d|fkNJovD4u#s ӉVh}}9 >L0K~9g#M"&}EXC,EcrZK^jMlhsyL]K @B>&F% "M'\Oh:7QՉmK&}ޢ0j}S \3Ƹ([8[hGhaN8:Ú\5x?8e !?Z @g ٯ@Ľ@L%zlYf=D/eq.?H_n@xA&7Nkǽ#($pW)ȍv;gpPAC{|2؀ "Z]~^I@va?Ur!TOߡ3d˖T^ΈOFM |LIފ΅G'(CM0qY*]qn-[5rC>/jk@$t(l\s| `s3Ҟde৊=0Z8y!Qj}n"`htF#/H SgW~`jeE}nɍ=n4t܂ޚϠLɜA*%aO{wVKf(鬒Yt1_m(m1fZ(vczOjHo HlABI/R|򍿛8ӑO$,h[cF{x8T I%P6n"ZHcZ dA}6++Y'd <ο={|zIx޻%ƖOx]&%~VC'G3Y)k~qkHh P .p'-H Gd!r*FQ1>@Y|t4 vGB[Ɣ+;5r1 3y{G2z-ݲnQ|,'J1]az/s&gJ0ѥZe[JPiNqġn%|KC״T9ɍ NX;k$ cYyv-&;e_.>~AD,'jݹ%Q:*( =N,jf-;Їlm)h@y p}l+^)%1|mؘh1y9ɚ-n}X \e#Em:9U oZdoxֺOi–[ԍ:\ ] VXϳ^RYdXĆ^xKyEۢɇ[Y85#/"Zm@%}g 愧CF*b =<6˯ KR'0psj;SH(N.[Oq.Nc]P[0Bzz@ 2R);ј {hǹ7͜ n 1RƦdM2A\/.PS:&Wd:E1ҕ>1lDeG61\#x4oBv̋j;3;2AnWA1V,-ĉEGL=Ψg $31^qV5kE.Nu6,*~AEG:lgM-)A/jY3;ʋ4n)=YGX3bp 9Aq< jK+I`_#|D+$1'< Ԑ{t|aGI!dì#\dHza@ lNC}ӗ'gA>ƹɩ,6ȶrieT[(`a |"2gz΢,Uxf5$֓?9= /K8s]W-N6Ćf|8c@LmJVװkk$ɂ紗dP-t,h,18OAe߸{2j}r`hψ ƣȁv/X3q"ƨ]Y /HP yJ5Yel=$avڿ!+gס#Plʠ'O|,WQL[&ͳ$]8*CccRjTf)au^P,eȓPh)YЀc7Qc+Cؕ$ڭT*߮lTLބAT Eatdn0T"6O5'6BUmY0{;?%V Hu^wuzsK~E*Ϯ+pz*wzR+JGN |`uൂx_P#_tPjuAOVFRe,j Tgv\12p^]M \= [y38+&!_t^y_dMP YuzkM l{cCGv+\c3$;ھiӔ`z귴GU83"xW'ax9 ^*u_C8̝~/LDC>S;LaY`By(8t;vIׁ$q&ʺ='Ou|ӹ؞uNטsG>;lJUuk-ʩdwpmg:hB-Szp5rhhp#1tL5\*/rK6 .` ~㹖Mi) H]|a#9pH}=G|7q8h0!H?{T˵T/EQ9f`V&LJs> ;N'628.P ^!McܾDՅ~!QkL~i氡@tRfLZ!Ϻy*\v"Ej-W[ [tR0J=4L7 Q6x'Ғ>OYw>tz͕,c 7S0Ԫh`#2vcv/QӻZn}$7Tsn 5ͭ5k ;&\%7{,]4G1&H>}}DMqX<π H.e; m! -~,gGQ0_Ю\&5;O\OfGm-t%_qxL#N\!M_lq8!<_y$Ovp˴#mS^rg} ɿ=fc&JU{ b~ %vD,̰yaw.~) _Lz12eE)W[Ba6tSuQpO^?P$fAhf72[#n/@OO\m ]TJT%iXJSeU8`hg3=ۍ8z"}O=1w[S&FY^]o'95aGMN 6Kh6ƑwMQS㨜/ag70S,צDxa@ív"bh!p,i4ƌӟȅif 3漌dld2ڌ!J]a ~YW)@n1 49ZSDSa0Z}xZ ZrNy`׳5BQ[(re4!A9mXvWڿ,+ac~ o~s=3&\}N\9F=qc4bKV}qh"QPEYE}: mM eBӧ#07<~4نQ0= 0cPM+"¸{(q('/oy(Q ?nBpy<{[׽plC;P $gnL 1E_tdOT_NLͧqp үLZ dMkPF,,[ڢq * 0~6(]Uw#@5OuSyˍГ/`9CC%]2r2Eݯњx>h 3ͷ{hRPań)(OWqR^o/`n]KX-?ךTﵶ4qi|vLNG/!Gҁ`L5tߚ?,&`"[={no7R,QbPCbmc<[}6{D1fg@k?)yn\ŸaL:) ;?R Do(jϛ(c2sy $|Ǥ7r] *L j [(3Wtcғ %~| 3AgÐ FTcZm0cp&u= 3L07F+ 3+Wm.墜"*շ/+=:[(k!鈶gax4[:-ի71.ꝕ[m -\,[u6%٭Q!UȠLRcpM zR nrE?Qѭv+_Ñ И?E hh۫L6"Oz)s*\\F,Չ_7zVPu+zRAGk}U/B] q~ _o{*LrG RBep`?h.-c-_tFҞr(v#VB5VۭdvmrhT%nqg|v,sdjs&;=_IzRrYZ2w}./Ja21CĶ2f01 N3#y֠|;ߟeF/#ʛs!䪲 ϞO+T碭u< kVJwD/N8RGڦ" *dB>:A] &K B%6˯K>>K{GYvTV]v^0 mr;=\|$8\p=rfi: imHٌ09G#`@" şrՖxjrdgv]{8;{ f?k z B ,iAKGe6NImGFhuIwb\ʣY h` ϝkS|RTDSS@zU7B*D (_>Apq0pQmY,ZA:yP[iLޡdE ^Ut 3ෳoqTF6MgG'00Ywe}g$)=7Z`T^yrJgemپҶD%)=ާ48+j#{O2N] 3M[;h'pɕ׮h2XW(^:y9'X:t,Fb65Rtm֞Ʀͳ-~Eͳ r]Cu#qnF·*l\[)Lʓ_zczmzus] x&kw⭝ NRj7 ]^iT.*5i=}>*q𤾗1sEs'v,U9.]6DRZ6=G~ˇ( o~?}x ď zI&;Ik/J)$$0:{N?1ٵA`Gd.1¢+ Ml+'ts<uXQJ>{jOa.n/=fR#GLDV,k" W{՟ֵn]]t`yr]T}4R_>)";U-x{FDqɗb99OYnb)]W2_#NHeJ UR""'`o{VjVJ&h=q "wbc`V⦭$ (ʳ4) &`$9|Ub?Jy(Q]#NVkD-3mF]Se~xȠHB(v)](:r?#[=D\G%feHi| /:2MzN:rl?baz2q(oILL٘D$-U`,~.t*`\ހAbʼ|bfmB!{=wA2_`"]2j7=G.?bCl 0_zFf sb#aGUՠ]b:#|uh+.N`pz^Q:4A킽uM2tG\BOdXzIW}}XWP^zS]Ty/ ĺV!أ$7(-"4Dd`fU,'ei&g][9-4aP(9V5a @PZ5%^m3UC/mbv9Piު+P]+0<X6#h̖aTǣ>MVbkt?A(S6cmb)ERH\_-F6aȑuPбdkj``FJ_ AZe_.iە|'y+ɭ &v;9Uvx}ȐSt%A Pz/ f I=h&sr<}aG/TPÔK%6nJѾ_iD m /ib?tn2{̵hy Ndoүag P,N|xϜ]4 UUBhȁ׺+zXVT( Y*m!vZFcE㛊Ve(Ӭqy񊺷2<h#=TR0~M6yN\( ˙n.eo1}d]=6,u9j`[+j_0q^h"o||\ACؚ iE?wj/irpJی^{[[JPw7.xėl";j3 5^yԷT߈!#Sz߉DKpH4llh$bs)5AެfflKYY$B^G[9I "V'SOԱQ} `pcE2_ACң'e "1" a7tQHܚsɘK!a@8͓f:0`2JU Xڣwv[t2I&j7rKF >!N:eG&P"qp%Z{S^߀ e~Zf(}sS?tHVv3}v/F5MP{ޠm,/::"rlHKP~m{cwSӰ!B/; izA]Tn>_.z]=.np^_c}ta8 NwjYq/LCx5AOa %-*M8GE줺tgØ`|?9~?߱GЦSpcp8B])-$q}tzXvYyHDf=u~y8;=!%O\P.n>±nF(1ϸ Da997{ anm?]]͖W'4 CkhMLb4Cp1⽿G*xZyurZN?_f;OFCtjf pœSg<-ٖr1ݺXSa4PPX^;ePCyd5mzx% b?Ǟ;{ .Di]8\ Wp74[!yx#B KOEe]yI 2w!?M[d|G0 `|bK ^,:h+P-"Osa0l!qZ=h<TS}5/>y߄ƉJ q?t/A[fP" HwಉkIjF, Fnf6.e)j<(&K2eB$bNuIUQe0\+t̀A)E3y4_;s)[gՀ1q_M-+5td.L n4nFeϤ`©{!w8g䅇 腟8Q;gg@ f%7~Iw^hd}e:hxZ-9xDQ_ ]_ū[Gf^`ղjEfJ,vfɠ{u5,(6y ]{Aݫ{x#f ^-`IVGa8ⰺe@4WNA'}]`^g%Kxugh9L&;z4FSPYa1eGzs`5]9C? .]S\&c?k_ 𼹸DX;Em=fTMu54K% 59q7utM=Gܐc@ЦE-#P1DŽNL`<]`m_8v[EoNi7UoIx $OmPú: s/3ǴKł6DPBmV*H?KkJo:Eq Sg]LE*!AtT>$!UJĂP%26EPF-oۓ`HƐaIfnWh G;lO^9 BW#+ y/CB3H}10ay i Eǃ> Iy](tNg@iVŬ;G }=!/N[*f);$]B(w(kZWZ) D|ӓF5` q!&h/Pe2u|S*4767p FRלR6ascmu)nIBt %wAnm BWѲ)|5b=?+) 6Wr EVbFaF,Xg 4O:ɗ60P1E*W|5}~g y>@5ŕ0,%Ax1A0PIΑsܧul e<Pв tkWW|\, #pxF j7=?n:9'|E-uHU}RVa[:.؄dy5|b8ՌN(e?׶&d.m[BFy.{oj.4/h{Ĉqd;wԩWSXBCӣ*9 fђ_\$֕_4FfC|<~Q)naeQW%6 =c>ZKi ߇ @s=F#lyr>eUBBTqM E%o䖠3B:Eџ-(=7.D+SV#pb>c. hھE옌^ex'8tÔEV54I"|A3aJOIPW1<@!GLYO=oFpQ5G5Ә\}lL2([YL& ħ)4Er`hzWʨK1`I@E^xΆqɁ15K^GK jӈ=#V 4vAVQ6ϭI42$vgK `|(WUAHMhcC«xmd=s*\Q̋ J $>bK/0K]A~ 6* =@]WtnSOGOӂoXl6 o2s(| 蹉( يl}yÝ#>K}©RF;QܠV ΁4}vE<&MKSoe;5eg 26z%bb..xk"4F3[X~0HEd08v] kT/"MFwwQP ןΫʻo&J E;pBsn)0eRIuzdx!)u#c}M.9|Io^Ύ_qVvz@t˵Cd}0OKGToiPs4]N]i)lǴRo]:~7^OI ҿwiv*(]7w0 Ź#> t ğ fH-89 k? [vtg&($!HZT#pbQBkzbd6Xj?V-n'|4fMo-+>EǽAN_ |^="b>f/hF) vj{p0RAxB9wl^\آ׃82Gf͕]ʊXyTm:j] R9ɻ%Ee}2Nb9%&eʋeNUn`ըCGT1~_f}c!RcbCwFNz{%?Z ^Vu7&;Rth|f$xƱg U`Z," 2ӧMܸjV^ܘ bfP R&ww̽7'&Ђ&\ꈉ١Em*eB`$-LlӖidۤ)% tMy&,%@t3oD׌DzU.4mOy%^: kX gl,H#MXC<>zP- Yub}@=؍.<,l8]~wJfnewb8^86?!`lWh2%e1@c :8GA~ y& [WMa6I9\҅΃A54@hun6E!j|LE[#Ag68:`X"3D#;T^< [^焸mo|Dslyx4 w:)fB{(o(v*9^DTjMK| ,-k~lxYKQU؇ayU^X53ٵ03:̀em5Ί8 tH0;b(Wf4670`MOrĺ% fAN,0+ n7N%nbgm~{ABR)옆SÓ$*P'TPbe:4 ^(统ūS/; YO1* &Z{옊B#M93.疴jVrHo *:II="qf&ui[mRpHe-B-JT nR'1a NɄ %祝D(/UJe\^5Xfc/`_)`*S]nrΘxDVD[ݣGIB\ eZ3vH`c81WqV`d۝4281&)uDr.e6{Psu 5vSv2wjH7o/+{Zo\ UrѪɇrF)˶ȸ(&9M(I Z":Қ1SoDhIE\Ga_BR쟗m5Gߑ0+X@v)NҔѺ*7pI/l2`R7bQb%tIVH4r`O!B!1n&o5vneª(N# Z"j><*{d8̰ԆGr_HbR>P:o  lJr,vSI;D$EH]Yv~UxC^-aя/$Yng$fޝ {X²*oPX>Ȍ|'Hg:FStQ@x~( 'vŊ+IW"vZ 꺴 NLW>C)P/E߹@[[EV)Pݲlhܤ;QP iQR|[{uLWP G'o0.X+X$Y+42Ak5`{2<.B>遷'+].? :{T}$d?p(x)+^ϥ%f/ 1jy]/P|@hѼA}<[j{|0"cSQ#4M\x|'\n `V{|8C~|rQTy<;uJc\h qidr \Wˠ у?™Cه-xO'}qQ1 :>#ca)`j[Z,ډl%nMhӈD9H~p21BwvNAW l0yal"eLc2nKcS')HNI6̍EL7n,rj;J3 dB/Cn_ 2 [P=`Yzs̄(㬉nGB]%~`)~~KD|vF `|#%Y] k|18 P { iwM!J´"A*);Q$f0mCƨ I-V 8^S%S^>I[QL9r#8{N@¤<` <$_kڪ2ܾGd b ŐܻeYGDRK#,<\wm>WUrOL#qi*<;+1H= <߸~- R*!n)c4f(Efwn'=hIn}9*zzϐA>Z CJJL`jƱA6CԻh M$`ƫ&Ni~?k0@R ߝP@zQ6멵fK\Xp y.D?tnW/j2pLm3ѸޚGg'UQU7~9-"PÉW:9^w&:|H1[aSEя4z3aJ9MP:f`B> \npڑB͵NE~TgXtm8g<7#ڶNgzUr/{7o' I|kH|/q$7^={r%phWNS:OHTo{\ˣ]wbH`jkQzQm/04equx)]T± ƕ:O@A_'_ W,*6VV/#/$ v pM}FQ7)ʟ#B[*&p 7%ȳlusA@pчxإE$`_OK s]ZL4HY,o1M$1 DKovOs VXOtT둝n{Q%[?CUBςM|$AOlH,rG`UaƳjGq i)l͟^ W&Fn2Vخ7);$=pQ{/N 1nw1{\@g-%(:کU"mj Eu)E.n{QıR KU~qv/$gpIrk13 Χtγ>ۿdlpxW[jno=`ϒjW >\C;ޕ؍ ֐I22avO( DE7ygx7+ʜ޴\ˋx#0 :/ ,eZI,%(Bh/ %["vwoIm^KW#ȧcuuMaVy27Xm`wlE#=sc^MA))kBI7$rqua4zs~ 0n򝃋LߨPS*Wg{[L [P@hŷrăKOA0ocU'kEz e/g 4bЪqP$~2%=7̗EmuIVD%+k ٲI3/a̎ 2"Urأ%eE\fvGo-vB/ 8iIծ.a0FUJML2t !̶ ~9[a?PE Ny䄐` D'uVA 4-y⯌ Z b]H7AXe|M`a&-ݕXU>MVx7vkf4Ef4rd* >ah6|3762MFu"LqJ!"SB2GtO}tGkn_1v=THp嘝l@rv=njBV<~!==2 %JYȠ؏ 7{oXa0Aznq;qm̧ _?쟥ֻ+xE)W䙈)|EO6vUwB 6l7tT-135͌GOl:QiTE~[8~$&$ib|'`.!;I ? MMu)Q^Ūa 'w WiAo DDA !+6ƶ:uW5MJto NJ}aZp5-&CC8tR?|M*G? ?Kvdڻ5m11Ko31IW9&#`5Sc˞}|>7Eeevygofig7b9O.Aw|)]`Qzԇ{Q̐MSpwty;eߚ A+=Eb$̬&Mw=Ey(ww-)B@̋ՠoyj?WnļA;̭1I%N<[* |dPLA~&BT;l kqΤ/u cf:u[E5?&S*s^FX{Ɗ+>ggѬY^r~z$huokҋj3VAcgajTtyiYl(ojߐ]+, ʖ!p#Ƌ 髧=iFC.)> &XLjK@78=l|œJ,_K?WJ_2o_q*s2{7$v.RJ\~ sP$wD&! ! EK75u=$Vn\_\i6QsFzz J( P 8_ru'4/%S;]r\AXۄc5v5U7=)ECGu_ C}s^H>mQ sH߲W޿:1KI}KAڹ&Foxw`3$b SC ^hZav1Lp[ +cTv&=Ik3 ^>txcԇdFN|L:~ö2_:&?5 HX%دDet,)hsCdֱ7;J -% \OڕEF"(^v8 J߽ zl^T/|1`R{}Oj9"JZgS "[D.rV.%;MZS@. kK"G1Oy S[ 뮺JakG)'=M^$>j}և)._'N\여鄝s;ܕ횙IA6>yx.)вH%dDme H_Nȧp U: Ne;(#W#ܩ*Og+v o`eO׫}x ȇމK\0cT[Π6}ARհGDii S,㑬q`qQ@UtpL*b1>)IB֞W C93?r:cgJ]Qj/*yT@]\s 71 h0MQ8Fa `oU[Xxf⠇i6a$Gc%1bPURب ޣKMki#LYȫ0~TȻ&b U nOfX 89 Ia$^&>l&Y]h)9E]̭)8K03η۹Hܖ W!߭H-c\50ޤ0,Ҩ,+~m_+\"δH9j K%v5zye G.y~z/%xc7^FPGG!C[ A 7ؤ;,xڇe<9uG=->S3 csmh{^\ \NV{=7o-{3F I In35〛ȭۘ)m~)-58K1 k{Ż$zB PUT et"ݶ\LϲDncǾ(ʼ!)T%y#e~cM)tʋ!'9P\5)o7Ef^jD}cEpJV2| MĆ7隢)tq,Ktqb>[ yGjM |[B'v>wHXE4VOP1%ӣ]׳`\k H=A_TV3+vL)a`sv|pH+ai^b"նV٫)y~W-^y/=Ky,2htGps=P/=rI<16G9-ƈ>OD1ACJMQNoD`m{]PX U=Gs1yC㶕$,Ly`4<%ba|JcG* EbgZAU`[+(`H1w8bTfų/w2y ũ9Ed)F5)H:6'8>u_jw×Fv`%^I9>|v1 Caegn QoDZTɳ*Z8Bz5a{fmFR:荡{v%\+mVW3#.`gpA%O%bb)AZXq2skM'ʪF^i GPaN\Ub@riԘ]N8j /k޲Ϩ`f 7Bs}?VA"-[ġĜ#[|>~6(;rxʎt~CzƜt ]#xWk; ҝe X+f.tGBguNrDR=oBM;HV?tm[01FˏJYK*t {> cHFBxw~kĘzLSa /~? h)%XxDfBAY܂ ;:_]iiWoyyby\j6cqL:")UKV,>}nA5= $h_BF/eӚK)H]zeP'+(<.khe8Nޅ7/g Qe7 ɂk1>6xv Y$,H2y^tG/ !tlL.L3߰O+pj()U6s#gf\9m4ms>xv 89>\Sՠ֧s޾Q^4$(r Kڣt Y}%pxԧL5c)nހjyksŒ`RZa62Ɉve++$3+يlI`z]qmu dm:QXzF&ˇva`%W_3wDpp ̊ˆs^,p;D5?(ICQb'6ix.EIkf_]ؕ?hX^'MNUʵxBPR{;bxV aEqݗt ҊqES65%GšB~*(Io~<:uwuqi9o(;#uR~mu_^aX"h3'R" Z }kȒ!xyq,MNJX"w|:|EuKܒ2rҜ; lXS\Jf˔%|ƽ􀿝-yԯ(s3wox;\jAyOf.P8W\WIIp͑ X_aJMt|Ŋ6B8,~ɐ6gv;qVv2I J+UJF,ֿ+MN:cv厊Mn6J160kM7* qLERCFW7VWЪd|S2uA(\{ιFZCּ-cDHb/eL]P6nO?;MxYw83hg"wRڏ!!·fQxeqޕP*ӝ,ͤIX ZFmZ |ӃVKtAoFNɀz>`h#OqɠFUH/y-7@Iv[is՞~_ĹpnԆeduDؓ&+1Lݰ~XnR=xh!Rh(w7B Nܬ[=_P6;XX]ƌ~4:omrMAgip?l4y0WݬSxz,dܑlM.JB&ڼc~٥lkM"q2oJxNYAsCFW,H!]‹4=M[{҇曞9G?Z \| 3Tc ]iqVzqI()EV:DTZZ? >>]ȥɞ/hs& w\%8;1{j8y[ޣĎR5l-X+O$0)4|tz31* v@J̥3o|>L{Zf',~^E"# M,{`5-_VMFFWAw* q]p0䲖@jhVO{[Sf^~DvIU;Q9ťf-O1}Py:?8 C%l{)!`1x榔2gVFKf#)>4(tw41։͠OHf D[{yZmȰn40w팥 4u fT\Jy;К0( Ǔ4OVw9( q6nTO C؆Toײ]K ^6*q&R;||g0ŒQ3yC;PG'n j d0Jle6sSJ/=,f[a}F /]S!K7}cA{sJoJd]# lhj/[ΚdlGs#fB} X2J^թFԪB{M*& X?b%8^JTv3/'D/+KV)8W1_PkWJ$˵WОUNƥ~-esz\JzwS0OqPj|Iw;#T"/n@M!nt`vVͺU%s:aD8K'ىnTuEZː1{5sP̽Z#޺ .<hqx QVw숍SC6&ͽo(\v+ɮD[b5M?Ջ1cהm-{}}3%4_Ag6i]?o'38?NJE1[t jꞟ9Vg_ª*;?eR֊Dc+.]H8ΛI7Kpc5 SwN[pP2#۵BiCޅ`QQe1>8Nj{ݵ_BonLO{8h@ë"1}T|c?t]9W1ӧ(F3D4*Rttu soƝ1g擘~Nlnf Uۍ Lh2R :a ]ަM3CF)F%umZHEޫu(U)u>ure5'~{G st& bAS(EV XnKҌwz:_+O+gx9v!![&gH$;ç,B[FӔv8jB_s^1$@__3WFt"(ᚒ#1zgV4@W/1QTT|<Jw/`zܷ|hV|LvF`}`Bz*<=Safw&p9@>*A\{o yt RdG2E,1}, ОYVq@ 'r1*g_; G7hM)6`?7baZrñ7>C+Otb L3mUZ$h __w v `[ܽ>n?W'U1leӚl'mKW32HL\OAQZ}o ,*Y)~ zGւ8< NgTD6u](LT!&b=Z*OEƇW=l,vECKn;OUH͐S Ew8jI +eFTw̚jD4CjJ.X .MX=U_JSb4 ޷4~y?-?X<>Pj徘 1!VH4 Ъ-:|a዗on{=#)>.My{³|\qJgW= v}RM;/ߔ69( 9җs٫Q?+[8 ~[L0:.(+^Q#UTJ\gʞmg=eVB9.!n)K| Ň<&Q0c[w;?3O2]~Hu6wX>1D*NϕpsYd.i=@:gD M.Ћ~.kB| @~]ӮZ}Ü檖V|Yu+읙J29RVJ Ccgl?nXid >T4RU㚌Y.l 7jO6r?E^hAtq[< Pkw~a;d(0/{ 䝪*7Tk0CCH aaz[됭4u"Ox!}SR —q#BGZp,E JAՐX~{. "*CsM0cU\1]Z(MI_8,9:lp7d%,gc^.X?"}'3xB,j{( ALcHAj'\{q/@o6R7 E':%4o@\9FZZ!ؙ$nCxD&ɱvpmnJ8 ObHie0D%m 2(Xv<@+AzY씑$({Ϭn˚3)G h9bFyHAj<<Ҵ 'o"ZaSXpà#r} (.Cl1i4*P=gpAqOS@oA(`s3缵K[{$g tݼ[(dw4J!FZchrOI˳N9%i<]pKV DǪi_Ndr&XAډ^vRA]>8fs* Sl@5aC,9odRnihxdkp˻x}hj< G /nH?S|( Vu 3){Н~$U*Vqї?2qegPF2>sfƠ3Xu^.vt>E /AK@ƎNdR<^N 5t `PntfPnXgX<3\gLG^(?OZ+>dV=^өBwRwK Xxw‰?29bAP$esvU`ؾ> p66|.\QLSWu3\٫ꨜU$3"'ܒsYeGƫKR)nBR(l7s_GT .z=) ? KII˱T:-=REJZ&Lf炼OثP( =皪OrCs Ɖ5`-e2DU`{ I ,ѵ`b:O:C%^֫.ckE2C ղ5%=2x_A՘H cS@qG،StE80`NvdڄZ=|;YۢKj 'ӵ#2Rv5.*ЉXlj1ZqWP`OVכ*Ӟ '&^ithcy &R/&~߇*'QIS `[N} ߌTK:Waf7wHbS7ԅD8Yb8+ 2ms^eNEi줌ͳ/-kh;n;LZ|@t0(QdIE/ }dV)%Y$_$VNd!Qû";9S>6%xk OMILbQCP)B)S/srHD!:A4OI _S<؍/D8b1 -b8vBuos[k{AсHﲵ1>C$ߊ{ޚVT{RMH4 _&^^7\<5 歊-DRPĀS^7nD T c,WG8 ̸ [MVbT5A4M( F8B2Od`K0%aa$x0X"7.^ jXQ[ҵbқJu=ީ8W*f(29jD7OE'6wG;YOIe\e +-IJ'7?/k>3Aݙ*=wH ؞bcg88$VDʸV, :Zv[J44N 6qvpo)iW2w"ŇP mӶՅBT?$ K|#yc:L~tRurYL,Q3M (t_H2+iS4\t|ZaЕ ك=hHrys@A7 do՝ﰉK=| $ d,xkA*̚be<`c"~?Wz*aCר}^i6TxtO X\!)Hcq]Wl/3ʩJW<" Ma牮)-jjK\>6)nQ_B)Y\\Az;}@*\ E.W f/ә5CcA-t5g @C 59FKH4ͬr3@r~3OL2Pxz5p#>.;!}pKKcsA\2%KI6^~On/[9Pj ԯ̭7gKrB=֭5`+WW7g Cs08$yi*N"jttDBG}:E Gt)!'׽[g~܈@`Ip.!PD]O̞Kz!SjC{V]JyAQ#`{S"'" H%Q!VE&yĕ>0Th[pLO5f=pE [.[yw^J\[I\)w{s?Φr#NbGSX&z; -m1BD7暿{~4 0XwÛ:>)n诲t.ʏ|rb>\P!a`ֱhҋ(\*)Ye+rq+sɯG]Ekτ9LZbx&|!$ '7gr;YoyWAc&SVFy ?c3 iP~d*>R45GRpUoM[CD dVi'3AT 8`ɨB~!ꪦP9f㊣ 7#|ͦ"X մq/=ӊ'd܆`(&Ӝ>q`{r{g`LzUzHR2p߼cSfmAA SQ  _0uvf(XcJLD0zaw ~Gn%.xNTRHF1?jV^ܯͿA?<.]Ɯ|,.t pbQ!HͱƝR CdLkybcI ӊ'/g#Єwr-!րVft5jEw b?-E*.sAh`bDB.+8s\ k/#y툅ve ͚B_tBՖj yLD՞Ubr\QR]-ZkߏWQ Q-XkJF7͍g!x"d<^q42FE9z)Ldxm\㩫|)41 fp},1xç;J8ޤZk[h&އ̈d (0.{,CߙjQBT3hG"DZlj$eKVD-jѴ(Ynl xpJueݤB^XA(̺=R@kFTP-X9kg/r03w 4a>(fY&['k>:=But>a1=cK0[sI?8"*E y*#TYc˛>rHkCuŵ?}Yoj*,ckk@ E<ޘn `|:_g9Io֌; J;`"UqA/[2 +:r9ڢEHhc2 F:^S8xh>E+3K:G(+uGsvBib+_uyN`EK~+> 4 6J 枖~f6,#X &r)z:E z=?F@1`ych+IR<"vkY+xO* Ǯ9 glHNjR<"U/j9ew VmԁPkw0NXP1>P|iMe+CEՏI7)Pƞ*Jh" 𘑶_+RQI6_RUf-P׾TYDN!5C}fáܑ}RMwS}푼%>J|Wʜj~woVhgBC(<445X4V_\;W9 #]jk#;!},TZfo2B>:_A>ݒʕ7+]Q[-+"A'Fl ]s%ĭ}63ŜDmƍd /)&BwbCyxUV(kw//~ι jK? ΢3#a7r--"EBJZoNBicUI˞!4&ɨk1.`r&_Bw\nɩ1@74 ݆f'#@bU B*b$*+1q0(|@4P1n2uey*v͜ BYI * ".@bЄ9)3w3Wpy۸NOW҄|NLdn:WGK90G|MNSw7To&Iȥ,QE* d@㢊z/|QPkgua YLix@KX.'i.YU9ȧ;e$Gbo.H"0]]:L@<.^zFǵ(CDZ"3,@Wv?hX,EIm~l[fT֒G_E^VJԫ= PA9-8~{9SYe,:H8ˮ8cc.$5Fc5wR6>n!Gz}9"˻ekx. &Ia{#074gp´EAf\/;Ms?40+t(bi(-;s2593q} -7CO(Lme\IנHikcC1̻"|h.}Yo;SO _&?oB{ʙ/5]i4.,9c9ZW{SS`q7(#;Ι<;:YW6mx:FzPo_#gubiOd@ Y.zaAröо~T姸n[H"~Ҭwtq~ N5bq.$LZ?uUKת.q>%8$z Rs>#C( }Q}s8 3uM@z`(⦵A˦B| J:\en#н3z,&?\NII)(N)ʯ*='t)Xٰ/0V3Y*yrH sft_ݝ kdnFJe , 7}ʄ[V$^ .nhg噤|q2]k%r{X}RǶ8Q"PŽ te$F딚U":^WCdF/^v|d*:"@72FȞWԌq8$yrttvbG#Hǂ^D,ةfC ;2ysDۮkى9WmyHN '-&OvsL؞X?)%]pTDӓ"x`M *άEc!'B , =\dYC>S!ô4=ƒxb?ENeOS lRT\#apJGBM}՝X%!v[MR?g8p6]![PB!k/Mh*M"ABi|#ɸU5jnf5ʭf d`)#EWn{9O55d.3诒K1FDpgG5~դ]jӧ?PvT@=g[6NCNރG܇aÀ55OOV.FXO=wSor_5ٜ.TVsom(, ñ3>G()՜1qBx_j) ccECE7smI<$a<=Eht`N|SoO? ZcXhD&9)rO/Uw{6ͺǍ2kD`o2G9(y4L5vN??SϸւAZ:^5e'Mc$^r;Z7F~[-[^:|7dqڊGA\'12~`=Շ4hɽm+5A솘L "y~yiMTX"jW.#6r71eÒ-61鳇efBdtӹmMa?aq([16Z*ہo\S{.>緻cQ̞bSYOX?g{:l2sրafH}j2>rGm#\#0 8ܻ38{,j_\_O>ʣDGl̂+$祿 B=AFЮ2kIXedqe!%{;Q<ew:J'_ʦwq@$Hʘ6-;#Q#!p;QN[Tj¹cRiC?GAx[F ]?J#ɿbg=FJ^Ank0UNNEKk 1/1 )(2YFk[ϛF 1{!~JZ؍w/:GRjB_.YI_S|4w+ܕ"svS/>'E4ƫ4#itqv\-ج5I#ɦrBvF6@w_{_p o8D_hz?M)Csar 5_Q`dċdfjN^QB R22.'Kw3دQsa`/~6!Y5siVqE0klRyw}p0m8ez7ƮS՟uA~ ĀCrx_)XOT۷kzNC(ϫ@ꡂ y3i(mqig$PD$3 U;?a'n ;F 'YwlfX 6ٮxclRn#ܡ] BXaɸY"[dWJu.AYЙIc袹QۿuWkLh.h+9!{}:ƚ4;}k(lC-WA zrjeLMmʐj!H0XT\Sw1V9 o]C#eC?Q<)[{ 2((6<0*ZhFG]1PpCj)]OZ]n״uzIJoPnN8U aT#2gX`4gK48 g\}SA uFMٙc.6˷t^fpi.X 8+}vwS rF9[cDC_.$H:iOybJ1 }wVwX<'j;~[I00- /"Y{p̹Uf]?wqhz /BP}/8TRˤx"V"&02«PKR)Rx'!E$$ԋ0l{hvx3b I3Cu_z=>\$D؈/XA+%tM;~[z>^ I5R*Z-WӊV%3>.;A8ڋ"aΕlsY 42BBƷLO?V,| f*Rl2 GIiu'A+RLKj5żw!gsxśzV(f?x;3Kz] +jwzNжsXZF>Bxo4XJUYyGyɀY5`:g^yp݄IH%lg׼ÝiîD΁qݯoʣ-?!p oRFXx/WePoSViՎ֮%_1zIG{_g[!iܽd}B KٖFUod+2OQ/qnh #v_5X"V(Sfek7gw}]ч8I ~Oӽ. "͸> '~NI_4 %[ՊPccXy'irY([9>`i}GݚB?Ԡ2/񵁓/ 2d^D &LJbg<@Lr#='3gwH{X,x`)s1tiV.Ӳ?V/^v GSBRJϝ$t;ꩧt`ɫ(`LjWqwnA5 5#x-ƪb/Ն5-[QW gf֍#f[ &7Ymo!es YHrĦڲ-S.%ۻ\U;||N##z4Qt)ӕL8߅ՁnՔOӫ~#zmN{AhU_m6 aW"vDGO )J0)ѽ]nD2:ϽUraB>_/Io4Dw"K@"Q~QwƛC%cd1 : q\ÿH$_<л>B7hw&:Q&"WjPf=MhSwk̬XQ n5*PHD'ISΣ/"$)0F4%wNCLxu"fD5Wi:@l|O/ :֒_\yKѶep3侽Ҥ; G!ʫt'VsUlYSbb(%Nȉbcul3'E}Sgc3>GMhoSP~~U,6֛v-%Tu܀ |B~f(n䵓plLęN޶3^<( ?X U}=( BcnXqBUhQo4 wL;g4 kY%9eg rKJ6n"cd* 'PY|n=2?%*D=%X˹[w)QP Y?ن)(v=Uf)Zh8%[' ŷ+S.GӗngXDžiO|xq(R*ϟNC} *b%kRWuiG)<eթU[5OlN56Jz?]b\TtlIcOd˥ܢs ԅ*MZ=3;P2UuzЬs 8vVL}Uߓ Cp#{Hp b3-^)B2}θheG̐7`0_$+w9(g%wZ9KkZDv+:Gt42M̜%ۆa,.gou~ ȆwM2TvѤ0a<,7HA`~SHMbv%K1,' نgȨ /L2zvc%@ZGxs}+1Y쳥eI0s`(K;Dxp^j㻩%zC5oFQ>v'8v A2}Yy`e֌[-)*!mm M&wyZ$Vz^~]NV%)4Zby qx=4heF, 34ꖳ)jX8mpG8M$R_DĀA1<*~JHiZ kRF$}ߞAE6 \@Ǖc"?\j@5ĿZ\q04jLmS"2J>2$iess]ss[gƃUa4h XVLE{ R;fzLkszcuϏ^L,('uA֥k'[`9s-txyE R:,J7 OݱI,Qy.2AClhJ{zkI ;^lUЦEЧ_Nq/ܼ>W 7-Eʱ4S&!1,ܥ&NZ}_5J݈8 =`!dfsFw%xRͶ Uc. L2? ǵfYapzfd\xS)-'\sA'&LKڠ_on#t޹Wހ2]Qˆ=I6>#H%#??r{U~e-T  }Xm1+6N +Q9(?];ءiG](׫ݿ/{:@\ Fo.ZM5CƿIh?Mg#} >+#-Xb,6b ‚Ixr=ۙNFQމ)ʛߨ>-`JE]šN}xhWpwD_3 v[;N5&rԁKli5ח.  1iSqHVE'C*<%u_hBg6mS[Wj6{ȷQ;`jjxuxG#}g߉Gc~i;SpԳ8eRrٝe2Y]=:TDӰH-7Yk"*[p/&,XW%E;T r鼯hۀ~t`qT3'>\8];hP & U CТL3any!(Fp/Y$cG{4T̽Y6[|2T 4>s d<,EGcobԈQ0˥}X %%#EX[f( 0F{eғl\!),A_M) '`k_0d'fݬ7K8  M*$Li̚/В35AQAG=Ӱڨnl/CRd'a)5VQaа%?I 7!r^ώ(JD#ʫs,%y5`#~1$ņ[ .oڟ.Ii/ٞîAq5XY|_&,g')3SG[-(A?ʱaQCG67ɳ _z',2Sy!6ovp"+tqK uª/ozITX3!JHX=ʭ,NTR .Ά@.Ӿy@#Z9P;+HAc"u װPƗd]4HGG:]fWGGۤI55bT!f &:lՀ%HzM%*y\ Iq9[}A@Xܳ\l f]n8Ԟ KS+-Lv)yaP2b~u"+A< Rc/yKAs4zeVWarC=7jWnRs$V=RDTZ#Va<iuǙ4s!~+|:Iy„Z:2)*C],NohiqbTPᐳtn\eCGqN{E6'>!!D'+e&_BL" 2e+- ˾ [oLnM7É{yqח |$r(܈j5[ M h+z} ?g, ɔf@*exI@P.̺(nc\owڔK+@c0KOahgM~ b!~p Vl\^\(PY0ji5/,~!3MfegY#kO^kݤ(.]]!HI4H :鈼y$D4@'7qs7^ y7_\?3cX|K:^MO xqMd_O\uV`hh[lK =ځY-=W`o mUT'|/KcB;,0*8@I-JYo|BȺ0Bke|% E(-t]ύأ%X\kcl㫃[\+P=ͺ@({b&1`cpf}TGlh;TKs:&j" %(U#]XAv' |`N;Mt%,0GS, sF5}Q^Tʛpri!n({ӔXDG7q p+DA"BD(fр(Hގn[PgV⃺;\~2.VTmfYX[=;4i7+Djw.y! <Vż5p ʬo(p㫐(.u`QگͿZJUPw#M0>54b@X >2+(w8P-뱪"Jl!yBQ`!aX? pJtL ff}тxuihrW#L]5ZcH*©uWfG3U5xN/Eb֏,CA{GIѱ&0g<~OAQ~(\iǹ4Q9Mt`/K{rT qZ^9lݣ`(_rW(A_;+Ρ#!G)9|GeAf'{\tVKyQ fGGl CFf&v v)K^8Ez`T<:+mv!1ZV7@Q7<6q8me"]@F~D9-oO-4nBH,ĤS L2|)5#Lq2cgziܖ=qVt>flzՋ5(#owS,_əcޚѓ/VTVg^׭Yh2tᝒaل] Z*zA.NqvAVųjȱZ^i˝΅\jޢ6w/vH:Hxa*TFpD-jYݱ-l:}DD]2bQZ@ }h,J[U6bS!nXkȷ?($~j{fhlZoQ6QJ9;Y:l0pyuHʽrFYBdY\ᅽ]53,R_?KM%1oeHlyS%J98.O҆&&^2d ~H3[E|lʃN_zigM_67:x6pu"/Gn'q=( &l;W:>]i<ۮ/$̮d)T~*>]ܕ=֧#^oB0YKl}ƨ2ێH-. i %5""G'%7]OIM_ as$vC?e"|6xHʣGVXKET?ざGQ-7}¼6Go{)VE]#֜uQNihغ= Z^2Xh݊!žCe{ނ ~p$ wX>0/02W1f9?ǝJ ~d8`yp!]l/"4"w;c*g=&{ u 7()̉r8HAZT{vXidEWLQ&3w5}Z wsץe_B R'r9T'vr `f=lAhxOdPcc;}Dmdq$$.sJP" F)^B>T}xfkskO?t@q`{GADhU}kL?4>jBS%pwЋcE-Ks*,AГpہ^W->X DG:Q\ a1(Yc 5a .Fp) *qxH]Ô&xq' U."(2~tt3͠Emt+~qX-!'eYfP朗Ɣ?V8ۚr߰:H4cK(=dh%%VpgVr[h DZzP7-jOUKUN#q-P^(fHYX#f] T3FJNP)Gru**|LljR5VS`NoaZRDrW#2P @Dq*Z?Ʈ_@%X/̷YM6]'z @PD`~8i…)_اѷ\nKT赱HKXB^BpS4+mpљ`vC@c<_\OEI\lo=З_j{VQwi5mpelHPy 5 7Ooik߳KwȐ*ᔤ+zM|%wTNXfX(uԪoyTt Q9mddeQ܃Fgu0R!I!KP4\ԖՎ G~xַP [X]%Bȁ\~1}B'jxgPBcHV$H&CCbֿ? ?r Z;wLf<ѽ|`nyGwV,bZcUGm`AeRZ<ГiYJt@~,998M+(ΨʆJy;jPL0i"7upumg6`_zQh$$7 BfsY&EXE fTK锴M) o(9}#f`flm4YӉ̤B8A`zU?ysN ~N Lܻ=6gtzT6R[F[U& :f}0+" HE ;U C.$M(1wɬ=%I CgKcpd}ǵ]iL%qSbՄ) гݏ֏sO<>Z++=vBc |ICJSe]=Ut-&ezՄ6Kv_[eMn$bP!wwNu!3tpQ2a@00 A,|9)96܉w&H+ N`2dN" 0W(ݵ:.yK A&| vj%j@g=9%>WEb$Iw-ۣ, MtAn~#'eg[ڈqw j+TSr`R%%=3NPF*^ZLkm.e~r4bXmg4֦-z;?xe_-I;P~x뿶aϳ骏 qVxt8 F-sF3׀3p> . 9C!oA\kj|4NɺhSonϽʷD{G]VvҢ7.ʩծ8c4aS_T(*?m`J'e>uzסiv;{y_z ~#҆(@"!k4kRu&Ra '.2C_6eH*m,6cB,aB+T/%rnnL0ES"|mZKԗUƔ7f߃LvnHZ\PM9g9b$ć9U;G#fSsH>ga!m7UwŽU8uݶA<# ZnFJ]pnp^v^#3l?gmzS( ˼ ĿVUk1Vu̿Fkmm+Kk&k5J9 P`{۞D%G:Ky|٤J`̢EYW U޲)P;+O5 _687Pķ> ڝgUؿ,B.4]Ie\NYW;OnjV0! 0d{ͩ[dMƁ^ } z#-N; þkNH»N/T1BRgu26Ӎ`A9/%0#.6~CTO>a^6:y=paq9F#/aSqp(qvx"#CKSKK 8m״f/DBtT\n9>nWD+T3/zyM|ۄI +WtwAV 鄪!Hi٢uKvD/!|b3AB뚰7v\XA>3]>^ǺY[jMݱ-@9:o<r<>hƏ *$so8BWd4 0؏÷| S:GOm X+z)!I1[cfԨi%`~r <.ˑNOSތ '7n`] Ř<<=fFRa0*g, {)HSPtfן8C,{j$늎5nԜ^m2n\aTE`>ueMe8w}(pp6HႣ}Hp[!(ZSj ^{[筘5O(:,{!M2 wB.eW0ĵKVPcBKI]oKC)W; dF>'UDGI"䄏6UFZcuVo^lLvܮk #J'jaAdg~@FEe׉ AK:qbFofdwI+4(y=^7( yܠ]:P ~6' "XߌUԸTӑ &UhOmy 4߱ʄj?Я ~:LL6KQh׀ diUwh*݈1SnrSx㊷Ji!?찻-n3CydՖ K D2HXlC#kNJ ktkpU0 !6հvk8:7azT`cX( cLNJK7bB'+8^u̷>هz,֑h\.î X&0E >F&41/@Te%E,<,k+VY~8aq]ƒkT.rg:rK]PTpi1&8a"x'uНv ΅h4Y08x^H3 ԕ$<:"Ҳ1dϪlM(6dG[x/1ɞCGM~e(Ubr{,e^럁qϕ&7 ]b{)gr =լ8I`ˆlOM=M@z6)X{c1ۆUC"\t"Pi11'2#o]-P$y_[m&6"1 !5e07wlnk;@hru70ڃ%}ݖ\z>Mڼd(3 %%RuJ wiN^HDMWo i0 I!Hp}kbbkmS@߃6c]"MԆh [ywu=(G8w7Mz[9ѷ 4z%|X85\ҢO ~6+Nd0̖y%C=j.lzh#oZ[? f^|Q8DklylޞgCIR-$q:1$BZ6Z:xRiH_"bg@(yUlP@y4cVTTڸSnL UWݝj@2``8Nsmcks9y htwn0~vMuơTjE>_#}ЃK/+`uwG7@t˕ҤIcUm)5H94ol=r p}nY-o өI^Y=C[8p3X{s8ҍovAyjoSXUܦI `;[p'I#N"&%0?쭶&.i.3 s Xvm0 ϙ-+PU:OH_6p Ѭ)+ہ_16 TkKT }zlܚw^ǘ$l2yVht_]"W' dL١\ t%b֌2Ŕ>lf q,/sX@A<̐ N:%,5&*O U< һBEl*dLHהte-<ᙽ It\u,UYo"oSM֐#Bsb<p- MU`F 4YO"^[yR _Rc2g/rJ[/#lJL] C>!3.J/~p: ՑCcz&۷_ǘɖsNX^F*hP{'8i ɔ3v񅉇4tʋd8L>0~X[S8pAvqw(MWSo s^s]_' m?eO˥ѳDR/7~{1988;cLJpy?_ ~Ohq&`MJy|.hׯ,Gɇ<=b\}J,hR?%uWAy l ͏Jo\4JvXďЁ&Dض=׽_5%TtTEk2f mh[`}NXzA]ӥȌ\ 3Rag>q yzmZ=0m:'ӯ8A%$|x0Dify3bO:A ũ"L\` $yP} ʨT#6jz"e… iff"Coɡ? !RYam{SCl =wD*{ȚcQtCTGL襨{.g^LoDFiQ!!*LF]B,;^KR#x C/jI\Ao ?˾ŧ@ 9Le>ᔃc~vQ$-Oꬌ/5H$q܄7j`J,(5 X0&l*2Y3 S%ΦI##F =Ik8\~X˞Vi+fKR,V^'卲Mhs&h;_H twu "S{2=SVeŷ;$j?iX#ӌ*ᴍRF8x$ Ld#5Qa`J5bl#6&]nCx HԺA䤀zmdjufo(k7oHuGSzT=G }eԼ$,r,; &ŧFsgz0ELk` x}iV %.Q ϨU }#m7+q-Z^b>VcX]*2~B oi\g$mw»/&;9vv'9mI I8mB,9ꕺSʍ̍Z6ÿ{=3s@oHmcfNf(҆ͧa&{׍npXG33vB20WVP!Ѯ|j+/xP@q&{6XƮq2tv?wmk+O9F}q\ׄ2 @?rO㕲:ЏIԹ6 koF F/'kQ*uc1$>l'3/̧%*tc]m5SQq͕n,Xl*4JfɌ гU~" +旮|,Ȇ@ # yyO~CG3mi\׌1M>Mvt&;|zVÔTayZ]T;6Ȧz&AFQ) 26}2v 7'IHG) *znN6WP?Da7I {t(Øΰ,x,޹ew̞w/qπԛ Pn uvr !:9RUnA(/ɋa*MK`=jFLJi@ ,gJ˫£Xk$ Qڪf^l*Gitmp^ibK14y@J̹dI2wW=''(DkpQ0*qH $L!= I%\0 'sr\šm]v.;,f(& W|kq940֪Լ2"cvJ@$Qvvgqɫe)鸽]g.%A4.9;x+a$0$N es;RPOAD(0XF+$D$DEqYk"r/V&@Ccߝej ԪVZS+\uF٩E'SKYHڕK0e,pCQ__E8mBCJd(IG8w6TR %*I t;nR nw".V:LK`wpXx!nwj< v0^ﷇFϹon?pkϴ+,ߩ z fq< 9\EQqYͦY4V_6ͨ;Ju ' B l~Wv!vk>52)-ͪY T=)[=yb9Ao34 Z/*_ B\+ǒ/88:#^zsΌ{gF>]iHuwls6Q;X#zx-e;^;pӽM`GB>c?OwEq71_#LQ\6)UR5XW4A~ZC8gѲD-FIr_Y (%rlB2'.HbjDgqhBn(/&uL^%1xPr1V'Jd0xX3'7"y<6o"_QU7R{-J ^r3ֵaf1N2\}[7`k&Q4\X VE<Tx^m&ޗyXgkTK {cUo'2EP2t^갞E0_rq߁zI}F&Bh4 UmAARti b$DAi>41jp]hсmFؾki.'W[]}d^sYry-?|oY~&2G5Ԑ0[-k%˝ 2erg͠^_Y0C_,ۮc.] s9!px3UmT[lOmxĖvdkgmQ|(/:{2L6DˁR^΀=~~7M8WuA/SXwWH9@&eZ@DԀʵݔ-W10/]) @jUװ^f ν(;בaN2lC55m8lVm7tKܿ*(V `s-`*KGL Ann< Ȩj:>ԦZr]j0rL MzK@xhAn}.%vq;UjL=Kq'_c7Cocǖ4ڹ>yo)g(:8B}j; ,`$c:_* ȳpGϊL&bh~u)2;uaB xRĚXjDV#yض/-t󧒽>eYJSS'،fX}'K\$ÉU3TZ29s2VΖ+ 'J@Y[ǍLqQ3Pa舁C? &bЙiq6axZaL(۩yD+HSc/X]&nf\/?SV:pS0K9|~@bc5B0-3YTߴF3ӋhS3`E]FKoVfffQz|}Z0_Ѭ@i @(y;dQwt BTzQlNt [Uu:A+6]$D++a{!)1 yu% z_s CɈbkDcpG*1r >5n#`~~']ehqw}& znRUoCL3Lv?8۵&."6N>6O@/[$D$:ld|K吟KƋeލ3&ɟHCF 4"Gsˣvغ Y^dSYh.~AZpuٹ$aSt5QJMb yԾG^_e3Jⴅ٤eAm c ݰO>o #ހG"0dN>"FIaHwu-$Jx#!M.li> p\}K?4e XJH 1Pe,f|Qtv![kD0-“Z ;ʲwٚΟEmE@(v3<g~l,..{`7.Ǫ`)0Q)̰HLKqVK \_D(?]QX(_xo)|D,=imaD돲e` dr/X.K,8_T&$}imw(^aC<!Psjx8;U:١? (a74=%X[GO 5d"j_YE]ywFߢzө|O9 1?(zӺ;85'E?'Q+C5n_J>y͒̅Wazy8:َ0x̔F$ H茇y4hvZ 7[A>`X-Ӓ/қ`f9V#:nJW|xͅh/}=Tl޼$*_Zl%`FnjBGT% #R܋i|8% "ߝ|.p $ Jjc<>cl*biSt`TlZ=핒Q +'ȰHczGEU) Eb1㒡@=G p),lչenMpcSFE|?VH%X [2lRC[Ȥһݐjw)n@sj15-π!pѐ$ɵSo|jV= xR9D*<|$SUU 8DZIJlFzLhH&N'ɻ A5M*Qf#rP|K~`]Ryd 3ߙiM5SPxTyN/Qݗ{~oY([-_/*Wx/@2BgwɆJ󰰎 sS> 4^a8kW-x)&vU4Lldk"`_|3b!0j E^to, ´AMlBva7%IQOL陼Ϡ%fDw %crqJ6'9OZK 'dK`` 0D5?1ԪjWFue#fG5ߒ܍ PCFlek)cj6#E}#Ug̥CgnHLˉxb׸ײycJdo^T3c:N=}?f~_y/ӣۃi BcB@G[`g 12Vi)2Yh貉 &$ (tf,`shtZo.ں6%_a}UUބ^Zc ~adcLt@f/ыNE6&§)ɂ#WFvx׬2:qe0DlJf@qbbG^7nxS 3) 4fl"_뤢w!}1L$ję~F޽# N!ޞJ|1RTѾNG  yȅYO0~,3lDlg>DbZ%=n]X3=*t*B R9k[֋uI(eTVOd%x;G"穿Z48tĈ*ds3:`\u؂ $?` P>v>fJsW'rO%IwfBO->B( uzpX0~K! ?5 }4t{rnhcoU +yo@UE] )+ڔدAI0Ŏ;:#&R85nn$rW?+Carv U8Xj_(?4 >)@ tެ 0Gie.& }-35bt2+xQE5f`CWέeHQs?vZY@a F}.x -vm9X&ݽ9YvQ8pVG{Ǎ&MY XpFuF+i^k38zwbI1吱vF5V~,@і#O1GQ8:&ߣ)M ! I=s^48by6TNtyZ%DiPTaW[R+vE }]@ǃ؟w q cb~2AAB& asj0%2[#}I]2,<=cGWn(kg*HbIeiHUPww8>/ ye8A"F)lm5&_$o~ֳMG rRZOa[-w]K Z_ Y&YM*s%#B ~6٬q4J[k$5;ÓSj}(HbhHCAk)osvĔ5ƴA}Mm`3uK"'okyO 弛m ,E[F͝m<'6y\eQ皪>[@ΘǼnImÙҌI xcÜ0}^d؛/F0:ĐS>XI뚥lzf3V؉VSzh"ʹqLl ɫkMjOgg׹< OY.P]p׽2'FtVKW\,,j^WȔ0uˋT'8ǿ0|,Jv\6d{*Yq9m!^ 6N{NP`X]#Uʊa`[" xrTZA<Y~CWZ9'^ ,ppnOc6^DI-1I:3V0sK^cϱzntL -8E4ؚߵDFH,Y\-XQhۼM}O nOwle}zl_a0}m}jiC{_eY5_é=w.\ayΑ? D| !U kcj1oϟﵣY'\%kXZ&U s}} §5[/!ic047Gmʙ7:A)c#  l4Gvb|{ 'YUbѣmureU3IX6;s"Ba 6,T7&p'D{4߅*l)~@cc WoT'(*RpAwݶosV90܁CN;D <ϦD[ͷnPbNWR~RStzƔW5Xi+*;;5M!|hJ3lM[rn'-a,g4¥>?&=UgNf~EG"; ɯA+ZҼ6APMMOw&/u^+,Nt%ft"+SB@Vݑ6cYn?aGĵԠt[L")׋#ZEg j1VԍSvP`!j 3`eZdQ˸G1!_:l|BC ƞT{iP |#D!<M]OQ×x0sw5O۩ToeI0@&kO2ݰBUEdG$h5qpzVZR!^=V.lo_8_KT'<ݎAx_E+k<.|ze-D|'[F{@YDu|hLGHb\ZhIbX x5{oT.ẅ9G/}R I{{^.,:HUPo:JVoB;61* ^>M)0-l-FG.5tE|L̟YcM.B G+v'10,EMjǥ#thnƽ;[govB30ny\ ?}[bqv' [L3ζfr]\Ѱv^5Y|TFBЇ0ޔc-{hW=s=$/}A@s՚`udcJ3üzU򽘔ߚpD,-Jyޜ2O#:+#hmXa01/eOK5,\cMS;[KgWQiF0pMz3 ׸)Cm9}MOPVsV ,y3@C/;B X4s|eUХM'>S9|s="E"}bu3C4[<:(jo]>^7_: S\RL}3(وeW$y}L;YV$h D|$fq4ş?L[:QEֿ[A420#`v4gl;4s"L6}@ZIR~ Ta՘.~`i`j~y8Scb.D&F '{%к1up zoAY?(Js ^""ė9R7?\e_S)JՃF^A-\+QLN;Li>Z֋R0).ɟR\MMҀgH&\GdFZt0KN/k#YԂbJ #tW˭ÔBUט1'S4ԭVʓRC!ygEiODݰ!wkd`z+_B%P$9ث 6V|@B3^REnHԖC+ˮh?;ڶ[#޲,L1Ph¤7uP`SvGI~7˓U>`K˻9f!QP׾!ZR|H;"k2籛BqMOgNGff9Lz"B ǃ.{[mo#F54NLѱa Rzt@lD\ګסY-8v^yGГDY;16I IGr))XF6d=~zGi}&ܹ+Zw"O:p\-`uHlZo3lb1謗ܰNeUegt~bg |-Y `q[vIQ_& w''z] p%ދBKYZ=tiͮ'ʂ"("cFDg0 ~!6F_ |Mi%Qu/!!2ækKùʾOmnpڄ,ojd.>$ ֿDTW) @o9*mCak%.p 'MpO,)/TzXe{}_POޜL1h*WlƁռ,V_S[p۳6v~f]Vэ:08NFafmmդC!G#f7w Onƒa#c찢2NVu5HاFC*լh+K)}q51L9*e] fLBޑikMEndHq^m)`/;vCEt;'C^u-Z=y'ȇAUC zf"6 \^BD(HERbe(O 볓΍:^65ӆt s3g2u'{1*8KzOP|EM0=CEete:кBLn7A٨Ī4K^uϡщ1yuyZ V=@E09S7- _XHjmХg N^ ,8buK*i8q{[r}E'|\1 K1GD޶')kRQ[8Зiu$W;GAE$+Mu6ўV("I.pvesY Ews;! E>&ȥbֻDe}l/p /4;lDb1svoHgp-L0cPC |<ƨTM'ލVUVgLP5Rv7Yd NSC]O[.)<5_xOe}u0I:ę}WgI1Y]8_mm ut"}3u<3,)P)שm"i Qh{& HL^F:oaUێ IouVSY 98J{^%n,$yMo^;NIoFV/C lUiW~s9քlEyB۞T^2pU%)r-w}:h=ۧiT'[ Y]ܼ:lwvhֱ W[ g%~J\XH7 ]8썒h<2PizyO,W$Zc{n<ޮծIQ/=>q1`Ggl'^a14(d_?F4v.gԝReT8CW$;kbKydxGL@w?hNwt-CZײsyt˹@A*n;wj/I"Bܡ$VG痀75QͽD_nY,I=;c$qsۦ+QLLCtۼ 3X@&cv3{]=z!2*JqA/ˆeƄT+*A!=ѩP)>Ձ¦8b[r^19:ouctd5Y5Xv9>RZ ذem$V(獌ٙHΫH/!tuxbRܞl.M715B`F/6ۂ)=݅W]㟭F').DiYsŋ&uX5 y0IN l(&]+Jsɮdc!n:m7o8/p@,֡1]kbdD5ؠdTDL9` ٯR&RdIK7o:w }ATJK] ?cU:wfʣ7M e2P*}oV"ya!Nx 2W5E3zVhAy7)uw0t4A?coG8؍E$"!"iW:+!Zyi7-]WuL88 6 F,D= >I{K;qޠsq*Uvh+LpqY[񈔙<2!Y"|M*UHK_{N>OAؼ zQV0LxLN[~6 Ng/ɺ/v|A8bx,_q"7OPd.QOWD5nw*t7fW8ѣEpI:'aQiJw 4wT\{Mo+#x7|`saEnoCI+=yrE#KDStj;hx/"|S"/L#&;*caA1 ysJ6hN;S< nؚ?5i(ÒaFkQf3P#rg. z<o<#AgeE Qa sϸ a)4Ԓ8R =S{l UI ۱0]2$)Z8GQ_w@6o.T4Ǯef)?q `X{tr`*w Uazr:ej[E+?l&VVt(ַW ^CF~ ?xL"$,+S?'giGvuhGDҁj_>~ tN%ZHcz@: A[k[*9hIե<xcQ5m<3F9̼Sl&Z9 injEDoj- Y3k|)}G\H6m*"kY#'mUE [z)wpہKDXSr$}y4TSJ#ߐz'Q z>K?YWѵ?&@xT-a=a`q\D814.&4jZ|u4PG޲a鰝lJ _u0qdzR𮧻I?Y|D$//9PIs/ Kh29t> ^D VU~Baz*gt*Lu!)m ~ cĺqY|j <,-5>a PE וm+łrfmQj:j+sSHc^$lLG!qx4z< =<45E6a~ 3}(5 3?x N9UVP%Ï >p"#EhTc+yk#Ce?fFBj&goXC>ʻcb4PDx^EG$:|Jh Ћ Q{!Z~3-)fy:h ၟ{0rz'1n奄cCsz;&)5\H|BFNA(niBM`2iNeX`I>0sNj<~2Wԙ\r/; o7-AqѿV>IkR5 ]= *s|UIv˷5\?wVlxгE`;oبq$-6c R9\R_z_^iP!2Y5</NQ-OJ;AŏG0]j?.<Ԥ9E j!m |>xq$]6=F}%CHjGvcm_RD#t|dڷ~W$bs~|d1)F<)ԩ><zAJ)V4Kc|*)F&.w+$?zv<$SxMطй#Wwp |-`SFu@"488wVؚMBxdFw6uJF_X- *BV̀6Z5@)]J+QݠV썔ROR,"T8ۑ/=PaFac(u>E|PJ OE}\ Iw/vC"KSalj= @SbD8$hٹ/umr|1aM1flȵڜ7wU!; e+Va_nU_.ePDl?ƃhog\г,yFzHЃ-.nP{祏|0Oșz5gjl )U/˫1tzn܎zLJ'ul"?I#z$W,Y="J!p`0 4gÎA|yN>ya xj0s^l\zvnPR*g3 ҤXcDrg,?e9 R-18X^tr9H(,V/ &blwO pf;i- @\Ɓr1uC|Iid*Z> _^QChջX jf$$ 1 ݼ`N:/H (^"fU+'ΰ0dKcy>b[L'\>~R67zd.u<W%S]#+RUJՆ0DVm-oew?7e%;.`U6&OM.Ŭ;(Nuއqҟтcc+E> aH"!ő*ȉ(E?jiWt8RA)KuurCWq/PT+F|!s=5d,!ֿ ʿ;,0Xiv?=%2N?V! kPوBк؎בK݁QEIL/WĀχ^81W<"lpt 1ǫx/e'y/GqRy{٨q y6^oЍ&YWܵ[g:tO&7*Z^ci!7~ GL[_Z-N!H%: 1#n}ZXAı :ͅMFU~D1ۊ|4zΈC&9Z_q :8A); (l;T"XT&34j  {PiEAyCq0Dx ` ϗEΙs8aʸaC}%_)F־'63u)=t잀-T"ηV4_=  eSZjf2cF/,='ƃA\۵<~ș̀M-i"XD΃"_~"5@nwh)ul{hmj^ dQ%;Q[P !R!DViTeOpD:(&E!hPšNP_U"^'߲ߵm P^@͋o9|JJ$Hu`Yi-Jk4]nYʄ{R[4+q6X惱'3P h0|> =HGF0|a/pi"eiɞ/9\ü/k!P!}l,74?E_*e@ zi}rQeW0I&(GuMm@d#4- W8i)}yT4c)}m#,f*B:ҥ#Pbj=)X ?֩PX],!u`\}I)Lc\ $².&Q#&1LN],sD!͍ܝJ75䣞W99K0Y$fw/&㺔Ce3dNMpJh9z?*V<  ccg_Bmaq_/R4EuSHhֶmh.$l6Z }ԄQ`yZmjL IOLgG7{cŐ.B0 : g1 id ;hi܎suD9`W̟S >N: q(N?Y)z-Gxy~k.]ʧYCUZ=bw@ClGnOR䣜+'E%-J8LEь40SEP)&7M'&"76kYAxHB?zLc< Yoh5_:ЄRGakY|o1ǂ" #fN~YyB`v~X}SL$Щ XH\`5.tHoX f<m13>5"p}^ ^6>We$qkGزj=4GƼ\qI%XmoyMN!R!^ѡ[@g~wAX%ia]_akcg,^! syr1^fö)n/䔁{iv \ܛ[2cئ^S\Hf}a[9/SSpp&Ȓ]gr2@SURH~muhwOxz ` ^e J+gU"X>l| {]wȵ|{Mema 3Fifa(F[ MEG}/oVLʲBAsH\zR3vb .  i$Y|9A*"EM8uQ ? sl5Mzw3F؝ttR]qJ>-^Tt(v)=xVEn=+c%C_nHR8YGHx*`6-&( $@etcjKB)Y:t07ep:9HsTumfiC͊7O)S>!"5TnFGw\ѐF@Նt ODv"`H!Ly~ýhW> ܄\JWoZL (+p!%RY{S|^2Do 8nWf+'o`PzC++:8ѦЧ/(UӻTW]7 ܱo ZڗZ)_+,r01@T`S C̳h1IѧW,y/*L B> mfd܉9 m+g>67Kf5e҃'ԔCtvi5dOϠ]E2j8йѲSڑ jP@pPͽlAHz ڭr EuN gol`a5c1/0,BZZu19k'!)-[>c D/oVk6e2}WvvS X(AjTk<1odB20>') t]]e}Um- NA:Ht4/7sjw?3(;9|d ( ;Cut6rd`VsDk6 ݥb˻EFB/-1J̀[N_r_CR t2{~MʂH}-C yebѥM#ZbYgە2ԫ0TEϻ8 S&LbV`)JSnW[ᘛ)ms}0$[|las 9!,[N[&]Zl@v+nFȜȏqֆ C/Wf, 'd%e6h?V T:88EX{ p#_$WCvYgBPP" %`X-`t[R躴`n̠%FOZg,'JZx_knS sT?mP]cHI?tsloՂQ[o&@?bw' f:G j!u3x?k-}HֆPxC\UE( UӠ8!R482󱚇q@m9'T"93zu*ב|5͢7\,20W@V$򀰃Rur6qJlS+dN47%nJ2B:7<鉗-O]N-G+KE"XSa͗``-ĤvQsr(}mx 6Vp3ϲSN`2Qǣ(,uàct/@Q`I쉓 = }RU;p7RN4mrt˺C,*o`,nΰ3NUNcO$JS5ߟ;aa>jZPpQZ䥊H,N_ ArZ>ipDz2\BB|dB?i-nAuuC ,׳H\jiVv\zs9%HcGED$@^@E(-|lKܟԯX ]R{Va㉯OWY"\ sX&&-GȦq.&5٢YY)" 0Yޚ-T*~V"٠WZg4Փ}DxDwC䗼";Ls t":gQ4}xqОR|N/@@{j6n?#>zҢ ӂ #z찃RZ\ccQnỌVSYzٞrHA4jH}2ھU4KO3~ej#Bc [Y"z?.PӪ-UG, $洖#R#2`ӄ@C1ɟ5|ٜ޿U4S&-~}2&˄j%B70d"ڎ!BRQ˂&85'nY`Sc%ҽ]D>YYPg@'ALYIx S'd ꠏBߓ34 Ac`Ha0VDKu"4 'hBm%~|3G@ƀ {*uko$sY6WlNDKH>~C(-6*" f<ް˝1ip]Fuћ 桢`6~`vޖ˽ S&cAt :'o[ ȡejUC5o.!Gه-&NY[Ur iBi9FXM6dq@qch1zU;,?؝8G+R;vE.{u$ q0v3S[v4zJ|L>[d4.PQsa0%&+ՙ/⡬;]hؘpK l$>#+$RH4Klrp1|Q/hT'iIi.-ERpHy!hНNHPH _*Eo!̵*kGVƹ,但ɺM1Lަ__%DxB瘍X+U+( W0AOY41Rmj@'6A_Dy7y2Z\<`jwO0dToQ,gU~G22siu^Y @c;De⊺-H]˅] fE{ʨ%\\>uq6= 2AHF NܚyQB $]Z.Δ]n Zc[249龌~8E" gekQvV!h~-/KeŶL@QvRQ`F!0*$N K wYoѫʲY *y,GoDo.G͎N>C?&tYTsCDR`EYڳfaD-Kuȉ.I5Lʂ%pĬYBmYhT9CںU[K4mh2Lk΁'Yuʡ#ƲfWɐ'RLOX|=eR*B#7(z~eHJi'a4PY 5?'C{SnWw)VÞI7/ -lŠWZ X~@RlB^c-|5opA뵕Yz@ƛg4KСS݉ rׄP3[ wײ?/`SՇB5cea|PCuzi1~;g{E+(㜁qqۀŁîu~>r,4DEbOqB0Aqvn8uɕ2VP- } @ UW޽Ʈ 8`: "Q)#!tJs8x4*bdCXZj,<;"k܌ϑm5ز,ǍA16eʵM4f+^--*,2_O] Dc`TciY' @gI, Op+0Ԙ K(H*@,Vf5O&x@+)ֵ>}A45&XZѴFeB2ܘ~1q~!]0JbXp˛ LDeK:񜖈U͌(ZsP{5~M]BpTFk5tr  ykNXG0.fXZ dl3٨=Д)7|#uS}0K`ttr>!FWR[\'CX ]'3ߍ΢YP3Q__oB*_YێC+1Mg k˫f}G ͨjb :FǥDr}s UªQ#mh/yYDK2_k);ȔQ-a2^R@1yS&H ' N8d._f"[lZ='p+ZV h4 +bhBw5AOSs |f+P'jΙ՚BH($5pcM[Hɔu\ 嚒S5yjz+6|([pQ#T$@5owOa1w|`/ `"W?$B1e]evx8{6CءԲ_ʹ9"x=ھ"Z$yJ #@E`cp't_*y)=3VvJ@ԩJh`0nY=IvRazg3E|Ϸ>{&)43fSV\$EV<`ׯIy0H&zͱ yJ9IdzJGT+tdi7{jM2YЦPKyvKjd6x8akvjӞϽs[˻^;7j73n#t{N;o;ZqvL8D6$TM W P3D3TOQNݫ'_Mᕰ[LͥQ=COtcBiuEy}ga)-'*r70ä1vv _D5^7"c0ƅWcv'D"Yw 'Xm?I.ujG/\cE%YWrg1-b5L٘栌b=JH;R ҽ~+ej]H=y>I1g]Ef<}Uz ST QH8|bM5ߪ~P=.メbjn'/s7j:E!gD\FBKC/ ){7@%%sx$|H|erz^Z\5݀mkW (ˢq?ADIv+%JؤPNX(d7,B1|bA H|Ôu`bi-`>cn!vA,}xChɛ'g:.Y%&jyIe0*bc7,<bLm<4N&%ϳq[G{-r))BexȺbu7I-HeMoIB$JdqRG!ګz,a',b'K^L?Q4A*T(/H6)y5*hF'Vv1j}N @}+?G҇ ]d9'\8]|I@#m}~W'rLQەS}(i8p R^Vty[d(g[v6tsOCd<^Dci<Ϻ-T<aK-]Q#E:_:4v+ʰJxzB$Ψbf,lN8^?>њk4Lz>QEP|ya G8yT<)& 2)o RwE#"i7^a.1l1|Y/ggN$:ѲxY]Ŀ˟Czx >S{9ˍk%(MT~#EM\^Y6F@a`ڈzcaq"qKa7|Bs ]Ka߫ⶡ39t[PERO "Ch~.DWz6;ܱnP݈n:7MwfCo5O7ںŃ=.k8+OvgÝ-if,GbwD^\ET*4=&{t/! Rzaq!K0/NEuacV0/.m-`4E$, H*W$t [6TlʢEaw+i(pOt D zBGԌ-2eH7\1p=Q {G])bB\jX6ME)*]0z8N!@Zmcm1B}.G_zp]vLsCjU|\pTH\tR0xPZk^R_|H-֬ޜj6k*'Q{T&7,gmqo}WtBqDw;sv\!hRz2MJk]8w$}s][<h%eR7՝$XnNwEd)CnaFL8]~7Zi^җZ8MpZIW5œ}4K`8MG3FR'p?.TQH@JnRhʻ09EI&0L$[?xl4ϧmsD], ϐlPy{`:kה@WVSXedIQ kÏ,Q2yㅖc,;x!0RyƖsHF(xhoobk32)@Q  a,Dvɚƪ!kS x]WV ݆Uc6jxܔG Z D+zЃ { m&g=Arm=qxCffϑ5i7jbN#Azȉ~aeCJn[$%Ohc#85t2/ּȐ 5Fϼ7+ʾ;TєMOݝǪ3|H KV#ȁ`g}cUjAA|f f9bs st\{!5ULȒB;Z0`CDie})bn/P@ "2lL 0uMN1;ۉr?@B@Qs7\t2HYƃ_Sm$ E>huSD@Β~ :!w0ÖPz`Z:xՔJB6 1wR;t gU^Б`TLۏKD 1jzq//EX.PmۥY1$eYe*>K/5~Ԋ˽; %;)dv L >,mg '_dPYEASY`h `Пs΢Ƌ~Y7% CT<M,~Qqb|BhQ|O]۴PyX87>_ZJG*bdDlHCV|4 *v<$㷚V;ӻ&WmFmg]=Ubvu{(a8L94\?UzV*:L40z(ؠ+y]D|Ѻ]o~QijL =HG8la(#tqf # e|#`qK Ԓ1%t`SEnG(1؀)t|=^$TW rp4s-|2)3OcޣpQL 8lC@Irc/7%dޓawP=mߊ+olD^2f c_@lh×jB +uAi0ugE8EJfڜL6;m۔o(1Zotj0}Ѥ0dl :~f܃~4m8n]CWY5n)}J3z_[;(`1^T+,(b MWԔ!xw^cI ef%&Ę$UDr6uBcP$τ,h׼TۗSSEM-rF|BO!W'4|Ll[m}:L$Wp)ҫV﮵GN*0YPyvEG2$PUF@Ŝ fR;W7Ol %t4徥Wgl}T19BxXyHoE}b+L" TEl *gGI,gLA?b-/8cz p>W1t PԢ7΅LJeٚ<7b&DZ2sWxEE|)e D9L:[ ~hClqqxHcD4p\fbF3,l'ԭ~84p@>C8n*>S*lpdc:ԁ _DeJ 1 ljML"2zzn\fhDO2g#1qOɠwq~JMc GYx,)SXeM5_{Q2ݻ"h?IE SX?t1GN_ůw|{=(BکbGO@>Udcv>q+=[L8eA5CV5Qp>YB|J[m\ A,Fp<=^6mWbB ўed!H/ϣ|VܳR^-`h*ָ3R&Uzɉ@$JC lEsPVUW/<6Z;Ja^- { \ oI^כjO#|K2D<5O{ԙ5wsEo~*7ŭjMǽuJEƼ.E=xuFt遲]M_4[]۰edʪ&% w%%e,Q CY4%175/p*I? 9kIJ7| j }Od4:BĴRl=,tc^Ew `by`'Z;.3e3["#ܕl!E)Z r3 >g*i6Pa,IBXW}JMJG*]XJ | $9s-"*Ъj }4*+$z|*YL,㘻b_M_T3M1[23VzaS!>MzFk>\ o`ǚHdoe>)Zl{l)YS9[-uSy RH# Tф+d$<8S˙@oG2w kA.z4,z^6|ZDᾒ8j\7 r UBqNTGN2p Cݔ %Ϟe` q >E&N%6`.#'dSκ%{NPcb _g\_:#F|6r.~Vx E!*Ueg5^8թ`{ X{TrxWu^3*$fh{Ȥ  ;t{D8QJG0E.^ kxH@&mK+p+9x1NkEtǤq9Ee+[]#>P٠/>wg2f90Pt{}2nq- ʟ=}MRmַC5(CLr`sb㜓@“aƋc;9bׇb'Ҫ,u9E/Vf ]d@֞tB,uM1ά*ViR *] wPCv!䙓`؀0?s5e\\p'av4ByM3FqLP}[k7baI56f: :U-pD?"P✽ɾHb;"dHt;XvI:CaF>:܇PmCXXbv%RKjN$ְ ō8kۈ3G?j *| &5i{A["A,b/@A„4,Z;'r! ˭ )Zq``zHNAz7py'>p'"*XSP•|n<>q?qqB&_LӔ`g=8 <Xi\띫mg1آZ c-D/g.5`Wֻ\Wë?BumՉr߁Æp“2sDhC7T*JfhP$]6A&+P2;9g5YZh{~6[ ^nIN1亖aTu 收9)x3}6!<29 _d~Ӫq]GH$ ]YTR2*r> u\6'؟R^g{d.:ߙQXK)_?<-/*<DWď9-2ᴳXk`j] Vt~2)ߨ-:W"ktm:Ű5OC YͰj]<@9l g7ᡊP!Gv}XmԸqQUj"lh2@κ BMK{]z<fL[/o`ʢMJt66.!"]Qe%h^T\]`\в Q4^ٞC -kQ)#DxKl[yz6:We$W?{Wʃf:  t[4t$00v=5^A|0BQNRY}f=SIBzOw([ /+8|^b7y"8bAQ ^_dM\.roIC3V'1ev~fynߟa@l[ʨF8Lwu[*QZ܈p*߽CF2JP:~oT_' #)nbNLZ/íIit-,A*CӆrźDq >A"vyd]P#JYyo*pq@(T*}n^2\D0ȂeDԟ/"!FE: N-JB9DZH=㧟֫ZeZsƝʄI0\ڃ _:Y'-&oKɌCQ`A?!^swPlцpFt;#u"d~fZ{3(d5&j`v1)4d*Do"*TGÔ9< 9O ]S:&(eal6 ]ƟK7I5{Vekw}j1se,_t$T@;&-|`e\kXHl'|xDG$ɖa b4xy)fѤfbeoo~~}c/l"; {_h x~VVˏT|oo(Z[88<0OOuSeAuOsCnF0pW:d;3*`fm+m 8&2$h 5m 9 *e*4U.痳8ڪk;`@#ʯ׳:M-x6`*՜a)?̃j~b^1}k6X^pk@uX!OHYF!2't+^Ff5 ɆIZ %`ߎSmi 99#/@ߡo$|C1e3 .0`HώcO냐]yxYƜQ0>Z9c˖{f81uA}c] B qyIH]CYF$=Z}iUF*\_S% WΖjiUu1YzbqmtFaN4In`%ٳ`p )PBZU'nT}V_q9'M,nx ]PY%Z~56MmYF)*BNWV; r{rdi:e03`a_9Ew%EN[iLH|گG`K)nec>Rש#Z@QLqqYrt[}9<"!π[$|ȣW-rAE DhSaDMʀM#R6zE?^Bəd+bbF}۲WZK1-NG({]MhT'aZӓRZ222:9%Oe-F} $ͭ(IE$QoKy >_a]s V>@aϜr>wj *Mi~ڂVpalLS驅#ԓC~1O49*Sef s$KW,s`0E[Fs0͐2+d3rUcĂ(P 5+B`~'H'|WrmZf.D2c5?#)<ӤQ:^N<}an໹)j)!E.JWj/;NvL$] Kj&}5x d|3M I![=gLՀ%&$=6Y*{=b"uG`P 1:CfM+$z r&Sh ѝ_-`}㰿Ƽ? 5/Ys8k.) YL_COy,"o(.e;$wI9Ô5{ys\ٵ9WQf( v9G-2,)*+ҠT)IK c}CS/ta O= :S(O>ۿHdY]>S\Y{Ԏ1\k9X+#z)>8PȂnT;XZ|_ $n>2]}f bc:_u(uHSQ{+9OJMF;Q 6OԈ)jHչ4:~Iha=ppgs߼B=%1&e7 wbx̹ٕpH_BVo#s+I?|Z>]{&$dTY; W9d Cf?(]@ta:N󹹴%ަJkhko8ǒ]ɏG^9&_?P<ிRR6\]Efm@@Ii}@̿?{Ӣd>{N 44#ӰԎ&#oK$T& ڍؓ+lc=ٓԼ1%hx e/`P^25՗WZ+(/'z.{<9wȩK1E̎Lk uz<vI"L}7{@/yFnr)t ay},L,*ę}-eYr6#e>wm}tG΁e Pz UYGj<@dd%gN8*z~@)-3ڼ-?|3 Ϯ %"X2wm2jLu# s'i9C?W?T4·0w| _ E~A7X$7\ٟn-.3v!kΈX "P\.>d[JTOd6 aAB¤s#BZAWҘӸ&l)^~Qvk1ac Р{lt-V._s҆"UvtP]TY"ʩGMһk_v>s_Tw:^;휫㩶OE(bR=^_hsп{ PidC7jE*dL} VRZ.j d9L@[\ 4Fd:21}Nn^{Cz.0J|lv!j$a6J4cdY Dr¯/S'ׄ)LaeoJ9BYwQPu'0זߚä>#0%GO;GdH`;bYx؄(0&aB:$-i e U4^X#e+VfV00 PxƿOO5It*3s7'+uaakTccY9c<E 3)-Eg>bXRMO-þ o`9?dd"n|1 Eߕx j8 <\" e3z箍$sN^|>]2ɀ$$dȫ{b PHk21Awo4˻BE+zcԫ(%>/jhRCrjk]¼0Sz?9W@ (BrG u`͸po6ymu%m=lo@ZZJә4-Gxw5/nX\\3 ´ zu$Idj?DEڇE8ͣMt+iLXRhܢ8rZ}j@o *!<ۙc(ӮHVbf'&a&}յz] MpYSm {a dSGL Nu:`o\THU ]F ϼsRLn9h ЫdsX}΢6OMYi}s U6;eX`L 19=计Ң& e2ҽT,7RENyQi0Mg>2M>'4B+x/&ǿ* OkH+xu+ ZZβڨm,Bd M9UJ<2 L\ T,\?N_omTk~$ `$k/|<ӎ4 P) :m,䟜{ʹkA(%ѣ|PMjA$|1$vP\yHav*>hT A[{Q9ӉҜ<}3OŊe(RT ݭ%%!}k*)j4cDn{?[ 8K skz0tz F-ddj6 ٺY D‚ͅp=Xs7) 9tԲw&5/Ʋ0?JI^|7VH 0A72*n` Iw>`QGHpY@m ~5s!νct6 AZCWfrwz{е2:-Z`BhW_c MU*2c DY `Zv &jԣdm(?ohmhf BnHHI7WǙ?iUΚ&OHGxTt gز{k표M,bI2}epj>!ȩ,g]ˠ(u':hsg+1JBih_*td=ie2~di74'IN 51H=]K^ $:!$9_J5PQ{lu"+Nb:iK)ke,L 䎂o7Le:'[ۍ^oORUU0>oh^ %:NӰ0/agǞtѓ{淢 / 1ɥ]tVi=wQl,I"y㏿2S!8Cn/( X ɻl05?~ؾҍ=y+ZVb }Q8XGFNqE.#UuEʘ|/p[Pyxt `kIc1d\bQu:}l(glV6  %\N8\ |hy^4&t 3ռ=t21һ8;v]ci<(_-N뮺%rz$Ү'~<<{l>̪XT ē ?L"vHҞIt[bA֊{m_¶[*h2c~@iXy6`Wa:0Ť_sCYL@a`?t@3"j69t2JѮ|]a;PRu{Ia=جb@3#}N4} z-s>-]cK)شJrk{b%d%1JVGbЙQ'saE咸)䡡3e$B=v*ජ8vٯI|F."ceo^ؼ9ȿ+ Rsk/J) 0 ֹRS QuW=Xˉ@p|}.Xf!\ݔ,$W3!L?i(VߗCڨ̡pJs^vv֙㨙tSQ¥1=u/T RVdEQ:9u'dSWO. F_\۪,N""{.wS$S|Bz@=x}ߡ5\@PZŁ^ImLw OzV |gb>@{49E0+ dTby?UOjy84Yp;"Uv;^暪SMj':#7C嘌GRskjFGQG95L՞ᅥK8$Y0FӁN%>&jh>&0̙I^Ze%pLРJ2J,$3Iʛ;* !pp*h VW}eHChT/vxHdt%s`9~y55R>ew gT@)i{OHivGyQVށ^ˉZ$,ynv`vKsc |6 ۅkX9E]PAB֥ÜZI3b2ۺ6kf_ 2slG³5:l7}8-.SvsnJr Ihzpvt EзE:.jGG*,7k43H l򷟅{8[B/DHsqSR5rPImK(C@Oi5k裄Z?p:̝nA%\4-oOAVi5JwnhT| m:Hm(+gM(U>?vBuOd@FNQw?K BX"2wZ83L5q]vk79>v4٪*cbG5`H(py"FtD6.ڪ'uP[W߭0\!0_m*ϡqE9X0EBW?/2Go9Ԉ#w2-jp B}m tX垙siݻ dަZK?/ >!kʧ;B}P x` @䭮T\z\ {HOs*dN7$;UEYY4p)]jI02NOsMYmdU͎$-3!Ư : S'dXҘH( KDm~kNpOn .82e fʏ^DLqX:^I8eI)tRLljI^?tsnރ]R 2^?oR A<ݟ5cP7q&@T4XAO=! K)S'| D&دՇ·v3"+U|24a-LHd$bc ;/2Rs gj:.z!K 0pCA9Cy&X' G"]8`{]`ݰ6؄@C@ːkxNWsyP9h JTLX8Y\$کJ"jC!+)?[~ȋ{텑!*E$2}>Hnw}q]Kd8053ts €&ƋeE<#h@Up548Q5ߪ"t@1YorHVzG"t>BkA[UV5[ r7ծ&S#B*W?T?]?x:!gq!\~J m[|!l|D g(A 8e7s7CiXf򽩶M*ooN8XἊs}OHxY[>bx B8~ġ;ީN0ՙX |62~V<߁- s-SmX!({C;xR1AL%HO%ǮGI5b4w;EJB[ ѠD~ҪYX(pSihUzR_A˵Q23٤pDF.; 8+S/"YΡá,#IXrQ}"$y#Dyپ5rcr#x A!0|W;b8`Q#Ǻ%&-7XS3٥eQh?Hx횴Yw-L)c?d2wdtarQMRr VّC*͊Q49TGo:wto .$4j3CWi]) 3Ւ&(x9JGuX eT#@" ?;<PNaI_lӋROȲ#G:lB-NI?Y| ²K0:96z(YxR6_;'(\>YE wŜ2>o 6P_Fg7\Ua]H'Pp͹ }"JF,>jX!8ڻ7@սL+mdUgJGHېE([3\-^l7~J}su+xמ~/z֝"ssjbp ̊/yGLLlV2$3:rA%/1TINkdM=)2& ɰdcqw*|*wCp[?ݦƄB0V ZesKvj٘W <fj/XIb H2(Tg{]9ѥDB@]*(_b]6.*n+g{.o[jWy˳Vc'`dTl VH!^zF&Ȣ3a.Rԧ"ɤD|K1_}3 {{uօIEv u G8#OZ~@o'B l4ZGLLP)I܌١x=9y@zP)v0M}eAc9Q jkMvFG>'.sM̺& .J''OlNSyx R^9K3&}WAm7Z؝ܥg*YɚrFlMa&88̕gJ_;}XVгs/3⊶pE":\Hi`tVv.!a#Oϒ*!ުBp\qu&9}3e(ƨ ?RV' yq񹰶8rVԗ *R@@[}ke}2CN)SEHn_A*0/}|I\*0RXtDUQeoԪ ؃(p&8‡`"a*c?VBBtC7#9l׈-.kTRbnvt)*˪}IJH'9 ehwMQKyVe^!Va㳼ʆqMA%uL ؂pjmTnO#a4WvdsC"bQVB 7gXjOZU ˬZQgqtD[ˑj(fQD07cNedfth&?jjO{; 7:G2 XK]_/X ͓ 9ƥ""v܄L(,|$ˁ_ĿtDt}:yr8pJZ-SdD@޼s g""BTJʖ/?C|TK ni& p=ip (-p܉VP\ BOL @Q ɄCO&!qzbL˽سŒ]74D3miK׼;TjiI 4|j`  y^pg*gD:"nMkIJM=Sqecl OvOYd& ˵["]|[/CV@aR(ֱI0V'BJL_#'ab&Xn* 1jU#o *jƭ<)ʗKkt)a"q!iA`SrKMa)9nݫHXN|\! ck⺐逛`PN:mn;hWRՄao#.?}K%4hpOI,ze6E?Oi~xgy?j!Ό:@yKHR!dU Zh7ԷdCvw>a[odVvItڦV3eu]OYȌJ3 Us.ΟŊ1Z.-#RK Tn* ӛc+,s5LH?|Ӓx۹@&­OKjս  $k~.z#e(נ+b)ԸJ5ox\Sq`k: w%<$hC=~SV_sLpO5b<ԧR$OAۜVt 9QuwHhcF|0°7O2#J:9\ \9PU$, 7Uuւ={[oi+d,u|SYuN(Ky(\;ĕjnާv):` E v @r- GٺGQpcw;#jE~k~>MŎS 4oFp&Wh ;H <<4潖 "Nw^BP :b"l~u9]QLgPq`8ɆE7*/8϶[Iz|B#??FPHOLex[wH Q9gE H٧r3ݵr X7uc`oNX\^<+8z[5¿44n=z b&S vF=_.Kdzng)`ag_yZSZDO\q._NreLLk6C  ˄Y쨻FӫsJ=)oO0qGW}-0t {>/Py9'M#bE\jM{X 8RRk3,dGxO$@w #j./@BW%زm)vSr%+iy^r>S [6Jm!%FB&[}t/6w5TЃ+ Ӣ<) %rQl9B[. sg?%;zV5onXX:&[XØCv_68Ra\VRְUWtP?b0e45E PM4 )gR{c?'sS5JꕦU=0+ݾݮEm%?vQh#ۛhgESU7LdݿY]WbW^9S$HT.܁(ze/UYAcm[5 ^KhЄT(J3?$K!g~x'Xa =uG@ K=); ccޟ~,ҨOnw7~$$xU + ; q%A=&Q9q9a$)/̡eiCʠl;Jbu I=AƒBE7,E `CY%}#%.HCw?὜l?NN]sE xUyrT8T&5Q16$Pk3Xǯ ;sN* [t{hq>n'^H ky{n5OTA#["yFV d/<f1E%قn;Cuk0$47O6ruu]|;YuopMyWũ!_IzwV$"_,x`.y1DǁӤ g+q]`oUlwzM)gKӲlic$Qd|w1C<$]qDt! DiᐬdqcՅ)<d#OԬܷsjc5\S^kM܁1.D}7AP‹់Tp,;0;'3zy? @Z&p"^@3_pJI o yB{|FTzV)pjI "j}sTЙ Fpy`Exw.›3*C{-nDժmu St\ Khi1`H"A*&TD'<µyBq<0m|תJ. H(H.6N7dI-Ԝک,'Ni?O6Cɽa=JWodτ`u\ݢ#;uDqSI8%z2݅.&ԝq=7l8@VBlsaɥޯ:r5bђB*+;B\)XY7mERf*Xam;͉6:a~%gVmP/SU|u~/`Q8aCd e{v_xboO-Q2.*,:8&+vRKc5~B;TgnfGAq`L|WI޲^A MVE߳Zg!ey$F@3vvShR*!@-rk֪5ZugQ2V&Xbd$\RH:v;k(> :|vkR\&3gK+!zڛ×0Ƅ"4M8burX6pıuV3oLgjtj]G[;N{Ik)L i,5B ?+8jg*`8%oEqQ[I0V7_4\? W!%.Md 58AklZ^~ҫv |޲$P#F,#rj1&.tOXhM㜎&~wRVTF9;Y9jeJSX6wڳ[Z6y}"'(X7 3ȮDq;gn6S8NMN*bM?r9TXFNP D<6"_Y=w˗QY,>h* SU'ů9~FB~ۮTo}p!M'%g8dM`Dr][RXy.|9raQ9B>L)jL hj\\~$`V҅t" ?Sw.ܩe11ENwLtJŹ~t`ڼIͿS2"!|jsqHsY br.4,i|2țm|'D'i3*A?o ,h,?HU8Y޽`6NO:my$U54\KH 꺐$"8b&p T,{wK(< .;^B5D[;[B܏Ylm]nn܁ h{<LVK"VFz\k \xu F25 黾^X Ik@5i t8:p)c+'ѿBh6 lNХm'k b guu,`*E-cI8;v8@"Jw ߄-94J!TVrvGXpDh&u\قwW9S[f“|l`%ZyMf^mQ*78=J ?'7aYR4Wh.y2c.l j4=jL7 eU+PQF HX-_@zqWݽ,NgtWޭR*uձ! ^N{Ȋ}*>Bvj  V6F1c_SćϤ ૑e^dUslyi_?K,u郦ϊIHQO HG OG3iNQ}7CB3,sSth^W>pM5uO+q afP4o.+xjK:E%lݦ j;"VGfL_"Lb*AkR/s2&·hΙ?VгJ"tzN5"{ui$Axgz6O8U|8B('*5'Hv`d.z @D>.B<ԩU@#Yۣϯ[|R1ri"0_Ζ<+,_`nVh=ҟF(?Bd^_MKe[\DdJjkܪwpx,wT.zR$ "(_D,ES"7XHHGz$gXfO*t9\5 xl@ g$>QFX]ſ. s*Jb738;Z. aĽٿT՜O2k?2siȩ$HAk"E[`b[ > - 577N縂z*B dJuR $ՠG*H{0OPB׼p٫ 'J㔪 k8j3/ ԍeBB50=vG {~%.Vj9g׺ 'WȚ[ d]Rh[n=J=PA'O伽wJ `dݯ?'Y,b wecP(Nsrn[ö!M~CM^){E.:4F[j汩@-ɹa,W *(Hok&i[i zNgr,:/|*rvr|^FGܒ{ g>.%ycp?b/mx9%e)/ZT#mJGG7-h8mgD?pfЙ9/(&Wc*o;9'(}{@+{;^gmC[$l Cʳ\'PQh٪NfV.Zw?oom]f- s%8B<*O={|tLuF}}& tMJJx!ZȬ!N7yԪfLvgATϱTj?y=)gת,ol@F+j]J4|! $_h5vN rP@~m3Kv:bݶݖ^:v ixRdR+<蔾OZWxaUxȅo &J&o76qS%͡ \҄ ӯ&vVinwJ>8,>t<ʠRSwzŧz0 /Nf3k׹CV.BbF0qG~sӜ<'MtVjʷyHl.Dñ2[H^HO` `t`zI[!y uם,| C(SLHehfqPNz _<ふo5EcQ寢@ՠ)%vp1 ZSz4uiT0װN *5sBlh $FOv;͜~_%e)+&kMaɚ :-;I JJOI F\"z̏M E!]֨eܴHm}rllOil ci&I 0xwnqbXMmw±L^ސp0X+D#œvv]- Q)O 9--ZZz nc#= 9/F18F1>GE+X'[B&!Z * Hnt1E#AT1];g=Z1˘xzJ yu8B-o&I*l HKxbN6m̼d5=F,uC)OaMNn[tm FD5|w}1?`ү^Fq 4/cԵW$ylLt_Mq'h$<:P&VEs" ._"0)V*BPE@`MMMW=. h^o0g+<RnS UJ|g=+Ј⃥@s €o -;ˀ8tW0uz(pBs TCA?'Ĉ F1P~RՀ[#7-DkOQ-dB2iвLAa#Xprۂ<һuh)$`J2.r6:S5>dHބUX;nzUyES(]o_Piborv/V "魝'o<, bYHO)ċ3 6Gĩ!* ak[fB_ɄI.D{<q$V[FhZ0)H)z:lm;GSpn/U܇Y]%[ٚfY.?H.1DMRtv=PxIVe*StpaiBr(6*حY$lʮӪ( .1>nA^ hipuJyYDkvI鹎{S\SZKɋ>\=/k} A͟j؊ 3y/Cı]5نʅM\ñ*G ('i?u>0ȸL/:jYVu &"n%vV2Kä:$-#U)s#zYyl,hs+l qC[I_\#q.X]4Aeyrd "/S&>"91Jz'4'܍PXBC7{'Tϑ$8)}eq/^ $_nO[X1߇/#֜[1&Q@$Eؚ(Rγx8:X%s?O}`0bg@5vG|a=`Tg=y)_[Sj4Pbyh uV9MP#e42$/Y ]jAح&W.Wo:-.;JgPL&oUbm<4,|P`BXPīLC<]i/4|vgZIVL"XtnHpY*sI $pcEkHzD/ ׺ tim]^q,&= {"AQJ)} "xu%`RU5Co#;w_ x@4`~ "D ܡD-ɓU?E"9mhy;.YCܶLr. ɀVDhq#%/0G'@+I^}s :$彉2K5 ~&I 0 跘eITpݪ?`7۳Bt"X=Y7%VaN/U]CXAx VV+u]ByYw> K}0ާ,A2 pm}FSw4`F]bC2H?A0aK Fo{ĘyF:q1K'to`"2WL߼a}̄-zSPz|KILt5qנbzܾ۟=Oi_y+LC(Hk7N'zPܦ&94/D1Z+dV8ʠa,6.Yn1#.W\|]+l]jN2DFC/ѮV8:>h'2jN7uEV??O6FN!NZ ;c`clRV|P L]=e- ߁Y\L42VHZMG5t)~JhLkT)'B{ɒb1&F^}LhruOssrd;k)?Xd,G{ڬzg&O~|; ɿQ6 nVIE2-snz䁏ZSodJ$6(iq,vbTt0e/UD*NL2Yvl NS7 e&*jg\ 1GuT,~S\xx9;F}"Uod?ҠitdmZ}M!aa/ڡwmIggKHuijuz9_RB;TVmN(*י[p2J'&}fh5Ǘ'Qҥ(e {?d-Z;v3-/Kģ+;8xfVԉP.V^c>.kՒ~ D e?^DBa{jxVώ>A0ǫ)vc-b-s)X`,=$T>QO\)%4تD(/"w\ Ɨz>H /1!$Io~twr $d)v:'65eqhRidA QK~oYpVZhQܶUZ \7d B~p1OULzdžXg¾ ⷌxv+KmiaS|xMMdA{jFKDsh!pon:ؓv6RĶrB4M^k OqT:@xAlߡK/mS4b@eƂUo-L =0ު%eo%ƪ5HT#%/INRcI4-]$φ~s ÷rK'è:<3_ -igkS_і+툺N 6䚩7tJm1:^=$ $t3D#Y{e6pd#vCnSѹ>dp˔^>ljĘ>h0B^6N{3%)( Ikg"B*%5H05r -~:s s-ȽCʆDաu# &J<|Vs KKC,lZz ,\ADmXuR [Ņ'O193 ܀Gh(z)"S:qG<% ޽+ˤcq.Qnp\ҿ[oIH<'t:Ʀo}Wrz5*\UM"=uQ h3F1"J5Gۙ§|=%JgLVxN/u5FĢQ 5ˁg#nv/\.ON[ZlC v4~xk>121MHOz84R=_7Dja2د.*I*?Kܷcj\4n7NފIM>[xdF+j3{^/`^u(F4oAB5K?3V藑aRս&;,L?Ҕh5`@&KD×`Fr/\ VCt 2.&b!PW5˟j $Hfd-~cTPlYXX=硎oj Ҷ=(5ٝӆLp>#qP\ F4<0PIŨ' =N݂J:ZJllp DAGYJ˧ʲUO.z?9M I7xߍFLv.Q: 'w[_P|&|OBr[ 1)˄)+a-Xi,! UP)c2ݬ-:3 *k]j ӱ5$3;c rF7?G3Gw]pcޅ*V8c~Pwpzƀ5b@Z&ǽdnz0;Ưj^sH5qžl꒳3_a-0M :.kQ([5{O[Dst:٠@SO28D# ,@hzqɺO1Xmg{M7]o8>JtS:a";1L6+]s w)e1W؆V*0i5+[Q%0x-yYUp¸dzq?d!65Žߜ'F6`,yT&""5`/o do4ʡ5z)sw?xkeb}_025̳Ѵ04x3o-`Nc+ (\z>."2><;AˡAjӏ ObOn)alH/=i赌cnN3TwOEk`@*b}6CF?\cjMdZO[ѝp+ڞ\qIJ~b&ț;ױ4؋T㾪04(yQk@߱&Y)cX@֘.dGhrWC'ƪcW[KO̝-,KBײwqʵ**.ڪnXgWh Ӄ$)Nǣx,Cf3; 9 lŔ|ch? {*+SZ\>FV}eZh볣;SG ]wUdyv%[ =NF.C}1Ey U>Fr6nϝhv܁@pI/,˖>Sli$fvk8į?EV[4_1Bjb_6ncĐ~h:Bޗh U|bUw~iQݭ&]6#mg!JNU2$@Vd~6;B^^houOO 9Q$vZl1]]-hN(4su@Vɐ)8)@%lN3F%. 7shk,uj<-k3|\ֱɮA6GwgqpML0Ml2^hY9.Kv?va9`u p^I5 GHp\{)L/&uF\0\V8]6J+g\gW^IhtS?pʌn ~~wd8FzE4~( s$Re(4.B^D*e]\y?Hɼߤ˭VBaɧ}Zi cm„؉U_w@&`WuEİ}^[iIQ+0J@rT {*vDVuG#Y9;#@b?6DOd 5o<A􀸋kY]9%)mΓF۩4ܷ[:KW7p]W_ eu`5T!Ţ Z͖xK}-w+P1 %H.CyB\hӧ\f īxH~abߵ NzS4K;"?K[jA?J-\?:[|TJ+]:iUI!zfK~2r'8}P u1E?c ys~Ti:72o<,F Bj~S/=1XE!weLۧY4\DŽ- "9pm Y/A@Rgk p=@F? k<уuIdX$)Ml2H`E 9g+N /2~ys@ӂDc$O4ǦQv& <0'X(0b0Y{7wa:]nG&M歅s4ig ulmkas;[% W>V `wI9r67A()|x`v5"Km HʣnNG9lKt]7g})Ȗ4sGT#o( P奝'h؍ # Ѹ[~:9G9./'oȚu(\,zc$A.|W0xn;YY7x(I1$K dޮ~q8 Ahj.g.@Dڵe&!bEŬt$ח+U"4-E \ PvF\CU:oCd>7vi Zv5@>-R#n84 ~/JnL,`{auR8?k:Ls"mM>\6mg..9?XNy%0YƁzkxM]'ͤMcW)=/Ej>jG`UÐ|wTs:ױ?SbH10{ZzSdp B?@Kc%ۋ<8G"k ;*kRftmV4A rri%ry .h7u\3L? D֕ߘ(4ou,CoR))Ś̚!Ko99mx'VYv߷*(ƒ` omˮ~>ҴW[X DP,]Pj i dL_DHӒ\4r5'nvwp+=݇i\|E"-Ε.|:'1wqkxj.,U7^uSֳJAS їk!X4KóTb3Ķp@g9"i}bXL!J䘖֯ o)"#,MjŹ8F , F]A\N rׇR6@|~0E4<`+Kp#+_+TᮕbZl@8DYJ ~W%0/mBI! f+RRf[~{$st2+_odz6F4_B>ӇVW6'hew/I]jZN>Ҿw.}ңp^RفK ]ր{ca|k w #nJ Fi!%0TQDїMcrWfԈG֑Ad j I?D K NU6xZFqDž,(wL 5'4ߝhޒSޮ/@˜FUoFlV 7uI?*R.p[t57hsB܌X'=>++֓l`܌6l:Z{^QlsE`aj Hfvdhb9R5y qk i)  437^gnZd)]@ [N+}}+ +)sR: `+io[$:'y$0B| M niZ߃bym2S{(jzď?WSW &x|Sdn"'$# 2z8J $kn Aw5ܮJ3khCVjRĄ_ W1͑r@(~~Lk 5x˂=ٜ{m|C c_#.cuF:@!on #9tdh]f JLZ+k``k@@w;ҥLu>_:?C/ QH( rlPsCrfcfMR+,D *cWZ<" z{ 9$U1{Sr)FܼN^t8x= |%d׋Ţ]%ٷ%V? ZtLUZnHP],x>_AArW#yZ&;&0[vkʭ;OAԏeSǥ') ٨sCuhkޞiV%%jDwbĸdRXUrDzf.᥄Cj-0ӧ:EY \',*e~k#!ܣ&tې70t:$y=9^hj&e XAkTCbQMufmCs vM`fEfH!!s}_;NPO.G0hG#zV<^ +~r"-X̾&uq2"GiMg)󸆦X>{{U`$@F FwUv|b{9 Oof?Y̪D+e (ۀ7ou|+SwTlʅgcV>(,ݳX~f}xБ=,5-B$IŠ uy bޤU*a6*@v}އ58%t`E'52_d K |Ŵ' TC*} >VĆ{VFZy.F0~w8}s9>EbVcʤLey1lF~ YfLY8)9Bp6L]C'zEƔ/HQ,*vO޾䟚D6?_F}zqcL~T3 ˸-"O@q]̌I?cCʅt$˽GrّbI~˭j=jјa'U,wE+B:YbW: wai61y~fvFqo\萒)R9'dx2N.r\ Y쏁E~D[ʧÚO|,TVhzJuk񈮖3pjx> pXR?b2^fERqI-ql#zD{B·^G* ǎ#IF]d);ީl+eY_~\E%ɌEsu1gEQԭ$О4c}͇ XLWCPY>Lg;:Tۜ)gG)l{NRlPKi"iA63Sq/!b\Zp-#{_YxzW3(foB?. ;/WF$<:]҅5CxX!$A#ǿ;;fUx} 옅9uDnZ_y7 Sg0-?;@`t`TDYcE35R%%^AnhVt2Mmʼ!n-sh7[ ۀ,m8}J vqFpF R+uFd\\Ap#{}HVQ% x)3WM}0t/X9s/tJL) ^J/M {[%B0J/Ξ4Ǔ@YÆm">!W|$8 j7$T,j{o[1Ҵ]!ˁqu7h'!V 1+6D٢8osʳN w̘kZNw=HXe >WY{#ow$bDƑM-γ]_(3l4:*b9hB{Bz?3%) +}|Ju{ '7BL;QR+V*04۸!Pk * fIWKVv[{;'io[d63n$_S\@l2+lEӸW$|>.JIv8ZZ>gqxẈpI꺹xqDZٍcc6Bq]p)&+]| 7IE#[,ůg||Gf{(G^ry$JYݍBp4}wN/loHbUgo b+ QHI-}xY(i~Vϲ'<%ܓI;Bu$ӌ_bnB>k%;\60":Ҭ]R%׫:l.T@lon|SdW-YsBcs)kuuy,b`^F9_~qj㗘Ѳ3nFvbSeLܛtev5jhäi ~'1A'gA"w cDH*x?bzk(>9#yq֗LE)RRmi9IAXn lXS~cfjLi7F+9 %I<.D"[JĥB<0KҹS4c~he՗E~7NsQ㌢ҝΕ}oSfo lZCَ0c#inj7uf̌z`a/؊1`{7mHˆգ2ʏe*T[rC,W`S^b^Z>jPn|^;nA'oe@% P~~idv{ s̆ԩ/ eWZJր_͕? sJ+C[9Rkdɛ R{`eIg-x {3|2@uՇӹGoe-pʣ)&dvU[ c~~8`> 0!p1ڦ!xItM,#gW1>xRzS65 #Cό{ղD^A>j"RYmdɆQ',̰uqU6_"モg-x-"XņZZ Ɂm,g~E{#:a%ay?irJ37J=?*oGuq 7np`_j wˢpԄO$$LX7Jt^f9>Nb]"HT0tjĽJD,ARJB4]ueƻ kHz~(9v%;߶~(АڨtRZ:g$1Y!l^̷#u1/ ZJ֕gt\j&K$%`9[\2V_fTyɸ&-Sg24L^|kx T  i~!nab%'Έjq(Ӣrj&֊Zӯ,K ˪݃H4XH F:T{0;"şLXD YYF4]zJL{VuDoN}clڷea]AzߜvJԘ#)՛eň7'mJz[1ٷDlh=W_-=U닸|1ݚ,( xpV!#fntʠY( VXI0R!>Fg [ݱ7K -6yzfƘ~}AVȎe'1{r\i'y/$hn12|SYZ=4Y\UjsB6\ Bs/x&2T^ _P|-e{3۽jQ7 '4? `b*o$a'. "Y+:OvtѷCؙQW3RZ:{zK=Iї_ߗ Z{wP7_10>[]d|LFR#)eh, w2(i/{ȝaLe X+ h5-CgFq/.)lƕ!"=Y l::-*͐yoZh JT^՟E4\,N?U`m]/Uӎ1Cc)޷fh,4IOA*1A˲Bcȣ翽gE_V1A&POxnA]Lnb5׍ t0@չ5QYOM֏T疷V=vG462[D证:t3zW|:aO o#y+CpomA }emLiN~,l.%b Cdlw1" fxevsi̲PC1װY1L`*MW7[7*^g*pI;Wm|<抦U[q¹KM0`@2q4 CMW^c{)U`R)H5&5qDb' UZ*Bޕ-1 p}) Vgȴ{C.Jj}<>ZW+*3$0=W0rPDeå,M~y1Xt'wP;PEq 8_(^M2I y@f8Tg+COtk\lM&qg}kKs)PSn+K wNk-nmHM]D]28i8<emLl52\#/^ԍc9PXP2^ Pbo[oOI5f`=Թtݘӡ+@ (;*FmxO_qyxNr76#;H?L#TrA=gȯmU,'?禚1ĥ_rg hUwTCGcE*;:Xb{ TIc4gM qnHZUxN15O+#l@/9lXeeo~q+eorg-Ģ?[;aalqJ.b E!M x{qX9)ŊD)j^݇Fe[ՠV/òߴ`|H|yV̥auVV~m2̔;kɠ`ߡ$@pc;_sJ~(FSY|8ZTb{hṁ#6W)f#5&ov6O x8co6wvkS![LT0sdS>_d |FcSny >#?:eJ *e^`a6w&Nw vYE陯_fD&d뤱^e/]F7Nx}WNp6  H)Kk+@KQ2~_鱻^ؘrm[#46=)tEV{p֠7SSYq\Eg'GVzɢEJk-floYTJ0,L 1?# pk .*96 PNEB=Uv* \vo~%Oa 5j+73Jgy _pp/PP ڬwe=]$ e1yFsHD_ DFo1t$5)]* hE$c:9~S@X;:zr)*U*֎t9"T6Y]A`Uq"Yab*Swfs$Iqgv0ۈh]"g? @jlW4Ur䯂,Nji_V=L]ԉűBro7*毻D7f$YYH+ <2GJJDD~7l4 =D㳈6H8DSS84us{SvqujX'xUIPZh1,C{ R0:PhrNhX?lsGHj.K)fYzu> B21XPz/n}M~j5 =mO#Et@׼^z055% kVtw S=2X GmNh`IҦLԀ?d ~qp8Eٱpku9~|Ȥ&{V-BָJWr8,MSMZ1mTM$]7}vY-B &^f`ۜ+дNˆT-A%e|VÊf œNѡ`L6\|hꢹwFBoTm:%:T䂾ZW$|R 듔gՄ>d[Ng+Bs( shmg"q#5jœ `QMF_J4G{L\9#(UƎlzv[;VqqUGKշSNٕ+,BZ D_|:ӅΉmO&.E'l1Ȅ93Ks=Qߑa VM9nfL-EOj}Hv 5(51q"1r޶K9{E}X|x, KjNA&صW܌ج .tcҠ$LkޅEJDSdDp˗f&R6Clrۂ*2ܨV2p.^i*U}Y 4phybHȆKQ54o/MI|dkUq# i J[˙]NFP(@r OYY&(-&%jvh[ UGG5Pf< {= +␃2 1b{<̞QRoNU=Q}T>Mªl?6mxN'9.ۢF9K6)f:5}W>t|V}S> ,6Вz=kW=L?-:6 -!sd%IreoxM@OEP3!nֹ;AGUFy]ND;Kgƕ BGwkcӳYY J"F$]tE4ڛHE' Q%LjyR8US@w@Rh%>2詀ήp0" b#ZK9=!@[Q[6e',Cg  _*(Le{fa9=_O~:LYB#DlL5!I); qhɨ);ڋJ#Am"H x@^ bv(6]I_ͤ*gs]OD!2 PKmHG4 fcLxt^RːHRi ~w:A -Z DZ?K|7|T~ͿkEaCt;\9S42>V|'F+vJZmmM3do2VgUn_!Jۿg@0hw׶&}[_D0ZV x4hB(]N̲ec>ݡ!Jc${sWrdw#74ghM!Zsc` 6oʴ#CRtv˚eTyzA~:Jё Bjg]9U ܐSN6/ф who7ʆHg;؝ FvG1mA]Q8tW"QcjX:;qk[ns@94j1%&:$%yrx6O϶!YA+ x}Hⵁ@b4T9s˜6͠6#ۺ)"Xw+[L@cJPW^d5sb*~ &@WX禚帝cno=%V哶WԨy_ۀ-(L.-i/q]a>I} wD 8R`PyW#|nsahZn tqpӔMMmO n>?M_x%fZ}6(z+<(1v5U~ (JF(w>\K㺄e(s ֯80DE OΉn?n'$S|dTn oõ *2,1D!U;I(-S9HP䣂zOSg6şaև?Ue CϕG1&@)374{*qq]PjaFӝ$n(u͜yL&*{UB{wn^ʹ|X?gQ_TXa / x75E{GvDam/ We`*^j1\W7rǢ߷RWV=*7^VMܛ |6X2\Ar<ݡ͉="2JQJHYyq:`)}8d&]zl0\wzY]?sRtebg t_As'3Յc[mYmA֤vv?o oi%+GO - MKK UBZ^44U !N^ym$X~N}h-*R3D:fe|nWM^PE_kLZ!|caYkͳc\UYZ4] bb5xFgz1\v&q:h$ĴS`^Hk=xwgvvQNFs2y(ȮڽfcOo)J]+_x Mefw& @_ uRoC\K XF)ˠN|A{ tQ8"[ފVГ|o9y53lTy=˘JUܷ=NLF ]q !Z# 15Qm3FS~Ua-GWUN]}=.bʳzႋΪ'ԟaUӳ,qv@dhbp ;=1iRHAօmE9 sR1W.R[ ^-pqD{[@BSs%"RD8%|%IxPL+mR:@?Glrz*;Dkv˾&cN[GT0~]g̡.{O74l׆Cɗ*!Mb˜7X?]5ISe%љVfJU@hlS='ˑפ}հs_HO)?xlKG]ap2?O9l)R H@mƙ֣A!+hws ^Z_ATFf~>SQ`*xvf\_,dHi@r]x\A)AP0y 6,J=Jjkz׳hKhWKEIl4ގB@o) *u -m[UzlW9>5nBy}O0[㧕ץu .~JԆ%Y$tkoFM762`R$( apg1ltyR.p[v]o l?܌ )6z&# Enݶ+,!'tkywЛvtQaŋwm@aEۡoZ { /`\=ωΆPFP9ITsS`eԈ(O=V~eC O j 2Iy3^ߩ&xL >s-d:Qh2u+h粹!T$K !t%x=Z\]-m^7zVfws>~#A9{Ҿnoe~$;(I7Z%_NBϥ%vb0]oZ޻Q(` _^eWeW [2i2| Gs!0/D[Jl!PZ4zr+U.QOuQi>묪2ј`7%0=/Їxpc"Z;n7 E,;w\AΦ|*APߤ<_@"!4V/x76l _(Oδ@^ ;71^%:|0@g"د3`4kTfh>"fp~}%vȶcPsuR9,8\h!;kp$3,ED yPqeI&0ج>nx1ď =`|JkijP'eԈobO[I}}0gMfRL3>kE Q5t7E)t-D\Ͽ~-bJ(G6뽌HL~b4Up8s˖$@^^)S4$\z$e8?Z=y݁YjȚϤ?@mȃ Avs]YW+;e?X3,\p5Fɴ}2tUSH1Ǝ@#5Yd0Bů9"Ln.M+ "NW0f6/_3/I ,jKs(KҸ.=Jw5-%hl*w%gT+46ep̘Na? mCs8={gmIHzmYJ1J;燾9!=M)?Q<=~|ib;wH8ESakFb7v)#|崃,Х;dzMҹh~g430c rK`Otu/8}]`~e%ء9cB]ĥDBW{.WlOKe:E TJ:`pɬ@ Pbk 80?8Qr`! i3q/`8 (_@/$8' y{|)~` I'R y,3 U $k3 (q !PN.:/Zd~i-36}lJ/m2HTqb%d>0 '[dRч x5h:лe*=B^܇;VL0cC! Nn_~M@y.me"J~b(:4%.XBox|xeWM+ 輋եWjc_Ƃ?\> B]}jvjͭ^tOC&z}7dN3 f.`3J`sO]Y:XfɲYxeBVZ^Ĕ3%ȥ =0WZ /;f_lƜ׾]OČ A qafUMi7O. ϥN[g FǶ3%c] Eepae'.|K_:v xwfc0pXדfcGkFI2g]}!aM/3]ҥ&x#T{b]yߣm>ƘӖk`a\>wyQIhrPCÍKldoԥrش)  ;=M8{p醃pOo:)Awl 4X7 o~>/]"0K_m|8iT2X\d!0zu lHڥ1q9u4*mPkJ"(,~C"HƟAKڐ"rH iP&$4R . r߸mJ[ fHrsUa B{bn"E{q۽T_{ ߰5عkI`9$@IDBO=gھ&C T06Ź{H gؼENĵw^F/?+eqKs!T4df3$ z|\ueH'I;x)>8}G4ǪMYykP2r ev}׸6sZK'Lq^voM#w!4("*?QlO۳`dYU) |i: ve(2}^C~Ř$1]ˈAU߲>%gI$tC{ڄz8mp@&I!RQe2 ,/ V̿yǪlom2N^:G٬Et{b4eKۉZ֐UλMaIAƜ@V,)iәi]rq]O~1>oq85ñ_.)OЧ<"5()dq*Rwks ']iE{[4ί!o#Ǿ,b+-<eI- ́%]ғs%'YmLW!8vASu,o{Bz70 `O -Mʉ>nLI-٧4,[z,p' jXޒ֕VTj34&ôt֓!AxLS[Ѓ$&Ư.$+Fa%i<|%$0U+4XLD>Z\ UuL,wpfbf,Z(PZkGcQkC.t{wpɉq]7>[%>cVX3^0Z:EKZN1˺-mChE|;7&5^fߟEcįUYf.7YfuF'+Ԁ\H1qy<8{+wّlfQ`tPHaF=vx?JI!)Z23d3k022c)_UbU+PPbZ]~Ƀ`$L0!K(H6 gYcԓwISݹEap'F#VG[64iBY2W1~ m0NgL٭XWptP;ZâA=E焳VP' [sDЃGv Œ4j,Q<ڞU*;K /0̒aic3 I":Y!8@r^dEM ʃV夺Kpd?r|b˞{誫64F/`Dֲ.6rg5x]o: ݓjp=t~Dq8>PȮǝtfg07ŷnbd|Ko $0V;gG.22Cſ$1EL"%V}ǃ +ņR}>%yqh%Y0qԦB!S5AYoNSB^WQRqGsu;ނzRBs—?`k3Qw.21w@DeκA4ޣ"d~28~yq9KV$1[o{X!q=ilzZ(!.nK?cH,b sٰ{Ll^mlOGfEqneXȋXlW/ǎ,}pJk=; 1I,֡jTtǷƟ_3OH :H2κj_A80z0ri7JYCU%!e>sv$"ѳx]qN1yo׎?ɁX<n4xn#]43тvz,(ˁ5/So?n?e2!cJg CD(>8`Ay:8ʞ gGU~v[[3H5 t*ˌUF zН&9ؐefeDsut $_m=&}[jf9r! :'i)5C ѝx%Yk`חM|wt=F)sE'P?НݮPĉB7d3Newgn,#SS.U`sIvt9EKzTFj{\?KrK76bcb"b}_?gXZ]%8GsavY P!a&|}X6`UYJQ,Ph~pn>[?`K ^DPb8-U"`kp*]^l|dPDCH׉74cb%OC3) O8Oa**Ue"n8\FSE3k"WMfECN UGFE hdZs)djz8d?@ iC6hrrƗ_C[;;t{zeC|`7iތGOeia0Lq|`ыcEc+3G). |,oU NdҀoS8Y3rUݾW~w3Y r8)(@WHjP_6r^d79aZ, ۃ:ZeN £þ.R{VkT^bƣVM'%Yh-i)&3<$8dRw/WXy-AX<\,K}{B TGpm)6vZ*>Wou:z`ۘ8pCy{bM@bRS|xUvӛ:\FһYDp)!3X^ARM E+xnҰN°Jk|t1'Jzeϫ|mDؓZT~jʙFtU4\4 zZ + C%S@9ID6. 6-<ף^RŔҧY{[C7}kb^5r \;4`_Tql\GqcS+3£KӨa +lt9}`z{iBu1~W+!otVO7?&LXf=*A*Luq"J 2hb);Aq@_/F,_jO90J蹸\KtDѸ X1ؒHCG/qX_Z&/-=;zHSE .C $כ OKC _%V4Ȑ_RVL$&M1g{m'I@fyLZԘbӟ2) pjKA~HPXB8t3i^,W.\'#I*VQ~3?L2LIB wtpS)s@tUS_|95[8Y {cٻl#60YZpӫ\M{lP됦,tZp\iF.h#mh!EaSr`Y:mmx*gNɱC @mAn ƒcZ9;ʜ!rc2cɀIx8A4I{?#Ќt%L]#&i1 ME[4@|n9 ٩yp:tZ)1r=2FW)+q3Lmzį#ayRx-I9!~IXmL+ؕDdXFKՆl\ lT{(o]Kn2.1${!d9>|Z4Ϗ?=SնU"HÒ@KF)۟PV R4L_u?wK4Qk@#y&Q'xU~d_Y&Qf<{-?" $9QȰ>M"t7e~{ƀ{DCڪ0vQ]y {3t6_e)Ba`clԥ"a8y`13 rj`]N 1y7t#AmE<.A+q#ў T j3,K v^ݭ{=*m'I58E<3{-նҠ a_w"JbNp݇(eS {_0X^gbGSh/.)a0832PpӖMwLJG}MmbvB̜T\N²xTQ 1F+@x}O ZLWpJgXc\ 8`y<ײ/N7آSeB>sH1BB k\E{R"2,㥙WՀR;-o%dI0Pm@ytt $~B!ѿ|80f}a,9.c V5[?ɮԲ]t0[zpKXv0e#vUtKwD5N?FZ\O g!vTrck1589'~<3 Ϣ J!X&xlerm33)fy7[ڎ<^\ UC6э2#P5.#A}Enb/ϡMy7QxɡcYZC.A:#:'Q%+PY=V~%XJv#4XMJ8s܎yD^ KVi CMF|K?ؙo7&5L{rw"pCc|V[ r<ɲQR/xo0E-f;{2%+}bEpWlFВ{\m#Gg :CfلfG\/F٬rvf#T:Il"(YTv[Mq3-ILW߇nF*F.>7bwEzGs+ҏӺvC.4uP'6^%(H=˖tD26#YrkeBQv{p >T;F5q,Ԑo(E*ObY(_v!66euYtp+?tWKhYPaz="/܌t6Ƹ?YxZl"|@_}4pBjSO s:jeo`K3|)_yq8.D0Og S6¿bޱm K4X@(*C\Z$otXTt`i0 (ZzJ~ھolTvV^"Ǔ ~= B2!$|pUğ60'>pxo2aI], e;~~-:d{0t4dhPW5(" D\9w9 lbOV4V{vXH78q/@N\3wxYdG3+lOPYikzRtysϫKdЛ5cxaI(ygoJV(zή{~\T oAA=r.z#wbfrp&:B~Ax﫬J)ASoͅ0`9kjb i>W;u|U$,{y4^sNW`kPº 'W7}}O[Ի*M(} ڙۑ%gSc<.F ꕫm'S.6_3W#ԌѧuzBnez`7Ԁ=G{حѥ`Ry}D:!8*IՈ$T&yfIJAHV@VL ojDOD]~/щ>?m㸲Rfp~c6|j8ͰA]dV7".q0 ⡓HeH!؟i8JH8_ ̗Zv\ (ו_O-׏ (1)S@-~Ncd!V?f ս@%d:޴ ѳJijo.V% 6 G ``xXNW&`bvjA~7)B?֐GTxjeٰqf%л_M\aD2 |0Ƽ pm$6P2eεv+Á[d"Ss(BYQŠ\M *i ¢xذeH? :9jlii*ʩxXBM.S5jb_4-58!K1TTEGmJh1 K2ty=E @s뙭uhCI/^ Da##U;] YT+y'e7 V>z4>Ue0>]=y;Q:]@A:WϮc!B,_󰅂R#|s/KZts=U+,I yOeIӈe7Ix)6yZԄй9մATPbbgS°P!=g<'C #b. #WI,=@u c226N)U{0sL X#Wbq eϱ^r:k(vZZ|׎Cf6hqP]h`C!8ju vצŒGJՐ8bi3&a~q Gn2~7sme-Y?lԐ1{u󏏩W !Z"K31i6O1Z~χ3:lR#D۲Q93M1zEGmMI58ʉ$6.3=lbW&>A]ѓg52$ kЫa b!eHrN@> XP}PN5gE/޹JGWN:Dk6\O%6e8K8ʤۺbJgfUtVYzeV_DQ[ie|7we29y;`SĐa!y.҈֭&$ۂb\|)(I:$⸏W tGi/]jC,4S$miU":b=̥k!22!E-iw4dDo\Q|~Ge:ZH*:*«/N?лmrխeUl'40-Q˪JH|;h6HTg|m ܯ@C_Xf]:p e#r{/;o)?͑ʚ@v3& 'ܔk?s;]*D':|)t?Vh8_vl"¾ n_Ig45-t"ǍંJ_sֹZ/ %R}j]niQ"#I )JvDkf]nNCRM9pv|J v'Y~ΰ{ՁJoT.ۘ{] ڧW E[6Aڡj(Dl{w-Gp\ BuqG(a'8ԉ +ҚT~_9W$! 4!jJ<&;|Pk4"na~V-٥GJ7t(4%}L<@. dFg!yx| miU!,5aC$Z2!΃LdF.}IgvݪBZEŞPȭb0gw6ςnTӵIL@`H *]G|JY6~BWUU$|=nߢyG U-л_-IHӚWX~ R=1j'*4(ڈԹ̫`a^R_>lXTL͢f0v6J ^fC%r"8kBRjt`B?"7<^3LP2`W;ebՁE/-maRcӤmiGdk/i"vnLgpLKv+X"!~騀4_sbJ&՝'ZB(+#`VFȳ]Cvm_7c|C.y[hz5a 2l)#7|\vHPxh|8`۱ntKb1ۻ܄m|oLZD+,)jyC>/k_.țH`c2]g9(^]4wǞ Ma7|v*c6B aCةQ_ rWy21͕HLǞߕ4iPA8`k1',h޼\|٧m僓LM7x( 0h=U jFkq?VߢB8}9XTWL%#U^hBVx6 em2m gbH+}lȘ" U|W^kpxu3U:ug'̸-QtsTwm9YRVE䎕Ob4KڦBf $(7:4.zz?9_A ~k)wWw}UQָ;* xP3d#0P;u@0m_wgZ4:pap@)h$;σ\S3 n  XokkذЊn,Vx6;$#ILzTqQ4UqM;L>{p8;Bm-)_v:\PE: յ8P-I |pTɍ?$_cElvϥ v.F=Us~8h=FBA +}x9-M#+ԭST;`'H;GnsHѭ,.wrS 'pZ*Iv~3VK,^&hK|SPm2\m_=hZWpʶOh$}jz V+"`JHjW{I f~z\^.ׇL22Fx¤ .Gw'fZw8:s @G6eH(*i8W,F T :֓1ʖ!AACk9&8z )G[Z--m 0SYTn2D_@8+qu/T)u+Q0$ǂxC-N  ݄n}C\)~z+t+Lp_CS1q3IJˀMd5L:sO˦\Nɾ z8fHzͪmK?[4s C{Ngz`,kﬡ{7CLV; ȴڹ $^G'^XT!9; e"@wiTsZ"ȝqܜx lfB*xŔ@g41!./KUE.9oV]DlW0y4w_`?]iiMV 0axy}2Gi:֧૘2YL9 SMB/@Yi%0r_%hWkw]BjG$m]?ztO&5)Yݴzкф،9Ұu:w>7xH8k& 3ON%.?ѐBIS1fl$. @pt)?}vZoSӏ_<SFeݖw-%T:Nd܁e9bL_1пkاvC'ί I<L~'Uj0{50bjo\vUÀrh':#4sNJ7EkB(gj$`LWj!=\d|0كkhvaSC?O).I-),h>L! 0;_8Pjmo:37!zN9"Cc4iv ci6X1ba\QW5AlP0COn[yo&~{g ċk9M~$wE1Dж<:z a;rSFV7H8VJsV4>eFsp矮§+D]Unʕ {l @!(ƲL/.v pOhZp Ցa̋W଼lE-=!7DwP+Yg#Fj…<)?MJ.||1y8u{_I-; 8#6Y[$rxEoCb7;f#gX@T2rHGo*؅/VTIPnLW{K.ksC^gLD:5!GHBN~f]I 2^*NUY㍓oڦxL,r&:UH42U5J~-qu8~wwk ձvefk cO]{^Eϣ(md_jNpQ@X|Ƙ&iQ_5܂yeaXia \(JQ`۪R8fu~VݽqsVɷ8R3*֊9^CPJ43HhcF3xh*g_|'-c #Hǚ)q.i4ER@hxK[9(Wv_.U2=-ױ: A1_x"7 c8`Ӭץ#U4r, >?̙,yhc ~8^ԻxP& W! P; 3B/X$}Ū5ED"&mLY2IeB$Tʹm>8j ,J)(.rF+[ѱ#%/fzP#( [l:p" 3H䬇Wȹ]Z*U/`i4ӭc:±q}&^xE LdVŠ!PPacć9b}KPT/d@n6[,%fpX.oXSYW8U:׏%vbVk1\׺w=04s8 *e2.)v:A-ʰXi }CMҜHS_ׄC 䟪1L;CvR[v m4iPxdv=wo|Vq.YY$'_eha|f.RX Tڡsd󝻌 1êX^YÝq ZmA9Uo s""{kJ-'jhA}+[PY7 Xo=apzp3G> X$vIsی#2ɈCG`mcty}#[SѨ&oH#Trޭ ~1@lsp[BwDu"EAT&r욠;=, $:dPDU@ "HDl2rY!:sջV3w &uή~HIͯ0 Fhcoz *v߳RJ-o]E*g`B5lW;;M!qǵߏ={%"YssbYU,ÇS(L#*ZopʑLrH&y hϮ65F(BAְЧGɮ`ޞMoIsĈJNdL5j;]@&UG-|lќ9ܻqKdk iOZ7$VZcUqf`2A_;'sUșk@L73p~2D$!14IsV1hruC!-U[{b}"Zq\QT]P\+P?+9woˑ4]|Q~Ubd, 쟞\;쀿_e<%TX`Vg o7-i^Zu.^8;tR_|J33 %W'5Lf%Ĝ&Ϧ ʐ;K:q "sv^WoO&snSJ_<]1SyK. Ls2MFρ\v_J﹋Z/Bw 0mIIÐ0`-wr$ɋV?8%@"<ۜIT&;)dbn>T:y.]EZڼ0֘:QQ;wAp62Bjo=s.*)`*,WdXzZ-q;G3s[7g聃[q`&93wI.5Jw(,A})H}C_@\@Pcšw)>#SC2(YEdܔ{ WW&![=7s j8_ g{GP'yrt5vO+3G07Qݙ9){Ja^ W1b^vPtA R7m/kShw^ = B/Nb?xUKIGl{X_l||3Y.\N@L'<p(:&%ЂwNrJt{k>pUx>cHPpɽqmwc3rml(6!֒(S!!;kʠn )aƺ`gpE 1C,HLSEq((%FLi5:{r2wa[Q}KD{ܔ=2y] l7-zyQ GΖYNjԿੁNpRD3\7s~0Qc:"4څI|DQ#YI0_AGg0aSu(޽& nI Tyed!79 ӫv$jgr)\Ze,A=AӡIEq"+ *S2O2QBO))'|֒?(c,fԴO;8#+?l7<9/ϥ&'JKtHCz" RYȀ98 !#gDl='`GTf*>,@YxOX p}OE_O}1o@*s5T{J vǺ%wnd{W+{ u\w\{|._L|h(\>2^n~4\w`9D߭(hLrLkA@N32C.gn9s]'<,NH58:Ueaqa~~ݪNR.& ?0+?\~â Ҷȯ}02cjd3=ν~ J3hˑ:+*%? DY*9k|`8LpXPvd{j^%O51ƾrqh8ӣW8֧GފVRb`/AwHf}\ƍU,1^cYt5gL^]8?c߃}B3lQs'[ u})8p\hfb3be I VcOz2I{544UN,L!f{zg?p'e X,آJ$}lno#Q$.ߚt(\UEׄ1W@zJO DAE[C:.ٝ7m* q帺:zߊ^[ ge]J,v#s0)I=QU,WRdvAu`q輇?H&na$@MBqKO C*\2D( h1ntsݶ5CFz,7 h@Ne?hYp3IjP& =$;jvJn{DJ5-% IT,JUm8&u2qoA;i oS$]+d8 ݮ%&7!"VH<2W:j5xN͉U^ 89( m6@mcDDKX-x=œ FNN$k)*.CHRy_34QbUM')^T{. JS$A8QΑOr񒧷MS^;%+cQM@BYŏ`}yjrBy&M7]Y-ZFx}e!ѹrM?َ?T=`Z5ak Y UXuQkz.,LRc+W1Xpz^A q-Dhi$LõwN[LnȤPwt63]jBm;L]|y15I0fYyU-lȷыaֱv2.`Xv; ?in3`"Vv±dMb*vȐFaxr77C{Mr؞- B#Yb  'mGS&7.x+嫞 ;B٦GEFZA7h2S5dC*ɱ\Lb[ U** Yd*}kwH]X<`Y/F["(P5j)]SA=44=v,獤x_іEze& i1υ|Xus}SQ>t$öN*&hUܗsJ֫*JLVXހϓ)?QtJPRA. #m}| mPnƆp:qaҼG226o^2!D-xiHT(gF\.7KqOVp\sjс\՚8d;եQY!wfϿLF_k!TW=rÅ){*2ML}.hlpŠ`U'(y!^xúz;anRU1@ϛoy J%?±""e'"$N0F{w'{s{v;|~6ӥ&兲Р˭~N$LNCSoDsO,,ywDE4|?( reE d\^ ?kby=Hlm& ̕LQglIwUI,[߃!x%`n]:?ѺS7*8-тyIhۘV=u*"bglҺ9N{Z?=H)I[MgJgjC%*_Juk}O2spTfp1]$ȡK-[="ua\A[CU뉜TSzaÀ}rw ~saӝ0!ɖ3_vrX'@lߩZRاO!1yx_ZQE%;5T}4ۚ~v1,`v>kZYl²NbПJnS#X!Jp69˃RYyMƕ m ͛ skDDB_)~\OcIFH ! JC)RbK北ݤ_,4 W367o ,qI-Og_ɋr4a3W[iR' b \o4-&|b*yLPD"4<<ݺYl`Crwa`"o^dTs,8Z,!2![&ڣ; [;4!j))XrL8?,-B_O)O*I!G]HA|djR`z CWhtHUaHG73H'6MwWƠp'` ~0v]4$WnlF-~z' )RRw<`ڻ_A_wHIa-#>KذmVf / {u|-93ZqO=w5U O o'|: %4^P\?+[۽%nk=EԜ٣(or<`pƍq}ʈXfϢЅynUpٙ6ᆱMXct, Bf*{Bq? "qA acsɎ8俻/e" CiⱬTȐ1OĎ (2O_"Rw ̛-rE I.;l V"R p‚86=rSI8d)ۃ\ ֬spVOU%ZAhbzB:r7F9R*`&1|{uJA͛(!BZR}+gHDBi hjFOܖJV>o&6 2 DI=;1"C2f[@?g "xO15vEp#M)@]nKbmlj,Ǩdѕ]%3_*RKWk0P$Gbͥv [ـr"PVP#D8jKD54PAE_5aQ"J:LS hc-O@9-{f+$ dA d2s{`"'}AefEH&W**60XoNT{ {.A)'TZTz$;`,CI\ЄPkl 黿j)Uk<:,K'{me§ڮ;@fQ6JAˁ. +|h w;"#, Fy[} i:'38mI8,;|,(ܡ^v\kݿb&kYB`/#ў~iϚvSHG]]'Ar?)n .Թ-"Ū6>7/] gNGZ!H-ni#)O-.DxeԚ$/42*BnP\AÊ99mX_ 4FھU,, g7#Vy [Cac jݛ:^vΖʮB^ӜOOg\s[n6.N&[CvXq@Zy\VI!C`/fL qο}MSe*RBo}O}蟂5>dSorv#@J(Bk˸U#>lJPBUp0*hDCVޡ+;O!T߉1V5cbg I i108sDha! K mtR+fPQ(LxÞgDVЬU7E݊.A:n']hM^ 47jT5)`f_ۊB7geXpX4xW(%:+uϲt'O ™Ț ZBrQnI1xꨚhz͡wFK+T_7^C:2+`ڟHsN.KEPfk:mj@FwBE![ g4 %ۑxsf%nZʗoR:^n4 ~Imx˴UǖM(eGnk>M&:ST9Qe'S< _$C}-țZޜ<~#i~ͬDZ(,:]~a[ՌF[㡹,u8 EIgvu^=f!?3#+f]7k)1]^-B#LJ ¶JmsW/L*][MMuʝ]d}]~Ys7l|o@H0_xF;N`*!/I&.93B$B|#Xx1Y7\덕 NbAcOqꡈPQk3'rmԔ,?+6b^1*[!'y~nbV>o|fkA~Rz_U0\"n3kłB96"2R@:(W@VK}(VDZ!wc}Fm͒0G} yo>fGZ!7e âFѠ!xtHT/NQnqMƕYg}x1ϭPz-)BClCz dI=o\ 1tC+.|VnC)%eǡN4Ēǜњ lŀSl쒀E$ ک}F+%K;/PuaB>,tx4'0Sю[* xXve03URv1P<<NoOYOj>3pxvhu>?Αlb>ĝhAٞƿ sz:^[#>^KBm} &Z&?\쭳k1,cdLt\[tEWsiZ=wꨀER+3Po.;B{< dAP0#~,C=:[XE}ϯEMťgg$waN5ƒǁÔDwrG|M̼X(ߤ ;h|"gd| RС1b8xߓH2mC"𿏊u %2 F܈PPpһQ'mĘѡ[@ LSFN DTG{ho\[)e/7j4d1Ti7zoh [G{??UavQxMA<-jhF\pA5}A%db R Mn>f;T=s{dINCw"`-e]/ʣT1i۰kͶ$h8 Cp;(nTKۦ;[|!yei&N>x ́O ;C[(DNI ;uLLIaߕ~m0.=-#s(d|;:<-Nz ^Xy<Vc+#P+Gą7 ڂxOH0UD$6AoMag,ơ,E# wn#Zu65D.>V=i?: ] ǜb$[$jߎ]3@IG!D>I]ERn,H&%:UmL4 @ɹK c{L!+oE\c#B&!':O3x<[7mu7@NT-|v=psS2'֭u/4bu*x~0%;{V~{-j<1?wH-@(ܿ^l3 q6[67SdȂ'O3ᧂ* …7c +s tngDŏHN^ s]w弩v|GH\PёuB`/3${0se+x3 XbwCH `\/?8V#pm2#p(E^ jeES#-?fS7:IK>ug]zhp3Shb :{i#w(}F>C.MNO967`gI<;BGG-Gi.,`MV6z(`^>k_V\$PA\8akI\szi֗f 4WU2N xa_<ErIO/"@a5>Z↪a=\dk"~| N iybɋhb*pxq̽O!Ċ{F*y.xeU FkK-7u[ ̦1Noc+F7I뾽% ēE7W$؟m&fƨ%f9m:L)EvD03<+elŇ1}@hi}8ߘޙ[z&Q R]c_E>1ߎ5*RW Vvw\a` m N"$w xLQtqb*3(`n=9LRn*> =5Fx GlMR}pMFx VPR߈+n?/d3M"U}R1A:_KvFaH.2r8 t9>t.z,TF0?k<ڗ |o@,W!h≠y 3`2 V{U=D絻.YxBUic=KI5",Űx2Pzt%X5ɨ|rKxP;P19"WY:,,.e]rViQeI{!5@G7V^;sĆtf1Qz9KG"ʛ E#zKye( cg8WqJbi lJ̅5gZG⪺J 8 i-P7Myt @_XazRwg{^傊ov3>Inټcj2soŭuדd gRɳ%Xzֳ5 R1Sp=(>͎!4GFŶ9(U_ ͯH"wCu\H>qTh}E'ij,CC|9h^>QL 7pkWCT@HukD/ .w*וhP<F^G?]ڈFl~\+゗74`[P285kvS"g?ůhDSR5[~}ZvQ0E]S^+:*$~qɰ(U5},Bth:D!ثSo!r$ƢbmI0rZnTgvj"JӿňMZb5_ڿ&qhcBWUTi VWh(cTxœ) 4“Ҽn͢R$aB!.sX ;3Q>j4;5q }Oݯh}hŇSXB[@rYI%HVfxjC!exBV)۞dAA!hЋl/ԃJ^;սַސE򉙐EUR }@Qpb2p9BO)2źuT>Ŋ)߃.|[ uzIΔkQlX6-Ա(l)JS]Vp}{ͨp#L?"[A+B6ҠzJ2?m՞э7~FOt<LjF*PA[Ch.V{EUbMBv{.},z:E,tR)ʜahWbѩ`i=3-7bl;L$o%!5$#0Q3꧴FEL>8fFMtio&:Jb^`u(}DTE8 OA֏(|o՜w>P|.Sj{]*MIPl(uQ^#Hxo~bք@â}bhl,1ʩ IA&:>nb {I~뚬IU :-x|c:;nC1>w6)|_kQDN]:]J Җ 3Rl9 3' 8Q4dѬٟaUs탤?#)ubgU[Y.tC7yP)z\i23@8DQ~o0+I"җN Qˡݢ&jNE:<()^xQ9ȅ5L0ipWr3X[`ހSL_Ƅ_?y|#nbLUޥX'woO溱~+\f.(j"V=>6Zìol:18*'\ȅ'v@}]_:C\I  be!z-i./_PD]}YM^X H\WjBB|s+ DوyLc._sCht$`r<,c4RCcj_F-k}GwkmŔE>LbYoB ah+03_Z/\_B.p6&Gj@(Qp8ѓQ7^6U\܎F4 xbidʦ t\BR_i9oѧCmIOtzog JߵNXF烏$ "WvO L.C|Jx{!},LV]\]d.HJ7НZ.S8R]Pvƍ*E#R9vMvlAᄇZ8EV$~ۜ2#)0`qZURJ顦mD<^f.ZiJWhLI6+ɍD=4xtO8Jb;ag|- ovɓ5"jgG% VVxh?J"BAgL_݌ɀʵKDszo }4̟R6)X5`}7Q,\3pā}fv$):ן{~2eGBO80m:o&>}u.\0ρk8p!n7;m=}R<W$=x!H5"\[\pj`|<[.RIp҃kǒۡ|e<'#5eI@f8kp/. qhI"fbt&x76,!5pS9*ε/6a 6>12ds6D eLgl>eVMW0ej1j.jdl%~iaDee`i0u`s0L R -,sF4?Fj=rm:ΣnuA) BmAG@좮ѴLoZФHƐg]~Y%lcPcVha.m3L Kw֘ C kۜA~5=1Y `0bT%?jEsh(+@ EFbv +=oyDJT#dPagD&}1<$]P.$~Uv%vyw𸝳f+V|u_{6ο}b z)zDȷ ME3^Gt0yJ{-KO6SPgý2$s gPoa5ɠ v=s[@ᷮHRVp%X>O8:z–2cSvpRYp3f<).1KcÊ1JtuG]!w蚄a@ʸ[y2^Xu",\n8jvCDk. q\*j_mh3^Mp(\,v~^_͇5mASQבd[[MɿϺq׵~)f\ HnA:F>~>Zk Mm$eC{DpRC,z1 iLdJ2A%I0b,wvNBB;8ޠ@%΋`$ʃiɊb ^C"$Nx,վj3mݠ XJg$ЍKe{o8~[]?砕1ƭm>V4H/Ev|9fO&Y|rqM{*EG!aY~=4us`rj[K5ý7L8aKcc=E3| HQDKbg V0ߠ'˩Y?+KS mvA!-s5k&Ch"T?09wq| 1XcRLaoXsYL ֝EZ1?jmo+s4 },x0範KFtVn#M|# zJ aQUo)"{";UkJ!&/8ۯO)S\:4˯\'䡵<*9}*SQT #MDZTAMN~)%~\;ACn\G7?yy:{$T+\ƓG-MES$LF `[8a.뾭ͨX ЊBaR;֭v?['U4J#[=lʂ@n hB 1G=ia֊]*s RpvTg7 x?}bB?(!.]\1L *E~iTM]RnO{ %gyGim['uҳEI0Znӟ˒P{5qDu~('!"K譇d҅z/7XJ@HNvz{/hg|\=JpJs*2e\ͺ7JNSWʖ瓋@3]M  ro8p>L'8cZ!YfP+#UkMSk~gܬG6ц[T e[^[aEO87eBKv6IL;O|oG@?$_skҿ#]W[YU*4AX j8D!P`NǺ:wl#e_w gk}TlX&$y_νE jUi(;껮ɱ\HhQ04T{tPňLh. *ښ{:׿,Po~QﯿUMd4ю޶V"B}U2 #R}uDYu^?DivW /(7|/ Q`q/J fc/`Fo+3A:o"ɷB'Pc'M1Ɗ8 GB 9JO&*䧄@lG_ M_6Nxv!`r("/OkP_UyP!~%msʄ/86-FgPهt,^EFu6 X:y}/{&N2>+x3U[`mJurO_g#0vxC s3GdYZkU зp..* G/d,`;@͊Jfmʠ&3Nl.  nMyf߇-CaDmG|e"X_~Gg"ԉ`,AvWH¦z/5ɛNV8)4$0C0J c%omd_k@ 9+t3Ϻ]ߧB#9~q̪<5ߐvqS@"O͔PZ'${Kv4(d3̯X;Q;nhj˾<+n̠ҠN^5:%8x*Hsk3!-}0 #PUۺ nHj=K'uC?{,z| f2YXۉDh :1%?e4aChjtquϋERoᶙdf x$4Plv ijlLu4t ZiFO 뿉Ug4s DJ_$ j4Yk\zwm8R;cS=KWl (l90A+v PFSTa`04qtUq6݂yi‡rN*IH*!A K!몈NO7@;&5| 9(+WЂ2Z:shglth1=: 7 Uv(N?+nAŁ3Hk-Pگ&WS7E8Wlڴt4?r"sN}*8M$$%[fGFYȫ:HMX˺"VZU77IF_,2ڵt(?EHA@v#y؛ZT321 0O뚄v=T[؂SG۹Y +t=@8 9-úd< dO}fǑqTh0vق-.TŀKjۈJȮ9Q[xtj̤sW֘h(.+H>RacK)|i2xBU:qXJFp$46U׈}ήr+zU=$㚸y5|XIb192bR؏+~Pʎ>dK)p0h"¦ ~QŒ2,# 8D fBN"κ#K: blA>0Q)8j:;XM )R?kpni{C!S#Жr:OZ*[̥q+xIW M\2#qF)sm˗aA pDգvj.=6SMQ,{& G쮸4b t8'FRC4O ܗ>0#v5!Y8ݢ^ɭ %`C,Szm"EН"J75ϡv6 yYCnS6/rh+P*SyU`[\ԡV0diub!:![}A}Ǩcfu_0B,FTك`U%D# z}nɣkcMD#Ͼ՜+/{!(b* Qt%@bt(;ءӠXQrG#xmlbMRT[j\7E+D.֘w&  K nNb)/qa n??&l.m{<2_|4 !y0N<>E9F /5wyPWʭ\eL'NX{&wJH,PeAJz^&?Ql(,r8}]z{Ӕ0pr*`H0xQ8HZ'ǃ8^ _Q 1T0V- R f6Ll."`hSX–nCRx}_6u"U#v1 ^A }>tЛn[H3IϬ0JJcF dEwpxMj"Kgx5t#E:j JO0IȕU4fIߟTE!C.~fGF;PBl3hX*9roSӽ붟!xpT|2ega*ZK=^N &utü H[Vil'd5X02h7P;YB絼郓cj> wV: p6 AܚEa?e}y,e s}"4QRHlK 5Nw=ŧpft*UKtoI f @`kRE.[ۮ\qҦ@3 }wd"0"̰vwwg2%ӵe]h8&úʸ=_S WU=Ӳ4bvሖMlBd3,yu5O "RN%L|5ByW)WSmŐ_S@ L=ĝ b~7 .![Q&2% *eY~ox/YZ͋RYzX{C94F~nʶj:O̞ˢ"~ʽ7Fvn˭PƠ_<ۆT1( A䔈nQ ðI2>։\+Cv=Ri<&2 `]IyI':֫0di+* ee.)WBFåBf])NvB8,2 >JeBA xR?M׾Fu"H߿l2^w% p.]9zRG:b-0Ooe쓘>ѝۂ,VVs_fL5thl,0 y 2(V9rjۣ ~!qdKRImai=2|ZG\rKIwN$mv|" {5{&,(Sr79L^*}@NʹߔG?W4"\9~pm䅖Ed!nC Leiښs#g,rKq2 !X-eۊ"~on\5(K d8uDN%:ǃ-:ڗsdʇ,s#_\Ԩ 6"{GJ$~}02I"$drΒNbh"#SD8d )@G1,s}ݕv[>o(֯Alyn^8&awOLMDa)3[8+pQ}T]yJvqc$Mg)&mhn'$'JK,YY FsúHYx$=A* Zq;s褓4/e^(޲P:5ڭӝMu~%SMA1=@`y4hfJ;L7D#( ^"_>|Np{Z$@?qr3 m65*:uΤYM¤Bxra\@pkskZ+JZE{$Cq|fZ5ʍx̪@ӤOU!94B讫/G8fXDˡ(Vezpa)lR;:I;c8iaN+BėXi~Ub3o9S"r7ȟkX%kHbƿK"v;=W/2d^)IªYִ= c/ djJpS5` Րi=g7Pu,D [>3*-w@_aEgpL[w˂;J)uF2]t}{G!Wgl jKA,^]yĤ0^cH;COoqKaDj=60Ǥ: *k*(ejJYn!y*)欪s{=vJv_Ύ12K-(]Mi<]8j9JY:zD`2W!ur9bHLFQH}s%,y[KaAckW=ME $ 㴸VbE]Yz^hXv3Uڑ>@<A\mg=gWgIJ/PW]rJ#*AZG[*/TnB("u7)o-!abȪ wOfgBiDEt8"`bWZQZ0LPb}7W 'sw3߽3T%+҂N5>8ltF8a_`|".Jc2 p`_g#.)_|ʄ,F{u%'2ѻ2U H.Ubs |F k--> WqykY,{zhū*~JbݒmJoX@3Ͽnre:;]r^M|X>kKSi|gҁ#E9CؐrWizn)Z9IT|_S7Mo13#oq( K ynK?K WoTƱ 0[[:0nM0߿S1[J"ҹCu)d;Bgj$4G19|5~Ijsm𡀏]Gw`^@A` [\Rɹ#o%ۄ }Wmi dnՑ}rNAU0Vޥs41 A v~ =m Xz66rxCFnx@xşOoyhPE[ 8 Zkq_,-:jb?]K.tJ7Z8hFҨ ȊbRywdgUߪS Q & lrxe\"L]>0?CabsA%v$ 2Qwdy9B`T+ 7տ,E_HG:ᗈFcpŽhQa2)љ%@l3_<~c1EAՉ^G#cudykI%ط Zydr&ޢM&%Q8}PCX;!չsjZm( t!FAj:bGC/?wgl^ 4?8,+4%gGXEYݜ('Hod, XT8m/6Qtbe@zXdp0 +ձkyT &G}L~Kcm`N؀)We*Ƀ>G(ovnj#/bA|G ӳޓ*7lQDpG5b^2tp#O*2BhM>E9;s~"gIӈ>DZR5&Q lڶGi[X}{0/aA ƃËNӧJͅ-Q87~#JA&ǧH^uӉMe"}xU ccLc*0!lD ڐ@83 e #qd7$U<ѯoqww]0CD &i[=qyǩ_H`mQn-ԴQ2IfJ!4fD L ;aaBriua\! iG|E O2퉪5al4а\hJp,2|E<`gݿH&2lu*=OkSH'@+&R".>bPJ j">cMՁof)$Kk.SP^TdoJfrFNWS0 pא YȎz_23L}pֻʳ(]pUt[I>orZ#]yM Wm&©ynRn| V}W*S,M&!sTk "}7cO:aU99Y_fZts+[Ԝ2C#ƞlQ@C-8/C۷uO DA_[Z!y-?'ºŸO@Q@\%kRW=8JMZ\U5X'([LJNio`UoD۳,Ax`!VKbj{ KAszQjK3Ո8~eTC37Ōk3l$w A67^C%M"*n!BpOLU%y);cJR?H/$wecq捼%TqB쇆TԔ4R'2'4ӦivNŹpMl1*K7 AK95(UӓxS-ӁSs-=й;\h՗ A# bM$#AB VruÀHv`BWV!t`Z8yA{ = *6:"ﷇWe7^%r/rJ}]#זҔAK]a0 :l2hf" u1ֶ mk<-R$EѺ绹XOm@ ٪H,>b!udX쫰ޛ<͒<;ms?FKJd.ht SQo6N :zUbTV[|eP9M{7¬8$$QyiA|o$D5}+.|.Ћ+zB_C B"D=LƎ_풰o2mwv^^bp$!%#V] U(?.Bq͗^ wm'u,+~ `t(UE^n Ҹx'L苿h |xV%٪Ӱx\.ؗZ/մ'+v#cAkl0IBvYvqV߼0P ZEGco=%>CCD|bd0\Yܧ"5nǘETuG 5iT_ Bf}ӛrlٰR07Y !͌X-p%7jp<מio"ߴ6.6[uHɎeiuBmʝ\0RVB Ӝ=^49bKY_zTmQJo0#yAQ{<-6(Xqpɱ`'u01EB"&SJ{. vbs~6-M21HgWzz(p91$v-?I1C\N'(5I<&i%G֍[bR;Wkl#뜔-MpU-azg5Xp~9|BPZ`q[3}:d[3Q78 8ps Т!5680\H>>7GK8k4z<\[mǻ^)V\DBYoJU1a F42/aӌH6ᦁc~i{55%oO[@aE\c.;T_ Tv[[^٠6sjy+: ) *R 嫀E\=t=,y:pAs]7r]Z䃼 `ZwfJn(nYLTgym-T{{J! 7e5y*Ui ޹+!X|wd 29OEɴcH_K4nU|8!'$0^[Cid/ZZ+5{Q2+aXultB"%!<φLPIY+Ж͞gzNisGޱoj(wb]).S c>];Zi,+OKGI*o7ih>%jvBAK7VkE-–Ϳ y8VZ, CKgLAgRIl:+K3sHn%$x, 0aR5$ZJmxpEv+~Jpi& R[8bf7&T(~@(&e)A,;줘>nMB@K|iACRW@f= C"X:r56XX'%ʄBJF0Qq<LKd|L h y;g,u rξ:>g^[zd-/T+.ͅWދ]n%:kmm7Y3; )]vEs TAW}tQҪֱCL*jp3{cң ;ǪhB},Rf*mZm;6c"uiKVA<9 * wG #Ҫ'] 쿡#fr0uI\ND'ҧ&Q<](+4/6LkXXDLIoI缷/Mzn<@jlM|B\X26Ov&#qWS=-1DiK@%-a%xq>ɄyBU}0*{\W*f ru[LȂv ]y*97QTpcZjNyI'E) \_љ߱Vd)bw.?ZL˄wZ }K.:thm}4"N,0Pm?WCH۪];mr)CWMEav-`8#\ק1Kڱ=螥T:1m5= ńE8亅S:4 X.Ҧ_5钄E~#]9Y˱VL^YHЀk5ZD)h7@0s T婤mJ&::P'?:  ch`mhIe<5UZyd?_`evR6WnA:i5!EWqWڿf+vi~𞊓!kvN<虜l@S4PQ''sOG3R+D ݼ ءpq7>dݺyjKOn>[*i3r>nA#Ū,7'+)$Ӗ{" =qaV!x,V_Ny|}>JZi5mfyۢtݨ-9[F.~}wʹR@Ϟ[_%icr exp7@D~+{݇>h0phkXuH!T}@5S <o{d ?Rw- @t8[*6(Wi&1cM͈ez9y.5]fЭEtK}`3{7<To=j@$.'#]9"'A}rat׀iUk :WIıMFPB6e`Y2W@:&١v5y[FW) ͤ?J&{I8X*#¨lCrE:_qEٻ"2 3a[OfOAC٤ޜ'Ʒ)JxӢd 2wҚrj#82-2jFXJ%%eD8s|d YiRaNH,k 즱 ~d-Q03[T/.eKr9g|4Fհ#/JKȋI6c[8tk0:7ۛrгŞ7Pӈ7xn8~=q)ӈ9c j6Am <YWd^L_ks%ݐ-֞P4>PxX0ON@dT xLD5s݉eזhYɻwU?Ydi׭ޮy۱yq4DsC]VYen*fE4wM "ؐrRifeM}8 RI_0 pi3l8hhR9mT \̏|Ѫm{μUs|9,I1%ok)&jA[DNf55`#E9{o={Lx%,TeQcaE+eAjX~ ,6*j!")׳Cޔd6}:/5{n.;}UiyU }?x3|*e6_ؚ֥_Σw1cm+1 ]R)Vt]dNz ID"W_S4Y>B kDYpVPEG[~GבO|j`!=FȉxXBd Kp. yt "rfULPnfUG5,0eotgg E;$1E5c/WbgGJ Y$Bh%`}3~~ &con51=Pb?;L4FvNU(r'S)ڱK~PpRl0?$K,7 ^ar$ uE;Xޒ`B>HlY4tT:@XΦB@]Ⱦ)P錀gThzKٞ,O6/ Z7e$Hd r&P|$#K IL,FH2 <5q]~C} sc!s~$Y:RƲ8)mmFs})uyr@zSm%G8֒yr;1 1,]PuD]?2GAW-r~ñ:<'H).GR{T8y'K"w6![ëZ<zwĸ*;?Va?˛a{sȮb=(^Bo%Ak+b|$+5f|xq:as S`yi%)/;-(0!OnA$* 9||x"s<ԁp(̧+w̤M>W *k`#B+)tBEHX;5Uq#o" bWڴreONHefxL p| dζIjJNhT_8^I1ě-9LbPSQh '`Qj^[B06pO߼PC|&PvC{aW yT 3@혧IEi`|Ei5}ai`d.Q``w=N:t?c.Q~ 9R(D 3t[I.?cqyQھ7F ƴ3ؒY +A8l@]IQc{J-h㞀Xf53/dg GyQPOuդJD)J !&1e*<@Ფ18BjV-Y#"/4\q3ܸKU4?pƎi+l\!}B+gly,-FӷrҤO@TA g!}FQjQ8YYd"y.n<6r&(ORFUNuLq8kQ,۸2EJXɋbo$L `'Pոj<%y秏vu |5Һjyڲzq}Tԯ{Ay[~VuPYR&jT0NVwd[o' GllѳӺGo] ؈ Dnx@z5l65TaoC䞥`X;š(U-@qW8($iH zPM貜h+}g֖mdxGַ4'p: /%95Rmbz;*}|j"=a{%={ lpPbBeTـژ뒸;1vqw]^t\q#C9갳}6ZҮr\ϕuq>n$] :TPf F &`^ؾ26/$rJD Ho(IilN7/!f*LY Aj>|;TfgԪ# c4TpZوʅ[J7[jZLpkӿX9Ê^ՍqUWr %ߔ??FO RrOͣWO^4w_= Ă4MvDUaiWqБ{$ĥ] B !0~EpdcQaltXl':ZZBz(q֑|LT&EP\od'ѱ{hh퓘X`{0Tc8oڝXU*]fiNtEЋєJ;b(o(VcS n-ߐi3ǚj U[e1dw s;xes1+t*=p\1{7eRvT$TcI U޽H0G.(>KQv>dTQBj=u!`pv[^]i1FG;@c=ͦkY:ܑC%v]BViKN?$x+/CKHp^Yק*1BOwms]ZObv-Y (\9} _삱Ŀ$om9D{Kňi@*ڝky3}eUÒd!QVSA,Q˽Vr/䙥Zgə^壹^&wf Mh |q`1HbRe*jΖG 42›)fC&fIZ fb{8ه W)hcu9OYLt's1ABE,.-5.CږE"@ǧ昨ZXF:7c{H/@Ih{0/$/Cs$s"Aȼ=8]뭊/z2A|@@y xk`f<@ey"LmOX<+GBy-=qʹb1;ouN1LfPa[ZN$ȫ@h=šw9!&!5N/!_CP+V{0K+o;bzE.5".O'!7Ò+IYO즆} ,MDa\^^`(%,h]&ފ4>|g%Ti-W=]@匳uY ˻ei]٭c3%f̟/"P&Qс\pG S%,v.+ ;ϕI\.S0#fhUa70몢 $'`~{xetV_ަuP6y\BJ0- D 3MFۢlimub`̵o.,j*ŭ/pŮB7`܀:tlD?= *o~fqӟj'S} nYw 1+d7#z@]Ӊnjb*KI +8TJH|ۿo+]umu&=8*"VтLtJ$sz@iL׺I.TM;7!牂 |Jd)i^*,jE?uڔ !faT6b,Ahd]v7h[$($-w[Wpk}E/ǨˠeYـtR-C{hbm/ΑMVxȆ eSEM2`SK7E ?4zr/yGfy.?D/G 3O~*?9$go ujnMDfJ bM1Kx⬡^DbUWLNX-M0FH^wY8S&2bB>26V>՝nV…kDչ滋qtlWnEmaDeZ foG( b@H&,,+nM/tb8ʪ m%z مnѭtL--,59g7Sȷeѳ\VמȆ_k2fIMMB?P.]HB`3E( 7PC϶E)(j+[*>d)EpJg$jM9{ؖBnVmt5lZUC*ZT X:f3^1Ub#j뵕h#|чS mAgŦ@S:p?!T*@JW*"EQ7vRwԓF=*B;CMW{R>ݑ ;IsH 9KdI bbⱪe)"q"Ȏtj5BX /:D/3@\=q9n OJSrn"Dڨ3hك ,p3 ؏˯{XIxJ1Vt.ݾ`HV^t-RH^Λ#mcǂgQ8V0j 6vSGYe_Z@q/жՃ'("wC2_}I[s}|v:J+EQO0e how(4GeRO e~^ЫAC GN5,aM@5SDg!YSkRmfx/16!2oś0@%:<)⍚[C o]_D&\K:ISOIΎL9lWn l.f˱p]cY:r@Ix$oBz3*c"*Oh&V>Pb"mnAHj_˓0=rF_Z)UCBrJ%9աד &˷1P1 0@+{RgLXYӿ=ˠ\<Ue#9Y5UyCGz[,\UsqpC(C"W.դa~q7db\YhɭU OJBuhߒv2%b&?|$3>Hߞ;s}xqv&8Y bxURqea"ip:?Ssԝ~|s+i>gcS.PdV(~+Pk&XS00;@3S!Zqu1c l4_CwQ!@'FJ e8Uv޴w6ճV".7SKgwp|[ᡘcQ4 BCԕ N2ǒQLH[7Rkn^ÑGUVl/ |Ou/0M60:ŒmIt#du(Z lm]^S$@׸^I ),-̅v}9ijEn[Drk:;p*zޔf$"Bh‘Ho DP"o+ z7s ~NDzNBjh,$m(xztw`t=4u5c9n Y͠,73TՁr̢L2uг=mྜྷ38QPpfL&Nlj;#GSW;]ֲbPbrCnx!uڇ!*pv|6g&3fYt Uw0Fg~%MoYaRІTuҽ{){jD?*ѡ@7Ifi[+5'(ހI:򔷄 ,$naSHMch-b. AFcsNA& #*f`5 Y~FH/dM$0_I0=2?M`yDpC) },xF5VZ)S&0Ҩ<$1c܀ MxBMg1MY =v{vL ndFU(` +jJz"R.L#1kJCӐA)OWqZd x&pvdg0l K6{k'P+מcVmX!EDvІ`;)OѪR/?ǒ~J$ݿ#ס~^47E*jsҕpы~ g %Q a⊇e𰹻Z!I xJ YmVYiU[C/cA1Z7vdCD5$f lEb#"RƷꏣRS {#"йպ9dm#Hc?sWֈ/ _-q"ɴ/:C-ΖbY\+ B?)Vvhr%QOix3:h+ Q~~QѢ҃鍒" /x;+6.`UHIۻaY~> ,Q粮LT7K0氊 Tt ,;]gY+dۯ2KԨ(D\]z~4:^:բv2,Z#o9Z$1Zxa|c]ܥXjz)2u B )gzGbt.ZVJUy>r(s?D) XymBCrZ2[sĒK8 ՆQ;LB|2T]~pQTf{=6Ɣ,:TЮIxJ34ghv#%L)m vӔ H5ô lv8޲r7z1 kf; }# %r־ IU>PWfEi Q!b⍩(I*)d G'p*O<u (%i~4DaJC”螡Ҝ=>>8KV?4aʉU!~JdKYgȜR=ph1dqoGofAnS~ua(EBQW!eTVZ1*G?κeꬒ~I.O6$&v"3HQ=*obgiW dd4?QO\"ZZ ˪JAbO rHZ!H@_k/DF Hts}PE~lIW+0]՟"$_T D7UT,?8ΧE.z2 V'.E:jW 7UV6W~ "Ir&O;LQB=v ixuCXf_IlD9Ӎ=#?)Ds>/_ډvӗL ^8++N)>i:2Wk,& ʲ}W|g5sS{k@fg:KAiKLщى?VB0H=q[&/6LLKDP m%X`ZǻߒWmZ##wq. ,# ,0PLn؁Vog3*Ł q@藆/$B7 ίs]43 hw :\kժq.wRP}vx]M<Ϝ`"F$rDN6+N_[KPZy›ի{sr;5v;󧽋p6l3Tq[[$|ٟ]pDJ»H:HzTQjш3 b.g L %/MÙvuԺ~7.IT)]L놆o˅==62% ĄU 5Vxi7A#@ }kr'NŶѕd %~gEcwU_GT_rR= RLz0Y=/cFS{zg@W"¾xWtYp>Abˬn_? KߔQVFc8n@=jOt}:ZII=~H".t|}" ao;@?h.t)c6Q\Qއ9)LH wg>]YjTox#rIl `~麏)eqaNfZH%f[fqK!}>1VD9Wh`%c3YTM8i VAըEDJVjߏ`#mi&!~J0B/o g61:SP>€iig *4@/vh,A"dJ.}QՙSnx"@HFEIz"~KPz"tcy$2u@xٲ늣 z* t/C&L8<DvO3̸)-D-ymn%_1`^:YCaދR(J*Tگ1w&zІfjeQml,+1&ASE \y`8\]9Ef~*yA|I֋xn s,A}՘x^ԕn?HkIuaWV=0Nvx"k4QY?6q)"栫[1no5t]7l%Xg󙵾K&āQ)2UAnVfq+^"?w&EкզbWCH8YBӢ@"F @*"u:+OnwAvB%YvQ3nQ{TrQ>PX`HRZȔ;$49.6 R^sWT*gB1\L<†NTמī{?LA}Aͬ3g.xfSQT`azˡ7l- 74:@ Rp|+ϣ8 aNg/^O$Uᝀpk!*3M8}*y8(Q7G;CILZsPў2YѰ) xjW~aR. busѝJ \JaҰ`nx.L=xty^5RN3L7˱LoåB\t&_FYP nF `V*}lRT嵷EUv3?V?t\vŮfQBH#=:0!Z#1"Nn"gch^9Ұ@4:[Ts^h̠v8AC?`m|oY 6"uw'Wm^Q7*Ni/DR%5%`9+ɐ;+&eB5/|`:xb@}#6+@tg1:v;f?4@?t3Smu62˛CrTsbkθ*3lk<[SytvU|ꭢC]$fin$oΓ:iJ>eFDb'AAY>_o8nxʘo)$ۂlcS:ןNiv{"|Q;󦚔y& 8%N!/G K޶ @C z˾6,F|qU֛*n $\uCcg?o>:8=U2P٢4tre$:D?Պ_;3욇-Y&)H,;;tg< eI*+Ic?@h6H0;{} 7+RaeI^^3@׃3$ǩGKdž t{BI%%BJF[_E :dm؃jxF"U++8v}>xWyȤ=[p_т~d%u 0*̱djdr6Rzy>NagC` Fq?Cinۺ_P+=r[RnćfE-u\5q\RaӞ{35D P7l#x zL &O ~rw[:!$CwjvĴ$K%GOm#ȱ&62Ni՗4Iʞ7ra;«fדꔡMT}O;9qڛ[x`X-Y`_{3ՍATW9OqGynA@0ڤ &oӾp3Yꂘ?\Bz{Ahb}k$U:F̷tQhRU3YLAgMj5{{c#օ[,ٜ}C˜F׉jp>ŗQT ݰX+%OI-\w+TQ¸^Y= X'I4OVe@C'a wpK<{=0Eynl䙨?ԄwV>>7nۚXr8Ɋ@Q*iQ&؛ɽ`CxhkڱDe"wb!Wi{m0` {-IgY$&pcyvbGՐD+ [v%**VM֬p̼ ݭ."%a5;/HmdR i^?+q_4`rp*]VSC, 6X̐恴’7tKo_n/_{CH]ES|XB*O,H!tz zh󚔄.: wM?3ꓜuUz~4OD3S ^Qm4l1k< Rav mŻ;&9ԏ@Hw 'Ũ؍2. MzI;VO֮|,ucQn85+ʐ 𮠙, `E5 6 =Th2 x>s|pyz(\eNM\ś(g{\ҜUiYwؒA͟wzٔcnJaY<V&#pMԔ,C8]B7T}"fZ3އczgf.gDK`5¿0f!vQn덝` rٴ'd [I?11V( ɘor{@=ZD(*4S4&{f瑧 K rrMI$_dmAtQ{sJyWT[d ¼Rǖ)JXb<7}8kY<%Q#≗# #NpڇYՍú&O6}9<W)^-%d[Տ 32I'?ָ`m  c]BO* "Q}f_q VXm]e}kt,Ux&yXRuk;nn{э,=$Xo3=pk\ޯT+>n>U (ڗ 2G'7Uװ|m])*Vnl$#ݜ4'`|2 ^^s|F#lTJ2/sg} Lvz c 2f.rZi6RГi>Esoċ؇sAu_{@Ma\bz7-ɬ|;B?@st" QD**N}-\0Y/f lc0C_m"ПlchnK WdPK|KRLӊhm'/q4O Kꭩ֙ո”=ľ<582W)R}c~Ə .ʒ2otá ]+KK9͞GiM{3372#Z?N/nc=هM6L+CM h6c %UؕcBj c&.^1S[mm{&"wE.:ɞ4\A,5bfIc@4fIML\Ё5`U@-cy%bm{q1p+%ԥ-pe{z Dm ?y(SH,An`|76@^FtbcRu)|?Wt+?QUm;7gh*/G)øI3t.ʚB`#Sf˄ni|XɳS6Q\ϗA^$a9 >2Z#cdIX##-B`pPkypq Q\D>y-LM/[v59LGɇ>E# QI毹Qy0R"/- +@t|8:{.n.Y%Š.L#lΉ!L6Z-&~S/ْ6^M!$+z>MET۵eFC]Қ%DybD*Rqpv0"#0A1Sm,|DOr8\4*=q&M`؀\п#$fjoݶ5DY^ XG.x3 ׉8YP/IyAœ`5I9ݲHm.$]W:ITzR ŝb3`qTlxdCѦ*7dфȕc'cƬqr6;*0W;k$yF%VC|4:6u 0(Y E6}&K wֶ}OKA}Ni-1дL(Ѝf.B1up-|/-\~=joI =R8VBÜeQ(͉póWdol,;:nA5*7t8Y<Ȥa9M=HN4# *KЭOz0rcfY@I;׽DчWr#?6?_P%$x7ŒMpqބ.O/{w?k$U_2"g kq^YΡu`KKm!J.-|ڴ :bhy]&DQY;>nϨĤ& ?i 4~[D\PYtx6v37cvӑ8OGj؊^*2ھ35,Oq-μjcvI`&a^0ܲj[ؤGD}9O ADnkح]!HL%8F  NHK4ЅYvC}}?|~\Tzȸ/Ԛ? G6=U^p 8Mm{f. *{r߳[e5ԆDe:Mг{˨1;^8rfgkhfR gp-tDK5X6E7~{`JY,*10jcޓys_NfG; NhV2*$ UNKW&^%#k,w-;[t+ΘHvD>,'n0rap /Yl3bpN:Uv'TGHyGY7U0/곻d@KK⫾y3"6-%FYlVtY 1ĺH ,րJm):wiU#(rPz@/@}5:`*>>N(pצXi|R/KTϜr`H pv5'xLA-WL7ڭz*s3]l=LF.1WSMΆdyYsr,2 h"ٻ`C6Hqwr3k/Ze-w䦒6z b|Yny§1|X 1o]/16P]G4XDJUP.cPRR [-52Iá) ?⵶kf~e@t$[L9[&4W~ĵ; ^<sG;!M`( S8l+=+$jPfISPVQƝH^L`[Kgtq*"0*_b2eDﶘlY,{JycGHl}0K,c(q (~)+.\iA=$CtF&q` A>~7oanSj5m.Qż2J[j>ͥ*WyX,kQ;ze>o Q[U5rmpABJllKE)"b@p1C-~j bWOYr-x+)VI)`.Xr@ |* [\!dwLՓ Ɵas y5_ e2mїџ Nxɯwa5L_^Pʑ'E@mYnL2"bݧs)g3M1d,rR =LŷP7;bvZ A!u{w#82?EZũu̔e+mK7NCOvpyz~LM|*ѢdIn|U?cYJ8fF'WsQNͺ6M%b {#P}(]3Ԇ9(Ong5t!e{7K kS3̌I;ک,lG{:7 ,HFuo) Z D.OwmC|.@Zj9z`p6ì2&CZ@ջ(`w4O6>Bd^w`Jh{6o^RZɟ-uTqv.@r~-ھ?'ſ8 17+M~jT$K|fs+$;9.Uo CUbBm8hl^< jRr8V8S1@ojpnQ,y_r2"3F;d8UB鉝+H([\eA9&X ިpkDFn#FSeɂǀ,'!G?{v-<:{}?hY]$^ D7膁2a$[-BkX'H٢6!oz3Iy7Щj`] Z & G>I`?'Agzc}Bxa,t$>AS y XD̒d\JWED!f/{ngR8dT}XA`R*H廳1ۮӹV;q v2h,7:޺؁!ݛ=vS=g.%?rt{Ek??"5PI j㋤ޞlS`faIYӊ+qۡ,d7ߢ%wʻfC_F먺 p!;j˫:Ȍk"<г=wjQo =U5ԀR绻@Ç~MXK8=sEE̠(C,Iqؗ{ 蠏ƯH|ǃ"~Z&-bwy cn(SXQdUKL( + -#k1vǻT5(A!}U8>Kd318oclߣƹPgx1aSٺu-U4*|՛L*;# WiZp M7JnvBkKvd,w𮦤xXџ:0]YqTtpmfJ}H=Ǘ=ukRG\0֤{2ǹ2G~?X"E(v[xP2Oz{iCFwDM|'9c(7yxMLU2rG%9Q^M]^ )w&kbA  gIY k,,c<͝wߦ+L['Ӳݶ_f[X [z~E}}?nm@ ֚sT>_Q)fepLU\P)ZKҊ1ʹeBƝ$WUwE>S u,QCXj N:+?h=Bd%SkXw:QkǼg/鋿D7+p2Y̷_ڌ513iA @A2/:rnrģ` fHG S\w?On!N3>X5t . ; -c5ʯǏQ8psRO{?w(JCD)G>Gzo9MbZHZ+zlu.]LpY97_\ME/y *9_ ͶJ2,onCcp?d&ERP᭥ }lcB0(p|Od+~<ܗ4SQZKj$*zNBdBf O׀Zbd*_-k.7I/J_j\ h?kamxK%626SeIWx^&g y]OX˄|No Hh6٠I7tvhWCrqڏlb';(; U dG@\u|>¡r _'}./[\E6ttigu7y? i%(=ev t͍˘m"k0,,'{~[tUN7^Μb euPSŨAöhanz_.HպaSSߵx\&NU  '{kmJYw"Y=3eIF9yy+>"4i$G[UR4K (_(~CiSaM->%KQ; <0?$ֽwiB ^AP/YBQ:ɐqWLgѮx^d3-2hn(ln%hdkU3׆`;3ZƎ&/s .+p˒AF+g{Hxҵ*lE3 =oK'(Y!uʺYÏ"5>y=Pڅ-]6\Fvc`P#x=ܟe=NUƥ :#U|BCGφ+/fmK04ؑg[|x|uPtsncQ"z>e5iӄ@ӬjYPw GY" ( 5q{64=lO8?|~Y,I|g z` zG _Ba5>*ۙQ y30EpgCrf7[H$-'v]=q[H+=](XtVrT a_eυO;:LԏbVw?3Sbɛ9/9w޺"K {mT޵rsq-$!d^BE B*p֫Roqžm*:3^'h8 `K yLjO-&,OdwrOf-AuOgpř@G-n:Nd)uY Yΐ`6φV* 1,=FI:!eex/:ɏ/ t~ٚ|;kgS !( [g@iňp1*Q$bfVrGp]xERwKu,p! ;$;P fc͊ykQz=9 .6֨5*w3@(3Uȕ Y šđ9+|zŜ{ k96ab:]Ňrzj/_;#4 _V(Ytֵ.oFDEۛCIx~M`)ckDSЈfLɀ 1o7̅r)'vDHsTԦҺ1W4@Ja~ѕ|yaT[Uhp4*Az%Ogu[_o"SG ̧4Ъhw'Oyfm1Rųew?S(o|HuS|6ـbt٘k"p0t-O4cQϮ1F gC@ H3"2 ǖ[ / f ;G"=zv!( oQP&1K+uF/H}?~ܛKOS?hmžn,LzPa$j׉ ZQU4I<8[([[wn ͺ3:`c;ѥjO$ Z W=MygQH] .> ƼBR]41"zW6rwTGfi@I~\ Z鸟CMȟ'zk9/?Ѝ~(: y]_8G(~9ϨH&;f̐w˴8'Z=&Mt>%G[ u-aA ., pmqd]A"q)&lZxt45#A7 Kd6v%L6W{Ap&@P)d=[G! :5aV̑ie d |ɴ9NjA&I&Rsо1*iV̧3(e[Qw6A[u%(U4Tr 1~o]|GM ){:ސuRԒӖEOeKQOH6<N4w-¿}J=fU{ԨS 쐭wTP )0V 5S]K E)Lz&g#?@;C$ m_VẨ#l&з9ԯzP̳gHluk@9GPn Ă\3%ӏ%4nMKz(vQCAo/!x8D@g'VZOy@Se!HݿWw-Oߪnh}L.4 HY85>kힾjN 'k.6 pL곖p*\RbHU ͣ#ȋqUN11&d桃3 |/E]PcUhNw9ѝ ӳtB]'60O&+SK#= l,y7/$D JM]9FR !| b9)`L;aXi"j(qīI!@KJ\Dj$rrn`H~]g_Gw Ɲ86yafVFr0,P{3^"cd+Rr*xvH%iCf[ r.r߼<$P?-*-&9d}ֻH<@I`#>EG-wFVx-幹jXlrP HFs\n3eܵ⇦'w# E^ef.oMGn|* {OCAWua9(CuvN:(ޔοw5|]뻓,1?. Sũ‚c׿m4,R܆iQRrL兤rރ>х ͇~ O_qC0=w!AߥzvN^u{.SBBtk>Te;hjnzȌuRT;6"}Y>HT:=(Bd"l9:شw83,dkr.WF&@,Х½ juA#0X6 7+")ݿcmt'ͦj'B.ބd_#IqJ)<<"E|FSp _F66#*.GkJѳ-pxgh6-.W!{L@"#-NĹӛ~OWˀioy'x3rsoAImAGҼkVd4ZGځ㋙TvOQL}f!7O 7Ey06;X<dEߣJ0E>3(-Y. :QWa, 0#Լ`#Ս t_Pޅn%8Zpœo6.-XP#ywTF\VGeA`XmF> <9jw\6^[(YDMe)Ҝ 06kҚz"-1oE-=L"Az 0ib+Vt.p3`"5?wˣ6: ofdo` 8,BMxeo[{EҸVǵk,z̵'l֐F͢>n⧰$ u9rb ]CJh__4a-N[\.V8/+*Q6΄\=7[>EjhQmđ2I!?q*n1h$ݞΉD[7: ")={&GQZpC1sbr;fFxoD+pvB5Xã5 Ifd9)f ^+1#pl=*BUȍ6<+[҆ICIRGN*;;*C*;ryN WOCUPes8tZ7oީGTWW$)ө2lVsgbq:G#>xE'u DqԪQr{>ϼ%*Q̢݀t 1Kh+(GWF1Uf̂F ;&!PFG(i5{lñQW>n hۯg#*Js`WV:0Kq> DE}ОB7e|!Rt^OpN2OxqUKN}[.P"&c\K>0: 5 \|g2}G* +{x^0K~WrgB<{ :2 A"WIak5lȴ!-k}_s|4gEϕbBvҍKC%7}oEȀ}c5lH{3.0@&#Fֽ\y y6zzaO?sDeDl eJ *^Q}@FRtu)H@Xøi;dAqȋ*Gg9 J3/4{C5眸*t&0(r Q%{9ޯZT5'f.*5nN_!n;(K"s'.pXj?~ z`7W:wpS׍=#!7~j!ېˌ-(g%%K%9Q WM!k*s~k-30B)ϰU0 MedH@,V*P5qERWu$ O8:D4ʓ_4@ǎuC]' f ]eJ9;;R"`~;j$LynDgiZQ,ʒ+~M\<`3O5OE J);{,+p`IԖyeb};?O*m”K9 ^ W v*ydoF >>%)ky?.##y"L2=-^No0{j<7~)Nawn\ww g(-lҢȒwSa0},4(VW mQbQKy1}3#HcpFĉZVy/! C!3ӝV8en<Ǎ8h"a2{O,rQu#́ꕠ!6_}A]I V[0Q[wrTUu[3K3ȁ#yXsl뫐W Ot0Ef S6,ydz3{GȄN릑aÓ&ilgZ)ϪtDLIY!fK*+!HLKp>oni&+tY˺zZ᣽ڦr&V5[؂kɋ Q!\' SD[dvnX[_.(D_d8(wB6pSSL^᥮lX`Qu9 $ o]tѼ\ij"(.5;Ȑb}A~ $n=)o"u $h.*+t]BLfFO .w"qDʰi~D%dWzN*YYJqǑMIw<~UU=L<PC6sd7~eYA(qBĠ'}1=2WQ3 N!حJ44D>x;urH'6[ r#X<~ U`m6ޣKeIX69 ?]Qs1 &k*P5rUs FKɊt1 p5]*2t28$$bљ}|Ֆ{.ڤ,Oq&ZE79 rA+z1F)aB)2[ykC'v=,7bވ$d9#>_pe y~UNjw]1z'J:Dg}ف&J ZanDWKLu[>~N֣C6Fg !c;.&YC$Fȉw|rg4I4`Π#]oIIv׮Ez{JӬsjSjsn`uFUs tm~l&NBVk"wx"+Fkup"l&l:+'v+HnY~nHZ5a̖ybc>Mrh`$w.z AӶG/p" yjRb9f}%Ӟ%Erc(JJ y!\vo(ԓ^>/JPAwugIZl{?7)d5HM߭WpS;G2x/,J!\Q9o%_N}}/G"v_Ey?M)( +|*W:l [/*X%Y+Mw``gs`z&'PTԨޤ(lRd{ʱͼ/ =bM+,Sˊ'aIC37xrvr?˓m"8wR(pTHҸڋtKө+TAG~ǘ& ӀIb2F_ހʵ k ?Ń SCC~DiTQ?$XfW&ro|OMj4Mo_7D $ q|\E)htOk k6E3DIg}R7{w7rچ?ŶDQ-"x6KhptmUWk%0vfbR &-UFjJē9p"K-R*k9%ٕ[]@2bg-slu,ʣC{P.TKC˹M~0 ,".ii(%K&N# y]˶-Ѧʬ4zac fn$ :#|L^mde P@|?SK󳰒$Mk讬>_S %OSSJB:vMP0]O˧]="a1)5a )¬tVG?ޏ%,aΛvL7^֞?}3 д'8CL8Jxm#Edf8:%i;b hJ# >˧S6PhA;)]/YuܧwB 7$ewmf6Xw׈X8?^x}[aP9X t]2'z-?'!whv]pEZ;a]Z}K@4Mdu8z.<.C]\ |'Xj`4}U.BP.q4 "rmP^c˩oWc0}΢ŗ 먢Mβ*̳ȧ\W=8zٗllNG {]->״yOY.` g *gWG^M:q'rwt 4\C.]f R_(ֱE#I׮.sE9ᶎإC; @vdx s!VCJk~ywnvU!t4L$lR>ʊRKD׃j%SQ6az& t{C_GEً6gIG9Ox mͅRX'W\eVVk|:\TUZ%K&4R2?l ƙL+aѢ=ňMoXYx`^%ozob1d4)-k$44};8TqϴA{'9 $c_{ RFx1a8: *{~r'GP(k"9΋bp;FFȺ=quJ6$A15?Nkz?M  `ʙd^W7;N Qr(TW2mkTCq+YpA%!ȖxMzKK5Kd@ Qw„_03_w7.]:s&d*}SmƁne9'½NmȎPq$oq$@״KBalsm':&Ҭ}*>9W}6)oPv+<ոN!y@w1EMcb=KD,n*f'pm)ߙBTMo4q؃[j!~Pn^ <ǷՖ:\NԷ%Fv\JR R#ԡ%=jKQ`=1oߌ&ٛ YB VyK 1gY i ?5g漉Zr;Pj"y)IS*LZ=^k~y9p'pkNg2^䆝v8BcvXRU:'f[xCZ*>SsbpO[HOv\zY\a4e{'@?Kj(؄rpھE\/E|YiiACȺ`VuB1gVA{d)jO1mgg#Q^5VOE=NIV(V;َM[fzݟ.,a&["H˜z"/҄33fY& c3Ŏ[ DzI*]VDFj~& C?US)fYOd#FRYTep/ n~20q~Yv)aX_{X>4]lkC pLgk/.J&aRY8wy|\_y;̰8~qb1Zv>vet%[bPG&W"d <&Ѐ˟SFawVbl(s-u0ZC[v'>u".ӏJ4VG#Z'Bc&[hk8wmNշє40L @7Q\hEBIWTx,ߒLoV 5bhAѶ!ٱBZ6֮]ʈ B?ҕ(NPT,>P 9V/(Um̢As6m[ oo£|fO{h0lݭS5{oMW_~ez"E}c %^r[6CTk1װ`@t(b9rޖ- -F.(qqc8+'GMo;.<'ݕ9Ł76'-:}EUq X>`f-E+0Ip-7cn:fV=TJ=}QdVC *yJ]FJ<< pxOɷV)ڛ7Mns$A,by0ϠmEdW@Lc,;HtٲTǝtAw~ YڍucCA9|c7|hiMwji}Ձۇ(mhsMdL]U6j4>Ť#TlPQMoșEp#J& u+X4h~_!'n1ha`S]r^ҽ_OAYqIC)-"9v\Vx N"ʴh07+ u]+AeB Y{Ũ+ &g};*a^q:""Sr*г yÚ"%KoHݪ(ż5|X[f5w7G&X\ٺ߅!xPŔ-]\TR|5ЏL}lYOĂO}P65EMcVL޵?c+A݉7'So wye`2jN9mv]৵'rP0Z"?~&}7c‚`v6ڧě`9_Dp5j?e*ea4Ep~>"Н|" wj\4F.L]@9z'>D,4kdNDN-<\I)IQ's~lQ@J0qL,2" 'H *,{$WJ4MJ\?]34QHIlCy&iT/1!Am] ]\oX̩2fp VjvVJfaTiFM ց5KNvڠ+SWp$߰S@[ED~,upAP;`lAݵ;%=۠bh~VXdM~h^[7 m_6y%؞=o ;+yc&9~e7YQX=vxY bPVeⱉF? 7IѾ4 PSoqk!S5iyzLM/w<)50'ê4ك/;5CUE$n?jޔQd>#l{%M^ ZuUUjD'GR?^YRu@bKm"9E7yRвmM9C|# ( _G3Sn-(R@ 9翦l ^[:2J<Tx0|oKnoiyݪqg!p1#ĤeE;Cgfv;Du$q:8]~8Qq_ҦKS O_m^xK=;0e)[/ i£}/ 9ї}:#\ExqeaC`U+-kߢ,a)]X.2|m:way~KiV*f =8FΊ5.{BN^ᩬ0&}su]a`|{'A҃7ƴgHF<>`]qFg`6i쵪|s4 4G9/ Ka֒~7^1pףDO"Es@֋aªC{y GY{'v6no4n/~={v&`z=+`RGZg*kH\A!Ne#E"\\Xc{yhću8Beb\ VqtmSw>!";w#q44\LV01dp BFYkGsbXvw3=rD3rdqߑ3KPRH\еF:K{ 3+)8Nn5uI h`hz%(ٜA!xzi-VH}(oO{c&Raɿ*W[9mwgEqvȚtrz⓻fXQ1 pB`̉@kY;>#d=nd.xT4?_sBݿ*Xm3M}s*G3$:cf\.s)X&ahA`OLJ~ޗJCo˹r6a6HWUyfR{cV*]`tQy֑B&ݸ6uyb܅ }}Ք *7v\8ɈV(j=0 ZPz,wrr1[q k8{œSgN6W:HwkaHd =1o!m;P= =yWߡ|ם (W?XNzxiUJi6 0^ sVH1>ph6J[y5y gMu2~#Q9åپh+(Xm.Ћ֭}!ܨ{{¼]i8i.G9_Mpy *`2sZBQYj%eSמe~#'sڥ^u&Y<<_Ww恀)AUZBA*W%+}Iue2O6(!+]R=(8EU2}Vh0TH n/rpIJ}wC sL&3pCo};u3 u쳊X_6k[MGZH 7eRRڈ=:I [<}7& [9Cf?&v2H…YaC%=H!OZ*~/ͫP:ɺڌ#?.΀jX n/&l>N ~߄x5|[F=h (d+̎vY eQfgR VKfEk4sGԗ4="+gdKiJ?rUѻg65 fpq7: bXW؇ cc=8RMwQ2ChJ{7s1 UMCA T GBшU m+JNk%km+e)c"΍j@7 +8$@mփx\@lk J@1AE 睘Jz/y)ca-QEV]nJXDj p@ $6v0?0H6 ϩ_\ H~JZbi0Z+H&Qj^2t?fMGv^Ezր ˉ%cu#49i;" >bQ }'%Kˏhtp`?jq~]hp8cq_?wn!7r4BʯL{;"jζW.K}E~ 0WSB;$ZUh@C=))2n;dV:*eUչ2g^wLۋ%<qBAbϞ uǒKi%dM޷$!HUwT6omOW}Lo9!1cykr۷zȠA5~t _4@ɰNN\l[7Ʉ~WJO'̕14G'*w?0m`ӤW]v3}-WZdͧB+څCˁ$ylA1Ҍ%RX~fHU!|h'9tr{$1֫{b \\& mfEc/e@ .ҭF<]HRgI:][$s -+n 9ZHH6:zov 0*2=Fw&{poqp.$*ˈF+N7JdVX --C.qФ^TY\d):jAYt!.M?uk>ݖZgOc̒s J1L2P1t2-ioj¿H-g]NZ-Vp Ω=ѧO5^?2צ@Y2^s6GzyAjԟ5tl:a_sy;T$d aӫ\#eik9q#ח߳Da?G~p}_Y n 7Gc4H?mgʀjV3 NM$\ .\e"S^wYYrqf\ n֧nÙBՖ'dJ y#Jm E<>-.ze*T?ffr`^~y8'w ʆ QRUi.yL).HDG*9$ Feh<̋&"Ery3t~55QZS]J^`߇ OA 39)%n>IEM߃RӃ' fRj㙈vsevlJ'ͱ2=p I>]ppy*ykmJn0w,L۪co!&t|J7Gh M jf'M-WScMuIևn =-R)΋p!%^pNU $b{_  BAXC:%z]V҂5Xj1DCo^ #(0^MGyX-bۊ?YKp_+̈)3kI[ nR2N {F ާޥ֤zG9ӿ LR2|+e9UT dpEqM$PmI_8Svm'1-_~z-I)Nm^_*K$IV.Dk;Q5Aa>͚}_B|4qD .[=ڼʹK)p_lTb έe vO%.>bL[$ NeA7g5seD 1C T5ڿ fk7Xi>S hr<f婤|‚_b.gkCIDddO3SE05]yO}€j ?_w0XQfL7:>rAIbc#9\cvmd:w=S]zKʹ!txQ}1mJD,ؿ6@N6d~ꐪMVj bx|jVKuiUضWlMe @Al9MX0&".Eu!Ȏ|4l m̂hDd.N4HvDž.})[A {+û2-\JEOx׾+,痍>!o[0hDT,,yZg&- 5 r?ܨG kŒ2QWE2L;X#ŋx0ݟlǙJn$}o<1($,+ڊg\Z/FH)úpu]}O28-2)Aa Xgc}׈3t.KbdOY n8@aUliَµیuamR>ᡝ6\ . Ț'kؑ_t<)W@VT1ءmQҐC\W^!_ߝm'P3*h]0@4Td%+,nŒCx/4j&+]UebA$ͤczrgzmr` UjT^DSW2I^=㩧*V3~%)`4,wtYۿLQNFZN&he05JH'qђ&o^cTUFɽb ]|P?|yh,|Ve^v]pe [Cݦճ*YE3rSJK~VZʗد.l?b К{Z~Y1I&]xP3  /Qx&ɓq/{ٽCZ&WǮe~ ʘIZ2 C׮+:_}B, VY'] A>OQ0V4ʒUCbPr^k+|NS64,3s Z %4w"T85)Hݕ;o Vj&:a"Ss zՇhdžHEr#ڝrYDb cU!}xCe_k\O|unoXWX'3XepwEz)L0:o|6+"9ðQ|. tUDK~G3 $'yocr2&g W]Lu|RTJ_+֛Pk D;ؕ^.I'R/FR'K*Ck޲g:'RP=2UY#Bw΢ۻBg.TZY2T4f;[Vݺm=Hua-iDghLb*EƝEtZH)5:%,7{5q /ga\nmKz(~2&(tผyX8/48W5;cԑCMQ5aְ.)SjnHmihnhG_L$&rsph7PvEV#b ,#_xtD+H/DSv+D),D'DZ%BAΟU(0I{X|]3~Iہ҅)t\ y di{)F?"qj=*xtn G3gM#xXN) 3}`P+ݿT(Dt@^#=B;[$&13n+cXq77RUʬM5ߤne7bY:1h 1fK7!"HYa/&֔@v8Fq'W~ te᣼ٕ,%\fdmHi +W-3$SLk鸶qNO4'j=Ch[ 164o=m} kAg6c#y"zF!먊,s.ЅTpAVcu 8}TFRbȉKS :Bpk rkğ? omq`Ø%߅S?4v*U(4Oa{/> rǂ𓠁&;2^IHkVm>i~A@xMni|lJ,qIQɶf`0ChĎ2SlQσGȮL1Yx xzlVޓt;ǑLtwÇ'7UKTuVk_F&Xkibr-ZMm HVoI>l˷S#2Ę5b+׊KGgFw6 h˽:~6?DŦ QTWg?FྵX*D~"n \lid"=ZXCzy_I>醶ElL_9Ce%EvKC86;[*49t^\$I4J,L!yaC/RDaP 㛅N4H6DeEmgq`L8qK!$B}ɧ>чJ nT[~RNUmiasHvc"Ti#9FU+\lcN&Jh@8$1{lj1xI=<R .~-s{,R-XvL~_vVpK_JLV f@YM࠵zZYE4H 8=U[@ё?a(C.g'e.pT o+v=;΍\kt!SJ&k5K]:u%3GHgdϧ<`$9rirj|`Hߢ%+(|?\wy"ۥ4O˜}cZ +NI+c;?j؊"0xgOG4aW %zⷒC_3$ _ `|oI1vSItH\hd_ޢj6m G}Oz=O''Kc-5N4 ؕGw! tOY~{|1egs}q//K`#@O>q8b4 T M spzI;NT?5cvvfX&Sp;P_ҸSGLn@&9+_ MR)3m|^W;nĩ,,!LK[}⁚G12/YJz깦$|G^Is~NnQðKdƗP8(y qvˎPS9j jg÷nUNp0+uIs]<:Di̩)П J s-G:Z$*̒nfn??f-IYľww՚WW@ U"Kyó3# )+C|Pgz:q)3X"D#[ewco9@5*H 7|o(Ft' &z,~|Gh# Rո qk [9c@'uA\&<]qrn'c(I^YYeC빁ڕߒtxCMOAy5CSZp3,i-DrAD5-swK'0EN^-XHD.i@ ΂?f%MDRk6/̻4aPF,}MrkAO=GB"mX~NWo46uLbكS`ח|?Jܡ"P\EA*P*_ p%, Pt"1Ly[:a̲!MvT=Rd햘򓺤{p4տsJ@QW=;/ÓA_(7< oK׾֨JOo©?Og%[Yw]u 9NqPkb3ْQ‡o _9d#aսeX}*{7@05JI'qg9Wma'ᮐW7]-];/R>ٞ1O\-N|ޑ".(5|FMJm*&QQq)3x>z3mv0q( +)VlRV+R9@q8Dg PSYr59ԼZw. ƎbڜCC%UѭG#I9N]rlZ1!zb+!ٟ.dhwTxb]lKkm5#{R`rYZtҗ/'UXI/! _EƺIpd|߼>-\JqU ;!3<2A^&nu'Pcp-#=[XDH<ܰ? ai> vsw?Lk7AÂV"w,ެM[@wdD t)Io2 ,(g ?TؔX!0D4K3#;H E,O>ޣ^~DAvq*Gj^tN)DshSt;q@R+L]4&~<p$'*Pz{DM-أ91\/[,kߧ{X#Hqm2wީsa.x=BPp~Rp"7v!).mY8zPj;cI#$N՜OUݦ!")APˉw3ci@H_}~bH?i)2y ǯ_ⷪ6j'(ګ*mU^ P֑C:%-s@bS"_&X8yVn'E_}+2}`?} EwOȉ4fMcO7=%2P  .N[ |r}/PLS=Wk3s`omSL۫ph5?c~5)sCa2YoG%[-D"w#A J:&()2WΰpGPuqL IF cMKљT}N!quWz&jy1&%4}Ls%f@1jyz=5!Ԧ& snߝSF*^ۚ=ZJ3GyC9oq6¦>E? +!^4I[ YR-R{0- F9F߄z ߇9ΗUb;e7xZ,MP9yb*ZbE )ռP>k4azb>}iG宅1 @0x^(w_Bh$f?Gܖ`üuSKcי-+k>D2]o]]ZH ڠ/5`.cnIxϧ夔:;oNJ(3͉QϾ=1X`-mf(sKh&&\U_mc1+!6_~spdD miJ74"暜kH%?174eFyƖpkm0Y̯:I p~!$3ܥYd˝]Pܯ?jqx*v_!h^(ϝ;ڢ*Y0^S4 @i3qiVY便b&q5ZCa*ʁTd 7M@tA{pㄇִŊ# #R9RnɓHwH_^0!|| +X́tˌ+hGM8ǐǽxG #FΗ1|7fGgZf}"wO)nLm4n9M/Y^ú7v| %؄Gk]VWrsIBMm<ӄni"dO<3n3;]8^MP2Dυ,.?c1^xU2ΝR,2^X?4PP,>~8B~(uxBbR3蔶`.lluƸmbSN<?1c5;`F 2_?S<5įC']fZ(d}Xz˥̇_SG#U`Qm^ޡ^p@ġ=0iUZo/LQFbF|+vP\S)# FQg%@ќ } ;zNnϚDⶉFY I[k͉gN(4t)*>YKU>p<KғC C)1B<б{ ܊*ڑ_uj[n̒a *P Uo)x-mO'WD5ɈmZZxXrcaPOnrqnT5&fl@N'2N@.1< EvKDZݤםaPzV vh)9DgB&&[§߮!f۝Fn~vvv)bؗaYGWR H 5R?WYCQH%06e9'щh4=]XWsY樅4G!V }`\ H# `o1$a 7X$Y\MO?y°=U3 ??u'wo:g:c+2'eҲ @e]m#H<;fʊѭ=N|Z̟ĜPyFVsV&hoS}8|< v,ٔxeٜ\0hC/u?ȟڟ80kw_v_nBegSH P4JMA&yq$Ap2}iliNOR A:3R3jN~#VP_}寤X :Ud至5+uӧ6&A$-g\G PjBK Xy(œR@p$>\N3ldUCi6y0V$iihj]oRzFG3u*z#1޳< e]׌nz_DD<.=A+qK=<2 %m)H8u$g E/`@Yl-]'IFN\V+$4is=^y2Mj#xT1l**M!24hd*ycTsxo2cxfպ`4 T3ch:0:@tsg?'I=YS38sc>3}\Όc34\>i#_3>^y=n9]D') \#3͖YѮKy8֡j[ʝ5:FggAw/膄K%ˣ<=sY77q𑤪wS<2{|)vZv‹#uV*K =E.Vrdk$U؜`\~Sb3(>B.ԞI'paכT5FembE\L/3$]\GgW(M9kʱbU9>ڔq$?EHuoF 4Pu ~ d6^s \J '{^@]M\%[CHΩBsx6(YSRI/L mjh^ ѰԠRsZ/ӹ%'^sdBL9-V,cA2tsy4Cw ݖh(ż\K$QKZ,-=5x!mI\@ p{ӄmaVD/˩*8MP1So [H-h:mygzm%jkbA޾X=+Lf0Nag֙t$@ .bWw^u?8PztpxtBxJX>fn#Q0s: `j4d%^# |mªEX^eU bz'6Ps{WiJɜ89`H.[e= S2aÒ?*UH1» ɬ1Ia7)eH7B6d@B1oU5xkٚ 45z`) _&ڌ# S4 y'9E,ᴩV=thg_EģФE#oMunrtݗ]7"7zri/n3?Mc7K, Q752z0TYhݪ8p-ъ%Z]Q\k Y5AFa@%S?aڇ֏ |A;6(ؑutR`H->LRՃK N8WmDI!,^r?׊}V>R9Ѥa+k V;n eTH$_sl `dx\[A !B0-i|zOP]ͧʎs7Ə N%ot[X剚l}7sKh3 hZX };81|ʫkAZDzRg`դp&Ǥs)L,XLA>kQ] +Nf0n(zor-gtr1>EVMZ hv`(+=?̘*yA>JrnyVV\<~0SӵlE`K`SCy1*n:0iP츆m1~K^V ^6#ɥ Q97Ia<9XeX69%@Qg"[) VSnzxwf/X5WI,2B"R@ȖV 8;d3$ȗ7 :Oj&z%/h=-x78 pXsA>?ϴt[ }]sWkc{*y_z X͈^y)(Fe%#Q.FpSl|3J繣ݷouE =,69h=4`4Ք$yu1jHf|kUaeA%ˠq05=bդ0+lA)q+OgPj*PȪQ8.|brl< Jfɵ5$Sl{Mv]1r*f84X8{+m%3U`AmoߛA $^RFK˫9JxBxܩ?vx>;'(铳mI8S'do$)%{7,cR 2QD[9ttŁdY>r TBJ3C5̧T%))/Sf?5=op1`O~mjh նg(::-iGHRIdkӨjBe{ VX` ߖ%-?\N3]q=e=w-:8_W$ɸO׾\UpE-iB3z|, w=) pRՁc~φ-#y)rД\-OW*a*2Y-?S4 K.aQmL#pmNc|w[EHv!, "5os'Ƶ"ED5G]؄F|6Q½o*nx4|+ ]V)Zdnm(NPݒ`E|85ܲvQ(WiT,jsF`aKs*֘-lQ?ت[%n4&^Yg w4嬘*eS M =Y/nB) 󀐶~MrI}t҉t<Ž;򟹤󈦅Mr>|-b-'2Ҿl(4Rs,6e۩wŴd 쓳ymhF#ə*]p3 zu7 , T0.DVL x^'"8r8xf'/=˰B>SR_Kp-x!>>97x[{"7*ư5d[攨"5  <@y[EYA}?m}Mw;(3ȉ}Eufk{OBG }FN\ p Y6emr40kG;DOk\i)aGķC&̂X8gB|M.󢻤e!&w ЪBy+Sg^Q(|*as_oMR!+-T @ jOJ &.INoW0b* /n<]W;f ,2:#~J-,FrŢū oÖ \%V8s١IeO6H$NK4A F@L4sEN/x@cad(y5PWN#;xZ}se@øk-r\Bcs6f #D;x $0[(VkEMު:=8Ff-暅H_XNw LSpzeH,5l ֞Pf.&PlXzO&?X< \u}n_Lʶ=RﵬP:4+ixJIqhz Sőjw] n BepL 착* ˬ]҂]a8cZ҈Uns^1֏SUi U40:uT7Um=%6Vh*2 NwxzUOfUqH2Ē1&r L\6!ښؽ"!:Veȱew xPϱ`|tm~TT *0\OFO* D wqa%B&7Lňi̐1 d 1Nw?m3Ecw5^" JyQPhv$ Sʐ6g>/AMtg'&,Rb!c%t:q<ɌO+ru(y#b|)Z^;Bϖj&D F/q< iycRz3iz}[۞\i!}헝ٲ2"~[O ضeSC #H}# iNق ֎=24^N@=84ߎ%S!D{z3WdJe(1keJ)'XN/֐Q□U*l8F^*#jӍ:+QOMs4ʼiU9!|D"P IXhSܔ0WND%Ep` KC4h9 B8Ƽc Aˋm`G+ZsS,c`nw!W&Bj"ܣ-N @ACx.3AB P S[{,ntkV Ha-=] W2O/;Ra$OfS#XFIaH <T۶pƞގDAN WDy؛ކ 9utTњ hYuOyBxA]Ϥ -bvjR?זFd@6s>gIJBvRG7ˀKJ]ޏ_)z(ǵy$i]&ooׯ:yn!<(\0IuE޺d`(5luцjI~Tt~M9,{$666IsRMZ ÿ C~ ChF[0q(FqL8chAuvv ̏c{: iKa3n7^hK'Cδy%nۭq*Z|!ܰ:1 ɹPM z?#$|pgV{HZC̩D3$ +H*zE@. L(^~"ڬ Y &WۚM(:_t~?H*>ժ3n%:/Z,,$y},;LEUUg)xSdfj\9b*7M7120a͛ VG<"-h%ϻsOwpvx_WdՇ: ܌Bw7*CةLh*Dk8 EiMi&+EOW )mx3Yv?y_LQ0^-;BՇL^7YB"3W'"TU'p[[!H!g@X|対i(=;Xlk82x§.+IUu[1keD-k1euq5>~E Q'l4o曗C3E$Ash`5|֝0K $+ bU(o`Rw{63CG q 񰮸!@l2Y KE "3ʋKw6&u2Ҽ[²sxIVۮO𦑂1= :\?* iY,7fkdTEFܲ+K~bj]Kb<29rQi( kQ]RZ4؅c>jusz4] *u37Ki0sTnUƅCBJW|.iX<5FMnؤ}AQhYgUVWP2f4V }S4ѹGV8afck74 Sw/s9S8p%dS Z,V)P&xC}ê~K5X_`O`EXJs;9{m S跃Ch`wMoIH%!hZ>dH>"5ի6cGųn"\UT(stfl3,_U~/6.6 9:mWDmjN$(&mLLηÞW QZg*dh994|x--a[NٻRZ1N_bz=d=,7g$H!8RWۺ}Pf6*$y)䪬b2hc*[s˸1D_1PrIfDZ;ҏ!bsVaX4ւ"1 E/X\0idH2M68wZGqS5ByZ1$FT9_>wh,zgbC Wu[mE`G`j JkТS_*a M՗pp \3ut:ĭNxuwC;o-'@P̒-va&aJ%0zܧqT&cf)♎#a7}U3Jgq 9G V¹w8ܫs$.F!!3HG\q%lUp?Į$R j0֕R-׿i77Z Xof&\Jfn*ɥaPWr1 ΊTe~w (d=y X2BÊ-)BOq2SAyqBm}'EA_+9s&G+R]Z1Y"l|s)tg"P:sxv fR/ zn?{p FEKPZ 1RS. '$Wu80/Î;tqTnDCq.\7wzVaR&_st es|'uG8}$* fK5|@sѢzű:(cTfdc=z oiyxel)8͑%̄4dP uTjv R>)p Y)X=3wRa/vh8>O~Ԋd^" <3}'O|l8p ,of쒉RDN0YW-,BqUuŮ_ Ov篍\q[d &=vA2'J!Jǭ(K"i}>2ոGy;$Â2嶷7,06Dƽ+EA@3!s_x|2#hk%ޣ&'&5iusd'pQ*# ^I䧻̠N/y=7s`lO.̤CLRmWOwa(*XSa_-? +oʿ*/{#E{l|mV͟8Vʂ^Tcx*O!ӻ {| C p+qc_IN_I $+ϵ)Յv]iPȆh2/ HZT#45imh4loɋu ` 2e>UC! v./ d#`мcOm·jSu `, c]l7ѵp4K) \wxv:(nWTX`ή`r`}ht}/n*^h (Β-ֹ52xMldF{Z[V#(ldֈ_p Fj|>'mK'_ #9?>O+r`}cȕy&6:Zl#C5cA9 0^s=1afp0:ܿ Xؐ.gǤ=wH'6xq0*2ϥ.gsmY;L︓EgN#?vxO[?$}K}*ji +Bf' vu/VVö[3 %N킾RioINlP<'t2 9Ilʵ; c#A ȧZw: 8ԝacȮIc#@ˤ9 MF Q(Aia@hȋBÔ6YsX8['ow@\Jl6O?F*X3JHizn0)[k 6k_ Wu|K,},h~V/iAEOKp Ds\}e!>4u3+O"߭L> ._O^.oXL_*Ԙ+z)w(؆%e+HgX>t:$=NLky'`\+z[B݇ntEŞ֒BuGظ ]"ʟӵB wkE5̮ J.v> d29ibױb5p:(f+vZS ҵZ0Dl1GkCgT6&=#G?9QK7֤oJ/d~vk`L96^{_FB-}7~Ʀ <(gY5ٵ^0N%  4NwL3u&AOJ 8B{(QohˤEBò z*K1f8 l17 XCIüP'Էn/5d›D&y5*avzX($%]}, &rp|GNsp<- Uv7!)\cT 3e[W \-uPiL/lF)W*@v";Z`ܖ:7l8Pd  itQA!pnkK6MƓ<>+!V 6H%^خ.Տ!UF|]KA,oI*:^cQ%\AXQk5'1NV@YX9CmiI# rylEvKYpq_(بBժʙsSqWM_$Ǝiodm/E?#oQl8CEHt=GDNdk[Jip$9J9wY<>TT2!QdGX|l9s8~ ' icb3ܠ1/|^s ljt|{ޝJ<͍*JYgh~dv}Wb ;AU?=q־l@n2f,+,!`˓/ǐ"R@Ka%^"9D ,٬O_`F2hAc5Xbc#1֝K%EB}P$Hr{c)8,=d:xۈ%"P=tZIu6'6(-x!  Q"/<7zŋB]x1r]`W@aV; }sH%eĮЖtEZՖf<КWim_7j h825boM^k!vMѓ-&?_3>f0RVfjjV*0.:f<eFIL C#)J=\Ɇk$Ć 6DߡzdTϘA{u0 cٮێrZRf+bml #;i%DпJv<]N#*h;ˢmMgТCCn7td|qZl1hwԙ] V| Y\CDSp3p&֚9D$82=գf}/5<"4pl"4ĤmWZ'حǏ=yVQVOY1h|9(jdN@\m;O|*Q蹉ʀ+md9^ai!>qڜr7zJ+! b*aD9'd3djwIȖ#63ԑdJ]DNs9= \0cq% l7㾉}_xS!(f:&g+20q!ڧ-eKV>/3.e5ȑ/oTsK92zJV6_s_b2S=qUCLAF 7ocZKr3,6Y厐l]$є!6qQ}ןTY⸕Hnkei.%!V?f2y*/ Z?aSoU[m'n Bߞt7$@ f"MdnRQ &%C[Pq& -ԒZCP㖿%[Z C_g=krђH4H95;6R>7j]BAlé ±=Frb߁̢ĊD? LZeYY{W@m3̾8ool={UqirJ_ hK]d`ȰpDtq#7I+V1Iq1;8r(.T,T䗑nTŖRh W^iȷA抓QK-?B1F8WbU䦱-D=hNIl:;VۛY6+9i-vMw+UhgG%Yi6# lÄt҃CdM~#\dkM̒iu]0oε*}v$K]{A +UU Y^Gck;uJw'Łٶ,ɳ L-j875o_XDE ^5?"Ϗ/KsUM_G(cEm2M#"]+ZkKsn#I GF` _Lȓ`Ao>-߷l*#C3sfyOQ [ !Sz>((LwV\AVkNcvlnF1q鉽ը f2[`Q|Ɋ3.Е5/ d@NS} KQLk_;\G3`HյюnrH [h9y8D|*XG\X3fouad?-ByڽB]FV#L#Pi.M6W>p9&VZnT3 շdq맟ƚd#{5ʊX#Y6VrdCL;$t?kI( ۢu䤪-2p[bž6)pY-[m4zge>*Bcrc+_7EF&T`ʎ5}#qUP*Ey 4O+"]\Ii#e& JV~bm<7X'Vg"7~!S,\D!aځ腓>KB$k䕀PZ/J32T2€Bx4hb$ Ͳ[mX6dgb)g9fF fBi>=hL#C"RO: ףלVÐ&DaXm+q Mq  p w0N I;>fyj%`af| mq20~/6k5L?x_7Lb=0[9㙰 <izsKxk7&Cuh/x{4A |j\f]Y 65;׈|_wC+@+35EzBP)H ߖw:Jm I왴)1}"B|ڦڮ}I _'`BG=Y&B}(BGZ'&Ƞ;tq8zP'HC_@sk|Hpo~yIpʖ;k^>nvJU @QXmށRcldN5+ 7E姙CS[i+v T7a- ~Ғ4F+UۏaQ{* \9ԍ' . ?D 1:TPQ+*f f4R%\ e\= :3s.C E+˱ԜrE喞x~׋t?\*L3ne.2_' dìwsd$`>S'lė|v$)BpovT8qw }6Y-ri~Ko^Ȇԯ>Fy4"d޻& 4V06W󬴿x9R(5sB*dn4NSeH!D5S@|$B6]!9fvh%ʲ63"ʳ66!|aXfecwi:ơ7o 9qjk_o%U{ӚGc}fJ73?l($Uc{c)la 'dq\JRpdk,Z"1᩸}m;z vmUƘ)s:t.+U;>2!gqǬ^6wn_rWy./L|ػ4_V,. ʵ\M4Y89d&O_OWGPlh.Od7@|X͋_|+ѻr"A(ӑA "!phB++궔6 O>9HmSOL\slzBhIPkSv;44 ۟؞zKa)rnZug֗Xbd,Шu [ULW8g2'bumL3,q@rc#n;b@Q;Loov=%EWƒ6soPU|˓Jo 4˶#ׅ,DZwOfU6d? "Ő E9V-K5ak-'vWPlzg-WeA$#l{'PA+K}9Cki \5E%,% tDv.n`j}4]w - ͈19H^mܘ.f%k݈Dq^ IK/W\#a?ElCmvv,8miۄeRi̟rA}~+`AR!|̉/SIb!>bXlK7./?!$ڵ R ύp@LZLV f΃SKFCZ͹vnb̐zTtИLG ygrZ+e=^Q{rx ϊT^v5VCFeej6ǔL*ʲV,^}ޤGKYkimk!wxw&~>[57`!x0@*oDDixCn,oƐ6jfMՖk}Sq ^KE'QoP!Naa'@MP-'|REIrnnu<{SF@c xkBw1? I YȩY#Yw |l^D&I!Զ7|q5BaSN~b3b6ɜ#؅7iVAz){4K.e'E=MD~k`#4NNF,rڐM` Zub ynd7g#zs8)t|ٹ4ųRZ5][ TN9kٷ[ O׬ǃ]Bؐn$h%yi!aq1>]/+48 kϊ9d[x"OJ/WOcN:qyb+M=cJ&mhwʺc)440rNoT*S͊cc?wɭ =rE@rZB޶=ڊ7MP& q;F%(1m"Լ33_cr7`$^ zRtwF<8%gq°3zĢ"xK)i{,._@CtTt3^kwsIw[fveU1ذơq&AKIf{l,Ӯ;ҤOzUvD7TȢ:{ />m~0mQP {ͶTU?>Du`sG"{6hzBXDL#I1Mh,ax%1,X\\ΑjR J]lZ> Q賕_B+Nnw&n8^-{m6S%y|: bHO9(i}ɸدV[7yW߸' P Us;%_gR=mpgbNpK8b^amt;j~\!/V0yǖGlQIu' ?;4&6jZC?;:csĴXkٖnR]IvȢ`Lb1{Б$jXI_牿vh 3ZB|";w;fOT2 C#13TAo?OX: ;@9.#q܁/؝i9ͱj4'هOYt^NZ3BE@x"a{X!CH%'F6e*J *So $>լ7%shASݤys b'pR=Y;<ϋ+z&g; Q6Tc ߾͚nRvQM`qK^뿾.m( bA-KDHROÛLz^'/=`摊W~?'6bVakx٢h l qW7V3g,;:볊.qKf?BWЖeav(<ÿ ؑ ?[L(_ܣ(-jXZx3[ (yDd.йA*╭zlceʥ9Mucqrh@G6\٫ ?NG=l<|@sԃ_n{1ovm/*V4>WwDDWȻ/4AILCB黩AB΋hlv͝wfuB".b'(:x.0_3E=>V>wLR Ә5Tո׻HWsե򾴑a)$/ܻ3zUPh(%ЧiH Ybi7qT"'J'i% ==fz`DN9AX*xj-Z*(it$;Ʀ c>{# ˙tA9%$bBss[X:O[sD >jSΪ#A/7M"T@An]7ܦGƆr;,sꍷ]Whu% Or2 n=2V:{ϕ hB#6.81A #ndb/rM@Ɍl <G,h 7 ^ߪ tjlQb\#ʖI^1Po_$v>ww Cg^ح׻{-c},hj"M7:P6.(ǚ9"jja"a:nkf} mcπzI8:#fGU3#R%S,!y5t8qf$$^J]teC,eH˿ ɏϨaş#Е)Rx`Sιc~3ykr$X~1 4Ɵ[e:6|_<EtޝL6F3%--Hc8ؙ xIVVƥ+-s< R[L`v >'vk1@mN2 .lXL~9Ց[Z rQ}\*ʰgDZxj$坕Shԍh8P9F{}Gى rszlnyg “Apv'[Y'֕,ճLKsPr-/0Th0WmSp%Q\i[,h "Qu;ҏ,8~|^8(Z|ӛ_*8j7` tkC}C듾׶Hc3+dPAIhml0أ/z w7oikhVz>E(_Pbfd $L)w rVe\ ƆSou9g5IR7Q0CjAkݚ m&S'DR@\3@O}"s$MF/~rxD.9ޤF~-,̀Fٶ~P Q`Mz+BwwH2&:1c+NzETaZsDV xB*]X%+4(EYOBSW)LC$ܼ >\f҄]M\1fExxp- ("c(LRJΛL/F[}i+TV`SeOkoT"$'`1VxAF~TV'"I6.k#S_HĹW?qw/`2Is)Yt~a;pk}`6ť#GExT"p)Cq-// YF EV @L"[e…w<⩐ܣ%.idWi4##먾n( p uL^azV(b>Z@%{ |(TEvV* s-Bح2ںڑ=WԒ{ES$UWFK0򔧩ۄ}D#oQQ`|~D~M2O RooJ_~?DQVR~T~ \b L܁aAß'U2B(Bq#;F^xq9s2l}U&0"ݒ|C}x8cs\YH.N˭f3QBa@SQt1twO,1 lVE IEv'iID϶vPHt{_,1.1?_ 1P$od V$NԦ@{ȇeP* 6ꂩjOW徳{YN@^&F"?2Y}ʷTi*}RSL&FQ-3;k5M]_`f6xe.B]CynaCN`\Qaݝ;k DsقSЏ6/c{P7+TJ˺? ? ;pb(r'6n/څ؅ެ>3'`o@ƿOnAUy\r0Aј_gbLYGuJ氐?[H*@IK*Qfi72E;lIbJeAgۿ|wIsҸJzu 蔨 aROR%r/`yI0ca/U]\ }t h%[F&ܐWHN]P}ѽTͽތ:v>p R~}yo!~](HQ-vx0,nɻG"Q@ps/¯03k?,@L`',=vE"]R>drȸ6DUNmI WJ 42a04ImT+gxc :eآBds`uOtPԸ rN$6CP>wY|de^gpO)VBWN$,i]hyiE Iv=ŷ@Ɛ"XB)` sQ@M}N# lf>k12XDLM}2 G{T,;͠sxa}u9ii5/Jil@I? _)hӇu{M9{'DxF.R1.L_!a2 '7#(Y~4D]aJ599m! "ʰ,Etҫpvmݮ>>V rk^jyd~vH:f΃b&I6J:noƊx &>_|r!oS LJ 0[:ņ1`ËWKnPMq_Ӳl+xw^oF_uѹASlA9셀Rz<&4IxV>x=Ue\#_e7luWbK, L:lTv۟jObgA*yRwԵsNJ' +_h (`ʩ@6D;{x#}N|ndqtui$)Uܶ~N5+!IQT5Ǣ>%tW+}SaQ p )S.L|V+-2t$#)+֓(nsRw!ҡH MݵQX^=S6*լtЋPp^ Fx*eQ6_">0|QQc,YSn:9j 'Ӗubj YIVicPu{AsLay#BLuE6?BR*+ӯU[8`QF[oΪ+N X2(Pbq3R=(ҼK+#7xj1Y nUc%Y3Hl;3Ť(& 6f%s~a؋[`Z̦hFLBWÜvC3cwDi0:'hQжs]p34Q ً6ˁUdyHvwEFSkR1sOC6X[G*Js?wrXfYHJ+̮=wD_{:$ LH䳣p7B"{齟 œxAbx )3w $3~8aR5ȰBq%X9ŝ"WЦ_.-,DKd| Xqt@Ɗv]mv6X3¤+*`*oe=V|< ;ķEṵ YxOp@ tCǘ"Og1qwya] صW*z[10)lYd2ȝ+r,lONw_^10y"4R j^aaiDSԎZEm'X$s.>cDZ*~.F/;R=rű7IKӷ9%~1kt $FԒ0]\=d(όUSQ"4]L*?:qHN8g25K7Z;ƀKzi8&WOw;W<6";)LеS@All+ ]9!~קKӓ ../v 1e_Trdu|1:T>fd\]6+% ϕuY)+* i[TKrsqٶѲ` CFYiUyӬQvqVd/eC + D ^?cQS&[]1zWIa}6bυQwYa+(hŊ,8f|;P,=AyָX]y| 0zkh9z5 ۳^aA1bp"j= ؠŘS{xNq 6U sC(.W̍"Nh֝ďj(Q(q 9I窈CA (#>a_oW(n(LW#\xˡP|u$:-օ-e,{Y^/ȓm"f\;;!݅Yz*V/cؠ5Z:LI EU9eRBbuc&QjD_bLgs$ADL(mV1P.8EZSbP=f~HD?@#S-P,{Q]Hb39Vu߰zt GM0t}kb1nEKLe2MٗveOK5_U CB q6sc܆3DS1\yjt.<s4 Ḁ G4vXbfnKЈ&~bd!hX=1z.L#ۭA{~`R8#RKJ pGfk8r>~qWGӼ T癡wm6d#rJ07eX?QΆKaX+>f7g6ʮ1?`alllVU%:nBݭ`3o'[keZh0 mHگio>Ԏiz71q\BgÌ|f. 1O׬1r3;;\3U gKy f.[Bqj;{,*ѓtGH$ᐷZpD٣@eWt@/4>tV7 e niV =E]bȓ((Z e2J NB `1QqO*s~~$սvZgy(5)7N%([azu ,m] OZ&30SJ5nmVyPMQJn`%D!Dkhxxw"}0'YwUR؛"\~vh6 E@ikCb4M;OS_Vy!}'A$i{FEwrWo>J2."\1M6zwMǥCV0rOO*?e `z-VV.iH:, 4d)Ys&x1E&O MѠ4[PßIΡ&& kB-ͫo3fO0\k]pi~`bg4Z(\a.+A:ЊBs[Ps,{*Q ;cA"1-k?7 KFȶ"_[g1~_@bb^ހ0Nקў\V?5n!.?5aeR^ѥ" w6+_wӥQؙq|*Zҹ`>`uA(9MT`>C$AHb>8z ;[ƴ%I]ȴ+7r<Tu ""ǐx_A(޾TWѠs,*fI5dJEz)<6b!myncj>wErpfT ̭;ysݱ(B{QdaTEydî|~jٽM]Iy k(ɳTi_ooyZ=`A4ma2kKuyp挂E^H 'ߝІ:dcCQ{\mm_Ŧ)i(6`EGᕎG|ֺ" En3KbЖ1?}3!=(.[ى( Tي#]m2-9EA\y8HTKw]9#ڭ~F"M"AϒHV1{tkixBDc֬AJUu`9Z>U{MQEx[T&i2gwH+] G!橌bJh%Zhy]0Rb^8u nb)K"ft)//aAgAQ4jWXOhX/)ShRAH(q7mVq7/" ]o{|%[oj[ٜ,<ڥOqFi> *+C }7¸1QmleD(jbF'e,Q6ȕ)`5޸pԊD*qd{{IvU “5UBk-?_۵&8|*>'TYt8(yjF{փ^F7K-mԣ5jtmaV5J?*x#rKSE5 y ~ԕIz[vTW_jRoDbG# ŻRc ]a;|-^nYpZmyUQ$JYX;[~ɦ`̒BEdHd2>2îh KM;8s:%c$t쵞PPE!e{cr+92ݤ}0[ֱZWd@}/cG=͘Զopk!,l4msnWA''f9jbߣ%~#.QAPM)yXx=mC߹΄>A!Ņmqk~=l rig oK2Qglz݇ԒWh.rY0[8r/y~NQ^|*/۰{$7l!R[&611lb[hm㥈 UqM_@ N*2$@=+)@foeFxDỸ셓ex"Ǥ:)cU@݈EH`S]siumAxcO\QE(ST˯ǯl5z\Oo%Zo8[{Ny37o=}$O)zl&nD?GȭM./竂)*TNⱿ.(L2EC%pA\=#PUT梿NEpT r' [b[Nw4$D"Ӄp&!KOvT2>KM͚3ڞ4b,N~k]:HH}?y#UlV4o*K}y䘤5pĈ0T? LҌ&ꥻ@y 0EE7w4F@K,$z@ŝi)s:]n GBu2 2ﭥ93ㅏ·XzIT#Fca^+j7:f.ƨZ#X2x'_LiDYP!bGy{Oicg$3ˣt.vU~!e`@G =>~*@kLz]p'\]wxo l@o",kQ~/AyV&T8.Xzg{ BzR]7aReaK(=4Рfe6*l+~Qp\,Ŀj/ʩjxsy$Lp3ةg^1]mu~ AR Ԥ=CB@DvzyP?d؈ TJQj7t'O/de9 $;FCBCL5d 5]Ϥye`*JR蘃&U[Wւ_edTf:r >)=gcs 0)GOxR{EeRټvldi)On v~UiZ"a#?{G"F>c5,|Q*[SA"ŋF3]hlvx7 z|/"DbAYܝr ӚA0 R$\q,V@! *9'`k<5%IE\* Cr9D#HW)GSMi5=;N^,$qA;=zk+J^O!mq8';Lf7Fr8mO͙5]zЎ٧jϹI2:![cf' "U975YcnX u wp0j=:n[*J6"x$1|:@Li?UYo$K]Z?J# ay7P & V W# fG|S ?j fv9i:U-/16Fk&ASȚΩiP5@hGI'CrqLu7z(FhlPpvI8d Ԫ{.gIź܋oBHr}ɻ^1;"{8ZdivN%ο6Z&Q$087b)ڇK~ h]qӸ'Uja]FƆx`/a6 a~ Mo\5Atf"i^@ÎE*`Z$l?s'*ʎU>NPnbY;\M(\aKK۴Wvp <$nz5<$2fV::ɪz ڲŋ?[eՁQC[Ê [͎2a632+/m9!sZ8bQ7; 撰GtP,nY7c& |Y4Ɵ~g, +hMJ2Xn}B9MEJǣb9J}q|k_;bnH1(vq%5)-Sxgn$7t7:AHlZOk;LgSf, le tuُzlxtkD"Zqa䜸1}{Iþ)4G1XUCFw!>ix.TBquG NOPVDV޶H9 *s7n5af/1}p] Q>q68F(c{rH<&f9,0u-⁀l+HF[N49ۡ7;7+ Vmc\O"$~[BY?0l47A *4@t+)Lhvq+S!;!C齂hwAQXO맩?U:cEK4tJ'y=z*@e+;ŧn o !/hj)2YӬ&U5BB ֞W:e&`(lMLm&BmeQq긒4M]q D\.G]ުdT0žcy읃i64b/ލ!7 ^G3NF.vFIFM@֥rS_ 6O듹I>Wmy~m\ XP_ ۇD¹qA=o_!Cؔ(]7(xN:'"K)hc_߸5%y耯rID(J6C/b2F{XAsA,~\ϖv5&J2yhW`;0ITS<@edA46le4%?MtF $dWާ5@P"׋^A-Z¡e\V^|q*h\CFl-H;F?a,';|P!˟&xbdUco@>D6ř05C {Op|u ,FR`$Loj`Ya "ՊWk5sM9匿v =@Wt/w-G3$Lʫa.<p(= Ic-2ˆ4ta߈/yuvkxx3tLFYTU b`Dg qQ^FT\iQtU$'quY&ͯa=I7 )v d6Pm~? KBܐ:Ɖdzt*{Iz!^1Y>Ư][/a6\~Z;dӸg;tvᬛA}m@$텔O[,ip6-|UhO`K"v&=1MT]^?9}fKܠ[B[{N,Of3$mժ!}տsZhI;@U76} ?DA?yB]1$q͂8º .͞ҲDՄ_)v uB"ˆ-[=p*3P\s׿1,Z]{ ޒP3igA _q85-M9W2a:b\\٣WM+DfaRwnIn"Ej sO)K!Ci~.QƛvKo9VVN=_cwz ?*80ECAt٫Օw|z 6*lQXK‡K M֠s6PPFyy%(VQLZ5C\5YWƽh_DeHW=5d( kpY% rKL|.$c3fX,6ЫL%RPoMWEg+HOp+ZÜڑ[)c> >2|XR!h0#'`Vxvgھ!~td#E1u4K9 ӓ{-ʯj0άչP~B^Z|AuP@}ЌO'͎"C-rL"^ʖз|)^H|% 9;{o h!De35 wkm櫳 9_r('% d p-:vMG;_0ڳ_fr;:nAV2bF* 1RWƄqEixܺGQoYyi>8y /󪞪@yΊkFJ6"4-n)Yim_%aUwݥOC8iW”s$;)ەp}rMhA]_82%"vN-xڡ;~މO0djI"5I_ ]OwxF(g頏z'} |@,(kС)3O'Z6bϰ9jCjKhCB}z˛ytD}ŚD(UR) {INv={i̓RTeп]^LPݕ`M,#ىլҘ4 Z@_4~mcN:{RBR`,H_Eό1)̿rz?!q__|୫j4xwQruUbdI8δo#r7l •O0ت`Z'pu|OP@v~qׅ5mKl,2 Ž&oF0uR K4/ScfBHV+;g#Y2(+fdf<אj9H"|0ndqB T9' VCGmrUpRc ֫w1~s0"?XNr&ka8(Fj2/ޑ$Duʌ޸Yy(Y#Օ'ٛp#?~`kmij$5g aԉ:̩οGkVK=Ej,}E.-K`gX2gWfs8}A>gW؝,qƯ="sedѦ!OБ,4GpHz<9@X;Cq;vm`+tT3:[ j&3 nY2:uW2*vy+LS G SFE !HT(T۩ x)P)[~!k޳3aa43cg BhrcI٪"{ ȗ@LPDgr|@;3X҅|eɾuScT 8 9Ö|D4M$UWDN{4mLsZj(U%]=%3k"UCo/ZhKOW@@FBHzQۚVp5ups"YvB˿{ɪ{̋>.?5Xs?3g0F~4e`1\60{ Dy˻̻DT ӣuv A)\S*ϐ/{/!p#eLb ]:H4H*3on$J/'A)ҍE3MYOIH\FG_FJ,xTH(JCRh_ak;ZO΍DefbbP]P)r&XJ}ܗ!V<ʔ.ԁ'QWDD_<]qG7ɜ'8f]x:lXC'R ֪)̋.;ӵrDOyՋv}' QT Eq[eF= -qBw,%T ^EO{IδnAϱuhr/& (GXMS$,x>%/q$^ O"jT^!9YڹXQ:;<X|UɡV@y̖fSQa{p9@HC2Z!r쭉kTvsX~z΂T2pvDLT`[}Y4k 2Ē9'.Z$ z:2Oe:]0NQ5pzG:xu&l <- EPN +)wŷ3cFC-QrJW;o貳7yry@Xǥ}IPV3lĕ-㦰f$f Fuk3@/RGofI]T]M'scdⳙQɛ;H?K ?6`3%(f}O D k}y$ u4a!ս?O[KkhӷlJV9kfxz-ǜxs &Bjg՚gyHιN '5M l\(>)Z : ȋ%#JO ]?7s2[aPГIwG鶲. 5!f=Sr=&z}_QT/fuf 70~aJ?D g$|{M=iSJjuL ݫF[335 [V#;d7Z)T#.\ 6Xc!XҵքyE9c!*D ⧝( ph9|.%n,JEAdrL:FSکֱk

2Au˙4ENJ-Ę {Vu3B@q7B>mcd@^ 7z6:b}ɽY)ъ*FؿN}nT17jr!Y=3d$v Oي!G6ket3(nQAXIJ>e>xw{G /53p(yՊMEANy4o3[Ρҗ'}ڶ۸D.\7+ PA̒o 1e쐍g<(tMS57U-+I;hP8ZW[BZgźox?y w2$wT(@Y_w :6+X+Դ]eEṳ]̋`a׸R 䪊AG ms\Hi~J#5a%NUGmyF҈痣[72}^TqE ̴>CH< rbȴ3RLgmbZ-ͱ\jtE`%>p8qEPD'fP*nK5;a[ *l~D|aWgay:&#Q #W(9:ptDSΟ) Uа(1 ZEHbm@qrQox*v/$p2K_oB 6uAN\5aYқ#Y/{eo(%\os\~d$ي "swNה[ȦFygǽW_|/[3X.ok?c7L.V$UG!P}|{mwDrݩX%Z |e)y!*oAy_U% ݘouN87[#,k;ܨ8jǔT#D/@ ,+l|'YPrdOna8B'W*b5lJ'c:bjy)0C7C{*LvV=͌9bg %^.=C &"K==$66߶u|-aFJOpD04.r3ΰ3Ut<2I*f!KW^!|tվ̡5A f:sgj t$MdI(ƽOK,1^:Hr{ TK9GԏR yha̷/aˆ,د*'7sVz '^ 9,?Eޤ.'fxrb `E[d%d&[xN(2ѽrrF#=gё`堛C>؁OSJ5g,Ēpi>͍ٙz}* W, l_[7 o&174ȟ*{DRbCkRb0S,X#vuu,$ O֎v!ǖ}`~t"fݠkiߗf tJAr<Ì^wCSԌn'(YTʒJM ɹKL]iv:<2wl]bä1ԙD:coіL[U3pU&7^U6K}[Ĉrg.~4kԻ{#Ŭ;/z;rN^=\fK /l~JyBrSCUeRȍ`EMʴ@u$h/NH5 2;{6i`f۬dž?D^^u8~N/P`+4R;3SOa\DCDoN$ {w|@XQ[`HV,@yK"n;鼼 9YO$js2q33>M}3a{LI GK.ʚ,`? xサ0g6> ³:,N'mu}N.T%]F9HNehO6}S+m؃#8P|XOpZA[ZEjt wLGm;Ќ.Nx$z#S \x7.Tpp&`^w<~pJCLKXͿqycxW؈~aCP4@<J:$'sam(s$6䌲]y u$- [_n^|uDaZ7 h)~VGP'RXdx^WPavCی.&Zm_L҅ܛT8zR{|Q]sK?Yl $$ s˩?I\UτKR' ,Ή`SX2b)}[Ge! ɪSFt:}/p/A$7DJ_"a@c~U:Ij?XeKxT腛s`߃[2{ ee +$BL$/MiT_ JpvZ~u,fQ] U`( ӊ<kiM$m觕IĞɻ+.LL>ϯl C>TV{fjDj47A DU۸Qp8?^VSL%LH WǴa濍:N4:ti2+0rzsd ȏ$a0 Ӫ`QYc2c>)|=Z$gE~<tBl1rlˡp}6ni Ee3rEN@%o+)kvݛަ5i f Nh @ ް|3\/"è%PO!_.F/Ac{EF'?_? ls%ȱaѫO[\J7"!R:JMGI GB0&p.&+=[r]{$+VE.Kﺳ|O[t ~I$0fϳ0-zc멚cGF Ml-fF6Om+ I~EK DaY΂͐ 6Vn$.rV8NU}bW ^0eᶑYVG>!PI\>ԝ2_$=.nD1:7f7 O:@ 4J1\&3lɸ;0AyaV3M$# p}xXp8cRHE TR=Os#鹖)$A*ރ~MMn}]_k=KWeL!rDz'JccU Q{rA+UpO0lE=^|áw #`\:ȠVCPj;guˬ<ݴsܖ6#BZ_S$`wTym-Ƙ{Y%:Q64yj$򈑇S ; vm))C0gW.3qڿVJ ]8N'"eB42h֮3[?~hM^w,8%//A_m `r}Ď+IMBRP@vO!ȕ?XǕQ̏"6'Z ܣ-R#J]O{Đ3{ 'rQzelI@:6bWDMhq ίS [-Hc^1>DzS6'z@tTJN`i)(=D^7 OA>ǘݢ-*Jη@·o0{+&HWOf[ @# EFO;t]x}X_(okCb/]Z O>>L*\v(0T D&2v$) xr-}NՄbkg'Gb:ǶM*1E| _:-j(LfP’,q5,I0yi?VUqedN葕*.=bH!EXi S֟?2w#]*:dkf >mnd7T<7w= TbC,hAB'|懟eZ׌k-N0&%CzYe4"_<[Cdtq5:&6Pĉ# 2)Ap=]ixWq cלS}~n`qU^@"^gywEm.ֶCm0JyY`&Ή廷L`ϰ4f8LRH]x&?TU,R8pD2 ;4H%*7({j" BS *J$P>¶.-_>Ȯ)3p{nCoE$b, 3ʦ +_%;K}Pn089$Ig|ۓUrJ"éאn/.?峏yv!A. NikTmMEo aj$3ЪPnm*°-Ed^'VaAVZԋؕPn/n 5j$X56Tua_‘^zL?3#54f7R2t-4Vxrp}w1x7vQȆR['Db:7 5+2Y'NAerf5T ͆2iZ欣6FEY! 4܏i %qОd˿ LNmؕrp&\-궯{)TAnWk(JD aZ;-^ aQEYc1L w:yV94}mj<2h&\q+vBNXť:X`$Rn}S34Wcru_Uʗ:~93GR"DwM'Og5wRMjCFH QK~r-E<Cʗ{:I8~f,P7|{I#o{1g ^pP%Әnc+try ξ$EqƘ|Rb(HFcO,rtv0{Z dîseM&$jt3㪥Mp6ç`׬u6\%acRbtЇb^.R%2g_`_"u5X7tOw'zs}4?>B>a7&]ƏӭKBV́zk,:HvoMFAV:ɝ'wVjX#!rR2lJyvt$Ys< ϞxY>uq4G\["ÅWz t߷>p1p,/y!6k/s؅?wv@C& [|s82OQʣ(u_65uw_G_ 4֐'p;K;Ĥ2R0aP)\}"pϨ^p!=-`nH o6@c oeBAT.8Y5*u@%) f$Q!vZXTp#e] .na·|m\bcReѱJrk uc'!A#Tp蔯+HQ7a?50R6TN>h Tn$ /sIfH]!'}Jr 1% [`{A饟XevN(r]m#o%dսj頭}lE(Mq[*SU82't U Ⓨg2vixtz CůnopE>䇵J,0# O$p486` SVBh<* YC5Ė O nR;LJxtv粧~k% pLgmbc`mmrU rde)'udt?fW|v+0`&{_q`e\=JsCո xYHNV˓|OQ귀/L,mf;1B%N~0a5bf`㊥$mKJpg kgԘ ӀjLrdWw(MTWc]XK ޝJc+5 F|P} V-iET󸬾󳛰`mEs\O$dqA5+мaN*ťY^oEܝi 3`;v\K D7<'| OX3g 1}]Q"~5&(ScSN#im2[ٵYD;Jjly9UbZ]ĥMϥ5ȹXDZl`2 EL8cumOnGDs4PNz ^F3&=Eؕ&?G3 dX tMl- "7Z&?Q`?D9o"dܯ ޡςl3R`p Y ~PgȢm?D۩FIrs $9WWte.d/DCPɰ&4 ZETS}S˄a>R'i$m!{\xɓ?Mwa* I1huuӶBr4P|##JAU +Q4pբi:u>f,rP~R$NX:- |i̔~ tO+t6 Ƞ\TGViȕ!0y:D!>7gv<#`No#~팉梚Qj*V_L*].p%Em]Hb-r+ێ; juD? $nee!e~O*tX^0Q1JP q,.(CKɊVp(\F%)s*<4`F"A H׫kIpsDoU ~+h@e*' zY=-5؈wa>N[jΎH&cXR>G$kxߋU%$u UH2Dv9"QG!*yvʌ*]u)ެy{y` & rzv): BwXnq*:y-Ɲ=9 {%/M *][F]>hˋ`IIiiЂWy&vHyA_.\)!^izJ%mdΔǾ8 `eJey1#A~׼-U`Vnf(8%xg Uc_ڨ]{Z{7v :eUڂ7'N1 TϢ}7MJZagpvFR,kĘ*_ʼ>ݚZKA|_e a.!L;@+ (J.Og9[6|(1#,V1%=cJ-QL(os?gz>#w%# }-;H_d<fk; mt}GP,M`Kj#v>^" 7[lgʪUdi_'yWjnuKU:RfWll\OSnQrp3E>g*rw<TK3Y!r&QP4S'0+F횴EA]ӆyVf4: RG9͊N_6rU$|O_8j)eY˅V~1—xk &$:/LCETH lay{18_ζ؛%HʚOd Bo`SIHE~-%j'^؜ J藩"u\0*tDe k\]Y9 k)l aVSRf%@ohvi`t}|J#Grv@+oqkWLb'E6 N91.Fy F^olHiLBcCq|6 6zۧ]"(8 j( =D'W nQ.b?'D:dI*~JH:oo#bc7QK \pi>RYɘW o41v?1WPL$ ݺg$o~XC=:idSuurUi==!- i Sg aF 6~$tT V0F\O8xwοE!0x̹];MOUȊ%ˀ-{lC8V#{]zĽ~3_kK0>BG!Y>yp͚}ʮuzR!_"ݻ/8J)]/eܭ2h'#Gl_ %y5Xo66ث{`MPĸuin\*[.g?vp|ᥔcۖE{:oeO =Pnşqgv;Lߦ2g'Tg:苴#\vuZdyG1 4HoC b -VF֝j~x`%ia#Gqoi$rLM&[D;轼ZY5A*kw`h2nW `rC[J62_[- F#r?Nq$+%#8(3cld5{_4ߓWݓ~-Xpx9LA7kU iWoY_Ϗ);Bejި(͉AtivT݇ A8Y,,a9w{cVkV}fEUSTV +jY3m!Ӿ F>RNO3(Jampr7Z1DLbZ&I')0p K˨ a,Va`ϰGa":8 ӐM, $:RLG:S M/QA^_㵗F)A""pM>Go0sMy 5Iy Y&/K f#bɈ&Ѓ nSV4_jĆ=ԁS]W_2 1^Mn5Ћx4ɝE>6Ww ŵ+9Q-~ .E0 ?}69Yfz{Y2g 'QQI p>uC.3o*w "[9<7Lݿ*$NmJ= `T >*lrPK}ʹ{{kC-T_P\̰†n0CxoogomSvhdJee3Y$'崥ES]w^})uqE)9ZnP[?Ȕj亪{k5PwGr ۧe(138DCtђ!Fān"{rQUY}MS#&wy@q.R0M * 5㇚9"Yhs=CMH< )ڔԹ朹96vVޖZlG#\I%!p-rL {Ⱦ!Y$x$&C: %[Mi!WIeNu !l nf07nC`氍lG?h﭅rU,B=wpv%kkl\Dx]KU }gHNKWnt7Z6aBH&9ظK rUYbޤ9Jʢ&A񇱸 EirVMD=;U+QF)6z>v=拥qOHm轓$/ ?9l _bD`rkI:h<\>$*R\k[es|,kYE3<|JcExxsiɦt2BsGx%!sD9;[saj*hD>bJ;ud6G& ;ܘ>m Ɓ.khyR̞"z?5=OYj\F2>F%0[*!#lv.n8T2IՍnic4X#BHoB+a7>_}ߨKEjwFZxj!( *-!Cgɭ"ҙl1@©z7Qt}g:QOg 6VuFd>yRކWvF'v@3 # j38bq3hhh|IoCL YKtvԤ1]#Xj`<1_֭%8,er[B DN+MD4JUM\尥's[q!D0麨@*(&pxKG4tH?1}bir 0S7&0ʍ- d( I@⺇e Y0N)OM`Mc2Pb:ۦ80ga@Xe,*,w^}`8KP;Б޺tlJ)$H|_|.E-L|iKǑ~#0'R9ŏXBZ"_eSZu'_ڷ~3#0L !wOrzOSXTcj%aEEʳFTֶSW>w_wq_Ih`d%wMtE=A;!  hdj\3v tc>uZ%lnikþ7WZaZGݟڏ\ !AT˸ Eý5.tJJĉ:ZArB@Bdy]!0>\CWi#h{H:}CVC~Y&@=/**"Mig#]tdL-ifri^>C+Ђ:֣*u]+DOBVXd^Q(f 8f_=jG8SX[Ӕ]ӀZ$375bjF_B & p23qSEĒ=Ly#2TLqB= (mLd]4PG'O&VjU儬E+CD_;zhMG#HK|YL{%W XY='Hpe4Y8;Y骙l=KuhY#Fݹo.CURy,R4ɭƕQԡ=LVJ$\rLbk~"Ax*eߏOZ7pV(Pt}(z Y?4ab^s}20;wJ^-]jV(E)]f'S鿇t BtJ$yhq"l-l7$[Ukz!0bqQrG3,=2Pzx<riC;IOK>̬P1Z=om>߯9f4-BoJ}^ݯ ~_R.EW֜. bȢ L cҢ -Pơjd 5Έ+9MeYc/!#Me1uv2Pu"4L MvMVkRDJb?(rROjЀ{JT%ʷDp4 + HJU9?ihHL5kqyw$oz:Ղΐzo% wWF^,#Cd:OoH?q kQ/?;'TB={C+*L /kI=ͼ^.PATh@Ο&jY|U)4;N=||\S־(JH2TyO"|>F )}~|KSJ#ˮ꘱+rb=LՀʐr}~M-2UeEmz[͕%İ \窤i{6d"@mak jK.zcwܠĪՂ|7%x52WǓJK7sIO@J^wAy9DmgT_p}FN߹rc3GÂhQl&9McJ}e%USuAh٠uзmk%ai C:Gˣci|E':`_HLsх l#NhSvBܷW=DP 0.WZi^.cMdנxeǠM7.I2"Ӏ%hA6&+swǿ@[׷L0"e/,2z9Ώ0/UKΤ/5{x*-qS[xFr)I>([F,WrQ%hZ%{KF~FhXbtqH>P熂&L }aTl^mS+nrȟ>Rտ~FvgdW1.KD/F)V'W M߲L'O=Ɯ^ ^z+yJ ԛb[%$ioxI9ؚ!_f88;wWL7uZ|&u pZXngP}ٕ6N1( n ~d ւV<裞 ; j-#׳(nyG}kFQ×za@ǵJHUւ ~t Aʀv~6BdŠPs9lLNxܷU)&a6^r&ɫ}\%NC6 5MudqH{5B?cOy[˅i; 6 MdԦaap 5wRIGh8VAJocĵ/s$e1m)Yȿ _*-~$#ՋBBڕƀ1!bҔSem9MykzE4D!?3Ww{-z%R8`:Θ؅Km,}|һoݜ]C/}' x"ya*hbj4bG{Fl. xzO}%H4E2=ADUs Z (ıyEM^TJTV ̧(ӌx/*t 8ÐJ`TE&\CªkU;l,t4LORz(CPԇAh /םHVZx3݀@?amR|(ul-ؠ(.@ᬜJ˂NIc$,8`2s=]d)'8N9 ٵe(ڝl&7\TTvkHDp5 g2JŌU x9A~c"rK{]rnhm7[pnsuޞ >i H?MN|Z">>yycQ(`֘ˢ "V>'B ?"z@yIqg[-M!dBQF9?.Ed~izS3ɟ%[&3\Wj\=Gp9s ͘;Ռ?$0}+Aw^{\bTg[y!T AX]dO`"Uɽ3(4~3{_R8 җ=@IL_DW^N՜1<6ݻêvwcv oq&ٵ4Z2̱&n{ Х Jg&.6U<Ht`0/U.d xix҇6դV۠Jk7PRRYE Pޅ Q⏥INWD:tm"'#|ǥ $*2ђtk*7u g1 )lRX  L2_ SYmlvdOo/yx6q QO@IB#C! 4 "2Y>P(|=}_Yq?0N:Ue n7OGS:[ Z9lbqin-0EyEZ\{w ȟ-סliQWxhʗrE䩖xc'ͤTYt xE6twj`S>tŪCF̾&3܋gP}92*{(fQIIѪr^0hq܄B&)%Ҷ]a}I}h@er5sac?Lx7 S;x\HD{M EtFsc^M:ZMV@d]ls,68upkIᇕ?qcy?OpIM&5<. DAb5bHU>KNjDL0wSglHw fqF~zsG]漌`^JpH-r,latSVҖLH0Sy3/veV)Ft:]R>no_n^4,ڕ*D90sV &O;$I_pb6݆4<= 9r,6'H|FbAm ,L"tm@iT8#}!_g~5) &XY̺Nbژ)0W^ oK,fšw7 CIs&vmLKewS+?D0G5ǘ%Zb|F;iBs*C:50ߌ&ȇ #9S̄N؀MM9-:fu@rG$N$=PWv" kx֒} Jp`mK,0 ti5\6"" | ށBTzd2W%B4s ;|6$bS}hzщ'=8/JY&oPRL™S7jˊ^t 6"H-VBp2Z}dmJevƃ:3DPn-$XoFS;ꀰ?٥6\bYÿG U?˱1;7 Ůڀ-ԇ@4Jduh^C02+ 6&`$a}#NR!Ձp&&ۀ6쨌MƒWڬ:~񱶤,ȝ捒Wq1d6Y]y>aQUj*`'~v.Lj&УgmypH=y:_! QFXELtqHlK)# &+76Pge P(%sA+qg&XgTMBO A:YUra>U= `*~hvU_?WމEnDB> -vaTϵ]ZBv4-f[|VJ<  +60 @ t"E vE7k} VQ$2Ӓr|eߛ4Գյ S|HUسn w~a%F8>Zv{_Jqo^HûjMPh"hkߞE@ԾT`mrL+#Ǝ?j|>/,vzZf>И֩袠&jÏ,uYwscӼDM\E>v9'ݍS˔"&1";@)nP0:O&'zvGOV I2Y#ع>4?:' PWf~o1>'i.R_擗v<݋0]ˆVF&~IW1/Ny,I#kEj5`yHۡcFk-qRfY%ZWkT QVIӾk[nWlv~_wBW5:QpFeg+1.mp{ PJ9^WNFU& ~v^{;$._H:mcjCYi̽|>U>0jHrܾ|Ѿ ߬ŽL+ruWgclχEP€ឋyJTm$P0?G\{׆^@U05BxitFZ.#kHi:BlЄvq*r:]dė^{r Ez [*\Xz0b/F_M؀wOyHI[}T=M1 DzFa왹j;qr VU%-F|BLI׌yb $7ai"@jh1 $-[-x k)TZSx20V 5iOTGL`ݯwXA0&`7bq +^}j|5F @Y7ƚa}{%OE?2kߣJt5@4GόVIa,whTMUքN+r&CҎ ka 1bW ?\P80foäE[[JfaV&vs^]'=8F-%OLTH{^eLh ֦J# Ɖg3yT;~]<ufkD&e#0uz-vu^4Gt0$5R/ku&y{)$ `FKs0JS#vJè b]'=УR6L>yϞkƺag5[IᦷtK΃'D"*" v1kbmjX#ɛ琗VG90vk 6ut4YP4Ck"SZ5_뜘9%kuA,v%O6R hV5]`|Dd.̪G>eM>xV'ppfDf.3Izqˆ?]ֳ>O"rYs H֦*^re"ȋNbIYOSl̝n ]adr`nkI(ǖo9%ѩ" }9hgm>lRNjc5q6$jԚmpvUKJsz)~8;GSɅ#u'{**<&Z9jV]ǶⳈ~3[maH r`%q߁ /"(nF6t)Wa3?0'$>R` 㼖ƁBQrc~e~QUY'l P*T*xTu-|Ϙ]ii xr)G6Y/m e@D׮Jf̩ޡ 갟\FPCxb%f䴤G.(VZ;qN*\$C(c9{I寖9|-Dx~ Jdhy8жKk~ q'`7B? #ꂼffO7lv,9]FLu[ ]/~I;wXY㎠qS?űȤtj\"hPBTCiR}CS;p]3[ %-*IEx fK KIxׂC}%U] 3۴FI Y9D x67 & gvpvi=f{%bmb C)-7-i-~2>+K>Ȳz}]Qh`i2.Sqq]9ƽHf/q lOsk}8OJ~.$[hkkZXЅφ0D? 1GAjp)'Kv gX)h6`yE8ڛފO;6FЁ-vf^s:c]Ww-0:u$/#Cw"+*eSۺMa|w6A+ x ;Vlk@k|/@;Fg=]3֭4quPhF@T#'qV>BZblbfW+:} Yl\Vpgv\]ktźe1~AU>G #qu*FzljC׫8;(: qI}V#[bd3ft5UY!80Z (0 ojoAVe %[8` .YAZB@y,EaƺS>%8d= Yv>p]#MQ;Jt@߷07?[Ud 6ݍqPS,"b4ݰ[Gg\a#)YEQxԟql8t?qȊ<2_h|rl)Ywsf}+#7JXEfNܻ{BJwvg\3a+T~\<\9 qHIo.-cy\iA7A!V1C:_v 2wf;~h{d:e 罅gCrc[^v[;C`@N?g<+<\G  [gP=Zs=1ܾnqYM_a@3 kLҭW#lU q7Kh?Kmlظ(-{KmkD/C{>Bڈ)Jmᤇ*jX'AF , ߰r)1v F#!K৿,d@~iCYӶ7.6c|s,٣lMh R8MA'*;)gبхSR`}҈VXR-UEf.eM>{U@U'^C#0v ?ʇ gAb]p0=kԉ$_%okdS0vE,mF!)/=Rm/R 9 +!MN}W42 ٦ral$C eP3!wҁ$e-dK7MߖI:@8XN3>VcdHs5A,_ԏ%Jx)nO6'2kFyh7 nD,LXA[E#Rw~inu-la W nu `ѕ~ Zt8&tdLǸ tq崍NaOF ]d5߯YfU8_& .AH6-ï }oJ WP(ר*3Z~ɿ).Cؾ(u(;S/1SN_2mmaofԍ bRE5j'~ Sl4`O=@m~s&W> yE@`] !aT_"U2B'j+f ە*%d/.&\u>5>D֯T3$P@;1xP4"307wH}*v#cTb`ckpQۜ]w`or=vEsE g.* UӤڝ癘Acd{*lG'mt;349x'7C-f~808{<m (VSi;1Q@fI(fj*4c|[{ +x@G] h:*#M5]-FqS"LGb-*%=(78ntaNPELj,,pPJ?Vx('72ran6|wO-NK$%F rukTC4d%!.}m-ӘꒅH:U7RV4 U}TJ09_&@}PT~ifK,m 0\_yC7|$x&Fk ,CTW5%faGDMrj.xF6I)CIѱmosvt<)6L {48B 1@x/! kpVIF. *N!ģ2* ;6](\:Rtn]xLzqa~93䨅I*l5or;衚H:#TeQ_8 J4 QMcصQN-`$BHvQH?1贌rx`ǡ_>tT2s(Q+~7 זduJ"ctH⾌xԀ'^3zz1QtE& w(iڲZn0 6DCV6i5BM ,1+^S#W] 8\<Nq؅U/ t%W"z鮗xt m0_V+N1w!5"MRCQ 7 ͽ'j]nЩA=Er^Vt6{@ʛ(KjC0\qbC/,^f3NW<&}Nlsc1z/E[$ģ[HL񪀜Vtx|Rչt/={ȓ{spB3'3vMrP>D{F1!:ٞ{JgOdZOXRx?h % ˃r~CE;Q/vjG.g%חqc]E/Y][t+8W/cy"uQrMuVPF"w,_,+Mig?3ƣ FHT-Y20fȇGC}\!ǀV] <pؐ>ʹ"C۽›upgߕl fz9wwFoT)Y ә<~4h'N¬1OӞCɻ+3cw[$xxg(=P֗S򧗔-q|Mtgj 7ݷ̿z,$~h\α&w!ŒTipCꂄB)]/ɏ>Pz>Cpkr7 !J$qEzJbFDt4YT:9o5&)rWL!!? H,Np!vʛSo&Ό[q<~٪P3i_cJ4,DGwZ)^DӍ&DP`d%R%J6AhaDžNb7XF1sX6$C*Z?ATq}b ͺҐl6" t=WYՆ@[9^ءe;7Hgk6-*pNG'51ĥ{I 6 #WM/=z*C@;kpLΚuTy?@b )AV56"T|2YW[]혆udǃyB#kI,JpFɮHΟ&`l#HoEW6v#hv_rİ6hNtl̤3' "H@l|j7EnTͣՕZi{Uñ[Ԡ+ڥ(v#]qXYhPɸvY Spr;%Uu5. W!mS:sȷ.$ubƒ13# MPHg.+bTW-;R.*XHծȤ(h7ptSsر,zD|B\x=`.}7g!i%BN k drH ǞxX *#*@ 8LxHD\_T ɴ$֢i+{cLt SA) &0%\%PӑyjM n•bC0)S 1\ˠhbD 7ƒ ^ވ!uHէ!pi<$/2,D6"Bf$ʇщ9ܪd+DRX~ŠtJ)?W>#ir/<7-;"$ y7PZ BCC S`_{ drk=D*D=V<^nsǵ9PKbC"Lyy{V -,݊GZk@^4n\_ BK&d 4L?rA2Zw|'ʋ˃HAo2JAGoLQ.M9{zdKNєM]\K8oM@Jۿ~Oo']7} ZozwegļܨOZ_,#UԄ҈5#ddS}#Y$}'\'#g}|[m50*N~.Î?7KSB}v'j3grԇp\E!]L;!2,`9ę{/#珡f2B,=9ӖDaO.j'̭֛hkL\Ln-w柹P9CM-h5qk2'l~ϕk+E{d$PMŞONzm?h;8ʫlsUR6L Iч+[cօi65! l pہG70u;S蔤1*De9OPIT~T< c{bqjgNYHS<"_m@NJⲤlOhIN14FelI0/>Һa3ABhs D,m.7WNS;]f!H E{۲$!خ_q&Tx#>ܢ*PR/ l(}7dκfhf.T˜<*㟖.DTr8 ݍ{/)M>¤>;BjnⱩw|RtnF'=$j2hV PCMIZ;O;"mDO$EDdEU'#_ }Sz6Z8Be!bIaPr(^.V=&WfG2w#2PÚ(Y9ϖ3z4w2Ό܀T@(֏m=r Rڌ*&K oxrRoD@]6p'C95~ŦubeA<2+Y0.qcjiH~^g-np|H+ :O9,Py {p6(?ӄ DsbG} R,Wɍ݋qԆ4'sY0H4qՄrp^l+E}ڑ4iyc:/㲣Tr&%*vGI(lxu?{'c>iQb5<2 5w;cpo{ Hp2r9Gٞ:N:fkEGNT$Mo/ c^R TD'T)s' ϔf)pQXlgDY-) H0Y'`*1Qt~k[j}$s [8(@V E\gvfԟd][% Ub'0nPuIdx*ߜ=wˏ}!ʱ<=*&vbK2뇶}`Yt}p=?Ԛݚ!'eIML 2Xvt '"e1d20 ܍,:}kSM^f6N Aa?rC5sNݯ.q+ 9{Uo֜[fg'^%AQ 8"AgJP) L!oɒcs.C;s5EԄh!j'ĂMdhL9"tkvZ=!"U}yjtiU ڊUn.leq/6&߼`^X̿n9ԀzҦ%S5Iba:e 1F 9޿0=!v]k* zw40Z%$OQ!O6G=w\FezAșk,&C&H4jU8EUy ǤйMU(S^p8O]+Xj,FE<· S&Cu\Xb^E VJP|!n7R,xˌ%oXѳ&XSInZ)2YxdRL V+il"s̕!nE<)=IiS@iy(!hMVnUjY xk I'wd T0H3[W4Bxq1x7-{lbd[T^ FPP1zYiܰex!1s/;j#wQjiDDz7P;/BΛ1̹Xߵ$J`lΎ[{Bti^6#@ 8,I ,,H5ŋwFE~y̛XIB;Phdb:4虿KH0Bh[V<)qɞ[ R+)˜m,ٜKL)/ݧ}gӖIԕ}O|K0Y|RP.`kHJZkEp~CDKVQ -<'^/rꎓـ4x -hFl;Fyh:CǾiWoƗwr(D DZ i_@= 'r gZ^qb6]- 6}Pn]mJsb߬"aZɘ j&%ER(Lכ%/Zr W7u9#n TJG\Ra]xPQّ^\Ey}WJjfdҙ:%sۃ%ih*} zB͟lSܼx`s.aδ;KceqN{o;HVcƩfF tOfP KrQbO,Y7d W}>? L:qXv`g ŵPHh흳by8 >j%9)?OD_jj(gHt%`_HCK C]Q<7;W"y>G,@~'Q+Ap|oDSUS; %AES:LcfzTD]od#Qt5aUH'mN/05y?;Vէ>G;ާF4/^LRHV&dyT' pl/9cOoj'cul\J&Ix/Gbd X<)2ٟm QC'39C2PJ&*C=or†5%ݮ'|6gJH+%m3q8eI..YGɶ-c`]82iGzC$GTf#2ւ #ባ+9F޴ظ.) ӊ{5=*IVtBoll ЙF`"ETf=R*n[SvÌ{@)oFxHHGC%Ʒ?BoXrTM,4szpD!\iTUtܰߥjɕKnosc'8Zjbo?'_җ%ESv.{sRʦ5G/_C]]"{D B=L?-@mE # .3 Ѝ{KJ#c6XN0=+;/OMF;.D <_c>F"yo>ub=֤?`D@ q#ZZ ]>pcN푇; `}{{ *l_pீ? V .qπˢJֳ|ala2ٖX~O+J5[3[KK" Cty%ޓR[ݳ7e>Uj2S/R vѥ[M7eQ,8jZelYt,{UYqh(v>g4- I5W=m WֳVGθI>b~5S(i+*9m}c[ Aƅr:yҦ bO-.r)nQ><ޓbdrAyIen;o謟&T.]s&!V, 2X@P651}qUȺ M'^i,h-f1q<sOuJ.-PH|<)?Y__c{T7`TGeX mN$yע E'd֧[BoA80b^CČT*$ luE#5M`TKiؑ2D_y!Hjpu (FF4jف-e1͖#ZQ,=&B(1ZiCJ<ٓYJ)`x ?{m60-ўل.ɭ'%,tEiYԤɞKd?dcOn2/Mb*s}./eCqii1QCc=hΎvhiq#f )zo{M[0yQ0d@)U \=dRّ9Cܸ`we Y0d{W\947c} DЛ| Y:-m?c'N.dsZ28r;"U0\'uxP@Lv872lmjxZkt O<ϑ6~|(2RHGR4ݨIu(?\ ar$Ү@'lmMOtG)VM$9ޙ<㐲~܈ei/SLc](A|/fU<%SlAX1|oʠ]M N,lj=̀2 !P2ԣօ7Xqqs;+J.Z\b-M FhofC"VSOYCsӾ^IO 6kMvRUIҐWׅ]G*~z[꾒j0E&4 h˴33hXJY:^᳼Q -FdzVտ0lkM@,] xk$͡>qׅ*֫^zGdvGSAƈetJªU,,%G2|B/kMmpu=: $ -XWBnZ,IZu/tn)8f\_K]1,5Fb􇒖!PWS $I*<ȕsu"S:9ay Ug8DhD@^zK2]LSY" znWc.[qHc&}qAwdN> h'" _/[M֔#^t68國%d;iPXh|D it"$@\Ɣ3M(yyӈJW:d(4~vR~5'e)rk\h4| kBؾdށlwVzSq'@b ( 2+BqLZr1A#b3}bY2rЪa8{2X[`ɱG Z$D)3m Jao ]+ s#7aag}fØYi'QθΒ{&NLZqEd18=3=/ e`Qcmx¨Q ¶NJO* bnSbIvSSWA%ޙ+n!P?-]R6k`ʺUTBs];TB:⇠,rT.oKnA 6/,"{*L22Lr!Lw{f!%K/ˑzJ[;[>ioH~\Y/ $t*,=E7o`sϲ٨%sNWh15Yr vb9xd|^$ ah;Z*1 A78Wn  JaeW"[q*Z[l׏ytu4.u1ȿ;k%[polfČ\ 9='(z7?\qiPA1=tZumf姗IbYXdFCJU.a2uby z`) =nY^`A.%5FwډANF#-z*c?9CQt 9|\ 8Xµpb@\p1Eys-0l'_F,9{ Ԑs(xe O3=:RTSdN:+~b&L#򗤴 cɪBc+٩l:-z'Smx15%R 9axu;qv*l&={ݙa9jT[Hut2=,5QQR]6{=f,Y.sjx؄;߉䍮ToC POtO׶a&^M6Wo X_.Ziъ{,E׸Mء:Ƴa@K`G5h6pcZ z;L: E ݘARy=} ^S7B+l m jO]\nGk;#t\~xFO]C_@ӒX[2za޻3JXu֣nzE l =o?GFMU}FE` {[_]Tb (nF\OeBwmG.9|$"Ầ*^$7My ^"Ⲅc\wKDjS~]I/; Bj@ =p40wfI0?O_7^?Zc'Mo[b$x2п` SU,bGލLL@̐W|$oVQ?Z"E;ʼ25WStmSȧ=O@54?( Q n\'i7|/<\II1H0+ܜ5ERe-X+R;Eh,p\[lz4BO/spT!Yo!XekN%!KWRDRe䰚lbxejH  Q7E@*yH|cY8AB$*1rt()͖O;0Gvlh 4+Wx#DNr襁yC6Ic*rm0^=  g0-ƈj IyZv\}J2dO&3fq 8^KIjyY\[y nCQUHZ5o5APH6Y< N:][Qݍp"f̰6%PPzAؽ]ܐce a~ѱP&7S:LX fxsgCFǑR!0cOofT2e; HpnC̖Cر o5r~Lh6S(Ԓ; ħA^O۝IW/008ȹy{-Jdg@\x)&]@zsо`(9Ttazt7R<~QCOtD3 $s#P /0s64I'DHh#Pem%YjgakNMwA6FZ"5^PLL:[)/4ǯ05ETmmׁuh+-L*E\ 7rA9*+|K3ďI8Q=>>y|qrO ⭗x2+*6VldsCeNZMÛ0[y=򂈈E) GL^Y[ RyN\CxM>w ;oE2QVKx/f F^ +a;=rY֜PU : ~̏XV7]B 3muV8rk@=ķ*/M)\Ib mD%U0lv4^iloË22 =w0ID ,˄ADgzTdeOOWxz ď|i*i@H5J|u*.w iQlDF2'V gn1[ܛ}waw usx 0mا]C`!G)?.ݤB ڸer.r]:(Ƕ"UTf )Bb1*7vIN^WqL5bamyXD*Q_Tr vo,Ons}KL[taBEmܗv_x~e{KGP1W@RQvtkg| 7;}o0~PA AW@B9jsq9IOWp*5ֵX4((܍pkU;P Qy3{WdQQ'K4ooMv ./-c"^UgUܻG/g|hE@C(fv SAS"gPǹEv>6Qry b/MSk }®s.Ck{2r!d/ft*|f}f1;On]*zr"(diZjߖ%3{ (ڪcy!RR@| ZVGDp.AïkNV uÁ:Vb z@|hңP\ ]6&zFxXH2GD&"\|zĜ&B ^mHEW 7A(} *iNZT#_DKfV@[EՔ*f9bյVc8oE}M;7$mi+P`%h>m_"M1MZ*@XHkigc_;z ? ˆc/e J&'5ylǂ[7͋#%}6 )©Nd߼ciM򤿘!Het`nŚ眕n0vi(c'%oB Ȱ <0/,ǭ@:Z^N5TniĞ2vY8^>Lqb;]EPҿn]~|R(hWh[EE8*fqc.y]H{j ;3p5m*ubq/s9 c|&])w )K5Ķ*EPDzN\fVy+#h_܆wm fsj@A|sF]v?@7b1w..}gӯvl*D;[P9ԉ/8BC hWVpcz;q23t^Mzz߽2[!ŖI Tˣ*:_J3ߩȢL-a[h!_h@7i< AA"puŦT+u"CD(3#8pꘂ7 ip*VN^ o]Tސvq'b7ES;6aOPe%sӃCcV{ƣʩGno|Hׄ騁a-^7FNvS"._ JGv01f & 0R-9f?[JOTv^Dؚl,DPyIKDAnxmMs.ϝao]o-`)jz[r/Q^i#z1 m# ݶ2v0DrWEڊDs(1NN9. \,j< 8Q 7W~ S#K ZG~AC[hSu_*3+aՃF b'G[h_rm=+v g@;<Upu׌[F/PUGӒS+fEsB30 \Oc&к8ݙU$?8`DԵmF~m~b$k4z.͙eF5KH5P>1U0\笛ןMƳ6&}]h8@/1!Q~䑽3}UՂk.aTrom>+cVN}9V*3 vjbpb#`NJGЗof>xfc>-2Ż0]NQefPGqCf"wh JN:]}Ѭ\7XPڳl5 nJ%g^%, d9c/s3V?KWgf`U7teض!KH8.4fa|JݼI6jAHv>*44o_rRP E2L`!\l/Yv|I*R/7Ƚ y|%Z`Gꬂ] $pM1VY䮔~'|.˾ ѝ^ʠu ?ӾP+P[>A%4maHK%5"u?ؾC$s#i3)˛C/*n a kaWD `Ui>S+re B!#W=#֊eY9ug*N-Qo5_]#< . Ă|mⲏ} udE pXEg&P 9;!P!O͢y:^pfW1H%58{Y^4V|6B3ԅ>aA[̉d a?`C8B-;N[ii.9qܶ(VFWh%=,>\&o Q(:[s0Nuh9eZ980r d X?=%=wC0}} 7`"ʱb ںHx#H0 %67{qm1hƠ{J33bSc p*& /\>:"$ai21mWgR_| c8%6OiZ9;yڙ}a_nu|1aD/h;5OB>/l< bW*6˜|DbLaiJ ` Xvr,ջ7(Fiwsq`K-5ƥ %j2z/|ݓtt  FM TA H_\VqEhUQqH",v8 vحཞ Z 6z;tE]iwkh;kL,|sUW/B [3>0YpeNT/'Y 8^VpV< |Č8T[G|fQ nVFI}I1{P~.{ҰE TĄ\ G|5_00hJX x7 qtYưq.;+:PQKg:\xB!!!C6Tb.^!"a7e$Am7w@IoO ,6ԧZ!u|㇨E-A Elxĩ %µ EUc^4%/·iQw:4|#},wՏ R$, >JOBAJi V3Y߽JZPȣt9Ĥ@Os42q95\EF"VV cwbF;*~^uk&2݀]0? eoI<5<*ƣv)SwH "i(U2kaY_du4h(HHJ+k"TJ +F7W{}=J1Mg>Nk/Bi$sRJYξ\_ kϖ\x!uɉ z}/glwqSul-YOPU59 yV2E4%__*װѷ%ɥ]%(٧*۾G61w? bEZ5aMA#եRl^T#m+\D"[S1EE`K-D} u;iSjNǦ%iA֛/,T񗒂STiB ' qWQ#[{iv^rH#9renL}0 (}}$:wjԯ &|:%bXX-b(٦ls~_箊^}~&mﻏ~s\3qB޳#.Ey=ar$gY=6S 9Deڟ{z0 pMbS`nD0X9S^X߇x ~()9_^1Ӥ?-EY!\hmmgl8Z wۉVs3,^BW' tљ=fl <4ѬZ쬟D햷JŷV<ם0Ly>+aU,QҟAUew-Es$׏*, T%KQidžgm#@[$+=5"{sF/ Gw9/LSf>Q)i)YbY/V* YW⭇.uvh3aH80i#i-KQcB4csB[u&*rf'[X2֔!t-`@:ACadgD"Wolc۰ssNL0`Vq69fSRT\'0FjNoZv? W'͓4S1SC\3JnR`fRT(ȼ0C +6Z9ZcZ{7" Ͼ< W݁~9܊)`Av6Gi %*4i1s :e=}ʥCmP,lʽXXS|y{#6-"-B#Q]U2mTǿ<׾t ;^U4Nv"ۺDxGZ᲍3B(mI;Iboz~HmMD)6~=.x~H!6NH32]M;8כ:E.^GTFz\-d s,Qaw"ߦd F`EgCF{δ5f9QjRlckWdB!gv=?+W/zY֓%հjN^%DM%?PðY9Ar\~ S-20ef5,jˀ9;V䱦犜jP>!M9ꊓ Tϊtjz#大@':&p :/$&.9<J颰}WJdu034o>iPQh i8l'_(T6*Z(飜p4ݏwln|J 0Aw zaO0Y/Mا}!5d!ctL&fS`Vi7v)벻Abx#hh·DLDf&X9^S/_중뤋1b l~ӓnсTY&w =,뮀AS [vg`z `8ąQbDw)E*_lDZX;:fu29c0EMμ8+^$QԢ'q2*w'~jD?`,ϊ9{ʫIb <B9TvVւTre$&wӝe&e_6-JL 2j.퍙FxmE7Y{ , +P J>C n`A7c>=ӥӁ9߮c`jDUȈ;jcq7Vk|6BiΩ[jyeynHޡRK1k`՞݋e!:VZ譆/fl(-Dm|U5y2 ΢D,:sCQ/H%^C ړKꪜ)h4 27)+d׈Z)l/l)Eu> 9f\RU#K1k$$!/>R"*3 A?B :W3RT2zOCVA$kkqpf'F ws3oEBTzمt0NÃ[h4vW)0FsNsm 1akr|sq]ϒK.ů. pTpUiKG@X\jdyJ8{_!bҎ js^cRܧ uZ4.~WWlaː|?mlzt{g4fu[Ȱn\7ɷT$&Wp  T ;xb {aryEL.R19z[h?l#-c<Z,S/$n:$D 2tdn*.q.p".ʴ.Wyp߽ Z[Сf"{tw>wu<El|H}F8~RڪRGcT럶 /HQ41뽂MPI~ԩJS݂9y]E~ u%[7G*imLK$AzK]ɒu92eQ%$]B1#B4NBtpr$Vof5z$Ӑ]XgW;['_DOx)8Е-Ց`vJ\bԣad?Sc +*C*}F`KjseEo?U~<[~g{= #S-Z̃$-&t+d9GЈD|g랴/D&!Ic/@Ql'v~7C [SrX-&E" 8 MVVtӡO?M*jd:vAh<-$tՙ+zP=ފ6\J Up ceL$;ڗXǵ՜ejˆyFw$%- LJ~#y8|I[,(?N>!@5#cۍ_hSZ6Xܬ̫#Eu%#[ۅy:7\K3hgcV4AR:W1Jw'`$_lU]ʷ;v&xS07?n>ڪfD},0.-X2׋dZsJ>Nw5,mΧx~[)H=aL4tG7uys'FS8^9zjl".+I_?>][,꟭8'F%$U}J`Q#vx #Kp+d"N`בi'/?20's?Jf*+Dz{$&A3N/zӷHl 1M~o Ð ߍproWa=#o K%Ů~,j:k {c_`S3nV j:5X9F{1K:URc,z4ӿlW[~1ӢX+~&' ؓs7i^W*mxoM DB@lwc{ñ}q%E QaVBd aXbψhUetxRtX#X(nt2_R unxTzsIӇ4 dRgAi[i'k~i=I8%1i)7mXmMkc 4ZZP5CuWdF5҆m\5Uљ) orr䑂wեaӂP<\Π 5ݶ  \DnЍ)z[.gڽ$ ޼vך|F=4gnc_Sx)b^צge',nB8QVEAA>ѺVJZP/3I%ݔ 6+8p .WR͙&Pk?KiE|OlM:/t~`,A2W #gY鈄0*`ҡʉW>cz&.MJgQ/M̾cd ܅jygufp2])x=Qd/-'<-iٮMEbgՏYCڵd*rA*G^ /WRG".|ޱ}_bA*f5YRbo_f5g3;JLoe ]֥dNlȑxe(U[]f3VFq]LuiVap:%A\$anE[#_'N5uO]g=G֏A [[d=?&ȣ$/MS@/+X`q$%17+ߜ]FɃ95MJ#d#ܛ@H$ "iC^9=$o ۠0hP/|NYr!j& h? B pU'dӁhD\Zw@|Wk"]0qY'O`*Uر)U9GZd ª^BiAZ1+r!k㧩'eE ~z BjC딮?oy4W-\SRcz1r_mp ~76KO˙< 1y|$^tjCO*X$d6M%ϿE4*?F,S|,~bgW{zf 1ZDnvԸ ZG9SF Ÿo{0q ax xRsg)\XSƪ#dH8JK|szux 7'LA]/X E[!&iz{p, 6 F X"ÀLS%bx{v)Yļ пa]Đ:o[61⫔l_mqרCщgk[8\{ mK[3/T6+BA5xM%/`X &MNqL:&a9;Z/rPe"jC;؇|T394됇.a*y.|+P-oU!u6cwH3{WI=Qr3L|#! CU 1d4W BOiC݄5`yguUaH%D"/]'Ywb%:)oxG@3  =S;-l^~bJޏ,JH1\vO `K? qC. >}HêD [P5SS\p)uk')q8D|*KRzdqё>!̾2Ο<ޣ֟"O.J>Pc4r.1Z?{? -i<z:VOoJl2l*NN zQHQÌZ/-͊F@2lͅ"3(FdR͙F˙)#RVk~;9$FֶE5nUf)j.J:ƚm;|ɘZ{ޅej9cheW̜e/mZM;{ Aױ핹RQt=F9hK}=aG nI.kǽa8;↉Ũr.萻dLJijW}iLғߓ{;ZҰ#ZQIx>g_< 񵽼O2nˇ} +sS۩@.&+X-a\>[̧Cnx^QBZ=~LoZQylCgJu0>#g'e\5Dž;î]+_GUԏ .Ga &$(p\q >@σ P{|ľA|߂yOU\vTC@wjC$:nFˆ{Yu*뵵3TP-"2P-TqJ 0S@(D!&";: d8!)7_6ʊ8]!l{F{JigRD_14.0=A@u5+<_/&(ewLcgŇk#&$jeyʼ+ "PA-bXRWKWJV7 uOX)[h iC v@R[^F4 ݵl0T:M%w $gɤAFi#!3w4ZgCKrf\HOgy.*A-W~vl#ܑіcVqwMǙ;?kқz.? 2st+"SLn[ɀgeH [JK-H7Ќ @u#f6zh)^@C3`49$@k8@0kcȝ0 ЗHYثK9__>\)5a fwhna4`^qjT'2M{_e {-17T#tGnUH*ψ̼'gZ)alXZͷ0 A`5<ɽ\Ə(JR_wyZdJ^}M@a @WZX9[`Y|"L.\s WB e#ȳN_^?LmXW9\< O|it+;Ӭd'P,dJ;k 7<*xRr<`+WlJWQ|=rz?Kbϗ;/#ҌCn|cHybN*\[{r[RvW` l^D&;w"yVKz$E1nj\"ӝDS2c!i?BSOJi\@,uBEO^a*x [d(e|C4X ݢMl&7t% AA>?US9nNͱh[X;I =dR"@}m[,J8kl2ގ Cee$9X=yX ܤgt²Y򌵭U3 w^nIjһyyq \+f$ 9a@|lqϩ.ad{/PA:# +Zu(I:-MztT4ˌ?^"!SA| ]x㡘Vb U4e: Cwh{G^#D7lrqL) 9Xe:vɴ?K}'Ȧz-fɰW80z·(릿%Jq+iW$ fiqNU_ =OO2w+V]C%~4D5w,j*>kg>o+E |}0 4M#,A@AR5WHrd΁ 0 .MrX=Y$ 83 5ˁ)1|it(4MO+# o(idv"רz=B)Ϛ Wlt%F O}y:<8 ؠR4$i.sdVףJ/LJ?i ;W2ю?BĀ ^>) {c1)/ikZWm}(pIH^ a4kM]C)0HhxK[V=>h eU>VW*]@aFjb +АRVm|79NUUW #Wl |LsxM\Vs1=$-$$~j2&ˀLA707S*r*J .#0A 0),*w0UC&Ӷ%MH#JXGaDd_x?SQ8enp8Ħtm$AB9@{V ;4\! jCFgPL%agPY*h7嬾ss2ڋnfXp#뎺*%Mc ryٞ%8cۑbuͯF='<"A9ζ* TQ\ãʽ'k&č;=}`N%!KjH 6URJ{́K%y|ecDAMj߿r }`^1Z'`8X0E_/k:ħG\lz{? ڋI4 [2WBo{2F}(%\ɥçd '%U]W^co-wjIq]7RJJa޶=ACAH>#T𵛸1Z6Hl\*DŽ qO"jkHwLD}ls"XF!<>2sED/AAf? ZVGcXIe@R/h~AumvKIXбJT %8nGS}U8%X$#69pTS*-ċ+AIAj EIv2z{嘜}yœ8m?٠i<3կ7I^c )x`־xO%o%3J#J%Z8[G|I 6sb2"wc\p 38_AWE)lm fqBդ>PA2"~oʜ|: V|'ucp4bx^KEQD%+ُ̛t7S  x ?WB]@W?;خC԰rNC a?*ϽXEekPǀ83]oQ~6?ó14߬RY  dRƒrIk/YUࡦŬe1=GcHoavQ(_ɺ3Z1T[#oϬ%X# vhTZtU9٥!o>0J&s z&Sr\Roǃ~לbCIt#ʌi٪-2ҝY@s2&b'aSN/")[˜, !M[w B>iyMϳF'!S렦a0qsRH~oΩ̄,\ћhOǣ_.5&pz@n oG,ZQ\V[6FK%$dߘ)S|gh%U-O*u bk~6lbǨ zVhB 2)Fc;K-b4[0ϊZSjC^iK\ tΎݚxO CƓtC:&N/1Nj(m O'= GcN_|cETDAHs$U\>s混x('[G+6a[_VaLExmuo$h6X tQŘɎ uTyxA\ku%6z_S2+=e]t{ yAÝASHiӆb2s]XMM[ulڗGr, Ttp04 iM:(dצG;mւ F^L=9P?T9W?eT{m^FPX4y 0mA_0i #pIbF?#BkG|Gv]FJ{oʌ_['5/[U?&m>S e{HW0t|H]f9kim4+ ayO.:=1Nxr%:LMdln6[3l?/->]3^ ²5;?Mid$'@@u >v.q!QBŗc[Y99u* $ӻKZwnW}}󳋄/]Kگ&ۢh6"40sNI!Q_2{@G(:?72 V<0Q\ &NcrXѽ 呓qã& ogA[J*+؞{N,a}u:h^q]#8?8 ,eR %]7vd,Gq] %)JɾCyxaB`<Q#Ap!Xw.0e/ 5Oۜ(mj/s\$qGeG7uyl~QlӃh&gy> @H:"p;Y'.kEnfRܺwak,{ a} S G"9&Q V ~Ԯ=|#>bxV#V5Ի@%LA#r/iV' ݏJIG°w"^r jrF|M _ ?b!MUɕ'+6 Ѭ&>A:o*o5'Pgs,鰄UP$J5S"= `쐻z{❫}`8 -| C=SFd9Cv2إsLAN ضa_5:|}ߙc|IyVb5n9UC+?BXb!L8+Kc?{2EӔᰅ @%gT"WBtzTP 8u1lQdzXmQOI8jKx#T'=~o 27(#bҐW+m49!/?3Y1W$?M{Hl=FPܪ K9{51k3~Ud/6xԇ+0Ģpw\ϊo5܄M+5Ob}Y֗^gz 7*(z%D{RK*tl* k Hi!sEƅnbdLeʆ]>P;AB %ӧފD*6!ɘOO4JgMZ>x0>uM<R\_8/|bhX٥|E_a.>O+dei^ ߍޥUWT[ ں ٪>s5OjD@xb͉л^º©3-e@<_>_[lbJ\If_Gņ3׼N+b]뼨dN֗c䟏 u8/M׍hK܆Xpl-cDɘq:ceCӊIWR?h?v6@hzKPվG\Lq)d(iTFHqy"o~H B®SiQF x$Z.iPVɶ.4Z lra^ c3@[F ] "e7 `LWj '`sІ}Vv fκ:$04iC1&\H-,=!)jHώ{x&De2|t楘ipr{7gւAg{I[q=8Wc"SA ;hA7͡g(jInL@>`|*lJ!a}\[L0>+H_g`7F4Vi:U+0,l?t.SxL=~ьyb_@\4ǒ+@}qD𽌁 \CAKkAJћ#blf'{fbë:Zq? vqfLBFs7 쐧OhIzג)_]y cD1kV>'Q_r ]?vnp5H4!+,PcRo{%(gttwY`;dLKsYNDl+7pA\=x]y @h-;2T{= (VItq6i34nu-=xZģîYU܃jE;ɇxIKRo~P !# (pTxlz[B:H,d dMEALLmR\ w#;2mŧ^c\:6M&4|g_`BнrBt,{? G9V%l0_={rp;4 >#wN{3ɹrnL㌒U., nd}ql#kITPg%v$,hjD.8 F9 bY9T!{qb䐮WAW]2:pԖ6 7٤~;%?.I6i27:y5*1\š_לKs}+YO׳~"B'yI{tM6X}e`$_L +H?RdJZJKuH;cњ;jn^jA*_|uXFֻ[ۦKQh (t{SpRAuVPeWmŊC&cfA=^Ƥ[Q ,MC,fbF)ZhRh!3M LN+J x9q> ›7'9 XA1b¼B|;854+sJHSIn;3] ?LLDk uV>8o#PG\sy+L\>&'MmyEW71NfjsBlQf u>@)4T^hF6hZf\8pk|t0nqDC)R^DAbAbL)F4jE -4>>ӝ|d\ bo]hg[~hNK ==oU&f1;DRI,vǴi- Bvц>|,=gv:(K5([Q/a`=bG0؀w h")3ȧ3Vr:lf߉2 = dn v.@06d\5:b{VRɬx"ёXUu%Y;Yo FH@(i;ks),?TɣZ>xÊ>Ot̳iRde!h +| "p9_՗֢6 p۶STB iz|&>~Rm|m01ܾ7T+^NJ3X"KH+x4S1*wr4 ]6Ib?KjЄ@w2ImY&p2%a PI/kDVBW\K4 u\ʎakl+%/8o%wĠ.BTpjXiJͩH0LwZA ҝ{jQu a;Q FHxeY}@MϡqJnM]d$D4ĥ-b  :^ Ce/ 9K֢憟5b\oKm-巭&>)'/Ҵ(tM>{)&A ePG;]$ǥy;Iok))V;@,IxI42:A Ԑ#GI\٬D1'=n?Ku*gob/0 / ;V&2E@ż:Ogģ'M)1WV[{+*:SCr%{ le%F]'i{wӃSJ)3wc2 Ok%|wǫ(?BRUfI3 51S{ " 3(NW|Z6fuX :WoW]<|hws<%\"~Fv5<3HuS^I <ǍLe]m U{Q*EdWm&C C;kO\l˪!5X$"dmZ٭o&࿻QQaֻ `v(ŴV Knr!b"#tQv]nno IVI雊g`1JXJ3̐{Í@BObyPI,yc9уWwḫR;P}:Á^wZnzuj ս}h aϨz,1AtcNhjLΈ{a_ P ;1ؙʲ3'4/N`\݌R|xĦo4]&ڝ̬p?!^{мff*9nᖊMlR FO8^f7e:WhE)#Aqr5Fvo-Tn%LrP͐"8ň&jśؑj֭\zO']0} O`ƦD}(Ȍť\hm̜BiM!,U=H { G?_|)ȃcxa+ӭA+i#t"oԞg̮{,ژĖStQ_ LPZ&(].(R3m5 *kkbdN\ G#Hж>9A:z@U(5c+M s%ET|!MU'!}1N=9J7/a'xyԅm@ҠV%Q!RWgJ򦠃O2_cwMOËJZnO ?oݟ$Ǒ^#-xIHYTG^נԈ3 >paFivl}nܧW%ûm9AUhFЩgY`1PxMyď}!W9ȭ~_DGk z la#u(=45U+C<t@JY00b59r! j1&}br1cAOóa]] Q-] Y5"ʼBm4䏵Ih$5Ja)ݼDW$!KLw=Q)j0^pWkm##]l5 0?ǏB(2Tר 0g7=cݧ6ӏkJEfO'\$#Y.03Pʳߎ XxQ}^ %ap2W8IN ne-ZchH׏nuUC WY]# WF+ӭ0@XP{ :MXqq.t?l+ GzvMѩHT *FǞ=Fa\CyhjpMq͈ 7TOfBsȎ̋fKVԣP);уD=+&@۪#gHMc}Q:^LCerU~05J`g`Fql9.ZM6.Bz/M}#ǹq6*QS(3OOu>knw^"} MyJ}^0%e-aBzɍQD_ka Ękm~ⰻ7cGÛo^c)MS:g]n:]?è#cڞ R\H SP#;J>:wN(' x "t15|=F^x'Df713w |R'Z:A?d_Te)T#FYՀ1SזX;}8Q\Ǎ*tɽu3AnWR# NE{S^0(|HΥ#X䈶J9{A@oB7 -=A X0 )!#b`TA?GQ/^eN&iCwn&lX7Q,%BI?AdYB_8`qpbFq'$G34/%Lv฻'c(|P5G?_A<~ԸXm{O_WV5Gw862H3F .Y@!',ճ7$Ȯzwd}-nxj -Zqex2WA"`v%Mt@ IdmëOx̢O `]b"fV4t"8w)Mc՚OҦblUP5wRs4BqÑ4կACqPK ?M@}z^k @a4q}1lP9o0aMuy}$o4cÁve yv%̓q _ [J[O 6O3pF2ڇw\yy)U7?&w`hzR՝u҆cb?p=;UlD-(Q.8e楊 RY+laOC&YWDfhОUu3菱 _.M"+ՙvy{NZmKժl L\/4 zӯ@SA,a}Źڛb@B93GᨑղGL IӘ`(Vsq2IU^U8⌷֔[3v9j:j#WTɕkWf5*w?׵J@FKv)_dGۅ-)#%"}L{煑r-e7p_qg YD{9r5fHZB Lg$NpʇcϚ 4ztQ\z2Nb ~e@Qg%@UEWYbmt^ᇤjȷ)9(*der; M$T$6nj 4QٍuhprHz mI7!sբٮ}F-S4麟$pXkRgwTq((Ɨע$wl*JG}ijò ȅKj^)q(܉kl_^@q'"*΢Ⴜ>nC t4 $\H2L֒to"\iX[Cm>:tuW=W֎}ԗbMCTM_m V9,%2L(/D~+ eT|68dթ|Xp~jբF˻*pfA# _I6jXPx/xȒtfA7E{F`E7KHyX +6uh0j!G$0)&g Ap't>l:„X?ywcAXw҂~CxrFS@',/rTfXVDUfvA%gdw ~m984y#WOf!5Dri@Cg>.gp TPY$Fl_ &T!Pivyuؚ==0ܓeʾd8yEE7I݉ko;^'f Bt #-x#A7Z+ީOudy`8%IYdA"m|⅗4:3F́S _GJa02@X=͡\$Ҁ$%MdyttM#\M^uޟA1S 0H“+I6e)NqXWO.U]5f)ЏB[uJS!ڢ=2`j?b5e6 wq_ 2Oݘ7 a~/=)/-c昿 l&iv3M*IC3NQ',_T tf4j9v/}@ZgN}_B-_FzS O^)^H$oXb][R C\<Ա)/1չIB}MABZa%4_ðHqFXj7-b1$[TP,vE( pcGjĦܚU1ZQߍ6Zmn)Nl*‹\x6@rOz(Oi68 LZ]0I"sIem0>/?Vo,AU895E$nRD(VF#HTpázb]:Bu>d16 s$7yΡ/T=*kIX]9 i> 9`dqbBD%+v9\B(>BH~?q=خm֡[;N&cj,{O\;g c*Be4h|Ao]RJEj(CÓ^ry]{mJ׸J 5aw" Yk.d{QcT3?Ԅ@ċ\+N ydJ<'3&ٮḤԢ+[$_# G\]nEuxL?2p˨sYGeDz,Ⲻ8Z9N^;&mˌ o1w2!sR 5@_yB b(/Yu;1󤍽COxSLĮ1gwīCtah5!OCa'yX4%ɼLpՊ ?:ۚuŕWwfIMm(#amo}?OZ7ڸ]0)_d{p. )PPƟD DL>vJnI+o ]^PN[B`JMB{XNE~uK“WGWa;ChZޢ5=↘IOpH]%~|`{ e@[^"VSvn0)xw8խݎ,9./^s(Q+xYjlҟYF/)_z S@ŭilVFl3ݹC2I3,ZoM cg$Ӟ7 b"$>&':lrdC9kSVt>";WG(YYӅxL54 ,HHBW@ [3>)f(xȥI%Ms&a~N1pq#Tug"A[gz]?)v.$K]26dv%b\: ?ѣn_\yVf5픁:zTHK%8rX^@KnX$@w̅äxt#n&YUQ:<:ᨻI_%`ٷX6Y\dcMmN ӄHY`.3JMɝ{]ŧ6wv0Rt%/Jm ZNgz}^ˊj>M@y*^owK@1TR DR{ g=ˮ vt)"A.."FA!1%*T9I?LEaa1:;p\.Q~NE/dD <,JNJ'&^*9&\~ ;w&1& ޜ[FLq&[ Zpz'FlNy)\ 1rel8guVss|_9RAT %^o +lc`΁POr,5\( t9MF)sZbeu|⺓)95w 6T@?8dLjn#¿/=.-co/=oWnBPQU v`@zqm>dgaJͩ\?a ;m&B̫Z4\ -03x rm2qiny+A΅jT.[Le u6 H1UW̄7OI$i7's"z' >[ޥD-c5AQtvocrٓ!Fkr7[GqEPܗ`TyKP8qzK9}h;$C*AU᮷6$~B{TK0ajYNGH?xKR[+76MMDWL:qx $mC{a6q[Ʃ;EKhYE3R;a t[=lR$2%p^꧈S޾(9L؅4TsR?t7uO\*v|pPmh"T=kyތ;/JWf-gN%0Ǘ߉J0 Q~~͟C/Ϝ .ZNyze6jtM$bpd|`p<9XO!`8@(NL0_-h?n`bUX7-dg@|]K-CnInbْ~]ϕ9J ^l֛ MXwldឫq́d0hש֨B? BL`}_Eٍ(@~ڵV 9Dg*q"O 5-|̹T'R;Y9GZ`xϹM79՗ r[yZ=v=$b˟ 7Z~~^iN1PۯzwX)_8E SWp5$O!Z>>sXI(,,!4 l?w斚'_4459ɅE'=50߳Jvt yߣm>u :98O*v"gWxɊ肜e@~O9Ӱsn;&&4ET6þLjDTA8=`?X#=y'`wBz}E iVF/!!= ƪeQYfeo6ňoPg],TlewHwQ1*@c@ԑ\+Ps zm(%+Ϗ匟]fwe .|>F>9F6,ޠ \ ԬtX㕳gȏbT8;X\o LhN@lWf \2m8ɰD+1QhoG^qRA׸lﬠ9lQHb1$p;a>=CZcnIaNU曑ɗ0]p J˦ b漝|[fIW TQ~ѩSkQj@l.a7X0b0ʠrf|Ȍɇ0/Ϩ(BԲ $<^f6U\UTh.pAG᫨CXc!ב7AWPj FgC7Qzk*~U?RS?{!>2 J {@0?7ut_=NpER y:BAY®QAY:ſ{!AbI>ZκpWŕd@l 8eDF@z|,[o: qjf.L0Ş;8ͿJS=,1'\v+DM<9^y!4 2TrqӬ)d9l/3 HLd/ɱZOj9 kH[{@Ӷ3 `TXNLU0( }8X<+i}awtsV?9yFYM au2 >Uq4_O +-Ĝw[d @T=s4I#,LPȂx4.D.=8!h#su~)-^cfFR՛Բ9]]|9k;P]eG3;)6fѩt!]!]I'D'ԫ)_FEybIwͩᄨ7^YmpO!B  h`/7شݥIkݛͥI!ҷ SP(N[eAzGKZY|m :DZ'X2*I+.tlk$T3Z҅0T#],\zWwoKPh4y"\IukCRoc̚8P!3ɋ-1j'yfz߬Bhe$Xdn[_kL}n+ E~wK3[X{$۲(*-'$L+.OFIYb&@rqsYp ^Tz X==XI{V&|'0AƳJ(m-@}+on2 ^ neDz$:E-BY ||.E^ZK4'QTn-u gm2txПK `2^BȮݨ-<*<-g,ryOXv<7#X(v܅a,2$4;ׇ퇰Au.3ʓ$SB/g2wp1J!;[L~!%fUo3r0pOL]V%s'3,'ysfry%(ͮD"f(yX[+j{v&dWOZcl!5Km_lHaD&eV'kɪ2ݚP6kɴS}^d1IB暈S!l#&HDqa ?饪|;.%~ov'RSpᾲfsJj%>SmPP{v3F~b;1n 2-,r;n&,$EO9VFs"S@>P~+%y;v-]&XuW@xa*-,YrfpJ*˥ōeH4zߖ!̃"I$@GiIdftE%keTQ.{㿥G6iثR?0RXR$ p}:lOP֘:F+a% zf2] @%/SP(bsk_,3onn ck9Y_Ģ&(Yɫ<İUQ$}`;/9ԪGƌ KYXl92k3{JS.zuE "yPqXu+{­ cc `tGGT(~2B{aNƦ_Z0HxjSLX֠M>}jY^*#1u٨pUGvT|Ts u=(cc" zp_a=rcU+E\~xB8> qQNrj|V؃Jbcu(`nE0K#jWiN6=Hi4>Typ*4UbrHP.j}4 /ؗP氃qX,+S7X9z. ! uZ6n!ieÜQͽg3jd/wϤH#փ.nn>M%W8CEqԭP=M2}ׄl{5U7QOF)=_+? RT[mܚIAӃ<e i?&&Mt k\.녚J+˕:R e.P$ ƃO#x۝B(攢Drlchb44.w۾󬲙u7%֮8M}'bX;L̡7QAku1Ek<4ے2t R7A~efT ):+HVZxR#f?t yZU&l4&˾R&Ŧi]rMND#+A3o\$./39{B#$0>p)nu\(*}Y0-wSё\9kP[4_A=# EPc?A>K89pN5.4^GҠ‹|ZKR3]NV鉙wek\Txߖ0 Pz8깽L(ԗt;Ml%OSsQh,_[ 2$ 5 qN<9c3D!Юĭ7*^eJE.lj@b^QR#,}#'(8Weg(Tuۉ? R8->+ȝR~)dSQ]`ALMbNjet ˙{)Dlt2|(S.˰Ǫ3w=3 !rΏ6So.,iL/_0ONxwq݉ݣ(xӾc^V}sIY,䒖ishK1E!7t;ɽtsx2=-XkG4N o/FI$jƘTjtPRkǸ(H,}"?7<`pm%PAA8ĒЄiΒ $`O|-~.NbRpݐIQ/r Z=%)"QAo{daTrQu8^#P1%ɗI(ួ=?'I(C? 8?5ymD븲,ev"8Ơᵹl8GKRa{pGfqrqxdЩO$>oϰr},F*`7D\&Nt8n57!I LcHBKW7G) kT[8Ϧךqp'f1yն r=+dGpk,y)L+.ӾH@W2$.Z-է[Suc ;8]&ZVC mۮCgjIY1od#:ǸVE.F,$VFo3r(^;',ٜ։ ɤ)j _6-8?HE (Nמ1(NXYu#?(E*Rɰ¡հz4zS\ ?[c^6e+^ )R+̌GϳGZ>#t[jySնkAM,~|iWLt3L|&!~3_6$e`I<LͼFl9!LR|c'Xe8V+#Igϱ#nL He^9mf'acyl7Z誇t BcbroEO$oWһA/OqGWeKHFs_" +Z+GK iWuLOGtyB1~EC\PK.2 Lr7\/uot {{;Ůq1+#ӤܮDR86ˏՓr[,$O3PTk%TR3堕wtKV+]bӳݔf3 "]y]~u0Zig Ɇb}+ XY|A!21K)ym2<(߉׎6=їԼT/ζ:d.dQUL)i^s..~R=k0<UdBN串?2Q?s AT܎-hG]I.BvkH@n~f CAM4=Oٺ{HZZ;LJ$ټ{`TᣨL}DR0ѕSel/>V,9?;u\8kD U3 ^TzNCBu:FsgϹt>dJlQg@|m(OFzs&qfLkF;~" Vfc3ێbO*OkwUڤPt-wqoтlwzE,TF^a kFogDSc\;P^c[Ù ."Q6;@"|U\=.@Oa63(3?H BYj*'8p10LTAY{ -&_`%;0篿W ;!^iٷIRb{\j+3%h GUxT.SskئIʼI1v¡(}N-좗43an7 $)$z͡,N$ӌ+@\J9[$-o _Xr]TX͵(T-!AύkLerkCU8@jV=F+K@] &޺&&62{ !>雥vim! `#AxO !ax~'q0`۷{Gohmx|g|*ޖw-is:ej>@WVOcQO76j07;orJEX$f!5^.ݏo(nx&EHM1(zŬBi L6\tL@6 AY3I_h(cлa(mqV)dHQgMI^I4C.±?|Uihk*˕@+p?ܟPF;\N`OT ?R=yXqвk d w t韸CbxuMWR_k78k WJLtE&Ҵ3bjU ڣfBhJ|R/kJʱ&oD: =O0F@pѬtFIU=84DZzmcJ;# m=/v}:~L/H4!o/ s>ݲ,FsN.h #LJ6Y\}'U*N\7hCdjPxht~_aecEΚMB^} @@%aGcřTk^g>Iꝼ8K /B*@JaLDŽ$!?ˠ2m^wJaY)m{ v"` ZHoD8۬CHh]VZ5ҬK;Y6y< U橱[:Oh`<(G&," 4Ђ+޳t#zb)be|, ȃtmAvS x$5no0e+u=-EPe~śtǻ*b 0`b*Eau))O2^˟ĭeCq=WSZb8GC2)&@Tc9^oRw. #W() Vs m`RHCJ'ઙ?(<W~xX/jvRoSASkt7E?쇵4~,# ]6ZlyQ.v'㓈'z )ԇEv>΃0"#6EH?u^se,c(@ۧ>8I Q9pݔn:T{R\t4O"ɭTt?hsrSQL /f{ PsT )-RJFC_Ȗ|7(?~j 4^SߦR$tZ(lbׅv% PU:]߅ H}J@Q1`G(0s} Sac2J)0V-dzkw V^εh R6Mڢ gXgʻ-D6 (#w;Uv?ujbqcl8_/ fk6xw²{txp( E4w~hDpcޢK;,c(R,;}#n}1EMqAf;dDIxMn`c=bFX~=s:9!Ȯ4X rIQaHcAC[)!$&Lww4v=D/2@ 0nW32YhOq'0_Uw8(-n@ƋCf֌4 YۋމV/Q<9~̤Y#aלn7s/@i5r,=Ca`qE~Ԧ IwA,¦ mSwc# | tCKgѦȾyz&u@ZCls6_Q/x[B3R;zF欤DSjn=Ġ eF&^ZJ_94܆Hj?"=#bkѳlV^/PlOwꗨnF+v{Zp?6zV9/ `-mHވ?T*Rw-,:3 *$ab}a!؋RdS%š[YZ1$GzT}I .wYmp,Yrݸ͹&_ \c7IdͶlOr%~c=%%%oS[yߕ]zMg:[-e5/"C.;b9R¼4!7wg0XR7/ I}vSO~ U3c2qIȼ eM 8<o[Ⱦ.Jv!=J<( `fɤwre'xs>`D 1]V#~dat-O5EeWs6 ?7}|[b#΀ /l0&ǕkpIt 牾YbřHCuėv뭕|,i׍Q. [ %dw{QaE pݐ,s:dqPD/I{ MWrNTn/D#sXh$Ty :yuUs^exg 6-^3>q'yFh!|ƂCJ_Kh[x0(F`:N%YR)X~}vŌ, ؏JOe}f@ fD#weWKe #bɥt7!eН *g,.^@t+2dNƙt&3-õ'_TUstO#5}Vhw'Druvp>oD_![9ڛ3I8sGTk?RM/ͬ4~umN?ΰ# mήR ɩ*l8Iod@~8-#½EqIlcW|fu8WHOhc\w5'a/D]I}g=vT?%T%+ oTG?c0~˹`B:૟`QJN{(?C'N*_lۇq-ҕ.h$6 ndgVS%WY^TeA{:3̣G׻ql/qM8ښ>% +I[6ZUF?bB|f5Ye;}F9Fq e{ߑU`,)T60" <;,x;U6",.nOz/iǭjL$z( Jo%07zu"rWDU\R=]C܄/5 S2g TP_o0焂 '\ٮpwKI9RGdFt:P"5d[K+gW7[9OM8ʿe%7Niac 6r5(5&XBSQ3=ixY.v):|ݧ@?k?Ix';e6jI~tAE"-bD/2ңj70:4:L Pܽ+cyĜ_WvEX^P7I_=J|4tLG;IM^pI۾؃1ǭeC/ UP9OMB/M  7Z`P~ r ˘LWgt4/#+"RlrXbCg[ċC-̓SN7Uf;ւF˫E<,󐂠PkeAŤCO3Iࣗgh/퓏d !V|ٸ#@ :7HڟmU:Daz{k (" +XET&HB&C]D9Yc( *)碓'%~oߟP{_ek؏eX%<6y^D.Hm]n>qV>lρ;?H flsʫN'mȼ%EFL,.CJWk=X$a<X)~"G3l'{xEFIο4ř}K 4:i>N=\ hH 91-y#Zk5T rꌶ/?Fp%5 ?N. aumEoP{عA^:[JLB7xxw%tZ> oP[wHx Xظ2AyO 7a7$f >9vlnVY"g ˯Ž'¦6 Y + wn״?>GsrH<hh!%e9yôe_8e[f9.OAT?ۊ'dE8O+ tNө"u.@tXضTwkl虱l؜Iϙ Yst<mu,I5;4U\=+l|wz~U-^nB%\;.u"B^H-Sll'ճƲ8̽ fo/֥yhge 8"a>O/?_a`Qr2%dB EwA{lNOA`Y-Me?*+Mfΐ@@(cuuT ¤v= : 2v>_#i/x>L4Iu5jO bbِ51r:h/^0YsˁBF_JEID^EH~I@sN H'PCp$G"ܽ-^LHhJvW#sIgds8U%1~^\K0f[ݚT07)kcQ.^k&vx ¡z ђ|,5:Ó1 VbY/17 -G/ez3ARBsk)éP1ҿ b=9?ʿMkɃDC5f~sJGcI,B'&ɹ:6!"*j /_@zj4e@qtiT& S gǜ iLP0 =lPXZKD^Wo6-H ;=R#ys,M X+u4s6Q ǵkYD* "FP -#7(}Mʺ o'W _X6RLywΝ!;>(8Wp lpڷKC@j U@PcVյSVvP:Fca%N刻k }ȱ ,Ȣ~5à9[x9sR鯰W3ǫl@́8-46#FyTF:V]ZQzB`N:<~ z\l?ghɫ~mq=fAOyTot5s4k*| :<#Zrƀ%yss,R dԃڞg,8uԸ%>b {&0r~߳>+] 7~%u=+ +sCh͈\;nfCFǮm&YW0(ja֍ 1eyw QY1n)q,ظ"?S><,'P0]Fu5 $evNzZdu,|wXVY $XvR4ߴq?\$,8ఒfD\aVڭ2 fH|Ȭg5vlȝ]PsIo5.nuؿZ3,^evNztdUE!ΰ^D^ 9ƶRbVP?W GH,Ϊ4)UbF YPϔ2hK&dQ$ijz1G8Fqܫ+:KPu 7F\*E}:R>h@c(h(ƝlD2fc\n"@Oiف(v5#AlK.XjLAoCDPOA\*?)WIҾD, A{Nhkhl4ai촓Wʰ}[b/?E(% lӠ~<R2ap7Fz}/qŖ&) 1' u 86kOAqUMS5Ч-'/.S,- BaH7-:(]e(nmՆ.mFLjQq4k>bIVEh'JÞ0Wd\]\`kO[֊ݪO~aѾ 0:N>La(75.~hVLʂ#tϕz,{ KC0oI~c"݅:'4]DV_qV]그9(3D|OR\'1'buUA3qs(zj$zW%CdV=߱/TfLtz=b̑'P3isBP0vdrↃœUx}P"1^a9+N9yRg3eMtaD4֋V}/~qIoIySQ2D ?xIci'g.b&g׷ɪ`l.;y`;v a䝭6 )U,bAq>1Hr4e͓31Q3}9(65LJ8WD"2f# n!z2Vf S:E'w{'xגX^X4 sӾDu!41 r yf 2/!}DpJ`v>D V}в$@W Uu;l8Rr"OEg碥A81̡O"iC8% XX`;h hWy=F7ˁk>D[BUW7UTSv:z}T`$m1 ՞45]^`GBrH$:W8o v?y8ZPڳ8"io\*C\F [C´V0t@rPѡ;' N㞂ısе0)YW`_ñTKh'3Z +Uo,;^ҍ,L4 9-@ll B|d7ҕ ?x 6QTnG 7 ɛ= ։y5mO8y: 5OpE):\|:IMg0mŒ$>s-3E٢yHz ka(ezjiWrݣ,BE4 U='pݐ66" ٗq']: ng(TYhfb6yC̢e۟[9@ĜeU[l&DpoB҂ytcw-NOvQC Rg48ԑFEH? E]+.LT0Q.)c~F xƣyC,C@H a_:r!M#vj[W9@줔_M;ubr1˜*{-sXWOFU^PF(V w6իt!Af:s(=I1+I%A ;t<%a\j[I%V ҟ>J6'HlT&)JO*hZ9~.g\Z繷1@nlb{F΋8z} "5>pH!PvĕS",+ZbwFvm1Rw4oqdik̀RN'B{v={8ٜEf_69@}o R,`y~/F/53dr4Ϋ*QKwWj v1F\yiE4j̎mth"SSbzk%z?m mOB=l%ej~>f,[:wrڨp/tI*\Z;-<+&,*`\%c;~d2xK4jD,Ft,4C&tjÏ/Ȉ+*|lhMAt .I]ʡ+ '\A˛)@hv`l?Pmӻʤh~e>B{9*u{%BjmV /Lg(BĿA]#XϞ*vʯA^"#8œ@"Uxl8,~Q3_h4r0G߮3, r]47/vK#IE_A_rV~4 D[zhbZ܆ǘ2y}`z҅WM)4<^xE0Y" >U D*&a;5{V|н|B. :  ZsT/5YVc"{:h{K҇ïdq].窆6;c39B)gԌT^xkܜܰQ^F71zboIGu"f,ދ) ^tiNfT:9}k~Dk;YV8"2 u;ͨqԓ\i -HIDHF8lT:O&huQ/ L@Z䇗g0rL+ȿ& Yy9ÛyPLpo&)CI2ɱcjx@d']\N\іc^Vveb25(h-\'?p!C_Z!'J*][$vk潞|U3 iש Ǎɟ71㿯?ϷEJb3g$.+@} )PW@Wa2g")r<cb8E{?g&>漾@!䔇U{ Q^JAaG 3{.pL/ :jnGXXqNg.cek07RGrb,]+v7 HilUg5b(w9H=#߃չaһH}[;N419B}>!9(0kdo-Ķ[ٷ;pXZaJ *xxcUv# ]vd?7-czm_'#% yْ w88 *HS΢C*r:Rjț=Dip௮s?Z  AہnG3 ͳT_zm&uhe8 Tl>+P5T&mDžFh17_3_5ADĽ y2LEڜX? 1&]#ݾ~<$ݾ5RAⴄFJ ϥtvH;9% B5P&UBN8)هo<ۗmakw G cKS|F?8Z6P)7g6刢;h{ ^Lw}HqC3Wnz8%`揋Jt@#-a0-sWvnӓ ő vz0ĥhX=l@OZ9r;X ibiޚd&[$M 4+3ݭ:B>DdOu= گn*uj ?Ro<\ 9@|6qC"P 3@`#m3k2@tҙ'YJQEs k~"^BR/C b./¿$4wA86Ţdp}#VNe- zZҒr[?7 ~Бuуz%2n(kxU˽o#CWPSc#y/~[R;/tE)\%7֎\JB ^n(|Ī3$C a}%-jی x籍,B~<) EA-?BdV ϛF'!R-kUZ|I#1n",k?S tkx]k9I*ڿ7-yM>2<>2*fUO3p*j̇mT " LI H$@E~+p1U.)$ENhԑ8Cޙ3j_NyKZI)qQxWH(Ͳx%`>H@zlƍGm)ʅZRP"R}Xs:=G\&LxF=(8|CW[lˣ]oz)7"NX*$WqY6OE0 %Wىְ!Aמ,B94;H'Pb랬cd>e X>4%9= gORyqÜm=;͙Rk:Z6s H߄ Qp:ؖg|:7;d[͕\Z6 t k+U󑈃InX?K[ԅ#J#EIfch}~XyZW>VӦ&\:g(6%rAmshp>>-I?oE [ _Yy SEC %Pjap&|)N:,orq%4 8u]nZ͈͑N7Q١6.  V齉TyUKfLKt"NnUp?lkE6'\~_ (:g\G)~;g'Kw_k{[RPiڐ(7kmg_ }XTqҴ@,]OEͻ :-=[R_cY@'ڛZf3hLw —sX Oa0o,B[UH^-R膶ڭ׾`UToYJ*טSjg_Vw #DLQV'm ll<#ZYOvj R%*8]6 Zoz(OFaVݮf?K+ޞE̻W{5Hp o{Y7¢4?҈jtֳy৮߯Qdmy7nWq}_p@Ӛ"\qș7[ ;,=s)O _'ɝpǓ9$CA4m\rV7!lqdM :saudo!DBƄx`3^;A0Ĵ"ؕ9ͅޱJu~oWKyy)zAB zaYY0|ذ&!t&ptyRAG7%dUH÷+sqc_qyl~@@LˍlYU#:NKxt峤 2z4fŲj|@Iki@k0 Jkϣz P,fXBM.V '1MA/v%*^=Z!0RcjB8<:={rQ8o1Vs[./)L\S vyxyuGS#oPGvۺynM@Պv^[ҷ69 $U޼T~rO&SȄcŞfjl8t8NM2ndpQ+ ݆ȞOA ňk.u S WK\7a  m?1G,$rH[vAI%ppD}(0XæVdWyJ8XE 8 u]򓰊ήe^F +N;'&btBds9_,~ zJ5{֠*ЁZTHG;ϋFYѠ0t ㏃ii'XY|WHmyGbug%$DwӜ3{ R]rRFp}Fъ0-J=Z~"SGH뱮,Xt`A3Va~rS bQ)(yA.ÑXZ3%SB滥) |itb@Y!X'V]4>BQ1D6=0#gW+McBvVMhA4K^Hsyػ%8dh.3zJ`!O{ԡ8ӞIw1; (47vs.8 yF}( PtBY.W& NF<(&C/^ǸA, +-Bct5y#P ˒siY=8& kL-Ȯ| lۢY_^Wxբ]&FNquծ쵞֤AFJz Uk:%O$)oMϡd2}?őI\ =bl_pk`W9 H9=:;CZG"@յ"e94*`d2:Ю X 9ue[5rѭb?Y jcSKoݻuX]Zm3OV"BW}PYd~dc'<㘭"gX'=+LyF(t㺈4Q?B~nEե=vT3`  աK-"F01wNDQ6; ?Ҵ+FsH=Pboo T 9c$#OYx&=0ƵE2ۺ%f׉똺&L1.5y$-9ж6aN6d$:Rjҵ Y1x`tR6d!*1pũxxw0+%V9@1vkѳ$>yNi"MI CxFd.~lnj a7(EVeb%l4&rjFc E⟼!1QNLko.aLJ/Z X/V|@ܒ7=犛f!%"֥ |wA{u0 |.yR8(O. $C|ZV%,߿IW<+wRkEQ?w5 AaQV} @o ؉sK ~>ϏO'N Y; *lK~{hC͇LLY蝂qAɳ>8kgD*o4J6yfGz0J$ʔ֌+#EA(g}dƫs'JߊZS&{qWF&-™-8kLMU 4bF>B gC v}}y 1T !~jU[&U.8/L$qQru/1>XXu[ڒԸ+杢9 +/4F!tOuJbc#`d ύ3=Nh`b^puy:5((+#}S]JS^Vya@Uы:VE$^%8 Vו4.q9*[ep@Kry"Th M:2iv-kA+;>Gg|A^ea`)n<\(U.2AU5yުϷ_T >0vS4Ȇ 5! 橫T#6[&zEY*~VY͸77e+ɱr *W~$Tsᗴk J鬛'M?%/mছ!T7Zc)ɠxiA߽ϴMxfg8 1|"dFzR4هOk!J5 x U ,\Lpaf,@LXxH:5jP[7]V5Q9Z@]"*jiv9  7{6*0#4S̪Dm hǫvO=y%Z3z7%ɖIBY$ZeQ\I0l]0c9I |0^Ge{=0?T h1x _a)Zt5y^)x@,SdgXsߖW| :\RѭPםQq3GހtVAV3ѢdW?20 Ӣ*%DPsaZoPqRu@z}T &p4gYm:eɮ6[Kdɽ 04Tʊ;gگC#%,`0 \{Tn) 3rg8.|b`Sl=!路NJa~v~k'ޑo;7IGqn0%>$Cʲ6q 'TӦuCG jqB| $xբ8A(q eon#] 9JB_I" ><\vi7U0dIJ2 ^*sQ׎L zz6%Uر qu.e%Gߢ *cW$RascjC] 7syz}9flij7UhWn(o4t LT3_XD~bZB t!Řv@vHi=v !YUTK $84LG?^2ev#6O,0Cm|nw*AAiV*S1j_8;2|UU 9G`Z}{E6`RNFΓ-}!IxpH7^Movԥ2ݒ)Z΄?5~0&$El1b/lDz݌b L٧!tN/0("^i5lO5^xyFl}H+5HF$&ͰE'rpeЈFpy$Ozɐ9h'/An| ASoh!A&U*✽2apH'GNoigK';q퇾m܈52Et]{,)gJ!Rv")R[,mA<jé]*6aroKBVmr圻kX2V ?,\{'f͌1!@[I3 !{9z"W&~1S7ؽsx$yDsD 2vSq[zk*oAױK`yT?HH b/ пIq4h]``6!mC Pf_h$7.RFBG(AQ%K6[i,]Ă|h ܽF mz/2d}k/bTtkQCG5Uş*(dӦcX:T򾰘 j%)/RŰLO ]b?Nȷ["GbyN U6:9[EC(ZLd5wȰwQfR\1{&El-$)mՀQdjSo>EqvK )5&;E2 Qme}V^@'/Ð36εO{-)@u=,ܣ(GV)v4"`gi>SbE]Ğ6Q3N_%ZKwgҁv(cI>fiq8R}"%q}y=R`i] `_Gl؎~z3=%gկ~TҖ'Im?Rmݧ4|,!kn5kPM>A#ѷ6 ߌ2D{fJB9q-3wɩSu`x/ܰ}řZUW\A)}w1W]:Ytgf>+h+.|`jȹ hRQ 5*$>7Th8^՟?\ogA)BB|IUNE]v~L蚵M~4AJX ل-2w}(zn0E:ng~u^!'_ A/Mz/;"Y6OuԳjc*=Cc C;,ʼѮv,|q;ؗ"(H)Hgd -V ,i $(M-B<uftYyHƨd6X@RQ#PFhy)^_C߁V^&z/'ǜFG٬HX[+ٝX#d|NJ(4dǬ},t*:XAk_9Bhin) d+\guGu-`aʓ&&DhF)"]uf#:& 0 wb?VQth*\`n'*Eϒk,;L? '!+'ތۤخR. 8y/1 8/I2l,=l\٨]էaA`&3=0tPxiTۃd [fu/蓸x5?y5xȣuOY@•q'܌^W9ejHMh;t8yfhNYv`Y{kd"7tlr9R`[s+hYfXxxzl:~t:q5Wt{~MgUV?&Hº5DmjԮه]{Ьi63̤[l"V #'{Y \r/ ߡw!AB h$UmHy]M@rkfyB&NR&ά3{L3̩4%O⻅pZ ~Ӽ G,c3 ǭ[xe#MZwJdV T5[ G^8ԻT@(I0ɾtT;Xľ007le1w<%&z][N*@?3z?nP(n/c{43d0YƷE߁1I.nQ.Fڔ։筠zt'.$t\Wtk  Bw V2(+Y1?VCd'Qתbj#k͘Vcp~3okMŇKπZ@,EUe X9-."eI mmK7-WJVV< zFZTC՛8 ھI0 )ӪzOgܾSV0w=\ϦgB/;w2}.*al"LqZgWhB2`Z9yOE,]F\[m-M7u #ԵոPdZ]ȯEo+̨oC弡Ӽà"A?\^Fe۽ƣTjٚڥr}\S^Sfثfw5DcYļ:ܫIwoØƿz6WN`?s\m@n09u`Nl!)likq XW[ “9Jd8 Yt!L'dѱ{Q-b[ %(+Ovzba7xZAB.ѹuN,$*@+a;y~./ Fĕϻh"Pӈ&A*$fm\a|yJm<;^e;1& SM79aSpԜS uaRAnJCKإ%kL*8U?3XkwYd8yW&ۢIO]{&A䰋oOӚd2FcB87:'/H{I=FY\8VI {71bkI<tcr?Vo>&QRUS7 ~HK,P w%/d"  %^dގH˾~J6$%#N8b$2eSҥ]д6~Fj"1enQh`CoTT~4m;=.f0!諆JKPwՙ|pa~m' !=sZZ Oy℣5d+w൤Jq4]k&% Ƃbkܞ{#ZIP H˶ݏWuYΏcdxUp 3RꉖHۣ<Fi"jH$(vA\ŭ88P]aCRֻm>fkGe#E:R㷺6C:]$(WW3'C[l \YCWÒ9# <+8qDk\ d򟧰yLcqp>Aeo܅vbgHd Hp!3Sc.\65jQMa|IDQxE>U$91"B`ݻQT|)JU.+mz&4K(O:x̉5<1(b6Tc,PԌƙ &?ۿwS=RO"H5ҁl s<{QVɵ,"9x(eG>Ϲ;Ԉڊ>HZih  \cmvv*GR Z`c:O+;䚵I܌'v]c`fo;W}fVWRi-ќqtkd2Q7.4!BfXC 3k%ǒȍ-!¼6F6}s⤬=3ޓd`#mF.@dIӝo#%!=EG ӻiRgMz9lcaްïZ.C gO(NX(xCL JXwC+[a@B=@H#fz rxA kU<Q#^/!zmO%MJnV8G'+,Y2ӯ}%uGAR]JB,0m/ ~ 8ıý}*6<ypRϫ hl" 򙾌 \*ń^8([(gYgI]~)`NdUtg8ǓuI~Bˍ߼2w6GܞM}>^ >G">b#f ?Ն6 zJ>%lCgj-S/5w_K70 2$G[Pܘ'+܉ -56+2o XdNuN'!JV^(W g X[ I׶!n$=nw n>Z͌ ܢ-#YmeV\]0T@+kJ qfWLl9Riqƨ}1(])!ŨjQ&<fn֎=,_ n?uvBSVw(Ϗ@cD!DeC!.}0̳{ar.A3AuL{K|ȃ5ZMN[ԓ~`$ޥ7a%U:lhh۞87^bQL;P&gS.9wO :ڐ~\xi<2"6$5Ǝ"=DIse'wBT#g AY((@iE=BRjCdu]p?oFV9:lTUqEh5C.3j_7%Rϻ鱱qm}W>:tFPN*Pȯ  ~lz,{mS9mw>BZ=yk*2;69XB_I N8Z dLsX?SxTy`@ E\|CoLH__\O5|`TtY45;̌aP܁Wkkj;Nud fcGs`g_B! S(k:Ȧ"JU\?2IkjId|牾'ާQEDɯg4_!Bqb"fBz=&{ YH*'m=<O΄\8{k*CߋYm `0ftͭTBGv5xrLe :w!Ci:c׊;kO:E؈l4JJhx9Ǖ4,7G|}2Hfb!d R0D8{{J^yծPZ8#S+`-, otmQɵ,X\ ]{Ѡ[Sf2ԿdqF>#VaغLz~Xْ*EŪ֢Stg֍+~Vd??Cl JBk&cu*xiRL~Q8sbg- ΅T(VC6k[˦9ۆCKެ5`({> &-(t~ ':4>e9B+-ӟ6 cdC#O)W1YWs&' f_$0Z _L(-@ju5 4P4[9#%H=ş>2$#jgIa+*ݝ;|a_2(™< RDMءB#Ss $Sm6gLTbπ߹I~Lmp|p8זuC-bw!OxUș֨Ԗnh)0^ӂє|"az:pISt+]i6H.Ccm]T 9Ŭp0"T;0gl>Sǁ"DՆh},2'd@el Cꑁ6;eNBIr" h7@V(@ EIػKTYN:9~mm7'Jq`φWaǣ'Wc517CMZk'Ohu.2}5*{pL@s$A$F0uu:R0M2flģUA*.p`zP ]jVhty!DHTla F㕚;9F3 H}_x'tF"sRw$Blwk%%X|Q&dJ_#;u`Xǵԍ8&dStm7uFIguL-'RM&N@7/RȦ#T( ՈPdx92AGFz\_ ̙j K@?IUȗZ bXhQc6Mz-XG4U\vbbbӢ%̻ WGmC b$aTLR _j7uTߖ$rT(ʻ9Ԫ-M˘`NaˌBB!*4G>o囉[@p 7Z1Ҟ~s싋 Vݹ&T ]\-q/r:dMOԼEܹ M+|nejpPoňrYM?YS-:2"4<E0zH^KDIx:bg w- Sٵ/dWrf/w'D;9W-Mf0 s Ll+*!pqiWh+_R}G8b/~=xcqۚ7"RLkR܊aNi#LL1iߺd?YPY ӹQ;W\ՏThhiV.obryZmVDIM1  NRIl q{Kwn.]%"[WĴѪykɦ7)(SVzEc!qg-O2y6E[/P,jNJ7vZݥ۟ePޏb$or-!3lH} f38<m ?" v˳ .]5iRc '-1i=n= DjSĠa})/~p34ܺ΃9!6!?>sk9XFH!$ Bna5U *JUNb2/_i}Xc-R$u8'ЯUM%n-Fi&T8~gY<" p8Foy-83S sH>~ܕۗ9˃$7]>{w9ibQ/bm);y!_(aiDO DջƩ?o]"~Y|UqCWdNNcvډk5hxp r1s?1$ITvqFڞ/U:wo6[(veXʡN|XSE|DW/ 9բsQ< Zlں5rIܤ V*_Z!@f}3C! ݵ*łX)sWWڑ7HӒZe x}ŎUdeIޣ ܩ55m4xLdu/{=tWkW9B{G0k"0h)-<.T]=lhjlM fAeqN, 턿5iyJW1ܴy'$kLf͎A hیLeF@)2_"=K{th 5 NJolѳrM3к6 D73HvLYNZQ`&Hj87́ VcٗzRE#y,t*.u[TקgW^Spオ\$e鑙OZP^R*kqf??QR8ARR̎d?ZIh96 u9GNH`-6QH$t^'Ű*(J2c6 ^ .I$#ԚPKRmN}5 v@^ 2K7:5 :gѲ?/F$*z6#g 7NL?L:̧V5 Ao\55q<75󊬫۵M0dVAH V` Ae[ 򷩻c0FC &/ߡMC*D4[i/_yt Eb2s³3_ܾ'}!ܱOCx{.ұaTULr:Tk¡$V =KZPD^ 2iߐ4; H=w4[VkGPC-4H9TWJTɔG셚*E$dCHN:5LDC} I뉐}M_!{^P19VED^;P˘qM=)S^H&lȒj U7İJJqrg2Od2'o9f;z0I^FMl[&le(G+e'Gn X:%wJ1\QgS yTY:XZϧ)?qjUUnŏ3Ge엔\G0kNt#,iH۬sG7;NT vLeز/<-~$`TH(; 6u7tU7{ŗh8qG,6_p[e:)2 폕$c(p+SYIE/"UϒLnWUUߪ8ihm\ ]ćˮŜ 76@a]fzUI,ad,{"Ҵ+Lщ Nk¦flR eTy5|q& Hr bbTq"?M!o*ǁ echÀa*2Z.q`nWӶV: Zd` ʝoլ: I`nY}lftV ͓T݄&Ž֌Q! IG ~K~Vj/YM{Pt$!@xNCLJD Vv6%M;|7˜/ƴQ67=9%(l`5$':Riz 57Tql+>S{}ݰ|E7`kzPMh`RUkh UvS"3YAzEX !LI(Xi HM]ꊶH/cjpk׎H1DYD.`5%`纹b1dyR>>p 棤6 l)gr27ձ<Lk?Tȯ.~,)ٛ9^CE)?@1ﵧ͈ԿUHQc+Kh(Hz f1Eqimw+ +~`Uxiܡ VBu玻T@7%+ J&8%ʻ+Mu#H.<8eѶlc!+OZFcwa`>5]3V)N ihjGE}˅S;7xaN/D #:tM ERg9W9w5!~[ 0DFjA;MY*%_^[h- +?!|on:ԏԇ-:dK}+M^ P,'T:'gDH6=lj*i\)4|_52gx{&d;". ! )g'f P!"4nwYZï3Y#O;pYbBV2oKBofIq7E/~G|sL?t)V4׳fL<$d q?t}sFw` pQm)RH𙞌+6,;"@. ,E l@⒲dOw KZ]&~@#5`L{=oq_/VN>BJeX:ە~g @A$vW+PBoParҋ*kӆ4)UkwxLw{4܋@gRHVuin^Bcjy`>`6a_wsl{# pJOpu:=uY Z6ݐD\}eUˬ^ߟ+OBj "h TrlM \~; >ݙHqKug!xt &jvDga# ɜw Y—wI+{gF X)6~!415yM1v/DQ}t@ eu)aHlTtͿ5U{GY6ڜOA +6V*E+<pG+3# ,7/]J1sEQ.#rJEo_2}/MFV.FݎӂDa*UbOZ1uw@ז8 ?9M ٢)!)xAg3CތiI: *5E9D>t"܈^: {s4 mЖa!9YHs5UZP"Fd.$x{bRvN$ VmAڦӇ}$E{SmA)N8#]Z,u W(_t.E= f@)KV+s6hϴYs4J]h~p|1F1~=zANX,tdrWd?G^m~jL4zУϷ#TX84eiך%z|!G( /f2V懒 N(偺[95UiʴFnXڽ!wLPΝyH+z3oj^i EbjZF!4{$`3NI!7r^%H3H2'EX#q5 Ӯeaӳf`j +@&*t+d5DeE-XiXD<>K5%bz #,N%>aM]^l\.a+8щF c\4Y$a71IL_J;aiKhd 8R-ev̕>qksd],&`gG?݆SW`<m0[pծ\[._fDTu"PS@Y.>_)6 TZ)wP LέiB_p7EDL%"U-)51*Ù~}Z"/ĸOM0>-"6j7IDA^<ݚwd07(ZS(tU5hCyW`segmXo!eE8>p(5͢/~&135iK.q{1nCxP<ڟS㍋鐆tp:fMpJ,~{Bܙ v4|h/X?_ v+;}bżF~ ,Hf%^,1U *HzF 6RfBdޛv5aͽ'!];Je/ܹ;~GOEi]V!xO]R$vD%҈d*h-vw6pg>02'"Js+pDj݈wTZ~[QCl"GmM;kT囓@)1yaa3,ȻUOLckLlyZ{BY{8صYx5PQ1ꃧFdjC.`챠 ~ d8Y/hL7? -5]0tE&fW 1G,q\"©uK̦Qcҡk ̭ٕ,{cln_F5VL|.J L$*w :eƛ`ITwPLD:`tFI)a^38ZũG]?}`]+e؅phR&N OH7:IC!_*+JcQ݌z0Jm;;f!' ȏk1u3h%yvE**UU)wҗ3bʛ/ *7AeDNS7)NJG?۹ןQ*+k@oS-7 sN#Mɯ<É.V*¤;S!s[Qx$PKQ!Ojq ]}΢n~zPn:Z*rw:,-K^g6l F{Ƥ:M="gB Y1"S,hUmn]8+3ccqLU$ZX4TRcFE(-oJ:Yun}4E!i:!y'敜t+R kmSU' @fk aƽ9/'z?|A_ܟaUd1Uu"#Wq֨ɬRžp&)H*(gi[`ǃ\CTrα!5ʃK2< ܶЭH$e>߾=`w " ތ6k/utC9.ԦvXPr*oCQ; E IP&dwhJ;xyW=xtf ׳+$ۼ ڶ/}.w",ZӃ| _d|ZOv\9Nwc};$侖8QI"--Ѓf=l?#M- 4ÝGG߄)6.i`A c Yj2|xL1N%Ra&wU] 3mNJu$x!-KM%U,IQ3\y$HAN#H6};D7:B4(QZ-Z\{mVwC:g"0/F#rgX  y#w9sxd3dĻՠ(s/@Sfc,bCU FL#@Sm3{)e_П!fAfR%jh0,4k3`ŠPf$jFi  m^ c }E5Hd$vk(2J_z&ox%э DznXT[&Bddȧ?8Nnpm`}hj>T@ hp]Tvatw ETMJBҦuX"-knM邩w!6 y_HI顧#wtT[e x$ ?F)s2^Q,5z>[5^<7w9Pcls!bg=Y@cY~;az >5YLg/J+o&f*AA}@*Ž2egnHEIj/(PTZ>oS Rm/E5zɬcK'X"rBG_;kUEĩ;`Pydt݈p"(Ld.|]PRl,_-Ȇ~{ mCFz+E}J"10ܐ Btino() t. u6 a Q9aB.= @wv99VM񢝸aqTYCڟ4͸J{ :,| \CS&pR Mą`eiq^.>^!@4ޮAxUpZPG/iDEdzhj H/}#_IQCTto`ݎ?nɡ421ݰ%LSo"rs\y#yr)4 N(#xh0oOuIޙuaeUc5]npeq+?g}VJ6P_NvƏCgjqyj܍t+&lRvJ(?_b),-ipJ&`Qeo&s7-.@Mܵ,I9% C=kJՌ|0g[ukl#'0 U⨗TlXme֪%lvd%Wx[g$Nmh]Ltaw%l.\\O1A˩VRBﭛAqKW/%M| e9U}};kt+Q:uؖAkq:Co0l9.TgT0'wXխ\>I\ ףpnQHn'(t ^2xn̯r2Bf1Å{jJd=ld~j7ehJb'`V5imvb/W0!;]扭Ԗ]-_ ºOW>•MTͱa::fp+Cv$EG<m$. ݎ(><43zdC;M@Y%b3x;`Q'DxҿoGZ H/8A~ typQ  c*[4/ܬ=Ne"GcWU3/n~-,b+%EܕCn:u`Em8s[2h<Ӷ!dL`Y=TG[%}w\ָ߿V+]A\оyC 8,Pݏy7u[w=ڃŀ._SWˍgqEIլp| @֮Uf8 (O$2-/DV%=̢3|z\ Ec'[~#I"#uOl&}Ą9TaW|ooe;RBTpPk6s]{'`Ռ_i3le龼6 ?I *w&FnvEL,RD`!'P ZDxXMo(L0@#$ ݦ g|< #Q~cSs>g-ZtsVfDGw~ԈI~i/r]KHMESd/L>QQF1]"Z:^ }BvpuTgUǩ'ֈ*!Gmmݓ; 0s^1Tp}$EL{A6.][zх$*nJM&JwRSFB/%4ߘ^’⧱xfA| M&aY@mYKʇO&yW@~#ȁ}Ŝۯm(0 +Q`p`3AMɑRrϵ# txKoJvB kI j:S­ڍU3G⪍ݩmN@w,~m F#21Dz P8Rr '5PLǼ-_x;Y9Yl|jt0+a+; hcZ8>ALЂF,^q.¼x5{ G/qLT`[9\OL􅘼/_'m2}^is1(X~ZǴ2y|9\n>r;<~ޗ z^/ }96*+p>52xe-$nzΔeӠ+fSy|znM\h\4 ЇvSr[6(k o&E9@g=6- 9q-!f%6HtfwZ|_}ǫ:?p<f`bJ"z:>wh{iJ]ϲGC21@D5\ *T'; AudeKB]8y6r-s} OTr/X !gZAS{=$R6{pquJ:d%-eO& bWڬ\wVi! EYqaݼS2дuϬ.p:"|5zb.|]1x tːf[,]G!x^LL'sY LVE?jw3QJH)<>Y;ZÒKɭ{#.Z,\rS։U/EDwd^qh0bughPp^%$#WgJb6:v-ha󢶛2iDlӑ/ƜZ)Qfn% k|7;PoT<@oF(4fIb[琇F*ܦDSʭeZ8iDZt/J0xQ͙&UsQWiX cbd'VDX(RBTgKTuvFIsٴh.^NI13cI.ܢb % H ^,K > m}D!(ybq.РQ/u;rލh 9^YΌ M֗ ef72n`AO4"&*SO 8 gl4 ddB!bbkĘY5x㱔Is? QF QIV`c M﬐ >~k~'Ztbѿ#'(Q8#Տ;4uX1\QtLޫJXxJsG#U5w<.-֩KC"_>XC]̛4HͬN.'C 2LOx-E됡@גqJX|.S_iE{[{LsBjQ>/wҋ5@-DG)0߶cJߌiՍͼmЭBԈet!GgKZM34]mm4i(3,edUwvӑR \Mc0GKSCv9-/gҖ4HZi;ֶu$ܾ:䧅`VTfʞHW(gJ ](Sw>{X6'5)3Ly//Fݘ~ݑꄜGۜ=_}%,)iv0`{_₠|в)]Vb/<?^@(R\]GU{5CSX+嗠n6wJ*cm{QkW5 ۜ2Bd[#=Q9O>"q%iu,XQ2a ;9I0J_p7Aa|,2mgSV#ܨkd1u7r.oGNGgvӍyF+}^:'֯n)r46IaRZB k\F9>uz##Dh3aؕ#OF5㒅i|2\=alAbQqBEfN%h=B^61+?WMZB}}?6 lt1D΄fQPdאR?2x Y|P6\ٱ% fnG ,\KҎDvԷ:dtCoMjQFKXlF"SϋnIWDVJtPIv}v<Ӂ(jhM$('XxRzCӁEiAy8aoTveaM4NVqTZ8O úQQJ鹿 O_OۘIn RS/:o&[_qc}=kFTyl^h=?P!eVx~`8󞿖X 'fH‚ dE:jakyϹb܊'neky.N~`ʂW_$nps?z-=u@sMj2Igw){Q\jx'X_tCg`:dR݉B> œNc5tNEu`]0bR O?u۩|ЖwvFcDAҒ]JlKј'?>}^x., c%ϫ型y %Kt=wN1_U4C"&zٮL(VĤg#롲Qltйl6PuDyQ Sڹ# K4 bm..?f^#φrt6O97Lv£ZYt%Mdh1~e27a˅?HQY޼!rvW=nԄSͳ@l!,5X,"cI‡nenhͷ>K,7TkqSOwqjĖn %~4mn-qw% fYlˡo4 < 4 Vc#tL+[9 K˞a$mG6@y6\{A=TN yеlM։sZ7#jR98תIZ`J_]ЯuN^ItH,gSr9&끺>%o:L!' p=,E$n#HR z!ÎciՆ*5!ǬYDzME6h1ox1bGYi"nс7.[xm篊n9@]"ߤ|9l8u>YRdjּ \D0V&۶a nvB"=?g~rwрM@_8ak|~G#ᘕ4ى7$(IPb[Z^reD5~,pr0^hsࠥr-B؎X)V=K=`LftķP (,45k_q ]pnr~~t.P\(1RQ4ɻٽ /ԭ9Ӌ&Q]S,/#88~7Ax*9 r/ Y58%v|MwoԴFm_1Hp+|IDzF20ѰlAc}=ۂWCCq {Sc=\ Fv(< |xֆPOu>=]>drhSeаcr{o0jjn0}7(@q&_2ŃJ67KVBXF$Jj~M-Mp㈅4)$`mCaa :3z>҆yz(Y PN,4gj\Cw<^`.2+y S/k|262@%>Zsw&j#I Leە=ϝj64LG>rFȚMLjڟ ަn-gxxK8"EPuUyU'mwonzl3>`?5Ua' dH;Tҝȍ(Ox"bT5Y9y,,d0M#-rV~\?jz[(86OxeB]=e~Tx2r=~uYڊ0ZFI8j>VWxtnE۸`@K.e-YSfKWKsq> " 6Z~-K]:E"]VtUy2.V~ ӗ^""/=`y ;xտ8ax{ŚZ>w77p^:0TamJ3wm+i.ʻ)׳)(艉Ư6\8bDd8Be3/'eޔF.7NMjчRaF=r~kEPDyPi 庄^n{5 C}:`jI7T\/x3r`5KB՝VF=Aذ;(^~b׍Ν]1QTib7PkwL;cMe>: T8XQ=G-%$aEb&{8W(ˀIG2㬫V9" e98Z^RTf1;a ESHX* ϔ58sgrwg؝pFQv3o5iU $gI7 =ʍhEs(@Ȱ喇\(ag-/7&{gPQ)[mRNn$u_̮{y6ŬѢ>q`ʥ(|~ 5]y?t 0RO%#|n@%RT M?@,$dhBb D;kwGO#aRBsz|Ǹͣ'aDx==5;uX-mS'_p/2 RV@̢3,>%tYM7HƙȊ+8Ά(^E4vM;[֮a˅ i`B)YV"uݽ3HYa2o؄+9T,ρ8u0E6͉J{qTz>EPHw@[^ob-N$m>Qۏ攠%xWM_+k΄mnw&ǭ!]e-1>ɬ5 3;@p AHCT8SJՐ>Cq"%@0BMS"^57FD񲱑&z8S&TR:^A1v͋k"9(.oهΖ/)ݚŧ! p<${+';N`&'jf(Vlu#]\ `*Elj<2u,L+(GV/);E(b}?z<$=gqbxTDt>Pe]* b`j 6(Ry Gi Ðl9 ;:^Vm.=*5$\{m\?~7WuEC65'vtd"k/$֌ղ(43ES{;̀/BUH:hRsD_m1j_ù',ǮjӷD.ߩ'j reפFHFWC\8R3*&A]  HzLI7-t :8*g;Y6;:H!pXAzʃ݌cI"IbBS6<&ww@YHl۷7v#wꘇ ;CVu!zAʈWXJhLuTV8BFpǒRޫK~r~;EO"jtk+J)rHZ;y/( IkjsN"Ud|Mnغިߌ&bTvUB4]ӈ_!Y llzT4jGAu Ԫm., R 6fZ^sے$V3{"\O>1qlZDjĨ"R_9ȴVCu U :1c)cfI݅UX||o  !VuA}.z hHA}`67mV8oL4DB+d79tq)GF΋9ğ\ސADyzO̡v )-FJUO?PAQv{1pC,6 jU}R$/"˲4O8zv>dLeԾUqJFA4ůטɥXĴʂO`Z @! b|9A!O헳ﱘZ5z"ciwGGه8P4$B=t&Y. ME׭*?*5v"b |}$u vl?73GlC}AZ`}"h-"n5XshmlL8"@5Iu -aUEþOGmtdBN(wߔ}S0U 1Fg-a'Q1Ɨr\AIȨ!S {*]˾&9V7&9%*S9*^΢;9t ÉaZCS*8F=-LC|\[v.3^-DC3eh! R *r1{jL:) ͔QPpyfum1&hH AmM\/PtĊ~2䃉0p Gͥ*>"\Y_Ib1#8t`mo °TLIcV6 p朷҅~BP3@QK1+ Xú5:57wr~V+`E4'=+݂7Ll?w],߀I$y2! ;+ ";|HfϷhm5j}b]^2U hBPΓ̬%R%= bޕ)D,CY*jB=uhRh<,3-xɊ.3Ƹ51|E Ѭ;X[WjB6v95xeRwx8,Je?.OwXL9^"Z58W#@v7f6]NqkAiHͅqXä.1K1hR!&xEAGyY4m"6 2eq<&e׾+{]M͸e(W^4pߋbYR=ڕłw*[ZU>6mז'n:Mwf!HL|1q1 o7IkMg@h'Dwa % ^!8&q>E Vi,g]DFVBr088I4c wjXq"tBA7;L@lz5W _9ij֓eÛ89*/mL[dldã_=ӓeuЭ/nC"6Q+PGZ^" ++湗J4Ȳ&{x9?#|t} 5Bxq kP2*CTJfm&\NءM X7ںofR$~,kσm,ON'$#țC.W 5Qd㬉q%ݎs(&YU; z _iԨd -1U,ID-yRʇkX, r;n>+j`٥3r%x88].ՀUڇbcǕ[UU28PB\iyd*C4amM!͸`0,z}SU'Mg`v[;6LS?-{n#wf51d]v[-%ט5LrjG u0sgLY+>QՙU̒P>T͐S~/ r6B4fZ`ܯs&\).+QQ+gH,sh3JFP>D{&F_n/Aw Q! !HYϯm5At_u2IڀIH^B@Xd^ۭq+w))6u9a-C=ELeY/)*7eT꾱\p=)-D$(SHP)C4q9vx\;W'I6wLc:+N'8HNm=B; c#/7aenm=Vyip2)Ţ&efD0#T~GEi]]m*PULU5^1J8mkUWϾY /\a9D~&) ( ,f[HztMF'MiF\] <ι[MFYms5e#f6CYԚTjE1ʨυVj(m"8HdFџ&>1ÏUwfR@>y4J t1n3zXZ}YsMl8;ɫWƀ9!U\w;`b08H9o'D^ߊƳnjМl=]y! ;Uqm4Cx !u <ЬAz㉁ηN=_{`cĜv~zޅGȄ(tZygYwpX7U+bX0B=txt-v0Ncwn 箐um$¹D|:6ݝQf~Rb9K׽GكXƬuPӋoG g"0YӝQɬsDh-C/j=fiS9VsT?TC w–RvxxЯ W!g_N-nvjf) o#ݩ.:Kl=WMQ#+ꒄKOtCb? ]$6<7ςpQTqf\4ӻ ;B\2Ec:84O;2$˕JsC1QWЁ[,ƛ* 2=lœep#_|0Akwl0G 2~7+FW`4t 4_AFYZv-l\ 4*+]R Azi·4}gpLj` n{[i_ҏ({@鮳gnM );2*8i-5}\g+IG߈y_Yc[lifj$\WۇnҗYc+$?[x {{ŮGTU ED7YI&([Uxٖ/&Ja|)e\d媦lFyU7i7U^Z(\hf?N:F$Әȱv#e+$kqF#dby#*0H~UE ~u-yR+1Hxɯ2*,"45"`hXɪk5;MHw.[]0"ǻ;z,D!oGN FX!/!GoS\h~=zsmwܶҜ+GGYk[p= 옱lUԒ[3ڡ8+l\Zp4U<- j ؐ1#l="߇fC`gAmNBK%8tRWx>8nha2'bd]a]ZJ rNu'2Wav 8ͧbVk ŗ ~ q-#")&PdA^5W(z Om7-q33}pI@\ǤOxsC m_>ޏ'/ f7m>N*[2#u+hS/1C]ߏ_kq)/ nup  ?$$xàf';Xxу=mV&,7h c݄ƲuْJo8vՉ,f@}|¡u]G)~3RإzXBZE| nha"o4*,Pym8b;>^5 ޲_z|đ(s,mL 5!C4@n <- L#~Mcb9` iW=~o_X4']il,@2x[3\-o{*|//ASeR',V,߲DaQAs"u"= 8wU` Rj q[9B{YVw_,"OKy֚, b9`/{ pt$I'"}C/Pl` ާE˱.f1DWm#qJTIY(J3WSw7k&O߼k>`ݐ 3RFYL~iyOxſtzJȕpםc:btt]?ј'rkd AUg8T71KBScZ it6s˫4+i#: 7Q={3cPap${ W2Uش׮4MZ˨GTXCrYy{3|6Q6v6Ϯm҅ȭӶ盞%޳VbiHm^_%9<:LqF7&HNl}"GM-qbBdSf>J|s勑 ^QD 0J|xDX.M"uw{pŘY4@geVss|j12+AԊ5` gُLBE,٪'16Zϩe߼?~و85=ƼvR i#/Pcqq#\g]hN3M\fZ3iO44.j~h{],fWz/,2x={ /o8ͥiYQy3H'`d#j"rV"1w3`͙,l?,ٚuFOK.)>6N!SVUE֑H-s܄x 3E.ߜ_6*zK|YJ k{L%Ժ6f3fQGCQ!vs^;VfY SKH S@2wy,XjAEv_Z0%\Л0vxiR<]-Zs iZ gS:$M!;cԭE/;|&>Ň 2hQ}(=.숂de wrO>Ǽ-b,y^"Cs)I%%2eswG_ %iD/^ut2' 񛃃*A5ڶrg0a>mV9X@f$ab dvV*1='.&v)4-55CVH֡άE#1ovqfPUSeNԙ"Ě.V$tA?]XK' pnؾ\_KL*F< l?_isYr?\1lh=B/3Cmc{_%}LD3@3{ skx/۪Xɧ)(x-HZߤѢguXq }Al6'& uc1QҒ%U-:|)\ˤq/q{H>֊t bs[Q>l 8(;NuJPRl˓k*Ϩ"d : lds5s8cۼ" .\2`Fֈ.V࣏,diޓUxzOlYF]c,-iVbyz-(HN^CYWXQ\Ҍ@"pɃ߲+AP'Jdo2<;hM$ccA [DNgd[7Bk 4"7Hn¦)a|v{oLeQ xfm|X@r4[ ˛d_ʽҵǶ3,F.+wTv<[4Y-Yu}r!Z-X/yaG[YM Enr/ f&g9^ʀ&h3? C4Cnks0J?x1_M偪WW; @|%pv[JObwwjfvGt75'D2 J%eS\8OHҋ+iIS横O@s3j.5<~1!=Ivք;*Ig>kz( 'h2ճr&U2+ӽq0Uv`,ϓqm)`HV[ _Wx,EPeN2_ؚ6R0$c9w<{.f 8廜VT>1}qS ב܅mK {Ux?72RiwfP]0S{3eحag/VM [~NbN h%Os?<՞U hBuGy䆼n 5%l|jh7Q^9I[,_ Y%PYݭO4 ׽g|7Vf\L|dg4cl?߀mIWJlGrdw12GyITw=!tmBZ^#Fks\@giWA7FՕYЗ3HIzw~r5߄.āEJ?L0Tт]j&힕%# Tu7`G jr]'DF4aL\1Ԑ]lD74%"Ɋ(Kb\׌} E]C}]4N6]v,ZtKx8,,;^|G ?}bە苢*%40K)ADuO(~^-ܞ8lcVTh#MC[Rs[92H8UcDJ?:.cY\ZKW;8ݥRy˟[D%ax|I jPJJv+Sb|Y041mK5pmɸÕv^Qq}M+;v a8}"O D?磽p6wi% L$|b0~ mkJHc"hMy ?.ɋ὇ɏpSvO<`'fS:X3 (~. ?s6wH˓:}^]!84 $0+/XdxHRW]S`ɘtpB1%E9{dTybXT2S ҇-_bW-ҧ!鎗'Ts_oIU02o;V%3{z X&2_R 2р{ҟ.ك=/T. Υ -S蜉t:ā9@V5kGc""=+D@֞<3s#'oyTmğo桟QAO6L].D `" E(Zj;L2|3Ҿh|'A^ D6nxuǞ3@j&vBmȶJxL鋞N/x̜Ѵ>$\WPZ'W0?Q6};O>@.^T#ȫeg7,菖WRxeD=/hɏyHտjQ-)HXcSK[DYF;Åo!ƖhPͅˌHsI+޲A Ђ#W!jj O.r*q5.bN`qLR%칉IWlLa"PF7 dj$"D6> P#ݵ5JFp$xo.We!wy; U{.o 2S*n@HXHoHn] ڎqdmky}1-+ ZN490{cb'(uĕy6Z Ff62Qh>pCn biɭi3Io}k]gJMMVY"0Z){q̓ΊQJVB+aBuyiYQ= fIK2 ʥnט("qiu_zx Q/W6ioޒ~<ͫI8FxvC"1wUꉥ$qj`mdu-O?O`|jLZ dx/vwȘQZid4"TAѸtIƾZY}*JgkR`XJ %VzϠT(V%[kLu6YO4E T:rPmBz*_xjp pΨvV4AZ;nMl7q;?Pbݑа;XO(8H50#{5ӥh(+W/D"T@F[KcacLՔZG˓kM ,ZG 15kNT+^]p fNydpkgg'b իh<;K0:0_DڐGb¨X2UI*aFdO)g7s6 ; -mXEDuPin[,H#@Zhr PTg+ڠ Okq\j%Vsje28?tG8/J'^[qZFRxc(ZNGՅ ZVE߁}WtJ@?֧"k@!5Nzl~}RfD5R"@ƮOm[AfO0*~0^Ó-hTkeD Mkjt 34ǐ,u :SwA=:xփ32y  ]0\caMW CB=cRFTs<9v*98!pnVD,i%X?6&zwhy΁0g')43Zg<u3}Th(6 ks^ >4ѵhQ6+ͲowBͪ3a2 ?ht6.G_e 6)b HK N}N2+qsˈx2uI 0WlWTus6;΀mٴ>'GsiIg.NJvJjoğU:yQeG]z^3 N=;ϨظAg\:XDCGլbtI] v tQ$<kt74)J׌( q! #gaGQg%(6h$o_VvH`Ծ0&̷8L1)KU';2k2DSoeá khrOkn@q~y nǗI' Z#PњBg|g%c7/\!9s8)xxз.V(~x6| \Ek^;]]=^arƷe[9}YJM<(gâ/O MKlC#<.O<`3RܑON^x ٬<WȠrv0AHWtIg$f9s/RT˛JTQyoE)udtZEVkDHqa_V?73*F8 ƋPΜQcP|o,+"LrY)T gEOiALGG>h2\4 o[fi|osq ~P:dz;06`nI ȫ{KTI/ ajI4F :d6󀉖xz|iUrWBE'm+ÿ5+ >foo7T]Α$vrn&l92ŦmM}c/jʙ)n k&9 u>6uI8[ll*}I Yc nK}_@(;R `YYpA l4_Qn_mV1?Lkb[.uUS]ҨO/n (#VkyXÁ[dRy2Bpud~QF^*|-CRx* 8W36< ,@a2Ǜz%AM(ZI02)V"=AbJŃ =}#مF."9_ t&?kX B@$3t W0I:`C+*].bТ--}/$rBy Qb|vBw1&& >1U{84"0wrD5mE4&v|MWFحܺ^ nl3qV<_Pںs B.Z_F? FPMgdOź_ s#Ri@Vqs=E|Œ4+ҷN)+w46R\I$fRKL0';fhhH(wm:dTd_!ֱ8񻍢!y Խ*dI7_<#ސ6jneDY& 7(:!t] J4" ;J5꼏$.tʖ2XKD%c"J9mjE†f}Ѩ=˭x5E@UBd =\"?G@g!Lo5W\}?@S\PIO +O߾ua7;t ,x>}~T0pgKhL䃀 nƽ_(1g` `ΪhY= <};*HdЏa:RCxĘdh Z#C֣# u0;?yߠHc{ٜq88wExj\y?KVpT3lD]z {$mAf"\sQǞ ?ǗR ؔ,$/g_~(A ~Rs.cf|E tۆȲv*q \cW ˩4>;0;g qQniK#޷ϫqRkejh-aq༹y1,@TJgku&| "kS 5o⇸Ӽ0\3~J\-8C>y4<b nhNcf3m.ZQ@7Tg>ΝNadmn.n,ѵ@Z8/%fn+РpS'' Bf^%v^:$'q Q-3-=[ p?G:۟|_pQi2YĘCr`ܼ*%z,/}9JQ@"_1EfKkR?SaE;~2^he ^kAq #GR-7'!eQ{VDH݋h?|_ EU^QKCEtQVO(6梵jJ>92K5‡zpC> ia;6TI25ߑ/;s xI{/|Ru~.dgaVmXj|4n'  >U`4ʱdz 㹰$k''¾k|#7NF/@tɏ!ɦ"GR1ၬ&Lq߃j -zt=eA(s{"4*o$Aw+bV&6JƛKy2nݩZBʮ"e_>jG3 8)}E]=P= )r KO_MԷQFIŖfG $0qZыN[|hNJرEuBa\,+GyFְ-y(9֔ͅN ݥTX#OOdt"/VjØzB4}2쩰͆UyQgύ8ݬ!tM]99G׃ory |Ǖ gDBIWa)j_!%w#\}V2&z++&h{kzfp}@#(6 rxY\*ŹzCqӻtΔV2>HT r7t*lF/58{+kNGC4e6~jEoqF Pb[hO4#T+txuQ 6 SVS0,a$mBB[sޒ[Fصe =thN"IhPɁkX7$9RD$$e;,"7z"t_l]W>~ˠVC42o |E16f}RæX6ڳV@]v3~9xgH0\[)Nc6Z`iG`blw L;pXolV]_lUّɕjnXnuRMghN\!Pw$&sҢo%C+TmWr?%ɄwΉ;;{LjQ ;Ϳ~(Js˲a4~][!]{w,r~a2Eh*&$97*L6 `" [nf!Г@`K6T][H,*EcƝ-q\~|)>nF+ےe/]x:Xh@Af#A+x+KIpa\4(@ 7pL[;j_"垃2ߌYegFzQ[V|=]hbDHP$؈h}c2>vS e,*7i@|37odcM^/xBQ-銔tОIMQuaBߞ %e7>YSS{b# 6Y[ʼNRBh6n[ q5S25.8+olrAi*,\mFW_=-yOؿu`itp[cRrd8X￟˦s=*j"K.}xg'ݴ؂Z/¿'c1=)3"z12'ʮx,*̑:Mx;9ga0,R 4 0 zg^ɡ ̖䭛WͻKGD{5ceN>>BPo/ b7ף [xʸCNdOH1>7#8{ Sr_(pR6}d rA0Bjyf1VC?dDq|+s^<|Ixedo ?bx_h}*dG̗w 2%Fo"ު0%8V g?fl%[G t B}#` 7sK|pэzsQS> FwL8ܺc_cJnەйH̤>M7Èz"P[qbqA":jTq{]Bs,6q2Uh+#ûC71U 8?ȯ1v953< D*4YA)nPSo}S0b*-κ05>9<1[fѴJVJTUOva ` ]S!@Ag² ť|qy|R2WNkjZN7a \b}(Fp\B& HJ )1L#KQ͌ *+ +zbM"nܵ 7qn->i$6|f1PD¼oa;yDyz^JY0S)ĸ|0Dڵ+*O { G5Ⱦb\DЎ ?{\.0+Ղ^yQy򬃆*X[B}HЅjnuRǮ\䥈;6ȋ;aҿ= aN u̙gF ys@,xK28[ T:k),A{/Wе Z<ͥU6]d=% O!.h2,Q!A44gjZtn&@1ewl˅ }؁\.:Ov'ȂhuWG6ҮZobamAw3v8E/;&)<ł]O^a+…~aʚ kVʹ90p줣*L>ᓼI.!3ty `5.lrs;`,\7ꘐv\/GbncFg(bpFP q"$hY7$TOɹ%"Tnlf[8):pXV\b"v؎́(Գfާ';PDZUuH7 ~m<(WE3-zLo:JJٚhS#JiN5a߆n%wbL' v)ЃZUckb_i;q#\n4lw޵K+ P@a 2dj> ]v#4uĐ?Brӛ>4iO$Z~huEP|.{~*cž x:bLaLKCDGɡHY|doTw&D"W2TUzRj 4IT 2Zh]}jhp`t% 溞:P?A맍YG%yn7} 3h-6B@?mI綶Q2lS/ij\`߭ ^ꤕ.ywZ/Fެ!96eT/èhw=γY xG!oE# ":fG m/Tw:u^sxxwH7$9=)"*u31&mI+8 uewQn!MP<h 2` ý(L&e<6,*/l~EOu>@ƒɀBy~cAZh9 fܨ T>`eYXUs'l;9[zdۇC#Nz+Z6ʆBܷcSWn 1z+k10]lz'bXek_MsԚ%W`{Y# }c麕,YȧŸXۇxt$ҵ=^FD֢U&+?CggcQcPJà{Bvp$(@Y)(?in"Lbu2 ^Hi`/A8J1yp+#aw#-PPYF8 5I2[`j}jH| rU2+|>ۆ\+KP6FT%KiңOs+(AN?^d6\u֭{eQsYt+16'z/y ԯGBZQhkt:Ъj؊4{bg\eW:N|7C {uF_I8Dl2Ҭ.YVwCbˎG >r9\<:?j] 73~Ϡji`vUFf4bM ᯃ 6%4@H/J>^(RxPa,roFnTbآ___9,f|xdZK;bnAL6(:@w'ŅZ&gWRxWCl: *h{r!,D :3LLhI#S Gn_L IaнFbЏ/>eG,_f17ihrn8[Jt 'F=2gJo8qxnu4eloz Q#WJu ռl=^uEUb1^;w^pJ g Gpy8_"LFo2);7h; &w_L$uSenE5 CyR w#.dНAJKMRgNLJS%'vĈq5"sn YPE GS28~&dj3'Ae%gV9'W !VO.Ke0 :V/}3$Y>lauS^ RyŊ*ojհPWqvc5&NWr84q69gKF F11w*XpRӪ{~Wp fXj;_R8I<@aVTZF-RjmkBXNDyoy{ yދm>6irfvV`ܐ&0PǪjSkGއpeFxaKϽ} tqh\V˵d +aLips9R(ژ2<.?\*wZ3.q@k+qBsV{Vhyl%/cktlzU0,b=D+JF13c{4~,%B}e&٢(SF,N,Ț.2"!mG^9cHml>]bȥKu4i"H9 Y1J?5~,)jy]w$[~oɫ\sz3`OS7XK)J$<-(ob[Czx)uFySFA` *)2yE4N dȡ%snMjv. rlW|dBqtYt^fjAf W~oro+v|s@ɄCx 6{ʜV6YBU)}yw=4 pv0,X 野648R쭇6Cdyjeɲjaes`":P8F ׏*bf"Iqg]nRobaJPC͜K:ˤO%#uȠb@'$BR<Lv"KuirlaN+㈏ųj]"L*U&ǘyFqYVD-=>|_+,OB6[1*WKn5 4m(kJ>}&{1ws* ҆MP%w՚w? (!~&q³ן? 7{M9 )!F%H{V@-) 40X,/6@ozy>]38ۂ/>=wP5G# _P 5+}$s1>zޭ<E;8N\G&jA[ ě AC k,>O8$F EE+T kX+mIIdSL(M= $yNi[оOAsd[ .E`+{K$.noehڵiǿN+? t#e,B3G`Clkӵ}$ɔ+\vVߞhEc8 _7{sv.ʫga~Zְǫަ ӯ %.70u hOJj%SA#j,d=0a^?M9ܣ}}w p3 f78IGŭ𖺓*cyKK(JBx$f -Y2{<{_?#4(e2ݮ.] A.\(L@RK5~<骈AwkCLF`I|z^xGl6v\;wݚޑb5'4谡~Pv.i3}@S ZMǧy(jj%X7jʏ+y2A$N )8r! 岸u)oԀ9Ś\B[T#kqpFƣȁEȻy^#D8c砄E29FTѩMo @qc;D̮PI/f]ø{&S_7MbGTj/{Ɓkr?<8Q5 ĩp2SbߗI!%7k遭ڭ E$!XƬI=M*«ViE,7u'iE!d'.2*i.tN.yۆNS҆lҙ.ν@iL (.]ŇrItd"@0/d֞h ,Qo$\vB̀)'e-y}Tp7R 6jc@Uy`$0R{#7h,⫴pW3gC CJ&sOxg@Z-W3%3be>VS3ȟv>MR n =-3nQoWrcE."}خj }3 Ii5B*"Z zBylei!m!&1Ykю+Ѕ2z g(#-]:(~`ܢ|6 +vxzF{c2[<{[Y\kX G(6!K"RCeҲQ3_fky {xreEb=SI/w٣[{卍gP(0gq~H~,Xu >LfN7}]X* /yJ{T!{F<>ߐ؄/g|3Ŏ@%5 #\Yu˖rǹ< l,*c<=gӫ<^) ʮВBM=4gj2ȉ snOمm{:+ɣAپ^qk#0 Wa/C;pu%&0T% H`Tzb0v u>#Yg6hފ etz7ЖV?ybpt 8󢬼ajΛ1gEtoh۠xLQh]ZmOd HP L"x[Z ]ET'\jªd2љ5ǂ9Q.5htg`/}?Ӊ\zcRO4Fͼ/!&#vJ jKCvSNd;U {QXsL jvTxOJ8Ƽur*ی-vkBG"FIR{^FZp$9ĕNV%8KUmAAK&, 2.\r8М^ي&"ddx7޻Pw1s}`Dx#DKfh!OIlXBAwt$or?9! XT:;Hao56s{ds1'Ƽ@=گz#\ĚP*k%S⹤ ]I>W9R"ߺ˓$U bvd2p,Kr8F <ȆYf]ѨDDUS(=Y$D1ṋ%) ZU3 $xiѕG[n]'!Ge1laWd(;qB.%kYdA*Yx%S!wJ}]ps\ e2ۊ :sM ]sY(|7Rx*=/m4s*؝o?$|hy F"-uܱEHLʋ31S/IȔ 5Q\}2M}ޏc+d$ރ%K/w'Yǃh%p"IIV4,x05,Hnƪj^" P0k)KF$]ʣ>{`\_ĵtﯳrٚ Ii9%hdfa2}τ*k\I+TΧ.(P%u@i{#9k%Ӯ!Y|3gpleru3Qqt0nﬔ5kOJF?P"6=To_N[$?N8jvOG9s5/ȌOPrl\A˗|uნ87 Ui##1+s~"TvVs8>,F1 -fKq򑶪BjS,.7ڣ3p6r녲Yf|NAq8ɴd3nOLf!7tA7X3-LH V\hk i=7/Ŋ ~,DGLT u+ F\ ƌpT81:逅Yz.ޏ`zw0U]QU^4#SXWiwJM!V3vf d@pii+֝`*;?flp۔#eY]9=Mi` [2-?" *yxd㚳h\Hf" }deM:6v");/Ô>EOn/EkÓ𲿜.lB`;`_(N>ru0Um4z7L&ۓa֧)2 MyynI K4XJlbfKBKsmb8͘GgRHEȶGHz,cV8qhK+ːw-X$ȿbkKkuc"<.q}Ǭ,!b S9TKO%U ,̳+4x%MN:k'>\4w. IPf"gR k>_T~ D]*s=.\{HQ kJ!Fɴ縷3j(ҹDf8ǟӝTgjTz3t8/[qka}*.fE&vv}: -nJ\_02ÖPVOM5#\ Ѽ5䣢|}0,߬jz.XQGd7k3t#@g=N?k=5X! X%fySZ8{rvt=nJکUGl;oc#ik|)ekbG6 fn qo+/S#0,I+M ~ύMU?nr0jj?Ut$9' Z%\f[D<`Ԣs`_QUAFԪТLZn9w߫Gb0 );?f V6Ʒ>v}漨8F?(Ź {~%Lu. kB_rOr9-bx,x7B%w(*D0mٺq };'צ~-a%7-? ]RQVgْ&BlbO5C-їη NH}O1. 7wؐ!:a Lpꞎj.3F΄!*?Tl#RQV W2c-^'g^GP ]O fcY$٨ s}pT6$:QQULxmS`#Dnҫl91q{Fp VHԻ%^!s[9BiJ%Qx1䙁9E׳Wm7=oZz;G `7$oɘwcm˙P]N&igK6)Ԁ3@[nݾҝi9(y&+ɺ7vWfFu7",[$4sqFq3D 3ԣlU]EDĈzOɓxNt>T[Ǡ%N=I>($Fץ7lψ+b;}}jyWǫ.$SQ)jDNU1r5-O%`8^6vaA7s? [C+zET6S,*^Vp6+doVC/қ<1{pi{#!eFSC; G[qZ×ڑwo6nU~,h!lhۭy1*p}R6a^޺tW`7BgY([cƦgG^?)"հ/te{XtLhxOT9{D $Nۥk H $ o1[/ (ZPjT\p~GM]`=m,'mx\w:]1gV牐P9v;?asc(&l4bIf|4۔>#˗I Q̃gZo;39A "<ܝ,VUJP4i (!^=h,ezas!׸Zu` \}OGz7')'+ ;عx&qFooڞS&u$tB(3[) ĕfx> NgXvhJ4704ҁ3 IڸV$Qҗ1[@[Ȩjbs[ؕG$vs,SN}Vm-ecZhy@ \72<Q MG쨲he\%2B!RM# ,Ts @K,VrYix?s1m=떦:6ɐb:RwUʥg2p4n?f&r˕ $ X>JW YNj_"~vօ<`Op|LEX_ ]#IbK0C rjdW:Z0ų$:io..eNy_aPUtcFeM jrJt֮#Cf&-vHC O?5O^&R 6b}]2 6=M0UۯQVZ.p͆=lu&d7)] sp/#SH*2;P5h`MVODe!SC QI̼~L{GS=?,czm78y.3}FPMW2VLY+(xmC=OCV,}p@FoT]U~mR`f{ɰ2{|Ѻ9Ax%C/cP2P$GgnFyҼ^!S: ]":>`yNflDcFTF?BMm!Y7q'HR5D\'-tĉ->x/H"ljS85w2 wÅIGq%X1lJ[ a?=oL3V`|il 2v>naʊ0G&0XoB2e4[9-}d3V:h aKɡJk19_~7P֓ VR-IԥFDF: Vc7_$I s֫Hɢ[-{=WZη\Ya^/s9ꗜő;{aYdQW§S|6OSn]4΂+&xROlE2]|c` +P5зM9a Ɗ5ٿq/%Ep3r?qiD?#PN4k,}+`xR׹dOҐlX{w$J^zoWq "1Y/K'`HԦ /𤮕UwbWcYCTQdf {ո`8Q~L:(j\Q3bJG$A;z9T}xki|jYIޭ_ :bg1?}M3U8಼A2o@nl\slpy.@pmtJSp`]n*2]T}Iڰz2wLB}6sVGK,"Ҳe˵֘a:GMXUbU6[J}L>p-3Zzm>Ϲݸ~S1iA8`yIYsw.lD9M=R-q^BUgŵhz$; v9?:TYl7V:X L\F;)LC FqLxєw0⾟)x3~q[m cVeFbꇯ1gJJ5t GhMFicу0ZcKi2"XK;BM$3}| xA2}(o_ݿG7#\Mt7YQ$Di].  @y1%Xvыm,4t,x vV0.Lx/=LB >qnUE-ެtٚ!:[rMVF_@y'!=j٧0PUXVk>;q6o+_ycY 3pǧoT"}&(%. mb!BL]C}ύ,vf2Xb`o-  UhqEhzV~5:E+nJڔI?~}/?cGdMCnt_D_eD-;4QGZ8Sqx| RD5K}®e{+zq|b=Ys~0&@8pK6.u}@C| ZbZY4ǎЪ)yyT䅁>yRSBW@'{ ߳V|o,%y.l&e$NDgQo4L~2},NMBTۘY6Myߔ ٶhR7w TXֹzL ٹB=p5in|;N˭Aoa6br!^~<.UsarCuGm#Y6U])~a6liw9D~ ? ؔGw'.)Zj525CK;ہN4j"8 ?\ @Z t.(Huj0HUBfYYԑ#F mm?~)yi ~]^Æ;CWPkU0&QAa}CHD3H_wi$.p)?O$4~KFd+ _:6 қ8EdW/ q/˃&@׀aL[0\ӭ!gZ(8Խ7^Bߤ -+sAR;1\Ir? @7>tmTݹ\mf"d[Xh7e<'Jvw/#De*J8&Njv$9<:rH]E~fG9UyZ5UY6 9BՎλ-ʿzz.Awr$aq,gK c #'TRʥ{#"N7cgFdl|+6}ѩ*\f(Ħ Ӌ<S'fW[e!Vxl##b8} .6+jYRݷԺf)mB<ۅE'lwj=6Cj"W]2EO^TJOIRYġLxLcbmL&ԛGlSQ7ku>wP7jNO$޶'^6.[RjrC?o\`dMmkQ`~|qճǼZB/\@i͘emxmtd,%pSH_~zw{oH=Nh\#>IS$J5ƳN0P(+E,'ө2K6 "x!^Җ']ǜN$0R> 4䎈M8|8sa &HY4VwA|z#WDi nܣ`Dh.q^;Ekns)Ȟ)J:4/ڗgyʆ[*hH6DЯ+{?|MrvjoZTS-].-y.)?c3hƃy|ywOJmz6d{r}Led3 _i.CīLŞBa̺ס %=KP7[4:Aw)JP $#Y2QcZ_O6p-Fh>Dw>\&YTvƚÃ#D!bĬ͛ɑUb'52ΧC;`$+ǘl LՐ0V Omw\[m]׎UȩUʗ% ,d݆3i8ZǤ=(To[O ;L͚̋6ble tL&ԎDrpq!@`!A~밤&iEG1m]64tfd' E gWx44[Ḟ#wH6*_]uiR^m- 5ϔ~S-N3Uy/5q'ꥊ I*#*Mnkx4(7\cJaZd,WCn&Rj 5\)7ʅSU[2Wh_ŮM?:O.IEF)Ăá^{ 3i:qMA}cd᯻U+ ̤"XS1˹bqgII&U_ǽ 0q} 8/xojw3{3!1/DBBff=x,(I΋?:c/|91+FّP@6rL-uU)Ie%_|7 B  4 Pڜkmd|^rބ.ΦJ|'j .@wV}{\#\B [BxC|8;9=v σe^Z([XGуӫ6jlY<he yU*6x`sB9s/.ʶd"J2Sa}EGcL%"61f}x!ܷxnl%> FLƺz.PkhSX]I&8XYKv6N"e=(c䃎 ߥz3t|3rN2n8|M>0lY-m9p޾IY+2o esv515U_r'X}cK4$L!puzuj\)OAet]@G yky0vWi@ D|jZr@6i^0fv l̗ zVD#=\" ECI"{<<0ѳoV-l(pQ̫*X%TLsqՂCc;rCrtb "7d5u~J &A> t^`MzgL툚zEoJJ47w#Kl41ԥs[7y(ćY`;C0O5hV뽃Fgypl=!Z[,/NDUIm`\;muPfK ->Gt7I, <-\ŧǔnS(l$&"@z,g}- C'wpv aƩe`M76%KeyȋdudWfXz(؁?rjcxJXLI[?pT据Gc$D$Mhuk;&lR~̑,Dₜ]˷| d6zۂıRrW&}7%49f2 %W`΍ O/hv3*Ak+{r;roϬ .&_e4ϼH;aU7,GRw-MRv`ufOIkܾa)A*ضu!tA +|?T`:y1Sq۱eɭ9?72s RM^cnB$Sw ,5s tvT΃d]c/EZԣ_q Y! aEL(PXeMviOHRA%i =ÓDsOCy9nDo~NKl,6[rP ?ՈΉz}bx@bqEJ50q=H! SPy5BIL+ R*^ &^*Bu7n~Do%|,Fͥ>W_J D,EkN׏vd`¥w&:D 7p]zQc*\D[/BEfL`ߊ|{H{QSPh95 wwE艈)ju+&-?Q|qKvmY(a0\õ"r'jrM?1Ҕ^-Ҳǻfߧ Mg|QW~\g#pQMw>'גJ G xT͇_/\Xï6\7Hmaej+{YSF)a@>ng|~${BJ6}*mOotol$8xnB[[n]`.QK'̈́G{q x`y &nSS1:ZF岑+ܭ߯&&&tP,?ʍôɜx`j 1Xmu,i$6Jq ;Jj&.AIׯ"I?j [fpĴ*ُ _d5=J/Ѕ@G ąccW ?*ʏ~"=v vy$84*]yoIJ />8Exal\ 8UED;5$0T@DCYf[rB!Ԯ.D&Y۞B:j(xLS<&'Wv)ĤV?ղo&NO 9UOSOΗl|a@MAr҉Չ·!d,s189?rmiu=>_)䑨/[sX.ϑx;{.tW / {lhΝтnGnoÎ1?, X-ҀzP~f; ~W]LSnc `9PNZPDB@ ]'f0>q bzb R$+HF|8Vf*y"񊪀'[-JTf/YMmtyxO"&O7J giItqZJ-pUI)>v.$xzNyĈDß]J $T8Ü!#%.j/Nh/W wc-b R.I||e$`Zc݈P-H޶uPj%"ĴA1y Bz<`ȮjKi%v]|rMb3$tb>_?a#y7z0J/vա7p߿緎\q =%m^Sp:6=8.5?EJ 2oo`Ɂ5|)黲  *p^9DC{Cє>V '!7C- E| ^"؊Q0|/GY/KMko2JL0B~"P(:e9؀YbbKz~͡Tjµ"EsSkPoI8$ۮѾ{^.P?~bB?+X2PPZF[$z}(?ډ9 $FJ3u9$YtCtT9ROT?cU6ڄTtcZʆz,DdV $a(3}%<՟GgM >bTitEi$!;e)?=!1a?tEIA5N#=$Vyy8U#LQOxVknfD M[Q,9N Q9o/2JPL,[p-wdXueOfPrLIhQ2/KIͤE{= x9xn{ hf _tX _=15 džTw\tJw(|L3ޔCk ),K`Bj%;¯=3e8N=Z9[q!>,(؁'ٲD3*gWb,2I6:=#ߘc*qtÓr[v0n Rj:&#I9bYlaUcB#k4^h?RI OKPRYPS}Qatǵ ֦%7tChfW[`믘 rzy0UaCw`6g@wدeUpulgU=݀=?p4慔M_ѯfҁo8d:7++Ce\Ԃ>e4e0F& o-a6Tb-N.< =/%^%oBE:+0{nB T L&blI|<#ـ_55iy⑤ vΤ^Oַ)P%eqtm&%ޭy#2)?g?x7@-Hsf/=j]hwJXчZuAz>y*I\E| wJ^ uN j9 mdu3ǖs(A mYx){Duzj3xb(lڴi밃:b@okιڪ]242|ce;?0lt(=tԯ33.IeqΆ%z^سt>]Ot-EwWpcyT==5#̾MWJ تI*rwK@8uD@ :V ;X0 gwab0=&H1?|`"{/.} }L'okήjҫ3 -NQ2IK$JaB;'6_kאLAC^ˢ1wUؼ נ* xyp+}+nYhyFWE 8jgb*eH<5X RqBl>c&;Ҩ"}n[1sOɑuǎPNAeTպ"f3lv.mV v $:@k=}{+U(|Bfm#D"8ǭ3T͡a]RK<,_Ф(緊UFo'L5hcmH?7D܎߹;+ g(AىN)6V30RaFIcvL(* Sի\+OBv *.ZJ[:D;&hRO OwEޖ ZxnXSl)ɸ?x!=39gnO#Sm( |ȔUHDܒe&N)8 a)`w zJlc6ד#Ht}e c^C"M#3PeX /l@Pmv3H5ɓɆO@c3?qˀ@lӃ2!jq!Z@KhPb'~`YKI fz+j35g makL[')dD\C)ǮylsZøņn iwuD=WV Fwa, "0>UGw+}%p];!"䍊"P VP?_7*F6o3m'-%#}4f0+䃟y?$J=T0['/xH$4V_~|j2Ve! *;/Eus粣h*j5Z3j?L$"9V8o^;*pJO WpF) :gKI\Q0l=&HO!iSwv*3YD|¬ %7pxWi]*7ߕ_ SX2" atR $`ͿZSz.N&~w/ -v=o@sSNF"U (:;&HX0,hosٯ*jwnfOY1KfÒ\γ;TqMʜl:fH\:١d[2o0jmp ߨ[}f"w%7\w0S;4壝^\|)_t~B-'A&g5wџ0GqbqT785|*ժ?ssL <0Ĭ̫4i>AcwC#MR:'R}UH2&qU|V"1U #^TQP1OI{IչVȜ@Ʊgߵr<;.f3D<=K!]* @dD.@pȸBߩrYJTu[㵄I;N=5| |gZ3Opݥ vA*yj3=j"P0k~96f*|=!C)$¼$ Kw2&zsWz>b_J1zaidn*=dpf1RM=ӌIX 特Y=ݭYs9+ XJV v8rE*}N?'5(]Ѝv1c{+ͫ ~Rы7`m10e?eJ0e3cho]"C-QȎ}ݎZdCY7 LB!^ze\$ H"K3u_0!C`[ү$DSY VuO&]WD ^O,g?ОVgI&D'SseVfK;ieGTob$PeC7[+FUy4(Jꅽ ;Ui H>mQ͒?hp]X&8rٍP.^Wt^asՈ;0uMEqc#ӛz0P64c(fW%ťA1T8'L[WiLT[W\!}V$[Y* ُ޴h4kUʔov%%r"SJC3oiIJTٶ~>m mbV }\@EO]zmmhk:82:,욨8ⱯBL#a-xpW}P>mY4GZݠ=_1962-\TPD0c"?_7zzCkح:dhEq0Ci۔ìN 0mSTW^QpXza[j1wdS9Y~$nt-%7K+-{;X ط A:ToXFpAKGQZ6$l"63in1W£gVJ˰_˞A83G=x-g~ FP 7H"Jc)s|X}(TI6r]Ob/##aH -(k=fkR0ºgVE)L\Th쎲(l.[y y5nE!a|:l}a',I>,1Da% (m8Ysoq#`陪5DISX=,|DF!nb4Zi{;%cTs75KJgL49ۣqU,2t-RR+mh[®B\z GOtsd͞r6Hq# ')!6$.~)nN?S$JAjNBè5ÑeR?>ў%*RX 6V(wD0=ӽTWwO‘;]\$ ]6g5"tK9_dng0DZ PO?FaJ?ZTt2kQ4_ޣ@/qWNaB.~(KXz5#Cf*NiISQ̮G!ۏA'9^/?7&KFG%;ԏc+E6:G%:1Ls1Z4.uS+܈ a]>h㿙 v*?l{'c}m-FOZ)VDGj\]J!O|"@N#1)\V3\ d6֡_t_Q:`D+DuP(_D/LXT>2dUP|.1Y ~}TI,tݜ4#:Quڽu܃=9ֳ7BA \b}GkeA{K-KJG75.9y\_[Kfy srjƶvpd_79l4nj#P5O lItk;+ע|0x{q*.m<_4tfxLbn ng`f3F8s$B!<;G5lL<*KOn޺`2 ^6D(AP9&ɆB㩀GύBduP[3*|FDѹt9c''Ո,!BL^[e)4vi{h 仝d7>ȳ rys`Jߪ%VyMWH"QY!oeҔ7]c {ԗu0$:gχ#!nd`\ j {H%mIOlRߑ+k7[$5>Vatւ߽1 T֦RRY~qfn5D#q-uQ7i67ylfGw*(sGͶ?ă #sN箵WY`.b@4FP1ߌ)YBr$yrZa>Ii*" +2vp"o'S!b`/8pX=Rg h3;Ѱu&:TXwTNj]c#6Dԙ~B~'d+=wAPe}َaMW>d%uye_-o5B?6Y[a9;$NMN(=)W_k3j[leo}m\'[jT3ゝ`/nkWrpL4,/X@3UCRB!fN=]B{-An?|ml%J/| {;[!w8[7 ~:_GJw$5n)vȬL jRsZ3D%gϕVַʘ7s(/<EK9 }{-qe&+H}XǸ:fP\0F5 n:YܵEL>*١6ږ&DTKԂ~gQ52 h[j`)O:쭪8Pt5$ols )ky)0BYQݿT >BZnqWQhoSu W>X2"S|27]&5CF=NvBV9US( |ZbC΢B>lOgvu(cNjrYZ*ـXȄ-1>B|cVx,HUwkQƃKO蝦Kzp"V7fFEMŮ/E@wuxۉ\{Ie֪ױsEL!W"w6Xq2%Y 4u=1R^$5Dw#2d$w}®Ō(SxXG*G2SW3[BNFgY#)X4\DIgTCsvu2f)ӵ|_ZYe!-{e1EY&\P#/qa*>E7asK Q "!T1}U󩎙mM[24D7hM;cQ3]LזD 4κNf&L'h’{~GO>~^"rA | YySLSHwlE )ƣGC{fmqW?&Bkɸ9w+YLT+5RkvW,wzR{OTۀ\o㍖`R Ƃpc;@;NZxciɭҺl%Is^[M3d/|FoH)9QmoIͽ?i0~!YVw=,IDg yB_r#n#퟉}Qmƒ#R_Jν [$*gڄ/Z:}ZvFm #W[I!EQmH N2HS -PR–'ayRM}Zc|PI9aM𫲾KIώY^m5N/m>D=Q{SaWG.gof,A4Ƨn\'L)c1,aqܮB!yUz.Nћs[x7>1z04?#B-f|`Ӯ8[U=5g SS:ڮM@V96/'gTlMbW%IJ&@c}x98>LX3./J7R|cȆ3ֱE,⸰eR}]<`*+Z)TC+7vY13K0Tk#<>0*Ӛ5= RT9oLf𱿜Hꩱyz `޺|8˦Ziyc" U+FՂoXW{ ٫#փۭiE1ủ8G 9~Qx*v1RhT$ +9E J Pr)5ր[+LoUw PRXOZl8$ƒT*<|tP 3&xdoHY]4룦 Ye }1-\j)ehW\3gM!ÕXMlc.UX^۬*U "n-SFC8pĪp)7v2L"l&Rk6pSdϮ"̽.%"D1B,aϤqpU55grplo.a^9"i0˧ll=.ko<)QL_񹘎)K2 Z5jakgpQW[bW?yUE9VWFYTv+0}[)Hp豬RRJ%RhgZ w0:܈ZdhO<0]HX~. J[?qpVB6м\Gޝ^&5mϢ]G2v%S v-GWTF[KY_!c|񓝩VG0Wsń{7"*:+ *.Jݤ1dPker5mjJH $:^`{k?(^j"~R4Uo'w,o3HSjl?H&F6vU¹OȞߊ^HHy/ IHĄ Z7WˮiNe'jd66n]B2>L`0i첄g;y,YT܄f9~SHnx#NNSgԗmP={GoC<,ܶi #3U&Cڏ0]:9#.ͣJPpw'T\r|L=B|\mjO-`H.3DQx@&a{|kr9U??>Q/ .04җ n4q_iu]e(!Eӏ,w7q]h%tf^ GH\` <}fhɊ c=Lx[j 2X>žիoگܧGn\X1m[4g!}I7:6N 5Y6C`ZDƪGAr*PLiL%Utszvn\ivTbⱿ^zߟ-1ǍYW|03gUZTk@K}eG-~Ҹgo 2J)=GF)4%2ϋX]6wiSWZ[Xrxf\ĺBpj[xQ}NlNӉWENka]1r+Qhi|GZ^$^Wq5 =5fVKJw}tH*k6Rrkgjh)vF|`C``[AF2_ U}bP|ֻ5Psj 3֗G5&Hݚ7@~iND"6p^us4臒). ߞ[Ԇ . 7\7pϺ!_ӢlY~;]dP@p^и*Q2 y"Xw,h4p}}YYA6<;aIE ¿bV6M|Ӫŝ&Crlf,ffwDqww3"6^`72w5G=_T]ʇ^B?:XDЁ7^G } {ʄ6>b:+ DW/KE2~/N-ɼNцy$J*T(p$"o\7t ۤ1]:lӬ7eq>UO>Bj}& !;RL5 `)ĦZ8AU`r`_pOj.@ⅽ&Jfjݪ[Kv(3i8&Y.vx9gb?"3cjhՑ  4t5KS 59ިxnEuN>0[M`+l="EM[Oe~K #W-^IW3l>@fQhU#5";Z!1%uN2eCc$^'H|LV6il-K6VuAkKIϕj0v/Y'$h pgv=;Pf's)n2OC} ' 4L<}@+eSS Pp土5hw >J H IB􃖂R?p:d$n֟]RyK#|LjyQ M2{?TFp??_\3WŎlD i ݙ޺lBK`,rSPQܘdlCVD*h47SZVťX/&Qv{mbx[r/eӧ4c6N;h[Z$"(Gu7^ՋºZ )(͘E?e>Jg ''v Ł2np0~|Vnh""<> Ij3@ٙ `cυ4PDv_ jwŧ*TIARA?> >G[oN zMK80;wl%XŠ+-(7jhqt}P+q`)yeDY.QoFD`NgEg(*m Ё/Ƽ/..̬,P P /Z<#Z{t切ιQ`ȡ8YgU^7gyA67SicM&ޥr`^.Bp??.^+Օ/ 웚j5w<$3S^eg&wɼ~Dl^?bI ᚍM{`׮YO>}ݢ.P T%Uk<҆D]^hNze6Ƚ,򩭳QR*\ GYf6'3+ 2Ml: THpsa l+bdz-ȉ.IZdb#> \K\-=;cXn͚R p-̣U>%P<+"2a_@iy_l%vxm0 Pj10Zx D(ݳQFXlwt ZѸ )e#!l^O`-@{U$_)c؍U$1 M*rAwd8[@:\%ѥO<0i/;9]$JC\$gO0Rkt:eh (d/xP;(Yȁ~swts俋M;|𡍊C!ˣ`M gCq)цw8.)+sԤA].H*XMдbsAc +NoVC`0 Z*c. <8C%JûfYH=kuy<])tclhٸ-f_b;cU,%lbFdR _կy+Du]v gPK !VԖlDQm`Do Pav Bspjd!J1ʨܰH0{?wV J5*pv+9(aϙqVHӊ~JsE!(iƱIf-fhۃqx(v{I9g$}/zC<6?GQl/RGd89t29G'#Fbz^DŠA9}l{ekit͐Ҫ"3$2 s4w6fvfquƨl;f};z 4I 1%Ѹ,ۑnaH4ݒ-H2,uL]+to?&x}]_lKY.;ev3v)&qNZ.5-mȁ'%xnU1T[,~[Zҥ4d&x}mTAۄf\_J =-m3=5h@cGUPKoyX%&Y }L _%LY|XCYbDdn} nY7]}$]:yg4L" 2wBc15<@ܖFA@&AHitqc&y7V\maX5ix6WA*->73/#PhVlKM6"w^[HvySSO԰٧V-󵷆11wl9KRA-(OI359Crմ֟&[ XtgVgaGo|Kώͺ3ӪJICɌuCE[}.vD P=UӍ!5~b\ǷML];qՃo $Eoe5k9mKN~! yJ0)#l~4޾D|BvP/7_vUeEgn7DA1TYՋ7KCu W"& pFmIgl;A2}-rS}C}ϲn4" bfWሧՀJn(-fm5^z5c3a{O8v>,YaD ׭5%al6LFWRA U.j#ϣN5fH~$M[!vdH[AE??p&l=)olrj){Y; W|RGP6?>,˞^襃̇%8~.4o 8eIWqVZjL:ύ!+m#(^azXm__wY= 1@ɓAN Lb)- 9B1sr N ~Y$>N#x|r3(70B ZFM#3 5Rn{wsI/^{ˏr;LnZt;ϙ/O~ .Q ͐mo'6yQG40#?Ҡ nD4[n42?-Xv#[݋*gq3.A:- Ȍx'iHfz0[C.S٣Qr%]sJݒD#7 wytp p305zA>}f\NdQ_( u#GSjhiE41nEHP!Ln{}bH,..#BH8zf;dq*+~H)3mW$fCR Vв+\-C?"@ i|R~Iy3 $r2'Gh+Ҳ|D왅4N1Yzh?œ0 R/7,vONMsWsEϧdhl)sĆ&bPoUd*(懐!@=|CZfCOD [jpx=#%E&L9궵 .nwL &`WUR%D&WN=z(.!9ﴉƟY۠ȦިEJ컋k7I /Ϝ<蟻@]qK$odY"Wш*yS0!nN)6&Ӕ^7lT 4*K']c9͙*ZrBpÌ1FUCRNSMi7<-oC$ $>%@0x>|kT6¥֡$(#YGCM}dYo&{8 w_p0I _>(Fdܛu̽?VInM"CqFob1[arj\+ βW}jUpdt^$karR&ĠqB\\6ΰK Ђ"y@bN jҸ >D)jH鸃| XxSN ژ|f'd0C}TVҼ1&w0`kqb.uPcr2\C>;E4Z/N&/)^9~^{S׋R~{˪~'%SK$=s7HNy"!Hϥ- 1+]I$M-S|t7ĤK|4H"sWi~ _fIZ}""a83d21+$n}zP+KE)*f)iPTN@R+IxW r,"-ƹ6?Cr^EfL].+S*<$-}™Vd6 ycA:m$D>%$AΗB娈3o%(3}yfy'wmB&(fE3Vv~`1Qku g}dgtBw,YÓE[כȮO/>i+gNNU̼|e-<dUzIC$W0QB! yi2-rv26VJ{.B &ZNQZ*+^qGį:D}v6klAlʢGY/WsU<3'rއOvh2?vq3{|ˣNc@d,4{zT#asklڍk~бPʹBY{i"7n$;~#(Sem eR'IG :~qB `P.d*.օq1%'O9'ZYݒX=0 Uڀ)-*e}@Yd.nRؑE -XvN.**qM/`-q{.Hum3zX鿯g._5f_>subUeN[Q.C^"aɵGMP?kkmgɱJ^iGtE3XD6Jts#2!sp-;n<};hLdJ0|uBJLY#N9._`^~f.&mq38Y4 *%sf5&JGz0V6eqW mZ !* 0X(e,_~F` 6ӳi:p?e0lĴ2=N-2QR$ﻸZB{wgp1[{@ t08*GS0"V.\`_ޖMhk7%8G8E>1 F|E{*|zM9=&aI(00| dЍbL4{]Y)3v)l#.qqWDV4^OM nПX E߹_oS@%[ꌺkȞ ՕGH#&&#PSKA nnXɨc&G!EChSV7-=#i%[%7'#.,h0 04ݝMNۣ`6)G[.?$]c+[חfQ*GzS:V*Z-ҥH b\DWt;odL$wPa*&,|,aB0u 1bU2-$<3mҌ'L%}yu7 CeKsߕqA^0 b89ɗ|+N6-w$eP(Dd_&HHMѝgB?_[֬}JS  >29g J? #$v_BTg$ N`92&I $j8gp#XMRKe8<@~NKN/Sn"Wr.ńحńOglU߱\ίF,`T*85 덛Xs 8F6XQY"j%tߘMOLpӗ`w\*)P!Xdv̀j*Yg 8[/TEoFZ2ؿ$uzlb!IT@8Jfv HʝS*B?w3Ze=`\ 忝t;g ,MTy3O`uY1@f ^w5/t,i\5 Ȱ'X'n1*)ea0#8 4Tk7AM)3y7rOٟ$hh{ƤnK!= zmIJbnJH{87m@-ejxOzaU :~&eqIL.5|x?g01X`vwrR-d&țз)-{ ̴ .cABsث{#^~c/hi>##'gf;N|/n?^yOF#)anpZc A9@М(1j{2n}tb[VR=LqltڥzZ' Zx>(PM C,KΗd6mמ"e4f\{UnnBq&;WZ,DLJ5\Aj^i$Px꬏dvo$4*]cx0-l_ 66dO97dB^WVY P`]L]Fkk KKFBp>3c{&|NRqS_L߷H V$?Mr5>tbJ' _BY8T!DEGUnxh-Y6ԖSf0LrWO|zѸ@jbZ# 0 91"c]J$"-1K2MNٹ@j>$~-%1Ζ\Hdkv[:'% T/<^7.4 0]"ɋUsP$h(*؅ o,# ƾĊW a.N9ljEI\H"'mPgO A,˼xb Weŷs7C%=e™§M&^)_L:>> ?guybR[kHP#1FSp5JQSx$Pc[1E>Fp!e?)uɣEGRqݰ& ck\zW5VMS2?`;ߝd|/߀l,|7ޒ1@s-:JU)>1%VH*u#aqԷ?r.\Vُ{m|[dzfbUֹ`8Q"k Q:J>01G1xMZrNpewc%%kdZ(>(:9BԖP[2i8Yf(^t#u$*xH,0 o;%!T0\@=OkjwrE8`оg>]a&71t(1`*FgI]z1}.(7pNϬ&fΑ 833 RFѤw4TNlrX砷#`L *PArC+BBso4]TVB=ڱ'bumq7ރ5 j 0dQqz)X"E$hc2]ZMJ pXytt, cn9\ 9]}rИJD>pw mgxPG'Ch^0f}/4?x~r{;vn}p;r}”'vRw&16=99n8Tzr\(NI/p,xk lh#o`]sz:"'P0@>nEs!qqb#dOo H31*4iNph{{KjhR@NiXO(D-rA kpŲ4!P\Q\F>FeQ=X7Nȑ f[=(ǺϺѩ ]X^Ehx]O䉼"7CbC9 U#ʼƚxdplJUQbω[oĎ&pȗa'Q. |JO FKるT*GX۟8CތՈ|E}4}:F@fqaI dqLGKJe!y٥d uGNKD>h #_7)YD XVO,y4>B7oSăQy np$e^O]B)9 |ga5P8ih Aүc{ Qdf%#vFnbu?_C ,fjblp} /{&Nf%b!&y@]@,PZ=U1 Y_t7YJtM| Jk88{=J/3C^Fԫj~ k 1^FZ"B=(^*QiGtܾM8v 9P 7*m+6=~B^S^Vn|Q~,梛{j\]NwՖf]3@*pƽj熆9lAQ]Q3S Cކx% te l;x,;)& hP7^R$ 36X&f?^)Z7A)ި Q"N6sRW{ S0!!$z/R׿Ϯ;:XwAYX g"n~ÔPS QW*#;D΄g J=tΫn#<6XFWnb3$\hO[-|/M+kT7(Jqr#fW9і5'<[&jJCȁ'_Ԩ8ĴH*Y90LrC̉}p&?3X^H_rCg)a?)ȽDb|f#Xk9\0ILo^m* bdK?&s6'ئ1Aas}W^_F ҹ욢mJ#lfV&jg\|y[܄s*١pZ7V477'N)*Yös|2x_m,&aK^2*'EXrv ]l@gu ޥޮ*)u$w7褠bxD4C춦fQ?lqSˤmca({m1=m4[ HPi)_0sCdF eC/PW&> ]_3D,)3~{&,Eޱ@5k7RNHg!pmbS?Dggس`$ #]ΟG-QAK `5sϹWȝC #DI#ww5SL)@:ީsg~ !-D }ڒ7:'/Uo'Am$>PWދkQSNuw@bS,+p2&?U,OjTW}{EzSD2ńd\6tr4lb,G]xV8ؗYv=|ҭgը`EA5ͦ*l; }lGgwxa܌궊1 sF"|G"l5iJtBዳE'V*ǡ}1l)VA*pvrXL*h !ϛ@-1rysƙZj9E(Kr&Rl@s!kB>mIGEucb5nH-(eQ^,(z,li"[@Hg\FT[F1_S<y5k Qs (A Of`XӒ!B}v5;HڭYzr0,?s{b4b1w @ I\z!jʩҜ4 * GæZ|l\<բ%!9P@~k^uKFmj]nQQoJ0'Q|j?JͼyN/jka+^4a* \ 4_PX./f6jV'&w3!(Hw66F[_WZsf(xwȀޛo[d؅0B԰]S\m[~bVS>)0”II'A> *`%^k'UDrŻZOu%Cйm]~/SON7lȤ8Afn]%,:Ϳ_F r*r]r챲ȗM˷#ނɱ+,?Cۇҏku+(:1B(`amA$CN{`EO/tnPDfy+ vF z*/{LMZ$O°rbZ;o5Vsl`]@kC)8/o cOWfn*<lЂ&!FDݗD QC'n^0>"Xl3$9&7FS>Hrxtؗ=T|,+U6\⚕a;yyKu|Su D_ѲBYAlG\OIΊj`ٗÃgC'= Ӧk!C &so ]ͤ RV=w)ox\Қ,>1E NaXvk+q"M$Q/fXZDѱjB47T.i]g˟7F! @V}6gpHƋ8lz%^,ςǶwq)Cp ȅŘwԻ44Kn^YKƙNz %#2f}ґFnnͧ~wJ9pUwnt˴);kcAɵϰ?4Z݁́O2޼D7 vûG>|{DC)p䵸! Z{C*q/I%pY.‘p.Uem2F{u,]·U7{b?SSE ./Mj%햙ۛ'}jIٙY}.'6"źu5ZuvS83"i"´/<\H }cH'zk$lpK$/4Al*=^Y1sNr3Ɖƫ8h b"#C{wޣaf:3fq641c9\tUToiWzA_)i}i\e|"aFq򎘒Q$D &$-ER\:rT_·$M8G9, <.~<bu~(= im EM&)bs%?!4 >`J鴏{`}(Q ,$kbi? K0qy y܂ ЛN{8!c!LƑә; kML֏@hc蕚f h7fɻݪ|)DMe(C*5 ڼӍjtizms:Aow1ӳw+ p?/PF-~}\0`"A4fLSf4Ro֬}CO K' Pfc&2fV3tsqB!DeiWxc}3bۿ^Į >R^ottoW: 孚o_։cJ{S232%ۼka& q3OFvUmٷϊD?~-3@KI")M|jpLC&0Bτ#А]E%]_ʥ Uњ.ݻ~&Ց]n:R?w!Jmp=R%4LxnάpklX֓uSwA}fqݣzoE#"*mA"_MԿK_*iw/ld첝Q]>GfF?rĪ\e/>ɐ2+s(Ҝra hCKu& d*k!V'#Eȍ *ohP4¸rCg¶NK?F}GxEs(Fh BN`ٌdl7{x0t#|_9~TP& LW|gH,wpvBΏEuÁ63PkĔ4#qu mmMffx18ܲ,aHi'٢'D` U2~E=Zܡ2?YSRv&XXsq228CyC'CM-ʼnBP;گMo%4˅[bgUM.eIyUED&TErgfq|rzi.wPܷώ3a43PB'+LߐRf\h ]e*"FZ;G.H+TvUmݛzp[C_K: {bT5ﰯ܂gI|.T`8DTq i* ~}!O,G#l-HgVIU6=Ž%WT{uBVTЮ*k+';t ĴX8)HD7?# \ӌ7m5%[4^] EcmyaQ5GIw51ڸ?Yz C_4wcaƸ5̏ĵԘg$5[L[,˵ۉ=ʼCT iA0bj`Ba-8z3b >WGx㡊pUFxo5yFjkL@},tD qz"J^g>]Dy(/R;oYx*)+e3뿑ji%ɘDŻVnjZ/쑳"(jo%N|⎋T$/8%\÷X B $1(/e'{T{l s>E5|ZcbE[j_v)4Qȃ8'TTG#{<ft9#$H 6nn +%#VqZ!ΞWZh{-r]lVT%ŖA 5jS>d8(+* .f=(jH**V).g'ZW*ED/v^=lr7Tu~]Aӫr$ݴ7>>=0Q3}[P~: $ߊd$g>hJf(Zd7'&e Vz-W7~B`C (ardVkoS.+gJJ{44 ]̓<NG6 {SZ,Uo1NL5`n 9?V6rb FjN^[փ |(QCQ6I䷩_='CN!ϕ!GV}Y2|-XG(d،uĭ8>NH,‚m[=8ͦS!pC_+~JPBs5^e iX"NK&}|Xb;PXxay-9_rVgsf5#X@\*YFC/b ZC, K5j|r4RNQooH X$OSfemkT5tz@gQjĆB|`~Ѽ^[b!s5 O@&iҺLro/$뇀xCse!)${c& $Rx( U&[b1US/1}얕 ƜgWYnNҀz-$R8w\ͥnb6ԲK.Mq@64Zpojc'S֪+9VNdWԪ,%^BP.J{ X|p^pPƳ y2}}ؔѲ%U.0$+ʜ_3R`cт] +HXuC^0+ia'L]װ:pE?y9aTY}ܺПnf&ZNl>s(D脆tZM-ZTq@>R1in1 b']̿Kx̣Qho۵z/j W#3'B-[Zp!c0kc!rO& ~`DhY`+ej^(3\#s4A-kD3SeGd 2m/Ǔe^uYj𸨫aZ4OÌQ(Np?G&p1#\/W3 k K>n(3"vcSf6p+]NӒeB crp~)Hl[îsЂK_c٫SV@UQ]9 T^]ϼ8tBo7Xe߫z P.& uoVE EJ`ޭoڼޏrэvV4K ڦ猣Վ&րX}ePD@a|À ,ۗ?1خ^xPLtg_\.iXWE^sCD]4hl]v\s-l,LG=yأ $ b~tsZ4S r N"B!|7NFB=[q{ƎJ#;e?r1Ǧ}j9?^R+|?cϭZTEYf!~qƖVʆѴb1o7vt6/Bu6A`-%.Z85=8/.(I«!@x\p#CZU{"KW=\]l+GcBZ$Ԯ&KXVB8gj9`n įE9: ќhxCsap  K"7Q`8#Y}CDb8Ʈh5Ѓ0v<3}l(""ɵOMw#kHWܢZ 6:jDN~@d'}:?7 ~~\[͐ԧK>`Ml]ߓ%qY3AC]5^oڗS_A-iidv1 #jyʀ/$ ط ߲rgR\mƾ+Ǹp/)Z:.zTM-)jyճ>ANou1y_Y XM{Qܪσ<܂[R8/,o*}U; lE 8Dks~ܙ>%8FWܠ0I^9KT4[ȵ!ZkSs2E@2op-]n'H(~0=3}t7q u $$NOͯMQ%es9Dp%J䆏d.g`/5߿u8^m&-3%H"?+buIIqa-"!K0.e,*Aw$=\CdUm5Syv2 Pt L &iP,UᥰXgEY*W)xLkػy]ƾSTR2-)GensؽʭJtX&$Q/q⋳fb],m6;dk"bIO׾_OmheNЁqȐmK,N&-?D/J~C);48p= 0}67rpg1d+8D2M _kߕ -gUNŌ~CcPX;Y͈,;?Fڃ[7Ѭtل4NDmQcfp^l$ Ouo_i5^_G;>,!؇Qat*\nr[ש̆Pz2mv ̺\Ni~{Lr7\}L GsD[Lj+h6E.^Xd;iJ> X/u`z(w%<7-i銽6$Dz 3s k-]8:?Y)V~ZbsO y/yNjcssdXa3@}l-d] xt hY R5E[kFLmȐUlYΉ?||>bc6caWqʟ亁nk1ȴ| [~pNm IxM@nI ӷmhq_|m3QG/P{P{AHv!|DX<ntZI!5 *QKbK ;yV+TPhX=p{rVE?PY[ ,n{q. 6, $s>Eyl.>[*zx_?KH1 ?/lLAFssb I>/$ɱfēֿL c;w˯F-2LAHP:OPܑ HnNCF g~3_o醄VU|. zLқ$J%di)ImE'ҋ? >HsJM)(R:4R󚎋2v@am"3 71da4mz!ۃ1WyeAzٸa_B z@B| EV>.|rǭ.yvX?0we̞꾘!kmgA to SE'MJ+$&&#p#Fư>Z0} :}|׋asPw*' paO>H\xE0e=dZ1.]),3xUu$i04v,W5w[/40'%E;wg_:3;חZX$.Ԙx&Qܴ-IB-mp'y4|?[7ҩGϞt pIJ8(@\5T }j+4 g!pm߿}"_hP䉂dާ+DgI7T}wa4ao)ajS@mmJ'zʵI/*7]b2Ұ{vE>cطG;4?)(!:e@'ZZ2Ei!M }{%IW c-bOpm2xz7Ne3%b}cqa<`yJr)vJ}# +]q’L ~uHn|yi~X X׸-! T:˛Ĥw"DkS(!~YP? TSq(DE)O亯(R%5WZmG;U-5Pu># ? B7_n[X)IPK$WcH sGŷTw,گRx.ŸY+J߫} OWc:@ ;!V ڙ; -W*F^&R2 w?l WcSl.=tV',0Ud-.glzoUW@VLLU>CyQо+cH;?1>y OcE:vLCe9|(^m !ۗMon42QCPzc̥ bzdm5. IݍI &sWg?bWnP]n3< ^(<-@gLR [ S(O=g, ?8]8pΦDG=q\ !c]Y%@DMM(M= ˯(ϟPAwG ~4$[f;$2B#J"n0xj}: SdvS"bM{?^0`<*4u_h1NHjJLcRHb"C\~k!xQd '#y̤&#UQL}@>yzRY'>}ͼ+2R7Z2$_Uzi6xTEg,eއvfդEFyBuq|нA*1`hgŔ ܺBC*I{HfFDyxK+(MXuٛ3B*%Bw)5TI$Pc]]ZB(n/~c\S.Qqw !?no.LL=$4yB,mjd %`ԴbR+EAr%h3m 94(y^!Zg>/>dsTWs!Kb!\_~l<68R`?T4 @סXb% X⛡gxI0f@Po˕@vTBtO?j KjCLrVDk\SBgZhxMm0~55CR7Qf]TX\yJyN+Z݄9 7N]Bw#>,[ԙbuL Wl'g ]nÆ=BKthW\slZ?X3,P0 jszY6`ۘ([P ?[M"ݑ._I]_ B*{tZ2|}M>[,|A!ŵP {Dse%wNhL ]裉ȶ @?2X-:9aٰ M G5AM 7IU{i_b<%3B0EZ1XGApUfKXl$q2`:3Gk옻bpƉi0rSe@Xh1T UszfkZj oPȽޠoTl# hx_!? u$m4bXʔĽ#1;ZZUvo" |kVfl ֵ-B c(\1c\lU! nCԴ4@`5osj $OMfh3~m\[\?Ԧ㕃{B]~8Y(h ׿zﭳ[dd1_~zDLfg ~"σ*pohˢNt؀ MF>~ruHyEjRx7*Ig" |)-ۋSn!f!au*DRzM[n.o7j~U߻3,A,k]3I'm/}@v[\V ѡ\jxO>u7!/BlNs>T 89sp62"T]MDW7M򽥌eo%)h.CktR\;zr[ʩHg5?(I M˻c>qt!/q?\Q)DNϝ|Ll^LZ/;-A ޶opse@Kz& q: .\֘šsQz}f Py>w*.9bD9ZS\e҂9 !4=%6$/-[S<{(qa҅^GO*%Oxe/A41c0[,1W +ދ+ͧޏQO0Y4gYܳ{>r(7덁s& 'i:ɜWF(-=0;y~1\\> VqN!q уT89˧mMY6Uߌ2VAb\)v] q̈2D& jBimK n̞>n ݁t2V|Ǹҟ:pcfLVϤjJc|B])c/" lkB@mdx8{+\ACZ-~Fy0d(0/P xhj|_7Tp]V_#K J_<TB- P3gF$wXغULwͿ%5xQ+|I=8o.1kW(%MF"J ࿅K X W/%*knjpXR)" b}}@ RtVwX4.Nj?Ô$Q]^߷iu^ F' f~`AcplNKDʑαyNUp}S a5D%!(rr|I8PMo/|zi++&ٙstJ7;T0K{{V2XnS?MCtL#]?0J6/N'gf(fG{~|ϼf{{Z."JPn9|GL1a:w6Yip &2(H ,klU e삙Y21<2]B:Pa5?\y٥ }kۜVkg :nvH6!4)xgE^bԩV?C ;O~Чnh_0v3/Lė)S&/S;w1g|ZkL7vKx DW>°ժ:q9-Aw6ڳvlfoZbv ΋_|>m*ӛ/ [;i@Rc0Srcz4`$CicT XJw$:~f)R#%&T~e9p7MvO^Z0 'ħc3.hq\TafWI 값'q²{ P@}&`ɲ۽%z ӄFϹS%fcmHxt'e}8NHBkU0w*>/K+bgGL474.P]PiIN rx5C#^=)Rqim㠇!A]!-}pUqa%,6#IC΄؃w)"b9~Mk6װF$B7c$#.)QlΝ3ÒP*Z’Ñ f:0H/М>8/ i œ$ic}׼&Żd!Vdyp(&bh*t`Lϱ lyiԎȊƐi۩`1.)s}&;Mn tRqFq[:hQ_s,G[k$ʣ1OO9s?IMԳ];U vFo"rD Dk'CSm0K Iy 7>(LA[4z?#w"ĕ1vlKa8}Coռ@B x\4俙ZPa'`p8*0wx3=S{@o稯 aD2LwԍfSAaS](VUE`" ēO41F:2JV?Pu/Y~NKKojB7>,${Md71$3lb ,/)n/|쎃TMC jjJlđgɕ/:A[#Iw6e_2&z })0[83ceROsNV~+ Fքup+k*+^YP>އ-Ô磢L2ԅ]BJ+|}"]J>]F>8U6|}BY/Hw=o79o qma} d d4UniKW0B5X +˥4ᨎ(1_X\NjfraGv &٥&eCE&& (k6Jd1}Hߛ`pzJ)5(eFIlmx/ZB$bE0ѢDZ|[8µwn>;v";4?; p>c O=1e8=?oSj6Ğ20nݺG%Dۮ@ˏK)ӹӨlOr';X%@:zB' ޒ >tZQ`!:U%۶*rH :vI #7R[Z`ɤOuwiBONanSe)|Y2Cֵ|F's.ZW! {bƩv6g.0Wt]+O?;qܥâLӞ;"eV#kU,_97Ye읕mf(JhcSvi`%2\O<}'^g6 =C!ΆĨc$ yyIN%Dz-0G>TI7-]Ss67kBX`ՙI61#T},SOŰs /17Hbc(9~+!dm9kFΝݞ,(FC+ 9z`Z)Y?%$20 @6P/5̇)'val/HR)H@X>%=NZ(N&MW<(/jK~1]c&`ބF1}7S[oĆQɖ{A|pсvuaHWnv0~ Np]\ϳM?h AkMmfSS\t=eeCUR@ߛ{ۗx=qh JxC2V^S|X]GqMG5iH_0oQR:uUƘS#ǤFQ;5{ڿh6:IwFT|ߩC[GZ+W@:h\}%xb`hGB÷;G?z-FhP`x \g2 $H̆T> ,|;N|k^68d`~&5.Ӿ6v] wˏB6':/VGv yBƕ[,1FڳvLkrEsЬ'̎o/H!i8rcE&9`.G  .Wy?#IO}JB,T|qQĽzK(I})b*nXp %߂ #/'K $c..QWܡF? U?f` SM(Ֆ 2gQCErډz6[MqCZa"8ݻIل&uN[dQ1~ lia{`;vFlk4jr3r'VQ!*vX ?A GB<],{i1-C#0&9ز-wUD#UΌ4w( \Z/.ՒXSj*m*VcL>}rL|HA!AY@X`*ЦF*:؇uK"ui%Av}Wũ0CO/>-=yM|*8%?A#FjpCޒ`ka:¥Q6Τ_p-ӑu|D킂3%̺ *qUmu16L2Aj9 znaXCWF:ef!SGċg;I⫌U[(@\Hyv|3 򚯘Y,G+?~1^J-7?>iߚ &te8C':@ʛ=2~/n0;4<:$D$xJy J4㽚w jˠ?9boN)n\8qDpp /@ y(~TGzȯF^ņSX5iab,\vG]Z8{ZffS%8bW/vw[}C1==)U'<ɺ.lf3fr߁Dݨ$ yRϴO"0`.?j6f1wY<h{Ҡ X  yĽ50=E3a"VDbIA˚sЅ<6E$͜UQ{ZxVͳ9J?7oŋ^|  jXt@*/b̎B8MXm#?h`HEc򇫥%<5 h1+R:I T]v!Ֆ6EIEG(uŕ\ 20Dnvt!$ޑy_Lwܼʺ~#,ކB!\BӳCŠӊq/Ts@FChq=!g 8&d1R8AGZd.+Z~_{CS-Ύ-7s$O 7 '2I*(2b3{M9Ф"\2IE}k~ 8Kk6 5wTPh}7 ZQt^A~԰aS7tVݕ:c6L(eoZAIyM佽 Fz FLmy>+KaFK1,Z)X%9f8e2e6F\Eƃ%H*_C<y dpQ˕}\0ϡgW؈/yi2|ض&kozZ%CZg"-=NM5d=ɠт.)SXy+zх`~)|%&ܚ9GywL˯MDFÅS~=-ƪZk'J5VT0g8>&|!.Sޚ Ryeєc io.a_82˨S fg $ĦTkk}WrMأ–-뮀co-򧃕U){]Ӻ`O7r[C Wc( W8υQׄ6ebR4 ^l=f-y"16މ2~莑d ^͜9Obpuu peߕp<bIJt/ 90)ݎ/Wy1f%gkS ػ,@^7/ amⲳ {5tzf\dVehg3 LR_cNn_ʑ5OΒU}Y&$jWJҩelrh-sU=hq}DDĵ2tŇ,}l%P: "Z,Y4X'7% L%#NgO܁wSks, ?#8NIZppy7S7j;%wj_] x eY=fN2 !I#.<n#G+K&oUbB͖.ݶJ֎g ۳&-jyV q _JkWxvKM]>[c>̮ b`ZkW6[qwHm KΏ.GW@0d$)b޼6t6qK4704k}N\u$I%10 8"gO )7yr,N%O# B[X=w~fdzn'KXs"NփHsm$=Ԟ{K!L]TQ #3TTǨl^ :k ,J5A3O1.uD7^V,"o<\̼ךa~_~aSjtn 8^BA~{S;^)\|hXT15c"5WrGyxfsg۟ /5slT ,z$ls# 5< { Ѵ:0 xdCoƗSX( f1)@;~(T$`;H}[6:az ֖J9{F]]dgH)O3Wu__-LFi$CC})'Tʰ(Eu?;n*^)Ʊ!o̬eyT)Q2a$D8dLjBsZ-s23*"d_H`%i/`x<'SYϻδNu!?Ew}PMGO24|U]? `?=yI.\ })yjnj׬{XQݩ WuV8)lzpWp$][st i|Q4=.Foy|]v};$\B8S)Hg0vKYM8ԹVs)p|Nd䌗k25P3uPÆNR<|zʩ$% IApAODkʐ%/ÚՂu \\ΕbMf..rWQ+1+`b$[hCȲK2-"еYĶ{;_),|̅<ކUOgfvS:G.z/VYiz9c3 I(N'BM˃?xX@CӪoLi=IW=ˢ) ķLȔ-.}_8(*G ݗ L[~i3RdI dYOOeüt`:_؀[fSQr'%AQO ]3ԖIs?;Ifx2^MRנpF30=/`Hi;\)6+DeVE9߾KaW$GA t!XpQ.-3[,S ^npV8rfnF%୆Ip VƍE6a4"FEH ez@9H犻>Y CD(OHZK ?_HAſO[yGh<='bՂV FN ƦO %RZ^79S+.+%R%G)x !"Cs ë1?fuJCB,(r?JpZ]}G h!E2x0$IVP(}p# Ւc b%iUЃyhI LX_T]vVl/,ͨ! e |HhORsVX7š@ܑw*25V4F~ c%톐N2VӫfI?ySN-d,@F $\sH\M<\0}#AS/u a%*O C3BՕ(;׸ߓEw=jb r5bM"О  {+γֆwf2Z|b3π0V)w&cMTX'AVW*n_-r.[X2"^bFnH?2ql~ן%B nlSYkUޓa/]/ؖ<6t{l+~B!2{aʌ qo|3ڈ/)oRr/'tJGCe7 dg/;0#W`#yR 9v`.Ko'XoYq9A"hbhME5- M'h^Bvԇy;-r;R2*t`Ƨ50" !"Oq_CDi\#ȦJ[l]F5OwB62%_gŒ$Ǵʼnh2 >J(6 4zKRzͬ ?tKjv4ibJe ~P3FIw-4{'}VDJj` x]Bq=+1h6o# Pd(Or|!A=G2!v'dJXo>Yx^yBdxȼmo |[a@Z uFS2_61Xy`?u樴Np~XPKm锇Z/=!Nt.*⽢'EH-Z[4'#',h߿؁z'|t'(K+a>S_J9^D(RgyѶv&ۓr*8K'g ,RsKE /ۯ(|@o;1seҠL8_r"9:3DjMI>5vk0d✎&j2.Wf c+3aخ`}QHƃW+"3}CP y"@h=K@~G fFKA֛ '2-8%O"0@9/[{Kߺzt/sN{i#[[ DONL&~y,(ȶe⵹l~Wk dH rGEzq_bgvT ⫭g=7Y\l78%<7Pg㓧a?' j(čpIJzM2){Y23|f~u_W̺Qw@MxHHr4yTVLmر&+x* ڊHN4U41}LRdŎvpx_σ~[X28b*  ^OX7]E:-HV Hٖ8d{+ʭPÛ Bo\;rHB\5_Q80[j3eއ񊌏tx&ϡ_?ȯJYmû6z^:Z^鄐HoUف[% f]w'1.T 4Bw@ÏŇ >6tnR2Jw+WYQ N9g;Q%u~lQ bvBl]X*o}Y_ D,#կg.HnSC4[ZG -N Bk6tW al E8 /։ eVN}lErV_{ڪMJTRX0(Y 3e1٠#ikQ jR?B@D9`ӯ>T`A‰3+z5*jnAyꤞnM-=LfG\(ҩ@CeM<1|s xq| aS9Puh7!<,)7Lq?%|7"krp 6?ՠ+jGjZIeq9@\ An{>>y}z%@xH9↑~@ΓеHkcXN6Z0nwc= S ڶ{oOi.Qyfnw X8`5 /Ȼx͙65>'P1Nb A=qj?`JЪ P%&(3#̷>@ri, ~?~\,m(DAVPdipIN?QA@2h^5 + T@5 зL]k D滝:!?bb1^*8|`X{ɶteCw%JPCi*-[з3I"4y\ZQWC)Kyd`<$<,&a}NhmNX?\Q3o6>a~'̵c+B؅? kPu _['&;*>P1R12?H tF3ҫ`!j(A[ob?'TccŴl^_H.Ԩ so 9&.(}`*cx ƚ XMdcC>08p^ d+IC%jaRI0H]utZ^Y:Wjdк| g_RDsf&FzJ,;*z+0,=$Zc$X{]+aAR$EC&J/_Ob.`Iky]/hפ 5ΔS_^t:w9+7:ߴ@>w19d 2MZ OlZA,bIxTǴ!xSECwv{ԉX V T' ~eQ[a(eGDk+G(ͫOB4ȎDXb3:ul/=8LE˂Kaf8S}'|[.Կ:T%CeNk8j%Lmt%fכ5wN} 쵵6h}=Su_K='P7q?0E%zax%wybXRjuNˡM=Ô]9KvB ?4ӟS{]gm*B %ɧ̐K35)EJH:.4nn_ILhc#IdT[+o(PkO|<\ݼ_gN'_&epfE@Z%رB7M2VL.r>K( ^d HՑBtӌ}1n6Vİ:&j'E+ /io-*uϿV?h='S}bIp]z_Ćdufʵdq!X=些bNyߌUQhC]Pb)2>9iD롬#O/EW Pi*QoE=M'p 0@[MidzQ\r[)gưGِCpBr^%k*v$'R62|o~F#{"߿ M6&]cF}tN{g&ھl%}%Re/[cs׍^~L ֮HJJp1,9Nxve0<9cy|]zG#-K5T6H"5S [TuX\2fpֹ͓0lcR!D'hH86׉gWh?n4 *yXyi"ʻ8`S{?m u7 RPRq_%ĕ]YoL*J(3oSݵH>Gm~9`yj]NdjkA,c~ʫX4MvuV0/Fu0(sG!s/.`Yu}=3v:,ʋ5[\/ҒU9_c3 r@5TF%\Gl)'6ž`y UtrNzmp$?Y33{1Z]K432 ی{R5 5Lc c=><~b.Cl(TԖ=GI|q%Rc纶PVY$s]5`nݩv~.61)N-xS4ɴۼ`zkC!]>$qY=E'!ͷ6xTE.[r䪷9JY<=A$@nQj9QInXյ[=}^oKaA$R2}ghGפ] RW(Ԛ& t3Đ/|u9B=ȸɓ7[_%<]K6Kߝf-(rgg)o\3z{jC*F^#IG˲a ,c[L Go 5 `!)^}~ aU,pY?6#="% {upU-"R-B9G"qy]v GX>6 ?Bo4 ~[CU۲P|u3 lʇ#gP%͝JG6EyMvY{pۥ_/˸'6`t?"'MK3M3Ikv3ϹA[;2D,'wܰnlHqE6 9^1ĞwrèqEJ˄R?Lnܟ |!vt_&!=W>OnUNnWQ{$Ӌ: RKZW/LYC'd)זn^#ONgFnF"UuVLpJZ8m˫-C `Œ'gt4Rv-D7^g捵z\|ⳬj1qn!O؝5anπ<*8(Q]Kt ?iX$M>1aoC}1=d_0qcj ϊռWE:,Tj,r"u-fbdZަ8%v ,$x[MЃKmFiD} :pZj1!WCT&&}G?ƥT;>ϲr1"B^:+<3Ee ! 0fvm8/k&R]c |lwlRR{SuT0O];Ut|8GY6`cEt ){YX>쓜3(y[ m2HY&"yYмˎU~ 9VY g8Q0!^q/יl05{:qn=&}48I:xzlQ{XAc 6iu#{jinlR=t|$_NEK(3 dpuα&}odw&e3RE?$_6-^Q/a7[,vZ$LQgEM344yG*f拾U34>%ެ="#LF >m6:Sgex[g4emEJ.uѾs %:k oq$w^||'3zܐHȳ65h<ho9Cė7 Q~؝P)ez*.ߵOnFOk x1OWJ7ʄ1ژ=N46~,c?YN֚N@npO`oq3P\(L ]frưG= Q9;wQWYc ߼Rt-B jpP;1j3칇:5>+µ%pHh WΥ'd@$$JcƉTnHx>w(npt=H잓"xwYȲ΅dxBb .#/psq'Bz$F=cmy5|lIZP<xQqؔg8=-yʪlH)|Y4Бbv{+%v&5OqpIed7A tMzrHJ&@g*Y_лlj}2gjfGpxƢoت+s|6't7a粍KļgEac!@7+?X-cฎE|[bwRwb&m(ٽ.MRˋ`T3@i94_0F1? Mf g ս㐘LIDѪb# [e&-Ё0kgFv_]6<f7ʞOFhGQ 8(뢪SNƟaGoʴ,>&SQs8oy ~v<=K:)/t%ҒQq} RuJW^Js-0.;i516+[ x`\;">@JDRG/6@. PL~% qrQÈB`y1S/C#aBx6l$ .}]S.5qIiX0IEx ,(QZTɕکp`$ąwTR|Ҩ:W`@ug$V3O]嵌Ifv?2mjv>{<7xZSPMd/°U)yIA9\)윩6y1^]"6(OYX *IBihøOd12 ?KU `fez=dzZ`cX&3KYTd׷tO;XycЬ@dWL#E ~̔yt;A79*-d^& 7P}C`P6T~Pv|Di%~JPv[lk zEV)d Q(L/~a OsU>)av,s<(^|c$ɢ 27[uMo+I,w',[߅'"CuGXlʍ@0mYrZԃ#R9dR: wxJ1LMx$cul($^m+mA\7tM J$T;1  H,i: (ĦV{h E_A1^ ds׃#~EV z:S8Ľp+6#޶?Xc;4;{0*:_8Y{go\V`b)!q!1kF5'OI$sM7 [oG\z۵zۜ[D㗭?(aڍ?G+Uʏޡ+% e|4cKH`,S✑Ow aHu%6haXSb;|ZA!drknn%K_ċ s41~֌4V If;>EVG?Ʃ, /ԚUnc.w\͒򼋊/o$xJ%eCX/v KD?A}Bz+ @i./"h5¦K8L~87&+|qE>I@~cO-xWȔuH-fUCعP]m/Unœ>R'髂doGKWԓ⼅4q)n u -8ENtHM^p;Eoj ߲vG?H 1o]ß b[Ч03?7+r+zݢ>9MhKQjij9u3bG?xG=T)wY+kQ"g*`KObYFsAreoGZKlJcԨn#;$zbΧ6S.FoV6ɉa|. {h&{hD@xyCl;D>YAMG6L-|60qӎ ,tbWciO<>,E!/.KA]ǓQ9xncF_X#\i=mP]v@,M "` O5zy#t3DHfo~@) ]Sgrg~ރGͣ ~~FS¸&JڛON*Wm~'Fv th$.[6}1*lMw,Ep=JNfcfe$"ǁ W= \_XEQzQ9HIKf/dH@FagA9\_OsO8gY :jWCni< sC7=7|Yֲ}bF$w{5'UPKmjLed1y:.4侗gYd̬M,,|W߆JT9 Nlʠ޺(TK8Xg=﹕J~Pj6s!G7$c˸+6)CшA`5ۤj6\9ҍC;OAHuS VbunXK/S#&! ,ͺ S~TaNoQˎ,~}[(?zzp-l{EB0a?1Qt"~'7HfW)csBɠi^i?nr~tN9ARO88+sM,Ϣbv\qVvWrDe@NzJ\ ّ4/SR tF#d *|?wv7X)k8q 3,יr#m|^[݊mRR G=¿ @ۊQ+BM0n!9FHU4u.xo#]OEi+ذx9K %C_.U @pI͞YsCK0거0mBFHSÔۭF&8 CGuvW{Ć 1ԓYkRJjRp?W>y*]b k,w͈NhVOSo~hipQB-ʋHKr%/NEa zC!Rx q6(#!XvGi'/;E/4.4MsV<]O:bBN N QWY^3&u1>2rΉv%z6e=%7#auj5CƋZϷkP$(U#jዜ#0>eAb$ 5g(1.'e-PHz@(OmXɡS2r &=~qڠ ~T‰0sƒ96иy4{)td,/>uEY B]g;Db QC!ū+xo &C)ӼmR|%D6g; Iݓ l|UR*g+eHtGtxY7KtæZ7VͩGzUɄBnq <d,S4Y9x`s y0 Όm)~I|H 2k B YHNdN@ΖĐrd:lTYp$#^hA``5v4NLsR Se8LūD[WWA|:W R<[0eor0` 6{{rsd@yBIGA@.DuAZB$_ub{c$npq"(nakx&ԇ&Nkd$o1~S9 Nb:{0A?>Ñ'!wV汍3jE1_<.Ba[[2,`=KC:mE/,)5"+!Q$z[а*UcP>g)V [LX$*B4]Q_܉O!r>u\@٫r# 9 8yeؗec7VrFZcrĢޠ)O-Wj2vK1Sm5$47#hkr|lSYDiΕ[Ko \eJK-Bi|Pm?H R6 ۦڬG'"q;Nu}ٿt,N&nhF ɓw>DZlp-f<۟m^!0"Bfl5)"5J]nԖv3)hy#>HM3*8FN}mkH=hU>F_r%HtɹPHޖ\1TX"lg) M*t-8I =?q2r\.^6C9;+&P.cr\biי7 ~:r8އ Y7 hj1DHQ,$v@nňx>Dѝ |$xqZu^U S4[';mԻWYo# →RV~)tg̨(?T(Ut`57Jz@NrrK[''.J7Bg^ bJJqc|sϢēKk4S 8ңp CK|Oi4%nDek\hLc4a6ʻ򳿿Lti/eg*\u˵=vlϮY7Ľ<;|Ut Er{ҐT*ʹ<i+B @ ,rzGA`KYeIȺ;,p0-ykͤ!*<-0vA/v8!*1xgDjM0\wv`)B,MFٹ:N7П<>j[zfܥ;J#7Y,ik^CYgxrך^ПD,9''P* N=fS1#& gHNr< NGci|;q+yS=)zr2Ɠt}@)ۣ25k>pc]RWUV7_bއ7 03a׆jcjDE0)fb'K2q[- VUtӿ0'ȶtGt%f OMވRmZymEXm%.*Q ,6K\7z/k09>M^{p/Ӽb_>J_U'#,GM0TVM\'+ *#9u%uBG(F\7NTr#)ZViZ=$nĄNr:fAuU %t]xk\ κeNylɊvUT-.R&u/ų-ǀF<ß}[V S4;ck ,<ۀ7!s gb F ! +.t^D좩 iҨ5zsBf&#xs\ʚJwnlmjTR`0NGNt7B^Vم4t4D370"|f/2\6^d$;< 1RVؔRECG +~ dkx_d@4w痼cs:Ȩ[2oQ~aU=((nI8bWG֎_O٤ԦŸ a =x qC%`.asa0WHZČi{jgG1IU?h`MßaPa_m qr8+TlqsNc:MvZvDy\f8f)]Q$$\x:LF|m嚽J Q~M*tLP/B"NN_RV`mC 斎K+ \ M-%΄ ͉h8`VVj+7AhPJG*Cʭ}0nEBZ儙}?|rO[ Z pc*mRD )f<ҴqE1'R37ton 6H#8@v !H9YdA:$t!GB :~،sB&\jG>"t3_0m~D'x$ k@[0ZޝѠGf!+@iG0AAl40c^:Tj/7(ۯ#쁥/|t!9к2 +kZ0)ێO/a:▊A]%S֭Z@Z'(K{dK4z8o"ʰcwZ5Hr!IUU9Y,ܦooRAWm˃ӶJ Nk0*Mno><]l1 bv =UҘ2<ͧygc͈.H(7O`g^k$l-ff~fpq^,ek%c k1eߙ+>0a0|+mm{In%>;=&9F6bya$'/"カ2kt)VC~Zm|xe6[$@.wXaN&K~K3ȸl̶Tc~y9 Jb~^OERϭDM[?H&4#qp(F_g#VJ HRIͷw7>aNm`LF[ow^v!00~CbPIbY,P>e$J `.:;cWHsIܶgg~! W̗H' Y8j=-_bn͂]U}!.Hy$6:k<~3##rFȽ֡pb6D7cң5ln#3 DʄCt5-Exj$ A^[5O{ S8ߑ7 "zi*f?Y氠 K3$mhy5Msq~T]JGu>Ft9[[JL`=#cFf ^B~aXZ^lk۵^m+nJJp5jaZ K7UZ xSC_~mDw6 "8n[f1獌y2!~O<\k{՟+/Mo^ -|4~A`B#yՈ 6Խ :#ke]%;Y?DiP NͿ&! 'sn%ι 6"tW3)2| S?GSϰ ݎL2nsOT׶ (Vݕz`'2ܮu<*Cx0`A4|{[DHWM v}Yޖԝct6y*q0Pr *ɭNRޞ9v9(hk)9]J1.մid+JĦ +osxQs|Q2nlآkn/I!"` V>uo7r&JU|qiQFX 7«OT#;h|MI} Ȫ't- lшQ0b1j">yc G]giq٪|țnN]83_Xky`|j*GHWc8uѭ.~tp1,c۬%mP grb$&lV@{ i\ЪuL\^!{V9ڕѬxk?`Plh–s'Z|Y }8p )^zIcc(%]*u l(z\э"κ3(T=A ;ݞJ= 2V$ EGb/wwe/=ÃJu(6qt4l rW1)@`X7Lux, t: {R~hį}E|=U5]ۺwgUs'}<s٠"H\n t6Ud/w 'J+R-!M}O3>-RA ::riɩg=ѵ0>fJ W>oDll,E~.pDBֻtPp:Xh;P'ymK+AGNtd 1 ?ۨՄ|9dݡCHɽ6+%輜mr95v{wbX4FPaI:^ +Y9^_tC0Lѯ'tE!Xaw˒NIdi9˺v7;g{QU>wYPZޜf,rQQq-pcJ9\Ta(;͢s`Ü`"u 17j:Dxm.gx+Z hfuC|HXQ" (vmcSfw/KI, I^]jPPs(B-T|wN"EH6ᙅ v?xnQ@ Ts`.E۫#o3Yq0+ʈL?;4{"X`ET,sy.\kQVf#/CXeU~~ EW1ðtBځ> [(jgcw&cqg_\,do()kp*¿iēÔ^ŬtBO۸ ̂4Rxڋ_h0n^T^ ön\70Ɖ`=R@隇Ut/(P@*Y H7au1kN7Q}E, ;+(,xOԩi+1?_i70V`pq ң+xgv_v:@oԳH'3s 5&kQҩΥ6ʏ͹0ٓ]rb|à %6w[39<~FK<,2j~?G>Y*fW?ϙ=Q3\zhk"tq>$1i"EN7=Ҧ sX ژWdNz}"BsV7g06SQz)썼`m\.QS=Rыl"(`zW{Q9wy2'HQ+wLH#7_'wÚ: sKڑ~G5v8?©pU@8%T7ȗgRtL -K9`={q~6P{etۦ?I9U9Zy):09#M>*t6BL"tU(e Sf'ԝ 9Us"UXH^zA 7Ic5_m\JZ9-Apهd9l ڗ "M_+}:[h,O]|6kO.a|,aGc%6XuF<0ck+l?|._&h-=A%<ρn-l%ӯ*t}f+7@*2y J7h1.|瞱_'o@x5k>Ⴖ50gQ$+4>ƛ'bxVb`~LPt~,>Y` #",/n.$}<[0x2'b*Z*k5p [W 9Ћv5· sneRLjY;L/O7q8~ mA.*9l:n:b]͔#gd&5lI+2uȻNY4y )uei'$-Q䚂^;֥XÞxW` ?B :9jC{_ϵs8Jꋨ{qUi>&D9WUcgfNC]Mn"^ g=?ÇbX QS9 5 ʮ;?{և{Ҧ|.a<;2,lT+h|'b}fj}3N!'D-Z\"t@G].9XM|6TObte5[}gqV/qH・9vO^VzbI{Vn-9SbFѴ ;!ԈifK=ILE$GF~9j. Lt˦Oسˍp}6v>( ؿU Mc%P#9m"-mL)qܦ_]exُsTE - ݇>Fs_ɐZ|ș:^<'`{/֠Axȑ]YΘ(j8OObirHM8;8sj<8v!!cQ04nv̮+:hPur*tج%#1fߥ­C ds{.N rz7zu՚Ƭ_Sg:7J<ǹҝ {:52hQ"ƽE sw!ZuMM}gx%=PAquTٿ P雓ꥊazMkp4RYeby"0I.i[0Pֈ]`Q [hD_8S)-^ĮwF _~~V-fk34f5{XՔ,6J lNuhѽA# /Mz؀ѧ&(rkSOo"ަ uX=(f엧m0Sz '9rHLCogYd+VD럝i(E\$U15 ڒtwqe~C#[& O/Z$ǝeB5Ot(b֑k Ml}>Ϻk[%d&bN Yp#Xư]M]K(hʶ3TD& +:n0iV= ͎B}+ h8h6 lt(fSI,VA Bx5$}'1yM!p=ǶɠhSkٷ LT2 l^OC\v @$!PԴ!&ӏG/Xk7HDS@^ v?דG$@酞W]< \vj)[6D 1<${2~ [˨FL"j,շmfqn}(0/G= wKPO00FF׵eFs{h!Ox\/{jN0>p{3d%hhr|޽̖Q,'ݩ[fl8H%NiU&d1cً.H+RGf0V*js;֯" [54@ QT`HYn$c_=q>1 kWt|IH%+fsBl_Q^:֧'d_:r=DtEa! 8&o"pg&k~J7+ݣ`*?;f9a"C+ERn)0MlR@|)Ygٯp/vK3Xqxs?uqV}C|Oټ`m@g9o% {`Bu{ )ۓ\|t.]ur=+6:"C9yjbj]qE\SuZcؚv*;#Tct9-YQw*kkDqU8?h<`ㄩN5Dϸ4mQUVR;_4|/|@ #dӡ]ᬢ: RԲָQj6‹GTTGW- LoV\(\>){\Ƅ qx! '-W^1ԡRS^Pr`M6V7%l\M` tG|V mXx?}ʓώ30Qvn#=??Dv|cxm\oz/ߵ͌^Kҥ3R#72bS $CvVak୭LuK#_ 5}zZ͔(Z=00pʘ F'?$v )3 .LU)Ba7o)x{L'GsREs6( 28wkj4% 6V P29|SqE^G~-n0dy qӧV25O1. {V8nGw̪8԰V_)?b,r^ /vgiR6}v;·_t10wTr1>iWi2EE؀JXy_H՞45sF K6hTFo 1ʩ1O>ǃGQ/߉ )?',,t&ơcqNFϡvpؽ)pt®|hmpʏ]2aY)_qݽE݌(.͌lV*.L*FB2ŀY[opr9u:X(=,>}fqdoMH-A=`2Pi#8v5%.{2 6!|~n -;劾{b8ѥ2O4'By:PCpc1*rs̟bXG~_IA^j,fFCEPfg{c"$++$,Ng=?F6tai)rx6'K[~2# _t hnmw|0N |'-fΙ9\>%+~ł53u8m?'\GwvN6cr}La kZWq1c0b'1z꿸 3G"/ 5PP3&F/JLkiwȦQ3"rz̷[A9I2\I"z99 ka+D.ʘ> ݏՑu>ɜxNQc֫}2 btc}E SSK-iF)2jf2B՝ɮ  ),U-~P#ChY'݌Ѫ߯[{`> [*uxOwJL)@x&ҽ 8|vQ Zy{AuCVwK8vs}^6NGF5ãhU(|QІdǞ2ɑB|kz"6_ҴrXlщJ~ YnV_1wvl֝r" B5MZV/W&: 3qnl3NѸޓ>re.aM1P7~:!ՌPĻyS Q.hg x!ea;GUDD|v4?|zK5+Jh? |c9y+?! fRxz(Ƿw& T\䞷zֆ;{V@G0?<qpp&c7259O+f|H$<527 7+^: 쐂]Pp' ~fQ|{+:F9͖޸B u:flGNx&Yzj\LV1Xsѧ6ը8]V$IE_o F,"fz;^꽵(ȫ;ebrMuL~˦[1yN#@)E@.UUAI~UDǪ$4H:CP43N8Q`)밞Q4vl9YD?eIx'N0kM' 3)X)"/sI\*h%W+qrt Nۢr+63-X:cZȋoƒ {ʕĽ;rqٙbq1yN8[˕Nt:={謘~>rr#z?XFb2ld-7ZUQ {#{}8+@UZh'W: ;s)u1S5ț;-ai )_c&{=.vD}hNcI-+KPr(,Psn2ς("&=E.OW,|o E"\k|6O K#N_ bJha` Cd(BNo5Y9 ghN g?Ӹmɲ"yՕ(KI%z/nb4XzftW}fld{`S WrB}zUlY&~g-[g4FU:+62.2̨;]8f@xz7t`Co!K:aRx !*.I).Fi[./ݑHz ]i e'CɷTx 'X 5<@u95(!h"֞-ժBvuY qaL'_@ݭUSzfO@n~yRB<$1$6c(MzZ5 h,G0#L/X;%aՌ0rߢciV|9K/:s<ɻ*(Bzgw0 t SI7!x8iUoc υ^3]Mb e8OgoNw>h=Ǎet7AںQB47+nؚy=jp ]pr]CDRC /Ĭ`jQ#1 XcJdɊ]0g^kɴD2CHov1(4@!51DR}:͐J*,ƚ@S=\ rԺޯf ɇS]jprDKu8JQ0rhW-`\;BjM]z>AKΌSid_ƚV$>$,7'fx8!&|xІ-2:u=ҌBoS^)XX}\mp$}|Abt'v`N~r9V:D;py^ZtJ]Xܳ]-"FgXaJDᔙ1o[<6nS VeDZ㬧1FyO[Vj炗8]eQo7tS HѪQF*sbjp- F uC 8^R+YFH$&l43I5 fqzH޲щ¾\u^38,D@xU_-!`".IAC8e4xztEy鶥3;<Ku}[[pN t㡕ij Gͱ4q,`!'5zoHu |(jjj> cE{zCKw!F>[ {e '4Zq LuUoq>-]A0s)F9 ZLdmQ=fY]9*yOQ6 QlF-fC`_tob>d.Q΁(۹ኌ6?m% P8КAξ=#e'I:)Eۼ2퍶 7]8{zYZ$dBO `Gz૝e̶ fA`?>Ar/I܍N"Z=uPtAGEoO3)B\rC5WUgK+CtԽp`i xFWr{+N;F)@B&e^,f<ZijII` a3xJgXgRdf~9+wQf^<,8_n[۵!u1!HKublZ~ʗTH,jJ+g=ʥ.M|cc\Ǜo-P+%hTdxl78m#w3gըu( LWMX]o۸ȳOJ&h撚yqUJ1vETzV嚲lN|sFM&ƅ{\3Fp<+X$pѢZf~ *J=!U$mC ޔK/CS:@׼M$aW :BZ3hlɀ憅w!5 rkqR068,ށ%ұV L-3\O"JKBZSc,Bc-R? V#rj5#f_Zn/L}^/oPЄPUC-Qor{|g@" k\BvutH KmMZ%Ib^ђٰJ Ht_23=cs`7+Ą@f ,ImlM>8UV-֚@)-bOjEJg(%6ak=CXaB11[L/f{{?3qlixzTkGr 1f 2HJJL): śKHKvU7Z}֙՗`@a}3熫{61OgL%r+$@Xi Mm/ɹϨVJ'N`hG#vqۣ!, Ӝ铼t4(똙ŴҳQQ>7X?[juBKrc9TIxH6M_;q~gxxan;4_au`7I[[?CZE"O=u81} m0za{HÛcw O,) ЖuZ}}HKQRbKwvh.b).ElnxDx9I`!x, B'23eY fn F-WYF5c8QN { sPԿ"9kOYozk p膢H15.|ջEW:<(V{ Swbk f(Hƶш0t[I0+{ᓾq[.Ё6j~";笑G+~Ne #K W_0γ\jnN7^ 4SD< [U}ZBx,R>Y\:u!Dk>}J)H dtLN_&& s(6>6oJO ;{HQC(v?2Kiu;1In2vbb?DeO>)d Nz &{2'aGRO9 K&Bwb`+Iq.P6A,kgvi+kh2S#J>>xJ`n9f;"~4# vw;(6@#mڻcPlm4aZv](L ŕjݪ @)EP!Dz1xlTaw$fUM#ж,#4#aer2k jq&\o ڍNV Mͨ}cT >2W=F[?knHi 0vVK2J\@4xn"PT]< oA2|r3.Sѭm AlDa\9EDp+M12L3zdlH髞:i @@%_Xt T!?7! .jb/"k2YL ɒ+0wX٠zYt6Y8F U S!oя@; E'Sz&>$TSEkM:wC6o4m V7*Y y >PZ){`F&8kS/_(S9R򤃽Բ@h=s(M|q$xE44IyIq0 $D\Àr+e"=`"S⹴B|;WB ) ~v8Hr?~ݯl8CT 0A[4M}13~0Tфu@ Y#3aRbALujAp R LHXh>Y:<٨Y\N T1XX"C:?Y jAUyݣ>v5z7"~wt|xȣw mu[ށX躺MXI,S&|kI8>c^\N(Ec_VɲS`OOKzu{E)C]04h#9XQ2Qr=%9aaKZ8C@A'uvS} 6fν8dDd^PhD[yLk¯;`"SF'Wgtdވv+Om&X'RKyG={ 6ZxȞ O,IrQ\>vFVޑ+#/S"HxeT'`ޏ=HXJG6iE Z- 9b naDmF Z&j;/4ۘ.WCѭ?`Ɔr>h.\-=#yy`m?]Y=]  Nڈp:O'6Ap-pO4э­:V{;pkTqYAu i5?ӿr!O2Ɉ$_MVUD=S+٫Ij#y^HF)hpڪ5\Ur[^xj0g+zC Ou8rw߃D68CyQr^fNGMc!Ne Vc\SE&{klg!xL }\GWl>pb_+ Ӕ̪!UɰUyO_>:O<]l7n2Py;x74Doz-TCC0/gṕ= A*{`28JSGw@[TRlzN%Pp#9[{L;u t)l*HK5 !*O:8&w헍N(^_'I`J]0%BZ?` kHdi ~nNQeBĻofף+_dpy\f?y3J@/ch7,[ՐCU-Z;aMbDX=߮NIRBFw44K.7{3 D{!CM!”oBxp da;j OBS0PEC{bђvu:fGlc)ðu'>п>xF>k,mWᅘv9t#q[*Hv9i0uԴ3%Y œr=F~e/&9hme¬j.=0,Tgae)nLT*5ZT-; rk4lZ1uf 1^/;LY1iv(ͫhi?#z$)ө]=yNEچ6 D7vU7F( r .iĮkwֳ]cuч0di͕vuMJǾ”s|^h?L)0$:+g>FJ|Yd\ݞw/%Zi vDOhqZpSYK5 oqe{n0ɼ C \J/N2P\;#Yp9BǸW6ϢqpI?0jPq٦vi8 gf]P /{$=K|̷H<q,_m<{_ &3CW x*Q5wwb_y UTDl)}T8DK!np0k!áV_ubp!܈נ{tV$|^pph*-Kesp@l'tѬgȭO,fozH;4HkIQT$HQ >t;3lfIu'O RI/UYĔu.sT { : V8h:yy >v?o|E\7.G\o{ʥEk64R.ŒITk]%4f~ 9-zqވ lËtιBsDOm>@洸xl.[IX6wPzz, oNQ<`Vxs5JZ06CN6A8fE ?cSsuF)&Q$RG[E~٤1]n:U2&B80svlSd7}^B.KDCC~%IL(8~[y05yf H -v Of6~+iv}E3 [o,-@5>_Jւ/;cA^ l@ACBr=?' >S屓Rji h:޼0__wlj[r>媸8W^`98obߴ bԱ,j֬Ԇ7OʂsמZu:ýDXp"F5C7?7K.\U&;Q ;u ̠[kVޏM]7}rP69#q4w.jd }GӿCyU`kwQݙv+d^H>N5K/O;X|3Y%ǎ XA Qջ@ zX(Z1Uz j* 45 Zؔt2 뱳rⱧ%!^QH(g(,.0T=gbAP_#Kܺd5bԃBH[FSO .8L>G_!T~ -fc0cܠN}+"`s'! e]>O(\qB7o]&J$5Hen/F:҈rw,9J Jv$R>` V ;[0m&D7?M8љ]\hVZjԻ4\H‚ a%W- aG4:$ E^,*)`rLX 唍aAQGe]Uy(@ųtһrO~/ SY!h`'pupYu&FяbýԃhzC AME9WNBKj; $2jkM:'dž6XE'3uѤHBx!^^DE&"=@dŊ-锗fZzN);ZϘaڂ;ĕ,cΕ  %cͥ7yrUl~xuM;Z։gxtw%%gQdjn\rȝA>QMjXv@@^ &eT`a:HvE/پpmt׆O?+k3,1U ^6a܋&}ʨŤ>wn+&&^޽ OJϨ%on,9չF()(nzkĽ>&N71׽t)lll2 @;PƐKZ5yM,U]| ;1$% 1HNT`Nk/6 y6ziF?z"\VĆ_9 mRVS0<߻?Hn0߿f]dF;Nz|Z&̒b2*#F vAz}vqXJ Quv*'1(J\.+)biG " mQ+<) o컛^`J%wڔ&Յtd Mba<f=9R{Kįl .?=({m]*(hj!29G?0mg,t>8['N Bk|v娶ZT%齥!ci9c'%ĒP5~#L V7\P^=iJLϠ߇ҫWc.xa+ۊTWAvhl'e2T)#}]v˜vd\ZHTy,D/z-Z.nIʆG^;\aPULqT˃9laK=s}]6L/[(ǒ̠h+xp(rF.(NMn:D8ۉph_.RkrޢP{d r1{]=9?t8J|SP^ۯem'mK~f\ġ}HtQ'q9>VW!9'mrϹQ]ahy 2ϝ3XJzcV:X=v@}JFeD7 QC*`9N4⵷ Mc/2 rxʽ[O󪡏@M0<YcѱB&Z[(8|胤B\ M.Jt fjgQ˚IEJr.)9V'"J@d][N4^yg6޹ݤmGCJD7w} YQ(,|u3h瘿D|Sg :lQʋ~'!1/AMrVn\h/l\\,g3R;Ӟ!s~+e6"BrI к6Em։%N])aAÊDDIX>X3GT-0aYAjh3bӣ=R}eS S"1Q "dԸJߡoA-B L<Ӆz6|5 7oY鸪?D,T"me}*&eRVHUzSBȈ P5nnd{| p;jŧWK2DAHD"rty׎u& +59uRp|{ZSM1bl!A8L`g}j!NhLg7K_0K0~í2RI q3rD2rVxSb&b=;O0[\"NA[!6rŌf1^OEW,y8UhcpCBo~(ЇWU8mV ;$ZI>ip d\C,L17Ct9v#&;z+=O8Ɲ%=Ff9CUKk> 3|Fĺ4EeؗЭJr{KKB[oIdvZ_E+Bj3$2-3sg@Aff0"F\D?ؐXbCU4πy3=Ph:>gQ:?حmzxO8|V7,ZxYse?35ݡtG rW&@7?ITaNL6ڦI2.i4opٞ2Zs1Ev؛^j?K2}+*QbQd r?'޽ﶒWuQ)_ wDБdO}M74(`/+ouBz1XI{vl\!>T ;,7<6gM!Is=@%p4X-y 5~ lJh/8f:HI7kZtym _r e=Ə"#6Ctߴޢ +`I0"xW֢`> ÓQpcC7Oұ1n0'(x3pcQP4tPT7YyOUHZrksAM %F6Tz|n%o?d^ir]}5I}G@ا}+e ޅI<(ՈU0O񦠜].dn;j<`4- ;-~y|6.炠V{t ~#89H`C?q˱4}tRp LUlNPuEVsL # tcciQьj.0VA2ZLMFWhֲjUA >[& lύ?zE{'#u=jD$YLn2F`)hdږ's/ 1\z[`{mafoo?zFkWqEIEi6qO |{l`u 1a4Cn# B܀1\qZ K4&T_&J!M۴of0Fr.,%6 '@u <7."@'5LUA_Ev(}UW_- Օ,$qo}_j%INUz)=`m4!ql]cͿ'|z<[BmD$P6-Ai0eR6a,_{G܁9H(W͑WZE 2~5:I7h 0ix$c(),m;bU>I[QYZ벋Bs@V[~*\]޽[T%klP*z=Ǻ(?~?8qGRqKfH=ӕ!k)1nħIת .(lZZ~9^Y5^]Fv lFԵS&a )GVn;b>~h6D#C_ 04$imctU!$AqU-Gex;ߋ{ީUuhiBY'F8ޭV\MKgygo9N0E8=5)]7O-Bl1:w!w›dTt'mȾ 6y7G<LOyIΕp!G#-<0B#~ à kX&=I sR+Kt}C^zCߩ~]PGN\49v4TY0i夢.lNSar8]Z̫Z{TQRyxOhInm{8x'Ń5WlF}%I3ж[Nu|NthĐ(>?@.EY#23h/P[{*0Ruj5F߱_ qou{I")EG ;/4VTl*˂޸3O0xD,0ک.H^>R͋~}l[Vo>! a15 u3 K7(< '(&%y ?<0:S72C28ވU_!G[$GS1\7lsP|R'O+F-q\I\?=s2+yUC{\HhE#L:߽d ҅m4G8ڱiGv{\6t|øPWnqڭ~*"ڰayf~(Gis}kRŢobҁV>S=*ǢܞˀFS“Tazc]3+H^qJ6Ȧa-WaBСpYoON錻^rc xa<NG\'zxnVcݟ  +$tU(v7KDyU cɚ%`h NZKQ|0@ U͆G jA+\ s 8|2q96`y;r=OI(4B{i߬[scho]~fM*R9<\Z0Z=ڀ(I΃<O$s%v6՟&EP*xH ; jZ>Є2'V>IZ#ҽ^n3~n09+˽ \lmxsXn9g}7b[Y])R2ef$zvr{($lapƩm֤bܿƈ+fxQ[v핒D".?mG\%Cމ y1@LI$0:TZX9)*pZs֊x{B;vo.NHfhE0V[K $riu3'WHs%mZhw$&!7FslujQb1 Z4+mAm.{@ɨ#R BP~{:JCb a9a8BU3T^+e"Ȭ""ߔ(G9cҿ3a|"?d"ةLf Q$X J U[r|qdN0+zqh9)g>K:sp/Q^m+nv ?`uWoG%quJ/n&dZS`H@f`v&@%џjeΣD>*ΒEV,,f8i:-&^H[gνL&o[k[wpah0HЧU`-R M@6#^^w媖VͿe: ~vPtsm籘rnŷv Xe' YHxǮC8>|o!6) {꧗bVǣϰlV?X>%+ZcFFִ>-9锪w4NώjxNG8(o$-BЈ{0lJ Ê.%;e8{ⓂZͩ &|.lBiJm#]wAhv/0˩Ie(.qxC ߃_<+- Gz4c ['E0Ӓ}͐QS)SWLvŮo>z+t4 PRجv["-9h ќNi*2ûAGHx9,Br?l+4 4{4,NW c*lyg cJNT4X-A[(R{AaΊ`јğk^cn,+54:,H7@M~p/1je(z?:al|knT ke*_Dھ[":S]TI\&LSAϲœw@!GJjCwKt>|q0|A2j7qCa)&8Os'?.EnjyG<.KB51w[! kv Sw8DN\aD޽Re6i慑$k_U)(]nȸ-5P1.g=$?eC`/}ON=rGBW1ƻ(=Qc!SFi@uTX+7hsi*SɧM}gp#+$>^ ૕BU{N9#ד'K(' q6}w\G!/}*xۮ-^cMʌØ"O0)& 6ihH8ChڢI5,"ꑟϢyc'CPV9ſ8840?CXBSuI DסvG FjYyoȲ]PZv3K'#Qhz2ō aHFjDB$N !xTu/Y36ŦƳ#&*$E$OoTN߅֖?F ܴ7:rY1Gwxx~;\)%~A6?~=QIQccҜ{V#? ֫GwŁ Oj f j~&ړ#8aF|WF/ƃb[Β4wDFBۻz瀁cMzZ?T݆0#?a+HiaP$R@#F)&?9ypP}(.[F?%+ <搭N_+7eS8t0C)}G(^(kYJiL䩧# 񜔤~-+-@# M5q":S ]j❢`FS[>aTe# > cxr U;NHIM촽m'ӟ(#)z%qGE翉so簚ԧv`HeM^.TF$?ڡԻm-}9+{ƒ~=WH 7z5bPAyAgB{!pIhv;#V#,n6%AcU\;:) AEk*'o?a:@.U;E*W޶x͊[Kk﮻_PHS_aX rٯN>E.l춨q})zxoKرw7S)̂y"ƖvbgDņ7>^n0DM4Ohx">tְ$g|3@Vn 1gb[kӻhPx3''+tx8|W6L{d7ꞙERUA`rI)Y2P }~-9W^H#o#v*-F,R6 iS86yvpjHWsUZĐxF286KhUx|COҏ68gu8F^BS^=?%M}דCǮn% \^/Œ Xd߿Bc[Ka @!KбLOm,Z$RA^Y Yy7-jꡑ U4,"$g xh َJU sxw1|L,|f"qt"vʫiȴ|Rk]}C޵ܤ@jև/_pae&Qe%,kpZ>%A]>$-6塌(L'e؀_>N{Bhse݅$!-'BxO ~όejj":YHܣ.p?P}Z [C??i`e'.6r{Wmme@ _keYam@oƓQB*PQxI*`9ru$Bp^.sೢ6/6-:=Ηo-6`2Vb\sp{ UU49qaSC3A%Z:DG2עVj<ˬkLx Ct8 M=㳠mH pPYQϏ[ 0`Ng/gLХ2\y_ ٜW,^ysV^+aCk'|T΅Q^lO.=Ӝь:tQlKjJmQT_bݣ2TϚ=^ yY Z;Fn45<$~.j~'U I,Jؤi&^A PL!UqDc}tYUuk##l>9"CfpNH$?t"h!8B$MYHU6t[i~윂QŦޘ$z&cOѐNGX@A+Zq0}W=C%z'gpaH-pP(~soE?IxxMꀛv^iB20Ȥ3'>v9, oVS,kVaG|HMYXCHl{__ Ηtyr7!=rx>0sEE 83$8Kf]&$wї흥xEt.y-1FT!lIIp8~[ /oqaTFáDֳ$[:fT+ ׶Cfn5 -dN?`;o1y)A? Bi6S2*-QeO[$Vf>c9jǝƼIs:9QxPL#l0âd@49]dtxW{fLv}i!jOlrEӅYK=Ln@$9H^o&/>_X] GjyS h-E܍Vo]߀|"].zmJtSc:>ڧ8NP2i!Nt=McZ+)%(^}-ikЧ-%M-!r&]Z&E:1) =agy-ҚESQC5mnXwۥ\)Ƴ\\d)&!㦉; 9 P=*c~ (ET!ˆzn0,P7Q"{1]4llE%-'+9vd9QU ҦWa8`9Ê ÇuQ=z׎R0yx:*o,&.|DÌZpGR Gʖ9b%3лv_sn q~Ij13jocT2Tc,v*Oqjo84 un1j9:sYj]Bqz# LkbUe&H"e\PibS%k` q.a>SWM\J8=;I@Q+@26{@Ҽ1]-- 4SUyl9wRJ/k| Qd}-{o=[泍4~(_q 3uly ?Ml2[!A^ìo)hG@ T (prhĜhhzv2QlCvkeX◙rw~5y$wB^,VX!6چV#x6!Hj$=rByx j |yM$ o= O#Fox{}IXlsY}\(ɅO>LE9_;XвYg&Yi= lrpXoeUadHp7ǽ'ZE!&xAa zSSFT} -&]R>'$X cZ^s}CY0k֍ڢfJ. ׶2ߩ!QAFTp Sczp6L㲑 4#Z&$iu!rpM%(^Mn-dZiE^X29;ɋi|ܭBy=4MN8 &,}KX{)QZlq80Yw.vOA\G0ֵ du3JexCoh-F+AGaŲ¯,Ȑbp)deN0 :s9}.N2߬unWhX7uttP ?aP҂Ÿ>=ϩsN/]l~>Q#}/g#4>vS4 !dV0#JF\SՇzS8w>\{Fg|PK{tuDMORfӖ-ZSjƹwBv)m AY:瓭%y ǗkȘheL[cދ7e^c97vUtM>V"/Sp? ?~M18[P7WlHBS-l"K:=٩~BO6^^S1mC8}HP$oS?S敳7G^Q?l}l-^s DxU vIy[S1dH0 ʪ EKoJSCqJ̉QLRo]'i' UgF3 Ā#heܠ cȈk\C|hdACdsvcXWlU|ݮSaҸܬWIqg.K$-,;In3`zB*9Hv4<̏ϔe7*fj<F@Q(e!DMLy] h^Lyݳ~ 2+9z:aXq Q/B7ZdX%y?txm; <߅6 㿔VUk@FbX욍/I5CR5H0}'$щ<8U2iapSГaTSk&f0𙂡`2+JK2@A;Qr๳i1^];zȖO!#k0kʋ0zzEVSؓӹZar^(7eXyېrU 4Xi`*_wU=PenvCO;%b*ocȥ*)l`\!ku[-\<AP wy`)Z `R;0V p\ԧ HޭTMMԿ}HOY ۥӊVЂġj~Jm<FW[XBɔa S3$5kogǟ@e\[ u*oLe}S,-urb֝75FOԞf#DyC'e)I?^J; xv{2:?Y5io0NJ,5UAr>^у-b=ÕjEr*AcSG_#f HRb92LE'9f6 (;tƪc}D5}YJd*yXKM)V;˟)'}Lc#X RVY*C*E î?rLR=~6o$Ykczpï}IIZ 3|ϐ?E Cg&ӏ ft~hsEy)e!G:jhmxzVkUXnStu8].Ca_84Z]{lsyfGDX #KB^Q?XH2J͉ ; ~EIF"bgq tLR ɭdGY-]-.5toRi4؉9#UW7r1wJOE~KLH'`SB'tVF6תB^C*:)R/$UZ8jjx^ct| 3g6' y-M"8_f=.zyj%#ŭ)-Gb_'Ak~IXSimѥ65u퟽} RXa>vCf U+Paq;prGN:m&',}@MVEu:JCă&+>KcЦTt psi Ob}~B iY 7`jiˆAn_G DwvHm@x\)ń'4g VS14hT|U9 +?\\S8,idV50[)`HC8l,c,:=hv"GaqvZգvmv?Ny F;It:.YUk2ɾlfɉ zI WLztoB.&څ"B@ :Wv;B-͹-H2=^F~J.x6Yw \ȳ^Mb3e2y#Tv. 2qϪ['[Ht)פw0~Yus~(K úI13N"nQA6y[ls=Ҝ,Cn 2Itvf"ʡ`gCnuWR8_/\1ݓR_wZZ~Qpl5B)0Q~RQ [9/!MaZdq}RPi'U=3i.cY]8SP}P}k|^^a`/.M4=e'/gbb IV^㒀oJ4 Sbv5eGJ9Y[DJSϟyb Pk3w#K^;6WYe0sd*s\?lϞ&Vt8,lj\V BK-~y/BD@حoI]LB*)_c<^Z)MJr kv@-j*mmb}BZf˜eʢ0$2Ksb~ӯdܗ>پ>[0n(E Wj8vdM3-wvBN|7WpYقx 1 {3ō6I"h/ERyѓvY$;oö}׺w(SfS)$mRiam`^:l5z͙*äcV^PF u!9TN.֣r]Ym֓=-֯zCf&CA &B4 V$9{ iFxh "a 7,ZIާG7 r+&ޗV$$qe *ddFC h_4חJKRu.A'kc5X1:.j- &\j`̬kw\; {1WؘC2`SX0&nt]i7% d]5| dZ7\Ө{3 l!1rQ#lL Wq1 cA0[ jo˷iy}5xLpu!ǰɟc%)V>hpG4VƸt(XTX#t^3|#si\i2c 1YFBg9;#n[%;MKr+#g<ܾ}PVpQMF C*8C! nОC nфY;E_HQ"_ {H摁\;{kuKyܯ7єRP2KGd]Kpɞ YZ5"\]EyazK3*P{. s&C^6ĈN9'xu0 S1C351',N",3wOÁ`T\hu߱Lݬ-HV'υv$I=^: Wi*]7=R&#+6MTOI^[緁_|82_RgyGX(%n;M N++%8kqHԧKaPOۯ(kV-#shgXb Rb,dO}bαI3b׭ΠsZATIqڅuka)NGb~$ t0 rbLXF f:Z4 ۥ"dw|~-y'v`k~ WX=~0I߯ IO5[X1h~ҵK&?@1Xɧpt<ܾ^skv6Qs6ifcduF%л V*HV0[#Y H9'XzvN zuA+P ]n"~f u[~chض8,N?n򭁛[bPyg!C9g1wR3o\2hµԿ˜t}ژS/#$̝:Y 1%rLLd."uEfy091ܼxӮM -3LlբFvlRX&@)!S^Th%+n8%`h4UrUƍFߵ^TnSmNr] ufn&d NdS/#d9GOZk:`qP OAK".>’7ZZa`x=÷Ri`"QQ-C.$lwA6hg=}%9[J,yOIPvZ~):leWl4sY?IuӲy|ܕua"VTD0/e?jHDacA)iB&[O2g{ GIƲtkA W.YY;n ,zs{@^Xy:rZ1"S3`VGI ;1p1 Yr!X~7|z%eE"z;ct-[Ec MӜ{<09d@Vl&iP ]t8%bzUWԳК®T/˧ j*G~k~Z=(,._-@ _MX/cez!NWV' @`ns5n*?2s=%>4^]^7[&0iPPʠpm"3_Tt@iˮ8Nq NG,2>TF;N¾o2a@Քw6jxਰ p7%S>MXMpmH1΋V;i) oLhIit,(x7uD B*gC'1P&ߝ}3S}רj@Lj:KGgs*`@b8T?8M5EoH~FDziq#9ۂ<=A/_QWz42̱r!_EוopI=_+.Jm*H |UeHUa=Ǝܮ1g| EɗD:-NC P~#>23yɍIPaSϷ)g+]|{,H%#,{]:WevBmߕ3VD>I `Bh%|xJGOtpgH¾P]BKh.s2.Ptcfo,`>*efL*'`C3tvk< +? S*hn`MDIbi d~?*]$:)1&X̩͋q8aIalއ,aya{k i `{C~ )ihO *QۓQEKԢAy%cl=uR[A45G݁mS ~ >QwvWu ^ >9z[1PUP禽=I]DL OP啳9\uֽ4pLban3~e%mF)sJROtҨVop|S&E %޹QfGh}Fv CPc ;K1qt.ܚu(JqrIk B! )o Setx2_uQ"ef"u>U`GU73W6sA ӿލytErv,.Ô;,&nC@a[l rT8 s,,ĕc'O k^\sݨ 0m&VI@! )obCPwgf^z2a9<* 3,WdĦjLu4E5ً^T7x('F0Gɺ*/gn: 1&qЄ̤~*-+>:$/T?8ZF 0`C 7A"H\IaBr/ʍZOWTE<.]tzAE7w/ -bT fn9>O.^˅2_c#o7jϴe=+P]~WW_Z5d/>J!dpҵY33fޱ49 %uZ´.C 8RGp#|aQp=ц+?B8A~p khḵ%["ܱvSX?iN ~PM?Y 6ZЄd9\R"[0_bdI`dpLᬨgd T'|zzJx%^H V oCZ"~M&dzﶬPvu*ʛLNW~0|Z?wan+qY(QOW q/e㾑Oӛ&?i-xm3]/ 3 7Op7 EynUtpy3-힐w%oa5Bð< Lf.içnVӡ\N/3J|p*Gyf!rlǹ1DNcD7Cu[3搶IVnBv0][/]:F+k8i~w\\52.HW+ِ| oN_,5Ҳx=3&ecID+%'§-DoB'.֧k5+G3-2;P.)h.Z&+.UݝoUځlRϲDRL~t+"(5f2_s <*ij)Lst<|s9tAGtU]ȭɤX%&#Ӱ⸀Ӕv;U_-2&1jCXwD[wQ`uW U6(z*W.fF5.-+!z[t]0fxڍҭme':,<'fU< :T2uK6'_#­#O_j`n>|ˌ %8n}a'lZ<XMYo\Rr#!Vʖ7"1WAmlEσήC_3\81.@yjI"qa:{֧>m/8/ɋ' ! H&V!k>*L}v2cN@ߖni;@^qd [_}Oum6J-څljfvb,{~2`dI\@XU/L{e>Hu_YAoui V .J4E RSޏs8w:$s4eF )֊OnZ7T!>-ŧPMA_džpE= 9K.s(4ShOZ 2F9{bNoƎ8Z`.L:@ƯDŽ8l ɒ g9!6{³ѥ|$p#x4&X ( N`4䕡k$(|clRӺ=!;ĈqQ VZ]=H)ю3KOf3gS{qD\J(,t][R9QDS̖=􎟲tLe AHU5S+?fn!~6j͞%=S_=HHz1!>ؠz\0Ql̳e? e !YtݦOC޶Tq ՘b@dsXHBϗΧ8>-WgyxUymVV#j|isl%N\.(x" W PCтE|u5 *=7ٝ,̜rb!q)ԩ@e V1БK^p-xpcB6N1`$3Ṉ " i=N),.ߍkit捰8F 5SN:%6k⛜ueT h*.yƻ:܎)"CzuP9T겸$fM[-Y$L˙gץAC>sgwu|ʹGvvB-.^|4A'ۣ~Ɛ9qId-SqDoٛa,~ m[-q(b]z4O\%[&&~^GB zP킭[J%oL#_Wsf61Xw E(*DNZ LUzC"0,wZY,j9{$bSQJ|:q< _.GtZK||ߛLH#MIBG Rh ]!}75Ѓ^s$(_>l'yiUӜSRll,Ȏ~԰uĦ9Vv uf楪*lɾg9hy vㄾJGI߸op Ns]|hҵw\6&GkdofĴHVV4c95㣕 NFEbDwRƥrSckNH/NpO^mWwvBnG d+7_5&wh֨qMpA[h:Z AdB^3<J'Ix?h4G^"7A]L+,P2s{P_1}>N&]yjxN ^wdM僦Bw ۰ͫ ;kW yytt^>D3q2=ieXk+ui'z:5z:]dKfbh̖eF<.u0jZupDtMZIfbF<iR)R_C8UU_֠-TUMYxt&nj.q~Vqv6i=EStm~527'UCO wE'Դ7.SeJ; ự*lsת 3,OGdF?pRDJ'>736x *S9<8_u5QC InF=ew/ 2_^]}xag="e2Wv6@68HíGlR=p҄)|_ELGgĘٔIRJ U}/gd1Y:ŢZH3& { Nr4@;UU݆^= S#g0"C 1M"0PF<3om8͇> fKuC3lP5ĞY7kxpfe b5gȉy;GX"<{#G |yo}W Sdӆt86ʟQ]V@ߨ*︷V>%XPv;PPu¯q\Ex^k2kմ 5\<B7F< Uj hV1CnF ]DuqBɂ/ϵE<:@?6E>6q8(?b۹F|.!:y\|4;B`i,`92zZ0<+v@!A@a6 4JL_O JG g#g#Ȕ@ZFE7P+P4"/jgt1$ ;^`w.t=-pMChP!- f36;n yu ͐v:Wκ6{`[ X:kxi .k#9>${'V쩬?:RyQ,P{ܥ{,ۅIVx< '+nZVH G%ѥ_r1P- ]ֆCG] T aG\/x?j{%v#?D bs.^^$ ^QW[!<)=6O{svyn蛴!ET;|gV1&[PY%X\hh"\Oָostp@1k5SP*E\O bm wīMia)Pm_c R?(r.֜k\fgԓAH?)(r{z ;c_$j@N٢\k =HאztzG-uQ b|<~E)E(jRjb0߹s`1q%$H> 1?T @|#) #^#MbTNʗWM+RQNʆM$wFF0ߒ7:h8*{)D2VQSjxJV҄LZ2wLv>AB'bBBtfpk? @#ZxgB*p+PiL'&*}A5ba!盗x}m~7CTba[2R3覭֫ ֥rO@,9qf4&B!@sU Y&M$Q-OzӍF=%.j#tpHBL{̇do*Y#)iX||:k(@#MJ[ \zTcXE"!62B;јYyC rOx7]{#3fMBO qҨO`,G~!G٧8V(%&4Z wfpj&=z@zrŲPAEm nFᴴE'uc3BhHJ|>ik ]אH0K%\4+BНȭo[U Anz7ZCu%|)u$ !U)I3"=tluҚ+k-zeMgieVmh5DO o s6uJNǤu2A9 s4C[.^g{ jQ^ \7Ϊ{-15<]dyO~uDentUq3y%じODOa3yjP4ا>z&Nq HuرO^s\>vUwUoc=F7_y٥:2FPg=C| #dw{'Lz.TFq8o5BkQB+L= _BiRڙSou'ULUxK|srRhN &ѧAWXbh 6|(,Ɔ3$EU2>.g5Ae K̀ HxJmXiX;-1Ԙ66يZ =% ٮM!ud縖A|BvB+ J3է{Xݻ촺6 cҥ:0_y@-MUF7d{Tixn I;t ~X@iη(hm=Pp5&o/1ʧ3pY]kF݈Q O،I/) aFl̜rWGq;Oz@ߓU\ dU}B@{qBV::Y(^182SgT]bB/SUxtNp.*j H( <.4In ~\Ö ܜ[T 2i.]Ʈ'B6y8e,Ӿ|7OY`FjW!$<Μw{"f# (eRÅz⧪M,r@qۉɫoͫ>݊:e$.Yp0#LJWHn؎>Qn}i4IJ!_y8k&XaҭO3*1:ͦ(e0F N\[=9$EV) s#4/ΆLr";Fzxw!za`AtpǍ!㵎.QI8:rFsZ^%F7XxeD078cGɌ> yʬ筸e52taabv*RQx5Y*T:ObY-V^buf~gP qmSzk 8\c L0Oh#s|ɻ *nPN]RJ[#Jͬϳ/sM.- ]zH4M(v'nGMCwI׃1T<}h I-wĨKnM=y]R5E1C`z21۴x119@-dYvR@pfxSt?OAXr@aԎ+jc?L4j! .:2~[5xԶHI&^.jmvNBfPE Wj(ΡzthS_񯮿CE_aLUs"2(eCdtna2x&˘hh9iȵR͊86/v >bhahzCr$,Ch,}+czFmqxǠzCp!1]!> vvZv}ds=Zӈºχ1eQ, Ya|>+܄n]zmw[Nnd+]ƉVRhFy?(+D@6ql\t@ sω^@/}yK}S2hhEԡqۦ~4x @/ ӛko{PeW~丳`g&}uxiwؒnB\1hj8[f/t1, ѺQx1QאkP0)6A`~n9ۣ,`~!QF˖aUi#`?i ]WmZ-DUN#)wyo"I6=47GG :KhX[ \mgGC@#V7 ;9<]9 fS )JF FB S鮮dpT3g<"P]<QQ8N.X]Lҷ:y$^ \oW-iދmP&zU`=bYMQp#\4i;655Y8\m roy>l@snʻ:ƿV@ 9?>i> '<{#-$H+ % BRFE e<Fn:Ɠ-~b31Smxu z ;~v$3wWtDݵ@y,%ak2U(*4l$w.+^=m-#j~Ay /[UR}ApSon|> i:ΐ[៶4ѹc!WUt%-['SBz = Dp""!i㒬`͉Ye@y;7(0DeHje:I 8 F 2Qٛц4ʆTe>oGW\0˦Sቡ['Pbe0ɐˍcQgF ][ '*aB _BJ| e[=89UIn Lw\;HoV#7A<ރOAh1j3 Ò8eJ›c$_ `F_~](9]Y~Zox b"rdB$E'8 9ǻD / ,4Ѽ9e)E_ܩ7JJ53]ϵkS@nzY ӡJ9r| Jv]D]>*3@:ѝ 1G]d<-ǃ9 @T e|ks!hayhDdC^C=Яo_3ӁL>*c29Cݬ]4wY+,N$ llГgwvVrߓ0C=z"#O0fК ;|XeUFSV,>RC0NK Xѥ tJC7{ֺ`I<1 ٌ'sսdJ.Bc,X6k%{ `8oŕ$Z=R%n:|uK^Yse0!>U͹H GL6L% m.dm|xME' P3lXnL%i{Zњ<85 yqB< qF49\<'O(^WQT@;[. F]C4_[17?~n,elͶ#S>]n2 Elȃz>"ySy`B6 @ky_Ѕg-ϳCy ˎaW_1Hxl=C-0ݩu1;88B8X|M_uV݇" dd\pp08O=5iĬ\ZrG 1ѥS~a:K hE9u "bI,2o8t Fy2^_>aSN QVe3=\宽TŎD~ՕfPAjScs`;[ >2v[\_ʿuɖi)x,|raui*'m!9M)!/i㭡5 &u KU'*Mp]D-eSHmɒ۹bc},[lxro4p\UqjPcQBvO@ڗq7*4^xd6J|ע?0;5g"ZhO7tL.܂-HNNV3{ۚe*ۨΌvg= "-˻(??sJO?\rW&@;ᆪma4&S[@9Jbw=1MxB1)]ԭc-%qyؼϻ6$C'XEF/كe-D^3795hd#b(\EtM#tΰ{k =[à[ Vo%Bώ y)+~>.44D Z |y1 \o(+!Kkv|;v9B9æy:" v`.pT!t~UR(v+" 5 ߑjjmzZG;OܚL~"gJ^FtB\ыs&}}+Xֵu~p{mHbG7?QBr[ڄNl  J0iJtG>f^q>,^k>*(%j(u"NKC4g>$g@.@ݍ3}@Uo&~CW_r>-E!|!+O 4uSrw{MK3~ml $$l4nJ8?F#_jw̫m_~e2d\B:KxL~C0( j bVa/C ( ˵¢'j[Ÿ^Uo5K[cؙeJF@iSCW~D^iYMKXm9AZSN0~.22ϕdNKԀ7pcI7I8vCnM}Q;Z ;7E_8|\.B` JAQmh_ق`,5L#Ӱb3n}WK{Z7NV:c:{DmCǛg2G`~rs@!؉㊭#qotOɖcΡ%bH5daUg* IISNHscNhz"ʁ=p`lb՝rCN4K%@J/%ZOL땎$ .M$L0BZ"dapo@o.qMb=u3F:7]0(v-h-#-|U @E|*$Pm*?co{^ x@:wQ: wڣ`+|`߲س b!)Y4bY4T{,E +m*ö+oݗ%8:;{ɛDk[FAA@l EWR>h$L>'_3J1C˪`Nducڔݱ4d4`\NVAΝoH@?:0N![j"~?e/Ǽ/w涘@4vgiqz7L%=蛗U+Fr Q +`?eY>Ezi. )D8f",Ur uB1frjyؖ @7YZ O)fۉ%(5)ЮGMl OTߋD?ÐA(g%wYfq+ʼ##uA*+xSYg 18'he-Gin!cj`3h]t3H E;bmNIaC kY]>˗ѹ>85f%ܧqm k\wp8lG+cHٌXc7ň&L {3 2/pazK#GxKF tH]'[|w$X)N"aDNLIy뫓*8w!gzxb($D>=)=9햭޷?% ]yǕtiGҐ.@;%}9` z,rBK+d@l *O.0|-> c}6.IGIo<킆jp;Yfͩt踂U:9%S;K~E: 57ʊ-:p1U]h;h^3U-l&;vvqHD锶Ո6ώ[7_2e˨@ 3E0FX:5 .d.eѓ{ k7+6ffȀ kNŤfgQɬg@ox@6K㍌K]hdN`oW.C僶xCJ'NeTtJ,uZODOš-?i)c_~Ք=t?;KT DWǩH_OKqZUJC5z;ڳXI~E H#X ]dRhO͊VZ9܄^9l>juEA^ʷ&'FYb^1zBJĊ(2r(_Yitxk@T*-ew% AFzR9tti-qI dm!#hOiОRxcʞ- {6ҷ${?R0٨0!,b/],KYz%&H(]4릤>i`Qy*6{LzZXVf. )'g2cᬲǼwNtykʮgE?ಃ=VI,+2E۽4.t ,2s;ڔc&\H &x|=Dҩ)ϴw qpbqTf=DM$̼tFVB<=:e+j vz/Kh.rH >=%%OHŊ{Xtu6_WȵY ޑYّ}t>Թ=LNKK-X"s &4ؠ̉NjeSJlj?{x8c/gW,yrH.qOrmT;L ۀvNkzt8unTd=Ndy,d yI#9/_X֯]SqΫ,Mwv2UL2u[|Nӹ;U!<,z JGmZPr#=ÞXFt,C'Hsq3\"? ^A^ePrT \ah5;][P &:qnY.bf/oy#t3 ?zؓvఌ<afޒx&*s"hܨv`d~.W=6:u3{:b4rm2 -53 -_?_=,\e:ä4du1X,ܠTE1ˢjIO&.6“7*!+?xKE'GG:W. ת[[<+Մm-=朆cn9$Y`4ar%., .L bI5 ֱuhjyh֧qww#/nmFzTXaqJl .*ƐWt>|Yl<|(:'#(–Y1 ZQ>xL߹#*g _<pd-nqr ElX+Ov~rL=/COmu4N8|И>m?y ښ١wͼ\JNrmwWÊi9y*,*T{'?W/HpLՂ ։ #1/\R$gٗc,j;¥Aߊ43c{GJ*͉D/=!ۡ'䫩+ 6[v$i?oJg>kgZ,% 'mQgn%e*o =/mu1AM{gHm>P2nũ*JgbCۇݔ7dTH [DDBGK Z$sGfN(V!<ɉVC@ .n$fz>mAD}9hۉ0 = XMrfZQ ИU=5^p"DɌ_VIF쬔'Szn$Nӂ(ʒs1<#п՘)yF} 9zֳl(ĂiA#sbWߨ0Ap)~wd ;%8cȿWxY-~/A؅W*/Y>!@vmp HF&u9N5ܴkHd Nu}m|G1v11NxrϜ1O #OQo9T&iZJ4SfH%!Ц3MBQf, mӦ'6A/₀xZxx?{-_H- X0GaeZߏˤx( m[yeK{*4y,NП({:ITp] pzܑ֣(+djU4 `/ !YiʻѠ-Ճq;L?W0BX Sʔ\!kOtSͧz74褬qefiwnzB@FR'[\A?Cܿ_:kTt'!1 <1nMPSrwHug[>nv0T{&Bw(nX#BS8qX8xbǦCp׳omW|'~P ]#/[r(Brt)y n ~ȮR yqzRi//SOX|iL T|(eEHA~}P}:mDhZ Y<V(0oBbf7!@\R"/KՔN1.GVg2eβv 0 M AU !>D zZ_$tl_ѓ gYs+la LU2dW\;ț0׿̭(Bf{ߢÀwAjBlpDD<(/qㄲ^ξ>vZ< F4u_K$ທ#m=LE AQX2.tٺ4#qiD1?MmJ/lARU 7#ӥ _2!pw6x鈨֕RϮ!J|tӓ vm;Q^t^{ٷɯ# i9 ZM‡Dm=]82lՎV^erQ gV)b͠{qʄ q+ސeoԭ .T^|Ŀ˒IC\ĦB[ 7~:;Ix 5aW>PxW$āpGm{ri1rJ؁ɫf@SKדj a]@D>ѳ &w3oPK1јLZ;PԳw^N^6^#r2j>T(_hXa/\Tf)7XQ#=<-pQ96:6xls&B( p28kzX6\5M?,M[r=D ]!etOg?%k/#%Wr~!zZ](/ !1SgYZZ /a}2JހjtSx᢫{g>Ѽ][ rku.'?4` *ZEvF XNKLAT6o73Ph,s}ޗ[ac w=y4 <0獣x`!uX`ڇNъf.k*+p_/!ւs+4i__X:[m/*pP`1Mev޼~W×m&I,$_}6ܔ?u+#)ep@gt֮6$dβQbt4օ#v /r#ى$ u!JB'~ 7Е6}P!޷QoxdI3\ӭly'(G lD4ZXUn@vGa*|tGUHA_r v&i}_hʉ'Eb-;t hYXGOΖNtS-V9ut4l}M( 'E.cT?Iy KA$eSP~D5&.Z'}^(jZ,MȚ&HPc8)5zf|-qK'Õp'Yhi}AMnҹMj|qwIdQbǡ$>VI2^!tX;Tk!zx)J0H~VA&%De^O !]9FX&Wsq^ 9c  LC秲<]ym8iC{[ɮy=}5+Tx:ߵ\&t+%ӒUS;(>ҫ+b9Wqz+͡FΉ1xɖ J& >뼝'_el nF:jN+siPQ+3zK_Qő^S-,H/<rTG/]9gdY/ȲAXޡjOb̷܋}ȍND^RbUf?8$6z۽P)ap7Me%Tjvts0%  atmO]kWЅ )ËUޕ|.7VZ@UW3E嗀=CU[Чnnv\~X:I8W|=cFZ}-ݱeͳr|&IK_iT}?Lx/sQ|2ۿ7vfHLn҄+Z ; 2h9l$7YǸK8?SbEbed1]yűܾ̕BM%dJ=`s2U}ylfaRqQuy8͐@QA̩UP®gݸDB>i4`Abum]8;+Kc6ۍq/AEѯ҅*9q [/f;ڍ#kJ zQKARq@Ff YO3P" Ó]/!a%|iGՂT:#3J'E",,GȽSA:0 P hߤ`l)ͻ]ۗt +v)4N&en)+H*!s=ӪFmք+JZV Cn;Ϙ>&j^|1Yfn?r;vRVfeើexqOϮ m sqg<vJqpL O u<~O*Ϥtsok4e 0(I~HVdgR"uU[^zA`@Y/Hޔ=H9&c9e Ae3Y(h? hnz> ǥAxWVeUtw1 /nwdGQD?ш#{L! ,jGq½CX¡{XhDz66Ks:^_1K Nz$z #%+MbfաKxBpDmu%}]xZVKU/fYSu;ɳeo޸e$NZ(^*f~<>6r}p UͳcjiT9bf5VQbJgR˄c#jm}"l8Exx}7ɲRK@dv?~ CN е}q{]r3~B!`+0*6A,jm|r)Ue1"4cӳ'QX}K4Oā7hكpg$@ v W-8f4\D +9-ՍA>ڰS:MT-?>44|QcsTهk:>9!MW)/>.[‚JdgQA>mz,NR bսš2yR>HgƂwrmvL; ;nzuVzaM]E*%lV^q@ b0w謙^$kߌ祿ȭ_Ry»R]͖Y~Ο!z"hHAk#2:hΤE;szD Jw]}_K$c} HU6[*TQ $0=72S˱ФH0nKC0H&Z`=212ŸmM7rεjd Ƹe|viQE>t:G:G^h3׿5Kel?TK)az4e+=@}?99״OғtC w-ox<*PSCw~N6Qz5(ksي O7FIIKQq騒E2ڻkDE (dHO?Z Z9Z1 I WâЇzptBsbgV$XR=δjPNb:!}h 8V&x/cQުjk)xln.@ =Z#`s(ryI鮹crYN?{LU#nV)!BbHa<c*;=I.e:Fjd1vc`Q)CG?RMsB ;V}?~S:tiKqett#PUjjnt2T\U8OGr/Yj[i]J@NV!^{@@Y.0bb'dnAȣݕ0\{J+H]2{Td:V܏vOi)0BBTB[۽jLm/kuIČ ń',isނqr8m\&bDw2+0[}mqW(A"دL xCCqizI$8kL F,  I4[LDn zq+S5` 멁YBuD,Uߺ>>@x*F7gřQY(Y\b Jw\kn|<+DƁ䇂ɟ} g! ۛ rA[*Lk7H'԰G 5v-} N bYI/ˤ-\S)|z :otQGvOG}RfdϞ ٬G+?HH^D* =0mOyѡ( |g1C-6W3kρp rY6k_^$2j=^}oaL:Q/wS&󻩭:fl\ K)dx1{ + ҧʄ]#HOIkd!FL[hZm&mАC! 8Naa\ab.k|Η*APhMH9edJZdU+8^kc~-lE[7(%$;a2 k`d/kV yraJQI=g8: nkǣx;),14pl;/2/x8c:mв fRQGeiIslES3WWDD ~љ[W3i3PG-A>*yF|rkӼ$&dR ee'YMr$k8Q;WYU|Ե怡KID+₌v d̗r(!/ cuf%s|}{œl;[򭝈>cJ !ijĂ{!Qt!WX`epe:?:>s7g%7 'Sy 6HvTP偩#@z%ZqUR4LV㶐,a{} w +:wμxMZ - cN-D;M{|BE-kd#R[ke d7}gQ '~QVpv4.y6@ne~.m\߶ԢU=kѭ)Q:ьt^FzחeskZa>3[Abs~j-w8 %!g_}Q҆^ΟcC:/YZڧ{T&hP,s p(1xT] nt64HO.5)i6IF zV܂Yw33 %M]*'#yߔGVHr ZڴGL٭ZHKMԸfvä_89;oZA wx) .JKͨ!HfeFI^*ҽբ!w0vMPuY)BB䳻HBx!G"+S}-[tUROP#5R|{̻ߕ05_dj)"Z (R$@5{E)ݶ020tfS4~-a"BF?AcNOO^^ v~nu}>_.;16w统G>X> pyv]_Jjnk$/`_G:DZ#Ie6zdW8iϗ2Hr%8 XIנ־ğ-s@5VHdr(UI_PtS8hOE\7=>Kll4V lSaY.R@wK)N0MT],2?vJcH*aaΒ8dž - I^<ye=,"IuI,1gI ͏ C{:"X)5`5o,K_/K~h !cd4:GxvZF99rPO)Up7#WyCU[per*pκt`$2 v{#quGl.^$ P;!"mHbi:x|lq|&w8ȫ~5[.](0]"_2R0vP.Mk4+uGyzo{IP&T:)?3][2NM"ki k>W{' ꡍuCItĵ3*$Q`,*N;&O|vD'"ĊHz ]SRBJtg۾Qq{StCᬁ>J2huɼveKN$wSSWl/|͋!ňm \H'Zqm;|1Ԗ̆s tV/߬ PUX1 F*C|Tt^b7gт$n(0O!Adܬ'jJU՛Nˣl8R$ ZJ⤷9 hjcSrOͦ"Zt̏d@SHG9cpr\WOUpuxSJNyP(<ed׹ħ'G$ yGqqt]zi Ɔ|pGLIiWEc`AFI!H.%)%Y#mϋ(isrun·͍Yߞ`7ZGszT;s_ (~h@mZQqIJI+YK.ctZoT!M#Yb*uP r?J:y#O*۶Vj YzN~feۚ+;.@VayQSUNj;u]3InC #ײ;ve'G\г"_HB)#zCQlacv:#y\~xݘ#zkW5_3戡(,;6K 3/Z1qxm (/g{R6i:%b%f{ .W_v48[7Xg÷ښ9=SzuCIB3+$\mҨ7e!BB@Xbp敪:(G VEg|(>-:b(OMMΙ;ݐ,Tˉf$PãPX7^ͮ\w%~fE6SV2}F*2"Pζ^(afthT 5/W\P^6:~s:!TD%yy5N[ h@Sll/pvOKV#֑}M}IAœ3-s&m5+bX>QxGjJ ' r?]TX$|liϬC:& g4Cn2MQ&~u':4Gp\dL젻TiyF2e 0OٕS0!jLÎu5&sٹI|vTg?;ھY4< 'gõe=cOm7֛8FO GMQ(jt/>iD˕vD)xK(+C:D mOOfxq ~ҕוbUʀ1<1|^C$gٯ^0GR).)YH׸2NL-Y_M`*HP[Q}51qT&.HHU#ՠx.a]֛*d!|@u"=ZD$!m%-ڿ.鮫??ayʮvN8ѬIGn~CG *r7mUggrn{!^i\|t ZE{p+JYEQUFJ3} vPؙ[rL_yST)lz; uQ!^ql\;oB>б7J 43 ~^aj}gpqsOfcfi/ zy hiu,YlCba|Ŕb`7~{u'6&Ly./9K8߭c_WBkлNǚ?+œ5U/8R8xA@Fb luy3^cIPK~ƻOjIjmz|?'B[P8+?G(|! TEgL$naNR 3U '2%6 zBWKH%EÈ-Rp?i9ɂy(i!=׼byipifKn8@c*} iUf]yHFeh&ۋ̎IrKE u0,&O5vaC;ٰ#9T3JJz_a}^ZRT/hrW"1^{u(vb2nܬ(WX|0dJ/A!H[H:zYB83K{OR{ƵV].UiM4}Q:+}zIH'5-8 QSZ4'hm,ߥLJQJRlЫ=b BD OZUх*K= $u]lX"F܏/~=v!0OpCjB2ATƯȇBU~.I sI<(rL ށSLϳ?IȿU+Xkݩw&@bњQ^-a;q ZFȰ|R &9 S@~e?݀?a@~KL#IӀ:DcWΌOWr; قDq>&Vj'5Z~g =;\zkj ,iTVw1FqJF t#$35T /矗'B 4kJ_N8vlExpJP)O٬㬉e5oOơ6LD6E?/hFd7\z]hOO]6'&Vm EwbYT&k$ 0*.ْ9;,0>VP9#?CeOM4$fs ER;!2pn=ȾI|?>󭶞t^߮}qѝNNa[x6 L9K! 6_|9'3ok$Ё=^d7+"Tly@0Y˹&.Q%xaI-g_H@)3{IOl ͝Y(T23'r[ -ggEh)or5T5#+Ip-ކO.iPBBVVT[ /CXmuUnip_U:p'HvlS;>WMC`Xeٗh"NıEOe"T.Ple`F?HEkI41RLbqWh7GB%H0ߘNbJCI muz`yZDELdԥp4bqO@~;/XV!Mz6_րQ݇xc[5eP\,il9m= = ALĭs󒖶qp8v`Y(4;lfL|:z!UjT}$߽V&"UhXw[5S[xC/ީ;RzΚmT!WBӫS՞m!ٟ -sAX/+D`l61Sk v^귍֔,(v*sC,0=6ZKpG"u@Aa 3! QRꌫRY@T*Zxdk2z}Hx,u`DLGXRCAk6#O+>En)R[a7|׾ʏzЊ|(m "6Da~ګA/;Uٵl?wq#Ky`K%<>4 s~*afZpR (bjQ1 VӅUL;m/aPit&=Ad1_1اuGALj⌧Q~$`MHܱԿV ":cdkL˚Ԏ3bJwЃ5o'NBw}b -x%L<i)cD&KEȯ2 KKg7F8dΘo { E qY"nPpLb!:fXg7@B5^Ò}+xlNᧀ0\Kdw]O(ޞ3\/>7VWe)x)1t*5=~M9uUG+0%|3 [ƙ^ـ˓J|]rZe^|=LمR"S0CK?8qiF\=}@T^ RN`_N;#rٻ䕡% q*(Jv_A}[ bFeq=l%oR z]hlNfFLy!2C6ڳ2?DӝX Ƹ~z;,l %<a&BN~P9¼ {ByuG *#ĉQc[FhAHm]-0gCR;oI6`̩e%;x'WtNR`9DaO ".XH^M Tsp(WS(Pr5CɎlv1L5UT;BW}DO1).8 nw7_&! lRNUCB9a/eCN  S|G0g:/VX Â.TIBpW*h0t:M9 j kLg`pzgYh.BDy2qˈF|]/X_gl(+i(hM[Q"R&U>D]Ra̚D}5ں/_¢M ǏB~ht\'&oW|ٴp.ϡJ_uKI0ou2\ 0|%ZK[(..#PǩM `fpA=ʨh8v]&+xN}F[d䠟7cE3`T\WSc5@ބ+ǬxDťbO1%w2CokoG/pX娠 nFVdF /U<ȄD*(?xOuםh#.%vbN0ܓQ }'5dNDHOQ;ϠW,(})#3V0UۂiJK1p@:$D" *cf<$|mO|Bn 5_rwuU19V1|Uls͸&6n_'}6~3 6ǵ:.hyΕ瘩 غXoܷ.=CC(", Y\A \6rdx/C6Bc>O˯0 =Y[mEp\H~WljŶ^nQ Y =F='u ;w zOR]LI>w_X dn#3fXO|D`ier[XMx#0/} ,uវL)P]Ъ6pP# 'Pg#)&hz% []W x[#?[pE|se֩P脙\)*M[c{vҋKEkrViplnA֚wTW4ŵ Z~ _9oX,7&ѩP0J-^~ONUჵ*u۩aJ sdn?p+3k=6zb4V?9;E"J%)yKw8h'ޑa܂pιCjJ5CA(wm*}E{h7عNI3r4ZG,U:Yb &aѣ><*mQD >:Mb nL <[ UF7/mu'efycgN*+5?='YQOa3la.x1y=×>$8O7vUj#o8;PpjI%`7k=A֒>c?0q7V7rf[3#)&X۳]1CvϻO6P\5QcXPG6V['H1*?nBxS U_Zy.Zi]eDQ#Y ܝ65ZaR¯_v,YYS~W_[lU붋mN؜fy=WZQɲ6fZKL="ך5r7oWT!!ceJ%$eʞT'9\ֽ5ai7hF@IsU0RJM#Z N%QqKBMZ e%•XgI`itXdؒ}O` \Co xG *H&$eUm5BK#,[8E/{'gލa_Yrh1SL3@Iō^F0Q֗~);+=cvNiÚּ{ FmeSۄӸ4Q>SRF{R{H -NdtXpG+px?>@JJC]A 990@ނMҗy5PsJPX݃|+2+]RX[zT~3,n ɲ]GҋZ8$0Fç͢(oi+s\K)>CR> l|*DxŒ "9l:kxc@ -,A~~gCvMh'G6& 2:4ܰL:C ۼsR.y%ol/5Y6r50AGOn"ALz;*?ͺ.uR~5\+%HU7|̳׃wKs&AO62_}$CmI~*ҙyXeI2/-St&fZ95- G@!pMם&mm ~%?WSBH| S6m[=&qNl974xgh1 ;׃r;Sgdə mjavh}Q瞌KFD*#,;^,.3F3뫇?ܒ i>I޳9z7_7{r4딴$CHm%KioY-isJppp1ĆJdQso ]h+qӶ+PP~Z Q&o0*^ؚu,10Jʙ| FqNbJ\| ]Қ&RBj􉞖7Fa{^B(eA(e>HJNf̻ZHPZ#tANܯ{ d."8 c= TOg/O:̪I>/cdußYr(c;Ut-Wkm "C2uk6vqQx gp3bz&~}miafn\t7>Ē< ~dUGDkfMv~ǩ٫%eJLRlO7)I҇@UCOCVW]iP؃kHYyHwCsR/ In&~]R)M[L7Q(A_)'?&ou޴y޾UAc_C\1ɂͣy`o,_&Z`mZSpVz-P"zPzF.')׈KL[x =BLTq޶Ya`"5UvԳrsS1]M]eR9ׅ;}&)g3Ǹ$j (ahj"A@𸉵D]ݶ'-T@dMڞU>2Dȱ+7@ѧ9ɋtcBAۀSaQ|8~܈*ɢ`O+iEŏ)L";ȇw^RER[=^mIiA 8 ؗ{/V6_䆊ό!Jdlv9fʷb?;كJ~sPiذU^>WUYFud\9[ZoaAf@yYzG1ׁ|7X٠`E\oE^pӈ!:W[PNbS-Jĵu˦4@+7#r1.SG)sSE`!?!e:C2UrLM2ۯC7C& c|c,P3+?ȓW վkLKxk`LslIäf-3W6 t,-mZz <͗[ƌ*..{Tyʕ|qC.v Pb%Hİ&\!WX`/UvSlt9sJ]Z+նvXR'@q SbARA]ӗ0_]k*p)gKsi޹pBA<8 rzlN8(x㡎-ϟp,U._) N=P+%D붛bG">v9x|hL8QG=3nP&TΠy!޺`~4:nAjk({ \SXY cd6挰qvQp2)| GIu-RlzBvFFY I6eipcց)`I\45؛I`P6A+Y <Ľ4Hz{n"7 g/!Fj}鞪WӱEGo[&1<=/[eBGGL&ۚE@A>f[YH-,`l UhB6 nn^'NcAD@2'ׄ'w׈7ehR-9]6m>8_TM+BָyX_91PTUH V g@ڲ4K kkI@SVer%CajYbW,ٯYJ-l٧KKRnVͳZIXrqÉ}>dM;^rRg#VD@Zc(PdN8\#Lܼ?WxIcrʁ2F`q¦FYSc3%l1vgΓJu^֢M9;ܩDțÈ\V۷Gr:X䵡AQ6*˅$ gz-n@Ќ #bm+~-5WY f# #MQ{veB2ܘpȔK'3|`oĿ 'OZi#,dU2CiQPA7:-h5p[ ]e]HL@?w{anɺ[ `8OSN~s-!C'9 N*_JKq+w%=7)b6@HA2dYxVdC=A߾&w+F8 {h^,"قWnoǥo/I|Ѳf\^o+E^w/S{򍱤CA\WONjd$?4<7t?isU92s@M2v!~+ɐ "u[~[mP޻iS,]1Gb,+T^03*փIS(#(%it:u01jj]i·y, "DV\Lع_U¢4 6EZNN: fdZYI2l<:r&I/{L-H(Hs%'&˩wW۝b$r1Т]DҞ d4o:SW`KFQDOW=a]d`2w 쟠$pؤ=' $<j,a6"xY[O{IȶWtkrT8[ =F|`"(>9 mq?2kF#ul֓ыxC J0l~qGOTץGEg?Qy!&j}V?([˄nHi Μٚq2>ڙHTRAdjrۖ& }l xT#Oz'1zpbB&jQh٢?u-p4]Y$$6pIL螤h!Rp% #L ?XۊdN_ 9]-3WoW'lH.}L9?܏Fy[&+CC "Cɤ1B{u ￱ ԬHDRGXcu ;iםw9cM]&VCtqm*F ċ"r{n6K3ٖЈU5\ C='%6ˋ{ :_շ┓ݳ3=aA[!|l7!vˁCТU:~]EB#J3po,c}Sti< Fkg7 p.&:H\wSA&j2)¡&bb~ޡ58V*}t 7+Ҿ 8NJV?CAoGxX`l1_H-]Uu{toUm Tώ.31 trke)y׭KP NC:EׅμUAsv,|܃5*9Ƅ--YVl^Ѹϣf,NFpllXvsPX >hsItQ"幆ΗT\麓le;Lv?p_QC2Ί/B2IrbtY|H!yǞ 쐩,LT4tTv[͢FG@~2,#hÐxlf#Pd\z3rU|M] q)|){tl%b|L>~Iq{4eYjخ"`+-`L2RS8:Aʳf!:ߜɣ(,p*nI}OjG32؋Ri NN>r>4L%|҇~dd>u7uky":P<]3w'a`u5 ^ ~o B%@4̺RQUbp s*J#+ה0ow{Z.@?|9'Oa0KYUa!:mw%6}ydunfX v{sㅮS". |/p=,q1 (Ioβ7~ aI _QV9 lب1?${ok"+ȽӮǴ)U"ڙT[ *̪Og|"; m &ߌꪭj/ {@4EbыGɴ ) -z@CZXz$5[cS#ƕcU"14K9zcQ!C+>$'}SY ) sI9eG}`">=s4zF8JYց>&g(.OSA p8SWhhz Ii&+(*zAiZPn\jT@h >`~Lew}]($銅n~|iht'K]BeOGgs 1 ;a %=z^(۝=NaԹR,Alڏ\yVW>[JX-cғ/+)Sd#ZB?ZU2SȻ&qhk2!Y0,:245EځʥAf B&G#ԁ kz}cod'%ɉxouڴ ^EL 6Nم :B',z_I rxUIM jy`E3" g$ӿU[&nݨqZ=H6شԹ cWdИ/afR"nX@0[FF&|8 ۀ aZ4!)5r^ODx}K+I 7M֌.b}?8 ZTY%?W ẳ*fe_&e v^lW 2Z%\[h^W&C}{Gjg&^)2 &uN(r*#Ą.'F֚?&j@:Ɉ{XI_`YHޜ oϦUtqs:$V&ˢf[֨cK|ZG1H|:TXgLr*^qi#f&XJ~YDU0T_Ւȋ'mUl]SwGѲ0Ae;AAfd bOJ5;̯91DyߛqG&;llUC\^j)\=!t.P]ܰ9>2CJ5 !-D`6ufG{{J(K=wl J<1=V(7<= ܌P7㑥|G@Ҕx_ Ug%;P3gY7]9`g^[i('p%c TVrKY<'C 35M&:d;yPO@= ҼI{ S|hT6CZ/B;3Mwx) dApap؛yh)j@V4fl5*8ldQq%xIu9(?SJ#eZgɁ^~C&/ר I TJ X򬎎~\Lco*u]D߫tъJ#p&A4^#T'rkѼ a01Q( ߩftTlܚ`.i '%J\[HxHZa4oM ~B&?E e|626|GCԲu_M޲OIiEh  ˋHE% ,?LW>3P<;Nk)"_i{.&Te_1xDsi0`" ӓ%R\᯲ vICd!nO3eBD~,!RqQnB:|Ѕ l7)Ad8ƴs&b.H.+:XU?1P`TvDZmAU9~#C2{>+Y3,zZBvNbC6dl w#AiɅmTQeq߾5N{atoGDMG@#ajEH& 0YȏJ*V>gB0q)}|bڭ̂թ%_Lno= fqe&ue"A31 `ݱj㺩̐퇈J8`lm:5߉sH+m ;t{B֞YXMP\D[+ҥ3Vm0SսMRjƭk.V ̢|dH=Z ]E;:հKǷ2$wgL}gxY>)C %tIqE2jKO@0Umw)Y r<3E u]n[;j2oO AR{L(`x}C (hh$ӭǷDd䌕 J:^DJ*~X=?IJm9pIoF4t|v6| kAP5_~x, @\ClM5o9!ka 8&f ?ܚ1\KѯMY@Em #IZB8dP=Y4̨$\jv ,u&@Oż9BW]pH}dCW{"l9D5wm/Ǚ<ؼTBjsMrj\1m I"YzfAײ xS?{q4)} |#9г4`)V s>J r#xPe&UfHg@AZui?r#3DoVZiy-- 3\1'*{.$`SDtA[*&Xk&Lۗj=MU]j]WgQ@DyPh< èiGas4Z%mTQ.;}un#B̜y +M^5 0mV8E~kN85dc'1^z`>H~Gpk&foD@ "Olbf ;Z<+(iLV:$jmROTj^ں#3͞wJ@uYӢj(H{8:)Z1!m 7*ȼz Z k%v$͒ X]E#Bo/0__z\z;*ů갉͠wZ&\}">j'2L)Ӽ qZǭ>5xX芘G&[9C!7(1Q} D֐÷T]z,E| 1$v"X?eyM+xieY$A0fۍ' `=~ڕhNΚ$%_ Q{X;_7j("-SO kX/?WFsQmif+]5vθQ-x!.IYl(`k6? #-Q0.hxf b6&a1VXK! !ni5rYVzn̶;yVr8v~z^j~P.v4JBXHbF;x_$fުi?dX$DV9|woVH+w#$t5zި *b0 o0՞&_b7h>9f7fK2 jm+D0H"z[dܰ)r`bx˩l']Q-OJQBRA٭TM]AÒN\Y^^Cewqj4.ezKo3'kɟ͠?ehg{RԠd!?AZv*?\")JMl]%;%M ؚ%akx m}/w*8#$h>7o8qy5vs=\h~ݼ$.v1Z**Xm>@w'JY9zְ͑@Bzw6Q)TL|^v}/hjzk F٬A}DSs93t}?{ߦ@AŹo#݄'Qr@L&zea8p*Q3{ZaW[Hl \=9[,U9(;$&ё[(םP$G5aE yU8թH*hj JԸh]p\V戰pdP嘣`O96wWTIm-Ogς3n$Q1lrBda*O$irݩT U**uiϳPexx,ap&4H-"5w(J>1Q>*?&"TJyB5M5!XIHUE';ˈ\K8p$L~p¨o2ĔP~u-uvL7q}.W^@[B;"RO%+| S: <9ZVfLKMXK;,/Yp¹ ^x3˩[rcf@l$n*%Lk'1dA)/;o^J0GmfL%C8ȋpEAs 'j:[[wHiQQuC?l,$)sz|Q['B8f֠::I=[TT֒$~5/ǑJxn;$Q=6xۚ^ …% {XD/VP$Q㱱^ wt]|ٷ$M mc$.A) yH`ASi;Yڦ Ρ仜m;W&xTJi/ɜy!0Rd$BN̄/"]~·Y0~X.^T5i]C 쒬r֜y |Q(l%_<7Jd~&>+AzrylxS$Hbn)-.կ qPnh::`83}CU8a{=\%"7P!$m R4u<'?M$\4L InGQo'&R ۃQKw혺"Xck1NФ x]6ׯjS}DMI~2^gTqJ6PA C{Ŝ|F].,~~rHn2F O4ȗO/, (@<<^ >ح J>Hᢝ6s>0{ZRɚ5ך!AXf ,Lᩴ =^V۹Pi^wܽHxFm0E~Йcݳ.?5Qy.$߀݀PJ$)UO Y[q hrT@#.ָFZenf\ۈ ߤO#hyڂML ထ,CDye@ L*qn < DLL!">)=5Kܻ?63ݷR20W{|rRlMQO O**'r| (xa/BQ%B hƣb_#;t{#4j`oYMkmM56龁a?:i(#uIgԄԝ^M;z))gߪopr OݚaoP`,,TZ hʘajlf߾.<ثܺRvvlwjodW.+ E>0:Cc@(7RJAhkEB @|KM ! DG BY %sNyuj);\SV BMW=fҴTeP.ƨ3yD@@ޓrgHJP0S3|].ے-8jzi]1rϟ3dBM(BIy@#Bʼ&4Yd}3u90#@mNV8"'6 :_zIp([fп[QwMsE06U &yeLUB-^dtG a7RF*gK&qّY?=HFE2u.Kn v(SEoI/lT}I6R% ?5䝫h;Z _.qBϛ!t49U\l2|쉣)fl%8\{Br0J*d%utM7?aYw_2p}SExu# r,ecDiL/MڞIK9i6sܧyRu PQ$gGlf߲ĽՆŒ5+lܾ#N40bt|OVjz_*$Ke݌^JN" /T<{<lV$_6TBW"TqߔƱetLڝBdt^Et e걶p?z5&u(gu*[OqۇOwXԊƃ}k]"ʆ݄{6Q 2'Sʦ@DKr{fr]?8"{-' .n5FGwEL~%Kg#fS̏z]`-/=i!ɭtDf} q9PaO-<ǚM#W¨O&SBaJ2j7\,MNkC!E2hLd۔"-q/gZ hB"8rR+`_-uM.zFy$A`f6M٥qOV*V-kd[&Uϗ6bKjŴ;B? ǻⶳj+ט.SϼC|;>r#~u7`ZL0F~4(OP)ظ.te6=ZD[1 =qDYJ(cIIZѢ&Q\axR;|b,S5 B<7_l!ޥob36s$p[{1ޓ~4bCZ)p+M܍:R/?f }aM]b5GRa%Id&;Tbs b/r#Ӹ a!}tPHaB_5H89 yJEGjߣAT5k2̀D @0/˰ۥo̦ vFF֙ߏIsuXI{8~fCgǤ؊'N#?:P YnM:M%n QXAeiä ?ԙE .#xT#MSKc8_g)I><3h[ĸX3yZ>7I@?9[׋sC|P+ A>ݿٞvM(RY׽a'3~#W)בKgpޫkMiut1-}A=)諸q'|Jp)| 2I1+cՎZo4o #Td-aUQL$?AHݤMIJM?<̳UB)mz3`Omv*;bzM=c).\7[[>uvVt$Q sp  7c&ʶ}ʝjv*Z翔{aTP*9e=N,wQ6A:\|Vh, %\vBX6>+- 4zͦɫ3.1 ),pOA2^\3eJ:0"菼Ŕ#?F>Z~Y:=..v42c6@&Q_TQFV%U}ܳ~w (ucn4Yϕ1 d;?yu0jn#pBeZS^ͶxCGPFH.aHnYEp*Dr1sM#bҟ+tlFLW;+(N O\#+ĿF4=DX| -xw)@! J'Bq=kP)-O63lq<䆻#{hIHb$9X4sMw!{GJ5LFv~]}G]:4՚U<d),~_6DQ.7#Eˉ_#O|W+aS;[XT7m!o>^MO !Ȫoic,5;:Y Kf̖+Mc:(]vd? nIgT\+3]F-ԾAY3 VIӲq("W,7:t'崑ɐ}p@,oD `fonLZ[=Sr5ؕm&y_rAӋ8M rv'N.S$*o*d0vm]"Ec̼ճ1unXcjӁ0pTDYwyM$^3<}]M.8[9 D/KXC^!҈# s4z]s>ƨ[}ZHXd= Xk|ݎ11/(M{ua[PH'+= Z8Ju\>;pw$֩ѣwAf$+.+Y+0_0*OzmUk$ C?ppMvMӹcmTǽ2 j\%&Erjr'OH$ۈdPbG4,ƫRs['& $y;DM{A=gfwL[^44p\YVͳz|ۗp^?B0wdAvύM[K)5]pX23\/{i)G_|5CEt#( kY@O1i,%d_)r[5~NC}rI"9exԎy7y{30)|tN0/ ݬOOܘ`;Gt(щs  "BeS,S]Wik6q v6C[u7I֤i~.YW==SBҀ<2Z26^CN!ˤ>d; hxYAuƿ۶VQ[\wS\i`J(yl-*wcTEnRY[P]QlR:af,qmV%/*g. =kNUeFSRF# ^0(-toeU_?5bKnr6gݷi Xs*"U7L/ EQicDbɚݥT>#N{Bn>G@5{). dOd.h1n%KGߓ>-]BT;eU Q+$p4Q*pPp}i>.+CfbqC!x(d-ru696JӢYA I/c"?[@ .,ARdWF$w'ܬo0|w8ib[h=,C m5 {{i {QCaJcFz5_q `+,"d4:S1k9,B"Fͺ/_%kP;]rD[xcq4 QAUѨ@Vd lR5bN%Y d{#oL8sOcCey1SsU7_3bre\iżY+ZT^<0m\p;L=M|Cw. 6N p~BL :aiuogxpyS~yI="%YMtT;0/ FiWT޾lI<F>Q~U.qj:?Mj1`8J9(ӭ.f|'Bèm;}$3Dmnezm0͠~nVyޝ)o$8ZBCʧJ/~QBLLy] 4m<0uU ]n<U-HuVYI ,^; ^xŀPdt]mՊt@;q%/BgO|:j`inrGPYz} *B#vWK>@Tf;2|t\› :/ b%n$`Dmb:sdմdZ҆$ 5` Bˢl3+F(-1Bް#-Q9@0i *[ & Kฅ믽X:$KM૛_SrRma m~U x4xEƹ$tq˶F?i> Б/b<)usS&sΙؗ~tSfLO ٙWt[_xgBŪlgu #EDDk(իTLؽřR*zv!.+໵02찬u<7xLI1*=s'U[>Ueצ٘ K:kH=k wɦR3 4lPT ~I6dkWY,M;'v;d|ihy1Tm03c@oUCmLOϓ5n-UG-U)`/"3ؖ`QD-F |>ټN35n/2ų\Nqh#b~? CITZkx@j71l[ |sR(-&3e#x;²=D_ ܪS2lQm!B,8ƥLn0_%=E3P 21CebLoD%Vg.pF ujF;LLՂi qՃ@PNH3z<`zT(~55VLЇm* ^X;?AMgZM,D-O-eD,=4gkq͈r114ޕtyZU:qޗDܧc ؟["=}ih=xzV<Sd ۵;`fȼP&GOѳu~^.l?KXI˱ng/HO^6[AmKTS> +]!>ؿ4 H:2ݕ 0ڋ  E8 YOT%G'śƏjٽSKQJ{Jy 7LzsGWExu؞4K8Iᜳd zIw1K8Nqӊ|#X:"ѾZnj: ƿ10_G /o΀8\H+KqLẄzvjTB!kA4qfű2Ec!Px w nwU/@M]O*FʈϵbzzNr$GyW":ؔWi6Z yNc%j42@)Xњ]A 1cnftP l$: aI6IW]g|+~V~->Pc,Az(%&7e.X%QOXnU_f4=92 %g&+kFQM@ewӑJ e_L @Ow35#<cےs'%>'3'=kfe`E%1NpRII $$&^Gxqe3-;"t{(+q-/~&Ѵ1K:<15Kӹ_1Kqkk%1w.(( N=&[3PL9|qU~ )ڧZ[*˳HK/lc7^EUu{|9w[xV&NӉPMYl$8l-ϛFhBVAR͘;6F%`euJ=|9s x1YU{[NŅ^fM ߖ$́T'sC<54"h>_~ґ+̑@؁6w3O#}e$ǟ@̈́V.T[8ZGxX@9jGKOkauitDi_q3n9 bd[V7>piZj)^hm/GtL pU~8b=CZԏ.H7Ge6d_.7ޣ~5R˥] Ø^,wWm<LtW(Equ#qжDM|TBzV4K ]udsl\tl0['ora綇|SչO5 ^e9d+> 8UpaxFzVBko+gD^ˈxo {\(' oݶM|k˾~b\i36Q"#C|kfn_.Dt8l5dWi :换l0@Vq^{<IyfdՓ聸 ɴ%TJ\Gu%\|I>Q.\\.nh_곅@UaК{Z.^\‰.5>[dլT^A<y,%pop64bi:vld\Qez+Rb/>ML:|[ֲ?v E7={>69W !@>\8.hB+՗E}dQ@,u/ e3%CN g຤Y"])\DnH:w.0HJȈs;P+ VM!fN߼37Ila]ԩkc/(AS̺<-@Ә#|^\F tb韹E*kE5"T:c[Yt\θ4jJ qHU6v/~i10xk Aed-,?WrU2#!= l':'\Q۱( R>`JZɟD|DƇ|ś^75uN׏~Hf.5TNQ~cK~25q4fݥ4s gX(:11!mN$Ai6;t`oH{QӨBj DzO?-;Se>])`w&a@(Bז(zY *k0qs[j{ofp>GC) dt5o(6VKM 8;Ƶ`]VxƑe$>˪`IeW8FII4;!?{:e.Q@ekn+CH ?|F-kD Z%Y^CFZʢ4u=^|"J 9#fjҖ=kH"7q1>An˹.._b34R:BMpe5( q8Ћ yӘՋt=֌̄D@ Ca}~SZ͛K8<- so8efAȐ^\'#P_-skN3gc-_Љ/~}TM"zaq;w#4^ףc=-.#uқ52LrA' >a%{΋߀} *o톸*4+>ֻʛDRab2<;NsI(TR/;ɬMBOd Ybv]]?+PQtq)̅T/;x)&M~ ?hܝV]Ǜ4 [n#wJ%$ ]9_FL xb"'9En@G l?΋$̐|RpmKzVy?vp2b_,Fڑ^p^B*:L9dzm1d L},lz*IwZi<$w<ϬT Y7 iβ HH%RE2R -O}9IpwS]MR¥.[!%ӥZ)`# d>Sc6iu?N1?NjKUɼW9[XX jB{| 4p]k.oojBq҉Q\Þ-2W:pCA[*>=xl/r\ "P{'03zl3 NތmV.['L[!Y1i4H.x M0^\άDzpi{3T< "Dc^xjJ]38&<ݧw-O _zZnb$Ǘ263ɘ4Qʝ Zݼ}amш8۝4+ҏ9 TPSsdA{Ho:e(ex{VM?!5/o{0/;nu$YU&k.@q}˚>~+r*y6۝J2/_nR1mK8' @|sդjj̵rTM;cl遊͍, TxbXc!JT̕$6&4|3|ߔ(b![5Ty4˄8wn%ƽX? Ƃ϶Z%A{nh.b4!PC1N VGGI9+>513'36j#}~XG.O8f{;͏)jI4;Vt9XPcq'EE TTkDPYVg(V扡K)0(f)2ْ Ug2?rC j!zd%F(,zZG;EH/d/lUqxfkOq8nv"??_H<+-N=f̹ puLh5W@G& :l]k=06t\s痚VS_n>NPFÏ.uh[ &'ۑ5EOY 5f2߆">>8dB<2{LP (.lDhT7׵.RغʷS"-/#;vXcڽ M|_<{@ֽubeCGsJ'4lK(0A^=3Na~O`|tO 1uZ !ξzI>~[/ggECF]X4&,O:wEF-mHXO -l;\5}cDy̭C lLu䑸$M \3B[/V`5lt䎓]u`9du>@4r-E%wӞ ٍ'됢kb Ylv8$SfDh<b]Zi$7֎Żzy|#f'˽Q,CqxC"Y{i95m@!(nQ1fⰆ̕w?vb =%0FdEd 4氻N>n5մܺZu W>:;Ѭ_6Lglrd.gp$Wpj":ˉqZ(jEHAʪ檭ڝ kg[B_;I.шcz^ƥ) _ aCF']&n fƛ+9F•8or2mw*ZŢz3,9 "'g Ц1$fxW6bGLY}AlEOnڨ!_OHrAqx ߗzQ >kJ#YQ N qp=~ˊc\4<ɓ Ky-ɳ౛ZM˚ռ&hH)~/k:֝&̄m鑆&|I^;LwDcyiʌ^%eCy<#mSn3\V흊e%tm={-E TƱRB9d;wn4CENeVL^XdHh̙V)cpdB8Q!UCvWƔ㵋KN0G UxXx¨T~5oCSu7]o"m_í3ֻ5+A>E''/L)T"9 c=aBjRsrU#Ojkb^ ԁarFB(M9!rVPppgBPHc;s,^\_ԙ=>)n!גAݧ@}$CW(P3̋|ܦFl> ~(woן66ߺ:Yf%xyUaQYzp3(M<">Ύ/Eq:5G1hEB &rwC1Kol5~/eEG|)Fu h3jk5-IMAd"ތUít D5mO`3֯k›N?QR_j?W>ɎB[=R 2=Pi 6o?u0n>ԛ)c~:,]a8V% kKA s^mM$k{fNs#{(>+\UQY \:k/^ȿ 'Ճ/t]LZw4#΍WY땲>֣pewdЉ̄:.&630XSdAZʵa\,!RbҖo<;Z{[ w@W{toD[o4`Ԧv^ڮI H605a|&B!RYH lP~IpZj"JIbuPF=2x2gm:˵V>g[RC' 3ë~\fqaչihl2gq 7u(v<}{4U\l#zkCtX_LbѸgI]^L)'" k5:/rъҥ i /֕/H(P1MO x$/#!bhOA\,,3·~-kݘ=TE,x2iV]^Wk|Rhڀy׈a,9J@>ܥf?dN>̡wS{7; PCc"X[.˟[£%dHȡ4|4eI0@ֹ);245e3En)W<M .%fC̔eĹ5C*ȸ)·AG05WbBͥ= c48Kx{/}\+Rco>sI5 p݄IpV)q"(cp}<)$)6+Vי=#ldJIBgLABALRAXV7yK7[iWiϚ5ey5g,绽)]&o,\W/uI:L'u˿iw)t:krSRȻ㡰޳nNkiеG;8_^# J'u|5-a`TfAk[ծ^`ASO1ݱDFRIwWc4?M`l:V~D VrMmɣg1A7*Fs=x Q9gfYk7.zT,ܕ1'\&ܕ~婷aPC cIaU^lWsH2B[v.devBO ϟ_ad[^& =2e*W]^!E𮛲ȴ HY竜k}ʽ3I(Sdj*3J=//ٯӃKE#J[iR u:9)KBD+ )vC1E++&*2zoZJ—ES NX3K5`E:4_ۆb7?æձI Xq8ZWGCNا/!Z>A]x^O' 9`vr:ո+-Q"zJ/腎~A'Eo Oe}nҜI/1MIܢeX&y#,XV< ƞسաurjPH3~#HxUR=\ق`i ҡ+(ws.| ʘewnX JC93~˘c0f]gy:<6'UB~nb@Gt!8693i#ءO.0=Φ-jjJ}@LO39'} I:xWi2XL!=#rvlKyݴ>hdڸEXm&Yʔx7Ms>J7PޢĆܖǤNFrM-C2ڸLnIU~xG jhOCccUTr@.X^O)z'msws$and}dHPM7;/3krmYÙsZ7+G!|=_6NB?'8S'@EO L)ʝ~:#Lkú3Sx2pfFJ(byvn/H^Vc5=}[dPm!ܡeKYW㳱+\ 72(6/A+w!7p:ȧX3e;/zG՚WQ5V]:voo$}mه>.Ywol7Q}pRGgc6Zz1Ŵ$E"O}ւ?v+~S% UGVlҚ$߸V`Q㥠*zѩWK3s t8t!SC [FCK?]ū 0C:; Y]/!~:)M镶?l_i =-^2=dOp#q+Вz7@yjL&÷^* Di|cN^/XˣtN519aƺmd^1j ?VId boZIbx:%Yc`kJw0vL!AyT .jv'kPFJ`Di&"#١ Af؍#4m %(%Aƚ1|Io>.Z]$ ;yէKO4[ꥦ|cqVp#"歚P03 \Ncc:oڞ e5ͭh xS`6d +B/ ]ˌP[yߩ" .Ԋb#$H{cAn @h*Èzd4SFb&JۍYDRY{'ear;ÒV&fWWͧZ9xnN3cޠT]j|%DI+e:lixR} Φ$ŷ,'JKh(Ry |:+k\wc3={~D|'N6<)mw9ZJFK6!Fua$TeVhu%$0"M?D|߄ p3jEz8!%fpz_Yx_smL}]䞮gWEV jU^P"Gd$Gca/5M^.䦸w̡.HU}BW&@18xWHiHTl˰b(lhO`tH ܅|eNB*nqB ۹SsO@uE>D WɆk8Q3L]0bOIl%$i|ZG;CS˪W6îf,mKrT)y-;EfRL͕Bhel~J1:}|R3"eR+z{$x}ğ؅Or(t>0Kv}|0k^Bqx\Eibx͖>_V:!9޲| (nKi/m0Ö[~16߭C iJ+צNaj藾x{HqZgTt (sT3 -eՑcV ĻP"t8g`U% 9^`DLz?iŦ} u"LW;B/ȡlTwrkX U QFȞ&}^_k("<r1&W 0 T9 ;GvEK -·9 H6{zvEYhVzg7*= {ִ7Ũ`;y{=*O׽DC$삄bKكCsˀh'1b! T;#fYk17b,[_"99^2]P[ ZRӯ+A_Ȟ0PE+9 n(C!}o6tT.| UB}OZ[}`_, ga5f_v9G!P43_}QSl.-ڭJ)p|4:Am +884Ky᯽ꂸ<dZuVۜ{I3,˜N)"ͳz֊mEP4ܤO W}f ,b!Xt#ܵO&:ZQu:bBϨLVu}v5nHjUl*ǁYVm< C9RYdn&S?J, V!قftwtiO^"v5^" K>3]'?T`bl`A{u.7~r'l &$c~eq*G;F$42Ej'ES;L.QVF>0uI 6_{NɷV(Ff, Y|zuT*ٹ)WxmVYE5&m+=>$t{>mT;h3}H~G/[ 5ȖXZL7i*qO*Nw+'Kf16UDh,fA-gFroaWr|)jkF^F{B.[m++j wƵgW]0/K]0F)ZvK>` ~8˝Ղ+y`Z7:M8, Н? Y=f~*m< Hǚjb˳!}$gt@^a=@|ɇN8K={S(2+7ʯ%XAKzw *y !>>㥆~Y) =t,G#p͠7Eo8BIB}ٸlE5k%R]R1Çsml-@XGuyퟋW>Ue ]paxՊ >gOZ#}o0<7q=ɺ8h3 -ᔣX wo4NUkWaIـ!(:7ġ e/S\ٗbxX69EBaKAf'$aIT6Hy6-sv59J/ QѦ~'էf8!1;: y}+ ![i6 6b Yt]&,D5~@}pB `c&1cxMHhå7+ܓ Cw*Y[j)Ϡ-dgL]f9{2T"hTBVV"P;QE-xyCZZ;Erbg@4R 9 Eʨ:=taMkw'WcFpz11rgh/"B9$[yOoêMFLe w~x[h/@FA@ Y]!Dm([>c񕖵)G5Y=j 5RyduZ|=>U߇`F>B{{{mϘ:Xs4E6cۦD)yVk鴞J~1\]_EL-&>Y%5mծW!.0]1Og6Aca/IDP|u o[#)eK4f$O8Nicc`}ـ$@+}$QdԒi~e99MvZߵ-vO Yzq/ W-I9%c"`z:Js&]+myf sGI uf3^RWL\&Hftg hjS vO WZ9;*: <ʚpT"h!z\wcήjI]y$!49{ưeO rt7Y cA0D /̽Y:Qvч!m?9w 2%'7GPo[#[`ОXyM/Q8{y:O`m;FS5t_ TZZ慄ҰTǺLHZvʪ2jބ$TgP4`mYt:O~o=9?Rm]&܈ٓFTch9Ĵ?o:&fQRlG[QW'-^t߮dZ(ڀq!^ +pȑԡ)dR@`1::W@3eN{m¶dPCŽߪ>zhkupmK֛K~)/nStP~7ɣ07tUgwaJf&~.4fvi[GIÖÇٷvߙ|Hyfb2*&u#};[rEW ! Pn1r{6knXsg߮+_4{:n7܋.#M`X|WWگ֨'+!lKW'i^g&BC^Ls<wNCMQ d WAZ>MvP vX}<@pٚ R"wL_:Hs[|Ga̠ԉ?Tr܌vⰟdwv '؁+ n@sT~&)GdƠ&2;L|s@$o P4nHR`M}mwzt#oxj>s!qFJKL=i߬]#uY+/&MYUmrO3Fsm!'[Rxg;H ],"m]=0ىȾI@_ܲVomSс[UlP>KɌߖ£yQVN6ZQ i*;84((|;XFW+p ލ鍰"U":4e>XNw efLc>K+L: ::9{"kvtB1bID? I<$o@@*:0r;hvlOf =3d6HYEfQNsAm>!QbAi=o-b, &wd@ o:ɫ#@jjju!rR^J>`&i'_$ f^IN~`y`{o͖AV]vL^U`o!%6ÌnSVEÈ ~kC7q5픱 TQ,:ξecB A'!*vH kh_CWr\CeЁn.ȀtO=tָoOT*DUG ɫsli=_|PGI9Ǡ[eH%@e*zl_ؒM(Y`;ـCs^t#J96Xqʲ,!uig"8-$J0WtNܩ xsAK4RJ8֐Ut6OaU=k1;(hJH~Y-*6y{(;)"4pvKFui xupk:iLD<-ל Z֤xǰe;jg=v7Oٛz^`F)=':@aъzE&+!c\kJꙭ8 :Ў4ƓjiBCȰ9rV +i!p/m2?>帠CW 5㔅kcu=/ɰIgfK67w;z؄DNͶ}FӨV?ERNMJh!nuç|8#puq |2b3oaNZ&"Lb ?EI97ђ rQY]-s◞)}J- X?(N@*fv5AR`U/ ~.z* Vo$붪[FI \n7Kv4ͩXUd _r7ѾN#ep=\7BA+OTNtDngDmZp8JNRwy SgR"Va!/ _D+۰c"rZVSd*\Q9 7],Y툟" j2O=%Te@^~ oٌ)M:vr&f|(8f˔z5{m_q5t1\lhZ/+z3AO dʎ$iN"d::ju?/ bQűQS[Wpz)RTXџdebܥ4)zCi9sG@pYJM%>܏ҡ9T`CE7R#Vh7$S!%fErtxչѳ@C__Y̋oo{RV=,1 i c{mF[9q6X@oɿŦB}` U%ZǴԎT%>8ߊJƊHcL%z'Fc7 ~b&brT!57t=GR TYIBY?R-7J,{b_!\PZ!!2\+OM`_/M TE+D1zll@ӹxXb\EvoSByf7Y^3ྊn s<Վ 9lj0A$1,]9k@ϻ}}Zp~9v5n'T啲UyʹCWK $ₒ\-F68ϰfזnϠY!Նi%8u we7Q3D<_H wBڎY00_v d!^d%#ìyj8'0K5h1,!BK`nd̔R/VA(/5BW,E;jm@pVi0==N0֧SgKTN,8Vh*HJ$M,NkbH?I Hc[L9M{=RJG1quZsHS΀|ni0 ;yeS1E@]`}CMTAziB梷Wڊ O3X{ʼZZ3:pbFRΨ$-42:a}UV`ÇEڥ8]ז3fE#D ˻\BgS~vHyvαXqW ,DD'b֤E' sJ9. -"3]3T`5O ̝Dwd<[JkK@JlY鞠 F>&n)[jlَͫy^=#,d7AuF9TB P$.}*ˉgnhrŃH-"dv=%v3cԝ(8^KguAk2*Rv3剂jTyɥTO_qWG6MCM@3 Oi{Q)*&&0;m1yۧZqP01lqkw^,P\Ce1kL#UJ*G@@ W Do",M3Hm#)Qfj"Ti֐(29HpޭMwpq`K5pBmtөkwBo#+f88 mP> *j G%oRə/ `yTdp Qm9p"Vۺ;ܠ~WeX^pdwgE`4kXf\@<%abN UcgmwLuأaP!H߆Y3m]Sm)Z)E,SiJnn0_jN.JCIz0'Jbhbi&P%(Ӻ=`8Uʓu|7v*9ECMB[d}א=z{XF菽ׁh1OGx.d}j=V\w)KPqЕ @t%N ]?f_p5lg1@C35n7b. u;} uaIU\7\9%^: o`=99Tpo#ژ"wM`(8F#at" fA6o~NlI6#ϣO'ё*6' ER:lx@ldoIj^ Ż 9DӐG)GK a{S]ł1By'6Nńy^!:/9WnT'$qMr䌁TW !~v4m}WF/@4Y+)isUg+%xɯnoR7 E̋D'G<+5[#/k.D6 V/XOXN!;L]Bul«{n;׭`+Ga` /Is Y4j>qH҈ hE;+j1-#>44 /21&n\/`LKɎZoJΡrU VELB +-|"\ t'.  _q5=~sg]YAiþlo.r]72%0t_CqV/rX.)ϫG")`!m8DmhոTl/+@)Xv30L(ˍ 4t0`FrLnbJRDJka.%3©D ,{ruޥNQ-Eж({_=ݍjê)#)xc;|J[wnj^T;$ ěhv<{ FSO]ԦJS+'Z.Dn͏>'0=[agy<U*¢Q ̛Oh $pø >^*D0z%ON_+p*RZ5I;N[ 0s>T/ɼx|_i?;'x*'a [9ωwgO5wϙdr_liRܸe~Eˆ޳L؞w >pc91D h|D#gCrA3nDzktˏ=kbBa?SL)9WdzmKF "gV:"r?Fwa|31"9!mOQ[e$ vPo4L~ctiWů4j"4 hޔɠ v+V[!kS}ECYթzT~ sfPujZ%.ϮI~muiS9W8EjT(Ѳږ%!<=NDXb=`9De;5pw LqZ7=ԅ0MhB<מ|2dnUq"9i <Κ0}q,rs-z iW˒cVEgiTMr0''I!"^sXX,g AOn· |? ( ~sL"><ُ-vTn%Nmv|.N*oeFPOoW?.dhu6yjQ5"bwZs]2$n`:!HGt?av,S֖~~!qN85M)C~ =V]1k)n_~08nPC\!CU)$)r݊(<1An36Vǂfi᥌uk7 yKݟr302;4GWjBDX6@ h E9;)7<^ v\LuԾ^N+[sS,W$Yܙ0WB=1dհd"+*ʹzQ|'I= doWRX!m(i\xl{ܯ~;ktt\~ at{ 5<+Gn(6x9Յhٝ8H7\bY-H!`SBڗ[;s.{&_ʥm%T{yx[p nղw#Ů`,$:(E=66Z3ڠ {IJaeGfwյS}&jYSmCia-oOV\IIlQzP:z^s$;tW7w˚낇TT:NQBHlgz`W ?"dr:|js_גx" OM09WÅҞǚ22SSI**-J>E6` yh2ys0MħkjSD1KF[->VcoSEa_x2zt}{4UV'\Z_7v HѸI@lkQةHOfJ|ֱr*_EtC>׸R`y}$Y'=)xTvrQ bm10O><6 5 qu<)0x-6@Fvm{,=UP6-/)h] *&@SsLO}¡jǏ{)x#6Hi2ѹ\dGת&-.ǵq.-mu7/*?wdƓ0rG_ ˵"K 6G*kPvvì|N|lqHZIPP t,qSBͬyebkNI#; ~i[8w# װuW_-a膲pN` |h&BUPCZ[S!IZ@:86yUn*:]c GR#rDj+j*2ӊWY )js/On9%+gϽ-m|ߊ%\O Tą@G}F*Lo,([eX+2Qb2qiRse]eC>3wxAd~q*K`\_OS|&0"*X}QCjsi_5qtLM`cn|%#y֊`cQT;Y9)ENG;WCˁZ [BCr5H#$rIdyPxYҺl?Ȧ%XuOQ X;1_Zj $f~r@6pD 8`=&Sh YGZ )/v K b:F38?we-W3ҋ.'IìٔF&a}WYhat }DU9?Yֳb;b[I_{rEbUh%f 1>!D{}փ4c*NDc0o,d[Kn?\2 .m8=~z,ϣ0v=oI c"u[VLk'f5"CP2T]ETUBTx{0)!B (ҳiVdT I ]v}}ՉgU9~7 ;N}~22eO`@;v@=`v?2Ɵ 25_zs5"z M]٫_/! qY\(s]![r]ItLkjbZx9>L}3Q~4dNmd;Q s~ hXz{PUv$e;ʳg1Б5wj*sQi]&D§!fn >2䍇O0T<؄5$D|mE5ZʔF@t2/Q )߼8;[mnЪ5U c ro+̨,)hxK\*6q'Mbl& N5C;K427l_ B:S" 8K }FLCn&EIZ}"=3SyyB&g΁_|r#XTglʕPj7q>6 [<8̹ nq%YEZmJ]UwU>_(?a*%8nT ARFGdI3 nKD_F#9gX8UJ[3$ށ.dB: 1$W,b⨑ } Hj@tdv:!ϋ4Oʥ| M} ?^냳;w 09P&uA[{4cf%ǀc2x"Cyʆ9v8h8af9ƚ0ٳg.u#i }4!jg.  y"D[V Ek$pOZs},˫HF@O\ ֺHӁcTs*z g6 &nK䡫=lSPj)LV}'bUxl9[Z5uQ/] hnV4yb1UD +<[<1Zo8E~̴o|Jx\e_t2k̟U>2űJGqUⰓBո]]'S?YLoɾ=E}C P4z0P)M0GƔ2K u=ԏep%`*>TBӿp&-SY}I#;?06.hˑ*}rlψ@淹Sk]D43ʊ@/ mzoěYfwR?$mZ1ڬJYLjX=OpD2Fa cSU*f0>8;L*oƈ'n}5$!hqGNE. &#vV$wk_}Pb5wk*c} %ه=2W'ZtdX7F@`v4swӧ"+vSW}TYmA.yU,wMg Q9;$kGבH;Vg5Szެe[>}ŀh5u<Ҡ=uθDM_tQ$g2Z"+2c1逧rըA&1um絍&6ND Ҝh\,rI0A<~A[0 +\/~^ P5@u{NATքnᖁ鶁U_u=+9qN54FXQt)[e0?!Woopz~:y;HlKmA}Q:e637*Bk dSM+?({' 1$ƜXL׷1NA L3 y=2N Hl]D\(CnH&moij~w|)xE(!SH_+%b2u$%}wȋ^w )=::ߋ 58es:vrtXOGz]D#3)$rZ/@;K(q1u/RC!KN/hZiMCk5dcDBupq`SqDP|j]7Vo$7ثmvV6ׁݴR7eypݱ=b"Ғ&{:%#%FΊ|}`tuGk )?^1!ռ=%-^p̓-P](@ koRd+ɉsIilT~ΓzDՅ f] t{2k^mlQ>œ*1cfH9Y;#  e(,4 `_1eYrnQ8P`̉vf#oq^o'_3XV

-rjQ~- "Frl+- zP>8oiXXy .)ƵN!¦\UzQsdՔ9>JKM\[+Vb Suى)b4κ.\N~m3@Sͨ8ZiAc(=О8#O+ǩ,pNfrJ?^ CI>@e'Ryٞ.6cNnx\dLt-JZl;R#)t/C\>`4ѱiSZ9Ò%+ ?=曠<,+Ie0_gz_uB*\?gCy36+!8dMkL,QcM]oUrۥħypzdirYmT& F0h8kz}WH#b:>~ HOfZ)n8e|߇]WHBP}JY U:H,QC"Q?@_WiH%PX%Rp*hו3,Z ~ɒIE]߶&e\ :A=$r12ykxcA "e'3/"a]陌a\?US\Im 8cb4;ֵϰ]֘6H/=Ѐghi;,h1yA?+ǑGQYh62pү|a$z7`JAw䇲nj;x@yg5!Ƴl>Ya } % RES= haE~^׾|g쬖F+>NI@[w<4_3l'$>f/x0oU3x]8ހ7v #c8<5>U/_T6C]d_u OZ{yKՌ)k@<\RUGڴ{WL19" ZC.Vm,dQ՗E7_3*ev!OƬ_7Sύ rl6Vuyr=Ux?< ڌ).L||L꽙t,&_eIrwK3_4Lne`=Ia5L%3R";j캸=W ^3VF<{Mͻ."O ZSGs-2!-~]V6XPAͮ\23/2e \D˴oDVQBNN/T,܄b j4r֡=;39 :+K0Q|Zzn)<]֮@FGkVpg랬ܐ% \b5ŭAus/aJvG $(HZ\rh95˛l=83 D}q51Ffʤn[d@08Bt\G 3&d}9:{?& R[óQxO{-*kfDM{v(ϻ&@0d~\O lD &Xqk"yүLu:qH(6q RY!iEt~=2h.)Q]3<{.b/kaX݆"WmaF 7~y,fqE1H~2&,ttp9UoQ{ و7.W7#}__]/wF*ڵ `"y 'FP묧&giwPA&?jFb2Bah {i=g-7.PزR\oh^wF (M>ƒbsIe؛YbN9 /DC;rjpKXϢ" VMY{\_6\$ҵ0,dۀ`}jq]=pP4BlI'o2%ejzFpȮ=L~p[MˌDu$ ɂQ2h̲}mY%9 .3^_ݿGV!Vd-} @is%H+ kEE3aᡀ7,;|p!sۂwB7:<jHs,( p>P$RumĻI+]/CaRoQ64IFN3#BCuw׍ga>3L g)D?eztD޿"A4§H+#䐿BgkjR:D_016J ،0okcImA*jp2zM?u+ѵMH UC4(8eM#Yb#4ԴEA6}2s֪ PxXc 8X BF:5%f́BѷOKzʧm558TEǮ1pKwG.$ڻ$v]6d!-o=1fhU6^=6H _U:ڿHL'Ŕӆ!,nQOKa1|>bIsxHBVYBh[*6PM鴶kD$?+6MV /39Yw+ |O+;PbGAS@PIe$DELa LEMLWfiBM.ﻇJׁ ]+/AZmnE*$|FyfA!wU$g2AioG_ܳA> UB|K LTE3hF y9h6w)@1[Q8ewRk=?q|(nhJ4WE +IQ.ɻªf, |P2?3@ЛZU@z {ge&r '2V'x}.[Dĝy10W`w6[ԧVkphfVXsIu[(0wQlY<5$8Mt}}/J5[>DаHZӖ/7tG|;տ_ s \C,"*=B{"il;VbOV}44_‘Fp# g,#UM:MF^ٛYPtvΔa5NqeBYr;@3tGC\z3_ǜdi6RhĚ/PQ//"AȈV8T$["3t+_C2Kk\ET!4W(aMq] ǝ~/qL@,C2?OAC A9fӛY.cn:ׂ>aD8;q[ ŢwwE C,d}pZa;z@إ-8-GMb2ZL^[_g/b%n gt? ؔR;iC-"VG_Ȫ ud6}hqDaGn)mAjFad)\&q,xyYxޭS3Vx2v-}vx^ekk_ko49LۯdT7͈iz'KXM+L!, =ZAO0&ZnDus| EwQKyث9y->d3$(E9x boi n.ydOu%f*$ىQN_pB4I817ms|*8j0ǻ R9JvxyX k]ٛruY7Ks¨ٝ54Jּ%Գ%ю t~< &Wٲ? O54FҔHuoBCͷ:C!E+eL}}dA6L!52q-:66xLctYD˳JZsRjՐ$ vFtD[=1HcBڌ0 PN;Lv֮3EW *80|3flj'/ )A /b}HNQXcs lvclR`E*\gUSO<\'^&Jm1:,T7)3?4z|}ʱeB=iRB ^0uX_NeM)x5ٔ$;TJBBesb{jy!q c]Y|[2NBq(e U `z>VG7 JYY&s a;yQ6c } UKdbA+42˼ppcdlh !~vo)beL;9D0 kGtF*-N,T+".?𿣽";>VS<_A*AU&7JŭXR4'.^\Ty'Hp*QIsl%XFAa=/}=U.^UJ .A)47~H3R믥yuc} TjY]ebAq \j-éJ2~/DV`ubDA wBO78G\@Qz:HYbcbv @v`^*W$hmx7թo u/uWE?7lޠ+W(tv`NO(RƸG9mBeq|Ϊ={Q'YIf[u`<72x2ĵǕk8D&D "\,m/.Gԃmq&J.; ѥ mOc¹{m4"֪|i˝3>q1{8UQ K \1- H de叠]o% t5x=DaGz 59Z/BH-Kc,v!@Ճ5:~jؼv'@E%1^Q5'cKk`{hcӵD^_Vw[&չ/$Mu#B;% DŽt׋5SDk.DGoe`ii3Gyle*U861f͗(p/mAbМ@`pp/jϴ t!]Jv`o~d񐯹P4VTx\I>aǥ|&_W˅T؂IKv'-DdkPF{s^,Nڜ"Ty߻g᫪oN-LM7baqHUѧq] "~У IW@su&UgȆf=@x|?]kJpL ?j<ґ a8ݾ"k^$0>E+l7LDPK|os pN筻|hg]SA{{p;l}쾌Z#S-R#N|8cAjNpղ"ݏ}U[^uNz8|*RnBV$#&albB[Xl3S|E'ё`x)G e< UwbFt~HيoRyB^ Ospf槡XD+4fTOLfEF`?v._9zBWs*&ԏ S\Ƒ墧84Z03D<ˋr.3\SS]WiFl47n(RLfmp*Lq\ҷp#^"Mכ B )wYh?(S@C"R2eSv .nI "!r霯*8-uY EAmq0 nM% j˩D,ГY֮&}vÝVv4+qI,DC EǨ;IMI9Aqe"c#`WѠV"lE$UNvV צ`Ve864T~9RވMu))bR˧a<dUٯ&/`:Jx3ؼ6reg[H2bڞSrҲ1D'Q3 9e6b2cj0tϹL/V _xBң ͂-0)UE>LJ܄g| O7PZ2ڄnN7&KvyQ;0Qh:QħZ/kKƱ1xgk.=pUB  F2j}p-;H*}fԛ&KЌS<="'C20Qӛ}Eo!t$>wŦwϱRaV&Y):&ˢz)if3:Kh;8M}R7u\q^#+(u=]'QOb_NGt?];sGYPіވ>(yѣJrԣ)OVfCx:N[(*F;X I'ƒ8+ W̎ cuݯpvP5T5ʷ @4ʍ ̙b*E_JSU_f^(*}?בtdg{: 6St4U?"xǐf,lf?Z+ 64R黓晣_"k WE^%Z_꽑@ ϯ~DpD"Y5AgWvXLB;B4SOQڍe읃613| OLZ7J/< \jyb$ xQ- uRF2[U_rtSUps/V6~pA`"($<ѡª}7S%$t/Ͱ9y$~9)[ SC]#Nה.~2T! hIMf3&5Tgk˴ߓծ&0>Gp5Bp,-j[gMmĻ&yqkMQ1[ĝf`o ;kYl_EeML2; ƂK;P]zd̼'/Y{S9jݵ̚}׮Hq3\6E ˡAjUUPsڽ srxj9qD{Z}9JZK~tI>v>+H!Ȫ3'ADxf$X 2/rEo-\F[s$O?s&ԩC<7#ҳ7$rcy<أ{N`UMež2c`OjvW$1./xE2_Wy3Qz^[ݶer}|$|J=cٖQ:^# )_9Hg+պyt+W}~]l?MĪpgVVԥtáؗ>Quٺtx"{M:„-K٤= %KRYq=}7~FN]sc+Eo@5/s{iu,\GAToQL؃pmWBSJi[^aĐbMU`sKeS|I8QPJ˘7DpS\Mg(0Ug03B%PnNVWQOjEԛI u~f筊͌ޞcH^n+P'~aB'>BܚC]Z#V2=\|g( 1D!d(>OW~90FCs]qf'nIb.'$F y̼ص>;K!W,\"g ~ EMtځ:[Y:FU8W98M9FȢY.CUZTh-X=uBQV_! 2حآqkTdlh=L7:iºƒb4^Y"29ȁыF|whG~hӹƺ'{s'&%{f Ep?e1=4T-2ψD[G K-+'*d8zvC:20?-eszW>3vߚCUcgX(f^>C]\e gJ;㧡/Jā1L=Dx,VAJd2,.:ۨv-.*IZ|BB(һ8^ h#W8&S֕-ݔ~$b"}g(7G@%oE"ЀwIhψcTJvIQ5ŬNnO n&O+E'fGۈʲZj(Tbsjd9Eھ̿s;IQX|!F墜]w;}dKp<% Vp1 E2Ӎ.vM ;ۏY&ґ7`bj4&r0Ʈ+J]%_4@+Iͣ#&gG=0AͮV=(cya? VSO]y^A3Hja>h_#~9_D-^mLw1ZZ'U2ҖVq\ػފj\(1~UT58២\˗:3jO-(D=X0y,0ty\أ+GXui|r8@:abT8A5 2%IHZDV2ze)mytKr,!7w0FiTWɱzcQ6 )/&>TS{iN[~ t Gp۹D :j(É!])<)>h3S{Wkt҅9AdsJ`0P=MR0su"-_ӯIQ:T3TyxUAKmքT+*4`|[n+sDU_5t'ү}P\2*X[q AAW! QX! ىmx/Sdv+`J3P_l8un/+`Nc_%Hyߌ4$$h8IRJl{]*GCYn-UjA" ~ +:sU. hp_%JEqc+:8â0&*pT)Ljr:$§N\֧SdM:h /쟿ycQB$#)oW`Oe=Xgp2dZـ<|aSg\p `,\ mN}R 8ybU3>&հ8@s΅O=?؏=قqKżgy1Aݣ<{%%=ԞEya+*aDGZ2}]ֵ A!gK;6[3%Im2P1+Jƨɉ2[X9Rm=j5JgدLy XZDe2M`0iIvǼR $:z1Rb@_2H<6 Q쒃XϖҐ a"(b*2[Zg*[$5iT:,OyM'g:5eE3yTrVni0Y!5-? Ѧy4}R5zS)V^}gcӗ@{Xq`іߌ yme?">RLYkhFVł_PmigMc5p0/(*ouⷒۼ9'[+v3LԒœ"j)NG7!"6eM.j|7}7ANQd rbk5Qe+ R-B7ٳ$<}UoT|(kObN,XSw5 ~IIL5 `)sgb[{.W@f޽7$C㎌iIgT< |}xz58̋xvQO@OF<>B+e:LmXXs'bd,mkC +CMG"h"95e uMzc%rBxOl?x_vm_*% Ԃ~3'^Nq=ō2ꝫ<qPWǩ؃ݝ(“͊tt{JW%#( J{1*w{VHI;b?-{\|),Nd t yS 1X2'u[sD̷gYO%NҐ (N)[Ҭ'ipoW)v3Kޓv>[10霳)sqh*Ǹha@ȶuVɴt&6*'o׽?#?jvve 75úmhglu2};"b}C30ӯ߂4FJsY YprgNX "z^8XORD ڎE!]!g&ný8umqm{j_r}S* zQP/[ɡ:qpQ֣ Tpk>{֞tّ6m%{)=z`>r#Fp0r~J49Ob2~|1VF0Ǚ!7#0S]U{5O^O"fyZ8`͟)0 XE|pAӲtPc)'L%(w_g;|dZ}ϡ0i.X/)H+*L"{|HU4YHe4=aîi2.eeӜ6zp0A>TFjն32vq1=xt6b[9rL1yk`9 +W@t &V}VUigC^ct,IyC#]P\:dCaK5eZ{Ą5re hOӻF0mJT<2j>& ´җT[zH/Ju`/I`E^ c{467ҟ7Ò)b}铫9΁5, jp,nJOzA+9O}˅#Uw >A !q *0%ɳI@.fy.ǹozJEІwścDT7>Kx8):22D|d1|Rx-[5=mXJ@\TL4MꑘJw1]s6rRGQh ;" P\(auaBΚcJj\JA|"ܺ rE25nXےkNˆg^T_uf̬3z"RT=;B! Z{ ikJ3Q)ۘ=֟DW;ـwoZ}s%4ꦀm1u>!`|*+H[RЈPagK@4 /;p7p!kU UO1,v;e<Ɯs-=]roh̭_:LtY/اz⒱ :4wuMl>36#?f[(Ȁs8[rF2TP$0iRǣ-ME~>T h4|7\X<Ȝ:1_.M:jX~+ YZe_{'G-SԾنM?[b!>_2%ULVQwhk&VHy:[><  @&a4q=bAL"ǑR2و&='Es_] Uw0Q#gOFذDruuH9oK/-U~gFisMVx+ X7?ع`aԆ+Ɉڞ&bB {Q|?uiX:r*91}/FM7(oJ>^;7zSyܦ¤/׳6pr1+uїM SXp#"c!%qڏcϠ0۲? B=VQ=8|ώ=(X_-yVc>=߾؍\vk)^ya7I4N,ҊI-V67I[fʘDS,+R"{yEK JڃD5eFؕR?B<G@dҒ幆C00ۼRLh!YEҰ9}$(ĖOaHGS1uiccзc9/E'JC5,&v+ivu]-vMi!@yE  nRM"1&;-830V*VB!Zj,1`CdE$dg.ƲNM{)f-[m5 >ڪKi/m9 &] f [4*8jpD{g N-F>DH}SB# KtA#}z.=aF͓_.sONub+B= IO`|?c`E@>*ZTkQ{K ^a40ЦK }ⶆTîwLyu7S}O \<_7P[ ȏ3ιW=hۘVk6zRY;`Fk4<܌{ͫ}'s`|FƎMA簛uO`Yr8?=I*pvҞ6Idn*r_cJ[Ni88{Lұ1r% <˜}do8C$(ZR7_ύֿU1l ȀE?C>sF_K\GZ>[N;ʱɮkVS,M^YV #lI@ ,#-i\KSdL$A'5Vp07)]9K1J5-;1IbK<{#}]mw1Dcdg@mi0]ul |]C-[_\ftCnvI=SF:vc KL;k%O̔nwԩ#Ae)LF پDBs32(`t#3h뙫Yٻ%}ff'UB*E4 ۄTϐwkY]rcg]!24p$CSѿƲz΀:SV' mIN ƥc( |ڞVI!h{1sppLoii&9JV3v0FpܾY`w>71~z2l#fj4C*8:Lj@D!ݨҡ B+)/(ر#M'[PN9f2܍I 4(+y^xd(3O7!Q ~Oٻzpv{Ņ3ſDs>s렙質.q"ArW. OR i"yYcHP ZvoN("#ƀM mgd$GY[n0l3OO<;Nv8i"IX/AnzmhTUBkuSWu{}4\AGjGҳvy° )K_%K֗џj'ঈ V␣ $3 n;YgZ?XOgZYIZ;\64vS(EZOy Q-CDExu"f|2 ̈AΒh%է2-®.\=?V[^gܷ0k]%R_*xVAUf1۱i0C[^RWdXtZeʓ)3\Ң: $˥pD[f(8/s72] ZX(`zBE+pr>DWz ywјN͎bL2 1SWmqvQ$5 ȆxSRM%-Qը`ki9:`{,^*ذ˸#Ϥ/ǥx]٠& |9cˆ`UIN)6]Է:%3p&*| '=RHtifP~К< .ZN(<7() `\.Rȋ{w=.bv ycȭ2B2<}?GvmdSE<ʔ[4_}1mfuLR1U9%3d-e*˂>y[ ᙔi*7Ѱ HW.Bl8K`j)IuW3YOOwoX6*OqkΘľ>W/ ;S(" |_L8C 6ފ琫TLvKIɄi%ylP>9q/宰Md`Q{] 'oٍuO#r%sK;NysQa@u{Ocy[2taeT޸owP* [*eB{CY>;3{8%giRw8VhU]毛2gDέ ԀrU;^Σ#3Rk@ɪ[7Ml%r$N֡mzz7^I\ Bf+(rs/:T?ʂ owW|31j9/*$LȐep|{z~SLZ$~yupR }$(nW.̡fS#]܉+4m S3#`đ.w[C_z"=r4QejLDpqI7m<~Qkl(V(Ezև"DؕGE3, 7+C| |v6;4uO* 9 Z'7e*y_4/ͅgFbn;o-PvY]Qzh5iS `x> cʈ!+fQ{g&[rL7^I=Q' rΛ ɣz6D7![_'~5ü1@D(޿jXAC*`$Ý+lq #fp!e%k3@YUJ0p]gͧxYOoa^.qwIㇽ  n"4U>Y$2"d{(*ס,8)-/,;{+edu}+Шk^~@(?c9z\wЧ_tGa)IUiUl"zu ]sj%?Z{ 8w5ĕWuu3޹ Q^3],TSM uRDyI'#e]3CކQArѲ?iv)c'lɯPR+I[NO:K"auo,Z Iڶk ns tV57A((> 7/rh8 Es9 Ɖ^H}B&lK:{cY9~P∡Mg} wyȜ#r({)peVKڠL~5^_ X4|~V(xz9h%t fBXơA̅ a2nD<8wZ#cOt^bfBeih*ʮY5RK:$(:*p̐"†u2 Xh©F"ӄk)Q$گώuOMP3ՀC8~4屭Sq$WihAVso*`ձ!𒱶F,s Ilq0frW2ޓIAo*9wðl +1ח9X9.m7FXHC)1|Ip* "G67YߦԠ#zm]šQ9U֖JI3\iZ=^|:OpG~0`<+p'ioV8CJX(DloEY }WgyH\&"z֋UI"vP}&rN$݂CWo{x*t'3: Y[Nd8_LDLaOH Co&r\\ ވ%ȑlA_8WN @u!n52@HNJ'bMR(pibAtwE*gRVu%4'rp]NOqP!#j]W'}0UP\> 4 [JK|,-9}=Y̹ 3A^;K& g-}j,֙y΄=|Vhʚ B7c- Je0zU>ݏV5+ ㍈#:wFCS:B{`a:iUnܿz֓me38 ҝލ'vc@`Xb!oojX{ZNr.^+8,x1ᖱ)t!_\G?UP޿%'[N` ʋ0;^Z|V'I?&Gi[ !b`X䔔DRYy뭁Ye~J:}"JOr,q;}u@pdh k/w)ʛN$I9^exw6>O)D{|hV[$ vz=ũ(,6rKr )b0Q^7dzLtcmŪ ] ~ZG>ur & !hQ2j&^]Մ-h _`Imw;+kn䶪 n6@eH#iljK :QkrS}KB`!Wtv jWDc'kxh:KݴTYSkDZYf ga44^YD;C<ކ ~ Z=),P:yK#mU,:OmO7;>B#=_tkhтґYa_O0Fn jbE_QŚ&֝Rf $ȑ"Bn7Cbvnd=럳$./# eyԱUW_.?̰٩Lj5BGeV;9n.5F)0 >T+ce&9+nS5cp@윿1CCNaqʚ{C)RiWJhmPo.>i簭7KmҗRUf UɀT ${s`/}WºEg@,dBO,+`izZ)NG\Hj]%liW䈔9S5C}z°dV<8k[Z4q)4Oi<˂:YtrXM"ӤN6#9[j;q]dgvta;8p+mH\3|xPoM0<Om$yrn{,Ks^xN玩d6[UK;Q&gYw'i?❩r}J= ]F@{cfGT)A_s cZt,ر{+IbЮ!%fK"[ :Py*?rꢧ:9 ru| mgroIcخ:7(_(1zccivyTo}/κ=iu7xW-xv*jH RRy&$Y`*U2 WDLj\8K"CA#2;_st's(ƍ+:3K2_,F;{l: p[e'T#zXQJѾ52ƑmPqι5Hwjf$>ª%N>=2fTl-s2U _N<1p oDg'w2i96\dӪcrKHk'8ءJdU  o"WmvCH-@wSyuɩ* 7w:pB#(oBM 5pQ{ b?E?sô"_}! ĺKvvCћRHN)-i[oά`&n6ttxQ`n#a X"iH;x]\ens]q.k.J;ڵ_٘%do®\:>-}G.^=(c xy#\I.qmjR)XK&'.m+,(5Վ*I1O7;;T[7N8WuLLWmT7.i{@ʖt֓_ 0mb~3 1ݏg5u)IDIk I6ƍw9-'WnJzcM?RX}3A(E{}Ux _Fg'.QJ&(JJ].O;o,]3IykQx.E6o'?i4 ;g>ϧsx_ 🆌J' G5P4&IIe B̃1{kjbs HkQD8,@_1b=2-|*¨ry aeRg<8@M _ON{5 xtiΏ850b!6|U2~$ @,h}$5l,̦8k݌{+R% >‹UUx,(=c ]<",m?11$ܳ񓥯3Y„oȈVȝjK76B/oW?mHP(֭[Jjْn0@,LtFW:$M3Ҕh'6^AYLƺЍ\ G>i z ӆ~!ؑ*2ヘQYpI:,G Y ZZ y+Љ>AmdNxe rש8}փB P_HOL ɄWڈ[d|Wf.b!o #3's8+EFJa,`Ŋ]%V8UЯ:&.;#8jm⧿}"n8@@zż9A8bMACK F,ɧ\Sa7זRWAKjl_MDӍb JaRqsw=aHn:KCDZ>+cP!hǖ{ L``RhC}#7uu5|^ 9D yEEy!2h@4<0 ƈ1ce<4EAДO9E/Y1y9<丣M 3}kCzOG Z0C 1׸utztŎ5UA"~`k4mZw ̃nkÑ) ג~mzHﰕ$Ggvb[EfV^F|E7EE1O<]A1- WtYIĄ@^oVJ:qKQЩu o4UF>%y2\8!]p}oeەZrؖY0XQjl{[ yRg#3$ds+6BW\BCP)͎U?(_W PEE6XK63ޓ:GқI8R? "O 5M@V+uMyTBmnCl[LMaX`Z=7\ [ԩ\t/y>J?@n^N\%@Znwyݎo1 =pH 9T`@*#Hmjn~w'jR2{h2\U)&I-uڌ*,q2G u#3EHk)[Ҕ긤[dk~⹊9n!A3Q0Ø}r3<0 !48y8msZn`T1ݏ^/=q3:uh& ozG"MR1xѶdJnX&)h%^GA=T!zrNZ]U&Z*>vld izpAlä(g%@BO-U"D7ܣ!Q,G+*G#:̪n6""K={D%fړg3Gu;"k4G8etu}|y:_<ߛ<]Wo?7@C?M֋)G*{u$YNݚx^JO+pE0D+O'+Ba+er6{+O"GCb# aQiv)9dw 03[xjG%彜NIZ,ѽ.j}:i9k6 [bI&!>->j,?2E3kMB|EAy81_pt36ڨ d ]sleyٷw-̫z|lj$9bJJwt>jSv2 UO+͐ UJw{0zF"}S5 gs#x %ky;t.GJ)}&O6+R6CDҿ9ד;^ZNnOyhH&Q1BfgDI-2Pu<+]` Gg3& r 4duiPF۽c= ;/Cp-d@tr6xGΣC532OO7"}ry.\Ip]z &n2YǼfÞ獇RԸBI{G׏#({iTҘ$S[Ԃ4_*IȢ)ϴfKAĐU\\W{gFHF^{Șr|uvWxh{HmhfeF@A+P EEi?\BZ#vÍciuvm] Ǎm-J`,x)6@ }[v~0lm9:V~4o"tH p t@0 Z̏Z*ĕ>u DTMIvJc֋ }v$~cEd@xl}`:ǰ$8kd)Л D8Vn&xo_R|N %9-1ÁYq[hP^@/b  J>~o-uעSyࠃ")żHVM|9]-ܴ }ȎaH89_6v@%㣒Q}dr]כo:qmh4}ww]~,U8&W$&s*H@RsUd(v^f4=73QdjʾF? ^໛ZVa5/At4}ɢQ7<x]!].h/c~he.g=c4 hu1|E͠y,ϟ[:c'JJ )ߠj,sGTHe6%],BxjXX`"2ɱA p^m"t RHP 5 +uʤ a]kIAk<4ãØ)s~i!i6:8 ,!,R`4Ѳ a" 9#2ngA.v 穝r?۳C墨6Ofu'gKն e MT)R'n&vSACx~Q!йkۉI[`|6 #*Sáuu{ cA!Vͅhgtq[j m7 zi5j"#JRo vɯK,\mh]1&aD;aF+2 ۼfjg"u&gTi6 Ӻ3x[`:H}]necO}VCqו(~ӡYUJD\{^g}ʅ㍅!Eu1WoBX#_5cmg`kR~IJ,߃>8+6 ,|+($Z*BxndH2w#濢lEaAB&ضO8?>U٢{UX ~,;7Ҝlϳ@oq]"(0w& .Uv$Ye*w2s̬儊`lJ>( f Vi]4)Cs "u*ռtS^ A)lg)ek$D]h+#  ʍ&qMƉTCrt&O]s| z r0O&,~Nr*n Aǁ^`S鯽eq0g] djvvS' ɢP@r-J 9ߘvƷګ˖=5Ч.XML^KVd׳&\.(ʃ?G#_G+IHWƦKx$1ZV 1(Us_1RvE!y)YvguIfǑ힖挨# L 8$Bٛ[0TϮ;W7,gƨy $$]h&7 fOD a#Q#H.K''jD˺(2*\cd6d &=PvNm (58 T_:?Er6ۿIer>Xoj &h`0,+eŪ^03È&`vjRB34 _34򺻄!# 镹KjrX[ꔞ2g1\Lc}n'3ha c\#-pqQ% Th}b%E O^ m|Yҁ\#,9sAٷ"Parc!,0%*Cn9Dߊ(fn#ʢ"BŒ<+PI:Gh6PVU()9>3ۡS 0^e݅2ybPeicOҋl}SB {vm`|9 f&l0gva^F{[V= 8b 0@4]vg{%L J b9+$?JkP \&E.F rb,9ZƟ`n.o'ޔ(Ws2%7/'hm5u,Jal{ckm^(X%P.DsY |[O:ᠴ' RZܥFN ,} A~ {;r1C ;\Z?!(v Ly Dn5A:m !'Ѯ7Uؗ4=y*k ֫5e2:cf|EK}p3Agy?D+Ak9j[MV7PCէh%U #%XkV++W LcXzZ14Vy8 tƭ9x M#;َzy(._<]:aYTTx < rHx`N-23-~n|7(6 ENS=j•*TF}whBG1 J r_Y.Bdo0.ea 3`}(7VYBIKJ/) :.tyx %Uyxj2=ysJ33r%r쵡VfC_|ϱG<8\D?IaOQaD; _Vl j3k1/RlQ5WN#ӋX {ḱccor_dK@ndWP\qo+lFS]r3?na>"[r4%E4̷]wPYɶ `Ӿ>[,|EjPٗWǛKS0}aޱ- EZJv;Eg_-"-]Z5x!Q/X?n ww`!vA4: 5Z>ރ#1qTc~MVvڟr%QNGTK ~/[9& <$\G n(cāiK^$p`gs%eNfC$=&+ŖKb#LEMNs(@!SZQ~ ;YpV5)(tMӖLk>qB|~aPw7qڐ90WWC_S},b򫄒Ba@kgS@H̑9Y/rDiӛ)1u3YtSaQ\r%6bQf :yJI٣Jž>=e^B񁸧g@JVWgGJ>B2uEPןD#AE4{gVF-C&zΉMl꣈3QCBVnN.kbG0=څ 'ȦI!4=vF_KĚM Z FZ ^MjQ'G8 >nRgo'6`'˰198mS.{U2` ';lկsuZC#fȷJx;FPZ+G?m?:~Z;bfV[w#z!pbMB=- p \e:Pb7fA}vdݺϦ>cBH:jMa}Y{n?P ~|b;horCgJڂ~"-*`}*%O,OAT)Ŀ  lhWYW9h`3͓\d5Ms}1uR;8[Ddzb,)wN>c ~^ccaە@}o,J0(lv}Pj2N rmJ:/dO :Ps]H[q whڶz ƃRV( {1eu;bȸDi]S7ДJ ]L9,^NOHL5>/%GSA/y$WeρJ[]ARU.-7 ~iobBݯ?"h r0cӭ`n.^А(!t,l6Vh/ |q75sI4wTn} ŨQ`EFFg԰<V[y+T,;>Ӯb<:gP2cXhg=h.>^!Hɧ#x84meƓtՁ|Z$i T /RT%ӛ=+6)/IĴg, d<,vDn?[մ|[F"}!ANrc؀^VRxA9mUyW&E ߗ_PYl@lXWrt?+R^NqkzMGx9= HpՒQR'~[ z˵7t-^~иk.$ ~+Slt=}λxٵ/-I@z`ɌS02'xc'W㕮@ѺqqBx3 4ӧ(㇍{ ?H}8)@hJk} ] [j~B ܵ4U`E]{] v&XZu(y7q*M>]@]E_).9S6J:fƆ"`)Uo0r6.5莘˜%Jjܵde]`9~Y5F+#]ueS$Bx>)v3%4SYk#r "{;.@sג4a2hUΆXԀr%΋e5PH)0"HxTrkv@,Lօ%y;ҦxFe"_[ui<;} UoCBu湼8rכx%Ȏ (Tن%cdIhЛ~btn/-?;JRۿiX >;*pATʖFM rI9%NH'}uW.932E؆/;7'_+3Em On8CGbF~0BrLMێԋN@ |k$Fl(2)M_D i Dg86فW~I)VycJ䙜fgӯ#6EqJmBY&bvyLLHWU6tzn>2?"q W0 3:lp)ԩALMXl_ZO@ /c$OƟ=wjirdMH%=t߶:j&Gʌ 8y\MH~'^c]qzG̴!n7ܴ@CCC"6>>"Nye;ǽ[awg~~QIݕCg^Ȟ-xrwz痋IHBsCу\"~Y|ǭA۴7kFʲ; (K`+ [ $Ǥ`@*H2@BvCo}瀼! 2}rA"4jmb[֡<>:PIz$ps>y zv8mn@;[%[ v`4X Ƚ2t4'ߩ4f?ݨG_qpJ'}Y֌p~=cz,0YX"n([d %btˁ'}ru)WWVj{$2/ߘ{7yE7|&d&iA -m<'YKBQ]ڽkfaUXg%' th S<棏9ZYE6Jaz%0Ԙh){m"t A=DZ ZW;thӂ#HkN.Z)!&u_ qhn9&vBSH Hhl݊8b.n:؉sm'pk)ep1sqLb,hջLcX"+L8Cm܈0e Nэ8-9OAŚF.$䢺|t 0iÝ,Y_i5w| sqYSF 0Qg,a 3 HMqZ.=UX2[ēKj{m󵇾Ԫ9n^H!b|\Cơt˨;hGIe&P !nomrNNV"K0Crcg5le3NAEkߗf15X\YO\p*k1@@VWAi#$q4E}߶\1g5+4wp+,7ujFF{ oOw^B1~nYR%;+궀 C[3 J^ K~ !BbMd㝨2T8~u^^)f !28ߎbt`QUSqM}~\ϕ/>Ӄzh!bkN$滂x@ f 5?h1p󑁨8RISH(=Da1m ׅk`]1M m >!UR>2'BdpF wKz^d(r\9k"iPG;޴rҔfϓ(zoTڨd Y>LE!N*/4X]1@P8gD_ƭ}/xf0 SR^R]f ,yH "q+Q# >Ĉ ERWsXT!56£ʏ[}LVpZq"@V͊!Lh'& X4vL\)dNoį zU]LPܣؓDu#!۰_?+"{>}^ 'ȴ JBm*"\-yOB,H&@ozlJ&s6r%Rd^1Qʴs} :[yerZb{]n!y@Ƅ$SPMjPy8oHBKh-ю1}pCz}i@gb\;3:DHDct{?*FC av~/j wᛯ{Dj :2vdވ̔&q4.u!^ 83>x 8B3D}p,7w+R[p\_dQ-ut(6"Og&!?j^LF:rZyCy\`z%2i)eODͩo4;F:qAWoj.NsJd92 U |L5yT7S"|G]GOZUwBkdT a0|0[;(-a腛&M - <?[8N"zma,~e&*%35G r۽Yu$a[ϵ0#+:I=ኍ6c/`gJgmS̋JMHdKRderqnur1rlM)qX9$G˲l<~Qjרf$9<hbAHS5ZRѾ'Q AJLdxQ>V֬'H9| 0#E(gi$ߦ,I9((Vi&gCυdٷu5IN\g91B!8Dآ eiř! x_Z#X/89: q $+Gf~;,^ZFmpAtb xZ¢76? L2a4d g#f~ˉ:kKf)OQ:,#*IA+Xӂ0 1 x (p X9X ܧb0_DWnĮMŽQFYU +[)W*΅MD|Ǒ*YW!O^:\J&(R(|vaCC;[ @SgI*;-LtM}|?|H*. ѥ6 e/eHzW=>ʙ^+ZcbO4N`$~dv:dFQi=_ŶL0LWנ81+? y1-I|Xv\\B9,ˏGvwxy^7)V%=FNpG< \s6|I˝z(xz1yc|&`'vjrK,W\^5R~Lϟ:~hF9q@TYd[M+.sBEEiHΚjT'8-עYWӮ2<:_'EwDo~] 3:i //DvMԭFEX|*1ZփUA3S_|o`cyzãP Yc8^&"lnEm ^dJf3 r' ~|L-&~[:ȩ㑨UaI[<<,)HW|b1a+<ڦ,pon#[U}23^54"E/M">2rwN䍻tk_긋ǚ].(Om#z7O^uF 4Vd?RmZmI`]*ʎcA^(eY o变(ENdž$…,wVg&j5zZ_/k'xuvJ3 |{Aku}U4$moݥ4smiED{C4 )T6niRxt %NUϸ;5dlrnm9Zya{RK_ڒ`h(V@_.&-7BaYCD H*uU5$HBL6zzG4tC\e~?BqImX kZplvJx*(ծ3N?pXn8u@;3L2nV15F`V$Gɹ 3,9=lB1 UQ=E$N= ܞ;ژ%ah(= S7?EB߸(q^Уd>w ~#2eAbWiEHFmn*d$S y2;)5NxO0-)#}+7OŃB^~YtsO:beH[JD| X,]DM~[  3se}+y62b Q'a9 1c ~%ۙ4l:HХ;3^6_K)t Za&ovfx/(Q*(gYV1O~4l0)^2Aua8Px,nbq=.>&X2} zu$6<]aE*!{+Bo>UFux۴ϝPMl,gDh1+|w`tyyF%)ՃJ[3\K5N] )z' :5(T. -IjV(i`?P+f:&uŗ2vTӓ(Ĕ-eP/ Y펙 7L>%3zeiՕ 喛bfد <<`ǔaTI o2Nf(ZkLjI{[hΎ4]VH|3-$<"( ,N1 wd6EvIZ6e'QezߖYFȩͭ bț&R~ot]#q$ЬbH;dVF;*r'^3y6Hva\7^&\P_In*GL ‰)KA+"ʃTq̸$(w)6`SY]5d<̀ '&%E#A $Gha s{luVrܥ2T; 8vOPĄ5D\p+f@4)qjKe5ZGR*>ͿQ.n>Ʈ c'bz)> ]>_8$B+V2ō^szU~,_zB(3{cNj8U55lCa=^6xR.a13H#e½t+{yň%yߦ ^RgjL0xߗgSGK> Gw [IZy C!cM'ݺ /1cx=rdĖ|B*FTVLi kH-E%ޡl(cs z(>\nnzw'n[{и)=\#HIVՌ9' ^[5^YJX@*T%j @hY~A (66¢qiZ.IY4^@H6r`m 5"#)h*JBE,,BGxJHx ŏgy`W) IXHs{B }ZK 3J^2OU~|KE!V!G4 ./v)کVv]=y4NS 鮢snAB'b^MC>\ɌE$H\g2T5vMBJ`\pk4t?`◞Zm- RT82Jz4%n1(T3$BRo >U@CI!b+t w &Oq%=_β%ěL+h&iɸw.!&d<xl] ״-6gbo)yW)y>(%UJM :&Oi=aiS~HRP9m"'>ǴP Vϭ7pcL?AOB=EdDZXZ@I3 ]W6ӨyeQ ]D,%<4V](AgEL=J' I,CV=4x@}jz*iјf4sG[X Yps4{uYQM]E"Pt l{Fc9:29ivĐеR }*Tyk1"ݕ S>(sDya;L1mic[%M}cz\۵Qzq56U:&=L#TA?21mhT2r_M%/֧*q^V惿d ץ𰣉ćlŇ+Qބ2xghgR8-7_^|$:6=mǜ=uV"C)ҹGlԵ,83db aT>xHՏ(_:)@{ogEgvGt# ^4E:DEx1%ި]5M&fF& uhz3;X&=FNA7.:?ƴ~s͞X5 Rъi^!Խ\sYqlmQBFH1Arz,#yNL\mB`kj_eqh?~{x C1Cw`@xo=0g^,#Kh%!`Kx=\ɍ9  >Eyp _K]j/;^fupʖ/I t x 3Ks5V r_ u+$BďfF30dʲHq̣tBtȶ5C^'F(4;GQ غ"LN*I.+%Q(Mp08ߕgBj׮o Uʺc3"L7a&eHe8H9lgUc_JXr}zVIGj wqcǛJ@h[=Bb2 ׷'"q']'SFxO0o1ܟ^(7CTe]|)/d]ml"h!/B*fH]<^z 'r`@Z4!U.< 3␡H0j }~*)d[Չ[%aCJGucN~.Bőf!#IuH-yvX ij:x7z0`mN֢=#H^\mhgn5YrP3SWNP=P-}_:U{o/5NQ}-CZNuhke iY^JIjWi݋>ԎQ;ՉE;}M/R\ύ g-,b iHtQqdp#-9Լ+qZ`ba$F=swDzz2Me%.8dl! - 3dY 4(;@^J^_Ì`ОBE!TH~fdQ1D8% 8҆zVEx /Jh*_Q+ڸ~(%i#ΖD>qԞV8ڽK++ Ezj \\9Z@Bt ksPx(cVyq=I㴚.ѽXo?*_[%Fʔu|f^>qYtetS"f^5^\aL.P~u?Л>*Fݜ% p4.Ő:g9SC$[%ƳaY=:2d?XqqU7*W|'2!\>$q3JoiS%f8 im!@-rhUwwfޥ7T{(.4aZ3I}6[hxx)܉QÍe3u0F%8q¶ԓ1PdY{s?94 f26@Mdt,pSdv E3nWleuVO|ncLmQ9]ƮQ쏢`aAA!;ՇK !V?q-َHe;BX9}AQl:!Og=e'-墓e}ɇbEҡLpN/)|`U &!%h`iEv{o43iQڧjBPlbs|dݱc%BC⤌6[Z V%b7,M ESҬz^;MJ1NVgGvI#= C=(R(Oh4ŢqsBF!zx@Յ?x']QhH}nrcqϖi$'%ES[ "ԃb*y&uVQY{zI7(l^iTʀ??[Kqk |u@p ?RzΩ#D]v埊ݧd#D@q'K2|JX4Н|6.Og(uی0BNҔ aP8(.f-QSydl+˟HkNPuP,Õ/{_umDf6{ZE0ֵjL"|c3T\xmϟڰ{sANu0 ڛ7WIi7e9>>>v襌Z(>-VT5TA\ %080iyF Zb I {R~(S^D1!9RqڪP-s! Kж9"{2A5lB̆ز'8j-UڴΞo&\)qڛ'ڂ-5TAjPT:ѫqD#`ħ⠒*bzx"Ӭ@jLk_A<*ʛbF<$n '!f9y}D!b"yesE.vIJ0hKnV/M\9?C7k +EBҸGT`ᓉ!GVg`Zу-' o> Ymʖfe-Go3ޟb]Ɯ m7\zJ ,`tFM'X.,n?R ` IjüUW|`s$@{5mi3oƻ;iogY!Պ&=,$3taAA,x_)j+\k @i_l3.;H"x̂':Ep?Voq6?{:*Ǡef:0UP#n y܃ $kg?#wK2rrCuX]F۽!Iut;%$C4XV ?&s⁝~lBvsjل_Y W(ԹI6c'V]8tM`q#+ >@R%^ѣP"iI"G5]hleeimgٜ*ջeʹ qR 8@Z2uuxt1rX~Px'ݱ:ɨ}ɩm';n45/Xy{<yiJqP?S$+H<HCt۠ϛ̚ r悘9 ;"% gfk.4}$%+oĝ-^8XE*_ K3s?.w&V#%oֆ[O?޺gl}%,،w!J/YA*Ew-`qYUb*U;SaM/'%?Ҷ|6TQ y&8*ל)%X&(g%CYF}lsJmʏH #:Ǚ2I&c*7=[]~gK;(i=WUЪNX:BMT $Q J'C`-2P&Pek019r{ ϊ4ܐxfe˅]R& ǁ,hፎ/|W߭:sMVf% Lt!"`[iB*%|Md;gg+GY] -F,_#2wK\@;"y+?n'-3_{ 5$dl.ŘئPyNX~Cyr$1|ܿ0Y7?Ƈn7H})B+7v|r9~BgPL6w3/Kh<xQ88!_ţq]aFL|<;қ-R (/bq҅y+mic\^yCzhA(K@z':P&UĘg(ouǐ 7 qI24/fkƥf8zwLMp?+'L5Hk(Ό}(+ r6ikxeU6 iAOBG1-#k7#|3p_E\ 5O'QwUG⁙EI*g< `Y xVsk+9UQՒޒ.'c0`Dfx3U f;ψ#Lp#mC 0"q}:HqYUn4~-cILlvٽ!A^*8'l}ܦ7{L=CYqLv M/bj)OكM:HFTz!ߡ ġ*rn)MEvx7 VK<)|eEV~Sgca 0Y$FY"ͻĊv!SPQ0c- Dd0I)i hQFUī)h|c|1n63_[)jDpw%/\L-bu܈"~@3 ŗX"n]EI3zvver:$)&4jL&5JًrT]qJ%"]Q?'3&Lײ'Xeb(_ կh'N񠽘[|whp |U%U{ >5Wb2L` };0x001),$48fdNBduL=%&/bV_wfP7+t&Ġ]gw6ŸXrA K{xydJgw$]v?wmoj :#@_oTS3]ID dyY"gcR~).z[qg#HR^O$tЏlĴMcc2*RO1q/:Ɖ\Ű_&2lPʑC;>߂C{rT Zr6#Uڟ?(fvwK?ۡ!w P|BF퀜4⦫ ᬫ9m |u+BcC7/WڻN%I\pskLLv,ƕlWW1w!.Y- Za݄(խ-|e r iR 'H$]NYYz E̐mڕ2U1RBܣu+oYᛏ}/M.TnS~j>IUfϔCjU׷1 <'!J|cxiJDacayqg=>IFs6DL zz/b jGH " BMBsc0P|5KCl nio"58,s8ęGwzUu5ZC*kBIS*%f2kTW%9rs6ec;M-/m8Xv--m],U&>geȘD`W/!. G?j+}z=X.ߒ[N`gҙ5ˊjVqJޏ8#IcZ(Px/P%x]^Bg*7!&S?dH.kWǘ ,V9`W ]_QKwZcnHO3ntlgZ#Uѳ 4G. u$=iSn/,Nz;t إ//v(U|ȳ~'.t7MbոOGUQ҄ @#]}ZVM|YVAЃ 4W 6ie6K$s9,{oS #$VCxֲщ}ο#!ڛNc+Zꯁx:~ A\~Em~1\z?a7Wy~Jaas¬^!b@x4(mRPf#+G Bt[$PE{y'lwxlj-( $. ]%G;[?Lzr U80[iw0b5N6+X NFM#uϋ:Ϗ,լھĚnjŏ~n.uXi1%ɿC 25 ҉1ɳ{Yy'q;KwS8%X6մ/UAm4w>_yw,H %Fh" -OߥhrzdRd_@=?cxrlZ͢Kd]˾8]u'F3]@6v &'/$F*GƿƹzO?p+S{J^E-|8a@-`~(\8Q~c$H_P܂#|}h}l'c+-*n WXЇ.gk&cv◐6`_lgҭr ٛ9 (sWDb|Jn$kc!& DpJ:/8<]%SL\voU7d9F %l-1Cr?w}\.ڕq)9[ZHQHp֤YKW0Ab+\U+YRg1UjiRa#qbVe8#eN]Fđs곋{P]SC[V:X/#UKͻɁ\Ҽ(04ZIxi ~|X+AKG&0[f9%{a>NqC\:d|; P\BW6Y=jMrG v+o OB1-cBFِq)XpW ? R) 4P#^:N^{Sww% ZGmbDNv;RރY'v(KVѼ4"sx>k mcVPc|TwO'Ƿ{45]YXC̊x[%N6$J$2Bo&A#챚f\0ߎ׃R@ 5-,_tG]ne!&p12Q㔒"L3bE87c?3 7}X}( X;.a>QIgt %ae>\"Z'I/PC1%'LSzN)HDEYVP#Hus)cG o 䗍-M+UdթqA ѪpP tK ÁVͰЄjK=p729BXҗ(/k&=o٪ӝ&w>z%EþByCqصw*tDhLDQVJE9h^ b/ݠgy/@e+1t R"aw T,--񍡺mH,=IÑ0',JÔO}+"Sǘĥɋw[n.W!iL@;km}ӲVk0Z%`̩ AOk*  Nx S44CͶ=I_ďl1&9!"L:OoʱDn:MI( {Zt`if"J.Nt"ܠ7b3HI=ʘq1܂rr0JZq>TY.Bֱ0jzg[j/\[oD ?r 0ěyq]nFs#_ edwzRR͖L"4® Tٚ`dɡa^NgP(8eLOkčVo\tRM`<{^, G7G$2d*u5XdB| t_b!@4 5W\ s-:m`dJ@;.U)WVyFEa.:!_eZHH/)T{gzAJ1sRtq7c M2n^hM]?;tAY#`u{\ߚl*LH41N84Mue; eO 9ԯ v]yD8o'~2~v#)DALOQWfuk4U[ [OԨEprX=Đf7z{xl$=NY9D:^LA?ۀq6>UN G^uS ;|`v [㼯,1uOq\^j!C3Ye ԇ/ͰUu{DZrleY2yI"(>g£&`q.M5пX= `N•Ԏػl>ocĥ\ιǽ0c1JDT]T.zs\oǩDDm#QV pUHPt5G^(/˥d[ޜ;Tnۈ 8ߠaaR\CG21rV-,],!ZV&\^2sh5@֙#+*Q;\D'ŀRjUQy)9G!.HE?o8/Q6\Wm28:` mԾ73M5LяS=u،S&8zWlrD1Hp'$7%7^y)rNQd~-QuqBXy_]F j $FSa(R/q.;Ο="<;Z N_Q!4amk`" -9pRU9x 6f-pKe#(8cW2|9r Uj TҢ;p.ȑ37U1w)(R9q $H jk> tCEz#^UIc o PON1}UX#^?~ &|zu~MgCxqh ||3-^,f7ggdր IP̭: 4g|gg-cݔduÝe DC{igx7L#&REZWVe :ΜVSh0ݢNv}BP8r5zt:~y*C,s\Z)|4_:XNTR2Q-wH?H{Ը7@3򦎏 p%J9 ,oqF3Dh.iifd#`4iE5 Du7J&@Gw]\ N*w3knWߌCWXmJx. V`6nQl U Fɀ$~'3hUϸ+e%?+ø-*keS$A:"X=u"J7b\Gm73^i/v5g0-y&D;fOz /s8)C>w"H4t>wYOɨC}".x4A:5z;@(6=̚i\ 'i;sFتP[^%YHՐ..9F$Z;<Kv ma5Ha p4nI(aG #3l, N1&-oSCRRRb`FL:XPP9 c~3[p-NV:kNiO$& *܊kty ^^0G$xu=//Lf@Trx7Խ K}<" t†jOf\5ۛ¢lչY Ma,gbCʹ{~gt)gM;[YM7It(-זWh<(=S9VBkUc$W ;[rs#,EHj\e'*r57Hۉ9`˪ HO/֨~ex&RHwaIwhlxP[(\ЊPtћ@x?|GդyVAAu?6F[QЄ9j0\#D'v,j^64w;BwU'Y) ;i> o3DKQ& GƋGѕPVBulq׈IV!ylΩk; YC(Ie}/AnK_$Ev쎨Z6x~"4u@Ȣ1مiJ(b㎱‘"@Po>-'-(T"uA:&;kżbl7 h$m#} z_9(tV[+p ٸ*зHҵ)cҽuGp0($[ W}q?iz)vP/=p`Vr8Utnq Xs PpH*RFJ;ϛO)zE27\͇4Zݠ䠨%JYy@DF<9yM+9;5K^ W/C2\urp9~å.֞ꄬyQ%DtJYlud\hQz0;1zUTUh?bmPbfK0y ҳey@"a  z zJE2Ҏ-bMF$PRRiC=wBhk\S??9ݘUd8wUO7{SY /IOLCV#1 Z،Z6h6i+-5u\T#[c#AnQŗ8pDtYiY\*OSy"l}E 31OtLnOL ƚVygE3ZQ:>V*,޶%u*@_ݻ29.7,2=ۓÜVdmɝUU"k|aOV d/pK.Ud:8;=^w2b+w%/Zar"q8v' ɓ6erSeHy^.wU3UNqOG2cF"jkvT!NI`ID݈;uclv yS2xl,|zLdo aq0*})G4 n!^ -WhTf1=FUݶ.Lf=5r9oq D\Fո".`ޙEb? bȃ+j pOa)Xߒ}R2`4L޼yvI&nO3kRQ|WIh;>J}u%iAƣR ޠ4[!jf0@!~ *Xwh2P-O\}`x/P2 p)ׁ K`W(:W ķ~m|CO<Ԍ\dY3JB !(?MzXe3ˁ3ϋ(=Rs}cY^tPwO_!o  Do:X⢁MxBysI8!z^ g tiC-N:ĥ{Q7oDZ$ݸ̻C R$++w??n".8qO7'W6惸n㘼Z߉6Z]J.N=b|U7 ͓aV7b#F޽SQ~5s%ɘehW&K86w]SL+N9M6[_M$kNm:??QΧ;Z3b2 :Ӄ?^. BZe8n3%hvm5@Wy(y;daUڞKz 5LKY'/^;wXÄuxߧIgd)|ᜠG"ؤz_K '@E:|-G=&V紕>*jOq 46(M,̫[k†T`LᛒA e;%vI/<,gw!YBQU`էNDlvS?X~DqK<!4v i^k`w_SkT4ryVΗ\mQs_kH4:7*͍LR'V89w\lmZSP[4wp{"0%Kb]ygP⑊NUFW5ڳIґl-zfʒ< 3ݻ G؁tMu޲68*WguF(lkrr ?d26P }q+J̈-NZqMᵥVV l.ASG#QC[cTia,wt8̾@T?@K(0Oɕ40w158% ϟJR{\I.*{yzLPp58w=ԓ\1` q抾E]<#,͍=>bn9ު;w$A(H]iPekmoAt) p 4øj j3Laj^:f-hz\Bh Z[_:Ms=Unԏ *t:"PdBެ]A+ 1@_: _7X>j.C涼*'¬|Ϟ8:>NwWt_*āY UFcq1iMG,gZPQ˶J\9UWa vj@VW9 =ATAw0+9-lbTnp4[GdM&@PNaTQR8 Ů9 wx{e)Imk1@Af3Eg32 1'IfU^wW7s_ ?D/)(BY8Z ju `=ݓ 1GH͢L:g]|{N{,f<o*_aBC2YiYȗ?U>o7DF:"q|@*X~5-"Zطw ć1*4V]mO߸ glN ^v w@ZYiF8=?BZ(ڤ0S= 6c1ӱ!gXތ_&qR!U0obm\,=,JȆZq^1qh[Zub:J5 x}<}"eAH%wڜ ՆmB ն!JƉ)telJЀ5N%.ĂJ9 0E^XC:] zm ~H{ u)wМg61yM"aZ p0Ϥ#K>B=Ϸ`=6s.qz h FtO[<ãHw"R:5(~k0QvSkI&iB{tә5ȍ6x@I*@4ڕ;FxsL-`_%1*+o>hB\=L!o5 DZrf2/̖ y*>d*,Ӹ{2PtU\r.Z YMoL1n/TzQ09HiMtJ 5KYVJX0FĽH\W`fZ~R:d; <RSizKFX%M]eЀc1{EQE&'oa(;fwKoOE`Q?V+WR$c#X]>u'fÜK"%kL[~SnZXRȧ G;@ l89.ob#ݼ_.yWӴF ~L ~nZz\{HI4"cS'C3~; -fzuo&e[*C_e,#썒ct^˪!Q \ -mU!F;uW٢;}6|,Ƙ>WN ̭ےh4+LDH*G:v7+ T[`(+t# αKk)Dop;ʽ3v{vIq1;Te-+$d^c"u]9> H+B10c}3R*Z@Ѷ^F$1dlWp N1̪7rl릳'=ŌʶtLTjt!^VL=.iT[ =$6ǂ-~!AՀ,}% Rt3 'J3i,p抝!`򔖎y_.Os7Z^1ju%) rә)  )] $IM¹&ThYo}K˦zI^e%w·Bo=YI |8퇶ISg\oqPim4~!/&\;ܨ}ˣpbWa3uRî€0"usNuAY 7(Ea9CN :& Kv?XBMM}ND_@鞫#IQŐmi(VąLa"^'Ǯ+ -GïϪ 7%Y3aϵ!+5R{gbuN =̽#:8b$Z(NK_Af=V1uq1'zY )&oJ&DpC"\0-%ly=- ]MGbV)y x%t}{F!eiI@wC::||РUočM?vv>B8\c2V!#!]'6"r∓S7}`JkWs(m! h) =~'zz`ެRzgN_;t7Qy +NhG عmg܌ l\8Ni4Yb6K}@coR۔=߬_M;+?[+_\_yJ&{Y)( / VCʪz?~؂6vQlEꊘئ-"vH..4WBBl|2I٩@_Q7gK*E.NXf ?CI0<ȓ6VvPfM +)+ުT$cgь8KdqXd CHXѢyxэՔV4OLRLb?Ƀda(JFK0]*Ľw5![5 ÂM(|-% -[–CC.n_)p noُU>z,?8 V]_M*,CK,-WC}JfK1֒o׈3U0ÿAWfaEw]ǻo{q\ޠi=젘TwSZjDQWXΊL~׿+ZmpbbQR}Eby oY^.W VW=$#x뛛q?QM^=uB0d0 ~q{3X"&jNDnG{V| C\Qxg$$;n:em>][SQ^" 5qq 8k{[/0T^맛אHԠ!q$?I?m2Jl~,=`I'}LEg̙]AJ~[0Į)F%OvRҜ$ieG$Jp#TvٛvEl bfz;hm;(9:xhJzV?~qؓ4 \Žd|T г=,Ѝ%n'ȍw4S[R:"z74x)˷I$Fh|Dw.aY88WI*X $_|Qʉ' ͹8OStHdۃ߼"j˄G<?/M]cv1 odb;.ѿF#Ib@/&cjQBgB~ѐ?Edcn=rvoF)9lHR-EV,0T<6yb^슲 Ӗa9|ɮW#Ϫ/^:fsA4mĔ>{C87.Fj|?]zD]w(dѽ OAs.$9t{Rngn8JO{"H' gf3}8$/U'N[abq`e驳%!Υ+#zu` vUlWhD6J>/wJ%C6]/ts̊aD EM̓qdzƗ1НvQ~ˍ7==ToE;iFqgz 9pcD67t| 2x[-$[q+"22Qy` GʌPQ~xwAloON&䧔#x "w/'n/֮_@0,\ո3 9l#,ףGץ40F_)v'ɿzjr*ŝG Ysr ⬑+Aq9~JFYi&mO}Cwi!4p}Fʡ)k¬&gQ/)# FD=¹ %.бOv) 9^2CSE xo NۡHe1]ԅ9yd-).RuiITqq ݼV'[҈t8*V%fV)^ hn3"ygV<$@є=~oǹZL{,a$e݅ G ra5O3FlrñEzL1eS[_ )p}iIj3v>aQu\pV=(d1xhH{MVzh&|MeeV9mNg@- Ľ( =lρS~9ŴD|R:Yڪط | Dݝ&3}oc8ga?c۞0SIK& f5<Ŷp%7ISwV\i,X.їd0(OܑC 47@!L^8t5W.,ҍyOr0S{YHR&-ު tm ]bM>X`bO)huIuul!X/R~ h:9Î*kPk &XG^wO(dQZpd<@ƻ|N:|<<ԡ)0;^XZۨ!,FrZpގǢng"+IV?vL%zax{hߞX%D,ZrtU}}IwN)vXI^XKtVY{KMfÏ/`NΑ# 頙v]6!KNSfB7mYQ.A݃ԕ5ɵ#ny 4ZE1QmWi|6#To c!Li?ko-z-"$W>/X,͙ ۍL^/؎޳Z[_DcAU(?+/?O>Ի> aJ J5Ҭ]m>6T4.\ehy-JS,B'M#Q+ =xn~Ewh+۹9`:UT-+%g2cEe wH(nީ^!%&3s+V*K 켘e8V<2vMFgwx<=w/傈|)?3kdz]LDbkS0H!BdW zp3TQ']DB3) VeT ll]! ȩPnc4>))i;jW9.a'_́:W3c] . i(LXuCU%$Av"vh5Gb {;ᣪ&&$_to)t*+"06$E ~ cpWn*9+^"6尞QCLhV7N nꮯNRK>紴gSbԫ(gT,[$-9TMvHCVZI?DS&-dŃErB.tS*Z?Ѱ0n~Ea|-S@_M J!RC~emϛrl"S`l&Y$ݗyi{vP9T? vvj.QcT{ſ"9(f L~DzFyog.Č^Ÿ0q Ȇ8sQ$W!_ծ7Gnhk |Pd̞P+ځ|34&[uD bcuĖO~WG' _9+12kj_ "7cH|~J -g\eU߷mLJT/hK# W+^F _fr)f¨Z[!GUle"Cuz7JbidfK9FP2^ SnqO o'=fbu}n'tAxvrvmă6H}CP&gxm(f}cS31fHCY$:s6uJ 9nX)\5^|I˜+:M_?^{{u{Tz/MsPp9Er{x1Ce֠Uh\-Ar #Y^iG}(.In9ȋr2e@tkǓ"_]ǰU~Ҩ:A͇;fgۉ%X=Vϑdz {t2I&"\D;V9@եnTz|suhS:QicW_z}xMzBdE'Ehb] ʫ1XLQLʇCj^l C bcUz[R SGgʌm6>#ǛbT#t-Gp8I wV.%`y[xMS^3Kbjx Ӡk/c_{b$wvHUJ7elFv~ƌt#Kqz%Ũw*\,U!$]Ely)Ȭ̠+2+VKw4 69f+77Nn2>2uV(Ix˜gn}_1ukcI؃d^_2/nkpFZ6ɻ@5A" R=6͵hȾЯ3hoN7Dh|ՏLp$O\0Y_lroQb5wmtqiȊc8_#H;擥Xz?ǂ bk va͙}t) aL4D&(PY I;H/>,t"5cO_0;$AhO"&;6jH92oxbHt I P Pl#e,U Ez)cj {% %ƥ$`}v݈\(~(@gOÌ B {kL?FdCśquI= Ί*,6?Z.\ g ՝2Ue03""Z{&64Y_nDoXfkfq PIl3xMBuBfJXwy6~rtzqQ^x>#ZQ}򣃔%,-h_h,E x,92TVȹCSo ._Pq&5upT^MAcYA8tٛſױPups3w9+"SQּ-2AUWQl(+WY,< 6@30ri"w zجRNAUm@>s<A1KUPFR, ׷D58/0E'ijlCт"7)\*ge6+sA?'{C݂6eq{P\^#gyb6˾v6.o{[>?שCR?^Oyǭ%`$m)U`[aUP eK?n7y&pHIb}FvydŞRΑÍO0pjOIkȆS,hE`422m Š("FQ~Y6g;*{s R7,O[hvʶf(UW2) 7_N.a~ސFsTC7ݚ@)!gU%FXae"61n_p[xbXKՄ6 ~_ ni ޠ= ~;<>R¦aRln>a%ʥl'p˗WsSSBռF ڏT,΁+s_bAKȝ|Em&k'YQ& )LO}{`Q/4[\$8|Ȅj^B3dC׍Ozz),>Ez+si5 ˲o=Wj_JL9v5:9圽N90}k!s4?P?hyG7B!n$ c zu]ъg-n)`!zR_&Ҷ:7F|4?,@ٴANkJ!@yz$7R:ԸZuOqFmjc8cDщN]r<YDzJ- #l/V\oxo7 ]!?.K4(Z9Kb5J։(_]X M.{b<]2־rNbWWDۗ+umTƪ &tڭ$̢Ϛ*Xa{}M\魰OUV R'|0c>o+ C .k)aebIG=6L{u$G$SiY;[~1ւ|ӖWoSx%ɘӫ)Egy!/,bjpQel:=(Ίv歙k7%Pw0mp㤛 "- .F䫼Kb:'80@FL(ߢ:!)uM;wje #Si?Zd&S]^sЍZJ> 0Ik43+kq!4,X8}{0ҙKai{J? f)RjArͲx_o<1J{9q۱|*GRS醻ُOC`WݥG=U䌗46'قxHѐ$Na5 S#O諺ۇ4õȔS㺓k1>L" Mg??ed,,ށڨ Lې$6{MBٶ" b@w݋!㘿^)!a깺:U Xd⯸}(R>5Q[!h>PB ‘ 'g0YJ,L HA9bu>rqcE\J24] eᓤWm RaQ ?/ IG8}а$=[7~Ymm"ϙXt;p@3 Q`yY.#3-zt8i?۔N=e(\;ٜvidv1Q2~\;$o `9i J:g^˞+6 $|qP[|`3 \y :uHcbaB Juv̮#3O2ψ#Xj_$GvuEaùPdB%LsC p\_7s Y7Zs2We9YDsOeIPC48&NEVf75fb'8 a,,Ň;>:=Y=v¡K[]Jf\ؙ7`@E*R;i!#.࿠ofQs6Q2\;}Wq4x{r]2\!f]F'iœt3^cn8>?|k /ٹ=bƀ] m2 жHt 9+9t6(yoa8׊?VC]P [F6_"@%p d W]DvSCxzd }zp0o iRד~049_C׿*`L8i>-dr*b6԰>0 Pej[aLoFɗ0Y(r|@A>w=Qd^{:~:빰ՆLK[}XG}N*d{|X9OLOQ%s#^c610a$mȰ? ?hi=qΨhr0ʰٴދ`.!aHmOzw.RYt $Io?DUy+Q R&bgV7@;S H5/KXU>l^o{`&gOOZ=X&齉wuv D_b 6oy7MoA0C_=^:}4켻$09x2P.ؐ3Mj J,E{5L 뎡#pם59Ҥ0S.Y79/M3 _Ξ~M#(Y孚K<hYt^O4RcVh|4~HjAA쪰wU5'N IBE4Z*$I"(?6\y&K F iuG։@~P9Z覿įH~2`Q)0rAԿl0PvfLzHdG'sPZG.$.Q$1b4h QD?h~\%/?yU'~m![/F_cBE"ʍA`vYIVy*K$ܾ$Ys(Yjc΀GAۿ>͐Uo -qw_73߹v2})9YlĀfpO62( lhlGt40"ZyO!;DI>JI%e;2B]qN3sNG\ y]KKtӍWNAgNFrto\k|kك2K)M.#eF Ӭblͣ:M T;GڢDq(^x_{yVAqП[rM QGЧ#S=tÊΤ'K3̆^|w&r J)ZI ,^n;C7oU_7P0:dͅ/+Qԅ\Q_Γ) SCiX75:hQ4slOpۆ]0db!#Տ[ߞHjPCl?ZU2@nb^ؐnov`օ=d#rAn%}t 6_8$=}Kq%BVwV:g5TȻ>&av InZ @o85ÌU|V/}h:*srLݶDT):B}[t_em'FԜ.$ΪxEY Ddo%/㊫WVmQ!^?oo{FROTc{pdƕlF!2N{1iS-dԔ!s;ID E[Y XhңQ^!T`pc>٣ 1$Fd E#9 / ׯM/_I5r ʷI,ƞ {IvP~(!p]YƗ?|ު~(Vڰ{s1P}u 3k;JNC+/ِ$FaknCXU߰8:3 J/W:;#dCcqeO1t0.V-U.O[ O~?%*Cbҡ}-Kh\rmቦzH>X (y)_YZa"}mX5nTե|ܐ^WJH wzJitHJ,z} ^G7~`e97Y>[ٷڋu=mOuIQ&*Y:{@u!nŤg|)*ApSU5wqWjgȥҳDϵ5;Z_r7l;ؕ1xso i*Qe^|Z݆ ~eΈԥ^2xթy3W,xekn.LeDr~X>SCcWjpO0Rppq (E^ *Pֲَ?sұSy&|ęK-B䟧,m rs;?҃ٝ; }old LahEN'Gk2<'3Bn;*ި'd1䤉^h8U\w<@3d3V;BMJ?KiɳQ \y[dCE#qkD2 %"K*'! 4 ?/3V..#;Ţi4GۚWO ofR~f̆ mNEO_SY9A(gG;gy֮,IT];5sQ;Q>GAݦd”1PE꼑 ݣZ&  $>fV^xN3V`eU}=X;A)OulҤܳ|4[>)r4S7O#U˗jR'%+qO%WF%rssBoKU[ŅǬí x)fT,"JЬuIuK Mk=2[0f0z \7sJƍY;V%ލ}<ކ “M}gfv8wh oOϾ™Hؽes0ʿjtr3ɜ֗։rL|eFY9 OV^@bNְ!ĦTW؊``-֌.ENh15euMJ# [tWE[u4Gp(`U71 z&nԣv;³5 )܁طq˂_gRb2rR90QRkM7+8b\hr\8 $ϚsU]Kq¹%V{g#jz> =4Ps,Y70΅pu"7{=^N? -g{6D(jMfmIM@أ"o\Te]mGV%lfl`z u c Xk KQp?;QotQ Ej$.VJS7⦟y0ùϱ7]0X3!6͇I_}e%;ᩤjlDhpej[c~j-#Fs<% '݁@"oT); k_I'mԦNk VC SK^ck\\i 4$ ObbQ=^BŨe&ĜXI)q>a&k-}虆h 0ss Mx(\iM9E5Y.`>R B&eϼ2}rZ xFwP{0v=x4Fs;bp]k k+KXy15̛,兾!̪@;X.ު`.;Dyj_9 lgpϽ&.>vvϜq.ƚki}٦-l [G3F/EIDX~Pg}pFQқ"o@;3jE~BC=|U&㑌 (*YW1;gvz«WU+ ߱dM|ƅHaeQe)@4za? -[Ğ] Buhr{n7f6C{>ajl%X짬+ۆ-j)tC(.a] >l7HJ-챈]8[Ŵ-+S Z{A!SubkQW!†qC+8^v%L ~ܱLFFXVv&dx%-ǝ[k-rMsan8hh#tŬ:}/$/L>5ww(0^\n˲Y 3ݍ:;"Էfc|b>dS$̭ԏ[2/nTyU``KzcCfG8&۪bJW%@ԻyTiX`zJNc׽6=\n8xX? nd-1q7e׍goTjARNZ~'g f:s*ⰭQ:J Im|]_ԫRl7f|[2 ɷb%H4u:ﷳ4F[NUQϗjrl;Nʅ-?!rI g͊ETR*QsjbTN wCJ_܁S=Mxx|$fʢ!Lk 2j%]5 (t)vc7ȕ$&[peOTu!bOɌ&i %E_ %iv(2km%<s?iD--yXߪw흤1M;񦐗g΃km|1MՆJ1+cæ@\KV2Jhژ$Az;8>ײj~ `SQdJO}X1%1'ZS7mѸ3U;{D " Mfk!* e3g {/]L祳< vܢxT1.2t[,ݐ0W(i>+#)92UUpDxu@ّjI#qqY SGpP?+rx?+6,<[ c9dZ3e6K fN%["nd8Ҕ'Q]œS|ս>CmH5ẎTYd "Gx j6^׷BS _#!^0xܼSf?\޵ȥ,f0`oB,G\ƚ>]5w h,nD iQø^H[H15Pv:l~eU%asnjmX>bVvuiVTN%f|u֌eo}Q_+&@ %pD}GH͔*j AnQ]_0R.aPIPu&Ǽ@__,hݼljskw;Gy}mݖ Ĥ?ÍKa|,*I^-˟p3o8%z B0QC g Xȗ2Bʜ, [oBy8o#/ 4~J|u wKb4}B̯Hy0sb᎟w˄rL`K2?qLe#w]9}ÞWqs@[%w7\PDǑ?qX1"ZPev|賍L k>65MIkURسgr`kPh3J_S,?%%C`R?$'ɡH4?¹5TK?Gs,UhQ3%8rEp^zȠJN~}`*C)& s1h?Ս C bL* taxMPKk-4jPͯJ<0{}mc9_FYUrܕȥ NMUMtӘI߸t#[Ӡ]ab 3NG]><Yfe<V{.robo~/-GI-yxdZi,U#6[ Fى17lSA<%ڷfW*j#8W;3`Ҟg9;åu2$2{pXcoaF+%VTTXN\#u اF qR\l%>i.ɾ]#ϓP!CO-׆=\Ydƚ "4݈ǧf 0AV>2a`y)@7:ҁfN.`3c'+dݚER `هF5TlԱ3#v,gGLRمp+!2ScbW^0JuhOwH!|G uip7k@^{2SHUKS_ g k Y: aN`^W̻0_[}w-oI`Je)W} 7T *@?جi^bJB3\yBwkݞudhDa4ͳquD3_N?{-fg;9AEݿV)ӥ~1Fu8H5 :QeCwC m3gV"n緄UVBW sI5u RԢ!nG@ KmdA.DI!Ź{O)X7JQdoˇǨm"n)+, +OU ev5+}O(S{cfuw6}IiIqFyX6;L0\ \!vievFF5 ׀$cZDUKA+$֋ ENKy5=QZ]BFmnc?6-D3؞R{ީgKPҚVfQcB K ~0Ymh7cg*Y/Zn[5FPHPI9ultigwAtQ\:9aP賩:rXQDEnaL"ѼF J^qO,ub}&1+Bz7AbqfN Wnfg212uO>ǵE㐲59ڒ ĺ$ OBƹhA~'&-|I߼L`m|T8Y[T9QfSPU3S. T>FYSd1(G`P3OnVs#"N >B LrU@>p,~TɼDfkj'^EXY(zSi 'wAmmSIme|#{٪M/E:^I?P>{q|HFE^T…V]S~&|WP)_|DqN~v\ KHjd:dÀ 08(v8M&fiv<h|N?[S V5@ -laN Zǵ[yM>$Li&9^]ѿ@&ď{ܗr~ζbU4pxK 0Tdx*K|)oͬ{er?ZZS2kRf@k >\:)|@L "ʭ4pk?`rv#fM 6> ܪqTե NQF {x w 5Wb½|+úV/5n:l >"{̸]}ӟD,:ăQI7xu WyG;K C?#',z.8D f9=& _oD}㶑~K t]F _d)"G>aGuiiyP}I. 5mNT m*a6CU6g-eGyac~?zLEuNS'$rJ?G\!yOr w>=JsV@n  gE*tHŢ;K}Du^.`F2dM#R붢 @*2Y[,IImfYv}o#2GPb5 k =k}CGɛzؐD]7HX4? szGaXBOBѭ'u Ѓ Z` ZOsit519#Y{I, ~x~&?BуrL@{C*ds$Mn󨏌g<4r28Bdj^k.`K`c/XYWjlxnoLӹ Gϗ~ټ[t{NP77r)j - CB񸛶_g_%bpZPGvT)SPL_9c522[_jlffԿ[ho>O(l~m =x8hݾ(řL}/'C0}H Jm/@ C`NJn<inLg*Su:BMr n~ xԋfutH+ '|z -R[CyPJ/"n:o @ V XO74}<<CTMi*Oe ϳ}ǁ{!ZLz<ڳ'T.=ur ~ P@ogc1)_;H‘ĵy&~+Or6Ku\F)r]l|WJ@pTx\LEǖBX-)*5 'ʴ ;pLtAs~gUy'Lk[~6\?;džs 2BŒEb^i V)[D eSJ*,dewI@7Q3߄TXZrOl>=N= & 7~?;n4#*ԓivz?d9T4$խ۱bi#gq#ۍ0؃U}m\goʻR cE.h.YB'q/iDDB G%I بeax_\R"PYgfj΍UȤOi ӋWHk{z:HPnc\a7|lx))Oj4~ZAT$|ٖBUF:ph);H>n >2aL zcJf.W>M)4\Rݞee;mxlyדW·1UEvhte7 r":w6NuDߣ (֑Kq*_ `Bt=|7<G|Ʊ7BޖPh%Y #1v:V=26YQǎ58S znCxlpٳi{$îVBEi#wu}ȗ[6 \TG\0k $B+M;65Ԅb >R}P%áA;cn8駁ݰx!v=Q#YriU`)[>V7m$kYftZ9Zz0+{%2lY?mSѳVy& ɤ4_6٬W_˺{bxj!աNVV9>㨿%TʃCCV%T@YA{|x%  {(-yt/#3-.l>hnfػQQčFMNPn‚!avV^\Z=Sppw2ՍоjJ|]}0V5;U}'skMyt*ʹpx: 㡥Σlrg01=H"k={-Y#7gѩGeL`*]Q&i,vd<*JSZef75M7/ %iP@hmmc)T~F1l0U(%XNu1Fr};n318xGf<ND2F1 ú iu0v[g{2ʥ:6z^a3] b&y<1.r#4!1dAN*V^y.Y,;% ^)X2-ކ8vM9_I҇j؃fy}Q۰u➩q[ÈԒw~J8< VAƚ4Z,enۺWeQ^ACn*VrSHY ba&sʵbl]gOD9 Dqv˥Rg+ Y: S걏Vp趁yEUcdsd$D,N(/v( UWGVM+jՁ-˧(&X)|үci⣤7 os?tb:ph'ھxӅB-ױbHrw6_dJ)%18_GnTmȣlop7Gj`R&>?#ak_1_%}- Ϯo,J/Uc1`ExB|/+ʚg(6ՑeEHDBw^2~˧m߲ca?^ aDh㿹^F!=f,llS4i=Eŀ6W``>XJG €N["k}!ޞE)rչ{WyUR#l/ɯ>DU) sգ <}<5/͖\YtV?5En9|2h14<><]o 5 zkkD<Io0p{e(73s"\ nLܕl(.ψG[Ǐ;bY48r\Peo@m:aGSa@^#kTT6c)f!*a6Bgr\w9wiS4<@(o&u OzF 1Ŕj]mެ*1(xȈ9QTKD\UkG!uq?Qő8qB:tA UE.GgS_hE㙺NdŇv Z~Mӯ÷%K{ƋO+Yqm˯MWJp[H %ZIvSZw LrхP8'@έw/9DwRȮXJTS쮿u b_m4>JˆXsJ_+`~2"eMAo5t>7p@w~Wy|ћTv.^f{؞6YEтƞÒRޝLmF֫A1(V2OSkN;2[Jbz?6.}{ieGDIulyN1^|Y ė@݁>BA\ yEPy\ݙ-7 8:GU!7L&|5{lcKTF*Q? nAzsU'1x~4s=$ `CZt iz~m"hD4Ky[1E(oאD?J%r#-4{v Dkg+,mcD7YCa8²f| JO/ rrF!Ѝ\K=2xz 5p #&eƽrX(ߌ !\QC{x>ObUFoAdW%[_ˆ mŃoXoJ P,U8v<{rɵ`H|\-A+O \Bv7bqWH" τ-V"˺OErM@r*G,[㎄IFۦyg#$ j4!]Uw -)S-w% R+]P۸:hkqf@׍֔\&nkv-)&Ml;_5@'rMA;3";$ӥ\S1;Sy&%@rQLgx"!5c$B1ߥ.sͰQzWo,3.K}ft+ =>_E^Kŝ]{A^ؘz63v'ƾN<׋YUJ JϥY6Tzq,;߱y?c_61!DJ mؚU AmΥ ~yy3-QԠ.X0dTv\T& tA^Fd!sl*wvs';|^GƎH9Xs76Y*\2b<iItàW $*]{ߪW (R~|$7Mh{ܭe`5&ډl(q#j{i/1k,?5^ 0!t'-[ tqsͶ-è2ϯ| O"]^ٗ'B4R;Sܞ\J:7,//>^bMVxA ILiq[8z!չ^9?,8AgC?Yx̨;GWxЉuVd^sH"+0>م2+~~$5J81\! x[oT='`T9ި~T;{Y;#s bf;5 H.@@=d?;7ݯ9e@M. dzd\(FوTcCL^IP ϲDIx216}vtfZ4Ń|2TLmVjSzPek jT)8ޖy\>" Sɱ朅֠)oP^ otOs蜎ܷE$2C_:Mt"COs1б?| 83  ^Og8PKY=2{OKv.Jbj"u* `+VX͈ã.gq84;,rbDB,lߊd.N~jU]R+F3с q%zdڠSd6ÏqS A֣z]j'9`VQ삯ݣ.ї&`P4}"6|ZU<>h ؆~Ʀl~nRS?B ]sh6X\DGGRۭ(؏ԠOaբ/R:}Ϝu\!}iPs=ag&k|\%n@UG$#tK. @؟1D^^ 7R5Ni3}z@撪 /q7@MlV},wc89O@Lh{𥑅Mh;]Lj+X% Rf}@?C֜wIH`GyB`em9@{G,?EsR;.>DcDHNedYm3#8+,"!yK[肱*Q{eƻO+>W@ -sM#JDkYL'8Q/ͭa`S qb|򵰐oIR?]-vDPۙ].J+ܽ٢Rg&/ YbBzѱڱ3Sf^"( 2mIVqa1tsC|Qł-$݄>^JoSU!EV9=6iDu[*%&sOA Yz)?:q`>Ʈ} zl{aaQ6c U/HpڡJ>wޒ\>h.k%،s/M*34C "U61:h}Fa[9Lv5mt\D6 ϭ-z_z u5[2qs}V| PSzdPU,F el&ݠ*u62RN)=s_;5k:Aq[J@s Tr3g59"⡟;S.0wȥ"Gx vh/BՅze7fOodg_M۲rc2OfE<ڦ`{`hWJ'"A|X i4h+TW;3yNj pX!osxr :{Eƙ 7k=,uAb5hC ׵C2Js Q4Y=@fK:Z3ॗztupuwDSL>˕Hƾ2'v)A˕XNl9U2! Ly:<ԻGKYݩu峓@dZt7F-,+/|u^D }PR2 2\僤s"~Ԛ zvhȠ(}w?򋊑"P̓\C*/))hƇ[J}@A 7e6іu ,d(j󟤲?`QP'/wmhW U\sx*2O5=vDKrjr6}>/)d9̼)[2+Bm@[O~8({(s׳1Z_`;\C;׻8MTwwBh0U4 ]녴g% 8Ӈ.- Br P$ _a;RC0oA2 |%Rv^_pF2+q\v$1˰q/Tseˋ=noC!yN@qZכŕ9Q5^C[llG3qGͨ4zZ+irl%XC|hG7 3i/ SW9I&|R]@y<;=Ѓ(IMIqmVzkXF ӔsX0*fjylO+|-ZS\έz3f|4UPQPe+$RuOT&㒥XuaG]ش6Bit<`,j! (=5n`ÏU^ >gS̑qH7u+NVSc%mfG?j\X#h;Bf@XrXkouE g[k=lʼnTrp 3JP!Fp]a~9V)TMˊ?&.Z|]a`GW KCz8m(D2hUj/4t5GPHkE_5f$OM&ӌ2EG}3xs*+J}Q) XT}OVUOY.Fy;`z,v\gٙėkV ^Th@sѮAErV! (ʆOZ${4ُe' .L!qzfU-a i]p'v+ e h4+ srW^wcFmDzz&*r|9 )tbnf _-lH.=1-59x3$һ7t&OGTNոӓ d6i<z~u9&7no &MWwU!`ћ5>3uS8[ku7R HюhZZ]02 %<#&ťShŮ2%eHD4ZХrBFЁ=r&=j2CFFoӺ_KEXse(-wJf05 : ,TWn'<͘af][;:fOvRv Fz[ڽ&H ~ҙ6q:+<C: p"V_ir%ƌ '9tzp,N-FtOԽPL\\f >KvHCHda/Yl,Qv$,_L}CW>Mm{p[2)Ý:(=>2WȜd.8,}SK` ٪ ' ^c˧~U ]K0eV HYī(_(˾Òu->Fxj/TFTl]% =,X ah6KGχ}np"rMɸmFzFYywSm2n0iUiaǝ|R$ix | Z= HQuҤ%AsRw>iG j95/J%ST+Vox=IpJ5DpuSϑjmQ{]'i=]Ku'o<حMr vT|m}fM?ӂLOb`$YE\]$Og.ؕ=F

)^txn#t#ь fXOX-KϡȄAZj-Ӫ\,,6Ͽ#)k8y ] _8}T%3=et| J&TL}R xގ6UJKz`z57F 056}n!0E36iO f'騝bm:(kM瘝?"`3x/n3Mi qъ杒z2_@6HB#[챃q )Mu|PlL 5&.cz?96˦y1tKU^m*nTT0av#H&Ɖ,@y*Vv!qzF$FkNk/p`Hho}! ¨y+ns/]dTDK#~9fHSA~Μ(yl$+mdkBPi=9?Fq*oq`y$z2ǹEzY^ |m4iZZGM0fG_<懜"(w[:L.,lE?@KfhP7SھN0H'|Kxf>ϡ?4aw]*-QF'Ȝ̥Ft{C;!@QuZh3YPe7i{(ޣba628a >ْOw3E22["Wo`W!!m i=|(LCEO̊צSr[>K\=M\]r$ǙHU3]QJ';r=GhD$۷L5{[Pz tFV̡&k`W%*Tq}6!-LF Fo0! uaҧv rOA! * %ςq)}XhB1E5LTbC!mp 8}')w#v 3IKx۫TqAu-fĻ \ޑ^ƒ?;~+T4  P1%vP^,:d'DH+k>'mA奉LZ@̺tF_/ y=.!LvCN'(H"Ce:O,8dm6_ZET~"`J*oqQ\\!; գPuVâxiU3{l mwq@ϙC=WCJ?uޣV<<͊K|5'/#91$.!'[!W%xN|;/,)[') lY b>]s {aNy>-a|^'_@] %r3K $=]XLO(`LN㓓|wV*q8G$30_O}q=W3GˬN-t5+dQjDT/ O`_޸$p%(_PWjTS9R¾~~lҭDZoT^ppLX{>x&5[ے:ikAg@ƈY}*A>1wC)ߤhQ`j*4.*uќ:ʊ\AϺ> Nsx-ɲ5Z&y ߽y+րC۰δ[6eVA /-U:jUРvjrVU 1 4&9VyuHֹn<(~f+:: n%y,M#c/{)$e@[^~S#nZsñZuWbyBmUg\G`y@c'z8E{;A&\ -(Q\>Jyy‚XueU!XHF9Cb)q~kbg~P^y| P6t%x[ @]W옱M(Mp?x+ vDlRO*!]y~ou3qU(LLX֩@M*R4Ć6xsMmJu3Yex!6e.ߣ6rЩ lZd ʗ3 傫ZБNՐ6Թh7#)l3k)D @M~(6>{x9Z6&@S-23^hJ fwyff8RҌpOĎ}ȿu/Ef?'* UA=$NZoi{#&b 'H.;1pfiQ~<;FXCJyM>OGzM?5Ze ^DooXl`;Sl TW#TZՎP0]S3f)PC& (T:;| ^3!~ݡ`5!L 'r6 d*VOEzm>-8c[(|ls[^ϔ2MY kjy$j]) W[j4رGf.{:Ӷ *q3o԰Me()Dx'lȓvٜC-~Ґ#P t|t-k]>b<{*SבWŢdrZV,c]rdiήRmrExӛ T3&Vb/H0|k‹JA}}'Ffn PšXZD׻zUĞ&W'tV#S-NEلJ8!w f2˳HfIJ0Gcu󳳎̔8Bҕ£rBtIȢ˨8ws/,|Nm(XCJH &焯; ,.!ZJ;ڽMU3UjcBv\frC>w{Br"ޡ '3q0 Y9_Tws.:P,zK AiQ´wʧZz?]=! !r1~e¼ @35ȪÏ"Qߺ34t(] nǞ9Z mloFrѯtBNeu4ic .dZB=C0<++f"sR}Ǒ`@:lUM.;ViM`tHEg%lv4{Qd X? j35{-M]1n5E'pNSIqwp& aTҼ" w0Vu?h۲X0F~=eNȰGzLL21^R07J9aNٖ4Ng9RSjޥ25wƣ۠S/BS9\ x-b2ﻑ׹5Zo<\ x{Xz'ND?wK8i.>ێQ4<"kWĘ71`;Wv ߹EşR.iC6i tdzpqaWqN\/=z{!>F캷N] tqZf/usՙgy!})x\6zTۇ[V˘k[%re<5pj ?`*9} lw'O=| p]3kiLsi!T*S(L[ߤnv,I 3}پRfc32J2,\SP8ia F,+&EJO}`ntF|TovA)ࢷr[*<Rܚ+~iSRe.0q+ď=d&)²u 砝ΥmN!xp& " cM ɽKV`Ҕ{' 16X5+/ycUe-oܫ{ɮ^aSVxE0|·u'a@NN3+_:'b~M^kQT<")Lғ ngVPJ lI&6S"+"a3O7׳Dr6Q~UI Nȧ}ĞBo'MZ5=j)f6Io#Y70pxţ,lT1' A@:'U@]x`~ X)ȢZ"i i놦+iykFS(c?&uֵlfn;du3gy>Ѩwy8'wPH dӛZ@d Z9؍Xs9OZo AwvHr&ŬՐX>(Ff٭}ގ "bn(yEuiunLBO,b/qȈх ED.zi*`* 8^5(Y;xT;B!&>Hs.xZ&45jݚ0dgjhX0bBoHTuy/H&\kBk3U*=:n@E0Qty,F5N\T֣i)L}Pa{ >ANƓ{!m Ilᕍ#c{]mp I.oV$=$7U`J+/1XCEZY`9ȼ{̢3#y3bj-(hJ'l;iZ*Xrw ;0F2$Ӂ`)lKH^MH,iy"ēh2 <\.q;Ľ*ҙ8TKMLh_Z@H/ ?;f:%t*oAF+B\4kN6=sI%<}|N0 1B& 623f>8-~(O[p0hR#TGao>/eϝ3Gf?xG^tB,2_{"9y,NlkD!Zt bC.Y%'$Q{}mxb:Fj޸u]<8<#WĈFCq esskvE̶rZVV} jS5tyD^T&b/\ޕiF?'kT۵9TOv`{f4` bզHo_Ip3%Kl2|PKo}\&LY,Lu" jy)IO}EQ&̒_RHqmf0(bELqg2lV^w$&'}`^Ttwg$wceY*s~""@MFGvU+ !rȹ2qX=MM\&}}QI"ϑ{`9St)E#@@Q}s{Vˆ߳Pީ%m@$W.ziH\QKh\7\m ;n6T>N !iWǰpDx_C<;Kob#koB#X>G#gK2C~ gPSiHyd{_Qp`Y9 3tYnY~FYa/طP=9Lgq DVC7dFJ\/Q4 lv3Jx~ +*o(yz?iSDuv4jYύĎm&Bm3>{["br 4 ?w"GL/ddzXҹJaメ!G&=gtGO^טiYs)wv'ƛH)" j$CӲh1Rh~;; 6eDm6vӹ {w.ڽEz:>Z_C0z$\co;$O8L\iRyǦb"sK.S@<%oL x դ`|&`엝n$6蒵RkdXEPNk9+ ]PC0C"A2 dag7 f |:>j=&{U{Q)5ن՘p jF4;8bւ5/u]#iA=PjTZ]K40xs6`LpCdQHR@MT"&<Ǩ>&AvN="V­@E( ǫ1#jCv)PA͌02?kΉ$)kVJj;pI۰m9Si1f'O(r_ٰ%vD#rΆS0HP9KI8i{ዦpn2q!PWK7UNk5eDm,M ˳VQKI*Rٌ]H=:78SNyjY$-bA*_^9Q)2BBrS3ae~7-ɶji,7i.}d(eh1;RA=s>[l򈇮鞚HUWW"*UF'+e$q ₓNI%{C8S|t)-L6Ҷ q}̴}g8m?C b5OJ l}ަ5_%n˝r'8ʈW l:B v}VOCTshУ,` Z@|+`-[wC ;UUVnCpYXXxkd/_"S"vHV6%;LdďGbGXaui6,-cW}?J+k[sg/DxJX *Tr?,}}+]"7FW%rCz֙0,W o"ߝ71<̷H$ x^*,HľܳBh%,0aѲְC[ "bm_*R-aV}(?Jar̟(|V<e kfYf5dD/c!StW`h_Ʉd&Ώr;3t25. N8ZN塀UkQw>?^5AVp%YS cUe,P"ֹ:$/w- )5#yCd5(I <5 3q0vR0+ ?,Drt"8X={Lk (YiwуQkBqV[YA"tjJ 0\Jqc|Z9Rzt5a=e jjgB MjDdhzO^d !@B\~}IP ;FO%OI> 7Q`E#Ɵ3ۜ Tm:'+lAF*QO'=csX+@`g1>j IhFV/Gߴ- p#}b4-S[^4nɷxrB z\ʌΠSt5\r-knAbO$f=.VM3j@+qGFdrJ ߪ? S %%8ʛ oIIG]aax@cs+ҿKL>TOۨڦ t-H*aWTtܯqp!{*jX)&1`و5C)ʷ:Jaqu'8w}ơjhMn!Hv5,K#2 4):$0}❘i:QY-^FfNsHiUnoɡx'e (qGiT;;S2n'JX,t(dKW`DX)Ai-$իg`#l=:ȣ6/,Ex(;@dzyfLG-u+ oguE,>hyMtWb\YD0N߄)z4X ]2RII1][ۏ @|M؃rK-ȟ/SUҗG8g1 8pK|t (_ke:Ullr#,ֲ- I/ N𲥁`^[ԩm(~PlK3 F#$K/esUAjWIy2<-%ۈPxW'Sn[FG.:@4 u mRMzFt|Vd12z\& O&f\2؟vUL(^pӫc;\RK· bކ33}UD>΢ |e0+7L4~Μ#\Fs>|ܽLB&k9oGW9fyvu4^H(W̸Mڔ'B#wc#>{C)hTi$Q=۷otJfgTCZ7ovo>#]pg:J[43kp5mPjb7bx pzq\8hO2~&%jZsjyt}^lN#)U-£/KKu}`ѳ,MWR+ң[>Xek2 XD-JyJܩLJdqat!0_2^3~G*Y\n[4(%\n8tm6}{D:9͐Np9 rNaWE*ĺA]2a@crje3i6GHIw|JdڞećkkލUA{.LuđQ3߹ķ<ܻB+3UKðǤy@r9pQ5::xg\=TX:)F p`FÁDTuHBSn{\tƩ! ԑ(c JX& ? o#FAG}``ƈ$-W'Nڀ?4S #{u!;h\wAijQ 7Q*$dğ*= ^cg֗C yߑw=뉇c\Nԁb惍jb `00c:{86Sz8f!Kmt|Q0H&i>H`dޑF/Ȅ~6"^H0 'p(wIqTvCZt(B!le¡paW7Kz0`+%s>Ѫ[F1Y3ymze"k9r }8|T|t, &Gߔc(Z!ECdPl..( 7^UF7wL%Zr2:*f@8k x !t km(@0~ĸzMA*j.*?v򛎙(z&s 0SKf}Ыt[ DZ4#RxX 딴 :pNޢ9n<~M-MF!D~˦k!,[ k`1;V[ R>ay?yU ݎt;v hh<[]cf10Yݪ~LGQW? H h|6ЏBD`(tVS#P"uqQڅ.4(?,/Uchp"w\KG[5G>r嬳[tW޲9p2FlgeM{{8٘Ⱥ<\8JdNG<ʹ}p~Cʫ֛aJBa~Z-?So)2XrQ\UaAo,,nԖ&O'b/vlʦq'. B9YuN8a4'Ė'޸y n|8B1 9aF B##ZMҧ H^T`ba[;M%6YK!Kui(Z@xvC&`ӞI=MKuБӫKĘʇ r+MrDFk DRΗm,7t__kҀ))b!j9q3_e$sa,a.#{#z_ W4`_!a}3:Ԧ/t0VdbX"]~}%!gh)5凓pK͒Attz6b/Z|2>)J>ӗõ Q}ܫW8SV}MOӬN}EVF:[#ȍ)ܠSW̬֠J\WN෎t C-;db]Fd+ńYφe5oRN_';+df6 /a7gi~&\իՆe =;1R~+6t@9$/HO teS Ȗ4xϚ 9i=t:Tp _˒Q~ S՞;خ[ݜ<-^n$94l료}w*qd,0ox: 6җ UwX^; ) rTH GWF-BeOU1fTϖ샰cWBraGos:%TC+q9P];F97\O:H29ȭO]}5cW{1-w^\n"+"ШuW5l/ c7)^;}&c 'jG#Ẏ9G)04#$YM؎X5D@K)%5cLjx F:WpV$$GYL:¢/1Гr| sT'cRhFS]umڲ:U7S/80:]ˠ&H1b+T@9E:; ᥣ I#ȳ4s\#|>M Q Y\ԩj\~JϛEV԰ɀ2n̎& (T o[FMnAĝ"+(B8[mU ~3X6ـ, ++ Oc$fv) p 6ZU|p#ڍ,B#>%}Rw_dD^-|!-ElA.\*[%d]4YXuZ,uDsj= Gk"8"KY( =tqb]or"\nc$c7d㜲 \NuWKh*-]0ϭqQW>:u1F7 ADBuHejTp䌄zlTGA=݉ag.lUکj"9>R򲙑[E?jtqa{_F&,TpE>f l?lsI2 u(`+4mσ?(xthyxM:8<{nC;]1ecdzS<F1'_J1D @Gz /12H.Hàg-cfx柴[.ec?Ð4,)&UŴ3eܮd6 *3~Jf3'ॶ9!JB3FLE`Uǯ3Pdn_I+ՓiYC>$_nȏ/ܴ.^.տӥp mm[l w>M)N rBН73PۀM1b ;DzK<ܲPiN(_fXLeӟq@q0xh *>8]EH~#LSs&ɍ6hQu7[W<1`^Rer*QW`/2Qޛ|LeLR%8N\l4OAzS/:g&rTSǹ)FOzULէ)ߡԇ6Τp .)* u+v#l!Ri)W7WC\ښI_N~Av!Ol$\D ~&m%h&-LҔEGF1wu;0Z~Ձ`R9z[!wU{y۠oA9 ,fQ,Y2kׁΉ7)AďHw޾%`J?J̺bk-Ԩe!˪ر~iM65cM(e%qR?y|[oHmJ[@v{ cK ? R!&\a)FCl]9 |Wvpuq { t7eKG]˰ǻ^`az& .E};>9!g(d6c_2t m9¶lr (f="j> wUe:ʴzK@L[Q㾲RI(Rq&lm@\ewLTW ytvz d[,l}j۷CxȰ; F%*/O5 %s+r#l;q/ 0X1sБګ( |?Yɹ{" )C=JQWcd$(̬{k ~/uqLAD1TM$^K_Qx5PGdG0f0,"PduR"!j:k;{Q~좀. *챔1cdn{{c3M&<)%^6].X]ܚVI|oط(72u(Y@?7QRc9{/Y[ae$Eyr ̗'Ȥ6}~ZI=6L:/sN$-|#}Ǧ񞺸j Lq ߀CX2%@qYDǼ!JϏӞ"ڡwLr8j kS96mWW}tߝb&OHf0T= ޼nu =+ÿϚ j g͇@/~i@ *Km.d cbWDE7OyH଑[ :HqG 26Q<('Xr6(w(|澝&ǟ}qȃ^"4K-` rZu.hI,o ,[#tL/A"&e=2&7j)HTԉ*8A)n9%0 }"W^^`~vkeN~BV] 5eB_޶J6Id*-p5 }T$F@"WH&ڂ-TT';2 Ԯmtt^`Ӡ"m6^FoRH@GbV"{Nˇvƙ*QC t,޷b^ڹW*gLW} # P<=nEX/'_5<7F_{jx?z2?$UuR,*IyiO"HNn +ءAB|YSY(ipRl̊8^>v2KGBg?|brnrWФ =ʛfaa\1{pD?s;.X8s<'տa[{m !L6un+-УleHJ벡y_Ƽuiɦ?Q~\פ$a+=0vlC-l8NZu $kX+p^B鳂2!uKY>]bPs$:TQ4rkWI-&s:Gn1\s]tJJ$ {Pqojt~rܼvWG}R=<Q ;KrD9Y`nS ͅȥrzNhvyonkW^0?nvvͷuaj!Y 3e}^u 4HQ!GVއ[SoSL%,X6ps&Iooq˙bܙ'asMe~I٨ ?Y!d9q~`7uҒ4tcx:J.1 qzD>ꛍf*`R~Z'`֙ 0qk a, +ҭg./gcT2Q֐IŒa4A(ET7d>9%,{?sc_$Y}s>N'iiJio+u @%Aw}74ƁMV?b{fp#~%U yº֑N;tГ6LI 1Yhi{{.a)= OЄ g{PPmiQn̬*1H#8ME{ ڭ@X09_kIof$?5P5 jovgCw* s.ѱZl\iP>X/+MN6pH!ɡ]tȜg.>>t d1s|G.j(bO6G݉e lk1' $F)=0'0(`(x#kD8TzV$=x9H(T[m@ h(ܯ6%H)7X+:O^  1c..@bH+`x3:l 0wdѦv}F 7wO3'S?kSBi'w7Ƽn(iX2T;}|i눏G@D4~pBKzʓGo'“]Z^ X rEץ_7K:4ٽ \?Vw#< {|ܜoLLptsE镦>o@k2c.PoIm׼,nڄѮ bKZLیbsP?3<0O"j dJ4?$W=fa) Y?xhX8~K;ʴ&T f32(&9HWpaW O|WCLaJezT\#Y xօ>c=xl8[U|34O*N :!t ?z2]>6ˆ cF+ l}s xU] `*y̿F7᧺ @c&Lw/i$ .YzϰeINDcP-poĴ,RY뤱&"cT 4Z~ ²2K`SVQhڲEZq(smPC8ͳg~ܐ*DB,'W&h / 襺wSN)+یǽCJQ*J2n,@{!-/Y %rL 磧"(ìL5Hvx-h2JYJ0r2RBDЕ^T͜Go**o˃>ΓhԦak &7ɼc PhGq*ѐ5=',&{7.v/>HVڝq K89qeU !k6hZ t eI[-.VY gWP 8O\.]`Gp'iX+) whe=HF"1#]8^ 1sX &K7Z [UDb6dUܾ' h LpAc.ҟuxYK-XK ~,`ƭ&Ze[w-eD4/t|FV#~Ta̻R L0Mc_FQLZqvXGIVYʈK|E/ZQδCa*trp}IK9n[=/ύˈM$SuAc].(aW(|F) .[zyỻ㩭vϓg;8]B+N!. P Ttg\$G63[ Ɖk 15⛬In// -u̻yWLPC*ڂT>#:Z#ryq$qYbŖ@,c `pփg!XYtglbODX_<2nPHNbZ}<Q|HRّY;L+eJ. x;@m\v,u0Z6塺ym .cXpKm^scڊҟKA*aJZou4~X\4zXTygg(6 ż< +/cr䍑#7xw+>ď~NnǃޘeLm*j2ܩb:$dUYːѸTݠk:CPfpYgu:&*}8ƀ,쑅bڹCU#2rƍh+ ppѩAز{ggc獣)K@@(H??)]1ٹ>Z*hNTT,ЃHgɆ.I2.=HS*؃P v@^a_l ʿ+wCcYLn@&r-ϯp*^ǚ-o@W^_Fi-M!57Z_HrIY8bs!qu !5_+!h_ii yҸYɦ DEb8NK|{ %2Xt2THm,&TsCqYuGEdQ &X/LT5CGA@0lb6${Y }#N]&+.KzE.U08+Lj+4Osa3|9Bs yP#KЫOӗ>.&ʦ/wr?9b}˨۳5 ]!/XFeGY֮$`|ѳoznN」%)JA1$֏d|Ow8|M `b作|$kVǃ#sS̜3']HI&?S/14T h#v$S; Y0IH8|l ,*f-;PU^c#%di/\\_>@ SDW@=#vq8:6Bw8o}4P6K$8GRO Z!8 䢞Bu0C?AztW{nZD;/f*} ݜA_~G VOJzg6[ *Zscb&/czFQ1ѿS)\'} M&@0HDJΉPyet6f-$TF?2qWiq1={H*P՘Мz !yi8k@=a·orQnLhnaTRff" d!0kNyµ1)C.G+nPu%$ȋd 6U"B+-@FZ飤(ȻcR ͺc^5erlHE'k;p8H5ڨPt27m¹)"r*qVNsvaoԟzQU$rk⠚{cGa;v #N'*~.wOW!J[,פbekg#M Q6{׊?=d@7~)"jk8S"$vΨjZpSu-@ͫpṱ %wݡh'ĨL7g߹0.AN/ƅR<EMNI]q=f3[/ .>|83>uh;aWw>V4ae#Q4(Sr~ ,Wv!5u`ys.*_NYX% 1r;-iG'c@c2Xʮ8]Q)+Akyj7Hm(i *,UAGK].34DteJ& qdV^ۂڶo3g9w%>9'Jxj*G:$ـV%g+zL>2X nCo<=|XЈ`y\p 0tg[;euƛԋ(#INI{G4)6K N 4O9/v&F'a٭#g D.S&VɒWg(w [03@_xx*h9[a*? 2, Fxj+ڿu+ be(xUZp`Qfo@~/ 8rՋi) oy$N>8Xm?z:}wqx=ee4A2TJEg[ΜEUOk,-WqCɐl ?[|,:wsm)(dA0*I;SRyP!= b33mN v2/ Z3w!Jm k_ ?nJy:-Aek96;ul;~}q@כs6N9صG7De{)qMdjoP}Um C\`z!=){,$*-'r$c6[=*90ZSE*3m4Dŋ5+Z٨Hi ^:m2- HL+|')͆usxEʾaߩg'MCڱ1IVrDid YKUZ:j>Ę}|ۊE"!bdeJv`B"̩2RwfڸВN޷YFQݟ Xzi$[{T+gHyZ`Re@?0a^RmW/ F@'7t <Dh-m93}-)=/N6VjBصtIOe@fggde2[xg/׷:"_z}lW &[pv 0#J FҰjYK,S9 q'3{7Nb;ܡ˕jOuK 5[1rzwqN0k!O6M%˗I2)T4[` F(9ҁhfټy}w#{3UM4s@'<䖈gM"g3 ~hBz+#۞PڭqV>M3kUL@K31*;">6pH}<ڕy2vxҘZ8w;|Ã[TۀvZs1D1Nsdlv`ReWaplj(I2?qYct޺WqP uҐ1jਝytGox6A1USOD\v WnR`h _ So۽ D (߂OV-WQ;4p1!BjNrgxdgF@ql?MHWVA?s.IsL̲*WW}]͜(v##WØ+^sv/0O]&@Tn}ܵUu$fauvw,8;JUҮ@O8`F8z9{PĨ(2Bބgc*@OMWL+-b  8RhieF ](3ɀg\tY$5n N3nf5 |2Ӯ0U?F tV(n_?m1 X?s?'`/T GWf#6`Kq ZDwZp'Iؙ"k#p ,S1$+7~lhULy҆Ğyc+kRCg7 huH&>XXB}VV_ k:TB+dgd*ܗ$Veyʿ7uȬcj jӄTTTlu;`e8c9߈؃FmgU>hE$vtJƽp`0eUSiC oY(>sfU؝>ٚǃ$ɩP9^ ϼN+=Qt٤;3*A-ᄔ0p,S,CAŶJ~7F< ~GE-UL<~{VrBj#⹙0YScAV^M|sӹ CT{{Qi.26t}ȳeZ⢒ùt*"UjD:nCI{&PP)MW1 n$&R|g`QPϸ^I NCI/2I+x+ɥ6֢WcKarI CP|^}FBjGEЩ[Pu {삈6'@Oe~kƝ?m,H0H̸o5zkYxLyaZ*Z`cEUo+Q9sy5z*B_aK`6N0I -חiVC]y6x.HXx^M0{ #)VВ -23ɋ>sW_ d G3{{Ǔ(p5cBaUF^wc2~zb rSS&L (wwdSqƹuB4>n3 *2+Dd nKPowrEӈ Hv]UNDml.y'(yqJ賨wM!p8 YZ9GPhk ЉPLrX㞝4r<(B|@<,j9Xz6;pg&@u|&щz \픏 yPwj9EeQ9K? ؘ)!C6WpрbaV1dezc]DNB(m`X8b_/`A";zEj!X}nAsi~Q_(^`@! . $^ݦ&{cVEǦУ$LU;X<|?vKF+o%}n4].,I#A{Pf(K1Ղ߸7)w1Y(_}n q8 $^]Ւ F tDp~Pipam[VmoOղ)v`j4Z"Mv?^nv'kjP+2-a'!zC^CLfx$.Kثv}Ϋ+ exQ.:q 6?;G#{s!1N}뤏aꃀˑb1#(|4FW.LoH yytn۴oZ(t[bnL=7ZpQJ-l<>}QҘVPJN4#ANCyzdE0 dz!S -ݐ5ͮEPS۳vr s8_Gdpcy8y A0=A__ EU_y蛿jL:L\B&VVD^ '/ƣM&n:* PXc5Ω֫oS/` 6@, xܣY8aʴgl9h9_2`Ϻ'oՔ M@>ZcS(.bO챧Z07F28y i`Q.["ZY jcV%`Gibm|Łgs]~.7:u9ڤ*Lg ݤjMO]Rr{`SuJrYSȒWYm %K'INDǐc6Z_ Pi -lאCC@(ΡAb|f >pt6bik)4W@R@_Y|_}WvI)r/C%eQ F T d:o @{\x!Ifc+ZgEmybM^+Dݸ7];q%}U| %Q02C! o.12:MbZ%i4ȠϚrLt:F}Pkg)gM-+ٔH:Gѵ0Nޗ2ـ=z=:x)+qb0JY\6sDBL lBcIÑ. 2e: 5潊Z#~r-s06gpz6*v_?$z7!0k$DǦV |_=Dž ;I*=E3Cf/__z]S2$ H֌uVDQS-uW }׶4 x[F& c/zjՀsC3+w1'yxkVFࣗiUj"r\aɱS$;h+7wۮ@qraס- Xv@[bK7cs%df/&j_w@jc@v #ENΧto@eTBI.ǡ{;^2 2YyOᔑYRbWW܈ˣ[A=Ti3w?,֐fRw\eBT8S5mv;4yx(x9OcC YYK˕UTb5qKc/r4KP"picUڊYJ L{_X,R Մ:n0{]e`X^N} ?N46iǪfSY,REp`&yKأ3m@;yn:7wk2gLU{C&~p}?9A3:SzjvwYv5%dH>^1w@+^l4HoLdU3ycLMϜ:`MzZ2FhRӈWG놀}oVDdyx";ta5?sHĐP?\Q=ˬN<%X֋RISbY&!8: 1!q&"~5ػ绗bwzDI'^zEb|6_7"~% +u!/H[?%-\*vS 8(Re"S]Q$~:/>y )cvj^}̼e 'ݭ"Ѩ NjQv_'N`%6M /s ZxiC ˕=U27x;OasX쮪 9yN%l#A&)PK} +Q] W%SYI>*j+# kx,{|Lѕb[&n!o$/-XT0aݛ?(6lhBF$D F'b[< (AwɌ-1}en9j`ɯH#6_63as]wGvf[ S<ΌUV/]QDlTX}1-et?1s6v]8kKNu9="ߎAj]& %Kàu[EFgVq"n%M엝A|Jb:I~$q_OX1hGry- B-ݸS>z8>‹4D_,8P~ ;IJw `VZ $'Qo'g rA}Oi7&VbD$ _1}kw3'70t\;#nT3@{L\O,ojM" qk¦d1 =1EMcGBKri\_ 4+=%T`u t:; VlIؤ (*2 Ϣ,p?Tz1F㍹RU7"YOvIv–%nq~p,YMR,oo.`Bɩ ӫ<;fJ*h|ȜL_]cd5ݕL`td^g ϋX`_ۛ")zsu(qzi^lxkZ7Vg[hGUyO<G]&:FX2dkP)xAx~ 7UQ3@n nvKfoco:rQJzHfZI4B W):tgM9y?B}#2[C4xz ޚ-lcC2~նerx)~A'Ġ)EQ^N#Ӫ]jp 蚽HQb>6n(`U_G ʐ-򩘋Y'vk'q0RXR[gTġČe)Сj>%cAįf$q,XY^fm<%VTK8ƀ?B$0>]YwMn_xp|)1 ՙhTzi9-+RpE3Bnwoh0bD뢟|Bajb:)}Q(F<ްAs=__vCqUm2 ix`\q 0E?utqrQ^P_;V~Ѥ[`\NA4#zytI*#e'"Fԇm1B?J-Gm V@#*)$HQ+\UےXK&1 m%vzfel<Ii8y4wbT% DP5[=V`4=µ }أsFy٩sƃ&hjZ*'/eVK}W7@&ÃNbph+Xy2͒= )F*3LĖ?u,oZ9׫D=CqY(H^ 271<_~o$J-@yZ k2't[)O,cvxJ;:}sw{rӠhA ?))ϬH+ AK3MWj`nA#gVex7k\[LT@la*SC"B95WΝKWJ\^\wR6}ܹjuS) z_ |D)o**kYc֓~BFRŧ3s~6B'yh^Yq,QOiA҈2M='^rc(=?2"-Zx8,~ KLB Y-bHХ)~.gPisr+氯 T 2 R|a{M&R:Yaki2@4o<Iu]xNN?ÌTTl*LʨVKH8K P{t8q2o1aAfcY{O)a' VڀeԂX퇛$19ԥݘr0:\dI}t}1 W`,WsKz?;,%[F)gwXc+FOs]E$K%}{X N;SՀy5& ='j?u/ lnX]#?ׅ&[!T$zp(n\5.(+ æZ]hH! \Fs""ԙ{ v(]n B%U+%cKtijA:ZSK׃Hq2DL_ y[pMCnO/;/{4~;2>ۂ)D$"%PA8"czqjP\7 9V>߄ncHIJ))T0!yS'=56J]tUMMUE?&x׍+U(KAvd[$NT7eCհ yz''*l* RY86{\:,8M위ju( =q*KųsD`]Mq!v@6JB\ A+Y\tc]nNӄ.(Ov7BARU+(_wy|g¯N]c̈́-]{ nonCܤwxW&b!e`V&;Js 2ʹ o#)9ZQ-5 @/"?Qu"b&4%hЕW&OL(p)}>غJ*a2kmcp5n`d&pp";9-y[F?0!㺏r ?!V/PH'YÍXꂺ2i4~C\ -^AyLQ:~zSS]oCƳ<ů~R?mUrAR4e@y{GV:aJ(K`|o3r=<72)0: !)*=wL;3t_bPcx)`cnHiazeEqݶ7($PbEn)+ZVGYO%Wr5 ! l8P_zo33"" :hET|nl>7bIXJ 39xb+w3{~xL)Ð]tO=xԒG$Eٟ'f4ϐ Qe21ӹFO9L @*_3Zbm[56aACOhDx- <j LJo 2d0h):A^$x˒O^u:7ݠ5F+g|Pa*Ή/P_0\pqĠ BaL:["UT nwOl*8J]K={iѮŃ.{g6$ Kk9ag\X ZBNjU $W7̐A!r|l'f+2pDQ͈F[TJu Sc{Qņy $Hcae#-PHHT*NS#Xo@bq`TFĺxԃL'ߎuv.$1\~W1K~O7H2JwNsv+ QS@1͎,@> #jyR0.&v4salc G"\XGwy<25sKWzj +VlƾB›%崠 &3V.Fݑ@L!\x&.ٮ< QAgqA (\)&Q;virKB!W l>s"Q)! :C~󋘕ᯤOnb9b7KTr3$m?-9$'7=d1re7Y0KƿDΪX۪A_q0]51(} ]mF;l忌Ջ2S/'ۻ]O@0a.p=149cs?R7-e |7~\\\'Ʉ:Oڼ4lF'&|ge2Su.p.'+0+GXC21~x8O۶1C- {#mGXh UR~mYez9~-- 8Z?a']Z9*4ʼnfv+Ox*z|<mLg@'+"<ֽϧ%a eؕVJ=P9 $#hb ?`¸Zz@F>Q2!Gw *\?NCD|9Ⱦ4=~0&k RPt[vZu%yW6M[Is*({ُ3T6nIFjR?٭ f\Aтy鋰GMHKzw-w!K7wcl݅ji6Eqұӆf*Kzay'a1;|5ƫ_{%c>: = _p {?{F˅A4co5 ?Nev31٭R>c@Bk?UF(W`WJ!,&ޟئżUBFQY/%qX[Mt|},|Fʷ;meV}\*3cazsT揨o޷YTo:v9u$'PzߢӂbVDI>#g"T?w=@..mlՊ ,|G*jS T޷3) i-O(_vtT5ӟh"wnFT(c)[#T}o2W2&ϑ⪻Mg$4WOX=xN詑c 0(cM )#ah&rYpfp؁5^6 }v`}x>0ƁrےG\D/-ᒲ߅%".-,}}m@ޅrǡ#z d~7"hb˸ң Glfǻ 9y unMij#M,]za0Vg0r(Rs1a-M,Nly7q)iUsk2c; 8ӃԄ8+ [J ˭28{B1-*-<!ZN %u{<{>(OLMhsA"ϽW kڗAw#/}s>n!y:H44 Uox\FchwWgy_T̗i^mbK c>9 &EHX;T>hy4IFDNX7mӃg鍓Z {ߙə,]NLb(y,or/GPQEdHJ|n C g BB` 2KJQ9pk`ڹ@N_ *鱉0#)C"dy}R,U5]!n]3)V5ڰ'H[omNj鏓F A d&pWdb!C+Hrp=r#!KKm&8|#!Q;_u`4^A׬cuj@FXuyQ]#PC)cA2R@kVyX)$R&˄)<:SA6H}lAP\1%]ܦx#:crdFdV [ ]jr_j`6}璛Iٽn_oॾE(BPfܓu <-vBHz}Cy8X[{P%[/VAEeQ>*Ԕ5k%7C`,61S{ZHtWX9i/8$P_;Nd) K&-x@X3kd樜:C6`*g>s,u6xP]O8^ )&i |C`]ԩC>wFY7Τa@x\  KEt'FǺ|?'6r &Z{SAmrk퓅R$FT۩LN7,o?ZN6=3b5u|x:&:'S S^6#Mc%`Qrq-, yRl='ָIi@9aUqrw1xt`w W)CN~N j't=8p=0<޵;#X8~V< O3$7uFPh .yBsSP)J 긗.>In{m/BLHYy^|d.. >Ja5fG}Lbz嘖x&﮻jv =>4(EQ#2+uMZbg6 i|½6%Ta{KXpִXޟЙU1s,fK44߶߼ ՞Q"3re`?ۡ#'ČLέ R?ﶮq'募l#@jzmSR$2y\Ү$$W[{,A..6y-F-ST$sġ sh(t5 FinXHԂs'J| }OС PEQYCtwI#~^G$< dq$h+y&bYxk¿oCIX r\ UFz|-C8@xM;?^VDVB#NP;l% yy QCvHx9Ov[3@E&NowH%[oO̚r-oj:ڸeSgŻGI܆ '%[K/˒A;vz~ʩcћ/Kϑ1twrŒ%vSn'(UE>gҾFVDz_.\ſ>oYqa`^ _m6"UJc!Y 3Q1m%-5:HIԹ}5][DOhhgM}3"S<ڂ<\S+Yw;4U =RעZ9<74 ~}jp ;x^jikxR'@\='r}fy ޻~ {?pd,WyBd C!e\mBW4t*fkQsvAK: ]rпK;Anp(XbH:_ ѱS"~8Cq㻮&5X[g;)?Lϡ;=l`mk!s){h~8k 8c ǖ᲻uXa5 SRjx<;92rvXzEԢKbgl`i궯ߐ w'9&4A8m+4n @(78cNTv.zݹ?9QhԇO}e(G+B-f^'e="v/nHDFLuipFr !H V/)"#B| EqFh{W1wQZJ7Y\i>,RPJb6lcx@q)$]swASťBrgMcXC&Z2m pD Q~f`<4lv .u\ě[fv 'u/c,{O$H`N| ,]&xE X1a8)O6e"2۔㟳:-JR{6ʚ1B:\U'x`V^qS>"vKd^>o{g̣w\DOZ/!i YrYTK8$(GZ4|30Qif?QՔ%]&-bu1\h]g(Olb'92fR63u&"~HdeWyvem-|1BU5@+爒:=Z V]v&Z5,^VL?.:-LdwL*ji/9Z`߽I慽MdI:(jsb-&f7 jl3H pׯzxWO98 E;v.%86ګ?:[|al0a8j~y#j`=x1HMmrr~w1n:Q;<XyߧNG~"Dlȇ _\NceOs9idkm1l&_xx),RaҒT?%s#E_'Z(AeOK?$(p 7eۍ+bĘӊb뇋ɠ=0%spDE_oC(׬`#gX[5qdM6SXqyM ڌԭNs:GVSb UPS0Þ̎1./3;6 LI6kW ,b9gȈ5Tud5"V-XsSjx*wj )0r)<8<3jO+$[d qKȓg6z6ekݔ|ف-o^Cg-3I+wt潛m uV $3 k5az:M?`fpbNtUUMuV QdOREYsò|4mVֳeY hF1IɋV~aCX8: = <[dgDm79 Thf)&3gW2# XM4 !Zqj=SgW믣*p 34\)'u964QX_-`>33/d2 {Ps^#leqP,}PۥY ݐ|;Z`!tD5}C ٢kMjv%QtR) 2Vwx^A1M:'1.C3 }Iw K4kJn S!>0wgl%餅ⴭ/$\.8xjgh]W~xeYXOreGgǩ8!hEè4 _C0@éݹf3d>ks;31۾k,ވ,XMc>E`r_.@(S`lOj!/*HEg` _Nc$؃G;jzThUcuޗjQ9^V,zX`N&BKWL;Z6pzoUMX@gq.& >ƹ4cKwPPx,f6FcjީfCF}:*,X9BbF-*E=ΩX8=f}{uj eUuM\#s# N&lܡII0{naɽPCmZqG>B/BD&z4f8ٗ9JN2%F+oEaF,-^|?ҙ歖*'؝F?|J${>R8);XPY>{tf8W9hn'w`Tk5oqN[]A#2=,aj Jᾎ-&d}<(vԋ'߶1 m m/dz1{9BT~w!MQr={ 7,Z<ޚg ɟzIiMU{;q6]+BA|"aFN:*S;" UxpDEaY}F ʹQwx s;S#Q>S*K4fsơĖ(ZfUHA}Gq<L՛`c!ӘADB`V鍗4~p҃NJ%iA޿82b9Jrg2)RED{o}fS=|vE8Q#Qd nѬ]E]rT?"98/]G#k8H6";; Em3Çp R_,=ö~NGu\ګ4\C&F%.xGucxLSZy,ʪ`x*ߴ$U 0SQ]%tE4sJ62i ݪ`.:Cqkj0ÉrtUh<  %p{|ԓ:meя+"Yob>&,ҖoDgH,{@$`}LJ;ۭ>WG=6Flb^: UӝIYs*l)We y`Hd Cuf/0όۭ 8mX9-H C~8Cpjzg )0 ~!hGwMVorg;钻; jxߤ\؎pJc߽?;KƉg"yC !ĭK=ثqi+\E͡6eR ABl:˓kq;|.u;˛Q]y:K/!I)Giݶ)rVspK>=(|F$M9u>tLh`SNeGc_W|P *lxd*yB߄kSwHy\\P|T e A;␃c+.2ggSo-BGk:#YMϗD}ϰ͝ ^O[0oyXSvua&R*$\a͚C&Uk8='uoNQ9ɎkAi9MSS+u1buLh w*v\/<[R)gk-]6!(4'Yr%?~<̥9Jii)|C!(V5_-X#V)rhQH$LKpCM6RH+T\S8.ED9P΂S "I&3iEE b߆.8G&flSC'8}-ßSj>ȍ]3xS/>♌""П]+7dC0|_Zs*_dX63iSNC,<&CO;1 KTC;_:7[;|4G ;]> RO=($Ő>ZN;[ _rqrO'V}{EDŽgu~2Ѓ<]MfqYUr hrh j$orq oDM`:8"`O"QhYqaeP`կ.Z~"1 rH^@9صՓ̎6+G<+y,ّOL:.w\8C~H\VЙWBj}fٴL۽d6]~S3ldh'˒~w!Ub7IbKl iwfuywNvAŴ9B_7pc3Q|=lz*ESɈIytTi;/YmaI[|҂NISMT8Gh O `^׉v\Q8>vTCH8{Aa)cݴ m A :E[k1Ȭ#'ǖ"j΋21mmnb/m+/|Ս+b&XUl00[_eנos}i:-ZP)8K@+zC7]Jݭ :;,oTsם~u͌H"j7k 078'CG,ǍL'I[OM;(x<*጑M{ jQ8^ XPQ-I>o~JaOу+Wc׫mc<ÊAIr3_9pt>, UA.ކW6YU1]פ<7_r_w-҉(?"234FJ'N ;/ ?oh}м: ;j/ GUoԍ^N+ъywYG Ysvh:ߺYqWKp١lٛI+w^lnjVeg \Tle9 ~^s#>vx \A2qo!:l_m~ʩkui\u%͊w#C0n'%k.8$AsQhJ ˇU`%*^[l_TYj{D|wg;㳒ޤ| UyLRm3kiYȀqb=۠1·ؐ&%0X%}_͙jzF[jn&|&)yy 1CS)+GjV $ aR\h~1mo>*d,L<8'K e3-"A3I`UeQ$}*?g%2d$H6_OzU <$(%9e&N3~#rKǛZF3TNu+sO 빞9 b:џ2tѐ՜H_Vd@^L!t25CtR@fiWQ$t/f;߫cxZޤuX 9v]ݦ10c84[7Vg{¨*`'@# 4,y,"٤QF%+%hosV.(]&Jm$@S9V?ؕ44G8; ,wFp@}QfycBj1u_*朳UPj՛[1myMV7W JMVvͤfQY:+ލ5{RzZla6U-ߓ?Qi[XK.ª]e,p7I/=_I;^0UJ9Q+H NQT3KI⋨ hc~撝-.nRP)8@uUcEWo`UૺJ}Zrk7 AY?}mdbqPR= ظ~ aa`$%zd&:$.Lz};^pHk3[竽>gCt6UW"sSK I,=-j4,Xʵc2/Uב8]>L|D8u&&ﱠ-{H/L $f(R9P׉!7E;oxG 4)TSV1h})uE;ş1{GՄ̤ (R\O(axc)n4[jά"y71)`tyIdϿ Y2M-νG 4 Os6_0|V{Cg*#zzM{.ܲ{a)d)*>ɩ ͡P@'UhL jq/h3GjY]ttL$7j럈]2>v픇~FK00[!hO)Q^~jP(]CO=5}l_qw\'XǕ&ܟ?FJn^n)A.bGXs.J8:2& db`7% `.GEZJx".(3T?7j uqQZ9ծzw {2nѦ %ܢ|^Wr=f$'&9.L)t ^V*[ i m2D&N/@hrQ8Ly*' Jx2z[iTrAߧ% GVIȢôU䰟MT g1FyE%s3s#O0՘-ŖGe1j / бf8&;33ѽO ?Qu#efoFrB>5Н\DZ=!:pZ[hGWHxm"N2RAW,_cZ>,%{  w<7WV{Wߪ |DL|.X >=WBrm4Q%_s8qy[Ɗ5hp}.ښkʱ{RGZ_JhǕZ!kL5eW$IqI2˱R^Ĩ^G֯V𙱋r*̝'IH0t;}}fv,1qAyl֔998 D Ej<(gd#\k/[(@L=cK 鯑em/#vU.np+/`Ji{ ݹʀzia('X̀maqK=mu/A`\8FH>Kghà Yf~`<*aJ4G+0Յ`&/R]k܃Y?+-Mπ2I$SLo^lz?JUZkMW}yb8LERaN8=b81.˥Pf*|= *n5l <{SV_:}%5KJPǢ-8T;xHs+>zs $2s[ǻW}?D`~꺟rJ,51Fz't&uR'}1dL:u uZ4zo~ '#()+2c2Ehe__bdh?ka ]1Ep[4F|O ohOT&8? (2s_RyU9 `.}c.E'vimCȬ:e-G.;X1Kq55"cK}Ḱ6vw63eEuH<=Vx/;[aZ3+%y~O*;`ڏa\&=~KbJRܓ6w ;UNvʋg?9dxokxd~?T{gZc ί{p7L#RI%HjE_ WnNۢZk/ ޭr4MV'%Sbb+cϷ 9֍͒z[G+|spD՟]qB i<ʜ8ݐn@N'B#;Coxw6Ҥ̞Tdd8^ľK*;F+W3vC b×TUuF ]rBi,\ZU)P|ZeJF!cFI-CFY/7Pa{:`CdyprLFZ` H3\g~NލYdUʓNgYn˒1mo.fP$k@[|&=iyX,"Q3PLxE%P1&x)PL͚v"Q&BR{58LW/;ے拶6JE6 >X0  U)s;LE:9&h.tfFyo5UIB}-(?'W\_^)Sz.< we7N(!cƼ?o:J y(bu@h$OgM{3bDs1.7lBw)ΛáJ_՟BvXTNU+GLIf1K1'b\:mf!'*1EӦ_W f:}E0nu}[+"YۦS ^r*R)>=]}@KTz\` gIM5';D?yUp2Нx஑?=?qϟp|邿/c .+]v${{cOz-k#.בnl2O*oй9b,%S"w[d%#VP]7l_{I6вv6஠ndFl+~NFAwPw`G"RA(E#R7PS9pʝn6-[Gw}3M=\d,W}ʓML'fT _&&Ӿa,h_NǢx''_й%yu4yY^c4K!R5p+8\\~LBQtvD4eGbz$f/֟yU0vOޥO648?htQj~ɔs>򴱆H8G~$MʃGW@DJ"?I|R`(~nn)ƿ o^婝קQ# j>3CB7v_E%;e7'Qxq0LN⛞Rt\_|*[=e&|˶yP?LÞ6QVνG~}h)O 2TU~4J ն|IVxnk,A̯ O`o<& 5kb!OA2CKSQ4aNk+!.sH4 5pߌG`KjJC];'%6ޕ{I,01Ch@1`26#rUj{$R8:&|եbCAN,\, ta $"1Y+`_W 8f >HH09džM;|Q턟ꂜ׳ĕ*'T4!Hx' } mX qTѮxŔ*X&:VѦS_`[IV(*F+|l3QVWr]e+ ~`ZsMg}(u|{6hΫQRkDՋjnF9Oˢ+s1 >n:=D8STct`"s CuPrI;ėu*!(|8F_3rl 7J@;ݤ9]+l>tg"h;S#vfmK$n䔅s|pT(m5?lVK͈ogA=tMrRK$PU‰!hDa]Y"FÎ 寀͸5Uُ)3^hC_/ҁfF@{9Jmb&&$ `YƶHH& X x;: 2WUS_ ߖ%!9 xB>iQ :4[\n#\Q*&"*>b3xw?y}I1+^8冷s%:v .)1p.eތt|.u2>ŇEa{D eH 9z^J1݉M>sAЀ sؐsYX3UF[-<|=TuҐ%KY wxPʝۡ50\z2{k0f2~l&w|[8c|K\Kx~0M/L6F,j5klu0]dW}(j 0ܘ[ىjJuk@YzV $+LS5O~R'3w7&+oJ;STX`eJ,, C 3h0Ƴ@w"Qs 'ݻW)Xh|Q;r9/&b9D=Mg_6?Zmyx ZߥMRo}5&\nH7'[ݦ0jQiyQŋ5DJ\70/Umפh[F`ӅSam>[ZCo`MUKF"5u9M&G;&ܢ^LCL 9|W1pr+ q3V'v"!dų:pv># eyOgn2(g"[N3S}m mÈ랦?<&pW(ctdiS XF11ω^~C jb!ωzDm{:0 wֿ߁ m3v-ahnwp'XI{ׇ?bHGIƔC0V؁߿>cX m#+C)8.`09eK[U"'ݑ#ne+aoW? +0#lGt$mP\A|K}s乲' ,YXCnZ~!E[=ae]) "Z eg1tosHy&%ʩY/o+i f|zRDlR4"lm /P)ZGe0uE-~g^QK)镁\$3MˢUTY*)PǑMXwmVڭcЎ!4,!5_ׯ+BI;B,J.+ e$ _`|ZwaH)VqֈHȯ5')֠:5'KQa+0bH_`qڮ!T+;% ߖV(o !B‘ ^n= C;Vz{,Ȍ0q~8ZoO9lۮ`W*:og@ ѧ~,3~nޅfO;d= NPX[ SOD1\*vi~~OlZFGـ +-Y1PYBOzd]en*W;1lS\!m%X#U҄DjQ2NE 1Jp > r֐/;%}ł Oj.]m֕T-U m3ެ.n kB":q8܏/&)2p H,*t  )U|0q;DRך8,A)[2rM*|+GGSA3Cꍎa(i5dK%Qa@'.S Wdb?*+mGK&bEI=g;b0jϬR"Y!ab.>1{5t>HLJn$ ᧹^lqNUh;{n(ۓsh)5g8bYfpZ|EZy\jq巍<ԕcf?7L.|D|8p-~Ͽ}13,i$:*g,OoyĪ|m yɿ'! 5VG7ӟA4rBk ɹ|rWnV 3"6ڜz`|Qt"dj"wzYftSGD*{ersp -C&^ɀؼ6E,b́= (cv2s|]?-랁5`i$:uB 9/㣬W@묁̩s]̕T4Pbyw{*wc.13me}Jބ%ŰRHR  )F,~rwRaoY0?!r|7pQm}ٕRDgll&? S/'?xO#m vUBƓzG@ aN˨2"n$( 1>oM ^]N>EI6KS5D/幹sD">q@#L:R$&Oʳ4Gn;ڣ|:$φrePCHq ϒdBF_6S:(Ζ7JIRB)}fXn3NQ7ȦXGS "F守8ʃ~.p)B'{`gR;u886FדMu@vw~Z1~nsEHR/#G5NV#GXV Q 5)ϝiO"7&6:9XСpRԈAf;e)I-dcn{dJbZJϞ<=+9kixZ!7OjnnD)a6l2ROh.o2M|a~; v▚x4@h"vơ&9*)Բ48o&4u>t=ZwHQpus`bh>|bcR;x1>)BF-6,$|i lp@g[V=32yfezEJx &/YZu@S_GlW`CZ5مU>ž3^!(M ='D@KhZI_Behf $zbQD=|z;h-f= 8ԗ˪eLk2z <k[KoZIXẀyArR7av}_*mnmCP)uq 5d?Kz yGܥy'o@0Q Zb ڊɍ?+&y,6Hwy_څx߁qjKP޹pȷz J>=xE&<(/ŬO H^JjvQBnVhEE?UȼPM^f x~r##-n3|?(8/J]$A" K3%°^1|ӳ+ CwF* "cinVnr|uGA:Ji",*$ KM¦#?XLhT=Z[;Hh.``i.f讪l̽b{(+u7)<*_J!s{%1dVӡ^+FwDq/V5g''w Hὴ6yw<_S uU +W%&G"ok TWZS{:t)]nL&I|搄) BnOR؃is>{+/!ѕg?µVl=vaoK4|,b~a0>Y/,r))bSOh2-e|I{)Lq\ۀ~6J3* )(ܠ;AzFegm1!q{_6 | DTxhق͛~FmJ5=^*ymzjH`" p=3t!ث\%z3נ( ^imLI'vbl>QzP(ױ>l*IU}쩍:t2cZ 8X9CI+t)IG+}9SAHٔlY^p|`Ӷs*]wi=,TflfIA&r](A.9=ڴry^v :r4vrY[ۋX5uol(ǫZ8"RKrh'^xޛK9|ki1Z<#0QXHļl.8&U}0#%Ȼf %M,l!Z0(KJ5jn1,ǿԜM8Geyvue9*g ׯ!K㙸y~ &ϯ.`Hh[:<|xV+R@mXk.!;K,΋^dqA<Ze` ۴X4qA QX1EjaN#ˡi/E˧ AءE1bb"Wn8ceԚ&*}%Jm;6}h4^66:HY_' yip+X4]SDm5p3>I~Fb@ˎ jhivrb>jFE^!|(jٴl.=N-/"_yr3CYKeMy5Yw.h3, 4žGθd(1 Oݱ݇*2dD]!&Pû-*FT Z :"Boٻ<#-F>YYw$UگD1e᳉YFnǓz}b*胑elQԧ_M 4XS㾜*݆LKAQH-o}n1N6G_ox{wH>O3$Ri_zW}0_g@R+ϖjFbQٵJ'!u ?GPu'('Ϯ:؋o[@K™VBDUep7aX4}%gf$ubĴ@{2xY!{Z%]qr#2`EWZϖDy¤Vj$9'_y}b M \ XfP8|kŤ-JIaA$KC$D_8T2rnپVbqIPK 9")VXcȮ&XӆLiJ&RyW XCC&Rf 30U ,zQdIVDOd7xea~G;ԗT]`ŜR9{46{i ^hVw^D O1| afغr(Z9">^M}Wz7zX&/^'Zk%5F{ %C,,B+NkZg_ͬR"P!n9iAZEW|Wx+[6Tv<-F(b"w rWA^9.EPR|bRm-UrBKft&בӌLyRtW5=Y2_mI RCR0Oa5Aٔa9u %,`>fNm5wYX?.<3+ yq;GIccF%B0锰qԕ#˿o.qPRS1VEU"`wug Nw:I$d=rDA(dP+)ЬpbTNq8mQ RxPA*:3xәQtTOd C/5L}|c;KTvum#_n[d”X2`42$yZ _k8ϴp ,!iQrIfJ:,xbg^j): pL46EE}&7')mE 8^UiC<+sBzn0L6GY쵛s~J7SSois]7QVS& GDXǖx|md#~ {{ 7X C̩,B]6s8>ɖ24v۴|y4M >czr1*M#R7Wܥ -𕬆[,|vn ĘE͚>]68i&N,+8餮wt,We~P#0J_}xپI"g 6 pFزx<: yC˪pVl=TןhC@nKOaDRwEc7Ex5n<[W&V+AWg~w`f q d+YZiR C ҈;;ON ?;&[BN^- $;o(MH}6VZ14|PwD,m->?nDr] g9""wu?}b8Ĕ*"Ht. uL# h39N\nZ|B-<#tk4x>PsH`}XN%,1[[,\3 4{ YYh\26ݤǿ/]J߁A Kcxp޷p?L-=o p">avpXGVVgQ5~6l_ncH8:ҝ" z#5A2iTlc,mz#ה! +az-xk㐥<*'Q[ԡzWmtvbkfFIy,uG;~=y8?s`kG${.AȔ^֞na^5E+PoC9~.kJMnֆBW x `\ɫi$qcX9l^~3ے\[EZj_b% 86-8Ip,!ɦR9!7b(+ vicHߦtē%1+d|S$FpR@,:Yǽ) k5O-)YtOǕfA Ž63 3 K kn&l(mO.6ʒ~t4hޣ$rP=mUV:||C,Z{pqTZGh_Rnv o*Ǔ|౸9r2 J3_PoNHة&k ]bf3E{м2 <Ն ߘlaGǮhq(f^ϒt(](DJ{n@blMvfK bP %ҝF`_^hk;Q FA^zߞJn1S#d]W:b#|^یnT40'y4j*y囥yU awTPL\4f({oWϗ㰜(.wG  igu"B^$B%w&J.+KBwN!* : Ʌjy?b&8tpI.ZSy8CnI84)En;IpaW/?BBT(Dkܔ ^(0D^L!t1]3fyd3YS1,?P@МCÛCy6~>9ah;OS' UW~ƶ9D2ǀ'0(RA_ffnyc@ %CԜit/:b%fsmUp1O[mm*ZuNN,p YrzѮM5ꅨJ& Z1qto&EJ9i>.2%߲[ugp u&1B-1fڡ>|9$YA0c Y܀:h[zFr[֡jTz+ۧ~43.+JȽwƪw-Ĉw&iOݹyN\d2_dw4ye&(3@cܷ5婢=gT/tX?P:d"$"~09}k3i<ł0ϫM:]P@'69Lv'"{rxAf5q_胅I28{c.)ڔb$lC6}Ң(n|MF'']jN،-%ܒ&ͯnX%UmQ#fQ2<(B?F1mR8gK1cA8vGq|E~B5"n<%<F k 2A +bH'UIjvv2~bKګ`A>v`ߵJ\rDAz{A R*E?va.׮lэU/ɬiwOԊg8+5~*t-}sS Tٮ"(cW|.kJCF-Mo/("&u%Kz).[ujcQ+8z#}MMm`?9T=bUX#[ @QX 0 n{ĄkjUkeR(pyK9YMFLtgS|4.I*Pų-y-W5x9yC =9Jȁ$x0Y.É ,!i=L{Qix8+PAtH< wߐc^=94?M+D 1uz].yditm"ibbr~8:01žU lF 6gqߙĉjR{,ku8zR~_*p| (P4NQR@\ "2b.EiQ 㞔[2S0;/u1ފ<<F&fEXyE^fTYRRS`eT2PMeH[/ꍱW$B*W 5C%RQ&.*WV:SShr6ez0q- # ^+YRP2MFB۲Dh1 :Tqh3nz_mX'TҸ7/! ss,@F.UDn;Mx͆b1G{Y$cSknH+ >RrxOS @p_g{ׯb!o'u>[cQEaș R|`\نͶ ϧadw1{HF w}}8'bpu, ,%#PZ|@ {Q_y6\3!:ftM_{yuh aw薸9\r@i`!:4_BoSY7M4 N<ؒi{oS/<%&`%\Z5Mj+^>]|Q_OUR=8YΞDCF$7v"rE/Avp80p x6ʜpAhfUzY;wr>8ljW\FcL|u0=dyʦ27c2Ya?VW4 z~=LB^')1 05E_'diAD^&qgsr}߄05a,$h e{Tu >02TXF}T:4>&qQ©~8QOK RG#=1ڿxN*zz^WF J+QzȈlW`|)u'Hռ}\ ƓAwZz:@6+-lTR#}<"j:#%64/@io%.I"߄QWݴZ/+ɇu@?pP> yJR*G KP (*Y2%"I瓹U)1w4灁 0!t9լ]D9̟/'|Ҽͥ͜eAGhat#VYR^;dxĜ(A{Kdc`Њ\#ݦ7yڢ5p~>3iGM&?5bk⠝yc8'l5LWn÷瘗H"\'Vf8D%PWQq. ?wtEqTG(.}zk"pR7@zDntg>U`'ࠤQiBxyĴ+pV2$Zsƙ"$$.ΚܙQFKgEXCVJ"4;шw3zE$3p,&H-?p.KdI1(p]W-|B, `,r16OS!{G/)2%ksv;g/S#ZJ.og<@=ʠ"N޶Ѻ'/L,LQQ![kE(WGePA :CeSqUUp"dj=\rYtj (.0gن">*{罪Uf!AlV7 $ʜAέy>E`E!Ajdj`_@^c DI;}/%ʡ-9M,Z2G̕ÏZ&l3W0shO5h7n a6vg&9{VP@q v4p೴Nb =xjJprBJ^Furj ò!c :|<)</C/uu ;d9\ZӅ:{n\PeG.P[*lP,Ǭː> r?YBתO[݇lUQ|z{P3 F,e{,%)j u0j䢫)Ӡ*X2@re*F%ؤ%U4̩] WCN3Xe]z7Y> 1DIͫ$x&jp46z&*+C3輹:p03HIA3|F?(baO]ѩ}!eo$%,s37E*>b*: E-P(Zr"2n&X:R1||HJ}fHv﵃ ؾ}*P p7Hc"({+jΔ)C?w`Ld9N;vEjC&k3SIaYho,aܫ$|ɍڣJԤ&:aW過K>}1-%Ҍe <(&-G:o娧U|KN0v'9Sq_ yoW彚a1}E49d=3A6 ݳϊ߬ ݑ~ViuGIsi^bLOVai7} { cZN|Uנx_,>lchvp Ů[č3c3ݺu2BwI]p >C;ZO`O>]B8"rv!b4>%6M8{42V%s :6Juw^HkՅ twYrkI9Bek Xsy51>y*_X3}VZh3 >rtƚ&zwO\[V+3Dxq;'uOpqHoG1'䌙eg\Fמg2iQ'=A8t$n/RRb|K͈,o~q8DзFI !1aoЇ@ɋAYhmw>%SloLhEo\zr/}8_@_\?ޟVPTf)ansPod>wIGˍLbNwZSą;}IIPj*xu(6=E*XI 0ml=*%$nfXl bJ.w.镞ޕW+%Xҩ$vюOe{eymYso`R]NZ(ZQG .HV0I km#J X#`X9ujhA{7jEW}CН=+Tp~MVBf0ٹI=2lWr dB '"P|Ct=*iA>g1eu` 4תHٔWP'Vj@qxS3tLQkZMeCl%y bHL&hYD-=^$h'j}䀾Pl@(S/c4_7gFׄ043 G,_$,"LDVQW=iTw: ~IzEV83:r”aV,̻ߕ. 5Ð_~[*EBy֟}c/?l}y oCE (#(,YI @go/G+X`ڭe>"WP0 JG#S%i .`EaVdjgL8+DS[ a_ZgB&\GGϪ/$> %N< o1\z=/3Ƕ(#5l9s?*-v;Ж)rRǞ[+[5wPrWWH")-0 o0>5m$Kddo6YPǜ\y$}S:0C nR(`c:;9q35c9EVB={N6";5ڤm#\Lz)w*s݄+'N@+fj O/3m3+ʻ:eQhpPJ6ѿҼdm/ @ol>SJ;~sY7 }=M=c5{)^:9p4@3%R%3ZW$q&p~? gѠLzWTPqah.R0#Hzw^zdŲ2]wӺMSY%}鈋D_`?Wߔo5/? iwb_Ib$L Lmp)DO1W]ߕE̵F蔍sGT#9yT<Ԧ]? sjSeRahMx/ER!/a[t(Odb4Et]t_?`$Po]YB>qiaza#Daqfa&쉙q,>SG}+Y_GAZTHKsZmzQ{^]yިWnT1Cvĝ@pnË 4t$ּ5Dvzeom˴8@ S`6xpR8^ZHy%֛Z _p F;_ zqX1$kG%gg@`+MdAzh}L QD154|^,8|pw>ڮ6R{n|]Wu`*Z%]!`qlNVIN4_1#]/&2w[_+x RKxP0DaV2"iX# hpm&i,1یo:0sym2g!ͪ^6NSK*oϰְܲuʶh%x"Э~EYqlT@H3ϩ1_w6y!)d؇b__ٹu5e(X4s%V:[yGj( yd)6B3=s}tOc[,䩶P9Y!|08)>Mgl/ĒH. $p KRHUJ5Q){I"%F( B}לsŬ+ a)%VŐ6進㣏xY{s YB;ƝGQcr s0r mJ\hbm5MfQۀlۜ y+gD ts +6Og; =VU=52ahܻ ?*+dA$wځ̭RH$&heµz(j]iԵ3+묹 8T[%ΐ$_"D.͕ܰu7f&ΐk.Af^l(?p?s|Z5-r3Z%y1$ٳf\@z @|2J7v,U`E'ǜ)Z])s)M˗:T=>{ߪrwG&i 0+tR}]:jH535*DJk?wH(o#ZtRa:ըj,:Pjސ;o @aԟe bU A l6! ܙdo/G |1/*wC dd=6n-(GjvUJ#}S; >_c=*$8 4zϫ=}EH4n4 $\w-!L$;FlUB`3f%*1LE!Nc.3N7GR 9-7ih{[GQ9#s06?hD:v:->HwECVmH<,Xg"!di@ Z!-^?a^uʟ0-4dmCPI 6{ O5v陙QĬV?jcoFJBB*󛮯LV)n,n}cro۾\$@X _` 7 rHR>HxveNx @ˋ!b$  3U =_x}r$&X{^2xsle+S#cѽw/ǣDA9~4 #n a(oA+X۵>!ipA&"-!$^4k,3AH&.;[0f;ƿU_FCڪ&꓾w3Q?0'$7_ͱ#^3BB߭ƘFm4g\!{Ds NxP`yZCraH#6 Woa[Wzﳠ2M˱~{ iۃj#wb{"*2EHݼ%*Suw $%)3bӖ&;m=;uJj%Vvj8|J%0gz]^u63PC܏=uo@ =]1s! dJ(CVHZ)sf􊯪m>S*,aij `-wժdj# 0s"6>eZ5aU NLd8cí.$*eh6O]OE;f i|qSb Mx΂(Kld) ?XLB*s/Jj@[_~d?rK rKńSQ iViQPQc N 0L Gg%!٫<ûĿ _VMn9]AAsw/O/ , [xv|H8nVE m#= Hv4ɸn"S e,1=TgW?{a/y Hɧ1I> S+ (ট0/v`*ǽjJ:Z黕DyԊ JS=k֎³[gln?#w/9m9fS~NݳA?%뱁 %]@W2y*04 7e4"EM&R+sk67lwM“8%e6Tk0V-b>*%'Mg5(V\O.azF!ѦW BoG|M*PA^ٍfc6X+Oñ@r$6%'T)( $Q~_}Ixh{2o"̰AH!# L~Yj+Em??%+Ȼa5ęÑҚWvX!nhmNdbʂweԵ@3<|Ǯ%hWBKV 3oUAq>8؞ǒ>)E˲:[9+Tm\0yrѠIHDI''_ .]DW= \to,A |7_k7͚&mk ܳBZН/f@Y#\FAk@2j20x2F!K:p|dO2!kjNLqS]FC?C*R?EEdhRAu,)|)%{vV& Ηqt]IJy%bC^+yb+#~XK&O'tSsRkzn%/v2.[(bMw30/ߩYDZ]+ :%_xd3~^Gp q7@^p{E!яtXJ|-S),SCt-dPIhhd] % /n=>@fn3_yW93;fG?̓u`ObѨ=]UTQb)j fP(%WKsPVW_}el2O =L[_6MR0BT{M ol4/;HӚT}Zr{/(zPTJ`D+"7nyh[>G?7yjZ_]=IS}q3s>"+1ev'5 3˫RH}7>cZzo:v?pnGŚCa<8$WZM$,¼EB0:H/,e2Vs bϏ{[&7NQ`[p,&&J$ɀӱݬ$T]ک|G͖F7"\7 =O`&0I܀k;ʒgovdF' gSFt1WDq%]r&I@8aQB|KBz)7Wdޟ%1qi#p,34}:Y;8:>? 3p4P )Sq->. S˰.viE֘&UsΠWFP ٸ6NQNTfG~oOḤ0PYhGjG+1q:,}T]8|.*)I~_ z- ۜjs.`Iffg^biU*!$FRT4EPZzAYٵ(05aϡ0p9+N130.g˾'pWl+fů4? ˕!]T5a- S u$Rd`4&z嶍 !˱DDH`6^r|nĉ_"F)̣QМ:&qEZ^y|[#DVoaԛe8:rE;ܥo.%B-o;T4um=ly '}򣃲\|r40Yce..Os,8oQ|'Jpxjz|ņ9W bx蜵:qA}Lzd*Vܥ>Ǵ#a/'LDtsy@[sE]y=>IB]bvxb PeWl/7Nt,],ܿ΀Wu!f8{8#%r.q8~?uLMw`\d;Xw7H9LxK~}!.mAĠ Lz+p P [ `uĿy5"G7L6b?r/1'שW4S2 \.-j7y[U .Urh.7Nq 2$wHxLsLR*{Y%=ɨg#0UVyRGfNWKvps 1 $]Ex& XI%+wj k( @Jf Læ$^S}{))3tO3z Eq+ƮmhG :JZit2Fe3 IWGXy,B91J0/ѬčV{A 8Ұ Ut7vess[^M)2j[ ;^++`Ul}5D,jW5l^`՗a/qaL 秳r/}VuT-کş_8RI"9?Y}XD,gwĺ>m?Y.kL3CBQ'jsĊ7QocB6i挃KJ8{晵٧QjvʢX|Ǥ 8u^y ~kp9 3c%t_|&,Htȵ*gU$ysŁ*.nNZe!ϑ ޡ"*˃ MNv%tA0I#*0;G:ջ8&n&'_ gN_Lkc{WEVcst"@~VPؠNe1OCPKLB0n 'c  /)CdnUܤ)[@l.Y[y6m(QF N91eKԼc2] =SQ?H|#*b Ra|zg`D3*j6OZQ<3h&Y p\`?$YW*q?=}OĖA_2fxUj3@2!es,F _+ԑs٤z iYfSIU'7_7KovQDAVl1* %ca'/^^Q^_6nmw-P-(SgBa~4隘Hq |-4d4瓆H-Sc&&_6xa< 14 xdc}EN`x4![<0'e+pw3qmq@j4bWːUDݦNٺ[c:  hڋ{Rv=މ!VO@1gnVgkkQ%V UpIlxp1d@),FZOLKo܊-) [$Ȩ3I)ШvN6ICik_'Tdmƾ+?$)cD*_#w|Ԏ( a6Nܤ1iyW o ;^C]5~n}Ur= 6\D[PW CgPa|8_$V{JdY { T{IrWRoQ@RaDvSaJfy%>>FwzC4dxdˡv TW6CiX(6 2u4kH=-`O3TEԠ;TɥOFgYk7vIP4H1yxfۥ\Km;ju]] <uV/;BT@˖il,$=ߨݠLmܰv qQ]T/$ͱ o9cFL1M9MN8QMN`"*,J%(i$v=Bv1dmG5h ![CNiNnN(/{J #wz=oggV`|Tq>gַ M +`PfLc;$VZ-?Iq+HwyA Ly#]-( xAMa\nB "JR%Pwin0A;h\[YPh0"(ʡ^bݜGJU8/P+LܛBu5~lƋ"@wFe S:]o9I[ @~>A~ c}#_MX/"rv%A~O61i Er՟B@SBFF1Up&n6PKS25Ďws$n͓xtUQO<ܗc i /L1S5fQDEؽ ׌(M7*Ǧ"gilIZ3N C߲ |VA:?o/9`; R%ds6;at7 |)BoUuY*]#93p (; WـjܞW/wW: "KW6C36bJN"<&k>!)Kf:.#9TP`OCX~ 8,#7)(D5#" VeHgk/? ؗWehy =t  AB;!,1ƃ1X}ң/cn_(_ܓngԴ_$!^<+KNI; ^&kƀ Zu;[Ai?p0-H⑗I` xGx[ e卣g?=3fJ71"vK#⠛ [uMөJ= ~3ɄjebC}DO炜9wȒ+2+u>=#S^xz)Y؅G_a=_?[ Muf3x?˾ U&U%*To7*o }\Iwo L96KN~F쓇JoZjDoDhF Kalf.dShoc6Fg3bz": nF*Eݸ$!}zӃH^tJ1^WMگx:!졫GFEgWNK.d t+5(Q*G _ǒS@q,hwq2AN՞3(CaLZ7i(Cqˈp>t!kbI8 Dp:H F=E]:O)3\8cԬ=Xm ]ygf lڮF! 5A ._+#e`9vIjRW$zeM%$MK΂@y|+ GۃyP6,F]{aUxG$Us.[JC+z [N^ {SPjZNғ_9A~sK»Uj;xSa]npO`Nva4KqVKr &ؒ^:DQQAt,Fi96ґĥҎ@WI[Dn&w,Ib~ք ݫ$4TՊN!ng]YA!8 =Y}ElgөUQ~NY~ [ф])y\4|y\:b<IJXcZ탰͂X9(xTX=r{ɐLiPF=D_4gL0"M"5^\ai>Ƶ*3u斢;2kZL0P9ǑĴ.HB H 6̦tchXG⛉lX~ I!}WίP<͟NX"Fz3tKXe\.@o^I,5 M݌1/| (Roj2B''v$y?lg_j>Xy9[WS~xe jҕ iT?IYK*蔝 ;9;[WX0>GZRYaeDT"(wFztd#_+w>.KA w@T" e[JK7-8ER8wѾPmJR6-H%ϳ?g@&''5>#) |N/By;wyH .nyw9ЫZLGo=C5\lD^vdǓ]ɖy;TBMF҇8Nt)|ӮHkP!fnBP?vf=&P˛z Hgq'-4% }î!?XԱ0wPrV$[gˮ}>ˡq5m[zPQcj&CWc ,v| P"$IXa۞^$KSGe.7n%[A |o+ծځ4q|N,Ym:nX0照o9;XnAVurs(T [-ד„OrG " -(cbᐸ+𻞇7ܔ'Y\,,v(`ŀ o5N. .-pFt)t)w' FG|n :p*h)8W PUuʯYd-^0ritz1ȟڂGu pث7,WJe0J$GypROWDD=qLSFor~ u7E^-^ ,f4#3ܿ)CdKOPcS )#fn I۞NBFA~Sv($?v!;G4thJ bb`+ph!o(MOS+RVz"0'M2Sz$1dHZLM8fH4"y V󚆎JˆbegmP. ӏ>pC% Iu*Yi"FyoTH$G *5 8B"p_C\u8c' yM)ߺbrҬg^S~RZa5n']B[K>YroNv$LfBCSmy-,;L35O;B9YUP_VoޗvG9?rpftmJW'@1xl:K1r˄D:\C|% 9<&~B^Gk9]e@r,%#&N^yвy NU^3y"aPvKʇ93 @xogkAeзZ!31yGՊ蚴OuGC=tO =F};Iq\u2E =NFҠ${Q4r_nsmt1&F]p-bϧP$g\hlո5508c.wRuu\B yn5d ͛1S5&:2K= )(vW~&iceЏG f(awU$35L.Wk}X^zOe(U$ gŁg\CV}yVMMy`W!Y$]|+χǯ(kS=""`zJh%!G)۪Gr1yW{Lr![/8 b|X!&%ɴ/Ѭ$[XPs1^Y 0fO&H!'lbDG_-_P̷Ryyc9 & * Gh~ѫУyj.U㎴H8»$0ovt7 r4o=+jN_8y6]'_kTL*vPOOQuX ) g4{iQ& qnjpw[ L~ؓ>e1a`I. ԛ)\:bÂ8.$ cXPhjA a?GX k'J&y"?MdvIe$BUsY:ɴQ ]8)}Þea!HrsҘt/P'|H^ɹډmpbUS<Yh X眈B PSn:1t)xqgt+VFLNYKDZYC65* iucw)el5%т\XKFգYl%ֹ4]2SsH@7GʀȖv@dgMhgUԔ[Y-} %Dԅ`k<z>xN଎sg< ?mjCaȞm4PlN`ѕOX1;Z K/" jo$, P+^&ظov6bك\d3)B!F;ktl6±râ3AȚ2AA4 H&ԘH#7:(IKbrau)(;Cl ]%VMS;"F5 fm膼Lk5yu{Ay %|jQHq[#DRx |^Bɿv1Սkz盬(E&?`nDV! -91Lt{P[~vXܧ7ڙ^?A^>?:/I̅!O:x+;P'nFw=I/՟Ytlm*ESmx XK jdx8' p+"Qc~t낔sb r5"{7f< FX,6s;33Ղ5Iwym B[f` T#)%RE 3+X0 ' d<S!ZڄeX}~(_aHf9`Ry -+3"5k|1B٣꣠85^~DJ챶= O`>rfHk(PbX-ǼKG;sr!dύƗW Lq3ADʰ!l/l/dpQ7oʛM竰t o x18n@>^Ҟgr*>ҽ'M <'o>*A3E,-$|_d,aYu\DWǷ>9bsFaizNtb>́2п (i2.0Tq6mǯux>sk^fMFzqo"'=Z,pXSo-p6[Ҙ1MrB6`p)=ڙyҽA~]쵧QGR8LU?ށr@+C 5 ˧c_}eİ%ʻ],5sP3п\B rGM=8x)>l$𻊔厽pWW tHh扵S#ks[aBe'BWQF#=)B#,2{o#qYH nVG}O4ݘ*x4W<,?y?K\LʓԿ&Yk(:Jg'3$%-ހCn 8NvGﻝm|h`K{yfG}*sﵹW "q_3q?D"x0 q9R?A|Xp<sZ!\ XìǠJ\] );Aapv{]>:\>BZK*] İN9l[eק8j;t wW$C Av} Du0xM4v}d0' 'ZkIJ0aw ] I!l 9pcWc?+J*[7}:i*~-xhHQ-J0)` EH5|>ψ3nurtZ+5ͺy7< o Z[Bv!(`rDoAre.4ݗ$`|L桁w${4C R - YR h>6&F)BC#<|7?E3:c?2#vq\x ֏GQ%$]WSU_K=ףjV"YU|Wa_L+` W5Kgk*Ԇ\⁍cGws-ԋXw_)#]йzB J1M]7(8GAkQFTIr*o^ {&7_3pcp{46}ϔ66Q*%G.qXs?r {3;dFZmxThw2^ AХK쮽qR{ˬga4=]X?2b.n:ETX ?<>sݬ$y@/A'6<<.Qq?YLf:%xkD1dUjcJ^ߟjCx:hnɦkwhı޸.6?vz4;cTb'Ht4-Ԟp1;Уň#-Vښk[=W"0@?e݃gQNK4hR۝2r(w}ei&e(=џkI]<"92#Z.GtUb)d9cTղ (>9#ˎl;Nǜ/.LFyW<Ýcl QLvoU |3T;zǸYT1zl)\4*j}ްq_rnhҊ-(dJ̷2Q0] ӱ01Kr=fmRJX(rdrjm-Dg24i];|wȢF x4*%%&jan-LRtn CmMaQ/heui&BxW gT0A&&?ClQoNow+W倥KGKR4Юnf3wX2HϨ1>3 uT+t}g_{eΏk+ c* <^|@4 -<3$Fʜ%B,^f$ㅜ%pƵ ,jK;hXBK@4Kz0~K=e$E:ɟB,:h796]tVGz㛕hՀCKO@ {QKrٲ޲ {&?Y;Cmy 9EJ`85Iqg3APO%BsY[t iZ3(`T"}!5tq@葩XYC'鲲EJpp"{ 2ROk^#dLv򇻧2ȱf&+GzeG.:LT"l +΁ uMfes>,C..935A hh9 n=A ~}+PqD''%5>pI,6C"[>uوrК5T|wqݔ =qL|xe>{H>nQhx-kNZ+ЊxvAXeAԠuKk2Ώ\jo,=z?^p0a8U>u*~j|/D/jy7dWh:FIa9g@ESN?IH~⧡C|}gFm ;[hCawP*,p~pIWh(8q̙'(Gx9Ŏ'#rk EQk >0DquJ,0%^ՉΆ'k!UF߅fFhs]zW4u!Jjv׺U=qboiiDE}eASA%YyG(˄+rOw IijU/ghs$zOYaQ`XQ(=$LpĞtwM-^CK:0yq("ojctǧ7 VmEEܿV6_$)}ݪ2o lZ|Ge RC=;|tlyOI6}EBK1FRL#jrj8w(6[9hFma!ٍ*D+P+Ei,?󚳏\T FgQBqKBkpF뿼R[p 9' !/ш̩H.r'7fhV g5l#!&jV֤)eu~?u[:`eKD(2Ϙjo0}/L1_o6l`]6K: 7em6ļ8L' ѓ$o$E~#e)k*Chl5 8"CcP$Ӎ1'F=*,y>S(X<$z&%޹=il3>1])qRWcO" A> Rf .oSBm;y :A3xf褃eIPa/&C86(eK+$ؿs{qWp7q$=CESLϊjmO#tH﵈0.{?ZwOOu'< vGGXؒLIaYX."9cHƶޝrrH{1eŨ>PEiا=hvt51_{q{PIIt`e$ &U:,i-}V#=QBBYjr @Kv憐~{i~O|2 +}C,1hXI:*4o҈9?' D~#Ud r^tYY.oxR& ^M) V*F44xA*M5k` iԴs夑卾z8p5^E` :L::l[״23:ƠI[lJWA+htN<"Ltpi.-ڜvHx< ,;k' g3/mz80T5Fs\hBb_Vad ){N*,qM/~S{Gz){2"`ҢE 6c]zN$VۍЅ)+_\=_U4 jWj+T .>&зҁL/Ì޶\澮_vnKkX8Usp+H+C)J`xcbxh^G(wgzhRYu׋v.d=(C{ &L0}I# !r|;W! IAЛτ ԉ@i^7?dY/ @FP{(h%QuGSl:|U?}:hV#D(LB/=o9\*@h{g޴4{Nul.$e Kk9U*Du#)Oșf@ u0~c Djd12'ؾ_rE'ER9Ɗ E:}R qrŨ>? cVVQhfHڭ]PĂ볷_r +Ρ#3uOP즖]šNcrpv zDKbɩ+"11ЄQD *p\ޱHc/DqcJ 䫾"9+UmLٿs]lqlHlҴD)7 "aQV (.ejFYFyQ&6mMWl#WY8zrNm&.d:AXnQzCB~yqI6G"Kd.k[K-ukiW*-QlZ<bj`a{\:; &%B#bqʓ[]0ҐGP"Cs0ePw) M{78)y<؋FFF;~5&u,=.Rl(1y {Xdv}}R?St^D>*3?.F,' Po}.}?4$`;NDBj "􎵴;p9-H0:9h'_2Xs9H5PhVZWGѷ+k^p ]%t4^dy2Fcw3e -R_KS|喟%Uߤ_<}sxP0-Oϋ%+bjv%Dd~RZ A5+ICG]97V@*"SҰ{= 7Vsಧ/ψ@1b#hjݤ_h'A|/خc[j!KS,)-KWC0dBуc^6M9M$'DK/IɽvaYe8\ @pm'!ʴL6>uk+ó1&JzـcG./=! հGHֿ_KC$UtEjGi&@>1MIω뇺°:%iW 5)ei2~dY/&aT*e=, ETꔩY߁0s*ݞDu t&يڏ Yl*N (R- k.YGԂ) ^*J'h5R7iֻg 7W JaʌQn"nmeXxNMiBp aWA90c[@B ָۍ5D?X }VX]^7N$wl.g Z (Jia7>@GVQ빳>T1);b%=nu&P GخB1"H6@:`M'(SߎCH=(R{!+ncy8M @GYKdDxq#1ۣ cֶW-+R.o;ϵ#:P+ZG]5&Y \(!X 4}(\5)wmK4L+ӂ K4[לn4\zֽ+F {w<sCsjnvX?U)E>HlE.jBq]0\/RӏLeվEx->r>d#c& rDo ^XmR<UMIyؼ]:(WfJ !>8%.Kc؇y <^V2|IQ3Xd/`J# XTmj{"1K6/FQ#82T%5DXX _. X.I657M[|/(.4k mfJIއR6᥂8q-ѩ{i|:=ɲw(~B//4\؁:%}њ orCHstwX9gN5ڶh -JSPaʹ[4.6Ogޒw竱H{/+K})h`2|<8#X˸d ):( 9[}V"-*Y*fY]ʐ52ŞR4` /xLsƦ̇3ּB3`h-nC `m ^[)}7h[],^`g*jWa ܳs| `ccc~*OI f=߯c-:V5wG+ 0KFL΢lߤt*Zfɤ<5 1ؼYt])w'7~bƏ0iQgW/ zl.pS_IJDkd5iɉZ )ZHLP:{G)ajk@Pk`vgqF"4\B:lr_e#c@V|ulγ\3[ŬiV[o2(A mK*TSf)nmx):–2h]a mK m{o,"h -p*Y}=dNM4_Sh _>Og3Gʌ뭏B߈1kJ7~n>?gEK"ےP/ B*E fA =K!I~;}e9K -PpgyŸ10rs5Zֱ4yANG]Pw&$ JM08p yG<񊹿0 {"\c&\,+|cc nRX:Us|J'AWOi*itDʈF^qsz *X6u9bw R=pܩ.乼t8Z;*jԔX;IZZkpj܌irT]k *Hں9a~qH+Ol"0rF/?JI7ﻔ!($'KVl }|Z!:?hAjS gxŚ@?  P6Z9|nQqhv'iԛ뭧,!bmkzVA]" uX\N1!O<_)|u实Ni1 O5^zxC UW٨V c\k3vk ̓#T)HcF|QVq&Ms;14f>AϮ3`QhSE,G66!b"s%o8 (Hk~FF= J&Ȱ~Jh)[m9!gT %~7K{We0 U˞IuEn>Aq~xNL;9xAOb]N56^.$>kxa>ӧ1@#$JݓB a^WT7EtԀ4oS9u9I/Zז 3t6NJ5?^7:[6ՁHu)9VqUgVe]8q4[ɭW?U)Wh/Diq3kP JK+O8oq"a#*,?:$Z.<?o/( oьQP6-@%̏H<8ޯP1܍SK\R7*hVV '7PE*N=ʵ0pFy jG}4JF N>.Q( RV.K1N_00z Hn {`i+C^4u_)/ @@oZ˴Dc`L/)6 /bݿ=Y 8~ғ 6z_o!zխuYĊP?WG##ڭJ/!,92"wDn-! Hn(FhGfa- o4Lc;m ξ&eS&"MATi|Z:o SB`S)b)גTKUuٱjc{>P\n_ܧ0vc' PMx~5Pp@0yowd:Fϻm9w^ͭͶYC%RDhC 3"췵֎Lh OU\hYuG8!&sN9ڼ/`ndJ#X\=d/Rnw1v2r۴4!fH&MbU.?4?:~w]'zĚ@ Fi9}=R~=$>{+IjX!&VW =vbC"zc3ԇo|ʐq)zHsLz"HkMNNdj J'.ؙ\^U?vk~ϻ$I"+#Ff!$#z$k G;%_Sqpր:y/bp*e0Iypݮ4BaqNu84py'7;"z@cm6_ѿIg%k[F[}^, 7n a/ (=lF gLʼn:T)Og5wu%Qv=яv3An>d^#kgԝuNABi:}ۡ;EqԡD^\?Oi@# 6z9Lr'{1E?_J{s9`=O;ED l)-=HM^/v?A+X6i%>R~A^or53~6=;؏&UX3!Nvi*56c8#iwZ$u8t? 8+})m1Nfr!挊@>>&ΐ2) .8dMI9VD0aH.6%ڣb;?O QnKŬiR=)n׉j|8g!Ň^qeWTbP2Ei_E +&M7xb_Wb;rKH {^@>psw3\nMʶ4du@Z|x`TYNQaSEh۬+T9x1A(tK.pXU5g![1is ϽڪیϿ3ngZE,TrkxhՆVL,!sB>9ݠ-k,B#![63He"mrk,+`M}M CB'y 1j 0/B9UK{4c/ȖV(r6z>m䟓H8BR#CS5^;++Q`|HKvҎe * 0J" 8 IzZfe@enMuaFY*?Mûi/E5 Gm` G L ^>./Jb ʃ>Rו"Rc>K*} @(r^ơjDڋKCU]瞵zPbPϚ%ѸOQ7~ `^3ǻTռ_qGguЖX0E|VV"eΡ/G6ȴ<2o)ĹUOOU&pU`gWg(|C3n$]R32U56H}ji]zmgG_<>%( y_Igr{FkDha2"sѱCfS?G.֪ F`ͫej ȯk8+3fη_wj"[('};? ,xL'(\.ڤ\Ԙ3sҚ8`<=jcdZ>;߉`tϨX4j{8v \.R &nбcTÑ\a,򑅦im Ym/!)ge53Mz [L"?+ޓ`<]'թfgvhیey0ʵP- B?I=Wޟ(x/x.Mv^-}s[.f'~Dgeb3ؽ JJ7b5߻ϐwY6 Mrݗ*"Ҭi6NMegL;Ia6Pq L٭VP3!0PkE + \H!Ê{{P$< ଖ>C3O uh(:qFdpg|)BQptpm [Y538 \Y`jhn_0{8ik c:MfGPpLтU(tϑMWh$WHUE%Vk\}Y?􄨿q&Q<9~ې7E HQߟF:IhÑ"tR&뢍^^ dѯ*i䞢9KSz9vF~kGnCl(A8HGCc cL!:9gI6I26.8hAi!ɦh[7=tk>;L2!i#ˬP!|e:.IόmP)ZV@ۅk=&u=72#.~Z/:jgZMT)a"QPܲfIxH B-G-aQ {)(-q. :\8sD xYU֜̕L'SUCsxSh+^(H2YSF-\q`]k >{IO}*IJ'}7B3 Yvgܟt:X mOD:.+u*FeXI=@啯.Ơ}U0v@=Fɰv3Nf0k"9]mT΢?LFNܘR}Rp 4l}/%iS/˘ VUKz4ՇMu:B63鲈ɥA>^$֘NB+Duγ,;~JRNHje*9acBc+e PYb(hvkUŋ1լ q0%p:57R$BW5 }ώM&ԿP(rl]Bꪬ!m}s/:p"<'f [m1mڍ? (JqK]Gzـ0Yꑒ.GvF%V?.Nl7Q U 䠠5%>o /x!l>p6o 57ؒP#en/ξ19'FPYi>Ǿ77_&\7izV,B^6l3j9n7OUfAvYCK720#?Ygu%De؃*˷7[ j|3B$>Z 3ֱ(K3VD}:**j1'2SuEX,m D&1*d{~v>n\sWk&ʇ5"}2Stf^h>QB}j* e`@I%Vm.%2ߔT3EF\0Pyo~i>,_K^V7ȡ|:*99nUj Ĵn{a4x.@) Ow~O7Z$ȥ:}+}DGb:tI7Ys]#$#wj^b.A| .2@GsDNfqKMX. TE&#Ľr ]'n3yu~"//)^EN.NVS;}Aĉ"o/5jp8,97]li29=[@]N6l!?|/{ӌ.عyTww;*1$%{PʁAx M4ۥN[e("z^d<+XAL;wa0st|r_I`\}S0G*2"3 -F}UQ]`<P dc:aQ3k_$'Q Ү4d(x IDh#s;:#yFi2yGz1Rà]u-u+Г\n@k\;"$}!Ys\r VoW({x%x)1ݏ,]IiI~xkn/?y-VNJOlV;0 \@Jp?EY[5RX+ڏ7K2iSmF^;n2nLP`,G- /nʻqJ 8x^Cd C2l퉬xf$Q1/=&4 f?sIN 3׫A)0&0/<#&bb4aMaiQ3DIn2{-tˮFL`Җ{UJBw8GfE2Ea `p@7j7\ͪFdaRli U9e[}pG3`Hv쳦%F3l:ְ?IA~vh%H6;Je0ђbMT:lZ־N_ohG&GAY0Ɛ0g.a"N# 6)WB&&sB_I5jT6øoϗ/dx7Ih g#i=HqI"`tP] .|?,G n)S;>]338Pg *f /!xtW`嬆+-ŕ|1o0{G=`3T*~|9X"thV<awqՉc; M<(?h±eGV^,@dQ#Y~N/"GAhQۥB&e*8@7̺f E():5~fՉ|"p:w.`zwHvu g XNZ o7?=s|'˗'!e{uw Ha]s_':6 **Oyz]ןMVkGri[N KĮ4ր*^d+lO1RkRJšǃpHK H2I~H61q;<o``HcrM9Tg[0 -nclSB)wgNO0+ Bc 7NO@ <;{˗5E˔CF36o>͢d #i8Jp_T/?ArY/ANhIkvvsd?oAU\  OΙ%/=ES;63)~L=6vX:ҢcNU:f\M"HfEѺ {9*V0=ک"g a+ ӕ`س+4;{%kIIXߝՒ>U &_Wń‰/_.79$ 00 #vZgkCoeeA%>u,-71T<0ZG]nIC~1fF7FUh:c;6 v:unAvoIwLHߋ G|K%4a>w"j{ګԓc3rشhD [X@fo0O_Q& )`}ٹ(zNIY=i6I~-i.n,3%I #}7'Ը9zfZY) -0hqcqŸ9sL:0`FH6- mmo:rv3{!m"]m[oUIb)y4EXJa)[bdAu{"Hu%|K@ qBmX>I;S=t. jp\I V Y6?>!E[CNuOa wȊN`@I"&cy>ô;FQJ}|x[ljmo1$z5;Tev‡6Sj/gS!^Pmd D=otarH Ǽ;ER+OZqzI 5yK%mdMރ// O+Tx"F{ eЏOҪ~V:џ/ +ŋ ~U\}$Qd( ko""3=U~2 #>楋C-17b-SӔ^[YUz\^wXDjb̿|;a؞"+{L{ⳗq9#FWg|WudJLl&_uUԱ:"ێDw~I"JO"F|V5k c}/9*KXFDIDX!`*R$v?!-pQy } ,&3GsUSbT TQeo/K;Teh ]eZǻ{fizS?@y6eN LDƽُ!u:&ߔϥp3 #xknbeG(nP'0 3X`(009IB/gNWx~V JWZ4eɰN{U`rC+WPu6A]v_>} 6S<=hQݸwHxݧJY\q ])@%) I^j&&NU1N}O*39bzġ|eRJŪ 4d29s݃@2a ~Љ{,- * ­F2%G@_[\ Unxb{0l>k{Yk| =lnkW*Edlq}{j}u|:ow_7kY`\#wAZiElsd{/\#wkjSňˊAKD{]ߌV|FX8kװ+_`#)! A6 U I%ɞ>xpFs<0sGz&*%V%VIG )t>.4r(&x ]5gO Ms~ hHo+ֽؔؕ?㽾0|d0-xQn_z b~B\nxܶ8f`;[.THn*! 4gUt(`~6&pL@M3~q@ڀ 97LD5 cέȤ7Z/@+89q1~SFhL9Ewq?WGh{=:#u+]3pQܬV&IDoьPcɗ,ȦH8\K'mjxS(Bu3sƚ`17w_3Q]$nyer/ۧ[`傪 X.)KfU!u^>bPQJ5<m)"ʔJkfcxi4$Zz!8Q(ye*f52;Axp v[ SWo Br$Jg5ANuхUV IB),王~6R_nX" LRN@> G%wmT b%ܿ wmX,pӄ^ehtO2w#/=twFq4v¡4(Nyo x8l3[tq h ̺ lz^nJ"-{z&IDd ksHvz}F)hK_R;!MU^WM'DGzTjEyL:DtCh.W-Sc>KγګJcy>ϔ+B[-XK,6jV kYt˜sMCے^d T}}<:-3c)m}(,R SmپkI lh!% hhn˾=ӱ?KnDHI1ybmEZgQmR*Jr8| KSо'_xH'݀Z ~⪱X]Ӊ&>k}Z՝,5WW0`HT,NuǑok`?Qx'ҏ7HK$@h'Kw Im^o3w/Py k'd,;H2Q8FclsG:)F/.NƟhYCDGDv1fVٟTZ]/#VІ"Cm~b:]eegwo_=cȯLb8wѳi^B~smd}em%T'49靌J0=9tšc&$~{h&& ]J8\ MYǹN mfMYli$鸱+>>xAK |AhU}WE\C<êj!?7Zw[E\q>|Y`KWYg(blhRV׬) 5` /t#9NZѪꨐ{!p"0lPV=ÙakZRRb%=$&z4fH\(Yq]keqgM0m) >_7N_4J,Bf,Dcӛ6zrŕ+¬(Őtj.(wU֫h=XY'hj` _h^!xBS`/؍j :)Rke^U.EIҁc}𚻄*Ts0V))5U6^6t q-62o(,^GUxҢP*9'l>D>}Y%Ϧ߫NICWvm+y-uuASMG>6zri9& WYWb,c=РC:4: @6s'3D7IΤz NķI,-/:=Ӻ!P=7 | Tz+wC<~ .(`ek,fQ{{vuQ.3:cvVYսYZ{HmN` pƹ\z9$\SWek6Lt apoRnSS:+jV2cnr$MM.~(^͂`D_aMZREV+ᡯ?m]C٨a1U؃7AneՑE6@h }N2J`S4\.i|, KC RGa.#Oёڤ LJ\nΡEKUڜlV&ҵh>E?יq]Mה' 񰈇,qWE$H-)>DQ=L3l}xvhV-Wkc(k !@)&`;]zhڪ;Γ:guRVn|+E+H3g#љ͓&aPgNeѳ9R\3" ٹ~viݑ⭠ @T* cuWP-]'1\ge0us#6) /xcQa|-}_@.L4;Oa~E01EcGǦܕDmM ؄`ڴ&+2פpl/"{S(vt jFykk!n+ɼx DFG-Mpu_B(XT;~ԻN|(ըGe,[F"&#T]&xH}js*l m/_byAMehK(Ӵ%·E5٥ [vs ~E [ $+ʃsG^vH>ClH Q)swCT`D.4x@)|/Fm@['OE䪑 !O&V'_V4 e*R(,/Y{c9xF6- P٤s/PܨFiLF8aClXpeq-@M8dYG7xp<Г#%(R ,( d{ 0LaY)]zk!AQ JYWVyBv ^_ېC Kڑ8ENw( czB-[0haXV]n }h=m¤?nD[ e0\in!H54I-UTONc 2Y ̢= [Fd /}S DUa_P!A-?\͜%ӌj_5I  iF3lۦU?^v?UQFqt# rvnmŨp*`Q/VإB= 7,q{={_h  6upx*{j$͞6Vx{6! jS $pXwG\T(%0 E8;=Os?m{^r ûm[`M]< ,6 Tѡ矋lE*Ž`:柃#6fh% qy[*Hー}OJff]2;ի訪v9`aUhLcpH`) zkސ׺5myoA fO<p)Ң[*i/]Eoپj0&.wcL@jUt4*evr 3uhNÂ)_W5DrJ<}~ BHtrYJ"!OnAB^LPf,W0u?V敓 2v0Pgc7)?3\ˤ?ǯ| beWv{PEz<wc-4h@'+/HhоT|d=U\sF 4„rc1@aPΉV\Dw|kT(.[܅K)"qLF)"9cu0{rmdŽ`Y3 Z8@(ԯS \VJ{9c RL\9:i{IO0PSc9PQ܁31U})). $]L{޴κ;v(Wzw^[:X_DN.V8L9xjY=`܋nY\;9?l]Yg-}D@ Rjl[[u*"%Lib 30,)<@oADk?L(LY"ؑme!hL\X"A^f\SLb$q̙i j“X5'A05̒ݗ%xt4FjYl{/r2B\?CXܑ}܀%3)^bp1z$iPJ2G LǙ/Q5[bbZ?!d#]xD,-~IE]H뮷rCܬl~ם[q:Nǩ %KyTX@O2 7[̓ױ+_Cp^=Chr%x~)._A8kLQ@j֢ ~t9qs<'Qӝ;@ (&v<:j#|y :b%ZBA ĮtVhI|B6IXt;34 ޟgJMkP駬Js察i}Lf]WK.U YiT+lx'캇B^UuDu\z ^ӻ{i@:2rYLjg>YP-y=??>W?^ Qe:0ƶwSFޅ6++ƧNT=^mu@YVDnUx?]^#n쩘 )JM)iB VE^MHd1 vk\b)Zk)۴(sT:@=5 MoU @#IY#߼Cw'7tJF\A?# %UT_ ߡw7eI }e[rԾ:|5V=j$ŚLT>b. =Τ$zcV-:$2۹X<NMCg}IQomTW* kFHZ"*nӥRZjQٴ.T.BA/5 lV?D kU?j )JF2"=RB7U~(fO9gHX(9퓍%]:*len8̿ *oJLiݱI+He1.P_|0 ;m"IȀY,AC2- 8Y_: ǯjiϗA2 /˰6K e0.ݨtC[g%bPwt̤rR "f-DC^#g0Bg_EBrZ rH{>ѺMz\f9`?-.nl3}fB0M<)0e ک:qԀd$6nO!9v@~i2n#mj.YS!.sޙ 0rS͗ xʐNR?])1^]F-- HmWQ`iPجC`^t 5n[ĐԸ\4ogYw uyxSh;F9^&{S3Yb1$CJ:}PP}bc`g;6m &ZJv颜s۳ ؐ )-UU + 6Q&-U6ltxuج~AKGtW܆E{BQmoo(+s*ӥrXA x<5$jQUյvF^i䑼<}ySNr8>+ mκ")/Gf\wu ^縡'Xe0e5%wg˜!L/ll2K2Hj(Vz;m@$. wݢ'J_9t˜Pڞ b;SK3QyT(5)GsTBjؒKCyh$ yaUxοYcȩx8I@S NbǛA || ;y_Xh$ڛn4ʒ )-zbH+f+ߗs3d2YvF(ˢnE;H"~cW@"R];Eَ:_];Q1A(ϣtqt9|K)XrC1_VvDdZl%S~Mqҿ_dJnDHwpk{No&qg<\O&)W-lLSR,z;d j29ԣG/Wmi[͍(L~"&\,cjz?뼳Kz53-𵊶2<8.p)+]eRhO0u[&f$E߲0B.ިJP~oCAD8J9G:[sq Q:hY - u9{ƟUgr63WtŻQ{sk:qV3Xјnx}_oFW" t[;6Kf ɖdٛ" pQ#eDyv2e'/g54c V5$(a?f *-7 Ú12gEH^V\,aʪ ;O7fm,m.t;țt3&;>|Rmp 0 NqCYisɟc9tU [@ABEu +Z%开MYo;TbnS7(B\⋛ -tA|<aOcL(!.?wrs3Az]]S**/Tv.˖ي9p*L\n8k4CAe kh ] 볭6lƑ0@6V6ym#0WA$#2a?Tirֺp:uMLjﻇDtU:Q ~k923rC@gNVKҮ4Mh\+5:?>v;dFY%ŵj-iLx&%)e]%7128+;怈/k'>fiQr/ש:$"M]VQJ 1MʬѴ^ĉXcO77uM[x_}}?2 Ca^w?>A-Bƶ};@5ťNJ1Rϩ* .y#AoiB+IxrN$^ G57 E|CEQ18<2YQg; 7)GB̶쵯)[5}t@hhzû|s0jgLԙgk|y~;oR`2vrY ]쎁7z'N2>\ǜ,>sitwӉ }i\ Ѝ;R41ReJmWWmth4ǫ w?w/i@W٣]V5nP EF.P-m>br8sNiށ/䅈-X9^`WA`/BFy&B W>.[X'.aL%t'`Š<02Ywu[m!|սF.wv԰3ᥕP'aZqVlP=h\ySf4-"0w1w+|&wamH].Tڹx?^_!36^wo,&â`.NI&F sX36i c@^pzYu8gJ[=Nў `k>(6{az`q>F$iݹ 6T)Ty-AtzN*B8bč9ԅ@Ϧy[ޤ?SB1!rq̑τL}Qt0M^!Dv!IkZ-RHN 6}8R0 mq/gߔ2)tލ^]{ Š]HafR& !w.~[Ak@nOع'VvkivȉNɾsjgV'z8JqAƴ&Seu9}F2oIUU% /vߔSн. 3k7_,Jv_bX过&G [w| W9۠5+W%0DN=q:SuO7+ FڛKbNj/BgkTPԖf\%3o]v-8f>7LYOImcd8o–sʿOÞMԏ%/.ԾeɄX.`w?_oQ;v^<4}yhmd h&ˑT+H3{cb&3;K<29RLޔX)ȵJkݺkrS$G#> ?`/aXbm}=ѶK}dFxłEqsx c辻Lf8A"{ i=JPH':<8~lqg1￵Uـ3Vk{z8\4q99$Ჿp.-U@~i(sH ިQ_]'&ZfR@ ܠ)!Sb?րWH%yJ*{a<>n0Wl4YГMSɥ?vtgv%,+b:5ng`5[ #|+'ȪmzhO,e|9uE=- |n Ӟq`\Sb¨H65M1 ̀\Ե~vΤ\r#NˢQ[sÓbw_OBiBK:C'u! )9~أiwjG9%_lfe*WA&8m<]wG/" *uJ]$igI DP'QjE8Be YZN8׭!Ce۸*`戧>?˜g %#O'Kʤ$vB>AH>NRŶBm:|81H2ʍ]·zA!t(OQf\Bػ~"=?TEX)Ύ/VowɭMeu<%=[a 8ɫyjʄ$Uܕ{~Y0z<͒\a|^VE_O^m]+{LQ…W-hM8L1x!کws;sErv` #E!?׃Vbm$;kƘf ß&B{(rh 8Ei_dɫ$Wv`*LE d\R!TeBG %Ljy&`DÇԞi֤CZ}nIE<а6iۉ +Xv?Fg&2pЏ˂pZIw5\mJ)桺;&0.$dSɏ"_=A% RIT?(/2c א]1;VISi;7/1 7V,|):WA(Q)I/ eV}9}8@P獠G2X -S$nam}"Jhq[֯#(L{R5?&F*1jCIݨmWzE-O0z/vF[nJ#4bb8W4;lFo.]%pI>M1WC \SaLY>&.ō/$"kځk]p_..\9O944 1Ĺ=NxQ  .a Z:g:S T/ qfDW=S) 6bfCM' BP@#~i;dQMLC)s{-eܔe 6뚪-=< 붞qW-Kg(Y ^wMKtOxtvT2i.1]%+.=):?Kkן2M\ca&3a H(JUg9*7^,0xQ2 !TIHT2\?Iě,:%\:04g#q0iๅU %p㗸Ase'Kn 0h CZ(ׯ !8s#åUtƮFz {xn~pCx ?$J&wsdb0O [hA3- ǛxJ753b}z;'g)v9+a|Yje /U l#b3U0+1m8ssYW8LNU:I^a S, 4ę[+O|oO `]^nܗ|T'{[b:0mfv#fjXS$wny M#=!})/PKCЖP\#QJg6>ᠷ)5A/rdjZ@ۈ#WGNŗΎuR2~qw5%4TmX.[ݎN6>2zⲸt]-^ _zڷ_(:{4%!>1T` ϓoDi^I& T'Dض211ȏr0_׸${Sq9^0Rѓ`M`$Ũ4C*<9Wi'X0ǯϤ۱vD> e[0`:]KdD7}9YVMn;aTg+MH} 7wߘ07zK.9N-VW qbDqL &9Gcb)g[OǍFF\cF0o1.S$z# H,m>X,(?6bNN׶N[tHU^Q!acP-agV3XaIEg{|HWke\vtpg>(<+o1p;O$ai  pA-Qd̀fm˖"څY^]:Bc/|^\8 ;Ϙ˃0Ӂw.?)NRHSXrʫwg &F?Z7]5  286o2mXEn2`t37PC '43Z5al:|*RSmWVj$ 3KK]uqWgx t6eɦd+Fifplz"2w䷾*,fs/y m <;H]sٿ0%""i7@>SU%S٣ߺ숇ڔR6F#8NȱB&'[tÈ0It$@}^zIjF)|A֤ĕMrE5`rDޥSrޡT`ҫG\7K.iDU#A:rԾT,4m<ȘO*:,F0HZ~RY9.(v'茵+`3*W fOC7^}` 2(TcJ_R+[N vԝh؟0~yIe|SlYggLЊP&ڬ>hu3(鑏lg$J̈V^=øԈ6< pi/eFU,==W&Q6CʴaKZ5X_ W׍y (g_'`:nWx%@j1`5O]޵Wr:[˂)a.;m24f Xa a,SH44{8,uy;:Skxm]OXA?Cee#  )}pwIOqFlεMf8$;Rխuَ\ݛfqtQGjیZWaSkH|$?6tR, ~_g,`SH:%Y@}/dcf-usOPџLH$—t{:к0s%m\ < b:nP*ixO\+7`*4Ww) d:v#_W &RuņGGBo.kOjC٫^alI&ʬg4ψj)Vƛ lcZffbƗx⧥|jG`nxk;65nD<1*qH>0uQ WA8e"CE,zNTfaX@5OLg>ˤɌѠ,52 gKXz49<8Z Ȧ8;>c! )\,ᙰ= <5kKRc[NbغphfmIWRל_lVW?sEtqy%GSU-Ob77Ys$C vYh~aPا,'[y V.&傑Yg. 8e8.P2_qq} bn65`TW&&J'*~vkD (GѡݞqoyPGaxH9:TfJ&'9A7{&(D s*3EfW&\V3GU 62*VP~ eAĀ䧐NJ.cT$2KhᵯtދЗE&_TfSߵ$mMgyN(nzcBT)"c7QʞJg'K$:*Oi jtt پSv\ w@_NYIМ킙A`T⅂x g,ӵx`6'#YY.鸮i4`[GYmIzlHR>/K jǻhdY7:Vv^#EY`9}^!T_ Hة8tjf DA8 D&KIR2{;m>y$YeqG7IW sm$ Q0>HRFrվat x*?A",.F=&8V3A2H &lRDJH!dY FR?y <\NV-,h22:pq)]JDf Mg*}72 guoOu]mk,mŸQ&W)|[\j(w#{jsFwć5^IiPy?pF U[#&͡'.P 2X;z6K=.Z:L` Aml;+oSYmt{l w?Lt8AKv0SԔfs~rqͤځËnZ@Nbe*qQ.R'˫!ڐ\׳F~Gr͠GXg"xIw^5=->f#VMc,6zM1Dn]I&i(jxq< )&C5>j֠ziO X,3'3C SnW20m.|@o!i}> iّ&OsIEo5VU"~p/=$VRݤ(%)N^rJo&m#%\K^KpT{࣍ĥ?*8>#08X(?@K9k*5iXC 2e|al&S0 Tp pK{RKg"ddAu姂D$71Ӱ$fJ g\|ߨ؏ɗG3Fc$H e\=DP+`?p$4J.%sWtGY@ +xTXA#Ҫ0lAndG4V=~&7R7CQ}4g[3M66;D?Tt ءʩ1U2~dP5^k)P8\uR^DԉbV#>uCBN+v G4(EiB_mG8!U#\]ePa!1sك㋉WS{f uo+KMGLh:zBylJRB6_O9d^&$|*~䭝J +I˳KXaj@[`]bYtϛ'DKe?$KzqUssp \x?l$"Hաa8s>u0c\@&\ 4 L*z}6kp}A$Um$&D~`Bȹh@G++gP| :d-0?$2h_TDԬsWv\tYW|j$~ yM6Ca"@$bB5sy8W2Xx^CXWb 0Hg_mX6pτ+P+PP`GՓL|EHԫ)ċAI<5݄; JN$:ъ7N`W'v$0^F7P i0M Wܭ{6e%w#F.cmI-*5 ϟ7c[0*[r~HhXDHLly% eΗ|\HȌe"9 3,)R9mnHl|{, @3hRS6BG:yL#Y\ÏciiTꑥ8FH𭟗ԁ!g\7]\)XGjˋ=6(:y3 h&M[6?xWn5D~3UJ>ڒ1[~͎^NE@mь5­L}B;-;z}rjjQ ($8(wapx۷GJEWW .F֔3$[-P3 K8rش ^1. `$=cpx }nED*.=ŏ8b'Pn(?d,jXHTbxcWY>$m]VuŘA29'7Twe]<<9dD$f[+[+uɨ=n`?T "Ã]_?kfg?GvPUNh&qcϡBuo~21 !#\jƼ砻ƳUnNa@79DdK^wo'F鴺WB;_u) fY>wV=\Nw59Dh zCPVΓ'k":'V\$,;e})L?o6.x7ޫk{546 L>CӢ_`LZT3~&z~peZj]N-L{̮٦F҄;~,M8בdTeE>Wʫ2<}wy&LG!cz=c]z>ϒr/Hfz H`!` xu8lb>(3;kY;}EGSbM;$SxQ[890s>Cl҉- sZ^:u$,'м1;;n,W,<'+Vsh1KFf88+Y*\V4 B 75C<,1T7–a 9!6 нEЇVA8 ҘTŮkMs+t Oȿ p^H@yYd"R`Y Qg`ESI"c[|3;ЫN[BLx,0(_Z@,LS-;[VFKJ:E:E#mȍ’o*}92PĎ8=)BA ͸Oe3w-݊7'b.D~a;Ρ=k4*>^g z{4kdjo[nWY=7{0;: ICq>ZElnäV s S{N[yskS ="#ehzWEɪp"&f;5#4yR*"蛻H}b4)!<[rXM](DޭO(z!c%c\28O}V(&-I N=ZiZxY *5dA߼:biM#,"X PIWo &bMltzW"fϬZPE\˻r//Ҏs4>2};BwQ=1u볧oz!2ocb IGBHNIna 43ACWu`Ou1بN|e3ԗB*IBi`3+&rŖc`N eL]EPc+,e3+!?r kOufp k,!}R"ɠQB]Fܩyej2Y\MhAg)Ql5.Z:OWϿFRnP1$}VȘu]"f2 ֙D4N. CHj*,rD쥾XvoχvC9) iqK~lukOw< \Ώ$h=eݲüe%|P0M&4$ffGjAK*dzW~Ex/o5ۈ)G<%nyN+2tH2@ I T!Et/J/n7^zO=j[pMyr,;t;)YrQ7:οiK*Ą36GȮ^ Eh۞̗" \JLfr!p;~!B볫 C`mi/ =[-Qn'l<ή{nTxl=Ҧ=;Z~3ױJv_EsX7,,o%\zl{lS v_H{(1y HrQo(ZE\FkZvY$~HgO% A0K=94l?FUX ʐư4)ŇƔ?AȪI?uU >d:J s[z.?Qq0F6kjC' c[5&ذ:7 %rMμG\7 1>ĀHgىB^5T){#RqYStP/yJEis3M*4S%1囡'=Y_0A}` =}r悳$RHk/ !ۃ墜6ӱ:Zd*{8QQb>F">{u/vk!WHP[;yu9Ґ[3L}=z~WK,aEʂ T򻒀ӊ6cIW}*ۘT)eq¶p4Sj^ }d->:2fs}`ِ𬧐ewUWmm=Yixl;#ys Hfb>WML8< f#ksT`-j7ŘLhF|_yU&%|j,,~8٘5^/H4Zm;]6o'_N<7c7}B.`{CYL͗m笀߻0*GXDo$x^ 70U:&XbѤW1i+'Ŷb-"%loj+50M=uAa]b<ߋCEٻTUz;%yܵۗ<(/IN-*}ׂgma4&P~)ΑݐY9XH K.2u;5Vq skh4|bIZ~mؾzf/-63􃜬L зD2{X@! d9T߳K6[9'+?Ee/QN(cteZBv QQM#u2kIMw &`S׫3S|`{*HLXVQ53!C یѲZ)d7Fcnq/mn BHy\mUz ~hdfUf%.IBYņFp6Uv#FR0fb֎_2A :2aX43rHXy6>[bE][Mi;!W_a|Vw =^L&:H; H>Lhir1=s -rn9Kvm^u8HK7؆1nc~&s`Wzڲl3&ϵ ǫX+<¤F/JzMhzn}G 3^k}&$­b?4 A5KaߦI|cbF1`:8/]*kiDN,m/~KB3ű&@l ^m̐}5E3Nn|HYrw3B'T#c0`(etE{ ؘI&食€4&EDjc[TWC7[lPf _qo+i|\(2bAIhRz lc؎֙>yRN}h8+JV5I7Nfm:t:GtwJDHip6vه7˅phh* xkcZ]VzhfN<0U\Q&nEngzCQ/} ߣd^tҎj4$@]s-Jۖh`yj c//4tQtQ̆rit%e{3$&Qo`!Ou/x顓M:7՗_`D;OtdcrぐDwj[3+4^"1ǣX!apR?Za,$`C8k[qG:ڟHt\p 6E]IA7|%n {Q  (QcHٓxx e/݈-!K4G8AG\s3k`J3]ԚN6L{5 Zν_l)cKy: q1gu>Aru3#9+pom2{ dA%N' pL0 NL H>RIˁopВbĸX aR'+nG3rSؑ&RGrsN^Qډw؇ލ]6zF4<~r>݅幣*]>a=8hɉIJF#^a]3&>!>`~+֣W-[%gE5bIN1-ЊGW7 ,X=U 2Ґ E)O63Sڻ8c*+Ґ23!skU6|yTm.ڑoM#͇gЯ) (v%t !ԚH*k%BX'&ǽkqK~S%>cs8^nf)Hs'TAO em2S)rߍZ c%n 1դ6,sދ#l+Sl7wS@ꑩ[,8 V2Te2P$D9 '/;vj7*xa4dmQx٩{!̋ ޖr9:#5egFڋxB'k͗@٘ҍH~%Ԑuh~q1b~p(.'>iP kX4ŀ^$1^)M1l r>]3SAQ(zM>!9ķW .DDO3ޔnГ7&˿|@cw93TF?r{LVTuh= 4Q]&[UĮAkmʳ 텧b?2WtSBݚq{,w= !;efIJNZ|ۙgI[ @yX&Z%XDmUi:'~]q9vk?ک}f*UסɿfO|zx<G%_IkUt][R{TwKvUǣ?B9C8|$ȹzGY`PAtySDFʕ|G&a6/-QWꋟ/+)Bfڍψ2EF1pڎzHW&/doϨĵuW9ẃ?.-aDv4@%`U:W(d+3WQ_*Bzße[ti|Mi KOr 6kHJc/FҊ`Ho+ JqYpAe8[|zѽe OQp>#O۶S:`bu+6"/q N+!$ ('dK{{yUJž!x,џ\?PF_MyEzǀ yw٨aӾE f f_|[gvJ><( y!L"쵙$v~*`ψԙ^%^0.E[@nnBLڝVkl٪4GP, t)ȁrxfr%_wE!e궲o HJݹ&3Nbep If51~;[|DZ॑þdp5K+oF_`神rx:HMG=kOShx$MJMk J./Hl}I;aʖf?E׶)YehʟIzXVx9kMl{ѸvhP)㻔WȂ9Ԕ;|ܽ 6df9PXq?R _o#F_O h8W&X*) ͺmkHRSc]4Þ%.՝ũws ʬsdŃv?` ~Ǭ0FϮ5ےF酝#rK@wS=DZ &uG9 4GgDhjw`b}Vbg耵` @DZv!UtkP:IV'C㧇 "A2^4Eca荛[մ8BU6YԸՉQ#aUFc }r~rxp|]F=fY`eD= d d!8ɬ$G|Q>{pA4KjXr)u36z^3C9ؽbrAܒB-,Tp\jB\2Ͷ+d.3=QCmC6&=a $oH-_8%Og; V:Vvs[#dC ^e,hood 5Da ԪD/J(M iTα)z5*;RSSyƫzu%Ig[v9@b)xTu{ i]aFb7o3ƒ6A^7DAQ*ImN~=@|*{]<|#gO-E9'Ӣ!@c[bS@ιxee>y[T?Մ$={uiB*C ;d8͕,{Vx~yM`4~ Uo!k*4T׋pY3 N >F<SI58D(g sLAqtg&vx/}pAb~āZɯ2əjlC{M]lAL|>șKlPt*fd  )#zs0%_:ݾ,0Ҵ:~hOpT`kmnUtԇ#]jt4K}k \]vV]]F5g_j&BPAbsG*KD1# c!bQoO)m Ή0<_=|z9|8<32m/,_id+]̮Wn0.ܦMM=`wV]R:`UK̈́ ✄rBVQԥTM-d L-^cj[$*͡. O "hӫ͒ň6k c7 ~L+1#hH_:;u0e<5[ ,=8L`RsʰL|#;>rȝ? vP Ò5'SΪ JLɏZ3Rb߸>-ˬ̀ ,h''e"ħ- M;(\XY.a\$ip~( ptw79pֿgKX89IĔ;yQb 픟Kk r|C4:es҄}d/˒8d+ix"]ɴix5z) 膰F@iuW3]hL#Tzk4{o&'.)kBɎHҘ-"i@^8yHk1jCA 5inށ/B2ڣ Y %.KUVxMq1$x(^QT4 %2~i^3[meR]ӰgPli}lXޔ^BZ}{1^|=@pk48\ =⣻3*5jF' wz/aِ[Ks*^^v[-5/#r+bcMȑ9NO5;? 9bBr0afGu-*Mrq9~;!!n˷csݬ n$#YJt8iHKJs:ctU)YVYr')賤v|_ yĤ K[sn1P.ÝWWDk_{hhIk=3fβufov\k(G&f-oYOheR7SLQ 3qn9/V,9qry)Ip[/:TF/'.EƜU_Ɇfsb,ϾRT/hIj\-x`ZIh㵆n=aĽE sK"V|dlF/Z-@d2ْܨ 7tfubz D{a[ d +kFYM\s?T'"w]e"vxp1NZ G'O]WUcs6^#V]SBı0Ƹ.jw{Kz4aOWဂ'}@2ʻh[7 qݚCѱHG7%m0 4_4/ VIc NI{d9o{6a6<u_ɷCҦo?)ߕcf|0ŋfXոn!+l{00A}[P/X'Kv،U㈘Wt;Bȼ*X=?|ivw(xÊқQPs[y1y,˜.-QY* !I[Wkx7>VZ*o59v~j`<#Ԇ.w cEr)DN|7:O`—o5ВlPM[,x@וKMEϨH4o\*eJiཆͨA%&p(oy'nx]A(?9O.n<ZLɊ6%F A\5vk K$sWFj NQuu`=Ii6Z(2ZO%ZO:fu1\謪 O:&U識!+*aܼ/ܱURtv9';.ev_(mjs~!sC\Il`6EoxPld-d 5-[+J=}4-*@@% 2+و#C+@7eq(*SfI+Y) /ܡHQt=Y{9:`t-:TUspۋLwThV'Ͽ({;ő`ALns zÏ0KOExϔ%C|ˉnB{xǞGRYֹ JȆpogM| LbhGn(e+F1\LeHx$AJT{2.nYkB>"D=4#1b_s~aiVIFےہ}W Mo?n$[yA贩ɪ%WT=TVIMQW[KK*눗"[yv eE>sj W'Y.%?I) )r6v&+%m)6E)hqf %TC kb$0Ogz['w̄VvHY6S dE:ÎJsMsPA쉐k"wh@H; Z`Sǩ1=N5C?f;ŌoPNKHcӒ"qm`埉C15?Ih3OEeRM)D%Wx V -W) Dڙ ?JIG#kT@ʷ;r8_ĠJdV[1K|^ER!4skqcͪW행cCz#gmt)2lщUJ%?[Wi4Js$>= a=qZ 8'2=$j`1DN[:jм a~ a)CgېoGSS(uf7|4axm: 74DFt7öVT6MwФcFc^l'_J%Bi, w5ˠ©J2va?MG;aAreH9Wf`K).>n!3%oJ*yG#ќS*#&>Ry<(ӱ@X ILBbE1\4\{ȻfuG&s,3oEһ!AwU: c{vTZqڲ7e~-^Sx$ ̟LO :?>?f؟)TM6ҽo)9bc#,W%ï{;|1}$n xtK(@+uJJlrK=|0䆄]HiH> \i[d Ywҳ煘5x7JH?c2ۀxxAzP:1E:d*XcÎRwf7ŵgS##1mNuœ4gne++ Jf{D}+ Wg.`j[M Y*Q\_Wbq5_7qM5BhqLaa(4ElЙP&!6J^p=.g464>jkN(3u?K9BczaグC-$[DCUn ̲4JN[|z-]˛ F6ɑAemPPR^ܵG-]C& i}/J6f]#j;{ ޱ_@|28Zh  <3f xR زjʣw #ؼh0τy^*y^Sc D!ݎDsoe43}_NW&b2X^E^#t¯ %V_YƦW `UU@{(Ouy*h :-:( cHζJxN^]j _ >~=ZbJ @'{cӖ$ܗt6M_ ;"8 _A*źgdq6f 3y6cA#VGԃ}o㙌5t́~31@o5FH,gCحdZ3ZXgrOQE-uc blt89L9Z|c@v- zbovaj62NJ)}3 趮7?kDxiZn踲 B翨!8܇0LK=a>o8,./pCLjms[$QÃam:ޞeLyLC!l^Z_-N4-rjKW0EPyuIV%;scXIU3r ?Cty"naBOUV(!omuAxXW̎@M"@ I ,kJ4zxP!23J+(edɴPԧ BѲ3\ЃHs& &/l?GVVgXO7`vzls@;ŪO4%,B'H08*HE֜ >惰lXx' @q{Փ^iP5DKn»\7ߊ.pVE@2q {B.S՝&ZlǯZR_S:{LZ<9ED{F xq?6r 1%>dqa%(%BSxQ j*)8Itx2JRñ]$TBr_V L]*tct<ϻI3Zbn񽏾ݞ'<휺JduF+x?Z=I\V |6Vj ĺ4t"ne8N9%W ]͢KECX/i"[Q?ͣ?FEɂzk]6Կ iVNadF%+ +|!5 ׺J݆ӑp}]<@ѥMU bS%wl"[i<Ⴢu5ϗ¶qLm Е> b?_K)=C$ ,>9YbYcOsvs&jNvd"ɼd^2[<87<г==`$poƁ Ӱ7w wAro|B74[)dE9 G$QY:X0_ ԫ–$-}ؙa#lɫo5m戰TIV6uξؼ8Y-_ OD9s[dszb/C?fE0#X[, ڕH#gR*Ֆ_VAF"O W V ^<&{iX^;XIoIr/:-/dNx."kAmp_gIyguŪ$NծPF*Ǝ&}@`OI5yI7#HANP-U{'3dZ*jy)^jDMLޑegHrGYbc5(R?8& C KLrQNhXt} F)]A5 ܂"[fȃՑat4+w> - <BO*}LXd}7OW)cܴ%Gz>s.q0O 3ۀOAURCQHX3QOmqF֙ f|TY,c;u,8gCi줋bZcn[M:ԧTWV7*ߟpho@ZT5d'FJcpQM33T1bG#|ݪ4*`MSf<5QڶS^rs 䝠.b LX*f쨯h*ѐl2} *!ҲzJSՠr7@)i8L?sue^>Uy~uAخÏExN(PPOYϝLFޫ l k/XBL$E^œ aŘc^wT`>*_o䅔-бf| }]qw0WbnuC;2Հdx ]" w9eϤ8ኻSxE~#z?AdOMzY}+PMly_"%0e4QҸ;^ { >Ώ&Tϐ4AF]ڨhG}V$8m~[: 1F ܱ<>Q׏{:i*wzzmЇ2d;InAd]9@-T;B5"܎uJ }PRbdR*.XӬ2ϟ,|ت.? T=#I"߹QB8Rgl`j˸$)KD.=V4(Stc>v8n"aމ1A»_#E깆1B9 &|sRQqnpЙ5dA+J o4eJ~`(cD7xwEpcp8rg a|Pby)9P/qڸQ+ H>=DP>3rh}OSS+K:!?'ǜ*zĿTYݙu50:8~m$"Wg;ODI(f)VB#rPs'/B>K18WXC]:1hd &cE{M@OXltOyIM!6p&2G%VI>\GS^.#M.'(*=h_fm~xtwtKHguyۇ/VUP9Zqo;8#ޖ^絼2ەo$02]ˊ5 g,M'f6kzWƵ7*/Sx6Eĕ`eE0\ϿqMr>LYqQѶr F\9u4Ҕv@{|EWߣzWj>`hDjZ8IctĦO RΉg&~W]pΤI71s 5oe<Ԓ`& xf%^2aL #E(yV3sW#nW,!*m3_"("mOF,d$F_cg;9/nRTf=]Xp6 v܃LxƨXrr0 F,,Ui;W2He !%u Cyh;x4vyK@S#zc۩̹=P'NsɕCY XU7~W<.v3oGą;+J ^ ЦKvyPK9}2ԚCl0޶[?鐊Vf9D\NV<ӚA`=z |_5Wו![dH{uTןV0еaFԵvV>%l[Ha~QXNM/_=._r2kH`އ|C{(w`=; eM5Bx0Y<&od~V~Vdz΋ ,y;"v& j]\ }ƅHl"s]jA ewh_Ϣ._\|u08/ܨ9 AiD589NIl8}" _ :N){9GPz_D*W0jrUNu ˱$[H:6&sbՏ?5|Wiڜ&/_Ycl>=b/w7ߤORצ83 rf) jA"; G3U]R[W,w+MSTHk}KR-\kv,#S#h$pi9|ّhgcn)ֱUϭgxU*(23< \׾+MwdQY|v꭯B-$sWiEnT<&<5=l.нh ՠ/ \"hR_SC<2:^@pς8ie=//+[GuJعK{2F>oᾳ+ RܖWb `TH!F3q_%Jݴa>JKJ }7s],ZBhE [?|`'ݩ&D @7CȔL |8*Cӈxezz"R0܁@Mk.UJ[rt3 vM&eԞpu8 e\c0̥  _Q(#5wns΁4IRz"gNO177"aH{-ڗD`y^R<`QOtR20iH rY{GWƼ@!Ef sH9ML#փִo >WوE1~k>k'0 @jS<2M9(.?ywjXB9ʼof$߽3}I81srxQFi%VzFas;sI x;f8b AFkBM%"ĄFlK]'p^R0TǜV {?4EEl 6n!IRUQK#c+ڱ -CX" Ӣ AQq$ A4;2g'iyB`"-li/wYxUg7==JzC˽ /{5rƻEJ'>ONCu gyQ(^Ch Bzlz"oW5ޓ#i"ԧNߊ3nv]2sĮ治x)A]ɓwg8lôZD#HyIt`ݜZŸY/P/)m.{xw }5`aG_vIC|.ze=>8]yTඓ NwZť54B>N~ҳW^n w*;#3F rV{-*'>Y'fLO+AY@>('л;Iv~9\MYo M:H(2c+c"?Ql#PSoM{k/GUڿ3}a-Tג 9Q>δrbPF҅ ^$E%)Tԕp1X0hHLAJ [blݗ-˪'8%d2jP̮x)46\\'2)E'RJ2H5Sok:roXKMC GS^:n Gˡֵ:$qе%DR WuJ a=۹vthrr QPŇ$w1a~Ltͽ>A)S$JBK.L/6fb$GUN ^6jU;Xi$t Pnimn1~ R*NkZW8.Gȫ\~pߠz;E`#LfI;N<(զ6a;{S vuڡUQvcrLiIm`H OWOW;4a¡m'v sAz` lg 0 9LO8&zӎ0f Wahb[`~>_[랗ZMfV,yCsfLj&W:q̖РTXf'G}}2l $5hcy]ۧ ^5(+RtL0 4=BMiXѮ3;H#b,Y#RwŅZ=a{| $<<$8Ӡ.3 >N6{`\(GNf=$|&@(b{8B|Jlr$ߎBR꾗sЊ|J:Ñz!XRwLVq/R$,a\DO3&ɖbh؟ƼMH-N9~vWf+(||A^,Q/-8g(%k@Z#n9~./'NtL"Ȑk:b:eOrmM8MDqP f^wXXN`V,pD;T0T]5s|S-6z _mTP*I n3aa`pd2Zap %jgÇz>B٢2N"K@Ҁ㲺.\ -p~̠WH<+U}NAk%28^.#||hDR] ^[&0ˮA~Zl(\3U#2Y_^^F F],fPISƩ%f.Mg Ŕœ⾧}<lG 7F?Hz,3*1pd̰B-0])(fwZr#H %-nS-9Fvx4oe V";eZ|Q.&q"6 .t'I1zƦ_w#^=޼"#~ c~# `e4 D lڷ(M6~Q;|0Y2Y#_c}TW_9PeTkCi&N>kzwPJp><vfUwԑ\;}D.U,+$m5q D2+—HkyqmJgĉS||g6n3NW.?\Op+<߅QeVTGOc𬽄T&Tj]ZeiCrEEfyT)Q:]:xӟ\)6_m@Zg\B(x!gm}]j%6c֋M4ԖUa/ooힺJlbGf!q [%yG_Ҵ˄+zŊKhb;R2 d D1ULW<[MNꨨ@U!/h(9ܖ%d3d&OƇf>+ /_ky |P@ &`-D<:zC^<ٕ n,"R:a6@;}wܧX-(Po$73|^aJa*Hs j1MO=7't꧄05n_lF+pϤ H,vUیȴN.p&2qvo?W=)9~^KS7VOWG-,/Bw t5d͡8WP}3bl0ϩ05q)\ ;˶''^Tq0./bjRֱHך0f>%tl92Gn1c:qTiQ M"v#֛6ד젉I^IHK;D[?MNLV}NlV*R- qJM!lC#v_nꂖ'Su IAM op*Hٵ= >*pPP#qo͈+> jr?ÅUPj q@vDZʎ*;6&m7 yG/ dewQ' MpjonT5Dvճk!I!KC#[:nrX`9ТryAm့9TFU{>\k+-ډ:Z kX(~258KВ]mn)v1~=0 wYAv֎^+ O9'7VoH2n0̼GS*I #&HO)UV.M$H- Qm/)[K |43kW]t mj jM^RTO鶈;Y(S;6|: ;fWƆB+h^{!s_e\=[]nO϶h39EIB0$*}7j$~0(Xde+ mk>;<\169oҺsiUmjs&JwA #2O3I,'e^qՁ@E =ncgI}*ϟa:|aNK ȒJ.]D;d9KQfGsɦux[D̺F .&bcjܙqZi4/-~;! jSWi=&O#]%UedXAdN2G ɋ&%ź.jJQx˩{ cFr25͂:[AC#3߶zH Be9tElUehDJk哜r:b!iB<};S1v,$,0-)W4b}_?xGp? ns7fG|S4qnQbU@h2Ǥ\ձF3K0Tx2C9%ynf]&2Ji%t@^$ŖJpũ>a0.0S$!OqLC#juEwvg{/o*Il?d)g9guݤ|ա`5l=Q".O55o*Ts% h[ k /@=#P:EwϠtS.+fl8C #YC3**"XXVMOul@JqR+@Kի!:\} !l=U=0%ԍav,JuXpHeu(6|'X3BC|h );PW+4{͢.ySNg]y}[Ap3",[cjW57щDN.+ӟAj2Uϒu;[^śɐ 3q'J Ûщ\Z-; -T'Ys.戟1-p0>ug {= '2NR~AjAƓOtjH$& [Th86$ yƠJɊ mR38lu~('zß9LOji5 ~{=RùL.6 'y|ELu~CBy8@J^:v%ZZhn!?-`J,h# eq.8dE?#:A֑skW}^_`s=T7D/%s|t !eڶX""iko\c ۨPGdrr2[K_f  MPAdLXEriۨLVwnVnEwWy[euʚW)Fݰ xw t^4[vs%hH67W:D)-vd p{7tJufɩsM~q8Uϗal^\9d-uukp#̅Ab0d"}W2Kbuw18iC79K'8r{8PȠ鳥o@6zJ38S =DV>Գ17MoOm"AL^ y(K_>\Gvǀ U厧a؇#4[`9Ts%>7!&xtSNfhiƬb_ P;Uh~zioLDNU3KC@jW q^a')xC@1GӍ:*ZKN7(aH}h'I<3#Su['agQ;EܽL%\ĥDzcyɖzn"|Z.od!xRdQ2oJ\c \{EYW >s5MiI܊ "ü[ owDv[̝q5CIr>bD}tV9% #:G\ZHoVਈG8 oΖ"UnN҂n4vnj$Q*)ۮMnEڦJ{U,SIȉG 3a?,CK:ao'Q_`}/Dx EV&BT̀Z pй &_1 D.:$v~֐mBoر :gmKhMne(,u;?NO> =jD$Ih~Tp]$)4J)@؅لJrl")zD(z'ͨˈ $$$_EZbվ G gJ$SJs=HdF_\ d9aur͢BkTmWL;!*p:r;$T "Uf&)Gܝ*:oMTC1hz+u@u&a}~Z !,VuTr =Ȭ/pN_c| фR|"=ŕN b4EݱJ/8>9qNcgd+~ u嵪hKpP=WAPBBC0 u)2 sXj?pTGGKQpJ@T*'aS?d`[\m"BFզ'`NVʮIHrYy u_`:5Rh~m+.; a.]L6[bD?q(cZRW}co2GoˢYa=Ze4cW @Ž7[`5_?4YC3 v|8m@1'uUdK;!QQg"(5fEw⛥q\՜ s7ݭAp9}5pE҇92|֜esE;#Ypu64OYR?^!p(Xj$e- o鈐O|QTX[B Mf\m/7o)Mk_nYLAUʎpjN?E]T_v9 ~ZĘ07 _YdJ#Id#&lK9}#Fʆk fq`U~@Gz._+I&R̐S?q"4\"` 쮳N tVȇqd&Q/tXI0*_D8;}|Y*.w zih֢$PL"JXv.31(wY8VWF7Ypm]62ХO{mM'^q;&40i`,ށ2=K|6!A)X0ʕ3hd̈́z{%Bgj[.$'oET_\ ĮAanl˸3c< Z$"Fz$ nE{Q5N{T]\!V@ 6'7!`LKíVzMa籴Ol#DhT:ϏG7B6ї!iU1F1ubv  O)sM}M%|}@l5W1J%Cb窎bsg| zΤ{C]1u~ĿߍSeW*mY7PFRj,Lfk,ۣ莯҂CV^+M^nLC"=[y>.]h'[5]g‡L9V@(ޯfHman\\%Kn*H?yuF9;Pǜ<dp⵿Hol>n\8 iOr_A4=%Ls+H&_*|X<}kwA56.VN">yW(`4e86 8Y{rbA˜1F\FWؔȒT$B477k*߁V G1w1ܜz_(l#'sDln(9t8Ytl+›A˅fod8 mo-gL*ڂ f'^wAS{k9]Do֎qp: C_|3gGl\u>}:UKgѵrj*[1yQ]N=_~J ne2O 2<:u3T(7SsE,)Z2^F75x{q>39QHRRNfW,r-e as0)-WBqU}nAGڨU+8 n3LԎ4<{->;?Rx"e/Pq| B@zmyYj<_qF)/|dJ=hT{E qJ€KE%? sbuu `^3U5>52 Hk?(t_$cQ7EGql(@"G0:Г@ICO}(o sz:xSKEg3UjX'6{O!iBI-)sbV?:#AE]W_#$8*2;I`s_wPȒOOl7z:a;|iYxÓ߃ÝE,pk76]_ǣ $؅!:ErOF#G@)T+V"DW#MGEV hm8#=lu0fcu!7j`e3rEB|ɰO9-HZNI/K#^7HZdn{ļ'|89UcFS.ÇOCiFZNH &ߤ"^sGbyld71 %`g2Əضpo2|ݥi:-AAERSTЮ cR^j6=kRHMc>죐lj }N7YH"X36!಴Y%}|kyqpɅEUo(HorNeLhydt8ak?!C5X1\h:U縃-اMҀK R1FBpp`SWNȣ?R%l#zwmzםM1 ?ٙ!&R\O\$5`L-n-fiHk <*b2aqA7p5T6Rs۽Ȥ1oρ!>nEAƴB| O.KJSE:!u<|HOoEhhu]QKd@ άj~Y"a!(lTFGo1A}yxyȵ{'s:I)eR!L')`|L Ȯ Kb|]#qtdr<8V -0!uJmخj+|J>5ݮL `ަeĩ)[q4CS6&&#MeZS;GM`>n?P qgDNq!N r,7yt{VKv7= ƻ >M:{=R,*[+{ }.z6Esy` #b<ϣ z@@PmP!{T @T7M݅ɠE (]uq<0OȆ/Bia73e%@-*Tg4 a*4mU.v]/ufuK;3 JIۆdxة18CU{ua'2XUn0u(ŴH7:C90+n}32kwzI@e~P (kYQ?n¶^=7̀G~#1 ?*eJ;IhfY>mѿxbbE xvti[_r7eL 8;vAvRhEuT=\S%\`:K U+6(M ERޮTN ^ΎKG9"e.ՐzTnj%%窧Hfszå33PF*:sDW[CMzpH\&lځ!ì`GmDSm_/%%öb+5^%D縰UXO- \]5HäcQ @ZZШE|@2^,hs)!T{/\?UJF0.K:lC՝'#͖6Knc*H^H 3`-==(e9,O67G,@aMt'%\0PSnN:90OVa$ͷfsJ_J-eHiFE-|Z!c} )N0~z \CzFUSKs'\0 P>j⫸XAV!1"jUj .,+݅A1S7tDKn@Űah: Yu\Dcz5!vjpQ+Rm܄ 0u:xSq,9R^hM?˦8 n1o$[T]C^7m~˕0BE 4\/Q ]wTߕwpK){61> ̰-ZP[@fvY 2$#.y8wX94"@B՚4J&1c؜>MTߢSzY ڽ/PTx5sRUol6Bjkƒcw6x&+0bg~/QH<)g B >[,ϛZs)bWƶ=I嚅*2[{\܁b8\k.o[;ג)IIVH +$zZiVSVa! w*GCs¹䶄3k ʃܙZ4$^bM$ `AxTo?bko 0bCozddq_ __G4!IZ3 WcK2JSV?1Õ;Z]ջcӗ,I=R3yuF}DMkI X!1qLvj sܕ/> %3gR_Ԕ_FH^P0ךQ:swI)4FN5 wzMLaf[kT6/ށ^FBK"D]:#G6"| L(IƧӋ8"i,^f.7* "}{sǀ'!cǥ?#=_ 4MN;j])C_=Jh/:8TLSK,j47 68_k=?@!Z~wt 7N9,}3JSOhAFjOcwZAwGj neCJMe9T4ߘ׈ PHt){*CUhj򗏸lFq yʬ?*ECQfQ@X.Y F'L*y-R ̃=(>xZ"O:X{{74A;Ȫ֓8{Zj~bcv( 0D&AӾ`?vB:1:iFR_?љͼb]GkREۛWKnL‘FTe|8oPu%h!0*L;~&(ܟ68]|?>Q4dF/267Cci΀1z؅ U)j [ăq珕}t]]T:㘾l]-$bi T"i2Yԙm}p']brJ o3h,a?ďfȇ:^Z.3$9dɊ=vFq%jP$6W L AtV귋?_ /cF@<\Kpݸχr#"HvÂ\nG OW9[e9;jU<(f(~VE'y+>EU)g}g(2+0\}!;w؀]wcv!FHs(3r~Gêeÿim˂4FɆ bIq`KgrC'&|9FͅHYb .Oƚfv~H*ӪƂ:8K #^+U?|:O%%,vcB;R4@?ZW:NUR/G,T0ʽsUfbiIx\eVjw4cU+1СU̖;'ܜ:)2_nq(*u YNJ<|8s%" cT^静_13o1A/o=oZee0XSq5BHރ[V4%I r>!{  O=P!.vٗqa^XӡJphF- x/C6`2Rvxgi\ff>>P 8>Ѳh-tboQN3T}: pS|Mi|pu.fd?2&(5@9ݴ/7mEߓiNYy([VX T/,a{R>ng꣆^J믮5\Df,1jd0j9>A!T=aCakrXA+Wr ~ R@#H!cb26Nɖ @j ^v% 8IA|g Ei\cEH[XWgU4Kݝ[46S)#"|wr{!gV2N>dCL辘E*rݍi(ʹ}3?  I[.& ՖLj݉ 1PDk϶҃] l!* }gfU_9Uվ®zq[+Rf/EY9%-h-i.QO ݲqQm!þ|oZ}(\ )-4F(lM@lt !JV|CAjQE s u2>:A#I$%U(܀#Hs' C;^Ru'%]tx 7B/zމ ڵjhDhv`.ÅkMdH[ӽ7M+?Q`_;<]RɝhfscɣP`reiꍰ/a[#HaD?=GP}$9<$ƃg#+Dt5Mo[n2 BW$U:tNlb:_neuɾ8 )u!J~b= ge5 )H~3V{SW i*B0T5^im#_^6HF ;dAo o'[Zz6wo%5qJx-Cu\?%7ͷ/8mɒΦi+xɆ顮 s{]Z ǫeE>32p=[rHSՏq-beuk:"x8Hc9lt H&*yBݩE"8Ѻ‹Miٲ2kM4W EhFƢd87lA> 7{SɎůc*q~݀lO , dyb+uDf-h9V6әx_أ>y{]@pR[msүҜ˓J4LF2Mh{wSh o( OqLcBd迫I zy7F$kLG湾A)2<~:KsPYaai|XJS_Tzo<ԝ\!RYd>6ueK+HܳE!uϬ22dʔG]>~F?0~"W7- sʼ:4>:QтN3A5!si'+e?02;E;.cCmN,2 jkkcjk\L|YOtS9Byat C&"'Om4l ,Y%š8Ĭ ]3 _DGZHp[z:I9 QkОROKk7 oPyq=@ǽDaƄ(\>xaDDԉN[M^Cr҃'eSxqא:6SZBMED 'K{wI6 BB Q0 a`!w91)0(_oyvXEODƶ[ 7ʘCRr3!GEWh_[SSIYXV " vFV-11Ϫ.~[I>zbѫ<{9i12D$`,a=# s;/-T$OEǁKKP>MC{N(:9fa2oeͼ!A$kEx`1 "..'oK˾alf W`sC#Lwb啈ݿbmeg22#b `d3mGNN:m~0p_i\HI)簠##Hߦ55|Pi2 4!x5f15h7eP?2-;5A HYQf{["p@% U!Sq!Y5Gn쀶V;%{T)V>y\+P_c)v.v'$W'#{`l/SH[Bvr.z5Vo2(]R[R\(e zGe2~ee{TP\7D~FV9:j.`RV1liaǞKUќ2Ka#r9{6I?lؖ2 Ϥ(ǻ("U7rϮuܸ֨%8-`qDOj7y픃YZ\M@"{[On"Hn'%vrH~^z**bEyGoF>bO_dIOG3߱^CyJHJЊeWR+DGhNr+ ?|&^kP*FۦP"T O|v<'1hmYavSpl\j pbv1Yb|LNB˗AiԖ§(\|hѹRYѸ)[@S}mMw]OxdqwHE ')fam&EiBHFfQR-Gd%;oJ d FX2g8zX9M[ѬΠ HxN׿Popv!nG?2G?GTA[AOWh܉<.W)@#UZbTh[] W:A yԞz@RfG+HYUS/6Iּ2).ͷ.\ĩ[{*}EV՚y(Khqӻr\kAn Ŕ;nYfR,K蟓Ӵ/r5;}=$דլB ıbb4aI1] Ɠ$ #͟4kHx%B}"2\UHNNFp->jݍoעӿ|pe{Fx;RS0N4s/4?V HCFK[$3ĕ.lT

a޺?OѴ' k6$s'WЂ#Z0ܥ+<7䁔AB 2*Bz](M|m*6 7|VjWWGC5o6Q}I]9+@۩|Ԟ=$́F9QӨK ̣wyQb6L&Kͷ!Hq܋(Kqq2"3 Խg^#g-bW.2a]Y6NVd:gxU{9b f#=w2/kmQh|섰JK)(>'p?ꖼ9d{ހѹsE&9\qɿ(7ΏegeޙU2 D pY3٠ru ZPlM[J3ZOmkQ[":Ta10_ Q3o7Q Nߛn^p@ ne* :NXk͔K_*e~hY{nTh!%p2nl%veu c3-C*%x ܀iRJ@50$ Ⱥp 9?ȟ I-7Mk^o.!|nm C$b74xD*?#w6@V&[F5ݛug:jw xPʬs+Fu4yҰ`? #kJ 3aSf$/A4+{;O t6{0+ \GkZM F0iН0Dk_67 ѡv-ZL0(l[I`qnBZX WwEFXKɢP.p!Z"0w3g3r_~ke+F`k$'Zڢ3B OdPr1yipyOCr )q XxK 汏ǎ3;7qCNqu7BwmWe:rf, @=?p2ghI 4hdHu{/լ OF' sKzu;oja[/-gՓqsO`^QFZrk[|m\'4RfVOyU[#c=Xć {/xxQz%l53RĬ}jN9pHDN=Η`>]ن"ޝ -wxUKWK@_nDOnEw`^[*j ST t>N4|a`?Q ( y}&i9e ]ɫ5!EB) M4M:p<}ux}&(՜(TjD]YL?_J)>+dL_;<6fh|5L|Oęr-(g+)14~FK Q)iB KV؜1^ӑpbGh-05X:7zy;6 %Na8-O\<,l 9sTOu6 a8vd*\ QH(PcQ\Wka`COm?b-f+h㋀'̩'EぉdNQ7֝T$d8\}\ӮMG=Ǎɹ2C7=kڂ]O[ ^k.~ GGd&0o&Eõ 3&Lc!ϭ $ں3_ H"; MEAkGK6.uNru!_=7YYv;DQRqd^ѿtaWp$~{l*|Sڸ{;t4^twe Rj>"hY6 y'vBk(:nU+\##;v ƙ~Ixꜛ/?NV,Fshc6w_'IX~^|jOz-7㢠PXV̼i ;ُLlI`"z: {qlnvǰFЊY2c :sPζG%mZ ŲKoQK|l H{Bd e e o/> aCwQ}T8ŀRjvIC @w}P8A2b U`Ywn!r-9L4 ko>9u: ܹ^fw-Qe|0",]ָr-pH 6Hވe,_?a&yꌣnx{ y0,SHbz†l ̎%tɛV @'kͯEHlYD~xPh;@V+0h~2! ЍY;EOy}E^db4=lS\YJ0pY;x!8`هT5ij4219RG&3o+Ab8GVטK B!R*~N h&jK͘.qQ8d3TEO/{zR+fN iMo(uQ$2"6&VB%|s|Ԍk :*!S6L}Q֪-gA.9qֿ4M¶|3$Ndndpds_FǪKrIBqrtcش ι$X%JH7vWql@?nbL^ dP՘JFJ<|FT|N;܇z+/{({&cArf(z\ea%/BSCoXXؾ yY9цXR̋ ͻ9aѮN ^M!z] }{h}i|,陜Sy+j|a$ B 3!ۣ]}<|QOHyvR:hTgO`U4"nQgB,tR)iنQ)*kg[˙E^X%K;F[?j&"Wܤp*Y%=Ӱ #lC9XĎr*|h4\|j-yeT*l׀k7cZ/܂ܚ+ *`Z#6X/fOo 9[Izy{Bŀ~!Z0Wa }-hyn}e1MzuO (P# L/7!]_k>K t7dN₭uF,fm?1N.$T phP7:s\ 7vJ}Lf:O20uǽͨXd"{ɲ慰ӵ3US ia|/E&M$ ֋]ed ʅkI Z L*B'Ǹa}CdqqS UZjq\`'`yli%<ɏ19;3 |,|g?.(Vm^2u+k}H@F\w1 ˍF7]IJEO`nSD~[ѳy1뉎؀D? Kx Uk^"uigFQCUQ^$ &/'DeUiaJ|%Y2vЩgr3N# PA7j/g)g ;].w=gCmm}g6'u.7]bHWׄ.*lgHΛ]h{cBGB"̚`_/~.:8=>I6s'`C"dzh"g%}vIIu2%ĔPOu|md̓GRM<1 rʕnP!@G]䟕LMw5p=!M5^F/c۱퐷Y+cq܄OyEh$oKT>Xǖ&VPLKnч=`뾑:؜ q¼(n x\OYXW 2ԓfi8L90F+6GUF}7TT*.2nl ,(_}iFv9ѿv E&RnûeDrW _m, Z =e+ьQSɨ$EuEtu| vn լA̱?9a1/酖 '_nq$SѬl}ڬ- i.K *'cIǗeF&FE6c![(/pMbVKP#ļt'9YG G ݍK7;;* ObV'Ѩ&dR,^QˆLQAԧu;=o$,_&Voōü V_$H{0La9P] kjY|fo$p*TW25P[ x3^Pb8gBxhO0Juy0e0] ߿xfd 0{Aȥ$6{*!H&|g5]2FA+`Ot]9zJ2\l jVN%SH݊=zZ>h&1\ mBv4nrbƚ!MH/錚a@ -鲺^\?GL"[mSx\IV7]Cm$J aY(UhYWJk*{KD(jMQZ jUaaw< 8\_i210ZJȮu:2'2%;(dH)n1 eQ:pQժb.6w5X|ȺB2cne/1)![+Ljf qm0Xj -:\HRЛ-Дᄑ^wcI SAJNU{9TBwfOfm1c\5 H%i(C5)}k# ]1;z$| `" -gB2͍ץ :|crC}8 ߲"m:W>NQo[uؒ.ҵ,=g<qJ ξ)_Pw@OE)-aH۫- ŪCi1)| ^%jNP>N``Fi8¹hy^u(_kj/3*̻EəFLj|o{-0SD'rxQ-VP֜uOgtka9!şhct<(?\Bfa2mSyU$džkL٩b_!Mrt@?~kIܫ@(pK]PmxҔMa\D֏CO_!U5kb̢Ү_}>[(uϟur)7}N$i']=tHǥ,r[hh0L`, <߄<4b~{f XL"v`hWP'8+Ug7UPC_B/Y*Ж1l-qi4tRqf4ѯ%F}b(:oF٥\xO4Y> sY B#.9bP}p|]zyKDv~ZoWT eFZP+ crWoRk=*LF.J?2y-ejhb(4 jMd%{!A,oxAʢ^907eu[A 63?[5Jyhoⶼ*?}ʜFGh O ]ۮ@Zi2jUaDhwwK}i{&V =w7 <2!,OnIxѨwl!}1~&! Z?a)K"iC61+'AbGXcN8թZ2>P)zk.ݍoBG7 !! ͯ&.׹"_Qz?j_Pd`쁅'jB4-0+by`ZJoDa߅Y !'CU-!N@^Pr\@_TqUZ!ކ%t0V).ANrHlP0aUu|:~"ޮy7֚e[W-"8ѤD~42PJPxmD).@~ve^+99T3u,KSVT|NZ~4wCRW凶!gQȞb[^׃-}GHS8gGt%gSJ^bdت-&0丄؆_ii\M69مVoǍOR[xƏ<04;rCW5CvNWyJ#Rwo[^gஜz0_DkD#FUź0XT8Ӿ c&'{Ѐ- B J.kS*po6l+]'j ]Dr,alR2z"ZNxمh Ü QLZ7Ò?!taߔn9 ,^AmW,G7VnVb?. GVUZn}acPr 6 Udw GH ' mPD{ HRl}O'Ae`3Z@rZEhdW65-%c,q2PNi81qq+ˆƚm}Y#uX?}. "s8Hΰ#P&RT;&鶅C?2=p1+-h,D@DdVd??UUAn?'.p4V<f{urYφyWֽGICٍ ]$SD]ȕ"Z=ѭtQ-mjV/QSdV.Ci:%4'MSd>!*9e89wyXj2:E l̂67`Beݍ&U>ḁNE UÏ:.<[ExzDJJ ETs%X:$8:}0} JLD`:\um&tlDJ1Нw M$j|ܫM^~ J '{%Kr`k}vkȽCKHrU=Puc蝺m~Yta3ɜsאd!RR["J36o.0 x4Tiހ)2 #q%IhCNanXkG $-ؑ>F71R$d " BmcRdRnHtqHMkI-\D` )4̚m_C?iGž^t͛iBRarq>Bj,pŶgM**ȻM#9fܨC6V?7]4eY`B88fjt`_ݶ>3&8K߶%/  @iDW5;F\a3n <-< ^J.y|1oˈ 4zWC*9s揟ra8[C4>Ees/Lb *g.ߏ:<4$T0tNɃʛ*?qWfu&r,ҁ`Ďi 2;ImjYj6Jl, . V.Nl.HB-IsxrFqvRy$LVW{ً #n@Tvq&gh!YyX @rpidYFpNyB]t#cǂA%[qpb͑'HeU/T6T YVY78;is+.Џs}@WК4Ӈee/`oE6 WF4\j8 p򳿁 .G)h28N_UN꣄r';HVυXɕfie'r%0 h3Jˑ}f7aXQ5Pv|Mdڧ,2|Iyխ"̋u3)$oHS 4D{O#WcQfɮ`'K0GMznMW~t!1mKNc)jҲaI#%YQ{FY@|錧6y`*r V5/2P): NQC\}J3},xFV J5_Gyъl]<\ i2Ŷ U>UnTR6?=w:4=a&5n&m#>lrOubD(t9of W@ZZ׭ Fb(t䵛e:` r9մ'9zνfo #Ϣ{Tb鞠 ;3zFhj$t~a7 s {ebD . .R 1d fGjFʏbi͹{gAȩcsJ}=Pӯb+|B41 ƃ5`3Qc87Hp/CgD@}\6giH*r1@Ŭ"RF w+Վ&"jhrۓS_3Ws!f9J*ځiw}BeD"xw#~ F yd(=%ސ4DR&}S1t`L#op9v6ר> HanLq>5 ˆ271K?Wd ]=IGU^W]2.*X$KLO+,'u,ml$,%9.왱1_$v[$ǔYG$$*U@0$yJ%zʑ4EPˍ6,rؕb[" ؙuNΗ0moNUkݫ 6kȟq0h( XHxI̋|WS $%m]*B}m6׵36'58CsB"U%(VAUCy"NJR@)6%9Ai]nX@_.M*h¤/o`.})(%)ۊ-/q$a"a4LÙnir:1`_ gpˮN2Ř(o1i(!s^=!$\O'X.t}ex#Gu[I뱺cZ [xmrd =T4"V$Fwҟ5-$Pf:S3ZMl:i>fr:UH]_"f$-:BA RQhkhE\ͻ<$)L"958KgEAԄ[RER76tZ{$v4-ƥ{L^]Awȍ/L8u^Æю~2(%J|9+z 1*t2|ÁhX7 ^=ޢ?%fKvUEk L,߰ɷ ؼM8Z;H/\ud|J+mXDOyH hxK*,%v+1[W(\%QGy [`եbUq1֕z2611JM Y`v<<;2~D̫Bc i\|{>8ܧ`oP"+BϬV<(&( bvRF>00U+MQʴԡ3ޠjpOynPZsڠAGlI :wa̟ IKNuN[+ņ\ kF%-,6ym %F"[Bk{`[ -cJ\ ߇5"~F~\;gb>Mp{D G$(Q(Z0[GӰa]LLZv0M4_,8Rv4~ 4)sUO8 6`N,Xh< m^"j% (m 5^%}xH $}s" $d'vs7k;qO d1џ> KGjtyjE_"G>].ÐT`bKNuuc(z'OΞ6. g~c{6$нr!Br[Sr9_haEr>kѮ)F}ڄ"s X]ɣq/N9٩AJ|>ү{k}/v8BAG<#3 PeƜ(|=' D9)SuF& 㢻= I|/x0,g: >/w:P?Yv(涏H/+9l:ę2í#[ urpZ8M6/lss} 1gyX7,9+~mCFt=J Y#dքgcx'h\zD +>ֱ{|KZS[qzڨs[9?.thB^_4lYRmlxӪ) bB+jS>O(SC>`ˉčL~5`+0=_)Y&ěʮJT i@ϵ0Sc#E!Q3;.VnxeYf"'̩!EK Na8QVe*[LFS0/Ϛʟg У+Cu;ᗙˆ84vYyꑨoC mz"?xR"s J2{CQ{^dă^sb)rw;6%Z&:tpuʆN(C3b%Țq/qK|>E2|P#%,0,WQTPNaa.٤ qZעv2ן.vtXzc0D(:!L% {5[G)Ympm6 χ'i0cH MTC M#Gq˛ykl;֥ozK3Rs"͹gTV-֩")_-"hI]1}8.=/9I!|K{ڦoG4x\ngf^Z8_w!;|ɰ=qym}E{lhR̲ee9Q OZ uӠ_nCS= Nr5zBi8Φ*gx\oM⮳ `2n%C&p) ̾w_ѮL;2fGջ;Z ]1?F‡5;u/dc vVfHT[[;ȥnw7B9^D4.fKHnk :CH6ZdNQ{J$l2 t9^fulc\猟sAX/D~<{$ i5ׯ5cJŸ^n6I\_An(}FT |CԜxbv+2{l\vx1VlAD@|;Jq<7N=8Wsċh6֣ST5hɛ#+{L|%CuHNV3%7X,x] ~e]Z.- '^:a )hE0} #33`ȆU auJ'-H.05_?ȃk쪧~$؈Ҡ &d̵6g֭?>/K6 }vҩW]\9R^w8^z>chG5sdk9M=u:7Iuj[ԍ,ǬJcKFyL NA xǵz3(#Ai Z\YaloS { {ZoE[[Z^a1z7H^8Jr_pL:N3wc̃BvȵF3jK4+Z1{C1Q a$K08(N|+JeG‘īscM#'K+DaU-B'^/7A"; 01υ_B "ٚgcdHԠQH{j8go5 CO7uGPC(VĪ Mm+o&X?_C[72 a l{ N?g *4}Ra DxGPaayvaT|v:b(YrFkNM33J,FhAf%w08r_/؝BV;K E@@ 0ް70y+v0nRǵ(IԊޟ ^M7Ůr%(9_trsٝS:*$E-!%VO%'yS6M{8Qbaw9Ԧ%ܝec(#QbRvW-ao][b{ήeOYU#I*%dYMt-CU,0|V"Y?mՈ2lqDΞ7ۇv3ы@=`0˦;-YnK@*n=nQ6>sW3K$^ 0%zRtSڢ((ɉ79"zxBa!e| F!كaODW((|jAҜ+[o-q EG33v C~8џv<(NOkiv-Ga*Q:ut{ٷק'+7g ATٶ\J.z@aXNYzgJXHoD;U[9}8HKjyQ1p)a)K*dW KFMzLBy6bPmj+egPGK܏ CpRKŘk*g;3EW@-}'hCsЃprTt׮R$ y!ggRf{ 3,֙t)w*龻8E˞vդ ?x7_#ߒPtd#cSb0ԝk񼄁wL7\!3Ow[E#x{׀5?ƈTz$YqJ/>{'ݩ@Ÿƒl($ P]uFX(PZ8ofYH=Qa~@dM}5!̺-ߧQBhWȰɾ]P~-"Eۥ | ZBQ(mPKlE*nHց) @H Lm9e´t݅^%dJ&`O p\܅i}{ ]8 /5$> I{r PO+f̴t|%2*қBGJQ:e5ڬ1W̝Nɒi1+; pNR-w3[ŏkg B)1/YS Ju"6e[Pm|CHu12,U3oU{z\kJgl@ (mgW篙t9Sx3HwOHhW+NThYbh!3-a4֜uuFe7#wD`L6eGyo\ȠuxOT4 D o3Q0!IKB=_ Wr7H%88} 9}ZCz_AVAzs|*P5AɋK,)W_QY En05xS7dT2F/?s\S&wniA!QBϚĕnuÚ%Q(L;43WC!|eR$ֲم=KXtܿAD}@r&j=d]S!XFi?ГLz5}]^ߛ1`&-}?M75^#*+͓*#Sq~2WYD@i)7bڿu)Y;1nȘ}%ttW3KTĬFix}\Z=V٦Í#XXP{$p ;'/9aTB zΐ1~ `t=VWA;@:8;kMilYkyH+SR 5`Is{}L4Fn8uWTLuZ M}}Љ8QϼV>w'IAD$A&N$旷܀7Ƅ2'+LA/K Iu IV3raZ2 xvy#ZHDE~?cށۚ#N)XW!]+zxHoTZb VZc;c\gdt0"ԡ%PJE*!l!L>{fn/1>Pzřz?S#EFk 7ƵM}$=j38/XT= # K<`MP S>iU(Kpƴ>a:LkO.7@φp|dE ;-*LO:yc|t98@=vu^$+9mtTC6%Ġ{&6?o7 lW1<~/LxPwkGOAS oɞ'O|EŶK+ 1Ohͪս!IY%l9<.A`p G( ZM ˾w.*\ ]QwVFfŌ[a0H'Kna1.߻ aXctK$ւⳤ~B.ҳTh.B6*-X@fkHcz-v,L `G#2[oz趃SfȮ 9@|:bm@8ۅI#=ĺ2Z+6Ls?1St:EG9Rd.5"|c6rM[aǐ; }t(.F}n-@]\U=uբ"  {o'K5 g^`-}]2!>cSgzͺ#但6Ʀi g$۱36팛*2\^?c /%'z؍_l7_%!1UOl~(˥P\ KbW _‹Pc[w'ƕͲgߘoT)Ā'΢z)sT>Y-t͊ l$t޵*j.jnҩ NM٠G9g6M5FU Ez}rh52;P.5T^d\clxrEq@xM&qwgp̙yQkYa.;)(0yY`57)<>0@ *Z*e]I 4e=|;O+*dNx',0uMV͹SDbYO.Ns+l_iMQԳM_zࡍ>:&-]]f.`[>pM(/Z=ebhjڔx])ײYByY6'KopO/ckWH7anu< ~NyHs;xb1"h u{Q^[(!_u MlL|#&=冀=)]kW/XX,zbZ QAbYfrZI*2SinآhBX J'd}IziiXrk޽_e:gɾ_Җ׳24 6օa󏋶7sp9 ^׋ރ=rk٥vwQ]}!$\Bϼd-\kʤaf٪fK%(ĖC9[NAHx_zNC V&!+':tbKi'%*f!/9]a_9}73k[]1+zީvaIrP9^3i0F Z,@ 0 x˥.Ӡ{NSßeLhe: 㦳(t} `AؔdJ@KPD!уJNČ? 1RO[-vOi%HSiMÁ+ cÙ ,ꇴ0kqzTGp5¸V4jG QT1/(,ߠ\}|O`wXS= |om߫pީ)EM*T!,2 xJzHbmVr?)$ (۔/Z4Lv4jE&u 7xN7B:+*[%]DŽFghDr}!+F' ߽וӣ4HQ}Bu6 9L6LA_DkGg+aL>YG[&[(q^阛Pc$1]H) 휺;{"T8"Clb+Fؐco6o΄Č 5]*5wM;N!D_e< 52c@Bb-oa6xIϾmcdZCʰ~1m'YapYcÓQՈ`l Zn~d?Cqx-uJhy-@p Eڍ5NT"bKSĐ T0g{zq$%`<$tY5ruXӑԉ 0gߏkkdsζ΋s9D6 ډDgSK^ޙXd5'eC"dX(%kPwEAg|LrLGoD5-\_m&?;jX%A2hĊ=sfhX_9<{A{5g#?enm)P۽4.az ΎR{O-|A jzFҵGPK+V<} KGĹ0Ut , ѯRinӤe>O# @B>?.hXL%aZ@3^c3N"2(:2!S1n7|~ȑ&B z8p\86.h $ 2lhѬSkLj;($/BͰܪW߭iT!0cR>+oDokb.O,TZאd 4%6-AE@HqgŲeГOqJj;/c а| =^l}n1'@z( vHA'XЦ͊λPؙ@L!:$Oh h5s<9D]gk EJɖg)᤭omWJKfp͂7Mlѭq:,V&>v {mU4 ?ֆ s B98DJÏL (*D&)BA_lѹl!lKc&N2x k!!׽ēu$^&ID{a*b_{ ,dks#@d(;5CyǗ[-,A]UfטD%/I4vb5ݚS~rF=eFxhOʹMCg9e a ;>5e8kXֿTacJ +Q!#F&w7X 31Q%\qP:scDQToθ ""\ {/,ȉ6cD;r,<.kVT# ;dIhfw\Φa0eU^/ǪĮJvCCہب&*=4ںLOǰUq;% }b~sv!LM\Sxi?8 g7:[:d3߼߳]#> +Ά @㩾lBTT^OM|~,cøfJp?T;EM3bo9)ߊz XvR*3f/g$``~S)8Pn{!ZDZ5EsQ=6M_~' Ym;k€*cY`nSsx+7lJ!8,/ޔlfMjͦbP1Z>ظ;;ԨRks+^ Z uh t1yMWmcQ尌R{ҸR'aΠ ͂hlIrF>X@z|2WG!%#u4յL,LI)UE)U}qPk鋌]3 2,yB;%2\֯"b(( Qx́:6~|8zq|/iHk@G=tZVNuzbm)7j`"b|W%(ypAW0%ӰMxQuaKHiqEfvx$uߠxrW #S-t(8Af]ҼWH}Iɫe#$=:w^:>z5{6",7- 6W@S)MjhKF;z T)#M:&|#Ҵ#bWHٽJ0c>fY KJDNg> [mea鄋|X/T$ɷܲY 0kĀwV$FySeGIhػT+A=h3$dا7ՏGE^;M@&*Y*"t%L]u 5z |-*0shV< 'RPs0ժK%)酜iDk0\SB xr y\PĕH+oS"yVztxiv;mA[;CJ6\.tVN6 c/tApHLV xG-,j*dng:2&o<[/`/)e#`4e,m+}:+!]"*fpԘ*~gxo^<=YsCgǴq0fGչ!e>WA\u SZY)ebro ]yhkG-羾b#Z@iH)GdΤZd{BwhTz0Ѥ|SӰ1W7 Ou)x&+pFumMSe?>"৲eoe j`鋓Xk>-v.'|(Ֆмxh!~҉ẒE?oAcȑ4MlZJQcR^ XP-^Co[uzeM emE 9iKqVx+nz^_C\NsX7LU^Ԑ#X@795߳Ѥ2&n .zW:6TX$x6{Joh(rCMt\Z*; $̔b0<1sdpj,=:v'"B1-[݀Yk`8)m%Z~W׬\[=' &:8J?< ̿]YOPG1>8#Dfc,llw.νq5<(Ti$ W3Eܲ7kx&"UzpHpˑ3ɘ4Q cԞGS*Z}(KBcR/ tmcRNl`zҐ|AA,'&T-ok[؉lh$wO[p]9,4nJz pUBV3ZYoꐭHHa+iz|c׬wՑ}\>ꩣց-9C13KVj+>uB{"i%T1 9;ް{E5`>qJG], -I Mм@|Oa6-&ܼw6irsrFt,eSyr-ڠ#k~[WVe-r+I- 9|JHVH| hYs{0r),CFT,gD8_wZZȈb$s(|* u dMQ[X:ąpPAsw)Ceja^.>^]W)veiP"egw*?w">'iiFZv<8&E{@*NPW6Mcᨮ.=JnEYEkJ ʞhfJ/C.^]r F7rXU-! k;M%Tdn#m 9X2LnY3lDV8jeIaOʅ)vY. $R>/tpӇ$[ ZHwJYBN]NEǁ+~HS䅌YhԈ\oE=nIj% DŜ:iK2#7E]wϵBtjyJg~Di qY;Zل m|E¢n 9RhqͿ%YQPVA  [-}.֓ _0d_]ԙErdO0w"]rHk,rԄxZ7h ,:ToOc}X:(R3j)ڣ:J<ְPˑFD&crb=wϷ2}ĵFwN F jHL:Pg"U E l(qI$!Ku=mof )O Ol];a{kL> |i{ G© hok \_OĠf~ʿׇl,L:yedԺOգy3%2c>$nJQU (#+[od{3o{GR~+"2`ak}RS4g+;f!'gD Fl%$sX}|8 {/_%dՒK<xf@1. r<;Unɵ|#'uQ3ae,Rª*ԅ 3̱30_+"3]J7Z\dcU$Y΃쉭lZޑfcH}Jb7n[S^Qpxe Tj:94'?p4$wL2,K-9ƽűg>[ p ]oS0; yCq@uk^A{{읰z^hBDk-=RL')5F9˜dio3i3خ)+OOB 9Q%ؗz?&|?/Zqi3kkZ+_;mOL@@1twR1E,-?V7Gq"^X-gisik**M(UF)yH,:DΥPv}3>-1t吣Rmf!l3ek4 tp/XN9qk ^KFNR!XxТSWVTW,؆eىgvET{<gRǡfHp !!G/ ,;HIqU7pl)5U~w7Z EzXGD[=s פ;""NoBVL~Y \!Q`rׁ`do]3HikEN 阍OEPnԌ Lfnl4*;hlYM\}ZgFuCs1FQP1Q y ^eVP],y 1r뽥G}UrݮY$6pD@P*>?J'aj=Jsm4qNLm^G}Y ðEGqɮ 0{wv К e4ߧN #/ G~{5$oќ`mng}Eg"χ}p\Xe}۷_O{q-LP. p.rŝa&T M!АOw^k%p"6b ) m97 /-?R/[Is(HrU2.'AE«lpBFI3 W)hH`} 4+Ldhdžx O8Mx9S"Wpp,J@3awS&vd D9;3w)3>K{kj,|eHO>zs^̧=Kk2Aۘ8 e"O*ۦ_qLR/<n7}wX3Z-DhmO;F4mZQt&؈/,`vBR!BrBF7>r]Ǝ*-7Y jlV<v=aYP F>r! ^:KOX)D(oׇѓSGEM։׋u=o 49;Nf,#~;v-3Pʋ\<("[?*@#>j(HNdד: &>S(U D%]~ )? 9{{fa?" G!/uacM֊>ND\1wu]I9 UH  c<< đLI,-720tF՗, X'VxXV݋%ף0U6Ĕ#oQ<㸒X{eUSEuB>Yb7Lmg*E0ã.qreO)}YF8;nIRFdȒOH}/|{-'jN-iVcq3!=n^a^N9?e_WWn=i݆! ?E, ]#&;WB?(aZv$APFFe˩?UKB좚3֡vԢοTiX&[0Hˍ#Ǯrv6Y#$OWRUCŌ |]n"ꖃ?'D<lHTpe0'nSV=<%:bVY4Jt f`# 5jB^:Q+@n:aNqyy)a$玾 ,Ķ\_]&W<ļ[W{L @GXpsl yQQ/ i8T9:!нyv/@Dw\9-θYm( j:ܸ+~-=5S}ë6u)Y+v={zlY1^A r<(9LCkkHhb.k1]͢$q&.w(CA_ե.k~n5.ʇBPC7%Q/cwyDYP{RA_0ߛ7dA}Bjv=L(i4 ۬l8Ta='wb|iu^>8))sG=R u1A)1 [AS8-}Zbc|/]Rσd?_ Ha@i*Rh~FTqXL-%f>c5)ЀYh~jos֜ӈAR{uP;Qvbn0~DVGwQ:UCX+<ޓXt$[Ȃ̇ @s }FKg4ιF7㤫L#\0p~A?j$gZ(I^kDOSf &U([J%S""펧ew;c 荼gxݓ:9L9AJQ7ܨ 6ȥP\w}۳k&u;P.6Mv\Kts ąq7BmLnB@rf(i՘u'Đ1c8Gä V]&-9H 6ABB֊4%-K2ҞWhdS윀p%DT')%)Uˋy E&R"b:(t{6FMsXWߨDa <7j~D1Ӎϣ vw*j^ #ٽ'JnJ?OYp}Q3Rj8оD)> V=ZZB( Qf[ܵoCDT0 ԩҵj?K _;/bN+>4C vi;غ쌋+H#* ǫӓ{'m|2ީԢmBr32U5&7 @S,@'_"l-p> /E2y1ް)w˯ bjl>Z]Ywᗑ" UT)[Kf7Bx#ϴsbC¶5u^]xa;n g`D9 5 IY*04LEC 5X36fݷńEJ?,ѕTs&6D8 ؈ {n&6 > K:~]u B#J" & 4w*bS^4S d.8Gh} fL+K\\4]!iCxqe/:P4w٬HjY S4 KpSoG(?Wu"R|5~Kg#wcA];edh ,Aj(FnWN-mm/FUV' m' cjw 桏*4Bp/&̀qUő1fz)jf]kd1yk~=AhvMeg&cvJkFTNC)aH.ދ(oZg;g5Ӛ?Ĕ;Ӳ{.qk۬XFG`]ucOqLS߫H3Bذk;\-q{O9d m?QHCv*A>Ԯw X+)EY\ b[7-MmqdGE-9| SKkWdž_xcVqLľ+}Գ+;dd)RIFԧ uaguFpؖ/;tцsOklbns"H8Q0JśNY{"PUɩ_ZXk7ZI;{׿=m%-/ߚP^N/9Ĵ&~"(6j:b[MŤJ+!Yfַ(dwN2q{6k(n D?X&d@NQl n ,lnq ɲfp,">a9҄5Ic/uqޤvf/}Kݳn(=PFkiɖu b&~fw'Ȯ(mnhi}3Dآ)6ۍ[U)mV-f?Xrچ"_qz9 ~rHgUY@"}-Ij#qF(UΉ<[)֝_S|89a(vƶFh$  <w1{iM] K^[Hd"{|r=+;),!{B#ֶS cha(rʣ] 9/Y~=>c]z :GƇCo$ސ@``xl[H(;I(e$g >֭Ok{7#p8wòg\(>(ڸ~BZ$cRdw0sZ@sM|94T2bBĦ_g"Lkͭ$w2*9qEܾn%ȀH:iJ?a=os!ݪ%pd˕yd̾\ n`stc咨oRFerɛUdkyW'gDE!ծk NP1/Έ[V$tUFժ&]1 (!b/~]A!e[%/&)OqV?RKxT}!A6u&%QB֤[.T.4+O/lwt!¥X5@E&u,FS)zE=3ظaH<> jѝ /Hllˎ3t2+!gAm_ o9V$A&\"U B-TT P_ y (hћNFd~2NG NL-/ 'kjri좎gAeFkvy℃ ȰK!WXR]ՅT ;seEk Q՘cHaT oKJS?Ū8 y0|BMM\D;``6?U'(mg eC0ܔBxջdk.lb*˶{UjDOj r.^QbȇZj=ȀܦV+cF Y~PĞ2HXVΔ.MP ,fÓ^h󖾈` ] f#@*$%N/$F4 FKA|ʮ@ aC]GjĒ@m`RI?$-܅;&0L7?hM$Gll-Ţt)`}4e{@*ź ED-&:O^'SސG^zCpqZ==RZoz) xXT޹+FIIY_/K1u!`Xgqc1aw"˧633Y&9@*;@MXP69R  ~-0l0_OuvDa~XrWLk.Cl K °zC g01+t[ۇw~ *+ *\-pX ĚNcׁoq挞hcϻh~H߯kPv=B+De}8-I8Ww.i]Sa]!;u`eT+̛Ra;V2aPY.B}ْ=;wpc,Z@x$S  |U|t Gh8 Gr썅 df55bg\bXTh#g'7X迟LZi1[E>;:6(+jYar,s+S`L2929Vk+m E ee $ړ y7r'U‘:n lU6]^` B"u3).p#a<YY/VISC + /)Z WO6w*=\%S8^'q\kSǁ:a4$æ>ԣA)0X åKF*u+&՞=SJ޹o]4W 񒖦uNŪ1P-7H1 5>;(`يT:Z>#0qZV3LQ{& ڳ-V b\[#H: 9 ~*^Vj e9i}Э{ E~=) vꖀRx]JLV_`G݉b,*u$j㍄E#<}pgQeOnf?J @YQK{V[-le,jۡrOp֠p߲Yn0TTas~z`L%UjNl4MĊcRC03TTONpݍmR:FUg-;V!^z 1$ bOr=VT2i4~.Мs3L _3Vx.,eS[6捶?wwӚG@<"mK6_è`K'Q'+UP H58@ZfK L%NBZ"ț;d2$pd}HcE^Pld)'(5|;a/Kβ&.G%nw!0͑ #jbCr7i,%翕qL)|ULJHdTÍW4"nU D%L[cAn/Pp\dE5A8ɥjD{{R7{PUgr5sApk&`a;=ESscH l=1'p׼%(Ȧ}JRpz>̥ uV!&PLbB*\aA $gbYlsy'[e Ԣ~ b$pHA;5/}Cj-Spof hJ $&`bd7ŨilKXx0[&~w\" $^}nĖ429%.],G<EKCI^ 7nSNR{SyWf _K2_]d}QWaZNt@5@0ȒdVd߶ek;(]r& @! s4o0K Q8.O7Χxޔuo3o5CSP1L¼'g}(uGj]gNPXo: ^sywx|%7 ԸZM%~~ Kj&'23gPT8vUַ$ aШJKɥF@ccRxAehAy^f:?C#m}& 8?I@X rJgNwdyb@O_5i6ޞ”<9>8o@çNꮟq8ȑ.{ER[\Sk[  h Ɗʞ]f{mǣqH, u.O|;(԰MX Q.2g?_P6%G? b_X!~FyNEQDUl"rЬKN~ LGг4ɜ2KrCn_jX4gq&TMz"8&yyx <iH`4$*unʡ#Yʋv_.?# ɹT˕EOr\Ɛ^H0-E[l_scߝ >oe&I5Z7F!BPTۤ#\tebIfez̛mfɐN@]se|-RٳiHhň]_e/M0q ʹ%}G]|o壻|6ɸ8JOI\f.=1GHEc);NV<{\On=$%B@ihEE(nKj` `3> 2^_n9ɲ9ԇTp6^60zwP,(-V,I<}kpH)Ŏ]Vj_LSG3*ZD]$4U#}]w9жmWhDUyurS9t] eyZʫ(qfo~F|BFe=B0 pe|Wp:{nv܃•QcFqnE(׺ܦ њ*_67 UYt}5߼}}ou>tۨz}"^ld ԲA]Lx8@S0'u,a2O^DASgVsA@c 3^Bs։1[1״H_-(ۃ!eۉ N}qs u*G?BD\A FwkrzY .R5QQ'| wKmF>?Y+dp /tJoB+cǂ;ZكzHTˠ\ADXNxغ1!pO',EXÔHV-P.h)-w{,eZtA7 i7N%Wj)fuCZHD!1 `0&qv' +%*MD <sbKz5095m/yǝ/#b#ߏR P}¼<$Ր4Ԕ QDg?/Bz K&t{0Ręjx-|S8q<\c-i./]oRS>fﲲs`5kk-DHf?6OD #Km+,仛Ѱ eA?-rDE(4LK1~mƗ g{UoDo=JVQi%zc贓mbP{,|U'Ͷc7[+ƎRߥonpOfI?*{wE; 5:FmyC=CH je8P.=LU>tMJe{W^B􋆕sr~Fy҇y@ƌ"'|ll)L3iIB16x?KoSһ+nėBbmr`E"|Cڳ.%ЋGv=np|?O"SfpGw`[wHh~oR4[gM$&t Y@w}c _ķZ<*?| 9 N?+Mj1غ$#뮣Xڽ^ki̛d ^zyj/4TTZy^*Kh >0eDe?o t:w9sQy}ϡw LQR^38OX-kT?S[r!hטeDx=يZýUpMtSiʋBfyGՠmQ/ySbؾzw D ltպ<)GWA |o|m f؅Ydii\^{8=|̢m $+Yf-FqZ]߿,]\Wתfeooij}F˗c͏)^cڵH=-gIIpK{Z+Ro87 4ߠx7~c69T"ݽ#܍ VKl Aj kZ\uI르< x!sɒg9nTMJyy=BJ+:{ <ݠ1&ء,lGpN?F_U&w>jYӆ\yXfxf|]Օh-t(c/ӹ&|6 $! h'mPiO4͇{zM^ke`YhED?ٿj:wZ'p:1"vqgVn`e`М^ "Ze4ֈ@ĂG-u2A‘V[GjG(Qd'€o)8/Obau8jMw!Zݴ4'IURq0noީOT'i yx Qac̤Os@a¸.ݕzcm0}8KY|6ik kaԔgXfrlrO@?NO_hJDqĻ矫+͑V=kH@܁Lж2珮Э_?s*2 eVr,)ǥ]I-  pi?5`~<1f  -V&[j=; Uن-X |d._cbb)Ii{"}'dzSJ3JiwbAtg:[LkV'yu{5ЏK{‰oE&\3\T2~)Ζr*Bb_kV @PžʴˉQv4Us) X$M:H;:K! u'Rw!L^=1gB9#{eL1|#\B%4h+j% RPjb{4[v޹g| ^1}@ Z{F"J#|?6: W5pcuj#o8 K<+&GL]/[y_JWbK9 꾯wxKxHvou:LNz[d-Eqpæ%66IDBe &]Ek@,V 3 6Ǵ9  dwaГ]"oد>Z:OM֐PCsm8R8/Yqٞ<vˁWe'ܥ9y͔GjjÚQ=\>zE/x6ġ fqI_.tJK2,ӗ;.xmS:\uFʳFj\U th?}A'g.jrkqcsTҢ2 8%86jgV})P*bX~1ǡ`@J"Bo9fEl\4Z= Oywy/*4 &]X[2 e k>8[|+_CvP_v5P0mSA`an d1q_W*ju~I)eq=X̭uAfI6?W515](h\"e>V[Bׯ/DeMҚ?r_.84`d(>~kre_3fe^'_.>|Q!HfxSWv%2Opy$)}P`R*e1C4֟KWQRW5QJB@Jr|U/wj lEeqnΩфC7rm.ā ǐL*6\:Pό_`BA!;d0)Ioj6ŅLXl)UaO&EqΜ܊O`0 !89?'}'m VL>(n9j$LooVkVJx9~YX-G:^K[J X9vh] ? iZ.tk<~6pȡy!SoJ3z/Y:~!B Z3^rQ[pU&F6Nrtt!@HJ*#rd]SVJ$]d)y7hp_Yi&F0ݲӂۑo+xZ "x>F?7ӆأegf+cEhֽut:G A坨'FF$&P4c3,~,2ݍB_x~ZmVbV +`Q«NRz٤ŇZEn%X(<b9vR[ [cC 9}ѐNMo ;7kVhBЧ/+p;TcUUCJ(⡡SBQ|([q)C7IQm+7YAY 2xbBJ!o0B&DqE" $750;TDӅ6P%$]R)x\ c6_ۨQz,%Tt/E)Au!C 12k>'*:1ПkV,_)dBa#ЇAYU. uPGh5~3 C4fyc!ډ>,$<{ C$n<#HXLiu}YU? : F@\sgjHgTp+CުjHB*r ǥ3YJ ,ۅ'Pl{ QSOaf*/^ a:vn|Nraމs:-01޺IDtYUmj092e(_#oə}+XJ4V_g#_6R+A_۝As/h]=n"b R~l<=,!ܔO Wt;!dwb=v@ W sԕDKK:f{:PX@}sMݖ1f,UOe=׺W%WVc?I@ v̫֏ >}b\(uK 9؛ D6VVpكcZcTYYOwv<SWwF߷?KYR %QZ o9:@LbPR'k NR0OB5ex]4S9" P Q~Af豉pҫq Zք;V/œ^J>X$`ZEG0(,^_Dx?&zJ߁G3RBNXP^@_< qq|~$ma^8{>XMRau*<5T^Z\Ln]2 ^nB1ljcmJ-`ݧ#|>u۶u9Ab|oe\,E ̴r^h7+խw&wzs5; N{R0"E]6Cd2seã$6./~ -#Rz8TR+YPP[j09aPytZ V9+wNcaѱ쇪Fur-O\8c4A_IUă;16%IL+)WJUe*?)m3@/6\+ YBpXSS 0Q6HS喽Вwvh&{~_@,JII}1^jMS#mrup Z}C,\[Xr<FD74'ۤ^S$a,}jϱ`zPVRQ_P~AS"BڣL*#IcpRÁ9>Um(zN 1/׵7DbPcR]Xc(1[%w/\/Rm-!fgPo/.4ZgC^% NIbf3t~0@pu 5YCS4 ]ebm$QBY$7Uz cMK 崣ҳc`pg'hϚ9@9[/t&Rdl;Or?ĽF`C?AX'eu^{\Ǩn@`U9|~s0hI/ \Tv3 "ݖ|?6MI.'T?hPq)?lke0~sZ +M ;1^"RyQm di xHkuq'W7Ic~:h c"u0QafP=2wy;P*QM;'%^Sv-2Xx0Up x$fMs]_2_Uvjceem 5֌)B?Z oi]"7DlAbJ@oFנUJ BUK7~e޽ h+ј XbL-\,ÉJơseur(J2oBqGJʙ=!|qU]x '.e(G1[^ʶP5;A c|Mp88MQG~ %p}2 РuM#و,ȮctR5QSIdQCM5S Xvh>9Δ)EE%S/cy#!@9xKHȐguxQ.Qֽ$|fQf0c_Mjz xŽ2Uš+J:Y Z`+?KŸuG_`J P]_#|uw%\)hԷcs'\ 7Pիena9<{l/:g[s󙝖|_#*j#pIOyH.=OF@̜M&jɧ ݖlw' />g/~cEho"FtbTMl1 $dro))01On{HNev0%YU۪Bn 0w{XQ&SlY(+mƽ[7awj#xgk+Llm:h2& zw}ۋXh~u&p0㮽<3S9~NQ'-1k7}&YHb, ̶C$ .hOWhG5'tih*p6U@? \#9p?|3@rwIxEb1ZPGzj$pMfn2& |Hc21}o/o(P'p~f /y2N\Cm;PXzt/Oo+}6sGY8ׁ5}:_P! }ks*U8wq2ҟ:ْ-BjiY.!lJX~4 L*ِh|JAƙln,qcQ&3'HzG1uA 궸T6:VZnvd@<EWsd߾|Z gWk™ ԗ$^ق};qFᣴA2C2[ZXG$+Y/#V`\I 76E!tw*c[K".>дXoi:A&;o0jrUkՂtZR8:k(W-IsE˷hK*U'TB66H0qDʹ:_l@%ɔ\C l՘wk!V>]`Xq =_~`(1\S=\Sjhq4ʈk^1AK; A]?zc:y@gYXJݢlQ:E,o>΋mC3Ua= qEW|w%mlSgT韕 ;J75~ER_.DhYlt-[!^$o&ΨKԭW&q W$FwF\\,):qr݃td}ӃRA pMkUAKMf)C[R fvO_ k jd`jRxm3.hf']&;J`L*R@~n>^%S8lth턞QB(fm+30+h{Tj̺gCg2F_}(!tr-t\bJMUD;FKAkƟTE]_M{aB%MTXs~`g78ҡ2 mj|D!fGhw~[ sBڢC>_ ϶\-gu]Bmi⯏Fi\e_Me!>34=cdҋK%ɣ:vX.kM fs' pm-sX3ܚ Dq>Vd[?k1%Pre|۬H@@at $)&&R<Zg'XLaz?p8yԈ&j;aqqtO ԯK?|.p5s]?96I(j".A1"wP VX mU(JQ-]p!9UHG_Ѩ#Z 3*?8I*S[{1Qp(@\RiګM[- zb$L_LxA}~Š"`{AXML%9NW%xG$ygju)۱g TlHch$O7:PܱwfG QqTћ$V/hn5.Y]ryN4}_+Ezxp(iѾiX_Kq.f^b1\5/qf8A@ Wj:oޟ.TPahyv-[෨ NV$- 9m%ٓ"GڊQoN< ŸF3QKBEz0/F PnYsIyI$Ix@MCTv`=mf =բ|7}"3O{sr'-²b>Sa̦I4ZN(X!;Z8;iRϩ5TLu6>4bږ+ӵJDr}M0?25YcOw%*Wl쓵믤 c V/a(Hv~-%_aօ[lϣ7DUx;@o!'u|eoa%%.VD$#CX ]C۪B,ۂk@%7ϗf@iE* @[v ޣSWʐ(i.x#^H"B 1NBq`A(8;[$d{^SĻ::NyäE {s 0G9d,G\SuLHxvq{LHw9Nw]1?4b_]9O&N[,Ȯ$Lw:=P);e7f ;gV7} D濎 ў۱$-taUXZY*Pp[- e7YWHW5)HA xUͶRm..QEqo(osgg0KUQ5 RmphQA/)/2m(\+mJlxz+;{q,Xăp@3XGCBݓ9uI#|;L3uTYim9AI)Uhe-yfkپZP9b3n%$f]N3i][43/FFl_gvInH?N RM\|%n 5݋sNT8 6@ѫMR3ZI- ZO\4JW-kt4M%[1bf-ɀX0-RN*IC{:+d§YH"3--7NAq𖢏8uQ(( Daqp T2s|mmWߏ;ZnfRqqK^x b\hRX-Q3 n9l Y,EHRrϷ^Iu#~?̜Cao?jpα!﹏QN3|{%SCI9ٰ*\9"cŊWXAKv"yLl<;,)݋p*iuy6d(͒i{WݦLFAa'|8~YdJPxmg8pд9X\YBk iL7yu>fG`>0hUݚ"lښ;qkb8QHpEe^9zj= SIY*Ӥ~0֭, OX5\r6ȐO`pSy׊ۺ;ڴF.gN #PH5 Eri+<պ<,Ď {R/w~6DCG*:b%xf|{+x^[|NGW Fr}`*6ŕ|-M7>4~Y'T}>L5}|#{)M7b!?'v;<5_WU#zL@\'N N,̙&<8+AWt=цQ WN˱Gs$4~)r̕xUiY#O}J g[]u4%L2n} DS*jv6sc=㜹9My-q wٱaצѡ:Ů!_slF{面hj YRc^+ܬ_ IqXDau8K]%B3B4S+`|̯rYU]UStNZJ>299P,=OJ{Ú)|A8 ]\Mn7MNpq1 rɁ/or1]-`y`ADohzl6;ZKϡ8 ۭټ>>[xтh.YUwbpW޳_"*M>~9K*P`:|' T<.[RW,9}Ɏd؂nbyر:ڟ$öwC~cVWn&m;KqĮ!94`,On-*t eaE&+?r-='5z"Bw 3Z=$ӟP3ْ%AMtkF뀾/[QOV#[-: %T~Uquh: E>e\@C(16(@'!]/OC`FYn=48 ҄|)(-#bdB}^#lm<#!硖 9`'W'=7СBA@Fmi!@tvxm^b >Vsk!s]q?g^ufzAORz]sG}:M֥>;=>pl D2E 믤yMAP-psAQV5g)?)橔· _KS. sgQ0{ S 7 dX퓬I\g Í\ i]Pm7 8x 6]V< 2u:iz:۹7&25yP["6< ru%W] 1 .P37zDkH;rC<-CZX^Ыb4HE!yi甭}wZ<NdO되`en\&T]F)+:PESKFdɕ;ӫr݃Co-.'_Z -~z{fxFKK(dJ)œeme7F,W` v5 r]M.Mr'޵[Y ,1L>IZ4Z!qsk?P6\J C@5>1$Dim=OYiyPwΓ,iaIt0p%%& .Ӡ9؏L.\ hykQi8=#2xd /,KӚDȕY K]/$}$}EsK7aХh}R J -sjAo"0A0X-$~rd PaåVmW5\YI#m5CQ=G4BG,)"jʹRaV8Z-z^ņxzah(!B0;%~%6V~ }ذn''n `3QKcqcT&:W2OR)BȚ2>9pUw=0'*r?^]2HY302O+loAy#( ΑDݍvU _T٬D4d$$CJIIhrTƼ7>HO6'ېt c43*C[z$i* մɭeSZr6Q֖ ]V~ߤ {7T`@Lfhv2!%"ߩo Df/vE`L{Anߘ{:r4MsDZ@=*UyM.!ӟ)D~~4t#έ:loq:y:T_H "&E8svZ8Ҕ[67.}itY'a,9Oq\8K*Kس/C ƸܪSLpY}`nun<|4<+'xcY|?+d3&-3`HUSC+r4O3> ~-ݦF2N}o S9 IK<245tJqpفkZ*qibȤB_'pmolJ3 3z~fsVZ^VKx.Yo[mb: *M/pz2nVelqrm$ğuf)C~Kvd#A~Y%2! % #k}ъu3"+(O|*D}&Ɂ:4.\{*vL4P"UTrp<Q{ XX E5xHR̎ =q?eh(=!_:lupHnњ,Ơn̢=Uh*7{r")SVn"bۣdȂexS'B54Z(<;ɤ{u&עn!zS 0{lVʻ(t=ԬFbKeQO)ЂAFanH@&L4 ,Կ@k2CI4x(EMKwܬA`M͗ C'y*9Bп$eRkW~3H]zWM,4SrFlGflFLZt~ȅvu` |zHiE5R`Ugx%o4ݸCok,|v͐5!N 3{_m~v޵5v|AlfO"͟fe3ކH<K. +)h[Ԏ4om >~R!pB{4 F}]Ď b>859rVsVB|9s/=Foهe< ʁ1z[[,\Ud1<5 v~LS#GFWm  Bgz SN5V:)6$[Z'Du:ѕC}kX22SFjK!fa ,#[`cYE^ڪPf$S=.ڏmZk.nnxM*0L~Ut,!㲈TO'Yo~ava UJQɍ*6VDj@(#7x6|կO_?WLcZO8 3RfK$XQx縈 _4 @^g$lʂi’8p_IcxZ}{ח˗[;nlr}unSV.jG@Ļ.!D1ZߐٺRD ]r(s&N`k] [^w`39~ePfG?8n'@c0 ߹Gm?jK}[5)u /az;v ,Ǔ;b G~v,Y PЌuĎ~㞬dÒ>]YN$C  I.2KG?^+0#Rs=! Z Ejj<"!ƺgJLC$pQAw e.Z:Pdujb: Iz'!]AR P>q,2u.J\G,F,IDdjl&rkέrW[DC(A?6s7",BCW',;%OjB06(Ahz:#Ǝ]  2Lc[/}DiL*>m֤%t=w'P3߬e! ?6瑏ivUdIz fs|Tqhɪa?FaO HZ=Ww#Bd,}d;TɀqOZ7B0Po8h5xTDݝ>G7[WZ!G;ע3J?'J f+GQ*`o EoU"KQF&^m'9!~/)r~hȖ2VsMcϬLu lqLA!"= ~RƸnk35+y x(w+ 5ztEnxCgBܠO,q.'h]Kl -~gLCUY2&=#5NDӫF׸=ooke{^0'`e C\KUU]M(= :opxNYT'ְRSw_l+I1t퍃t?A؊ De݈[[ ?܉X\S/ž͕=쿆`2&gFG+tv]O;~x 49'J9 ',B23f!G5$iഏ0s=)KD'cM[S6=E>y[a^?[zv=.M$eC$JL ,*\WybaY0kQ$ɲr E,:w#XL| aTY.4-$7Egm+$&q*'@;xPY0S!*ʍC$I7):&Ո"R,pշ?o©5s`QR)S?Uu B摜x\Wj $d=! 7=*&Yu FԄ ϒ b չ涵uA%cš-;u- ]=Hݚ+%;\6f9 VA/ܬwgW;?!%Vs< =E1s%$: ]')=&9_C8)?4?$kK(X;>: D .X3 >i&8̹ ^!ЊcFd' 2F,JVɅ8[V6>.y܍'Ў^ ZuDt3Y`ia^X@~ 3LjI9ؐԌZ^I<ĭ*~D4_e<*D TyT!QӨxtm2X:CeC@`'aꭸ*x_ੀe EX- Jr"iaa\Ef/e5)8 pt9]\.C h"c¦fMvGҾl r*ayjFڜtLL_ⓩ<6pE>{dMU`V)Ch1/+ "C n=i6B혼?[q'nSIYN,2n2z xݾLvT.Qa'Ivl'Q9IT9tƁ4166y"i/~ ^ } ?7Uj1=#dT=[q1ϣT :yS͘75"{  ]{eVUķ8po_|R@Z0Ɠ- T6m+2F|U>E f+Ym9h KAi4@ЭdQrտ:E[FJr _5?Z #.rJtr 2syED#[2Wcǘ3MhsBUl o/r?^un<:%3l>S loi&AIa |s_I_C|J@-]ػ/eEqL?+; K3V,{"*h) ΁7yHScsh84f٤ |9L&a8Z; 5_g?o,T&VR4tB:|q*A $hzқIDZ,73+_ƫïEWOϼ&CO:xS݅g 5,*$<^ 6Ќ F^>I^ќf1seM*rV!d3Tzs a ;C*0Е(; ?X aQ@ W6c:jDw+99ʋ3IV xh9i4|;YHE0u@yJ')مʗm 9m7 Z:Ըu{/u.T =wbNNgDr)il&a\{Yܚ.ZJT(BrP[T6,Ϳp K="iaAlyˠ2-C W8bp /m{ɑ+>);7!U( fGEﻭlwh$J-Su5:¹rh}0gʪ_D\nim}a\ub],a/*]s?t,Pt5搯ϕ`54H"@9SOHzDUKI-3rj#arDby2$ň myPdǘ72fSH-(/gun?^M9~wYu^'4춓IV. <@JlS8O&ŞyUón UyȊ#僚<~2#O8+HK^ 2%-tH-rTg_|+ O4m 6,YC C肋f2΋w"*b{4%NKb'yȻGhcpF'Y9Qz]^l&Ҳ >^0bc`5<Ӵ mVo#Z\_+?0ABP+Aw;p k >icXh㐑:#LGNa􆰴"=O^?kf~[D Ix4e.u= ҄auFr03 /Tn42z0?y:+}HmF ,!3Bs})(E03G!,dƪ}-0i;`y5wnRfpC;~m1Ad6|%kfy:ÀtzT%BfDⳃuO1E)>jXh IMN6389 4ǔDQ1X| 4a9 D Fp?!TLa>|~=Npoo^RT-CGo؝\X|!9L[8Njs!4!-QmE':5 c[m+]ɆjgR|hq97LP=&5z*?cr|!~Eutd:$o+᳏ODzG!:sy]tƔ8+Vp6{,T,7Iyh^}IM7Y|^fw .0=%Ґ 6=M؄%NoI^_@+m OW>|8bD.<_5`w*?a( oʓ~6,Ow|4l`nL*~jpW1X0.t2dzb@-}r9d3,yKv3'oۖjbLLBJJɈU"=Ą?E栠XTh#(?xk QDcb'_s {#(~}4IPb^l(u"q/% &(xZOဴ *$ V@ O0rmќHs{:p*ʢb}gn?E1*1Fk ? g{E8nĵ<8D GaהnG2Qu{r"/z, F嫇]yeq,5^W"sRXʌhbfR~mT!}L%mkuG~ | r+-ltoaIۆ۔F#˰#'7_<{3q#3}CBq}p-+}{x}83Bʳip?d@5eԼ]p2l4ȌJO0OEa?:A!lᘇ~KZl)clͅlwNVwZP n-!v!Ǎ(,FؔdYkNv;A0}Jq-݃oK="F N1=w` d;vN1Ę-+8Eo%mS FrLϟAءnK[6BS^[^͓J`s!F6]@4S|X/ Ί 8%e4f]%KXVf1#bU.p.kVI7vɣj> =|<оa * y DŽIMʑ)na}Cֳ5[v] aVuhG9 zN=f/qb  q.݌G߉@n4 DζW9bV8,cY7 ߘ)[l_tčxHWM= FvHYS]7pw>D5 5/`}Td;MMVru+@k~^F`P48pgzs0ߝ=4&Z{ O1)~5zOD HYGoai3(MJ=Sd,۩.CcI,qC| f]P`k'XwWI[Ҡ:% "5ROYuʆ'<I]dҾ2)'9M{Z5MhOn'e.v{%(ܥӓʪ]&+Iuo& s9,rr }w#m>Y50jk(MU0K9`kmLE'Z9T,+txXǻH\Iz"=!ҍ&8@zł ]8HW1֏"&]y5~ËD|WNtDY ;{??W$E:U֢Z]ZמNi*; k AZBKVH1%dؼd82ѠZ!{aI>@s2Mϛ5?h.Mb63Wi0$|4Z[gZ*cˁkPhv&V,A-,: *"]L#iD`xz{˭9S4*]ϳHAEMݭ>HVfVKcΣRWn xJj?uBQIÐrCeRP*\WyJ3ؕy7%g&chP >ȥrƟSۉM7r^ZH1~?yV@.305$C]+JR adץHڷ5tATk}(=7e()Cv\q^aA} õ N7x׹>W^ cSڒ(ݠ.Q}zLg-<$XKqp_߀߃܁G]jBQG5WFQL'[i>%=NHbڟ|I@ ҖR6,ip2DzzcPUZot厝PmίgF뫳i!sUȲ-&asU#,;,*:^9̼MfǦ՞b&ʀܗoa?ÍugQV-J=GIOpAXxK6,!1? XdICp-Ǝ'5^xthIՐ4vjP x\a}S*Lx+sTC nXK'd/jN[jI== 5ة|LwJr쐑$I~&B<7 "f`ĵ=X%2rP~zҤ@JMM+mPa"25v-A\_05%0-JF?]d^(~~:L.YahaQS@OFژ:ёV^$kt@•-z>Z/K ƻnhu&@db7ZU˳UKˡLd>ˏWeYv?S͍L?bdl3qB(_P>i:Ϫr_GGR*YGT Nܯ2Gw{d#SĤ_䞵dʊYʵߑM`F/w、#\ 7+{UA_ՙ&AL"8N{LPs,uC8s1ݗ.έĈ)&+ _?MJvDDޱsUUmhM'wKr>c7ȟaܑiy vZztauѷ$rf% <{yۨCo%5/| y48ޮ^/$`,4Q۱aV620tgs[[J6pRp=_+񿯇ȳ:&q &j !S}q;҂r?޶Zc+Xm m-i!%<3FPtD{}*)8䊭B_'!z7!Y-u 7*3TAꮿN;ؗ}3σ6Dڬut kr r++Sȕ;vܼWgU:h-oiXE:ReJFl#o& ;~Fj>l.۞ht XbFqn7 ’f~Vp`9^WS_떬{dq?2FG7w ;^+$Aj`L /G'޻9FYa! rQI^8RZX݀W'k[Q# xL)Xf}O&?G&cTs]bAs/>dUv9{y(؅dx9~vgy>cW 3y||ɛd(n(F[J;u܍;#e幮MW;m6@ ;~N?vU c -jEza c:aq#ęZhHc+fL #^?5 )7t'ZRp(l]d ́BϱNg}ΔTrHxEʮ͹ӡA֡EH FuɄ>]+b=sN 1o Gc<ʏ44EguQCkmL8a4>L`;s8pVտJC>Ni|EF]ĶHO3 $hHSиvwlg9ᐥs`JL Hz YK! {쐍b71uvv/[&_0GTar*Yv[6x?"fw \,wqԻ >F 5B8Wx*fV-U6hapV@ٌ9gOmo;Y#yŽ5<(dtPYWEtb(fA,tPHb9 !f;7cslRuE죾ثI5Wݐ~wRC}SeU_"6dvaYv%_q#>,j<:]ul&Aߔ.K 0] r/偕;7T+m+;%I9v3׬k,zP~k|ow]߳%(A;p|AɹZ6I~rJSfM`ȿA ۳]Io8`Q[yRCvU̜BF\l] 3O].lɒL +==wjc${@bLV6/D9 q&%ꞪG1Ru-$-AYpAI`~g]`,!cUO1Kğ(l^ ΃62ݏm dᵜ:|ՅH`Hճl!/:$26ں2ӻt_VJ~+[!`̿ЄuM z@?==}Ք*LYz0S#Cxx+ŋjAnV܈ 彟9#;駃So1K/WB\㒫l:}s\A}ܕUТ?p8ʮBLRd('pPmo1Ӵ*0 6cPo40*.!gs{. :0~fqkGygO';&^~zy,p2ql^/!3;E9Чf1ImOXy9@; h75#~|Nz|'R|&N ]!mcFPo~9 ۅ|ZA<"Irel0_R5_uǒmB\ om<3l{CQہq?pΊe`vp~]+u>W9A`KN+}1}01g rc<K.I⎷2͹=얋*'yHOqߧ kql5_9#Y{ qy^Nv[-%k}3?D= 'MrsT< 6HɬKN$OC1хQT 0WY⹓;b"'^%*'[Wlj. WW;]u/'8GQ/e=xmw,vDΕ@ꇣ"ǓՕyfj MЈ=i%bOWDi s4z4R>\vFK&tJ V#7*k!j"SIbEѩn*u![t,Zڸty_׈¡ &RHVܺ&,h !&lT-Ze74p)IQŃ&ܱjQKe 4E6h;N.̉7֑{OBb˽يwnqHKj,2O^ڿ[) !4yMoB.JπTI9 .P5h;5YPW\DoY,y"y;,E`A(@ߺiYbj*ک')YP? +!H9w ];ÕQBnidF*] ?~%QyYipGrhFqT?_b `Hw[&nœd0Vo_)j3" Y$h0ȜA̎;^*!U/[zrx ?wqxیIkk0d(ߦpYOQ{S {6ۻR4 YT%E:a {2 P ٦˧y\@{bCpr?p~ odpVzePq05(4(>ܡej0Op8@ R1`χ$`FAIG!u.#tnJHt,Hgڟl#ZMBDbpT ogE>7yGTB2غG#5;:`$MkS(zmEP焊J-{osbS#zmVa0P֠i|)䑩ׯνQԉl´XLT+iUk[<=HeE{!`(_WKXzP2?R\cgeTJa5t)iGA^s:h(8f;Bnj]vAY?EoA`[>O#֣D/CTi iav'q@SKt rK}|47{,lF0$o;?ߑ$b_9c9?-V#kWк^Q[l,B*tGŬ*ri`ּ#ʯ6-oMux8̱Q2KP'o([ ~8Ld|Հ0rX44٤rb/Z-ըvA^#J^+\இ">xT`yҧ]X4ՐzfNWpǩhȍ!APw\F349GM">PǓ5[?"X"PH -bJlyENS`w5s-4r*uG }"P5#k\u{Fepo[tyikDf(;>'_C zh/"0Q<$&3.Ѩb >TY6_]WOvcC1D}L wW+5w+օ @<# n by?z mU7G.W \  FhFs.3/r"s0ԏcQ.G>.!!X߅?*cBRB+ BqQhWH ~Z==h;M([m!U(=vZM}9uE[Ϲȥ#B tq_W۾I=kQJ}P+`g"] *{̤=&$[^o8jŷk>5Rcw%l)(& ii]#a ǩpAH`7JqK[Rclİo=JI^M?J ~1APqՖ6?e݊P58kv=U+I }&KH1,qb\3mk u0֯TMGV)Iv%}K__53p@r^=c?o A7a Ff("% +l>-P'.ŮtWc*x3Mpkg ׶YWj8!=pC(x"¶Iںʟ\mRY=3C^&4 WwG<` _ks_YTt9ƕ6iLv\z?DLLRp^ǎ`_kbx0gwFVVbIH턥gJ9fz1ʟ5| ltf\I^~ݘr2K2|0:~ ]kM-,nRF <lRg&F@a`BJXV<l0d`I/2Z!VLZSۭ&0JwJ=kq:ODÇ@𱈐i=?Jy6; 0v@[9a1`7\Եf֚sv4d i:c G!eChpR)'|rOXjj$Ӛ)r ;vOΦ;0/RֹnwsOZhAw=JQX6l%"@ϯj?YXm){\lOEsW'5MR-<ʖd]C}7X05#5C{@Ǟu> |P[0\ Cp>RH*}^R:i*;y *LuS߿Sĉۉ!y+xK+Dq0)Džo~FdT/yy՘K_,H@|iv;R]78ПI7%u QwlE+?(w.w2ם{Gxpo*ƔĴJ[٤.Eљ9oY:'2,ZH`;_q~Lxk]ST>vBW@yҤW"44NzWS 3p?ZB|eh q z_ 76Yv 3߹='dC Q3]VC=ctRpv L4^h#֔H@K} QC=v5lȏQdK4 'e:Ȃ'iw),/!!*kU}{!˞_e.wBn܎Uaq--uZ%G`F*ꨝEsſ@kArcZ_ۓ뺵3}=lU R+ƇvdpV}_R8bT-eo2g6,|áH9DEko^1Y (xlz#M_5,Y*\s4z˗Ҿti疏]늹ctPj&42 ƚF2Z'&de&`lY{ jSձ.Ɍ&ӣW`j'6r|[m6|P@T%Gɕt(L>W Qlݍ=siV7A\ NSEL?1 (_ #a XuozahR3}z]EGr8`ecFM| ƒ[ӞmUnWY[nC7 CKLMZRRs=KG"HOOE&KB(()|̃r]_CuN$-\z_] 'oQzdQ}st`f˗"g.B"ϳ;HRmN;lca$HZ^`pFF`L?,qfR,R 'E2z|CS%,߽/M Z?}13H/8֬rӖjgu h,|65}5:2avPˉJS_A pe2LfhîG,_TڀnPCC/ oU2늠=/%ܢB*;`L??Y-hC<Nvp6j,1cT8` 10HV=AG%|; @@Q>d);^ 9,;]k>[5w-GF+DXvq}a %5r(M5ʔP9ڞ`3G$O'+ݞkw>ڂb2gUȽ:Rw=PO&Ev0 ICNLQ] Lj~[,Aʕƍ[g raRJ͛[=s[2< |wp鸙bF%gUgj8b%0KFvdd2H{ h@ryU@qV񧱁ۤZ<)Fbȋ"l_3I-fX4'61Lb#M7fj!s|n.$}lpC cA)_Rl蓅ڷR)13qQ8܍T0Z{ 2"̖V6@kz~ʭL{'y#ڰ6X}g]cd]εoo1wxjl15 iی$aN. AL_U 8(ly""&r#v~$.|r>jh9{:|˹sFT\x1Hgc{Hq7A>J"E-++7}?V"&ް%ƮI6ÙabPG=E22f~~X,6届xc#$62 (ݾolyfcf}~սWZnfƞ!ħ>I.Oԟ4Yh4>G|"R(Dyл9w(7mSz[L /UU" k~TK>Lu ZďwLȖǔyGni#KM C6 .qAݞ䛄mv]+']$V=q_0Fnc'ׯQcsWO^ "0jQ_+:{tOm,}I•,KOC]Lan:F.[w>y\߄qo3C)d{̹8i* D˦u;H*ED_6Gve2DU:UNneMVZ,. 4ߟ:c?"ӫk[?].spM |ĽsCHTT}pE׌'sndnv+:fH=^J8Bx;82wh".O2&y q"e}4ܷ h]]Sus -Ļ]5}a +g }j^pkG'V(xvR/wQL0eڊ#e=o䣢z#9wQ?3"YK^@FrI%9Ǜj kɲRNbȘhl[gwdsjZQt8a5( 9ю/VʯR~fk|v 0KB-t&lh8 &tcJKo`>f7F uaCB7NzgY}Z)o*#wm)87hjat 6vgcu0]DK@f Z vl<f7& )L5Vp': VR~OLF~~zsCՀ>k,6`&J` w/y7*F8=xt$g|1 C܆=J=S&f_Z &y:B \huQڦZ}ꈒjٔ~E@9|߶Z&^Y1AqfI.WI;$$@;i#JYƔɷV=29-΅#e0purO:V=M/<hEnb3neۀ0sۂԗQCc3ET(/Wdz`=t?ϻDҠ}:Gl{}nB k|$aJ&/Q`^yA)`M1zrд̾p fpѴhc}vL !"xWCcw |t& Ceo?!g"$O"t"#]Q{0ҟ).<XTNmA{BDt#혺-`<}\c|)ow rS g{b#v-C?A6&fHsUԄ)*I)urK˫q<<7}Z\wˁrO,|r3M 8.!(O&·Gq5ErҊFZV9G ܄r$]6@(Tom+}WK[Z"Ss|лnr5`|ZB( Lm2V05!r-&徇9zdZ6u#fO=J$GPթFl .!LeӒkȏj,6EtafZBMM2lxo2߄St2PAK{itgT)?n{&͞-G-1*{GQ{'q1l2d?qM ,]8?4B[h*6|}9yPᅽDZRZKrvM3ׄ'wWmOy#2ORG)Fzk}/{LQӓH2+<6K[a _6~-N!sD29X^d,݆:!/l@\q<]w>V I`++IHfAr(v?=CkzorS条3N =(p 8tm7T`0X\0@d}Ir(o?n5⮤m̢SnԖTUۜn}VJgY cpxOqD'@c8)hsi#wf#+ 鎶=]<~'6]f&L 0 H0m:Fާ0`r\S.[A d&&[v54Op{QɣO/.'}\SU]:?go+V_А14ޖA3{? `ʄ騣[ENh$؆UF"pe3#_ˆ#k{/aɈ=X|smRJKشlvst_e eEª,ICZ9ʭ CvECdrwՆ"a/%qjlr{E(# ȉVIJN׷,7vSnXua߿$ҮZed/_L,Paqg'Q跑wY NwA"+S͝[Vc[-8WpaR>Yٮ83%۴Kt|]:М\ũfAzwP\oӀ敼gHk8RqIBFB`6C.lPv Yn0XDl(P7_Tr ʉ׉igk7G#y).:8vQoh|''D~G̜X$ޓ"$&ex!l0)lj'Lgnn5wAdp_qVtE1M!_@w ݓcX&IvdU0w&Ź2t.JGkA4I}Q'Uk4BNG?V9UVgR;pke*`ñ B"H>7`I ?,ݟ*TpwWCz3/?{lP.O_Sb fj놢9=f2J`r.rxDbYfMW6u݆>"T2_FܒOCg+=oaN*UUVe]ɿ6 o4a&fGTԅnK5 jlVyPJ ޣܴZ/k}a!wb| NV)=k'KݗŒQvM/a rAgPІ4vud™\Wj暄+C`+8f\!ca98m15~ZŮE!hA}|a '`Ku kzCc + )sF1wzW îDϞ]aH d v`'#t x1SR EԠG9&7^;q/9J#*oف8@_0"σI^[U 6u*pƆ.cDp(|k WU⡤S?xN=`_KaU!ЈdyM( JV@ؘVNXԳ%?^|K&"?s /R {JW{4q8Hԫ|ӬQ>B]҂ Ootud(hjz`!k )P𣴁C]G։f@{Rj.N H(A0L%1q{n_2?GUL~~X ϲ d4nH:% !ԛD@HM0Ɯ-\a!ab=Ps'/vu]PW}GKfQ67Y-,wTOZ1 q*ho4gE)>{"PR];zPF䯜lH̘,O8Q/\CL5lÂ\&@p3)SF!RGk]هۼ:4zn]*F҈[)@vjسWMW}+6p 4>o\#["w9ɥ{r{& _Y*,u4Up)F"8r6WE̐TKͅvC􈩳}S2U#+')?^r@]>wbT/89P[KP IcS+J#ifMԏU$_f/^:6PƲfD׀`l~* a_ت];w7(5<4{F"Dux$Cuǧktӆ>E;o(VƟ@UMЭqbT؉nȜ1%P.:IGTQ1[Ⱥ7y+w wfxg@w96+HaE 58oԚ{'F ¢r\}jm=L\߃„sb;CMzZ7yW[. Tfmc+(}sFnV#[;*\$ˋNp!0YgPXr\{B (O0ݫOlqR'+(Bv˵s5)ոֳ R֞#)4u#p:{ߧۮL/eyU7$b R@l<=hr!_(.j"P3K7;6 6S $}ZNFx3$ϴt3R)BK-R,48pѰ_~:yuCvǪA*hEtI寔YU$>ǷCI$a; QފьŬ>RW9r:J D/2n35nC\$^?} ($,2+P%"gK "RN~%Ar= 4%@9y> g=K =Tw#Μq:q|ee2OB8.v/Dc!^AC:Hec{I0u?/>s@L0CNܢ-ǶІzHv ).'Y/1~6'bjFe8@/[i9Cu3eZdM}ٳUҟb7 1m$6C,? wP~0S7XW`.2{ ҁ tw(Hz2eQ#HI W/  L2~׋EԑAMϫ@Q5/pLjJO:3>8 4p[(S&3ee]l]UP wXNUq~ʜ2[_fڨ(w@ 9jq\WM j[^~~ S54YEzvMDeE-39 +Od Y9 ki@ߓa[cX!:e#JL_9T$6: ;q(? =dBou7s,6ӡb)quˉ;,%˹(n(6}lﶄ_`-aӠB5RE[JTyi\*- q?Y|qy7I;tnPj=(tnSA;,Լh-3Cy5B ڔ:MM[pWc)>νo u_Ȯ9i'w虩"|qvWXjoӹ\Qj!dwJŹc {lӱ& :1?>a2zF}{W_B@fa Vc4&n@#BUzp:K|:75kZhJBZf&5h25ߗĀ+/C Ajn ܥ M5c؂V4ןS,>`x/OOiLIB.=09޻tޞb;7)- 3;g; AQys+AtjA3%;ohDŧ9/w!1v|İ5|gFaF #A&aJ|qPnb3uNXkQ0Xhqg}OFc{#VTƧS?#oV{7۲)uj-R?G$DsQ:2d|)1 %.qRQ@̚(\"/=TAPp*.fp̗ZvnAPHR"ڰO#C̛U![^iXJkL rɉG?'9Bl(~Q1_Ɵۜ`֣ U* f;n1c$B O?&OWߥw+v ) }3SAuC+lki .ȲeGwnNzgHf~U-IQ [O:HCq%+Fױ(r'h>@z =?*BZ(m P#+d7FO䙯KuJ֞֒НN<+bI~]㰾ؔ};>J/T8I5Bg.S 2`+-Ó;qOpNsǵ$A%p;QZVjR8Xzؔ(vd+9 e49R‰edac:^|:QME#urS^l/=]AT{I5*M'p,o1ﳦ?jTgZZ#cƟs(̃U^Xc<>G ξŝn쁜p}sZ]܂ɩ5gYǽW l$s1v$Ř!xXO $X.VyD,8ki 姫 \Gk]v{q2%VeK4cM'V{ 펁9a'|a,yzV"COXB "&E{D)3'E/pt;K?`WTjzB;KΡ9=12~Yl;z X7 H~G'~F^`Kkjƕс̳{!t'8VΫ}w&c|ߴGrHsbsF^4`r[: ;4. Y-+t~6D\Ǯ΁enoF}&V3Y,;XSf 4["H:Ş*UmOr)1ڵz/P$|ȯpX)y Xo"-vi,fW%J?x^#v ysv(Y/IuuzF'V~䥝7dOv(2S-tcӚ[Uᨸ6BJ&`bg[KFXPv%\nD oTNb5pun4lFɈfqL'kik׊qq+l a $8IjI9Ш;R[t1LsupqʨhLɄIE, īhKe.+pQ|A&Oiun`viiř (h ~ô8I!,N=\PXij\^RNn p ZNo}ێa8җ׫M "25D׳v -y(x2hOar9:֗4;ULr {)l=IwL1DO;f)xO-_Y@Ath?=>heR>b:@ `J(:Aξ`uz~7ģ66$n*]Tx(АFW698{7 O^bz͛B8P1$.$@dҩeXY@<쥇m/쯍~LCYj/wwm!:5z> w3@pr!"XN0u /WCcY,Y Ʌ(Wڎ?-KIl~ژT1 ۏL=OӿIH'í*T=LܷjZJwR S뱧!F hG牢RR G?AmRBd.jzv4IpZM! /cSt kEpER&Koj MBj¬8=2 6Ig[C$# .UҬjcm[^б;e));L v/SJ*U+) ׽ q{čU'Gt5/OYe wRt$_k~x)%@Ƽl?2Qcܚ}ʇn[ЀTot@Űf膜]5(S qĉUd֐}.""'S uFRBFsФ"}ef8^3b㡈ь0li}[a\jҾkzl^lHfzw-E )(o%7G19#KT{w~j98Xb-TIߙH7%cexzx0ASvKcb Q~ۃ }rl'ȶi)M6 ~g?IX녚}I!V$d>&P8|ԧs/Y\MH8#ЙnIA zBj[$i;J$o> #I)l ["#).H w]M+\vwj>ɥjDb "M%JiW-Z?RY2IO8<%)/' ImkX/ ,s)}K,BoޯkȼuW$) Nlr,j{)娍q@dSM{v*ϛc47VmE'GGZ+V}8S&G4\݇zВ +W[Jc@zV20rec`8gZ9Ti!> \fs0ftITm_-So^VnúEDuV1%njoLcW#{1tP\s4Gy6ݫ5b'lmy%TM_u׷~Tos`V+ t{ݝFqC+r0`lY56+C" $)q.5UIXAipX^P>p~)޾e /d {T#N~_:JJ*KT`ienMq4҅>?}x>CduQn(cv.+czez'lˋcjm b62SSF̟%WsI|F{E#ZREeVKst].HjQҰ_7ƌ*}Kg#_ 'd@˷qHBЭ5cX L]Jȴ@LxdfnQ᳚ɠ؏nSe%ٗә\!BÌߧv~YurCOuhO[@$tZ]zEaDW^Yh?E/!Al]W '[I'XK -{re0*'B^d Ìأb @Qɟ,kx:C6 d%+4e&BJ _Rʲa$ ?9W,`'?Zr(m-i-,I䧽b$_0:f$c?.}%<u#oQ *zB/& LpqA1aMޯeK Ԇmisge2Tbώa:NZ5b`X[Dy?ztt'(I [0=]7eei$q iMz^_KI]ZH}XkLyDRDNfܱI/hXy첒HȗHX,-yi %8rZH3t$RLŧPN~'.sQ h΢q\ sn`, H2N-o#X뿆+eL/t8'2TI9%q4 f B;w8 pCT5#=f.zXķ!隤6EISP2 ѱi%H48EJFafrk*L@IpC|z>xkՒ";~"쳼dm[0[Ьc#o+$OTls(H6B'V ( ljlnE͇^eۮ(k6͎߽pYk B ?(/EiJ葜3K!@ B(xъkDP%FS/LN~#,ox^IхwfH!$%ACrT<ފEr$޶N&9/ZqK3} %+37Y~WT 쮨UPpg6N$6ӚA4 rš2i ܏PD73UЙ:ڒP?HCN^@#pp l5}‹'adQuW~}";͌6; ;V/Y @'NTYm~Ov ΪÐcU}Eefġշ/2]cㄑҫo}KΟYIYʹ:IP:LRL0kZԄeU%Y=MV͂nf ¿8 ϤbavΈ@GRvi#N+_\a>ߋ).}_YD\F5*G4%}۪i&5)/V>7ꪹeL7I,Gv,xJgx7+/v 8+u9LKɫVV~pPd|@1xhw `Uv\9|46l gvtn2--KJ|[Q) P=/FׁkC]cvT 1!2¡-i˜F nN_LB6?@iU5TA].wp0^~HQ ٷZ~ ڊu8wI`bK(h1ȳ8 )[>Bl*#v!Mth4U=JkD nO:%[w2B!LM: -mrNtW$UڴóTnAXOu9le)fb\ɬRFeSJq9Ш0,!mNjc:iװo59]E`m:)|;g# R )V#brPVs2pIEDle!Aq/C C^NJYeU$]{|eeSvxJ΁b!1?Nj)޹&i_aцc/;2*d,/N^qodb2]GV: : {Zl5r)q!S1}tM8LkRmU2Al~Z@ KChd?"L5Җ%\ x>MV׎6!jLUB(k\~gDb֔`4uꧻ*x>·a*` hsWIDȷbjn4BJTU60@_M̃k:[1!=`B=﵍{2 xm_2 zN#iW QQ*)91,=m 8aZl{UR[F]o+FO; G/>Q l  he1:_p_Erp.^;*W m13*ݪ.; ͐W )=D U :bsE{@%E!ˆUk2DyKv8ϩoxk UaW27Z]D7U7N9KKo} zq/L?|@Tb &l@wX ⰷs U:vđxn lI.!"+:Ft29m`h da1PζLɪqVe|>Jޝ9 0R b 2{~k556 \ Z? 2v'Be2o$s޿wM**m` J"y(|,XTp+8i؅'Who{%])E٘NJ$S,;A &Z3ݱʵGgB7z:zz I\DP(|L3+xzct!AK>7+jHW!O7aqHQ_o;)V%^H4`JJ4\A(U&-2nIՠZA {A>޴cU.10Uk }#tm"Rg!ۙd|+KŊy/ 0 @ 3:΋cLy`.t ¨t#\h^x\-V<; 0Y'G70TTZF #Dm g`z%ֻtO  Msш,rmM 4vLprBHH.lM-(߃O_;c}(9vN-&aՍ0` D@'wDc.eNYP xZ~vu v)Pb=`Q{d(VjR .8Z]8[4ѾF wJ}qbbܟ!PҦuK(;cH /M$ABCZ4)kgMj;.YA~ȟ̄LTw?fRcݞQTUM=؀8"MD:YJupqY.g`_Ӹ6 x{f(tiOW;pA~8{Ξ}bQGl(46کPuf^IE])4FV;U#qN`2Y,̙QMg4TC1Q|[0<yuӄHCe?CL2e7+\zP)~\;}M5.xo w>;W1f#lV9PG6A]uԨyҤd2.`m= {USˬ _fU M5l_Ow;Bt\O\<0@/JLea^{ؿ'%PTz$GpcX33Ѭ} ȷOn:&gAE J6!E/jdtVdQ g OP5Ol#WB!4|? z[ uj伃bnʙ4+W$'F*Uip4j[/a&Na |WdVٶhOk9\٢|IS_wkRSՅ Cě$-P5{|Uhᖘ4,4g1,^gH$@ -ʥ*` .)dV]W^FҊ욲M=鴹ήQ x|@Jt`:xJ'O;vrUca[&ƣ?q:vO 5EXDd1FlGf\+:Z9M-a}`҆{G8p4'F/t3`}ԑQO?"MۘȡGLA,ͳz͂X#:!B϶e"쐗P>ts*Ǽڡ (݄E5W-N|)=RU1M~( jӡ{\ɝ`'M5:-@+n=`e7?" Z Kw`=pЕbGaE8 r:T`{?.5> }UdADždi{tT`WE0-T;J9קwXE`/z ^eBn,mGrg7EA5wA"4->[kEEdlf= 8$DKE5_6r5Ff)AnX:L+Ƕ{}q{59,u 2ˎD`׍Tvùy;iYXU[ v%,Bهqگ ;SRSn".؇Հpj 8ٙzWf8DA wQG kcmw00=qn_['hҚۢ ^ o'ȦB@(V<;F?N@H>)4\KZ.O0WiVg9I25Ҵ^9-ULa'蠃odCsҽ?'MD}3|^1rbki@s,:c~zd$?qrNMJ..Ю۲\0Q|Oh]y!lKݠ`Ut  ]ʕJ"j/Z2;G5ߗUW{$ڭj!+}/Q~鿦^NOp&~W䚫\fm_Օ[ >S]S{ hn\0L@.J$|EZĜ "F=Eb5_Gr+.]}{e"|w^JROԋ LQӤZ8y5641/ +YmbCD'@>.W{<3N:4AkGTS &mGٓKy'Xrk5|^i]mS6akbd{*UcO›ƅW& tGOHM 䤛7ruCZ>J}"&Ím"nU >^K lC<.@䴍GQᓱ0}3q4xww\(=q y&ۻOKi Gkaq8s?/ wKo#Hѩ̂XzG,Zo#_vi1(fqB-׻"fziP/qR<%'\R㧆xؽ;+%4nkO?܋ ?F+(SPgI7ZlL}zaeuYvGm$|iVrR *-jlfBј yDowǦF *>/odm '8 1ך xm+jl3o;'+WO?sF(:p?a>%w5:i~b1mXU}tV!NrwACX0僵Jy( zB0سVil;A"?C[Hs~S}_I%'z9]NZ42c lBazJ=RSƅۆpw<SglDh%Q;t<*+GݕX5L*{ʙGB #z ˼)gƟ Sx4uKFv8} ooOEhIC,YcSZ:R@2x5g2A.0HjQeqz ApBK\BreiEnﴤdd=F9dW jьC"goXS(Z9Ӿb.+mօƣe>h]Rd7O9żC~0q@yriXL[cU3!X% ;1r@vl h_\K/G_*9O4h栍IQa|#ӂ'7@Ǐ5e>e8`ds-/ʹ߼-cmHYFG>^z6 zce.N&ˡ0qS81Kc1kRq9J0RfC#a滑{k4j/k߱L ]z={.A[T-` [\.5(Y *ŠKeu) 䳖yYuS7I^266/#1aV׏Ϊg3#8(nunVRh{Oԏ"Ss:wߔ-'AEU֝DOpD5_bޡgcBsjq\+D Kz%=z'aw3pv%;C%z`Q|ݗ & bra&kX/OH4 ӏ}&0=]ilՠSZk@R;VG/Αc&2YIٔDZDӪojqT1[8l2TTF9@uh].y+[̠D28Jfک[m6%W'^#Mc2B}, DK$zlRfmaWD),pC&L(1[y!g%:t=bbD cO,MgE|B#Нّd1T"n/#lvQxHKtK+]mdDsKǔo u\"F"[Β։ [%j7D<@\pvƂ'HQ6_~C|̙)iBwѕ4p>sQ$x=$DvҞƲ|DҼX.ouCʮef˭&0?}I_=(n>+WTsZ1X5p>t 86tXI;$FG*H gv3'S 28i4Q "ȣi17MY0EbŝW7A c7ճqsX'Cksİ̓ X9fyMO\;Q p%(ߡ@ ;rtG+6}KocjFtHn Y8`צ,3v1\7,}=e7DQ ۨ$8Ӳ &߅\#Rr5U. 7aLOC/,L)dTC]$LiZUc`!N͸gjIV(?d,4$-~ͧZdmP~B4te:@etRo`!q!'Cf>:4{.:@#}/}n:@JDQ69Π =HȬX bZLii#C{unl򲆐$Uз0x*;e4SN;2_a@txQ (u wRh^ҬH,DΔ++H ’ԡҢ/DҲ㛾")zHj,]3-d٨tzKۥ1 zzWF]=nNۚ)Q}pD<0@ c:ܳEsp7UF=ٳ10=Ȋu&t^k 7MԖ<+|.ެsqxW ȩ@pQʬ$ uOz՚imU?Y&Lq?g"hH7bfNV2EfO]W2>չH4q֞;osؘqYJ4oʿE,zctfE 2oKApMݵ3ֈ8($/;"ϠL^,!V8y1NLQ9!ƮQp jƪe2iq\DzHd9oE]--GXڛ֍wC*˒xIVG@ّ+$~D'O9JkZ"cDتد[֪mk/.;uäA;W*#4/IPSzLv)V n?x?B~QUYF_۞hVSxq?vBFSu4!|$ʱu@hBk% b*~Afd/u84!kXx5׀27TT^LS&Y5}DRQ:NÏ8"v7aEދyTgȇX0YLJ7Af~g9o_vϞiPBe}loh+*ao U۷2dTdW)*%rwk Cxe~مbu^#@@5LQ?>&\M'; +Nk^|8jsȭL6U2ż3n( X_QI=ʚF`:T& ֚:=/Py7=XmARy8ᏌŝP.Ex*OtygYlɛtBv]cc&{̿tEpSH}8u*I?U,Ώ4:D^u9dqraVEXZz:7BD}Yg=7g1o܈V̒Ӡ7#&9"S hbVH6$h,A=P)v\F&6D Fsa/(͓v"bEstɛJ (JP:UH\M-=vݚWi&Q/K\,RaG: lh!9վ^`.Y#v<|#?<% DjO* LęjKM\bZ\eMzЇײǧPueR:=gvwHoTPzsٞ@+7WI?h-,B4Oe벾4M̃UGs<+#Ru/;"(OXMRj'@4c054 q>p}k6,^ #|ڇ x,*wpW|ܹW#-?v4-zK@(9# 5l!] oO1w^buq=Yۂ0>L9z Htb 354 zQ'ٮ8'o>3ǣ8]EtF)MhʎBS mPH Xf@UFibk;,& /H;ٜP*8 mM @ДN(kߡ$ѿ};jh_X~,LEVRQa} JP홭>j-`vA$.ߤC:[\aȦ󄲈Li _&- {m@ >Y͇sXIkDwwM {}þwv꾮2:,@%& FSc0%Z $h`g_-̋7 l!AS1,Sܙ$!@F A? BE73w _u1pBuڶ[3t5}(q/ mWѰD!OoȨq"P(KsМ ä9sL=>e5Q@(l[cOs7Q~h=\>;:SHU7Ģ Gp0BÀ;⍁AB&Za,d$BaY]H`pb~>qg8.^>\>:J-JrXw[1Tff0moKF 1P/BNhĐ~О΃$A~B>5|4h.LrLC~M=rKuafep?cLWtI|}\y3uLs \\i*:ʑ[o} rZXn;Q , M4n#4}0( UCl{9} Z4[|CQC8eY&nb|=ͣ]pgDR-5A +7"j375Ioa , Oߩ BgY!?Fۍ/o֊YH脐 jîaOL΃ 4&YH/c(ʲh>:d$d4Ka1D`CBՈIn\ 9< .OrlN$GA1^rg눟/Wr~~ S+::*&\𔘹2MU}$[W1fSig/3:whU :@?rrz]#S/5ņ]@mN#yj{ ?-`|vTB.ZG\j)5g4dh>#w2 \@`.ao[8t Eo;_#64'JH8"^"M)]\"4OiП<w0XdyJoƾX;[n1OO 7W4XRD|y)$ ^꧙M/{WXR;{LcgCA>IDm)` -4h9Ɍה/~$FXbF}rUd"ؕL8ZnlٮzJ2킺5oYI a{DϷUm -N ,p^qyt].>/Ⱦ/EQ۩d6$S5M>곰W'b|?OmQl@5(}ڶ|gs0ӎT)2o|x`]_iPcCGh.A7~*`}VsFUϟ{9y'gC&&f(b 6tOqMM 2Y*$D(ԩq5?Sq(0 *8D^Sf疵! :RgAtPxi9)\XU=H.”L<˥VOYR-/䰔 \6aUQQ< b(%b})LJє:i44dܻj#WF1/pa w\6zzݠtS6z~z^g`q\I9` 0@dSQjx 20Vi4B^tASwݚ&+׊vk^w QiH8yrλV瘍4+kx#:A!Y<Eϖ9l\@Duou~Yh uK6cH 1I >)TULC&AGpL&k*AG*J4G0{>Uy+ Z73t%5ПF-.hM_98BE~D_|b!?$4xZd6CY7@ #'/5̛][e'WJ␱`lV J)/)(+^q}lguLl( P+-*V|RJ6utKsReN܊ſ݌4w)Huהܡa!ƨp& qƨ[+fC+;9K?-v04R:^(ٲp%)HQ-4Q߼S(A2^fA%ͪXvp  B^Irt:"`嶠LA"GT_ -m `@u˘T5vXXf.axTk3iC6j'(2~w$XUȳ?m*^[: ó,I풟q=F*RYLЛLSϡVpաX Y2KCv s;Nethv^ /tDh9S*SR'q[\l`ee @Ok}C2L/$,$kW@~ڻw4,W!HqiѨeGbr^5 W Zr)EEe#FnbCB0zt )h3) O|@]%,q3,+G*XեfI -ҫjm ;8A+G(")6r:mUց\sĵB6LQ 8kbTǦ?A*KoLah-`KgO]8"FړI4֞1 `GM_2sG6_sQky̽K]ٓϚ\s^ OzŒQΊ+ʾQ7@3BXZI:xupO#PGi%ٲCO+Vî9^U:=zٮrwx7}AW~p/|Lk*OjuovhY6en'5jL'e]Ix uփQ'X1Nfr" qlYzר.~{ KI-~' xֱѭ93%xu E;(&#vKeoڟg#xʿw {gΧ@ 7Bj|kUl[Նd7qn0wR{ L*ᖽ܍ކA"::49`춏,?<>\ :X@mh! ;JCN9GM#t{bxBBJ+ا@ ;n*7Fڜ*Zj {4k8MUpmsi!AUBؕkv dWwg[Tt,TDkZe8U&8͝ ?TRJ}=ꡁB,׵Ȱ8\Ħ >b:ͩ4^>VLڒs`3Zl7OP˕%3QʞIH:( A痁ۜ UM.ܯKW 0oK \U!Au\魬Wsxhc#[*G\L-xM-Jx磕Ep`d67;8i 'u0WC :* P)ԝJeKJ>-0|3<(1ex"<÷iu8z7KOrї uËʃdV=Dz׺5*0y1$.|Pv4׻}j$M[fV,ݬ`rBXnieC esY@2m>Q9dJ[ZaW9M2[)hU9GѢ$3oo#hb_@zND5Z7CV}.EZ;P,}.TC /wE`_oBy:1cNn؞]󇃦4PVPyh9r)b$]7` ^hr  f٪Q(j-e=>E$IBuvٿ+z1z³hkAp RpV4[&P[7IhoA<:IXU >K(-dh cl;;X?GeULkܑ:ei_R]ϝ"KCa>]w@ rdh*^#@8KiB`6D4OVKpKz)Հ鄱iYl<"? -/Z.!C $sD0`vƏo#bg^c*>rjw+-M.\<?`tHJO MI:n}SY1Kx6-UdZ뇿n!' Z(=}h2uN1Uh03=_}%ҀUNJf~6k h q0N%7.x`FQ!8n5;3!iism`*$w4%`._M#~ mAak6_•D3Rߘ.u]xs"$.= VX\/KعA]WK{lZЍo>e M%6tyXjiA̗t@ƹ8BdZ0C?g6g:9죬[_PfJn07:؊.ì,^%ClIߝ=)F =co帒)00 ㇢< =SIKc=MC>c[(Gccl@ջэU"uh0t|7+l<%.s4BbPrξE<[e!LI<dž[VG&v/(ԎIzi.o}x^WCE?~;}JoUyYn4%LKt,/Y`4=*PP&{2oJWGnsi8_a8`F^!d3TClcM0i,z3=,Gw'%~vOwI>Ũ 0d6\?TvNPS9-7 & zmiUEƈYO1bIp݊.:tZdVb$DQ= 5(m'Hj$߀.It}=5\*13Hb1]X\?j5;_u?Ģ \Wk( hh3 L\5 K8X9z~2`~ aKKbK=}QF`2Y~GBh3:Z`%Y TBu" sᭃ%bja R~7f~Tv>0eP(Q͟RџǔXDS"B*x }ҿS sVM=o@ua^ /5K6?U;T3JDbz+v٩WtU @4/WQ?3䂣c}?NE&{ǡ&kSURz?=(:7^Qb >h^(1g~1Oч2*qw!U7t/s7ŔeexCEdQ^n<)hh/k?ţ˓pOwS'y!S19g`i1ջ]}tڎ-Z'Y9^E:C&l/+tZMW lNJfcz MX 7Roq}ODQfM*&6!Mבi= M4vTP:z6-S''!݆n?\P=r3y=xSTU~EJ'" 8|½(. Po~r"S xHK=rHQ-vԦU絒~flHnAҽK{X bzbs`y.-m0qe0%2e@Ҋ*qb\bg=W{\c\8Eu km.zQ~0 ʝ/'&EBZӿ@ۗy*f+<%5 GE[#0vc]iëk]c(`Wײ(B`fCZVk  Թw@bT/i3DjjHEr[Xe5Si'2u1,LZqҒm^"YTh3k!R "uK7q=WI¨C#xI)^7 <*Օ_6(ɕ) ShtylA_A.2;o.?qRNd>xyH@`rNl+%5rhvIۍQBp^羹GDQm`<c\$ |=?Wҷp;k^IK?y1>: |_ շ+8A=1AcپFc͹NqJIí_T'\=Sq'a̩:ߟ(cz6RJ.O|{S00cP^ݫ=Z M"&pVA߹\bŔ[tNu8.zSesZ R)! R?M([Y·A~[qb/;2n$2$9KleZ#Drɩ]QWOT~rT; Ap.Z*x?wbKv>3 m6';"F>0D\"+[gIzh:s4ίBqo  KLCs.Krc]X弆`h> a~*/W=Պ/eU589jE5.%r3?x>*X6?!zɜ\)p 2/\-UQq}z<4X/ReiuLoA,~Y(nrU;KA"W ,)<?"[jO!#@4z\8cHhl><]Zbg.f#NJ`4W<,OY/~֣>lN 6!n (aDf:@M^r@4- iqEc"`9XЧpsa*PS"Pn+~27҄!v[s;gDtyI :pe_YקMLb3a'ȘO1:EF L.RO*dk.?7+5j4i^{p0*Po >qz({fXN7#jtog-b{1iJ"*e;[W[jxwPoc'QծH_6u#pAE@{FJԵ_6]3\F:_$Ջ0ׯ!W$uK$X7yUP;^Pǟh/!  ǂ;9]w ;㚂_aS.>qyqs&f%qns}VL~ R;ol!\ %RU$BP3h'H"গ 0Ni"@J=ՠ`iz nj<T e;$̀w0VEj+Ҥ!"y+o ׌+}MM)UzӞvńfpsHˆ0c_kŒӗ-yxP"zއ9 i 1 _Nû5PFS5/*4|kKݬkpY>hj4Ak ?IY EMgAj7pmS{X65ϖ2637S79 Y7Kh /)}7Q*yX uk?76D%^o~]4h^2KO7TqeB8kk: P1qi9\xq "}.huڌ ^R?2@0IPU0(L> ` zLsDN%Z̃m}^Bs\Wx[ |xC}fD -a7qP<wnɌ].oJRY]N/fd9>w:+K5Xn- z]'fzo5m ԡHhBY0- ~o#%<եgAy OtXM( ĸnuZ6beWvf@Vz:݊orw*$CKDӯI~O0#U * "\Gw> Jk+k+6p7qUy;y-p5I/ua@f3iM,/=]} mB+7 <te|f,*S2rnMLuGu̒]ԞC߳iD.1 S-% LI)wI1Ym"m=jCmn!(6yxTwmRҘXг*%VWy&Q?XSUCJ,ƣzʇ-sn)ɊϢ`JM)ӯ5Rt>%l|8P;JF)UuG~#t'V,7"WfέL,Zp|_Q |#6Y%M(Vd]WN xV]nE)+>|+J{We~Ļbktޜ4~Sbt0iPD 2}ku}A7S}]W[<(W rsMVkrZ$~W5;w60|ZSHGğ1+Jh.pS'1IAHsrWӊ,d=Z]rړ^y_4)t+D q0ZMY ̆tJ0b *b;%^Dpv;t3 a!9f*Y1Ɍ*Wc- \o-FG#+z"̒R)߂i/Xl+@OL{NnVUIs Ƣ nSJyɜPh,C~fdd3 w; %  Y^tfܑ:Suel3$ޗo$biţ•}2tM/7-. uE{ʽ[~tKF -?AQǟ\!#%`GG"k88⿨':RT5"Ͱ+:Tj]@Q1JmL&F9(G1I\.0nHD\oz*+9O:MNty%# ǵ"3&VAE q*5rt}sތ@Q?Xvv.Vt7ehvU]RB3|\i}(h ,ͯno_lx!>rឱ Ы^9S7̟ZѐYG"Aaw``-k%F7fA)EȶV5י~] X0%kW#A&t y.Nu͉C&5M報 bYřrrk#i5fd9fqQSul$|i\ כhoV12~pv \M#2NS&kWP*LZܚer"E#BՋvC:'[p˸ސpH<8pepCD4|<.4PmK WBQ?b*l R20Z4RChL*tas(N&2%WV@qr$@ɳ,$` ša6=2N {Pe8nMS.B&̂!=# ÏPž2LAnR>_ _a(yXø>9b-Vvi! +M`Wt.0N*UJ!oD iWIqGi{=!s*:Y$RNJe_Ƶ 8':4y'8A,QV6a~1^pL1[aG"*ܛݤ.kj.9Qt2%cZۧY`Kgfr1߽q~Vj:諔 ("\SsN@U j?6^+>%bv[gKiBW !#b p䇓R>Fa=_zh Xp3=Le~#g%pPS{_L`i 5\)Qg;HrfvS;Wrh COxoˬ[{yBBh/sV(1yOfdnBS C>AhN6qН}dW,x§#UL;1'o@#Ju`o5?"Bx:eL@.S:!0iVj?k"DR~.ncN7q|p0Ѳ7i wKM9MuLeou/ ȃo$ИZ['OQ GD_&~qEEHT)_t&"L0*)\A7d"CLkQǓ,)t LZ bZvRylDx-Gwe3mNKل|%j„RjwN!V-'օG㘦Vft֗F`bpZ'X. *q. 6-M M>ר"̧ϭ^~FwtG-"g#w<ƘI^ fdh//ȐLM9E"6^HװsHI2d`E9Y= Ī4㿥+ߥ 1VQ92X7 @oNIu^MBZf c1pk܌jzmyFAFؼ#`0K13tP)2t2%pSx#QHj \F45,fbQ%p8,SLz醋O9ݻyNa1fۑqm"699>kpsGv\˹ZB|C Bl@S/{P ec6Cc*q"ȅS%R3M"|.ʪM.k 3hK_d@K rvJ:Ƞ*}54b@N&n΅)@ND {[!0(ԕ]"CN^ ^uf1gT0.-$ ?4r%u%T LB+6RfT`l`t1}>XSpS&O-oV[C ~xpЪ=WE"NC5X?o2+V;iⴆB.f@YR\r?ID  l~⸑%a_KT=M+zbە>m5LKLn *Ymt:+~o־=`Kka*6 ؏ $ h/'4V7 8"WyAzh-1ɧ0_K~>ʱ!,YCLrb>)@ו;y)̬^'(LC[rG#0ti)eGԾsuG-G ڡja9jeK#'m tbsWgˎGdC7 18Pґ|^P-*&F^_;eVr'jr|Ma@զ0ǂ<}d\W ob__ZoJ&#}+8FUA/i%J\y&h7H "&uzy鏋4_NQa~qW az.ąT;Ga|fvM,M2bűBm16mJ(Ss$+RU}|KѝOFT-ZAŴ|["ೕȪC[aїavEc=dB6(l(xD35ۄXzģ|^gMwJHjD}K o|$!Jp ~7 ",XTGY(E7FI~ Hp:Y"޽86[Wᑷ-b{=C EUbݐAU0B< RHvo S(@Z%?&$N"#=fA0Čiޔ/nΙXڼZKI^D j`ЁeDZPbi6p}O O,J$m4L/YgT {rJ-Sk7d6E,( P(bw$ղPk<- ZZlCФ0?+ywc=B)Yz[:#h> cmZ5g(`~ѴW&r5pAYlu V :;5͊q֣&~^t~%LFϺ^q`Ug*dgEJTu~MbhK@I)Hy`0ʅ&]H櫲Z<`GI>AN0+U &XSX՛ٖnVһd 1,WK9NJGDqOŲ9p5:ͻ8g+R:;`pa͚' I޾IXQH^s:`u)Xq͔͌Dl>O0=FZ%kn;}%pyOs&Z`PzuTM)j&ءjAXӓV淂EP%_Fb|9 (/L\xaX㘨["ʅj6]+V|/ͰY+Ias] 1]J` d6s_E8Y5|uUUC/avAfTDಏ2ir]taӂh=ӶX{;13A&q,O+rkljj/̄&5^q=`alæ,2ܮuA22 OޝW툵oށ v8ņuOQ2z 1Mf s9p>ȨD|Uٕ϶D1ܿt^BR2Za'D9Qޞ;HD7N& 9,jt q"8^Jqڟ)[gM"vb™_uY_oVhֳ2%]E`<_]~+׺IS98c|npg32GN\ՓԷPk? +U@Q r/cel&5l$)1xd4~xE+5ٖ%bm@?g)q,4 VXZngg Wh}&{ʜjcyx BEHwJVOe5) Xs!7i_{6[fSy  ց 't+fQ²N8_HĕmG3PI½FVpE~ @=g^owc|Di2ׂNfEMNMpkLKCcX[ybA5:4p,J:xЫ֢K7{ӺZJWT FAm>ln湥] i2*|q9W`2>u M9ӑ'ڌz-ݔZݺ/Ԥ?O{DojX"Zv/ω3/kSi]w`دu ϑR9s7A7|:wT*=cmTڜOJMH{2 GO"tHsʫBH I:3%` :[vx/x;sۯg < 9c[浃Wt*V\fQ#8c%eX{5l˔Kb~CwB  #A9R|_ bF?_8 Ta`Ɛ}:"Ұ2eP{NSzqTgVS|lk&Hz\YfѮħ j :U]e^ xvr $j%Zhn,A3r;Yts&AZTR>E1SXFĤ:}1k@mf]u,tW~m J#>ZCKy0n)PWsƗ?΄h21U{L]gϓ"YTSemƒ)q+e =8w p]8 +b3.Lq]i]`+TKI%xrSX31o+Z,Û +Tgs5IA:~P?($~=& 4zպr_$NCf 0m&+6pGp$^9=~IA:CCw$եC]m>Xťe5pfM3jG1Sd SG"QlU#\ДҺ,GK?Yӯ`e|^[`[&=_D_$4`P7[ב4"C%Qw+ 0Fq\*&0xL 3:Sw T4jVX`㗦Yg|klx ՟{ZFB 6(mqx?L(a`{^e<bVڣgF`d\V^S&S3߼9YKAD/AA@NdH,Ӡ,|vYpFX(EzcW"X2Z*Ga PN}jYĝY#^zfT@Qn`TnW:sd3J>FPxm-ցf@!SqPB6)QM Q+vTGK);:3' MNbh}m7!JfԻ}skfd!T庉M]+ŧ WQQؿXbIӂ6nTtMcbn]\$@ PG^2C3bE2Y=e/.HEV]Z{AhOVT3$!,V\;$ꕭeΊ݃Mh+1So7*C 1\"PTqZJC.M*U4gX4[O~[`$#؍ZHώ, F䢇>GMA -> ¢U,o0E'Xse L'vw=뽹I얖L~=ĝ?&#|c)᧱КxUP-BB޷iDX(YU>jW ́'1 Yʐ0kڕn_}Oꦫ%' 1x06 487\Ko;(Y7ǻ2qq9ݭopNJ .?$=O$`E |`7@8 =fbS0îTOL;g[_~&%,$Ku.t%A*vNJ{?fyxK0P |ͥ0f}ΐ{ñ̤*]_ɞv&迉oitM4foڒ ab;A5h=M( M";%H4pR(s̟UuN[Ryme$W'<]ŃQDdV}St_K}7s ` E4XnutKɹo)VdG!Jlа4Z>5]-k+vU@~ D6/|+Nz/q]sYK5 n ,DS{bAXڻ|D[&hlf6jr a}t ڽ4<0/tX+mހ_"԰.{.~;jlnElqIm8fUP]tkx[j-) 箩 ^΄&L^ V8'>تOyM7Ina!ovܐP%/dX]@g@C {na^SGnVPA ^I~a8~kFPΥ1uQ( J+Q7OYlGjY;( Q8'ɢ$&4UdAP>@IkB\)P}L"A(djHnyalȋ58k Oa&`Â266+jNf$Se1U] /܀Dau/3&əW>`h_m5x!uh{ B˦#AzU:$BYE í!kv_MC99 Uh9M BۥJ)`54UpDjUIH#Fz+omuI3,F,t)jܢUKJw|X, t]15UG\֑2.>W%vݘzIk6x%[nG5_d"2 8 '5]cִ!Q$?P*6ʦ._񊋨ks'/rA'UlfW9d0u.A[,o6/b=ηm+̍aRٙĶӫ~i3NQ:*cüb\MQG4dM̩+e)GWU:x%cB.>*PA+h\K IS6OG2ךMn=D&𲆮@x)yBOx|qpdmHSG=2tmF:cE9s7^dYWDwۻ!y29P i,0h!=F:~Ov ck֧ϠS&A^C؂cВ919SdStj{jzt$N7mVFŶ9|#a-Yf3uA^; Νx.4;{+Et"f(ڹce!sL*Y)3a`Ֆ(IMGj2O>Oh4t`ȱc${6ԉ4X?V֬k$=|\?]ˠIɲ8@Ai۰&i hXKeBeZcK֝O 9~^rU4<Ǎ1̷` W t'*N 7꿑iI.:QKOrYiӸrlR[=vnmіPgh&YK e 'H#h[Ÿ57;T\)z!R{׌( |jc!ٗ)/Bʎy/=;2 qFi޿ nchbc_2G8FT_~OՂܞٮNn'C9PvpJ6~EHMv@塂|c m]9L:ӞF` ]ׇ"9;ՈN%*ut&O9Su*$EGD<5~oȨ&+\l8 ?Y/ *jB@&tGXmng#`A)_<2zE1# 9v0VqǕ唩@r#vv7&.r(7Tv?T|R:{@u觞(P|nAVEAJ"![#4Q H@uH6W҃A8a`nNFaygx"b^߼ZY5˓i64xKJPj?(wvY4@~d~[&6HZ !Myւ녘|"o beG8 ( h] _YMX 'Lۥx?, ]۝|㡍әj3lFhDp%Tb|؃ҕ 3]Sa^m}QЩrXs& mnDg~llsq=SmVC}0ƴ 7@D7=%tE fƐ~2c^unCct-Hs60Y|"O?pD $ۡTJ =䮩1lQ~;% D$'SXHN2rzԆTTeP}kĂ22NUĿدyS,߉80u€dD%ON&,xX2яZx5R/H|D]"΃mtgQ1|WZ+v^N-YcC5\K&)+ND:e ԭ}W#: Oj`7q0FKFKZ<;fFB*%X4H{&P~\HίIZeV;^D;A\!1Ra o4*{(]9ZZY'%LM|w.^ϬqkQb;q+JH*xor6ژz{vg8(>ZmwkJri'8Vaծ7 g]埩bX.{B!>^4aV U4 G"G6 ¶UCk1|5=mnӡm;'q7i:>[JB AgN"%.==e}"d!PBKoDL{eѦ(uwHCpw1"ȍ4$"Xeq5R*t==8w~y:R҄C֋Sl1VeY XsY?$u['/ڱq?,%HMG$JdG&:gv3րKMDF+WJ|iͥFV>WV$ "[9@1:bXVD {C?/~7ϨԚwe%阺J iJ;1g8jg.fq:IUL{_&GCOsX?#oc`TR?N%S~a[CcmErr 8gkW;4 lDЍq$*>6{i{%AhAWu룏5zO,K ՊYsYNDff[jU~P00M$Sj?7}!]yg;ěJbEςLX ڕO!ÔSOq0'j.KŽK|+PcVܚ~o=%^lI]LsZHP?IcuJ@$_>q"NE O)tqd3D:!ք. WդRlN)2-ۯ+߽lԱpv4do /˻QUF@ܗL%hE߀zp !]NT{fl}s:QXW. +Ys$AO]?,[d3ri!b7P,*Fw"Εx#'~ee@jz&'Ι`-u WԝI %=(+}F%Ai/0ڱW/ff /r\5CKՙ/^kB9,=LÆI &w8T뵤|NV;oݰ'\)JI15O&5G׌+󞌩]Š7Se589QJ).ly g@8LEZTR lD "P/3TY8b8Y WO:'D8 ؼkPn]U;+֑Cas#7Cf 9fZ7a c`GHhd3x;{glE∾lr q9• 5PDia;W"+}pfߣ=BQ4^S O6芔~ -$Q$gSDP{ S}l(>-g|hKDrʮIdsN܁Q0o)L(oUR} V("_Gke3|\j5<{x] J,9?ƚ3r~-E?#ƓiHrJFwؖafQBxMemH?Xɍ- .CaK qp1:lIB`( Aփ+mD2hJԉߢJJaLfk8DgQ9=AبK'p,ܵB&JF < w G%&%6h>BJ_N~E!׃Bn\7g um&z-Wx2ܶ/'9i~f`vG,@0к `aP3[cgUi '}30xSsS+"C5|O΅A9oM}[oLm-*6nЧ ^*, {K*SbW&w<7_!YrDN!{JXCEnTP Dɀ=k?%9pb.UAs`|I_ l5c[KULip W} 2%/2j j́1k=ò{^}/y/|C<ĿNYnhᄸ44*uÐ ?ƘyMy*=(yD'=rX  =dC'j]IFF՛ NɻZ~X0v2mkYnItuNN-,AgWޞqhE<]^` 8\L)5{1<Lg=D3,iH(|ѧ,*f<FqTͰ,ĒvUzD1D bjRi n^C7Ɏ/P7jT9Wv| .jc{= ?r]ؐߺDTVJ&Dj@"1Utl!U 79aM\ "}q6Qjo9 p-Ӌ *>Q*?Qu:f' ;Dn`Ls@r~%"sy7zvA隀桜 .iCAD`$KZ tX i1oqt>{5=#g-%*VC\ قG6N&o.AZ%9gD9[Kura@W+ɊežBr"٘yW[n\n:hg`]Y gnsA_.E2=PJXa_1%Yt%k/'t9RFj;Fp֥Ho V-KWm(7VmhDPJU?ލH_³'ew+YX*GMK2YcE/c!ULmDg!*D:x${,?2XXS@rnUlFIO`'{- u8WfpT7%eL/.bŨcyE[D}N$~>tzj,YG(HBaU$b!R|OxtBL.ttOWd#Yr2-ѪP?PJ0QY7氚]polI8.FfJ#)+/S)LW hBƪ)$Sq ȳt9,niO|C+#/*{;:YW};6:(A4>7PX,w.~; fpN fe](]T r,۲S$Ȟ~&܌;tTج 23K:s[L~ΗM o{KN S|ȎoĖbf^hu ;_J+}`|O׳P4ƒK$"̐NC+m9IÈ)a!kzG8atGAi2KKBݙu2cڱ8rkuߊ`BeZ*]ej+fzGޖi7Eq|[, ն&i|"?Fpon0kÚ|IXH1xH0=w`BR%ܯ/[*iD ©tlvvZit\")Z~r ۡA/bCzQXWX.ayVxe!ry\)4}RN.gOzBW$]`$O:-zq==) Ŗd-vʦբ%>1 z5ڝMxԴ:P*ˀdL F(zCvFsUqM|8>ZR/2K% F@SLUlZ( %n V.0*.S .E n50j>7' MMbeܴ t7+jTPWe+6} V8s0**`J] _2ryum缯R5fmp :ŠWNOT-AUYF*cJ;uGbGݯ>g[?l12)=cQw2!'Lּѫ3~ibqq6Z˨+ds(gϼ|{.epDVmй;FO/"Kz ͍_7'^@s„Tv s 6Xw[rGb~^?l!@USZ<^lϑ q /ނ̻y5\  wCv[֖ը5obzy%3}u"!O(WOb9./ڷWSK2Vmʞgyo߉[G*weK]\h}4NYf̕"fMCZF̭\| ͍ H(\ԏ"~#zB7 KXlg EX{Dvz+.GV}T= )$\pf='ԑ,J7FWc=1~& E  e#;;(ESXw%a׋O?Ki_gw o?8fҚPRd&r~#ByT@$ be(g7=6)uě HS 60Hh.Ady?i4QSȡ!WZ[:a? ~qH`0EϽum_ᑆ9|A,Wں.E0bϚ)+kx.cv24R e904rU""}ZaBƴ.h=Js52 i?'h q+ZȒ`L%)dNa˚me ѽsR}j?stCh炘]#9rCc\4"zo>E¦;qZ͌Ir\j yl`S>R$\jvPQ]''Am# 7UGJ(?K^/[%mrZ|LVvAI~AIh%$9ڷML]T̮>~f9rh?|-f*4kQ1z+g$臄3M4g_-_Ȫ]!\ P`)^E9!1C9e'W*^RW}?$ a~$mUGO>+7{NZOg[,S3n׀-2hJ!*0GfATx:{Ͽv+DNA1Aµ"e,~}asK:l[Jr6]iGi{۲(K8xA\]* I7; i!Bp$7wUflAh%9s%@jeEyΎ%[30]Y[kopxpȾMwY:!?GA.0!b>v-/c}27 ^0 bQ@ 14"*Mn=BcG4b~}kiXx?،QO:Nw?.zz2Qly7LԳ-IO7O1ї!ek/˚=5`UJ!:Zw)#:jak 8ǯ>i.)#wԏ7wuXWbC0!ّ"3?#Ū' 0z>Cę%.Į$ sߎh>+,Fa4Q'8g>n-ܬYUd(RiUmԗR OٻOtVQ'Bj46X$է}6BKT#BZG{ȞrP /Wѽ:Mt=-qL0,M=MS}*݉:`xI\G&tŗ~v=#_$z};^'4-`nRѲ;Ib~`)n b,LA6(:+Qѫ0K N;eR$i!3}$t䲷eCT1`Ĵ!^5 v6XJN0Hk={feb/ Znt@{Fg0/|)Ϸ ?.=E#?bXŶ&_q(]6pO޻sݽ~r;8?@4^gZí,&m%(N<5G4 x,J9"d<4v3tй]O<| ƲZ%=G^uжw[ 7Etp%rD2θ0hOֺj!z[ca/z\v!= )uLt/MXwS@xwrOUU(6kvz!b~Ap9TDIڃR#GJj`xA$ cc-/Zqfߢ ]d0W4:H5vC%\O4?PQ~T"nbd$De>FQo$M KoM($]n8]{kKĴiC`&(ąK]%av4FV2bوOQpץeI9aW\C-8o}˕kV0ȸC)D:.Z CkiпYzo64W>KmR%Y#D \ث3/)o՚?)X|ރE/>E,]#bddi!,F,ɫr`jLQ)/v"ÃPvP~ll|SD=tL R:\`Ic7EJ |fkiY_F-;uQ]bw5v]Ɇ*tՌo!ba-cWQz_@R63jdz϶{;=t>m)Q"'+ۘaD=V352U);j]ƺrc,~Ϧxdu$ZUtV{oN1_WQxyԈ,96ŠİNfAW7:dıL.т 6Vg,m&QW6W57,<"U!- &p1t#Z:M2qV(i979]UҊ?UV}"wiuTt\Q x2ڽ$@z!y?Mo(.yW1O:wl55!ՒO1/ߌetň{ZW6WL$yt~ؼH`o?xB/ZIWpq>QրFw'X}"BsTKϧ! ʦO!I#grKgV}6l.i:!P|Q{+^}t2LAq#k󞓈DKa&Mn%k|deC QB\Qڰ .!0bXnō+b5omo LAfVE:CB}BF /hgcao -apbF?,(\«>FCD5SGIW_~5vI% k]5[5ۇVTUZ y l{G;ek-!CN7C![(ߺ  /sVi_bUN<$T$틵䶢/CiܽLs]/B 3:} Bo q~ lG=<6J5>?>rbƿ_5"g'ɼY kA{slֹ1>>ykimP3u͆j/k~[l[x,:T3腽`B=q(5w\O#Q\CX*R!˷}-S6.Y:]bȤ2i5K&bp Ȥc3sN_u1_f=Tm3mؗ %3y+5t՚@mr~m=bw0>W~}Hg`xyCMó[А}k{ʫ7 IxqoꛀJ/Vw}(\b6þ_.4˚!m8lEs:.-9i^Lºlq@dJMyp{75yza$OUbd/-[5H*5 ~DyZǢ QUH1=l>WEeUYt/S:I#`1v4K07Ty}J i-wΑM!\%_ 寢55^j%M  e]eYSxqT8O( ,[SR/c(6ohmzY t1p,Y w3D@qY {d(nǣ FY*dNutI,EgCG<ى2 j@U^:l/A͊- ~y%7DNY0Pҹm%3{v<4+|'4dn U:vS 7?=и#td1!Vzho ;r:9iQk7 vqYdi .u"'"|s3GEDžZկ{ jJOp|rJZ1\:2W[ՈyX~F 2^6[R*hr@+y笟B,1$"-:ʗ^+~|h[_n"NoQ$IcJYK%=&5qL$`_h^A(&c:X `]jgFDEB NÿܗPSlK3^-<&,?yL/n '.Tirk T6x~}DȷAIϋb/x-S1RQJ/- eD-Z:7(azDNy!:t[ \Ћ)6wd.7jCkCuhYA=CkIS7u4ˮmdST% t0< Æ~r/PyMCug\ )1qBjT3:gkA2 $Le٨dS~%np)(jV0OU_".ndPyΓ~ݕxeDDeD"@n%mmz6J[~SA.;Y s 1`O~Y/lQ Z2?el}=JkW Xqsh~MŊk'D6d l"wmt:' 'N!y؆9>d8*L3H!6ߖ>% w`nDo$G'_ޑIYנFG4jar4aL'7B1$ *lLVse|^Vʻ \ }?bk҃7 mFwS*2(ׇǨc. Iy󟈔'RsL?uSN> 'iOiQkB3KaNp_HҔw(Lg/Ya~cOS [Oi[OuBgv;-zxrsX!h ?6fP@RLy$]h$>\^֔ H~,HqtYr,P<3GNLNo.k_e@ 00{iإrb ӗָY2hQheUXj6ޖX{}AuwA|#> `Ot0ce,ݜש~|H/:DĮ_"o栏O YD13'i׽.:8k,.qcE76jwyVKB+טw$,F,FoqB$.,,H@pŐnv\~-k%NLpvx -XFem%`q|eC?(Fpu=!Dc vrĔHӺncx|$Tw# ᒜhKooeeAVwpk] RPsu1o dt`r|Y/rfB" .!gkmc4!v Dٿ" dml0$ H9Eyz6',.8:{l{cDDdɯCvNߘOGa uG;|-F_2Z%M rG&!6fE;TKE亅G)-?=[ŭQC.Dt.NDYO9/() j>cp~\cFANpQ t[փAUHXŬ#P0j.nS|Kk^VSS])?Sk\R_碇(GĿ ͽm3-N/>C /8'4w sE& M2̸g?JQ۹xAԆ|ߐ'S*=DMJF5[E {_b3fZ,dí^c!f<ϕ2RUD1";د}%<|BBIZnS2C]r;vi;ْ4n||6MWq]m08<MtR[w+wxܮD|ls=u3 3).s;>񵟵(w i]DN}(zr:>ޒ֪9+!}s䯧"SC{M;b=;%g Qg@  d8wVkc-Dz/'4>ѽ^R0ډ1! =Џ;-}%dK8S]>|^K1i.pXJH)*Fse3n 3Ǒ#*bYoe4@VXɜno$:u @ K DRMTh_oc@<nAmT4IV(XOu{lg@7-_!f57D'1%m`%2hEJ!G3< :D7+P;;6,F=RHŝD= rͺSlwOU8*놋dH( 1ª3r`K,6]L-9OO :A*+\\g+6PbNQ&s\2$1eޕ$~Y ~ 51zڷi~.1C ؒHKj;[ "@ɬ\Bl/q ) 5v.Cv %D_d!5XjîP_~il3mm&µhC0hEd2jCUrȊUҋݻY-pUF,=FcQQO;p+3P+.u,#yie ];FWW|a!i3q՗<^GY_"4Z8:wmտAQ$'Mt]T$I%49^𴋵Py<ە .: nA70t~k ȄvH HJnPg=4NNvblΆf3|!~6 9S/*⿆iwF_~*G`&dR1!f #?U露;jKqqp'ʰqņ[Xq([>:gPXxRd ` kg`*><;szAo-0PkS]ﵽq?7{#,UFʵ3AXGhLñ-Xf 44<\*^rMG6}u=$a^+)QowMB]5(Wd=&1wJ:B\*D;ˈAC$K']R8N(ܙ ?JEr\sr/̜08R/plǥJBJ wM=?pR-N 4`颰,XXj& (e߷=C_K0|өQlb^m1^?=PK8'*䌟?p6B`X"RMwF߇*g)cgu1=td먁6e"ZgY^i 0!ׂ1D̚ %5շKA3#@gט5iKBs(P:,5jB{ WWbcm8aSȀQi1u3b9MAKL}5 DѢngTGuq_m²z6 Bѷj_++ņ\j< jetlSBٶ֭]p"^ zR֌ؔT=J*-}s`~24M5B` OO9nf>@n'NiDU)u&qh_k7}p=pV78GrZz' w$\Q~jh'W^'<Ó]֔<'2<>u2ʷx<ہ^Jl80vHt&>U$d In 턀q$Z z:W~j͎]h; H,k:  `Ź0f{o3SV^w!i6ĹU ӑ|Lؔew}͚_;Oש}ZSMԖiQ^2Tc;Of'$%quX݂eOf(p1!!6w6hp !釸NWh4;8"G{+nT4c&EI^sY?1IHvsT5R`(9S>3s{W$^ <HI ~`L:wt/.;wmSGvJp"Ooa:t>HTpdm GuRov=WD.*;|jsm[ |ōHTQ51YCVPν ?96߳a4yy< (|%%!YO4JD_LJ/y H ye2ggo^vG&2?`|L9t$zH^OuvY,hח#f$f&ր3 $⚊(5Up`XG%04%iϋ6bl-1jXQʗp̍A2TC]30#-7lcRl'>6q\4x3F.3sx_u]|0^XGq~_肳o\dDI >`裱_J*}*n@^I9"My>.(lqvi~yD9)Y8"->g>ޚ)!_ǢBۣ1*ᲗգF6r{HF\fv3{jh٘Ez Qh0C 'C\T6ݡ(4>hgChDUp[|p'1Vǚg ,o2;Wz//£kjoArX@asu[)ϱu(Nԥ/NA;HK{t}e &emyWDpH zNF*L6UǏY .$d 5WbKD?|9N5\_;*ɯpZe^ '@'28Fw3/WB[јĢ^uT~':HL)O ZepM>KTp-󝈎DHE0cן.ƼE]K*\b+ _Y}PG= }a1F֗dhp  7WB-GCRט1Se#`}~-Kh ^(o\Ϫj$"(?|=?Doܐ3 BRV @~/ 5!`Z|[֤v~ Fۗlp)R3KXnqh_˧4SXa6oee:ӑ`UBzVPY@s!^ooĎkEẍ́2ս"rĕTu<{m6Ljl6OkD> ٶװЫ)q.;WchR MT}ֺg0p_u\0/ ҁ*alp̕pwkyDE1w4gJNa;Ӭ=(ݾ̅hⵂNIԼctʛfj?)zocOOʓpk+E7< η]οGI?I)\{1{l(fINXRqt{6Z*~׵yh1Fes |t*_*W2KwDfa@"K +w>kUFLʜPјBר z6~[`X5<<JZP 撧$[xeM.w@ӡep=xa ZC' xFhi6}ÁI 8wOqCmyZ$}R˺ #H6>)%G"g7k3vA,Td ;Z W4I@lUUJe" [>`Em$XzRM,3S;K #q{§mo69ZA'3;{hxZ!n  n„Tw  X}so,ȦF1c)EW2=$y.ட v^a7¥98!mq"p9N`H4Pp։I=` wNq`fdy)Oc`t= VG׏3;Ğ,&9io  9 ]kZD1UΞ⎫`'9;WIꞔRrmvZ bJk#ӛWSn_j fihT=fω՟Xy] єrs|b>QZuޥfIԌD.[pX>~D/"`V/ǗA}d~Z0>9>~1g"Too+W=Nޏg3-* &YKR*9w`[?GL &^ڛ Tu)E a3uU]>-/wŖ"\cL\cF$7fh}s/*"k/** 6\P J=z_Hi+n#eg x=39 %D rqUQ K7>S[ MWH`$Ch5e}KŔ j;U!؊9"kXCx0qRNg+C.}ڌI2fjM}H * IR^/ UؕIع3ߜv1t3)G^{L &0* 8 >$Qe0Pb reKvPpÈ9nHL@@7xA{{8!n`DPџ#(gd xyf?&xC%ټ ї%Xt!MlYj1\xs\'\Hۍʟե0mdbhV2Yׁ֦īN. {ŮΜ"}} ,[i\B[gE]_ֿOx` /K sVNBj9K;w=)F7 6FrʮL^F!rYIMuCHR¥ vFcV(OA Fۊ.Aͣ姚U(>e#~Kl5}5p+&!Џ@:/9۳`Ű #rS:oJ<p>f\:m_R@l00-fT< !+g;KwhdbsވEh`<'gAI\g팊pD=HTX%לv LxUvOHe'(as0n.Yy piEGEA}ܰ,H?߸.ifyvVA]$96*r"4hZB3 "R^\d0R >[Ɋ]7,[K_#1dPVa5Fr7Opc#fZEV=]<yUS>P\]O^Qم.C>jtn w#$ Cb>dð7vUh7u#8Jm1'Yapں4]Rm/lradSf/RjYTC]{~7 1Sؓ~(oCՔQ5}Nl/!^9&&*pmdBTX?Vgvlޜғn^pYΉVxK ,U1-ߙdMlhy{Jk-a5zcd=c86D5oO/;㔼x_v,}ao|}5(]@!vӷD#9rϜ "?8%եѷl(|ł|lvbڒa1WiR\P2DPt6Qd5Wܲ<ɐ|5 l 0@? /l5 JuD/O͡Cv|ݽe'a/1^zWc/"5WE=t\$V=N\V  kzfZU4+V7~bw~5X>"ç륶9"Tw|=wܠI"\X9{I?cuZޙ_ ؏x˓HOG wFI[GA7*߄ӻI uyN΂K:ʳ:O\Ѻ޺7M^h0Ǡ&rw\_v.)VMG2PaL1:_;ɜE3~=ɱB{UáGC8nR|Jdi;#+`1F)"a3 PM J v_A#MUJ ƪZJ:rA?3!_CC/:&Al #) NQ JZC#s攟)Ӱ;5<"g0սXA/:}&d?mI|mF<\gY]Bu4MNҾ xź)oυb}"#TDPipY \l8lӠՁQ^d9ѷ#j='!Q߼C̷4ꪸP? f&.j,m t=6EԲ Cfgiy`OoHoe;#\v&,~[H]I(EsyHϘ< =i=bP Ln(صBCbz]tAxڜ#& y`7OF~eJ4GQ.w"J-%zԨ QF}V"F-f"%!zc>O)IR 8uI9&6 JC~b5cO1E*klcHdcl_M= Df ]7Fb}( $z@JTroֺ^l UN,sdVӠS.*'u1 I/Q74+UN:7{y.( U bS% ?P<4eVY=5&?w;DI5- K$*YyfR=Ъ{ $@BHu3#6^t?*If 23Я)-14umF,]^E5csV|T#l>6 (JCS&Hki؍wĵ h !iw]}Թ9|\ؕ?͛rR$A<]eT{LV582X >b1#خ8/kf?oQ*xx nWܽ\,1j]8lztw-M,VPq|2߿Oxfd#^r0683/'x5Iff4^_4+j7ыJ l)6UFVf(v 2VؑոF os=K=oB˗z䝷BA(P3I]P$cŝ@yH ~F> y2\U[*O՜^ѤHæ*1zYd-/|n;5;a<]oJkfn^O꼎5 Y@U(`^s t( _[]4b`9o;BYutb3nXX))~GS:sMMXHX)#Xd4{T3(5NYkQ%.ڍQlVv|#?PM&| d@foK@'낙pԶ&A8($iꝵ}|y:i @?yjDMkcu_j91RJ车(,A\rhS嵹-0'7mŃbbۻLKH5|,y_ф,b6Z[1qtfƖ*49N?g=K*2N ektG*-1M\u%lVH8VǴErW9rlN~'}v^ bgM]R SUeՂq6wcg@ -00$)4&)S覊ܲL*շد NxN^UL,bt ˫ J,PK: ^[,#Sm(]V/H !fyUv{!,yuq_<| d9FxSz|.\5cZ#$ǩjR&+< ]7{G:W!lg݋06!*|*կ=}"fVP⵲Q͉اvE*Bwݤw̲44cur1 >)?@,PcChPy$'4AC&[lNC szKC6żk"Fw5V%,F5R :@Iؾ-,+=C `C?v)KY|ƇmG0SBZ,2D&oЀ?5Y&w^Usq]% p6Z q} dXvp>(:YV>MK40gGG#:ֹ <$jSNbZJrSic{7 Af`/HIs iK?0Ž {!e` ]/L!?3૽wdZ&%IWCS7'$'84fvD[`?{1x.iq[+ 'eqK. ncWm'lf=qZ-'G:H[JbYI<:8u c)-iEE[u"r8v3rË_LJopl-+it8c%DaRQ)OeͦZIQ^e/e z21H*[XATk g}^,6@0>-1۷77҄zmP8+ UQC3fARi2y={D\X|,lu]DT/42F+u\(f@,ɜC7НU.'Zm3&v#:XqmXpdyd0lW1v%i 9Ds "EǕWyuM:CrYaKR干9݉qI~GܝAK*Rogpu@P$d%br.L5ChU'J<^e)BRH_?>j`}8 YM}OgYҖySH\=HV`Ot1X[׹ w l9^@IHn[,̕Fp9gyܰ֞R &RnTO~A˔u8X/4n4̨k<(.w";r(l(xZR#䅜LLB.kW9@pO7@V ] ~hNU!w 5^R?Yd^!r2Z!-/?5vo{IMf+xHN F?.uFvNXmiaD^Cz˘y=#9Ő낞fXaVZ,.0+HĈ|I.XǬa:백g)|3gmkK^Q҂#ή 6T$oBBDߪsV6۽CE\<{m/+|}5jF94yেm*d׽ Ov(}!P2O$m:!ti_Ki |@#0%nC|L+ 7OD"&7_+=V{ Il U IE, oՂͥzo$KO,!BZ ݙPpL&ܼW2 6qHɳFOٟ6 %KzR d\r?d;avZSNйX]gG j\<[l:/9\.XqƳen"{ .[Єiڰ_ ªZwbMFqjK~O'~z`;Ta޾0˴f4ôı>]8,a 9螊IFleNVJIF8ƸA15NgǭqH0 ~ mzw'GB4sQ DĘ&KqyRzƳ5UIʜh (֘gG?PϢHW27fr2./0]KgeP Q4"!A;ǯC`"C$ͻ[F(9 ,bo<ӘhwGG9D[@IGf9Qd*G΀E^?XKsa'm[ƚ *HHt:<?h st/>4]I iphP庁JS2v D]pFi C'14濥e v,zH8ha3켉 /1qf a-F1x197'8&K'bg=kp2OzhᕡEt}^͍D%Dd%6Y3x_Y3:ꉒ293ZfEBlllra#J& o?OaC4},귿ZTrՏHE35`h)bK; ֝ψ m44Hi3 ~3qnN+,4rm{':\߬;_98Ō` SN @GFuKGXJX^X#7鏹@V}`K |e=ց<3V2.q3yW*vi׵8k{]u:Y õX%akAJwydhx3W;3DӈLFy_ [ނBTLiMu0rno_yB|6ؗHf^H X^ ! P<_PXzN$_""QkLL˚:`Jn6Xj)ޣ6c]`̈́g`: 0bS4~A\>RʀI(NF*Wܴ]&i(¬/åYSWh+C&k^x*Qsq gw ZfAy>=uHw`fqoz C`(R"!fɕ/'1å/76tƸJ t|tf֬:1$WLGT]t+YznshK4e/ g7WnI?K 9Jm`To#S[[s;mlwŁU,-YF4$Iw0g$mC)m3.FۛE"⭰v=mM_-!ؔvYM+y!qb>$fKsp(8 SSO[ 4I1,f8{6 _B wT5Uc(Mw~l喽#|ͳ.g{Hndy -mA%.a [ۆ, fȾ>W| صxR7TsNMtIv,/˹1d9ygGygBiSjrƺG}9(ێ{woe}`PlKaӈBd[hj$0E}&%xzL-/CX0;e2t9\xnv5uDaxWOۡ$]o->WEKp!q(}E4IFZҀv}l-BQg+?z{'ī%6,~> pvv(NW$.X*IHe;LHS(νY^w/5?R#$!UAk>!vP+Yڦ@=CG騍U6\gNXOVWˍn*SDv%9_UM Sw^|}Lf2E K*`[aB0i0w,4AI_bGO#g7h>8-1 bf +w!Qҙ>EOJk_ dˡK7XJO3 ÷ьk815 S1o VOdCĮlF9ƒZHc9O!p!qI2#I$T,rI>9gv:o6xP[62dLSl@*8ޔ޸ 8~EՄBmkfobUڟyȷèW+FE5S# ^^|b6>J:{xniy6y׺hzBt^l7Jm=hWojس;1¨dqfc_,A٫ "KpHՂH,—|JoJ")Ӻ:ڬFG=1q)sJ 3li :98Ӡ_Q$FQ]i՚܊ˮ$>O]8ۂ&SU.BHo(եWT@t9C̞񽾼eyT# HBs[GCއf6moO? 04xcG[.FFMj}[΄vSAo o*)) a~cCϳm1juyV~nvWΓ|H"r/7yl oOFtޔ{1 \~h"#_N[;Y^f{{>rD W>F`ZdШ `oءfCI뛝coIhJр?utq_5|WLs\v+|ڷ痐]"jp0z9BzA#c_:H8 RpAF.WPh*t=N!f*MZgA z*?VNs:s]!I~ tS ,$0a&"^̽YJJf} ԬB#Pƚ|I qMn,[[%&ZI lD]v(FuZK`c}gJؠ&xk㶫̄yi 㹇#%&Y>Oǩ}Y6BS{RA۫ЩGmJ_b1Gw a[ &`7!2ek'`<0}jnUXT&6tRT4)5D(kp 2^uY"$2QOݰ }.nXd~x",{Bsk( 9oQ Z/;D_ӼҩHL8l2^2])~ uAuK znwVDW^@HS{nr_ߧ..=n7e)hnE0-`X -eJI lmgO+Rmh=A﵌ mm+Q4 V?q }uȳ<ItFy[ihNg⃨~%lW )c]Qq[~X6휣UTЭ24:a4xeM?UI=t#s'7 ;-TT3J5sI\.(} `8u~fz;\M-o|l ofGh7F팦gF&\ے9)h o9%}|'ګ1X3sBr!q;3K<ޜEB[yaJ`Jy'gjƂ(n۾Q\:/y4FY̫ܜՑ{vUPRf&OI7:;VnرaTA5jIzk迲:(Jذ?COtzL >n`#=I9b%m4"B}¿; B漩*۳rYgS ȣW91Z=5o__j2wmD|*z?Ei;"iieQt_ \'DlԂ7*oa<# U[D-(_ydKa =n0$'̶t3iD'#(B ֘b _Ks_n=#Hvz;ވy|gNZP"g"Z~TjʞDA*%NeIqSP#`\L-^K2w6XL11gZYz=&0 Kv-›[ \EC)%ɇY/ G&2+6a@D\(&8o!2u*NF1_SRuKͺ/BQnQ5ȞW(x}00okW+USR=eE1fG@6`n*=JŜE2"5JIC{ۈ GCȅۚ|KKQm%A h:?V3uchnp3ޚ='}6l9[`Aq*@FI֘ScV3f#i17C+縋 `:dZP WAfؒBNv62hHGO_ԭt2o٪VMđ r>6#$̶40[Ya}pdZG6iXu@u '՞xoTd4g0my _ aI#2`̨!]?IcRg/)0^W!X'o%[J :C^ %9 @^QRl:b[X2#ue!b!k&W6e&gU3z{Q+dTK&$ J *t(IX 5N<-kZVywer5U`㬟vV SkTuw4LZmOݨK0;1+RXqn2~hn~xJ |kh,x~H_va66n-IJ],p kb{VfQ φHhHFf M+TڹJxoJ{r)RBh0aQ/gDD[<')S񟓒$k2r/~;=&?Z:D M^T3!b 'q rOǴJ#F-&KG }|ԔpKe\CZtM&3+9b'SF233Wт[Lm]j6R.ZRg厕RU۹Of5ri0򽂎@>ԹF-\uem'1"Aܜ~{rs2Jg MSX |M4Cw哕G_vDV<RWHNf\!hȽO D#XV5;t<]O#|AMy4XF%'Ji;iP )[i3Y=+*9!bQ`owG&œ+j-ُ桹GB9NJ"ΈqsOU@A:Ku#m)uvֳ 2J;Kh$胡_7U@wuN4 Hs0g~hc8/$/"SV֠[v3/sܽ*|BUvF  f o,D >av WmqRzzjaz-Jԟ6!yh*[(_m[^IcܓS!kx iw×bo釲X\FEP V#Rwgh52v^upWj_6EtutEfXfc)mE;"%Zv֙@53$}`o4207dVQ`T_P=f-;C&i8T /n ]+̏M[@̭ aΙ;:\;V_fDɆK`^=}Us,?Y#akFԡU}91 .ƢEܖ Segd`*m5+L#z1Og2 eJuvc,O[ex4oO):+`2`9=XŇVx7t]7Jm[8Q7Pt}r/tH l?0'R^ydPG%*b pd39TF*?%PĴʿܝe\Aݯ ahh!?/gɍ )Us(Į."ut3XMv:) 5ˊ Ćh xب4pwf7yX$T]8z`5.cm#ܖRO r8Z&>iJxZyD葥@2ZI"/~k u~GDA9XE :gCPxB/?pp̈́:_asj=~mOP R3yǶWb(z myps\Q&Ek5u VjV,4) $ ]:Tb^7΋`qJEMsc:6 =^b9{?̓'HahF εQ{m$nOhunh)T{fsa0 >>%gݲ CG/ .3jL⤭3 Ws[#!1?Gd4@B~wGx_pV^ 2!-pa-z#'[$Bh/`fri%֗,OGfMiߢvf^BAŸE=H(Ѥ E2QXly;P̙xdVˆ_2Zl9T¢ƞо['RaAf๎dl8[; -viS 2Vq؏vluMïĕy%t]A c h>uA?JR Qx$ftF|Y$E! xuLg(JvkD8uݱJvdT?$CIɼI LlTĜ0uȜ+ jvt {RtP(1Zxjdžזk/Ewj#K]=}kli҆~dPP9L1\%ę"~d|-f](o 8N,WHRj3ǂp@ԬXB=2ץr7rY|uw+-@K C S##,B ȫ7E MʑuKT,=R OUxv_xf`,S#HAހ LJ'5cWj﵆%|`tSV0|}X:!ǜ<罣hY`߭孕ٟŢs<] fT5(ޣl{9Ӯv,\()XâjGB%2B? r~i MN%0ye^ wktQj5.;-q:p 9>4&9qܱ>Y_Ekk3fT&Kk(ѓބPȁ'fn ,~A1'Ԩ~NBýi+CYDy7{c-Tnq Ab`<.I [S,ZMXS)s&ɵk y2C';%ST71Lv1ε CM~)>x^т]g6✅ߵ,^?㒖AYH{NfH|Z%KٽZ-6 DA3Dʢ.J OL91$cLP8{y:z|yS֢(*J}%z6;o[ ITUQ%T#^%)Z:qP?fV0hm%xlkCQҤ?z-0Oژ]%r@{"J :>0Prw ǑNJW\Q[fq .%Y_Y@:5UV.bsyr`/AJk^'Ma+ + ~Cnυj);ٜ~4GGhr7L= J>m3mŹi#+Pd6פcrGxXPƀ d]BaYU*Y9o &Hu1s96Icpb2#_KeW%fN}w+\DG.6o|X 0lWz']o˽j zBC%ząM 2mwx'a 4nunB<LjCHB˟O-oKELxz:Z)ckb= ٵ*:İ~j}NA1s@j:h7)Vbi %:gǠ. ^ 4xrVGE,7 ie&ueR*0!͉'leC0poiD.KgC(0Vc"'r iGc ␵_+Ԏc,>@I!\ڈ၎Ř /`LY=x땝Cc=7YT?ץMr~iT`D{^RaϑѠ:*(׽ȬbHIteJ+i)?8yՇ1PہJ gGR  i^Mp3DD+%PoĪmUDT9NYo7%{MԮBB 5uSJEIeR"RmT: +%6JqrATTTm|o5}&LWb٪nSKu D٪70$LO= [ tZ[w-K" oX5d`EtB |Pzc%"06N#Kr]R vZ0(Fo=4xˮ0ًEWDf +mIZ/If*hW*J_[d=:ߌQl R7N㧠X`36rF 5ai=JN+4Hfqr-xO6( UE4_,_iㄎ.8i";˂I oV T HB5.x4Xm'Z }3Y'6sВl2ZMUƉQZpO:>r~4\^^h$Wd]#ǔDZbP( ZGN멸<Oj= M' aGh4%&'fH$-ؔp@e$7 EhI|\l٣NFPq&_vo`)f?7V`WKqg@o2\8)xcb5na{> oCA ` ([xFCtq8Tob}ؑn]JBΪ:>4֤Ӈ4vekoݱVYv&z9fU7yM Fz^u.J췾]p8:w('ܒlXD?6B7 4])>a{,8لYJTb~P h,{fx5gs6Pez2M wN.ǂtPA@-0>-wY=/< 9,?bS7Jf75d/{7тֺ^LiŜZ˫וgf*mzYk 6n8oս2 $/ !O#- 8Oӹ’?R@7DY琢^5e8$OkejDܓ4^%/%*O &N . :3qo p`q7ik 0 +I{V9 pqyqVLY_X̡1>JysŮD1iW6+rQLGCUKןŪTkF=[{\!Rٝ. }ͧCpA-΄9@xRXD.HD?rЏ$!:I^jZԫ80J_o ;\W !,EAKD^mQVxXV%-.`HKM[130}hc )pIU Υ:"d3T1U `DRڑAԑť`M1 {~tbUbL3gOmQhilIߏ)|8WB6BAG7S2:0EIkbR}<5N/s/\%C7[^Y{d1{}ԮUNVv R;.th%)f9 wٓ& 5^ -RRzέFK@-p1ZzOcMj)C.:_7&NyQ Ch~Nd=n2iG9܇FtѨ[L'j HҡR9k'لV=G1WkX)3F(Q,G1Dy ,K<׍y aɉe3C/g*;,|kFTHUx?w]@vr{Joe!=Dm_Yua ^v@ IW$S0޺! IYuPrTgR gvc݂?Z"m}6n.~M}օcC}D5E[w& " OO,ׁ{Q->IjWL\!5 ;$d EAA6 2E|q oX9p0_"6ŽO!9p+uDv9{$}*`!HI㎴*ֻki:L` / Ic Ined.d,OPP`{O 9hn勚j"XRv[`X*`?us'$5ϙ OcNH5rhxC?uRh \x?h.] 02?-AD,-dwT\׶+o&n(*d&jF2 ?’7VEEg'Θe-z*]Eݑtިd;zv c\0hqq ,Ko|jӜDžaN_s$ nmK?v$;xU$r%1BJKDIj~9spA^@WX$7T TTAeG'PWβ#ۏF}5D3$W $Ɯp @?ư0æ WI3_$c+V=h> &5D16 |U1B>1.>y"7AYmWֱ'Ԝ׮0,7-a*l+rgQ4 GT}rUe+T׷i!)LHcK*UNC;>S%W%o|b3EDY#ҵ,ؤBnǬ#@}7..z6tW$ _ 3z oT0u__Q /+AShaW&U,36Dؼ>efNƎ *|-]6#m:"ohQjN4I{8k^sdžC $ȰӰ\"ܯ#n. kcMO;)@`A֌I[0WL|WvlDpHc,&PnjwZUma8ٝ%,+ ĭ}@bXɧetE@#zVNN83T0{0OCX_&R,=_$ϕ4;[ ct̻udHwT¾(7$Q:=8p~ŭZY@ Z|DP8V@'Mh`<\T}5J/+Ƙ"O7 ֳ\p'A*I=vB{4#`D.Vݴ7Aܼ@y4eΡBܯR)ᐄ%c+qȜ\y Ez6JIH+V})^r\84¹'MVܳ_d=2Ѐ˯ *,FN3"1ÙV܂=wV 8U iU)P iJ"#tIշ !Düy]+mLw lGyvbVlc!@;Վ.z0Mp1X:$`SY t,Og;fi0Gl"oKWي)Y-ż˻7Ԡmsܭaҍ.xlS)sR&_ߛ^ ,[%F>?>~S+3ɆtrpK[vnSSpLx5s 1ҟ3)M"(]<*?hrZ!Դ闃C:pz hK)Hk|Z;X[$?(.fl#?~SvD˽U"CctLQ((؁Z:'S' %n6ޝ#ꓱwVԊ9%&6ueN@kR#sD8}0&b&YIDcImXn(s8m}H0p"4CLtz4H#m2U!b-vY O]lՀS9sNgGUl]#ɻ;vҏE1=OD%vq?;GXIDz`+0v XWe`FX=d./ ⟡$?ÊqF2d"&qLa5MR̂|(b́`@Qc띨[EݹB1R[_$niÐM؂!FljZN],WfVZdod%{f!?C[uGm"P؅Nۘ \s$pBVq:xȤ# fQԩL_|ZiɁ)Sb*%zJRLMhY:`>QxO,E-*`4 zBx3 ^ig|Eu\0j]ph֣^h 뙘%+#΅4s`<',o59͋w9]0_fDP8}LʓTJl{T^ہeSJ{<9oNMup Oa~Q(=!yi~<.*7Yxs<*ıQ!Zx\4*s2f!AvY1,rx(Ry~|\ʽ`MkP&S5b/gcd-\; }Ao[m }w=I_\=G S[4,FE_σ8vZe/H)]K",e\a#3ʫ1+:LeuU+uAt^ڪ鱊>f֓ZnNR1C@#]&zLV@-"R-6/~#F}.ѓRn@,`>f{V  Z)>Np4LT]|?r}kzot`.7BʘvI _ƒ%b9;t6%=pVo}2:kNzǮoo9W:bnRJJۋ+%,s>1):5] %J023缯7ؤ76P,|3Rn%=48 MlQpJxlVbO{"Zzqb q.lpth4\^T[vl±0XzYG PKɃͩ**:ʔn9s¢"Δ R(E [=! y?h{qq{I'+Q,_|{r~ koFdr)jO+U4=~(>ң%ơ[m*j ŦGſC`TC0g:oH_Wy?diZ P؇ V%Y*VxT9Qzנ0v2c\LA!"ir@O&~Д#-P?jkZ~{+xp>+38XV;MuCMxѱi#/)c]!w9\"%v!ʮ;^P2u=;c p RM`K?/7R(tŻIH4Z@p-#Ծ5AsEx[MgyH=n}P:a{LI%6DXuL۰ZG fSѽG1%E4qCFc TGFT2oOHΣBߊq~1=Q9-Ȟ1Ac݌8lg uRНD f_ӋpkY?ާǠ p/ڝHwO8?NttVY5L$6 d?˅3sLkЍԘ ;LqX7?3֛S8vN0CM c je8s3 [D_k \JyLf)Wm"cfj;V|wc/`2TQU[4wF_^$ySVWdbl^^{Rő?BICĤ(|.v&T9؂pQ72 y F 3 򸬻"*àcOjY ' 7άF>9KǟDg4?c7P BlܓrI eg\KI>q!栌Bg1L8I @5Eq]P3qc"smpVfѦځȺsm|#ԪL\ZX!yס6$Xt*S ,{3%IѴO("ӼNl!8`×cG|Yjײb>yx$>J!n\]Y ~iZ~D*upرu%+r4Š%&B >><3f3?ΗJQ 6Na,) Q%Ӧ- 쪍dbfL=X:Xddw(ۯo L>&*6?T0w, J͊FF/u j]G5&'8(S-R#« x[ٓf+!s su,SbEUJy ^AwTͣqZh,TH3˾;%.4 }Cz#h ΥLaÎ,1:S KSA)"DAţ-{I A'& ƶ^=Cх5p|9-(eR}2.;9>ޯF̮6N". =LñUC`*NLu.&h3teaqkWMRHN(nqalϻe^zM4[^"u3`dRb)_mQ@HG7zff{S e5#*O6-Dmu{ՏeRF۞xix?P_#Hf@d]VmQ3tawPnkƷk&|k:Cjq8w}Ɏ|kT4#cƶK dɍ6gE}`!ܻklR™&}k(3<HJKUn C-<g&Ģõ "uc.{}\[K -v.F*R-viR9]*Ѯ"[=|J8:6&U;Ͷ`Ӡ7C}-y}/y l.o^¡BNu'GAy2:&|p~:h]SX֋߼ǵFJ\﹥,04DvHJLɯ P锋l:aHQ2a'=h"~1_W |Lid$@kpp\ U}('G</O5As?sH jT f}#t@9ЕQٝhcQ1 aBj;-~`+ڀIk=]ڮD^5,</aA6*QPDP8⊻ث43eT82諹l3px3(f9Vn?|th^"Z:21蕄zCk)$3]r+ì#oIy= ºpڃk{PaZz+S=a^Kq'tU4V$r'YE`T/.&f7peM/q}Ihs1`9I/j_x`'} G J@Tq-{+m4u]cl\b-#%ǚի)Y6rO>,Ap@٫b'4T\} U}Ƶ)ER}x e]GBJ}cvXl&mz*گʠNIWHӃzpNFQ7xȿQJKl( k=azMp#Ͼa;Mk=kZ 04nm磪 *)tEG}[wptyfĐfʿŐɅ_ڨE10'T̽.]0㐵tX,]24=ɗ<ңS%$C;y*D1l4S] (uBЁsy^;= rgL38XP&\##FE^ҫ!:q) YnBzL%A;7{~`p,+L1xφ#>DLn^./q`S:xB3+$Ńig0B}Rꅎo N* 5b:e.OXP2?4AڧV q,Gٳa; {FI%QidX% CZ 4 k&Ӏ~!-FVRoآ34K=Nv_w7=e]%X k)dx4iS k(`\!ԢcbY?}QlHՏ;A qvnE\Wt*jL*\م6/#fHb;H0*$ht_ɽܲ5KFw*]x4GL8c^neDTԯ5 xgu*=֩&"Z?~Z!*OVɩo T^ 1DQQRJfr.3 UcyDl(V M6NL woI1Qv\rrŬ6[=enHSKNlm(SW`h.wɩ/^1bMk=]Ij6JdaǥbMi 8ѡAf)<࠹͎,1jZIJ隇TFBԻ!^B[{t`fXkT~pv.$[μcJ员(l6yi'ReO M !UFі "{%1Ƽi!}}(V2!esx ohas=.Z]Ū2^@kgQf.:X>[ѥ37?X4HsW FW%;ÉTr y5mO#W EGV["4-_kTDaGVID_C=?@,~r lh,y$]=)OȽ$sO*INm>cm)n؊L]0Ksi(A\M;3ԣc''iыs |n*!PC&PPLT[d1%)(77 {17}(*,M5@.ͫE:Tzpe(˜j:K"U0Ey`ada&hldKүҟ0? d)fZ:,.~z ˰dabz#~7{bS4f-`s%w`SVxdYrh="N^3B2-c,Zbs4ieuTƁN"0+9W~7D鮂3HZ PZ ߪTtpᮡWq9לE[B]L+bj[I35"헵FHh-@uybzQGʤi=*v+h-Y~eH:d]3tt9|>aʩc4I$Tq:Tt]}vXqfߗ*R5_e\#&!yx8yE<0IWQAl50O%[\̉=- &Y~nK.H&hw+1|"ly*iۇ OQ@Y$_IAg@jOXRq_KߏVC_)M92؝TATf۞&iwܺ<.ax qjyք?v|:^=0r|LM[DAI&+/5E @YC i$k7e-tR>'÷ Ho_DeO{ iєJi Z此עDSo_vg`0`'& y+([QH]%#:zS[rD!^ Rt CqRͻ`=!lm@E)dj %Enk6“Ӥ;+޵ň_R]=bR -:#mgv.Wp0j1sED>Bs!u9Xib%:8]թ<`x gX_la`FdG6-'>Du$8Z :Ba{a̗ MGΜ8RMO%McMXDݧo6r<-{Z9Ng_s$c~xV7J"A VU{&[>̿FOpְx'#F">6HXUSbtXҨkyQJi`W%햒ҒI[3=d'4 ڊ<۵eYIf}ưa28^k# #ѥ'= $zԱ\8(gW,kGT3RJgco{0)g$aM`?B}랮-0Bx:kxl!w9\:MT)6a1GQ7Op+Vp%8ԩf)O;Bº6x?nNҜ1YpT[>{t ̾ [pt,Sh!tXa P 󦥷B8)x}Wm_)պXFA:;:&)/LIH<Ɍhk1VK ZؠeC銓+?h;8`Ev|ҵ~E6imA7Z4v-6a{Kr@Fa%cvw3P^MAGIV#` MviawcS(@6?NNr>'L kH^'dHٵHoRA%ԮPbDN:¥8&k8 4qw3qRA`mU薭,s@H4P(!}'jg}B/jNi?z`:>xؙ)MJ:z7\FY@`-~HH3BUՓɨo+p~S2 JWΣ^-c.!U{)FӜS0)TsUꪵ pL0&ge-nu= o5s0T~ʙ]jg{JsYw6] O]CIՀO-9 ]\ ynX܂@%+%zZ Z@&If:eY+ 7`F~X;ޕfj-} B|~k4yHAZdA~xU-US u!|zVakPokV}*"D"8h; wdX> (/M\ܵ6X7w|?JUU^NjwB|ϠK%&9Gl~Wgg;0vZKpFZgOq=H&la=qwmYľp={cS1+)B)%ݵ!v .\ACBO|mqaHpw^$e:)lɏ>i#& v,,?j:#K}獫~9j@͝IxxLDGNl|:z0WDz^&ͭrHO{4XR3V8%5QV4I~2EZP!v~`Ts]f7!wYY>6EzZ%ﺤnFUk O\/,zWڒchUpx6h9`+LJiZj m'( ''yF 9!>kY~Gpy%Ws#dDl8CQKȱI `|Ńghq]CIרظiw]̈ͭMw+ <0&<5Yo5DzP'[IrIqIl%~t[|7G C Ti֡R,ӍQ;9.B`-PW-)C-!<5_.2y)"T+E DȲ`Mskx(.-C{AwM9ό žb*/9Pܵ?\$i!=*rMe2Kج'kvAq{`v?!5gduq]']> ⧀2Pg@۞A$۰\702 ((ϾHUTueA 1x5>/׽"3ۑD-j?rt_ F7a>oӏFQ쓸knkW$8n[xDcANLlaZEwϞiaܚu}b˳VZ`sF9֟Oeةk, ߆.e4;&K9Bsub ݴ>UA!"Becَm w CՉޕYӐHI?\\6EuPt!$zLM9ZAܦ{ E z ?qev240GNjx'+cRzCp^N-\]P.3J^5 nXc8j{K҄ uCw)5,\y[_@p˅?.=n0RKPf,^`)*fXH痚&z{׵t+ v*NTW= o R9s@yOYB#$~ $Lw )'I\y|wr&ONL82j >Y$_YgCpvntB`#4:H v;,~PFYÍTe),nq 7 XWwj9(pm'+qxلpq5Rfœ]K|irs:Ж Aq\8'J[ k.5 cvkmWǴ]C)2Vihb'`C ?(`C'Q]6zyp\w@Bd*T˂(# v>M)?cd+04Įc2B*Ƨ'4$奭6eZus(qki}]^L+߼RML4;&h^1WN_? Wi)dc0qZS~lCzQR .7bߟNG!Nhy.cr%5迒[BLΕп)z`ܯǦh/TZ# ދ8sC9b֟dԀ{CZbFx/,%;pB  S H.#yWςbq V"!/I3g`B^wtv>| ɲv,8;b7O>>1G:ܳĠn@` N5.5is"'B|M,G"ZP{fAqLˠu'k9!GM1&Oc]׼ /c) 5Cḏu`V'Ր%%k+7*yGlW4VcXL9}۰u\NTuwWRk&0ZvBGsax9R1rSaQuWսpԥ\3q4QF/9s^U/fUƤM@^CZ>+Bij*㓼呡ʞ&|Ij;5m _TyP="Cb--BuNٱF'"q댼Ϫa: gMgsCB/#@_>:L#{⷇Z[6,D oР9Opq@NZ3НoI[{ǞȍŻ) ) cKIG6%шiܐMPR]75c:+f- <[pJhÐp@l"ᴮ{-^$=juFP`,]: ]m(˺8U&;_( #u4TLllQv)ggu pÆ?rFAv^{0eꓗ\sLK#=xs!&Q7弻.@L4 %e0i'NT4JD!y$Yt#ouƛ ޞ_w 19̖ ^\*2ac646Ps R(9^:5Ƶr|r%\c+j2%v9Ƃ=/RRT>5% X)HESM2}^^Z1шfGauxF౜lxٙE}Y!)х۽n`Wl9n*QVפnXf1UrUç 9'VKۣ wFf?N-H}(:5dJ+o{lvijOp\k :UIt ͔?],7WndzAQ^ZeֱTH8% tr!7t|R_ D\q`*=#ѣa(ן-n'.1RW/7qs,B[~arP+#)tmB5fl1i-SEE˵+7~2-o]NkFΜhN ]G\f9TtS@ PH'KD>w*i{]<붾+Xۊ[g9gԜCIp¢n|dʃ ;&X JznB.XZ} PpcZ$SЪbt]00kWI%:9[PNTe PASߣU~@,b(Qy+[bbƙDQ9g, -W#d7̘@(1?y>Z jqK[GoҚHK RH] 3e?E:!ui$c<Z7"yEtY烛x-'R ڛ 7$DV̍ Iv&l%󖏠Z "VdjO-[1o]6 淯pH*֏3 Y:EyxИw+X玊u$*1?2"sbH_]pՇ hsIֿcΊ^#8V~#AYqMGK я/ͣ덡hQe=C\ 9x =?Yz)u}Eox-0|yOK._0آ7<_ŸM5AO<ه i9X!hs!X_rO8G{CISe2BUvw\6{+[e>2(3QA{sP?C^tΫ;i)l-ORHO0ߺX--wk5 ]{e _2= f&Iy56fa6F1r?ηv0SztDH_  a~>IqF Iܼ#1˭X ȊE-UibQɴZ|?þviU1EXLUI(e]m,O@fN2uI'Kj1 Uh^f|qv~6%.IHk Ǵ e}h$LW&Vjc{Y(Hg`ie,ilTUf.0r㱗иX@_h:&]ڍ&z\.0DPIj%kfJuDኝ 9_ v[1D9Ncԉ0L Eۚ7 F[~,#(Wl|`wtūo!'Dg}uWJogBj⻖#Vѧ{x(%'p]ۤW=c+ν,N'G5Eu FJcU$4Li qNSف,x ?tu 6g'n3kgQn*N|jr wk͝%W2z8o dIh)%N5b#`&fihd(b&, iah Ee=sM%,=8wD=S~Rpczd#DFVb;~3[fJas$n*xr$uÕSee#*ٯQ ~t`-}ȀGwP湲Po;jIoȍ$mM;KEpȃDyQEAuWNCڈeT.@'2tutv c'"Agf?ݯW68.#p?[h`\M$j]JClkfKG(4=00=l;161wvo. ?t` \3c "?3kNnk+GTⰠ*]y>K]B:B40TPxvQqγ-Dp_'HeCYT57L 0`PW`.ED*l1h8S&US;>8t",|wOo]B(>vt=wOLٺN{0 ;ҞdVŐRoJ*\,|z\ӈؼM[de+ZrS;f 'ҋKla;%q-Qՙ``Yj,09"ǏF75Vz|Ya%a8k$aO=3Xpd^4yJE"$ݡrm3%\8Iqsrs#[IbYh:yuD'kTf*g> &f/nEhwྺ;p.c#Qo+t0^HbDmʌah?O: HsƅǒJ ܀ŷ~%/sWXLMJJuM? @F4ZBq_E5`.3hf7.9HnȄ\Y]Gtz_b p-κ%dqyi~ 5w9(m8*%o yU7B: gix9sxy <;3?I&x/->^-C_A-7v36#$a#Eі$[ݟ`OLhQv=:do(MmrОN\<7V(( بIע텮 tw${;*M,\sh&>x c걀_oSgfׂhdRt缻ډ\%WVy(ۆh/AB S ~o&ͨ\z`59]SfE!f]DM f2Y6Op{7{(~H)s],?V\Q$1h/!ڧ=zdGS+4&*W;xU:R-Y1&R4*}AСp!D$;1??R^6?(v)gͥ!lY{ɧL`石'/7HqG w=ŌB3!"ui&SʳcS- x`(ٍӁO"\=6Ǩ 0hhEwL_޻/GȂ~dK5rdzi_Wg,JI7RswŞ9pr&]Z(8&YQn;D<$-k^MC9T_F._Te] 7vRg[^9;{OrXi;(H7P1I6yXfZP͖Q{7h G'P:;ՎvstFm.׃I]`Cɿ=!!5 |zBGGՉ3zd%#Z^&oںlѓئ"y{xej{P bఝ}+|R' ] }p}o vyԄv~0;š0֡I"JQz;)e^ZWp /]@h6D!p&~S> #^#C  T"4M4ٔ1'cLdʀbqMhv3ߝjKpx?ҲJp`[]FT)@A aQo zy*eYcM,)ajዹB/g֓/٣OZё"I)+ShB"DH@:Q/)6h8Z,g.JהpP'B݃A Ct PWՖ GSWnEFPŊi'q' Qn#GG|<ϸ ǎO]iϘ[-Paܲqg$`Vdš. p74IbgOAbA=ȍu&|Q_sW@>K?]gkyϨOZE Ո"-L1Eys͇|. \^xK @qFPnr8mJ>n9iv1ZtPtRkAKp<@_ |Gy(fB2yIKWwZzs3SD|䣼{7 6wQT{pRDx~~O[5Sf\~WHJ IDMXL*8$HZˋTTϐC 4U*+{0ɜ-(g%&vHW^8Y)W9,RJL벞U_1Ph%E0P>Z2JaftCݣ4~BU;9d?z٥dj:OV%AP5-9OtLѵ'ɀY5 oPV1s?3uZݚ: } btߘr1̈|xpYV.LUSX,_>Ƭz }CS'9;y'4c9Jȇ\Fڟ$J2kj }6d́FSrD S:аs3a~Rz|v,h3;o>+oB+mvs0J'%]8`I_R͋,tQ `7UQ#e X<12 l;xvr(?4nN mo&P-] k gE cv_1r-TBUAWU<3&w'ԨýRm޲/`!*DV{ߢLyM#g&B2IX3hxbP.RJb#-5ڬ̢:jX5Zx{:-k"Ͷ4:<5<gA;I,rPxY,,1paU`m+Cv1:m{0nȴ5ٿ{Ǯ* AjC"[ |:J*^nuKQ g$9R`/Fua} L*K (8$RGK\k9wpoCB) Lyǿ }CJlׂYn{:="x;kL =\ɫ8.m\ ȷK'L\R?C#@.'$,A'\~DȑĂ 7D(7O3\4q\MaEmF?~alʙ邙(K~!-R*zbxŸR"F5*Kֲw߇lS44)/4U =˿WI-Xű{3Hf;m2BΨ=I&wHf2= +eۻD &af6}Xj[qz}.]uY1٧|(pM /6bnMbH\Q2]}!Sxrfc3C`1ӏE|Ə);oTWGI3j󗳠f R#()/8)dj6l7£%, 8W#[8?zTט%@Xp0fUvѥxi\ND,Az:HPI:~d0? sOOx>z,G[ƚ#B?2G*k{I%JbПyb1HM}wg>LQ3Ȼ }Z>ƒ&͂{۽+] 2z2sNMԞj&L %| 2>xDy;uSurS&;fԆ$c>'v'Z4-ܶ禇褳YMʡNcCMmGlh &L@pA)+,%nJvnAB_SPv|歍pjG4 ߙ=vj}H,2HEjJ]&_f# k"{)$j0D|D`GdG=#'QE_r5Fﵬb</1BK $7~ʋwm?3B@48?=8;;6A,hGͧe ` |V5.09 .l^Tnh8Zi%>ǛzR &cm8DR2 Dy?0+Jʖba](K%Nؒ#jyYjg:Gs%=Gvl-o`hA,D\2|CB.M$sbno]Ax8oT@`.ty{oRFճ%Dp >R`a\J=L/HS]y@<.g _uAzJ`?ksp՚#ЎD/~fA=X)%9պJۈS^uL5kL3͍? -"+qĮG~ O7ʥ0y< ]5GԸ8퐷hAraTbu b1X' ̢GmcO].Ѹ`פԲױSԈKK[mgasrXmP5 >' ba'+@ i+,Z?" Z8Х]=<>$FQCRqW.Jvr:)Ffێ vA 'A69X#5qA#wI9y.9jj^(O;ZdiR֙5BOsMBKkD<+OYxJH0NbeΑ1N'6 'YfF=,~[B*)po|ZʕfRвŅ(# : Л>vF#g=5Ԑ^=ߨ-zM1+Ou8P m%Jk|)ְdcv-n б6#&h_S67e>AmꎐRk ʁ̺o;B@'<ͺƋ*]jU%=^~89R5^~%ahԮQ-o m1 aɵ*7@r:ɛpW';ՊZ{,QTPgThiJA+kLZeTmXrS p_$EeCf4K&0N,ukfu;WH=']OR^k;7"v\g;M;Ґ H !;Ę~<औ I/}dvc;I12N SȬ͆|3֊&Md"R)]b_z,]2Dc>'>IcduY|#OĔ(9aǣB .O1Slͅ}=EEKb,OO>Ê㳈m7^x|nnqMnL_ٮh-i̤}#\49OJdO/9w!kbkZ5x@  Fzy?u Z鲽5 }iXt6 i^aZUTF}ZZ)[`Ԕe#kRP>(JaV@H #D =2C mr'@f~+- #>oV:'>{Pev"N'Uꢗ;=n8(V|16"g=^D5F& $$(/cin%Jcq_S~% pk'hELx~opM# R.b-ZȿnF"ĬYOׇwb`Iv*Q[9JhΎ4/ l%2^e[+h>@]\RA[<6=O෷IĎf{6Cch4݂09B|#8L|~ߏ"m&C+ &+C%PR7;ltɘH=pTDCj+w) KUph^j/EW]ذC7@). Sjo~he,>W[ÍzJ#]( 1=>\{5J,y$ :pKa6d@m*>hsayL3/"뉲n/Y;|/萡v*3;tg|՞Ia U&Ɋw[la֕9VY6vBHݑ;p|zOcGه =fx]x6@:t մ3(G83=hybFUj34Afi1dMMXX1sc !@YĶzsJC!d1D:X_'/l9yȶ-(r 6v>)ixܙ]CFmG`Y:LM`^򖳣ҦFФݮ bU%rJLMPf$&$}Iؒ/_NĭlV/7J!7 !s1*HqFJDsy=υ֜0[g8IO7+< 92ڬt9iz`;Gm&EUs hГ ң?x1޷ӲWSrck}l9b >KraVO-P}~'f&etxR. v;:"{F^OY (cEs+A뙧mJ {ȑUѤZOmWѾ{f]#†;=f]r%'7*!uo}a;Dg . dspY6.S\V+nb9mwgoxuAߧf ;lo?Vs,=LBG ɽ*rNiăU݄K.m1@+LNM[[UEs-zeyv7)tEb E$lH'vuꄵ}b$['f+Pl5;htٽ#/k*}t^ .E v0Y :7] .Ⱦo|WdD畺+""+<* I͂~0[WqLW=$۴ĝjNѧe?(C^[ 8z@[  ;yVؙ& b;(0͑Ԙ8}9*JjGX䑴lT A?D5+] TM$^̵h@$S΄۔8Dm[p9*b/Ww5"Kz4 l5,Pfr d8fK'o]"|O:GUc0Z"weDoW%`ᗲp;[G%\ "~NnTHtr WnaԐ~PDr\3GABK`fnR +rHEчZJ$Zvē%͑E9j_zrӌ*z3D6?۴rfъKKc"4YV<* V#A ͉FT,j*h΢`L!Vo,bEalZTqJ1fT"9+p~&b49^XvLV NL@&I<}gp,&z%OhE%y.#fxCۆT!3#Š?F +q1R:4@(k$Pi5Kyd;M'vRlU;Dn3cl4xmV`cb;jz2MfB@O,EStsc@* x> .fշwߦ]qh7e 6<^ฌPAm f>Hd S_s@%t^o~ѧ%hHI矰PzomY^zʷIjɢЀU 9L4xZ "̯>.a A'nBλGG=%+_nMEm3j{`mӬjw 6=Hj%R1$U~?}wۻ,dٮf=r-0]T4NIK?i=7%yoSsT!\ JdlP7iS.dEf5E paaoz."q82uR)]X,i3҈Ȃ )[cFu/X}qyZe`]Hut%qWK*GXĜbw~M(W l0On@hECi \齢\,U|Ș\%)oy&!p=dc6HĢ?bIIa1ϫy$*^&90MB7k ~lxfڑsڙ }=}x|`3{{:C̮ 4U To=l'D{]Mz@Q7 35Eo"hɯHE/_'÷tU{19h=@nO[J GE[/x7!+kU|<R&B]J.!$2gPM,teN}B(rQf1߹ Iv~.~%wI0~$ 9p/L Gj\P1Ԧ훑009N@:\KLacwԘXp}45`HHqVzK ?Էkؿ+NP?;Zc<í'ϴ%JFu8ԧY; X;fI(ۼ!d]U(ڃ` ٚ$~+ ?l} F"%!%nXӗ;6tvrELj.݁m@UQ𴻪 c=dnrhJƅ ϻ r0[~z3l졩$U N` g=\}!SWpoߴrn< A%S<XUsr y)Q[5S fRϥu}εS!Y##v$fלr$*Ί8 `|o(+autR;$,Tb<ԥuF2MDKgc6W hPBC݋H̊3hNN g}0(5ﰉr8L.C~q=m<9.Ӈsf fȕ0cp"Fx6##[9MT^Ie^|ş89@ہv@H[8&aDg:-̦8e 56bI"wo|(9%֢yG !S7ŒW((|rO/zJ}ݖ^N듯EkyfFÄߔ A;y2w!ɂ>p޿^43|‡;%@L}I]Q׵71 ]L;8 #308Zk,tp5c@#OzMWEfEy[S񳄁Yz >1/4im.jE2k֑\%/"?E?DrJ6|KBQB,Ά(АxĉSY]H^$dlfB(Z[ɎmxiJe0mHU|@};%js;ra G>Ee8(ڌH^V>η/X-9; Mt#R6}jYyA(^B [W9Aee^g|(:pssԃƒM䚒 A%dį<.#9b?GQycpcO*FJւ2F5m(D> ΀ p f 5z`OaWCƚV''ve&FhMؖjo׉Sx\~dheсE2-tz݃&zK].KXk t](vf[c0&jN~C w~틡kvڲE3v5U[|;aiNW~;mtX?seR!NKaݽslQJq՞!r-<3Z RUw[o|WHK6 >Q8߻DtGjӰ1KCTհٍ1qQxS⿸JN hȥwK&ΐ -x#D%g{)4QJ\a<"?n9X>3 m]rro΢ 6+0M84zPc ԾUWA1L-c/w0OWdD穋Guו=CN R6a!(KBD@6c:JrOdB(~?'1O Pz:IP!] 4޷! 4E" .CM@şOۢb/aN %7ՍC}T\GȪQ< Rj+'xF}RPnޞ%B@qBLph*U[}gmbxt߀rO'&A/i`d536K]e t'bTVr\3?o M*.ȒULHاMS*@&h}KljV7}֤ ϕZAˆ/ޱ:zljlQL'Ԁ,|^OitN_l'9m<ORm !kV;j$7H&cL`uStƖ7K:_MZXCxVBEO`cuQr.ٸ2(~GJG(**0I('Z L1M^fR% )Wȋ4QF@hs-RQ>W'#ꀦUa9իfad!E@(h&eroI)ly?_eB0Ap>mx]&hGe}lCC~?a:)θxFS kҌAsյȿmۣh7p\\(?sv=AZ5+Qf=((yQ ~YRH[[@]8""0')Ȭ#[蔣uDi/&to_o>5?0$< ^ͼ2|[B$|0&EˇY%|&iwhr-.zjTDmxfa1&z嬳םrIBY"o.J0-ޓ ˓=:0ea<(d8 Cr CˌBGMg݄8Ba&U,a/TMrǏXrb:d5Exv?A^Y=|kQ\JD?0nzmSۮ|]_& _`sk`#Ax &5-mJvi,VVVo%'ؖ"e^R*ĝiၡe 6sc2{IOT:veb9 4_X (Kp8+B* IOb+vyɍkŌ0ݸi ~/Ovw v[oJQO"C 2_[={ AY4]z" rDa~~ᷤ|FY/I+yUSX&&|V(jF&ӕV/3BeҎ4"Gmf@:D]^veZ(!e ٰ/'ܟpu"_`]d) H2°#.}8 #PւX[ۚX p!G8+"GW4qrQ^JDIb( h RM]R%#h?-b*Dg_y=>\N$TtՄ3c e!>Y?:Έoj?^`>̘ hS7I]`FOjMBg2: 1a^O9ui25|qnf=A7L|?OSKpEsHTM605!%қla ؔB\ue9Ы{ˠY~MêV*$V۷QkbK lf\Z xbdV%<Σ-hL M+kLd~y 7a'uxl~!@c{uek9(Bn,!>&ay9]ϥk>ǥR;{KU!0 OjLWAD;+˽#/"R0m[h{LZ~a% 9Pnri v0[>"#ěE\Yċ% dM&(wDd:-Q2)X(-ꚳu۝i@4v\;2}J!2 dw RMʄXlVfj9Fc  D%qLM)aІ/9y;zx7 ]ټG t&E6&կtl:|tR N,(}[7 й'P5*&yRϹ}8QA5KHY3'bq DUN%I(չ=OT -u.ulr^V& S 3:X5IhU&\w*޲=I*'5OD$VCtIyQBH}XMdUuF \q𕏜r~(+u_ٸ.gLx-K K>ѳЭ0+ C>ߋ`ˎS/ж zOURX]ZblQ2(\Ql |DxwMƜhzryday?&2o~-[01}SՍӞnPߛߩrۺ& ;\yS ͗JAe}:%A0Eys3mϺ JJC0{HvMj5Pe77(X $p150 9пR,\ăE=fvu8(|b0{B2J\aww("! ķӊ)}2ű茶J`{h3|W&U;rGH:_ԺUvj"[*'!P2߯A/'{y2=s7F Nme6)MEL⧒$3#m8q|FD*Fxbm-H[(0yVOƌzIOf}L<-)RkB'99_Ĉw=6RD1km54ƒ 6:i{B+&.2fU NJ`I/R-2y%\썛Cw%\pϔq5hj7鏯(25Q$i;"ٺ"a8`V 5tv!`L58AVm ΔU괭p_ϕeLzN͎_8j$Ȓ'Q&8|`.m乇 xsH|^Ԑ8U{swl>rU9moyPjނ5b.R*ԇ ]r<T?lߌ!Lޤ%ͥY7;Q@Gm$i gHf36Ѹ)*Jī)ADd_̽AQ<lj}+6po/>k]jZ6Bi3EQjAkfӝ@YW{ *96AX:& tt[$[ L1ӔSkX3S?ƞݒpSQڋb-җk7hi`mP(b3;Qw^8uPLzݺ@%,yO bwYau~W%s7*9Ax<׍%w?ֿ^ 0AV5eEsVISjN8siJjzh6;WI\Nf9րv6ҽ BA{됢:9"]2QL/|j?;)vJ|{QWfPPL1T3ADhE:/SοCK.!爕i#.@W ]X'V$\eG˭jI:$y7;yN~% 4 sިV 2 4gќnBJ/.,%l!4Vg-*2idF#Q\1!T"0궤-B'ef.@u;H3l le Kl1A]QFE~CJ ^J6w 4. ZcNfas vs+(olesҝ'Enζ_ Yo-UTAOXٖBWx{ 7qK*L@޽_sE)LunZpK ]{mF -;bpm$:zE[Ж\-6\8v;uk]~ɂiF@^oAnEa rhOS m袾+Ywu'@tv("pFL .uUW> `j=,'kMsG*+;\AF"aPz/B.@Agg34T&c=Ļ+prna+PЋV';)=F^''WS1 iBQ;Y:lg@sۑtf\>5TG+"xe:b, V/1A# _b+K\0˒M0[%qprx'ʮn l[8v.tȢG ) wRX%պEPaXi¯üaly]O#nWDwז4Q.f'" `!TƦ6g`P aJ_(Ig \4AOV)CG!< w%{l ЩD+vJE"`YDC׮1fzh )r֤pVU+ФpwEn;?,xpT\||yFފ0V6T}V撳qdB>+FK}gLORʢUe%bm&T_nhVvzȈAQfQ'nk׆T)11DG.0J{H`Qfk&sY uT-pcTHk^-e&V~76ٜ29DA8%x2w@soʹ XRZ=%O+sxIwL\Ljw+,BF)HrflTw`JΦ)C?aoy?&ww-if[ŏ*~m~kBkz}Rt@,s͒A/G lӖK\sG5ћ 8fӭa?Z?[cX-?&)F@MuԢiy#K Z^53}TQ`řMX{\9.kI {guBʇ웯I4jcK{,| ^Eb$QxBy IUKH +0s Bؼ<>`t TATQko2>q{h$_v) Pq[xOhEs,iMuxQQk $ .^z)b CELIF34M'Nke=a`/@߄G~`BBR~n.O^q]6aoӯ:ŦVVn3Y;uitm#,*Rn΁3B~UÙs !aBtoV2rTӐCc3F$4G9zpOģ! ҠUp'`O6R%&Ҁ1 H>i%!~~lA4 ,OXʷ:Hnz#ڧ T4UCH*qscrsi~qI Ih`x$v,lX1ԀPLXw:nt) s08uR }x/NrK5z¾R1hfҖ)xGL*hB(}T$;dj{A̝1e $EσL.O,mϝi#9z?Xx*'s̤rR-D3.E,n=$^]=m {T4Xw!T z%P$ dc lKY=ףSDnR'V}N)Q<^bapҰR!q^m3׭wd6QS%_| ;V ;Yy=nB}J>mA;$0ABJiJ$[N}g`̹"a3 r܉x &Uܸ@;SN=~ۡ>:~R:XїYuh۴HK¡Z ;Mv^bjQO*X-|͘0+9.ĺș:.wSvZxψkU`U d>ݫ7–`FkWB̟\X]цoˇuý#Źq܀ѻ&_r8I:%S(A7-k б"qzBFa 2i>-]T6zt6Ɉ]݀K@ Dԗpf3l> ;}DUVY9%X6Je#{s۠r~J_t?}$ ),Q/tnHMLB2`dJImDqK e .C*F{cE~2Q {%dYvIŚM15DfiEȔ9!JMCJ{l'fN imߘJ*T !jJ 0ח*0EvwwDINUc7^&'/,ޕ`l;pwn(߬Zo#D{} Q꣢*b Q"4Lʊ : ۓ_ јr( g~~zҝV.nSau5ɎS;&E P!l8JY+5˷tv*hZ69k_P<8#%@+TmokXXυ=P ~ƹ^6N˂!~,Ab#iįzսWXr4lʹ(UEqb"fƏ/.,kJKsJ cð^1,~ƕ {aZZ2 0̱2|ͥp`&͖_Ӓ7.u ` C Rtό+Ү ȱSyդҡA.OFqgiOGmK$%bK+ I"q//'6&oN.S_ѨCSU^UN(Spc*)aqIXGzU 7s&%%XE_$#,+ϴ8/YBOݹ?(fIͅa /x?x)bJPktOnX^ݖ-_DQ] qX9-:\lԃ:>1F"׶o'V L4}'O\o@7!'p 4^צ9*~D}=ߗil6tE9I~Y.XK'"z$}fr-6B(M/G&59x~cPዑ;Cߏ|3NE?b]kj1*D Mq2kYTǏCl= ^p\p 9D#.4PfUQn626O!C*is]V1SO82oW*-cT36c"ݢx;.hS.^- ,t0~#I ul;AX*YAQx莳Yy}-@cJ!0{T$^G8pxWEN)!MN YSPnqVX <1ȩz_9ƓN@EhǺhX YPh302i-_KFoV9ՄvNbt Y[np~{BW;rgiw@ݸ"& g >g@ZN=s؏ڠ_9,?T.d3L}}e~olG!>\:1d]5ʂ<*pxt6Sbت}^BOʹNNe&]86H{Ip0| &lsaƟpj # 0]@PÖȴgoC>]&Aօ-ǐ=M:9o=i 3;Ĩ z&_AV_6*I$6% XA,RKFl۝_'E&z<&_$sϯZp4 C4K#GY.޴E l3H@Tj)Ec6Loc!3eWӐIO5=Tp |Q3O{~}-?_B/+j1(l}U4KA"ZEyV^ìuqh;۾g'S4}\*ιQWv`zJ=hCcl 7]4ʂyxJ.w_-Bg-:.ɜa V yc,}i$0?W}-ye;ܘ O(^߯N>yeֆtgAUC'zR 5MrC{yApO(dO|&}c?/(\6]y zf=_,Y?:Fx(x kZޙ-”dBK#M)-!MP3ʬHV#fVr-푊}_KYo#4< S!sC@aN^XP$7 AmJq~xJ%h0蘙%os̳aQ0 sÂTCܠbWɫp㩄omDR=[D|чN :{G$H+[,Y…8D:(Ҟ1Bj~<ĺ4lk3? }P[i 2)mxTܽxב;TB&u  DVwv[#@ʐ$ң/ڃbə2ڇFgmZ̚nChnf,HN#Mݦg6bYHG{լX:ˍUqz$Ø& c %ɧB9\pyHeT}kO<7B_EybAlԡDЕ:S:g9C4S "\b .oT\ J Aͭ\n_,bTSJ`7P؂7, KN*N>wf'hckD).U##_t$+s1#PvM Zjw=擯25|W@_{\F4muaRqei܈!BI$N-I}6no+%٩?s{\tllz1!KMc^{vSwm$\ Jh1  !1UYRl2Oh7*h /qk#!?Uh:8HzM{俞8; PǻarXS4ckh8whib&7j>Ȓ[[9 Sv0^SآgxHT4!-ul񂴜"}Ph%*[RUze/vZ~ri,/K2H"!cc5{-f)ݧH bug2oaj;MrQ/'|Q?~zM \OZO5\!χ5pJ9q%D{.@Ls #$рrӒkӹwToE|5^ZҭdZ lJ]2ÜJ\LΆQr-ys 9eR #A29}T(F]r̆Qg(!jDT;[R\kňnS&7zIaSЂB᫔ 4&G҇|я;Sv̀l]&<}j.msy?TWf2Rvtyّ̍a=Z 2XKkw^RBsTd#T-n{- L@c}q<3`6H8<&ɋYS'ZӝCu, :DVޕ~ JEp1M 5+!Ŋ:vWį3F˪m!cfhy^[B]Yњ;!l'|m\¦ҖkbE<:@ztӯ~u@br \ ;0pJxGbK%;)rmCnp,u_~3ZE=4_Rs݅oN,~s("Y䙌^Q[3>eE'2o.JBE[ >w8O"Ø;Mj9̾Ї9zt YD >lHGHM:r>!,R{-79T|vy0 ΈG ݼˎlHvI!BumUFe 2@WHR&99)ͷG+Q 1\1HOnљQ'[xVk!OCxK@䑛loT:8YS\K@<'K0$>bFaӡ0k Gn;~AܾQޑÃqhcSp,@=H> K<msl/n4Cɑ'*9 $]||&}F\gļҮAG~U`cLKp s`ǒ垆1S@$ T)\uJjGӓOKqEÚ }B)wE{i%X Q:jOnsAk{7>jXӖQذhd{ĹNh77W>Ѓ4$ Uoi߳8ZtC 5EJV®mx>N8opܥWR'nD-9d<*J=U<\/6T[-4v<\|BTiyf1e{2ǟ.-U9 نz )Hf$x:cXҼ(pd5R|Y?cO7'3Nz"M5>ƥ5K"wfmj']U%bs)YCC^0uB3ANP5ghlCF&(K֖"KtR[5<'=R9BrG".wzcf;61Qxv'u@Ko{&ac)}jA4×{GumNꖻڊ6k\jjwZaH8ݲ*D=6#{ .Ȧ`s) Z=TC>gDf]9I9Ôՙ1A&-z"D5S7u!1s{U5p@ome7e q'*`ȃuy&gBE(k.P_+b2,NnWSG t1EP\ 9^`Y}䚥h >&.\v|?seD5Y]%c+Q Gn43wn@hp=!a嗧>Mb9dہG ؙ*;IK PLaA=`~p$h܊=kq ğbd| W&4 =!#̆)Xf$pS,~yXڟd޶tzPy$E!%tQ5;8j!@On2+ϷX^0k06?8kܱr/`[ѨURYӻx ̷#WUq>Q=Mha7+؄ǦCP.^| :ET2]ΙFSGVV"|^ c /U +.5n+$w8%'S-h<@atX)M<>=M75Hj쁺ʐq4QRFh1P\. /5">RK aR(kaXO<$v n҅Lvَ ." wH)ع~C@k1,Ct!^~@Wd}a}FvĜl=d8ST=` xٕ-jWEAdrzSżD"sGD&&9ǡB.tskC\ N(cwǒBWr .LE,yJ>xB/0ۋJ@T@$7zJi<8{;89} 5_W6B8bOx2ńqe$3?Pto*un[$O_="1MԫI{+rXC/dvSKvoFr{c10X,NEw +"laIlj6",5'rn·Ui7dXStk \T8 R0`\CᏫ&Ľ (gb {^dm(/γd.jӠl&b Ꮎz pmza44<J\–n虗!Iя~8byk e~Uf\azh:[Ze/(⸧M`+fr:IXmAcF" 6/`Q]ipZsڮO12Hu8={bHK$tNϑ{Օxq%`kꇆ{ӄTߙ3܁wb!*T{rM\g3h#JN_pqv$]Oݐa߰x+ ט! C zm`td?o)fBxZ' #I%`14M :Bei0ڎ- s:=\QA_ ״9\7ǂov=jO}dFzgd}06,iwЙ[J{-{a_vSaa-|ǽp?4]*yɖ[:J|5yt&!±)MF2gVQ)m8srCK+9Kl#sVP|9>2rьb>F Es~oΔg$0./N"LcՈ 0ם9 CZa݂*xDD[&3(H 5 a';9+7#=4i& y<$uט qZ^(D2j")d쮜9⬳s!R:E>،b n_d gs cB'f5_i$G؈)g1F'ݏ=fq`1{T'v ܜJl<8 ,[H\BeNObh`$,~慮Nuh ]ui!5oHŝKe~ȋ~VPciFy kB[>?pDb37{;ZBhDoA/sG\ា^\dRbN)禌(j>\:EK;$B_ [TN㣟,!mL@7Mg|#;$A7i+ #hT 6;reai] z=/pz8\Ws$9Iԅ᱅=z |!4nnfg;? B R)h H|P5O^9[7a 3(ytp.}" <(ԂZ=hmcNh=lEl]o{n; dz<~Olx{%=zRR0ؼ )~G~J틬ul1<h{|5MPk!o8-uLD>CZ T 3C׸}RVKᑁآU&IKWar}S펒mY7&U{JyPUp84?e^n#F\d"r^;b|Y1b`g/KpO߀ByFakk\M<9s$$7ӵ?#~,v!i-PCm)OZ"VEUs'y&m>bxoxf]}Q*j75%F4vb`/&fD ~|~rX^_.]D p\i>xF FBI0CRVW7*O_r$2ģC4Ghb# 6k !)5>J~2O϶w鬆Yap)ȼWY@Ћ!g7ڹ+q޹F#+ad|IT<;%S}\V!Sm42sN1/0f{#!ñ oauaӢ䛿w]/9 ̴U(@w`Apz=b/v^ $#iф {|8JЫ B׾϶,"@M*-S.4+Pv۶Cy%Zz]W0:g,g<7j̈́OiKfT !urҬNp /`AHf8sfX4빅OX@8]Y 1emHK (_>] $)rxbaKJpiH {yamAŀ H-ȃ:Q^k@.3mҌ2o᤬)@<E"YMޏ* qnd?j ᷉w:WWk_kڦ4C2h; 俁3 cbK,Zc.@zo.j<q$!^]ƽt07>V:ӷ٩e$L F}ՋLB[.wCn ?TR@+2|)IPQ3:&` I.x?R*m&鮮_HLN4!Ei;)ӪG!AITp16#PSΉ:RXD H30y}KS'aŪ K'v)Eex0m=EaX(S5-^2D L1#1S}ЩV Nג}ƾ>́pԔctHIz+nTqZspIFi8A͆k{OԱUK*$T I< hXϟ0GJW͐]7 Z?%!qŰl\)1Ɉ(^iFP 2.%7~=w СنE>{jE[P# IL-kd6‘>?+Փm@g"ڦE8#`XtBﮀO3&.QU?<6X/]@'&~9V΢"Zu<&ځd -xsmrh e/IX vG^/ z#XP x? b<_;`q6xKp*%ag M ^Lw\(*h@递aд܆w*7 t z{./Z9]؋1fXlcݽ0 =QSDc[}s X3بNPwE8{ c!8'GFkfT&̄7%<=hK;6Q-H6j`bSF?om̯>G}`bB7 w72?. waD]<5SXL,i%!Odtڏzc^3zL*d~Tnb_NyIJz֪9qcרNH);wd="+d0LOɥhx+zNZ%&>_N]mV?M/At8 uHO"T޺||}vo'oIޝ89Ǐpm\h6•9ހܵrHb5J%[B#XV2Q@vq=YX'_HiO1vJ{œnE7vݪ_|msqVt.F G<2HN>i/d ,YȦ?y@ZfeUW!7zDhAEy)l|,@B .oZ #$ Œh,m̵Íi%pxlN{ |Xr %r=G'e%r1(rf쉌_ZB^F﷜1'ŝ~C/c LaN\"g%Gu[O0%5Eo~O\LIXHKkaBu>NDEslzzꇊ~/qnx}*Z_iIbqcԸA&ܞ"}mEB|f*oܝ9w.J?Úi!m"bnEM]Kr,@HԶ8{R)aq;鏻I]-ϗZL;-W=[%tYx&;;u gacm a+ZCĩIml*t05.*MfBH]0]G6< 3# ȋ>Q8aS H`V=rF$AI#;1fVx;IKuMO$wBpa;~Fh_6}CTՊz}Tˡޮznt2/ݹʴ/#5|R5$.zG NlZA$ݍWA&KiYBEu׿l*h*J98s#΂.^$:&sb)8~!ʩ-2{%ƪ~qyL( /x$-D.WXFV3tT%EO/.9VCj<=shtto#`,G2#k_}әa@EWHN{IDnL&q`+u30^z!K?a#J?]b8JnO̼iCLP~a e;D ! ĂLn0?]'|)O+yMέ(E|@HuY|]<2 + RC{j}soeT.BqWn~m$X\ulR D?ֶuDGd~_evrF4_Q |Q"_ᅗxoJhtgw>s*V|Ag)4'wΗr 0[E|32ZY2hpBB9Eyj NCs62&fomZSK<:?+*PC e/!a"_ D3/ce|j "PMQ(ͦ/12TB*r@z].RUKL{-JfFʑܧ &T[ RX֜}iPu{C7O >V`"!y(nC3U|WG7yEΎcc )$Ouu箩D>4(BL`<(+;?.*˫WwZx Uu wyswD(qQ A;0DPݼm'av+3_%2O kZ=ZL3 eGbKh0C}Wre`μ+W] tK}kJ:8{t5ٗXtriOE. " (f́Iez.w(Z4ʀU!!unPΑqo}"H wGS;$MP/eI[ ՞!FTEDKpg*Ezj+2BY"4t^".>ނ<{S׺X 4wGaB #sneYVSm/l쁘$|UOBE7+֏:zol}qH8!Ӊ Y-*x0_S)stXӭ踓XpZoӘqO B Zg–)"";;MwA@FfL1$s-&^$g?mPa9RgK+l!Oѧ%͕P.>7J"=},ZP<5+iB=3XzGs^$-mw3x֤6#izMqxO/\P'[st}z;M?E7|@ɳV<[),w 0|SNAzWPFsMhoN]'U˳Eud$\St#AcEsHN^T, 2JwkW$7d' x'tzx/-E){z[kLz=cnYz@1#n>wx p8s\hJeVz\:*T@#x |.H$Cr2aY ޶^-8 ek9BI1qn +,$qΧ";!|JCԙja׷{g}A IR=s-FVY{'ig=V&/4 PqogOx Qq!V-T{_:(h`A hwOiKo?l1ݚQu7*ସhkV'5Dj%sӤV !}ѝ9˝ys^妌2.ЊQyCW…1PAykkZ#R ЄUCk"W ez!mw*ҿ}Bi{ʠ@][^9OySi|n6{KT3uN`kgܔ⍓FB؁UGE^jnI]Bqd֢n燘8YY Gk_'HK}L!-ZKJP<5/G=C<*LST}d=xB4zta͐d&zMhDX$⭣bUT3 Y>۔/v]18П!ؘU:}.R'PNxg#vp9Fˈ"nިۘVQv_ M6_"ךYP?M-zJgO}:N=Iwق1oV\ ԗ%/b3H$:<" YlN$#gbGLiRNYy`):)dƀ0.9f ; ྉqi mt{Q T59vHd)q}Yp H)wBP[' z9]}ȵSc(at='V|pk lq0l$#/Wq\s?ip=dG~ I: ILq<{M`u\E$D *Z ,w>s,z`<E\Q ?O4o寍]eAQ|<ԼĚz;BfsCo]~ְ:Oϡꑅ+諭͐'^)#CKG6o&lrnH&AFPw' 0,m/e<ˡ!`]֏ @VmLCNH3+G3z2i &>[U`|\Ui>= lυ]=yCd +kS+r8q??GJ(^,r&tH Xo t/|>Asv©96?GPPhcӫ&[cEVc墼1N[>ttR6G&P#W)Bq-!N:`~|* rTA]X MD3 .zzes\xv-eҞ y7fDBz)%`]RӅķ/lp50~-cSQ + ȱ ԋS>"s$ُ,>Kkɿ")} ˆzHT eҤERT E}2&KvEL("sqFvAIv+55I ،YHOEeJ7(=mGuϻ!i}d&b_qPT%t(py^Hؚ&.A^{1O}ffBMx N)cqkw0dT.iGw 2b"4{L5z_`u%4vCIXNsw\!#-4 K $6:Gk C{Pz<Yg]˲Nø /a`"}K$;+rYp=N!{dPySnT,>?-% B5zmU(iJ/*ؘ!PuOz~e 0P3]diZQ{;uÅ[F/z$_5}q\MFK=R <{Wy2Z: @LOFN,5B ޭBbr UI(^2޸Cu\W$ dI HqeVaY@ʔRtBNj9w2Ϣ\Ĭ G͠_ܪ0ƻL~. &Gń1n0݌qs\%mtxWm 7L?/,$٪8EFU0HJ>#-uğz:j0h᜽򔇼V3jqx^b-*Cc$t'ّ^̩6ӈ" fU3 a Y-(ۤMO|wiOWކf5cGWYLKsT2( ؇x =O\! 'ٻ?eJ٣.uB+ OX!,9(WJ^`.͏?UKDJk?n10Ā2L}aW<< XA.ZMW8em`U K8,b翻':r5肿a{t+L4V." }#•*ɹ]msǸ-Mi1McqKJ%1~!}`lj <#FB-vʩ>|%&\eO92&Y2.&JqEzOϪnS#FXFfCP˃a[whH~eImBc\\Z\RO ..WZ;,nO h!Np8 }ӎcYbPJދaóDnOG5vj9&DbK{ `l6g^$swZr҆y~Z ,~dݵU8+)%cvҲ-s0|'d%+b_F FHacH;v[bfTIDe`J l`>VvXs[Q{}4)x]/`A}zyH|׿ @@у|.uF+]!D2< Ts)ܲZٗJG˦7R/-~C)7#|Ō._A5XH`KlgA24ʌEGQ:f v}-ђ~v1 1],}f>4d1D^S|Ϯ0[ȪWȻ_B]S9}('I&Iע5.;B]S@nݍ7ilyI4%q6Z$#񼤏cJe is&s׍=?z~3|'03X6wnqq4,_h+ ^=FK86TS/3Ƶdm' jfdTW4Qx0+.ԓ&1w:E%;>K{5FLTt ;!PҐǒ!n} >+.vA"to4%SOjن>XG!&Dzttϵx3؄A5 k-. 4|}x8E2Tμ; p-qt5K_'-a}L>_l+V-Y&}#ΛO| ssy| n,,l_d%/:Yɽ|{B ?Lt@B -:#ILOjyOqJ5%r>kAf`zD4cBND1Y!lswuжkt*<)QWgA}ak?0΂0ֲ߁1 =h:J,0-P y=hء}s~xU\son$1hu@]ך̰Ʒd'н 3Vw$@U\WABdt3b@aB De -eAXQqd9K4^-c=Y5(d !Iܮ9KjF݀xOU|QO^&xG)fDZ[4|)ʊM.䄼Q#C^z|-}PN}c mv7ԮGrC\ |;Bع@=6#R͒+3nd^C'hp A)x MܷW@#d9FTopEpG.dNHް7vX9" K /v{Ü {</pUhWf7y@[N*6c>EZ|[JL> ͉.sJG4^6Ry"vCەpIxf+ 7)DEw0ǽn,N~lÍ]F5svb 8J?Cg%NF- NLҎ_#搽Mjh<=j㏇ya~Pꪉ쑣>!=s ݚ>(06+LzrΨtv$u. Z;$wn ˤ텹_!P$#A3\VٯOMOrwtJӳ8AuB܂JeOVDhGV QV&e_*KsJ&Io ta/!U̩ױ/|ǥKT/4URBW2T\v0?`JŇX2m^xyJ1YJvmrJ(U/`_z4; BHiT:8hlx&"DbE| gjC_cm:Q'u;(ZB"6~V 0WGq h{A JƦ޷R]VP6BUz^ HP5Lz [[#^>.mY0m.2NJjlocLE3XV#O^<O31 7f:/BoWiRńTj^Ԕo \0?Fڃ!OMpX"^NrFOl\e?Y{2Wi؝erxA u3grq&J{u 6T~&$5pꜱcpE96 HE T]"[ui ZFWi.-zٝ/JyZrZȪim7/Y*Ǝ؞~BKVywIY:GNv#!le0Hx ~YRwZ^Yw2ݽnBH lgn s5z9\r1g97xv&RfjyQ];~;f22vQɻ:ns? @xc.TC/$4ψ8Mn~ KA4=hwVp}Ӂ{q 7 ©LK{~)Q3͚A4Gb9qK #"7Lݙ7 5*.L K Zs bZYJ]ނv@mK$zkZQ~|s]l|?^U1di`&hn4}^ނ۱1|kwU/ [ $@xueԄjShdQ J:Fjr%'_AEk4 0üEY1L&Յٶ<١%#q6'Ik8-d\ N&50VҼ#$Fu6ulEc[+f~]x e6i=SvLe;^1݁?M+y,s+,ÜaB\蕠痽]1<΁)8A?SkÏ.4%=O[_}Uj{|ZElXIS]+a wv6Q푹e.P !G3ȭ$":U+_̫V:^ q4!u>5O]6 a=Ӧ8ikbb*ݦl4Deԙ]ژ /_WPrÍ?gT; ctԹEV_!EG\~ <2#bZ <7a`;[xXa.a~ MtiӲxtRiyOk*Eg>"Pe;\) 6MtnWz-`8RTk(;-?pν'R{[+47SƄua&N f\I!HA7}:$Ȅ>RSȲ԰X>o% VL͑.Uŵ onM7ԙ;||L$2K Hi^vQf-]CŚƞuӐ;ّ'fGKhfW#IN쭔+΋~[tJ6UĨDͺb7qp)N,5(#7B 2>ӟ3MV/ +u͛:y>: H]bk s47xVt@PtwQk<8GR]vwF LMv0`)ێy+NlmPN*|R׍=Ԓ7=>C(`[at g t]<$vIY%E%#I&x]tn{A A;,8ZT) 4{H*L,V¶v|8@`-gHBzMosaG`n`_8Ua븶 W*w}8%)kZtT6 :8`ٰqm>wJ>3'S2D\*3oNpuw(Iw??·]S)joʉ ,b |w?D-JhMz8C)Ϻ?f6!3rir\+:Id #3s&0ױc\rR(|7(X/+θOVR{t Xw.Gv:SC`z2@0hEYbc0Ʈ`nJrd~F|*E`]噇h[٭PTMV83 w[-_yg.z6m?@J;&tKBCR.l "J /v& w#@3l'H@O"ڥxE6R08ϡp}ddGA,GPnXD;g2Ȕ0|da\ycxA`jl&0mBJ1g(uuRL2)zl WmӕrCy)KѲyMuO|'ҝq=?,KPFK8[jQ8$,:/b0|kY??Ip' ]OjltRF 0EWK̻9l'FkUvGO6A"`礡ʘ}7Z66n [{dfil1f*8#>) E*ElrV(8YZ7:$o GS7_-6xydKh QbfB,qjR20Rh`ч,FVE%xFaԺxެN) i7ڒ` eljfA%mL6 XlF01hZ ')`" \K0G<~Ȇ/P>渴V-r 9Bsу^ejQ;.۽vͿ+C ^N,'CQ*u1@vpƚv% =UkޗnqEű={>:Ё@h4aGg'6=Mur*o]?+gnfifO28=9;}#1U_78汾W~g4-34Cϒ.mGohEn]EEM=5T;icz>Գ~r*Gy R*/$;SX/*Z(x\l%S!>JY=54;!xҌ(NzBOAuџbi(s+4,d<%`%qZbT*iJ"E9k,x[r?s 68asY7j^v!Y}XZꢼi} `n->)tjݽ'=gN@-Pw`z|ρ}E}#5z(k+\dB k4m683݌yjH\n9~QD UJBH;B|POzQu^j,jj3x쓴.[<mm|66q:ߢB鮀8aԂe>{".q+]5P\fg]v_@_`^ qƪY7-c82oq3ˀdb,MKR#Hí'!wyN|fF{kd0YvytE0.WD)w,bli4FK*t 1 `\mҕwґU8*]_\ [ˌasd/پr4y\Lu $HAUPZfs/ID>44CaJ ,nYPl):u)~y ?ϫ) fXj 2^G$W nvp$9N[~'גÂEht(!74Mo#x3f0DOI/yDIH%54j y͸`;y+i4<6DlNJF[n!AW+HGviG.7Hq?vOL%Bfª:u7trj-'ջ}eCPy&|dX'vTHStl=Ϸ;1 %yY,`!H0Ej0iR]R~=cQL#yYG"Ө9k犾ُƷRê-7aQ#w@wNA&2_[h{*ꉋaKe^C${I(j;oP[ u萞eSq,S}n@f\ @8o< YvžOIz:D9~SMu"=@tE*Ɵ ǂ8M1*]CDˮ}H2dc:!8&W{|N=E܏U*J\G]RL)"O̾ -Dmp^՘ټ~G )pF7m"pj}3K~PWeq`=eSQEKR8yB˘N?t5]ttʙ+w= `KȽ3{6utj [V'O՘:f%q'RNc܌gU|o#4pZqRR} #hԍg i`;˰G*l{?.GUFdfˉv`wewUNu<83ڄ-)=WUpg&4JNWt(jmXġH1ZMp $)TЦnZR!X7|};Co7"JoX&ؙ,!C3~Nǯ tr^HRøv~ضxc$em~Qk1U{2W+;gz_ 0BJ쏋C+& [Ŭ\G{ J(H"tCkXې1v HτA0pr5ǃwQjz@rwWQP͐SN Y a v?3&{/0pyiV38!=W"1kYBr4ޠ|HрLsTje1-EIm$/hl2p؋Y[NJ^ŭϠ<^ KIuʯ 6l/!aے˱r(2w6ﭼ,6rwlASZf#ۏ~C1ШXJKniyɐ6C0ng5bg d]PJ(kWh8@Ռws+|-B 6hĞ&k_7A~kgYJ`cRYz$U,{q8;MHS-{!D]1`EN vȧJ kg#goii3Lf A$ V듘+>φn^Ouk$k7,*Z^Aw?Nɤf+N=<*^!(J6Cc@??W8 73Fj"A;Vn~Z8U+u^Z `_^AwK\j=a؏ئ.bĻap`E .lkЏO1tB~#>TWL{h9y?âCt5ۣLw_ L;0ȿZXZ{HXׂۍ`XCsͥ(h?,{![%C;bX?$æM@3qڢP *8MBXHMr IC3b><͘Po  ˕ ;O?גv3\-lD:=V\n@8DdQ0fn @(G{"Scl>ʺ_[6w?O{_Jfcs(*"gxk'/.<_^@TMTUćs;(w'9,݅)4'Km\/S>/Ee zjC_\pHl5LR0^w2)汕W691z*%E!xZ0J `/HS0 X|t7|D}Œ,|Wyz,YCaD6}+8sKPPoc+ VN^'+#O5`W*+ A>hkxnhBO' _ ?Ϲ~G{#ㅈnx'L|5EXvSԨĖXDO~`0x{qZU8)~ja}<-; Ry('[V2@FGIlB6"samU:, #D /SÄIuC`p pP99$O~I ƶ LΘ-~4Lj Vȱ;q9w))4Oi/=ut40x#:_L.8M{䒆\83*R2UoJ珬a'U9ײEgDp(Lꓡl>E%Cw2iGsiEWژ'!lV>$b @Hw/ c^;tg#qisdrqROT3苈48m2e ͔ns)cZd&i3VǾƋ/%?~"{(;Z&[/A'J~.;-:dMhգ^@+ފb|bBna9.(@Wx*b{g $B/P(z2c.04p~Oq^wp?A*geQwṾ; VPNE<-`;IǥBuX`:<>ZX 3NwP?/cv9D'c֥9kw~O+#9W{FYS(ˁUnT)#6nX{`@ NÀm}Sy$ё-UcGts>mGjM#!X "Y&Y^gyn<|)TY貲P }IEn7.dPtGW 㨉/zj^Ś \FHׅx|S\M Maܲ7 ?|BCzQSt`TfEZs &όBTAgnih MQgePM( "89S8N_z0?R%烊)3ggEF6Spf֭\m:{S@iKKֲ2w@!\-둤[Z[yWD4NbKZL>TDIƴېPٷjBhCJNPǞw]};./w:μʤIB`Shn+Ѻ7yeﺀ*|& }P*C,'DvIuM Þo] ju|yD4 0@Su{G9 ȎPr`/N}oG8>^n_0=3ĦHrK1\ټ>Kehwlc̗i(ک`6JmQ~-~,8ZG\]'^-1/0J `)WEs&W ;8`D~,tr`,zGKtoTTL% 4jri zk|ZFӳaDCV:Gԉ9+Ma^rhNȦ~ϵT&gS*'bYu"c-5}P}v󇝟\N;^o}`3)FoL8D^J\ʏAQ׈:[ϨZ J6ZkA]fWAt6_0]'yIy[f1 Y0wy dج ؕ`=!dz+mFLt+էOUW "M)UP=3'b fz,P#pε|9gͦd{vEt VNa%M>c"%`KرF"-tb!'d*hkc`r*I5 :8?_1G ZI?>tא rwP; AAmxPS:iv٪&`ЈbrCHxsHot:嫱X|"-ģ}Q| <."ԾdYp#񔈌‌Lؘ"Fˡ^ ~`('}OnOE x3pfؾ58!(WyLm^&I`P/΁u}Dny+AKL~ j{q NVQ5 лZ8_D+-ythEr<bEݬW<5пCf8 ʽH-m~WlPRDΆ8&?ZQ,:Z:Rzʢ! ECᩪ1vc|r(}2uajD@`R6 q̭~=0Ah#~>%ݖX&Ӿ#nV7ZM/1-]xQ~Ckt쯵2G'CG;OB$E59R͇<P1j=n(TG>[Ug8` 7nZJ'Ik)@n?녨ZŹ?D ox~f"5~iNc+U!^n։q]=q1;(i=e!瞪J78Ց|lkJ X$O@ ^w-e% ̰WmqP85KpBCj@UmsEt{ {^kB;X g\Xvnerv ϖxAG]urgXE;=MXi&p\fUdd0rQwՎ   e'%S,An t:j+Ώ2rFUtD<0m"3#y~E|؉t>t@NgpU.!lyMH̠|S s@DAQJ3d$7PQBKtN~70̏ q?@>F<_MÞkEpv<:K4&)pI VD Vyϱ;PwbK5 >sk/R`s#@񫝳ҸY~ek41Je}v(as>(pU7/T\"%kCu,l|N8FgqYϲlK}U{-o fiRuoe.g6Fqk'nm۬T$T+_|9mCtM1Tag~ӌ<ߛK 6Lbm)˓}ϑ?,>Xݦh/5.;'ߔJ: ܂.yμNˣiLhaQp)F1IwVwg/ qOē݊U>7׌z N0j?)&ÿφ9p+:=ׅs|VAQ; Qһi ?q.V] Jx4+;Kٮۖ|=gUW_!lcBC=٪݌Qe?]C'ξO&3?w97Nx*tȀ 0_+_ <4-+ǜ^PՂQ5$zv_tS:T`TKjVnN0O@x`|VOJ1m AL8Y(Z Pj3 fRCtp7ImBč{VI&?E,%_S^4d2UrtF~6h[}`>_(k+G`/C 6T+\kuP@tAQF!hKdL +)Иdc  &pWxT$ur?m ~߈bWK KG8̮l q.:͕Uײv'E&:Ϡ3Ly_iVG_%)-MlNf)59I qhvL/ n D7S!5 e{; HoW4xvۋ887Z\nʴ)RY*ցe "mSo,{(*9gV  d9m?b&j$a#dymI[zoM 7ݘhyIņa>HwWQ7\i&,sAqYj$ЅI5 R̂1﷘Smd;?H4l,yܯCS>1vL[ȍCdOc׼I' {&myGI({ Ѝg8m/9(:b!8; V}ܢ 4^^0y+̍"|N/Dk؅er7xlN| s _[ɳѭJ__mfqȻз5 fm)F49+~pMZzkѾut"'L(s2Ҟ`( } $ȠB3х1t,t؏p$N`NASX^8\k[It(pw DaL4+T] f!C9@0Gp8cwKZC>"o\+[if#FUZҤh%1ܶց2^<3Ji#7ι?O<ᑏ2!Yj? '<ha?t"0&))(|,Q SAAX B7mf2-]7>*R%&~Mbgs']NDq'%ij~$'HT b`#S;Y22(De"S-"V `%̤*=&)/dF}ih"`ie AĒsZ.5Rm5w*fV/oJ!xL8] es0hѱ3w帟tqiJtqE *W)<+'ptAoژ޾t/>=P#nw빥KPX}qp: b&? _ᔖ Q`AE݌f#7> XZod<ٴ-AXl[0(9|k*շYh'/t=` vؘҳ2LѱhTcUt 0ɕ^TI2kM%GulL:$p W7/6mP$xg#vƕUaC̔RZ('W`K^,WSѣ*Μh_|8:vJ$$=276 ;J7۳YT@|?5Tc/rZ$?]don]L+{J@'I:PG"~zX1{gEXC0=Nooe3Kh"ݐ΁ HD^d M5GzHPOҧ  n<5N# }Hse *%)Kr#2UsocRueWp K@ *mF eN dmRZ鑽eHxQvМ3'fEI w%5=gbf ]7_ɂ{@>goPP`(`I6>G~qF$?2BDbZiz!QM7(r!DKn!!H;1)4cZ{xॲ7msڡ0Ҫ ^+gP׊1om!D,3RC$M(4ɽߤXV+t`7[5Ii㽺j9)Z+:,.eŹC%'ACm&xgvu\GJTvVu,iXm; ]%pk?{;bgPUl;E]Įݍt*iՉjYC}FJpH$*vԆ0嗴7bMK O4﨧8NX)"MpddCp;.K-f8u`3H.v$p#QE+_X]Q/8=TCK6Ч$d']T<,CEEl'x㯕Jެ'HdV+,xnĂCZ./1u|%B|Mf Y!H'x8'uhXg[RW۵](\ۊUN>i텩?0+ͱ\<LfIۼ(Pg(F(۩Kڂ# x6tV"b6 ~npNi[WOGe LMNP#GSO&d&Ge7A9i"mCS^_̀2%IJ1ˇ+G ]cUr %Lg> ؉睺(US<>bu4zGy3`\h,P^旘<^k'rNΝEWCRp Bg(~ 3x*/ɜQYW!g7k^K~G_Jp!.ݥ bS!䧏2zֵfi !e n=bߝEbl[7wE1>qlSz$n- @Ѱ$;H =OBS{F%bh,+e/һ78u榌]Y4j< "toabzJXpDZ]2he,ߔzˀ&C/PU8W.'r?5 Ƥ돛qXM&G觿f,WJ#z>)1mMw$VaB`Lf) 4ll0usnr<uyqܱLҿkK=X0հzwr %~O+B'X$ 74guжqKPFܡH_U_1фl((oEMћN3hQrH '/1Q B An c_2öc!G1|{0VVgMȭy{& ٞ]oPd]^7)b[(!#IJjP(}e J38iDqV.ϩ NE+nuJTkV !%2A\\1E@9eI]ʾ}V%!v+9m{t +Yݰ J&mIv6#Ͷnwˠ(LULBM@ I|M oC!v6BZ9O c4 6jBgdY ˨f+@2_‹&їiSz|\HV`O݃[Y[XtmDC+oS+?ZTWnZ>Wz,aB~.- c6H=כ@>E%Ez޾iN|w0<+#mc|~DWGO ul g9&s!Al\P, am~3}ͺMᣠڪ`4Ȫ}j]#{˜ <ؖDh?,FNRy,A'KBt!x6$NGD1m7-D ؓVTufB;׻ߜJTq.hnTdfHɌ}qvx PF+2w"nClI WStH(2qm? %~ғ ҀsKytL#9׭9'Ic)p85O(߄\G:-40 P>dU&bv8i:8`&sy6g8hnըsyi`NU9A4*1 g9~bay@U}Za280rw=?Phֿ.]ULMe#sZ1KȺ,Ȗ3BT"b 5Yxp]ogCŧﭸ7TϤ96ToC 7_KuŧmVsMp>7#:081&tC8b~%ktȞi(S/wVHj S,̽fڻUaPsL]$uwoonPIE t`}Tdtu 0yu?3Jbkly\uWh"PƄ쏉y@4lD{!hHh]r:hG{eb*NQ89kNbCOS0(8y3 v,/ e_F8ֹJ;J'#vF_0鰻g| }d5"}0S '+ ~¥2]+LPV3p.q*P]݆"JGNrjkĥ^@c=z?ܶ|p /5/_\[~G$ʽU]ȫO1,/ o^S Y"0,*AtnT4VVOfCJPf2Zꮽ/ɿu=zr6XHNKs˓p9bdBB ιZL\t5ӑğYgׂە|R-[ +M4&~5%1vKLMP!r] .E]\E]C7e + >8q)x>(ǐPm TQI sc(T"RN@?N/[J'ࢬBۈlǜ" wPSP#1ʊG%Fݽ)D|W'RGy e}MzIYբػ[q>Zj.~L9q,;X\~wYd/b}_<4qpv@“fd/@b][ZvR7"ɕ"/ܣ%al^lVn5GUY%'ך02-^AC:"KC0ZvtognP MḺp9L)50Rp쭷ɫhrTu`;ZNbڂh) _Bp&`6|`*uctI1ER&CIl|gPC}b"G%yqw̱{[2 gxxKFsӎ5p+%g쑌,Mߋo<^5UCZp |ӥGZ0wb}{'+2 &,h qJ^,RnwW53hSZ o Dxvֈ*:MD> ˞Kssm芁-WmrV$2E\õYeЗShYqMǞq,Դh[,9?/* ":= ^@4mY)"dwSt:9~)'"e"2lQC`r B;>󒎇qM.m豲X5ֆ%9HF,w/el VQȀYCڶ+>6(r#2M>H2ݲxr8{x.Vo P=G*uS)u6;7Dvny uۧ%>FG.+~D k*6n~adp9IF`b?f]66sijj&bm$ 9BGTA@00ս0<5ҰؖSh 0V c a 䢓ڤ,/"+8a>Fst^߹+P?}أL^gُ`$XdK4+7c7IN x)԰NK'HiIҷ '*CJ?亜7,& ?7'H]`'_$z9؆C`&t0㪇D{T%) Ip &D8eT" $bvU`Xm1)⸰"S-B8͈c'wN@x^Yѹ1 bz֓ >OgbElکȂ{ce.]gbyGg'4]UxYq1x;_o;]I?1uz% }'-Z$;l!@cJ~bإI+Sz}͌ ]>'&)6 6LV51M#:/ٽW&l[5/v)RN@4t{sN ]/C7&p7+3,񃛃*b_d2Z^a}rk.= `q"51.l,u-/_hLc;nMVm;Q{fʔ,uߣ]?I8Zg4Fk|,~f~" FrM0nqIђmtGI۫ʣә` ,>:_t^zZ"ZnjY*)Wa-u0U&9_ܶ[1Y݌`(:/ /b^ϑX*#ޖ)D( q73[l^WgBv Prr+]hAW5:sFN)D: DK<2 ,\,ׯ'M dY6JM>RR)~YӺ] tV0+5I%LEҜK.0oGRsLPǘ ]x4g >(`68NNSnl} )G\"0wv1@|(\&fbdWWZ+09vw&3`d ɞW'w>Ӡa;שMMև+޸劝>FQ @U:Ύ'˶`3L۟.@Bf֠;wJR uPk /d?aŠw%Nv_@㟛Jps6:-YipR*TCF*ʝP+T02w^fuPSt 5\L0{!E\YA5^/e>,G/rd1hVA9qk?xXn@IryΌW@J CMaB[}̄4k{#x*:Rmyjd?}W$dQidހSz"o :9g %:md8X"b讧Թ,?S_`T[Qi[#b7%@Lv!]ƩhY]3"+SE)X\jÿK`, gX{KDte2ɼqMrNҪ1n2AAI u?c ZWd N2*kmb{~@#Cn|6bk/ܒ#.]=iڸ,5.J,9ek4p͔e` k8"lAfFrKjq(&Xk뫸7o"= +r*B gQ %|Ysr'f^rÜgմ0PuJj8ƦJuDynvRT$ BDoal<hW Np[s1chM23[,Gwz56m)1%h%QNtT@EF^F"i>*2?ճCi5 0*]RsN[ &s8Dzqfj܃Se<# ਘ57f~NE&u0~NUJ*}8ukppdX&"k2a4Go s)NE>r/sXK1dh+y#E5%}G隸cĩ>o92?{F9Yry$sst`Ӧ:p#9qY`ss6K,'a`FbN@w)V14t ktԑ^S+,4E>5x$?t8n0GV OhP(hRHg\hoe,{aٱ(ZԎbH`ҋ* K-א?}hr.}'w:Nln3-+B`:x *~dOrV!ҳ*#^F[ꉠV+p2 IȘϗu}k6$ЛT'SSlJ6ϚgXk:/o5dtK 3_4f>آ@SG7׸&`gOtbjbqv,|6-2\\*!qwC0g>x̯;P9qorwK[7k";CَcF>EMuW/E=D s_N5b,NJUUHyY*D6 iͮ/"'^A"q_ LMkO\x+(?DްRe?ђ#n²ᐏ0*,XΒڴya@-dWI|uy~[_{rDWdb=#I7$DRΏ`zsUf3ުrQ&WAKbCXꦌfbLtÕ :.9}YL^duEJ>1»ZdgFdhHGK:AEpJ޺#9.kCFT[D Pd?8P.R.ZMUN`d K!oQ>?;Je\FW3c94I)5t$3phc  3K$_Zfg,'J>&I\G]@>}'t&9tiE@xc:\+Mhs!"jMG:P6YȠQe>#QBY`\faà''$(it],͐5 `g02w91j|k񤁁 ax g@fA.:`UjKρuPZ~?6EJhۖED>Sn\ş6>yW F(~sJ V_P5GIRԿKN'8cEFb*Z%yqx#T(^КGڌ[$wL@w#g.Gt6]u Eg˟N! ܱN[>)[lr?L`%f6#_wT$""L@4Y 噼 GG2T%1MrI* N=D|@n 9ɂ6#F/(FTfhܯKɉL3oW9r?sQ׶_MYt)jត100o7 )jcdUgpJ^E)}#2/gl Umd%4@j}ӯ2.} q0? _`%5 xc0ÂbmTLK,mtj=fI|M$acVh AOR4KȤbf8QeRr)Iy痠㳻 WsOfĵr܏/{.X7T>{XLp1LG,6K3cM|{%6= mcc!&Nۜ&.Yxd9?\oѺN|r{GbS٠%9f6: nc8qi x=W<ٓ#8U %xإi2n6BJ53LD&8&뽌 Yokpzs!q rlf$ 2K`'W]ӛ%*rɍ*"NtJL.m0MT#xz+p qvm! ]#!YL';D1~muגxX,y.d:.u jRȣbg"nYtf`#{hfBʵ9 5dvA5J1LܫڐDND{kw:DDc,½617SV;p܌H&VfꠠTβ #a"zZ.]ۈT.RrAĀw( -?YIQޗG[7>SfdE5+Cδk45 [@ݷ6]/ ,5@z (4!sr^!c=)`*k GS׍bP{V [Pxa{x{h3$ è9TmLe#ТǛC)/6ĎFl߼WhZXfiF(ަ`4Ȼo~e37,106 ۖٛvH.Xݺ o4R[ B RwL}~}9k#_g=|CJ,h1ٸ4KƦir(a;{~g' 6,XtC8Dޝ]ENɟ$N ;p5h|3piȔpxܲ'aa=Gԉߤ̌+9-%x3`+o_SS@UIttL Lwk$'fԁwWφbAFw9-CDBή<$Hr!={|N JqB8"-hLXc5grqo<o2 @8*BLa/| _a"Z'!HƮ"]ڞ\~01MPEM"%L!/Iq7LwtVryT_BF"2DNd?D~{G/;mdZ4܆@UoGI [s/MRf9һ9>x3p4H pFy1| $1ކ-B}|)Tt\y Va!BAԩcK7cύ]$k{>ŗ[G.A3̺+/7 9aBm PyZT!X&SPemiX̛,O+ ip_jLPt-XF${ j}y)̖mDF M";8o&Wc(~!Ș:'UUm7>)D7달CH:Fp*,1mG.׎YpM=[0>T\ɌGL"i1ŪD 4ζŠd7<*t,2ЦɃr3Xv8(E\Q{i-$$:KAM5Ԯx3B~YVX&bgr%H-+|Pe#7@PeFkӲWx*5 }3fdWW5RUˋ"H&ջ2RIWO 0 r[>ig "&" PMƐZ2L;63M?qڍ!Q704`rR# {ȚD1J "{@r-ޒPTYkd:PoXB֏eЧj]@W%V@ҭ^n:e3.M -Iѷs~y0%ku8KI1d/Vuhq]*jj:Ň8(M%¹K %g#gƢKh%Vg[a~6}7)-۸ZTQR>eHu;g`WqCe_΃S7" !?Ji΄.|4M$wi_/7J5qYI#tȇD:{-#Ix?cmQ$3=)dcN.`"w; ({kE/`5Zk4Pa9݈FCMDM54/G/ώwHF  ڷM#B/{:" a0:źsRJD0^|aAvcS!lgFFgPWs}R刞+{ LD~@@gTU{d{aVc9ON9,687u\^NX-g!y_CA咰ឲ<8HYκ14m 9I-6 z>ٌxO4.pna\a' _ tu^b?Ɨߦp}m7Io/|Mg/wEb_IJZzy,S-~*͉:Du#tNZ`OW}hrgS":3t`g_$Mk1e^wzQ{Kz@Ls]fax:C\ u'JD1#7W0Л9(лRzշ=31t$c6\g }xg8+ѽ-[yC~eǗG:^j tg Ex+pcP问ъ,t8ZR䟹2(5tZ0AYӝ3Z/) i$s>M DΫo^eh{tfN"t%ffs@77 Y6sGCU߮~%tCp?nBd Dx*l/vI6?cQ:q #~_w [Rm@pTDD.qOrb!33)~&@="4n Vcvjxi[RZ|n&˸/ ݄[]lπ:v MLƑ7ű~0|QJ"n1l Eiy,nu;Ɗ7&lCHg%6ZiGE8DVIh= 9<{t=c3t`H[98plu^.f 0M!"ړސ3g(pTjĆ1:L r4D"lI,,CL_5f"/oCΪAg=WnS<7z|#<t@DF{{"V^PT+(UxaV4Fs*X2O< KGu {h͚$!ln .-QU;^J/RGGlM(37  HfpFB{_ZWXLr@u6t vٴ_1YG'\O!bys:@ABy9į/CtRO0W 5:\. j .NnR$oCݐ4גgVexDo,_byv$gl=[Ƃߝl۵>rb=!IM[VX0Fė)i^5΂}s5c뱧[]&+`VP/1/pAyAz^Zz΃X2v>$1rM"x0X|[g s3 qҺАԏ;޹y"d.`k\]Ois>k\( A*FkI类vjz:\r jhV9::~ p+XPp}d`Nd-QvQH\gA1/vÓ'Rx i^ /$3r`$2+3VEs{g4QIV&[$2"]ኌ9öopSY|I=%!B8d՜:L49 Gx )-58U*ΛlWb cQxP< Ҵ7-|DPs_ܘ5uXQ:5mHmP6"SP3o ϶n}ުڷțzRn~VnGN$l]}~y3۶;V>htk0a:6eؒ;DBHo <`#\֩AyœOE@yJ6r%800fhؘ0G.`@i*.32S*an2%PNbQ!qֺ]; KI$,lqD) DY;О9"ZIp-_^,-&K[`LbPxtsPɁ/@xUR^, s͘Ь<:#a怀1)@$ ^^Jօ$3` \gN wu9kCОs6=(XZ!$"XpNo~mgVhrF^"?(ZXLa B5W~,wUR-Gq”ه" P$1ly0-W@>%J$~k|+(#L0$TŔf+_:ͥ&QEsC6C;WZYZ# [ rvP8(.IMu&(a0m*]F0 (Q YPBsYRt07%?,%4^ gl ]sfض)O5޴7n8Iٽdza%Z8|~A}N@ ȇx|"gkɸy8tIocS<* $@ݜP+'IWT6,~i Azcbnro 3#kb]A UG&3,%9 ,Ψy? :ҚD`Da6 L&|+Y*V l2E{8V$ M İ"65'8т[bndfY]RjA%K9:mITt5i@'Mq ^B Mc;*ݑZIu ]2 $%]%'ᦒʘ `hOza)X$)o/-Ho]5 Fw#E4}Ee<*%2=k|Actlȵw[0(x6Ð?#J obݙ =I%h 2IUÿH^pC+qHTuvkkS`Z>υ9,e/T-WP/D _Mg0WHNZE/jꐥ.HKԘ S! [q d'p9JVj BTCPr?\7I{dⷳX6t،gT3ޫbe* |Jb{pNd4F9Sɜ7"e&z8L97me?2 7TfRнŽU|q$sJ~kLn {lv$TǓn/n'Mt+>.,= &W!Er`̧C]$^dw_ 'k\)vxfu`ChX,l0bJW"E5XĜMbb>fUߥ"ZAƟ u9\3u'`+  $p6L#؃o[ ]Dt]=Ƿ,P4;l ߃z\kK5@YRhlpjɧpG Z_\1 I. S*'8t=`Br P4:҇fk3jӣN_g_\h;RҌҦt++KQF^~hIhò\x˂4fΰ_S>MաJ4hh:x -!56דx ȓ?"N"9 `Td&q%8wzXȱOMn96onjcڐio[t3tV$5-;YNZyg\?x7AivE"Da?_bi;DL/+y 1$D8t<XyN?*3<~Ljj)0GL Wn|!=F}Aka&b]#'Y<0S&OuEӮx G)]: x-Q1TwIN_T* ''\4n0pJh4Lo!FmrOE˝?="3:®u}k#!hw \ȥ_>hS; T}{!ẅ́췳܍[w;/ضV /BϺtYN8݄=~<*ĉz $ ӾQ)c+.ީ9fF <,P{I XX(t4hF/.Q$v$x*G\>aDžb NMw9*_L dgwAO+ ;`<Ҕy^.<:OQ5SUi6 B9>& I ؄MIȤ-R1(]sq_5$Mk#cW9G]tKDA^})Ț?G NSE~oZokL: #v ?pJ^~a\O(J4_y(*i^RM֋ּB`I2Ó}NE.x"rѽx~k a?X]4rBAJ ,T7tA3!uL 1޺Y IZ0I^rZρnZs7XZ߁!V1t8: rh* 2庒p6[W'ʅ0G-~LcsNf$$iW[uwxE3ATraW?ulBBG Xfũ uo :C*y@}H<݅9\HHA3Qѐ0(`wp$c'Km#Aas8Q2Gͤ1M$Wo PJx^LCAKș#fw\9 #~Yw*#V1RjAƠ 6'3GpV. JXb &$c"Pi_aolO`ͩ?vNfQ)M1)h!H4y}&ʭH媪 ; ]zsգON#`́Y[[FI&/)Aa[<؎-R[M1Iq) [d5Dҍ53±KzsH:n8OBz)7XnrBݐ _sn~y&G-c gW'QKLcaQzZ8g,_Hɼw{5 ?KlUgOyI]Sl1"h› do)8^!/>SK ypVd1t[۵<\Hcl[_꺾cX:v6q\QZAnE9[ vbbHϛq%(l\,cBԔ cT|L."*K2ս HMaOÑu;g'r14O/wv}L˳lŨ!\@''VX. .f} h;8+Ae ̰H1RwӘchpJFbؐ;AT_X!=2wg.DVQ56Kޠ V/R26De#sE [ 1:)!Mg\!)ŲussRp6ѶV1"[hf[ V֔$-IY{ ~~)+|C~9ժ r^<H_|r?g6q 2\2J$y H@h-%hjt55)<3'AgEHW.=@8a%`-+:\AqV;Z|KuwK-5~HMMko s򙦌.a8gR>8%Hnȍ͆WuX>'MUP-]b@b,7i-Ώ,pްP_R9#&zϚ 6CΫ mK3 T r] ;kŢGvt'n"O0ц&厾iWqJȊH\&:ؼSm5Ý;@Uư4/XQ%e᪞3Z=um,evT7^zXsѷsN]7ߓcE]N$KџTf1& @c"Ro~0HQFj6x7Qxd mo(R爖|D]lG!:΄ 6fozhӻ7<08<;F*Ln2XgKrEڵSKf7 vY`A։/4 "j #7nB}-PG%vYky$/YHncx=+ - 13 *%埳3,Ȉ 2?-h6EJ@{Z8=a?G@+V2|)fUI,X4t-#U|II#ԃ\Q,TkLt҅ o 8ފxDpI`_o (vʅ{'HUJN}(]ڪ I:aF>T4$S^jχC2bPҎ%B&bqۺ#ئԴo4kLI1#-BFakZ̸Sےi/36C?h;^hĩTb\ pL/B OTg8X\Z{OYÅ1M}ҬH`s&w#A@ob⚭(YG?r8TDaq4`c, +q%yG_woM (syIFFw`1)Ս, kBSWM[lKJQ 3x=Ҭ&pgXff]cAzVѻ︆ɐ+ϻ32'aBoop#?vSAC8lO餿ݒ fE{@02QQ%s2eiYf2l"x?w]{dضh~VeaN>isEʎռY>GXjŊ5Av Qؑ@.-#wq13 DE4_8tsnB\ eHi8&?Dj|?DJtMRR_E7=pH sxzLvC@!!UR=Y1UFN(9Zx{B"FwHX7鮐,5 G%MW#7J$1dn+UmgQnHQa"e`o csrYI-/YQ_,4@tz6H*#:+mӦw*9iDAajnki|Dz-fAd4>PfnrX{SW9 J"")AdH=4D#8糛"SXs#]@3>dܬs@ѳ7-Ta uBH,xVF.ј31;;獫DYaPKbg>wg i/FVgQ+V;w V#B-`W ϚBOw, ^Ej%]F\'n Eշq81e|m%})9˭jHPg$kkR&kAֿ{㛓p :˞^e@/A>F9ޟαsN@Ԍ4`8c. 3&7g(wm^ 1M2vxRtՑ.fE%{t mc1!g>- 3Bmn,C^o#vΝgvO }`̯YSn)FGQj6U}s]CFއlV  ,.jV\W X0Hb&%taId$"Bjh[?+?E (񭅢[פ+w8'.wrF>Xd+Z$w]?ݵLcB6߶;%?'i&#Z/ zZIN0XӰAxrGZLe{.%`m Nd9|!+vCc(<U [Àhffd*Z,N`y!g)c˩eRϙPe'Q $fix iB<x C9=3K,v>>5PHtj&[W%srvIbobJ6gNjd.wNl#B|c{&1{#AӒqvX w&pŊ ~bXaH]=e{7A̰g\NDU!Ӓod9ʧYIyg{u c2c&-L@IC0S7vQDYϴh%}@ᲁp_E|E`b^HԆv LK<+I[eSMf@T̯}fREU3!O=WGrTPTن-'y4! ~;M$7;C[U@ݱg~"^ xJaO#gk?dZ=ٜ:z[+gm"A޲P}@ /~ڍ-M!?ILRf:v`'(sXnu,%5Z4b!jIw!z) d*FO=oMR|ȓnAU3 c8BO}[*_$N&>}\q1^ն&Ù GQ$g}n +^& -E9! /o+#sB5!|p`sZZq!c쪯P6;wW^3bW t )%+QGpq,dLLaY Pd\S>&< ^M D&z.8o'0kyJecvoޡ<=_]I<RTyhMO$nW{@G; .4\bu,.[T4 ^_ 唡_3h m?AugSp"~ 3(iVFe/&aSSYQQ,9Gp Ml4{ ݠfȝ̕QUSz5O>@38ĮpV-+ڪLNbmY,VF1mᴰ;SG5nO.}#2|&8 `6Tu@5yPꣶ tU gDEޟ&щ^]=]jhB47oD(ҮϠ?('o@bu*]k>/JMm.)mB yM:}=ց;@k~i V|A('UQsw-dg<Ō'IOG6r`\B'*#&>b1խI'-7_O]pm2NwPRU"ZqЁ-//Ћ+>ov1x/g[5|V_ٔX IoГ? 93TRЎ"0\?HFv⪥L%RVˋ9 )Ez`̮~Gi);h`#?<ғ \@4 E^`fFхYc?a^#Ic@ˍ@Nvhֶ|㧸;vՙHp70ۮ2VK|;hE~fZ+ք {R"|{C‘HOuN*psl-Qpҁa 9f0㟚O{q Tjֽpx 9J@ + II|?pKF^W+N}~COWf*&?:S]iz[a֏xkܮ3fOe\oG˾1EbY'4YC΁S:a\AyEcuq~kogՊ,tՓS̋!gԮo|__aʱ2}ێ8e(_MOst1S}<є=櫥tsȹO_V.*,Z=k G8` m#~"^&{ jDO!e;|IMxjN2$As_ԙkK7dwmrμL4 %>O$Z\H U<0LhKz3MV܇x(tŘfB'vv:fuBo0.Mp팬U(0jhD~+F(Hܹe-LALj涪\I\ SD iAPn=Gh W,YmW;M2^ߊShV]\겈<0hfhmE MA曕JhV:/ÎV){qcD"eYȖd.EU9B+se2z Ou+!(9Ԩ6lDuӈC@ؼ!̈!157rvwH5-ʦruH[?H$klڲ$Fmdžv3G \I~n7NɎY6ƬىLe kPLMC&p9!ra#=cNp [%|xv3 luܝz/PB.ï?!IR`u+eGA&; iM?Ҧ8'Ss U+j ΓMMʣ\yO »Ҳ/iN1nm .>T}P5 Jä0T9R=]k)4)Rn z+=rkչWZ5S>Bt02F_o;$YmzW(D~goy/w)'Jf&cSHhVl c_"KŒ^iX醶D6$:;hzC8t *![ױ8tXQ*HACIʶf?ZW"a z}aI,Q0{=t"?wUZHڅ h+iVP+{`/R2RB,Q\ M;4:#=X(Aèa:C8u-U_X+ NX&q#rTZ_%S؜̜IJ]|5AL;>[Q9jEe5Ֆǒb9(Eț!z)GCn}U; &Ƕ Kv_P)BUqCVYD} t­z^I*6Ŏn?bJEΌӿIcty6i2 NC"Trias(j#V*t!'Ą$`8z A`~Ȧ;#s d#MQ͍XpҏĞJOq.9Q0QV{$ g3y"*2Ц O hK"/7HD#y%u²;ecLl4`*4zRXڙ h|x~-9"^{vɅ綟S4ԺT@$a+*!tFcYb+fc}._4vRKjԂLnWt|M-wU+> "͚9.~vS{"DJ,xAQǩ3ą'^$ϬUS:n,έ2#Y6!_9\e!r`n[? /!SQKM8,Q"c;8^#ȲȽS MbZ3yvnw^Á5TXր^[ fb锛$ьK2P=<LA\k:/1˭X$6Ql]b*Tj¼ۆ}RTnqWMEŶ%>ThMMn;ȍ(>ܵ2_-CO= U ?ٻ&֩fq GDGc# si%wE܋P 9щ^FP6|ipE4K0>5Oؠ*I9}Ok䰻K1WOOZVz0Fdke v`$RG͊+ys灝Ç|hT,r=̹sfV%_'OwȔY"4!$AB#A^줍OjQZՇIwl2m%_)JO Ɓh˘1'ג{yA_Xp/.Y\XRO.2'T>oR`NKE"Q*g,d%/(xc0C@X.(;S>imK0tOȥ]Ʌ߂֫Ma VD_Rm7Փ! Q,/hDIHiFeɿ७՜b6>}-e^0Fy>iȢaQaj; kGqgif;vHS?ߔ u="-̕Ea- & AxZ'Kg`Ѧ<ۓuF= >QW.$;C 7W \OTӝNyuu6Lӳ/?GŢ+fv/G~30($uV'ayjUU#P 1`O*닦5\d , RJhyj/D{+s_3PRn 0wv t*~]2M'EʗN S.u&lxwcHy&rVlw(cNH]8^q0kDH҂hs?~4(NKJ@k#5بW:s56׾q+(7W%){k ^k}Q_uo'Oaeq`W vS`Οqy+{h׸Lˊ6ALo%6]70%fc1ȊڗEZvP{@Ō2.Y[q4hg1*Ep 2»H/iOSNq/(G恋a8:Wn&$ [ryGHyjA]d94[ pI>s2$URӍX6%]scȐzL4%⽀OSWkd)E.p|t7gܤ"(7 ?cQy)$qHǬ[ćF^Ye/4$Ne `KAu˞S5OxHxÌ>*☕ވJ@@Q2FR|%)[== IC=FzOQ27'10n{[tCK)kA2q3o<-7`@ hƘ:jA؁~c;u3:9q*Mw s|H.O`)|%R~d2>߹^[>QnvZq˷\eOOj8G!NF~mCjP2tCgĈ^tlceǴES)CunzsZ|Oe9j Y`N|%)*oT=N(=-n|fHh)=jݯЬҞLE*$6?A5(x)JGyY55+E9.Xb9Dcͦ>Dǹ,-\y^c:&8I4ř#>80נֻݺE {&) ۛ> 1&28D ';VjB›&e֠+m 3uqE>$ZW˲&/l07˚U7ji”%Ŷ YABOo?}dH]|RkE84;,Kq*پ+h '͛13ɛG W}5޽ ^Y(BFƳV}} &[ƃ_9Ƨ\[ͽh~~/֊m7BU,Y@f6:]l@efLp~|e *ёI!TpXvGZEd=0@P_uugƘU~V8fc1^ssfW^,hTdУXK(@ט5U44c0f"5#N1>$nohR۪~zs* +pM,/|X~F fX *}z_qj}Y%9̼b@ws{Pb;/'HڒtX/YaHg&LLsc F6r.^E*FNX9c;\RJqk7ȓ-g9jB>%kf`A~RKA/N%XgF"SFŸKYt~l`rB%l>kuA@X@SlL+KLr#E1 HyDN"hs38vʨ.A !?T0>2z`$|!N%pb6Nwí޺|%(ljթNM)0z7JL#(.hRlXAt!}roY2On/:wpJrac SOu/kqk;'PRuT{o~\ygy<ȭ_bPM{SiV!`i+}ʖ!N98YfZA?3GH'&r7,P٬~v4jU(3S0~ԌNpVR'|Wduh_r)4 O")ɰS4͞pKg.zXj|۬=.Z21 P^$'@R"jcZ7ɿ)nnjW9n |1%x1?.}u4wLyR#,ƦL9Ñ>^k9aX:XIv@˜p^>ǍbD-GB:lDOZtOϗLlLf M;OkDc85L4 pV0 p[7Ʊ{)R.6[rLY|Ckc!#kt|ڳ8+ݮ#ڕ{i < Z\.at)ƃx/+m8@0:-Û/i;S$cߡؒ/~-Q5֗"}wARsx0k119U^u[)OlPBp"=7{u͏5tqr(#L TX?NfeeqJbPKZ&#1C[E~_SYI{80UqL ͇*^(~gM5ruSًmkYAK`Jz'FiG*4<s$w^^p y09ME=K;W]#4E0==8tVY>%0nEg]a GI%*}YH` mUr'u<'e3G[?YK_-^1Zu8/Sz $,fX߱Myo_"DNM*8wtQyTo8VDG]/HJ]Z%OsT?rFG){XZ'$<<Ӳv/q!x݁XN*ZXxkb"80OŒDK_),1xI)W8ؕK)S/h9HV-cuݠo[}ɲu- 'PA  ' "9&pu8@P345fLj";eƈ3oELպm7n:x5 ,c€+V#=e6]^q*$ 17Wp%Ppm1^+Xv\8%)l`6F)6s^Nz5(ZhR +CCO \)Xgu'`ke̢Cvl?._4g8ʁy;r%!nџs[[1q3l_Joӑgo2NwI]5ȭL%5<bEQ ]E4,U{Tn5߱'oeຘ.Juvwݓ,vLPۄW&ߙ37CWO.2zt,/A "N5G-w^녴حD4pm>Eq"p)S VW{n +&`.͝I,lWcmnONT;ʱPz֜O_[ϲǃ®\Ò*裞^+@bqȇzzJ沁BQixIF-5\Ô$VlV*z}YxWvBD'!;Ž-j⇐Q{ D 2G2[2|x+{1Uu1"Um\3W8 MbfsLBq`\v^tjM!,~3;מ8xj]W_Uꈐ 1zB&d=z 1xCk2dLmj{Оt>wK !>[{;.7IGrޛ=1[D+vaY գ֑G+-RuX^=oSS523ˤmP[eeY0o!؊d:VӃ. Q{\A?:~4CM X3 l*8bq+5x劫D-$zb4(&Afp5gXG¤wL1 4[TIvT 9wSN:2:$-f:?iG4pqDZl3Lt~B+_`+.m|6gQI,dXIRFwt6 vWtAmy\/ z%c:wdUKT6I|6_jw6I%zo>u(V5&qfr1鰙W>sGOh0CCd}ߜjp۬ix0}0HØ'[Uk*Iw +v1®M]/,hÞaUk?ʪӟI@읅Hą7+i½n|AHL<>*7+z?pɳ=C:/? u‘v:`T8"ՍP "^/8H۩jne!u3JYsmج[@N֘)kk8_ TC8@`ek뮠0>u8N(KCV1()Nu>@iկ7,>1{-# ˼\6NIS>֫PiJ\^>wv퐰Fɡn|NgW݄i>̺H+F(G~9$قϩF"c[zE/%h?ޟvTop)ғy ;} dɨMjϙ1t萚nΟW#ڙ$?؀igV#^!L5=0\9uNo8qÝ8MȉSG(af7̮dF!˥0 0k=ya}J_I'SJ]gT3H}QlO7CRM ::ѫU(x."{0AZn5\*.䇊MryC`V6e<@h^!7s箑΋r#M5|wq~ȳf۔Ź"sS6q Zkk 10rx Gpwӗ@x>.2}!>d~9B`*Y, ; 3D~&לɵHk@xϤA ]|ߋ?̑ xg 4G%3#FP=u%\ΘIȘFVi;,sʺR$ C))心Ze׀>zdtjwVMʳ&OI>(M'uExvDN,vXc+*svִh[;9leY2A13*Sw_ rJy#ON?&̷Sf3~AqT<*]zZ%Χ:hI*G#GԲMU7˛k Z-tE04xsZ cI(s>.Z*˖Z$fߊcV;{R=}Jz~/%֠=FG,IB\w]ۖ*,=1hFLk~hQʲ&SdZ X}dyE?}Xg^FC5 )q.:$I\Z󓿄uA!2wf;7*8phF2{jڜɅ$[z5&}Z2fn>7 j.hͬ5rQ[UsHS0R b#8F#OX1w`cA"+ֳ-B1ϿBEZy!`R'56!TYlAu5ēG=Bmv|F"R6y 4p/..>8tNUsK%J|(/WY1SmHR?^-wc_0Ӻbj˷7Z^ p>m@:n'_%AqBN R#<o8a: Įn Q%ƭsހѽ.w;i .  u'N[2ixqXpr{ˁ|b'9xۧ 4)QWi/%z/^6gś|@a7N&fǵR( t.N"Qj!W+ ⾉T /V~:O-PF$V`IeGK$ޯZwHa=?#8zޥQۤJ' ->E jz/^Z '5~%͂-'5G`e "QQȰhd.F辿n}n B &Spls` {x4՞s*Mѿq8f]ʇ˴em,cY:-0s˺4ȼI(lZoy|FG e 0xl:-:玨jwh,.ԗi-V@لM0%> 8<0e\{I˴|X^xkm A`8Ja-XB{{ sxg_ NAÔ[KbRvH|l-UQ 4[Gy$yt+r;_^Nm7.9VaQ5A[o<0^`aj/[䅀SM*o ş n"y?Ôu2'*ZNIw#>pYۓ6q"'NZ D [WJ 8@)(I[%maTrL\(;ymQ49uvu:Wb4_2@'-S  JC쩝ZJ6((~P{gӲn\92 )C\aaoB~ )'wo)ޮvފ%ʈ׺ҍ$8N,5(_\lആ*P5B_Rw8)_\(:`62%` u<,kiM_z\9\Q |ѩ5(BF Šo!,%i$ HzISZG{-*6wNѧkA%@7|I.O[No 2ýL&(w2`㒍uAK #K-yfE+l~Q;Q _1ИYtqԍkfoE}_`}'lskmوYNBkYgQКLYG9Vd5yD6Nf`ߐ-?h~`N%u,"$aqrpmK40TVxlva/DWacQ!{^=<[)hp;ܰj3v|Y}{ihcȉy&4Bp&&v6!$EoFȭg))ܪJ,(c7i㻧ATK嵩=.hu"s=Oib#gVԪ~ \AC14v>;ݏx@ז>FA'znlF8gOo~zsZ~`ҙDI-1 ԍG2SEc&{u*a-5' sjp V&[7߮z-o!4%YW@+[z 0J>ABw V^8I :m`Ti֏>l"9ݢN2G:,3+mm,ĘXԀiWЀO[Ѡ^8zR>[0,tMv߲=mX7Eeڳ~R聲XIIď>lll=؍os(GK<؅)c<]%`=x M2̾_?Z죭T 4S; >w 01tNdo$hĠRBK6f+da<^rYD8 A|a:a4VdUGCln_BEΜ@${e9[G<36{yI}ϳFSҧ4TxpZtOdR~12Uѽ w O*k/W 9tKp = |4H"JHn,OCe1ؿa."(?I"]6w~X[~qꦹ3&Ovr٦ƅ~{e?c WBb Te9QUjKfRAcU&|f$>sn](ظ,"k2Rnnb9Z@i_= 㦋s]NBSJAUu|Ҁb^F[(^)[Uߙ}ia6.E1FJp:bP2FHqҫE1U6Cm"˪[#n\N{j鹔E<.k?2w.2-p4#]r @zJ ,Ol hv]U<3^z}*o t`Y!~}dۦ׸K L܌ p=$|jY|`R$|۪ a)IXGq҈D4 3'gEQ|{s_6C;kLbz5vQ7k-deqo#o.PH4VJ)丧4[E`|gwgoYnH:ーQDgPIaJmgL}IQԽ,R oYP+zHLzʫ N.r|1? { ѕ&\ZUlT O &# q׫3e]0%Q#;P(^XK$)ef;+.A#ST1ncgH*4u |ѵ$1#GdJWk@"Ox_V+6fbFuHEى.5o`Wx#Rm@i5}O{^\~m"蝔^"s.l3DHXzx}#?*Y6`Ӈŭq|R[>jj ;) ({(һ(/ "ޣ&b:]I'h"ty4ӍV0Ked'-+YB䝏}6@LDh]ڿ Nҟl5y$rOێ:}\)뭴ɀ@=V|J`Wb3\TS7>GTh ǟ(AWBcEkOW>p4+9T’S[Xޗk^f\r;UwCVAu1,xagh'ρx5b?X^TҼ;X? [zs1.y<.#)$S%dn"zJA!Cp&Khkgu(g<13?wlę*֮#Ek3ſR!Ngk h?*n"8#%;R}SJ4,ۀ=#'] 0T$rv̇3=%"C!E^EuP;?{$JJ8?0:l;I(ݛ|h bHbl4 :D(EIDi+BX-@A1ŁAR8daa-,uM@gK ԪkG8$QQgZe";Wn `[`c1. 5jd6)Ǫ;ƀaOX<9嚉7BA;}?C{ͳU㱄6M7.uPpR r_ǥWn`^&D ooYmj\֍…0җ҅3/g-W-(IY<HsÉ", QE2ж0>{?V`e5 }Hy܂ c{q8.?b"ɭSMOt|?!5h8ESKꆜQT 0` !r9-vO>cvDb+TOK`F Z)A X r$ ^>mαddQjsXdMOuYtkϬ/m/k@?)94FM )BCro%z "Jէp'* 7HF+8 7A'#hZQRu_2d+#+bڀ%y;њɫ}2LA[̙r%Zg7deo0iXcFc  cT} E҂O_.#ӱ}\$ LZMޱ+$aBd_ hJMY)<5~HjqM>V{,%@ ( r:ME =4yXbf P|-ed#?~aq'dN\J)`2*g]4>,J}T^2{Uzj7X9v C&ےy֡Sn S ǫSk:3M?MPh;YeAasVQ{Uf \Ȫ3=5C Sq7yd“MeaoxcÛCKR2ʹ4Н6z>xm xx!Jbc2S=+9qF!}k%çdQcԡo4:V@&P湪LTR!ԋqhMY>F52Oᎉ[k>\\>D2\*`Xja^gf W>-Ap8сIy>8e"dg<__3=݊A[Lr? jG^s&2nJ 3Z2ɂ&^ (G{!6<$k?qxx7ƅaJ5)/`G6l73|?i' (<r<>Kc{Wv~vA7Z'^1#Bgx+#L$>/>DaSZn.`ix{E=c47:켩{u.L*_l RM75}"yuP_&8mDx4lsfQ!j-: g/sj'u׌qn|e?^YOi=7zlH{ E}هz<<4톇*H&~^𧵈i,S2jdBxV?$Hz熊&h@Z@בK\49=QRD$%r ku&}Uٸ;-q( .1qttXFL1 ږD^`R鉇_CơQx9*U7q9S6HX\1E2[|@tISAђ#N*Lxs׎Lj_˕Zʶ^ lJ7/?7`SɆN@: h4cqʋ3ݲP9?e[ѹ:xԫEthfel͛pw"XKm70Xj#,)njỔ1/ȭ]UX;& T~&Syrsge=Ѷxn '+*L]gn#H[A$0ڝkKiR^aNmHް7i%N^.& Ӧ8KF[Ea_HJ}*{6{YYY@N3PsmԔP#-@0FJ-.Z|^ xUgx,J҄_%`]/XI±k(_VӺ lk,^]e86&(9&8۟ Nd|.ZY# 9>lU|~.y]G5!Fot9 zVd‚Hk(^׊뗰`\fEC-1@g^a-z7yV~֡eY3y#$3N42Ž|jLY<_o=`#$SJ7afA܊ ڽD55t͟DXaɗD*q夥 ^@ tz`xfpK-SeMswj~A?P6խA:n#+.gG5:4rc6(l&cX fZnMɆY^SN!lɭp4q;DAzSѥ g!VsSc&V1F87; ' [M:z`/\VD!f/aD,E\s/lPª 0JmJi:(⏵dK  3 Bq/L"G@Z>\HyشqcrJp8V#Pb$d/Jp`1 dAD5ԦZ\漅$-#J\.bq b9F2G?;Y6ST zM>XŢ0~ ;9Ycd! P \}-zz{4c(4rcRKO+F UmpNk 4e(β5b|a[M]܈j 2\UzvژuUF]Ӏua9BwȞ2wMXvy7Z4+/AS|WAS  luփ~;u6TNčZ r!׻F9Ve\WaR, |Pt^ru"qиKe1\˰lW_x`%tWS&&w*xӲ\}L 8#ChBپvr+T*.8Ȝr/,rQ&wV\(p>H Z3FGbl~3 |Pe7Z,LLӗ(E6El5 HVR743rXo7fowO@9;l\'Z12ӃB&6=Oh%0270hrd^F]b&`YN.'ZT֚tv<'uig)8`L$Dlo ]ӎ oǃnblvw_E qxkC8Ris?`"u`v~,d Z祧*Ѫb =ib%=2;sgZG(BxOF2xQlvX`n=E5-~ci>q ֊E[-rس*;$n([,k.o4JkЪNfk]PVcGu)qM!+p j x ma > (Xjd%rG#0/审\HƱ?$J=ek+~t=$8 ?/*r,aG[P K$~20{E٪E:S ?k& N8U~ 5ofIFI+iapwLO2zytg!o~_r '6 ,x?+Rn۽b[ uPTm>ca""Ԡ7IX  +Tmť vmtؠq- ELK,M rLtTgg%{ ?4jcٌyzl oo 8 Uy.ڥ*vDu$CND 4eJ_'1MxZ؆ Ri![Cq![i0 Aݴ/LVSbi 5 =ݜ+f}UQ-A%ynK/w N4\}5 E`ɃY&c]U(92D7]=dau/PCGduؤ7I-T`dBaXt sh˹R3T<᪜*xm!޽ܭdHP%ZSs,O-0 wHjX =\dIaVxLMJ\:V*؉lFһgG4$༇vcT0Uk$>=w0§uR)WUl]Kt)|nC eaE46tD\\`(ySh :d׾vNMO }-Ĭbd۞&z͡V#bV'p'!u9ܱbY1,=#| dPмz_l>z:JAT0GE63WJ@pAX<$5LЛl[׎tYqEx@;y# :'^u:xEu7@Q=8,[v9^/ {*G6glr"P{^#~FZ#H?7g7YRch\]WC;jJhwÏ[t4܏pWҥN(iV CqwmtBv~P3jN32_نzyP=m4ZĪĴ="[+>kahm$2eяQ:v{ܕe{i H(_NmӫJ#5FB ˹5JZ2@&}<pL1}loN diN2S-ec@!dǼ*Fm,-lR'PH:8iokrL3R`'cGDa@].}d(vato'rl¾x:"v'sBɉ,.fRh~x@ym$ۡ^6kHpR2c'͹$YU`3N5Ɲf*4m\Њ?eƣLH턃#B5.r9{y[)[""XhibpÐ^HA$\x*qIw i_zӝa7nBhi,# 蟰WMary/'Qі]&M+ $^gN)vx3mvnop!KݹiǥAYKr,ʦJThD)P⏋9 &!قGJ4\1m^];g6PRAr|>gk\"u0k>UA"EE^)aBr7s6a0[#IW%1ѭqw{B5-}c9Æ_F/zy[[f"4ވEMb1zCC|+L~^F0M)OȇyyI'\?0O$d9ݚPd E!.{ JԴ>դxE+KX+1gCi ',>.yp 1q.Ddc dWRRzFp 'Ecm%Y7^+3Y2&cx+_W곆,P-ibX}xeb.I=04-S[huۇe%Gnt-b ަ)3ԗrxIʻA]tZa]m[+%̘Ձ|-f0N~+'Z(3 #\ %J;BŐ N[!7/VAE002ao"]77C0)vX[IPGKdA5 t7$=6oY0* C ޕfEK=T- B4"IU3 CH,%Uކ6H>/ajimxHY{H5f=01n#XNRSՆ"ʞ "QRqbc!Ցs0pYntdHo?"";Ǿ>nσ0QIAǑ=x;;[MF 'gS6L. g*ez %w&  a1K q]} kÏ XGz&8P.stԜ . Q}a1_o_A:톸ǜ6&-lor2@`26O&9eVa4lb4n˔b2\EahYES;iIo8ڲqaKd)T"-S ;S{0v&n&ao4%nP)H!?N·a~(_plm7ܧ  igTiZ=LlYq)"#T$Kv?B]вH|V9CS'׏ ;#JWaQpju-sXL,u:( p+@Q3lN-6hO?~00:@M^r{8\l͝hWǙ݁x' T 7YH 5/@#Dl$Oh։ve> uvoICFOVe , vNU=M- ,+>d0FR޿u0ʥ@~˧jd`b.2.T Y8â-bEˮO@>H? eS?Q%qxgζ2=Bŭt-DNQm/͂ooR6D,йrˀ5zp l&8#Eǰ}ϳf 1Lg'L0o|{lFdi?)(a~c0t!?Pw`vo @{{Py*  7;QQ{SQ!_^ʎbƇBN/P bCxWB A4[R(Say]bt( ɳ$ÇȘ-dG_' eЄ3ϓWz!MA.SYf8nZrVX`- 2uqFA[q#Rv>U.e!伵[g|ZR~a|)Pw7` ÉMow'0[FCKq/1so9D=l 6M=SS;>UDIIB"]8^PCʁE_ щڠaUM8m3]`b}XLg]^|vh nXQX>:l! "/ paF=RMJk .$,Fu5bo}Y6 SzK ThTS5+ʣep@^*ŕW9pT,g*q;Y E#4[0dzEҔ*!%-j2ONy,gGP-47MW8̻nQẂ5Y!{*u* zTu?W>՞C80|CNLo^1I\J$ /W!zq9/a@Z\Q!źM;*Bh bEÈM<ķ>Xڒwz;ȏ fVFnI^uY{,i;ѳif#3BM6g_km&tm"WaP,T+^~[H Ә%xkcrb"4hn>}>FSMT@>eVc+*JcJ6ꜝmsL4&T~S݂O;ڠx (G|8MǝeTĴU_Om @JzQH-`Ri@C?zQ9 By*G,4qEhuA>YXǼtBD?E3bo|ij#ոsq5;FxSor5ݹVhFXb8;B OP~_u=1o$C\^Ӡ)kri7F `] $fL=;k=kݯ3FSqAۃTk 9מft׉wXaP z!)Alz}2Ȣ6I}B^SĎ MK_ d:vY*ΰsB '8[oSkjGLC(tV.20kM?F L[RѸK9~q9/Ϝpf9P(DW+ڧfpJ|6BE'.uX^@8Gd4ըF@k5yNrF tNb [;T( _τ͏.DT~UHuS3Q^u(G)MN+Д8=NU9WkIC><:yj;|E t_[>`,gPN}?;gZQ8*\'c̄QhKTT+<oGLݞkW>|ѓRqFz`YiWLel~K L2,_ G?=js -2wV|M&0i̲Qnuk]hix bc J!V|nB,g1FŚeW%=re:Z Ch[%8c"L.0ÏМVx%aꇒW\arm-7)BMOo(2FE<7"1#gbLwO9sN*Gbtw cz^*'^Io]+D8˭-%k-Mr&C[j_D(n 0'#bۺPL`ҿ 'k/N~ gL|i '-`@`f1LbzެטJ*gP,] $ hftwP ց6nker B'MI ҐaqZF#"ՠtY ,BA90kl]XNzNQ0)7qzZk,cQE tNCIҼ7Y5awDV{Z&kEʽ<᷅ A.i5  .CMlvޤS*u}䱷Gy.T|Ω(" JKRW7 M_đN ۍ!vaU02T-307FJͭ [g/ xd-ݹT&AgAǃd&ZYUT@+l.60xp\S q=Ӌ+km6=g&qr¢\`ag2glȡ+hUUePϡG)G4"3ڄrޔe?nfZU[j6Y2<9Hl L ֏ FS9 e=^2`z_ޅÞIx(<کW_WRi`Q= We$ PXZU AY`CFm'jh4ePQ~;-CAk3M\xQy?1` 5YsJw!tꪁ|g2TSG3Wda<>,hMoŘSIcd]b3t7SmR1&Oi7*"ScM«v1ő^="* -?s'%6/@:ғβ_|ݦҘR-5__S=m^ꩫh!0:+n UKmb?>CT=Q,1{K *J-@iCtmDFNbGb xAO$ģl`~ʂj7>$ǹAW܍_u*DWO9 GԬaŋb‚(ZX_ݹ7/JsGM:E9x|H1wTϹ⁽#,{r.v+kG c&l;Q(H7?!OŅ[ s:EQ/PХ'U]%[1*w:F&&|&\׵tI´hKPhFZ'zk^Mb|LosQ%_X02Q[ҥVu~-QFv@jt!;;fBeG^ڏߑ)kS7B6}v K(- דǐE"ZޔY`hPKkE&,RiY72;G;z+zT'sY=86r ؽgB2PҞS-fh,l\$=ˌK{(7RJ_e6?ʯ 2{:r4Ge$~>8+f<c F"Bf;nmM$ DHԑD^IGKB!R KӶ՜^ our*x /ڭNv)E3Na2k9 <׌' LV`./u}0cwS%cǍZ6!|v. #dOa<_`Xƥ؇nOVU= x`G~!~F*wu"DyyܒY@v20Rۤ-6oo$/ ,}|X %}C%T sb$)~ֶJGBK^o! t@㎿* ?~Wxva%t1&I!SM(Ҋw !S!RR/?~(\(b,yDh5ߥV4zKM#p5۲hluD:?Ўw#\P{v N@Hm/06+1mh%0/ݓ8i4UuDBT岓`$7x߄CVh4El:4=1]j]ոwܛ}KuH~bM΋LY2*oQAcC0)6Ћn Av>Qs~G^Ո3x_,Ibs8[bD G'8МzrU&ACiW8|I4ZbMHS1ޱa$ 2F9^{R,=6RC9kQnM gJu_!a")ot񱜘vp f`arզzfyՀ7$(B "\I\ЪzjPK7ߙSh&Piљ} q%,p2RWu)sU^ E&mT ub;0 .\zjCQLdu93J'x4 X/X,̇$#षۥט<ѣ'g4M[Fu,Kpc!aoۂ|uV^SqLUIqWxׄowcI1>2^ *a]~Bm-JZPǪR}ʌ}iTbj 똑2;D:|\Kf`j /A%81v!Ö(e& (p9jS4uZ}|Π}v|U &; Lʪ޴@?`2VKYh`|SwI^KtU[޹X%]Cp`T4ަRs;5{f\BBRît KY4`ȵ݈cf/ˆ$VQnz%`6?J{advGK^v*/B IpIJ"*܏ZPC$Ա168/w6 '`C{cvf i:U駑@8`&W4zMsxoϺVps:[u[C nE?ƴtZw)L ;sY=LpW<"ԘJc+=c55yߖ˄)G|=.[9A#kM'whFQ9\Y*ҝdwr)cs/7Sq"әmU8@6RbGp{%ZoNĂXS_=B' Aúݞ&965j+!N^SD2{ni>_LJw]zѬ[ýÀ`eCNty8@Opv bx9{߸v)9#(;5l R}]}K\̤𙰭\^ *ҁ%qh+=hr4F6>x#ޯͫ~[aTdlPCO~Z GʭtkT"+Jb4xKWnç5_P|$ Ȩm>/I2i@N~MrF: ^Q+ݻ| !"sJN4 Mթi1 T\bӁHm_@+هFŀq2#bw##Ht+g72Xsa8QלWthyqrF$R{fKU)Ud/rCc+N|Kʾ4}mdGxGX:Z}vTsf΀}<ztJtO}MKLY p:krsR#AF$+jBǩEI_`N<$?|`H26C0C :Yxt9m2,ԲzI+T` ʐ$<:02͒8܂M[%V "7Y4cwl-D R4y8u~{mCކkɾc| ԒgK& `$i-c4 Wj uj9 +D? f| \ 8L@+Tc\iԙfist#4JRoR\RCUzܧ22y7sڳh8s^q9Y6&DHB}ZgѼrŶ=E'L Ca_ Q93K~ÛZnLؤ%pl B2u,i6ʵTS$z S .yҎL/y^( *dJ;Z%hHIui\57L`&M쑣bYyg^\NU}jWq{0Ax_R*(e?SL#\\#ٚS<3,gTG[Kg%;ؗsJ3.=w%fJVb^as|dF3V7PPɣ;=*82- ؚ68̰D+ \׏ +mi `hǺ|_aU :G.W9zCӏ;kAE[oQknU6DO ˵eJ N{}# V9DcHP@ҵ⊠ZpZFbi3D{X=$= LZSTr4ةP-I#tH]4|]߇'>ULxnI8Ъ"46=g[zT$y~ n?-B/i#h<_PۗMvTO %9RBvwrk{ Z>/CV{ ?ۄrSXQ.[2[Ϙ[;SduTv8RRL8/<Ŝﴩ~~>~qLMژj]JisrF"_BE3`އ/(@B y7r? "8tMSd{4T($&x)R^ ln<_OOO] "ע>c""B`Y<٥J%B.֢a*k*T?ۏZk;9uiXl[Z:tɛ1T޸+&͘:٦u\~H2ɢtCުqE<"_2 1YiJG{aݛV8Us odK1y$QXLm/nbdyR_Fҁ.-ro:=<ݐ TD 嫇n'& =%?Ŏp'͜v>0':t?Lrz8}V?Sp:}Ϋ"wL^9]ʁ-5όXD`d9l|2Y=N,U2< < ᴳʟD> z-ot RZ6/<& 7m'JiG9_*Ƴw ]ĪTX~9.)}qWbDւE,doҠzp,z aqW3 (eTU݈ώ P[-Hcd0U7HEjGDJ(hPV踌o޺CQA'eR冿F@ibTB<$3tL/j_wIGe-i>'4h?vr20=:&)S · `ٽC6 o!y-<i9.$Քq̝"qxŘ>ڲLtP\lDFv.r Ųr%%ל.@Fy] +A\4>DK;? zDY,75t-FmPr6Qu~(Lg=#n4λ^>"K:A3~h9V2/U[ sx)qK=y_qUIjR,90n@VU׺ H%D3""2aܟǨpޑ,1UF?;cGp@yJH$2mäLztޅ*bEQӀ|~ۄOT`a{2xCGoZH!'AW6 6%=ves}mo]&ى5m$s"iFc79u6 ?“ԑt_/˗vzx VIJYPĠ`K'ͽdu|iتSr`C&) &ng硨f/F:m3VĽ ,֝]3N~{a pL#Ҥ1 Jz ݴhmb 9C)L=ҰXu_}וOrn1EFV5w1|7̮3N< *uϯuLijK\(d0g9Qwfs.Yx=nyV.!<~_u.Wm61P <?1Xq(-f g$GG& e%2|q5p^/|rkC2MtyOr6rg<`~ob` w`2F;U7 s=eƍʳΧZtw;|haZ_$P-FP[{a ozS%R8f,qBѦbv2 9 0]zOnɰ HC %eX^%;VE6Oɘć:cʿd_/YL7+t{zm&,,y+[Iig;Ib`ڌP阴6e'0"sV1 _|c6G+T(abW$7k0Wg ٔy'=Oɕ44cܜxKE_?(oRS#:O6A&jD$@G4^@@۶Zv+XO@ՠn>`pE 2j#tʗA>cᅠ: r=Fl&~ ]/G%(q(=(%0E-MFaήZ,ehK8A'}dn8_h?*Wك58=lɩ6`̢"!g!L;7h(U@ubVj&# Nԏg4 8"Uب ZC9ihM[NI}R{O6F$qҶ{xp-/L Ww9 \ XKO8@FxRIӻO0Z\ <{Gܳ Gк1$-\M) o <5+ZwC$ztGeg״g@EzDV/]-(?=ݎ1 ?TY]̿dj+ rt Lm\dekKB_{,  U,D̟,RsT]7Fz[bf%/u&Y@/\bAԷ5~7BaĊ?9+]׮ s{޸E8 `Ae1̅t|R$|Fk;G2UFM .5\,3BZ?y­GZv(༱{M-*+9y3rj6N9yvr:';\!2Y'}ɿ(E^i;$b N⑈!fp5:@Gu?h5s 1|=N-s+ʚk'8:wlAPWrr0Iw91CU 6*. 2& K j1wQa ̖ 4p!y\)E"_ K?y `w3fg)]ex,lť&"djPkAw^)z Px߳?]ƥ~·d_ܥx).{pҌ~cwR$y1FMt\+(ʁM .Oh#\jգn8ĻӲ?4fIåaf dfyry )*\5q9ЪdG9@|S囓w;ND⦤qtf_ڿyBkQ{PPj5Ce[oUXB0ճؗ*}{s̩(!wHW r  $14"E;dߧUMۃ!oBkIg0r݅5WjM<Ӄ=;R38(gQF9Z618i8@*}R^T/, 8ے@ a'|]۬pËPIpw=DF/;9E!  3D fy6=5$9~"(; 4ȷVo.&((EBp,Ն?b`ɞ!F Sh}V.^vfô>_?Hҿ\aglqo겞NOA]nJ0j8@){/*x]W#UP=- =;Ar=eeJb["Dړ(-A* } #׈`Eq͂aoԪT}}/%c}d\I!-b-v8gpKjn<^s6Hhp"X)f`%sߴMy=E!TFzJ`@13u9 ^c&eyYMI;s1fHݐs+s$@Z""7F!'RoBlYNS"0z08: d1N#K'Jf7,)YS syx}$~jM E;%oݓMS]wR \ɨPdv0>icRN &DžmiEe`_dyT4=fјűm)DsU[7ojQ|`sOL?o7ɫCA9ߏOFFFQ1@~m`셎RycYaԵt ť|"gMW .^N55M(]xS]naf 0#e?Es1.e<Dp;:HCJ+ 2H<'GvL1\Ph:,7yTS\~JZ&5 >vs X жf}%* MXM0gpXxR>OH0NmO~H'zqBwJ=^Q$@DBF_c!.gEuarh X(X  .5i[a^Du2-RSՈ?=UJØ@aXZyy?cߴ˱<2a+IH[s pUjgRva0J¼I5_(n&j[oNC#O&fvPlEorL@c8S7U8AzHm9ݩ Κe^[_4U?b |$%\e-w;F~+I;tT2.陻%S/S-urv+(pwO$\&3r:֧pWKit}`dXsf֧L$O2.X={K~*@0Q] &n-qy1&kL; ;&UB0;PM.-Ć`%ibL2p1A93H\M6xvZSxʔc筯I^}>`.\p1S5tAٟƎ35 ?Ic~9e.e v fB8-6^j=9WI_0bKOsvW51ICEf -GEl?@ߠb|AVX}h#41I,/:zZo44Ʀ_AS?}7LZ0~j(!+=q])==AjlɭyP @MRC}֝ 4.ް 4 XeCm4P6G3o$̭w!RD[#Wb7AJ# [`).Mpsz&vc63HBg"lSU`^~=36گ/=nd6SY+b-50N MZ:Vy:{kxF0[#ܬTV&IpK8V)Т~ˁ69a;sxU`]vYǖΘS ^X#xwWpoC'] Uf5zB˝Zƥq7;K{|dc0Gj.^Ș'_BSl逸ʹE03YtL0GSX{jx Y&Ly^T|,S[8p6.bDDujdE61мPŞӔ|)?/N`S$ISZ<[͝1:ut>\5tr]OnvQ;ΧSkY m 9Koaj؉PXuE"05gš-q]y9BԢ A =oڊ%q]0aT`+煹}\esD\ ezŰy<> )5ίdeJVf # {?aj$ф4u%~n fh,#hKx4-s~W2 9;zX1I`BɄdA%J|FS\¼Ry۱bQF-lˤuth*AϰzNca62XYV,`@WJ;T>V{a guV'{,\@NԏX"=Bүr?\lVOJ,/8dcP0Q0dh r,2<]wy;Ï82Ҡ'uf0yZ_vy_Uq'ZG!_CYOma=ʿ(vMtoT]yjo?#z+i2uu̼J sա7#IL'Ǜٳ*>*mle,j֑U80~0rc'we/2}ͲQJK1'Q{|G m͜7(ckCs/^|,N!ki)I)ΉDP/Ir}amhYaerڍն0F0;e~ӱ/ rO?=p/ۯUtњ"s!R 4A09HTCn{(/\׿74+:a H*&T۹־ ((V0Z)GblgkKXn󫫒e,^hpʖd;+8~zDG#ȃ@͢W;f *VųE6n '40}8zo|= 6CTp~{WM3\i?Ƶv'AlCh8<`E>$S7) v6Z9j8ʧR)aN\NXةflTPmQUV.Am֨v6 Wr6%!B _Y˞-$)07vܭrdq!M20\`0Y dÛ3tVx$0CS 啠 hwig_R{ݼ˄.lsLjQS'yUqWX>C>01-#Nn⺋[}A%n{Iyk;/Snn$ BEsѸEFw_zT raR ''?J> yFQȉ6$n@47bkիӌ9:?؊>~^kѼ|eC{ QzT`ak`ď+!e0y"*ֹ[p 46KS Hy߿CtUʄ!0^΢t 0AHgXxJ5I ]sf>I!>$q>!ٍIhyڊӓPfY%qK&p?e2x yx{OTVBj6T!Xߵ`i$QT4)_!֣ԫ`__3[,W/T\C.lZ ғ5GSz*(rM2AZ"J\"@d/Jo:L~_BrNYr*Dʋfoٲ6vHQLA 8Qg[w{wRۜb8Xn}28R6D\,laFX=Q4{hmy/.-ٚ͹dkC@u`eXLUx'Qv AI?zAX(Dxqm&/ͽHatl.ـMP>AB_;gooF:TՃL >HMKCM.W p$| IѭU|rNH\stSp*{  MpkI sM0T!xGY4<ѯ|WMT :sXQL L¹6wFx-`!A]$W:RvWI2"wO0=ZoL~z jZSD}ZSs.+hGjO]{v*UPxAw\/,?B6Zއ|%@ [:iu0/_\L c=K10 O EvuX92E"jρd{oTAA-N }F ]6*Ç+aU|c_yWj[mQr WkX1me[{[>l6X5}50M5#0`Vo?ܛ ֛>̽l7$ob8=7c<?Lpb=*ݵ׸a,Gku-I `o65rQn0J~<19'fuqSԏ2V4lm4J|rP4aUP&[oCڬVO醧kz(%ɤ>hPO,EW_ c7sė~gM~=r/M,~ B#(dv;Hu VpvsR w1a:.'{o|,t ^jU; " 'a%ɩ?,:!? 9 i_ċւ9|q^l*ZWpս:tv&qH :(=IANYomf&&0 y;]\]͘X~lFȳVtmENݰv#&*:X:˄\ORN!!G]Z N]il[p@yA ڟC&*f*|G#~m#P8P39="OQj̈́;a@k[,ħݛ-B +gڼznaԃqkauiqE Fzh.C5cǨo-y\WeC M}t_ PN-!F'99cgaY vZgB;^獦]،%Z0Ʀ8/ T Ee-%/N[[:yAŜȆ+YkRU uENig+]Y5X2ڥx3tܢ2Ke<( 2Eqn=X]|* ޗI9~1Owl!t>`ϺO̱籉oP2b! UO;KbF=AZLє >@؞JiO{G+QBO1?}1|3D{uS"4vW8y06Y7'@^^&(Oe]ap4]iBA1*D90N–6An_LK &W=s6iv!R($eY6@gEI Ͱ$_^*]y)Vꃺn%N5(d!wq,P sPdc-'*\$Zͳ@#딁[L4Ze}SoSϯkۧ%dE/h[i|iB(h!`;It} 秞Y sӍ\hW glٔ};iZoMvݻy1`xG|kz{(ʩ@~]D2J~3յ{CcҰ_SD AXZZ<(+'n|w@3ϑ֐4Vޗ~}dn&{RhbŽb> ~e@Rhs( ͜}x;FK[욁T6%t&yV@gxČ'6iuXe@Vٱ-/6mgO}n!D*`Jc4d%]斆lhԷ0uv;|qi^׽j/Ў%? q <2`hltzb[OꍴHkA"󤴆4p:PGDCo:[ceX6Nm0 [13찂uQEvY:֑ _ASkƺ;r1{T.o2Am%c 𕥽R_LyX`d..}(01D j@]L^gFU^-A)*hBps\s-Mԡ)1t71]A<*)LVVhF vB,?IYG Sz#@Q1f∄UL~s]^ W(s7wQ'. 1Cj.4!h'h3RzO*ad,CS)E{mfrNR,f(͌j| r\QPEyY*c+# | sm֕"=/-% ..,7%Dj+3,6ܩM;z/# 5;:Y4'pOBG6і.-H׮LMϷw}!֋sVOOb.(6Y10d;D4$3=ջʰdS#<n0$›doaR%vz C[*3SޚpK|ENwO(EaHHUoȯxO^?{+}g*0&q(Ԉif27(ѽ5UA\Jxux_[;ke1 ѬTd? \Y&:E}\͑K&'|3 /^<)ԩƻPmNC9fWHA7`Eeд.jAQtb5q{R%f^d *6k(V͢Pз8JvhiҙUi7#Yr_/J@Ixnp9.G#$0aY:ܧeU$b޸ZP`^]<6zNKb , @pAf}KI;hxw)rώX{Q1< &7uUCa730,t'U:uN'HO@<&@;h4 جNXBT|tL_&['{ <$e;|q#bbJmKiv"\`M_X.I;3A !;pЫbY Yii Y,rH,KQ+lA`ڲ`hkh<.K2=@Hul .VuՄiʶȖL"> e~ӵ=:l| 9(?:.kGs.#lI}WDuVQse6=6dP=0D _ruxNo 픖ko .O1w(x1`ˡXEEc.TW_uvZ"QXEP,D$ p1qk0L& F$?]-xnw4)̫=Px4Xe|w_Ƃ&-Ԙ؆jVI*}i=N#27&߉Z`b<4~owOՌXyz7s؊l"^Ő|N$ON<[ν8&TpAZrb6B~ZQ,J2<^ιX h2Wr1aTzk՘_cYa,3<Bֿ҄W @4ߪvd56Ҧ&i=ݏdyyOVV<,ՠ ' ۡ\A:B+'s_ c^Ȓt7Bb  ^# M֔7#+a7!UKO'Ľ;M ćR*(넲gH,P ( `JO,> ww0N2;Ai+w{3:ğrƪ}BwF1!(U2ahcԥ Ri:hzkƪ=U0Cﯽ>ڛ7FoYA^ŧ7KB`D[~D<$[,Dziw[j)-f??Pq/s2g?i'|BqMݻ S?)=brQl3:V\i[bUc:S-m$#kty$G[wN)k/1ϙm>’wI%"#pO Y) e H㶄4 cfۂ'Ŏ['\?L"kNnU^!uLm20wȱ?Rqu`C hq*Z?&;$#cu1F_p[]~w?Nm_֘(q_' GI IJs)痻9Ȝ0LуEkDYOk!4x%v_ +uAc-|ɶ? Kǜ;JQI.NmٯW].i*~'01qb8~k`Cl W["Hѝ*Y<<'}Bl^ tk& =L4ZC/Y[*1R]dۼ$”C6V Wlསvqpg~Ar貱;4ND J5VoS_SZraNH5]@c6m1 R5QzvS6x0GLoBrezH6]4)r6?j<zù෫R4G DR/2O ;TMUQDj MoO xd)}pHL D>/ v9_{X:88X -+FztZ%vEiLb=DOxDtlr1gNy)0,hFlxitwxc&*)ͧׯb\4U( |9ODWOڵr\Q}KY,$]XF٨Rs詙 Qo?pRk.u#r" (q8"VV/.E3ACF^p $d\(8qF?_+m:߮m쐝ND JƙXJ9>ǂh-oV? gz5@P3|ClgTF* KaFUlN&3+vX|6=UG}[)2,|,YācYuBy`b~33~BW[mCdȄp`Wx^| @;nByEOv%)$P|B.Z{K7XH%W 5BРc@X9T,eЦذ8ϲ}NFG~I_u#7ؠБ>lZSՈ[ۖ 1 jǼyRvk˴W=mYdkVR3W)Zͥ{+&UoFmH!*q1w1~al:2Ry{N%[UX[xFɲ.9dUb+frELpq~GH,_L,p2eXD/C%7 XQf*\lhrkU872/h_)P>I)Dw53RǾv_+Ѹ:7:Qq)^ly#ig ͪD2fm[qZ2~up/}%G!nBX9-u?SC+uan {yXZܒIA^L"Q6,ؚ*RtSr]ĵy7b2i,-4\i\. {qBu%D]n 89|v|Uil7} TK[ x. rҒ),[Kܩ7O6؜P3r=/gS;NV5Eu;[Сw) yt=?cS{os!.$]z I?z!WJ7J2wlaۘ8y ۆcN Yd,x8nlԈ)H^s"ձao"qyyaG ̒t-ܳ `KbT~њ`k+X/N#VAzKo4pZI9b,jxq2oZcĦ 9@$vUpA_f= V{cG\M"=&?##Jڍ5ZYu!~c_FsBS篿x6y\)De3K Œt>Bf->+h=筪+r1 2 UBF]]Ar%&>%3[,][l=u05嬛qy mQAcg\jcM*<)qqB zt_c^ӬMB Q_#rKJ8-?`Wؤ#tPnUx+teg{,g]RJaKz?Ɵ9$=]n}ͣA1S(ej_;CD<ɇ֟{- ɢ#5G}/eZnZO@A4u{`g.č?~!s^0lAHi!wtܺZmȃY33csV v1RdbLˏiqvO 'Яۨ;>9kW=J?SaG94EHeiF!jlU.5.Y]zqDUҲVRh08d=.6+Ę{?w֕6ST @,2cXm_A@_~]c%0f#ȺmD83DyR/.$yԣFj sڼv_g{++~d˩0tGdר3`-|p=n%>,ij:"\-6Z"<nVZ*Fڳb3җ cIid/"/6tO񎧸#Tt,"A L+' 5Mf]R$AL-+`J+&Q-6%<~AE ~=]7KA;J夀 I3aeG^-c,JpMOMlcG7A'4awo'"FųE|Q[8Aӓ,9Ys_J糜= N$cE|NCrnϣWfK^_5" UT>,q'A??*AMX^MwoXwh"׆OtW[NGn8A\s{SdiYE?'8+g6|X6qm@ZíCRꕬ =Z(S˰jvq}\QiN!̞ˠ7̧l8xkڅ bvqkHg.r|Și ^^#^0XY% cE:<(R9li'!s1iV3[[R" J|W!0c12-_f壬x"Vx(z&rj _n4A wo"݃~b}2g2PHLٸȐX d hJ:91!:O/4x8ϱ.]mn2}"/j .-Q\_ؽfo"vZ+ОI}܇&LanDSNy~jξR6{Ve ;e0)c.F%( KPJM>{R|@K%-ndK& BaܻƢ8 o7c(lPQ{ٟ5Q"O2SNⰇ9Nseo6XuQU|s!],4,_23mY^JX+̉ ȹͰbsWC2Oǡm@V_ӨGSe gj=a!XFa@Zy;67(EU[@)SUHù= Ȩ>ϴ@yAɔRs2/EH3R/SCUP/|A/غ3ɘr/C,C6+u^,0{LTi~ljJ"2j-eȟ? )&WScH35`lA?P=lITlIf-4fe%9 F?;Z7!ctiD}'~,[K*+ɟHHfrk.KO_},0}JiB~19|0NsHI.~^@Ez΍gj"Oܥ<x;s^h[il9ΎWPh8G -+r\7P_-Zt{m 2Q_ ɇdnw73q 9ce4`$܆fL-.]a*z3d1>J^ ;G{` ld4ɇ[؅Rn F6G0gG:Ƅjbp:И=L)0^nUa8u$Q¾wz!qIl%xf35nA -ON"d1;qI\C7H#SC<]Q3"pvI'GB[ ká1дB0˒L`8S_R1x[h4?n:$b6($.:$g ; L}}%²CI43 +9=ϣ8l5fPo3kEE"'oz*aO|ӠnvyvGR{{2&쇮?Ej 6udoJ7Ga')KC9?$۝fvćDΪ(\KޓcHgp\%qߤ˶|7Qu!*% >Ԁ `6kq,{J톂$F_7D;t=Xo278йdu\&L*W-uY@!xږJ!-hڡ!!_rU5G2F[#nW|z]h|,in| W eشe'ʰ=O?P6kPY`)\(DVEYW؃eڢwPV7QSD fmp}h<ʙ >}c!1YⰐN- '$j60p UohKu8W_4mqg3>0To: ۲ySc7IM,e/B}l (fp^ cT7.yö?uP>GHJq=F'bR![?3FGMA[;S(ot_dRov2u?Hki=bBSԦ4^@¸!`N3Y̰ŸywWB:@0[?3d/6WJAl"Dbe^kfj#aVeJn8Csj *UBE>j08O ڴ%6oDK@/$l&zh,`K@^YD٘+|/qY 7{;^#285&&|6FRV5{8:3O80 !zӄ$,y)ݥ =CX>] **O:6|&/ ?,dNu\1>]ϢYGJnp3o/4ɾs4m.ƥgZq߹ǻ[+ߞ*l{ϴ:;T(E<\Cd3yxo1Jib2%\eS#Lf 5/7 RJN4ŕT_dg.42 b$%esRÌAօ FT{ ,16Di\0LT=vub(s!~gl(aCMK&LegۺOY4+DagVバ7W"R0WYw#"g1|]fg0_/:h29}G5HeZ57.^%B*@asIzt*TL_aѱ^t/wBWpC盷`$3oFKe`fWtlB$,-VihhUQJLdJ]$NvŸEuKBg_@Xƍ bI5g dyF.OnVinhUtc&{kE_X ,Xe 9T4:)5;б;kkłYR[H)Ey=.B4-C+ZEdWM1G9&yEln,smt+#R*SƘ#a5b; 4Rg2 Q [wH5"B ӒTW$}TSʺù Gm)S%g<o\[ʙvڤm1SIsaW6|?~)RSd0aFY.ەPԓd#\ԙ0^3+6nuQNDB3TmVՈC߷k,T B5 mDaYgr7C]e,+vѹ=?>|k !T2-=.n&hZ}rn-Ĉr[fݷBJϗpTJ'Ot7V( =GUόl2xh [}]L/bCϘ mZenAڻY,y\HV$\}%#s[soGʗh{y9^GF S*h˾J@5'-=~QCY K*6 e㶪;H/UhcP 򰢢-&d{YQJ:w%0 uQ^;x\nۄCW7l/QMPu XJkUŁ ˣ}TWi ًt,\O8/LFNDf^E`B,hɹC`vgR1g"tgCJd)r85ZCћҧ֔ G&ɳ2i4W_G 5YTsLl\ES/\ib:U Y#f>R5MCdߦyThG'p{$7)) 52H@A93Aw iSTǻvdE w7%B3,7A M MsT3v+wO7͉F`h2>Jnlg䷱qkAtK\ñ yeύϭito^`qFCԣUלKSzlь5l|933;qWB=1MW2'dc67եX@-?2ӣz$KOHfGiִNO}Qnx:5äVyUm Ւk^A'0B=Ԫtߢz2,]+4 9w#-o"e8| rr*߬@: )l |vĔ>RKsJEB{.iӶ~cGEB(X^ZF?cy2>W?5|&fpLg=In^܈3,NKQ͇k(_ *S941wB.l݋) x?t,FXhzvV#okՈ^W grg}V{6t&\Q&"X~TgJSv! "M1vԋ*~e(C ^^oz|ɚ=̉w n/&!5c$йЩrZ~NbwIfWg|* Z6c_$B!W{z2Y GYO04%Q|Sdl }LrϪkQ.5Ӹ#6Z}OW|&e@%SW^{!u֩Ts$PBpz|2x]Z mMHނQS1g;\ y*4jsک~M05Q+d:ni/Tw\LQ9n GxVgz_]m+W }Nd^%yqI%6ĵy0SWts YI0؜B;Zzp4,>O>gCuwҕg$c:b_sw"PE?2 ɟ(P[ZһǸHhJG*b؝nҧ%e8~¥ 9 Vk39<Ĭ=L*8}s1-Vbw 4UKb1H¹?HՁՂf7H$܎JkFtf&BqU=Ý{VUr`z:,"ߘ61Bɸ>Xp^#՝e?Fy<d `_I>XƲqDA鏕 RQ+1=uDj1Fp)ZW."} ?K2\f⽨;KƵqP8\(,r)umX!sh:0>'.gA LUKXW[o(cJtʞЇǖͤi7u~̘t{(~O9BIF7Mpb> t#Ą3RUg$/%0K_"(9N5':̥|NSiiFFy>,TYS N 6y'v17%`r_]*nS].]Ud V]!u,V-ai/d=+ R%kN𕯻jli>ܣЋ  !2{%$^r(Q'^?,ᷝ 9U &vGw*jvmaޚmGߕ"܎Wg]4Cg;ܪb̏Dž4!s5Weݝ;Eܱje100{BUM Ƣ.KMhWλf\v["ZU\(dH@갚A*k>M5St{+cIZm/Mz*?1so̿+2[z=.AP 2R!y(׃" Ĝ3Ű¼2v;#Y8_揭\mJf?' O̓Aۖu3ȖtY+U&Ħ;s(8?ß8a:Ӊ= wHPf;> xkyGIl".v3{p.P~n*竪;'{gД1WZGj8.}my3Z85ڷPI.fVv\oUΗUM ͆{M Є"LT{z4C3/Yrw}Q18Qּ.QX-*pi\}aZE%txyljTL*5T42/j=l;}ݏ[-KjӲQ5;c_L7P]b(DBa5$UlO ;!`WS$h eYb7ƾ! OC >>HUbW\KCFPSWPdT鲃shR![~mLQwtp h8.Zge46yFEʡ ˪iaω,@u Xlr RT6s'p?R6*UPKIƓUO54k|WzӢ`Tm!cA!jC\o<uoJ|G5۶1DΪaPz,񽤉-5T8t( )WAN*ō- nn%Hnܠ(ɂ 0+MM MۣfJf> yܲT'uc Qȣs'OٚpgU~3i%{]@T>ۗE)ȕMhW[,V<贃ؓki n#zy -+Np8CQ邝ȉUmwTD"+I\Ur]Cb^"⧯,:^B1nJ,P U3~fPx?4k'__\rO|`Gۼ`fñɅ'lp<>fͼ2= AP$Mh?ݒ.0 BE0 17ADW) :΀lPmc %.앉|ŀP2b/xAo6as4`rYjLQl#Ur;,33DiShͯq.:|gDߴs=эfXR_Rq},X(k#0)pюVܘh;[Jɏ~#ECGw8:׋7odKx?߆Ta`0<߭GĆnCw&&X$[ܷ,>0R1EƚcQf804֍"fqdt :Z]6!m{^C̳H-“0M g}gY0G* 4P b&HkQ~lK` Kg A$gWlZG.\ X+=)Q49t=z {w64\*br/xV™lER#b4G/&8HܵAo HIp PP%f ԫV =Nʶhϗ{T,p6gB=FY0Y] Dk6cfIK5c)ޜyթ\dO͆SGmX#Ƭ)NN#D.A tǒSepr-a&sLwT/tw?}ߺ=0RKrp{[νʗYt?O9d\Z;+Ƣ%q/F_8_c~sάQ]~,]n34߀換ЊCSPECޡwzϨ&-PԆ鎒*3Ln;`^jW:l?B2DdF 4},zk1̪K=$q&_=WuruХ/_(5ƦiK@Y1C.8Nh3}2sC;O<u# SE|fm3#0ڪ[+;$i!2,N ~d#U|5N5:[pA2х B4&bZ H`t}_N &|a˿3=&|caJ=NkAzjIPbN,7Xr{(lRe [Z,'nWw4Vi~Jj97ҁ7q~D"_KVt(;B0/qa۴qUʻ]-8~gfo׌ ޴ Jvomvjo ӱ-GDd"W|Ʃ?uI\M5O1+0p0[ 5fާJzEͿ(]$RGBj >*^yb?" Vfln!(_Yf2ŇUŏE٪~.Muڢ+h.o$09&Aӊddz l eUMg{3drg7'7ۭv)>gA_)p{h\k:<,`P3VC~9"rU˴EE^}pp07O&T<3U1co&/"{ʸ#3HuC(Sn)ԻKb18[*'U R`Jo#B?.!5ʶ"jf?[SA57M\L0@|U[ctA.ٝYI{$+pHg"$8[3ceM6 hmm1vΝ$>*pq(l!ݯFέ$W'X ܍IԽ}–CdUޔl8D<j@7?d .֪]|uZHQ6w- ^M؍9Q4 )ynTPHkmu0TaGi _Tjj6 K wr!P ;ޝ{=TUm%OD~b;:!@1,MbY+yh^jenT\ eABy{brBHnl.kMAQsFP6w.zS6g坁ny_"7vIb\3vG{ ~E |LGQ ;9#i.92[.JrxE9s/|ȌxYUX |;gӛ]{  vEp,rK)+U$FsT5tX;a|c]Rcc^oFtOCG#u=071*1s|򏨶BKrYX?'iwXڙOsV:!Hy)AJ 8ջޡY n{`J| 6v`m."_^1{' XD,vOK F%0n?|l~6*AeĦfY7\><` @\GlbⴇSҶ=gkXs#^L y _"T :-=w;@|#Hhh5U!X^;Z STtz r$=(7e=X` Օ m#N(g.d#{_J'> o(+r妚PsI"$"j/vd]$Ne9xH4kQl1p̛ts3kni[`{T!4m}}]MG]`pE)#DIxjzc؜3g6!6\䉦8RAs5cI+z"~Xx35t]k:%% Fl.>. z{Mth@bbuL(R+F*Z4J=۷b^s@L>ډΗM6=dw 5"2KJTǏaf`.{ŷܸ7O\hKAxEfs0Qp!%"YabC7~/k; $JODq /j3zcL+-*JN4 ^q7 FJ]SA, /vs`5rK!3Q xyN#ˈhȢڋ`QNRnSj%?YV$u&Dz%QF1/7i bfU.PÔ(?+32JWq5zEUJx}l]khW6^jyw>b n>G2RN╝]K/ג.:ZfmaҮ |B}éM5:<7 (E Hq[!0idIhKļ6<ۊ7v 9oc-SޱrC]3&͊=F퐦 #ӔUfO(6Ͱ[8\!q"zKvO*YJ*)!|teڡ=t>D6"&rՁL)id@r~^-bJUuT8x5VD}HOxi_K*`X'g(6WT&ogi رn!6HB?s2g;k=SV_+!1+tf1\NyJ-&'.]fJXkӝ&ڔgl قAulc yEfxs-0z>-> +!|ْ ]8=~ jfGIZLD7535ޖi2 `u!!݈\Ҭp>\zDn-Oѹt`0 f+\7jA !.h8OD,mmi>۳*u`$Ή52s s"%T<T.G͝-ꔑ"Fh us8s#{F[e]TqN !VO/H,1Geֈ],q%Dεvם͎qd齺:V(KN^bsՇnU" M_!i~ -c?.fj3q!2H[F!銨⎦p5 W^릁l˖x_BAR$vuS,|oYپSUlD8fʷ5w@vۂ;/7/[= TbPIcCNETɸ @o`kQ +gR.NeY@L1j`Ib2z\W )m6{ 97ny 9|(cyd_`r b}vݦVf ̙Pɪ&@=nf@ѕ42N _4:Ӆ<7mqFime9dKUBug|Q)'8Tq'%{fhW"e"PYF13p*ܰ?e{x<$O 7;|_yr8pCg[f%SI2}OU I~ .N&ȈP?/j :iEWMi,N m]aˤGVg2g*PebhhV̻#&4C;vV871N$3*=Pzldv)2*SPw) F"t]ɡu?K]U ?\oAvڨ,=~EY;bFՒjF:W ~=pVY%BGxl$+EI#q;Vи kJfE3eN\.^^e| { R E6-:Zuk,Y͐9Ts0.rwii!U!3 6Nxh9IP~<WjP`b(%T48$[c%"VyFHwݹF4c2=@LGyyK_Jg8z$ ƚ8L d# T&cRz͢oXQĤH{#\7P]gFI6 phc+D0J3 yNE9J6XBZ zT%ifǴmD_5?㸺hk[oWK VB7 9tHo35x%m{;HE] ֬,[}~ {6Yms8yl4rTD!Spʹl[UFMp*7Lpavؐ%HzlX+XB) wm @mPJi>L3Qe"c);PGj=p0p-3)jAC4F;L"iE"w]X J{MVW[YGą95 ׭sLOsU~D*X_GE< MU.P"`r;AX]|MCM϶a y#̓V8az^x2?&dnjX%%ɲT/Cj4Db6L년Ƃ9 ٺM;ծm_(o+̶H@ Y>GS5Js񔭸cdtaz)R ì% j9uԃ/s>eX1"@ /12~A0BAۅiZ6Y6Pp̒˃XRA(|]sQera<J jI]kzXR3]k$_ew+svo tv,CS/k>PTMP[BXӵ<ͪ%krw):Uɸ+I!moA:~ZL# (&MHdF*%xJ5~&y$ҏJW4?^zkZJF=Ȇ ?7d%^x̨ Zg~-" φ?mC.6 cX di=[H|q9} HKD Q?\30OkcBz0sfsա3yݠ@]5!xtU><1 ,&oǽN $n_#DIn|b;کuzLO`+ZJ<4H iTs]5m)w(`9Nk\ƅj?kP!ūLʽ-Q+AR wTy-ռ跞mUc̀*:.qS ^j+Ɯ $ٜcw6q8.LpULYwQ""'}ĵQ~_ jOp0l8vܕ2-+bW;dQh.aG(lYTLV]sT@f 9 (k*39赽2!E/ˋW2,걭."R/`x@=F 򉹀dUI[f|ڵkyw41qf̤Uwv!& &`p@FU\^gB왺=R172|LVpNwʼ`E! K<|,H?!R;T1)hm\yB7S}ǻ{k/G(c+&  ޛf-2=])| Ȏk?|%1+l;! {Aox0Ƭ$ hה% ch4+^ (-p.$8<ґJCF A3Ұˡ=4NƴB}h?Hg6WdWsJB*!*\?QKι 1xO刪@`"ޑs&,|8:Aڇ~:v pF{ɸZK)K_򥉬;{Lb9);'vŮAap{4 `pk &5L_PgI^,h3@wHyPr4_*+"*EZX[!SWOmڢ~ԝ~0,qz:[ `u3`M΁ -6ILenKnѣ&3@໌")Z3r9K&>pI\c-YibI@+aُ~ؘWNH$Df] 6וQ@@uL [ /)q .m.HYF3E]UɊ KG8lb!UVĔ(+}al{yQȯg&Д~+aPw̷?DsS R#с]-մ\?/>IC!i܌mV%RyRM \lV0bEbCS=0B'K b`f{$Rn\B::߁bY0w% u%ͫ\ˆP-WK⬙/.0Fs4&(n_=2z ?3QB䬃|ƛX%y.(kMRlC;;uGuWòѧzÜabS%^[`?=9fq(sX0s~W,y,J5#7t]m~W tlݳ~2_@;+tCd! !ҟYB$4+5١1 f,͘i98lY尜y>_&-۾S@6S{9 g//@mt}F=sgHTC@t|3 Gfe+!o9G7)`˜B`ZuaF$+[[PV#}^C{&o(=^c\;Jz*㜯k g>0ٿfBOSPlSV&.0W7I8L>[}Մ.Զhv5U-4"pЊݠ".IXat4B`O-]= F##`I0HлIlPe/'Xwj^)SuU3{unk`:eN#i_ֲD!ARzՠjH`p*6fB3i_FcK6+q?* _='[gA/uB$5y|R XlݟՈJU4b蠧Gp@u2d;\ 2@ _Q߶'15]|R?C jI6q¨zO>[zEDS2J/}ꛖ[gI&pNOqe+nyYc4ϓ()ɲ;! /̊eM#)*ÈsKc,_#Z'^{ʒG! r-mk o;^^MCt>-YjGH{>ZHA P0CWWr5EAN˯=qqnɎ7oMC~H\ >A0&])^@16pyA"9OK!/զ,^LJ y@贩#[!6ŗP:E@92IH~B cn[t9mEĐ9헹)fSgK Ƃd %x6Sۀhrd$wD߶$@u&y̽Bn/XB_O@IXQZQ+)lV<U?0#Ln:h>.~ ta뻡*ɨ4-?X ~LUXNZsn)4sn:_ I 㴿D"&ίI0WD' uZdyF[Y;!Q ';Z4 Ev qi{o7}ij%GgtHHk9ƚZdb_krMC3$VwX$ӅĊS"o&V"if>{39ES65 Ү&&8@Ѷ||}1xdc3Tc!B5DY M7&Cu :P܋!hl÷J$ \hs*bgFqF G !ςep!(!umwU>%1vwt 4t"n> CQAVDW[-\JG;e3 ѣ2`zu/Қ)qs |='χSn,Yrn}p!vTp9Qv$U>ofN/Ñȵnv a>$}#@RmzorZP}t圧)BE ^̠D]OBM5Ů(Q{^Q ˍb^֙|I:vyJDFӽyc5lݟ(`H B׶1sFm qI /1' E9_g[DR|a x5b 8ZedT݁'ty0~mnvERz0pN 4X/g E &4ʀTmdd 2hޥ#܊0zK n eaj^"J۬yO=Q ҳ=KX4ӏ( -½lhҿMZ h5.:nXnxhٻ޽WbA5H_S|ӼFq ۝h緾A2.D= 6όqJ;߰_s5o|*r߅~n`% #:#yl CxٮF G)%&v6U27y,,(l錰wS! β:'ɯJw$ @Zck~_ sY1'գX_HZ8T=- ZNr %@[8zgyš_W]HY):AfazUa.aɻ7EuLeVa5B5" _"»U^'#VI=~mBiT2CƒFE\&5h7lhq>FZTv=3STjK-kD~pX9  fao>ڌM Oic|ǜ#v7/r!67{U2 }waRnGy"R D>̤XR4|bű^n A Dk{׍)kJ yLө9*Y]}kAS朝4MXAeR0Z,wy<WeMX}Y&D_ 2JA/ګC:id _͸\eoO<{'0 K=otM$R'd#o .o}@SК~N^ ,8ܼyڡt(jK1\#xe_:  9\-H?x@dK5C:'Po~Oă>Q@٬oCc$z\OWAeHB]8'KAn`YI+ iݧXOzCbe%BӉ"U]2_)R#a߬+ӲNxqTjd nG'K!Ix :ݒ7d70 qn-O :03=[0=-:.S[!5\vNnkWͻXLUɍ&<(؍ߞ 7a=@mn| N uRSs$On|iJ'n`. J9屻Id1I|UP ,1L@ aW+sq#Vw5ѣq5].McxDS4e~GIWZ8D8t>F2'ϚjFe Dз“HQ Ͽ2Y~Ϡ٘%p)zJ= 6%}$x.FD45%y@/e1s+T@̈́,CF8$InS;F)wT"꥔P+ļ+fXDgRHZa܍ {NĪOD .- ȧ>{-rX[NilLb<r4 ?WcD;|@8֌CyTss1#F&Zg:1zYt:MBy>b fčGs^M^ZGZ h=9^Gro鞣MԃXۄ 5֋F fInY>05Y3jh8-TJ^Wیխ(оXaM‰'Y w˸\|_ SIM|MZ|s{SN6VjaUt-IpBAN+yF=S8_ݚ>Dxg}ȿl̑B]s ^YN ՅbK9ޫ$.R@0ij_披Вk΃τIH+ҥgGj]v\$; |wnf208{ Gy u,#??p 3oȻ쀳:.aΡL/'o|*h8ֿ|,K~:7%;UP _N/Ws^ɏTu4J>ox&ĤECR @A"v!$+ - @u `/Z[cO>1@z3ᢖؖt=% ѓfO`1&:F 9^+оŭaL[w0.ӭ(͑>U Sp+NTC:/"/ >VRZ ۮA2ςLipإ $בMy\]GiՀkL#޽zhJ?%Y8R?&5(bA&w$0 \MCp>-NrfӹD z幥#43:\Ճ9eR8GMek\?LXof  AuLR2s"t<^RA_Kָzͥ8l&*2H?dcV8*}0WUR˞(h"8dkr%lN_ۜj`ryΓ@!dد._.WlN^ xDN="=:%Bݏ:G-$by٭ zl}8ٰhi(%/ת\}I0짘MR܎1RUb,$BwpdPGVTEZj2HBEv.7:1'& T \њ=qj5~ 5RCKyJN"i^s{^&[esl)Ďta.!4+Co8L# <2O&fqD{e~@0KC׽_>XUO|fyr^I} 0?oCfd6#\Mv/G2 `Jn(P*i2#Q]0o2% 3tRų}ܥV<#8T}~]Y@ǏFVs`ȃu ]* 4C$o<86's=|WY)M^ۭAO=>< VMST^YDpJÿD%Uv.i ob;,-S XK 5{G7&x:MM|<ڷCO.IU-x\iNɩ@MiNC{Zʼn~(fsrl,.skJ((OIFP"xė/8l~xvlH7̳r&Ɗ]X d'D6BdҳZHϾpU.W{J: 'Ő0"icı|K7j'2)z? rqtQ?JhNM(sB)ɗ_E}8$mj4Ò;:A<+2s$Kx/S7x-|f(: e^W \=[M5J`#+^ɏ#4]Yґd d}49PQ*{%hӨ&Y+zrQDK+`R`zehh1t}`ʻ5*/(g?"/m}|@!)R yШk#ާ}PӃ@F'Y!ὥ"Kbkޟ!$蒊fBъ .\F3[?a+7W䯿1&c]+xk湭ic >]\D5D PZ攄"2nv3n!\ػ? o+z<\D݉Y΃ q+DīK+9*hHܤW{CbzNX^,â%pF5#-z+*[v :\:@G=Tհ 2e^`e%L tjSᲧٶĭ~E#3JB .%=(U%Xe"ec,W7G?G1 8$5u[;0tuZ|"OA2U,h{^{&HE` 卸\ps CC.mέ)C+"c݆ṅ~&EGUXk%qz*rt4:s!X R[6NE̺RBY\'_HǝZ:K!DNZ\ƛ{\}etlԣs|B.lV/v2$v(Sɬ>nwkg !{*_Z<ٴ)Qj9.ـ +|Tf?|6~!ȞMZʦ,U`oE f< Ll?{ErXs6a"..;ebvGPE%^a_РKm2&D۾&E 㬈 .Gy[3{6A9hKuv˰7sp (Ou.L FRdʤ,f5Þ8?^ޱǒ!@c¯Sp-7GZȍ/ zU$2>9SC-VݰNLpI5V/% D_È ȗwҶ0_<)}cS+P 9Ƽ_ ~:&$!C- smLLQC2{=,͊/#kOrAi2"*wVΑźD(/+<%kW| ONEaeҕI`aEvgXOۉ*kG[T(!әv.[`jFPb`USāeK>67w!FVThP.t'#Lp,zzOiM[pu,s黝AxhHFǡv Z<`E˔wӶWކBѭ\G!5o-Wϧ"lg "|OXȠ2L@APj~t8Nꓨ"JaJϥaU v~ѹ$e|9/4[G'NzS2?^׆5ծ[(WREHVU9\eem` 6# Hzg 0RSIZ`^+Io#G,Ҿ"!b8qY*Ѕ- y&O~lB^ߎ )<\>x!wfUZV{ ,ev>!)L]S[!^sBv Vؤ`ǁTc5UXQMEei?慍A"~JK|NK˳i~MUFOB0=tW \!}j#mll5.[Nm|{ق21)zN3ґLo&g yy{ޭq<+378Y> ;| 0Btq[2;W'_榣9.7pD ޓ"J[OyV1^ f16r!0I{^4W1&xȠYK&>`2p *,9L\;I"Hp|oč=ツ/bK7Nmzmmׄt8`N.]$Lf\_e?'sG\.-eԪ#눵xF!M)z9PU_ Ӝxu~>0[\P[b&h6"lqTV#W)-+Y䭨 t@|Thd=h EG)u`'87@JK^Zn"4i] Qb@6Cop&]CizzԶz`t8o8[5>,9SdeV mht6 訊9 Ó i{XA{9v(~tb%_\i!E>5" 4B0 M ex}_9Cuai7"Z9W~rt>] #8&Q4jnl5=}y=dsnivbWj%VU+MVpg^mpm;a3tKCNEC2rKFE $MSu@(31~H.%m{ kr@w N321ZVIˆ8 <%>کZ-'/bvs̴egXװЬ|*G^ZF^6< SiXe P\F,S޵gpssa޵ƠὮ,AU'껭%W5-,qCOF 8;mrhPNfA{Vc}a3 ~bkEAaʆKteO6HFCԱw0^$D#5GuW_l`ٛ`k ۴ J'ajMXk@Ԃ W*oi޽|%C1 Y\|Dq^xw%h lu%=x?KEBA^ 3^:%8_&5\{135yq ['H?R { x=KJKޭc\tkU͸C-4=겻Ml"c#=PS(B|VS=LnKᦒgF(㑖i>ёn~47%&!;F $\ȂeV H7/[_g_sOt%B?}$رTop> d;^t-7voi񟉭V[t)Xyfk& b}w6Acm<,Dkxo.)m[sX{ٶC~x㤱7.,KpC̫,'a_&.%^K^qBlո7;^ѩYKY `8 y| a]1} 6LRxcnpѧ"H xX/;BW*B+H"B6HPᮌTmvҎQ^؎dT|TDGe GE?j&>$uE83 Ƣ~<I'5Pe7Rˢ;{qytBG#ftSK[PϞ]%lz I-2> 8*a}آ>3+;CDpnZ;o`l4yǫIwQcTEͷk[ IDk)x`\ihN*m"s4c/=eCY]ӽ%0\s v&s)\^.nښO.[T0bq&Hw5!/`WV}C7 '&Cwΐo9PYH \l^OXUo-%G*!?uX_51rRh^Igz@YJMV?&{U;xwNnhx"-9f5`\Y_ zUرZP4.{&HfdA8u]D!X̐c>rNRBo 7MM\5 =A֐ HGAd-b쩴0mfUFL$suݙO^8:R]K6%Qi; .OD sHrnnrCE"jtX句f״}]!*j' 6*p(蛪>qe `၄V .GKeB=8r L)H2;aܾ_O;醄 L}/#{wMKR= xQ `~@:"Vf)OCxj2yLJB^U`>/CQh%?j} e:уZu2~Ƚ$ˠHsJ/{0> z,<Y~(~D끣't)ѫKKBaKd!3]*Ol:B7ۈ P\KvW: CG(/Ö) Kv{ /? 5dI;%LN1A"X5D~vwG0zCm&"9ц\rLcK_rwp\h6azDA@'?Q5UOrGt[ց S8(?.ʰ$#Z8izuH8V&|CDؖ08I#A(fFvQSIeD,$Ԕ8͛j>,"M} Bs}}V_ ( ?ˣBd0Kn4;H5y-AKL "lĽV5H&I_0mJeb$_iPjh1J.|Msę{ &"@C~9r5Pu; R'`oᱵ=4S2'𤱞o H0pG#n^a;;\sR) E6Y-a޶́5v|RN ڧ_J/CQ`_0;mqI ;VV\xu+Ya)Va?yZ7M{}T%ߜ|^ u6~KS_׼e6)e}2m24It@ FY=1-U}x~&P! @&)[:P&Gg_32*,jBey9SU I 6H!y|cPQ 0z=(B^rd-T5/da\wXÉ/5Rgo1 Yݍ6]#;_j%>cF Vu$ uL Z taL-y;򥩠[(KZ!xxUm9ۡ;:.sRF 낦n1Z8"ʤoFDi!T@Z8 ZЛloȏ⬓%M#yeܷl8WA۵")0pݸDACUJ z#m˹+ږ Z>6 I+B6m+ϒD@qS =u=`0ebP;Vtlp(N <~tǶ쥼TֻeH S3m2<~%09VWūlҁ# Ϯp6  8 >0R&C0Qtg.f 9( =>& OY(Q&$g,SܝX!7]guZm6axc:N,.'qNjcYZ np` kzd4yuG>@aY=ZkvjMnGZ9KG:8Nv%?9svUb!;'դ|^$UH~09 ͓rll{[Dm)CꬍwDy/V.Cdܸ5_q\OXρ{ &Hwû=Xyצ&=c?)(2Fɨk8Jh:SUi"0k\xGhRΣ0q5;S@\kN:6ԮWD@0_5^x2J Ef?MRQ4k5Y)X,zgd-uUg{=̫p2J5vaY6^jFҊ[։G{Z^e&zEOF 1mHn'o`PFf4Ϡ-s6b IiY`E @;wS#QF2pV[Hzq?Y^OX3z u8X 1֡G's1v)J&s1" \velqO*?kz()еťC!W-1lgz׾{;<†& /{= ZWK%孕*l{s՞{ Iڿ.VܪrF [~ Cn<-h0VUdo\<\?:޾<ɩ'ڡ˰KW>5J&שEb=.JJT\Ap͑;o'-9m Ƿgϕ.p\,{ДFϦ~[| @GCoi]7לr -8Pj(|sڔ'y:5Zr5yp>j|N+ʇ=;t@JV8>j_6Y%4'1W+.Ҵ,mێS $q=z,a|阥iH-v^Z2 g;~ĄY>UYd*^^N`J4CFؠr@ùTu9%7^hdXWVD:z;x)'Kptb *UHp~BG|gHmV=_݀= ǘ,:}{8)"y<?. ӹ'Fb+Ƈ-D!F1-h5&. |5xph8{т?v:J- &aOg V !{:clSЈcܝ(ϪKa'.%ps5rr'pXYVTꅻ֣e-Tsmj"`RGcQ_!Ag7Eؠ`ƣ](Y@~}?Sk0l2}%ؒ PJBjivB}?_V_z9iG2a?ܗOB6`.e ݋pz[=6*$)HHJ<ܗDepݜp2 1p2{5MtϳaAyd+|)IaFK7^o|J ӡM@qiMÍn:X諳Ř3k @,6-\P׉-)ǩ*6N81qD(2 %}!UuH3h!i!ui lU?`Eq {e[Q`S(=(DE] "% 42ش6/uvbfvpUeMذ-\(>gI(ƭr)2E(Q4 o E}?<0Cs`=\<}u@6(û7k{]bAiyW,v0m1 Z#VJ&"DJj7sԥި7.Yc48G豏0~|,/e M/)^<"O\V-sվG98{aQe'[vxf$a)XsxNle瑌$cdW*[ m(g9&vT=DCL %ZW=z-U*m7\̐&DsO@>[[AFI$r_]AL6;nZ~#3aiʧ@u菏=1WzTM,o>6>t-/,!)i9k7.Ԯr9gDːNoP842킯6%>laSăBDih}nY= 46&`RpHPEݗx]'dYLeiAoϑ!}\LW[`l_5ɱea[JNg!~ww_biZket-$dŶˇ>3h5QoxGE[]-yq, tlAWUTp0ɷpX :\{/|xf)]VCp^ǜX+]5濘Ɨ9@65aɘ05,*l#U1n .)-Xb{Ya 5pXC荨Vx9zƝ#JSKWݽ>!u^p| 0$ K#Pi$4Q#gf^.p8'q"Z Ɏ[A*hrRZj"nj|.R,n4 vg&{X]H C/DnI ї߭㶺 E?T|?˳Z㚅5+ lz6eڠ?Ѳʔn4(*R(TB@d^!]ϫtF!GBON4rmb֍*}b Ir0 &Ρ EJV@E|!hS ޺e7J0AZ+oi@=7jIr_E= mXEb3fYN_Xur/~&{/κA}$d5넸|+l: grj c5x[17Hu4Ϧo]N3*q۹B{ \yF2gD^K>"$n3AA.f@>Z>ڳK1;H-EoU JjXިU\M"wiEhK~IJf08écKKfIlkkAlFi t2a MKsShl VgΈt(zXY_..3y!feUzuxlEFFG)Fiyǰo#n 3!8T@"}s|.^l!D:J֚9IIa]opBP&p#uU󘶢ڵx78dUྍfX>,Ԥ=]#f#D'ҏ{ 3ktL)"qBBU7tHXYt6ON,3G@̏PWVZ)5'ziY̐D$xTAL*`e8ͥgE%bl0+9\ݐ/1A8]'# @)!kh#0Yξ/3qBpfU6}^o7HXYB:7Ih*-~ReF-$˜CC9펺}j ۑd'Hf޶uzg j8khgĥ{Fw.[r؅䪔҆Wpqji ]{'LC 8<,$PDȪVM'3.TFaϠ}^6Y BXl^DV쪒gG @uN<[F̳tcd:wݮ2WKm;z $uD]]&}u`XzK E0qlQr`lnoE'i喻IiZ3 B^az!?SJmm̏07\0a DS_O7_{|3`V.'z&a=,%c 64% #eNܐ2x*枸:eM{QD , C7eu1W 6'jڸGk@k|j*S NKV6"a"g1宲UkM텦El!$Nyh!>~}%F]!0OG8^ ;^e[C ꑫ֠(L*y7>%M2j;0\RvСЋSP:#wYsZ.QB>TTCFu*@bBML3N&9/gzք9ci^ lH5z Yhw5 E_2D/=<{:0vz|>I;&eDo=MŦʊo;{cOj\1˻Ǹ<>n4nt tuk E!d$E3C l#~ߍJv[oGE; z 숽ާx(+`^*49Wy{f8&u=g gT >-Ef?36-Q@i]ܯ[uIIn[ >IJuk+< -b͜˰%I֥}'tEYR*g8r!s~ F:N^tj4uː&dST 48{pC#0[67rIQRԹm[CbLEVI8yUW[)L4NT5qzHBxM.m?s"ूtڷ)&!Ego*!IzRۖKF8BRrr~P>?,<7f*x cKMgխKIވ߫9]zgY;*b!hN?740 cjK/$ʈߞP3q-vZM6OAO뭽cMB(ԏ\Jk%:`w-2v(Q 2v8 1 %߁XPWZWkx{1Ƈ' waP-[b8@ y65!!0vEJUq!EXPGd츈<8vG&@]w: } {|WB,~Yx'rgkRʶJnύaKR z$> QSZ:܀S7K҃?ѻ1HzL &Å.6(l=*%ZHoGv~T@G#~-uaP}i:懤YP?Tx߀Wm7]\!-4gy^ΡvDWL8+ƗNq=iǕM"N^VK]h Ʉ7?A&j{j>>Ir~)!f*ҦsȦeD}"?LԧN[J'lw@ u^2{.@yGu8svOĊ+%v-OqY#ֱDI ]euģˑO *_@HSL+j)̊ ,Ex.5xFG']rĻ ކN0i:=xi&$Fu_Ręl k7٠~+YJlby1F?`1Fx'(s `}A5n5F pk΄ mAب^NL-H'z46)-͑L(\ZNs5$!QtOE'~mȫ]kZ*fT\elMXs?]v 0VSDoFb%BCGǨ׷ ROe\v}TR+ f{k[C[22΢uaIgC,RmbvXc%F*_ُ0pЍFǠhk<3/F 赀GcEg*8\)8y"L'+2F ysA5DW>D^RKO7٬sCpM֌ NNK9:?ϜsEcJ}bH2U XҺ7MoSLlC%ZGu>|E,`rR3s'}joG2>ЉY)q$ D Web09$Ts|1]rɩf+3i]F_GѾxAY>ZyK `k{Ke/^8E á؅~zTdyi)tўKM(a:\h|~bQZ}.2v.AC^DIc+ LVD`TGW%zJqjY?vJ5M->d7! [D7הn`E]]g/.5h*C+Ӥ>hf,k r4=ГC=(̚ؠ3A_By2(Fd=&UK'Lk8ŤSN߹ 9?]-?:R} M:aӾė61|q{\ϽbUlgX?!Qޥ'DZCUJ4*S\/b&5֣&' SS+m.o\JB(!踒XEL!{T@6[F'?9t ɁE bdGغPvγxtgXՇͳ7)֥x=#d딉,ҨUd`Qɀsi z45mvԛN,|3TK8V/Z-@i-+C~ғmDҹf  2je?wPV{`}%Uu)HGYSxunUvI!Su,>a {x?tUuXg4âyYˌ:_9U|B|Sgse/hBhp`'XOU[DT4R3G.8, m`(g ulՄl=:Qw$)U%M1S6]Ue1k. 1ot^DIwDi;zn2Lp-[{tl4OR;a%!SsϽ xJT9!yu}-uܳ;(5h:ܚ»2uu3 @+~ , 3fU ipl% V (} ֐"i<+SszBwR3V*!Krx[2HsWߚ{#(:j,60y2/=7Tӄ)h DaѢ}:S0_bvɺ gUYnPgk{! ,AݕqY[`q0tZ@˛ ,|m$lO _6*|X}qK{ybR0G`N.KyZҷܘu|I%%JN% }67fœ}u|ϟ- _?r eǸҼ;2xZ+v8E5f8=wN [mh3KV#Sry\%Y{ |Mr+D$TzdL} c_-ѱc1P1M ymN]E<ܑȶ__NvޤK߾Žr(!Q9e[gW-]i\Pl))O/,u Qh[qI ;M՛}wy|Z +|MK;I(=`FAv"Cj7W 毵xN뮾ٵ3ej^F&Vbl x搷vd;&;jp(|oENL r|_K ЯnHX2h|pQ%xW1x[yT\lw:r'Ksyk-[=woz*RLgo>⌐lj%cBtZ΅>R=,#y'yh蛄,ci\>slv8.SkZϾtԚvIcDb]9YtAOrmѷXhI킖d;UDRq)xZeթ ie?6g 49颣GVJ n57FZ:,!}E^ܿggӱ[abEˣaEnT"^n3_oLa\j"ײK R$KQMT }Ejԕ}dTL5>Ɨst0tv?l5u{IcR:g+\ t"?Lh:nl #ӟ<#3 (q դUڨ%>I{ j v ~om"}*ࠞIOSB9&Ilukfb`:aMA:D#9e6%1ۓ!q\+VPK* VfW>cO%?O3rڈᘳwmܧH$޾yE'DnL;kPCiv6GAa[[7Jں{P0I^4A̫S( z-ҿC#(B4o7I2&3 ޼&H?{?kJ4⦱mJ+\[8_U*-=K;˕e:eOk)52_I6&2Ug z'Qa/XarzvexųҐwɄ{lKY#\[ƟV$ %>?!K!9Fv_Ng#K^_ݧX$bADnU"ii r-׭uH0̦?H(,0s'b}_[ґBF3sN1zQI#8s@ y{$nmAAO)O{iȚdOIQy&u%}6l9x*eH$svpn8ʺ{ۓfsS8y=5,%I^R]K7E]q@V0. Pr`*Bud Ld>=7mhp 7a}^qϊP>RC, %Bz_l ˁ7sXns2 i%'t7!ג[]*^ۊ}[a$AfJ"_~TW3GShUBA,QJ(Nޒ7˄<(j^!=שN2J'0j ⒈@S.]e·*8s5x}MqT36WYGqڢOیypkc_)_z_`p4 | jOmesw ĸ;S)CܵΪˊ C'5T)gYle_{ gq+~iC+TB::m"3 1iҠB>B~tk zQ!2qGW;-$6F|z 'شٹ@AÓ(} 1y;:@5ED5^}~m$bܳM}q JR73sL= :^Xok%lU'L<=U\XEQX$G4 zPsXs v4nb [B~=BU& z(uIPdpDBgZz3mӊ."P}!H5wr99vF= } t Q IjR |'cl6rD^KbB'*x($%㧧d`+3:V1ndSާN!ȣT͈jNy6ڸTq7Ȃ4zG({^;K40KģJzĤIN^Jq'I/˽q{MҸ5ި:mΪ1zl[ŞQ-q]_jPTk8(B5=6Zuބ kH $ie߃H MPTKM+E6_OϪ*I[eystzW5c>h6yif1Ɨ$Х߶BZQdrܱ1$k yBC347]g}yz8a6\DsF3 U"_&V˘\ʠo]"c57O+`H-оrn_"$X9PhRV?xM(=T} iuDG&\ )Go׻/3`j4T0s1k'ĤFӤ#~046Q mb6# sfjmd^3[Y@jq,wU}\nx/_^U5ZWGIυ.NJUдsn7̫M i6.Gd3EY۠ iB,JHHA4dKq[I=9"Z/P\kQĔrgZ4mAG{iЩԥ;Q΅Sжr|,j"lD12S)i4A<:]\->^ܣ9??/ЙJs3Hk`OR =gE]+IrY@BXw852S H1[8\@-v@():e09jXu YcF8K,B,ĉT!kjgceyKZ0l"Wk7%s) ^54ݻRxkvwkhU&r)X f]RͦTrydBdes6d U&L;Y )N畘^ ŧR0sw Ѓؗ@'< lw:{:xiԟyOU=YS\80B5s9bg_-g)&5-ٲ &GR,4%\u#Z1ZtfKrbp+?zRoLJh 9&&>6d7<$aҝ)ԔAkڗY7W> {e+N ̾ݘ%dEg>%mOѢ %։n b~Mh и!XJ+30jKee`u|$x~tw&L}@WY yN\"R:(IeX:OÝa!-/r8f`Ѧ޽aTP.ae\z};edy3W[޹A'}2D|=)dǠ/˛seO+_en66X P^9kőᔸ]0tl^͛#tpIps W2Vj9Z4TY@hu4*hCBg?).n082<b >Ȩ;m槠HrW HmqK#~j?6' oV Ek~v?`+|r}s)~RӲēfKvX/Mb #qv)9  icF$r Hd}+M4+3ATγxbPܑj( 7-ˍ|n&.Q{dQmj7yA< LSAT$֑0V gx[99Uw0X6z)~'4qĤ~·$-I{gKabV|ݘPŋaZs,RH4X,'ipEIr0W V콭&.Ab]g"A cR/`ZJY mr;#VVVOZpNUe*KQt9wC|alRHj$"O SwHsiNA|N.}K&Z]J?^QChr@Tj%~He4T4$\NDk[$734f{*1v9mg\k-4l۠j^2xPEZQO?.v28BA*2U3FZݫ^0p t?$ Ld?=Z`5Ln_8,9 (~a.8=0\U4$ \.CfGEG o'N&Wɫ}=I?#\.@wOAl<3N8loDaNl1^{hE ]:cP CʵWǙ\>fܞcKV& (+$u + Pfi[s;́3DD9|hU+?*lzVȘ,w倒nXÑSUUtugԐcdW|õ[<)a.dn׭Ft1~9mpkH*1{dFG),WG@Yn/ܪVIdSGpJqL@HSoSt/ 0&N5"Lim;gEj( n *!>2&m>!A/uEߵq吼;>\nm0ps*I;|տ5qۺu=*=Pt8´/ץ֟-7}?2}*O\wEdI%BHfUZ^k,NLe*S6wb_y}I _)EAhcwQ-;P_d{}ɏtbu^I YɱQs.^4ldDͣ+mo#dkUQ9daK8|>mǓiiE7t0[u[45@؞?mn%bCX{SsAW?AA ~j^/j|zy={Ѯ{Ȱ !:r%<$m! =3z4vM`^whA''@1$a j  Z:`FٮϋƩ`bۆ#MVw>żjšI?XADlPsH= &wc=fvIxcؙ?SkK͚Yklz ]YuY۬guzCmbυ3!򧏪|HM詞~W)l/Y"^\nz0r]4{m$ ث~ŸCu.Q iQ`b S- k܄x `һ5/iߕAD:~jvzeqO$9-X"J`>7 }T$Nܤw(H8j)q)ё1 gO7%|nYN&ߡ:5Ig W6 Uw'V,1?SV#cuYZ- i\xqzv;G~pop<:)K-d:S.ʢI#ݎNob\-> {.-Û+}uObb\U~>0ٽL0vN=IXdPq`HB/-g2 NI3d=*a#s~?VeF`7Jəiu:D*"bNz>Y Y9LXJr}I* 53ڎSY(UMhUqaH@"zl!K7%NK~'y}8P5Q۩iOo_Om:j  Xx5$9-2'uup~2^="o[|:"UTQ!Ӹ:ym6oM"BeN!ކ0Zx! ֟(q#PHsߪr` ߕzxqhZBe:#"hADaёy Uj$3QD)\:$N{>O67Qb~$pAPrSߘL͇T6&b>3eR(Ɓ]Lr$Ǒ*u3Um{@,hjJ!cq׫"NlFe(1YdsX0\aisV y 慭YŶ _oӃZg CbA 9X`D4A )LPV-C@\̵q+w#:Ea]w*1O2K]'"UGCS؂x:``듡.eDxx8*v *4vԧoK|THBNw[QE1kO-HJc,BWntڅF6#^72x/M/jT3^O+iޟe_교DUrOj{#Ӏ6y0 66&b#NC[QRa+: []Rm٭ f;o|spw@ HPMfNbnt -r^6%2#pV>IIm88"1˧沁0}U][/nsw+i/NGcՈ}/q¯ I(ꎟS%A#W}{W$B _>"? /1F,< 9Јh/ u0"( $+ w#^ܞx>maVփHQ_him-?56S; R-{ ϡP3=m@ y@e¢-op#?E.${(vZBf|% RO}[\2TX^W%ʸQ 5[83ѣ=U\t"dy6fShղ[a/%S]ȵݓvX2/_e/АZc Ty݊8Π= ѯan<Ր_W$C UAqP0Ii)eTo UݭFqqr0ˑx@TWxEfQRuɩzPᐪ3QЙ5لQE ]_4\Zkv 0tBb槀1cjn{Kϵ{tUqQl] ZWHU%NF9C%pl.^svuLqܯM ]D>,1?GE{,]#>(Δ.Be90EK:Qb7̱=tMK.Ԥ HƠIHљ\rw ^-mGc@#-Qw5/qV+1v/ca9x*cYo("xN :3MnBfb߳ Bʢ/ ݭPWrKJN9Hr/F-ڼKwGn Pi/)HLwp.!Pxy`,#ϏuX5J-a}Fa&wW&KuR>TI)o>RԥЇ #A7 Hf.kGz䇜Ҫ Bw7 LA{U"2, .\lacT< CjxI['ŤCg|Vr#E#BV^ǣ,'G93Ed'bayC\g4xgdd7B9KL Iʱ"X6 [,gHXTWk埋҃+K*ʩ5TX䰗q*yh A*Pw7bv U &~+&]A'bu&XMKe4ķw)첵zp`OG[cU)Η_hJu8Y">)ܛ(`hiN<^p/S~43;`FuBֹCf#Ob4'TQxMn@2RD}S D~9qaxHq[{I \k2aK RZ%ɏ`_@/Z' dgx)L#<];oJq}?0!pi0D-Ͳ^gmkX`SdYG9Í~ =]^km-L,=iLɞxflA4pyH*F37<4Ә=H75pqBZrz#=S>k 39-mO[NVa=ؤ<}yղZ$Qv I|/kacK[Q*C5Ys݀b;h] #Nu@ ]_~6͈Cf> j,.S8pnvE#GFUajǓ88h`1#ajǾŇM&Tn;ICP)"VSU{G6dHi~7&"8z`Ku>2b2~mf2+\PPIh``{'WqSo/Np'_ W9&-3s|oW-AVopI IR~VA*Ҡ_>v侊ưhֹٗJ.pZΦܡ3}e͊D8UϞ=i\{:] @v~/N]^ФKj,005.4Taod,sPhpӼ=[:55+G3&NPF5mJ,?oMQ]k/2E[֤;cd{cmzX1!&Yy24iO,B );PJg7%tjMJ_ emPtU& ,2ΰ ꦀWϒ$v7!dlΥ^O :fJKfh<'OTU%Uާi 8Rj4*J璿Mi(TGU~/A[ $'\ԂABV} w?gV? 5\\p qf͍t_r O˿"d%97 +HHH iՀ%C a׍bqِf*,.(Yr|K2/IDQ>|NY.zͱ4}gJR1yڑu̵3ʥSEd2:U\#Q$>m^cKߒyi*|2繊u]G@ON T-{ x6˨[2s] ![e&!2 Nm?c[m iȨ+ЗvOԘn$nDn0g*쑈  |:$^. kR<Q30v$YebڀR?-n+yCrx-P,%8{tq|m5ST0R9~38Bէu8&^mô5TpH"J0W$XP4uU"@2fÃGl*K,S{eX@!'1e)(_ĘbW}K_lI rU0EBfKs~<l|9Xޓ h{ϟi؏Zk#_sdJE~(@C)T<9A#5-s/S.u`5̰4Ux} TK{v)Ibh1 HDMåQ&Na-M2XC#!+*?O%&>%野|vH36pJ8fr2)?6֨MJB<ޛ(|`EqRsG(K#v|'`">v"ZἷrؖcgJV7ڥ%MQw\{7\{o_H.t|n_[L DQ{-^vuLL@D% cꫥ>|$2"xKT'nG39zYA/+YX|6.2ku@ѬMlqv%1,5 }`hg;9i'n0'KeHG P5e-?h1] .DaBW2~iabU;V 7o`5Iim"m߮eVFrbNAŔ|'A^<}4PlQ-먂8Nh C/_}  0LuAGB.: aQS"~EUH ڇko&pg0bdSE/(UM 4cgDp\7ct,Oo 8=4_ 0%P& $C { (dxS|VLZrjIv\h;tke3(<|v@R UrlkzGF`}cԙv?5r^4gӴ¿$rr9v@WG=eV >qȻE&\$,2{v>fg<&w,#v97X*ňheO4j3uvԆyd8I؇&_*gmY0W V348d fpfoQC/ǀ3ʝ$ ANb>#2k<슣vyr!fO;v$.PP엥rx 2[q$[Ic1D)/̸ RV\8ŀҢF_ SD8ݛ9^1kg ~PnKUjkD3:~d?<6>v^ҰPo SI͛ 9ܮh9cp OHGp8Q*PSP#(FȬb@KP=_. :ǨMԎ[Ia ZFļut[=7Q8Pܰ߷)9>/Xn  Սl,hy; , ]#ܘaHpl8VO6Z I JrّsIĽn4|y HC!!-]x֬h., YYswe;>C6 - jXiģ⻠,ɯj'w(t?.+=]Cr@^я/,ggK_ވRf,X+3r)'agee ?Iͻ?L?Y #@{p- Ojo-;΄;; t3쪻V8ہM6[+1B_7<1!kEC K}r2@iU}+JZ hGGLޛZQcZEinWy5 Uhu!=C 2e9FLϬ궎yՌA>;Ĺ͛YSELw"LJ@.Fb0@eb)dD7| A!2mJ2yqqն(t @V1'xEY:X[Gq~I<܆XKLw Sim0W黎7c[H !dNY+wp,[=eM{nKN~լ`5mKk9g@F3^ss\w^l LLnvU˙ۆoNLqXc<=6jyڜA=䆩X4F Y>  6kcvGwIŴ1vh௑?5ۭNʭKc.d <(ӲSMpF"ڌp:ȱ^1HOYƞzR̜6IwRvV`m.L!J޽!J;y(?sE ziP/)_x9øPaN⑨sRNq# k# jD7.=O{9p Ie*J'ilaG8;]0exmzg!R3 ^E G{7V}0_]r iY>]4S0zw&An zeulJ9Za3u q0I] 8w ݶ]쥓Gьo2#arlnB i$l >q;hhzEtEdA56-s-/J&n'M>W9t  6D}_3l!fuvѷ Q3mJ,7FI,]g!G*Иq8`A{9ϣIYxIsvi\{ l^;#g+1_{<2SPmѰXӟ|q !F{Jtz!nC >I[K/?p˼ 'Y\ޚ '¾. VMN(tGTA0C)_tp/'V':Y 'C*v8{r\W<AB@:GlɹO/yv|3 "MNAyj, YB<Ngu*c)֘ lA{;@:U 9]D[5RUۉrفRC)M8jL2m(45fa 'ר'iA+Xg's~:%{UY.J[/y>KE( yGeZm݁eXK n<p|ݡIتbJ@ƠJ$4U DuVK^bQr5#0LlhB ,Ҝ[wdӫ!GHր_q3%Gpt< [Hza\ZG)6㾱.IXo#I4g F}5X`lF'Ti,~]8&5q &1>o9fj*DbsװRx|ng9jӅk{]cK-  "ph3N.ʐ^v+0ᇗ|ܭAq3z=tp .Z:NY@AũбwGAh'dr]DmN#>5%b ,9hy7*8 E,(#սRw^ޞg FI5~8Oƾp|XNF ߶/TuB.Z+p {^U}G5t뇰PA)e8=qPe@), ˪M׌,6dj},SHP繶F1oS=1bFS/L} LgBq=7e+,PΛ(Poq~>\X@ǵ'meDoC?gqdcͻ41F+\Yp0qz;}KRzuK9$кDKXŀoOE [l-R)wtWcyu,Ll餍TP2dlc=;JujWЫ5 |iE!ڳMiBr\[#^|NLSrR"t5>v8i]s\BZyRi'$*?^[ɵ^sXOrW#_ʣ`heEYM3d!ӟAÂIE9㊣쁤/3[ xSy^|>u1h@|.p|nUR~:2V|*5|φ90O X*o}Metͣo &ddUʒSWQ!57RڠJjwbSw\/DI_(HkAJL,a5`ҵn+!Ы=5Ցhl9x.Uc8>f2E2Ҝ(/SnћGKQP7(-RzhE׳@JL K .<>rgB00Wa >L_iQU<$?.OJ^,~˻5w$pٌyJbFk8fA'V$Pg1r]갲qWug^)ݑSr!Ƶ vcY52C"BPC(wJΥ\_DowjP7D=S2Ӑ4g2-ӂ1>na~>) 9 ǕWBQ_nwruKl  u%FV~65< R A=ua+ؐHGd&VQ>Md/SyGb ˋ CuDjy#p%`IFH1,P!Se}%~dʴ5k7dJЙt5PQȋOISEMBmA0i#e,4vt|}I[ޘ?K&i 2}ӒdXtn.%Ik 5>G(%H#71A1Q1:y(OD%6]tW%f!F`W.݇^d6da NwνLNduW.|opxS PdXw% @0ctN;z} Q'X&(OQ2t]`8X#mo slHF*KJDr^dַۨ}K n0Q"FZk|~><[BVxYT % 6#p"  c4ʐq_-! =X;: lȠaOY%E*6he,P/D*pʀБaR'+$݆%Fc5Z( HEwв'g҃ Jb#?BSxwbFCWNVx[1{faVh>o@U X?iG#jO鯡i3-b0c1[S鵜v+!<\hJ[t[ŸO٭*if^ +yNǞoU55Ӊ60"݈ qн>k&WA55CPeLׄX fcr+uR 3*_Dp5y{|Q^,_ j̈́A2[.'\};z{Lk]=au‚kM5p¿jꋅ!Vli/Xp-ԅa@|sT5A'1L !;査Hl7Nq7Z\%ilxVVJf~53Iҙ{5P egBCBal׉l/ c(%i$AȂa=kk7́$O6{Lems;~Rkrs7[aaG!Wf)ŏ&`M%͇kS|Ҍ74Kؗ O*klF~g!*<(huedSIM2\qW(Dqs:=M TT ?_mls%%[ 4z:#2el_ \ 3+& pŭ!)/FdC>2)܁H*1ǥi +2~9Kp9?x7_:؂+gUnMFpmpU6T1-nUnIBD\,b- qųA*²8cX@m&8v=q}y'?V H! Y&kbE9D!))2vm`\9Ƅ1PN,˜r%SG=3 C.~3JeRS(BtX8S]W3͕Ltfk"b ]&c{օN75Lȓ>o԰|.,z{;ƿNqH ~h{8UjeߣrpT _Y0>|x7 Ejst 2MSe6*`Qi￷P]Ūj]gz!"\i@T8[[Pu߬TIq p|b@c >>>k%uy^d*xF 6 w_rLVܝ7T>޺ #zb c /Ěy ~$Jޭf#W{i%U6뱤,m3J ,puM8Y- V#O*OJ8VVVo6?}:oc0yQ-S(É,o"^6guP>jMП~[LrDT[n ΃FAW3~P638˃]'6LVxymOpmUjP^r4ۿ~YȈGFȯSapۀj?;ż/{!4|ewdxT 0sTRUxN%4s]YEu,q 5B"])k;C-"Rs5yXwV{,CݶT-~]错,wc=dteYY09'_l](Df:˹L?gÁ&J.ߴ$Po :"͹r+ CJT2_qMI@{ep/f92ְb&ܫjzYI+p2O'?zpDS(ݲA@Qs=\ؚq c<08>39`45f')]p@OSHGLKc1^`c3FxvgIfvBՎљd@4/la.OkæBSfzP4E't/ae e%d_c>ir`׶N>,$BE GJ)®/9_QnS3'!6۹`fzhDUNS.z_0F/(Y/~|qEsD!t :ݶeDeމC <@ TG j×~(?87vMcjzoSZ)?X \&Q.cօ ƅ|)hbxI%*HFl>LO4@̳ |ϱ6,XV{j +8Ruf|1=؝ ռKZk^~;涽U7$p)fj?x"Tik|x31TOxEK+vi=HWw?tEc"-ڡ{\˧43ޠ۾zh*1+I>P]eԬ#'{ޗh籤Fc*jʬjOƚnm=p%x$R[WO`KGr*htq]]a*8VY?[%x0]ePr(*E2-= 7+a'h{h<ҞυQ];M!wSO:Am?MU5$d~>& LZ'l~hiQU?S wA 5p6Z*fkrc$i݈<ٴ(Af=ffr_$)/jYe3.#yAe FuqrqdĭS{B"PfI1Z&@>,Jmں+w` U29s\byYg_{nDqV.#v 7K" sә3DFHs2?c[X?L^>z8tv?7.}0V ~G{|qu֒SFKRJ̇ehxzZCy%fwLYZ5ÂSWQwD S+8"rW5eυ]Mޟfeן\[1^ɯ;ypc $5L@CWҾ<ƞs?WG) iټ'%Wt&-r ACHռ4[4oi:H@x:U:l7݄r*'Tu|rMRAJ1Y]eI,qۈ>!g u o[W"ySrF&1L@N؜rjbD^N>*TYb-E >MHҤDʹڅ#:j) a1aE{ x=EMږ^;wa{ ,?#Y q<2<#U#!HLr0|hsgU[~HxGaNgLI{%j"{mU2aJ w EnY4U$4cޑ;S*phl^QV@!]C SM7@ 9(UwmJG +—P{c&1!x A1u?j t>) l7t5c gY亾Ś+rF!7+g/9sԵru^D?xbOԭDA&qKyOzїlǴ09g@+7$~ȴG#Ӽ%鹇4RoIۓx?!񵍁H?@ > !K|ά-~>wt0rJI4K]i>TMρa}Ξ`ⲓ6ӈsݭW֠ۅqNf&ZNOxH5P,uE/$~GQIQ($`:{7?T;V_{=[Du?YZ[\p)(7Ųa3aUFr81/T;GQ4C9L[ 1IP_G;} m`茾̵|z 1O"@ /Z<2tt^5GmmSU@os0jUۏ3HZ[起0 A!\7+)3FD7qٗӤIG0ٮlfx;pxj>xx19ՁZ*wiAeM)3 O^q@T 7Б)G( H+ hFD-Lc.ғ!q|ixfJ|7ê~?NaEc V* , yzL桚U/o2;Izo'W|dx܁f{Tg7g86TJmZHzVeDw%Ǒ$+K}-VwuM۱.z)s㰘xzob\qP&d|Y,7e6eWt3a.<̹ wwHCv{#JX87O q@ ir(gA;$viɌ6N_73WV^*j1i^bJ%H8,t5/FW)wlc"`OY' E6F)%dݮFå/]!f[ B`Dp~92^)ɗCJ qsC/d>, F7f_a U .Ò>gbn[,!QkjqtƲލqrŸ`x7;zNR  3@FVX),o9{ WBSݩk,1pלȟwT1v]E"y5ܞ iw΅-l1"j(qi9#kT"N[GF~Hm2I>Ԍ&^' @l9DHsS %UʒAu G%hWR9I I>-ft8ӺG{3b}G} J4*ǸmN*P-q=1|EkOC5^YjRI#4Bg 0T_$)Nh\lQc%QSgC1(B[թo`T@WL4a{兺G}ef9EĞ<:%^m?NIGp{þ(@H]@Yw sKӏ쾕l7#c]DLއU*.cѱ9q;$j{\74aCǥ}0'A/r'  DUQG։"gZp%w7u.R_3P`&GR|TvZ[ nJ럭 鷱om %+ٵs3ipM' e 9\$]kւ|W )/q 9 PQPau HwNVuڬ++Ayl&d3gDn@H1L[Fw'%LA 3H9v'O_࣮S+`7ioId"d^$%NVVNFDoHR8I O\ղTahT:EXq'!wτA6qrq|HSgf._}#I5[J9}`x`x~!P)}a$_TŔLy"a*ϩAza%0yi8Ǣzn`xCrywQds!ᒋmJT48^S]̀+ӍZۺ }Cӂk7h0yrL9C+4ӱ\i-U2^YYZ'튧Z9a4ӈ/t0r~u7/3U!6Lk׬ye^NQZn \uY?ǽoeю9#JD!@_y{$P ۗFGߺ)Hhƿc2R"&FP{'R b>1"m_Pjzj,:c.cĸ 9x+)8Dd $jJ @)їh7S7ܘ[HB둌EOfҎ%mvQZ\{ ,Y];} }Z].^2~3E5bJ~9z&i͖ ^ =UQ˂DB{ur*(߰΃?3kUMy>z.TjyL8YiyC3苡M7kC~Lqq#]%gu]J$;?fTj-b&ƀ<۫]@<{A=oc|cm([^f0l"/Hn&rd<0T&Rg#]QdyY0,0}Gm-_cCmtekQ\Z{:XZ9YؗF-K>W?z} ql-{M|W{?A5`E}v42;A[ `^uq=*u=cnukE溰j'k*qr݂dacdS ;YDߖJr]՚@(ƺHH lgUCv|q_(`ޏ%9æ ɰC[rfos(*#w4a駼|Uot/0ib ezam4P"h th&k@%xvsեSqfc'o#^oQMή3 JԼ؎ra|)654dĬ?HCؘS}?= N+,b`kV=14s)&M% 1&ދFf&־B<"$ MY׮EZ(AH^_r.q[wK>֫Wt`;Z^\B7#wo0"5?%"^}B HU_cj)~שգO/*P5pDnHUe+(^bQlǖG|2&#@c,gNؔR T^[$ +oՄjG͉~Q(k^+V󵆭N`r6Tɦ@52O鸹# ”盺H?M?}׹.u%*y9NlCހśf'#-nUɸmVu^E1Kk{6ѦPɞ9Gl邬hwj]R0#&ӗ}Ƃ. _r+8*0N9v, *|@R3ťɷ~1$z[0Dإ#~ŊdVIm+鏩 i[s]\63!8X{gXZS#!ۊ-nE)x|.9"=Y|C`rA6kVb(84[[;52(ϧ :ҍ&-A MkȬ=Oߧ]Ϟ&v9q@t@gWb=Ĕ9;(CoyNcyeʴMpic klHꚉG aqA`oHiQPrsޔƉft3|Ll 2CE/I qA@9cG*yP6BF >+5Nt-߆"X;~.Qj>AR<}Y0*A1T0]'C`bWtqa$.n T yhd˰nȩX oؿ<_RS<흇pda+!`ԢhGî~\nsJemzW O2HQTY!qyvë^k @#LA[&%8cC"Fʁut jIe,] H}70w'*eChݡ֠D`{Hވ[pnˤGAҼ}fp凞C)J7G@ӵ"P@^oڨ Z R;2$>& o'pʟUu^yU墓6+}٩i* B蓨B7Jmы؄~Bܳ7U0h i4󿸉BCiE9SJI 'h&ۙZW+3 SЎ߾q|E[ +XӑsF ** y.?1_Lf||0r֤⩸I+> ]MV $yGɔլRYҠM/Vƨ^)UGmU4RJ L?A}b EiMD;[ 3a|KwGk(Gxe>АʳY|}Ǝtkq;rVݗ ]2V@0}tl^:SNo$.^SGlY}w:(E kN8D,#ԀA&>}G6Px]<5+"eF_:Glԑt<rQlo3]*y u ܇}Dq~7Kbi3AAxiSXJ>Xq4:eT$g)A`6DCH-ڀ` `=n< i.sv?y:wCgdiPk5wC1` {MA9'̞\\'gkl"S~+]oZp6Gڴn0eMʿ i²r#w /*a9a~ Ci :D4n_v_fRw2TL {XyۙkȥGgrlrG&߷nt{/nO8#> v7*(ʰO xſN$qP.B1hxV4_Ewհ\_˂,;oJF 2&nRP=d`~t+D[EiLm2Ό ]?0}3c+ :H2.'MRhoW12,C]?:ѩ`fU ҂h"4 ߲dIѬ8颽cYi$e 4h&" YgA+7?Y6.k9 wk0i">HfQ1@tU)# 9t |muLUHS|T]7EQ ;B-PnB42pլ%Gp%Oɣ~ݕ5bn`='jQ]ޜ;[DH߹yЊ:"Rr6xmu3A-r()FXxoV͢ɐ,O|(?59 ٽeEf-*7YI'YI3ARAID[S _\H`̷Aut2:FdTqsh?"k&A9|u oj%jcMT@~żƠf2A8 [tou?!LWLٕ>KcѦn8j˔_i Oi_pdJ$Ցg`NA&Sg?FB*C0!,[wUar[Fa+!錠_<|@/LyLUMDž9(X㓂3g4bF3T\C:*1%q+t5yx`'n^X?A%:o|s L5QtwZu鉴*Sc(CiikWFPJ22eUX4NB&!I%(]) \Z;dwtIu_q7~l0>HƦTt[0G_O3tm4Wlu,nХ2i_IkyѨdyFQuw CMSpvJzOw Lxb]bF!OCN!֨MV*W8xg{Ue($L`]<tNmZX%;ݣc ١bw0YTE2iҸ2BCאPi2 1:"0cGJ9d] t7/L8C!@1ml4S\ԼKK  iG`2~`R舚Ǥ$ DS^#S)D0N4FLFB1UɕQ|Biir&e_}ެQ}r[`&vlW&a̯=3V~g3UjU0yT(YTx+5EAS.\/kGKW9q$=RS cXGVZ#> F kW"*8[#WlhfF@X3 5.^R14sScK3ݞY"FXߝO}\[^x/h ݨN&/nqYg/}'@ڬB[&V`XPmP@qJ.5}7-N61 {2;h7GKG`m 6_CZي4qLD**b??_zDy5\5Au}CL Jhc*As݀W).c"Xޟ?1&~D,wX/&\SH-- vWD*LTsèE PԏcTîKj_VFh_3`)ge/h_f-n–Ћ;>C7 E䋋/ ceaIiDF.`W\d| D!ֶ)\tCf:$diw'(H\yn|)*$:um`t${wm%y#` @G ఫ6MSPzy)L$Fx4pCj\:4gF E$=|Eak.jCY  đk.TjMl*J*.BV. 'Ks;u]qڨ=]%;b9^[2̄ؿaEN}xX[S ױ;֒.H~S,"P4kk]jBjg^[mS姸7JiMZk~|K0qe!$Okq1 TUD i@klt}H bq@N("a:HZƂi?7CߨAՠxn MaU1Oy}n ѧkLʟU}j+G7i\Y=%8nn+^k]jkx\ϕ=r #Շ)J|+Vy|)IJl(@CHa7,)sᔑwj?B 3VKckH"8˸*N]rVTkRhR^(C[sp\iQ?J=~zvޓLgrR~} ,cb.5Vypa7 W6 :r d[){e}suZ͍'6/#Ԏ6KCp1c8D0&>; 7\nb| Zfk]!=5Ŗ $ v\ l!cL1>jP?zBD7}_-8d@ 8uBW*)>)6.+; {eJzkc$~E+iu ۋ\ۑ482fIGrJ W}rG8]V Ss{azsd֩܅4QP >IAk%r|.s#\`r)Ҩv{7-8գaF2|ô$wh^-|/qD0zQ!%.T;D.ʡ!!N5wCUM?hLwRavoÃ0.nÇ}UoӲ t9c^(P2w̢ ƏĦ赺Pi&9 lfy) W佴9|ݣcKʭ&zuŇV^2 ޮiʆt iK>b) =ԟ6gL+7)1(I aVޙ s9zxzu·'$/6%u%KF馔BkuPNM[sꓓ ƎUۄn FF6y2,quWq08unm$qE\>be݌(oZBzj{wvmdРui_V4pgFՔ̰]t." fnÐzָiƦ.)Y1bS3',QBr0*f,sDxҒ'[-wS<cߧ -Qg:?~ s~Oz4bZ6[B.gDl#Ɂ`V .ggDYƸ>&q-㺅Uq'7L`4;1,|iqu0Ңvme>tB8>weY9H`j U$C{lJ[|n.=G&ZT?O CՆ}b DХj{~sе_yzMXg9?TsQ%7d ^%LMFr' 7SX5CTw&yzWnS>kѭge^pO_Po_R#G :|'c٬5ޤ|78֥aYސgfH“gew}2*%H)(X `FMSS;A^9uU9.#٨LSk?8=HȯY]ض Ea5KQo;.:PJҎuVS韗zRwFKN3z1lFfflPR^y%q/gVqזٱSUz^Rww a6VЗ&bDdz)}t]:VM$4w]dE5'帄*}]ost8 &)4چ 饊CP5cCq~86%iq hX̪1hK?$ nbķ[3r`9'.7d *:S؃ea )RGZbEgidZZ|zFP/yXZ>zvJB" s /|a*!SB Ԩ &ٹ^-F6^$FkEa=ij|;]u| nĿI$ͳ@ڠ@|Gd߭Kv{1.W~9Lg4FGBH>qșe"H$4?^LqD5. N8($oWA<Jxz&|c뵗vL[Y~Kbd)<; @ě;` oz&i(jW,дT5nA14J5ȍDtvV' {Y^䜏^5l'Gk'ֹI6e_}XPWC9L΍l**.~s$4B cwލ.҉Έ}+" ;ꣶ vOYZ#ืt̶ Dgdn935PӝCύvwC0/6+9jg!Le#(EgF@NGx+AU7 Sʒp "w3[+ލ02?tm|anmM(H*; $ISLly=JisyѦ'[C9rr|t+1;G\$kv(,H-W լ;XԆn[/){\w3o:>I|Q տww  Ed %5-G`- zDŽȩS#}D t4f5`袄JFCWdh1()HI$S3u] PHThY !%0e HpSOe hV:LdT?g£&Rev*ୠۚxs]YIyXh"=2R |L=< {OM0g[L+62s t* g -iH&e`ӡdOR>߶02qw/>TOYUZdaZYI׻lC ?T}YxSP>@n(0OÂ}Ӭg &"G#́=evL9+xs(wOg9%r9bA;cv>w)b%Ĵ_{=M]~6ZQUƪ8Gp$xY=3]nRb;TJ} -! ΢_dPVU*KC(b1$RzRJbQ݂ "83@q-J%g@xö4mH9-_$6,8vn+Xf=F7)}ɗ\o35VDG^et@8d:9ʔ빀ǔ)d,"1z7y-ڱz8;(!.4  p/ XK?pgHԍ}&5_ \fT͂+ͤas6ѳ-"Z\3C=Iajt7؛Y<{0M{PE|"%[B Մ/Tns=A2젝,4JvaH L(dDzdւh!_[y=CT NۇBn&CƠAxV5tM`[\jBk7 ^'-DM; 䔘GԚko]3%1gF4O ûHHt5I> )}i n@60](Z-*Z!T9\6J:9>tGnu[zwin$X,H[*&d~_NߚV;GC?N(5H|\ < WjN$]w/t4F@c>Jj'yxAG?$T9V SqV&jBLW"*&D̖l#`9o\D]Lg`VS!:^`00x,ѿv)~`H*Ѹ[VV}(ZnYc> m kJwZythL܏OʶZ]%F/ הW2.㑾_{6}G[qvW2qJ`~3^Ԓ͗&4ްf}:J^w͒@)2>3<JD_q)FpS|LQ\ֺr{IC_cz$DTxDm6.:^5΀Rlr*2#'%\xJ޼aj d 󀛻I:Jj_M-BjٻHN1Te;;1> JJK765Wgo#d8vt^( vwښ""hK'ޕGCHg']6^ t9kWzjd ݔ}M!Y_RqH8 .m ; lw?-t<źY^v, DҀj *, tKRFgiՖRO,S$IAϳKcx[#|S틪cPNJ!UXюQI\NԔ,W^&(%aUB HDLy'3d=pMo<LDӯ qRHy8hv#ع6/f^?1k]G(W~2:~Үg/5{YC3))D/|fp٧h;]{'Cebyb~2;i-j;VZ̧a8iq(/hXrfO;|V X{%ATѥͺ+l2@dG+wQ~?~tekB)TgӠQmbtj&E].eWT^4C<>IϜ$^E&mS BXpvZjMhs]%n!~0<uk7B_fꯜ]1aFo_n!)TO9ɠLg\|t7Fԥ初%׺e}DXdvYyD@3X .|I%БZ&H\TV{* TVA\*߻rۚ}͸$(H"(%УRV9;@)y9dS&8+t&(Gzz1¬.4镕9URZiwȟoA~{?ť{X✠]\ɑ4H9l) e]W3odt?x<]_)ђR@v) z CEuMۦٚ~&~ _>Len29RwXAn=ޅE"CT,TIX*D)_A)Su4CY@0>)R5 %ψ~]k;SJq.bR*~453\eg~%c0E0dݭ{(H?YT7"UfW8?QNWO f\k8t̤X]}&.Eqxi";m[RMu9@KZqA(^sˠɠ-a.qϑ"!(C,Oqez0K:_Qi (O2TMݓ=Fτi^JY[ʢѠx8`0k4C;<ۅIN!OBfַvp)-Ptx.]C jɭ 19y9<|c:['~{9͡P>fed#"J=5kn3M~YSFșD02UsԿpYK9 2[Q@$8,Zϙ&d4w6^jth FveU͖32:MWci5/NE>  z*4QxSԇ$n PxRֵK>y9Y"Qbj񃃩Fn2U_aIK+l ;@fxǗM?+]˛6|ӈHS#O`,9'k9]S- buP*mhx8t 0џDU2+ !` 7,b1g9{ĖlAg4y-;x cƴF _ՉcWz3]Ւ C=z3g[`ݪ^*NdmqGV{-Sbygr"5X+5 HsCtS!Ivӌt<n6va=srf d#͈,硸dC5I&l}iE*x*"2H a:mscg`7 _?:c$} * [4t^,ffxα*dP=˥ M)0wDJ@y} sKsnE 4 к4!<)IS,`+UFؐ&Uŋ"=a<̣sP^ƃl t B#5{{72+ 0>RA#TpbйJFFI^L'wU1qmQ ~џZ5@5Z1D&jscLd,Ĉ?@~Fxw$?GQ;~V[=냲Աcmb䲾"7L,^x-x Y,+c]8"_7;S"P[|M;ɡ< jOaKC#\erN/UM }'ûh OZ}>^hՌ1`6л NQcX|:ZS&Ug>N:,c4-N?`p]]Gb݈c%02Sy#*gҖB ɏڅz&z2E$+] w~G^%L*Θ>k#$ftuI[:HH2O!?ƀ;|fěv}ɫzY&W^v t'I/ig0H"D7}'vjF*g_\yTJ֌ L↼Dh͘W|%}F [#Eࣺѿ3ë$X.J# #H.* y/8TZ^i,U24 x0 Ay?H}mb&JW,VCIW)_?h̢j?E'C+``V^]?EҐY U7#\7햧 JP{X:p]!+$]C;ƈPLݚHn 830!KV (Y_9fg 'jq.W:_{d` J9(41) =aR2rvS#uF2yCARI~J ¨F(ރœğ:͋s Kp aSeqߗbo\Ӵ,b}[t c0)|4ώ87A_- 1wSCxٵPgѤG&}.l KC%T-S Am. '}V;cwl*3*lҽC70lιm&& +F$}'5nXLt`)r#o䄙?&U#zt#qXuxWz&"yZjx0Wpda#w۟d7 {y.,76^^;g| ,ʵ|5ӦnX1R)zprkÔ{;+nӣ9R;t_ @n=o|o=%:X5.D\d=GpAF~.Xp|"%;NlYqVnF f`؛MĽϑ Qk< (Ёp-TMJY|fy͟4b3j{ Ww޸Tݢ]4gG!@F1N I'$|+1/eB=oxHh)rmBp(}}]cR!0X$>cJS.EÂ1S Jhc WKZtR%h{K ZSa=JyBJItSGQKKnިVtP}q|a|x{%_D;椾r67-(]hբMmL7<-FAxRdLzQ;4vd0O1?0{T&#4`y8lK%.DhA ~8If@U,c Вa6LZnKᗹyN==$>_AwՑW{Wc!O.;15!_WXkˤ`rX ?Kk'$ah"Kd4|}[ _*MgabNzlW`>Zvt$/{Ȭ)k ,KPy}e6X%KkK%\+^YEcC1Kxe6!u3v O!'a QBBB~¬ ^-Gn! _;aّ}~ ?;ƪԸfd)e"G-ee[Z@r}P:0W+3Iz߷X;- pdƩ1pX<˟ ,$VHLuwH 1P ,]P ,V Wcpy;mL/_w3ڄuW>G.+rXaTWx* މWx=RqCM\6ZJQr;"JX5%tci6?g;K"T0 sE|t9~OJ%Y{_,2?aHG6?j֚rjhp[p&=HҒ3+D^GJ#k,ØQQ%on7f)*ﺴ ,L3{YzbR3QC?^xq *fA6ab̝n"&V֎h_ ?o&Roƌ&N*3^NcNgI;pZ㛍 voͭR8jA%j%$t~QFI52?Dnp&Ԧ|^S“x;‘7c<]!M@>T+ bYP! ]A<^V.PZ]؂ͦ%64H^'2tAri6ߗ?˨Ҋټ64~/ 0m -ж܈`Q;/rߘ@H,L)YUSwRNM]1 uD=%ۧw)gR}9"il~UK4N#DCYov8TPR5…e/.?lmU{V#Au([l7墑 [gcmFGe.7/T?R2k^{BV?~ܸy2զ:k` ~ᢣlBڭ|Owp'$ dVY V ŃAȚk9Npi7HxԿ+Г!̩q;CѠ\>hYz6O*3 P|{cJT9m1JDq/'ST!@dx$T>/G9V{yUat Cms' 3`E[XqN̿`\peպ莲h*kDHKU+VB`3 ,?+m9)l Id=wn06L. cvny'gY \{.=Frj3{5?vF HcKBmiWB=Zı.C(zybۑE2M)Մ"at1P XZKUSUL05`4u8`bJ:`1 9h@$d~"YS&}lj6P]=j/e]ܺBn"}ȑ%ZߏH gIqj5~e4B:2͐h:= ҇x?XX|Щ0@~f 4Ĕ휺{n܍)ٺ&̉!_L0>>K31铞TdGSwUZv+{1.c3z7NnĥCK2MÙ =&_&ت$u62ٜ&D – ~hϟW%M]W~ޣTκ[5F%ؚ_|@kʽdijB}9l>Kd7c&o ";q4I+&GI $W0[2/J?-~|2,/tD:_ѧA7 ~-&&NȒG Ig7iD :'ªSqg 57drlח A+]70\ &vL扷t  CM o?M$mAD%ZtW?\bz4)1N rV P8st$e尓=#޲?>r[\ 3$ /TBcL5L1o S|pyEAf \9qsͥKhR~^ ʛMڽX/gt(\ K%Q8GlRoq@P\5|eq69Q-&r7ޥKfHƫgcGǏ))/eP$1:z[!*n'$1KVܚY,(76H=촲V+ThwV!> tbT;eZWϮWi`!BmZ;*G:Z1Ύ2|v=gv9;)msGDՍF=7 q{5O~t}(0W\YsQ{|AI"t[U2#e^lN}>ru1@<$w6tC: TTuUtQR}} 1gjQWT5]:d͝▹Mƶ߇]紟 _iS|k'grhc NcMKz)_ZTJ᜝E H_+J$ M?++ bs;3OAZ"B]!$hQQ>gߐms\.GpJC rGMZAd,)v׋cHÙxAF\٬E}A4P ٴvpэ9$锺WtR\դ _YSbsYmY4#:@Il(MX4}\m.t4gb ɺ3!K–$8u*o>6@-3:`wZ9@ $KMUx:KkZ IQj(i'e V$Y¬3f.+oDsԻ '"B9`&&$D8=!â)M=?B.Y gv->ᤶBbq:!q<›0H=~Gzx/Q3WNpõgzE[k:64S2¢QJݜ`}69{JW!LU)Ebs/=.}'#DY 4OsjW'W6@{iz5]l ԽzODrO r;<wp@T6(ji!<L4Vco24oD o aj9.wKdS ri%1U`&#di|oWI_W< v+]߯" 1( =A?Wᔴ9s▉`79z-FZ"3?Wh冈'/c2C "ጷZ!HJ\,u30ˆJhAqDfi<ezQg pN@ Wn!P>Vm'!o[zm]RO!84Kp6R: 7:dO)1X0i[BH糐 $YR!Ԋì1l}&UXK ګ.d 3o3A X^!'3\dW` 9c''c~)~Һ_3N$d2WT%Ev{.ݭϛțOg<\<;8dGUZKpVfQըUxHOE+U"XT ;z"1v .f t1g Pa$-x[n F`cd~Yܟ0~;qG3!<1=I1[ZOψ떈( PA: oκؐ)>-OYTalHF_qcWJm1cNnIؽ>6x\9sXK|ެyY\>}^{4n ވq/ϸ~P΀ 3|uETgyWHqdoE̟%yw<1E; yq c߶6SoA+_d*ᘌYRX<{o-nM-*:8hc= BOLDf,b!@C@ CEcgTU=©e"с 8~=2sVL2AZxv[D1~ze94|6~v:[ZojU :jR ا _>w\ŨxQG0ͿŴEfeJ`&mVʈ >ȵ"'U6?0+E#I(&CDžN_\3qD ;y`ěXrCN7&0 ߨ jWJxܻ*/ aJ)s0HgM StA=ҽA+e¿M AG,ؼݓo:9sgP{.i0m@ZKfGF)g]('mȻꨳB84aJϿ&'+(ѹkFЫ2hgu!>ߚOumee$M?;Pli.| RQ_>S^jqmi4ǢVeVYނU jdR4XU1rHidjZ|mi(rvhOy<xB  g7])h拍4,9J ~7<KCRSdiZ\J ݊ Rk]ۏT@ ̀#6]<~@+F" $FkִM~}[} q& vg𹴫k7aչYO@,=F_w 1s*y~d*Wg㨦CQj%oµ3,r^ȶ| ȯ7_@D_iM3dtٻ"J։ -ąh$nRk`}[{O\aF=?c :Z $4Aޅ$쮶oZLsJy$Wqk; &3fWフx p̫$!#UrG.{1mҢ}X'=H>ߡdFFݖ2 j%%m&Įm]8Tî}8^|P(榮9^ϸ6S(dND5Y[bՓS|t\WJfht C d`gW єH:!Co($D|כߤ7y ˡDqeN2`(YSlq$GwyZV Q"«WfJJKCu~ֆwcV.Oѩ !Q&0B^) dD>h1?8Yf[*k A*Ƈoyco381`-DW`zˤr}xnĘ|eċ3Gf ]v(ye={+0K[TNG7P)7TPh2LF."t >xLn-N/5:jVM;R|{4D."6v5,^兒rr!IBM"PB˴PQm_ f B(u-!ɍaCK\v@.gӄ ^$I$eKc6YV􂆿j.Ă Ę ?:@bV;4] IA|"or^5 JAlweg|bVya sT9$%Kdժ F QIp,i5V.Fy (T?ѷJw9óIrV\މV>3$8Z'$9zQ9 &cP `鄔y1'Fѳ'Sʅ wƕ\I@Lҧ4u4MV4:@i*BF8558oRF>#5%ȾyRnmV/r,Tj?K2˥<줋6`m'7@, d}"t"5z@#<,z2qZ &"Upl%0iUQfW1Fxf=,y `;!ѹ,.Qc^5c H[:&x8s17-ٮd/WI_Ǘ!һ^!dW%ÌF9;,!`qu$Nl?o\CM(oǐMtѶݴ*1mًZϮ/ɐƵ_da}8K01-'`/{Wq䰏.~G~YdAN~&ژ̋7|I\oՍ[0<88=1TKӻ`FO+/^'ϣ!5yؙ:'KϜ*e珮_;,ڱTFjO%P9E](j,Yࣻ}zW֪<)|:!aãjm]r:Ԓv #D`7s */fᏱ!-\ ~.WB Wo{'BČ t',/ORM 5ڥx5ÍѢXWk69Xrȟ&Deѡ }>Y.co X j5I,4ws"R;a߯'Qv,?e!o&U*FZt/kҎU7D7 r4Am-1Ҫ'@DI0Ti JTgGɡY|oL^rH7y1҈7(NpuNq:WLj s  'jBvvR%iW8Jp 73 +sanqZm2O5o8L2V1?ýQ;+$I |hr춫̈F'Bj,G+U;cфܵn\Y362˙H {Wk>Gb1= i@r9*`M6[3)7U+0gal %?bHq>q RG/ ob2r Gj}FƳB̔ }^֟oV#S%]p2˱D1< ʴN9!ףP1\8V&$&G+t"3Z~wFfx &eY.W;U ZZvua]cV}Y[2+ji?c*^lf>4q^Nɖf:PjO%ЗAϘmʗ9ZG[Uuy|SRT+1rӂKɘk{K)diOQ2OE뷒>?I1Bb];2QOePlFDN 8SW@Y.݀=x/_Qjoe&A4 tH_6MuMҥ.AW# Zp#frjѠ1%tVzqףqN}L1t/,Bf<4S 8Gi9q9 Ts-v{D T*6OEzO*K(ء ,,-hJV뭡n8ۄWlr: r[nvqj]?fvMXltq\Zfc@WqɁg72]lC-dRx!1G>8xnba޵U.ČyD+P5+9K\PI2 Z7 gs(<1TE9Vq;Tqĭy2*OF#o{.;?1Fi9掗>0{* .Hs9vU17HXrRVͩuc[7`y&tJyD2:Bk̡Da.$T$/.f`@'b[3"Kzvji6FZ*.P38NegA1/z׭>kV5`~gOʟ ZE ]ߟ 1i"\:+T6B}1uxHH|5]CNC,NL@G[X1 L^Cǿw *KH Ukг~kVDx?Qjj-t> ɟ8!oڛ=?`e"v l[D߉~^~Y(/dӱ.D6<ʻ0*QZ:EI,+,[hv‰\IKI쟕waItU5D/F 椙4kCJ?Ի"R6OR"m4tR9nCzdSB4~Tז*ʳۀ*Jvc끖Dy7*J{>NL' k\KP&K)4Kb" QE+q%IyFa•1D!wS| ,eeud//Cfո]ە9uzA) QCш d؉(~t]h*?NK߿/箘o&IQ'wv]]6~Z;d#%]FG)+%{’qu'L=SFT` y?"m~(&Vۑ,ήŧSWhO6\2]͜ndB$.0z͊J59OyG3'38AM-1b+[<^GH̳(35 L88E6&/U+}# J<ၭEcɨV:V֊aOYޤ#}1q+7! qb96+&3Aۦ& oE<8[xO`ϥҴ3^8uw -۰GփT_lʼ);I7ǾFM2hh+=BN|Qo.s1Ϣh{HJ TyXeܓpc!_pH#uR1-bV-)#OU;7Xñ¿E?g|9屒ܑu ^xƆy-t'H]EN;tA'G7nv-Zn*5۾S?qwj"olS&w8 aG@~ \5??k*(8 "b+cC fDA xV%;$KZ=0Q Cjl$ha)]!m"cD.$}s2!?qKZevp_8tU`Dzle hEAQ=+˱=ywu8&n2|&n!?UD@|D1\ l.XW=nwLاU2oag Bcy FY6'R<ٝqOHeqv{Cw軲maT!8Aap԰H&\'ɘI.uV6uPx*&_v> &ڛ6ҼisTҕ0lV!ŻHCz6ijXm"#>|afQ9XzZ?=Ne2df+,@ "J [I?.1ސܖu3H.QHpZqlG0ye{](p uq?=sL=:$sQ75ŲJ%Q/@zSOn=~᳸9x-Sߩi_K9i3A<_#:DM/Yh@"9v*#]" C/h~O.8)FCBAC殺l΃r |uKQ &V;yyEkW؜#ta=dO6hsny" ,T[԰j7^d32on׎)&of$~*/x̠UՠfnopZێ8_@;~N}cy\ԨE'ʚW̰`BJ`Ř1iT7O;ɗ(o/Ym) (⟦ "<2'^skssK kA'[Jv jDF DWXs 5tվ*؆y&*ZL-1揉rȉ5@_+yu?fq*72N :AԾlCn7{-qg!b(R.?<ԸU(2]t Z/ PL->ך&"p`Uɲx"Vu%5!4kdfݑ Hr_~p"kOLqAZDєŎƟR;whCd'7fEC/ ^W{|˵-).]\ŌS̯NɜiaPjv4GX&;mRQc1<$͊n|#M0# ˏcAU %nZb[va:y [yFkl"1F/ODf4B0;,>kؚL0[$;e|_#^=0+QT3t~7DdWYm\6#.-rt9)~I? !MR͖a!s OxK@ߗ5T}e]|(\JO76AOs/G=QqX^ٺIΠY0W4Е_߫( `\1o#uR`^qԁHI%j 8` U]ů{}9m/);:}ϫtbV: 1hjNGLMv}hpY˞oD 0a:#8A\ {kf, :E[bZ^DWxm X:&p2Sm7; Գ"w__*Fu 7)@eaɠC:ߞ YO%`[&e'RdYlw /<+;~\{ W q sw>/|S )zF19szaB w-xcR^V)%MNޚ ~ <ֆMso9t$+TLyގ;.݁%g^35}X]%DEX88^&wRѴ syK;ٸvx.8ZqnaA$-ڲh8j4rBq.UQ$BEu2i^O5$AZנ27:zjKRt llvI(5? AndG-(,(gXTDz!X}v6u,'G`$G|*T |JOR*rF %SgءxBi *BLLAQAHo(SM ƂjZ((ݼnlUzZK C4ge ag!]UI/8Vh]+<Iꉸ__l,܈S }'TKHY HEYTJSD狃nbCx ht g)dW6/8N{g\(,:&'Q@b^ƪ*H!7R,&y#8B,4sq~$: <K8C* '<%eΥhD]34\rC˵c[`UC3z]_9y(u)xTN" %?A>ͥlAqj-RF<ڢӭJ a]J-X9Bˣ/BӔ&ʺ'H#T V4@,n0쏃2*esw4k&pdt("ah WзnR{8Oq~So{YlX0s?-x.j"$:ڭ}^(:?iuH!7͎EɳXe˳~h;F9NQ|/Itibʈn!^A}_a(/OE^<' "|yRcT}l@"dg.XƬ?R"I,|gq賚[A kvvcmnFXU&;mK ֝<;.TjF*#YUmqGMG:Jͽ1Ȍ{iuD'+^"?\e6@*Xdsoؙ)d75[c]y{g,d¾ʰ)Jҕf !ap!lH+U#2# BEu`ZءW! #u|ٕm>'+ҒlgPJdD7>.d$KАgVF#8{Ւ1zC빐{8cx (?AH@Y7 ^:#`wY6U[Va3 <^M,iDŽWO7X LdKZ^\xn^PP.aA.+V~ښc vQ|5"B% .cPZĥ@YN[ ,{ d^5TKZ.0).u+7Im+4&9djo7U]W-b^dc~/^i.̷r7}Wh|K1EغchM+w(+TUU6f@=yA#zp}#$]ҾvRdd^. Տ_ ~{?6gs,sr Kۼ1 XvGEըc|X˵t 2&b".REAbz3]^PX.|u 6@jїqyd$MĊ_܏DCJ;D.tRoSu#$WcxuG4Ziu_ # ΀ĸ=ol+SڄUniUxaedЬC 3e9?P`LGwk58&W4aޣ6a[Y=5/Dq2%T6T41c^ ]HTI ]{:V6YA=8y6p74*>x tK5;zT_jHޜ%rQ$b]-H]&AbI;Sս. dr#jC)>_bk<WD,vϴ[(~KC}9X~0"nB.WJot: K|daEt͵-&E#s Nqv7g|tVqe }1;̌(%@_j=] '{/,oI(jk:jƸ\6 c2f?+9D,JtBǀ0ۨY֫G. 'Qo[>7^[E@ރVMwEE0g"% H<;J*zi3.B8otkSknO5&C3]\+ͤjEiKjx;[zORҫLA O]Cm/Ho"N[%ΞW` Uu](\]<}2Z ){miHDLK{AS5J;G;͚`_q^Mhy#PdT xu uTsҙhF'k+,Wc(ZQH%*v} cT\hoibRD>WV Zȉ.JJ15$yEGPi@"譯Fuw=ܙWcmb\R{YQsL`CC}; }F2a$I?20s}f =Xa6*P V<ЩT4p (U1vL¤$oM$`'bS(sV>F,T[ y 5J*An2X g5'X̮O<)ic87%e1SVKi3Y<*0Lwߨ LD~>1/e6VP?a2WM) 9d/~]@|hnvQJW%q>cȄ==$8ttD˛V`x 0 K[6`Qbi\Q^*Wa̶µ*nO(9v67u/_زM6,mZ y )؆-K,B15+9zN†Ṯ[7t9e"?:ncT:wCXj Fyq`iQwq"vjor@auIO߼eSV[ȃ]tV̂`:}5CZ^F6^Ӊ/`):)h%YrPKڑ3#[lO kP:9@_Hϰ1M'7ZIKW&|y ;UMm N!-(v; 鿗-gT QMM4MSHe}%6\ 745FoޙY]~%֦_,m ]O[6"MI-~ݯösPI6u3ڢsta8ʔvldYZC KS"炧8ل]V'T}Zn\ @Vbiɂ @IfGl97рTLa0]mXDӹLUfEDYX;EIf}_OHĈ,g \Z*7WoؼO֡SE;Ǵ6:}[ûPdە܉$Dmrk΀[AQJJ5J_'|kS(+!4}c!*GX'#_̸;ٻ.J DEa@!aVa~HX}6vRms&S?H xq ʘ<:kAB9>kEa"?o $#b l_KCʓOEN&%O4WDEDK(AY1(7$r^ϵr u>hu `×_DT"n F&Gu*nz<êd1 B&c)Rhx4 `gt=P,mVcvh }FI=}D^icu-eA>gчGFT}0xX.ho` O0o-C.GPԘ H҉R؉6E,Y,W z1SU]w2EyĜ52m˨`WuIWm8ڨ=D``ց[7L'5h#v$5rAC(go;qtGO YcAb{X"]l]&4EGvp.{؇0߫Ii*ۡEĖEg+t16)e;HPm>.uk3P;f"R[ʐ]SRS!GCV?vYXa@Մ#8,Sj/n3mbr7ZX[Ȏ,;f39R$%gGݮĠ k/ZZ !p[ 6d::DSHHWCj]5)~ʠ%oT./FG4N:tRV3\=.NMxJ ls\;e5u\݅GU(GnIըej$9ܯ$p3ؤSmH8(xXgH6<PÖJp -=¨ue+/Ԓ]Yxuy(UIg b\.8dX+N"+&RI-l|P3r:a=fRg󒁄sSp3 U, -'HS0Lۍ߂- n]8* PieNIb0٧VM.5OJdBqů3!,[`ST.w M~1,Y{#ƤwLܕlʣMnܽ3&bock /歬gb|moopMa)y /QG?sB84iu+wXcM5{=3X$^F¥?wut_ʭ<\09"]4Ks=&!_Z|#@CNl{=5SMyj E !c* G=ա?D\q\5P+ $Xؖs#<0YYy j>q|$;.c=2p.0@O5^r@mčwCR*qk?V7;q9ndO^kT9zD𨈧.G/;[k./c:;VLNjeNPꑦfY:P%޴_#ժrޟ3F71^Ψqjї,pç` AT:n=vq$!oi"Mkx'fLIUV)d.|Ơ7,#8F Ri m P!/cӹeMS%TW(l ],a5F4PlbxWGS( _TN"H Ca#{Q3u^CQ@Ѷo+{^4PKS3J${BcꚝF3d {P nDd۵!rMt G,`>bjXW]Su} H:i++MTALBjOց y 0_<#2qR9w$|eP~ͭ"ܣQ@Qa;]'D<dC3!\#!EJO 75b0QMѫ䀊m#=4L LRiR-*:zܢ;UvA>y6VLi%6WߵL=Ik^t3-]x8EC-j&{XP aMQL P92̭PAgo:[YI >cxܵ+9θܫ er Nԡ6m+*VV5Ϊc>ԕ0l '62DՂYszC//"aI5Iz 1G5-{+bnKYjOoqL6Le;xbzbzyVWx0y$k9}uCU&b1=M'5#ZѻDNiֲ>$UH N q% uE^fUȺ'ܓߚZzñb?)и 867 Go*0"rvuʊ8׊<yEՄ622z6A$q02+^ޥQ_^pLԸf/5qs%P0^T˹(2m44Ab)F䱵WgQ#ly9 As0Khʵ"DE!% a-0m_ wi͙f*g-TqK+>P. ;~t0Vc^JÔ3A!c6ؼ]jӇ1$ z,Hn8H#\ ?";5 9mͮYPE{ sP="4Dw֝MLލi0Te/Ql4'ase)L\Z㧔Q7bC6\I-Ng:eoj11y^j>[Z2XygۖMƷl Z Qd܌ggFn78VX?`z]:| \ů5ekd4a*X^q,8p2;0r)i9_hlk?#R]IR7qLcW_D]4R94E隐a81'~Cd~}za'_;#c(=fqoɨ@RR2d?.oV=Aˉ--ԣغ`)w/Xeݥ۞z[ao'g+^IOQ;w'Wb2v<3)!^| -R(n~bjYElKjZ0 STv5c|í̉T<\&HbZx{ta- ,MF5Bɺ r*|(~!Ɂ~C4濑~҂ ޔԲcot1WSe~_dEow9y[κP[O]C5RWh̎,ɃC?l+ToصS6麮޵nra.JԡU5H2?C ʏͯ_tCc`29\ȉ D7?:O5ܛqc[%ؽcf} USHox:VHKbo&U&ԆQߴ[@i&=6k$ -Tl?iO Q!^]4blAp=s]};ʹpn//IQw 7fG$=tUh W8!89* ,oZbe3+Zb4ſqt?30b;Zō2G8wxyWǕvXCY\2r/cP=7^,el.iM[^D/ZsiOh,6N0AcxX<%`zH`J*Al$Iˇ0r}9S\9*wup-fZkމBAj3OްJn,kqv<Yn3Ҹ+A+yTefd+4t gS~gܒz;Lӥo}%jAQ~/AErla[WQ[ӂ䥅<+Vl1pƚ̰s!5Lhv`RB*9Lqa^, TeL#֜5xalӟd /nW ǥv\&{ZF9aV9E+C_߫=)0dĉ8Q57a91U;^ɸ?OYLQLUFTEgp"Oׯ];X,T揁I+-@V `o5M4vCVGсeW  =lR `!@DL4G/7@r;)>?4S2,S.+T6wMVtm.9䌋п]K_N W5s10%ys_dxWP)=˘kY3*$4cߤ Qos *iU&C@Mw2okvBO+uMp&/KVU)@d6RYx!/vLJhJg1DvEv/Ya7UGE-~WJZGf4"L8c@֠A졹ul:o|;m5&^^܋@K}YmɧMs*@os՜ڥ\u(Wtiw#6!^2`A Cr!q`r\C:dl23 5;BrV޷ !*I{,6ƂτPc|Poe3k}#f88Gls3ѩOH1}89lT;pg%&0bc?c2PgГhJ̋ A5C 9e⹚ LsWCabf3_& &&yT!5 a )m4㿶x-V醞¦?Fi35*&5PABpjݷo\;9{q+HĀXuY2G/@Mo@( qCeSTZ9,ʾٮ1fQM|dW#>7h0qIJp4s蓟'dl *@9Xm&)yL|ߜZaAGt<neHR0|Ҏ1v6+'pbcT`ׯgg]vGsg^CK/cn1!7&Z6=X)Owݟ w̉Φ!qns A/$sIqj?5{v_ݘ)2BtPv:FyDBܞ'wvflQ#7aP:cQ*AI ]]%@m`n~KdUgElЧeu,*¾ij [ee{m)VU0_ 2z_]A\Z_;Hĥv*#śvѻJy$ѱ8t-*mEwћIYv"V'gU95{N >C;=P\`\,6^-UshʕcɕTۼ c4˵\ 2ݼ!'`S`mZe]?-(GAcF_KH#}+dY~.Pv&9 U1;-, o TUL`=5CQ7Leԟp"iB˿XlWU?"TJ՝o+MD2dC)P= ~Û;TF{kn^Y(  O"!BYIٚ{c{$I3 'k mw\f-X{Ư!c4>ˏ#4\\T78yN':_ bbd Vdcsrb j4ɂ 懏){cإLUW'Z>.EjxwP͉: s;џS_Wc\ 0)6D3?w7zPF4+޴]䲤_ v{mq7jk)](CPhʍ8>Ҟk\% wHNnGɕO$L@M>'BQ d \SLL ^Am /ǔcTL'Q뺰WaZ^dvA![Ih^~Hm1Xs5/Uz6^)2hȒWB(Kvs-8ni3RY$U#kx jB(]o`O*W_ȝ;֣c#BdgȶѼ̯p`v"]=:$D4 CVgV&oQ^uPNK'[k̄eZ82An<vCZ£\SDDHq0b^hu:oEiդQ{ e$|<y.''Åݫzh) Q AD A " v:+@.QK'M?]!XaUƐ A7NCMc{4}k3[8KL W azR:İA9%)&%%S~[и0T;JPaAB->)8fȵ?=łvonG=m[+=A3rdNQU֮rJ=RG;8H N݈@<8=;J%|v+uPqz F@[e%F5 +qS=9F"49$Š$`׎W#r9I3܁A!ZEб4W@'_jyƘB[V7Jy6Sb鸁DOM١UT}|}'F讋zʥWt2,'2Ԑ_aCx9YH<F_5Ůς$(^r\[4ǥK)擪Y|ڝZd 7;7J0:&VSXuo~(-nH'^mmTVg0+oYX >Lc 7Έ8z~r".:2u)fg2]HP:,xwnw.)yB[%7,΀>;'7wYжI v`kmv*ȡI7q[`S>gw.;A@]Yy Ø~YLA]4678Rѥٰm[g`)N"r?²g[yx@ayM\9_fi[7mxTJNJ~zw ;p%bx8p;>H^@stܨC"' أdP )6л26z TNDdA@i _}Pm׻!14oKz6,vrH;f}<6ub%r&BGE$*廩_FrrS!_;ٮj {O w(*꒪\ ,l M\=xsA >8.^ r nPp$63a6ZT͸HEۼQ0!KX%ݕ@P&׈fCLg[!qqJ@}p5e I v+ɉW8Z*l˨rR;v6$L #QEVp>zxc}@Sbw9O 4\\Sj/ JQ ۄ8XvH>H бWO'cqc$g N Je4L4oԙNn`BSS;RM& 0$h#j2kBfx A)EEO0m K!"n(dp\`[/ڻ=e6-@k nPzXC괛f> ;so68T|+ QG ݁:w4 M`'iTQIul DzUƗ}8?=GLEb%Hw݀{rHD-킻0b!poG3gjTiB+]Srh u.zNYF>їk Q*!$Mj uǕ3O?r WlnBڡhdgVRRj;bQD';k Zmjifeu^9Fs&۷{Z~Y=s_4%H6sa2,מu D}J nD3B/&TsFxr^#oţ;Lj;T֍ X{i6y 3#wx2cuFXQjS2JHO9䴉ۦLG.F$T0{g 1Xd*b,7Ud$cgm50z~[fߩFV0!N_O T,D%dG_Iߟ9~Mw69Sc?4WQ y4챙== ~9Eeȹ5[ڽ jxXډQ^4.I$RsA(YȨJpɍ4DRQO7rLYp ¬9.CMϊ-w~BzVt?h l9+즁R)?V${U܁L4W)nROJUx䢓&8H^iT^?\:l hq9Qv16vR(MJڤ %oɰ^z(3EkY1_Ck+m;oT'hܬ:"xHx#N6}u1`Bz]V7q~̹xAtEthĞ|P$Q[1G`_\bȲkSoNoKYe m[GհwW QR WUogvO6JG6 4Q*UGr?kp=yh~Tzwu=?13@]Olb ?1K3kjŅ~M:am30\ \ݢAUUa2 /NZzqT&SM/[? ZE|!L̥RivF/7SQvՍ}MCL#Nwx/G?*vr¯?vW!r_2^)RL:JLK K-G6.tTM/2~ ']QKʐ dn|]\xmAGi)_EIH vo nOL&ߣ,QʝVwBM ]]U9@-=ONu0MMƙvdWhRۉ=aG8ƠM.+R2j))Hu!?IijO}NLM%pyE֌$E+aPX>pgk($3 пМꀖ>QQ$‚Pzz eMdV:P~Ueb-ECґ baD`] ͓ȲZ_=4W&}&} $*yCv<|`@:m9/cVV6UՎAGVW.{pϲgg&XDr̿"k#~;hSֿ)h͐d ]`#~ڌvEAͧ jSZ#Ͱ }ݒ5Nq zfdJl-eTxU#))"P d_9v94d}xm;}Y}6bҘ֫~i00lG8O:5b4 G;BS)nӭnw0 sO@uT|!6^~{|Q-4D7~JWapձ_NYQDz@>9hZAOD zgRǽ!ȈYY1)U5@Xv,fk.ՕA.lÖo1 " TaK݁g(idRlL,DŽZ1in` Y03#C >dݜ|oh3kG_'C^ ys9/Jè,dSc,224nӺ o,dR5ʵr`<[BQKqY6T-KB8LʰA; ΙO~j*QHT"w$Opp;(4 Gj9le)WL,|*s䖪5Wt7E&N]^VݲJ)x !%s0ٖp:?7O-" E2Qw!~Mǥ{+3b@:E* V0u*jӁ1p˛!PbN/}b+myxR 1!Xb('q`rŚeIvV'#9Z>eU!!(qy6hQ~Ď7) {yzEt(!]՚RH3p<PsnkO;B{6oJ-? )EYk(P(*-*壵B0V9=ĵ ꂇ{O kE gR#Mm?plsl#iҲsaBcLcm\K dyIj&J܍sӼ7_M&G;;AG꒰t@t*S[l?}ϐ~ч*t%1,EDŽpȝ-%W{>C3Ny=V\b+q;_u r_wJ ¥N,ojXR{͂먇%{U"7׎ 9O_ÐmKV4!qhWj6qB\A#TGY<*V:()ג7c"rHlwd3[dvSNl-QdٵϰUc]k«CW,\,$3!&)RϺ<,|sQL1gC0<ڹS}]E:hI "IxWbAUIkt,RJEYH;2 ixe<0۩zoS/h/4?jœCRғԨJc-t~gJ/22tE=2Ȏ idV0CB h^#87p_'_u6i5%ވl Q|)K b3gks Ю-xPB,aoWq'8-#ی̚Z4Tx>ۋx66n&L &XPqV!"չMLԱ(x>@ t~ H3趱gǐ)Zj=Y$p-A:D]MgA%C N6)! Gbyم!i,`.Wūyh R½վ06OV^(3LWf4t 7E=#cz>hq+*34#S~]~_J!9EPgk#2"tc$@mvUE ʶd6.~'s׼2y{٤݀†-{]m 4Z,,m稀tK|UuR"S犬ܐ r򦝂40I{e(,АD&vS-*LbڬO a/R̖'C)LY% ԆU9E̒_!7@Ip{J}0o],CƛE=[\1*#tN19\ )g-]N*i+]^JI~XfC~~$9QJHkE / z=& G!hŸ 6؍J7]j$]z!C V޷Kx.LK'7)BLA2iK"G";Nʉ# shKw1_M86)2NOejzFyy R<7qzCH_iI3R_8 hЙ![{z> jhG֪=#)uQaZ# Gnr؋{ &/Z QG=]uoHOs^%i2/HpK:sH{t_J8ѫ\6C4Rh(( 39l]/#!goP {5HW_pQikcAfFo?z y>;0_pRX0 y"̀ Ϗ3u)!n5C=RvVO w5ijU%L|DI}k6mҺ7܇3NK'8)'釢"l'80m~@3*01r1d +`hƏ M * ;k1.%?CЩ7! J 6i|iAd#U|=|mѥڍ1ֿ]tf9ůa Ž{-bZjmV'd o݅,K%؇(A0a `W fVMInYaɭ<= J:\&tn&cPR]$d +?_VuHujJ@}~tIb_'XpDH@3!N;D#G+QZ}whg Xu`"g:ckD%EROxuV{=JO 2]1v"@(9H]V^9mYK6pŸʑ?kɡK֍i_s.ۻpJ05~`y$!Bn2FEXv᎘4ȺJZŒM. 8ro ڇٖWcf[wQW"F}VUJ4ߩ^` ̮Q7. \LmBN>=gt#ﺖm9U5Gxzu<*ۿLEƜT'r|IP&,7Dr1q%vq0Ul5=NV@ûᙛ*WlW]+\[ں+'u4\W!Ww5gS-a0a'3VP~܆y4 r-kpH5`|6N?uORR0/U -2tR\CnuNygc*εRЎ [ K\3tn_km v)Ri)}ڳIc^@sL%" 7 p3+9}"aRDג{—0X nÃ+Pj+G8p#p z mnOXN^Zkd @[ȩAbW3T9H/.">àmH .W v3KFfJ -e-9^~q ?f=>ukKZ\# %I{FLΑ ēJdT$C0?]z>ݬhM?lA*-w\tt@?qhq."kD>:FT\^^O{ dS1I\!ݜN!Eݗٸwl|!?CFGWUi XV3HOL13 GEUZϤ ZՂ: .Ǎ\-C z*LiC;79Z1ō6pvS /1g" G 0+jY1g/IbKBn'>}+y+n*91|\9W%jeX뎓&X@@ZhCypR!> KvaI[&޶UAR4q|dvE#京(D6_zڥC?iLhжzhӄ!9&#aǒ/)5?Dɇ8Ʊ1L<‰& 3guV}ۙ/q7=>h\zB1xYARd/Ljīx;i hfS}fl 64Ml5-Jmo*=IIFv TZQ2Gbd\ʹ=%cv:ljªMHAŠZٺ9V)(IQ?09}p ) /,(&pYo?&^T욨 :ъ?>.lz$ar>OV)P5Q-C)[ėݝC򉇔PzNZ*,g&|txt]cKzؠXB뻢J F srhgy"G= n2˄;4.9*5f˚2|&^%zQ+gI?#U/U-ԋ]l#6YuЏvEb@qtQS2GQ~[Bi^õи}=;a%ɚO%;tْ~,p lg+Gj*2oc]JIa3pcOa"w2a.q_.B{]T5ߥdۆUM F>Z/ _~nA HGVNRLh'@崝P4Im,iKHA(HT,n+gɋ,ztޙ/f IRZ_Y$م‰a" _qDؗ6uX`.OYǿ'1}7H(dELDvsY|G$oE@^d_!_ڰԧF Li%jC}cY)ef7ulףP.촗wN\@SV%rOjOרdTX4ʱvtHM5&7Y6t7 /XZz)tڤ[I 1x;;28}~C$qoZ)JJv' l[W[NH }pwc*@m軿z+z1`p,pOoo*TnR+3;jx{Qb-nzNeê⢼8~Z[q%ƽk(âG2ąԑ78D*aû̙qRzwhĥt'駫Nma i}>X 8iL~j>žBq|yX|lľ'3yUU> 'yH}z_N5ifMQ7[*s[ -ݴC![!Z*Gg5+opYѪLxrd!JJBGF{6f}o((`g6D )D._|]]7W-o}W &}hLyܮ.g{K C hdM#yx>Ҋ=vlSfS}  /b7B;7j{EF֞V \5Kj.+b?=魍7@Z/øZ&b[sSv O[&"!]H!΃0nvcJD7٣^IJ(c%.ƦjM1ueubάI7G|̣dP^BvI]c'Ԛ*YO:O RehzoI==mt U.) vWnc ?! K{j)l}I0'U8 o*ܔ/{2NӝInJũDf:4P7@\Xc_ hq8Cs~ܫ}z UZb^a[?!mKA)|b#f\<= 9oQH4q;^=[`_ˁ;4hQXtZbŁ;d!`kۻ7hk)-hvF''Xcza_dۆh[n=S{v'1I B> #ߩ[o>8zeӺ0ٌ3eIMwԊ4~S=J|%3ӵر?Rp"~+FOD:A! tpuEXyӒSB4~ nP *>a_7"6Sggu;q{3K0/(1F>G dc(K5u@ajg ]n)ծ0kR 3^׊a?o*4V Xlx{ގWhKuzT 6&U8t"++1P`׮ߧr h&~6Z(U*aa\6eZcWpN_ D%W2 f#7Wh{N}MVvs6 [ơÞ1MFq&X*m)2DZBW KoaK7 ]͎^,O~(pm#LHx(u'Ӥ=sa6*B|ckLНˈ/@ >c քAcD~J>J zw)ɡTlIWH6!͈ 5LYuP>EΥ 1WfuM7 x3ߥVYbn7ꦈRf2o' ( e8^w(3Vfy)ȸIA8vwqˇ;~fe?$jY[MJç(U@FBU{bľ1}5]{cdYn3 ?'剡3L57:7]}۽Kg5 aajb, ":K^0?Qi7>*YED}t`Zc"結c%㡍vu5sOuv{U| o7Pt,c2HИ(TZ{03%~" 5owZRPm*"8'^cgT@sKxnEU.KD2$9E۪v3Cn`ni*Zd©ޟ +"6#bl^C#Z>'Cyl* ?4 kCau-HsTrb?LJJlvn"HIm1h5llqlV`jO w|I5E.u71vAWUlrDS͔2p tku^b;u<혐>Lߥ>{߉YN![ݱ T4xda7Wa4f0eL a!.*9k KBKo ؃q=~brD_syTvQrU91Պ/^StVR*bԺWPkb0E(⿋Oa:/dsUa0%5 I+KAOívWeҏW5-Xn|:BPŮh}]Dc4?{hɜ6gGv>AT [kA\:dQփC@*暪#?ߙ2_0y(3<: q% ,5!4SY[Aq$%1.983Ti)WB++ X*(Hye\oc%D8 ,VGIWė-G Ouz%.qOai^k#}͠g*A)@,"S0Gu @66?T +U8qɛBy]"dSIdȀ7Ɋ@1ֺ Ixy^Tk ?v[Ͼp;!?rgiyʃ/dZ~n5i8Qs+O8z*G{zP:H,C0NxzWp33Yȍr8n]7*d4eW_kXpb[ agJEGirn\uqvë}͕Ts sV-#&9b2,}hV" qV6]P=O;{y]P|d-uC\ĈW-˖K҉unv9Z_:D\7'7uc {O_rʌ(ֱITgaخDWմ뉺Cgc3ѺuZ jvy'—ni[FS|ߞ^B JZ !F/qvsބ\A B,+Z1'`Q,aC7QCfT꓇b-ԫ&/w8΀er !2)4!L|ڡMTgbJ"W7;mHcB\bBQO7c3O)ۋ{ډ;/PѦ{YDDCϻ/0R7'!KA\l,z)@ so3z|i 5nlG^6 #g3^/c穿CV $cV<͕lgwt]4g'A  'gɣ?Rr4"\'DZv*YS;/`kOzZBs2M71DM}ec'L [E!QWL!ΰm3E^JY+Jzcd&,3 4ho2k.Mc;tKJSl}M =CvĥX<))$*x*  o6<{KϭCgB@ѐIku3Gr؆zLmV2 u٦#V}|2kX@|| ߦP\#oH-̰7o4ku+ac&-7Q`e6!RULnilmJR (Sj$/6{o樌(-9&`$~iC} ;+p0tRI`I+ջ*H1K 5Ďjg`;ZGJ&rLn}!u b3ge# v7<긮@zňwPDFDHL>9&+_ULP(jkHWƈ^o_l'sIhPML@x"ˆAZ^%}2\;3: gR-TX KbnLة{]vIl8Rnr-ڮ)Neq8`L+): ~otZ"7hQ24 +BlGDZIa{#Æ$CϘ~YmuܣuݾTtȉ 贬Ҹ#`S9iW8cָX9vFT) LŬLYeG0A`K.1QQk˽6)Eg=MrqqNvYZҋĐ>@ % Nh_$I /C`k*`@ G_yXSC @,DQ^0"ֿYCޤ WOE{~a^:^]E#Xá06L2W~9FBƗ7+̜2!pwjuR~I/NLA厄<꼬/W%og:LLઌ .G)`ہ~4 a!տP,B}YӮ%_hz1c/ب'L&"o:BR\`\9;ސMMGrZ ։]oĘt)Q ^yC\oL `9 75'{ǹ/h4SՓ͋-s&$0c*n'07ojſ>mt@d>"»z3@+B6憎Sct݅!t`?"|<ǟru[jʰDroCNS-E :Ḅ5|?DtAFQe&.NARfsx!/,jW)y=I-GM.G-BD(Ǣ*pн! gq`퍦ϑc-=k{l1FO~6:0HG)ܳxEN%{DԚ$Mat#wM ("P! P4WZOPscu|#wfqX"O2ϋkMs8eIEN=i㊌@p۹ܱ 9q,>D%hD>>SCH:DkgXOCEBs0 M0;fKb{1N犸rextO\7G+ACcA[L{#OSmq U9v w;=T~ڤNR&zl,7؂13nGz"I珋)jZOƻMġRDD0a/J4Lmġ9(;$/=&ˠ_%cy6S6$"K8#U#xyVX.:91r&αdH7(H52OC/z/9ՠG^6tNnU5 O2 _;/J%0^tl+"/2. T >$ AxI^w:Ҏ~'Ǣ[4X#ѿ 5O#vɯ`].W䈊`5IEbQ_FzS[|ڐQFO;#@.(:::4U)Mwa\ m?gk>ω6!B x;)@fL?vy`|EC S?VF8D։v[{cK".h )QM9]yʲ_rl9GZ yc[":팾b(ԝ eG8< X*+$/*?/ܴw Kx9\%Se.;SxjQ3Z5*8/šaKlSFQ%#('ү:Hv2Øl;3m"YQ|a.BEnbHR]@Ŕ'd(?dХԙ-v2 Bu.LiPpIK_7jWJs7Nsw7֢Jh"9>w#ZV;v2 t~Qkǁ~Q|W$a^ө)sZc=v Eg@j8dIa;識Ȕ?@nN¼ ~P sl ζGBh-"4Զͻobyq 7 է+Z,*a@f'zT @:q+P=ahnTR A^2޴I~;jMJYT|O0Ae(2ΠXyV''z{ t$XpŽ/Qh_ l毀ޱ+PʷÿrL沫+3ѣ$LIAIa7> P+C*$xB?4i5o+rw?Ee"*(W`7Md Dn8XGJ nLD}1_Pw֒#yz(ET8fζ 2f61;NI(k96˱ƁGMdf;SM?'Sv@$UuCtMYEH;Z;VЧ[%V[U|Q:>;CX].eKHV`%Gv'闶е[{-F ^u5#C+tH L/Lzo-a AT!%)Y~&>/B!K0rA:$"8LCz0nrJ7JxȔ5,dg2z55JoAL ȋ^'*C Eq8 UX.ܤZRoX]]wH~hph6pg=tB=UG9mã^ϼqaR5(޳`1 $_uz% |1Iݠ!7=1@$-V|)M:(MA0 gғ!6ۺmWnXn  ' bY67qNҧ"Vk8WsW`2%Ǖ8X R@Wv mT`AvbTd|RȎH\-]IGP ;%ݨȟFwx%. 2}4[[qtHT'˜d"j˱!`׽}. fU'*q 3zA_h?Wk_! rtXv8u%ѥbq'~@eSkE ? Ѝ@TMMNQ͉ݗi|aM^5Vd5*j$!X~ 8Q ^)ĪhyEU?pp\٦ݘ 28ߪ<>@s15Yt2`̪Mw9롒ӷ#]8Kd -qۖ,X0E~ fL0 k$v )yY9Zy^<ʆ{ 3IW\^IBk:WPPl IlN-?ر,`MrTEb{ O(xT\MtJ73-NskuN#s(~d=JK &a.Vßxlڟv?[>Kby,9$!V! 8żx%tƺЙ"=R;rXZt 6XoЪb"U82hBQ%,J$~9G!rB@Uhio {~FU{ 6u&5W?~{*Β61X$ZPtz# !U kںHF3J`Em`e4eA{FҜG)"†+vLKnrLIVa65v(9R؆]^%::pj!nȜr O?_7B͐_\|(Ƕ^fV~Sa*1sB磔{Z6uxPz#] XS˜_J56 \tZA2}m؂eQ6{cj|+e8:sVCBU WBfkV* d %h hf7)-Vp.#C^c4:Weك'wͩb Ydi. yʕ ɺѩu.n4АŌeeb&/ZFÂoݖHP'.TH!CX"LǼH]D=1/e @|Y1¾znR9| 1'8g^OmM _b,xȞk_}wu)lTjW avd|!VC8ڌair _!]֗ zXr.o&^eSLxƧK˜Ho"Fl4ƴX/͕LP挍J!NI' X!{i0I9g,#Pkպ"1Da?e,_8h,=H |8C(,!jIluInFvA&4nupt5i&uRJ_ 6y\, nWFm.ooӼfejHnN1,ȑ3$A>߳y(qEJy i4 z ZWwTG&פӾݲ? Y&B-_* r'(^ӜT3͇p|h>rjC`7> #Pn0kc*t@MI3 UCQ(p729q_vvar?ybQtFF;GEo('3fE#F0t׹~wawƻ_g+o+8¥Ls%RB:ai9~? |z֦xg2.p?á p/_ļLyQ46B]< lm*hKi9so?=b{5׋QjZ] nY̔98'Od~ϸͥ5A~V/Q½4޹>tMi3Q)n0nt䗜[ʙL Z;(ak}.',^+bIRMQqtq_.Ǖwфy7g`fyP4rÍV ˔ /h/?D0}hg6((xX/}3j8Z"k⠠+'M{tp{do4D$H%@D2)/h=v]#?'i2=n(8Xù!sZTnaKj)kɋ+aT1h݀_ilj|x|W({O;OWdإ4aĀ׷K mJն@*E;Yf}Wyb⩝S0|Dq\ukKdHӤ=A3f|AKműﵓU3|(Pa|q]Ԕo\.TK:xP&GAcdqjlbehж]l 8)#B^z*iEq5&^m :bebСQ%^͐$xȒȝ zt{D/{L;~cOpcA}ON-v_uJd8K%↹9F%)M`H`'(5->\$J%ݻæS;1^N؉bJa +][KKYʅd?!G- A]ywc2O3oTPsQFYK:vT, S +(ᶽnG.םq䦌bZ#ij%i`l Xc %;)o ]y%ACV6r$k Z r i~K7ҏ"ͻ"N9 rh$U0H,K_K{ԲxC&ɤuϜzN Q\|e urLG 0e%N{\7;B8/iʻSv}6'5^kGt˱ږNw[҂\)5yoJeCb|uU#kC%aG_n|I]½٥$[h,BCik}=UIOxpƑQH$1&{%H9;n`ypE| E𷥏 " '^B/iv[*/ $HUz`Q>SoHo0[1ct2]D A;9_ cWh^7㨛d` 0O4cϣjg@K(ǀ!9\|9ܗɞjzzqZ@oۈrr&s/Ib7_Cwa^jy#5'T_yF Sti|G"^ջtH*z;~vf@ְYgTRQ7Gez]ccxx"(a e cV2WdiUZ91t*%NZ}yǍ4}'MX]ng. N6 Psl,4#0~y gW7i o&szWjw ݽc"m = l1mۀ辉*uJ1ޥɯNz~TVO` Z"U!|L\WuJbgd[ [ᨦ @Gb<bNb~{kvf\_+7wM?'m9a1E@s}eFÊܲ'&Nͦ,"T"Fɛ# #}iŞR! u=? yHbޠ:Ru B=PK!/aפ|X+ YxoWvzO;q )[RG10h㻸km‹~߸J>& fZHԫPB'+6gLY Ϻg[M3 H:vJ~?)"sciN_`_q6$o S;j&h ҵo2jH@2XgVNΣ$T9)%@3,p3[kIHAzt.yS\ L?eJuK:ǬlDm %9yNވ# -HGkOi擓4 l&8u+dU]F>${aTEy'+ Ss64|$WHŷ@+$o'U_ ’gSp/{jHw<fܘVNIY=?0Wv1Kͬc(tB1>iIÖ*қ])ؼ/1FX2*П|icv #?)L|HŊ!t鬔^9Җe O> Bqu|Ym*pj2h?X HMjkЖAf69Hߌ7bSϧ̼)BΈx}p'!y!;rTS5љOsɢIpCqA=j4|D\JA3MXu#\kV[ڨ!>ÄT|"/MAef}{]U:;sx8VBeOu$clwS%wT\ `M%W3]yXez$/A0+-mzz9 "cs"FmJrOź!+]"cC7Gm16 Bac\V+!/#ˣeW256Sr+m W`] qi>.:M'4R@mn~"䋐yF"ԭhO7ccbst x0 :eI=T3_] j3šlo-P 1PEo)?%o"~k4Ċ,mMkd uD]~ *zT /guǐq ?)RG}j"R zJ˦ @ӵC5i Ÿfʌ`R۸9ȣW z!+k{3g-plL׽ʦraJMsGn״mw(#yN<[K)M5jjWϿks!ɱ;س=^38Mw"<7Uc\M:c8aΚPjA#"Pֳߕ ~X qNE-JZnRm49 v<a*gxleydDNX<8DwD?Fh~";3i?h3 sv-$ D5kgb WdBb,H.oDׄΞ}v6: hvÝ@{O!7'QVԏ.-[:Ikt;~WL=6XNNonGaO]/cxUrВnǑ~Y6g8+d8m֤*\i[z*y-ntUwklCrlsXI CU9PCԹn!@sMk~IJ,qWCv W- isH!<ܝ pTErIcx(y;\O5TWf}w0[ {cKG}۔oÒbƢzS}C¦GaT2ﶬ219E 8+b6K.[)JDQKA_%֋27z87;qHZYcah%,eO&ċb޿8%ѷ}] uk?O%AGZ A3~dS7f:yOfqFXMR.Ulڋ|ύAF.6,[g|7Tn5Kyi'8DH%-\zaT0E\%|'Op3ǥoC;q QhџȐ(_zlp(ƀYk|)k D]Efz q4*6P2{& ÖQ7+1;~ĚJc w;]b 95ڲ,@zv4d" c4#W Se!MgҌf?trCe7$iRăvN)iVޓ| Jw;q;iS02)O.y飗S%6-R.۬0XbMw7 x=1^/9{vg%`4i BĒ9;퉰m6rY.g-$ÛǑ͖C/lnmGR0P;tk뭵H݊3cCz" fl s·3$ Xf>t!:GQXN (+3ͪ+!3O@0A#1I>BPhw(H -hѹqc^٘ T" heռA,4xz'Ai05[iWx I/ԶmS5$X P͏nsίDȡ1-|n̮kڝK>]d =tfq/jL}yqTuD DX%W+ +^=4izA8jg'⭮ "EO[2@<- @GeO p} c:/P"J a7ž2f+iӚ™¨֧;Z%n򨵫]tW_sВrpew?޵RsMAZ&1r!Y6?"J޼zZ8J)kߴʴ۳!fdJK*E+ԕ+j3G^o?<s޹)Qr? k9z"5?Pꮯvi&^!п;=C~حQW.~"~O?0z 5+6΄ZٮRwBJ f7| TJ&b[Cݙ[0U4"rwm-ZLw50 .6Nc aY1"a%:.4 XMs`+ߙ"3m%l=L,\ (o8ρf&L">}a)TEsiųj-o;-fg[Y1FHVwT;´|s;Tn\9'BPJK~i2j#Z9ްGϳZo>̐QPNrQ#B BaZ3yEus'OHP*x8?A<}G uׂЦO5c@yOT aL=f}W]h}9&re=鲋ڹd*(;hVŗ9O#$ BHVT<Dj|prP! ܊g>uC آc$ꭏ/h% K؇FgqqXҾH8/9*8ٶx4@1o&3H2t9,!aE]X- KI*?C'_5r)sSKUqrܱcSBT3M!͖RBF"vy-k>-.h,H `.b4+ I }ȕOPaS^+|Tڒ`u zsI￯`Po)FGz }N"4ҭRWsbZ뚆=8`v5k7k@_Wtطx` }o:K[)E2\/(jin+Z㐀E=wJ1Ҫrꝁ~DT5``!:ʯӷokfoW$l;?|P[ _&8C2w 29nQ@L  Fi1q+N;>yu T.TwȟS@QRw'Z لOfus vjWŁ34?ƀ'+βߋB766l'Pl,V;olIh^_a*ya ԧ[}艅bDG?#6jv^"N=vpaq I"[ #gaƈeh8J}PIgH=kz^$T ֑AJV@xc#;#"w/ v)LEKwMR$a\ѺN5ٓ9Pd=ŠY_%@/$;axeJR!c}Q?;*L?懞ۡozC5yM5.Gjӓ9] T"t(^iZYVoZj^\v0L7IT+ֹD/hWw5Ne$0( ̲H)Y73*#/ӿWk%b/޲~(L'#@NÏ:mzˍؤϤS U/01]Zhة'0'y,;.C$o*`2񃖻'FYh[?=֐߀{V-׵rf:0Ǥ_@g7S I Ȉ"HcO9H`O0pV5JS\S^{{|=9.{W,̕5 ȍ; 8"χ8Sة|ZT랩Qc+ģTJ ڧD~o"/R!0$|Wy|e_27IҼ55f8b3n2 #YG@gTU5SݹlFqA1ⵅ7aaÑA"ꕬBMv@ k>'P{547I lšLp 9zj)xOʼ?T+PĉsK13~uFE[=' B,qc&P4).iu*iHX—ZF=!ŀ5V\L/?:*ѣT:ic= TI&k99O⌡2r=ԭ'ݎUV`4Pi@~%b'tR^zE貽DW9S0&_RJ"nvVG+ B:nfHݣOp\yL39- a=&ˍ[-.^_ ; 7 񿗴 .w}e w^_ ŧ&Dhe468@d0gEeH4&j% {#Mv6#olŮ k;'RSbջs4n@}>YӪ̻E&HY߃&]´<^KJ'-2kP M_¥@ߪ`k Txғ՞( L^tag-\;+nEWFn]{HZ،A'V4k4I8L~;U8gHDC,8Y0 L=cY,9F)gnjf1bV|>zI cf.&>Ȍ쑎 [䠯)j*W `LV18 X3Z&t.L坕9v_`ݩۗ/d$xՌ7Mw;mzQ 48tL$0A@cPJDdhH!: Q}>儊bJhY],ZSno%(|{fScIQL{hrvgu aw_C䇮]Kxs6]+) `p_C&E(etv:y餇Jh#bɠ\E!sd^XKKER#8]Gsy~ :r/>ڋNI*RuZV4z:q,1jȤ3nvL~P reb-p&V켚+Q>"<\;P4ޒ EnH(ۓbH'.eT /ȟv.Yh-xSDݻ8pIխ73Ki+%Gshʗer}=H|yU}>"Յ 1r `۠M`i`}}QaКS K 4>սv˾vdRy5W(Nep;u-M973JL3j[1[I{ c;WUbC-IO%f}3c.Vxe=!)խZ[ ^ 7BF_8Q8Aot R= 3'B-A”Nu'ú7aS h13C'.rlWrF(i$6ǏW?75O9@S3qd#ɣXU:})5 a9efB%c\_O7JEAg+3 !=lOP㡁ߣg)d$ΰܨ9c%πz/oy-)ڵDmp}Y^!-01jG r@,_}"P [x6ab}cdi4m+ ˓Wvѐܜv{D8ۨg) N|\Ҷ1Gh9OĖr* -RuAw*+.&V'w&l6L2g!,⩄ b9{"8#"L流,Ո\սf) z7{WnuOcO@S4o rKSP. M6 g/Γ) CxhBP5L+ph@EkJ,=RINpe]roc~0- E[Tz^"3,AQ4woD) ;><"QA%sA;y8FǭNiP6Y`(4>Xa~s CQ>3 H`3SYH*|AgBxc)(aHH19`:BMXKlM8v_ʰ9L\:JP 1hc,\04.i|K"]kԵ'-Tdб\&bGͤd~kW`c4"eO4rb:=f5v[[ʇGR,RnߐK'lnBiuy7"왉'%s~ߒjXͫPRxIG˴Zau~c꧲C*S+Omn٥%f54U>x *}"!m7d[Ć&(cs,g/wT;(޸+8 ybÀXGۥyVf⭢GHOz[(+i/\j* )yz%%tL1=^o< XճdȘ!pc+NUGţU;F3|mm zaku@ z/dWU15Wd53-| V?ң WP83NøJK[Brb;fUf,dn@ X+WU%Uk8jA-D٠mUY<^S}b# y&"db nLK&4ܭ,+ӈD+fOBxҕS]RSH$aԧe*"ou}fQ߬ CIv [_c# ?_b B(号X7lA~ܜecP2>6HImCU4C33Ly{ :Z=81EPpT5o77|y{ N|O;rqtS["(lpQxP}g|n,x.h{{֣_eKliw)6&M.]7O#)ڂ%=ȊMC*ؔ N |g~G[eIPg\BW9V\0[$յ8Ft }KV w3y&0ϡN3gU8 C:L|LY$ Fj"dgI~֝oieѾ Mv  [ 8>$BYIg*ad~/D~2t4kAjeb|=42+9t="T "{*~(FOM*!yb S<0L"Zف0>eL+>$op1w昝4QяJsh6uT~:hgb8 ‘Lh lk$KyhyR*2NQdXJ"/ Jc>XB?Kpghe>[IDfZ֟xxti%\{'L0ZyD{I{meF$칓TOv] YG(ܪmݐ5ڀ?t8Ye.>! X3S]lm37b{J47Kf_uTe%'rT6HRNpO]^AJޗpU|}#5[(eFģ)uAֹ㼨V?F/sSRR'F|:9:m7O:F`xbB\<,؁'վYg->Tzo:ɶL(g)/{%mhjbߏkަxkǒQ3Ue9ɮ/oW@fr~z 5md!H{@6y!<#X4V \u\_x#s6+#nTva0Tn+"<`1A*g6||m\ x."`\5+.13wҵ{3>`ER%܀*\#L)v.뒆 8<9Oq [=Zw#y.8A#O&0&y 4#T9q/}/ig{.RqWCd DZYȔ]gJJ S!*&I-S/atLP'Ac$_8 ,Tx['ڋS d-RN<$ol5B %i@EQ.QN,py7WxU˧ve+|]lI L_(NS;OA .31F8 M٘4M#' vPs8?觩 4]}GLY!nJL]5TqTA#Bt()8 ]Bin Nhl&ū ?L-F0ꦜL !vwj4/(K]uNz #o+ #NBsp׮&]n3r;J)dN=5C a&[heifOcS uaj<ڌvRxl1R]K8H$m$N?W0}o&҆7 [#UFʒdybu]Ƀϸ~#aRe5E14E;M&L.KI-8Oa?zDEqFʐh:?1/,ql{$ \xe!l" 9v.8 \]k\j_:z2cx.Hjې|"3[#hF5Xj_QZE?i ւc-v[M  5"9.GǼxGɝኬ%PMXP+8boLY__$ь,ї1q$ƣ\3V] U!_p-=cgV7Hظ~~,q\VLR>XR9'EDc 1㗕4eLГ.pZTR!1uKUa34\R) \h%@ݓ袪k1ѼR?sگ)ba.&RI Ҋs)@ߗȯVa;`,ԭ-xj VVլx1}St81- ڙ9N/ERxKQF .J y̑raFOnxy<]ŵ|a M:gӱjڔS~2ekVsƠVr{ 4o87pFߡaY=PO޼A^*+(o%=  0$WXZInTĝJiVάRư7nH@? =jb[prw"/37qR!X-ӏe2mvm"FWNDpv7Pue~#_ˋ-\7+/؇DL@ 2\NH+x-]p<1LIjF4_Ő{\p_}6ԱGpZ`w}^!ʭVFv{*,_Zy}66ZW;[f'dXJ5Їd{9M* P$w:'&M9sيQ.&#drv}{s_ҍ$/@`Ս "5o*Q Н2#,L"ưx? 4 U6h.5NdD|UۊS13`,35m\h`IPe0ғ v;L v|7Q:x2hQ.zIޞW)Լ>F! ;ҥ.]&ؾMoN5-0ܮ Mi*\-0iٟ~FiP7ۡ*ף["tG:הm䞼S$}P_ DM)4"Ԟ|ZZY4:C0vdFE ~2MXJ/>, n5뼎{M8I)R})Hjߵ|ȖJP#%~HqI5plA G4K/8+8ȇ2:-jKIhX4j-]&Y}ivL{K 'A4OP;F30j8*i-TpusP6xǓj;Qko *aVFSq.,9ka8_ꮲO?)S؂gkw+>~9@ \;& K| Nعpd$R YL,Ixm3n7$bE5 fR yBÌJ:9Z-D;h5XӋe+ta$y(Psܟ®QFؽ&+KN  ɿ xgq IDE C}j娲 XݍJ;St/- uˏcEݨs ԻtIH(URߝ=<^F S꽄sK"U/I&Cs[>PĐ}T66)7V~eK`Qun~Ӄ7͛'ZH1Hn"j-OdX֡vK'*NY"BRA1ŏXz*ŻB#h:TĿ1$nTE}ˤ_q FD>ٚtlu(1+UKgey\I<$FBu"f毊x7hL\{mWj[A^|NUzcO_Qg)k+b˺.>)06q \@&[DuUp W7dIu[jq 3af?:Ԓt&4d" [ȱu˛"3' 8U[BZ]IX0a@(OlGFl8 v-GB/m}t+pO;{9q˼44ZD7ܐq*UY~m~:QCWJa/T cpˮwL֕zS9 '?!&OM6]55+3e.Y .@eW-q$oI_rȬ Dki(O\P9ub8muU^iDxE/ jo{.|I}])>T$|L==@oko;[ܵWtOՇ( Ö͒]Ο$Ƅ*f :cjv=dEȻ(9taz}Qs@U:b֢XǐͨpqNAEIwHMԝ al$nEf,C,"W~$HP{T{[Zںdi3ͣ3n2gH wjLDW,/<ʾ Y Drx]o!yjI%2-G=vLm)vA 'Wl6Pٙ|-D:_I&?ԺUdlMw%VW4!nhA4<)C&C]=q^jL >@(ώ./`xRv:FHWUkig ޖx g1?8b#m lq)Xo ݕ'wo7Njyiqy!Pzg$\: '=(;0u~!x :]|fзٝ>4QVV G 9PӁGĂ3>ֈ3ڷ{(钜A3z+w?mv;$ Dlʟ ./qﷇ26qڔi߀v02dD?~@[=_hRL#ӎKJ!tS :TȈexs ,NGY˗/d^B~E8/-vuB#?v:EGB 1zsmvS@鈆xa1ֽO#<~t9BM %#"q Q"HM{s IMGUVS)DzUvor^M*f[iHtWC5 T/_ Û*7ݬ"l"ecٕ/\9Z2j3ZPK'ug>ѭs< l[\0WƏB֔#DN8PLa3#rr/l@q ?1`vDE"ip`XZ-̻e;R/E V0)ɳ`h%U_SڍL3蔅)0KZ^y|HJ:pa_EyVN YEx'5mn?k{V #zruL?RYn,)@ MtHl$ȫx5@Gzg3hܳ1+vw`_vvHrz&"3\ԑׂ|m|zzx z_VcJqk? lIޠHZ0H0zC ݧy0TK2}K+MƷ=3򸚗z9u0Dwe/r-l&P-BgpU6g/iHĞwNMJ2QoܜzdgGȍnq@{Y&):yP.'&$+_)-e-/|ov8U:Qe>=h+ wtփF pnY 2[W9e >P*JNrv߅#,c <)''6$S" "|Qɷʪ2ȟ |w @/k47KI=o'|gIU#BnNxL fI } B|XxEIAQ_j}5!j|ሱ0F †O~ O şϐ$(<敍;C{=#dϦ1׫jq#,?\s c ]7r)q ,HAg<m_ީd } 炁!m~No\0/¯" »VZnrUXbc338tX+d3K}lUQڮbE:Ym~YRۯnβk;TvbΖo@3өV(򖡣|Iy> wpR cwe=Ik8?y'q0OۑQb(VꢏLM[$YOcό.5NGU ?&- sNr 3݈Cul@v(ɫoi+gU$&,XGDscmg~/yyawHrЋE|>N!/y/?(###S$r&9&S޹Oc{Z&v/eZd^$. X7/pwwn1Xkm\%}`{'vvi)"5.48mϾkM8|қI^:<] țJ-0/g[րeú,y6)LR472:J1^^| 6~8~_}vhcH ]Ox GKU&e7eOACuv1U ]Hδ֊H! 9$^k_s{ jS[D-]W'OiMvcW`QB3``̠vܞJ~1t7n * j]kL|.CFT`If(-ǡP%1lmwf!/23%QnTdCQ=.lmUpUMVC<3#{ˏB17ӣZG RT$jeVvs"6 Xhn@i_3Rx|=sFIRØu$zׁGa{^$|MsJ VZ(KDSuSd_pB95nvR ,Gp֪Zh"JBSyOOɺl'W;Pig:7z)18j o'5Sm/e'z-Cm!M-m|3 F@%:U7; —r/wTC%e0 &(LfizJZk1(fJQJhI!8Ttʦ%kt5w " ,kv1t[}r)AMpN̙ȖAش P#8C$UY^ ; ayxn17D$n]z 'XScDq@5&}uxGQTpob!:,YY1BGG渷SJf RLzFY_AVni V=!'S/X"ݼ ,ajKÛ.99aBVۏ[YҖ"[}?Z3=_MT$.3K G_2ߥêɋicJYaG*NH:cQ=*Ѽn"{O,!P3ƆZrZ:ML;b-v'K_}DwI׾"*󝤿έ]vs-C ^ϷZƐz>+XُjO@ ~o 8!xEN]e !h f"ZG+I_7! C_,.V MGU-hL^dĕ)a,]Vmp/"ޅ {kSmd~O4FĵZ-p 2ţтє;>1xL$/g0ևʾb!XIM جI{ybW S8x>NSـ%Ɣla3qqg_{Sד$KrR!F龡`iW 9N^ UfA9lv4 @%UQ-͊v|^7);t`H|0쪐P ^ ~c`7e\&J0wfxAMȗP[L;4 0{KC%25oI}2W|PƎV1Pڏ} {W䉌uw~|,d}ñ/g+".jM¡]'y?/4 mXq( }VsDkL.P4WwMs*mBm`]ɰ1(jvkܑmΉȬTŸܬHJiIf0:bRUH#{ōKxuR8dqjLu@BգAf;t"UՑ&C'~et-vMĨyӈeRè$eg1>,WqgS &<}Hf&R{13*WAfq^ T!p&Gb;xV%rf_?cϞ$iԩ2 ϒ˭c3_AzCE5EE@L0x4:,1X Vv:;"sKqR+M-_rÅ!w8Av[xe0 7CEE^)srAu*%P1,^tM,2ֵȜYKòx({ޝTvL@$^,tT? B`Isc_-f|;ބEKSpOchA_`ۏ gt1˟o$EɄrqe1 n ,OH1yq\ӓb.qy}5gPR^E"!1pwn4͸a)?s9TjIL#'; qKk1q- 2SGd-ĔDb -H d#_H<kM3o煮EJ֐.q|A"[h6:涘 mX꒿Y]hORGrpznkTdqGr/B^ō< Rt/.AOcdo fR8W"9>XU2^j79Va!NKK~YX?Fz+9VA/w27R{uZyx.fU~ˏ;H,#QIEq—RpO񹜭 (yꎳΦ~&tRytHVJV5[nq=c[ TJ6.\a?[88kX52MRƭb(<`C]4[.oFFtw׶ Gb'!ڤ/3O ϖ*>E LƯY`Z֌asFUC{VljܝoqMg\tKQ (I NsT[jk#XBHoLkF_K}Y9Ƒ_B |0Rާ<@D}gv2-|䂋oxz :;u/ B'C ߝa wdЭnUҢ6ÏZ |(m%0Rwpp8^7{l*uz\: Eex5b1Bq|DqG@Xh! /ÕFk3<"ѧmhJ#zjXC8ξIހ=z ,S}m5 e~ x`!Qi~guwSfj o8dp)8.JI(+:D%¥d Ӯ Hu6gb gPܓe֑1W='Jsr|gf;,M1 ^!ցVSgC >W9omB O!V$s9DD<a=C6PiG]ԥeȻ ^: v#.Zetwg/O}4E,~8r @^97v%J|6w_ _* Ffyf%Wy]#RnLs:Z5@-=m4erNȋ१9@58bqdDk/ ]kxcg5_=m",&֏#9nֽr;^/va5In ufg%~zT1Z0o1Cn%TdeuUN*G#f9^yEr0 fU>IZ+4L=nKe߄JB3Tdïkt䊎ѻm-hLES!0X(2fIz/qD{d8.=s5x#A~47M/1`wF>PqI UDOn*v2_ \.X\Ie+`՟KҤIl(9K">G4ݼ0.AhBF<;~Аԃ;W{EG/ G^ v4VK D}ĬL Ւְ0Lb6' /:,H8AֳSWƼz}uюnLL3k am5.+ΕfbW+(M5C5eNLj($w! ~"&$?Dm];5F~0hCb7x^qЋKԫc%5\i&;m3y;$*Q SѭtChFJ;zφ%ks+9}b)ck܃ZVM>W'%#wAaI0*>sNT SDŽ5XT'ՉgWJDŽr)jam$B+ Cmsl߆, ,p:1FںRc}8iys`tLۆeBxvhI,#H: j2ٲ|}&I&-Ao Ѽ?l&g2df hbWr&ƃ, qb@jylդr `fr}}5;C*Kո0e}\hJM1QYZMl{p0\<ݖ9,Y"(S[/#.Y @G%.?2MҦMf@QW,cUӖY6.ub`fI4=ԑˠ=4$}۾5 p=WѡwC m iH\cJO1GW⩺|yd# Fqr" )gS>9gmVpE0d*}B-!t>F&TVc7HePʕAup @]?HҐ?=qA|GU0.p Fy_?uw M6?ty6T[Q,x|L?ij= {ob9:ޠ995 ăXCzfT,Bfd#I 5 $hzeHݩEU y8}ǯT/mKI3Č}>USmN[]]ګLEYәKF3,'342Z [Sٛ^-|zkՖx)Eri١9W)rسauQ ?9^='G,kyJ4ꚼ,P3)A`Sh l z؍w^xbxv78<$G9}DR5<|svǀWcMhRq%|Bcjː'GD{`1#7MAq%r7.%zQkFLhe甦OM*8œi_+kurc5PL?6,y|Q?¼E]x 㛟\BbbzFѾHɆ b{pnNs'DɝtO{S3p]/$f8lL?i}"ʚݡ_GR`m!yޒkt 9:p9ô2ezyމs%X8 78h w3\,?m()C9eRFlؚ[%OՆj<٬vx3U-&p\K(̒Hbn^ _Z=Yw,ɚKa+Hwkh8ca媎Ij+'ȅ" 3zay "Q鋃f1na&hquRi  4rÿsmػmM_J̾BmBu*ÀX#jݝx LB F41,u .vh$R]xJMM/Ή]N;hT & pϻ yUEJGq?: ;V(H6m{ jV!^eܯ'Z9!?*C9xhJܑo&L(IVz QO 97YN:>rݾ&=<3W*1#x LA%IuQ%vkiK*e1`'<]]8^&"b(ɒcce굟ӉT-c"俰ormzkK؞P5хH# ݰB!f Y߽}c+JcXby?FYj:vG #H7Cպ(tѣ7Am(#,$ MHߪSXSr[9'mGL|Bř m{ qYrM֞K⻲hSU:6jtHDŽ `]]͉YI6/%wpoj$2TЬH$(zq-{q'G2V3=MH@IvݍvɿMQC)le1JZ_,a5Qk?&ZN-p>͉rr[}z.Y&膼YkI+#cpֵQttjMj- ٹOv5̟ݥE2@)V{X8}GDc:KYO ʺ)YVݢb| 6_j;>?@EADѲLw pZMٿ /6,I5EmS~`#vZߡrCA`l5~[ܣj=Ї`"QTgdצNpĝe wkаdYL k5MxH2s7؃B*"nzܗғɨw]Ų.*\K@jx1k{~Sr_fP)0^\?BR)"kSAJҪ;+> RX+N~L gW HsXÌ2fzx *zhx=jQ= ,JN9 ˱`Z/:v|WP$.AE?|Mr Iݡufvd*u6s7uu (nD+x/ֲo|}!<%S2'98t0g cqȂ 9V%)+4GV'I^ n $Hze$I΍M2Wd_aW[dq?XSN`m+Avn6lS@ |KpB/+is 7Jri` m7.@"]T'^gZ= 1Ѩ5Yz3yL;kg]!0Ͽ"DaDlOi'U5C +[C\8XMކb^2L+*A}y;#~PU@E{zL2Jm4e$t24Zz/Acy]Rއ@F% et5pgjq+#ACO}iB{IZwǺ dpvZ]ӷ/,9qYLguPY-|f +#r7 qg~1B:Hꗝ/R1_9EgHLXn1GqUQ}[͓ n>!L֦t6"qdzʋsE>PS?qS-a=. j{Ui=a.I2ptʿghc_ba`}x=OmW,7f!U-,b!5L#83B ,3%WeNW\#{}G1=GϵbdF2兢 C+W h>B MKdJ 5iPX!ʼ%wDJp@XQ2+K+bkIfXpe v.kHj>S47)u>8✐Mz/PTGNf25o7|Jm>_܏ $1r?~1 hP6_nu*DIJbs)U,9~HWfHU 2>k9Դ6g ƤLF#*E\U\Q}F,}2^ ID@&UdT=ٱHr,2Hu.C/*fD{)=RcXXQU7H=G-mpk%AF]I[&POTjQmWc&\Է 0^wm&Gh?ثb~R,ثM~UIm/dOu` ;LwUw/ UwZ{۽ḒGl&Lx6+W'FJՑZ|p=Xy*XL ͷrY-AU6Z"$|V+<"Qs)1-Q"| 蠖7N`MgTPTvd|3GdIֺ+([8l ;5-v@FeZ #{ܷicR >GTk&8Xi3%< LiWՌ}x $[>)ƻ@dCppt蘾9jmpK4VN8{!!=p'OWøT_1>Lk/ ; r3Bdfb;֔')EuW#pRhrine& Z3a2 K R1FY.bͷBΓ&B|wqWf7B2>hiFoe*@\21okBDt(|+xRaWhl`{XUOkd^0%)^=({uZAj)p fz Vsrv0QXUjѵ ֭oFg$~U\Lla:'[6A;jlƣߨ\G,3׍Veiǘ`{5=/^5ؖ'@eHu}-cys'N5dR+گpm :(u [$DƞϺ0TaڻȯhEYwTtJ` 1OS^T8Bʸ))#]Q2#  P7] ԑmU}ʻzjݗWqC1d'p# 6W^)9Kow<@͆mʂs7\t)d"o|C8jO\f&kl$@չny g# ¬o>E%/zk#;57$=?b^(dBX=6CW:k LU,x C8B;|:QыUL +-U1cѡo>sfZZ$.`o1 P7\{,%l*zůc>}=#) nS#Ҽ k]갫f/Y0H_i}9xX6=ˤ1-AD2ޛO}r}HE"0ceB-&Bhbb<`ta E_jrdidۑQӒ Jj`!kҗ"l8UT& ;ܯ:8p s;po"vB. J/IN2}li9R4,AHpzZPAʡA(F-#h-LfLe9I \6ƞ/e?ڜ/v6U Q] U[:m*zrCEnG-́5&t.΢>dQ1_IwN 0{wVw~JImϝwrr#,xzTVAwVқ*"ݮ'7uh"ȍm НϡSωRЛZ+wM֞)LQRW齁f-8A  x_G% üOܬ=#ɓVJ)_#nW@?6Q>~aG2C"}8P7rd3><1Xgqj'c p+ 2~8GC+HXtl-ʼ)ֻව=ekmɹ[μռaΪ</\Ym, DwRunLxfPEn)Bz׵4~AQ=P^g $YP6|0uYWރks-Wq)'V5#zfV|i6r&+\A^PK(!j*iLP6[@K-4w {de?-Jh}}B׸g|Μ@'~Uq5W?*y~r9$b'k ZݪdzM^Zd:ʓ+!dAͱO_Z狯e~W+~W(율:jjag1. Lʗ#lSQ"r wۥ iD`j%GwFbcQ1n$ _y@?H[p͇r ͫݚdj9om]Z\ kw1&" L׈d$"=/w#}%5B䌺"|W< bH{x WfFq|־OZ?z?} PI5!3Ҥ;XnP7N|q'A#ɓpī^\ d3Gw8e_P$+mueėe zDe\VroX+*{`DnbhhE#|]j`8ؿk w#rR)[i/whJ y;T;̪ CxƁˆ9`'MLΑg2vz@}F6NmfK|oe_ϑMf7B$[osk*jV$e-۱rRo9uW'k̀dW1#x0̢E.g~B4urCoS Izscp0OA<? NWςxLJQN-_4vHTQ$A]}H͏:C=9ٻcLB=7k efa:yR.({H Nm,]bfДGZI'K`{C,h*1 { QqE'qHV1v%(t7R<4QFkU s =Jaŗnyj?m`"}ڪ  /i¶"ޓR/Ū̽aw7.(>lr%) -]*bO9!kTqxDݥNJC$eRU8݈wsy&;`aF <_Ne@XA1'+z%pm%Y&ήT<'l>̛-E1𿛢O=ODQ|Т?}kPЭ^1;:=,G~EI.p̜bùGĚ3#Tjzr̂L*ғTֆK,+]%PCo[DənķX!)8QT'ޛK<~1c`qfID~ZXx*?b/,Z&w;9Dl\_jSdٴ+y.ta`2'!+Nlva2?'"2f`3-Vi 0H B?$<]$(b[;(A`sIxPh4~)| =o`Nĵ3LUm&q; Rp8]eF1 g/Ȏ`w XU"*p)Hdh\p3 RlQJ\c])|Doܱ`8GQk^2sG_a~K~I!} 8a!tpHHie2V5?jR^m=;)QCXjfɾqdPRx \8V+:r,$Uӂ$;_ؓnҘv@TRj:oATKdxrTIiROXx'Wr"JBnI_ fmy9=,PmZ|/6Y徝VFWgڔI+Mk;T['LƋâNh9!ms'̓dLfKŒL -(/5Vkqs/CT)bEH WS;ݳ:*K4kn~;3Ս^~V-|Kk^]'~)fp)#&'QΏN;u:tT-&Ft^#po<;Yjs׻j+XO~xcbb;(@. U?7F5 Xn|`7lL;O1T|[G0>)!)&O?Zܮk(_dW%,<0:}XjsR;Bm2'ޕi{B 7_z5m1~ZpHmH_PfܨovQYeCY6x.,\Sl'9L [8^Ԓŀ{8HG1>2L cPb[OZ2T3 9e)TM3EiuEPq8W.9OZ޹|ᮾݵgi >/d5g2XKo;,1~@y[*GH :=r"-F/oP˺y^NXc.ԝh,`׈c7LsC[ $iN(+"?y٫UX>3cha"KmCc.RFDž\W5yFY~ UrT`#5 G?ӡFEc5+6%r)YeD;r߳P=i>@cxE| (֘ }wNIy=9!*2&e}`R~6::>@`"qt^SYnѳ"_E|:j N8_?zzc98;uxGsP%%6~/5e|1Zo ivhT_7/z>xꃧBأ1^d5[,ѯ$B;0=]޺o6wSscv5v'VTy|WݵvVaf٥Cv# B|:ڀ"ӲaW;}5O Dz">%&)gp*\_Ą.qt0Ki]ySGbUV=T:qb~LCk MCHyI!>x 3[K V$Q*:&˧>X/z< B BNF5ܐaD P S0F$ra)GIp.6@~M)@} _hѯde;-51ni6Oj*Nߐhnn&e76aW ׅMLz="?e[QQV4\8ع?b] &wek\Cռ` _Ip]}gZ9ބM?++ {q3X {daͱVZˬo͌a>{VdbI)\sGf[ƙLOqu\Jj샻iM%@1ra"#vΦ#e7izt|Ha#@beP)˂@V8m4i[ .])e-`&k'!"ZQ3eI*w@61h[S|d5Ơ|~|;iُ|f$%,6jeR9lTqC mx[姡6q{W*L{㣷4z 4݀l91b`Md&_5 B0Wu.q77S|4K6eto 4JUvyjZ-5U82גln x$1ĝ0n4PGYji-]㿯|Xt+.&||4Zv\[&b-}:K7Q=pr(eєo55rdv&)c{>%zo!.vsʷ;f>{C"g=&Vj~Y+bbTQ1;x?]r<|4֓UFWL֌{y;ғl˫.n܉I=0S4EgAGE76ctcPƧD ߜ*ۀZ 2* 7&äV f[]Y$%u1QX-y8Jf+D z ~a?W۬^FxFϘ#oAEќwoLXNT*$Zˁ]n}DiԵ tQ! dX`5kU={P[3:XZds!HGa[q{ "5$? |ʳ>0QX .#5g*{T`!ƫ+CUi>TO32&-fq!H%{XؼZ10h]Qk6!yE))sx=.**COkI 3d'A'Ĉu6& <='scJڢ8u]]I]%rlUw{FZOھ W綩TxAjJ6o+|ggLj}%Q3f5!\r*YnyUp%l?(Qogn.LrkvE2tųWS}h{~ESS5wܤëhOeBIv psxK݈Z.#B|hqheu; +n)'E?ݸ2OoS|QmXh$kEa҉ Blo ʌ`uV=ƣ$Èe'Qomb MRsLo[֜BYC1}W쎧K 0:9sT(+HhWYu70?3$3'̅OwE3~a3܈^gɘl])r~}Mh2wA6H#ӠGwm }Ǜm T6W !1L(N{3Vq}-/lBr٥c{CA5Gw[yIҍX \W~%6wNI]c&=@Ue\.ҸL̸b:BXy՗ lj,GZ6KP@ByY FU]x8WTM<3eB^BO:C@IQ:?ix|y.ޖ,$4/Y"_v(sKN/̽J|&^arIkk ~ p~{\m3[C5X;lr۔3 7× L"&mocVRNC?M!8j34~8i1 8Ȩ͜K!X e,dћ f ~ IvjeL#f7>a·7+f)Ȇ@)V)L8ȰJ}@^"N:38>Isqd2jЩ"v/mςOAt|%BKٴYbqс֙d;BY0Ǒ2F8E9τJH0ԗєPr]n+t P$ 䥍KDPlgM_)z\M|͗X^$ ȀS";"L+A/Λ~X {Lduf/hړ^RfT5 MÖ0*cݪ=u6ǵNxi) M:m!w'Y%tϻg!A/נOn޶/oeu/${ )F*{a;YAFB/Z𜶀~T"q!YE:i=8=cvYHr)FD(X{}eiei~󱯽e}%2uN gBK"_.vC*> SR{RmR)Aht^\0_F{ieGw(@h&3|?>'vWW|^9sF"ONQKL )c=cprߋu:@>'z U { 4ɬ>kɧ)0&k+LIG{c?ązB09`юs,%nt{߭~mpGөMCmg W_ 2Sǯ{îYL%.YxpXX kYLѥޓʱ.Վ2Gs >^:gGua╘tǭX@Aj\5} tfiFb8R~G+\ ٭* `FB+GTfL*b8hj۲!#fφ?V]=)wiէWū4 H{YƝmoM7rL*l8_-wamGBsJg%0m\ .ٲ>xV G1GH$—tVɩ-ڡцk~=\h//.vduA>(<{,*ޮxMbJկuv &ŧ 7%Qbb'|Z-#mQU%a$yKE&+N{ .UJ1oYw"[% 5f|p?(*s/ց#G cܞ*v+#Kxƴϼ1jb=[99Baܰ'hKD좵a<ޥ;W!̏42yX?p.ᗜ#r5,L~䈾Ɯo&AMR1z^1t#H?z#~"h~kT6NU P٭Qݮ{KHd}^-]{N6&LX^:fIO0c -~s˙㖤hL̚Wn)9Tk$K$]w3yG RƼ#d,ȀLϤXVykNE昏ƨa >j,A9sН^?#lQ869=ʽ \(z3߾,'idAmlC \CNn!] e'޹Læ8W{ کk%RM53rw`am-6P$cjKl7#U=Sx}Ip9X9 *H{nV\Si&Dy \A7Yؿ9!K~ ,f$z8jvK<$e԰gE*Qͺ !8 EpX(ȲOU*p!2v8oEaWGB `4Qzn,p+nc%|pp*(zI2F͊Lo=ͫ(_t~cB50N;YIsKo(Jm#=2U*l1%j&f+lYm[?!Sph*6K@<ه1QYAxBkW-q@]]B(ψ9CG_FqK*f~bXp2V)^ށ 𚆾p@fL!5/8goz%վOw7Cҡ"EN kKcWijFYF0 B~ W<@ψl Mu &7Cr\Lh GzLaP&2R c𲄟*h+G }r^vͬ -.3\C,Hp 5!ܖx(ЊXtojU|fCi#?\C ?7P ODμ]uؗd CxLz^rK4ZIjCaG%< p`)"<2gIh "0|ILxەYgl'USyY,|e/XA`4lS0iṢCϚ;F~Xl/l]3)~ZH1ukjZAIW*;@R1/h]&8SwzX]@b(B  憽v4]FCWe B@4K$~yxfJ  ;kz2 ULl+u`7F}>@ ^cUz;n,J}G95dr]h8 ߎK@c1)&S#)JR4#&O‚=trUw*fL:6]0WW\о?Hr>Ir ԰q\8ؤ+ھmy p;S洄SSRR^]99DK86)dHM|ufX#Ut92έh|9E"q|]uibхrz`B% g0i[e#1ηxJ Jl'+ R'ۻLKE0E>**9yaMa,6t\8¡XiP*`{r4x埵ĖV$ oiܽEPd{VcDΡj y)-6Z>aEM4G徟ÿY*jY2%!kaxlт6 I ~xVs UвUY@ y3 0 v&գlkS% xbi]-(g[qO,@V 'D^IiwY[N'lIڱFpxDh1`z{tq87Eq|k:;5-qgp간0]^iOU?]԰ Ԁx8ݲ u. <iȠ; 0q{ z>#QA窦`l4*gj\4Wx!]==(z+RMPDj1(r윋~t~:¸Gh:!8ݭ..{ ˽sd=/AIfq4? E/ߪh,~d+JM9ڲ7I;bQČ7@LTp[쨘XTz}71-bRw(ܕc0U.)r;03Iy0Iﻢ3jxs oJH}.,<{5JMږ1usnYl- C}ZBu#>Mx4*G>r ~H-vcc 5G!XE3wS,!u2a!FBL%bG3Dٙ/jcK_Nh gMMeoB]ghU&'%L%+ ҇0kwX@aۭQn 5e9@IM|'N7P뿆T⅀ꯩ-faeܴ%Ko`::F)6Xihs^Yʛ8錈Rh #Gw$|1{؏X[~Y4K3hߩꦕd`Sȿ]UYg`$u"2#T0wZ1!C#/g̈IۢJpT?(!TA%,ڡL4|r{uE} .Tr?,$4fjcW 0vI׋^9n`nB:v %+Wa% D͏HJ9Mr 4*Tj# Y!1Q5rW:[fUx|;OB2e3_q@O^Y qD@l^_S|w5c Z|4ĉ9FYp2xU5d'6FK32&'|ϕ)JJЧ]]s|=ƚTնН۪X*iZD6X9/[l3GvuZ(% !7(rgT~D!FOY452_))uF~4Cו<'uאMP[Y$n{TnT($.73]Q=nɄ0- =ݛnU#~rpiJt#5g&rkeL;r'ej_ƧW]}fwhT9b}?Dp=wӗ.cUzZ]m*SyBx1&T͙4`ۙGSSǹF#%pw&@BAW_X"3sC](fK8ĠX n1w[eoA9`9fe*>l`5ܛNGXH.NĢr0qP@;(`+}&xPGDvU%OQ;AE8ʯAPqgb-h`RH֩9Z%9`c1 dԜC8IfasRO<~#lp7+jD`RaETviG/M$RZn*M< ٫dA* w|<wup|"QVyAa?|7b̃eb6mPߍ:B-@'ҼO$ccQ)M4l}RZGM班M-fzmYϋuUbq&.p ԴJnWUdUi`uDH@@$PNJ F-"rلeZ-~Ȅn':o^2giE Q+2$o>Skڋw%&b.֕z9 =4@_h`GvG >rz5\o>M<!{ P3O=GK>~# D;X<UH%Ih5=='o )Y6@cW1 ._=MLC7 )2oɞ\/pSq :;!S'|MN2+X?zn1ILwBipKC]XswFEzEeMGyK|OW:{®=g9t ed+r1T$rh:{8^mTYe_6dĿ*#GҹG DpDNS1_Ri-[CoyZkuFlnoTą6VGŔ-&VrVCԹ.u,<}k_ qSmHKAhAWsWlK{sjUZlKYkzb+xB!^gy]DtAN-f-̀gż4jὁ2C_ɌEKcI!OLkFe8E:9D}w4 ;Ν% &C2 wvxTƼ-[dI.ukdA!c|n^ǮSڀu] Q'@Pj}A9p24aP8hcӎQ[ R-7*]crRV%c)(nTLy"r QRum(Jũ*NM!, Tѷ' obm}_̕&E7n"ʒQSd+>JϲDVzldT}ى\b[7n3ďLY/,P2ќnL2=Bz~yQuOW}Dg>c1Y_,Pf5N\,~!CJQU&9@c,Ψl+ftګGԣ sR5 -j-dc̃k$=!׭~Whl~w @ vPPi Dʖ6|67+z"^| 1B,A¤ÀIörɈȌ_G2,QmVӇ抆kVV=|j^BnJiq"wH4wHQhQP|udmBLQ[&xtq#~Ó҂;z &^J e?SQ6XoM-+伂`?wӷ6N6BjOzW:]jA56z4Cܪ$%ϻ@!: `Q\KRm%zژg#a{cjhsnSpJjJsUta<yWe!f1՞>%p#n U V'Qyg^cKý Њ3Ш/m1]&+ʞ!¦R*0OH4SCo;+mGDym F~0bG'F[s{UigY%BoQnħc HSqV O@n rwK˅E84"HֽfЧ/ܥ`uIK}$]U9JQJB .kt7&[$ Zg*jWWAAZXWB*]ךjLS ,P] F4 Pƌ6hKK$ɍ6ԦAHr-3 KzcI=n[Uׇ4UVos͂f}+<7u%U ߞFj4jr]Vti\ vdZXG6:Ѱ|Dk%e)ۏ y%}{ePN~y캟p;h71e; q"f ^LtE`5-D^P]h/SqEHCS:NR6}E So{m|y<שBo}ӠB{|*@F fQ:ZGԧ׫-sg`<!2 r TY^;ɻ!^::A=6v, vESd屲xקԆ*ESMso<>ZT?z@ J[ge?Q0-vVKլb, ƋOoյW>{`L@kӒjN!)t#&J!܈w·` ?⪶#LP>85<8($"6#{Ռmpp4C(Ң_M);1+_V Ki1Fb0my͐u: ~؝vm<}0 4 W_[ߺ g)tgƔpFfiM Ǖg̉VԒ8h Dl]'81ԩ˪ғR`*oL %7M&8 9њW?"Jn揗Az=fz69~*' Bѐ, 6/Bk c_0tvc(" 㣎'VJ0vT[&[<M/jvM46ig2u?%89=diVg#)9H&7`' ğUtݽ9nصʶMxU? }Iw٠ɩ?a1;MEх<n<1;VJX;}py9QaL|-nױ% +enqD7`HJU &5[7Pr`tbqj~s f;Ṫ^d~+("Ō?hE; @Ó]5m;]]܀o/F/U.+3P'2Kc̦ )1T&b,)D.ᣲ;Lh)OT`] ʪa ؓ)d @r# yf) #M=_!8Rf]~5 sc$ X}{qtE s3z'LLS ^t8u$@Vc /(IE1Pfzݓ  F@:{K@VkȻ$Ei)#1Si*wSYb*N~ye7dɱ2 ^w2x)uY➖-nΪf$Sqj\9OjԹFre_${>8fIg{QVpMH{{,%q)ߓVܡ@l˪w17UR:vNp(ROOGw@d;MH)a<^83>fԤ<̉(*nncB1=s䅓~Iμ2?ݼ ]MWݻabUjl>Slず2yЏ2܏yyU%"?.i 90<`yhD9K㛰 -aqC]0G)kr:3tWc+\fpoH1,<ϛS 0|-2_: VVs=a #LlŃ4βq&]Q8GP$qOR6=!9ݾA iȕ a 't1c[BsE5)= #@n2c\B:coXdFtxMyWf0+}+KE8]{B]\abcϩݲ{F+L@DiGo?;t1 7y#@6<A1V۷E. ݄T0ﱮ T儚' uTfH]B 7) 3wILaLߤyD@Nhͭ ḇWqJ D tVEZځa=qnhLw*颜W!%{I '<ب ͍O-#]8uʓ.az|7xPӏ2¤wENaDш~xȞjX OFdʟVWƋ>4]_ówhZSTt(c'뭔L^/nV(, i>]Qޝx ;F*įn:>[ANūgo2{ 1 U*/QzN1Z<7G]"16-ǒs~auF'_7.4ȑ/ 2O}9|Jy!cm 7p ܆іx~~qfqm@2/AȟHCNpdEy X̾eDF6mt,ivޯ{O+uJ!d/XY0Vb/UJN!iV'76^kUƯJB4e /ަGHjɷh_\+K~DܟHv!˹R F<Ї[ 6b.3~ NP0GfВ⭊62VF\y}.BGL8͕ڊ/XFĚ塝v.ޱGA (e\Y׍\h]ȇdW\Irq!/>?5e{W ٛF,6ܞ'714?3IJNBȮ7y /T0雗|XeXQWqaϚLWu`j.. Wb_HCN4ӳetgѩGw TγHLO4lH_嬭-C3>@'"1P?pA}$?"8N]/)(좰[Ob\}qa7!N; aҔ, P ڕ+(qt1,y gmΨ vZ@~}ֆzyʂHƏ YMQU89 8 sM\\i&]%~u#!65i8;^G_igF1N zр`\Z%rjБ$Gw 4ͅD6 F:>u  r-[w6Of}?˷3$q8B6<>Z0u#! 0=v=ajs;J-y[_GJ/*Z*ŽR]l""0jvZg[.X> HRB;X:@)]1#>[/*Ba҆Fl)nDh }K*>_/<} W"ykUû&lC./y-,&$A8i2n_ ;򱏓C&dFFzԑna0 Y2<_J'*Ÿjsq zy0%i+1SǷCDWXL4%DPLWR5]#9r9s[G4nc_1y F:j1("RhN\C,pȘVϵ:ekŶfNBy{TθM)Vӧ~.+U/*\; wYr7a(.C2Rbj50J_Qo妚S_҄]j_#tTq@ǀftL_ >}C#ʿd{47'+1ny31) 5~6dqXsx+3h4zT#붮0})U4Π9$ӏ[0!>p;ZᗞkGF9IWxVR䦚!-f_$BxGoM=][cL-wn[N 1fL2Rx2KVUIrHv`vKmפQKaP%y_#VK Tm&kk^0GH<[-8LŠxuBw?2R='<6 S32:{f UM-n3?gLBqjߐڤФeQܕ|-p]>\hZ5[X՝($UaWOy{Xp2ui,A PT+rz 7k_apO箊IȀIĐ6h%;݄ |7j8MVY|gj7xٸ2R ;~#ć]i'8fRXKύթNɶ+#kxfmBⷋ>od4c XkT-)؆vZTu<.\w x1 k mN+nO;'bN!}dV7E kujLP|9hyt+zKwmzD|Mv MbֽKGHaҦSE+!R{* Ąz—Ҥ-Nkmʺ%Fj𶪞6v-<w$ P [uy`VQ5^R.dnZ 7`\jyWW\@/;b3Bb#$obHRp~p}SlCMr6΄>4-QEW=@B@v%7|`$M D1>U@ɍ^!JƜـ)WPꄊ_VF5{*^Ԗ}$SOTې7:f[5׶[)'DML*t50Wr i^vCf۾)>ic?%S燘Pf*tUж ƛC:$1'JVG#VIkh\`*[AG^iCJ}Wm [D#{` ]tTSX蔉 MFJ9 ݅Oaڵed<[Zl?E$g nMi6jq4s`p UNoփ~!Mb~Ku, Aa25%ڢ̛J~ iS T?<9zQ2-Vpwon9Vؘ)7R9н?9zB5i"շ\NSr:.XepBԟ[<+*| -vG8Ծ/a:0iCnڽ~P6_ "&){]Isy E۫/?]iBoH |a:<~YLuԗAl7[.& Dyy=.<>ej/Pj&Io 㳄AP˘;hj:}7{5*->7*N=S᭱MF.bW0c}$SG]r\18V]b1iE p{:Tⱇ_b @ $Qv#KH%$'b0A Em5^9W9F;J͚n Xe9|QTh(MԛXU!lk[ϻi\ ^…n QukC1:8,glt)&X؛-?Bqq\(KaGBS*3+D3  w=MQtx+{Ÿ^U2TmY!LOa͟_i>߾ p6p!|鋓C8|ݶ$)F4&4cC,RuHtq|`d?Sـ@-S`uE0RM@X~#\̰`5p8C-#g[LSF;TkMWck{+xCX0ڜlUP^hjg0\8Zc w0C?~lZ"t(ٙl^a] RA5NvQ Pq߇ͯreY97Z %a_(\~jHgBW _p 馼ݓP,(D5 #Vu b1u%Þڮ}@Qgtn%Q !pUBN}Ud M2lI٢ĭ"܇TrmP! S;i97Zڪ2U3MhV`qM] mWSтZd{]o\Pm&Km3o"{MzBBaZ;٭I0WIYn~!`6Ŗn;̪ЫM :hɆ9ntOn,䆊:;B$CIĭ9UFlשdI=tk5Qt^o\ntH㲋mu977VnF4p+ &œ1 e}q]0$x~5?3gh?ȹkwO% meϾwQmfTï_IX"98 B;r24iWfZqߧ]{D)05(xU;^$TyYn(F *X: M;i ^2J.'JS ięחg* a} \l㾖 SXq3bF})moLL8CE_RkHɰ|#]IoU1„%o  ?կ7'̋jM`tچ!sL+iQnA1{Sa*RP {}Kx#F/oȬkI ωf*].MsxZia$d)0PN3F?;(}I)TEv^}'k|/)pt6in;jǥE3Q3FC1PƂǍ? 8*(9чh2 W¹5*C{I`hDž߀㊁d;P[gT0kc̻@yH.*C'Hp{` ֦11;NG0KҀǝjiE˴?qKv'eY3 [~s`b_wͨ.cMSmm0m[ŹUa(C\uԀ.  4+:5ij 䚴rڶu/yfCzdNi@RY* f֖GZ?t9jEwLBh\c;>㫤v/艻g_[vYyuՕ<8ٰOq_siw|B ]8SA1c)|~;U>-a_<[ry;'(i+.:q6S8z(N 90+خE5yCX0oJV^_cFV#{OpМQ\Ю"擳qT&<9 \dS Go^HCpbhWH:9GE]opx9[n5Cʨ?1v{[t nXHy=H\+ eC.dCKu`BUqfMz޲/L*'laqoou YE i $,a ໨$dwEWu$f+Ȕ(SY0:W˼VמwyRÔm}y-P)K}WC[^#0n1GdI RŰ#C7)!8@N_} ~$56۠܁XI0L1e;).ΔeX~aUh@fė2DS̙#'*K3=ePsVf&iwS0P(PC;4E7d#-u@F07zKq(\qduA'Ӣ`vuCz%ldfӬ.]@b쮥 6ԫݎ,稼\]8_C`=y^ z=*..kn wɸE/gңKR Ȩ+15h3p(եZ޽Wv؏G,%^6`VaPw/ϕvv$TRYׄ{a @?6mW/;9Lh al>(QS|vzn#6QՀV̩E{<1ZUrXtI NN`LE2JHԷz  MѺe[Mw( jqψZptⲙH+%c33[s[T}s<\f6틵ҩj*_#<žu ܆.{)pV'h ~ uDjLCzTGƺ+J/ȕ,3e3_vVBQPH~\2*~ ?Gh!8]ōxcX?uybG*X\YX }}$&TWXUb#k4K0>ŌɬamTX+9!\AH2TL0UYS},׸5O)}n@e†/f]I'vv![ɤT&$Jhclݵ? 2![,ŒUDQuq7VqДC@nğ;6fo*G>@R9^bҫ~݌puOcЬ1kUy#75d_Uӏ79m݂VM" WD&Vt'jK7z5>*A*!(x8 dmfODn^a5MHe y|\>kO\ȣi9H)G{HDL ͩKFi%k6@LJmK LzxUTMrꪵ)ZP ;H3Me: Gƨx$m{&bMR%^:d 5={ 5ZBӅ/~?#`:Jdya]]*P6E(j$>;=1Mk]X1;Ѳ ֥Nx_U]8gCPV|K'9- hM ǞzQh9jN p[ߺ}AyM&т<}#ceₖ1ų̟GWS`wX nl`bʈȱnOL[N ;θXҟ}/^v5ɹ?T$!\#LQc˘C!%Y 4'4`M/vIJǁ"0zf4)urR,?=ɔl2-zPBqa-V%=xܨ"Plt&–a}r5^BO(=Hƒu.#e/~;F g&'%^܃+*%T>wP[q" }L:GS:Cܝ8T$uut|QaZP(hGÌ( :f KKA0Ŷ|UBOpm9-)¾)8TnƿȐ/dgW+SclF7*&+,] G7NN[Kεf>EZ93~Yjsңv Ρl5 dg^F@MPXkޜ! ~j0ds>f䂣Y~]PzXb滾Ekǎ =ؑW,HCsj-GsA֎$ k6.rARoC`KR _uϮF7 >&r7{k3?} "gY+u;S2z GF9݄\d+JJ qA5:>-C/Jͯyd{ zGG 4'.y$3LaSv]Fn 7R4)Oܢi"k%;֌:A>4\E5i0Etg'q|5S=5wMO"M\h[pI(SE\4G<$"EE%*=R4*^ >ԜqüaX?:eU'7/_^)SB¢x0NJ'BƁkQhL$jfMa{|`cȇd`:0ì$Z,od2%n^bir3Q7,(i!*ZF@ׁ@fS+j %|]aV9Fw[ַT?ɔ8}}3$2Av :JTax;Cy?~I%Ć*guJYCXe,w'X3Qx}&g35>o^+ 7e pgNNs7~ 4^zzhIK3&`jcs0<}Z0VH?}%$7Ea.{ͦoAlplHRi$ ƵT+S+qt!`B&bÏIz]('%$!ͭӘD(La ̉ (3Zǿ2?ҁ fifՅt<aF!XZY=ѳ{? |(BCch{LJYl *Op\gE<->M03׺f߮ܖʿ\XfV޶U?ut5s~F(ELx8.N]f+ާ9FϤŒ5Tt:0bJcMggsns> ?z˒Ċ>,5 X $8/ѻuEЛ4ZxdObۊv_2{׳u~ $@a~ؕdY(bb~ 8<sܥ*9zmwN.gu }>©qiPQWZKT@լ&I凈E8#D4">u2iYI]2*rH Q!Džy k٥[Ґ2FuP%J^>/fgϱN;HV-~{d-@L  OaNOki5+ӧٳ`d_Wc5º0nsc&>] E#L{yȼ-s&۽h-eҳ殁cdhϳJ8V*_Q @ ϰjk I(G=ч0|eҎ7{HceV^FC?% pAf3۩XBQ\cۙ8v I|?88qNdXXmong.Y/-xM60cK,^ZAD>Kޅx!%2ҭ혠} VVi(h=nsbȽ.bq-KI-$֣^SM 0(RTi5Il,oƒz*@-+x61:it/&Q}K hv6}Pć^kd񮴣 iWq;zsQy4{{ ~,TV&~cgwiic fcMM)|ҷ@RͪŠ|2ê `~V_z(iы+X;{+Sc+@$Ku]}~y-L=U|@`Rjga( v3|w9Ӱ7GBzafʕ^:i-$@> .Xj^n4(e2H73@a6Vf99L *>hv",*~zЭrk@LO~nMi~vma<> cSeoHx?P)3±>.TJueW۰DZgsT.a."ܘ-h zE f7h1msyX/|ğYz% (|,b(?"5 J:"Yڃg-OZwDz v4,g>yM@ SqXEc $p4*]ŢZ)ԢuYיy\VA !n C0@Ju\K 6wV4:W].Ẻ[,wkO2YnP21 EôE)98nO+˫m+dV[ہK5o. R>Lfv*@:1;[xu )(Ф 89cH{|[PbůNMf>'?$=)wAz5醦9{d9&u:-5_AN2U``*R3{gt ppiUJI}VЩ>A# ya$`;C:,jE#.Z^' a*R7kB%ɜEa:D@>&JS=|stdppfq5 tqЛ1CD&L'j)Ѽu4.g2D0;`ig`T 6clr[o)8P璌"u-m -}$^AQxCCGA>5K FCظWэAJ 4 XXKz:stxR/GђgBw&,,n5LsJ.1,>g†f')(R nǣIgSQ^i/pg8;SF jؽyR*n\4gZ&BOv, |);;yuWCK"Sڂ>X}rs(~ԗŝ# ذ3(q`s(~4L.9!faϞzWԖDv[zIR#wBE0vCW^+l kߙ0lYs'Њ 'dRNhU~s x Abs y/]}6S ag/9QL }mIC^1dYڸHEI~ypbO-MKg09Fyv / [Nl;azNZ$`;T/N~Їm dys '^iԵ=K^YeFЏ/31 ,cC>Hbni$^H6^D%W$G2u4wETC1Wcp^J;σ9VQ}X/MxQ1'n}3r_}jIX[E2#̀\z;\[ Tl!GY񈁸ean!$JG\jȢom:v$ڸA:h}9[7L ֻ2M07;/4xrq OGÐzZh8 Zmjhᖟ $${HAuI6_;KAB0/+se-M<}k>znB;|/'8g?Z(xJt9$QM !Qw!VџODU-y඾TAH,o}R7*rZEч@ t|(nN긁&cRn:uҭR`&(gq]8Ty~X[*10Ʉa 42@+* }2FvNPDP{ pyrGJ7˴#Qn#>! S|tODc7nM܉/0cWg!ۦC=ԧ"\3[5.ctqtG+r-V͎8xs}0BЙ+Uܺ//i-6c3]J%Z8m3Hw:i>7 dAuM(vw*>UЛ+ XSgL(kٿ] w @AI,b[FYTpirG% u~]Gm$M~Rg^;c-B~eez{Zϑ&Z~ße,D"{c <<0iu8Y[@`dx<>x;I-HS \QdUbRX/C\v>R;r{-v1/A8l M0qۂ+JD^J-:*6p TKFfȝ %$GS.;($sūQh9UIKĔ>B{d4nEa1/=10K=a21]dK6zLs2xC 4k [C%^Z8%6|nrd3bA<*f\xq/m)L|6KdwV;HS-רCUQd%6)t5FF{LvY7+{wz#>I8RZq}{16Pۙ%CbĮs%{0Oլ_gGnsP6y`tӡ;XPT\" 4#ws9X]\+D։[&ε{5TCfBZgR96l`4Pf,n)R"pXW ?pRԳLK+V\V'?}P>8U|fTv߂5Vͼ6dž? B%*保jm"ˁG܇/Ub.\Hm/C;Eiu~8}D֭㭮71n<?{'gJ hB 2(tl lqp :W> tn>hʘ?dE·xэ hZmk 2|UշnY µlWyG;UILHIvw"AR?t//;Ғ"aGa4aQ$m{#֤$ SUtH D'@ULcjQ @%n~N HE!Af^7:3v+T4a_ k0N/k\U]RDcgoc?yoܘァ#a:[7)G0 mT/%b/l0ဋ?ws@>->Fō;9'MS,g|W9+ _lf Xx 1⸄M&c࿶WH91/B)_pAbj!{r+S, iАGʤ|޲,)]vءʃͦ ]2*C) ב|Cgin{3pjIK1օ[M/@*Ұ!j2gqp8.>DTaO?ٸƓ` {Ef9BNFƴC+PlJ5!uW|LP 4Ev,'mi\{w7j0a-MLEKGE˝\{5Cl'5g:V7RDwVکF+-}p21>A)X$4f>&G~][ )gюSnUuKӛc,O栁l32VAÑ3@"dff.Z+)I@h 㚝F_h_eW?d\Ƥڛfwҵ>[WTYf֡?|e !<|T`Gؒ_ص#yumh`;;κֽں`'e+8sBR7VyST&bGW >HFP&>T=/MXqmJwDƫUѦeo~8Kl~>5*!nݍ*ͱ`zYXB6s/a88!a=~k8*Az+e@Rvs~O[M*ӮS0OXJ(6؃JGcy1:e  ޑ6OBo/{5Q{N.غ @~ $Y"wZnv9XGV.!ګ 3^EG7P®mIk٪np)aJ {&Ǐ5FV*2 Ȯ[dȳ2Cu&q " ۱9KZlPC̫ -82VtD"d1,އD)9fb}9F/?k:Yr2r(>o^9w䦸h6[ &4DD8FN|nXs0/`ԾQjAL2G=E&tfz!Dg1+zĄT3 z^M)D$Eu~xRO{Kf֢kn#QAlAƀ<)@xjux!|^ȩw Za1l4* юĞŴlTg%܅hŻW8N6xVqтXMG#AH; %ʔ@OPdvbz @.<_]{oRYdz {B䅇Jϳ]AR-YxY걼IC{D(3dq 6+(p'=8ӈU)y aᝯƚ;hĥ7AG ҫYc7E]{q6.ܯ[PV %|ô< Ռ c2Ǯ3m=#QVaX@IJF;oqQ'Bn` d\|a_V>q > D.sH+uZkg3*Ĩ$7ՌvGnLm**"U [Yb=4?>G#V;^y.ͨVB΃lu)-Ϸ1hozei ]31@rW E̕2ɌsZ8=_Mņj(zXi;jgϧ%qQ+09Rזˑ ]aǜivӻDb9߱]Iqd@? ',v}u'O5bDi~ /1[aEef>+tv`(n7Hk3SmI1ȑO̅Ő̥;iaYm+1aOj4 N 1Oǃ|=>Pr`c I LM/yLGٗ, u\Jum=y7Hb72&ͳڍgsb C!|*Vl/'g-ڬIfh앴B<;V|/} @` xfJSiWq䏥N!pVCy0rC^ 8ׅ֔ zI= +Wc>+#H/x"9elt|Ta.1u[P$5GX fټ}"]\u P>Ұ)^ KY5 lc#&$/w kq乴5IoЩ갰kqKM* Pe{m'a5H${%Yh۟sD?0 6e9Z •8+cȚMrZS_Ա/bI|9=@$ ЮR`UmD9I "r@K m١0ͮGxK+~RWj UQC +{"_# ݘYS)qvbb:kz),;3b,1$[YZƉ OI% <n>` ,7xc2'>3 4 f氪ϫWZizoVR;7d-pmh{?_Z'hA^} ͐ ȼ0c?5K=b ¯M,n^ -<כoxlUAqkX+E{ ;J0o+[^r{德65=L*ޟ@{EX2S23@AKƈߢn|!#@=|`wTkEḅN]z /qfi;[^mY߿d1Kjq4wܼ)^V6+bc8S[o) N'udYKk&Wn6-Mn׈m[gڋ\ϭMI=/q)@}*etZZt.Lt0 -~WqtiP(w!t6߳@0Ø\j<SR)`Ҧ+s~.`vNel$FDH MLJH2o1yji.%l}~ʴ@7g PݦQԋ2lw H>]]Lg[23B{fu׫^J|LV ]<,X n*uZxR-s S5U 43!cg1#8׿ *PO^KJki_Aٹj Ċ}Vt"۹͋~H]^"dMV6<)qERH,^.iܹ㉫nJغpL65uI8ջ8hmeJ3ǐ&{Vhw/ 䯱emVn}kyW*cBW#֠pllͼDHkf+{f6gH_ :-Yjs! JQRƒfcD~üc=U~tlVd*Fpت%iHE>Nl.;:1e7,Ѡß=AOby<}'5hꄕƄRԠKMe$sP:iPLⲩ?"e)`H 7J V* ;Kڟ)0XT"5KLzqݜ!HuOfBROB\QZG1K5a.asxn7`uцP-RKJDɗvXa ,6 XS_E")"XXfsXzrYcN"s s:~H/· )A>Ӓn( xiPR1U܁Uh:'bх'^F`Pq/[`YBت#gԃJz83Q }p8;|+ZnS4ՊxV;U??Mc2wF wz_*b+Zr΀ !Cnzż[?箨'XK^ylQHT ԃ7)G{*g1ƟpCLƼ0UitJ`.5 7'7VT%gŒ+{ naC{t/Ml`gg1Ndb ?=ޚ}f= 17Y(y{ GH])F%xT~3Py IE 1"iCǏO' FHBǘ6^Į13 ,/bAAa߮60~̈fD djLJP#ƕpM qz4PvIc៩ji9bzjz-*A4k EX4@δAަ|VN*v6{8R/^H \fDP/ZkWƫ,/šL|Hke p, /+:OtzC1{aHhG[.dsR?N~f oY=5le>2OW_ 6Iay};ìck ?!2vi'wtrs(I0p֒g,^#>PE }(h # 6O S]5gq r]Xv 4B5jܭVxf"-舩oA7b$BvCEv8)|7{rfIz\&~!ؕVaZł(?`9]nqIwK&,d٠.m!=$wS&dC(3P}BX# ~r&:ZR(f F0c8gr^~@;AT򧮌߅]۴bC#ۤlW X\Ie9fn`=vAO`97@z6FH;@iӐ$=t)%N~*N"sH10{WdR:X] ^SK1ha_.p9ʌ3LM Sͯ?*Rr-ݑ&xSì;j&4Rœ❔WLsʺc>kulV K3Cиk,px@{nw?T7A5}z.W2DtjDdʃrFzc4lqFS?ܡe9L~x8,u[% k}[*Ku^G4axRF#Be -$gG(d5GMK޻+ߐ*\ YRi%;s" ([=d-PeiRfo'!;#[Ԏ\޴E.-vH %: ϧ5!,LiRV*´.Rp,@e2CCc+1o4 U 7v|gmk \cW==^^#/}R@u ]k~qf;iE/EV.17arvۘ -ǫg.9Pph 8]>M A`bIs3{b xٳr.lme) ¸1.G4$ O]w!n،u{A]ysf[nc鼪`C,%kQ2X< Lb@Dyr[deE*Tn c4jGҋPrv.v``3b.)OȽ j~SJH(h42@ѩ%:a|-T/R/4̼3i˭ l#rs(\B#Wt 48#` JF_7m-B1MM'i?sjT9g]IR`GYamdƊ`߄PosUn:ɺ|]|o[ЛbRSj\)EJv R|v|/. }B̥ar4]`| Qq>o >rknp\S' }_ryz.^J%nz0IJR-cV&a3+0=~8CĘFaKnoVXʁvm ffTTO+ qȼ:S {8Z XF'8.`)Y`N>0)) J"iҮIb{gML'M21U\ڡ{hv||Uڲn,=JVݹ"ߏzbRwAᚅ"7{ oq{.7Cl?9 1Rj1T8s-ڤ5a:'ZN2籤 e䧝[hֱWMOrXF9xmFDg-vTy1:+a;*򦿁mm8(<-D?.m=sC}W0WA)F_ߣ5w["9;@/-h,+$ K_** Qb΍G86sսop^gA Cs'@eKm45 c)ᴊ,Cpep6tʢh%@=cVOZ~;꩷NjY/Url i%a}Ya4})8v '#"gdʹW'Oi&ϑwI|&5LOH*ؘw*M(nlB.КmWL 7Xy.`q"NMUGgI5G[RxoHϻ85Pl[g6­YMi*:|7IY>4ߔP?UTQ;`̍긱J^Af*C]P'\t3q_x6ٶ LBLA4٤eZ旤JzS94"Z5=#4AO&{fٺ$2E:1ˆ#Z/NMK2`MMǨ /uv\9AnQ듀Cߊ4!:nݔgϤᨵ(&x&I3p3rV@im.}m;=$)5+oaF(xz%ẃ>FT<GigOƓ$'֩q,vgo@G;*WF4^W^:>V9a1plYc}Z[i܍ҝg혻׎|wb&ݱ$n]zJ$l6L¶IfKI%_5D4*] En}\C*N ˥h$E}}2J|UkZs d j"(%7Pscc7yy?gO|Z&dr۴wٳӲ#@c=I& b# 6mq:D=sd<}R@].KwG%7j霜1Cuʝǜ-m?# ! HZ1G$DӐ? Jv p?@ vK; j, t֓F'ѡc8{-ab*c% <6m猗Qd#|Dye_EbQjbx+}# y8OX fFjg+F;dy<«"n.#r@Q 6Mgk$=c5jQqW"UqrXԭrIap (gPDf(D`KW(p>^y z8PpBr(Z)EzyqTQSZг꜓9d? ۻPym܍Aw[T 2m. )b8d_U 1qΈ#C$aaHХ;EK6Xҡ&,l/%G\3V q \/p['OiHYp޽?8nUcePU}zh3eIG+k<\0Azc|t&հ!"2W4 $,87UɔCgEA$I?k'_DP6DZL3-XZNvoI.sh*ey `rWfØI>݀AbʟヱVݔ|n E{!+Q!_Y3%)kVȧU0 ( vt?my'os5,3gOmv?} @W~f|o(ScMi_~5S$ f6]7mE 88Ͱf.߯M+p:6f PGvty2dpg8* MUI &$ƌ!d[iʑuA.sW'/[B#6 d`W$ӒV1GS8wI.KC6( Vwc8<댅G p3JĻZT)f/?o1.j]\ 3kvG&}ԃQ̺Ӈ _:lFnS=TH>ʽ貐f -L P 7Xnb~7R yd8|6ODrytd6{@*c^9%9e7IFxʴUʳ,:,kn}ڰx[_d?d5<:uQ+= P\Cnf@n) šBNk?}p[Abdaҭj&lIzݴ(ܐ{w) |d\P"Դ\j9$CC0P!zVy)I~ilF_.DyG<'rn%!vl@_IrE^+գ-ԁPg\|yxq4s0~_XGuȞq Ix';0?Lv74A/>9g*X'8>PR.B9^׍|:[&ᙩ̩ZKMj%Bybd$Bo^inU|K`9.4 } $ՓhfyFF[S7~x}dDn_2ͫq5,ea^Azl`'6 PE4Ytzh,!tש^W9]+.ɟk`s_xoǼC#ik*4*%N8-|W1-=Bf9I:'׿>0PSφI [II7Ul( JI}DSҺ&8={>FZ}1uvcNc!ީ9jbPoۘ86e﵄Yw(heVm/?wqktIiڽ13W治t8pdO,:LqV&ӶLUY}SĒ;^'Xө k.͒o9X({+ s|8tʅwc9[ 5k# Q'kupM,ddVeod߳Uqv +, o$ڸY)Sj<[u"K `Tm!n9{0(E@3MSW2H i$ ?3:Z+ {UbXDUj6RʊuXj+ƋRҪ,J8{ ^ŹLMO-S^5imV -sOi.iQSƂWa'9/ohJ:E*QշO6'djl~`Dqsh+k 1r&v vJ7??Wqq%V h%Ƞ0WhlZl9фgҩ;,Tc9nj+KYӖՠ kO3 /CidA [^;}k/[Qh_bӬ h"%wnnGtlI߮1퐖xT粅=g#DMIeu@"1N"WQ"cLt2z ELHE1~5zU`9~2c7: ʈ&g2S ʨޚOaiyxƸmdAd=QfܶOz)FoM?Fw0A<@R/( | .hLϯTM4#GKI,29XCx 8X>٧?9?Z^똞~<&;-ʙd?8G%8VD*' JSL69zc*F=5A1ډ69w#O9,wS" E<=S)[96LF^%EME)D-tvVN76su*BDŭЩc\@Y:=kg^NL??Bb=+t_"d)RҺQ>:iug?w=wJ-i3$! E^AY*]l6ܽEe5cԬi͠xwl(kh p1܈u8+PX `}bs)>&:-Zp)CEvį\J? ;&L{j㨿.p&}11tާ|}>f dCq}hnI'J}9I,C/蚋)h23U`KS;aw|矷gܔ^=;rID/am\0r9+QH+.yx~r~|4jC{&͝_)0<$(dfďka-3ϰáj+Q-FZy((O1yU@O{#UxAG R8}ZQtXj+-F gWdBQ'Eq2#lP:\8 +ܪ4' 8*jMJ%DWޒ}|\ (eY7 \{AEl~_c?m6%sR FH0VjFE9SMٌQRhz-3Κ7՚n-5>,^&*vw ?4̸W`QMk@=@ P!+re I@-MqwcKCϨw*fMvse (%}iIstKgLF)5xr58x6+*pF,`E`} €P/ofV5[IS0>8!"#^yZЊ=W+duyN!EJ0΂-}v]Xtccӵ>"#"p>_Ap}4JݒL Ԟ+:)[jvk.!38L٩6ИX<8)0KmrMG53>[1^/^}?}OuqMn's- 'vd* mY _{: ZrɺRqc~*'ql/D dS^x)~ ѝMqdڭ[Z: >f| /q_t=@ 9~e0c4UA9eL.!2W)7-)%ԯ4Q[RG51ϝZ͛?Sk*sOSt@(RFLGkh˙ wR- weY`(>Bʞf(O4 լnWGXiGj2G>h*:2W Wn -`^Gf/z cL 8/ƨNn!wNkdOsPmV5]Z |N<ՀOW|) N3gf_/md4]Fdh9Y]UmӠcTb v2Cv+;&gmMxX`4İAVݴ>}`6*GEyyP(ٹN;c8$,T#Lq*HIiԝ\_69Ap?h SZ5`Kcr]`g@@UD`e ަE}dӾr4{຀#B0` Hk[6WlxEwm7QU[{)z*9MfJ2®Rc jSKw[œs{FB,Y?9O\ܷ=s ?~d}MhGccML4~ 4(TFXKF7iΌNV {}z+GJE,{L $j`d'Z"c\Rb ![#Ƣ+bOw49v%Qؗn(-Pi"(N.Ɛo}̬5s/b#bS ]<`0*<ַW*8F oC94o.!k]s0P;R`c\J`ʐBEAv?v#t`\Ugdcpf1Oq* k6ɔVlier^֐n2Fv"?ur^]y_A+/oPfObOSp ʵt`&H9$`BJ<Rz˴2=e,N*= _5]@Sr9|C[mNׂSxa;bd}Qby˻:=. hr@S"vFE琞2Z1ŶRH\|Tr<ȣ拚\R{^NcqJ=j1]婅X:@ಐ-birbt 'J!R LdSHXK*c6ʔ{sk#r|;f/XyX9\.|T+Ux3N.QW]7fw^2Ғ!stǕz_}K{g'p/᧤cs _|ɍ+W١et >C*2&;b&_9E!_tyn _}s\q;c\k*ͤk_UJhoٷ'.FhX`w3mV!@DJ99~:uLY"`TЍAu2:$Ԙ #îYR^ӭњ2,Im-΁vr/.M6 3R pԉ_H!Md h%;@YmޟPD mC m)w* IÌ=:q>MxYULZe"NgL<;`2br˩w7t7t|q&nM ͫ{An3+=!ʍڿ\@SU}xCFkXprr+ 0ֹn/QE&[M'j7~(l-wjB󰐎9:,pY9p+L5kT:*`<x;ՓM Ō1.]L'ޘ ȫ}t~41xmӕ( i]Y*ީA UmQs_6c AG"~,nфb 1 j5GOI8U<9/Ѯ1{'Cj49~ %$@M:+jS4?֖t@uݝ}N_\oSh3rV":q~c sC,|(qRwPcDR"pGͳ9aЩ R xy'b˅E j ?X'p8׭Y1*2HU0^( |:p6V~\Ԯ,Tն2@FAJV0`!?;w4Itp.l] HvjM{8RĻWdI};:NVNd`O|-}Im90@ӜVBN^;^KvE3l}5wƲnJs{p ./M{")r಑'{_\͑ Z έA*äp~\ D6S=@Oe)np ۸S(ylnIH8^z_z06 BF7|41]}9#Zl-1Ѧ8JSVrRl]Hxh~J`i \O6UC"zJ#O4 a90a>G7RN?eQ3VU\{Z88e`T/';6^^xP@4/MYTFhvY AڍGe^PGي6;aKK뫯6 C HefSs!ɨ3G^{nE,k2ԕ{ZA>ڒfe k5G{g2|4Bis\w(2ܘ.=z@0Pվ(@,Wn;)Avȍ2̢l Ax\FQ7y?KN:B/zWG{F׆R{NsHZdž굻%HT2N3k3e PjK]~6j)οn}abS"ա@xe0)5$tJFRL=w*x^eϹ&:Xb`|,p|af镥0EP K2A\ޜ Q[rod3ꪬԗ9ČR 8L扈t $| "θ~L!txML,p4r{P|ЅP4tzO{wls(R%0(UmI)rPbjZ 2`~@q/{]0˙P5*R70֘>C[XirRѹKk娸aѱ lɹ`X̓Aglbf rAbNӭ^ɀLqso$ЌhǪCEwTj> IfEHS1Q9U;+܏\$oh?;uivIwa,kgFi~eWڜT_ R8 bJmtaM VɠF2/НlvbmBB)p[j^?čx' *Jط݌VV{LҖvW(jc>4C;m%L*ݫrZqL1(ʄ&]/peO+r1; /N'8v >,HlgIy]JM_}`Iu{{˒9ZdMd]{!RnY-P݃ Pø6Qĭ@7 Į)u'ZTAot\pc'/eWqj%{C6f-Htܓagƙu'lOs%(.J/8Ɔj ˕ 3!2h >UFLQԐq}?'+u j5Tr,3|9 kCG?[W^N.&ˡx?ě*U@xWzMxₛFgg8Зfd1=-t[I 5S`fjDtb5jD{O 1 ѝK`lޜǥ2 !M4 ~+h5fӲ|Q .ً csOidO*;HJꝴkMWfܚrϣy@},9XMHcq;f _=1 zcunI x!_ϧ_\ zyl>m?M9YIFWsrcH a^oTj3 lm٧ENRO`)]^ly{<*kkyx+ -!LK p9XžVey ck y'6ύ$g^vv RLNO^lj@@kS9޶+4tFOy|ċXy9ܥXtF'i I!xϭ t*R0^wn#TK+RVVwQaƠD|,}>ASQc՜' #1wT(0Y:sƒLFPPwX>,/w.VЫ%-}{$aʭvefj`!Qh8A^'[gcx?VWfV2s<">'$9MO/\)#2b%D:fiQ)8!~ݧ[Cka(U:|ʺ S<ծ^-* ?(|v|TQ%Б7)EVzp{ig/5}>ΉhWhI&RS[pgQNDЈ4ȗp2aXMnC u`hکFÿvYю:Uvy8p6 ԶOTaJZ Nqgs5F/TzBR?<+@iwG»bTK})Wwf@B3|z3DqI7\O퐪WJch]9^nyOW%~"1cb;ɔg[p }Ղ(N |r?Ϣ>awmi0@ƥW܋?µL5(Q)jh\߲MƁH˰B^֘xЫ)Z.‘bݺe!k%|uiY\޲T )P槭SN4^@y.?DOk7}g_VQaOΆ^n}p列ԆlD{] 1WZIK*`Co5&O. Oy큅9Il80 ]r~ĘLv$ڙRdR2p*2/َ:n̍QLZތEߵ>o=,r {Atf͇-gp-HՔ[QR@IAlٺ(`̙]SS^_u/+X7wIiy>9JӃ3Z8iNo [}=:7Qfj2H;foGT{LRo[ 522p.rI*3GefnqErb7 U0\mҿ'HT]TVR4b¢=ihɚ5Trmf_a vsJiŲm!TѠT$\10B'%P#7Ħ;X\EM 0ogw;O1G4 ҫĒ|Ae<+ ^ϓGy6bF|*KwI5k3p&npEgcFRaMr"Rۣ"v{]ԷvPo$MKv_JGy@%([Etc)ya,;b@;S+adKX\LaiQL}{(%\ey?·x <{,6T+1ʗ=S7XZ ݘ(r )}>v81؁9ۙwוcw|U_>m عLv=dzbr ա*.1I(߯{^^7#gYC$.D;cl 7 NMv YވT1`i.@Վg;0F6ݭ䈼F$WiB[J <CPTN`l= umJ"Q#o@YKXhqF:0[rKu4\Cߐv-)}uM[B f=k ?-w N14j @K a^30r+$b{( qBߵTPIaŊMK﷘&4y9}X$ Fi$?N1'#ۛun~򸜠(1+B_WWgv9yދ[UnLBv!I: pX4k@9@;%6T^x۹u|3kW3A6M&`B)di7J*b]xDH5MO/AOCrj\ ,SDgvӇvtޘi>aQe>/gd#@Dwsmg,9}K%tuEk+3qNu+9%ޚֳѣHK@grl?4TKFH/@Lf{~N %=6D7B8| :}.~lV1CJR{r@F2O9Kb Й2^(?A|eHa8ށڄJK u#YkwN?(:·0{f䒿m[Q5i`oim_/&z g0F{?KiЗڬ_ps~[ :F(9h;saNa O=誁hӄB'q ;#Y؄RuҟdB&„C } I^7; fLlHhjdakSP:GT_mEvaH}_1׵hQ< ]?T`Z/;n(fiw}&OD)Cjpn#Qu]?ɽG+fhcr=iW%#cuf>:41;![ >mܼ T0RڊCްG-Bq`R4@8M)>b fh0p: Xhh-A" 3|tͪԓ Pv/>|˿D&P0i1dz)˻;FYЀ9qKD6'V S捜ޥ ]Ahrizjaq~M>V*a0Kg0ya:o=cNU#.ŅBgXS/J !ŶlU0\ h9 1GOeTTPnmĭ9^vfAH ,]1HƒD81%3&,˷jgXr,"=xuZ!PyN\8Mosg:4>'錃L-}BXh g#aBq;ZhweW5ƭI{n^L{lv }(0bO(L 8-'ݟD_ؔp}ms05Hz` @ zz ̄nw1^>沏[x]ln/ 1eֺv*H9a #X6y*tqsZZehhId@m@ y "5xa1pU׏*ji2yK2ζ'"xDIy *>Al RNo Gbp{h0 [@139W1uV/K/Az(Q2ݞ;|5ᖽ`>kӿ 8 Rre{UO*@.o c[7pVvު6)"ŵ`zãqt8 BqX"/auJ<5},I+T1ut)k}rvNGsTgՊE&+ 1N8%Yj﮵Vz6E]9B;#%7\n  g2.q_gb}kRrhc?xO(n!ߤ]+])1I.kh#\ThޙOoD)]J{Id6b 7&%#Ȕ@I [:!-.c2F HVXm(SDz> S)2dqk(×а?-g]LF0h(ol͠Z|ғ\踈!]>֦ThCwfyrbשׂ3?T[4qHE#z'd|deT#/uz%t:J?T2xP*ŹS:iKYNmut *^]+K8 *$?AI$!MrFCI>BaO[0(.F ]悖IJ KM4B%j~* -3`"|+ȟ?^)aSz&[P OLq7 ׂF._hy(v]4`}EHqŏMQ'' b&i^+52j܍JϣUl7UkQHxs?'q̟#.&g'{R;V~9r-hQ/. <6wI,] =[a)ɩEqt2dz;ǑY׮Wkk uLzl}ٯ5& XlMl#b-)bh-6P42[ȋ or4\gDz}uyQYP,QX)c3b3:Fvn*`75$+֧kr>|VȔc_/SGWܹ#R)`w(g~Y$JWce‚̻^dPUEk}5Xo(s̖؛ZOY~wqWSXD,Ecz^*͉!vt[=2ڻԢk-# eGjl8d `~(=B7C%{DCs*2Jv<+E}0:e9`}8r!{G~Y*Au)7MgjZ28 UuYPव9<]QGlUQj{ %KE6[k̓4$g`+zK?J -`i>rP#K2؅YՍ?䆥$u6t|x5T5 ȣ,Ёb`iNԼ^`m_{a~_CwN{AWHg'hЅcUh=B>:Kh`}Q}<f1JP1u?xktA8G>ճ)˘t>F"nZUnRήQ}/LZFGnҲ.*^z DD m_On/k%W %P &E9 .BCc(qO脜Ļ5tUOΐCݤEDa=Mcus2H#Ix QYьY%q4>"Դj6:FܴM{ă}GbpS[LZY0n*85ecܕ\`tH^0S Q`)v],#i@%:*A '&I+1i*B_mYluKn X09gӊy #a(#{ܾQ\(эErfx[fK128#L$QmșQƉOFE*53w购;:]o {XNeFfz)o*j緝<f~{ܷhkq7&?zYv)6W~\er8rxr"a٫]A:a:?+k:"XOn1="ɒ 痟'Q *x9)p $tkDx'MvKb'FGbyD_M1?IVS_\tyO康d'nۈsͱ%tGz)VE׉ۅ*<e&MwU)4@H\9lwbc 5O'䲨ߍNLn~}MV Qq. #WjhQӞ0֯Wꛊ ,#ⷋRi_n-6$H7@p)&;6<"|;r .2b08PlT-ɲ)/q6cD }|T!v= sX`b\Z!Y8{c <6P;>7hiw0slũZD$^`LZz2Dm,s).Q<*=z@4~>Lo,V{^=7 h?/Iv•[X;XSuǧ?%QiNsb̷i\ rQKb۩'oyIw͎>H6d;]r(Uef8;t=tf3tt٠?ͫ۝|EΪ g`5NC5g Hp]v/ CΥ3͆8;zPgbC]=]8nاo-Yk|2t$Y{OV~R(QNo/JO5o.Jnl!$ Fl#bԏ9;64~)N{u fi8"A7 &8r;0[2DsmFT&f%lW2eps\۷y Fj&(@lb VVŠOаFC73eށ:;$qU"1$b_痌 $'[3qBg3-ER#Hj{tܼCUGm6X]_P ʱWÞ´pGY L^ A(IB-:uHl]-.#xl$܉mBg&JaW&Sqe6yĐaSf4(kOTǦ56`.U C@aTHұ +qTCRѠSm/ 9RGUK`r!K6]WBP&j@>RȶFG%.S)<1酑EQ[`!pA`c[?=-sxyDv'sdו" eVDQbd?)DR}mWv̓3Z!Ȑ` eF|ͫ@W!;6r4Aj53~ܚ.網c\d=H~a@7^^9XnX l2\?,YVA1Wz(n;8XXuvsrJ:RW /1qHfrrĕʕ#x)jt';PaSeq߉)]~8.o"0ARO]~M(Ob v =PҩEiN-ZA Ƅ4u ,u9;9g&S8_5cUlm> L\FOFcg79,,=Qka'w iif3aUZ')Ũ)ΊaY %?cc|q]KE_Be{ZY~SR^9V)39S(X˾ne测Txtxh+> ŜW;.Q\ /$:s<#em|ɲC NIՒђyFT 3Ł|{ʟL cIŏյ~>4 }f`fڳf 9%#M(In?ʈm^Dâ^x КL>~ZXmv-=t-L|boM~D J/ p萛Ɗ8Qe O6I_ZJ زV-ڲV]/'Q/(ܖ`FNWhL%hծ?: *5g1'u0_n;}24'#!B5i"`}+By/7 [& !*lF+~m}j089ݬ#~f`d#ƫ< 9>Gs-9Lsk}jL6"p*=2\/Ӳי :*)Kw +zEWZLAQvw"Ucg2 yK `2oWyBxmjh,/B61Kכ̛7 A *y~tV42i le1Δ6B 3 }) q4oGF/7`X=rzjqTWВV%zo.expydJy؃V?LT#ZqZI->y-{bXO$U#"V ^~x+ŕkX'Y\-퟉ᤎBᡓاnomG@<'/m!+"N8{{P40l:$b U:8ReXפ YJ.mݍ;>7=HKNm{l3pi/#/ՍċtLSї76/0ӛSX2G?Ma$LSε~\tNڹ9P)+0яN7]٠$"q(il_AY\gòQ%RN Z _? d"c!"mڋ*3WxEHBJl#1K{N J1&8D&E9D]%.2T5s9>? EW ʸe{-#p0!&$1QRQ*BTC~I?:[;bszNwkOvb/ Ŋ\'~T{MS:k԰&f*>8Lu|K9(.tr/ "_^TybAsT%?I_ѽb/з[aG8EcBf=vבOߪ{聨E&^3hj]`U"?ӕ3˸Tmް\.,_=ؤ*c0 O\2Mo- 5<3G,OM7C$2ײ>dL1PC_#^/3?*AhO2n3)m4T;,H|6]%QfeoL&![)T(\ mfIcN<,L6^ xC5?ʼ1 ڌ(+e0EZLI;q9EJ"dzbJ#d\wNwЯȲU0WQP99h rK'F{s?fU^-;RT8Bh=T]f+Ȣ'{y5׽KikO~z ' fgأ:jhW#j?bR^ІttA2.8C8RO~lZ/k.]^Ci^e옗R\3֤ᝤЇCǛDV]"IN_QS\(v@Cm<+V],kSĩ/L!Loy_բ%nq,o]b\t5Ww@E(9fYdHKUh,HRUF)'%iW|˭(ktN@tyD21z\%g&%0QNӫ׎rh;bQ)A ) F̧X}A%>e_n_]P-"%N+ n aE#~{-G4V3%]jl |_v=G_j3!Qg{?[S"\fuٟ1}dnZѢHe!RGB.vQ lލĒtI_-0rp̠L(*/ynw+@'PpH.,^5EljI]oXtK NSɱ$uS}8m[.`Giy֋ 3IzX.o%>@X0Y;T1l~-X2v}a_mm̞JV@;$fOYxIH1y.l5c[|$6=4BZ޹D\D)%V3/XlPG$ 2!HP }Ni/Xg1J]ΦtL9g.__E~6::vOO#YSA}){(tw0/ah:#51c=*Z&FQry؈,j+ NdbW 黶əaWfm"XEj%s6RA( dfAnu&@Lnk Qq!h#,J ;cUZhSHq#Gsq6dK+c=5 ^1+%*~;n'!7M|qHY4f.>V ";P:"`YA ̖u%kZj9r8UM&ƒԲfZt}%pUPiL|%dR$9pX/J`0 Gb]e-:ǝ'Ffv$c~Ţ~;`Wul!`|܍X}K*p IyJ@;7s ;HeV3VK7[gzS5.$N{v1W?''1>`6H1 7QQvJz18PW崃(W߃'C`G"fj΍cg]ާwe(Ah4f۽msZ2@-[5+-vi+ߔ}p1N1bVG2blw>0UD$W`[ Lba+ѩUZ8*&Tz] oL٣m0g<nL H3^HAhKH0$➢;iqNS6y$]P#:֗gw~~"|@6Wdh=@Vm{zT˖ @R)43YMI+?J, |шK8VeBzPkuy}V<}=k:44Mv=?_mD/8 * G;+EѴ+v/=>4 ݄sB6JRR}2#YtlXQo.U{En #]n9rbJk3t-!P­SfJV^v]ǪMޤPL1H/Gؐt>fo89 x}䱻oԐh)uT8dp35YW !JhvRiD ]'pέ5gA5?KպbTMNH]31F!wD(Ig9]+33RͲ"mF %F Q%dtRC4򹎶`>8?ij Yc 1{$9G`))"׾dF!*@#0aBk&'hQO=:s%.nl^N$P zB)H{]傀2؎RLA?(~ۂJcKQkt9~,N qK2.Wx5evn_dΊMH7 ecmL<.*oϿ1b &7ǫ!\q+J [W(FPSy'mU)vEf)흭Ir'bO/vHtۿ[Y Kt~{eF5]| w[:?JΩ'/m)$eta OլOE9_y ݻE6^ev򺫰Rֺk&:c7H Og$Dߟe *цrCso< vq{xFXBڀbm\(5p  gK|4ͨjDc,2英+,+K˒a#;C~"i_;qxnWu-ك[1MKo;2W66'O[oݶZ3aѳТ'"=!T`;7!xU,L װ2l|3f֝E~N;x;Pg,)RdE$ja& _`p?t>:4mߩ,(wՓe!r 9 WCY]RnNsw q-GdI&F_ 1]~$}.{ bLTwbVƐD'Rdeg󕵂CO>}8 et<1m,\\+FlwWsY^!~c-—gq8![+bN(|[)q䍂G'O6PXR%Kv㺍*NոɗM-g[c6f4gm`⠾qKj#.}}OK\GHGx9m7C7_@'C1~\u;ypXLD5ptQV\oFOt_5ڗ}G[,Tqn Ic,ILlO(`{]kPDF]su g 2dm#FC x?h#:1b: P!t8SOE y/|΂,>W"?)_4YH`@eG/g; ߿DkKU< $*:!T/V=ͱ^}휯YأOfO(f8i^(i&|ϢTo$KlaQ7DT0hiH>T8i~2Q EKkM%i!F!L+7%1k{|9qyyΌqbX۠N(.^f;Gz#j:vtߓ],z uS+n4Xf~9u޶xLX,٠ o .j2Hby!ׄcG»{LEWl ?ػ V2b`V_pm `"vF9Im>xk{Ň݅dߘ-:VvR|0;! SZ<x"yLr?zqhΚ5)a7k#J4I%KZչMRYDm\o whzWbunR.2Nϣu0!r Uv [Kl3o0x6eW˗GѪޖpf5dW3QZn0.K[g:㞌$e/9nrfKf;V<=}F)@,b<6UmRj&#{; Iq*ܸy87EWc*TYyv;=jvE>8bo@2e fIHHz5ps}FA lQFM P7DVź8 }U:xMӐ&]/X-$V3b$$3">bx쇥Äѕbq/m{dZET\9 764í ^D!A1Vz޿L\c.߀us:`ɛ-Pž7EXq`8ᄋ+58wJaߥwiV#CTjNp3 :QE5-pa>uS}f;kUJp$%^}/m̷4v\~񕂀- >GXT񽢫l r)(Fa$>K0'0zkMnEЏvJ"Q)QL73x})i%U"]>X wKH&ujVPb3{ q:Ķui^[iRt9$v;W ⾓X|XS;pEZ,U$%{iBjBWF;<>/ſmg Mj!tn#&47@TʦZVO]nV}(4afN9Q߳liãA Wg txh"gقDA']HFyaoLl˺pgvܞl䱩~s60]yB1;&TΨ/J/N1}kurl.:|ZJO06 w%WB8 .Z, M<8H˖GL +- _ش;&*Z@rIGFu<[@dhY-nHCZtJmGmnODZ] ݧ [63Kp9!t#U OTmN `l-[ewq'Fi,&]2CcblǼ 9Uo"pR!e32#QdFmyuYBC 6/ X"^aZdX8d(ɯ@F ׈Q U)@iغ!gnGf(!MmC.I%zazU$K5s`ˆX(I&|A'$7*}Y\G&кW4!>BdqQ~nS4gNR8F;URUHi1'A+ MKRľ;ӈ6ݚ䨳0ځȨ^&rO2 k |1D&ER.jGlM1jq6QjX"|Ҍ3 )9K^fw [. aь\ʝo}:wey8̖d`è%Wn>`a8s1[MsE~Ěh|Cn0{CVXKs6bޘH{":5OGޥ5z,OAJ!Ie!N9Ҟ؊xYXʸ Njȧn\jfu|j{ OyȈr|]eZDn')GP3XM}_Mh!>|gbI1ہ>5P ^JTw]MCΨ6Ǣ҈ խU;) x4ָu&tQ tPɱky$k[]f+C8_n{hB:ci7XvQ,_(Y7hyq5q$74 e _MJ}YJMgȞS .1,m&}t Rt20)wGn{YۑEc"+ҞZpbRQV ;5=zy_V5ʢtYXr;ƈb;RjߕֻN\M?;QC^ {vn [nn^"G5&.E:./ض}nUFR<VQ@@ {`KQYDCj)al38KoP(eW|3[F #bQ 5쨵3F@WH 4,["Nmar\)bC}G#X Y t]L&s1Le*SD4 N w`)7DcķRԽ7Bc$d63ӰtέϢW1 B.1@| uBxҬbFz0K3﨤//^5 sQkTll͋Om [01j:i^)i{&!5̔KΒ0NZ7|>̋$l !8qr!qb 2(%{fFQa>}zc$׍5j5z $^d4xJBϙ߽w9wOlxsvuAS$x\A":G¤?{6H-n#bNg?4D̉ ~ǵ")5cIPЖ_`IPBaUTQre|+j[EB1;9MדDM/eskۣ˅_ؑ8uPgEت K;֘/t- EVCl&mt G ù|^xelm 2E'G!ڹvLĤn4Mn^n@'^^B!%0m9xA ]t}^ͥx*=6v.OzF5[IPlm@x1!F kjEJ٥j5AGfF8$F \,%g4|u<|njG/>,!WPو-x/A>ꕙߜfW&҈~E)7ΈKU.@>2`YؠhLD`H$ (/(UA;Tb}uj@lB/wz ǡaGVi=Aj:_*v2 5q{ЪJ)s*8!CF:z`wF @[Tce= #c]ݗF$ɋ-H1"gATu;հ0_ba#|9u`7N yJdXY7u{t<|X[f\4(ʆu -!Dc:Ku/ml5a~,0X(;FqW%hUՙ*k G&TBD_SuYx\$Y'}i&IPX < ԰5;Ң>DLmKmPp>{(Q%?!&P˸I[_|qp*I0Erv:`s&S݇[l']P{&H9$7atYJL< +\㐛v.Ꮘ[9{>'Sb=3f?TtI.2np|GL!q{٥d; 219q 'kloaOv7_g@! jN>u͈+QZ>f6Sp]*&U~ Օuqaz; ő*+枈-zR HNH2NiQlVj!Ur߂mP]C?f)cC\0?lf XlM@1{E\EJ\Vu\/Ё35C~ׁRKU\J0p hܽ}|X6ϭ́gW~x15xapfyIL8?-`i<|ثsf„VFd2*¾-bi#pG0oR`:醺sk*0Y D!T-K՜m,Y{RPѩP0:$q SN$訐"|}کXpfZH>DdK*I(lf5E8a!? Hy+&Ixh7$ZUP$:+̦?qMg}Psgl/!'Mo к-X*^ao6sfg%o*)S)Ed` Qrb2mBA jeiQp+2}kwnIRSUӹ?+"MRg`ES\+ 2qX_n`' +n_xd tܠkc/! ~@M$8w,qmYPlۻ:m|J Yf_;mBa_KlHLi}oH>M&xt1O6+&Yׁ"etV9:&S\ 3c#YEϖ:% YƻܞKcm?Oʃ7f_ ]:|ƭ"%/-NIڹhDsy6W%9&ig~FRp'Kh(x5pj}\)ȗdȉ`ASgkn6w+fYהA=틌&u?x…1V1m Me NJa|_0]Qyu@0Ծ'-6{kV{>0֕r/]Dl-}gհIl3%ìBAަ9T=`(UE=Љl%oLw}OioBsHcD;N+vɷaIJp`w\'}#eDuS EZPej^ӂ-2͢m<.xhHjCMy bzW $)*T Kځ6Wts&e]L7I&_.u/ws_ΤCNq3k^r@4|v0X wkۚaNiD Ok :{;V@b515%VzkdDπgPA{e<7O©z&JU*EeûgJӻpŹTky9="Ke6$QB@Ũc!?w  Ք+(jc>k-kYc/N;K!lH m  @K#v L=j^ut@ÖM)gC7{#i~,Xxt ]آ1T*V' avn͠FӐ(abO Ο; P`%+] 9"'|BFNh_+%&s5e#a7; s1G2?Jjy,,Cn<1wl aW-?!6‡EJys_x<\b5lNT_maˬ_+~a"< wN9j_vv9טFаbԆ_AeO=Ԧ; U虾3g5N'䬳N^#kF4|4%VXcl?@/̻E4Dl1\ɹ+ %̒6F1gT:ET$dnfO*h6 \s6-£ҶZkB,?}^5/^5҃DV-^(W@,7 1ҭЅgغU)4'k<0cw[Ֆ 0L0$*#fq\g4Q{ %5fҒO}GZyg.p?fQ W!h}k fB{i K̬Íyxi |P.}z%qZ֎=If|F&Ω3P'55~}gJr&%`w0:Wx#%×X7{ 2mJ650ݚ9i#iU΁J(TDN9^LZl4 Ȁ'ǃwR..X8 !xW蘘G !❢>єhK;{},eOb-Tt[-i4/!) Йja]׸ i-WY+u fi ˖J#ئ+YhchJvWNt=Yԭ5tN\JmKrJf3/>H H{Xud\iŪbuv=ԇ{jR|q{:@7 G!@*^~1j] '(଀ d-x*N1zV ]XYKHvԞ@ҝ@n/}.tPRlU2SOu@oN98&ii$ IoٰUx?eV i`M]Ȑ`mmݧúDYZRy+k[emV K~["un ʢ p90\K.g,D{J|R9:+6ʈNXC=(evJHtZXr׆ }Iڹ38f02!y!S8 S7))Sg5SWcݙOkM&VkZ$gRj.P$^QfmiR}4nu-i%F G7v?,=-mu ~.@wJ(Uh2&#]3#m}TvsǮ7`T+Dal"*Z4C>܌yVl΍K(Vxt}b$6$mY|' DqF?ӭkE]Y 7;o!I rG*/ >b,Cbg)3>~׽<5%L*qmCtSEt05GC(WKpg"u$Wa[xzY`RY4-1w2$е['?Hi]2;d%յ#nr02Hjeb>$TCѸ5 %NPi,Xr50P]hlCEq!.p|͚t"~@e+;aW#5;V0%{(`IΥ]DG7Rق4^3FRhIǂKm rye=t^KQ^,ۗ?clB!x̆}R` Y6fK koAc7,* ^Vzm.XYo)FY3klt݅H. G\eu[t ǛoASߋ-=s6`탙/$~B+Fr%Pu>T`tMG@xDw뇐eQw­L U=ma:7#5f^f;kYGw[a*9ʒk<N|\[ݏ L] Q{ ݺ^nPn+m= ]`$KUY0$Fݧ#ş_SzD+i%}ܝSyʑIvՋ V, D2@>`GF])SLuԞCgP|u#$V }?r3M>@9 QjcA#KU{86t[˗Cun.!h{ZsNQȆcP1w[/{rʷЖ N}D`ešTqS=䑒x F; ^V0)O>L4TLt_(,,NWccC_&VLD@i@9̰YcU|m (IA 0 D9or+AQ؎ ApA0 )Tk *ȰDmYV hSxȲdH2> tJ~QWs񫁎V93Bn麟(fVc eoX11*~寴˃S`8NB%o.(8JP^!V$R㗘Za{kAVE|0wE4!gz"O+ďڸ'}U ~յ'_ 5Oi"2-k1}JLyȨ^:Z%y -cJh w:J_{Kn8%~ MZgxx -~HkH}1T:D%KT )l &<˺YGwdpZA:qfՏJt7>-[_!r0'47ymhΦ00dBY |~0XOgaeǁ^BgUl˱}|5ԄM7Ӯ V7 ҂V-ڣ[n:O[/m"#JYu1/JviH[>?UWR >[├"<=Qr6Ѷ?S#l A8R\? a -<,:8Tm'B_ 3%Od εKh:D{ERf.%J0#wZۺ?/1v2zzƨ Y-7*!EWRf)SZmhҎpKu^4IB^4i!a}4qdtҢR؂0|%Chp3<4mw7%cTy}4g|/M}o/r 8 onD5%WoF7:KsMf¯xHl'XΝ_['jƝLN|tߪ ^ ֳ+dDd"cDcej߻./ALp~kt:?W7lSe&ݜ֢Ҭm*C;v7L~huHCd~6L1eר[G.$ ͔-X`|1,⇐̝%ć2;my؟]R ${Gǭ $_A(3q'iKhG}UJe.N+{Ǎ}?:@@9S$:&ۆ ydcF__,N;&m"nCUCŒyJ;;[ˊZ`6`RTK t*5j`*4IvH1@-;-,$HUdG((߲PDTvh#DXcUiJy3Bjj: fMù&^:VSt Yb.o *8̀JRr}=9d.^2}yv= 0WNj4o垝"pHlo]n6RSteȡg3%\XM`B`m1>N"FB$H XI zS%Frj **nc)d@l)5Z>.<,%v/䣭}k,C2{d ">|aâۦqnŠ:[C-mvʲ.E3@B|_s &3+ LyL'wjgHDEE *0nNeF|bK֪,^yc5p( ֨e $[$w5?y2:j53 P4"۔T?P{ܦE^cY[ U8P}8N~{nݼ9٫۠S[āe^ E޲4c/aA?Zǒp |@P?ҿ*0}cO=w 0Fw,PF‰( Q(|sA7)~j;{)IBn2h_y! ȗ0y F wיxOdMUAlϼbYxL$7}ϏAr"S#\ɕ@>ıO+#k6/t X<"ҩA6 Z)IG/>o Iqr/ol::4!od3[137CTa/tzSKFй \e#c* lW6 Eu+k^pWAPFk] /Ga\⬖D(̬c,NA-1A5Q\탬=>o=?S,`zV6G`*dU⽗f*&qJߐ F;V [)sEzoaUMd!/E%cԸ&=8k& c"Gr˪{]S4R{jk>T5ffU8lRj_ى=vТ_M9@H!H?Ցi3?;u‘ʦoߢs—R?Ni2؎IavjGKIoؠm%i׏_ST -X& MVdXwɨoX չl ~td`]$KuɌN-VC~! ~Y3̬mMt{|>A+_~ZLbY'r1-zܽ{ʄv=OH㻌 خSIZ%q2@4'? ţhpW-#UFh(}'O&hktV::(_u'-:x ڽCvwA+\]ݜDYa#֊Vna̓K\N!aa8-r% YDwcj`yM=sU+*- 2 Cx?ԭ`;WOY:}Ama.S1'ߓeL;n4[d SstĤڍgY:]ਥQ R(t>}(]#ʗfg 5xsV(P^ɢ$o { O5ʹsqle˄ǹt 8_OoXzu[DIJS%Ȗ۹?R='~cP h6]pW|*IM2&btߑ:eۅwC 7 >s䓄}{Ն/ @4|͗HWBIfYLGkåNJvwrT`] QQ3v֎^75B_qŘ_0DȎĽz+JB$gv4/~y5]1UNJ(p<|Jg+v Q[[״bk1f/w-IN:6A ;Pʮ9yC6J*D竆*Ɯ tQn˷ģ7S/ V-Tb\TTe!GvpxGVJi؇JzGy8?-r6u4.I|$@kt[טsy5S]j{zvijAW(z${<,jTK1(}MeOnhou0^e*ޘU}n#B2e5_LV7+Hݱ)[y-9z 2QfIXVM _a}Hvu;$.1qDϐ?O\O$,7Wm SfB__et0x9FZ;vtȹj/KzL"0M8 4ov^%e kO7jScF %4t2FE /ܛ7=mR̀> ۆ8ۆ?M1@JE}Ab{C3mE9(x Cec62҂ӕO+KaL"rLd.ۂHLn_' 6İg{ْtv58K|v@"6q>m1ȶ^$o])i9(0ȀO_6oPУ΍8,B gl4g]cҹ<컶x,왘Sb5L3w5HrGSZ{CmRԠgQӗۺde@lA?0~J^"QPL3A ҪFDxCXn#82b'U/XvvKL>lE?]$o `+#Z1u՗%<[Lܮ1flavzm绎%{n0]*'*C测de<Ja%si𡵓o;͎F/R0sQ<[sX#xY/lņÑU7'",Iu9W+㰪?"5 Om ;UKֹ}{ٽF(5dG2T-HVĦ_k,TDo\)z.쨿6c="sdOÆ3~ NyTcx!6҆<(8axzM:˕egHˆ(x墡j,_6?[E3M>@E+M6P548MxɇE?3,)v"3AޟVBKEBCc ߲46m؟r[?9ȱwXcbM7i}'+TE(s B3;k~q4Q32.  a67PYpa Cjw )nCZ2" ІWfbPVD0Rb_\%b~xGKnl_tւnUBXf^Q.LIgH_8}Se܈LJ -Vޫfp2wރe\a]˸>걉#)*_Vs4ǝqq@ _nyń5^]^jUc΂> EuR^ֱx'SHpP0EVxl Ƒeժ3ISk!| %c7f#>offSRo"mI`,tnz [̷݁!͊䣢Gq4GHjYN6L0%c%[^T"ZȒ0l)!quH%M /ɘBќ̩^P,a,Uwkt jd zV kWПU0h WFϊ2.d85 3?})}-7\Zol{?joPlԌ:V>rAA@ڱPʱ4kC 3#Z+/Ed΢-vW">Sԩ|yLmK>#Jk;Dʘ9zLۿ5ZPgEo?5ɋt}H\SQ5%$ݘrrezB@9RLJnEz&pd)cڶ^u~be'.,F"Zu<48AϬͱ0°a~B<l|O35ol۪FmyT%|8K=q̮/%,5|-&$AWUBmRgnv5}ҁ)#_| E*clwxsu`)S𸆭(waWJk6F2ڈZ+^=5b+ q@d7Nx&XN"Ю%i]Wҳ,v؍SM7ˢ$ 'ŰSTڤ;}tg5/roHd#iz}V*Gj/#m4TcvxPxkN@E;.]Љ:v8t:0p%o0rp ORT3q^Ύ-<N a%:Lxgc̉^WdC5qu X_Oի::] W0s])-g)P f^2,af!N0M~uSLsk CNxi5Əm;0v)_Z:+ C%M ݘ#ʣG%ބk15QHz ˏe$k[{-PG xe%Ds(>ɲ' nIz$1hp<4'/͞ṁ-\yYk1WT1!) DHݎQX<̫̈́_/TӱķfLr&}44nŠ[ t[3\ V91c, MZ%҆j!3㠱̀ [) jiӨqf,dU3;fxrK8-r_,| oĄq[#?"YH[:W[t9NFe!V.WiNy^S'4"[1si!Np~% T~$~|ggWX,Py)7ggӛ0}@U.mWvfF=7;=e s+ d<f<ڵFoe㡒7ֺXDSt[a]S%C|NOnW1j6*hӯ '_ _^\×[/Q~+@G@n-^` yc&^9%G+ʗ-O z9+|tضtA>Vd.g6ߤ˪񟫨,* &˭9T߲Rn2> #giQe`]Њ7BVHz&1|{UjLГ~/S^;.'X1[9pM"D2ԺS×>E[>D^n 9u3MpC=k .qš_u@% ð5S4nqh,M'C/'нL* G}N𢠔N:!ݱ]Z _\Q謂:bsYkZ-URBP&_{ϜoX< BAQbc*/TV4!c*/ q%/•;ˀXUGHi b^۱f+VLű-UKUc^Ȕօ2/?<^0V"4*#QQJ)Dv&ӈgۧ]ms䧅po mQUظ76>)au)^Wi{|B{ C?LԎu*Ka ~</vAL֛4۾ܲαEׯ*1-+X#tCi;sk' eqSW-DF6 ((1tILЊqSl~B)1Q vVScaV͚7y3.a/1.&nrP&Wg yjkD"FJQ9`)whV R/aB'tMB}{j `&ĘezrDQ+eO$_!b"! 2'۝sĜă)%ig#sva{I P^pkФK!r6cG@yFaY1?i7,04qP/9v."(Vt“ElӚxpa~Q °s9cAb3]T8fF5-szT-yu_zURvmr#ir4qjz⤺= ҭ{ϔDʛ9Jlmkw7g>犵k*} 龎P Ӯa_rgľ؄Wq~gyq3茒ݱ_ӡ9hhY74#v{~zG_p6*2L6ƌf?ux;_U_SvݔӧnH/-+;b"7>rY hy E%ԬճXp>%iSGj;;@ ARmMϹÉ؈ '=&c US z3Ρ n .k dpޑ2~(tXXqkdƳM)=JC'h>f'L{qʯųtz@HPЭJ&|Pca:cU_eh^ἥ;ু })H~+0PVkT]\kxdm{1g:]jd#.K7#rIhhpCp"cn7_I)wXb`g#">Ko f/B=)ؓs #t<2 u{b[O#gg?׾Os+*`F``.KD(PXUj˽wSusobY$:ÁnK0,c9Yћzs2RN8F-[3$;+Nɽ9S#hSco;<eH1g?#'1V|/I סt#ZgZ جԡotaŘt~Z')Տ- %vIULGg+{l̀Z8'Fm\[k̚Óֱ7t9-[PْxYRH {p"—OlJ~bi0u5 H큱1[NxuZ\=eZ%.00 >͕[0fB醌DD=6tZĨV',͆4;F&Ju\Y1yVJ=+lZ6L([VP4gYCښ?l9<ј8L5(28\_/~8unaHz 6i *AȜs=&&t>9HPsd-r>_z&yz1uљJTs]BǐL`7g*f>EBURvSXr bQMD`,PI|^ xAB!F22ȩh 9LSˤ٨]_!nˣrjy_rh{$?jHdt*è"ţ%jYBks(ޢ~fޟrMjj4SR͜j\w m_, gc EԞ)~ 30G JOkoUFc)UxVgU#6D2{zwud(,*}շM I]IǴ_n=TckJxX)0)ePR-+`숥~dS{u$\F (86# k;7]g3*Eh)׬S;]\|O9>UpՋȌlzulܐI6IX3]V@g[{w7}r/<`2`_37W%Y.^2l]$[%=5amk7dVE2um. Z }ƾQ+=MV?'^b]ڵ_sD !:rNPSfW[ig:%gŨ;Re.xcno?twL4ؒpm'p.*S1վ YӬoGX > }B"C@.h^d֧Ɛ{būHSHKeB=rwsם6>PW %ݡR) ^9!k%l{ p0_VPB6bAfP-?c +o@5c 8e͝MDߏܟU-  Q( &[7űXN Ʉ%O_s?R$aDWRFir4{3}baBGX'+5II1_׌i* #mBN93'M%gdK$"&Vy4^ޣO|s'ƏPB`KdMя=qK6W;aB$Y.t0[D>~=7mUv.r?aũbf)ea~^*@ SÔKS2:#*4Q@`iOMь;S)+pΖ*sk#; I/3?aUH7Oݫ]C8PE:w<V Q,͵ MGwTNzadIRcdž {(26QBSnt~$}Qn] ,SxoL0X dA(Ir i}3)v3TJGhil8 ghcZ3^8{ 0I|#2SI>e71{Cwn㞑l)Id K4XJ3ѫnҩ;Gz+ =]Ҭ!%" H˕BNBvqIH@ӷ1gd-nXt&5#xcn>h3E> GM,T:cxJW S8'VF`/+O8їl_ oUcހZJ9_yJ-PzGr4DZ7M)%=WF4/|; Vt UmT& b>q/ kA)q"G.PA@W9u3%Z5qŗ%53dseCV xZ}16x@xWܰo3ک'~:3lVXJ7;*ٚ=%^8#< >xb/IhdKuUwK8E>Ƨ`R>޵d|,l[Jc@l#gͷmQt50@)1 kؔ/ic7^Q|kDʼV8i#1 LF#,b_n[_T|Xn`]tsϙx(Tw.F.wX]iISh ȫ+4q8Sq2#d{p#>\%aux:MM_I*5I[8is2;?>#R9ZU7j(&ih L3\?š{Oە(Ҽ9b@1C&ۑJUwC*Gz.wY8;tU_^ݥ71ݚ 36,G nSo?ĵp;=ef,֊sAZeM6P8&$}[ts`ejw~R #&]8ޅ-w3߸щQnYf] Ibҏ,?0?T BNOU$^J-T瓕i18gwɱPJA4v ݋q2+,E2QME x U N ۘ1sv@ ]$pO[ї:'f $XZrÅBhj@sيDYˈݭc$bWr >4[HE3F,7|IF}*+~A،7+wҵъ#Mhg k=6yeD6*?:R!X:V,%jRW!T-:4 MtHsKLJ@}ks>xi2}ƻicm'}0Ӧ7 BzT5g@=-hemًD)=P=5%PVWF,mme0Ss*.̈́Θ: h";coHr@krWckVCV+|`jۀ]?nܖm1RA\C7{n4G8M+*W-J8GJU띰?F?ss@lRT5z=8bdRj%g%;Ŀ#غbףj@Y.:1J,k;\& 8D ⊍Hb䬤Η[ցD%dygOJOם?XDebl^ {p&9Lr&/=֋I# '8ބto׽:Ɂ. &[,*{>=LFCPvql5_ZJt4)Kc4#xD4;x49m:0 oWiS3 [n dYbL c tWݣnuA|٪Bܓ:- ,d$r9 Vn@|GYǏB.dٔ]Aųa&fq9##= M+8W8~9*+ 9pͮRUIY%IkeP+,͐?-ǻL:qX[عgpv4F9M ̪A xPFҚ7?M4}@zea`{α(Q͍Fskrڧ˙c[,K< B/ AuudWC<_!ҧ]fpZx]d G<|./6d1y=mt3'f3?|y7̝G9J.򿞗i9G?U^{]\IB'y[̗"?׭j~U3%.y`*g8Ѧ_AT gʘq r\v s7KezsfO=V}.:Qmľ~Vx3G$_aRP}z=Fj*G `M/GGYqjFYz-Ėf?`!(WY*[lM^^' 5#`ѝ A5:wHΓZyQ\h0.tTUc]5,4V:e[5&CIxSd]nmbw7tt &  ?!GL6Fb,/-鏆:GNb!#~,~'s!t`x`+MvƬ5QExss:% Ȟf<>`bmNxN+x\~MTTˋȿwjq_Z-5K5LFegUWMȡe cIH>HuVܴԿ]zFQ| E/6{VǪ]zd 7E7YucOՀ!jil *a &YcTnRD Ѭ䫷$]وZF}b2e^NFK6/LZz+_B6&>>h+Dǻ Cy6K @J$)JxÁQ?W . Y# ۠0&㫐F~sNًq5U,޾ ޙ/îNzrnSZ1IԷ6*H%<!ᛁ  [0А=Xa,5[@zuk|sἑhηqyAY~gv Pe_N?Z 18S尌mLTd(`W~= .N~ (-p GB 1a'. >O0|ޜۆҷ6b]5Q"@σﺐTQWd]fҰ'M>ę+;>egPZH3 &!)˴h4w;.]*8Kcxx΢dWRi*Li!$7@"'jrE!~S os9S{?*C2iF*E$-_SVY4Tۘc05q :-X)It)Į;5e`l|C0Bu7gLS[Xn=.@FhJ@( BL2Aaꈞ*⌤ӏSZhz:n,ihJdTCmϽC'c$7 q_\ml(K4!S/u-H( bT!*ק/ŽjDO6[Tf IuhY:NQ~Ь؂3ޝv$^'^ feA5,ևOV+FW:AxDqD_[_lPz\悝Oloi&5."sa?@tC-VZIxߴ(1$x͵u'tׯ7|s5Sk &p0?CUиHNKS,$tjMj|ڿHY*p|=&-I|nһe A_T*7>ԺogO$ FtYsJwli~k>nNc-|sTwEE"B".G/'+ P–S5I~ss&-2ƿ`1K"S2DY/ W5OlݎK`O _=k|=uC$9ۭ ^XWD!Zdb)_Jܤ2GM4B $GTZn̺D1^4>iMt05VNeقXUN~GuudQQpf}k4lz>v 'l]%gp~Py,--ڮx]0i'l+MN B1$[ejH&{g:嫇6BM0[<2WHzəCr4Ƿ ӗ$`.yώճ ' 9wHl#7n 7UžbXrS ˦#+#H:YFNMI?K];*$wD ZDC@y1pp\d^҈Z$͌e,d tֈ.K$9b7t+.IF1Qxҡ6߇M;pI3^0\f4e #m+nAZmjnz }^U+^t* Δh'z>x/[@Bb  D80ɴȮ#YCHCu`Cfbt?h0ߜ$_CUJ,L]lmMVaJ!"w/BZl X Ɵ.-=p `7/;Ɋ#Fg-HV ls-$ΪvoCVe$Yٻsz veon]Zv8:.g<'fMXk<8r\+o銰C`)٠BK8DrFj箈qe,UʐsȴѵD3(~#% CW-0{Y I'?2 1I3'(qQTXthr ZȚ]ﯔpˣpG nA8n~pN\XuN/ 1Syakkʦτ{,2yX ` +ω|OB+:}vX 0 (00悇^g T }Ǹ0'Š^Gt$.b7(66Tw7̶ q"jW\KEቖjbٽA`R໭juƐ.JGgji^F0cy2}$$69lqΨ#hHIGg5bHjR/ ?q~"^2?E}Às3 vk)ZX>$`<;k]<w/V׀Ԇ` sj-0Kؠ<39I"YA zv$6׋E6KC;1e[am#sgHnN\DO0roΚC=n`n+y^>"pʔSy4eeOUcW_t:LF[l7Ȝa,+IrD0^*zfH5<}xp$Jڅ̚ 1u&/Y6}+ёŽ]{I1-Ė䌘 Qp3-vI?zz.@-{gTBJ֛ YR1S(S%XJ},U9 mzܭV&6a_  P/ v&C85.J5W,݂:l>-v) -̮̮]%x~vQӧ]E&R0֙vqTW341Ԅ2K^/,KOܠC`}ņMi546u8!*6v=vg:K+8?'QKzPs>Vp{:@J"Q {멺`Come1v ?>C (=? ~G4e%EcMMRj bWcK|2 >ʤ7X1_uUwN ueQb!fwTb!H"섰v4aMݧ͎|#(_'ffnjq?UKFyӎD\?W?F])g>S/ԃoM1/i=gyп]D$ڰmd j%HBzknՍE7+׾`5eh&(P,/khJYs6Z"጗֭igu#$yZ^A 1m^ aDC.Y&zᠣ0]5 `mRᬼ{C;Q{@ ;Q<~^d],,j6h`rMG11҆U} BsUS_PO B[40r}g96$πZJFʸIx爢E 9I1"Ҥ 7=j&WeFy[4ETnם#ط#X+hw%̒zW8s^ Gk-6@m|} '' *IH/1گ"v?8bBoq\(9R2p*MjDŘ/=]pqyZ,4M-7"aϽRIq/V`-#Z*}vqeګ=fIݪi8F@Pd(9~ 7k(s[v@ h֟r"V\'R;ӛH~*+S$ GxFC7 ABmZU_w?o`B5g1?$݉ SjvC Ÿ]蘎Q =ͪ銪#:Ioh0[j ]{s&7 ê}Y֔*B)ߩ7s: ݐ`{d`ج=uC ̓E.KJ2yʼnPN 51_ ^z0bi-z[h t̤:a[WqH.q,P#XD6iYQ K@ߑ3ٜ+ g]lK/+ W=aMeH.DZ6 )oLG,;&3%ͶVtjpw,T;}&o#TNkZYma8RP#R?Q% #$T-w)E{5M?gHd[=Seȏj$cb. DF‹յ). fS)E l SKp -J#e 㾩 m.ԫchYܫuJ߅9Lav*Da+i7VA,GGob!ȤNEf *}[=7aML sI&( .ȠHuV;~Dzdio5/=;ݐDT%;R"Ճ{v-1*u?d[M8 Y6lhSSa-U]rZqj֑H^eJ7k&|̞R;L̫`hY&.)M }ѳ~l0xV5k_8ҠEUDO nISck~@{VcTs!9?XgVej@gs<(\pո[L)p u(V-kKNz4x,/m0'UU8T(3Z'~y+d B4VR>=P{-]؂'!972\XUafڡh":Dj/ &sO[D8%9 :m tk -0!$LnYmECpKUqʉs07_FjEjڇ1Y{FhFE:b–GH+O,}Di^ eFPGߝvlDiD$XH%5Dxt"bvwz>5og EU^= }`F G`KMwZZJ~FJL_[MOЗ_Ո65Hj̕-52fuCI+5ٗרuR"Xg|xjG l4g`g#gV:MⒶbA//>Z t;]DMma3.v89*$9+ 5E #Q EUHx6bIyP%vi:1 A;kHWfSx WLBh74%*vUQN/D*."ԼHf,nw+ K}&>>5GLk3 '_ vROWAq7_-'`K2I/4fW]f6e.4xղD1ը}#⽋}7R1[d/Yx,2O3v"u7^ J/ޏr m(?qM?g1W@! I׭EWP_#M(/l>).q4H*ʖl+E(~Y v ]F3 PXD+ҷ8!QބA9ҫ\,GxZ*6U"d_cD2Z[z@ϐZb.h-gd̏ݖ:{:[/ U co=H{{&re '57l:X !cӖ;cE[EKVN 4s3$U>$o*k3q#e4+}WNL-VIweH=eU,=pQVMTu&2",wY@Mav)6XP|,=|5+ ]$zHt6..2w9sdC8 hw=MU>|2;c33S Z+֖ȳj)uSU(qRD-,xFښ?_e4cػ~' ΦCħ '.oL֣R>>/Mx#﯁Wjx()OT:Ae:U6J9Kؐf@ dkX;%a DK7ӥ8jrU :=}8kSkB5`yXbO,$Ey0K`ɅE~&Ce^u>r>@|#սHkj`$54\8 ܿ!݅2Yh[Ұ_vd |IT@+ o\ \q 7=073*YO WَӰH` FwP7/.22C/D[fmA0T`ĶkҰ`<# XsWLѯ7D5ngEMTL"okXn7Q}Cx܆'&Vdkm ckR/G*0yυ" ^ObKUКeȅɬ6O[vEl+T3-CyCJ Coʍ`l{Z▐T2Dg#V;{<{m9 u- ػ@ \j̲z*v{˫yQxB$Fc#OVf=e%/jsb1\ )H;VیpMtC'gP[,bp(/Ԉ&؅WhwJC@ˆ8T8㽼WbM5uO}0k;83c # }agRu PmW.baN% {zOk^b2Oyt^xMfij>\}4fP2e#bCqGKV ҵ{'WG7DaoA;駈 g"?hdoۆk~8/ldw!@ڌEB nSwNZ?ωLڃV&g'V~ˑv=Qِ D=;*2" _β]RK g^-Rg2xѩFFCgcXgM H&Jio'>gjH;6Uf{%l,z4@pPh*{~dA'E$*{]޶ce_2 v=Q?A(x :dHG)\vflE<`PP_WTz"NlbxOYFR;N Xo!T~cV6L~/`ǚq1v?rxgޑ`10u l΀HjZzX~04Tj=`[7EEN!/MInpڕ؃'$nJ.nAޢ $r"%ޱ64{UDkB$kh5uFZA3 lڄVeF^{ŇL$YGÐ#h\˝Pb.t =ohn H>Sa~7Z+~{lfVM;c98S'ܺLCekbTA#:5m0 EtP*x9GNJbo|d* @Ht yŸLRvxe¥(eJoK!M|ϦDۇ?"_?ڢ-w қ&o"m^#/P9_<3H}=C75Zdqʾ Mv949 )]|>̧;L55BWNy#[@9{ҹP$#iKrWM-2pf ݆9~dX^x+Hƞxͨ3ןstk898zNUDMӣ]oXA~`b-m&_ye-)vr'nur쐵_]fg'F bR>L$M j f՜[X+/U Yc>dn7ѝK1nd*~R+|o5HE.̵TG"sF|6P cY]F[*o;Ź$~p0=iȟG|b_`f'e]i[/r,iJ [4Oe-neEeY+ JsztEJɞelwsB!dHUVm9+$2Eh2n۾/"U:i8f@KR &̵-F=D ϙwԹQmHmryzA|$P؟.k&w-h 8[Ѡt?ԏns$N>5kd @ *{:B~YI]m~QC}VSp#@ h/Vu1xsc*mi\0y1S_0GN]zT YLԎal@iX#IJ^s&{-=WYFC;{B {t7wRQ?r,L?ħ'vE$CJfH=Uڼyz:]T8}u?{#5M;!Dh ë6Zӛ™G,* ږs)%l_сSڕg*BuCqxB?o {k4qnef4k_A(QDkT%i|&;'aZ~'dsݤXݣB+}81l%H !9U& GK3 nC8)Ngq__4X>Tmh5FL-ףX{Q%A.$8@E ۮLIJh8J870.0EApOZ)9\ \"Umʛ@q+^Ѷ20Wxi#Oc;S5Xy1XKzu8|M?؋2 :J%T(QJMWQd {\ĵH? YKcFp{u/>Xfh,;Dͬpܜn{Vx곢 a!!8rCYdBt(V#j5" t6X9qٺIhJlfQ&uo)E {>˹yslҗG2nB!eemb\_i߈֫SStQ聕l$KD5#hK:3 0upR( i\N<~˜90vg7dQنWn=HT`OprF(*wNdܕWcH:ψqdz`XY.;E6c%gOQ*oؑew$EI6OzjѐMh[Uo{ :&߮L]b qy(vӋaq!owi\h8 &?_p?xAO l͘m=J#B {{X~xa{ӗZkSƍC$4dkP 5G`6O⊆ B-A;-r_)>Ì~%$fStOepe>;{4HzUKߚ b9@V\̡ra#s:.;M= a&#lHY F-;[Jd2$Ć{IK+RQNwW-TՍ塞>`V\{1cCz#rt9bϋS[^z=#ښ>LDomv4`!D/^%nAޞ"WQ>j`qGGR7RrqrCKgKMYb+rp99h^#Oi9cʴ̨#>kO-GD??=O90g" D5Ѻ$ p0!Bf%~<#kN pZ(fM bch2M蒝)$=gdsEy7C$!϶JӠjʬiQdlL˨USs[9xZ])l} YFf<@vyFu:x?\Vwsnfay~IWxv񢱭7e3d$OBжЃg.=b{gzXqDzKgʭ\_04w.?OiCF|xi;xWvɡ۪^n@bFK[5"cV%yfS6ratȘs:MٸQ!mݨl7<Mw"3T(R|7v/ Iu-:w tD11VB <H ܟBLR>OpAX\M(.|;GYXَy>L'aIz &JRzPY%Xs`\"׾YE =]mlG=^pW/&GgDu?D=c16̯a6*@c1ZigC@4D)0*_X]#E73]o`vVyftA iǛ= ho@ ljdFutuq sM0?}=<]}֨gT :+9Z@D a`|t. e 찐\Js'µӝV$qOڼpd~o;.]K q."k$s&6*nA/.xoT Ӱ<΂lRq9/t)I%j* qiŭe</2JH#q}#n35 ,Aһ&gE~Jd)ɛeM[*p(n$RkؼYH鰅\TNWtP.L^||&c-ϻ^ ]fsH E{}N VԔ|)P?ܹ;憅T oD: JAƽ^%v+Žԉc=f%RN8X2;@ש>5C86@zHx;OAF {U g jy3OX%'VEE{jJ!{ē NNo1ҜzLf> qdÕϳh{7Hի}#MEE3#-\ܛ3%WWaڠai4m7ZnވPr<+ ̄໛TH@Y@-F ?' dp# ٝDc&+cZw(R\3J.Yk> ځMaCpmS4q\7arw$F=kB'Hx%-5(j]*ks`Y+p@R ڡw5S˟ֱozz!Cg'{~Iѭh巘k_!n|pI6݀>b맮/=N\_'ӟ/Iŀ?0"m<e-Eý8LD2 K/Hc(G{=Up,_͚lwHzA0)Jdp[Y+$-sAfzHBli3_yTyD`&[&@^O"3-ݎN_8G&h N|tT?ό v.wgxXއXS0;Hu$1^{y(4x5W5sq7Qx Fg,~bC78㌀V/h蒕OC!-eB,+uVi|,.UUփ"N貤4&H¹t*%Qsem[OeR 7@ O%}* _#p3_N^/ o#"D;,q?0k,>GDg}Fjμb`><;Lv|9mV(_RcPO'0L^ªߥ⫟EVt.9s1r a["z04S%ZOԄp5<5*`Ӝn>{2S0U'vAT8S6Ƴ=(V$+EdWh'z./GZObS^u3q ֶբf<;tP +(, $I%mi"3\u7GكCKlq5amD+խw} o˓:n$;` ٨8C|ܢ@z&$ r_Q: p7V|ԕe`щ-n'Lh _e=Q󏉧 hIw ]tMqf!9{ʋU%yUV!+ĈyJ{(RC}`%*}'jbwJFsth,I7q"%R܉22DBgݔv#MhvI t t` 罒ɵ;Rkb7BD2@!wOg Vζn;/{o3S.plj_u8h:Zs-*Us£*56c8_9SzTD]|tIU.+(̤W[^V)_xy%nZy!Fhmc468u \,p 8yh+-W%:ƱQ_#伯xofl'۽ CN# ,cw+T2DBiVͺ ux)ɹ;4J^u#ZQ=qI. 0w |j$*mDR}/]>g!W\eDf%))aӽa ~֝/e뉥<>V`.Qr]]Aq$0oW`d ٿCE?l}!41fEIQRAHAM6M= mf/|B5}vHO+Wu2X}Y n)OK54,G('W:(foz2l߸i$CK I+*G؍]p/Y}{(`SBpi,HvWB|Y?Q݅r _2-+ /=%e'9*!YxAͬ@1)(G쁞v@Qazjo#*Y_]p$[bGge,pg7_!)_ /[dftZ)xaD>\}J>)Eu@;$R_߭ݟXaYy 8v`eqr2YTdg@!i \z jyUPy{ǹT_IoeiˠyF,1w9TVa>j_8_3frS#f!~H#3ZY3/p͚zt8Fȡ^kb\A8 SnچtLkXўh+ ;v \Y ukswn,%`>d0êeQҳpe] *Yي-Go]o}TEhߠ{mB@[4|Zzi 4F|3:Qc8u[Zf/s'`ALs ( FbÌ)RݓءdS)3ѷ z,vNYHr fU6FZnJsw_L&֦uQF-@?GT#r~OtN*c^l,y*.{3ӜMۅ(<)m ]i!:j7]w9UHƊw~ahm.9P]8$iqgz$Mg͚]2X$n=axu8GmU)fvvy/Lb`SFd'ڦ 0}L) qft}V*L,m2씴#(avAܭ9Kl)5&҈|5"'q] /*ȩzojF ɟ^d4{]Zd=%FH ;dž%UEh M!o M]96nU3Zi7vi(kX&c^`  cNğ<Nx=3QPJKe̺rz/m5y;uE4&? &O21]'~yBm%r5:z458z9<;\ׁ_ņhc\3}E*4-&JX?n\-JQ&!xS1D'= !E]kcU1?~k /тWPӗISrJ~W|]'˪( xS.6@Љ;#A&/3>4s}ߡVYoBef}\I^ &ȑpa6o'AAY<V"۹/1(gҘxZVz4 |m4F'e?oB7S$R\+7+/;B\[DWg?[q5^ۺ% >'qiwB (Y]3:3_׾9`*UOUhqJ4la1]>**၁-!H vV^{sGCj4$˄PE ?mP0'\jYIY*ITׇTV0 DXWfCЃtڗ0bsqͥL/:JdeTt%ΜǼ-<"dq9]'d_ ٌ>LKE5NIk YPj[3Gy'5+գ ZYX-(5w)9Y eASvvID? B nKU":M2@ti.I[c/ٜ,ԩA@tJ2#]8RC"w$dh"$TТ&JDF8'ݡ,Z}4mj[@MCO^ ^@COi7˸d'8IBAU-WF[{EYh%n|]ȅ/6R@Cb>*4j%mz0Yi#:nridr 2XkQ.\,YgF[hR Cշ9C$=ES:>Zncnqek)L_[R>W-/rJ^@>G-ٔ*˜mEUEoF؁Tg ;q> l̙ w>7D%hM_^D]NЙapOޣaZ ,vՅ>4 v9w+f#!Zb2*0~$o旁zVEZ!56 Yt~qƯEdb7$u*^8<!>;u-r)m4wI>ݎ%=r;i:[jB8p*̒@'7avZ33V-:@舰̆篮PJa: ^6XЮL}5.ڰkq. ðD(yOYs$;R:O.ܗ\cBm1ϲKy-F~|<*A J~LNO6Fpu'+g,25wVk sB>e[GW]c/,~†Ws@8o% "S Q| 5NrU"IIwU~L呼7\@s51]\Nnu>κX#2eۿ/~~j4pe#dA.d%.Z58GKmqvJ!Xc,m[G>*rFDM\ V#p{yE6#fp5PPlƦ!U3>#z3+?}+AS{A&q諾 7B*XGPðn-vfxW|+>Y~}I9YWCGTH.=k _,sLEP#FN-FN_]{HxLLn-3M\O򰳊7r~5mQB Vj{-JS=i>tb!0/$j_ h>ITHju}L8|1Htԍ*gf[:\ $vUh^2wcYYHE!)ˮQX,:9" 2Jkv/*v&AFwm/WҹxXF2'SDѐy<bUP {-&_ `zpBK3ꇇ?#P酄lgC[}S'*3X.0c>͞E`^rzYioGJS md 6gݕr\_#4)=~H|"RNq@K7B&k 1.KƧ<]}$ZV:jA ~U"1>+nsUE67#L,lElnf@_lO`-B 9%o0z&] dL-m+KTeu+6Vԯ% 7 f:Gpܸ/GtzukMDJO]AWUn~kDq,c:JtsJ kl3$+ [ 63긞SIPkgTw{4`qD]guw؟ ޾lpDtN~m5;C/OF>zȩB?R|1GМ5FH!hs/FF0M[XzIj7\za]M[u>OjU-+/)"o}?v?#Yֶ ^5]#knI)FO/2bY. +> {su?T5=rVA0& lM26ELPY2Y#yu9UPڮ•WRҋPQ562G@[zڼ}o-jE7^=ómx})k[Z Hffi$i_-FHaŷ36jɱ|D ]7 P "7GcdhȣjH_?{tsjs4qDgNb ˘WK^XS#+!@D$98@ n7=;ңkM?渋[FI9ly櫘R&d^(kR7,$"ϹXkkpqZݦ|/r%VaV< OFd? y{2 -2a N"KJΌD]?p{j{nPW'8AĆ)|tͼ.G7+g:ˡaςWZľN3^<|~u FER$uȨͰ(@ucwOH)TuFjN4N4dʯ .O_N8s܈Uh] 09\{˾U2)!v룢i*wgJ#\SamIcKCN䯲N:'-F+BLWWilˍ& |M8J{9Qq@{x=o3Mk\кh,L0nylr6|0&*|p{;`|mDƋ(4%;tT9DDk']O9 y@ҝ?%yia:s'ͧ:p3@D#VlbaL%" xlUԋnYRxs{1r (Wm?:wy4 m K>3x%aKA''d\1srk}be]T&}RB,;x]b@*˓ˊ0 Sb68?ڈU$?><)K4{=^M2;զt岳/(p4-3i9;~5K.UЬzunȷ0A-"]lYT'=,;ngt+\YL-8 "Fb1"5Z+ۉ+Qv%kSGH*&QQ,zhO\e۟rd/-*^=Hs>)VHӜ2 lWYAO|?5D`%K]>/0[GK4fu=X^ Q(uŕsToJC Tv, 3z|]wW1<ZS87k e 0AGT&r#%H=E_yT1;\U'ҮDZdYkMVmVs0t 3 *CQmzݤw-{J"d͸d,40H~Ma99|B?BO982fNOTVz gJל3ts=bd/jL Vٙ圞ϒ@͐dse/([,*l-F (5LQ8?KDf`T{޻uF&yӮk$bh]^ykkj;CwSY[_f3x!Zo|`?>O-*ddC%q!ۺLL F1PCAC17N O!N7̛T{Mah"+xS Ed{ Ƿ2SE|^&[~GrJ]P֝GJ @Y#gJ/6[gfP/3EɔhA>OR*{>P)yilAu4} α^x6mؾX)| A721[A.uЛϣO?XTkL"c7l:Ph+ s`YJig34D{X3Nd=s ~ ?Pܞu3bb{9&*se(sQMT4K ;NIwpf3BSh) Unv.do*=ydV{E)^~ =g8ũG("NFqN3Z :9Ƌl~Cou=Ṛme|alj a~RzvC9׈GZ ^ FBkWQZt&rheEJ"3 b'\!)ZPf>rNX ǵKjP,W`5˓NRlRv1+2E$s>8 qcض͘%ߪAӀv<"-U%{ӭ;3(b bhv7Zm\!whiGكyTSCVh'(=uy}jO'w ڙ ma_fK-R9-*V)0BGc]f7LῸhPm̎PRє~vYQt2SL$g`蔡xg&C[dt->چ uҦ>G;`kS=G³vb*SU u4?3F(^X,'{7@2_ۢ5fWӟbbc#S8+Ԏ'}S>$Y HCAHǝbS"!r>B;'DpE$+Bn@Gsnښ QجU ÷UD cF<$f/l hRdH@<<09Y}x)P-)b%QQ҄~/4ȰWF="Dd^Q 'eNLp-4cwu沀_mĺD230NsܕkOnv_{c'G)\۩0%y%QlNHiˠ[Θ73r2B6LRB?$'gb3vTr@5 m7]>$KuMD$MwpZ="bX2z,C jl*W tՙ=cvCleitP" /"LhtN67qzYctYUTgX+G]2xhٰXC-*SAx%3!yE& K)q^DOOIR19{$T? h޹P}Xoғ@ # ˑ97ZZ;c>B ,aSGU@ɧ?D%1S̻ə;,(ZngU_ػ"?!x*𧺨>F)#綳WT[H2nbM #Hh._ ax$:jidPoĭw@1OCGNjYmI;3T^vmsG;|7*S7SعM):3&f/|J6s!]rQ/\2M5MH2|*{;=U|/;)v2bsY9 8ɂR0*W჋^<`=ȱgW&Wi>6Kn *BMlDHh'!p\P"x`4HstaD&2yBɺ=]]xcٽa' "[Z+*rens%y+d.&K*u2(<[Z?ю<x%gJ4/H?l0-4KqG 7xVf(oA_9=i&^4IHya"_:aK 5E5@r K s'shE ux26w|nSD eoJv6$"^Aƴ >Ti4#"Egio}?"'N u郩A%* @ӐGpY+Si!n"-M/]eTGg~Y'*36Ktv*$Rg~@P{\;6А,~4S٢@PD.E4P1q 1/5F)2oRDI.W8X#XhE"G0O"@O*g%Ym \|pB$>#e X6? jQ@;y|#YcΚĸwU%r H?E&AOTdr2Z;nڿ dή dc$NW"6\1KP-('% 컐9ރs=ǫGWQ 6U<}urWTǮkjQTC)7'#X!>c.5:(#aVi28s-j NOE_o]X"#$ROmA8$Vř 7.ŕVʲ-ECRԟ ۼLoR}EL7?oG/y_1/-4_CvҍHdʷ׋UOR!akW8Y!QH* _a.?Ohz{Z l$WDc#xٰܯ!rspF;q|uŏ^1Ɣ/wjUfC'|lg0T/Ht212m  2.Ād@˧[B!S E1BȰv>f}fʰ<#o <.ӖZ3qș&92{(5Q2JF910_ wx>.])rnmJW\zpn܅a\h q{5vfZuYVk,{*Vp`? EmF tjqn, LxSe6AyݷX}UE{w\OHt' J&3jߚS' Z …Cؕb( z.چܯ.p*v 4H.n1 x%i'J Gbcg:! 5ӡǗgW9Ih~]=}6ІHaESD|ܟ @<~$ '&ye\1A80%G<5xFx3ؤ~k '%NlWQU&ق(ЯuP2ɏ+7!.A̼0aq'"15` HEY-2B:2r Iփk½̄y0:\xBs,FsE%\OyQ3sܚβ k)}(/$BqOF9f{fHM.h A7l wBDt@9W6oLr[McU#7Du8?wmTpeS$5';SZ.qDcۄxMQ לϺq !mU? #ҥuLlXxfo%[[tsn̅+dA`2ٔ9HRkn}-hٰjh`:vzZugEurW/D| kfFwZpHPQ.lf`ևȄ9mF'qWm Ch)W64(h?;(a KOrn#(~goq7-$:+P9zA1q5]!1>wliä6[N䁾B-r#A~>-+zm2 ݾ1X<=eXm S~]ʔP+#ir:J2Aw_!ߩ)j,OBݧeUwf+wcUa/Ҏi2O -t#9ʝ>Ǘ9AsPT)~';1UɌ" lc#{׫`n HX.kLL-T KB G'ߕaVM5ѐW ~\”d`J5:od öT&/~848yiqv~3;N7>.ֶ"O^Ji٥yC޳mzM\[K` ~ӵqf -s^;?ei1j?jc(~Ѕ]S L9]W/Py;TYSm]P>{8M4{r88 !:<6]INN/fĬD4/>7PQ^$]- Lxse1ʺij ҏ\qb7z $nfxL^ :0 uYΐ^fV.dq=lͽES/5n說a@YL(I3 1"."x4Qv[԰VQl|zDWѿƎ{;˥F(D烄U}bp^f))vFơT9m} .W貛Ipp}F部Ud,*ֺ`SIQgMàzjArHL4 CgDx=eb\LE`&諭 ¶7aT4E6!X I2zU9* Pi'=k6jZz+w0&T*춀0'(fe5Cɡ"GBE‹lwl 麨UKl8lò{(˨AgV+*uͻ(+4PB=fS>I;]w}gt)@ ݙ!_T:YWD;ϰl  NPz$is f'MG F|v uaMe<Rߥ+_^NEҒҬPcL:6}ˌ(o6E#dyÃ;ocW'MQu4otFƠ!/6p : x_ȆfC W3>$m5:sԗA8m !=HʊS}6Э imзg/brmې wujdrC&K8ΎyyH'O\:ރ`?`p5k?R1)- f % %6*_Wv!f;8C˚N5Ïi6`H&5~(j*㦌00v4rM SM6ltjV fsLtj}Y'YlXSrc'j29ȱ9.7a9V }a H9Ye_L5vhK}0{ʿ˪umfhYj!$6`hACy'Rn$]\$鸫>V"t`]Lw`CVнKnjOQcͨA?+u5e`"29y t4D]͆kxM..z=4U׍HKިNʆx2ؓ6@CMy$A%)!,QAqw=:*i $+jL|-g )Ř1s= '*RQkDk y!l6 R~z ShQXO`웘s_c3KaE*u cD]Mx mfk5ɲ;d rSm*C73 ł Y[sXp?"$h0@$ޠxDxg72S,CL @?8G(W ScP=|Ur)IJlT67d$mH?.ak\>]5Yu%ؒY|O͛\7 9(~͖YTn3ʡuy̭ ː09NYw#ɢCj*SVIUi̖8M"-nx#9djj d>nP4SiZ ^~ۏz X &G"q?M!]1gq-n[Zk48|iOhIv+Ͽt~Jm%A2'NA9 mn3?svC@+d9 e/n4\/j*G,A®)q0IJ?-c> 8ǪrMvl5#ԩk@,Vt(p*6ZˆG K%gh rb-i"eN6|xfI[FtSGZu; /4q`eZp,kŊyHtn*DmJ{k},%z{X=:EN?)r$k"̫E>;J": Fh4c_qqI./[S / P'[RD-{!ɡ 'Y4k#V[}d; kq%"%ښ3tbRTܿ @A^H+fQH}a'yOR0WQ7q?'B+Dea7LMK-8=˸VJ;IsNӥ |~ƛ)﮳w=̇A|~2ˈؤnq?Ɇa VM?&[UZRWA|4ͧ f|c AWr*hurux?X q/<4hW^F/#:"Qw9rYR"24q@9Hëqщ;͙ӫ*Wqu`KY]X]x"d#i8Ssem4bsXVʶBK>MJUzX>/)tkZ֐ma"V{7edW4bU[h<%i$GE 'xT+~oPz 1gUZp={]Qd`I#p~f懣AO\ 昀1K8gh//|%ZOCGGLF \Ł7~zqITźZq#_WӅe+dۂ5B di{G߾145PXkY<\:(NE9Mh2+˺R7_>⠻=ǯxCRa݄C]NMa>Z:ʇ[IG(@Oͩgˈ8qqgdq.+گ<2%9N?TCŏlIeG\J,`(_evD>1YWך^MCZ*<ݟ7C2mLM'f9eYR-z &tbl141z06/K}C2>ؚ{ƼP0S},rhMZ eZDaz?h]DvuUc!rrY.$s΃\U_ak\$:o10q};X]~^(S9^fڜ=C/zZ*1"ѤBn38 qrq (" W}EȜ;8m?\ Il=7 rJxgI*2/zͭgp:LgU 'h 7`)i {J̄$ɹ{+"[Oigh:LτTl`vjlxV<-,S(b6!RX&j%:a[Ery)-m2X ~JP#/xLBچh~SWa|DwZ){UInd9)ր~)d;bq+ %-<(7} 0 myآkS y y?s5}?:dOE[ U+X8\$m#ȴ'CF0fh]l njjD`q]-B@pROX:Mqjˋ'rRT!'=#B& =P|[u<ڹr f,h:K蝷:[*_h*G-;[?顏C0 :pDաu梃臖T$p]OkyIHC`nF9ZK;:x~`gSRrEX%1R猛D^ rz&Œ%e `i|;ˍ!)yStC|r4߫x\qƭ8b?;px㸅؈D,>o)b< mRN(PT읺^ͨkgfN˱<7K)VvyNTV*r&hV9tkQ-`d9|A`BŸBbRIzm;e"X}8 ;ASL ֵn}kc},`#l5I*t*%wttXW'qumg'[|3e?$ 4tC3&w|H'!O V V61U-|gb kac2fM{4 a_Rp8QDGTRm&۾sIw.V:4j[ItY;Sْ;4BKYr#f'f}BAdM9 !fhIB]쩡iť&bu%7;gKE|3*jȓXOXoK;&ar>Tv]>:V|qto`m7CRhu[,a"12Y[7̳uUOb}AGv7”Rm@yeSZ : !4y}AD;p(,+bBwn'FqKJ ȡYt;3{"Lo5÷JKLzS˷FRiX7I+fe(aa Og?ȸg,?PL5#r9w@Twx#6 y$GmTΩ,xFͺ\p4u8{5+?-vD"p63 @Qj!CL$S};UHypUxbًў"Im.]+*14[הyJZj8?{A^ z@{^s - ̴Po霓\ 4j*Q7.i= P-PS)w}|/6gls h t[Ip 9?K/|s D~$l,vq\Z!%k{M6ma`|veQeX7DpĐxzVe:cSL,CǙ*:-J;rZTM_|<=~lbmHhK_4p6Ĥv6|a褻a޿SPb62i)p*â*cWj 9GΈ J,̱M1qr,TnMdY4,=Cp81w㺓%b '/l.S{B샣mۀka8h-f%Zq!W?VKnyRG/9B7!6[k" 0j 2?0]^j$HAfF{gms"xԾѯ~ﴺfjT6CТ4\s\5:&$]_ih Ԇj0aRy) ؚ @gOƎU. JZ.UzgI!jjRD>ha2; WF1\[ Ƚ vJ.sMMD6;a _+g*:liԼ6 1a/v:W^ΐAP[.cd?_~|XA"be-e"EuQIileg`p"E=++IOT%{.,ϾUFds+ʫQyS]ve _9 ߨe4+|1]?nΦO/zO C C-K6Gi#Ady-I˨gL EqvfQ"%T; {+dp9SR0Lw$&uMcK̓/N!]i⸽nb: 4n0* 7P& <=='[֮b ԉ{' /DZ eشMYf#5PǢU䇺ٽv7y|HXptwh~,v yT=v~ ĮDG|ծt w%қS~^&R`ֺVKdI[@T=H,z(eh Q[$7ڥXXvB"G\+ot_(I}͈ Otr̔Ēpw=fQ>$.Du܋i9zCm<~b^MX[a=DEg#UȃDh`5 &6uŷ,[]9G%.A8_ďQ.!&xʌ,%P=us*kdȉd~:NaQYHKKFI93ņFha۶FE5{GbǛCr^ 7oʎƝ,Yk@ͮ!"0C=w4.ZAPG3/,}v5 67hibY-tv,Ԟ}f}{/m! v ̇)ٿ#qƂ2)]5?_ @]G% hF夌YMt/!iC{!D@k *GfZ9^2JhdhCj5r؀ʓi { {*Q ( Iv;Eӝ3 c PLަ#bKaEl5lgH9QT]vL}^"%#/PU1Ge%4G5A^'TƩӈ4k _sya)όF4󫖒pYfփI3;P+i5RկYZ< $#eߤ*,?A؇bO՘0|Lו"4U<'+ːe>"J)OZgN}T/ڶOd__q3IlU> % ŸŞZ$lW(*9`b”T~-M@fjM,,̉"ȳxޖ~o,_8 uۻ7=󃵆ftgDAÅb5RMv16}T_&]ͯTVP0x=i=OO$uT`l 9QH"X0=_Ʉjs/{t+ \֜λ`3v#+z"G\6 cAxZ iHuwK$' $VlYs11.:kH,kMhȏ|%!Zr+[p~=PO=xH~'}LAcK}(%CXN Gip{GC}j]xnZmi\uAT/ˆś+Mي- u٧.Ic laq)!!VLWގG[^eԟ gpS&zX$-568^Q>ִ20.2f OZ#Qp`-fК[Z=m?va]THX7>@$$ ⋃*T݀h o0l./[~ڇVEl#Ȭ WXuI~ ^\ʿSEcج=װfUAP[J_,4l (VնToލ>>!Q&$Oh/~ᔈ;"R!/4qor{7,Fn/Hᇎ@¦B>pS1X%qJ hXF04420 ]eDȨ(8ۛ-,lZ1SЧ۹ʩW# qOa*}U|;9[K C{.YdR˝yc.!#hO'-k|N,6^bA&*3Q&^̔Xڼ{Q.TKPHr6LBbef = 6Z_߸jt+S_jǞ 8T:&1GO?unµ%S(L -:Qɞtcw½8ۮc2r m_22֫:+[L̩tM'<ĊfULUBbug{^ ^ >uf3 "Ƭ$8 a/u*ƒKd=u{r~ WDF]Lj 2$j[X3ɉxQ6Bq{E:N(vf[f9LF]!RGWCEwH< < 8pIٿ>5"RNfYQ :\w_^0`DgrOٚsN㭚8\lV@d/?& fbr]㿎`cρAkXDNA?iRW_;c~fa%MJ/llxH]&*Mo=zCe.F/゚ Z~#e+rDn19}Y eYwZUq+:(;+2-a85g*XŪGrv]9M)SK;d5lXo XGW1YOU6S؋Ah0Rfo3,^cIȊDNnPPڱY{ס^Yq̲Q{1v35t.0oa/ fÐY])48߶3At@UQVp+I0l)pS"?r]+iv׷ 7y"mC.<gO*ai A+@WDpdm;cGHjW(ID88Z BeUzؑYp-C\ޒcOv(ӝzF{:n\R5EHIҲ$ 9n>.aѲ603NQ@;> ϸ% {?9n[^k]Ĺ `,R~J?~RYĉjgʖKUns#v7ʹ"^/82S=^r/SN쉡)6Ҁ0o2>Rlt\E/ZHy.;V>3K'w$|{u6߼&M MI>+P^E`^#eatyt/9Q/]O%,ΡX@'j\'q$5只3dfQ~8fUUzM-;6x$zK^`_K-F&9G)5)+qtA*#m}R=;]U+m, ykC-өq.SZ%r PJa KRkoCHBy ˦V vmLs#t./;ս}{' oqܔRtb}˄-:|vĻ֐4N隴s're_WC@ڙsPg"OfxQ/ Q1= -]Qw$ o!v\蜽0:vue,Y,"˜5j{lr)GLNj_g%YlÀR ]7.Mׇf 8tLj~[# ,  Ƌ>AjL?sTz]J,wQng/djWՏcH)B 1a8+NBK4WAS}JVdcҁjlu9 2qEB3p[%$E.Oޤn1F%\UkY'$S@"Gk0!{uAV0`G3"«i .q5ǖ"_¼N biwU* X'$f[itr'B48pхhm{ 4 k[^MaVA'A.)W,f1\ 3 ܡR|5̬}ub+^G8_ ^{8#Y OC%; mx&K:Z2cYwO `FHgdp﹢pOOMHc<7 HaȜI:w^NcJgt='sV\pqY]rM&_Cv:rt.>Ґ9 O[UwH>:p:1w!Tr x';3~c{iRlSeym,|/ypc~f#xI{YRM+x3)J6< }QUEȗ1ٌG83?H&|k4Bߦv뷲I:ӹڻ)ԁۋ٣U :FBj鞡;brv!}%3p0&.e $ƺ(u`+{? K]!j5 &\~1w@0Fgj\o__tn-6a"NZOdӋT8Z gRi+ר&Q4m<|kJ"Ms3 _)^J>;$怷"E7=< xLqJ^z\Vw+0dEn FI479RbTF!O&<J S܅^]#LME2_Zgho )b-/[&g;XolK/MCL)`tEBtYa]j3i[~)x7p19v\lc79`|$Lڡ;L+rʳqOD5i.ELЮSQ)jLIdk0_>N֘_Xfr b@IMVS V0CϨJNnHW|+Hj `R'P,R{,~X .0mҗo8C)n!Ƈ2Q5;^AL$JKhM5V‡E+61g3G + }pn=zgR߲^f lf=}N/wAi\= 'A:|O+3H{*ڔEe4,/S^]CfjPh@}GS][tΚ"HLw@KiY8B{8~hEMĆ{JH[ *G`/∋@5ʑoڀiOޢy^zUd7[ھҋ' XU7fëlƱ=+oQsTpBV1wWQ`BgnF8%GcuUګ؆᷹I!OؗP,< `Q4?>GhFG= 5޶bobr vGRx,Z31XVvb+FpA贻2^#>3P=Am6w"u29}T7gU{({&Ks}[Eonʿ$yMa$",52A>ؽ|QY@PIY\%zr¢wmS:5Iyw5|C _h.4 c^vk1uf߈snTuӮˬ0PBիjNlxZG(7 0VmlEbub[À`Y]|B 夐p[YE:9VȬDO^hcD:OxR~@f`oK,j|dGL:"g)hJՀ7J% "iox}7 $EyW٫I=H;O&Α_ rzc|70P1ΙˢF7N>'~DbQ -Fޙ (x+NEi0ATNKBB< #wA1Gx@-ߌq0TW 1f*;pk B%Ԩ;'nZ 򙌮[+jijy"Q7 aKT\ATO=Q]$95贆+v ys^#gnl͑S}(<9R W,8+a~6J8sZu>n3 񊠃!uIMh$>XjYf 8 nΌSu`{bS$&:^Sf6s|̈́gϜ\Jb#|Lۀi1өZGXpJE^ C.ob0u5{F*jGiLoEBkwv%jϞ' vI!k<#2[A!? PёS ?? %.N_r/HE.XmqNSb#"(RaLSArK_s @'Cy!*0wdP"|#_|>_ơl3dK.߼ " ^p?G |ºЩqY!jZzCorjۋ]ݲ$lvd'\@z\ru Ֆʇc:[7ZX=K"!ppUIEkZ`gуr9rx^=ZRXVpwOYMqqyD7=]r;">X M$O)a=6⯉LIoŧហrPYaT8#HyEpLD.'6)̀%I:(pPXUnf۩|5K?5W ,-EGg7*<8#I|,$ߙUgɦ; =!L 4- ,3ݎψ՚-,tɍ]\O YC8_;=e쐌d@K}S7ϔW[8Tsp/RG[b'x{& 5W:_`8&PSxύg{5Rhd,dW||9ڐ-$e]#%n|^/+ _2#+B Pcp R>&Ϸւ&Y]E&^Az12JHkɨbݻ|VnvyXN[!Djh_zS!`ZƵV,4epC;%uً*F)~?sJp/Gv21{)n|>S8F>`)JCEI o(F&Xv#kx+;[VY:^fV.I׽J"n9Љlrn'bv ^8OdѲk@'=m9vvdo;Lo,vA fH?aʪh3${una\z7wO* ^v TcNT~P}PC F#^4qxl>["][6( 2O?2j2ÔВՅDn +234m!ܨSj5!RvH+![ LB-j#~RI)G4D[lME7[rV}#5'Ї4\^8NɊ]}7JQ'KalRՇ˵hfVZ׽9$:S2[lO|ԃǨPV&>&LGv p!\Jkdq^@ij-JoDL5^bZ/,:3pI+gJr˖a909(XoĭT+pj]mWkf=-cdPm<|R\7Pή9*@wڥ^T&BWo$ 12|䃤L]A88D}Dm8ϲ&Pme6@;~) 1=r M Uq٩SRL-2,coj{=cED\Veں8P8/'} ?ts USŲdmg{k VuzШ!P!j ۉ9PW8#cb.jV˯WaFgEc.Dic |^!BF5Bk(hK;Ÿt6ї)߷aT,̔61\pMrnye[ 6(WBvsSSNxz Etˊe/Ff8;ȿIyXdA/@2@6'"d4L'Q$܂7GEYCnnA&5\JPZtA #VȖ' ].Kk]`[8a/&Av QLqpN6D:GpfppOqmN0~b_|8>ݣanMw^PԪ …$!ggzᝲRXU<'(Ì4Tʋxu2NVt?ᯤ)Ȅ^;I*ie,Ξ{mA|ORNhP ߷ VҌG',h|b7\rFp=\4kD |]?`6?25PE;mZǚC_SҪx(5d7+*oP1z^?> ;E`xigX]ma1;R/A72W2nvT`j?Fq}~oq)7<Ɋ/*FMIԑ;&h_3O‹TXΪ<< vW: $ ;ӵ@p 2y)|qϮrLD>V+9s>$aѮ,10FIGk>IYe=Jjfy@Kt`e7J_K%RkN<)W~΃lgX+gqIbEfuV9Z`/LSsL +㬨̈#5%wQeH22M3ţlR~&CL'4ڣI|>T%`VB5!]IY^G73tϞ`Z#5t8ae=D3Ɯ9QbKXR,5C2lV#n: OY'݆<-~D+u ]יӥLpVWj 1q~?}<(MT%\>^+t*5ϧumc`w[,}d{Sa( A X*ʍ[ao~[a7ЗQ?ʂIo$Uᙺ;n}R=K]r'xbE'*vcJ,Q=/s0a aX-VK|ZPaOa FUN^j: ɄTSH":)@peÜzA2Zc-HgIM: 6жp& `' uwuaqM4d W8+Rml o)5=Aalh=1(cLBUNLgr#g `~dq(䐾<v0aDJs7\&l.߃9H ̤^ ]Rk%JEtI%d!L -2h|)sl62C|xn4E4IQ`|?+@ѽQ@9 d1uFpa~LMu<靑? yDŹyшItbf*V߳FusR#}: hB{%3YOZ+-)OQhJ f li_36x6]0u ncGR+?uǡ!tm80$7<᥯@!i֡G@Z?+xwF2Jhh_9vhʓW!/KvZ#z41k5r u9N_E=\Fxc3+^Wk G,G߸q)kEEd^{TfK [kIvo ZˏC:gk!]O1ωdveT[xf$ROxtpef3Nc~pHŐt.TDXa <[vtk8 OVH.-vzz<_,d5<3 a&̮И3;g5 F,&0$CTP/@ QVsJJ}owX(]I!ε`FRH:gMP[52sU&:ܢꔎ)bYqKY'3wt>2E͆M[ YϘ4զgP);Lu55ՄVW9[~QHdhFlNbx y>,%Ԯ{;b}ַ6a@^4>&oVw2>>Y)&_b{$F"̫&y02Y/J\"_~n0v3pز΄&nci hOD#i* !Ųn^L\v49OIALkj\'%ZB~У7HL-ۅqH;[!hm΅\DcR%^'=%tvj3C^/bfN+ B^MĸԥK%l(U! iw3a` U<88NM:d6"?-)Q=Bڶ( G{vzGYɡV- 35V !Om }pD'-nqo:=qh7{NjSዂoڇKSl$oN \Uml(w-GxReuR0oi s&#͜h#i09#lUE{\J\V.F+=. M>,mJU&G#^x/Pkʊ1 LEl'%P9ȴ0JSswy%z4hNCHbINӄ|7Td ێ!JebA;>IkN^5KbhLHҦHСtn,M}Q}V'7VBv g#8~@ۇԳ%"=SqsjB}cmD͠vVs.G{֒.ݽH_GR1O"!e1@-ο${6{|q'5Px W6Ry#@/lR5?uq<۸YsG[c:4ҾT8X/̈́@RQ¦[dKiYKحQUdUjs*JtL>6C3E .¹]x[oGOE]1 ]w-)?.(,c7:)ypTҀYRn-Dq{elGn)K]45l>S`=E0<Ю%㍄&W;@o=~ 6ŹE2ᆄxeԇATzGbE,e B4pfWYu$t!w0O|`c{) WN=2U6R"Y9b#ܳ@ /ZmuoE,-9Aҏed~hW3T5A<0ntn6:WQ,7J.B÷SC?U>1b6--f\ͤI={ ږQ;ia90BMڶ}KzV "'K%zLGA Q0Μf%/A>)}rsl3Z+2\X 9;Y'E$6O -;-AdĹ?CiQDZ7Vh#R4,,X~՞H 8y]@ۧ2xL'_`d.Qn/Hebq ~qf eA\*(u*+tо5(:+lL LN;Z2]$*_AУRQ<:9$SܹPSòa l"Sp6#_kTL,xNA8^/a?w$ `lHB}u=k( LoS~е3OH$Bfp08 >uYkDzWLts lz^GCJ`|I^Uۨi V_s5-(OI<$N\çUqL@Kv: / YeIL0hxf8ν ; N+@su #{<,whτmxv tN:7c$@c\ ]Hڙǒq&Y7YF^ƒ!QzK U?ӻIGGWĖ&nM 6qu;!wBə'*1X¨t-v! nm~-+䙋{p=^y`Pr;-XpV", 3gs)RQX)YSWY2eeX2δC婊ǁ2{Yh\WǦv-zdxlQ%j1$ぞ#B,%ks@W(jr+7cAGTm Um򄴆hVegm xw7d_[1ntaNh?R9~$1 ] jҽY\'5|쌂l+"JfV".M#џ=x++EڵIVəa.8ZenѱZ 쑘!0Aٱ6Ceɛr%eQIC u~!`}|-f\=.ɓٲ ԴD"u)$ 0G}ъ]K2m~)ޫ.N:T(X֨LT3@gl",npx-cJvrao.?52R ﱡ% 0XU`QJ Ϛjʨ(Oطz28\&BkIQxeBeƳOhOv.> HF~<PܒN7yIAbM ~+q6Ϣ-\)q2'q?zbd@xy.|wO kc*8&A܂xZMrY+cH?1ʋ `ErJA3Ry" *1??lvRC?wf,jv:#mfBAxDz&Wj9llm18٢.jIv 1NV>#6)҃?xz5~ uB!NE3 :4zH 6ZؙF:#-۪M )L ͉8~>k(ٛdV3.y/`4)qk%_k E.c S1_UCZ_ZW&:+ٟȁ{DQG3Q$] TB^Mz,Jr]J@0nXu:N%TRn^10xph 3";UVڏ9c>+l`f> 5fA0Z}sSY΢@ #%LCbdh_/eA697h1ee0[{L 4LTO{ҥPmUG$9 ^ah,Qce'ח[wť.nÖ Kg l>x kkr!_FY^ř6IYjl 6 ґb8OŜܳ=TEU(9+<l^\Vf11yg|446ֳ~?ڊ Y>ۭ0bޱ8_L.M !Oȵ-n$.BcAeƟMijִ[#\qR:N 'SҫIQ4&M -TXR(̰5mȿ_cqlWjh =E5κ"Ps6ďi=xXéK'f-qr4:48ap xץ2VBɻ^4ş=yn܌Cat A(~0pI՟ i&hb ~O5^ ;/==WltJ ;og;?v <;f n`-;Y-5THذhηˬF#p+cfQZ)qq[Di3PHT7`aԷ]u&vNui;KCfeوJ1Lm:znD t;æSL1HClZ u+^!ɨ"@R]M2:ՁJZ|cHݎFI.J`P!|_wLӫ&.*X&GaoUZJ@ʏYt׾|M!M21}1-0gcn,5L=5ZmnџO3u()O|@0μ锂"L3Csp&%ŁCXt+dr(隸Vώ9ݬlO͚1xI Ēq˼TK%jpGmXdLY&aEs|\g:H@@?54PƔ]H(;`P}ic:^[׿RޙA 8Ư͛9@1/z$Vkj#BgˁjT"])ɸCjz'^t/U1iMG 8*~ߢeun\McUoe/e-%Y7&نVå܂{H?\n|4DǀfL=*o|p'Q fzY{> )*fo9Y!$C*,x.BEJ{l ?_gh˂lhd_Incnh;?t˟ ۴iMGpRC}:3"®%#̳ȴk7VO·Ci ߧLݧe H%ggWC* 0کt%BԱdjaGLGj3䘺6MתK;ۖN0 PlOQv`;%URN K}w`R, ~RM'z(dSoPY|Œ iYG" 2"t#TQV&F^g#ɆAXmNoj"XL%[aX2fم ;-{SŜȸ}J$> L83N9EHK0U+"Y5d]7'^>HPL<.;/aMo$[UD^St'/gwa>ʇx}3@y&q˥[y_pםXܘd0 %45s XƢį[ I#rk՘y|&Œt%4bzvZjp\~Q)*&Z`%G+" с{ژ-;) ubnW}uӲN{D07 mKE?G`K%'y*cR3%ꇾHr7~_&BCK ~EUWm]֮t;W?z7,bdtKIZ} {:UÆ$Y? jN> %z[hۜ2}6dY9UnpZbx11`ړa@lL = c5N\ԩs r@ nکEKE1lu*ˍsэGʇj ㆽFMTbPT+AX)ʞ 6=|*WTQ.\{kS,mЃ]M-7p:qY iu0X'%#RZq:.#ز3u é {/? Еj^RK qƍ~#覘IQ6&ߙ"ݾA{#0_%Fd]Me>Y1F0 D:m{K`Vn>4=,Y{, c׽RM@b.~C<[ >v_ XL5C]NFRmbƋYQko﬿g)_(LǯmTKbr38fz5;UvHA/ }6SzfٹdN&'x1ҕwm"k ?5:Bbv2s)a*xb7enΣƁtҙSw[%w4 PRGGաIo$FVuh-wrÃ10kY,o"a|l,愁^%"%vy9Ąb~왌AgaMO(-7㗣W,~ZئJOo8ڍ蝷UY:¬o$VzI6^850VkwE pnD^.5]9&mao_GC.aj$_NW*@A *u3 "{k<{CYh?i:A='G HaO:Έ >`p6WS0,o!;q"T|a5PWpIhM99{yHw.Nww`oS_sIT7?Gf}J` 'JG0o$M 3[eBq8zܻvm!Ã2eV(̨<BV!֨v!g'[ڲ̏0PߴM-)d Ή:E&:^X+7Nxs)Up"[R!IVOm7#;8<3_xC荢䖟=Ѣq+м}Դo~Do ,GbWO~ &K!/8U\ZCKnlꫩ)\Ʌ,(&28[[IQAXSxZY۝Z\̄csw!2A؜-nW_r^~nEiJ{P ={XiqׇX mHafNzKN}P8o1}>-`(yVh9FZA|NUuAkLNA#~x@)[:^ѸvƖ +%)لoMՒqAcV.6oCPe?WO΋k|xØxv!iBJ7y<딲G@/c)5f U5N3 F{VLM9JD.iHcC~-}$}ۨ)B 3u"BY) nLdxhXNRXB r,ShZm GS Btj'oB̤zt2C]7=ڦa{h!wfG'sw,?ג^'#sg? .?pql3 M̄Гy?(plWbf|J  plI_Q1^Ii\9MHRze]삘Ĭ#n#Z{Gav)"28Hu0zMnneuVpWfZ#PQd[`'>tX~]gszCIJ~CmaqgVJe1k*85)*_<|1GDnζ;#^5CZ- 8R(^X}tI*do& "Պ{2wBf|2huTٲ _[ CV4=g -МB =0E6[e"V,ça9$67av Dsw&Mevw@jRy )r,S*fs=J(ApvåSiN%3}`\vs!2? /XbH g׷w9WL3Z8uiܣ5ʚc1{س }LK$zH%L`6}-)xTt|N>X}WM6(2a{&vr-esw&m]+)R 8'̄ )Z=OK@U{@-KN Mi{Y[5f+hEz&\d`{m=O@n{BfB)\n>wrzf6Rï^ Ud+U_uy v#Ξlo>$ua J"")XI/]mRT(3?)9xv(vB(Il7B|cDKOȶmehOrNDX]_-3S.T7Nià $✣X;y[1dXъ='=#I1TmknmELS⋅̄?=Дyp#‰܋QW/z0vww "AyK7Sb_",o [㱅8zB=|W~:a*o5XΛ>9#gCz 4jlZoEL31~Hn +V? )]q?߈dM hJbS^av(y |[#^یV t cNc`=73ƒ$:1ßEw"#)aq>/o|y%߱1c:uZbI?=]FN(xfwu4I圹s@Tx@~"hXغPickvkY>8|'Ԋ0`b?-fQI»e}͔3ZzI?L0lpVSR.7 V 38ԜW꽺 m*)-k5A^gԶ*{617ť2$q@"H*Įf>$i(5ݜ'$[zZ"<IE)s,W;a$W33 [7؎)A١-&q{;_?F^yhR"ERfjH}PitSFd̤3GvKqaJGNJy8?9]VWRvŁ%qaN%V5igvK~*#G֜ydV:O=4ꬁ$}Nh-O.OϨ”bat46%FR„'r#H%Y3ݳPsΉDgG|RIh"P, f ُpRU$ c rpS *%o #IE@G=~Zu85τx0ѨBCѴ' |k¯+9[K)yQ0gU5#Ҭ"EtF4_LfKD[YFG(Jesuws2wX(0[ @ z]`dp{]}Rp8)J@eਅ? rrEt0=AT8?u{;UX['V.>q R`42+KqMEmfэi$5ueC_ܔfɠLzC-=5<5$۷wOs 7 xPr:5cێGG R4m 4+uЅMۓj<`Q<ϯ?/|kE`~!m9dɸ>K"R| љʬ)Ѷ6Z썎ȁa(ܗ,YrEB GV ca2!Ъdl0@,#e,}%O82"w\:tQ`?,vZyTvvv[bj ϊ=]Ʀ/Ѐ5`M !ldPO-2"nNуU05}ՐXcxH[#{^mOTf6,SrTَE5hu=8\g^(7_s|1~ <uVg s{[@}7VI""zBʀb<(5"]E3(=|8Cuo՗x*Lwqܾ_3,J&(IJ2F@A_ U`\rNJ"ւq>r~#Z|&/W[8j37J vQ y?qpµsQ`lAKtb@G.b!߱_ cB:7&VbwW bk<&gf&_L ZV, q) ;i9?JKӤewl8 >[w g]Kc=~O6bV߀&UNC{ MS_^zYݢ߮X -|pik vmlh-JoyWmǯ :R  2DU@!RUXoawvRrW`[TGPU"rS@8PEϾfթMCco \s Ve~ Hf`Wk4n!*m DA''>?P,mEpp%Ϝ}Q .oF6(>GK{M[,X\U>Q|S C+O#WѯZq>ħFk=X DP1\^nxaLm]f~81ѼvJ3.dj \a. M שX;yryOƬ -lL +F ߩgb>64{7>8C*Իm&]9KX:O0gTkUMumؓav )?#H sJ9ID襸ũ2eI9Jw!*ㅬ_qp䯲OqV;jH)zC#c'yAsJVN9J:.5hDYrt jL  "S if(] %TXWKeTtV dŒjm4;Pis ;hRʸQ"D͏}N~N=goicߜIL&wt"SJD-eH Kkhit۾[tl*53ΔObث:}uVoӔъn<4fKK-O2T"?&,Aoa 3(NoNƍjKbydaFnF-fTtS2VĹRac%aO%|$<4"9kkV`Oj^+TN8E(aWe32U<4}f`vK%,DYyt}.F.۹Ϯf{*q57p*1$W varML" kF1ڨ ǶxR1C{Ȳl4tV?b]3?)Ť{{➠zLU&lX\Y7VZŔ+2ʠ{ʧH_ 3>k^`{3 %3߃ LK-AĖ ljԦyEC>g9b𥷓 }J*2KrC5t ˵7#x݇ZG0jWT++*QEu3+53Oc.M(pr`e@ifzRKhO7TUv~{Ml;0AP]:A"F@ W:8#`++=".ĪD:%ց_s@v8Kj(mb0p8^ k:1ޚʾo݆2XRu꼅 Bknm18e\ӯ+2&}9D}rE;qwgJ,4O;Z-JX x{DQ*{S.p˙ .K\]/\z" 9ƫ4`o@5;([ pC˳S7FU}RB] hfVAU5!WtѨd%@3cP@ !78qg. G;q-D$ݐB OQ(y~-1@GM˷^w6p՛\p@?}DaĕsgQSx_B~i T$}h.KQ8$lG$b7Њis^+],.D75ksCG?Ȗ{[ zV|/ JUK@Z@mo)X& –G1Nu͚ESro~P@L"RP11PK^U[1|NHSD3u Bf]3](2iپ|l:ﳰum8AyR_z`V#( =Z9< IY̽KFwe>ڄ0Lї? 4S{K$`&ozV_0+b?g^~؏IA9f>D2*#Ww q<㻋:͝Z|itiVsB N--LyF.dž&JN K J'K;isYTtS_3=>Mo,=+gBאX vlJc 4W5^~Aw% pA󸁮9$BIѵPP<aq)Sz*o/Jx |Aejn XNo DE2tf"j fBB$bT0Zc(HM],ZFYv/^w'4mq $kA8)#$;4ucq`)1N Y{.UZ# Hsbㆷմvh@A<ʎxJsVEV~Xh:Co5uG'GLp^^_ҖFeiaSt }5r~y`p]Ǐba4nr0gv.ya}xT0ҵ6gV`Hjv7=,gp%5$xojz:3BYGvo|Pp:+I)}̫m^`nCRsFAr6Aj 7nhiH? 4JJ]x-SነpWQ&TȺb@ rT 4!=tq4d3Tv%VF+kNđcW]jOSkQ wt{t ̨*( 2-x(gv -|A).=3(Fm'.p7ec tB\]y=clλt}S~ocnR0K~E*IMo6/Ckb?oDSA5&dOfg07^ĞRbx|broO"ȳV.xSoBM%{K [D{R8nu#ri =׶&1ΐ~k{ugɌ+GyguD`[j,])ωPA))jqФ,v2'r+_2dp5xٵyQq~$^A`|i[wj融Ƃ"&\)}wdsrpm ӓG#@q-: ibWg Y9=Q1q0Q6 oT+jir]q'adž W+aSX?wT|,'"V5hߜ-<DwY IhPd܄GiB8G)W!} 7C :y]V!z-M`°3axat]`zL-ߤ5In2(nsč w2*IvAt؛4iXA\?P~%S}Fyvv'?-aĝ 0M+( XFmhMEdLM<^Uk{V#*"# lM:R&10]q̪ɬS"C޻F| 5֋Ń GrӔ UhkV1ِ֡cxKճgXvy-Ш jLՉ</U۱,ܵe\)<1``9`׳@M-*Φ YJXWKA#린.82em^. 8l`c `㞇(xѬ͈Ja24yͽg ~ ,z_Ɵqj'E gNN4k4Zoe:8Jgj:etqzzAKqrsp}F}ӕ_t=TѱOgwW]im2tvnց~4vGJ Ƕ%EޯkTy.t~ߎWӀe:;Ν҉6u{2<Ê.e׏2V˳ [ݟ=[xu*y(!ׁR#,úlq~}%)RukPڸIitba<SpXJxF.82h qs=* լe/9^jeTa!d~pF Sq YT܌P[%->2G6F %~8Q5"-%' r٢?;? y§(g. +2S[.m[0.`G\h6٤":/3PBYWv_a':^+jcMzqN{ˋ_eI % ~!\_憮۫<>jBXnt`j_.y!j#}Npm>Ʀ@4qC+=:-*B:J=k)rpmMz_%R|JD41Z=/ [#>P-ю-HC͹ț^sv}.{CuWR.l4tzmIɸfZDsj<  e]hdW"Bs}ʠ©=Vnu: hn4,t"5Gb)Z`e'ϐQ_gL<.R3Oi=m>@Uzޛgy^l(+Н CY_!6(7 : l5oVlp[SK.ܚ4Cї+B\=:^22?dKM z5},pI;b pu^x3 #pme"=ջ?D.:}B㴍-$ /@mhv䰲p B:b Cc ADm*BuózK\T8QkOW L Z~:)XWoJAR1}5-Q7 _@ԭcݦi)6|!V70?7c)C4G,u^3^N~M]K*>ί}hL7T-<\# W$9JN79^O* xXڛfK_ {~I;Bp >ƟIwur Y-[Mm/g5^B] p]*k#5O\Y۝+ *Fwfaf@73XX'W#O(7vaV\>v,O;SJ$j̕wIuD`C"Vh|9YϝnHv4ރϾmH[FiT_:_װ( sl&Ȩ_уjzJs`M`V!W~G5TIn?U{o I%$E)?8Yę)nߺj;9!ȵL-cc,Jh.vFmV&]Jj~bAHGa^\`§~xUO.rlxVr@Q o6{s0Uj9Q-6P3I9#~;XAn"=(QQgXGqnmW7Iu {1XMJPm$*l51#ɐ?X3z"IMد׬f16O_RKPn!{))Z:s$Xe+$.0 !eHZk*QTr lZ2%W5>=J،ns92Yw#KN@܀u]_ٿ h*>JMT;Wxq+ {^9:+",SxZܓ:(4Vk@!HMCz;9_zSN8 cj+v;gpexWmy\|J|"cV=-{u2ch8r?.ܾKlB-fe" Wbf6D)}Vo)M=9Q8; LC,t/9yR&xV 3j [5غDs$ vSMp'2oYA@@BgtOVEm3 y^{u$?>\bbsB.Yh46wDp{ M}0Vw#GJ,>op+3a`! 0[/UKg 9__G1щ~ś9 +=7YvrY5OLyN6UY?f<5=?Qd"VNlc-lx( gRȅ ]- $t JOJ`-&ؓ%PIӑb6d^i1y( f0F\|pTGqm.Б@ŵ5k '8 $AMe[SGpȌevzСZ"Q`kIx"^"\mH~LRNw*Nf Q7/%C+%Qew*rώD]hȆSGUOdDMjˈ7 =Y[3{ٲ2N]-&Bp6Cn\]_}=Ry(RM#ӆ_`B[FW^ bD֏U?ׁλ' }IHF?J 'VYe;9NW5H3*UЫʽesdX Q{կ*C&˄NQ$)7¦F.?2P6kx)ES!$V]('eK8.ͫJOCy=n`GA*k2g<8,Q5xr)\(ɯ$uWp*SoA5s*&t7w2֖Nӱ״>|σZnq %DQ<c~tY4cې"4{2N9B$$wtʧXpCk r4(W1".UQ3Ao< H}hD[O7~=6}t7} qo5/ՠ> `[AION@s Wϳ$`dX𛼤o^}Y;NS_)vRk:SAfޡ8Wej-K2y1-m*lv$w xY["`P翙1Q@` d\!xITӺ]%VPo9hFV%; {j˽caޠ _+vo.HD)ɁrIѷǗFV"rAJ띫9fzExתMN,VRxm/,sN_XU`T!x8qY rsSXu=+׮R2]HE9 FǕ]Uy fYԲ|>> ˕"4Ч}F/t:Vྤ3MmU?x2o#]ě/YTH/>}/p2ES[#z2Sr;jRbwu6 PK@{*DmDu7wF0cx. |c_ ҰB Fqِe|lu1&P04lcxy14YkWk+mF[[<~88ܕ^>ziO8*= 3lp⃏}gP7o8PicUk6}srdWX'LiyZ@6] ]';A^g|+ _*quXhSQn2,s,TYeGvI]7<# ?j8-TM,÷p{ 'ixmPXX;mzvGm7qD,5t(xre…\~;9̫@;@u&l$QqN/<CqhMK>©h^&5Vfgܡ%fiHJ"?܀,0BgPhvk{6S`Hgj$RD!j5%@v=鐓O]p6wڃTN^^/;nr޳wG_j; T%=e3zY!WT0޺+JŌJh/9#E#MC/3 &&K ~-0):ddI +o5mY?#o8/hq-J۳5H;Jm߰ 9*ވY{=&Ll D,c 6.fI.b Ecn ڽ[rpv_SE?0| ba i ׻¢vVf7 F/ Tin\I-HٯDہQ>?~-i?܄,GBvՐ)PVVtUȏO綿TG,?>ʹ!,0Qd@9[T?z1jn6_33/{[TJϜ_T+P}-s0yJx}&'^Ӏ/cy-_,f>oZ(wQmُ=\b f@6"i bD`Pfҋ%x"d6$xr*goX9Q ML |eb .o'EOf?p0&6ݯ $]Bs2kq_l)~;WX[- V d6<hY ef-ɕ:Q1KPv\YIg=o>0CD Z2Ys-!I:QƜ}®w}zޥ˱828%?,!kk+7&}5T]XpX&pr-_~`z [`0-9#_ˑwi̮R](HL +c,sUBeNLhq 2ͷދ 9:7X6DIr޴%%a!cGhq ~wĜ^>tWP`VpnB)S0u 9jHʼnhqDzQrj T<`$f6~EPK^L6P.$x$Kih[my\Hಥ3@sY:!.BVR}~Gp8ޙ*&o.M@&6oFkŚxIpը16 x>kZׂ͙;7[Bt: z^".yãkl7 dWa@k1/rx˰GQ%.?R-r`Fd` ltbݶ O=&$SM0:oI(인E@9hN/>R:̛^XYR)Eae6$xs`'!PBfV8Op(({$ Mېe xUд=庠ʼnHE=1 9)LK:ND>V '?e( CN'\u>09Ps@+t" s"K-\7HV G8!)0~ I@5,}V("MP0YqwU*Zf%=فFl-0Z79% OY =I%.t )3/ZUAGi DSJt`L$j=l:^"PM2=z03NcsY,XԌw.aa6J}F2M\"yPh4^9j՗ IrwJ֛xyZ9x5|ޯ8+u*~=i OURJ[h)̯]*MpxǥZק)i YyZ"={6xH0:N2Prkˇ"O iy n5ByHL_2u. G vA-3v`cK4cVYX6V9#^0Wς GC#(LE pW%pJ1%^#j?saNFnXFUҐ&Bp/sVMu坩-_}Ym.Vf=}3R4|$>''40sY,h; lN.(VT&{e*qUࢎMYhM"]g\Jo+Ck,l,7 )Bq`'a4=9NJX%HN'k=aߵWuyؕ3c"+DLL+gJ 4%}}#ܝfrXh]As5p(=epҦ191Y1->s msnpy殆gymR}9Uaߍ.o.>0cfBƓʹnBש=zíX$=g֚y%ٌ<0DbNu.y?yԫ+NI;set_o DFn 4FY] ӿH3Iվ)^| [( >#Ĕ4ϛͫ:Ç+Uo| )fA"뢃{mvB7fJT/D ":R0$~]z[Z*t¥> MqlZTc;jTlMA{FB<8>jl6Ke+pnf@B jjZC;uJdV>H O7 j)*i8[_?hT[ Eu=D2uFEԘ690\A ? v[MEI4)f!xbd :Ӿ9Ip-1% '8a޼KqWmN!n.֚EPdE'CFe9-zغy\}Y0xD.')Mbx|zS<57՜vdwE7sn{!'x}~ "aQߐuEtl*^Ny?k'3ew՛ ;~ agƾ㪃ץD?Sݾb;%R o$ǿUTq&@Uo0c4JIKR\exF\ Y@zZvR Sf$a'?͟Y\_O-B¨-~^+J侥3ցb}4BեJb:2E)ݥϿ;=>`<ԇN;9z-\^Ⅰ gYQq*puHw -ʃD#Ƭ@Dɛx )kXɾ䯗\nIth_U J3YPg {Y+=te+ᡐAQֵ Z8+¯BE,L;=Ysm/?`{n0) gHfWQճ`;tyx؛TdVՓWd,0Dai9$?goEt9._җp#*qӋЮh=m`=\E, 5S#㢜Deׯr7Iwe˝e+.@smf#GBh?g0nd#5ՆQs;@C+ %O7*}f5Ϻ6F!t{J= ǰ n6Y4%/(ٙeEf~GO( K@ *N 0g4@~VӅ<ųC`X^NX=F)C|\ ;M ]Y/Jc_:^g$JWH6GWBP:ЯN| أ6| os)PL~Ϲ)*#JVa5PI}3`*\᤽0E0si{jl;nJI XU}Ƥ bvvfg굪NV!)6>7{ggGD]nԟ_g%mnݳ\c)P}&+#io̾WpgߋY㑯WRM1ȟJH\V-ΊK\'CmT)d\)(lm95Žh=cgE;8Lu/&,:=?d͘m$nd.TF{)ymlTR=C'xdžV?ȋANx{EIe%]Q@<ג΢4mW>Jj @xk>T!zBeAsĤuDBQ#+jfXQa7LΕ &U)p ;fJmYjҳi%/ń yuط r=`0@w)!l֠0sbӿQOX5Ѷ\8!>6;YNmu3rHkrjjhqECɡߌvqЅϲ Nog> 2ojD~QHwTnkXN̪c"ΑNfYŷUB HmwY7F*lkN{(9V >_X!yȡ&~4MoC,ɸ#ª <#5#T~.љR^՝]wiX LAW}3!DAu圧3֋Z/r1_М[8n U\:G ҟ`ڮCV2'"{:!>/(n}Tx\/ ${xcVϿ`|17$0RƭWϮ@,#EL&"{CDS4{fݺ*B 8(&<q8u@cakoi=&uz8Ȳo 7Gƕȥ9%>yt=%]V4_QEfLz{1GĠF<.@AELZ{V R% JF?298lryyQTm'Ί@A TZ:)B6a$cH XRK_-/JYȑDy KI2劎?P{i j ]9CG$'9d)hsgDJoclLRh.cl< RXXhqb96 J+&]O(  p5/r, "69-0o֧3Ҫ܇T퀮H /7"8ŁwTӝr$ugdjy1L]d6E "#DaOi1T!6Nl$:Va(QDf ψiBJeċ"YX[!Zb3KӽP7f1}mBKOϱUkb|) 7}Fm }n|o86se[U c@q; ! hI1jf)/ua*]$5vU< eT*6H%}^OGJ/H}38{uQcGq0B0mjͱ)VF([T_sү0sЯJ4EZ ?{1ysdݕ93\0ul%s~>+RMvDUXUX,,8&3G\ǺFfRo"xR\Ԗv8m Žl?$\yUҒZhcǴdϸ0ʬ:X153N%/${t,?Ud@hs\R:64 ȵ'g+gSFeL@ u_5?Yp,i|qJZ<+q\$1Zj(zK,FԦP& @rc:MAȓA٢< S%Hs-(\ CQFle]* @{,ғy{bF,7Bqj̠Ю< [\"α KbR*@~B&GA: Ӱ0DžnK7BI,=4K^;s0ሥ&<0/\D]XSZÁ^{~'N@/B.WI2)|'D-dOi_ڄܡlNP(0wS(ӪS} Nqt5?I|_!ˍfQl IS j3:xq'MI9V 0gSF89Q%p`@.JOʺx Lt/ I)g$2EYPLO_{X\O@E>_ByXQ壜jrh+B( _푗dҍR7v 5bh[+"Tˎic'4.5t_N_nD&C y{ ]/( .3ViI]>XMyGfЉLYXq[!Ȑ~z5̏y 4Y+s)as|h1?*3h눺3k?{mg> GNee!13 to;u=ٗ/DG(LY: ZU[fSLZA2}A)?_b`9B?sxO0 貔̦-e Qw7p )Yo4S6lCm#]#iYj,iHjLmzЂ ˞XܡjkW1gEˠXsVx` w3 %>r :}SI'yR.fu2*7)NXu$q/"׎bX~?#;Ǯ/aK;E iOBgDv,I_9;:Τ{8”Xl\-<#IזMI_t T^vq9evɽ?7/ģB889^Dי1?)U# ]9L^H!K'+pͦRLpX׉݌n+&߰Â-x N0zoI-{ E(/3ho#!7F#_J4X:c)`ْQ#'B x <|UWRf?~EtICIpwTt`Jo%+"j{sF4dÞH30\ܬOGǭ?݅pSx@JS AƣVcOL) 9NTUK^q [UtΫ,M2!Yj ބ#͉CR7%R~eaOQNESi2<~1{D@;;7pu.*9Ljۣyc L%.~"KferO34oU\~(FǟVIֆJF(7kOl瓵!p}|#XjtLPB> N@&H:΀.M #ThE4AGV0lH>y636Ig_Zv\8%,уUAܵWg]LG {R=Nd5oH6>A7M'֡ފ)aemrb:]D<096J4i[(<0E\7t^s%3F,a6*FA\R  ԫ݌0 >ͭWE+\y$XuFdx|p U<:ECFY3K/5N8iKNnX'dz c3+9dHKdycu % :]_sC5AQ$/{YN8 IS7XS{\ <H?wÿVy2⥝ޕR~vܐOP3)\z|`%롅ӁLWI('cM@ZG:ey]1#JV@|%1kcBŖF%IeBM(jqO7D:q[UT]!Q/p:rIaЃMϨ㙎%A+tА2W`6c:F7YPX1*)aAs.'*ydY(:sӞIfe ! /39g}h qW( .n5 ]PMQ``#?'sP4fDbU)uy!N.2rCnՙ9q| oz,q'm_NV@(=2ƌGUFYB>߄}ɜ{ oFM@"T0}2vnYc PPf  EU?2>헹OKz iµnժ֕ōR]jr2Z[zy݋ݛi3,t,F9-oYy$AZO6D鹟lsF`MyIzr7сجQrj.Xr:FA]h_S)Vσ$www C،dGq[bCH  BK,OlfdC1uPu\wӸ5Nk*_wR,8Ġ2|\HJae^2۟%xdME,M8%`xDV85=-ԼF7K1!?|wI 9}l Sn0a>ZՐq\G)G}B:@) RFl=-3κ؍I]R `̊Rn|7RKsJruӖ f, N&՜"N;2gsr<Vv160ftv([vgJB/slHQ9q.rhk %#rQ:لEBݚ@ cT/h.f%Ll<_xG8(˷Lwr3}15bԕqm\m cG֪w:'KT%B)as~T*I3S+$tԫ n*= ~&oh Eow,*zUAl1;עW޹±L>SihlroH .&Pl'莺͓^ivHƀ/r(Cqn1|:M K;CI٦ZG*&qOY"2THuل\{Y!Mv3K݄Z٥rփI87g<' +1K"<5D]iE=V7R2}8YRDkLLtLb,]>"ksi6n7QU]Y(lUrEbqrӪ#hu7 ,ǙҾI.5Z 5x۵a5@s!)iC._Et0~Ӝ).+; ǀ[ƲL~XSgt*'!Zy#_E)r2!QOhq24nx!K-$o]?>h[4{u4uYƞ+6z3n IÍ1@ L9h(Wk"/Z9JE*GVzO}|zzʺi-K,⤷ɊL 'X-bUU)*B3;پK})'">CzAbL71MPcL=B vD/e!cZ ֽu| 'mY~#TUfJفs#nNQ1P.C.B|5G4AS_>|[= dܹxԡu*E|e@uК++Y;G~q`-H怜LhYYڊl1qe3$3\T[W2YK=ԿfBr/򧗋r 'U!a٤)(ZoBC ߠrH<DŽwz n~u`s8AD?Qb Qk^ҺiǵWU*ƐsKc3Ztq4CGA62A}YA,hՠ@䥩z>"3En>0:>?:0$[ j*M|QH֟Y?Qج_ dP\#isqմͯgBQ2keNR=آM3>QaF.B~[P@rij]:}:}KU0$]|9UO4 +f^b8P!8wE7MVMmf{ƒ2vwfE-k,wi33w,piqbhVJDqν;rnŔ<B]CLz_Ve=>"mA^Mv[|k@j;pw,;Wc⢣Y{4l hUlsYl`༣)ocd \Z2ٖ@oJAQ+u+h'%gW)y cl&wOC￲ݔ625 PyR単N - @Bs@ڹKЙRZg42*ДaǷȣLZ'1ۙ9eɝŒVkp`fy?)ym@i~ 8#KSJa>625|ٺpV(6r5nrdῧgmRetPDc~qx}VgOb]{aH>jVJ"ß0s wWIv8(H~+&L dUbVwj{Oԥ- ȚLrd[hMΎ5Bָ5~hBj,ЊY1]z8w OIX{3lKZUǡT N.1ֱ`Lt[}FqM<=lb}SdI 3y(d%Q̺1$!ք;g\Ea*I]i]ˡڳ}.6kY~ɫQ,R~&"1cۏ[룠˹ -u!i+mo+&MUR c`'rDZD4@`W`{2 4&jщF9OퟵM0h)ه9&v?|BE} HW#9GCAu ԼcAm(U mu]L[qB͌ID 4 B^L0eSq o hTD83ejky#Q>!ݙ~-!GR.eWt=ė#n4S#LWw_qk yyAӻ pКRgViغ5'&$|);Ev=E O[{jP^;bew)!B^iHP}4S w.ut1$\=M"Ʌx1OcIXXg3Ze6g ] '\5g$8HQVJ~Tp@}oqwbq^Ny!H%ݟdjՌq1^5g",L U.1&k,KCz?14Ӵ'@(B+Bu+"<= E71\[f Vz gKvQEJmC0޵0`dJPTu fH;9`9~ tEWIXИKfk"AP0!| i^SFx0:f>PsP5 75C @J7ڶz#nYY4=CjxIɗ@4G$\l+$sɑgq/#DZ~8_?1g)G!ͥH&r ?Z=:EYE 7u>'Sc5<~lad'%2ϳG~%BUmLM2q\; NK4x Qo@2iMp~[NmBUKF;B39;'-L7Wߝ+Օ0Oluza١uE²?v wA@VV`i2619xeWgO:MT_nE! o5݈<]/k vɾ%c]O&Sq=`i^<]AH*Z~"JWI̼1J1M30.5jc☫=MΗUuz'}9L ۸ 4}= C6ܭIg~z HxY>M0hyBk2O6(pgo|쩂3Fm7&ZFk۫-d㥦Lt6t$&:BvsocD.vvOU 7ڣq{6i XLm0&@& ;LTuSqge 7X!9>(Ifh''@^Li np)o G`S 1IY3C_凬0:<`E*cV@ij%$ȫ\`k)E׹ǖ.MG'~ .HaCE2V]+Jvnѹ_)!GǞ&s3`hcуR+$ ^ P|ٻbk/j"\XhJMIMsb Ĩ/AzpJhm^NE{ hFs 3uzR ]c j|LQ=.7c$'ȫzR71n&OsDQlsrpL^O;Zqt\\)S)=ODdI%~z5AX*,aƱ +Zǘ8j=h۰O_n >.)[׻Ph'AXf@qUnwlKv?LH)[ 9bm{bQ\>QvaVݼ_1m|a(pX'%OC^ε36@R(a~*7w"?m3Q),ȻV j,2w R,cG)FPt>̌r5s8Ŧ2?LX}j{ H:!QKO>sԶm"B['A+]_ڝ[ё]=+<ρ?fm&? OQoi:\H3eA1@Lec0UYT:@%W4S(]f xmh'cT6yvڎy6^2h*mk_m}ĞIm޾s"k_+^W<Ӏhq OFh>8 R0N(!T[|1c+y6n{5 "F $#P9GS aSCܼfG'IZ|<ڸ`8ً'F˼`5Hb!ADL=Nj[|qØz)h{p^czu,ػ.r;cZ0w,-f0=ׇPsQMohp囚~T1z!$.LS~<}Aý5|eӑ3h=&|Bu+5",&v"  xIcC S9ŧb>Q&TmKktR$'q|aqqT1"4Ո>~f0]*C?m޸Mg?[9 pf BzcO˳H?7|kT=ӥ9Ğ'^Hv`D1&YӏăTLf@J7%^F .D }sZs'\~i|W@S&FwD tޗ tu;:@P4AՁ-)r'G]b~b:`)1 Uz7Hw wYkC\0؝-|-ގ!) Gty8Kㅅ $M2z3\jƏAzP}6cdx9eMO*9srьrΎ']A00Ӽ XɔJUt/լ|?J{!3p2r4q_ XsW; #^! *aft썓AΤ8wVƛG֓|ӣ1j% mO l< X] bx-)bǃnq:|R$gqϞ}'qDk/&i#U 2Y I2G!6=r" @ӕ,"::y+,h"IҋkƢgyUFLxe";syBA8<38WFu6atSAU町Iݻl N/&(0K"Y* :7 3³vE?7Kh,`E%7>7||:OB43ec$ wL wH_FS.S5dL>Z¡Td`|9 W)tstE幚Ԋ{"6S(:"ٱ鲝P{ ˰pjjvp0Bxe 0BEViFT~x0'qUlꟇ ̲dMݩ/22%(pB%M 2[TP#en drFV\4iffU0kݝpnt} SƜ;ɮ<dznQ{9d~" [Sa @K44e}3E1L?aZ.AG,iP:a Gus`&;Vr\(VW& zɯNƼtY.QsdMX2Ϫ_4p,,1%5d(YnXBu $*^poGAp|n5 Ǩ븿B[Of$p؈2*\ I3nƼ`6Mjɟ{$( kˡ^zЁ|ۡ6tQ/X0~uBkRqa&7YE)[yrJnr w6!R~0CXs_a8ZPh1դa#O#CUU(l& :=!5.k8fZpI *}gj@Eɪ֖|ӂ6qx{ DaVr'_`٪ڷt+N Mkwv7WkQe*A$tdxߡeLI9i7gJ3af`Ţ}Sݧ$zRb?/Ƅ) rc0m-牝<}V0J{/ƂrkS'[]^`(召D͡DƗ߿ [@sqy0myӠUeA1[^pp'I]$ƚRT=wY9J]ͬ{hB:םZ}S;t9,S57%>0MaރLtA2#W̘+j*$'B ]~F H]10}E؎4"a!>@pTVhkB`(뚳ũѾǩ0bhWǎ}}(;8i.*/_2GLѡg+v)U#HqHi_&8* 3"gTTXz֝|աj;De\}Ia}gkVoµxFٶ.^P3%lOc @D3 \IZA EJf!AJnrwҼ3ڛ:hg |"ºiG*!ۢxS8p̵XKa?% '򓠂:3(1Gs=-PBR/iJ5pL. |JD  #=Ի!oTH_Uzwі-$皥:-'k:XgCJ+RSȰ]t[B3f&ad:w4|:pː#(|oI??',BaF#2w[couNixDw.j qfxw!NNmXnʘL$V변ٲlo_K~+~2HX 5 +텁傂,"^v7x_0:\T'5^4iY/A;brDQ7K%pPZAW j*c5\Z+2Bh RdI9I;G@FؗBI4 +( !l cC{ Z~kZE/(F`+>e|nLGM*aaNtUôk4*~*5yVxn,+ R+vӗ9uN"aƶdM-:{8wY2 HE+@uݏޢMuAS-'C"c%n|#B2٘?EcxI5[Fw Quy\y&@8Wq)վG*u1d ZZAv󳞕3'a{ f6O@V\-=h6t퉰6nαߗS1*ţȏbu v[Zq yRGz7dG`XOZ [!k:`Θ׊W')kF+|\:Go&)HqhVȢnhzEXtEAj 11Td]o%b%6S`oq-,.վ.` 1jwFPr(!UŊDDᰃV 5I@O*CɆ7ik94wHEݍ;K[^w , V*؜5[مu~\|XwQ1I,[)o{>|5Ս/[Gs˳u:59~8>.t_M=5Peg(~bkw@P˿/BF/lW[(\ZwM"/DJ.kulID7ovDuQ`i\zB@ JzI%aFism)c`ó&XRbu耹>mŸ! , ;9ݽw6ΚdIKkqPGQ:U+Tp)2Wx$:|~-A*aGۻRC$Sh!ĵwᤥE롛W .;GI0!)=ᤗ+m< xvܫ/n{D펝|ϼ׫E "b@] ͛ɣe^2cciIad`# ڎj F>'Sw*7o 7`˾JpCq!Tfg'lXTV% z3{'i HQK3Iwv|S1;Toﱧ~1=@lW}זL bm5S2*U#ބP]fl?*T*L;H16/Skszź\ ޵Ԑ/,7NRc|d2 ֿd6|mP(i8 M\[%jis0E(I`6><؋åZ f\v(~p'|M :ˏ3d,V8iġH!Ohd8r7R|MX{ըbo$ TǓfDF2hiG{'dC\s|l|hQþ 0 x}?mPߒv(C_ XXיSCÀ Tނ R@p֎Ou*L0m;e)1nS#S K5F zʤSvJKn+[eRNc:mn*9Y5)N 6v5#.]蓄!; -wtc3nP@*"إ@9{1-@yBҨ`0n:cߒ@?U(1tK}?{͘:,6ʩׁ 1EB A+vND'eQ/& S2+dߤ{1=,,DkN60䐂N BPm*{*=?M A~琷ܐO:ޫ}ҷSf! 4܅:)ې vAǒ78qORVU,6F,h6xݧ%8 ?0A:oT$vhAfT-LWe("k_S2l}5y緓(%8*w=HRVK%&o]V`_exVK݈d`^٫(̭B t(\^RʦU_=MJ䊃%{YڙЉukRwAPk#\{T:nINs{1M[- 2k0wNŢUr\! @exQTZ_9_,A7'荙`>E!1/&@Pw!g6/9cUk[濏Z&pc6hDaOAÀ!:'ґ>|d}j:Y s!,Ch&ɲ,1` 4"f{oUGWO@Y1^/DUY? aŐ%,EB'\mNbƼN),|'ފ32"DU,łGM+^T*8Ϳy3>?c~@oR\gV~5H<2]Z&%Zq{xm+9X(*/j?R ;ȴҦsTYoK_@UU^U`bf"#SV\sf%[ʇ*kW<$V͛BYws?P(gr^Vk`!>bAqwedo4ңS]w+cnc W]wtHӜ QVZp̫\h3HYhY5WJˢujÏtc nA"BP4n^m0f녷Ħmʁ&, ܶ_A(=h^8.=WBʃ W?܈,9-O z\/_AYx=IBDXC.媋5eBͥRs(ݘ/ɤm; ֟wdtRee2QĈj~a;`uǽ·WH9\IKˡ]cI"Z &M  !BWކ%EuK~cB ]w VtᗃdXwa1suOϐX !/řdąW$Zdۂ]-ۙIPV#_Jn QPAߧc1tP0NQIHt]RjjZq8i6HKyKtȴف;[VMQp:(Rpp;jQ6ȰX= |/ДQS˱\X6JjӒUt] ۣ~Hhyeژ8QOz\2>(1ҍOB9DMB݈H1L/ZRR@őLgHkQk伳kV?Efl]&̔aC45T,L ג Dӎ]Cq\jXwЋ]:oʚB0/d$eʝ{B3"ݫvlX㹳:+hԤBK5oI5%ČC:Q*w"L߿\Z=3䞡U-XV . }"IT]rm3yCr[]YQ&6c^QyϓTw)XL|Wݔ;_8ٯ'%shV0bHhؕc'ڕp8m` ;a$yΤ]uNNO\~R-xch |ln4lW0:S2-ot\ZwF.Wn |pi7r^ mxhnx/cVRC83(A 7CDQEÏU1c =d  Ey?g@ ɢof)\Poh_ MUǫ5r25/kVd,DJ zU4'Xfd //{cpBˤO >'믑>wMhzT»wH|k{`&&# DꐅC[]\jHAqk.j4`]X8~d4 D〝;jri2!l4ZLo 9cz6xaz:KM 8 {G=ǬC5;CURkqeFkeOn; ӄtfg`:26^V*upo.aŀO ĢQk8n|#.(4soU/EQ'ZP@Ҋ1DXpFl NZT>ƫE^Lq+wIͶܨ5W=lZ{w]$7^nͣt$A*0Wp@Y٩g#J++5CV}@N'ρBt] * ;`b-+˩K}Ru(vQ~? eDPȃ,C$c)Aھ)wGMIhH}w g2ldڀ+MGtl׮3談CTnm_kFL_ k7:=氯vާ {BT)B +YxBSdO}x$DYLSępk9P0 1sDmҎ9 -Þ>3=bL(xͷAT+A%6%~X )8«DU';e6\2ݣ$iD`zu/=$ CBs^ L@/W2Abu p9pvDDN4kbϹsVyȯA!H04s.3[qguw&cF)\ݗm_-Sf"n\y{0 ?>-ӾRdm3i[kI T4 !PL!tu++Ge,SfN t4SêbGch=$,V!*4+gӶoH lK W`KBH݄Ԧd׫wj'rGjPAWآ @(y@]dVPDYx!!mԿr色C$Em u-~D鎗qvôwѬ ҤT;۷;@"kiv;<:2=Q%Lyv#So϶PH&Os :RaK~)[L12=nKSo2vS wWUsӑ21Ȧz9':/bӍ"c3`c6YK |k5 Rn8؎#je3~M:Wk1c,h,TR|@ՍSEq~[:(~J\KjJ6ʸjۜrxSr]w]bŶN =u(E<1$B2k _bNDϨ0Q~ikc:s,^ Diک)S-[(N!+~pZM_TRC5Q7l,ͬc)$Wл@%^]#`Åp/kYv Lcݣ(eMv3[z!4)dq* ^Jo魖 vo;i;B!\~fsT tY"KiX}zF,hW[i U1?\řt6F^pf4k̞mV[ J )Cd&F[HֿC#Q=] Ms(dfP]~ʠQݞ]e-ZlpaHI)үs γފn8r:`b ODsu|t=yxtW3SPW䝿vuB#B?=~.eřQjGO[d`\_{rJٰ y&H|_݇-֠2mU%7|VȮFhsO"X\4<:4?A0}^T`]wBXЎ.nrl(bZHd\!{5h@T9dl`4"`Y3]ٟ0giRNI=\HJcC*/D>A 墺 '/̱n>ѩ!M%U j{A; 8 H::`D />0&^@ x|w/ o0a砟W_,d61I>YqyBLzDi1wZi5GO06@ 3„b Ѷ5EUe/T)RV9`AJ^6t dFߐ3T٤j}g刮݈ )^r/xy*TU1F{;)']J^e QJ/ "L>$LM$=en`IXMOCړb1SW"Ն&rF xe rV' i<g( ux\w#m==׊HciBo",חZfˀNQ;ą'YFrR{n<9U"BP:W >,ވ-Krű‰V%gW6Tܼ_-Fy= >55GG$|)jt7聦EL\92ezݱOZ76-B>&HixOʮ[{GSl|NX M;jvf"eś@Qe;Q?m8ͪo✧䓃Þ6vUlbh~P߈тjO&RFàj`L.^pXBgo>&"{zwkdAUA`}(ʧL e )#.+ W)wRøǻh&O;:e'mB YUfsRƨ$ViIvvҡ "?!X#OD tRfzݿ< x+Rߋ 00rD9<4PK,I ۣZGRg^Ut=q5y9oxqOG,ˏ `N6mabCȫ0z!\d`Yv<e+]j9~UΗyf:{Ap)\kKVǽd5BpnOl@USv# _8JTOKxױtjn 7"%nXyy?&DX?RacZp(o*3[ `u;e 6#!fx'x V5Z%⦄jLsJ07u" k.JL/`?(V,:@Onf6f^)cӒbDngT* A-aR8ʔO&K6x27M ;`& p!b=Ylhonÿ6?;ʮ =rKGNq$y,U/nw$ [*\OFJ;#UeIM{&rOa\[61(+:#87 V @l2=?jHYSU9DK琍Il WPCWfjBؤKop/O1XGlZԩ烗@q vcu#^V#c@x+gZǩWSn[X,01-s;fy2Lm/ϢowS5pCJvK obUs8wt8/!^KUuGÈ͇<< ĥS13XVIҞﻈd t{4Y=˚Md-ud&Kn1bjfd0b.yPE B XL 8 d[Elٔgg4w ~K2MPJtI)/3Q[#Z ֌TqDi-+`l>6fh.J6ҵ\bB;46,-)BWӔ-fJԸ[k>-uNEz]`oVƟlpƯE,΋iϾ7xvx((xn[x-7m0Kiv\E]9yZKq/0) VC7U`>;m'ӌCcbYF"/Af. N#Q2tr;˭֜k &.8ɸ4H1e ,C/3|UčV^Z˚̉g8R'V/MdgV?߱NQְr5Do_@B&5~=ܩ:9h7$Wzw[PY0ZzϬ0 Aײ. G" ۙ&` 7ɾTFH1 o/T4)e15Ђ@g,ib|r=SIgAvXBM#~e j@:iLl佯doՁnܢRj3b)#I}Nb̛b Zr=./robΕϾf1k՟k&.9 U?K}!㱼Ju{R^:/4̯ۆTE莢jA"<ܯBد_к̅#߬9^ַ{V Yc\OO&x ,F^KW&wP0m~bb/JH]l:CMȎ(p!vI-xofsER=7MK8L/UPx̬ W&_fGG_T+6 -A#be޹k'PiNQp-w{BL{t-$F' `^ߵM75}7uKd+ rK$R%mBI1.:CFCZ?Ir@yɎl+Gp:M',ĭ8(Prin1cҌk8~PU6ZG [Gyeq5ZRL<Ɔ3Բfl < uW͛Pbo1\2d4䌴m \.tvC,-9΄&7'I贐-R)î+:z/wBuk[211L)dձߞC1K !7pj5#}ȣ_chshaR #VAڈ ήkJӥgV.j͓k][%՚QH3Ptg ;qS1Rj_oZI_m iM|qe"C\-CE5>/*ɟ $/g;j?Z+-vVz4p$#ZRy:JW&}2۝H tM-p}"m fW\dKseGy19ñX1KI5œã ܃n<Ui )4k  Kc \qPN!fӋ"`Ɲn-YEH"(8녕߫]b͐k?O>q<J\03"*W& N鄜 =,E`1w뎐,d(\g+;=`Pfvs4j&};`?e"enu'p`![6Nhɧ߾PM3J`89r}T xɅ8kHYM{X E &vg?>[BR2vO k;XdpǾvk_:nmLR`ux&Ip^9MUi5ƒA~Yזo[NNl-埗o+ YbUWuAOWE$C7epΣLSc\9դfbyK=d&&erg&A|V(4e mp!g?Bpb|jjܢ;5幀ECزV my:<-15"{QLR3nE XCjﱻ<^=9ƘTTTk<@ZL0& "(F ?\_&$)-SW;x4'$YCaU@tɌC߮RmZXG!sY)~EVXt W㥄D7UMBIg;ƇNǹqL笵Ji㳘Hx%my⡺[GZuۀyyTG5m4`1[:_X'Se[f:ۼLy12i$3{<,A[^uI8H812"G^}7>F^2- ڏ{)ozARa(?u,An<8 kkiY4>LiB- op7 _K{1y#7"z_ZŃ_VmS %Udrc ̸%Qʩb2{?MEIKm];ODw c6e4,#J٬R' -q=wN~+iupe0"-!#"(x1K$S3\Ale Zvf!.!tfkt'ם[0̶tWX4p=+.z1NJ7<@xՃ^_Gh xjeq:]dOw"uy`q66ɌmdO'?^hhn Ff{!&(`VW&Ht˿d Ǔ!h朅*0{1 CَRb,} ͘ =S{%, db_qSž' H,]XF8{ oÙ6O\:cx Dh, f@bʧ ry2^],8 |^ އ UȔa$R#kSbzP!!I2!N~XOz-sΞ©?;!;!6Ua)&(g)d??є` sI–H׫/һ5*ż|F"§4AC ,,V(:]ayM5b|9ݚtjˡE8AC /r)Z\ w @әì襥k9sB#zu0aQj+IBU &n7y<p^KpLMxMv]ְҀ'ph^}ΐլ< 9E*'1&[AF)gz&~3Oq EA >Cm\NޏI9;oDzx5HW'"Vp HGQ)RPHweԺH~ÝHMA!b(K1G)-n6q]KIHa$ڌrgS>Jb%56FFZqKzS, c]_@%*^4Otevvgc;l/uJLѠ$uͧ*"Br|aH+~GorBx2Z":`:@t7c&PnM6"_v}&?Zt;ȝx͌Ftx'Fn`>vξRu']Y~%#Ŋn7#C>AY47mN@G읊NyDSiV@#P6^{ BNPO jb`Lc*B2N΋r2H=.mih90Noz:u^ nʦT␹M9E}b s<®A{%ڎsH _8EL)%)\?Ш͎XkBDY=2}B|i!w ăGye{F[~1ٜnxOpDͤoh>1aʂBkg\/C ٿ T,BJ<ԙ&a$edWS"aS=w(_H춴h[hsR΃{MnFBx9=Zg|{OԸs[3ST/x6x!U-G/Sbtԏ~B<$RnBC(%Z~qb_2h+NUm+&kKxK,3HjY C3+}-nCWhS <5\{^;y65#n\xkzqZ-ʫ  @CH2_/I̵7xN凼hGOL9ŋ`Q]ν+?,t >n-T`&8^!/+}Iz\;mA.F4s%bo&STin-!(5dYCƚJH̿"Tٯ=ӭj"pCr w!KFM> ĴYG}❥4צO@t+ow3i6D3<<6TOθ^zKGLiMwլ,5~d5C2U,rrZk~W2s+֭F>boM8$AxH8Ј r4 ׵PoN;W˜Zf?Nw1}5OI)y):aAX:Sj~hmdZKEryǞҴV8Z|~ N.s<^gR uIG4øPcČ@\~4Ƹ{Tֶźd1KGZX9>_B_Һ қHD{kܞ峡XԀ@@;(Yv?bxh]KA@6<}fJ(tIߟ^k1v0/mCA#>o{i@7(ȁ9#Kp0&8әeёmW$O'[ϸHHkyA\,!PTkjXEܡ, MO_W. I-{FAQ%eA0?+ڊ>}HmBWIX JΫ>rIKxUAPJ{f B ڗ1Rweon#*$dԍ-G-bWxII'aVk~k+E=Ĝ^T fi֔ 7SQͦgDbHaKKbO.WQ6qmȹ/C0D>h7GJ}/5\AKO૤$3TuTVt&4ս_xw1،1VqEm%M m[a5DvjIhA]/հDaZaNrhx>\Wڝ pgsps[;s|I~C̟= N{C&f8NX/8렙X1=IvM,E,d: Y xȕq}h yW%I@`2w !di-'(S}Jp4G9C UJdhQm£԰\ӘB)|svh9dy)kƘKԈi<<ɂ\/N,]߇Q%{coL̺wNf ݉+215\f`.jH|陟c4&bp1ig[m7+&n10SA(Z|6`b2@K28<_Y@xt!xͯ8SmAq:y<`6hd2*J2 ͚7AiVK1&HfL,4C Q΄k֜fFre AD`N;33?9KHdeW}JlwB S ‡nƨknt%N8ú1y*=Bޟ(c}vӋh7EMKJ)D6u@W=,E^{׍4Bwp;m$xaѭXB4 It礥\,4P3.ϣoG~=*ry|'Bma'dõFI|,/ހ!TJLj \6dɭvcN@Ӷo ~Q h2 dVT|1>6s>/0xm toUe}3o1gg둷#Kv.mΚ Ł9D}WgRzƮw,e08U_ Ws-ex `-Ejc7@|]C^pj^dZ%Pn|l棌J>@61}9g#?kZ =h&_Aa4$zrS~KžS &dY2oel{tZM> b1{hUܥA1볜|uRfƳ:־|o/TaVaeW~qcȤ`Ϳ?,G#8zO}&[@<"Br&aO&m/d[|+qVA{jFƓ%;B5Co%#Y eRu_#vQ/y ksJOzA8b߮#4ޖ/-<94kUX?9ID'պ:o<>=]pMRfg*f o2I I htuq984w8 ^Y>$nUJm&;c64Kb|(=fW1=򳡍z^ 54(֢I ,(AvQviQfeg3.I 'cGyC9&B=.4\s[IzXd/kH~bGn \Sb@j:?ڂ HA8!HNa|T=fcdUb%2p\5?K5j!?7)GV؊I ~'ɍ^ڰy:EhddZG6-+}gzR_ϋDe=Ɇ:56GB8_3dzPB\NPư횈N1d] k?{cYu1&0#F?H*DO)*m$`UHÞ"2f7+2^~#lЕ&~jbX^&(Cg<@Kj Pl[rq/ @ cuLQG1iS/? rѲHr vM{W|iEX;_4lqyd-5:c `Jb)7_AsItB>'&dk0xz-]kzJRXL:c^DvutTI 7+ ˊ$@W*tA&@oHz?9Gwa"уpQj2w/~t]1,s ^VZV@&vM"ZYخpUeub}w~+P$;c3K֚ l%[:FK=0̸spWT~i1=E [!UN5y ZC}L~!DȵN +F^6Y/N2{*>* qefċY(ܢou5 y_{wB-+#):b5ecFCv~V aE^Vu$) d4r#BtW <;hF^OqfVz$LBiv9C+@^='b\ ~Cn';_֏76+Q_MUWrjA$}V*[ UP6@)>4;kSj ƜA| `[asRV{ik4*ړv~8E )\%PyᜉpyVz4(oH rx%*>w]%" tAb]OpMECȁQQ;)b'/AMÒcM |#yGR>#az`ib6D uA$ Gz pJ6xzڳ?f^p[wE|h&ݒL6=i#r)Ey`Hz1Sť=IhXm,: ˅@X1{AwN'}z?ٞ {(OxeB ),.G؏E/槣¸^+lЃv[A6GMWݦIJGxƣ!w..O5<[E{q*Et]΁2?/$OBJ24el/"7W5"}Zu+zYf/TĤ8/]}֬ਉh6B7*^@Q-%P͈Ym[=Ü[AN2(j:U1*y8]ܓ!7X1~PfZOstX(9ӻW.ڠx;X{;K n!Vr' zي:A:b̂#J*xOBj#o ua/i -%@S@9;?sE5,zL? r:SH&%!6:&osUc[xj+ 0Av aX-$/A x\N0k1j<<ނ#_,+"w~̭`r.V5YVҞ=.%T;:83XB-TonE69L4eB}OjN 0هxX*6jign'qfޕ&G% ~^=|)p5JlR[1v P[~CwxJߣ^rwDtf7Gl|6M%(ڢ=l\Zٗ>sbc7XF'*+?zvp)h+ۄjƘj~ov;emZ(F8AU!%`~"YC1l hM PsUঠ0~а+׎~?> 41c{q\N)GMPBFQ &J?㕻Ĉ^ |ߛIPZa 0N'KxeA_k`(3[&e*I{X> !, Uv/|2ӧuMθs=V2j%z*ct.j;5?O 8LimR 7Xyg}/JQVڕ-d9Si5*%FPzF@nF/GO+S1} < r{7_@z!~Kյ  !(c}MU*Ǐ]?fq[qg}+0ޅf{fTaHV"\p'rwp.Tcb>L'"!:;*׫Yp|3ok D_Ѕz~z~q\onJk'ywC{pq֮S'PV CDc O=r4jӼn&_{S<=N􊴜='AWL-[4,JE?-w0mD5ğnՆR[j3=.~e9 < [ 林/'!)tDM)'MV:iyzw.D:` F,Dh_^i6a ~np0o',Jzdm ߶ bR~ w7F_2q _AS`rTLd}ຟ.4$32 cVue@sgJBZZ#{9V Zx%P>z4GƉO?|?iaPRN^AB;%0 0z#KpͤN QZ'zyL Ql?~P/+o3^C$k (#)NčI*ȤqbSD rg/[=v[]ڬ ;\⎼L8ڻC>sft;F-O C5w'VH5H+X\]vMo"wO$%f%EILOqWIb'TބۺpL72iV|Qʒzrl:e!<70-M&c 2{QE8 V7P>' /R~b˗2&"qN)pcِYw xev{;ۃ^ u҃c(75m>QDr7FNƨct2٘Ra#Phl@h䉬Ho/ ih\jG`Y/ J"23R@h1_ 9KkE@Vj5]i<`€}! j$g;'hY݀mۂX@q6ݘgExJ/t`_j+?: (tWn᮷Q ^0PEGS Dzr]cmOYZ9HkEz1zZL| R,8@,xY3 l/Uy=TnGT_e%O$tf.v!]m83|p,o-AƤ COߍepX7sS1/CФ?gI [ 0Zl,!n;;>rcIglk5khxqӡ.br7Y!&̈•~YQfB>4$ah;4~L EĠ['mI$&p1Muɳ?-].Ok;W 2g_R L.h נԌ5Y\AXZtr?;}>qV6+: {GF實%'pb%O<\)7$/n#;"拓>vCHtAPek, uV4elI!#D[5 z7Vqw`"JY_p*莈՞#@XP+Nt]s1*7S0hfE {ff2RZtPWæn[J#r\,3ȝDS?`8d |pZpʹ6R9A=+cŘ-W%-~3&GoVftH( ) &VF?/=u!X܋ܸlS>ؓM+1g %6վuںh;{DjVRX!Jwukh&hxUgMAxlC^"=ISJ ^6Iwϡlk`:մa֣ KRl[=pY/d)u.I_iuR'.Džkգ[MK͍C.}78}fQϠ& ,:MQa2D\~,p$:!ieUa Пk\3nB Mm$ B7>BTZM>Jڢc6`we:I6afK*bYֈ8:tpDd'ykh󗁬lG!7SKZfmXڋU.ߤ'g|ެ\Lfc;:ED]:Q-E:FĞ\^#'|{:|it ZK#!3an^Cwv"yC [400 :5 Rab4p9d'XN~RKJ殔@Dum:6*e}Iwz#àƆb+f}~[Yޠ®l8n+}=.C~Zݚ<ʌSbe;1"JNqK.uABj΂SɁI(,[tUJȟ50nwc[1߲FOo=,v|_`OwЉj\Qĉ A\J"Xc0ŋؓoA 4C:*9_%.-ޗ:#sm׳3) O7ixT9ه2v྇vG%er ;1:xLuAH:o?4nC'r5ۇ2M XtJK, w 2Z˶LpfguIЪ:@ (w( EJP]4'dƣf5?Mᴫ͚=pJ὚+3ɴ,P Ałғb[o(oHrtrk7g#MSb59U#Bu Ť qF,0"~f,mݩsXPS3^V]D|Q[6{a2I7[Oi4*hm.'*kȅ./01*X|hfH\h"/Ir5\J*:ۼu>. 08=s]]AmA;'UyY\ki^wr6ךˉv`+YYJ4]\XQh3Vܼ"|h[nb$w<$EW/UVT.סWU hX `@U2>u9^Sh&r ̬&XT|~{mȻ|t1fөU-ZƠ1@0 o!^;Ahi@҅`!bp*gGU6wI#g]ixm}Bt,9jgW./L׷JGq}󿧪dhje)h I ;ΰH:o?2gA *0Q>׫ W/f/ŧj aϐ"XED )^M[5pEY*c7=?&'fNsۑVmWZ+] +ݙ{6_LHn='iŹ`alpaSӬTS4wDvװQ S(%PzӪ@3}ǃ&!M\[ƌb:`#u" 3}; )O޽y?kJj/>zנo{!0و幏N̿ ͵U:odC 2oЁW:(`T5kudqDf&n'??:fAF__$$"s׌? UOݵa6'F@͡wۙK-)S[@R4Zg50A)wqH9ۓ9}\nL[tI&ÜdgL=uts ~&P#?mN) )G~TO"6l }gf)XޣjAtgٯ ?+fb(R(^[e!J2+ZCDL8U&߷w8yj'ޛ75vфIAEjJ6܎p'6݌I7ǣ~[ΈʵHP\k8 V*ȗ 2]?۬;_ S>?ƙA}: n ݿ- gPe]LGrQB{]ne)ALR2Z̈ >?C%ٺe%~EӝP +bS M~$x)4:;rwO=Q*zbsfd|RWk$=Z!dݕ ٛkt"wTՉ8.g# ףɱs9kO]QhdLJ胜 ;d(+Axx [6ǐLu#,9v%2G&7=9}EY7݀|;Rt̤/ )]EF Kϔ©-l $9 {wi”i8^?QNYv;zfۣ:(K)ɶ!v(;6]g/;V P~ _SP-m1XȐp9ݱl=TմjmoL-Vt"&%T* \gY8KHS3֙rvLr $t'vX`%!Cߧd"X!̱ {/M@]ap.>$a&)Hs%?B9K+C~ElsfirT@+ K TÉN⸹(>ZYbviwuBh,l'*e%7Y§{Y|aK{\ghSpI| ]$h4`hcs| {!A-{bqDAxWEvko^_7.ӦFY$bl<6bNKc_/b5DU4]/2xʐ{R)nsK5#3wv';m[v*D+ 3{W"(>DgmPJ_2#13Bo$y/5#r{e1i&iRk^X |.rŚϏ :*(eB"DC3۠4NE 8bß9EEDhls RְW6JWs|pg\rbspTnaDvR:!Ce=w*&95ڼW\nl d\t!Ө$E=G~-op}ΉhHd ZVR=),5hQ@~(Jitv!)~ON5kNklR3'G`hk_6G& 40lYM=5X {yNz!ᔷ(]N%AD.!*/sKT8\7$,rLC:@EٔvCXm,K (/j0+ z:0VOvS@NhDW{$Uk~SUs\7LPS%^܉y3a.4@,A=;BpԬ 9f^^gT MnMx.lr"Z34!a z6b ό6O,BgH'cMj%T6To,{{NF)!CwNo nHqo;z Cf\9F,̊}eۉAM,3)_8\ {fI6T@ЊCV¤{.}(r;X #HLjE~3iiꚹT1xyx_@s: Glx{{c9308SԶؤB ˅Sjk gS;XЉ_(8WwΠVec-i1>x@V`b-~3*0[-tǘ^+Z_QGr* #`O2V*\XO @48HjW4V*[F= B/ _a+(TOՂjT`dB3+ȣʳ<*K縜6LSpijBH5QlCZ3=ִ%N5 u;h0( 3{T -lҏ  t ц-h!Bs+xOYT–<{iU\lja'Kn?Vm|K ]$kLȕ$A*x'uਇǟf8Zd*{aA8՛X<+ A̝@f@4rP22*Vǜ]wz}kTV`}\F|B]'ߺU0e}c99(4S{H GM#V׺۬yJM|<O.#m0/!Е]l'&;gK$Z[VU-sV7\1:>@+8M>/3>4!w0e[jϑ,K8Lv:Xps\-'Pg ?f-QINPsю UJ*(0? ge2~s8?vVm|ԡ m北db =.7~M4H ^G{(bs,]ɂX+fn_5I?ޡCK4m< $wد6 n rS9Nʻ* UWXMxX}}h <|٧Bʵ{ӿtgqZjF qOď\kw-$@ovDq ^1患sTnS2 cy zE@>zKsp"=C(L}Zmv'.j'YqL*y9 >/ Gzw`^}qAS7.E]N6>DT*U)fE1lvd]Y?1x0 1e+Ǻvwkt^4KO C"4P&M$*̓G$PXqܞM)і˰:4.:.sdtw߷HZGpM+U\!b4aRn(:ax3(qXAn e]pb&fOv:K CFцD3#> /HC,&D~䟌EI`6L.7 {G#N"4W6өp`iaudCLBszJ(I+=="3?.N55s,e0DeMU'x21AcЁI)W,Mt۴Ah5BC瀂CO8^#7@xhx:vrE6] Lgl-Il(@M6y}:דT*;4OZ zt ?QOtخ%_ЦGS@;/4ZКb(} ; .wGcζ4f܀Lvс54T^U< i$3.*\D~W12?=V+8¤f5A[pBEG)/  &VJL$ Ej s@_0Pft(35xP,-Ie<+(aYY nffoz2帙4ȬZʨQI{\6+Lc"dJ Y@Gng\t5">0HR^ /iy*5qj.ǀ4e˺B$``| "F0۵84T ##Zl*Okb a, Q:p_]ʣib8蘨W[.S,+q_^9t3z/r!FEIoLh4Fx;͜\;1M/0+d9S[QW(6lSt cշ ։5 nw0~6F J1;|{N';M=@JgLp.,({Q mn<`[>9vD#dQ8RG1 Of 4sQ0jnaCmNAXJ2tf02v\E%|~G'>Cmd[,'@A5<75)OEz(a 8D qbfhz:' 9¶½|+`LЬJX+3e]ETGtt,䙤ۡ+hˮs%[n* Ƣ9yHvUC)x@ڥgx@8O4 La/#l5,([A>l^N#pDCh䦆:ShԂ%]0o`4*IE𡮇Lt?T+_!mܷ^5ݫFki>CڿA0Dˋ =}cT!;;JaM}T](f=( \ɢ@VԵ8qK!/2a<Ǡ,#;d(Zҁ_ Lxz\ԼYp>Y#]0>(,٭sJL̀';GT#JvE\ϕ#0q08p?\|-4U~>UbZH=~)$B 8BtQNvWjbÎϼM6EEoXFOCS\gF!7 Χ :57NHo۪U'߳zQd_!Ix'kkEry;n(EtB„>tʏеlÕ }.,n r)k~|,* 욙+8 {vkf]su1kui|H;0 ]QW:ш hKcZ!@a,ka'}tPGGiMd~ :U N &FMK8WCk 0&0Zثh\ZxׯEwhxQ;;FA)jU5.@70Im}TE깍zIݷ[ u[:A1ûJʀplahqb%aQSL<آE$ :"R@kC핎C X5"Iqj1r\?#ײ6kk3-~'_*X_G~o%@LEaH*n?Иd23@t|PC͌tN  5Fm3FHbC}Ą'Q!\xTq:4Hln;ʔ| W--ۢ™#*%l_yhn?l?vi;E@x<9Tl`f-ݿU?A霋PhÒ.w+ ^0i 47~7F56ΝF3@¼R< 9$*`͏ApL"?(G I^FF9V):%-IPTȊ:"LTO){7{T1FB1^WĄLP8Liإ˾ا xY.u(J/Hؘz3TbaCE  M<צ Ea7K?q7PӶmZpz*#h-!s@-ȴ#E_W'@FV,[ie(\/ ZѲr&d[1d2XBuΫ0&[eF` VgǓ7,J4M0#E-&rzꯧJ4=ehHrij|ػyou^qݎ6>.H`тrX7IRwj |Lg6Y3 HÎJa`g.uerHZ+ݩgbkiwH DS:W$Q(0Ht=xI/%t@$,uO%rՀ0P*S9 Z%/ (=Ai"T0.VIGPF;DA#{+"4,(:c*'1Z-æ._ I\/x:yaဴݒkWoK-R4n+Yjˆ{Y%1f-Al)2Vݺ+ֈitv' 4l|У_פO$-$ɧSm9 qrH63])Тh0ex cZ\ՙ{$k+*Lg/,\#XjAh;mmϩP8No-с2as+p6pIr5!ąf~Ԯ0-fubae;J'CPDs#%=B~/ -Đ,k98o66Py=; i+@R_FlW_>_/6Lmk+:2Zn4M9tzG;>YwY7i T칷5zT@ !@cVN5hI~yl{a#7@JpakI.I=Ea1`xxp=@/^- Y*v∶!$Y#N$氍Hd4^c:_R\)qP|$BW6P`cY>`uIKi(fhR@ tVv`bB 6{_Z:kq?5Uc H8fE± KYC1#BNA80*#ngeKiӐ(53+U3+^,÷^6]&za_ON,+UF9\C"j'gR_=>Zklk-Y?3, 8/`J6ʧLe<0KS&/cG92mR8*lXlF>g8)E~N/(҄cd r$n^Jĭs7,ޜ ژ^j| 4źޡebY,mP4@lF+CӼ%+25Z u7u?Q/c4ɾ<5W@hY-ߨOM8X,?@).2j3:;9OX 2(VHz4&Z\KWؖ /_bG>Q'D^9@.2]H6|N`eBx[E0whui= %BX\ίCT%1Psƕ*99πNi~T |bzQF#%^J"vX;Gϱu0r̠N1t29)q}˕)sQߺ 6M-o(8U/`pJ5goSɄP&Cn&QR~18@d/"yۛi ǭ+0dL)"YQQDtm@2mdpQWσ5=|H$CkYF q1N3z7NikI.LYUWz砛teOC^qAg&LTcź C$zCU{+{ fkk0j?K@K|TF+ׂHλ\THrsB'=y(dڀhC@T\*J?bX2? ;p,:g 'Wa(7FzvZ~WZ@zGGNH$xɴFaAdE|8/} nzΫǰ܌մ/L,OS(ULVdGyڠâJu?o7Β[ 6U-ı =[tsB̗x>j+nbAMr>|̠}+1tZ UO␛HN^"@Y•YVc `&l}nwY!eI4%% +1\4|eɯXrR/aͶ\WX Tg0-=w 3Q@'PTh#XU̚Nwt4G˭sOi5O*CU+%2JK\sss @yS G@Ī'aO/t9WdR\ KKq|ir MS$`]¼GC`MBҾQF )E}]=攜.$نU>钌*;\Iś-U3ίBU=kA^T٘~NηiILi͆½VPWMH䀹rllhrt'e:ǫpm7ˍ_6SV$隬.Jx:LAwԴm joT /7X}N0vB9 ;tt׾,ȊXQӌQ0tDZP-c'5/>Heg,27B֊OM츂gl/^!A(sEl{ǙPok3@ Y-#֯[`*AI;-r\7O"@sg;otWIOYM:߇$BH 冊4rET؍}|sɆ2^cV(H7+je!UׁkQ }[@)ν b `AGR"5OWۆ I6'h^f=oxgl;> +yS=efTv0}ו̫T5Y2 3w+WEIG@oe]>VSv)8zݟ$q칺w8ZUsž9\o̼+I[`FWD7Eԙ.qovʍ/W]a"\ hJ@ 0t=- dY* ~¾L7_X:8z("lj.'ؼ[c')UUJP8t3E;e}coL왒v+ kTGuسkhNU5 xJAVg *\O'IX'vM7 d8l(GBoMj6E.Prɿ4C(nPKm i6oMGџC'f>ݪ2nҤ`h5ё25.\_5R}hqPۣb'׶ ]"Gk})BP% xn@w϶HW"*l'92 ` rsyJb ZLaV)"`0LIiDkjw#fц>|cv̝ !y PTܟwO*P!!:c48Os}PQP9W&bjx{x崍9UCcMUUcA]RvfIf͸Εt/\i0]ƑǡA]QDjUI@O=Kyc\6tAdxΆi-yA>"&?X{Khc|pY\c4q5Y>d3J(6"rmj!`jٻV9}8]v`4N)&C0?+vZ1Gi_Ų`nIC/tS5u.g^ aBztqUokoC|M:="p/B& x/uuħLH}v礫:1{ jS3rK Uv{9䄇)m"MhYhSR>bgTpЉP =MkEFo@ |Rxm;YĚ'FO]Td`_0dpkA}b:!$Š7ڵ:Sy1,ibMoWjQP 5ކ,sTg]zNȀHs?ѿTݦwHܴQ})F}6=k2R gr R* a(-guTdLB }gQ  XxswRW%$WE|mWTbϢoTIt"UJƣ3] h7.]Rs-Q{| b0rM*Ue X'0[{:U_4&{H"Pł[UqhFp6y \nQN. Ch41X%ݩ7F& 8e!5 ݣe |͞iBy# &7 % b/4mUXGFb 69OiÈ !okmk{ ҕVI ބ|~~ψ"|R(^ftF /{Yl!b1R">17җi%(c`kGHRw&,FObR`jy{:8p McV";Z А<7LVj#',h3U>J-><+ V놺y7 ,ev61y.#7>hXGz]mw0˖䔕rqo!}Vં J7VȪԚ4Saߋ RtbYU'-ƙijwG@|g->1hBkOUst ]$Ğ?L$pzE/K̼- K-~YRg5sݨzK?K-`n/DBzvy c.wY@zON32pd11S7V+Y 冒Mĵ*ߏ~lә6C35a)Z5v=/q`zV\| s Tr+/QTNQlUX⬛zؐƄ?{?Ǥ}0=5!%ɇH c>o#m4Ota5H»nh[쪇l`!`}՝C퐑=\%P&a`2ꖈbܿJf 6L8Fjef交 ]4 ֹ߇sr֩8W~lUpI\$8^XB\E2PH UIXR/Xe' d`_A^ |oy}Xƫ&i!x7k`F~}63VqU݌ ^6OR9BS#HBwN[di 1[q+x+8e:9ᜢTK{_wwU .(\Gq%#Me/`\|?%Q?Feޚ'Mфa.V$OMUQQs {;4D\1jp BY}6񕏂M8-pQLeF͎'RbIxqn$O\)(htUƦaŀ)f,.&!i z{z9 7K@':@bGh`?"=j`X;Y;rł/pŧ@bK!U3L~{Nuœad>t%a .wYz_aq*P n3g <`1j!9@N8"lA\ ."CA@@h]D5*I$s6>BO}*܂@/ 9RhKʛϡD*,me0UahMnѩq& 2Yr[E*dsm+^zK|6U8;,ZԶHEK|"2*o<2jɣ2J\ؕ>W-pM(MU"z)Lσ@֝8UBbb_$$32 ɬq'Z!=i#:Ced_%LWٱa78MT%p~YeZR8 ϬAhܫٯTCs˷5 w#=cA=U~{wCQc68+X24L{r㒵/V(%ңts0RL!O@sd BR tU28 a X^>TڙuG5~XPQ=f@v{Į%]ج{IVm`@0+i1ͭ)D } ,;' F@T{zِؔ:3Qk ESD>H:]h n"LAl-Y#N24DsFި? 7'.(D.*G LIzCyk D>q!%`:(Ʀ$aoHE;7z}zuhjd9RonDw P:!f̷ro^M@V赵1M{(vhsAmtCZl/ӭkWU*ꩉ_תyPh9Nq:j,ݎt48p#qFЙe*8*@l\Bv! yxr FqU"W4áѤQ +L]ŚT[&_SF]1Ԣsb0z绸'oҲ9T[0o .>ãKN ݟ,L$FxNˋPG* 1lm`HC+m4R[ObGJ?o'B61ķ5 8α =SSP+n{ 5Фw3"zQ[͸ŬthQWaJ406m:FFYKv >u|nęMR|QUir}W0uR/3Z{!5ԴrS)G{aƎYd/y=W. :E4gYw:r;v?{D%v~W5K i#̭Y,eHx+/7r*6䀚`ȘzJ%ywq1{2ԗ#ېtenya)* ۗRQzs cGITkyo %#2 G!&,dwX[#sӏ[s?킫e`bV |]bF+)oRF,=_tt7 X?k4 ʎf92hҾ/1Kc)0n0 Kʔ> wZRfQ,-NFZ/Gi~67.OӼGpdp x24 ZjZm{z?qtoV6;zQ6vs?R8^߂ a-QtžD*W;_ %DfaR]:}a$Kbz{=%Z|Rl"@)˴!BZ'朽|w,CQcQAHOL[ґJ8O"Y}ΌNԖ\=IZIϞDyj%ۋ)J+y  $Omt[2@MaqSG'cmeXC)wٍzxN/&dT &ןp>yU%|-h4p"۸֖ Q,)*HI+P"tH$ق']SdQWL#C1Nd=!BtVtc:MAlq+5%MwT׫B<[aaQ\1.V>w nW3])~$+8%# m9je.9a o1~QN `=M+h Za[=SZK#aK+k9 b0 4}C7 oU0\r񱚕VÆyPC>M' ZUi-DMPgԇ(UY&w" -ZX>{hjQb u>tbA~#4ۮI|<3ⱨ>@SP GwT8bSw1^ۤ b?tJOvqmVLbh"5^`toj9O1̊?-(M@#a7iR.!6:Πpaj]eBmGł6y:QaK@O0=IףWpvi'5Ϙ=" 0ƖGN+3jX!*)K?g Xir#]1qS.^%C~c{xb?P9KNkᥴ8Dr] tjd }7iľz*Pcr(:/'~2)r42JZπ´nB/uc[hOq=ᨹWyWXQPhbg*7s !jو -nSl!fv!C>8A|a[^fTx;Ȃ-zPfJpbob8R0-Mo rU Dˢ\=>u n#F-Ċ$*1 K>{S3 sQ;CM5s!^?Ѣ4u"RCdVoI Z;JI\xkL(-n>zNCu $!jxhC\:r!km2T+7j֥C-mw.[-C+-=SYKl~p*d{9+!6_?x/&b){%3s=9# kȘLj?m}Y}~&_ 1[*6bWRոPh'ƛkC~_YH:\]čI3Xb%+83)ڣ} sh֥YJ4O15E8?kSO}!!?2L;8+O~ٕ:?] \BD!s49hЗi ١n}9ڣ ֵ*^;5kojDzn.ߗWM@^ؙC=3kM}HXoۍK% '2Iz 뤷eRݩWL*v]f~,*@;X:>`UC+qΚ `?Ƹb* ?$5ͦ&mhАg҄@Na".'rAV1{-RJt2#n;;XzPʇ+rCH=LiF3w~o!kD;r?Uŝ'䰌nbJ/" qC Ѻ\E@)r pf (;|cH]l%l JVuTm)oSS;rETgpުMW }\` fJ|%3k 1T ӹ9X.ҹBE= 4땉Nɩӿ+.zn f+;_v,L?)Tq9-gZņh((>~n3<9V80T_e,ݽƬ6J CzY c=oDy~3 Tƛd 9(t8]"bY1PȰ?%?eë)!y9`IxmDw*[႗#,y9a;=gR0|u qZ|C$ 00Л::<4fQ[/"92Ȍq_x^1H~nPziH1:\?3#M'Z10I2Xw[u%qx&" %*` _Ӿ@ptwE:)pOz 0Ve YF#uLL?釽0:Olkƽ8 K3Zzhzg:|InIqh5gAsVg.Ow}`c)i<,`VWti=D 9dRnFzckx@)'^mYNANĐ%ƭg.̦|UAU>4䐾O9bc"=z$]hW:km"`UI b瑤q^NԐCK?AUBTQňWqW~;ʼn%i%YAdRU*F.PP=ЃٍNG[VhSBK(d(v~GUHkvvZX^{]_ɩִ;`.YcqsFB,O]xm4:QbgU]L׾!ڒ9%8hf7&JUMu\< cMߛ761»g{A %`T6UN2Ȼo=MfąBfm]WH?o|b- r0}+zWM?1lH=oDH@]ϨV 䮷cx=d|ıwX8υKuOJRL勒4joGB:8F;l+rS"c ۍ-?[y9Xɚ2Ug%|,3&8;u&(ky抮^r똶/L}Fꢇv5&obmگ/HXYҼ^2޾P2kj[Z7u -[>m_fSw+w;k}r?%Dzpl3̩#*4b˲_P-:Yl;I֜)-1j_I><Fk~BCcJ%f4LH`;PUQNL")SLZTjz7t(GF”x_NDYӀW ,G5ϪLVsz|b7&hB8^VW+)zݍ;Qxsqn7P䷱(LśeSLI|eFJ&%M+ʘTT=r~\Lf[v<4Uofz9;hTagg:7BTYiX+.֣ )}P cAVN+weBD]%z2Cz//GDZ}*LB7[ bΔmVRW=i,Y(!먯ILL “o k-MӔL*x#voJQwtS&Ϩvl[_7!Q-<2O~_H \h#U T j*C+?/6W3[k5R* ybPEv6HwxNI ԗ QƬFvx)-ƒ]:V>>:a$_ꉌ$ϗfbcx  ?o3Z@#va7|_A`{ 5y vrD@t1N@q(+g}Va׵뷮$D:sox skh,!ullHB Yk[j'j$Ek֍ _~)Cz( At4.KŻޑL-lSV5g5/(Z-㹺?7^u3M}ߌihv}9!F` ~گ ,;RsېB %Trhi~+cUsN. }-2삒b$ BKaGO$!|Q!*LzC v+H_RKw¢yS9FDw% ۇR"L{wcḶ1;1mT-6!XBD8 pvyui_ɃiT6X6x쒌wPM&W )?e^2mBifk v$S(AK@"nW2݈' K8 C4 Eo4:N`fѩw&Q3 yEV6t頧>e*ܘn?l h؟OI 3m&VE-ٷ_Y2t JMK7Fͳ`o=I,fs2ʸUdIX3$D ?-O|F7f1#fa ⦽7/oМwp[hQOwmbiM2%Fs[,,k4Ⱦ^gƑ2NvM28֧5ɶﻚw&Tn(KLDlDV#k X'#Z"q[Un֜RZ0W s}ZO*18zNo" EN 4Ȟd@Rm_ylu_$@쿤  pA<W7V BuIsd ;%{(e(Ya~zo75zN'>13)ݾ&G$8M*E7U8F94?hw̽r4y*HpA)uى6VvKL˪Fz_T=fxpImxEewZ Zu* 0LlMw`"I/P i7 \sFW1ѯ@߶U=%.< s KuHi  '5gi.3݂5@vwXk m`8a{F'R IEl6OQvkcs%ψ݊"4hg_h Zd+9' mU㶦omz0ѯPmoWj qtB>hCU?=xZYt?Rь;%-鸛]Ds8F;eYL9,\o8lxԏ(?R=斣쐧[9azv_ X+1nxro KI5ؤҴT\.sq jB瓅ܾeݲZnҵɩ0xFwscbpC1ǂ=ig|S7[Xa.}B3@zoW`͛V0T3$ImmZov`3C# .DǙHCÜs"{-}}k?AdU!GV`hW3"}v5N2)PC ;n"VK)D+;?.! Cм R6).Z  `VÈ{O2n,Nw\9\1pJ\16iX٧}҄uƦ3>/~5 z\I$ykmi6axh~^ tQ]O^ 5'+tu:! Q@-աHI|[65;/9_qKHi +W+:Oi;Rˆ P "9!)à PCb<; }(jW[x$'cy;1OTHK8U-4u>_TWݢ.] TE6})WyGa|G7xH*.=8 n**Vc{2,1sÆ#Y?^T]ZORzڇ)U[ZA{֫{ Eb3͘'P`[XdR+hƊ~gD&2#[*Vk~4Xe]"4s=dhF/"Da{?ڮeze]@r-qcZeU}ʜxo/1h,]Vx*8?Cqh3.a3f-&=T..HgG%c oLY ff4le~W aZnvY6} ڈb(8RlC/*7r77NӆX~n_k%?^N04+`0] \kgniZɂɊ=^0cCg ؾ Agt9(Mu~НmVhKfZ]=E}HZǖ48WٲͿ'q6 Ǿ iH/L>HN]E:.oSϬ7( ҜS{g;>1LQS:%A6p_|R~U#&b>uKѾB <7nz{9](}kdtF[o,Q0FHwIl"Bu+3+_AaM᱗&L13^pY1!sq &!55*] Mm($O&D-vu^Iʻu]=,#uKu ^]Πq&Zֽb_Ͻ9uT%}ӳ Dxsb>_)#1VJLMa3[fArc W_ v=jZ qa-JId& `R0dἽ#;ަ ykT`c2j/E;r.0Xx>2-5<Ύ)l-wi$\?+y/alHRyi)?1c ab?U:ᤪD;[LF vi8ȄYk x?d>b7N|Fh bx& Ƌ0gTdRӼ|!&Dؓ94쏽lQDV@˙IJ -IՃS ɇE>bBrm#Y>d"RnW_c{r>*KӤyzv ,XIq:=A+v 6Ɓ{3e?{{PYqrc_ɜ Z۹_]vyk&c&<̮mF#71Tx^)uy(<-Z[K=SH3eBth[}w|e_ή[L_>8b+gsŜE|Br^7UUvI/YoF99jQ]5/w@\ 94jfߡY3NkWFX^9S\@>\tml$+RbL *ZaxZv;VU4+R?pI ^[$NUbQ&s2lLy–aK"!` 0ϝ :~!¦ ǣ.#јv` Q8&&C?,?VigQM8* -bݴaǪ8ը-P?{3y=ݔ~-tUk&"[_5꥜?y%v3pisWר46=j%u[ٍ HuyL̜{:_ ,-m6탞#İפ,I1̧ ӀozG=,Ofm)V%`ϩPq>i< (,0Lإl396c‚E6gܮE8%͍2xm#WƑ5xw[w26mE@Yyߺhs8M w;|ʬ,)ռn>=sZT%Yc@&fZ֠GdN̄=pVA£ ʺ#Y7w|MF_6Y&7 z9:mǁOdbxo?+6 &[@R~qe'N? O(RugVp*Oe6|L1"gī F xc ~au5Jl S=W<~pfN`:.ҽ~at.;FvW/=Ц]'}4,8Nϟ[Prf?Yd\PgʝGy>rMU$~cP()N_WMB8[z+<•ymB=],(HGG0p6o l݉~K}3o  R'jyO| oe%:~G#YP\<%keL!e 'QU>BQ6|Yar qdoxO^ny@z`)H%wjICɯS.(S2;9y(nECM.vrfuA~=dϴS'21vzUS]a¦t\!q-M9#9k78z\~ќ³}ĜY]ruEy1D3LO M-L,})R*5_^p/nI)õcj(%{P.]Q[2Ӕ3i@hc*874fƽ kٳ٥&.RW|XUa1{DAvHT*KwEHq7˽>aO~tڗڡӲ)6W";Gh.Q*B61x<:H橩M؏E[7F7a,QU|]{ڳGL2_(S^3gq[9QbCJFPpԜٛ'Kf,n+V?-\$Jוg4pr}XcnmbVe9aLLT_uj/`!y[ׅB S4!ºگf6f),h'+@ߪ*dTNqKAݝmbՂ:w۴vȸ'M*|Wi6)%/XߚÐЃjYǀj| j ܁S$(`H3lÇ܇s_$dzs$U4T1Nֲ<7Ž;]a8,[^̂֎ArDM[GC5<3I2dvl]GP1eN4) uK0(LYe{Xf'hz'J?M-n+vgLJɬ$ 0<æ}N\px>]{3%@r\hҘ\1C*p؜2 8\9~~-!lP|"cԥ}(~{:sm"v_ tvK:轩ًzhq4ת78$zuEfyWcN0̰a5ygP&"{;'UoorpwX./ӳ )@^TP2`c63 gR@Ei)޵/!&C5a|5J0ʐ\xBFN_r`!1)yhݰis{pvLjؕ7TjnR;qKg B^zv[DAQQ_Vݒ  'F;rSL+^6ԛy{@ N1Un-?MȂ@Y-x >;j {G](xu=վ4eO^o"O!UAB3H,leo/ͷhnQ\? }4 ~UU3@3RMEP~WҘ6"ŭ}HuH iH/n3~LgmI%_wAdlv%y9cݒj`4@GY?f1$SZ{Nh@ ʳd`oP acO0׿{y1Se={*5>긷S &[uq%P/RNg^l5b+#LT o6?# n>Yx9'=̓VB37/!SQ/ cmš {g6 V|SbaKʺ sV]l}]5h,1n!i@C6}%yZߺpi@ ‹9Y F ]x'6Ld=>3ϣj@sҢ_RѺ}hE\TǯMF;dpo6͸/Vau[hP둋yXg ϗ @o*)_T](L>ςCӁi+9>X: ҏ*a"G?8YjBG *H%&At֢%X2.va{ⴃ(=Y.;/ ڎj߁oP0PJޘjP Bg9T`ep)Z M@ҟЎ#+\ WTd Pw쓣*-b~S8^(d)']@*4w'lC Yu'!C0FﮔQX sH+jJLW7^p8׹tU*H`ʽ*6 ;?Ae|nkaW2?BR-'p |PoIDT).2%XLbv/xzSH R{d fU1Q []a+6' "˚D[ws2(wMqPaI;Ḁy+:bVK]5e?iy0l

,UuC<h :->_EB;s3o[[j0q(t[0TdK>K=}g~ܭ:oV}e 4C&ڦz;;Ə dE&rjSmYfOS)!958UN_^RV{◹tu.om2OZ("v?:r:M,L/.(뛅O₸Sr\ f7M!"+%|TZ'∫HV =m* 9$7~\ޯ vmEk^j D,c#j[ЦǾ#(l&G ^;~H i$|g+du; o*Q&a\TDm좖,b9{!lIsg,DpiUr-0^$qxsR:Y7ɦ-'w{ߐL5B NZBȖHK)\\1IQթP.J]VG&u}D-+p0c@a²dҟC PH@6QyU=P%C=cGR5}fˇskP#PD#r;hN?3Ș+C&p%[2o#37 Xrs)}3U _qxa7 VNxDt'@eZ9Wp߼жz>"MMD@ ľ~.r0kݾI>*t;`9^@_nE-lP k18.Y TyNmK &ed۱{ioP%7Q>$q3Jb&>wT W{0ujKτCq3S*$Uǽp5 ^)>}YC!ˉ#1m(ٙV +?T\!FXQS׌axәG]mTK7ykV/<{Q"FP!uҧy9ܗ&d|a!v7wF,TfV0mWt_hj_>!4$W2<aq\2o< F#kFX/۶i]7!Om4BB?c+<vR7')ϨO[/RS[O3/]3KY &1IpmOa9*͘b0Uy E;xJ6~46WN@1 .oD #]sxZZFRe2$".T KW>c\il2ނb` bsl*D$rޅ,`@ 'Q--;ׇ5G3KSWdۦ~g >|FP gɏJχqF3OL]2Jt^3T= EHyDaD.ZJκ%G~7f/!OfΠM cBTSmlN@H(1I -h[ uE=`=z4>Q{K][7㴸GB:w|AXdU%'dB,jl@I6= \0'0^ý[^/i"nbTZ:IԱ,teQY4YjAj['(.X/AXd qghQ֪M\]-8PR˅J*$( ֪ċ$dMM$?(fф8B ,AYS2շ W8sSfȄ 2YS,L5 b+/'ҳnӣ"lw;~,Iա_B'4ǻ0F[}Y&p?sm0\eGy5FnBI)]kaUoBh;9v`:_Zh F.l{9wO0_dE5VNز'S=X:EŹnqHR㷁ѪX,ȉkA W`4yL|*@/3o6qW{Q٩]fW3ף9ӌJ=,:oI6g0l7$ Q$/G=+|t_W?9b#2TMSo\;0ѳt ]'0zցW 8hS #AMF@ QtZ6s?k<]8)$1}X.1 w$bє%',cG ˣ kd~W Sz )&D^uʻ4*jMrtq78r]_{,A OznW-;Y$+豏 ϗ64w[ %ר2~d&VZ<֦`&6gHrxG vZ qaxQ<5ՑUM.߃j8rԸ2S$p/br$'|{؂Y3ГYG0F?y#pגȲu7EVIoXi<Ч99#2ÉyсZPťLj?h s)|)-gza~z * JͲr b̆45Ux8$;,v=8&QFf`ɏ%ʩ䊛Ĺ<l hIa(J/L?1;"|X|hr&QA3,T[:xT2"&jD~ʐ(MBc=EO[R* a9gC.VwHE꫒/4F!Pr#~1 X!ftw u8 Rk56S`>yܽ, 0#~wSOU N%Gq^lA:sf)EGp[W00RV~ؿ-K!G􁼹ePBЙ7/D*Ja I@1(@{;Mm7a>ͭlG Bk?քwtL% mY(J _mT`,i|( z085jSDqK܄P징TbNtK5f>8ztFK642}dM=`0e!33a:kbW\zwa0$CKeH\+3X*OX \x>lo"=:,YZ:)cw("{ 08.X%Dtw%`4ZopFu{ܺ~lٵ R*c" XFRW4?\")MVO;jk۳ʶ Ά˒e6QԸ kȃpF>5㇖[b]$FuYk:2umE肓WEhY\kj_-Idˇ }Ɣes/թG%rF) d~m؟e&VL3kb(nO}rmԶ0%7;U+u"i m&H=uu+!&f0q& JnBWIƤo)ZFkMdHv BfmB'9%~[bv؈TBh4x6~$U͖2T^yTIgz[J0v^v)!Q1LzZ{?Qyc[ ꥖v(R~/>fin1_ahqNdvHwHh`9DN>V9I)op;֔wl#nMgAg]QW8uQb8e)XkUso rk \ŭ؏+ʼnɎ}n/*ѻO"6UsYFƋoҁzVqYy:i(z^0Rq8Zf}ө]}p ;=6x($BC}F쯸Ϻ$JlUVA0{rݯYL q0&=.H7]rj&*׃ɻz>@6Q|o]ڄի'vU *3U8p(yap>kz8[t}y''~U_omQ$/OD\3uPxYɧJT7J/qC4Ax!!ﲀ(e")y7"UeUMe UOQ}a'yR/18.k Mr{6DԤNGILT3bH?ܲ 7@߬'OFQ綄p-uA&yCZ64٨R 3B]SQ~7uyM Dgl K !HU+%?MK)DbFtQPSb_])*>'Õt˲ ܐ]r*4u}hqWW322~)ܩnËgcx^-AD@ٲ.Z-+eahF zY*c۔RqgX-8i씁*hCoJmBkzZC-m~0Ekev) 4OlOgTf+Z}O^gI/!Тh9zb눕I0KUx8zhzVn,g{G`"2lGQD*JߊEi jɉb7] )9.a)9DvJhb*KrmE v.j Wx߲ 6[r24@+hQA2_<ϺUl &2_oJ{G pF| fהGc5낕ߠbC`Vc+~QIQho-(\Q=qgTSU~ׅtzSٵAѣVUV۰dv" Pa؉Ttf<"=вOvQ?0`:/뎣rDb/m?yy[oNϞ˪52kf-m{,w(`z zG9\<1ѝ}zNp .?NKbO`sO2POIZLQY`F @m%^< l[e/R|Zh?hx|Nd [?wk0P6yC$=4wFV3BJT)Bh]̦lxnA[!Ot[ : W ڠ6x72&HxUwߺ +RC3{Ȗ cH,ft@jz̕2-g8Bۧv;Eqؿ|fCMpkgROQOMVbU}&U p-qNeU|a@h!@ Hb/[`R  ]iF.{ߡwICLʄdYMŇlyϊY=mplΥt{rQ*oF}hn"8y9MDJv+'"Hɫ "+P*ؿq *DL&.9+j:Cx3x}z$/dV[QMLY^ a}ůy3O>`!fb эݹo—ԇ(dA f=0DVnl")˜u-G׌5 0\4ה`-s1J=$E*(8S-uM<9)[C1Վ+C]%T}s`6&͂F4! M?ky$.])unݐh .f/.'">-5я;\.E)yr3pFWڽo%2cH{B p8!G3N~!Lo.dN.L2{QМgvs>,Jk 9Me p󎔬ǻ0B i%g遠ҴJ˔ ؜ɟ/vݣ"ذrjOJ{ :~p<Н_Bln״3X͗_yNXW֎* -STbu7ƺYG=ax2-B33d#Q/e3U~ŕ-i~pg+RPBV=y֔h=]J@[&/MYQ4nnL wߏ\2x^~{;]EECtL(r9.dw5\kS@T6-ƂF!hCĥ [O6EC#H«+X<*r7p#R0Q%uo>>:C+LQ9 5\-I7C\V0K=!H9%w6|K&Vr?y-1deqՙjd Y*Kز[Cց*]= >[x_UCTzI?h0y40^;a)|XͅߒZ f{tg}$\.v+OuW_ {lX=o]yUЮ0uMZ!ZS"yjaBm:p[b˳+PݝeD4xPں69yxP;[/gzL!ٵ^[ 1W!v4pѩ+oj]Wy.G9=,µݪHty^oOPPSXo[Ϛ5!z\@Q:FfƲB &sx"$B~;@&&&`Ylg[hLiB^/b"J;QM,"2ho~RDLRˑNUgϿ 1|%t y'(?I4pP;jnmk'|ǃN-X#*C3~SEԄ2oht1FlŰ g8fgTqh}k1UNaxԮKqm a-׆]{ꥐ/;*;ą`R %#V sM*2tw۞vzB+`؃M(}&~(nǤDaXXJXl] d1gDFbny\?4;?V+9 3љf!"h|8clH|PO$XrUYa13;˭U8w*D=dBKLU Awގ%E{=~8%Pxȡ̀snD,,y<*kWNJ!6U]%A5=MO%J%q\}>ku>F) 4<1v,ϾkoʹreدJ):vol _ 3Z@G(N.<B8_*y4bN>[OCS.E<z+GZua A][@j\Qm5 =Mmg`/MvE+gzv,Cf ?`!W/uY{(} tֆn,BP8N'Պd`J kf]ո -FSF"ًTNhd78`D`4NWqu=֯"W)]qk"gCBo} ̸an;-j0>W_RV7e=LD`|Q^; G/׋ɡчrB*ǟ@شלbᲷ@lI6;Ջ7-m,:-c5rΉ*hNp@"1":K4|t -j!oӾ`~oՄⲣ}Qzt^7&i*ED*X[}4f+ǿFZ¶IcJ0X_ĒL_$~p#Bw, G `t:qީY|H nԎ/aä:lN[^bImS߷~ӈrf!icڷc8x2CZҨ~Ùh*WQnadDx\ǟbs+.>K(^lk헤VaKN c ֻfQYsw"D]W޷~S __px>N/X {4iI|c@.6%e =ziݓ3ԿƸc|D8u qI+r:!?#Ir %˗ZiMOgxgTqi,BL_O+Ѕ mU.k.GN v9h1*e<ʫޓkT.{9('}xyEKm6[髪/vUթUKy Փsz AuN:wITJgn>Kh2>䝘A>X=suQxbk'ji o(z}eʢO@RW|:vYbUhSJZ%<~<;xerCPKTqŰSA7c5qgY9퀡 A+<0N!Q}>~n9EqBzh 6"&/Db`?-){{MPA 7CycY̬H;5_U2kw+ޭrTN6O#N ZR:W睹o0ACWH !Kys`?8g@ԏ4\3քB] )Əa!Pe 0cZ'*&d&t bŰA 䇋DQdܨ~QPbh]4:Ĺ!^JoDM|ڇL =86QvZ /g6tVGhhcl9%X?㥫ԆhO= `q|͒ZʹH _94Yռ>#w# N3]J!*9,H٦( huupZ&xe;K#RH 5d$]NkT4AEUZ6.2@ϵC6O`>4)qٌ7I:.0)׳ʈ&NDBC?*E¶>2d5._)ٸ~Z14/CK+{rr¯83IãV]$u7ti)8GMoP uE8uS)J֘ x ?;(QvKi+ڔj*ߔNy}e%څRdf=T~~; !d'/7G95,dI17SArf!Puc`ᖑΠAc..$1~-3 B7/K=yl+uc]Wն}ocgB1 O`nuD9,҂6YkEžq5}ov y煯?jo4'(PR<{4,(E,uK`xwZ"t ]]gpbg&5C`p79K͓{t ZGÖ#'-tn!.xc|q`zD{*~eef -Q@x=~>l66|E5 8ڮ;jx 9 i4uxVyD^`Z'oa~W6=Fǹ[, 3-sk%xGa_`0zFD5Z]Asy~P{#3hR 1D%\^zbUpeXŇXIgq]`Gg^5ֺ݈aЋxE)'ݝKfUM ɤE3_*ԈB \2׆贍>^s VLJh~v#Sv$8:"߇<1j!yF}x;p&+bz L벚y@u)J@a}~e$/-swZ)spJq\_Wݣ|<:|Pt? =efʤ`/ri*z\ 5$lb+SiwKwUSIAVz0;I抵 Kk^tM^@ U4RR(L'kv"TضT4˶Q:$QYi@ rs~] ޻ൡHc'iwH43p)-M+50̾oQ{jȎnxߴÁ yc`tu7*e#bQefT{?N2')`rJ-eX*4z"a:>6]_ma)Ǵ}U\ ` 8&d4Y!on !OUuReBI8#wӢ`]ya2N K\a ߌGwl[3y!~"ob;t5LMYZa*;?sXtpCDF*DHݶfwٶ%)OܻϤ˜61XA-#4 Tq?kME{Qл)ݸ!j:sC,uF b5.J)L#Wcr#l,\VءmG@`L,'[,P座HbDJG)ꤖ=Df4˕,7mB{Qk3)"/~Clj(9s!3 ;㚟3' P+|~jke퀁7s4/\ڥ؍!4r]& +"h۬ */tJÃ&>JV7s4E<_cUet\'rSĘpٻ(f;eR#|! ps&G$=|7Dɩ3aB|ei ߼NTE:~ ЏdtoT,ɢx|j赎@ LΆ=Ҝ@3!~teA>:, {|.Ɓ!"EZFr[,!%g1!^GC`"Maxe ]  (@I`1r$V~ZOGPdet_d*?I$|hFPS oYJ!-gP7@ҡ84rZwPI+ƥjİOjTQ;aQX+FGlCO̲^S* NjV-fY67SQ C.i Ջ}k.ʫJ[ϒ4t.ыGύ4V#b@z7<5m%(E#>VŃĕ~/iwHbhbm_֧swxY{J/i+CW:WqFABGu^~@|#^&ذPRfI+U+)e5a.T=-ӪEX0޹㧫w hwGg2#jtuh€̬J8^Bx-,/;V 8B7Աޫ䝍!))Ůq)yEtQ}`!A]QWDٟ5MbJr vfh5Y|8y |4}کk?%9>+_ՙQ)j%p# 촏5~..vvB18J^,>XeznSmTϽ f\8G_V dK~`n;kdlC8C]cF]ў qg2[@Ϻi9 Љp_mz<(JP?T(q.EaGטD7c ,Y1u^㖂F#)>c;4ݛNWR_RU `P7k>_ eoCHq'0IA[b LJŹ@(5C}ka#|(\Ʈ"H߳@13 Cm9!O0 ͝YKn:з)}4Gxvɦ4>oFLzXa b=ܷ s_a @cN@{٢R]31>hΤQ O\ua] ).C 4K}px#G"4d=sDF.aݯ3Կ?$'snj w`fho~HrYY8e]LǔbSϱ30"mB9=% $vWݲKT O:_47G~dHI#h aSZbyr{&|"ɴo$4kcmʺXv' !avС%.h IowlN}T>?mZȜ_ ܓp ~c/,A8}|t!LOp"?w⥅n%͉j+c>|.ˏKKL =V~R\;P>+=v -m+ N Lׁ;PygU?+!0e)cG4Bͧdٗ<8"MjB͏E*oh60.^ k}FpkQ+8l+&<=:mv9@1# x3cgՊy:Ԓ%:}ٗǡu`SV͟a4bŊKdawݸ:hcN mbAU^7G.!ko˜amb.HRT> vR\azZm:+|Fc#ohg3"$ +b˔fvSbhm ֖9fi-sNN-,\a‚FCmyܘqۓsL|KX#HQ&7z_xL+8at7R ѡ Q6c+,{WZ؝L;%#} f.RKqQo2 >&H8! ' ӰeAlG܄s A?t~`=4Sc:FA{@Ӑ)6eqImtqsOPƠQA {Q4zwpy X'Q_vuWy7X3q/!S02o$S~T?#z~vK:C(?᪔3656A^_Kװ#*@ er E>6e)K ]hj7.vYsoQ:TbqXГ>R,v(#,!T=>~D~ aˢ_o~çǿq!R&@)"LKU3iJ@(ElM=D%׺l窙ڧ^#uTmBh^HkD> r8\O0 >C0?Ęhnm9^^xki ˄48tدev$ &Y̠ ⬥9Hh`4>{KN8r*0 ʭ#Zⶉ:a  b-jWo?]Uv,͖>zػR[vcx: >αaz8c!LLe6c=OO:Y;t3^Z٥cKLAZ<¾V87 ;ƇŖsQVȾ5KJ/":e솬D-y4IG9'v {SpfIDdyn/m+}~{VyzGع&\"|%ekՐI|^ZIkm4SCEfHQ%Mz'/З)NB8ņOjMHn# nsezv2N«C7nCAuk)wBy2L]rw(mŽ_Ckӟ"L k[/>-'QwͅB!;a: #fF",I; ]dg>Lݒ ?KpI`! HdWh.=3rA,[WmtލKtA+iZI}? rE14-`اh3aIJCsa}vq2PϽ}akLN!O֠5_LD}^FB|{2 K|_-d |iC"l&y򞧝#F~RDu u"+!l/I\®:OQakbB{5)|=h[ \s1}J/2,0wZ({\򍡔yR?J-cRm=-m z3SpgQ)<DꑳkSDW  u EkAHE':k%M.$l|04|?t>|^鷊Sha3!kPVȔd};I"#ͦ-'(  d0}jcD-Mi I *?IGz56kf 2C,7Q^9cfيم=sΛS?tmj$=utr9+Ď@%eJaKuB`MBoſkJ%$Ύ䵄{{Z/2 ElZxяY wNz Gk+D b{{KC=N3)y'"xԩx80k2Ed* 1kɜ]4vaS4Vj<+U\G4"О*՞0zv.iۣz|i?*f?2wmV^(:MU*pތ΃" FNbn6SA<d7 GP!|,vjS*]v+9.Zc&V"\'r9 M J ^4=Kie,#B 6? 2Bo`ܥn;ka FAԕ;LuOXAiYjϋ߇>~y]08WG֯;E^"2Bhu`XlvG :g&Z:( )]}7*砊[ԥ眿ӛR&H /AMP| W'Ч U;1%g .M49FbD}Z t|˜B 8 29 C_(`PKi].]`3Ѧ9sXsw9Ce![Ga"kXAE@juwx@:Okk / ]TP!悕[ 7'=cp?{b,xY1BNSՌ֧ H33RǸXVzy/(?4E:Mۮj OiYԤBbW@Q^FtǧuT/Hj(Q;.< ;2eHxb䂪HfP$,ッx]cj2D%A*M)w;X})>iܵ3e ~/ +\@b2 AbৰQl[H>W лZ;A5JE S=% q:xj"l$bŗ́Հ&dF̯oɒ_\vZ@C?O0' Ge?hL,U+%&qb2ytjJ}"ݩ?6 D3`^G}\߫5}%O0aCv =s;Keog<)9*4xAUU6ZLK)k Pj/wY+Fa]+p86ډj0>SvH:±h3ggCЧUS='R[վpW}Qc|k3vGqޱ\[ %:U&@=oEb 8R;%@wf\@?% 5/^̵e 24<*t^>ׁ2MHy&m&[,rޗUs͞C82\\򚗿$ Ŋ' ~Y EcRئxk{SW?N;uM5qqu`+{d&ظN*ҮX&pu9ON/ædK,r)yb]"NDk]%<:l ]_"z.Ň J.-TK q۬}e+: Li[zr<&o˺%. 8Ipk^TL^;}]"s _=I\Yol Bnn%],h<ѠC vNDǬ;iӼM8 kT q#'nk5Ʊɳ[*P0j+zxl'xAl\r5o0҉Qp٩R !W +;\vW]D*(l.Q8|Ec8DU 9G:"ZVZ}˲10>`wKIZ&UkHz.h%s9$QrѮ[FUHr7;G墓Ou s2_Y^bJ4E]]1W tw#+/yD0w]w.DML-|h:_"\R9Ÿ)8Q)}UiC܌5^LqGV썖|>sŝTP`&_${aДb$  8EALΑaq._eX cHmL, fgWO'C2 S i8w:Mk, kY=u|aZ&*kAC;KLi" ;hpfr3 );evTg퐩3"2J_8VtJIT f1F`T"sܪ#;Jk V[-ߢf|tkg2y,Imd S[ffnJ 1[{z vWA/P[Tpd3 G\!/oכ5@50P C3Md[_v]=SLTǂjĴgd{wF3UzGxv8)4;h)5'w4=0T>< An"JdIB>24p|8bf>DzѰ !Pbwg VbCNٌUbSVK"][wޝW{qW-mz 1-iX >*ʆYmk)BuihdhV|[Tm7$)NSxa04E^xvI}ko* a3uE TIof 25XqַU=0%ӋqZf ?W_ uYނONJ0K/O>]TC i86~D{#Զ[D\vQ\d6!npj,h68'-V[C.wEiKv9ď|>f%Z:jcsLUo*9Т:K+ )c1fJ4r8DG9">5#YA8+sɐtk7C]+X4vTZg@*^؀lF2 rDh\6Z}zҖ#$%3=qy7u٦ _RO %n 'NIY:B8K.0X ]٘rT1yU'"K 57m&Ǣxr ~mN 7^&oq)L1H?7 MϤ$̜_2B%ƒ 32hVcK+|­j @#Md-+w> Vr/f 'FǣʈD)z25#݇絿FɀIlJ|pN`?Na-%nع>ˬ2J'g Wsq֏to5CKUrÁh`cb0&qz+\lKe ᶩkq eTvT1Y! `ff}Oh7hﵹ= g2*RBMI QaB4(= :BnܩD\0KJc J/E>lJby5\؄ϩAќG`GPz-)ۏޤhe:DN㴰J:5%Ch bSK?6Ah;vs+8j{2;@32um}2¢Ma\.aƼ[Sc9feHyxqϥ0))˻Ip^9]N"CxhK+pF)h/Iet&b Lf㚛h6FN%q.*7J)T 0TȜ,4VTdԚH5s^aHA5 "Li7t4(B>ɼ$2aK`Y׭9b8ab-^ hKN~y8(wmdc&+A' #}Eḣ*% _I/) 7yF4\CCOyQQ!tF)_ bv4s7uǍc@2A3BڿYMgƑԋZ9}5P%phU{,ЋnY%frQ+pȘM h2s͊Rx˞ Fz6k~MI$i>>Awq8IkZofךş4GӑFR봔]AT]xg[^=[naB1ɝ@^֕~f!\k/ʡX-a˨s)atӜUo+'.>eT:W2B-AY[M65]ԺMԅFeR9DLwpJZe{4Sua#*Y!r"@#55Bv6ij^$y75PrAaK}A0vZY^~a|1P10W@4\g_.F<BZ[JˣI,Z cnI f&dZBYr+DNI &`f517|7% _%;P*A~cWƓO ˜g}p㉲X\v€~;?&?-Ġ[Xǐn4UyS703 qKHlIMf&>a\Q""#OlAb=ݜXkeqUWEzTEޅ/Uh=н@ ܋;( ?8K7"{]R )4cŷA%|H" -vFg Ӭj @\Egwqgzb_?݈,j,޳жKK9 yC'++\_'h'+pLj9Pz,·lgF )>& qIT|E fB qCNDljU]L&nü^7Uǡ̞fGJ玀=bI)tH  2 M؝VOըHUySX_ˌα@]6V܆Fke`--919BՆ|E׳/$>< 6ʴT\L-FY] r[fj%k1oQvxWE W/Q®MЮS$@o{28I r ^8\yVHUdjp.qad_L,ufoV|V6./I;x(xA Z@1 s\7QNh^g^.X$3۸#39]+^J68YFcE-q;q"~zn4$2EyV:`yr$xl 4LRP9Ru} ̋cFC7¹tfj-%lHT"15 "Aռޤ%x{b~ʮM F2ꌸp̒2ÓL=㢰C$È0=Xֶ_ї :~cS砫-R=@[':O0ޑj-S H:@f Ne:]A.upd'"A'j^ОeQg[`ȩLfJ\@BQ[:f [:eU'͊A]6>ϛgr3k((1Y"!M,ulƷ7"u.kLkyw|%Z:eR"Ny9^ RzuKߑ#Ehqх~84{p.snbM=QfO_etlЀ9ʋ_c@W%O/:OE~ƭbpkI{l| 5EoA cHOqwjcPimk kmJq/n<"ѡnL .^!q\oۡ0B,zbU4M79}i  pr3h`QCu lo_AtIDp8,+$*DkcC:[N٧Ag\(~֩V_g% DY剹1.Y]'YOU onXow5r٭z%߮2qj`bDO84rvŸt;\Bu:uCJR].}9 p ryB$3bQK(F8Vko{=l$Iu=/YŴ 47HОj=RtMD$&U{_dĴZM6vzJ}pz|_aouܚ/LD8ojceځMᰕ+H-u(5_p2,G]BtP9uEx( cqC1i:|)X$$}8_qSh쾦Y _(\ gיKFI]J|m {Ķ#Z̄msnzd_>GT|9lXOa,(}L!=5Yg. 055+sqru~=XR`q~ '}yM-FУi>Kq/kJb䩚/VtJLD *e.MaޜD߳ǰVdoR&_%nM-y\rRjz?6lV |Y`T7^{(1feh_7!@(0`4" F&Tk!Xן" I!T5r[BC[DAj.T anWI8J8[>~J/5zQri2Sr:H 9\#BbD۪bd=&]i:L4ʣzԝ[u'lp܈gf;Ia-OqfQ 9^ ƺSWMvFn҅3((lVLJ襝"8}B! *Zzd Tpjا"uǙF_>7Q`o>3 "Muq:>#qyDø+ x9_HGkFTR^3NˈhH#Ƹgtq9=DG\TnaqGѿ QWdsz]{3>8촬]ՎO<+j.7<$[͹wXO #r)#m=OHKt|}4Q#Vp׹( x^y(a! Q" l1_c/G)(ܤk&O~эp[›\k1@.dDgO}U,݊cg|^- ds4LNk䀘x`U(t$w~bPƀa"%/oݐ=dWiDճ"l!WZS{cD EgQ0`kWQkȍg~Pڣ"T_4u323t[ywȰ䬅\fk@/1r>PtŦ Az.7z Xlؑc-]%IFcBGX偦 _c[ߊ=cU_&@~"fCݼG|u|K0 OܯeB0|M5f՘0ѾrWmD>Zj:1^2^d39C_CH ,n]!${*HgXfjN [>uP-:: 9KNJmǥk RvSoF=*TIg]G~b< aĕ˃xp44'(EbD]T ;$gU C[\zҜ[Ɩ}o__i)8XVzi#%i/ S 9T8\ٍ^<@.X4IVKrsv/4;iEo e( LG̊ё6EOOeӅ.3@~-&@jgcB*PyNC4ÚBX+SgJDz׷~q;꠲3"g)ZH<z)NNkU+$I+"r_Ǒ{/$9yO"w0/r5^^RWk5UU_;-JHJA$nBiQ$E8Yy(48Gw愉ͧN0.D8tB 0'NXEB$Qi(UF6WZ ]Aغb1a9ea<THILLʾ>?+J= 9<+#<'P{G%?Suo{]4O&Aڷc3PB0١Yy]3!\3QNQ}(Dj23yr}YDU;cAΪIֽNk4&AJƌu%m&Anffs1gFW242D+x񅊆<φ;(wǾkj@I4S6 '=*/(HiuFƞqp$ ǣKMİ$nnRAe*,\.[|X).Mk!9eXhѱ# NVqmaϏ -s@n7qDC، UDkHVt* n/.&cQݗTx.v XxΒE+ΞΑ3J>k=,okDU ՌRݘoQ b̵M쉥뤴Ҧ pѲjEE f`J«ۏ%ЙlUҦEWU{^Y20^1k[\҄ 9;ƭĹaLJ+x 4(;WLDY{Mƻ8C֏y'0+.,_E T/vfc8a,>k%@dT] |}q1rɴ`#ě˒?ז(Y+Sq{]9n#ߟS@<}PY1-)[BJ==u ;P4TBe{I#ݰ MzKw⣭,My5]Š͑H8!0ݒ뷲LJUi'L/15 ;o8*@^;1|G1 uiπ;fLJtR~=4=*zA?i*S>Ž%+n4?GGʪ ;[2l6b9xE8cEbNFEȐ2:"7AFQfIvoiSUݤ/mCsE21nهzSfexF9pjW+ߏ)ѽ4ti`[qTe@d2J9gpUl7`FydVAt4~0n u)T?nV*Pqu^~L 8]ffbc5[(`vwhGm4dv!ў>|Oz\GQ%$[GI(pv[E]R_w+pJqNr 5DbdV@K6]R8^] %&,Z*wnNJqZPi3̉diPynVqQӕxpOY|tgp Ed~FkN=0G3JⓍ2cuF3<tMWoD\ulOWO&^U,Pn8қCrȧib=}e*.$~dԠ83*sɴ%ر}k4I<-P4X(({<.֗M))4(C-yɅ2\6Mcft6Iȕ}TW#es|Q@2R2%soDa["XgOeqh"Fx:yIC90OWe<1}~H9[^ q~TOU"QU3{aYǯM'1 &@Y mM'] Ew"x u0qt4?U!z-sid7ڶrt{toK`և&ej\nj&8_Z0n:}rҦO F-(埩N=7Ǘ%x+7@iՀFU7E]8 B̘oB`Q4c,H%Gqo;Rm$Ft9/ɖB9ɫ x([lPeO[kղIDbxS/j["[-Kz Z yNhYD>Ĥi'~B>M}jW?E8׃wyH!T9=E^)oQAr >Ǹ? \R Q5B7˝Z/t]/s/0oJ7u wWEQu5J"8J".[ A^kX¡|E=CoUVEW\I Wt2w7taL9R}f-7a 6^9[@Iub7$4UFEԖ;[FT.T(^~v:9k@#^ BL+SAI3Z@MLhą4AaF՘bkTrD׮abM.'rMM}lD{0uMq#,b@+^;!ZΫP*cφul ƥ=ʘh;9cS%ZDd-:[ӛeLqZO2]J$8=b\nq!Zq@^OI*,3~~ YKª6PH1Q& {k; !z?|.4ρ՘:)2^ đ rpbU0Zٹ? 'l’ cScvYI_l<<2dAbu2W+/8 Ш2FQooB12-hDT}iNU:e_tK92k@ʥC#'^AR҃-rZ7/Bz>ѷ@j~?t8 ra8򈁦&3wPDƽrTMH14cێkMuM߰Q=k/ERĿ9M͔A]"lFÌXp2a@L~!>pakLr4oL#bi>9&+t"K^Avfpsq;>Km(AGY~iY )Sm#иNmDqNgQs|U])Q*үɳI\fqQ:s9XPD9_m S&Ӝf 0ݏd旄}rCxR쌎OVL݅oj3>0Si0Zg uO ߈^;^sO("ŐYpfT&YT@Vmk7eN{3HSٳ]Q)y!|[E:7%8suߩH߄\ڐ jJH$.VZyi*ؖR.mƯzNwcO<c?>PHysΤ+nG{\ǀ{jK_o'0!^"Vc;jo k,.v)麜G>Pl[.ktc9% dwW3Blw"-7=Y}+˼xnXٞU^}ͥEXRt?"VL!vDz9?܀..Ž{z2dCjml=Z&}/QT%H6ސ vH0gLQi[)mNWC8e;H{%g3B(AF50LRqc7V4dVx 68"p/(1*4`vqЙ>WADg2ڮSTY,RM@˷BvEZR=j@ذ\ ccl8#Ia,GԖr{wq|M'K &*Hhl ֎.ZgC;Ж,c[ᢰ~;6l'p|E'#`T^pB C{jT.~T ݸTɠ֩Tn(Wlbqxeʟf,i2.c=y56 \mP[MvS T*\Z7)ӌoSߘCfuwdBո 1@X6Ӷ es;Le#"X6HO1z+^#"4{TFa(-뺮zc2S\ @I݌tFt˿HPeƯ5w=q3}ڽ"l?>&a;nrgZ0  TL2c.mt K|PV.Ͷ^p_JL( Rk].[*z[!P2]xou|ν,A ~ca;ƆrNn,F{ڔuc6V)5.=!G4agHELZ5+6ẝ}?N ǓN'4o;3lsACSJm"zOCF,e$6 "i?ay(!!]lbyG2(ۤʮ|Q)Xx} NzY"ZE1ĘEw$ùb  M8#;hKp,KΌGr;3bJ^r'G_ە+r 6 V¯C.W!UWM]Q<" C]Ɲ}8$ӏ2/f=$664> _үK)'`p^0|byx y @-(؀e/.%Ik_Akσ2dAnlzӫ`_rhx" ɯ0 h/@Ǝyfx\^FrmQu.ӱv͋鸓kmiGڜV\w :4r&{.!pT:k)d+<)]ۊAK%[,V`f&j})B kزOCN~R_b`(@yܒРH4CQʌw*[,:7&HA~o<\"YcS[n*/=k:D("/=h`{w_@^g)*OR6ةMwR0Kڨ-~}mf#q7mТ!r~Y|D&.G;Ćh~0WτvW8ʵj0E-ͅ}悫je-N%۔짐 uƯ 6J!3EȘT*ӓ-mBgh qrmֿلd ?d ( Lw-K#=T\(і ց#8KИ⠲ +m*M C+ HϏ _;w$#jй3\Gyw@^ 'buT@RDݠF{_ʰ@2?3iy.0?@[Y-J`tr*%2n9AI(!?88v#QlQ} #a+P⮢ta]X Y.ieO_ѽ əTey=Ni.풓׈urO77ހpm)6A?m4h žM'[ 3hq暙͔DPEPVOq rP>,{@[$wg;7A0}/xIB =B :$nGaX]zAbLJ}"N":X3gTf[L_k|k+x a?ӹc\mZo@#6H˫Hwft`v<}J =@/|&@)uW{) yr%l.fOP'x] %E6 uI1%k &5<6='3+C:rS7ǓfT}'!0(6M/.ۧZ$7aG2# W:Jp'G4A;5J^[8\fr w&'A );\}Ns\;g3 7!sH!YNiNd ju%q7Ͳ"rUGsSKg r*Ȩ8 4~EV_9T|h#,XK;hfM,7q^yzX?K_u$.fәkm;p\@iTH+y&Y+NQgDluB+[k^ᣣ|D徚ɸ֟W! |2ٷxpmkD3վ/K~mL?Ǣ|0{ ךgۖ)QzXUNu\,2lDڔʔgIkU=XI`N)X Bٜg4ܠojc y¥#ϳjc;\ҧN&` >j14S..(,=Lon-?7*J,6l O]gsTؽ*lT8^DHb3%Q)i^[୮i8bWڭU&2kh!` JQ]gDLvY5t$6?W8~ɧ}_Ӽ`k&:+ɡG8 P{b$%[*hş &b.+bgs/L=Nj[B%W˅+[+9.KbU_ͣO=#+Sv,diȝx/NR~>zP2z&x8ٖgdǔL xoZ]^ao7 lNu>&%?oM\H 'xROrj޻x^!z$zR3+ VpH"Sę9o}I>0'l7 b+=Sd`;6Ӥw8``D@΄M XjA%>u#85~XuT}_+C Olo3JL`kP40ťDK vG7u?5U]T8ܩ k;RM3M1r^'[0_g}ALm&qT_ɬ//$Z)[/fУYaNh/P`.7R"͸ /8 ]l9B6J<ˬw.Z_x) ̸6_O\Ns5UP s@5;KC#amrKsCjĚMp;WzRRwsx{J. Y8߼"Vi)@jn2@_ ;DV&bn[piZji\A쨢kx";!S6ia`Y\17o g(9 fcFI({ M۔5iw{ m!vT!s* Ks|:8_@;xp>Sp) A2[M^ E=:ڎ\HhӱBM0b ǷĿ^0|u OȧP>S+]f\cY'_՜fLԋ̗;M/|XB#U{A}z$k:ވ-Į^vĴƧDit0mZ)sm9Cd,*Fb4wE,'nWqz bD %TkOWțB 4%hXPFQ-ggiu3],M}.܃xNѐunܞ7qgj'NWD ]Ib4F%r[#_ ¹:KHH#$t{ӱpu].n"MZwPff 5x7<-\<&jN\SrDBHQʞM_TRfGrL0) EE?ue|=!Rs*AXJq0jpXD,7;c?KTGDa(pT dKI;F r됅0--8vxC67Frm)rbw0b~XMqklӯ>ۍ)I(5d>]#Zj¡|YŒ6"*u۴"ePDlK C4A&uu}(#F3URG5Ţ{V[iqJWHcؑhE崥7dELcS]LDeVc@pƎF΋!!qyN聗R3|ɿ., i źD%yO7N6uW %4 Z=oPb#!5d"GgS\V;˰UN'EI*hm3/V{C=Y czl^@ǔOD0)53o'tf Fa 9ӿ).V0OĚ; ql]]/ Ӫty^jN3/v"]2)f2WcB4گcщ 3|n̺e o4vIjlUڲmBUYb-bKCP!v.~(EH m^,k|۷ CG/ nu Nվa[$&8Kj磴BM6"k k#ZE0}8+Rk;dg 7ͰK>ހ{~X x G,I6cL8}ږC;Ll]JPIDXPRb'5Mʓu8G%czU@Xl{6fHAtÐUDC@aqH *]Wha8hנ/[f_kZ$P6/ze% #"[)x%|I he M$ dxs{!i PǞ \< ۘ&0b Ay FEQS}q%܏,C:4 SnS$ߴnTZ3RRck-{N<F/{W\UNh AqX净(fP>կңJI ?M$/|6NQd·<L7"u2~Ƕ5_¦t=ug1*qߺ /Gka);(lPGf>'Y*+ (x}l'(Qsh/xl'>8Pdt *}QJ6L_{/ r/nqP\y~*INk ;L݁ydq%F|ĶdVMV.' Csv.H-V!tz)˘rxn#A܊B\si (3ZkFklk:HEwR?%b+@3K @DɫWC,M& v8&}rdbK)bݘr.W3+ВQkxq&." !ڇKhh&x L 7еPt|a}dG@R7SgA#P1Z#ZjusTsLRX W@! AsRЂr*I촯d>|sP1/u1 HeTX햦;^NYVQ-.M),aTrJ8}[~,F ? [QFh&1wEt@"=Q'I]):JߝJT<96)G'sbY.3CRYD4 ː㮮$d٦&4`HE˵l,7۞1.:%<8eD҉T\=]Լ< ̰ۧUtF;::''O8Y蠄^'EaU{bËUP.7kƯjw&W7\J.x66t~ ;P+.xJ:+v#Ow¡+mLM=j:^KøK9>E o-'tlB36g!ISU:7'g~ frN>z>6vFv9 AԔ rNf8?粒/mԏ&ڊfIḎN :C᪶ј44d6*S6-HVZ~)~iz}VUYg.2c[HhL8^I-1zXzɱ圁;:[d" DK`^.׉Q\s۵Vk| Cx t|j]fYj] ܰFTr*ʼnx:xO`ߎfRS 5iΆ!&|vE6ı\*_]\m-+/ML m&V)ӇAV@eP'"R%A(}Jt8ֶ x<_>nB (484rP$ d8VpkzQ5]҉a & g.wRYp3dBkQq+-X iZ|\L6Q2щ85鈓3~~| rPw ~'{ח-hIm%d:oK~OY|7FXHX%/>Qtb"cDw'72+!|&de㆐nԂgXgT BЙФ4^#kUHf> c\+ . ]n5?ub?0a@PDǯ_!/@!H?g<͹OQ $jP]gIC0@znUcAk?p*E"ȫw{r9kjtyKi+$]7n>*8T&zUo㕜>%+jSntJ&0Z1Ifs@TQWdoκ؎%'csuGߤYC4[ >ᠽOʫj>*C\ ?sh.P(L㈇lPg'?zv/$XL TKVR%2{trl2oS~BhIyuzޅKo7f=T3{Bt{?;}bP5i iPnǧ{r lxfuލ8KS^>4 5ꦄq/[66#5)clV  [B쟙rh?Z˜܇^9~6wpL7d#`yK\-,Ώ} p@4r{,Z͞|ti_']iV[om< Yq<\j.֤獴 /DA~\9YҠ2JdtYj걥ԭ%FEJmSmlQI<jf]gYKH4jǀ7gD!v;dbMӼ#ȸeg0`b~n< -!6ֳX7= FDXK'Q[^Y3;J)s'gˈhC%(X JTUn+#(I(βzx84}TGR!SZftF ws]rj؃aJ4dCCy} 7(EQtg0BKLw˒7A,dNlh_zԙ"" 8:A9*H%6&c=ɑxd; m&Ћ#nrJMi\z!NkJ\6%G<8NQՀB{rJC=P>xXt)?1!L$W3^N(X4$Tma%5/b ZZ%~`K]A¼~(s-րڼEج̚`!n b7ՈNF'jy\Pr©A'poVyDKSE^rLKG?u:g 05ܫ{⫀rMJ\}4nIUhm!x]OP gvVx8 qe5ɲs<[陼~/rPH 5  mjVX"\" aa`cWf tƆ1SOɠ}:v'QTڅ~ S&y꧲;(t /tCtEfx3U8WZZuXY\.Ё ji]P#bwAŌC{м&ue|0] ee2d 8 5kqIj(gh%cChOzi P{%UR*2NrA@}@ ,9Ϥ{SB|Gly\)im7M&)#+%$+YPա$ZZ|- )Hw`GRNCwLlPaQ UsIx} y[C%=4LJ))pR~o儴P y[j7scᕋv@9V6 sp t݆HrMP7s/?MfLM>ahI7fef{)I8$z`u,ǝx1fPAeYא#)ʝ^Ի=:TſS@F٪};?_c7|3@aB<܀d(gRyvԬ:E83ғ\]gJQ0C&Qn/RYP9 QĹ/d#M(NQ,F jM̓ƃ?\hVcdZL -q͘ ݬM|D$V~ӂZa2Ve< E$bdȗ]\eh] ͝N5pPT, m Dd2Or癍]Ta_} 50aTe 7E8Մ(7fM#n׽qm2vdߝ1,w RF֤ݞ%uCS4 ? `yTR4nCcAzNzYg}Ӏ>eҀ#R v^?rGvBt?5#@a -B1mzXE\¸R$dbUsMN;?3Dh}P.H'azw9a^[3θh{IS ?ؠ'-v0XH]YZb&JpY,PuιhjX;Ls2mzgf@=`cU`x^L%(8qa-$ݦ%̭';l:V.m~ϒAJ˯O$D4Yc9vN4OŴCP$Y4X;Ni4^=tʨMgxǕ[.kRQ{^2/"Yg"s?4a"!Jn# $Qr!sÑnv-G2v 0A/^9:7x@MR+xtxE(u/Xz1b (ӋsѢ^AWbw{Tz k%Y.6o(@1@ia.3Dkti<bo' +×ݪ&tjP@,S%Sg8Mj\[ zNV6qt8͎ɮf~^Eq/ip^f7T9!C[P2j{hˋKwJz+3c¶i3J w]YcLw$@&c.cCG`/yocԟ]Vr҈{+xlB?KzOF0[rᒮ& JvKD,o?@~"f^ `rpxgVM cqNc4-1E"uiߟ/`9a}g3 T5[$IYЅF:]-Œ/Ew]+~7LTbnN+tQt<#"斍Ncp0˃V6GMUt?eV%EȗnI@S}^٥dv禝ϝK&96h}U㛲?(!9>H.gEU?x!'(WД쟎yEh=QKjWzE5cD6jYd{hL<_-^УO|.e˾)*q3J^"upΣ`\e:jd5.7 ^_kX=[w5|{"CϯUF'өnvlx_y|Baln'S@tf~Skؑ ;{<0(/y8!jH/, B!م[lw$:{9#Vn__cSG9Uvǒvۦ6ԂIM |}ΰ^񐴉%q0)F;'x=<0ڶ &!aKl\Ԥv5̫@cM~hY5D>tQ9KBF嘖1>)KgAޖyX訙i>ۓE׶zmɄpm&óNgaC ?Q9ucP Ɣ.wV]{Ε-seZBF{, WюC닉|`λ l&VV.VB^w~6co/U=!BJ~ҙ ʻi:.XY]ŗ&;yW_ĞkTyQ^uFDԱ$4LtO-2rAع9 Qu&XJy! ʺ踔i amAt?IJky}Cn2A0R c*Hg8|UY,;\WB`.PV!v6"G=|;Ȃi\#;J.kD,oHWt&<5Q];T|l#o>!B"'Glʡ-Dw GޥѤ}f3Kn&Ay1󢢍tj%J~Io-ZͮFNGU5 Wsq&eB$_a⁐r5'_fFIA#DjxUɲ`{~3iJ:0U8ƕU4;J2f8AT94cPtȘ!,'(hHм3#-FѨՉd_zAJպKG>$į mrJJEa0i6Tph0O ^ֽ R@[tγ{8j/Sw$1$Q.sӌ ?"}c}! %n .m *\Mk&$Q8gc/_# &)x2$Eo?j0@37j-vkbS6*G_-7Sem?!ZUr]5 Y ƌ.,и!2Od?$ǰuO(ӻfal걍YNjNj7yn7NiACl ͻؒ£sg?)2aJC탐g2?1O΁KiSE!+|GbUwS NC/[4f)=!(r],@g#w*|aD#eoʔ]T$Rϒ!P)L C$[1Y.+s俵NGkʳG#A)sƜȞiajև;ղʄ(޲j_04οkQ]ntj ')Cr U,&[@&Wi=dw=f|D4gp*|BW0:va֣[f,WêՇ!qySnv2R6`XKtb4nJWd ׭=!푟'&Oz3'ecDZW//c/CF 0f/բJB@F$/@XUX Hhqkжs=!m]x*Nm< r'9;]+z%ѯqj` F QPZ^`):c} ]E{Pg`79 dH#`,Lw&d3 Ñj#zB8ڳS9r ALn_Lw7Lزjv<Ҧt#M6 (ulz}͜9(h/.Ň[,kY5 "Y(}<E1̛")m|pкm@x>}сْ'f}IK"Igv|f&7?.GVHKͽ]\QNz@$4L&WB{ޱ7''rʭAɡ~2:"*'!4NB2v8sLH|unPcg© SD(ĒxV(v<剏Fˆ#KcE}790EyX[/55cYZ_0[ c=~hfEbCϸ֟zYJAgcu\?yI kkjƔɀ23=J4u67p"0W0bt!T=)I`S+٬ZȰ;u5:pJX_奜kŻ Ǖ3mPD@Ii2jL._DȈk=*'[(LVKmwUmM؛TȧѮFVPv a [R)mEԩ(. { 5VC ĩ rSWSh\/{QCKU1OA&,5DV*~~cNh~X ꤅:] KTWi.t# pNhϩß@o)œi['d:jIG'1#Zh#|EhW(&*J Ì$q`3QGMNgHFS#L}]zЬ<&_2+WWu&}&2yt5Y5F[ ~ DlsIiO`>Oߎpj˅.Lw  m$4y^H[J3-EWnȮl0Uj}kֆ#<#gđY@1_ߋӺvfz@U]?BAB0JȬ&\&՘'w5{rG&L>3x3n;Z6񶃢{Wd/$[`@׆#tV 擽Ӽ8ҪXƿ-Vľ{]B`Ekox>E79Sd=iCg ـt4-L$VA;_F{2ZZ.@A(p,)jYQh"6f+Ofk>gy@$d h5,N-V /.8V O8]ⲀTy`S/NQGKSOwbAQK=- ī5{Oi?fŢ)cZ2_wntj,7`yQP 'Z$?ɎdigƮÅtRAۀۅ,O;^z֑svɲ σ2;3N" ַIǮ.5G#3yʃLMű;{,oL!&Ab Y"P !]\Tt.O}T Yhv(-c@ ?狁1z0rݞykE.mW.ö}lnn4P|ft[0 m{cԿPʌ,5PI6T|{ݝ3!/#GůDhU.m)TXZT2 dO%{sHbf[n^|o]UGLbڳ ꥑ\Ep pP6ޘa6` !m ~uO!gDɞqEp!]i !a;s%X4jLT Ɉk'c~+ }v0r:Bw ,oP؍`.mGuj' j0Hhf j}'mcbȖ6ڰ7+"Kb$J?Kmow#T-V dZYA乱0qJ~]V~Xkb;N%-JL)HB0/.ڃS'2V0tC=d;#BAOIJyw1cO ?g*e9`m?ER^i ќ]qU*.Ȼsz:M{M+Bh,zב-K8gޕv齕MXjF*o8lɴgFqzrWoobO\@U("u2NE]|:9%"_vAw-f%]dY5>!Km݉@މJ]5J2VaӮ۽oR~Ο9s{(zQ5a!V?qi_xADCK 6WW4Rȇnզ=Y@ aW4jEANB:iǤo*NX\*u{9#T&ǘ?mNĕ4,GL13S>.,6O*#Y. 5D6Qق`Bd}U`ZS7ZA~^SaSX*]/ıQz/`V绰Pps5[7w/8_b8ծME{uoó`.:=O6]Lܖ(&uyԿ 5kD~eOiܭPh܅Z8砶҂M{S 2LJJg1)8%H>όɲp!:m5;w[Gc|YZ{4|V~e=5L賅Dtwʺ?wr7eoWb{}Ȇ)涿Ȩ\lf;`QL>\(y|\y!k=9!M~Sp vV5nPfHleO7P}Ŵ|<eT i]Nu@7|WC:wr@K6z$t|`|ot5}R3)o!:/*F?֜E]hۗu`jDspT v~ᱶ}='[6q^ǍVlS m7!#h׏7g!88r{led$?v(C>0+*J.f1j}Kē}&`%ow"-hS[) HU:b.0un6L+GUȍ:dV&́ L@,l hՀaFYC%?2pܣX,ɍs4o2!חMYD.D &0-5gRc}_|U2"Kb6(SlxFʄƌ*95WO@ù '>ɣFxAsmC .0WN[z>˂]`ga@KԹwM9f6痝;3 lF;Ux( SeOEr; oGgs`T=>@j|S^z%/) ^Q NzF ֡ɂڔKp3/2u0KF95trwF3U*cFUhýmv`\! Fb-q䳆WT"S3*&u&i2-`46vqK\huP]R2ч蔴diu%n4Rj' /G8ޗƊܳ㵴n90\BkӻQ~S/Ͼ8@|P~k{|3K>/xnh_yIA=> R<1ba#w{(.*4NEV3V'}5is2B&[ޅ}8LRL  ".3M q5sCl{>348MeGV[`*3JɡO6YfB2 ![cOdcrJ^πcm m)%,8쑔_[ߐEgG{*RL=%6VDdHf R[ޞ-ͣtтW!6:GE%{! T&@eʚ1>kdG:r9ӐGYBGCe kK{,r8'g6W:X&9.Usr˃U! XN_*=%l\* :4KݗPwDGw7l ++џƨo/#Y5YK}?) Ѓ_jJ'%׆gC"t Jcӷ4y#]8@+hOeÐ# r!o{J+H <GfK,}J X9|+OѢjyE-|{qR?8psGfj`_`7X^]Tm7Ho LCU3[Y5rwer:cXfb|/_;Dx[4 w~37U(z  sN%gX(҃[,EXd pxXkn\${nt6J_v3"f$[k/%qbQ]Š4XxIrr'v|z`N Ϊg;=$Ï{8>A*ai^fiLb0y./͆ڨ#RIgNl/`( W)q >Q@ P)*Ǿ<l 7Juٻ!td=7$BDaKN@ 11c\:{t{ӣkR F|$ZC0?"4Jt+]^%:q]Ւrx*+ It.%"v 95+C&4Qfy#}z0RR# oY{j xzDz@L;.m TnVRbpƾa#bWSk(cb+-irs 6 Ws+qcs3>bבʏt~T)}ޯ`"'׆(|kH9憩 |%!yݮ5 =Pg`mdleg?U,C*6iX+ԥ9un2^_Z+L%2MUc%?XP qu PWa7Mb2+}K2:S^]ep;mVB$?6iyBh)YF6VE|Psޓ1Z ԤJق3ކS_N`z[s)V5&TYCk Tq62;*y+q {ňp>`4 ƴ;yW9'FpX(V2VߞyZ%:*BLOχMὡb f㫾?;^_%,ꈆ r\i=43蕛?Z`{`Y =@Ar=Wܘd67/aj8kX{,4/5=Ʃ&S~[L<(,FA= yoHVO]ɓGPy7^V٥ZJOTk98L6%'E+tֆL71B!.Y_c[EAGY{1ߌWB$&?C\F37b7S\62q.*& KjbWOI^>vZyܛ1k; K%~>FJsć 7:\ ;ÛNN&q5)5^TXo6#pC㬧'E~f:8m1ۧl"D?} A! e,+)3 q 1O1)~Y =wd%e kwA47*mUG-r$.״+>/cn=IeTP{rǞB[sػ]ᩨOkL,™|yz%t#;2YT߱vSfEv^h<3BLO;Qw}\~C$/@ls,Ȏ5rF{<~E/Zp lnfdÎ[Q7C'a(D$e-5vg8/n9Mb74Ɋ|/y8̛DnE0sc'sVCfȳwHh¾iNpO_c$\)Ԛ *.S%|U&Pxk,VVǜ4~(IR(#G4=`@w wm}6Vwaن*ʼn3|MN13dcdkOpB|:h߅ x/[AJ^ݴl2eMe'>5msmV]7DQ8M14lRS=E<`F_A#asup|Nf伾s2Ry o!f1ul946!ō;j;? Ɛu8{%1[bUH8άC\/E`䬿.ovէ4FwQ+wO{^ 3Ƈ0Q̂M>%H[8Q-C" z,\0+.# ^Ľ{ 8hCCW2sٔ >uRScj6d`1|q~j-j*Cb MY0ɌQ胶]&1k1mWEܻd]%ŘԎ$H6?k#̺ תIe'Øq~-mN߻Ö=\i0[ LZ*]g ׁP+Ϩ (.MF7zoCMƶ}?9U[֜A.$T?ͯ {OdȪ.ʞX:H.bhuT;e*.N9,o1bE*<" r/~-/ wL'Tko ?{nB|:[R?J=xGi7!Vg<#MbwwC^7 ]Gj(VbI>g=[Q-R8dҹ2':Fz7z $)4S}K,Q&*tӵزp/wtP~T=V7Pe@A~n$ sUzզwKN!|ePl 9T%/눸UaHWΌԀ`ʋNՖ' ?÷U]f4h 4 ooI;5e=4iէ-9MLSn2_BݣO3ߒүV_B"9S1)D\PjDCjWpS ^sV7t {~p *pߴU%vS`bb'tv= 9%R-I29VE1=#L ϲ zX.G֠n*8#sz$(KqPFŹ8>xf NgGZjy;g>1΂r\d&~(O7T5@:猩 u$雵B'ql粤u2 K!*AP5R4<~mxO|C34hH6Opx_݈{WM>_bg3,J-_K;V~L'SR 9 o eT;4A5~[|x a ;4r]YC`?y~.Te!gJ^ܠ89 kIȉ,xKU *ՠ |. d}QJIUA.4+~n*f -uI ^)z@)b 鹙;aDNPΣhQٍxfXɘ8Y1%Н~9< V_XH}9U.گ~Ϲ4 Hr9/ޮ)ĎtuiE\rhw_a-nu,)EW+;JOcJei hi}\t1*JVҡJPh7 ?!v.E)nH7&2q0arX]-_vETk^Uz3Vā&x\3RѶRcgAS Ř5}!R/1n kwDT'5{>who%{e_De)by?pW?Bd$.u29<&nDS5sItTGe"/*y4:ܶM yKH*h0soÌEtdgC2vO)#JX?L]哟2pY5Q -TFQ1l9jX$ DyFS`k-oIM7'Q&P6)ݗ$Aw lk,m'R%FS`U}_(3DQ׿YJV$IL#?l\do]2(L߭<)jI4W#9uΆu.C"/r'?+Lz(*3lxxjwQb35{g"$qL=wN|Ǩ̼z]=l*KCZ̧GPgqV""ҊG s f2Jl&xk0nh4liӿmL)ʼnnټꐑ/;`(tT1a Z'IaAE; :L"gɂ.@w$spp݃%SeW %D.lؗ~8b |JP9%:uY%|tu{ңC;Z1`Qhfdym+1fZ ' IX{7V S "8_`ֹ^L=Q+lږ:%@˿ר\@(qh䰥~ OC ԍnd}z<adV<H; V-Z:Kx\%Up'ȵqd"2X+wYC]@%ڤ|G?ϴsi5"G)l},~b6h*mbsb0V$=Ii(D Ղdk LD:If/h6WhH_Ayt !mzkg*kWeXh6y=$?Z$V5&,>rҗ}K} _ ''`Ř}+Gᵺ-7dh0bH!#>cI6WqđiTO:gq?LG]!o;;/&xhX?k 8jlas`!x{.r$#mDK O.wE1e``vH 6U^[k ?{3idn.I7"qkK<\{3WKi\ta ,CݳM"s{zә k`fCe{´,;zE:T/|G,2 vlA8L6D(IvMD  ,, rT (őʗP Krb-EE`'i`40dA%ءBeij{mXlO{M00 ~:q)c#JERfI% h738I~`v+5X9H3QSyz8ȝ\tM[= b. QL#(gL֖|gTk76sL#aw_T+J%dj߱cw6B"I/έur1Těf ,˱V^X 3"s=tyfmu_oUU(8ØBҖZ6L++(.'ci(0!L;yot8y8F uY=a~}p<>c1;6l}4ny'eDZo-\jԪ'z蟶]t>D ؂rSϪ=3Ytx|/59rwC#LamBr=@;:w?r02\⮉@g *u. (P9 FמpCDXDM@GH[mx?1Y0㹗, wrCɺ}Q-s vV8,ȔaL_dRC e̠3[#p-`ԭpy֑Ո5Ʒ. p)7opTbCp9u~WU;yYឋmҤ`{C7DZ..0])baFc\ƽ\L/@սGkBUd`R#98 B"o=[n-D)*(p1Յ1\% ZYv LngtZ\F榾? I cS=.h Ey+vrNK2"ВeS{IFϚT%〞:2C?P70 CLIM˽-P巵yYn)hBϔϚ~r $UGWKV(|I ^MUp:yEC@dFp(~c*$Z KXN^ʓ 4Ę(R9,]@9gƩnpOPZe1}®QRxfj w`)Jmϭ~%ZD}C| txF/q}({@ZZ]nsyk*z<&|HBCyAjZ"x5 T}o |dETsegRy5쮏Nvg6P;qίMW&Dy/ ;rBM9dK>{Nhj}!!LK{VAb8jA o/OD+^?))C,9H6e)/CA0L91ѝ|1z"u x-P:nSKFz3H}sp%0'K"25ƭCM A+;kΟ0.a Ҡ~O  ,fMtl.TI:^޷t-JkJT a9X{58]赿k$G(Gjʌ*ҹ63# -N>)+4mH| "f1%=4u?׳N/fEy5XKxvluBu< Yt oAnLk=.\%- ۢoziWΊAz07X[ԁ)E~M[SJ|ĪyWDl; V= mB i1ha 7$VC7DP&Nҗ+k"O_OaNY[M,L=>ܱ#'U筃w_9*5OV0T:N$#kƆ 0Hp;b%Bs߼jO]\07X9#LkuXʌ9ֵcbB[AW2=Q7ȻPg6%Gزk,n_}S ЄD E]q6ip^)HQwz  ?ljK՛ j~':RCKI#գ9 o{sܞ&@f{*iRp͚kU1#J,Ue^`0N}Z=ѤB!ѱ ANXP@ чGlZW1R|Z"wA`[U|+ q>v2,G Em6J TH+ף mشoA 04pJ5cd;3Zz$Se -Z(b²FH~"BƻcR(@y6JpQJqg cDv"[zyvQ؊(JeR]hZ#:P93'6%ITi{_]U=VYA#} D2)y@_):~De =oUQCֱxn-AU9`ra,|#A2-r.vLi'oUAubC,~;IlrfO%1w\Fr2*U|jBb+t$,)Na_D X&N tڈ* ONûآ؜VAίw6w."9EːG,iz# G3ĕ!kJyB GRn(J 2a tF, T焥J6"`v +zzInYj̾}L;Ijg4 ,+S<uO#Ṅ7rA{>o1e^Q+$~::hHQC:}/-`ǎ~̲954{})[mA TzPJ2hLQkE+S@C&(O&N CRwdx0D+KZonpgv4Jw3yaLт1cU׼?8O@,)R ,ۚx1s qI`-k#d6MQNB͇?%AGA1R-WcUN$B OIJQB葿7s=Л@=0Bd@/5Dm `R +^n4qhV[s6jP4=xi8&E "E~T:3y.d4߆TkKϲs VMnl4rú º0pmbKp4=H+ӿ޸NcǬ.dcxKL?ȇ(0[5ۥVJ6 %RQ*,npG+j~{ƕNқ&iQ a+UxKs뎞bCpTlE=مUqETR/J8*3[^x??HnGWb #,g;"5~;SN?ܸu C8PEs }ap1D!upW`v~Y(!})WN䱫9s613 ^=Ht{sְg}^'KB|H02P%!]Ly@5f8c~Cu4`K`ʞyDDDLR^VXkll~טp)P܉8/ǾUUcѲ\?c1zdBnΌ|Zr-m chS0i \Jf! /##5u|U< ANH&E[OB] ӕ#~pL /ٛ#lͥ{_8SKy^P\Q&.!> Z _6ԪCf 8o0J2 rRO %Oѱ% y:#;';-h UUUoH|)eK[$-E (9yc atV;I*}ְira6+-g5igv&0v?DW,>w"khG\'˪laӁaBL5].)ڻ!r`MqS޶|`YǥC+Vx^ߣtG!%"sӜhvM58T^q]_B#4JKaP':"R)Jc~N7F6h/SWëCau<*`My5vtW#늴a6+KAqqb/ҷ?< #,t']Q iHjdHQ@݋+0):0whIS6%2v $';tuعfj1sB Eq@Uĩr2P2tP:okB-@Ğ6A"XCǯ;ÆDfx\6PNLjC~)7\V.3k/16>j״?Ɣ)XvMIvӯuQ \S&]J yNS$]""gK<oQY_{|== TT 6lg#M}+1%#sUʲt^M6-f(1c@CɂDھq8no,y9 K(9 $>O$P`YT=1$d:1"m, +y"Q$r_u?|yNScT^E9]-ՍhgƮrAEanܚ:,D<),:C3n䥤ߨĞ^ruiݤ^˭O7Y KĪ( O S<%CښK*rsUU[J1CwF `$d-qdꋕcHGؘ1E"w^YyPm; i#eThwPug|utOI/l]Ecu5vIq#nPDdK] $xɻ ">MK֩KBWQ70_: _NnT}?h6)qpс̰?3mbZaVn &x %ʫjKu*UvAR7rzD Cvfec5{5H4&fNQѓxXNVM"6h" ; ?a\?䤅Rww78oy3sH5h9hWJ@$Goovd-؜XFK9kl珔UzFgPw# ԻBdʼpgF 4q9&Yuv!o$J~0W/PۋTZlV@b}ӎD-R{K&*DQ߁ CZ?OcOSe9،f vj2ж< ?VkXh(-1'5 ƒxk=4ot UU>F-7=Ї }(%Rُa}wӯ~Bc\ 1uk@̉r=J/Ă/ r_skR tV^tVurT۫aZo@#%07T7YJϷR[7U< qp) J]xRH3xzEbe4_r\,lN#"f Whl2Gn-%3odwgԃP}" lDwsW!h6ƎFĀ|mY)&C$ǐ [_Y(D|.i&F]}"L~Sw4x^lk~_Ť~]&Kw>kɯ뎨ʣ8>AK/Z'.jR&$Bzs5Nw $$ {'.` [IFBAs4*'QZy{̯G zLcFȷY Svj ?n F| J<>Q2wǯ|-Ʊˑz39[?qR7 #e[H>1j&-p#aMg0q h@%PK'yמZf݂b3u PNK{o3 SCVȂ%44 F)Mune&\af߼n;a 抌w fv-s-!ųĎ;ΎJp< خR"S^n46267wWݬ89%UJiW.hk7~?>2@ {!R TWfWZ(ܲsZld  0#m_r"엓9"9^Q^ٷ ^IBKՆBVt:5卖6!k-߬I^[?߂JV&tz,O v OV@vj  ;=) Tt^]2J4sdHt7:M)r#eW.pte]uD;8#ojT53;K; u;PSr3( v~%~٘B'Ԝ/@>Fp(+ʣk=Q ;0jKMoG@Gpz×RYޗK NajץLEA>%-W.&QX.Nn]?*7lQnR8GSΩ jJƼ{pSPz~ ;vg,IN)RB^ZKࣀWp="Ʀl2$hۧٲ#3:I{Ej#jM12LiMN[8aW HTiw@Aff)ƆU }Lobא*N =MjNwNs-(M]ۃ18~ w2`&~V U#ipJ 0bA5ο;?4/FNz@n-6+*].&e` /w'8 ^9kq? JdKW9GA>|=?BkT)(org7O>\lJ`,5f6Ii;]Najbvϋ mVn{;:6i0aǶsBZ/=8iSė6ںΦ-wm/؆.zQNu7ѳ+n!}׈ 3,Mc#`I# )3C ԼJm[U0^~n_ZKf5VtWC鵰{ddU?\GjwTּF=sNMje+tkKsI38=f?o+Qȯ{d$y ng-ɥ1Vfb),L*OR)R2Dc`]\-# 0&2gH~kqN[sb*1\s9EYL yjTJ`EѲHuW*땪OJ+ zZx f e^wf/G4g fl枘13_yGOuYldSn]JZ>~:1DEWpeT-*N/xOҾ/iHr/k{_! [!ܵd!6ռ8 ?PR;U`7{iz%$1l׼2f8n"!𒊫ìwo`Q{+R챎`خ$W8{OS6F+ @WuSZu؞@P.&qDE-]F*s6)gP:/[JO{|ݎ޺%/lxx$qw );\¡ؓM)*T\*^oCPJz/,OV 딹)ܲ‡=>%@8kTo\`qV;;ap_a5! C()j4l%5=9 BVFbl@/d3-Q+DI}] `.}cd\tIr_x]?raTJJ d|%v"AohẐįgD^M~ DChyܓyQs|sFO0|[mðZۨ|{CO/3E!HCs_5G tB_d7M03߻ tGo[>i^]2%SGxi( \2ORHs 5r3d EJ>bBsx>?FC~{8_?32x 1NC9 /h )TE]QB0#tջGA{۽<P/|fag8kqz}3{H|c`H3FpVKǺH|2&bwgu9/ҕ29 F`T _k&@!5ʓe:閺]E*ŝ1GMA @0 *`ȶ:Gp՞a G8.:=а~M;O+ǯP8-ڟx_O^Pj_C2O$Z.niD9O[8W$>p#b8+ZA xTlkAir6J\sRSV "|(]ʹlW%̨8$ 㪵;ڪ,4OeJ, =W,z\":@F6Ș8MQG->c 3[MM`"RAQbWEGƯ2c5v;/ڇ}u3.yWHl>Չs5ʡwTG\lV"u-кIwRY"Ve\=(ֱVUx3#APsL _L0@A22I(. 3 4-M.23oC#u\Z`ͯ/:K,g¯{A)?S H"t M礧amLOy#&ns36ek׎i,. 9dQ*%Կ@A1e~j ɕG~<9FRUUM^!ԙJ6a@4;Trs4@חԇC6 2y\grsX4c}w,Y1(_f>Ld,ya)NaP牞h?$+I zB*`W̔|)sV,-U咯vosbWb"g*t `b ,ڙ}ke2PceIrf\kAêr•abэ>#f 2E/iϏ Xx%rra?1m?B X/bKlk'; :7֣?I',UowcT͚dzNM2  Ko?hDd=OY!\__ݮ7<秥!Rdt -gˣ ёϓb0;n%{?H0]<%^O$iGd,L6hL4?F%?'yЌ햅CڥB<,jgzB=6Y+ߕHERL&c֗8vzHNs??"^$^(HR)RgNAs}M>kʷ0zX7z/yg̽UrNɗI",; ,y3mZSMP=)]RR$Ʈ?ޯL\^<EAoba2KEɈ?˃355gOwB _H"eeoV6vWJ'>,܅G^yD3e77f{zHFZ^q~M=T*2XLApjGú{jP엲hNOPyV'Moi@K(l6o80LBNY7&ܝgdTvc$‡TnT5-XpǑٝќ,*lc8pDP/[1௞6ϏIQ''Wn`ІزމkE*&Y$ckx/#7o fUYv!sBڂH|`O/9XQ Bbq4@R͜QJēlzI3!-k5<4LMLZ?1Gmb\$n(UO?7hʍD~v#d}F.6(YpGbt)Ѵ8Ůb6Z.QK(SOˮEHs41_W:+7b78cw-=YmwThʽ_ و-Z*B}WKy-r)$^^5#=!s۵ e^o8Lxh8".Gcr,*RRlHhoZ_~'B[  X-=QO]dZ=!mEʯmt-(2v2Mh Юfp3OY "}PD Enn[_!r!&e`7% ^mWd-TKOA~^<@p0o.dAP nw4ٯۢmf7O^JZQ}zp- ] 2[; bG➬G9Q'$`U&q] oPTZԟ? '3nzY8Z#?JCktF4_ fWз|&yƅ$ ˷Z t{h S4ᇎ-qi`'yW2h : TY:w"C*A!h D^UyX Be!5LB#kHďtFbzު)\jvT m;nΑʭVmJX* J`jj2`7sL*Im߯u߰ f4 &IHƥgq"W jS=ms @d2^F6oj\ W!z<*5Dr5@&4f%ؽ'AU?m&Bc?d7 ݴ_rk=>mBGYy[y͕V]#mIC7Lߩq-\`*#ͫ׭L*Ak)+U!$H:vv#{XPRb^;x]iOA<lxPr RA3R^/ ^x;qoi} ׶'B2 c¯*1T',}t˹gsrO&J/! Y</uǒ>gnj!G\hp/T*!Jw-ɫ,ƪЯW3crvo;? FK!\G}wumsM!,ul!H -R3V]G^YTo00\-;bk8ѫ-{離D@h:h*!T_>⑜T]{53Jz)L[%[wwZTg>]B_/)WSEXuy@ȸkkyn2bu~1YrR_LzqT$]9ohƄ)@u"#=%?|[++Wj$ܬQYF^7\]Iyj3Q;i݈H5}Qv]%ɗƣ$1ݶ:lttHW؉ 8YA6@6.Ū!kٕ4(Vjvc-1?r2!+5C죋x>&Ung3ь4؋K6ގ:!*`>$$^ZZ8S})յPwvUlzz |IY9 ŵF,pדE]#"+§-fu-*__!+Uqnst܉r{X[x2;$l@6\n#ձ҈9Fx;q ѳ?FZH\cn].5WQ"%io hqW< ~P|\]>sE>ǹ44IfՇkf]i`TSf.S{R"';8qX#PzU[;&DF .q_Br9'&v W9mt,JՐglY[m,JoZ NEOaGf/*Ks Np^G\KIa]^M!uHLԙ"nۃXTw)MwyCʹ{ev54}rj 0m,i92Y|*OkL\s}^}wW$ÆcW(PNqW?H+(lokm>UbY>9.i/7L%حd,&Zǧ"qLDmat$vD_ѫʢ. Mkm[@:& zLbOFaEqb{ACVMbOݓL,}CmCR Q-–bOGݤO|##u]--sf T$k;,VgG .[BU&s-0ZucWʔq(CU=&m6UjRW$*Q/l(Apc!2sub7o46 eMyk(s c$=.VEo>\RpߠB40yPsն!}"PߪT?SyZK.8llZM֩ ub>CsZфC H^"<ֻ3Vbsy-0HbgM;Ό ]3G:2BQm"+FilVMFZ u:[Kp63Zf2dVzQSڥ1ePiM%`'`ZRA9Zn 2O6 dZآ ܨ #D-Pk r먷 D}~/Й1O!,&.~gze5GJKIc-80/yƾ]qQ(u'v'k!kr6GU6L_-McH"g96L]LSAGE5[)ae m9mm#Bx*ºo$)Q oQ%e៩؍0bQ`H и _Pi[wCWtHkOenćȓJ; I1V7 j@p+8im+N';T)'\{|g@SoZAAv{d@7= *@5 ?giOC -J>O8Vhs]9v#ʎf:G3َ ܡ@9KŽK5rVn{Yu !bv9q=/˧03-Ƹ,K)'VW㽿Tl~R)+=ѽ- ñgqLVƩ/2r u4 ^DLj"5l%?b)?![v<|hBEה oaV(w6Y3{Kun2ZKYMpۿ?ja4sV0O?3yB)blu(m֏MB]\?c,A:sD0&dj2~!6t9EKlᵵD+I/:`1N#_mD8CSVȄ4U`ܺ˛iD2ތG-VkOsYdž$RSQ_5j痫FgX ^y na) UxVd( f},Fi^0<%p]ad;g%V?)q0~=)G&iI;pqrŸ:ߝbҔQz´MvvL^cjQߤܥQP9E \za]9"p1s1)Nxyuaw z9K3zPxj :wdFiY/&/90p@xa&ϳ+i튝:JqmhIkʁ" gCSrF*@ﮇB>%M3yݡT_2"/BD5p0V=L@ e0syS! 9WI]WnW^kKs%~& dqh7o+`%SiT? mmL pda$sw 9pj&5uF]zxId|]Cg2ZI_T n㊭V%$)RH<xMx}mn5HrW:: i:5-![p–7^U)V0=AJ-UkKeu/ΐ18$>|~~GegݟOnw{qI*[ Cw5G~ ibuTqJ,*i YU 3cn%ݝ5B{q^ 1PrVw9ԯsI3f%&Z{E,X?5fHTnWux@Ig~;}R6\Q+Nq#+QơHכ8%qkP9`\s7ЊPSb6?hNs,tYC0(= ~SP~۔0X a+&cr_1XōBL{S{Ӻ/TԟPCwlaࢵ|5ίY3ǔz>Q]UytƈvQ_WYc9?Se$ 雬ej91oQZ9NUo%آ$WDo >}v`ZS@&HHzҭmp?;*I#ZӨPO8,@8CTڍkcdf>a,=#J{zbEWD/ȄEED(A +$z|@06<こXUhũ ] |8N§ФHDA ؤNT"i4{:Ev$L:G<@Ӌ.m݂hEeKUl%+q8Ô'i8Y~^ckI>6x cDa(5@<+y$S|aQVQUfNf 2|&33^Og;!DB' C;1{"%;2v~$"_l.Ғ`o81IG1KOPB+ϱqQ&o;sѶ!<+Z1RS}^b˧<7LP\Nr@h/d 0yT㹾c{%%s{r{y22_<5sTdd*=t} ]$(kݪ V2b)-Qjr%d8tb=!KAB3 ,}졀AJ%V=ønW "9y+!k:l]lQDxvc?tk30_&[s >2ҝ8GDD4DЋusnW6nM~\9ՠ'vQY]}S4QK4 a~E1? F5j{S@Փ)n ݍDmg7p. -/Zc,Nn@fN"$OCQNE#Yxe\Iڡ1|9F7ѡKKK=i`W[<)ʰpb ~KtiRJ+. +>LSב5)1]%~ 2" ?6uIE蚏 Anp GH f϶z.&EkU-L''N/dk`Bɍ=i?̒._mi$œ+ Qj}n.<'Ng)AoȹO_deluMP's$Ymd9%ʱ1&ȝsx:BY7ZY hїMvoI'}GTxq&ɠVs;OIle(j.s$Cv}ݡ2+ Nxf 8n14~p:鉶1HE`j◐u\ u{#vW{vkQ{Zp,4i8TNs8| u at@OthWSzA8JņM  t M%n}5Grr- Hc>6c q͝EF1B0&"[$Σ:"{xCI:o+ syg׆i )1R¶Yw7L*8΄55VB5.6[ɩjn)wp?7rY G>H KVmp'u 4}X*ROn%hc ".fūhl- aǸ٪@ɯ>oQi v7qщPe:6~W'&lpm|!Fu-$y 'k&ȭdal']EˆQ􀉩lΓ*yF$ `?xUG!7]6l;R'b]. ؐЊ`J@ש6q|AE@BD+9Fy'!ʯf`jT|F&ZV9Yw0Ȭ`(ܖRe"1 >*ȡxS ٚݮ#@ԣ[v.^6&@i8; qӇr?N)&Yc~Oh[ӓMP+)0ܦqb![Z-S@z 5̽=pޡFR1,N3|wl.肶C0JePUL`6`D < A~ |!-Skow@iYV0sP#CcB%~uBlHp0sE3%vی<Itwhz)Si\Sӝ#:CP9 E2x>Ү@5u&o;Mf(%Cf0nlZ3ҥ7Ѳ)W.P“c1xEB@Њ :.rpQ$$ɨ7 S7@QH/%%V*ve@yY]3MZ;,w 5[M5kvx.ļ,NqMtgՓH;0Z>SU| ^FD8Bt&';$lsxaq0?ȸcTlK7zuu5'ڏ sSi#gI$f.z\@ h@Fc:t"I`Hu'[4iB3dIdVbEJcQPtel⧬㒻/&eۥ<-5h.>u܍[motTUB&wJbrII'zb$yiiݛ=DS>bŸvW+ [b9dsʹ!eг# bI|.衴Ԗ]cWc+FFRX(S3)L0ݠQIip6ls7dO>ȷUp44:ѷ+9s7*a++1$@]dfl%8݈XATWĵF.$fۨIe,è`(.P^tCW1uz,{qB<7H/uU{WppG O@"8$K\Irbr`S,G*1#΢A,/ҿNh^ & s(BzߙZ^ޟBc͕% qDY١R R=,mKZWoXydJSpAA tApIo^\6[E,>%?R [14<^>Vެ8 ksWlCuG?\*K+Ti$u!ac.ي_?N}W+Bny(wB@?#_*Sf.7@uސw(ē2t#A,"ʇ_'͚)}*L̜ Fj^݂z(k!wIF#˭A<õ櫈[ٍ^WB}t5EiA/z[␧J>R&҄sitҾb.g 2Y];%l %!ge[mXJ#?kH~%Y ,\o/ۄydoDV:D)s3B "#08^ݒ3< mOžS9kI)#rD wP*ہ<fךJQsU`%܋gӞ{v@EN*mI̙&Xٷm1{m" mm(N7prWWWO}QZK G0h$=:.XtЊ[q{K,D9]+"0a`#iLQ\ל8츟$m[P03yl0&K1gKR RJב2d oڄ[s.r YUP'֒ Msq% _ C`ͭDrKP`։*'o${0W·#2AAc={{Lg[ŘkFx_9~'FҌwn !}RџPR }4@ )::_{Kq*Ҕc@g7zlE&""g0CJP:GL ?@gƍvXuE.emA#p] =:-ƚ`~kT/RIl~\bU?],uY[ߙr4:^J3pz*4E:UUjOFze`[&o+,N!͈͑rH<+q5's:dpKBά`zZ\lRQq/U Lа7h3nsÿW@ȡZdBkv;v@r[`\6JV fYtѻT-l3&[hI̻yW` i CQs: 4~*qG x *:TK#_1={~I*5W-%:MID]P~7N{<4z*)EhY]fR;=*32u5>{ Kq^#X1IYί'n@*>~ב=":žĞ6St l ӷX]!4 ?NǑQ֠cKf/Ԩg0]1Y Yn_o%>+տxT 7xVaj9G$ s$:V2nF6<4Eg2lGal ewEm^`m:F9\.1Gl]̸V/%n{m.nPG+-KW 6b[o# /2}EWIJN%3_Ҝu C725Fݧ7PY 22;h}?rnU$WkbRkMe5 P2n=NH5WotQE )=;pַ79[dfZŌ֩!=`X|k,ܴڜTaCX d]}8>OG#Ƌ=ʘ pZEB}W,5<$=ljÖ xok@**wPu X}cqᏉR)YI3%Gpۦ |N(Q[fOmZq7+ߺۣkﱾ ̿0bƞdoF8ޑ:hr>bt]c J뮨m0a *(5U@*k>ubH֣$jT,8rg ;P`=| WMv/QMq !/3Ny~Z&6 ^ZCBuLweoEF5lc3p>G?kaq\X)<%Fsm/SnXcVaP P@f[E< ۑN0i|]5~,eIi>Mn#"ŲH 21U~<*y ]x+Z5ĨdHo:9R|A]C 4VUr!(XWEKEccq0qsxYZc˿SK}<$(Ia-/F5ˤ16Ӡ~_LLNuE#VOn§Dg̊<yUYDm) <#g2yơۛ6%<\~%mв6MGڢH; `:О,~UBs =4{ &WaDyޣM͔#m[uC<ѡu% Y:ٕ`VUx jœ5uY 1|\ F}5]ꞽyGv>0CV5,GSN~j,Q;޺X[I0;l萶`'AS:? rG-WGXUwpw) S2:4:S^\UV1#OnWxNoy%Wp#JBms;1$|&EM;I᧷#˞E$\Zvhh$XΛ1B%8Af?@P~VQ`ݪVe̱<@Wʞ79nPN fP QQ@놙y!ieܞ ZקAփ]*D|t_r" *.D_,|πckk`QIMXm(KCADd5xgLJ$|yE78!.QeETe߀C.s!1Q…%t/nLxk֦.q6Ӊ X)<%f kN;ڀJ46̉]bJ{0*c_?0G`B:sHgf _9Ԇ-0 ̞!bhx*=|OdV- -Mڇ ^Jz 'tVl:Uoj74f事ixEExR#+t e>"`Ӹ aaq[H Ej?Lbs5*C4lO儉]C8H&K!, Q3{} Bl&s8CshB7x*npQ˷02^=EG. Ֆֹ&:v-!=@6w#zѿWh#O4.BW+!vyoOEq=a`܄| uͱ`^/O: 1XTeC+)tI؉?"WJnLɞ.$'!Owd=![%Q(\$Qc PH m <>曟t_"УP| ByeMh6L n!SN2L%9`E~7XC-CTd)Hd-cJn6&A=hT5Κ%w2@p/@G`Ĵs2wj$.QmIDQ% qܷg3(d^TRJρexBiH"wyv$%( 8gb2"qồsSJŹ!c{5K:'. 3 aG V:QWηu4{=996冊=W"AP2o} 7P4Y\̥%>7.fnҗ8_x|e%+bMnX*;*qAS)~ௐ7pj}ZeZ c\RFڿTn9Ф@Q.um]I*8RNj6mJēBhLᙰvvB+O'[掍Zly(zF-\s,!0V)}Y<_քV?1<2N=QZŝv:h_XG[+ė22!Uh.^Sc%Ϡ'5E?| 0ZgſG^"4k 8U*N섨8 *98cSFDv+Sǒu'M)ud9+s# -T4J 3P &IQ7%::_ FuÿC3^,kgL%z+m2s.GpbO`gyfo[s7mVc\Q, ^f_i;j*>r /<|7=pkd.:p,i08H./J:=HDOSp`"k+bݍP"4LzFCwʊ&$8AĆzzJy:U}nzYneg|'d.΁t5: 60TѸ@0!ېݹLK_$ M6Kk|ƒ(T \P!<ϝ \P /LQqY|@|pFx}hݠ:m6]׎4$\Bzx[KZpSҥ*M ] ̂b0>- Z5;c(Jq:1!Ao#~$rD`@m籣ؓ6ʌ;[! #U ʓ=Qc;6i$f@!-m?Iaq6;t׵U!*֤oqQ^Xybט$d:>y`c+[yR.Zl#~4)DlO0Ya=,峥*Φ3rz9ּ5zF^WDrU[Wy.ttϫƎRʻ>˭\= \AzYb+vʯyoČDᒐr:#*_#ny$p_')A!0uEf.$j! bn9bfi=AD ,cq"LPfRwWe&ZSvVə>zWY{tJV bhx겱POtϨ_I +3sQI "РׯnKYêzN(:`ޓ9-S,`)ǑX䈰)!8IN2 f (~()+=7OzҮڵ> 7aRDnؠ>s/Љ.N[#2'ev/`'6b:"yS 4gCS!I:^b vt<_hkT5mf{n^. J|-'[%0taw,&~M [Zy¬o>Z_v_aV AKhvɄi#p_ 1MjKI) y@Z%̎G@}ڂ]ߴ^}u;l`x`Jp؁ҢG?DT-Rq(oۓ䟂8FRN%L bL %)50!n:q6_ޤ,\%"5c)F%r-op8޿bwy+g ˄ 6d:C @6s9q`]̄kw1MzJNϬ@^ "NE!ͩx?sՎV.gm,Ù<ҁHD[{^3<@EbMvM_GHwJp7RZ`Y3 t!%7^E1f}}+P򧜗aidbiiGxDCOWCxLx]_\Ҷfd4fB(2" Ӻ$>[~@Y7cG'pK׉fK<T]fߑ@mz{*^4Õ(X9|aiPEJtН#Px5˯o؎s]ʎ- 6 H4b$V1U;U(rY٬ N͌.A`$%|m EOכb ͝#Ө~?@Umw$@蠣#4܆Ϩeq{ct,da'\'a;JyeŅWy#9Z!Vꅄ$eQ d"tz]aRcqeh4hPR.d/ m:,Lck"%U|.?=ѕEYgyX|-Aݿ=KY[P4$s,$/e7'#"o$-E-B"p,@(YT Z*:jyBWyTfW0FD;ti? % {L6dp~C dULjY$^bbZI omƾ),۽dyʕMLA&bK]#~CǓDZ7?>tswVЖO? !/@apiz zv3VyBC2M1=Rһ9 P4W+7B9ԟlT1_ߛ0+E6hX߇2 ! eqp x>zb9ً]nM^󣥍/~ڐN&ip7/u.fZep;T Iߞš='pRwd`fF{P}%N1ZGBRw<O>u 0* YwRb㮕B)J4s{{Om?n;HyN+T)Lf!F@ @w4 {u%'9ڶO$ix#$-eFW >+Υ8lYx;wV5ďnG8qRṿ+d9ZrSDH"Fh2vqI LUYtO^]TXt~!l?)rDfFٓ c]NF`?Y4L)+3eVr-6Ur1=Td"xk(a5Xcc@?: 5=Pć\>%@'&/%81\r<ӄQ.VAg50O+_7*FHrK:1V oxg+.1kK/}GY$V%0˘xd*0 g\=S b[VId:He?O1 W1s6P@H:|UCe$ HJ?y섕WK>\|:??.3N_V)FX=Y.hs=re4hIS26IWPx4c\MSXlIch:eeFɄ :">~4V„\VEg^vlnWYdr$uQ7Y?b'a -P%Ӛee>3T!i=)~K!/@Vט5YtwxcAg-y.Di cT۹}f#m^;~vާ+LĄE}I΢}N>T%OH<$rɻԈ)6`FِTd0xyA6ZD*+zbעiȶ%$'2Gq>H/%y\!Of_j]*Q smn DM uj[iϲ7*̄fetW0k(Q@ jk֝I)/%fO<)NJ8hڅN}Cb 8?uhFE3*eSD ?{5a5-)EtH3A]s`1hkrNϐt3q-4Z]ʘJ ě7@nyE^wm2EZ[ʒm fijgw}8Z+!RD+?)aR6y߭ |˽]8X,.lT1\%=ٞj7zs3hw-m}" ma(z>_7\v˶oȬ>1kmxZ'\(M= rYHCsRMmt^Gr#5ρnSWIR ~Ԙ^`M7V]wxuhS<@'>?-HgOHDsRiΝ:髨Q"8kq[zX;K+ vu>V|#7+ MS, QAOS&#Mkl_c[cI2MԠ *R}gB^EzzdfƾgA;WkY]/-sW)5Zl]ڧ"{X- aqezU*HDF!k=`%a|>gXBƟR1ԐG۷0 Eӄ f1"XVJFLȍ= FU[ FeL&:CqYGp, eb_t҂ -%E2HLTv$Ąs0@kD ^䄤dN8+=aufd9auǷD(RWؒe:A=y5iuA D{?ٍuPca|tʚH w0FwYVn~5Q/;iIKHI []AhUS_ñӺ%RapKAK mkqVt8D_ҦVZq"fM4:\EJOiWlN2m"tf8IG|`3kؓ"'24K"nn:8-ݍVSX'@$pע訬hwMsY~ C 3򧠡j~GRw~5IRq.?5`$pɫ5~3܁jR*/Px;ˬύ*(PAAYI\] yTi - B|Mz6N b&ëHeYnx+;!"|} *k2U=6X³9iA@1BqaXw @ayT7QOh̯Xqd }_ \rɑQ K5Hn'K!s\ˋxR$z:4hɧ-Z>odaJjʖu:{=kb g,F 1H0ӍݪuDf,OïYgos0>٧,]֎B8vihK g1lW. NU)G7_Ұ%sA?TZ@,wK$y~&71DBD堉>!!a . Mq0kz75Z )9S+7 ?a!)ZQO[kO=߀Lvhޮx0TF缩9]FX&GIfם B8eU)- 7SqՕ!+8EfgCp߻%iS9M) %3S](>Jt{ vcj((kgjU^)G#-|Yu*C71WfҗU|gS4@f LoЙͯD֣ EQ,k#߯.{>F[OHGJTOD}AJok4H^7?!3_!$CCJI4˙J{=݈Q0J4ŋQ/ai\]Al/|f=;b̵BYP6 tZRǥ<"mbbӛ E+K/mJ fO֜<1/u;$sw[C"i\ݧG.tۣ:Qe]4k37El=bGfK1M8usOk+[Q`x"zv]cv.b[h{dX@J>Bu,eE04BKa/y "_rRf7l!1>{6W!9QΈ5閝Gimnb; i_{nB&yM&91`ZobٛwYARb' byT7`JA C ,?Q|td&OI2ጊMR&a OoNŷ'Q_## 1tjg`1?S"ӺU/6+ XrMAuxwD)+ I;# 0}@Su@ _JXuHsjjhAFp`]/d,Hg& ==,01 0\\+hHʭɢbg(dqV+Փu>hanN"vS]ʟK;PUEkF*WۻgNa?Lƚ0_f W#6UM-M.?t_No|\(wrn,biSb*QkP~omk-]v*:t 덴hA˓ V2`1mz΃6}N:*jsHSZ[Xŵ6_8?L,`9tH7ߥ0 }mOpF#j߯e! ][Se}~yI  MK?Y ,\Qs%I(UTJy| 7S0!, 7%fb(!S2NZK $R9KҪNw/V)UHƢ$(Srk{Dtki,ѨP =]Іp@̀Xۡ!-W!hI\y (ov[AhF?G̪i`hEsq3q^5]) W ` 솵_cBhYK@vD2I(f6 gl3v%2v0S9e|N?|E ޲Z z1p(p4z eʜȎ mP-axD'6YS`*uѨX9"9g3sIk83)7k~{@T/{O|jEx4jl#^*"xN_͕)Sf0/vL u=MMځYN}I&៭ez33ܞn)0$ k.Sg8J1rSEA c+$bӊ*嵬R@E> Mp'`6: /' ~P-a.>Oh&!)W WxPe%ʦXU*05 W<k'ّN};WiYF{*r;T^acu3:ԹNbVi _2Mf>&ڸ^VdD*5L{:U~@ϾG\:?W i 5uwNu͚#_ bvJtT!S-ݬ?z>~ć#O%Wk}O<e Da{>qOؑbPw?M`|f[UsZ M sL1;&i$Yd1,fo W%:1Pvr%g]*̛P;>%\)ѹl Qip])d=8S Ksn &tMl>/4i#RyGfLL):G2SR֦8nyR 58.ndR΁j$QH%tFd<7Xfm8֦d5>,j7jiUxwSpE Iu)ގvrhR0^^.i=k[p';ɭqB֔$/՗v>|jmbc- (_ZPD(ޅL T_F-W5HUAT f/2AR XX31[ެ`ޅTV5ߋ3VN0Q߶8Z*AjOT rR_F>m(1w ؾ$_(9F)(%jx5Q^eK/YIǦ{ (IU~9휝ĔHIs]agOj4aDs2`>)=,$~Nbqbɯ鹰~.3>TQqߜPPݧ}@w0n(=D!+ޙ(h-Oq>On6‚:{zjS8dH4GA ~P#W*ވQ_ 5/̖xG1?s3xT_f_<ACe|*NJ$[A{"="B6k[wO K^+e"o|OoRrԔZ ,(;Zt^֫.s彄@ᆄYL)`ifm5yNr쐞}X + M}z|]ox@}:t_d86LLRIFJ 1 )Q~P<S n/Kɱ5S?s4YAͯ zJ'Y ~|L#jv>\frU7܃߲d22dЩx:ci>GEd,uyu>VN.|6h ^Ŗ sꓦϺoci_3@tANiC܊wJ_ˣS!4ztu>N*z6~TyM]=eZEWﱬ"SZQo߶ p%'R7Ɵ6\SNoQU7X-1m3; 0Rr Se-m2ݶah>yЀinLf-$=-+vk: {TYH9R 2,+g ;Tctu2olbyw@68܃ˆ7"cE{s71QuIJIXRbθ֭Ad3Wt* ~nJJ0Ϻ'`dHJ^N_.t.a LzSél}_EPmԞc`xiE6 FӹE<1~6nDsGh.}{4YѮ:)~~F~HXoy2MR/, k# 2OQ"[Ԋ@W$0{H.Й:2NI~`L1[o@Ir{+GDu)[7mՏNH—sc$ph-[ ӿH*3Ycq)qg8s&CEXq.cpQ36$yA[$罠\q>#Cx7UVTU3p 3iu'2?!/\cYz2+;ro򼀒ߥ9iNp{A~zeiRz&>dF.iMk/L$w^<jچd'?ٷU@.RvXp-Œi߳2_5v<QS97(`rF<}aa`)ZZ+y%讼[ `U`p/nGU>ᩒnN1V2OZַSʼɔH@|CyCb'vŧN+n"h٠{:x5xC0n57z޵ =~؀Q A0&VkᕅeeO."Ó"EJ(4+"nAqW:,ى3'J)n{MUBuM _rks%qà4\Sozs4'ެ }<ńwܴʙ|_2aܪ;*5 LU!H%`q@f7HqU o~9=Q`Y>tP2ZZ1xYQ<3Uf>$Rf(OC%9$2VCiޣbҍ1^C@@Cw>y:3(~QXxp6Pry{ X󣉾vQNx mQɥ^)>J< 1UN-@t-xN3)[ et hѐ}Pv/U@GbrMhDm<1"@g֏/1nŶ|j߁KɝQܥUrTp5h 6e<5 _`IȌ1iQc ei_kF%uaaZS>6DBȑHl?^.n.$շe:z~Xf{a<Ő5J'^( `nk]rTm.xEr3u|AAe:9+jbl8F"wX\O.Cf3D1dq!oSUZPr $b%.LvΛG_ǜf-ɾTVg]o`"h\AfQEP*W#$_U >L?1Z3'U}nVr8VB15^Rv6O#qEDz (WysR~x+:0r8ywpaEs9,k-RMn_87U$@=p#ΰ+Q"}9XHy# 1خm:SR`os01RkqOrE}DB@)$ v>Ѭr~AQUA.)B}@F ۀK}ia kəOC,cB+nt;=aS3,ڝ:gɳ.C7@lxHC,(.. .>F 'WU?d0Z}RrFlr4dV33@/ 9|9yO)+kv zcg'^ 3jv֟<4u[`09]hO+B0?8/$\3*Co8,`'j@JLea說NVǽ7{ΪOnJ|ar[}q5V}ھ(ǪM`g+-{!5XR:%yz4-h"8 $Ws:bH  NW;\\)ʆ-F 뽌NyA<Ȁ>I+z{֎l*ِ?CqTq]՜G{p}}#]|c&!nf(݄{J܈*w.@ΰ<8Yj{n '$H:3Ia_p$t~bq!Y5HYrV~,.{{Dlbc_Gd??,4+W"Xb< Zc0OIXnJ8T-m2<;9p/ m0I넳iP_+֐l9C] Yw8i\7$1Lh}j~=.S[DŗSH}eEdQɀunnt' AgW(ٮT`E++CODP8N%pV ;E{?™Vr=Qv/E) f'b'5W/*D_l NWt\Վ_32d-WU#}LqEٗH\ [t L_^aMVE LbӿV0aJk39bΉ"ur=eh9;u&Sڌx~*@ f#ef=G KH;LVMH ? azuAgª?tijc~4* 1Îl9>1 jMlk ƈHD2qG!S*)Gt-hР@W0 b"ȂO핯郾Fůҗ!=cʪn]Dp,e>sSq P4+c{ L2d`N^0Յ]MD iPyz&Q m/wҫd!a?"@WV.PW3+&{\cY[M˒bbÌP.>2/{B.t"hgBr.Xt?˫ w[pCr ?<ҲB+uԢCT-=3w5EZ3>G= `6t{ܙr+=xݓ3EGG/4`착Gi٤u@'c[N|?M3VG }ۆķٍ:r^x:(\3JIz2mjrBdQODw^P6;Տ ઓJ k)wrg5!!L(cw@,E]أ5k.\otG>4,O x XC*4Bw9-v3A`` 8ηбxe3M&Dvh÷q{ڹ)7Ȃc># %YumV\wޯ!9 I=@Hnu!Iƽ+sfpV4EbBُܺ8TM̑*#O3:^t:>Sѷ]pÐ_R(68O$x3z6I ]FIzLN2mOY0)e$SD1lѺÆ#A[tbq)60[#̠ ɓz҃8e6.+XݎncǦOvS;GUbWI<dOy~ T [X1vйŸ bu8!FObBza *iip0T8$&h K]m?M\h huy.ŧH6SzKud + 􅡲mb2gy܋3֒~f z!k ku5IGvQHg{HmvzH3$+-OuOPikJsL{5_~4IUEؓy}M^~8ԉ46$d1D?.7xNz[&t,My4q kK츥+&9Yo8&bNR ^w^׷ [EbҰ&U@KуVIП /HB@ >~A|v ,ƠI&|0W%mȃnOvh#LfuA N(s:t\ȃ0 Qt"5!tW` Z9>SniTᬏzRL'zd!aqZe.ɮYXU} rY9cmMqԨ[V̬̈́IUŲn=ħ ;#,t Gz}0D/qOLOOm&{DM"[B(ţ[HS7GLA?*0}0{0QOj^) S+k0l _mO*6B6gb4xE;,[|=*Z67ޙLk<`YB7ЮnjXf-3ɌJ[2\ KY=Iu!Z_$[-ZtP`îq4]v*ŎZC|}?1OR^r]F-G@-j}jqۧp\U6h੩ XW!R=YE8)Yl|Ey vf}Bj{6қd p}EDi9i<jofVubt[dpvtXLc4'J/CG4DPeWN|IcOHLq'_ we AkaЇ-~]ry7a.;=8 o(X+5%|,s:m$@[cAB38C((GiY畗rBX~85UZ%!9ɝW9|=6敇(!^q/qh"9qᥚ7hd|hӌfV,ᩁ5zZ AtNzjrxaJ"IIy}Vu.5`VX<*nbK;I1\۬:Lev>ډj @{|iHޕxv!?ߕyy [8fI $Qhuך;c!tMp'L6/:xwIBڻ.jˆқ7A&c`ﳁ4c;H};Gq>Z*BEdnvl AJ[JJ %R(_XEN݉0FB 8?Vi- o^-)"0Ze]+%IORJGgS%&5$j;R̔Fo Nџ> a'RԐ@'6L2DKh[nZו"1v#sip=$ZQҮ`?󃾚Վa23?iێZ(9kcƠb@h$LL9'NV)$˰J@!uaV;m *ˮv{:h}˖jMhO^Iƌ$[S,]Gm|ZDB w+`*O0c;[UX i*hsp{:oqk;q_♟?dGeVjoݨ\ ?fz&K'8ZB~\h`;}Y~c0 KqW߹H-4#=:`m0њgZrC/y=i&-2BR 6mMoI[0)V [}N.Hm!J0G`hoi[u>4۵a8(]bifCv;n>@CŠ 7)V _?8ZM IA'W5L(A`]d^?\h depp*.]:# pH_ }^7׆!;USDT8 2a& ݸTf| %{T_?$ҎB *#r_f ;oNy:;-1Pt zrlEb{]~cxN(˓)\XR1"xYܬÆeUH\?ڏs;y,}pA5ސx~Ń#Ҵ~xxZKL)fރ_ 0 PR\&Y|=1r˙O/6L<>84`L9W+63,tOL4g"j3G}h͓$mȇbwo@OO5W,J']jwvomJI2{WoQY$ZZ cl0_hZZ 6aa3T-.vXj62?&(, 3cD䠻NM+`=Y'QL/EaS,,G\2~1O8V MU<V.`*2ZN7Re(="!Hrמ\\>v޾6Gw5́6A#Y#]8lnIa-WoGltF*VqߓZFOF1(5r)A`Ǥ?='$E!n! @ O*0. U*XΞxPDwAT@ E}V H4NMA@N־g0! Bo;q@OZ Kk&~vy䉺<^@?XdZ)5۽b \0HH".޹U( Ӷ:$f5j]$jSg K(+@W2VR Zq m[t }U.%=;'?9eOIa?!_|Bqg3 epQ;0f!5 `>v'vvqO; [rA#w`%탨m=Sߚ-zC>P|VU6{ 3<&"_^gO ORz@gQSS# 2gZ[F<9,́ ]4Xoj^G.Ilq#<7v&,b0/*J9-/D>F!j,-9GWR&<$p/S?_4qx5\MvayGJ{C I)C,\Чlf#}e겹!:u}a<ة"Ŝ9)`,svezU4.9=رDV-s.WǞg‰#I1WE,X6{}2g}`s\'='D"+5)+C r evT|4iЕ^[0&>bX?#@%5k sRN&.LCrefpsLgYI#ǩ>Nʍ?r!l'PFSJ#R{dzbh2r',gK[>a xfNbcpZBDc02Lk+8&/;̓㺆DP K7L$wo/{"̅-$Sxq"#(v6c8$"ijI䜄5l0IՒ4K-ĹUPMU쁪[Guҍ1䅫ܱxO}eӓL@xێLg':*Vքd\Y<.AJCN7BͺE;}55E~o HJ"Sz2hy&pj<~X!vAM« ]6XnD,9V qU#&+0yA Mޣu joҾWG2'XIXJFKu9ܷY<;,ly8Pۚ[ R.|?m/c"C=WS,W`hu΍Q5¯T|a0m8eOE\?@ro?xl-%vOBԿib#u<Ƨ3i2@{Xpu )* F\A F]0 y5{2$'UaCbX˕%Esżrʶ^0̯sٺ4442C ףk:2)(oS֢݉t5 [!\"<'/+؎.,hLt`6_T$h:z1׵k}**dYJ;=qQ1(<Ѭ٨@V7 9$9t fj}` 1 W5z 7wTjotWc!:]ɉ`l0tɋ80 m~ģ@[BxyAn&8qk.L"ۘ7uP>ٓ:lѣyҌ`6g6obcpMĥ^=p0o\}GAKB.="vْKgDD}_<O?ᑺL'gv&ص(A_JL}hՄ# LQI(| LOn;(ƛ`_op >̆9';'l MwS&yxB*ڎͽ+&ҾYH[xzN[F K50GP ^Xv@/('`.н *ڡz>u݄%[] ;KIuOfmYvTB?/nҠ(%E+2U zF6baֿkql p)\BWŐKth1:Lm;ľȳE2)baN vbsD lēڶD3K1 s v(S-ki^umwĸ9%^_h_1PgCۄ!- O*RL,Vp7h |kDV/EO"fVHy xa, ce#yF=yrh^юG(*V/j$lep]206]f9:4Y_q]Eq05ip wMGٹsJcċ0G[{fS6M @$*@twk9F̋8&ĝJQev1˃Q1tѮ -nUѵQEAJ@.zOxݢ&l'))g@f}cm|rm,]gpb}$7i݂loGa,8 TkBiJ`q\`F-Ti5\ݟEF ibp{`g%5=}MhfLS$n% qlU>$$eL,>\B0a=6~tI-m4FRY緜𘔼wLNJ̻H~PPtk/uZ;YD{Q쵂o#{2޳ڋa(N`LL01僇z*3һ*"ޜ45[ ǀ`%iN@#'m\@eUxW+1KeՆ`&X~K~ ͔-Q_ | gNF P Hi5LQ3</f!e2D'5  _^ocAxfH#k^|KG(#r,?>`ٷ2-0*WLS̡m C*kfr^ kzIh#Vo“=-6ydҒ E< h2lĎE 敓6̠VD?!a&F!@p$n\ l[cE: &Q NˆB)ǣ?^рʞHkpœO4|3$ggFRj0yHr:`2`/Iޒu)Jf\e,7rE1r](Ĝ!-`O9`@%hݷ"i0J%+<+aidΥC߈L,;PSXATCϧJEdpCS4N~BVUl??6?o}SeoP7]PfJ^mM  Jzh>XuekuR, (p5]':sqVBbpOсpHl4t筞dGpDvZҏw4m@a5Z6dj`E(7{]!JyF (>֩B&|rV=VgaDo&V/iQ;X8+yG/oYen}(QD`] cEO27M%3Z['H`;~8)Odх>V(M87L˦oE(h"5N@DEkx2aJm҉&d+S0 ,Gۍrji}.FQոY3$[#^qR/~gX*ìYDŽ]0cgP7\TMi]ni)7_a U1EJa\C8[{/MUش1_ ΖC8Bۊ<]K>(/,^kpr˂`+ҼjS4d˪r֐y9Ʉ)xYwhXpԑQxHo+Yv88'|.t;'Md(]5Wd;رv8p\[D*֛IǤ=EqCgwڭ?0xПp!և"D$m. U˞H<o;vE4 TI\aX+ ]JM $8n[䍖.pT$}"[W/Id9x[#.8^o( !_fMBpFTm9"O3@|| k(x%A b\Wc<"vClo>@DHAgܶmgz6!C酛\:a/u#fdkoR#P֛AHN\yώΣ8,vU2&MZ #5:Wqt5%{W@Jsws7P!@n+θ n{"*aʻKԬbwҶ]}D]~p7t΃{[ȗ-YFKXL[\Ӆ*ݟ}3}&v :|E`6.C5BSg0m=|jլySDJ=Ec mJ5*:l"%dթ׃;@p*-ی" O)yI`\]1.kLT!oS|S˞)1',Y>`a'^)Lv2xkdu85,4aQ}ȎUqHJ+tV yn9l,\f.#^^1vKx֦۪}D.a x=٤kQQ0,WfֺU.m5eDb'dIl z- ZOt+nM# lةi[i>5Wᠢ6n{(FLZk+ccIJ ! aP8TܞY w0Ou EgH8f U 1^-ֳ;Zht]Q2K-/'WH £2sTU E}ӑz`,KlTR'zvujµR E ЎT^xz Ӧ5Z˫Jg>CgpcѐwD8dOb]#B #?&EۆoW!繚Jmr)\_x5ɦ贈&;p$э)X؟Y\l&Аl:9S*6ztx)a:a˜+ৼ.n!hQ`ʻߒ|&U%%e9#֖Qo;x\-!t.kLR~if1']*tQV2<}DHW ~}z&VC.emxeJV}4 3:!m||tqc4}eYJ7+]Nji7j2\$f|i@f:{nP(QBKZ S{G[ڞX9 Vjߑjv묨4L|sueGe[r,Vz0yAMYSX J !ά ]Onŗ4MƷ(ܰ;ʈm 3*RGT,$X~OਡЁQ]tv&\gɉ?^j($^Biқ4|`[[3k~ 8ڀRHDH3?(hו}ɇvnC;%3)>>\Rz"0"-8&Ec^p yҊ/% ̀yCΐiaVUF9>hT#e&篣.ʼnujo\;HםJ@o)4,VQ@gha B\UGnV(WlsfnP5;X`w?@X9I%)S׋hC6E xfy/JJF@dV/ pmy?N=80PVa}>t*U+?_UaH_`*% YJH=Uv Xazöx8 L2M&Ele ]IM޾s2}ڐ9z{;n~ۺCG8 fϹ-:LbYd_(3XՄpлaJZᦝqH^I0QY/1x@d&/=NAmU}qd=ӿpPf_*$uMkjSN __rojdDNS5^z,~6/"(mGG^TQ*]")[um)rT[6 H.WyNWrIvlv%q8P)gMzmɵ$G,dl/e!f{WPXE ϜrO'HiLcwY(Z3FR`pGH)Ȓt %BNݚUh#b;U;$K,,~ NEeGOϩ$1uO/LwΫ6 JvʏdN ƅa1hijV-L)@#:g6v⢫坐}/!8y.߄ CFO@N; ie8å7srWkz.o~d:du#lYJ Ag.;!1d$pHo ^ڲxt% f;(N,{cԺ.KIs|X2vjsAF*7#ƗA{3 -8=7Ac†5ʱZ2SBlv`%цVwA?mqDG~EF~l2lC"NVcIh5*uSc}E/]meV ْr6Trɼ>1*YPLɶcZ|)ь,g-a_Ey!߬1 Br':!u֫q\RKH\dxy~I.E-}V\@Ѐ91ӝy߻MCwsY@%Sn70YG vZ .4Ke8|50Gɇu纰uW6,=e1d kGxC/b6AG\/B<fmܒVͮ;Ԝ~tڹQTðЊIӶ>^.pL6nl+ylf\Reꉀq] )7Wud7tVqD6˲ `w::ea7N nm5, (rŸg{GL%iodͣuwC_d-rEG:٘5GK ,i_:([񐫯+m:` w2%lcsmQAu+qpEr+( K=SqJG6djCr Lӗ,|E ;knKHQc<^IcZ_)b SQdhwXnњiP)IP$\{٬>^wJgFV∗-Y*6=|?o9bΆ]:o$3 "r9hdؽ-ފD{ll|c9n̖K9ER%v>k?`oZעG˼] ޠ >$wtF]H ޫRy_2^5X]~-B=J(HФ$`g$^ \x?rhp+ wq.iE?aEϦ@?3Omr,λ`5MڭL (pb _pr~⿑˦w@9{TC߼방\$JIUvPk͏()Tl'v?&ՠ3-\rj) O`{7@Jpތ[6#Tue;Q-LpN$m J (q\'$-Ɋh,IWUcj%$ۖWg,1&*Y#u؞u >N Ⱥ߿٬_$gk8A唕=:P/Lel`#_- 1X^q"n$` jhd#înGXSע=W\}R8T3ګՈ`c9pr$)#]`(=i:3+f\ ĕ/+ ң%:+;h*5_/ Y1\똿.&$x[{)e'J):DIa 7kfpA2 tH0v)<ogA>ͲQXVվ5Hp;ocy_׸G@vZ.Qpݶ/_"R "zg!ZhmZ2c;5duG" >9ձ}+]&(CDyscvZ|b1ĊQ]İMU1FߦŠ϶ ᐌܟP8l &bEq0E^& 2I\K@cW\#줃?mF>s,h")Sk<-S$~grIY.>&nj#NXe/>-^VdQQ&bJ1' hMO5CM~fנn*6QH8ҋSU\w鶻ReLmw^"ke}7:VUR=IjXn|b뀰HC#Iԫ}hFV(V yMWr 4FW%6FI[P~j"ݗ.AfrOzo:K,؎x dD҄ jWDC`@I|[hXkX G9PMP!rSQ]AU&ꑯsӡf_cـ呖.[BM2;c4]26CTGU-j0Ÿqb":jXU)V8W1>۬jЪw}NK4`*b|#j*/sPcU3A?3RgZF-+"T$eA 倬F3.yy?ٚ,[rmT,oO&8Oˎ@kaA͡%q9!rxm7a+Aҹ"\c ƓDHBI}F1^ic\jǣ2My ծVfC*eL/[A1X[w_(ʄF}ti2O d':ʇ|[p_ 7?C3/P{m3Teb~i(vc0nVkNEQi2q>Vu_9F&@dchѭӰ5ۊd() 5 #Lnoh@ n0u.4:T: hR{* lEڗ83⤹pҦltvAGd-1[,]WYS(%.ho~/K5hV9T„YJ<. C`fXWc_WEFRJU[HE\h^+| HNe )n0-?¦O1CLX>.wz@ve=ߟƧD!KK!ԥ~idl9%$,~rlVlL/WDԄKbR ձoN[XܭQoH S4򣵮(+NVs(zqFnZ:fW4?QϺj6Q,dJ&6|]G/IH7x=dOaBO~d6Mn8q>|.pTj6jC>x ElG=KX,g7ܴI}TU +Į #WzȺ]yo.ma .+s2륳> RnwXfb+:H5R(dS6{ENmѠ&F1P0Q֘ NQ1s@rD`،3jH\#}M;D;#FDϛlbC -8mh@ bՇt|]&P5a;rX3 yZQEHeU,+d/Q5 ZJ-WhJ*[0[ fǥYh1D:ڦeJ#9H#o%λ2$t=U4"UW]RglJ~ȿ҈7W: g*6RlF&Ec5yeD^#O0S r&]Xe{yM֖Bm`w+ͧgpհ*ZV=FPd@ "GvX#"V[p7VX/A`^#zuSAzZ#- a4:!zX?`ڴcqn<@l{D׀F/cjҕDϐ=:2KV算9̠SzjM҅zJ hn3"S4Q|ɂhE"`VQT_SLt+b\5Lb'%OK%PCSm͓q؅ń00ݟKk!ե΁C }guG:3]"O zDbovoac'<Åa0ٕn {񘴰&g؏=/pA[fd%|S6)$c1PJ upb#JdWi2 f/AQ<(3E lK/=XE&VgEZyiu/ޏKᒅܨ" 9vZ7`P; L&t_Vqh!QݨhLq;C(4 ; f5ive6+ϫfƞ9g.O=%yf1 ~(i+^ i(ATLⷫ_:1R)[^ ;:F,RSP_f ZfWVDƓf_TD{f%#YIy`ƧI--*\d#n&j@/jCRV0V hMȉ'JVqnG ^-b/Hh{BtG0o+cyC ls@9@;/LG4Ծ7 rT7SR'mnx֬6h+dW!0lu:osA{{alw?uAY'OpBXa}+}IT`qեLMWLlPd3HDiQCͳ#zoNr}p R0 p0f5A $4uJcYVi;moCM~ЬRwPtx[J.-!H4+Opp>VM]9ڛ/ onH|sݭJww ](-e=h*YY^YZDž^=U74/.n*XɶHv-XꛛfSS{&­ *T?Ŏts.mIvu(d]CrV(IA|%\0$̠O[Y1(KbF"0Rѭ?ƷЙr>h A3s ȃ` dcvf RoKgb`f:T;|~8ȬA->+`幅xZzD &ip>dz\鍺/1I4n-()gJTLͳ #҂Ed:q<"zS9!qE70LTCALt =_o']$W82bOY1\F|Z[2C.ߴHb?cFGIkVhTZKvë%Lr>dFxYR8O6iEsp~69[\qA;uڐЪ'/-'X5ƶl ^Gtp6oا;/u %j5f>fF`9 syJlvy#1K5db3;H>q@9kx'r[|GbxU}4y"#dt~z oN:`$3N:&:,-c',yv@%0Mb;?s%34OuQ- čV~ǡS^?h?T Ukll[R$v=+)I_2DP}>Njn.^:4j/ ڿ>J>y$c`'XHjYq!tP"^f>@EP%n/. _I³V Y< lJ>Q~Q&h$W mbg3V(4릞hu!8^y ٴ5hY.?=^G ts n >hhWDt)6Norg;L˫HQ"L.AE>?J׺IP< 0{Մ`q| tLtT5"N?_w5}t- (^)$~]T1Dگgyb=PNt=)?PTO;E> RHīye&~{#, 0CX &:[ ? %tЫqd h\|׫:ֿxtc/=o.cL9ؘ8=&/I7G)YDPO]6߿]B0ѥaT qd Etg,L^?eyL2ɥVyA9'`eV|ݲ_R'\>>?SiՕ@H أdU&3M'kL+:4EZ:Z5)ƷG8HL\r*Rϟ4`+Dw jtP9xY"|'sq# 0,CSp[`9{0CgSmH)}Q:cn)EZ/2?XC *nZEved9dSMݦݝ-,Pn#ࣶV3lUyq鑘=wGׄ\ U'XtlЎts*A 07V4 o\՜Z9 Ә *Z%6Цo{tU0WoeȵBg%y'$~x~"`)K*̒kX;#'IYMLK<9pQm/Z7p۵ȹ8d24Yhg^?x~h\B=9U*kKT|SL*jX1|9O˵2VϦwҞ"Mi>(Dň'\ kNi }(21c{~1 PL]&'Nkfk/s]lkNo.ݑ.0Noƿl=}fq82ȠfڌֻgP2NZm[+Wwܟu챹¿ֆ!)$-)5g [׬(Z_**V&eOv[a9WqFyj>(RBQK3BIUWՖQa-U=/œїC ,d,SFr5[VfӍ* ub( 8{ĪQƙFX0j2N|<'.A"v3C7ND퀼hF^ ,m3+mWkY%5l|ݠ%jF^0tp-UgadH3,Ba Z&'߹鼯Paޕ0}[!iu=] XGYYwi|ӎKabmDGpYM{)GZtw Yš%Շ8^YҚ&4(]hB39vP~ ǏlPhzG5vagw9ݦ;{2D:@+{z.F^p:#ީڇ\š偗"!p4.EEڃ0ʹ/5?udE8czKP;CeGZfoYA]xFp<7:Gh;?&1 nV@&5(/dl^ U~e\p͑"l 5LF'+Kh~ w@GѨ&5,Hy2|7RXD8h?2gSQ~ K3fN 5Jq6E < ىwݗPD B9 x`4q1QҠjj=ORe8WgK'"w'vfUCq ɛm+`39>PU]*F /r;=Wļo]@)K1BݟDV6{94--'e߆Ӭʁy,mLp5ܒ|2M?"$ qD :IoRy!]`^i*u(0 ԥJq72N> V2 +Y"LEr{DQcٸMbwSu*Et МɃEze>G:.H$Jݽl8^3a~yYHv}d}n>M2孋+}VWd?P \{Qλ *õE-_~TNՑ}N'7 6BbRpSEEOsUwu5r~3pn?b-#$ƅX_hn՝=Q)ˆܨ uu!NHmj͇Dh_y86Z/V5D)ő9R:\2Wc36٩Fۿs<Y*b-1Ā}Z7&]+At)9KSmوנ3g^IedAÛ bj]fB?H1 &@0"FH1|d&Djd|LOZ1*B.}sĦK(n3\?Y5YPwn18?H]$Imc lQb+V=;! 04Vz]]̢ Vҭ;K=%~!c\:e4??uZܳ;fPY[;:/'oBI8c;AF\Ĥ%d8LGktxP+~ۙniltϤԮ5lY|knR\u8ƛi v Ȯ9`ۋy$B39X(t`DghOp)Hr3C(bg7<> ]ەdxl^6|鞃ODt 8GƒlSsK翬x>a~8XI_fS6\E 4=ii!%ۤVBH~ލU֟Crm&>M,&W倡Je_ 5KD,V˷Łn-te|ݪL@~4P\T 8/ <HB&*SߞQR,;cA.jJ\ڿ ;M^Cf[ӑvZnUͺJ9Co =;h]3+;-h[F=r4O( ݈aW5NXc(mZy ۯVx´\Rڃ./&mKvJ^|\_2.KIž_sqlECĶnZ~>l $2hCB,zfC$9*y,zPrBpW֍C3@\pO^pF>eu5KI: s / "<28_E^1ƣcTNI'eo7%~o5DNac#ӷ bխC/#)p7s>Y:O06ޛt}@h"ǦS𫦖$la9Q QO:29+tXQ sn:/;>In5S B3Y؆,Z Ok,V X,Bzb`0\oVOvV|ɽ$8)bz"'G- Je?f˃"`i+r E+.P1|e^ka CIyj{tqo 綩0$+?V R_Ht]B\TWa>@5P4le_C#cOaǾZowP}r1Z0*by;Mk/5>YC aeA5hg6ٍT[zYvYص $~&7<Ś4?RKʕJ-k/U%kh[L "E@|irJcz8Fb6fh MQ I7 ?.6LÏcxsAs\/ԋ*@3]N2E_/|\@V,ft|g󑷊I:/A*yNtNԞtNZՉT)(f|xB+f}8iI8){W #L}ʑg@B0wwr_멂QmdTXxef4F::) ZpTީ7!iF?l ΈYhEu:޲캂{􎀁G]yXZhp&,S_{10t}uX dT `1<]).n\QEUo"#`ȉub `kr5x“z剅 EuQWV",:\37zE MY>g<ֱS"cf4Svj#6dban&Gl~t#7ꈳ q mR]s6%uxEڗ$F d#ǴX )&o太0 Sی*yIO&mw(lxߐנn?V!9+rd(#־ddMS#>} QTa:Q,'{4ga-׶w!7,w'Û&"F. Xr-o s]}_x*``z^0 b֔SO*tiːP5„}Jޯȡ1LΫ{r2˥ ^{ N(7#!ڣ5gbA25l˩G wd5_-S^RJF=MY t|:Hs`Xv$qbUoNJ! SEFƄ]PO|!#L6yw]Vk͟U2_{"^IEuSsoܦtĘ)ȌLhf돗V; ob|[ X}VVŶOCIct1Iʬ+%ys鿫(ze פIq8:_ h؝+T32=M 7țdeq}ufb<UVT9Y`:&kp ;ş eO`A֎:{@&i]Ԛ$llx\B<*Ua ,+5}NJ}T'ÏN2M67P]gsUmS@D 9*p3(p?yw;d`Wo`6 A"W|tJ7w < AARWj!- BUN]vu(}4ByJT8O"_?uT)c+rDO 1^҆&~PXRG ];.0g$]S5gSTv3Z9PKA~ΫWSWs_N=$KQ8iZPϷV5>oÒUqU< +*1Ns S5tߥV K+R)q>uR0UTwUFxe8Kpa6UܵT@y2"p|+xw΀d}*XWteՆ45 j~q H~gΓo${.p6,^rm@`])p#(Ta/5,l"}`@eU4f>yzC~ Ӓsc\Ű⺶_W0j5CU~dEMDe3L/\=*=r åKf=]s+Opa³~l'Wu`Nf @ }KF{(!g̷c7Ϩ @5ϓRv +F*jCZd*!SE^&>V +}1R 䶨c9B D焨@zMک&t|{ mӽQcyal˟E42`AhF,M6lT\7=\f'bu@VpL 8~¿ ?-"+(*^@Q]tphy ϘI]>_EhbMs2sap.p/ջխϬt¯+sFiHGrv<=ndk:;UraROpwx:]L}B\I-^ʃxE9g4N p1@<&"1DQ<O2&1zg05'jd\;:S>+\O;-|`BKBe5 %= :^k{9}\k 7qޘb~ǏFDm+[t\ Pjq>ן8²jjND=B>/= y@.h[LvU1隆UgAM"Yu&^j>$|#lj袢 ȹ%Pu7n_KNjiIKѪa/8ýXڑc'KkA>X gQjApbwq8Ō^7Xh+lЪ|d == `gxx`U?@o~qZ%DŽZ6:lJc>'dmDA`uUKS@8||Y6-Ry,{,B4c3yf:t9%.GFn=./Q{$lMq !:ڸgRquMf2۪o".f NBR]b_aR`L)*9-#ɕVerHwq;Ew-ߧ#2c2Uh.⣏nX+y͟ģ~x76;LDye*y8(aଝv+tQgFB"BXެGAtQ)$i5ng\I,MRR~ .ȞK$C`"7'r}{|aE7|Jnd ;Y |deo@nϿ[Q^p鋍Oѽ_kFRApb xon^'釱o\pڠ!JpϹaKuO!%#5&P'hYl D8g+N}i .>Xd~oS;bj>șǦ"S[IqqY5bww;/INa9x/V/ޯ"0=Ds5e)~Hl\/o6qtokP0@vDžq_DG&n ΋Prfr껳&w&[Ԯ ;6EnM 2}EؑWtP$b M}Z;n1~mg` 2wX'i!ڔ0*Jf1#rQ6pZֵHf҇EXSzl٤?X>,xwӓ 'p9d}|dX2--A(.WGڀ2;YnD 9X uaAr^la]|حOov?Vpo]ߴ} gx쁜"zEvݘ*d}Y-AV+8cac=gbQTOKx1[2u٩Fy`!m`{?SSFnpW?vv*jR9J}0044Q|zDy(|/]+53sa4< KXGBjg>%pc`&gAuS4yf3dE|o3j+bV3>Ce&bG q) mm.VisC/C6S*qM BK ֎MGg^ԒVo֦4zS ;|sKΏINq'BQ$"&$."qIeۊMx̂]-WYW@ VI r`Kv{?|ULHdAoqS!AÉ>S5p/ S<x5j'R9uܯWzq n&$}`m2Ld%8+wW[z3eo#vnv =F*ljK'KQ3*apAz)'AIᷤ=ߣq,A+nlaD:kpjoA+iz;S.d6p؜DH*ƞ=j8$̧ [~e ]YXQdn,jD S0"6opcQ-+U3㲌ڐ1VD0> > }ѳ2>PlTE3{< w20-gPWBVՈ .Q,&xU=Plo+! ;M}@ \2eW\zTH-N mwޫMpU b̫ЬQ+Q 5!)z 1a&%k (v}fs]T](|֨4ߪz5G$DCڊ+iBu݌Sl#, ~~2PUgEj U&#'dAK6"p_?Nx :&bT=iL=9k d6iWrrZRO X E_W!j6}wX[şI i@~䫮wRLzH`'TH2gVVnB줒#4l@[ OE'Z:?3r_UXFqVqRKN\4"Hktxaf^k@Yf!ԘHYvJ~D7-?7rvz2Pݖm)l{,6P'Ӊ?k b# q3lbڔ߼#( n;Bp3eH07ɖ5?T'; ?T8TH"qGoᷥXĈ@WT7B$.&1w"@ۭfmBIqF=rd^PnnɲiE : zblnDǥ2ԧc([E{Mjʇ,q]C/bŚmsZ{pk0F$D3A:ϹG)y.㢞yw!(aY G]H[g;Y9ubp\Tkd ,<RrP\o4()Qr˜{WķDV5y 4@["Uu4z} y/)@}&Bm.V(+×VKpȭ[>`w,Ҭݱ mRh뒏V>p0Y0T73b,.A%<5,ٓԭ}fXڏJKSC?b KN7Isa{TD$dE8#C&{Y#U@8 ; Әld,hH򗯓zeSke^ < PjE`u9"*Ia3hTDƋʅ=^mH~&Q*GtECm?EheO]X /cǵ@y\ $5+f@?(?Uiո|+Thb>/ͨzK۵th,1n+8*~2H"Hb:A]$ptgxma1Rqnө҈+6˪)g?X|F%Q&|U khI+ql=xn{WѫK\?q~_1~07|[:nHCvF:Z4SH}*"A>U/XXD) @TSr v^QUQ8K" ɱy{&QlW^1 @d;~gj ]qK5ѳ6=_ %Na݈])qF)#k1 T4vV› .7<-KeՎuᒎdU|KIDA q;LaTd^= {QڐFpv$1pC2), 0f! X+58ݍaINGB - P]lN. ?SVGù%l~ tdѮ3G.#A'[r4 w%{֝,E cujm`*:3\ъۈ^IQB>\fLYYmbh>VjwR  L"7l+x72u0D~ 3jik][A4.]W+P"3ԧ5 G6khpFc4pIORඏ<2+eq/z.*qXj!S1Sl'[zgxdvCe?l0syW$b6iYZxn=>Z6[wf!{$ )u9牖-9L^: e#.h5(%B2[""X#//?^Pة';?[\"/C^CTj9`6yG7d<4o,cSl.J[pĦWocwTMHt$5c7f bԯ0ZPgN;ުoU, SAlKpGnJgRqQJ+e UH(XW*ݠ!ꀓLUtTYA 8(6x("z9U]ȟ<ʌ{ ѫn(Xju+MSI$þ*97 UP3E4^ey!dBph»iP}u",\ nĎdAd/jXm i_tʰ_%GM~xŰ]cL3R:MVS0B7jH## *|8%9quB-uL¸A`WS:g%5')qg&M |݁fڬ>YaKVi5D9-'rgCzBF_dqT,wxE?]ճ)Ô{l>y+ ,J{\J ik/;rb/j><▭bA5l=0'7梸eDž$E=ɦe:{+PYp5.VU[dPF^CgKAF9A@s&|/s긇I"`?? Ȱo?{Ec|7(q9*0ܓh0,)76U1W:\KBtyjZ)95y܃LٞO[Q%Bٷ (B /wL?חt36}Zǂ޼=G& = twf4&a(ccQtIDA^g+1pekRj$N[A#"GO$p `kP9 #%j:ZO97WԷt[bpHj>A:Q 3GOO@ ;cg"$S 9i[ qM=/怠%$!' 1mJk-vjNb%?5G Ec,Kw3JYd)"o^+AOA-8a_cOcQxpې+B@1_DC_DA9 d+3Jn#@.3d43'uc\JKYo Sc_FJAbVn\+L%&"_z<dhx ٥ *K":a:"CV'gv &( BК~kMn|!ẁŇXvAsdMŠ%䰀)~TX pߡ_}u9AobFI1нewvvY5^ [ *ݘbY`<'ɜ@x!(mO`:TyX\AK%vg)nj0#~$B7(cA jQX $r;p!3 YIpʇw|-8kcgr 團Lgf #oH{[7/^銖B*,.e*IZKG`9Ȥq]fDju<א*B, 2zx!Vt_z*7G!MiGn%~_ض++җPcSɒe[6 ޫj=au:ˈ)u+9NN7<##tg@WPOZ~mwO.ꀑ(ǤQBZ]SxhC@Q!%(҃vE7(L\nIk^M*? to:u84 e|1\UF2P wQݸ ZܱUb%)m\+*gE4@n]yMİ't {*'2Ox+M JR.uM %bVw>DL3AY Ye(z`4OcѤFLՒ jD HN!I/J%~shL~BxЊSY"VcCH8du@333l[ $!.f a:1 XM6RR~5UBm7(j]^$yet2^^VP)Π6h5Ls)wtȭ@̑*}Z URo[<+w|[{tl@}KlҙuCC}@,(3_HqWMʡH[L= zɷt^0W—6D9V7HKђx%Q[6+Z= L՘C0 "*w>9ϧ婼9DU8;q^S6ܒX4/D`;Zѻشg@X#n`zL>u #N|ޓ=6li%{R6`-1{6xW9?a 4Nx?G`ngT4~- H2+-{Z~*v NS&eC1G?ԡA$ЖSgŨNpxBXml,C{(>}ۓ>(lFó\e/ u tTm˺)u}~&>{< JbC+رԊ~Ovrte)^&afW\F.̙2We{u@DP2=qɈ:,fl4#a'znRX/<av8I%&ha@'鱗X+FjD1Zvsow/^] oW|isRrpqN }ͶTf+ AhX<[E)WGm{|kGE3%뛒 _/<BWNso]{Cdp}+W*6,xq5-N٤ژ 7͗7Nz-Fӓ6lD4S7 ]ݜ.wÈ T"lywd#]Ua SY8c,⩈ vfh2g,wSKH^&-{#,1 SՈAtIGN(iq}fcŢY# VDgM}^pU\E/;<ǽB(>*j:iSݶ hHz_ q7T" 34R=f"o:D4;t)_b HSU$dg`n\졚jU su&_C \Zvdo862/{DjX_s +M}py&\/?db9$,-c$_z_ >Z$1#5UD'B!fWX4Pi%_@>_*)>Nt ءgO*^p%DS6ta I6Wɇ /1w?i&>w*m7"ka8C~rtGhsU{GC-PMouoBŒͩ&R,9Ls e?u2, Ά9+q5E3X]wjJH o+{\'wy>`bڞ(&OӘXn:iKevw#A"";U《TN/>ԥRE;Nٜ;p]p܂h;+?Nc'fOHbFZ?d_l"<Ww }ʹLT "|  îp0_[Cex͘VL%-(S_I}t#PI.9%]G:XIB)%`H=t {<ɖznFs$;HUIPP#H]֖bJ$z57&Y@r _͗MZc;"m9㸝#T_tYXkwB p`d?kԧ-+]o{y[X`#|GʉT))g#$?5ߡxA+;xu C^RkƑٷ_uJg`HWrO8U8XXx5aќ?LB_gT&#ƛ` 0phtr}^t.9STQB4RU[đ 4qx|Dx3=2żFHKEpdbtn6r\{D[vYtNi9@0;,u뛙!߈T@N6(syV_,,~c-4Wd*/3 7M,zYx%$frm/}DJ,AU&т-Djph! .9,yQ;Nk!UYQpmV8kt}Ҹ$^)T!;d:T -r}4:$E B\gU %q2si_杮 yR*ҽ Ŏs1W?nZy8p2z#V3 _Ta3O~RMuy \RW˔zJ539.Nnqn^f)܉$i SWP q2_jBQ-FyQ?%O%BT*A5֠OLZ_m3o?IdF9M2ŏ'-n|B)%3 cYd*U1UQP ᛁr_ ]=q'NǪcm?9r ЦɧZv'\)X+I7c~~ir>\ϙRS'QIHYS1>Ъ؂'gQ!ySAe<>ۮW@u^8dDJo\b9,EA3`T* vC}pFN4s vo!3Gټbc1@S~ri!Y~69Y33? <&2 4_ o&|TE"c5=đ@3Q9S?Qei jkҘGH/pҢb3pSsv͛S ,|ȉLŃ@-܁H9Y^qgIq9za)/Gx=jvքW]đߒǮcSV{!YXc*5!| e2C} 'ZA $H yaX($\ Y"/ /ll1w#l#V# U)ԘmN`dp5 "eVeoχ&=5}WMv%xxt/~ӓˁ򔾈‘䡇qIZ_az8D bƝe>tgeg VD,:RBuQT=̇:Lh"#nVE/4G  Lw;v[.W#5_lр_-n#H# Aj2Z68rL C 9I⧎4>X]ddzpJ[`:Db[۾6:\BmE_?^%ڪxt+؎6 ->Tt ږSDdT^}KޮM|m}g;uCq}uƑhCiopx1\Z՞jgz9] qDI:s=&$` kx ·6lXCT/:`"_M߇!]l@}TZ?WG%fٽp[]JѴ]=f]V@xU ࡱp1 g'{XHZ.epش rN|/ >XחM~/!170J i@{)Zl|[ha.nE}8_ &c?R3j Xdaب(hk`[ q|Ң4VRPv@F4Uz\0J~D*d4S@:Olz] !t(sk' }FV~-@  PWfeC|꒭s,Չ_.)Dz,fkB6`] PA'<7Jv?.dxI ”H"ǎ7j*7PSq^!:3'M e8kY&cԲ 8l%a.eRێܯ"tiDz ֯yImtqP*VZߔq%X5ݫ|u_6WTϒP;\&8KA^P8L"1F/f,nwAapS]RS#KWɰ~\upxσd'o @!k7ӱ}4BoS 2t2T mjzcq(%Kieԑg%[XV 8J@%ٞg!R(Af`5_9KaVC6v:G?Yp{ul i'9L^vkކsn~;ﴗ̛ h87B[\-YdkU I /&',Sh&M *9i@Ʀ[&z@=YGl'u.?#_]-޾]-еES/)T{fg9.5 ~$LGnH0'dhS#a@%i/'UYC8"v]g&4в?&~S1 X6{sT~,F6b )pwtg,۬׵TWr`b-Lo6xZIfł>K>:zԇj˯# S[) "6rRU#܈%s*l9QN1N !7೤-^$ϲiH U/dqzjtt(j,*k~ՋI$bn]LE{tq%^^KC %F#M\D'mDD\,leaeEf$3˼,n-z5no\y).yqELwԋW ("߷"̄sVJLm% 6ʾ?E)&>tQ/q_HFy=؍ sM)pm5y}QSٰo%)6A;z?yRF$@0eE%>O,ÎzO}ÚdE^shU l ǫ])uqdq{:/ 3d\f3ϸw/RB󝬤=A޴DY,ݴ6EKF$8Ic)@M˲02t-i̔( DR0!` kmvW_lሺ X(vp0DzE!wˈ!# :̃o̥/g'mꍟ^HTx֖Ǟ I;BI-Vs%E>q,mrYLT'ϒyGD gRPʖQ)*XI#F8JT#O2^u3G'Vcj@ٚ BAZD8#&^պQr^{^o@S^T"ԘYZ6ZE("hyFȺþKrtK+c~bqukSvmk X`g V*k8EvH^1SQGQ}s3^ 5@34JE!5-=s81pc7/("@H6@\䪺붓U fmSY?sű'Yڐb^GK;+ȦbۢcUNil3Dtt>\kn}ʚ;+g/Gu@0Ь_77v;לy}н;w$542i\GLfml cgFΪn|H<?ؘn=s427*z"6<ꉒ~Ē,J1nLXGry)}L5| ŭ:W_<ǥ>Tx^Ć U8n3~SnAK#ʹO7:5Lh?2^+fݰ1+̯pل@k.?:~@u~;>Z_%"sUierY7uJb7y0EM {VT+Gm+88fs~RHCc=6 k9Φdq3ږET9˖g.3"uɴDI]1'Kgj0 |<+?_@ ҨoRZd(twB馞&tפe긁;O{7ڔM%t1k Ƙ8ty~_ JK~2+W#Qu;]QJCl~!ϸ|Yjj8y%jbb/x 11p{=>0ЙWIf\5'9U-&,f)Nf0Ia.p'zZ?\I.syZD)TZi-Q,ۺUV M!sM F\#Yyte_D np[6E q*C%G.bd8w'&a}DDʖ`w,fzZ8j~߻ r]7}llzf5#V @BXXuB}lq!C,ț5BUtv:T Q%t,- eٟ<䉄m/~699)q|_k*eY.p7vt'/F$vku SS&F#^ᾤAH4י;rǷ=ZB_<;Pl){JD*991l\\!ܦ׃I]ja7{L*_CԀT!  h 0"pǻG+mk8b _])Ex*9<{ 5#q L烒jTP<񚖫5 JRKDg ߷\j@TY}7op,sZX;[Lt,lU/ʕ+RѱfDb`ӭ:ޫM35u5;F?Ry ʒ=E P$5-*@huD- D)96Ek`Vu>.)"5dkfA+vH7f'%ShbۆUJl=Lt}FîI GF/p4 1d\&+2:̽nn4yh) ]G/Ft)H$1W%h^} DsAy䚰(7(uސ"(OI×?]JEbk~͔has>0D{n{pߪ| lh~XE ED;8}>>#0LS8\C [!׽b%ۈEyjVfiU `*[qąKL.>-[!#asS`1POCǔ~.U^7N${v @qx0XJ\ U\=U[`=aGȚENpNMy\cY׃vzl9>a/PNynB.3 2:O~Q(Xs׹ h9 Dy*AY:t SZ╝Hm[,-%arOĿC&Mur& k~82h`n!"̑vԈ6&夈40ݕYN2H^澡KFjiؒL~cJי`(4T`p!@8afus݅< 1A~Lp}(^ˮMt(,>pjEiMr[G4XH ۚǍ_1e\"}F}_ڂ5燗 IL",5lCҠҗhmN_I0'Y_3^1qg<(J.\RKj fv JdE{MM_d#%uНb@]zYʭedkM1f$Zv9@K_<=i)4BQ <^c+ƒ)c"6#-|j(ӐTB88bNS9=DJvJYN2vT469YQH gF!* 8ta.gң7 RҤF^GG|tS/}'};ߋ [ $P ˗?VíQH57N4*%.bM *jPp*زA/Eu?;hn|^M~$GXcNZbjgڕ #L^RPzK73[T܁;{ҊrS OK[aMnIޞ2:+fk9MZ3S}icȲewEeL=F >gurయMR#R]1vUj?3[lfݸPluXĒ?9WRd&[֗ *GvB:xޭiSoMbpCZ{y䕪fOjFͱO3+Ym2_0mbLjAAGSK:7c_H9d ;diU`kί\;?Kߨu\և;h؇v޸½%>"^[:эY(#3gzX3pA9>IEU5W+?;rW۠A 9D.] o`j"B-?ԃyjlҰ]ٽ4˺.Shq%f69e~:8*4B8~bk8`i -?Hn ʄ6Ns{%<_qZFhp` [mb~zo*r5!t2/Laib4iV5O؏@Ϟ8Xei[-R#;#X4H$V;Ok B9ԃ!1Du4M"BIӮ"KEÝ cpìWrͭ'c$uUofW@:}QEiJ /R~S\hOȈ-~:ϴQ(ڌm]U͘6Ig3cvڙ; .!45Wyn4aH?i[^̹ͩE:/nyи0]#Ъ,͆, 3ҵ 8ؼċDXAT̓vAyO0Rʂ:f"`{alW2>zOE+P+zdE#[7 q܌p$b./LtYuȫz^+nM j`;.Lڕ%ʩylPjC 'yL_|+U( d_ o5-Cb:RyFW<⳱&>a=[p]HsݬLfZ#mV[̛)t7='z.%/chjvMg&P3GUGݹPHSyvTMQʼn'6?G)]"=vP;HHQ'q٨%N!o9PƧP5G*x4!ksy43+hj<Ϗ-xfO {4wUrӒ+%ʔoWN9){R("2Ae>wN*b?1׺nkA dW;NR ]0XS\jG8hUjTAkA Q5<HWpn;K3ɆR9{*j[.#Oj| 5U/vp7 6h@Dӣȳm;G).zKARR6W(wkn9 TmG5 jA3 2Ǿ9s!o.<=_O]ݜj:7ȆQ݋9k+x\LKg1~(+=jf ^ӹφ@WLGGE3a~epY8!z"OV⾈Ǥ9e8 c Ωcݗi4&!=X:!iQ 땓8LyHIVvycBd#O IZ ~/qcDG*_nfMbR|QH_79|ק嶛ZG/i/ɲ(ɵE|"#r9̸CVTGian.R`G[U8͗Pl;kn\_'Ȗw ) dD=-qj @I>ϭCX>UkCPSԙZRaS$MB@#ᝡzJ;FFJ.K"daA(ZR= 善TpW*|4jpKM]DBAƉ1&ƖWX93Ӄ/ ƕr4&yaD9Cnr.:0e $k|oӓB}}`W3G/kQy?No$BYo(|`=TL=ko#~u$12zѱh/?L286>ciGHs߮Lgn$7槈4{P yU"|ȷOW==̿kxGXEڀNS̖I&8smA !HY~JGYJa Q#w-mjDQz4k:&ea{P_DNOF= _13wn">a9d!|rPߊ?y̐ELVaiDf+@w^1ܖqqLG&IrR RK~K2~5>):25 ?fLbԊnE8q%R ^z-붗rZ+;h ])VyqڳIr.u'yxۆUw95 Jυ>O6ox;ƺȫ, $*)Х{ 'RЯ`'QYOۅ`/{u7Kk"E$ 1N诤/ڽxyO?$*/_.VƎG8U-ϲq/ieDPpAאRT߾džj>!Fj6oڶ~E_'8)rWPĽ*iP(Eok) uO58Tfd8jN$-6y Ws p; >RC8 :Eg$GW b˅O)i6I4Bb1G~kJ3grc_mP^ʶ N%+~)\=]9l'/j u@$̓˂ɻ5vS\O7jQ2,5]e5A>2yK" ƛiyw?6'Z;ʐ+Am+3Rj9vCS(ϐFwJmwVIC&xʐo>"Ş}Y!w~C: 0z9C1jÐA|lzˎ _ |=<ڤʟ&0₄lgުd#maaGΨDe>L鱔zå&bp ^\.cQL@xA[тR{KSZ|ru=y ņU=-)khnguwdx$uXI+ԣja+a(pHYsmIԭ}(UUQG?@彅NzיTf@ZřeN䵸4,B|PitkoL6㥅cNVwy|#lߙۢ+ % V)Om'ضw.31]:<6 c"- adf R~]H/Aڗ`,Ib* ͅq_-|3C^6C4t?>wvZmQdfp2~&љ_ơ .&oV-' xP&juLDnYx߂1nOx-q4m84(| W>Bxa[I8S(&S&iwna]wSQEXӿX>Can=;r,8kP. MD Sx5%…+8 'x cY| vAwDK3Ub|؉ Ct _>Z;AC> (?hl@{P % .s^4r l\J0NtcMѕQU0 Q+Q1]Ѣj+赐!XĐ G \pͳ? ?`be %plF1u +( JI-3s` ЛΫH[ڒ#J ш.-oCl'hx읦N, `2$Ie"Ľ cQŨ-(J&=C@47Su Zkv^.\TmhmBO=k M rs+lPzQR1 qbxfHûQ  l3Wᓗ_#=[- Vyɽ?xYB㬝OE{S'Lѯ.'ܹ/g6ac(! ^V% iy)w?&%}P8Rף^5Iz0ҝ:=+8 >]G!!)"=[3U~ kB$c}#uRk㗤byՑd} Yf=S@ie,"_khAP2=NhѾ~їgg:%6A̸KcuȯBJ&0%&_Sct8v8X̯2cohɱӌ~ *[ '=a;dzڕ"ú6$&x;)ucC=S=B 3Hΰ̈́TA̛^z*}3pBPTK#tj-:{m\PPiXȱ3炗R1d0_J>c2> h*eI9CNˠеwȸH LTL2 gH--G(WdKb7`Z/Y&2"KOl9Z~Uinlׅ~z1Bya5 ';ȨkcKD;) #p?tjQgbEZ+ ~'x@+`2`ܾGɭo"GmF|5yj,hrD:Jбi &Qv$U[m HL}#r\d!YA*\S_.H1^ÉDs{U9J.Tiٕ.F̗R(mbyL܀6ݝ66K|mS^*dk|[YHժ`9{  kunbɈGx8Xoq7fٴ$@Im#dqM m% `\g[ׇhbP"Q;HQC;K0߱Fp;)iQKHұ(z宂,Rl=pshIW%!Y eG,2+/?g*HrД0C)DG6P5YU xlʆ` o IzT۷> ( F\Hޚ=@㐈0.ڀ|e>Pub]<$эd*YN؄bev W&uy|ߞԅӎW~‰[>S i4%=M9#AHOV#PFƒ#I+/DjE:#(uI'(S$_[M}e}{.L+kItQ3K#z )@MH^+cxTy!E &h1!q #qX-b`H)%/:t.È%w$$-C~kTtdpAbOgi&`KR]P5 bKI] '7*kM]; #+}sPkm).7'\F0ǔ~|P1>ٿـ,Q/`YkIް)o*)G3VqՙXìOnTϟX:ƿU ?p+Bc~́i ~D ~Pt S7RPm`fWݼq Ie~;v\)KY]4pk*c3H]63|P.Kzc̪BrǝWx-OV]9aO a)OZx\/r /G4lT)o`pI.\.Mqq܎2Q9b- w5aX7A._BVtNenl%KL{>% mYyl]1"$biPb` i)(^,4c6sU2>r}=CqNϰ8nvMf ׾S/nL?9%eibMg}q8tmqTW+B+L4Xy=E hUU_1@/B+,Tn| 5斾+;yK+]ۤ?"hf'pyٱ\=ŇTC\THKJ87 ,>zo2ƺ}jTdoWR5ޯH=Y6Zgs UCM[:d ZMwWz˙Pռ q"=ߔr=౯aFv3*VnnJo8+jsphH] p|Fۖg <јtRBpfE8 Y3̕:ǒ-+4BH5/9⵴@p ŚӷEγ?NȊ`ShrФ{fK8OlD7S4/mCt6xc 8d r+~S? vDZ(FI@Lh9һONPJ2]&,\#D3>5=mIPU8s(,NUV#k3跚pK)م+]O VMCԢA0lƵz[BptZѫ.5Aԭ ͥȦ)C c.J+^7!F w(z䜌 ΢LcSK(sJ8'0 ˴oTMH'WGrk-u+[PW`N'lM>;T!!L ]A.n>{jNG]"O#cゝDtI%0<@]:YPX#gmOv oQPqp|2lϳKiռN^JLHj;%DU6:IЁS]uĮWE C4kD{З sFO8ҫ8bza]`%㢳ƅ-7hiHXTN5~z1"d$>+?XDZ3 ]bA+oIB3‡ڷ{Hua:nЇ ɋU֑$'ֶK`=}]8fieB`T4nE'?;sd_{aLj()ּG ^lY.PE'kDCJX.f,x:DXA7.͏>.TEkCmAvkܥ|6`J@\ybE9~mc:+䡒v;!B\1>:ćS* +N,{>Q<Fl 45{n7'PM0a&mqSb=5To?XEӿ&FkMRUeS>`7~J'<r[hTWqN/%@M6֟>"Noיұe7SP7j >wjAPp/a+!8ȕL=bV&f/ bj)O} DfʫΧB 27~)rWYJ|a3&!1n*X eQJ_aP 5>q稿WaY.ѩQ{$0sKE\ Ml~2>@PA ^L m(C9iq*\A5R }E[ y_ 6Gz mk[,Y>RqE}S)Y5vUoƌ[~1*/5@!3?Ce-eg>7+VU{e"`ʹ콠R.'1r^)zo)Ԇ6ͣ8Ă^G㑣{O Ғ wwム&:%U[SYJLa[2C$ Q,0?6P*4f\ZX{RUwQ}]7F$=Y#/8r0R)k `c:5V^.ߎ҄IFkLnC172ץ89$ HooT uf8 4ثn} _} R JoO-0`GLץn}dWA5p1 FeypWW}-ýg+j/ف8hiʈoKp//i[l  $9Ⱥu&dqb&i+ْ@5ٰ*\Ƞ.0 .aVYi Pv ΄Lr7O= 2Y?KP:IV(9j)t3Ab-^%̛WR{F[ɹػ|Y6ky n)61u윚QX;e) hli0m=̙21:'A3֗ u5@;L8tŽ˯_'Yg{)g/5G,Q #WBodoNb/ bfk)tC DNAFKP~+w9p]-%Rκs-ݖщy2 5TӒVE` $"Ԛ bNT!B'L[ H"0Z+k ¥ڽ V$4Af{=;]'`]t*cV*>X/+"0w#OxrH72(=YyWaC( ^NV*%SOJzlb,bw'3p'"?ڼR]uXJ"%I3 :ד,C BOYK$+]$K|̦~"ΉǗ[5UGD+щzG^H0\TZ8; WV]Qn }(-9hz\u (?0OZ)CneMDuR_jg!VL+WKA>pA鑄U0>Zwh~@U޿& S'q<ɱ6惼35.5Bgh#(LKCkST܊+ Ƹ6\Dq)R+d0`]Go gMȇSv(qv"5"Oi2R WʘmxV֔(#"*C7x_*TʥdQ/͟Rn\5.d?'h;0]5]mɤ{i`؎Z=~yo @,A]BTUC t?h-q.;-V;< KG*a⚃& *+7'l?;omaQқ[ T?b;Z &[W}R 2.~j"s{8Glqn͑Jqȃu A]}W"fO_wb@( #C3~T.̄c>z~׃#_{n\@Rgj;-uٻO A>mAt۹W)IKABtjo&d]?u(G#YRӊHgt)t?^>P1o'0cs [/m/C CP^/VD? ,e{VVM(x;XzWd< ؗ槳8_5z8mW[i~C T/[u6DII%t eՙQ_gzTA2`gIn ,]cv!!&X=<4"vOTwYMó W\O7g(P |@Z/u!e#Xۆy3  u0flPӾP$0ͪr&(Ѥ܆^y/< x3-c&Bݠ)j_uh}Mxg q|x%8r{ysbLD-N"mD2u*̌bӶӶW.Z?z )V6嗄GOƨ׾“Z7 x8L_/BڀKs|4/DJ/wKZ)ƕ#:/7/bҀ}Ì (JL"7R! 'غ0l^QcFn| fq?%^}xZ9H2D^zGҾ_p;T M-V#"E (}7N~ %|DH:@*+;0o{ )6eOYrASiut*q'-ZV ʟHlEkb.j,xP"&qM9υǛ ^/̀;Rjޏ]x8S+u | ԺGg pW{?PŦI~x|{$y dH #%fTDmH/rdtzf7$}C^XDJh%CrP ?0F(P 3$XT2t2gK+&|rjyBUeBi, |]1]R~jĒu<(k$)f7F8})2{{F P E5TAD V5hm5vXuw) s0QCXj^LTIۉɞ^5O{l~ =$B{u6>{޹GڀP#n93 g3W5΃ Iq$ēGg=aM agz˪-qkr:m7(aAٺ hBo{.FCcg-B˸ vi{! /q1P݊UZbA)U*6 oP34A)Cӹt) w*8,SLÜ+nn,xf㎉B؈<>f%&5ZVk"Ggs\j Fu.r&='=6cm+dT yx 01hcVL>`_y*רZ=p,[٢ >rh.J- px>H?Q>Gtu=HbpCe(y!J3X,1G`Xπڋuì͔RB%Иvڽ$ UpB bS^)D͛ffHy͈.ccM Y>:SQ^<˜:Ԑ\<[9d䚏ź9E$(F737ZѴs_$JR}[Qʛ+ TCWC8EK!]΢zL3h;uk8憽"tU fLxb? F'.}DRL #<7*D\\iQ]%-٘[նαv:Fњ>k /鱗MеDe[HMUNswkCBjhyq [xG+侽^ BQwo%wƩ#yŽO˼4*N,q֗ޟ %Y_2rhjPn m51dh: 5kŀyGjgdL2pI9qAr<4VJ;45ĀҧχfDzBB8a*X#I?J*{ CP~<^bzϋO54I3kDP?TiAYTʟ8' guB;t9jxVSN䑃Gȥa6d@By݆bDy*U&Ѱ3kHMePmt؍b\(6AEM!1|SXj9eTx_ˁtcʫۘ&PՓSCOߜGjRaeV oٳn X>ả9T_3k/Ma!7ų%EA`}DG\ kԃLLt]",ڹ@F8ZޘP컁ң˱GqNKrj-YɈ:*((%zi~M]6WCaO`&a.k0\/x@ FX«]HUXut]E9մ/̀kVwkP& AoYk$BLs{1?9@*Ds=j]ZOsڋ+SYNp<|Faw1K gQ&!}O[*:䈗H`zHm(*s\$%7HK6AS |UbԎS|"oj/2p9,|8J/EShQ9N_X /@Cc+Z*##/@-/δy D`pP9wW^$˞?uyzМ8פsNKtե1%;|#Q֙,Vz+:fxu/6m )ɋS0/:/> A9* 8cBy@$Ȃ]%H\ZH:ދʡh`*ҶGwUo**UP޻#pwOOEM#eKDRd`Ye:iw*+}Ouz 0㖢-uǐF7I=r|yB19t%p@asM3*BUA=9G 3raG*@bZ%w.DDpɼN|ᲁXX>4αOzY$9 ` {)^y+ґ͆a)ȣ\d۷{G8I~囧VYmb[ |qi?qq?V1eCRָ|͝n]Jr :12ά7]*R&m =hݯ BGbSUm{r\9b A3Nw`b2D˄ekGf8a74)l,}{\S?UM `+(v\1?c:N!0q cw&AAO .ўڮmEt4Snϛ_]Yrp8GV k?5O )"LUPm|^ls/elPeߤ0tinm+(AkQ[8:rI kGE}QmBw6O#QNSmJէs*;ĤÃm| 3Є E S>12ƹx+]{?YyNaCM" ^,H, `mM8d^=w6\ -/RR޵_#UH瑵d'doM}Ѫƣg8P*M*IJHn |1h}|e2Qޮb4nIC; RU|ȬBЬP4Bq97ŝWThF"`!YdnN>ޮp bVʹFs~ԁW´kT b(@7j&wB$WmLs Z|'y܀@b-7a܍)9 ^}w%(RE퍲~\rJ8Ei  e+oǐ:$oƎ%@~ zs= /8}uuԶlۛoUeZ:XA}ӕI xQ FS_jMr%3l,X &^1?|FCW@ o9ݟ$ǃWGDm견}3Ѱyd#Tk{r( vzK1K A {$HAeT?8ؕRbߘv{†Zﰔ/A!9{??kAAu~Xz3wCW ,:\j=@[#Y0`v_1fQJl* cN2Pܻmk2㖼 ~LWTy H[]voI'`crzH8_pB;TL!kҖ G1w C vXƚӗ^T,jAp/$81oe !M&GA_ZtgK3Dtm=%d5}^4eoY)Ev@ctdʼegYWv\7tmfX ZvOh'򶔅jo 6,"m0ei0@sYDyQh5'4F{^U6bAPKj͐-P[|RAdw(gL# Ycٕ6:;`eX\+fTS[AڹQ*/hJOܝk6q4$54hUe1sO- [wfo&#ZkGPSJ?yߚЈx xzj5Nxw F"ViE>aUy umY5;*G)YKEySvOI0]EGy/Vn\`{Xb. ';j*RƥB*o٭JG{jn#LAj^tzṈ "~J:'x|ɠq :TuNd=_T3O3l*eE&'֎RnZ/^2NXc{`,MſHRo{Q0 T:ZMȮD LJem,#`ɨ;mNh3V|]ݎrQ[o:q`+6N}Ȼ+@'ABRfQjV\izOsHxޝK(֐YÃ7ePiv 슉o󃦞NkJ„GڻDl3;+49tbU2tϊHT]}sf7b[b)`VU`aAfDODѬoOj߀OIr.Wm ] }:f\,[ ق^ |`gjz͋?1Zc2R^QыFwO'hKNbj 'S$ PU9ڪeBM·n o:* MAfeL':ic܆roR2%1 ܺTӝƆhpc O"&Ҍs1`A"tJ'/ +,\8;*yxr!rLnI"&Ƒ ՞ !{EV.7y+o}Œn]bZ.,PzNXȄ(XZYjjJMq1P)UK,;MĜHn.1%'ZM8YA8 ɴ(XTDۘ(ͦikt$$s48Hͩiyg({Z"H9= :uafT`)_`Dq1QC] ݗOO6g9 Zk$yٍk/$Ow(|- Ht|n `em lJ&Uk,Ar:T-S"ps&z ׂJFJ.XB?ܨ;텽HSkO$<|h /g IS'X5+F['󹀫av[TuSNu9Br ԕǭ @6o]k\~HM&b̝ 4 m/Fu^ YEuj@#|wwUAkYzv Dśds/a#e\QK3ϙzLwЮOOJSe?r,R*MAcU On}-@eP<ʯB*S1e9s{&iɪD} f3yifGz#Y\W*>*wIR50u M찦S[;>Hj՘ ,Vҟ˞dMʬ@X$,L`#d\k(;3%9v}|k+*[&dѾSŻ*Ѿ-_~bmr r;fS Z#H!5Jl@\‚~4AWPyfH8.xmVۜI][NgS<'CAҜAqڢ3m* +Fͱݩm>eEsKK-(u7N }ۉj[Cs8@G) JGn_1i?!ɁlIi Hׅ 6jOmmz(fkb,cˁ^w>j}{°|ANɴJIQ0*Nfz:m2ZSiM@B~n)ă1/iZŢÊ vT7puoNBXݨl@rau'7!䨡C'O:E^=EHQޞBPM ;2`AhDӣ6p.2"A f11g+iTC"tdD5Dv$qB3(F-*`uK&C*8qRAe뤛-v:FfC(w ޡQT㭟ev=B6yoAm$܂B#/U\T7 Zi1Ä7pM5ɝ[q}wgj|EhsNߋ=4^ƫu)9X'[\F'xhQp~*&hgKW)Z,#I3 J4'lJ^*]@Y=ݧJ&l PlFx^!2` O O-Gy ;@DA}$e0' &R2!^sN ^ USԶyN( YWмJ<M,mVB#3,5N2B=C.i$ ZLڻըЂYx=B>1ec|FQL/D6'k?-YM+ӥ8bDtcg=3VfPZ?@s3#`(Eg |9>U5ң \bf@%S#F^{:YSӉߡVxpF@GZm^a>GiwUShsm~^Ħ^Z1/p[Z2Gte!6ZqџKHT+$e̽V94Aڕ}gPu&❶!髋1fkK*NWi mXm=!݃RI U_IYl'pW"PTe<$J~ Rlj6pi0Yljm5q Y3:0D \Z$_\lh*zbf9BK]6jЉ:Nt428.6cʽmq$I\.CQ:|rjE}jZ;Zd[XkHz +t!UFr(J ^tn<1qn,I=p]CgS%]G7A֞ _NEEV͋?)n)YWJq:(r1rdKHr-(Wٙ8_<|ֵuA/ 0Ġg;¾ON.ru^ȭJ G <Jh$ڿ-ÇʓuL4^uo @svO妮o[BdL"{zW*/>C]?pM,t/II{+*Ȳ>0Ŵ#{7k3L1Ԙ/v|N.f!C{q+ܮM6Oo_ H\XfV9"'~dΐ%\cyK~PZemZ¶Uq$͊|ܩ![!AIIO$i\2á^<\l'8»FA W>j]nzrlʯM? ȜףB0W2RSEE‘W1)0jNU0"6aCd#c]0-nјɖl!r^zsɘҟ?eԷb,f o!T}OE'}(yLp`[ac."M<܂n,A]h0 3>`Hw'o]1fTjHSU8/-5ٲ4Ed3ߣt0 XPYڏܤR*u;O۪3<ɶw79Cb PýA[lq)7ϧUM_'m-$MC\աoj~E$Mھh}(ozLZD])+e&kh􀀶O,2e\.5j<2RacEݼ2aZ%j<{Pr&tLk9n |8Z&#io;!z`篹`Su0ng\/[MbPgx *n]\nnTjcQ:DuQMS`4HE=̞Xzg}5ZB!d']q>iU`iNJ|kʺXOW圢EF؝ZS7ZHvw;3x6艂Я{Ert\7];E*0(6Z>7f&cUzbP\gV.[˱+zIMD:s1r#ci&`/3q޾E5tdR~Kݳ :(+2-xx9`j.ӦF.fb8xllL%4'1;\ sJ7-j{57NFf b: [ ЉÌqcgJFga23oCv`LyHtijM⧡2zkj:;p%T>1 Ċ$Ԓ\򑄊wTh}L/܏{(_ވ2\Hn_@rJRc,v@d"j/WtqTh@Ul<ԉ#IV 'ȏ/W~Z!U,Vcb)`\nd \ཱྀJ=m.G$07x$J [dFtA5;5:fGx]*B.m2{c2$1PBl+(El43te21 A4 CAR b2||ՓF]SxDy"jaxYݴdYn/M\][1x#H ZS(/ozi PkO⍅xUwGn{l N״~EMN56y}2 >PX\jİF4[őOM򱧼;rEdb}^S҇x:e|pKl&)OO/|Ȕ'7)ˣ1YHaUmNt{?8z.ܖ/GZ`v]6v,fe4ïDּ#1H%=#W}\98Ie؍C4D=lir,`(6=ə-*,<^x D`Ăc)s)x*q[(+;s8;AYĦ!O.գ[rC C'&T9[ /op2cBR%s9ԩM֛,åu /TuBMp80OD>ЅjIt-ږrBEtM5q@^O=YIhjީ12f (<\lJ3Sy,=Hǩ5Sl0C1 ;\Pk'd8L*Kil~oN}@I3%(pʖC, WjR|<=Jq yħ1orfܞT5 ڥAAZ h&L8(,/z4 %tHH_Eɮ?X:Nf% M a<\# vO_eh7FÈR-I)eC8'u|_6;'@*q֖vk6s13$3aT j|ƿ >5#XsAt CSR]>QGIt|# k$ec{F Es 4QgS-w /@=|^Ҍ8d)QpQS)/JNpF?Sd ѳBdXpnjN-+d@m>H%\xݿuv9qU.Q斵\OvBo ξvꟐϔ&4b*A9Ŀ?h#3'4x݉7; %V L`O&Wd(Ma-Y^4o*xAuĺ԰8`wL`@Uc5pCHXי?&X`mBe$K&FcEʁ{AH\-\ 7΄dz-_ty}ԻqLpcFJ2J!nKbj´|ˋDӺHX #s*KO#!g4$j,WitȬ4,aP6+Vy0-1,ݼV,Pb/3bg r⅑I6zJEjHZvUĪa2K4Q[PQ'o,i>}D$uBL5#{l?{ (*`8E97PsڭX">:dERx)G?EtM$Diz}Av'W[#@J eRI} i#2PIZc}݅\ 9S]eAn)jjWFM`/lVpE{g^w|%[T.+Qn'BXK}T!,7K|fG݌?r\ rf>hKjLRbtq T= NI;Sd aO1/;PtX!~[ R!5g%C' C;R1g~JCc7gځ&;`R̷-p@r"ZX\K)עOVlc0NO17!7B[=͏0%Wkaqd l1/FP!{ D}QS`1bVb!q)V@>!\^+ FHP9sh}|_ ljTPíQzE4l#zN;|t&N/al~ JpQk5"$6C%sErH$纖,baā)+' VW&ȧEhڇ}Zw&dF->BWƘzSݫxEPxyf0xcN@3M2b3H(U,qt*@=sW# E~rtḐ ixT%[:{,g[PD"%|#6dv,aU+e>^(˫7.u'(CKك/ɌUc>\&#m#q;짉J:}-ɪteǛ r'D%ih=. QAA0Ҋ3Gۺ6*T0^bRi|O< #BRPWS,ž\F*H.Q6X} 0n}@v+2p E~}gḋpP(N4wiP446hu_+L{.L!C|vMyծrJ&4ڡCQq!ng2Z'/&Zh0w4`o񬃣́tӪ$ WChOXK"r X)P a&Pn16ٮT@zڑcnj]nHQ2qs1;_pigw*!ْi;fK!OrQ: SZ ?}Aձb~IrciKd"+P÷nSG8yA|V^_A ثC54EČvr38aEzl '/¸Olx|e"e!˅a+\++ d4E15wvԸhvra19awy')QFP2=㭝{+*NF9zLHRQ&C^Nn4hPN1W:΂R5>܈p_WH*ёG')޴}#%7>_ьoO% G\ 5Ys niSlҴ'3L,1{Q2 ǬF\?a:PT z2&}NwO0G/P{3Oum :iF$c(ŤK*x ) 8ڞm)+3$̽*B/u:=FR@{.`*5NtiئB9I}#>m Z)ձsJM?Ѷ[p; i}uxU73^{~3ް-Q9ukiXlp ITWA|2#1SNj7ԙ(h݁2&թ\ rIX*FˢTe\^3<).=B0DK0jo9L>9Z.51^*?Ez(Y 4N 4P.֜&ӏH`v 2]݊QG6)T^HA&lmCxp$;PN_3 ^cCE2EBf HѼZ_ͼ1\xe0O{Hh9aL BӢ [ӇSbVa!ʚqFJ?e f9nq񖂌x}/fL|Ļ]m8o/6N1ԛQ ޽˪W$wz5q\ z^XAQ]+w*%OfP4[콨l2*f7+yyJ"i,^G/ {n؝ )5!_ƧhER8+U`VN]öb',# 夓 AxvX|?H/(xɩKIu] Wg4` pe{trIԣ֮I)o.\<.-$r6\ ^c6*Wi>[z/aasR^|-ƨɶ TOtnLIUYu-ggٗ >yr$9C1./R(F|̼ۓꆼM{Iosyx4GdՕFد^h0%kVc̖g_FCwL_e=eD΅jR%GG6GMM85 JHn< XE[?SlƊ Z4t֑x;,=wa̺7/ }>0R}&U; CwPnmZKɊv0 蜧ɛbd[zӍ3C%awRwyڠ:S҇QkxybJB.xq)( {C\iAݐsE[!~"aT*a{ g(kcK\ttYMT.( P'KpTƲZ)N^3Iw#.F;9'B԰0S+NطHphPTq1<-]Gҫ 8Y',v*7Š8urC\NK{Nl 4FFwɑxMSv"ePXd)P]gЈj!f׸l=rujoȜa»),[x8u{q ƲJM^ ޱz|X!-3,!R#A\G2#jtan}zCҧ\6w>8 'FUCf, &L?-zY4 41_m`g:n2IӦ>;g5Tsc{Oo.'c=NW|Pv.1}玍jQ oWg+m}YX#ZH#ÏM%J &zNYG2$0!A gs %6ϑճ֠WZg}*g>}HyfY#/누sصQRu$}_J^ƕ>O|?`+&лVeaF0 #sVm׏@04MP{_pүpYh6@5¤)"@`G’xjf>Q0~>ғlپ x7cU0>dIc#f<ו(RSsr9ے\ڴY7C⸋C?OK=zEբGe%3б.Π8,@p[e+gι Hk'1.x' d)d+","N PL~2=fG 0_nV%3P, $هRs sZG{5v7*%FF_lnt̾8v{czF@4_b>](E3Md~ .}VTp1Mg:Ӕm"4pL(տʱa n_ס3\xN(tWf0s*U$ǯWKb.铘Z7_|&"6] hrP箁"V!fdR} k\Hz9*"8 xOI=(P$UN:I^GQI[7t O}l'"mi'R@.iE(֬x  U2REx}' ވ3՚z4Fo6>ggRާ1}1kPe N@ˢ*u+R3~=|(labSy0(((/뇔MJ 41$]_<+zR|/2lSXSU@膞fdo)!0\{1o_0JB4Qmf|>-M12YO7zmRXUjX80"$pF9tkLhDz}rxs%AU}Nƪq9dȢVj {d5> S'TkI260 b*e& 8jݑѯ)1:̍ jL~2:ҏxd<تy zQr,&n\jKVtûŮF4UʻC9P: U䱅 4+^syO݉+!gNDao30`)OL+"`(sBr*:v;'"- yvd0lL'|.DmN n43'ʛVCp1שJ`}|(sU@˻]eDa=w:5wISsIoiۃCƞZV,b%[^g7̃xJq>2;H}xV$Z4dx&\MڇRW"œ(#YFyG7kS?޿9UJa+\SnHγ 3Sh}݈:OL7SGX{?iz004|6V=-!L42L<4O(HXˡ;YbWP}pp)oT6˜ {I 9PRg fu>E.ʕ 1ae^^j_Oo-;k "Q1[48!QoR, ;<cʻ,gP/G-|Oc΁7ah_ !ZǒRa@&+x QmiKTO86<ゔRΑ~Ś]Wm=hl;tuY^N]#&Igcg$OB0dk,êJ@5Eo(+Psz:ZQol< 'uo/bu>WxP;'0%@xt`9L0@G6Dj W9{uyhMD?܈Gp)CذpY>hm:}yܓsjLwr<5YzQԅyOk+,(ZdlFy,?Ep'J!7o-޺ '68li/<g D>R4 "ab{C}7IoH^gM4*kA3is39B̺Hs*GѐNHOLB碏c @L(ߵZEK,D<_u/Ӛi5 #|q%q#x& /ڙrGi _~O7 *OU.΍)KTC`3 Yj5e0X4ˈ=C`V~3yQ"yf )G43q_I^7࢖ AJ t4Nps=Jvki{+:fJ;Y;(݌k|g쩵ktˬGAx9.+ @r 1!3cchKLB:*}B7pO^).OmdzɏӦ$uh>׶`<5s欰l8B%nϮ/۫,!FzWQ!Mb]u{j_O )3$76V "/V;3;;zm/\NG n[.&Bt^;C?]+\t]C Dj8.  )[bw˶4Ԇ|vp^'W s4nMx|O= ?[GmI>De 3'9 3fF{Lʆy <0|V׆qꏃS@lodN;,{c J5,jD0Cьv]D1wf* ')dm8̨p8gKaqL+n:wTң|'H>C" Nl!6 2k0y.9|$Py_sgiv:WvѥH 2`9{jP?]!ZfҎ*dI~菉\FV" kΦ#FY~3gla1`)n c](6П#ekL $VD9O2g{Owpas:2 b0dҊG8܏iH%1Ty*Sq*J+3( 3Kr|Hqc^ '( 5l٤Qyܺ]\Ȭ_?5LYi~Pth(X%ͅDɱڽ/_ =#ܮ3XPwKzwFc~JbyB63ínWtKsSJpM-,IBWceY?Kthd,vL9;̈́O]1Z)zv`IxbP^t)J4E!7G⊣7['g=v[WFHXM\wA=p8[ۿHok*-[5iMƺ(na}MS+NOشR>)Ir3j-5C@#e%H VM`L|*"@3ȸ!yWu^[߱:M:-۴4CЃӶ"<|ZKjaSsFz˞̥VCv ڢk@H}rL!Dj5o=H/$>A &D$B KB4.lw>Ԉ4h2RtҒhdž&)*XT5CRɧ)MCbk7XJl ^_& Q@6B-9B?,(!.yC[4JW ɱl!Q<ou\/(ud_PƐ֩8ޏe@[a/ @ 0&aK1 $}hoZ l ~F8{bML:xJuX8fCJW{r!) "{nj2o3J1J3A 7?W&f|Y>"4jN|MS#DHg#f q«$%d&Jw0!%%nGZkLff+DN/G2k&6[-!.wBٓ/@?ϘRI[j0͙ 41y_ۻCErG;ُw[g?]hvoX""$Q`:Aۊa6cSM6k+CftC64klLǰKӼdCӮ;+qDfHț"a2!+tXVkV{ a5eb)τ6v?NeRA||+*C#Wܳ3H^섍N{Y;NTV,x^#m;r6S& '_%JNep _`?{t&u͸N_}kYeBn*ne /`l)W".~xI@jkĴd䶪q*},tw)"ySr@ԧoM+%AL),y?_.dAD-U*wy ke?E8KYz?ŦoLzw퍃%CߐݔӐm@|j޲*M>;cϩm?^{A6):A:hx:$d"B+ Tj;—> ^+!ooi}Ph)`gj?+ųjMv[MYkQ(hOb^SV{. x(sroZ5uc#sp|3K1*>; R9c1W'6Lt[c⯄!GFT1[WUTj H2]q8tL .:$8_Wu*uCBWRӮDuo%q[ihmZE"6TZ)ڧE8S=nX@/s m#[D <B17uG!謈!״-a^}n:s۞\n, )R0!F`Z^ˆQ咛/źJDz"-qS TUeWy zs{^oC'$074k>5+[.Y+AaC4d;lHۓftoUXó o- ȻT6>Xޫ}@Ӱ,&;w ]}^}%9 via10Vl8i7;6ىb-N.FZD~F߅/g@.:p+*+ɍb]4ڰLsUK&nL1#8*MZ3"K NUtLF2˻:DŽZx]${ ͼiq@(NV=۴^7^: c-crJTw] ùJ5] ~yTct˽p)N t%OlaM%Cv,#)a8]l/gGEed M{E%Vݜ)zߢv0ܲP)vp&s$3`uULV)8QJNOdB^ C秸+\+ AP||37Ŭnզn2^ ,h%nY⺧<&h9*r̬Fsh%Q9АgI]"|iM⠬P^9%HVEp70/:F1ä'zjAqxEחh~:|=b@.2T{Ǣ 9Vz;$WQǔ`D;?ɇOЫ@^k89FRzFDf>J +YUO+\\;~">0fir垽}sں.=}߫1kSsce%G6a5V'WQrF*4j0%k`+]bB kEok^lGQjj |.{Zqlz'$9qYn3t !'QEX3lVCͅEH/l4`/-9W8L,3vPLWqefҖFo6J:4ΜK4ҌX-@js niUq-fI (cB|<4T @ ovrLjLo`/p q'XńYg+ky&ifM,/k+)(x PKi`rQJr!ڣ.a ,eL <j9g.CUv!L`(40-* Vv*_j"LnJǁ 5]DT% x(|A;J͕/K\ϩa[usZqܓҁV+~ PCOD<eڀU dw7&5c ߜ=@=#= 5p}71A@\Fȡgd|,aQj;EXiE`'Q4wBs(g}\;Ccwg= VѠ] ̗B fn_Bma2 ZbU2SosKPUDPYhoLy\ .A1߆Zn ;>bfYAFzc4MYo-;_>qVr|fj+M'װN+mGk?ﲔwVX^瘓i۷%؈]S7dY#d^J6 1$42;nD#1jx/[*fTr?Ϩi.8M™]tksCa qfk;0\_&B*ٖwOo@F&ğf=R$v +?6%"o揥!$|<'|zLpV/b ܶ…6tᶽ"nwaMGdh p;^ƚ(xUp ]O͝Wˋ2,%vלWf6VtcP>7D`v͟?THfF|1f=E#XDe()j%ٳFn6LI~ڋ#۾6_SV jm95 W}{Zd|͙zr^kG%! SRT_j AyLK0m~F3.c' aOF3@^K1&u`ix d~o%pW޴ŵ+rl.1JV.Vw"_#F勛L)N,HƑ6,DD` x*濄6V0End+?&kY>x2Q:RqYƅ(ߧ7j ?B]aVPOzc1'>nJuzޮ. @iٕ?1|u~{ "ϓzaY }ZP7Kk2zSYWg"o5!r4wtI3~'5ª2@[8.ɵM8"qrE &`X`^n7Lѡ.cӍ)Зwmub{0cM]aS +r3XhG̬ =0k$c沥֔H߁VЧ$B 2ͥ>Ê*]tZLYD$O.v1B2Li`7S0̦Ry;^qCwq$) iZ'Łzia`pzba5[Ԯ䣛mhh2z l){QJ|q8"pszQ;K?'<1O>"R6Qa>urHG{-Sީ O-U[!ٲ;QXpۂjozkP!/;+Q%,57q8h)2g(TC #΋`gs׋?-r.bEewuȤzM:AƊaj[ܾ1L9Ew||)m! {^hse[dQnB_FB:)ы%NunC#q 'g HQݓh_D>-RnbxCR(NoDNQ^kpLۻY54(U(\d#iT\ۙRuc)ǁi;i̬"k D"%\+z[_ [yǡ`#Ta~%{Au8"?|VFep%\'^ JHοz[nv6ײCH2i_! 4۶_ػ* |гQT!8@"q?0H.տh T-X֕`N3K k6cCUun@˒!<òe8`RKp>fڋ\Ki(IgLhsAD?ψsUK44w0"xƶieUBR %pJRT䐤Y;ʊ[3\ ?lPc~H\vYn{s`|QB&apӕ&nœg=Zp/_r7A_rRWb ӛÎKe2 d=߄Pqxd@K?b̓3`P̍@#T7|Tyq'U9!u <:}V螻:%ARBb84=7#`;>T-1U'ruD|&ED,^g[ 82TFK]xu7rš^8M8Ӯc1iʀƑ=3]e={ӂ isf[y}ErpJCwY]Z+wCS3+~n5[bL4*˃dԖp0C/BF#$͖Q\A. ʓK4sXݰV'!8Jk* z0Dui)j&&M &9ȢB&InQԆgc\lb94>*,st\  pHWiqWj PT'a3x(b5T7}:eP)U;>1z{^!Zpa&-|t7vɚ YutGtGv09#8# 2 @$Xd)蓞ulY1|,># PБǒ)vB4<5;M%Ra"m״<Ռђ;|+@uX=i}Q `g݄iRxvh3l.`n-0X@xM_A|=KEF~w s)>CΓܓDJ+Ē4y/3BXWmzƱEn~?:A?zʃt{bK"׷v>ݠ[ᥦ$Z~[ XѷA._\rE  _ _?x/O~pu%BsSX,;vgj8)|s*(}I &5UА .Vwc3Wꗇ9ՋNJSgg^7LI2X<c[ ?Je?wVfq]A&܋b[r|")LG@d[PSTN|* 3-8}a^It%t烍26WF u]^.#tFnjei\-9cge:5w0sʋZ#lDbGR1֤z5́#05Q1lnOpaV4{F %PԛbtUWQm^&{8F!_"`9FT/J+5ަg$\w*A% ax3s ̪j󂩐j0rtR([_7v(g<<Cr-dnr';H$x9̕ImQ6SODX9zllZ>WnNjt̾<ՍҵCk7ĵW hpI>SnQ#005y֊騊2/0z_ќnBFe ګW#]4da!fV HiFKlky8BzF+y>ײVWT$~ YI^q-?ظp a?'tUh >D>jLœ>v^=eZܡ*n{ꂋ.t A"OX8#Ȏe*d#2Z܈?{oh/ p,8!-6/nl }gYgFV%&xw=9Pψ, C GijZڑV.*XU8sTerⰾH鮨Хڹvp5e?|aDQ(h_<^v7OғQC0 ǀ1Y$ ٜF!vmڑrke {̢OR -~|;E05R.Bvg4Ӧ% `j#j&l0󔋿mP /TWU&|n,KaZ=DQ}A)RNOkT:>LJj>|6]F߿^4m씸Bʲ$W VO6j@1Zɋ=!O7w%"̡48oOo^}j %c1ќւi.Kqn&],vj{"TTrF^#lb'&"L!.#% p~;`3 .WTV&DgP_T4_r|pLjc[sutL-+MciUf|4H*\RL<:JlĞmdNq?RGM&i '?%+SF>_|w"_vBR'0A 00=OKDUn+wD.Tgg@bĬsx}[`nW=y!qY~ ^>i*|~t;)hWFOW]#:­}C1 R5&!{;/hDkRU8p:s ʦ[7\'X4p Abչ/eد2F5հ\2EX wuCp,_0]b p,73 pڴ+dr-Ĕ8U˷,זYjˮJ~qp[/iT D| 1j wN֣rNJK2H"-r%bu}RO<R[Aa̼:2h'F"0{RMK;mDFT55%7{ 8k|x(?d"8;NRD_Ĝ a#% nM ѣ0}0^bJu7.#s?|yia3,Aذ0$Yv4q|ɔX4=/ej<;{pSvnsO aN#! QH9-q/ BEB0$Xۮ%hBZ@O`IB8SCgI*02g45hu |CɁ٦ g r }ݐPv)q$zM( G"}r._傆M|^S-e?E߲3EĔ\hiauY2'l/U e񍻣P?T[U #i$K s{= QSOhU%H(]_ܥ. "~}x[2QltpA6o;|R7)Bof% ?&nW_8uX^*˛^goBTiL[LNԠSKu E cV#@/Z^u 0<I]Kv4dN{œ3jJ Tms3 }l"cZ3Wԭ=uJPfJ)LAP _?(U>؟lB8TYG ,nb.X}(Qi[5I'=YG$E|Y(UܲUd{8STy]&ȥ -VEJpg&$2e7`;Kb w1HaW68]^bh"Tu I9>g9W7I[fy2\s*} vTˎsh M^(:qpg86_B3WN͖4[jZjoWS8ZMn+6ejPZt67cwChzҗVLEe$}R!augط&Iy,xU/Q9*Ya\t8_@$"WiY@$rڽ 5#A'L w%_?BJH>.l 4=݈AKt6΃ qK4 BQUfY[RǂHE0l.FipzdD"$_KVi}ZFڭ^nbt4YqUw&uozD# %ÝM\HdJ֯rp{I ,Z: C31̈́FH| !-7ٽOӻ\1:syj_$e\TkeFiFD)%S \e?J2 Cү}gl7z}8W҅1&ygΆQSyrfHjC`QߩD LF-"yR_ꬃnhPzeecdxK 1_ԋ=LsQMi 6w*r_,219?lGA=6w/TCV2.k-s^[IEP7J{1pڋHs" l&UsQcؙCS/bBͦ_=Ml.Datu!_$@+卓x.9!ta/) P`(i1HcO?1<.mw^aSHf}Z[ R*h<8NyO9' 8[;" ,Dp$5Zodsz1ns#,*G9"]Bד1#*kny:}LX`b,%$vjs/ %.{M6_HMnƝmW5ׅj"'DR,y7mL<&:x/kFޣfWgXLOeH `2,ijde^= շpn{\"D>Z<=y^G8lM=2iuJQofkrZ160-p޼ffw?tRt4a8w2v}[B\+$ X[v$YmaN$ϔ3G$(GX+SQ&G2&,zE{ I [ yzazX]zƃOf v>?Z+ex^&9nZWWIz@n[ '4| m.e&\4J Khjߴb=WMd+9"l.]]`;"l\\<K:.>ba:f„3@j*クs3LY!36s@ =4U]+tbfҙi5&e@;4Bnҋz QglPǣ`ZH5bؗr/Xq t/~Eq?X3];LtŬr )[H!1ΔJ ;|r:bz{ۍ [ZP\ $ŃQߺr⠎W;\(Щ/e=X/g76|BQW 0y Es7hyDaP19 U/X=5&T6_h%Օ6u>{k !ݑ1R_TjV[K2ftf,?cNe޷YqRJWiHᑰ[5V=ʌZ`^[DžF:^}g-` :!'g2%eegk0%TZ=Jq)+3ril""~}XFEp`k%LiS5E#{jץ$hӜ}6uѡD ݲ`7 Gy\ %"4@$9CślX*ŭm߯ aYEk\€X64&X?g@te7 A@, <`ݹ" 'ZV3Z !&{n3gS `Ey_m@R@x= ǻ 3Q'u3hz8ѝ~n~Lp;"OEw&!ծY=J;D!޸Ҳm Y !=/zCh=H4pj&nL.!4Ef>Lgzd{UqpvH1ѯ2ޚB/5 #d&{NUT3fg)&VPc "^ DЫ̻Θ`t;#(f\Mհ /ʛf)3SH3Wm40n/g%ՔξR=b 8mDh2n$Gmc:-F!V9)mdA ,cN!^AOzI/o!yj cra֔O'I/6 -Ϸ϶{%:sydG(\=i*#Sf $XfP6_tLsYSX";[P-?/8ImMf;8K7Bj(xƄ Sƕ }u^/r=Qې$jz|vfB#/|2<ےov<"wrph`l~m;j.YC~/,~t=xY'[$DY\[=JsGbCZ}ƲK ƢT™<)d3q`LKώ)e"s`E_Tw-¿c;DJeit#)47tz Mc>RE8:g&_H1P0҆3(AKG1b\n8fQpv й>E዆YkQK&T}il\́X{*30UjwnnOtΧչޅ<!k0#* r Ux->'v PQ"HaP}yšHBiU_ i߱F?˦Qm9Hόj\CmclOn yAyoY*6( RaAP"+,OScʰdadXW%)|)i &f#*ԇrhaִ*E]}.Q2z0oK;{nbz'O/f| IІpvX<[$ ` mz.JPTXcH㩳Aa(,|"$q e2/A 󤕕k ly:Qߚu)緗`Œγ]<5 %7w<ٕ Hx΁5*x!n$E@LھiO{f~#U}1lNNaU :b>E5wXܷĝuip6N<[@K be5)uQ `hO=|*}9#%(΀[6ùPP۝{`!P;a<>owO2AAÐCMWpeQbJAR&?H4ꤘm0[' .n k$HAmovvgvmy#ք=mNfM,NQ2wwfNU?Y-j~Dz*Y?͘\IoO*ʊNczWm5 S;qd(; 8R5>_ ZQ$. - :t/+!F/蘼"'ը0Vt`NN_xF.x/ D ƛ,<~mS0B HiIǕVNJve<<8Sƅ0nAQk\Jռ}^S)vvH!+m~mYXW56~tk!5'EfTxe-'iToҮQ4EK= 9!N;+灥SMq=0\x?1'A 'gH&D & PBd0dP9Sy.&ɕ9;_'rƒ'mq;#zȵ}g-Lw~4Zsz|ɌFsLU4$R XѡO%uP^߸Nȡʺ eGrB-;S>`'({︃GKT\h¶ØMeV\nj:A`1⽤HIMJrrer/ıo,dp`3&11beZIϐv%3F Yxn>odpr%^ҤMXB [bk2BV 0, rU-.-cv4`,kcg0ŰPo"Qύ}<Îjgx+9kC[h棊9}|).gs"EO%n UPWWU3z$viTڟIfʇ.@!DOJ2ZxqY/D{rID}VLȴpncfA*-٭GZȂ)*b#~IG_v|R\, Z0@LR7 j(b`iB<$?eL^G`ٺ=(nn8/}?oH:%x?u|vn(y,% Ix]"OW#l>ui.ekVT^z#iWyÊh~ [PG| h5Bٴ6 з8:t>ӱD0';dl(`:d ݷ/- [KloK1tl[W:Rj;qW}ݿY4-NvmD xwn5tLG#x<  4"{x:.&c,S<ނ]+Ac#d%x\ G DQk_BwXu_wՅU>CSqn{07MD(MIB Bft>!w;ɱgy (c7fMi z ݚ\ZljD$eG=s4Cf@%zYҾ "ە-iSA9~eꛍHGIQVC!gG+/!-8l HЍO$w9[rZ",M.gjk.$BaTWX/ΧDJE!7D,+OfSx E?."d 11.{8`ŊF 2Cѐ5 8P/d]FBQ 8qeMղشgVSwʬ%PY^&d3oZHұL싴֎ @!8#fh]W{S.i_d't,+zTjA짦m=u};<^>Ø+yTM/uۛ-+}J\4K)I9 ﻂθ/NJrxvj< mĠ?Sq3AdPpԙLV-E?:*3%{(!?ZH:!%('y?fX*,5o|=o.J9e0ߖI+c`M<یUFSBG?=>B5oǷ7`=gBȰ#y9E-r]g@}T=yT1Xo #ODß69Y$j=[ܯТ/Ia(5:ϏR'\ MZY]L0m.1ei#^*~@`Mك:] '%rf8AQ84Xmoz{0++].,TQ_& "dF0vǁȱ(> ԻN$}YFBvQKIa<ܜ9ʗ[ @ }5Q- 4Q<1wYx;vDR|بq4}nkp&6dv/XSx'`iC ?^L6Ck? zu7˲gd l ,>띺V#T]ΆM#4&f'N[z)Q;/ Wԓr-Qs6Qjϻ *IW:Q&C&Heʥ~N7L-k@[n4ξƧy?~Gc%&jJ3_NJ|mm5+S('!8phfڪ=CQ0{;_ ^ QLyzŵ6a+֌*H"ƷKeޡIU1rݫ"6F+z#*y(FX'ٗ"3"%nXN D[#=5Cm"Z nf@ h< JKL_' rtX6l-D2i6Tw6~!O<ڻ@*ԪGPi9苲cqpeKGv32{ׂ^dGgrZ:/(*6LZ9"'Rb~2I/Ĭ~t8p"ִk!3!dй pe1oT;τ2*jBN;x} ^!/4Ur9k#6Jj[F<]mIZ ox<=O@nq;gz?NG|M$G+*i'! ,; *1۫!t*9ԵUY,32ᒠi 8|$0Cy՜VSy젖u #L=aO%rl}6ڱ(@Yꮒ8+|%puL-y骨9s"*8 (:*a%h"%|g6q i`5/_j 7./jؙ,}irHI&ݞ UծsatD5t3mRS5O҃B6w1{ @XYF %OTNK27z4Rdr6TG">wJb/ VflvDvmK0D[v},E r0TkiFEԒe ͲU#;LN%T8:0{EVO!aƋLHrXA~a3v%?Kd^G4O9>@pLl5ږ0O@g6jL:OE,Jg?N=pcxP? VSf@%O4]j̱Lfc L# ƒ`$5RPz^CʪtW1sH;,#dZa~evyt1k_>5"հJ#)Yvs0z0xƎ P6venB :sV6|r [% sV%Yp4$hLXQXYF|8~3 qpa/$-쨻yfrioHw -  $3]~ʭz`aHƱV;wQB|7<>hB耢LOñ_;έP1OQON1dVzTC>9[&?+V[ȫ=sX3d%ۜ ~9R! F"9x\ /^޶tJ(w4<^Ӑl~}!dV)BOmZQGM!rƔP1B͏ ?08I@V5Pi (#JZg-y2(If'÷ʘR]!d?LLL I1ೲ:y>vQg64.L"׽ؙeL98A*G dv}"6bxN0oōw`@SvHu UcpԂ[C{6ϤP$4ڡ&g֧7dȠ*hO0诫b--BtNL{|ŽWSVbK(mhz]1} 1)D4+X͡5Z/dBm LF.,jK푞\.s^eEh4[[94fUbͻl>œ/%n52ĉ)*rC)7@#u A6Ie1OFѷ}$\1HN|o([TբOR"#F,Osz5&+=>_Oѥ'vsIV^'lC 5k0겖ZWpG#L< hE $~ ֜ف 7k.~TDXJVd7YܓϘ>e$Z9amQSaҥuqg!DpXB6RTWk)xlz>=QW:DU0C{ey^{x0>yH±x.HZÿddcM+UѰ>~S(xT9UV{w$(~cQ>'XtW9}̸(T- ]mQbxh&>6?\ Vrp+h*]ۀq3Sf?eށ$ ɭaiZ9}/n6t^ Unj9a˯Փ;}ZM6̱CreܔXdN jp+֕:>RAfi&q:xC>Dh[w0|} ;< 9aP.9 yW8I~"5 ]=nT.SvanW?hȩ/ MpVks;P:ŀ~-%?sGvvC볮%_._erkљ^C ?TڠƔS$77QrG\\qt;9 "\w)e2>0a1ÉqF5/\!,)Gkf쎣~^ȢƩHGT@˳&cΈd&kXٳl1 {BRܤI"[ɶ Q%-Vm".Lsq % tJr֟ǚˎ6db0cfIsĎIYs!+~Qc!0ʩqta0Z8,(UDu$g Q'(ת 9g [/ӱ\>Vy_hJ{ፒc՗z[B(-7|'Q7#?qWH)Yҽxkņ2X*U䐖 xBIQ돦;Tf&a9ythYn&nݬ>Ef4,菺mlcWZ1-:^"1H >Pj_0pn~f MK5M{ \]Qlz:z<di.- +7(j&vNg5_>>ma8yWM`7h.7S@ԭŗ?|9"Z$ fP$j kH$} lu 0Wc JC5MO١H8kApbvƵKNiΕ\:&a(rIp3V#Yitk U0 :2E&*m2wse K;V?7v4Xɴ[cgMU2A1%?9,@jut0n3To_ J{=kojmH]x';3ڍi `='_)K#ebKN7@i- LӞF+ug.͠BhV=;5ZEd%6 6Q= B7n ·c05:.{A> 7b/EXU^oSTSJW ߪn~5ܛ Az5E8JڎfW a҇mwzcY}X=)k er{ה:㪭ʽq |+f3UG߶x8:~QX- fHP׳)tYI[X;l&Ý_NVjX$svB>q͐fh1R5""H&6ZۓO26yMҍ`YUvC'GѮq!:U M#- 2fzjڼypҺnЊ)OPL8t^bזܣ ۹<끾yQ÷+ۻxd ٯ-6|RHjwR$%v~(Ѣ6vExW3=$K޻іvE|ғxP7(K %~ 4qܵh/%U$*6 e\KrNnnV75A4ͭ1Tij=敘dWλ5,VlΜ:o;67/CwtV!nU°.GT띬.,.gHq~PF+QR+sX`J8BlQ1#6( ̀mJTc(?j $W?: {lzП nK> ZwBv .3C5"_g}gg6WS f[{U=%"86 djOGǰי׾q#d^g'vjm\nj5z,.VW}4Td`ձEVhvf";Y|?%+\EPZiN i{z^}meN'Q\ggL(p9ͪ[?KkΪ_20bc7h 1=EW;ĝsw5y"NUm&vO#<܍FeLB9a}܅ݏ4*f\hiSĞK|w[~ %.fŲ@l@VHd쑇t  $2:]]3U&O3\=eeVУ=0`܎)r4d\5wEV/K7EDDۡcVg&f}hgˣJmx~"p۾}]g ؍ЕxdGW67e6>1ZHgmNikƣQb q `m"}=)T/!^[2jh|JnbJ]EUU HI߅ P_jRu|leG-(ԎP8?;Wbɩћ`ƆO(2;=aH cC $J.9 Su=F'  :OTd|W! c*@F=3+޸CiW|_iP{!H:+>:R 22 ?յn&tjГBI hKp2=vo6QgȄ i/yˌ!e'3#UO (>@nmfl9M9gDZP4Gv䔄|V |Agkqql}L#QrR WF'k$APd5T^FRؚ Xᛜm!A YhRSy{ ""wމOdUh=%|ulzb3B72^>f=,yvt=X)Yʵ )‿^_64`}=b6YAɜoma.l,\+F8G2nfX""+ˡ4Mznd -`kJ/E^cl=/1QsAtx; ᒀv1Mmi;aZ~iZHҍÌp$`#ɜni$Gp@bjy=fvQ"O‡V^;ƶ>i;l}<;3͝j sRP&Qd'Q&2'q:uy|fd\<}".:2/L*6[5,(>\ u`k<%w"J]5!8z͆8U^5谲pbq=9 SW%?#ŵy,pksmϵ+q2W˯# {X$ө~g޽CUvR@k#;Cmx9i-vl7ݦ&s!Z ?Wh).]@g/?>4T]?”XLK.u]Δ3/m^El? >}0 oG*j1-Z~@*V겤 XϞ5/dK E(X-gtk*V]ITަ6@3;%dzJ=ך&7@BnBI?|jxo]LJ}E5@:xDdP (AT#/V:B}䛢/=6<Fqq0ҾxZcÎ)܇AfӨR.Y6(-S8j ;7r >҅?WY!8bB}=gfd.H 3ʴ "n)Y "gjJI;328yiޭ4D[(u3Cd \뇫łYڶkY_*>S֗"&IdbJD|yL)wskBAP2"ޕ"&ajQӣs,:*?ھ1#rc)xph@e0CO[ P7Xt(VC:&hIt˂X} US~Ƚ`*$_&no Ks(~B.eިrKdjJUL~];ϯV౴Y9M*}M8CC+`ܯ}*di<_pXԵv(@&'.wR!&4VX 5-CRb0t=7$8S {)XY~2D6k|#X=..'O?Xu3{_l9s׊t$37q`G#R[M x"ae 3ݣ6LcMb9UFJϠ?1jUMƬi=Ɛ90p:K#z.i`6=DR$SWGc;2žPPح#s]eSP˳߈&ۜt#qE/A|5߸a͟p~;K2Y0TgU#=tf~ȇ^$]/ (pEӻ'^'bп?iswP,K@x17{8f0z2h?Ds(o0%L L2R(.-pUQS2^Bf10 t{m3ԛDm Ba!Lt1C 6$>1P܄˿W|5`k8!ӗp/:. & w/{ ?J]wD@a%a7";jkE[ :lzaғDRjQt./-/Dx"q}R17m`+Ml?'h1 hbzOlX_j䞠l#^MWo3bY] / UD,aX7Rf5:! )@tw{kA MւykR3DQH Kh`O^ c_ݜRDn(Agl: 595b0\ԎW1_7~ɆeC^56gglPN-C$=jkKh{46k>0B:E~/3$n߅jw٭e*3Zs({'hą/e (+^@I\cd+Y J?T'긇]<kH xSNuuRm`d ӑоV9l*5TIZxe}t&b* ؚ5.(FA\5ɑ5.#':FN42Mmҡ`+Gc+RhY`nLDK%[6:f3F vSIRktn8OϹ 81!}Q>R˂ `4Yiqm!J+%AslݝȢC Tn) +ݤCH7u`А`/<܃uWTogS̟.l+qrm1 kvpweL!V@v*]V8b,;uvŽA9y 8jp^DhզT*}y' y A -iCB#V?;͑eH( {bz~i#ڜǃ*hq^g$.ׂs6]rQڙNe9Fx 9H? I> Mg~Hp=d8۫)t89|d碶]79NwcgvJ1l43*Xi4<qdFè }g~[˄o`y=Sx`NtF]%H],<n8M Iߛ3YM~Älkmm k"cu`6X&mq`QRw^ELU"DUb0KIPN4&/7 N0BdMȦe(o|G:?ģ^C5جnuYG~?$7wpXeE>4pW nܳ/j@OZ"[7Юc<9- њlbY roͧ_Ư:{W%f,g}t㻹Y 7i:FŐ@)9  Iݔ@`ΏJ} \1n+Dʊb۬\ ͣwb }C xա^_Y 9؎vI3+8'd?f[S uCؤ@M"D Rg(?@=]-Nҭ3%%'ɶ0dŞ*gۇۤJG~΅8(A&˜o-V);HJgVQgsE,X]Aqy |!{`/8揝`HtdҺvJڂ%:gXXp <؅un:~%3idگԀ_aoԞCHM埌.y EoRS{~7KH!v:9TFv;O #}|`^10a'qK: 7&8s' Z>tlD0Vh76j@mk~o;q+awϴ@taA`#ք3"UL$v%r9쑳Lܯ$wKZ0Ywɣ~bpHٰXԐJ4 cϢ3OZϫkṃhaQI*ϼ䚙;2+ DC`K8Eq*bߟm盚Y;2ԠuZ?7]R{W?>Pos#NX4q^T#W !8GZ-yW墰 HLx3$5;b*t{맻z {HE2mp$:͔L UNKmqHx`+l ZԦk{MJd|Z㬴+ɿR+[;c5'ҙ&YX%& fOwQ ZAp0~-k~\}KM"(47"ZěKtWdy^88V',{{=yc .ߵЇgl=~SS[*Ѧk!ICjAzGߪ׫억}Ŧ`Xnt-[d_Obt'4EfիPZ Df`+'WD1#-F|,|0EM9¨8z"ǣ9)֜.'q{*SD>D~o޻o^Z3Z}Ҍ]N"*߯- Ũڗ|8y( X>NJ1$k/HnyL< c ,FJ:*e>6S/"# DlUyuН f# S'b pOczt H6'bz+y^jAMC+V^(vsƉrōJ0R?L&۽<#U.Rc19 5t6#T]j?Pg<4R^KdJ.}uEt(s&f ºqh\\',HҔ9Eܓa#$X#P~*Cn<扮br5cAE6)CRFI$s F'ٔ"9n4cރr+2brBfiy ՟}x",ɺw R:g-nŸYxL!~{ƹ25aV?٫!bv]o#;LU$%!nVꏯo@:[NT8a]@ƻ:> M.U @$Y <v':@7OQA UrrUNZْ35$k~ぜȧ@cȢ^7'ډ: P*\oU?΋nH6@$SBf;%^v| |4%φӂbseFؤ:S(Jؼnԋm0|vdJz!g0V<"(Kκ' ڮ=4D4gAϺvY͔zMXEZrHLε7]O4{#\b?A'I)h5"e ᫿}ŀCmPOǿ#[T%fN?lﯾQkcV }ǣ Єft1=*rBih>l\ L,X:yؐd%`8r_>YP$\ui,ۂv===?=\+U$/g6;/4gr:oa[r(.(G 8M]l٥ߣ Yf,".F 3\2rna/Kno }$_fI彔zRDͺ1{f4fҎ>v.?tg~"@C^DBH0RO)gy4~xP=;'?c>OV5rpyp4ݹ鬏[Ar j1F+c˕S+voʱ^>w%)"8բ-ktgꯋz3oO/'}'-nڂ9lfKbmoCT@oUobjd?V2`(Ӆ9_KY Jņ.94Yly F%ˆb_Gv!M* Y w!v [Хp8rV hfT4x0z ;E5i5Q`'=3 uD< o{|V3F;6&<mDy +&kZE#zP̡.<τEtIB8[ś Uo'L@/F,KCG+еgVkL*S "G"u׍M9Rp|VjfpAeY}à# OAYڼ Y8"RZ(Wk|@R a2Xm,PML;#OowDe}j$&S,ߢJYB)\~H l"x'l2 z/Tn%ySɝh@g.2Mg4Mkb .4􆄲nF,WBrYG>Ȅ( t ` t||¨Eg}xhUD'z yH\(/vt/ :XcDJr{~&$<ĈB87[ /4̔=k2xCIxd xH'fv#/fB@)x`"U53jRͤG(l/nx _ @|rbXfzJ^b a_i&VQDO1^>P\|BY`f2M={uz9])1SV ):Xnb>D xDE#E8€uB(}K$ ߰pu $!K@ǼtP5umz94-\~]RR}o&܎(&2Ǜ] /ϊ:_lG3 i!^轌Ӥ 8]8XZ~[u649ҙ Z+@[ w=Sy]T 2_ zVO Ճ ,5lvgcH##K;y=3WpmpPU[%Ԝ py dl6CCh]哯>C( :V*OT4^ ̈́V OHXhsO+dD {g>[ ̺%|u2,u6#늰[ y(ߢ`GO>nR:t#Eto=@Pɹ>n20V[ #?uۮ곌e"`ƏuX\ XVX[KEg >'`Sf+vp9l4%Iqvgi!cs&Z`S֚S y cm%_3#ޥ+^6ϭ=ЏD/V8Eh)w^U^P'-Q&ؾ!ǧ ނ@in("b1;ǷY؊5m k.:ǫr,On\cSUXcµc'P,k@0 j`wCGuRe4J ή<&k&VEI+։Q9ؾ!6y h:+-aYʦsj:HaKG0 U*9B-~pE34 HK2o?+Lj,389G- ܆:079@ ũAvD*՝kU(OrӒV1VB6qb1͔>.trBdI+oo*Y>ĜokhN∋:lv2+?%ٴWW Mǘ{Ąs̸4`N="j :A"FOLr&z6˿o}dY`|JX\dɨh2*ͬd0Dk4;;0}jUf[`T&\s!/262%v0E^Aۍo@+h2y kb}v7H"Y%$'zS#tCvmncvt-D?Ֆ{.dR<@O㎓>5ĴOS'&&.<ւpS2(v`r5$>wxT.U`;!V4d5@Z_uy њ"6.?@& qcoGsM]g*W’uTo =L>#W #k@K譝IY\:8!2cK6ӏ4*3 9> 5cpv!æ)(;x|G}4o}V’N~,BBŃArC *E.MVz@L7!T0Qé[KG`_n屽Mƻ(qyq-Bd򚲙^>:m`I[}Bj:뉬IoHpbTfD@Λo?DIBX _.NKt"y Vs- GwqF(,ۛ .c&}$6 .UaڳO=i*`}#Q;ɤZf@bYhƴ} RrVCQ$,L7c;ߞ/̶^`DSܭDҏ ?_#.eNJ!J9dbNzyP~C%=QL}RK~*u6]>TFeaSM!6 QWhN)pj[Uha'?/}_a팋4"񪄕Y6jxc#n*bKK= la/Xkd ' MHs ZrO~H0  !?ӽv)q{F7S!$Id\MVy UMVjbmY0x`4\p^qzs1y1QʯtY30pjR-Q#b&3Xw>rC~XP7#﹨l6.Z `!*DI|5ڼJIњaJL5e?o2p>NLUYQS%uc}ɹINCaJ/*Ζa&cK / =xӍxvV劉cH鉍 P E\v-t6XmR^]`nJ%pK[ d>Oxآ VD,lW ͒w ^]/EY=Vhe?dJj$u֝;Fc f]2og ^CJv䮴!Q"y~(9jZC7ƥ V:QVu[k*HervCQWom4Ɣp!Sq˵EGØO84 ;Zlɸ*d4$e?gAyA7o*bH/{ m,^윔X BPcQZ$m,@h'?D .GxG*eW;cMXQ >-[^;Mxں1beA^;A^:=n pm*c9:w̹Bd{Њgv'G?)rowEj~s&h5c@6SU,и1hIAM:%ҟE<3i}oX%YƩ` 4 Q f(B|_@~Y@nc?N=2BbMYyk( Fc%~~h=O˷x3[[x|w>q)QGUx5reOTc0V#+90qr^ҎXa+/>J#4 \,)"i.$*e#$Ypf]n@‰w-f}oqoqT XAHT qNsޯ> n5`EA/v䜲I~W~yAc.jyUMƖ: !"I ^{# a)oxj_u%4,"f \5 npx7aVy\ kAU)cDӖJ[xZ$qfΌZQU}ccA`a#h+=:9H@ȧ %n{5kN Uԉ7E`6eߐ?BmO=E(a9LDjnXxu\0աW@=E܄pj=~c{>};q#.%;OhL-XU5J>@Lv34i\O[9jݪ9 Hv:Rh:p&Nه㸿#EYXd%ƌp@hE$ .0$π*h.b;ZDZMG[#eǣ|#9 ɲTP3BdM2;@3)@PS95*bUVs/R?%~VqF+)r[h T[%W3sId$w:xR&ゃ>eۮJ,{Ӧwzb#p*lHFa"5{Hbe,Z8اqnb 7aBpNvHVCG0ܘ=<(9"͍ 0 H鬨 81 Ñei-nNߨ}R}xx@Ç}8UJJR4Muk5_(+\"rpmqu ^RmI|Z^IJ;G/F0r<3x#Q VԌ=S g YV,+-jg2BZF&5`j#\$|= x<+$)BGrg->b`9׏m<x)7(_\wD 0NԔ߁A7?(rcWxgN4~?6, *]j;?YI+ሄrp3o"pSrhpNF0⻊PYl,VAmqnWLک+NiMwFAy%LFZȥE-8 /S~8MǨv{BwFoqf)딺Ye=4l*Kk?1eC1wLdzm=\>*vW {]qn:aw Ǟl/ϕkK( -iJxP@j-2=`;KjÛjzud=Bt(VV_tQ8CnC휬H/`<ܙ#ď4$^k`)eE^JWI%Q+‚ELg-κ@3뺆%q쪌^d^Hnl#P}4w0{re=1PayPIP+\k!N#l3%(w]6&l"t.}1z2>^ZeR?ALpmB^BmXdv ;}Ǝx~Uino礔m@퍫gڞbԌW*tԹd\csQ1F7lƘ٪8ۿLW`s==(G\ilpLt5!h}ElU˕D(-5wЅ-$hau#+ֲi~KF'(,΢VB :d1hRmna{J@N̍gUl\c`:}}{ڈ/G?%ʀ-@S;J bב"ˈK`jN깂O z__2iDJ^Z 47 -%H3@3|,)aiDstMBjKkx<.˻$EBc]h%g? VP{-1_:H3 یof$lb4^gJ0eUaˮ,rUuNvx\}ܜaћI!-5BZkʈe[II6>ߤ 2~/xzBZ?;tdׄ:\Ewn0h]^AC).5ep93:+!aEb.P nS0BkQ( 1?9KvqJY ( $( Pld3, ?8VMCSYGP{iJS0"]A=b wX;'Z5 ѻ. jˮ䟝j Z/YXo}P{j̈5#EHxAseSzd0i]C},gTj LZD|LI7/V X߰sNX,ػ 51BeGʍJ >!(^we'Ĉ4gY6nfcUӼϠ^@J ˭o&a*s۪;ސ}R4G РN߱)-#o&浻^ gd_[Wm?~gRv^pOʆ Uϟ_`B9ktA~9*L`X^^Q=|; rfcA=PC{Q(nat.}d h]cZ+@d}nXaMA~D) ֡=,6AѦԽ ns$+`Z|hO?dp}sq~wTOs.XߦgȝrduGp +[(_sM7%BDӠWvRE IHA5daq+&QDV7RM%Cxso* {\ҭwF\IJkΜx>܍O9[#u{4d?:W@N"쏖CSUïg!4ǹ1Ɛ.Q ^.p_4WgC+V}|K˻̿5FM.{D:1R ^J.}Ze{KR!J^vpjbtG.%ZhMڎ1r[~,h#؅-I J(G!wQ3tW*Yq*G }v|YX"1_#OIUˑ'0*ۂuJ) `g5~m-hfnoH`ɡONbzѬBjޡbhG˗L7<;dIxA3&E)H\7-2maúO_ R+ȝM4MjeAM N| }B:Kf @^s"`2tB lWrN.r]}HOQ?ڱX K =2 _le{t՜LX Y ljEنaLFxޮ#˧ W^0/.sZm7̑>,z3׹􃳸/f`v-KӧºmRZ3;', ߏւ'?. =ɛ. hEb|vUm]PWR,Jk1Qm?nsS`AZc\@Vܗf[ 4H=78bPEzkQl3D?f6B>D[`DdYd=# &`VDZbFK+~ϹNMaŹN m)H8"*$瓫*&#|ZvW*9X1))93"gb8V#T^{g,'Jh' *1 YӬDŽc}`- uDO!cW7Zc} >dSՄ7fN65$*`:-ϰmqͫ\^I6%߆ /J ̃B{:L pfFa?ae[4ӄ"TB ~SL4~s@=J&MMɪhH&~Z4iʵb㙚VsJs S1a4 j\KJHG%Dž|nSgOMi&z3tf2ΧwS WF+{Igu 1x$&r%_`G={im^"ဎ5e"¯^̵'g̈_qŚ_A)a[G݄{n%֩C"NWͧ[Fԙk.ruZǩ±$CcAJ.)͚}eTp]&Ӵf -6X' !,<fAaXbd9#DNcZayH I'5oDˎ=G2(ԩϬ!ct\M溹-L[ cA!ux} .FggDzHiy*W\MT 2͋ QSIeq 2aҲ&m}pdzf Hg{_(Em/_ Q~4[2OQ|Ѡ1bY[s$N O%؇@ o+BGr@ =r9\ӫmsa">kD* `tGP,CJ0`fFh u`wi8zMWuȷv!-qDsڬB ڗ|;C{ub7|ϗQ6׈.iW JTtHlk}!=9z TAzlie{ I)L+^gwIrO-nB> p9È(JJC 6e/v[R]k;﫧zzNx űB䦥%>'Su[NT[BHus@xWveS!m-]VbDCrU`UnqzXrh%Y`~I]6PYw6bXВ,nQ("#ωŖS&,q2o[s*@dǏ/1-aᛚ5d )Q}̹j0o$ۅStũtq@c0|tҮhn-5gQwx{HG r.] da+ AC:S Icח+SMB 4cmtSŗjEguj^v T^l?wwG /An#3N6_j._KqG>K?w]iZLX 4z#=3z$TR,{_l`[?@@m+h1bA˔|) Pl0}֔Ǒ LSq烗!wF/v^ ;E43ȇ;#=Jp q!<\PEiDZaT *Y ^dTNիp=r | e92laL>,e+5 pozO%92@JPV {ٳLq1!ѓ<F{D5a(?ȃSLG_qeDߒѝW ۱+KٍSO*+5v0%6?u_ aVtHQ92Ayk{plK Sƹݣ?{~ %cG`؟D0;۟Iq]t8\J#"uEU6.Zn!wQ 2[nNSWWIm_*x,?D7"  EkTV앎$k12 8sYZQ#omޱirEU?ALtu5+V}={HJBXXP:ئlH@CtZSasW4~o6(P3p#Gv4zqF:xta18s֖`P&b A#=t u^CoF G%A2i@ FϛO{Ȯ0k 5jtk˺\8Stk1[ay۵Ez0n *CF׵r-1Vvhy2/?mwBS{IJiJuWG=~#{G4-G&<R6JȬ2G=}W]';~H41$=晉E8;SpmM[;'oPdElu>|Z*o@oZM#C˷W)HH?<4g\@"Qp3~0*wV"KM[0 Irf\7U aߞJGQC,L>oAJQH|x`n)8ܺFLog&eQؠVfSӨ8^?~勐 KcTP4VUރ3 %乓i {Wg3Ke-j΀{FKc^AALgDK;̆M֔֐п=NITȯUf.r8JnkQ~4~<A46'iN`W%ͽƕӻ2(cO+Ը`5DLd7@*HgG 秊(f程T> 2صRc$|B{)ajJqӃNby8>_[r%p? Nmg1|Y h *ն&ZɋL74K̦^m$۟Eu"5zƙ CncmA9bz@DQ-@=4R@/(-YW5縞ߪ+;`2Af UqE^ q;`.<͓ ["Nݘ]NTe1+r]vsOlG[74űazNӨ! v&XJk$gD|NɽbDxęT}?#E)m6I[|-4.f<.򷡳F?uci~rt&hP=J+FT_i`:;tOScVt}>q|NQi5Wҫ|OԠah{^ڱoړdb-#t6v G"@_ C/t tI#6<٦VT/ {Kٸ9J粗Q1@_J"0Z^2;^D}EV[gvQӡ{s PKO8ܲ06EWbXnG(j[`V)}/61luo eK}uh3=ۺRfml` }P94 [0w K#ߤv߶&boŨ6+ggԕ gyo[uU&]S]b<ÏN!d46 =3Jbu,R|r~;v2D|iKAFE[w/)1(xk&Ap!D Gn+TSAky~nܑ/ҙ3Ks=^W- BnooEt6%IV>X o?ݖ:<k+Zhu  `-P+͒j&=)[azF/WYIɫ7%EMjķZ(4ax9p5M%Nxln2UOBNS=1l36UtCпG2{e&f+WE_Q}*fǮ)859*MD#Y:0 %]w|TU0|!`J9pbRA[c :ϵܤL=ÁSDCJ3(O 3bbI-xGY'}55@_l&ttP~q[m0qLQ帰B/z ~Zz)飌EJ9cxQ^?Wկ8BDud&T%ϭLTq@8,S8-}>U03YJ-ڸ/H)8F˛PO]lsol( h !R_ٚDOVUjv6M q݄0|!%k(Uo5MD~!o߹?x̐#=e,:d"ǝ}l zC&tE(l-֯cW)IWF\g3@/e PMe[ų5t>N0Ca3F+JxEu'@Ho'*&)c/:J>1Wep'&O=as7b*7\A`놌5RIt=)](Eb'.Kq}e6+R#SYk(QUL À8c%T\,gldpVs!Twr\z#?ѣA`%1k]>^fߋ;$g3^ Qܱđ*lָcV,5BV\>f)3S^]:)!& کFo40] @Y.f` ۟j76|qȤNv!x-Myy]z9;ιBc|LO15׬&)0Aᮢ*ᗰaX̃rTAfrxdkl:=<l$BtR[y1E]~xMbI!}7 >bph0I!lVJq|kVks_ħǙ"?\\$S{ԷGqlVr_gާ@rWx daGzk3CU֛^DhQ4DRV]dkx=˪պzT=K@[Sޤ)nc~Y;S|6X|pqh垩Dh*Tbj(:i8W&V! $9]t5#9·Fn p矹d/= R5wPBV\+P-pMЛ}2wndʤ^5Kxg-SSm9C!jTUI=_$Gr MaTZ @rv qŨjױh9J:hnyG>BhGn5}w_Α71A{=U@;|Oomo gyvFrPTSKݲaA8j  @Y|;.ʍKEF= @A UC)^Y2-k.YR_@7eZJ>!n+W&/P_Vtٚ~k ;K ZYYӒsm^l.}9BV*mOE a"$E}u4*Aknq}#{фēß0<*-aH2l-4R"'-=Ll5CN/٬ϡ7PˉcLXm(7dn1MQ75A. vxlYCu2Y r82)7ʰ91V>tR"uu0];z5 (d(M)qk‚L!tB lcseZR \#OF^ġTNACN©rD_g luՃ*T vBr(}y h<47of8X-`QAcwxL&]M_I )#H=b>Y@Qu1ʤ<"ho=}Ψߨ2JJ)+c%dOMT0!B\fĘ.%yfܙ 3oj֟W(Dm9=̦@6ӉPY/^}u-yevhX.%ۢq e4ǁ>>7p .獞X(TG\>_O{KvͽrQEQ U7EN:Ovo9zWmDXM-=["H~ c1pvAX!o¼-9 J].|,<]Xm6wwN6)cp~NF?劵Kp*dNYgɄ-aF n烧ॹJUi7&*<-)L:Oae2w jtqBߊ&s7'9R_ k @Xk2' O[A`S%⦌f5z-hG<>ወ+g6OW A!J+ k`,4e |0lݿ?]p!=_)low?O8^1 -s"i b8Vl,R?S$=vI3hu;:]GYpUҠF:*1mV4,޷\-žO<ŕ_17[CyB07%6Hʯ}&Q{+2'aoBd?%_ )O}s'3unX5|Ҕ\c:"2 lat tIN#n{ d!9Yl]_o-T!S+nb'uqasyeQ:u6@űp v+}̞#Ht?^w˱,dvz6BQBMto|OE@Bݎ$sT6,P<&tU5fR3K<MSwQ!#=ozI&^̞m|cO} =adx".@%l 4H`@g;%'M/<|PXXzF@2"k1H,bG>[?=Iw ݀(bs&YA<&'8#BmdA AKXr 4vMHoCȹQ#9H |1ND!-pyN?K_'.J:̞Flp}]IqGILWbe&DzM|fỊs+œ SL$ʽ4iܙw zerVH2QUgyHeޥxBH=>t ĻuSd(AБ۠N#;>*$oIhΕ#"X2B|Xbj/zſuЭ=5WYGf|DE0.bƗ',waWP  N;2I_us yyAP>~.AR1 HA Syřմ}w;w(qJ!nfx΁ d-<-Mӝ %(o=rˀ 8eȩִ#N>E۳q`חtW<;bY{$Q]0ڴUS>)??w܌ӨXݨ,7-ANlZz(1|gSD?&qa73d^YKϤ7/ybYYF1oH? s29Z Ay} YZڞq1&ȑ⟥ȳR+}(䔍%fmjha}&,~d݉Vh"8S:Z)բ8U݌h@\Khv܄{>B{3Ԡ0U'J5Ōr+?!vM r/01T="@MyCl*pkL+fL@D5~oUȄHo5#~_#"U$IꌮN- Ku y;w;Y @DD)3>Tg2>,TզAE˺6(,C/|*¢D\g)$m\!@h 'ӧur5|J5̫2mS99kSg\(7o.:=ćoD R Qk,<)-^oW?KNkQjut!B |@ٵHQV4ȁrơ׀OIOhSzSF#CbUW }WxrLHe2`6aW³otThX?"LMfML"ZV AƦSݴlBjI@E6BF7Z1D:X<0΃6ZpZus/j UـG(]!ĺz7)tX>J'\Tԉ?Ws[Ğ-^h |Kʊ_|\~wg 4f\ɀ ~Ą Up_y% &o0McFGQw* G`LcXJ;I= ׮FV4%}Sc*€r߉ b6p8_GH 9+jH}!0(|rRAS#^+|ى 7OaJ8Rg-y:1ܦxIpͤI5 /^I~`(+k""A ;,g.J@tJ.1&!dQ: }cɄ}7Ϛ Һ1+f^@fH殺G+@޹C/k?~'Ql%RՉ/kT+ْd))Zoϰ"h ]n!—)n$CTr@栺d.-n,jA*kʭ9JtPq^[# xp&j wIJ:\ʻYPk29I8 ,YJ|ȅ"L'T,;+s%ɠ`Mfa@TVk܊<ۧʎT+}׈m\jCz# SI>p-O U,*2qY`9IHNܪ/wUgHB؉ZɼV e7qV_4~[_OZ$X@q,9KX:p0?wݱoP7Nt Pk$7$z3{RR?OQG0ktRf3|XCN8 l}kqM3>Y\g4 G\5 Ѵ(k1/ODgӁ$7fuz ,'rOUDj@CH&0&IROp6)ە.F"֑TKREp{" N4A.]|~G؄xiJF?JZ,z:o(78 0%pF8bt=3Ƣ# o:AjLzdﱧLG;,KٜaDjXʽ((|ۉʜ yR㰽3-4"ph~Q))6-v.v0oC1Ϗ i)uwXCg&axanOTV޲ %bF;9+&6.:G|ϔ7?SE,88OޫꯩIn*i@S}\2BvXݤ*/mjܤy>9 &te qۍffؘ"e~d`_^Muv3ۏM<ȕKYH6BD2Jf Fw?ceEnv o귒oNk&w d|A3g/SFs[V8'8liL w2 RMo\nb Q}"UZ߱ÇsL % O#=)Ȭ0b7a :5&mthʵE@ԃgyH2AȂz5"buBPDD˥=l}ױ[cƴۯ),{;yBm[PmH =t^Ch.b 5ϲKBurܩ1ύwH3^(FxldC2\I<==[e!$8j ”T9Ә`4n3ekC@;3Zm}\Q!z2H Ax46` :>Z1(@oÿ0>.mM/e[2 GDt S!K1k7η"ىGA-kha#(V4/ÈOU|*a5e$)鏬8?'$vxO? Z~Y\`j_B\|xdbytn6JxN~_ zaėot@z6z4fY. 2ǶG~ ͜!ah (XF 﫩T lӶ" |t-iGK2={WսhH-^:-֥eUKWJF2Ȼ6)95 n50zB-GU)la+sU~xxҦHj$ΰ4Nb~l>=m.eHg!2`e#4ﯥXAC,FT#o ̶ݭv' yְ@>1&HQgbADrdv"Ql4]$G{KX5c˰5y TwEү2Vnpmh JU8{wu( !cu8p2?|j|*^:YT[E3Y<F V){bh&DUBb2D HN3l+Ҋ TRPob$ؔ ֡^Laq%$^)$XrmC-ˏ]ahtD-Y7MB83u /TWl9kg.9z)=̢C3yj @T᳇ꈈ!,[y n#`s%уhOexZr2_fXeY5[nٖB\}b8XMm Lh^1tٴ)>zrdunF\la"S`<*;z"BZ%`u WfEy^x3 Om޲Íq~,Dt;dJX3F3jbI]_ N P[*+0|ޅWiU0s!lbg_~(zP?PCW.jvL!fo![!yW bi=f{W,[bęi}'dKg8Q_cykB YiW)iፓ߆&xz'P;(߷PY9i4S@,v$ ֹM-a\N }ho, Gob%>2l['6:nuHu\I>miO:%th`c*:@iдe^I}jPR]omcA[~ 뀼yF:r#i6agOsT}:-[91QN}D^)&Yתq-  5+??7O+h xӝrMĩ!IM;$U+ ޓ ܿ坜"tKŠceauamZLڹ6 1XMnh"mNP|"m!:`VM);cHߋmA&8 C LUCXJTckѭ d'}wQ/i x;--by[= NHiK [~A Y*^Csٕi,bJ;~m>o3/V|R7ʱd?oWp-mZӷx;7 ]='"GѮp,!Ur\U]% >!:_?ŒZԷA93mA*6]zw "4@4N~MWS1,J+5R'S",W)@~ؖn<[wSJZo4?h:FFJ/w#Y>%7}YL{iJ@sK=Qcjl8)mLT[ۍ 044? < h}8 hmyԩl:F~Č/Cm˕ŵdlJ $ޅ(1zWJSDݲQ|S!"aNgZzVg}0 R3:DBBoɱAik%چ>pD;V._$|q.:`rh%Jt,y/)wNvbMr)P+.)TbǥDZ,i:k7-f9{i3/Ӷo/SwLߊؑGXU'#"?iz:oxKOaZ-=IB%"4~ {]QDZ7KȾ5 ՚soO ӉJ/6@]roķHF{QD )j`*QWnlwq؎' ЩM\"gY\cO;As/ Ƣu1d~kiCXPd̞U:zByT GQs.[K_f.j{a*3$垉HEp@,m}\J')][i7q;j k9W(3}=&r'T؊h㨹d)Gt4FucB0nY!/,܃ND)ͱN{RX9c"5B= Uuzw:"@+jOGwzFM!3j)݉ EFifQ0?wۆ_wS:>Hm':8nkMiu|F'6Q2 }0zg~n'Gr[a[y< }'e͌`v2lIFIt&dto Xl!+(Զj^!f$kNz>jQ`hʀuVg,vƍ`I &K =|,%cD'W*d~q*u4d;A_[TpaG ;t){ CǔAg%S+JT! :n]&)b8 Dٜ>TiVȲq%V"$2yWo*#>ϡ%L(B!Q{?[A=!w+66eEvܒ\p|T\ǥMַʑ8E%=Q93W v~S+"}I '< PahF]*}?RB>ZN~'0$/?ZQ~],XF3!wEu4M1.7½§M(CiFeT^!oR ~D؛lC zCuIw{CcRx#ɤVEk]YЍ{¡\|X(蔎._"2.T"X1DWQwapH>BT-<] gDw—)x+bDQO> Y~<&&Gh+_Ő`?,AhYS&x6grG-Zt7)S4) ^@(qo4$l!+vx͏5c7d#Mu XyȦ@Ehy^t1_)wT~b:@Mo[QR)\F^YWըߗA#)GdE(P@c3M?v!e^pw.)$LX|?(K4RSig mtyxঃ #xc<hbk3٦t]yWYtj0B o0ޯ"s$s Xd%奊>]_&!ƈ)^dP<,x] V3X =Iϩ)$OB<n*(s3R4! SU9CRJhUl`-XXZ% UH n#gp#/.{"zds0?(i }EHz a`}Rδ{QqcHȾ`=-V]f8<I:2z 2>0Đ~2/o:TAጏ~e6v'?ѐg*o|o0I+eMS+04Ff{.-C U?2t-i18hh'>9RF|YA>,`"c CDipkPi>#a0ɀfPFL 3$ Aؙ%ck<ɾ(C n d B焓i1o=X9KyHk%?O(*>tGQ W\T Un%&Ҕ k??=Kx>_OD%t0G=:G`juG7 jxӮB em_{ ;>=4~+-UqG nqD+-D/,1 NVfxZ(/*%K0ks^?:; u #&F)|P֛S,jo=ėO.R0w؅ʄlAb8iO99O8oFT@}ۊXik^H%ze׊LnR4 @."ml3aH_'Ǎlꃞ 6z/4"x&ǘ5u$1lz{4 V z w4z_N KS2.MzhAgsl*NsdǓ P*1DdV~,Jz`Z@2XNC8h ֕j2| 2$wᷥRmXTwΗN3[nW܋Sb [)R6He\cO:3n)JP(H Z/5.ոjk@ZXsdk7>C 9gZu ˓/_1b5c W]VLB4`9`9V5=7"]P,0.c5_̶ѭf} @C@ {!^܁>‚LJ2K(d Dtv{IZ=f#O[uj* 2f@piْ޾=E ?vbFBb\ۮ[<_s;`׆3#Wb-7f6ۓQYűޔ`[,B ><=5 [IB ϸ.fg#D@#!az,ɟ.|޳@TOB .7o +@CPd5d(ơQifpw3<0d@ɍ̇v UآX-~e?fJPÕ2Uc7XԲ@e%x 4TK@&x`E@̋p9`/Ш&^S0XT$[)~0V( j^\è?ɏO!Gɡ;@8_"ad[F7Vf=gopeQ ^b~ȯYyEr1yG zJhLTAMkn颃7#؜z}dtܷϮL^7)+} 'IFPZa#Ģv 9o9lN>B`'VG('s!yLEexOB|DFo+[GX[nb,K}Sȷʝ_ak6AhǚnvLR 4ϴuHc< ۨ47"B?nAZ`"4vP`zY&ܟ̋~E U<N8ýX&G:E/k!uxP[9ҀM(o@pNW`kv3.i2YV˗*Jkc~Gƴ8Z2 yCu@;aGtNqeojYj yp@ ?νI&B'EIu\*2%(Hkչ$ܡ%A5*bYr0FuhOūHӤDsڛ/h'u-R{aƣp]%BK4$sw 'FuVEl_RNJ{5#p;F+2y1EpV\L%/ӳۨ X|4ϧ͛ßhqE칤J]%V^v|;ɠG l-nn|nv7 hST̬1?O"س{^y!unRe:+;S{wӽE_mVRB2tm@TY[\,5QRGݸ1As^…hpfsGYud g.Ѿ~ ʱedEkwA9L#sO|Ռ? lAbhZvhuċ\V34B˴.|a 8EECǤU ִ.WLR5iG]0?iNER5Zf^MnJoF^1*T+b{)Fl9Ȳ.;ʥ`= }qZT%;oimNDEߊI.B>PŠ3OZe05XoDҪ\c2{+{ʨ1vB1{cB۩9G0J_r6Lx%p.t|,2YyZڟǷ5#]F0yx>k N_#_YBI6#Ɖ4%zs7F0 .zK,V:H1M;;U8ax֕"=.!neYaǯ)Qž}*9Ak ڋf8Tt3ߋa&pu|Dm`76dkğJ&L&͝ R*8E"yk nO5}oFbM&xtJ21oO Ec+AE>~>EbZ̵A}w`QdGܟlm jzrueж 1:l)$9 aITy"_o"_đe,'ň!ydF%~;g7VHD,`zL FopPuv0*CM PY EluyAHG`?uCcc9 .sիa2a-1|ADQ֭g}W+4zYLhRH}o]@(ꙭ}|h齳鞓C9(0HRYog{"K7qސ-u3IcwV0VHٗ '[1~I« !2M+HʬE|8JUӠ%"E- hiaJt WLb"}" 9ӥ:eyِQv~&؋^).9A<(:CBFxv,΄}1Itܣsmp w@z1ߑ"KhuC#қ8j lݕm>jkn"lAtkqfGkL̏ \%rA_\^ӈgܲk v08 uwf8PU2# P#UiG唫b&Nўi 1IV]@ ҈eY}ՂkGh)iL&(QB.F~$ڝ;%cb؝QZ$l0bnV+-'S_=y>nk:)`խ?5|kMBM.xGx1bvZiL8o3\=-V+aY,%T(I Tڽp f5+$uzCrd`(_&=@k-j'NhD[zQiyVcd'xא sM ~D|<#| RsK`ġmx6K*E-TӚ-D:^U5(̈́/9/Z?۠uwFkקS-jBEr<aXYo:cz_cBj9.,DL6$#F4#mUMoAUUXr | E=<p+DK?/C*X K1H᷿;b#zv9k5H8M1xϋhc̮.NSa!kPƍ鐹V0vs+ ,-u*md(H^:|a~32nLHzt԰ى,vxT4.d} ^W"h[ǼnÒyAQ)RTq- ~gUᅱbk$jL (?F/{'l;WHwjLc[O ='J.n.>aF&te3T0cz)ҽIĒFSGxqvUKX?52ԑ`T6*sCV"[/l3k_Jz7XT YF}AOV[rbQ,璌U뻄>l2pG* ⓲b;re٥s/7KM(nP)L' #(C5Ț) TyNəj9\.6?MRKtI^0!kQwKi6DUC&XogHnRkh*5!k6Oċ%)P}k|8k ޤua  O0gF"h%߭_o߹ \-~sۺ 8XEQ?p]M>]I͠kƷ jВ:a˒5~39*g_}'@Jvؽʿ*ټ))dfv0@u'ؗ:f|@" |}DXڄ#f:UD0S'ִ `?2 dܕA= g=/F16Cvq%n*boI~%c=8aJn|&f`{:_LY؊}G 8,Y5#RQE0x %7`# EQ CZ%Wk7;gLG.63P^'ib]k:~l?6Zd_yh栱n"K0aҎ{LѮg/iz{3-g,3߱vq|z7n+kRJEjx` ۳?ӽљF@_;d(FYoq`,EJ_F[Ն8ᎉ\|l֧3 )[l3flJZU(>c(#d0Tr1V_+]W d19[%K{zsrj)#j¢ k1Xo|Ttp-Rc&%xQ4};JB9[t]OO$Vntl"H YWAGp|mA>罛`Ze8yM.XF( ?ʸ>yX ߗTچ*oM$5?C=⒆W^HӢ[F2sT6^tGx@;r-,@۰ŞQ_X>tg@=XAq*c,I PS/ W^a@AE)_FM}hi{Dȇj@I. ~9;l e8nz"k֮k)/+qw1i냅[V\9"jYuP\5KꥊLLd3!Ooד Ƃr{6N?Ν6赚G;cGn'2^5J@m+ENɈvR|_BpL&R]hXeXJԍY #OqH-8xoa#$r,KSu%7q]\ڐ KHvǝ71T0wzMz-1,FEpJ0u'Xj_p+Nv00`Lq9!cR7)[v1n_UfDBn$ -~?cV_y/`CZO#6JǣVS{`7I˅ ̒E9_WY4 y0d;#ƿBUؠg/l{^̤@4$a9msIsKлcM--TL(?p64\a7jAe$;Z!#dgwЛ+)~{!SC.KC55:?:b'oJE;hG&< a\<B&#HnS}]SيJ5&ŝgG0_T ;2PsTfVp8(QGl1v*mZ,TkܒKS!fPf|o K;u4kqʶ5Lqū9"Kj?h] 5.4.C "&1>1@/^?d${Lrmd%SoZ?Rf^641۶Sw~$D [$D0*\Klhr1߫#Rl [a "c 1ֈ@\rNyӋİR%/>Z)?GlQ0x֌D(wB " /#/l1ef J掓B+UcW3~oWlF Z7!MRZ95ǧA7yψeWľ4Gt.QiTڭm˿ YUFXo Z4pizzDUO[dHF][ĻIwI'DU܌(+PrѧZ|hZC!PKv~RDj O&\L' ܟc]n*9^ \ؚu [;~ 4< UCCDӬ6}^)vD-̬$UMC}xjh;zgWR[xI=17JZi/s—m+ C)2@f+gtm$Ppc&p+UGW [>w07u"4y;f)R-g͖Ft-O(:ogi4Vzt<< Gձ;s~ZJ)7oP2zLG~3EN2E,Xtɮ4 x5!n BCo0.KUD~bw E: Qm?>(fCS!S}"#thb=h(cm8F>ם=o3c\O, 31p{ t.@?hqz7RG#c$@`z]Z[#.#";߉V!(ԟUǠ+¾ԅ0-6R&L sĥ'=&cyA6NI47f0n - ._3.eRvm"嵩4]- AsϥwN27x)ATIp93v3jN,NFػ1v;ɣKO L3mw{<9xCɔdŶ;9*4$l>Q&~;os*j OB@Fg s]/ QwE2#`1lﵧhdB ;UHh34 X6 yp<왰,Fa&z_M EGj>9.ϒ p9)q s ':`eF,C"Dr#+ܑs dȳo2'h̢3Iz:քW͔2jj,IqVwrG2ArXJ9kA߭ؾX!r/W(5Gۂ3l ioTEO4?n; *!,kba , ޳hh\w6r6N0BG4Wsă{z\mj|w|Ȃ0n+7}t)Aܽ%Pc!{~?6nRo^M`ņ݁hVNHC.sRM*}(miqtF('f'獌/?*"By!py-SZP> U$-U0CõplF) =w;#'+sԓ=@@X =ح :ɾ)AES";b2tN/"\.| -KgJA 2m&&! ʹ#41?o*Tpiu?` hu˛QB%B.d&ul˟q,A!mX ߸]&`bD:[jKDOQ%/M^Zǒ9']Td1U+'F.3ĩC [_OY])+Wud*s,`C[bqFO4LךQm -E %-tq:[!)p6U`rr=uO7*a<:$,Ӿ P.(3Nk(R?d>=+Cxh39$ nP*Y(pj_s\'χj:vTE q>$;xDL3 -84DFt^2^f89c|>zxI)"I &t?@ʤ{GXJx ~1iRu:IL>9V J$g.-*% mccaiyʩ=~+e|lqfJL"tR[L!klNu^9Z-9$^˯fh](v}L ʲ;7NL:b@t;ipƋQP.tD>Fp'tzY6"Y3)&3qZ^ e'Kdo%{LX{lY,ͫJ]uK$ Y7Q ke)]jFw|W>GՒ(!qz EV(ak MK@K([Vs {EqEnrӲSZ4So'q&}6Ûd=O lXŬgMiMw jG<07O70]b߇:b,Zj|0OMlk )= B[Z{Il?$Bf%"裡b,+[{IA`syV}6:.YDTHR 4Z8Xˏ8^XJq QP̻\4M+)c X;l)7IFB 1Vfu; Մ1ǂ4#%&Pk,U5la0B>gD^^IhE Kl̑ȝL =P}e(H-7S#U c=}дSA@~?y7`1J?,Y|P|a Ӊ%dV sكڵF* <=+Rbw~ cOpI=˳)sbpy3LDx'K_pgmDLַ < ݪ̵5 bSjvٖLj%"K\ (Z*6Y9Z98V*hnH|#+mdN9! {ٞ3aYՀ`&jH=^.]./'CE¿J Jɹ7Kٖ zL7`nX~aJ̍&9q Nhqߏ ^h^_+([7FW6UN/Pv(7ʗg0EEqsb@\Q@ WD]ㅵ #xxYǜ Z2f+8n T-p7M:2v SRs>89ǫHMG] a)& >;k- ( wl _Q!!*kj]N4-Nrwjntut< в*tn3MF/B+LsT^I}uGߨB(ޕO#}ZɆS ;Z۱/z ȸˁad>:户r5'$ej'ͱ@suSvH5_Ǵ;^/mg;+F&&xKj?:-ӫ7ldۧknҰm{_t rp9D(झX  mEY(V8(oj!lκۦ/a.n$YşBtc:|Xn3E*;\[HpLP{g{~^3G?d5c7Ñ|xk;v?vOE{C yqr,qU]dy˰1Fb=i6⽤(`kЊui m~ѶpĖaPES-b8b>q_TNmFh:*A+ d`Sȕ1㦈XO9 >Hơ'#z‰.S˫.d[uF8Gj|mS _Bl4tĐ1uFu +$@̺y~MT@o@,L|m}sg+Gfct0zzQ}%(3@qD _OL6}μj/} }T"+fycy5ԓiuxM{jŠ i 3~7|ˊcx #wuX$ JuYd)lVs7@zi]3CrIsg^؊AS(rΈ9\P@ӨuN AW+3%NB U{Y!Z8bG:67aY*xt3b4=:)/M&2 | a!%O6BAwN?oj-1g^E~c@Ḷ%.cpq)oVěIN2BS:x[UY6;)>)$uNjehF35ngm~XW+Z-%` \ PÛK$fMO=`: ʐ&tAMZ"9lQљb1\ +i|>E&R;cjbU.ӛL%~#7 edFMUo={( ."pbzZpmCWJQk. A\Q1ȌcN9dNmE EUʤ~?ѮC/TPGh%[_bh"ikHDKUW7[I}rӴ7*7^H9pWhoQ_Y_tBU?2F2V5{&x+kEwWv_2hh汁0@bp, |BdD\4 o\28-P 's/3|I]zb"|hׇۘV@Ae$o*o;^xy@ҥ/a]vt\hU*xc_ڐ|~*~Ê>ġ8ڭ8lr h\,TZ1G`GxOT.+4$ѡP<o0ݒ| sRJ, R1Ul$KPd&E߻~1RT|8'P9&H&I0!h(9O:DH\z-u2$5Ǡ=\Ғ|rz9Awiw">U~v8@Z;5j#┤|yV3 ω`XJ=DZ YrJ)j'."oLk},Da_=@DR5~p&Uη L'xPU܋{#1NmS9U&䱎E ls."5΄O9=  YD]3fTNZ[|z NJ}$$:6/Zgf h1`HHTB2>0;v rkWw]"VavE 59>u5!\q*iIɶ%sny\+( jfa=Y?b<)`3BLJ  /ɴWfx|ż`~(buޏQHevFʸyd"랆X5=]<|Gm/X4p$7Madsǽ]EgZY9]If%G Fcv3n#hՌjF"ZGMF|gOiBXg "*4 &w2gIzYH[Z +ެ%u0u:a?ّ2[u‹,f=+ i- !xW=h_m6 X| zMT j5VNgS$GBWrtsdm9soP̫*NzVϧƍL.D)#G4T$gR$\pjUa5MWr Gㄝ{ ? TN[ff>h.2 G闇rO &>QŎ7w`N̹RG[y&BHX"'>i(G jIގg%0w7 d&|$ uT@ 1 ޾E+d F͞V 0חesOO=;OS\Z{G:2 ^ F6W,;-7RHu67ȣ0Q&+ˎA `A:eEGwi[%@/7$iBadVA~&76,?:21o20|s*> "=բ*6s2&IJWOeWSuLnI.Vc[ ƦDIxp%ÆفOK83Ԥ<4![rip˟#z'<:W돭YTN]i"rц[f'vbNةJ#,Ą[_NXG<@2gConȰ)؆T4Buzbxv9,1Uɳ\^A܃t~9 F} jMhCerc(T 7Z_I?ލPWXu &|d!v:,)%G`>3i<VIVLQ(yEEh0e\@`>ܱF,6l=tvwѱɡ'V6oZPQCZt3H&ؔe*?|+*f\,Yˁ7SШA ⥗Ő50Xk(0WazxڪN7EhwStɂ A,o[VT36T4"W#@a 'B=|2g>g{=\RDž:DH {)&Fʇ:6*|R2vʸ-m[k7qb{9?0Q0nJZk!-)hΝ`]ܳ+o[J? :QE.G|I+xO5jZ̎'}jd ⼃4ۥHAAh*P3ia\nj]s1m}ZXCMdd:uRhm4=J+Em BHJiV2Ëz<C6%"խ7 1 Jh1db!n'e< =P$."2~bc ?F%|#NJhQ0APOX*rZ[raePϒ.vqlxGg[zl  b?ڣ .t, ^܈_Re2LhyaBiKlؕ vWK89w``)07r9w|˿@<#8y>k#ن@'UeKuV)C|H3.(hYjp _zX_n6vo0^ϝYa""~lS}2Wbhr8 lL߷ "DZg%V 5 YL؋f|{oO)5{? vn* 9қv=DgV^n3!Qcϝy)p0>vlZXZ%x;DSɢߓSŸ@RRڜ v֔Wa[sI]wql,2 4D.@eOf, o}KZ6Ёq\paCbYDu!rC,X@ >9J|Lw\iO}a=0MGJ*lOlkN(`a` Soax!#TMrt3XT1*wB+.ϹC#9^J ^Glד~.3i>=Fi>#A"Ma/^W[brY_KuRkw$Qx[E2c iFsaΏpn`1 !U J87HKX5`HM?'zcpʈӪy fCrSF& ԃ f˛XlI+yɴɘ kL*w'Bo#|.S@5VmضC 'qS4r!%hy zF@S_SӼ&X?6_,Q5p6.PCXT꾭ݵS?$ e Q[J%/:[Q#uh%웕33`I hlq,Zmk(PO]9L~ &dQPWg[^JbvOΗnK ] \cE/cpAآ->h"]Dʽ:#]zpKRBEQE[гV9AW(̵T44!OפJ%}(R>BDi0L ?u~Q`C&1'S}Yrp:ZuEoFGȲ%z]{9 `>iW/iO>mttđ\ˑ !j+ހDž,4.w/]&1kHǰQ44hiY:ԓk lnC9L"22Ȩ v_ΐ=9tXҜ-[V'.P}HjeQDS[TMȽs)&lc+zzsXt/ FS1.SV:u!cXc7&"v~3\gTpZs]= Ӕ+'H$u=l4NA볜OLFA 8b& dCO㧈50LNU`j K'߬KYdֵQz`jGYyO+X&TÁF+1{԰ndzj04{An*I&w-_*o3QXsRD },ģ7wz(,I-NHm5p'/Z| [XъpХvx\\=P{WM3b@}lRth\jkxJ‚Ō]?6y;vS)ΣbB'Ѓiv0q"bHg/K5߷:ɧd-מZ5ͻHOBK=L>GUZdx!G펝o >4`ܪ,=U`/kW:NH܊S':y IW liSq_+lHqV{F#9')2r(){ԸUØQ+ Nd#f$|UǶA_\< gs~M?oρS.@Cژ]!zTC8٠-s4 l`Ӵޚ-V13Z#z SNg^KSOcgX\=`-C P'B5Ei / R]IE$VG}^hsq!c$dreJ~yϢn$ Oj{A@neDN ;vP+_5siH!(z&cPWe[GIh ^ţRY3[JIg;R,ne*'0P~1;6)zȅoAblc3&QErwW]я}~T-$J"Rv(k?^粢]]²7+,rC868Aƫ왰 lx&3񃘵vwWnuGгEGs! @nm׃@0P? XlhA?ɛ a~Rb,2sv4{Lhtڊ&g!bCo'ce^ԓGhU.uJҳj^q:ENa[O(c1l\_)X$h§$c8VZt{ϹB f )οNV,]?z?;huqhecLȋ5$lDCknf@ i'/72x'rB"Ukq-tֱsG1 >#iJ}Ɏ-HnnJŤe<8f/!|n8^{ۄd*B冨gPu wGݏ$9xh|cm&zw[Ex0Ѧ+NMV_1s{IKSEA}&۷R: /DemB^'0+CR'~8J-|5<{̙Wl6lwS."i koufH_-On C8YVIo7؇4"JCdމm&~8&ON Qh ?NVCPQ"h8-Ľ{YK'oRa_GB6 cL[d/4tpb, Mm Ғ'5Z+[7):%"k_Mw|4OOY,iy5~7f14l8Gԋbi1t*eɎF [ h|)I%WKB &ưE's/oe(p*kضlƭgW2RIcY3MzSY('aٸ5.9 }0KՒqp&r%¶Q{&q30NqEyGb&Ge"߲4iP@8蜨uT-q“r8"21#b:⅀T b *lȦn7^ILV=ם&eF&胑GŌί#:͜=Fr}: +/ޮ6w7\'൸̨;I3\&wq@-5mLmz [VP!~aH'Q((q?vFPY5\{ ּ]蝳`5&)|0ĪqskOq.N;4%O읈UufQėȬryXEۈ.xQߛ(BlnS/>爟<'#A`;^ȍ|qKm/<tFpA=\;cMKcycͬӟ-H=HSD(Ya[oVZ~ ^Ck@"i_=+SwNڙSe$_=LvvW[JwSu=<`fG 7rQrI|I& B6xd~ gK!+Rъ⥟؁ N0N)-*ǛY 9+ C@fBZ_EAIjꓼ0 rqgyZnV a' ' ŢON^(e:!y_[E 4zAaY?ɉ rw \< j xhcך\:Mqʢ1}ֳ_>ΈD)Cx3m,wGo6L*Lc{[ϫI4hQZc!$Ȃh=Sfzhjbs \fƔ(j44%ئ7j5TezBch34Q n s%5=bS C؟R]UpŕC: ;U~6"z"*"9S%ӲX=i]ٿP vR<Nk;gy9mK W-*#75+ D.j$ojǪT8ېpl|=.k`@w#7N#n !z`[xbA8VEYIđl^fȕi1t1hL/mB qeI.2PӵC4J^t:ӁI㧬΢$S!|n_¡fȌ5փjqeY&נI-w5zK}a&ܙ~--+91Fbν;E(_t'TʺXd!!?&$3R>8k ˂q-E\SV5}zA76o52'7i אxI/X(Eβ;z-^LJcE,lĈ bO7kK}puHS9z߸Ut)Lރ'/vN;_g ?)֬-Rm1|#v (/~ Q\ ; ؿ Al8 3 U;Ò oɶ4ʄ{6Z8-h ʁ<CWL_;]$ '.%%Օ,q[ք&473Fu(ja/nqy;@]f;:.܍<ߎO#F`>f (sikAoje$wlAF1eqDE\4F)`Ⱦ_=T<>Oi o)]c_ƨաPG])48b%.SO盭*Vo ʛ~ɐLЫy6Bu3[(&)  QA}٨8,Q88OiPf0 -y:qA)񶀒.C4E@bk$T@\7G;FD4uINi?'ɲm_yIF7ڤjN?$K{rbQM'@Oh|-כ y1pxPțDb l;2ϕIYnc'贈-%SvUR M KfCRC["k f:U@d&f4-V2PrY(۔x\\*]DnPd4ϰA@abPcWpP+E$3<)b$nݾe@*r'e﫧oV rqGuϭiu2YZvn;&ǚ%. q?e(/I"}}l\JJySɼ4BKs\yd҃ʼn\ f //g^fvĿ/F[q#j>5":*te{ЕuGy{WS$ņ&QTuz}9*E?`~XNXh!Ca`LJ"w",#Y}JUÓɸj|`)N7 ο͋F*ĞY? Z@@Β=Lr$\7FH7C$vҵ@ ۈLf)Xdk {F1cT.6{wLmϩ0v6eXz *Cl-Xz71ye@+mH0-DPjF-tB!@$cXӹw;VD._;e/n,È~f]C,"().P/)xblV߉F$ س~jD<?%I=J;3Nl8дJꥻ{7%sjoz] "Ё}öd6RXDպX! ̦T]Zͪ܁ס!^P8 g2fԯ[*aAw! [ny)WPءHD}݇E,b(u!~r6't-q}M~[iUC페X0ş.o,ue]̳h1 m=ҒYt0 ʈXeyj""+.| i52\J3L jK^5I!lxM!m$Yɾ{fAB=bmE 6D..~Ts!E|EӲo>H/E#B Mw=_dL:I\SFZbۚ#3CT}zχ4|:? ⫛Wseحq?6M<+xI‹~vke7t~B'Kpi撚JӶ%=,*8y"8) WАKMXy6J-uE1߬7&dy a8m,ղhO,'baxm[\q]bNWWiݲWy R$*$acPB75ŐLBkSbQbe{ŐJ1ͬʎ(ƳsՋ0XӺ+IػT|Wj%@k9mlѥ1?""V ۄQ rgKq84M)yu!2߈T|EۄUО_}6ϊeitn-lsfe=~uִEF[sR˽'X G!+3!LOC == kKC9in9 9ޅ1Rx艍/9!pb*9 RFVKփ;\o<k5zo>P-j_m#wem*w}  =R|~ ?nPn7$G&hR m-(#&htl1Ewku8=p%PjܒXo?I dVHf ]sP&rƿ-i\SIHb+)+ʗR}Ț_ mW0DB`!V?4`& {Y}LhwˮZ,Ƕ<f_G:((͚I:ƾɪC{(NH?xof ~y㶙?f[%,Fbl2ϞL^ b;yaևV穃h\Yqn. \*AEhɌ5X!LQr0Jx\TyHB/}\4Y߅hPkIF̨g`]WC] eYzԅ@m\OQNCwD4,ώ nڱa݋[\&) ;=x+*đU4gE4Gd XM(XMDj+\sL!vF{r=Nj3Quy|]F%G:!?4&y1֡be2E?8onT%_*2g8X crNALϨ OZd 3՝ۼ&-k1V;.En~Ցېj*8CzHr LR O.[tv48Hҁ9}o CBty$P!c~LX_vŶ ?+|Sm;ODEg-xWC{}h^":MɇWZLtl-ĒP&͢Sp%ᑅ+_ZTǙd\)Ywٶ՞F\\-XJC}'q 4|:1dWQ͑; iĮ&(1[c>!8yW嶊5- \b9&cuY|2fybPmʹ˳r!% _#^^,j|-%%N%Wq^]N[ɘu#U}}5^nFqb?g[}3,q_GBNźC>?v _W1#Ac!WQuz婥;d=yK:MF5oU Ҝeakm[ңA*5޴.4G%-c"ߌ,p4c+ra/ }-w aHj*/* idsx/a!5fWR=RtS΅+bR|H*r]݄WRAp+yY7Ր# `Gޢ2۷>a8UXڋtPuH>G)t=`>dOHK~rS]zNH}o?Vґ,{MVEt]U[BlL0bѵaʗBsZ3lv tA'V_3#gkNzPz^Mxofw TYt4%hRɌhAF̓[%gø D{ rxD3trʡ*|*7à|bBd8bJ2Ϫ蛴X'[n?0 ǵ R!_.r4jd$ܰ ShoGK &' 8#=a bacntrv-08W̥6>+_'W[ [o5Xushh῞ "ܷvHM``-?R Tl eZ=XA}g4/޳5Ϡ:3p^Nq)(C$00&jVR/={emh,%H;bO03pq8??@[qBjhaN'!e[/L8`}{7+%o8-#mDBӎt7ڇɂC6h![7 >z. uYc߈IY"D9Se1׶|5C-?&q"7fgjDv;.W K3YyBZ63;V Jg*7X7A* 3i7WpyH pfy\~%= r[de'tT>9,@pwEO}ƣ38ʅA%x%MayŎ=zLaW'4$¨3݁/CW^U;⟿ B-f]AbD ^c$ [ 8i\OuF2J^e7*姴}G=`yM!i!'*`23šYBxŽuP/^l(nޅ{x*I,}7;*a>=xa}|Y eA4 6SCX܎̉R֑H.%$x`"e:HۈA8-妠h6?g2TxoEn KNE 6RGq8-RBӗAdi%=zȎڦ| [/1tӆI)Ҭ|0+a=k%1T|F"COmR0T6 b2R o\Xvd~3LvC"\#vThLG M"9;K.,(0)'%Fȹ.DiNQ"'*$3+=iFW%d&p5 /\jMn&k-7$EP4~ZFh{rҔe=7GQIBDKDpaT0SC%Bπr"92nx$½@3~ m5P4Q#P\6|Mu{x`WdRTQJr>!ŏyܜ{ ڙTڋJL!y7i ZT9H[`1uPD% n0s> j{>P(2&6f=0UOZ~$Pl(3Xk9*ʧ[kx_KC*]*K2m]Ɨx:x ~}yDk;,g`22 .҆Po[MOȬN#CS! \:O*>}yjcVAqH& r݂ d~%]=ZkG-Xm~FX79m6Űa 6̚hL{G&Ӗq?sށXM<9qmO xTAoa-8!40:Ie\]E9ȫ*ȈZDuu: jpmIHC:rH;t‰zƥ(6/#*ȼiIżF; 7JA kcv\/\ YQAle7Eh"|ŇG[w3jC?|6'"nuq$*Z#[8;q;iO,Jg ִ4 οxI(>u>Pݾr}_x N&^ɒt-zHkɇ=  d06s~ho}q0G^c.*bwL&l)IRϋ=,YG0MbQUӆ)DNX_: <"[Ŷ*GHRDvpbn>zhR@*tltыWBhx P(HyHٞ]ggGP KN^ 'b.svˀn r?&2wŒCo׍ `l@f 3(pߢjxs@HJXBH |+ʜ>C4PsÒZn75SK&/i)ܩ4Huw" R/J ަxcqQ'n`p>~biI΍,!)K6.I wIs Ԫ'+g*(>4P7BoJ^6QXM@lcB:hɇzÚg:f`g{bK/pL7T_9]@L~'J!Pش(>B:cư@ϓ\r܅ y?{{4F +TcR V ~2JǤڻ 1T0\tб =H=n(49&Lgo*`> [or9l8` B%8o|l<yÎRẇzO[ۀO4݊#'T0.򲭆Tp  QgOmXd@+CQYC"͌/`5r2)f'aozPs' `J_IYǾ1*j<<fڜ&oB7t4*#xwc~]JB8O?='R]u S,V:2L# nWJ>a$)~|,f[ z٩f8އ`gUHEJ(岍oL5Ţ:>>?+Jʁ"A i=dN.7a@?媰L}-SS$ud&g / Tc9S L6OثVg{г>7l%nIP-8R"IPA ds}kXG("$?}gb toی9> #^ޑ= "b\hIMpgYLx𠖦(ATMLW֥Yl;l-Dgm(Ӥ4P•I࿕='zQ~+656oOBݬm9yFnao @rB{e21+b5YaDC}k%d^4E8201&1":Dby[Ϻ?Q>8 28N ɲY3~Se E9" Ԭ5j{ZXÞ(2)lCM=L ==K e>~,EdمWv <ݳ()皼W"ʊ<'2?DFVM#,ٍ[+VTq%J/FK|ҜpFTPw\VGU'2cddP{#e,kJ^cAP<]k;yp~ҾjnveDlfJ2BEr,un>3 |!.r_%ou4!wYnHTJtփ֥G`*xV@Ċl}z'j@W?U6ӎbߴ-2a6k!Έoa" K|1w k ˔և5Sg%=PdFXn뿲:~aXi7R{ys ɡɢ..C0 )ŷYdQ"aΒjM`Q]*ur弉_)Sد|WNnV7YM gB֒^-j4mfk#bK\fV0kT|["< D{K~ɝ7ߒ3C(}OI×NzLn)Ԝ()hXq+ptT&1ɱͯo}b=tO]#{?Kys5Q,ܶ$lLÀ lbMPE J-c{~9(|lⳆ *U@ +"t8.88C9Nx =26@P߯?/@iTE)ĨWghD7{5H!pE5QDVL*I!}$zgIc=*{yeo'4vMGi &EN(6*؝؟NcS+A GEn5A`9pYxHE>®[Rq }^,zZ5>h츭bqV 3tzab:N>%cW~LJCh+^aePk-K#{:'RNHr=ϭ ?Kc|_r2\{"64iLGp7^8PU&4ߘ`@)zd\AzE*/~|zR; ]mlTŁjuMR"T <x$⌞Ȗ"a#j|vrEo9 A'reXDu~T{^u&蓻WܟAIZ6L1w`>e%Jl`Îo*~D{:x9SʄW س={NOb #Bfdq i%]ᏻE~>MII( L0Qkr .$MYZoUSCKFA*4mp*Qu ILjx˖9!;A0uT6lN~-0]-w-M"^]oHr&G1'83s[pc?.գu[z Ҍ< _ƥH>WqC&%|M"^!â. *.cz-,|g]jۯD!7%vKUon[BwЋ\ICjSygp`=c#sչ[g>j*pm$R 3̏%V&zyZj48<63$tꗚ2"$ݴ_};M[ _(ͷM9+:pKFVo|^&;cl+1&ΏWQ~VTKmU `{6h>< =ݧ(\ #ה73kN6lљh.F?0uA&2&Z()g<^?h!ա3͏}x|%xgMʺ`5͐,@eX kW A1?ݣ4'vNouU!un*m5˞ 6o 2#R1L׭ԪyM&+m}NԵ| BZ > BT!ݹWI^/W'4LK^Vq6P6FLUE!}??ӁKkhӅIbk={ѐN0X&}Rsqi{9ejgP| 6zm}XjA":F,k uo !THInT +tM];B6N9ws_S}_UxXt._U1[IQ | BT&Mdzow/C~+'WvMp-@@a0&~6._ɞfO!M F,n.qP˗gQ\bߚNZ!WJccyT2`7zv=R-v}K W}̺jPb ijꇱ&TP:苒Gɾ|: X12Y*{VO]^̢·zPtbJeCzTm_h ?i\gb+Q\O7Ո7 3Zs2dj2bW=U!Wfnf{o BƹP#ؿ1 ^G^3ݲvfC?jb!P P+QW}1U ݠ )o[,ے FPH(&jéN&v n>̷ cD _\A,^婢 ieE[^~7P%PLd'Oo%.F6%t6ݢ#ޔ9FHd/ emѦ]P>'ꗷBP ҇}@eh$ZUڠve>MP0Nfz̷L Bd!+8TQ:y0Fy:s+f85dOF7xg/> tD/ބS;9f9yL E,#5NJg-K> 6:Qg潡1n[jn I`7vR9F';9oY5*, WU|?_@ p BzScOMEsoJ*FTA j{}΀"{/Om >ĝpO%]uZz$Ogkڂ]%_)}ՎEoZh[@Yz$5Zߓ̷ yg$eTnȣ.A!CGtt L0H\a4q n:)I<\YMV%l dhX̺3Aqӈ<ƨu*>yPt&b)8e1?&=,4Q^(k);e7#3U?dR=9"V4R'S5+IgzͼYC p]dž4С˔&O98d adJ0mo~Rlp4UAzl#x(6To^ 5j*칯rŌJv2qא-_ԧۊ7/jyL/= pS\W-lugёg+h+7ݗWRBU+kۿstSH :&%vdey*} FN[+y6\$#,aO{'!`ؓGi~ ~dMǪfqQ&?˧!<?Ѐ Ck3BLmCOt7 BGS5?6}1 XQc^|A8ێiuA<ϴwv49Q\a3\BwN:'E;%#sUzZ^L{pUCw~_{TT(V ĻTCх\~ }y66]Gh;esdC/eB 0 Y*ӓۣȼ;H6#XE@;ٱ]\Ĥ3>cIq&w]NP(H7\dy ݡhܪBƥsrl}#{*bsr~Jgȃ1c &C~Q[wphpS :~ߑSܸRK1T 8ŭ+7m,z,zh 0T4X5?\W [?+1YÇ烚lXD>,Gnmjڽi0:FelWRYE+ՋÉ t!q?DpS4.3]p撳I}׺yώRPSq$/9ߗu1WPYr'#iF̖kA j\1DQDPFcN R9NL0 V>3UxfcE? aL[`:g|8؅zUdk%| b!WDW/ו ;HdP WѨ\IƻkyαG ; J$+s;>4㛮@QezՃ剉?;PHum#̵Wߣw7+[#z7bp {iԊMJ'`Gi)DvL%YiEn >Te񣴽f_hR&<:`FYo#PAǻQP,ۉWX=!Sͮ]|kc2pca/$tw^}CN*5Lt*gAQ(6oCFQ: S\9 [<*Z:hӾ_3qhZnUNBaclOBBn-vaKm#R2QǙt-Z<t7Ai=XRO4r<@ (rìPrQ Z<Fĺ/̻Vαr@=dX}9&kMMb1C@98;Úة`ne)JéHzID/ja P/Џ=i7jS3xv5 thxc#nCc]O0..Tì됢; "pJ;MTiyek=<$Iov/\̼Oy{EYmIJc޶/I$-#_҇;tGV:%(+&G: 9IH4h;^)&¡F`G:<ȎbR]J`,`55G3{c$~̕=:v_Svq$*zU!*_)uoeb{][gWK`Tx}b:K#g]xB QsAyd_b ݢ;cypP?Twa|(w2YY,ē;h/raT"`mv_B%KǘgE/1dNw ]I3Q"tB ?`Վsr⧚aFW7F@r 尚kA_`gғ~WTφy&)v#3ho֕P dcWB\$؈`y3!`#UYUl1?ӏ*K!6󙮣*zTfhN񞞂+ZG0'cKGNOWDžw@O@M'm&G'~o3/P c;+zq'n/-5PY$ ~+w)}j޻n3?W̡.U[c*^2av7;8Z5$x&R Ha>jWK+%f%,jTg?Pav >G'^hkTv03"um'D]WdצT7Eu0gӌq6]|3AI[W BIY[tS!7.V_y(#ċEnхQ%˾6"@(M4#٬q#ϬUpKcB!TJΙ$M)8-Rbs*YL+ vN[ k^c3MBݳ?;cv!Tp<O8w;BYW6;#T{S Mq>W_%5",rX =wVЦN8[θMH-V[jV06kJ*[o=a;m6/ Kn!mXE/&퐃P Յ$Ma5>4U:F` IB̎8}!WZ` Canv{k0(HlVJ>1Ew[^ɰ0o  Xu2Wjo(0/|1 IhIK"{ߋwHzYL&qϊrQtCe(vY+ui֢-^T쟵<*"bŹ>0vğiSN_ޜ?n?.X2 ֣5 +y($XfmXIB~O<f^ Yю:gwٶm( O>Yȝ*ttAJL}.]ۜ2\|N:{ Xׁ W+yTל`2 pQⲭQݚ6̅R-4𘁸:XIZU'nZ?e_E1/"{(g~a륀8RD܄eٴF-VUhSs($z 9:$1@K,t,rpL)}8ip@(9A*G>ћC#zP/1ԏ.?[N qp)A@4e)"}Bn=e$aRV4E{-(O{1S\ 2BߝTfZ:W7}[W°0npsQKtæ^ Nq:f]+z*"WSۮ(00"Bp:FH1'1Қu+dڬo y/","*]BiYĵ鱓s5C܂B/牱De%kLo&/yI$I05xv@#f.{]R Q˞J 92Y8DwzЯ| 3(u=>c$'-AJ(5wO}do9T[%~xfh͊ e6#Lڂ뺱. [McF=HM̗3չE] 9ؕ3m*?.;71Eq ڶ}J*EN%Ç !ih㟂-%S%;:``dNBDHlb,+|`T~>rdP[Qq r.:^5}!5u^䱍)+sd9Ѧ>~# qvo({? @Jr} : [gt=LG}=+# 0um?/T,y`$9,DX7K=~FCkT[U0ND/`KE} 쿅ǥ2ǖM3>@dܪfŌu>+sxf;˜>K2H,^E`mN _|tHju`젡q|D.)^<µX:µ+Y&S c2ghĊyY%iuLF}LX,6P\#*&Fs)NV|#R JjJ[!Bse kԪһe6Al@b-@B541e?`x0T{r tt ~ݵe=2V1;7=x2aED]Co]]# x]H ͊ tK!siP3smmyb _=O*TfI_5VD(~_paiU2U43g[U@g B|AuS" tHtΪWA&W;A4bS3Qg(K i]kyekDz[2H?Au`wO[دm)qOڜ,o ݕ'D9U @C~jw"0B׬uqJ);CPS.,e0E'Ѫ r va2.|VQDA[ah}88!U[g+GΪ4S.77#`JOy(;8˴8LрUV.ۉ&'Z ~v=rZ?|/L҂` ]Ā Lr۹ S=>B^\ϾО>CeF%OjʇI{P 3)r?qEy'v+КK. fP5ӪƹO/~3V6~TD Yq;)i^cX RPĔDn, `gB0K(ڛm*u6[Hś4 oez~b A%tAb ZEy5tyFfuА%fnBei6.;8$Si$>:'%6j Pn׽qάAE-;RA_oQ#FE)Sc ^4W &>Nnz<'{ oZ/cPOnt'DJ/P_Lz`y6RܩN~l~ X  ? UbQAPy3lEw;˙3BTk(]`(1B].(Ts.[޽D0 rPYҩSW5틴>L 8=GjbER*DDg o\4}{ 믢ԉShGr=)spWU tP :AL.LpsR9P QRnj*MΒؒ,-9ɽWAҘ-D\?h$  ZnÑ;鐁Ѣ&Ph`rNzH 3NR6=4y\d}QkbsP<Ʌo~ɉ@cΟ 0^O& hr{fU}$g ǻnBȇ"JQc:y~vXMɝ>P۪<!$5Pn͞))cl\ɻ>Paq\"Z}x~yѶʑwڑ<4F4O ]PWtڱIc>w3;({Gczꂒ֦Pݥ`ZWes4yr'r1e?øC\9j ^ES * hBןNݿd?{29`)Ƒ:5 AxZnkܣ&Fރ$]T>'T`CIFnS㙱u/S;>=G14k Zis()Drk}ܑLv81(9{L߳|pCӀpc,x@0[Eҹ/6GkPLD_ZCuJ$vHĒ6]1%~' A "f?o˘k(dF΃2^Xl2zø5Z#/W ՝ 3EXE}-g5γ#5zIS>lMN-|ɉ#mՈW=/0Uz 0j3p/۠iE=˚*nU5A_ a怸pc8oɄMt %XNmpB?(b4ʊ9ZP";&S6nBױNUeټEIfP%p=͉E%L/ Qx ,K_U4ZdXwVĄr >hOYvѭ];aRY΂ 2!aЄիG9[bE1dSCApqDDcR-k;OݎeiI;SIx'xi†ؚ @@/#>dF'C䆮ԏ0/3Tv&GG/ZYss3&c'4q|.|@BNA$>~'𷜵;^ ±M˰_5mk hE9 pz oa!BHĒĩ^K?ȓjͅi҃;te(0HJa8C?EnX|u@r *%j%?QKtL7 FN?ha=W^Pa!sTjŸ:#zDHBXD: 6S8PC+M )`zRdz%'빒.}HQuP.O>i%:jL|8ًe^nrrS@k d 矣,:HA+jl㎫"v儐py{пDuL`H5esx81خHkQLٔo:?_7w [&ky|x\|.ʢX:%>ŪG.)K*] Ta/9 AЧGNFfoG2V@$ogh PKyt5(F&N!u&vٴ(ϒ4 =ЯbHY&6 S=#GJ3HLykMG|`l(M&bBڱ0W+q= vRlmA;1| J6hc4YgGT4zTi''bnnA[rxjTCZPAL 'M;vӜCկV:*TbߟUa2#n^Qyiw 'WS$#\ùI4Ph7<\v.#z2cGHJ-ώ" wmMRC~| 6Kݤ3:9n\Qc'4$16mg͞/E'.DB H~x]&Rķ΅L ET<'ea@JrR.[ F(f'Ra u"J8'8_%:+JF|xQNLb`,՘4يA`%D t lK'x8\"&/W+Դyaw򘛜͘W?Yd P%a},f]H~33vy{z1 @aF|<dДѫ3;!%G!oh[Ub -89DZ#lOVdNu>ii[IFr\fY –Ng-멡9]$pbykzEꄐk͍Q]޷34iG4ydCݯ*=tOJzMPTHHчd_9HKHi_8@\m~.~ƟزLdx,z/Lz<c-9ڣ2] *ocF^Z88_I1db`X8n#U|$wC^ۋ' RBM7 ΢}Q<ʻuQ^]Xܑ>rz9)I 𗺢+D96R2(2U[d% Rb4S%RED9%-XSgt.9"P 0ɝ1[8Z!z"-A6?dx˛t03+OJX2}[39!崙ɑèXciL4+J.%`o%*XOʀ^#qVy6d$1+0lbQe-VlL(ͷ*@f $HA:5H.=-\lR'.@Nro"g\gCPw9X0n>_ZUl+WѤMfj[n{͉ 'C'En=Jى[O[1^Gg:L7riI`݌/b9:`Xn,if5%r#`X<ɷ3d&鲶84yP̰!rz#113)r>~YYCL`Bz9':,7#W0s\HEĔo/)2G${TN6 OE{svq ?GNO6 _ޒKuY6~~Rz~o)Q{ROׯ#+n?hhyAvRNn&?Zw jnwej7f&$]۬vm&JNTJ9Hu14(m#0r;FlHstmhR6͇T U:֨_?5H>i{znS%Ɗ{'kD%ؙ|К"8V ߎ1|v((:hs\ a x`.0ZW(=6ki%]&b5/K?g_7vu-zCoZb=}\+~ AcIS}&B RIpKӧCG\u^j'Kf!?]ъ8.O+8PڭV%^4\'kmUm٠%Yy]/r/0BbjTڿy)gMtUK/M,lƮD^JQYPtc eUe].rˠWW`U.eN\J;Uұ`&2]n j;wr휱%^e4dR6 :wUx%o]PhcLa6'}x4BuaݍMLn@/]=Yx~*J=nI4Rֹ1v;eF2x6l>-E.W\5[<da4k#A?qЅ-(lU }y0.eTN |ѤE16d/y%xsvSFw{RXzfk*c }޳bmD UڴX)( K❓j!Kwi]]<#4 t@uiklӗ)nrzHv<Ҕx\ ,AvӁ*_Σ%XAABOFHqMA:+~hҷEMt^,j}v&#A f5c,,汕l٨jIrH@;i^\ 2#l:&˪>=. o^ 3j}D+7o@Bsv0ш&mnC&C[ S?pcMis"Ӝj p I0O 01ngSpTo7_Hcmw@Yyj(VB]o2JѺŬ?h-qw0ֱdfP!GDNt+TeԆ=ВOhݩ9W+6ќlQC"Hj&;,>J ɃтOdvA k5g'vC1ͯ>qױ6^DQc*SB{nAG ־FL-> lX%"e|^uXwa}sX:ZƂ<ʋ!cLl/&3k.@0cҰy,&$X Z `@:T$j|L8+u I DUzc[F&˹z]141^Z\^JO6C*UULְ?U$HrxՙcQo ]hɰiOc?+қ"~fϲ{m!\"V`Z MtIVa/*fg RR%'r-]  Q- <˚tTR>C-pa D?fS`E*+s͸kҺ&Ta_KBKhG@{(KQpJ'"pCf=ϺvyPJ./ӡ 6ah[1NNwC} 럀t8r x$Q+*LPcxө B)Cq8Z˴AMvͶyOED#t_% COX:? jGIA:\eD<65xOI}F;D$R {9rڰ2rnȜbA硿`L/C*fq0ںE/L͂HZ$A i|p1]x%wTRy'va;DͷiX)@ـz8EZq`6>oGO82 Ò&m9BçX_PL/)xŪS_;;OyikWrjmLV".`)qV1ӗ2/Օ3sJ@Zh`ms.$-DO=džj#?ߝ ̂D1%z88$%kcHFNHAˋ!~2' y Oc"< rh6g&@r2SpP̲bgq7')qv$rzAtwL߅iJ ,)mOiyC n1!#HnJzl2}+X&!hZc٤B$ cX񊀸R&}Q%_x q'ցh(Q˨4H?Z,6oa[nƄcY~n>W!إl8^0EOKԝ:'VXlT3OLrgEÈk;u$i `wp_+J8[сx(voFK#p2G$WCr`kzMwxOݠDb dYH.2cAUMTO|AEɗ)rV#!ic6 %CnA3Kuԩo8ZU.Z+ xoR :G~V^µW쒁^;'<SuG=!^3\?| ~P7v`}h@f?HyJϣ"9%:FY34KOn"o7w?敇bCV7lyG W%_eJ.d`-<@8qdܶ$Wnb!) >NS[OU7 /`YV֕)-@oBYwt2( 0G1Nrvf/)._(R0\:VTq+:\'ǹ;{{y)$ 4~:6m\)'j.3H4\fiZk% 4|0 ԭbnd"3/"Vu joLFo`i$ܥ[E1w8er*1W+EπhD`p^}T&42&3 ]UAL̏xSψq|+*c IP7 O/ke #A'tNFDsɔkkZDhJo/ D w ˟tUfe* 'Y,d%jhڿE0@>EErga|$]͡@ HIgf ůHgE9a/:x 7bOI76(mG;r֬ef l c 3uO:-V;R>L /2UW@s 7F%,\43Ҏ2|A2Ut@jEFtz;r-y)qt\Jh"vU L8/媉ᜊ%&X4i'X^3j ;1hA>]dr~ SheS~c[J ‹ax|]& .9)7 f] {de-:ʊTӘep c`ůJڗW-by7O+PUv ^_ \2v6z{xՐ1!{Aifޏt.4ϳbZH! oz,b7p:c Z& l>L6/[g qH;&q o¯Flsl " -nh/iu,ڰ#5>\)Âu%ݳ`Vϩ<[ve͵ѣ^lE* ڔۅ܃)] Y,5U8/s-rT.-.3PBdq>þ"-ìXn6 E`vv; F94hiˤf2R)YFL Ag!t1IV/^pGBa?CZ;@?*wBq՞kaD3 >փ?] E|IWp1MrƘYu \` !fZ0i U9tUA|.xnPe-9лoCKd2=V Ge'3&UIve(&j9(Zob&Ű3"mU5"^ šIv*|g}J3m[HԆӶ AZu)B -ƢeuUBqZDxCze@4|)XD{ZI("Ʋ*&.: a/Bi^7\<9Yq 6wC؎a^Zl(zzWZfD^0M~zMڞ|vϚSe]V`hO sO">Un 6@'u<ٹtmMjlrPv 60 ]VNIl8zAjYj]>_>C&cDjWt7'F|Y_х38`z0&qަbWLS{@cZf%/\5c?8spp .*5_?c%'f%DpH ݘwLϰ+/Gj dd@]O8!qs]t<viFfδts|)3!D"eHxPiecaЍW+%kt K!U怅ڳG9ZVrǒnnYU9 s^Z)S%$mW8) &4[3-SNE8q69cl.z$|MGH/X)- 'j'>pe}ފn6zZ~kOL|ӷn7gC1.a\g{0o58 1.?HȆ}c0>k4sKRypZU٭-宰;D,!$_gEO}^͓UfkyA.iQG>oNdAAʴN `7p`XCu}O~$]ct<ؑ^UhɈXbRt!u!g_SО?n*=Tuj鸭Ǥ]8 "{_0zb>P~M  |x&.?\rAO G+P׺`͢W(uK-Ǫ"0o bJuu+z(Sq%=+l &ž / C*EE):+d) n$D3y۟/jiTwek[(=e㞯Xe)S:TXko%u}^˳B\bZ 0󿟰cM"*Q*>N@ʾY̰foTM|ׂٰ@c=Աc4-%ڭq_?dS Rg=ʁbjY)A:(>S/hd5]/r^8I跞ҥP-˽dme7QWR]~zW8[ӁvdbkJÁ9:?hv)5PVMf~g]!Aꇽ_0=zŢܠ2}OtFzѴEv:1Qf[UP`ܺjZNBqqwqyKePny5rRYNE(/gK**~/1VjY*.ދ7~CTa' 4g{WtAxS&?8A!Uemg{tdVݱ\I{J' w/mC{6=4d7^d!9Ԥhozn,}ϓ_T4N L/[ Oh͹.:uIj. (ć/[mW^ACTΈY,οZy\Z= Re* **bCuUͤw[}5J*H҃?_&Y|fN.EOI2 腄FSsyi5›[Lx'zPw?龄&dLa?`AAтBE'@e/@s*$y^lz^, :ŬH/ 4VT{e$BzV^tAJ9Be3/(x и%? uq盱lV+q́̐y>-tla>B;X3E* @ad*N;L"ċD?#9NٯiӛeT(~밫*MVfIf빢0!U$J?EgZZꁕL]rF@;ߖ ='ϮՍ=KL;u1V A'A1{7C^+2ԅ%Dps="t,Xc;CDt헳Rrη]C"O$L9~ʏ * vт?owWCZjyWa42-=t*96"J婇#ΟHv[0E;Do<ے킯P]|3 %5(g&ㅻr&ٯ"dz2vJ_ /5@W:mE#s F{r8x+:b^i 9~P`*S}\,.V'5WN87 Wo:;r(:x@Ec kam-E вk m놬s zpL90 tLZ_m8 7Mr_ 1 %I) 'z>k ݝ\Qvkݿ 0 %aI[*M[][wr=6LϻGoxRT oBj25rK$amSO,5>8G^.:g?ZKXG*md!nn&WxJ%ݡվ'{#@2;DD^ѱN̖'Xa{i#}v3bT4)KYg -E~ E;HUj$0av8Vv*So~<˵zfNbhm>߷#t^ bvQ2Ue3Ѓg5h-fOzgrߔ;pxR6N@ɌTU:tFP80)AWSw`)Ʃ N&:W N rdYZ71QNmXkOFQmo)h陒Cn_uK6= l*Ŕ,:`I?"tEƾv ˼A@M4(|f'hؼ:6'ݬ0PR-ճ~!'fR;;]hJE[ қSuo:QbI,H܍U&k%8Al^bf=DoN+*+g/i +&#'5o}V&&cz[tꂘCۜ$Lia]#< wݴϾJVQ@DӾA7\"N1ͬ䧁?ȹ_ycc[>9!/Qh!P488U޼hj- ӷ9uX[׸ s*7:+4X*e[E9Q !3pp{Yd5LXCb?dyjl&4ahj)|&iI >', NMƓzmCt dmG2q29>5YD rn+A@ŗA YJH Ya5E!e UmH8C> ږ0,4!ޥK%9'7ؠIT+z@]^8(:4>nX=EW(c\k,!LF/OkY㟅#|MyY/l^Mqb8t`,(a萨~~{`O4ޙv' Gm f@+p6iH7xX5XUm9{lv:6JVW X˛%%/1>~i(e[Aϛ;s+.xK] =&swK!S'9I&|?ؤVBI6AM#;vxOB| qqItKN~oX%3\׀ %[u(RH|ߺT6rȊM[Raw|T-=-. aH_g㾩Y'9h"jOC7R9'ŰHwJ) fs`y˥= q>Ohi3T/#+͏.G rW{jY}]މajv^\QnVF` 2huzw,|(i_1;Wy@ l+!C<%|96V˧5`Ei'VtYwU$,v>E,G0:or.bޟj'V; <o/ܳn@~׎e ai\c:籘7w,,Ʃ[:%ö>!<Ӆ}N;ףRH[hn2dVhcɋ#9 4wۢC=/'>ά0 kQ9Cvo͢*O\"56ӉH| ǜm@wm/YKoGV +1'̹˥ώ{{n[t9kVAVR8~:xm9F00*ty&S&oV!OlN&”o*x_2?c`^zKM?n |qi%X%;o纊  t*y<7J+A\4 \*% 1;$=wÅ*A/LVm:z<6 J?pF 4%ЉBOF2װQr#i^{[ګi0L[Zhp""Rno?+'~;:Qޠ{KNRvG:~$t%5Z XƳo)0jTBL `5h@_Qq,m":Cx>^ 'S1gpGgⱱ(A-ʠND,< "`.`9ߕu,(ZaBZF{؋yц7C[E3jvuT/>zO?ǝ'3v zTޟ=-1=ޯ"Ĉấկ4 ~=J%d흔fT/IDn *d7ءh]%) #n!`HS I=D4N埂`!V`Ud|bn,ȫ-wtJpFdUg8gs`j[bCGIWrHfSvt8dPdζٝ ?0f*pgJEi@ϧlƬ%\IQ٭jmg+n[0s }Ďerja^]lePvDSw75GQD_ťY*:pUOѻrp=9b,~sY/`̛cs- 7H8 Dv$ tKHNxEkNZ! h=Q(M#W_I%Q( b ~{XE;r6nFNm}hc”6e.Ƕd7ax#20r,~qC};3¥@'7ktAP|F(*#E{Q t)7d,/\۞4K?"վƀ]1|>=.9|x%eǹHrz =20wȹ|&O{"I3fF߰2sutkr;U9+6i Fj%P,3s;>}[VqM~tkLfoj-% ǯ2߸O?~-7fB!mgiZtE̾L#K+?p'+Xanƙy9l() P*D".-wsRq+X2UbQ;i"t'̰˃BloX_u{"eC⡖ƉJڕՇSOghۮ/|ԭ ľYhg~[NP Ɲ,!qcڲϙ4:=βo~2E]jNLH0p867c8}r|Vi%UOhƶe4pt f$v߅P& PS.:[zsb~P_ V1&#FO]H(NǩP.;UDA"eegаuE3{2>%bx\^S3(q5WH(@g\i =7bQ`Z=)+:j5:6%,1IJMΘxN]ُg:=#-eV\0Y=MgqfZKҫiH^X<_NNMfi*}iVk ES}fU+:@`^7}'s{q86E3 hsN|gL.\|%ZS=R0(dsrb3+e͌KVq)|4\I _*uvTRP3 2Eڊ^`vFU@7:V**iϙ+ %_ !]?o]lCj_XNer4ypCU\NsȂ" iTsdM HKGa(zHb34 0$DQ*NOK5pɩ=FhaPRY̤?QlMr"1 u=qǘrY-AghYL2ʽIZ9ےk-#i;O'ՂKhAOa&w $=;be*x2a#2OV@ 0@yr$%& myv'Z}AnΙq GKwL)m][9qc~=;-Kka[$J,S6C//]-qQ9x%fLӊG_*5L-O_MI) 9u;6z$7 ܞްz9dg e Br?@N:PX#e1{{`/v GA%48.1p3þ;zŶD<6O/6o鹌GHRUFa}Le>#H g'&$ز%k00615Qb[g5K4Z.&|-[X2# ;ϯlgRCsoĢcm=G2aPH])Gjȟ77 5NG=^~%.ufDl<8B6PD"$t~3D_:/YmM+,HIQ鈾$ð43B[RаiBsXB`M#/ ‘¡kECl=uлh㽚@Ta\)+N şh_䕳:+߯v+\U[ &3~j'%4ɀ+:B^% \ڄݥ̙sgTYbwڕ}5tc<9B9YV|D6jkTrm,~O~kx>E> tQGi}ʝ'*b8Qh?HdloAFy$)!{; [xTb ✢$χFVY3pφ{٤|F̕}Ptkp#$wIa(U6yV??*yw N7"g%Pم%~k!S(ajjd8%:03N C#튠W*JD_͊71|GFއ`¹ÁИ ZP @9HIVD/j0Q)' 02qqJb7o"ez%GJcJ; sEϢ)-Of*zNLJ mrR 1k7Y!rEχ^57W׬^l~ j.r7`T~C ]} x s\Husp6*FuGjdVsmn~ =kJAi5E?W~w#UyiOA TK4X&!ƌXƝFvAP&g_`=O}W}U.F{ ?@lJ*%qٷ_:Sf*;qzhmIs'?IНf[ZW3Gj^|ֲ£QQ3@/L<sw0A=y`,*6kf gW7_@lctƪ@Uj1}@]i̶%m$S .pDu$HI`C=JAz|YX\{q;YŚY+;.KiD0}œ~pH"dXP\0(a g|wzt{)r'jXG֣-[Ynxh,loQȨd@3{W?Bcv)o0X>p%Z#L4's+EBmfNLt t7{ !޺m܆C ꇦUbχ6(0p2еd++ӷ5={y9ZzlvZbIAa4r#뽞r?%kD(|[svYmgz#>$.\i 0Us#xިANU7( ƛLf~w {PojKT(3!RF{@a{#Wc`0~{{=QȸAY 0^E#L4Om+I bz'<rK.$B?;ץ /eqN!9nAL.JkqѣD$U&{5}]+%hb`y"pĪyyF;p} xκMK&|7C"L}7Xo_1UE_eTƅFY:(NyOm/x8?UI{}]Ġk"0LnR#{#q(Sk.Dz/$hOh5e’?Q%(Xob @n-q:3`)% F6ɿgrQU!r : Q ř*SDg.w+KMhD֠]qw'XLfW:x3aٱ{[S[& {$2exQ#/6o?NSG0܉Gls`3nT؆+=eDYndp`u !%X)|ɪ7]lb 5lsH7tGexOw,xC \c K'{rWf(D|PaP{Jd0'oaLDJ㩘{Ȟ9*#Ɯ&"Nb~~ޯfٝc>HvR Wg)sd6l LNIpwqyJ# li.(`?فrLCb *"˶@Nm@(quK j0 ImҿAѪ@a@,pH?zG P-}Z&IRgjz-ԖH;88eԃsOD[v`F&a6 ;rR0{zP1%._]8=mBkZS A7\!YIGбS )c LI8Pi~tA =!%ϑ?T q\MC6EƠь_cS;#T;=߻+n mÈjfWX6{/[¦pk!Ke({,c ƾ4zPw[4%ƍc<[?2`fsd(ߚE:ˋ8I83\[1+Ŀ][q0 ,XתѪYPNs6B<*DQT#th` G5 zQ` ϶ G+YQjTU!g쭹f?YThFzAy<˯qL6w{(ˁ0ЍOgsrh%Vy]ݍIk~0@ MT#%#ZŴY$kc X`[c3p/hq^4ћ༟,wpSy+~n",W'n̉W>gocd[&o3dOHikJ ^8㳉f#^~fM FD?zQI7з?SO2F-*(])W>ˏTJ->G_0^/8;Ckcc?>QӋ762р=#YO&"e`2-Jwۉ:^ƨ.5Ȍ~{֠ gR,Tx' *r:1q]Qyҗ,YK(2'V\rpJ.c F7&;u |%re:u~Yw$6!]8ķ Ee&[œAr;!U##/AyJ%+uW9vR**jzpjܲv_RJz0:şR*Wk4RSnj6B5(TNxScgIF6ueQIMWsNXkT-P+.%S|خ}͈˗_;ڣM7e,e^MB)/YRU b%IA]?j{YajB6>UCv\Q SE}A+Jظܑ֥ǿfPO1cTI<_53B(7.6:^ ?zL}MM.+a'*A2f'D74JB? Mj8@K[7M6gF¯ ,qLV0fv'O$hOqvxJڪ/Z(%Z0-فaJZU^ڬ6T2Qq7MTAA lHc0Lբh;_?C#*L#֩-$yd=`ePx3&z`]su_B<17#yԒ'CW|)>g~bN`}}}Vޫ$Bb^4^0_;H{*Mϗ^ )@#v19#1VCQ$\.7+by~$ea=F.Rwl :dD4GwPB\ZU>lMT2Ⱦ}hN (E\,y.FVZ*H5Gݭ놹Dҧ CI:YE7-0v]QRw& uu DZCY8hBCaKXE٤{sT"0 YuU|]tA$烆9@@m%p|'fvq08uaD?>ę&I"\MtQzS! +rz(0}АkkݡqM|.-b49mq#YX?4hN~}v--2,WW;T{(1+ˎd) (9H-0SOB7=Tp4MT!s@eAA>ҢxYXÞw}pVtm3Un-Bc;uMN EZ3Pj;DJBe"vٺife,nV_.[h <6!拗:4Yb2YUˍzR #7p!J$#?vRH/{֕5/Xd"g/L n{?p[SD >`]՞RK"P2vmV>]k~ʝ5g1C6-u1RoMޞb"@L˵ )YEc馮ٕڣU^K[O"]+7/gVQW̛~)N3]DhQ|e#Wg ObH׹ǰn9]_%l"7LIEsFF4'PY{xF%Xbs݂>zG6#<.P; DX?;{!|Bg~I Ũˁ sW~9l9qfSRs} 39%q}(JZV $6!n)dޞ$#g֛ʾR{x073S\?=ڛt9@6Edr3ij$:wf s9%[GGkGaxT:z3 g( xl6˶wc |ASE3c noExE10KqfRdDpL9!aCA5hkodGxRe*_+3%-6(\ ~ĨVQC%`͝iL00IP1@i6I,+51Eb!=+dnI4^R}/7K˺fd%soIm UC=WZw04Y% 9'/Wdىkʐ%-4h89f8FkDUoHAʿ`bk Ӥ}Uٞ^Sy岩T'p>~`R"d.j0v}SЍ[,tZMBUQ)_Qm֒@$^5wQ|x\̈́F%Kwѡ ?r7 $nmqh.3y5"]O "|eTVrPy9n:f+$uMGh໦Uk` 5R|UX}{~MKfC35|dJILWc@zC!0 t0 Fv ilW?j7Vv#^#Bd&L21\N;}ڸT`Gc^7<$J@+Н[ïwLy?W{g.nc,Y%zLffiH2737,(P瘤{r;κ=#V+I^>9@0YR? ",= AZQN8\/< 5$d,bUavx/Û6jxQRi gQE+e3+2\٭2=TC\<k牨mZ'çp'YɾQ1xaFF1Wja֚ .n;>ٗME b[ u1aW)$`ƫ +LJxkby.Ș,lJԎRO,(4.j5\a`ʀVUVMƯ*mr/ iK|X'xȪMѝM~$N^Wp~M,]XÇGMUY ҍ2bhQ4F3`J [Ƌ^]h`AڕDm/iQ/3H[|Se83s  2'OsS+~?j|Z_*`re)LgƁ4YI♛^>+Z0ڙ 'ING3Y۸.yL2U@B"3'kY1sA Z=̆XF~. (Q%I_!U:# j0KhJf͹Kg{lI!Ѯ|&ŵr?(UR/̐NO"Y'ʏcO_౵{Saety}V_)Ct'|0b x ^$S]ܸZ\( Tau-P.ЪvpOHv֨YFjLb.s'kڦ̅U8Ѽﺆ}7;-%ݗ =)dV9^!@MQ4۪OE Eɩ??xGQ*ٸ\h90`rhpVg;_QOt}}g1e5~}JJh#Bd~Z-8%*N<OfX$䈻 5mRia$MgBD2(h OYp&O~BAz(*KO.1PR~^+rD%J)~g2NbW NWj(6C}4j6"CרsRZQ}~ƗT"i "7W/)aXdf ܪ| 礡4f#¨ ! #d;_̦h^tyfEm R щm>&}Cd}?KLej?DBHM&Jd"(Ue W.eQifN'娭4J@doj1x n uU&dZgN|z$W o@754K zygti#&iSU5ݪ mh s x}=wV ^] Ȧ=4? fӏ(,`n#W-Y|=]N{^ |vH3"Uhނv;l.lX,q@A*ИX8 .?:k}JE#FeנC;m IWIW!jT(a4e3M uT.2,c*>V,obTZHT˚8lE(᪍UˊO)9Ca9lԠGQ!5=EwXB/{?6p3it0^vJn׺nAqTxYiehQ`t)]t#y4ΐF&.B4ϴsoL8R+N|y>/&;cb1cV(}+)2]?HKVϚuvt_ 3G4!ݴ9Yx dgH79 *DhY&^q:ws*io}yFht~__d́{TSVk:X A֬Ey\~3Ъr_GJeU87 8l;fy□gKlwX.@/N2H>TO]V1ԱKBZ'#y{Alʾi '=/47-W`0o9ACM~_˨6,CU Pl!{ RDg D0o1Ř/"-yOQw 9zWnԄ100G[Ш=.E^4s{X:<-9q(Yr^ZXo -50^Rǁ#lB'Qd(]wƩt%|'* %X3+^gkGOќt&Xx3WTQ\cB[g5 ^r4ѽNPֹ"S-"vAWUv>ڶ7ipͯ:]g[xf'7|\CfvMB5򌝼rI@*_"CnCrt꩗jC!%,52>ʉ%voל`'v lJ$IxFI.Pwn(VS8Gd*RGR˦  HNVg)90qfAF@OEI"#9bgCH2gRTa*(I-ǚj#F[pV8I< TӜ,ʱ|_*̝p:NȽpI;X&AOq,g;V#UKz}Dۋ  YA/!,JCK/pv~EJrM_< IHp. /kϞUk/oZź{B5$4.̥"rDRh({/e*eyܛtma!`"՗@E(A!7g$Ł3kqC?(:!)D/$>*XiV;*d]%2X eM> d9ls<9=Wʟs,Av1pt>x@l]D6K2Wq)s%Zok\nDM>J~ nfʤkrWڡnwBĤ$hBbmYɤ 켱"ķ$Z!X;SȫJ)w_VV<ҙJDPH0(`Y|k".l!oԝʢ@'[ؗ6 4^J)1&u;U-!M؄% #ݥGh߉rffI/IHjÄ́el4d]efZ-[:}hUx{:-L!81 E 9 Yfcb'"0~.3I k/ v#\B9 fuѶqUbP+!:~S#8ٮe8 Ѿsy1HE>֞zG3G]un$QN@xH:7Û1N yk ڄ?.F4. 92R@,(1KJxn7𘩞NC>\UjA_iz NjWն/h9Sn';f%q ѣۛ sfheoTD7& )16#c@FTty d昛c}(L)祇'n1Ne,F"n* ˌ䒴k 8CïߙUkY /`][B,tɻ gfN+?E3=?c%g g!Ђ-;]oպ:H«d\bUv-vN#Y΢@^Qv#y+KNR'y.y\SxST^ ^!XYo_+N?EGF:R3CN$a)o"bC5U.# Q5*,_%:H[R4S{|I=|, Zj Oઘ.͛HrӊuھІ"Xb=$l1-QMҔ`S[:uPUc&g rFXr Nw&"?y1agcv*4&\B_Ki9|OfGq<8h+3W=Rp8HXB>hr C~p--}N `g/Tk@05U8ȜsBW#Ǣ\藰6H.޿#@RsYPtZ/yFmGao :)1WzM>Z,cqT8ƴ0""Q,J\*g4:MMFF=ߜP{ݶ:#wOCaRXO_d 7LK86?GҾtmDpNcY C fiq \W0 ^oQ.>,)JڍN<; j&SRoWY9Rq? EϹ'۩I |G7׿2X(g[iݫ+]cV4alXFIp4#ePd~Y"HŐ9Ԯ} 똨"A7LjaVj6 2fU\Ql?RfRS˔j) {U(au1*IzT|qMֳMMİqE8, 6N< F-^X1vTOap%n6dYTT\S!HݠNxi'}=4h6ߏtaи90 .j*|,;D8QP.T˜` ~DyFxmlZR]p9(D WwU{3ԩۺ]]?^NT_mXX<+b”J"}^^Sb۫7J]jA^XJL3ʿ<|5l,e&a&9PG) YL.3vY% )BEUmCckP+vGG6EZ}Xf;llp va:V #?^G<b/Dkc3Z ӲC op-IWփeu0Sot<ڙ_fΛv# ^CKXŐjZZ/Pga,$uE?e}r00C ~J&IvABo^L',/Vi+ P2Aͫu 1VΓ&Ě7lgaSUY`|xgJK۸&?LU^[Y\ߴJ5gB^뒤 [+Vy @[k"J7Nz67dd~ij bɑD #OyzTSNg 7KX[sn&+&=$E&INw0Vy!GIbG;ފ{~Z_0PDo0\ohTޒhU)^2YD*QBsMيI/-Q.ZW eք&yy6HU,M+tGj)M;G%320Ν϶Mm94o_$%sO'XDd M Zu*8;ky7iDSCdx_Ũ)$]9zcJ4)iJpQ##Tdl{32>89N4/c"SuVm͎v^@ L^{B5DǍC5RZLP_e֮hc^jXO*ÂKVGo fv,9mǢ[(: runjH gQ!_#Z, +a hQbdR} ly۝)+;R L.v=#ƀ_&!mk4󻽗aG>3Aqu,o ݄T.]7:z 1螯v6Pϓd{*Sl&jeС; .?}ߩ-{tڋi%K$$nE|1؂b-pjLO(XKNl?$ݷ[זv{Bl?P=TҁN1j*v'{z㱿DS6я%C3O1^G3҉0ݟQf{Hsۥ~G,Q8b&|:울ʻĈءζ<^olz耒z: b Twf Z(ΊOHʟ`cUqw`O'vHZ$PLڴ9QUXaͨ/M~v H0Po@/ڏJ&gC3oA')j|lyUjlj:lX%;పrO|ZlN^5e4,Ƥ.V@Ăz$))W,ʤ QO( jQlԾi*ҝvgޙ6P\iq2m?K- @rw2-K =u,GxVR/OsAZ8B. !"=g_Ns'ޫȆ㿙;vfH+`q}4R#%#Bc ǙU /%^\IJ=L]Lmݢ;dGnY wߔ.^'hrC#keF2pݶU)Ua}9K\ "&Zna]ѥ3wW)hyy> jNYvp63ë;f ] Gode1×$F4T*o? $E!ѫgu,gnEAn/UMftk$d=+|})~\`p$$!a'c<7֕sw-(ytro ކ[m&t֥Kq"4kbj"ɩ!$i0%!ʠ5 3A5i.pވvxmvYV9ȧCU&+-ܐvz`}7mJ߼yUI~ULT$Sp5o3R̃੸3x5!fP>Fɳ ޱɶ bXo+| 8D⍇?b67z" $V"(/z-PÆ֮V m2`r&.*R\ªB|QL4&$z+' fPiV,;!:,aqT؎57g1NdlU{6v@6 |SJ@';e #̆/fQ!UņDXVΚ QiH3AHPmR6 uZ\޼U(QƢ|/ShB-^(ɕFл3ĺטnGM{cR+*Fq\ fA~In/g$l~FHQɘan/|S y::"Es9gͨ ~ׂƘ u l DNl,P!%iCRnݩf/;&dD;p3zai Xʌ$Xjga皚Ȳa&x @jcƌ]K#sRDh g'SY&\W#KzسUf˯31k[~ }H6RZKu9s./xL>E(t<]-Bޘu0i&BK AP8f{tdqbY)WT7ɣb[vQFH'y~pm\uzPXqa + 3N[F.@xe 2m۫ˉá>Gph/LAV;a瞍)&$ B{bbWˉUOm <7 O#!1ߔ i "DE?Dwoa(!?&);$#ϝYXΠf4&HŁ}#^ .+dy 㦿[Jqe;H*QVw%Kae›@b3 Ҵ{?[1f RL8g%/C9m>uݝs]Aa } 6z51trbx T5TfgRƦx=x 1;/9:gEjo=%_yzRi p\l±*YTL+6t'@kFXwߋ: Jm5CǡA.f?EP~nsb9(t kX]=}FnːzOFUӧibJcy;%db]vsJ0bC/V:`Z.\Cmdz|D)lf33UךdMY@Q)*][=􆗟iF徫ݿ-]/8\v C_('peXflb=t*Vs7l9/-UI }h(2[4  &]BAN8q1V+7_٣4QnA*v}lYnȥjq='` Yғ{8C=#)"ք5&`PݓԑsA?f*~q{Zpۏ NB]K|v0t= g ;rjP+ edgm-F^64G^Wo :Ȧ ?Ҏ6] fBzz͓' +mN9KKSh-Ҳ%TOKo]xEߐ+Oqz>2Z|yIU.˂c)6MBq9/ףnjy h +5Z$(si莌ˉ7 n‚4mQԿszġTH:z,>SQƆsa H+݄Bz6Vk;B,4 z*&F禢!J8`/~6>A3n8U2' %" e$n yDbHYM%g$G"cרDx;>cKiz#MFaoVkPW)%G\ՀK P4)yfbb@6߿Rw&OskM92Aw8^>:mm.艵T1i6 ޣyy6QW9EczdygY(ǽs|$`1R_"Bmܺt6CBBK[ksi[@)DR!X 9 X\Bu{V;=KK+mJ沾af9^50(S9Wh`Vxvp)nRD0H8,IxpgD]`:VbwA뱌li+:RO =O= ]H+;X~f6Nȴ vL Ke2" bE6nK'!]>._E(i%h{'„fLƬ  r}$Ȍ|/:FtPmnh`9DNyeX`1ڬlZ@22?!eg~H^ q`I\B} =T`}Bry-\ 215#@KQP"vB-Ls߸~c,k`ԫpr+tzFq#Oewܰ]`)"L Ni i%5k x2vh,Гx4x.m qK@Q[[A[tp 90t\}{1Ɖ5 O187̽O8w,.b|7Ȣ=.cp 'v ɣ܊ѾO9L C햊z:ZTЮ{@[L},WLJе v7ήeouoI"q2^lr}i=۪'#wi'? }ضJSX(^gʅ}V\d\S<.2F髀1 |gW-PSSjNПh ,]y6|}v&)v Eq &Nzᇝύ͒EOyҋn'ϏKs '+aKfӥn-%žyxX4:8=ٖa6=Βh_G0 =OR^WxWhZ cm]:`tw@m486+ )m,yxڿ86&6M~+wʦZfBs*xOWj3Q`3[)^g+R\W 08Ew1db4{ɵ(O[_XIX5~e"#"7M(6\w8 zLJ/)s+t#2>mZ,W "=Ԣ! c{9xn>@qJcEcr(ىlN1mHbrGV^NQ>g-1'Gnw?˙CB8mx죛zmaK(kյec[`w!u'I><84Q >tc!n49afrBU/`Ә`y ٧J YlXPGI{ \JwP?6#m3105 }2Jhh|s)Zg75gi:YibT\K˝itMNRҊzR;[T4M Le~jj{T 'PqGDC uJ.Dݰ^FF(vE^.& fLfY~i gz"QxMb.EJ0 &R:%nOzsDxb 2ۧuPc`IM (e'VAapPƢ|2J )MR .&k;nKw@ϳұrQ"[ܨ/DgM(kjQĮњ/v=mqε_1eo~v p,AYj`/?"U~;=F Ikz.NS>k>&d(`Fb l iʆ SB^/#p_CKϾ;+6ܔ"ո~RW`;mvKg{S56ݽ n8Z΃3;)*!y٪lBkfסrf@k4|7 c&( MRnDiW{Z7LXFcrIvo V>yIάO_џTA)7`^L2ݻEo}u*@zo6 zgdek;Dqhk 0{{\&@C^h6l؁. ^>#W9ݮggM`L ZH"peaI>=5r2sօϮε_鱦Jl6YYh9O5v39 V< @,(r@b:VT0&.>Yܦ㈚iLmT 'U%4,dwj }p \h8e^Opm4pW! ^0_}V1)cB#<5o-UWbbxaLXtE!JX-LO)ҏrֲuəI-"tw0,_uNKW%o f? Q)V?V!wu* %tEI>?f1y;k;fKɿ>G4ʇ=/]Rd B) ,C \X=n޺DeZC2ײu> qVʈ 0[AdNO#S#X3h(f̷ dˀ,mj7{tF*I0I"rB&TM_" B?&N6-;w&{/Ph6]%:!fGD,ՑeQ8qcR*TSAP ={Fnw&4Y)O"0E/[0%(X˭[,L-Ip$1\٥)A-%  XOQۊ?9/ y?)VX_ajaՇt۟>n͇N) Z2ŷ@N2Q4=o DK!7wbHH񙈤|K?M/)q퐭ůM(LBdTBҧ@46smH82-hT¢xMtH~4j0,:(iϧx}$P%E ^u۝xY:IQAT{ Ӳr+CđgAWq5f˓"g+-sWGo0?N9j>eImޱ;A&F F\7\>[XuXƞ?xi{h,4EZb -=u9ERRvJ)*k["6\){X&)/,X%#RZKD!.`ꑼ٫N βIZjuc:?[Dk!e~ sBOLerx#2vӓmN i3 %g unM#-ؑ.:a9 qR YN~M1aB &<ؕ<͉ѕv*v=ćd~,!#WW AJU A`cNqx7kwl׿\wzK%/j8-ܜ MMltwCq L2Jτȱz(漛rC)gJ٣)jdx:Ԋ0,4>&ϯ_URAfZY\\9o!>&wftg$VW_xv)ә. ,(XK4=Zj@B:z蔁jH€cMĄ :m8tmɕL{1^66C,H,7 bdVPƹ:tl+ =fu ]!]>߭̿JǃkH꨽ٞE{Q[Z.-|;""v dRYSt"hGMWWlpZdj&X^g~j< nʭ~lE6Y+mȩ@jj?H6=OЌi3e6پG~JW/&uQDhUeA)s(;x78Mnە?1 6Z~-9a)!A oCɉ $0p=Ԇm%Knz5:$;wOX)TK5LuU [h>FZ.+HMgNɘWZBG6SOY)ĆԝN[ 12_PGז`Qڐ@ 4sc/I4Ԛw^M $B6HUgkAsS+`ivB DvLp @Ƚ! 5AI9iX!i&V9C4f^E^M|xP"ٙLӫ6-j>vX\9pw0fl K H_mOEy @oޡ1 D%eI(|If)xxW M -r-Nz&4-'Nw?o<<Ρ}jtRC#,;;ɉg볩+ :F2Fo;mS\$znaΚUți !y SvL4<Yȃw]EKIM}s*$`g6`a̲:R@H&|h]:d4m0kPbn&U{. 䓢 呾f!OJM:lQN|иܽ $CY9r7>2Q}-_P6\8ݕ,Yr*taQW,P R k貅%mZ!ڐ w{ЕZ:(Jyt;G辔wHY.r [rW2/=*ZG"duՊEɹ/3ul8SN,2)]KJRnEQ59X$|f[R_„T UNC "q =Ō·"'kU|ey0\LN[2DQٿt衻N3It!1f\;A;Q_T<d-?+cc(^mDeiÇHSPuk8{5DQf,"7S4to);&|+2GQw.p  :8qg]_}wn7N0i-{l^r Z6 ϸu|b5Njtze %^t%5'3̮n~Y(_;<uY̠e1j#} iGdъDy]fe%4v{$|; rnBfceѽ^om]pvqEz526mNt]4֑'  h& y׮TW7m.T64.*ɘx8\5 e#WgrڐUk -3 OU)i<(9fwÐc>!F"LݛGSӈzY] OI,%TyPF3 1q `%`L.y#+MƠ|0.=9TbpvxN irgHh5r7H{d?u53gfU3V1pdzw䱌 \섽:ݫwJe6ɬwVķ {n l-F|y%v4MLU $I50g@Du5䕎̸og7}1Сٽ\^ض%Xvȹ"!5̾SpU3q5)>7[H&޷A.e?LLJ[ydNbԬ[b%jZb ^[qY,wĩ$ťԊ oQ֟}71T/{:.?"6Ăܷ6sܯT@RV<؜~ R;)[U~/ﴻADX4̟!i2U! ?3+b"QIHv;xSU[O.+S»'? _1Y 1a>z)FvT;=Jɡm (5/]qA56DnKd ~¿V+h^;W( 1플J7zv?@N$?~>eZN0,`W1%)~W-;80xAdQTf}T#1 OABΏp!{YX0 j68Y<–+q=%쉿8',@MӦy˖O/Up"IcWKm_K$ Oisx M?gbk*CoL˦˨*w(Dk_R9ǩXZG r-Mn$y|U{ Uw[Ay=+2ge> ɔ{^к0-ژ ^s ]+4@9Tn1MX}=z6zx#T'j3;fC3 ϛ?ޜ I@KAbku!y4k#QK pCh.kY 2jdѲ< 1ǡ\;p]̈>T.LṖM6lJWgt*DF"Wҷ ¥azKOWc)!,pyWE Ү \8 4E6qYF̘x;:sFP]H'Zr҅.}9:`x'-⠪k$لvQFRGݔ^= Ҝ_0<\E˪Dd4/|R% c"u 5.ݖ]C zd=J/_}dfAbR-~\8U붦P- Ck}~|}ȡH=Ų 꾒sBtt'+˔n-j'Mpx%m<3 }XV23qӸK3Q EdbF#ƭYpCz>-xtr잵qf´'1ݾ 7`5jGhpM7q6hϮ[,|PR3[.A]XpÃ` p#{S2cſQDP/G}2; r 1c{UGBGߙabY(!Vb3lr2ӑע :p{٥R5VvwN{ VJgb }CXilgv# /W_VA?&-Aи}b50ni|pokFpƎgw#f=6}U0>3Vfߌ\mW=AWr@ )=U# _r5ٝYC,,[N:vN?~r"xp6E(ft7ObJJpɢu"&sΠ 6 <hDňة'" b-O'Djtc7ERذ>F.YJ}8 V4v/az yx\]3\᜝s;*P5멼0h!ڒ㓻2&B c3{^i4~DN: \>J'f"}TA;)7S &1f #v$$)!Tv޺cU;ZiՕeal+vAwNV }B.όPCwcWj {f'cz>hxs/JBEj} J5Q㞩/cz{iF M9 Sqo$QE$sE1%%X^ACvxcb@YPќeE ˈ)S#Da>O#aKτ!H)1InIE毲_[P:.DxD%8KDmA{Т ˲*O#f?6JE7H\2tn-#]c*!GΪQE6(Md֬ 4;-k\KYK{5DEkɍ;&|:Ms%6 ~KqMZ765]̺1ٗzqL;*ccWɱ]Πz|sK r$Bُp叛O'9.d*;PSAO@k6DX3\=Jw}CXqdUu(u 񃒎]~ͼ Vl|wSx/U#C>ϤHgۃIF3*e'Eb>.ٷ>; ØGuhk'Qܧ@.k%A16ASz;3oL;R5k9lof )!QKE]'a/Ԏ {sAO#d5&WD(Z΢`Ռ%"|_C_$ǍPpr<0_R}H* 8"L@D]"o'UCJP2T$]."qIapJbERx{ َIk/B`qC vBKrRQޱN)'Koo$ \;&ڳk)~P\ ~jHm\(jK_E /^K:|jwrMȏmBLTD5-#8wKI~!O }oN0|N (a\eBFBKz0|^&[Z3cs[fظ@W_8JZERofCD<k{y,K< hy;<5!ag|OvJ&n>mVZkv'aEj@͗RLhk_ilZN hi|tDr3N>`hxURq)ybbl,3NF~-s}g;ZuɎ' #گaĻ@~5+nW~wԡ:<^),'4_dS<߅֎u˾Q!IО #lȎjTG8F1qެ$iF` $"kq2zl E{Zr9͚էrl1\nt$/zU 4VkQ+oޞ!j0.|A0Vz^@88clr pA21rߪa(WaI Z*/1-h}b{i[v9 S;AaK樽%zcEI}@;HJk!6[]K0`GYT]!PCiB<%WKD9DV bF1(/-TaWz#t dP=v!܄g(Foth>hR;@15T8-s[/} Q4Tc}(nT[?GQd,Lŭg(` 3LjRY'jtZY32ZiPR8[{^~T2weɬ.\Rj+E8䵍ohצ{t1a=NKD .DI}!;^1T}0_F\ FbDg?h xuUD#&| vFn%D>IG^N:LgQT܌k=ukҠIG0@y 6f";g3Rێv!N=gAA.[TW 7<~MK\JԶmOLzCǐQ Pݝ>p84B\lG\58έy fi/ޮܬkys ;& nE(r#7=:Sr) ("S*! 8[l˗G2@ף9Xeƞ޴8s2SЗcFF \veb%NJlNW=bH1s.|XBU+ccU#JjfUTI7V:0F *>k;%b^쁞`XH;pPNt/ ޺bFOUt);aQ/2OSVa~VRMTBRbA޳2pOnmz:# 3odDVU Koธ$yZUkÞ >爐;&M/u?E5ح ڳpѝ](ʖt%sba,xn-'"q {N^pBuD"έĆpUcƾ*ж1zKY?Y#G ŧd\VbF†UbsQc>g7x',m趏sNvS>㪄HYaIr16-QB-8/X8Ro_q'rO2~a.i"\瑪9Q}Ұ1^4cp^HXčȚ Dtn\AI-k Bdt/)3^XܠzʜdawŐ/ %NW>!JNƸPoJx_gw+,*Fu)w_N 1F# &-FرN KP&=G3Ǟ¶Bs3 n^V~ٞ1F"<v`0a3-eJ7ikEGɟ>怪X7O2kZTY3K'F=wfbyFn֠^ ig gHG#ZE@jf24aCC@jMa^ó9V_sMlEWMDHoE5=ؽgÏN:kӞ68igL?h16N8F)Y!apE=N]8EӞ f'x*ơ>R!Ta[D,gR/ሩEݐEuƩWpd aCTb/>Ȇ-3H^"\#/G|,!LcedYXYL)|u3:Y: j9 h[6c͇-~aI) *7vT/0s=VCAZ\[M=)m+<|__a_R5zFg jx2hYCЙM s).q[^ŝB^O덐xBb@0S5ڴC3\Pn f٪1ҳY9\]d#&/g{*&UhRTRI9>Csa9*`^^9NhKѭ=EvOP7uPaSVtV<'qn`!6ez3:ur8tXnfD:Į~KXIVGnE_&yNRsz֯SAdgzo/sƑpB&҇t!n֪V񃓱~{_?8P&3q+Ƭcj#w T.x'`]aM fz_m*I]֗5(Ei8vڴ1C'lǟn73H/)f{aѝ.jSNrkB bHm"8m62P>55<+˽Y&^㈖- &siIv'9F|F6ck`? ƥdu:!sbٴ_ GF0ܫӲ9Z?7 YŰ3\rhW ԇ4hA_9u mwIU|˃I^i"j3AD3OW>мFG3\x&Yhi ڣqoZ+1<6d Z24 U-=BN_?LVGlcjKLBfE{HanzeeDIA)gs ;I>Y#u1TNƝBY*͢,HN&&: n"akVC'ǰvZh WP*on@|Ë23-zDP58J;Djh- 0h4Ns=3Zyi1xiHg /W-2;T|͇?GEe]VXy0 "G{w4ϘqwD'qr[m@ǘ*Ǎ.5|R4K ,np2#b-~aiԜ4kP2I -@c1f{ N Gr@pd $@. nɐ$/MT vTNjZ]\Y䄤B|SRRB5V]~Ua)u*JP:@%fӉHnu)՗VZ;WLKvW_`N[3B:i{>RtY6=֨[iY^H\K GyXK?ρ0QuQ-YenÂmu&ag[wtt,Mo;q5V2 ^-iWDtߺ6=~F g溺,Fp8x|HϚ UݤÇ|P="A<Z;"Z _boV8uPDCly8-Fn >o*ٲ; izRŴ>{i˜0W4{*x=8&][1ݓOBq(u];/xaE0k4(YxS_"v('Tx蒄*lxq$)2fWGʏwu0"i(0G1iQDv;i!Gt3r:Hs}MU!X{[M ~VAz?4 d8V0*[=h1x7kS&]%05qT 4D4f] y+k\ [!]R[ }7qLv4kHħuQ`Rw_ =,Z\ &IWcm8U̮6WC`'EȈTf&r^K@ rb*7Q^ΜO D 䯐Etf2 c8{r͢ >3YwK[Ci+ҥNj:2ֱ!\DB}ٳ}xA}YL 9uv$lE/KIUl?1T-,Oi WJd,xk "z*?dУՋ ?AbEJIkJN/[ً|nɮ٨U75E~՛+gS_]Cc}|KzvJ7<{wRTl{k#DAK4{2D3Nci}ٳ15ePVnd]Ab.|g +`coRB4!>~,*\Q9"_8v-dC o/oLHbF~x:'eCEp* JmF !L¿X;whph9 J]D}$n5,S]@dzW3bBc`xo+ΪPC R=v̏4ɦ@B(ou7tE2#]Z$ƌjDdd1#䳬ҢF g[O'b>Ғ7kXu -)>%"0B4P0 ȂZS1R>$1Vk'bENҥ u\Oʘ&9b[QPŵi9@JT r6 @W,ם0%o:kgeZfiZg斌Ga$^HRf!46Fkld& }L)qBim<JR36MlxVNpEơ1YrɜQm0"Ua(NiT_fdRّYׁȕ$驮ՖcT܌K$:w=;1gYcD?)n@U;☐R jG/΁B veâ'kj*N&]c  1y$p)_+>!9\bAVþKTKniz1x폟4)u6@。-h/"ZTK(ˣ^9Q\ptP1*'z,XGqf#mz]9 >R6g|K B&aଌ2hIuOjfC8sp9kȢba% 2|,Wiv5R9B7XήkxJԌ^^hIr,g{Ϻ[I1{[_E5m;pZNPG4iY+fD jCn@ɟ^BHĽPgȝd1I% Ϸz+?dqt* jdg<,վU~"6|NO'Zrã ztq@I"@w@+mޜR5H4Xy@%}=|u L#]5EOL\TtNk{%8϶VI@VN=3Ff9۽^eU&`{dH#U M(Nut R$֨&k3$)^UsXe {5kkzV]@H%5)IgI 儻 62ʃRfFjf]ԤM:'=gKUd>ZƁ_) ^k0}y=i+kBtuCsO . ޢ뢫8! .YCrZTL穓/ #>xL-oM/pm(x΃G;E樥jh6یE #Lg 2S8P=/pKžՉ #Xi\R9Jqq'aĿ\vn.Q]?-F3|CIWCҽa,~tY.,ciKҜʸ(!;1 r )J/VJ"QLcRq}s}i)5J:)5M]S7imQڃ @jPX}̱3qFJOn,X*'Sj̑pē+HqxKub#|l}Eb3;(=ό߼w^zM>>?хwDӫ2J'W>|Bx IsLy.\%ʟr-&dŚc"qf,LnT2c*^[NjԎfe}kA5DK]aƟh+">Wtc tltC GPS:-BQv%9b\%w7C LGÎBhh@&=W~G?1Q _6vjW[pGƇ gQ C7;rD zGkrD} vD,qQfݵ՚AfJw&1;al5GJ^KD+VUP {$U]_x˥ᜢhkxVh6b )+0UN@ؑ̉K+wY͝C1' \Z#ՎpDvZFTF)7!nnk'p7Rs_bxV<'0hިXFH@󷯳-%+$6<Ts^oow;nv9Vښ[=vuM9#TKcLxu8zuJE{M5|g3d'[WqGݰ^pk)M]n9AEf8VYt5hFU?}$+@RAQ.]}[G7g'4b<t$XKBQ+ũ'ZV45D7SKaN^= kݹRm1C^ lm@E/uLlch\\< /QX/LH" 2wO<=vyȎ->8wHbEyhvh\{7r;aK>ʢ=|h:y2CD&v5U67-wgq/0kWߎGב/[G$ DgdbH(HC{hQDۻ2vڤ^V#>jb41Wd- ` #6Q3l/e(3oS!_*93,>u5_H7ڭx&d{{R&h|`[wͧHfJZ3=`%s@OftC)3im&/3-JG]&!/wٚ#&Q *u0ѫKb|%14qK,"鸗gP{ VSݦ퇎X3[6X3Ō :ԿU ]z@':hWx#rзQa~ |a5]GŠZF& 6?F)_D4TUb#/˫V:^% ͋GS2#s{lpA .K#"#u)`ÿSd!K0 ]eHɏ'k(6PC|bMuV=o 0vW*Jlnx򃯥 }s|#Qs ENwX/ H)q֭,cXj$\4a&N$˻vFSɲZ#FoN0Xoxֶ'5WhMn iz] [MC >AYGeB W!%*Bb~@|zB04`6* _[i?t^o'D0g4m"hM("KĐY_Lt6کGHI5(J"V[hID6<\H/%A?^&`6LY&+B4VX$IsJ*m2!D>, -މU0[2$B^S**GB)a1Dd Q )!lmhng5$ ֡rc@,Fntףxν?4PV)1O53Ceոs~$^׍̾Y6R@ .1%a)ρJ''zdK'cTgdN9j,Z$/ҿtYݓBW, ;t772E΅uѭګ8kЖ0I%ȚMd2j%+ѕA6Psny^UC6zzpVX7{LR x4hݪs"DƑs#Lɯ @. 7Y%;#\d+)9Zu2Ks[֫5kT `\yu:Y7Z0rh/TGBʦOK\75/:.)TL`!Y}iV+Rیe]i2حNBK#`1c=SbLjݼBNړ^|WvimEXbc % C>xj8_Rl]Ýxn~}ۦ ;X-K?I֒ޒ>S=\*<ы@VhtХ4}"t7\OdLE\e+`S$^b-ZM*(\׍~;C/u!\fXWnj'f~ǡrZ[FHTjO|^L˫kR F(MyBZq $SW 8!=/@ K6gbMwr6vTO(P͡Lnc (·wL.$T;*,c>{5:[#RnZ};dH5^"Y ~@n8:M^SI0RpxbCDa6`cmh+~W%`yX9*4zr4;j:a$~) c;t+lR2ԃi'lh0I7!Y@CTUۅG2%ى؛.߇]#+C-~_ 9~x`\:=J,`kLGusPKA>0W <ԓNw`te?F uқED[D%S'.ßqb4Y`Ta #_]GkC; A(|厭 87+lt@Yp1g:v;벸˜?SB][]N5͏B(Rl~N߄ $OgA/<\zmH:I!Ks?ݘ4iyz崖?NIz\ѱ(萂cք 6/u?MuM\qX̊Ϥx{:yұ mhT!u'A>]S0yDՆ{A{S6*AUT:}ŧ2+u x% !;BUdx2Ui1صrUiPÚ5oͣ7C'awVZ %͎>!Kk%(ğnoaõGz֒(L+ǃT_:25@C3:X8D`:k @'ؔFˏQP-)PJ]&,"$˃)M!iJb.’a[`Ţ1[/iiT _@/v6'eXk/}N!UCŬ*EçWVz!*fPpo<^̒p}}q̧iNżǯ߉2EOc.֖۽r) m EU'@>FC:utQBRPTnlU\./݁YT#yb ~Y)Ersu0-e9Rt8* |И@ܮ.Dc K;'%5@4="юCYVk&룢+)+oLBfpa lY^#uAf$^KIdњ.P>g78Fw9se637 Q#>%)FR#BQrWl쮦_I[ܒ.f=a* |Fl h.VPf,2v0XO {U0[[] "]mze5pOeYBD@}6KK}}1i~$|;72hחnt pߏJg$ 5KfԲoOa6`3R=l+cp >uvTbLDsE}{?L[O}o ΃em̎4ϮZ5=if#I=-^XZ$0b()C3sHvf!*Ɋ5"U&٨!(Ճ’Kw>COhqC1@~O5ldUc |3{0_$Kv!+Rp.+{Q ;Ytl9bB(%Yvsmcl1lExcF$YFG+ T^KzfdK-R1n\<4$ALDZ4%RAN}̺-# S~g[|:YrMKNSBtb=8וةE2&HcT]'N#sxss F#?fxZ6t¢ 6`R#@ (BgW70{+$4쒡^/F8j&:iD3/t03+IE}7pBԎxHh(ւLe㡴qP0/%_7ypX|+Rȑt] kK΍gXShM$CbP[׾gvc <b',b_uďEm~b^2\#C"8z8hUWѣ|wCBi<?^ܲySXgWMRknYPԄs+"(!NjW7mj|ʡMX}wq8ΐyM`2yD 2TbW{-cS)oc,nd3 MjPotYgw!${|2B@y._{lV֬ '+[nQumld b*Zk!#LJ4n%c(;2a{-'̓QQ!'28-V<~Uٱ(ڑMkG!ڨbݒ&~JY ذ:ѫ̠)-RC\R; Z׼xOM<MUF[jR 򳣻SՋ#^2l,+GTlO_Vy-f"2s:.ֱÖ{z#ڙ.rV%ew6NN~/?Yשqv|hO;+bqTg)F%9Du~4<ꕭ1WkWE{5ь`<լyz󦶋U 6f``t5uxѹZ3 8~d/L7Wwyدl@S- |Az%R/ty{<<)c Sȏ70 S!Fې%\b \n;\'mY\vJD=}xJ%9sb 'pxYy{}Iѣ::n>]},`Oy  ld"YX!8(k_z ZS5b&+2&j(h7DU`\6TYy궺xO 70dj.Sab l%uXb 8[gqJmSOZr.;'Ϻ-p/<͞M˿ڳt:7_[殼ZS1Bѕ rEV+J,߬g %U򕔕̰ƅE3VP CK9N`aYCT .(c*"ߔ[KJYQ >V8ByR:`P2dM"pqF!J0xt^ZTLޭXj/äDDٜp /R~UkL?d9Y\}JSnyH(II5g=}]s@iP^xjkxe&0Q^B1; bu^ ;5F0Iق&DhOTۭPt .\~:5顉)AIZC#O&u%$+(mfxyYY'|NcO .:#?+sqw,CHGJyO|Q.Oc n+i!y8Qfsa+5]Mmh Mo )iYLv%xbՐՕzS0e:B{7wF#te@ğt㡛#_U0GQ(p_ EyBOźdJZeyBCEA< Û^u#˵=D7 bhmcvP*j6Cg̔{qON@B?a^YNw:z@We7$P ^HA^AaYi*~Df_roqU~reR[7by~/^/8t96#_N;vaA[ə8BzSqnC0ݔ@=m)\"}SYIkQzxn J` {Ce oNbunf_k̾QjO|8e4(J͹h+ƀ ¥B 12խ"'߇+"C2@{&HC+{mY03,:P0Φ'ZnQGuܯ 57s:㹺WjPA*yŐS˜`Rd%\<]y-K)/V?ai~XbHp 87A/sQ~)y4#LL,l!뗖W{qpI}.oC͍ݷ3uܝ+,sPmroQ e&նxO6(VDqUqu򩓸"*G>}Iyfy)tQ/!߯Է/(j? o8!M(YBm̵rN'pfOQcØ0)cu;3%=}U 9;'>rw!BcxͿ=.|χCg4_acz@ᒁqS@ KblPuQ6zw׬Rkst3?V!݈5S.,yt@AmKژW[r׮Nd܏͟4Ľ["BH(P8R\^$!Qj CN`y\B璘H@VYIUȲzTh0ԅQm)HO$Eb͐I@]s" |!tqXs_-88ȇbA{,l$!4h%/|S&z=@,$]yѻZlV RxiT57%3d>".gcuʵAڣB-6|P\ט5mN^ԒÉ*ېѹ}K({G){*8 q*( dh~,f๮2$}\"i/m J:2]&fL)$C1Gq پ_&#~@ uJB940=x ô yJ$g^M G$%"5c*d_,8FbG^*TR۷{Ɓy͙ڬLW*Ȕy<]W/h P6#%|`*͉8_RڨW-DI.uQ/xՕ(%:K)m 4{˔1 v{+#]QB4YD?iV`)2H4˟N4q0#C.?jde 4581R8#j 6S?03m?w1Gic}@ XRQ<{Ѫc .ݕv\X)JepZ1-đDy "i@p2,"oQj# RXN 6n>!E_W0o(}lӅ"ZB:p O;=HtNeWZ285zeuz?"PibB!/RߥԔJN`T̘Ҟ+$żfÈ^%"A%[P^5EO\,p6L84k JbP˩Hbv sj3DFy5ĺᓜDeπTNӷ6T zϕY+y8qT5@ѩUM\3W<-{Hl0jjIp9s&ş!Y4֦:v OʰB#ʋ˝Ȁeӟ{nu4+l[rF.l|hP- mޣ;:o2b Y--#ӻ荖 4E,I0A1 $R\?55s! u24jn`~Taz|~mG(KAXSΏ)Elhui˔Q{řIV HZ`Pk+ &YUMSu,W *77s1IAR ȷá 剰]A-=׮,8Nˋq9/B\\.V@&*+r@gax9oF.FLF G2)pj aȰdY9}*e3PO!PP< 6` ga2|$9ŋ:7t N'J(Li8& }j0 %tOkcHfXnӻ.,;gKg LO!s;Pk7 [Ff(#NCu56~)\}k?_Y9F-Y <q#/xdaqa2)#𓁞4Ke=a/'8 63oYfDVS93}InBZ nB*G$7^2ǶƤJ] +c?qč#KoT_, V'iC3_eA[6NWOp$iF[Ԧydʄ {fRZ@AM`lY y' æ47yu'4FGjd~.Ex\167mIIx L3K`D8KnH 1S=rH֠FD 3P;vP)b?To-Rv㲃ݒi9,Uyv1A ]hTό[Oa.WϮFu=,=N?%:D09.wASxzv-{ _s*/ac'}zLQJ̟f9EyoɇU Vz[ N$nͳ8%*!ϧIG_s];ϣ?94ƣjڀ5^_Hr^=b>MVqsʌPRǃτ rqPoאۖe5L"3'|lRԬu\ !2'̈́ ;x8ёFRh (yDa6Y}L\|BU3hs~v䩍ޗ<6揸F2 հ RAUHC? 0QZT #[gIX2+ئV|T+6dKy \@O[)ʵ"5 frE< [ŝ͖r}'d TtӨr|w.F@꒩9QjjAe_D\m&N //m ghSd=\|/}d!1jGLO e1v;";[/O9n2\pt&eQY=<4pTaI di4Ⱦ ~)7׌5pP̊Qbe^O#Ny O,,1AH5\ M'DaאPQFe%'LbJS0t*dp}eڑMŹrW$cY9&NiVɩÉ+-hs=3M8NNa*mշOI퇊x$O*0Ux yg$8YǴS wXCV-\y`iTj1oXRe^A,sZ9|WS305Q{!ؾ~xzN@ޕ_4kv|ehVe_ En7zOY/vB)_M$PPLML]pIuJV*p|w@_ؔL^'礼H KZZH+l^$ up=Y\ksvp8';LA, p\7 C3^L{|6>54ЇBg+`kk{ ~xe+һA;h> IP,4_D d„u_-ڡJ~9p,q}L?[ ׄbQ u c|NgDsD Vy4_u37M]NDu*ɤ 邎S7Vӂ nh/lBܔijirD.Ez4㲀wg#bESRT#3 0Bn(T 4Xlca9V4Z`n^ l#A2zK C3 %{ݣoj chfs 1욖+w?@!ܻ"ESFSJu %FgEKc=63xNʄ@ip6ʙ%_.iGAj5ZZ9׸PEXSăvbatC?8Ӌ/n^55MPCsm9P18M3EUmr{MDKa3fe5@ojqS"r66_` 3Y]ݥUt[XDg_gz:(Y"ti|>&Yn8 lbצD`5Y#E%&CqX`k?ZD9ح%[ 5 Y~?1dҵOd6R嫮ު'E S6(k /Q#oӮ&]Yv]#f+9 8J뚼Lv3"5 o(L?؞g,Ao͞=V ɧ$P$yvсq]d>*'}q53"K2䞠;gLIIBAC,zط"ᘁer(p\-\:|jT7#-iyAW_|MrJ6A 3P~EgOz %.;:#n?(tV[W!(FS.Bn% &AGGҏ|ʂQp :aSK,AހhM}$LQkMc5 OlO(Xn2,j@R) }5ڃSmd=9X*ihԿ۾{]Fh3rCh\ b0>bҹ`=Ab# F\:zȁIT_x@4ž_L{B ;Oܬ(n"L !DIs ɲ N#1>N}'C)8094?8:!`SXu6_N,n—4])`E(0MDw#|zC ET5-4c UID0D ܏h9-` OnS:q|+l(k5}Lyc9qX[2mV7^xS?ߒQHՆS'=l'<%[wCE@åoD o>z,U"+\M<힔+}>xJ;yEFbpjTc)D}^tBu)@.IY=5=:>%(;`L(c #Ǯ$˩ݝ=qY$%W+$5m9p:R E[5yLσ6j2:ȴoP6e6)7ze}h\7~%(]( Pv6aIN:|0yDh>XИ>"L$5胧<ԎO4.ȶ){i+VOߚbŏ"~j43 ᢿH-2xZ$Q^ LS$ɣ m7`[y·wtȄ,){D977F[#lV8P 8 5gW8|m h֭2fR܅#|srRD4wxYv^gds)re 8zKbԬX[>Qpx_:@Sk4:J\%5c@s:;c[ W-IMۃ;{]#a&h 9y~/[X⺧!pڬRV*{uEox>6pW ]P71͸)TTLIdKgEsi 5w덨Kѥ ƚύ-Ļŏи($Dh09R Ia=GrRzL7gD0!.~ٟD#C`N\ouO?Pzm!4l]eft5CӽW7UZO>D3+SȴRït`Mnqa.y$/ ]$]s镊5%@2CźrεRFhsW=e!+F@Q]5fa;mIpa 쉁0xuТGux/S%&id},m$1+#ujpO&6ė.bG[O-B~.KÖlW7ňٟ"7;rw[5 K#ٹ!E`Fy˨ IYǎ9 x<c>5/xxVy6B\Qb˙Kg. 0ęsIECa:=>͐$ے'@Fn>9BJus PAL~,;}e{Tf6{$Z]s%ĤN͂o^C uR #0뫡\{1GCqau |ͣZ]RCW.d z>%:Ea}m\K Y=t`xWz_6iTn<2W3֧(ArBGu]b!t^ 7f#h+cȿ<03!Ʀ>vl*z!/?MJ1*/) L?CRg D s CUsVb m7{[<RJapXӪ:$|JX}AZL.@!?(Y >X vIҥK/wld_3hi8Yʢ4e@FǸ}lX7/K0r}80dtFd@FJ?brXbݗ}c)w}MAcxs։ppbC*䰢  uXvw~`zX%]Ov/2aZwQ%D ՌV/hQufM"\kL{k>yD}W ȡEM ŀe ;K'|6iVSǀEs<מ] b4em/Gyxs7I1j* 1;S;5= &>9 )Q('+ +=TC!a yO.#iѬ'WFZ,G!P9LKEhm|خ3p/rdּ\$Ρ6 ‹D#KZ iJ0Ǽ+/ 7 J{0E Oܨund PһHU!30T)=RIYWQWzR=rMǍcMOO)]CؠX|KP;:XPlm@,mmo i:'={ n?s!gÌ[M*r+P]qUK Z^k΁^R!\b3ަ}JO'c?2k*<0e7LLwn~ȫcwSpŰ&tܪi *ɬ.lh_#60ҝ')p4Z}J7x.+jzmZ+]~CVb׎X+ nHh,DžQKxeߢ`:}IwVh$ے:7'a=ؙ*D393NȋWbsgߜ^̼SZ*u7{"o?%g[M4ϻ((pMUKS"#yo& V*2Z{]gxl5#hS.Kz:iWW[Úm`p Dp*\rEPö_26w#[2+fCJRh&LZ?\>EĶ 54=/@T-y "o[a:W$vUZn-ƷI+M<ɺ;8uf̉:y\ف~kGEلY'53IJ/յKXlB;=y8%Y/OTglAε)BJ|K;RWd֢ =EotVT$f?iZ$~~Oj啙U ׶brz~Y&>6'8J IfX49q;$D7τ-!c x(9Vpy!P& o26@Y'G| zZɊI=d(+hc mu3pOy㈈~36Aa mә&f, 'Ş~_^i'|׬bC'sN~CkmT&\Dv`D86K\C ^+R>X;PK/?nJKt"Jy~Hζ#u7P ,BIJ8Z0q-$ފojDNd.B"CCCTݜ_ڿAN6߸׻5CJqTMd`L'*Kf~5$VW\U.q@J}(Z)ݗ5ދVUl3}{O<,xz2 S:S*ELUu pZEKpMGN~_W?;̉9KCk6y/|/XhH|ߤ_oZM?E36MЮMFMRF:$dZ], ?9+`ĊV[:,rJG<քV8/D^o͹c*R|+nj O̷n[OT:Fo@Cؕs8ӂ*1q#Xbu*t4cS]y^%-Lކn U@w] Qar}vf- ]sڼjkب{/ޫxCH+ר,wG)vq:̌N0@DE,d}P=SiZ3 pE'SaK -)!nS|Tb~H.x7\ʽYKkiOzaFhr)zRڵ!4ڰtbs4̍iFQlKM)V6P5u|p[(X!.N+D.⃿Z@kb ϝaE7bggcbRC7z(-kbMCW6yn*HFa/'߄^x,dS*so0w'ERO2Z?톏a:-+uvG5ݝtEB0]i2DMJf@6Ϋ8-iJG]Iki {G.cRDpJgJ0v咝&,}ө#^)gL{4$i* Q,Z8UEb*Vefl~s5T<(G>'0 4(=X5PD cRHO " pKqv;zه #c B*^lQ\"S!C˚n A2$fyf/7~sHlgec5QsR;3R->C/V}9A|ZP-g| \2QӫI \q$]Wa]=~Zmw&TM7+iUQha;Cjo$g{ne_ʆ<am3ئ_L1۹fr+hkH$e:VU f:a3T DߏroG; )?ўeT'^ܡ 4zPR* i,f;,pfi$ωr7&"j K.ub8<=bIz_^j ;57}Z2*WZM[lVe#$7㴬j(<L!/X I}e*.#YB:r%l_T/yi0X{-rPGUtfQSNQ*D'<ޅB6cQ5 M"\0?TyK޺D,c'zȈ( Qj*mmFɀ\"?&Ga)I QMƇZ)Jn;(үj%l7M;&"IKuAc 8b$ aഩ=?ZS8-՗ Ld~:EY7aѮTsBoJVle+C #G^eo< PD 81+/H*%UFb>6}9_LyI5@:0u 9tn$WGW)ĥq%t:%?iBUiXgV5<2l{EQufAHFΗ`p~~ᑪz&?3ʾ_z0F).L}<֚z!RP9T˛bQƀ?D kKR4Ԭ:vA1̶%Z7HԐ*'rge$]Vk0vF9k+;lST5יffQ\pHm /Ou3?H^6y&MM'ug ~dAUEho3hn2SKi.q;%\vFI+`pKXkņI\>)|ƨS7 oRrpIŮ18oiK;Cf!ਢYtz.?S^Ӛ~{Bl/*9=Au vke=@ҔmcZxO2'M Oz\LL籐u7xGJWntV_P+ ʧJ>ڠnT}u UӨKICiG~w%DCQ:"S{ݓ$Wir4ٽFO3>m@?C :qմGaje7M"g B5gnׅ'Q;)pOo$>%MLa ,R_Q՗5r0UbCn G K,9)w=,<7*ؑyP7Ifv*벣 𲋓u[J@N%5"ڬLbjBȇ&^IJYZ?{\xݬ)8RżH}qcL?@Vd/ZJTdW,PIC<CL)}ݶ.(QDKFBk=k"tةy':U^Қ7wėetMVwօNDM1ZRv屈ll&4)QRq3.UC2!x\ AC`+vn, zؓNF K}l$7WfygLW$D] ڨG8B{IVg3 1 r#Ƹ SC:K1*^~Q6(KBhDX\iin&9¢6SF-߁u$d̈I'̝r d4'+*[N#ϰQm!ƹҾ!iAGL ` ˭fknJ=ͬX%GS)G\yJ3 1mUFdMDOƟ|QIs]>Wn)({7 wHaѤ/x2V@A[Y vbPOF[GΨ؅( {L&KP.`rrT*z'mi SAj`|AsZVڲ_N.7=f䯄gNL&<$\*ht]¼ĢJuFyvgǂ(aeiG_p'ּ&tQvw3[NwTF~iĖԗ%,$@W<Oy4WAERY"\j !q1 ۬UN@tI[Z(SO(yfi1{65 [>0! Şv B44X-aj E]v[/DC{} lneYL_(F2dx-U(勏ܧ`J ?cg6MN34-|"JJz^`j#lYiadU7%1k"!=U U 8Lʯ+)x}zdiH,Z"J3lEHZC Q *A+X#a/" &Fj̪2#_:Og.i̊/PoTo7^ :$1cZ=)#ty֍0OrZwsey< ajPF7?Li[d+%-QT%|=g' $!Kc/syڂ :j/qRKL*T,cݿfHk++"ڏы#]-= &Nu|މ'"p_B!֖J4I}@L zuwRcx=' tbG:HgqMON޹l0lUۂC\֞ +Kxc6Ww6wzu65H=kV!=NCyO M:ȇ/㙷[+G;6@f~딘lA3y 5zс{÷9o` 2~=8N:ʥR#6"nX>L5yԇY(` `T }O06OJFX᭳РՕ;tW6흠sa%S͢Z/a(kiF=FgveZ,݈ʃ!Ndyo2'rޟwmuHCË7Ss2D\mM?P1.&4&VLVwQj}RPFhlŘDU&.R[>lGY>Fv4U@g͙vE)qsa.7F~seP`c,w-w*Z]M}EKϮ/P>||,ϸJʾ_3+˨_=8,m2:!3Mi\Ӛيz&C΂k2*aRfL- @Ϝ˒B0'>.duF%R}nA#|L%r0n8c՝ i=̠F%f:\lوdwblbU?-jj(%r)|tc*_"R@h"{Ei.w3ye! SށjOz:('Յ3xH-l@:7$Ui(qtru (>G뗾5sP 8`|I) Ҋ3[*T`|"ԁ5F/ċ8bUeL)Z}`{(Vʹ` x^LJ|2yzy_;XFUnߗi)b5ztJ !o(, jW@J#oU|1lGq>DYuח)лR@OC Ӎ (a-E F4mt" k's}bű`A7&IYa `XH{RQ0eKX]-~;`+Ӏ stP-M{ȏd^AD`":^Uq?^͗Cp xiZvP mxmPZmٖ`MlaG7 oDD3tV; nx=^[nkYe`91 v/ ~ &$(3 Rf3&$V瞏zBm}z_E֞3=(X>:e3M DS{tyԮec:pD^H|=AeVەr۸`qD{ jn[ma$<)E$T#(0>>+ (qp( 72z(QBZ֔^Kz87 6>L,FX++Ce 5yٞ0N6 XfleS%j^r~22+پl!u;= *'.ܪ'i_muP_eʡҢC)uOK2w-[2LP8\ƻ"}xVYO^{rC;T\LzP*092YM&4tL =ᬮjtg0 .rU$IAI\3ﺭ4l/(ښ`sQM6Eupr-b9u1:_ !(BBG +zv[%͹.g|6~ Qz#]*q?ǂԈavc(9*Q*doٜr k-|CCEBmG]Iޟb[nS39f02Rl[~w+ZbG( .b;8W<^od@fh19K@ePq>Ϙ#K?G^QaWnLlcE^Z2Π=Q{:3Sؠ8T$Drmn]7o%(I0A8"'pvV *ȝ }./]ZnQrr6fáJmVӿz+57o*x~S'Mz nCZ5%(q*%gWjFCY )&q-wB`xMA?py" .Қ K٤J AA\ių7( @D+7FD;1⻚ݟ2|KWGw+"dWw Q`} X֘hxÔy.t3-Ǯmcſ] L.«`S\&8E%vJ(-!B J\;@ Lp\~j*Fo$%ѧ@rJտ} /7+6w˩QWN_Jg~wN!` J$[`( 6/T#}mqΟf:/d\Pj+{ilܤc;=f397+IIٲHyҧ5SpQ ~ i0T<;Q-,xD0!PPcѳ]/{y -F}z%353c/cOEA e?Âw|gd]=><9=s%pi >Dg?;^?QIofpp;fzMl|mx:бmw.6CtDwl^ hT7~?d{.ZfѮT|^2b4\z.-YL2 dD@#ds)~Ӫ @wU2߮`AEa 1Z! U5+㑗ݱa`Yl 㧌Kc>ܹH{&Y.QtejA)&F aHzAiBXNELziGmF/%S>iDka:>S>^;ȊO 9ҰܲL" Ł0nI"۸yAB.:sT uLKo%# 9Q'Xb"jINl{r՚cI=JB(R{8LGAϩ$پPNIǦ ͂!b$^n=Ĺ!¥u*uqNY5,GRS4Gqa)Z&m4ol|>-/P=_0 0kf}D9I=l=gRFQfŝeѦ&6!^R h>1d?x~w$R,:'<8\EKα { #ځ4mCc#k#Q'0`&(Jڝ~]^@r39؂::Ϝ8p]f 9(FⲶ}0ˏۧ64 !fpLҳ9}F0дvqu} mu|ZaB&4hH!C0>$|8⸇V"E9= dD \3~W8Pކ6;=]BWEx zl"cˠA0릱~|(}uqj;r:Gg B Y,.n̸,>Kӯ{(NiW !Og ^̕'6VBTE] \o{$et֦˹l)Z@֩^=zʓRySOŸX^ ]:1LIYmA(}Θѹtwy+RLz+yerzn ) #BαBR?oUm bَ [_XFZ(^ QƒZd8nȭz?S \w7nήwۥ}*4(\A%Mk.lTf촲ZOw"@% jāmEtL3:2hUbD"^yZvU)$uh&a-m0S2CtnX UbS였uK>Jk `/E-2q*6laEh,KmkY̿.)^9mP{#l:#8bӑ&S*,G1%((T띛l&'tҴ7]<qiυ {J$Ǎ(kt%珖$~զ4T"{e*;^7)p/~H9(p ښG^IzYp;Dy!QQF"w ,U2ןy"C^||RT `| Nb8*oV&: v)v?E^]R_yv;u= Bsq\gJ~ǒˎw qh,c%II btk蕶lNG{~:PǯBL$ #w_j@L .Wi%{DqDqq߭ ҮmO}Jwh#WT4]0X5n|}c]!~W T'e"1GVGP#STWI@dz'.r1)N\}[|P48־ HarN 9B1]:[8\wGڙ< K ;70B6o!C<0DߑizAr=3^P+!}dusxjƀ5b'5k>VapZ6!S`;7.5bawtߕ,VcߓZ$ʺ H ]x'y(GB3EPJŘ = `?Zl' 6Ӈae?C% x+1iC_3 ^7St2et-/x,2DmD<.✻SᦰSnBG&wǽKDZ{Oz r vV:R-ؾ)fu2օ6 $ H}Z(-E#px ~ܸњs) L []qE= {\z:讖} bJY"g5IvYeV')9 aȭq֗z2qu&1]:졑=3 3rNuɜȴM{*ZP%Ɉ̸쓘docJ Y{ob1d?̻%XS h2]*2.a ].gFoJ xPh՚Kl,QTA3k,7׮$Z' D\27I@j[46,TY4ZBuwt|mp2[ YYoG(D:tvSԱR[C=7Tyy'`%1ԗҗ "_Ai#bFWb(R>wc$NrslWvr`, 0%Jz&n&1lJ u>.KZeb#1z?ebu<0EȘg&O4sSЬ]ɨojo4T"+K-7r8~Ht y—*Y. }c=.1eɶOaϧ t7Kz׳;vZ,K Ǚ'AbXپj +S:9CsL [㶬u`iڐĚ~pmQ\칑'6hI)3&<+{v7NZVrLmMc3U6Εg$a-ZSѐ2=B쀋*{Hr‹hl?᜝u3~*5X>R6w$kD!'1mI3;ŧMgOL #קWGpDpaRHAijvъz5. '@h)9v]G2!v`YSQb!0l{P0KL'2m HłUc_%Φ9R8D<)r{Plю-j8J"U (S &6hi׷I& 5H-iVU7% H9k壋)B8az5$^2FYJ0TZ]k(}iPC'.N)s,_6ϓ;/6~uZYXFW, zWŐ-]+Nt_+b=~6K -:MH}qݧk#֕s~1ɦd'mKZW:dc|.pͩ*<4F4[ XenjxFnd1}bz*$п܍?uԊ]I*Cdʭgfz&1 .h7iX6[jJ1W0-_53'0 :Gl(v2NFB*v~8?8b/`CT(*MD[a} ꚑzd\gh_n"8V7Uf0*wUk("șj2k'JՈJ^|XN~TK f_(CuI:Y:=U,:%̀.d.ŭpۉ2b&;c*%Y1P $sS!WL ?3716bwD<18'XPę2a`K` O(!"VL07pG8e,mTe7Re=sz̷:w`f75аb.!$&00jzv~fЍg[F㕓yڂdq;m8M*v}H41cGs(`Fb 5+L#i{%hdU|t2FӦtSe ydIFVaPM5AhjT?%t2 qn ]ΧTE|RE٭j_9-A&mRO{ o:RA'- FrBI[g~ $=1닖{Ԫ,ʚedO08 Hl |)H,K:nZKt<z,%E YU9f% S\'_;KHw|n,\B W?{(.ShC#H)z*6;d[2#Tx^@JW h/b1g.q湄TctՋOaP "߄~FCt;4x JCQ*?EТGA+A |yT2I샺GجleX}w@]trh+ s3wREn?<,Ro Z* (=ꖿT$3v BWk֞ueYt)1~ "-u;:sUƀ^s-ExnPNnkJږ8:Պ <-rsC)#7R+\DY3^b{`dl sE mTޟ4#Uvm5LڑTl?t`DLSOOcNRѦv4 4:ޜ:O فr 3[X 44i/:1XVAc,Q)BNHlůX#&xa F#>4.롦%GBՃ(Izzrkn#i /sxNɩ8B|rBM\\P S^P֝ b Ԅlt/V6A]!Z}? ?^Aj.9_uZaATiW*Kcĝ^3g 'ztovȎM0_%;>Ew+HG g ?QFuM"rXV&bnk&$eguIt6+ P9[x|5z:O!WGQ؍ `Jk$e-G|3qZ˴W}"D峠T/#-DCK2N2Y5<%tMt1{Y ::)9p2oWZfkysb46 ?$#[s2=N{5҇[Jn%ԧH@ #\h4ظ+֦e)MƬoޚ{Q?udzS1 qO#h]~VͫޢEh(M\|ח<кrHWnPS"- |uگʟyd b{ Bm[$3Gz^Hn4}0@XFDq (lQ(qld5ލG)U[ WWAvŰΎ.5'ڼi/igtJv#܏RwoJ ~͛}fZEx"Ћ*[!`o0U<a'xTPoQԗ,ա*ZbS%,{ БY[챷mVrD! 3?)a8+]h@98|!0++\| DhwcӏGòϭΞQFoݡ`~jъ}uD=T|saWA; Eg[] J2󍆤gʧ6C46֙-C z[2U\\1I8puNZyM%1I'.98su%gt9H0ZV[_#5h%~mFùn ~$8R;. Mk.|t=2A=W yMK&zt`Hބq%TX0 H'T;b bF炞ac?F' e*膨Xa~9-?5W pe$sh俢C0UIљ}ȊA4;4FӄDB'EO .9هśXc"B&ZA +`8n1TQD>l$ zd`^|<ڣHMp ff[h"НTCDCWG(#]g-C Ս玟 ?ǻXUŞM7dmxi.aM(Ցb5K WHO%_pwoym~~B,$z\S2^RqMlmLWuUB O3Z57و]¶k yZEݞ ٪Hhm .P~y4_vD?ݔ2eyV@(4|rwi<ƺWLhz]HyP%CU=E F=6,)<05|Iv4H?x߈7G #r۲cCQ[>/5יfO%c'zZ1*'rV?sxeN(*><mcO`@*~M6J&k;KA#]8O(+}+m2#Vm1>~/w38&g] yE~Qfx|i泞g{.MGzk9Y#@kwyRTQ}CwXpDǺ]F9VE\9$+,*< %1MT&aتQh멜841 $t" ĥv9 uvxaO}̈́kzVGmu-gfJ{" {h7wdwicUnf܅8:z#O }h !!Y&FB}j5]w39s% 쉻\NnnS"I)lģ+^{G;?c51:"3."9 KEi]k+s\ Ö >CGn3 BEs7YӇ51V.|79 ,`y! 6 2zv5:R:"W@5w&YӔ0#9ȦE2AʗφMfSG(7a 5V .t -AI "$Yh`[&UM$SʧvDoK\0lQ%]m7ӠDCdN6ONѸRi>M_6Ox͖y4TA­'AS6yZMӯ[VK-! GD^X:YཱུXnȟ#٘IpQyӻP/j;(EX+V>$.Le31ʹP锰Mi@? N`Ll!QGs&df%XVFPo^LVަ_RwUE,˜$,v[V\ɣ1 98 =L)p2^t+{v د9Ų&~FE9bĊ uy.&Mb`"huP2XN

3Y7~ZZcLB1wBROZrZ h8ӝT}c,,C\6W0NJ!WKYiMDMf@- 7(7HN`V2+y >\ibȥai+(*:vQYɭrD)4c|î(CP}iWJ/d$kpן3'V[Fbp숽Se U ?8qgpK]Ԁ"[䡗}L ElAKz BݓĻB ˋi:NXu _Mx.S5m'CMߺ3#gbO #-9ykugR%V> Lņ{ KSX*K?go@(\+ 2W1V15 k6~מRTXd"r5V ؽ>+lё 6\0M&KaK@yz8(I|/"ܖuixG(EkUqCFI:$X.Q h)ΆQ BFAj#BGOnO#0@`cu+F=ʝ,!ce}**C 8QVDcm~k2a(I|HA UH-VJ+EYQ\֞ $ֆI9y|*æ$uy? ~5PX%3tO9ne'4^RN/9(RT<qƥ8pZ ƒfyBs&fZ ,M5Fi7H[]Ȗ.t`?f0s7_mr ˧,1?˪m榜RZr/6r+JS<F(նܒ(>On %6Yc m3  .bTG8*G`0'qᵕlro[U7g>*d}cď||o\]ɅCDV$Gs<]7:'ѧQ[f=~x:اn/UdlU^b[R"plq:|F0M\kHT٣/ao^7\<'-"K躂["crB +Y65̌/$03vթg+sd3 nޙR9x:r#P3^7R”OvkݘIƶ9A~e&3[Ι7U͚h012IQU/ -bckNDCv z CT='A302{'Gm4OCP7*`5w˒ 1x|I:NƈG.*z~4dOQX%'|@m$mkX,Rk {ZizV_ץ;Nv9\nxƫ=lǏ.wxJ<Cm'c ).S-zaL293!ӌ1K4s/Ք3 __wNa9<.A!cmGɢ1ۧ2sPrF= !u/?4ϨGZ?gsގa湪-Z}(|`tӜ>м#y;=O/җa(Bw5S9kG]k0S90W"VM| Nd x6O俷Etƙ|ə]J\ИO djHpֆa Kd_$P$s:8I/gZ+Hnv`dwm'/APr\eӞѠhIKg;uCiwݾ,컎SN:<- x};}#&9b.@|\n jg=Y%sܖ,%/gMA<* 1+Z p9` C;IFL+:2L6zS)Ga3RԒ RTuyjG 7؈y/Jm 9Z窔碁rh/fZsG5}ZDW {DžE^,[4 zwUӟ;u? Q}`zoNF)% IP^ge7PPpߢ&!Aچ-8&.%Ś|EelL`h}g~i7iDgl|.[qlj([D6óug0c̠Taid\w.g_ogϚ:Hk q.UAػa[]hg^c+m\q}e:~jQtca(B|4p4](ak].l\Pi-Ir:&}%r7S*-y ڛUt) İ7є ̀ a@HɵoyuqѬqh?-'zm/gc ,m 8SrGHDSAB1M{t {-C%dk@Ȟ#<=L-6&2 Թ=OW~SM=Xsyo q]Sw!V-S2h,6U1-EaB2QEs#%e#V}3/0x!(8Uy3%DPw=00 !%Ҷ9_^L|3nogdvT7ٗHђ勑( !Ts\g@=J /t$i?/u^;{&s`I7k .ǘ'F̆Yl̦;8:`o$)b 3]ҦZ$_hd+=3.`!eDEnf0S;ź#5%]FEXXU8MipZr]:9#e1V.x rTmu"G]H OT.ʀgQlT#m뉾MڋzIZ7Js[8y&pyڪZ楷s@s3Rn 2*W;thS@89WuUDY$~5/|\@^''#ťVXB T =W(3p1[ӺϿw`*uVrY}>ԐHA jMlCJ(ҭin*=/Oa 8R"LsW3 oQR4~*ޢuc˷7Gª~mI@ s>/Td!L0HZPzϩB,09`_ dgL2&f0"x7o%֚`LwZ>]>XtcqRBV Jaa.$ruiGE¨{-úi? @S$گݭpq|Iuv#O>=\ ck+DK sLmܴSL)@0D{tMzӇ eWD^Cw,RUz#+[v;OCP$yʄuʦp>ʪW[P+y,09ֿ;kߥχ ÙV9y]UadPVdp7GCg &a}D_ pYۆ04ƞU++Jc|pҴnQv!р#'+_VNj:u(Dnl?^G~_hJk"'\F nuD^ԏzoz2|A0_Q@ˈh?Lz} M- 2OV(G~=$:K\֋x|P [: R=1FVlc<EDh{}puaZ6~ԱOETT0"Ft&[C3ꦤ|C←;||%]󏼴GBMM{}=$PxqY+j L>I4N<#em-c!22A 2*@v(Ā㳝ցMP5>gL݈ZB6{<%ֳ[EWq 12TL>pQumc#P dvpڦmt)[Ox@1W9:6|딽27"\Zc:p [D^E@)1< KAЏ5eaҢ |H\v afVK&m8J>g 8jb&xM|mV*๹k3^F]6wM[y˕.h\[WWҋ}UMA$%; ȾML'vd3%-)=0oLσ|4g\=r:licS# ͗5=V}V;m;;X̀PMMʂTiV$u o-&5(VlEz$MvgsN6ЕSm"Ra_#d~'=^,UuhP5R1=<4,Q};K?5 wvyi[=9q U.pGw!6T )g@g:3?9ЕSrsa?\~7@I({KngMefXzһСf^rx;S$ <'ܸSeSGֳ hkl <`ǽ6 pQy؇%X{sMQtz5-3iz&kWFh!9EyW^ijSd:d Bc+9]f]g"h%$.՗fh?z^ R;8i♺~c^2YorA!o:p8jj$`γ갸^0tp QwcK{~%5_+BG0MiYWxÉ!֙Mrԥ.0 {gSE+q?K$XZ|#wNT8ۼ<3y~xP{N$F:А_?X/>@k-0%[w բɚy̅uYrx-]5UfLO^X,4ڔyyXQ(FRCFxƺ^1ņx`%A n+ Xn4۱:R ंO0cA$sŸ@Kzj46$|yO6]ד\*?"kT}B% kեkߪC9/(Ȉ Vp0EnOPDno&>ր}(jR%.[{D'^y77TRX>@ cU<ڍ$hd /@3s ij::TR/*\_;bCWkz33My*,^sx::"qY`0dITyx zEÙղ#@6 e4V'68;pɤd_-γ? l|c濆xԖ*?&V5gR&渢H_d$Es- *vhA#n vN|jSiڦcZ5i%L91 r<*QI'Xu#ň]7JUA"pQ99.0tY Q=!n>>1)gO8 Hȑ)_–=K|`c#.?bneGj˹|‡7]rI÷œ?\ Ae6=T:vS ݑ QLEWkj¢xDA*v53eau>w33)͘;,ģ%VysZD-XGߒϝE`мnŝsD3N1rht$UsꆓMgXЇt#L> boᥢ9|%"H8^g*k?H894ex^/M8@7]#nSޞ[sHgLwrOP+Bt桨42zHMm V{hBttKxévk>z+ƕBRm$rb":*[1!I32P"JmJ|G; NJ;OQgb 0N),l& =[5RZ 7ImM!VS+P]*Mr, <儵*M Ao,-~w5\j?ʯÈOnKsItvt ^Zܒ?pdd<]a>ſN\fvVRrvOç\0Ǫ"q=IBan< Z8-ᣗĄ)g# U?SQqn1h ߓT=dCcU0faGbX7E5iTYp Aa  $}+v4]YwÜm6blNI@,Qf 7.pK4 (ĂHΙj:f!EXҁ8wM"L/|jSWIn>|wye3{\YsW9oJsg7p̨ͣX=KNN\$; :hROh_cS{ZT4AE';yeEu(G0IrM泋&:xP\jO1a+#ӹai=}@u3:Dkzd3-iۇR;K3o3D6[,^%79qœȝJ)^CLb*Qꉪ~;G.qBP5tWK'sI<5sӧ"uQ@b<˰-EN..]ć$(AHJ^P/(Vv .}܌zV.OD)NZ%ƕ -@gk/#;?ʮ;'Yչ>h=1?IEt\hh«C,RIҩm΅.JCW/o.) 4kY0;ۣ}"Q75_lD#` _iKc0G5eD8G+rhX4wNrȻij<;_,_ "}nZw}X-ZPu.x1%Ptp*)vN+Y;Iӻ{)da u3ƭeMa~HPәKipI)CrÉɺj4pM"z]QR1'c1(y4NOo#=LOu˕u)ʁ, U{nt)n% ]EHxGD4N>,ȩ~ZSCqtA,W7KGPC Y7H7߾Yo$k\ P|TG,tRμ0^Uڮ(s64-Q9sȁU ,$~l~:%.a-YOԵo#dkv>\\p2kLbm. +3(Mz4 ]U%e?O֝lFcQ'໌-vFHM7YP[3O= D†[ȗwܚڌK BRxrY?^kKwKQ9cج6֔4Q!h19F̺UOG:_,Qs51*&%3mQ}eK|gx&#ؓ\J˅9Q7nZl~u$iu+W.)SzOi װѻTCYvc>9L UJ!H4Lq@wMm{ڬ;AvUΠڼa~K|m>_lv_%:8:"dmh4EdiwޖVUє;ClS;5vhSiԱ{^l҆a&fgYt\Nwǡ3qQ#Np6 $ŵ'[8!ҖLJC\ȣMgSg+Yğl*'ZR+1ᰉ'^Z% И Ljжo&ug)`z.8T-pE !m U }'tIPi57M *p>]ʆm6tvs1#Mzfa?34AԘ}g6Rkz68lͲTCpԮZ?&Ӏ.}S2qyy=.4X8`ZVs2,#P "wd6:^=v; Fy\ -qojI@[0Q )v^rc?S-10jNk@ϗz† S[\ۺ1j90 osF;`xz$Rj_2kQYb=˼ 2.p<&؍XKIC{2ІWI}tR#ANAeor2 0C1iqblY#=7 ԓZ5[۽+:qETܥx_0i`z+9[ S/NwO=ʫ{OUV+*%v4[DlV9ՠ]ht@9EG˭E/.Œh w㏢^'^h? ,uLB5Vgꥤ0دbJ̦a?<8No'&Pr,:q}ͦ"|y@O[׍Ry#),ڻ#@M|BZq_kτ ΣY%a(k?)Ks#*M~1)_ vj>6we#֯6G]7kAR׼=h"\<.9Ǧ:Kj>]>E|P-Tx tiEL MbfGD%'9#2Zxj 誌X5?u9qɫda5PLMKGuM”ZUT)HCV$1r#ԝwMi]؝F}O93)BSUFsX7z(SLgzSi;* Й1WM>SH_tY!(i]g ez7\&|EJ 4Po-+%kΉ1Phaŧ|JnK"a;QLs-jrV9QQwY rfn%/+^ʰ2L&Ɔ-H'`~ C`9 =q (#xRV#y<43wJiٸ)Gm2!az?^ ', YGmsYbbޡð7uintٳ9usPdjmf`хA4j54$КBfyαB`އ6Y*&Cb=``Q8D_t]\}(Ahs2~`8dIɟ1뙲_/?kMnI4tq5܅NF/#XoTCb7K^˫a 9R 5_osCM'mUsC_hԟI.й}y"\~\s;j+ 6d =ܵG1C8Xo-Ն>#z,Ad>ޮVr#48 ɱ_AlJ4~G#I'K@vߴ4ZmNCŵY+Ի 7[@CR5 )Ϥˡ¹=K["h~+OdRy# %xyKϾrZaiћV:: ]9W´*/K7f&`+-]oLV]1^.. \cłl[ Z:;X:矍tzjOX(HukkF`N/f[ZqۻsFFSyՐ]t^))a\\unbc{Ȅ$ۇwWtbBpcMy4 (.8AAB35[f5ӧGBZяoϗYQwpqxZ 7f\]#!k5fYuϨReE݅T@yT%kCƋ i~P4> 9,–/ժb 6䪯֠.dDf.6Dax)vX9+Ӈe@Gc*Io}ܹ;7s7Q:Cd4'-*}h ؟H&aÃT8U9atRP%ͫl8^V¼D}\ʔG[c*_(1v,Dl4,[3[AGhdx{$)zgCi>u6CD1$wT\Sbt旭_iUK{P02XHĔ kj*;};Pz⸿fR( ]=~Y+8kSMh%7I##6ğtOYRC^Eޘ}!E)3w:nXg.k/,+f%Nݧ<ĄDI,b_4p'M&O}܅8iSC(cP6X^gfeǮo%ͪOm<iU)F.Q+:xCTG3w켛7zڊVtΰbߡwSM(ފD}?5Es("jïȡ4w!M")%l,d(gmIxQQjNeg,?A)֧g*vm܃#2GH㏱cQM] ~y"LN4F`㗣;`*wad>#fP=ښSܮG=6 ] 2e$+z /~ƪvP4K\4'u4͕/C϶ -O]{[<^u%& I %iŭYwo,DtFPp1ȓ{`j=ם?q0y+ RPb:u*Zj*RLtw9=BGY@1鐱\@mߎm$c H|*念e tDgܚ"RpgwGfJhj؂QZYh:r\#zfexb̜ Yr;d;wݦ>E@[ng`ZspvZ+י Ƞ(|rg-o%"B8QD>`$p?ĝ\QVa~x%ƞ -M+%`80dF=\iBq`tѺ=Ts>pU?o') Svv& 2уGoilh~x*,=|ʊ(LLjC ͝N6Z_T0tLopޤ95LC}#] zoZ*PuʪJ./-Cl=zwåwEuzͷg1d)+k8h|E~_jylFOSaX4G*7"@ޘ-yu{%xYeBdlfgtŜ~e~Ho)ְnÊ,4z#ad=3t c"yLːhش߽H.a;)EBAb)""7'k x/o^r?*^B&:1 @[q"rKԋ"WN:GDa&2GIc1aw=| CGC7if-cфG6=$4Aa'Dd؄Ϯh1]r*k `Th\Ux"%2Q"}@QmCV~\|q[ssݵ+9xcƷ>6oH#/2[_9#wW ?2x{~5 QwLNֈhD [UG6#{ 5B|a; htf%#oLbc=ͺ!' 4ڨXBzCv"kńxgKU1W*w)R`N~q#* \=^x:6:л{ę:[v Fmˡ /5?tm]ৡ lu-mNeW\ϓ9:m7KYZ_Ʀq}9Hbq24 Ԅ{*CtEdA^Yn\DnRrĸ)[7fsJCv3\fZEad*\YWSW&%1NX2zc#Fu6Y<"`"A(X::`ZtP- w%e]TslCrI7 7 &yozY r&'ga(^ V5]_dp 65j q>x|Ct֏\ۑsK0kߺ芙JZ'0pgn!fCl8dC*/*p+z΄v53;GD@Fѣ$gCGa16CN~גۆKXSqfytϓ$;GHij/h3R[lx+J҉c~Egd&3_FvdP.*-%|8y&&>Zmn՚bIQHtl2 `sFu2`?wZ!p7ӠcJO*7q,$U*`kJF5 «Si c"+\ Ce*uDRyPmN4AѮOGfv|*ȅTYb?쾼)5(+kF A x ]I$K8In{%[U}T!xL㿶Pbw._>@N̘aCF"YPcVҾzc8(S?]Cgɖ6C`N~8a@5Z0&~ݞ&}A]1)a٭,P9N(_"(iPԎwJ1_.6f*97xN4ƂB/73b4:%ls 4@Y*QDZ vDsfX]G1h w%nb=M20s.4~{SRDž6>5z]DzЏd:bC3/95ς,-` Ajۘ-4!m3aVIGB(LJ]C %DĆ&: W/Ǹ>fj>2-:Mnf摌0'$H$),k=TtpU:-}A)K:Ꙋk#q(FZ8CA1L \et&ODbBTqFw }A5yJec5+3T-AgGd0qz#Ʃ51T!~& i+}Z$)АQ!K 8] l/[6.y>ZI$}&cT7&pfCGe^z]e{,)k2ռHͨfՑx`!I_ 'ge:K.\םQ!&U[/jY/'?+}T gTmdIۇ/l~;W4#R:qR eRRYKPOIkfAcmᛩ92J.`"&i𚾽%v}cwG˗Wr1dkId-Xzi86X˄ՁlcSGh(G ?51#@xaC~DGg׶+Wf_l GxQOsN+ZѨa"ETcAуݽM-/]X^sn&-B^t%qҢ7x`\S[AN9K#=#k 꺍<+ n>/Azv7!5;;1h/{I!7HT .K${8УkRI"rcc]w$e{?xʦL- OJ&iЭӧu8*Bo_:İO5rԡۏqŔKE I:7Dj5u#Lݒ^ *;@a"'gEEsk燐9E `!O RA%S0<+i>(eo} cGh\+͗:7uB(^4X׋fVk)Stλre] mURc{N(ah+P߱k.`mNܪbv?wV]:s%D#qG Dg3Vim{PNuGP8qao0B y6I V淳sx( uƴh ~v8g43Kx '45Pz%lE K6vUFDmߕS2U[=$)@ža{wV*O[BBFor@ *Ϧ!&驕02k>EѢ7*GC yV_1W0i.xS`#:V)QFresSK.Akّ5D|.^;EhMD")\Ϙ$^4xMx٪ItÓeX޲ֺ1|4 W^dE,ڣO*(Y#Ui­~âgik nWyzB=쓭CI\ B]ȹ"&icqWK6[9I~όe4' (,C҇TEX#0 hpgRX䪳]OFJ +@0X@0o XpA/!I) ʯ3_(rU!XWZAu?>tt== }Bkv8IS裧0OƤ]JyMD:iDJFI լnuH1iΟ](X@Q]8Ak(dMQݹ5 wK;Lb/g:?<" sм;I6Z1VNemnbXΰbNެvPBݩs=' 0Aw[yMXlRcK>QOZE͉٩="˨~yU=eTig{;IC_{ ˚K4N˔ZĔ$QePU6\sqɼuu-T8QϭD6pTV4}J!_a3?`0XQ7hXi HښpO{9}Rץ֏=0|Jۿ_u+΅@ADQ?F1$T Rt]1%);Cae=7g\D|ΥԞbc@̛"I}/nUgG9yT,p3ݐYBAN֪ؓ7 OdCEib^xrW6Ҡ sF 0<{ ӗ\O h"+Sb a~m~V+MWQ5e4cn7#Q!:pyܬ$[ݏX=c g>S t| /,&LYm׈-f-?Q>loj˳<(:U*O͘C3b_SHi8UL#rZ0qJ't_k<ףnB}ϡi%3s&]7]W(nxh^Z,IOعJ3=;үv].5z豰m#Eļ&06ɗ*/?H:cxݿhw %BMWh9Y$ڵ=N|Ǹ].Qۋ9!sqnt.h<6߰G`-:ԬKbWh8ÑcHpE}VV0 f._ ]:uMQ?Ⳕ<: =/ }s"%ijN 0w18lM>z,;/ё"pW8lad5|[455& [O4,D*/s Q>WNUZ/뚊I[p˔ s -g%ਚt)`$W_ A=SîJyKY(TA!FS kME"HS-]v12`: cT\M=Y:'sE5 r N*"w3.ݦ|v:GZiܟF#ʹSYd쎍O2q(7J@ρ]F/IOHtĒxhΪ.gt9dOoG~`]h1ݦRFhS#IޮL?yȼ9 Վkqmy52̱|b1Uc>$K>m8 c3~Ca㏂] و^u t/ xZc\f"0H9Yo\q_!6sA.X^hKrxR/?Ny+Lw V ҜI[hiR9DWTZo,~,WdkHD컌~X֒wU@-k}~č8r!x.kenɎB#JM7)\5$PplJr,䨾0JC>+G7{Gg$9B$kz;-D:/탔-O*mg+>1}ǒ S_7XνU1CAZ~َq+*ҳa%j֩ˍb ӟRT .>5͕Vw䃣#&"Ֆ WPsy9B F] uyJZ[S%5FZgVns+">N2rPQsA6JlWoGx0%2HE,txue -O3 ݝ!\Ms^&/n*u郀P`Y{T dy!"1ϘHmz#V u@L)Ⱥ/Sjg%j nz-i7c})*-fȦ,IB-Z7T֨&M *+9i `Aڟ3fb 04 JDfp7q#SdNT 9z2P0ԯmR=.lAbTSAQ.z[2?3]̔ R^(Un&% Uu@L˚7y=\!@Īj3y a8W:8p]r(L'(ρӉX {A`.tc/i1aȎ}>k$ש5AQJ`K4sp_ݠf~Wx7}~"8cOk=?u I4_!D9Ͷ܏\2K2/uawa ˿ö5@N?堙d dD_jw(Qt?Q!އc҉le\dpF7ӔH+dx =~Z>:a9G@QBL˿SkU|-aNL2',iNue^ & 8˲;i Q&8$_\PʧB=`l6goPmxv WEM闝Z_bpqcD8ٽ1o>,/z!ob22ȀQU/.uᵞL($^%.4> bv$N'{G1r*]y)»Ke?[LO5.jNhm)=0I{NH [>*i Vޤ(VSfG4&sEI?;U qlb?N[vJoh6ͬX޹D{7k)^0riA+KA9eiFo̝@ պ`fimp!6: r4mBB`(43DrD6[qb 3p<&bZjǗCMA Q5z @Ho$*0?z)WHrSBH4)bK|*0%ճPj3}5c|lwԭΕ%Wd4Ӷkl9au@! SAƺjD Vq3"5}iU%z's e!5ҥ~Ut׼r(j_\E3MhXl r Fh}(cym8sX64gպei@qܘۦ]46oX֖ K>kbYld(UBrqy@dB3Av)A%+{0dlG9[}SAmW) ߕ(:uhϘȣ}AR ?.[|0IC;qF )yL~{F+Ewv>>?VB UJ׃NBK̆=7WJvcMըbia֜<6񌍭k.Y~f).z}B\ZĐ1y}`8 y!R+P0hCM> [3AQ@^{ W5va{ 8D0473~{=y?ЏFaeB8ܳfNo|y} |œ!C cݻҎ]<sΖ:V% * t^ɥt; "GY?GH3W`g2aTd{97+*ykE=G3HTS  ojA] 0jgyt2Y3Xp LNk4Q@={j9͐Q q45.T̛OtE2U# =ݬ}>X4̔CxdjB $yU`]It&2|=(@ߠSVQuNfv7(͂_[чS({ Om$I xzAtiv6$jK{6='AʄqԎՆ<ݸׁwC.I;hv$&3O.d ||ʉe|JD¦9yř^և?2E'RjuH݀ 6Q oBtYi毆 0xȞK!Sx T!䞼\d<-_"|x|gtG7>kZi_\nYTVNkDEf_S5Po؅uϵn!՚A'ҏY@Qz,D ;g\TF= NE  )LyRUWwEQ mL FR3m'?騃ƼĔ,-9Sbچ ^hYh¬[լt%s-+}A-#ǔ*o1dz&{@ (xM<&t2aLr~mNN>I=C".nr:ۣQ-䕴 g8ۯ>#ge7ʤD3ZH6& (VDӑ9j*jP2љxy#,h[>nh#*o<1OeX;1w"4Տ[A0jm*Q-J6ڰVʘ7Ýt?,W5`\G9(.2 2fFl)DPFŠ"zHS2vyU<(Szӝg%<َ=$o.3<5//2Ǵ2gept ‡*\fC(C Yw'8r@O $0Q|qyFRU~'LЋ"P[)!>*&QcQx'nƢ!!8Ƙå*K}co "b#c*6&g.8Gش` ԇN#JЌ:#%`˒5 LwI*F0!ގ#O~'c`zޯe1@XN$ ]K!6d!CW̘ ~mSm8}Qܲ,]D5ܻ"Յgb4!zbrTF¢f_ _)Q̉f}9lēM)qK*7u})P 9+gV@O^y?WqQcƅls@aGb&tЅ!A|Bӓű$BbZ!`Ii@6;k ޥ'k1(ηܽ @ $oHo=ʈJE95٧j@".Qy+dX``_ `\N%jiD8^7: bla;x&G鹲-o NV).o0Aӈ,F{aJZVzt~K{[Sue0;u_nMtQ.!&-_ho -ŻYǀx'pmClm^2gJҼԟ/,fKʝm pV,FC1AN"5F{)1Y0ӂa7C Vl.?&rWJf$ԱgCk;ÚN!-ȘlVJ3%*( 0ԱT'2tUgR$!YUv*=B2rMʂrZ塧3q#ۤ )~lg`2qcZlnoh*ҧ L nVfPtBət܆ya9!rB~Q*[J7 ,/#%Ң<7:^hܞWǼ~/5+5fa>3xsÓPQ=DP Z{MΩ۲re'50X_p[>}Ej:|PQ̵jCA#dr͘VNNj+ZeιQl2m.Kwt LPP孆Ri g$Z|\mN\˭h_Sv^)2!mÿpaSlwp!ɭppl2Ih{9xzL%kp͐e5lPXE8 @ %!/O\鵒Ff@id*j0@ܜhӧ$Gm<#]'Io Ȣ>ZY}ApZ+uXzeSP-[4T;(=X2rp[9yvL\loiT9E(ULBg kȵwz~YbK.[:Qո ~zȹs2Y$hSۏVz,ga"xȇ̓mL7-6ɝo:l YwDXcB<*dHڰ`$+."SV^ &WBKE!WrM7iFLJK('c‚oZ!8G 4'*DPdeLm*΃OZs5,_}f\>Oi71G3`OaD"r; ͘&0A~w;Y([:a E6[s2Q-nL\v0_4}'i/S{|;BtP|#7|Ȇӱɀլ}Z~ `5D4.%= U,E0OF2kՕVcЅH7&닜CLc&O!W,@U䯕 'Y:'n0&)K!8g\Ȳ(sB%gҕaU~Gx=>iU]vd,)فk(9F:=`'tA97>@1Q-Q)Z SzBo ^4~ 6C"V[>bIZ;z5[l!E":iA?KA/ )c@$imK f=|:_]_b4CwXw1DzHLnI}Hl:uPa0ۋ&"{o{ȧHWD޾(Y@f[wl*y% hAiW{7 q̭bI.0`}!>tB 䘏&ӹLcd!RLt\ſc% &<'Uv4An˺XUgNi{>j0l^ ]1mTУy. _ [x( CD4cဢ[g$C Z`|m7}7(9m(|hjUdtH]"ć2^P@^3WIܪ+87BWGg>(--%oJ8aKvP l]aAGVh60/xMЋȑнXD3pxp蚈Cf⎟>,Ⱥ<~ϭMO'da3KO3 #lc8+xs+w%gi\W:, jRSz$h}Wsc()@}pH-״ZeOo1v#9D8Wqڟ㣧H`](x!9\}\/)a ٤=ph(J㴚c^} ^) ͡]D>^jd;agi"lΒ*IdCeEH{'yҀ8r+$PoQNMZh I0h7}a@18vצ?w,syp&ր@~l5G2eH*g)ʞ 9YWkpj-m&dLqeo;#k:heprmkBn%KMgDvT5-ƖpnDU|Y2aԋ\DJ&ヾH=ڍbLd\ . b"p{sȣ1>Ay+[?TJ|,inAk_ Ę$ed)C4HtG*x4Ɋx sE6F4Ѹv6Cnq @{]ʬ^CfwQ]W1z4Elv*|pL.5 <s-Wj*Vy<irb!t*g{vm[ZҦ^M n['{U&?*xsJ]'exy4LMSgЧ[)DI2 iωARAmםO5n;Ӈ擼]a\s1W Ӭ7oqҐUn/qr::o==ʫP`-!,<ý&HJ&i&1N@(eK^672e29'MUq1f)]-]^K(2C M"5[Tc4;B4[5}i兣}Nwъtނ Jȼe!L* wol R5Mvоj#$69w+DNxD!tCGN&8aʔ]&`G>qN{7;CVܯ- < )W4mW.`)9rS2\Ż/&dmiө6l_kO Н9|d -]cnI{c?!Sjz u->;UA)5U:[]Y$ұiZl8gyVn׀ox0i,iv3TWIxg;m)?Q:?3)A}7:UPC ٫pQLSLlSbcrwږ DsX-'  *zDֱJ%ȫ3q ݇u[c%Ņ `)9^<{aJ`dbW()X aqoyJ7vgn,-zţZn|=t>Eh#JV|RB;fS7 gr@6["ʌ΢儘HT3v# `.(+`6Xy|x? oJzu%3BlFZFJ j壖k#4\@m0T `¢AxD,NG+`_ XUCC 04|Q&#WN&(WŌNlDIQ UpлNJ/oc‹ w4P^p43ՆX#GS)`-U϶}ĺX[2H?QiЉQqgߣ]!gq=;fOo~MF}=,-s/AXY>r=N9;8H^)Pp EʉZ?Lcoq+:}qn F70ooH߳?ξm&KgjUq')EUU! .ufPϰh"^gNvYz'\U [j8#UwYXԥ۲6^\{n֎hp\2~{ K %Y:PYy&quF[yc.%:VDaq\eĦ>f ZǻZ9u A&=$k}[K1fU1%,, *7 .fK7 OJ4dveGk9- )cY%r4Z Y' "VVQaPxo_M6T;j*Q;lmK׈YR EG"3G#a|)J[7 .멧v`_d[]F`+ŗD2 cj㓫7N !GcϠK@Γ۪$x|%>x7, Aij:=.pV1*KX 3O=(']FSh!|k /_ɘ3O8k[WRˠSd8+sxݲ:݋ e򡾝~:3|Dz;W#"9ckɳ cd5IΌkF)AF*+5QroyDr%v4ZoBS$?Ժ(59-%D%T6cK_N/- "r@5BbNtƅ?j?o*dhYt{ݰ.{A{z3a\d+S|F#tbLYu@#defBMވH/P/ʶV|܇v{n  mV5mGV='nlKs<=@Q0>s–šߜe)lH0fVV?ո #54>/Kꈝ}Ix|x O2$R= 򒲸=gpVhĥᱮ}(ih礬rZ R+Log^NmC5fV+D^F!/X3ڕ1dSPEUf{ թ_ڃN_g_gF6^2M^ ٲqtjs^B@aDA xo&rK&~^\h5U_DP^΀D2szh B񩴩Z)Y 6QJ#5(g ̛rƫry+(%έe{L&Djm G8un*OEp~e ze6ZG8*!UYyUߟK|ϰ4&p| 0BhGWrӪ6\``j&SPg}MHZ4 I3Wඡq[f_z8ۥ=rn{ _R)+}>$F(4W!ܪ&9lHDz 8xeq%jsb():9s߽ZYWN7uqN 8n˓ho\)ۍ={G}>X7 ]tawQ[K*(c@tޤxڠ\.hXҌ޹B^Og٨3?DŬUr֗:TrSt:W֜m*uF+3~dnx<1%cR鿆Bm*b+e%nHNmN; ,qW Z;X{IXUY'گ WzW |]#]W`D?'LؗY(Pq=sGx,,f!q|;HΛ02gJ-$;Z a1pLoѰDpqfa+1VΧ5t5Dx*$?|D.ع&%CurTyNjVG|>ϞMoJzdE845WP ֎eB,tT~:)A%WI\Dw^y_ mI#1=%8ymd"><~cL$ 64N }lo ) YDWv s:waS,?X?Y Ef-OEA(C . 4 Rx坴. M"'0ű%Zl9dK6P@ )M3lV2cV]\8rd:̡b wm001B<wAMx܈8M4R߾nX|2w A1wZ7Bn&8mFMsO&vu`ďR:z[4͙n> ?o7eZUC;d>6HosCQG $K$m_F>J&겢d\Q[yHvһ㵁}p3"@&yA"," ~a;e4SO|0ϡ*wG{߿K&g90򰄌_rqwp9 )|ize-\ 2ɵyF*ekw*}U^ ;}|:&ӌlK>"n_͐j:.@ :+6( ۣ@s53Iwn C 2yޞu ˓/Ky"jv_DM (㰥"3KҋMvb%E!42O=4Uv13޶D/-^Gz¼v"r t=_FD6LyC8~`wI [S8ysy߀? KL=1D? 8RиgC:No1DvY{R|URw$^8Wk)KRך7:GPoz1:sL+#++b#Oz&J  Em v;\ h~`NRysa$딘rh҅uþ޲ S;ŕ+\2etv͸@+5Zu'q3|Z[2]!;~%6Qva^_)i_Qb=@v%󲴓ΚIʂڐpl:!yo^:K=]|ňsdV dUe_cp"dj7\s cpI^PFjǑ'[]VS8WrAXkUH?-GrzeWJ⎨č ʟ~Fy CS4}(L wviYjbpKRiO!ݹ >~y q8Jɣw᯳sԎjfW&׎E۾dkoL?NL6prv#PW;yoTH EEVR>yĶ,]aEcVb )uTR(z#̳S~џ UokE_.⿄L`!&Mx Ok6C$%VtO|A8צ VĪ+CguqK:q%)"4_Ꞑf.ӜG9!~&?oB"88@u]qiEj:fA(-S:^zz)Ycc@+w6`h_ݹ1~D$ڄx~XpsyW07klXW:561esoÞ|^u:h(j5zɁhk{Kډp]-TH \1\i# N(:bֈPeXa^FRU),>5W?k^I>Z+Uayˢ9 Z7ՒIj):5}dh֝n,Y+ftpFsf KXj7}4_-nAAH'Eyp ' ~;I\oyf?#8Q>ڸV?bqAuKrRT-(*SJT!Z>(T(QάⓝzH%.%60vpW,% l.Yb%oAlͻӇH06g0nxToc3 73}zZ%L825 fȤ]A:GGi;3!FIǩrͮ3Se҅8xdKi٘x@Cp4.և훊-BM1LߺPlg*R@崱Ν5:3Ӝ g`j2KA]5MMDC"O/A3`5w.5Μs9H3V:5 qDs15֕}5ּb+@=B{fZ=h| NMCl-w 1O6WqOR%݆c{@h_^쟆ϗ[> i!Au1T10:eW|R~.K/Ljo ͵S؎FS.u؞E3s$dfCEL6 5sAE:?" ޚ}=ó^[Q @gbTw2"2H)jbYzTε"qp빇0G{)ij;tZ):J@LI)&Ւ&OP;X^]r#_AO8v$a,v;O+vLblI}w ^<Ե )E~H' ?8 v݂~'#2=K=ckH?d:5sj(E+[UPGhw1 K5 tS1jΧ9&('O,wDwoP~ gj%t8-z%B?`RğC#eEKZ PT2?`5WAgh,5&ŧ&/>o~Q1d :%&}ěf¹ɷ.Yr%rx?6sڵi %8KT I8 I~!$f!)&|SJ˰|%rfBRr z2PЈ̤32q2YaTEA etO^{,mpVO )n9j-qƗq#}X#,Itke1p:Y [=4-RnJnfp@x/)]8ô+^l9o;! `hr'6.wI[j0|VAWK\5n/HHLŢseѼOk9hΘfݳ6[;`bB9U;y;ev-UOI*ly6d+P9 Y<$(e5#@XFBbq546?77UZkWWی1/0TH :;Cjo/1) nFzvpFIG"W\y¤={| mÉA${pi!2%ܒ%f)zN&D-97 dU dOY$`_hVď?eMs$ Qe}Ve;iwʦ'ʔxgf1.'mxՎ3O C;C A2\! j8;?!mǜ=[+z$yh$M`=+kdmt(;pY)D1IKHFz-sqS$V]vpI86l4O-rF"+u YV6+;l5|MT}ŮCqO `fY'Q[ccp*I e@^yX_ZӺ3mC7-sT*42Wyr"s( o^Vb/g 9qql,P^%},`5Pà1E՚?Qg*6T@m~)~#WV@Y@t)=3y8 Q/}]=S1 !R)E\B"d7T~E::sO;4zîޫY0:^EŽQC0jߖXBDyM(lpSI \>WO0@`S#oUAsmI=_GFRĔP8"j .dHsx?!x$-q#\<(Z>tƍm{=<~Ks^y/3!r[τtVH#o0r=a/m.gG#_yު ٻ^aQ-Rp~Pb[}H?}N*xqHbiƙT94ڕGSU9Qɲn<:h}ȽKx=zyt;ą)M ɀuʄ̸&HGؕ1j!}^9⑘Х$ԋdު4-ɁW@%9 wUTu1eFݵ[jD"d2!r0 J2/թ(}9לg'4'0jɡӦZ4B3) i',o-7o3u#QBKϷ0vjs}CjnuB} 24q|n_p+7y VD6F{x >d/_D4N7V~,6YȓTtY$yjOhMu3 }JdKbHߥ)MٛU1;gb ^]KPzYviG:[`8A" _,uǝ&vGz 58i gu#KNc MatVԆ[\ ׻Ws*~iwᤏ38Z>9?t"詎7DۡR20Gyy/]>t,3G&/v?nkCu%).[`\Hs31> |ÃPTʝvc1&E;a籇|pZ$Ij(9*D8֞-b=$ةOao @b&sGxލ ;g[[ȸ;hkeV@w7.RELd!Wv:J.,f8"^+9=ڝLF،CԵzmbeȵ1>^nak,\,cnzVLԣ>X"RdVȗ c"c}|Xo lܚOv0o  _PIC1{@$9~ʩY}v/ěq)|Vib6ӵ)˔h7LBU|+ Ml9aXa8&Di" v ,V=W&ϟvI!IЬ B|5]=U%R 1%(*1"[kK鲞,<8.qp ?t6|ѪV'XfSI"[dP^%=<5PTȂard;S[{54wA^Wai],bi@E:{ U%DQ_RSlef90~8rKDȤ{ &C<"P.awH%-E>`+fW00d~CKZ'ͪca I2ʿ7&f{m7h&e<Qlb1]3=Ͽ>!{ݭ8@tm2"JάlX6p%>[?8sTAa [Ϧ,U <jR-p0$g';sXoLFzo ~r8-TnHܢNnfTaYA >uw$^=PBvsyP kS"}ݳ?x!ٷ)5o{ۄ-?wBwe_L#jyl#9|yy=5M&X-`/$ &8wd-ulZz[ +M5I{n1w95, =&%xf MۛU>cib08dexݣ̀yrt #+eYS' zWFp#BbЍj#VA bv.߸ᦴ]@aoAm7`%hb71 iNri[ \5.%6a? 4|aHxU$K r_ < GNPwgKVY[@`;8 JQ;Y3 M<'@o1=8Ϡ1¢wP ;yeZِhHG_򻥅 F!_4pI]|Al٫\y1[` 5ˮţWm+2xv)*6j`N$RFxZCnuU-ǪgVI#K%`lB"HfH m5T3B$:3N#.]坐=Fk Ӣ퍹{,I 2_*5G3xmB=#k;9j"p~E9;,YnG"e/ ltj-'`xD)d_AQ Ix> _y胂PV4zT.A U{u[w<#HIZn?_^ybZ(v 7u~ܡdk? PI~+?؟^{GzhfB<$t!gIO"& tHdFԝJCy שZNn0")d}(wSSpM)ʴx 7ՃuA8m[}lgRk-4ZrErb)_4ѭ,f#: Uy,(Zwb(ы/owE?q6/L57"VV/?3r RwESBl5(p6]?BtNFB΀`yeM |b/,?R@ڵP!]MN2cNu3U_aš8*tS]3"n`ҏֺq\Dq&~ًb''.ޜXkgMWc*$aZ$>V5*WVkrxB|cCs)[5Arn #IB] )u$IEE4ׂ}PP]͗Z/kb%V=r-D;jdmG3 M耔1TB,( V!( 'g7t ԬvB#[6l:/F5ۏ>eFY]^]ۯ@Sğ/֩p|HULq^ڗi7B@IٲH#x YZCOÚ="TE.mpgC~L7l{׫ՆQwL[&)*j6Iv-A(,H,7lb:9k#KG"$|ʢH\6ףj:+%7_T: (9twuj8CՏ O<?W=lr]lͭ#!3Po+3a.B9hkV2XM<B715o~Z=\#Z] Z%HFozU#au.k V亓 )}2F^ Qd[0v7{A|E_.n"aG*P-])tVoo.:~D@LCo%ǂsb-^̂̏Iy4\U3]*ҫUMa*寵/y^_<CdjQ;M U{eiފKCz׌ ǀT*ӪmIRpT2|N>uA͘$ my$JSUɯtN$L鞪KV(Hx&XwOQu QNr.nXB/r oP$#{oq i;Ք26Z̊ +^;5`0p7`y8۬NAgMt;5~0.%A_\e{X ۗR".M^Lj0  D'b jaH_Dž*+^DRN45ZƬ< ׏V>&㞢K6m$Mx7P ֟h,YƿUE5᤯iKC*9NX_yQ]CH}8U#[Wp/y큣yʛVZ3Cb/n&.h7u{Տ轢46g~ DՄ'4 *\bƕ5L*Q&Sd_E.0G|L<մ^"5ad HOzi߰7ќe_8v" ti>@9M&h=nk), o`/sedrhSsqR>"qE]1t^: ey.4! ^O޳5iJ]*dmg_Ss@Zۿ@omV"Qe݇OJ7*p܃r3Y#1{|Hz)A73O<#"c4Z1].2Z9gĀ'T ZK3xw #6CFl(2(Á?}"}IP87PX>7YulS::'= _'*sda#3phMm2uT<`ڠ:$券 L!ೃ`x >哕9G Mf WÜPSxd֍- w u10=8KW$ ZþHsc 䶡‚>gCJcYD՘2Lw'|l7/XtI@Z/|# ՜&ɲ疋Lb/< `'/\J+Ƅ@J/&x˄Gd%,܊}U7}#*%%U7u~.* _:*~eWZtn%zjaCf+A=rs O9,f_yͅJ0(GiwnKH+%ۿٚO `f5fVu~JGOQ G<'v^c"=e+~˘LV0?[8?GQ=;RWJF哠ZȻ/ങ{Ժݺ}Zm2rRY[Du*UǼPo};u;w-6WgjiH0t4."TbfZ7^ Ӄy ld7xfc@uWk'',nvʓgBYh0zXdDm>Ђ3j~篖w HkQ}#qظm r 9VII7;Py#f,@#DzDS2~ȷ a} USc!n6 ~l"Wi6qԷ! R嵶ٌ{CQ0Zivq{aNIB볆chN43VJ04J䘅Qa&zڌt\qx`^]HrA~AY :/D;LfEhr>r0-)춖0入( ;LsCe$}rԎvxFLZ/bM*)Uճ>8 )NxI 䝻 qJIcƲz@n1dmPҊ6paZCNT=糍.DŐ^u㘟V.0L.|vl q`{xl;r0-u:w~).]1$6 ́YAmri#j"= .iB Two}aƇ{[ZkvfꝢW?L=Z5bF &ei}^$O>$_=!mаLV0'qJD$9'fwZ_d30P-J=RCOyen)^PN,7 6>^* >-*Q= AmrxR1&_765xv:Ip,n2 4㐩 ַMCl:'{x|}0K2֬p|nye,".:aI"z2}zklj׿9Gvw{{/_0t3aَShc%Hf{}v%5tLv}T usəa`3TlEf7Eu0C&6H8i f#M L

  • ?/2rD1PGR˺B/w ژDrs+nkIO&>S< 9NdҋڇOV3BhM E2M2e)5wVʔ)"!e*{Kp?ZgQ#P`ѽςiI?nжs34')%F{ӎڧa %kZ+Eybv#kzU)dmՌD%\Myy"Yn,nաoZUl7sRʼnK>&du~a1 h ՜+BPO}QoeZ88^k>1\kP0ъ3 O"BJ(z,hH-@3(PnmOw&$ŝ$(|H^. 56q:D9r0C4wT U)N,|~; n- fv俎 XZ71qk-r5fPEG!כY5Wgl,ξ&;A6bl[ 06$Ƹfzn]8gl$-Xj?U݅5i@ ŷt|싋Y2LF2)fp@w~=`MsL #,1Ī`rnXLY}K<2CI5ȘZ^L6-3a1?g+ǗyJk}YcwOqFw$=6 @-kC e{RSaV>^L>7vpHD]$mz&GqSbvFjTŷ[ד3FcgcIkp,,+Ilr& NmKn5M{2]3r҄6ƀ_ȣ1|2b5oQ (-NIgF% -Xax7hbee5>{LD7EXEzf#u눚#a!ģݽg,Hn Ik!)hPХz6S 'p.<˿2q5E׫}=7n=0hGCr9haZ:L^&*& MP5?$1yXKSt*2ufl ]M}Uejz"=YYX\74%=UrnDfOVX7un;:늎d=v`.E/f絟(D*р]Tk`|x V1uT;[:(|;j<UM,Qn-O6ͳD̝P7d(2E^Hi9*e5Iz M-ڈM^Fpa"<7-rH/b p`q~T2l8cYKyfܭl%` hrUפU/-#p)QAG}Ć F=} X%ݎ;󏁙bކwFЋrGnϵ Q>a:-gnК=_qjK#`P{r97Pu|=lYHМik"wVBaR7lgC [S|ϷʿA*ӟB@&hx }P&a;쇚 $_" ;׋dw9 BEye'hҪa7O#ϩ r7TաJ$;*n|Mp13*ϴ) {t py>46Fx"iJeI "]Z]R.dho&cb.IkEGh_ܶ[b>S ވMMTRnUOpjWF2?l'fpeI9ffСJ奁KwL,F RP5q#kR2F ] |{fnњ7w| ,$i4Gmrڜ@i}]AW7P:$2ㄼ og̀F:M{drqZى ˽N<)2ax?v :}@+S[ 7uFO*x6AIѯW+ZjR$AE^wvyDd?0hD?H&kՀ5F(M*"q}h<ϊi껐h4͍QU6[\ٯ''I$ޢ9G$_ӋYmϡO#t؞g.luW6vfJpyM]&׬|7ByN ՝﹘/0;=KAzcy_D~3*vE:ir)W`;/xR1m@/"NA9 Q/G׀ţqRD=j""[Ĵlr޳ ;J!`]`sY hXo> icF [2q,,LS{\LJ)L=%,@N #byvh m̼:9L2QyJ;~o$Ȳ}&S3IT4f{G*T#/ŷ 'Rl~ZWMYq#Q?(i} И8}qOF)E<\ljBhLEi~4xg840ަܗ륆 )JK WWkyp $mue.GtcaQ۹{B(6 )q3hZ';#{4P ӥEA0gE~GQoIM7߉ͨ,J:cl-3.vlڔؑ(mr;a mBym.JY>H-J MdmOK&h7)tH |>\hiE\YTYկ:SQ*ܨH&7>`ۣ{%_xpsى}(x[3z`-4\6eX7(٢V3ơsl`EHQp\o6,.j۝'uXGOA}5h eK4ξ~js~b AB|: X]|[ѶC_<N!N*: q_-4'H\`.gE' iNNaȨ0_mBZ E#@q2В54^<-ĽwŸ1r= |Qo:^Tở`\&e!`i)glI-?(t}9[#r0uTDmlIb/ oj7@X.@-wbeOܧ( ?=i] {HHu0j´Nq;jGg͖Sd#e 9G_ ӎwV0b Tǵ_/WE]J+)uXjbG^gտr1/+G|z/ePglbyq+eY7'3}[uHtMφВ࠮TT(.ܒ{=H{L72R|qvki<.B\$Qf T` m^Y[ J/y, -Bb$0%~KG[qoFI7m|xRBQ/YBG/f;U)}Dk6HE\XZy-Wyypm"2S_aZkc9r" z4e9/ ٯ)9#4KutUR$Љ]%vlt*YVo ,Nh'*b ul#-YD 8qgs n+GֻxRZVJ, slMqR&Wdoı9'`A\'iY\jQ;_SSҳf%f#AP=]3Q>CU܇^q/n؂F[ d6]*?%e(M [!f9d0Ƈ,E ӻo gN1&>@EY_ĿDkOЕ/ɞT>dHFb }|stKYƕ[qג?t]Jc**(wȁ>9c+`8!Q7:*\YΣ*f#lp\sD6K5^ Y-j :VmNw赼 ,T3s i/:g2N0R0ZơW7$,=U_O T+'# ?&&0QA_vn{G8w2puޕђN;EE\j_kV0lV[6_59?3b%`Fh7Ds`CQժ 2|=JW p$%ς=h1{Fb+eScGV +Ģ#GvL`h])On*HAjpԬ2'(]3"^!h3??J)]*;Fgah+_璘Sߵ6y {Y+|tGUk>wO9MFR2+&ٓD Ruj.':%|g)iηH^2OPQ(07DYIqyάt:e9(& n~ 52*~h ۿWh溩@Y|(\+Vٌw{*PzǀIل +DDVJe} NTWd qb!4ɐ@eS9y(ܟS>p%EbBЗǢ a+?b=,_^Wi!vAlmjNm顚XO"ٌIz;p5\6qLx F PX4z>c PwLbiq?UDhCξkΓhhSʿ(PC Af{}ǩxKzqɡQJY,m0v%`dh vL6KX)VCI# My@l "M;F*N?ix0#'qbMIGf焣Ϯ \_E$&e2X2m཰^l v6`h4Ue 0UOcu^rtO'<}Q0IùMݪuJw,cےHMjԝeY)V~67*qW?E }NL^yȋ 9|;Sljǝ$j&_&\VJݞH|oLD@)YpȻ7  /߾vc7DC,dkE)z>GU(k*2)EN;}k &|BͧZiRfsP JdFtPk_gJvYZQՃ6%=)#[=,B>Tba#*PyDd''+Z7o;u%~y6R?Wt'pf2^r vW(iYC|:.n^QQrM1Y xП$iS'eEJ *QV|~bێ۵-ݴM?8)%-Y;Qx!ǼXwR^oR1GCb!VēM+:=NUelNd+3M Z_o4uaײ|5(IU%Wp׮df`6͆]յVIi&h&]5zzJgVvF@wǐL~gMJrg ^mtÐB㩓0\i ;|2m(6|N&-PDܬ7L/J4-]w=X_Y4~4R%S!D…Y@.Ah_F oXG!0NPy75+{WZs 'j7BC\V^6(W ij-,K etS`wa㯗c7,Jޞ)mJmA֍M>$Rpk~p׮.gw Z\5yO7;?UZ_e?r#8v *fQzV5Ml9> `IUS9QSg߫ T߸5]߅N"sK@aϮ@0 !èvěR`2/6U=&7n5Bz-N '>WlNT=؇C;#D%Wb܉7Bir}Yks`6Ly@?kh > OkZ&D=xNq[-|lڿ|oɁuR!{@mFTBETUÈ/xfODŽ{prDyb}p0t̕M$R 7p.G䱿\NQ݊5g_CXFV`JQ4Տ1 71Z5es5N3?¹&\yudο1E(,Mc}(Mg5`&1擩CmyjD<˷;]vua]Oy"jsZֆҫhN A WU+5MPlנWi Wh, r&qOo"Um샺>-.K$IgW)jLRInF)`Y#b) q_}WkNrf<ѳ;Fj;&BTѾg:$یI~ĆoN0hw0C,hҡoG9n\hRIE 6B>_NQ9}t]Kk򯫣{껖C шJ"y1 ^(Հ_=V)6Ӻ֣ _&gݗ~{ԦFovP]@3jjmuڔZU ڥvMkZ_pW6*ZЀk]2F#:D3BpzŲL?׽9>Kʚ̽[bRYu8ɺ0:LU'k3~/}Ÿ*&hx*ۚ]6%݇ Y16NjU|jQ'HMUy wᩝkmܙd50Wo׏y>Z H A٥[շ2~M, _ mԆc*Z?i:lb`Q@Ljdqq67!cB^] #g"x7jzԸ3:S2&c>J0l^BTҫǷXoCDpQl4p X2Ypן|8v튋8g% liZF${@1n+6{ĵw%HOK.42 Mwy~qbbOdáBMBxo_;~qӀTrb5XVnzO?_؟xlV,O(j;7?{/3X Ի>zsijTXu'=Z;m;]CBR@3Ѿ^T̓Q>[@>עp2tjP^i~)7W1<['>^,[8i^=o\; TVq.*u`8{dnPg!@ZF񊊮ku H  QtxtЭuPjͭҿ F "p8e_:YG3$ZcXV#܌vcB3ff^TؼR( )Q2r ɱX˦Uni?6h|0%e8^zJX(M , miA$ e!^fZK."mHmi2iaΡz~hv@+B_6Pj'׊SLMZ2[دd{;] IO%I]m1!f6aSToZjUMp`1J t@;C1UՇ PN0)kƣv/4&JD|kSY'#}Ӱ8](ʠ2zn'|&gB$km *f?BG󪮑䰴=mBa p1 Sz`^.X5b&j#u |o>oy;mɩ<}NU+TYN"hCAOG<8=LWjPp#UI42 +" *`=`'<[ #xxXVe' iB1_ˆ IB%xn&D4;S_ ] zC+]; {c?µrPS\ h3ops<_UTp#k"_Aqg+Fn*6>St>B왐Y:52-Gݶ,U UL;$LCR s7.QDAcȭh\Hlp$ Yn(U(ңNnѵt25|#"RJi!B Ό\W՗cZݗ1<QB'䕂DGE_7 9kxy lƂQfRء8:_b-ۂN:G]r0 Y}s2Hp_]|qwl2`فAV M ,R ]]KO"([a4az.lۻg4uryIQ=A\|rmOΗDb<* ?*\&ACP@9pPq6>X9633ͽ;;]`5re.9tb29&LrSMVC@Ųy'o! /-L>d6cUrLP_f*SCt0צ-S=ũ'NxWito~铆gtV:iE_2\ gt: \ śG F2o׻vBcɻf4Mx̴@"Ac(s e좸<ʆ (nrgֿkN.VտSɺJv:5:)2:"xf-{؏-krwoj<=M" Iw1eGeo.:*BpϲZRsz2'ŗ??#ʽ; _:P J6\ |rpKI Ə,.K¤L(DK5Ka_m~ aD-TXIA'jOR ܧR*lXg9)HZoqiR=jd ǭ-ƬmǪ{+V.oҸ y4H35<2ťävA`t쭍 ]yz̑˹ AH)S6o'' 6#qeOlkI.PX_zpZcb0469MRSb/9"4]wub ȷU>և=|/t_վ|`iUE<99f:wȠ6V``"<3 "RM: 4sDFyv՝Le5Hݗuլ7xDW~v2%S +gըat2-JTXhfK6*{9\>8ޜ#pu쭫X$EԨq>`Iqx uU `Lw*|:sq$˳6eۺ g'fO,rOygK\|X$w`ϥ L +Jk߀5 e3)LiB6JFe]O2~Zaި<4i.8?&7lj3͖WG\b8"En"%)>$7oRVj҆ MfIt+"UI/#NaNk[')(&=5iNl-bx%?g-3 {.|1d.>&8k!Ϟ8(4eeӠ|뀤=ׂ]Qmw*x fu}T 3nE/> 6Bqy0e>zz̐V6$if(9@ 47][e >K}ԃw&m5'_. @DB1; B<-^jܟb~d䞢=>< juH|Y/PIkjqz!^Y LUn&Lr*`IMiy!H_ o5EFU|Z)JhntN?d팠@⮋M It,AU$1E¸W5Q1q"*\ g4l @ 2:'/wrmjn\O g=tPVc`cHu!$!HD)hS!I EqucHŖσbNB<żK$t 'K(yö #M "5ݞ#ߐsO@BPHbbѲޜ?NpbެKH9SIJ?-duօ I2 j>N `ecom=.nHS ?[iPD׻(+ O02jԭ._x[S p-!"<$_OD$Ig%Tد'佾cWC=\z"^I81y/`ހo@l2k"֧?E6 n>Sv_o7lhF@KmJ@ӢΌa)^B|-PV.@(^66FS ꇊV;l}2өಁy aÊLQ grP؏dx_>XRA;ݑT(SĩwTŰ+XXPd<[M@ق" QSr8>kmJ5ߨO~5[=}TeX@oVl.8D Xs [D1F~S`HИp8kaVcI`bIrޒB]g 0VZ&[B7[yT{Ɍ lΩyfHk }Zr}q1|$=xi:.(VT&ٯˬȤc52,#B#!/ ovjcPn֔Ae%\urC0d\:!3S4 m%-dCEFQ-&R9:+)OIY,n>ǽ?wmh"*ه*~%Y@)X|^tZ͛'>f<\Ѩ[Nz8$K8m?͡ d!ȀP;JjQυlTGǦNt"cI}S[@-2}bՂ bjeEm-੮j6o/1=J<0rk=`6+skAB;IzdCP` ޴͟RB'dAyrl58U-˼D0QJ"ƪfR+&oI\14*\ؗ2DTB~㓃j_@p+pK54 | m'_z /@{n>ݾ]Eȁp}`+iT^Jm2iY.24H2]Mɵ_jTqi2\'i h20;~!84MJpj,Qg?3^ד 8|rr-AÖj(TQlӤ$& ҀB$[7t؎{d[s:!pUw|AgFJg=9iމ1??", Wz\1zI66v7X40}CgOZ Tڢ2E~#8;UI/\9TBr˲k_Y!vpoUmî(щ#.NR)i9&sκX-"`Bbq+cax٧ٰ2ar6ui|}&=@zGjD8P*,Jg0E s ixRX>f ?@4BsCxS3a`eddQ7K(+4 C$ gR47ТKl6s.q$ Lj^VkTg]YGb'H)Nt5e }' fܘuc@88KKP >5>`S[f)< G#~MOz$[ ^ ),}eΆm"-8` ]g&Fvg$@I^%9rڂ ^^YNW{|Y8i_ڦhm!ד)ќV%g CR:{|\+rNg0S*,O|[~\wF `QJ?$>Ck|lqge ӑ5zs͏FIj#7%nFғbI٣|Y_hRf>8lrYVxԹf8.F4 >r8 :X o3v>c#J\َ%X|Ǵ].k R/V/i7E/+! Xͬ_Xylljq0Xaќɨ ʡ)t/b#qU9?<7dxC.ȅ0m@{: %.^hr«hnkh^[fs.w̖_R gr嚾V0 +2ʲI'mu 9a?9Ո*iA:Xi{ܹ?"TJٹBz|4u!xѣwKV=g,htnmx\W_v4q[V.sD}^)pd~8ys tAn\>[ae%К`f/؊{;覐UW&|4&>,8H=Bij8Q2,RGOo6\0M(?mÝ-J(Q60h3#>=;UϫDsX=&/^B ;8]!C Amjm)"QTҡPBք\*֏[t^aǯ%{}|H|0{@=t"-Da55aWAո;ŖeACGtvw%^kvWPBs V_#`z@C 5ܠx PdVWp%^S}Z&μsߏbښ V+~^ոĸɾе&zjP/@vN,l+mkW|/ cg!B5Yw굹|2; (LeW ᷞS7*bl _\iH3+?.ȍ<[١8g:vw4"UW΅(ܨߋh7 հ]Z]12@ЊDfr\`u. 䘱6M&˦4"  $~ @--6SW7qI?;dRNsaK@<2ܿ[kT41B+vOΏUs/(4Ya|>9D9g7 P CA Tz+}I{*E+@ l9-h0y!sȳСa#2KA\i6 #̞fq$'Z#Pؘ?RHB0%JĄ128㥬>fk_8646Sr=Bbz@sN5Q?7n_RM|.A?_V Y$7Tr#m[1>Z_T9-cN&}c @jBabxgP oc􆫵@d]͊.#ɦ~ 2ZMz^k"bCE Ń}= E 4te ~BռʨokNK{ңk%\EJtg,QL8JЩLt ɕUY 5V*F|mQ9U7Aw:"khn@ាmU+ڂAW[pfOb:g4ShRGo ,{#>:Wj\DUY+U8O74I7< $۵oSOS5ˇh1,Um=?%fmHM T[ca4s(xa{C{aGo%.Qp+h:RNT 6E˛zF رXMelK7~ymy,zx^ 1\_ˆW|N`H&E^?mkE~s;/ AIe7 jrQfea7V*"q} Yo])<4oN>k#w+>kz:V|ڰ<aUE< ^/X% Ñ{/H}~@CWހt2C[ 36iE"X0e0K:qo\p.GǏ?C`s Ēp'mFh O0%V-j{Q?Djn +Q^YjN6a%濒2 _xR[!yDu 2,(Ђ}= 5!kkqIX'g.Tsz}>[*kv9osw lۈ߃vŅxJv] wkAE`ujch'٥b 6Cdv}8Qp!w5uyD: }mb?8oޛeAz ܋0/:*uN"Gim_x:q4ϐYu\͔y=\](\6 Bk! Ҋ.I:W1Sc$]UC2aTjUm4 j F(2~ 'a÷eWrw`uH5ئ2~K|IRԮv,#|d@}ȓ8p"Ha@eH4:Y2@v%9 SAGqв@4I%^`"p˰ 3T=@M5/joIM{Chɠ[)3 +gc\6P pL& S91^M^ϣ],#`ܜ&AF$.-U،?D%Dp/TE CB0=rnjBrн `?4}oBMcGE |=׈6kaaq M('T =8a'ҩsrj]`~ !i(Έ9"]>[#-{ y[pl x- _c(0 Nw#;s}\Vt'n xg >(a9򽧍hKzw~AB&"93;,뎰JƁV|e×LI&ri~߹3,ͪa44P﬈j'v6I[QꘅMf o=!Rݬæ +&} @=FWb>ME4Ęże[~lI'nl{Ou|-CF欑ZY󢿃A@/GEBzi$U}?bd) v3ckS_U3"+iruEӹ%^Pf>oŨS8. {6{_/B<. W/획i,UQ[TC_,QoYncRTMnuqD1.f a{?~Β3@Y㈩*=Ut|W,FgdP'=(j-Ͱof4_jeEXP G.3̢̮tAhoͿ*fjFb=v'n\>B@O$#t6\FS,4a߭,S3+ ?\AHyXB-ZT9!2A5Vdה.x8| >kBf(K(+N0RZH_]3<@h'DF85J[-p4@e#t` ɤAP/vP$^l%-nr)m4nx|{A@X&6ԥ@{OҪ+܈dIbէ-fie ܖwF1%@fFp!8pfiBx& y͵AR`U<6?zqxׅBOZ]oh]J(eP{,  C6g L $S f×U n(Gpx0=}a p|/GM]\ύF#<0s6gΥ @Ucg92@̆ӳ3j䢬<䚹HM@G+))D.16A%k޸X63Fip*2:avijexzՅ)q FALӽs b-m$ MEڕ]3ʚ_ ;DnH|$S+YzHL;BĞB @2,*1)v Xq9˘9C,E-U}c㤈a֠.8\8LZ@n:嵾G^H; -[x M)>aݧIOG.S{ SI@AF>NT\WbLQ=Gˆ|Dᾁ^M>8S :^aKxϓ͐V{<5}0}sU CA;: F;<+7z id \ɇ^?u; s̕FG/^٫4TcsNr_lus ebrh4g{8(@tGV_ƚb,73}Y.|sulڑ!,;Pmb/\x@ɂ?]!bEPDRIH$:!ȯ$]{dlɈ;=`V*Vt/B\>y|Q_ NUUXp"uV,FwѸkX*%VNu9~YJX#!'~B9^_1q/lISHHܷT|#m"G]*':g )AgJq@XSKgstޱvډe=]xl آy@> V(i颦;InA8M@KoN&.<*( !ƒdQGWݧp<}/j"׶SB6akMF%G/Y4XQ֦+alc!c׊Jy\he< K2Mf4Ln\&:d\VaQ}lB]b$k$1Rz.Gl4YmwE"3-٧"":45$pQ! I,^f5+CIn_냻Ӱ8umVIV|dIfCC t[TYƞEz{pd8(si*Ԑ2HQA)|m" E!SKa/+C%{_(Cם(XӰTQA^2`#"xW4QMܹF{󵣄_[[xlTb;DCBY8~!VzK.(|R{mYT@3Dzo*F[ ~ĩh_efw%90>_|j0$]!mw@I]QR7 ߀8g!9;A@1{qAoE远75hpxUG՗w?SWQ[v,K2mրCY?w׌ 8- 2fD%qLn^P2Fl, |ryvVmwΒ~>o/jbg҄eIh!um$)~-oQg~vsoH+|סv`Qp2҅U(k2BXM E28NkDY{W{/vlI/B'r:lʤK  ^i&h&+ǚ@ZH̝8tXSf4MaòT)at݁$GAu ٚN3qQ,L!4HHɫ?- 4cS3ˣv6#'äqJ xݹ~Q/0ٸp5)JDz]S؉t涺Vvoi7{I~W{؉{)- =W]*S1XN;l w/b.LJ6MA:*d)?tjBKS.fÎ1fRAĻFkf@PGmwuAl=&FqdWDw o"tbiH~ok-[ۮ/1ww!KR?Y_lt=w.M}!8}~϶ oomg˽Ӥa|}}Nh`|8mЎ g2Eyas&&[, ]%20!)R‘'bIHr_Qgq\ !z8uSJV:Rv,u5go>G /C_{o6OMA9~~5ۇ*yV^Ծ)89L7N aŊ_Wa"X('naTJ1>}O@>D)}:^/@hv׾Z!wP9S7' >70:8P -HJ/$#2fpnl)WnE#D劬,o{eqHyz%ߊ|G3Fng`ɫl!k _B \,$;㉚~"kz=RQ؏> t&BA:^l)'utU|veI,zPr̄:Z yh[0;k`kPN~I'!~3TPsit*܉e*/C5`>UҷnQ{{/۴xs [} %D @!Z >M)x5!Ԝn؞; C| rNBeSSbIpf?jknko~"5=d4D̄ޯ_x|# 8(Y\frwMbu/8poweDwP{  zDq,=upb fcxld>da*$uI? ;'"S:f)_֑Y.\)sĒ`a~>PA$brIɲWLy~99ˁN\]/4%slL آ֧X GXj)>`aGX# }ʀcn[OjSd RSC,+r[˚K ɿ /S: =V/Vwqc֋Goݒ1H1 rYd,X|Z~ȚĴD Y]k/2SGf l3es ٓpb;Y wMO+!,ZG}#x͍_8 4q4$\/-:˼Y8lԌAx8wy&هPޜ+֑ 'zz"-{Bme21ɪ(1"rXXd*x*7S7KhSo *Gi6jV`Vwr5c\#"]N,;%%0ٲh}Ԍ vQV7Up{)m嶗z|;ׁ{o$$m5q|?D94d В))a"`KVA<},ga kKk);=:ɒo]z02,"?Йkmgd zqOtW\1+=S~cs/ur;_,s"+d)LU'A @]W.TσS^0Xaaҽ!Qޤ*/q=\}DK=< ޘO23rQlUQڒfy7rn67n\u tE}W>d".HmT*ftSriBh L%TWjo?xhۘuC#dߌ3]S6_9fJzHY 0`ԎEUS!zBl(^ywa,0ʌ"y4Ѿsp'=b:;UEu.?׼y]>PJK)osc@+cyrQ>z.M#gru?ֿzzJK3ƕqB(a@14UԢP$bT ՘~S-yu y =.搧 G| DIx6 d"ZxX.~8aFAm,8l劣"Єl$_Cb@ʑ>TnEZc4 BKx4znEHXPT{SH;(rmI/;9CMHČ╫x#b{\S*C8$8={r0lY/#bJs~=褶E!\PďR$T^,f0l) A ֵxC 2꘼qAR˩Ta5ɑae΅o/:ڜ؍9Tq!٩B6W1'tFRkÄ\x86>)wRHG.A*dg&Ў[ْ$ypmVXC uX7y_4Z"v$:vw@j1OݷqNɑJ%|z@ Yg9oAX EHP-lj\ޜd5^PNv@WiXmXy75W̭0}2w)Q]3Ƶv3"-N&$lR=1I lAIjwG]\F0:\^{.V8+q/oHU5wKrWy0]srZk t%-^Q7>} W~5c786]Aio>"FK[S@'c<@RXLk;+$%_(H *^*2K.oi9'ìg.>!ހU 4HIU†.D້M^R_9G5Y pw߆x+bPuƜ\1p, m%C7v4 A: PMR\(7 $EX½Ćwu`oBROp@CF'[D3@~5y˯L6_8@>gjV4`Edt 3*9Oi)=#WY_skBB@fd5GHPlQq&N:C)03\6cvJr&}i,EG}j{/[V6)\N-6A1،\ò,c ,QS:V( ̄|saᒃҋ$ %d0~ 1N Hi(Ysu`XJ)dfa8CWB$>M[Jtnt\#tw[7p=5 5cmquÒ!@%v-Jig[Zp;\ӆLz+!&Rټ ߎ07̕|:D?XFo9ؘG4w= !['1BgA"-gG;.ƫ ?Sd&& Ɍt%Rڝ.:x)Zˬ#"EW_y`p8i3?C+_ /\s}nPUt~i0[5V1oYAۊA*e2Ĝ&Q7?͵w"?j2=<,DQ`Jp7'mn8e\"љ ;+%ʾrJFt[hm 4\?} h1}FIMbF<àd{;wܝIOs\*~IV-69,ʧ5j$s)v(ƈVy*U"o|)R e8Q7/ϡmLO~a,.Mˑ[.{:[YzNd5 SBHw$ zp{ij t<]^[<^ߏþ~7?U%Y\M^ۀ01rE ^PVyzE%-*e ut4x77S{ecRT".|.dyOuo:oQANo}s|xpil^#\Ay 1 >/:~g|^n O ~#|WftA @=RH:-rz+N$y8BնGQQmLUmk*:Ǣ{3AL%ͷ*6#~Ct`},ޏy"%[u#aBk-Uxy2}3p)#̝/%{.RI@?e!O)1MY,<湯v1 xk{Œʟr=]@!!6˃l'NNVJ nKDnK%P׽ wcت%0BΎ2> {s mЈ}{FCݒj#µCw2ȧG8/rU!=@GExɃ[~fxXqeV.a0Rݳtyv"&ٚSݱ%9H09jSU؆mW] fw=y +lYTyXfNGnniJzYߥU+i1k3Io `})[c-q:6MNAҁ@ms! bYhS96yyU F'p"]3  {نj|x %R9>/+??1봔2Qact:lEaBΧ Ua"',gnDMt…4Њ vz8bߥiH浘oXmiL!lty݌&lWK^rɊ5MM0zp餜{oCt̂?xi! [s9oU,{K חwSlH(W4YOzR&okZ+2VhЏp+*@jWI+C[gL5CM)OljiώP4~K *CDP,c*NC0!r"ra Bؒ7@ù;< ʔ'jIٻSZɡ{Zply[OK[)3+aoK/yK^«"%:|L܀"&GSRB6P[Y^'M.%.4n$H@?4Klg=sd#6xC1(ɫ1!"N>MqűM^]K.N_<j b+paT# xQY@3،VLPZbBLmݬ]eyN=&JynzwTmT+` _yc/UU&Z JydalǞ-A4i(l}U< ,h=jFDqqW4~}ReQ}r+p`ïYd%yd΃ װ3QUp͹2StxQBkE}i[5 Kg%뺃rgtX|x8WDۈ7݌#lD6S[5/Bjljkko!߄*؇BZ|O}w݌MyRh؟>ndU?˓f[Vr 7J$,,#OL{ l>Ie8 qo @6/$N [Ŏ;ٱn^SY,',hphnhfW-G h?*])zkhgϳJ$rjo`/3QP KҫО!lt7m*Δ@-[ *|TBB =qJvZɘX3Yc&ϰYUQljp_zg&'%L.s1gW`deifuĂl0zs;\}"e,ѤL|$=7|ѩ.趍A`T52e/m_DmNW' "6|Vsq?y81E?%؏5f$_ `9,)aRφIvivu^q}_TqCnГKkjmM @Z<=*:iE!#,.y'Ie({t v1LPI)S; .CN +ߟfsylm'̲8j?<1hO,T'wגD#א…ExT}'qX+҇ygq#[~wkA8!"vQ$B< ٖbvߘk>嗢/(GIôao1)G(NTs%2F;k\w #Gߑ$@} #xɄ4HO y!}hf;.Eh,:g oc';4 Ӏ7CzXؚ;}k0Vҳ 35*AvSiَBFW!lݎ-& \nL21t2If6 2 LuK:ZjhO."ߝܼKvi6V\b1#w=bgz  rXY>˕e^ +[\,$=s$4Dծ۩N.z.4߂b J` H+.4FO%u K Dh:^vJ$o@guAO4@] 6X @k(78#R |r?8q_`5=0&NӀ4M`"(bB-e҉{; rZo8sQx%n \;*w3 ؜b0HFh}˥2 S&Duњl%6{P>>ŋ1p_I-S dt%+L@"[q2w}1`T7p]w ʷ(s_.0I|2=yzu@x*KE ;d$c`_.F$/R((2*WFw5c%6ߴUMT JِTCF; R9[=a6&'IE(8ĺcUںLSCEjRSrc%o(9V* LdBg| kq4H`[~mB:A^|e6Gיq=Cq8 Lde PmLu}(-6S"k5=/T|/|PR6PV۴ƆyQE?S $fD$:䈣a&bqXWB XavЉSv*Sh*`g")2LnĤTS8{ 0R~HA.!y_T a<v?滹ڮtpGnj9 >ia߲d~ g }OjUBh4 )_-;樼^HʣS~0Z2(6btLur`(`ri{wJxD`Urr1NHolD"㴄歩85MX8w+z |;SQr&7R]>şrDjVIU!I"# j,B#8y cgK'4̯4i1^&DwEwXj2]mŊiN"WnlL6%Y>㴯Dq܍TR3+lg谄c$"˰x3m̃urcv+1& 6NR-18&rg%4@j!G(L2 YX] ǀ˙Xw#PqRHA-lX ܳ5BsYgpw% ,~]Jn!sG׺.a[8[E/;d=)3iS{My@`ZTN]'52 #zq#g(MR: 6aӣ0$fK.9x1Htˏ,Q_H斆T:~(N! Vw:L%WiѳUmo\PfUq_s0Bh /?Jf¯nxp Z69n%=~g;"Vڡ~>;D:AS(/F3vȠ~0Tc)~wa l_*D`0ӂLn27&<Bm~b餃`-?A 0s}C`Kv E؝nj3dHHY;(SvAY#WYTke.ע2 kkʻbeM.(4Ow@ɚf 㰨C=q KtW@Z~Rޫ gw[xjd*(7a$udj.*(?4@u&ӡ. ioŅ/L“{?,2zvN3^4UrG7UŐF*ciy_̬õgovZ`#e%AqTQ[LOCpG? qԛ(8'>s4+AHI\8l0o$y|_p4BWkj3Zq ғ3uX#߂l_eFP?pxAmo#9uNEױsjcVhG4t>peiVIE6?nC3zK.))ui;۟PdS<u(!9ƸIUx:_!K 0]iA>bhu'ъ~`HR \f.,fjG6Cs=eHl'fyxbaī:j.;@e 49Tڻ Lvdu`Y{U2~F4=2q.o!& 5x- _dk.ґ2.#jS7V$ jS*:E[;\f-nI"^N<VJAy.؋wX[ 2V4 Ug 8;ѫP"Q+ĆVp˚T$;4ePwfFyҳM#$*0HIDQ-7I[ CM֖]fzIjQDRO;z>d8Z>kOgoIϠJ)2<˹,tX_ΡLrM# P(l")v㾬duo<+=W Bƿ+n32|M 2 '\ƹ/HuEjr`ͷ}IRD)3L:>q-4Іɟ%^=WɝYjf)FkA ۹]Pz~qۻ=ԁe P7ę2 ǤFqjLb J^qhyi)Njxm/=բ?9 j+7-xhSu(!EKV}S{ 㔣20A2ĽzxrzheR76q9|P W.36}Kd|Dz YŇbRl tt ~#]] K 0@4&7k;n, Ŝ=Vi Ql.lŔLc.MEaRzkF旛7ظ(ƿ]9{o?Y\sYV8RL:e·H["+`ĖBtrk-Fw|'ɃVuKIlW6p{w` &W?1ߡ!a<,Imb[w2},afҁ o!(dUc)LRB!"%gVi/DesVQ-b>N"dZ;8MNچ9eOrV 7Pf=@@ۅ2}onxQ:btjIlxk"ۺ {FOHcݭ?NLX|ӵ~raxBoR{6tgЇʠ/)ʯ)ۇ֩eU@ I]#Ļ!C)_hh4=o,.?ȥ6䰽k%'n۽Yc|深AKG@6dޓQҭ+oƟ ٸW3XUX@b4xE6~ %Nj HJ8`(2)zpaLjdTUnA?kZc*eNF=+%sO:`\a7Oc,H+qoz i r5L a:r PmM==Oujp%WDXnpN}i"a"F)gY7p m*Vי t@!|ԇ?(QvnG4^BbZFVIъ#wf?RC\dJD/_ Ǐl/I2@]3K*)|*Z6o#?j} M}M=1 \5S$Ga ˀ n*6qu+-F`hۇCgf *3Xn;(/dzQ)/=nr\i(omm7/Bnk)ž$NO|Dv2cI'`keNԗJm`@Ƶ+gV? [ 컱CS7z9ǕI!cNȧ}BT-TxdshH[yXd߭7m;> {G\Ry?7pu>랞xIn]8T~}u'7݋,Ʃ3<nQkWW`l* WwL Y{GTz/Qx:lqC^(2Ҙ #˝3ˋ%Ƶw C+M˓ظakaXGYbdZ Y7p:Y9 yoB?t5xEU`Yz7zlօ5Cwzw:yv5~SAO۪OYjʰJNUu0h?^ΐrQ|ʕiʪ?P[|ow4CyЇFKx|m펨C+.|6T)u /I( d'I#]69X} MdhO~2Mb iXhҲLH0X.snCEhca&ޙ,W@R*!'5GhvZTG)TzLau T`)(vw;RQC/*/9ꠥEJFҟ=;ސycdN,ӑ*dO[ 㥁^xx@‘mM%̽h S&Bw_qF檔n+t%ALX38?8.AK@3ز<ļyʙWw^E E˚Cuk8]|NR?{E9j> Vrf:pV@u@8I*Uyp Dv.lUƌSFζyJ&Mn֫ue[3!UL\NTl2I=EzYә;x/:{GEjw*ạֿ%|  @f'V"흴nX-ծf7җ:/s1Oqm5P !!q_UՖӅ5:dRvK^ "Lvө18DG247\lL|V}mf/($[JB*@`ի=6u$SƏy-,SEGޛ"KzןBg`bSVh #dRnFlvZk)H}*"(D.XZ$;cҚl8th Yuj-r- Ym ^vuaEIq0urcK D2kE{ǎu%YKRzgxbR;Pٛcj5)e_6 ^Vɑ룅8w%)3/P|؊`.Л/` nDm 0`aFyjey}4#P)>zc#Ff2RbH"z V*פlIf-aS9*udO ׺lKkyɢIU=..Ҋ L"en ܱ꡴H5d))Jj :7 qKz_}>sDo.EVk]0扶/*MSTH6b%B{"bE kK(߅Vz@i:!^S̑Va\T|"OD4tl8O.;ɼD@C|~©dԡLҺƑ'D *E ]V֗(q"PPsR}ŇXrCC۳.Z«Z%]1\r梿cu#m!ݴ:dȣG^P* WrpC{%pc"&}ŝeUD(Ryrapg[踆Zσ// ^'~B=︶RAyZBKSk{#.,R!̻8AlmEk8ONu1 ݺ:5er &lTIa.H$?>?L[̖ar? C,o с# я,82'_CYieK1"ݗpQgc7:y <Ń@Hݎ'Xmv!6T'(HZ.-UjщӼ L6Q$T,39/c2% ~b·zݿi۳,"};wY0~Wwb}46yYЋyҲ,zO>bo@ѨJ69,&e/0̊vEݹ4X̓t2ϣ1WZ,gK&z >Ȧ֖r~tބ;s =H}1s˟\$u;ߵIa88Iv_TtQ}(wI/OO^o5;]aSטZ?^觨 :Adv xݾ+2V q5Gdk8lm;;MaX[t!֮Ȝ%[F16,M%d;;쪉At=ۀzЀ!TW}u?}ȺZN ߍscnϚ > $,J&LІuyoJΘe&ѫ-Y&Eڼy -j>BLԮ>PN0= ݯDc#L'x(gӷlgxݓ` /h ޹l/t%dnI͸k!ЂD?iף E3#wzk ʣJZBG])zHmj .qb]w bPī,$#xK:fQ/Ui rQkl!C]vRJ{|jb2,+qZ { PjrĦ#=Rߏ#6tREVehl us]-nfA?8ZvwA='d…W=VkܮdıMHӗ3*\΄_0|!^g2\м̫$͛Ε , < WdFFpf%s4:qT6j?ƐE]6Y@_: *<Ѹ|k"p7{s&tXMmRKk%W&BgoZ&{WՑ2$=k_nYxױof| ۞-ј`E%4sCe?R>)#$}_F|-Dk) eY%솑=SU$#Ch_f``_VFCCEKM! ٦=zn>Rwt9W\Vy|*9*]:c\FS\B==34erV~n|)d 4!;FN]=EL$0WH̔}G]O\=,I=WɡaVKǵ}rL"o&Y E,4P>pf|qQ*mCi..rh$j@4)r5 lstKde ;^f| ¥PvCL}{>R.;~,.tm:{qf'U ,d(Z$Lio]\!ihp )PVbh:Aou' Y[: #}?Vk7?Rc-HUfg::f{plKUv]GiaXIkЫ+2V35\GFW Љlz9|4ERQV.-3 = A3r }~ hkk/{⚮oRKpTo*VZF l~V+-$.)r|Đ1B ?^}&{VG.oaL, ֤̄7Y7wNC:aYgB'828@0BW:/2`$!O5H*0ԅem Rő.]]wƬ2ֹXG6>Ӄ23r x&b B>x+>) x?T0(vE8|j }9B*=2Qf#w6X. &e;뀃80;:wAbVW50\*io~ 1ɲnF2v1._2@ĉ>fo!.>6U͍b덄qE)^yuj_jGғfVVgƲed4r)X[L.V}B;1; G*({q/[y8:*NCj: NWʪYao3lh~&( XQV./\d?ռ? z㍤hl/ڔOᆁF&=QFbej1vܚȤ#C=IDí7]B9`%`cAnI*q6픏!?{o?[N,(!r9JJлS!xU?ˬ_.I - OUd`<N8;f۫r==tHTgEcC`SꤚŰ?sc$6C6sU~?,^ SYUY:Vg&ѮsۋR?PoRacYwo\w%w#PT۸sa-@7v򂋺26 7VӗjS4Jx)"&c@H{N(:*U,.-gFXTCO'@ؼ}wIv8Ayz(ڒ@3Gґ\O,F$g~_K2) k?xRh>"v;*݌tz׫:fH'ny4k/I;"*2vNpXR5$=b8y}HhP>tܔѱ"9&]]D nUַP)CTLX,K6G`OU\̎U!uz ,McfP͆(si`<{y/SOG9_Ϯ-_2 0HB5FPٚ1.ѕlll} [;YmL͜:qei}xA_ʣ_ޥiHrWj!dh2-+{0h ` KL FnyvL#4ZcY&7J^s?"2;bT&*B`*f޽l =Ȧ/BY2?00q{Q#|]bX/*^I$BTyƿzEɍt_(MDT $i1Hn{SP3 c,J0(P!iW`h65mСmK+܉|5ǘ}Y*_Y7:YT. -ޥpsџNZVNtl@A`.jbz]ădPeDi ii뇥# eN\;&ț#oe"DJ^tWgd:ө UH5>>Q1 T6c09mt(.$:ظӏeU stL9:4ZI`6e B5`w'hVF;2b-LDka ^Ghԍ[@jHm9w#0ab]Dm{X.hkD9 &*Mꚨ ֲsi4-e80Luu.1txdR|W -&~=L8?V^r#EQ Va]VI2QBAwFSVyA?u&ؤ@5ndOX@RCFm~#FTPAmp 7gI^R8S}3B}h)[a^8:ck?%Q-4-`cn=ftZ (6L^qIdGɞO;4 LZH٧|r.}DwJ_ao9{t!/ ŴiLe@=+n=[9w'@6., Vqaegj~6+3L~Lqɑ;f79 2=M 52^ZB.r咍lqZ~'3~YK+JÈNwvzI85|M"rAo0xS1ыxyF}V gN@NP]9只>0w ,1?B m@;I2udgK҂>NV۱7bYDPZY 4F]G48r#lQ²ڹv"3 N7WX:茗N$& e2HʡB`pW%\GȣC+$-騼/47mSqxF:fɕ%~p'B3+$}SeHNUXnvO@^j /Z]*Gϋ}2H,*eΏMjO5ˏz>UY8Naľ'w{KbpUD^9@o .2̜>S0l. Nwt`1߷0Nwx2fHH~K}}OI2Oa&`দ|gV.wpdDV8Ppi#J=`G͊"';jY|fM` cUCT\76lZ};o smW-P {2/^ώWUO_G1%.?G<ܿbuՆ㣺GVPMChwMq3#gvSwg*!<hQ˜U,w3p3_P5^+&U7ߪKFK{3sqk#t`O1Od(6B{+ ^J뜑![Lz&{]gB`Pڧ/Eӣt[3?'=E_"$҅}%P<>--p/2DDsJ/VP΍)a_EyW1¦:FU~f'7Gw2/丢ԙz)lҦg)u&Cɂ(.*iG,bGO7A;50.'48%+( Wވl,޹UpNVިW!~)BWɚD0rI=^I}J?K{(e] u?mƯe3UTUj:x7\Q:"VqId ON)xcϵ#)W߱؏.HP%c[5 Ԝ†,HUYYnF̝SJ\aY+454R "")!3J6}0[>Cwxxk nB(_y{)x$dz_Us<}[_B bSmp _،-g_L9g|PkoqJΛDnv,+ڃH ֕GBwx K]>˱Y*dIs5~NS}~fC:FkЦB.Q?P1(o1 Cx&I:2c|&'W+j}`a0DIuNt9-J? 7.PFk :< E=kXao3DV6]e5)/öYkm[-|X1'=?gdҡbuSd2xY` xJzoĭowSE)1Ř_@;ǃBZSm[Id=E4U B;` pHmE}!mb\9!Lbh/2RťQ*DY?]7gޑ,Q׳hИ)%[OH(5z[3|jԌ8;E1=偹(dD1"oure~?0B5<*` +~ Y4ن"~+U%lFOձ ]$jhEN~BYEt`(D8_#^/`d'ߥbE=3.x)Nn;w>T#;.؟B| 4l~6Q`Qs+׫5`ᜆ2(TK3yPȤͼqIL% ,UiߌEG;b7Y_m.m ti& `TBmC){d3QDovQ.sRBJL/zpjux_${xNadRkjp_ThAh\г(;!Tvܭ$܀xsip6Ü2ʬou-Į5'B$MWg0pG9IӅiQx ЦZ)<祍+pHyʤ" .f4mΡN>F7ĝB'2W+p[DrDfw\7s9g<~&oj:7`㈺J>^נ! `#Hڛamɞx^lA]K89ׅFbYuxPI93/WjTl"-f ܙ{Ŵ@aíl>,{i=ʊ_;ד^(4p4@"s3.|x%] gFLJe٧A#Eߧ|6;Bk(9W]ئsݼ /L]{vUBs6AOM ^ZT 8lِХ]qBċӀq uuүl\K"\lؑ~ovSb]Acʳ+ pjFU]x'Tʡ).1EAiCCƮb,f^w Pi#E^2_Jf+*<\'.rFs~DO-۝^~+‹6ixRT {t+C7qnuXtffǑGCaVSCv[px$x"7(w895.8@[aM>1eA#՛J"U8lw[j{M{V(d4UEKR$f'Op⊱h*"xAgGȫqTaݞOg29 {ȮZ,ߑ )sv-[f uO.UZx7SDǢd/Wৄ2:Dn`-Si#P|`v4ouۦEy2YAχV+V%D5@-¥yJ%u&[ɉZ_h'f%Ƿ%tvrh1{)7njxֻ̟gL%rxHK^yq>`];v"Ƿ&Iř8 8ˣn *>`j)j^d|?Dk*;Wc[$HlI֍Bn"Ffzow99>qsVLuDѭ7p4ͫ/6Nm3AR]1Xs7h. 'U%v^੨-t'˸$L矬 D `5M8._t5MJOF:#a;I\+F i~^j߲qؾD;23?5?z\i1# S1p38I #DNsH6lKk|鋴dv0"v :Rvs.( l eIy\`jx fh缆=o]F)_mt@l+sZqmWa*w&ěWWY T$*{" װҥ4?򸀇 GEQ2ż8> mz֦d/OڧX"nZ" ~fA"0jPvfo0q5v{uDN4.#͞5 'JɁbu10 U o;|>A9i@7yםSw#16XU咯Std CL2]rʖosjC nȄ5̪p 5j=f ucq~ЭHB@ɨgX#FOP_Nt3|oB{m|{N_]vڠM4]}mAo lJ~O\W&pv#1úrY^I G,!:ZMz:aHb0w Czr=(XfR<T\l9؅c@vKW›nvLJs;$ʪ(Dތ$u/ߡ_Fܦ/5|lZ41*x&A\T En֢Jur{PaQ`W!J}<)G$#ݠGx3υۭxi(RY(BB?@4X8s&DCYF^%Ò|lJ:>/Lع>x{}I  U,K F+%~?h肛[-&ӸeMLb0}0` Uws;TZk_wMP/FԘn'{۩$4۷Y߭jzJ/{{z#8h~K >^,p9rߺۑQ|OKA}⧮1iY cg{ˣU}f0*9|dm.^fa(JRb=ܔh VΤ^V6;khjѺe؋a7 e!>qWŮhq8'OH>5Z6 X&m?>sNI9 NNf1U *U?NT$'< J$s]&)^Omm'F9}RC% Hsq:߇9*k/4RQfẀx^n]C- -2It}[.GlE3DboLC rB<AEmV]}g:niM@c@|j2sKUݮ1Iz]˘ʹh {>GL>St0zͤ6uA@_8WS͐EXGȫ_" aU3`l 5nI0(:be}8hzg|vjGf$4S"nGcɛG/} +5Db{x6,a)bsp<Οr^PZu%:Kty5 n;J3#|S+$[RZr=_K|B!ж[XkNx u_MCesk>n5u'AjɓLV~~BT)ag4Ö٩~7GC]8D\zͪUprf*MSs6y.V'{M m~Cz. qb͖?,H.5#*b_fTR ͙.nEq^IǓ(>gԀ^yʋ Rz&O}aӻs޻밵<۲}^FTUw̥</Y8m} ,eİi5+N1Ny74l&]F׾+0V-׺VQF E4\~ )!BFdL~;P'R7@C> XucAl k8Y z t0rX R߯|OLkcaaX<9Dzbö"i*x:?G$us0&sþOW7SP$m*&Q3+IU5ևX[N~K9u@*l\j*AYU!%-ڻ*4])k>ON[I5>P.3}$bJvUI'z%c[̪/\^'Eۀj|Ȗ2~6þa ;RRnp\ȥ !( cq>'mCZbIԂ%6fذc8?]W;^zQѤI 4m*jnͲ Ҭ![jq۸GG#=ub 6  M8߈t D6LPs 9OlyWb+ffO.L}ſ]§,J_q>EvfLJ'چ+NN19UAPp{d#5И9cF'ٜـZlҡ}+q5EȟD:_X'FPnr^%U,{vHcmҳȍ>W!3*jn/Ii̝(]'CL1>g;,)}pêI w'˄Fj|r9HzUê`ű.RŃVX:"re`o4\ U/0Lك ;z UN(P_jRpDmW,j4^ J ^8pEW CE+x{?8]ItTxF/q_v"VŚ9n-,7F͹p:lux'N/o-!S,_ES ^w\־u ˃a1$*v$:_|PwѫU|3V~ |ݧa% ntYB*z&~mxi8z+Õtӆ^NAf}Mc@ǗǼ7]ˀxvk/ ^-Hl*Dmnx :V_r ElH B/8 >: gpN%8qj?/Y tk;\j(=u IM! B:`痉qǟyf!:dM;jm2"^R w4&`u 1Ho\9:}OnzЫBTLYF*xeh.US.Яg/barzu.r-6i#Mit)`kUd# ZP`c7 ԧM>0~b#}?/Yk:?b80ir٫q4ԃ,oacITt[6A %wa/J2Dgi*c) ֬ EDʼJkɓծ& ה:0ڡxીJ/_ mB~Lv U6v4G6ޘ:ժ.dj^~_&a ^1ruP4ÙP=o1U9( ͑t?ewJ#/oĻʬ6A+;T'%[Szw}O d*٩0F*˔L 허5?GxJC͝o څZ+AAl2iu@ K ؟$KZ>GwALd5Hqד>tY/QXR0?m &NBJ*r.Td3*4;HUV#l:dڂG&Ȣ <9"mJy6dv o0Fij-4.AQ.⠽){N|OB>GeI úsKaR-[U/MI'FV^TQL9ѥk6st|fm-v&~'$;;\a;':NZ` B~I9wO_.K$ɉdij`I,H֜[qĻإz->ZJÊ;!fwü$B9f۴Mmೋ | ̢zc­Fz=N@-nhҨjZo351KmBn'y; Qg\1iy:-l|q2,:<[dPaj92ED. R^4|iZ~fP2p婛`UԶAp^~+<'\)*V+@ zG&z@_ȚZr(=m2>:|J#YI#ȳlKU!I9(x,k6$H9\qH-aRUn3o\\fʒm39>&Z@Erᆨ*Za^!~g&e?2P3}k1zZ{2YJyB6dn%'a')k^_K;CJ}\IXg? 8.t +b;2^Қ+ylm~ySRHH8|D;8` $_ѴկfoT>Pi\•&"n05fTpQx*ҍÙ@20;"^Оoi0Y, bF.t׸h&Ų-⽙ڛ]o @M.kb{J4.c>Mmmw/ЏO{ O֌$ـ.Qn: "R&7vh4H3TO׳$wޓ' (F'=ql3[B?'v!x/qq-YM._FA* hKncY;S߀l}7(xaΫVܽv͑-JmSֱQ8T'fB dITiե.=@)3Eq3g暶3 'tm#րc' ܯ޽:B$(7i EdITeɃ)=Ҭ,:26hCއj%"aB(t>?o^҉8bX" (/1VZҍxn0>$oMtvМ/x2UML?(WB1kJn ^܆/\B9B%A'sZ1$ 6<=ۚZM*rYFN1ìٿDwbr?@(Yx5dnbZ#e *KFꖩrc^9˭NFRP-pS4-7L >7xxh%7?`_X#+ E͏@ԛC>Զo:M%Jv38T+)H'ۖ/%5 spQ%Hqf02y} !HC/jzT8y[Z $IqJQPC7"&KBSW.U,95"K|ϻ/9t>nz5#`"Hf> @Mnوu~eQY# ]Z$aMmبO_hN3prZʞs2kXװ@A|}t_)HȡLF9Ø-܎KCM6kExG7"RuX®A xK `qP>x}y'^*9+C5fE𐟫|Vmn~@Il=S$=@I0Д^AG+`OU,T8BDu̠82=S;}rt rLuͩq%Z^6"S0V?7;ӥXCn @k,ֱ?4EFA"j)6*~|F8% D4cMAm:W`SjkY-鹡#ah@v'-lG:-i}*U) G8qE4|t9'_ˢﰨb|!ʕѥ30…4ߚp<tS/ ZT9[Ee?ۏ Zb-c2Ii?U'"Etj 8gh?rʝ} 5I?/#aHFOSjPguP`A<>*;ˮT?,V(1Cq???a7xj{f^/ þ )*Qu* U2eP^,>Vp $lbtx{nm֛=ع<.tJT9j Q \)$EdŃp):̵ܣ 8sQY^l,9T.itl1g롛#5}<\mj͓ #]=k G񽛕^Qݱ۱ I?] ܁̭$S`cҶ;HƼ$C%Se 0]nN|\pHF* T}. WpOq*%MP&jb 8--^A9z0de-itv3!k l ۇ{#F+4D IХb-ŇMs)&aƱQ, !oY@J~n?7x4qx_o@8ZĔæ׶ňVC6L^uiyVj?p_Ab%nLll|y(,4JR׼}EH᪏NHjhDU3.LN"w OP"Nվm2X7rx< tjv4wl+@21Wyk⛺F aMw_+FҘwnUAbG<:D (>5 H M2J p6R7XnzUgm@3!D󎖧]$k]]_ٲG D&z%֜| IЧJvu/^\@xm#B,+?_^Ad,Kk+碇m@,6L=d uRYHCB0yAK6:Q ϷZ{p`peeuxx)ZZϪ2uXdck#^xz*1};1֨ԟdy ya-jj!_ ʡޥEM@'fuח {qiIa#ße3bpq=&NQQ C,·X oE<442/]oom(nur FD >+aKkڷg&-#Gny}.\47 'a6XP|.EǚIW5d {x2 Ip^p^Uvzz'zefZC^,<2uN^\I>ѨhUdE!ǧ7jc˽?:OmZm䷲5i KػMpaB UWksZ;a3g`Zo#&7\! GΰdTYgs7k.?zi4@ZlBd.mOb/`1̿` \|0tm+.C"gMm+Mm#81tw+S#sdW9X ]Q*_<ΖXl/߄G6@zKƖf&Ow-S,PUt?45ߍ'9 VMU^ៗI12MoOĈXɒ1טV+R87_c^ԏ]ȏmq3hNPzA-M \i4ݬ((#S2+S?2pduZ,$p{$p/AYhɄSɆ >AQ}L >FT]m{vViZ!u&֞QzSS2)l3ܘCM$mr Vdž)3e ţG%؋ 2-Ab9]q;X OR^ho[Γl4 twgt@MU_< ~?J37Y{^k!k !dL>Pbiv7pfLaMF&LxQy, jw3c &y 熙Un}BgM+d3-?/uf(szOL$!VU@cx<1uPB4R"IH.W2r\I,}??S 8%ZM#Z+)5=xRUտT^m0_>i,WNl,ˁ5߿fHntQ+3BG8++`7gsWYo*ֱIm.)e'hWÝ+~[ 키99߽]@p$u\iʬU͎{Jw,D},dNlq.9N-( z?6dͦnh=EXfFTk(_6b?I>HI;QFM$mʻdPu}=R:9]ܖ; ̣W'e(aӠ4X ! 섄;^`49~D}VϜGXRxLpG#n\a3u使CoS)n{LW~=Scʚ*UsT܅BvLЙ <4۶gnȱ3]\x_a\lΧPxsKP,h; mڿ 1raDiIQ= u=`:`6 `VP7e\q:x0P~/khx=F&HM(I#=C@]1IN/0 P/}}XVdAla^閑G&W,bhFvLd ݥM$Z2d\Z'JeGRjcvCq_l+S~̮':nAw+_ֹ/SB|5tُ$#W{i;1cxjiA;)AVzl粏'ˁ@_d# t.T1~,%dEkEH_hɾaʹCxsTq^2`0|c!7M;uu h!J8&9w-@¸rxn ڤXD,]!&F]V NO2W1i85Buz7vMB_-}6 V_WZ2 s^CGH *RO4 ;S GQa#-W&d +vrGAb(Y#`,hEE2ӹLA>5sǪe8 E9Bs|,g}s.RU?t@;0_iPw<-<}D?KI92O lQq.\ D7e-wilLw!`!4nz&Qs߀߳IeEX JWKJ(]m,58:ʹ|@q8~]Ԩ? D^3;e9$ ,/Bt$4C~%O4DsHՇW?obF#^kp_(b4 f,i")h< [O@:N,35^ f al /}bβowXE4B(!q<5Cp ixHK9~> $oD#bqf6( Un"t70}ݚ'BF5dشfjL8U4(=#XzAyeeKxm?BmcdjAf^'ktiPtj+տ d*hLѩnS Gi$o,y1JE6a75 0nYun 7l6JQ[_f jD9"f{ K!T1eK yEEVyDWAӢ'%/)͹.x7%UnpvR*:WAKb7$7)Q5@mOfPi`=i7>cCaLhJmGL[ޘ") 䖔] ,MW%N\tò! pCZA$WЄ=z-<^&Z#b ;U1G5M˃&5Bjψ3 Tml)F]hqJ]YL=яHT &+g>UJ%>Qlw iaY5ɣ^WI v Fc'" ֺ@M{Pnbb7@ׄ htbVVHRWA(c2cO?i⎾\ nm2}SM`k{]:I~:z_Wj^6F.٥>R2z, o`K>x|B/ QFTKz̍)'Ԧ.HҊ9tʲ"?n ϷH1R4{#@)yH$#]thi#=j"|#,+Qϰt3JDб6R/҆Iq'p3TY:g-| ~aكpPC碕V@ގlW3y> c[>p $5)q\39k* g0/+k%Lr^qs9aUvՖ]V&^7K}`|Bz [ߍB̥om!V*Η n@87`KѦ}2`q)U6C04N0hSݷ 2$>Q¬(L49Q.T07W-lLeoJc#*gE,o Vfn<&CҋPvu#.kE:dzۚ7[Ls@.uXDP]u j9hoyDHO@{Ë8 J d5I4uFYV q8y3'Ro]DҤ զ=tFY(;O-L]a"c^l2 gvE|??"=8‰,$wSUߴdr*H,AB[l"N 7B@(g]ǼVS%7'4~j3P-^J #t_>/;30:u1lyQ#TISmN}尿a EHdX=\cv4$yf#ZkB:5|nhZKZ c*|S~û%`,><ޕ򴽨bH6!zΛ`7y]{ tu\ XFYX{Dh0G-+ $l(S#pX};UZMk[CJs7E45N9>>m`  (LŻ~kӏ};QUH`ej,  (js%h̖GeOarQ\]̦,oٺvsBe[P03Z~ ?K u˴o T&G՝4ǰ$W= #pcW?baTX+(CTͭ7!*Mˉ%~OI fyOmg%9dciw}D*Vp$/ТDP-zVJ~!Wbc~^:FaG/:':Cߥ0{ p:yrUJV5NIbVC1spHmS"kEOdpBAmAv(lɷ9!}"N5QBBdϻ/]G~EtL #OG$ nu!?7Bg"'u’3;[\"sTq\Qt@#\Z;؉tฌ"\`aHbTܐg\ㇵMyh$(!KZa(!H>5蓨g x9]cO9y3_YnNv_OJoZJp K7yg0w"Q]d0q}m*BZOŜYN nH  I~#.Dݩ>]5ZM31͎!?3\?=5oGawrU`5q =iGmI-MaڏV]Siȑdo8U>j(twN`[x6(r;3< _ӷK0!YcSeuatD5y{ۗd,~uܿ_ѮC\/L;JIyI/%)OlfoOdvs HIm#h6Ö`N.y oy"븘Fֳ!nQlvĖ*腅ٞG0 B=V](\2ٛ#E4_]qߚT&\+x8d=.o(nnko: B^5C8Kᩑ:npMGhdEujzzQ2PKwp L+bhmKWw^wW-sUnWTKq俀g}?$Z&OFAƤjk>̢:  6Q9a_--;.$Z(EHm6`4T #9=cV~yq 29,K%6* > cv$YLgoƭ/ɥX*<.(MbLD&%<#ɪI)cO+L ,[ {A^"jUuxb6\+x}@NJΒVl}TdpǓN|#YBknٺN. 0m^R*u\Vm%B<'<"`8C-Q Z%1Q/X85!_Ң @ b З!Es2n;F.*yi%!*}?Л+ףM1pa|  D}P%}i3y`4a[2_2UK=r5`*&t7r_i`: +4뉶_ @!(̍Fc^Ϙn-$UuِL~2KCx` ı~6nfd`3[[>4Q<pqM1iMY6"t)FZ'PcÉ](Jԗ6d~6 1JBn#\rPa^f<'W$lovg)mz3#_vBT&+υ0 !rn'˻U9QZ:~-hАM:M(hH%&{)loPomL9"wfX;p(oP]$ ]fy{/_O7TЧܢvcf 6mH8U-,@xUOzƿ(r$9?2KcV!I0 k sv^IДu_ ru}Ȑ0PzM<ޯ\>',(X b8ĪtT.9 9-yɑ'1z[.nܩѴ/U 3+6*6_^( ös(8Wo_-9Vޟ6:dSgvTwC?)bh/8 `aNC%ѓMAdqŒ@KP:G;u]g3+/@"1 k[A nػs*t]3 .XN5G{qڈφ7 %6"nFAz0_N{ [q3g kXkzZ_%^EřrntO2Ug]b3"ں@`g.o擐mN)<ZiBC8|b?O0u̓k8iJe-x/ ˃'׈xNI+P~ף~k7}|& 'a=#\%hE9{؏G*q硢 NZ#^;D0wN{3 dx=^,$`X(8*i!kpBb{E>װ8Oʼ)^l6As5Y_#n$\; hJo)viy5!pW|} pH% kZaP%)v1_39bl^`B .sb٘'08TjvwI,6$Cޮ 3dP[6~Oэ/ zO _*!*cq$L"4v성V[L%<ւ&TJ {ՉG}IQ-Ն_3'Of;s~#|x#̣#"T"7~qcEX;Bjʄ{g*Ph,0בh̠:L#k_ K^p4]s3_C3hGG'B"bd1҃KrVkrrDi%n)rǖN6ԫ )W h,iy\t$shvF~sԵC1zTZJ,kZajNq(r!ܨ f\UU_ 'gRn@{*JEhw cw+=uRrm>tg8Q$[C$ob 3[ef&V:\]v@@UĔy$9 ʆ+tV!# uH5W1vie<:Մ ,2ή:4nڅ4Z;(4{ӭhjF%G0KUމWv~{ Olpf~gvq!8T{ŽƦdҘ2)>&ɞ^T߳Ls%3awCoR6M9F:,H={"^Veŕmw`) ǐ}Ayx XUёQ}eB31_܅[V'ιnpQ'674熤i3rd"JYn^0\Bq?ڧ'Ґ^}NL8 SuCʌ5fet;"2=}8%; lO]p3v1ny8LOFչP㣧$ʐ% a~{ca~|r|CwWPtbQVvcaS[iS>~3`ߞ[ШF<@ -FRN/\P~5hUz8'4j;M]ƫDYT uIu.=n4bCI a+e^YBO|;ZhgͶSP=çO<>+¶+hQh?GUYedcy!/& 4ϼZ^f3bzwH__}*P` RIs נI o )yCLIPz;PGvAwsKCO`ŝѶf 9TUgd`zp}b1 Ns^&Y] @ըSe42 <я߰#uxbFP:Λun6G џ\^!T&I!jXL.GF &RB⎓jQhVS ]a (UG&}E= Q|*[0Aaz+wAgcci/NH-Uϓʀg2&hb'h%LI)_$pܖD*IRb^~&V.cDi3ږT,MJ/b4$"TGHsn *|Dz:܄i#A?AA>2-dDǐ486 L?h m:[Ew/\k)rp9>&sZ|ղHbUQU䚈ۅ؞eXJ d>Py7xU2}˯;sJ a$=B-Λ}`rH>'tpT"[wth#Y3j)r6JK!5)` Qi<ܳm̛牳T:OFω_zLN7p4Xe]ݝ'.L+@G1@U_g9>PYzˉ Is@ CQBg&EpBb{UU^s}72u-ΐ. m`=*z|Bwem+Kӫzt ) +#ٶuok݇a4تF[anF0U\{7{0Fm6b0'RV^Z*ZSGr9'jVtaU~v$}L9)VI%DiĕS8`/+x>Si449ًyV 5y+} 8R6{ Hߓ1l/HJ̄ɺ-Souzj<B;v}Ո0/RaҸǗm {l!È{FmKB dM9{XՉ%/b dq'3koigB;'m pmG9]&-hɗKV w)@,QMó}jzXgk&joﹼvZփrF׶*]1iOA3ѡ{r?YTu.=Y}osa$J\LG.`'iHT-H> WgLpqscT[BoG15J;ᔌ6xn>|=? f,QHSEE_,%Fy]g!aDR.95][jy< $3D{"V{M>t4XI,E RFn$K J &Nx`5xFe^uBbzAd=fkriqn^{7C7Od`=y*\㶈;2&q)-U,ыOE&jv$KBoJ@};KFբ$@I=&[Edo8WyҼ@*SC8;C`d, `_ ~ɰfJGʡhʩBcUͮO}=~bW'U=R?tLqc&shۣ+՛X[J4ͯD걀HS0L&očGkN/0NJ2\Z 0)O sɠL:r>s2:H(CPg${cTvdhs#d԰X/oyGKY.^ M2&io^z"`ͽyrNTHwn1o ཛྷk-2D-oOf en7W'3dc -ջqwt3$IM>8@#kŕDa }5f(\1Vٛ>܍bjnBVX+7r+x[65qB6Xybhq/ڷkZ\ gՏ%hҴZN(fmbت˂dpF('Vݽ.2]]mݥBiv.6*ncdH|2?aJxs?[Sk 9z~ vN3H)`̨ҁG2K'GGg89Y)@@aG)n|Kqi wOch*/K+`d+Q5#Vr#qgD{,.u:-Yug O䑊0-$#0^8 2lmbYFZh[ ࠗ~] ki}/۪A\s}x1.&DaqO4;:=t+s).r;1R& @ zRvՎp}Ⱥ4=@# 2 M,oV|\j,͕i#nr+?eF[)|\k#LaWJZKLP+4JC/A4pC 'ŸY o)Oy~ @$²Kp}^R/:v$5ɫe3;dS2FXz}FŲZ*bW 7)1JUm4J;k["|OW)ħ䬂x*!D9b| `4xg,#& t$>SLݰj+K2v/9OuXl J]K#'w^R8u$$_ h* ;-S#]O;noYKxJ_5 PEC,W3[0-$xFi} uRkǭ<~2_M65IitXF 5/#酨֔TVV[{xWGYa\ޅ<Ύ2}FZ3yRJ 3Ȟſ{`tiy2iT٭&pk`=z]22c tTR^S!XWmCiϴ'ޥX!'hݻj TivW?/_ f'N#=y`TxsE~>i',dl`G9<ы5X q`?DRn,%3Q+O)h' Q-#_ێʚ˜v{""IzԱtjA[..`+ |eAcH27g# w]F>,2אbj_ob_h~~x2a4`U߄dT{45\6f( O~^XٙKveUؚd=`O 9gZ5(M3it&B6}bpu+M61 'uZN;Z[Y]Ÿwc>/եWwi,^V} ٓlX bUUUQd&݌c֭>WDI' ,IHޣz16-Zh]L}=עBH1ypҵ%8/$3kGn_p4l!4 &jF{cx?ظ/b8w%usyI9tO }d$5yKֹc~E㲝뻏Ze8Ȇ6G9̨'B 4._Ʊ;"t4Ŝ n7B"" H|+2pGX#O)?I,XZj˱V U~@4B로s鈘2M"W怶dMS})y{=lH._ w*'(}.A˶w+] 䝟)soA2y2"vq e+ fVX ׂy˛7Iֹ@ ph%iF)^e.4ŋvZt:&0#*5;S սN7.cJ]QkPaZ}amٰIQ8zRdcVxZb~9`H`¬.l#-+f?/w N̉unPú_EgӚ '=8딴s >c^Bb`OwN@.xO+fiLB2]:)&Ul3CbnE?O k|_!q@5a^kbPd:BfL챵9TBI4}o aƂ8+?5aa{–VH1”<ZjXy^42` b AT){jAdadac/wZ-B@K4f#.Ht=Ƭ$S7#PܱrAy~* l^: ϰYWlڒfW ,ngnゔ\>5}JK!6254! wi_ĶQ}" n> }~ qwR,3pOqW-aM$3q^J-s[i݊~#i& 9&g-x}<̒~ϱ}C|@ jLKY|VYGְlΡտȪVN8堰/_Qʊ1ϖ׊҆FuY6x ٸ9M;ԽዥI0$"CVv5P}S?x MÇG ?oY% Br7 (q,٭07 Ml=._Dnńosߙ{Wϧm|O3hFT ("E[)sZI5lǒځb'rOV>If1 ):fv"s]2>B4&P9ʌ,?P MLi7ʷ-p/qtUu8ya'ΜD(t2栩&@M?)Srs '>Z ^A: *US8<к,$B4dv{ :[@]0766qKl"RHjŻ.I_A1*P4_p&Vg$ZZ'b]Tʐ{Yt2bO↎2=P*no0k?|0\6<;xQywfV[+Q&U۟zt,KfOTN|&7YqG(ŒglK:/CH*o!AScC'}~MwLe5(U 0q+SQm\M{v)BgsT@JI\uBR.o[%4)UBWm>u(KSӾ}Z!R0Qyk :OUiZA$&Ř3pb%Kb+|4+U3b" \-$9ww0c|=FDEvxT؀4 I~"MGKI+cdR~qlffOg8`ȊdJ&S )|T1s-Э: s P<"Ka=5LmNc4GՌ #8E23}# ?)O/jн{| ;E *p]źJPX(ȘzlGhx3&"K_ƒ gk?;hW*gc4mL/ldiaks~6-Mo E=*2Wo]#ԹhˬZW0d{E=DUjrJpɋy7}~p+4RY#_zrDvQL^z!,•Q&o-nM_ _L $=.j䂞f!{ rUnt4Da TCӕMeÞi+Ïb`Mf9 u&Q^8%@K޻ A[wb82Nls 鶊dڍ9ŘX|3c͔U:O6i,0liN4Ws30{ɥ( yr0~q)bbVkv p h?uLU/Ztzd :`0۠=WzL9w 󣣗|ސ3Yf2Qy2v6x!$Gk.Tkuj/N!;DNd%р]WTPP4NwW4ҖݚTX 0r2nJ,ɃҎCN:EhW ;čEZƷ˳9\ӻ*Yj{Y$,S Ӂ vw{ø{o_ץCD,(m Jٟ2`%7(4cbAnʤ\_3Rc,oׁM0^Q:uBNm1-1dlzh([ahNߙsRB}h 5l袭8sH2Z] <&x mt:r@.#NTԻgV_S{OcKd [ǫJ,B"X5BkX׏ oPњN E˿:]+\s|$d H&1T F&> ~ԩ0*ͳ6%xV(ŕF -ܥ|7 #Wv6.a,7.X& jYWR\_Ẍ́b*.Աdj{v&ˑ/HZ/l( Ǵm 8_5]b>@$<졌`7f,GX͕ )9 kk-$/2tTbfk /#qWaB ԃ0,.jwzFP-+<\r۪ Fs!q8YVށTQjDsz oS7aw#cweQDB<6;ѣ2twis$+GT.; , @wMI7ledBzsBI_33u?Ď͉lbիcD@&bh(Oy’@ɴ0':5~FJOX}T&pn.[ξ&4=*=N;Y~/. M{|lzBبK?rh/%<FA+Q]ۻ' bZ75][3d4KR`nb#PɤP_ѯ'sߨTy:gYmwy*&XApkTN"vՈͶ.6vFƭsլ$!T6oB_7f; 5 X"bk]"PK_8"lS~ KVB"`u C |2W^?a9aD=aOfP+G^e>ZU)7Jb!c"@LII"_; Hv,ӯX+!:R,>>$,4,X(@$kԆ$0 %hc4]=ѶQg?+.s) m맊Kzi7qC޹UK Gߊ}Kgk,O^tlWen\ӲT|l{$)X HkD;w3VBRO4IWH>4D:YBn$! C,U O-/wʥ+bg̽ܭQ@фZS}Z&DUnI~'a]S^ӕy{iE AǘSxw/ gS𡽕u~kGdƶx~\ L%z[G$B :$ⳳNiI[a/$=iuHsujL9:-1Qi6wJ&T`%hʷMPӜV@zoi/Ψ8sM׸1G>F38 )TLȻkb<(L X4Cɽ`02!oa R#I>=' /r* H$}<̶uy>|[7ޒ/`[lEFel*{kY;>]#Dk7% : 3p{ҕc=˧%lKnCp@Ͷ<^ZJ֒z/WIF2wBB):k~&HlPX" J-ϲiG2t%XedD$h-TDIylתodC^lD2dB`ڎ /FRD_Dq?BP#'h8z &xϦq9Dt§.,ߑ< #AY}$w /t ]9r6R=-5LhXiFet 0%=18M'+<(:J7ͅ=ZD<" %9thO~0i?FOB!g[% V^ۉ$@nqIbv(ǚ 0]567ϭ׀?^H|q.K*]Í `q-1dƒ0Sl?7hN\UlQIe+ZL\y+/{9q6{,?cwsW5<ΦzzϜ\!P :<װKxk@p B>țϢ\Mk/"cvL{2}6 َԞ~9ZmxJ@N!dZ܉>TRX*N&T~p|/F뀘}&ߵ.:(d] yOl31Vxn(Qv= qhr}AT'z4ZQ : kd|jG'mNX[^uN(1*5"S332<kXSz5 3V@+Z tx\s+4]HRЦ&TFx Qns\$0>D*VV*KB )4šY{uZq)'-{nڇmIkpd*4q|5MLiF1AlXg %,!3Pzu<~;jKF y1$/nF%{4 RSNutQĹ\}y +o>Π}Pv&HM$ofFX]K)g*+p[놐(*?1GQ [Xu{1~ۓzV9_K*؜O?I!;%USLK GTwiQ t| N՘opvм{rjasHC&𔉮\F Ư0"ⴆoRѩ7.ͪ){Jdˑ+x[uЌ, mliXړFj nzz Yjs)Q" ,W1g?b@tdmra3_iCE |`)j@5)74{J[6) rb}%xIisIiw̖5?`X7d,!E(̹D'*t g4d`ukX+J#\\^I cv $o.59h6M[E`W*U jGV%RKTx%Gc ?MF %~%G̜?wx{5q]W驯H;p`]tSZh3w%ҟM:`7AUr$I2E&|$ `G¾@GpԕT1Ty?aQD/Қ]nl`rp*}ƃѕ);ӈgζ@BC›N@Yx᳷/4s]E&߬ bN C֣;t >jmxnyFʼG90PdznD 0 L<x=ДoIQ#MkUۯن=7)dbr޻cn;o>UlD30F-SZL, Vlh=h7y_`GqW H'd6&={.<Euy^5gfc>6`9vp??ώF2Dɳ[*Lz^9VrꫩVM%F| OEXU)BD^ 1T2Sz64@T*~n%'&K $Rsu.1~S" fÄ;6La+֬N_{јp;bmioML< niPϛld,5]c>|kTZW}onѕiǼC5#S׵4@@"[BTGdNop2×\6P0C[J5i7dT>h g7V{W!qKl&ncQlKC_y#z\[KEB{z5]3IbCmd摚u ZtNGp%LP5Xtp#6ӡחAJurt7d!|'34 Ez/1SL @9Rj[#ɒGK'.8`pr"qFA вM39x _!`kM! %ka(kuH۟_dI/:] Eh,b*<z-bStnJ0xK^ϥX2>AEcT9I2GJLɩ+Ht B];_ V^DxϯQvAQj)QuJk8{ !3wGh6iSYwjy$ZܗDRdnQXYr|:î6"4`Eabug kdI*e;|!dwɤwOeM|R[ޭdLT ,ԣ+:Ftj>{븃8?!pdKq%f h+yOm@L-,۞]I⠂LfºE0>/)B`[mlbsnC׺~ER1$J;}E89-`+1n+՗:Q܁#gʜH1dr>{DnPMLq("U#rbXsW$ A̎} 22 ~%HB=ΤAmQX:و.yB!/_p:#&xgEljijTєNi=SY"`,Mʙՠ 6oo@W0P#$.i{/Ӆ#0{!<xQo PEV%6j_o'5Xޯ[I#L?67=+xV!銙 :lrT-Q1_.VEi'xg+;ihSft#I љoT{~ :%UM$ݘ`I\ݞHd]j0u +,aF&Fx+M* 8yeY"ҕE1o/~ N\ono]Î9mz'hE4#)`q Ap'4@U\̚`wsTIv:pc,2T)9Ӕ_W) $)O^E#Ÿ }zAMW+sEN3ߥW6&4)Uq?gu6w ןJI)7[KDxfAV諟czƞIC^Cd;}#0&t^ZN6ڗ169\FEQE,*}aHA-Aسю%@% Na$4NA|3 ,s~9J Ay*znW &4$ڗ0oqUXDZPR3OBIh[enUA`E;c+0k)2~IgcwU?\,/;a,2#a9߄!P\x!egn7%($K#ڪXB"Oɣ9_7& HMmN+~ˆ-6N([T]cM/ 7*} !-+&Aq?Ԑ!>뿭Ba{́6>ׂOħ{\tc|_2#u m%^'@'ic`~6Qt.:mHg:jILy-i+¼U5*N8"A5+:@ssRӅ'?k* |* RZ$ #)% ڠ:! U&'A뱜x NnrUNC%ڧÑз.H8:C+Izf)]ph%V+AaY&HH\-*שg dCb^b̖ 1[}!S\? Rh;Dms? 53d'+?xS",Ԁm*=՚w.f"`؆ハ ?5wtnA6Yga` eW6m\-}'pyN,x)58ti2Ќ;&XF&3_V=: NmH؁6R6dᜮ#ډ(꺍my'WlazK|%􉯟M5s2^iO3eT.6BhѲu]e>!h-5V%}P:_R `MRi#iN]tA'vHXz#Lv>c|q"=̞4RrnG˸*LT8pK[_ќH,TJpzՅ Q0ׂ㝨G!P:ƹ\#3 (zHwa~ܸ[xr%$k%.d&vIR A0KhE+F  ӓ)Gii: O*KNY"BYfl=C *FG7߸^hi=t>/nKEtGカRƍrSq$Id6[Mۨz^1'({uG~{l}+-EF쬛6# JVɭUP$땐X&R;Nq?a%Ym4ա®XV#шh^k^$L+w2$g|` ݮroI8rǀ,; at|_VPIVe^om)V Xȯ՜_8`y y͎}1G`2kYdC/Ӟ~BcqGt?KЀOCb Es!x*YPX eƊn.lp/?b!xuKݪ@( 6bAe6h>ea̞(TwŴVQ (AB}N J{ϛ^l{ҚC!-E=,j6FTaNo/o.rRpS{r3AW9;f'u= htϜ]KcG10 1*sHr=#^RC& FR*trC>_fĉ(h#ωCNAW ݁^af?6Io&BqXgب]e4;Z4#: e+ԟ {Qk5qo\W(yH$eWv&K㹷F{ssEJ 7݀;%47B"nKm[D+L(JOs#⬄1Fm.]Q,XOrITZ&lQXCKx#= ɟl=$p*掬>,'JnWTG<]3lV0ZoT}w:A>?=4&'3oqZhPGWA@,|LIű8V a0e =u;V~JCS3IF#="g Q+mQcL@HK6;Žۭ͊QbdSXp`ߧ"hRk(/e Y8{I+0}z  %#}J_\ݰ?<ϊ!0.p~=R@|Ӳ;wގ$MUo8[VZ>=)U&r/XD]J9 )ɯ 9zHJ 4'xe-/; 3PdW?( >wvx}t rZJz^Zynt@ |Xyv`<$*bg!kx8yz8\gY`,lK}>f^'q.wcd0bbu[ wϡ Mz)Zsdut; %DZ# $ToPI~GYR`Ǘ@/\4LbI\"8}!{s%VӣٓJ\)0\~A*H$7ivjT ?'T:E9Yuq2^"M[ VT<LY0#;Τ\$-m1jv[l"64j|]k›ʧDzB/Tmrf R@saR'ŋ{Q "6r#/:lforyB;-0x{.qM hK['." W-ɺIT5I.:ȓZg:KnLp5#/\+G71pd+l3:YMS!#`*J\ݐq/ w/acet*%邆z2|wLN\| +:/Pmm?"M9G`ۀ*J3Kk>ZE>/"{,>shV1[ ÁO]g~XCUp%RȖ _<)L d~)p7Xv^{^`cDlMtN$c"R[7JbīG$l1YDm`JifW6 t PŊdv-$ i_3`8(9VN\E[:B߲,q XF:,P^`TĦRQO6{4؄cT~)@yio~\ю'mc(3b1xOi޴$bI1W=KwP?YE7ZqU 4˞h{#I Yg^"Y\2NL,.0M:;zd[%pm𺌡8qNbtshmg * &E#p;=>pNQŝW<'$Srf'E,k4ܬ Vͅ8yS $𐳆TPyWTlC&ʣsw"zܾk$iy *! :zÑL;3f#JWdM0 Ohz&1]ӠJC&Ӵ cC<f}$-گWh^|iq^sY ZnjGq_8sS@ .h5!iR0@p\ﴝ~yTҝa >4.32.rȳ7^ċ6-wXG$8iD{,\({tHkhFZwT2bRI&PN{iOg@ŏWa>W6BWO?tO(ŪX''K[ֵZe|QF2DŏGIdj,N"<@z@Hy#%$*T{'G4TƠ\]n4̻@J,4 Yq~]._WhgA)H[6v^ Mo! l,51z;= :RwT9SAE/wmd3Y0qE{1|Trq2Ǚ ~ k "o@6c=X|~L%'Fh8]! d"J:oV9V+yrF5 q Š%ZO!Az#孖5ӄF RHցXKY]557pϋ m>+X#u-wU#_aZQcG v/ ۪ 74H>YiHar ?ʥ5:(zy bC_TGJMˎ#P x/k5{J=>m]h(}B9bK;(5]˺Č47 \Vzs)Z,恭O;q8f AFH!J#|j4A!h3oqe\iC)m3X3`+%m[/\J/ł0ٝ ލ < g2z{c'銣cMj&KW$LEu3=c(SD7"5Q_4Im̨A ~/DƇ^fN@'X]M,f Ѝ{RZ*Irp.o_%~~p#: ړmӕk (d0!bnPЪ2co^Chi*.1W坵\=. KVMҤ2Q[G焚2oL0Ӗ0p,i;;bp}дF] ccizo?&+ջ]H9Ŋn-w1~n ܑikemצHL#"]A -]p#Ձ/5W&!W=' uoLyߎuS EI}"Lp3@@Ȃ%*VW}{ D'kiUp7yಆ8\_}ijFXšϙ62lMf n@6 UJ&iɚ E_R|`Ki֙^XNc-IJ-iKa:v_;E5*ģ h.mJ2+RM{b=GpQ S)].^/gI%!v?>lvm[vFCb[dpet) 3"24a\Rw7-u7ZU%DTB jK}- <2QEԃPuV7֏LxcAD~6p'f0Mӥu?ȡ\APHmADvc#.Լg=%xr1"B3?WMUiPT&WE-5O? *bs7!µ}/D3*ڧ^مe;<:^Z_*>(ٱ,~y4'q@zZz x0% %JP )CN T\+2d@/CoA&urәOga CkF'B긧0:j5Q(끝RX*6V*Բ*q!Jo]@pyT/EDh́8C2z6J،=˘"?t݆#W\)%ZC>خщjFS\*@nk;A㉴5A"QM۪E;c3*!t)c@Lܣ}óv9O oaߛܦ+z(c߀\I28;9/ :o0q z{Q98Iw`I"SP~=0b3!qs]tĿ{.m.3O7;À~@8#N2L&I98m<LH8(Sִ~E4/zCaF]3`EDyRO,:n:v {K4.%7Z8M".{aRk9+;c=23hGm+B| ?$I$0&'+| iP]sEcKQ("])un ~ -E3BVTv] v̅clz>P :gimo nD_BhSOK/HxKq} 0X3H,ӶJ'J<@  >&b3P޾5qbz+faJ^ 'ʼ\Y5}%|@Lx,L=vQ%mχB]U(L0[uc\_h|fJI h -<3?q`P'6BS?% %k0atCPCx{dfS"-y83$P KxU~MأӸ]Ey%z6P@2vZ\K]|n0-M2zNDIclp}F3U2Cx"sЇ* 75agZr\/w=YIF}کeܺY]ndOLd u i!t 3z+t X/i=9ID䃵)Bln2~aT}p "~jk@/7h\Mc[scIIFNՋ:f& w&"U}I猭B+OmX$oPŰ:#aCa42~TțpÜ3^|'^^i]`$=vo8/uMNB̗4j5Wtp}o/A>DmR5/0LbF -3ʚ#Al{W1HQ)5ͱBq0:oĻ/+(gH%r%:r}\S*rTc{C@L#/0+ c֙Wo3'dU4_˿𫹝~ /}es]30&2{@J’j9;ATQƜ(ꥳ{j?Mr]wOֿt_n'}393*;|7 x~˭l֠Ez5#2|/aF\OULU ኰwfBg|v7I<c!rr{!ikz`EMXyw?;:Sz =^N)gAL(w XWtD>oE7=E-!U<pg6F'Ds0h>N'|zRO7 A{Y /X #3U>;1tk;5ٺ\S&;U'z8LJ(z2if3&PC(#^Ow0(.R|Ve>]BKSl<#ZtRuEezS5ZwX#%-%W8b蒎L/e7}R|υR3DQռY pXK4En+a1NOH K+[ ,}SP^S`p9/ғmF'9a@rN*q1\%7 ρ zXxkY{_PPw23OO !E[Нr#0܊|Ycs#?ԁ\%=QO" ΅7]`+ߧ.2qXVfQ)9<|rcFviUʯ||MgĖʰnƊpb#8" ?v;Gy`L.޼M၊&O RA=ِXs6;Hb=(p[-[xa6~~\:7Fm5Swp`Ԣ^դ=[ݤdD9u}P7]Ly*mVX9K.zg#Ȫ‚rjL6:%: Ʃmr5Pr_>❡C%e-kS<l7"N͌*E o51ugZǾ0ąbG.W&`QȀ"khshœ"y.\ m,?C*r/) DUwsO&&^yЦêeɜ#Mn\q**ûeV ڸvM ECbolh/ krRa ~IEɖ_ׅr1*{Sl& Pа%>sqyRl&n-^W;n `fBkWVE!Wߧ@dr`>*sB׵Ū)k&|D6"TN l%z:Â^Z? ODAr;zqo xTŀ]wf|R6v7iG~AOM|N+;~Q~9&ـ#"Il5 VI^@awzMo#nzXf{OߦZ13xCj xS^^vZ/315[V] 7r3a&esLsG47*ib̃0f*[ىv.ju%8Mu@Lx~. =I!W"F% ;PaI[?r" @Յ:eT8-Aݫa3nKm%Q>bLd# 둏VCA ;xLC?ѽRZ[dSdաro5o^{q~XUD>5vYsb;ewյ'yoZİk`gMCz8݆-"!)`{9fpRT{K|)&/^QB"$Ֆ,쎧(N)QyS%o&Aȑ$73ytg2ܽ. 43:U@4MeN@?p<{ѕ'02#衙4<踵oOhv2 ĤT Ө>"cӱR,#& yV5e!Y,M:Ak -s'4j,OXF|SV؍>7^2>D>T`> BLyI;@"K9pDUW|~/"pX ]L~poO> 0eɪoHe{Չma@ J3L[YVP`+kzw`' d8.[G-fDXqyKdn*&w7?E9,QLgE4l]J3W(۔' /b!gK=ַNעiWʓzzلgL?j0)Z{'oEC|$}#X;2-AopُzvtZu9lvBJ<#pL YeTڍ~F|θ-~[F8 o"!jⲈ$\~ͪ_ё}6 eBXRH.5BГ!8)ĜDK27@=#şHP\a3G LilI]2@DNI XaicLVkIr" UE?5ߞpM\ɆJbÒ=S-¿W6q5&ޞ1 ^nڍlxnçun=O L4km6EǠcꢥ7>5 Ƽƈ%2ʍAj =p)nC+-9(-b.I~jѹ.еJK**٨> >L9L.ͮmƐ怩ʏCC'ozK*5(j &ҟC4ޤH3`*Pƀc=*Ls;.ay;DjvSּhoO[JJ + pxq!âZ:|ޏ$J#?*00^C|gP(BðjC0NGj1Ɠ5şqD1U1z^(} $Y<0G3"{^&:9(AK?fz=3v v#EdS-]G1Q[k䮒ɹi᧵(Q.W1ó0k&8ˏM6qD4Hb[/H>D0JO]oMnvE3THu#W=D=|?*{Hf!v$c fP r”Ti {/ 5 m~} 'j!;~GE0Kn؈VI 2n1GmdY|!rx~ )f^O ZP̌ժ46w]fM!U$eMoAX$*XY>!y-uήS1tg3L]zB+j܌ Iۃ%+]7V=v3QUw&<ˇ93b΄B}1@40DD#ozF֮rtgaWL#!<^F<N9K?Mi<9Ah=f?8¢"'TU2G $]h#(e(|p,e4cXBkHpН̐Zv[<d 04'*/i8P?EEtݷ-dQE7A?&;f}.|"phZQNfcv+@o6Z2$oB6[xzLj'$;Ȯq9J&DG&4x(;=}(T_L&b? " 31Og|Mk"3^{5^5%Bhrm4*7"]u"bm!@\>!A_㱋X,]u;]W},"VnK="QvT?*Do6Js`Ega:XIyA틲S|ap(*IF %i';%scueSW7ܕfN> znI)֤5$6q3(w0GGds@c(( BDY|Tr@S -G"lu? }D]])7θԌuS0+` 2]?2H Q^e<(ҷzFuer_E"$!$W\~cY$KtzlٓJ/t&r)Q/wOr?^[D)$eQ"`Kbo[Hɿv]\ie+1?DϖIɾȻHоR H辧2+a0%C4}eXV7t™iw*^hQNGM9>Iy잙Gzǜ4;mr,症JSoGP$cXd}fi;%aӗ&& 2UQFLr5qb,Qh PZjVNmp7wxWY;iZYt֖k7,<+ѯѽS|βCrm|fs _m Zlni6قև.Vn SѯO%&xH ¼%O+N1`촁Kyd~6]D8ڟX1aGydJ+GGMWhpQgBt@nkmGzh8B} s^>U*oE!_PCKZ5-CB jJ?~"V>/7Bص̬xNj;TT!76cqkQ|i꛹',x3acqO2 tO#dB֤\tH\.{S7ܚW.`"o2~(ŰFU[HŻuIC ƙ`kѡ7EQ:IR\cșMVt lD:P~Ӱz `ӅAt>0ϵdNzaޕe<Łsň* 36>`J4 +x7u+ r U~ʯO1#-EŀdTi1X]zЫM3숧2*2v6 j^[W45'1h4/t%Jn:MV .=R_.ŶOֳngiMv"Q"A݈W^ <gO?dW?A˖W#_@Ṿ Z:L^kv@qzŸ'4g|arɀ`]Ԛ49j]غ#pJh° қ@)߲֧9N%avrXU\͉0Ye4qkjn oSز[㨑˘h"lL2-<@Mrǣ{T7$ yfkI4$ `i <]̟3iԵ}3JmV`iNwTj!Y>Yzv)asH2A76[#ZJ77/}^F*E C;ux# =$l!$㞪0OZ[Qx *jƆ uEJ,Ч@뺝'+T1)JeF_[;&# ~ȪUr/gbL2g6ŌEVɴ+ z#UשFeFlpa%*(Ci⌥u_7`Sb0<#NȀ[6# +Cf}ꂚ?P}-VK1!)3*}Z`Jyi6zҘ"YX ZWE qe9x10Z1OG_Q k-! p"C;p(U _ )XI9%>'9Zltu|4r$p1͕09Q>r{_ilK';:Uq;7|÷l?RT6i0$yGrT7UT{xU@b1 MضpN&2Zh3 gam݆;M6 D__ݛW$hQ!>TUҖ| ܓg@9'u@LJTCcyǼ3J>Τy&9X󁊾8zSb}gxQ(=st.O׏.*~Ӎ1yU mW-'- KIj \@ 8f늾_\.lli}]Mau$ŷ}>K7oᴲ`pǬ^]G/!ڥ>hE<cM0_c,y~D>ҭVA"?^ٕv2wq "e'3o$D T-`"F0s gB9p[ 8Cz^ nz_hms;q١Pnw8]U8Uj6jݸWRoԧS=)V.Y3͗-}-8omᅖP X%@ɥ01Ry4B$hӛD&Y:V 1룬dlIa^R]wIUm!Ȩ/PgjVr6V9RPlaO4/x >zW |DȃN]H_٩Menmóg, TLJ.U3I0(.Ȩmgy4b vXZO\W.刯P j@D[3Wrt?8!/_~i ?%tԁiwofF+n_f-0O#&w gq^%"|~5?c0h͸6f9q밁[1vY XIA~P4}!$FcS{xld.#GX-fU \WɊ:'pԋSᆻ;kL գq!m`?-, fO_ʠ(,F!W*8n_{U V{'4ѡ> ^!bp-=F{;D Y`8(G~,Z Zڿ'΂( ! G' A}&7ī1}x#&a{޴sݨ+驱"⋭YI,!u-JT`V^gpS#vn4**pAWIwK4 >qzx; Ζ؛wN"$ ߘ=3=,6@6dkf2clLFU8+g~.D2˄_OLM:56'ǮUji& WN #2"hXgc;tWeeD)olO. N- Nh7u&dg8"j6W(+oYoQ9`As<uZW2D\ܾmw1Sۼ(G5^A5 6]᥮׫37V ̢?6M ×:-a#co+"e-HƂ[.>IS..F-/j? v\Vp{5HRѨ͹Gv"FG$PnݨEZF[#$;5*oD0[6a}I9@ '_ٹi/0aԔGO(jEl7 蟫0);gvh ?&q:8[ 0k<+3ijU ?8XJ)N$UO»' *ޔj$$ W7bcd;ҟ9NюSlz -S$o"bsR($UǮ1|?B!:$W&\`b_B԰ 216ԗ 1Idŗ]7on''yďUЍ<3['IonZicVLJհ:&!r &h"%T F:H5y4n_xLO<`姏T& y 9K/?o.`X.󳯕CaE3_T iX!hf3 Bw*_GZb$W4PB%r󌤪9PY OG! <^5!휞?9Ez|Odž$(tXr BN #yxv' C+8dN9.͊f5G5#LGz7l›ߪj`ȴRLETIcit(=P Q7v]\ɶT\n&:ZFUnS/׾w+i`-ۋoR{ ,_D.9Z!>ܲ!5wTv?E Дك!Kn;5*o{?Qqt3qc~A.~܂xT 0LI?`_{2'Z}{H^9e=AMv9ve!fVCyyI 8 B$O;@ѹt/]I6>†~ڼsX"A<ـ甾 j=o'0(} }dvŸZz8tiifwdlNBC $)+@T%voO5*s[w|m7)0z *B[x}nC ˇ"";a(/Vkw(7N}--Q{Y57tm.}YP/_p'"@Ţ\Kbke+o]D<B[;XܝNH (sUWWA×VE `_G?tӬM.9@ h_íD;k@{l|wonO}̻>*J w,hHlѪ7QHTqC^UrqTh@d{B1s#}GoH"& tL:SDؐ#vX 6{?W"7yǶves7װmQV*aZE&a-Kƕ'X4=5H%XpAfz"'CprчgCMtRBN,&z%a2J }?< g+GQy}[J)p#~3_}2t{0TZv4~# BAgOqu,lsrōMO#qMr)mAJp^L@|=߅|q8:""0o;82BQoX =yϑw^0hyPH"g *n?tm^fp}d8Vh&Μljݵy(= `dg gl?z8N+(UsrrQ"=߄ޔRCZR%XLns|`7ÒqϏ%aHkq >,o$~Ƹ[E-00#3dxJln]`YսGRdxs#׀(CSxG w.vZ`]\eyWAGR-&"K@4¾{rC&P_D=xWCN?w6b_w7q٤n'Lnl/ax|R8%q #騩l+VhjE MehX b5Ћc-ª̿i$ 2wTVW_Gw%d_,:$TR:skɏo]JX%5<33'&R0CK5S n9ffEۥ;8OXs+-iysKAvjWwɗe 7ZwLG |]gql<}Sk''3RHspxښ# \?۲W&gۚqiM szJLCk<CVJ]}{96g[To }:/OK_zխ&M^ϥ}ߣ>#ubx;I\p8}45ʠ(9 5Ev`ta[Mlb_:U ^j!.PBBN`PntiZ1r @H v2ao$21x ZۡØhgI(x*:[8$!t a.+bx #цĹ::N.Bݻ7~c2R^IἥE*jk}#bxM:>/Ǘ^l?hӽ5IϮiX!OckzkĈ6P 0BUǿNl ` &S@50o85PcKG>Bv +Ύg%81>0Z.&oYF|־ySF|,SU"Z| rjb_I\#J&s#my 8"ag#/PXEJ<"HtYP ~4̔RXpE;w R?](I (bGl&8yKţGiQJOY>Dkbע!=x;Ѽ}ڷOI $Pfr I3u)9)ϯFs1x H"31qR;`deF~_xN:M=m;*@ 8᝾uX8^2]%;ktcp|'*J(0% /MjZW0{t26N']+/Dzf *лʎb'p-I ,l]Bv&Cc*gϴ2#J|\zCmZH3HĘ}-&Xͤ"J5=x03c -b=1V>/8ebMs*X<6m򵷂pʴ@|ΟPYV$NeAC30Y(|*1ZTpspn|mF'HDxH"AnpL)vNJ,u~Rh4hι4m>Qp"c7ğ U Ǹ:ryeCNL)jUs<1R)<zoW^vS0[l}Bac кNu#]?Zrb=TX CKz'ժixط6цrw/$:ng d OMڔ.\zBC9}bD/g骥A)'9 N :$=GؓQgp7̬qkaiٰe#,U !mv&-Q/mߒk앭j&PjkfԶҶ(yAץ.Ca%qC9\AwsIAʍ3$0ߌ PQ}<AacfJP!{rJT 4vܘ+A {9}@??K#B;qJ3 Q˕}#6N_I"0S&s0~NCB0~TO cw\][akt6_.uL _DX-9G[q ^Ҩ.G9{z17ć Qڝr؜<ϺUϾ`.%q{3])VX3[C\jѮ)ȭAlP7❤Pe$-{h(bXla+^=YEp,.|H=Uѷ9a"jL'nH<2H6aIhY?8zpU w9}UST›oAza;U}y'\{56,MŸH_EQSP8Y1h}inX+*{*̨Q4SZTbWGx+eVBW4_Wh~6$<=.޳)ֳ!1r*P 2<Ǩq];fz".8X\PdgY^&; 8pvlS:'Yc6TTR8L˘J+6u:qT}n@=e-䡭~-V&g NFQh~(,\ b?7}0ǭyk{M(BEjrHy,^? o[ݑ4?9=JAaq5{qJeH D7,psOZNRy];*X5fzPy]Q{[ 0V!/_ !F)-QٶtzV <4@hz3dҠt͇Ŭ~"=zU( dǞw&<[F3 UT(I<8gLDj1ye'w$+R1ʉ<A L,AΓs.ErWh1y_) 7xz8GPohS0Ënw*ݫĩ ,<̜D1bt8EZSn)vK2_0UF5= t=bumE{QhM~A#4+#ҽ)3I]3׈ˊƢal_]o%lg7 @F/;(+-1=RYdOP3IipVÛ[oN =;4cnGauT p2q V΢?Ϩ-ۦR+%l [q8-h[7!Do{0.'jQƄ ڴ Y1*[ + $Y,PXk!Q4%1);hHEV*ۚ6쁀YI^kXOQbfgt#$ :W•-r{pЧs!Q%VO)~S2g' ($/M~MLeM ^Se@:~4>x/A8C9+<#(aDZ0alrt_tY* ƅ>> w;Oz:jj}`D.2 18"\+{l#l:i'@#AXĚ4= fْboz=|#h& ~,mfIKc*Nd&O?Go3j|l,LΠǁU k)';UU}G~ΖGXKv"Z2R-J4B S*ט|CMLݞ(x5|".#ǝtw( n@c2wQc6Gy"B .[/ sux5ʒUH  b^hOOgR/Q/FmO#4cA7zAM Z)G( Ecz Ќc$ut>EyCV`9ݪG_$8 <.E>nHЏY5Ȋǒ=[%N”|Y5" 2ּ9H{_<^Jt\q!TBbުɖ"OFe&`6IIָalXYC9+>O7U 9xɾ bd| [4gLҲeQ!::Q@L{vԖQXkq1iQWֱ]k{H62EsB3@b1Y<:=hf 3g&xgR4kd̉('}C bCg6$m$Zwvd Qhd'07-VxqpTJà4(Й"`.ud"$ 2 YxT蝿6&I:fuJǽB?V-L]>H@֬jtFƲ<ķSj,j>@/۬ ya08K&aVݶ?rHo`4wzuCto^?zaV}9E^"߁YaSDx1kJoeP)Ĝ6t.?tzoHlT"x|XjPe <jL"Σ1Wy_7O΁`ϨZZ^o{`ȼ79y%!:ƂecY$N[2C W60@=*V"\y!_/k.βy6Q`N\~#KS|%6ȵW+LӮݱ-҉xӅ+Ճz\X'. g k<} <&E] JZƒ¡kJXh/NF1.|U-Rd{PDGe{a7KV0ǚˆ/-1kMBl1DIBGƌ{1&^V(}U~Z`(EqHx(#G {+uX,s Us)ۇTbg~N tO(@2>v[݃ [am o!"8HJ5>-e~A'{`TuњÈMD~JتGB Q>T.ljCist h< \j&\M~, !ȋs=XXkZ!-; 0:˺nVH٢KKLh<獩oٿfLE^- sŔ#k<*5Pw:;љbLd=-55ກoNxBT3jꛦ|ʺ,tCbKdσ߭ bE쪱f?2a]#wOF^R]ę]ɢK8@R<-CO*?Aqzs=xq§ ?Qfir47 ~ϟN~Ol5xf[J73UNLdYﺅw9OWUBbFA3Q̞hn{LҠMG㎓LMpLN"u=7{Pd|VhqwktMζCwW_2$NES $}V}Y׮谉>EnrVx㑇zrOEALn7=ye{-zwV|{y#tdBJY [!l:sI]Mɟe{O4|٥gIbF{tЬNf%ftL‰ ~(˿IQބNMjC6VbW89EJZ5,hVUЅs:ѢFM/ÀƔW/ ~5s#zC8Ub? ObSK)1B?4ՈW+P^Zԛ8=VDt1܅XPh51ӴksH6&ZHp{3ɴ~h` 0j=z7k⻸ZM}e3 +ITRC:IV:IӑN}bα{m 画*eGM)?^x~da5}J[ D?_Vh]&lD~Q=52)g8a#L1hM*⪮xmZM`;*kPq@#wJ|Md2__֨SC;eIv C$OJiLP|f#U=9{RrsJнuLJ˺>}?"dj̤: e[ ),"iw(Gi(EpP?k3k\e!; \GQPim羼1k[R{WْOs}wZQM2ga3RmaΎBJ蠨 9hy:ˉӯ>^˔0!JRѸts{[U+/A$D{?F9 b) 6qZ ੀ_٫ݤ;_T UQx@qZY .|/s*{ZfWrDRc³ fZ:xp&\۞& D ~azl?|!vK&Xe/:cJF;m݁R[x)1 0_4m~ :F릶HUVLc{VK EzV݆4 .` GmHÖ#% GjŒ8ut"Les˙6`\ZCuBy?1Ehž&(* ꢍeT,"@Q=Jpgq1-9eems^q;NbcwLuٖ/-8ʼ42[JR +D'G U]A5%El:I'|iC\_VM(w4$9l.sA> 7r t="7둉GooZ[ 'N]5GV[^|#$)<:KT QBF+d )FF*TՈT3b^b5#7&62Pϋz$TI5x +!]qnkn3ɊC/ֺŗ # ,ƦL0zv~s+h %@~>y 3e}ǂν6 6`S2(NG;£1H2k5`@[Mys,Gӗ$ߞ3WZ[v3Wh=x5r:_JOĈ'r6[;e6'v)Z;Kg"k7[kex`=cözgO/w jJV4[dT}V9E84LRIJȹZZd$X;8uj ^a_~wjKw31hٳ;{YL6XP'V 57r? v ˨ttn_&;Y+4C|9yuw"~Hjf;C/D0䌀`ܷ gQ0 ל/=ᇣ Y{흈Qh%&t]ƭW B񾬹G)za=~k TԠ]W=kA|#)qYVPC"#CHwxB)pItC LeT&4;fQ:?VRgԤOK+E0&؇S%}+.:$7a$& ZJ\qmD n},vƒdhe@ ³@Հ 6AoXMQh&a =%rQ8dW:â-EgXIv;| ڋ^JBm|Ϡ`~Adؙbڧʲóq6G:j"f 7aV:n0K8z7KLVj,6]1{L`3Vryhvfmq؊8*>*mRKFv;S 0@1+'8@gɋ*&^E;:JH}SH}QҧʠwwWo;sдKNߎM7WS]3EikX"\k-0sWA]?]1x A,J^=qxNT}9&%u'& C?nBI v*.TEؼ; . lE]8-^rϹJՋTqZvS)?jJ [Thw_lo\t4( ^f@ `䶈B!C 7G3 OVH$E_mJpTeT*vvr3+vbjN}~:n9R4:HҀ`G66B;7SgVWhӧ bmz!crJWMtvquqg(4͌>4y}*dܲ8 | kH _*L{U(=?bYDZXi%v(Ѐ{>ְ ~= %l>(_tNCD& ҩMnfXR1N۽\yC @n8ȫ2:™.þǐo *riWm?Lveuϥ>!-'5'q O4w ɛ {i]Vqdؔ_4+2fC]Ե~QW=A>p&FAkiFXtXgM!5,q4 3d؍75zx1mW"B6MIN3/"fc}?}u!WCI`:BFIH7rBrTҾMWj-ۄFIN9-6.+%PTZ.n(xgkGM <'Բ֥05,չmT ƩLr^t<5j'. S{ugzRW~A[3fc$C>t̀| 1ufKC!%~򎁱m+@aS5 9ַ|ރW*tkd@\(iy=2n!7ꖇk@~/#6L: &x;˛󩒔S99xb`vrb؂#ߊep?g= - !wRx{['4*ݳ gUנc1 Bwr.|xxRy*"u`Ītf箤16ᄨrC觍J`7"C%R4*lЃ47:o;?T]v![IHbSetF[9{-IA3|cWsgC0|_HazSL`9=yZʷ ^w! Uo։q؄iT-Gv0;wu] <̅y.a7e=Q#ns;{I`Il^`&Mkyd1|ےRޚRer/}_cO>U^gb zgK_)H݂'ȁ؏^ vϒ0"쭄qieڴ\3ld/(}s#5q춅 "*_.V:A*|tF?B&WuYb,|7IRZfcHacvqQj yGS?͒Tvf=V7wm:CP*OnFxYb$ۍh7T)Bhz %ܜGAg]#[=A-f_CFټ!M:R&i6E.6$wF`;N O4iT3ӳP1;hǚx|GWܩZO"lTՔ_˖aTE#΋KpjcWy*/8je$2sYBc%4ACWO$MH^ø"ԁF +6ER̃NnpÑly;Qui9/fG$sAY+YWt7?nXce-^]˘4l=<_ Y`9f H"8#EoYrįt;?PXI'_~2wFL_hN(kj"E>ܸ"˘;c5ue\"cتhI$'f[UCGL[A8Br_E[+M0|̇:,x?-x۲FY`a{XJ'(*k[64KhibyGz,w:6 yJ (! L|L7Z~}E8!itcbdu~XVp,k:$} I7Nz+t]W"fVpp0o#Ns6YI3QI:,NEvH|^*4$҄ts7ȻI~nEuYx1]"-xA@i7` [, tidf\+-J;U#F}^H1%?%e {mQ2 mZ=L<Ǩ7@;_F@cv2)G*ӼXK_|k{ Rd%r8)*QW`:pҙ<~den<Үm].˄I@ CqYh"0"xBi^\9;ί-]`2k9tD&csvQ3J:y9Q(JO"azvLRF+ @oK/4&U}' ̧ǥ=DU1Se6p $Qۙs*1D$B{Ղ}ZQGpO~* I~l0:spVhAMmi>cSF0LV ΚPQF^2-£jWvd.4<6O.D}-Ӄ]吅>I^Mo8Ib|V`2M^ -|OoѪLG-X-PA_4d:3,TąE~XA~ Awb%`* hXd^iEcHGۏ`;t7t2޷!6ȽB~mFP7GTlh ktR:ãXg)`4KoFdL7 6KRwyShmhqa@?.SNd\!ށ/=i(64m{N-elĎj!=[}dEŁA!?4@5s3l};hI~Jn;{1l Lk7W^$ Ě5W7񈁪h)U 9 M MZ00[d]".@ʴ2 UL\qTg׷m ohP Aly_| *}b<[@Ms4-J[A1xJRy VE`pHD^}w|H*{5r^7mF^ 83$%aEptTx#m'iwf*vB:ZqkӛEPbާ#Ʒiյ -p*%čk߀(ߔScg!;(2\/+:y+\%$ > L*j]fϐe;2!R R vj IկHY刦i괩I{7am̗{$g8Em +`vJPYPW ȕzj "N DŕJO~Ó8mx4R?2NV?'}fvjQ T.Vz)oO;f?*p:%gJZOy!2*뵂-@seF7@P펍)) 2*ɿS\plP0, 5Z_V4w9Ջ9Y\0ZGMDlUפ}GviW=wOX8-h͢!rfuҞ(Gl7/4$Xlkq|aͮT)=Yqc$(Jz)/AkcJ%W 8k<Oy׫,GC=ֽA6ы͠^k32Bl]ngz)ɉ/|Mmh`RRFñ ,#"]Di$1y6N;Y]|ۃuf:GHW%t 18'eT;Ȣ,$m1a7“0 Bk.2ʂ%ADXкurV]$k(O{j'(Ÿbmww ̿}-j ݸ1E`ZOy~cb ߾yT4d]Oc$33<(o2F@ɸWHhQ&nه_$fnB+CZ ASґ B^p,$)DV1 q#;I뼝Y!\{JY`*%guR C~Ub CAP4l^RY:.L b,Pnh8ׅ<8b{ h3 @fzˎe=j|-f)ppͧϝS WyXm^}ߞ|,Cb@I[3lI;{>vdPI lX T"M˷y%|H>_HM 8qCи3=(AL )Y"jPb*(խr\S*R y*j<ߔbs8󗗵uZV-h8rUS(M OXi#oS8Oƭ\P.QAYt}_ [$'"Nq8_ %uZ8!\ ;.%>?1%r$ozyxcFc,+p o>65ՙ7\"3u@[(ۊEbLpLT%å K<\ٶ1X{iLHO`W1[)*3ë1+Qʬ![wR6lA:n)H;K3d f7Ff}XfٵTȨq Bɉhe~"yvrbqƸFu >5ȤB/\'Xbq̴ ̐%9 x]p[/L+Ȍ昌[ygu҅1 +[.,f"v){zM.ޞj{nL yR6o+>,wf9 Go?F$5dZwͶSkԒB !m2ygt\&u~ŏHY4&c*$3p|]0*?#7?h<ح\ƕ~ͨHܩ#S j4H&AvĄMշ}BdY^\$.۝Tn,"TRBjN*9SEeb\g|̻z:8ΛE<&Z5j$3C?\{N/@jZOyL+ـ__JMrdr~\2~ Q -;׎*!L5洎xxm y3uk™=<:bz`5f8 דR %Q\0$dm&B ^;@B&ߔ񧅺0·놌t2ͪOcY4}ɬm.na .Н\{O |Cvg޹煸gscDPMG"3۾Ԭ4%hH'+;P@ |B1cz3ћslED֛M#1ew/p"i#If,&bDE%Rmz7eƞw4Y:E2~h@β[>Oj%?~B,6N*~ x`VyzgŸ7Ӭ Uhee</ZmnlSK! D^)yِ$,j˻97@FܜvhaQ 7 b ]Z8Iހt SO,o&`e;9 C̟ȞbO?7); ^ՁJLBVqrC^;=U!Xd*MX}]>ɢw(ͪ/q05y b۔tuyі&C'QVuvZ.bA4Jtx=W&n~M> DOno-9ЃeI%΄.&oCiC1z+4uR un@ހ%Tbכ^Òt"ֶx 7,F=کTflRQ /(0iIGCt#$)94JjpfB>|"Y$xh|sF/ BE 94q7Pz__u6==f>ݍț|49XP B6}U.և_,a zowZNӻ"z 1'(U_l%r]=> B *I0 Ywҳo󶭲#3kuoe)u5f(+S}W`R1}*i(q5>p6lw+rr%ӡ ̀x޺ͩH /_IRST o`}6āJȵBCa<* ^(P g xg8uNĐ!h!2-P jf qU>|cz` zwP^2i8 IT}% %XpϿ {r}#FNt{rLFm64b/+bIkLV6} 1BrEX(]5Oѧ|Uv<Ӆf %"@Y_ҹo7aKxJSQk?<ڻ@3:{foYLUPeuiM%/_@MQ-v)3U=bRFpzVcGwMsS!]%0A'| ;%3\$g8/,=?r@~fw( yۋ_!rWa o];v.Đr =ȢA0cGIG*rf$/xu,ˁS' XdI+~ mq p-@bA㞲$مš:|tnM,d-عs ڻ/ODti6FߕAcGفLj۞-LGl?xQ;GǴ⼾(g4sd#5q0[Yn6g5' ]ľG>'b;*0] 'B7vCJL>Wg~- W٠e{/[ʦՍ`cG&@Rojb]8gЎ&JVt^x8D. Vt `64}f ^{KX]jnk:I ܃֦n#pH~& L=|싿?[izW>g_['oVK3V Q LV^\lvq7RI"zBݣπk;CJ}ŭ.g%ޠtˌKb̔` eg[Ws8s5YC*pFA HaF2GCŒ\fx O@o≂%ƚ0Љ~`fCt Oc5>Y242@!X%rq C$I12W9j(Ԉ[t*[@< XS4zK /[F&kU? iD8Pq׸ɕ@V`cuwI^_ΩV'`ޯ `K;&e+ #hZd"DpojGEhӛ-hx F\ ARs*>}vۼ-0_#vxj56w_nӣ @BxQ84Rl.;%O=jlΨkeT#lvZȱrW? /v<[Wpr&鵎;f}\]r8&0֗c0ۍ̂2R]hmT#.H O1guC`R!d͐$h;YHB2Oeο|∶kTȩU+w9y'䚲- ,gmnr;Dڮ.*˨IaPHl~;֐HcmZi Fh 7:~?ڻn-.(̷1y''A6 G Q.qnY/MQb! `lmXPxM٘j3Y?o쭹4_*D*BmUT@O/ʷK!g9Q5]QGGunFr6TjE1u׶Etˬ_L>MjYrTV \"6}P>F?tv,o=We(Nm$ ڢĜj ;>`gkȹ' B~y!j7P<v~`ª@R B{O< t$rTǂ+ F=ڐ$^\̩ꊜ~azRݞt灀 ($OJVK͌ 5Z[i * j(_Af )KZM2Kokp5*'L?rr4HghαJC:!=pۈmy4bO96eӬҧF4}s螦Vӯúk(PH1=nM*g8ł4f,09˯֎FRyARFq-m ^e&,C~- &EJV!z ?Hwo#-/.Z< 9s̿5vLA.1mP ՊAhC? d+ 8D$>-B"ի+s!۷(/q% 9Klf ,0R4'JTAE5'{3sk3 ufTM?GWOjqۚTgF=y#ҡUĴeQvZ 7$apaԞSH{bG](0!L[AntOu[ܱAa9drKc̸Bv @4ztDWIӬɢC B 8_Jh\8(%F)7V5]oJSʕq?R`} FfCU*e/oLl:YzerbRp C+|\M1GЏZs9ef9WR/S JFiW*Wmi*sN;)𬒤5G 4WJFK24[i1TJn~9);^hPzw0|}Q# ͟~VA(ϋ;s{] 81ᎈhQ@'$ջ[8K0븈cg(X#1xP'QU MLf$16;*)v[X{*X[t6֗$06F0L$辔:*ՙb}"R̐kiex=} oy;tojm&^YL&|vJ99=w$RPcR&2Q*툍(nTھ㖷@ j?,Whd<jmepZ* !i _ A΂82BX)@K:|yLj:mz[`rU+zd`T\o_lǂ_wjpFܦdz@rc)'1(}ᷚhM1ۆ]'ω|J8z$hPn2kcBչ[I‹WȆpW˺"2縦Չ'ü:dA!Dž"Ux\ ,F1ovd8{"&5Tq/ EIfCdb2}r_Vs|I})}ar:cd{Ѧ"V{ax(+8"9kd՜U [۷ew"&OP>=q(oc Qo"UmQkl>1aר'O1g R{oB̜`b*W =hxZu"wIAVWA`h0 ~ RRx&N2(\1L`:mZJ$=F<1L.#|$eЅ: D ߝd޺[hSf8'Rp&!|F0Қڸ 6TBC:K9X"cgNѪu3zSi~㟓o[>>GdRE@!hH~>R*Mף?v2)q)ʀә4!K4rHapwewM R6{:}&Ep;Пs- 5/To{ΏI%Ul; {)EDtFbD{<`B)j˺>)d:흭23Ћ!Ҩ) JFyA |._Z I噱G"S.#cl)qA3ݣմh愕lR0Փ_:'gAe.jyߖ(}IJ5wyi*g)b:5e% T4w0+I-FH 8-D4C0{=NmGO5-ŌAz:ѷ 'g-Io{i0`c4 $SBpI뽅Hih,5d`62ЌvMK/q83Ei~!^`drIKFu<31E R ¨'[Uga`4fo]YkK} pGaA24y3Z`c/B`%W]$+=ND -"7]{N-;ʺAilI!͞L݃%"ҟFH.`Ui>Ik+*o`'mà]s 'M[Bq Xٹ [8nRrX.?yyrsܿ.1 쮼|C xb`LmJPl)%8>3Q6&N̾wNM +|ګ~o^2b"@iC:=bfd }w:,晉7g\OKp'T\igh7*+U/gE;*6N+εQ^EJw6nU&u< q|)R/ v{YȾ4!L>~~"$c^\?;sMЂR a`\NP1ɽQnU-oyQȼ_S;dqVP]6X 2G|w틈,)~R܉iN=LLf x쓚4һx\QZ5T7\3UZMZX 7u@}) jDڶvWOZ#*1! zKBC*b8@6ɲeM{'U$"aҙ]6j _02~ؚ_M=5mRO[Roi&W>lG'\#FӋ/E.$ˇ)u5&r|1:CaKio^玲_$!PHC:{t;6R@a[ gE: )ݴ"4 #DΎGqse%BRï LJ9dl0`ϸ*Uz'=p!)phx*^liy˟Txw?J5ER2Woyv;V9e7f^ϊ7ӧ=MP_/~h "̈́1ZeCf{xal8'X+}Q׀-oim/ sw1}+Мϗ%ig@Ml#Rޜ%l ɬPDfI̘gȩ P^a7X)F4i Tq~Exw6J(l{n{x5mC)/J?{s~A9?VĹYդyXu݃=_L{m~'Ұtp.;7d(% $]0Vo1v55TBf og+ Z\Ѽ2T&ɰ8Z*΂@PaPMܰ'#49զ~^ԉW%饎;i4eƳBp>QŜp=bU(dfaz]]n߭7'hQ :Œ#">?]|Lfɸ%I&own-p/L~aj6fr, N"1 .k (6{CVRkNhkG\d$9h2iS[ )1lD UD/N 1,`x_ ʡ"f D09_CwloVC/|B\ݙXsk&+Qù͸ݿYj w OD=eZ)<]M'{ɓ{cމueS%n?\3@sߛ2cЗ<-EZh {~h1kyO{1Dt "׌a׸;^ EeR]%2b[Ie\xA m_E3ZВ.뫦թ6.b·Y8lUg.4*L翱02D'^b :o/x)Qc!ɹ 29Ӭc;}gw&sAD;2L$ɸrW㛟a6/%d ]6mmgjkCvmC< 0kŒ3otQ7/`(~" W7vo#bKe;B첻9,Kx3BάjOC ݦ+m%+t$e-a1֗(E>aZQ;@`o׻MQQ׶lHd_숟-AgLWYGA&HRojLae\נý\ow)0M.19'њ&^NJ65"<ݠJ?p#(Ec(; VneX-׶ 9-=RogXZF)6c =sBbLDwDfBD+Zg-N}hĺ a`<=1y]4Ahú54ZI H͢ic2^vcOɻ=a*M(t ?r`[w[pC3iW8JhgW{2"UiXK0>dޤyhhGl^C!(6ٚ1IpuHrԩ+REYaxq!aӤdI %̒{ I ^'y!r U|%hx[> ULrh iS+ڣn(! < yo~=~-:s2o.WtfK1"P0Xu⸗MMN?9HeNODUv4\iʥ+!EIv"{6^!oJTpƎZ2 :ӹIBO0k\'n3(N\en2U_(۲aٌHmn3m%J=fM~0p+'N֓7W>eP 0SB1C~Aܛe$VٺR 6ShoCXh/`T8itihc{!S{JSy[U'@ t ;67\tX+xK|J4҈֒Mg|g|̄i-F3Äf~o#^Ve٘(B1'(g |مhu4`'3Z 0UZB;TEP)L4dBXutȴ(:t>?Ԕ:͗Հ?j<[@g3)3؛bE0Z9G `BrjEP0 ;hh xžNɊ|}Vp7ܚNl87Y08 2EAs?a~Mf1>qg9K 8ϯַ\ˆPM(H)C' 눉381(L7SRmY>{R47Bx2W@*~Iֽ+A?qik+"GiF6A0FV1q3xЍ|=mf9R/3wmyKMx˭&JSoyj~%ŽyP5e!/$z<(+4@"X3_b-zqD ]nQ}|+6+E?`^6Mg\tӼ<`d([i>[1f;"8ɞy<<=vh;MQQm_3VQtk#(  /02^2 LAsNt(cE :+|ZBS)(rF"GC$4T,Q_xme&lz eŖfR;d#`InnL۲Z;_5v#A[!ZPcAh!*T8dSC^fΘZ3sLiR&LH\_"vѕy0A# ֣ ߛDHQ)/UTH7wqL--d0E|t`ZZW)Ntۉc" hS-u ¹S /9"7 rҢ3jU M~rh   ۪9қJz`Dz M5I)6UJR?9Vh+q.qpn}(C^e,ٙ!~9)CY(yۀ.D,8Z}(-Յ IZW; iGĕV9;{=0\\17/;}Q}=&գmjWrza; 0O==R< j:qXSֲPO(՝xv90c0˖ZCȰeiKߎC.`I6!I-WReYi0`[=P/rSezPuؑ66;Ş`$,rH]0~p E[=ݻ2ʤȊ!4۪*墿p u@mvj8o+FsHuOY$A4ϩ%/1jFg\*G0GeE! s{o@݄)OONﭘj86kKHHԚ,W(=ިOq,mWK2gW~Na܋, :'Xz|K*䡣^@ 1W6#*ۖ1N<07ԲW"  "XWAg fft8)Q6〟㍌?igꑾ¡ęrnQZ.0u&C"hpf%sv}U1;P "Qg^?ոd"&2g,iY2ih- L_ٳRx-g a{틷؈Щuz:).E%gpONAKaMn}Q+4[X`e:5{ؾΆ.D!T%I/ݼr TvԃZmSY퐃2Sݟ[62i "1I<&xo^{#Դbt6 ]KGVxÊs?*|Mi @02yT!/^}O94 "^2x$3.f yĹoo-%Wݶ<VoN}HDt$nj< | ] *Re/*Gpa<%JjPa|R{*IVIлesb|l}|u]lNʈ¥_!xQq<7,I㜯5Gf4>T 2j|!?@Sy:P-A|@ *C Wy KYA}pjGD\Ʊ< %Uaic}Fy +JZgbs] $r>b:O=vfIsVJ-luG9~{GKY7HQt#Szÿ hw[ȞOʿHpF&L:nxn=)YӜ!(!^yI-e ٧*QεROQ@ÖP" ڷ#sq&@Y2*!e`1#3}re^=zrg_,d< /b7ؼ*!ѝgY2jQ{,=yB+W.O616(+}F*{`DO-S{:Txc+sHb]%ؤ9͆rXu]2i59D>G)ABxS!( XH.:׼1>ȥOk/n&daoZ rZ&1 F93/QOұٸ8x|NZŐzrJ0|e:XW?/G3ZHɪo{L!YgVt'jz~;~J&|'馷Cq,pHD 1%kQ$RB9A?udw!9D38 k;dbKJĮ?/r Ux OFV!g蘇TŠ,ԴF*6E(h6w\g_q(4QPX}ap$ۇ|&Ymm<2PH}!ԃ55 0?y ݬū [4Nw@όp Oc(\& oPV>{$w;IJ:o(Mevq;tBxbƒ=}XR񪥒 _"5̚A4poV= JuҞeQ 6ezحq-pnY/Λ9/"6!8T02wv#u"%$c>}-W)<faZ8zl(ks|QwbQ(F $v CE݊e,O;!@4 ڿ]#?ܜQ2pAtB%@E^--魁ʹ|$GڬNReZpB?,𩢶w",SX)h+G|XC~R%ܠ oE_}opP6Rr4V.QIhx>n{,(U,;'6/v >t`H0*Dqlt0 kСH̚aZoA/&y<3GcT-aS[>`~]' W`E{0<7#޸`ׇfVLy!a`>=jҎo}FMiM&SK2Wqr5pw>0}jh)wA=ۺƇ{71`v`dpZipdB[%g-mQT9{IL%$?5 ~d]zR1줏2 Zq\А61tFۏځA1QMMvmB.=MRaAaL] Y(dZIzQAzu TAʡ:KgT+ZU+}gf'Zx"*,AAPTfªڽb\t/~+qI1_<}uQ) xx_? ew;)YFHg:/>WлDvΤk4]1yo;Xxidǂfؗb%NP&<*'k}55nۘ>B.T4a j#wi/QRd XkeOeTtp)ҝzv̒<0^d+#7+,WSc۫/i4LQPY7 NX.tnqVa1 Wa,F5P&~AQrջ~b<Ķ5>{ewL9PZڧ¯tIE ׮Z\WL=vi#':&tGcZ?4 %3 vlw 8XhV%9q7d_F͚"rݝ:׳|)=eU k ,?TҘl X{0us"SRnv ,R 257]Y( $n vҌ!{PnJ 2f?c8<0ȝfGKEDW|UwKKc _{i8 zx IV~d)60(\ucu%Q0-vo#vQ #r{ *GZ G%9 x.j#zxݸU4\h,s{^^򭱉5T, HF7,훊wY|>o<>_< ϝ35J{`xlD݃i$Mr ǭ\Seoh=D)Qsپۖ~H!PlpKi,;"AqqG׾(Wi(H..i~3C?,Q߶Cp]̟0lOL#$3d3,5E6#ZYd\Xc(Rf*=dlInB:cD \߽M-]I<4P!3KG 8AGSAY pD/S+^$tɏMcut X߄,Uj=DV6miǾ "wآ@ ]^-ݙXmy$foً,~dJ ")w<ޓ}LүdK~٨̴UQzG\2Ʈ7)TO3m;<0D f¨/U/K-w1طnV4{FJB)= cD, _/LV"O u"ƛR}qHGR3"=lCJS'ߡ9 !Į iw0&HڛEe+Q hm-qȽ"N _ʃگB~ % Q:`f} "|mu#,R'if-;sRgVrN̪&s?ESA/ES7S+I4!٦+)PnAgyR>̬ !\5Ȃ>NYNMCtdfA aPs;M3v!TTU,^z,3H%aRRh)TG޿SjO"/h%^ Οvӡ`cN2w[[IX=qx8D`I ^BgE O_>dpZhq8Bkm7 U&H )f: 7UYGL-^[LD^t#LgG|n*6q vֽ D@75b: :/j [ȁl˄--ʑhoU, h9,"YNHPpUZQG2 ~gLE6)-% u24Z-1dءYg~т-Cq(Sطī1^VNz.]NAic-z@,Ij;<~){^E?N tHC;,J\~1/T_'tŏ{QMEy'=.&4wΆ0g*S.eYKҼ"ITi;v\0qnS&D|毋zYBTK~lWa#zO}dEPb1zލ.~UޯAL5]NJcY[8JbɮQCWȺ0fXl;NAP9eE*Fѓ:C3PMg$Ƨ ǬMn!6|šPqPN#d{:ްڏf5t-ZһK 2qt|<*E6m MUnd$%QDVj_@R~9f!ᡊ+ c;HgYI  y2)Q4tslv8Xpp4똾Xdk \WiN9E"1/ARYd1A%j$t% Ϣ\|u4rVՍ8ɨBC))PpX~򋕘_:L;=2r_=U;@Iz:6SMx|n&@hՏvاZrk lOڛ#* A0Ο=+!z_n , d&Jf'1QϬ5&CCa+&'nV 5ԋj<]`xm pѲ*6]SX#z=>jiަ:pW^yЇbT8Κ g kFZ{l6YA'H+ w̋CPOY9_ PǀuѦ!QN~.Uʟ?+*vt9}|3<řK^W!6HR[A>Ye󣲷ϛV1ElT΁kA =e8T|7z>!8`wH71֖L T0U ~cѭ4~CZelbO'QtNޚzj%2fCe!Qws3Jk%˞NL=y ,AǛ ?BS6 H7K{gv RLSy(0!mޓI( :$[Flǝt/>\ަoV3Z3Ӓ$ TtA(E,~ZXzQI F=b7GE8uUJ^x(/e45_fͷ2CgEtyw MX~:c^_C*𰹒us x`l*Ăޢe ڌ"+`_ @C Z!P]ĥC2ugk+)90s*G3GՇ^GGmಏ%)2(*=FBٳaFB 1Ye~W3Dg̎.ۘuJO2,D*tڬ]ȇE& . "vVO{kvjGŔ&=2lp >9Lr ѣ<PHBy93=%r `Rn(uoa-eN#< ԃvC Pva<W ͷQ͏+,ktonId~䅀,'f=)Ab% *}N>-yE:3՟ Z]y8L2_e` syL1X|a7' ˺N2{ONd1u}!]ե*V4ow D,cvudmnl!] (@l(f # ?A7t8S=Yo҄S?e.7ݳg^grFc^O4}vj1 V!u6pqEV(85' QbhWiYbkZ_K _+oKCr-Tļ4EOeXJDu0f>g!:8ΆZ\Ufhַ ŋ~PW59zC{'dhxc*ոp>!3XUgf2+QxJ+eA sr7կtS͘!֫DG^D&4c4&@ ԝ:vX FOQ):9YVz4Wuq35$" sO|"cPP- JeOʬ75_Fo _rH%X}!hi{1,%Ȼ8^Y {1ij3 {)}('9l׹pH,cKf̈r ״k~e[V||3^ .,V6? ~>!`ydZ}dFQc# ّu|Pm}7ɿ^h$~I^;Y~N4$.; \uXbR'4$7'nuau/<5fЎsFy&Yt(>ɣ(p \d{5OfjABR܊q[]ԭ:jL+'o ƅAfy_k\74׆K3:FgOlܥۨ _J!j^Df)%{ "&N`X6TmY4?ͩ̉D j 9,Wtݞ3:*Nn{pE~yJhoMH>4h$cH2~\q rA@g @ vYPmN,vyD%gqS(ڧhc}pE~7%I6Y WkF˱M8@Cܩ˘ʪo5L-u<ˠ]9_iSvĚ&-XXUR2%J0Jq[OeN +Ƕs%71~5s8rq)MK%tI@nʠB0(~):&kte %Ps1#.=UBΖ@3KQ0cQ%00Uai`1v%i>g>2 RwsaJ]>ќ3=i8|l2-x)q\.*UM'Xv@z1՗صT$9& ><?C4**]wԱe:^{Z~PW+̣}-(4Bۿ+`"aVY5CQi)(5b _̈ f$hmFbIz^m္2_Dҿ)W$#َ~i9гg]< ECCq 5ycP~9{LJ6,~`ڝG *C*GfJp2pkȞODQGl3"տm1VPXs'F *DeL Ӣ ugݼct4,nud |s69E6Z}JQ1ȴu [x}}9+@ty+9`qw5x ؎157g}G! Du9DZD*WݥSVJ;Ϥmd\+B`PUDRkcSots]B7ÑbnC-DI@A;𤉼aG^5Cwk.4FGAf>'Rw̕-0,M'` pD]u.R[b;n$n{yy"`q#\4 Z櫰M9waRt6OG-Z>yF9d%jc"ܧ !}DbfX8<ĀeBφ-qѠl8FEw6*E z/*UWI̷-?3L ^U!EңtlZ^'j,B:NtȂ_ ِ݅7Yјu UlC\J+苏W]h^&ɚl&;Ѡ H_;edG لTW8L+_Wsue13(ЏЂZ|O9u-_ bCV꼙T᳤|Jfא>: GoE+o5Af_`#PWYo9Dޮ;#D@ c_틫GY$=s ~?I_~+x3@!SRK7z5B]Fѱ]CEu(}:J/eyYrܥsp+gۭϐPKf#"xBfM^󢤌R#?𘏧JYydAКގ?I#<>gĒkRƛ¯s8&,}5?P%tin%]!|w{ǥFH"nLDNϐHjx"$7g>>"<:MץrHl- frL"8!3I)WjS+%I" {.]нS[/%YZ4jQ^)V og Nw0R5Xѝu s3 ZwPpj *G0r^$[@\hL+˺!ըƾsQ}EAy(t@̺:P"2*P/.$lԼ 7B#'Y!,Eu6̾FKUvyX>OrS}&*hОh5/-U= u~"ͧ> ̀˛T"&mw*).I%~iACǶs; qk~*C0!7W@])(c_kE5jkE#TI Ȁ:3@ziRe] FbQh`MXGBDSO}\QS.*!c=e0;s葱X(<&pڡuFcqeMHiK's /RH YxL̨LYYP$mjG:DWVX/kRã?@Gn߾R/*_΢9٘D ?* qȏ*qS8*I$d&㽆tDjLjV'G-]C|jUbS-2 vn}Q;}C~+&;ty$?g2rwu7ŽL,cKW֬}7G@v`.#/|B&R1:c|2*o^[l7Z0Jf\t&=ZN{$F53N0`@ WrPԨ54XGX\HM 7p97ɬڌ٭Ie YW+"W"ܭ|K(mp/-%tpIBưD/%ni*t*2Y ~)4cg@}$C0;SzGM@uYH5G(8b7jZMӁ^HV|F5IOLUSB}N8W#-Rgi0 {jLUM~HR$rZp"Qӵ2/h-|2L1 c<ӭs[O țнKHDasqv^R[Z#z]tC"\6E\76ˆ8hBx>@/á_ESv˅Ǔ<4FڳbakqnEl(+ӎgfd^y`x8KR}Ϻt3cKBYx=Wt1;t4m[Ԏ\oB6PvfV :hZZTLj~X_:˫^ȱ\JfS=n}d S3z IMqt&tPUMeO*.&g:@"%2k'w/G|yA6ʣ=vk*d2mUĵd#](M̪)I =IEt+z0 Ynu6Ly\fUwj*Cq"󓷙:zAeQ&\vxUÐ'5$1#sTί6}EgwpAm7C48Ȯegg RYp'hk5;|P ҈6'Ӛݿkrx}!D\Ù!on 6IiWyfjlL*T9XAB"VTMDuv1UY贆=Q݈tŎ  }[;2ّ%U;ZlC h@eP4Ok&a2+>(Ω2ƟKblJIP?k[}Ho$Ec ")} 24AJFѕ`>Uܜ٭ @] 1"rg{Ǹ#݁T~*s1jY`A,t``1V#T$FmƄST\ſtZ7]'"Ts圻sD44&U lPt#]#t&Z#~&8D; }{,/6}jmxBǘ|pD&;ފ8e4^GD4[c_l0DH?Mgx 79O أ=e5*1EFj)67V.A|gDbdtdOHf kYv.@!plTxe"W.FQui;gF&ZlS"ާ.=,=*~i]ek-&lk>˜SDЗ)ݣ&-` |Wc7sČg+Ta0 &q;ih7(U %MToO,ҹ-tđTbz$=򇀁5ժtRާzj. E0YlNF& 'SB`;W cпdҜih>ڴ.憍s F"{<d4&3up:[ vW2vu H^uB<_6`toP /WˉQqo0unzdpRJHʶ0߹ аU IY2j*|KWsif sMAYԪ-Qڌ!(~aw}HxxM97zDyN0l}s>ʄڕ'ðva 9zQ s'w9N?8,\!)ȪtOy&~ܥeacN"ػvax?J{j+4˂z-38>qֶOACT?,;B\!Hd7"m{lbZpR"JΜTD/sV6+°z0r6̤j5yv]3)xi#-Zua~ CAtN@EB_<˦e 4M2=*AݼYp2ٖ4<˶<=M9]þMa"&'|mн}KG򏺈iiLZ~єT ,B07!i:q xc}2R6*o,ī<Đ$#<#^PTjD[ j{o]uh]'`q8"2Td+F[nLξ@AGL~$Oc> hwB ~%k$θ]Q1p,f aa,gLu9 ڱ?ɔ`byYW%4/<̐w۟:gZ4[s~${Oi`&e\t pŕ)Q'kaņ,]x'{JnSwS\L9 \ه:VG0r ׎8M>R 6_E+ΚtW״5D^xeš/vBQQl2ѩaE (qse1ESKZ ?Nq/Z_?:Na3NLρAYvXz&NYiI05CƄ["%ZdA#Y+TŠCZۈ2x0vE8 }is&«M??Y'wu&)ʱd˵+Msſ6x\;<0 `{{s3&.LS"€Tn,S߁ڔ{- А]QrP1Qd.Ѷ̓TЄgmS{7X=E%BO;魏O4i~,G\xzy~݋6;{)ep5ߛoPw 1zYLDhF UD 61n Sh!]CG0`Ox.7&!*\O?b.?m4"kg+@AoLJ 1Vǖ(?Rm05OL+/iǃE7~@zƄDUV鋴RQQ!r ^Ji:W/d$6x׵jZI;( [CiϺ("d)7%܎j s 7nd_j'*qJY 8FyI}zֵ?,@=%XfmtH)ʘϳ'نSȞIM?,DC2p$hH?; ںN.7(p~~p"@ qnq SdQ: 9t6@k_x#0 {nք?c,o)>9;ʨ&$h^HEgׂ?78!9kkw^)ݧ.Ӳh%ZBBʴ$BɈ0G1 hF҇ݤB,L`x!XmQtyO#tƕ X/ (4uB; DQ>+ssDW!hbӮy0T@PƝkH ah┻96 ҁR/R2 ~=pNԪ-FG6U Ľy˵x}Y`)s8%O[ &Fx^߬(G%z̡h5Q-4"!z亷'`$lP :#dWΗHV]g9`aXymصdXRUp1KcVL嬴c[*4tūsoΔQڵlVF`l4g~&$h(Jg.GY[#/H{rg9>,o7R9%.q:6댱\lm`>8/b#;,C4~nkKz٥_]s"+B,)IᑨEZTG(#+ᑝAgi2?_ ٘J^a9r k'3mQփt( ^m,GbYYKԗp$$t"WGt%xc@4YEݲ)BUՌ'dA `&€-c0`?Cؚ(/K6D$o\_Hj*ibZnxb宗t._xLvXr"[֤rU-I3*ڽbtU*Fr5 -Dz!u5J',$'LD :u^(Bկ;2[<;ZL@ O$FRѤIݺ{:jؤw?:"v]$'iDwAss(;K;Xݱ֕JRs֭$l>Mo `G#78٦,mW<6-(z\`Ȩ7n}+\wHQ,SBn2q[WL$Hqm/!Vi]1^Q:C)fE<;Q5}VǷ{E~asN3 Z TFi;y "6qE{_nߴx49Ljts1j1%?QSX]^[7rzULx-9)3 V/,YJ𒶊C~63.߯B,1Iy.)S0@&g:;7e]97A?.xӈRQ6,u+pb0G+Bx9 m)/q a|Dy;]CQNqqgVnQW<5!7,r:z1&IM+hҩeB Xf)Z18ѮFыik9+y ߂ NfkZ.|b-!S?6NqL2Psl!C恀"/y* V/PYr?p[!D"۷]'f{K)N<=LÖDɪe9\xl|ak`p<7g &$Vv1uk wƒΉ$P=&0Pr9P3^U43b_"DZ2nw^0WAHȰ)QĆUZ&bd oN6'R]x!Gq䱇+knP?рF5e ^9eER[hJ=se1>@d'@+$a0K{2q\iNhw0WN1 FM{{%6;A_!ۈ)^ĵP"9B}=Lu]8Œw@B2)QfwI)tKRܤnὃR;R@{ 8b=C+2JORdg3ǼLt ӗ] $S$ߴv= "qfO53 hV*-vONov `.1vd؛qטS) wA8SȨVLшn檾!f.Z1@W*KI҉㶙 {Rqg&ls\WX] B/t+CM'̂" n K|@ Qm0s|/(1՛nLgk_ Q#un^ j%SaCD|3%.sPoKzh =P}[K{0LG/! l?5Ց޷{M3D) t#2n6B]@?0D~y(,Oc9B6l쐢F4&,mx I2WZ/ڨ)dV+MЉx|E{fM`W{y&LRwFalfщ].lx% gPV7sw@)%ΑUt6.b6j:Ϥ^wƔI_~I_0q0 o\dHԡ2-]ʉsyGq֖n( 3í#9g>cJv-okKhJjԶuGö NN9?ՓUpnf,*I]$"z!R)нx;54F5 mq`}vctF?;Tz)n1r@>68UqʠC0 f?YV|aUՇ]|8fص+zfaV=q1kDdKZ] `7כT㨱%1z$Y8}]R6*VV OŽ ڱ׃*M2zUezq8;8MRH %ir<=oM}Dk|:85E)OE[ǹy Ӑ .$Ґx0I(KGObͳDB|C5;}7:x#2HrNO5ErpXv0IBܳs@~˧x} kF,BĠkg-V%4TWKy3T8~;Lxw4dyk~OкB .m]e8֭GФ rg-SL~:zLgzTOHˁfh-#zj١|Ke\!6w |}."RsBr(c;n,b%r¬NBoSwĔLGd a^JSׯ'緘׈d>S ~>!}jgUN}};pDk)efعȈiW k9#dC SΖ8)0ĸVM|r (k`+KԴ'E!a1K2D跼+TJLb$s$9B(eGjFKhH3x$ǚRy6H\d`ZI=́1X^5?{|ocӂn'Fޭ|nX#)} ` lKo, q 834|Zsi̘T]T#fx&%uhs{H Rt'1=P"O%6,0zi:l3?jۨ_7OVM@R N M04tӱj:ohJ'R5էD=|g<\QX. t5FXe}ES6!AlKfMy$1k==8nn T6Eo׉0Ⱥ6\bj=M1bl1e.p2'F+!bHu ,ŨF0b@S/O=D%jh2==ǕHQՇDjHߔYtNSf.NDs+87g#jȴf mzH [|BSd5s3NAah5A6T/sz9ȫ梇&Y5 Re+-:,p 7=% $ˍ%U-"i`p;rh.EsS?'if4'V.'/EGpHrʢ^{4Y5@sICCce$c&rmă٩5I`0~D y 9I i!%5avhk{}&CimA-0Y(5l$ݮ }}`-6>-F@&r&U%QdeO<ڛKX !.}7Q\k_پ+a~f Qd54:\hX4Os+OJ=SPrc12J% frfHˊŚę Ab'^"ٰVL %||oxDڍ2LЄ^O*_yJSʼ]ȯqGbB1!<}:* XD.\hSiGL['ށ BvUK*&&3VBmsɸOgGY*Q;kxxx(sC顭輩@p8Yrd8cm yw"jW?9Zg̕n@48y <(ө`7^g{%s|f0F Ix2jz4)3T8 /.<)ĵt[JMO-!h-(}>*iJRBK2EK3t |\{Dĵ=qܦ.ooaҼD mXG֌ћ, نAMCB  SxpdNfϝU_-@LqUCOQ\PT.c'S[bSҧN4sy0ag6#H۽&=Vu΍''Ń}0bߨvnRundiźs{jXid$ \H3yzV)A ܋]$Uq{{oY_;S>q8=]"FlDHIBηu^1]_+N ۆ,L8-(prfp Xq6H/(wY{ǒ ^/?dd"NuSN # fO*Yb%I [ovTiz]m;zv"\$tЖ]|qynǰّU5ے#Trɭ8^60(g 5<+`!;AJkD ƀ}@8 TisLmҫU|-XGwDuyX>Ua|ɿMr u!PƸHu?b/8}u'BMlBqUxw.l'=ұFz ]'e6 /He+1N8.GÄZ,l/o)+::+̮ ɒiy?Y_K=fl}UR_=> @;>Ht:.u["N6Ejӄ#Z?? SNn%Fg5yzv줣ll Ŕ+hj)mBnNP=NWNh+y.@Xd wh[)^ rj~۽䮚j6#DϞk\=y~'ٶ ~4mKB&>Up<;n[C+^|u: |aϡmdp{#,)Se; uǬ iB ľNeF̆iF1?LyBI.ht ؅ZSة~x`ӫ/wkaԤ޶C{t~ Vt)zY%\> Pm7!2;aP+C%IqX> _]X)P/Jw&*y8tsb1VI3qӥ"}E\V=%r$s/m bQϧw.&c#}C^[5;p3DN( Jk`,TU/_+-ܞKJK3F u|S)AUXZ@51DGr[lζNԭ ~Ygyl~[Ө1)x_\68qv9ePpur#h65w6U%&mP{QT7s q7G(ʮgɲ_jzk\w`{=q'eA-- _竰pEy(rpICdB<_?&c_E`rsrg'wtB ENX\D ; S;`9jRi`+,-FNwiXc{aH0Ф`aʦJiJ?OPuWi[59.Dn`j`*^\\wG_$Q ߱3|VwȒfݒUO˶ RN]p옰F3U}s 7:3^ۚ3{-c}ߓTZnp|ؓMXe/1k;-OG' o L0d&IZ PíF ޟ%QGh~3j $N<=jup'ySr_mm`Zī>[.Y|C[Ţt@nLT1J݀7w#s D\Wɦ _ph〞9;+"ĵȊ1E3դ4{9dBJ˛gW(eE<NG[4ru?~/Rn`e\܉~f4@^{\ *h%9H(zK>ѹX6$?IJ!5 ?eiy2O8׸bJۼ^ 7(_ =$ x+";+Zkζ #6Rd2>LRX {vtt/y5{/UmKe=DI!;UD eR f[:n25}*1IZ$>N% 뮜g|d>|FNg8v8Ar>9<~ԋ A~[2Q>G#qJk=dq62qeGx&Vg-s  1s M&3O1/$,4?._4V14mV+uJ`|2Fm_L*GzJ@ݟ8L'.I7f)^Sݳh6=tĘ AhTM1(No$f"wf,}^ 0ܪscm6g:ɪNYb Ba~*,p߃9T~%L'p_d%̖#频1fMDѸޡ!{. ODx(ޥ';zZɼs*Q2HF_y񯦄0Н~u&Ls> <( M5 vW,d[2!)O_DztHak`勨o JhܼSmBkxE./>Pzu =Oy.u t3jgţWwj;[*X.9tJN9{u5N7,tLőj`%;2t;Zr8?Hcq8M'Ǻ44x*MvgI LHv$,7:u^;塔eOt+ WZsmPL۴ԖD"| ,a{F>͹s<@j8"-^nDkl5.?;ydz+3ڐܛXD֒bQ"VF-V>b݇a$½icq8UKmԚ&[9V0/^C]ڋ2UJ{s﯉)I uOW)YA5; AYI --ӣ?ry˼[|fJgSТ`s,$_LlGЪcӂaX/7!7g4$ #VmDxAYm#am曊.A[XSa3eM^wh,DzdhksJOkU$fcAqxyEp*;\y>)r7C.X`P My1v-~Fٴ_n,o)c2ٕ1Bd( a'Uʠk 6ۨcXD2Cbm&.W>@+vib,f*SPg`2@d˯#At ve! 9 $@Jm?¿*IRZ!d?B#,لTdՄa;SQr2\Rb#NQg=rDa뚼0ywx#:\֑m[[KoFiQńu+JboG];`Pt #]&ܾJ}g4~ךP @p"|)Mg@&L!ȔȔdyf }-w13 Q/QMlQN{R$|ؓÞn*E*Io (9)1jhʚx)1Ev8m'&(+}4xsۆN9ࣷftU +B^MƘ|>E#.0J鉺3GfSi9/)Жw&;+ œq)bJ.~L&nK|E.HϪU@Vg|B'U6RUmRmF㶾leC`{?w/г{XpFw%/l=i{0^^~ea#s n߃>='UK.&%>aft1Oyي/5ʅDKg~{ 蘞VOFxYB/G+veЄqN/Gl[< +qE1msǹ:UG;N{4۹AZ #k*Un35arxg7 {gb5e?2XAh%>_țeRSpzK7YMcz`iTYu7}Xԉ5*نg|jY.zod'Sy4[~&0/iLTK"o~k4ԙ!?66nǮeL: I&t Q8>(mtynNK(;.Z%@gd_ ںKtXLQx L"Ƹ)?A#Dr7dtKZa\KPԺO7qDp~}aH(88tYG=œ$( Mtj|ߝvVV>) oދ_Xq?mgma25 ݕ[<Fd1.C v|sePSuؘ. $+.2!_v*Jܶ#7?)d領ƺ{xf"(' XxAWBO~M,ZgrPb;A#}K[~[5ժQ`jAPp;e0ij2@0=vK11R+ F(x{fA;|7JE?;,,Š_5*^EKh6@1Tߝ@e5mSU\3 ܤmSn]=N?Rs-ptlZfs<(-2Z?u_BŸz?(MqݦYxi!=ZMmełAk&&TؼuaT L`qut={'Gvq~̻ 9Y<T2 Wٺ@ hþO:gvi_3>Zȷ@2&By EEnǟ.Ï2x `kv \eOY3R#@jNO\*imV@:C. pJu}#{RxTpi@ @ j! Pl>ҏ[9:Wa%ٕ(?l (~Zvf~AѾǐi3>*7OM]i !pŠ=d5O/"kL ꃎqRpc9>{*{UJy<[f3hͅuD*_ b8L_@sG$|%X z~:5j\uny-~WßPDF6]TA_O[I`Ru` YHl M/16?ib\'/E RX!!HQ|3i 39 %XfLp!]Hò10*9|Y:yq VU=(Rgz:B8 $a3à-O[2# =9\T@39RQ9|6F@36MWЫ[t#ڎzN2jȝYp5yd,+@fn@F8PZT8=ݿd~WUj]r4:țQ` kmξDJd@A3C B2ҽlbr}Wnؘ0-Y-O (oY>rD:#[7:V:7ln/M5YNJf9&~iD$kut ]WcpS+:*mlk+a`6./{qV}jch*¸O}ۨ/-?:%" h̃(E9L:Ay^w,v ]Y?UuBz u:#kQAIf'ѐQqɇTսt_:rTqM1ڹ@VƬ[%?XKUk|159:ì~llZryFK :k9o{&iSU1 dp5@ZETCuR:Wꨗvrxľ_,oX>G2*>7ݗ<>i< ʨV0+Ψ}*{ں U;b&I=Ei4wlm"<к]Ћgr[ܗ8ޥ]s&ݟ EvuE%es<$I(&j8b"njZE!AwfOCO gi*7[A|NAQ_E-R82r~ϟıv"vWז0U_XTqD(WRd["*ij\):|6#nR;vS|Μ(=JޞL*85IYxryw1ڧ3-f -ޭ1Ӄ$F՚u]A/_1^ͫ|uH:d9gMEq]QؕDz8"[=(zaH%p .KhݙL hpWPy/͇}\/A:]0SE޶8 jtdj{V\hUO#$WYxmfD,Si/_] XО*b C Ux"K%tؐMqFI:y<8&F5Xsd⿨}V*'M( S6}$hc v6!aq4E[nR>@sв͎Cƭy6o#TURO|F?oʤd?g^4EGyPJ?&z%1]lX~W?< {$[2Os`Z֭di TF &,>D96"A! gyY8k}%j7izSi&yMQ+Iiynx~$ԟ"冰+Yf]KJ(W ֬/>KV8=G~A,?J|D16p U1xZDNA>A!2_׭՜!,`#% c2sUFgǾ$F~w~*ze'NLuFg Ph-Hc|LVS[cz zU5g`p?C"gO\ZWeLl:Մ(q^jUzJ0?6yxmt d9L0oRŦVLKlY9B&K)n2P[OM\Jv|@ 0G'Ҧ~*A/ocdFƒT7n{mL}I݁9!bopнJX_9/]<([M%NV%> ?[W Ym5 ;SVڥ"+}4P@c[<*#Ύ|7 ͅaEt?޶5ū@Hj\BFL_u0%@`ǎCDDW>9̎} 7VtS<@yȐ;؂~R4j_ƴʔl-laby]k#,ڑv{\dBVIp;-0˺IlgH#pk^Z˂IqޠurR ͜Ou"[KH<%WopƣxQE#$5B4.Se=E3pQ\"hxp.t@KMz3H<%>/>u[(bɤpͿKr 9(¨x' l?lʒ|۱\s_Yed\# U#qXr"$ @p[HrHV^xΛ@< &90]H?׵ʸXn`hʫ1lz.K(.|iZ mPZ"q 53&%GXͷ7~5M 'ୟ (K~xHXcvKůvt z^Mc?T#t@p2UlTȱbU$qxwq|LlMvc% ҫK?3w+#J<7t^{.x?;Hi<%*[ hPPsO"4i@to(_g0+ @MjߥDDڦb–a_~FH;> tI0U"w󳊇ne{[zz#г;,nbQ?67᪱ ,$HN n!BN)̥!s~|g*zwߣ[:; ;T\sNV.rEyOe *2Mɷwհ=b߅UNӵSt5%(IWjg|K&:ثpOm]|>̆'Euwʥ2$1``nzJ4nw3QGx m7Y>KgMM]^N0dr a>#NL_7-!7.]Og2>9U9-!3{hSiű!j[[?^WW\7q7*M@X@ۦ&0?ϙWOo@0%S5S>܉gT7 )*4E1Ͼ7E{b4Cm{׆҈3sU2jGcZޣNO'5TbT{'6 t#٪JL+~fķz{ABOm{%gy&#4"xN{uyﱪOŘSc߆IOȳNgeݞ ?0ˊ)tDΡgh^c~V9$Q\̀?;CFZih8hr"p:y "p*@3$hO\zly*RWAN$]x3$CX?MjW,z@YpSM{Ώ<n)PjfJ>L|M yttK_=1t̲`?ςO҇˓n+3S=fGbDEGJx^ a'Fg`f61Iq7Cz.PĔ|]*F=X鰻 E+)/U<4vϮ؛꺪V""R~ߵv ]cs̪Cf3T *Kh4"Y\^5K_8U6u[e AQΏY{WzO[fxm*?JhwM+(-w1&fBXI[ 7'6詜ҭA[|9C_B' ]@Mju3Ө sQOb>!,';a|?^t[ۆ}G8߫>+*m4JpjKrjKk?`BWx#TOi1҉Jњc._TƁo;<٤q*C W(0V?(}~ DDiaBMhZ]-%~)BUJDEz^׌Irm\^E'pH7 ad'8e/_B5T^1)'z>(M4E']My ̔)<8׎\f=M_?NXA0q]Oä{0^K f$AyUS3 ?N^-BZTk|" ;CKYW+yK誹G|U굅5b* dܟ [u8w!*Sخk-fp ueLiH5?P"V~*ƛD@q9t9ƁH@5lku/"zؗ4_ξF_!=wG@T AgkA ʣO5:i2c⌷/-^M_LoM`F无JZyse~^ƏMELB gT@va6R2A. I!oE).sऩ/Am ƺ(Q;R@\6( GW( P:~DHB" '20+rP3[7c|5$_{X'ԱW a8-=İ ?jxr!Goldiո(W_$>G6aXm <ok#y<(V"!VYN <vToiP=C 2 MΠ}! M^0g_}Rȫz" X"1_;#5W%ԾYMsEDn 4݃?\Z /bg^_?mB{qԱhytBYU^W9+=ޓߚ7~>R٧k]}[.R#aݳ oz `ߛG*-!'&g{v7L/ÎF|ǭt㞲&O26.R$biYe]dJ7TB0ԃ fQai3N߁bD:Nd #ΓIM*֪+ۑg Y% )#w_T<)0􂪎=[FNU|}y)sU!(T*:8E)c-ekxDw&x3| ׶@˜M Qcu/!TYtFPh˔2M#iIv'|Yy'!N͏1xBuY[]oSRP qi-^9#t-s 5pj@>܍kCVXxw"P KF0fZS/Rq?Jkޛ0c}DwxD] JfdlAhnA1#)޲C)Ϩx|QF煠$!b?- *u!RڽOc}G Ew=N[I"ܬ5^S[b (Y?z J+K`)6K$*%E-yhZ2/էND7ibاYr@^x4{pyBgHAઔǝߤAe%<6YFG;RLq;9K9 ?8艒Dc23d}geR;d@V2&E q{lmG@;P rZ{M==2nҖIWq睹hcC :[<3ƁVXD/@R4THXqxֳtSGhŋ&Z̩8]_8RӄE0h4|סg0qWTp3(H~`r9aE_jAT0 TAohjFGݠ'_ū0gCX@bP8W»b|RɜN_k4=rUdIR\ovIuP}\Dl.\%4aѠĨG*$˕Oń/? `잰%2aN=`*S̉h`$֣p|%w#`_; o8:cB ԚG5fI *S QpTt;Z'/nqeZw*ŘdA>ܤ[/liZI?`<. G >]]βrE+oYS^:0Se,7@O D,_1τ")`q rotg:x@C fYuY+Ī D{G'~V#?XD ڡ9PBB.xlw)(9#ēWʊO`e7Ɏ C!H5l?2s?̵a~-1NRq?.}){i(zVЍv$Z|ڧG+{l/l 'yxRjU<Vr#ŽHo– 90y3Llp?uR![?`̭$]&T}a(r2x!c#s)7Tk> Q<=tȉѹfj!b{EX3bn8$P77ɔ;|ƥ OJ`&E9 ,ɠMLuzc7}1XI|#2JF v՘M`+wnfUm^4Z*3>%[[ٗunoVŅn {f8G\o3Hp븑)Sr :^`yDtY6n!u8|0ȴ,~MsvFߡ+n}B+[WEцxD[f{Z6)% v3J.H"+\[M|K c%+vPXqt\">ɢy%3MU?Ax$5(D Cݑ.U$tQK>zl vԐZ1Xzu,}|d h&G,s#BHq ,2p_2!ɔrߣ}SFc"pьVY UEgpY@/SonwEJ"Bs"T`!hg("ߟҠA6!,L)~ӓUG)vX2X`x+IП-v>Ac9籿3,ww?!7&^TQ#@N6r.a1V 3q(JV*ώc ?I9Xg#麣5+! ژAI8Ѷ޻!B5}ĎI[X{8`ɲ]Kʟה2-);Ԅ)=9W5f7TC6LZ?[z TjdgXQu0yizp7M6 D#lQj f%+}# w3ېp!XɬHry¦GO[P#ٮXјyQ[ݝ~Thu\_q#3ۭģ':/M67t1r{k]v8m8A(TxjR>uGvK*d.D-kF"eqDndSêJ~f43 ⠸k-roH%!wmXn +y@-t7q.Lr?$U l 8"읿\ |Э:ߧz N/V^KE8R-ӏ%{&d19U^,|DHQĂ(gSa[ %ŝ+w%c]`w 1i|#2(_le^E"]^ ğ5^kʥJ$*$R7A yIRtOY }_&3c":njsX>tylX]ᑻ< S?9MڴEabjB((Gr/Gtk!^rʽ(q*s{!\,\4 ?lN.:r.UkqH%1^U_tV4W7rM5Tg]0Q "=$>)&~tvZ3O JyD6~ͺv Sw'FQFufT6ElOm0+kp9DAKD%d*z"((+̀Q~D<(sh^x!--w5y`{4Q_4OU ?_E`1v2kc5`3#T#w=j|q,\g b9كiMwMSGE|ytcY8{!@ȋW(`Qk7/<g&@Fqp&B*6IKNHƇȍM"m\]UV͈9+˴uT=[dDh 0VfaM;%?gۊ$sG75zIqf;h XZiP1'x {Qn㠷:?՝bL qANs8^zg&A@˕Alj Sy)NFUc޳sUף,%*,A{-ko.G?i"P$?q4$O{Is6\7մŕe86IƳӔ0Oou6箹{CW#sf6ٸFϴwIäYF/%“wm󾉧%6Ԯp/|R*?t=6@0xE?'e5}XNsP j kDӶl,acv,Qd:5YnB%!e: 2f@էzhj'[ɤ5TqO[ ஃs]! ҵwl?7CΐHĘMY"ȤPYmjc4rP^(8ϑ_g%a;.J 7Hc!~P=t]bOIhJm+Cs ܥraF vF5}8#e?h.5JRTFtS"Ϩ uۿXL&M#tg,;XD9]vNHkHR} }Oz'Dz t+Z;Q+/%hq#'+ Td,|Cs?~Ob=O&F/z}k[WWi*ѭ8tA+|UK0_9qi2BŦWK_kxP]Ua2J̽4VG۫"pBWųA@Z" N^2hsz%:pX#oª1U5~Ī,>c7r;Hg̊,Y*4.OhE.G-@" 0;Iu]V5F0ULkG)|cXl&04⩑g%s1|87CSTr( HCϴ*J&7TDjS˂{jz$!,*)"Pb8-X#>y;2@;p|g+JZXnto'4yz!yE nd)W֤l1OxQrzA_c4^?OG+_|(?'NWb2CٌJLȬz (6/^eoQ7FCB3|5R)2K3X[NiQ;1 ;y?dަu|JH^:|KRc[Rasuf;]nDIQi7Z~:TDg1M>"ϑ/OԱxPyqbPɗOԀJiSxF/?\-fDzj%mwHfϙlΏEN#!~2q U=DZѠҏ%]bw|C(8K;s`IYcOp$HԥB#B dR!^J" JZ7S: qgp+ uvwY_x R;=p,IY&e)A?rx.Dj6κ-oPgFOc!d[Rܔ.CqoMARt Ȗ)DdB뻭~sZ#Pm\oP1)њoRh{0xNHUSpq.LڎQPPW#+懪Aݭ*5#L4X|F-5M$؏}#PdZ\Ղ?r$c.:F|k>o5}u ȽNkkKº2U6s3vQU9_VyX&t3U$)Ş7%JB~ JS&W:0?DD|4XeN>U dwvW0*\%><\~q6/9U2R܁)٘?by.6^5]X:G3W`}$i'΁eEMkJ1Bc!(mmdt8f(~HQVjd7~}9\B*+qq]tӭ֝Sgy³߾^KʗFSH6i|bXf j2@џЎˊCbZ(?Sy2Ei Dܵ2l!4=lHjj:8zU)KrPt|(&oTұlIq@:7OBY՛PL7*Jz$+o'`8_sc NUT`掔 zHC/ƹ]xdFndJr-[W `" Andq&=@QSwZw1A(@٨X=G , čҿD}No'jABK/|%s?ۋ Vf1;KS|Y/( "s,餳z>;#l @j{zjw]5r׀(vDP/=)k Q^f[ϪZ"2mcNcxTҭӪnfvA2έ*-ُmP(^NS7KlA*?v}6WzrdhiÖq]rqv":(ۘ`xxgrLgaαt!+w<`ԣ 滵moUHIx*Z@#(g`=D uH5 MjslI «VRrT$qդ>2`Z0/%VV /BߛVJe=mPcW;bu۞D+{o7J "snǑL[Uu0uS:u#w2r薟Hh+Z}٭UYU 6 M3*V?@spa)X%؇\; D9%z  qO8bTmNgB@oIRNqSDp>E]ԑ<[W p\3E1 ż2-%ѻd@We´ƺ|u R{:6]ldKRs|&/.($GIN^vfM"3jo 5-"V*;cnГuǎX9ez9ok(A>< &rQ R>'c1,3,fM>wo%h0l&mq\YJg%mC]-+jwL=rC('/ߟU[ V[ѹv45/Rm@ d2XJ I"Hnp+XyՌc# szaM~Ǔ6 !H^ ^+PϭX&Љl^a!a a5Y/' IL3nsS{7>SIST]+ 2'`͢h #թOa P0V`= 4rX`ݓj+*(]Ҭ2rMa]W-v y/cKhkE&\F(ǗF(l8&aQEǫoPт}ߘu cq/ДѨM}\]Lebw~6"dt`= ;jt8&?\!lD\\Qخ_0p]A@ 9QጰYp4_7W0ʷJ%܆$1Z.WUNIEuQ?p5F$DmRX@:oLŻ |’BN#壌6εnnhsSZi6\n$e"PNY`hEc7P6~!vLFS|3ZaЩVxUmu,i|C'ph<07%$ᠽ8cqFdpV4%!p?pLtZKYڬL~l2FMN$oۨ1s 2$*t2=sC0{yk"|[w (+ _wBB7 'ڷջ˦@ѐLuiMXDG5%UGl̗-SjUj0@z_tnrK`{]ܢ b}4~Xek\ɺw\h: iGZKѕa¬U;mnx$=ye"|/B]BjvBk=%os"RyǶc|94_b @@Mclr w! W(k@%:n cnNN#kԕdZF Pc35S4iQDWwC ' 36yVS?H0ڟj73 K1+rJ[@e)Yկa#n h{z;v[heܝ1DWg6LJ֐xtSVσ5敖;܄P:Dۿp\9m@S;ɟKqB,:Fv'C/5$,ieg%o2HFl'I*prT.㺐f[*zQ;ņSLE uqQ(Z]`a1o.kS5q'Ɓu^91 J{6{f!vɠQ=\_Q gԪuKKsƄN-gv+X]oR73]1Hym 74w5b|, ZT~Q龻<Y S$9 3d[DcPF$SSQY){JO,T[֠fWka6D3G|E>\cbGLcH#6TndM6:F{&i^)TФ@64rcMw/mip#Adb-bv:Iߞ-ڍ|U|\hŘ 5X I]{Km4Q/ YK%'XdyZ,G)PQxwJRVi\X͚]R9؛ӁQ-~C&A%pDsrmat#PrXZ$+[]Ou{R(LvX:,%k9dȘc恆i-#0E/Vi@og%SAt Nޔx hXkzv⻎25 z9+435fɵ,KCT>v]SlD$Q1d~@RiZI:NE8biJOHN wO{*] Br!t#?P܆l'ZƾK(jk %:N%*3;̵w0 R{w3 K;%0`{rSEqN*; SDcE(b dsb9ayH S5A2leϓG|N4~,(Y-'qbp0RJxSgw^)P.>:бV<]qKO?fߗ1 M(ʕ92>3BQL5>o^tnWhbZ:k?IۼhI)FryG' )Н~=W/k VeՊ];펖4QS%6nlR*V~",xJ *.֞ߧtRp"VzZͬx4n xoFˎnIeXv~B[B8 s1݇\8 >K5v RK"ӓԝؤ\>/0OU޲cVqO s)ÈiRdRHA {Mg5!Z~O"ipf[\]s 1&h~lڴpC]v<Ÿ;*yA_l/I'f(''pu."S%9 i$u2QI<-GtSh*͌) \7GeX|4>C=7Ia>8 9pPs:0 nJ>k.?KsέT#]wIlKo=DMq--g%of%’×'#qQ=06d]u YmDar?d3Ww"y`L"S.5Uf&Wm`bl#9qϤId7F G"*T bUQ 7pj` L1m˲ oJ-F.^bd뛈L(=J.:㻁3*s'H=ehL!{4gx<ҳ gVW{koc*&38mF6vOG+E`47Tq^08;>j& ʕ3-n_@o-+b72rj%y7:1S)b 2 SCܡl1h}jіO4Wğۃt,k+m3ޣTZ7'ZőȠ_ EPunVڴ;} %Jk{j""ZCHfv)v4¡/l䮎s'j:  ^Kη):hܯ4rjO"ٿ'3bxsxMcD)cɿ e7C"zID sS\n"0n+;/Zu~Oa"?qC;8Rg™-I)"Bkځ.Z3JI0(#יh-$79ƫbo5IEEx.'L̦*Ԡ̺L-`[*1Ey%O@\W!oHסAj_ݦRZh,F3) b;ؓvKۃAXPcd&GEs~}Q\'RiϢgۙoKqr'F:`i0&Sh4w9[։J2cm4]o7j/d8ϡw6X80*BLk.^3ӻP-ש4Ho}:NjvY3lj3үž;ÊXimvNǻ KA 6H]Cv-ו4ۃ^`$p=`:PIi2ٲ{1B1A 3l AluOv*C~NS=̗%ȺO=[Z,6xБpW<-jJwKG$Ů>w\;OCK5o`/cڥ2k~4d8u{|4~w"[drYY(!Vr $AI2aBȯ0!گ}vVF}iOjcyj\#W `t(+ {==Ř0̉9S Flo=Q8PA./L/ s-뭮f^j[0I;? c3"(BHdjs{MxU'[!:kMz(0ؗ-v2+C& !诋2 !}-tL0o|gAz’iSh?TܔiL噆^bB`"43tʉ|ѨrXgo"c;xrVLDTr(?Ǒz&wYRQȜ:?GUe6%VX2Ύ֎~J(+RÃ.2G("ϔ6YIɇx* .)r0lp kA.}usɄ7/u;"\w{ݥz׍M*}$sMe&>\o4=EA!4Hku-&?HsoX/ U0.{<yeH|H(q=PH߾E*Bst  /3hӹ+pAAs]+hgHhQ @^]ÌOpe%$o:ekI,`e}wVjgt2W5y hҗ֗,oɓֳzP$<hzCka)F~lRF)G\O\,`nҰ)j4^. p{3:X5'gאʁFԓ`J(SEU2M_zf2#w" AGվ[;!YNX={ ^/z\K޷aa=n<|Hyp%)/M-H]aBjqDD,ӈ>).[UNB$ D˷*$B`Ǣz8`7zҟDOTH?-RML[2<ȁ)7DŽ&o/DQ3Hw4VƧ@wgCݒ14>aZ;5Q7Ln3% FɖMMJ]u.е\ f]FjOcu P@N)1SM:?&\o{Zӝ WJM_E5#$M\b+4Kmm(;6BF'jd]'{%H9K;s`m1kWQf/[dŪu0)> ec;_[׹K'xy X6ppZ #%_NW2v -+5c6ei/ț/H}g2\hu2:)W[@kmH֦Jӹ W9_Z}]9B ܋2:hnu6ފ&dJG&;ڝ`ȇI;'Q}QX6*}`8!voJMn \*&QGܣ 7$&o{}Q2rJiC'`ٓik v=ڲwdRU]ʘٶCZ1#S^)3R 4DuUK6-)ne>/3z Is߇ Q1Le4ߨXM 0-kA&yIL줍 @V t(9b`e1'dbj\Fϭg݌z*rqLۢ,QޮF+Si#KVm@Ja hۣKE&CFWsuc =`Z>8 GB4NT]xYVձ!|`V2^%Te]tqeƪ%3u1 dԨNT]x"!֍m_'&;U~Ue728K~Wl{~y 06D쀌2h M<:MoC^!WXBZY }bo~XbfG \m|]?Oje?gڈZQ'!X6 *HQ`USP &KD vmB_z1&i3fRwkI`WA4*{aZMB6};w #H'oruZ>wIJEs;]DkjLpLF@#GĈ4z1RźUn ۘ|̗mXZSU="G\rAs>O?QaN0҉l{ZV-1Wo07w5o~FSakHYCZZӇ$wwNн/"~8W,Y'YMC2>u <۞͖H9VȎ"|#*kG,hSxkF<LߒQM>?6z0{jn 0ZKܲ]بoJN\NQBu#MXkȪw ӽCDZKY׾B =bYN-4KVJ@M 9zg;{U@‘d:ٝJ\9QvJʂAJ28nzwx/St7O?nd|&o$!nt|_OH4KMC^_ c9YM2Ȅ~ jrI9 C WݚĊ,8/90dq-MsјH%;f՜:~:ʔZ,|[R!Vthz8i1xN9Ukd\%g@Y3  pKJrC]@Ixp9dwD5ʪv5henrzwU  G7c3SԃGJLqHꫴ(4֢: s/İ?"IP@/Ghގ. fyg[frW758x`V]eexK,ÁҷEz qbgP\gAPz?\P%bUK;3",vS3IۿQ9y{1/Gگi3H.Իrk4 \Zo-=I{!rR4bN2ט1^ؙ$j %Y1~"ܻ ,f󔻌q^\˖R~W F JM?h6ŏ07r(p; Ǝzk\շl-|UI'D$mP=* g,`o|p1XL}L |ӆm~%"%%4غ4~l6N–#vǠQNY jPkdG 'D8ek5<&Ig>>`[X?J f7bƬh rTPi)'_\1:PrBÇ y҃*7w) Pb0hF`aRv;@M+U-}lTzcxv)$l ·ׅODYptsLdkA?! ~ߠX3NEq"R?FWg ]9i>1(V]Z0۵, П ȳH9y/⛶Xh7ء2 /MHtj<'o>`)^3튐ŨޭB(b4A3sIvr7J͓Tte7D;'g;\z(gm) Yꣂyy}!n~?[g2L$uCJ>}M\%&+;<_yɶWxD5aG5O$UEDϰ,`A~/(;4wuD AkW܂Q}?9 w3f"~"֓NP4;k?0g+ [iqjJsYOyR ܵ!u(7X&Rsjacg Npv+`bϠD }vMmǘyHR܃@of:C \cÏA VrMm{Rhغl4ᆼvB~Qt볝'VC@?bZ݌Fh]Rfq{n"8n ]UPLAjMzP~A^#U*+ ulttyZh)R!ںpl59#Ikـ6@L ]cOY[2u4J حT[ڒ*51Bz8|@=6]'ٳ.g4(!qvu ^⇷ *߻%v;y҂m_.cQ.p;M#"]7oO!na1Zp:OC`PPO# psU, "(^R5JbM 1ni ! `[+dƛA'!w6/rswh-:MOZY(;ǿx!Qݫb4OY ӾKj0XW'*#i)G{1a7u%A-ޓ++f362֯I@FӰ6v\U _8MRn0&XDOKD/zsl#n<1_1RĽeYXjP 9t,:| }ko7ߪlwUy"ڬ뎓h:~|YI7h.`,5J#'d=`tQƶkr GÑ5+Mz3`hKް-Ƒ/5^PG (0qqvjD,lB`—HCE]xzWlޞpUW#,qů+}f _7XeZP5qE?P~aY՟A.BWF3Vf>ƼC:ݧՠ&vǁ+|bǨ?{"uvuNýOY1HLxr?@҃n~ D#,3w("sλ\ܬ &vC6wvNRSֱנv$ǖiA hq$Ac8m5.0.ҜQ{hPHR%w7?f#{hGhPA6|@lTvXi -v_?gO2T'4Π@Az/a]/`tQ␧8]e> ! 3A!zՑk)E`f82.]`^t$E5(q:PBAₖchUM/5k0 '{zi 5i' R%ҽ8X,uV17▚+K@eɹ9_h5S8 -#LEi=`]H&$K5p)(P.F?E4oӓe3Lu H.S9~%@aə)B<8 x^@F 1-? #:0NS­N+6DK,1Ͷ>>I[XA'"d՗ۀ%") (h /#?^)z-u'_ʹM_;?FzDJҰ0jRUJˌ@bre] ^Xm?^Zξgd58gJJ\Yל@-rIY0p^cKaZ)xP<6DۋCL;qͻ<3wc-DO g~6RƵp3 %Gzhk07 L00Ёיa׉KtP,Z+C$bVbkNJ=a=]*i&rr ϩsvLܔ?Gw([$/O؉rGƵK۟p 2oƱ36˨5${{3(F4bc 3VrSўAU=to -1v4 Zpu> J{eJ6V.)7':+Y ,e홬w ֆxiwT?_Wu‡ͰQ.?uׄVv5FܣS MI4&^3T}5FUW[X;[8ҦYb"~ٱYr i0<3N CgRN޿ UuB"ي!ʺlO$H|\-G-Nգ}5C&Wㆠka}~r;C-QVfvℊ>.9 ur5ZPW=Qp?_73L'H)}Se*< :Zi^hMté21b?/$)"C |q1\"Z:N$"άUp͂M8-)3<"WLfauELQv(WeڦG$/HRb+ChM:;`TdЉ+U:g\b*-=,nU1/͗0t"Rs׊0&\迚{y> G곢ۙHpĝr(1n-gx`wP¸'49!"T>.rqh6x*4 7w$eώ7e_ktfR,8"=~ 5L~ĸFWӼ"d>/:D? 3E!,GrԆG'`~HtuyiV2Wv';H?)n̴ +M߸+u5lnjnse;f{^Rz "~nFB`LK2"RFv ­_fpH益2EȂ ƧJMęs42}2㔛^="a~`F3nqLƓtOlMV4uD!"@p4P3IM厴F|vfe"|5b̈jS V?<ѥsj ~ "ЋV";N> bPVTXnڱ GĘA"KcѰ#d$*+/vq`52r[|DI D Pvnc+¼!/Ǘ灍=_&X=Wg5>)D0gZ>-ybxjo^ pZђm0A+E% SQ!~<aL<˫IhL7xSa ]〘^/| nʉ;P<^pETͤZ5R5nb$7UC9H-vZ- cv?i"wGvE^W ^af' Tg8k97ь([s±x` :rX}~ШW^8UEBBR"O4L[tnës<|~:'᣸ӞHiT[_[?oMk~gA&qTGOSV@(BhF]CBv-I`r10n@u5Vܭۇ=N|lG}Rͅ= s2Y-[j8> =6!W Z|@D!pP}wv3[<ͬ͏uKұ6g*&ZJ0>Y\O{ktkEp37K} ^4pW=nx7/iMi$Mt`)d.^iQ6Z&zz(5Gѹ~V F" 9hreq,Q?;RwjF}p!A5m xQ-A.-vU:`. $rwh#Hg`=`9KI7aqG_ ~v@؁O{vHmfLBކ.4*%V_8@\Y_Xy'f?&rs@C.0d>_NNIFEdgmb:{)=e#iܥHIp; ńޖg]H& dO5 ;!B %>|ڻsHAlځ%o`E I % 0FSksi$ {lqj!M6GmlJ2Q忧i=)G2R7[Po](k4 ' uF5V"1IR s vQ>si&;9oT,tL{d{00 @) %R<u-H [WmL=pL#FA 0bQ:ՍLxyUU%s?y2ץfoNrCԒcd>):I7s<J|mGlŷ;EIi B>h 6rMR>v#8ٵ L#>C`ܨy'B$mf_R;(g=ިFі PśSI~\he<ѐ<ֻsre BT .9#l蝣0Z9/Ă2c+3] q_N蟻%'6-GTP z|<6&go^Iʅ$ki@pj\1V$ƢQ[ioH%JP~`mfJ!s;8,L?ƤͻlnޝqFF쥲vi¦*Cw޾ԓ6kxYx$M U3*`4G !m /'M^F*C2p`b[(c  O(*"^C18@9n;l5`dvb)xug֌䯵[]~/w鼢]Y}$5gyt[D2=Zhw%&':=+5x8Hܔ^qJu$,67ibJ5leAj RÁ8Dz{#hxԍMDK/xP]؈Yk"텈n=%:UOE6;q3R?\b.Ht5123n*K2b\cb$mFK٦wz .Tعq!??OaA <%l7-Hh['Y͆fuQupQGX (MۛI!4!N~&h30A5%p--] Ԍ(߼;F6n{)=ں(=lu0G9$V{5o}ٳo3kU6Ovbto$9 N=K%d[ "ZS ma$ S [[}Fs~9ŐhpEy#Ocۈ5b jIǽ1|Qqh/7򞯘y6wXu> e}=8#ўPcqݞC>9 ] nzmɹ,bo;_ϛN?BpLO?+/S8Rk \ТEADhdKT?"OC&KH7 2o;=i9їc1ɛB#x_ ˧׾!ׁ>+sZ݀xÁeJ褪v/h8aк+iezxC%MI@[BԎ(;FL~b;9KV>si%)9~/5AfG 82rE 39,{~'{,^HTl|V_Cֱܱ,yJH)kO f6].<[ wyaZq Fqy[5MQu` %VX,XuolHJAs/#[uIZ\׊iE;17 Wǀ\;ߠ{RnYWPd _K9)+#V&,]͋` 7Ԧ&|#a(>xTg/:`ߐl *8@J7ZIkdvXW5)ۯ_^CX)~;E_GaAB@D2 z4S;j%~S6- f?Йc9S mi5-I$d4}^x‡4O]J›bs hM^:5 ~__#+8^M/FG `TzoM/=2hOÊltL'Fsz7o\B:3Yr:l·x~ TltaS'IrW1 0M;>'[I6]0L&>ҳE$Ɯ/_ _(.F'º: 0SO|[](:ƹ!ZIh8(un*rtҧD5Ktj˾oE|H!C̀A̾-1i-K>$hzGq ]`? -PBjWEܲ|R v0^FZh(ݧ0m7*}2T%@_%Nr}LVWI%@|6kPuMw.k0B,4f@ E[ջm^!YDM髛p\CksC MuixC^ȅD x iO*-DO'YrA$|H0D#pO\YOdx+t†('Sf5˄?S5y'A&"m/q*>&~7ND2Y9?B<p̎ w:de;(e-5HS.AZvﱚP?Aȣ)wWV@ĭJ }:$_C (&i L3cs+qVbF""bJ8+5+zrm zK Jsa~ HT84x1x,qAؕ P-c1cqN!x;@ sLAJ8h,!,6{Bw|\Bb+?((lo4[ 0%g.‹Pw^¼R|sn02{ߓ _w﮻.bC vGyGaTo2`X_9A >s)mNooĢJLTwMYNt LpyMM˨0s1Ռ3#dyE;$Yb-so1^XqkH3(U"%GcyMN֭/cDMs!}m_cB4$a Zl0F1Bf+~M7vXZ,UgN.}I@)?\:&Aض06/UHwy͋C޵O <7cΫzϥn;̹uvٿF\n$jT)qU,|K z-):o\L/0c_xQ^D&øvFƳ^F:j` &Ƀ钚$rH3!~>|$$4F$i^ ίfykx HuMԒ<or_{o$DŽ<) [rzF9o0UJ9{ ȕ# btZؠViGBK$S``t,u:aMZij8Y4=?Ttnv&X1qhyS1*Oef %Y@ž Y[˼ [2TWYDR JSΖ 1k>Wo$FDgܢޛq 9ihQ- b24. %:*Z<88 u#%.{`Q#09A=8;6]5bʉZDofjԂ6s1>Ka,:]V79 d RW Ylr(/qEGY'~VN!9#- o/LN};PΕKH̡Z[B\\tWz%tIq~:Gn2.V %`T .X] dWQN(uZbyxTj[,I\J0DI2#`H+}Iho˺!h0|EP>MSE^+"F99Xr!U;J~A,<3mVg}DktyJ \lkduXtFl1vL\um^#F:P K@#c TG:{ 4Tjn =Bwt`9U&Qqt2HPϣѼe] R)kY123PR/)-\<Ƞ J.4zk $Y (U9D"Ĥ=20͎rv!toX&Mtkwv~6kL_̭S!-\+.pe抄E"Ph\#71'-t&:֒e㻜F㲯ޘ #3p#*X VM[*HpyLxCΣдv,1I 02 ȄrǙHGMG㥹&VTmjݡ\G wⲩ"lCf*+xOzT l1AWyr0#VHyp;Rdgﮛ2htʜ%4a~üB2gjEsDJÕS?7!/ I >*Bxs,v B * hnk`n*-Q\ BٿēI2CcWSM1l/K3=[4idZR.:eQĚqp x[srpb=LmLqCŦ8I6qW&>+-Ec!ciS nGminnoaf/Dh.-OR~86 ]|9&{wkqYfΈMjZ6>9u[QE`P|ǰȽT^$2{gטڃͶP;u_( 8,*&,鵿Jk mnb?L mV[1&]]JF 9vK+_|)/&loS3/>iBW>1N! uq 8"<1G#%;o$VMNƷGգMwi6p"Ͷ\lZD#J9iSD 3TDބe8th_8M:**b]m=h.},x kRUp`?hc1tXK]Ո/̾_NN)h9kt̚R%ӖXَNwNMҟ "3ԓ(me* ]84~jN;ʼno輵[mQF5%ByW=;3Fab7uJ:3Bţӄ*4 ~Ib?oӣS4IQ,L#h{_S+·~olnS̮#c/ؠ'A lm݅[I0|WPr(벒yuyrG!>އADpp%j"#26PC"I$讚7ٿB1 Kltȇ<WTZB6 P}3{cmӺFds@Uq)Z\o*3s 7 ~j:-Q/[<헢ݩL1qM!¥Z3Af[O .L}fv+/yV.=qngD7#}ԅ0Dz,X4d+ lYM9?6)=6o. ,t3O ɸlƸ#B3HƩ SPGۆFe{eo ׽%VJg*?%]._5'_IPسLcbRe׌[tt+461:l@è[i㬣SN8mg*I%,]i0 JݛYd7VDeY`Ѩl` 9ChT]aRdwo*{s?V[(1a2B["ڦ\4blnP;P ~ӤL&e|bg O[@:Zb9lȶ RN=]D!+1fX\&^ s䆚WiZa5 nUb)b:7.MQ"h FgµtC%֧/uT]xK:F1 E#oS <âsvhEeɆp^B~I3Ͳ^ǖZz4$<*t'.oEhj=> >c_|Lbx6ob^_cw" +}fa,:u*%g\ wF %T%n2r?iSDgC%Wm l%OB%SbA$Ak1ymp$1XS#@J~PG~gF"-$8|u %&BU|W0za§iTO%RwYR%5+6 2c̻[#Tān5Mogx jdU#vgTǑͿ/Wb؝C_}Ϻ!TH7FU^]6QaQkUC.n4M< fc7x۪"frR 6&%TFsǞ6֩%LpEƀg| \dcHTtmY<^HY\S! ɛ:R>Ib+ l5x 6|2*eT' e= sv:T%=64ƈgKgbE#i7j<Qo28zG #ztl^S~ԭe:ICS?yFhj0CiPN`YE P$,b]?o0 hôXNLdDbB\) 5|N\pS7ks#Z|,G ' ]!'8|Xh:oU`~E/#Lf.(htN9(T9126NCx5V+k(F5f+ w$BB,?%";,pj ;{x:^Iۗ+*zxP:g0m#oGELR^""J@=C˼]gVH'J=?`1j+X'LqͯOj}( `m[6aS~vEDZ3U hO&҃弑w aCtU 荎_osID DBFµ`ֶ,:Wl#hq3 ]K3m 䒖nFu̳J*kjr @,縦ُR=4ArS ܗkaZLDR~RNĞt=|{_vQcV1[N9b_}~ ^biJG[DzyG0 1p+v0BO9h^Q ĭW3qJ쐪9랝{=N @ 2+c0eO^LJWӫ (x~RL)4FQx7v 򴄭]OY,6.e+9#e) ξBp'E3IIJkyӲp5rBo1^z"W^Fb,PџPE7G ~r&O4XUTwArHb`` Vsܔ<٘d4C7Ml*e?Zh%.͞9׹y7kHRFoR ƻKfBh'Ǚ}0=3.%WVnf(G_-IC*kd30i>sly~9EH<Úh<]5Z[#Պ'V?H,R>r?- KQq, iG&t%R `Cn ^((@foG53G֙Z/L pNmKB ̡%s*''0UOlR@OyjgZyHgxЌ4Jr@G![] Ѻh{t_ hI$]Tog!Px%\CqF4lRuU!4<'+˓>Qq=h\w V煴keYIrn@BMjhw0\@{l}?C~%bp!.9p89Xvb~U*3@vډcNdnF&`oz=+#3 n&Im8掠&:_^C?u@v BW1tPzsp5Ԍ* >dڙxF/j\f"5Ajv8׼ܚ.;8賚Ym[ar{QV^9 \Xl4χ{Db<Zޗ.x۬^3>8#x'omJ핃[41Jp ]K~'5/ Et"g“ WޣyiyEBOUF&K!C3dGS~%- i7M+IФIY-o5': Ltg=I+r6Y~[VRǥxP.͝XB2hH"}- bx7V!QF5:$HsS9L 2Z \36ap<͏n:D܋Dah-,ݤlbWR @$ z*c,]Yq'jXЅtm0*Eыft=r, b=?틔1C{ YLthx{|1<Јwas=ʕMi[G+.hP-T%焮XK&Jюm]vLƑɊB>ނB#{;cK$ ƀaZ 62%vy`}\UUĚQ$hw .NQy =ä=QĂ$Ǡ4{OpU` ({ieIq GKsK8,:5baЌ52D%6xi*ϰ6O. ?$HE %}M%|QlnĴ[cNm"&K7VбNEY9UGcp2n1x1,K%^ ;zxfT*|m2SGyO;ߨQzA#-6턏{xL|Y|O7w^/%>gI^{SNL'?oDZK5XtadMϭoɁ2G>oWF?Yo%8GZYFgؙ&U\jQHcx;[Z;~"Ld&,&2м4'9]D K``Wpp1?,4f`(3ƒdq`|+[ST7sG94!&(Qĝ5S[m6V×p)T3Qiluɒ^H?VisWL(Ȓ&G>B?ePqmJեV,sNvZ(`znHԱަr)D,5TH8' M/=rl0В˥ @q孽U^pluzކT8l$h {JgL.yn`obx ǙHKXwN0b3kЄ,9B.{ F.ѐʎ2 +-}[ق9;RiߤD gZ Fj qm1ȜFAG{ '?$D^V;wr^| ;[ Ls+'->C66qO6([g%[.=-dQ3 H F`+u̱I*Y +`ݨ= 5e2.yAB4))6([)Lɠ)T` 4!2qW}So sQlٱZPQ4n'&Fs9ԭs'oTjW%㙧hݟ=q_ .6rNrS{ >Rnf?2rCUC{Y`[@vŖ*$5_ML6 qgEE^fCU#`}fWe3i6 )e%X*e_xoǞކUݍ%b弴zEX3e EhТl6-!Xn^\V#ď.!rw1bd--r զ+[wA'T>6F{'Ƿ-,ڇ:bcm hTߩ%uˠ,ɄSQ456]Y&[ks3V$oUJdŎ V+ ZkHkz5)x ب&GV,-x6%vL%юssekO٫߮iAx-L2ƬHbWsW;щMd U.з7s*X"-E+38]^2#C-M0B$hɠp>o}XQO ;F R/(ײbHс4fJ1cQ>/O3DZg pA6zX vZhfՆ]IM蟢bݓZ(Db̐Yi;C: ItW3bkۧŤ$0/@[8 lBV:~l4n8{ TPiIb\/l- r݆tR `4Ǿ߭NySq06t\ i|w@$c3)!zpǚPW*CfK2Sv +Hh,Y$m/$k0}7q#]$pɏRiKw$'U(Jf>f6ߊ~^žP.3]!8 Y3 tdn֬\i)1 aCI'LRm<`Ȥ銢i)  \o;^D*rГ;7QQKOBXd7aC) .Я <.erAR(B+:rL3=0K$~4م8^@a1d`ݼ',I!^vq+֧X TA M068]6+洿VUoŭÝ!cduzhڨk6(:Yb/t`,LEvux2J~TڟM{,N4n72n|xd@-P!,b{H?XېCVk*"6xͅԧ/KzZ^m7{5AtvZWR [)SĮ25WrX.2bp-+dO107K*XX y FNURn xMe釧Ls'9<ʍX=0#WPi j[ pGcy˔2r/5GhdByd' S3˩A}`i՘%vx/&᠓ Ȫ$vΘk|@m ݍ!Mkf>o#7 t~"ufR\qˑ?%.^!0.Uܡ侂J6t ri^c2ʺ&qQ@1v2:PQU8U+ Ov2q'#R8Z%YSz+k'-2pGvqXVQ9*߸@]FD=d؃z骢q~rHk5#?/"=V9͙M܃?+7Z397!Gq^ԑʕ!ߥȦ t1@-L82 CёLS}9(]I}J33->PdU![*x [: U}SV=GӲ9—% jƲ s"ǝG>hS۟rDψł9 Uߵ) 8!ZC[V_͞@g| Kfք%%T vM3y'iA$&_=&AK8񴯫um 9x6r'vHv7D6E0JwbAd5v]I P02nPsY t:XAwx=sR#L,o4i2vަTRV;r -HJ7+GkC/Fګ%.pmX$KF zQ}@MKrNP?9cDޤw; PD[$Ѱokl ~phټJ ԆeG ¿_e_)Z"V3ԙ G(^jT|kG`HUgo\wDvtE0Ⱦj p X8;_E*MdvE7ȫ1X:*yxmY`DM:3ΰ.Q!W6š=`htoxHcp/4,ǬR~]Eum;mc?U},-$< m޺y z1콟ˢ>[nKcQ,3DI%+hh牖YRPk+B728t_*mPIIQL Ӝ"Ǐg1 ^APrHQ/yn/ ox2Og7κֺTo:zlbO ݅/b'%-j:賃Rbd@Z|.@ G. 2ڥGʏx7,KnLv&U9_QڡQ^iTl1}b}&5:X#lu*DHYN35.DDY~3ԪfѻHq{\~1#8I]Cqs)S`ڸ\#7y hI"* x`:?ֵ>yl}Bt0t fɺ¸ ُJc/`3y9z-c v,wOI Hb7wR #~'o$SR4ֺs'#SwVJl&cz+UQ ZÿJuy* z:NE k *^= \2mHA!a"h{VZsiIYΦ* KCXy.RˢR Uvnx=b}^k6YVŸ[׮., 5Y;GɐuK{rFcqU 28Gl.@zE}r+$!jg`F;Kڝypn^a8ܕz^IpU $ݣkTStENLŪe( {Cԋd<ȲA䊛! gz˾Y1EvE$, `y9ڴ=I93r0/콇a}Ym1wϤ=$Q㑖I@t~L anw%_u)c̣Ԃi<+ΎDᲽAG EJ& *KnO UL>˽c&դm.\9á!1|鈬ف/UӴPI[*C"}7SwK,R.I0]6AX JL}(nLR^ K O[@}{nA:4:ِF Rrc w6٪A>Ni^a}D]b6o@߸ZEU?u)-/#TЁlISN`Xt(6Df,x 4fKvU3C Cu`ذЀJ#fMaA׽Q]JMD _W=Eo(\U`_ɿmT14N 'SJ FCv| X|#\Kc~cg60'JJξ탊0iQf_R,\ud-*Rm'H; ѾGI pB|^ݭe0zRnŨ\xW*!FDe` &YQ"pa ŝ blVaڵF| Ed>oɷ8h92˛Kkzd}͟Soڽ\,Cᜠծ䆺;Q`1}Sڻ G|u(\dD򇧞 uܑ @ f)ⷰPo|3QR9x`2܇#H)rl_4YN;0(]Ej ,S]+E}E⯱Lp^`|oT3%DnH7tYԕbRue%g.i`޹u5o}ӡREa1f_~ܒ|<~PpUa7ī V&PlW ~Oh+'7=C=r\44q% qkbYp )a"69 ]bQ#rM\F("%䚡-``'Hdb(yЮ٦( NX.:Y4HWN3UV+KHN$&&s9zn$iBgwF%Z=\/-uRtqyڢiqcك{YOSc\ ;Eok(HCXY$(E犫p eJo6,X:4ͤמ=ޅX ɖBuIt3yl_Aј2TZ"gY @J.fu)UMXϳXoB5ETЩ-Vc>@ J( /▊~v9Ii!Q?$#Y39d 58Fa3LFa@gLAQjҵ:{# '~pǑmJ"W'eK‹=8AMq@t+OMGRy;K[Y * jEg?P INd/yjނdz0Z8Ц7ͭ@#y/vXxTa6Q!w~AK6bzb+aW6jpQ@i3P֖<4lhW{M~$ :e]v'nyH;ժB&EI%{8Au'X| M]Θ O$ -]$َF 7 #],A\ǣ@ςHIFr!걓m Lט[(Ξۀ]v6p.EhvI"zzҏFC@/A^1=Dob F0IyR3\~UlXtOfq[\ErpܐTf@|Id69Dv\bww9$"w2 Bi t(kso7LP-HwuÝ^A(ckJU?`#2yC -71! Аk?Œ s^ NeùLKL5;CnB¦ ]5ho:Yb܈Sxfrl)]QQ} ٚ‘…nӼZz#Ia1( :5dCthc.J!%OYKFV ؅\|-A$ןG1=5 kQ&ndi,kOeWEOX2)sw ;qx)R!ǰC9k?j .k~ &Z4\1=S @uj͵E~w-AJ`Kl"q=c$'ձT#RRP#WUJ" >,"F=aw)GA}^>Ӈ<Ŧ Ѯ9`5. 1waH\ZVXa/N|mGAhhxAQ=JM@* ]~@b`5V sf`]Hs  o8<=#|~ϗeud^lUFںBNtNXԚYD{ߴS /o5x{B1a"0:.p`q;!]Ȁ! t(=g5[Ev2L7WC}g3 9Upr*- hڤ`ixV _8Z-â5j^kS)V+{97CDHƟ)|g 3 ̒q;KǤ!漵sT[L,8 }x&MzsZVggNwB^ku"*4X {.dx֎?XY*=P$T}^$#,`ߨ[ j:d+%[1lj@?#Qk,CCxlw֬kQlI}k70`BߩW+J /0.G̳.cWpϐn(&y.`FZ*/3dLbevs4o̥ 3 0c vI'1'6cJJW0؆!%]1Wڏmgghr,|f^ɖ!?nLe7df97[ǰ|og Xc0hǠ^MNme]5KXLK)IP/ӹ,!OՇ弛8H Ui S8vhaZyEC엵y6P~$U62X) bbn!'fdqFC23-W J^-uNù "5l}F+PemHYӺ>"O)YaenԼ`)_' Hȏ:f- =L|a匓 3T II`n۔;v^,Y1):#YINDJHFIb+7\|v$yDX{Oˍx-*1uĭ;Lxބ; m KfL'M 0GOB1aLY[A{u#`u8[;YmhD Ay>k(KDacRaISÔ;'ؽ"1+]<>H!%5Bz/Ώ2 N :Uv=D[H/:}* Q5)03CL`A$-ݳfC-"\2lNS k7eӄv^0gM2.="5b7͡  uL5 "O0S{(^S_/Px#B8++@tĪ+iɹ/ۛ/Zm+F1 D|=b '.cc GOvA'A{f]U@t/ =kr8ۦE쯔v| .O}y۸ EiI/MwM:3Vl[IcMt2a'V२w-a[I%9ꌒM0@*ʨq,oT0#;4?uo)^w5HC=4MLWnQ?CJJ>-v-X hcjѿY'{F&!>\=#+tqU*ƋH;OTG3%+KpWJs"ns: 9evai k6x o)X?@$t[P2 ͙]a dĎ%_mZ(H[jy;ǖŴ8`}GF x(97sM+oE*Xy9Uw%o_pof/0Q!Eeup },MeXp .>9;zҸ!?'pcq6[[ylwVnU xH8bF SwTDMߟMN UzD3JT?`"PDkw4·Ő=ݔD fy4`6&JkI6FXr2kZg'3Gu(f~r 3SRP-p|[ЦcVA# +QPG[;42X8UUapy9V Bi_䯖 lB>Y1bd9y94@byXLCb/UqBp<$:7KDđ_ӶM|I߸["(ץx'`%u6 56|4Q$fj{z* _A} *l}ko^5ec ;|AwyQm#ϑ\-h|2D& ը*y8GItǎ aB,iDQ*}F#Ԑ릏 SYYYbMx(Rn*O87Z7h_.*=@i0{+վ-P1f8 f˫<垞 u5ٍD҃J\'܏h1$ {gUߠSN ϻ?|{2S 6NESְ2Vf~,M9K?l6'Lz;S Q@3v_(z7ŏsztJP kF8òrz 1χ~)c74c_AΟJ8ǰ@hUv*G~{ ɬBiRz2#*U`׎MYW8Z2I=&-E~jPoN2bUuIp1˂W3: b MWtyP{<7TO(TfYCX7@/af*T\aPSo 'H4L볊"T8k;Yj"47nb!)\9/kgon]lvFt( 6{,`RAQxDjihIzdXU׹xz0+P1#FNTl%^:NѸÂZYC(-U8ZtKsxIUu'H `@K)Ik6]'HN^u\ɼ㥪KiQ6ꃬFjX;vA[Nme«2 ;w,L06?3ר>R&J{}v4>eT~6 4;nᾄۖ8 4 }3p!A"W^ 󥙷+^٭= Phcg'#@( O0,q`|m+l!f!֗/]qŀO_A _ʆ_qm[3iuf핛mدߩ8*%ZP ?llX}yO? <&2+qB71\2}kS7qwaU2I<]Պra5IZԽ5[-o!vvesIPI7ύuQ7!ˣ.\)16}uXRM_*wYl -,R>2gbW mk$jU!vFD/[r(SӲx$g`փߩYܢX"&YNvLϯm9yL Ȫg誧" i&boU[) }Gх褗= ~Fk ^]AD#t t4r+e]_wHIʼn3b eK>_I 7Kh5D5395rkvSfdLj;YC-^+$ ǰTd[}R|O[‹䥒'xXu"LƱiʝ-67Svk K-غ^G `v0 Ԇlu$kp92xl=ľTQR  }GT枘ʹ/͔sÈx>Eɾ,~0xlO\gHk*U9-52W@+ۑ CMG)eg[TF_ЎQƽh0"Tpd3}2EA<>g:tՓ >B2k$i'OSRYy̑qgA^R$+״l]F-dҒ r\@Ŋa5t;"6ߺW~W1p-KK#yK +T\6٬0(k&I6 _<D7Yżc%ШΧoBn|o7~'x_\&Zoh)<TSU-`;r JZ6qf1}]pz:DQ(Foɹ,+l ^b.G#Ep v Q; _f%PYV-_])5ݍxvYB.|2Ӯp=:- BI^p__GxAwOW$o*ZI0,W9g$ i77n qDo%.@J[E ~ KnjgFXqʩώfo-fhO7LL[Oۓ+\'81oeE͖%]GA2%Z|'!c0z~> +8(r}AcУMͨv,0_>>i!!4Z]*I "} PYr&4Z{vq:%Y)s$i=W1"aIy^U@pK򮹯GƑ1M ?"UzcBHp)x h=Mq ;c)aƄ˟"~Vrh';]XVxO0hqc`IU:++N: ېcrR#XBkݾ/(S3=s6@й ھ20FfK% Ef*u 3~XKy7 n?il mtda3ZneėMtJut$m/=FGDRQ^'LnUm#B}yPB"/ep$RSM0dƘVͬD+mV@> !E%:KkwJW+7ð7 fZ@D8uX\Au,hϱ+H"8k (zomTLъ, pa'09ï|&^[BKNsM-fM3uu/\q~3DETLX.8#`MAW[zcH3(;³o]B/̭(ϊyF 9DЋ0xJک]Ӧ9g9OB7CŎVo}32STj1-Sep1:W0]}]$N_=D謃3Z@5 /\63W߮-"s0#U|TwIڛS%6s*2,=BLTde` nRlP3}B8 !bG&L:K+MHwJ# c-i},IlTuyi:+=F1`BZ .1b)V/D0`ZwZ1G1% )Z{LrfOjƐbA(:edi @O5M^pJ1☃z mդŀ=reOx @>4jh3 gO訟OR[} 9#l_bP`P|[Nju8ө_/#nIiоYq D.̂GUi@x["wUr(=~rA'D'\\HqBUOlIce{{`nd5/ ! 7/Ywb2XM!Tڹ0ҐnZ^O8݇g 0j9[fd#&iݕe5 .sgcwaL\7ߌjĔ|Ά;@Ut- gBS^]wy̍3OɢMNx&tv'8x!^y8 wv7gooQYϺζjhEFǧ}o" 9e'Ӗwa+HwEtjLwX {QE`WI33r[SQ.&QU [)|4)p%ÖVqdOVp3:VV6{y01{;Rg"JhBPw^@<. O{' >ޙѬoR]#|k}#6zDg&jv7!-9e^ O߰GGqt52AIJ(fO_}u7'sa)Ex:z8;pxbE@?1PV6e s}zgdj]qzoO(erSX=q|M5",bnL"&Nq$޵KrՔ0.}Նr =M%טXbq JcJ7 t6GlG;k}&hO*#2cy\x_E2&V`Ï愆`Q(Rg `5B孼vVj ٷk>.m"%k_P?eV/co"AmN@$G2"&vSe\mkQH<6 9R`^Dt꾑䷯VqOJ 1W r1+evNaR6^'[5IQHT᢭'t,1Kт1~t$ӊ\e3}hCA 2}} %5=oLs12ؙ'༒sErG΅qctUQئ6LܡWdD~K)z\`_7DI•!Z깶nhBYϽ#%Z]#TYs4 H¸ҕ²Gےj]-$<G_Y7Fonyovimq:.lD7$4Gb.E%dΌW.:onW&:D=O+s 뙶z=;rqL6ݐcfK* P=hig%S>p5eAO%EϻTTça0"%q#;y1DWt! jPr~&fXbFwdVE Ȭv&k<{ÈYЁ%1+}ek̜vi`U7-4~Yi >_ .+bfpͬ4}5''(g֧X ZաVfѰUuY"Ueӵ)N5,W-wnaMP'G~Dy,R )F=4zT@=9$?#ctw? DZٲ{)G+*gDژgq̪CO;0©|m2l'("fbETH7CޕUrf;FɦhIow f9SUjڃhWyN3f ;ޗm.,PWo݉OiJ[]SD W NM>* fH?ԊY(.6>2{@ΫWT]L+^ 1R]Ӟmm(Xv(7 a((B%]\퓔pO1&EdUaj(Nj䆟y&_󺮫lZвg;cIp\RncA.kO- s`PwuaڔKc\Aj2cX(3Tw)Fo?y."ri?_KEH^aݩ?f=7#ܔe݁UaGb=W2D2i zNխg_$Ï [}«T0.JV3톼7@cV^SF=&a#{/$y?bIcl;biex zU'\DWrVaTk;K7 8;!6l ۅzʜv:0] k\MDԭ1$"Ք鷗 ^ ÂEqeT++N<|Nrw*v"ϡ `E/?x86oYR2\f7sǭ8zh~$Fȕ}yߨS=I܆Ow|ՁZSRa'i?ZeTq$58z[4J(m{^<@LJ`l' '|JbhkY HR>믕LŞ顡 Na.SK[tNa_~()lTV.{V,!P ']y0!/9-aiS$^^o;|d- c$޷wQRT{q&JĤ18[eZ$*`+\? 14 sد.\1'@IJZ&zLN0Px4`z܏¹ֵ@Y:j-zj\u_!O1Nmk$1bsB| [y|ׂ6?gsi =x˺]a`>>m'Au}Ṳ,mʣsm uA K&Ty$g' t09n>]!$)<r1@E)7aZbvX 4[W j>;|Pw13R!~hߍ J#~H]J/t)o[*#wDGrjaLX!5啿Π>١'i{oN׻9zŶTƿM<|hz6 a/رB%&m.FsK6ʌ C>r Yi?q0'ÄKg̈́K8|6dqcyH1[/~,Kf)#Nrmí./GB"}V:%ZZ03= Zd "8>>\]]Gn4yL]{^.q`@H)R젽rspr6h.+wdB$ـҤQ7Go\{͏E?qAPɐao :e#"0(>dj镟9&Ejx8Qx7o+ qLw'SEkMUQ(!4dK(U; ؚ2.^d8WtpNwCfVw藏ZPwPO/\nhoCSj8?8[dE6iK12}'6=ZVs | jOGFhF#,mz%')(ϒP!R3obтE.0(})ѢOR`fB0!A,︥W_u< YL>2(QtIAL9\g5}ԫA\Q=@LOґcukA$s|Y]YsW|n9P._߅F%;D)gisGXӯ/1&pXK⠑sT#'(d{owubGYv&Ϗh\>`KJKIj8q3tP]Svur[FC~ϜCH덤K(1q7[֬>Hu.lOxBI,lq$oXX93t쑜D%&BHw mn7*7}6' *EaBM^H5(_f暑۔3o[:}=OB>"#bOq<#fjy'= PNf:TBސ $m474Ħ: @C& HK>(@dd\A%y\a,sqݹuL`@ŀaK]{_B]||^ pJM(Go5 B d]5A)cު##L !":up2  8'$a`~ {re?E̹$ֳA}&gݑN& UNCNc/UY9tB5 rؓcvw&k ^=.B+P2. rd+K |F>u$豆iAR/2j+!Jk3C[LkDfUPkKUH9*u2q-s4*bmir枚cBxT )i MyO;'IS5d /%޷ht*:_:sn[*$[VL71:O\bI̹Y^:u`-"Y#UDEuvӜ.AetvKM+7/~ YcH*qпªeiRni/Wj0Ԓ=sxK\IiPZ0(DLYǨf2}eA8p݆P@_J"a1s 2 r4 [`ٿKB9p{zRwjEyiWo^Z .b(!n i 5^FXLIl:H/&̲L~/4Jqn+湪Ö eނ1UtHJ($ԑS<@T +LhsN\g|s2Kvl` z>f-G &6򵉅8mpIf^WҺ4 gz aV8U2 /J}+tߎ!ILIyXvsqQL 2fZсUN&D}H`E%G4r"NwwZIG'{fUe;8ZԾ,j|6m{q{^T*WPɈ*}H$D4Ї2ئDWB5h\n~'_ï˄Z[3Pu[b *Ś&"&4}տ0rw _*[1/&~?F=u8R:GOsT`;i81Ј {<;طnj$WSD! R%^6IX*}:O}2S$c`e &1QrY ky fgV󓝳aI JMĦrR=iPP26}x]JX|*2yUj6&DR[G!J#OH\Qq;CR 9BhAć.dccxڼ}TA< FR|g!y7.rG``|#::OEyWgP -PAHX YRi,?^ЎiXѮ=vf=jPIْH,!2, :fvR4\8?nvr~K.h{3$D݈f߬bCϧd#%A&[/%pX]̀}!}@ kmcxlE/ߌf{}0ETg Om Q&+ bZ|%/T%dIk_!}8@HY6Ne@MDpR҅v?gC7AI+t1&O0wgq|.t86ZtBڠ 4,.R߷x?y+61/+w@7v>'0=G#0TMK8,c;oNka"OW%@Q8w"Wj2ۭm̰^>I!o3Skwvs1(_zP-\4C[Ӕ}54 IzCH]d yOAc7(AѦӺ!ĝ$o[ 2a6=[юk3N j]E5"8clyX&w&hcJ7OjGWdZ?*R^+"Xբe+aد9m LUZFs/2U͝/o?Ϩ~*TNb\گDX-"yЖ%lRh$^#7 ɸGxqx Lz_*x of[SfK4];eB2fLvs" Msoja<uPtU:T.kP/$xpe5E+{eaF"+ԓf8>w]Bw#IJXq0/F DJ):gYvhm#ۢK݆69Ɋ (?{FfsVcig2aqvo6/Qg4Bc$N@ S#$0X̄e1C{yļo/1<lKAAM6nA .fDOYBwp5s{Df|?* ĂvfTͦX\37lt^e/V/9e!~3F ȍTo VEW&!L;\!4gXTR̞!wȎeOY6= #78?:ȇyU DQg\ 5UlnljI@B ,BJ*wy6Zv=NmMtXЮכɫ+lwUqnoQ3S^f\=-یL■Zv`"QZ+Zv8@L& yrcu9C,Nhpk:)P~xoiɑA3MXw$hiF5eDzÆgJјMH n+=ߘ.4~Gߗ,߇f mlq PJ `:TgM1Ԩhs&MVIB&jݓzFWob֥A|Nܽڍ񠉗 @qs/ܜLvq(x B0< Yj t5=gGg"P2-?ɭر>g{ݦh+k8EۜǼg;S\G36Nj2M|}Rw纃yyER.]Do"8ri й:{0=QK$'!&s|{xga ;Gii"`Bwoo /dSjf.OjM2#q?IQt9'J'Bd?kY,.R"g$p'Qja 7~hYέsvv=k9)EH3^-yl<Үٙ=#;Zc {)^O\WԲ.u_Y!; ꇸͿoMW8 9Ћ,x ,'BkF /ߑ~( 4`g0ƫ"hF2{q!b̎jN[jӬWRuN8;2짬 +l% rIjzo^a xx g`bS )0XdH4r6QdMFLmDH 7BeLۀa-`̿^ !W/8j2j hAAR8!vyFz%qVD7븴RZ\tԯ/CYj 8>Uj=ihEv dR&02E! A Vz@{*bWFT>0B9Z[$jAxaX7W;8G= xn)+? .\WB+Ui낰{yN^|C+®Fƀ3n,8!o:&p"@m;o:̰ 2߄VywBfA:t|m=\k_H$^G.y-Gl-9r/10GGDN?HŊNn*q- fm_۞ 'ӸPnK50 7+V593H2docE\?e9p̓](7fLv9tfF9R.Ie aԻ9dLkK9[8Êۏ :Qa/ɋ{'I+j wM5h#Eԥi04䋈A—GSh]7U[ds}6ȧ?@Tlsv&ur!Tsɍνj;KH!>$c/U+AdXh3C/MlqA w"q k'lCƯ%f;!3%k; 55kd)LR\ɞTӣr*z!"*! Erm3rpqkJxmAN $+|MGlQy$4zxU־S; ֲhV! Cz89yNou8qM2y &|^R'hdoΥ!%",kzztE!հc{Ag5URCŅHmtVi;/!ltfs Pӓe{i\Y` 1,'8< V*2ʋj Cx7[.CDVxpx%Qq~&y-\Ay1KIA#lC==A?)댅Q `X!8LlY9q^. ,c9y#S |'-"]w R Gu柛_pԉڠ:N eH4 ko35Cg<$2yT3׹) EM@Id#c[}$꒘fܖLiIjӊDE53؛*Qn슝P /-f[~Hs=~-=0ASg{^|a"0;ېr%}*]!66ON%{_#Z8j μe0m5|!ubkÏ'[<>dLhG*uZ Hc +5"@rBH49JF ٙubX3^7QQ~_SF RouoHP%rz ("+7StK'c ibu [:ˈ% P]:r&Sl juA Rc`8q)TGmKH49Z;IkQX˒;jEU:̂gR;9͢9'H:11űU`R7lXï~?`_UYN04M2uN+]Q͚ 3:"Nt"Aף8V%P4^N.H J#oN¬FvIw=hA_jۦ=6kGV{`opzMC*|M!k_>U3Ms${Z}e,E؏u3b}ʞ^Q.7m+[Z3fkxw# |@-IԐo?);u>=ӨWzA kՃ)yU ~MUtR%P 5G}IЪ F= NrѪkV\<| rъOPH8's! skT -̍DuQh~ QZGі{WY9qE]'$ guIo!'/!)cnd%a`Q1ډM2/>R1)HBVeg{|NDOI4wi 0T~ҧ0&DrvxŷL@Tb,$DL5W  NsIqLhʷArY,VBtX¤G}9oZz*3t})* ܥ#heznuv@B-@Յz +1f06WF.s!}:yWל]G󃼱UlSZ[xԦ'k&|;.2q(/wF!mVnbH C 7&G2FpS֨T[.!tni/G̭E8Q˱E_9JQ=3FS>~sʔr5f^1ʦxaٕTZKt  ] sdZ'k+Hor°BwwF2i[Qȃ)|45yMY:u"?gtg|&ᜟiT !xx{roooO_;M2y̔$j4%~&"٠뛆Yq3P{)o_ӵ> r& _5G.!s/Sg}04,zmtE݀wHFmԿ#x+buHİ{ug`~CjUqp(_S"XKlˠܞ{]hJgyt$lf%u` ;J ٜ๐#r}\5JEȈxv>iJf%@kuGn_bxPLj'Cl08-6ODgsYX FA`KcmSKtruv^V%Hdv“2B"ԁz RGE 7nٲ }kbȌL,ˍd:f)Uh*i IUkhjuA~QXoNnTsGV7&|sguyкHޜ6qNc:M93=[T"cGH̀B cX;1ޭ K(O34&J+,䏹],&ƍM9LOyˣ뵳% Ҽ8 M' |P.f2X٪Rd:A\RƔ6aʁa!ӷjgl=IFgoeIbszdfISPu_֘\>8Fi ],O˹aџC#@~,l]al)L]D̸,ȄrA)!HMbgh͡ qֱ%Zw:Nfh (Fq KEqծC3 aͦGKT 0FdkBuO.EO1tC]/FҮ.*"QR%~T [' +0n,z$QD9}Pϯ~iTdu-CzsƉA_m t|7o2acyw:0>51kN2=] /Z0fxA3+ 60`W< O@ j$O6iW_ar9UtcK0 > |a2 [QHoԸ8o^ҁ5z[V]@{鑄5LQ?cQTtc!P r(o;!Q t`1Í17sHES@.%J'g)p"VRfF&w9yAO{l6zWˎw}&n7tO3ҭ=RRYԺڂ "/"G'6,eߖC̴~?Aɰx&)zf? |rב(#l/='ٔr9$a LF5O1+a!A \[3 mugs8Ks 34m?vJq[' MuDѯ'HFyXqpmC6 \WT&c!B_NJX0_Is (l5T$&1*q TrWĚ^=ۜL;^YYiv` D#`X3H{_9I}th)P줌BWBH)Srq!}.&7mc__T j) MO*S)63?`BLVV4@Wމ4AA +68s &jF4r^d#jt*&qÖpX vVQZa0w-7ʙcDdn80 @)dž'a.q&M,{mh ?CTy={BNS>g+0Pf [37Ə+[ v ׊ǝi՘2N,"jG|x'3X!RBfOW1ևNR>劑\'˻aZ1_V $QL nDRD54D V"kx1$>R=a`woAʬe}|Vl>ݠ^p:!m9ɛB 4}SwiH4ĦAD6Zu e:xhDw&4 2pEq"s Uғq#?FPj4^D5l%Sg8$V C!ډ"|*)9 Y/8WZ좛wZmozꢫL+HTh$;(T|KE1-@ 8%ߡ}O_Raon@qtb3",%l|9#|o"W?s:ҘqyEVz"]'C-̿κXv!`\ޑ;Sit=V1?E<3z#Ѥ["E$%ʮ`ßc=af2 acH~ֻ_qncAY%g0{QΡSzA+9\ɂ4YT1/[d( )"bƒͫmqR|cSF#Ct?1oxGL1ì"Mu^a08ozᵁfa-.4!/"qK'chSPYub@ْǍy? ڄ/>LۙϿxlA5\=^ן=UEHΥs*Ҋ]pQDaVVX#b?eo1Bg4G#,4܆#"!r23&b }LgQ̸=r{;TmsmofY˸QN5(Z i?8<ڭonF s{j3V0pLer*ǣD?7ޞu+|r4NoZJH\}K+`vWLgg(]no#NЭ.֏fxR sJqc&>>逸g+B5ڇEњA^=hT#iiiGI>XZ#,WzVnPq( s![6lAB1ƪg;+Ucz\36r,}tA4E*1}v34{$ yu\yGD1PM"3Mfw=^g=A%r98t#-H~*c@D7 #xHt)Be?9U?<$w#WVh9Hi`UE LJ,TGZp|A5Tj{0OdcF&Z.=>Vor;EwJwkϦތUҿSMPP:bYlJt +{`s|@e< ! r2(甼`<=DIz[ #~+˛ms@q\"i M;( Ŷso-KZdB B6X~%26 ~!ʸU6#^;zKV֍ = qKֈ7I_fе28V3 ?i2apV>^va2< PMV e;aQ:oTzXN7B 2z$H2}z7$ G@$ {OؚD;A5W/ڄ/Yԝ!"&[B Bq^7Ԩd;ˆIqiCid<6C3lS lՕ!Z`k E KoЍ?69^^ɚƋ}Z==62a(x믖_iqګ۶aL1~oT2N\O4+4%pi$IzEm /Uim9iX ;֐^&6%muӢ lw= 89~tkaLN[ř7RUuu$7Wj*-$AmϯRSɪjpwi+|"=xe#%c ܙVˣh99>Rk2&y I1YPVIF(zJ'A+/CIn bw^F[h]D:]Np*q='ڷpLVN #6aN ">(m$3SEN.#[DG׏F㼷V==?-pziGb K TT:%x9g_1b̼T P=kOeg< 4 ^8r++TB7RV]&ڵp"j5 }tcL |+|mǗCA_qE'f$wAkSĒGb Kh Kpfok[Jye^k$y/Z E\H;M˅cpD,mZDړ+ Y|E(e0(tol/MdCȖxҤ0t 8싟v˔px08??@/yڰ2\sE.!^5> ID&襥LGqndm^V/Ƀ4z&K\KDgH(!8U{&K4n%.\TչKêd~G6~Xl$o'z>~{>4d=2X`>՝U+y:TB<1-oe!0.@^44 iO+Lj>rsS_&k +YY9ηKΕ`]0 SWF°V8¾قpf|/ ֠6*{>CT5mN .tD PPD C/oжy)z/f B_lP*kx[}etx2Ntt-wnCA1X C¥ĨS$6qz)M:J|+\`4̔'< Ӈ&xʩ( 70xaf27z+fP&u4!H y\i^Y5Ili:|M[zM1MFMdt u9vƺ@|๢x'% Q:SgxjFɁbқnSGWwCuJ$$ACuwzJ2Dt0-HxߘIK"=zFFF}`NF6C'IX8H;)6 Hf 08?aR|bDk zZ4DWnH]*63,7b$@bvtè@94ஷ1oIM8_3ͷ3v|Q蚡Ĺ'|<1x njܭM +S+"+]jC Ik wƁ|xja#I-_ p b(H($e.CV4!O` X7+gRiz2N䱈N)u#o:ݨbÌa?b *rk1+d;( ?Wfdr@':. A3sЂ) [E~buRSZQҪ[˜E 'ttߠ\־xu= Y]d?qg$ƑP#3Ji=P?64lxxq"]~b Zeɧ?zy/;Wv fde춻iϫ b|{5%>L6NEP J=8|Ǿ?IP[CgX*\M~AV+2&1!u{lߙI-N[rJᆻU|6{R#5[ߗTS"s(Als;Oᚯ J sZϒ Ƕ0"}XYe^b+0OE,>6l'8/͓Q11B"S!tި]V!Δ~~ŒmM{w !m2^z.F֢͆G؈sJ2&>AW] g`;#|mv.~؂2J (3?̿25W)U<GQ<$HLe- -L0v[|iHVq5S/u8yM^eL3\kՅ$9Y܅%w˅ƪp}+ę=%<;}!_@ʤ}Km}U-Dͧw  Zk`tDr8K^`vk<ʬgtҬ̺#ኦx vk|N25(BlX2#ˮh=bOE؆$}[9pG#UeY Lxn^Lx\)קzk|tg^j"+zDzӢg樨a0l " Υ/ۥLBE`YxZl7UMEzP[LרGDmd7)wl<("SGݳ=K&JrZƚTK?Os0;/=f%oz=5E4|y%9lv$ Ȳ3{-bVyVtDJ<̡ӣM TeD|V1ǚyCIwݢ UJp˰ƢM՜ ]uW"3+=ך*B`HM37C~FE| D e.p;AvFjDcS KHiBoSZ u<@7%w7 4dvI='eܐHjjk\7Ir䳮{٭H[|n~D6e%ݩF % atlih FI Buru!4dDgW&Xz4mV Q}V'} i"l5d-46}ILk1=p?6W1D >d8{{:T N/4g Sg ?vJfʾiQ & ̱Fj]ztL:B#0' $sRP<,;Y3ҠQWb@Y٥d#W\kcEZNol&PGlzF$:=(LZq* V+YZ1?U.O> *ֿ ;7slv]*խ*^eC 'NL o+~ŵ*_,ۯM6P'`b|xpQotʡܬwidl].}´Gs Z,fCু2V/\N&X]%|zNnWajW؉}$Jpƫ`8pc uЭ8VCӂIa\W^%V8U70!ŋaTH iAw; .!y&?8]S=oDR #/<޲7x JDG BKÆwp领G\zެ33 RT3P,{`˵fhme~`;]ȹqg{B?X !]/ Njlk(Lx_O͋4X&xCgZ?xWj礵'■aۺ˴Cé{]7O;M̢}0c7Z.\\KEGELǖ}k< 5i7ycqމ#`/7Z:`wܢ (ax<HlMkyͺJ[g\r3M>tl/^|ѯ.F'5PF'cx}l{(nG*Lu\ɭ{[\00,_fI=r/dQQڛ>Ogg0ɾ#(@__j]"ml k=驮NȵCb_RE_v8,Mt̾պ0pZy9<#0eW\^_6# *Dv%Z;8ZJm vkr;;6O ʸ.t `SA+_*<0&i ]ݲ Acs\ =fM%f[b2 {LjYgAʜjtnX4 /`>rSFd(+=\ݳB&x;||Vj.Eȵ ifHwӅ}]FO=|)) ν|dOrm3waRU;V^~^¼|[PqOwz5V_1T4~ ek0FƋ{1V]T9l#Jyˌ1ZCRV\C; BdRC!!o4hs/1c| p&3v-!P[&-# RUɻr͎;;ේ#  LAH -n$./|\G7QlKR782U}(4T馾q;OSZ;ؠMj:J0?`W@jD:$iaN}rCվiFSq&]T]Vsc?zrSJxCaB'-(R lZu}.P3ڴe+5Iy Uq;!C`2<ROx? Zk'bTN;6w7.#7:WT_ >5DD0=.BX<]'_gKoP{'Ϝ4Eק鶷zm%z26HF_ڐϣH+6r pav cG'٭ϠXF)gKu;3(䘲e (JΑ|zgN%9~ Ƿ"~xS?ayDk^aN<8/6%QZWs[5,cNPn׈., %3~# 4]>#54cR^Vmزu } @ץBL3]rS4ȵpORڥх8.dZɇ`sȈozXe'2xG !˷Q8heH:O'.ΕqTX"f]=Q(9,54Z}53V,P [%+Vč. gpe&FKZ"׬)TE/ڤCF*[p8§7Јzq&2p%M'qGh#U`?qP'Fbɷ*,ystEIk<@ zKUY3ߘyiUvjh7` {7&ܶG[+/ZKE)d+`8CAk43a}0x{Q0} P;g:!NeHxsK>(X77r 2Ҫ-\(慬$eHy^P8*0}0 Hx&I2fG_kr'n?K`9ު,pEvi ke!|Aozؾe:b06r68#Q3!ۨk㡌+"ŧ{eIl36a0QȽlxE!mh^4K@VMoeDqvʑ9[zB';p))F({1c')-ACHA"mp.`⻇K=>t72sәD%j3dʼqfJnDpmIֹ+6@E Eh%CUdֹ2Ms(" Xo_0ߤsL&UqomU.Goiؘ~C|wl9fCum+Ia>V<<ݖ*v#P^yvN쯉I$;@GôL˛bv' 4kk {`$|<G.MfĮi1}WztGKbG4Cxy;%qK'CkHv!X T_;ipp[={jJ }*)]`c,;Ur,wt˵9ciz4$?sۻ5f! 60MrwC" )I F+n}[v:lKxO%|z#1x z x[V?^_K54*I{^Y0)2*٢zoRgttji o*lhi|\B[f}݅2jp<+:<>6 җR-$qtsxe)## JJHrC7K/b`2 ݉-!/e-?<`怪\:]ѓEqvoF4[_ɁS`&/Z:M_o2L6eo.> eTң#:y fa?oƱĪD_伈,tcZQːgry*+4'/rk$)}/o4i[ի$]@IK09|CO=}{8l'TםXcHb); eknCF[y7@S$ аό֖Y Il(oҧvwiMS@v, EQ01O@ +ڐ2T{Zi~ӄ4oZ(` |rJ4kp7{rU;q|(` "\Knq8ϯNQF#ywR`7XShކ1pZg  K_ }ǔF-> }&7|:)Oȣlp/cÄ&`ԏxܸH&.W*U h[%R,髝o۴^DGn*t ēC#ɎlK+,*FX2BaT5;aot8ԙT;EJT+v7L!CX?,bfǗ@V4x8$;'K<̜ftZ!)~ɕY1sI/@YN"gt6JٯA3`$Lpr"jj| ;߫T&GJ $Pm!,I$n%_r/t(2C(OF!^Xhqr~)/WYbr9[S;#G@iLfM9$x;-%.Px}rsfSbn]֯cks7)͉C gIq|DJP!:-Q ItkfXЋciwD1'B bL^E@W *5Fk$x[C]PxKHp Rwwr5o9ݪyE@3mM!т*q!'K (Ga#K`WڰTp 00;@cǰW$J5߉_.mV~6 GzDw~N&hTu\B S/& Eѱ؁4yS@~iRŢ>>_~>-Me;aYѼMv6D=3,0{ *sB|Ѥ~ WgtGoϕKaŠβn@.P43l#Y*@_j?ɫKڇ OA@+Rlm8+ћʤ>zaK5hH7{8nwۚ'|| >1qnnKO(f|l^,^c#$XQ ˹eD@έ~ L-R`٢٠e>`P'Nmg>$xpAA[7 Zl0&> Ѧ|,mOD=C@Q \kON a<&% 3kIx y2Qc,J3/<==ܾfZu6RagbE ݤΥkt1fQl)zaܿ@-,B (6WH%]- xZ(Gc,?T&u.W1R`l!.3FiG*g*}KB,F+gB&;P{ވnؘr8Q5`N:\y"MIu^s3])Y/vLU ֵ\>I΢D,} i4ΰ?R gJfKa"(KqF.nX-aU4ғQYd(GËM!d:<H7UûucZ_ PxZA&̈gE9sԇK. t1 X[=c KLkUZ+.MJ#?MO \XnF_u,Gt?^7 y1 h1oBդ|H^ȚSWFVibb~&n̜0W՜:@xnKCeMRW|R z4nG9B"C+[4@ a7nW<|`(Hs"gR<{ 95uvä܃/2q-TPĢOLNM28q[6_R<R;#q/?jez~F@rOuÿmSGI8!˙rRHTV[a(]ׁ8S7f/}3Id.ٰP2Jvmzԛg3 ;C>E|gZг#^xOE5΀sl I5s )f:y*Ӷ !uw,`Ӯ *Nu,ix=Lٴ +AlN@{^B<'B?$b5 B+:߬Y=?("Ȅ?M#&fSi {ۚq^)`Y >f(U4'1x؇Ȯ/BI b665'=Mqk5\e U-QlJn 27ªj^v|mOПdW-<:PbHJ1x'D.tkCQ2ft-܍t'Sԁ^LqH裐MM8o:W5ck}d|a0*qFxfK2AEUwW_LHV6ĞE]woJ69o˳7TuX!:oheGYdZӤc#3;ܖgKùxbh tS0rKSU?/;㭱s/&<sA3ݍQTtY 37OXV+;N#DaZei޽>bhjFR#=/0u8)Kyʋpk߂LG!ۑ̭=;SMb}`xMlYņݰe>02zOc 5plӴ]@A+sI<_#gZɼ}:XDH7;Vޝ]݄0q[[멟UW?iN%:BD ' Cs oГ*Vi$fr^C>hhN}֮􃃴?ϤaZ0"2eoWaC|Ax~I)*#9=cl&yDTCŒ@z ^Lμ`4c H"nUvִ`BsulRmįTk3edoz;*lwu6oy.M,l-?;8sw#v}n+ӦeeeD]h 7#![|gZ9,fV&Tܚ=-l2I!z7g5%zFȪ\I+MzF_V\7^zd@qX0)}3!;}. 0 I+H*(.j1Lg3=E "n!fBDD ]ctaXM5 cRxS;.rqJߝijG ]SF'zs i;$ ,C8u&XE3jcEf;?zt% {-&; KokT$Tռ%A %Ov!R;öNS@o%q>PKjDNxwt/d2bf DL&-Gt>M $Q@ KپX"$ߟwY];LJ#ahkDƖ^vXݲΫAh23= tO4Gά 'LPAA᰽pCe*@9Zʘ+/XA&A`^< 0~QkﺾVx"M"O/O9 #lMmS4QjO\vz>a}m0vG59clQHC /frU]~̓ndtZ\vI+[5ְ^.N.6{w e*\&2ĉ@,- ǯf{j \qpM>KRF2͜ISs2byon'@4 ]0:)m-T0dhS|m1?J2CXv&*)vيO!ݚ&Blo0 wZS5IKV)2eqȅGY?GiPzmJRP}q݉z>%~nN52 %/w鏮,jQ(=)um#WRo+yٔ:1~pLObJ&vټA߷Ql::{tTÜo;sAK1\H°>l=L7/ ~14> NYzNУd՛߁R$4)OE)!.nZ=@<'zVg'5=':6Pb1meR]G-|%ye!Dj & USpI].x6qxh^7͚_=""}M<;g20,ltD>3j]jDMآ*v39T%~k& U E"ߑ~myܠ&Jf@*-$5>jM86WM޲&tz C Od1 Ch)=`#S ms3?Ou)pd<__D,"rU@j4^\ M2Op G2Ulrhf'L!L ,0>ELwPy D6C+KYk8CY~EQÓ4O\cYx3l\U ޗ!u 5Da>rA5]36/"_G%D${(٥~KCtϮ>T/mgƕ`m»)};>PQnu9 ]ߧ F,c{yйXB̟kfB;EQDP`! !Ӷm}´_.C&6?!s*( Q!zft@aqV(^ޝ٩P#'DM{ gϡ:{ C B=و>WnsLr! 8 OFj{a7:Mg<.He ;0oij=LZ ڤPaƖ vύige"zwo>0<F|qwDsl+<3R܅`g-f5lAa&ud0zx2 P!`u`}$i@5$*CNj5 c2sCgHƣbcIZ6'pFY387ɢ&i iG|>4͌W6h"s M:7bv5?ZyCK)n=MUؿ@uvWʜw=A&̞m eǤĦ!ZTҌq9@/{펱`50?O>eh-aq=IøϷbpSKz@^Z|+!iIQ/Duiu0||3nA3#D#9$X-%PFic`Oއ m)+ Df0yN,o<'UnǺ2~o?T.FI}TA~>NN;pNK kRv--)yr6%^Pi8߫K(Mz:_2c4ɬT"Zܿ`Q5et^\ou2p7xQFW,4;8v=boL;nB7ty.%ҩ)yu@JJefIxCgH~R,}VL62:uY>E>i?l/ٔTy? CtzGI`-+ _k=cvTGS6N"L,m6ɆPB*8?1@X.'ր|V¿mX6~ym/ VOoEcI)qO|je5H/Dጚ'Wu^.'<sGq-"м^l30q2x 6_\u93R^H!J-}hO^x][Bd_j?ң@/٧6!:iT :O.3C3 > IrOc*<0imI,Rw\Ѫ:$K^<|!+hKd+μ@5ZWaSsܨH| \$A3 ˊ/[$[$!tw$X"aAΡO,hm35i?/TkƎvÿ+[KXo~TV-W4 ޯu!넀! d|F-=y:i CQeqip iK5gv:όWR~cLJߟiMХ*-d\vMX=r(s0*]Bbofߠ~@ώ~XB9Q~hDZ~̭9ǧ3Xe@1Fd=SJIKtceMF8}i6%Ô/Ԉ+`5hyAtASnv>"bCżY(I5_9a˧1 ɢ.+@s#C ;D^|-߬݅ǠKYܠkq%E,"ckJwi(H/3' idϹڏr%t{&"naEq(}Z.ap=xk-X]x qZ9RﴏfAa˟8z3m,,)#;u^OIʘOX)J[*٥P˜_Pm %*aVfnɂNA7Nӑ Y!д^1+CwFRD|Y-,le+[o*c$PMP`sUk&@rBQ@, XHF_4@rGd֐y )E2ץ՚iTRT6;x0Sf6=R';M;>qi+wf nNn% ̥2"ىPq?ɐ 쉠7g`{>YGDzv(pz@x4}޾xZ*s u}WFo?кJsCy0Q#:ljw*uv.'_w:>a މPLb \k$,ݴ1B J-ν@u|u Zv,Ѓ>t{ q M}vF_-/])~`] WL&T+#"w|1 Bȼ ݞE]os$26H[]*h ي nzWģ ~iJcw\@zSVce'Lv]8z]9Yk[֭_O'i~DXs\8+ͿɾП`-@:AaAG7vɄ8O{Y {r(녣DTb83# -X#uOTV.NxH]үZa2 J`!#x6OHK{d!>nC!cs(jj8a@|lg8Mbep:sveWz 񩓮 Flrw.XpQM#! G!!}C]E*!I.fhb?n''4''1[A.LP+juK'V{w]Wv ti/' ʫ萡j~$(\*^k-iCuTZ=EmpU&?" _QX,־RFNCJNvkzc,)kPdzUM$]]$:ST !69%|[ t?9@AwċīoQo>/L [ⱎ4?lHѕ\!Ol>):ellk~OzBZ>RbXD3ʘ_lDZLWЦbI}RG4K; UrO*Ư-Mm,yOȷ8_dTW2 %u5' P=.s =nSo;|{p `_uCV>?,Fs~/ }~X#q|!C51ղw'u4-XIvבW@23~nFfœfڤGېc^?ޯ_,#L)&:\qLrjnL ny5КbbY{!Rn:3T;1721Վ+@<ogHb|+lNfINP(_%uЏQa5G~ UBnt6&+fltb2 f[,~tC~n@4?-<|uۋm.[v#֪FW,/d? 쵕MZeI+OW3exЉ)Er7^1my6+X'ߧPJLTyUHk@+ÒcP~j@F| %ߕQ+p;X&?Z-K|^sepjZ@ZiM:tq1 75x};՟<(bqOttJuCK{15gt6ϏpNl^_h6iXeQ0ˤ( L u}CىCҗvtQpb?'f0ߌ!cANӍ9xVF `T()6yD*HMur(y{YvZpltgJd&OJ`R|-e Mq&xϊ(<]nxC=QJzDVq;*Mjnd /,狅P"F@Pp9Iܜ&̊Oܔ2_EH sթdW|ބD`H: QoZ%+AÕ;Gnf+{D 8~4̍5'Ngu+.$a~b;ZcD=w ㇾҷI 2K_S9Ъ) # G S7O.lVx I t{qP4ԧqUE; Bjh$W;:~K[_܋t 1hHpm7'ry0$Рw@t^bV(Q崄)B HyљQxuF2ny9 UJז2~ɘ;F7Od0Dk%Ffި_D cDr_>W+F\3K9tF[\ܰXT/O}n)t8*$vuW r?ZM#}`H^NOEjhByh ?rϦ O?BgjΎq~EfDš"pUv6=uj7pnq|!4aI)/39W v uDV: 5֤86 Tt{\2TyÔFYD6ƭ[x䤸]ng!EQ]v!ڶ`ɰrQ?Edd&yzHJR-Jͤ<⎝mtp3rJ#HY\|rx*YHHcFuDnDs5Ww>GgZGh|\Ta}_QSXMp#\B`>DفZ#~Mp\Yv &_:j߾HfMo<98luF#-m(O 3/[|~9>4(^](~pWxsSq( 5uƁӁ25з tࠫ'ڽ7`.\֒1˥,\2~ih 췘XI],Ƿ| Yv"P8`.( uX(kս%[gkLLH~V rgIId3@gm* j/f*DcM떍1sw H% ŃFn5%ÍF^ۭSqOQrc C? Mk?uyqS?r@R`?\:pf笅SqAp+`8t epڥʨ%YG|s.ʞVW܄ڽrÈ-N}+dwu*˔%셴9 bo]9;TQK}aK ]נP$7lA(~l<%C:>37t.Yh q!:&#9yu֝@QGx4h4&ZlHw4>N:F8|{}#Teɰ8 [d5 p x6zQM{6_U&ST~ I7kԯSE=X~dv R ,[4>݁כ8"dCt; [1AyhΔkwr:@4i>x q|WYNU> :Nxf=ԗpuv 5< 'ʘ,۵K\P84|@O } Hl3x Zi_}v5H>u[.HN6ܵݳ":0h_tSS^3{Ax'|<`klWt&iVnW”& kpB.T39i;$N#oTYB,а7*/NUǒ< \r-.v \0mX}ld (>C"rr4 ɇ4>H&ꂵo}=)Ï7_^X~ ~YKc,G,]OE=DOtFAn|lp􉽦4Cj 񁮕\cJ7Hz.-W spQ]0= % y>]`CZ4%RéD-U,{X)@b4BHCr~佩|]8 ӒkŹanQgC r6j>${ӁA+9p Zݱn2u4 #QVn 7XmJ5~'>4 %EDP\ENX.OI?ڤfT;k^N6He5NK 6j !kHOB~nQT9sN+>po&g]!}A0/fű]ȀQ+Tz/#{c tgߝpkLGK-vup3U475˺]EIR=;Ed`Iav \[4#dYԸ۠Al^`.hIapvp!Z39#HR_$;zTg : {Om؇flۋ[BQmLbju;'P\Lߑtz9-~16ʸp8ZGepP(em: 7 k|( .Z'6i4_l)mtڗ?ګD>SW@Cd hn)A˖ e]dC^Y[̥zQڂ>cP7 .;2[,w4 @2D?1YFB]{tBS^m-Dy-%vEB~Z&Tp NQ#ODHK}.G UuAJtATp3FZod0_7U-y?4 ց?ɋH0ugx)ӥG(7|/οl g 5;O@,QFF7/_z~1ؓg;DbٮQpHpc:rF Z!bm #)z> 9{5\c]6 V/ti֖Ib,oBSQtV^Ol\>}dl͐oW: oFoOcy,P ؕ5ڍŪ)p{k.bcqgszoGl&q8@`AQ(ቃs,4ɣItD [#X6$Xa8#WHF l*!U82-]L]_UQ,6Im9ۆ 3H'We6yx,3!#zn67buUaN bI2y[J-Kj!_r)H2/o#*j1s5JS$ ^ҖSk8e;a)w޳Dڸa7A 0ey C%ichHIL$R(|6 `%vOf7qClt+ҏZ(R ןE Ϭy,fix#d[A 3k0$LWg9TQ9R79=z7rbZEX )CaG,˫r 4hX , @A^Qȱq7;>YO+XhO X|ldnH&R@X0Z]_amQ28ňK7d>+4{Ϳ)S#<4Ù (lpW$;FRWƃykM6VvKtd /Ip@f%RWs)'ҢY9iGb YDE>z:<1 Ή޷zݶqMI4_AP"Q 83H=1ϑ*ښ7>d_ 0wQ7cNQX; sw{v!{TU!n%`W9Į)c@hն deОsd1e4T9[Z ;QB/Fx|MT0bc"s?U = ߥDӪP:v* Tb߄ڙ!:;k4wb m,ܵrQm >TNʟ7cpzAg|$~dӂ/%UrΣ>/kξ*S@:?R(l!EaC,׫8aiXf"DAAB 9ȵcb]q4N;{4enRu^XBH D剚ti$4E; l@pG =Eld; Jy:?{(R2^3Z5ǒ5,oeF=w,.KNh8] OE'4  \k} Z}AGE oaW 1.Y 9iXXmQ % Y>Bb*N1~!8;_>c% Im|/wR@Q<(G-)Э}w%ita\C7԰֣[_~;@k\vk twLBgPC?qϺXJ䰫"nlT؏TISPI֠B!>rELؖLFJCZ_pŦC.zZ(J^~j'՛ /ph>\?] X Gf*ڛOeNBGj`]qRKXm%ʺ52o59ѧB2!zWb49Ac5糸2A˱Xu4>[.~^,G1DՌѬCXT<'nGɸUm#Gm}'gj$Y﯌F5F#/'?yh]KoZM?Zz)CYk4iߜU1$1pzIG7o[q*lԩjH:7NLG /u`Qp~:$ Ա7A -%r2ꂬMCAQ3W?Ӵzbx۸u0] >+9V Y|񋶍׸*m"<ڭȡ}ކFHeYvJ)#j*iq&lC HG4CifoaZ"KRZq1G\8? ā292%Cgt['bBo5$06 uΦ*$'MrjOTE>_hM7jj.Va ;0I\Ϡ <)ȅ*w5baNzܐe0<ο~g. 6MmZEP)ߥ,`L1?~az7LI&BN(0nP 6VPxJ0f Ǿ7NkQFQ*̉QJ{nhOٗkT8) ZиsDS"E0,0\hqM6h'b oT O8:+myDWXՎ(tUSY}䄯ѝFlMh6/ q:Vx x``'دx6;rpTuZC']Lj7r7afVѽysL[ZD 6k];#6kL"=ı(i3X~[evEul ~=̄ӆy~I]ag(o*OmUej-8 \ 4|umRԮ"\QK,Lz*k,2UeIʤw#&0EM^HPK.iFZL2p:ԁ?o{)7G6Ůz\svX d|w_v=6_sà{"i+5dJS RM2{@PRza<_^G)t!I:xuSfQJ nQ="Ss|j*?l44Y.hǰcwF,6}K_7-@5}S;Uko[a= fTy5W; mfQBNu.Й!*S)m( мFc~Ta/Y]F"E@ PTyHĸ1E/zm'OeE,)eiFj(}?K@Hj" -''qA:O_˚ɣPt0+\@umZ^.TdX:ĦB V鿞=< .v3B4U!qf当$okG8z]5eorbnpC/ϕ/avO~~tG A9^%9RwQ `] .4;|m9f]5񩅘B2$-+NH@gs?^0P4?yihhS!?83f^F6Ⱥ2NDJLw3,@pij±Y첆]Cwڙf&!fKz  !q'Y]HH1!F#+EU{=‡ 3TeCbaVd8Iw6Q`MS#9:ZUtm!3Ek79IqAހr[!WA6#@D6fY;f5l_9hA9_sfjpnW50/uig]uY16"RUNh'>e}g_C=y^d QUm3|.4*?BBo bptJl4V [vF7kAEw8DТ2avXr.9Gd@[/vt(X0tvX>9ZDb#>54X{!ñ2e镭ijuQ\lÂF@84kjcY`HS0p6*ɅE8Hp"ygAuB뚆qj3+d"I&#/43!ێEK`M d 1Oz ړw% z*Lr !iW?8mhz܂W>e K|Ƙ1D.:Je-*P`VKLJ )ڽe4=x\IICM-he%IVu[s c2my0D"5:T/vDӊPffZ,U ^"OM *-n{'JX!iMD"`[/tO\b_wT V6RK$ $3:ÐjwݒZ܁Jڄ mF $~{u U~ :-Op~,9x+2 Q*az=%|έ ;7o)L,f xErDZ/o]V )5pڥh +ZMYwdҡ1]q-!XBORK2D.m~%\g'kDZ=^FJo }ҫ(rM_pp0i O(qG֋c]ؤ{r˴oENA#s q1@֧莂6Y};鼭xu流@~D2DVAN0k ɢ](/IJ ߎPB`B+6J<+/ݔw8ϣ{Z,L{|F[eWxNȍh- Ϊ CaS箚vaPt g)"\a:c1όT+1A8$@ oNM03?a44 u+PR[>H%|ȍfD餪yt眃VUF҈JR>.Ha5$ `T/zʨߕ_+޻kEg,p(T~Uzk|$v6ssG"UDVE@:?wCTA,iw `ڬSj Zw+/Y4p7gҍ#>[k=4]GkZހDMҍomwf#Zm@N:_ U^-DeExQzUc#= =breGuȨ@Sr^ecASUtL_(xlM'tJo-vq>ABi|,ճv~ݤ"(V  +[of(pÕ6S9.td|DsA^0x|`Ψd±vʍg[8ywDl+C%S=vD Pp#~oku_Iaaw:{%?h`n|zYdb9f /ff;rr_YDiHr`–V w/l0 jl{+([DR$KGKVLShl=(V| c,muCR 驇5>s|2'f!\˨EAFzS]Ԕ+d]PE2B%#3,䳑w(hVt؂Ut@LU4{@}g~ě|ktSIȩjIX-3}E8S*6]!^aoa]֯b)gߤ$?o[F#<잵ZY}X?d,ȷ9j|瞵'چ>G H"y6 _eXW F~em$_03%'Oʕ0L nYXjKTgCEBFDaegu5R͝0t*k:# .*C,@5U ٖ b9vO턘VY,2!Fx]/zҶ y5l7A*} [[A|z^&xVđLG52z_LKK ȺoT 7+:#OG<ƀ*b8@0&SO+0XR2fi p(3D/@:,ULT[I|r,?~&0̴J``y ioqй4JiDg(^\ٻ _7}$U%f5nARXzպӼ+1GE99 GQV%=N/5y_\fS"o}m49_YH{|dPPFyٷb2"( g|4KFd+;= URpJ,e}JKQ~DGɖŴ*15vHzU)GKV: labBZ3ָ0}ԙ>&|5sb2* 78d#IdO9a@<+/Yj7ՍܓfߚvfWX~h0^U$jt^lt.[z?Q.p g "Ǘ2 oCT2,]/To&%`^OR{~ l2g'd ^s:?B˻#5؂2ea_jwv}Dۤ㋭B齃[~f1Y^|>+%>W^4I=hwdG2 ز*|-@;SA'ttُYLbUW v5Rׅ-u/G |m7:Ҩ\ywsVk6 4a J|8ڠ&CXCZDg2 + mX t|W@\U_EAέ 6$(&Zm/]}fke4ɞ#6&o+ "lSNBo"R[WjK|"Bl.j?U`[4][-%^\fZ0IᎦ3iEc 9DoFslToMVH)h? )2Ki'6#f}U-(ۤ>;tIEw}m䐲zl@ ~Eʆ!{{śE/7aBU=;|@Sp"7qPtr7% <w"P6-߆⯍j'KĘE w\R-Kt$s3}r] +=gdƗ0h/ zxɉT-A=)肭{<w9~FDLsY\A!{k.`nT/J?gm'yd֑K+Ad nշ[=Ў2av ֻr@Av*jcY=f :,iX-3W@§JiowhL\ye/[_9`2_,Zr QX _ݧ##O!cW5Q2q3ZO oi؉/0fs'6 2^YᏥ>lj|"TLS'-GZ!*I;ȇޏn)`0+@H) }|VtgʠAk[P^YK'{5{'=[7Kz+"kPϤ@(GڰcI_vbߒF)%oԟ*t7)|tY,^0 Ә1pL.F}_`\JAٯ(|۶ {<4t_`M*k)t/yF-p,ty.n~0 ]Ȳ;naxA-`} WH`&kD#^ Ԗ4i\ FYHCѳ)gW; @Nsf7`$>Dfv!zqAy=iL5mUIZ7&5Vs/y#"baPˋ8aJ[rxoyKCvlG \T7cz+Gݧ6V5!uϡq~Z;8|Ft%"j{pY❸C aӐ-uf8N^J޿?f YZ wsjJ ^[l+}O:׭'XYOƢ 6Ml{fVcnH ׈_1P#|0S*J]$-iDз㓽f/2Y۾d YiWP%}alɧ XjTT0Mui SChb_*H8.3>}wp Mؒ.9UM쿃xKVM0@xfzU+b+)1,zPY];a#;pUr۞Jj&M⊤$05dU=Fĸ]-+oJİ)m8ĺJx/m/˩w%hjdcL2i- d#1ecF?`$SW3 Wc#gepЂz E&}4¹{!kA|Hd,`r}5mޮ2fs^ʼˈhz% jLpƄ 6 lP\ą"Ӂ-[ygӲRIym/PN^gfg6CWf)LJsa. ]VBYOQ Bcz^ӚS~LX8%)>H#r\2D @߹[ ?/Cnmfzcsp'<~SS8Z®cW'P[ZܽL *,ůI/_&~U4:`lr)5X'"Dr*zX׏qZ+iuh#7Mui aFFн9_m buժ[\MS M>T kxV=ѺjoW^I0K[g=:{|MF^0zqi8t?ӬZQP(r9|jWw3e[FP#i0[2V:y=1ç]ZjJ5î;;MKAG7 ΅9}|#&33'tE[ƎbKIYnTW@MeG&sk,!''zq4Y{5!@Lk)[$BR¦AмlW4ahZjWdJSk[Y~֤}!HmSl㒷 P}"h\u#B`rA[f4ZN9﯂?Gy}}*0n D onww8i?)PS_-LP) V\74vU3>Z$C{ 8c$''Ax} 21*~Ѭ$w=:'kK(iͩr.>5[͊zko_Q!J]+O7*|6 14<:)gKL[ըe]%d~o1ěVxGѵg3͛Hl*,f93'~U& 1s͒|c zYU;󍞅I)+8czkSi7U]wnwUe7ؼw尷\?`[ngn#P}Չm{?*Z @6,v~/qL7 "uTk׃uvPCS *{G.+96F҉CSTgyn 8\Xx UaIxf'G/dKo]y5`{۬[;gE/Жufz9 +@g[:F&O ]8G3ΔRO j[qے3F&{TxgQ.*BxRkG|~#֌̭_kRO{rE-Ui':VjJ-+.`p{5Z'{~}0rLtKgbF4{P#vi* "sb~@M.n~KNga#U.%SY׾Mu7#RfBsQ)9{rA^+Kg0pbm9>94OEڜ+)"ۉ _a|/k0˩`"E^k B)=Y}>^#4'>ڇfJ. W#,9iq6[S7:rZʥ  {Neዉ'j΍Fa Jo&%ʨ 6\cnF?O"2:^9H`=#V0Oٌ懸"`P$cVVonaLqAcՃƥ^&ǕG2.%Q?)9 .>ek~gdV" mQw4GDӡȧA#tG15o\x}A*ZsmMR1xA0N(/كo͒$т#wd@RV 58/-#p:;>Z`N5S:r:0+CXj":PhM_VaPAkP-6U2>0dG=ζm:vXqޯ]Gb.Th\)(fY2?$=L=Eq4\>^2\o?2N)I+'0dtQt4OUmD>l;*F7aeX2YSn.*M3};X'Q =*hQqIQQv NMI{O(ǟhPvр r{(^M:2'##"NO֤YL^o=E[e_ )T-ŅfMNη& SUbmg6 @4ꧭjEڼ [ QƗyj a3U;NS© ;!ێ$p}m(L/{e0ЀˏH-l #Ia4%Ōq߰+rC Ԥe10۹hI%o}" ɷp_V*# ڀ1 9hq^Fk[~I) xEci 1TwswM<ГFu$e~!+3Iki[j޽ u^w陙޽(D"',%XMߣ+ESވh =* 2jNo>BWH8>kSї3a]0K ,ܙNJs1nM GӢVx%$֩ 7*e ^aQ$"WL2STyVq///C~FRB#^4 C$e%LD4 22iPº`pN`/4tүC).3ۿP̠ Q(7~@SKeM"Qϡ@y/C+XVN:ǣvHSʈ~ ,*ѵIosR1("Gr@xxthG0a0-EMp1atYu` i6eP}-mTE݊҂#a7e1=3:in ,o;uOv3)81Hk3ܕ$988od ?7ȐTgcs-]y #^)oA2;rj>7uCCٝi,|~jB)IkDYZUzP{8[/T 1[LPYM3O4$9jq0١QJN{xXLSǛ nQ]Ti:=[$IC<$t1Ǒ,{tq [2qNQBP%kD$H{cD(Fz =!~#QS" g>IUv2D4.B!&l [ef "[_w£O7bĥ`eb˟&'E!$s\3f<詘Z׼ЫyGU^D\+p,)OcvfYYtQ9ja⯄Ullh~@,_2L6m7]"lwt)G6{ML(܀ *`^NGz]sI1Dn3,"PJ;E*O@f9ČvRRNBI aEp~KA2[\ƔXd`T.k6 X.\:rClsa@)ŌPyO,b&H]񅖹&܇yXc A$->Z&v͌Ihs4p'lᐧHN~zރrԩn{n2jjZ@CqaxZp|4u޴3s;F KJY"v\JC$$\.d8@-W"XJNpkv[6YT3Mx'\[k E~㣱>mH/) JMֈ*kcw&h. 4* lpP]I ڴR6ZRwm 4Voi j;j/$ڈ 5'YxuR20t-̼Gظ'T6#)+@|^&@/_/TuXxsrE& )l:5P6J򻋡U 'nm6j}Z!2J:h Utz{>&и9*N?O vs n:mK0u>ncp!N@ zB>OfBR Kǒ_d_~Y,nzBBWMF hƚYOg$Xg#Ceu4K]yƞbuX|9MWä,ձv}<~T9(%R}a w]n5$(,DZ#`*C6z~>{"ތVi)N [MYZQ :畆 ҕHgӅ:w{> ]pYGrq}\bvԳB@ TzPޚfpbso۩af |TU%Wn.&=$!c(// 8c_AEAOLjJ8]t$*U $iN 5`]:bw\Hw7[tAS~#y=ϧlFi0K8YׄnݭWl+f)CAQ6NH!hsנƸ浫E&^4h!7xuo4Z¾g3/eX@NE%;Wz dE d ^~ PhQLƾPD6ZF_֘I#m1z;f g$z cE/baH- /+^ᣍu27r3WvB+'zD@A搃p61~:4z!€SD˨"5,ѕ奭Q2xgE 1) |;$Bqn#;)02'5:xݓ:naQ _tL'.~0N-pjA GIk);ѳf7Aa-ƘoϱRt-kdR~t '?EqFJ*yz:#PcM, }_JApyRwIX7!-KU_Iߎ/ӧu&D}i ]j_Ȕ)M/Tf)KZ9I&HBmjZz 9 K{z* %wm>&Ͷ;d̜kGkNSMgI v"A /#v8%)ܪOҝ:ɳx639\aGǃ2(55O;`mUWY=gR䣈iϰ)p~.\g6ǔwj5a-Ը)Xx].)!o9ͲPȼ6CK) fq[W?fxij5TոnR6N @6|LڽOtw8 tr AE=@ӌfadSM_(9F'#/_'7LXEQC9%B9m& $՛v P@dN4<=<2w*V$^xʲ zxe|Ʊkg   DL)yvmDw A5d\Ņl07٩;o/fq7dؓj@Szj-:0HS-1xeJ,m=_۶h83I >? lɗ|/2v?QYuQ(C 1ABV.gT슶K(pbk_y_VY obV_jYx\a!P$i&*J&\Q%LmIzE\uhoʌK =q]2mc\vv}o@Ro4di~^*AAfID;|5co)7ϴ ;6hތ{Lӆޭ(Pxey"E2 Ku-FUpOB!/ʧ-6ϔA>^t-mA`ݟ]ls5Wq JI˿(D!)ʉS̵ZHj]ga8ʢ*# 51sesuE#=tq]ڵTŞŪCprF*桉YFqXBjKKu9H|vmy(9ᑐg5,fϫφ α 鼠eYj/*ߴB́Q#(n2Fo^v+։i\0781;[\ٕzK0]\ĎWTy9 #W{9eKJ͆ц^<-] r":dhl|%]Ic8 H&\Ax&>#G7D{ Hq>9"XJq?mR.baqn/̩ Y¤\=4ZܦțgimaMbd?~$飼4Gޝ 6UvpSj\YMƥJhEc|XH2d\O/Pzm#Ȯ/5lX9>.ve5t&-M.Yb&5mLZ"͟"A((pܓ!e1 4N&%+57b?70 }e,%6S!Dm`ꉳ#[@-8[f0(ɯ:\L*BLj'ږ0U(Ҩ(., #'fVRYb H4,R\.ar2حhI4Ld^S H%Cr407z=W %etxdh> jcg.sgD?#㧢#yA$V5ESSBR5)QST͢~z i&r)WX {"E]=qnt#p7ɖt5T9l͝kEY;`cØlFТb U 8ꅹ_i * tJTK}N_*Dʄ1oHJ(aϵ}j%s75r,B F!fз4hgZSҪs2$FOOi aUx uRGUCF:$$z~T? (vbܫLA6ʠ.?6q=%D"5)Hmzҹ3j@}͏̜/,;?@v"] ?jc}څ-Tk->el1C¯iO"Pc]tM${*:B'NOӀS/f3 MÓE*~Eo)!5-i=1@adӣ¸:Gd7ȓ.C܌1-jb_7C }k֬eW&5hd ( Ԋّ:[x^dڀ:OîtƵ|եj4 ]^*JGAJ> \M7F_A$fs_kXfN1\JevP K:? ӳi;<~;##)YV[\sr\˼  @Tm.l^1 lNPHPtA"h6!W ABe1_Y-ǵ(zųFATG?~D\~RK$x\ZXT7^qw6FT56Tӣd/b6c5%G {q`T ֦ P@Lnak " dS36x NgaX B5"!B Ngh rZc2Wb^uS\&ȯ*? ރP?{Yimj]ßa}W%ݢ"ä^X^-8ҝ}ukX\ -qfPyIz\60Kޮs +OVvm"ؔ߸4'N/JL|; c%̼S$xpYQ k@᯲YHv#3$_L揪Cɻot_qe{?g&m\ɲ}"S|vn/ïi W\rqOP 4&[TyyŶ}!._,]yg.g1n93w-xFl:,ၥŅ1yY;+th )e *[JGs,u}g׺VnV}̐ @3-F/f.*P 4QWɭvBpxK 7`mngcV-!Md&x6~ɜO $> kEҡIQ&C]\a|/VSE'Lz9bZmf sFY\cCM}PSAk>R].$rr^x8#+|_j:; 4sG ZKaLv_c$Cco۶7֟*_yU-pehf=b/@c!Zle<B$#:\o[<ɼKWL6+kR71,nIn#hjmլ.CKiZ{מ0G@SQtq+ IO rR̨'9+o-^~8&s4b ٫ό)_IEo X[4ۘ깳ˬh1E JU :CuBbH7 9>p`gZ6W8qn73xHFe<'!Uwsx@疬T7_,H/vO;e8S6`ڸ|^53V#G93#1`I'[YwЈ< Y[# RjwQ%sڋ3}ʑgS@P ղf*C/DU\ziJa2#|r `eex' ~[6\ZqUW:aBn"B_}}fC*=t( w$ TМqO%띵n_]f|ȓf<'=z[z=eJ5 &\O z,a 6劉} 0ևz/3ʌnD)wh^8RYj-G:CPB-wP Ξɵ[ĆeBo;>.LTzgyc3m WdS4jD.LxHc,]}6Tw,u͑4 MvAH^5[{ ql5P6#+<6gode:& -F#t|埁gAo'P*?b[w# 81:!7lǟUj}t›a-D~3`,wLb!v9|Kv܃9m1lK:K `8e PڕNU{Vحo3Ӛo 3nRȌ\cw[eA)E44XViTFN;AI;.xa_bq l_€LfMWaj(fj^.uoYNIs dI} u+2Ml4>Ej:kDӬU+ *X;C.[I Fc 1G#S=:D.3=_#ۆJy4 -7 H3[/ PAu9.ztSSs|n+ҤaVza\Nf+3zU]IT[4{N/,eyE-q#vcC<)A؊Q:Ei0ia\'6TI8@a<4y bܚ&?=7=DS+[w8juڵworBqe]Egt\`{NyevW&3,g#e0wNX%iw)/uAvsAi5"} Kt(pU>zweʓ1 %}%H- H*,L8kmyzԍbwZoYgD\ccmIb \>ZLʻbȖ촚t}tI #엥-BX(M5kɞĬP7Pm^aŬW|Xb08 CbH7|{V%5ZK&[KCȡ6FXQk*I/3?{s ViMZJ>SE~vuF|mpr ϭqҡQf¼ZS)1WJ:(ѥeT |!. bwNF?rdS_iu6*ޯ=1^A+*& ].aeCyV{@ѧK )JN/nyP*E|20-m7.),uf 9pmoY_aQeTf_G gI:G T$g RDVchbv'j_w8)b. Hb̷X#,GxcDM ?{~٩)M aamzRT,iԀ+=sE4~~2ѓ]|pZ%so=l43Y6 ؙtYYfb䄴-G& -o] c稚h '^XB WVDY7%.E4P!޸2+:XR*L0Nş9T"+"ck87`TN Ȗ:*VxVc`qϸAm=bA լT+|a|`K|KAOpߠe T@:w D"Y5R kmOi+smF>w+΁S :-<nL0iHb3iH-? 61ݬr6oO378ǎiӬnu +\nەD 4gXe $S;bc~%|AW|@XzhT;4%H̀j! 6J/\BAD$)l2;J*{(ItA.Ma(K[Ő{ɬ?QOS _?6\arw)"a쫤L_Uam/&?HZzZRYOrJ*HTNλb&HJNGxsL`˘i3T7AiyӍq(m#R}ܢXR"kҭ 9Ʌc.AӲ ,i@!mdCE5[w6bK]+ yD!v"N]^?sҫ,NJx+F[n<$͡ yt]p^*2YA ]ϖw!ܐ_s@뿖XwH ~oÛl{Xh[ !QJpjh T$#hbgp7F:tg^Z f'knL0䙛ENrm1{shuhDsC6P1͏nǗ|:u Q 8m`ӸN1gՊ->M'MmYZppQ޾"m OoVfMP|+PVG& ]j ]RAa% ֌:W**ρX0kj=lȏ[/IbOZz2`3B{/`˿vl DEMn hLR#IQLðu W>~yҗ Pr;ÿbK1Mݒ*{l@H @|rp-W9u?7E2'$%v*a<j4AG>u?"t]QiD0F6Bzs-,BUQL?<9fЏ6!ys?>[6=y?6 rӞKl[4s:E0z5?഼kK}(vIP##b6[) @ia >*fKT„yz볹:f^@0Cm80(W0NSaY gjTN2< AI|usdra,Oz|(^²h:z"25}S%J OCL$Jk\k5XB2aD &Lk*])$[v%c.``*_=U4vb@olo f-zzԇ}a+bF)i3JA 6i짶 ТI1(c#I/%Y}=Il/x5*=g͈]S`VY$J3#7a2Jh_Z"Ftv1!lЋ ~7`@(6K7D>D**P@9K?:u ?HR=Լ:g"eԐ|!ݾ` 2 0=5j5ڂ` \eT˹iHDPT`pHȡNy}Ak} RSͲ, ʞ'_PҊ._i`IoyAc/Y7Yb늤$a̡91Pj ú9! j뱘K w< )`f9!t?/&?aP}`1fNpZζg+؄!E<{ob"|J3h83 8 bb\>w1G_eAۿ>ӿ>䡠2<}Ŧf,Kҋ„ d7WTEߊ) ?ʰ%8a6CsRpuzOmQB9銹 ˅!{-F|22~頩)Ff;n<jeMţ)E~307^fGR~ 3 -f56 >o1ڏR]q9=Ѓc#)9ړ\, >~N+E?Ҟ{}u>t3A/uT;ey[,2R$$T7Ţ6}ET |Y1ʹw (`s{|¨?L#S _"aq ބȗǡ,OIڝ "SX(|59EU+~#Ds^*CXNmRD{+0%sً{^Ѱz3hV&_bf'3&mty\@^b>%ʹ l5{%JD^a]d+|9Qg|X*zKKr$x`Yrxݲ!P[˽q3Ψist!qP3=5C:*iSNC>!0߸]ޱdovy ʠYZAct' ).:I ntMJH*Z3u}܄G,}3?PWٮQanr;K^枌߅ QB[3MO}aca~a}O WGx6B/{mI576lh! \w WzehCҚ"6/;]; çnMj&wp_i X&6obf9knG%d#;t)lpR@#iS .WJ=~rC>կqD .Y/PHI'27` 3W ľMOX#4UK%c;Bo5{Q9?dӗ9&si ɂJOݞ?HTIaRf݃3Zl[KKZ\X\#ܧ)mg7n}nӺŠH.G;rL?,hOEa{ћr8nܰ&Q՚ ,/$y>+6@*H͕*zW-Z}V,LLJ3!`!ׂJa]S3VڃB`jϒf)dzz+1ܸ> -oTI!*2JT$tQ[_R0 a| !97b8)ˆk4? ꊶԸy4 4]Eš!{8ӌ`:+_,xv|[UgwkA4\n c)@K ]LVs /CpۙC5s̟{|OO  jTb6nz~ՃՂ@ֹtD„H#kiTZ o ^IJB/DF7~g`vʼn~q85Xx:<L <}zaTV!_pa:l5M(D"'n3A&atDz{eFVG2ܮgUV{r¬YѿQ,71"MQWh*ݴ@dDױJ?yh4IeU{o2Z}ԫ з<dū31(IyBp(4xBô$n.`kl&+I_|Uv)T~A~o}dШdm}cF2k>9m=GHN-N3:,l<jߞ,ʉK^1wc]&dT9G/G/W>euIs@& Q+ 6+wk[O*{>wY+ Ǖ)G AjsRvU) %=S5Q)JŜ{ 䡝A}xqߣ_ H$QfƱ.M(եwO *R Çk |T=/Bm`tı]+>×\m e3Fu}_Sk= $P:thY8eAA:ήY{QYԸoW9j/O9s֬>9Zgu 'P#j9Vzq?2$`} `XHa 1 FW'rӳM4iv#o1 h07 t0mcO>j;+-J`ET_6$Ul5`i 5!&ԉG%1aK&QE%eڰ+g8bEqHtdV,&qVEױxcFzJȋ&=6҈8I״2 \lm;2Kb VRc}yQ@7 o#4T"aLqjԣ v>L@+OeS! )a ƒ _no?W}4x_m&YcY͝OlѭVZ昝FsQ1 bfp)ab_r "bp#h)[T/VەJ AV?=q}zgs4pbeNT`UX jE@O53{~[vH"7'Mf*DMT +PVZ/ViϦ̯6Av*ު뽰d/z1nB *9]Lߚ$%`}}`,m3VL_?;oJÊ'趦K^1U׳S1FEF]N+tץW TwZ%7:םTU G34,9,!615c'{Bsh{pZ xУY]+0ټ6*9Otx֝tsxAf>hʞgQNsj6L`uۂ蛅*1vE0tϥa'y%/ۥYܥ%갳Yנ-9'O˰1)|W< ڛǍbVD5ML8_-ڎCyŤ/ܽDZN!ncBHyy U/!:4{huuYQhȦARx;bLEp3=q+?ih#-@JGwz::Xv% Gd"{ل Z7d;Ǹ!4he*+Ψ8m)KrɍΝ79?ċhѯa}W2d\YgW8ٜ|Qj Þcb_E(b1*UA0)>gE)M4'|"8ۃWӟaE+ 7ˈzs8zRmAFJ]n؏1|=H=Mr &U %n|6X 1u[4DsZ((.d 'ߪ!IQܳs>2xlI#НudX aEƎJ]~ k%IӜ7j zwRC8j5gLrg #S7ڏ !J~ݰ9NY-\ER{X Kj\^/rkMAr54IDW Q[\dP;A+vp^Y5U  :.~yzObO :&_ A.n3Tn"o,%aL)JC#DU-kTSeo8`و)}kq6M{u[ Zu`^,x%6n9Ax[(z\W&8ȗ}h2TamN#aҳ,WU{pP* t isPx8~Sg;APm7V,N)l0*%(PЫ'yvCP=5U&,^" dq|/ AY p3A i|XA:غH0SƠŶަ[tq8J*cg]#OiFF&_QИ!X1r|n& ہ@,nBݩ4fx`HuVh^CAph N.7rZy"|O;ыuq^vُG3pV*1{"x+k(.W<_~| JFĬ@>-/YMiOyLG_ݟezxfIEF (ns\Zi:pDUVf_Y&""Qw8L~T|$ [IGWD1XԻ#RE=ȉ iILk )s1,*"JZ];L!^2s.e"ukZI&Uqdiu܀c\F>4ռ97:,n;`QW2A׼b Zjwo~|3R ЦJM-ϻDw9oh4^ Q@đڬ9^RPYT)Hqx;E緬Уo={ ^FoOk_Nw#:tj띏P*ƆnfSagbi1`,'Ŏ{h6ȔB>wN! b`$QIUNa*_+{z$PWWbO)I;Y䒭zyk|G7-|j斎GT)@h3 Þ;"z5ܛu MgE ؾ;E-Dw|;lllM o JPjBџF`31б ֛w݋ .9nƝ|F SSUuXCB~ ΎG Z^ 8U{J/KνRT^qQVe,uE7I+ h SZ&u 43ˈ%>T4%A2jP{nOr iq$DdFְJ~* _OP9LD}ر}UH6."D 1Ϙ%?C݉\銞 X Wٸ&̒I7d&,xō@`RaֈIw=40obk֐CBdԖ4qC{R 9ia~ [:޸OCrدU)A 2,QE1ʢAxAHPj8*x+)ruQjg }= "!h=3@KIclc]tlSe BOA=*7oWeW!e&X .%F=ϐ2֕/+bb *rʎ٤aiװI0hϛ)0{N)c~VVȡnYT9ҽJU=:znЎ.s8+ar٘J M o;l>=ǰh}U2R4']0=D36&H{;Rc?ovMfw?rۥ?0cr|+4R}AP ˢ*+<kF̒2y|]5t #*LO`6(=i+J4rC7'9qu'72~L* +QԛJ&10C򍉾|l[EcPjX8WcS1EG4فfe9s"8kV#o]v^cEd߃r"T]wJ^ }`-X~֕~zy? <ʧ\,6Pf{!NJaa[tK3b^qG5?[=b4f\(܄k]\u\ aP6|7zJ֐a0-c:5$Dv :u:@ WBL?5j)e1"Oc+@-[^=90SP,6b/b"PʟH.=EpNDeP"kM  D RuڗZ;UӠIiñp_ߊ{HTm?|4>leo5ȃc1pmFf?wC@@sE$Z9amȒt?BX꽲;PK, FTK \+mѴpv Qǵ6 ux`Ξ?,aAq0'_nFBZ;164l!P~XiIx!Mxf,˨zdUlM> h馄 E;kƟ @럏Bѥkqҹ[Q6Xg  n㤣ȓyV=E,ӥw.c3z0մdGY$Ҽ:QT(0v[*ON٪&fiךw4DzagHk:m :mq 9#hyY[)PϽuۥ۠u!$uYuĀ!bApv%\l5m[|'%M(j0pS1@yQX!^ Mdc(]nL5*Ow[f]9)9HL $'I]΢v!sE,jC`@ࢪ[JOZt&HC+]M;Cں袜\H+'c5tKCZϧtU*oMѬMR~n*=ہQlq@#梍f9l"|Oŀ_ۮ,}Xuuit9~Ȱ/|]pfO$iح2eK>v~- i7&hWTŦ{In%e̠58b)~d+Su+%+O0 3$eD.BȇlSB;~ B ?kWHŪ#z#72:z-8vKSXIqh *?{ڞ+*ǖ,f\ Ȭ]^JHJ2Vmqըs|çѓћSXcаx%4B$M3%fzz%/$=)C^^سRMz=yYV1AΗ7?I^7yH t VlIƮ]t:b˥Y3c7>>.hu5š))=-dyO׎L3]V/څKkOn/8޺&$`PRכt/?Bl z7*f$H?OT FNڭZ2e6bԽDh a)ڞ޸{ŢL֔c ?ۋZ7\*BOT|V6Lix˓0KsX]df8(Z?oW1Opa#C u\"Q#9i@QMuX Y=9s.)jb3gD*fV&UZTL4՝X4+oFR, Z&){D[>@XmW5$歌16mJ/n#d x_ꐗ*fm%ä U/> FQ!")Dt;*Mq-]([/llvVC@~h/>Exol39<ڑ;PÞ?䄨Tj<3?E$AhQܹ.Є,4._^돾i$7 n-@>&̫h;2-:JC0ga@ؚpy;Rk(j(={Ȑqr)n;*(k$@qhedpNQHMٽ_84*.p䧣sIA]0}jœ/3Ƿ`v,»F&U#"ISu0rel -t8ht:cfRZB)l@4F\|,.5%ƺtѦ}Ѣ.>Uua#h!i" f*T2;ڒs ݦx:aw pM=ԋ6˫WAXsbP,'%%*qTBfvpq_^Iޥ3)iNu^Ƀ86J/x9J}"=ue.88 r+^Cov1g'=c0ى."u\cs@m@><K4??1ؖ V<ձi$5HpQ2Mp5ƚ 3k/bqe UXO zOJ&dȼfp*ݺ|otY5jBlIt:|F[Ԙ? 0 ";s+Iex;h2 yYLɔo_yꊏh?{+;t 5m5s!dؑm&Ѳhd ΦYaf8+լ]CE+3rO_%Y(Aћ6nmLm-WJ1SsOfwh Gk2>EOÆ^ ݡ3oZ2Wd$סhmC8IF|!…Y_HQX})ն:Ԭ:;dE8_̌a AkL T 65 q6uo:n&/ }X&$Z>P!IiI x\$P羓!jZtg6JP%׾,bP-K/ tM#`w1zפ;@Uc2`VmFZDс9$F6U#:L6hЄQ9Q(v_@~Vt ;eg96JJ!GC" % VĜ=3E3u?>|BˢFJH9'#jxC.zGyxNn(スXt5$.[ =O):SM>rC~BȌஒџރ>,0AќSaMyZ ICƨc:9%ƴ>=߶-} ;$j&u}sDLw `\]ϷXW%vdG*  zqD| Bh0{QZw 3W Dt5QÓJ $%sZܑ '\+L1ʸQj KX~0L%4Ě/cDĵ(٭(^Z5:gTg7&=5 8t_H:ѕ v/K ؤÖ,a& <\Ƅ6DLtk#CdMҋZEQ3 0J7:U}XbE00mmܿ1@XI,yF-\@}2s UCLgZisodEX?s)@+'}9{_ǝT_^KOavXū#~g7&~3KB-eCcދYlhUĜћCA8}AEOƳHjWH{F_4 $%NX&ҵ (q+ʀgDHWBU!mz/Czv^{sU qU[뱻OT] L W9`{\9)&ۥ*>nzYӱx& 9a1'vmi=zuM뉮#TIs8^TVk}'@KZTŪBG;sGf YN6n_inLT&QYjc`mx,rWl' q!r`)Xx!?t^in?õz\Ty-!),uGOk\o ]RΚc|VOAknDp1k<NÒ0ٚ^-RFP&}X|< (TF4%tmtͬucü?]Q}wbXz^k8"Μ%*!)ݓx |Xohu'N6'w@R}vv£+xLb~nMH2gzÕIo6 E6r#n5~cƀNEb||sgP{{}y:g2&0kzg>EІsNwB^n=M2ˡipveBb?ʑu6C$z9C5ДPj)El%'y][wǃTlKtK^[d@YO|܎' UG'7Cq6w$`Ҟ/)&)U |q̏1+ be {G r_뺡 ,O^ɛNߢPIX Ȭ媣YT\KOFzYq ltDQ\VGIMSEDCa4ZMjcOhL5`$wBfZ+„%ё#8 L~ C ER^&K>{L0ߐR(qI +_=V9A!]{:k bE KJm(P5H?I&?@"/ c1l:YrrmVnIu 'mLۀt$MגYrb6! N&z(GrSEmCbmPI%WhǍ=J#Ճ~"@4n?=MMnR46Tڪm`=*3% SP9UHa{}1:bϖ|d"Lߢ̜U9 3]i paua;Rhuc}Kx*L(^[hH>'ou# aWC嘉H@Ldk43߅Ng Q*!TEݬ{ }r@- 2/0b9)Ӻtiukpf]wY6@Jgi3zSjuEC ol uFڙ'Fhΰ1a FOA= 8T>j8ޒ,'|D񎖍W*)c :E?G4'źp_\t [I=sYfSBiނǞS/KP meDZtD&sEr0pp%+0hb?8W'F*<_c|G0##W|XzJ^$G:~?:T_ժ_t0DJe.<59t#m5MuÖRnA1X8 a:z3"[ J) 9K#7h Mb0 vKaJ,6ea NY>UN^ (R;cٔު ˨Qc(x/e\axo{(- Hvka IRq_q?1RYuƸ~xb14,K`^Wbn[B=buG,X(/Per7:CuM>,MH7& 1{!1&U4ӳqDZCpO 39H={1ͧ%*oyלzFٻo>:H ?BV38i!5>7Zb!Pv&8~!{rD~vJ}X{.I%<|(7H*aq4zC.h[g\ cMg FNrQp=\t$7Hf|$ZKKyN76/Nl\-wz_l|!ѽtgb#ŃSyʮW8ɲ:&w>Yd ka/]e-&9%Lv!:qH1L"fYw2AӘð=b)%?f`)=*'(~TbhIQuN| ĺӜEPsdVdY hZ+GXVcQN&oKmdC$N̚hFaDM=.Bɨ{{g)TS#\7 ;>!P):} "gԍ,:cdAk7MP0+4??F .v4WC7΍\+?* ;ɬ05D4ܷUǾE))h X'DJ$~uJ0&TSȖcՕ+?]X-V  mMbMI"ty:-{:űƕ/O`j =dNNLK)ʏjx6g>4㥾Tb%n57ī4ߋ?bh䄆s'$żUk.|mʞ*Ϡ:ص1gh fLFꉿ%#VONkIBLfi/]5fLv iGFp|cnM9>"Fv!' ƋEq.0L*i(m:ɖj^1Ӵz΢-"Ό-_6trE"N<(rNDkrz, taںA?ޯ}_IiF뫪\q/+;JVkmkgUs>ޘ|Un4g%ߞzǡ CV+yBWԑ쿥<9?ȎӓXJ~)tKTs JKLB0k7' *v48!\VⱬMylO8Y&*"TV|XHQ.C $o3LnI{?Ulg1^Ō#J"^!KsPfMG,aI : o@~嶢9նdkgL])l_z31k2cp#|2w9|$NK. %!|II A-`VkMkC4[po-5 ,3`s>(}>6fpסK`8@'jcOc1:]*Xf[?ցEk nTl]$.'u߃ub_3/k > 8}>\>Ő[GDyPO%Ÿ(t^nxS4}JN}#ەk+M*0bZ5 6wp;_}+Gy!Ҩ86:|6K5kdV:  y->c4*s#W߿%uəZT,y-y/[P+0SBܶ7ۓS4}PfMGW J]cwa%Li]P=8Lp̰o!`bsJkoܛx>0mI#=Ӷp!xaV\~SqerMI51J>!!oEb9h0vs\b@UffCwu\8,oⲉExc):@(--7:A"YH,D %fAh^ 7;=vb0avi$I4đ ߳PԷgI5qxAg_NQ0ewPtB65#z0)-L̜A"iJF+C58#p9C<'_ GN<"]Yx w- j⻻LgvQO߉kds(#W{GC]OdTCQnyơ.R҈"P;S!ĔG.Cd{.#"K?ĚҒt$1)#| pw@ƽmwR=|(旎k]~ 9o+WSz֭FRvjh4pA fkTLCPlt9aiX>3;@$22i{jA[zJ4F 4݈h5 u I=" mL6CD鏓y<a=8\%ZoZAry3&x[EE^*(zMA@mϚ0Ym]lg9?b=T. +EjfS(n xqc-7->!4=ld`wUvv}^E< _A5 *{ QPr0$N{.BjuF 9y Oʶ"CVQ2 $rAc9V})jidb#ȩ>RUjE:RT:2%#(웰4Onw\hZʈ5OWRu`cܮ( 쏘ӀcpE5KsY׍f.ߢO^eRb9A鬵q?e8u k0vĩ|ݻxw+c3N٬EsGq>,;f0cqxF]]a{_f @g7W "zWC+e|57:̹һ^:Ϝ5фm}9A*\JQ#rl4Fdd3_\eVHa,07<{˔J1Ģt- ]pW)**O#Lfo S=Wetc`c[qjkTIJT@73}&&5~ÑiYѨmR ; f3z dH{E~"5N 'zuq=Vb >/O|@\c*0%~Jh [4Oz`B9}26>C'{|{MUT_H@Ɣ=E.; | A N.)KC!"HLcbuɊŠD,R&EDWAoރO~_}ϲ#L`UV b+F(%-0IV?Hw=Rn5^ghA%E_h@hl$s[_ '_3oF߼AtL8,sU0h>ao^/߈At.aogm@ ȅ 697' VX"T!a94Ŝύ|?І!J}#>bW3omވke+cv $3 מ׆ gN2G/Ec\XngeқM䋂$[yB:‚ #H p^CZDxMqw(1 AlpZWp\|SHҶP =۷ Cb(d .7G m3r7 RG0&x^;"ISEa%\X$xvMab~ } \|P*a.x=V[Q!=2 AtZZ,ғ )ar \4<):^07D,jn 4e6+ Bo/13"U$} a^b1NcB!i$?ŢZp1VuvPGHr*upIiEvp0h/ T2#IDp 9F8+ª? "!uPƯ`fM7~A筏#D̍4?bC|bu qzX@/8Zbh)%GZ4gDȥ5uR6uj_=YMBXx-2RVʔ (ߡe)Y@#cy(%rDjOmX^>FbC)>T]9ŀ WS VcΝP!V ?b`,P"K}r>=bd pœX﹑iVϊ _1#q{'|%SO8E Nz\;x @B狘]ιOcfQIwT,[N!2mݡ#KQ>za(/M4m"'=i>w`1M8e(n F=_쩦no#l&.8t|^;<2;A÷q%؂R,$_ixtH֮=^iss ;ѵU?N(Z,Fzr8us̶kj|͜LVcg 1{uR𻛩;40@j`\ZVu0X\;1d^W4m[YH1E"#p51AdQ,WSB6WۣAuF+lJ@ԗjW3zA^ j+=c9 'mK>fv܄Du1Y蹱Si$"$ϟȜFj$~XZ$A(x9AcWc o~{ )"N^*o&rTj Pl6R2[$^ı~%Ŧ +u*BWZfr93o'05{"_H5Џ*kTp¤]W;k".,˔_&09/ $z2٤" ߨLKM&_ȥ _?+Eр/?$J\[] 3$E:oq;: 3@VGuX*KKW*Ϙ 9UeU-JdM.'{r"dr8uv\G*8[/40)=RZYsO ROP!4T^ZqYM- oba_sQVh7=@ rnVCH.ܓ#[;`QR%)迻ܚY>c&UuY7)*rT 9_ׁ+$]פ~M5?+BKcpsiz?M?y3Hn`ad/gߪC)LՋ>`b/کV}9$ (I?#~5I3Fv6-6F~g1^yLx7Ue(P(,]̹1꺄COAX≰ND[AӖ/yc IفZH;趞WE?̥nJ=E&wm*@k"EKlV8L|V 6iDhX3a=lGİu v_)e8sf; @{5 ~r(란2lK9MZKӭ[o,XQ̘_u7NXYy;6%,\$#wH<ͨulVs7=҂6&UPn^BH,WMcd:GӧYщ;Z"^@r 11F0zYkb&?-4l2AEXlZ_H[@T8!f{9 eBF- bԘ7QA4I"*/2:}EO/[ba'f*4E75PRİ5tp5yZi@$j.'wmŹ +_oUb~!mZpYi$ܽr)OУszW$&Y%bJw,t+1fsD/CEJlr[Ґő`Zğhd~XtHu3&3S)B,'X-NcK2/!(s;IҜeWF6F;Π[/tu VnHSCتܲ_VKETQn775,M~Yt.U WSm?\#x A|OZbgBZUM3BG` ! mbn9Jgo:2偸/?N5g$r-{KK:/,9FV}z;kce? 7Z1vŸaqj?(^e5;fa`\x·DZS BMօ.Nnf8RuOkJP[~Si:x .{<#P?tMe~Dd[ťF MWZ[g#c 9͕Ϻ{pZh 2! = lІ( vQk6^bżXQz`K 5a_ua}/,N}W6R\[tKJj8yS' -xI;@vc{WE uaT^cj]EXۥgUEJYpy ؒ)p_PL=/"͵ r>gby,[}&hh>汣bF֟9剋U &SB8U (h-CG04w)]wE0E;ˎ$[ÆN3?;,tcV:㖼ݲ<9]qw.A_iM=*Y=x1fXO.%YPr!e{uȋJꗛcL/D5\mi-k`V.ςRKFy3B.?>kl:هJ@544NP)xeW!.opFӋy\#*UG:|̗rQ W:1q5Io&z0 UV*lȕ>c@=j}A({{PSFsCk;lȍ0 dBŠ4Qv"$AkI@ ӄƜº@WhV-$4vrT΍Qֆ-g0Q|ڱ8.uQ@IeB}n2"KA&6tJatdWhaM! ,[QwdtO:ѻWP%cÂ<[M^|)p hV XcD3Tdĩ@td;hM *bow#cv,yy߇.)Hn3g)j= jwv9szq^> \)~KukXH]jwivMoJ[sH#_DׄZ]K ,`nw?$ARm!Y|9Hj5!M+R +nȤw?H@U?d(103J6}uSH`g+G06nɠhCu&V8s,/Y/6K[fFLhy5郘hi$!b}j E9!W /d<(rt5Rn]zC> OK@ϗ$咗~$D)t (3 J̸fYwABgLh4٤>o5a%o, llikl 6;:N_ UzF|);jG"79XbϜ~+`1g͍ws5 C@=8ٮK)Ԙ O%1Fܱ YRbm+-HsoLᐰ)_r4BB53=đtxHsW#ɫ j\=Ǎu_%o7)Y˫c}0׆vHXwmTLG3a`0fhئZdÿ-1(LaDO+z>u0lVP+;[E{ݘIXքo,8@|^d%S.J]YlE;aκG(L@/2ǜ=t)[?VJ'T ׃}%֐[вȁyF"oqtt~n­֭Z.NR᪥2(#W:vDs|%!Z.<,3d&,94%«lώx#;4x=`z63K-ivӝ Gk>"R5H^\Ђ0q&'\7\*J㖭^BX>D,N,!z@fya:~`5#[$x5uD5%qT1 >DL] \tt'WV\wU5.Fl9[/ = AH6df!F *An Q정m2/s~2.Fzj%yY|I+XvPfTUus_ЁTOi,RݿJ=ɑVE`#x4~2hљ_t~C͞g%5Ƶ"g([Ι%m"ӿ<*%H]kryuyFK&@l$F8}AG@T1bE-^G#8^?N޻NfzkЪLF 34pL: `]5t 'L2*Jt<t7ӳ2f9P_]8v3ד>Q+3um2%O5trkyNyq }84Pm[|''+02FS.ؐl&bM3:N_ZI2ƊhQG $hmQX!+X׬rd&(;bnFXDž`Y$fН UMbݸ6E/l^ )urAȃ@dS^g$4j5~*GRKJ`} Z?XMHބ&{sq~xѝvOq/HD½VZ&.˟iajt>&[x&`uE̢'.n٫n"X?bEX R{!dk?c7d`MΞ5a v]Ȍ?b]|B^8V0aaY@h2N<<{ԁ=Su]?kb<xL'Ly6ryz(Qv<\}*RE,"K@| w-;eѲ^|û`OgebcĜg9R"Aqz]齘4"](mSQ5k=yĖ}X;^,J?Pn)A)-{.[$ f+;pk$-<&? fw)(IڼgWH>5XV̈́N큤$gxߧMKY\V_1/UˏCJ=l!I>}߱j<#=6j|M^t)>HiR-m=>H\rO4E0kt'30f;HOWC¦iHW:Ek55n=[ &*]7-嫄uc0`I{I1:U%lz)A w0{5 .ePa`FYvEY|xo/Dq1 mX o$NkԕF_ |P&Hm?jd9:V&5C&gYԄE+Z>"*Ո5V{ d 2PٷZd?z>oe> +(-? S;Gu|Dy(m͸LlM}T׋o '_wH^Ea&5t.$² OA?E0 _F`MLdo)03 JD<+pDX'vY&~;/ |=r!7-Qg4fӴP=0}lա9gYVSj2\C}+Wf3oE+\t0Sy;'P9T9+ '> rH<h≀kzEV`U4N"aA{oʈTQc6JƵ\fEլ$:z䨽*^۷n:2׮᛽r@i$V8u;RlMsf/J2deV_կ("+i2x\Gs3 @:+N&W!tGFĶ]=uz vgNÊZIRWuHUq٘NSce ۷i0oqt{xfW_D=;G^%!bX]}NND[Cw3L|x{s2ׅt%C/r+*үY@W%N黮J] 5e"j;;រQ_@тI BBuB1y>dOU&}U#vqt:^^s2 +?\^L-uC(r XaEuAFbk=j.g }膇mAar b~IU5eFݮƭ;pÊ>ZT.+'3b۶%U!zdd`ZYPx}> ǃ]ও+%Q!JJ ^AWg0[0KkYVڱ5e o}Sv*n)W [e0p$|՗ ]1ktziɓE-Zy2A$iϨ ۆz6䵉\VASU,Ʒ- xUG;m93T-AoAg9= >O_HHx`]2׷_)h =0(w긜 @: =Y| ADW 1wwXxC}K[ĂBڌ _?cl;e!;L Ja8vygE?F[R ;RFX6YMXEF/zNdCL C%HYy[Cra+)ædDC}phnrϊ -1 v*Ȯ=՝z^zzH7//YNngY0s?{6\<]Lu.Z?H5!S( ~bY19<*JcPo`[o>rv7ت2uqj\eCbsvh,+U@03&ddA}hCG;LvnƘvLR6BF zGMݰf:"P.9mFA,(Zb̠%޼2 ȃͣAUA<Mp-kQ'`a>bcщX}b*%r92-ֳsB: ^:rCLzRz-TÆ[H}:t7~]$KgY斟P8iW@˽2?{L{h^i|x%TfX甪ƶ򫔄D,n託 -@6"v>x7+L,XAR'!؉,}i8RVhF:eX9SʴT;a[9jǙ\[27t)V93V&M‹q,U]`E"ܻ/2W 7oI3GDK_>hŵ!eهpf9ٗCĦM#0PC!-HuY]x #4aX'c^#k"h,o'(}j9D|+(ÙE‘ <)U>W+s?d ]ʿI->ຊ|:2d-}7(ip Jy e9 BTG]I+0#Ӭ =5ƾtt tt). !|mՋ4{&SH@+T}0K8; ,6=@ܬrLV$1Dr;0,n*'"Qzu1S%!M_D[Yj ڤVb:?&LQ!$ESҭs? dBS]+}'f6$ =4෺ + O5Binǥw7ik@^nKHR6x.QYnjquh+K[bx`d@I+]2{EmP۬q8G8b]ɏh##]ʔ'Cj4XMГDK!oѥvM8G,C="qpFv+_fN\y Q{0ruJ=9kSf:CdP03 ˅\p^*S%>@|Fp=ԁKYx6FՏ1)Â10cn}:+ُIJ/]EN$bQ'j}Tp?r,w ̸Kvt{nVԪ{-i;ti ;!.Q=9IwR ~!8w86h.Э6qL-@}e7Y,W3V@ 5a'ʼb$ S'J ׬%|>@A柃.z~͞f߆.ƨ̹~Z}ifId7XPXvݜ^"ع넔a9#1(hk;BI53 OEM>EE0M8,ȅiV$:OsR]#s6.χ?g+31DQމJ22g!DS)PhvTLew,)Ȼ"I jƢa_ ,YY_Sw #Φ'_BA\.+ܠÙ[<]:ܞ=yIy ;r"aRa}#o46=R̴_d\Sր'inW.~Eyh+^5+lZm2c{*iZΒ3s~pJ}/WSj RLOWJvtyW#<Q&#[x`9`qW^B?X,g6RAE5 4A85g3`-̕n2P"n*7&sq; ClI[1ͽB/z#* w;y3܌Xe$aJeo(4>v, Yݪ#qB":Dk^> vPZD%nߛe&'&E} K'h; tC+s6,< C9kɗ3(}dHMm;7|L_vۅ\vsqm:bĻ!7"5! s ڑ Ҝ.z? ~y4$tɮ-VK )%;]qh2'aYuQLtקQ/gly,"SqC'jNۚC~-mĕA~ x{u0f7QR+eLܑ3vqo=x3+Su9beOD_`#hy ~kUĂɒ.%sEm<3¤p|Ly(k7b Zl{iTNM1>Ae۽g=ErVT$9থś^\G:ˎ\EC)/ͯPle}-~׀Ng_`֡R,mptxؘNԗ2b)! 0hqC䠆߰H;J|5]ABX]֤V &|[qs;&cXSJC\-AOYSҴt@?]@] '7+:"o:B`?k&gRtNf%ہy+cOPJ&UJ='_ҌI,67:@F!;Ouvn;O0FC,Ma4o#oZrKEĺ=_0/y)Žn@o_~{pAIƭ ,NbTgF:_ F!LW9oZ ]1=dL" hoؿ [ͳF9PA>Eth V6.`QYV.v\UJ8ķ}HW0~s+J^k]rnX)J#tɟBK%ǩӏ vwQ:%OCEx F|mȶ~%ؠNq6}{j#x#UU$1I`3  /!"CZiJ߷T{ S\6Fcg}eςôG^`>Î| ]C@:2ʐm>AAxsd[ރs[e 5'kژ݅ݴ`hP_qlzѣ?^1= ;qԔGZ }V1.\$aI:\9dt  .3z Pkn7ڨuK(%0c'-ɣ:CUx=vO(7DɃ)ߋkrmӕn8 |J 5kq!E9})1N?C라>4[_o'`qd5 &9~zx75jMe›::[eS[4۔3늦ŧcHt6NcLS-uz@hTxs#L%'h^B8 .&,rF+Q6 _ʷmHP{/-h>زPJn9="lޭm{=eMI0< 6 i`ZиX(Ern?uwTk̴K3gzaDc#:c&=:+RƔ]j+Ƈ @}P/]E7YC4X2YĒπQ.nu(Q Ɋ$0fبDO^W!ϸIUZ);d0P!ހPn*#\i!K< }Ƽ$o(k@ټ&gKJODo_;o+y.XZ >('9)!%L'$W֝+ ه{T6, dCl QpÀ~,E3 >#`=41}eZpDD2߈vݸGaɇ>ANv8(*08^c ~MjjQ9HLʶ!=pt=iY:=&:TBMذ,5OSb([2aZòe2e\Xl_CXl)|F e#kT$6= ҃.1(OUqZ(FM "9-27 [T8; (kxJ|wʨ Zg;4P"w4|A6]A9-`P[E߂- ;'ȗ9I(9fɭV,yY&4 %0n|}m:=݌ٓf,4 >̟ס`?x E9.,1,`91Qy|HЏb|KJ',!* kR/ĩ"al7̔;F=0„8F]wBN{s3BԽOF Zo: LuMPTJdl^,,q@7xưFrU! ~U b cUMt{hm[jH5ֈ^kl>6#?] Ϧ4ɔ#APdxLbO y |CCC]|ͷH`3^rI %-ZtHeRnK-<]YrH:]:ձoA!E "$)jq/A"'bŽ7i?ea1ZI)unO}`ZSTP\ؓsuxf_,YC^>T㌻fK9%f0v{ XNqם c~i_XQ s%w ک6b`|HLkY.bldT*ENUJpE(2"g tHJﻍS 'o+̞ EZݸ}+*Z`e,x*|Rs#F.痾@^ڧVA5ޤRe]BxfFʟ\8P񉌯e/WAA#J@8`*iAPY8}1QppqZ+Tqj l>Mй4eAV ƵZEvȯ}w\ `D]://YaT%"M{ WL;b&L;2ѝP Y@O%_3hBFi6[QTvjX@jpl[HEhx›MʸSZP§*pakK6n;LM$.:} mҁjE$Qir )@uWK3I9.+ uЎTk w> 63pt^ĢdRٿ؞rʶAMSfFP&$\wc\p@%wRp*NP@9MM!4osrf%E]3c&F fJd^$mRQSutǎk[RP2O/2fLu+w(]J20F>!oթ.vNq)ꆓ4S_@SlZlKW$h\Uzj ۹P~1LRLlV;„Xro=<4F]; x6epp-KR @w܁7o>Q#HsPY"/67vd@v"jvԇTq-.xx0 89{ uKY ? *# !n5> P(u8+kH6:k;|= \m1_ dUrr]J6(mHh:DҚ'2Iz mNVk%Il܁ФP(ڭ0re46&.]Wj,9+ooWx+־rC[IA&` 4˦ -ɾoT~DhQ` uZ5t<3Kivr5ϙ 7ds¤/(fY0rtmp>oYO#ɚ4 }/e7l[DeVƖqA~i,vH[ 0c< ˗$Ȣ%**9Fڴ}K in6^fo T{Du5 fˇ2@ 1*cN-8rGX+mJ[%h=s;['%@`0M&#~P8|{z#y9 ʃfn"p W9p6JBd',.w }xd.'^c@`TUy1ڙ U[C/~Iғa*U:!8HnPIv*y1DIQYWĔ:_)2ќaW4)簦@OI*r[G\N_U[Dz)a>k*9c2#dKlJa6~}6 )κOSlL_lVA%(LS phUpv/%M|7t:zRQXiv} O+;~M;艸"-}'i.==tcNᰀn2]aJEsy&[a2^㍪4D hG, ۺϰ"Hԩ",m}붶;ϸ]\r'²6?T4xbYw!9t'5g'|$ <`J,$t&鰫†>\WZ>mҺ?[)8Y5p+屺)+=FkDϩ$ZO?HYMh9{BᛈG wBD]Une:1 z,"D@@g*җ$Ο >pn Ԋ#[]s=Б_hOŶMS9_bP!4}_f9 ;:&I$m߆ )><uJ^TV'si,3(Gs:٨5m{:#< @g%6|Kg`F/W4aǘ("hw M;IHQ قgĽbUX#rXnO&X/I$Hň.=QLH \ں; Go;Q{7ży:Og ^h6EpsW90X7eq,iFKB#IT9|;uj.U@:c?%| =]17@xZ 3u($5HkH.n"u"9ŞB́~*6e9n;fG4.y#g4]Zf^elXxlb/GTסiWfOhBURrE},-0jt *~w19)!q/zsU5g~ޘʏD\uLg޸)H~,$[a\XśY7b_7iЁiE[{WiVOuEܪn :MR@B[c{"HN+d gr8$}ia0 #PwA >DrNRxX?܏CW#!ZfJW"hA"Ppg1z.bw+_3*;Hj;S ^w!>Qf5bQދՔ r%v{Ņ;@5yBKò.2=n/HVˡv{ 1m,notx4}^~h&̼`1WN=b>Eua$)v 806TԖaM7issc7m 7)K_aꊊ_v|'L%?hnEiߤdl AIET5UH{TdwqX:. Jm Ձ3 ow=$3 Q:}8h⭦A*zB&}DI0/BBceXԏjc_JFfzNHw( #&,f@6!eE~ VÂܘ+v3[*"(TKIx- Xz Oyq'D3t{HUVzHlNxj \*tn8ܣQ=?q!:#: rM{?/پ(!*pg]mC3xlwZA\Yw։8@ྦྷ(shQx@$XˊeӸWu~ka߶@(B1b# B-4,#W 跬 z䞗 m/ »r@ru,d?X[z-*KʋR~\aMd'ABĸXSz7;-\ sJZX˗jf3WgT H&Rp0!0CYJ a.:IXl,pΤ^è#E<,ۃ-Ve6j* @0iBBk 9B\-w(hT\!}P0QLZF 6V^ĹW6j}Tm9qϓ>b9@ҫ^؎!?8nۘmqs^O| H?:#fd2g[󄁗^H >DeȎ!?z\yҧ$-5Nj*4L:GVl#C7bb|Gp0.xjEZv;D.1'w|w CRM[ւeiA3uږR'Lt]ArW hTP5ޝ$O!fih:P坭"H9㗉+q TrrI׺psS˥s&gy\az!`C* yVAg˳RRZƊxl3 Dp^q;{ի릗nB9%;y[Gc,*XLMs˥B7Q}x0{n f'rhgޭ>!O[y().3P^QFz֏jHWV5Mn7ʠiIY. L9oEM'E^9\*Upւx4yO4 50n ~&B%n5U&%?e2fKs>GSZGq]ӳ(4:2aB[Q!;vC^.rq_䈿k^STKۏjއ^y;a: ;oޯhGp&N1[Ø+?Smtn9B_Q'X7(2]+#hXpP_ؘaÅ^Z0{mG ]0(,Wѥ w rB4&jK-NCt ~G1)OV3QQ)](OIéiEsk2b5=ۂ@V2ܓnv[% SBhTAD~@ 6.mC:v v%IڅwqY!Cƅ`BgXh*8DլS|ce5`^tG.#rwht(ǥ`FI+ f!^b.} <pC1 '%G!t Ğ Li(>$pmVƣA}RV8 ̪&T(<4\ 9G 3]̢KZZOe亡mMƛy' ̫>yޓ"- >;=i Y)Cf/]sTmTwmVS OO.ʒ >OAx3E(]3a>׀.S-4gAbvjIyvfn0cqs$}.7NONp %x fAp {,]STIVF;NxLĜ@)\ewЗ ƜZwzxˣh o oֻ^%[I-3%;69;@,wZKDT=Y[Ro579`l v#u}~5 ɚA%#}z蕈;bJ;Bʹœ֛ s]} /֩ʱq阣9/8t6uoXv΅!ǝnpn4δD ĽM392v,=p{1")!tu-_E(s1-Ѭ[4Q:5= bﴻ.v +֊]ȼo7ꂜE] [qmɋ4}R=G6R8>[vƉdDY'\% `t\l_6?:CAgG>whN1xqH&("!4}Ft!8 c:Նgs)y!{ Mv܀EHmHCɟ WEiPqJsoڟG_tZ!Vqliڋo9u|e-T鸭|G.fHl|+FbAFqd͟%q:\FKB.uUD͜Dk (Y,K,\l iYlSN[cׂ #+OrZS(񃨙3:4ɟ}$pXwD_I#~a2cuYtEX=+ 3Xk@oAk)au9adBhs`3pL(~D! oxTNY[pը>"FgR7xcOLsٹOZx˝)N2ġ}ޗ3P"EX @m dڸJ&Tq=2y*o"iǤ3P#]uz5`\ `S{ }eM]W ,i2Ki|ṕ/%DNBEhyl2\hrvϏ.!?s? 'l8.v=ƑDOY;|̩0vK0x{7 g"gˏmd>Ϫlz2J[\'e*Jʁ.e ʑHQ2ɫ fEH;E}KHheѻ*M}yfw^uۮUZ ٺ :ՠ,_iIa#;ߌZ}K=2!:f>K\ ]WA"NV=l?WSߥ W Tg WOȨ'9wq^zaBd|4v\'i Iܡv'8K/x[şhU?6BIQt?11sj"O|Ы@@7qrv蟃 gU}f.$Z:ndǏ5e?i2-\ooH(XT0Fdeݒ7 ئJ7NB%pWSZ%~rǍtVK~|墄,3ręߕ̥AZ߻ -j)e2C5PCCE)o4-C8 ^"%ĥt P j4 %+!Zs8^7uŽwnPJq/;ΒWZʺґ/1Zj$~$n$yE72$Ye"Y9/!KrO4Z_p*ڄC]"$NV=_/MRwA-C;)/kg _"(3_X\~E€,Ǒ@ٜ5d *ykBe%G#&ֽLQf_ Y-=9 >go"h1W+7 ~Mg ϠeQ*(o^ ++[(IK}=CO&?znZ_9B:-.NZS`VlĝsrB^u2NYS1$ uwJ+c\#&\k+ Iʀc'AϿ91b[ ~0۷[HkT`7?)c5?ᦁm I1eU+ 60nϳ'd*9*mVVv3оF\VefQYdz] 6qNRj5lWکM1,< =*AwݺmB+E\2g!y_b(␽ìF)G?}Tڔ&oob&Pk/ۋA\& @uՂg,̀Vzu!ke^>#3ify{$ Zz_2j-/]^B`"ľJPIFlɪW3#@TQA%WUG e86 XduU!' Yg1' _IF'Բ>SiJΤ(g iڹc)!D-iwR2'D,"aG+'4]xӱ';!hr y@US@Q:z%8Oxv^xh0@s5("]6=N!}M`L*61D/)__}u$ga_"+LDiD~eoQȧT5u!Io=\Ⅶ d ./ϵUo^`l6F)اN!Pg5]}-[kb]E)2˒ 3ݗ${,8Vhg&y҆&ڍH-I !y/1Bk|dH v{aO@Fy Xr26AC`et(3-a#&YU,w/s(6'ȐҼM@V\GY_\ojԐD^h@TN<1.RKFøѵhlҶ dȍ?X-Y- P'P&Yxpfu`Qzao+?4[|\usX'hf^X&٣_0c҂k1wm{bPO8\p2Ye@ oJ2jl%ҜAu\T[fR%3?8ݾظ+?2q]ExTaяMoe kL"Aa4T+pgIgj2t "_#%wjl.oNr5)|mql%߈[V4[iq*bG,.]u +\dpo ;wׅ} ;Jm&n:~[ƏW. Ʈf^Qx144eeY&{hݯ=ͱA{0_Py97T': ÍjP<4㵿i/&u&uDŽm+}D糫pڝ25u~_6B(=dݾ$IVO$LAnU@uw^)9jesWsn8HgELك-֖êI7 DLH:siЕTC/$qgmZĕ;FVQ@ E WqrI-'Ίr(PiTOCW+'赡7j%`S!? @,8% s<= x@W"\tGTס$˫}g~IU`>FkAM# x8eGlH: 5q|KC{K>WBvI,dJD*eg{צ;+9T+C^7[!1|V1dP}㜨o'8m6-ɭ#쓩IJ5/hɭ2QQv#O!$X72gPKI5~ ̲8w]t?sP9k3`w1}ߞ 1PJPTe8z5z@y֤9WePDH"ow r1܏(MRދ_A?1.<Iv]d *bMDd28pZn6'h[o LwƷi]X|4͊\w^T|A4p-kO50OlhA̰^Myc&2vGl8\tD +ÝiIl~TD]+:!Ӕ0WC]rOkDj'@Qʴc!/ ]yV9͑/ Y}9{)IdZ>]c4S1Q28Re,|t$ GH8bsd樂DP’W" "<Ĉn5B)ڊ{~,F/  S ELtZ`y=]gʠ2 QQ,J`)0o,2hmg ztEJR=oRPZS%20<1ǐ3]htxHxIy1Wi|^1[j{B@RvCKC2qxCe17C$~L<z6Gm{]ƩMLq} 2ᶚ(S۹"T3QGavmB?ܯӣd_(P쀿ڳ no6%{t\pԣ&T8z)!H֥҂5+'ˠ[,TMERW:ȯ,sV8lbg>N dFʕl!^4Ab{DvZ>+N;pc}H 1A,t] |s:X=z K>ڭWsY(djJ|D f^96ZA«ThyObEM>U=۫dPs]>Lpd;C!ߕJS̹cb! b]aV `KGOS 5IFH.7Gl9&`ȵhN>8ǙFav= ô߄]#gجHFAֻOM.7y95;4c+'RyMru*FFDŽ*B9F  S3ilK2 aExHwʜ%QG%Ȅ2(@]iUK B|t˜y 34lԩX:m{A7nsPLV9$-ՌIjcVh^?QMOV2))@k]PuU=5hx*:EElВPڶF*ۥBVg,$ӡ0ڼӫj+k('=YPeqw"'"CqqtϨ!? gM_ebJ6u_?~E3ڪiqt] @GFO@,$8\KM w*֙)wLZ ړ#Jpy! {>kW0iſ ?"'^i,ܦ=LK9ۡ1q#6IF䭒:<RPZ04 QʤK48EnPljT4FdFAIIYe[{`kP`lp3xF| Τ3>HCc}(Hx &_}OzޝCb~VYE:Е,+"|♶dwcFJΏ^oӂ~GԖmo`MR;N֭1k,ɖ :(NSHѥbQD'ߔ^ Ӆׄ&2/ӳTj!ʧjsxmaT7F"`Kypo'd/1՘C(Qfudf<@ 'mnץFvLwnRW Q?1 Ky\_ݐɭJ'ц/_;޹+Yj:nRrTKm v5نDA Gϥto@~MWT'&]| [$.; r S%#P&--vu@L$\U C  MLɍϝs($kI ,f'iC̶PԬ5Đʤ*Nbqm &IOK7 39֬Axg.{g<#@VJ5mCVGS>)94WPJ"dyxk(졫*rAFZkWdy`ouS`D<샠6;T)q|lOLZzZ* :zi9GZ~"= D裂{=j#FQjϫwSO[yH9IT?F'^궈1OQJQ*|2VjrFYd-I:ޱ=-[HhsRpYC<}ԏa'Aq͜UH#pTN\X:X#K)ZSoG{5FѣO8`s-nx#_&|7$6Q<>NMP`v03{QHsƾ?[{OH>LRA*{ƃdCI/B^ ǷP) }ZJ$h$@CcC|;<me}*lЋf҈RXMDķuWӂJYT[@윟֣-VB-K.g|I)!2\V^QdwS$+iŤ[WGl p{:m$¿K$LHtoϘkN<?•!*xF%xMwAQ쥚K*M y85ra47vlK5{Ij+)虀Z”2tCDeN6TZLIe@eeЂfa:0[FSk!4ә>]),v1gQMv$4؎pmVwC05Jkrt}rpQ7a˶ YKv*s6pe-*c]XK{xNІO"K4۪lK(ER嘹AnR@ȼ޵;ɏjGrvdC}c&Bg]D!D&5&P KR3'<;Wf)L)E-Yɡoֺ [Cz͛pfM;(dW޳act mifNC://3n,\#NX F̟<5Fȼ0oҫ)06'G({ө$Lznv7AjOv;,4!+5f}.2s+Aʠ!;u2FJ*_DԡrblgfQ6<ط;{3Gυ-Cga̛[Lv2']BS%G)+*7(_az I8;BU](|V:ZhU@iR^d8N&@Ȃ{'$:`V|zqhPc7coCr.A| RwW4FH..ʐг [ 2]Xbm|JH@ v:Sc&_0T] ljpcܔc,g*=Q&fvx /)VlΫ/%Ӫ(m!MODZm]u4s:Xr 39y`&:X"E!Kٖ_iz_'bMӸy(yTT 0l HW D>=QՉ۵u=A?fj&W['B/&St8 YW g[Ck;a] e-,8צ[OǢALN!r߳.S{J7 sr )>i⻒ ۑKwAx)8ב^x|GW֍6DwzL Aa GB!jh al<b\&0: >' 3`N6⤵a`Bp]b)O.j:Zz:F7xF^*k {0q1Rfz/#fu 9P^uH(Ccf]Ih[ok% S5r.NU$!fOBtH&WL1[S_i7YR\7ԵpXuL*_coȔm0ʑs991A2 IPEtTIYȋq.< U0OȓgVHBegޗ-a&ͅr;cfe*m=~sa{>o$poNlӳ 2{fBW1fz3uEz =`,XBM7e&%pFV W}^5åp#0 G3x.5ZNSo;Km'BmjBacM%YI鐀 6J/g/TcT c5(Q5҂j7 kR1}'Ļ\n bm<0EI~P64WuqFKB Pjd=zcJ;[)xDX7 ç.k G漢Gx)Ӱ 5̆\YYr&B@,z >>( vdV9q0I_`7ç>Լ$t}?t.3ʱu"W ֦?KMKYsmݍ@҄nB)t ⽎@cFÍ"F'~C2Ml3͵CS"3f ooaxk{h9ڪhDR/#.y-2=4db>#vng`䷐8*x CTC`q&;P@BG>x{A/gͫzf}eva*>qt<Y0HLeLhq_+-GNzm?wt{7 Vw%': 'ٔWpVޤ !f_Pvyx;Sb%0Ư8CҭYeb ʂ̜_-@@i/c8v؋u]@];Y#kmS zS0gڱ>:{Y/bс׬VF+JX|BK;۾׌cE6Rxصc/cFnO2:&ؠzGJu+i0xngOwwg8Lmv~U]9%ohպ!gDU3 "~}N@;بL`P2Ke1~vi' 8fG V^ɣ6_X&R yqGO? aXWJrfGd&4?iGΉ6`7E ƻTl~z~;V u> RJWI- G fr[vw,U-="Yکp sZm_<,-uU vi|SdnL3/D벼e87 w̎`+OJ[5-$-1Š!q92x1;N.o87m! wBgu1x \#t_n,}Ͽ#<ecY:bE|B&y$*F\"GMפBʤu3:O+t\KD l}Ds"PY=B &ި"Gwi(0"F)AaRaZAK% :oӄQU7[=FBVm L f VPu٪ $!"Mc.a7S!ozI*1<.<}6#* I;:ȾpttѕA'ix">F#ӻ~1 yC2T8:AG 2z7-F+֢m#55gh/+ }xf^Oݜb#2@6Zٻ{Wj dyH*ek -;ǂ/Bѿ#/ыag$i\M^l'JOcOn BC3(3|rb%SrrykKL͒uavG^EȮ6Rћ~Hh8Dga˹qd3mU5w,'@p\ XӼM7dNgbHO8+ڴIw L~:SK[WR8pQ8Te~A3GQʲ Ys7[Do{~2euxXH:z4ZWflϫ!=4SmUf59{t.ֳRxԳ^/5)f:꩔ ~kBzSrh.ʊ'ɑ=zEXZOu_ff Lc`2B{Og&ܴ!#^ /YrwrK!/.(K{_f%&n4RzB ЅSܞ "jJ1̥`LNqD%9d=e#F끂)R9>C4%r2BK?KI̛Bv=(E_75wtrp0=(O懎S\v.\6yZ-gfnep'Qu3 GC uoff?օzJY],>.q4R( "nړAr(-,q+ ޥtC  ~ {,:ʥo+Qx?#ѪT:uD<~"YΚEĄ&Pw^-;Dd,4;>caxEFxם =Cb'2pqc>7ҦQ8,i5 6]#=߂knYh{5DL4#9|[65<^ k*s9yxGZiotoA[]"Pvx2V+ ]S",,grK}ڭ5{ˁUQ*7*,09k < {  $䵸%D\ڐ/KtW]uYù0U\N"2c .L]P6yiX<;GҺ-kڗ`gh)DiH]fޟ3퀍i(~}xce1!:(J)癳$ KGWm߉=}ǓOn7YtV!T YXD$ U#Or%շ0sV5iP| _8"衹`Y{8:o lw#X$D  -s6Y)ibO XS bd .X9RQwj وFe~j)[ TV6#R= ^P,݂WD2˪R5LN9vOhC@ .Ջȉ+a$˂Lk46P05SdFkY3r掇*;[X-)ky"O?Q_1 3[Ww'I׉2RgŲ- On- N%υN2 HĵR=9o9qa&6 ڨB4xh=4CÏwx\PqޝԤw,SBtJW<p%t牆(ˬt,_Q>]߬Cr! CJ+i ru:h0,w!nVd xu61X< !q>ԋ+劻 Wk aୣ"svTB&]2iص\kI& ԉW>J]JUAmK:ͦ>ȤYۥ{`]n}ȫ!X:`S#Hcy*>ɲmۍz#J"6O9Ydw5Fi[dG(.ʦ -O\̳ܡW]ġ@*-n6dHyȳc.} :\^0Fax_ɹTO@kCP_wW<`NKX\ '/Pgd6Z"2{;Z+8t12Nj—:D7J/MQrdD0f: ҀOj,꽚Y7sKIgmNLqS&X DT 󎑃.+EUN"[z^ٿyy;ƛ_SJ)qX'paގ-J{0Ck:N:{o_ReVwS샌e. Wj^M#)(k%s{H*P4T/mw<:,aey =aJrNt0;VI#g}갻<7p5E!ܦ:DmBS?Ao"rHA&E={{͓u.Lҿ"=p.u,H~o^ZKXVd!^ɰ>kKܱػN-үxBk1Fm5ZgpݚWs{aЫ/K:H cw%ۗTLu<@MDCrwODN'aJs6ӏZwK]U+bqS=!e_U2)&G~RJ@*/ۘK JKd0)d̶F~?$qP Bb8'1>]Ą.j,!L''"!ϻnl% t7Kz_$hs+0nȈ% 03c5u "kF8QT ҽtɏ䂐 (3xx3U.4EIA69eA l!n.GxM! n0\["I^fbpT{lƕkȷSS,b͌W >0)^d}B{LXah0${*%]јv|SsTG dby9P`]oZmv I cLaP y|uQ=/t<*h }T D m?JX}~٘}EVJl\ew41BT@ŷ:MbKܕbmNߕNXFbj \ư-kڠxj\Cjl[pkZiwr54-'lEaw;t"@ym(z8BQ( Y]4N v'ؖ .|/2WՕEW7U˝ٸa?݄iٹ(bZyXltؓH&U_?UAk2uBt/zKF吺^nE%E<qw ˖ Ǭ~ƢxT2}6krQK I$Z1U.5_UK&>Qdā' Vˌ]';͘ш2)H^D A$m"IM+hIG-Np<h&{\;@LcJv95aN}PXLvBfZ5Qz'e,;>?u\XsL/4Y$K*鍛ݣƲdė/a\3ӲXN6Z|VBaf;ԺX9 I^~!x  t%[Dss*}gfK&3 &,X@}oGeah0LH{ڮPwʍ^.cȋJKdM}nK*5(U"Lx8JXYk)wt!rz!q溈9Z wH&QJVjѓѿQG\J2+X}W"Wjpf dK}k=iMphq㛑J/A"Tp  okifȐ]Q :F퀀VE$6qM0*RAc0M DUEQhl%hPrhx_P&~=p v%RP%QgNFW9+Xj̢,,at{I595-7Ċ )4|uζ3/IW\T|/;? G%20bpPf !к} YCB|*v0CO#%FaݤjW3PB=I%ØHVlXP\hDD{[awڃh35ՠns|HڔDm^9X,@_̳U ޻v6w)wRY/yc}kQj 7kPg$)RDzIh2+l9Ov$:C0Rm{ $cS %z:aSb.Y#=>D1^/?\ȘܑPU4rњVsUp_gHjQ*m1(ص2ϸE= H`^dS~BktțgȎ  ?j4a3mܵq!5 <5bș2uC F5K8/+­ :OSpzm[x*,ۺ[aMR>?UVku!Hqշ302~"bRpM0{yZi v=ScEM{/]GOH8ؾgz{D^`IyZAć)l0,0fO ޼WoN^Yݵc(%<0mcVwo ;.a**K+՜U6!ܛ/Dk"w9¨Mgr=Gu&Y1P bqgDyGdGAz֊՝M~Me SNĶdE\I0: a "4酝)Oߌ25Q:OOtMNq4ҙ}?wD]ᮾiz%õ0h_)j¢z-Mx9QG#rnq Ht#jT)yǍa"1 lXl |KƢ>Zi(wNViuPȑ'3Y:BlJn6mGܘ4y?ϓܹ&ݮu5F7׎޺yYԢ:WGWC.Dy !B1M$J.'A:V͗;Ƌ[#zZUV 8~, kHXda3QkHA[^vC)XUw9xmбZV;n$ 9^.!]Y,`@3U~%nZ?Iro} pWWzV?}Cρ=:O JUݷ[I:ލ7[86fK |#\>pnYҧPa}9IJ4܉ "&c1ku<2[0#;IP )no2{3Cqfd8ͰEMvu/ ˭Êw͐#cG}͛CoƹpbDG?$?wjvfq " pNSLaP"Cq3,8 A@2z N,rpeA(܈(Q :\9E$K]8ؾeKD4XleWo(Z̥lDP大/xN }BmĒ)Ɖ =$;ҤQeZ`!/GN1wܾ8Rc؏V,Q^af}xa8n Z >aܭ>ܽ7 t ߩ|TPۃ3xbmc+RVnQ~'%>d(:ܥwF7Ԃn"7W<-JϿ2B܉Bi`^Kp;fb$ "]`Kk3}nar-+%?az.0K>yCJ`- IrExc{39t+2KL֥Y "u^[9أ}n%_d[=Pqi* *Kn3KxeR}[b^ T6haE. $Yj~n7:օr) W>u~z !N^gØ҄kʑ*h0*w]Ny*lMuP|s!C;P/"y{٧@HKªu^370BZeR#qdilAWg|J~zee86ݿO+Dn|. '-J#oN14Ι*m:r,^ 2H76٬=~KOy)mˈ l^"bW7}7$߼{1AUnFZAߗ\Q,qsY!&' lh%&Ь8rB9" Mk˥ x!4f/4fznm|'WulmĂlNlN-$:uH)5a`D\%ak7ȖpkeQLK..6[m$ڠl3$)uW[!"#ۄ{3AzU 7EYmOl D/s~O#wn[XV@ޓg28^ {Va,W.ϮPcܪA0+rÕE5EJ2bxVbB67+th25lِ3pldg}?IRs |D>qt 7mnc\|`Tz!ߨ74^{'8]XC6!b]3R1ڸd1|ӱV"PW7pQt$W% n@1,3 l v%'ӕT裡3X0hh)k%mrC  "fң x?ʲ%=qdT b0as0 /\-iwZB}S`6' NYb GKS||B:гFZrx8t^.JZ\׆!g]+qfed]<^:Q,xI$jq76H^u ӯv:V?"RPu ֠f=t=ǖn2-&%ir=Cwa`2"q*-0$SdOs{Vƫը*KvE8w()F DTՈ7[ߥ^!PK %ιgTs0&,ٚlc,T=P녥8o0l`j`^aHDn9k''8(fB[>7x$1 Ď^#h;I> _>]# $KSADTg`@f\* c2kesՍjT͉`3eؿYDy.տHy<,zچq> &,,D[knѫ#2?v]N1&$FX"VnZ&^]k)B ӗ8&ٛv'4NVNj8mt)#LC,Ci5!ZTeBIe5SLtXŗ |UFv3K5*ֿ\׾DZP]ϖZIPR E#ĝY em>|[yұ1FylFd{Ռy+w:dT5l"#.=C U*g}{yrz~* A3=|cƬI5&ᙶutRn(檔?AF(6yȏ81iMɰQ7z㯩؞C|5~Vsl6}O\gqMZl-Ol!@%ILdZ#j+ӽw`_p`4v(tq=3MX9zV"iJ ԩ!(V?OB<+ޅe} Go>SK~9IE),=~i&Y2 =h$$^ )ǯLZ5l!^_#smzg}xZ,T`$" uv K\9"LPKXvQ6;[ I[7B:" IbkxufV+j BS3.|liaż|8T-@Lh*I01ᪧV[ChTP^CG 8Ӫ7G-0=uCs|o *-Y8'8Nʹvj/7aL!cVj h57+t Rgtyُa,|7 \$I.+h+ZcG FS1؆CR)EnKB <тB&Xh8+q-޶z˓g%]zd]~ROe̶l>m2KޢTWCʯ6i[[C=B̛ov0bdil _qk7柗ͺY$$_fu[;-Zb"ڸ:U0<#@!3WĄ5Wu{yc偒?!3[ge[J;GNJoUiǰNdID=?h0=̄`HU@y>ؠ.EF[C$ͲKf"#ơNƥyP\sX"`OQ+q1VuR `RYe}AqQtST4rO wo34,* 镒wtAM^ҕ2^un4B X9 kZ߆l?"V?),qeq @'JIU*Go{gAH]}RVn(δ\İtMOM%5& ٣Ԣ$1%B0lvN;}KHxz m~0Me/%f*V*(\nX2zчRl+c&l@7Wj@o'}m錤(c`OS>'AYTٖn/׻YіҤkl+D?LRDBc.:46 D-TUMz^N_ӟSCͰG}{CrGSgtc OAvXVQ(qp^~x Dg!HqxOMX? )4OBca2ؒXTÏLb/GMߥoRӓpfb7Vp^IL=}Lboa!3U+7|ۛ0qr#E.H4%qc9̡&LOI6EBxk5DC2l0 ?ĭQW9BoܱslUjNOվg]1ɹ2A6#)٦X~sc-f|b1{ ;;v@g5ޭ;]19Ւ!_ˀ: P@|r>4f;RX͵ r*Mrho@&;RK)jψLkni ~$.= ]~JHtXtBIKXX/c@o;M3l$7=,p}X{1+=Ovى<}EoQtҴϒn|֙ CΟt;Ο*"L7a kNhER//M3eucٓ%"s'u1{+ˋ)NC ~/;;,Iw3\VݨV =y` wi+eZ{t˫}?bE[Pɾ E~|S >*\*ܜ}[> #~Q$^R`ϧ[k%ј^Q6bKcky}(!djHAddA%ĕlumk[VdgE?lP{H1@0n-#}w> ?x>V1,p ǀ6jƖ15(@o8hYf:-Z84wB/"P 5(@yw!˻E޾y |X7&ßo\Wئ"#9LǷ˹vıv#,75h+>'ǿ37h45jh&9H p.)اlц ϋyM1%Ƙ3KZAyӽ:w\X-@=OFxmVk`@,C;7L8lUP1lߴ=nNfl-耷h1&~6=G+[01TJe,\M1@̊?󼵳 dƍLv}v "OU[DqH V6XM%tе R1)購5ß .'H! 0䉪n? 6rܗ?knT# p6^Th24FYOb)$ge88V_!.s*+sML:5"q̛.dӼk`H"b:G)8%9A#>Sڪ:"CF#%A\f fDikژ>W'X:eVY>_wbWI UX"MiR[NI7:9ˎڥ "W s{&}})A#M)J ^;dݠtQkha9@8Y^դQ?}rdwI[:d¬H-BnqQ𥱄Q 2q,ѥ:]'_% /@3+}I5$fiexML?Wˣm{T$]KGAǼS aacQuРF3`(GyI 's 3Kɤ\J ™)皣\P<8Aמ9UPM,jZ[!t{ز.BAO7~T'n@"-&5>Qx'w NnQ;=y5T\A%)E4/kYm(_Gu<ټ ꥋ(G7 /WQ3a/iB 1!!2߄VFGO2ua'AR<7h/֐M.$n_c[t jQ-պb*vL.^&4Eφ|R!LbgY>u`²Si1O?LE^DF6q[l$s3GV9ӴR lmaၨېT8tQYQ|C1 WC'%7M=G X8/n?$4z %21L ?mB6dl8Gs?{+]9_ؖ "ta0K\Dp5ޙv֪_mr?2ޚ\J(S뀖'@K}$PHK{9`m%Xw(z* ڥr 6]|}zE ._t8+Xvƴ7' nutd&'K 2&ƻ֢@Q(DVWR:IIR69W2ό ̮;2G!fրzEEyAѮML?^_ij(coPP4W'`y\4Hk=xߠUaq4`w!'{RrNU= g 4h,Ft_=zODZ/1hZjt̥$K"]j:MG ~@Cd+4J#N3t 3NOunPWvEE3粓qu|5C%}ވFqEQ֒n3oԢ։hӟn8s[$S]j ~%0c?C_i9zuU+CY1o,MxGi;arD.\S[Q8žz7.f9Ø PYu=k(Yx8'ƅ 0n |0GkXU/~=h|d!N"/NbHMipC>o@7O1O91D[Z 4y(Ҙ׶I/,t+'I hUt0 D:*}sl! I' {X_׉ЇT>h}\N F:p7 *ٜdjw}[:Y1dQh!QDܩ'GwoRs5w|;8,2`1 7jB]- rjf}ûN$ F\StUᤆ@{N+%bntu?G]7ɱf :GK]!+XJ.؀\wlnȌ"umW@auU*\ 7@'F?f!'ѠrQHPTu4ef(pEu!%&]}/9I#Ԍ$*;HU+DMyf%KhV ϤzNv 9E{5Dz=7<}L{E4?_6N,Cjf<M!|_ۛ$0 :kRk H׼(0)M /q/LBQz6j^Σݎp5'~~6d7iUapY{tPbq=#]xQayK(ˆW[N :-7&}*)Unn7Aڠk 1G_H=캙fKLH=`mYd R)~z|n$Bؼ4 uً+!h% V"B뀽b,/Y~kt0 jRۓ),vU0sc=5Jnm`DcIunJύڹmHd@NΤ~Uou˔EP]1+B @@9=)];GL0@$y{oƧY~ u뜒{ァYD;e{ pl/K Icke̗剶R29^JcGy{6vGN>M ;kgofdi3x>ev/gf_=idB#瘍0%P:36ݨ IЊp֜TrӜ=%0=e}qy&HPqul;.zN8_!XIZU2Sò 9GWàFq@9UߔqW;kpŤzw<#$\V#eeǰ(!]^cl&9ZEKcd8%)SjʅQ1w (G6p Ѵs֪)M`!o~k ^Otpo>z+ 7T)>^> o"l> ,:Ba,aWx;io-]VH|漋wSpg;~ )]+^̸ !ti NʫȠ:F_jרI eX MBlQAKC"iIg|-%!a$t"$bpD׀;Am^4lڝ ;3g-44s60fzCp'*VN>&J]ƣȎy.))jx򉁣RN<"Il ߫"]]cm3sn~u^Zr\ANVMn3F<f bG[AtN6@;08e̓ ;/"dwW7BgAĆx,ߦ'79w™;зw3=Me(~:8P+͐ZSCO V=;C ]yӐ$/TpҳjXuT.XS9Q_*DOժ,uGpO{  *qsxk!7U2c>)\1%pY%b*9xy!єdȤ#v6`2DChx"/YK?cmFK^-Լ''zјBtl꟮cqG5%* #G;+ XFmn^7 ]+bQ#$΢5[_~8¯p.fZ[V)b/AnvΫz%#=l3 5foa.Eڥѿn㉋xX2Q3bNm }ţm*{;!SV[O [Ɩwd #U \DWr5N"zeNfD}@Nej!rz usyLO4ܽ Lx'l7: -5yM3~<f\+ L>۾D Tj ŷYlFr:aF*iv?.&W6Ɂ|4/\3V7x6jP7[;V4Ӈм@\ГXfp= &֝Hw[~_#"tPR< G5DЭ/_^gmD9мGk4X̺Yqhc}}B?teAkm1^lۥfٖPh~ cI3ㅆYKqJb~=]y &'ir#}7z]AOcՉ@h/wpk/'a]U@j0hnc=dB>+B̅o%ͤL^8&S͘1!uH=pE|`e v%!`w%oY]{8CUc Ou8H%`BrHp˩ cHcv Z0@&CeKa]] "A˕ea/#?)cϸ7m.P:?ρhDjr ԰*#~E-Ed'rda/Qo A,ԴYu?qX477*IG l;OקJQY=ト¹11v`:V ] NG)H9yGIo{‚^m;ITN5Wl{]P[: ó]aW Z*c/I2 QU|+!ԟ1۶qj r"~vʂ1feuV"ᯜI;f#R`Ʃ@TZ" N.g=҂%wg?7fxòwX:oz0zj/TOz dfz`ƦjY.mҺ-#dtG3oqEfNJH`tw>\jF>1k^]+L8h $u'1i$dÂ<]vbS4]to8EFLp-º>V?tPvY]X1BO oVDK񥎯#Z&č7p=ģj936ӈ<?RcnϺ/G_c+ `\q◀&B{M8 o5>vɹ m[ʢbrhR3qC=-2<4̊{I?UnN79~r)VQ)?ͯyJ2]L9:φ6yiB$st2s$g1 `MnIZbvIhZE! ~g7ꨑ awqO*>9=;b>I`*1_o 7][(`8@c)㞔,Pb\+NɿUNTh\OUZ(F//`5_GӥBBo c8Q{@M帍HYfIjȕA'Zq`iFY&\G>dڽixW-_Hn\'[T޵v3ٛ-ɕ0r؋u쟏!aslm0Goc㮗4a # wG6@G  h@yQu ovS,3;\"bi\(?#Yտ PmH؜W-;N,w8,p%Q$ V!ށ_ |ʬJg9&WahP h3NkeW0V ״D1Ղ?]e(י !{<3WXX>xCrR؜o :'|X_ *w6DTr3`'..8QDn ČEnKu\=8lQX:)en'6-F<RimDڕ6B[OlO.)҆tL0bm')GWcQMr.(b5D=.xЪYc5p~!R/I |nΎ|E788z8퓒N".;&Nj·mhQTd5()2sY Ӓƹ*PMc~ oFVǙ!s]ņP~ǧ&D^ BRj2WܪeͲU:^Ǝؚ dWf?gAq9 9oZC x8lm;I5W.iܛtn+&*p}B|?!k'j3^ 4?WOqoڠ:zQfN/E:dg:_KAIY-gz*N=Fu?қer58B"3u}ȌnW)I@#R QHPSqobY 7H|#Gq$ H3<:d2oI#yU)x_ѾE]&(wXG*$ :8eg:F3ҁrݟʼi,<]fg8~$+S5W D!3LըeO$pỳP_.,G~09I]Ltzytf?CRu*4U%+& RE`;+V4&tۜ 'Ln+7D~S2`o'OybѓgD wн$9~=6xƪc3aR.&Ba P̈. r*G(<8X@k$Of؀b9O5w8"'vs?xigK Yqo_ͫ?"Z1Ee_18a;pym01/ \a9a\_ƠYt hChGE8 QӳdY̪fg Cg@\UtG[)|GgCLg)T\F/   wVNcr uM@Sj F%?FoW1AC*;xΙƃX;wG!}݁_b3rޥZ6M$FNkT:~;b5!yhE3O,n?~5f2b_ +9P)F9؟59Cxb޲$*c|Ah0 j{!PzmˆMkIۜs V؂DzA^Pێ8}}$[n^"KfV߬kSaI'筯:@W*3ȨJڅQp3XCu*bz=d@2 ArOdA k8 @ZH^?ӻҭ9qJXA!W7֢؈$'$DDe=p׃hîk4];l  :RRyL Ȭ~E0NEn:0m0fZ8e6@8\+{,D>ʟ$qp-1`>Ӏ1iνȉ"I\xKz߄7|79ߋ40I(&2ɣ+aq)Q"\D-I\]AX 5)cO@Xgr6ywIw׈* @}״_Х Q1`@9,62+)IrCO0˝z9r$Ͽ`WQm#;dQ.\vْ/D9 ,yVٸ6Ɋuvx)(m1)NFOJeʰܿRiQEԶ Sޘ22sYԡwjdzY?{s[vpWJR$% 0iG/ LoM`"/Á,ߜH~MGnP7ڂߨ6(r3q=laG gmV75T@=LsSyfD7}0|9ׂo njw@-ip+G pl͟ ZqeX% fOLfںG@b>XXZZ<pGPys1%oۇzPtD"Qr{eK%%側#bH{} R Mz%~6Rj:(}`]K'Hv) ;mJ̔M@FAsTnr(!]ܸ1\Q#c\lz_^+#mF6,*tR9A &khK$O & J~]"(-6hs jCӷW[i6M9^f |0z09OȈ7x"x@tkfUK ❎&2Ꮜ#Y^}Y|u@LQ")E-̗Qm1wՙ[\v*ٽ x 뗻cHU,+l(D9 v3t&ϛpVq#$t}ov]ިST ~=Hj\ 6>J[선$yI`ߪk;L8Rut-NosLTJ3GWj}8ijzpW !-? *.˸7\G%$CCRWK4]!,I0)Iu*|y X:S8>Q*4@nٓAJ%&I0V+meP&Zt:_Ј6KWf*@9C%kgL(2z[zLJqީ#ElPN2Mp*#E14}[} #)DS{8&t^rP0/SXW`ޛc^ $<ͶNbF25qm=RrO+E;KR{Z< .MJ`2BJnk4X ԃpo IiQB}nr9BR]V7y7sab/Ӿi [VeUI&H@Hw*Y>5D+Zg۝nY1@|=K HV|;8 8܍\\PSX2Ζ,ᆟ63zuJ#/lW!17A:|'oH2CќZĭ?^R&V)&ˍKOf?S>P{:nCY%PSo7%Yugt3nvٮ% 6!1'i7/3\&ȟ׼2LMBʌE6$g眍]:bƍ-%fED)T)Q[HLWeu-6(yyżkbf:P)ϗD!(}㨮~t&Yڤ%?NcY8X|J*$I\M"яRi t UܒxDɦf_&&["uA;5?SNe ^jC/k q\^|&C^nlXh҈NwK7 $dw6f1깪9De=A+jwIUΜzqދfk6qn,Bd|1:=_lD}*2ɓ-ASZ֦wFB<iQk2]j4u"qF"+AoPPaz+0IZ̢ o?B1z2قRtz+!(c9fSzF-fZAn,$,*6^ :_I؏)Նf < ^|iȆ[2l-7ZN`3s[KO7'ٗ!P}cJCmc\#lPu (Ժ8dNmbIJ 8y?&9Ž*> mS6f)ypS7jRA’t!.Fn LP)>KO4*I4Aԭ ?1[KDU$nVoVV:qDOYNx y\)WY"< jώj,9[$ M#ElrB[-"8>尺(2380yAۜëFRƙT}cOXm"K<,t~)LQI '(?/IVպzXMR-^}7`k(cJ@`aYp|Jl?I!!2з`6.C[A͊i6$OBV檠m|y<"gl+tY9}abFMLosn|̃(xKh-N% 4vND$WrHmJoL,Ϳ-2yd>6l^@r@A{M*4d/z2KTL?gMWշq/̛YpvBp-sel:"z qn>VGcrRx5Ϝ !FsRte _ 괳WkODhΣ[2rD>Ŗ*șׅzM[;gp 20WKSK%Ù&?>ެ>;'9ѧ`OhG={D6`8MT5 cX=TLz{EVgH5  \ mluc=v1fl@(jv -O!ơ eOނ,O ƎX˜`̍.!79' <3&WC{GŌN:4Z!hnom-^I_M(JJr9ye%\CfNƁcQW8+VX^ fh!YnJ..tcCz\o9@dc}֌lq &Zˉ?@buB:X6Pr[(ѧX"/m(}1қqդI`#}싗`ގyb[M0YK@mEv`&6|Gc*;nop"-UVGI-cN0B֑>y#3 `MoxµKDr^(X@C>SϩZFm}m/7 cSgblI i2ro 4Ju8bpЮs:9#!NqP iA', Ե"Z3#]V$͍AA-1}go^E[kTٖlKcLy[|^Fi5IlVU>ZnR#1MJ%df!z $F!y.2hEX"_c+( 311eUFqk d2\ ·%(eX0 /IiÏFO ϑj-qRǠm,JcVyl/Mj1 FO"(y6-/1E$hfUM ?c =T]߆Wm{j lgӼsPu?#*=kQ q&:iѽ:U2TXfG!m{%2W/x2 &殇z X0Mm8ؤ#Fb>Fq5_dYߍ`<2.N-!ZEN-j}NݾBΨ+R-X' (opb@*Zg5-SΪ'WYSn*ަ!P؏QN \*QrGc2*2ڋs=ުADq<ґݩXc)yrF6xs?AF ,ǜ,6ShQjW8<P j ~Lgrt0cN` zCO0)ު'o.JIx| ARҹadG񊺦czzf{JRZOg X}=yG 6-]YaAQe䇹Wh}:pʆ$L8#sgPK>eA\XI}B[l;>.ETwΏbUBl8hw.1e6M[9wB}T5g0 G⫾ȯ]9,YMxiU1t Qj3[Lۿ<:M:'ٚ| OvXcL]w]\6ģjyL$ojTse#@m\Y;fGJ ׅ%MH}D:ykTFoKbG )țW01!9_۶wV-r]-UwG;X;ƪhZw7@ NzcHZڸI-om5>R=Ḷ"s>:~ޑّD;Zg`oU*Z:uDvGvlmQc~[0LFMjMV B%@%Tq=:3lg{vP <Ƚ'.5jQo{h2J/!g/dE9LJ2*$|ٽ SW7'LX(E|ڶټO<)tÕꚮG^\=5ζTCA.v"~ڔd#u K~ * 0`P6fQW78ߨ+yyFħ 0*c RU6YmD\!<#7:o/6sV- cTɑc\`?!ʄ3DI~ԟUOzt/I'aW%@Ĭ*bȩlUBXc0p:Yyi1\~fUNhlr=urC|YDɎ㫣9ΐL:?n|b;jH3jJ*We8l~x gY5ۆ'y óϤ H{Xv.2Ũ^ JS@zS}SGN?,ȧ4eQlPNL9h$"57rbX2fm}t6JeFyl)?!GNP6%j|^!aM#d{6'ibI~EJՑ{Bla}4 >d^!\8ϥDV1=N,/mDuc_.N(m*u_9`'|q&\ [$1lV/ -ٝiHl$E!6havU@_ݥ[$4L,sse (fH|UvM3Fp߻G=o'A \w1j71 o|ۚ0TRɢs/O ؗsbY6&€MM](CI&JM 2*ƾ-TQ^ ?p?͏;H|?Y bh~(SlِyȈ,lWWhN0+Sqekgvك=2Vvz~M 7 p^g&r3{ ^Gv]3bSGI $%*AkrY : mAim3w?}'4$6hnFe2Kp<"n ]qrR6(Djdm.IоVb%s2dvȉT1Mlg*JP>8VBGBs )?;=g1TmR( j3#Jә8&RŏkГl1\i#rvWBFxLNUW}E%_1;Ysbfvs\F14O:rSkv/f۶3Uq@mMiJT3\grKˀ䲄R:2bck?D ?]DKRG2t O ({WHTze)+ qP58~sfJaTݫ7x! -$[`ضYU)@?9 +'C ]' Dm 梕*AJDҔ!SB{F^^t+S:vf(LE+ָ]U L'hȡXdKwkuACqǍ h,#>S*dɯ+BҺ*⪙j 0Q|(B%R6@vgYg2x(.KnFP}r;0{;D_C{;Q{QE,'G!1 c0f LJioLe;)Tfp!xZIivRφi妠kHV% ,(ܕި:  %*=9ՐS~*58~v-LIW̨xRCY8&>:M8zI+oIL_UΆSs ȯV1Xs dF"vGG(e~UV q WmФT8VSOs3\7fuʟb0@uXMXJxs_?xғ{Kr%7j֗Lj{yEFM 9YL1Z<߫Fp/H΁x5GuYVv hWkT'PrYZ -.ϒxEFpٔ+S<6pO%j@CN58g\.heދ6B7- }M͟2 |3k?n!u7_ Sñn ʓT}]z{mQ;xV‚ey_q&9=zec}i6ߒ;u&!766)LI[4~uצoLWQc^7ыu#Yx؅yN^c58zsLG_AY3Mtg-|ޤ?X1{@?˛7t9a!c_ypg6d_ .c[ 0vj35ą_ iZh=yJq_bVՈ)7g|j :$.\eLf jE36g$)hi@uF(%ju-v}uɰ ǟzк;'U=Lrx}c29Ԣ79#+ RBSk7jZɑ0tqf쀕7;I5&HG'~U!c_PeJe$ v%԰w{a@a_V71 :CU8eR25ki!ga*LM%A#RV-X f;-HgX8׉[+Ɯk^PdrJư b#~8vE N&ք;8601xEҦ!}Ce&-T5skw NeaQEqw\ "._*bfFxKJWBH ؿ w0^Oi@N&7Gp(ظzZDJd_PKTftBDz=K:!Zc0žAp!">nZ-ـ *jׄI^xSp9j7P.7ȧ ,$̀+.ldcq1K"A@lDt@P~5':E$\E$5=}NW){UiaZd;W>uTĹ.rĩ*zsΧ5=i_{rD},8kmJJKؑX(?AM]·E?/Q֛MZ|=)ȴTڈ cǎ?}2MW>밟GOIUY)NpAd=txɿ1˲O YM| 6:+![9k7~bf _d@XbgO6Me,Fg޷SJԕDZ~E̲8d8XSTɴ^ъrq{%LMՈGa$>QiE_)R5T`'7m.95-`M0ak33uDф ͫ E痴%r }G!`RL<,rqۡ_7u57^T kbBbAP^U(@ƾ#%7] q,Yq˙>zohɹ7-ᶞ0_hԗ'4r z gIѰ=qV[]~ r< -i5͈U\;L?ge!ԗsnU}#-T,:O w9>Jz1V*<Ȯg @C7 7ZexR MrYs tSVr ҧ_$MRv6vʦֽg8G%J߻-c{ڱPNK~ȇ00c_.; d[߆S&vֶ=q8gmܣ!T(eLl*M@ xs|+eD@ s\1ٝs#Tʙ-@)1 CΧ`!!<񾧩"I]ek"νK 57*3W> f'Nnv+xmz->#5'3ωjz\R^.bmIMŃnq|ͤxx`c`6< TۃNECjէ FbIݱ_#/lmnl .,f$@Z+@pB{GtJflJ0& ^MdhJ1~iy73^;L`q:yȐC+dW []>{L.Y; ,C2]{qVk%q0t!)v&p qCtBTA_.ơ.>3&szԨZ J!%T<}vw1M^rs&0ԉ Yt@) _Ș4Y*{e?sjlw69 .Q8O7ŊX~YpZ_褓4nqTj.<9l a m1,+$#xnxF-4M\Ř*_y.u%1/~Ø vd\u=S;etQUTm+BdmK^ CKJOzBiݽsb\kwaT$[0vk&Sݗ WI3yE(Ҕ߀  l.E ? ]BYR=tp ]"%'4ܱĿ>&/B,#pwԻ6'c5(y)x~.ҬJ¦9߷ݙQ [ C}˘7Fy/w' 7ȇ%U2@I]ϯ9qMe~N( V;9ҷTK ""~aƣ5,0$UIg;SJXSSSWEycTEJS# a!lz9%SvlnDIivA쵹lB^-'7$),>YH VX-9Ucfϵ3n=G9Z Bg0?v~n؃Y֊ێ!ӫ SغbN$ƀ95$^3Gd' j_gj_+Fjg7.Q ySvers5Pef6,k( 'l\ӂnմfo"EZW4>_x33/v&B!yʅxx"%G;.C(lQ {OޠW0r5SZe]/h!UvX8ᖑ^|̻o; , E3W@ &Ěf^砢L 7.$IF>0 ܐ<|>wFtwka:.N]6 ? f^rP ]z}(i01$[FC9Ln7ơK}lt5f>%$$շﻅx{ f']){-0Hn+Ҁj_,:ֵG ڙ9r5[F"SvZ]6Pj'u-Sr0vjFiݭ1dă#Lbݻ@c4ZF,'e>Bn=rn_}ThOV|# |OMs6a&d;)نbڶlOB *:20\QP"We4hctb8Nؓ2 o*#OyxjD^T*_>Uf;;k/Ci Gk9W}=9Qzz{c2 Ӗ7s›L9пNWyJW/ќF(S,1 :SmƮxqh A|ܔ~ozN=O:R>>8 --BCQխB0A" a+l'ј{ͽ3F2{]SE^S93X؍2o݃u!߷VzS2-Ɩo5SU/y ù˲g󈆢8PBU&uE^_HOh(1TnQu%+NLĤ#,%·سALN3Uk~f\<ͫ7^t`\T{q˾.ǣĹb:^Z-0` B4˱VạLKR: jcY7PhGM"v^t3frFnpHtoQ 7 Ƅ 7DUQFe{|:_{ B: r%OZlts^U:IUu '̤P. 4iąWazg}Hڇ@*)$yü%}C:lʂnD) 9\ƞjF5< ͉8]/59oyNh/^pO+cn_Uxȥ[%V-ե! -h0S)[z 舷~ К_OYA)\G~qw5,+8:YNCҜ(RwnX#;&Z8utŁa8m!HӚs/}ü37|X*à* ;/ԝC}fG5V gpfI9Կ0nϠ>Әݡ|4ckKI?Aa;Бo>pɐEg>*wkaɰ"c7Gm8_GÿE\aeFK/K8Gy5<W1% /u+Ѕ6w)}/#ڳ uL `7IZ=@}Јbư̬JR1*J#~s{6v R˙n޼o%{%B8݅8޶qdnuɶ!.%" #TRwBź|z=}Нo: SIwsam5uO%P]:No̒d^ A#nՅ9p"^l;J= ZX(t?AR $oU"eb7=!G3ppBd}ۀɎ}5؆/?78=)%/͋33w4g p )ҋmĶ2IPk®sH"qE#jC_7T(0hO­gF:Ub:pjޒpS%QM tsEtt=eĉ]*Z^c.8c≏d1tܛo a3;(vK*OEGU= l+:-! X""+?9\"4ڝ@!Kj/%x ;)~r_Y%3@8)WJ91o(dF\SЛͣFƩA\>ݑv9Er,)DH-;U\#; Cűeɍ ;Ncn['(B K5;2;"mìѫ.Hzi eYs=0߽.is+z#T\cRr.U#j! RN[$IHhd=Ӕ`{ "D\18d15$n۟ /0ԛ3R41c!5-#_o0^lR%E z* ^YaA{T4y{i;0x:8e89.Ҵz/SRu/z>-G/&BHM$l xKg1JkΡY< :sH3 69cL=0nO3`%̸ȈQ$36RfJ֧zgIa|r@͒b ʈQ0}h[{M{[߫ WǤ qirxRjmȣÖ"&2 USƒS@L.^ tL{kZ˥ȖbsͧDc/eict0]c6.m!yKep \G`PkQL0Y̳J18SbϾL:(,X|9*^Tim:.w6cLRhES ܟGbB_oaCrWZjM^G5\ŧ7“`-3I!Wmo@bڧ6 ToECHuO>Y{p+s35KE5@9^,F[VdgAmwhDYAD0[NKB5Te81M < C)ȽlR(G302`"*L [?U+\MYZuG),|_ >Ќ2a8LWNZZ 389 o\%J UADgcM$Ctw3^C2>KGI% ̱B -]~2 8妲;Ywy 7 s` zyG Qls@SE.}#+7)yJ}=!:1PD:=Dњy7+=˪ءzzB|dOAjcsTAg  n+*CjE |rJ3&+VI`oA^{zL9~?=~uG1ڂa\KH˰l =yHک]MLCvz+LA:;QƳ(NT{a59ӎF^K}H.ФScw0k" Aa0?q#Q>?g*fgiG8m\:O A<@S:rPeK~%qO6(Mn{'wOJOBeƅ_Qudi :)}Uf*/V?Phĸ"Pbb!Ժ4XWc(hL;: tFE,@,z^\0QzYBQE%|YFfGH/CwKC00qm=&HC՛2lղihvC!+m!ѵ_ciֿj/gj'd(ާ_˥ 3= /2 ԯ)2EK/hw\ F~ !s<.:K8ZeK (ZFV*sW9h7j8f0[1d\*ohgq~fYqb{k7$ja+|22:}aPӳ6z** lH/d y:y4+ҙoؙMWy/ũ';ZpiTv#GSAc ^lu@kMpā{C=aD^ӓ]z`O,aC2'5",GF^F;cQʢxѝ(#sKbNҭ!;>qE NL1EWla<*#/r.S϶B~|Ӄm7'8z=w?[9 w?;ǤoX7K?Sڐvr]Ĝ[41 r̦HM4cƐt~6dB.^yUEpi "u>!D* )KΞwӿ?ƬJcqh*'z ՙ]MHs0XEe  v{ҩQ b rgp6X6f ѓib5a0Ž~:E]LJb%)euS3.1t BU̡m.slFВَɥJ_?z ( *VVt&'_YbF8RVɮo}D#1jm1-"T Fz (xr͉x DM9uAuxmJ!s*f}"41 $MƇ +k,An ڪ`"( JVBސӓQNCOrfwst06Y5rɴ!th1FpX?Auʫ&zZWzoc5?h~΋y&hiubIA"oapF¾sp3!j.Wzs*Ac&̶i QJA @1q iWHrMww$/Gt{r|>S `iq-1XW+Wr+i?]>UU.{]=*5`DTJPpW{bl<iOЙmhɂ+?t_“NʀsƊ:J`$+ |ߧd?y?(9~_eO~:7JFыG>aHBg?j8`s:k-Y] ۻ̥f)bbY$Ŵz7 bceZ6zf=DnB.pLn͏9mr(vf*9mhK)aRNߩ1qDx1MeCn) @( $ ӅJ4l+l‹4 g3% >㕬ggXp֘yIܡX-;.zLe e7ˎT= -zDӣFzvWĠ|; 6"R,GLVq/Ct.wڮ'5I-wH{J f_iZHnSFC6O̽V:!EsQO4< Z디s a*A҇,$laP:e:n8NPr<d}"ݨc'l;WP^Tg y~V'ـ W%lXdZng{=xD~h ́O;*NBnCzB"c3sT}x FxJ4{T:t0:y=u+\*Ynp.|#iI\͆c k[uG;lɃXd]UTɏ'. nE[v==ጏ1F[v==iKC@'o8ҭx?7G3nj A[Y}&|ցZx()bs@Tml~XkBo?ݣb]c8+hXrg]PQ~&WMG3~L S]*YEeFbi90lGCV#NUŘ n]o\J@M.$ Ss9,6|cjk1D41D) nF&T:aǒYӷX^ܜҥ6 0 g5 ?^Zސ }bD2Az̿;n#. X\Akgg cHQ+HcAbӵ$ח+՟ GJtQ66qj2 ;Df23,c"#:nw /gZ@?I7ǣ׶O1+jP?>(P(ۋjPup Щ4}}YJbr=B `@LD q]TQKbGyJeX*[v"'-wZ=G'& ط̣qҚ6eb6y8 *;t('hGNt̾.9т(E7*6VRuy&jjRXm全!1WhW9qls:n)YDeXuD4WW4+W]6\4QibED4SbMZ= h^(`4&a1DX+ahR u,LeYNc@tO_h -mlgk.:!Ix#y8fk7wQs|V"J?=G9/[ޒ?fc~CM/֘ӱLȢɪt+sZ|SFXeJ8QF77`Z랫vk;R_;LQyDoE! )PZmJyI 릝CD5wS-ƭD{R@j:x#6~ Z.7Ud "۞];{ſ -&B@[܂s(:͵u$^ ԒKڍ׊z<&u\YN$rX7l%5U%>d̺D[n0B#әA 9%IGz(JUGL7^F+5;;W#E#3Gbg h'N<:J``g:hg"n9QmUKm8JO#u K" |0D^h3D> 7k)s1]5.c-kJtEДJ \EGhۗ{i~lg+ 𸭥`ZkJ+,¸otk8眔FC'kx)ZsG~E=JJ/>r[T#EרUR?Rsyu7O?V=B[8˒aҗe%;iS4H)zEĦ$|$}zv݆<{aav[˸#~go:틿ӊe¶z$Ld :lHXw(Hi#Qu1wR"ؚhfT˝ +d 22|Uj=RMձkV,tk""m߆..B#M Ed&}:uʘhOK} ûz*̒O1t/NڤGGki\+}Vc$ܙhD&Dr)niKb)L.=Qz)I;o:+iAim4dj޾V\Ix gUdQAK4Ϋ3zvl)L#U, sS(6Sȵ_Dw=a1$E[ (XŨ s5hKkH]Lx gFn:9c>OeW:dr O=!F>܅*SnIKM$#Fpd줸R&A 8 BQOq x(YUL{2* Bt 1ڧ7itnq8:>" g-kNدYi^ o[fYO7i|G,D֙Z\Az";|f zPrn唷vyPbbSоκFψl0ްU!dtX; }r(_n&^wAAw4a4afp!HM-ɦ Qro-/XD/$#^WUMD mVh"/7V>\흝,I$b;gsUGr(!g޴H#Hı*j 3QUbs`2*qE|l(TUf䎕 9#xFWҖem*@?2rN:-Ɵ4"I]"(bS 6|"?}kciR܊e6B%1w891J]Dž +:{`fSsOW!:G%t y䏶_08UT2jK4YQZ/6]6pvr9eٰŠ TCc~.x$\X3?Xrv{")0{ak 44E%`Iok9ۑ o?GIm VΔKFë ?p dpFIs B[ b/0n|Ⱦ`cdrR7@6Aw0xYdMP.:{{:KfR8MwLr0 \5,- ,p] ,<[.ja,Qd=YָW2`ﰃҥ-GieX:g1*Wd!vB?Xej[y I R`З 2ze׬ACԆOAqWnþ&C Y$fj-3U:g>1%I۴fK~+a#|*JʚjLsGYZŘH+-lY&t(ɂ 2qt]Z=7"fD/Z5.<ؤ;c<2Ubx<\uz>N B0wM,ݲrc7:772\T.FaBx=F#ǐC~N uP+4]c${4J%'[?m&m$KRa3P@A{"*THΥ";5 vOPjED+ٌ0\pVMLlʼhIIVK跘F7ϚjowS*в5ێatqG@,`z16W}jQ28t>a@P;CۄYwPlTg}*FېqQ1W~7BD:1/0e3Rp5,JF=)D엑y 4ORw٠ёk=h]E>}FP0J*kN-Ic YC^[YmOLJ9fZ [ǽȨƛb2%&SK$LAǯ+rg GYPtus}< 6؈S\~J0M_E!=/@|7)2;7SᶷCBN\ʵa'\{+iC^d$86̛S"5 46u(0w eVҴ~xQhRm'?_!|[s rG23Vci/ORm`HQjh,EnYgg`5Y+v}"e$~e /#rxRTdbT͖^oЏ~r[UߵiEfE 4Q~-AL&bLNjfj7%}\N-#88RyaSUe|b<(B.SjŸgKf x8I̖qIu UV[Tp‡n83g"3.!|٭+v,W?}+v3iFm=5-nY_V)=Q'C?$=HE)3Kh6( ߧe{U+u;CXbA+3]74( |yxSꯀ j&3-E_*NߋZ Q-ڔ(O @-mAY`ȫ{Ţą;1뙼|2}Aeo@[("(' `z2oGtH0}߹D$[ႇGERdyȌ6~ 5T} ){vySu}1d*o] ,@4q=zCG%ٷB q/aw&fz|F{R-$D">h?ͳ/ ސNqOxF^ch0B_A+hVO)*qsNHi/L5\sF͔:_I%@̍x=Kr<*41uVϘYqDƴS4BI:%_8L<" C4dUp ٯX<1Tƿ܂AjK@!vB3&-xn ):FR8nѥ)eἼ ZiN‚VL3Aee'BT! 74βT "`t$7nXiFhTs1(t&gu[\NPqǸїʐܿ\uW]c?y l.-Ny7Z-tabN$ʴuBIEV`n,B!^L[P)x4䂻lfÅ +p zm:=㛍I%32ീ;}v 4WY$@ /7QFj󒗂=w\ǁ7/nJTG ,jTc>`bb `{fqְ0ղ[D)=Ӆ1[P/\F0ĤASgV EH Y%AiRWeqUH?kJkH*`dS%/n4,=#5G-b)9]l"<##U+ E]\G7'LeXiUJ\h_OҊl~&n?EZl]Z',d{ʯT kҩSM࿧&zK A # 1`݌N6xewdb䰸̓,$RA56K{ &ʠb6FϿpUk)Qp3rGFt'M b/'e$(pD!a@:CcJ*6jn nBHEjp#,/w?ήEYo Ef{dnZ['_Qk*?$>c~0/aZ|?=]#ծD?ŭ}/$KR&w4[l`OC/;rROrE{1tZ}r+ M9 /I;kRds4Ŭ{C;GA,'}nRک$ljǿ4␭HAAmX6rnF`ŅI\FcrypUūHߦLi3Ֆ'm_mT:ŭV?6Ũs? "3i[/q,*qsi{GU{TO282.㱄o vR,`L_2{bMt bV{(e*"N~Zȩ+6!S4Wb,K:fдxR}I⷇A]bERUkPXUF,23vX]P@^7@uP.v nd<;f|Cg@)o@<8K>oڿKhW뺩vV>"ŋt QJ=D&(.N1 *9 sJ H?RTGg+TD?F>q?ޮ"k!3nꁘC%Md2 9cMÒ[[UPI6Ѩ?5xAo?2@&&&'o\{;xu9VүF}-wŊB41ۜ%vmZA=r7LmcGYY"2iL6+Nu" W}zM }5SXL2?-Ws ȯSxo3v*砖'>MEަmH~8-ɔ5*ITAMP#9fyKHw2Ân "'zV J랉vԼ|Gءnjµ` ;;9f9IC6pY &z-0z)_9yG17$ϗPm%x(6uVI9>Jf= ˀ'OEEPH# ώ 6 5,TEgf6٫T6z'`TDDtjG0SBU* _#h/TB'&hq1^*^ #&[}D3!7 ^sr&z}?ްtY}&F^4s)VAGf um$<,-7zŘ32e uޑȨٷWpv&&'ͶzѼEw<<bɦ# P›ԝ0jlcVMCI rbX2 ԟ>$][/Xěht zC ?]e[S!c%pWtM!j+()1taO=3Y+i L`?=]fL;V; ~ Jm%S'QBD0d,0zwfrkjq+pVj>?N r~8Z?i~L,m)`W՘`Rf bYJ 77:ؼ"7UNjK3kDXiB%ЪŰt7\jl(`<>T²IsZ-|ppؠb$v5V>ԏK3^k#'PΔ)pCQ# .EAUQ,~a_k>L'J8EHPR9gT삣ÿ©̞ϾkXdt3hNm;Y0}¨ PtПٛqDZ*C]֡3}ћZ+T1׬ u7s}!'Q-8XIv9AկRQz- K44WOm˧zF6OEu\o9Qy鰝}~AwbdY5S2&;@u7{:r3Vceہ MX= ȄѺ!(d.|˪_*qZLl.*rY$8#1$XE4wTĥgoPo}ѽIP4FeDe2vp~?$1G\kOs"+$B~"OkBGE|%=Lx E:K=3B ;H-K o %\k+3w|zAҗ"c6g 0PUn<muO@=yhBRtCUI)aR':ts H/?A^U7# Ӎpm"GC;shDa.}C[堕u?>7Fk4=oA T8!i. PX^ b AEX,[(֢;*dEJT5.wrE#.ևF:U<]cohȹH?^|[װ=z{0K=KNT~Qr6Zlyݶ&N.m1| Oi{[6S6\3P8QDWe6(`;K?D^eԽ%%CPj 2U_~n4ͽtNa;{ h~/yp^OuPd'Sv(,oK>ޥlb#m(jYe?а*9se~i 0Ǵ#>[MXǞPĉh'ruY^Cj륃n7$*LQIONV̹QJƭZ۔Wl[2+惔 h+A= #Izg.w`-8RM睏td@*qta`chK= %ˏេ"ck뿈!FQ8DI}C ͈2MHG|eVmMs^MwҫE\E8:}75;xc_kkgUMK\3 A2 73/FπQeHДgtM{T#{f6,ה; - j|P[GUUdݞ+ڢ-p? m b(=z\`*EF)fs6΅FSz 7͘05rlD,3+_a;mPE!<d/KPc:>T KڎA:4j7H&?afjS 6O<1YxzO {Dh#9hL6,mǓnVzoz Wu6$꓉-Y ׻r1R٨BqE?&G'~? #5(? :F(aJ6e: Qcy@P5eEsF}2C~!}$-)l;s`|WǖhsCXHl6 Gs/mMTHo: XBkM(ۅHMiW֜؝Nvr@t[R{cLh.-(0S{[;쭱,n,a.$';u!{^Î_/eṷ}1|罰uCbjH<:0+oe<8@DEva^}< BCۑKc46g"~:VvF."E&ž[&1}$yu6i0tCT,g>MY}FI;yF 4tG9)ݜ$ifʱd.̩1cUۻ 7*-G9b_00h DL` &^n`qO4!ȗwAd'9c ܲ德UK[,mэOn4EL@q;ҫ?[PWeQս4&y*k`F?4OY &Oj3nW'o,ÌFRy6 k: IVrN4R[z+X)H7귒@ndsGlCuPS< GC!tvWЉzV#;"HjSʎz2Θoyeƶ֓P,/rDm,eqHqC>%x(Kk9 BtUKg,E_W~!ٶW- 32VkY۰R"#/_FBj7X7Am1uf{E׺o-=A[l,OQ'3_8ea! |1fH[=x@]@׭!tx碴F-O/( %Khg=:T'r0P!Zp8[2:_\Z:.:$9mqOPwr og U 5SpM _m(o&v*ϯ# } GCb\eOuqhT'y9(R+UGq/.SܒQ(MIRPh-?uw㑪apmfE ̬3$F=;>u`"Z*l`^~wDdD.!S+Ky= F䑸6K;N^w HA1t&X/` CiܵSĻw+HxzֻjQtr)>>Juڤ+zN Rae(_vbCvɋw])h6.v(׆ __C oуp.nIWx1@ѽ$RYz+B9]r6 DU`WD~:9i,0(?qMqE~]r7v^Tqf34 0-img\[vwybwA\%:\N)ȳM2*҈3kʑd8e2B Br7 " {<#c}Fnj2pow #&TL34R.'0Te=.h T!s+UP?v] T?YY<>!B#jeH]cOSOBh8iĭXzL` ڲa6R>8hN "N*x^#mb+AyI)G3DQ]wWUS~qVLm&L;ҰEcDVRőF7v{ R?mK*(hvz> %Ĩ+GJ?AҌM:7m{k^t>9fgtz7)_2>D"oīۛ^PbѤTAZ39ȵu9 Î ֬XئN5e^PDDk&O hutٝ9rCoth T}`F~'f =~h !Nh&{,_f@ao \AI2[DXB3}*T*J&-vs2KIC V~qMC:yĿTfnt.'=kBY55tRbJew̴MܘUg{w!zѺ c'Mw4Q Ѿ[iLz +qKVD |{oC{i2AzBh<2i&dFl/ IulZGҌ#G"%_%>ׯ}gJ<;RzNJuNcY:zr*P``N h}gY<X.,:FzgdN:Q Al6IS&j3z-Z w;[xƤ)I˺-7H $\վ*=8G?촢ngAX`73cG6pY~(倅h?ujmnlIJKoNc7[';|,. fO"Fcf8 񥉳*uK˗@qSrW|E%CHwKdp4d.d%6%9-vE Ѽ NJ;*1\ lwq!+v/pW#{f?eQQFǜх`[q`/)Bi }SR|16$c WX Vm5$ . /=c|rW<%_??k Utu![JǠDč \]Dl̀b:3N;9n04J),^b/zg(h\i)ċyT@* ;@)ڜ"|P̤ʲ~CҴ'x^r<>/Ҳ6DI :<]i@_ b硂.d4NjB֚CEL/ڞs:z2 o0٣(B>&?,nMs_Xv] Sfr,$ݹ9mouZ/vוPp-"4\,?4I|wwᨌO-`Bl_a29B Xg仗4Y}G-fG p]ZJZTTyp+3vX.O} ϱSʱbP_0Cx}r$ݣ1GbF|i0'V,aw߲&#y DXɹJLQ Ba1_i(}+|4YԖHrKTj^}Wv}ny,܊sj銗!T #7GOUqK^;_D٪!%Z[D+A`_I4_ɗ`pNxN)Okh6aBjBe?J9g-7u(䤍| ǯ,ũy d環l=I#1KDs\aDVIP: 5=BU( |Ѷ:1NͧoRɄRIJC$(滑 w=\ AwRP!]ʏI.@38]bܨsOiy^' EM~UJ.Ź]d/4 ÛXhͭ!Y7us!&HJ%4’fwub*[Fe)?lU uhsT:}I`')dL{6&?Ӫlzr;%E3+jH.TkZV_t0 [K;L1Wx/է&Uoqs%QVB㥮oa* s`1,aY=XE&f6iVՀ;:0%3-3u*0 0-uOC,qg8-{)eɯ5r= Bxd  0a\Cvpխ}n؜~t(ቪKg+DNqw/L4LN!ڡ3o`_ os"Yw/<5GChN&vcdrGW#ڒ veWuip}eANo&⪀ 7oeS?R4F4\ mI'*ыǁ\A}M>]\YE Ao<=Oy.5!ġѺL4|40 ,Εs]'GQ]@+o)=fL֏I+!Do a 6ŀ8qJ2yPEh-_6{oQmeď>~ :QXlx3Na?ըhT/8.^MًkS8X9CO9t3KӠtVLcFI{!AQu2D:[K#'yL$db12LoljWaؔݮYX{w 0@x 9L(5𺒌U@oZC9 <ɲ}|r5i}JvD o{p 2t!jǷ #/Py`.Fʂ04aI~MȼqB#ӧ21}F^A4 Eq"Q[~mmW_eS$7m c2ㄆt_MUAߢ묞Rq1s%bC*Zv} n#M"X:hWsIk/" md9>ŹESAx,q'6z FX8o ~ϫdYuaۓP̩ 𒍆.R/U vc=M}AbĮ\; lId)%謒!5^FY24l&V(8NOV#¶`y3D Q"{Dg;Wu@a"]6 x g[gϲBdmDƺhtNW>C c>3 U2Ma8u@{i yNq8xy)yg؃Ȃ=ȦāHzcWZ- \JfvTpo Ik0Y9hC)m]!8ӶA,_ڣZ1b{#Nczz?B$VWy#bma 4ԳsP69_A(tI qq ]11 _+%6^#,m_%D^v",#E"Z^Z 2I fр)Z٭G A"sѷe ˎ6",[cogHDS\鱃qL9@I of-(1(\7dFHfCCmr/{X o-4M(VT7N*Bt̪RY]9Wy!'gal''nUoc6&Zchh/rWW1(.l+GPͮWyq,1$)S\!^?P=Zޗ(%c/it{zfTĸ@kj`1&);DV +҉~ЫgE4\ `1R+q>+%vyiVǕ s=Ա6F6o<;Q˶eA庹A7C=&g+z"cGmM?[)VMrwKprn_sÌJg\I`V~}GSbF.y*.jy^y;jRK@-0@8FU_o~cJ?nIک d˜)qM{Tќk쇲he&Z x@kÐhE^~!4l0)"e5yER.B{a&;WrLet/.{Um{Ry@ZϚ2!M%3x=Al_]:ս-1yU4-v*US6SU(a 5D* cwTs=h"}(-0JoWCNu_2%aJb P{H.CH&BM-%C?Sj:K>2qmsw^jIW~B bZ,M+?Bv`m'lMzܘT,r 3IAx20H?lhfJuhvT86r1 .agug1 0*[' P⨒#dioj^qK*K>؜.8oI߼oY2"$u8Dn ͲɌ_슅IOOؐ<P5 v"чl8 /DtycܓQhLddVA=sw?i+Ezq־5]DB$]K?݋_w'gߝTZ4Ġ-}vэĦX3 D0¬" $99\iaMu#Qpۅu ߚX, `67I'L/ Nb^RY^FT^m dqE"jn&{*8Nf5Yne7~xOؘa}md65@ @,!ĂLO]՚H爞wҥ*B(?݇D qRnwr/D JV ~|\EOOr%ZsU6-q;hϰrG:C[mE`$~KmJZ)I3DEZFq8[F挛jyݧ8?$>vhdZv}E-)[/5ʷ"պ pd6 炍2;b/YȬT8UǰN}gccY{\㼐qׯ#{({V+FI-h%4dM.%q ^)07AmyؕoQ։Ƃ*Xs UV֧K)1DsMAMx?ieJ?grҶ.j[ jNán)A3Qf+$㺰s̕K{ݻz֫S)64kqwS(oBZ6Aѥ4bhT)r#9ݥjĸ#t?]rSIz>t|| EHZR-+:uĺ_XgOQ0pTlm9sH,&|L$/?L8)_<Si2y2d?r?.1)O'f̧o@،x"@.<>m"e761䘟 Iw<_oW>JO@mcN?u:o8x&&2gOCuKrY"~Xq')֧1}kOhmef=us4Z4y޷(+3*T'i?Ra#gdTz:$!BG{(o6l&hnL(y6hM;j#CF>& Kv*%`ATLTNـ_yꞽuz8‚X3jl׌YvCܯ-MY#^a V@ %~6Q:#m.]l 2oMdשAZFXg~?=vӤ ԵNv#LAŶ.$)pm#TQZTWշ-&BQ éOT5]!tGOOidJ1k mQ% )Q4O#YQ۴Ѧ2Lɣ+E2Q5e? My #SF #wh0U1h&%~(Qe as0l.צ0׶X? l[9W6(F+|9DYmleQTvD_fyDw߳j,¡] ~r[>X xɈt",wVs,7T!)le{A9쒠(76 'C*Y o3L)$7Ǖ. %{h (Ս6jL͔yp+  &]jSE{k@a/"aXJw5h1ѪQbrnѨINFyIOp T>g&Nf:؎^jBO;wTV6%"JѤ4\eixL %1һܼ]Of]%?aNIlxAק㤺{0K- L2$M\ `_ulB]Czq%ڥ2D^z--}_"]C5(/(~uL[C?U$5ĆF|>Wf-7Ck}YbVj / o~KI:y%.8A" g5L{DЫ̔MD68JsPq/: 7SB!y8 ԶZS{QO4{;#7Hu ]x~?Cٵ,s9qMx#) v b4Xrvh&ejK;b}F4K+79P Cw](ܽdU M̢Y/kb aC\Ԭ@:Mɖ]`TC }Qq$cFN6ӑ})Dlz^?wFf5Kxĕ,Tm[vn^UuȑpL7-d#%=-n Z廩de _XENPGe1RpJ~qԪZ^SI0T}yi|=Da~4kB]YO0h:KU6+ *Co C:UX qۏ_8A-E%eEurD<':ӚN@WQ"xgomL3!Z.WVJ<Њ(2ǬѫkFtlics!kk0uDH+{&[-^ Nd_zD!͎^(HwdkqG{(0x WU\7 o&C3tޟ! ^pjRso+d6 #1i+Iԙ\`# 7KSjt|FTW5ql8T1=u%f$" pC}$3;Tj{16f8(esp4|THF]\pN,-u}m105r~ Q) \sfo$gT+Uڄ%!-Ʊ= Ht+ '՝i&4$X!}zR M9HtG\4ה|8앓"".[WWy l?FGZ%žۻ U QyR4J1$0W SgPv1uʾ:K ?nm-a"$""w[(#+'w.ϴ 3ԝCŪ38u"'iҙBRM?iLz-XHӲ-0OmL+s47eQKwͣO375]GB4BYiEDKx^.yq;ؘ](C3J'b1 AzJ6S8FVIP؅bUF.LC/OHS7G`c,פ~F2֘^"SXz=$'OUD cZc;VDV#<8ԊQ1A-ze^s y/ZHj '0oJ ou0(Ĝ".ƶt7 ,0KU~{ᕮ"zY,:oC)K hji,(rJZo P, ۲ur=ea,okRT:hBՄ¥|@ <X )%Dz)t,:dDW5`a$Ӹ_3ԣ)B8O24H *IQWh @5J"t0g*Sbz%qKY.D͒1 (+Ȼ"m@+#S^)0!O %>Gh:̑K8j*AX6/jê\ K(;s$[x#h'`Mjtq7KiMͅNupS䮱 m"R(LCd=ȋpI\A**J62 -k;(,/ڝDIQdZZ@nLTJN]nA-d~kiרLh+ nYƗ6v{HI=( #}dFP<%OWwZ_#ev}FaLs)3a2W!& &ЌGk z1BZQb f%=&|'^Y{elDlI "2SqvQ pkڄXwc|&v:;ґlC ZO f.by&OPnx6,`0d@Nicذ3wfPG$,(S ʣ)I`M.wRV\ɨ ٲt~+B &tϬѯK{v6 >V>ߩ:1xɞiꇴQvgGv 1|:Ķ6J?)Լ%'G^_VRy`h;hi\Ĥ^}X\/O%h[R 7o_1i*GVU{ @8NU0P1jl4Ev{l 6W.!֚ UI$i$ƃ:eUHW]f5}d0ꚺ41f˷_ғ<( 7 |kn@s*=UgWZYEAB=jTtp}}H쒍MTѽTT抺!F5r4v5./g5@~◐xʕwc-sU .o<}f9h.u-bn w[{iՉ\d#P6A<_XD\J+CM[R>})=@2,w}V8+jIE\.ײLҗ$%@ '%]ᔳrYV~nE:WZԆ|`%/9vI7=.b#~poI$v?6*ވJY3ҋg&89lN/O17jPr>:Kwm%`$s5~afytIrs+ HA@gZSpLjE"_gX:Sv:kvNR>ش4 Ds慌i-6oP8%e煨:V!>˛l.sw\RpH(V_բٯ/ 6ǰNK\qND U99;ܗOa@`P\&}'r ?b1BQzWLel;7F jS?.\_DvpȤZ*.Gx?6sioqh|)ge Ch!M=!6:4H9`j (Dg[ޠI1yzٶ=0׮\l}W'][Z{>54GC+aO=")Ra4*b=r.XGdlҰ,= >FW`vՓہlؒ4栙!_yVh-5gaux),fwQd=IYʤP҃Gj񍞍!mQߍ!u>qхy0OB˅Ĵr$(Q5LQCSvn³G#14DdຶLmMdf4TufVX0H |զB]#6x/0L]#wXJ w|Y, f8 *zM3POχf@I0m's_EO8VMIգ˼{乶:?R*vT Ը+3E.sNq!̾D`y8CB+Ykm!/3 7pSG CCm*s zI =>j׉\ QW*Ɍ) 0,/yőƬwMjYekOҷR"JªݙI5RNWd csp.)#$2Ig$(k&WU]'0"?}nݾBYAviKxOl.,$Cjw>+"n3-r tTvF}Ӷ-`vy湻Xt˥;uޣ+h<:=%Ͼ6Tkoev_lU}}P!yVEx?pPx}ny'ރ[XbI a/&W{ͷ苰b K=jw 2`ADk y:"kfh?X\ß+ =e )e+&t<ٵ=6^vg7)ˈ] IY ^?w%  5rH&oS+(܎2A֓WX4F3ߥ6Q=~-U[ mbٻ4[M˲%.Q`I)L!Gn9Ρ4;}D0,+)!kG܏hj;#;cmN^r bjʢ$U(B8Ivؾ7Uͯ)~jcf?@,En GA]#3o̰i,zN H'[fTŐ6P;.uO" IH@^YAO"ݛ"1i 'V kZ]5ʧO%GŖ-<vWsD/hJ_VvN{*bsxUzA{._dU|=ԮulVx'nelXBKwOMkJ @ZcAq~ j/%/Q˴5SiQʥmJli,7`v2LGÏ,W* fwMnGƗLe|PbYѣ4|-Qv I7d,a[mApIJԑOfh!Hm\5je`X x +IW{:i}b͘CL$CW [iq\u"-@ڽ5yXM['GqGftlȯ8#Xԓ-|\|$C.$t}/\GLˤ:9p녽fMmeͺ!!MeX+vCDM6cb/iчqQ:"~ocx& Ļ!Dǜ'(Kt8Z7υ8.xő.Ľ`N߉Vi(اCZ5&r :*6Pց\&!K )_<ZÙZS>5gْW wˏ lO^F*>( 6;zpp%8:| 9qG7;ܵl7²"X6"xC΍)xi652ˋ/3hRy$ 3j^99?.5}7ʨM/Ø [}V0j p2sh_L)<$yŠv a!V|r|C\y+Ƚ@tnxUfS$PB"5 ja8SN~(I6LsO?[(ƚmݥOBH=<UѳDUHRWtD%ZOKﴥe}y_qp4h*k9;`b?m-쨩j# =pS'Θ֟ [_DI1&(Uv*@r)uGz85W5M#ƭZ/ħM|"=LEhoQx8زˌwй/L>}@IBUg"kʌPVģ+$z]}Ӫ]Rԕm6Y"(A#|T1 *?O B),$E0i c-v鈒*ƌvAŇ1غ.fsy0e)UZp!Ejd8G/ѣ=J:Jkڮs|=dMy.4iƧOKMُ2t\9W߾u.)GIq.sHm  bW^7U*w0TN>3 * x'ZcKMA8x&#~ĭ7ղUnrLY,N_f9_gDQB ‡bL 1xe|OVQxУs'Z.vΚRH1毼mΟz䑻#J*q>lhG&3hZC=OSN صE3j[@. OIU\Jm4tjVuQYՊƈPb!ՈDK:W"Tay9c1e ߸&ը+1:UpȺn$VaӲ(tn3eUWb,9AՁCWK}/ZLyvazWE൤hy 9<--=1wlפ=:s N7ĻZZQܼm֎3F"̒?kVjO{DmEaZ,M|Z!6>홐ё`׵Z#*P }H!$*R.o.#<#ԴL>3[ow }WujA$ϾjOAz.o\Vj zudCX]T(w޷Svj_Pq|h4!c/)?"~..eİFxc1>Lz U8dmn|M!H@fk쒣LI2g,1'9?:~ꫮłH}@(RZ ^dd^,27 ͫY6oH|G3kI(CӔd*lt+L3~~N*MɎA=[G{,M5b0i?z xV(!]Ԣks+ I40g+ NMp@p9P~IC3`c?0Krfz=X%DlGh5/ B0LUtgm@BSVh=Jӹd@)^ 6ڹ7Jq+Qfɼšj("-2TCW^v(e^&4ܭMQY5P|a϶-KwzA+\t(p仚TcgA[.+븃H ] 1|7EvW|rX7>l0oC>ϔ( 3R_(BS Y%UI|+< IG(ɖ+y *{T¯шKiTV{F!Ѥ{%r1N2'pˋ랄gLDM>vL\Kfyh](c4i_ynJ2t(t >9Dܑˌ91S;' E~Zni)2h1/ˆTussIog]Dǎ\,>u_%Q0!'R%c]T0vP#X8(_S7Q˜ѣB 4Z"Q]Kz?(nE/}z}Q|vT8w W 9' a~bbc0_.9f{qA&5UFX{T)%e[@ P} yCY^ЄlvyɡFBԄNM{ ɛ=ɗvvdl)ӱsB:~vB&*cYԔU-n]ɤ$*o8 PRQ|'K2.6JYfՓq71n`f$v:蟯;L GDG5ؔ#iJzיO|zzjӖbJZ((fV* AN$G]~r3~Hn~{P J|Q*. ]Rnc0(G)q?^&:an9 =iN5ZoKB3~.1 ;BWhx2 Um>Q3P-o_Y [ݔi?D"~^i$꒼_y^eh*#}.7)o'z Se65Ƙ&!ڤ͝|!UF7+x$px[jaV7:'q^)zUD`)Σ=!lK ch\hB3à'Q/#Rɮ-Q3>d֕؊pnK4SхE4zz6O'4m:@dFU&` Q<՚CwV;H+)dd99tEZqv"e48Rm|<^F_xD$&+.p򢇫hUޮȬq'h"\^UeXNyDY]g6T@d$jۂCSV;aP+p3'""Tْ@ޔJ ?ѐCu:{9 $(ǖ L' ԫ*wޜ\.!oId@|[clѵ8QّCld$Qٵ/_UNKʂ0,.66tv}Dw06B+y& ;~ '4ڀ(v+6ajcƎy u#핖D|U"wAN=Obi&<dnA8[ț^4mn(9CK %#_ˤcbkѱ Bo_WZMAbs64EZh+UA6]+)( lz& c u8vRw2+^vVZJu/Z-30g͚ 0؆nY)rh/4UgPK%C C!8v&,( U+M+'O`Q>%Qh9)iXE7%%h.C+Q8iRm,.pSZ{יV^ǟ<㺒gfkp%/&X͎`ؙG}Չ ޵MFT-s#BV\]ZTôC_O45 C/Z#tik\qDC問5@ʒ >FdLt/ H/֩$|4bj xJ-keӵ@_(YC}vR==uiicY֩y!"^Wxo@j %VC2YXl'+B|/+38L&ΫƆcV\#j$ zGۥy*o28JCβ=QO=yzRlG]phFgE,$Gj۝U֍gƮ"z$KnMFHgb[dxsQr gH<.RB^x5ZfAx'?]sDlК} 3G7WidU/Xܚ$ܷc <]KwaM!i ~ `ۛC f'p`ɧq(L}X/~hxin.=#*J @7[KRv:k6m*A @=Гubl~vA Beb*:\EX8+_Q%?Zu k-\;2 Th:ɲJkur!N'{s{)־ *L|~kWJ~ )2}BncRQm*^IKcr swj ZuZjNٲb#@?+,qVpkգI]9q~|[ĽT5vT+#3DㅸzƹWq0̤Lsה4u#= s\c#/ k]2g_DrcIݻ\vS-aWrvX;)koʹnx00d/w*},+g؝`!$Nv|7eP ϧ{jx,! 2974]c/ۘ2Frd*8Wo?EeY1!;Әw]ځȒ5HpF> O=,D-Jҗ?7h8Z>8A^=Tb90cÈ< #v_y\57$JEW8 ,2p3 AT{|8XF U?[~%Pg~`K |~FǻǙʯBQ[qL9!q϶Ghe8=.Z'yUQHl>'G6wԁg,\D ΠHQ0g J&)eƫ"%0p'LqMutS0tg^|}g(rc r=cU;R\N5/~Y_0a&:8-7=Nì_'`ÿW_N|59^z"&t:7ma|E(Dߕ;U% zmK(ЈCm6 pP<H/!zVґJPo(}yI%1̖PQ}e69e\!j96ZlmBXH$&@{e\9.UH V޻wb!$ צ8֗ b9, ot  -|s+ >~R2 JOD)Ly`C֊76EަkXq3 ϭtuB!>)8Lf stxQ I[١:jעa "[ [9j;]ֵٖ[W6?A۰aC_B$QHWZ, Sz=4C߉9JzEx7 ? bz|w$EXn ~,c)*<2 q%ŏcT>-qW>Fk(˺1e9ĉ\|R {[1qVֻXP~1G0R-b ap*oMwecZ~iܝ}T߾j j.Ǫʜ}TA_cnK>\3p!bB=Mlٻ.1g\k1\Z]G{,jvxSS@I y Z9Z%8}]D9;(fm}P (Z\ |zM3læP/s\?OڽvSpQ$܃ $^韉*Omː} N0b#>2Ox9}WrEdq@z̹vQ!ԅ(KPH') >.g(fFL&`wv}p6We=8 r4\^'Y U&щ|@shLǻ#bxM\~UPj nW} =[B?lG}ZNMSс3\ލ h=n3dNv~u; `6fT=eUp-ŕ8_ߏ;ƫ4~Qrc9`*Zz S(;CBRU 6*;WaD%3Eݨpx~E".ۨkf ;"#bAX_hDMZP W4Ou4>j͇FD ]b5I>jl|Rr4~<)>>;Jpdɤ~vcRQ\p*veFJZX@! 7%^w $;*R1|Oug49=2hM Dr 4קrIj֮W'2D?UؓgC,kURR@P.؅{2@SH8ܖ@!iL7P#:0]{eܻ;ZRx |s"xq0 m!BDvR0[zY㣢*0_dPD/ǒx]52:=&rd>jf/ ӿ/'3 WVLB!Q4@N<9:&_=gN CNm5.|-A/P5dp*i1$$蚁Ss‘@BQel%7ʐU+ |QMz'Lm|;ۊm̅y^y5C?ܨܰfHKûsfu&ݬASA;5m,..HsCbrga;3qDn2ꖚpF]D[yq6hI} O@}Eݐ VQ Ǝ5SM$+=lW3NˉH^ZMk*gFbӎ/d_-8/ )7Dɍ`l{ \Jvk} +3VHEI3f%Նtkm DߌJ +Z+&&vg}"$DgQug M32Cb#) !YeW])LeW6߄5?> xh$9E&tcȓ9݂\_Q {ФLm_Pz:,դLWyͬk8fl8:9dN[X9Taؔ\?/k|c3lZQ z@y )j$.n-j.s`uyVkW";}suzVHY=Ȓ5rx7s5¡d9-ky\S~Ext> /[gQ$ɾlfZ1frqi`m t+0MnGVm:a&#!N֮joT2\B7Nbe``; H׉+> =yȮV#pڱJ뫼ka1!%zoHu%D6%i=g _:yhIV/EbDAB̓.G( 3F}6+fˤ;(.II &nҡ?om2ucQRy~ȍvZ+Ilvw*t~~%CD,E]ndl!q#cfm;iqH0|\t~Sd*٩)NKafCS=#\;`WksO w%J?.Z2&y%r'B4O)cɌN^Րg L5h*Ԕ@nhlT>x8ѭz4RnN0K@@UԍPY C[BvJfsMVB:UtC]h}61 ;MfPhvSKn(K4O| ElI%G+%'/-|JY 0ӱmu,1%y &j>&W]È@xKW<\՘ǿ'T BcW J'Ӧ] U5|ۙKʼn`ݏGy l{WHLG7%}[TԫƇm ߴfъ2cEkp3A6 c\9TSG:Wp>ఉv?0l^h')#NnLyw.Md(/OoԚDMЍmSػvuųUG/~6$Fza@ww Mu[6Zf\@hg{A4NNg!oѦC UAB 8((~C@?'qeP^tQb}xʕbWFH_|>< ;a%x[@͏[ِ4:~-7 'Ê,[Ǹ/c<ޗ}.J[_fS:&t5F7-dLs뛭)vc?3@,oBoWm*a}8IZQ<vkz\=ma:>ƃHLH/̯)}ڍjYϗ- A`"F Hb?+)q%& r~UST(lA}, ȡDrtbH9%|сZ{rA2AP*2i.5P,ArnL⬳J= 4?0}Fc@pؙ;*~W[4uqxͣm!.#~G# '"= v};o%ji'*$ XGBF995(F!uZ*(HY)A:?ћ2Ɉ. JEI0DjkmlZg}?j\IӠYT>`h#.*paѤ,%pE|ˊ%Sz,)@ sa:Q KUVީgc\|<޿br5i4Cj? ,*e/ qu<9P8? J箄D'pL?:ϥ5!gI%乗 zJShD% 6&U$Z5X,3U`UO€b,~\x:DFKs\_X+O1T%Fb-v4@2LĨn[j?Ncqtw͗7C菧#+fۯwC-o>',OAS _CsJB3;KZt&ɥ_y +ႂܠ@ aZb])[ ! șgR5"\ɳE&{;:CљfjjAi4yt왬W8582>W!" 땕m}xFQtkuو13i /l> 451Pz~τ NIh؉ K{}eJS*{ z[Qm L+!ѳ,a>0i/iy(T׬Shz(Y wV| g -GA695~j؄1O7?pmbj]H I\T HKq/`|TGFZwnyIƻH9jݲq=$N "#GZw@(X|p)20Ip6R#GHXvHA8wp%PQ>*ZR5j0dfB$twc>BZ?PӀH6󉰻aH[Dĝ}+|(<:sM4,z,Ac4h}o#%? zlFP64@)Q~tЃ1;:c,P9ױD"xڻo 0Tx:*jn .E,UOūgv^l`Cd;u_TK-Q&B};&ˌܞ`:S0]8=QcTG#赁%(ъ Qu 2x=Xh$pC\7l5ϩ1 R&Uj-%,,XըMtS`},N[xECۭT;܌~|=.1廬yi vyBD,~E`l)ֵXLkiRE SIDask>lu: b `ncAzy?L`rc7$ݾp?jau[Q^J\q}+/_Ũ&1\hxly^Ck'[Sjo"*t`I @rp0>3޼GRq?e[lv6^7׸gE,S+Uf2Ր :ayܯ<ۻK[c`B5r_Z,$#;BL mߐ^r?O8Թ+-% l8}||qٹP^ڳ%%ik?:CǠ4,$mXS)iow Q;_-A=xD1*oO9<at)sj{P"4A 7:n*mʰE^uXR 4}x,BGloQ:%OHjEP*܌C&c1TMm89e W%ȣa "ܑ 𖠗>y08иkk'Oǐok=6G^C u?yTz)6*`}Ԛ k#%5K{*//>[_Zp5GEõj^a$ 4E&oY#}wyVMzIM/_hsu IUBdoI`7>pto-z7B*ܤ}! H^!P*Ƃ|A^ 0 ύdzV`U ƨ:2{F;EjId:\mp$+~j*Q8kntjG/NR6b.ehҽ5X)R#fs>N"/ _dA_o;Z2j[~iNh[}iLoZte S#8,><9|v#cuFT:ȩޚ SO eo nLv_Rluc$y 8_d>& (|Filȑb:kH;u:hU"՝m t#]e{b1E/E!q'I u%Z.4BN-d8@Fq]0uO:&eZPfl5΁tK_M 01 g-C ̑iO|VOMea5ԁu L2 3nji#Cw?N}31dMoBQ'ʉƹWyKYmҝ$p rk$_oZ$㰾G"bwN͊ㇿxR$ G}aeȪxJr7JVRg'7XxRdܥ` s!'A+Uya|hc#ǽ6y9d6[脇d"8}A55D`a[ܧjRN@F4͟vI OEh@5ET&JN٨d0kA8m^kL\jU=?(# ќ` \MZ|\/GԎm2GPWլUfo~Hs.C  ο3ȋ҅O}!N~1t-!ܷ M"Y e6|Xp+i@=t#dsUBM? w,0P쥡5ZzL5ˈ #ŞHFC8~Ib w(8n@ KߟsThYEѐ"tU.)&]i>OF}ڏ(W jN/#ZEtk\t:Gk#m邚KT"(l]6OF%ݨڣP?XS\ __LRVGQ7F>v)*$W3Gq5Q;&+_r略} x:8h!ύK[ c5~v XLHٿm9_ {2hAܒ/<,%pdKّ5I=Bo OWlY%48؃Bxg! @S%QR+ZT,B"%"|^ ŦdjLBq0=@Uq֭D".((az!E:՘NWqQ1[| i"SolZZ]J;my|Bv#ΊvyMgCʟ蹅nms_Pl/<3VX<"nGQxjT'N8Wy_\bDccfb 3,c1I) 8Y^ﺌ.qۀAueřh(ݐ1MzgE̟;SvMXjP]7.+d"zS'BKTл#5ܫU_zJ! ƟtBס'$cMř w dE=U^1țt׎ng;ʦJ7JOKSM$Z@CYGF2( KiGoE }z戉cp U$"J%@<\g5/1 uL<# %b' V?5m:dec-oA3ڮPQb|?WSo4ty;+*o*nB'1pËf7}[ rZ5"ݪYK@TxN純}Ed$COgB<#vuE?oɤ( #J!pl>$K!CbA*`_͂e?!+aLn0Z#TNc\-<.z.؇>qlZ˦Y#񞆀sDxkVjn^t1kJ> IBv"+%GѷN'__޲~L_Uj>ao~ Bئ3Ltnpp: P5v\V"k$ ΑT]pe4B'Y9-vѽ,Dʀ3O&qa91_9)=Pek+yD)lN !`:#:0 bQ"!.ɔ ]\Ռ5h9ujd3<Y/OͫL֜|~@k?dBlveEuªjegFʌYּ>t@ Csm"@uD>4 Hgh<7*ݷ5vť >t-- ]'D) 8jaIIsEЉ:F~IFf'0;la쉋 5T#`o.Rp>cg@l( h qtNJ;W7yۿDJUeS$ AUs$8|Pr"=9R w49"/ /e~iC=4L!،Q;dr=bgfp>fr& a+y&ۓ2N>sGpw*R˨@mtiP[ӽ<ᱨ!k=ST@AM;)DJ@{Y2[1)q߳(byLF;'_^ҹ_ ̏bN0)'C}OJj"otR{[87|{u:hrn԰I&41mzY0ڃ!#78u8Ө xUf N= ݩ3LQ414%rGeNafٽ`K]׀U˂#+z/ICLg1P:Q2~OV0yy]Q r`Zv.:X'zWpAHWMK.7J Y8=1dYYz ]Ab9 E;y>UW4EGtI«$38HS߭`';g&&j ZѾ?ϬoTa|0mK$Gxz݈ Uo0UQxd,/n'[\Lv7ۊY,OP IÓWtBS:c6cEb?12psI}M%~S#->0'ƀf5f=^8VZZY&-9K$zJTJCTLњՑ#V,h77q0䵌dۀ)L Nyd]{&nG,*4/^ܮK]\n)_pmʡDO!}f;h#Ud.V~cJ[/?q߹ c?"}JeAMW L?eNAxݒ/i\ŖVNVd+ Мm>$KTn#-V~;o<φlf ,[W8?NY(@YԺzdj:`^Bv3`"Ţģv/]U)b x"E2g(c\OM!a+_`o%g!Nxe `ag\$Yn R-> ؿ,$uo,]֞ڇ w[K/|hNjT9>-y| ޶#r!M|:)=^Bx¾XsO%WI ɫF@%_N ?@%uaRSpsܻՈTfo! aMz ([*רpQS)֞lȓ9: m-4D?@ M__߁1&a|jVPMPy񲦒I'IMۈkVަT|Gf') B(MxdÚ_ Rr!Ҧהq B Fa$/b& (yӮ\M1".aH7Z\Na>)k\_|9 p9mYp@d8 W ^ .ŀQz/t'ʉc3,2кϺw UA: *2mf:+M*)&3ie}j~ P3rt笯HOTXos8ok0mP#Vu"?%i]GǿEs!ڤ~NFzc3!=4~TT3 ́f*o]-M:m9*dTmmҙ^Q4"G5YPXϟ7Y\ogaa"^IטalzIbSMP_ W6n˔5{DϏ~ <ÙuTs:JJ::[ȝv%L +]CebKB p7y Igs9ZWw_& risq4\5yP:c=}5[}BK"\gaV8]]MbllcwˈD>(,~&@7u d3򂆈vrln*14}5L6rsko8bpSIiٸLMWE ݂\=;ݸ9a1̮D|a:QEL?c.v`9}OYLO:Rez~DV׍rOVF+ep_}21GZD^28*٧s3jQFA,C1O, OU`Df{F(ЃSgy+"̆L ?*; d5a,fCnhf5.!#EYQpt}d+1J[BS8u;mA,ʪZ,haW+ wH~Cj;7~nlf-ө[50UN?^kRO ҩ4)|T;Lc枮k& B$1]a%qB0_j $a]lc3MLҮ(]Cuow;+R?d+63Gյ6V\xmt(]>+yI؀nM*(n?k)Pb! )M3(s{b=2l)ݚj#}! >SdÌ/ _֭q|/Z,ҿLBdSlO4XtH\`ܯäF~jXĈ|L,K+'!.>7UT##CAQZ|BzycIqnHV$%ݭ 6h)ӻxK+탴zLI}| OEREZY-ho7\8RNPPFVt&l3/t@׶:jK'։Qt\$/휈m[۳33'7^7k[cF=k2UqY[SZmZID_1#?ߌAS8̐>T0Á8U٩$cY&W-cwRA'8it$@zo4) ϲae%%+gC#1G^^y>a־A\$Yo=L(pCU2 %AJXvmG MjO#VfD֔]SWpi>i~7vԎ rZ|hYUYF<6v5m֥FWqvaMVch.[>e|~l< U9q,;OW4<_VMRQE x(X[`%?@5k牮{ngF,n'$Hg6G3JG ^y йI_̿h PhLVnuth}vzþֵpj!!էaK5rYJ GrB6$ ǀ}k9,:3r#_&Gw\i4!N㊈rRqis\՗bՌOv9}JcyYj3 ! mHe-lu6-)hΌF +Q FO.bXu8P;>Ze-2!D0A߅<61_ aRݮ.˰;CyN#@ʐ\u4*bgYpl -HuAퟙo^XRхTD^rQz=o4|ak{CU]GAY?~Ȫج~mYeMj1G-5*w<ı"@Qts^jWϭ\'9 }B#XU1{";*"<˷T)$,1,qATPk7Dϊo곂ddpM<`se;rTg= 1bgH Z`aV-D^HndS7#"EXY`aq]*d8}&~BKn@w>_ɍJ3.yg#_U{Ь3ӖHgDL>ϼC1(E@ʇ֋G6 a (MMHI[p2ztI)D2+|.w+K h,@s̎FP I2M'Suy&@WSYuVCDfF*n/4\1d ,vR.wphPJinXRY`A/e"XAIi\_Aм**Lq3wx7==qðgac\/Qmb|VaWhcZF})Ez' ha1Hkz~ ?Q/^MUja(hn^ !?8C_**aOrHTB2ku(R){ڭJ)`#6ѼX {^)D:aHCiӗF .቎F+0Q5EmV(kt1#YZ_T)hOXic^>\fț֯e|,XYZ|(.Ud{Eb֏|z%;Ӥ:)EzZ7ufL.!6,/ĚMJ `^b'COQrJFb-}),B^]U^(s*PsՌb!eݰB_2JH_{M70nce/FaeoxրN.a2Zpl#5vKոwK{)7;kaYBc4l-I֧|oz{(6ΛupWSe3d 'M =w2cy;?͏H&1F|Ni3sDVʓqH?r N3x_V;^P` 1KYF 暻{`˦6[(Nhٖ@QS/wmri>P\EOI`r.5Ž*6f?w,^m0Q! >28=ު@̾63_}6L޿I-h67 8'O(\iM'|PLPGe&̎L|tѽKI{jݫ5k&ܒTn%SѴ=w,Ny,ua :zu/ FUo< CJWrKkuqx>W{J+c? K.o$/:q-6PyK %Tx ZF <-?J7ůpϐ|wΛ>LTo`䍔Yߍw@αkhI> ZzmqlI2\`Jnqb,M'~/ ac48 œD2vZ QyގCS :!ds;X4r 9k.#n`5J0Q-zXz 4QrX4=pnPTHC<5UZ^GN w`Mm9TuYU穢Wv_BF*tb+mA7^+hcj|IfJY=>L ܴ6_"jQL\#o`7b!}lFޝTQqQ uv;^B\! I"=9\W|zh|:;۩2WomdU/RN[|xSv@Ho( m@O`4>1>C/t(뚵2 !WQ>KICG%d2J` 0f,o\Vdl$cr7$Ƒuc^#]y!t,^Tie4^&fXJ(YZm5~0Ns ${כ`/ %JO-+%"6k7`F'og-KȱR-.k T &ؠ훬-P !x uv 8F/]SKP<-Oo;EV?b^wڒ~:o/}Sm 20-Ȕ)wPi4 "Aݜ6+m f0(ٸI5c1C~5&cڂbVWd@^E]قo[Bѻ8G̐S9ݠ05jYs\>뷊NX v?TJ~u]=#pM<(X[ ¥Zd!rx⼾RXQ窿ōF(Z; gX֍!v0 AQ*~WuZ=UPPSÐg 5"fwg 4)+"K2 $'u#mުmf! AMb3a@3< mll[ _!rYZ1\{ `EXa4pv S!l V(^gJz?<@-,ݤ >7YiXCQH*2ѡFmǻؔ1<<a,mEB{r|w拳8ǎ0!R?I ,cZ/Wcyq34tp_'Tbdgj!xaP&l_XT1Q"CSۻ]\~TGP/$w\Tc]k-q<ة#ni~{sP_xpT^ v(g ((GV9*Y.PxVq4[8tBgԏ|ei5$~bQ\h('|l̯l Cv-;]T׉*K!*[ |Z*qGtZl!FyrWd?c9QTϴ@ t FZ)Aw䞯aVneZAL18߰j= $jѣӎJNF%+G(כ+GfwÝ?pSK$p.S=2[F4)B' 6yxLð:*->$tJҳ8:kOXD%Ah⇛#C9 #GFM=wLwggc#c/-Z ]1s8ݒD*<#0Qp%i2h^w?cCA9vc(CGԮ]>{1MbSa ʤ>*xV8.Y,tVwPz0^ܣ Y€uM %.$$snfׅ,ۻOgS-<5-5GaYYs> A.A/cIQk Ky)iq1 ]=3aqC4ЊضU k~e< )M͌ 8ZoIn)DY>xBLmaU""'חw壌D:[gdb"n;˝@Ɍ]ham.Q)+LT[1VvA/ VT1L]7=rOhL/m؟Yl8m2bO֦x$AT!G8G8$<+hD E>^,3SmUѯ4Sz0`&Ξ* R; uŸ,(Nl1h*Hۼt㟏Zk,fN`/1b_6ˎaU7b0u/ >0Al$JU^$OIQ%Pa%(Ә  'K5UaKX/ tQ0fn%'e>>(|Z(ձ?1Le?W5w<@aq; kExjQ"OOam,@4>"SCLśPh1 U(wʩpdHo6uG2^M,!qQu].ד]Ira?vSB ,ĤuCs)CNI8gjNqC0 8Z7}cA$iD*0ꨒp2lVqio2ʄٌ6&HDHz#p ! vK94GIپʽE5Wz_X[dZ;ۭ'Pz%Juk>5F4:37I_!`#ٺbК?rH"϶6z^tTwE lOTˊ4x5AQt$+S\1"|Y.C~[RvvjVV-VqK|Nβ[(3#NZlü \fNA*lb㉖cI(5+UHa8[l[cU,ʳ Ϳa?ƴf[pDLlj yՇW`zkNeѲ*py/t!T<!2@dW*Qy v1 `_ujD X&wYFN'{ryy _aX]Av=\-22WuH1YS4*05 *,Fɇvy*7%ts 4uncg7{!=`9!Z崀B(:͸f)w9M&]aıq8%РWGlC Kwr=[B;uީd;eyg3:ٵ3ӡg%&ܳ@{}֎f 5wet;;")[q"2(|dOؘORel%_&!f8jFΧ\A(^0UAtEWr]u]x])+pKlrBQ͂{u}=IS[Җ4 REa* eAkliDZwFGT5~1DBxCNV²^J; ½3SjEO(Z+]#t9+jyEė ݎ 7WgaKG[GY)iKq=LCS=QͫaOue 'gMm ?Ǧ,tH S.!fWi ŎteC!`3%iEY6&5Ԅ`Bع`eCE,ON^?l$>euH!O.uڠp1#S8ֶʟ0;EKgwr}B>-G΀M/v^uL+7G2 7Z"y.fn2+sEėSqdc4oaԧw .L5I/8/]ݮ@Okز eH0ƹ|+s#><1D E֙ 5^<'dpG[?ǞA1!~?f=^eH-w;K̏z'djszȕnNC~ M= Ww+avh+x'ZP=5hޞ<L>eqd<}:20R2Ki~pUL~t1iN\8aFP.Wt!V_ȢyALrg5HQf)rC}Br/+L aBAAڐ^`˓3pj_!l3ݹތ  : o8to'68yĕ2ETb\ji%5I#w0U(|!qֺ99 fيmw_oǝТ4N$Qe)O)^79uϰZƝ8ZV3 3B8B"WZ$οk-c&-x/N+ ,v}2!'G5#4s$%`c&!4 Ĩx0:tS6 Uj5/ f"=VuK ƟagqMewIѠ YRƍܡޔ){k;k@B:SGht3w۷>SŷI2  CO:reڽ#߱>$Y [YᄱsE.ew~8IZlG7ƺl1ӯja ʁ?VrIy-ҙtS[} h\ڪ;1'ݞg kd?H*,αRW6DK$n`ON6d.ĊnXIHaX埘d:ds*'xgucԎ=_cJcDZcW‘滅\ 6ac5\l:1 > jpԛUn RIH7>Xse.ۦ'6w\l7'@9+jRcFsO13mr7"jiLfT%1#g{ Rh4D-~^/A8NA([ɃA5M}ˎ4귡ڰKZ gp*\ zxlr SÒ U(iһ_} &c3yU$ 袈Mh$K Ji+1eLx {0D~1_]KH(߿( a'yp,rzDbe]qU=8DBLMwYa:PlTwsn'glz2(z=XeVo2Q=}t9(g(XBm0͘A^tϲ{`{I.Hd]JIwΏ%@kk ]jϓM 1ރXG&߫/R (i2ٲul0ͧneu^GE ^}L1Ag餚H]Ọ 3J S]EijGN~B"GӭfjŐ?\=:] *c ;Y'Uz*V2#C{gD ln]o&ƕe*̽{v΁t|V}>\/ɯlԿB$Mʓ#9;Zzǂg<͊I/s+).,~t=8;"Pk`7KU>\ "T4ƓSkPjA2FyU8yiWq /vdq|JzaۗcHVKɯג<6ybhPyC_׼Nw"3GV bT`*Hw @Po ;hs 7b:*aݖ9'AKp&8 Pp~)@/k oۋjgKdoV3 .f񜩳L|ٔyl15bH@.LjҷgC9V1|b,.7 ܷs%K9'%;i|xKD\F=^$~1?y4!p2M8i>p9H]wtFeN9V44©KzGl8?MX3Q7?kC[͉9- 8@H6=u{fN#bYxp~6>Q"L,*G#2y_'Z~boxpbB~8'|ʖEZcbJv OuVfI 9왴և+#+? \(lTT`Ri7 S};$%d!al=z qLdlo$4fc윩.#.&ĶKok:6cIT/J,=a]NB/iJXbbXSrd7x!t ؃4~jh#%m(.QdD=CFDŃ7WURݶI D%Ut}Y^s }nͶaƦq@)}e0/)hopY[؞Sp_Ȳ'`l~VAP3W v95B5{&KB3 rYUYm̆a2KaL{u5g!Օb>Obfv)D0֨k5#< A_c_AGqNmƸTO[ǪxS<ѠCLv*cUzFdgNPg5 N^u |r_> &j| %+QP !Av,q>+/JpӴXr.QL&3RUjoΩ™gyQwi))OdS~7ςݢl\}O,R |}<~ү jS{UPpe,ҞL{xP%ymynKJ}k $%2҇bh"yڪƵɰȗM- Mч}&4\FH.l;`N=pB{xUοfFC[`ܻ271H /9:企tvac C7< 92gw³/ 8Cpzvw>1-~RrnpqQ/q黖@M]#ABN'k(.6%Q`aO{LY8„,GE R_wcn[șxC^ 3E~i!6)tàoELq?~#{L$f;pw|==]Q.4W ?ü9 kypb8wMԿN N '~B}X<Vp*Ɍ`{"hI6/KD9D'2Ny=ƘO]7RC-2i^cwC=QN喑c5>vYHp w'Jr,J2 hM^2E!Cu:5HJXAcN9b{9T`}=џ4N|eFRn˙gr/x\~؆._d4SNn{1yp 3 p"FH/oan8e|rҴki:C!t2b(.Ê=wજ3P[991=3—Qeg५X- q']:BQY WcCeF:rS`/P-۲f0*!Ugd 7f c቙n3-~JV(I'QqbaD4zXXt1BKK6!3.U= +PJ3vTJdvI5zWm3?)\±2R #l$ ^ Vlsr4@@%Ԥ!e<[@Zom[n @~Hg(ZH*^a _Bq' EH /!oа^*V}]נ <^A \*3Yb`qG?1.HH^%}E<6B g Fie}ڳ S3HuZ \@B:[U4˹pDs.`n[#,e'T!7Ibk~5s^63z*  -П:bh''!\"_1}s oL=ZtUs-u t& 񲂤51CEN}ssw-{Nù~ɦd:DZi@3~g#J>4 gmA0;tkL.‡.`4nС:zRz`מtbMEKDafaEީi+AH5IՖ5zAyz}Te$nb> m.CDqG?k"Ŋ¶Dnk/; * iK&a6䴟]LQܸGqI19E#x8~yRH">R>:Y@^MCzT ΂jڞ0́p0M"AX<-FE֝0P]c`aJu{U7kvT^:沝A_32}p}Z&_GzQ\1 D^2@%z@On"R9l_abMwUs e'O&N.)Z_z%b 5z0}J^= V+#atE*΁wJc(s-8@P}oN洵O/$+> LrWs@I93?)"]1* "yBf~]Z&OHVD{q?f 5$; FoU>急!ʥjSsSi}b؎$:*3g}YR^<Ywys׊`N5S0~]\ BAMe0X\M}ڷjƌgfS͈(.hJQ^K vݯIh/gp-mzkl\Pڢg~.vrx_@=xukᙧ* Hֶ3SOK{<&;K*p YWY3z!dM(@Ara7b:< N8G׫a"AdRՆ nx[=K92IHK`Bf63Mqɒ^e T6BH"P2$JQ<PE^?[ {xK;}hcg 3 EL`Ng:qƃ!Lذl] w^f6CSMfg;VI}gAsd.z ~NT{ xN4E!#TܪzK3 K@Г]~O>P;@4jI0X=; 6pqxQAxYdܿRlD/I&o_"Y_۔wfk:iih{ڭ3!v(yX$oLgD$Q ucr(URbTKc v6Й+YFl&:u1., m{n'!5V&nKr';Ș1ԇN8anhdЮ ˮCxu_Rܣ[$Ve3XH5!nC%fY(AL# рS N%ܥ I+]\yPf"-B{0e<=i$|WL0ݎO/xz Ö1{V,+$AyE;-+TVWspD ot>yfسH~0[PdJKc"&u;iJ1j]}h;+nԬ5JDm yQQE#܂pHæWV U 0?W?K̉C_\Cb۹&˺,JegBp  =, -;أݴe`7%BmJӳf7NQ_&Yrxx~Ex; aJcQTgՑiD*k37n|2V bc_l-Ϭ y%P_:bqpвզQQ b왘{A_/[/ؽzVJ a縉Ss|}p@E=B`*sG{^k#Yt3S8RgP/ǩ$±%Hz9.o5czdӬ‘{nV$J5nVU"fPK0pMEӾ[^`OVTxZ>%W-x:!6s H/+8,t=tF,&Z%mXmwA!b < (5Pbi2-VА$b>7 ؙ7A)ŰQٺh:d~ݷU_b^l?M&i$.,YASD1[+(r&W E$Xz4oU"|R('k2EDa-1B5 nuT]js|޼\D Y?m 9j^S Ӯ Q )-õWH>)"xPSa]q/<pvf$*uAv7E>BbmS,Gvn-Tp+5ϙA7K/I;j6uAtO~O9!h 7QV|;*w\ܿYN"gUΐu(wxm>5"H0__|RbJ6n\ҏv:Έ8G7$nDmv[p~V-S@C._gU&co2ֿ,[)u.ڰT?Ju |壟<ڼOc erc2`0Xc*EaRq:y 6h rkSFob}]/@'k:P. [UtX<DZ}*^fr5?`Aݕ+o=?"^ѡ쇾 A6*_+]909ol}\!Mg{d~~X*(aQO]B-?[>TRNd6bGǓ| 6M8iR8ɧ/sṬVwQ;^Fd*L9S"ǚ&#QSvC`>/OCΏ%S gc8ά27.kO :E屑ʋK^諾4Cdw k)9:eML:S]GLGHVRmB^y:l %wԤe.8fGK aHUͤm o cQϺB͙WngVwOr@K!|$H)j ~y$S\+L9_?ec::#ZG"X,@b9\ɃYv_HZwѩEOVVBT"ӣOD#RL9r>t ɜj5q/bí.3pQ{so YS$&l|"*4͠fijŞ[;䫘ŝzz0e!;WFbO4, 7]u="&B8T-P 2m5ht#P>uhqEKDln]i#3G5E,jCsq̆[no Fývh5{+ Np|||l@s'HrO8y\JjO#\bhkY$@<*D"m-/1|qYKhGFEwkꥱFhk#ܛHֶ~m殭A9@x&YAdL]jW19?#_aDݭ?-Cfo/[j8[Ec\bT ؀reoJLg"(+ӯr=Iz{huoO9Sv*@Y|ISd&N)7J9, B6"jMɷwArρ/fK\}CPRe1oRo Ǜ%Hvh$4F4$fxU4ȢJ< V(͆~)čzTk㇢OG)/=IfHb͛pt |j=Kz˥Rx{PJq v2 m<L,]x?s(θUWߢ9[BȘRP!CsьP48nTi smγn (!<=u W*ʝV/&, 4nPCTxF^ 8DNP&I=k blq,Q.1ukm+Eb.u3?&e{,j&F$ꋒ:!p?т&o5_AS؟ &(P`e uݏq[VA + ~MoOK et,]B^j2 `Pq̈́ pϚll=[ФrybCG] GrAe0i;0Ʊq!ŦG)΂KE`|\]rnԀ;bmG4qoސ{z fȜmcYj`[f{iz~@Oϑ^Fd )콆 3{N`TPjkF0wH4s`'plqe*H|(ItD[6b"4= | c&,j2kJT\__h{;uxW H&]e JXyڱiKA.x5\eȄRF\kۙ)1 !d:ټFy1^ k$XY,MVA{9smy,Pt!$>7{,9bp%:Hox!il#0 s Ir0fوϩ֏WRg$cV&ްso|\LNL[r[G iJ8ykP[QH_3ԉF%@z&Kqa0;pv:10+ɀlqMƏz8erZq̈́'OJN`逷h9DΧ|1n:CYdZX?ox.wZ l$/L`S U O:)TzDúVl^ɜjzy^aj7!v#Waxd޺a& r}kw&jBf'(X蝉5EnmCTֶاv>udQњHvh[$O,c[iz*܎i= V@Kč6u:Jv=Ds )tB7f) ٯpx"lK*F4)/1f1pkyIRITR>J Nъ/T,}+3pa[V}㩚G~by4:d! jxNriR JXbBd[Yя`GO+/I|ܡq~yjՈUT݄h M_K$D^?HaꩾjM#\ _ ^qςyG^6kcYW[[Ź ٚc-5&ME0tğuxin+ZfQd=6KtaDi䫘4Fkr"}FP~&qMd}=8h`{lě96?5es\.C/eo2I)jMϒiE,>G# sLeiݑgSHsc m$\>cYU%Ʀ? :üC&ua~@)]K68ezSlyȉ!o 1JQZgb=)RSSIZ4.ݿ=G#a92 1'RnAm4V# 27vTCy|:si K 1m#|TG#mP`G$B+jC:JF5OBҊArlb};"<:J d#4_>ql-;w둛ǠXHKLX(}K_[UլK AB f y!#(O'ݢ\Gj.)E< V蠥o_:N<(D'43>TgǬt;3BURN' \pnS cEn4]1Pw Hn`[pݕdb7kվl:@{w:>1*&aBMLv59"uRVBg~? `Xj"AQl1ƖA;4xԻ,csB%4Z⍩K] a'>,&-v4G{=[-&k- 5<[5eYL?*L7WN>$уM8y#\A&?z7[ЃR- IX_K {7jԕhM(Fj~ڬR+QPj 5AΫ&Am&K+3aኊq7@uHs$[/6ݟé\ woEܝ40=o">JzFxZX 7`(8:k^ t`wTzw>xd/ 2nDVH7 ϳ9#>0Ӵ\~e2v5]tKHUT@-]2ƈHfWΙ GLR,#IUNY4;ҳu u dO& aSuG[&A ,Bأ)q "Q~B^EW!Ago,y9jOA&#/kvYHYhG :}`F)jMl )xAfk2z*+*\ I )! Xw:<\9jVzV6y z.ֹmpzmzxڷ';F52dE UhfT 0,]0y!sfbVB&ʃ (N9Y(Fh!Q!xwo.CUm$!>ޓ*ke1_|"5w?sd,Q>wp:o>{OsMq>mBBb+, z"Y*A=s䮐=x|%p&9SNfbft2Œ\hWk֏[j$O 6vRa&, QtC75k }!9#]Ƒ B&G5uZ(g: :mK\D`՘c^Ժsl} Bo]va ;& ~0Ƥ #@ E*d7V>,Jú+×OA|'Z2ƷK-g:<%5Zs+[X5X_w)ZV9t#VXgR$>>Gv̔.svq_L.\ bHz_6bҡ X0͎w@!GF3t2-Q6 |\@*h19⹬VdCYYws a8o*L+ZiJ/Ғz3Vӿ,ȦGqjmP@*qJQr{Ȉ݇d_;Bs];CTuB~ݛ BT,X^H=/vHB-cn=?a+0Ę\om?eF/~JF3Tߦ% S!LoV&&F2E+mi%4RL|`k.ʍ? hJ&T90C}xuϧ|'yB㗐-O+,?i{X`أvH0)ABJ!di:5Yg:-"wn*Y@) m"`,0-j} 3{lBm2 剞nua"{5ڂU},|L.֯'cVq{va";gIj1L$VJD0#!5`BA5@ (_a%_!x=쨡04Pc0+xG9ZC&,884Q0cC' Oђ[tB6mr[ ƀIe{yt6#)<)JmT6[*`"lV` W3 b&B5JoDjRaHhZs454NGn lan#e-?%V ]pBXoxx2ūM^D%yMfIO٧< ?05'e(z;zd v׸~%WGh){;m.$nօ| BҵGX[q->+TmX?sD)**4 #XB7疘@ *ڴk$ Y%=2q;~"j ht{ojMߪ1v`$e[> 3RMNO/sVk+|M].ioFG@10;QvC `}m㰹~j:mgv&AQLۥDMR s&43WEeֹOI:l5TRJ7P]W]B*MjeW{4 ,sFo.ʝ <|ۑ>>]`Nξd8cP\} 5~\9Οˮqr;'h7y <ş#زA((!'ڧQ7nC'T*9;!؊Ē7dsq;+*cf/گY9vr FJACOGMR{ܤHt6]ْ8MOYv$b_J84]h3co8\Hh>UDU.hͭh=YO)Odn)e qyF,FOk}4ObyHH.9DFq>1D}c ]eSijm҈u+udj(UIWk7-3[R[Y"x-Mf 71 j:o-%DwKԖxvrH~E^cdHT `<8b谿AZJ?Aq[UW+q|:aI%;˺EGnZpw[fJPް J1?O__ө`1-dgKx|,D9>n/1(nc 0;q* b2K/ً]'v[v-I*Z~"tmt(#n-M@mVڢ5y&zqE0'Vr.|Y/$KFʅ 3OE٤5!Wp.2-=dreqU3>ņ%p3=WJHPuM dOaLzdSЂ -9{*A v*h ̗~ QX*l:b:9|: nyNӎT)BmI098v@ʬIfذDqVzivhM̓d0_LJs% `q"`g=$|yY<ƽ,F=3kk*rw@&'5yߓQٚwm*BgwdH幛k@ .xh#-jw ;Ϟ] ";l<ν0hfɤqb)7V,tY4gkgG|gϹ 4j-f' 2j<ϙ:%ƧSShW6~W/((HԨ-m>Pdyt.Dui`vO{A-!YȁU86稆P J 1ҹdº\4$ǧ/ҕ:].KuB9ks X[*S"b_-crFlƭT)LrovzPIwpk3)ѪC 5m:`R-^nowKm<ʥEޞ{Dٕv,=H.'fCcp4͈Vbʪ /lO(%zcYF7xƳ_)nn+8o3bwt%<8dbvD ș'(%ݼC}@v3¦d0^~i-/|;gPggJSeb0cfV9v`CP/%VA#=r7iBf?"1,;`-N%R8i$qp>x>"ؚ!NVW {XAɦ?aUr]PǷ60D $w6UMu>bt [v֠ Hiuj-R ھ4 ~̈ 5>a(4Jnh/B֬wX]T(>2[۲޳q XbEj&):%kimw4NNq D-9vˤ+lu+N=*e\'qD\sS K%LZt;K^wv8Ϗ #\Hn QN1:b$naVVX¬ _=y~B\ D8ęi-v-[X9k8_@)krHI7.J/$|?A郵#=BFc+40;&+ak2Өσ;-󳕬挺vgVN?<p(MwJs|*vSVX%s2'ǔY7X2͗hqa8ǘmD!*YTZs&n0wۨaWFq&#B):/kxE*jD(-<6>34GṊLuyB@#[гrW$쏊"~Pk*j5#lCӒ'?4pg͘#{}rR ^ @ Q"ʼn{̢|##>- ݢUy;AHZ_1#Q}kOQ$2j ɤeK:ǯ|p9tǪ LIT-O.lT>[ͽɱǯV,(*Y/38*6` j a#}Δm}JUJ~1W8()G%( 67Ѩ S3LJA^%NN7蠴_gaASk[i?^\e)LcS  nQyk_*O*(BX#Jzc܎0Pl{^gHIO~/qZ'g۝jh3Bs3cQhnĹ8jD,.b,L}"%m7(*`7Gy0W='$ͥ&ʩ| ;T2(ݼda$sMt)|s]ͯA zĸu 0\ MP-ZQ!qrII6n#{QRbrk^qWuˍio$[TRPFR1,=n6hwl&e*"GiSJ\lxX"-;nq<ɠvo)E}7dRmIcurVq[O 1^eF*9D9ic]BO$vτn5OIs0.qT?Md0;1fi* ?%Wrͨ Mi6 m PGɑ#S&xiPZV,lh$̄C$1S%tjiomde-|j%4`'ꐨͻ݁}AOBNI9N39 X S4޶R4GX3)@8B6 5.yU\3v>5co$G%1ZX9MbK2~>_8VA(hnw=DsY]C0V&6~͊DwI0KշV eOxXF?n+(TΈM|[Xf9~o ;W̄!d ~~Z)XQ ^G&R޿齃v~!E3,jD!'%Nhˁq\yM(:pƵӖ! ;+s#秖lǤ;݅,!y,i.c ]5Q7{^cQb#欔Wb9bxcʩ~&wLl"8S 1<ߵ7tÖDڭШoݚ# %|y0.@ykݓu a,BH4&۷kiV)V122_&|b9N/ 0YDYsDo|Nmg M͸& /VݍO2s<.b!O_=U(K$(!+_N'[js/$̽.DRo >/k(+'WuPG>fQdf@&;hlݯ7k(DaR8mKFg>b#. <- j4bz1\'I̒E_:dqȭ*05 ;EZhm P28~/%LADabFlx^0nZK2!*6)DЁ%G>&ވ`Cx,Ee::x?}C೯V<y|$4h-* C  T~ ".bZTgb'(T_ǁiSYKu0f{D\3d"fv"\HmW;jdCӺa;ZSE }8<:FƂldn3N-p)W<Z46qv9Em@> h f9oj &MDV1yz~&'>51*vkQQ#ťi]|jS&#lOv I}hxuu\tioCO[^X- (Cidi^Q'OE$5 Jb +?tJJRx\eSar!14G vJ{ĤອqqEȢAmo +-$"eQtFf%'_> GZ1Q,?t#1qNK.BS&E^֪o86)=4*"-P Gy.߅jJ_4y ,8O eoXelm0X-4*/Sp܎2Q)Fx_ wx-RIԲ*,}P !4Nܜb/WJoZstZϷw,R/򤥱9NT lTg['px5t2Jd!yr1F:f+OSJk!ߐXkD^;\X&Ji&^ $X4;%~ͻd =(*<8Z@.=Jƛ,"?U͛xd;Ԍ15*~CW P,yI[dœVaTl"-.^vRmNX^nyUP❒t! hNX^=<lC_^~9M͓@e}dZ7L,1kj1\nӧ9iIc< U@M;퟾KoPjb[_/Y;9rOM %,Fi˾Je+iqAEGT>7YlGldfIsY'. Z=l/L! l#k|aGVGlOձR/xva!zŸOiMWH(6j-%84Zh- @Gs1S" @=}5tvqz,U#Ābu\ƙ*٠|/g;+iT.f+,]=ba7ly"bJzKN4MuJ](P[gt>rƧf 3Lj5 *-?LKa32wp_v"c]hԭbߎA휽V4y!Bu*L ޭ|8ޞsJJBh%] ηroi M[πG|n">-԰ xISlfCrWI-BzxZ9~N)t46mvX%w,|[B1%`WlD@SM+.GA]3aC-"b ]⟑QILVƔG :&WC&>thEh<;WF5'Q0'gxcn ]cƛO&E q/}뱹9 G?eRCI !TzFi!bF?}[R;!c- i2 NMZAzx>ka+i1.mvA-KIx_n Sp/$a'JNMg@'9քMȤ7M5]tv!]=}i;%T(4GJ~|5٦f`7~G'%r'\mbe{=hmrI·Y@ "\ ۚq;Fnͣ4$>ȱ( w:Ԧ|҉>fˍUf^=l2!! ^vwyf7ΥMc,NϚ' j㧖.!0ح;֯KY{^y+n+,{?+6hOFŋ4}qj%I[$Kn8pWԮS=H^ ma~> YFISR [NI^ 7ht_TMK+lgzfY;iÙKfߒ  ̸F9Lͺ:pd( F5<{g^nJ6Qò(f@?MU :e]#pDH6 臬3F^G䆟-O#úy-Z~'EV~|<T px!*EZb:!תcL> XHuE*pסj;;bN㚮6PBu3 ([fiCG OSC 8߁i/ggw2 '0?{`t",ZʖigXiЖ6Nm}'ኾ~vn`$&L&_\",!B #ϔ4<1C/NzX#x냗؈l'ςdiF'{2ibb>Y(@.HX Aaī|MD_D]d.Ǵ:nϱo?4E:':k;7[~tcVxmFqZaxвIia[~\Qqa LVc(~z{7a[D=XI"j( ⧤t{l#R?Cq0g+Owr-eX9@d]\ߍz, CJF+r ;@2 bj~tډ`Ǻ1Bbxd+4 y)>Cѣ A/H15N3tF^ʨN5 f,` /T2Udi:仳[7%)D3V5H7q"@, S}2Rڿ,C,LɡXLy:Ją?(ڑ¤e>9RW{h=-G jnGdn"u@8x>FC&v@"D>} w8yTĚbB4Xg\)Q@G'T|9 4% %]f5j$Co!Dn%NO**XKn0?=r@t~Czɔ{6X2`&'9U!2̇_+XpTEV=>H^ך$h*vW Z<^O=J`j6kِIٛ:;Ƶs<_EßhTl<ܿ%U4Y|VK'JzbV$>{y7l#$eMES^M }.^#=_hozT\}ϻ_)`C.|,wԐ4-ͱdg`!Z.Ѩ9NNvA^LLdpb JL_T3УiWܦ/]@G x*ڏf~ƒA+ik񅕰{ py|G;$ Xw>` 3ƹű7s@#ڇ:fA#%zaOW]%|[͡᫔ak2C֣X 6<UaSq6"ߖ/(lgԏٮYK/\ `˴iޮ"^isRۺ}Ubf~{{p!ڸ fOa`SOh瞈aK7LjMgc~P*>li6!!eBZsg0 c k9HȎ:'4Q^7!B1Gc+P.,<ӆxTijr$q\Ӏ=Ŵ k@eي6lE!{Z(W|KH[ g9F6PmEק3G(-oc*s2oє!JyEW8Rz*&b^;gFUG u2$jK⿒ml><;`"IM!><TZ`}BHdqV$4CeX" ʆtG7 G=s|#[^F}I&%mЬ I\>DO<; tgF6ߟ[(b1j1&8|6 >(;W r<]^2^?n EPI[ٻD5K1jVH\I;H$hgcdMڲKE p NJ1U+#PY *#șA Grb̊ {\Ձ)vR*ގ0k#qR4z6 t#/lN5.eRcS ;JG*ݓ)/Pzܿ;ݦ򊀮SHi$7ԟ2ok/`ODŽDNtnympػVK]1bu=hd1% OH]{{wcUq׻ {oLi!j<1FD}LlE.xϢ|P:zH@b( /=-ɖӄ!6т# _YKYeU+`O^ A4#0>@lU>ͥRwKkhJQs/9c2S Ӵkrfu)Z$6|87RMpt  ~LsD.@AOB"Ek}U g`I`7Qz䵾< ;X/OVd=侪-xxyKF;I#wFd\;78ơ>d\{U_icUjGQ=IE^^Z| sM+urQ:4Kz:^*"qF9UrlqelMhLPM3PswXJ ]:x 8´_ ]qv瑳 wTa H68'!OrԧF,!-XSK71xOh{ƸG $ͼy S=sb owX|^ΛvܓFLO%M%D6rj锱gnDjI>o XWVTz=P_TTBǥ >V\< % /)aРEL3_fבo^} !M$]~aW p~OzV[z_+ʞ«uyĬUVSh˥S Q['zF0YAȂ`9KT~7ř5U(eʚJ<&]jYGrU#<~{ږ1x rT$:K~NtŸBa1`b\N]g {RB&=1o:kFq~r#MAzZR+g ďL*79|dKW(T uʋ[Ǘ#wʼ"LoR,K tIL ,;oݒE ^ޟ<->2gXy].,&#t1& _dN:68[u& F|,@o\ib8ฎu`H^' sxNHdPƯ? ;we?NrBo8PER$ d|yyk+ՓXƒY [%\% z3Qub͐iZeJ5.څ GH$%5ۙ@_(#^ݭ >mK= 5ÃУ**\Ǽ߰NIA5ǽ*սgn'Y'Nx3#:ae(/; {DJ}}k>b?q.VbT.^4Ͷ]E ?dwׅaLL4-z1"QX By|$INa]Ch,e/4lG/JK*0ڻ( Eh`]HD,qpPj.C{ub[@AF9u:c !7 k2?Tw"F)Xך:Y XgWv%|ُXZѺ| !kT-$Kx$Oٴ'C5uס(_ a@fpz5&`KF>}z}ݥh A\Z;sA@bV鑒՚JM]qԙ;Vbqs`ކpOn*"eYqㆅ'^6,0&\{j4莏Y^k]Mx>ݍX!nՎ^eeC:1Uu,>O JRnzDw,eq/Y]G"D9h7S7%5ӭs]?tL~lL"O󺅯p-UuC5؇R |f/ے|/zR׈#3_s !%n,pQdͭk] 񺂝@`g+cl%Ų*/ $$ 6' xJL3%F .Hw>Ң W zhV3mޏFEyB3-YXNhR bNLVEu/QŒHSaRbWKB/| V R0咼 { u8BHzQ~aQ2B~XdcYYvR d9\nu$v NnbBIp$넲D@BE=4nlȷy?pdEɶlKNK5B;rTd'xՀElb6q`Z.SeD@R : ۲Pr ΨAW\ŧdF+2 ᇍ8v0"Yo:B!ڢY4s#?;F.ŐH/0\UJh'ʵL:r,My7t\k1Ȍ=wꛁ\>>X\o.\膜$=눷pA`Bbks ]AEhx9.{>Xɕ-I^GWZһRpuI[ԘёSK!웸~\5+v{taxofWYeUot(:I[ jȓ+0"^>S1_:޸M5ul2 Vu4:  @iN(gaqF] k:z zeTct'i62Hώ̿=n eƕ'Dۏ)uX{bDEar!ոFB}-c.X&mgLeMS _~O!3JJ`ge (G?O! 4wmT<'BuQ$ 4Y$mw*tm?vUKI֞FGœ% ?grQ!OА7 =h~-W ݯ3%Jekh!kǹfe|Vxg߹O5胀"IeuQT]2-Ɍ\۩ܐz$snl&Aʘ7E f:u*Bsx:1lߟo$hs|J?Y}` zn\R oXEa|_۬Y˯B%QwcByR)-n rKnn# QKX^pN [m{J6+_7[[i!nUcuxWY}DZUn@anQŰrpqF6ң*Y&|2* =7nC5vNz H.W(JGjRy$>Z*^ 6ZTU:rEâ-5, QZqȱyA𒴴9"~F /;kJ6jn5Wmϒc6^/ib֛l%]Ұɇ\XVǯ&Y;P|vF qX 䅭/"HZ Kb> CSz$fPV0.уeMC:/c?q |L=/ydXZ @jSf^{G'r|q#_mx8AqsxcO" t.uWK#!!0 EJM4 9ʆU]y-ISv9u-q2pL\[U6~fdHdn:LA!j|~$ʾIOSܩ "fYc6@^M-B 2F>ETo&qXgDc2)礀-WR_1Dz"OuOɛj1 s`JŽWih)%Q Ay CCguߦA41[E^KiNILG(% 1\ӧA)C0ELrmM@aOn4ltg!"BCus')c3+Ua2̣gw[9@3V7UX۔ a@kFN~rhs н$Rp۱A!9w 1~؅2V{߂E_lê LpN3E1vp;hD9*5[bp MCjdBs ;6. z@b`EtBs) WK-psl;)q6X%vFÈXl+ 7[D$d;X +qsFz `kV:It-=^$HP:*X R`|:9<p~ RA'w4tRAp/3X"f9O"*o8=x(Ziuֱ[ؙ^Y_ rЄ$Xb+[uٞ8~o6bCߟ@<ĨכMec*W.@c?>+4ɌyA@ s;$T㐽X;iK5E lV(CϜS51F™}6:guJ#," o.bҊ[qU3 X)`g$?9+_jZLԴ(6<|e1%CDc#=T^0*&PyTUk-E _҈iU3 1;۝dNXAU*%3sr^З.,cf 5ch&{fo GQ0>g.?ϕ[kQL#RNkLEng&"Jyv4:(hoє(Ry1\3VLwF0-:o~oGݓn:ȼ>reF t;dǫ˜rT&y 4psSA َ:1 i[@":TCTPMy $QchCuLC ~``rHjs2m``:T\x7sh.X΃VMŜoQҢtQ60*T?= TSRqkD >jl~(VS%0?c3s6WX6P =6S+Dv9|\w̩fQA:VL$8/zdgpƋA^`đL Ƣ|ֳR>n%J@Rz1GT6oz^!\ ϳ2gCauwf'rffV~@-`dx&Rdu"Lhݻ~]0e<ȇ_оv=!qX@rD;d~ݜt8_d|*/ai?m;e.mR:70}Vy> FۍW4 x~ )lZN *[ȶ֟h]uiU_F@Tg ;ԏrubrQA҅X wkǠB!3uKpޥ!MsONUNH"sRi;xe\ J\ZqKwT}})"gfp>}úĿs d q}x .u4$qH%H3#u@R -K-Ƥ t5f{'&m9!d N#D !mY="c7k6.CpPȩ\#U'Kk []fu>mDˆ+x{k 9z㽐~..ߖ=l8{{LduIt=eI'`W(.WqcJ}_m˗}>9􌔫XNd?=hCZgᡊ# ϩovrm!-!IMRZu:=`ZE#8!ds4w̩tlJ4XfܨJhݙg1p(1,=bfMpj'6Ű@9T# =TANJZބj ,)9 8!)[qPv ϊLњơĵ}GscɂBK1AI`,bOqOhItStMzwo 1Ot&z֘,U+FQurAJ/<&h\7G(-5S{꺇]BnjG-߹ x<$;iGq>ӀwUōTY-h\Wc,N7CrXIsh(>G];8ZOMk]:i&FjHl;EvvgGA6^InΧ5AX`gфr.g#fN3Q:1R VQ3dh+bl|}L71!;N{?i)n%_ߗR  Iى>Y?mA:Ri`FQ_pHηˇlxA<-u-Bl}n 2SL FPP8Ȁ>1n.yY_](C#edaJÇvi ߘ &{ۂ +2H!택 m|4fy`*"؛{{@`,XE'eQ7td؛߹:{Y5O6TojxGM:ji¶ؼX(C5V0\FŗEC }|UXMg(n۫\3$@OOrʉJ$f+bIUoX\żH"~yUҿ=ǹǕĺ^F_[ H'7e:r:!yϷ!Ph]C\U!]9mrM:d^c* ⑇)!<KA8ٚX#ɼDq\E'3הEe$\Lex _*z?<֐BGLZ2нۡ.hHpP-tGo+<^Gs)NO(#v0]n\M)ʓEB{E=5l4ղ:U0͋`͙^5WYǩkN]{Z204DZGezp??@%w^UPVa[\_= p7 :QB~0Iuk[c՛q߭ Pcqd-0qDlMZxKfԱR1̊K+Y.2d^l{%ݙJ~5g#sde\y6p4Q|4sK.6Iҽe+fDɌV87_Ψ]]k֘KR*2ɔ򃰌z@w:m.mJCL<}XD7iHR#\q̀=?lJG!' QԐA8|.sJEJ|LSg z-f'AdGY s"ɩ+Ceg^=V5$GB>qs!/L}^Huz); JNz_:*Cҽ^мPLyu=+x*$EܿP *G\$o4wJvSnʍM_x;,2\n#$a畭fojld O%)e):#RU uf<#7?F>`}#nѾy 1_7MMk:2A|B<%_</F=&-hu}2S:uZ}{/x3FzAJ@[s-|sLwX͘ 51s ՂC#V c=9|ZЉ>`E wԎ+8joWSe0OC8N٨SK2YL0`f*F掌h:ْ#Y?,r Xwhێ#b(dk.T5|)~Irf@P !0ͤZ|4?)3Aw[]}8)PI2pidžu xC]P @6OVo6+ݲ>.&LKz<~KfǞ\|sς%Aљ"ot0ʨ[ҁ-Ͳ]lp'r^ef%eU3p:*̈%zN`NAܲkB\9=+Y_/>G8K=Dnd 0Iw9bm<}鑟:v WٹwJH;_3A ?}9vW[OxqzlSbR+VͰj-f:598uNi=DߘT-4[j?BaoAVvt08z\T\dn:j0G0;Z+'Cp9}HVcɧ`x\6N_`wD)I=kڥa`c߃ AW@a[Q7AܬFb#gʯ~g./YU'g}.y%da> @\_ֺpNc)R/gko~>d }Zg8!6yxIxoa_V56iN>m*wa(Au_:i^%Bm$ŵAqe:ȳ0ӓȺ_!B ֝ *5ƙ <71ApVnP&Ɩcua:c02`U/-5~ļ{b*'Ѵit}JE.i1I.K4ԵLO|wsqO\17+ᅫ% ghVO:7Ɠ3H.#[їKzm)ģM"g*f،k0}Cme a\= |aOFbrΘZ铛J +cxᯋXfg ̱:N˚Au7-h"e{D.G J_/pZO۟LE%ˣfHx\I +a>H4m.%⦄ƻ-bOrQ +2u+cFb82L-0yl'âa3h|= 5N]{f$ ޚ{:ͰP(EIF{[lo/y㞶!`4N^; Lz0zgaZn!v8grlHh +͐Ǯ>Y@ Rld Xg~1~M5!=pX!֐pQ&syM|vG#tD{%O` *t" _mtjrRpe͔xWnP3$ϣu+Sl˥E:-ۭ[}3jMq'YJ6v+ʍm,(ٽ^'j%DvgN"a^=,/$ZE@i~y"[19̀1T]e\>7T g<sp.a.-;vCgcsXf?JeE;ᐲ:؈_<:Txub2Яy %ȩm o1_ 3Lx2f%2\A꣺*\,N8Ւ:oli:W<%Q϶l5-sB=luu윔; v Ca$akH4St32oReebc!EԶ=(q̜fjqjE'a١_/>$)=fde 0s ѢaT=PP2B"^ * BBaur h_[+}Iު+y@K1F;_iţ9MoI{$k:%5١pQ.K&fcijVe4"z!<{_o(S3LQ Ɋ|R5R?Dܞ3H |l>/$!p5FM5bc cUNbb" XR/t=K ن*ax8(V4>/۱HOB/}? ,0I9jogj2}4.F;^2sm.M J֮!(r$,q@oeQ >ӼtJ0f+ǠcfQgE,ф{4bL[v1Rpo6%D x2WRx_xK`=P36zSVQF)xq~xaz$^hI3Ђ MυS.˗lF[⭖pxkJ!G-$iA\x' 2˓˲f|DE$x@Z4;02E5(ų?+jB*g[lFR\^_FQm|߆2[>ngxYsI3qTt-HJ?x5t$in:mN@IƢZ~ݹcK T, b:gW5r#ؐI/u["mENHJ)ؘp̸m8^˗<4MKXO43c25g]QL@=Vnc47zG {U"Q35OxL^.q -AzŸ$l#y73_}%k";`YV 0>Aվ 4!I 59I;l3;wۙt]5bU0.ꁟ#l+}$}Nㅛ  nSQ~Am;30z e KDpٙ!]WDu(!2Bx?KhH׶c,IO!"I-njoko7 .Wsߋ7ݞr܀-8>WE%z-ÿ#0-M;a+4\))sg3!at_PAu6c]avbe? $dBC[bY'jr1+zxA _ѽkH) 3of DEI+!IÁd}1rqaFR<^͙ q¸o$ )^':iGtjMv4ʢЁ[ GmBU-~flboV mePQ!Ξ$Xˋi 2^7Ńm:1G 1RYq,n83==p;ƙ6_$1)E<;BJ(Q5 r80d|)5/E0#*vUG͏qSE,(3vb+7~5n, ] *qmB[3ҩWp%¸0,nF<|))b׹z4-n$J^McpF XǼ,BzPAZ)W5=@G ն:1̯bk{nߤn Gsۜm0CJaaq!X$jbnb7⼽g}[ qKW$u4N>| g9;kvȎj}7l9Ią͆PgiRO@ٸ^6(lGzԪ|zEb$ ?rd_/Tt ZDנ:s~5Zߤ`V7D2$sp7"3%!xV:MIM`&ӡrsiaytŤ2$?xV?(V?PIA $0xwk,+I.\G!Y^Y'>17. (o{OsE ܗ!T͵b#?9R1WSWNZ?T5)4'sjwc׎aF`();뾝VszьϽfJZYWsuEs|O2%]q>i(J] Peb.-jΙ;&\X"I|Fxqb4+S/'eu.lG[CEI8 Q gb(u2@L6G=WQnr$5X[Њ> j˱`Rgsyʗ|c/={*^@x-߹" 4]ة,֓ϖ:.B,fl,wmb/^FZV6/9dVHƵ9VVW :NE֖3Z{0m+CL޳Tj1.D֝聐.۩\Iw tı!/ K#>c2r;at^x,(4h b&6(fȬŅZE/$[߀=\Wָ_+5h{J׾]vO7!&bʵ+Dhrʑ;MW7k֏ iՉJUaِ3h`Sϋxv&ˑXꇥ υM Z] ʼn@BId ^M_=j˶TOvQj\84F^IP nmEL!אzm=dv˚n#ģ-L~}O]us{ݜ]ş'0>^8g#BH=cژ#$DrǾ;áV!eKMJ>^cϞŶBPxtbVХ?FPt3R.In[ws .oT(JKob؄-n$ IΫiôtrfJ{nG3CHP~(REF3|T>jb'ä<([i.mY[unpH4[_Z~7Q3LfXlYO!QZs>ua}{G!OHP|91YXGK繑C +;R/%qi#,};Bl8o1xc!}ҽ[Y0aǑۯS{vB֠1-BԧŠ_IsϳXՂgb=-;@}SyےHȇpvI ;{aP8ATʷ- <3} Kc+L6DAchiacMP*V;>^[Cvnc%m&J񭵀c>暧>$r|┼}=t.x{؞nxHLM'^6H' I/mMlGŷ+ 7nӑ&i |)ֽ4c3L!?~ٕ5^|uE7/# NkE=ίVcS @ EPU眻J죖z;y7+Q^⛟iükRV" р WXNw6"5v| nD1~ՂQRk(Kp G Z/>OŦ~p:Lb<e&eT$AE 6]Gj ļgǕ=-y~ K\sYhȐ@E{%0)_"vnզ֍O}OvaES)"s xҩ#l+OxVBE\TwWܑw1ƒ^뚭QD, _L*˗G@!*ÔdյX1XddJb0s5CϬlV[jq6(нWLO:آN8bXb. $5__o=K^KѨwϻ*D[xNa)I+ [bc,HWp8JǸ9{~\iqU9u+Q`_Y-I䱒{Q-cR{pYrK!7ï?0v]Jtv]m.Q4u3MzaL(z%XSSil~^aeXadل~]]Ng)ѺડO*"<2YpW{)H#Եē|tQ'N>`y>$\c}xso2<)q!x]& eUh4(hބ [u+(1Z%/|:ErWu O 3c jBv3mn94l _G aؗ/|~U BQP/vb8_^h3LJCRt~]fL Rf5nI:k9ff^E uɐGMDD2D_O0@rǎa:raVX2UNy?lJ}O{ +6V,ҨhUYVδѶ`z}PԷ&LoS &$goLJӫB%Bwr  vLEZ |zo/ (+;VlrCP>v;c2D6(/C Ih~͟VLbExwD1}at/asaxOn;RmCb*F,_A}6GպEPǓ2^2tDS1#$o[Yqc-zܽ:XsWs% *\3b9I> QCemOmZ%$`cǔe XfxhSSKwe͛60PwrV$@Aqr9 ʨ_E|Rזm‚ CV28w lX-ӇP^BgOTI\),%3L,+0t1V  ¨}M7lUc |s :*]ش?L܏\xpu iJrvzҩ>$;\HSl_:%˱%R*WIYv5sy ҺQ; @*\{ WCIJ*fuS1Ӱwl"TmŭĄ_=%MZP36fAGI-6+e$\HwV!3k*C7yl[w} 1UH ӣb$5sa }:rkN)礰3+x|r2gpm ^A-/RhZK)?x?*w6 O3,iI7-`@l^6 \抁DN})(]`&ȷ ,o^n?CbӪc#̾߸zkU`m͙Qedba`vSኻGfӛ>s6)u@ O`o _()@= ;n6ա = 6=LRqvDvsJjF͗*\/W:9ōl Eޣy0!d7O}t)Ws^C%h=ݚ-Cu}}g~|]Q!XVՓQo,UWInJ(,Α5K9 }mF|' d#ձo_LY@Xwυx`XYtG„e'W`@t.۝-aa]n20CjM! aGMX3!lwxq2XQ91{}L_RWTC#mVJt4V%kYRSL{M"J綫Pր3jewY[/,.\t4 ξ?ts$ȬcFxM?Ye>fP-:Qz_4^D|pS@B*h3ƀ^ ^G G By9\EC9w1=cʠB= c36(7X{i* (Z5(?2n*0,P-$-[`Ե*:UpJa;k\Rَe" `0D!s5 ^E{E,aF|nܕIfs VIp7 s'Mx 9~L-)EhP)b)u^{\)͎ZQFe-ztHgC5~W&l\c,Vҫ@S@^xo & "|mmJ"šdƷ(`&~tH&38Ge@geo#bFؚXVl>ݻn/,]et>)3')k*ce\g&?K/JL^zo%tN)~g@?b] DZűLP+we0NGɰ61k= NIJ9~X 8sP%xR, w)T|xTW"Qza%38+#\z~JsKT=x6%Skr)K"w2B?q婏,*:Rt:-zK㦼)\r0٬\2կT3-Ys3Roɯ>89c>6FNw ϖuĈ^Q- b!N(XhQ^0IޚC&DzH{sf(ܦvAoۃKzݦ7>]/–x-l!)zGZdbi1OQG'yiN2\~j!^J\l$T=HWMfl!6;-e#R3e)$J-=}jLg=bޕƁBBʌasrZ,\#t`~4U4\)FBN&*\F~ f=t{V70 JݦR&@(DŽ Ɂ 0^Vٖ.19^P4CS|L  Io3yԞ`fy $3b+qŝeBtk*q-N.3dGfL9-u)$ZXp̽')+29ŻN\[GPo ٗy D+uy[ ҉;99yӚ⧂f$=,x:{Gn52&&*o'}n ( C}n,]̈́ g縎& ¤br'ޡz E^fRe=X=.;b(8F._l(WYj҇Bt6EY>EY))geQ,qT(ϝ 0l:ɵG$oj2.!uvt3W[e=Uf/Lp Ȉzo5yV5_Juuk^ogE %t?*n[Vt0q. ,La{\DG3Sy^m{gU :mDDϜ%wױ@h_T @t_ @2 (bc~`?\y,R W؝|XC+ً y u"Je;Xv^D鑻zaeV]rHƖ0R03JAt߽\ItΙfQ`f3sŮE{xNv쿐`@1jmfq5fx$ON:B;BM34~FM朗7fi31hZYyԚ Z@'FoneY]b[JCd rr<> rsm5pjloRYPs$Jq>||%uj٬8sW_l`>Xy:3iOYN1ffXC$\CF;yBg~ϱ$ljDVf?ic7$6m [)U-/;!.xՖӹ+ t'dŨ̓ qxOO>%ϦK+o> W#m)[uF:odLf*qr2͊/Wl O/PeMl({B ؞w!2 ;@ r=hhE?#ǝ uUS,#-f?W ~6ryu#k:LYz: $E>4:.Pq޲ GaISG*B( Hvݹ}?~_l)<]S ?%rE;ۿ_"&،QjNPH' |wιh:;@?@.]}=uY炽~1U4@ZCK&!7 _S FoB\ŗrLuc+e P!LZt gPv8ސ Ev$vݜ!d(Bg6z.Ƙ@S^ @zȸ:WX#G"r"9JQi4--)e#Ij30k{嚰]aY2,z)_pE/r}z G["tiUf"_9a#L\WMQ*.)NP9'p2Wg4J0NэL^nG| -a6>KV*WP(ԇyf{1 ~I7' r۟˨+SVx+uB :Q[]C!QX%t *;à|<9xfOaosξZ&([#La?l=2}jj^EBnwzfh6'0>\r3KF".^1),IŌWq.D|pn%ԀaZ f}LW9R\2 dxvotf28k)gFLqe);|O1h" Du(b8wSS>A{%1kqf(~* |"I%I]4|z8 %b>,53hv+uI6Pv|],vCdŎw>v+:KaiQUnMKۖLqC֐bL?W "| ^ QGƝRWU% ?7ЊY*QtNoP".t3vcʅTcno_7#f݂Lz$wGnXg%$Y:7eR C7(d0)0 <B#*I*g'c`,tІ{b:4q˖Xҹ%. S(FA)1("Bkັ`VG6Zu\;Y(TًNseo{0t+"ޏ&)`SLxx^1 EZ`mK>r V?DnoQ'Zpnj2J+`Yvi'IeX壡, uYnp2`bm7d.,$&ս/Aa:WX3 +똫);g#(+;-:!+G"k3vj=Y B;q"ڃ?fIKozRLOITznMJ,PJk&j%_OsF<+%Jh 4|$OdەT1 ߟ)L9+=8~zG9ݮFlcBU٥b8c4Q9;&ZN8^ln'#@vjڧkb1'0E@. o|\GԆ)|^@Jl^X~tXē6tͅP" L2YN{BX֠8Y%^n߯'Tt [;&w 2 a^]LԏQvݠ|IQH-EȄ~chw tcg%AS mzv6A=5* :&Y{d @Z6Sɣ7˿&v"\Ƈb;6Qa"IP"րW]Hk;cET~1jѠv&z a.&Bj!a@mSF"eN~zYU|УЋXkvGRօ(:R<"JAj - oT~~ ƙp6.$t"E&,OA*BiiUtޕ9!V@m [h!"]0kO6Wka%%EMsԕ-Ucfժ2bB㚙 L^L>BA^Ba}clr5@hsg'bۜ?߮uk3B*R\@dgygIMQ_mR4aAcѐ7D+[3qv ފΩDHh$j(126yw&8@ ^ӷn 芌GiƵ [MÿQ%L jڇޱt)KRcI1|%)G`6~j6$?`QSo~3֘ܪW9_T-_VU vU숯e*V8hKAV[qP}ZۥsR 4Gdzـ(/; ˲bѵ!(?LO~ Ί@Q@SqTVhMn2oV4Tp~CFpDpMM_P'{{Wd^a|[}? ?'sxoqdE൲_㴝a}9AJH.c5 9YtF \__sшѺsH@6EW@'1{Y*{aqs $FqȞv]~g0년R5/0aГC`[eY9JԕiƝ$ ]tfiPxr9W"a9͉f.4BRMܓM%^."FBۼ Me3{JMi{G2O |Q\oĸ4RsV*neo$bj㙽92ِp1 1&vG\L1̆ tGNr\Gf B5Ui  8meHam`_2~LG_88ȋ|0V qkOI% ^gEuQڊF]؁hbMvlDL37LNUH} q S(V^oJY:t݌ xXSW3R+P@_͑)'kOߜwE}ru}/~Y~D (ᰊ(A9MW7˙K[xڒl/@YJtQ',1""1N 1=vU{<TQM\()bNcI?T݂KWjL_lKL!Z^]ota.W@ AB&6A;u'8K>pt̸GSx^_t|oKPސ "숏oS|!HKO uӹwLO TMf؁%䴪9ӠSV Kyd/-eOT2C?/oUob/2R~47nzZ8MQs1-_4LUj)=˨Nu::,XrYƥGKc6=PO\Jz+ !@kA(DA/;{}mƲdLVN3 [Qz6(6:I"!PuH*va"rqGY=.ߴ| ĦYLD-w)XlN C8x212/"0vV +ƀ;N9vf84i`B%n㸞7u夎idob+9XH+,VaChtS7Q#,#Z^G+~ m敇.&DzLdrF~s3֢q~ɇ4FKH\xxB>l>”?5.|no%tLmiӍ%@a30A`dwcFm_K<&σG(vcr4"x[IZڟu/jDJfб88>c[P⏙4?W<K{*Cf֔FQoJ0+a!ЖqۮS!!dsCOLswDfC<ۦmߝ% */ ivz֮(mV0?Rjѥ ̕W1RJOv{?i= bL60sr"Du4XKDw!RՑDV8I(3.:h }Ue9蛮XVRiCǥ=߄89ļ*Tꤶ!ՄDCC5v)ڙrx3z=:2(FIW阪P %y*}bܢo| ^ *P7|aYv(k4)ܯ<^|EI/ELز St7 nm!UYՉ/ 2Q%pR|,Q`!حYiDJo Y{N75ҷ,bʀM>Ȉ`jq*Y>"YB; M Zft#U+w\DN}1jEmSEEA8 J1GrB8hۏC+m筜қ7'E;R|=@I \BHgt9/e%Oo;λ}_ڃ/Q [Hl]TބLr&iuoTC!f>1..LF*Fo6Y;Ʌy@O [m2,;BKXW-/긗i>H85k; ZW]x&PS(@8{3 ٶ܊)0<Ȭm*cՇ>=F4w# *f]EhˠmO/Dj0 ߎ~3t$f25Wkӭ|B9}\5X1^rU,/]ehRؚ@QL3.KEI6fj:_S^c?7lꢈ8ܓ#^_6 k(R'GݺF?* q]M||!דiXǨ>ɁdЇaw/.346'kj.[?6* Q 4#yFi;E5`)=?A~uwܒ`K""mc{5ar$ĥoi)DD rq"裩DžhфGjgI}zrîgUQ\wZhd֡f7 Af!#J"q-1!x3NJ?f׍J ;wNƁz)#I1k(MH:Hջ͝ȌmFYfgwq >zR%̭;#Qpp61Jb L͘}Y_X'I7JG"c-*G2  .'ȭu.ONvvJ"_#Sd~f\Ӯoڠ؝KdQ ڦX4Rģ_;aq9!(Q(@",&&L˱yZrx5] ag ^j|>ze*2elgVٔe )uyryfXFo"U}!u hxlKڅ0Υp@DfCH$ . b*'COPŕޖ9ܙfPk*™TU{.&0ݑ# !u 4o4ߜv0>bl 9Jt¹3kno1255wGu^C)<=PW+U>{=+kX޴j"k:#D mp0;RNX {=2USo qO^ᰣP W;X/A] mM3yJr[ ?[6#j8(+-inT r ͅeC-:2Ob/u<@8ӧF9T+jMRA WIf<@D:l1܉ bY֫{n8ryKO3d^ 7Eʻ=aس=AY] TeŜw|n4ԩh;+sYB%aNQIf翜7nu}Ŵ;[RF-/FjK 9c |sB :V62;:l'7<@dnܻݑa&2f ߱MQ2Z]`෱\7|:Dzi:81v>>-x>3'`:[QBc|w^E62R3>XUWϛAxJ~Tܳt'oWQJ 4X6d(Ytp . ,V8jtHe&IElS=g3,.i= ܓ|NO0O56Qq3% 30ή!ꬢbK=>E%(]B|IR[3X nca(HԾB̥SqQ$N,\yb-n[-KRtGƁUi'P̴O1ץLxo|iߋd.\~Jʖ)hI+XW\bB{j)>z[Ҩv|N9o ʔ} `&55Ax}KsZ7hb'WmYu/X} | =^^o&p lmĆBLD=Z\_p0Az"/0ء'דX]ulϥ%Y~{ .jӑu)hPҾO5W^_ #gfﬕwܴ# Q^!zNj̧usiWcy<{,eƑ&N8|o F!` p[iӧ#J8 ,Y)[&(j S[,F@ /}A{\7lc׶'me's&zYDm6G}}7˦OȬL&JJ&B&:} PY3([\JAk:u`cPIRT {ޑ`O4r wA[hN`L)7UYFocL,FNss~V(5 ~ǖ5x)~)P :T;b2Ҝ{ɶX1QAi #zq4c/h)0mg4ZN켎(1F2/\:.W)RSP!َ.d'H/0+v&SN+0@F3K,=7%;Rg#O`T.]JıEL@/>ΓDf`ͽ*09i?p7Ft ?]ZSw2tw\;'6*bSTmB.!9Mm+3:pleO !?/L*pHC_+NSaeGfn!:.̯M2eQn_o^agƾCv(:X^fNbx<#8͑M{>8Tj-ÈwƄc]VBS],r]0}H9^ʁ3s+"|X>LjXZRkΓHxQ܏6 _`ZntS _AܽK'_(첵t'w_xl۶3I#~50rP*| UڶBLi(']auɁy:_42V藼x`j}pG,mJ' kk_wROq 0qw1/2pG$!okX#E2ҦB%1DOBAbFGXKr4;N`XqϿp}#Z2ͧ17CKV Z%h#*~n ;n}È9L#%*C;t}qʫvGZwBi6Epi)Bxab,{E|!Y1aG[O ~ \P ?b;8pf࿃LmA@! <Ќ6C ]V8:I&44󋑼|B"\ H?lAݮg2RUPIhJQ7۽)hH)in/L!m#^11>}+s=9 -nZi}ːz\ϼ=#{6 CQ$_%޴@ob9tcdY;K`E(w k{* ?S+gp_ ƭB7{0Rha)*r$\2*J6F ==b6Q|^sUÜR¼ eLeU*9/<'kScQET(# K1JVZwIOrXdrь^Ϧd, V*D ɗF}a^tΙ |Z1&+Yx6 ]хfM d%/G9h A~YgamVyK4z?rA ^4݋%QqlIYXHj6 uQp܎7X#OkUam_qEͼK8"H ] jW!#Q3c7{ћprN1Ѷh B,31۰twtŧ2.LX2M/poj\9̓j5Wg1ccG惮9Ó7r@-ANG2K)>~)|OS 9.vTzA6|LE#Ġ AsJ=cL&lף$-suZV?r3릶CSJ6&/Z~~'+),`i]YM?^6puzmU.\6/zWrKCS/}AE*[٘Gǜ4Lwϲ?re'UėlG9bwNHNq`I>El'%YI?/MxO Ev/ 뻵 /ބ%^VVޏr?|ƏiGSGR)BO67L?I-o{JP18͠7'gwv$ k=HlFu;OS1'\cP4=ZoS:mVv7VAHq: <  ^` ([1{3p`[ADwk 6^FWL_S)Xo}jkN5|DHp߱ppvy39>bmߏvxę~i:(cjrtQ&@I? O7@\IGψ[L濧-.mRIw5 GYS;YRCnww1Zϕߒ,}3}HbOH`‡|/ %mHȎڤB4tw{GT dNUj%6+MK| 5ʧ^0pPt¹\;AgƣZ7!=`$-s~۽CCleiLdʂ[Ę֖ p-( YxBS ,%J'77{kWэ4WtWDe"m䙡QNVmzp|\j(S=p xtZa2P*, {T .\(+ETy+Vnwas(e iVN|,kGx*nc+k:T"fJoop{e=#k3 SZ_ ҵcNhjg)/;ޣk-o񔯓҇¸,όg6&!:z0-~iF٫`Qwa/܈,}#,1 [C`~( |^xYPX? ͝n:8!Zq{8r]AE@g(6fWʌyL~6<'򆎻˕lÊ&A¨=1U>/UJ;NY'];76Tc-3alE;dLim%sD(І;g(K v~4'cg'rp|%a4xmЊGt9RW !E7|FU[6]'‰v6y^q`o/]4zKܵ$ ؔ_ >W%$u!wVmwYc-r,5exǧ/֛AIL&v?Ԫj"MD pSE =)PAEqg_Nw=6(?R4p;6!8 O~x{} *)2gW{#鋞n=D+S[tB1io Zh@+3u*#ߑhzھ?:TY~jTpm GуC)iFi|ۙ*rAkK鄴~X0Jm'HR'C`C_DB.$'u?)EIAKQƛU1"ϳQk#1ɇxǞ묐TAtU9$UJg>Ztj8 qPz | B%RZn(IWzׄMP% ;8PI8wC䱝NE֭HGWp8Z#q8 '41ix./;hRL];G^Mǭ~zLˏ&!1M ?ʅ;#~;m;^3"BQg㏋l6O۰؝.]"A1 Vئ4l#";1g\/KGΞcPlP;ǜ|R/NpTVU})9߽a=LD)Fm zP^ʖ^ ~Quĺ0wO;aT74 %bUr+Xv.%Nr/܋+U'U \ԠX=xZK<:YIiP*pɰO'< evͶ\/w'N+_֛R3i 4c?%[7B.r!͕0A'QY,A}ǽ;/ޟa00mgW]LsϫZE6oU[vV1ik煺e;Zdv}rE|`] j OU>?ۇsocP ȁb%u*[.Bp j'/\FZI1ArHwƬp;MurpʪX9ݹ[ϐSOp/{wCnFSخta YZul=*vň 8.\vJ4->-5V "y]2$78OgqQ"J΁%NڄnIU|W\|pGLA>,Sߴ{8OxOc1JZW@\ȳ t9Mg>^R=NdK>Ynڔ`S^f2r]tlJzOA%|cX ~WG%3{MJP<)nlan!FlV/][ ߽'Ce Ƃ~m>tEU"RZzOe.RvwfeU6C$:5F]kdN[?TENi; cl2lzFjbsR><"g~X1yRchcRw-i" ܩI/(曞6uD7̔5\҈v`_u ZsDK/ΨZ;iڻOP/7zIEB{g8D1bWB56 faS FX ]&j]]Ô1.q񓧧>{VcB>+{[#es1dA~8WV̛ۜZz VcESn_RY_~^+n@p)Q+n)7 myؾpI- 8Օxt9Ԋa8,4WhwG8M?z8 gPIMV76d_;ႆK뵍%dl*=zF,hϥ|Gv/ 179N/POK|7-6:ŢWݍyjh|׌ teZ/>VBE\ng~2AeD"y3>a?&K`Wl ً|ӌ'^]OZ޶jys UjFGmdد"ㄫKI<;h}eThۄ^DMIMl>L:h9]Ыth=<֑F>?z;Z_g*4:`i#&egh 0g"%Uҷ~)1iѤY[4ZOՓ!}仌f)dJO#tЗOeXiˆXYBA&]U'ILGWqi󱥼$c箆# ~xgOv([rPΙ0sz+OrBiH~;A衄u 2h½Aͷ p I9/tWXX:csy|!֍̓WXNWRغtEr 6mL܅{@)!KD8hs_:mmyDc>"[E$ 3"b}Zm<!@,fVVɠ sK'IIkؿ@A@ϡ :a=kם.||b*QV GK@) &1 9E.5. drrIA3ik%{6-wqSd:Ҵ]nob=b\j?b§FJT$hbLPy%,؂1U܂qI'cߏ;M@6mfrDTNCl4钌hKHBt N2A T5Ksg{9m4cslq5&X5}_hKm=Ɇt#w>1=^Ր(ųd[S΍5Y%rE6?|FhjTńNpryLSe]Ʒ( rKE3kBkn.!҅631PXyMd;+9nlb.95]ye]9\{k:f0)ݤsG_7J}2rpG.iE{:5&"o^W~ ͆AR`>M[̟ZQ2^:=Sz}j?<2@pz:$I[Jbd{"Li}oa͞0 [!\gM3gW}EH1w+N'̍Y`mdi ᒟP*Ddkxgc:IfUyz:pVmqrj! QؐSLՕ[ Ü{i!ZqE#}襘Yw$ zc%rV~{]8Lk'D,$\Wcv6O@SoBXl9jG WN6sǣ-o yjʹ=gJH?:4SQ[Kvc\S+vtcY6pE(ϴSYb!Lը{YJ"cGd:f~Q$ĭc!ҭ&i&,ە{J\ۘ1h Gw!7thu\h,Й,$JLɷfB󞤚oUz]y2̨EYBntJx*wFs$pO>SC)df ү6R9p1>Fx5KUIO/DLٱhQL{riJ׾WIX@3Ex+$]WV~.JSݛ[ 1nGyv@o  ~2_E2s),%g&&cʚ\vԳ-c`vfAO,=1#m*Li1@,9[e!!/bbvLN3F_9)QQF)gGb;~L\uRq5哫Ę׸:8h"Mokq.n2o8vQrN/[3iP!! IOd01޸yVKgzttYJ\6k=gwQ.7[R Mp^]PMTI:`rV%2;]6# E2i_B24U you$'%&lǂxJ|]}2T#rM/2TW(Ӯ[ZG!m;wlKiLjD JufMJB5'Za ڭ_=5|kP>KvquӀ5E>e L_46H_3Hؐ*k+|3߰C2ihv$Bҗ?^isX{HJY!MI|&_5x6dr5WxShUJvR$EjkIRaĀmJ FCI(Aܚ_[6RW`H"#DHb^*#C\T'pvKYEibR-:|a acH!Bm_pUZ4DˢﲜTx1`tʢ`lsqd<dOl 4zh:CNn?&6Hgׅ#Aq;1Zh #r(5Ȟ>Ώ2'5bIoom_eFKb×2Gю=&߭uj Whgd}uV}F_CQ{he,E,#KP1- H{}B.l|1.e%MrTjo\t؞ Bߐ|O{/i!(!zZvS:H %@9INXr "}"\gn433ni$C0 {g)IXS Z$}3@pugl /iec۰Dla.XIBɁ<|AƩm [<6yv5+,<+ЎXIEtIYL!Զ2+Cޒe,Ď'+eقf[B p1rdjD{~FΏښ xr\̄V .ʲQXn%wײ 3`Jh-LUoTgiKEu+g4bRcP;<@\kŬ=Nvo?uH3bUi({-`ϭh+-3Z0.;8KK !&a!J{Zέ-bLu rY&+33 F;W=ta+dQ5 {?%JIl8`MN!Z*39}a;;X;;5qup{8`""}T'`MX$s|Jܫ)wx5gh8:t0O );Btau[aoHf0 c͵ S`7 TkҠ)w]'R 1ʼ~H w ?/\ѽ[HW?N"[aۗ qL8!%;8;Rd#e}^|8~|;9f :+Y"mßt;mJ''$}޿+ayT!NC`XƏ+w3]S'`Re!@9zأ'V)wG#(b!Z] c^@;;B[{0)MX n-惁-;O+%(;tH$I4GB\i{!ᓈWs&lµds̈ YC1L: KjcDsOE Bb*pƺ23M-.ZH,/s,10: =_qZ::Ug&'ҍ*`<6o*$#灲 2h-2'= f+X&r[P6>#t^h\ZPW=Y~BQrV,8;5i*;9i7B+P;.L+&xEV]0PjÖ^bVZ̮a-\njzY$1 5x C Au:҂&%u+ҝib*^Oþޙ K:̤4& YWkIk3Got=L ы@v%J @*jt}GlmE u+G?[ȟQqy&V nx/w==EN9W@@=U^d 7WȂ8}Uxu Jd[ݙT%-: jc $~ڝ4Bt^' dWK) ҆CF鳇un7yv\tƂ ".0BXS\I,Y~>g9S*47;1GFh> ؜ok0?􌃙 w!J,bƃ~D185܆|ǣ…U"qr`}N6#qv3((j!*sF#2!EKr Y~Z"pӀo:=/94..9!⎻jRjŗ8+%kFs%%7j 9Z [8L F0Y+ɘ{tOLCjW"FOM2;_|]4|ѢOu 32!SV|ύ9 =:[7q^r{Bx|~ ߟV`*<}@<|o5l ZN8OqXm^'m 'fEtH' cs) 1:YS)F_GVj*ƲܞJ& OF4ShEѻxXȄ5`=cT(thFhҦp˓u5e|qFz v^#Y^IpS+Bp͉nol( "IXҫ8Hoq:Ptp kZ OLI:g36:N Bi$ܤ4qvX#u!߳5GCXk~&3 va+̥z:xW5ET۫4kH$uX}q r}7qҏ  t :v&hH1,xEx5Wa Oo_w:ADo`ZE4F}#TVPFq0cq>UON!77#(A/Ywȇ=Un{WNn>4\>\TiXlk)(ݺ:QD|5 xMVfrG4o_sFp>zOw] >z4DN*Ϊ5ѯUYZA= xLE| M"[NsQՎ"s B lG*t(Z뀟KnIhĮ8_-.(h~|'(d$E ә-(Zh (}ܸJh~ lO4ܽb,RXFWxNVmE ;$q݈#afWT/2 𵻅I*XK.IN[o c.LR0N LͰ8nXpJX˲1P;S%` _*1Tlq.rHuӀ!k-Vbk΍[LȻv(Z68ID<74u5zz^TkL]pn(-G'7D~^(!'@H\iWO_!V7ozl:>PJ>wT j9f@oB@s&Hg';R~pحg\w^&(F&Mz$r&`8/hӺ{k),V<_=6sA vH`2VsMi %w ͓1}5.D؉YҮe029]P!ZWzWxBO%SY4~ e6"P"y {L8 A~ m[LܴKDmG= JZ%O㸅0X}(;hIf~*~L!>T ]0OvY8Hqy{j٭^zɜ#tmSBrŷڧث ?ٝ cH6ڪr? 熚[)k H0Bũ3,Rxz(i#zCI(zdieuX%}yH"d=/!#R3-z)Rz|Goϻ!s'Ƥ`/GI"-DKm;&` !laďZA^(ԴulrGDψ(oB-|M gB lN$UuV 0uaupgfM̰WG#sc(Ez2~|ĵeęDRI L0uԨ{{y,YEEf N@b PDƞU+f*<sN؏6WFʥxKrBMp!I* fL.vO{יrTa+r0pYCoI [5G3(Ea0ߏAjb"Q,eG^2>t]q%ݏJr,3/ ]ץPƵ&M5Z[@7 &8jၐ2XW߂TG dIJv łB4duj 0곦*Nz\0 yl|A{KP<w#bsfSi7pGP1I|V eMߨMx"GZhz$[ _8y 9.4gN8wTمC01 Ҡ߳ewXeIHO5(`*mL.j` {tž_2oNG}1Ƽ:K23+F"Lb<r>-vIь RzxzB3"ްdﭽrˌ(@wp"~ej`Юi{J3[J<}ٝo0v59 F(=ؼ] Ŗ, ιm7%B5*{Y{]?mM&3(zjoNţlzCM.}̯pg==qu>1#bB6p#j9U_nj(:(17$'ix[K#3s|x4!i _\T@PUXxXx{ 4 ÇM' u04)d<]*Ff<~['u 0bT3cɵāzLicS(mQSU|ZdBm8a4aՑCHFf9%;?a:X]a'PPEVɩ#mt=\Q[ N Sz\d JL\k5{^X&O4 4f^ qB~w0ZRǜd'=rhjB<˵nj_rDI<]aXWmYM5us7烱LUԢ:.[=n,+<"jYu{Kb30VԘolG7K<׿u{ }G{˜tSʁ6z!c>)d %Q" ,ln}$-@I\g}{5p@[(^q&LU&(RpϏG!b#sV<_Vh({;І~,?CJ"lsoݻFpU~ sq>U_B7j-2s$μuU[8 b(dW|, +^^>@2Ьv"s }O/-73ҟ6vIp sČj޼!EU@̔Kv5F@ֽZ]&xS!E>?9urZQȱ~.RDz\iߵxٚ D^oSXRvÓ8r@"tC$vP<\+9o:|MF/+#R]"T1˓uۓ5N|#gH{o1PT˽1G$N]l"8L2q@C  K= UZ!VF!&.p /[ PBTWX7~cd>6/_-(OtVo 1ySp @zUN:?,.hG#(fC.=RIA֏W z^uP0 U=H v$jMey}<` NgPl4Nl'x K?Gc$Sn ᦞ?#R9 _4KvnjQgƸŤPwSro=LweUKH%Cz| Jѿ.>|A`cG()m RjCn^@ﯤ'a2/7K#l|q!.x~) ~ieDU4N]}8Jqܟ!txh,:ph=k Ѩ}AG9qeO+D [YC5W=D^۞ &}=p ,iH[{I1-vUdH4lsqa 5ߙdsDbahh,ٹ!gĞa$=ga YO*z!/dW%^z`ص>YEJ0H;QJOb?2{=3MQ&`;]唬: bNЁ[5d$,zFCm(V@eT( JfmۓˇClk錕~ۣ'&􉄌"!:3sPtT(r+&m4"u? |_tUz2n0UD'?NY3'g䑺v,N/ȷi1~h(cf )ʼ&9!wO\nBFQǴݓm8 LPfܼP%A\>q*oH^(C<2q+,fպ&j]RW@ɞ)n#~~LR@eB槌'c<4Zbe72+2ng7$7s7'Z!g1CY7եaʌ:wxƚ5 2Ԕ7'8i f6 Pe>fcX^\oHʒQL\Åܓ;B~o)F;?%R;R/qNPDUk$V;ps5QL9ۅkͤ.=xbmPh킷LKE/w'H!.]dO4NjU(s]6k&@x*}?ٍkF#C 鮻XJUWG%|F@|Tg[oBC5OBH4JP/{rb yw|g8;%0kZ9TgԤ* o3TП Ew$WukB#( UiQZ1WnP?)LI=;Pcܧ /?j 6DAA $ GC]@d#nxk]HPH (S "m ­]R##7pF76vjra'(G̪m 厺??89r6F`A; ֯ X{KĖ!g/wsLUr2f.ΐ(2G PY  J•1NTM|Rj8M@kT\i-2l=ŷ2[dDG| @%.v[ЃYsOKj y#LH;z lɀQZf-isMDdfpJ˖= pz]ҌKaN'ToawPuĄe/GM08^NX5x(U rYf`tQN $-Z 8LhyzxI%z+<29Sn\XW_w ޠN%QL=ʌXS} @"Y#%n߰K齫4g! FvLZeFc(]lV;Rw]oڔ =[`* %fB¯&eh?A)$s:1:OՎG2O|eC/X1%BZn{Ǎ:E3oKof Af#FTYp28BG鞸GLD*Ns*RʲP9 qޚҧd^~gK0,|<ߑuG_o? @Yi ^! SR݋/JAZ/Q"2)1<&ERa3̒fwu-aI͝ڨZ*^ U\0:dgb%6#z̻J 2xQ%+>͖{90E/< bNzJXԪdVkJt́D$lqrCִՓ_a8 [( NEb2IG #wڝpO5 4,Y.Z$x=~E Ap앏9`!4-;OΝ4+.E"6\L R5^v懘f).(3/܆`jax%xts68=ϓ/t$=$*ȈCK6WB1iT@  4uY\j =SM%TB$+ Ý%O&{/sM?zWI0xn|.<tV:qm%o[62FJ1T* ¢/% <*۳&ob7C&T^EfoŭޟpSxqzG"/lVXp£l)nг;yp,Rp{M䇂n"2bLFud90q$"R~5Chp3r?E<$~>o*2ggw.ψIb[o&fb1 R1N8qQC =lkFYJzgŹT ǮpA ʱ:y#U5Ԡ5-GUʘ5t7stLV|P;i kˑjHT{9x3Q%,⁨4}L 2{F >;_C.28KlY,`RЅW'?93,Z*ZD5%yec=ƅt_⺮á#< xxqtb 'J~ڵ7Ѡ hrUw)Kɥ}1I}X@p4r V`ajJ#>IHɢ(>jBd alnu\hqēvq |6NPhIl8G\FD喇+ ŕ݂o)&MZ7{/R5蘾g@yC@1_8/}V8b_Z1Sm 8^o$~/&Đz'3D [/iRsX:92 D̼_V<: !\yYЧiOhKO.ӿ!~$/UMa>Rat'?*jdxucosA;tVًg-ۨ,x >5TK8"i4ϗ%]|RrDo(2M .ױ[.rp)Y%<r߷9-}luTf>f#A1>9B)K9Qb1!?1t@IJǝv,$ug-k~ג)L"py,6UXz8xpb?(ϧ&w'şZGgGaKNj\K^xqDzgIS;IK6o]kym^#%',aQfT9:l q7Sb'̖FzФd4VCQ0Dx!q frV d*`0ewl2&Ilr0[Pcܽ9JҎ# '9`y֎alˍ#2A"ӮMx6 (|u92GzvA$8wQajϛeȪE@iX$]CQssY_MVZ|ԁo YDAs7+'};b;o,H䰇8̍LN" >=0ZҢE$rXLdEtY]-v)By6"Kq``e[Miv}Y"$PC!סG&&~azCr!x)RוAv.\Ztu ?[gfn} %y/d"AĚqpz<oVOXN@FV4LXj;WF,dLGM'h"EO -,} ] Z(B˳]Lj]bFVӣlg}#&_b;q%ҕ>8n#ZHlaLh/;JID^/eN, 6L 1̇?%mQ5{]RPX-vp97W O1] {"I[AE?|$hgD}G qwEkơP:*'O,:{^nó2܃4Tt5om z >5`p;nY4.x~Q-Z`] ʴ)L]tb9J_ dis[OT;r Vz1i\yݧlj"ۼrOcsڦU. JtnBemW+wǻnĞ[֝& v^ɆEY`Y;1 /XВ ‘fbAgVH U!&"dpI/#|9N dNã7 ,'׃NjwZTŽ,@hT[,3x;A(CI ²%Ai0,hxU/-NKG b}|`EL&)j=91cJ`7O:VC XbXiq{ڶQ)@{!׋aC&L;U~$cd!Ex*fpZ#b60+dHC ,1a$6EZNQD3A^ހLhf!V{>7fݝ Uddm<ǯ+I&|p~2l PQS'dP8Z,<$ n{@$9wȤoOMZ ԓf^^b ݋9{l1Ѿ(Y wF{ 2<'cEWk!Q {y& V^^ܶ6q$7eq9.W/E51<Ү :!<=M0ysXןcp\m%N+\_E|ge.Q!޼:8k"=o16E(GdpVfqky7_OHMS%@C-T" Ȝq0(C2k$cu KW9C,61`8=)\ٯ%iFbqx)ޚC#'DcBwCٰmOH9JA)"K>H`i [eq-FM#s1)y atR@ a8耇spJ/>߅$[ !) RÁ{|! ؼ0k(eMI4lp(iKLxAc1QH6!#}ssx":\GfNm)+L9,丌A1@Vchl1nMQi0{nMLF,f8tJW#y4O#mޟ?E3~M\kl{`j<7G!ظD W;7yj,!zޗ56oJ fLL,\閑4}g[x!W%=9;= "$ᶆc+v 3"w4<xwo` #)tKD#HhS\|C,Z/fRuѱ} Q1>j=yu7iž6Mm$eM`B"FOqk2z{r[Fs\#j9̿5\w= ɐC {ֵXFkbs* XMw;$Ľ>n3-h,A5fX]OO9sزay}WzJEO mVywN6M {M0w[g&\+kR9;9fcܼj&܏{δA}^V+8 !.|-:{otӣoݿu@xL,^`ٱ8#HA]\Bujp螮%FiRT⻩ѕ~E:W;мsA8˒,IykG;L]x?35[ 2qUɅ)A[Ko:^,#^006-#!+%>p|uX&\i H\ט*],akC2C1sE0qHʠߙ̼&_K΋YTIedpJي R!3[ d+_qHp0<.& 1eUÜ SlV(QݝI:dy`ͼYDV9%?٤#f݌ǫ:F:|P\ r}Zs[Jm~8U5>> Aб`jiK׏yF1\8szh ޠݼslajau{触6%3e䖏gSad!Zr`%mG,騣/8cÚ#DW=Qɪq0XJf$?TMD51"&Q&\X :rmOڋ+])J2Qc"Df4Iոn˸`,Tp4{k"R38}$^H6y2 #HoK_`66:` XJQ6z1ٿ‚k cC؎b `:6qʀԣ ls-Ci0! :My.rQ5p.K6̹jg^h :6ЭȵEjm0ϕn,=Ԓe}Dr[g:@=Zcd/xF8u|z"+ 6EʶxЎq:1 0}7o INd}9y-+\*Z+C),rШNe~ΞK\BѾ*k0j4#evGY{ >4Rþʘqr7?zm糇+})ٞAuO^ %^:$ZyUSh, yab=!궕:1sDzP5@VC9iX.9MiQx&+%Tl3UO(RqA\^tjds8VgQn,ۓbm^*IZ_^kG.ygYP-CHn: ˩m2l* \?,o6O:LB>FT9]TtUGP-Y1Iop`ΩH -|qD.3j" e>޹ݲ00rZ A>%qd-a'"ü(, d]"fi^$q0yPETLN~Ɂnh aT93&u!39Vatur+mp_ uT,Ox'LYd;RH(~1,h3rhVՐv=}ԷcgLm#$_YHW=ן戙7Eq^7\'&X&rSaEB6{aNs,C#;NgYO<+:DL#',S $G!(őIrA"! F*oycgϚ}Ckov`YniDzS2 L^{JҺbZEEry~*uSYnX[d Q&U\} |'Tswg-t8Py +FGӳNQ?*z 0ƈ|/Wfo8=y̚2>wbu0H"Ӓ"{_9{=,9/.z3U`. V &1820!HH.[# v`O1v*P]l!*T$bi<+5Xgɏȥ:"04z5 _u%TSӍŽ)@,mc;<$J&ʼzSB9H U`S޶#S1Ҭ!F-M7,qi_EqQ/;d;BTu<-i<a--bH20_cA:4oq<$KͼgQ@\:K4"|J1o`rMp 7j qbbi'xMf m{y@O`zti<^}en$ 5O!;ɸHnǡ;yNzU9jMM&n4Y>dhv!X&.:by e`L(%@ !+F^*zA4[rUK? B ys,-B4; 4(s*әXS4Ll*0v]i=kJ(PZ5RcT䯭qvnYUϕsx` G%;t0 m[I<Ф)k0@,uO,~z$lE%e*Aǀ v^v)J6זAoi~ XpfzYg#倡"'Ź7H <1? s~Ȱ]o|WΝSv4d 1M'!vU-JzT5Ac(/ ,asBgVl;BC&e~T ?Ę< WJ-SnZV(* |s&L(̈́Q-}Xɛ> hn66—~ q,C(˿n![t|AWbJrvO[n˾R*ɣ:X-T%|fZ=},-/=kx> S?=ϭ|~gȒM1H~ [ Ʋ}]FDq!/JKzQ=T"&h炔NUX4g4m|*REr\60[`";0%x=EY ,g̩P* >?P/DSf{ʞod˕C[}G1`Xq!H,wuf_wl%х˦DPQ^zX#2tū+P!>&2[M]mv|aϐw2*8p KL4qcz.rEH/^zՔ̡FGrH NX Wʎ80gkDY'<S4mn#uG.Bk;aCi}TAY0qvUq_9hn UU&B.J=ǧC=Tqwh~e!Z*7\E&,=ex(V՝/&9Q l6n)tQ=WB 7#f%3oH}q^8/[@, i{m^/܍i{c̫D6fXC]d]zG][C0Qiq?MXQƈܩ_=1dJC?=uEM!+@ i/zbi6$OM(`P-=M& ^W(\G (Tl~`bRQHgc/mCGx4Y֤B]VAڌhSf=V6`A7w0D",* lo}k(݆z:hw*C{nM6r6 bNXi7e'Z}w~h;JK*a¶GTghخNEïDBAi+:J tJ.ַP ~Ū [P?[!K&TWj"O{A68SCx:"•_BZvN#c[rE18Ӟ ?bNwGb S~TJ5AO @u37;GrQ:7yMH,}[|mZg1a) ItEI'X-!w!6%L ƌ(_8_MJQKb]I w6De[DF5@NV)v1ƖZp$zJ)h;q]Oodw+G`xN|@h:008q凸ƩAe+a*r؉Ft!Ŕ u2X#sz|RzY$Lr$X$ZLZ.3|K,| \#9Hb`)d܆6ܙ"X3N nf5&縋Zd.AyV>R|2csHWc&iZdzU1,T"`IGD/(طny"Kzjv\}7N㌢ {-\0?)6,c⒰&'ެۄnudj/go C)vązuv@\WRjmQFL5 . rJJ,>dO(Jy;"K ۍ.۾># b(T(q#WC~ zVF8mb:&깖Jj.ڠu\ sS])O`]h[e)aYN[\& @!5JӺ!?Kkb7(3xAHax>vlFO1~touk-f, PꏻgKR*LׄM<̧Yc BQe +%3-A!/;Uӻy2@:ݤ胀 r8pГAڤxhgIdZuđ©Of(A񿀶vzxKn.F}oΞ%+Hh{ٺfM )HZ￈ Z^>3:\g0@=/ dmD-x{B bBñ1J(fAXa^jAJ)Z06b 3_1Fyls381WEv> fkɖĘ;٠I?YE~!6; ֎^a+p'dMhmFr P^eU[Rg㥰x'&ƜF( zlR‡ڂ@xOfᐽ[V؞!G(d g55+wHAhW4GaQy94{C;$nbl7Փ|,ۧۼHPj*7uBKՄx׊+ f1[k~t56,Y$Ɣ&J,BeA?@ع Eϸq /v^v[O2F5_̶8#L,}~`J9R3o `2QhYNN8ͩL"'@.//%[̂ 6B֮bKhr}u="2/@h^ UYz$ƅl1~8#kQ2ͨuվt3vNQUWնYhCWwq]$M#Nnwh2Ā&F{"Ty*Qw-G#U|"hGi2ViבaJXGln)+U%X|}gJ>)]>9x:ePaROMC'2G4 >$"(DսZ'[X~%.|/Dch:|ttnQ#{}H)Lp*Q4)6೟6_+yOC(pPRHicD4{ 4e3es~C̑ˆxMYHXw>d ,+CtRjsPo *|u%XP70OQ9echܻ􍮅Ot{"{t$-74 $6NA䊫 n';_tN]%(jR!s}cF)X9ABɺIūi er6L2^]s.X}KA|*_hv RԞv/ú9`HX?^O2F x8aד(nӥDžM9Gə)i;PYm~D~cca?=JS"p& y*U,{y$5v!kso{ȍPY^k<$\k 7;9۝};}(*ԙ#N]u61%d )2ՅyKNM/%|beSG@ pf̆]Kt ҐѿzR$?oc t'ٌACi+AW\Qn  Pv%R^m6m3aʾhgIVQ pŃ0^\5[A/R r+Y\dnCDp_ P9! 䠺})ffxԈ?rp8)KD%Ǔ|/6EHoɄ[|rT%у1l՛DxV3hV~cP_^#wQc[>^BtiOiO׆g՞kE]D+"jE,L"O0XmcVHzճ͏XVi@MXLtvuAs1Zekif?kk`hW4 8K:"Ȕ Sd=oCsFK%N!欘xu'9ДCvإ^g;%Wl)2A1 gS/K%02 ۬ѕ]&q?F]fգ7B&ȳ+beF)!` C?@jѺǞ;ΪTP֦]rj@ǪوI#md?Z92,)(_M:Z|",|䆾wBKK 8@{| gp5~(o=B"f8囱Pko&懳~I<9ئjBD=K1s,q~4_ҝş0-ІXJl ƆOCMwgӇBۇ'zO}|@?zL LBv(9v2/UZ~.m!qgX.<$tg<11%tgfB\4ull¯;Tk 0rgi=t}Wz yWj|wYB7P4u(R#A#Vb$%+ /H<>~^b$6C Z ċf$GXC G.;.0($E;{^tq=QX6֐"Z#i2/~vuRU~HQb!M- ZY]-`F)nO[mƊqXJh%-:f*X[Zݛ_cM NYZ={"g}|>`:@^Zw[&~O)bjF3*U̼n~g#j]:?_ r?+7= *jv`С˚@BcXY(@ZݒỸ Gmsn&?bElb4òMYpɹV 6xmNJ{]!fӞDDŽ^s^v&<33W|nv(^G[lfBs_sޡmѮ}j%v8T 1ٗ}-OwCMIYgŠEP'vǕoS#8or(|*j fSpoUJ&x|h4}, ƵKs3希|s/DbW`IE,f~+fF14cns3={R3R@kB@~CYFX^A-*v{\˹)sERXC~$qBhT:: >7/JqOxhycxSُWWTp,D|of縊{ 0+W??N.{ab#ū 2H4>+;brI~G$^d:;A]cQڷ$u#g s"_MC>gMxprؓ 0ۡY2dyV] Φji1@\ѡFU=nXq2aV@ ΅b$j'O"TT*5FX?hAd{}g=BY=^Aj~D Mahpxb 3l:p~.VJ)d o8LuA"8QQ1zz,ǪB뇉ںbM @Ô .d'TgՍqx#765?’S|AE~*sG(Y^5Nnx(?K^u:~"y fm(y Y< P.T@C׸OD~F3CS|638"a33Z?P Wiu,WB'yfቄ}MAv?kS]<E{EV=𪡟7޸$$0q1{NR7(7͛+c ՉT]k:عQm'ˢLLKCWccSv yV24%I?:NO[EhHb<<*Sڟ=ָifu:4  7x9!at߄+!Mjޛꎫ9]gڜD UQXLGG][lIBs$$RoLgt2yfލ$[g 8RYivgϴ$7i֭CƎ֎QC$ȮL>ZJ={8셒qah}dpW5cfHL  c8 dhf& @:L\ldDH/DL\'e䈷L6|AX>5rxd&ڗZ[l4RlPs7Neյ x]3]*ԃANސN+3Zj7|8%;=]B;l|b#hI$wٛ Dw ;M^CQ;IwE&,! vU%ZD^EKTVzf*EbQG-0d?5:zrV׌*1^E F}mnqJ?Zf.}!)Ҹgi$Z. 1UM ^7NDdY!pEܶwi^jH4B%|N+rR䴛S?/4pΏEB7͋-0_eUH80bc 9/}n1g-O)v,Y^]\>-N,!j[}g8vcr#wMUT1gf7QFJ-GZ]#*jd\iU#¡R6MHĚ+/ԺU-f 0ȃt%,(m򷍇҆RBPBM 5)OV*_)ʷ?SddΙw3މ>4U>xqۨۃ"8QTx>#3TQp"T\ ;B8ͯW&ie<7H'ֈGl/feV9Kͧ P|7!t!Hg:1 Ё1trL1!!l)0IpR[j86l : bϑ`AT^Ho0y8Po]5U'ՠO$#2p>t7He_A8$7K[>95[]KՊ^@ |mD 0Q(drA"5t-xڈH>Ь*4MO_>Y&ZY(5eyS6PuWnDBlKZ)Isr/%猪oUo Qq9\s>m:2G QQ\kʥ]Wdo 6i/G+}sݠct-՚1y%FۓFX)_XKz5}F6Es5|hToJ*_?a2ţ^"¡FD0ՙ~~{wάroUẑCx-0Jp EC6!LZ1 4)G@y'P=[ǵ״J a+_X_&h~Ss_o8q@+}.a+V"]9( oc};ci]cW "0+83wne%$N\c W0%m0M'|x"^IC%؄g8s|(o)'!ppQZ XDmJʯaO?;g3̇eWƖyx+fgf!'t ^f>]9@ қi9V&m?{EƔFwq@'p;_6 wy'ilLv 7F*͑H.PQ=L>T݉Y2,$)ܒ%xwbխ&Z2D`e칁*|Z'_GEGou crSz|#밪@V^,ﴥQ'uҁn€kn01xifoբL'3* &:@dZX9\kƈ%lq, f)D@$jdG)?JU;u*'9̹5n9Z&QDM&+ΰ<Svb1֫YF; 9D#+PSX%@wMYMAA~" 7jOlcfռ|mt oeM!eX3Ahy98| n틕m2$O')ju:@(؏mL5ZF/Og}=n_F;5^Grpp+H6BbEu?&1cF_cİ:O[U5=nV 7~Gٸ#;?;)ҷ0BG+6V7 yw-*Ėe{%+Sb8@^=c}P9(etL\qLi} (A h8ZuirpZv3T0DػjFI*8NxYvXX0*ߍvw]HsySk@(W ;C-%>$p _2ѽN?Fu}~Sm"yoìWY4ZX`ٺi_$n ϗ ]" GUO/Z^cf;~B<Z3n6 'LIjw`f:#FsO42E@-qOcAzdŠϗpIdYWƩcűXq$*pe1vc.8ovmuϟ*W~!|=')ʛeRԝ.~[wJ;5)k t56UxTi[wNQ߫W#Su{Z\ߝ85jiʆi@9EDk-H<(JRG+W3UfuYs$4/]obBqgͧjp޼8!km/K5$&}qޝnY bGvl -]rxU 2!Ҿr[' o %0ilk=rR6f&n3Tc)]9L9fs`!>:FŞ-n}aFK\I60X-ͤ#{3Wȼ&´Uc08=&ƪ+G ~~ռG5Hܩt! 2[Psa8gG$7Tz!8#,2+Dpk&A6HzXkSr{3Oϟ͇eI&[72gHeͧ|DrpQ T$˗MfE )V?uUtfg$Έ- + fXPNye]ק[SȽ3%%-va4rw.8QtK4]9c}UeYMꖦ NJFDԈLd ,*'yjGbp*NʦqZYpnOצ[M(r3@7KV^Ik U]J#looE+SWȻ((UK##r'KjmgrvarHxf_́$ h>_%t֡VspaLjwPy=:Qp x$v< qg?;޿b]0a"%yR[C42MUV# ׽9bMlqwKl[NN,m:@-Lpˢyr(.qsBX}olZ84sX%z6eB2|}Re%@iPlMs+#m~# ̻>9㽊ȷػKbg~rIarlo|F!i 4C9OZ:ʗN:H??˪\Hbatj.g [.YmO3$2ZA΂ŰdL4.%QΜkrW07%剉@2hq"'L$.O4Ozz7M?`xġr# huӳ' ΂Hm7 H#X%=#JڻYOTg<6X-.Uv>]ubxڗrZ&|pGK=b#X$Xshׇ҇ڗY&1Jy0zi3F@sqͅԨ-{Sq =&D d|ntlrw @A;i+'N8pD䃻?!-?v+U!uϤ |As3XKɽg_ֵ+Cـ+j6acUIΨޗܹUOR2Ν4,, <31cO nBN@r~@īI>ɹ3Y1eOˋc*f uژUE 2Jdjb :̺*P'+^w(멂nZ>I9䐱L͠5y@^98CDT9zJqS& -_F|=8geklX0{bk h-d"|zMplSgŒ.ڮh(?hn8(o"ɾ+'rHE7C>fNrz&]Nk$e7 Jo?mJrZ舖[>pm@V_݂477H2*?%v| 1(`P{0áLM&DN X90>i-EHW:hO),A [W>&IP; 5Ӎ߰g#bEԉ.Q2/F A 4$tX$ׇKT9S%Z*V7/_E@ BGp/c(I9~xdkӺZ.7g2,ltʤ`PR#DJdgm gɑ+zvzؐS rzu$#ePBw}O-jYj+"&3Kxw X!hv+SVmT9G(:KPA'h;֊6.>T?bCѓRd1X;IF6C%8nI5j@wUfǠ8;)OPY˰[Q<"8%MWfĈ߈ r@Aג~<,=n>2!5N/Eo Ewxw1AQr趽6~;TvYˉĜо<+E~u*5F[˄׸5 0p>O05ȿ3&ZBuӱ1O2%2^mS/KyMqSS/6 ryR|-S$LV_CCkebS>KGõK|p`B#cU?5 ƭQOoqTg z:/R،n.Z;zMO)6!h2,ZYiK27 ]ȉEnҊ_!t)R*>Y4[h # BN:1=s >~-6pF*{.M˗"%#< &#j{#z Wnm/qm kb-H9GŘ4NodP=9D~8b,Rb+anΎ[0Q$7Ip<é;!-);j0Tyē|Vvcz9lfC|T=m+)^]>[0rJ;+;(*Z>H6`RKK'"3<4S4#;",<QljI-x5 jq CmWmVMdž2,.'8qR2 u}"߭JZxf7pSMP8,ʸ6P(M'vI,?8&H}1ݹ꬯8UO#HQ [Gl?#נ,APu/~k GXጏ*. "2./.* _ls- ؛LA.ze <:tkN{ĄH .*\6=H՗dvLܙ(Sԧ ẽЗhL,G 4 bBl Rh]r`Gc Wt^~M}ߖUiHR[QÆlsTvc=*6|IJIJ;0}W͗Ep":'@kL3:bZaޯBye֨Z~.K|%I;I+ &)RK_٨B&˱#XɺÓ{޹GZ7QGH! H!j gjo+. ݅ttT6XW\}< ExfTQNC7Ҩh¦=PјQP7i4"†7C`tۊ6S4i51e]+X;H Iڦ$zX[̎:gQ;(gQX)|ި@fE-ٖ078#jhIhG!ZmRBhq-474=زM tעY*{k$J@/Usyɑu!c2lix4TIٮe޳gWrQ@oFKYJeYeH3CLuN&O,$f6\B72D'm J{!]Z̓W0zJ=Lo"HCMN<(>dvdD|ǙI ~"X2 Zϙ y] t!}ۨeГ?ҏv}|fTM@&IzNl irQg 5(V&|L@ i᥉dCk: `*z9*t26RWEn)%BD-m]c_eUkT/P2kr CmpyPl:xoE)v P0Ց _sZ5 1L;/cbdqb+r2Щ t ԋe&m0Ifxa:E{{'ʽ;KfN?N>n_ (87*]@yjF0{ܔw]ImEʡ\1)1xVgNT !4 3K{onI\xr =ȃ ~h; 鮗˰fOj<(An9JDvl96{ȇ0:;w)X~H"\pl-QF~aB!g S%p\n YjVI}òcgĪڎǘȅmliI wF]N3eeC,entg WbkzWޅH-ljV]-Xy#O@ujGf1Bp:&O9'%[%NГxJᄆ;ғlG3wqHЩi+rVKql|!ރmN@HU:X3'9,'\[mTYyWFgddU2>=)s_v^ )h 8hSo2) 0.(€imU\>\#Y_?Z( ʺc ~? [|J> ťa?h<^0$zE,8E?P R/j4՛$ѤF׫6,՞9xHZkt|q)̥e΍qDPKO E`|8 rw|}pO%uM 2 ʭRzmuuL q_RAjg9| : ϲ /'Qdի^a$~!ߪV"8Q2&P|Z3كT,+td JD>ԯ c{b/J<,Yem={ig_sP˟+eyyP G;֝1F-oYߞKo]M$0<axJ0N&~# mG*h "q{% r«D;Oz'tٖ}Yπ.:'TGllqwu貘l|7P$?.M{4*ƽ+QնJ".}h_Wk{#2?E.S!]PVqP&t m7/lhZ\w_iXṰE'D*\#Q㳄ǰ֠],kLE>|]ځGUO,b.~sFٱ#^G١&z-]&ZN y9GT{z-oXGsrNn֣M=H=!r3>g^Ɖ$PħCO4L ~h4@-lh0]?ԙ6F|H54j> vb;?9H7ؽ㟵y4 ;fߩRx_N6;>eLr~S6h VdPQRyx P- Ϧ-I5h8C՟Ø9Զ P &aY=h, ɐ;HaGw\OO5 )ɗ׻X(\K"d Wv"4*߫>o&uXaO&vvжTm'oCGkBݙB`rIB^5v}U[+DYNN:dWg'd|4G?rr){A*M~TML_δ1mFpBF**>qF4xzze`VKB\,j)}~͵M5ہb ( çC,unha IWj{v{WΛb0Ol^`Cʓoqpb-3w>ܛ u=h .jj@Bחo]?B}YA)aVLj}84)"G/DmMcY.>d .bīUͪ L%31 0OV.97Jir8Ʒ[f)s u2$`P %yM'flA}RQ1Y 6YkC 5KwX\r֛ʑüq+$Iī,w'޽@6ȝRPXw!! stN̓|-6kUKٟҳr6? υE>_ >żhU.ma] o )zauҙa @} ؅V~ZVʸW>!FQU]&*&3B?աVM9Bx@~ҷ/]@Mn_ 6:s 2fɕJ2ߤ;#@1ly=Tg-)KS^{l;lbG)7e nnɰkH:;nQdc[JJ[;!yj~+4BڙE_͸Fx8A+&ƚP==FXeB\RjJJ[חO:E'"`Fu{y7'dĆXwo%qߋLd[([ ,Y\GV h2nfZF\fa8^"ފ[v?^E(>E?`)I2%\.p @ _X>j.w2!#{vds?. <+Sh0Q"&:VxūQehi(;y!9[Xõ; N7]nLR3sܵJ3xpsߗaR}jw:-hc<ĜMDP 6S(vՄ7=GI3dp ZCϩ#kъpZvf9M<,lXmWdǜ)$NϤI8s5|+L/ve@k0ipJ (!~ tj* BKzMf"N7|mMpdaǹblKX=d Rȕ IN%n/{`-{[n`n1ǀFeRZ# eRI:/DE,+-m !8+ɖwΗI&h"9Wj{/ull3~4FL S;܉4 {kɛII ]0nZ³6݀!<)kBSw=<4y/Ч%beyۤ@DF#"I\Z9x&枯RS}h -\i+7 vD- &94ͥk1A!R^Y6AaaNöҨWR 1P"S ?&'3lbyj%0& O5NjwuS|WމFC.2<((tpRA>-éBi/$ HAy9.~sdGӒCU3+-7"sj?@~%_ݍ$$T) J7]}*/׾I7X7A]qj5T5]#pώe9u) K%QcI1sCQʯRp3anFl^ދ8w+RAFQdF\oOqo9-[`9+*+4tKz['`6Ϩk1nrcGhW@Sn2HFkB+y/Z[ɡNqOf g76e`ԸI|ב j/7ͧ.>=@_~b/f(jܯI0+zyq3׸0K!vum_S, FsŽˀ_rN@Zp\v\`Ak0A&fֱ h| hU4:Ut_(l40ʠi([8g\͖-IɝvP#MXFŇx.k,ATLP)>B@]ϧW(|9 2L6"*)7Wy >9h46 7xP@qDŋtdE5tH(W7g<'=}Al0gɒޏk:T{2 nL##r_l }t5Dbϋwb ezw<ى%H 4HX~6 /T^(VN5&(I7rj| fo{cst,v0`IRUssW?R0 NE sZ+Py{0Ta}yxl6>j@C?,e]ޮ1F7NL-*0RlJeEn*ar)Yl ׬u[y2+2, /!kcڴ[k舱oV7Ҵ8i Vӷ>l*r;RKZAdOL9I+ʄ#rje:7ۻ^rwQe3K j 8p m_L%v1;tN!Q}^H.x?kX\#6Tu5h+|c|7@N]qխUBS532KLPRWsh 7Ɏt=>}ҁ%iU:67߰uMP @ȴ>ף;rbJᡋXS=47StU.,-UqsI=?LSrAeOsOv뢠5wrX7zǟ.W1p fyʝ^}'ݘsQl1ۜBbĠ>&K 0^#>XBvTeJw6]qх+5^d2]XOYҬ-Pk"_8JK$Ag3_C|jVoL\Dk3l~'){I'saoNBg:u.&E#9̝ܰ{$3艑m! D1ǫYVyaFs1+ARؕ9\lf! ]cSW#G)ԓ~ bMGՈ%ю#)^NlΠqA \1셶\KM܆pcaD(ktxq]9!*ssgN^Ѻ2TV;z72BQ{#<#zM?-]d҅0 I[ 5TC]dx`BUmG:r( !"?&ͨ63ʻo>v_'_J)?zfI2<\d굇x/h),R_=dIEz![R_'VJ|wFvR\pF`U1Fg9:uCeB/kZp1lǑ+ i_*ndnЪN?8D_Z}.PiMLz'(Մ6,wa*gڋ~*<yZF4,I q $[-;GL4cw=b:X[}(xmzݩ@$@^c&`v,cjVlyyKF.94!!nDjO8.VNҲ{Yu2S(p"_oq[&6T&`ۑ9gC) cX5׫:~ܚ0v%z4X]d#ō Wc ceʼ7] R)ı4d2''b\Hml%8ҴBKjG_ڞ!9 /"L \ DSV hI6l| ʵwGSjnmG%/@X2bgT/> 0G@ /`{; ^5:"l 2mQ(\ P3M_# r]}LW}\NF:m͸~ud H[,vu 52B?-wg~u0Npj 1°0 @ww [{!-b MGa04T\2l!3q-m/3̹şy^#ݮaA|4bXǢ0}ڀ-Fx䢱ړV= К;P6GUq;D }&?g&8Tgh?џL 1aRIC[M4b4¹iEJy>>-sn ΜML~T% ik m%Wy ‘ q{>7)j7)1 m \ xޕܶɀƄR1ye T4^=~ѷHsUsCk]9Vk%pϦlzGFѮ?׻W`%:YwںjUy1$GٞqOtEQ~|r)q{T'F,gE%$a_,mP(I r.0`m-Q蔜8 N}1㋄ h1ҁye!И5Rjs`$P){ܼ4TĻi_wԊC֓㤃3v5_W(|K3{( saK2SÎ,*R]IWz{2h = R>r$oGgcTXi'mv`ImtgՅz$ n%lC$Ql-6H𶏆'ڧ g?DnqBA_Y\Vr6njool'aticr/]6I"\1"՝O.)U=-Iب nlmiE߲j^Q~sK4,!n" .)5Ӗl4O;k|ٌ xeO_sNW:M]4DWΠ49Ppx.3o|;x~ -eGPQ~sUJMy+&Gٟ{CPU0?""9E Co$ x#H)eFimt ;Sfo;ϺkެN tK=`w?1kA{[d;seznOӡ1XbI2]rwpx,5SÀɺ; &F/M0JXzIIuP C2Y _MPqY剙iY@TEڝ``n#nA{K_9ԎaLH "LKp\3yN-B :#Umg$q'klV5yg=Ӡnd5+=L w~2k56x>`t z* Xg Eyctҁ}EX?`*3/euXͼl'dsٱ7 D@hKp"CIlj4\&#w=\YQM7po5CX}^*1>ctTn2P3,v//xU6 KwVkxЍr cn,I//$8鞤CFKow ˽jQ=;m&W\jpl1)Ad~t#`Atܳ>+}SN/wsqBOչ)-BzϩLm <2ɩ07n%@ն)CW-=ߝGrL'&dPwio(UDv˟Ke qhѻ=Bmē_ZD71<ѱ3hmv>z`I!;`-B-RF<.^Mws[F|1Nen}_a2qnM9~zwH0Mttz O_텙 ىmee cu uO6չ." qhJE$nB)rk)ά=f œD=aC+-Z[thΑd|([\w,χCPK&EpN.D"V_/T2̆rh'x)šbyỸ}I1sX 6db8<W&p/=HrCUh-STԑ{F|_!5jZl;tS9Zdmؠ a^83t}oqܺg[NWZJd)a xGᩀ R }E})wtdcJ; ˛Z/D}@@貮s'T%$.GZt3KJ{ÓBSoEs1^dV?fqV1# :jjOay0K\GR45A$߼xZOGrd%V>4eFP,<!׹պlz۽Kv(UhTfEs/uM m1<\5yȪ͘ŕ_p35%@Ce>5vtD++"GkT(Hv ׈1:DJ#>wBsk1A^Mm naK8i3(w.FKӹXCknB394ϯ]q%bbV2ү=6=cb|a[KqH2 L"!BolZL 7?ۚ#3%;kSghX~@v;lX(ʵȌ?u*þs!69EnQ K8-SÚػ~fy,0xTpZYHe| 'ERЂV * w)b8gkAV\QaMez %vBWmo-9ԺfLW-LO*Z9,.-]MObDQvgs-#p\$rs q 5K)Y &, #$qx͝uT*E `7=&scJRK~kC͏Y,դ₦w3!ۇ%@z$Tz+s_X; 9T6}qvQEt=Ugx1Dtb\B6B6XOv.JzBhZ~6s׊FÄybap*ٻCPZ4);7~H~"K!7<[7uJr:`}/g$ /Bq`(Awlƶޞۘ@P*B>-N"$^%QP? xbJIiÝjSފlwnj\ _̠,FB^B*>;\w)oo(|6WSQˉx 11dgc~ۉp`z$./hIRP:X#q'irˠ@] hϣJTvW_UY;A+Y@,HԈm Qy^ED6:;e^ұJԢ$ke`ZML)~x ;`-3-AxTc= 9v o$(Z]`4~.++nMY9 :˝qP8ѠvmVҝ|%ПUq &6^^fu9R[=g&c+碏&ct,E'5fW AlouВv0]]9@brZnĢ $  MZcBVbE 9 7&ôU2I| l,<{"GZ1 |;;FSы+V3吭..4vW{bmCkՑPj~rhYx"`MզR'JGn#"1JWN74DV;]*FLIk[N\{QP*nā+b  L ~H2w[s,lAU|ڠ37ĔX˃[;)\"D:T(F-EDFZ1׎~zs 7Sz6H$8i@;҆sd=[zE~-$UJU=#y+{')㋓/:YC30M˱6(j҅WeYh_[󾉉'2?*IzCg1̾njv {8nP ^JEs72tspтWX kY^[Q:٭L۳ q2Kfec$+w0zhPw[ CF!NF8DgN ")VoZ.QS~%p.X L~rhywh l5*UI ~c()FKŷ~ b&L)PX8X\뽨&%L'ώDʏTĂX D;du MENZ΀Fyo L`l]h%0>N}k-pS h7Վ{~Qeۖ5 Pu_GKrfLRqp C(ے^tazNNM5h谉e|-o?6`|X5U*UXp<_!$ϥk0/`ܻN5SU>c'6;!K̵FU' `BcV Z+XC'BYG!ެtAQM_^?c;:ZޑْK!Y G;!/l/'a(?n`?L*^ơŶj)ɔ1D?]y<@CPPvc~;t]RBVDKecZLeŒ @m[B/]``\x:FyW٭ a7;k#&״pA Ml +Ίf?2tLaP|y0Hr L~U^8z0:#f7 XcUk3) v.y ;3AS8pp} D2/-G$$ Dȡ>- UIIF?'59A, <5E͢y~;ɢ2;7W |r潅th÷mǠD3ohfJ-A]|WIYH4U,ܶh(kʸRKXٜRQZx8a8#+#*6jzӸhֹHvy<;/]u˵*?p7Mf6bfmߍ E܇XcN;rcnF<>l  3 uHDmA~=Jq%o'Sc$OfLnp1~& ihIҳY 1__@kx+dubd5mۃTŽm }FͤM8ZSϛO\i2?yLF袱.x0]*-?cܸl[v4:bWe\bQW>q\-qw}KԒeSLxZr.\}(SE#EM ].Fڛr*euM{QGw#Y]^;.[\0J$ \؋,%WCēpeP{օ5))e-k!NRC-_0"Ma9Q5G{ |fmxa,$ڜ BR2e`=)'0=xr#scֺfy*-6#XYwrc)8@DSc >.v0sTw0 >x/7庚?SsP1=zx|6Yfڪ`fq@UK{ VJQJso6'86 pk?fnrJ<.gpuYҿ!,,b"VfovM+hF46_QEx] cvsBg.23X?t b72H.*Wci k n*,jbTsS-ct0H{^>o 9@nׯ cۚHLVzc_@fnæU*#mFڅ]mKD;&#+'8+de&O#om ^_oW1@WmDDA za [ֈ> ;76Optؗ-NvCx-ptcM )F:v G/$85%ZaT3ޣޜ$_pY$W':"ֲQ儉'C#X .Ň-&A >luZ.¨g8e7p.3PW2錕R4_c->'6I4'Į' p@bTXq`Ji{Mxj7I+X $MŻ^KYȫ1s̛hxNpԌf-mᾬBTͭF'{ipZ zg:]- BZUJ1 4$|MSXP92 |7? hG3+"|S4=^|>푨}S֕(L`3iK) ݆'y)UΕ ,5 `p.WBբxUFyCM$d0;Jե<|P*4, ~FṈIBv866Xi! sx&JASeČ|8x^=2u -Z9yc֨bܳGMvCLYH,PH 0ڷ2.wz԰Kwd?2kw Vo<0悱}@5q;܎4(Z4,H')xpQv#מ.zأs>4$(5c)/;YH1#I?újN/8tO>)BBH%&G0 &-f'7 p#;ϼsTWQYrP&G~+j W>oб0ۤL,:] BgRv2M; b,E-5cWpݎay,*$b+paTx7#꩓'x ?g*+bÕIϸMҴog6Z?>LW .FQzp`¤t+d:s[]:e xQ,l\#pz66O#plb>♬>/OfϬ^ OBOS~N[?.XƩ.\iOFz1|4nsY?h6oH@Pv#׹vXsSK.N%V'˱SHˌLJ{Dw/2Dg3Θػ @*u6n שe "wqryG?s4 u? $VQ* ٺh5ӫdȥ%[S76 *fB52yO/:G>&uw9ˣӵ*П6ImA0˚ڱYdCkd铘[0'8&;UȿdLaU*PõgDs~!K,iR2)pɾyQ2k;fDS~Ji u>Nc#_o U`T168,JԻG@$ -7!F~(ŴOyњ0$. zs3+`dşCz6ůRp_lX*?*&!o%8K !ì p _Dw (^Ҏy&K9X.~@Yn[f2}@ז m?`޴(T!=VtZ*;wXU[ew %Y{v| Ҍ1IregWH _\n:KbM}E &kXU/lB;%h y)>9Z]")megy8\ix]j.# T"g\YDr;T=*bi0 R89d\nf[Cd~ Ю"3*[׎($onéyOOrIwSLW7oz [vE}kUF"Dܕb1LsKθYвQM^0ebhVv{Q;aǔ_]۸ʲ=٢/5V~{k H؍nwkk%ݤg^믬|[Iݒ3[\AucOx?2R [Og tPbBhI?SPV\d:+TG8V K@tb#US]5|_TਣUƎ=eUSqX:Yamt9y❪;\H~L+a."6m]}CKWD-:a5q,g(t4"е`3"}"bhWGya YF j m9OhDD$NC54N Mp멣IMƄ Hz_LQSo?kmQ 'qyP,|nm=A +JS)etAw5OFǘ<_0H:h. iVyl/Dd*ӼTKe\pģd'm6#vrNݘO=eo>Dݢuݙlyj|ّ[;-jc{F@Vr\󒷉u8ٲ9oRP:6ZȊ%>,8r*46c I]7P?jKOkBCJ'Ĩ6d3U tZ؋U`oq^ K9=L6O~6H2Ӎb3O<|vCkr';D{㿠^9)! YΏr5Wh1!\DU6%=ɰ2)4З8"zІB)"` O_S\fㇾ\C;Me35|cY̘o0ڏ@t.-mʀ -M BD|鰹>loa;`|l~o))B]YLo0o53 mл,<F=Hu^=[[k֓Tք[%kV/XDjԾV'J%;n*91rO`z,-d73={NJu -@Dkgnk](S0U/' QLu@}) [h%bGak%g㤻 -=C $f]EP$L!;XKqltœ3 qii_Da=zgۘ$CV&O+λWv  {LFf P<[S 9 59ucZ#I mDArV3z. J]&( 2Lw0_^sǛu39@ǬEl:1L/ #cAX˺}`^kGdiG|,Kkz e7ex= + "pIKl2FRѡm&O|_`dR]c%ٞeZ㆘70,ܪgdB1dpnir`f5!0Ń̥n+nz̲[K]GWl,d\Js„KQT ~PbJߤѱYAe>xQ@Qntu6(i>OGˌtW-Uub_ݱ:־=X[zA:mDycڷܡsc$j]dt8i !t0ԺJ2ٝ(&-!Zrh+eO}_>.\:y$a͹[|h>:H _H.6Ryq$5[`ŭڒ&"ĵ/}'a>u40 6ϥso[ՌVd!ȿ  o1p&ג?gF||X!9d2h׫nh1?B8]yf6؋> K# ' =p qb*E 40n%z`Nenu2@[YM^x(cv |o`5@ht&..' /+7pvi|-bl:xd hnK*T)_+q^tb5|nILUd8v8Y:yQ0%SO0.aULhRV췹*W[Ql۠V#L@2:NeRQň0`HT ړ:Imr>W{jd?.M ;[A5=l9[` 7 ` *q2mMhvz-gXΪƦ2X06pqy -炮~=+w7jɔղG_?M=~tv7GBҴ n0*wP]HH,9#R:i?{~ r wWaO ,i,{{ l9!5̞Z;f]Y=Ɯ܀ԗkMefpL,$X!6Z,X36I4oov8*@fznmO{3Ԯ{Oub%'] FPW-rYS<:21J>o}Pʰ ;"a}z5VV{(:&)!l]m.^d;~,ugtCF`Dt[|@SY%liOg| v~VU'bwC87/eQ ִd6^1x&} }Eir_\wp4x!1PiP`dN'\_!\TfmL;vѦYr롉8KV{l&=Hʯ2)L=g$:^h1vçQ :=`0u<[S6?BLfFM~@/5Y\s.UEƊY_= `:(7"-g%BTpb,)KxMű8Q+ Hpk v5twU#')-NBg-P V<.`sqdZ1mgS-y%M< 2'0j5l#iXso&H-gd!5&kH5̞|2I L;N="O¬Ҹ#( E{_n6Dlsʝ B)GE`!X<([JSpVɂo󹖺+T.n%Džc[2o㾖2:0%c/w ry\ .[7T Q3DX!OcL9ef5tOH*‰ XyT x ;@x<fC&Wbm+k7w u0vtc/3dUtYIZ Rq ߂/No9IΓ+O`fĢM)m˫FJ2VX݉Kwڬ <#,vkR֡Ҏ4;cg1D!”+/f-^lΦ|Љo=!)H0JJ4m9!RrJJ%TPǂL7HH$Anrt_X 6;m2*4|$ x@"4H$z2+ԮvdC6<淩_ Ip3 azbrn+Y4;XU3_͂GQr 0|L-8()\oB.<%]J]-YT1 3byJUp""VX /f`"j:ieXݛ -:ƫsӉ?m.}O5iGo~yU}gp1bR$'ddiJuUPEУ%-` $[5 V6XZ":jtn|zLu|llaܚ~Փ H'y.A%F5<@0pys>Plwܹ瞐7ύ*{%sg so,׻ o O9‚5K=X_be޳k tpz8]ϮO7 eGQH@v2f gQVKA83D@p'tT$ ﰃ=.G)!p1cYȻe'c3RɠR_9,oűҜkmUm}oȐ(d*X"'6,pjǸ87&PY},@fk[ـ榗B9g{*C7"t08a@x4~Иn!ηRsB5)M4)BNwkrl?yJoD D8/r< q)m= -GK'r˄y$3]b$Rgë~7{W{1 |}k6Nhd8"uzGXKj0/Zz<&݈jMw!cb&LR??Yq̚96ա~ђYB*wڧ(텋(7ae%[@MzFlgW,VI굢M(nKGXvJ2~c]~hcAG3N{PRAƧWer TӋzȋ̕k7UAC r?!5y'iV;320 mP+_8&:!׶-g1=;a\9 U!ݎ?b!sNȗՁ1\;I?ѳլnǬ en|DqJE TB!9,`A-t~W~j,f6? UV_'<$ntbNM_+b•z% >hQ}@D[MBc"09f9/k۶8nmD&;,mg|Zqh0ݗR*ȭpjsxq,~VۣEv*T `DZBíO&E u1B]`S˭|=&Ų덋Hnp)90sM%էe%-8OX۳՝kn*=L pGJ?4z{9ps16y(5p&l!_C[7%A]+%\/ޮU"#s6(nٛFB&F;W(Oc,Ѻ}?y}8ov❰ =mY\0aPpAԽ!ˋu-ٷf*jɈCTsB$eNAL♾r 6={$U!RVI`J R<7 :gΝR_[{D+^:ᜦwpF?6r#@lK(?#:_C<-0`Q[VV=Luvݧ8x~-M3B5jߛn؀ T<#n)TǶtr0.>D4ACqӵrh?k)oH1جcmz^cj$Ur8d~?k>#ңk hQ)‰zqr jl\WȒÆnBRgrb 7E޴AMJ+7,>ɩJ6w|㯴3DbO`X%|ܓhZeq!l|>l6R41fQƁupLɂ M'hNYFi bF1 {vGC~RrAg8 nƎ\^u*R#JPR-/$l'* 9Sx\c{%!tU҅)&5Sx!r;4,UA.쒐 x4逰p-^C*Ë[72/zCYAbY(m*k`/scdITJ2Q>&S%9DL;<!t2KwZ '7 2W,dv2@r)LT; N? 𩪍ys ?{5ijCCߜ[!9݌G*~kknn`4<=4H)dIWGVN GHvKqx;}xd4N!co-maћ\mm}Г>5Ed SQ -Oh̟: y]ˣ'UQ꽕\ۄ IXO=aGIiQRB}uXԵ}_Fo^}ɨү(È׶4Nm8$ 4uUxyYIa `-_z~CDEXZO4%A%2B̰j~l7ҁWsmfOnVv?҂ fRs=լ2e 0cjke㜶3pN7ϛ;jCKR"+F:b6N3 I}cvh4h؀,gҥG%11jJ\[vbytx~<~zl,ߝK/u6FbNKA#^cGG;<л+*$&xqZ#q+AiE&;NU,WwP\-y/^ -2D^ŵZ~Śl*tBHNf+@|60!Ysf D]cL'?إ^4:}d疣*vE,Y Qx/ddЛ+\8}M͐NrZ%NjwRf׉Cߟb Mo{YaԜ`WfXHR@PzƾbV8# }̾7Ε+DSGa8-S^m񁱰o, |-5 t땽RcK޴ٓ7"[#a >/ʳqªwa@wbIݤ l~!J u9.yd1o@.`\F8]ii{9Q1l_B$W=UkU>5U3*-UZ1>QBbqr \av8QF$;FTgWn_jE^Ͱc)!%,o$de)B8⎐Ax `'0pC^xFbH3BP3BǍBDjIǘPi3:yS_BfnVx@!k`D}b0=莍FtRX&n8ٶ{6Ev+'B 'HOD쏾|̓9 ]{e~Wͫ!,*oAO_ Ze"" R@ih;roN^;" ;%R0{rVhK{ ՜S`I~# ɧGC5&6Shh8Y|.'WBt{橲Ax-T'f'/ 471^~&3S)wV5ĀZʽ_;vjn԰qm%7#V)L=ҫ%G$FX-u(|E*YoLŘOx\5+PZ&:piٚRּ hq4c&!q!v{h8T\;'-+Yq#mg3'ζqܸnH 'M-PLIzZ~#2Ҥ2 K5uĮL$ةDGUZ;K:OЪ|tdO]J_ ET^4F_uU[`=w1+"b+-X.Qwht g_0#݁) odvQxDR7`@`v2ǜOfX4hϵ#`RHڃ #'`FDODh׺C>A}uuN$Q=1)VXyW#؜dѽb*A 2HC}hRM: %ZSF΋p[de6ιfשXpAdVISkn+odͳ?ŲYD? ,Vڳr=UCxid:h*HdzHJ9(&Dja/4de]0 ,Z7ؽ qiZlY#Ѩ2f+1"8R{8z8w,zMF&'g{gEΘ![pz(YZ.b]o58c*&[X'缊 g 0C!>̭EwUNAe025P4%vj (tneQ)o _q oU(LցV[a귚=u<ݝٌ\V .KIߊC&ޖIB.fTe?b"aYTM2GHNz\PU_vBuLkdwT?U*"FŔͯoJ0(ϿStU$ b]//{DɥgfLK!rFn:G _{\-%{ r>)ntP:V]pJ@2MґO֩YnU;:2_߷E_ nb8,>CFr Z'neX5#ƌdl11쏢8t(T;P4| Lꄸf@E;{>0Dj>5O]rBJmDY+2jnS'@]PwGC1ܥ|R.^UI-Lj\<}dϋmW}(1 Pb)FKa\^mu%=v i`'DvZ?xQEwאi ԑ_3PO2 1Q>4#d |m0VC,|;EyZ $_u3Z`Q`& 'C)Pl^t3ܡ}-K9lxc5!O~6:;|_eV= ̦/j$Ck9 lP}>^իpbPUٲEGڝ4j$D&hDRP^Fem!{Hm4ſ6ߕE=@%+- l9Qe-ݽTك?C K4,+|tez#Ut&sA$FgHf:jL^[" w|+0P)XSD^dW3H_mIiF*yAx1V`*O"2 GPG}&>R^fÌmC ˌ+tYf);*{I}JX F*3LD'(*=ʧW;+c~2j2<v'˔3kYB?&]5!ItɁ-s`-a4̦+y¥TjC7Ht(eC,F֛Xc̬Ɔ&@avAfL 5tѫmugj:tYၭZTuvdVDCm3pΨf?1F9t˯6F !.Ly{'Ôo˷< W8]JHh2_K=JӡgGBz&Ɉ~['Q4J<ᕎy3K4\tfI.}zN/FN/uhox1.sKhFwe a"vKJ'D]-ET&fr-4{EsJ<TCwlEѴ6i#0홗 otbhaf3~w# `P)y=hR%[H]_Gi<2[325kYV "CjPSXGm-#Ɏ73N,xJ(aL=s_XTLd/ro1ve:6C µWwrF`4&}>'v^sO'~CxImbz󌾰n PF q61 H R1ӿ*eڦb^0(ZxOXm8fY@{z 15s0X3)Ѿյ1gc䙋n<[ O8̥A}i/puB6&O,U}P"*_-yGm8fyHzHjc]K͟QLXqyV # +} ‚7@}rTM:R}z#tnnONcINi<] 6`X!U9L5Q1w`S8XtժzXS(ʙu`O:RPk4c.)a2ݼ(5yӏƔ}%ڸlH1|;tSf,= 2PxԺ=-5>koӃiS*̲ U;GF^z)+{Tn -k’[\=:id!gydp-L-H r+98 Qۡ=g؄⇣t@2?]\+˅?汾.L(̨aBj%t2Eh7O "Zƕɫ5?jf c+T`_\Iuwx0[w3gAϸ] Ps|Jp㧘NI3kҼ ̤*kGXC!ZO8>}QS!Ϙd'8K ,;ϓrv0jA)q޵U+v1+GeզVۨ-nmײ:Dj߂ϵZb#N{2^@:SwWs&ft)pHWވe=cW51KsO =Uê9K@%,12L}"fiH&E׺J#kFQw:լDqzqdcX-n"|!+tCU;<4墌xЦ5I{weӢɍ#Xe a儏o[*o-.ז6i@ꧽDY1צ&K{?էzB!9e4F"-7)KQn܎i(d q~&̕",dJ[^\_e;0l.DhT}_DE*NJxw]U 袂y Nm}?h,},WTLM i;"ل|lf0#յs1 Iet-yDDFSH 9et*EMdA]_d~GDXVK"ehpl| N_#F(eZXkuy} ~%kRzrҋ|7GO܆vL 4 ?~O$I3k3Y`ppfɣKAlxFIϗG]$`eƏ+qE"/fZMfkC+nd޿:rf[}CP2(Ixh14"LuGcTYERKA#F#-1HߚS) pWcM__@/ fplǘm$(Xy_x1c S@˚]H/L'<Ӌ*fIcSRiZ$wJCYH[VFvo8}Dfŷ(;4C: 4qc~kyCi@^&lW[A985yY+AD![=WŸ!S<Ғ-WҘ*J_ 7Iv!3ɒd+[葽myHT`cTz8 <[BZeL Dpc5ZMfFHAgZ~Q[Y0mH|rs@p Ss (LjB G|sTpLECӰ}'[T#/ +Mx;d0*H-Q|M% T/K(+Mʘ~ Em| ia&n7ytc:[c-e[jq3]V gϝt9nEmQNymTB !4sF>|e݄!;_W>vB`&hL l&eZtͻ}*QHX"5~d49IwVtWK榈侣G5m]\,24g ?jfjৗxc(~- 欌LӟAK3&󴠲>Q-]ګܼŗVNʄ}:%vg;3+H*4\N׮X3YWrdcY8*kؤ/P+ (SAꒁFJDoؾE5RyQB ];C!ӲZצz/&yИS^t..Y u/ia ARU_Rv-#GiLHѠ[$)qi߾V3tp!ڭ-ʐ;jIOMYk3={- f:.>l!ӻ}"q?HɨrNМ6WpZ x.Veݯ }%^ AĻ(%B0"ǝ zLz?8".,WuݖKP] }u}( U ªt)EcF9SJoJz̄=je{}Z4}Pt{sщM(h0D{VN/tnS9=Xy/(4}-ҩ5 փ0Ĩ`M\eZO]^4ceUĉNXf? ԕ{Gۮy,{ͨ۴}ÈLK$ھyh MR!!{Ph }iKsk{8Hٌh,SΓ] semO3 Ii⊿{Ӏ\N.AD{yY|n =Ù?ٯp5ntcDT&IHX 9U֜|@&ӳuN6޵ aͅ$gl8?4i?Ce*.ʌŲ2kO|"o*n$6ʥ9OᡸoPd \)LQ3QYep wTIDA[<4#s Ѹ8fUrxwdbKHKEj뮾.i J.q}Ӊ?k.&gaM|g,~#r|MUEIKe7##ʤ?9EzP1Ȃ&b?jyȼ`ӈߖ$ZCa |&>{헷D%2F v')^oa|dnBK U/Pz jMFfz_Z,K鍰:*԰}1>FbfRH *#-r8T+K2~ֽ(] hӓ[/8p!V!酤8]j2JIY)^OA(MfYfQ@+/tV|0'^9" ,1ݰ)*afhh o==%iq2=ܖ>"b\ڍ{#13UǪ&$q{].X@JXE ¢ 6&R=LxSrYΡVs`rxlIjܴLw.5\zg oTHld~ -W̼/ ɶt>Fx1"h'}i,y6UpEB9bi k 3-1l)Ylu7؜e ]q H%Q;spM]!p[8;4Ck,*\o|Tc};Fe~gcBßKlB+.K|lrǐ1 < Y >)35UX=e*v_7ks@ݚRƛ8۫n]xh,1."h` <ޠ҅4VCM:># +(bh $/>Nu ێ`wJ 98n?BƕxVO?p`oEy:>Rolz •=ep)+}g3H՗6hR7.~癝e$ s&|U<\yɟJSm]E<_KecjtyqlAFt~8CO> .HwK;yF}+U+'яH.yxCǻ1uk߃NsNG(9I<̻u: Zϵ2o̅v}En[Nm`1%chl7 }ih4Rۗ녤G)>qGu4_`6ELƒw|Q2d!q:݊[F9Bh!u: eޏFe֔D#.}ZyK,O[xhb7Xλvz߻KLWVh$rl'M14⮙#?O>idP)P~K W?n)T(;ߏ~?7d6jAxGBptgq-6;t:8ҴF@ J;M&T;_8 +^JAysW' e z T+ n2UriF㛪BEoél A2Z+"tdlcs2?RWaf)6)3N6O K{p!5f T[sH\pr/.2?Jk(P1a[Uu숍jz֊g;Kmؼ|e>Z%{8zs6c5D&d8J /YR6Ɛ\I ؕ!LOWqY-Pc-ǮYSsF YbF6|K4ۂbY}v90ky<Ԭ^bo}F{LY.*g)g Sb6B]zSQwJ;j Iݤ۠U<7lpBa57AYzTJDZ\ 쐵< :ɧF록j K26--NĩPQp*u:}^+t{Ce"5PgkA@]b0L4bZ9М>Uʉ-:OQH&Zݞ% iPBi/2{08JHV5rϬq'9"Ӭ>\$t]X_8+[)< Nc呛`? +"4amCsq%ӜP޵ 5P#//zY9z4e*y(N5H*˪,b~xl|0?!-`MтI˵;|炆wDIν@>>DNT!Jb)yOs@Uf},9dRw @G,߷7rḬedPEX =\A%?-E &JP_f;0 dJiF5m^օr-J]F7u 7n!8-bg#_t ¹ZW3 ]Xu`Ӥ좷7fܔmyBP_"%̇t  ['mJKaU\-  -Tgܹ5D'ʪr)8v%fokDt-165>o 3_y3Y*&I'u @$Gep Hj P %ʒpv`c 3u=d3rdUqK 2 *tW|TS<,GʉS&$~"=]T|AQy@c'zhhaO3^COkG/(e(-ge(a3N0x u?fQCG6~RLꟁRLD%V;qb, #QҮ =CIu@J`@B;ܱ,mB5]p=#OnUHs2tB0k`A,)  :}n5sP6 Y f&un&V'F99m-v)Z* !y` Sr[Q93ˍ㱤 9ea??R'RAN2Qe{DFi-4c0`|˕AVA'ϙeeXvK%OŸN ) KD*t\.'r5UK]V!U2XK˻C G}t!Ipڠj|hgZy^XAkgLWwgSv=A9J'K0il[h t1HlFY9~+?C67譟j!|»ncȘ?zq")fXJR >( wOlW&@ T"OϏaF7PWWZIbSW7,1w!W0!B4dRX\*#(37v@8x5ulw~cʯmIP:-T8*gVvNO1 2 :;3SUFK`[g{Ngd;t c\݇)cWh92wvsz $ "V[벭V߈=H ZQ F~;{>$qiybyvTR 298h!P9ԛ՜>N}|jJ\xa%vmN>'5wUkO&hmdRR<qW o(TGxs߉nh 7w׳T%xɦmi)!G?X;g8ʞeP Τ*jW4Ŧ^",ʻ8?+pyH'xɼ'̂PqN"쿮JթPh1:}4|Kq00!O(7K(n Y6+.<>Ĺb\ ~V@qԒ3[E8!-z`]w4Z"$u>1A(*@,3ϖKַWhmŅ a,|ps꟩pwt]G|a7 _2W~Agq Z)aIJϥPco569*q_2UH rүA}]V!bЋ±iL[ЀEb]g?BB˙͊$&G2+qhʼn $FtO^L)8?#&&>T|tLK?aF ,s`>"ƫeD+m`6@Z*KXmT+L$ixa] !5,}>XB%8Dί|>cڞC aڄ74v+p~,#;G@l"q˵D;&t:o.9Q^hnˠ/ BFk٬'~ZN?Z14rp`iF@kђ r{eMQmK;b/fr^cG*vF^GeISJmkRuNS1-arƴ&rFq{kGQ˘,iK\>X;N+'+ab94$tz[T0>_ο.#Rn^p@Pah?]31oiE7Ldcgm>73'S,ӈTIt%˽yw5P/[l Rp/Ii=z\%6oUM.!F֝6$! u }ADEN~{ryT'b;.刬t3j*hvVp#kCG I;XxaHm)/\DY1\śdOկU*-D ic ҚLm v_χ-VUPC9iz~]Rʺ4)w (hI@+\=)8b.ޒ6 tCuNBx>>zAL0@uO3ڈz晐z<]̘Z9i'nSMIMjS>e ",Uᾓ>24-./oNmʪ.$q1lӄPHy9%7\WΪ7wn8 np>=`-@JP,Ah pf#۲LVsM?#_cNxj?L(qVcNt-g ͊v֐iK˜n`t9*0K R&*gۚo!9\ZR} ?T^}xA(KWn)<9~ sKo qZ S}>:tCN^17u/&ƞ+?K<#f?dtwJf+.mL]}.ͭXK IO#ۏ_J g} `b%4-ݠy'8ݞF(6`GWkRʁ:ykã [ejL"l{7h,-ċbwVէo Q'xLImŠi:aMzg%MTteȳAyoE}}B:p+r;VxkA\wݨr3Rh!EuI`' P;wS4'ꎹHutaIB"}&*NLTq?@|Q~^>@A5~s hoG$z/>(;tsF XtJh$#AnYTElw#)>tq~w\'ֲݘ=e"6)6}4aͩl ․lA|bH:3h-#~}!M$ /$-Oa KE,N(w.SA`yw;NuߒCtd!}C#5mb{X1xE #C 3Z?Gүy\v!S*ݝv<2fmK F < ۆQ낋 BWRIjvP^33$ʐ,Ʀ;p}@[09xd$R}Oa<6v& #w./*Db_Lrz~RuNv:iHAՋ is+vGVk=Bk1@M^OEC}x>mj$48X'`)hj.Z*d" 4&TQ V2^G_N~ jZ=>-QQxr9,(@_/b?w@Ǒ ~a(A[@*@8:u}-5(k_D^2gs6v-a?&A^VD߁wR0 Xh{ok<JB ziCQy@'W;rD Dp =Joy`ʎG6 Jp\3lyK;hjH#Y5-gņ',M$݉msTubVȉwres\@'ikyYlS4X)k4 t 1ى?n]xUkv*wic:7FY as|{lnH1vû" [UϘJ)Îe~5@Ȝ {y]ʢĽYs C|lut՘j}V6_ Sbqd p<q8Cmh^}ےdvAZI?AS(5E2Z~vYP f:*3 y B5̓: }~R+}f3IViC47X$ՕE},&?8,-x HNApjTtkI)/n1 FaO>T>׳tȰ1L|{gp$A\WhUV.`?cd. )?}DWӴ5IdeXBлR4g?wm1IKyiI˗鳖,=6vB]Tq*[H7hZFBF>;b(Q@P?Vc|oQ!p2q3 b q*^:NY+XcbA9y:5Uy < 4h ]5Aeݹ mڝ'{Of9Hݢ,-elؔRoG?6͂&ɨ@l|]j~6վQmv*X:6+ݘnfu@JkL" I/^>a{'EGm2nmHҘRHsY bĪpW04:jEw,DY*&$zө+٘4FNwϯJUULd&3!w҈y~ !)4fH; -h%z|;=a9_fZDVE~UR*3XӥI)15VL i'Nf{l5D#D1J;5,+m<;}A@u5- -QyC8u6e{THNc(7 =m69TZ|;/ς_ z;B]ko'fGCSaZN!liL;L髢`ĩ4UDV'^ɨAZ" <$` O(73rM(# mzH#[[p5l?/ưmHm3U?E0W(Ω3œ@ ]ko>"oL?3bd+JBݾ`l7z*E}ǣ6E4/V9؛8BКK._ n뤋[,x FrTp2I# ̻~FY:UKR &Ev$[0SE7ܱD= 7,hL= Wż5E Y$[>a_sp~6k? N^r5YTIy+J ^ח0Dk?]rW)é DuexS\}5\;r%V m'-M=s/yۊ Y]Oh(Z}7)ZRzF13& A4 Q?J^GJ!(R$q.U,#ptC @uל@0^q@G="N}ث,6 -cyo?&٨/I,9QS|j0@C" d_C p0?˘) {[sͱI#k3'0䰥KwTs:ό&yU֠@xfі2 "pDB]"%-KAyA]¾UuHoҖfGͥdwQ4'jWI JQtj+ҦU0RR~k}l qELm.j$Iu6qn8}!`'Nt&/\Xg,",ɊWDG ?u*RSM5Zd؇>| &m OHև#HChfצ: mD,ΥO(GpNӫOGژXt~mwZ9x*tP@U)nb#{p_TnHtA0.;D)+188E4R3Ƹ'}Cr J_w^ÓN?ѐ[)|۸h&\YC ͱ-;9d0NE7S=Nk 5Bu0Sd_7eޭG|vyFsOHSa6C0.'*"M]matCk列$Qv;1yd{W$U{9rECnrm/AL/T,V7ϐZuԾu\%X`p>Fm  RV%-z\{{Z<ϗUو!?It]l lwj-U `jUX-D3 ! ؊B*huJB-Ri';ѓ&N: ︣v4mل56}i'JPrʧNISSpWJ%' ~=5K4TbA'Rh"FRpE3~_f^v[!wmc_+ CIVŃW@Dq[QAֻuF lH1eCnׯP:)Y5AB@ ;uC@%I-x柜R!F&*Ʊ onL )G(ZȊ8C)f>z\ߧl 4p< eB1(rѭ/P[uGbIv!`,qF0*Erj{2a jTiz27ʇǕ@-lǂ$%x}!ڡ*3RҼ6WhP[FI(X7\0-D6'9yuarwIFR߭a\!>KE9H |_/0JzZ,~zJey a֘.ϒۨ ӿWǔAb229$X9V'1`/uȏ&薋nHЩg5R4͙G"Cq(u58J=9|>SճHNrQ,L= Qy!1'W`m7C9}}"!^&I= .Sj9Ӫ(-Py[ %wqF4]y \IH-HNNKŅkKḬNn08;_Z%r*Q6#{t֒xޭAA0/D.g!rܾs:1GI)b_xr8<M,Sa3=<\2t^4 qOb m)1hVWMjDY׭s&P*E6?KM8 %&M"##%J9Y>·zUeMv*&\wnrsM_$8IftsK@ }&E'GqEdf3ABvRx9fğmt3yu#ckT9O sW{Io,Q)ʕ9ՋF ,}$ʇ7S?xKí1?+rb4sT+F/o@w|Gϴ7GSSݕz\rx_wy=d&6R<#+щH^ym 2.sheYÌ^gMm_k#)Qd8"mևQxKfWT+QbF|DLe?<(̫~"W)zKrgԈ")Qp h0w>FB=JF#؅ M3SXB m\/*polZ>`Ë*tŶs8vKNtrhD"@rBA;/͘\7cVD0TO) IaE>sfޱ! ju^^x#z8lLT_xnj峫J&XA)ҹ4ؽBzDۘ(x{b] oK!E߯ÜD184/ɱr}K>" 8ňFȍ4z*jxƏǓ gQ5S*7Vsw.rZRAnM/@åC^!mQ1QOLPg#5Ӳ|wpɴ߂~@#M&:&$9 <*d>;YֻZE.) ג}F@FA_I]ө̤br3qLuJ3E 4 υGF^^X'.˱VQ-2n:8urJ/, 9)=@Keԟ'Z4ߢu}by)x x:RX.|YyD9Q&Lqvk1a]=ٿUgʼnZ+@.1>Xlx.D+'.;ښ9H.撯9#x@{Hj d*eUm?vC/FtK2aG~U#/ BUb(~'R[e>GGݚ<+,($!k;ZȥC2eThH @~̈́G#=AQOKC I(_'=s.`9aarٜ]*G@#R.@k6Ui( O!GUh't#`ɲ'S|е݇:ً[TUZH#;f*áC)>tu0dGy`!ٷ Ad/Y䝖 VMiu<#UaٻIúh6wBiqtլ\,,No<s<r<Ӄ9-e_/ w}9Pjh2Z>G-92ۨ1bf[of~.C$-V!F ]b"ÆLj_qހ&8JRn{5 88`Cd$轕3ڄEkMLᝉIZ *`I}qf,Z{< w}O/ cYunWDR?M-}{}T&zEJFƀt_~)hJ^dMc5^x'Pγۆt<:PGNރcc*oF%+kvfv7m}5'u0K7\5{ p})>_m*[Q"k| !2`Y mO֡V[cqT[F'vR3gzEc UX$mNC4-;|O3fnb=~EàH߶RWҡTR`3uơHbdqS-x7D҇kنk/oޤ2^WA"%^yvӱh_9 N.j\ lEg'{ aguvT:7oԆSJN޻ȓry q_ ,LsX3AюufmψPg @ elY`F)SjfsNEHc-̡=ZA@&B>3d.,}Tc7u\Y1orkBgA:EzeCD8` ȴڛt~'hX*?D;?,suݖ~ې1x9?%ti &%ΰ_/{/؉zf)ȍY?{|{atcUp$:܃91Vn!w7tN%뿩w@WT3huG4 i[ͩzI^?ZE"]fEȩZj^X>)Do_R'#$HP+-9H`|9U*c%/m} -0xLyBJ)zR"rcQ;k;PjHXK- K)s-gZ0NT ٝL+ ˓X2-ʷh0v'e6^84̹ƣlˇq#;Hh,j7tM^H-.D~.EIaz5u%mKAyB'Y̞tz9RdESv*Siҋ8%@`Xl%.a7N @ +.Zn09'QK{`b$&aͰZ,4i> dE{Cr#B`0 g .FLkBN51\AU.0I5BaeEŵSJq:f7eX¿//{&Cxy.[B0ۜy@7hJ1ڭ(mFKC%6hx?1e YQ;=VމYj0 +W09C6s՛5+ݍ~ v>`mnL(ۑ G1i@dA쌽p)KCmZ bݧ .F6P N4%;䴣ǖcd`UxLژ h%5m;+"gx>%0< B%'qnh Ce.E(6̙18/ʼڎHCko2vN[a EsfRǧyIlӟGgf@tGղe|p&9I!3<#ve_.Uam4m+(:%C+pg| 47+\U qT9eKCJlT|Q.( +d2!tUs6-Mm( hU̞V7 |DbϾ7:*}{K#bw.Mi"eDd>$c;hSGE27v+Am_CHhkLI:6iMԛ{a>Az 9!%$Fә22dIѨ1 cw5D wM˙+Hq^IUQSVb~zʴ#\܈TQEAL! Q&-D5`I`v78ʜB`($.3fA1x%  V NE;i8tQ{knems^Ô !QR#F"pp_zT&%@}`C`E Ε_XaQoY*(|6xh21 }ҨS/>9bb^zfCUQDK媒 =:zGYih*JvޣAy\"^nt( ]&|%O;:xgU ^hM_FYcfޡu<nιVtMwaZ ث- xtnT9ǽγ$ Oa$3/`Cهq>:k;yyC"B3ټOmH3XSL%cԬm9eCG1~zBmOOTv=lw%H2Ds~ ~ M1i6\ti~Nзs#nCeS?~HeW7 "CZOlpC)vضb;knfm_rFNN( ,m{ƘXX$-:R}xtMwz[ilpj!O3k'_Lmz%쨰\'qσ~FIۮ wpbBC G=rg3417si ͠s"-7Muk6:a8cVR푣 0N'KX-I4i`g@ֲ~2/wQT ~}Quq;^cx0QYREz)HyKN ~ocQ$^&>ED|wsH%B~yD_~bÈ͞)<z4k_upIE1G?b$Ks5Ǧ veoO𗺿[gWsҐU˸?R<]t^>nv n jxtť`i;kAùa, M0䬕HsCLL8V5!mT Mwae2Kwd_Jzz@-`{*~ vO鄶 GzPN22Q~ݚʭ,fn]t@OW9L2c床<H>fb&)|­2)6LHub[jՔѐpuyOpibV.rK49MLg/&D 7ٿ< >>z%{Q?RS}1RXGuؓ8D.kwZ nNwnfmt;m$n z(rq<L`F * Sќ  pX^6fA8<"}q>fq{qJ=Nox¦7`.2;W{G@k*b(6E}θ{Ef ۿjY߇3 z`Xm#愵ro F|*.KOf=iB3}K-x|{fkdbk,C"_ ڸ2 o_q&!H_B^Zy*xpʋD| oq KjdǨ' s{HeC XksK2eysJ627M4_G2$ψ ilEQ Yզ#gvLq Z{Q'?JyOzIx`CCN [Q1l+C&ikߩG3 ᨚ$WݭOl U3v}хOkA ع!Zxу? 6܅cgݗQSy12^Op_> QfQY4A}MH]Ú!G_j9%%l%H;R I>i`.PEDpYUO 2 ZV g ڮA7ϟrqˏ@(mX2LQ]K9egWܹVNc@wڤ#c֭sNWc]\`/{#N;`គsGdpɏkMtA_Z9g9kBDTE[ԹЩώ䲶f֬pM<+C閄S1礰m)]b?ƺll!sZ, *Y NPU6n*{GUcZ'Z&x W~hK2.n#ww\B䎃sę4p?]sS`m΅D؊M}ALq 1|(F(uӝaiNH,vXtq.4x|1XbQ z s :Mh+*5ԻNfT  og"O:rmPGTSf.mˊ 7p%WvM4u n!Q5T dͬ/BGlՋeLG#e~Ѽ!%pY0>wlIP:kS\EyZY6L 7j&mB+WN}[x *-K\/U-^y]9~-b .K_ E7XGWF;i.WƂgMXO+08M5Pd=.LmZ 6 MWr]Fwn!FÍ:M8-(p2]7z:xfq˟UskIP<5tg$fFw);5D3 yqoԈ'ua^ x&C:oaɋ~'C how^5?nRcac+O)2 k6zDOk8Gި?^"܈bP^^,usVdaJm䰉rlGJC B gjGy-/ep cnOu0y}eB<;M:>ӲV ΟͺA01u`5ܵ)l}?9:&ꒋ8:rbԱIDTɁ|P[n p(9zJ4pObw$4'KO6.R@zbTdN9t4[p PM!)ZtB]vR#='{1y-P-0p08Ǐ{9>GI<Ѓ.p *+fM=7A#DD Ifsla@"g#՜sx~(q-}K4oc' %&LvNܑȖj-s yšҘg+`jմ;F՛,tlD4bq\!yP'~?8[#`r|%o5Jg$V^DanZsT%fvH(XuH[LNeTe7(Mޜ4UP^ bH̀ILmϚ WFl9W0 (_D_`PjvYgU'?޾ۭR=oK-BVˬ5JzW!#7 *"v 9+3(& d,t,v!T4ѫR.4XPsu]M9abۡeY>$™J 1LmC\2[dgLuҰén OA{0 ;vK thƄ忼gb^QQ"ZBli@˜{snťĴ37~J)m ډ'Ck;] _[oي4˲?E,b ĕ`;(.FդQ_A-Ƚdz94W\.I$yIڴmYU"ݤRͳMc &mGft69l@_yh=Ɵ4⌠2ϋ5,2g|wp@OTNe%G8{ӇuTG|XKIi%+rxLB)O;5dR 0sT?<SL&*-9"ΩZBbmyޟDvyQzٍĔ6- _&v% ;<MI DcJ,=pERđyƣ$)/Csq /{V@e-P)_g.j1RF/v~&ݜwdct]BĚP<!V/T )s= q3^ېu/ݜ>?1BE=ޛ-5>B}$Ǽ(^g~Đ,E$u0X$|gģ v+ 孍~}\"I'Lto>KIAҼh]-Y3jr=QH|(|](UT2j8226\\!)3 SpK~ȺTvYPj&Nb=+zEZF ̎=EKECr44G:V?|j f+'Sv%dRbb}U'M*{D#-Si/FH^)]aGо rVc$h<)n6Ռ3i#Fl精nhze ΌiXJЯxq}wbbn_&?SDX`a5whYeTs;/fG3{?FZ7{qvo _ڵٕ]:%N}lLMV8Hl;?`+id+tW. |S͗= 3V;U@קB{]l؞<F5? (Q;gn.> ʪj'wRivG7G+FH=>$`~[='%xYq]08TPNY,-ްbE y]/6O[w 屁[Sv^̠7J ~&_XmB竫 W.09+Jsu#՜o`켨.4s 0U >OǺ>ݩR3}卼3sc1b/%1Gϕ]0B b+.n3Ռ+X]u>( &o^G2W6 U`*e\5FCfEȎQ5TS4É(3߆Q; ͚Xj:yOyjLMVPp3-0Ji~ e+fa}i]?Y>yr'JEYSḎܐЂҍ)kgZ[6' c-Zppꏧ/5B㡙΍}ٖ`oD%쀫6I]DSӑ Oi䒓 "@'H5;YZ'vu̙୼m4ƈ5G h`e=@YRV8MN7' Q}"X|BGP]Q'Th{yt}xզU@f葋@*2sLM9zeK**}6psZg'{gDq\u+X%Qby[EJ"b"M 1NHy0h1m^p|d(:H:bccA08Uo0aIh.v8hH-mkƓ5q(`Ud@Q-;3q?ɾ~Ȏn1dBk!DLƇZ2 T!YZ^֡· =kƯ-RZT׌{G9VX|R?Mt0;UO] p=z..`" F ]М>p[w@>r4=$AK͹^* |SA Yi(l-+1b`t}!{xIKg4!\uf RT ϔo.<#`H0.daXsO;A2+2r5˅Ծeo ,u-- fj͐ZV7 #o*h!&내-mCm@TCl*VwGViF=i(ٹWJפ 0%4zPO%k(:b,OƬTs#kAfT _sERq=NVOƘJS=n7-IOE,14S{W= 9`UBQ=t?Ggq4B1A *B(1! Z[\ÀN@!Fn?:$N! j1M3YZdۥB1q]: FnLin6Eֶ+o vBL]Un؅%;A^aUppٺtJ+B,L3Fv_ >d;YVz&&#k;NZoˑ Ȑs>04ay6@DVnV]!8U'+=tHGì@8N'Qʩ U]F1EG"K F]a&Uf$eZ"()+ )Rg>kgDή8@g?y!2AQ/ßȌ<ruHsŋ}YY13D~&?~JLvRH cTMk bG?뉏DVf*rհ<tˬ= DP5'EHa.bTa{-sp4EC daåVBo;)NT}lC]P艿|wmꛯuAߺRX ⿥vuݭcW3oZ,rłR 23?^ o]J.J pK5BX T*/U[U. 5(jaoơ+!Dޙ<}izV/mݡj 7 \˄RElAmc YNsw`Kp~ XL@K\\Jv㜔COب뼎e/MY3[01ߑ ]Z`pac[j-?Z{VNc2 ^Ah]&n[avwi"K;.co $9ݙVOpS6ׁ]F\bjE&Ns4HM4W=2\ jᵐK+%/͡9|7ϴǽwM_gk|ْqZ)HTKoɣV7Y*3W,w4S2V΂׀$hOj$Maj o%rdWD(B lJ@iǴ?E?}aI,5$ ֎1[ n>x(QS@RQˇt6{Ρ˞*=)7U82iuT"m>K(Z=44qmz{iñL7,GnN7Dų@ƕKL;l:A,P8xmBU;d>Zt.8l'2j$&sˍes\'ߏ1^w  "N¢GΙQ87bY-DV~X_U 1!"M IdY Ѯ5sX1U˺ T݁1\[Au)^ }A#ODR‚%ѡB~v/cd\, :O\d 5˥NSyie}^<X4H4,%lؑ?d!8&y@qF(7ͲAb C ve-4KN+`6^bcՁM҇2b IAS23=*-f8k7'jX$h#42lG|L8#F΄[#s]-z㉴ l2~?Gx`)di(C+A"8p۵赎2gVfO/i'(,<Α̈́7~< VT~ c@6H# %xln'ɥ@SNV|#8=b b6s2z4n-#z ˘;$Nu 6cd Sq)uw#yYvcn`׷ݲOa!if+Hn#.n¥Մ\̦rZ7ޱlpeӫF>`oe3/ɸ@/׌C|^hيD2>.dz 'Ymy\& e7?0$[0?#l~%.OhS 3v8AL.S^>WD,Ȱzڔ1b+⑪k>@O vA=D~됃M˽K9&QQs}a{U`n9vT}QY2. j&*'o%R](58-f 7J$=! ;}}RYmԀe6m (|rGhn# ?09ƺ\XTV(,gzi_57%b:KHjqH YʲM;zX[!*NXjS]*wPJ*ѽAE\69~YEjJ"/*)޹ȓbMqoJN)ԔF&t\6%9ZL*ru#$~}naIs˖N3MmZ? prgP3AlǕf7[Y=(Q1_? H4ny;bQk*79.TL @b򔩏u %fMmVՆׯ~J| h7ʻ~Yͬ2r"OBͪemLa|9 {"x^KdPc507d"}2/Tđ!Ax/kgiϳ8ekWкiE޺8 7ޫ. d Pcf$c(,!MUoIe'Q1OPEhCRk!=YDpyi\m-q^sT2p-<:T"-bE4ۣrFdĔ B/ @tI s!!p;*/QQO _Q rKp'ǻ賈>QK sFy~/#) zOe~AuXXvFPu},5u1k^3Rx_{oz:'bЪ9]V+X\j5f8%֎8tʔYY[)4w B =O{4 Y:H>΋uACE sL"O;=-Zn䚨 tM\}AvyO1%,NՈ%:Cc3!ܳ-yC-ث f$ m{>'Iv2wuM5{=:s O-\' #)x'Q&dphɱjuIRܞiQt-^6yn Ußo @ /rM]Ȇ:ZR> oGF 3/+c]b%[PJkTZdey8r=^,¬@@$\EE硂w`%iPkNV_L).\m4=` [&'P>.(g:{oIZ(Gy}3;"(i+jƁq k0?Ri~f5DXPkBV̌Oc:/ ô8bO8,{/zXQ`K-{55FD~}_\Wˡ"ԴkkEMAQ0>u0-]!vpE7^_ #/’jfY'#DG> \TmJl[ r#,r&*7zA8@v\a /kgPVK{|=4 '扴DId4;Y .bg5gH6Ouo^m_+>3:@)z@i"K}dmaϗ=ߎPe9<2# N;>eh.ۺF5ź< jҌĀv't|>]o2@Znqw cO3x4kU_9u$qC7k*dL0'KWKuL<Lp,"k`@q\[6kQo/'j t xaL*e@_c1 )p}f<bUmR$΄7:PxF 7)&IIw2<&[Xcz3GO/D((7ach,$ }*6$H{ZX^MYw w~ЦG6E=g,HJWj]R7?ɣ:* "_]p)oSA'o M9<(N+:z22l#SnZr>s+z?2;B]5LˆFRB{iy;9+\g$98  Ő]ŚBNT%x*b`' ;^"bgxx1 % qrGN4z |~ (b釛jvʈꮔ(jr=U46KmN]?$#b^/Ubo%jz!&Y/,?'q]7cv B~)(+(s246lB6{6Qzw+iUO Sbnڱ (:٪gT9W#óP) E!ooչ:D|'1X 2CiQQհ'q],~gX+ET7% l:V^~Vwlܸ=>Fkra]t/5e\S %6z<2o.GN-~g\n)E2o`;|9ۦ j6Hl]Y/nVfSX+Dݘƌc Cd´[2s6a=*T0gւ`sm~y۞>Fo.Iy7w\zȺ6e{5c04^p]lQ,`{tf21PW~U%S%KBvcHF)-hj5By^Y|^}2g CFY7>. BxܠD0c/àI $P*NPX_xGk .*n%^&8f؆U?=Ӈ=Ltn6)p6M©/#"lvA~x3y|Q:9_ =Wny[ bB\؉?.灹 ; [ɯUG; >) TO_>iYCgN2{{r3}=ܔĩlk=|A\}$ETH10H"9Ngui v$v):qqi$2 5K0儴pC˳*̰x̸=Hs C]K8+g|d`ތo$-ȁ??TDz2"#5NN{5grt/ %ԟ@ awA&`BX#_OfjxdBf9?dKP@׭Ze $? 36!%jp0@(gx: <& ' E֊dHOefSݼx-eigPedbKnnM2FPӟQyrTCCͲ%S#S5,f?st&qO_7*Ӕodr^]/;SNPo[9y ӛg*NjkvΩƩc.ynq&޴'n3@8Dr,W@zx5ZFW 8VF,ҽw\ؒJ9 1/3nÍɀK鈨>d<<̕n.)5xojia)l<a&oAi@po2`f8c*?N[]xf-uZ תURQ6n94 i6 k#(X Il*(K xGw{}ɇ]'Me9rzH=~^FdpBJWt"Xq 5K^AdKlH,PLEX}@}g RZ<utLgU'45 4n2X߀ /݂~&+J!u4$|f&ڋ3xutny(9/+ϡMӟ 5ȢvsD َIA)gVV{#8#LމN }wwQm<ڙ 8!.񪏄 ]l/>dFOu҃u{^ q7ճ5'oV H\WUe~tmz0d+vTtێQnC=rb:yǦ'czXdxм3s[Ǡ̖7;9a4ȣ5m ŸVHKkFw{ 2!r\@Pu4fam4{.;+B;HbFJ쮿HY*&Tl 5D$~W&V D-aa8imPJizsn8C kp@-gdc3X/l0DU=ǏTal/޿<  ZٝFK+o,yLFrL2}V& f4'3N ]T?Ѡ1b ]ܞa,}smy@8;ۮTx\G.C~7(fi4R/MizupyCQ-pvYewKiabp*e(pRLo @]p .wbD x\#fe>d>rw~)G(Wݰ KlcW$qy#?#]w[gTSS\'(fj1#NB>6h!mΪG BX1e'zE"*dD+~U?le+O0[-JV6axqOt! S`7!FO2zu{187XaUv'u .@Hev`(ډ FrAf9;ȫc pmZkvqf +i /Ҟo'4S)XW&!d6EȍHд"gk,5wK˧$2QUTTAjGT]VEh Xs`bI86p0vcU@$=DžUFO*h5'9cku+&]iEg4 2${+"x1g7fo;y#^ :c,2 z̆w|K LlZ#ލ'qb,Y3,S>G\~͢a\;7o)P.҄r,2kH,v@iOD K kZB&K4I7+Mca̜4Hz ^Ck%`HZ\9NOFUL,W iaxUi;u JҳgUw\dYu:]kZI/kݼco|d)6a h@^Ih<>YO~=/ WdG(}89í +'~*FK\\V%!x1V*Liqsc\m>+rӃ\Is0?sfr1)U- 拻b@;I?Qsjo{wyc'"@Q謼hT1/pW9.`GAWfUQǃP@ouL]}͓K"nn>/$^g<|st/ti$DGEt]{EӮ I!o~=?GuaP5ge~#x1zxÓYBT׏ZjvⰭ\Y>E]9/ޞDye^>Vt?}v3u9_9~egQ}0JQ/!=%|r DDh^f 0E{jqSeI_~UWᵃλaL9a$O4& K,kMjj qe܈ &g ʠݏy6IQR";}AY 3PvYh(%h*;9%kQžr{Mᰶ[g=xhpn#/wco,OGR{SÎY0&Pʵ%[`E:3 XINy +u1 PpC(J0r<4r~|}#O賲0Z'ҷ -UZj4#hڏSWU+zo $4wM;AzrtK~ Z]I]5ڗ B_z+cmnH6]NjlΙ(Qãi{ _4&5}@5xMUBZ(r4Ph0@.ߘyqdf W N9b{CSۧkw#15~"?R`/=SU,NǛf4jyZnZ3ا{:mM~%Ԁ@E֔˱=iDk!-)$"n3+ӈIϟjԘwɎPJLIק]nVb z h%_?d@{lTsw_|fֻxFTn|RK0PWMMՂ&=Zң+G< ~P cwߏd|3~UdEgq  *[T00]œZ˳+c6YޠHLÐQt !l[0? I!']<|j:agԽ~6-*ͺq);3ڑA7T"~OԂ`ԧ:_EXE&H%WqFʹ>m)vVguN?)4]'40PWw֫f'UÀ0Yw*I/mLJ lζ~Ʌ\+-z0o򹧡vʂ&y 3z]{NcoHЎTn̄ ȹNp#Psjq @e@=74t-IMB煡~0l_bh.خZEG(.v_~a>7A}}paSg4Y$+mvfD^V5jqEO1e䣁5b-zz/?wIY{RUs;eae N2H+K^̒x_*=ˮ\ JP]31K*lxQT JF(W]2$T-K=ѻrƏ̔-n2_Օt4D4!"&"ΫkۂA-9Ve|u^& 遹YlmƩl0(8x&cIrcvyedTX@ NH7-QKUhVVr5Iztl ]#/# Htҏ0ٕ`yD5%0oSakڬu~;p;:4:Qy" ZN/Nw\?L J F6^-[vv$KRB.FZlcy˄Eɜc*c&Rw/ 9쁽ڽBgL88E&},H L7 zxYF,o>W )*t y 9'wʄPHth|JHIO2B i,*嚍jh}Pw,DQr6`Pe'lE9nƩ s_6%\#_?0|L6cIN+<)jSٱՀFDd]ZdΞs~TƹVY#R{W* %)֛oTCߦ zD 3sD™Ϳ|Z*?54%lO`!Mun3TJUb0/Dzy76kqW*㠄:A.?Zm TRNmŏ" 8CH 0WsSr<źsQTq\He ).v1~{ |XZ}L+68O垤g45M:'9U`WQQY.~E {|Zb~Y;nK"+:=ϗ^s]R{!@x"?ggFIݘ:Kr$w9VE7:J=xVx6ȗ#*<ڗ}c5n-ixR@&{8vXRtF\enwlrrҤ>2P؝\^o2䅖O{¿`^?(uN`  g^pQCYotN#椰*蚓ǟ4wUv{__#U7z!-J Hu{AU&R"$e{fUͨGHI;./-,OJTtlF]ܱ[Bݴ aph]@*U{ &{? K@$7ɱyOQ:O/}\GAVP 8kW1y#I$E PlxO"UWh@` /r,hz)S\sZ1nqՍ?ђ*c%8HAׂqrxҒAh v\]CՠR*轟a\[*a z.BI{=Ct] |Q RS {}fQ#z. T-Ъ̼tikrPN^`U߈%5 Nch晴?Y" ˅@/|-qwU8(J@YT0 GV|qY,ϧ*`~Vz5al 5d*u&y%x7 =+*rNYd>qlM1/6iPJSg'^+Pȯ(yFdX W\}ZU”6C1uWL;Uiʚ4|TRW1GH$)-وj2!sq rwxɊGxXsA#jK'okg#@8(j"J߮xd'EȰ _aMrE>''%/$Q7EoGTiH6Vu־+kF_x{,N[Y۩p9"vZeZdypÐ$:3E0Yߎ2[;L=sw'uC'cj:0  :`*R OAaˋ[A%S ATai~(F K: 2tP̵'XE0aJe^\tם*l=cDǓec^3+Tp޵\V*}N%'$ʼ9YOztNzp%wxӚ! _BT?x%RR$_ {8rvAǸxkf]"={j }D KzD)qflbD63 4ٸ{VmUl tvDWܿ<7ħ0G߱6G:fX? !AhCV6pQfO7qѵ KW sb}R*pA>vs!3PANT\qqa&uQjDZB1FxI oPH fw5"xOH۔ΚhJբg;\p0 55ʤI=reOŝM 3A?u2֖"w+q18ɨ]XʧƇSmuռR~ƕUBW#~c=ry8mD kt'I?3Zӳ:Y7«ˡNWꃁWuBU5lu^e7v^O~7KdyWc~hu)VZGL@zUwQ{jQ\ mi{ށiZWA 5 m]@~ |jۣnZWQ^!<m&GE[zwyʇc 5J_!0?c1{9i/AtxH8@:)տL%N *mID)|#bRy^'I{&PDYTҦ淹z 8PNt+Bc<(` T *4; MfDvސgjc*!{^!sEV!|M~SM;fpBc[ L;(rZ-w˘MqJv⽚_,mw37@rbNiiΙ7 0'|2d:on_A&-.\!qaēnj!M(eQP؜v-8.:m,7b6 o[<[GfΌc2F+8к)ތ|8hXr\ҼP14kyuv, De]1`Ӟ\ɂ|Xu4c^yTEK K")\ޜ4~ŽaKtN-ԶTlc%15v.kB:7X0Uq>n%BfԭB |WVl=Sٓ8j+vЮ lө˅j=C}8NT0Ӥغɨ E_bx:(&38#Zr'}E+J#CU~\w8LTJna?$]—$ "e:8?CG bLIu.zO0o@>9(`>Ty:qoO dO[ )W;pnV2cUXaK6@ĆW+KĀʡ"^< P.;sKa|@b9_2 ׋9 ;[}@ ,UD]](=5lV˙3":WiygMF~xĮgK*kp+m$SJ4"*˞ꧢ1#3?zvˤ[Qx% n= {te},SH B =Vk@ !/U㔀ʱ4 GH2R;v8EkL< ^G8;9y;`'iGiz:oY 8B%lyr( *ws1` !f"f9v„ ȣZ9,:[*qP/#3YtZ><Σٲ՞:8":K\Ӎ4$ @DWo(@أan< üЅdc kP ~`$,УNFڕ|(\9u czq2\+HNZλx+X#?И rYV^];?z^{֭T]h4~lIq߯.a6~ Z閏ƞ'%Ҭ#>m>#M s۴BN-[ؙh}PbOrXTnpYΞpaBr^y` &fɉ!ȵ+#Xmh 8eO->عȏS<"yD@5c=QhMoMXҎ96NWg)H)| 2\XRgeImLx k®E2މ.10c]-h?CAKfէ]1(+،XhGwNKe簿?W6UF1}!e?ϛWs )LgB5iz뚿}JPBܙk𡓧<*]ߜ-}\*[>k\N'P Ǩ cY9-N7z;?jI!zsK@=- D# .1hTޔxiڻ f3mq Pu>C'.;~7W Etȃ5$ L38EPHS>%nOA47AO}R'pFd8ay(?7A٩wrhw YpV;{om:.t8 ;,#6rXEEmzvZVl ؈%qלXr3^XCGgT%bāmlWt^N;N2oP-T\/S@5s3 h%nWڗVC1ddLrxitpP,|)Ru⽕]h2 50+DrɓjWD'a LΘHH Yi%c c-:1z8},=D%o$N[T3NVܴGUP$eQa˪uQU)F:ucQrVbvV0rbƭlu!%>N,. s{êԐgk?(,V|7KK8~d:0jaNBDyby`\PH ˵nV@S@WkIҷ?6L键<^i ݶZd#ؿ3F;:vkC%iC':m"瞴xbxYf~4&U/3l*";X^Dlʻ;Ԍ B:8=&YP ǩ۠WƸv0z,OL GnJ Dy1Y4Cy %\˳^VL0^+4 fV-akrƻb)vᲢ1BOPϐ1nRI{5\* 읋ST)u~0^/A2n_A.D $x.v;T*՘˹p4HS*Yf>V?i' ]"^/0kfCLY7JvSv {Ff][)k (ʇMZ*yA<jE ?8CG#kVhY bɚj%L:^u@+_#+Qg=Gr`Vy*4؄(CtD#<9mG^;\TH4%Ǟ\F-̭n|.7t"ʡIv/tx*+N 0E@ZS`ۮ!Z@AM8Ac.BXFM0ɣ*pvu # GơTȽ yw2kpdLUI= x4~U=8@LIgGPMƽv7iEXphqE3ڷRLM!ag*Un<5511 3G2~OJ.Lpӷk)S(k*Y=ND Sq_!]Hܞ%DD3H=A-U$V_a@jk2_"_ B;}EmEȘ? ay߶`]2loяuW[!|rHÕ8[@`<n|C!T9e;{.8bv\:T0B^鿼(]a 4DFct[-P z7zB },1DA)ƚn`ZU+uC&O_ "#S2-b7t&>9N>n 8A}Ԣ=Qsfܔ *ZBn2q5BiYoǖly3jC NJKbи=wS <-7ޕ 8y ZҺ}˂l!eRLgUD#X7Yh]*TȣЀS`MSjr} F|92.4XZǒ_? -7|$12LQxPOqoL 7Ό>xsn),)xHI w~-z+,ƆF-@ᗘi䝂}.:fSq(qV"`[i %O^cJVN`]s^vq]4x`VwA4}ųXDBqw 2ƿ2vn -l5~ "r?=9!<ARB>86ѮteK{~OLYzҢCyq Bj+hE͉'PW j1כX6O~sYckj0[n;H* 4$?tͺE~ ės6'j/xf|w'Z[ uv:jNWuaka (n34MA)0D ]s*5=>'\P dʋ{p8t_|d1攒D<0 K+_kt^Ygd1Px+J@ QA/oX "օMEjx?e ڐSϭ$ ԱonzG@x+*XYz&C,H}h7@>_"'z:Ftqx!/V.7GhVD7HՍ<',7,Vc鞻 T-HYhax6'?s%>U$D|Rfo. QrBm@Ib6+E^$ c-% D .Zs7}0#1"EGUSs+Ùuo5nqi$TVKȆxID!Acd`kk!S$YU9|NDG2Pv0,UKyw1G?}Q@du#|dr2Mq;tB۳t"~?"^0'J^idh,[coohohۼ|Hn2saebpՋ6IHwdW 5 oZA^<~[ܳ ;^o,:MEa•񆡧Cێ)>~"n 4Xx-JT  Oi{l̓PʇKlÈ]O50)}ln{E>;*PH;xFz@<0ᄐAgeBbиy%~K\y;8% N!Ϻהm[kf+-eFXmvc B\7[y8'bpn:6[[U A}>\<@kD|Z {cr g] H:"FUN;DvYclXL","G*u}!^C{/ijE+J喚0-K3*ފE<$'B1#Gy浕1o[&=X&\}eary׫Z^S JAiO]dH| 9WL9j2=i?22ohu8" }>>#޸dP}q!>Yzl=NG w8[\n/e.[SHy?% /tASŻ7J&DX|Qc%gB1L{:` -VY܅ȳ;Hq*6h?"ȜQd'mhGT9"\Ldq),TH @ވ'i{Wwִ ?ZO!2ޝYZN7ն:9…Rr<"{#GsU6I-Mk~~%& QٝZE б78-Fa,u E !?Ҍ$gy#ã dR/A[|tX2~4 m{@_)f6vO뭥.x>nEojhS)rX2X4njgb(F-(2m73Oޔ:N4CgK`3$a[r 6Wk$xtCj@<rƇJR;~tU)p{o'M f,^S= e'hu/&`W=9}sϥzi׷1- m-Ж*vM4_5@1Fz07M^g{Y=\Nl|c22.{|ڛaKbA9xKcHU1w\7*횱k+l҈f幌;?0zƜa@H6PKq(W$4}W992 [D_`4RSv:|{5Ldz,//hr%joN2oRwa:U<ӓ&WJF@[ޣL\(q=̉`19E>m37H>A!E)J>O݁6tkJB[YGhE$p6TݯO{MVթYKC6"]Ot׽QȾS TsÄ~Q{{Ac0nY+v9geqݻU}"*eJW4LGt{#"lt+cˎ#+K)~ 9'ϐد Dke2]H36+Jk/3?_3/h6H냨'efv Ғ%-GWgP,,_1xa)eW \4V* ؇aFQ3<+b>üiu UbJ-p'&=K]'*Oig/f 50.1&X7#EC9f3 QMo4T:•Ąlόr.UeH"6HR*QJ4{Isee34^9^C}NލޛH; #d_iUɌk/[0[/pׯ Fy"sf1}@ؼ\%X H?"ݖDDž'LF#r-Xi:GEGazAt;ٔPGvClBM[؋W%?DY1@a#K`Ӄ~t> 6V[pHX$M >jt;zbCveRbFg 114U.=t&E)6v(~na7I7miH-DG-A8г%iS]Uuڕf8B[tXe;Ʌ. rz9\Zx-]w+/bTL,lm+]jWװ6$3^oSh 7%/PD@ܗu~171U?  pZ7RN8Pܲoy?AkTp" !- KbXhdr@<#i1n9 `MĹ'=pʾayȝ7%[S-uڜS8:%_)]ĥ ; ,6 4̲$цszCmpƓ4 <qx &VHqW=7s %I -7-Q]9O%x<( !~=@g@Պ10AF$O|r3!SBk2F1@JWhI"[]\x[ sr4~N |duM_f?W"ݕ%.P]x7@9zz OS죡 $ZiEzLiJ7$"jZx SP "sӯm׶K.篗ƞF՘wsA.oT(_^[E c] v-SJƹ=R?Sz:5+^4?Zf04W-~SDhe1/`a.{V:/XTaފ~M NnhCfMWi~J}sxsJ;YQxWooǻl',BHr$ɶMo K*;1iS(HUjWJzqT0!rm窗WnKcQ*hA;ʏMLto)#C?"ctMY Nk=쎇`yktbD$#4jϙ rJڢ?hr*m@&x.`O5~.o`jʳJRGkU\<ůZxfR&FB(?<#c<xWx!Y7$ۺvw"y%,1K:qG&Vِ,ъ~_ѩ;q'^2 Sd .MOq2^M({UB&g%>Դ\D3]IY.N$Zi׊\~ލñ&!OzAo"zv*fWņS0d0mGGKyqjE1: ]͘2(έG/P*.׿ɹ"!b(f!rFˣ!QZHy9}Z tn $G$X$+ Fy$.15qV?acw +pz&oKGcHdZ 9}_O g<', V*_ r(BaEB>Wu-—~_wZ\. TjT{$g?F# YpsUS 荁qQ鮢kk^YcʹjPZAM r3cFH`Q4v/@k +D RJW>߉T ?[YeKSA6?)iami)(K\[Ym$?'౽P}H'%,PZ6 h>&n+m-7jsge>1[{K2i M/R"rhԊiU_n7/`H*0906dѥ]Hy賮SVO5_U;6h'yܝ]SqBU HWLf]4s#Ʋng=/;RX:{W@2`.QLz*/@mMЫJB G K!4.]s[19)N'h$Ј?R{|]܂ʮ1*2Ac4\D՞ wmEox-BJIVSb *ҾL]Eط9inM6{Zz]/CJ®`fv#zޤ@vkMF%fh\[6~蠡 Q fYQT d'ȆiVgP*RX }bUM$d‹1'M֓u[]R]PY"k,fx^FL˸epD W1'd/׳Se~.y89J9X/N 9)\ SĤ=ns8F5ks83`^ich낎OHWM%,a;eU[n ;mlᲲ)]3aU+ĎU.-{ ~f[S+ wEw 4Ӻ<ŌꦟocF#|Z>3rN(_%COSDGGn,@uwJ!㥬^?1 ʠh#ƭ#BY,' l2"eUTctBPc]-Ög]cuJ&Ǝܶ K=W.7ٛFS{,e`ܛ>A8_T%bA^=˱v{+42,{aM7u& t^F`~- _ʃm/je! >#Ij4IҗDeBø%K8ީ,um$z2@Bh E{o2@mWW @U 2(!Ř5HO(.K>chYx°X$2}Lދ4I~U>2Ed30 ɺl~؏.("]h.P--)ZUv(3G_t݆LP.5Nqxv&=rm1?Rqt^#Nx=`֞O?^>*uҊmK/[Y߾Yo%-0wvGs [t[ٕq7Ugp}>̀480":4ϮYXxTWb poay|OAhIϵl! $\n55f"d&V)׀hlHFvϐ PyOqcAqa 0 |/+l1ɪE끐)!n։($ ƈ, 2#An1?nd {McpN²e~bӨ}@o9'd>9rbpL4|f (=7nq>k:M y1MS,d J{!x[kãjB5alAJ\Iqը'(h$ZM1F1r= 83 4`Yհ׬!x:L)V#䙕NүuQBCS2S KM֑Lm;\8t䶰{qSz"]zpJUy.BI_nJz;πn yzV]KVpFѬ5 kL,ީ@K;~*-]^Ƽ0gtHT%].})hoGA㨃-el׾mC[hy?BP_ ޏ7Tk`_*G Jmz Lh@#+?1Ӌ?oqiˉiRĸY2yJPz5kv|2x5u.M-GvCFV&Ƃ-m!ڶvO2 +-8]ew oA㧶b9*eO^0‚#ىqueI{ye=nU/O,7Țw{aW_V`skg50]ѸV]T5ePH9z-hw~Q äXp\_a0,NzT/NYΒϸhv\cA S8{Kv-ۨO ~ڪѹ2U[~7 N4CF4qzol| #W{ڊ*Ucn>miRjS*^zn(ЖH0_)}u(n^.CDoTunjBCp25h^bg'HP0;\3)zb7ӵfӆ)+LꘗUT,Wlb?eߗ9˙'"${ Jwe+^n 'MInMqk2'ExKtMָVoXw񛺕HJsb[)jn6h2X]ihd}15PnQN [Q$F^X<4Q~̱Py7M=zɄw~|vyj}ABuKL>$?L|@f1 Maܺ]JD.K&J,YQ0plCALuJe Tz1j*PR js6p7ư>qGx`=7ЕBSq6>ո^P\ }ww!MBymW=сUW,t Q2GQk8nR- O+ Ğft}Ћ 7a r Esh롗<8qg` SYIy:;ƣv?B%ђ~pf6M3;QGD9apJ(b;iO(çiN:Š;x`Ǩ><@(Iv4vpXf+kTOE.9soIJfHKMh?Ω@@bk^#f!hD/y8J({gxRo+t:%!83W Tl &&Tߌ āƂڃ'5)ѥh(( bn~Nf5PoV9Z:'\e8fdq.GݎalF=QSKA O2|ɭd5]*@ &,ڰUb4Yƒ1.IB٥q 3l!7m|hq@{WrA;Y_6/A)ͷv)ڤڐ~VImUڐ-es⊯ަ%'QB9v2BMy0$&)`Tf ;6'F}Q.9u^܈]5r܆z:TdzQJ曢Cf@Ieu9&g4|A/)ѳin^]6#_ 3gkųcGZ(gyөC"XR7B2uBQ$P|aD$՝l801᣺+0. xOyJazx;Jd^vyAu6V::sn.~34\zpUbP˚OZET5d5͇F/H}N~(ܹW \ܰg[\{ZQOvgɆ 3e_< cssP wyt]% 82-4qsmze} e WmS%6'mu27opi켾|_s(盅SB+:qw\B}2_d L1i"-yrhlr𐻣+Lf'`RiI>ST bs<3ěShXTǀ$\NSэ0U|_&VMƽ>T͐D:"b~^/ѲͦH=ǁRkAĚF 0CKj%"J|]:$o}8Eַ⦪]<|B+>X XV3:I-+DȂH"@mʄ}L*ʫ0LJC^ ƴR8XaHQ_Mإ`Qi6IX0lPM|,rSQy|Sn@[řiN yĨ6Z&X㼋ZcKtH!_T*5K s´ !ʮ<]9DUŦcƪ$@'9x]Sztr}T%^ l٥ p'I(I3]bdaϏ,-S;e+6`\]m۩wMl{&r5Q[g3?ǻ`2hZj/2[hju׽ho0)p=Â\}=;MKN̘jgL:Bf(Еln2.II0xOhY!fdⴥV`!+L#$hZ%9kƾ^, mi%AYlȍX0e/=LyjW1U-K3Mok=L. o4yI>X$%~b.2 l O<—l"e8'>O (@v-r5xj{=m>]?f%+1;2fХq_0aZ7~Փi1A:Dq1>jƂs[-Y9 s9Q <|:u2MIC|ȀjG@´x])0rȦlof g]ݳOQhф,X}3د޴Dž8ARQ8+V$C/ۤCK6pkdM3" v4m H>e/M]S{t_7,T;%{@xZĝҫgZlΫcK޶읮5gpE#\6YS.y蹔jԖM+~2qR9L.JfE%9RhLϠC&b;Uv3|KOUם3,1 BI*=hyn2)nzg~[a1P,P2|BPol--Yv|WXs~LnbB ܮҞhUh$-fuYCHzgRp +-Qs:Փ>IH|X<ܫ'> ;q4Ic>*qjPwmf*N%gG6AG+m'Mq,!=8sF7^~t!!j0E1 WYd@N4g`h_WΪqVyYda,_i1#2Y(!RG{v=c `̏,_jpҒ&¼;ܙ-j2"M/p.>9,vҐF˙:d1~{9w/3@=8,@V# xWL1T,X88[ ?ԚMQ:Gw!yt: T| a{E}W WɆA]#r`@]Sjm!o'M8zjn¼\y2F[QE]@ oJA}Ql%H&$0d:H~_&wI9&ߵ\Di'_$zuM^n%''r6l V"[ ,99'"묛 6/Is6&AЏۉ75.GZB`+TsY)M.92NA3vq{HWs)^*qfD?{G/g!۫V"jq$df,]Xg3dJgW;YFp+RgջJ1`7"SrpRUJbCj2g۝Y~6"1`J+ ϒ29Wϼ|zm;=E^Ӏ A!.@r< ž܈فBNB61+^[6|mZ :ekDJ9q"7%+nt݂R.v2V2d..4Z>jsn>".lEzˣJIPg83ŒFdEQYsI^[lW="x|9O1LȲ kbLhmoW\y RtYqь;sƮ9Ɂq9 |tN= *YN[.6T[!ե=l*;y&d"IQ#!a_VQcl6l}8&8vlZۭG'οCrK[ A\*S~\+Aos3WtrQKckbN(- FU߶ZQ$'ǭޱr*e3x5}ůC8BydDC_iRv} +G_7+!X˾yEֿT"ۢܙ,|UCE "sbӃ2}I~_6ya>Bay 1O{09<}(ixqVJUE1/"#hBJ_ [*AK'Fn$@SFcg,pdT?TX'o-LjW{~jD\&9%,^' Gg HwmBSs3nqh39F3z~/RĜyms!d !찴&; 1]W(A2LfnH  uu`s1KOkݢZ4t~} Z"b{(])5xkFP &e} Yk¿BOup˓K bJ늙MZX ɶ_r@g'vazk^7r$N~6:% 6}W?Q0PNeё7zP}zNVƒ6}2XJչ5V 5iy>yrjkdpVrʆaq7X$bͪ W`QӝVЀ1'*,R'/~'Qtq0BU1-Ŧԅ/qhPE1j1d]v.<{H8DT#4ɵ 9 ָi q+z{\P+1~F|sP/i,a_ZywGN!'m4ͷtdA_RMaPت<'U%T36(,fRZA`!єwSDU^8^5pB}}m_N~Jژ+mi@7c`$>oDTG}9IGK FHE QYBbln)SKoiuIC7D(^^ne~KRxOҡt@nF~&[V;Rz ]V/hB}Ͷ'4g ʺ}">Wq I(SP(`kx bL>PHۥ$;Bo Cb7YN>TeUBӔVcr>",YTFps_>ڏTi| Q]Z!p]Rj HyL6-R 5"WfQ?v |Vh ntRe< ؝A \֘U52ȉk8TaM ՚(=,ڡ9{;փѼŒ2}.H>LvF]C]SNUq!:q竍7˂*}nZ+TU}z?\f9Ѷ6/E!omz J+ 1~k 6 [+ cI h-dDX o݀$~vJ5>W*_ϯ#M۴4DVH)Vy)QqP!B:tLv׌I0j ri4>G s\#^x$r>qu^ʖJK0Ӵ=+P,.>ĢyXO ْfqbH|$%Sޙ)t$v$:ܞ;׋N{Q+.%*O)3z֯t-պT9Wu7d cd/F(sr|f"<#ĪJ 6"R ! ;ZCuU1%X|O3aY+u5Zӯ1m<=6"~*A4gOT;GMӁ|E 8Tk8g,>?>?e? UL(_w_Ĩj yFOBٵUm*."d+P4FeȺc.M)PA5B N(̎_5 6_ZKy8vni8ӋM;]nmق 1F%@/H`e䢟V[+Җ(9H` OOZSq2]Hk,YZ F!?0pJX{$a> ;[AX#'Jh٘,u^7+x;{ۋ&*סe!eVi^Ь9h!m*UU5xќE*)nu Y*mޫgcn&7Ȉ6r<y$lsl>)wKe~yQyXMH 2`MKok* 㱍,E2.F!6s Ƌ-; k]宾ZO}PmíN]$*Nov -V#S1vA.yBgzuRtr,1Zi[$G7[7l7$ٍL L;=dWu_q%F@w Kr7kײ`) @E"0bkg җ1E'Fk߈!,MoBVs!8wf2G}n RPHIސ~Q&ZgU@$ *7 w}`?\5%X&8˖|ZS S:VF h#Eփ9k'jÖ(3'"zNH>]n@ j ꌬ?A3N8C<$]Mm- Nۏ >ӝW-m6-H-|{7%Ӿ򽅖k#Ifk*9{V!̗u]U߁ܽ=e CB{aLO'1Ǖa|O~Ǥ>!';A_4G'.U.=0@mY.s84%4ESQpt硷@eU-N~7~ĥ Ά>XboS-9g+lS ys$$t0oN1#n=x4dc!MEESMA#X]pT# ;$Eߘ,d+1 ݮ}Չ=SOU/@UpFuj%H͘r~陽 ) ] .Np}\GgM{/Me\7nZֈk$5YDH>yG&Orޙw:Ϙ*.\'HD^;; tXIPeuD6n'&֝sᲜE .k{䉊 YGjY|є;FexrԠNxm.vχr ,e#>܌lzHY-#z,Dʾx]<0G][.Nąi~1ẓf; }0a+>9/ Hl2C떪!n\>06VH~Ρ07|j3v^aȄ!W'} )C˛AGRN8.R2D tySO$3^{;%cW.K}7fFPCe>#0yUD5>:[(t_쿒n74}dG{t5&wYYLuj!8Ϩ XڰiQP\j(诰|~ŵ$n7`qy6 .6檳zհ =[0Ƙ@_z7]@Xy2b2!]µy -TV"bM5FSF }`tR`PhB}S khgbPT <{O8(U&:BL.ȼ ~]n!EW@KBDy )i/W/l;E?a0^#m@B#տA$`_"] BUO) 'XYӆ+*TL~:%%Lche@$>$%A .lk3u&>%5cݭm;w9Kd>wEJ-IIwp[Zgc'|g+gEwpFeg{WHS_Lo}x{#WM`J#Նs*ƻs&:-!\ XRU;=?g!I! {\Y:DUˡ(y9UcS{ٞN$#(q [X\$5,n'dصN0?3{VƕlO*i n-6Ό~c$Ҳ!mŦlʻtIAP)1Bݛ,8~Zh(kj7fQC *_UF!ZQZ s&srmZ~TFn[奒?Л""Y2M??*p 9XK񭡆.UK-[K!|+e&7iKIxT㖮U ]v.խ"}ߡ_1jc? h~,okcVvF3pdCzF/ +Ll1{Vt:Dm@߯mnu'^E]_8LSAI!K;i0wRfCc oO+ۨ~gE4p!6t^FbESiJ!iԓ'Y0ldȄ8ohP=Ιp"oD7jԌӥy)GY xb+8Q0H1Ӂzs F_KseA~ rL{(h-#SxB6RR2H~RiLMqe/dֲD"dÿ 0k)S.:|dN|U-HW*QE* y3\cvtN:NT d2'Za[$-E9*oB WP\sW=sIЁҌ╳MJ$Ɇ.EVDK@@Uۨ@ϵS\}0j ]{,*fBjJZӱ>D`DT]f,e`uQQ %hMJ=LZ S GFQĖ\'R~R\)0jګ(t<7V6z§|5M=p$ZF^*ЄP5<9U5qWbHA ]!mS-9&9vq @4zm ?KR,ngF|Jڗ:0q # \5Yqo}R,\Oh"H?Itt[xا #]8uj@C@G74Iei*\,0,BGu-NhSsUB拮)`C\| ,;߆|*ԣ#""GOkT6ScPw̪E<>^U 97A$^Xyx94 #dK7/4{L{(ehƒ'Jb&WVxKaOͲO9]V{ DTWh.e@|f6CZ+]gq[ M6mu:<$$8. R>E1]ȢaL)(8hTr'i֕J(ɜB/R*0-;!Ek ]EVRS]f2 &lB"YqsT,F;zb ,5*(qL>iv:R(=Πy%׏< Ap@ɺd`>w?j0&Ȫ+Xd<#PSr{_sxOm~A΋.N+*('ut2;훿 fWF) IQxJ")Y_pʜ~bSSM+i 7t-f uzLN4 XrcEwI)WkZV7H/ʁXgYއǖҷGqٜv8)vD@ i*Vc|FV@F4H0jߩMz0@{fH|d6O 7chTJ",=]]O_ ?Dog?uhvdd>bmE-?}Bo U1(awNDwb5l-<E}8GR#R\ϊy19|SbA֖(dZ|ªt}UӫqzubI鸍)>:sP+38f#sه遪|)?G]97ɮR {H5v (9J, @ͧV4DyL@~RaD44}Y>Vm ^" ajBN mPrlY!E?^W=r)NvY_oSYtW PX:W; hF,T^Cbo-&38EAGx}DT(aY c0oW J7M`aښ")6Οpzd,98~̥C$pؤp~=D7UG:N)D*R.iա;6{u P셖MeekIvR4ԇ h 41վGlݟ-p@ ڻH4_7х箑 pmh wU?jbSJl+,#ɹl%wђϦε5hzB?Y7Sgad5 d B>5b:!d/rɽ|BMI{1 GA7 ¤[ʣP\!vH0# 2FDRf9vpM3 KgYڜ~FZTih%($Ӓ .%4'sE'O+'ڿ|:qE@W ^+_Z_$lo '%+]k\m11S\3RkFϰ\?C+7F&-KqqN@-u:5WI 6~ӵ0xo` )XhQ,i[&3 ?P(ħIp4-ìZD\!xI1i Y/ȂLC(Dr;)K]X7 ZM~Ǵ^ k,-"Bo+ mOaX9Lybe 10 iܖ[ZcBR3=w`JG^觉FIZ yߋʝTU͡#] 6N*\ީĴHQnaA̔HH(#泌@phؙ Vp5j5˒ʸ}|9~~(ZGiiySUֆ\/TdoS30hjXJ%G[cpRsjai3k>$UAзtr }iM-slU7OKځ'34L㿎lPgPB!Gzp(kUOu8ԶyY ,&`'HsNCc x:Xh7tξBR#6v3#M\mv&& . qhҫߙK#yztE%ZZns1ܱ(H*<T?Il/ĸy4& JfԍHd'*'4U Ÿ%w޹< N{`];x(wUGz9|(L Ÿx14#vDc͖ R5I\7K.UGQS\Ǧ #{JbOw'%YG6hh4@KUNG5O5jGgVFXN:RAdc8ŅvB`,m!?p}\S@EV%هka&\"e/"| OkɉOmōsC_NZBMS|'~,*-[$]G"o=re5JKJup84%#Ԩp?H߰/h&G T~fƝHq5O2‚)JLLQiȊ3i>$-DkvC&s rz=gɜԄ9ʊĤ8,.sQy5VʇD2c1QZ{f_/Q3D̻7vH{,.qxgCL9!Sȝ]>Mnaq|sQWs;`(US%ŒvˠYdΨl\!t$(ZC/-+C~UohsE,t3*Ќeun.:nO2{A !9`57uZlˏ(ռr2[3{rAEOxM47jRh m$QCNʇDZN9؏\QT1gXܠ՟&7;W 8-nmT(,&lk$5xț4cU[Rn ^9p:0p@VeADLܘŏT-S+ȶrO~_HH5깿IV<[VT}5(. -3ʯg\L1a;MN(U [>噝.b?-REP"GxH CU%d\e=JU|SV~3)ǿF.JXm!LxKzyU),0xEަG_mrKM~K%w84̄^,E6˾륚U2iʄ-k @6?6֍)Mw_#(r$Ȭ0|tօˆ94@Nf]޷!xmt9mS/IgOWDU Is;LcPLX [orY]9@ :%=l7#i@Xڌ{ m[ҷ4p B_ج*-N ʷ\c&m {[3Mt)Ä@be ޞK z6.vrnSI>e>1ro1D/\'|0B>x@Ϝ :iJF. 5ޫvmU_N`ʹPcg^o[V`w,yPԏi:I@Z$x \Q?euP",}?"5hEVvuA#h|,b7\n}Ƌ?.9F{JQiǹŧ+s`KSWb,elGm ^M`"f7hܡ8/IBMFqElAyf >La7:`@'KW&sйRkWi [K/ˠ+4@1|%/<|ԀYf4*E}EJV>QkY$t[L"cUUT֜[b%S[vTl@GWcKj4< srGTW9Xo A|LEQχCM 4&%Uݴ _7r`r{q(B/9D?P@r-L*h޴պ]AZyijg#toG;;J8C6>A$ܫU_pIq pO m?V$o՗)FUO]\8(gO/uuU(IcfZnd.Vl.sc}q|:ڇ:4s%=#@WyjSy!Dd\!8ЄgT +h9%P>~6gv軁,=<%Ar|NMĥHZ4c 2qdGP{덯rQAnВ>W󕻚jX ~'*Yt5q{/bpҽ6V?ܤJ:1bh@VqE3%[i90W]ϖ u{@)^n 1id *XOX$LuU2C;b]#[ҴGڑ ZK_Z:>KX[/Q p^pG{;FZ7L(f ~~^-GM? j~ ԉ[}zj''kk^]u\^W`̹ubE@VK-weE+2ȉ$D m"?ˍbb%]["tPV*nC(2^QS)w4eV@_MOFAv&kϚ^rXyܡ3n~vJ)qtHͪWbirf@QtX56i[{Ts1n_OE&0GH,*g򗣼ڇnB/:*;%,n:9ág;0G ~7,wmރcS7Z"˗D>(Ԡ%i!mUj5#XR/M)zu]RR vE`| ^'HǗ8>嵀ڥ}*NƆ ]G깐,IBuo<o]" LqЪ̢m~d;yЍ+y[;xv1PFC"9f{Q ;ku:!+B9ks܁pRm\z?eW_9x&.ekMƅQ 1D8tEL,ULf}s,RNypad=cI?{V؆aH`& "$h;+T0|Z/`B u{CxGo׎ ^0Zkޙ=9*K!r(ƕUB/[ñ e"^DnOJj4K@I֘(Q\U&Muя"-C03*t ` +:u8 ߑnaC!]9wDEtY@Ht6}M)LY f%WTQ_ p5Gz,.M౴U/HzԤ@G+Y!?VT],=0$841hInmji$M Qc/d10A4`,ӰJTՋTᐻ; :XTm޺qF|SKMVL{ABpO?KVG qTX?)]@ɹvwR>鴀$|)jwXRdTm g mA䝵*ٺ"H,/\XW}rA<~Vqj df߹P 'ϳLPI:"\׻+QjUL "ɩ$v\pD_x.)`HD rEs5 C1rڰw Gf@hr عDD(FM+.'D>.A__80$ތ؋/^1lS=C*d׶ܓɨZA tgqSq$BDK9vxZp6bpPpJ#gA3Hpmn|C #%9h>*^nq"Fݫbdr5X׾\57~9$/DpՄ[ lc8v@ A66OVc,{@GR;1;,wS9".kj^X# eQsk={v#;VV$C*RDEhWfpVC#$GtzMx{qi5۷ I kKKؚxٿdr}AvIdR%c<1.8uw f p|u1Pb8#͡MqCͽY[E/ PjCmS PW#p˻~uY{~\/-J.<4m9~Ys/SzH&oެs"xA=J-EnUF0Q䦀WM)|gJk$P[zKA}ZHf6t0^OB()ǹ:m&UА'OkBC_eT~`̐L(mZdlP=ha.h3Vk`TFd {`˂-2e7ŧx\Ȉ:8FSl-g3kKK R%J^1]* 0")]&י -8i㮍-) MUF]0֡0i@;WOn tQJ& hcɴ*4p.`|ֈtiو$l p$Qe2' oXm-NIx8 υǂ=u^9 8`qr427tlhOil?h*]J vJ"NAԊ%olq^H2o9Ȣ`j73AGlS2`*-0~\~)1tj+bPIY>uGveeӵC.po[4G&rIh%j_७ ,mP6ܧpBOڼҗ72Mҍq:T!&jZhq@:tqfT_c*ƭx !@Z rrn{&zQdk,^"n_+x{v![bux\'f]Z[|iZ02v.u[ ~-?gJϑy._ WdM|2kh; QS~K";yšC().&XPUTɚ=P0Qr39䑣ؽbx_hpe\dr1T'3;X_*j^lmB?;o8rL ԋNJwz*̹M"JuhTVFɳcaCoBǓw%z}vt1hS?ӠS "IRNrj$sq/P=w2 <?esi=yƈKsU~ P>!,A_@iϝdpU\!nഹh<%F`jsCF  5a`QWO"6F'wI4@еOn:ӵg$:6gLJHPz^km-]_Q5?8-x)|՜^)Mqeʲp 8$%FG`h0ΔhD >fab6S1t>55URS?æA( ~IT2A>4W35+vٿvQaй\b0zȩxe<EJ$E?]xzqM]^& N8*!ӗyاbX; ju=1T7<{,@Fcyxeiv۔':ӘZzIzwX;$P0e>.Å$ڑC|=p\wne21ƆeYsAj”N/Cꡣ:pZo-E^7hJ@3ņ*dbG"5k>5o_:Mk+?B<˴&igGᖑ3kӫ'q:xÕv -*(M)u }z6ZW|g,u9Zݭ;{zS㎋oUҖ#"@ W?pGǪ%lzTOb%L<48cGn  KhN}]rrb =$u!{V `Q3l+W W+X~/sQ4}Ko&gs'ޫʱJ~p%Y&~l)Ζ¯>(v!,sSy )~ nġWjlPf21닑)o-=mb5t?g]Yě1oDYHv~v9y=m  xw: )uvk!AT&6`[l[[|;$!O<VE,GɷSr3!kl'<:e|o|l;hFf JP6B%& {7s}wo8PҒ'Ev|M'K xS=;R8]*iȋy %6d=cG @Mbޯ; VE*He+2roafj4sP|+%(%43d%e6KyHb, 7BZ,%EB&[Z_H+Bky" ٸ޽F}s<; FjNĶ_$F)4&Xĝl#r-鏰~@>iLJNw̋6$Yۘ>K&={?hnqbϧIυ6KlG-wi}1qSW/K܈2ăsɂfIe儹GVٔ,'YT[ xVۙ\e xSc%v-%4߸1ٺ@¼̕%|vޮѤA4ZG]JgT؂ht SC𨓃Yvr}gNB ]Bn]\5o\+,5oFq!ASw s'-?>lK23=~Ee't<2d  6+疶rᶧ %K-3X>nJ{C Lvj)qZ"/SFJ5ŅMgc@23&}EʇmuƻF#1YiNS$1DN,UVw;N|h'hns Ur V ԙ7miWABsm@Lp IGպ2JrY'`! &u#*ݟM"Q.yH S&VTޕ% +m8狼^sqvE 퍁\\KNd }\3R[r:a[2F]F3}tJQ.1`cQoo-S^rYusvʔk֎rN!2p=c7㫗mz/n'^`vrh9@ m0$d9\]m jDJᶕdm446/Ve#c6ޅm W-7 mot?U^}ګ%H`6KZX\ 5i-G 8pv(pk rčB5co;`}B7n+]K=NI"aNmͧ`$_rq^d6>$(tҠ&r`ea`pfL#:˳/`Rb95$@g5J^ڄ:v &YQoHzDiً=VX(-#1S&W4BF?,Fb̙;lE 2~p$ywK宍)fʲU'›u~iǰGH?aMa?rQV'qILZQ=s\f ka)5޴pCIeJ:uٔx[Vgu+-dvR9(&Y? _@&cUm"@Q> }`מJsTs~ͪ슥i?޷d v6 `z|(MB`=^6G2l>B]oZF0 m`_Fb(l,.b _o< :- 27GT|~b04yb"c^qb^TwpJ79`#n@T x_/[s}o .C]t{\9yzPSBpw9*XjCL#:SN֯SO[eA3I: yugn -~{:>/1}TnUqpr߻1xw' pEG࣫H8N{jFuNp?dL˭iHz|ZD(XMG:CR )s9 g6+ b٤&ݑD$i>ACco\.Ny\r(E?z_$J.bk~]a-g gar=j1c)Y^F]9W3Hl#rZt&Ψ9;F[&VƯʖᅏD=C A iBQKeB8#K귚(Jne$~.|>0(cgXؘӀ+o! ̷W)clHޅZ YMXƏ/^Irvs+(9 i;E6Eu:Po{:%.ЉŻ˖VE4&R~gJz*Dў-˥~i'YP_ #+#u-P_R .b:wl;JnQ E^7WbpJ@e*B7RT?HkypL†Qc}``&2X B TpKy4Gʉ;ad<' uzYV~e-M$6+6E*P_EB{-5KM\㰙\{a> G,r6sht5Cdy'H_'Û"iʟL +,[8UӃL.+3,%b2X-H,|Me9Qŋu'ZA0.JA7oO$2bB83zE#ʎxpokz Q?OFzp c?DuxrlG]% Xʼn*^"i'kn!o@x(ľ{S+Cqrsmd+EqՁUM5D{wLf{x)¥\DqԎ.zR6oΈǛ􁪀i$IOƧuGY`"Q'i OS\Fe’!;etҼ5U9[ >y:[ZI _s#u|%..~zx2LW\裘X>gQR0T 9C9^ ]5';pnm娗VdK~¹gK%sq{!Qi>8ZHe2 ]uTg&z)Jv™)\A~kPZƓ{x@co#.g`2##'Uva|)7N$vH =xPJr}}/YLZxgt/soXt[LoXwYe֟'νNqJ3/T#3c^]mʁeu1v DaUO6ժ];8Rcz>vS h8 %lZԜ4taY.keޙpJ9U~ 58;ܠ1=N-φ@Q2=- {4O6Y nϼKmU^mKllg[BUذɡUm]vXLݟAɰ1o7aHɻ #@OEȭ9_$Z[Yz,cp~rAgP;"2 m#Hsw vX^P%}x<ٷ~fU4Q UŤ C|8Kn|5շc8V5a&$U&`Yw4bRِx8t; ʭ)z,˙!T ~*->H DK`5 5A 4SdJG?p'!HCô(&w3mALRN X'oZ:J`BCUŃL|up׼|p8d1^u_)0/pI1WQ+RPVE4٧r$Io@(Sre~5ɯ%8NUd }q#_IsozdAl_8{ƚqzAlɞ4F?x `A?TJus!߫&&f:5*1Zcf\4#}(.';txX6DgMO\%OWPAߢ&?2)BRqtœ{#:RͲSS'4I,K۪,|t΂p t !B`CcJ&4k"0,$\ĵ\5;ߜ ^!0Dpa5׌Zb ~Ӻ{Qf̴ʗ ؿ9TOp"s)7Tc`fg:W dw'r~lPJu[g=9v_JݮuzYzxRL2Ȳ;x( (RD宥#BSw'%Y<~5%J9 GTqL&SEį?#6K &{c=yf|6\-H6d&S]PO,Q:YJ bT9#kFoT)[b}DʉO䞰4l@(*zP!'o$cf#AUe/~5 |qTís.6R fD  g༛HrtJc$,);[n@9,W=GWm<5ḡE:ϭ0S(dO~G$(+|rԓJ;$q}*gm>^:oILRWjX,m3xaxQ86YzB wǔeo7f ,[wr&9tOxjIƽ>wo[ Vfc>Ut.=H fTMdTaQ?DR?m{hЩ-QېONYK4GB0I"L_#Vbg ľtG=ϽoS);J.̂ 0р&$%wGԁ0/P;hH[ȿI⫄6hmG NLlp,0\ƖF dUCӲao9ZR@ShӛYAFgqx2J$?[ln+ĤPv-IJ @n7͜߆aS1\kYK ЏM|' h/Hihx^Ju2)= >( Дo[q.=}t^cPU٥%YOAaҶ;{#%vyV6յ)Һ]!c3vK)+E7ha+:-g25^#{c,F @Uh=d/8Ƶ9{3VWQi/7#  !P;vۅRsCFh~Le*BM6,0?رvm*Gj9Y%`̕.m#y@X{$rpEMh&R(?F܁GQ_j7>tpb?{c$EL'$>JDLZoj]q ra~&ۚĭB'+n+Te$i>ߏu!ʥkFnTw,;hF"@~jfMiH-N`<ws 18B72Y릟zYxawpC-LWA Mw xឨFM<ቇe4oJA٩Y䗋{n YCXN%5KDDHQOЎ-v k塯|bݓ#cFxNr V.v(g 㬇 ρwx缩D/M G5:s7iBX qy0Uh)Կ?Q&Tvj%v )~9Vw(Z:$ ۯOγt76zc;sq]~zy.+S$ʱ$S߄PTT4iwKz}5П{9ӏ.NR)C֊c~q\tv>#Ԗ"A={Q;7ҳyTЃ%'@W ?!3UΗ+N6&T0fp ~4YLaK7J(!.@*p:%-0$)15$\*o#=V'b0ŵ(+`]R>51lVK"ayQͧΤқ=YT_/)2L9 jRLP )Huf;e!YɃL2Wt*jӐŇAlJCuhCLYwGccΝ.HX/p ^V'6w55Bv-BxԶlԖ/yB2!h5CK-?Lv+PtMs2#_h!Ty̩EW3TdA+y7YZ|'J^.cOQ:_Mj0{G01:]UɊZgSedn:F;,TMdk!FNg'-kjK'@$9S(3!ѾsLgaB:w3P1!r🡘y@5zAUqI׽Ob;@IDJ~Fڍ- i6]߻G 3nX8 !$G 2 x w?\9iyD;Z+3K4i] RCjpGV|ZƊ{N|_?cyTڂʾ@t؞;:gqLV]Uʲ>A,;.UPam?ep" 9QDEP.[ >s{OTprK+7Fi猄u`D1n_$/5#Oӈ+U,oCZ= /Zzi^ ^Th+bN`nF q3G$T70YB2YQvD4w*̜ۥqIZ17J-P25F #å#C$^F =FYw|ӫ'ڊ=D$qCkW^E!:*&(f Hh#u3Hch8~ w9к"QYQRMY G,@4'd#Qnۜll7g+JvĔ^aQ)Ӈʋ)xzEhRv lX,JC]"lA$`N\|87(N|t,CHkc N3Zrq_¾ʋt~6Rw䞶^e2ъ;3^0>.ЛOi1Fmmy* nm#Eɒqjvz7eZWknRi O!9I nҹiGq;5r9wAR<Ljw1޿WUöȎWKvՄ DyFلʞ"i`o^{@ Q<0B1FqW;di]"D ٩Q8.*iav/F xeI|{Cn* ˫ 9q@V?=J3-D|]E9Fp*uFldCLd¼G1[.SՔK4jF*['/juV+-^!XO Ee:4}z'RFk~5\X Tkf6EI [ey7Y-s 4/pDѲ2ְ܍ztcXXKgP|}bKD' n8xxNFJ_ؚ'~VK}QMS_,dɀoR/? yN?UfNr|\_9CǮѤarDNށ7U l5ݱgG=bbrV#@u\V!\gm'j`8᫷NR'>0+6eR&'=}ٚ'V߈怈mDFDHgwzIBo!(󌵳*7/Vԑw>"; p Zmuc^XGZBz].)iq7![j,.Ma~eXμCQٮ ՁȡɃz lYD~,`eﵟpr\4 HEAISmo N@D/ҦQŻ|e"f]׊J6R/JNO$:I=!wm.: .ʫ2TタuH/p+'բ%;Y1I#yC7!}^/n T-ow“sL< ¨>7y=E7gDs*$Rխ ;X2iqS>^{"9!\I!k? )SVǟWG'bt$w'zݡ(z`I\JD:>5\4gZN|zG,*¤F.p5=U1tȀ\ kXYFCPG[O:%e%7c !_VIe/VY!Q%DM/~y/VS^'[bD f٪\ $ h f:4w\`NC6jYM(L>DFɫxLٹJ`tF )~ gdѩ'?1|:.='k. 1#IEQ9@3c+ x g|&4ۊuU 8s).4*ZG7zGg: ) 5[Jsf+)km!lR "f:ۿ[Cɍ#Um"ojGRzjPF.ʍ9u \Ak9dA?=a8K;psF{?@X $@X%}_>1SO\[IVzKmֆ{scce 3&]ق-NG^y+#׬MZ+\1Dˆ^(zA'DJ]UsɈs<@G'0ns,|KaؔQ{C}cwͪ'DjK Nb=}P8q~V݅BYD< @qGDq8;JBz0۫ao1UYnG gmϝokkTbL>Pڻp~Ǒ”Do^f^ڹo@듷+EoR,iƨOf *$R2G/Bn3U0L`PBʸOO1YêkAgi! qa-6T%)k@qT#䛞;ʈ>9y%RpZ͑㑱r{ZIMa!EBT1 ;<ހ|Mj܏j+Qv(d,Gt 5 ޞ);vjTѹSǩJ=ju"dl5YUf`:_sLr-;jKІ^4ADb L79 5v߱|AD~;Nz) ds)LR@Kg{hSgh4Vl􅳪Cʠ$-LKHgKRqX@5cw IY0g&bX_U($!̧- ë`<ӤcG `+^cLaIaן. ##w ?S1%E4,^E@cug qs# ڪtc^WY?LsS&?T ߺT2גǔXFX!b?c2hiZ(7ߺf9Tf䇒F}*. {€:KR^l.aJx*ÞCQŦ3(:/[Re ׳OW`D!0R|_L2naIW6眾<ע,Wd?hȌdFw|ډ'T͆DDy﬚R_N^[`[b\jY7M:P DG:<7Aԫ~3q}Y˚ / SwU=rW&[AzF1|9KäC>{t2 i4VMtFa)Ga($>I3_~EC<@Ei`M#<dDmJ6̓RI?B}wF ./8X>M[1s0z^Gqfqa/:"BYؚB<0iR8If6 u#D#bc&_ݚPl7"ƺrDž s`Q*Ϟ/͟1W|ʕ=m,"BÈi{20qi j[B!K8Tb6!g *=V=}`EtD6ޗR!!Vٟ`KHH-x,{rxqUW xd1 w7|2O٢lѧ?^]?gC O|\4B֖_Ț1ؒ>e"ýH_cyC -ްITn_ \L5ާrΩ B!փH5ro S^'4Y;IIhX!j#,`/Y c,'=Iu,¸2fbMqլ:=y-zT3ITuc6nd#4`-zDYeL+t\1]Rܗ!¬ ޥS2Cw2x1(ĭ̧[XA'Njp=gr"C+=s}鏱;5&V{:UC` 1: +f_&&\iND6ޝ( 6DF~8/=Zk再?UCǶHQ7x27H&S=XxMu8x*8$OrqmЀZ}}[e?;qkT5p8ΫȨI:ZC!)w޲l**,QGr R篿W+'@:i@|Xw'Z{eޒ$>׽!̧3c[7-N᤟jA0vC #QoI"=,^%]x/} /]J 6wR2* Vp6R'u"Hڏn/6VN; \`Xjim Jr"ςϢI`!gUb7`4ғý%L!T 3&`kxĖ,ĻݯUMf#xsȯ8OdeVD5wZTDn`rD;t4;_D#)W^A˰ ^6IJMwO\^ƪ4q_25-lϪ EHy)'(c7/ߘ%4MY>v(~ 0gn8$qNgZ[pXZT=}R')'Q7}:JdxP@$f'iRfs7ݼ 2A_fM;YkC>}K˴ &MeMu[PQBb,Ȇ[!>nF`$NxyDۗ98z*,_6,bA8|Z?M Š7A t˗dԲNui漶ulD2lc@5::b:z˻q|9rq?JJ*|)-Rkk#w'bu+@Q<ą݂Wugg>ór#M%<)ߩmk)yH yp-&9ъ]TiL3V䵷W Ws bK脖o6jQ55P+[bp ծDC\9M= BY ?1rߨ*NDt}إ3 Ib>c^  "i4VlCye+W;yJqBFi8@S?*\̳k?4B]Vpi*ywnsO!GQފ2ѹ`pH@x¶jE55,G#+.}mii_=j5};b!Gi[|bGa S]:e7)fXoweu^4r>9%}U^/i/Y]YN5'KE]=J(h`@1'{'rBZ 5[RPc acv2r9r,Tޕ qה-~eE˯28{H808_wk"RY̊ 36NG f_f&}C#XA<"vcWTHt z !}_{n~uF5C?J۱ikĐ[} ^GT^kLqD. ȴeVՎ{B1dKV}·}DtU2▻N/C磾dq|=z){]LPL4f3:HWR=4&4[Lx 9} Y n ƭ@gA]sX:j91TSH,@X6AhK‰Hl6^M97zK5yZ4L(sTmYb[ ~=u؇ju:?EFYZZ/'!D!.iqZfgbOdCXft:h{H4ӆЄ1; OPa%c)fk>$D8"8- _^Q5.qt\£ -|.Omˋ}dDH3joU>|W E!/,&"{[ZSղ*pwɭZ"a2[! )rNl* oR1%Tf7~A=uXeI>ӅCWœ_rjz^!96 ƭU)JOfFA] |V *-Q~-`pH^~2З\7(eQ0A3(rMB'JR3ͼA8gTAi aRj$>;aB(( nt_ՉBnΧҽfA>LepCɀfi}|Y]l}aBpҚCx!G'1Ǜu3 b1d5\ Dt_/G.J R g*tŬ~)isX8p Eڂz CݧީmGKP4si C\4M0_Aki7:rP֢:66a 9k kp=(An9Hx9b xwRekb׋u̓I~5Rbo+_Vwdx269W$>%vXg8[ZHmkEw[c'ț r`}$T39`.d NOtS$&H6H!8MIz'7Xe6a Yn0w#aJW`U LM: m 6u7UWZZ8U@#UJ{uIʋ7dN'JpHZUI)fBP0l0vIDsir8cw OH{`D-n47a,Ϸ}gE<װV.s3ׁgN>|"j3ď!G3+@TXrj4 b;RЌeb&dYBɿRsd`QZQ#h䇵w45E7nS-6Z(G 4 <{DmX1kG+ @wo7f;4pk֥`낒9Q _u-bW4'X~ S w>>oW:[,k_fm|gučDqxrHrgCtL5- t@yUToxM4b2$I: j0 oyueHwP0R9nW]/ImSg9yX4k&l.gDQG}܁3Q-X𣧤χ>f2[!:)V;Zx "3e Cjmj]8VE.ɦ GJ*@[uXzҿظ75!U%BÊB7stj/K<)$F{jM?gFk3D. (_q(`k0r[7hi-k\ CS煮T|8qϓnjw'1.\rà;UvPAֽi9+o-Iw2Iiݛ&l RY5\j.}}0ǔ$Zv/fz {mDlyS_>Rgb2MﬡۓwVx "pHOb o%V Vjp\(<]+'xaA2Dz=Al#IE}{ B6:+/[>ڠTЖh*%)s9d@pۓ/)i+ֱmp+!-()ڻ~ UtVB,5`_ {Td俶(+~hf JzDzż0\֝(fgO܇=2A*4aufRr?'{]kN{(&Kg;Mwv]2T('~zQ]cidk ov3b>j*DaADmVY<Əԑ"{iQ}^~aaVka'ެZ N|˩<!@8{\7 ]-dg7Q{۱ƭD:kq~)uh&5W!|;z>Qy*x!20<[#z]{RC1Y5M$bsJwE_sKw\ Hm{A^_I]KEtYep_a}|lgUiWZ ֋c]S1i/RJV!x5^4C,ElE C<6R"m|A2X~~X4ic%cEF'@Ԏ.OfW;7þW0Y9"TO7"R6۴.sW^6FT y=Z5@!etTO~ʗ(GpnE~g 0423J&srjLCwgB>Vu:4jfwYҲs'`$JQH#V̛M.5J6Cbomt Yb㩵_a_mk>ܪO֭T<IƔ fg ڜ8FZd$[,/@$w~eS~bѝJ kY/Z0iSiC-_F5~FUd@ Fiq͊6O՜A뢢(*:/$S5tCJ1Gۏ$(voIb[t^F|"/׻${9;h2g7a+UTrH2p#tƯLiq:Оz18ٱr\1L@P]/<5QH!'INԚ vpʓ,&>q<*6Xq0XZ*ୁ Ɏ]؞J ϊBC_ b)/r5v8b3ʡ]3Hr=[z8"oN(.b,*.UzO8F\e#$>*XTΖU~KT2ֳЊ<Ʈi` ?EO{  fqlt v 01ۓ,(Mq]{ aiP(l g( Fh/[iEcِ蹶̅zS ,9͋9~)7tRw<2`hD xB$([KWRFj@tޭ/ x7b$QCBӭ{Tyb%,¥դԾ)l“;M,R clxyœzDSiU0[7 ,ٓ|{`@ZfjbKƇJpr);Mg3PvR©,g+RP5jEM`@l¼\挩鬭E/M9UqxQ?W&☂fƤf'\˾?!2n&A?;7q$3LFuK7sBKZ :?yFށLb1SPbQ:9/~7Z3<U|*ykMkR6F(^vH&ss?be>{[dtaHۜCeSi݊~88<ԬdH8+v7+X{uAb/Ub}Bޡ<nIBOj:PRC<[&7,d"E,嶱wB3T܍d*h9gpѷкqlZSAP<yZI[<EػDɞnu.gАjM7MlI#EWHDX`9HUVKn\dGu14?ʩ|ňw~Ĕ6%VEJDpWxn54k֊I#|׉pƭcylGkT[bZy Kf)sGP.jl)>JKy3Q9b4>EE~rAI' j( IߒqZ13Frdhe#jG@Vė`Wu@RD u$Sg7luު5Efwϙ@#YO7r+i-232(3^pC)V<=7˲0OF|-Fޚ'3,Lh WfT&c}hoՂc Rq8MɀmU$ E<(|Zqy[D rɒ OM w(`6SK2KA?nRH O9l(J4KvwWV:$̙(|K QuQ&A rmo)fQ^`zs,=JɅ柊kZUz]k;4m||Y!TŚt: oo`Jq0(P"\Qut˟Fy=#!@\jyl+s+2 oZqX.Pt*! a rXTԗ/-M/+KCb7oI&&дsښAT'ؤ<*R6I09 Ss/4y lx/l 7 &%;Y/VT`o`v(v7yc[OIFHt]HShKBU@›ۃJW08QF[v@E3OӱfkZt3R#rTK7lj6 mAu_Z(*{5(Y:j 2Ή?K'(:3/7Avq LMxw^e%)OtVE~%F<_[3|HM*ՅvޣFF @% Cop8:;ZwBݬK^+6Zܰ6uuV9 N8/wMA 5FU.ȖE ?jOh;-Yݕ"w5d̨'{B, Sr<2ٛLNZD"p*VDgգ@6+|~EU<άP8%Zbm4L CsI}D3VI2|-tkzci!pאk>Q?:nh3}\.v9XȥAi;rVʮ<d'fH<6i]$ǯw)5Вqs>EK k6aoʾB2?'hѯ36&*xJ9 KB#Շ`)1g12PT恑;PCe(r K4LF7y;" s_ զ2Pd9~)Vݖ2omWDSٻD{0xT~5L$]aT{^/7)uv,YIkhG(*Ù;qH%i+={ 2ȑ&gYVܦC0e7B^"Bt| I{i1{~oA$"q5C.5{4Uf÷JmR_d)yޝ>'3aɬU j+Ւ'U |rQyɃvǰ#DFr Cr [#n Aa|Hªq&3q? '7'":;kaUS N4rX5->T`Ezl2D<ҝ0 -%WMd,cP^>݂D -ꅛTÓɬHuZ0KJpW%> SتG/i`0Qk7񔣭|bpIX, }vGOۏqL_)"`mGCQ}QΥMPD.J 2J(T&CCbwB b^k.+b'^X|.F,a]VӇoW67S_ 3H(QU5.{>zHq1t ;I @0MeVh\d7PXY kތ擳o4uX2FQROkI7|;[`k|{ZݶD ſ.-& Ja-QhoPI`prrJk:+XofC{De3u=CPL Rc ĽHhO:BD;wD;ԛqH||d86BUJ[]o9&lpڼ-qB Ӂ&؜\P* Q0\qt-l6 y |pAJ u 5ng{iyd~V[:x܎CZڠ}ιs}Hܡ^XgBQ;='&H /)2nϕi2)@6Qora|;^M!:$Uf]K4vܿl(,;P* ~oI6~)/7Htև wQǘkl0S&?bq,$;8wGc(3N$=SmR7PQj+D6RicE4H,-6{PJf*V2FF40= +̞D?g&ѕA^!iH=1sRȢ-aq3-;g@Iva%:u(5qR2es1p+4xpgTy#EA!NpTȯao`4ո fvfMi? .ַkNF)7 #dyYF|<)>&;Y'>2Y?-M R;P^BӊJePFѯP Mxۧs䟯OVьɩ` #{i4};ħ߷6нZ"X'<{@u.uc_>C>$ي!ˡȦ%vKQ6>@N܋HАMB E#wf :oy'ҎwTuX^h I_z#9z"xaLdM7ui1K&X< ˝)w^09m(0oiqIgr![N\SC@i r/7Q0x6_Sd DX>Fom kBBt&c Om֬(SiE^pGK{EAy2/P9M/}vn%ѧ@5$Ew樹֦Zd>Bߎ=l7TD\m:[Z$[/SW0VdJ-8Ꮋ„2r)M <J x2I|M5Xm[IГP7/+Y<ZJc)V]#`r63! Pִi>su{r{ O{-Ri@ލK~> 3izfAei=?-ܳɼ VMy+cKbw$ذثM{4sQ7EwT7h ?-GPiK6 dv#dcM~;c@f5Q^e4Uo⦄ rx8[/]&YaU(ƟHϺ!WaasM@~F/) _Mb?RQLbN0t!}@ 3J,2naXvq` Qy4=0㪛V&/&gDA1q2&C<*2F%&aԱ.xЧmf@/Piփt_du&uC~R28`O/ݥ7C2wա! !GkƸoAQ3v׮#(8FDBn oJ(ՍhWMϓ;jh0G= l>Tk5w=`KIКk"̠R)۲fvX4+{IPvSm0Mb~nȏh0.R r`jێJ sZfeLiU 3^r'm,xxsji[ּQ{ƀD'B\*-*%dbǒ= ar#lQgaJb>RyPi*D2wŋImqMnZk`;@-ǽ٥˄?ϳ3[ϧaVZmMBkS=%ڧtS:zRT^5 njFbCqTn=Ŏ:M7.+,o_vQ7.b-9嫅^#Zz: $QZb\;bUE,cSb'l(H?Mwbu,j"썌KZ=Q$hq#/d8ۥhS fJfaKTX٢65J@6U)n1^ :Obi(:[Mnώ(I闸| ezDkG0m-ԇ*NzF3&_M P3= u^ezDzP "YmC ދ:!=uf9(d<[(Npz#UsJb.UZxGYWhpOG a8諎9uHR>~fm%C ᬸxdȰRp%&\)*^I(||iIm>UUDD`P]ndփ}xp" n8"%b&I4c 3;DO%Ni}U{Q8辐>鷘7j\ALv3[w&+2|vqSOm-pi$yl7):cZUTy̔*$5r.꬀pȕC 7Ad4NG3+x?%Tnͫ8^Bݽ-KtoQT%HJ-{Gixkr $BVɐLJ/THU.} +rĦ+ohGR~f㟽5LƘiJsѱ*]mxfM;S2[#'_ J n-z2.aH:t;NN?We&}Z~97'% ,c'nadȫEpx й*M( K"Y-D_0vs†4y)!e|W\s=B%+L͢Df T9(Jzѳ>12ޔҮݽ\CxjGPEmE>Azl֎q{3Jx~LXY#40%څ^%K,+Hφ?A2zk? AȖ5 f*‚58 T {)_|YG]e@x@,?1`0 2Ez74vvE7be1wFI @J K~zx5%rr*TC8|aGq A]M Xƍ(I1 KS99i-HҀľ/rw-O&_?fN,fI;` -Y 53lu?a/?ժqtI?ʢ%c'"7ܝ[T4ba+r;?h|Gԝ{pБ| E knTu߀ J>7Ý^=Hpu`|D;ljO?dHpckaYqΆ]-Y&c^B9u)\jT9v˧"v `THqM\)D߹p^dpt_!ffSq|6C`8m(¬OvQ,_)4#v9#!G;U78v:hTA]7aͻ{G.DR&Agl:` ,\F&h {a)X"n2[TJZԏ%]ca@ ޕ7l0un9rTHz6 &zfFuNadw82  ԯriƀқsz| M/)h\"k/^Gi[]O*lkBczɸmS~v} M$ ;C=>RynHa>QZJ& !TsDtk f7&ڗ$FG-$|hU꨻"4X=e4Ktw {fS66p:{h%;Tc=bzzv:ZUH›2ؼAx'سF'06<xQrh)i<^6`,ܐaєv2(w豊8Dj?kKP&:Js|jHy٥6_q='tBxQ!j`8Q`7żLG_Ʃ),՝Ub;J 1ZMoᆳCAw;'JRn{ǁ<ZyOٻJcNzoKrF+2r 9S~πs'U^x~̗Mm}+}RƶY CiE X<!XpfPڿIPV;Cwɡypj CNw3n,uw!%° 8FD( 6V"ؒd$Fe8QˠR9<ӍZT#3ZK. λPg6FɧiH!.gd2Y;Fo&S ]-&k@4Y}+_ ~t'*kbP rmQT @φ Bqa*낽ƺ07?By38j=FǣQN%)"~ =D5(;!C3R|hblط)6¦dD`ɔYB-B1Ϟ$8'B&З_{xF$0?w|=տ}5c8fJTrreÎtHyҗhBj/*|$vo`IuAX& Cb,SϣfckFb?͟Ŧ:{laxl?u<7|l^] A70ōk+Gq0XLx1 ٿ(& nNTTF @N%3k7_rj}A3&P~}+ P V OZ3 {E\.eKw1UZ=ZfrأHDQɈWO^z/Q"Z!*snԧSwQ 2O]ꟁ]+z{Sh6`=]ĬBWa5iKW.FVBy3 LX3҃RQFH#{q" m"d1~%޶+XiS 鿦G6P Vm2q _0XN5A $!8:SFS ^D 4U;,ش6̓b*"Û\ #Ix,})KH"A+ Y_p썕өL@@0˄4v:RF{!b iEsT߈p^wI @E-ӥOp?S,АNo$ P^qCq0=J`OEaW7(WNqRNHM"Cҝ6+KL1u{{LR3n wG>F3xhBa|3dxє6EDO5\d\ * e䴽܉ۑc+R1;wƄ0wle=YAJ~SQ5 #/,Z.AѺgXd)M.&wXOFi4جseM?~(}M}bE@BC:=0kC=6Hhv=EVHCzH(bJ iBc]T$y'e-X7;) ZTKk%O\[DDWyY>"nU]_@ &7=ű$TBЍCN 7Bm, |jKҖPe^3FހS}|)-1lĿגhK$fĶa 2ϓ|; ШPb*=hv&m v+O ZyPSV,K^`Xf0{sq+d&Z'^jMmPR%4`&Z`c(;]=;|x&LtX@]J- S*}Xr =U, uwOePa}R2..d6,m{#c0Ζs)mB Kh_.D8ŅH\z,b1٬?d :9=5]ļYH.CU#V3ZSRf+z2yueONRb{("՘'ioi(pxO7rid&Jf%9Fa}ThG>K& NҴ Af5َS?"]Hz?ef&_ l, b"U T,kaC/NLVIҘ1La(kqYltѵ\Pnrr:T?Z >h/ۆ=ԅBPblq:y,+xOkQ׆M<Dž+UB {bl yd^ ȅ36 7θ4 _/ $ "9%Kd1 Xh2H`hkluMT(6MdIFؽw~ 6y0 5;ħ5>YqUR_Wd4{u|.3Ky{Ik~D/ ":ל<)TW2lkSh hm8H>  \.Yq3bETI^¡8^ch8YS$ֻ肽gRt hVתj &.QeF0!*h 9cr)k%6ZwB"4 ~I'1~)m, VBtהdЩHc+kIfi(xp TXa@ Ӊȼ0V뜏1(9cr"Ox|pb}>Y`!Ҽ~t3uHxVzAw5"4vXͺ!d]c~-" Tt{.5&!+N3Ō يXeZڔBCƟو3;olk9d˙my"q6IeHfc /AKuu輥k?01pf<(qwCKfO! su+y?HǙLYv:qrt:a^VXD4=,+wBRt#ykz T]e"wɂ2EWZY+ڝ`_Y%WN ` ֑&w0 7X;qdM:u.O A"m:JLՐuT7}"{W JOS+Jd=:Ow\x2RRWJ2-. Zٺ :!bcy ,p=UmU(SP\S4W1dowSNq,[VgiDQ!2$Βc7ܸK <54@cF/o(FB)~!.Ym9#"'o)CW@8| =_x*31e|Lfp^ƞ㉱@I/3^ U#fMP`n_^J.O` l, LIۉA/.wG/qךmv,=#Bq4nZW~-@#Had ]U|c7[4HJ!NS<~aяУ.F:\^ L{a|b4DՍ'u̩\X tʴy_W}_ŞsxLSʏYFPȐP-gcK ־0ᴂ*TME0̶fwu`;O+߯OOעHӈo~cmxޒ:Ek}Y;Y&bO2(*l ˋ1C0 ׀uow9PWbz_WbT6Lśx ؄Rγ!(rDAL<3o|)l @;@Fs&@)amNLdؕ5#4&yVlm2*I=yh\eknfUr*هV1\LnX^f KpN(}(Ȣtϣt:&!ӹWtU- ]-9{+">!.:Lg樵(aEpFyVQY3lPke=X*A v6Vx=v0)FD5؂O_ZlZ % /ěKBV5$qzY&=8\%"dg:{/o'~ I:ϽNx{F6c&&_GZ$-DQ N1ՑF(^cX՗Mil zYY+z4fDr"q.'OJ_{m\S\/0(U@'r`7ʛۉ~yKPڷSz-AʊM˪ ['#=黉.ưaxgϔ)v'Yta>o8_cP*ɖ7EY&%J$umx!lt;Y#?$AruE6㪤:'|F]oPt]od^{OYDF#)6%{tǞ:LGkNF'W阜&%vZ"2Al9^&5ց&*{J43drUx*[h\;5Ȣb!=X]=gZaim+5dL/q% C8=}GٿnIm$ }{7GT ]]ɻ({*.:4Zl if,)oK^Qa2w31ѯ\`ƒ`w#5Q3mt7J0vȏ D+eٽf?{H-هnشRJ?<>d&qF2B-C\э,kkYf+Iw#سI5fҙpψĈȮk`{j\hs3[[!.$FL`K _p",%JΕ)vtZW_oJ\૘=TBifcIKqC\0da]t&oU=+ӕ]-~vRafc֦\!@d-֏:`V1گ+q)6t`QF!7 s~jwcK [ *2+Ӵ5F2:Ӎ/H49߼@<G\.5vWܘgٿUe&4m u-3\Z:1űZĽ=Q¬ `,NJIu`{!:Q{xW:oS{ QgzV";5G}tpT8ƞ';ݗ0-IcCYXbpU6c=G&{Ľ)%ѰJ#m9emF$սxMC&K5 Q2I쑙/HJۘWwRr ̑~Y5 M08i0ya6OP~yCinJ%+Cm m#f`Ё htsRǨJ_uDRTWmVE}\y>mPc̪}[ƞS3gj3 A%I&\X\}dT-zcƕWH¼1s>xam*xAz'Oڨ~8Rdbm#<B+&1KQ Pֽ xIFtX׉@еn#WZx`#oY&pL@[&UN%F<yBQDS+xIue ߍҫtqufG aqMбV qwNCoU.\—8B>늼j! $=jaAWIVxx"il,̌<@#9k/|kf10!#CJ˫P~Qq9thどjG2we)Sv][dNcNܐCr3KWt[QA@[[ afS}ߦ:^L0`j$y&

    Ѭo>A)\ s.gmza0tK7Ce'E#W/PnW_]]ԩ>\܊oXߵ0L\ ľKx*wHTK)KUטuR ?E}2œHO"L`)zE|`&%\+ Pf1LcSrwj{^}-jdHkonyzBje /\?SK:M~eg4O|+ߦ:4UA6( 'k*6lNJ!m10GǕI ;ɥÇoy>WR1,l&T:aP|\)ڒaω]qCZŁǻpYGGYzfsEjٱnnYz , afX$/68M6kg[B*(^5:55]dX^)ۆR iGh6!Ĺa/? {V!U*$(gه?Q.R'Ú7oZv#֙Ce? `msτ\+ Mә'ʹހwS8=3ݪ@!N%XI>D~=Jb||[0;#@ON# Cŭq:=`%lNܧ=zׄEY{{Oc)8`/y&\CF5f3<=Ƶ9/@bTʍiHj>^_< f: Ғnx$$Kvvƻf tySJXH;OTM!qk9dx"='_.7SfP )>Y'.|#XBR+h+l2Ͻxa-8z w|NKy.TjnNCؖ ,wvܘ*'CM,^̳gn$LjPeتK_>3HQe/owԨOVJžs}jU h^#P{qIR h<)̑{Q&^m\Y9W, Jd*He'w:5ˋ"K8W(j*-RS4}n{:k()lnx ZP1=~I<O_`"oh EUKK@ۣmލdcWK8 ohtylq͐UG k^8f}@U yr5QmYN{7,2ߤw{U/%:,9i}IFLQ{B,*{I1m~q' jIoS">6mBS+ba-]!{A&G\nweAElױR;%1T\Ň^Y8h[g:|Ӌ?ŋ2('R&qua/DGQ5ζwyץR: Dv:Z8 e/n)xa,h[ V~MD016Q$?XHo3`x'}DTN"UB] 9hMQA=gH9f55ɸIi -ԙ(exiSD6=8ޑl %q VȈ)$`bō\o+u4§jX-kƖ~z*=Aq+D˳2/L][?ѭS4_ ">|僴2Xq!/8|󰺊8b$-#̦⪋YuF~UPw!<̈*GCewqdG`ފX AUCFH{v4ؔw_8 &uKÛx7nK>uW~5ܥ#IJR;aacT糂N13Fs_*S̛-6EekZoC*>S9qQg\/!  nX:P7|LOV{ ]iX]0Z_1跗NtM`Eɀ,|,SϊpJdD+_񝳮q) }v+ML>ijO[%ī m҇`j"72w;i-ʸFDA}]$FlI}d|9y7 LVn[ɲféoM1S(>4l|Ցn[Xȟt>1ח2(46O=/=>r,c p~0oA-|Gs˓q-tZ,yZ%ٵ<-U;!DvWxGK":t do׾FI߬p`?%xbôk1]r21Q4l:hlqHLPA1IO6(*FQ4P"go뒳EԮ I$0kdNkuB8{@ bK4Y~f/>Cracy6d)W"H*(?e Z졡=)X]=u }PkD~aq~ Hnt$7شTﭧEXD䈷dSC)](F *^lb8Q5jdfVܫw?=y '轆UOP naƠe.(it):kV^j]WюfgtЯb@)ODI^i!X˓?J%MoJQE30Wr( 8 Ekk54C9H,C} 7n|ʴ {N?ehV]Lgg.8.\IihU=D?i ofn ÑZ?B(qNzm:@DA[ Grvԫ^=G}Ǿ|/ N5u(E^_lxb6gv5vO,l sirGNd#EHp՜A@[44$^SZv $w7knBcU\<~(o샱W|!hyMfBPͪѪۻض&ȣ ?go?sܡ5.]lGGȥ9q %=_%'c.ĚFLcU߆l/1TS~"2\ keNZ_JWU95Wh(6 ϔcp<3MpJ{{݆]H!QCPUVbLU9CVS> ODvþxtexо4OЈ0 cllP7,a;hsULAT_-g +rBܧ>fIj2S9C$V`0$E0 fʬ `٘:k+/,"!q.@tdmtlKEF A[ij{"LT 5IƎxj9Lh"BD3ulXb68'姊Z 0dwoCaT$VP"dMUJj(gS|+1bx}{]R>#l| մ"Xw!VW}˘{AtrHvHV[XFtRMkGa}4\D"L}hE N5iG²2S\ԯF]-lTI9{aˉk?PSBLG~ ILȆdztYfK6=(/$/mD*&L5= ʝl*;C ^^O7$[A9LJ\߁[uQDTcXMtD[Y|$,LH`S^0?o8n %>T[6x u&l\;9^4z6@<3U!\zB%BVx7}piC'Y#jSJBj[* = h ZyY,{T8(GSG{V4ϼSo1qWotU1S:xow7F*SJْǗ>[Nfa銖<0RMY]Xsƀ \/)(^zE {5^]+.ʨnhcksxrXIY/=smf)RP'5íj,-@3^C -{mƨXMW1ڄb VnGKXbb7%g:.pxpdR ^;UNT~_ JWZHYYGҴ,Қ:C̑r*wzyJDd3 r8fD = ޛ+4C`vsr7h r@ 2Pn /*E+͆ qap*YZeʸO] )w01iJAH櫡c(XNw[Dw󿜲~/v&< .$)!/̢\lP!W:3S91ǭ_%4%?֌ Fފ%AfcA} rW? 0]G^U;|%߀̈HAYƗCE\hp@@{UٱH0 Hl:V7= +@r fto'(H,zf7n?aQ" 'M=W4T$b&g{5vY+E8qu.b?ߧToGg{`DQ йhf$\uXB\̸nwG `ʄF"7bJ y M*no䣯S}XLYtxLx(s= qpe]h o%GXeaekweV{:劽v-4w0 4 V =zIf90Q>aH8ߍTht `>H1R]4zP[_J,bQKHg ^l$fv|&` ޳5|G[!؂]Ղ3G ѥ3pIڒPv-ِYM ҡ{SQ9+Y''¾8= ;%^;2Zl e !Kt/G` :-gkRe1Ʊsb4?r'*T yDxa;V8(Sv[@NGN~0 H60_Ba,A ~kN~ WΪ(hRlL4_y^ecF?YU݃c%=CxBjjvkIt-}RF^\Bc -.m^sB=KgmaA6^Ti&=K@xȡ5d,.FA5՝=?%"be.G `&n,EyWDV]\E6*i2oLwo :O5}T4eaZDDUO~QdC ۴2mܺn+q``O "Jz!c1X&?UgzuO'-4SuPw̦l9q-|.%%Hr~̹OzX|BrYipDFMr<$ҤMI(kx!tpU"t3fC*[A%b$myx>8{PߴO>bPU  T(D; z T? 0ow5HVǓMwKg̷!x'e{l otTpoaaЊ,QyBrDϟbp(&]g(fn iH,LZ1\fz A=Q4GQ(E`*Iٞ?T/#\O MНJ %~xdUK9NTТԎV҄Þ]u#s ȣ*g z/J[Qr1a%Gm>D ||ml(+w@ #QO෹u%FPjEQW,BT9ImXza l-"O {(Ͷʺd*DY,1\PZH\p5G*u-#M@8Q*g&wn [t ʞv]kQAOϥ*^veiyD@6q[K-34"zc.Be2Xµi{o)f|X|8y<r~ M.A5l n=(Vx5Rw dǘȆd*R15"?G2a9ȫl';BqxOi|PxnIאE@bׅejC,R4:VmonYMOƕ,rU+.a1!vށ(W@hc~p 6LGQ$A>>yv (E݈9I1ԉwyΈ(\reC~صLE(ALn1k^؟8R=D?e-7rO&|ݫchܒ3'<7euYeni-^MRv/y챟gX]`QסϘ5[KwvOH|UlȤa;f;IIgk$ҹr8"}4.x&6Wczh@@K-%oKt=a{6W#!>(BlbSl:?924$xӫ&吏r3}<UDh菩uϭn :g$V)։bkpf[2 8jϋ oLF+PYh.Ҋqr}۶d眚g+_׌R̄s{A_?~ !NZ(C;KmSvh ֛uXuqFZ[ RDdǾp˶p|+߁DȎԝ=hrwxрn;s*I'h}[}ۜ6NEQZ/Mx6 $4_ R'==Xa O%ɢur69u-"5C=d퍱ӑVSYKmqd(L&lf7_ 1 gcisIB2*qѤt{6-Hqe1Ezn86iC+`ˍGUBuT׊oM^GR]GD_'Be?Pt)v?~ϻl8wɓAű=;S8.Kû4!:"xFU4aY:n kS09}[dD_6ނ Y*$lj.3{ jY*j<0-&`}*bN2V8D0LMb)@:tXoKK";E>zhWd\9@{6[2T)J?W8A8}G| dTσ ۜQ,^%D}#fb ks|INjJ{s^/z xȤ"w<%|zq= G٤gw,}UӭuNyS&+V67s×S[M>\-Չ/^b fZWCU2~X9s{35vA&|預Ʀ_t2 siO/0'lƮQ Q KA}&ܽM$G(1KT}iV!lS+Wva~FwuFlLU /Z4NJ^Mܟ/22vVsp^1&UfZo9FP? gSOGm0\oN܄gd헀9b0*&*E|8ǍMyptiM9MvQ;.R0^֢Vob8oS)z>JN4a.Gn&LM3FR;r2?4!ʹo1@ TЎx&}H'3϶%8xZ#VT-l*?, )مWWAEz+ b6>+݉C&v@OUjLYqPc>Tm.1@&cr6@f,I%hL6Mun#b`YHguF);M}v&op"ybnQ Q-a ^$,^TÝLJXʪӣ*GGlǒ\HXa|S8cV!y ǭHfQp<+ Rn$T\<} 䄗7XJ@W ]59"W(̋Ce1T2u6G^dlX?ӚQ΢5r{ϵBsb{l7;^A}rH1RnI&V`|9W"niAo6jRRco$[>06/0w) ;W%Ϳ!jA~>W(8l_ _T?/}R,Y iѻ]7Joݪ6> B $0KmАbrli>:'.-N$%aR ioܾC+P 򙖋v>g^D Қ{CqE|kġƼX?~E-1#E&2%zMƐʷ+LP64/Tj`\VS|$ґ.N蜉efuJ<@ ~W RI 7gtv;T̷s [GJ:zLj.kEioz?2מ/XNІǽ s ~yVw8?"A~5A\7rB=LvWOiX /i{7QYNV3sP =Vo3ONkn(z9S0n.əKtzosq9:)5UsLQUoLNY 0BJhNJ9g%rzX|06&H{]) M#-:TϚ~=%n̯+WV:QD4J'1i}DNXKew߯9:*5С]*7:= E+l3k'?W+i) Le}}W(e:+ ]-KrYn{oHYjR,sf1Yk||~ZԺ ?]4M- 7@.iڱ**OdG?-$vqd)PE`!†m՟x~߈w,GH}hV_g5$@Wywf[];f$p+UI R6ܦ~mD󗃍N?\aee=sPoaesM=u`uv̇K53${R5 )DkHrina 2-l9~/sl,osF8PSoPo ߂7:Mw:o{>:22Tlb.ʋ+}x'rEZ[E]Dl Evv&/XXk;#b? _)hT \G_=! Ml&U0 WJWXX\!-.a)o?D[,вi@Thyqнo0Z9DNEp,%t4V;XnDd']@"~6-ىtC|k`VzR{>}scBS:ak(A-<0+OFYGK]%ӻ=AeV;a[]ȽW%C/w'Ž?cĪbM,kr,6͊["=TQ?qLzVQXn>6*w! -b|,l#_-ۧ)F&VC҆\Uں0S d| >a)[RG?BrfcD~_ .\^ _ ' ΉC8 >Ӓȭ1V&/ Q#j/Éq.kroFLQ X9͞Ɏ4ŠA./p>q!rv D2][ξDjBϨ#ǂBݨ"gM .&D|vskVn7% ǨX79&!#x뽵U6\*q`ۗJD2.`NloqH܍ (1*'dɼ$ef'0,8t΅/7=׳Z-{)4f':Bg , 7!x[|#jZ=)b"c^>GMUH6umq-;"ɾ)ک3,*|a rHwǜ1*Z^`M]vÿ[ZM /;ߞgh 0UMC |ZPQFr(Z}G 6j]a\&M?[S6#"*tCk]c'({X b@y K9GӯZܴ픕Ir=!lJ'3Sz^AӪ7Kbz,sCFS vRCOBE-IhM>ERH=]b;%j(Ek{ޠʀpoN5eֳͽzs HqE)QSes-a5[n8dN7sJ[.JGч|y^9ՏcT]ųRwm(/mK#鲇K–PjMN6y8D*nRixg(\f̿<{^_N01VlJhIc&xﯖ1w3bZPR&h-]/ҿYYDl1pzNn D{d;+A}\N"a#0Qkz] 9Wl篻K|.c Z*D =^%%hWL>: {P#\Sfyr/v/JHI d “M;ViqIcQtFk.˞`imEv`هyZsw+[rڂjȆ}M^8iM3_z *7R _BzMKWR6G+9Wy#T2GڿMA},5(s@o-!~53͸{;M1a}8L(~A_Ki< 9 9!3#6ѷJ;!u"hW?)N4q7g6 T.I0x:]-Y [\mM ( cѸFWY56_ʚQԅ2 Oop{{ SXU\MSAZ|2DL3]+(1(9c4 C"DA~B dB8`z:2T%hYގcԟZ1ek:4ʷp7_E +pnksep1 ٺa e`2*@o3JJlJA/{&\ W&ݚ( t6 idmG# REd{ IR))/H\yX!/3ᑎB0ϴw iFҤ;b)>Ǡ+ kYW}p 5{^?(k soOZ*8 O-"]Yn:U؞R궢5$a'z!}^5{WC?%"2!_n3͇&o]–2n/(qV~ZFb$C9q2?0F- e &IA :ȣfIu~&?#b]pRyG%<j8sZz6q*@qcZc䙥xM-pnElA}i6է(cў]l.2RaoTs7y|Bk&>ufzѨ{ƮT*`Ph) :K>4HNp`.Z!"J?n#czsEzV"Nt>BbX?!_G[0OUFѨ2jY+ ?uiX?U=Dg E1d(?P4Y1FTf1n(p7vH3t\#ÚO.֠3y 4v,L̸=O Lp.2W]tBnlۨSvD8ުXZ+弻緟56 fIbYz1l̶ZlC9&KG>MR8j\Ɯb9S }G`oTv)6߿3pH)qѬg!.1UF53< Hp 1PA}ңpmKf_2|Ur#92Pm7HpbM >Nj݌zE)y\*B%Zy 0h(JgAnh0,#Z wZsN-Dugȋ/0k.ktGpSMl;B||g]M[j r!S^m0I(HI!Ay%wGC'[픡\[Bs?K( _huCZ,=<qA-}FJ-oh5zLKd<χ1B@l_4+(}˫?%)d@gN,"BK-RqV㷫8"C;v:bזOQRiѧF. ;cʨ/<xiJx$Ce\`uQVCZW{1IӸ +\S k_=}&720qQRP1j:Ơm/BN0Dd;tB_j[3Hij&7XSlR*񛰋}M|CgLP-OH7UTX}v+{})ea(.44HZ.̕NN*êH_lt-\0RJ] \@,SGd),(x&ĩ$v_uznnM*]e_]LYO*|]X]Nqk[qSkb\~kY{bp}Vkx>RHԭyaЖ 1Ro8nJr%/ (bvpP 'HC{*)BvV@m8)?+#]~b)׏T>R:Dl)^ 6h?T~gӳmn;7KA-[!] 9wvdhqP? "^C!D?Qh٬CLZ7cvO.1ȧP ,اozehjOAҐ^K)aFD}.GH@/hî 鬰K\%*ۏ(0Pbޖ"R8|#!B_}7HiVwvά;8(R&^mJa}hr S{Ԣrϖ3`;]˶7Q;^X7#]޵S+:m!wt?v ]s琉+ X&L[,R3gGNggSZA\v!#/'33w<5"0S{H)I enCɋ}{Uf1,t&X $=pZIuKqkMΖ9'|:kT?,ӊI# <JM禹o*Aש! t< ôwR/ն<[,>* rMoٶC4R~ݟ=Tfdr&9pc# [fHvE k١doX[X BL7544h҇)`Wꭂ&FN"CθƘ{i u6FVT1#8zi&R^Sx/ϱO-tn3b/w~,? R['Kz$22:CUebEp >8^Cc.'?v\{c   5U_)@5|"Ҍ\S"dz$IT˒AY(_b#k#,%WrJM0vf̍{{$#vŒ#e;!_Xs=i3BN{_~XuG:`9BϫМuw]:[e.v~#6l6u*EZMF"(f{'I{yYܜf 'E߲jaj5&b?Y#~+'sb?ut? KTBOklSЮ ɥ#be2IMQS"CɆvE~o HP|nL\EӴGbRF XllꎦέѬt6Ӷ{aS =Վ`پ Vbh߶c. ERvz)*QANI5ZHk1(n;ɪKƞ_Z\9. ha?o { *lspȁŽO vF^" p`O()V!F,W(C )h9Pt~'{yo4ԛ,ҙ*Hi4իEH 3m9._R v'+]:kA1;+qkl*-@0ޟT nXwx8ioq+eb N\W/:my&V0ߚ{j9u{!=G{;QK"mksD T(א ?JI_XJ:wd !wK ^]naq;UG`/?EvV\$݈ghV]7ƕ#s$ykPG׷QhNMWXC6hj(D9s@jÏr*)uBJ<;5.~xKDRxhj2hIp~mz4(0UiU<|EPȦ4=U4rWLZK g| z ,Jgp_I-h~hnii3+KO%qZ3dC3{|uF~ g@w{̬ p;rwey0ŭtdh6l>˩2D۾qZhNЩ[B%nBEߡnXre2ubf +[@jAC- OrBufF!$QLL錼~Ti@m҈]l l ;^%zox飦Y2/GĘ I)7iљ&u9u x,=GV[0 "]0s>kN\9ǚW`ڲ\nť4}:-SLKoZ걕*|Մaq"og 8A}^^d5G* (WFw,<6i恌?kvTB|LGs-Uݮ_"[b8FViDZ|bRnju1%F[>+?,|}&c} #/H"~mB5ֹ֞1sD4O|BlogBVc.kW5zd GVwwFpM[ {hq6Iճ)a;EEU s?3@m+nu3_TUxʴTz"%V[DhL&Fzr;%?%'ķؿ978{f2W8d(,ULüm{+'6֒ Pa8 d`>;3^ʼn쇯F:W> 4[}f_jJ;b]v 8f]qjrע WO0^BF嚑ߝ)"M3M[\u*Jn|ٕPm5(n XhbeW'3=h^rJڴE#a{r(ё$7iskr:˺7 r{߲W0KfsBDe+a@[V\~D@3>9YW'*6o?\aޱj/V6 Ғ[s6d|oJvԢ 0BNLLxS}r%72}Ijv5eSehx_f"]*/{вǡ7I-Biff|55'Xlkတ’\a{}vaAz/u4eN\zƪ4y-IFyY ZJR[CsS|'U^* .` m yĿqfi% #[ _ Avкb, PhӞ57a$C}c.qVK&[rv ;8|gy>Z0V~XVЁjK;d?0b"$"b)-/xHl] |߆ 0[evspdG5INUG/eLڃڮ7ѕśNpgb.UTk R؅h@A%œ zbsn_NOμϯ.c2cwō( BipC6Bǜmc<)VM( z*6,Nj=g aS#ZƂڻBPo!lW䔘҄ H[&u6A>N~Rt)0KߒATb]dr"bz1j[{1]nUixN&,"p^b'^hfcs\y>E;6ܕ!߄NWmL=@S!58,f֦`'7 NjKo/efɗ*V2L@M z#L#V6* PF4-D0]PU:[;g=#H-k"`#7GK_?1#/$,>)2QnrƵmhDf=V~=.8?,lk@_DdIȞq۪Y/5uS,FvUPIlgi\mՕDx. {ț.0 &>Hxb}Xjh4ױ\VX+s]TkSO/ܜkqIJRiGhrq3NURQQ˴xWA5L K9ZxH /zHA8ꮹ͈;v=ѿwaVT9!R?GQh.:hJWU1$=}iSHF+A-ɸTAIdFn\)(0ҎS!gN.b0Zeg51:SZDurUn4oJ 9z9Rg>T%s=%oUSB*/֋'\-IlI 34b8cTGO7.poԅ $ʟu Nsi1|'m^gׁEMhq(bϯW >XGSiK~ke'26gT'[Bsů "9.Q'c !Q-UT$M._;%4@Ob -y )yx:ފqk2LNh{oIf Ehf ;YF\o :QJ߰cVk=\<<9Jaer?(:ʒ:6] G\O^YPʼq_t~I=/=/`A}5s7uUVw7CǏo Bi~],+r sj5#kKjRS.uDssȢY[{ 5#L ˫qjTNg1r%K'8bv T /9|l1TtZ]OZi4L j]4ݠhX5t:Qɗ)Y?&x$J;1wJ~^h 'A'{(^ fjCZwk? mM[}/ ^Wr)D)]Z'e>S/s+=1kEC?@Vfzw k_ver qCd $*r&TG& zl/69U+X\B7W0ErN./ff+X)Q],@ǺEPx#JG DdA]&㪱KsIȥ쑆̜!oOPiZF5>9t"JBOH^щ_H7`Fk/)3[Wȥ1Fi>"#?Mh O\x,z/5g47(a&k^ -wh:M SަE-ꣿ ɖI R" [^(M'ip3Pl1ov0ʋQZXFY+X2n:R2;lp΁Cc5uӧnT$5ԨN]L 'O-^LV&X]nPh3@ c"dA\L54[1oW|DBP@U615ehQ^z.;w[&j LzIȋi ? o[}͖%Ya\EjC-Nl#a*wgzwVV;"T_=Jjw%MU~5°#^pd5L) de! /otoHk$,KC7j9])D/2S{wWp!8 4e T*}hB'=f/h  x-0&oXa4n粽+$^N. ,ž1BU#Fi ^䣮$mс O1bMNmr "JqىggqVR}-e[/օ\zkhQ–'G0wwy_Muh=ZB)8Sl,-D*ɕDt\zԢpѼ]zSDž- !ܝ+܋ 9XʦFg nؗXZjBROX+<^œAb+={ŘbN\LF/nO[C\^; MHNc8QSrS/9Pݫ-4s%o-x,i,.ŻE--u,O-qɄ{jLy*LTb@sj_Z%ɉuR uD(+-"گh'.?Pf֝ ͷ{e%[;JE:fɏZ ^BX+{hU$ކ(A%qb=jj3`>4p2n6Z_"pZ~2.6}Q)C3Qqr[SK|ڐ +HS}9[&MS^3jP8x|sᷯ{ܥ?ppYdUnFHm&u/sB0OGؼ[qjbEeǧ?yPOdn:!.61: 0wm/>/w/xi0o mQ7oZ1lQ!3jH+KY4Ej22F|ަ·5q +񶧺~J.%!3bw0~rb6J[ iGiSdpRWW$[h4}hPTYL(pafk `[ o~sj:A^zܞw(gǯ\Q3Y7!\$~Ъ"'Fܜcu[ 0oDv1^F, WIhﻳms@qMM嶕̃P_8 % I g #+Fj~2Sp֘x~keJY@jA7ÓUyZ?pe\087(ȂE|bVR[r|T}¿m8h*fУs$<-/z5.%^5dK(| 43XUw"o叨wM+yhDkCr z о4 z%$ ktGq,jn]qE/yM'(&,hBVBp*2F33s}HJtoDc hZ+2axjo%6j Flo’zB<ԃhKJ+>J4$*t^sC 7-&H^3f (~ hT]== ѝ5|SNmӜ[ZfQ!LKZlQuM$.h=2{wIh:טOLĿAo|1'F7ᥦm7wqܑsķS1 {=*;'vvRolyJ$ u[wΎ^ӄ#Xќ$Vkߟۍ#ݺ W61Uq)-ayCQ7i,qVJܨ/P |Nv<ZS]&Ci5f/gRnJp*G4n9Do]DE@l.LdIeR`nQsaVCZBջo_D߂\N%038q)x1ί/8oJ'OKOڍp#k{ƀ1Wgvn|w=1KCm.iHAz-y-W > ߺ M5 -bWŨk|448lNYC2y+ͦ)[ٴC8W츂jSv%ȁC0,Z=fUBtsV8W1>C&憊 _qH- ASiBK_hOQaJC=Oj!Z |*Vy _ζNѓg+b G{Q4.ڹ2K>gQIG/tR5|Wg:TQɽFw){yVg/-.>#T9hZ3=.11]PB%;97W@VܣHļS;PO*Mr|zqJ8n|D.lnl8@iѬznyU; $W]l*v^>^Mtmj%@\X*GfTwf&iNN {Dҷ ;07P[!h> P@ ];'ԑs-Ԣ Սek oR,*+R8?*6$'垳pUn-8ќOf> ifco`M#"֔*+.վHbQ͑i>6uN*YZ[vCJD詈{EC~ROOi )Ieoc_jbAs0OWI۸?|mAKՓ31?CvхV!lټ-TT SʝlOWsuTVގiظP70R.(u A 6x' $VRY FBF2d2 -%7+Fs0NW|6 z;sWl[ XJb^' (]ҧsO(|?i r)5=^-!}L7 V RlwRU62}+&dDH?ftu16|?4[qa/qUׅŽuFm~*|uРLPLDÚg x}H:8{f%o }?)uU&$0<(X25>q ɍq"eVC[& (>F? sexU~BBfy7TE$FY5H:r:j+s b2A{kܽe+An:\f{ K`bzM2 ՗l lt< ipyC/+EQ? e=CrY;$|H `fg[ q:Je٘6~jA:"fPQ-Y&9Ln Ny$kKj*Gl Z'I NQ[bOZLU RMIa,AAa;ry9Di!؂A!IATrj4\Oeb_gs rzh,hݴ"?2cޏqKOin f 5V@K?'$~DKQ1/ U$YѺjoQ c8gw ը}b, i(?i7/QbHU]&MvI5Q}@"e)гIb4?U{U0fZITTBJHdƮ l2-5kWE:ͯb!GqJVOW lv㛌urǁV,S ϜA}úQ.A$P'Ԓ8"U^~F$ -nɘӃ9<!Z0#StHGMX+S*^nޅ{v ̗S,kш-kkUg7Gp&7BVCN(>fr50㯅n@%@⫙lo 4Y!mX+HEjZ{fWp+qZڧ c~gwrѯw |K?nt.} foy'3UoG+U2qV+BO.^OVPDÞ*ȈRޕx)=(TD2+vhE&k^T;*0%'eP }iZK1Iƹ cݤb9hX`mH ombޭj$,>o6+EWddlFlr! 8 .PK\byh3XLYR<*c^&OcV[Χh1a< o>bCʖѮ,Q9+"ij> ~(9x^R^P:,[1޺W/ q}`g`CHc#g%AJ02e ɰX߯&cOþc# ^<eC2Vl*  rr] UCi^eOЇcbXTpӍ1XS]nj[)w)XeQDw'|}wIwPY=p\Fkړj Q'3AkfUܻ섯?? EQXFADw9QiOٟ@5o6:dPyve8~AEW*q5@*FRt_I`G"]ށN4:|Y!{xy6GGA0{Pæ+H#r L]9~AF[##ם2$pfӀNhBUkcm6S ^HY'L^e^8F`xE~R(Z{cgϷV\\7V& -?h9'6T*&Nי@(go{((S&L;[m'h9ޛt=-X) }Jfyj0>uN~ 3^Lhoʐҙ= ҅ZD i˾ v8^^Cw6O-]ZsbX^t(8zv7QC2C4E?Lr-4t^[:辘 auӐ 9aheFg=xOD{ys=y_4K(;no f`& F=kBhB%mRnE%L  L ޾̵Qj3-?`NhnnKfFYXQj@vfY{X{hǓbGuC#^!VHl}IUXQKKGE[ϘP6'ջ|x_'݈FOXH pd.Y(b:),ckh1h G~@ F$\:3^Ne%KHG ߼<8$.)KQ!w&|9DK> 3޽o練 F)65+V2_aj%SWA&Q 6K qw w(c<5eX~.J9Qh2X8n]&ݟ{MCj#[;Mc#.LJ1c$[vm#0CCmg??w( ?cCp='VKANQpf'æwM8|MmF+ Jxt,m$'`Uޟc%Eʿfg(򠧸xO ú3iY &oC]ꦘ۩(uJ_S6jZtjҰ0qH}6ԢPv”8 O@ F7|ub̋1ŕ>fs4L2Y2C-l[#<~.$ւ1l\T0BW) .;^~Qpu06o*hZqRXBފx5h=:9{D'E=$ٻB6˩{;z -'HPx=w[\mQ3y[vH<ʫNu1f)|ULNtRVc~sY.UI*ԧfu7VmUD[WMXr%ImH^0ƞ} wJlrY&%i(C4NK*]s/s~0IVJś Ȣ 둩!nGL.+#Q ^7>] ]s*7;ڳν_/[|{YgUC[(O?[=p&BPto|p|AF` ł]/V_)ūT#x8,v&$ٷKp:;+%,~MwΏ|E2 o~paFQL+ yv VɿaM>\t!+cFY^EKEUb> ױ P_HW A =.LϋuaWB Xv3*KR2 3,cs$\0N}{л!ͮi\m^d, $VӠyN|:*"h{߆)0ׯ??kP-Z1Ht z0Ϊ/GCNz=2Qx%Hn>q"nƌ#@6N$|ْ6Ql{"X.jG`ڼ%}X hc@!iD6 ?)*B` ȅrqx^7 Ofmҏ8[WwlMW<_TGZ8 mhCܢ9r/@rV#Bdg[Y0lsI6FIq1>^*#5emr ZHvh%[zܽarȰJ@Y~WϱeG cMK'QuHa1S̻^cz:c??+mfJ4ء$0Di|wd,Ryb]O Y+N*^ P]dWoѥPq2)nfBޅS9BL2Lj̶q:I;&髜`:~O w*,lC&;N%_fbhr/٧V9~nilC?i(U B0&J\2v Bϫӌ`.ҧZa툰>gFTO9|`έ7>^s>.97Spdc@Q; TH+1Q_w7Kjd $|JPre.!ɼ5hٮ֡枓 }~s2"p iza͝IgU촋70< ǕNvJ&e9`r"p[{;C/Lu0D0 ic*b|e&ѐ{j8T_'pD؄|bu@bd.X@qHw 4UEz NKC@ \aqƝr;Ĝ>Àc7׺SD:Iߗl7?@q 1jACɶgE>˼G>L"q,]![2.ho{T s,kf<ʔ#l} 9:Y+ro .DL~| #(P+2gUُ.d.vp&q> (L5%Q+F0b!ix!Ru$C+e45 7y?@?J{zIʩ* =[ڳ{b2bQw[2Ip[gJeK1@~iك ׋' 1S;o{ A6P8УQYXga$BBXrRKeޅoJoG㼆ġIJD|FoG$2=6mvMAh,FAMu>nOk{gjIy5A2Q #[*>t1l5ZM@`Jޚ,+~ckZXY>s=%WhAgE2Bsp1aG%?BhH,$~/O*ZzvuY\6ń3p^<}Rۉ[ AI|{kbF8|暠V=NDJZ}8D!sL:,3眣0O=%MW &L05RbrF*)0A07Q13Z38t/sB"*0"URzE)@JHĽMM3dw#ĐLia ހQB]'fj1[!X{7zG.Uo_`1Sgkb lV~:G|)ShmhEtK)rZak{~.*AH 5N峆Œ4]c.-#UoKZ'M ("K)R[#U'ĝ}~Gex&1lZ䬹TG4x2vz?RT,)z/pņ6A.I? .Ʋ:F‘aN'JX+BO5{EqռKDz3%;KfHP rUv υʉA5`(]X<0ߵRʽ['<Q&Dqaz2t{_fZ95U:)e-G1*kamLT0 >rwI@9#5eQY%(KdK"gml5agH2Aa$5ArSZZtukqL'Jić*8P1PH ~{,1 J5\%(deÝCR=YrbQ N!G3/?V`[V8N2es0+oz>?!$1MT ˛Q( ^nx,Vk: 6rKnEY8 lZBXB `;6q}cpX^6* 0TRSQ{)5fؤPFgZXx'wuʚ 2ߠ[[m`adYiAnk\ʹ[`,$S.xbQU.,:QT=,!>oi*JP1DBy<ߙ2@ d0]>UWe|A?C~/7 x;pu/ltv["d|E.ƫhVX4&3zC~ ȉC. 9$<FZkh8+j&=uF  Fޝ{/[w,ȆcK T0|aY^L-Rj.Jז%i> Owg)Ny'[u@2QW4fqgܑ_*q2EdHiO=yAmRKF? FkhCTZeb0,< Jk d{X0PJŸ˦iHs4䐶ÙAޗL)8 >؃J4L #렀V  uʑk={;̋[l`{{p? %Blpw@P+tFTgl%@|wb?hK_Va xOO½V:!?ViSVۮq(I!G}K8tNHd Ń,M(l*d[d.7Zq&I/]Fb)6ˆWDاSFw3(['+Nbf(҄gVe^ru'&H݃ $xFH$!j:"sygMhj7-Up"^P*-{'bHŬ6r[;<^d vrAƋyH)C(<$wK?^Nӳ9{,ڈr ǝF@aSt1sjwVS|CgVKH]-}w~BGI0$z,UHMS""1^~le+j4F}fI,]Tݦ$nթmQ{]G8>㔒F#Mpa7SV|]Qtχ}`S_*-밽?w&Wz+ 8^FԙLD1É> 2v8}t瀲 EڅOL- Sxh' 3"_❒ njVwm<}5BiQ<̕pJzHS60 HDpH1ϾVn s܀+)Iw[a,h^Ñxt52v:2\&r{(|xBQe> c6-XٟoG)byZ9 i(0Xt @]RVܒ^OxINH",V+E)X[ 4gʴ1$K+@_;*a\npZ<|/Pn}=3j^ LXzw82ZhP T =o td6eYa= e852$dvlش $?x.X.aj~@cH_}{#ow>϶A':)'MŦshykPf̂~GxͶ#ps:$umMDp)5HiΑh={, 5Xbz~ ۃ%cWqUPybO|$-lcXJsyMNV`' bPFyat-Φ$->^ݻw;g2"u֮ZpbDtB>QYT{ZyhTl k0e|蛪ۖQWN'E[󉇆6ڪ[r9-5a!xہ!%}KX۵#9f> SJE.MY.[(vL0᠖qA ^y|9Cz)M֘c۾]{;[Jq=j Eodu_8%cޔן/="4I7-"F LW)n[ &ʹj!/=藅9o?qYGsL}r7 $V:^РXlUS UɎcx!O |rf^$_ vy'(Cy|dAraҗ7H2bYa/Nx%FDS,+.fţg9c]̘:'KnoҌx7(WMja8/c5Z"uv^p4/^۲&SFD%Tqkߘ%HʉZ)9Kz<DzV&\xIH"M-vϖJ u_"3 ֜gZZ b+gMC\0fc04H|1v3(hBRɍؗ@hx6Jfs̓#hva,r ^ H"-&^ʄ8H!NwNYJmi4mlv lLBAtA_qfMLyxH4yȍ?Ee֮|6Qavd0`6/Ej.=SZ#pT|F -=dWn#a8XEȓ)xoXERq«zq@_'0$` &TwFF]BX( o!sEtbhzʊaG~7NQnrl3ȶltsQARa4i3B^®M@JNwA oKx0?M?^p}G2O'Jhx*ϫe9-@W 9::y{ȔPL*vLTCazoFC e&R^W<  t~y=V->,6ڪʨ !p1C=jզ 7_p>gYcɅe)]PL^ĒcQKS|__@ΖҷO+XsV75">ءAQS$o BB]yI]jjn!"M!bx# ̅_qfMٯO @t5g) -Z&~Yɋ C{+SE a ~=9%Bԇ5) m s@X\9`crjD-w2$ ^лUt9=BBl(-}@/w{)QJW:&E.*ΡP9[|ی6: M9jTz`Yo|{q[55e瀢x  l$"4sb5 Als"<~,W+t+6 ]XKY0"{S084C7;荱/}Фb4K{黅{|u-1)ۓi]4*M{YSAWR сVIoBt 6"ͪ ĺf-zDI 2m6›[ ;:ґs| h8QX!t7voǪN `uSP$ɓow m᥏_Y2LoNj4 U5y H;*1KKifX[C1ڀg7.le@->^kRnn$aCEn;qơTfF(y$LG@,Ƿ:2GqJ+0k5uƋ<):&tdE xcy?-]m˙rC2p)MSl֙F/EjF[[R# Uz EuTr}-3s?U<8peLũIbk]曢l2&Q#KKy̓]3!@u6豕2N*Zةl:׭gc]d\`y;[mfO`M:eъ5VK-g r3 R{9ڝ]*=[r`d/7wX wHvf"nK>Xi!i.Th.%u.-;ə& ^@;5{~^ௗDqXZ:-GSKmؘh{%xiAlk͂,_\n_^D;k.'i"͝x&LΡejUg>{G ɀbm981gg}AAZWz1.-u+*{P$vERQlI/pHw>ǔ;ه_&rjD˂wWL#R(H Li-oAb8Qe$ye|0sIjCI'lvUh4+$.r,lJð3w;ke1@Lh)4m^#a?B1L/aH > uJsEc_nPUnhbgB7y%d:VJi_Bmvt`Ej޼VVCX%?7qxL6 a|V$$ l# |Ư#.ܘf2<Ѻĸ3x  nz'iΨ~P ddJ8ޟj gMwF-0om;w\+ċ}y5@A!mIIZR<a˖G~ͬc 4kT~`np:؃{ 5h  d|E+KBFFoBl'/ 1'l2K5790vg puB8Jpq: `37IA;. c_ ˸o,;U^!)asg%(f߭ > Ah[f{~S|]sTx!ĉsƢ}ߑih4}*,e2 m8P`Ȣ~M!c,8$]rB*/n*U(MT"[qUWH_M\ 65q$)ݟq!oZP,|<5.{= b sP42D0bѿRnoAX!ٙ|qG4|OrkL[Y( x'o^<ɺ,l>EW`yf)RŤxVhN0iѵzo:s7\{I&4x?z"f_Tp|.|dM E):o4]Q)sNN]S.܍f5d eDJRTzmHq癖kdgcGB`>}ěU+5|)6xA^bW& 3i=h: ],C8ФDԉFN d?vQrcu8Ë4.hV yS->o"+hcGIt/SazF V]޷wFf'ɤ5P 0l[9Kңi#J#ͰR1Kz&(=9 -U pp~FTt^k<Q''RRWuNX.:dITϰ3% D9Tu.r3ĝr15Nl"eˑUOu6 K4}+_CD,ؘy(~\iҙp5[Ӧ>yZUCq+ :H>;pҎlVyz}z˻EY ²Pdgפ۱(1ϕFy+`b-M#'Ž %O&XwP b" @93NL+;f[x\-BJ"l9BJq۲^I^NR l~wh.o,"8Q`P@L׽lN]0/c~\v%3v*1ɶ: 4 C&%KȄwI<|E頹c\F j>SYJU?㨠4V41Yi8fFmt>X㊜}P#G؋HsU k m`bX>k/x&e̳N\BNc<[߉b_Ri$7X,_}aXIu 0Ȯ34)3AX:m}XMsEl0e_7Pٵ2);(-E6';If' ,mHLb n4cټ=9 ,%"o@ Uɫ۷鬵ldO )ctbY9F[}؃Mo MخϽl#ftQC^zl ȩa;Z9I/D 8I1r'ҏ04ԧ{pF9s,sR؅#si,?+)8@^ 3Ë6/`:p@% m?< Կn3 &钯6[ɭk.V "VUƐZ呜$Ҫ cn)&(|)6Q]ǗwVx,3:,gM[0޿ov7/5+gpA;6+ws_(A*Uɉ8 07B4H:wKJS dޔ9D' [+΅<2=մeF Ѝ|AvE0%nmOɊ$G [4l Qd143rEP`M!~65ΩAzʺy^~s Z=v!Sb@A.{seB%BȃsD7m:++'tt_@[f0MԝC> D y|,DO^~ʑc~'O\AL>mzȴg.AnS9=/Ʌ%[g%'Co;krBG$;Q=5ڔ/LGjo!G $~dLX%!B#vsISWb;^/G#5r5LqT) [P+犏KtC޵C~5/uxsOU[&KҋӀoBVNQ(졔&}-Sd"g`R2J8w dۮ)1?+:ۭ(d~h4$eBLk.40*fO&eVA3OI!HÉzkm$F<1|7xV#Q&1e&B56ӮM,'T"<{.*hun6%޲ ]SW§Qr'R܇J=ʠ. -D&Ri|V2B߃whFC2[:'R"/̿ j{$OG{΅$aZϹ>10vه>ò#UXY*vLͅDqϋG7d?̑t GBP`௽u~>LǕ57k4E'%Lw܆f0O%$}mpWaR|c=E[dc~i*""Uݦ*OR,SpD-/di _]b, RLIz}@m|]vUc}Ɍf y ܿ04AdqIܗVA*s07>bX S>zg?2SӪvdO)ig^*n7*"^)}`:h!fayӪ3NKHhf|!1VKjX0*3Eȿwt87 X:~|EPFG4l<]0o`YAdj7{kWte}Ѭh3zfz%VZpf~ej2Ơ[ qpoo *h[N3D.hnwz0e4R3\+;OԊ%VJS^Zi~@@H/S+U7MAD\"ph5&10#dlQV6rEpZh'pvNʞC.3@'dcNlYf-LtĸtQL+1K=,<ñNvV&a+jd+R@,61Ֆg([(Ҥ8 ẗ́\wz;^G-=à_Qŗ]T>PзS}>ċE3kQp7ա Vd?2XQ|$r0?B­gCNy%G-TeHCd"g\4}A76s}xBt0ad7jc|bwzz>'B70o>9 Nϐ_5;@J[_m&, OnSEkm4]\`2kyG @|q$P \ᓘ-"e]äQ/u+Ox/%Bg`E97{~MA^tE! c11Ǝ&P*D$z .ff c-KKu M=E Iƥ+` "$,GAS0ЋlDCnO@:N.˅aϽ~$+_*W8m\͘y藗 WqJ͑muD0r0ݎ։3$8`KnLV&iQ>vaxO29IWf*_@~cL˝waKt*Z~T՛("̉! zIe&f G ?gpJ V!n29-7ݩyx #̯4R֙S`4]rȾ  pʺ뢢}:nl(D Wf>y[3qO}3tO"qF Ó0$"XګF&þ&]ϏDDw`,:vh Oyu+NaQ oYŰc@ͪ$n[j_KL}b0DAjGzbA,8}L6n\'d(,20L7D6_6&c5^>_]v:/Y|GBN'SbQv$ 0a̬9cǾj57dX1l%)d& y7QYyRZ!{H(MEvJw) B]N^e0*ۜ:܆ɻ/b\'UYװfQs8 )&x-~sȩ<knJZi];ܐ/,~5`2yоjR2\aH"qkIUX_Fj hb,4BQEVa;$,1ҝj2T5<9 Up:}˭?Fhճ owsB3mEF䤦uI359Dyk>FPQkTz5FB^̙p>$lr謴jD86=NkKQD.j I`lB6K QP˦ gSL~,0Jݑz7A{~ GRD?BQYժ+f~w_(7XgKN am)I"nﭹA 6ÄXKԳtSjDŸ-ӷ$(z#fLכєB$+-9!X'XH"9s%z ҮBy='Ѝo4c] U+OmV! r9@@dvf}-4"iAަ/zoŕ1HXI "LW)P}ĝ. x um0DٞyM' RuQ zkkkH$Wi z̔"r ̜!UH^޾38"2I)c8Jz8qp@ǩ TvƟ"wVxMc%eQ6ZYS,V0.iV'\<ⱈO,ǪQoRjʶq"o,](}:rD`8YOeTժ:f^֫ZNd$cg8OLڇO*5q!7wC J 6@j"w_2x9Όud}bLJjS$\| IeT3fܴI6]5ͮzi 3D(,^'bFw?$݊`GuWˣ_.Dӯ^WWRӷ+Õ%9.unG{ܹGƹMYpjd ^HBUƷk`eLL t}sØ⊭:;N"?-r1->uet&@TÞF$WXCܥ?iIE |u(IivhM@VQeS}Q]Xpor'}tB N_a+chV7*OŅvJ%_1ؕJ"RqEjɆk;(y6'p BE9Rs@߆V\6Rv_ n/I3DʤbQpǬ2x_2Lv٫MP> \$QU\ FlY2[9VH1q.lr XTy@2/Q#*Q"{yUg/-|\wR{!fRk@64h 1۟ ,?ȍCGdWޯ=auH@)rE=[E9EVa/saaǎa)G*y=aKoa,5PKs},݉m JH 2<G3-QXEyyͯ7dx43r`M@拊 Ӷ7QIo\4hEX8Xz`zR0VDPﷴ?k %Ӄu)`$ٰa-iwMd6,CtbE^lF.}t/˘% $@WM*CPX3?GR!_;+m޸%D1Oвj c1N{ջ!e2%>,|m8cw e@j^R{hh!Xy\'EEΡ؅gƭQ \@o"~\{#kHQ2Qj#/aGw^ܯrAȁ!r'gڤN}M@,ՠKH(ȭ Bw/aN2tͻmC 2e_xaw=~_sr'"=nJ3D&*_-c@~Q)KZ#*̛ܝIX *u VR]k}_?`>/}ĉ 6*j-%IM"aKq%@6,5 _7Xh˺Enl߭&k$;u`_+׍ܤFn7r8״HE2iVo\ 7*>Ybo)zE=hq <|0wmjBu;cu_W\l!nVB޿6<A$H};@ &[)|9s{֟"G./Mn: vC^o빼j[q#TtKُɩ =x6ZmA* P)tBk EShxᴜe{OW 'FNL6 ;eo'{1r]BB"F Yٚ`|GN5niU yLsh3N|K,2 #p: Os)ЖOluAKސЌ͞}%w<"u*q>/W!TkD ϥ nU#i4!7, b4\u_~Ӓfz/zHQu=-2\k%/^[cZ#3~WX^T=Qko>>wmWԅ;/`I$҂@NL)<)!n5Ԁ/D|4 ;!WhF1k5gxHK 2][FA cUH>( dc".́F'1_vj4kL28cD6ފ[h0m5wWBcB ! ANqt~Ӽ ˅G7{ i]ZqRS!wgkZ'@x8EQwk%lXu< @O顩R%d+ ŮWDc^AP1!n8hsy-;-3HVw;n>ެ96gDQ(8xu$?V];+|zuJN@t@{&6 uCANŇ9 A->,'{.8%艸NA֩e_E/FkPΊ3{cٳO8/&&$sS潪_O.K[p9s^Ӆ6Q= ğq;˵ Se_tP;}QURϑka#Hv!kO馈"IϋƶYIjdVmlr4q̀rx]2+p G G&Q/WUGV7ϧ@mRTnTLV'& &b5h:=*Izz@ z uUI$&%E+M6_D%@x+:yG%y/ZӛV}2٨ъAC(&W X寊只@?2OC|I8 2z95e.Lob^ûB)q o!^4ݝD8=нp] d ;eFw(Q轊ot$їw}>X0}9҅ ]kI'[`ߨ1٬h2"ءIw ^%cdҼoWZsO QsX$l'+c>Čވ̕6UyapXc)":[w8Ƶl6\I"{W2IBɉCNopró- *H{_^k&{_:i)b)FI&AEҜ:v`G)΅QjR2_?bncsc:UP]UH(1}O90gE.|[хf`Z[ nJt+]n҉u]]ג9;F$:\У^v5q]mzA16$,nX^$"Pk[ڇ ֒'h~EY\LUU;uv2'|G陙F؅㽸2%) :꘹6';Z:?MԴm=uR鈔/I:/!vJs cv2^/~ž%nд$葌 `kBaJEn_h: `!X,l٩B $0v}ED➎ $*ާax8p% 'ܳv^N9XdDaLn~űW,bUv LjwY _B0׶%#Vn#UXTH(l!%8yEK e p ?I1*c/XsHkMy{[SaٕEma~K DeS"o\ޭy_Jؙ9ӠKC4X4v C}'Q t]d^`2$&AEOY!rS45{ta,yE4\4 "XCvcȑd}]R3ь ңT z\CC `pF@`Ϊ8D_Fmò7bx@XY?ٺ Cg_z+h$~]b@:V7uFhĥ}#QQY%-_dSpp-o S 7 ~kl.DQeIg6nii:>]xފnУ6?ԿoUbPZR%]67c9&)_#]w4w]x9#6B 3ѐjY(`up-@mT,f4Ȟz$$|K۪'uEE!,z^8)JiǏ FH >-No~'ޞC{lY]>AlC57!A?_4oFܛVSd~Q)+/ko6n5'7)=an9쾚fp ҝ5]_.;#z*p8 j5j #0,ߜ//G;興`k W'}blk =Ua n*gJZ7Xtc6`Е _\]62[w= ZԬ "vm5~_-'^ز{$,Sj3EN}6uSCL$<\cFjTۏ&ar3Γkq&YBgVNm˧Ca嗂 i-9^ř?Fpe‘$[49l-4ƇF%Ɓ_=Lc2x-;,Ll Nֲ$7%[`q&#A@u))ӿYkJ`ۄ.o{njBV 1:e=z7f_7qsoWy~{inW,gg?ԇA=gs럡VGt26Jtiq*ƽK8lj< Ybt2{4?$b/^p.6R}PbQ,Mq8B Fd.;vs|Oиo"̱IF{ RH/6 EలVSpc w(yۛ oc:HŽ t.{nwVl3 wR(JGƖ@ؖ1wzQe9voe4i9JVt$Br^.5 ٍ#\fε c|S{q[1Ȼ]f!ɏ5bdG %5[8-pq ! ipV|yAkK%R2o44@ZLUͻ浔yzEFHA P6A/בtCBUc-J̍+::1(yo:PTZv+>+"}rU_@?yTjM{'\a^5l괃׌#8гLiġ<X-Xݯ|d5OS='M}ߚy5 痙7J}pGt.O9 &R#dە!f\ؔ{M l'_>8Ce|)Qڨd&[ϞFN<FOtW7x(7x04LoEc uA^5zʛyĚM=zqKAnޝBseqS LLT#+r>sKbe\[lS\ɐc=sVm܆+Vƶ]ǡ5:C۾*$Ш4ad{bdQC-V0{ϒ,iz3?wBmtnV~yzvl~qZvWʱ4W ?Yb66fڣȡX9+1,#B8{h, bI|2B씩Xᨌ'd8{apͰ:0zZNy[LhkOOdΜ>tPDhZ y|KM4;ka.zEPU o3\V.,^:|-,(|N>RvOD ⸂TD%GyS2CSz2]@^>L5?H)TMR<ѐ`[RG]Z"O27t8R@fe캅UDi0j?2@|f̽v4ʮXl{f6K:{3X?#%bMs|uI`mB x_8&}Tq?WvO: OFHI#(&EDҸO ʩ' a qY!j4ϫ982U6'!\/BX Vu^7kl˱y"wj5.O[M>Νc{ {.7}<}0ChڽqG$Fnc59UBMi T36pe{"Zؿ=$A%_s$+-JMg}f̓kEK7,A)dvLlʴ G 52mj}J39វ3*2lFȞaƜ@߹|j2$8GƱI.;t󄀠_LV!5t9v4Z+ߚ9ڢR&9FhN$)?j/kνB"F$m9maap0Ie\[*}ۨ=< 8钤Gi3|q^rqI_B?>KS"kvt"hĆg TXv8gA%CX P }*TDx2@ՆرЁ!9RT%McܕE\% `+mS==ۅ#ro ë5S$};ГENajy/zXZArV|`n@unJ1# R&e#G:UD\Hi9C}`+',ig PֺR ,bM ]+~+\QdNBL8mU)\m[RjZ6>L^[./OxRhGh$Uz?.hk9'Qr1"pMgboL<;eu^bjq9Sb.Mb+KVڮqwq~b󠃭WFh2uY1 "4a6GPq3qy+p@tdnkdܞ8rtl߫䁵E0C#rʛ~xMT^$=xfEI(7zikeb=A;ɩCsHg(|$(&ɴu+.1dI0p?^Я`k^ mv*b%xCiR|n]O@1w' f WzUK(qZ~kEk`߁xE Fc]v"oR{?KŔf 3kkgTw -jb ;c;3(w#FAЀilTu<=@#C(ϖG:䖧0-cjӬB$&(i{2iǙёJO},jXEIYYG$v/-o[ @:yNkŶx]U._HD* ?"3>ўR Q:7eBT@w 1v" o.q ^ ftw_ vU"dzSh#}w&#:mS4y-r^©-TQx7>47EGm¹gL^NMagO0_䳒s۪X`wDTnB;,uZ_ccN4{14U.@4vhb:yqtMI2FѺEhy4|ޤ愑oOa4C Wք`8iZEқUӅrb#$\,ʄKT3M9DјyzWs}vnxե%e˽oZ`ha #AyHwb@M:R(ϑP z^(ośX2WBRQEjWRU_ 0YA%}bD}3)ԏgWz2vķ#: "k 0vN u& ?APG}ن =ȱĮ(|M;%FF.hrŲ+bp L/ˢЇHo^3^4p-?םA9362[u/ ^c TNz]jn VמnX׉hfjw` eH ;iR8*ee,}uYY9iD?h.Fg0^j^ 48:j4<.XOm92_XҦZ˾.Z,4O- _73 u62s9<$&+;^?C8-*w,ik,۔ip `zH @=WK0PȄtuqԛP%D8`SEsL <+6^2# ǎz7MWAEIqˁ=fT]4K9ܼ;>\򹿼F_%iix$Wsj>Cbd~K{㳾"u .rkͻQ3ܥ]e9p(=HlY}'@Ne/=z0l,X0B]\ :YVn$P0@1K蟟gv]( c]=[6XɗҐpzqzIl̎w/y3f:C;DA`!oN-I|V{u{0Tx}ÔunJe/Tsݷe~0,Z7zVj|aLNNVlux7Pkk*ҍÓy>pa }>]zT"̆ovR6cu'zȖQRs;MoF-Y FSq+Nkנ(d.a [HJec@Փz BQ?4_[>&8/ }%G&‰F-|usDBrjM )>/Mڹ¾ Kqm,T5.@r.zdRݢO_'i=ߜ34;{$SoDF˥ RFo :ux6ڲBM;]= ڔ13^o/F J6X6KLi 9 Ib敔gPQ8혐an&L'.[5<]'nۑ13eOd ̍T2eq^4 wir&{?~8E?3:=U,gbkCPǘJ kD-Eym_hm 6+5gb#JIhW+e6HQ.t)<<^~֧|::ebX!k)1.AƽB͢D9+:"]pw t- ՊcE1aY @^RJxc/Wc-P⟥dcX@$Pb> T HB F m UN371R\ !M-+:se<-ЭU`4 R*RV6 D3Ѷ^rwXƵAx7ʟƕHi(>{z$t̚!g -cOR am~Kׅ+i\i4uF(.I7;uLzpũ!ˠ%2bgo,};/?zՐY" R=;M,l2 b :r͙$9bEt#R"dC屬W}Y}vX}H[0-T_TJX(kd./\$SeW767e)[Y5:S q1x fH(+G9K8Gׄb*" `-000&|^&JwCʏPAvq7psnĆDJ!#9-wS=N^)t-XyjjƱQ/?9GC񱷋IƬ1c6P 8GN`H4g|A0l>͖óׂEYl<\ *n[Яj8r0yE*xWԫZ5?rxp:|]_"m#ٙR˩{f**bBx(#,:;:6sd\,[i0 [Q£o,,pWw"k+teIC7:EA`հshgшpU )˘E즎q@.6TQZs:5{1TwOoS!s[c't_0_^†U^p×/bs}k)ldwTtc2pk"S $d9kͯ]'༽4&,DWq|2kK BP7/֭0Z]$K |-zR hk[Hji=xiWr:Z)uyiYLB$C@.Ǒ^9,?Y 骬ZTlN|jšjӄ;ױN/u\)6~Qj.]<ՕCXhu>ij3R\C l,S6R[|ɇe ZMbYfivq>׽=Ħ?u@8/3C#59zVw-uSglbm3F~ޣX3Ojf`x@0Me&[;aLMffޞ橔*q5qHʐNd`>7I;f-3UMJlu-%;nD.T[eL4s'spVN5;WX4k CGa-~*G8.VCO_ ՍI|6)idb6{"bbOD<΄\ÿ@75+p'[> KI4wo?Xo_޶2Rפ2-e8̀ZBRi G..јbFHma\; lcjIG[j`cv`rJBGUҲW |W핅=+ sW'D#/4o$F ;T\s~Nnۯ/yDeY,R,RrJQ5_;B;[*9YzVAbJٹNj:MڦAzHpr;jt{tE,"+ rLxD'zfGS}Upfk?t.*DiIDcI9v>Mݣ]A^9rXv^{)Iĝ R%zY}pq$$Ȼ- |T9ZAmIb|)j=Si{/ҡlNSު`$lb `nLf_ ?wB>O`H5ӟP68B>e }KZ0Rpq5:@5W6򢇏>7 N" B t1ԳpDlpVxw>ge30/MsQ̀dg1۩߂ b8vgIOi[T52;z_lNA.ڸC` ^B??tϨ , q廀wόU;d^JFR\E\FDah; 0+gix.xGCw#E"~E P-MD{.(p:Z\&R aNFE =ĆN&]&ԁ- )" 670v!'20=8w^^K.7.Mz{ pZ4cGH%czr*,;L"yPEsjFZľq$ZEU!; `] Ņ杋K5aZ{~`@ ޶vʙ֥[z}H[gOX8a0X:d=8n d5`B/^Q֧ iaq"R|gg9ST}oq(YdU|O"bNp.dXAÿSTt+V89b̭a*ɀQTь i02NHVrpY:r0\[ldKPw +-)T,CK>SisQ1ivZg`hK-)g15EP/>ー'V.x3V|dv_"mv{+J^ܧ0qɑTOV~㽹M (B/P$et5VУay&YL;6rk@C~ Zy魿Sh0astxw-eb2)cE*+o_n&fOJEk@8ZlzڗJ~2"v"2# q+ xSG /sV;MxyZB\ h:&*̽+ۉdH2\#oX3wAmA~FS8@w3JI{/z`@:~|C׺obީee[f Z"jୡ@-jᔧlVEK?Y4x6&50plvi>4Mhk)Nw}+uD7 ypdb_~*-Ƕ!zSnb֞F4HV"v>̛,{u(lhG#eJ߯{o֪ :En0?n Q_ DX#ϕBb[I80sUi^IN z2s?rJe.,,!oC(شWnbirp@gp"L,TT減tr0C̀vMzc<A-X4BLcs{,۬ZǛLj6dOkKz!$Kʺ_l?g_k0p0u_Tlէ[,zv@M˜"үqfJ:TߔRowF(djW[Qtw6uKj>g.:og&B@eT9U/8TՌӴYPkPqTb>5%(T?̰v~GIJ ?\ГH> i%f6ّׅ+'~*;妭8Qxq"WFYJvC3]dmLWY7 ^d/}ή7Ɇb7Em{B2]4# Eb ݦ}T]% W!:\,xO,ʂ|Wk#Im 7lh+ܿb$6Ht-p?s匧&ZɄĒdq+t3."%&?hgˁ抹p$\@_o۝n7FI;M-" RIT7M|:L5a\PDuk~lV6||sv\~:{ͥM*rJʃ^L(ݥaQsROIެ)_=2rح 26,:))0@Vcy%+oEgR$#k}S`h-[Z=mQȴ BǥQ]7dj'yQHϺ'AS,`k"j X6 ZW4GEA5"qաP 5F83x╠c41T.x(pح+OPji 2螄<%Qpci0Wkaha{;UӸ9@>k mO%a>?%6Yn[EdbVuє9ujy":0׃\(bw0|"jPMb7҇(A~d<̆HV4kj8Urjbp0u,]=k@ol(wGNa`+ٹ^Hl6__VEG"l9EBYY !Njk(q}M*I<švԼ$4]\q5>-j>0(><'qP]WV(G p)_!F(+u퐁^9yi ){\.b䢳oZ.>>j@,WځLs=k7a爞w/d1>)eϐ Y~+煖4-(~aNW_܄/BѰK^MCs/ojɎKfUNcƬi E;Φ__=X1^-]cQzQ(z_*Q/g [F}~[z}'?9OFv'䭂 ?ZN[ XPHUy:蝵"q@f).8Mj.4~Tޞ#wd-9 N8gYXRKBs;cF8Q㫥d!DOq|>-re Wق^,740q>=z$\r'8bƪ?o᥻iԗaC]u#, 2U6٧ A=`js""o15D{0d1(Ud$jgbjc wMv矖/k \q(2mu8F\&rKY۪ ڹ}@cQĺvhpeQ#jLe/<ύcXUQ⣅EAcF!Xdw/!ZҢN&k='xyF R>7%/ZC߱]cV/x`]~δD*mUr>'_l /70~k"*pk0Qsn2W1!W9n6[5MFg57n.YD|\i[:=0OCD)N/6 @X(m 438Ϩ2(KԠÒ15UK}O^fmf RjLM$csCCG6MP"|^tr/gxcr ׳Ia*p!U-3ۡ3:6rی 5!>)o+Pdd̏1M0ȳN }nvPy 9ӕv/%3L9 $ip" +cAW)@l)@\^:&Š:4eV嫪wjaӦ\O"EsO}#=n.za'GjETl| xxyҨaac"81.'Th~gAQv?t31mP9}1*g[|2Vp1lHכi^.Wuf{m,O[ȥNblRG;U'k\(VF9pAZM@uy {kLNXZ_-<굅7?#\(VFd܏y7tJ_+KM(5=y"^h<1qK0eUlg1ü.ے&: %zX+kIlmof鐄KEl~A&XHdU X++CF[ߘWvهT!T(ߟ&}[90 k<^3(|ESa͚. -Gа1trnF2uȿlDikow<*h [+JªJU!S{aZ).J]ā?[7nx|!e24$RaPaA;M!{by;$B2`@C0@ ɛ '<+gm(cӥq <_32B-yRXS&>ЊW;8-NPKT Ɏ:'E:$NnƕhyK _#C./=y _tw*f`2_<.W6MEBKd`C߼ @s%! b<;͋**Lf.Ļ'a{Wf7bMR^)R Kܒ h>1R dMvCt@K E/:!ֹ 3%6)G2"X*\ }ȱ(Z[ qaݝt'`O!ඇ}℃hз>Egr{(zN>s2ZZ`98|@ڧC /f̝3u L]-o-=oΰZȠnu dVKMKD-Gj|j1zL!]2MJ-d^몎)c^r [nԀΪvn[yyXJ݀_ü,S MƚK_~"#ȗãfgԎ=G h m]M@xH"og1}ZOPonk#;$jo]u#vDmԣnE᮪2~e((bhdO!pDK7, wD#%tKցqwtV;9tA!>HGܖ7!&~ S2m8f,3|c :I;a(S `_+@:^TԺ#{XA_9'e'~P`\D0, Q5@.'&7Sgn xv ^&+*A~q_Ӄ >-_{8g{ؓ*[ShtEQ#[>S@0>{kx Xn_E7ҨWRqҹyWPdBa-|4mH}(u듐T~"%E118븸0? "ߣ%kRn/L>(Ƴ!⋨C(WIjO;o\̞bqHȟ@Oiҕ E,)JAF(`$@?wYM^cN!<={J rOaх<2*E8W~;rNc_ikR`2(-;4rL}MrEf@$ʿ%5\ٜ>EWSšT6#0j[gq{"b]T&9XĬU*|s.6m2lvIB[fG!}l5eª5dvV϶w\̒Ye%(rB gYg+kGV[['E!@bLvɘTJ8S?Hu,NO:Nw]Ip'l_ "p'…q7i/7;xRIP>6zy [)dX'gF(*jCFr~?ZC/z*4ɵ*+P/5[#9!E/&Kў'=QeON@O^]Z}l11{4iW j_9eM+vVl:؂zt4~ $?mIT$9CVӼÍl5TSN}_j͑r޸aFL\J}mHKǵ к' zMMu3G _eѯXJ[-"Uw$7xz=WqHٌ"0/0[`b2*<$p=6 `*mTTz/er8L34X<3S7x^l_P=s/R=}Dg'CaK8< y, ?ِ%7hH(~*)bE`ݴm;ad'ӕe8̞J/ `cKټ+Il@,nEz~Dq *5YĒߩ/)I5ƒHJ[:E"Y8i )*ht{[1\ÒЫl# Gd7ʯnMG64MW5 w 3a1Oڰg$%pU],xI W ٨蕢aQU@C"q-8a "Nr a| RPos?Ա=zII+ѯQ@m2+2BHm\Dcs:/D} sVyk%gj+,2L!C5ndJЭZ0\HZs˰ ql*1:xj-r*|vrӲ7#$6l0:˥?˽eԇG r\ WbZO-O{ ,ܸ+7 r!ZOjUX3j=wfaMۃ㨷ֵNDtxh<`HxEmlx|ҜKXoHv,al:9uĵ]+ԱhB,o}@6LJʫ}OG^JcXVC\Qw}1ԖVƌr\ IB՟J[:j4䥊xXĹ-~熊ZɄոuyg6jgZz TQuopsٳ#CvKa\ʯ+> DdP;Ww6L$PJ"  J>i}ngM2Uޕ4Q_ 4]t)͐<]pֹ|Ċa.)_KdYJ!bX$_ W&ZxDjo!%L.1k{cMu9Y ;Νʼ!B5!(yYڕ9iKs'|Ѭ*Xs  9*% t\>IIJ2:s#zb<ÒhՑsBY-T&Hҧ3vol8]ЋqǾ7Oղ$SޒU f W%Ӕ1`~s06 .͍'rQ"`KfYb9es猔Ma< @ƽ lEpgYЯlHqߖ6)ΐ /p{?!#mmOS}k ),J[x ,ǵYTlLB+ñUo.i|R7? Xkt8Qr ۅ:/6vMV($μ,kbM PK>;1Yʅ&`eeyMN~޳<®!oh$Xj 8*΀DLuOUd$-ݢ|ѕHyȔ@UepwtTk IOj}ʄ7d[ %/1ؚ)"<q KU C]䔠(Ylڥq0~HP]U9虽UNPizDiO~F4PO@&l =ܷ`ԓ ڰ> DI+\W?ِRB˛Y眜X+yeZ\ m[?dKG: =:ݼ'}6.V2ZI,T-ؼd~ѢjЂ[XYC6٨Ʈ"ythz^䋳]xY! &WH6y!L3KJ#L4 'o5}WM%R=jY+ncihf-5aS9m#D iR7eBPo؎K'pǞ(!^MI:׈xB&~n.  I2GTu']ezHJ ¯X"f^;Amc ^@9vt71Y0gQ"s|@\Y{˫ٗg/SyjϢՖFf: bAhSg hÜlJo.7Wk:by'_`(}%RH9=tL4E1>\^3=UZ*;p٧?T o]^8>8#2 vwI_Cr x2/M/xUPׯg 仂ݸ@S<5Ŷa& Oi# I5̭$<tnX"*< :2ӵ3j7slʇ&5Q]@R]Z%]?K4ɤh^p\?;d҃g'QITv7ϫ,'Zb~]^'28Sp\ .dLFP8'gRl^;X9dXw"|=slCrnֶg^D I},8#He m]w#2tV{\TkC~*d`<AL+-i%ƴ KUBا6sf5_}#wERcwnJ(2D7{_[JY&Z$$a7?[Kj._4ʦ[J0\ȾTj>5%it6 "Cyn [iAw1`Guz+E {V# Wz*}8QpT姻B݆\Œ^+o|y!l1'͝6EGvP^KEJy Qr=3kʇ ^;z aVvKN^GgQWps|z'V/X90{r!fWfܣ= N˕J*dJȓ'aោ,-VzS*V $rR#K llСA/ 'ayGr3i%Lw!G/?Ey!Xt={|]Dm¬c o~h, tVjT\{YHAZ3]Eª%>ˑLNM2uppk#`>|mOJA S:^E &k*zHՋY GG=XЏu;L>=ı?;3^u>"ģѾc59sշ46g˝lZoh"k"qJ'g*CO(ղۛzw PI'D=k-mD&CE9Au?e6F?n c;T r"R9Wi}#=shU?T*LI̩(/@HtV݊U͞'9 /"kD=F7M"E ߤYO-Eno,B,=ݾ$@CقR4ϩ!S6@>ഁ|l5DZE݇0Nԟ. 'B_G%X>4DgQIDQ !73ehJ"Kt۾Jk;Cc t0?&ѤM儒R.9(mtzY E"wF8*⨨jYP%  隉,Mc,kq+ÞA ]f#e)FLvqGȜYGvnBhLuµl0LfA_|'qӿ:QnIL3f] \1Q+.;Tհ( p-(QqlG%a0}F"ȳij`+j Xz6\3SR,qE9c)ٟ¥jlls8=U؍a~(H Rku F, &)<dDu`޾;@a;2,\4ɁEL({wժˆ[x~Ѹd6A'| fRXyfA>=jipWS5p+ ܨvop^ CX<$ imzP1vt8ڦ@>*3q{+sRB%Џ6DIp2R@shT]ǒn/L~ޟȏع`M--B΍903w{||;F`A>f\y9cE%dk&\'eZ3#Uoo͉8 =w_'O`I<ٽHAI21>ՔҤ[ռxG'bg  q()8eې"T{t\;(29$D ADte#DI+9Kb@?ZH) KVpswhQ"8A U'dq\l8{v۫rt/B/kv V"X0-{ab͙cF@c]M}-t / 5rw-6I+ ՐIN'?qݢgA+å&\Ή1jwS ]lS vSܣ@dX@>ItN @M+UG]˼OZWGF }W*x}RȒG3%Ka56z,HD%mbf?iKVKqQB^y ~e;DgEzq^ UQEl59Q6H6Qu]R`@T=*]Y/ݿT,k۔O@)ɇ=i g0 P%x5=B͐UǞ6z!z9p}wNuX&؈p)-˥BK Oc%yLXqe,U˟SRVĴciH -Uy6C.hUS\3y!Lٙb̪@`jM' @":ȹ<7Y+|c@Ep=Ѓ~wp&lɼ7Gл;ѽGd4@TKnL"XəT7eW,+Yk TӱL9XvL3J.NDnxU)M(I H/( lud<lQPasM󜹜%@L0%"ԧ.O $ b!䡑^O~%tp/S8u&ڡ͟|`{yJѐ~4~%$z8CbtWUaEY$%q8~fjˉ_ڤ0E^@76[݄76za.SdGDsQ_3$k"_ oAg'T$ϺSSu`(,} ߃.B.S8视Wd3uYdyj:*0ͬ9pI 0 Bwk8rDGHC ~ˬBbź:0E.f *8߹ yݗ[CqsWrD$f;Hr*Ge>ݸK4C^ZhC<3!͊.<?r".l ^%ޝC7;z<\k6JiYK9f)8wYnKp8R m(iK*]u ݧeOÓ2hKˬ-qy\T ^B+)SN!F'ǒWD/(B]dgY g_R1jh^r렠 w>Cm10[uJ1#{]'R2 =v)nd*y^ ACTeH!)kw+)R!/.rn̐<;Ű_\֔ w3洎7,?e)M}h#NpNM k$zi<+?'S-a`B;Ec ڔ q,9Y]f9eEULTY?C"aIH  diRؑ==AD GB;k= ŚZHE'dJGIc3Nd[8u3Á+vuXKסש9~ "rxM"G%1culb>rE=ZGd{*j#e(.=Y$d\cE4>^3b-'bzzqSԇ+qBg #P>Vbx`0 30EEMȷ Yڨ[x T&uE.Џ_Gz̆D@J%[tͲ*!6>]c%,G#ɂEh/ٺVi"y%K5I~-gk! ന#T%6t=M <3D #Svf6_۟mO'XgLҋbQb=HMZ"xVC`ṼG*S-3>N:mZ%,y7ajHFԂ_%ͅgۙ= p[XP^ܤ.>g1 Ks揖R?Nm\T/?^|}8Ӯ(юjPMKCFyPuN_$ҀĬ<_x 65.^ȁ_l@s,&:DqͦPuE•rKgx/|ZA-+kya=&]L.&ڰ5=ؘ6[ iLoX/& $ ֮Djw{}i3(9=8w \fAѽN[9)1S2WkZ @:"B>-hCl3edUvt;26Qbfers5*0.uJi8m-E~ё:+/K(M3Bw\ejT4*yQmO9XX"uRi0@GD,׳OUat.+ORjXJQUA*QAI }ٰɚQ?##mԆ]Q.\nGE.4֘0`"[FXe֚ ;)јdZ`j=EOtE`IeJbr61wZt.V(,STlBB|y&泡4Q0Fj6lO(gGoql0L?.47:OE,ݪOK$Cp8٬gtyC)T>]AN*)}PtNd [ F*2Ȟ9~k풬;nfDC9Q/G@\vFm4J*nvV =GnBWi R[%iҵ9A8Q (7.n5rX"'0ogQkZuUnRon̑Ӯ7ٜB IM_M5ڵyNgM=:ܖ M odƐnPRIz^hxoAO-0>:1VnOjpzg-@߽mɂЬމ}LI$@yr.w>,@lU] oP4qOwGW²sCQEL o\Pڡ☤db%}vq|*(a,9 xVlH-mQeEض!xr.(5C#K:O&L!X cqKZgN/Cm|29oϭEOP-l/26uaٴ|2Oʢ (3GNଐHo}b~<v >h_VXj Hq~Ù ߇òlTh؅ Di̸*1*jIa`lN{pZJԷ48^\Wo[/ko^eiq U9!';M0:7TCI[y?=z6 Djs Ou*E"5 Y2ޕoYn*-K?҃Gx+qŕ?@99T})S_Inhz# A QgGqu]q mAepˤv?8wTMއE"u s+g\m& ?ԒnI>RιSY I\govƔc$O\{% `%Kh7˝ld:GնKbhK:?ǡ]HyB'JHR`:1c!DZpP'.vM$\+SGϮTք7t $ @ ꐆB|CP.u{ {@x4٘ Fvx#՗~TWT9M &FvoEu\)Lwfj(ī1 B* ΋|,;tU/ɽ42"S(s8-:]yɼWnnR>|6Ap9#0rMFϚ<!O)CE\.rIoԉXu9ӲM\-8_TH'Ϫ 0ӼXk%[2cϋr=4-XbqB/a Ĝΐ|`q,9^#—>7UK?A\$䥭 @M&Wz4 ZhNfd(P:򆰧QC5-2[Hȡ]{-GA| p:fbn$F(hmKczZ%7n0h?1ŲLu}X}k}msw?hc>\ivUB穖(䍵 S: 04u>LV>Qȗ} -Ay5˳ѧ?w$9$5p0)`3xCRQA tо]"*㲚VR),P^>c ܱGwOUЇ1hj(zx1v$oY[v=VL9;1쵁nB4+YMZx43ɸM|UqrԶ 9m^,)c;o<.b(f Yka@ >;-۠ܡ ʣ<2T /dkL(4W;s Kgo)3Pfk}9a~骟!oX|TQWmy 8usaaƠ술_\M6!Hp0}3zatg$&DiF=} H/!ID0,mg_xAȸ~̎ZROܫHM&t!Dl5vD>?1e>aY}%r:S[VQY %+'J;u]Nf~ɾ &F\7~gdSm윌%g*qGKEf!xvzWGw]j\`u०7 ='S8FƖvLwޕ,-ǐ$*+M/m^:Ke5vT_w,4 RPP2pEiH/ng.L7Й(/)_U L%ͬP3 ~I3zYsU%|F}m}}uc]+h9Xb0Ӂ/`s8F/BǍ{-@83pΗåf J/EJ|JfFUzG*jVUaSY˙o#nhSm)MXDdCnDsಮ{ϧF/ H<!+Vd8w$8@%ៃ9fy?KX6R, ["`Rd7!dfc-t4jrS1(WQOT?'z89;JT~;S#ѿ1ŧ -3<0/5md;¼IY1?f2] R%A65}bcDaدz."0?$ËU~wTJUP'){sC Y/$!09CT>.Aqĉ Q  fw .G @& rjBq#(z1iҠhuulR݈Mi>YvUnmל#6ls^ q4 ў^a#XD}7SHX z8Hw QOwxZ&(&]q$L]i`[35O@5HGIJ$'߮\_ xu\'I0 jqe+ǿUx023Bi@4A3ۦTNNJR35*IPcb ͢ܘQm>Ӷq9~c,AaT^m$3eHd*rբ! /*ELZ]'i76|_e:=) HH-,_~CD S<JFa5xZq&uj;-"d5݅R&DcA)OBd-Ma7.z%S!ʦ2[-H!=vI5[xQgO0bA<.ZaxFl=|6Dw 1&ںy[}n_l" _YH-xkzo4>L$IuIx/*Cz8ZֶQkeNAA>A}E)9QPlv#K½tlG@Z2s"C_-#0f\fsjd%iGP$*˳)iה丣Jw-=Yg8bm nf5sD3 XGrx,Cu9 tsTyXX)_awgjUE9{JQdCӇ_񤅉E;y6,{Dw+"PyX14 0V4?BoiqD^8 Ol^*)(8#L\<KN/ I I]%-9S@s-d፰w2d(C^6{Z~9Zhx#e g(A4uj+$k3T~_ŸWG7|o2PD4qpI\ (-L'|dђ `0MX4|I-E·/?˟V!N%؅ܙ8@Uph??8B8нg@=>5 (ePL^M5B&fb)kr]F ˟(qyj-~CӳtpW-@`sY*՚.KFRyK Jנ ȉC]KgĐ?0A8,-1|@{DH{\FLñ|,{ 5}VHUMD@Ko`a8m_PLa#Ai O`8ckA{k{]&o uNi 4p/ vZsA+%~a($EЕZkŪ|]:?ZЗ!}k$k`)S'oW1&CkށJLS]A؛NlnDŝ4ӜbZ0)OW. eN%W>PmEo߲7'Z~_J 0`3]hki[- L ȵP@lFɂ=߹pZ#:h|+u6v> I_}5\TƌqF??Cގr!+%1O[H等zhbx~p[oCNb˳)R !0bA`PiGv)NLm.Y#r/Pp[xL{V $/l @k!^ɿ#mMBa{/]1nwc&gzWN}es$\.CQwjR'6-s} ECGpYy-̽a}9% "P 4(2t>N!,zrJ:tuݤgcS$("f(ɍG S[bx}m:`˭Ř87ٌc;K,/ YD3S?I(U] C1d&ty*} pԃ̅uJ-E岠SxIUqDGO S5ߣBKȍnfU×I'pXЎ#s*3H8Na[IEK5RyT!`*Yb9̷ep_5Vϊ<[~Ět9[$긞1eJ:lU!3_҄ǧǯ;^!L=ؘ=4K8vm@11zАS~XOIiL`d|L" vA0]|9) !P@`ɉ:G!2?v?ej5WCAv"q9Oפ:Lw`(h'ƌŲ! 6Eǜ/e3|^,/1N2;|'6 ],$Ȩze},8[iMpRCqV~tj?|[\}=)"NJq{[zlWCmbn׈p yw+Ϝ4XƯ~H)Mp I9 jgcHqL3mG*LUJO$=gMX?+Vt[LIʼfxd9h3PN:fsuݢq61L-9A}H`wqt"?@#V=-$)i~e YFj~}EЦ0{rF:N ް.U:N3uJgN`"d4}a*w~"`T}8;nPXOW+U,pcǏ0 qkK>Th£0 'C->2e .f'#^s tI_B09rUMzXLq!bFxbTC6RqT'1`8mGP2,%[lf~k~\h0?/w7h#H]m}XG>0΅T?˘5JJ-ZvEsoSR_E9`r IڿhGx4za8HiDb1-DnK;PI%M^S W X A쿳jm)7aMU5;vZLg}Tq(iYo,`F˱@,X a7ں9Flzw cT+eyń}S|Af I;?0a[,ƹVw|ѽ2oޡQf ;oЉ>8dmVpYca):_yʍrojrmS:nݎjb.a*|:#噽=lk186@S"t0 Q9/$ tY ebw5twko. >A&%HNNhSsxe"DI2Yl lyܦ[1Zd2\Ǘw> r|NdA}LJ4I~5b٢Xa8AN.h<~\ޘᔣbjqTʩXS*/ٷ냒#L`'/LvYka{ }{+- cM|9|C/g#45#ߩoA.l\uaH 8O]1UȠʗ;,rqR);R^SP$`.ٷq?a󢖣J{|#gft)LrR9vw X42U=Ht9 /Ϗ?K;Q_&+;\saI];7 MnRde8Dn7YQoTӇ]fJwro" #ʩ, |>s S;Wyq1TAP sb MQdKs"-n}IkIՃ,s`MDGb!fG-{&[$TjFk:TW(f060#c:έqîrV"H#3~>#U_i"Q%/cecַ|Kn T}mwtIB6" Utf sWٿ k*Wp72>V=&BQeA=UޣuZ<.Wu6*Rj7pM{50y鍪Ub]Kd$6*d@ lrK,2_l1+W)r9!,_!hR AJ>n*S $cZ,*ޗ(k *+3/R>0x iԌueZWLmcZ xG@61mͦ갵*\/Yq/x8#Mquk]ftJ%LXVinS̻ Wx>?ԇ:!dvTjOu>hPҺs$D( F.c*Γ7i";m2fsEnO5d8⢖E ?Q$B7TgyHQxhL(LG찦S`3g@ FY/M+tn Wd;8<6#O"i!yUya8::nӷ*ᖑ#cՌBR%0֊l7>E.l M8$OIO&uۍhLȰyrJXYPcT&'A`\=Ƽ*ν f@+#REj㮋>js7+"D١6,03}Wnl%YoB7<`9 &CU6#gm."u5 _t&OR * gkbt%(h R^.@bW5+2^E[~`lj:T2 UtdȹЎzQabB^%ft}$.406Àp| &H\`, K!?%ts/󖟗) `~ XAb ZǑ.98 h>pJ4Ms< di9/`oc@cq PEjx؝1fHoLMkЃ5e<-7Щ 웣hM:3%h OxaXņ̼q9@ڱ]1X.Be ]AuKObC:Zyu}*-XY*fBDZ(Vـ!gV vlhN".{u cYj#uÝ zH$Gv䷬kdSH(A] j=l`h?ʑSanUc)d*'e.6LjD.zA]`y eVbuoTIq`:G2I04}#{Q u<5K=Ͻ(7!Rws 7*#~r+c,dVrKжi:5l|BZ-Hڵg{gv7oK6#<\rw ‡GVHz,tpzm[ZQQi 9q1LS *@`ų!!ئNq]0ma?LFLO)?rEI"ÆCVZn3~W@Q<NykT j]>ݼ = 1NbsVDrZN-u!>\GJoI*sRbU ($ ෙ5kΖ7eBeYAf ڛ2nDis 0nt bl;Zq4LD*t4י0ƺWvy/߶#*GG+ۗ*\~ɑ! \3p^ڐnFVJ/&tL[mn/;N#VShoaq ]ۜ zl&1QE>Ɣ9d]@uВx? nBdVB'Z-*>]egrQ]V=h8Hv;~v^ / zNV?,\GdB?;% lhA* jpQ> 0?6~u{6PKƇŸowAIү*ݳ@/m: 49m8T'M ?w +lm'ok{MBRs=XAgܮ7gꎘUb.`Dc)4oJRejetvA5t|c %&4^>[UW L],6gZk^i).wDŽ6fN 6ƻ؛n|ETiDB~ax!.yAoȼq?y/f^Dz'T7*Eo$m1;EߢFX7m8)fQDcU002smR`}<Eo]DTrd@@d\H$< gR`: B{P,|2i&TP=WY/Miؐh/+k+RCcX:~Os[ܞKE8|+J ݺ(Aek. ŸU*V\M\tG\>&.}̸ydidjS"T.6#?zhJ.nBCƱ@CZ5$8o$6qK^, + 9~`.~8XE٢\{=Kι=~cem&Z4VHt0"4EJ HhOHy5aV7Dp9&ڢK4ۈٚ:mOz@;x4nb:jT~*sýGO|snW əz{LxR NxY 01:; bD,0mډx+#z!!Oܮo@!pH,B[i}."AcfTRψ.X4JcK.^#ƜkK@"[Ӌ`8- 0i[#Lczl#7| P*WfcVWK~H9Y &MG&"[$ //ޕ׊vc5E9ذLb,,۰dGdC (V)!HT!-3Iyڝ6,#b;#B~GǢR_Ĉΐ=Q ӫ"2Mo)jL˖e@q'qsЉ(BP4k8Zl+IepQKHK^X*iD d}xªuāOo, b=ƟHwUrɫŸ(g,4$kU&&h!o:H|eBdf43.w8#K+/C:Ew+٤ˇV|Ыyo)],^^\\⽁:nV%rd_鄼bx9MB4dv}ōXk};CdԭdUЫs%Q %zt ~k-B}ߋ3+|\[Z4*"q}3}]nn 4bMA,i僵_I-BhoXϫږD,xm~ Ow);QQD)#C2 Ch.-/*3^itI<4ݪH'E5?y1dxC-iXov[)y4gis$'#G(R<}ۤH:ȅ2u':UNj> *i,G˘m2q/hEpL9tߕ -!X_pjv#1ow\QC]n(csLfx-#R<@QwG[:$Z(fY_(ǰ7ad;BfuHқ ij5JӘc6PD K=H5芳xQiYLfn0$-Z{jv IK5~h?w% jo{C犴6~sg5pӈ{ AŌ[=LѨf5Ĭդ%rFY :ry R8"kQڼ3\izr5H!_輊 NƆmԒUQk~4{{)M}1dQlf`ǟ ]3,*fFL˓$Z[ryce}rv!BT{F'5H2o/Τ `o u*?(D^)ɣ^!_Y5eq W[ 7<$S r. RmI4*B΃F.shYweYl#+]v:0kRPҔK%.v13u.s[,Q{6bUxkxEb.dM2եAF1xML8;`^ .Jw<7Cc"+~%%"5X !.?8ͣ:N35?ס%|35mǸqDej !X%X z&OeiH%ءJֵǿOZt\3*dzD9澛9sGnگR@*Aw޾(O/gI!5KT:$.{[[BNd~=)"w4R2{s0fN05aV-2EY )芧)p`sAE Kt*#>0h7l(*R_~CUb@= Eb q 5'[v .L0iG%<Y~%{Tx}g`YDCr~B))l_Vty4`0!bB\:aY/){e(EXNA`1Ҟ-uF3rb7s )N(~X؊ȵkT5?I1f/i⸪I .NTC6ȆE ere*D#-X (o:Oj;9wC%*aDifk'%يeð؁e(c| "d ?~d`uVQev\i3nׇiARi"Sƕb:'"N~u J6VrPrWnEFHl`R-v"[|`n[Q.J uslV?P)mŔ}'PF sm~:à\20˽>@%._me&ߝIuh3 <*iz '\^ʐw!;)$O{apqt)H J·a~Ak4w{Ϩf`N`k5!@f;`'K{Y}F&15ZO=Vx_z#Hd`}mƉƥ X_c(Kh%RS,LlsS#@*} y(fqײkM.t>!Í7<*RSMu Q?ys#. {rj6L+"iŰ{iJDTOT?щv"]Dio.#o7r,p@ϸwOmgri(AȝeSGW(NeFp3kfsW=qH7STޭ~ 镘91^y/pr|%qL U#b 39 xl̨ސ<0Z yPz(weTwA>Sv8C*rz,ke_n7vd霂 k +~c4kqEYu>L8hgHGj ѿ, %nmaV-I2LpܹS_I&x`;lCÏj:W(R֯&8\QRrPv7-) II'Y0- ٸfxJa::ƛN(:=:Qה怡9]س҈2@ٓ/cj}Q)uгyc*)Asj$(IlkگtbSNr!|?_BU8SA&#iTF}Tf@_Nj{R~2cO~ e$X]Wn貶'x( d3@l'Yf|*:HX_vIY`h7ge{GoshvӺ;Vibpp{Y]K6la#cXnbq18Ԑ< z4y?ck R`2'fq*ǺC]z&yk!ǵNW_4a>-n}9j.öL~GbkD rou]O0Cgq fQDyjEҏzd ht 1<6]6d$B4.>Pt–޽*zx1S$$3)'`[@B8c0waBJz8*ކw/b?INˋj_bMXMJԎO70*<ҌHcȰާrѫġN5HRnm61gψm/F6COҬФ;x^Qls?/ 0 ٕ S6}&`u[×r&3`Ha3ᩯ=k,uvh!1b}~m6z @$dt ݓmyrfcg}t}{L-#-Q AbY}.SGY5sv?ON=y/'JFmbk.tƏ2~ŹpB&{nLw!Zimpn+ ΀=[Ƚ)1(D5"|@7crf {Ixh*N(ݠi:1\I%YND4k-:s؞4-^`Wɩ!;@wB\mӬ`9x@)ٴPB0vtRȀvdUۖnc ء;l!M#x7Ԉk< y6wG~9]F\{X 1G)=Nlhߞt8CcGlv' vu[sNۛB7 6IH{{#PxQG)[Ayvd-y};%'P^RSl֩nIl=BE@Q{囹prpO/u~c^'AzǕLR[SŅM9+nSV'kh'AʸsV\~Cډ;u@3SE mȩxgM1h֖C|L??uKƄB\[}mh,|FtzWP9q)m*T|CHF7<4aѬɋ]K?#$٨> n^7Bhb<J͠h5[.qdFўؚOk>XL\\~(ߧigKx|0."\v^#zE˥Ы[u7t稔֣u㟜6`Kk,G,(.$mtka^i3WpvF409F +4-}OAp%-J|`: Z|{4~1q2P}"5`!ͱZ7;Ѵ̷ Ɍ;}D%@ `jE]}G&N10gv(HOm= ݖh@ijb1:BC~ҞT]%lœ`#E◔vwl[@-5G3ѿ,9.mAiߪUu9QbPs0 g\_ С} ޴E!H2~]ej jKaGtÄS4=![w8J)?^ij{zq_sy`V1Yu&~8c ,jP%lA:)р!S6ٹ綌rMY4+#EAmzt C6V BhGy+ n`1;53OxnzV$ 1$xH)E!5viԀ/:MJjXeunLy'nć_e#qpCİT?,YTfq {JI$O^s16bB5p~AWsy7L(,"+1.hm9eU1l r 6qʳg1G4PXI9?zWCфuVvDœ1^q;`" &) m2T\NB؂+So5`>oXO /p~ԍl/S1o{F}FP(uX@U\{w<k)-5&^7VV^YlsiS֗ SZcQ%ݿq9W(H-$`\y!q.ٕ`QL<`Cb h,\Lj5 X@Mۅ[u~e+-"A3< 2͜ w]-߂ GwSMAs_d6Y{ 6rp 2W5FhtM{w.?A6$ӏ*HUZN.7tunjÝaa9 xI`QrՏg\2e/$TP0*e1^>κt:؏8YQcy ډ&cG+}TՏNUj N5{`&'݌吼RCq)ZvHk].* ÿx" =^8 7\A/|X!_G"f>/[ݰMB\v-8swrVlLltIg}CHaG MC@җ̮< ocjGL`M]/XbQ AkS* = 3з&^6v 8,qꞧ!J٢y (/hqЄUTHG%5s?_dL^).\ko>sPgE ?gm(2Ry^@=aTBN80ӱ+w XL` 6pf/G7Y-l0 :?~l0`BX1*UQN@eS1Yَn1U!Ϝ2TԑC<*>Ca E70 xN4`Gc-b)6fh^_D[Ry T6 Tņj˰gAӿgB8P[1񎅢d84]GKstlR@u5t(ʤ29mg1w$-+hbV%}Wp>s6|7~iݗU&{ }gTP%4kwmdb*xհVfcC9\N@9Pѐ4!fqj6`%!U&yȍM?h W,脂~TJyƦ%|]/ z=VbC_@m2T>oèo.,a Vkj5+'mD"R@?k!wwL SΟrIa^ E_UoR"!Y)̌F\8ob+Z e``<ʩ!?%$u.Yћ#μϕ8,l77)b&2َ]@yKq|96 hdu7,&v߇ LhYCOyj>lYޖMA|Ɉ2%\F"y@IпRB;Z)yb NN[smp#D<3J WJN5@ Ip w*PbcU9?H{]h =07-#ŒM^[}O&Kt )SS x%Oim}AozH=%OL#{E 7%ajJdSq5ߑ(%}h&?ሳU} t>elc*V 5U;<.vj6{n{]{Rźt-\o`Pbrlѐ0MV3ֿ zP⫋1O1eò"G1wzAK+bˣ8> d RT73c$dȇ'#hk#1Gw@NfMSfi33vBƀЁYc` X&^?Q,WYXw@d/X)0xY9N{@$ңW($G˂as+%8%jGTT` \aj5dyWU/)ᲿհQ#qɩu]|A8 CHS/\ߢljG> 4FgVV B䲃 jYɵ?;d` +1i[n4H`FO*G&2οuc<0 f"*RZЇ;хJNj H!t*jw!ǰ#Y>a(0 `=O:?; :<.NX6RnCW*Ns Xv3!rJmt4p-&%pE ѫ'y3 lh83-=98^?z|Da+{L#ȫӨ 8@ 2,E( {\i^cd4yё4 /Bi0p|4< e pKCVʚ% 4> .x`sy̬y-e~?0M̀b1{amԙ 9o75jx7C^oGy0gfo$#ܞS(3vi{"ᰡ?4ET@]jw ɧl4" uY2<4mqMoy~JI*tcOfɅH([+cǐߊyFNQw $R~QKzXB!B-,v]粙$oS\E2݃}T-ҷ  d+)EHxBNZDc~$T\؟'qx}QCjWk<(hBS@0Ly~їh,"V8У IF-( _/=N0=,bs8eʊ1!"#`FD=Rbe-JJB!)*u`&s@; !/{g(k΀BP72~6JjL-C~@[RQpFPK$d/5Qޒˎʾ8/vzѰ^KP:1%o9b:GW>B] ww(Vӿq`X)/;UܦB#2~^s+S .*z*콮0(#Mhaj5sA׊ߞ&`+/-s!%K}G 1}5&Olpu# 62*3ۏzj8•SGEe}+lEob7:OmZƌNgD#sGc,id<=`1yPMi;ĭC ii|06-|Fl`PNqlR! $ H_C X@6PO @Р[\aaftjQlaWŻCu-Rd5k<=~Wy*#e9˅z`h]ma w2$lJ˛wJ<+]?bFҁFH!wщTJN.54J.3 }vGA#`ɢ^V[S>c4zΎKa9o6|+5*w_Z%(^н-:v8}%P\@U_ĺ@nco? d=b' Y{O"-$kuZYˑԆ}e?6UݎM,W7Cd-ZmOdI[8StY?B`"f Y_qVxE[h/e' 8kuhT]e!qي|.掄\&`^d1u"9!,֬srm0#g-ԅ$B5->)_%X*kUzN>~kylU<6fk`oGG8 W6u=r>yoxUl XC=y# X3J.k % 1Vxo9 "u˅tm%wk܌:{F-񃴰v8G_l_eH}6}+F&Gq᧜ %uqb-\! /jl;DpCfO~AbZ]5=̙$DPq,_/ dLD{C8y; 1M[O4HOtIpnS^|PC`ѬZx(bUiT~]*>O-e,CL'Sn>7h.h(&9=o;4S)CjSdu݋P3/0E(^M{ lDzP Nr97y>vZ>2alX9n= (֠Au1I `mxgbT0b^8]4qjrл\;mbɣ.z1_LogW*iD&q"`E:2 ٛuI;|)&O5p``)|(qB#;Xq~ּٚO#g4VjụSK6pه׭Mg4\w/LP9E'^g;ɨF $lgIlGݎGތ6Ao~,Ϳ.nr?v_˱Ŷ0#>Z*M*y+9Ww9ed%17YO W>žAdK:{:]S)-9KzKl<*Y OPt֙.i}1` ؞i sQ5.7N XX|+c): 1ʸ&ݧ9<}ID>QTx ;qHYW0N kHP/}C?mPG;k+ݡQ}:$yQ,]"P3sܸ Ñ} >(1NcV^zWRs?sz"YdN*m) /c^ h;ї4dzFcrXQGA(Wѿ]țQ` (x^h\7EDWPB7Z<*fW|LƯװt#yӆ?3{^3:o`d[^b;aH +k<̄t󴸬;2OzIʢe&SE䔜.p:0ܵ]a) /n!ط]Q8c%r\ޫG?`]2԰\`41Xu4 ~w׃-h.wFWNj=zs1wEkP]Iqd]C86gs K鵕W]V9KJ 蚕23P ge*7c~{ £nV6舉Y]sbEM'!-.n=ශpPG0;JuژK7SV2h֬çs6|&(r1 Z*FcU}Ƒ%U⺚o^biO։ #-ޡ oKhFx-kWڰD(t&_lWj,-ߦ VMJj] m6)b}\ 񈪹-Oۨ<2-RBh<>D(0jT.)LG5P,:XZ2>aϪ1V.f)\aߍ2(R>nʩ%I4RXGS)!˹60:dwX| LZ[-r:U?K|(Tl-!nY+ ,6T =c߲X5hĖД2 #{̞"t(|VS{gs/*hNȔQ, m%* (ߍRoa=,q]\EH36ո\ZB3c{9o2{w4(yyqn~ 1>,Üůj MیɓW\K.웉)ODZQZ`BYŞ'wrc,sO%ekecϙҶY;jr -KB} 4#F\ 5Z˚#}{)p: ‘fhEL[qKh@˩L}*fPtRdceM0˔⋗兕I$[!n+[H1y$ rH7nV~n \[pw JTq*WmhhE ]TK٤DPĀ׊ [ o6Dp˝fJCnu„,W0rP[SŬY2.N?Fj4|w #xldU@h:| )t( v^ ݩ$zNf{U)N#;de'SOYQ+iM$F-A2B` x%셨L M‘sR2!ހKTY2lK>&,D%P=}Zq.[!i{푑\ͨبɩhTYsLZDlOqgZܖa <ڻO(?T^ՈxFj @srk)MPbR.'ΤrUG$%zG aKT^t VktUje4< bDEoXZ!"`!Tdo} /tp&쉸|)PD'HUf]/K1b { *R}*vo5jo"{'Ԓ)7WB~߲%Ć:ɀשBBbKA}LM'C I9JPfmXGG. X2y;s bKN2&t&PxmDGIґ`aֱ2i'I=$rfb=oN}ҭ7;"T40:[ OjꞖ/1I[rN,D=<k\n י0tONLq{q)TNK!>gN=TB7^Uk?uD7V~.!`0,R_;Ɛe `OCv҆nU0SK#7(㖌5C&WX؀'K.R{{\[dy}\b_e*${q{䨐̲.jý<Ǹvڞ.߿;CG(;xSOSPrV8*elYi-"qIœ\r| 剨tNeXUTpxw5w;BFqc8(iLܛl~4Zm!~Ȫ[.(9@{_wYV!/WqtyIT;D 9+JF:6 AL^u@Cը::Or{R{k*\</xPғQjR0OnrQ"P{jqRJdrrgԓq Yzj'D?şpz;-J`-q?(ChK*kO+}WKB1: -/qR?7ℷ2f{QN|wP(=y>u#cG"u#λw!\dcߤYbWdUm*&*E$46HGLtuy +섧Dx .%zH^$Ao4'Bi Bé2UǞw'wsM$;%9Lx)r;^s)y^lZ<мp;waƍc4 H;:W8,ߪhoRo%5Δ&B[@riT*AcfIF>-j+iy-7bz>T)^-X܈^IV;gq@ׂ[,Lٺ*W#a@ ;](K0 ]X=g1U,އ*ԗպ0uy}/2;e!}UOm'&%WO%rK VlWEba*?5STBE^=K }S3=[D)yPsH{|( .MADէ&rFK#>^ N\'~ !GM|@g[^f 8j  Xb.jkپSDZ:"tښ璉X)gG嘜 $ν m %7lhzRɰs=ֈ\$5ǖf bi߱'I* wyb"4KnTotwߝ-Eˏg!; ?l[2utC1f6,ȏrig"D7z/eTej}-6ǰ<]9%һ-x58 #EUߛBj_*{%R/F,WC; >ڏA!~<$9N`Np>-KbZkqfLd ,K -t^La QS~TM|!ZϣUEm݌ҘI;zsņKFZnq3Ay)HLR=BL'됧 qUE6hal<&hA=LJ+dX5۲U05CHz`̒f[\I~f-  ¿N2a!=Ar\# M}0k)1$5QIՏ,:l'o>Nk @FFg&/_$Rf25Cç8&dQ$!'GCl[O&uP[5fWefk>11s)R0eBGB;,֨>Lo7bs0uAz.D҂J6QSu?s>q̳:liBO |-5m= hOW^z^PrJU 'өh\nXW&i$5q!W^QEe/MYVܯ\*̼!|+}Vx+Lt60(y=̐{Big䝏Q|OK@)NLqZ="G WKVˏiFKB(U-#[m4hG6 doa_IۓxI*G^j3V-&qnVEZ b|}̀;/6;@Ighz Y25w6z{n"yDQN܍lC] &WgǕDWd4#h)M'+:Lʉb.kk҈W \kFׄt"C(H=,Ubx`ö5{=I IXtA(D:cW8~m;2@b3p@qCɄ:%RFXF,`㽡,8[kg{#U4B ]>ym @d=x!qe+6?/%yZ]m实K9Wĭxn"ХS/9ܽ06F q؇inhq%=gxs CWpxz]Hw(Yi%0ҏ.By^լaj_3 ԔRwAf6k2q0E6_Q⭈fa1[zq#4n*F6b_. nܻ”f+_~7 ,R0uNJ[GLܯ|hT ǘ  5B˘hK)>= .h^J=.nj߱&Teύ:C{GP̆< ivbY+dHz/s5 o}@g'9;dC|=qbG>pfcUo''r`+}D |H ‘峳4*tB̩`F0 h)!J?؈\ՆgNfN{h|< 3ާ.Ka3{YX&p ݂NW4f{˄,v) d*M=Dz+ H -O]{!Ԗ{4.&[da ] 3ɶItSۛs2]wʸ}\ ꫽e"ZWMQ+jj|źyjZF0 :8G?)|Ԏ!zr?yjV`4ڵq 7ȡK|;ƨ:9+^/\YQC&n#eyyJ-3)=zdU(=2sь[p$V6!n0"6O*:gV C E+F 2gu+)3(L(Mū6U8 P+]j¡s %'ё5ɪ(4rؕr!^?4R/mFq[q{'sNi#t.Rm?$l 7%Bqttbe&;x:ď]||Co~v!}86&f[:J7iLO #(еJNܩ-+ g-cc4v zAV#5L@<GɎZ á}I66=8O#qw[ #$|= ec^h2I[!+,R-ݮ~]b{JD֑J`߹̰xјV7 DVV`sRh2;Z0+U@B8!X|t#(Q8 toI~|b>G4р^F-P狅PFBitn]7%\ V Xk_6>pΩ.TJXL,*v6]% Ar%-}aB˗}`f1zLu_m@RL9 ea]pW̮,Rl$ZܣD;rMe,{jƜ.g\X2Me}; + eiZBnPig;}eJ4d[GJ.p k8 n؇u@[KߩlX/R^frLm<}>i=ZZI[ [U$K,tX`Dl 0:ʂݸl(4/x=(BO 3ywm}Tx$[\LĴl6uFk+RQnoRLf9Fxv"(Q߰цKʭ!ojJw":l9ꄥvpMZ{bb۾sKߵ!'m"<"Qɰf?hm}DĆ~FX"(-4r#[ t K|ݽ 0ƢPyi/ʻC9E! \2ۆovVE8$ 1u Q|>mF~bPkk ۳Bfb$I)5^|Au,<.zt/,Cϛ(fRiĂoX1|mܥ̣8V0cs %0MdBKPKPso>[aO@ٚz[ [yur=*p&9~tYWrSB4b~q@P;t 7ْzTN[XAtť]bϓW/oq6AZNcTdsKuw1S&N' 4OH<cA o I/jU%A|4_][ ]|Mgl6U֋2 ńbUID1 mL4O%.nnqONZwv\Wqe7e}B{4{P r({#jmAa&~fM?Q#`ξ[3)"/  [_awiffUߕ(oi(V+Ǧ㰨}W5G b){BaܬIsM C>4afOӧ]|]NRudxVɷ@LquyءMK" a5hIʍθY K/.tf1vUiBQjAgNxUCLţ3[^p]m~rȚ* ՆgN5z@@mhu/ :{a>6́UG#Pc4fXpYGԓg H/^=c6$Ӧy,Gebqe2d~c ZEi/ynO(hy9NNX6љs=}v ZIZYypH+8\=`!;z 'g$˰ 5?#ӝT V*pTC4.„j51 pV>c`51_>k_adjߊQYl\,c3Iyxd^Sz+ TS8M^\9eõd wcry"k4Y3"" v1ӻA%37cEڱ/\pXFj6ڲ/@ ,àa boPYu"[@|3gơhlVՄj{J:F㼩70U,d"A>6NdYK uew.N-Tb=lK 4gq&+K`Uj,ЂcM0ƿs Fٴc eɇ)T|>[?xz2s<㬄:)&xmwb;)`Sr`̈uxt4 ωy4`mը#NN lYP X/O@FP QDŽ 5"vojG.l>@E*i4Cm1Ӏ G .Դn`$mZa/"J"-lY{J SnK+V PyEr쌈;|n]VEy;z*ST 0^e=7_3=,wH (^+!~*tkyÁ3LE)]maQn~%Ag3RjKPbֻGwKv0CtutB[+Gf պlEbcMa5w>;ĮB0?WǷF ƶT>+'ro 6u!cdz@x)J -Эvҗ;=ɮin=Ran_!fJHb:8Rpb ZmD,m]_^ӭ4 woKHHxZV I[aOiu1c6nAM2m72 gƜ .#☩a0ehU WQK$+=^?:U?H=V;ȉiK?* G!s:TJ7+$h.)pj|GIOUuo"oOcrƕOk}ntW)uM'ߎ V=ygN;>J,qylq WmoF%7' oDM]J 1 ~Oi/}g@O)D0G yBQ ςMrevH&vr /"YȤOW=dnR'6ֳ~fj+?aBEg8]ee Q?ZGOs]s(tnqȀ >=~`A&/mg~x择U$"Ը;u6Hozj~e*xHٱGWb%o ;Sk_ojw%g1␎bAQt C)٦#|:|O{/w Hm2Ղ☐oBV:ed.xdqk0ي _%Cr OH챕i*RFfl!"DaMS;(~?Hn%Irec+S%ث 8'|VZ,ROŊq +h1xt.pt u (Iyڅ)c?s]=#Лsd,uD8=(ElLe2XL>ev@9p0GU3S>g@ 02b'@KXjǁvpը @W[9鮾/Vp9dB7]Asl_?g lϹ[\/KVC sd-&akeBGM3h+q(Z!14Htҷi|tPS(D֙{Rp 0 I?DRKm p1M[g6Kb An6[mB>(u;] Jee}5Rbo#.XS:ހ]&kz w BGبPaD)eI!8C:؁:PG T bfMHUH3 e*9Vj1iI׭:O;Yaċ+>Ȭr%iT /o03)DE/_qTO)i'5`ՒZ&]46QU )Ik pk#D9UMldz iH/J$?Rd.+gصZ9N]N2 kb;3!fA2>%&ݥ ms?b|%淽Ye]8K/krEx*nӡq$\iR^k4tPF U2RG 'g;f,f qu~*oԃoidnStyk~)}:i11Wmc}CUM̀F$j-YU-2mO Jy|YDD̗Z$L#?b 8T*՘>1~5PBkQd!gR!|Eglwy k%BV) 00*F./d 'ԖA+\FsfB (\0| | DeWPz R#p`;#wq*Tܗ&g"Æ6lC:q44IFXkI=ǰKm֎Ұv¤33'(=[7şW˩u,S:s۽cwܶcx79I2ݴ/XOܠq)K8VPܹl@تo _>$n?U>rt35b$[xIOKv)M#[cg=R>B&'fQ{w _{`䐃evh᧻ j!2RGX΃ T8o&J"ݿ+Y/mZ}4i@U~%X6DKP(jwg7[r`L^gA,zK8䟖T%o[ i0Ftb5 u~3TS"oؓ}!?_rZgo|/1|DhpgP#M+F#h0 +?xgNZV e B]lZ/+UXY<1;DAC^RW"W|nF>i|$F2+EA )7z&j+8-Ĕ̥~1QQb@ &HYZpJ 8#!ŁQ ۞ ]1kI ƾ_F6J+y H™ʣ8_I8BYBXBθB9[ݹ/]h6O)09?6l_< ꪚ"j!~Ywt# ]i̖rfٷq58~fkO Ap܏ ycZ$WwcCmM9fhje!W;zr(|r!\-SF##|?qdmf(vaQѓua$&EܴTZn&I߻4܎iB33+cFlI)CpIR8h'P7DEd<qA Y&6Rw2gsnhq KCsr!8Fm=YX&"-~?bΠiޚ,tC.J:(75+-Ͳ~@d ַޑ/Jk؊3r)h_#Ȍ^% Ðio9]za :`ԈSrbYK4Чt%{|XVGSڠsK-RpEIW7|XZXj: ,VM[a&:^rѨFS8_y ੽9]+:_CX#yP$DI)%+Ѩ-*@+>߷tT6KjlYoB ebWeѻQ!|_}Eoff8/ߔ9xc3H33Kl?DÈT;ȥ-Ed/"Ε_aZAz"N}PMRs"h31 sE%k{mF@Q{Z+7Z Urkl0=cdo҆#jhK"*O̬<!R+HOEw}+<5'}9F Qy 7|k%q^)(gfk /r ʃ$%;g]Tf?:31Կhj?3iCG(ojPE+L절LE28hJ[ylX'ŌK%Ɑ(Ҥ `"Zd(s&#,6I}s QH>B^F_ z Bjn@pjtKY9:M~nM$*zf /HŘ@*DRꇦ-ٌSBhSP N+}D =,=:F]`1ΗjQʺ^K!6kd mc#*g%nQʰ~C`dJn ].96^$@[H$|dJq4ŀWa=UcΖ\rF.nico_/qc'ttapCa+~KU  Y^gdhϨ:gq@uWۮR n5O X>Fe_K()m/lwf(+Rп _-%#9'/=cT1e#6dQ8`˞2} ^jrC۫F4V() FTKԦ\{7:,P :̪' B\H%"I{c}=emD*ewkV2Ж_[H$KT779SaWg7/k;#>ULӚl]7Y{AGn"iZ*jI}Izf ֭*dI'02,=ڻ!tPn(Nvtnl7U) DD{^CX=aFl˨di,!\S8Z>ZBj~udВ?G۵8n(2*CŃaQXY7 ĂYK`D.,IGp =9vJ`Em Y(\5RJa-].. y=W7WMD-j(ج=_(.-ګU_1G]7%wy/;. j㱰(ogjy][ii4 )S#Ț _<3j&!kA㑍`J6nNj=W jZUUm)BCEci @u4fܓTRHOIRPTMIe9ٵ!f}1쪍)Qdf7wĉ,R{"^>rE=n? "E umqƨ7;#otԏmaE8u?\:8~_v!='os=.+$UV̐Rh?haAmcqjk-nXLwis;XeR-HX}Ἐ 妡ୂtb+]r*iO#Bav ۴U'4(?nz&꬞JRu*I^O,=8x$51ewKJw&222F @HJaOY;vߙU 'g+aO,Y@QÌ^3jspF%#x2?\/qΦM?)Lk |Sz+dlכjyLVc)S{-]0uƗ,ich5 ~ol|ƹTQ:qQ,#n,싄E/;#J>70k *c5?s10iq FSԋY8J0΀$Bdc9F>6Tˀ+ǚԣ'ŰK9S*'tM|2Na=5ȷ>˶*pUlboIw>H *mb]J:{}RY.wf9?K T>3UL b'V5N'+CiEİ@;dh|T_F"%-1 Yǯ o x`qߐ6&Nx?tD=~-طb 8.ʻh ;v s+-KDҹۍ]"Z*js>28vǸJnP.,gmf=OsF1G&qbU|THP:>KJL5R[p&[|_[rp3laOP'r ]FBP*ajEj#2j}iV׃Z̫z-.|B|rWs.Z0Eo?gt:l >=iJGp]yҔ,i?l;2Iwy3ٝJ;khH7'_@>紌_#B]!ӫL>9 0ln$sQ@@]G.lg2ˈܰ8C[h>mXj~[Pgҳ+LdJL&ZOSK)UA>M!ཬ Sfׯčb`Ti-Dԓ둠77F]YA><K} #Wpus{ۣu"ĤvN ϩs7W1=uT~ IDAr=g78aAI\%*[x7cOMIZmWXsGVJvF[ 9 W;#&ߛLi9 d% >3oPv ѫ\'͓l4QؿozmMU 0!T4[d`bKd#}/L L]9,GD1-&<tK3lsև3SYǬFp?Q1 *&m(F^e͈#1^312 MHu@-ٳ/:Ustd4f ӨZ'kͯY{Zzn \jp렐MSkG=>f TiiDRlv;6V]$2x8!?Lr4cYQ0q:к~)mx[eedc;i}Q~0hLzogUzӧƍKKv)l`u`9Y!a)?+E&f67%T|g1X8q 'tl#t*ܥ bӫ}LsH@JvbK}E pJ}3 kԞݗ| {1tEi9ޡdSқ67/#e|?8<. ?ײ` F%tfyZ;,C@o[F?aK"oKċZ0T=r!|&ٯT o3\#Qq*O<ލѬ\Cm:?tY-[F{zkё_$D0F]"՟Y1! Dn"v8E>])$<:3wb~GXMTI#8Ut|1Wf#׬5w"X 5tpBŮ?C.OhpFODWpZ :]Jb3SmRs%Ox)nvƢѺ:r%~i2wVYFCeȎ+҄T:áy0GBm8s+.Y&{ !^j/ץ imWD ]uWEV/b>JlT}AEG'aΛjX"9 U|NSU1gHWYPG՟ށs`q"Gd!2>&*T01/^<g$_a1\uUi;}}UUA8խ}s߾K~$*"@xR5T9CnqWa|(jVɹ> a?Tٴ }~{JꯖȰSl_eG_i߃C1h@RX%#=VGC$JD:<%)$kvz8TsSXt*D.ڿ{(F˿~֛+i3XcJ_5Fz0+,JWq{/vy0ik2.GDŽ#nK< Iv1YS"@ ԇE"-:X o<zBt` G@@&5H,IfDٿ&qs}P [a `c -M`j+Tj wUy!TD绽Y9[0]vhԷ+*@n9LWum.M0qO}PD/9ޫWZPk;MV^Uy"ߟU;a`ǜ=܄D)78⋞0N 2LdV,(Aye̪iW6aG}N\FJO2(ea]!x2uNU}qU A@pvn7JO䑆 VC@A R_#-HѮx*d962giMzFQMCWB~m[ayf:ǩX|m*!Ia6їA}k̪r+n8B$Vk CWQ5~bSLϢ>X}sT]Љ^to"{١bYӕelC> 6̓ZyC<\DPd~Cg΢`M'з01E[cb\g۠SQZ?5DŽb.L5 "TDqӢu',bTFRZ@jl|[4AʆOw>DtD? &tt. Ѯx:JU \'8&m`bWŝ؊碢F`KL:-[ 3>y ,/--EQE|V~N/g?wRa4ʿ.LL5+ B1"OtjEXƩQJO?::#W/ٿ"_.ڧ#2("5߫P\'9+_ֲIdթA I˫ξ_ND`4&doQ拉G]tE!2 ):8lί= o潀P\oKB2K~pN=>!ǢD}=Ou-4|NF,˦j08*Ж z7ٹO\ZdjxX}+HB4$VJq ֪muf*o)%?LJ9APL"oc [sU%>Cۇ+ !3IǑus{6eyTW r-f>0\dΣw0]D]ȍ2`Κ{[6݁:?nN{:=1,8~ZʛP<ɲv Fo81߭W2GQ  Y'wx1dD%)Āw%/?scrIpkWP@PS 7M N zVdžJ3jYu oY}% 8N H]BnH;UM\l@z wB^9p>Ӂo.@]3)ZtJ H 0:.&Zj-}T?+"HnkRxS9iONUD3v(QuB4ղdϻ5p^"do :ҙցk-ELsn="H_ hwfCڭ,Q+~u%FG0SqwڜiP}gyų5iyH\ )‡׽q0]4ٕmr'o T=ԍe/\ i(8'+gӐBMпtjqɴ"\1 VDq1$ MgRc44@A (9h'G *cylu_6M} :f^;AoqC?MuWby8vlïO3?Qat7\lx$G81Fvv:mpml^\fPϝf"v+<ؽ ywqAc 2bhƑv} ϊC*^1"lA>V -k~Sctt#8 +3;q?,qS+Ȱ;TPАP H'[ b £#[Ht G4ޏZ㒈YlU#MLk ߣ Uo!; !PzI.CŔ'Wun ;=ZCc~[a2hfu )mZV4OY4:ݘr͉"MB&Qc첧 MrDe&{*"N<''uxKIw_ BO].D cAv:O'.tus#&M-^c:YI.Gȶ>أA龛+ "oDZ4p۷/'m:mX? eJ;e=e7zpP-Fb=/,{vjOr6-ƪyZ;klKLe'q@dHw`'*zbpsAx8`.nbR/njsEQ ʲ=H߼9{(DOsʮI'4DiiO/&2trN cJ~;TOeuו,.[;OCN1_vLK73P(1?f2hPj' <9\cA۲$?Šr>gDwXM,8}ĶۋzV32n$6Sn7OțKPc)s}A颞9><3|{t3e2͉ rDjrN4؜F3s7`G\X,Kզ>(iABj;rp4򹲛 3߯kA Y7"M\\c팞;Tko#} {$G &(O{bmycrGņݠ SÏ\b q7;IA"zx}O;5T%YXc)»nNҫI-H?ʀd%līx""1g ,D߉440<(i(]Efrf7 !uK@H{W;e --E^Lj:z̶OҢ>/\Օ+ˍ6ÔbЎ^Y$Z2L;nȸfU"Xiр[EcP5fH٢FkUU$!H#Vj:f}wYA7JG/& ը>!Uj#H.Ԥp_GoEcƺxy1ޮy0y.T5Ĭ s.Н~M.Q 8YdF^{!׺d5ifsZ!vSNN:yX ҋ/~HeN :#Qb0(Sckܼ֛$Ebï{_gRrN$=z+n`L1\2N' Y녹)Qp0GRꓪ$^BV Wt4ݏK8K4- )C]_u Q>Qfi94 '<[/4vVvפbd~|#5 q!w%N^5#zp+ɀ7Ʃ(ff~=zKd|ߔs6\i(}uIK:)J?2 A§5~B1@)PEd޼ u9j c!T%5u@rHgPŞ/ 7/ n؎un <p|sQgO h41+MHRD8w%Xaq]>sx7 v3y&4I9m" o֢2簰qBNjSXn56Vu߿~GSeA63j[#]2o%zۑ~\)8q4"b'(T&@>/Y՟=yk^k;#|wUڜTI͓nK D:{5 )壗p3sS/ҕ P%Fя>%j!K_j 6pw<(Yj|:7(5GGo S( Aq-I]|SjjYkXrO:vYqyo\7j5@5؀?\{ bsK4cAhƨnm&uZu R(̙0rgry~B{kҔeB0E_|YOw1twuC^{V O:B s2VyTV[]'pI}+ h߁ U妲b=19Z6;C˕T!iFׯ<2^ [ꉐշ:dLh2qaLG+ƽ,4ƠnTCχ؛r$v)zRr᱗ l.'pł_./J⏘jH5%eoHeNFi,!)RBaAIcm+y :5V%pCW w<£t[s"O|,aL4e9Vdh޹O]{<vއ`:Bfɧg9=%WCHSb7JI6l>O7P*Ĉ]# rZF{$S|x` jK#MNa1bC٨#2b pJMDǶ`73p~wn֩yГ`Ȱ-$;{ OMOBSM{[^>k#~ɯt\ 1o0Rê-^99_rmG>ն &PLR_.#g@y4s DG`^DzM$l6H,-4:6L% $'HFK26Vgf%"?C~XjK;J6i/>s-zhgut[ۦN!`wS,Te(KzvtU%RͯV &8'[xԆN{ZfbX t7cFKŒ+`ZEQ d2 }:8L%(dL푉3bD'|fэbLJ.xw` MsXni2Phyą}?jq^ v@*|s?,w._ru 8ԢvA,/z -3d %rd\g:ր;2_ x.M"H{WcLFd6Mh?Z[7鴘QA㞜MLC*Ĥ')ꃔ{}N镵W*CqM{jxz3 L"" JXYC ^H%j\Z9Ղ:? fCLYY]4N`V?:m!!.;쏟ِ/m8]%@wk9N37:ؓM߳'6%\Y/e5kvǨ+Okg*K 0ԥ}q0?V[eo,]ncMkl5t^u};T`fSTA{Rk\:X[ F-6ԕrKp{dr5pR.4fDgU^27$&vrD/F~DC dGvB*jxC({Eb|ـ.&Bܾ@2p*Z`I%QД6h Wo_] H|v ,*K fl$#L_"-Rt"B⨒P,aiM(}aAnz1ư-rwIҵY~S.4oD̺z5 .2A3ivV;*',b%M Fxi0E~I$``ߧU:E Baq%i#"Ӹ0Tg5!VaS)=mrfbGj2gɾ4B(^Xa!핌UH] |oTQlv wMr.Zū[uCQKbnj f( `bE65'v F-[ Pg|ZI89,-,a7 1hw[6bTIﺌ 4c`:#S?k[BB{LFpFB%Զ{7z-D~AI2w9_jNZD鿚sd<U8XYMfRc/8:U+Oes6 l%7OV9Q,x4yEm?_a:s6icSmTQ3UcJ1IlcгdݦJ 0|&^K);1y])P+`dHNX!uݳLWioߗ "R:־˜ Nvf<2AN HLJ ?N:ODL(m 9& 9`. 6%qګq[fTvv77>g=XT熱ITL9P~-dT6=js-٘`R64 9ɮL cY{։zj{&,K3sn"ER Kq7+.; 1)[!Wu/Ĭ2y"e t@rȁ/>r i' %/zÙv48&C]؉fɒP _~lGrـZxlJDLQ6sIz^fEVX 5ŽqJ(acVq6SYn`4SI.RDPd+6_ht^WTf i)lo7صkGdPu|cZՀZH8o] ymL! z+6|V;QoZ2`" k}4Ԍ4>j|bw;j:!㝡KtyI<TpԸσA;S_a󾺵Y1L{,N%ɸQ֛b1!%~*3w<ڵ`AL1w 4B^̀>m`a^h lI4]n&~ w 40+4m{}q1+p'(쯜_#{Sj ( ~M|y\ob^ 2)P';3B,y9&ٗv^j"[HghwHrΊYuS)囆Yv典^[T=ʒ籱F^`y p >Q{prN1JIG0Jj(/BKF6Kmm 94x^buj[Opt`BL~dyHI.0]q:сPgա%\cSk iʢhGi5J['+% O?\²hd*gcX_f8k v) I$j9h@C?I1b;,~ǽu0wzZU,B^iC<>aze%? G R>E`V3kЄz:S^Zl 8FJTĶ/3IW)Jpn{ܚ"1ãj^1J8j(|zz薔o/K(zFd JN]m|{X1bEl)+p2sKE$x+=KHG(.) 8ɑ7Ѐ:zO0 >Elj w/X̜ViaX+w>,92  }{_BA{Rf)/y|Vp8.l쩚ěWi}[q \pɻ:FމR.qO%+Uj6(IxcC@8@8 f74;#|ȱ^eyM'}I'tj(rE]If3oWx)0{l)pH1ki/峀aE_kAo}X(B/Xuq "yF䨦Z Bޓ禼!Y"/^ʱ&f81Gr9O9wmni0]P^5gF> L{v$mcΊ-`l 膎7m^l$u9,LF]kvag|o UzdwL Qߥ{iMf˥/hq\qD]l1LQ '!iڑpo2*ۨ#՞1m@C$,5~(~@ia~GLS{~zsj8Rt_"%r Der|1ޚZ*v^t<5JI,R;e#\߶P֒Mr2Ժ]&~BtCk'l+5*CY!wqy\KZFN`\I IHFq[-lZ!Ʒ~ovo;B&92h0JrWEL4 :$t(#qfgLњ۝VD Hی׸8̩_\ ݚ HGr9eⴛs" B5`2F8pm;R#Y۩BE0YOhY|tsFZP2T%?-mj9%u2fŪ 3q}= :ij-45I!ef5BUӢW龯'kƌ:g# K>GPA1f}])X/.a?C'M~Y`;2zP#]TYoL#sR~"aQ*/`a*֞X0vwUE~QR9dk9s+@@8;=xx[t^ӱZCr+u<^ ͊|ta^v|fxW@J(q 38S4 `ġ8՟3Eԉy!R-u̢bnۈGzrEuB'jϵ 8pbڲ<}P19Tg':^m:*$fv .PPeRMH7S n 4VpFgoYtտYt#`uVi /ÌZ>PJ5G{ˠ,*Bh́:C3ͻ;h4~ځH~ZvO/niu6zVXѰs/^swwAE{:,Ў40bdAe=x83GThbg5QK?{lø['% |6҅-9{CoϦ֗hJro4D1LY^ǼVOuSPŁa꼒{ "hYJrC0OR>HۤM~\ NjۀU`i ")TԾc^fINzmL[Gz1_ @]*{@̳WI#T0`y _}r!J CQ'z0Nte-V8b4o n޳-ap7"]ilqbehWy@i;@YV&wx ; p? }Ϊc>R)p& *V\zVcZǔYڬ!Agn'X7ؕ>nI'v^\dy1s$ԩq)wf+#87ѬU ń;udfcB1DTt ,d?cC j 2#j(/1T&;C>]9]* Er9oE!"`*X:A+/j9nn1NpDH)BQ 'Yl>Fz@U%FjB/B_i)YNRFsFfoLU4>* eyТ^*`c Հ{z1q잫Ɔ~_zm3QE,<2uA7[]H '?L =I…epng8My;]:u(FNJ^ 6Q)%znΆVh4JI3k[XQ>zOJd'쨥< ̮&`#:lYPhU1 v2Ɉ^yt ً=SBc;5/8e])˿1K`7E6Xvu lx9څpw}x豲:.q|PPg湙g@-x|.vfWCp n\θ(3 ޼"!7!v>>ӛB=ܷ۹;(WR5BnU 9jQτi3)Ӷyf" EpY4im@&)ˆ|h}$ =T9-XYKvᚸVmduvv̖2> l28ըحSI>H aow{f/:[АM^. ?= Zh^K (|ْw=),;rwdE `͍A)Lj(: V>[o1XppH5JZ#E* bceof }*arCkQث8.~}Rw|cnȏKnǀuvvDTc@2#AI{5+U4aX mI1Ra qLw*fw+%fyx7}.aD#xɩ0A48Tz@e^ \gf om5z3/QUf7#pz^o驼սÝ%Z L4=.i`_07с/Y9xP{|r4b2i׈"zcW 8rt0r $Uy2gFˏ3<4h O)K\Lf=C<-@@]I0а6ēwޤ^4c:R}-*uo%*?a  5 zPA- @l޴n䤞Bۖ~ Qs׈$T|{]%d/'#yhMCYjLÎuiCLNpSۧ3鸹n/%|J܉-OzqNAm"$;$E(2,Ac< iawo5^G%*>Ge-Y`GŮCC?И TRFF螁ԽA5r \٬WE5S'B"_ oaM1*?%Yh &]ˮ5j>?m}B I.ݛ -ke9LBf-hvs3tX\+ݿ/ b(% &DNoxhs%dnbؤ)\`=Ɲ)֯BP4 vo°oj>yX۴W$|ۆ\OB#/L{IfdԟMPdԾ`Qa34/Pe>tZ;Ӥf+ϱ Mw%]Vn OV aWTu@>4?Dry171\}O#aЕ(s"ɐU2H߷O| uK&yZiu "}r՗+;sP7a!Zd@wՒs/}Nm} Kp6"+ɕta/(i<h1GH%:.qv^VaTV .҄<6j}*$y G#~PH܊=v%zXI+f.琴vdfy@0;VhX¿.^.I&7?[ z|z{ fѮ⼹ף"GBwK.+D7q<|Lw].*X}95~g0&*M!nj[)eX8n({Y[ E v5# 3ha+c El P9qo$R;A2i*%͑7wǀt%G_TٕvaBN7Ǵ8!FRJ 6b%0VE #yfTV:0 wz-A`%ʲ1eshn\Y1C9nJꂓ_5|ld,s)z#7A:4{8Ӏ0A)I7h܀IhXjcqWE/Z*!#E\9+]_0=ǹuc^$lRX#^hqpP̹7578HwN%ާ@pb;weYE]6'"tmk$UGxRW)a4l{OAks&/}LB(Bciov* !#ROeep嶃{`S}Wsپ$S۝FǜclZ8}@G'`{{l )-K]I@MRKC֐^A<0{t-䌉.qnjs~Q.LjBױ[BR{643aύ˺.+c cH@D!n͆8E$&/2@2^(w>8"%G)䒯:Ҵ8/Ffڭo8CugCy2n*fB -b$Khkn3T٭=1tƂoG*Z̛kң;bšpwyzVQLĂ(3t9{h~Tb&`/x/ٯG!`t"aΕ&uL>Z85s@$؛1J-EJlS$f2 U+턡q:le}v;՗&)AV23*ȼj=M#Q') 7([P6CE{DAI͠_\~+ 8W= V֑s*5uEيШ*bYׅj?& Ax yKKǩő6A,gcc{^y*7N}ڛ!=F_f!LӿEmk/_(e8 VTvOk+۔kuШ3 ?Ӯxz@MWh h}Tpxxs! <8mK='B1^Quݵ4ҫOHAS#^D`^U/1ʤV}M͋IºqNm5;ոaPM)L C0C$;d0WL)~;#>Xֺݩ2Ef>naşeH\3/msgڬ9gPKcUe †7DnMRߞٍgJnM'/@3ОtI@yC}(eZ[v2U#L\jX|azpd$<s+If׺4u >{V&Іdb?dUoP~f*?G16x MG( Lj ,m>"_wTO'tFl[Xw(u \.8'mXRȺ-E/~F+h}oܺ#tpܠ(lNjNⰃ>i.@xw >_\Lp=Ie 4"3akUK߭^:0[!I#Վ=+ ptoi@ؿ0:D*;{9F+8~9ܛkA&im^d={A!žc Op.!7.PjSĢ+ l}]Z@2 YНR!1`yU_`ĚOf0;kO[A6<)f,gbd[*VWʈPd[1Wl0%q2(Q>$ dqcq̄M4_oe[ 5S=<*q]< t@&iCx25sI8u%Kt9+'xcS1DZa+uljxj'ٯm߷_[evr>:Ov>gO)YpY?҂`.V:f_$ )|Xjc=p;IW㒘l3xH:ݮ&U` ^rG.)m񑶶Фb#7rV$[)R-PD_W3ky#޼@SRrk\Uw!f0]ou (bAEwExe:Vުc :2 !6fLϸ(ز?oSRe׏wX  {}4 "Ѵnw !$ =؉(AWrzٜRJ_1}mU)nJyqp6}e#S5$hXL?FCm{ȰPݺ"n"L[F }/n~ϡ`3w+/0/y'6")$d, :mSv]W[ee$됬{:K!ce=MzΖGɵ fro9 DveNs I喨1_>G/ad +=*Rp b֙ iH+sv{'JE;6 C}&eA{1%h%;Qe ™.Q{f9܉܀wcfHҏ5,5u[$Ĥ Xk$F< eZ>wAx ן-\ > *Wr;5UIۻ!ئj@[W̢DZ'KuKXisU'&-ql}\xLFk$B*'J'e2\= \cJ2>~4 j8ӯ"0ix?3.l!waTGV3JcVj8$Pt<FNV0n ՛5&f kp^ܽp1G pm.K? 慑TsPaDb5n]U 7i_=Bvo\֍(~x _ޏs! %P}lcFa'Y!=B/pbx}ew>9{{9e'% LQig.[a%? pnu we0ʆCd.\tQbz56M0(VnsXQ X| ? EƸ]% ;T/Cł/VP-)Oof5,lUāXL}8 ;G4CőR$W]o4oJ? kfG4IM *i260kۊE'}bYm\pF!tޓ^ "c/|FuZ\&b>PY_Lq9 &QA^$ x0}eq oS1VC]I{SP ,ٗ~+%A@_x9鋷3 4J!`+XlJ<3BPT pvl) 6p~u-( ЭPG`uuw!>&!L%Bkې ٘.MH|PB@>qm JQ BB1=I CǪIh2 y8Njͦai< շ["E;;!nLMrk1:9g1SHWIU?<%@z&S}lj$S2Sq]oI)p5^5%ӽN8}YXL1EϬZ`M݂gxA6.jp[qYJֹ6FbZKu`\f1p (9 hF >jt8I"kbyFǮlPh-ẃ!֕Wњ?`qMs<'`kg e׾D]&;Qg!rc={>p`3Jd + BqәF9D_ܧu?adyjri=&R;)raI:0$ANs\Sp[p̢8 , 8 /1l|4:k)ebh)o/\P0k6+ ǀ& AR:0k9>0Gnt^KEZ2uTWef):x&">8Jad`) YQ"|BPJw׽w Cf+-O8_a${!K[tXs|LeXQV%_Pj웵)S]2hJդ%idaX3UI܉+%OǰQ_R֊m/ JrÒ :[O!9jy ê>6"ϟK[„ [ fTZ= V 83^ q]``ڥ6c0Fo`#:JRh zE8r=e\!Ma8gHِ:$5@=!- 82<84M0q5,"{[1t "𡕒NL-|ghZF.]-sΌ_ N$`cѱT++%|ejXx% Ɠ>0R -"~4I Av!OCrz:" =֖>AiC[V`NJ_j9|v`,R< ݘ”Hlb. Xl $-~TmcIr@ "6M~bgхQEdz?~<̟l hn'a鬴kz=exU.!#q®UjG(i gHox NmAZr&X# CK_,|쒀eV%n^ƙ"CZo%!ێZ8C=,+P 6CUgiC_f]4Qxahʞ> wfDmZb@& eaPTiA3CpqP! K +lR*J~un~_ՂG G;.ELA;964lәFD~"G>[QE) eb4 %HH,;>)q(]5r*8pyHٯ4d9S4`T*3"Wg67R'/[cH%5mVZõpJd@*ܪϠ9W@ jlsw3㶆9e\u&#pl= ?Ro ODKc +%C* '=8QJ78k?uSN[Q:JGMyl sA3LPˏ9aZGf'PMѨTR1ŸY7LbZCs͎0gXQ\' χU܀yUm\w)|65¤b|WsBz̼_4E(C.-8X̚+V@#xT\3V &N_ ϡ}IҼũ;%E8 @ y- vPۺœX@W*[\ҟc} <6s ݈h(yRfG@F7'<5), wx|AgA|>܌uO o%EeʰAp9NE'r͚挞Aˁ j`@*`‘iL:?'}x?)d:0ؐ@*6^!AE8]E]MMs75-f jKª_Vw) fw=Y{9[E/7ReR,ղX0NҘ!C ͟C+48Mk&3QēF%.d¥a;v.G@ !?(($ͺ yR?wcd/Su"qQU 3DG?zO%(1.Rي Y7S 9w#mKS'If>ڥA;e%M13Љ}Y, o * 0)/[ %ܰy Be476_drsdW̖&fOK|`잫EveyM-6-a n#'=c \`qNGkƣEHr'Wv8ڡHQqk#IIf>_YQ%Z(1*7BxV>@ɋuċ#wyE F{DѾ6:LK6,SϞrqO9#A+A|]{m#z9W}I7V1oC7pIoY1g:j pp``<-?^T8s{P8prsoվ,8>83V,^Xٰ WҴM p qfD]ʃiy$\d򽭎$ِ|;dE>-T` y9.B$Wm%EוJQ5oߥTkBYYL5x14m Q+]n-vA\rl$Fb^| r">SڷbNR@񗇁KAŝ0u|S]{yH;PnBjS.UvΉ-+3Dh_ڞ)R1꽴rxQݞ@s^*6uy~6Ec΃F&)l #8f򃴧=w\eTwK2P*Kŧ)dLYNu0x'R1(0a)׆sې ~D2 '⠪ʿ I~I-2& hzzZ&$kٖH!j\THf|mҏ|-ꎘ%>s b 㻒WzwX{V-׶g;ݙF^wwKH$9=9.E(U Eߵa-oݍN)eCҮ7'&:1~5_Iq)hH:_ddc 2&:1U!׮|o!6Z9xm9-. -I`FZA}t#{wd@IFuFrפSE X u(^Ǔ Ӳr~"VmLh7Nq&M\Ϧx tfypbD!C Yۋ׊ գ8+gEf{R- 7jRHEBf!arXvbp=7|Һ"7g39MC>ϑhe[5= 43/9~){KH/u%`9]Ļhyu'&QT _I@ ϭ_-W"&` Mt!UIҡփmd٥˓s{5//qPˤD8q.0@CTD9]v+~O6khRdߚF#QoCMeϣINٞDPeyy&L.0>2FʇR|cnVi~ږ۸\Q, ,4~.XE-g'>Ǥk̋?{D5K1{\A:xD88:O$ m+|-svrѧ@1ُh{Ck~RPW$21=o)n@a<.֔ý@pĢLG16 Uް_ЄcIYNk[?H:vTʧޜyP|_hī+[I@0an&IƉeGmiFŰ6ݱ9}¥0ϡ|aL'zȞ3-FZK`/'bʫ@dj [.|{4Aُ+$]3T?V3=搾Բ)Bf<G[ YG-)3rG7\ְT_4/)ĚTa>x;Nd.t_w8'0@a#Tˁ6JĒIçT]$ q}`s bv S9*zA,QS3w bκnضOxOm_5f7 9?-Jѷm;/yWbAg"0 iQODCGUC W3a"𯌀6K΂PgDO -p2M(JyA V0zˤ(E-P^uWu3, i3V UsF?'O R -7ہA;?۽f+Ivt( !UWP Tq>Xok e#N:OF6\#)jG>9tm-wN`1"t'c<B)߉p} # #Ƙ #iBr5ZР洌6Hq#Ap > mYp a0B$hRV/;9O{8Ť:lwA9p '%?Oō=+WP| d[^Ty9N+\WR tOਐOpqKzK" Zg?6% V &qG5y>qkxV1ztRcܚFEܻ1O38Dk{jz?X-H]qdP9$zCCw*Wҕڞ0D66WsF{W̶0&ESbiġ>/jI|[],d6@,8 DcVܼ=9'oC0(H6DvBgݚ>kBq-D U:ooeFS;yxQsˀ5վzIS ,{m! )ʒiylaQmgsG|EX))(7Ξ@$\QF! EmCCNoipWNH=fu5& 'n~L[0KY$XB~i'Pָg#l%"ǧ㣁X_`Ž>bf/raٖp׫f qQ_|yN\yQ ut$ (ͽ=*3 z2)baR? v5_x҄W fĕMMٛ&&'][v a_b 8vj5E'5nfzφf+T1R1 C#tbڧ( LyTH})s}喻o "6uc}D>N9bRK BSX72IqкB\9FTf#^nl GA1QF%*Tr蓌 ◫` "}VAOGJ OPHPJc:̍DFLw˂&^/xx)ۣݑfZMkZAFrM~JU$H$p=A?ȸӬisXk\w8)FӚqJbzq #X^=Rbz0}O݃L ĸtO(n5n^r[SI5Zi'B01@AN#D&"69&jp3R|{B6uayV1ܕ$e"rAW :B [/9"7D)r㹲T{N7XY  41& !mylrrq;GW#Ŝ!%Oa:6϶!0Uy}n}#75HPv:XqsußN9$NJ d:|Qbx4b˕ 7h5rx(}FU`FV I?/~lŧAFay5-cnY`Q4tnQ$LXy;_<,򃖻r\2QDiLq,g;Yдe| c UB(cR6&fxUJh ,e0 ̘2 p_Ey# 33 $[y |&,DQ'$*4\랈@eh]wA. W qea{ןҜF@YT֤Rp~)*-tXE&tij&z#è-4h&^R3G54$K/Ԗ"tH˺u E/ *C,4EpPQ/P[O/XB 8N.6m/m8 -}} riw{Ln64 UpKOޯ"ﲄw_d"NivS*LGx}3řV3հ5K)Od^VT:1"G$-U{Sz_]znZ=$<1bᴑ;RDj:䎃a1r"|_?[^ #{4#$8K(= b-oV\p)BXcEwVL9l{OSbH.)oU"$N %QKNzbGvh:2SZ%@|逞dl8،RG ¦RJdvh"T{ߗ$z.sZpSגF0Y,^K/ۗ^[Ep43>mA,^(Wm˩z~^r\Se*#/Fպ*SւuӢoBc^er4AXaC s &r~xreUhw%=MO'6<PB.G>ŋE*~-\4ZhxE'6{)oeSTol:4xNtԬYn cW8^n Ҕs P2W*R*yu}pj@m_FLK8#*\e{>y zF5{;N%^&$.l 9P6~#Zh4CP=tl|=1d jsΟ:q#Cчo%HJA,1O4%w` vz~1 dG}'1/eF?UP#{*$H~aCNފ'hrc?P.ɩOJ>CV4b/ʼD`_r8bEkxй6VK,#'OaTW+]*BZGNCDGUy0wKN8j.Kq+cC EaFf_[[f&gJ}X"9i͟ 7qny 4`cj4OsK8ӫ8 ̉|J8LaR-p^ r:Kfa_rھ4+%Աc J7`Q}(vXG멿4jmayHvX+v Pq4tU9j uufϮk q(Yˇhj⤺ˮ)^>/ (aRP6H_ `;--}ެKOF.Թ٤\5rGuH|ՊJ* y-}eLA`V;Q?#lg֯'s̠±q`C׼ asړqA6w|~""QcB$bL|qHL+> eE6д$j=L&5's_nfX++3uhH| àd-*Ku0 K׬t@piXc,y[a^ܾGΫlںϑ>B eLwHVunO~J2Cg tC-;kiWRR88GT'>'_xׁY_Pj](Ձl:7S_u q]xc[YFPj ܴ5YUgѠbbZRR=dVY-+cOZo4` *"'Pd_*: \qZXd]硜8* ?ZKj:᠑1E7[ A t'/w '##NqNm\-BszHr\07l`6)L.A&YPyJpx̎ך@oiSn^Şg_-)jq$ᙓDLxOlO#b}\H71)_ 2h+'OF / f޺ybjTM2c6bKl5ن{*\CIN- 1LQ>mCCR-&u`^YW2H28724nF ?& @4nFiS|hr#ǎH' vD'RRƅ,= <> rnr=9*~?3u$^+ JD#&B5Sh | EXCBoaNȲSBU$M|(`T=L8`w1!Kp!>+a i47e=U9?v^)U5 EC{/>,ľl;aA]s8rEmbkJ-;;4c{v3mQVy%6(`=5\Q~z+G_n=}c_ GE*bWB9LJi${?4DIbo騉"2/%)P齁Q~M%ѝv!s~R58)3'@&8;)uδ J-ٺEL3Ǐr *OG6,4Dr[%_v=ZMkƱ) Zh X<ɷ rJH?GVW$͘Ed]A.rƓZ!-^υozAwzZCGg| J=r~;(̂w#=  ;{]toFj0IXTY@AFVz(qk Oa2M gtsrkUx kcp^ߢ0SؘLcl̗'e0G~T3<$$$8il/}F<夢~IR5hc N]0A'2}s$q1^xM/}ֹNBqoN\&aPsP5h!;t59(AH$ ЫOv/}Wz.[vl8w1>V2wʹM M9bStp4*qXm0)"BUcF`Cw:$\+  !OsRG%זn;%}e-aI }gv=/5os/5s~qlq9z[Ӿuޙ'݁(h0TRճ/6gb55 or'#r" tH{Xff_q(vL/I~qӒa7nqNtM5e8%!\yiȸb98K=/Oľ xnx.#Cn5R*Z# ?|7g*acP*#WZ"k.F5P Z^L^˟{ jjf[z<|31avJA!ys|Byo&,̙Oi\nx㺝i)v hq}O.rw560)4ϩC]Q ";~b((Y P\i[Rh }_{ EqKtp[\B+0@TmQQ0<#u^)~LA[H_,t؊o}GhL/w5ϻõapLyY7Qa.)ç8tUV(M\F&m/=DhL%;Xnqf[.76JK9;{^CъsqgsVMBq7;ጰx8F{dR5e–IK-Ij3ÑYA0l b$rY2Z"-t5Y*.jJyA=CA䁽;$rCzM(ҖK"YtB l *j|6 c6䁑t 4RcR4~ry l]?:*XLRCfߘjh/L|[Ü[חTZ ,k %4rXƃ( XĻJS~eSū1uF,t=PFVJڱe7opj \GIʙ ;/ۚm =^ucԺAyև02tf:qv]3Bl۰S˚' ncNGZ쪃g* a= }Ȁla5:_5VeM`nVѢK`4!A2++%^ -j^O)_X3?"x󢳀뎣[}r/L=vQ%떵)jhyV 'BXҨ:=Ps K;ȧT?ΈlW;pڗO=pftdټ@$,пlg1 a6)?Y@0>ٟ8@?SG(:=0.r ]:09f~!-*S{2+vϟ׺ioGb./B76&V1@"Ua=#V&w1ɼbbѶ<vs ags׵z{3Al2H|ûg=MG{s"RFemv1 |#Q1vO`~Is|NNiy;I/f|㧣vVT|v?kgN"G%im]%Z01. n9]ȉ:Uʻ76@e*-#ӊnw!z)ڈ a Ȭ/R#gcsC{||ʇbˈb=u!WH(k`wzuaՖD k>21QƺУ.#^6!j1׹=J"jnjt8eY|WQ xإky'P}Z3i"ߋ(Z~ Ͷ1Tpb]; ec d:qS JkU yX¥My&r-%8bJfw=&I}!!UceR~}(}5e+=3x$2С/J37xEkGJ_24Qd,4!\䴂ȭx_R{}'LMދFHaSdK.Si-U`o%Q ,3I c.2Q%M.HUl=1VUbt߽M): #v=m؆g-֟W+N~ l+%ZĬN\WWvZ!a~a@U;)([4d\:霬2Jޗ7(o~֗tcMAEKK?L`==t&־rP}[X3'})K EM(נ5F+W|ሇ$kׁdYW #j_S] ##z_ndkZnXͫzstC<'|Dθk9XUM.|W8&\cMc XrO-ha3MFIT;I@LKC;M<:'gwεJ6)T]:Y˝u`p+ϼ障5 @yVfXFcV z򁱑i\=[d9Aߊǐbڣ1&,voޚ,rqTbuکC)dM-~k$/S n]=7=27‘dI`1ԧxiل2uo\\%C5Tb~àva٭RW;C+`y[AR9>a/^(@i->Z γKn,@Xv_{}Xz t$=0'!(pVŜ: 7#A}e񝪶zRU'>JhOZ8vK儉6'9JSb8o~&u+ݸ NPov8K$PBs!vgއ5CՓ /$Vue3+=|_ϲ)\}D-@Mi/1MnR֨*;xzx996<"* hz恏4C:[ 6|U<،J6j.j 7BU6 ]0#-;=L[S*x ȱ5:;_=LU&clX ²C_´7)ʳ+a֦d2D $6/D._֕Ӌe䒾^mha4A%^چ.c*ṰG\9k`U02Šh (D1IO0DpPiTPۥdT/~W5XTIkRoihsƖ~:Do`dOX/\a&Á߼L4}:X7P>Ijz5ԝu_τz!0rU !5 (}n%f= :}@o.p_+5Jd{oǨf_6 }^S ϴShM:]O=|FG&K gzgyֲ׃0.Q LP92K|, X?y B8ЊK*-z?ě[\>A96[A,HW>9@?b"^5!ca -3G2:"Hd ќ% .F =t%ͫ#K$E쭵; wi\}LɼPMTop Z{S(j ݍ[PEXW(9BqUx +8/Qq ,_Zs\ Jl@p4nRO~[0 _@& *;E3Is:U2n?f`S?.'_+yA.Ƶ(|;l9o S7?sEVfu-B>5e78Bo[oj^pL!3Y/ˊ9dیcH@47/ye4-2̪| mwg9D 2)’! p_kRscιnv' )फ़ DAQAjDVD]wIq#Ӎ{ PqEy ]cuvw/tmܣpۑmDj%FKa8//j7o 59Fӓܩfs3~@DWQ t5uWԤkc?T|bggF֤PC*7JY8OEKuv~N@S㟆n֓"eC|CIJGuG4+<褆{gj.u~Mx^ S4xzy ?[(~@>޸`0Vb||vzNSop mN-lo>X>bEwj=[m*2ӵ -oϹ:UEc3̜;})>1#hy|Bxl8h[M,SCek6Baؒ歿0} g(C[8 g 5?,^4NMל͔S`1UPR^uLn m\^U { x,*A{FUTQ!Di`@~ *`jvc~eV,?} ̉a;/kzp82sߌ~s /Ϣv+9D'F O|(>x}圔?:cUţj Y|>DʑgPи/=2aPӉ ^$SCyoMj*-mm'M~bD%K$-x~i9][,G'٬< 4DYfhᴥx:rryIG%OKuY6˭"kfPWU"4ep-_̦gt/KC;rc4fDN0Ak}[D9LfFo ǒpQ2VU r}:*Oa&A.[^q Y"~Fo pgvVɛ48B.6Xj(׀ z1p,mV^ :(s!"&[⢬Tݮ`v> {YMGͭm]zXĝ^C4!6yXFeb」90WYL#jB`&`U/h7fcI^jgtK$y97-_'Yw8( j@GXyMрCA@~J\D 0^O',L~߹3;Q V}g}g/ ȎZ%F!UۜF -Uz5(0aQJ [hV:Ѻۈ8>SRεLX徟X!\IEZƶe%rc!}m7{Z-+>F]tnk&V=" &R84K& Ex! dAP6-^r%gi Ϭwv`>;ϮM?{q݋꘏> Yj '2x4`sH <%N',"}5F>ٿP]U*veX.fM3i#m<:pM@r%sxgT2RӯK'`)Hs񘭴tT)&I C+dArqKr^|1WjċũbKvƛϱgN+=*<̓͐Ya}DbA:e:a,@[|ߴ~;1lĽ&qu1qE6Өiz cx1 c Tzxo?lIKQc7&<eʭo'÷3,pn1蜰XbM?7!r]4ݹæqKl0fȾWK/ [hn,d/ SKXo_ JKTF!3]a?/Β8r S4qVOCl(uIBuKߵ37e(FROƄz}B' PjF$wZ*vU}ah]< >"JNvJW:ii@]h&[3Nn}/rfA"iL7L?ϩމ]Y9L}i0!C\/Q{J "dNgJ*듴.]cu-NN֯LGzm Eͪ}>ɳZO b0B2aQ*`#G~h/Ch1qga(I*SώVE%=,>ԝO8S[w5cZau)>{\nz@A`bX1*#51-ͪK 4@WlW"S_W є"g OI/Y'j?U{C(y$$@& )w:`7A}l-fQ-|6A5P Rk/VoѭrՖG%}:Ìӎ',w3]6RNmxWWz/з\?51ixH`- *uN0 ?i%Hh OG&>%F d ֵ2Ai7N !sQ WݺgېHE0 A!Dkk}BYK%|h+p\|.7 gT߹Kbk7Lա7Yn+tj⛞OJION)j9ˋF`ʠOUudTC͍q`SXXn?uepy7TEKLn7) —SDQ}Ĩl<|ٓMbGRq\<3^/oYkD*CCW-"`W[] -9>f7,El;\R5exGH`8<ۀy6V_/lUltKRxf,e뒽WgC| >q_`ŝ#Z=<#G1iVsNVkl5A'hqC a|u*ͳ.|tњ^δQHDrWSK{cT.'{^`i!VKd&cЙyڥ,ˋͮgib27gCp7?^Tb%L+ /sP헋 xWaE jG=kUmmUyR.# /q7oj2?0Y ʰ=#ǡbe~45 b7od˾Xot+!kɜ@:RӵaͲۭ"YzδI9%D9"^aJXdq5Dz~\ sq i+\lBТۢdL]Q1{1I!r:y9 ᄑ[..nS'NT+1Gb+7 b3ɧGA2EZٽiXmOqQOXiZKDŸ_;Bjq̿rQE\=I{m l?i*(MݻK(.30Aa990a9\449* @0vl43~uij VXBϝC^czjp6Ӌ6zX""9/z s1;{Q(Pur ֳCkyiBi3퍣ML1G+`gZm]>I4)i?^SJ;KJw?Wxҝ{>C9;daDʩ&:lU Pj6NW obEbEiU6YZ ΎE oyI+7Sfo9kb<ͷZҺZLS[~uy"#e|YÆ1 R RЬ2SJ'6%9%TO@?Zh؅r6iYn*mj~Ȩ|, ~D36G e" nN$N.ј{-Uy{z #!%)xIm}&.f=/ȥH6Y%Eݕ;СeedaZ4P tw!E3$X ڴk~~U0Y\(xr Ù!2?4hզD(7d0L[e##"?d B3o6ƒȥL|sTK6վ=vf- hlT-&l_.xݙYGj\CC s PC$Ud#K$9yo#s!nhA[2[ȝ~1p5QsŨ{CPi(t:&)נ"H,3pk{g''.X!07CH'}]"PBDWnFHXmϘ'EnؘZ] $,q#VvP[d)աľ!k{ lgelNBEl7R5h`7Śb(Qؑx =X< v"x'ru LFr* 3T8" ?/"I/Mc3iC|`[;ρrO>hI 7pIu &0pB јa/Q9<-i$^(3MͅDg߶ߟe^(R>q='ԥB ,v7A%?;c1ģqYeL0]`Xզ9ͪV"@'f2%⧫2关DA70aqE{LCE(O `:<=U8@[h͐8&,C-[>ė5s;KCYEtQ+ZZ;c XбPᥣ:WoΝ4Éku"HHg&#(,'D$#{/bN plf2}VI} u@0J(%u<ԶE游Od 䌪""YP)g9? GQ%Cf/{M grq3"8ϐBr}^zm|rQXx=/6k#Eo|(J JY`.M}L0GPdS괰O{o]I ZDpST4N;|Gz4rp4`&4?T @q6=6L“|q r?%@fS+qʭ>;ua5\Ѱר,<$hޙ՜IzrBW$u$g 8'((˃, \h,s<e.V^| QwkTu1El }G>aZq+/ulzb iY km]SQ=>z_PP94$Jk&SïS4#&al98UU]ăJ򻧸aKp3* >Y`G# CۨJ Fv}6|սq٤ԟc-#c0 `@/^,*"qr{}l/Kk.9ȓ[8e >odRkEAtpsФ/1uLHvJ:b48(t7*n%0͚Wtobe1Lꊾpns.GT/|H]|9-\Zbc0O&J-fWЅ!p\'9sV-B~VA"]ռT&=KQΕ7y38v#*2Jc;O޴,;Z|P1WZM57/XVBڵЙzrR{T!w_xDWK,\_ջ9T*!di$8[t\gBjhucVr~?,q#@fGUڀxl^S 6`Ya, M3 XA[ID I6Ī*Cm# 9oa9׭b^_l:RPres }F-0i+dCIz3 Ħћ٪[[NVҰ́4_w*a&tfhN%U×tno{j>WTʟ\Ow sS$u2GD4/.#Ko=qHR9Ax$&[?@ ]8}^d_MwOuM_3s7t9|֊R@Rm(o7LVlb#T@އns dѫh9TÌϜLT\iR}Qפ*T%Uw"%piX#ROp~ BN"wiw>p=ͩ@䛸"|Uk#_-X@XeMWĖ"\~q3LǺ5\e5l$)R`Zj߰ij!+)FH$s5xwӾ=Փ ffNLt:boS\OOkS2$Ķ" i~*3g==6 ڲsPVwg>_P:͆T  n`HO@MtJ h~ o{2G2A|LhTpLʵe.2lwzՑ "@l&9Ȃ 6 )eqoV{I]Dk:@"p(d Fz$QRTg5)|+Lg(.A#8'NDԖh[܎Bvœ{(?s'X2m6g斤d^:';9,eO{`侹B a# a7J\ ޟ[/k- u<@QI+IF+SLBQԻaAegVIx_J]saQ6}feM8cy6Y*]$qiqc"Ol~١G#RUa)hnM/i"V$PBH6C~.#tuhBWjNP Uû]Ni`"|8I}{W~» Z]tj 8qkveHHخrJ id$ Q&9I%+@F9n+䧝n@2Hw#ͫ=2Dq"#bp4K7^BU b-y|_ń0j!ŝاڱCY{x_P:lO ~hΎv3P9ڔAY* |ŏ~CV֔ PD>H /(ߩܙ{M2HaJA!ks ?"3Y23\FKbduwlȿfnyJT93c/|MLPVa3V#㷮M-kB 4X%J@ F Lba0x-k RA҄Æ,aFTh]L_̎ #YXxx! MIۚat79DUsQL]XnDU"U9$fi)('VE3ZA(j}7LA5ŷ3Sjij}É84Ae)BԻح%FW͉:82(1Lu&l}oW ]<=\mpG$YHҞg(jUwC/yYM3yᲐ{81o-1-$A%9wfIpf 'ߎ=01:D"1Prx}e/FƠߞ]u Ifػz %['Ǥw 2vMS\B10md>x-nڱC\ٮ4y~do4qILA }H Jpd1-ܔ~*0fpjkufQP̼2Bo&%[M4ZFp?iS> > Rȕ0S;h+QcQjzWqY 2z1vS*{.7p;xv招) ֪2 E_rc|8d5t[x[+:Q@QVHu &Qї&1Źfj3_ yI ɀgL`.#\S#,&|cfYIi6^C$tCWS2.ؠkB+u3g8dA$T&ۮ$Y$@*nw)2SXĞEDžh2}<,/O` l(`uɸ%?vQ_Z~OPmGۜ-_Ȫ鄲> W̶Q J zU#BA_0^yga.)Cl;ҝŁr,YrYg3u`Ÿ|li?e׭ ues~쥙eCZLK8 `7KԦ,-\@d^q:ÌOʈK&ar%$KD_]5QU4TF^b&dhC[zM̝> VJޖ8C%yuVE@%ZԬMrGH@ŰGwUZ6htmI=4-=D ;^W,OyV4 f:ӏZvy߉B-f=&k*)Qm.Q<[[|YB%i(a^ܪ&4}x3ce跮O'YHng :NA)j5q= %grY Y\"͓c0{uaA) w͹}RMb71Su:RFsWcrJdoDbsD6"\޸83!m̪bx{mvvurP+I/ 95{Ujq[\WN}T8P0z<J^NlC,ϳrcf#igz̆e*'f,/=߶:ft z\`ݡ.Z6V,'fq۵³kjiY`zFcNL˜b^ײ-18tf׃K/T /٭In,_CPM=+Qז#rVľ1E ,\#Ch_0 $(DuOn~9a'n"\a|V`Iҫ\ c916̪P)m j 8?]5>]=9z & (8ZɈKe"Zϓy%d5z$ )Z9GWk-)fe"ƶb)Vgħ 7d:7|CHjѼy$B,hlEE#_wM >0wȟ @eIЙIcEiU,EXT-29JDo|knmGGɧ^iMa,Ka[U۶#Ά͊cZzw2ǻ!v`V faG$v)ClAJv\T 9`ۮWz)% \>R\庚FR/<{d#H҃S/&-Jy/61 {˕0NyoYZQrcΛR-SIJ:/ 8J9ж:Vt͹?}3wCW]}_soibE~'_Nvj~m~40ݳ|5Z?r:4АN>@U"1y5mȆlaok Ce=H`_ cϠS)(g[zn |X"~9a&l m+L~MҺ eu[zsHAo'ĝK;!0vS?j5 ڡLjcLw!3Q>/A:&8aִ8J޺bSr*nO껩',ffeOV%(]_/Iߩ>"&Q>!zmxrptQdԊ kE$ hX |b7'\T@BQcz-P'/|Ͳbw)0Y/8wؘ#ᐾ񣓚eWGܛ >j*3`(n%Ap js \|뺘 y?MP 2` #ձ>Cگ'D[$yNܒΕ:%>$_(^S!)͑ƨ֯( 2Iv `^0;m4XC.`;_SS4C,9?z~e񄫘yI˜#+M؍)񥍥7pϔC5<{gy쎒 z͛Q6qִ^Ewy3jֆblȦpSE 89=ZJAMzbHvB?bzm9gG~q|ٍhxb~z'H] .߸`[Z!5Κغ˖<]\jh,8##rSR .ynYdYLvdoLP?Hѭav'rxtL6L!D6Xwun@B¸.ްst &d2 B\y+u3Q2IŪU;T >Ùv9::XUOdž ۷t>99;ƒ>/b #lm0y H3 Bm,P3zf)dceǠ!ŷ%&żFTm̼fW԰Ptt4Nd Mq, zԮF!`.ZQ*iFR\\[ceBAqnsJwfTScFuԬAuxH!"iA1A916 E \5ة1SbHy3w <:x(dL fva׫Wҳ,n`3P +[ۏƏA|]M\I͑Bk#矣viKXA3,RyUYHwʟړx@g#}@v/h_kk䤦ؘ TV!"vdQ‡Rԯ[btrp f/c(쎮f5}dPz<V$x}~`b#1Xn䜵~϶8^ef*nأߤѸ:^BZԞ2|!_i(v8*}VKɽ\p"tݼ\<(LJhtv]DǾ48XQC/LΌyX:봘ѫA7ц&UXhR_#Ih?4ʀz6Js^#2t"|BZ ~T9kv~1PS`yaG9t׹=_fnts]<^]8l:wI/j÷GWϜ0 S寸X[A~H5Bՠs@k?H( U֡)bHZf 1%;}:w"~+YP4?q2tYsz <3q~2\'W,☯zOodq{j92Yٷ]0 WcHdt-񧠞K`(T{:*فER۴%Mh5_@jv 6nj*'E*‡qF%eR}rƆ^nz& >Kc:vG |.i$Ԫ6guPPnyRu"a'W1 qF3@6E$=5Ee}Pm8JCLMBQ943[i˽a(c "E;\%uGF>!ux*kaP@ :Z's?AăKN0 (+ dW|ܞAδ'&"5&{IdتC  O=i;KHUNu7XJF$}[B`Ō}Bϔ _mx5 HR$qaE< G1,Fj9 z{`[wkY/#)q \gCNV>9ݠ+WXpHY[ Խǜ9ŮXb- 4}mUoIEBx|7ȼʆBKNhƇuܒgA䊤aLࠌ ,ffL(`P"JE;yW|IDi|[݈%SMOo9ДR+a׆՟Q~лY @7vIcL9e~˩eC6!gCxQX?Av9; 8nղ,VաreorΨoVK|ߛ2oN5HPnZ%LcjGb.Rj*^P-)y*W%ރ jyY*E@ibVS"xI[3j\/  dj3<_;x&&"i -쭚\FM(FdjrNcyfHcPІ6_;&go3IeE#"%p]6)d@ q{8{g96\GѺ"eH1=CUƒ5L-K. ؅6vDl;HǮC\&DHiҡG.Pk;fLʂ $d ߇R )5ñcX_5yy0K[ڋwW UI4',[ci$vjn4E*c(֛/h}p`Mm'`e3 ]d\c^:" g7Q6OxdOJee^o@*2-_ŭI. j?*w%*9 5v^T9 ``-jbct涜9Up hٰj{WFkubY}5v tn'Z8;j &eZUI*ҏRR党H|/umgh+' "C;3K. W2<jK{AzHwɊCGC( Wu1 랓[E"O<^C9RQǓ+&^ I"^n!!UC{;G= a2INy'UYgi#ƌxi`ʏ?9Zysy.a:x0Z8$mHܶ.3L,K޽(hT)ɒGX [b)!L S.Y($p5ؼz?u'zXIGx0x NDՂ/RHB98r:B ͠Ec;Y;B5̘ ^b%9j.PC܅%o3`*[L( t$`qF tѫB5Gyw#h`>˲4?$|npJ)5"6^ h`U`C jq*>&_4w}IKUUЋB$$f`sؕ ~kbL*јUa9s:TK i&C//R-bKEY(MXWv,`%;K[ 04 H83?I#sN gL$0HKؓ/V#ӨU!,Q 6!Q̢!W`&C`c\)O75PYj;a 3n,]Ϟt_Bp?)CX&/D-cyr5HT+[ k_ c?1'+f [ &&dmf]DRp1*>'p>5# ]/jT 8?R~cYB̝#!qyyUv@>ز& ;+`[U2t*sa>R4\Ah^ECwxnd'XFb a:) Mit ןZL>%.;2T49=ȡ >T%IFFC4)5 Hg^,mQ'S6HWh.cGіfs<ݍNY£^`fiۭ8;@PV洇CpP:` NAiy>A;Ղ*s*xKX ^,|z'XJ]24^IW:baAeA E-/K?$3ޙ'huO7D`DiK= S&bP2@,T-q%Қ;a5Ԓx L?Z7 ׌Eo:\pRhs5G4*\4ًn_P.7h3itrRVکzV*+?vdoč+|/vx\@@u4%pտLTyH֌;yu;kϼ ]^YL~f]aCJ+jvfEƮ9 f˦x[`U4N.ԨݍZG:Q yC %%qxF$G0~OP. f]NܣD_r Df?3gh-KNP)ިjd 2"Q(N.$x.W#ݤ!ch]0gt+=hHA6ſ0JU,AQ`%Jo{+P[f~~Jtd6ڷFl|\PN>K"?t.VDrNO;!6Nԉ7398]OδhL±sP;θ\kߌ+&|BX:,#RV%Os)2 s^%^:HOcODT]{2[*8=u@uֵyArVQ:|PvML#1V(ֻ}6ըgX%n;Nb%BNO' ?<{6%! &yȮ_<#AHgh?ýR- ηf ZzPz;[a6BnQ֊hkR(E{֙3:qquQ!Eb3ץMBv3`{[)߾L&UvfP+#<݋"H$Yn.Zx߷p4=%T{`$R[Gj] %sՐ,>Ovӷh;S3y~X]\kc뻄(;RLrܵ|CƜ&aCӛ_B J[g.Oj$BXŮk Ght~BcQ< 8sX7vǢqBwH,MRTq5Kg|Ddg!N7'"6XDX,AwuP0c7'τ J ŕ}<F=sZʚML3q[W,GT/O%/~eurQA!_a^Qyeҳ@Ϻ s/bC!Vp\w ?G+m NJ(~j ӫ P˄7Mq*O8UDZVPa*a`8 T}?T {ފEP~sn&ݲݐ,W1 "m.L/JUlNPA7.Q ;Xpƍ|8+yvm ?.W]:NJ%2հRzy!Y^/I^d(',tP2+p r O|cJL-A5mN^CP7PN0J0NaD6EOIl6tB}8+Md K NcF†m^X&S=Bn`IA*"k\HjjW>^KG^rS sl@d LP>_Q`c6CxN`(T챟v`aURNqFj8"uaP'Ze^ wĥ7>&y(u@<6J?.mT=,4B &(%B嵟}1y_ ]On]|},b! `۵/Ӧ(b>|sKn\c"mnȨ\]Ϸ3 tT"LT;V%9Xrv - Iw>8ζc+Nn" l;!ikqw|V5Mdw )޴-ƿm*?ۮ os|gc9U`qr*#Wm ]'<"\Us:sȖNԬ%@sETg8E(^7pu;e@q4o|ho'+_H߸ib*A'ɇ·V6HIY>x[#-Ɯgx&4΀r.)Ā̻:Uvl xhV? _/+^IhźeKCvAGqĝQ<;HcG41N~5vԮܽ0 H?#*_D=L[]o1-Vly&$Z=ɑU 9ab!\cM!yRY[fXƫN',uq;vO2H굨Қry9Suy:5.<+ܙ6|fgI( 1HW RBXxqGF>Nϵzu-;*Xtg7%{V^].. |ăv@v/zZֵK,~,Z[l{[?:9s$$YSƜ`™y "܍TXM.0AB)X~2OdC[7YfɞK+v:?pTFO7Pq.`S \9Y&y3n `M*ӂ$lH1_iGX!Ux)Jt⋽nS#uY*%y$0Z [сV\k5A)J"tW_[rPއ9Zy 6 [*TDj翊ޫl/R(ov^[Oy\Կ4܁89k|RuLx6$T2ځVP_SdjbJVeS\_.kM/eLNusڽDJ6gӷAq+(v]6An$DrWK<@`NX fzƑbεNLsODjQ:|8P7?=#ӑS\8,Sݧ0"019-pki3evRV6Un읹"/s2Feb' A, N^\,9d,x(f!?GPv=Qq+:Y$(0# >3gDtՄƘ/z.K`epIM:tY{LJ]ƥ=4KT[LVud//(}b*V]#C(Z!#6UCOtsT0VsL;^_`7 ,S1s][l/єh0l |Бžo)& Qۋr*W3fD|{AO~ Qb .(S+'q#e3=(˖-3XU/SȓPJA]߮kt^USBrWuΉpasu1([/ t.J3+?Zĕ!\%ڸA|&b_'ec6tQPw'ć۩~]$U1{X:3*㮒 =x.B:\H 45G/֬1}&OK+\jvJSMXo$9mr[CBWv c_ա$߬`Or؍ךqo;`i{ z;;~ƕHu ʏd*Je .RYWLƖ?LhP'fP [#Ƒ{2 ޛCk}^+v_ r4PPm Z7"p ՞+" xB ,OF];8z!F9~Kf&!o*#&\Hз]``D4)X6;"UMq%ТY& ۪咏:N 7ޓ! wǃ!N#*m5@`˪08WvVT- Q֦wJ!0r`',tom{ Ϣk3fxіSΛABم|ZVdyBRFI$nfN򉎟ڦm]!^]%= mUOFVArmcaKaq߆ m(`2'/^{dhmmLǹlYL2ZƁ#Ewh6I8^*3-`iȀA? i%`ӊV8(1Ţޖgzs(]PZh"C"] ʟu(Ƀ]OM"_L|gr\ TpOG!ȭ?m7]N(2[OZ=_9-Lav]0Ɠ L*B*$6(_OuN s|beߜ8˽% @v.)Ο";lX~&ŭp"dBJ.㾪K0EC[4)~Y26X*FZPqE|^1!qEH`-ydXԸ#jhho+RydO5l6::M hwiv02aJ2c.k$|NWVzj)Ζ j0B'0}F )4npzbG"6FM#NĽ+3RG jj05jambL!!kzMh 8(+)/FeJEbdQo'I0oEpsq+5͚xkv& #Z-C7"m+;qv+^ZVU جRvIa^T[N 2&Ɠ%՚PוlNZ@1 @pėҮQj@5/QފeDOت@Yg\ 7"O{U*j I.'N՛~Ƙ&a-fhQ}`y F ӭ;UZd`YY8"^xA<JJ̡%\orv7ڞwyȅP=1EjUG޹e!d T"޸Ij Ї&%-AC8FTˇD 6eUkL {ÆkP aaNvk x8z4Qd*vغXCBOg.y@ `bEj;r; KYA]Az>Dv?" AdqE*Jސ{(vΌ<”zUv&lvL58bc) ӗQ1CɢJT7)H%nPS.° Vc}z1fc\nfEj4rW3pyظP * '$HL 9FJ LkUM-umh;!qihUh8Qm%ӻ:e6W|@XK$3ltS}'tOjV k迋T=ސ*סcoMedp*b *j+ڹ=Oꌶ#Joo&o$*NZȌ}aTouH.!/|_#VsbѼsdЫ? <љ#` W@)P\;|sES򎢴BsG՗r1(h=MAc#?ĀPk+!Z5xlyk[Oo pпhOYGS 0 oNöa N:G* ]$uGs"2#`bىWyaơ/w~f,:$JNO,d"8KJhs ;s%vM؇u'YL諔a@EhϏxͨ7h@JÿGX;ǃvyr VP+J PN{B)6v[8S- d.ܣ/7txͤ7ȥnĜEy*Q.?@iJ¨x r{tTj~ZI}01F2 DcMVI s|)XHTE`UDdŴoVEZHSDY鯧&`Ƴ`* a-qm%ȫp G>c|q޺zuWƸzU |u&kQ}!\Pw,>DaW9ݒT%n7L; d!M's7<.LYT];mͲu-=+Hz 1kQWa&'ވ@-2H$'|\HXj~OePr*q>b~jٛI!mcJnQ8h8Lv:Wx_3E1'-] UѴ6=#Ȱ8Lu$G~F %27+`YE`tWqtƨ(OE=>g>FvLkM .Ac헨!!ĦߢG08K +A9IhAF@oo3Ki4aSfb8ݬ)?I$k$0HpDЪ"0oZ_vqhBԛ}ꩪ[ti I8Ko$'j<.h:m8jA9u QE)iQ6V 7p*3:%orD8jP88>_Ib>fr}4$]4\lcV>4αiZLCIbB@ہza* *`e.`<+1oroU@Qi^8}즴ȺhUQcUj9G>'4y ]iD_GP_ *>V]FH4͵x+D;BLj O0n[vctk_UCՅAM{{t\!`x44\ ͧZ䦻6Tg;ռ?o:Bwռ/jhN3+R&i' 9Ǎ:fYZ#њ" ~#^%r3{᳀(Ҭm8.D$Dt+] JA (zHϘ!.k pWkVd@ [!© H}K-d>\1L` 8xy3zB7-E #3"eRyzjPѻys;,|s*"#]@]ryBXZ){coNxA^5;sx|O-*]L["R@v2\nڃHWI5hPUq,nZ0%OZ U<~$ͤ]`Œ ռ\gs5a1~^saKp>j0q7Hs8dr`tu>D5b:T˯0nTfzٶ`7LP@P28Tr۸-Yj$=e9ej}}JC͢2u3iˡp*a\Ak<>nJ[aOF*+7?H ;a1wGx?&e ;`I|猧g?N}ox8f(5uWT6@KqlW JZjQbL},^UGNȟ3Gq4$gY']IRsh\F}Y(iW#T(dC呮oT3@ڱͣ9Uϐf1ę o>ʂvrJ}H(%,Zr}ҒJ+ n2NJr -pY2yF 6R 9@cVef 6dvfЦ9<-;$I:=gc'z[ OT0MR!ɨG,@ Жf PE&D#-h\ARIԁc/ȸ'1UCȒq 镔G%on9.=ZAd!cvAohŕtb?7VG!z{u #QK1Sȩ #3ɂ+]}S- zphCzzO 2JO5\z^߇gĨ"a?h3 8QEDGKȸWm 3:|`c3M؎$) agOdٯߨyHx'?t1FL-7ϭa?Nk4kА?)ںr6L4_ F{%  Mo- ^2*.O>y:Eբr:r'IQꧺ̽:Aw}Ύ 9NR12#ӼGy;Y+,X DQ,x^8LR,تtT,?+`-{F$MN]2CQ=cnqN됶{l!\AI$c;O:OBJ*(2y[3◦3])qP= ,:@Gѹ͒XKq?ڀq8sC8ˈݝe)`U0Xj>v?  1ڒA*sY!Z.Qlwh7]h۟ v+W.k֠Aij}7T""ʤW]sUhyD9]FۋmeIAUPQbu: ?SW]h, k<&Ҫi2z`cӽ"CVB|;T}S YU"{@tsƛ,{+r:'_ "M3}ɢ KxB  9+0 y*Wy-YKJBt0! &4h} JK> w.j5eU!|zOZdz$)hFT@#gbw']<(#ܰ]QJ)td}oPx!yΚ#mz8· 9+tZ[\ROYNv~2qJ֏gbcy1P+V#Ύ NkLmy +( lG]rDH(J.,mLzeBZZ0m#[ctp1E̅ϋTS0TNA3XoL\=+pm8MSI q=h7,**~VP8m3NEE.D[grv42Wo3H!@[z4I}'Lk#~q_gLf й *6~ckTA)[c3NI6/|ʓd@8\p[?QZpZ}fu|3hJ*s}ʒ/)9E[[RU-q]QͿ|MUe"ܑ+g\RGQaFyGO":&^qmlݫm5XN!Oߥ* |ܙ3gC5ErK߉!>&T(ajI1jČ Ֆ$C=M bYG1C e!{K"B?/Ev0>M8_6p}^ly$㰂vص? HŪtOlT\Y"3?c*_Ӱpio L0&c-^UL$]G0: 0DVBLMbq{̷CD/%W?xȉRlء-eV໧fN+: t&^i@P:5$=ϳӲV.EK"9ܟ'! a(]ڹlA~~Sp,9L9HOHlÜh k]Ṇ4Mlᄧ@Oq KglSl64V@,?S+3W˓)Đ >inJ>6b۲(TS6?SJ[VѸ22-KajLק,ۂte]][(!ڭYfIek@<.0S/>hznrSB)\gWh#Io_!瑹E)Ѭ΢ԃA\W§hK/[(Wfpyp' 1\DLp " 4 pO0EֹmƊg{r^1KK97Dx{RFra\w[auI,lmUڤ"%Y;s PTH164P\R)XfЗucǟ m炼ؚ( sg`'Cƥ9+j%}t 2 79v NAbf:tFohM(W);լFlp$c{hyf7( Y4؍EݕQ?zD4MW=^c01,~.pBQVwýUxqÏ5JGɷj퇠Rw˺a pZSy#z3LG ȧXCu? Ӡl V Yt.4% wEczLSI-ΞB6U]H3J0MbC^BeZ9_i_Ea=Qp.xYq%ھ'}Dlɓ)0"n<RIHN3j>,ݶ(e6-bq]ܲ4< RTb}l{/EMa%)ȉ$aTΥMrU7:=F v mVg^fPVGy8}@)e\ϔ}z ꤴ>vzY$$c5blr<:֙(u^p2K--ݗDqpV0c Iic0=@kx}"M4ZH%Vx Ԙ3_߉dzA`מ&vϺQkWPNS§'a `7vߨ|,Ͼ-4(%gV75#V@dG0XMFu*S bym{x;[+\S+{%K fHPۜky\"Qk1Ej/TdS2dau{%,a=5Y1d 4.+D9#|1,ۨyIoř`F*=|B^o=vYRRJ$482QX[ ͹}VZ ǚvܽ*6c fDCP`3tKQxt3*ʱXMK&L+2[^DyqH=lxᔶ֟J?_<܉BlPk?zHL fx@R .kon&'͈z8g3Oʐj<><' gnzcw3_oq1]n%oӪYt*1MرaiCIB$M(Ҿ/,lss=VãoGL!2CxS() ] %sTS)˶ Qt}9h0-#"m4*nZ 9FeP4`o@y9 O !ɖV[[8G!!nE_ItqJ~ڛ㔪&\fM^^Uf|~@^vjkDQRDIIO,#]Oٳp>IoCs fiP{nt=дŽK+= M5lsq=@.O-s*Q@urt!c~ip2bッ9?ćˎDН!dKKm L LCOp]l-r!^QTVO,<}{Eq_ڨ:Xf^C?2pKO/;7N-N*gjF&(o,2 u-_o+yvWWYh 76xbkDZ0e7?UyaY+?V͕c&nV{<%_'[8!i]lċ*k2WC)2' ZBX%nƺ 0Sķ|ͽ&>lc<-s3If[}[ q2XfR̯e0lil$y{w˥ B{-,0zKg<^e0$!Fzz"ѻc:Ƥ@;MlR=Rtk4RVȄ}{5 F0E;yF| 'u3%:&)eâ3JtPX@o-C^JƭV?;ܕYh@靊7KpD`R$EQƖ)h.>@\?!Ϗ`!9vv/IWBj a QBIa*b@-^f3:r^Ii]m;Yk;loIl 0S6SҬ!'Ue6ql`Nc-ݣS 3D<˭-4?Co޹et/GJ&vf Ӣ =[}n@Ӈ^&_9ާcdlaX)QF|DsXptEW|[ͬX/t^*)G2xqR >&|[:,@oE [t蔲_ \jSM9` #|+Y wy-u (fHpӚeAN3Q((23-m ֌dI~{X7,]`k 0 R-ENCKޔrL!ׅSOƐ &Z_;"EƜ 8_m!uox\<[3WxbCe>;qt& ENOXܹܣb'j /IU[RDu]ſ<7ς9e! DnbNMr~?3¨r(`w Grr0 ݮ7tb'ashqN]ΕJm}iG LDzRMNteMMj䷇TgQ\=}WiPe)d䓛oA'tYUbAc5#"$FmϛQ%Bȓ|7j |*6%CApIm/;q}ְxÈq$@:b솾ma#1J!&8 J.<:@=m 0Q5Xۋ]M`'η2B e@D:f۷翸03wO) ,f '{J26>xGj`_SiJQ1/mMG%e0Foa)cq@ƮLS!kcܔAʽ`B7"@z5; 5'җON!S8ޕD>Īʰb|bA|kEV32WvoT2LoSw,!qPkΝA4h"!xg{#%nrNk[ #_`PG3\ħv >~uͷ`"Fbb RH"<{ƛiI1n^y f8L0+rӟΚwS*ɶoUye70<29X ≯~ v̈́dw!4>@GPD, dp_OF"욌>N.2azCџ;s7K귷T2i 1Z7LD:$`+d2ZAr ZiDOL ^n\<п_K-[İ{aCO۴Sj-Wzz)&,-S7{f \q&㩖U ;CҘ=1GY肽H罹&]!p4z5Zo.N):Owoϱ~y"Yλ 0rdl|*L"iSɴ/r3sF>.wE]ĎL<T\fgQ fx hl_ۏKrrdd,)TW*+]R/wt)P[.F̏;=I+R CCK#ԫ9V"ȩjкߐ#zt-,«%$00;% } 4NѦiaVgkօaLdxkqZgYMÚ0nrcBٸh䇯}_7TH ոu?ՅT;M̼&座]eŏ((hi|+$tg"*#LF&aRl#Ǫ;$7a /uBU3iA)e:\,@EIXS[pUNaLFBsn9:9bq]mg]^25ּJ)ibPPs[~)Uq;2-ױG4/ ;<:3Àw2Q"fr1(.rUJK3jUɰL|PnW3 lkmǝ?cA6aҳҲLPoָؒ Y9aA1(z M7kE':9 aU[۷;GA:BoQ"Օ6_%ֽߎlĘv4[BŅ-|?l?~֮;TbkX-G+ e"RUc|zMا^~Rp^)fr Ce2HUԛ̵Z SV (x_=W}M|b)1]mi;@mo|ujlc r`m܍eDgH0't?ᷘХnGOcMQzsvy_?t=M½ͪ V T>uL|4JMqlZ3+LRu (T3Mʌo$ 2(kK9topѷwg5K3k!l?B%@H9-Gp{rPNעŢZǛ0d Nc\5i0BP^a8߾UЄhE>gϭar+W9mp"MK"Ӷ9íat9P_^5.|ִ67YMzNsL(-nqL/˕ZUx..TWϨv QOp-@Cdj /vb>a%~K.72ENVzipV:2Fa\&Ȅtő"^1 `ZṀDA7حSNcc5Z.+">,g0X#l8%Q]}kAu˂ݙuA3Vq"֩}+A}YB;҃1&G*PI~wz&Q `՛$p̆QTrw욿#\^UnQH^?b Fj$E/@"Q?juP "1O{8NV!`dž|hvZtw+/8&]rhM`ez#/l.͜sԥ!P̗ae&9< > 1Ux6:#B5+}; C. gS~MiؓHaJ'}U~΁J(%Hy3 j`ߡ7,5F{{ܵ&-2uw_kڋ 37g5]{"R8翨3[FFiB̆ Я3o/07Z=l?]H-I&Ʉn H%@p>>aUL|[)Po6;bM5C"nꔖ1X ɛv8*X0̊/JiT{Z{2b2"> xZ}HinMQz9i QE K,LX G_<_9'_on~X"v&sjHZ\ّ1̒s4rRNV%Z8W" qMflN6jߣ<mgD.][RM 6h&땄k$;쾧}D(9{&͙c(1B S=D{ 7IR$7nn;OQ I1NVxYKq ,]"ocU5|h ^Mh/}p0 ,4eK^+RrD{O^2eL-"zeua}$lh5?e|rje/ -iпm 6`e!q`V$k1|1ȔJ$k)]UiOcX@[Sb mҟ꿀"/;80jC~D":=׃l'֐!Xs_+nIǑ䭥YYk>_;e_hlNm&V݋:p&~z<['ޱ1\<9*lS\!0b𖤐?˛`ؕ}}>wY͖ɨ_e':̋( #&B1?e@TDuN6vffOm0Y d"ɏ )"[>sXhJxsS`,IFk'ߖ@ZU*43\m1u,IByhR6[[{^tgt7f /v ʴf%ua`uC+ϟ_xaV6uuӡ:jo dpr X)*wI NxMѴxQhg &6_BBXX 0`㛺o&sZ-S:S0Yjb|1BlWLgUޗ;7ƏSZ1褱NGL|`$lv u(0'89.:G\Τgy5{kڄ"6k(LCR [(tjڍ 6أe}% cgzH$vV*8t fr1b6u-w2}BD SJ<7_|!WPjkIi!QJ28Z/ͭC|.?v^NI'gyj 9Ғ>f! t'6ʹ2u%7qr}vOmu6eFS*V_]2+@A5>g\#^ߨJ&t} H'k>~2? bh=CytMf{T4 ')^%Nڮ'2Y"ԠZ҈%:/>T1|ђ"{{Ec`7eYՑ!BJ@"GQ 1)k4{}BCN baʘf:#X.G/O2K rV|1uD-Lq.0'=]s~kSbOӈf7PdzP}2bw OkH4b3zh S0?<2Zu:\͘u"i2S%8cr3oӡ䯣PW@%]GY [=]kGө>\э' tB+kH*}첸*B:SQ1e$Ѹ@ƻ,v3OFewRy`zk <3J?uM /_̝OWJcYbE Fk+5z3J* IF[,klF !?G' c̑&=Jig8pr.ٴT96OÀ\qd&,֓--yJ8-xȡkPSb%μj/ ؂ZP'6zW*i (X_Nq1B1G"'65JCayg;tvHгhcG%aك 4@LoSkGnkؠ hNo$?~(Yx 8/n5?ڹt`筧]^ZBtT#YI,).\Fk𜣠w>(Hwʠ[pݫ%JM][T@IN.+n&JayгzBI}47]r+gQ#wTxIw&r5df/FE5 \Q-Ne HXÙ#`Nh&OE6 /j{ O;RNkOZto ҀVk ( 4u #1/9|z.C1ZM6^z-E%C7&٥sJs ǫ%&#3:ŲAm@w|#jզo1JA3ڿLJk.PXdF%64ߵp'uf(8CfX\VtGI*鈽 M9A+xM*R[mGlqd])̇u{h|h2 %eXBS HiړBP1~iա$.K :*&W/tt c(a3:D!8ђ$FqXsdZx M$=6ЊX(7LڊVuQn;A~1vkN5BtJfA֩ L1z38&ȏpY}EQ%N:%Dz^ykSĭ{_qb4pDٓ4+ߘ0:KJ5By?z/7Q:ÙV߰vI{(H$va[iɘP \U |O%hp겁͞9&DQذE0nEM/ilM]&A&5 787,?+ȫ|hq+"I%{j(=`|I6 }GG|8@v7%Aim]-, +ZSwǃ*cE[[34oI8,Rrf~}D'[Ѩ|^]?~f =%4~.X60'ݏ6 v듫MkiXO'R@ 9/1 db RZȦb!H+Eq\$^?+FHs&M'PxA_ eX*/l* ]ӆ+}I#5xV]Mhz9x /wV&KpW,lɣvpj sWR|<(t3u^y\{U;x2LPk^r pk9fHR"5%fBpɁi@ V6Ww95?W#m'x9Q9mV|*PաeU6dD#ulnO֧B m)u4Md=r%GS;|{\(W&1OBSQ*M>`z5%,9ɺ+إǴV d"Y~4mʾ pWmsb?)$7'% OQfQ J8B|QwQL^Nups܏ TL^^go@|{8 Ϻrx4X rinj-+Beؔ#7Щifh&e%&b=QEz'o=+5W)zO^R/e׺9)PKP&Y))iw*q#Zc6 m~D2zN$ Gw:E݌5֋>Ҋq¯Ԡ[!~rY}褦ջ1duVg:c1{8bHh#Ȥ=-Ф벹hƏ}9"߅"x; Meڧ<1uw>mRYɔqr~LU"4ɟ~x }h߷$JI{"1r#n Rϻ@C ?~F6 eNvFHQed4q#bu[n=Sу+pqKu#Ngoƒ;ݍ@ xJ{~:?Ysq^?eU$amQ:HLKŠ,A2`T9ȵY)qs v@ڃ*ۺL`y%W#"ɒL)9t{}kפ5.c~6vTosi9Hx}QQ9=La?֞NHd7Q뽠i.qT$|yc{\X^I't48P)1K@LYm-D:s07BA%WXQM~%{D {Uge2hOwx ӆЛjF}q0k牘oyM׶I8 ǜJ?mg҅Xߊ5RpQ0dHl{ŒEp} lٷ'UOo5[:?)kGqDfy%NĤaI $sBg2F[Ig帔qc'bUjR*;.i-' ,L{bV 8/b`>GN܍#5ۄg47sh̭p׫76# J5/ Y7OӪm0\c+dh99e0A1Flbk;bևtbvJb>V$~]`iNiqc*|/ʳ4O,9mʖ"xTG`HZϒզ,utgv,t1"})nhJ,V#$^qmbng"s<-z $?; F!~(m2.mWLaia̝2΁'vD|mqqa<8e 8#[yfwsh) ?WMIiWW$"_h)싫g9 JH$0gXXY <Od7-\2qIӹ*aEq_*݁% lG)l-Ec%<^k+^ffQO)"nhc=L,VYUyv4:< $`gb{ua`Г_P\GI;?2 밦Zf~{zK0܀773~k2 [6Ϧ>iu ^퐤OO*14K}usiS:yE &&L'S!R1ȻG a S𰎡黏4͗#9Ǣ59yn/@JSb^d8I,["5Y.; [.,]gחwRkzt]h1]fcGTNVUBk0g#GOO)CGլ=۟m}2ޣ y DVpcb$8nf2\o7([T;Q&˟&Pf+'s QRn%!/@`.m %!$ݷGyiZ8{,c56v(e^]}jL+po~b_@AHt'tu2 Uot’8OuE/ ѰʚdTD`#vHÖ9Y v爾k7?/*(`u*[@~8c|*c78JsYg-y,(X  -jGW&ڣ'QaQH -{1wD|e&DM5ڭ~-h6 F5X" 7a>UW>O989 Ԕ 4c&RkYu):>~͝*7Cg"S3R+_gsqIBc!;Lb IbԭLD.~[zMѻl_,xkJRKF`DI0GyY)Ɇ9ߕO| qt:G%0hCT t اX!YʇUJ*-̈ɀ( H;!ۍ3ѓGUm (~W/KQ\&^0y_|2&>Uk!='.4;iy ;IJ8%1It}[6l{p0}NCD_&5~ aű4L>hC3j5Q2j_"xg"Z͒63"8:+Iuopۚ2 Ԍ,ES6b+WX @w1LZxo">=Ɛ\+EXay n!peS ,?dA:6IW_ЂXie=tWTNˌ״&N7AR3Izc !dJL(xgV:;bK1a]'Gok(O@}+8S̮jcJ4H[hLeC CA6 uUO\3/z xZ`*@~Z뎐 :y~Zឭ|]-VMCix݃ jYXul|͟ؤNU,Qh?]EKf)0; qUwUSoVzs:auﰍ!kFu\R9'Sl3 !͚*(2)GtɃ=w1[H U 4t#^Mse%ƴ9Ny;c}縻q#!܄tb2Xr1 7ksZmܧ/]X?(,uzHcn\j#9,N_7rrg?i'&6qHҴ1+i[횟Yc[Fgc[ I&dC0k &_!?1\2!wY FpȞ`bMZoI\?iNh*|\V (]Ӝ|X[Dy]3L]{GfKGD?KJ3V*۞f)K:(wqD["8q2pkͻwwΉ+ 4C2B>R|fu>ح鑋>o_7)to!䞼\هDqQqH'w%c7ϘE`l(ua%\d3ͷ1B,ĝ7lfBv+g&8n<%5 =p6$ @d}6UG SxLԎ *țȼ>_vv |=P6&_v2Y}]-j?y.wSŏI[yULM1 aM/\Q˨ n39F4,KB\^D 2Ր$ "WAm#%eF=Jkpq{q A  UqgGWmwk9TvS>ކ8JsQA3~]'k6o !t"tKVv)1{|2%kǼ-Mz(ddFO8{CHkp )Hjkbϟt4 j-2:."/oXY+Mc_ݍ3: UaVR.VХm6)gBˬ6ZO|V* f4OGUDK~76jd0}?EM wH9uasPܠ3mE^5 @^#Cт5~>x_e}b*J Hll@[++knİoT_tJ)_v74M7B졧 ƃ chSv8]^tl]Rєf:LMSTX<ٹw"#V{sʀ*p/g0Y6Eҋ_bfFEt{y3+geN!wnyO\ڭh%_%]Ϛ%֞X%:`dWW@r Š\ӅmuA4ެH%/nt [0Uqr^O_,DOJ?%c !xc8tRX'{ vh^˭A֡fg#7w!A;}'l{ g*o>y_`<ߦc;aU\y+r/V\а%t %Ydz}hy#yЈM *-)Tqס汬 ojU~4B g>WGg'O0n9v{;oAbRl_&q[Js3 Ջ?;s[XX'XWIH=1wAOqxиٶu"SHL:`Ls )1<0NH!* X !Wm'$}Vʟ!W nLs.rj$Qkia/\Mp wUa%Ξݦ)v+ pj.: C)6ͩ'6McFmJ +ߚe<~d҃Lq] ܁EW~,:NeF՚V՞`B[ : M=$LHCiY*`(^>F_~>:T/Hϓ` hG_+USK?2u!CU9LyC +n09Rh"~, Ɲ^i&n:ӏHWd?đ;f2 n;XxFȋ_8sȁ}Ӳal:BKk@ (KDYP3C@D;MJ.GUK%85i )Z|N=ߙ fv|:G ZȡS'؄Fuצ>:,Q흹%;_A<8imyi= _Ɍe.@xlt"DK#;bMȸn S0ز渪w5v:{=4wqڤ5}tfK] z_@AeG+8#cvZ_Mkm,@o9K[r0%<xBЗq. {{(L!ʬvȘ;S4&c6+4'iHB"V!OIlx< 1_C9< -DH+L퉥HvFτck2 7NM`4yij$OHgA7įl v=ssd0@ gҸݸ7i:PMcDТ8r*iFᮌ2B-87_ q)bR뾒H=.(f!BÍto٦ ۻw˽ςEGeY̢G>ݰSr5 m-L)o!,ܱ'$K`Mx T%A hBCVZ |6T:d-@Bh3fNt-c/0y:IpѢ\f6R@1zn_1@>IJKXPrZbsYlۿ=Woǻr8 N)Y4- ` QBI@x儘AI(GW8-,s[[y&8叛8 AÄ1is +gU fjr\@[zw ӗVEs,T 49(lVRUOrT" zˑ[Ʃry 쀚10~.)ΰ>%Bs?]7rq*x=_D0 S%hqMO<:sLvt ((Hx #Lm:1nv7Sip̴УwopiQ0f҅>Zfe~L}U!go,I, nHzMiu _D+g9ּr^n^$G(4 'X~NIJ?e$v`Oy(_Mb8 #B꓀ǁj$x)l!@ʵpo" ӧՉF .l f܊d}잙H7J4#)v7;z=p96yTls5^q$χ=.SR 殊FI ĦkTQ;~S.?dƛLI-ǯ-3kDɿLH_ _k'?C?*`l&e2Hwi\x gcTxI{tgq\f2HTeD+¦=uITB>tYV `jbId) #Nqۢv1x{f}6Փ挝=~|6KTnk-o^}5狧١rVs|42)Ǭ/mkg! 7oHPX{&\[wqhN?[ *tB1%6ffi^صqq2L{e[Aߔ#,<v|H:{sEis2;SIΌ/⏽4nq=r oT i q3wr01ޚ5ʦ.<FxGOWc >A=nߘzT܀!='ٝq tˡS(+g>ڃXci1›X/>-0r/hI m(_ <1^crkӨLꚞg-I,Q oFZ_Qg>F^R?4ATR1] ZȹCex-9Gn"7dܓydyh4F1IgbM"CX 6%i.Q OVB;r~4[fj$9qF @ vH3s+\5?ڝLȚX5(5a|-^,tZZu6EjkAl]/VX@+{27)ЪT̊+QISff&[J'dr]N4 'P A 84`YgyT/g2'=CU( ւ~$гU]Hх;t^B[ZBx:%12wg+iq}Eu 2k%?jf1wH_+ Sú~F@0dR_);DIݤRUHXS]vkKC9_2 RN~}4Pƣ!!і8@EB:A XvjăfxЎtǭ$5[# BԵ:OR]lE%jM&898G"qpdJ˱V2W(TjrǁP̟;W)s"Q|gtRGL8R]" 7"]pzZd9H ݡKԹ~\s&0}|ܼH)V77}p kje"~,b=1~]/:o&qC9! $oQբkYǍR`L!3T5߆e4'j 5Zϳڕθ,ze!܀q*Z:}b/$O}779eoc%RR4j_w]XCZj}/J̇o/k3S_;;%%|BK-4PR=`}֤tcw⩄ 'gG&CN },׸n:6Q4Kk폍`lCu ng p%L] ޺Nx]>[vKe %-`p ZW ~G6+SБW\b5ҊYFY C"h 1,DZ\9x&Zdz9et A>*+D0S_LI0`W}qNMݷSEFqaHl2qXӤ=E Pb_f!6D'2}atIm.b Uy|{:).ۜ&?g$ Yʄ3g%|+`,5 C5Yc1B(hѧiZ`dF.Vqǯq+_f˒z2%DPJ;7v}Z1;^0JGSX Lfh6g|"W^\v3AFo#/1X Kax3B45[VMnWGJC hS挓?#o*4E޸ +% \ˢ3aTySbIN2+iYvnjo΁Z5o]̑V8WzQ @΀826NjW+jAmŬ)v 9Ł"W^^[Mu)k5j ]E?D*uUNz7%to=D$;Ar!m$]۩$L{UST)<# Ѧ:KǼۧ+`t؝mˆ%PzMBJ{:ҐJ M@ 34xf i+Q&'qʮ֞ltn&DB w #RX^ZJ$rP/{zokü>Ѩcy(9E")y>g,W~ ]k2-AN6:PuKwEgW:@v*̲996H1]{@o}+0>7"5:,L8pHJrJl<( mT9/Azg D#5PPhq.+?41DQ1mҵ 16 6ypK"'0_qyUz; llLYDaQsh(1X\Bc`jUQY ʵD1ʒ"`1 xs6gsi{h U/E%_3=AQsrKDŽp:2ȣeEATVUb*Sb`5FA>7[)H\9']MBCHΡQ@@Հ;Mm/rş~I՞Cx-{O5 }dž!sw.J}13JPY{0Ed۳TTF1uLB=V8%x5MJEQ_g2!*S "75nPK98QG duӞ7&M{&"sJ(By;\t{{t'hwi5vP qG3:*SC|}0]RoƤ'"jCT 5V/ϳXeU^qkKOjl#Z>`)ȗKPr3^ tarє}WռAQ$rBBҍJ)k^`P[WSuP_YWىn})|uAc_ִ2l`k̰+=1Ox4zG\v'YHiic2`!aB0Ny-Tƻ5Cﴩ؊gx[BzB0Ӛthf>E@r.a}`NP`@i=X(UKC[*!{iƘv kk8JjE @0&>t$PP칹F5VeX#!,IS:|cHYK0ڃQv!G(̭ejڢQ%V|n@ ¡' A*}go\nfPl{m`F _f>:tlz`&Gx.#&4haKPZ0!3>|V+bqyd5& o:Z,,g,^||IB: ݫ ɸ;ejZA +&.kxekL^4JqGU%YR'GxaC)"*auU"^NNjj?b|V?nW-tLobFb3)eJB(Ǚ~#|h덳r兾7SZФך37)CѰ8*K=j@y3Wo%zGm#gújՆ'Eyx[&iqo%ƒCv 9;D1 RXn!G 1-g$C BpNۭ^ !e@< G2E_x4&s8# ".˲I%h| $뤚(M3z6>\@g:zew+Fq27Ho0K KOI'nZ!l|+[ི%=cwXuCCg!–$f~;9l _㪖zR' ̱g720p ew EoGPckNgi@F?6.-ܓӍfk X NA6Y?_t3OP,Ujt:Kx*Y-: JQt <tL^f<:OKxHT9%K ?BjͿ"Sw։">%uW~kHzҡaXЛ49"&pNf1j+ǹup t>Ɠf# ]Pod3`|,Ă1&W.o,"Ws P @*GTُȶe)8s]R,4ǺIĶ-Sl9~,UuWSB[Jɹ 9 xV<\ޮ,;&G,O#b{m_֞.3cJk1+#׊ѰPk8(M>j97'ӑ"r1!R?糬7.Utإhj^9Ã7W T_ OuľV!Q>""ͯ5n|7+2Fn 烞& &") By(_ת kxl=A)Fkeao5 f,Bsi9ҍ7Ƭ#ۆg3`;|L_5L̜q;cF1={BFԢG_vWC+$C_|xID67eYɳm2nH,ob6s N4Kؒ|k)8-TɯMЍ&RH*K!M9% ūQZi!IfPk,8^̥ "LfJ.q"'G]0HU WY`N R-Bھ";-\t}ɓ&C-M6hKQ<_@]0"zmLԂ[ M@=Iu#=S*𥌯$e*]XwcVeV&c; 3@RF>3K69&DJyx4[?h).864ҐcMAICI=,/tmv#V' U_ \ޤDSG5z'C CG&k=1Hz:QP[Q^QfgJ7 E@m$?BxUHmu[R-';=f5ͬ2F%-V!懑$=jR9K7ȎTfW51S=F8D1Gaך1dx~gඌ#yJcu<e^O,}D.&"3gܘ6s䢑uB"Ʋ˧-,&|*n%* [C*[4pK ::SrΕ\:F8+i(tܺ6}E iS:nim {yG@*t=8;c@`p Kb(=⡢e"?&]0!BQЃCMr>ilRr1e~h >[T Q@^4ޞQesuȀlBSmPt+|uFoZ:3; Q\SZ)Xhw7U:j\.iQl]guI+pʑCN}xz5\MI)񗷭|:"`OhHZGɛ< hÊn=hdTAj{bjXD[ KZT8:20 ?x9q_9K"laO0]>8nBaк\̋y2X&Q j=%5E’R+ M#uM=TThֆsռ-}Aiu{waA"İeG3O% $Je=;ibүzWd1Wq2{0 Vп8%;^<j3?cR23wMm4+#3zyP 抧a vHEyo@wp}ݗ"zTbNՊoѣ6)=HzBrAhx_]  SuѮJ$j8 GYB^315@ʀ1YS " )!kQdKu*qbH\>J{L| Sݾ'2U!^tJwNNΥZ<EKyԷp ]ahx&Ҳl/|KDQ>JV!f"nP۽CE/5@`iPOcFOB, KfTL0\X CϘ 1sC$|m'6qP}DF̗is3~kqYD6gC)fDĺ4^D WOYTPpǞ侌bEz:ex٪>e]qvrMsKLVt$*/oОzbFJn5e8gC<'OxDh32 < fTm{D.U}Fqup$bJw<"pS.y{VZ2:9 m(;윏0 gAzBSv1iվ:>bJ=gf/)PDN9QX,}VΐQWg8(KnRYHH%2s*N梽̙Mz4%5Zc2:TKHG@jXg.y]C7Eye L:#u `zD=6;d{$_9 `t5H*gќ uJyCv]HKJ|7]QqSL䅬uo|d+;BP[;c*sTvSy]^v]GN' L)gD''uvbёZmXnK)vw 'D2UãL!^Tt8Eqsj#nҲLPk}t3%% S39R{->ª~66tx_Vdϣy\,芏]^e]JN1Gٓzo]ۃ􏎽^nTY-uHmyN;}O ulHPWۛjUTnPն Cq6K2.+=d^EyQ v3En I>`dQ`$J "Nt#9QMI*߱[qu"#e-"-TY#Xn?|{1}buyT"8-ϏH=i1= hwKwڴFMFV 3wA:u*، GoE |"9pScV8\[?7$<;cSG6Y W47k {ܐWfRȄ;[ʤa9:kO<C_ӂ]+Ց 5 71M/#!E Km%H4_ VeM  O8MɃbPz׋ M.ֵ產ѣ,t琍̪7]OEKc}[?׋7?%U7L I)͍\xz_]U!< VR*9[v 6|a5|&"d[P*?g/ +s[-OVrb<Y.P?Vp|lOC$k3,Sv\h;v3Qs&(ӟH\b!u]Iܕ9`^>עW{|i"o6x^j s%3oF(iKx5 }x1Acr_먗 #܃^z2Ε2\nO" ŐbpzYդӄD--dR8ϲnrGA=8 M<JBfo8}/ Z514_S v/s: U?bz;bv~ڡY}*O {ê4+Nb fghM7INveGEi ZQ?;~QXG7ly\JUծ{38l}J\b4܂}*Fɂ_3 meŅc)couG4=xrK{Ug+lE) @a?`IXB"~`,1+kC}XO6OeqV0%tġ_NojXwXZ Y~Tl>{g fVt] pq",*~_b?St~.aM0Ӽ{bA| Pz 3ȣ+7p`nem]+]jWT SN4aL2[f%'}'CDxC'pٍj <~,&V<;Yg/;mqK-׸C:4M( Tr?㥨a`Wy ^r*:8bf{9FZ_6jmf`>SR e0)qwvaIء9>!CBQ6U6zCqb>;WR XNVqGv: uۗABqԩqwPtЈ`/yS[r}v'kb@*{;U2$YޑB=bl _%90-iCYN'p{p$~gNE&TjM\u+_`6@=?v8zX6irjM?פ5ѯq@PF+WV..%P*DFc eioIE d=^:]v?3,[@4Ɲ)X-WÕq6GoGp9NG>\8v= 9joo:5)X#kK0BSHv$Q2@~򦊡ӰCmܒgkx0yl'/oDS)t0N+L/ӣkY%pm* i牜 Kl֌1yP;p6!0>07Ԛ8x+wXWKݚ麐mq/`T%j\T'(!!k/,Un7]r[KSJFkY)$[.+`:[ctKkճO#jYMHs>ߚOpqJmN/=i䜜P6ڣ-ݓf< D,f!"OA_I8MyJeHcj8-Ga#.\ȓtTE7DEEz|s/ck݃Xn^/}WBBmݻ}Nbw[ZJ H iHjZ fs jۻ3nUE_s:NQk%O/97ϝ9s)>vg{I*;=_b:;KY.>HEph.vz߻Eb L 7 f'K0xr( h6 bă럎|:æϴ3`߹:~+װS't>;w SYUi!j@#s]65BKvO0Ty:gڂk:S nAvSrErTm7'n ^8#܁rfbD J`/MzE;!uAU3]Ǡsy8ͽK^짐Fv)<⿝uƩ#8&g_hC!{;(]oRX4=XNd,\2F5!P =B=\eô5S3/܁Kmd @/9$ݧsthA3I+F 0\^ KhG17 {xjM9Tq[\u*90 t /{6J0z,Ì^0d{4Zl.|m,D[I3qo2.*ODQ^D2.ch-10/8sF׹ u"G˝NZz)AϚak\&`!q`'Y=~[Ă}uvP }Nqv~1mZ+ ]Q&ZL%`~!G0DyݱPС޻b|>FEa; ]{2DŽ3Ƒ+* o^75Ņz&Xp_e)/+Qe33w6;J=e6j 5T_<uvg,r4̗Z/\/6XOT LE v4Rmxp@Th[U f1" t*d2tظ$6Q=[ˀ7O.tNao/Ʉ|iH-` 2.f6 s{h8).|z]:sMǻ9o00Y-kR5$kvXZӔ^| :`.d8eiAGH/WLpJc.:||MTn~A?9ȮV>LNWN}h") @Ρ0!}$MTx.H45~j{S.c0vbqj ̢'~Y2{G2p~T0,_z|Loٱ-[f[,N! I~@z]My"A 5)zEjKJuG]h59umAY&)|~0?q -NمnH8,WSna,unfTqވlsZ\csq `=$"1.7B/f7?n^Ɣx瀺lW Ѣ)㣄4UpH ^@/"´]c'lMpJOFֈm b`%2զJ6wᤀ@.;apiI,4ۿD歔Ql3EbtbeފA︊(b4=vÜD.Ħ%]Qk2N4OָU&uUPL1 kGz\ZlI CNREǚMN *{@W†9/A 3[B@n:["Q-Q* ӷ$Kf$8=**{ ye(:x0kDF< o\d˧A s%H0?2H˔0sV0t_ ;Aw|@穔77cqdϿme=E ?k^~onQ;~Uy#/ʛOSdS[J3dm J)љ%eyt(wR2Hs Ds';lt_p]뇚 _4聜@fDaQ.g5 {~8!yj̵VU I}I: "W/ /o9VP9FCΦp=5u5}tg#v+i9ɐn(b`P6x<3S[/3$.%u ɫjxI2GqUˣJo1 H2TAGD"|z(uH6=g 3W )_aH`#CbgdOE+Rv0K,ynANM:?oO8tUSZ*hJx{O0lwc_"x&&pLeJ*]I(M/?WlvrCվS<53u,ף{4vcNIP^V>1B~MǙ/< y.+U+JގTS* @? ۄQAccO}5>~dg9 '׉*yj)?oq£_xx|E  tUPQI|RX=$ I :ZkPUC~ T#W~ykKbkqAKI (]@t 3Lj"AvǎGd5nd>t"C7 8;6—F9WCT8N#5OHN"&8adhS)M `^,꾃 ]`)l3:|:cER#8HƍMĈɯ$j&n3>wz填.F/o;Hޟ嵰&t. e}%!7V`B!EY=bωP1VH_C-Wn^dOu^,A5 LiȺHTwͱpt6Z8Rŧ:z~gF[d"u=me.MPUR6԰w1CanwOd$P9*=Jd51+փ*hWc+2&l*K CTXr*z$M~&E5/);HTBr}݁AMh"Z{ '<# /k5 ˙Xj-8ѥVF|8zRz`d}Iojzbj/~Ǻ*E%BD<~t(!4V!!\|/ImqDp_T@HPۏ7+Ţ4 (%NI78Bc,(Kɤϫˡr-D,Й|/偣G.9fK mЏrPƵ\)[8zbTrDؐ`r(Ҵ Ayv&jɗPP,+G7#hy >:5gnq$~ &#d6=e^- e*m  'B̽Q)K{'x8wh٫/qeFu{[a[aKْ cY wT?RGphPs Iìy!O }6bL0N&ޜ73 R&xr޳A+LunK1lRUȝjLNv5ǿRS F,(=ZWaVm-J~6F_;!?WgiHL]<-[_}^E>,Rל=Қ KtsB|uFݟ̧9Fy Q)s7BB{TQ0Y[u?n"JwVL. ZQw'+Ll]`aVLjKnway>5]4/AC8ꠌs4Fk)Ze?J1Z@ԲsHؠ0: $xCs]rZ3/Qvъ[=m^h//K9|\lmt~OxZ/'`fQO[R ]p̘Pc/#5K&K8mOANnaJn&ΰCۀ.u`NC7Yֱ_R9n.XV @o7 n-N؆+SޮL)AS!Gݒ0qQnt2NBNp_|$@ry#~hD]'[k\x.ƩȞhfd?phgTKk$g\@mDd܌n`V/xQ\HاA@!G'=Mx 28 oZb[/l[y\ߐ YsS` -OaxQ EgƣVD' kzZz%iGNxΚP )\_'Gw&@쉧>PQ䮾̇ѐRO% n 1KhR:ogY˪5/,X%v1?-;ٸ8#8?yݚ7.,3p: @~ii\?uW;_\ty|QF (,%уdvoA.Ș1Po{o+X[_@2WC?K%zDq;_rL1h^`rEߝp4S=́uה09Đ3$f,-W4\ϴl.v~Φ^N9TC#/Frħ9xW?qO =^Ć_v7YU&q@O T\Z+JZW(bJt]e0@U//Nε+ۜ5TqH[?/= `(y WئOuϒv-U)eƫ֣ZΡ4W^g H]Ȗ mtqTiq{8X)4@7+VR 3hׯh0Ûa%9yޓaV!Dm8Pde ,2r?7=B)_2O2%%\.N8hЇph^wZ@ 8>Ĵ 8'b;o[rE4TM|,y1dgUM:`06+Ƈ2bșϵ1숄eh%b\ /]i[V9S+\TOgo%ME>t)\-Ys3%ò;(z^;O1:5:q܆!-Tڵs.+Z\Yc 1_ĩycr$.yJ:Lj3'2pS@'3U|e¼cHRߚնx;$KI4*3\͙X8}7m"zAsQc=$9Lz\)h}6_}g<( #5A~EFc"&>sbIґZG沤M cX\YeC?$E1*8D҃6sXj)~Y)o<-Ũv$ΌVE -EL>mss.@?_jyC'=C )2jf?m`n\ a2C}92EK7(ϱӀM䕖ueSabBlne;z;̧rnthw&LJ 53O]<.9tJŜ<J >E:&;NV)Ps@mL܄=A'1`*6Hv8 ,j4@lOvJdL0g/ކ}U 0Hs4؅nvL1\@e׬%Wlx/Aͷ7E/u_O?qP~uh6ZQ}k`d4}"2@o=`J-[3 tR$0,~<F\MΊ[å5]tՒ$giq_60>~9)KT1*goyO⚧C\YsQ'0~L(a"wpk+߭,:s{.;UxŲafJl1x,~m*rF1g^+BSHn tdfҋqdGxsr<ՈPՑӈ^\B/kI(d-T z'G[Eg>%2]*ן4|cM/7aG觧zLX.M8ɺ _7]tO[|w3Op8+)k:q.G,,J}8dX"Rr46~gIvB-Z|mUdE]RFί`Z46ԟ6h)ck\yZk?uQu}+(+RƩJ[=Zvc{oDL%-=]%sZvWBe?Dvğ`)ɀqsx?czsUSm GGR ܫ"bLPUh]#I(&~lWP$m۝Gi095"`{̓5QCsY8'wKxzb b੫hqÎi$n"Xoqk8tgJN.;~{LӉ >;zg3KIP(NV^LҵsB. J'S;ikaGڽcnwRˍ:k\ rTķZK|OCZk' :X#-7-S@ gaHC3`O$ ܧ/&ĀjwŪ?Ip `]o=xÅzO!w&<(3ٲDܖbm(V)ACs4-wAx.4-GUFtЄMn]LA. N=_N7^~;Ba-sC%#=D赓6DF\.SzKVvh?}G"PۧG:= .HkO7:4ꥣr-3@ZwWrs N-AFb5*[coiy}]j.I4 y^4#dV!7Bms +\Lyic̕s l_};rS;r/=b02Jp mw~r/)-- J@CU.{9ad6@~A)`?cE[~ʸBMbssNOUO~wjN@j~sKȋ u}jksxJR@8]Y,w@H"Y4ŧg0݇ 4gȶUH'oyA[[pnFkƎ9n CUdmҭ-Gla4+Lp2vs[3QzUM5#67/B&K $/)TFZWSSj~P4Y{(BoRr6GxkR{D1LJEQH%<'IRAy|WނuDn KJ ܼfCZg 6WL/{aS)ŨڥN-ݱLP ͤVXM8V:7{pIRz㌪&gbhXz3e[%S@tV]RuQ"Cko[G(OY6{_;aN2٧OH}Έg ;!dd8Bk@q0&.7vS;PJ`~l0@ݼH͙i7SD# `0v]b٫d"CLu!"*gsww.o-N* W 0 [2>"tzo>+K9|#3 ܟ"{2~Pen8s !I/(*ĩrȲPh\ 5;Q9!O@ju5K^PНQ:yfI%Q1ĕ3X4`>xӴ0skG:p;m.$JF9 kk ,e35x'UY#4?5R/c/V&788ɢRx–oit1 Ŷ/rAWX0jt@W(֖4tẐ0i]%% {?ěB+' +1;1V i936w>mth.?ZbYQ><#0KbDɯdQ]x#qO|)9?`ihۋ A5kƢ=(|gΟ&y(u>FN` D>65\`µr@]YFY)%~=@S!3 @UxSuM Gcn"ռxy(B 4i?5n ~|Z ;[B0}C)CUXJ!]9mӶ-\oy?+kc E74h[75[]0eb,A^[*G?1ld瑀3P26-$z&R Щ7\N2B.z;Y8㧭eC=F7('D6!J _|~P7G(GNZ aA ج˂PUNz1D]A3.#^UKxX8~QG쀺(ngv{S+ѓz ^l#7[琷1="?Z(r$ҕ$+S%e6y/rNvs.pdz ~.|Sj:$6ۊKUM\$37CcH}‡-zVbXݡp+,'S ]ƖlLV\ߦ}L"b'_&f2eP}[t-IMlµj߾Jno{LB1$?լjK5&QZp[%#h%;uWei啾NtjNV4lʅS8ys9́R' Ƨ b͹ݦ#GSbRaRUay&YPv=|!KgZ>A=t?'4"]W՚8Y%mz?p[xR JXI&߮Q?adN)clL^^]h8ZԍsPH&NL&{޸KSAS+K+6dIMBvt-W$:a'I>U̶e#*n'{NuT"v(L,->!/\ ]pɥ&A4&I11zȁȈ 3ӜQt׺ax7 A,}Rex߳LZpD/ bQN4a#~9.9P:}Ţ Z1d'^E>^WܯCbH Xӣ8B 4ir}3^ ރMY͕#  صUF>hWu g4|q(n,OF(^.ᙎ]E#ʬ]GpX# Q F/wY yAi8{,KSUB , ׄ,^da)u@"?Wԟ{C1EfkwA bdK~!}ѻ;O/L "*]vQmN{e[ ő SU, t_C -(4R(-0|Xg|v+-dD⊋KIaP8ɵQ\YQ"D7oפ41~8@ _\: IVQ]ƃwA:qR'Zz rd_syyUL$*1;eחv=94xj͸چd͈ۀ:3vֈʄ8͖6 VhH-~_TV6u 09`l5;u~PhKm5]{c@  OLx敝)ryG\TlKm /Nr{ҶeLe%'e.YdoT`R^Ib`ʏ QKpq7v!l>saP790Dv'.`Qrr[{L/8=ބ_|)9 в8R {/p6 PhnnOoJjMc9rP1S"g}f(OOZiJ4Fńܐ##cK[d y 2\MEAƟ+Э i쏚\&?/`8Dv^¬et҇҃Y!l.#]@8 E$-fGw<1S"F̐e-]AL <Ȫ` v )j%v12)5 g m{bY yV$)wn-`\h/-qyȟe)ܩ_"Jww-O/t66N|I8jɠt tqLb_0 DQf]I'^1}&%|a_qƢ{+r~2s JĽf-q E_2GA,+'slPGH\]v1^?S-q A+ >o="U,:!߫7sIX8@,I@6IS5+S\2ll*#JA1  @Q{ y6Jg:%SԚT«7 cH˯0W9\RiM *%>T7b\]s*dqUE>a=XtpdL @L $m=7/_z9OQvA]I늬HNWzhr?f3Ԑ{5oԁSuucr9ENп< S %)o BY?c]re%1@11!M=.b`yG701*I /Ϋ3VRR!CVdv],PqfB̓W{# [6B~=̠򛍨wP5gIt z`+:xY'J_.ngRւs' G^C7>L9HMEGm5k?tmL(Z`pQ'Nӛs^` 8@[+ҭ 3X:%haE**NTM,rmFܯY'x).,-1L .(MM +\Չf,zͽe{^ ˏ@^0wT{.7Y9!kyɼB5Qg^CIrNi.z{|0y߄:50#,%=+½ZzهF3e!RKd P2bo ' 88SiDdjwy9鹳֢OWvk*4;u04MT ,Ԣ,&>^J3 0YZk>A`j XP4DjoK$vI*|(ܞeF(|c,aW/͔3͏s1fb 7%:D+ FH>aJ8'Y_27(}i] "Pgz%dgx cZ#|vŎ+_[ A-9'4ئl:_6vȒYtV[s/Fq澊z^̑#²W]7-8 5PnF3ihvoZowD]Xy Co.K]ӗ:ݞG'_"xʼCg򺘠+/oonX!2qh;g/8h*`usOG_uοֺW/:=A B5~SFAdugьوQ_|mkL]X½5N&QcEϙ$S;Fe;bTp.C`i_edE"SY~uֱk.5poCzw;R95c*ò~ Vx?&,6K9I(!y n?uWn81;Q,%:hقK@Xf  ߊOьz\݅qPOW|ߑ;|m5Y/f,"V(!.~Jc^/i\`S7JG@7"?uq 0=5"V_1u,@ >Pޤ/3_f'8>enU t&UEe.u6ux aXahFZ7ۡد)GeV|' Uµ^ieCCp 9 ژ|>b8Ub"sI)ظRfwT#kU|Zdk>yثB |]$ yJmvf)Ѱ`RwRkǻP)i0ik&y26vI3%_"=' [2ӁQAO$Hqw*g2J ̉>;lOB%IJ"~aM ͯ6ul % 4]lWi ti̸|U;|yYHy.x!dg\$7#c֘z NS#qӱm\5taXD>q  w@Zdd1JNՃw>SDT"M869AK%SAs΂g= @u/w)\qL /,N %_4hSVsHΎqiUc )Ì fJR lB  y{IQTc|Cν8tYYF璵ovA!xbEnYP$5[qhbѕ2Meť tpq&#^o?^+sz<*38X,ww,T'GUh=ӳM]ąZ@o;1TAoy'1S1SukgՀJ?26Яszk^DR`h :&%V4y>;pI 1ھslZ?G!Ew\Ɍk"&"")YD78Cŷp)aREi-›޿6HC*`@/pťf_*.L :c( ֓K+!<'&[ѼѨB7(}wQ+ h$1oafsaW;ֺF`pS*G:Eq>FgF`n 'L^`xq5hg^G(ڄEF2-3*Ğ`V 3p96޹Z"i z4Yl%GKFx2R[+0/R)oj w{ J]Yc'BG\m΋Y;wlMݼu0ȥr8gOin_Jvʤ%cy ctOFLZVNc9o r֐lFU0fVH +m_5!_r|z" s ?%ӟ7)! c]b>^0TSS%bRs"V2a$SNur]K[ȶ?ؤltQ:?ʺ[Km:s(Bfu/9 6a2ax@UG|1iWf?٨l"Q͞ASE LjNO91&R3g40Ջ|aj˺>9qQVk<-"}pǜRBm䜦*mR3,R@OoGҺԣR͎]:2WB0*%Q t܂hn'PCdrV֞{닱Õִv~)7orz /@v*R &I-xg>|EH=VҒ2HR8?CqZB5,6߱,no-io;QZ&]d6on57u$+ùh(nV}!i)Q6C]tU,%1w ?`k'aQq3ѿy &]#y*V3C`Ul!j,hսU`ʀPjUJp^^5^%4N>pڒ`$&!B[(Q_~*h}šmmvƏ;ڂqsal8Jżq ݙ\/m3?6>ߨws|LIأrT|6Pп4ZȮN=Hb#(:.!TNQY(I3ItIByQWͧ]I؆x]$Dssdz Qr“Iۙί)^"'Rm9- # ZyDǦO)ੳ˄py‹]GmҦa8d1("\ (5" @$A =L*>ivel\"E[1D1BBJ{!\3Ŭsmof1yy|Xf~f;yx'G>SH5c%RJEGE8[sAU0+xm!N= *w}AӀoTaoI98Z%Q4dg55KqS)M^&@ESa͠8ʞ= X5BbĀ RMTs!e>4 t^TgŎ=t. cC hzfR9o] <9t7`fgA}(I>BEFa;&%8',7n^b,x!8duEv_K1E`^'>."_,*}l&Ad,r d/6X3MߙpYJivID>y?l& q~q6,HsM7Q8?-˛'R4{J˸ո_\=.NSL أβ)2Z68-Ww" w LpLaJƆgɑQ?p8tH}N n8>T2a' l`e[6X?;^m"lkOBCIW4|{7D-^:AsuHPS)ꦻA{pMs{v EtAlo@VƼTӘa}V fc׹imTv3\-DI: gGܚoaB՛B?Y~,d#6tI{X*ܓP ;wB{۴^ÃwrE>Қ`r_N|HbmGvR?l/RY2xc݂3&**zZUXHQQ>C~)j=kj XTFfK&,Cڒ,!Bػ G4)c y8U"sk2Bmk@ ,x2sbu8 D: "'kF5Ŭ''f?@t4\cS5GB$–r m:k+m0T܀eFL;YjkTj{e:ba!tLV,9&{, e| 4+?NϙƊf#}E4Զ Dp'Up#J",ڍJ҈ . Ȑ'W : . M\$zr3 {3p!KL|z|8C~^#e| *ڱHSXIr.%p-2?#jł"k\2.>P̏>m"#S:0"z@!BaғdCʓTC\ݺLHXz9~C̸_p@i5a]5(Y}٭5;E醖u)#|E';SvpO::FBϭ+F1NfZ_3 ~\0HJu ( 虃=~T>~>El%@sHŞ0*XA6Jэ'Y9T_c]v9F Q)ȿ _Uŝ[ k] iL/TF|z2_1 yf+%FHv?χ"B#F q|hPgg9""C[)E_Tٜ>t?EQN'Xq0#y>KE{~4ӥFL"Us;E+{jLA{o+4KDP.+w0xwȭYv'y@5Ğ(stG :-66n*Н1~N5^J? Ћݔpr<'L QH.d`zH.]nW'9ET lsfHUT<ңZ93I˱̾OHJM(4Z77idUPN[A/o8,jwh{8o Yp\)MR0T_' QQW00Aj';Quf`XqtL4R3d\ou@+f^2%% 6 <`5[~ǩFoG p/ ]-:(>{]^LSK&hF3QԈɉۉTqݒ;zzP A9 ֪g0;q|l?(3ژ}Oc8`g/>Z/P=ܷOcUx,j!mklH>ÒML6m3?/&$Xj֏ B1u[u)y7e{Q37yTIy4i2w[/(5KᶕyPyvST ³s7,A(x&vdF5ɳDB(7hŦcJ%:~-ID'uF0A9K@вlup < glCU=hp\ M-> (3j:{x2KaZhQngkXp\[Xy`"`9QH:WLn# nhVBnfI^%[w2Sݎ9{򥫚@"B=jj6)A@m;z?˺qhL2廦naKg-=U yã~P}H #2'U:KA+䒹%_8BE|y$c._dEtQxkΔᄡ6xQדJFj qB^P'l:+M/tiԋ8:v^R|V-3yD珎#V0^wdZM0JU*³V[a~plP1&u1HbGAYΌuC:Ih)d껧0[|h""o,Ќ]*M@Hp_nI=pE{|K6Ux6#3FaIgOEmJB;]c6ie ՟?BkU gGڷKZ}\@9Q^5rR~ xT= ^%ƌ=u5@VEYGQ>՘ ۵3j-6Z }[urrdi 5lw( |FjGhֿ Bъ6HX>xbUvš+5YA?K<\jT?3wf!'(HyO  ;9]I#]&Y} IrhLWGM=-5y vp_&"/\޿]{o1JzP Iρ]gIP4vrƤ%q[xcURiãc!&%kD\%DIjNڊe(q44,ۅfpt]o847BiRMyrf%>Mia,\TqR%.97fL5H3 kށԓ 44~}OEwcVpPw# boبGb;X?"T#!FVI.l Q($Ϙ)F6MR=hӛ=GYdΔUQqwfG0>̼1*pA3`l]nEΒJU :9 nCŸb=fl\BDY%; `J0y'*Θ ƒ\j5Iif{ތ[pNC!l.^b3km)\5)c84Nk5cK%7wk;)I`bl&&0ƜduI˗Mv9)ãҟb4*ewFDYv LK2֣ԭRʆjnu\?l W| j}Pe/ LسN}P@q`D*8ɢj0׃"1TDm<$qru 5氮Ug06Vq,2E,q#%[ܴ%93íAs8˛d=WCL+Q(NXMB!dmcqA: A1Yawr_%qYy зiU 08gI۞%Bɡ9H[q%~В_'eTs/W f\)W(0"p̂>$da|Ldƿ%`y4vJʐXx8U!3,+7*L%zc aJ|qtUduV6DڿoioNBц"Gʲ=kZyBM]PUo4H!e 7 Sd]4$ɧӎ^8Y$ނ'@)'㺻@N萔QM/{'/Ov=I :I,JzM [50N\k_]C1!)Pz~w8E5%k<>}`YN1b' -q0YbV?v@xSY $Xh?/Msr$8'yeVYxQjz`2#*+*?W0Eo|~ٙ>;cO0znδdV)[Rc/[-w1O\ DVy'wmU &U*CQtq}̭$&GDY2 d0Nȑ!MZel=J݇bX$-MZ*m[!qcCȸ].%dpNx0gJwWi͇Hd[U@0Ox_v|dlܖ)wPU(PL4D/V.|rҚ(z]47Q@s(!%*57[a~]&=v!XMO=Aʮ1ۇ"2LOWQJEtqhAu' S#A2Xw]4Xuۊ-W)_ 8]}LV.ZMrv T'N"$oU6tBXxpTȐh7<rx7@=/fgs뻓ק<b乳k33$Xv*`l:vI46Uy:%m#nWSf紏I^z"XPcd,Z0ckW!yפs}_jv/-̖^D}MWW)11>/ UL^⎫PhUC8D`(6pf`t7NT8H,8X}7 oa u+L?'riA{Hny:Yauz9} UaB4H%[jg9Һ.Խ2׌\y])NK@x.L b#&PdO~QBs!j̼aGX#:Ոw:2^l75+gjFhچL5*ӓdXf[AMA??k|**UKy?e:hVp(}efouTb z c-jcJߺCɀ& {5<8Od^*FmP-* fT~VHum:ip^3h3(ln;PQT39Ϙ/Wxζe\PN7n hN=\ ]Sz'6ϭ,YQ{ 2 ɯw:]-H _]$>pR&aM$ @%Y^yրhkzb˿1=R-*q-o dе8݇|w X!v`ZRi4W%kV3hG V! rÝ C;; .!8IZ:oJԟ}OBvyd:Nn$}U͒ĠrFOa8 ;v竻K#+Q~j/~Z6| 2jQމaOjewon;OV㍄1@1% f́I Pgd&R&_uV BuH!uWXwُ]'IUP|D4@plJXÿQYfS7q0`oYa j&yp\Àm{*?Z\ {&7p'*<{LJzciyGJ."-5i+W[8,״n}TjEWvK2 SD#(^tRm`Kt$`XqB tVlM~V{m)˯_CҴtӽ*"r$B5.H|S y"ѯ²^;Ǩ5&İնb;T5.b&LC°L~̇Xig35̚UQˍz1cAK}9Ykq-8j=4,Ȥ!u(6;ܡYF6O !}/Ғ caC-y;ЎԤ"96܍"Ev!J!eޠFWMmNu=+sI-ƫcʂ sZbDfZv<.:^.эX-{"$ld)>Ѕϴ\ F1)aX5>=$haI9n/:hw /@ZG+EZY6}"饰$1A~0bd!cg5)q_٫ <<[,38!IU^DӋ@t&B"i̟*tp^ rg<.q 'F m)kx5]#$vi|zlw V7G5]|vxF280t).wឆQcQG!Nw蟇ؐ Rn2Gkd95"Ӑ8%[%-_LG#;1Fشwj$&8Uϭ=!/׳xxML6a @ՔMXL0Jlx?qwMN90NwWO.O$*ۀ5+Oqp(f{HH}iQl~hd=}-tƠe"U(J-7 H~kwp@J\/Ɵ;y,dg~0YT)B,~{8m p^};ݫZQ6T5%.~ E/i6(i?PU-PotF~s+bZYkZ<')/XK Ϲ3Oέ!~@𮔷\[o Y\dgv{fԫlvooB.};dœ&D]~gwFmҾRpzC)0JΞiTA %Tp>m˞wEZXy1% %Y1M>v*hb"k[maLXYaemBeraekDfME n+?oqjѣdSn2`%EEM42܁+j^~&APx倀Lv )OJպmB2FjrRkq;XdY떮5LRaWſ'U‡y4Y/R@GPBfK~u"1d?s1dt͏+ 71 zǪ!9~·5iW/y `fCr/"ޓ9r7>Ҍ1S94Yo5arވRZ|'lB),Js\(H]S ~TХ2l볣ڨO4^͝)gTn?4ݏ^/q!SVL svϨujz+x^-W-tSXTp+6&o}7C<ғgQzL^ ƖMv|kt')}/H]֜MMy-Сc5Awӧ _p܇lb%˿X}-räXgm M<J; hPI3Т`3q=q[;4H}Ĕ{QL'F&iD5 N]O7ÛQ |vQuƃ xGb&色NŁ>oL.4%"E[@U(%ȀEٗZV VffS|0aiat%+lO@]v}~DT9LTN|7n5v|xw2Y_쮌%jdm S"9.+ ˺,\@m/D&Tb8o&8'n\%͡Vb[6vfFV!-mc|gn,M,H _(cOHYNKgQrE[4 w`_vM 0:xt(9Ó| 4Š?BtfOXl3ȋ\^l3CNSaXWuEXn= `$R!`?4;9JRQ;E}gnf˸]EJgǎ-{_yD[ OBu|D%gt쑎 y*`,Ұ*4L0:`F⌎QگVWŞ }{eA Кl/{Af "CtHݧ⽑}4z' , 0Do1W@WA'8VgԎQ p~ڻKoyp6XHz7cMpez ::֙m׍3fdW/4/ʹQh:vF4 oDJB*yh%xm=U2_T3ZX0wqz ȴ21X[_ʠ#7ïm* E= Ө9yvT۱*#vAN?/xuSi[J?{/AACWm<W}<TY2TلyHrw&Nnxlĝ{Iͳ+0I`>7_eb^F,3 sUm6g ?׾!n(F䞏0I[c[VӔ\sν8cԔ8!܆'}Mj(Rlebki'1s$4xG˯"^%p^*Ϟ69~tXU8Cw6tkޞ@Kl\:X7A*S[uet'y -[w?+t!A빯sDa@uǘknszAB$*I̐Fט!jH`X=W-X+8#a30"ȱ2)\Ec1㮘)⋂,8J<_'+xlG!Q?~'#O OS+'x -tE=,ѺOp΅WxEaCmV Iζ|StR{s8#_HPSЭg:Tɟr6^NfWDúH7 מ t pNog豫p%Ai𜰲H=Is4S[Ec8qv?Uwvi]+ _U昤j&{b752^UY񟕐:se瓘Ye.@[ukQ3EO!滈j2}uCyr`dLZz$0y="Sj\ICaVBXN#U4Nlh)]ww[J&AȯLkwZf1eeāׯ(PWWA[=uН;,:r[7ĈGboQ];WoYuf^;j,}''!Ӆ`>0/@W+c2)+uIxUt +ؕ]pFk YpdRǥ/#2=ars=oԙz$3pˋK(:K/ON}>m ѨPPD YLbXd{nrRy(Zo77>CYb~%0Eax#FΗ">ܓ/OM9Ȣn,s6m_W]٫͂C0q+Pϲ%Pf&Q8JMaHv2EQD gO:D1+wM1>1[imPC64 l$0{ GtRD.I[ޮ͌qĉ;ͮ}m>Z?X((,g+|TB)AN;8dwگ3$`0hvʞ>PO~D[Ћ`EW. }rӑ c+ bRi4Y E~AK o%zCZ@[JfxYɓ:C%m9+D);o=^;t/$zخWpSDOuqIUԲ) +4b#Mq:g@ P;Ԅ=.Y4qyV{VO}T!mCA(<''Κd E}:E<])1Gpڿ($n>aGD652(@ő(ql͙? ru 'O`;b`d .]w Su%򿡋lo¥x\pа#b5|f (C&y2h\'ʐ&e3{ Nqj{1-ãɰڗ= 4}n>1hXڻ(P8:fYSl>Cw깰 zA;jG3*:)p[Y *[8媒d[ dnec.[}lw@qR$\2ZShO%q^^m麴,S6g;M{Bj;`8ddr!w6r.̷,]EJxfuhFߜ)N[l~sӗA?#5Ɣ8ZVhXOǺB dq^)D?SJ@) qzJƦd,s"hR Ļ8~Zxz9+?St7vpXDzx\$=$TZpBN*&C@%+c:ܢKle~JF4pM 1v^-Rk |CW}J/bGz r:Q; 5%=>ъ  &rl#08:p?OC[pql- |Pyk={VAln\ƩFB tVI(3Ave ьBPsي @5gnA8~yHAjғ-~>"s .i pRF`Q4)Bw#ntF/Rp)?bȞ'*|886DLSR-PQZTz~w;VP^0Ms|s rj q'@"+gߵGӍz'Q̶1m~wNt{ό%6-WV&r{=['< ?ތPU>N!-#b] ɇj8CS t|?Kd_:HtHfڅtG v`&0P95. nSub@ZWQ-5S]MS+Q&;ϛ#kLI6l[z| NvI7!%2H6+7Ghd؈68@ ť:_sK_t7ۗ=hK-Lzf +8hbp\SHR7+G'[:O<_C҃hi~ԡbЙvMv:k{,bp2xl NRlNN,F=A6l"}q mҹڄhzZA{.bn5+&(^ 0Rcӵ[Wj4 RN6z 0`OwNωjQ㸩@ya%0%j,v AԷ&X{cܺ@t3W1* GniL(FXܦ}*C (1?uxgWC0'R6^C4lhLkǝI#@1 kwiv^FX7ЦDx_tKÂ$*{_Xi(yjeZ"?UĒh,d,smBm){  8вјt@yHKj2 L8D'yHZY3$f^> tyOlhf.2n&9\&]'b,춦"Iiz$uM$$'Cc_￯+_H`c^_+5+^oH }$;l]e58]`e*s7l'+gŕȌzۍ'BIm.\ NҶsf=f1Kw4-c2l` =z[vE6'1U1%Wy( ؖLV:Y\b G/Ј< ;!xl3/a0d? ԰gӁ@'#+)Q6rhLf%w^R3lAA<;Y\Ѝ`PIWd. >ߩ-'Kv[.h#`5C*( \|[aRs~I#U<ݴToqlAܽs׳<`fr$ aݩ>7ϗVGш{lGuNw7MӢ`RLN֧GE"GhnAn}/vyȵ#w#*+"+:rIVùcGƤrb\":~o$GU}t&-QfQ!q%1~\>ąV̐_U-ufe6sWÁQo:0vjfW[lw;ȕo8%l ͫur:"q,{n|*U7ZU8p/:CuLX;*ꫡr'<ұ]D"-;iKW((0^Z =Vlt;mˍwbY,H/^u?*Je&+iv0귅?|U=Qݸ]#*' p1s|KԔVy1GqV.X38Ң D?*T)B/NqezƋmW<$Lh_z1kCm["vxMЀW9cNKYoi//\y'x)S}0eLP0B.]͖/\d{k7杗",G/%\%p^[x2"D8VZTF:ǒ`{oU.ȉiUX-yNTfV-$2^sJ_2߆J3-oA"9`=$RZP`M.a5%ޭ`Z lpܡuo͍J:D*5%l lINU;Oqé TK ^!d/ѝ&\G -:'Y{*9v1Sgs Gᜱv|*J߮2Ι_B:0C]ffWUψ߅Fꧤнl2& 6Ye W*&}o7'Q:5c'  K:!j<&bC܁c :t@,u hr=ɓ#cn`/E lN`fLsTKB?&q_ 8{J#{(|XМJ ]8f5[IN4X=)P+} #_ H__ؐnGx+gX½#,%WR 0>nθSkW% G2V$]7zB֜bfϵ,&CAM] Y iAEYtnG>Nc r{NM+z&%Ae#,}B RAEr/-RDEu3gia vWȡarqdg WhzdOЪm_wR!S^ם+鮶x[nԞ Kɖj(`e]6yh|E=;X0k 3w_ WAZIpB!n~1:eI> vCXN0>Mrn'BuoKdT~r(ӌD/} ^pf>g&Š+&=Rlk4 !hW I)՝ЙB+ǜ4u Uo_SRf%W֨(vP9!5- G\, = pǪhe?6ᘌ8wqLE  F* q ;*D (c=>eNĥZF$:ZJ&>)bGqOXazȚNt8a!,@nЌ݆3߼c zAz!O6nsE"յǺXSn۳:–RdmR{`[Y e5YˡԧŸ鸟jy"/@iVqy4Gm^y;|z]-'.w_t걱ԓj\,4,l`'W4ZYR^a8ց-i-櫤UatE[%~v 37|Ws>H0 Q$JMӻu-4fe 6&ǯ&MC.`o V蛆P.%g}=~^ub^qll*2 M{d [=#g1YRbpGCcSRfP::ePXG0 BDٓR8zW2I{`pGF8GrmB'͢J$5vATJ"ZEU\ 2VF3n9hy#gLu'Tzϭ!&9AͰG %A9=,/@ED)05+ zNP'UB;F ń\ݾ!>6V.P7RMtYf7۲f Y7w͘@Pvo{vƆ rGoa^˄jQXE!t)"E &1BeÝj JBiD{^t?3!XpSO_<Z%HM'N; <ࠨXoO*o"q ⣌paf9 )/{kTe/3lTG2vԡe2Atj\̴ (pGEw M2@.f+@I \IpGLsP@"k1s+ ϝ'[v~sDGƒufдoiez.w pWXI;d }vC0)y$ȼ3B ~0I+^G! rT6ab$>uE2: 3MbOjTDqKJ/DnmnWm8k."fdϭbh}7&Uh@|N˯M%8Hzucr+ PrǗ.>R1 =l (\=,ҭP̕4b`ՆtYߵڝV 꽂(3CXaVv׭fgH Z+XbZJWD l(|; RU_'r\b]jQ]T.dҀ zCXpEsTɛb =:ݰݐFdbLmE +HcF9ڐ@O$ocu]1~hۖف*_ U)6*k}54:"XԩY>3\kV۹a\WZ&dJc ['NK]@W:ܨT,0˓=v`maC;Q/=>`ˍo V^y'촩H ?sK7ֱY<*DfKSGMk2{5lm C@*$l?-y[')GÙy w},bL; ߖYgժR,pP^"])a'yIRΞH [2!?FV#C1u3աR44QTZB;%Y5HO"cU[cen}#kODe{dzE@I $61U-yӈM. h(;xj0rZzxbj0A4~Pk;o{0};$1)FEA]UQkBB$<05%^OWl>hJ ƲMǍYY D 7>X: gވJ1Nwe:LIpς/L:@A&pjߺ=YȈr:٩s nIJ]7;z(J.(U\&{D!bFͳtEklw ;j`lV «~ʩ׬!r'>s;O,3Gg{&O~_YT(]|_<|WxNHrL-X-18h"9p$(UW? #D#&RoTtn`Atzf6"(pIϖ/ףũ \/䃣`X|n(*@:oSpojy:oJ^Cz4*'k2@FUp` U r`{ilw<G)g)}i%!˘[PFU0=sjH78>Cqߝag W"?Gc~^nfL,dv%`#WYLc] ugB!.Py<(dwwnT/1<^0.+"ϯqlJ"kZ( UjYPL6D\F+38~Gi2D:|.w'M} 3Jc #?њk%oAEe{`:>rgú[0 ~,.PU.2S*9A x \Srb˝բT"-aino> İd?t^ppÐhк`lwF.DDt&KTL[e=`!,{Dz+x4zE*͵6'g, p#j5cXo*jI  y]V: 3^z1DC ˧mLR1}z)xro{𬧚_gD5{ ];d yI>nh Ph'"5[4Fqh0(|/oA r_Gvkg˾Xc!hcwn`C}@\P6DW1w*'oz0H$'NTD h'' }"_G ̂^XHJ]Y7#|2 6 Jkf~ jʄaCޭaTE]Et#D}WwObj)T_o"x(JE%~Ԍ`-ueL;$p{( |.=EtQŧ _G>3ƢV,Iijc>XTbR-e|uT!OP~slp~"/]9|Pϲ5 ^w>fDxHB}/ߞ?0V'}n€ 5h}&N4I#E@$DmA>(*R4skH(E`y]§ %d^Shi֢t™7b쨛mq=4Q'0$.ƴ%xza^`>ŋ\Gtpp'P*d DCR&F{˝…?gy N7 g*ԣ>/ mRx a@vQ`YSv6u4Vĸ'vH aZ9Zވ){i.5eyS5hl,rJg_Y 㥼!E$N&(Ra^rxoG {Y1wpV QFˉ3Jyhf?E}MǍ@\uݶՐ i3ԄR֠awlgM۬a$Gعfi ӾP"C@S+[8[K ^N2Oz _Lsh"+`慭ǁ5ɜqd:dĤY&ȡAȲJ +O:< "i6ַ aGUVCL 凊"ͱ\$sLjg.JqI䫛G#gJejR̟T=A:2wS&Mu?.ʴIj*yz?b3dQncg /͈a#(;sm:$  ·lCr!)<׍ri\0hƌc6.~ 1BՆiāOᴮСX2@aEA)Kz);xLAp\i(]HC,Xl&P7. ~. ʛ O u[2jiGzϦK@dVHuDG9-m#a͊Э3r >-_#7I`۩2Xaє~A]bLxbyaAIYUԢ^J⢻ V+,,ҒkC*-mDէC'B= ^[e(ݩr@g0S|?qA)xy`Qk6$ɗ􊦌 PcI,~~t«l Xȋ b*DŽV % 1qk*'X +2@p2kя9<(hT_A&5ⓓB\]*U}u6yݑ gRwt,KU ad8B{q`ODwcpȃeN4A}ϭƺk"ZJI)Z(jhMn'gusV ~ef"X1&*Ğ%+X+aڂ9% 5NCȵ @=ۚ#DTrך+Z]Eem&a*7 84!7NAHgiBpSS:g&qHÝaxnD5Ϭ#bF0k Ν(Hܣ9ݺ}/4ŭR8BUwP)@)w@A52?d-9xWGlͷ>6H*bCʠZl?怭+a \QxrS<6[;)6~L=|/}Oa$-muz)ʝ!TWOڊ rs4g}3 n17-9%.LyaM Kd4!p wl)4}Q?K[PmOTZ@0amw0s:ÿ)_V֒&O1 (KvPѰsVPQ.EDxcYuL;x"'^ˉT:$>siB}^{[;'A`G@֘M+gGoN/^6{)[/9+9+x\N|LEkp;Ypu2?gMpOI*Ӆf^˙OIщۆS ՏnВ{g[eB>T51$pHR˝̘B< R6%`ݭ6Dۆg]ЈB[keP@Gy$08h2)SH]Yy1RDaC -bNQt}ťK#V&<~^urK htkf/D޴Tۇ}o8&Al?Πg PB'ڀ1*:lȟ*gG:Je S*y/mtŽZ)uU1mc Yo'Oa rV{v:'Y}3٬ Ji1ÛC;UoTxC,!cQBjRz8iޭr(н+zti=$q\ݤ?**GgJ!N^^qsQ%-~T]R{N3l"ѡgmyc)aTs !DsC4gtWըSLJFᶒ؋~w| 4'(r`Bގץ_iGhJ)8v{'C#ȝI{-RJ/2s;ȑ /OcI=nC`(\'.k0 X8){`WlE;`ͥǑY,N+5e! H3S-Ee.ƶky={"uo-n%$E_ƊS{b .[[ Dݬ @YΠeI#qiݴ ,'w*ƁVcdkrO佐SO;a֌pmcmջ_y B \rk. xӢv^{v>>F&J+zƝ`_ֳqwjВ[?ld옌aMƒfL c\rF#؜M_)~B$3v2~6m.P5Eqb@_b_B:̄z]h Fdd!LMc[Z0H|UJV3kpt},aG__i̍2˽/Пɗz ݋+@ qmy!fv^y=r*mOzJeJl 7º<92֫Cx]ɀK dxQbaq,q)IW%5M{ЋËu_z"iEUPLNyz1*,w2Z>cn@`m0SwP,2~iz8DqpaSj6QHoH˪Y1kJ\tk1>j [%γa qRUhf!_zsN57P!zzXcR @)7;W}4{";>3i/v}>>}Jv-0Yj`j-u5'2M<.K!X8r 9/;B. * f}oF >nΎ.y>4={a y taU:$_,&1R12ld;.6R'p^Ojܵűo\wPue4@pT<]mЛl3<7u=⟋Wr-veYgSU4H4V=2% h{CrM`Nl # ~g=N): X6ҷѴ:rMf:MmkwE.pu,].E$bI5BX@'mNJ E>="tbJK/{!`{#Kn"14w˅諺h;SsÀV̑i_r^ŸL!0$'sa xsg\u L%{-#츋!\:Ƚ~z s 2;zחmJMN T̑gR! 9lɫ"757B۵ԾGi U%èI|.8J;9=HV)gX_+=+tuh(wijlLulMq}~&H8l>+%04䏌iъjQ#>Hq#.82V/pd ^ iCIu.acĨ7ZB$ǿɃ0UZ4xS1>Hk0|l[t 3gi^'ίn\`eMy;?qte-V9`\S 9~mkӈhf.}vWK/r\0"Z&~d RQuHbiV-b7WO.u%FLV?PPiRq{,݃op]rxp&!B(, aB:iVq9eH`L׶橕jDHbN`7`8T =۬,}~FR]Ə?nUK٤Ժɱ$[-3?:}fk-G5ui^qHE1!dNL),vY%~Ʀu;-@E;lP°r K|Ȏ PEFO$qPd:ETXlNb8.hRMT f~4F&T7~?E۷ؙhj9@z.<{}(uk;3('l>1Y9YԖЂ_1hp+H1^/r>}Ct OrwukTyLFnʹ=mͲ&Xĩң 9?M1\Gk/M0F'32hψTa>ߵAۛ7؂ &S?&wn/W͎>2 CE ]uF'ntSy0WGƓít3!؁,֜~G:4C|kXӣfgUO`2u0!wBhb6܃TdCy}vf03eDAܭ:uPԮL~ >ȈϹ1YwJnfCA8wcWy4]Fsmbvg(+%CI4)+EMyCL;L_YJ$L!a@TTQgᄄB{#eU:dCvwNbQDg*@EH;I>nWms3/E_>nv9VC sR?_ .? ny>83O~əD/*7"a f|Z.PU@ա%!zKxã!vnڜM zpcAڈ9Y,7¸0rb^jb4oU&P%/`J=:͈ifh Ѥ=(gcyo]' ęjk(_%[5#YRN߰Cm35mَP=r%%XJ.-Qo :sNgj NIp,kI45 Xz\b-$rL>OX@ "l;P6ܖqr=#aG*XY~֛Ky:soG 3jⷅR.hcpt~$現5iVՕ={cQ[kQQ. /t2"XdJܧoϯ<S58 fu|ӁJARF^<8V"BkpF>u^y-9 yua^,?!-F|V-\ K}B)~CD[®, 9-/BKEjqCSv*!ܹ5&_X]MA M9{խ_XKe^oTurD#v!J4.g.{Œ&"0) (*-Ҷ,buxxMHO+w(Mw5ԽF^9_<'~nb||OnYu sR*\²ʄxrf}"\:9L]09^wv&J`'js {67(AJ%33#߄e&0NJ[9-r'Y~w#zA߳uuzjd"2} _P"<[P48/JzJߩMEGNG_g'}Li#a剮VRvTh4\b[)ɉȼlntƳY d(,KF G6HLC'1cصT&GnOLy~>Qҍo8Ҽ#%3 Q K(Q䀧tyhca~^~QE*ukW;c|Ѱl҆8$xvCOcKCsDw ղT keV{B~<()(_jrdjgK:\f/ZqpЊhFƶ׻SNKy17|mm|Pۦ*}u#t (R5^v%1KRn rrRk6hJT+4xGAΔ*YExG`+ߦEI o:]6oK^=K^JB5i9ia8 Di M2 ɓitŐد#&:eYQ/{HE^| S=N{?v*jD_0UO4jt9Yyт oL2ȂFo1nfa/1xʆ&Nv ^hw0TSJ7N=4YGrm4詏M Y@2u|ћ2r/v8L,~ۏ4Dpk5!Ĩꂩ]t_os֭9޸sEt5+OBBW;h Ge)|]<8qyIlbY8 1^>6G8)p-|+[$5w76n0Jw5[UrG\!Dr)vyU=vmN .}4yeZ?``y "Y'Ü uּуU(a)!SN@z]bA+XߘGCe4!q6MkxWq2,&cFZs_ܟ.!Q.1`n !:}2㥍MqNP+c문ݞOًmlݚVVĦVÓR:p͓? }jaU! #-iq<qzP@z蹼[¤] /=˽NE/#ANm 8BF-=ւO &+BXM :ew}n$L`TN8: {HeDVEjǩ r~ƂSPx5 Ga )sS'F L 8Bw]rXHmǼG0ZY!q}p^0["@!侶ȵwQ'o8jڜ4bњIc\*j+ "<ĴT꛳.T>S_YF,1M3vAoҳTmPQI8`؜ʖC/%{#Ux Kĕp?Zw K4GXb3) xzUcs]F,[}Eh( piM?w/ijRz@ 猨U>r4:y^В;`?N/f?{FI, nk ^a~82j !V `)?_]z҈*Oy`WQ|j$(HEٴ7ZA5FuR6g^@2<\iԙD!ʚNuGo0.٧?Kȍ=˫?RZ_zbBXU>&.W{kt]Qbh$Z@8-?[lhL]>P# )hg]!up#Nx*I::QW= *:͌$O=/i&VCJd@f*m=zmuQ2Pr|0ۢ`v*?%+o;qiTprQϱ@ ?jS TS}G an0"L3 x!Cw/q տ+΂btZM#DyfL nBڮ͜yv^ug',"‚z$*G~DMI?QX U`jg\FQHg3\eTs")(;i*Ljߚu[9.LIB4"O| .\+xMzLkO{">;71`^G./v-QD8~,HkP3۷a>]z}ȱkWA`gţC2!Vr AT'"$0&jW;lCTem\Pz'{Kv:n)#ڵ?^ K.?Ls0^dPF40'+H0*+tT d-|os5NŠ򽳗<roDo>{'Mu^J^j4/\n.E7 0}2 lb3/FNWʹZ`돴/E=IRj2gy{Iϋ'qV\wpFLXu)A>)>R4cĴVc1\tҶe޸5$ WW߭tJ=RJʳUXԻ!^YD|2eѬnEE(Ȥ=c$H99`]" 8] BkFJŀ\1:RZ Fx. 939zt|ze'{OA=2fp%c,fG p%3%؏0![#pfEfuD">OM!/g]$wJfiT/.&/_zO`-a-GLdNF>q I_ۿROJ"]T s=Ab8nӺ8'Rv0_6d[nV Bwmh+3 6=};oh|XC =\wHwr2C~,ȫs6U)J?;WqfCPaZl@c$^ճn 0.+ gf~.5}xv1Җlm"Y)L=m7'l#8-9n"CN%2 A͘ε4=>ɣeKWTgThs0c[ǖ,oѵ't!mK3Rrs_W$h%m 0J68F9M&a?tvʧM:*PaRE@&>!:nel#ѹ%1H B(vq-ۃo^@kr k4S .0LVMXO#-nLQ?FYDȕ(voJ w8z3ni:*?Mu.Owڮ $W^gqkqg 2w+_߸6/,^KN-(P5FmRd`{o L#IX!,SWES$ &@g%fͰ\+G-*fZ }Өd gZȻ}_c<nd !Mjy9@Y(:/*˺.E&.@81]MH 34|m=2MP}}r$=#طڂ#a% !雁h,Wߐ ȇ 5dҷq2܎>C _;@+[BHɸ^f廠4S<:_06|['Ugqxާ]wxe?90BXZFUza:cZהD=`ORC_r5O @DE^%K(b \9{ Q62 jucdŎi¼s%RW}&Cu,E$ N@tp=<@FPe*1uQ~>Čb!OqNk;F\#-\6lh~ێ7=&CCW t!TN"{SVXȟasD MW@HPI?Cج@B=Pe +M?Zp b@` WWKd~\0t2Qcg'.7V6M$P{Ju]w*慦yrDɅVQzL QV[ӱZ)RC^+,큏izI=Z.2.9`xao[Hw % ON#cc!1xg](84*HYI,Cokd2jG8Y!xjS:׹ ;X&öz@N~ Hv_u5g."n/Vh`=ӺGϊqP&*Ъ_`pٓM&jt_ZMY2jAzqf-i0ְ)GhX}_qGyCɷŖ@}<4Oe_ky)&pni|m5" &w'HQϴsqmٓWrmf`F{>@QZWkAJlG.rX/vK 85 9lKcxF^ ϊ 1!IPX}5}-LFIan TWxu}w i^3+AւDPx~4^wl,+'DVP"GS-$ezyϠb^_h؟S%y-+ (u0q׶BX+\O*ЧVy$`$OԒtKDeG x)%合,$'„1\;g}.է$\9 WA!ă|p@ d! B0-1΀HIj7Z*J"pz3T|ݶW01DԹ(Ԥ7pٳ~J¼|ބ| c1 Ü62%Qm IZPU2P4Sx$)d*! 5wJ&SrԵK;2IJ҃AR9'li*2hmtD~| y **~P-%N:he)sYcjK+yXz߸.[cž 7 نE`i2g'4>GJ˻y, D"V6nhvh'TL[$fz‹LFh  aaJMI{ |XW_8_>=̭~DTޓRHxo?.Kh*>:G!uv.?J`ŖdIp NCr`4V٨f֬j@\vn_M#QPΎjKS-VNCMGŻxao ^1W9MМ^Fw}day EpFfK}= A#;=@Gvt覐`DkMȓ({xGJ"d i?YLAx҉XZk<*ݢW7@9Qψ!a> > V#N:Wea ,IUB`;,.7F^"/ua2XC 4V+K0\*c'Dv4q,mNuQ[. ;]o8*B0 B2u· dZSJե5l߉4^)b#mcQC(03j)aaEMCeB\G7#wOj a=s:8AlгbH$;o8ͫf iߣr&}&FΩP #<%\N\3"GkSiK$߄8D y7t:I;΂Bg 0odz|vGDF"]=ztKnCMG(rXJD DChk bP1OIֲuZ+gbnr)Hfo'dv3ͬ*]+ZG-mrTr: 3ϛd ]]Äߚ°8 -ẔD{s{-Ōw #;:=//= |֊>W$5'2}BJJB+ |V3k,eIl/ Kl.%_x1s2#.?BE+AWXZ{hL#d|e)g~]6cBV5-o˩y4ُWŸ~E; ̷-:9=&ȐY'Neg IDQ}$HZ=yI~[Sb3&z}pg3f?EYǣ44S֖&l\ ]K@TO~"{_3J&WhSOB42T7uԧ v:T>y.+  xgoU`UB.Q( y:x--5;^~d`.+t=,T @TJΐVhzi41Y`o::/bU@B zevP6#Poqd?Dj5;hIl&w͹z/w9l"e#zvƢIj zìv+JŰ=[EocՆ Pwg ZK"z%H @xl) }b(ٌsPL-;pߕC0`>,j, /XHKN)s $#%<#*l@:zD>2&JxO\*eSY(e>HV'H EI%Y:A]5}v i12¼zHa+uAFxu!y ja}Z:>˱jap>O,sa&>D"G憎2{ʾZ!2x+&Uۂ@ԧ(Mu3%IFT#]9lå9\yH6 "dp.`!D@/sO+,+^ؑ“$17&>h$bv+5daW* ͩskK§72LG!zw>3%&( FM!y8yMQac #kw벾C7,h+QD|vͱQ&ۄ'-Rʄ 4`6BN#Xr&~d.<05?弤IJ)O$zEbV&x4= tbϞu[6[٥RUoa`n.'ݙO4z{:Òiz5??c; *yfO7}R4Y7bכiY֫`DrXOKuѮq )^YdP_+cEE g^K;d!~,KMҩTZ=c|-@9m+h;㣸O%yҐ@;"C5gp `*q~T}(2:]W /Lol,Сf H=0!1dG#?Sݖfq]>{ طiP2ķAi$`șNABAtAAiepޮ,٦;^hH^-=\9ĩ~'󒎵Y7 HG5g%EXcߔCU5%՟*ܪB޽x>e})}OX-`m&V-$~*PWIY"`B=qT6+ZlSj6/!箌|%{Q &}@JRY?HA!]_t,/v/Na9 镩ksuc3^X[ O|]!Z=oT}3*FoY9Y`r8C)# ib`# $|aU}0u|;`ha8?xX/NuI 8ߏ u_nW{J(vΝUV&5rw:ߴ"0Qq~x(,h"|M^.V5]G!`eGPey̔sw9iiGWezi:)9Qd\ q;ƻho>Dr zҎ~ ~L0-C926DL2ui %2}KeȞ`^=ګl#>\<@|6Ϛx\>"u_kL=su^.o]v|ɴ}#r +eX䔫qi{E֐~yG'LjE@EĒR$fhzsc\#ԠjhdL1㝡DL|l*ª}¹yAA#aRZ\]IXdvZA{v[%/*T*bZ7[6?Pn=6?wZh٦2E٬Eh")w2pz3M!/sUGLesiINYsFRBUnv3 uUsyTᤸ⑹3&7*@*K3KG1f/[ qt}ZhcݵZAWz=<A s}w|LRn*%9?M}RH}XSR BŃ 8MOSk-,?`TFf] aEPɘ(JߒuΌ&ǪCPGVUC/09!d  bӯBS0"3t6:L1]VC LN!K_M6_ j̶!(f84_ [@ /T"٨)y-\~-NAPZH9&c+K+6eCwΝ,AnYW%cNE\0 n P|Q`G6FfCvg`#)ݘìŝwHӔ>q~jQH|pƬ;t{dhHX& h3.YpIQyb1-wh|Z_&fl2s!! "A(u2=1`?7uLӍ'o؆p 4AJv.rBUt‡ m[N󅂉lFjD3;I LkV&t~o8"A=uh?1+ֻ'C)Rzv+FZ"FKS602OF 1߲{h..^:-imU?zP:('kg 71u=P'htnH|k KTEڿ37Ĝ58O ڔIdo?L~( %\XU""CA!bR< e@嬡_g ZG~ 7~عh``k)s'͏5aL*=R8ODR/2 4 ўc?n~b~qջpqpK9H9ֻ.maL:)FRksSeP'j @_pL}^h3&MU a9EVPiu|iu'[_iJDӵ"z1ٿƳ^+}0:՝Zْ3s?G[~ငxM}uRvΕ\j ۋTոz|&b>d 0xUoYd<@ˠFz;+ LT#|DsUZqFGn.g9"ye=͔ ՝zVh,Ŭ "L62s0T Z8" ?dciï=5T5]õFbP\fr2xx,!N3gUp"ye[N⩪J{A3L':=nڢ>R/U{롒Nb؃ޭq "[\>Yt-5f1Yso~ٴSЉB% PO=7.?rbf ZT+bsuDfIy7m 2 3pHS ;q|kNݢ0crF|ƃ]SUNqQFPXo6TU}#opjIj)z3Nbո=q>o2X!Ey26R?؁4E6F`K7R"+@*;;\/}ڎ U*W[ YYd,{*u(twѨ(>I"pG00x5֔"krfӅLWC[:[;7]HI&WgQwKyBr2 ^39KV慑 p")&%Jfn)gOI蒜8FZpuiCv3Yu3Wul%2e ( :4 h!H/#y5QwZ7J!,U%x]]%s0 # 8 `63/\JFA+݂dÈh~O\Ǿa'4F sq%"v[X" x3Yb[<5MxA~S!#!7h+e]ΰRNd7D]`Jm:ME?A'![N 1h8J&\¿9$ rx02'_l]sz3Oj3>_`.Şt(#|}EFTuKf]k7L[~ן{E9erw #e!6L?L؃D ;[ɺi6TuU˞PRzTrɪp)Ȟ*0SUY>a q'8hfR^shF-TVU9u{-z+O}^ fj ѓ"Lorr։7,sRq(=0HW8q&`tzCf1t7jAӰfG|$}oQg%NOV'y]]՟M4 `#yێQ_3?R͉uF!ޘ 6x |c&ʇU(ٍ@;u FlyU񚾐*O4{mN6`+^\VSՏ.TRώ ^R {BGH7B }(zI?aWv]iI|W4ލRbV~Vyqz>XFw0ʚœCPŒ={a\YMnOzVjɆ 2N2q~Fi"WcQĔ*kUxˣO+5D'cJGq. O}¹QyBWr򿖩Ï8r oʃ Űv@XA>;s-#aܱ:rq >ln,@~M Lx4MS=3~6:ЯHѶOt-lǕE!2ԙf&FޓO$ <&|JU1f؛7*%,T-/`,pjj<< I/BfHˌXH^0W5xU KDFNk^{{?&~2:KK⣝#EP wr\g  vBJlQKr./ ZP^Ͳ7~JŁc7^tSks\\ew+jʸ|6FG$nU'O<зǂV3-E|fGW{\I^7t?u!$5rS|-oGǩ^Je;:HgșP4ϣ2,9_60 i jwY c!%,iԈy!6ؽkGaz,ӕ3Q.3)ӱ'K2A^ӪPSTcݨ&~JPB6:qP7mL kM8P0wbE=̭f]Y>f!fnV15Z |5Aogujf{;]̦<qq^m:bäG=נAfVxLC)J;4tVzEbSIRNJH,iLEuJ]' 4uM#,X.}$JK *Y 8iP:TxUYz?dŁa\୫wk&MudGniPm&uwTuʁTjL=qRaud<}D"\dHiL[!<],׎J/J:4ÉBEGw,3\8rڬ|seIf({`9.y~ KqHY'A_ =FwcOvYۂϕe 1p.k긻`JtL*H{pxѢ2|vABT)b'vy1K`_/ٸv䋚9i?=^! 24i*XV%)Q|y[0 R 3qӮ0"'Ds:-D[wQD&#dyTù gꨶSd6e[G_IV8(.谜|" k9V P ZVHz%ޡfD#8 md7J@un 5 PJod>Fl~hN1h)*3O XfoXq,wVGE~AeBV01tWe+3kcEy2 I1E~ekVBߝ/AߎD}Fɰ_G~A5˭6saf4BV=b?A{pX v8KHSRIc()J.ghty3{J^Tg] ;#rڲxT|ֻ|`:CGOE*L#L3>'[F*\ cL[s7MHRX}h I5=D W,*„W݊[cbKRR TBË]:1nd8Vn:8ƂO1b=aa-]HXUpc.$LLUZ`y :|awͷIl)-D6]Ls5V߼ 7ۿ?{]@߂E0bkVu2fgݪgP|0\ 虆Jl0^A"u#TVS)];EoNk?JS{+7"<KcńSFjcn硑lĊcUqR{ Rh0^m#+Sq$LuoR0J0ֳpW#f޽4nA6j ifǒʲ;@ Z@W.J"]:.qb \ZƟ HQnSnPn1N{R_Y~rqim]^%ٶRH l,IVp3g>eD@ ܠ>-Ek $%( _Y\)|<h%VOMx/-Z>k~p|1ͽy㮈 W/!ؗ'bF)LWxq3&s \6/MZGn`dwO_U4nlmIH;JМHs)1\g?UnO% LG"]#}jZ"?΋$ Uw3M3F;:qn̾NuM evM-H%@|XEB=R[αOW&X?jl|X {S4%:6!'^ڈ*Q\DpU_r`fBuoޢqZz`TRo.- |'ZPnV+Er0v7x+!)iF&6"߄S7i{ĭj1rsݙ~n7nD7em1G>RPAkCt-i0bstT&iΛڇ7jGp&pjQ~X;/y|%7*[ z&V[.q E%+ B;~4dhtsnZHYX\=PJY4oKP . 2ۨsrXt߿]~0Bщ9g> juBnF%p{m, Q0zGl8'Ο @}ޓN89I(?+CQ&~-K5^3D3GgR@(iGy׾Ɣ`1+';((+Bv7`H:HXSܑW7Аq~O5Or+k=&]PI $ji:A.0;9?y\Rt_vHW)  ޝipF< Bs$ze7;-庝$jeF r->m7*8sudl PoZ:5oY͂3LSˎ7d(.W6my̪ZIJNϘ2S!l/'f `1,Φf;_=1[vA5 fy< Uh$=Zȃy?j0:pDݞ5f|B tijePNUas%P~ 9'G Lf=fMR;;xM)hU+I9KLSk6H)Ydp->;gF"+~DhRm$02!40 gd;󿅆L p x v>}2ӹ9 $C42}m(2!ߙd0K"@(T+4pX2'7-z Eݛz9G=O&^"xq oÍY 0pb[8?=ԫh/]uk`_na )vK?bc' 7t *` 8jhwN[^Jy)J)ki!~@aa7J>_*HkPXNj]C¡miBgAsNYPJ:fN'dݏiA6d3zKw\H'?0U&vb0W4#41QQ n b^ԇ\wHOPdݹ<;tO\au qs=fJ>vc%ybYQar4HjzԮX:䆿bU`se$* f8:ҪB\jq.V {?0g; s+}E&tӣfE>iBjrWƨ!:Boܑ.gԦlDb3f0y׍v=tnjXݼT|.1hYyruaOh`l`wѽ6"~h48|O4r5$ϪyP5\o7R#oN&OB)oLuFd%/}$4Hٖvwz/p!i Ȥႚ *٣R~c#Irx^H#f-/GxG̘yD] h"c? e@ i`!ik,r]H@']C~0"ˁnVӦ2tS=jFґs,W3yxu(P!rQbkmr{PcIs\%TuT#3u5sS_3}#5ƈY:qc0IwF%(;f!1țy?!n1 [pYs|b&r/ Q[HZIjP"(-QrGF¥@19=KZ oPlu`]P*N6Ң'['%?T/@ \A]~Xhf*?Ql*,zFn>`WҭCF{˞) AΫ\S3iAb[©(utώ؜Iv\ /hj[w]|A؃ AN̽=f ʉ>BTftw*8 sl ݰ]h0636Xi>62$d5QB+ VF):/B=3b* nG^ξ1rSf"fO3@]$ۻФ#2f?;/D Tw&7Yz(ȍ12/_^7*L忤hQ6la?1TjZ@ GaYg6!ӑ熥3͕sȫPahtC~kX{"b+kY Yi]"s ߬aE\Y`"yċ\n'P,W;N62';axܸ08 OazuC#}7@ە+Ƚ46i~gԡt7{Qo_;+[Q%u*%u/qy>WH : W Ѷ*R$F Bwؖѧ0TBo6]Q1(L*X"s:i *5?A/rq6chD G\Rz:tH+BdT57NQLfx!uoײA,wY&FsıDZKN&Ne2GĂbQַߙvN3 QXVHC7YwM}D8/ ޽+S54&!+LW(f. :>~/b/I>ʱw_a~rBHFE#ʧ@}8y -㳊߂ Mڗzi#|7.=u#oIBv$*x5u0ObnBﴋ >G)"HEm`chC%Ƀry5/,>Id96JW{hD)םY|C^?(RAnqn$C 8S{QOFJ$c<4t N^ZD 5~ yx(oCvKJoP-'kA>}-Ker|JMvykmps&i4R;nE/cƐ9Sj;SWr,5*ǖQiޜWfrJl9Sr(%0 _X]8"a)x=&Aah}E~iUAg%~?dP\`[l$Q],88n26kIi-sT{n |M̿}؄sI:@'WBxIG! xu<.ndd!ۗ>[uDQΒ"{ 9l42~ekl qsd7>^2ΰ.TCt3+eHj@P5"OS UoPM_n]=^؈o{ b|y? a`:M X+Nɸ*g;m,s#vPO`1HU_ 7$K.oE=, RNl'Z9sQ8x6 [)r o+ =Sr\4> Cj%ZyX"<zy ]BO`e`& >k"#D61af~9,w*@af}FՄ](iFjh9a$!(ĦfZWe1 v~$Ȓ}:)2@󤋧QgJ<9B4;&9BB3V4Aod%/U6g} v-BzvcbˊL^8IAуSFDC"qx XV΋j:_g){J|ҀE Skz87AkZ@JQImŐ [)GBcAІ''%,HƘ.bO/T{/y$B$)H:@1m8L.)W(e?>od9$:TJHo9煯M&ZTyV>ea$)XUQ~u hEtPp*9Z~x;EU{sH;Zx]d(5JlFOJ.xKzxFC]n8wI->:J5 yJ zNs*0*[`[%!$G$jє'tUF*ƃ;e*0Pu`"۔w%Sƃ>+qAہk,;U@uiNؚ{|m"DO7Og" 4qz$ELyp0o T[2Sڀ@Q y"|N?V~Ph&d2;Ofg#AVD$9ilYqDlM;&GtDI,`هz S;l:J0i\׆,`;HJ1eW hd'-Vs<|sƑuvs3[k /{ΨÿgJqA:\ }G;veev9)JtX#h!3q|B"5;Kkg&L*9$:@RXmOi$@^=d NmBS;Hɓ"<;Ϣ;#K(,6H^I <םA*#7O.v5/h/2Aw]S\5/6]7i߰G1%n7T[6#%Տ^04G05 ޑ}*{;}0Hjk]?&n3Rhknm髩=~ˈPwBƑ1J; ]˸E+;fTun^UFBcNMyqY=od~D0[ #.15aBBVH*hE|{[^H = UzY2Y0m8mi0+;Mc @oK+ 9{d{9upP4`{σ9ڦ bx&erz aj* zCt U/،e~v;9/"mEf Q2Aa=a09ώ5P@Ir厈6vnGs `jԋ1NIC"jyXVʑN :+F-XcY=89f FV~UlkeUN4 S8rlTIVB\szY_xs+Q19D%yA*YP~WL 4N}t@ȆA# %?gʴ+SΙ1Rv\@Dpr"ieW24RE;@e]HR`O?,a,ھoF#| t6>v{|џ[u΄=1+| KAy'>L"Q3cH ?]詅s~ѺR#2/Iõ1̳uS@)2Ew\|Jht 2!?&y&Sbae< i[tLj@MNsZ-x%EF@˞IwudT^ggԫ8I#ud 2mMpE7`DZQ#f>GE >L,l/w5%vޜ9vwqtD1%PЖ_Ŧd{ 2G~*ڼ֢ܽRfɂZ\ʯjT\,]'Õ)2GV煴}P /waP5[BlctTOrǧ/}(1bO7 >s?Ile^|]Lqj #Cp`zJ TS#cq?ѾUn BM34Ne#TRjR/1:R/1֍[7m !̤҆4{Z8rx!3i:k8RmҭŶunF[VF4<! ъ뻁COqjvznгR$1sTjP`Nxk\TMt8NLZGjʅE {7A=?U h ײ8x;AME[rG+@$*Y3w[5v 0:q}ڮHP)*ۀ)SsXܝ>j#E\u"plS f.Ib¡x[AYe-pyO-&pg hjئg0"6 ,b<nt&ԃDӻj+^{dsdԖ#05ha[W1'CZ8!WAfb.8sE|ۧS% )`z2"l35+Wfj sb7 1ܥg\MV^BDD=}9df0`r)T|@$8nDn-%8Ƨ= o9骇YRbL{4W<, Gm}4 q?]"\.%> _LvSIJ60uQF@(=iP2"Vcw-d٨xPE #d𕿁׮I9Ə{6$pW/#I_QG5*ߖt+6:iKmh5`#ԥgJ4iGn-|S͋+ʠx4\,a FY=3\[ ,]=ys@?z$J٩i&pӡY{ PomDf(Iva:X|3/h)dR<) OI$0%w:g2J.5Wn|Eiu \2ҬL1v9oXsM*H6Tr,=mU{EpHO㔙$KXZ@K xtMxkSHx3nN_n8ߞ-q߆۰^4PΠl 6iOA>ɶO$'[ߕ~Cf"q%i[/G[3FGojP(.R?ƅ6o"?˖:eˌ'߬×rN/CGْl*6 KaTQ͠Z즏Ȓ׳L-ső 6pCAMՀܿAK_/Q\lixS2~PPT}-; l!BGəUcym ɮ\/ta~D~uIJ_ݔv9n[a.:f۸npuUۓ*%8SS˪DRgjv7CtG"ROxv%sg;,bE`Fz:=EIBcj^E'o,f'-Нjv X}O Q^c8tT Pi:q+Us,"E$vK9'8=C3ySTF}#2J9CBJ +h2$Um]>;FNmQa%C|jke;xNilwT zo2 ȃ Y ?PGR#? $x/V\eB~?2cYަys>(+/Odw?O>k.u*E\-C$.g!٫éB" \PzAз?( b8k 'Wq4! 'Ps+-pq=-w(t^)6.6h{ ,Lz 5E܋xVzdܝl=;cͷwuS1f|ojԊ`[j+wfA.%,8v-Ԥx cDR/O8Դ ݧQ&XH s׀FGQl?^?CGUav kQ IfضeG.^ޣd oq(D Y Be06(1>JQ۫Oȏn̬h[$vƟP-̅MWjBNºy돹 +f qL>p5ʴ6Ms&pF ?V=A)kSwQ&2X d@'DjG7uDUhcgbVTKc`22. +Qyp 5\3܎sgFZ~_(oq ԉGa0\A&p?#򜻗~4]Mt#NJ#FޠFL34h_f[』Ԭ4C78g:l8ǑS{8z5q TۋUhrƏA1m"f;nwђ0{MH:9Y¼IYGl u>4[̔׃N)}1Kۑc>NI3v["pvGu WeڻqL7= lRޚ/SwS˒maqT:$=kk!5N٭jf!99XGk1,|3ᨍMk|Pocdrpe|˟p=)5'0c*cpzi-{8Ќ̑Tg^3VHST5UJ v0$W>> CgˡR+هB6:_ +c>At)L4:K"[ _ V;?3v q(cX2km>Y9681~'HAPS&/־2 riU cgK-\ԏRq1 7xyxSlzs]oۘZ"1T3x;]ë-.`4pg ]4ڤo(!Oܹ` asMĐra.p 9AWzv V^X("3"WҜ5d٠eiuzIsLk%W; a=WUR;¦@!\dG(#i:r$GVxuy= ^ńFb?0 e֯{e-%F1!)pE|W _nw OKA?9e)އ#LZ֐{O'oHgܼx>l&7KdCID"i^Ǩa|3F* =A ~pe+53Hp!h–QB.SI+tn.8Ltdzu]h={ՊQO姺>iu8W5A&9-r~>]: gV3lX>#j-vm |6C(Sr HnV6Sw<U9GnN85iNP {Q ح6~Jl* Kjw. ->C^g{`@%1%ܥTL$ڝњκszE|V4Úmzw&n8A&frj4ou>PMy6?.4=wRPgo= Hۜ$F/&DObUEj@CNENT҉*G5UDfOy봇7AKh v'!&7sڐaCɧ&4 |:G;5@ 0#5ma6>⎼dƝ܏\'g} O>i_v״9k?|F?D6969>8'ŝ,N:6~ŘKxfb771@>>X`HO> ϥ3;_R>676W^]*W+Q\55A,-~%F3z Kf ,%Zdp"qMM&ؚ< $^`אSޠӐ΢LZݗL֬l{$tE|s9f+ܓߋSL9$Jj欯s)O0~Iu?VR`Xlw戅3H & STV}u/?c~ Jp+SO!D*M=j4p>AjI4JWQ%k}xUzz'̕3Cdb?GAG%u$_B d.>`rj@DU+RTT~TNV&F=eu|yoS {ZFܑ/l[.1P | !55|j}/Pjg;Ac yqj5h+ Gzp% c895B.yQ:q2ye{}av*۱VT* |ڲ0j"+uZ*m]M"S~/ظENr~O9< )@ө=ܮ@Oo=S7#'8X疈i@T}wMg< ]Tntj 1Ud-Ŭ?v RIUi~d jV] 7O1Ȑt9sB[Z0Kqc]OsD-L6jlNԜ|O] צ6)J!d`1@#@p.L5 h_Zi^jH:~֑F`!lod/ZLarr'~w;pkhSWŊAcYWHogmv]pR>`lߛ4}>Uς\yA¾WX\q0[>r㧠u~;7P69e:6څES*AL*|˓Eܷ[Lu>a8&rNLՇPX$/$u%jk _1; |~]e=c?lkUti9ͣ#'ѷgUcuc-I>dI Hny%bȌ((*m鄭R=ҮS:;?'`L p o|}`xXolqp;G {e&8.;m*<,hũ=/؊\ uo$ !b\(D!V=ZQo5tTg-wQwkD!$pQ_[9ٲ%/ ,&o\%7D=B7ڛ9@ tk@l̉?]K'ÍȔg$npμuPq ;/Iנw=ƮYTeBL淐"% &\rY@\'Z@9 d)L/M WCQD|gy!Gen )ufLfO~,H$P=EoHG5(,='@+ЋSV@_|;L{YWƽV} n=͟P֌A_Mo~Yh}0E^9T$>%(쟧%#Y2 T!J?6=w>sF}-'Fdqe4Uc&5I?=(Ѥ6gNfC=o"֠ԍTU X :ւ퓙VA 6WTfaOSPF=q9x<8u&AI\6IW5ɽ5Ux%)Wja !Z" pF:toX蕾n#bbxkaIlX|~P}!ZoL)',~2z٘(ͱUWM4!8?=ʣ, ]8@ܾ_LE<sKȔ_喴%5An9c] G}&;q~eqAĚq>THM[\Q8bg2_ZPh4+sȬ ķQ2+v GJN$Mi4l;-UV ZNo^ G[|7vg:ނ򻨹:zL`TkaWg€mP :[$k:' vAp~s!(`)J U|՚JDBlo2%qB[{s7+ Nڄz*F*g q'YzB-KM`uUºHXōbރj?g99b9vd5mzrWw?TA2/VbO~`7 rSnvk3ҿ?2nȐXqkeSvBt;-ϳ2 5|zdҗEg=Oh#ħY[ij*)LH@Ka%K{ݚ~*nlnϦddɴ}zSeXHnSQ/rd&f#o>lm%Ik_S9E>H#gK+$eI+'MDS%}\)MK\per>uhdi CR3Щ:LBCJ$YύRw.L+5Tr)Ly4IfM@R0]>}0>#{vE'*ʱOF <ϧHpvDN@rwD}%bc (s߹+j$7ZMM:&STW(3؄l88=O#RIh)^=2l31ʺ,_!aTlB\g4PL whk쵠PF^r)-fU5bca)9ejJDGZ^,1[Hn%=%C   VtmVElƇRNS|b .OKBc&(/{hhJHVh!+UyϨ7b÷cQѮaͯ,~R+ZȽ)Zjv朔/f9ڗB~3Z糧'lsSƃ׾N]()h c &js"b(_(oO-dII>%*ǷBIi'< Ny43ֽáqOIٛS I 2*,BG)d~o z?w!Wuz,x_Ը_ }[KM+1VLƮd:EJD)hvlypTo6(A,BRKV3:')'uv\ۃ먈\TgIho/*8qON $M}ͨƵ0:y48x. ϯ!i6,y}͹0XOsr$).id*2 eQOM>}XǾ]5=ib(&4y{H31,+0?O>(R"Rm)`^0!:4?~xS(sKK_&Ǭ4-w=ѥ݌E}} 2R&ve/M;G"k+,s! 7Y>joUWKG1U8UaIۅXȥxvd鑓c$cвl!_-pYT?^K8BPp$;nNmMbb?T(q\ gҭ02m!`J*m1XYv/OϾ'VT՛0Fcv tmi^ĕ.[[)^Ri_BxRh"wk nȯԟQxi4QgAX=yr䋒ܞ)pa"!bQ,YͰfx7&Lf)czb-d4* Kvˈrဍ;c /XFߜFkI'~O`9=4"c޸2Fn9Ng:+Rat'b^3>7"<]sOPfiqL!_t9Fu5 opAI֪?U uvWAH9:n"ϡ4"QDG_?aW\FW-r!W^ d+srpȄ k(P7^hQĎ͌-IPHWAi0DF"M?A@NJS0 ԛTz޽t|tHړя!] ^ĐGP;‰=[g@Mşi94cNd:;F+B&nxgO6uE; Sea`:"LEm?k:`abY)t\ OgNI/H@a/ I; }to**w~,5I3%1&^uBE&zB H3άۨˤ!7#\s];.qb*Z=YzZ >Y!Q~2b5,7,q"<'$CfH:$\c;W',{òiBk}ޕ;§ 8.5~[ cwX3Eĭz^AY瓇p# l(}GDIwv22:P&_{%ʢ1ޔ Bz}f|/!% #M99dLa ÍiJk"(3ޢi:Nsv ^ 7_P-NzK:J1VtpW|Xb [Z [ ')''co}W8\1$S^Wuy:(o,CfYzL2|iA]ԅ!&v<(.B?ʄek&AydYw=w͢U$I!8X2?l.qf&kSFς̔0)r$bzQ\%vu\\I3oMO(c&nd%J˘V^X -#ON$ONfO&|L8ѸĽu̔/'n; ?4 Z!,k#iǏ򵟇Ac gVVsd>ȣu#UG!tcRfp_nReS% 9wbr $`s|M\‹Y2H(~ﴍE1yQk0+*>G$q(}̀KP:rAE79kug<\OxTɀ|l&V:}{-TԉIpULH7 {^`\N\!SA{*=x$R{; j?rOX0Z{8[;X'|Y|u7э8j6g;0y`R9sjc-iР :Xp4psɕ$hXBߝp/nCخB?s?= nJ$~y{ڝrUlK <ܥ?US13*VQq*d/q/ҤQ6ǚ1y䩎Q6UV@2NIB9c]>7b촖אƱO/7 \pp0bp'v_Ng@ ӝ!iL:ܨfmFṋ!$KC?Ohc5%VFcrd/ux>hK߂0\#ܩҟHG`?V "&;">jR9T2qֵ/knmt ƕE\3ƹJݳ^J' Gkj[owT2ff)\q&Oj?L oX7N FnX=2+Pxpz*oK]X(,;/VƄjaLŚ- =BY4%,H=O:Zֺ۝^dL N/u&=d_ۈҬ(-&RRŎRB)^q?}MH#kD:]wȢ杇[,Z˩ͱ 9\_]V;: fsx^siУy'gӯ5i!aaY.+&5#w" Ο.3ךl̮?lr&`y?mWM&IfZdaܐUqI/Umh&YXȜ%w=v]y kA$wxÒu֪{&:q[ F)ʱhԪ<(;4]InG'G1ܼ<O_(q֫-}U51$[Y&V`GJJG.[w J*,;݋ɀ i{7Y!>--O~Hui>ʼnqGa.p wHwܞLWu cRU£Xr +}ezH*Id8kXa$D%EPDX7*p$"m<I㜥Fdf/kR`ʨYu >;.B<Ƈe>~<9^8Hbh a /aC @ o}ȠDW+OE^|1.\+$TYp0\^J/uC+4,hr} Zbj) |%tp|{+t~ #/AHGc2\ Q<7rdt\sHXK/nP&8U~*lN >BGnEEEoW#2"(l![2t#gM݂ `ƘFL@1 쥍G )|d;i0Үf7ɣc!hm }$\ /,>ʽ$JnйiIv n+)j0k99+¾lHol֙~@WDd37Ѳ1Uq_,WƵsЅ)f]) AEJ@ltП֧HU3;Q(%.esPE/ PYǪC`55 =C(: 1!y XNk<Ъ /d/0wGZ;W׶0 I(ҏp-cEQYdmޔz4sIz/rQA#y׭B'P&ctMXb8hI鄅 _qA# ӿOu(t(4@)]ou ۯśĪYe\cPgr~\Oxa8`ALOǣCw54^RLźuiV``ף)wB~j)l^0;\˧r?'{')H*K?#l$v6CBf;0D:x~!,AMÞmvx6=|mun C {%/ȏ7>10-z~ <! UUf6m &>= + *k]1 u-CQHx,8@[tD3mU֦J$: -U_D9#nGE:_u7P7?E}w:zf5b rFqefΩ`0j=L[֒ad~вS+mM춵A}h[ #B)cyM3iQiC07% .sWuB5ȯJtUVAMx  Ze,ԛ;5VyUBzDڜBa!1y6H'gcBlQh .d5[b%1OZ4?Cj%T5Qe,Y `B RUM[!q.%CqZU90C/'dvw1T3:2҉ $aU"ߦn3j^k. #"{tjv_):zT".2}y~H# 9щ5(lT'wxV1W8u )6zAi(ݛÎڨőK4,ʺ2n 솲7"*Ɲh.un"{"|5{!IOeEO4QA5ioq)UA^eM_.E!!ѹS ?݇zy;ộh>yI.kS+)?뗸j0i/椚MP `T[<Ot4ĂfwdǾ,>J nEEp<'_  75;GݑW}7oȀlQ]./05(vyZ7Ol>8Ҟ@%1_R)u\ʄR+ M/?; 9.5JQ; ?<0R9J% Θ  i5<[>.V?AWY:f$)*Gޭ8pF–|p(I1{c!N4NRDx-e;>1%_z[JVITP<$[/>+ʳ`K퉈*ݩWUMUT~E*+/2l[:HY(S4jU[ '!޲5(NArXPrStQ&y\:1Xh G߿\"Kq% -0!`{AC_ wtC\k-87"/@Q{N/<`■qEHhsQ}{)Q9B<@ӚYi_޿h:#kpe1`'8m*b0F @50 rUB dѭT,9\:mf\|7Fmo*_&i|;\Pj| ~_>k3nJ~ҋ+*t{è5b% y N!r=Z^N9SbyQy`-R:nߨsbyƢL[/$yjZJr%ͦlfO+u 9Bkr߃)[zPsT`&ʾ@'2dI=GJma!uׅ`)-4o<%&I[\ H-&| @\*``ydH]TIܯ=\@|0? :SMS픋0|8^nyV XLV[]j|BM|uM^krnr#! r??FO")I8cQl!ƹYX2POw80z'di" X ۿǢCP_ӫf`6<)**gɝOXtos `^,DZ4oM1"1ѩ]mfO|Au|ù0;~6"EJ̽%̳@;LlC RK3 Ur4Y ,7uG HIom(\f6Z8|؅:a6dgݫ%ӀvGh)U _)P֐ B@0QD? AGCنߏyߺⱁ\Ciu{ aP%o ϣ8,ːarh ܷyaHh/JЬD=a9@\ +:m2F d"$yMZ? sԙhRR+oK-hZf^[޵XFS>_SQ_B75޶x\'<Զk'E?VIZ[fq.j5]z2Y.E'3<"|"^ieB}~`e/BF$EJ5kXJ~Vy!WƆqc^S2ڙҿl~}D\ZpXT3@/ ٛ;x f,D 9 hy$>-)uR$5c$UZM!;qq~+*3n&m-Zc"%W;c)}0s9IV!F0#'swK]D(i"/~Q,:6ޒ_ 4afE J5M\X=d+Ln'!0 Di8;%{>a߽1h^ȾtaXY &6n٩CJZC;#&Hn?2IaKgA% v햄D& S' bl4>sQg8O 4!L}[l-R~ZyU7G=s j0%dYP- {ZFʙ>8A>;*bӟHUe0>5a~׽m4{x7X EPgBȈ@K#LvYȓn!Q"P!Ed>s9C*ٮ^41]Lu#Hx|A aiw#Ƙ T.eb~8`b獆i8J螡}TlA rJ0=J|b]]D(P](!?=?KD+gSOKu,SMEu kfot.&VEf?}bsܙꜚPPgxg?/_++ܴAQZV$)@ukex z/ &@$['il+A4簛2s #BS}48 k?dW|sx]-+,䵞qb[OCLLkv^L9tcF!8No9 E*q zV-p lzk3׏Af!Fy+ "{? p,iOWG6@P)岶*T:BZM DogDg]}gKZ8NQ=FD- ?]tim+^k_23hFVE-ZrK˿&*K0 I@Qy/QCr6+:"J&vLq1ֆ5,'@ p>b{M`ؓC)M]5"'S׭ƃC媆Pymq|rSql:'b wYLJ1Yx\+b0בVܖs'ȭ>Hx ,[;/#M]`9ΫB1W\,/2 (UWJIff9 kՄ?Nj99ր#H X" ktGv$&(p@M?1Jha2 ѕķ~րE$Ƣ2POEL+<'U#8^MOnX)Y!0({3jUV,wEW'o"4'tRv]?M/(_P J&>NҔC/3pH%OG񣛌C wusd`T=U `f) bXƠSnoFgHU?,6&gr7hJ ~H!ikJs ηPg55x b֋`.YK+Dx{w.CD682n/L_{l%@zWky|;9ME!څ/et]l<n&],uup/%sVa˙rw[HĖa`O?b哊yf)QPdYj$)B4׈ڱ t(!Hw$ th/Y遅{I.Xl@ ^zy"^ѤDT3umY=/++npdDpd b݉ >+DPYm+Pn&ThR?tC& S1A]!MקJMa//|Jx|I6ƔuVgzMCUR]P4$!c=e.Qw!+y6U`sE]W:4kﱒw}Q:?i KT$bsL,dn8Q|=?+Fgр)YTR=a+ew-ū S 'L)GB8ˉ=˕/|z`yگ3PCD ^`addˉ7V堇,' tN bmiX7\A 0 ~VxCh #mFh yjKm^ ^T1.}Xw}WP*œ%%Z 3>(ad\#W[woBw$iS}a'b83LvqC{1l,a}7?@\Tw91Ԕ#CĝRoۣH}eo@PNT{|d:UH̴H%I yڴ^550Uhl)fRwm~Uе jvl/Kuٵ&hx( 0<ACz#+`q)*uSTpj{ӍJXFw@6xqgsϫ.)t0'L>Adh^:Oɳ Oiicc~8KEfx$ͩ/z)&⒚ZFx8.96@C$UUGH'N a`Q#ɷ+6J,a"r=~ ׇUR{ov..xPqIC >uFxpncpfk_"%PL4kIE<BeROH8 ZA=sQߤ ;/yW8XT$ ]+`p!%|ґ#l4Yp T=8<]@n@c9%쪍J²$z>cH]gUEn05']hMjS㕓b{UNm0 :\eg4r{[ v$ؕ -9tqte!t/_w㥌>Z?mh.0nSouf$H m8_pE_ӦnNVs6Q$T9ZJs:EuبAf)`n\b3̌F亣7% 7?W2U@" i=\~We)% _evƥG Mw3݄7a(zuuj|"!FL8.~ \gծYu h#|f\>>J^2%w9Iq6^Ĩ$5z  i!`(81. gzg<3FB0irk5}XŞn|t? )-_0ZKPqS̢(:\]Wv\W"?҅SNrhBQQ(ŪNKu k#>gv}(P^'cI}Y%:n@L},(G4 ( 랡A}r1#6ٜ|j U5V6H-7~~H"lI6.W4̲0ʂ<M+B-#|͖NBDw@>('$DI8W53˒fOnVHa_{…SHK.+*P:s?t&b$+Yf/b#mDp1Lek ~4:vycIQd/ w XFT {W {XHOƪzf mxWdY92]6%z pwnHyN= =Ff#AQ Dtl%?E0MCQ ʲ*c~u^I:k@ 912zG>8lM]2Kb}8?fc9¬esu;U_PnZ5"Q|X4!Ť ykOՂܰڀ|Vgө!/ILH@XIm0+m=Ǝi_Yhkeu.qӡvYW#-uwtXUP|Gt@b3֯OG>=f#5h+ 《gy^$H7qS6 Čn Ɩ YO;ad_t"|9+&o!ts˘*E]߉=ÛTxJ m^܊GHr^~GA'4-A>]8L!WU4NDcAR2)2C8}Ƃi|Z2*Z=k9an]ڣ :,h|d7:b679Q vT|塈K؄ǵOLf>w'xo;japYM`{U$싃j g/|)u/;p!zR@?j:V$E{#^G -.i0#fuFEZJ} &:h.usY],`%;Z593podXFUtXk}Un҃2F|i0hu+dHcJߓ754IvQ1פ}c3%fo / Y̞W2/3æ5:)0.4 4 k8skk&etdCkmT7E*5 R'lrfrc׻}ؑ" k? (X7m14 5{gPTr,3q_@sM[{{kJGr "+A-1ꉯ-?`Jpݦ՟!K~01qؼ^2Ukgb3[R[͞s/vXW3x*Ҟuj)]^ʼ8aPƐjAR#\LhTʚ(4GN("]7owDzüu XڹʓZ+kLu HBXrDuC!SM9=UWF @|…s"^`4,Kò5vLe_>c|ܪF,9u<5DGܝS4Ap!YSŇVyFB'^:iBSׯs#bEӿ;fYUsJ˧/ŝ..Ge2i۞@k3ғ~c=I>Gcv+EBieP:zwut2?u:@>ͻ?Pu9=Q8e9rO[jtx\;~Xw!̴T3&,a{h>GAV"'ZW]0tgz?cowTnP&۴&aܧ2y>db}t7 9_tP s?#jn&o1b !&Eg+_"bO=)p娄$E4ڋa2f=8Ӛ­`JZZ>U%cSQRxǫKK^7[DEVKI}S[~ )qBlN=^0ˢ,0.s:"1u!CI54]{7ʟ(Er?ynGX?+޾3^[w~Z@Ӥi )0'l}%$GuhZ+{gu 4Gg4Y;>^;RTnզK3'ZG4Y텠 )6;Jy~/| ZX<= qC.ӛhNf5*sUيYE3Oc!: 4Ldj-ZX|H6h)Z~|t9t2v 2 ]-!>f0j 'Ȥb!" #̪}RV0FS=}/NqI+HpҐBǡVR.,GcLTQXRt9 (5*ζcZ5C::5[ܟyؘLUe-LeĿ UmoTaW%䍃JnzrvX}!>-^S6ow%埂.EC%0iZarj }-L勩& /[v\hI肫iA;*L ܞlEvK4,%뛳ŤͩiGDqD"TyP PL/Nf2kfjUj|Ucn`j7x\Hc!ʢg`{*o"bҦO/e-= im13ZKS1P\_][r-WK۫ 1ootMPvch3$kx(=G.۷]pu%)8Q^&sV޸?j7X^;Ǎ@j- zhSʲG\HƞWO` 2v*(>q)XnQ.#H>+]JqpI1]-]ˉf6dsAԞONx ) SТAw2JUx.GA~gȯ*dQ0"OG%\MMM Ϣ 7=##er߃D aXwT=x3e4:-ͤɞ5ap,Q! z3H{j툨qZv@UMZy<.Oou2j.I&%ą9V$L8ϔ.5dv}cmYك*a%Lfz%QH4٨ iGj1Fz0,oK5fp"(6'{5ӄr~^s+\!|\ Fy#@o#ޗB\D^v^;Eζ~'P~$OP WP E >]B;3O5['߅4֊V"@wq-톻V|+@+ qp=/f#Qvj0O  ylFe&=C5(!g.=xt1ֈ"e 'x-M`b7%eVUok$q[,j5oA[sp:o tWSa*f˨axꟸ("_fU+&^6gܭJϺ3]^*"ir2}8 tAj %*<;}pn}01lCȴ2#pBb~98%%0/̙zn .|'j^.r`l?<|v  !Aoc>}(3|?$ui:hWrI>d վ/[[' D?Ùbkn~o뾌Dn ?UJ:%0ҿ ob>{xOãZlU3./ L=&E6HtC=BN9DԎ/M o$%TA8a&x6EAX4 Mr(& ܹwR"#8{ދvêUqFT5VԲZ88F]ȠBкz&|IZLw0-Rpρ ~ԎGA{-y8m}aOxA~CDHѓ6;#s&|{V' v~ ̌Jy`Y0y^qWo _ٞO)J(RjY`gMoEZ]1ּI5ah>&g`Uhv{5J%W1r;zK@KQfߒ낽`@9ϊfKJg@<JN >!Ho4#)"i+e/C̫piy GĘZY 4:?4 _ 28I"rV*^t- uCESphT(S(ƅ$Cd  u&&)Ē4 %:q|7KE8VS $(GMҙ(ExJ@ZEC$/H4NgMsUԯɄ4O[D@Μ[ 1_1IW"^u="s0Gh0.yw.%zr1hRD*hFёɐAuɖlZ47XuU(*z: (ŨcUg)7tL䆹]pTq[thToGp@f@ Oq] W☆E0yD_½_R莒11erܹ~v;""TUtE6v+] X-jT%wad,7U|,?hFJpC-PRیĿ*T1fBۃ9hI2p!ϷA6"r+;o֟3{~An@;ʯ%-K@`rzt.k@"W/3jQT0NP̷fUaQv+Yvi_pBfHCz{]]5q LC`x];wqzSʙ}rf_<NTTZ,C vGx K38OQ}maEAFCq uߦK~6G ;A*|^vZVMZAJ y68R.Z)+A%:lxc[IE28*_2V ʹa^h=-:_jI}& Kq#x ǨD(!+XO|}B^S"C2'`0| fEN.nfc?0L 8raS\B:E\B_a~Țe%KoSaۘ5,mTO7ɕò#HNVUZ84EÀ>h@+gJ"ԩ_0D.Y2v/k ]/ơ|Bxu8sy5PI G3Bȓ}S÷-ozMg{ FXc_#:D$}W`xv.7י9OAvn>/۴pMYh?2fQuno?%Vg}}G.E>UP].7hŸLPWDE4|M,nZul|KaS҉SxYgrQ`%zc)+~܈Xz8\՟zON 4Fd5jPͲY٥xnT`B7z`4jB?uO&WK7ӫ.i=M]V@8Xtp23?ɝy; ?|ga,,la5ƪdt,bsG1 UEK7f.\N=nnqXI1$ICj^Kc <'6^_80?R'"1)R\p@Tg+Wo?,v)|`1*'G,Y $s塚@)%Y:4w<6ދ\g ,g+3+׀ vх,v>nK&%= 1⌆x?y }/h27yaW*}baOVyeowy`Z"T_GC#k%)NϠgUÐ݂\2p(SoQ ,8X] J]MIw>EtR*ҟuG(ҩtG>JZ Foo24/-{SMV \-Uz=%!0@Qx^4c'V/ӿ5+N2O]=S˫rf>iH&z3Qs%B.gs.U#ӏ=GWc uoW!1W"jms(R0әt(RtuӪM:V1_lu41@|R.U9j^2EYCVdN屃7yƹzdw|K%_$ A:L1YQޙ t: i/oj:ϛWxr/~yXȚ'D}?M_QcE뵾\Kf-эFrbG\Ts|;06][ Ugv4[)x2f׎i*㙆C\$%XL?}f;}d Yw Mgjq.֦1EUk G"&T5Q=GEBRNm R{!y\]y=\]F.miY#jW" y\)da$ړQS\0 $n/P46[ք:N!KnCa>&Kq|`t^b!"mUa1w ꘷VU-nb;؃߬f ǨmILn\h<"rꗭT{j1?5OAUhD,]Aա9ήMꚌN8WXHV%u}DAEj|%޼-NCBArT X2ʥ "K05˃N/~7rlIؓd?PߘJhU;:b`a-[2fE_;Z<6Z Đ}#}GrrhGt" ;e3 |ct?m;Cz#xߵ ZXy CI^&s#oE&;iiLWFKφ$k>^21^u|[2{֏mf Z$O˥mMwv,28eҡ?6@&a"4Q؇1WDcir1ll`pq6'SH{.([ YhΠyPs&Rò[*Ga+X8fod=tf`Q. &`@ynMÖ8ICO3=S_<ۖ .Rv1oIt[^=[UvgrGn˼qiwp`U^`>' f_V0(M\`S%l2Ç@^yJjEkβ#wgdJcay'n-x,̞Z@?@FgR;7[嚋nW*׮\x"$N[)| '8Fcd#Wv6:@/$,%" { I)Xd߾S7+>gՓ,[?-pI[u]>qyhtHg9C%>z"!u+e[/Ɠ&-%}Va6eȟ{#8vWbIdr.(S4费c^lCix+DIVK]pTje\`NJuxNh0k:VU9w1mvzlɳՎJbM[q[haGw/&(%z46e*E5ęw4KtqoOGv֑zI:ndkcMQ6 {N $<e.l<:zC_YBVܑk_7FwѪү% ՚}\] fRw-HMGEݧ^a1 گV~2?eN/"Eؼ7??)Kj[\tBѐBKxX;Zm D2sw5*^ŷl9bui/.O%kŽjS$ߋ <;O=j TF?Q1 wHC+sLmA>P:(E;t-{O%G`}K$tJbjNU]*ekN膞nYC ̵bwz,5ڣ{zg i41GrLH4 >A6G+wT'laN}tU\aC 6q*ӫb4&"^itSC]q J3(qp 7Y 'yP sw0 W $_a=T'J?_H4Rl=weo@eC: :,wb̥,PL5Ҏ[BiGo ` J0~HL}Xj]C|zF`ΑѮxqHgVsNgU#?m9^[\vvb/L72NXXD..O]*ʳA;8\ L`W!Um9GZH\R@a.f{Q0I0bxݵ8Vy ,:Ip116 J2nBWG;|}:<j 4B5$BZ(_|E' ::f'[e?>j)/7pվ1%Tl1Y=<8997bظ u@<Չ|Ӭkl2j3D8U?)m_sUGeFO [6f'=˕ #{`f ei6I~UW >Ji1 UJ-Al03="w%_B˘ ;&N]h}fY{dyO: dtM K* H֔4Q[Ѧ[&Ŗk$21ik#_}uk>xU5~]H́BJ-NHa0yZYN= 8}t3 ̘j<%>>F(뇔W:pQrP,يeo͆!@Dyxv p~# e O2=ZA[+ȗ\Q=VJtSDus*!|'"@%_!܀ċ&ęzj^[-.C,aXiq@6 `Bt*^[%Iti%zT|6)khܐsUڪi{MywLU81c38uat5%oKgm,򕻯E%a׮1Bh!g9qxWU]1K+ͱ}B$"R448'.mwCDX WM#)JPՐWW&/!#NL^6K89Y ٌdKAh?z5ԞsNaV,*:q0@f_Pqg:.Tܐjj5E5G۱F8=6誎=a .)*`3ëSJ!Lv vSPȝβy]cr+$#quIh f m؝6Մ/L)K= N!}e.kz;wi4, ?NB NFEcz_cֲn Y=0S% KcTo}1?b{&F1{ɄUFݻڧ(ySH4Ria1;WZϳG sta:Ta-]н\/*; a!f&:W({ [Fup ZIKk(6/f1:na8x,qn&/!iJ=hʺI hqݠe~VnlBtH J!M͔ME/߆/De0zG͹>i.SUiQlf)t`5eax7:sVKM HcqNXt9#2dxqyEww1.߫`Pw>*:dakL8r:$ċ8)iC gc]F*"wG Z۪ hq%w VI4E_bC.7rż?<>)~G 6@ki,-rqvmR"=TR\b A Ǵ~X{EX_zw=E.U$Xq7yk̞yt)J_˒Dhd F@}!"K|\[Cꆑx j,fpiM ߸xyUGKGrA=FrUV&2;Nɛ`zM)07 ܻPNޭAsUaP"nxEiDb1cZ͉1r_.mGK_U[RMwx;AG^`Ml43Z!_DBRRYݮ{9{1epc3$ڎf1>o UVGc睕Y?G3s|9&`I~S4No]a.+cR45bzń:d^ߗROSRW&mL֗/u]GJ|9Љf@A+!1vzdTu}p)aDh﹌]!TݽDR2X\KnW}iOM̎ 8R$稠c|T۾?mn-V.3=|.ATP $Ud;ESzlb"a+jBuȩG.Na`n.Y# %RhluZ~{u|LlBe1աpÑX $4~nQ)rq[ 4w A~ҝvcСZs2t6,EpE`3T8Y_~B*Hy6uwpǐ5්m=)().d =oiX&}P S.A]0j3 ZTn P+y2+7=R>RSHvUm jqJmyaPCH= hV/,ɸlII[׿$4 nj7]Pc=)P]uHz~a4!G{`[){@b(Jbo R ξbwa[_o3AFKm_j䎾Oj(&j^)\ӋZCЍ frH3Š':A_+By4|O9l:8ǒԁϙ$b!Pv}o#܁O$ʢ~ZyۿB45ؼd4e@J=+[$[ q\H/q#]i0]i=/#?C67'^/a?Ô_!x3 {=~(a ^OK$8~$Ft kqjB@'gԃWwto)Zy"V:(̘ٺTE&h?Qt\Ne~xr~ gZ``!31 Û5,|SIX ]${5[(c;{OAFu>K3k8ׁ/"Psm(n]wJfhX`n~U>`$^8ؤ9wںpߦNÅpK>JZr"ehlZ8[2Gs0Vf8Ag GX+Yt.I2<[By=y`G OyFd5A穃BELK 1ô(piYw:f5<9ՉMF@_B 7Ӱ1Zc&1%dF^6  .uGt-7*͞@Q_K+VUF=seTe { OGh_G՟b>ƹDM+كX p4J hQ\>\[Q>B՗/V &!":X759 Fu/e/"௥{!,w6$p[NGXPY7(uw!Y֒[(8_L OI脋2‪lJdo}u\}Dd&2^`|[z(2/[~ *\Q`{AK膩t0y8'VqSB mpز{u9fy3Fd!L$~|A_˼D4VK/5wP19H@~=vβ.V?Y]Kr$\bOwv- CB*MP8/&i=l.٨/q%xڿ5Jp[1R^aE]Id~ >h(x'i_xeخ1]Q]e_TѥVNanrgw$FrMiNsķrAf.Nxs8rQ d?Γ4ü<EVG8ΞmS*eYmXg1Ɗ#(ƅ b: z*(Z$)ÎO|neqJ7E,jQD e@yxή& FPH1v36`b[h+.u|)Y2Ku Txm* .dU+ )(A"*=7Xe$=$s6_&VЗ J\ʎ0@@3O7NyKcӹӇJs!$슐gܕ 5*zq,T0T 똝FD>kQ4zN:5k|0(/Թkimv\ǍpE#-ɏWe +"r@t^bO^z{ yZjJ~A&O`2 u3Uֈ雚J4qp՜ nF(]✫Jq"** K Pk aPڢ7;(,HXp(=J^4sv$SWu)n3&?Yw N*}~Bzќ5oXbZQ%@QO,|:H=O2UC[rz4_kf,N]ĺBLE^)=+bPr[aĒ~ЇJo#y$͛Kf ^qٛY!3W *SCD )lާT{?|v* oۊot]PJ Kp$w`eqcgg7JNqhj'`h`BoJOt/N",08h3X '|܉nz\O]*`zxDGyX T~v.vxt&5NdP gL̞iNK Z8Ejy}`<X"fv v9b\JƘ~jҕّ1KlW31Mߢy6sI8*_Br5ѬQBա‘9-sGS+f_͌'bN(hv[S*WYmv#t5|ptd deVP&隇զ(8 4f/ۆacICk=0ֺ Z4ΦV?g4Ce=v[(lm&Y 4 )R2gCG^s8 * A: y}pJ0&Z.Z<ܣчGIܩ"|]i0>6xj2trJΙMc$cg&eV>mq, :WLنV=F/*gXq2%Fwi}/1,R lYBt->  q67 gˍy􏓸$~{7h6Кy]%6 Ńyqt~0Lr18Z3ܤ(+O)uM5,CkcLDv>m?[>Eg܌_y!ILdփMv\V>ZazKS>̈`C[R* peƒܼQE-U@io: U. ` %AJ9W8ԩR k}5y|T?(")RPܞRp= aZU~,`h%>O4i0 ˎ>9o|#L>#HW{@$ ^dy Sz4K68)d?ւP)xlo83oSrTh:&0wdzf!~˭񯁡)Z%`Pyfkt+j*4\J9wVۉx,s"14EyIXb]A4}hᦃ+Wh/CLloy2NliAb/Ro&F YJ{%%tniMGqk,)\= *q;`=F Tj+P'2NU$ɐ gWǔ4 f BDKxU5U#>zySh>ΫW⇻{tVIYYE#âZ!Vp\l\AfhhA`NHX)zp+ql6VC%?62ޯ4/UPTVVyv}>cls{3VSdC yynF9?EC2gT:p$V%.m+0{Po$WGqĩڵvxUE8X׫~)Z7CgW%e! x2Y$l:|bBOlfb$kBe${ 1φl?c/$&SԿJh*#nicO`~m^PCM`?Jlt+ml.`Em}H%ƖhS]E6 V?)-y388y>MĄ ;c2M4K@:1R! O*&!͹eAw7uD;T2! ws8pq+MԻ, YNn$ЧgJ)3y_ˌdo`Bu wtBFzUE2_qN+pѻ zSd^p{NtO7gJ bNdAL6T~8Q)Yirp/Cr2w2d+Zcw~]scE?%'\[46Y!=Kk`Če=;J9O47~h;9%~FͭX#rwj8(5wXQg@U>\Vf) ݥ>mRG8RChIv`,>CG CrDE0i8~8hRhyX`\5Y:˜ 5Ta B?"BB@{zkww/OL1Kܤ>+%C~ )E V\CS.yWȇ2>Qd}G!:NF^²,4/34GoLt(A+mcEk o2bY1Z J!2sҩld?@=tO֝ $d[JVdc&LhtNWN,,5yVݪo=e._'2 V,\8:]-Kl#YHbLK|2<덒Qh,öh3lQ.t Վ5WkI!1JnWJ͹ W{C!<Ŵv{~"®]? VlMx@*p_W&A2\4OXXC&RK@l5xA|0zfTwuL_ 3"1QCs;Ko}kJEK{rH҈;Z? :ਠ\zv1VBb$ S W_x@BCѧ3;uYt* ?L8 R(a!>~4J}gMHoKWQYKI`.:A"? سmΰ*)'gڢWspj4;6_?&J [\IPH'fl쯃l _ۘ'r<G?5[?I[+<68m?+GD<=ڥY1c) 0;Aψ6 -פRn;qloމi u*IS(C") 1=QVBy*+Hєj6[vvkuc zy9&"LF ymb70Z̯5TL"u.~8?Tr 4:?#'yՕ,xnx]Pcm pScP1-mYd_2`=/CW}4'MƶdKXx"ޤ |p` FQGTkGBw?uu&yٔ}+@U"<esU c "Vi|!Gni[S:$=e:>@k_ f&lA31$DMG/|~P!`:aC'#KQn+W<]/sK}ke3>H\S1ߖ*XCBZmw,wzb1wό8 ص HbuwwoeՇ|ڌuM,Bޏ35*.crč;W&cSjQG_C1 J%v˧YOyT$Peߘ{mē`Yj%ļ$k 5PlY` =`F'8QC]!l:E)t0pBҘIw"мifqZ ~Ca41e){l.\Kg>i1p`,&s UphV} Z/,"Fśq۟ZVgb ;lZl56y5&Ufzgs~;4@rn<\ wlcw%0[q1zB(AǕVO:@tXdypMuoxm`DnF(WšrmVv_.^Òsvut$I%k'NY8O/x[K&B+ g}QzX $,`SYXs.y~#vr'J"nJ1t3I`Ev!-\Gw$X3,P6{d;| mGET/(>C, a`by|c }.yU-d\VT5hSBscH%n8;4Q` 3o5rnټm +  `XWn'ECwN,BKG!PzrM˜Q]W_N{[Xp0(a2kNY|anPݦ9!4ujz g,qc7Uz_[![\b/ ]U!hw14|ePO쯂IS҉>"wďH':҂F܎4NnAa|f;E;o-rsLT>f^579Cl qwеizFM36!W5eu$`S>)Խ80B5#C՟w_5Kкu̡Ĉnħʺ/a*}qǒDI,S N{}@P2'H2.+Ru+Z4F> >|cu9"}uQvP (7[c$-{4o^.H WLKRj|;HЏ7sVo%6UxMh$$:A>ӥIQ ~,8ٸȞ39Ρi1YO$3tW 3fJo aZ ĻCBƿ"-Wx^va`\>ORe4 sVi7fɾئ ~}Z: VgנgzX7X25Er6h܎k@%y*ㄋ.q~&vO 66͒b1NL1$mBM0(4?a UaL>2ԮcPkxكc&j*=CJ8g&b~_ﳐ4Th :! N"mK_koff ,b.TZafoWoImvD3!{7R]Xpn;XN>B=#$+ #2(mt0RY.J¥DL6όWWKhĵNiUUV3X'iz+t:WPpKޜ%F"(yz0Z!i: Zmiq5mm|m<0ieLj6aɞ&v|~w22pJ}ؗuMB{Rӱ K]-= el=wZ_vra6+֨(,D샬/bg^S 9%+4CӸSkƆA0O z5 kOd@/)zF}uV }ºW HH,_N>셒R CvG _+Y1]K1}[h x!?N^;0oP!E'.+z,_܀cH/E=!_(7UQVbBy&fVDgG p!} F x}Sc\¯ʫVq #sҜ/Sve7wÄ4HVMĮGr9vNMQ5[0:s\rAC}._TNoQ䴋p!Pơ o5*Xnųy'p;>g"}'yٵMI( _-M1VSV-o_a\XfA4 >V5 e%8 .륟t/ 1Lts^f0`¥`s3U 1 ֽ5{'Kz!f>t(p 6{3SM߻g$ EjTu cM^z Fѷ+TE2W׼RkhwwyQgXiDÀ1gP큄F ԉs %aTgX+uKd%Ã4f!`&{$OޠO[eAPGsk b79^!h0Fq GBTsbfmk!T3I7ʭ Q-k[&xȋ{=aUWm ͛'e}3r}sRx:p1`=j H!G+ݪ#C #?O, u។$1X^vn]3)Cx\Kx(OV|!) Xb9[! !> !7P(Q;p "no3b8ńh ʅGiU"[뮽/CM'u. Bm ۲ "+rP}Tc3Z~CCJ-.3f8M!QWvO,tY [i )N#9B[uZn5v,+=m2c { ztl6^M6 oGl=CNzM *wEHeW-ѣejZHjmnǙ#F]ظUzeSj0%ڱBd~٪OtC鍁FP}yhP[/1q%p 3ڡPy c7r͕QHYl"o$9i0$%>㔏wI\j!e"7 KBmQo5*.)fޛmhBz LoJ1R'ޗoi+-cA(@ls{֮P Ѕq= T$"麟{ow߰z_mTP8pK3Pv\g@z:*fkbm#Af2qm07*ӟIt"Čψoߚ>M^– ~E]Q i[Rvճwe$$7uLh.^ {^օ$&Q@UMc7T>pPAR 8m^hh.붿sFI&q~8!&-DI#0÷ Š@#tC_5 M;x~E>̽Xi Q)i1e?7|Yudk+Sv26E3H#{F P? 4%O[.7Cؒ(WKC:Z( ې֩iI$IZ;@K+K_ɨGDdil|WF@PKZ wYR@<0DclۦMW->5ULe|VH^ Ю@S{|5N#1*z޹9\_aYCwOFm)6zv8ҭ5Puȸ & ԧBMRvW,H%Hw?X9XB 䛳 yLt1/=sUƘ'  W]!m9dfAኗ5 AvOȃx[M0;'2/)e `Z6y4ׁ({7Ҽ)tRQL\O[V:.0‡L4|wqeD.[L%^"'J-!m^>^&နOag4%r8ae`혹7U=6 >$S{^Κ_=j#G|o3b*no\Mox$N3]P.hNVڪve[rS`.SbPY#P-T \_ 4Jm~Ce;Ň<;  6C͸-x}3ڈRcckj%7{UhdQR@*s˿q$"EVQ.1[c:L Csxsmq_;K>BXO:;jHTF 2Y^;U,|؝ȼ CӁvw'AηT9‰gR @@\rCϊ{S`WuV%uEu T#ßɂ NS:y;Qx!9Lh Kჰw[@RJ#;&dkDOHm${fKh[JVP\) IW44+׀V)*4gS%KLML`%7Fa MY$6E+uኚ90u`|[mtxXrHhϠ%퀨}@ʟc^%/ÁB2~P`M쯛fڣ8:e-SWlGTkn^#MqȌ!Շ8RA#c2-1()v^\*17͟ژٓh$kk<0>9?l F^7º,LTX`4^¸6(2.Q+ֶw؃i0]O`Gz$MBwy9r`og>QiˊhmȦ*|s|.H{4&=m;m$}?n'uev424)MV5&_3E}!`<$P|i[OCNg4!ꆒI4\m ;AӒMEf |_iҁvEV3`=6vQ5͖+xAS1YALx#7[B*i`nC[f\g*g&yyqާ׻7lcߜuHe$*6PN@y~OD4>TyE W$IJD^W']kNI]}q[u>GFcӛ,3}B+U@ U `X)]kdHY4Eo8RӸ8\9 8#vyϢq<#vKJa`qk;fjP3/3MNh:E0aFAr3b_V>jdOn/XX~\9N܂$wy!"sEᖧy,rs6@XϫǞpqm bVu)fm'>$uRa5@IAYH{h|v☓~~s>տٙE+]ngoJ0J7(XCzenETAl>s_8K8js ~f s~5r*̴Cd;~n-uG>(MpKdS߾Fax!_O9:Gxۤ̎nzRh6h !T,Dr-ʵn usyj4|{Z?Q"\l0.?Lٹ_g[E1J>wH(uIrā#\ơr})ԻI|VG5 crW* xtH~݉w{Pl߅VRo能}6^ ǡI>6*PE͈-ts;p&;λ@O:EG9<ɔӹwgKW:=څj-eQ+YڍTDLeImQ=CBTN5Ta)F"bԸq j є< }.b(l_]F1E- TS tId堾h'.ݥa2 euZdXwVж8KիęXjASݫ7Ѿh.HBm1z]m:(2o\kJL9/gRX2(H;p#eR9ctqa6'}0{=WsJs m!qUtL9zA7MDM?$P&mۨLĩ[e@^(c_Ve Bi&?*3"3\M}<ӺYգ md6ϱc't8傩*A" T9} "ƛ&EL ,M ANFq8>(S ChLNb"a}>vuW+u(ʑ^χGddSғOQv;'^mw93<;D#TI}ApHi&}^AȂ1 ҥSUbj?saG`3{d!ف!IK\'D6 C[^ɲC!"Rx9[qa%"D$B]u c~r7A%VXRv?̸ i{ ʎAFC/ߎ"jveP!apM5ֈH F PSmaa/L9*Ι!1ߤC&Z'qPdվH}pLPGI(xZg/6,-2qN9̰"mօ 8"ش5 \kt&;֞lYx܁; FA18 @HE>YLdhہb[h nRƒ72aTmCx djv7 ؾdFK'gg"?[K'}{*ؕ P;l))8;3yXU}k8LuṢi:&.&(^T@ƧP^ )'څg$ *u1vd!Yp}ד) <:52TS/d:Jwʻ fHP=,"g Ua)]J0%:ҝ/v7rDY=?x=*r7'4o$L12owχvϡ&!Q`k w3@nv&<ѕ[ Cũ"3TG3a,ӘThuIN"^ibV $Ԁ4w0U(&0anσj:1?x fֽuC -GN7o`ִܱ>/mjf-Q9wOs;! Ʃ1$o6)5D#rO.Wv&rO'OIhEGe6rұ {JZRh&ÃYy*Y1: HƱXn&X KH.2J]PЏ}zi+4 跣`T\CS\Gwbm/7ɄUD7, (Z?Tt^fK(iaѬxCכKI?;]HP v d˻UQުVגe0xE+"E%R?r kdoFTk }.YM@a?FsKq!\bDYΓiF17:"]!OxYŹVN7 O1D|UVR:gyXfDPzuzn9)6,Iml|:ê h!I'qB\oâ?< 0q0M[.0.BXĕIZR QIlNm;8j"BI=ðR{Ep-m1 av$ NcꘒQ2j_9Z`s3G|.kûqݠ$7g}maxR1X d{*ڿ$3G*ׁhLJ}_;'`i"8Zfr{aqQWbn6[<짘)V~{Qxf=kzSV8bc[q9RހB In@DڎۏdD寝"LxO׉EKrb6)T躜JE?xMj'xxɞ9fW6G\*_)zpkí}8HS?<1Avĝ2[ {=vq5=do2п-&7s@ mugz`|C҆/Ό1|L+Toj#>2& ;UB%i8P8z10By մwrQG͛ğd#G-?V(ib GE3(j6q eK]&l\K ;amMNψhx2j!]?х7}5wGi#Tu pgrS9Pr6W3 &mqqTD|ՆTpq~;rbLrlUȗLE-.5 9"l£1p~~I[T1'_#1=-P0f[ыP;uamѨ$ @^+Co]Oy59HZF}Ͳ9#>3qxO7?b_-`OQZOX58էvZpS}Nߩm(69N@sw\5AM= Gt `D[˵[;Rc(n3>tu֎k of6OFS1h]0X!FeDˌ ok`g=aV2nXH=C0.T)y5&A Dn#lԧ8s~Y~n ׺K1-7\ _ .b#i\5 EpR洙ؖ Ɩ<" w,^bx;V$s#*CKPx2Z8 m;3BP&`oۜ e=wá],EJm6ER0mâb{7'3A}],Oyf{\~Etg6/%*π*1 r'kG`uJw yEI,;N i!0 tx fVUu̧). 1n+ `JG(5A߉LrkD%XSګ3}`{ҩP@+zNڪ_\޾>16\Q9fbW4'ֹ(O;Wl,fI.7?/?@-k?&2H ]5 bjɜq,s;!Ô 5dLԗ!_8T̯]%p$-$uX'Dcn?,m:xt;346sGT I]r 4 ,miJAߐYj b+WIj h[yVi5ǛXsʣ-=a.? ;:9`kNIJj=)\f1wbGWG $y5OU5i@xPG=ʭU. "Oa8&K5*)V]BA\F[0g?UmQ/A:HlQp}CEEf 8TUښ`OG#ms<` !*+4s44@Z}qKg{^ x "E;:FJ=v|tP,jR)BS^Ʃr7'dL:§п`%*+ݼv 6RZp "O}-oj$ߌ!nTWxeH"U.i\RK0*M]x`Ry$jp|2<+Hf>bph8Mç^#ۮ]Ĝ*(_C4Ҧg |dv F'd]xQ:(YSᦲ'PKz̹9n 0^앐)Z7Sp%HUN&!$QVt[[77H1#{%R.Q6H|qQsN4xDO0 cVo(C3=7Dց.uU٨LBOqՀQl[X6\m I&z2[;fSj U QNjF6OI@FOq]8Y=i,e{tSs((L|ktBI"`CoՕĂ̊JPR%PU2ɗ/nnv]mpϬئ 4t%+I+X2F餡7l2r/q 5Ua&Gr\;nz:{5T!{Jˆͻ)gΦĩ@=}i *6Qã$P3FA=hFzt:< U3 q+գ;m<2M0!$Clހ|L3buVcSXyh|A.g>Ȋ2 J۴ho tHFF. #zTxB{ƒ8>/n='HWٌuqWL[GڋʹVE gypcࡹ;Hg={t̫I&CD"LϘ(q}+th†Z޻*n2K\Mk2IQР GĴ%b+5s!q}1MHT)b8'>;xxҾMT%:=&A6Oآ3UD]\/+ I$uSMjS[x|" y&l5ȧ[g40T _V{rTkw j-5%d,{hRk)F*hTE<͞нif<&jׇ,E6x| ZrE-s qa%Xr3Qی:1]<`?joJeV:\pˈQbY\jū+HQҹ;C"p"pPIdi<~@Gb&[u}JS+;4#߷ʗ 2zaϼC97MiTP[3ܗQᆭfze!'>'Jzz4Ynv YB&-"nM b˂:Ҟ]Q̋U >SHL%b(xZ VBXC')BOza^贺x!@:ȷNӽ9u5ѽ^Rl"4[?Q.(z}PܰQ2xVd[ND"- wY=ZfǨ>I J`ZdݜHOBP}kS&%hI+/  uPQ>bX&p[erCuIOV\@"8cQMcJ@LU,zw qV@f,5Po2+9?[4:|}CD.8=B:TD>$=3qFfJ aE*' 25 0",n$~$YDN%.|X9My]XclU:ǿ\ 6-`A(d<-htKUۙNZ뎁ƢK>`~cr!xIu N[V@BG0wz`5:MfMeu +6z Ye(QkXMfAD,p~Qӣ.4\e_bf7aJ\ƎmMTv޺>`pfXQJ])}L,6 /+bc[uq-DRS4?X|~+0[P!( J*ATpv?4u Xw_/ b7?a3-3/0ҋʾ]F0)*&_{^; g~eUׁ8JJʡs)֥,p}\ ޲mYM'fCm~9)K"CIw5*ݾJ*6d.[?<+\y/k:UM? mtALL2uz2Io\N27y`Ԙ1pV-ζET=4aB`>:^0 ÆD8W>Zeƹ|N?sh1[N^^ V:lzfCѦ?`gaoRޣMWT90Y_c?3;3nԌA9܎Pysĵ󏦀>L%[WtEjs @L  43k~5+d_Q¾ܡѦVfqf+9JE>Gk?`Dj _$fQgmUƼӍm /%WmC'}8?e d ̿/ 4lYs˙m>5ch\SuiPہ <YEP&!7SX,-\ cx={V *OoA/mhK;)@47KH4 Hq؅l?b!v52Q48ì(c+ RTM*lN¤ 2=;]Ȍ;,u#uBvq?޷?\>gΫ7i^>Z1Iֱ2z.K$_m HmmMd*ȎɧG_kLJ sLp`%09l}֌Ce_B! \vswWXvY$+e{up_~vlOˉ훋2o=ǩܢil?gu)KGbl53$J녏x|w\ALc!#[l$vҔ.|CR:,X@nиF p= .hDQHi ax6vw56*/l yD96%.Ra-.X@3M|8 *fq ( zqD߱.AgluW v"4E*o x4Oj"Q-{g`m0eŽmtql0U#rG]d98im*iʗVQ4TWK(o~9s.nhu7 ^$/C?PێnyBUҭes7@BO&ů* {ޝ؈BDɶi*n8$`_7t4˙7>y.NR'jeЧWIgcqr8J;nn;ƸpץF shd}|;dAɊZصbPeAS“hĒtd?'S\y L2D '֚d-I' -2 @ E؉TYcǨaCޅh$]-|X2G77{s۾!asmd^Wcm xrk,F} Eco7B+gCPJ_UP'G` (pbEc3PӞ /聣x{FD,RwfKr)F ]U]luXK}0}_o.ɕ +a:*4opǏppq/80%b(~V{]mE^bV1*mymO=kCSEKS4W]m$! Ljf^2KVհ8y2AL6`y:= JMWf<8sX2[AyKΥ0ݳ( HU-͝N"(e_Nj.K$Y32^~lxƺNdA]9ּnUܗ{J5;xؕh o='#f'AZnpY!8$ռ#mfyKɃZꮃG'h^ޓC>!/lr?,,$ H 2S!Hi`hjٚrX7[DX{ FU7h^rs#g QӬ™!QB4IzhBo1< –:f'JǭJlIs ׄYQcZl*?v^9O&$_ _^͛!pIJԇ_[h&x&{{xϡ[ i={:2/ yX5Co(F?[Ok&ހ< EBh)7 eܳQ8T8gjkL%S]DŽ^#Mr+*XEAdjcc#-nw<:bBɅz[WeLN!)%LMhf|Y@g-gu*$"|i{_-urҡi>EqO]zR*>;ǒ T6BiES:xYFDei)X&6~Rw y!xbihlI-UI. -A|f[+[3ogKڊȓVpw+oT?R%yɕ: h:q'hb*˨!|5śXYzbf:S1bq)|9! y&E\0tb՛?h¯99$&Gx⳾zzㆤӎ đч!oد'X9 4KPr(Wu`vrSǶ.){цH_{~@-@z0aW}9'é[z3;3t@^QkUV10(Obы#ْC5XeLx-ޫ '&kLEX=:<rPV!~  _.ކ|0 M}ӴH&2X#R P:cZYS䫜ج- ?m+1g(녦xe]Ɏ>Szz5o1`2WbIkuַR闇?"Lw yOXyW8]ݹnO*b->eڻcEk8!"ď %_ѱvR޳2=cX+˅:O<,Ъg'Zi:7p .- j֞Ӧvr~g跭ƥݶ/[ g({Qb nܨֆޣS"WWw"pȺ\/o0nbŁLz5u=٧aqԔ=?ɡM鿓_)VMe.e=iMTxqP ZwV[ywFQT(Jʼ5JN(ӫn%0$d[PeHaYQ7c!p6SF,ŏ4]hrX LlKG'艚!ac̚`=ӈtV4ΈivmZ=PE{yԵn&]϶̡< DEP#%-L͐1R xxLŭBdڗ/a++ TD[Oϧ[[8s0fX''4 ώa1ЁD&TSff ^b[!^焨]%\ql C|t@@ڃǗeυ>r؋_|Dl`4VU~\MPnx@[<s^wAV4emn>X]>ێ`*T4)jXyik9# ×Jiɡ\++٤3bz7IމL}ܲz2Dnrg t&mx]':gCٺh(|M&zg*xU]p\3M#Qu 9Tu[VH! ?Y^ }U_W)V+I>L#H{&Aú[_=iٴYN?1x]aurzN5CӀ.DEuLqH[ԳAc馺uDnz,to~o=TF3~gPdr$@ Q/344;/QԱ"1il?X~[AtL>?OǮhlgA o)+[9 ~.3]AEj{F-o zL¨re3=1F=@Jl}"p5Fdq@JBsLulk!ؑXBE8uVjm#DJ%:_3WV>"8Űh֊38:>l~ |QK 4N%iQn xi&$e}obi_ M(#ݏS |r/3]3I&pWYcҬ<R(0ԍܡ~MxAiVsݡ9@՝o~l?e)^@g djuQњVk*;K (Q3%L);)L*\h hS8g⽜N BCqf9Sl6amznWX9p]-Zc!BIVsB`ϖ\AϷ؄!:Ywz}#Wt昝B|^6t j@ѧpOis(ȾC?W3ax=o+IozpbEI'`о5;Lr)uVciɹD>t<# `|r#|󫼅sͧ [cNU(¨=0wA&ngYQ}rzH ˘ifr)thF 舓7K< H14Y1ȵ껮L!Nűo&HT_k j3ɖEO} =g_;jbᜉ~U*[_4oƪ$YIoYF_CHϐi+!yէGC04\R."}%܃hjco<1.j$:2$ -{TL+ee_/|cK_ Lp.XJZbJ';TvAeTm³i1v^[]8n;Ev{m2w$!iM1< 4.2,|8V2; I7v3,^#jeg}zG!̧Bae>V6s]YuMQ9/ SWLjJ<Bߪ3W)Y圇1I/pG2|[С'$ {Ҭo $׸˝Ȁԁ<(*X.Mr9 %|#u"Xh~B w+[c.I>}y$duI%Unlg˕DtHjy{ rfxߚƝu@^?5B ->}&6b|cԕSI1=`M"qϽӹduywi ϟ2ja ㌈~Hx/g3-V5RXA$&IwRiԕÜˠAceE$NґWޭ]]1MsRlbg3SԽbŎO%}}njۅL̫5N-aI؀eRbGiFG}5Yӗ~yVfI:EN@~EYY2ȡ@w$_D; Ҧ> yB7zN. "tpB}p K~tB^4b2$Xb.nfq0;ABd PlQbN2Jb W1E͋NuZцgCU ,W}3UMPvL4.ϐEZcHs`bCELqڭ ӗzIBRo⋭G%Ͳm.+T5.(aК?<F'\!5/eX*{g|LK:4pdO% `Aɍj kD _K L%)죂6KCLm-˨řut[+ybh+ 8JP/؀<,G/4~Ǔ{i|\ZZ3c'i~ +ju鈶N wvԫ4E%,&i7C<8DݾCRItl lcL1]a_J]zLv{9iq4 YJ;/4s8lNݸ*T6}nj3y~0yK7PȨJn; 2@ֹd\I8gMt('SV4rbDO* Inp{3e(,v}N4,nO Jh@yRjNs?LF$1 !EUHCdDT8_| 8ЋVjˑ &9Q?gbA6[ҳuHF,663׵|dª㽈B_«>O qyD3q 3d-Q dHōy0N*ia™wN i pdM=nIYlip$4c9U9Wీy B&G.."lm5b6N{۪&_CVMHw\@kTHI ykEX5@1iQHXϪ9 R'ǕFN6/s'e4L>YePAl{a;-],O qYa874JckEH.uNnJIbӆa )1˞8 [(K'm-Lꝅ?䍉tI4h Xn|X:\eHa[Ck}>ȍȂ˸!{8rΡe&N*/KTތpdtF* i8;t,\<|kV1^0[ʌ@ÑϓYpB-oƊ?fwuCl#;GK33fpC};Z_>??eg1-Z$)wC]Gɒ "֏bN f`}G AP!~Rl:l6Gc.ҺD{Q ~(Cr6{d-DLj2' S$Ӵ* ޟ.ǂv Y(PC_"TCb6Spst;a`d=Vy'2X7m@sm~cSq\-j$Tm~ dS!(D9LX4i$\D#,TPjDoPO` R[j4t)9n׾"k_Ļꊤ^p-q~O#' #1)E;c¸j`?I{87AK+x3.dط/r8 V{ kz`!w؍-[X-5%Hbvj=D7gn~T8?P//cuvaf<˖5\DS#Jc2R!5rj~c٥Ĝy@벪0A5016 ,bK~gN=7r&n0&Rpwq(?)MQWAhc[wV"TX/q%] H9L vZ"WIȠ  tkʣMCw~#@37~%.=@uˌ‡ődm͆'MOeQ}G~lEA=^ldcn(5,zTDѤDl.P![;u4NwE}c"C,SfTdor@==`@" ̧:kֻ]x(/lRmsnhFdfynoBj2.˸S$@HK"Ɵ4j'sZ;'쒯>^݌&-Nᦼ^> dK&yϽK:jDWՎRgS=Zay =SngAmۊ+`)oz| LR0_fKW~!~#%͞2Ar}(k:5AƲ k+CUh'bx@{*ġ+7uoxK]3UUEEPᳳDT< :7c)iH]_:oϧZmf.\"^U>LOZ%YPFտ3^TP\~LhOv08V2? [z~ eO,7FA5 igX8|֮{rx%y;J5*x,L/xQN Ti˸#t&OB̓iс=bdaP&,FFErUhU]1c7}Z%lK$-[a/IH GޮN^8RVWE|YB`iV0^k?`V]l*G{ H4u6j $/}m| >l|?5@M%:w)a-SX"&Y!'C ՍViʘ&ı;L6p<8rzœU UɗVl`X1s!8P)\b\\TZ Nk`˓;CPte:,d61EN.Znh48` !&){"R04Gv4f+5Lá!qL5AAN?&v].Qῲ\u}4]E?']vP{z'y%ڡ8} 80>^N Kd͏̱P-8*o\*22UO:%7j |$ ž7r]VA>=֘ŏY8X}P]%|EAdY7@Db>zndG`GEQz9x:k ^O; Xd$V } Z\LQ'W)2K)/4NE'%.L~s@HqY*nZkWi  2+LTm RY O{# } %w+ >GU ̆߁Nr Xx6 *ךxf1BJWpc-3"m"ڌ4)vy/yL03ꆱqpavD܀wCQ/KdR#Cj]F(8M ?s=)*#<H(%g/Ni 3b}-HkE\p=Yv}|nk29wN%&e 떝qCc }JҮR8vk\|ADM='E})K_f!3$Ϸ^ը}ꔕ+XzAHwKBW%#?#+ZYufy=daW >lAVa'@ႝobd^^?$7":UZsE^ff>E#7Kf;6P^9ඨptyMM%G b'f:c"b\#u{Ʀp#'8} ؐν~&>]/B]q E2R*بc)휆g+" *RD>fN c r5G]F2["M6~[(IuR2yvF LՈ˨͸' 'Mm)LwYVXg~HסX@9),P{,xo?dS%Avޝ@z^vMK&ʞg g0I מ^ƪ`Wz[5CF쁲+ϸ~~yCF{2LW^qu*)JߝJ-O #6%[WTF)xf |QS[հkf "VUk.ݬrKVW'Hp׿j]qw% Kς ʔ]q"e --cWX[N;_^xع_.ZvefMQ ٧%XND)E.y% cKV,^D2۲0ٜ_L :;}J|/9ǩ(FlZ狡.+Ndl$o~xF|hs}u9{ԭIHS"~Χ9 3ZmE>Ρ&λ暨׼y_rE8hΙvhӂ]*v{`Q> a,?] Dt?nH6 "J,ƿoxX MTM/B b)Ydj:-\RoA;W*qh x 9O F4ݰ(zДVCCE!kB7ьηn6 =s iK2X >Nb6N렽?+ o6MC[:[rAJQaS3P&z&Qʡ/^#KN&3c\x)z\bSzýOԿ 5wt*!'`^f Qm :}m5NXZ@q m^ΪDYI|?a2< "*dN'C&V|%٬ٗ8Nnlv#8xcO`,("b@(0yl*Ujgm{B&Q `'&Asک=y}=i3Kհجrr([X] He7C^k4ve() 윉а߮לMg1\-d#{j;Jߡ3Mpg)<9Ï(al]ŗɤ\T3KLX؞SP舃Uŋ\-U)l5QdSm$wQd{ tvtSr\Wi|Rٴ(g1$u>R`K5vޝA.ּ;Oť.Of*563\ƭ$V9uB+\"іѠL܆_2EgK=Pa08WJdcPҸulwaUn`*@"rbx>`WDzŅJM8r5Tר9ꪥ 9]^}ś_ JA)ԝeS* :Һ!A2{Q,>W'S>4Wԛ ~4s`*ir*]^<f״@^T z:03ЉDaS]ϓ%t*XHEb* DGBxQɩ._. ~ b4DtT֯xOV91 s֜HJE8a[L$tLgvi2dbm߹@? w)Kzq;ee|RJfs&&*PXjpTW)Ǘ#^㳾?Qה;biM"Vo< p«!@K_kUݐ)ygWJWGhu]e_)$6J{?e4#Vs^) %8G̅Bc;Zllk?IJ ry\%_Տbb^m`M=08j/M{zFUY9[hD8lȡz_?$&6l#ΥFb)5&/(>k#?;7Aa."']A \SSz?wO6>s$\!$M;FW8m\#:xCj eGUR~/LěWoBgq1g{`ba .:2'͹s<.l: o"}0ԌUOd0yJ϶)Ɓ lP͚n,A [tƎUs O]m7X=d+h')H#Mf[Ga_h4WxM` ΍Cb Znr`mt('bu4d5|ؙ/êMGeM2uBǀD&SG"ThJ(1PK2Yp^"S²}fdpw($|K\.1x(z7|:a~u Jg{V[sX6+HG%dtܲok(t=3C].Js~'sO&?Ɔ7MPёIIړ U"; K' J+hqnz lVA,[)O%5Gʸ$:_Hcrb]lV&.K۬Ȍ[ֵՉ; ;Jgd-N)/ (t/doπ4𛎠̕E޲u3ɉ-SdJy{ oAİϱ{(e凍\VW`86j%Za9 WUv ՟b{ߎ/8mt|r`|71[ )靮}X~ j~++\?Aj^iORL(WNZ{*ldڶmS:ɘ˚Y-{M4 vx Xd{mRp!?pB3~:_s-gTtIPf&kl~j#'?i Djغ |3}UZ/y3zM pTEͧ9hͽIWpE~iyC9:$q8*#(MjYJžc[s!bp}Mfu2Q5Qc輱ť @^)F~'Ȕľh6韪-Vv0pɅN9Fo]Zm&OHnc=ǪՉ9+"YNFfTi9=vggGC Ye`yFaahoO0ԟk.v 4@dc_)j˟5;IŜ#,8O M`q-K9=K #٨StIiXiGa ՝u/U^K^WT"gn"NЋdonJk*0~pv|p[,4tx ֬eӸАPq] d;8` vqFI?{\\ H 8T$m-Ew*G< c[7SR({ l MI4q%`->h 5])1S@'Iz鶥2tҧ9ig<[ dxd{h`/ "<ѫsckҲ*gsH^AtsEn"J0qiWe P5mc^n1ዤLmQ%ؿ)P"uBGo3lwN.U6V;5f< K @؍?e@vX]v ͔4=m4j%5Pfh r@?0Z Uڐ̰_DY>osLgy!R#rR%FQ-٪,%fh#T PMĘ+R)B^#} H\fΗ Hw.׻ozo}gU^ڸiIl.S~^?Sp lLq7Qj) U~p k0Z2*4i}7_~B}de{"PVne3xeuY+A s\vjn3wb +bSXW%e*#/n" &Ԣ '^,M743hQ^07B&3-`5"UՌȆ#;is>,q!*&7L=eu3+X4ȯ􉡧b5: ouwEh맬cǺ\\b}pu0 VYdt,x<Q2̘JO l_ w3hmiÝG!RCJ>'D䈃IkW6rvyoP)- '5 *슷_̼P5-Q1=ō _>4a/k,&ckH͈ ̞n/#1Ó렭Q;Cf4'J0ņ$ :.nïvˬ[?M-\?Q|%CX^ Wu)Ͷ/)$Pcaף,D{կf"0 {lV&jCuLhE*v"(7K5a31YDBYda݄}7hMNNv=QfM"vͷ #s@)@ky1i#| 008NKi 0);ʤA:i?V bߜ1]&ŀU3]f݃Y7ųF<v ao6*Ͳ%77 c]%ؽLFcS-S3wk{\ӊ] k1l@H %\d՚?v@{];e~\`MȾ>i!40&t7:JչuI*uBьG%Io2NCR޴Ff9mx:7}yӋ1Ѓ^4n$8 h-Pix<ʓ-ڄkPWX@4z۪ԃQ4Hrdjg~Iʅb]oLI ix+z,(ȀLEdERS;n՗0 ' N#s\Xs4SZ)Su.kN+`8v]y 48SN΄T8%Z:cJ 2\W )V屐CؙS?yY7-?a;/#ے}]vURP2Q?==Q#/ @kh~,̭4ϗ/@^Kg\W.Pտ&Ҧݽ-?%%P{Ԁ&!:1WZ:3啝Hn+MTqMh&dzW$/q۴ȋ\aoH'@%_6e;7{r6KN> .@;GVM0Ff[G2%/M"3IXgP}\絀D5NPL`fO;gKW<VY|ѫcy@⥙-&DkV*- lrIk%O{v?7[ [W2{݇InZ v kTS+>F3 4LF_/a}q'_" uDB)w.3?btghj02Տ oϙMˋJsb@PDȑ2 .one<Ŀ{㰪*"Fϸ{$EsF[9wre?:_G?/%+~`2[![N xC|u#C%!mX ^ns ,,jIIUYx F&)qEWl }IaDSJBG16w:r\"瀷u}!I ,Ŋ6+vzfF\GoynC/S!7{npRHrRll f)i|ʺhh]AOoBhzr npL"F>]lwm4ҿ'5$WMԽB0ب<zTX J_"x lVQ.p$s%A42hvAJG"&eW,wH#01!V{fYX&=P@j`m S!`@$@#ڧvHP-~\̎<!Q]xTiԕrJwAFEbL:4jv,΃%wZ`8 ^R5E46jrޒh*#|)T;X2n6VCHhMHN C*okl.?1Ϫo Y*I?R!e|ŜaOq9hV h㌼B&ʏ0' 3* u#,բ:>L[D( # 6["e,<۸Au4gG˽9.i* $A_89Cɪo R)bl|;M,W[ iWqʽåV4`ACRwrBǔy23c&! pSړYp/LL KYs& 2 #D{6 Tx%%\Z(-zF:Y*( &E֧عpf]{: b'̰$=wlDT֮SA6t*œ"lU5!xA;:V~QNs&5T RE1u O=WY6L{h$Ox2E"B=8~GeF=-g~{NYa3-ujmv2O4r`l@&V9(z5sڕt&ŧ&ڙE5(7{° ii/-X~4E8̀!IҁvD"{Z Oi]<~pg8GDgiީ:nKda0_tBgqגTr#9uگuIAd%NFM$I< gM a;"=^˽f|{zMH%m5f`ˀՂ $!8&B~d>a(9jkzYi_> @Cw?-\͍}&z,idW/~SG'9&Y%8ZU%2˫W"d4@( ky| 0S.3]VImC鉩+f'3Gfu`NL1jq2 tPѺKw1у|Ly!|zeTd"*a'Dd4Y:u&F2/DN dcl;TM3:~k1) @B#kVPRBY/&I 3TEa#&gW|:C #H8zFU S<3d, KfCW"N6V:{!S}1Vh`߲c9Mp#Vb$p /L4$;qUqb&]~<]ܒB)*O*ܬ Ymخ:zqGCNp KQ%7ۛh?# \벝:´#_ _pCjrs2/gL}"RQ@0U7_Pr26ogg2&6 lj}] T;HZ!}+[v8ǠAx奧q8ӫ'{E|88HY@!b s71R1J)_X< -[TU֥8A4KO\Q5a,IeSԞ}LEcO+=Q3؉՜05k(}e'6eG K)&⋪ƳGQ\Q0~;iSwPϞ\ZW'EQg= OUk2- Q[gׯ >8e ;OD`޷ۄҫj Z-8kV_G0_{nk zt}fSᲿ A=(IYd7@X^upDl }o$31Hmo2R.8חd0'PX 4[W=+b TĘ0bn m*:q-N 05:\~wE" ʣqZn/M~TmQ?!G]Z' &= &`]J)xdCv<}xd>L2CM{ ]Hpe͕qhN=Gl0f4ṕ<6¥yt 诗:CC/ĬpXvĮ}yX=JR6őV 'p Jպ->X B(wAG~Pk^)FNV^E7$pvMK7rw*zp=azN3_< fX]ߵ*NJώj&L3Uߣlw1SRHGѤkr!V~"js5( )oqn9ަ4<#%gϗ_n]iWNdgj4|#_$Q1} Lx&q> YOB5yYb g;LHWՒ~]iU\YZqJP++x6]b15f:5\ u[7HOhv 5;MZ ņ6djʤ4wII`-e) S $ed\ !.xeS[嫆ݘ>S|~9&!T13GX> mL2vLc|{Z.㑽?-WlkNF-,J0E&S43vb^B .E]7+֡]SϣQᦏQi1hCeL?S #0KҔH+;jZ:CmΨuf^M %UR47Ѡj޶]rKjexzG7קm[<^F6'$_X*@jsR#tإ![o+?Sra0Kw aVPAp0DHF NY02{ݲ&Mש~b H\.vpR'=3uTw[T ݇:/B^*N*ߪڳ<Q::^3M13;8Ow4X]otO4!Md ƃ l=b\;;;h%]PnP3.(6FDz($x }K=󥇩lЪ55ʬAsp]ChW&_*TW)Qf  잾D0/i&D9 HO,y- ͭyNlfjȟ)@u4-c/N*+Vxz@ "P @\MI &0("'mJ4*8:y{à&.0#.e_0MWhK$Z@v=CDDn]q&|GVҋ:tK^z# }ACѵP͌HHRG.G: eL R\Ώ:ThJ3Ҋli8ֳʆޏVn;A˪(fϚ'"J}NlɯQ}߱^̮7ґvXxXD&Rq*bCq|tW)]U+P I1In4IHh\9kW'.z$*\WFux@rHWm'4ePqt5iBunhQ]: IMIC;>,gTqeuC, YhEyDŽ. T&m㷫kXPݼī^ZI ljVXp1ZW '"ORSް*9GtKϫ3[%?g#PW=Ox iE>*jҵg@3ȇc`".w#Z~/W-@ra2RDz2T5q.8RMԑ^ 㫺2 dN[XBc:f˸ϧ|Pio23κ`BRlR k:5Xv)$Hj2\{%N2fE&nkKVS@a|VGhzY A>&ɭprbick]Ll󴆁sTǃf8-mES@bª@9fO;AkBo͚W<OdLc/fٙD ޻@܆" X9RڳMagazl\艸88V.ӛd߲Q'4_ҧ)>2gX&=m%x`s=&0YP*t`דk;Ǿǖ뤡)շ'חߜЍU+ct 4b_5Pfh98TȭגiK[g6}:yz1ƅ]} mӞg^_C.+A{OJˀ<-8tfzL_`RP P*jJw7n Nwi}ߌ?d֏ {]C9>azRKطn\/VBҐy'lATnsس;4bи><S9XA&:u*4 <U #Ko)|b\FKa$T_VIŴ"OON + JB5&T\  1 q ) sҤ7[ih*;&rmUE-F?֛vQl@$@(O`Ʋ/;!.fcW/+iI~P;ĮC<|f'rb?jjgEق, $^~3_}_orDhɓm)d1\nfKiBY,J󧳤R _XZMJuX"}5n %:= }yeW$́ ]cbC\K.Y*1q&mϻ}qYf7S;$¸z_-ow$0(LC$GbLP> _&ʑ6kujhYAO\WUkw#ÞtվҘtWsFy SѓP dEiqcq5"t؜U @p$屢t|[l953v)Z8DHxjv~iG_aJ@p`?T YOBp D*[忪D!$N˥.4eFKySe:vI)V kk04$%K[me+d 7=ǡa^$/˵Ay ~ |V] B1{X?p0$={Q+&i_sSaZ^ QQ{Qo6k!-EJe.l=(^\FQ͌0l@`꘣u{x!o ('(*#|$\TF̧O5RrI3`~co3usQ$lBzO)iQqx9|flt٣g-.$}xދqv(0bߌkPQxFÀ< @,}H4ƿE"Din٢HO_:6%XVGPyZ@I53ؠEbhX|^ /UR~ |_{w@>Rg^WHb]mQA`>cshҌDA~E&Ma5ٖeHklbn>„LMyOz }ӑz6-0_qҊ(AEcRQw*DŽU|뭣\n05\24VrR;ZJi;u$0M߉z6XiˬA!βFJ M~,)Iюj6KKqIM|`GA}YX+fna_p.UCL/r}c(`9XTT`Bq3r~h-a# 2o&ʲ'8% dX@r'<-͒~G834'M]KK"A?S8~k2#*Wݺ 2ȕ#Cj8%g 1wa2 I\@3[>B۾T`9g\NN6EwSfPlcdspC랏]x'tJvG%[ ~ad=1R]R-:#Le;>8KL6}Dq@-#2R41ha(,9GY}͘znQ\17rmϣC1L?H&bmuQ"w_ $u0GF(//76' SJb>5Iы-h U'EH _D(OjĵcQA2k19PSoߨ 5|m)Q"02+[##:5lUy+p6m)ky.>^p?Z n9B\:d:o0e-s)~"ӕ\G6XMd-yyx<Ę>C+]m0Y\+8r?o1(̽#8Z{+ʙKeJ OQDl}pkc`;E7_!GMF(ilx&[0"  "k%KD$ d?wwqUsyO) (Lm=ƅfϼ^(\%!7F^BFK1ЗAG#@)Tm}>noh(k,Yqi,'h!iӑAEy#ހ0APmH!|C(:FA75N1Aqtir]Gʦqq]#C%;p}L[j!=@V~Qj5HHe,4PLxtƁn~A\Vnx*`7zIYLAr0 |9oÝ݂8/+Rt;㛺_8hx}fY>[7uIcb+ύ?p/{΋:eBԑĩR[XN5s|h&Ȱ@bB tnz@d8sq18ؚ,߁׻zV62-=&gE!>}C֝۴C@TXC*J"` ]WqEE tʕҸ>pԕ Oyzv+wy|j|\aDpp;P !9J:f @n+( g1]*k%M w*1MD3qbagVg|H=;[,mlI^>IR>;9 ^{DS_=WBho}(#vS*q;yPeJ\`g:9 jO{>bHڃw*7Uif_@8^bċgtRskuvvϭ6t{i?b_.^.z.xf5S:D^E:jǡ@!uE#Dh'j\xդ>^rr H{N_eK_ oro8/w$_E 0u` ߿r)vXKQvMkuŻa4g"wC i&xoC + 1: %FuN Uyo.ĒPD]7BX3:m!'qT{o)dfڳ6(}kM Hۑ=zw y=qf!ߥ~I8\k87ʡC]T۽y]^jo C4ה_HMi4\ºJ7|&×;mM>!Vk?{>yE@UdIܭeH8ڤ1Ǎ#Sͼ{?7R)L^{Σftni gIB |8V-Cf5I`[(T+g* O)4 'v6Y3^~M7eֻ z=q[>U*1%-Y,,kYrφvYʩ:#8!Evxz Nȕ GnJY3PƸFm6Mťw~)weh` :l~2rj r+K{Fnib 8e3i uzFAʖP@NRd`н^ "?r+aβqsyk"B84O?CtPe'TA mN3b/ I/s+ 4,KQTqiO1s=DcYD,?#{}KsV]CbHJdz)M2x$ I`v A*fp|&| n{JKפ~HE*0i2]{*ŝɲv#^+5u[A+~X,71G]6m{+#PZm i /V혉c~(ܼU  _BG3xp JH^ur f=]u@N$?ig\{?wl~6 mPZ dbF'5yèD6D4Rx=p%o=nJ.n k-(n*1`xjVr,&mΛe4ЦK'/%ʖ/v6˚O+ Zbe w)!Mا/v54 )g5[KbĹӎiHID+Y$w_bKqChOfpVl3 &ա5P8W.]bY5k(ox[Ԋ4Y%x?lq"wVt?`+[)Κj5px!L]h(FKsg~Gwz ӅNv"D oSLx9$}K胀 ID)X9(=~鍘ڸO9$W+Qps5p f~ȍ$\3QYH džS}V\T/0+a\;WȺ"\-NڕVA+9:`;ˮtwtD50TQ(:-w<*61@pp9f`Qo3H5V H_ܢ7L nޠ5<ˣu%'sԔQ8 0l\@Kt3"HݕjxGR UeB.*l;/nּwO&Y(/ߞһrRaMZ1b^T>#ICaRL6Z)Oc& GssC%C:FIr3q%:ڶF!M<nSqxp$_߾`#v⺠^lgES!W_CrI2 0 C>Yti15r{7T&ߺը gRsjˎGDvl˹ws{!f^I3KTwh0Ak =%{N󍕏uW/uFgֆ O&\As[6NOȒ3fCAD'k )'w6:T`7\+Lrp tNT~cUw X[,宱{>H=a㎫B!Z iz4ر{Yg"/롤؆ΪVGVn 7lOX0M ߐ^gk ˈ =c/ օF%Idu05ۆ#DLroh\g|fdgF332ؔQ5SrJ**n>>┿.TGGS a"Qs= (Am#_)cLڮXqL vt3RLƸYv8ٯeboRm FNp*UouәI?+:xٵ H('EEh!ٖpx&[E60<xn8.c<.Y"T-y'C_ߦi'5ɧȹVZ!|u#\5V ^sLx0hձY~nGvpXjh{sϬ| 1^ٝ,nEٰa{jvkDt\Z3C<k3nX6ضΖĻzdžxpy&s!h_W t_d5j8dffi^%g٠x#t>,;g<_|ҟ;byq߷mA Qi>_<IbfM)sݬRrߦ)k]8ST 0P 1ω@,̾lWaU[k6+(g,BBd>!~싵!ݴLY,v aކυY3vg~n2N%Ξaԓ̉'@+]Ŷ+ΨVәϠ_7u=D[R#o,j8 lZ@[a+Hs`f]>Tj6EsAu2T¤g "DȤc c58rd̔ o&Mc(Zu$Wo1k %֦@B dZ(F&2@bS>jh  d ]kZT QsOhɴ~@[ƚ;T0Qp3+fY^@?w$i*U^APҧ&C4/nTzJ4PF 1"a^ALߞc1pKL'Qeׇe3d'ڇ1u2jE Jo捗ǻ1Z S)_[nN]7y]?Xպƕ;*ki,`Fwy*9oq77D>=ˍ X%D"3H,+ DCËkJe%Qv_~$WgUfU$eqĔƕ^f& d)qw(uXKf;JYQSF1t+PdEef|8)K Ӕ aћ=آ ax4&8n)&&Ĺ PR<zpjoyP]ƷG!A cQ(U` !g&r.Re- x%`^.HQ4H-0Dg {81Ǡz wniyd0 `D) Y{dnWd2^;*6BX+cAI^U%`&OÇXa?x/-{^[FoK~P٘,ӠM]ApAp+[R^ JCҸ3Bm$6Yj Ml8pui]3AZAyY~rqZs]c䕭Wb$P(y:##&Vh? !,4{GD*;޻-w=S7Ɠ{2h1NZ^/$AI"WGB5Cyc :?$ϫNo!$k_GBJS囎圚@9.TX6B ^c˖D%S*K<1Wc#oEd%u *ՂJd62(mw*yhN|^˸-*mgP3/d-6JW=fR# 2dž\@²F70vI|GZ3:kq؛ ۨ.Kipv 8H@κC->y׍P sXNu_5,Z yTRة֛4$c-]|- 4qf/!<xLTC|1"uL^GW|ЪiQ|+&zAwTq!1UR|R#M;A~OQ>\Y[uw555#03B%'(̰Fz/2>jӧw)Z}̈ *RrW]|s%%Xm M,@,qi˔{# ްȸ1 䜘R;Jˤ9z+WE)@b؈=•<^!-q 6U!Yw@Fpǐ$4hj. YG{ffr PѨ[0>-  COy?PA5o^+AFC'AԡTG7ԫ?d5;ZVSt^dhUFANɧ}֯*掣 "U֗+"?:0%wR?k[j$ސpH{ïzګkdau6Fq.ktYvAGqkA<^Lwp4ut)v^8ѠAlih'{ۈO?I> SiUCOU`8hxU^+j la?c׶1e&b mv ͝P赞..%v2`s[!dK,i8("[, E3SEcnx.?w\F$U۶qg{.\\eeHl<8 j=z:3'a.S8B1a$T{aߟ.CD2F 9t%b1 !#7RxHQ.gvm!)&6#θx__ZRF47O<m3 ߘFe6S 7LEjr?H8}% iLweCtnp% xxĐU9wxk#| agqêKnJ ~{29e01ܿQf3/ZoUb".8Oɲó]>f@u/ [˕0"yT7cFb2c:Mk,GDweňueCAe|+`?my.$b>d$Ժp4`SpвW91kjz.wUXKsy{jO#C837JĪX>8 N_0DG?f,0a`܃M ]^Q}IνFFV[&T 5.Ƙs{h9:6$/S%ѻߩ.I?:2AI[K>xL(KϪ7wd O|b.BX%YlDL5|—A7 TnՋ}57ddҞlu$6-*/gemjpK WXC.á36e1xC-sLձ UR3EA36\jثQI_˃d*Q(^cz4Ⱥ h74SO 9$8y<-kWw*jKFM\Rb i Rئ |6O[ULzK±jB{aQWxaz}{4 7[F zQ lJζN`ziu|s0A zE".((T *&K_B376,Z 0x 8i:+Itd1I86nh(5hM- T;?UN]%{V@^Q֦/';}d&A~35=Nr5hUawYSXbX\TB`_%A.\'Ko2A;eU7NVY蓟8s}LS :o[tSe>!Orm%s=rԭb_uS;@ A]RqHH>_\ZvD Q`''ܨғ-VLB9CAwLIU\;%ah4},JI%G*ng٠?[{ HV}Spid_S: P1DжGR~}I?~7v"HQ TRôi.c̦Z^ļ-qV $ dzbӘp ԾNu(TB,Vr(1j~Q/l_# ќB]7ZM)GrWtbG%*u3I`ג]to`P3` $zwu}-5P$&LĖ/@`f1l<vWqjݶᒙ{o\1S B 3)= F8իXţPs&݉s_|&eC&v8Z"KT$@U4['^k fTII{2@"wF!!Djmwl@}!΂-0eOhyH*@ܶ[ЕmwKyL˛wk"cOB$8A#h#>,٢nsn7*+w?0jN1- px=qqJJ]Oč)_24[ /X̢ =iB0rMff{4VG?֭ .dNj-E~)+) al,!t՛\r7fV+XmO; ypAIl!hnm4 +JL@3&Q'1DGE{KLO*YO@y5<1(Lw0WG aM`)[;W(D #a/՞8JSyHrRRzAuryyS53'nZa|(犣bmZ .ATF1c lO!YѸdbTqZ٠"PjYnޗ7L\D9 pz_xXߪp 3Eq9V@!%f&m:xLC9A|8FqH"*YmkB,N.;d4 w<-U(B U}2UQCI}P^s͏b5t l8c(Q`K.v)fF#fEK"76u {@%6"ܢ0YRET-Vzz0M 2qC]Cs\b߬%,coV.[Rey:-n$V-JPЕtE$#h xsC0l#gX l;:- ɭ0.GlB*yjc%} v;Qc7(>:+3*CVWO&fY8FY}RnJgGN:vmB-o5 r,2wnZK aAT.HI)Vv&S2rL.VGeEDtfsXH e. ԓx,۶lLozT<ze!Pg<%iR$|DF'1WZs?<.9ۙה@ ?i}^%KL+z%,ZZ8yk+)r+0opԡd9ki !ڻ l _4"Y8|pxd{QL򺷛+ZOУk&g @uݵ-wK!h{ 6-a n}JYYi\)u8&TU@)W, zLFJִ=ʦ-ɐn_ YHƀ)=z%Ķ2H7glob++zc!n`*vSʳBA SIʯjR(!腅<2VƮ02f{$N[̖!c)nM_M e ڭ -JzQ5oư#pHF"1fmlmъH:%8Jk;g-. 8r*&>;!Ky/t LN` 4^wY?$r#1Yɵw,i648oQ|ָrhF.(6l#DjAcl"j]'< +x q{)7,4afI.%0 }CV $?0! 4孥o~:(7ɮE)4+@ ܜƣǾ:dir@NQaQ,V)qƫvY5k0TU Rn"3>ULװ9=JH>oUF&Pk>|}bŪg~ dVɝc )C׷;\+2O̕C6u|$3 Q5B[;SOi5ZK|x\!dDVηYUz]j7DZi>Uzi$$uU DR -۷O7u`g/^x$ٰ"sXk^gƏeҧ%_ķ2}8Gt-V&`B 5TvGMe!&_VE"Qvi>иU2|(f4"BW[ݫHep}Gg5㛜#]ʅadyu1q>ɜCz%yF^Koز | X&'JXz2\6W/:7r34 ٲ!(JtcFT[d:⯳u{kEe]M|n\k`H%#t{ ^;_TwZHnhJ.e>hގ4AĠM٣u8XWs+rƷQpBnqkqUo l.ÿӴ&mRߕtrC!FRS!97C'm⟺ZK kP+\݇t:v@,BZWO5HKY.nD<槌rw/;bh@ A"$U,CgP)xylb\&i&Ͻ,Ϸg͟&NydB@Ѩe51.tF|ƽߜBqziyKt&|j뗔1 unV-; lARs}mӱzp ;:RL$6lDՕq}@% 0֕a1ہ 1i<"w nXUI{=KӃQ kbH&kvȘ~E]N`ȗqMwTH<}JUcQ+c CM/m(+p^9Nق[ .2m}vuKYEPAI>8]'d*JPQ.g rGzJI0MI*>E@wÆ`캙X4h݇tU v)ْMr~lybY`oiֽ#Œ/SĚ>9=tοa-N=ܳ">~yulx@CaΖ4??`}hX*=УRJAY0.J2YXU{\,y-, "ۘg&H0 '!HgH@? 'O!-yk9X'Hs gouLCnn&OG![JU=b9kd;WN137eպN wZK\%3=e^1'!HPSG8A,z-c$gNcIe:BWX"trw"!l&U ى!u]#t{gY dJ/’cdh>@֌ypdXЖ:'0Q%2qRImA4`M@Muf&z=Rr04f4[Zg=`w{ZB .ÚeJ);~P2LF]hqSFhV<7'B/R4 Jjl~֯]!gK&C\WO#{f(Mp3! PeNܟ}$N2i.J`NNs;u3u0$~(n5Y{(:&YyrTo ~:Q-8^{(Gƒxd'|ss՛;2)R&& DޗI"FJɭOn3L^:?wG8s$@qCj$v=EPp:<{_ۍϥ c(x³"_ ź.#o\*_W_ ;+LS K[Sl/r؀G'/sTSrydbgiS.0Ō$e^CKū:}ipӤ,ɥο!}o";.x9@*W<ζ:9;_PH BAF1s FşrtQ^%9ġu]Ip7<U$g3 §c"*b~ gE殪y6QųK?yKLU ͽx ְmp ;_U"%|OBs&qz=OahE,O H 1׸/馑3~?b]!bk?G&8r(h@12==1q>Sj@F&23HW?'(8Z}8` ˊ&^{ -A-|/z>&P޸Z³Wl$ZiNZC1KVLr? >c;776W‰Q.PEᆌe_n7]7x5X2dI!ݨrk&NKGhSAŻ&pZd2ڕϥ#|-Σhc}w&L.vvTgl*sqODD;<HrT8`w6dM :*77UfQ 5b AOښ|k!1QI*d_+󡉒ըA8 r' V^($:diCH5&y 䣮-SݝZ [Cgӟ[ Njzpy3ct{!HLl0X&x+\*6Yxu :[.\ NQIk ]>1G 3 @8,9~tBU1$X/v+Kq PAM?mad0vFU#+Ꞷ;Kx~i:TbQ )rQ}%Kr?CDZV/:%iUHiLgfwIMrS+;v+(kZlq?ȍq5׸%YL$W+ZJl8Z*Ճ'U%V͖~1L$ (eɮy-+$f\Gm2잼'WoFv22%|RY9D,`N'(nPW.HNFlq!uOÊ$_Ě$r92 P9# U[05͹u~^mSIl|n/zfp~a0TYw&Ee&77*(LV=sg/%=l]SLNuPsL썴#Ki_D> ܽ}_ms!؏ "yQ;ۚ5eO$AEL'mB{S;k*/3_V}ĸVm?}$Yd5®ăi~z!NG9 ꅀGZM<1ѾK|H9! DiV&Uv91S?hV7[&szBܷ݉>xVG5TҏS&Fψ_ Pc:VsLȽwoT=z;)@ GlZ9:[I{ /pH~]xܨWPGQ0 pўh\nuB |(y'(pМ?~AЁr05h> 6}# !fyo.R1Jfv DV  -ء-qz;TQ~(xnY|"YoAWFA]y}:6D$4gLVďXZҴ$[2,DO3hb'k.+Ρی&=괶&ϚWe'ęZ0NIƂvq$n٭!@r f(`ZEdw<WdI _).#Qb2‰wG*lQx95}qt~XBΓd[9/u6 d@<юy2׀X}Kսt:c-壀f ։3Yx#w#2D7̈́ʃJd${`/S3G`-={0eT'B h,O mD>(kj4ŕّPtՄA*~bh"3|yEZ16ztƮ!hQF>̈(Mӂ]PT ؂F[}F]JXd-+9=x^SBHB]{Cyv]O}y: 3HR~Ix%~lT^3{X94e&C#0U}WنR_zJc0Jf"#uI^`Pa$Lŭ*i(uCK럧ς)!YoOI-˥[Sxj7.&н̏扙U=?KȐoM(ŠBCu9K2e/qژ*>ܨMc%ph|:w $ -BiA/g31 3E1b\I ~ggb=ׇMfOlN˻ɪ+4ǗQ\6B̉:Aks ,-`0EKX\& a2`O{ԃUBPGK0a pL UC.g1gr ӪzjY|s 7Ÿ'7!eA FYjq6FO笥㷉IFRߖŠ13{yŏGCi=s b:}аL Njf5k5[,$)u0p;36J 1Q̋7u״:q="oC΄|)s D18c|KJźC̲rQY,Od:O)rD8'2V0Ԥ=|`O*v1M( Yߘ3fHhq9FQ7ME 6 ڂ&1lpì(QA<N+f|PsnD˨|*Ny#^RhNA ͒ K4LrX]1^AE5ЌY8{]FJkbcGCq@Ą6{C U5M81`D]hkA֢+_ZAhu 9;Tvк. AϜ)]L=ϊ-|_ ?V.N'Nb* ߋGPmk A5Yuhy% |mFi! #Xr7Ֆ;9WA*ܚoGcu6c JTM$K?c:A >񻕏]ǘC$!650/rU 4]ʄqQYwmG|igf$p-f +K|쓑r~v"A=]00B+0݆F٬z!`Mр5/ؼARM^Pnզ&7?ϻ"Y0.Xhi]΅@=ZBW DumD^|p4vsgjnSL^ ?节QьbX` %ٶ6C e1f\\x(A~o30>='\:R!$I.6SuaIuwtoY~(_:เcf.Z-PfEl8|ב,h䫚eWcOJ $Rš哷&p #፼8-?ؓxk%7kmkʊjt{^b5w ƼznA͢?Uu-qpe귅Mж ]wCE؎^z4f&c/l`Plxjr77v֫Y,=D[roLKJ59*ۋ7뵄7„ޥ]=ЋQqjC;"abusoa]w Ǡ=|[)q0ɾ4ޘdL,' M ^6. ?d֋+L-MђLL֏P_# H\Y'29}y!B\w}^KY[^c9qhq~W2ک:?@\&PO5ޕo̿oXUQ+sT.4_c@3㠊t(p}F12PTT~& /b/Ao&I)bw;`h@L7#R^ƪY W 2Vr h;˄}N$H=Μ 9]0! 5M.ҙ(OVX4J9hGy#L%4 3:Rh~%C]ɶawfvN%z%wEQaNg!vךg@q̧o+'VW9-XY`F̐+Fv )2|I%r`SVqvI^\ QĿQF' 8R\ZBwy,pa.E"~S+e"$˸B(Ker_R 3'l+c g+A cl/U2HJ[CnYK׮yD{% JǹnS$ƞ"~0w8|Ww7Spa _T6>7drJ1&f:;Q|WY(1^Իy,d/&Jڜu+Ԋ72)=fuu}nx1b"pr\'=v"L 3d?yᄾTE;Ioh>tk¿9pGn`VfSD|{ WcA3)!j$Bm^pFӏ@ЇR* afm:=zyѵePj?nk&\S|?yZ9й^e]fN_:kSze.C-N#޿'a.zM0 *4Y;Jkr~UW:ufkfD(lCwޮ3W*'3K-AAuM̬b=<*E:#Qh>,-(R,y1\t(nHX[G_s흯r`IIѯ# ,W͕K(&J@:0V Te>K\6"h?ҏZ !n9AZm2k"/,y| $r/T d_O3j"YČli :͖;gIgn;87L#B船d#=1eB|Of> QZ]FG/[.޾*mόzcXJ~.(?=VYb~V7z"qB/ \]fRFc EX_Nɡf+tŬΎfCV rҺk*K0!NtZ@ƽ&{/"6\k\ŲPH}U.}Mo?T]n Ikv`{0UbtLJ Lh/RhӢ*,fhFfoL-Sh4:i ofu ׈жTM6巙aUaOYF8!qcQGѬj׵ vM, d%(L0ibnwʜ<Û_$/"Vʥ8<>b%\ 0*jϻE 8{|s7;^ Lzt6$Ɔ/(/Gɏk[| -gl_=H(t´ގ\|j,晪XehfUdE H zY)֛HsRw6R%m>3{s˖M30"y[(\Vגp40<Oۖ]YMnϛX~Isix@ e *!?u/`̂߀Z\I7O"T0:d9~4)[. ݇Kj}\%m ˬqe.5U3h|J\[PQghBETQ`L~E0 IȪ*q3RkX30vC> g7Qz Lk,Kn>i,1S)[ HX;̻#l:F=S2 VłDdhuj8+m7xni&N\]SnQZ$/7mk>rV/"O,0A^H5vEʲ<` %lW] "u% n.Uԉn?E,uݕ^SJ,%.?ƶ޼R3i  @۽Ctm4R@:1n5C-gМk%ٞNqޮ?i9iOT~xA}[?A ::q4 NЉ~< Dҕw>\)!aFDil S^1 `і&)=@<.,]nisu/᭵`$}Oi8k=}qVO" . mUyK@_aÕ1re 852L%efZy4v=#~: A=7+jY׳(MW_\兀Q?5CHl U>e؝?E/ MuQ7|ߏz3b42#MHCOr)NK7 It){YY" _Wj q?Džb[V ʬeS4hwCpwgYkJ%L#Yq|#40J||vp Z!}>C&^pjQc/_[*Y$duG*"Bǰ% rɖ~Rƙ`YP/1yо(i@)T#])Zd.b&A.ʫ # ZI0Ey0f~LEK*ػ%fAkۍpCފm`$w&8D |P 3 ,wa7F$+!~ F>RAQZ!z-8^KR%O-S VJF">gRo{H<5%tS,_]D #qy}jBr%%f+> @FGyѦo;ŝȽƓg=Bq*UHXv0~^YIL{n *n'qSFk/p#l s͟)\CCsOGI %4蠞'40Ė׽K( (UK0[ 1{P C/x!QV$%u)W"A)~^ f E`̂\Cx7D՝=z6UetJLm#1j6nm;Y6f6yl\c.2(Y`#r@ݭ٫~Dag2Z78,=GޅuXمZSj 99Im^7%0\HLYSfZF”F:Ÿ 10j8>>I|.vGN=#g'nge>&~RJ㑎T,I⃑H]`G: iΟ fֳ x|RT#h`zr!_&tQUKբD dhV|B tAZ[q:^& 4wR€<9IpĊ`fn\Baז ={%rU_z(Eg:}P؝Esg '*NG8Y5~ځ yx{DRߺi|ݼ: cqNԴm)~J8i .Ez[nT]| I0^ol+:ymi뾗RI;0)@k@y +~?\G5E Ě1B5_U!90;P'Cj@R5B;f] Q-ET6#H\+WN/Հ~ewcWV} ̺"0GyNIBgIb6&J7xk坯µ1(;[4?n.ͣ߱^}LG3s JM7X}(ƨ /Wda;exóY4y87b,DFa7}Ѡ- J|Mm'/zgV] mJXkVCrԷ;gڀňݧ"N)ǾZBؚB6VE~'S#2Id[F=QS%c-UU*!a{ %8'БbFɒ[( 3)w\yҸߏʚ⮾55HJB֠C# u!B +UjPE?GdaġX u2)%2U.9!Z n4k=IBi)8d1oAdqbsڳQ|VlZI_tذUxN?%K-vXcT(~S[[| $c5AЫ<?Z>{3I+9S7Gzt,4 I$Sv]m2G+T +.}#>2z& Q7U?8_oޑfPX-_cpԮ6ŕclsX+G8R99FB?ts=[E¨/2 5w%x AOYi!]N#E;Y^qn'%(pOm/kSxVH/h;BIV0zh?̰5(\'<՗gJ"S ceKSp%guCi5DS\1qհt0xUq&ezf!j7onk55 {ou %*uWŧ wG67HY BA-\)O*U/k/jV$ q59GZ_"DJ.+Ŭ@_ Q퐃Qa58ǭM}TGAQ At,4x{EDzзy)XJ?/r6r!cRG M ㆃT0 CW>cRCe!f~6 b=ml^/PKqֆO؈y, Laq{~gdWLvczKFjejD|[K`R!:o[C,Ӂ.rc3#3 qw??m|/Sc+JI60`GA8X>KT n^D=[rO(S}mK qCrGWp+S!la>2SMjP_\f(bc][˖a'D<锳, a `b;OM.Ƚo짒۩wGSC#kѦ[',un78Or"$FfIy7WU]kfmj,)BQ-p.ZjrtG P0#k٭࠯Tp3r.66#:0/Un܈ u [k{Dx7(Gã^-VF )d):gA7fZd3{"keIBӑiQudE2,pbn&)pSW7*}2=lŕ{!@pɋH M7yoFFpm5~F~l+4w!jlx nB:jjnK_:77{un0la/GdM= ֣+ /9h:#šRLO.1ogo tX+5)iJe-*O˞I0R*M⇱BaQ%m2t~%Omc9i&\ aY.h@e(;hduY @K2۳Eu28l}M7+La0n|2_y'0DPӫ|s~5I&c8ɤlU"Qڙe5ވPc)!6_V"b$NBu5*c}= ;yG\ "Cڄ /3Dya'6UpEO]Qp_s ط% {eEf7C@/Fe 8 y$WB;v@0 3vJmMp)P2 zz 0wǒEItxzY "^?&{9B ],1N!;9q/0oiW$}.ko9>wفw翻zKq}$Ö9iѢop|vܤ Jl%V^ H)OnFzgJ‡ MfpuQ3ڊ1~xT?&0$hvչ0Z,vUsP6`98vWߖ#4}7QGAO164gG}f&d`7>Lk^/{Rza8n's<!JEd^yf>zxL sN;*SJrdoI10k5~1^UwY'MXxΫ,TYk N>0.^᪶.7s_?2h>;J_ȗ^18]u i,rGչ9Dd뾣#ܱk%ts6iy]sM F'-2:gDY?RXo=o4_&b[ˑrYݏ7$~"k(-d#Vm2iFyw1&aZɴ|™FM\6T;ԁ|j :z@Rx`MÎ:7?\uny|ׇԤ%-5nn~h6;Ih W1c?b U-?qߋ7kͪ˧/L6skyԯj6^рC)^鬏Īcݭ.:ԍ'>}ͭтE+%b ԔLC C^/g#ۿuӧ+rLyb%27~C lfHsēa:J}F~7H5kim',Mx%V;6g{ÒHԤz◻ܼ~^pᲷy`DJ_L 0@'ݍL^n[%eV?lX`xcf \H':Me8;WXF[!uP /<'h=p6j=:Wu U6 t/ɻ?f"k_7Ro~H]_PCoV#hs<; Y2i؄}cb3HU \='~?]/d0xbSl@OTjy9BeA۠zlMy| !LY%0S? `×~ؘ@ ]˒ù_IնvtAMNAd<h~cI-p._= &PvWiHrw(YV꼨F*L/ TT(=s_ZaT)FJ6c >=juZ>kIķ)@OJd>hH3ulƎ^z>!zss&ߍGZÙ"=  w,.Z KRM Y"[ɿ8gzm%NTa\/=77xpWF4}6Wk} m<)`)-_uja|W(u)G,H0I[~gf)<9z$$7BoDUiQ=_ _OŦJbG|wxUc1zgBOl*?hxtJWmg!/յ#Z4D'vNz2(J|FRu p8g^7@sjR'0AF lq6ccX031b¡`u^2sF5jcV |_k 'Hl=q g-uH2sfNA/J&sr'HklPEˍ{ 9* }˖mLeHڂ"jQ#}2P)9o4Of]sTFB,f8Z~k٫mVtxYn554{၉''/n[O:,z)q!6'z(\OeW冴mS:QrmI}մDG &[ײYx@9r.oS 7M R#;Y"xFƛD\|&mf^J#'K5wla9s>sy07DF`\tj#Oٿ;zz ;TcBiY VuCR%QLlVVdZG- Y"XFSQ@x6q)4Q a[ $@Se"1fzɢ7Ib<~Y7p,YUoޏ_ ,Pj DR .gWa|+]FN;gQ}GkG8R_"S!킂k;t%Hsn.@86CMز.%8s6h\@r&&dS iHkȌG6ƹ~is;x20QtZ e%$ѴrR&&<|ץ_|]oEJyoE=r|rSgEOrkΎ̌)\={9U0LB,no> !*ӥAhn>o*ʄqXx#EfLsȺ& K}T_c4Da7Y!zl(z*Y_ZN &U}b%aft12\bU2Db麴 M{2ڿeכۚCϛ뒪0iռLCUPa 9Uj-J1=9=evbkzƼCl#~yyV0ܯJC[*Ǜެy Xyjwt{z{RU[o|ؘxʵs|=!VQ^]B F 5$9Lg5mu{Ծ9f;4gPBx_3;z\2W#?QaCRƵ t2욕%v5i2t|FZ<_X"4º 7.-4Rj- n1m@S'R[At{Kt7]F渍`ūq: ҷV5\Ƞɫt"jܰ%T©>}b\ {J[>meW-DOLv/T!C얺DCiiFwvRs䕜Qa@K>gGY! -o4ͮS` ش}odzU[ Mh]qžԒS8 l2ќ}*jȁ"Jf'l:Pq8).gW*^eNHtcӗwc23ΏxK:彟?xHx؍{(]Pk9fI8?Y}׸<1_U xP"u>-DM<_B=7Y]"?HZ*߸T+d'7:9sp>Jhy +"-ȣN-TilDFx .|PT~IP( ngϜO\_SVh `x:Jvyo"(BUBڸ5/<{{-N_E ]HY/`ZrfPOQ*mme{MN4< +q`#e{{'N'=n9|~x[!5j$]$Grq)vg_ y Nr6Mr3UmyL373d/T'7TAiWNAf?TN<]! `4(ћo/sK_.2]?ەx#6-_斦! >Pn(j؜|[wJ3NrSm%Lg.w( _KLSKN0't^3+ d랴{ޙȋrGpUӏ,صVW4-O X~('CqKsC".3tWjz۪=EϽ<5j m~[m-ȿ<$%q&mY/~h#l6 5P ]XE>~cSץ; my\KS,`'PїU9ܠaa.AqwTgϣ|w'h]*n.JӺ HV(v^}6<&ut9.uFQyQ@*g|GK,ݱ~>|0Aӊs ^aH %JuuےpDQ6FrLR+KVD 9@YW$j:KFϗ'̋'w3zL8ƚȺ7 ǚ E)wbcb: Ԏk"mMEեDyvC589A_1 `:f%nLڏb5NJ%J1iIs8Ȣz CuPRic.A5 Ev:i7H2|D5yXV(4 tN.%>r:!|-M?a`df[I?rw Fht. A(r'vcg`G%K}8'F{P.wKRBqiAo4 ۖ}Y՜Rf#BNiBXh@<1=j-M\?8guXV hc`ID o﹚#W!"B=w;pMx ?huLǪﵟJ531<N^4&yIW<\6es 9Pg>ḲPpR#!6-Zv+IhM[ub)j_gh8h",XNiWš&tO:GC #{*v7c/jFTa1CY-^@KJ^Ĕ *kX.ԋ42f4QNiMRd0Tiz+d zkN yҍ'XӋ,FcV=-GxeNmv}.䰕ATocm!lգ!FvN}7YʸJF?6vVWȓ\ n/cjֿRۄ{F\^ sWJ?6 Vu[&L{pWJ ٶI"N0lhڠjO..H%@0YF,yBGENNq&Ҭb,GΔ|[EQk9'Cv]' eQs +( b 8;L 1`Kks tkip01~Tb!SM R,.j 8ctT 0;ŝ_)VacxN 8p&쿟t'G#嬮mH;U-8̦?v_g1Ǿi<̼\y&Y[N\oM9c'1wۄA\RׅǣBRdmc;&[mK|D0'E}gACs4oʹ{g w~#f#D%H5Ѩ?rGd3zPqW>/9šѢ(_|}֙i<#0uY!bk1LM7W)K K9nhV-}5x(V#+̭g',c-U^0:a`M1@){XuвP *>T##i[ GF0vK|Pw܂] R1={3ꄫ.ExeZl c󿊯Ƃ(`K}Ft; K~'`#>*^MJR}LPȧMKq1'6KI\!Ts()Uǚؙ45Te( z >H+huﴟ\T! J>:SEH 12/Vs+\wQb~hAFn}!ˮJJnF JN[QΙ =u|s] ]J/4H& `NETjpz#xN);j c {2C`t F'9i08138.~f\`/kWï F@r?$Z=IWSvs}hVE'3GN_of?Zl;w}|7Ӆr2b9w=dr|-M" bc&OJܲ;0swn&.L ™fotJoI2u겐^s' Fm\bz\45؊۫U8q5ng!u8 ̻gp _}=x>B"76jkoP,{箫Gv"T0g08V\p3R=|>f0B@vz4E1O3ɘPEþvHu&#c2Gz C\^xvef%#؍]0G2W St eN؅/<5%y%_8z+7V^ ÏЗgX\DzɅU(E+Hb2%QXB]wg̑# h}j[r^[aދ&NqR e\HLrí}~^$-(/z[١7Q uڏeҹ59E8jfh0Bd}YhHolAܝy&2”ʓ*[>2q?0Mh,T*.wC;\<9KElhSg ŰU|_(<"k~n2ӚkV~rg80JWx9*SWxk{ѤC NLq[z33fLְΒbg Ĕ{ \> vuczhB65])3/@Kb_YMf2\4j[37Ws?&1n_]ho.2t- ,o$`R@6ƶmF6%~s_+>WY~&J968ƅK]6 j+018VBQXk4mpέ$2S9xĝqVAX$ٓmag%L7ݹYK8%#Dr)e~a t`)TL:!r"x>]EtԹи`>û5Ϡn\SW{~2!2Əӵ: aQ o@rV/x3HN!>647r55'OwG㒂4H|rt,5$=0rK*kNJō *LW|d|%;i9^LGIi}Q US_ ,7#c'Hq,޴fV/޴OFZǖ'X_rR;3>WZiz*~1]uJ0&="dtEd`lto\Ukr͒:SjBm5*id<:>+'px-v;9n2\?w`B.{m.B$1^tTy:ē\iDȍ#4yoj3 r1|9дn:WP[/WEESr!_%/E,pNoK^՟𒶄 yBa0B\Ïk D?d Kztg.(q&n7_w?Ǖ8lީ~/5;aО<\?1e'@\Z/Vɗ:Fې`'D 5`f 1u#\TbN #"lrTZĂt#uPN.jJ/w>RuVeZE֡m7rUik.qLT{Zy-jF[: d.0 Z1Uc 'P r7Zq@;0k a0|%'΅P\GtrWSa 蹆&qQ) ٽާX2po~CQn?=z ,0q&h(9:ldVzJSZX@K@je%Lr7h9q`gc:pAo@9 @NS.( kp@#CE(S(<7̽rAkFpx-n:U wK xoQȽGo[1ek2݂9'$H33C(GŧXQZb.i4W&.N|&EU,fonMlt^8F%HLk?hx1k, qLXLL(0AxeWKz?E4]|uNCRVݯ3d0[Z]_>޴jߕ7 Zl]JfnLR2N6θN"SJ@b$A(ݞ:Qs˰6%@8<E4Kzۨܡ^Xف;':,u_aJQUk!T&.ͣ`=;I&†,(5& m^=p%stE;)8b.D8F540ݱ6.ȚEW\K_$?[j#ݠ&9zL(jZX緻8֏y:I]:{cYVJjvπn5*WR+C_`i\`1弉[$v[Z@=,Fiߴ(鿠Ivi" P>IgRݯױvO MvhLȂS[;GMͶZ8sɃ 30Ov[}59z`lFz |G|oXV2MK^MRy 7po(2㨖1Lw~LJ SLw|64"<uC‡uoN^mm!csxmxmkbJ pix6 SvRZGgʧçUU`)H:7W!1j,E{fO.#ɪ\/|tP5\`|~6VSԂZ ]ioy"pfKj$-Hpm7t,EyFW6m=L_Эb|bMk}"wz1.p%Ka]9~[:C>%"nGs@ N0cH4tWs@pl[oH F-H} S:GLt[1CBjcmk8J.0)0u29h>/,CGg?Dg! Y˟+R*빿_94=kXY͋C8Ga2\߬`m5W䣱w*b.Jp3?]艝;rcdW'5ΚdDCKO +b^5mQP KU,I~‡٘qPA1/4d\UqtO^Ypj08KD1wíFK= 8U~CS ܿ->>_IX.ߚ-~v`(x?W}܉+'ƃA@eP!owfq0Rؖ7j]{÷Bgfv2`vLЋ\3 qg4`^ @Ȏt| H'qս% --Ed&޿Gm=RU4SY3Arms Xw!V=:6ԻƒN}-|ŠQvڄFD=)AsAKLn0~H kЄg8cnƼ9I;hް8^F#ѥ F }+`t hG Z C䇻)PHxDna`{z( AbE#Ħ1f 5BV-Ѭnݷq4Uql83`В!m]Fg}'xy=%Uk 0 r[ߤ|Ok2l^RM (񚶦#='.5+Jf֋>[6R{6cQ :8={ě{B\I7,DY&ڑ XF1o*B*#g"3W3ա}|Hвd;yh{xEZA(106O8iFw߸lZ*(rAژsSoaBN 8xT2@8Mthe-*|B¦@  :Pzm[ Ԍ2٬vRofKޝNQCXJn.m^5Vy|HzaِU !PN m=-.q5p V{1HחO,bڙmݎnNKj(RIL:Ϩӵ WcD/IN$V|O`aŸ18~ȝ8.v=EO?"-'=AwH ]Ϳuw.WClj^$6䔩IˤkRyYMW;O!%G얠6%dFcsȽMoЧ0RhqCOfE7 iCM6h,jQulv/F9Hx0njaz٭D񫈃n]7,jW*ja:C?O(vZܼ#ĥ۞\Oj *` 7|NK Ѯ$VY YrdeS]3Qr0{+j+n,S#3Q+{}K߄uhQeգ+p@ ;dӘYKΠl" 4ZkhF:bVoBK蟩{8~qTxfd]S%k*x2F2GvKNCZRwDpaTJq,;Ykh|qlѣ0AUrO v7E,RD8'FOY)/lDЮɉ$1v"_DFxamQ@.wבxخ};PDRa)S ETS|yDSGšD%v>YacZAt]⬏༏v< G0^!SvS Kl&a(&(Rt\ bEa[pEoo]kMo#B@6M<~y~Yq"^úP*shNxEFUO~kv;#}RHPG]&Yd^B Z> usiro€WC*p\xy͈%G[P}زYJ/:;D}Њ¤wr}3۲.bT \9Aa6#J׉䉦:V5L8\=܎2]E9dhljPp-!? @Y$ cfNT8kڥ 26׃ ug˃8=VѤnYi>M&'V7w 1)eCiӵV>>aVʈz]4j-)Gn Q6canC9d l/8ؔkčCd޼$z'sκKt[0=i%7Z߱OC?:V_\e,T>S8 XH>-_ x&I8]A~{z.8dxosɱwgh|dBfpU{ČYgj``-݈4j bQΞ/3>5k$:$BQpվiKCyB;m"u[oh\O2Sg3MYIt1SQ;#kkaHf6XP3HI}co[GfH6Ũ@WMQ+\gWo/٨MG~Ux8Ey:j{Q$bo&i2zfK5U%J Lsh]:!^ JݑN[#27A=c4faV]$g)56[ΧO phBu\E$!-E,2Y"`_`$|7G"@V"m}T(фv]_=\vr@MZq{|yS/:+rQXCvenE9%,:zs(HNPm Pe& /,cz%Ǡ.]EJQȖY35 %x+S,nmI\~ɤ5ODצL]~YvSP<~boFMi%>IaSWZ *KSU gի'"F'ybƪ *gOy3/4K?cʂ:Fl<^cNЏZpc:n_q3PY \*Hb53|vT[t#<^EoIhrzѴRPU*FvUgƚ՝r$~xYlJ-W<* ȏJ 9H!PF)(SAkJP-(7ook:c:jEڐJC O%y)oK;dj6=(ۡL]`h&*^0:`Ъ]Zآ?XSՍrR»Wtܱ:6ϚFÛБ߂+22z&_5j^WEQ'09QWDArlRǒ,CZ7ӏ%<>-3umUFZT Qf t݋p_&f_3 Cn;[ΑSZ['ۿ͗Rv4;n&}?v%8-H|j3ūDSі u IWK3:faܼSr|mdͨ5w9 L f`'j%^p9>;R4T\Í;PwX"KFk3l>\_Tƴ> ! NTݖאy lI yB$1{:ntFD62ϼY\A3j-_o;ֱ0%>Z-%.Wu[dZz`BERau`+GT+Bݹa3zL fKH^L'Lo bCDA5bkͱ/ uj9խ~'JV*ƙdqT1C̕!P-Q엯- HE+Zyfv =y|{Arh;J^.8֘824Rk]UIƁ_:;.\6"O"YvƎaP,t9ßXX>W8"mj3l@eV}0\Ӿ䎾蕑}>zSȼ5NL]%z\jGoo[R ӳIq4'fmC`cN_FP荭x~y Q -U8nxN<~!L<97{ <+ef2Ԩ"UH] x0IwCڜo;ՈpM*D֙ Y})I dgel$E*+H19`r 屳 Hk[{1=쾹(+~?"< xWS@:;[੤rm ׈ 5jY\8}e9j/ iz[M#2y\'p#@^ek?_8G.:B{cBRtYtgZSi"*3! 6Dh{7~ k"(zkÏ/^Ȅ]\;Z48:dX+%{Όi u 9qe:H`*lor 뱿``|x&0C1w[Yl]zX=֏Crj"hyl{d-k,<@Ϋ!593R)+SkBʆ:2c<x){CDKt!?HOTd½hmM?,?s4Hy] u [ %)늋L PZ%UA$%O٨of+'_ :?7'[3NFю(O23b4kRLT]} zP}KlD);<"4z&_Y^;PCҠnp'!;WԮl 0UdNkpbu-5Y\ p*֣&'c\Iycgx5.A`L*º}XS}"n J7 ! UTJk!iS Yb%7?đZެ>V :bXs^i"I^&ݲ!L9*e s/QhOP'aXjf:_xJ$=3Dmt5  FI_gF]Gt5z#7!$qdGzongc rhX]K>F2fy칀Eȕk)MRHOtvZC7Ѭ=Ayn3߸'>S6n,~La邔*/z$eZ#[JpnhD>|] :lk;6BF4CI D< |7J態=p]8/^mfhWJ,UZC,UWwHMbX*yݙGיd}u A ;RL]5k7\Dn3h(L%Qt V37]!w7"sh(F\!C^ZR/~Um܎/te#[|]sXMQ]o t[jIqT8+ h5א*L.6q"/4~#*! h8y'fH{bGjn|MeuO}y<@W`Pm?Ev𠦨kuE1WJg5*LFZ)-my`OfA(*' )ڃW|s^ύ r$m)'>f{ܬY[A:8 96:ֲ) dÌSsơ$|w=EE.#a!ۄi>0t0j"/ @; Nܩdәa6pxbTi]* iAo6~S+{xgQb{li>FLc 9ΠmvO]d*`^' W(,Ңsct"A-#J82I!N-aڣEtP[ Nw`޾r96=ТQU>VUIbܭfԕ]w*ԭcUN#VyDnȸU\D(7eZ|^M)BsRSʃl=D^~hHzh(O%#c| ",!`tn( :yУ*6wFbl<cO)Jfs^uZ̄AoܐZ+j^t0S"(D ^} 'iWL`0?2kZΜj^8{*3d N.Th Վ*y `\=JeDb0{- JlZ @P-ƣ͆SD=7px? wȇ+~~ WAz⩸)"1IjOZU:c%%xs;4E'3>Z~46~E58X]`8 h@?0*7 ;jf\ݍ4l?u|&#y*dp&P-sc#K uxw)Ez3J1)qG#@XQ>1kДcB- DdӍ`-R]A L58Jw2.vK)fYWY~I>, |vPZ%]ca ,fҀL˘ K- LS3^N?/ખW Ð-ȗhBmd5g!  ul1DN),5vqSut(Q>iRb)>Jnc1W#o)bBoK/>&f{r%:ȅybk3nmA3aAPȥ$JֱXI xJcL=g'ͽӧdN3wF{gt.3IʍjYt`D+  9Dh8d;_~Ӛ\zXI3{0bYF脑”iWS)4NLjNXN +UrP?47Rw_"' w]c d[r&0鈼nj#!ǕdP9wX;, ~YJ<<Ц)/`oD1$׍"] L߰ 5;rd^;jq.U3Fu%K{O1-*0kXO5-B0|L.)RdڀeʎFu]T&''pq] 6TݒLBqB3YIpVE!Qp1oFRPELC`]#-Z9nT(,:ioEnGV5M`6N\0UI##t϶!iAGHb_xxBMDN=>*I  :yctaR65H⨬+Rvx_n迌~ܔi2l'V“hjJJF~v}W)Sj襸nAgBM3>:C-pN78* Pbtcd]xu`:ߧp֝E]a Yg=$څs78bX!RÏZ=Vv:J *f[4Ljă>ԎX|Qr[MAI<ԎvjjO+D݂tBUlTdu٧.hK/|ҥSmyw=s''8WT(۔e@ Rઅ(n1)1ؘvˁ(x\<d=7V595_M;+Fs,@zi%AAat"x9L2PMQ8+H߱KMhj̆y0ѷJ*Z ~DCĸWE}bZc \B댣Ҁ{:T谟TLH۫mP2ڧ !Ϳ uuZ2 bgD$"yƺ;M*%) ڲĊr8T$>(}; #Ɲm"3q v3FILeSk&hfp؛,-r楼`4dy\o຀e.Y~CmX,H8ZT$%3Sưdg6?t4JNQj Dۤ7,Wl%*I'^R罏[ )>5jY$U[ΕV&h=K$v[Tه~%SOdV2:ۦ~xa,C3|ws,`Ӄx-o cܬjfI~/VTeAoKLкF*"7~~I+>J}5ֵhw2sqszCv %\`ȂSdpVtfYϰ;·өp.ʈ2%J%'I =3"U1[^mY@( { % ?}h))JI;9 _S cPDe-[al2_8LH8 y~C hk"'`G5*gH,z;VX_8Cg[\u,Bh4P ыM9*'ϝ`GD% WHKg10].WujSY _/ܞd; f̀@yl|c/]$-L gї×BgzoMDb:ԛ!n͡ |$~J~u]%W- CTArw ̼DHha bFip2.5GP#k;ce38|K Fcχ5P\^tn2hJ9q"~m <mf:X_ӻ͞0e!]*K/0RY:D Xt]lK2{])wIėǥ]0O捶@ D5NC-m,e ObRTLj9!nW ȘNZuhb :i]2Bi9jbZ~[baB?g8>o8295KplgR$Wt4Wt25Xj:O/EڳFݞ L66`Oqri Yڮc"L1-x@CRSIi9#da&a\C10&g%o)>7iI;6N=.s\qxv30.x6u4P,(ffu^ZIm7p療RR,cPV(B`fJޘ7;=OI;Nqw*&wķfH}rsW="K%MQִ7~f3`yy #μ̅'eQNoI|Yry$‚9دyj%o4#WJG@0fjytՒ3A8EF@ p3H ebQFa`&k hF7ԥ=eW Ѭ.If&'r$*UkkS6NWw uj+?V\nʈ&3O£Ą%>9{é*{xl}E@ ="ID*|e6L+V>(0LgQJZךccOOv,|"+y8TaC6&'y8oƒ6 Qe]P eYk+Ǥ1{zOep~( ٳkZuX#y'QB7O ԡ~˚n8򵶭dz!le;#4Cےql(Sϖو_njh@F\UB4)ShgST5H5H ][g1GfE:OL-賋\Ab_>C±'@=?GO |K#;]'ǢXJ;zhM`W3+ 1W6(29oy\ ތ.g2\H\w2j>m 5t6,BKce] UO$`=|#!4öoV'f< ^GLq}^o~3t:=--_믡`|C񛲋ut!!i߱aUG. L4sr:5EevjXѐ" $+`u~̟سL.-?GrT8C<zJ9t-d5'9ЉQF6 NZ?}5QN0!],!z*sA9:اP6mbHo;3X0?tVS I-)95% Fb#[C*ՠ4&]#W͸̻jzTӎDU(FGy6a]Uv6jERv/OEڤ󧟲t[|[ĽŬyNb֭ נ*~[XYE֡_<]n_srw@hg:7$;]قs !ti--<ٳJF^*?x~, xyF%x&<u n'qu𭩱Ë:C(5Q`; &Ln'fs8[o Yȷ!=*gq~Gƣ^\KՑ 8.mZ FoYpBkk.=k&]`k=>LD3Xjױ0MiLGJyZW M XiLr³`Q8̆s`.NӵIAE]$)W_ F2U,l{s } ${19 XvO jM_t3gnd̜d1ڮ acvIvb\QJV\DD_B4ZJ4/kmyu;it}:"^:֜:}:F}H X=r9La dII@UC!Ii[r7fNs;::ڪ}pM5! zW q4xHccaDv!gw{"\$fw$A${EH:6G Ya=܏G~_}Ė<[ΟNb&^}(5&9xrqw7FeX(&4^HMǕ&W2'kqWL[S𬏅Q3$7 To(%ZCd3u͑ VQyx }N.*-#VR5z Z\jM{jv?qXϒ%Ywa2!jj0"ޝ.5[+7.d"1HMřwκn7b&%"E ПmTUOC?QN[FS}a rR,W}NG$@C?7x+VYJVB`p+M~:k]r9\?,ˢ `Z0`ꆗXs(@(ԥ*@k \ N{H /uosnҤdI!,I?~/HMqcmGH 4xGcӨoLS$g:ܺ gNjX ⦀TÐd#ɿjRmgg Dwsiź?F¾ 3tJMRTU\5hpnvE 3e3A@O<$S+с{ ry(yϜH`q;^(˪ `-# k>5;Xg"5+̾89~rf>ޅI9K{< ɉ A8+KS|I|}&+Z }-oeun-ET )@ކ;ʙQaV I^vdgxgO^oxǐ©b-A;|3bS%˕ϼz[f*;ڈ&TWsRF PU&?!cۨ{'֏~I83`<!#Zm1ݐpk \#ڄ.sW\ Óf:,.{)e8f=8W.$'u{3wk_, 'C|wzG`Xn,'ap@;ٞ}!-^eTS4J+P-K|~H.mBeTg$rk/>̶c9IQ6W v{*T5$~g3W t@c/-~ mBBÔm~7T=),D0voӕܦWErq$cCw88in{ ݫ2SSYEA!ohZMQr0RZKį#&_Tz&jP 5"D,{oYKf5v٥Nc@iSnKLcqĺJ]}Ab,2rG52=&7n)ӏ)w|8uͰ=,@>Jp/-1XG@pE,_E=ɒvbd7 a2QxT,̻j5a1.5g~MNE uo6؜3c%2,UI$*Ks?eP[݋j$)߆|s+Cmp t pTuccM}?b$&tr6:;IUhGHUN2d{j@`dPxo9]m9DbPs_#@WO uLr>B)3MY}Za|sݍ>ri,Y/8(8/glwd C-!H(t4Zx5d'0Mf9#:X1. mDd2E3R|P)ctfsU%T}} [T ,FdZ_9v&͝闸8|`VCyRMKpmߋWv)<Ə?ye)'/-('߇;$#ĺzCA+9ݾ_ֲʜ]f[;L8`)q\ҿU+x0)}6qRTWz|e!ٴr7 R(gMs-sH2,rᢚL|GZmfﮁcKV%9=W:vDc9qz2O pokӑ}(~c$}|˗N幾Ajϼ_Q¨{coIo{ls`5S{ak:U);hAcUV7,"gKwvGFkPS24 ֏a;H_QkKuI(b iRo6\mMiE7qzQUBkVhΟKZ&o m*zWƨ.3 Ni3gòvG _yY̺\Җ^24H/)Ríqlh0q*O?#rLf1ծQF$K" Ps`J+ˈ'7^oq85dbW8~%yxz2oOW{}PoQIomva 2ARO *ۢ,{ z0DifV;|o6l&n=WK/ĸ?ri!$s"` Ə,7Kf7KMM;]1pujDZ_y.Ըlo(@`9 #o C ߘciD"q7BpJSbva|X q <Ђ*}FIʠӹœg3w0h YeaȘҘ^em&Z&gV%Ӝ hU]? L{IEE(BB!4| ОrJ G,!q SWF$g 9_0u(6ҢOIQDOM2BPbj0 YE> T6 }Xy1p] '٨.㗯t\X1­ ӎXxQӉ4]'N=;^\K;YM&Gv|C70߄d_q$PLF-PeILBZv؅/ppPymѣٯ X2#lZ2"RZӪ5 g^K:8RW}l·e <׃{]si2#8ǚuH5(Ÿ'HM\≸.onǵ䏹)p&So։}SeL[N\•N2'̨gyo2@Mf^8 Pp$pKNk1KydY輨MfgY)9/yW+7mc6j);Y(|-/1swXbr)YMw!p31Tr)W\8ŃM6g]ͥYWI״F4+P-RPe 2ʅU#O+o,t;ZX.k̆G@+j+~d jOefgȸa+zqzNk"A{1 HB@IG Njgnlת !w쯧}Z+*%D\=M! `Lԅ L+{awVK Vm0]ctFp¿HT 5'UtpZɲ.s:!m7Ra(sx~|C9P@ ]vC.r#І]1L4aLs YzN1;\ȃ]0O6H$o#{uJ* V78Z{Ui^(ʧP~'dub/D{̈́n\ҪciP8O  7^)GsM3BtgmzF:XV-O)ke23>svRTӫ:n"\ 4Y {ۥܶJcJsjoFJiёJ[,x̭Z"YO*xEVB6K<)0GlDi#,GD ~q̼`F3#PK7hEW& 0LUdrPOTg;v}ou)})] j:d$0&UL \)hk7ɉRG?Mzݓ)x8OQ D] K_8 SVo]䒤` J 8x DO@%xJ((/YQccoe 4?%Pok7tqMG-Glx|q 2"~$ĸIrWM&-i>xeAkfy*@CkA -\$)Һ2OY٦k\S3,Ms稲 hZoKBY-b$(BZ)Lz1ꅣn`;/s]} 70/\3ȱ×mPBlm\'f#_98}+.B4jFP85BF^l3wUYT?@XiƝpKlֶhwb*Ԁys؟dPGx]M9J1U,s'q"-22JyM>ƽǘ+\+D"4P/Il 4]7S+2 =8 "H([{e5/VhœKod(<Z [sh SXmP U`U+6vƪ6rݑM0j[{T'fJ}U/)c0`\T5 T^ ua돍-FeN tFj6aɟQ"h9:PCl"A>'IDޗղ۷ RO]=}nc [1ftPofG=4m6 CԎ} 0~-|ӱ|U=S漞!;cCPCb2~u7VȄ}w4bGq~`۳KҬZing5Kԡ&']X˩X`$4Zw}½<{ȽŔ~>pj?5K|1V)YڹPJ]T-!zƝKOl<;OjD=!#Xb&"i0?Y_~D8䛹 ZHf~>NJ dj]R:w8ntggܲʆpӛ^^wDnzf:FzG8=1\+3'5zKk웰ˆ,djHց;SϚ1c KQtߘ}Jαۼ1O`:Tړ4,QM u0Gg@eKR `$[+Ň u? Jw,Q'qA}(.(tD B+jil/X݉V1$:"ɕ`1f7 +痚Cq,?kk)Z${B~͔25]Ė{Bj;#wAL+W˭V͟y1uag3ebg|ݪ4nU>m Y5+Liz%}֒_yf(h{ YW!:NTnz !uE_5 ʸ", hBbI'Iu[>ԦqvOKXUS3-P~޿U;3Ěan/~{_oBSaV%=g@jkfRLGyw+/ĭ7M!M빀! ,X$uҶ6l0} 9\"A:M]~ySPH{]{QJ tFi򞟨3սUF*t~i8%3h.M;;JaO(qpE $v&%߁Ҵ )݄mjo .4*7,=]}G%Z1y|gu,#?MGYP[fyc{֓GI"6[@Qdyћ^b⃉fgOZͻ8ǧ7uyQ2x_ CrN1te !g,<%Ҕole,w"6 roZRUW_xY=.c*S|޺WͿ̘)C-4-I&/i9J-0BH$rȫPmQ@B@`-Q?n)\\f"RҾkIꕐLt<^XrKZ*秸'΋5<4OQĄY=ڇ&{?%A\`XZJ>p+êW+dzR6mF>D"Y-g3lѴğ \gXb]F&>1DEK-Ct*[x P ˻LSA\0YE4Oh)na`c !kA me6!t"|V{XO8ܔ| _ ݃jt}3&WYpvȲnlޮ6Y1^>/%?rG7ڲ Hq`^H03u<@F:in@9]OCAUDG} l@5/'*yMSo ^h˃?#)%RV>Ycck5o; cN GzXS|% {‡ L8\䩓cp}Y1|i߃^}u b0Ɋ#0ʾן'mi#CTR-M{QD#utALjxT1 K.]7Fe)>2t$c(`YkrKdT_ߣ[=*M;;|c>xިwʼ闽 C`؇u }?tnVlq()먣,,BZ*ؑIw^TB7}LE2:a>zcc3n!n\>`\}',ʲrd6ErOFD|ZMMaW wس.IİU;ɛ 鴫fH]>ܓ'ya#nZ|ug[9o=h\c jVTv_I`~tjdGM.iۑ-9[qqzu|k}M8 2cpd"6<,,gPڐs"jxSfD`w%h 卮8/Y_l%n nDPvCA軇I. |fU.Z0g%Ht~;uB]QUzz3}qhu:.ш EFTsMK*Zhnkptqbc&uM{S'SR5H24®bf*qjtnc~\f=E GVr"4JtFʼn"b3uV%kxzR@ M|]~9ir_3é7- ;ar$.-wONtbLQM~^YG},뷝s/hO%W.|?!k} 4YT"5jStYtuZEU:&3"ғ97 B-"lGVEt3톭ZWph)L[pHAڲ%Z ^ 0#|CNpGi{#>P>NО >ٷ^rwWbY G&D5Vk㙛W {ab^9tXjߧ>68`HLCY>W?fHQ˰ ; /8@"<2 VkKRdB7nɬNI]YN@gttJP*1?.d?xVK/|gTK=4ǓG=YYtnjXNEedk|ȧ? ̤n8:u-N7p93l0>Cjw"Ӎ JbS$n%+wVM]`hbq"y#v%A\_#|C;1x}!j&]XR C f%cN(¦ZL3[md[;Xc֦"T* qv 81eN="iNiumۗ]`2hܦAʶ @b#Dr[7K/N RG!nb S˗%2= ^*m0(WyhdxoNmAF) ȱWI`4Ut'Vೃk4}5,ap'msieJCJL.M6#:զ 6¬ZE:44\'bJ5 Q]Ihq*ct]27[9mW:XT3\9F+D`rv)XA)ڼSgAJ{hY`>q{2c78V\ jvrб@gg#lI>fšK>N[9SRq%S&d&dYu8!X&,"_j@C6.h' ,T7W99Re/nhA"VXE7zy쉓rZyM>*l(j?M2€t<8I0~;o(AOS" ;+U-/RGmX€5NyボT3Z{(G ˄RPħS)$0RҌr2 m<5u DUO sTyᆵ&9mұ5Ƀbş(o+//k Km,J4 Di⢱FE|G95ɰ/S~q*7jqYTz$`%ǚ MCRj'i9"1(z);\Uz$Kvwnm-S}rmEn-{9Jȟ1%fO/@94VSSrQޱDj5?K`LX7LQNy\]ey$>kPp GJ<ZM\ml4{OΟ0N uH8B(vq@̂t-gK'V2GA4n$D_}h\>.m'[™ o؁a[Wv9KĜ٬N8\*C $vhL%1m7) tN̞r>v=9\y\gj 5vb\;)[P2z~q7QJL/b%nR@1WvȃATL#U)]ɨ=3dzـ&ZE[5֝v tAY LO؞ji=ˀؾkPxtK22/>w}*j #Ӣ :EFG;WbExj$T+`8u92- &ܡ>hNTB)S/y^H~_55=3StLg2"5:!sHHlÝU.ݭȘ&\z\m3 \C6K|j4%-M2l>NRKŰ_urIԾWttfJz-cVw0. 'Q:=={*C['ɞgsدE5\GB)k>Nc//oD;d~~45;Uڛ|Edž\}T@c\`{bzIY?kSkzm͜SP^θ?0p0WQ}{GʚOx2&#{Z/RDH#XK"1GfW]'~/SʇF_1L"pDp32<@ :+;J/yᕜgh*BP#!M$k3l ӯ)v´F/cnDN~w2Ƥ`ssnܠx(s97 re0O| ]%2z=4x>$++>;"KGMYb!r::q2YHiY0 R6Ǘ)cUTBb[)In+iE=` Ry9q'H?J gww*uz?%~ d/VOG n,57l$."C  )G2qjY",p}Ly2n".!30"~FY5g.F&PO 6ȗIOacz%#rIk<5}JL`٪"+4,P(&h<۫=MMÉ ?ϋnR-e3ţFFeG*64noj;D&)z>Q Cmt{RஇM`q;u#j]%Їa1k!ZKW8Dq^.)={Y-Dru 5üb,w쟞U47۹}37wopVzٴ j}eIE~=+Ÿ:ost8'GM҈X5VO;".N}WaLˍ)cOBi^[=j.֎4jfؕܝP&$XTї ;-ׅ)SP,Dne4)dmݒtc͎n, +nk"%voI}~3 Pxi9I0ڶ Ć_GfQY;̣|nja730ZTX0E<0ASeHA)j ͢n;}>G17R#(m@>``©Ayʽ.Y]yA17el/e dCb @K3}?NSuީ;J&-ߜY ĭ&:]Ow[rvp)3$9a=Qx]z^*L3-hxEQ$Ny7׋|TTzCs:y2΋uoWZ5 \m_ w'*g/Dn GL(')ᣔFpȔf1uHo/ش%#\`UNhݷq6|lۘSt eDP녂̢NILc$k!H)v`ݏqJ[zQ臇m 2*1}UQ69ȉWNXw u~)a%y΃#=>7}hkd$iaW0M;cw7ȫ}'_ Tg4Tbhy@2wzX$I!nVshRo‱[g\1]rw gab<*bkP"Yd*k{k~)3N?*H꒪5 ϑc ǃ2 Xy@ƘJʞcs\Qs~`i{=t5LeO4`ݻ=C{ O3dn8pȦz4ˎ73x_ˬ 8:\hc@6LbB᧐^|s/Iuf3uOQrS1T8% Y(Ao/x$Pq_R_Av%E#BvK@iwd]-sly]X*s:Ty#H> b*c yZT!=ҡy5H;$qޭZK]XGg<Ç Z#YNphG˧ECdhu>0{c1J:7d._T&`F%kc^KL*Y܏7QEZ *h/>WJI1'.UGfx:kJ(~AEL%1TuFL-ۺk aՠT&T7SPpk9 S!3ϔ@l wʩ_qfdXѱe/M*vIIEzr7;FcAU(yQii~&u.b dL8 84~m3Rfﺪ=z&eVEc_jhBӀ=~rQGRrp~T8I=|Ͽ6HF7D&_0۩-"|yA}M1T>R*|ck8W8HF:+&VerIMҀǨVf0I}aqV#MWeH!n5ݾ%//-Pa`:9=L8M]t_ɦF`:Z䇜yu}51,G0g0AUb:a߻$ n4k`cƕPL|rub+'1Qd+3Ieg )cYA 2(n!&Jiw `*:`Ql5,Msm< QפҚsACƴ; :%jxrbĊ^8䩊 ‰>X/ {G->E0F0u<z}V a75,/iFRD;ZW3|{]V@lb"Y[[)QI-Ex!59\T**,PN%.߁`/1POjgfYzA>24X (|,0?nxR0mX|=6n1yJZr\ dn)jJKیVcW\tZ}%/=Xk\B)%13d gBׯ:Р1|.ovPBP_]m&Ri=/-3z혗ż[iBx4I:}?3}lU)k?$ T@'N؇ɜiv6a*C^= |F*0V$/:̟C&a>COEZm+=v1-۷~G@&(xSlEĮe0C|4Ad{sS^hBg"lƆ?]k7,Ḏm ;w鳦N8/}v֒c橹Zȕq/?9+TM3, hm;N V:4'|~zIBg)ⅅv0;<|9TRY{Q@ELAґשvUkU^쓎F2 6O4dJZ>,!Ԙn%N煥4 u`'cT:s}QzH㈇Oku=#|awvk,IzƻjAsO-|ow!WfXJ3zȏf3`zs!*p0/ ҙJQ^³m]1txYs-h/9y. 2=$,GqIg4OD4̑0J>I8 焀멁0X}3ǎѓ*z*̓ݎ[J#+r3qV Ak)陈3Ȱd}ORu%nsMAzxぷ ˟6a&ۯG>^*p{4~m3JsԦ1(a{NGdTƞ0 'tY0ӳWўѥl_<́ᄂz$j .a$vz[R{UvX~ +.JZ%nߍ]gCb0 XR"{5 ({Ɂ9L}?]\RO7dPݿu;@}![b|ΏgYJY4&ġ{&wN4b{_u(˾\\T\dƺIx"GzWBPjߏ2C"0gQ}HNԚJs}D&: Ǒ'4DpxDHZDXm#)i5qJ+:naL蝑_2rb uoL t h?p4%8#[Bw; >F>{*Wl)c M(8%KL1Y\Sdn")pzmB_b j tor6{^4O4y8xڶXѮ x4F-ڒAģ4}pB3xG#)U ĔIJ WAJDiT&Hv TE43`ɹaZ;)(eӅe}E6 s EYm屿` "@iAhs+", (i_okUT4g ԸϿnCU)R $=vTDUƑ]L,pi% YeB~"] 4XWO 9FvR`v)l;6Vx=]Rӏ;R0`^1 PTjf_tc-UY0DTgAalZcV~?CG-o|u4\[݅`r.8O:'6)PC@ v+k)0D3c1Ջ)u9z6dÛܓ^§vm{Gl,mi@qT? tS? ؔ0W:.Ur%׍켾9U[tR8>/2i0 حRzEr JȕoBYi%z *C0:P9ݪ'FHαJ/{?dPMy )Ö!ILʐOd<L 00DD/5luۮQS*p|Fj&9HRУCt@k'YR7'2|E;8="]A@(7yxP :Dˆh=zHYx>b+H:/O:Tm7+VzE]3I΃&*j)w"Bή_,<ڴ>>29E0g"Zkav>wji5=i7&P[&5%]МDR 39ҽ3;2K7B9ר Ioqo=Ta寋FVzcRMJ|!;8#1J|ܩ86?4{v?`Jl>ݻ^.Z0}n,h7Y5C<*܋R*aƮeԺIjl&`g($'l~pq&k$,NNFC2]ƢMYBŋ$+|A1:V#k͡yC~&;Q9a~9`&Xzbں_5;gU&rH 'v @P2H2b /BAx*^-oi%BVaF[>qc”Tټ)V\dA'2J2VAW2t/55~ gz1>鞄jn Xː[[SL=,/ &9/e\ӤGy4yS/!*7]~#wJC``Xrt:*3vOe`fb!1^6Cu۞w-|fk=2c$kTL`% .}Ϙ)ֶpUi#j-k D,&k68@ wvH2La})- XDXyH%Qh`r@2F]ڬjCq%hwJ+I,[{ͥorQ} ¢F}Al __{MQ>GGQd/1) T۪gdf*UGbhX]9%f(eF|}t7hLKJ2h`zIpp7uZ.̓]^B~}a[;R*/8A?Q\ ¥$+s98/Wj//:Q(6 Q$I!;XRcbdfh'B1붠R}2g4QJouD"1B#K"2w{$ܯTy8N_W(D8e mv-C{[tuv/jvH y/R,N^Ek <q 4T#'6w*eG&mJ ONY_h@Q0 6QYC+ LoZk/ʹ(6lmC0ެƋ+%8蘭!y l4mikiJD[ͻS^dZZHW^ x h 򶒷utu9'g]A9 / Ҟ0>KY/7'wdd-]t3b /R{f.PCgFvS-q8x&RWs7o}e&)/BDhA ۯx(6'ZVЯodU:9B($Q̳b_ã~S`i!5`mABLj Ü[4=t V>O7u^9QT΅Q ?Gẕ镧*uJMY-VA^o#䖃{zFr{.ȟ9ɶoi`pqRtj! =~hi`Vb!t)s=tCtN"|h.rCM5TXl AFꫀWrm'rK,փ%Q"YJN6\)u, }^A;Iixj@*foC.={h%!$k5FNzSaJv5 Vzk*9UO(8*0eC={AGg4BBm"D\lI/,0_H kHDw.XO5Qmlb؍&{)(c39\1$APia՜骮8糰Ss}scʋ]#K>(9 :2Y adګB ݕv+R\[1-HJgń/rÁEgd,0[%^@ݍjO>W cm| *}TR؟ZkLkYa#*o!f꟝ fd0fv@L_7WiUq^ۘ4]s nWpRM %N"(sde.Ov#]cG?d,\o88atzx&$UmJWP%:CuyOo0BLC:=#s܌q[O_M[3 4a'^0kXC@WR Xޖ8Z΃O`7$ɭRM!8!mMbQ(|RcgN9$J6J͐vZݦErp9"a (W7m8:m E\ɉ13 94^njNρAA9FoއFIјPWFRB?~&J}@@^VQKDfy_׏'#;`W3BJ(;G cY*[B]Ͳw4vicjnu4.0)79!ݰ X&y.L˓=5/ݏoD#BUSqP7kz`8~js=N9 b#tζm&CvDzr7d5Z-<@.z%% Is 6/h!ؙY7 UnWڬ?b%!,oc@.AC@4>J< ZFd&ZG1f/\EB26V@B!%yZ0 vFNƱFܵuxPҷSdMp.F&udߓi.udBslO;36ۦ[ɠ6#x7Qk$ g~d>X,?}D]O+yJ+҅?c -EtksӆXBHvQ!i<4ihzɏ7&GpH c1||?4Z~y+Xw'=-RfjJ#ovl =UF+y67q+1FYueGg&uuǜq]=̄Iæ^.Zс;QtՏ{lPF4a27_t^ J̟uLf**v$zB{EI)tDCf7sKI#%+phauAB9Bb%P7C=m)! c=ۼ5He=tQyLuvg'Bqya pqQ]%-Yll' cր(Z+ e>ޱ Rf1#imc˺;&wL!dyhr `[\2f,8Z5as며eֲ^6H?*`0%h7;Ȳd=>@/ٕՐ2֧- KWJ)ăZk 2֔Gѯ2۱Ar)Gb]fQp$Lzh w%O4gle"7Tk}|wՃRT JTnf"pCF_1s]g/K`V!))ɤ0/Mh;+iu1=WP h!'Iv:svQijG @_|A\&X1SS7PS&ͫv+ " jWݳl_0&iTV koXKNxKm;z)qαl}&"=9M,8c[i!/ܱI:/pK$9Av>/# i[hEmfXHE=0?A.)}Ol&dL llQZ'V2ЀC צօ-_"6%8 Y?X?nv58hp6E΍ݕ"T6̌eWi싒nьQ54dՈPT/%Ӧ  rU@;:ȡ{;q.H5`ZXK0V& B Wt a-{rN̍WV~&&^ ?Өi/Qy7`No&wJ.QٷÝpus٣C<0*Rʳ}))i{^$}f\ydHQ&#>LZ":`5y3 `T3 ߨOuL?۽o]B4TpH*>ڌt! @mm2L(|?5ZB޵غ3O(H>]-?b7IZ04Bw(?-BbcsKOHo}l cbLj7~Be\L.P?s,½:<.:"dǫ'/Yn(8Fl*xQVZH+w|e&EF:Veذ#;Ndq%00?z4\NKc|pEPONhQෲ2k th5Q='ǃhOZ?ƅUFg_g(svo ]So1x3iGTd-4ЄFzFAY[kSD_oLoDJ8,I&%R[  (ulZ@N(D[d.EѹY50As_(,?n&ƢeQ'w'lUJ)~ja{WL:քF~p!5|Mh\*UvEC0)ڼKneIgW>b {B4=N4Q s 7/ecθ@zQɁc]ynO[/o澜5]o["ޘ }iރB,{\ME $r VAǯCZxaxZ,Trc6ӳ 硩 -Lo0()o9YC/lLhςW>Faz>e}#݇}p_ha؈-8MF%Y+.vQEzhaj L:0 Pk0~;7,s>\GgL4J ހF1Ϋ]u1>3^SgD&~GGlQIc)dTJػ2Plln(V<F4,V*HO})j;r]6N YWCJ_^9և߀"wDpWɥ71ya|1=qT~ &N"؎|LDr?'u'fIAaUNYT{XiƴѰi`*\~;6Z$S&o?>t$io}c+1&g|N)ÕKwȬh ٘C>w*|^ -kh\!l{v#S? Ըּu/<$.,lj"o~䶛 5ԖU?O%܄R ?Z{ɴ(e*b$<)A>$w0_5R9VۋDbX{*_R|,n7%07uM` lMq 6tP ^%GQCPŜV'!n ԯX YwPYw>bߒj/PLb$<9)0{xWր0zKLu}_}yPټE ,;GUxUm,߫?XT,6I< Z?\(Nl?H}Gp4I'w\x} AK[c  rޑpsS%glmX.ku x""mia mhOlRE*A l(fO/:/6s1bMXNj\Lۻ~ v["k408ap'= c|ƍ'NOzQ=HfoqvId s%>~wbHݞSܧ~ҟ'~Sf\<|>W*?eA s P@{\ Q̤AScW&6mnz#u8 ij7YEbl>$L!ࡦ+qkm8%46d/zGUVH"43Vb$Z:TU>!dѡwhTՂ!wK7 ͆XIph3Z*u3 Y0 WXoQcGͪ|q|8d_.pu FE0dhi~]SLKJ 7L,3 _7~Ԣ-Fs*W `ED)T ”= ya/M0#@ rk,|?/߲5+@gz6Goz ?Dw+ 1=l^^T'Pl^_4/10I)8 .L!"~Іǚ7bXi+p~G0tw>v#wY`^bgYz׸i~o$)0Hbeh̄M%5-IuwY|z#'Ac?&by{=,{\nEZjzJahE%HZ:gpin3d^ 7MB6Q t/MX6I]eNȒ|]/v6RM#|oa de)Gϸw1?$b/|:g|2=9+- !v֓a0"¡XZn i@? < #7W$mE-FNyȷϒ/7Pu%=6`2ب(oă* }A:9-ڷEeO޻%Y;}+?{57| LgqQAIjaYj5_T wȠnu'b\D?;ɘd0h_,* "B琲<)kB+ O]/Pl qnvuG(ZR+aծB2^ho=r-e%C [ WȘX:N%b:@Pc){;Ch]:d޵ì{GjuNbeI Z0Ր ɛF葡ZᦥtN@4U H ߜye潑1ڎAHPHSng ro ,h(2 >7ځ矗C&]ˬjFpmvmnqhyƓ-#i,40 WBfNqEkƄr"2?n% t"G]HSNmBhdV'&w|聻 r5V$ k_YAn j}nnuB̌RĒT52j!A glK,O ²*RU W9SX{tO({"!p>%/?83Yj S"U`Ԕi&f*v AU~3OA\c)X&J-T gf6=kY:2 yKd7".tRZщѲ ĸJZu-`|`_/\Zjl?> k X2#hYX6npߗ?d \SQdd2W[ ^\-dO)F q)n r9NixBݥ(?kKhQcqL nKf?]#6~ݚ65n6x#g?Y'#"@%nS27`TVx8i^zGIHeBg? 9&% EL7YKUb1)_@W1ћ61:nFF[>٭hףzl>qMO>co4θwzC}?F,pΥIBщړSE]m?wz[V!$R/J5!BB%8ytSdA}D~d=9)˿K#oeƥ5uɰלdR "yܟr=5{H}|Geb/L&#V?xi,nЙݔirÙibI7]LȞU#m~Xſ!V38z={Z_>i.Ɣk%eO}|'\EԼqVdodNrĹ'ڥqTjBǷG*hAaB1STMf ^\DࣉqIL^i+rI]OܵDgNs^l dbᖦ-MV=]sk9${Z]IL/,ے|&fw[SX}̟̆ 0Hl&rM> @bS :\ԢѦxrjouQM# =rG$757q.t7Z u&2]Quc@o]k%@*1_,6HGδiJ&s$&Xxɿ[N_ ~E)aĿiU @55TKb7qcEED{tx $p76tq88ÐnٰGzԥ֊#l 92^U:lҘJ\YvVc$u*!s_(CW?t sF1S;N>F x~d|BZށDxȰsQځ uEdʘ;X"TdS½]jZ0':H@I=3͖B}AC0`GhI`Xh>D#4xt՚{\p;!3jOR(#"Ln?NEk0Rb9{jq4?ț-Gxã lY".SE"z2ujNl57TӍE$ y@}IQVɱU~YI7~# %A> I:w}pn"8hj!UR'`dhHf-b(;(6*Y_iH=_MSw7A ӏRJ-:|̹~͜?ΌiG]B@jF yb*޴ C_@`)~ڰċb&)G5W^S@r uބB A?ݏmP@SsvxLs95j*WQRӰ#0wYϹ QFEեC 6r8;]砎YRԏutTPAP5=R\q!}٣ׅ5uY%,]`'obk].s- 4}~Rt1ҹaBwaM/Z;?b]PsZч#w`_Y)yiH֫A,à@|YI3j dTP`}u)t8f2[PEf0nsI<90A5R0׎FRWTD(\q'3(r $5Bҭ}IގѰK*WbgZN*mt"K:Rm0)^Ʒ2ghKUFDOE+ۗY|eMуb/styr W`%M}qQ]'ρ1WI$x#R w5#&Ӭ3U';<=] y2 w1Miۣݹ? :h\{l ͞-k!#qOxQhNk4m2Om8+C;$}l Zgkƀ3Mz?|P_#_ZB: ~՚^yVb\!h.)4$u^q,@@T㸍e7=\^(?LHY[c"\vV_p^t-RrZ[3`2|r)Ч}ka7_%%Uhi*Q82|@0g@vZ7ƍđ9eک'Z/*GwJTVXB)Ԇ 3ed.tZYK{ckp|^E2 ^J86>4m,a[ެ4 SMWaSd]*!SFTȁMv5Pیr; .x!H菁}p[uB{Xn2 %if`R`J z!9#TTUn2#\zZg>r=6Q ,(_?W{L]ƶ $έ1ɖ:RJX$:N9ӛŇ#b:vͳ).-<C+У j<\ %K@޶~~>1oRd1i}.+52+VgqeFWx1%hT. Y.ͽWs *l`40: b{R}$aCȠaid,bh^͸nwv) iAJdͺ!|%VW&ʗ@vJZ*W]"t T[>n˲-~ 4ewqȳDѯr1UvzCvBa"l-zg/byƾ366ma6PZg!qao1gPp12z˵HC“lVjtU͈j‡ ˟&<]Z]g'oz@@NĮS#sǝ Kjl/ fcܱz켉R gfh8i4;x|?VW@%36c4ihe8F*k2Pd]LS'9NpZ젃) +5!;d$8Rn7kԱ j/@;JgzQs?6 %ƦB&'ײ(S|'`̺M{i.3W\ݖs}ByqAO<2 zfI r,am~CD&fcOy͍#h}k"BliEEkB*} ?IDm7f}۸HNJۋ5gŏS)O^얮lޅK΂m,Gx3VY q2܋#'g֖[[`X R]k^_fl(:6HG&yFzg.?QR5f0-0sSBwSVݶG 6q͜@7 hu8l#xEނ/ĺ.y׉V쫄ݼWDjpt"IsķkJl5Dcp  W/`hOҮm-LZdחQ< i5ۑHd.wՠ9[ cp#ף>?xB`Ne$]q 3Q[I3=|`H3vH/]D ^ՈjzoVO 8ՠ#%vMHmoe^Ox`$2PF;7o{<:SUaҺSƹ* th=l}3J0]ݫ%lcX{'!xu`ncwQ.6*lV KjlsG9ٸnKshۮts!6x5A,)$b Μ:uv#/gCDKu&--,aM;6;rwwZd.H{#Stk)}!\;k f0(M CYݫ}|6!qP Nb^"BSy1NFvMJL74G{kD.LtGEElM${rl>UV_Te=-Ԁ$ SntX6m?tG…'O 冷&iaǽ@sDI{>{T!<8 p[WYV$?,y鉾Q.S UΌs`} }7[Zi8yJ`7-u|eLP~xu5cÃ=<:.]Mb ΄SΥYZ]"3d(Bf ` |\1Oy*L|ql;IÚaW(bc">+p~el>.(Fa=~F37Hna=0n0N'x 0K)YOd~V3?H@5o!ު8iʔ,k%Pчy> ) >~;{PT\tZcV68:Mzc;]R.fV[#lkJٴ03WA,3qꔡª` +s2W"%?@ iթYi@+ыƖi։@nf,ZYAr{PL9=+Z-&ǴW W$($\gzE0&\ 3-:XgtL? ͦe(4du^/5l7BSn-xz&)hyHs(li/Đ: fQT^YmK4GWYг6ֈGa.Nũ; ~+_ 2Jc )z q,GWK G#2^l$ŠV7:B9p;|ފI OE׳Splk1UwgŇ;l.0>eҴL/ܚ7P`a۽AwI&o+!"fV6n'Tĕ@;wj;lO%K*Uqt -{41^+zVFNJ0F{DBõ_E-iy4JZ)66h/ņ%CT җ6!q =Eؽڕ)Y5Z>x$Q~G%M/DiȡΨ'LiKQ^\H*HbR^>pԚI׏6 uvWgJ>Y8<% AEYx99oomjg˵b)?$$K:T@ą$_go/m*p”@(r`Fr$f 5b v ؏HB6߿5XzW]WnuB|Hg6u`HӐ)#;-<Z VfkcAROYUoSv<[Dp?_i³50f6o/D]_yHR'Ҍ0U7LZ1!{kyS>Pn"9:e)F'GH.ʀ4.%CK1b\;*׬u \_R!ZMeeS9!:,|VbЧKV^ HO{Ĕ/'.\Ku 8&mYL+5@6H)QD^@(J Bi#y*U<ZMTS6+Yoi'...U@ nrF-AK~XLK8ZFWܨf0now }$m'eǴuwf(8 ΊյjC IB15ڌv&u`)Ð#_EUcP>d.q!MxJ[ ޽ئ:{`ځED#~zPݷ?YaWAtS%!1 (kV*FzX, NoV&rG5c%[[cvDȃ@!Tw>TդJ bI{m\]H8n uėy̜LWO(B{ =yj0پC*;SNO ^(2%i$pqVǫă_)B«p*n=-ĽѨnhIK^{Ժ9~/Ap޾utDy$ Lv,G9$ ?#HЩPa\?^J+/A }?A6?YGNw]ѻa=>y?^i (Eȴ`Pqvݚ3%iTĕZt`9T*/yjGNQEoXr'œda  Zۙb-x.y~Qf}ޏb%'eYhH>`cpm𩭐>)JeoZ梹mnJJHZ$s-BXƭ֕ɦ5rBGɍ%vꎀc@J%lGsDZa^ o)8ZȘR` Ôvg1!"%&]`6.`nu *;F@׹HmAf AO2pZ`PnlNd #V^RyrEq6%3Gv,W "eN~*m _pVSݲc_GږDfӜsp0'-2O-FhMlǓu`gtAY?(O"aWăv{(6"a@w+_U>'<CO*:-`z&pz_$E~obMiƒz #r6UV+B33O 9 ?Ozq(K>RPi P55"|t Ё;J<=,6LjׅC&:o~KJvJN3 oUEfraiyi! K=>J;"K/ k-1kY[7=]##eYUiÂ(Ŭ~CuB☱ODxV<. M|7_fjOLI oD飌$(; Á,JL/g;rwiga(_'|TUT]D <Ʒ6P7{KD%k7l>,W$ S#Rp MF-Tf#wՊ(=P~7smW+1'-Akv37MiP=sV&9f ʖ؜Hd\G'd4p~-2 3:ʽ4c3gSR oVD0T4H## G~QF9"?y8;!7>:mhpLa涊%Z3~:bӍY(Gꂨ:ıpjwOvV=I5vUUHȶ MoV\p.*IBY q ꕾ!K[5r,)Cmc|ycW9QctYC78w7Y&WQ&zĂ02|Z(L]am^]WOZ+͙4mo oB171w1ك`L,M|GXPH> 2 ^4ԏh[F :MAp7?/ yO#T$Tpo2W2MfyLO AZ%EZ3޵*H4YISfTܻRrp>ƶL: #j0<|E 15PO{MsXAn*8ƛL$w?1?ZEXi]2ꏋ-vv\_5;p12A;3DK!HHwaH2Ǖ9p߲*Wz@`w"iAEsxʅƛ֝=ɞNôur$8xtEԳCL&EhQOz>a15ЋuiQڌnTh,AA,-N9+51P`OӼ,_IEBLMI9 qhfQdyhs !Q.|ov۬)gŬz|X}\NS]ױ"]LPG@rdNwN Os⿜඀9~5QZOֶw' W|1rX#di [ aY6.X.~R-TH*vL@h| -9<C /[qR<>v׵1˸z|GٻSngYR|,F!,P4(UQp| ;{.A-2XUP_vY<%QU0ّ~XJg842x= ? zDL,²:YN.a*e da,A-w|<`X; @ fLȕs&qkļC 0I[dfLV!.#v1>`*H gpu5ShӾ}$|Xu"@U^l*2)Ԑ ᙶpէSXŃɉg nn%Vy%g^J{yWlH*V5eeDU -"!6ˀY'vb[M) >j@'5tax:{5](š;p#4wG?ߙ|ٟnpSE|;^$33uԀ噿r|ohXq]7;l֊Ҳɥ|]B.W8pĭy1x$N֋GAˍqRL2&"ؼo~̅[?W5+y s7`U4ԫQBԤ0\a6P r_R]"T_<L|O)#O\eP<`X,u@v_]C2uwkv֏.y(d <56 Gc'HWtLC,=;3C♠B"dAqCSzz": HYAj enP+k ){wY3:d"8-O>/jY .-^U uU}$0Izg5]mq CxI3i{QC#ڮGԱ)]=-v`lھ̊u n؀#Zͧ~ f?D,y5tM+E:"qp7m煚J3TF"COMpܰ|,BcW/R ܌oz`E(l1Ʉ7P5"2Z7hO]x As}D٢?G`#{cQ/;WeӓhQm? 2Gn ao3}dTB-Y}>g#Y#ե--RGN#&FT(9>R)Xȅ[T7SiY{#+ &><)P2qc\3O\cEZy~g. |i[A 3/Rļ`fPy0pۻ8#PZA 4y*CbeMY'BXkPyLhq9 Qgږk_Ey{vuۮft?׌FJq'*#?|ǒ,d/W{`A[ݢ<;?+Mco3y'Ur9ST;z3_\O',Dlꪾ͊|d^pC [X;bt]^p;*Gmcc R=;&0bmc@:NKyS5j\xQr d 3 .lPGD|WfztaV`dȭO/8j$&bԍ[wiͧăh5F`9&"Y>)LJnPGeǃRK^?r޻{AW: 8 }C&W%/PZ|Yci-3kS/RB=24@ Π `bO26A9,]o0M#]KVib5{GH/juiM;9e(y5INȚ-%5' "Xk@^I)|k`IÃ- _I8EmQ:MUkV{71=T~y79"k.F #Ot6؏uc$)ú8g$9vҜgާH(!:IVЇ-6#HלR H>!fF>3˲qS:(Z,ǸWS ]-SPT eA&SHo&I̓/ M J_EUgô/məW~yǓA }V!S]p587O:iuAb) Bߤ(qJ *u\!2%R vjXHoKxK$!Q))ٛ-;>lvN5"tvc)=*dNqk%㎎я*(*|co%o p ]犂ے> 2qikn\Y qpHNkLz;]#hfNfʗkhUx9}2}T{Bg 5*Xˤ A,ݮ9}ò^Kځ߭y?֣L!#Ç]$@dp|R8 |Ÿ垕iZ^7P+(O8;p(BwC// rd'yI,r=HH}DxڶFh+Ge%[ T7ǶԻY2xmv­,"sx4.(wռ*:< vwZ#JSy&rn5"D.}A͍k#)q`8Rht)#;NІe3_E19RuШ|`XFp(́TS+5*(l}vZ^VNPdZM]6RM3.tB)bFxZsfdiFK)> f:4Ikﶷvp 4ڎRʓ! &, o(<13:iG^v5]XL#yQ}n" }SE <:7JcMWadTVAy,ݿ2rȫ DU:,^鳱 CGQȒI2צ(|p`t:,sjhO"UZ0B{ nNV@\G/v|L=4K?:t皝8E5ǹ&݅}]QEϣSIoG^Q\fn/[*"&tKxJ@s 7a3O4%u6p C%Y۪ٗ۞w«aBHt˜ˋĘNH@@|]'y[Hռ ٽ ;z=G{4XGSS|o5i~ zgd ZikjBV} )Zm !<煸 !gW,#֠tgc< ;X&۵'bß53u"mIbC6O@KgbKjXvαV?qĆX}8y0S|L`_ t⦏IЦMp~x\C|i EjN T 8ׄ1z<}&XFB"ޛ+G+W08TFWyPd#\ԇA2.t0Fň,Yinܺ]0 Z/brٮJ3< ȻYGPwB&>>Ҍi\u XRU\& |/J7z@{j#WёӮgEUd &yrO{q_lO˽4 G(a u U1 g8"@3q;.m 1 Vtݖ{? L i/,RVX`K%QY3a je=5VRrxj=lS [+Sλ,6)"+#BAsV:fz"7aAyW_P^b{[Cq_s|5ҏ*T0IZN*i>!Ia)H);3NpI[ 7bdTl[nLpf-9D^(rٟ$=[w.uҶ9I}>1*؍Tн@ņr*^[ ?)&|KwwC\2(fbr.5!տ=*6[{dL65H+(P3ěq\dhJO_ ڹC\~fNuG- EX'U@ gPɆ.j!"Eu#[ؾS]gU;FA5zGN_&QcE" $X+ kBZ:܄QL \; >f)r T8ۍV?`Xif6bg@"BʮFdqv r/sF QƏ1@ B{,zCMjWF$-id;sU{LM.].u9 YrϕmreҙclmѫDZ–F`7`剅!Γ$=V<qMDs ez_2i 1}D^B>.7m:h%2n?Gc eBSkN[0eW4,ڀ*Zovi pɽGB[@3dƎ"7#!VDjFO-0ff! j.=&Ɖ ׷ozņ65LJXȢizA:(b5 ^L! {!a&dia/ҵLm)m颔6 J#Az fƚTG2czLN*sfs$`C#u19Id g)C+WZf" Y̷'`b'֢aUG[זO";4)'}pH$CrC.KIK_d~߉Ue\̧A\c%Lt.vqk.ui@G̹]ӑi^yF,P[*(Db /tvg&r7\?Z/.gp{=&nchȰ'd?MZLs-"RIGEv:>!({t6}UtK7z&|cc&@,/8#a&{-]!QEjV-XN#v544 PA'g,+c]Yw28>WYgEI@LP͎iTn9s/w @c1e#6^q YdEZ!Ζqj  3GZhi١|A3'5p b4&c*߫b-:@S^_ח/ҢwT}Zw,җ`~a$q]^m(Qc=q6~SՌ+: PB!z2U{غMdȱ6T:v]W%k/2 OAFZQeg Ҵ I*H!/I=Xg!td-R 6WI3]*6x YLPAIv7Ko}X$Ow(8:=rɣmg[LyK#K]ǒ\ӑP!1^V\M W.TU{aҝ `:B/!$}~7)E'c`]A[<&DD`8Hr~0ɂ1ހw'5Ժ?=RՅEb2a ;w׆[~@ qԣ PQv[8!hnvF+޶m#韆(Rzk5IӒ/K/̈-h 6g=@rd n9{ϔԸZԏCI?75|&OFNj ݎ4Duc uBV[_L||撄f7Habv]M_PuAA 3Ɓk Tj]Ft>xݪs I4^B9b*Fȣ%jAM.D K-,>ײxi):#CA+̊?jPmxw՞mN@낾a鿦O0~Xi~H_hj~h['~s0ÉtdZ^VBp&'f%+6:Qx޳\6:fV{?Zw4HJ9 /3 x[6==2 *$x"lW+?R]8_VUy/vԄD;ḻ7Q9b;R xi"+ J5{w=;*ʟo06ǻ6*kn>!rWŸ'zŒʝ=oi7\A_Dl.4ƂH= Nj,X{ y'v n+m|,>ͫÝ Wh\Dm);$^,u<8_'.MXp@׵uՋW,>."63/B'+|ȣ-SۇNֆG5nPxÊ$y],:+IBlA^]alyC)fC¸GiCr XvL"z(n;vrI.m$?x}/vUX [_ۆ* Ul 6rNוFqi؍WczW>P~(R/wO`CW9Ga&S3۾dwpV2R@QRd u ThXl 6V֐5؛;hS:"Bq?5o#v,UW=kh|bi?U[ o]t  @?GC~_ܴD2FY=lS|rԥ s{dk7ad(پI=UIr;T`8%|9.:>v nnX<3*LXQL&Jq*p i H^\[ۡ4Mdpڵh`ċ 93bAz_3G@:H x,k3(oH 3xDCHϰ>ē1]3&A5L}TF%;u7+U|ʦ{3;Å/>WEXuP;-dܖdBjyݝCu3$[gXRXyuEٔbsR >cE-G9H@A3#KD_J FE'+LfSrXi71o>ɿ㡐;[ QPU̓89^[Kc^g2b'Y-jxum ~ lj׼PӵfxOx?$6AidZk.V%кGDb9sXIke8kJt=+t`Cv{|qZ *[;sL}y^.CqJN\$4u?L#PiWSaQ6lL8!mڮc "`N _Y6uI:Q5|PG\x!Nt_8X;~ghtѶ@`fX64Ԉ>,x%H"'ZR) lW̯md̏Rad:Wa}Jrwh3e2Ѕ)k Cp3rG:ܖ N@ErVf r6ڍLabaF<"Kݞ JgFȢb l\(mY`z* ?ۼS)KV;3swx-ن{I +^Cē?VhRadV eĠ5?z:Ht_vBx=@zvlМ"PҏJP89\x k${ғ˯Z1u͇/Q|.L3_*i_q\̄0Dzqh@AcԢD)(rciq?P^`*NB & [斿s:ùHЕD4(]lP+I $ ZŻ߿(񡊝_\ &C.ExQ6SD<҉[ LhHi31P#e5,XnhX"']68˽}cs*R-1n眝${ϑEoԦ(c }E3PB:16q:2S麳1φ 7hYgx c9mU|jR&p )N N--/'{IJ7AUe*#7 >G{|v [q"wl)s9b+qۗĻv&`476{ƺB(;1e7G1o\&IVp\" G$es=df\&}!7Mi؋Y=Açhkc#nKp(2#(.sxovrO;}eZ*Rj::5>2 )`楑?iߑ@|xUi)YلN>R+B"26pS]4Cp }˳Gwj^A`7غh2ܮ#nv*)aA-F%ZϨXOXUl!wWDvh1Lp^{a C"%Ծ찙-1g"zJOݰ/]ǶLl V7DQz/.D#!'Ry'pN{<t%nbT,oC[XNZM[&) <9<$=q峵f^ dbi@L$xIϥJ5ΩLn͟(պ<.~#@O;y)\G)k83ExoӝOqXQ8Pdպ e y\tk\iU&*Žcj{];kI淒=3ךHGE<l>m|tO$j.SW㢉_3{WC4zMI}b([uEj1ZǍNQC^sKn a8~ZeՒ$.SIK{4=${`&pm cN9KZ+|XS)NġNxX&?۟4UkW CŽg] /܋p7ͦC98.-OSKÜHi${Ea6tvnjCC,S}_`Bq^2t$ ^uiq8k7kHfF$EO[tWܐ jbKQswLZ0p#J'Ri!kzoN*đw|`LXS? z_[~km9dR<]$Dϩ{b5Ch"/JWs7_g܅ey:..h>sShgEQPn~.q` " k&|s e;wz"jt ΋ m cC6w?ކd1FFۡ* $}KYoS.9@1ǐd22Y-(C bk|;)4zor7LfB2gi868Z: "EwjŜ Knؖ:\*T܊rQ( )8vt5J76,DK+~K|su\#M_ݫAh)z{f$3_:}8bb/gm==Ut[P#ڻ">we/[ExPbH,AQ$oޔ7fPdpagk֠#67 !IR6u^_`GzVI1 3g nV-q9k"%i/{T-l40`S00k0$lՠsh=|rSk~4o4\Γ.pb%KZ$)1LUV~nNU4,!$# 89[Qof 4Ya(TjݻYo6V MWau@Ԯ֏b !G Wq-5&Bʡc3dT}X4JZNͮxdKqV 7K#yދVNמwG6Z!q12`Y "26⭤8eMδFm[\h*hƒ=^d{krSˌZ£3s0go0Kh:bC1D7֭;گ]b%R͌Vu(v]L(Ȁ 3W~9YoP@Km?}9m۵ȇ_b%ĆW,)ɪa&A ˍޒx(rd-J(֐g\yᔧ业5,Uhl0E7mSwx َ}mV2n!y 4o|0 W#ЈneSN8fh(Z.%3$6F-tsn|E[O heev` r3-?ͼ[5 INvިyu7c2)o*2lp)p" Bl&sǼ+ f ϝ /ІZ7Ls>;-)?2bl4+j-wm( Rmi\mdIXvLC3RƗ=T@#yP0n )&>9hIE6Qv@ŒL_T qDuL_6^]{f3-HC#Vlӯ<Mw{3QtZm/?sf bH 9NxGa&j2*/q}Dm ]ĠSy hdnCQG3pxf l݂,A=e *&< 3ok>+Ï.Nl+qK~VyA19jSE hk郋hY 0 P9lXY-ƊfDZ#j܁}VXSq]gS! fJ/Zfa<zJ,LxJw&Af_ctd+6͍HlDr]'=>QH%'7zw\bP~ʽXKy%U$ByNYE+4YsA9?tǫdx2"[( S&>s%FaUmdS 6+?ѠE%CQv}5ϧ #_N|wi4;,VHPVExjLgN*<{3<Jd+Hi,+!~cbq|LxlȔ@n#Cg5-{S^H}aZ]]_4´RS߆Ɔe5vet5lݗfbJtFTǨ} d;gٲe.2tl-r^~qpIòŒFGGhr׹P{o?LeDWlGŞ{~m '6r̂*FO s^peAwx_&5HPsMlw4o!RDT+S Wv&fnůKFMM5ኽt4e%wno:QT$;CLR]1 t@&c\/rƎM@2.G."U_OZ)sv7q b|Tfʟ 0 +q{2}ۉ:E5ج)¤ bpeDFOh,:wzHoMF+GtS/FbҭLFvF/ucʮ(Ho*e oru9GVD^/G1zSHєtJ(B=LT>BA z dgmwA>S ʚڵ7?DNI]$ppK5&N,Rۡ(9'zPqZ=c%םaq3-ԥa?,$Vs4Dhbn诤PC'Wʷ`m8LW1Ppr+`UCI7g\>X-O+rc( q}˞/>EyA QҥhX!9;U whf,ֲi!@a&(!D}y0]襛oל I) D /-bv%^˳k;SD~^k*-GP%bZ T_r!:؜Mfe?e1E7 - CD`Gӊb靽P(S2oQ^,3J[To;1 av GjrͬvɶQ̇A1Z-mg[?|cSl$vQ_GTaւ ;q.veTVjPVW`CKπ՟4Ō I<2h ZT eҼQR 7iy.Ku# [<!U)\J"t޿QCf+`+NapkVV.yv%.1YI(=NlZzX>ˍJ"a/q(;^/3rvO8SQQ[U/GW~Aѓ@P0>o¥٪uz JIxO/d0LYOᴜݣF v6I["xv% ٢~)Ozv2|EEEyeeԛ8XNkЅUH&u@y),3, )ixqIh"AU@9wO@2#zA/ ׃GUBa4UWM[,nV t<߫6KNٿ <`}n̍ D|_߆걿5&Aa0 1 ]{VpR\_^4:eZғMk}?ߖu2 ?l4q`f7(uQ9e4}.=]V᱗?HpIyO e aĮ>DjV7ʞp¾ v4`],}KTG9wmW*&usdVǼ >2iqJ2ؠ4g @b̖/ Wgxh==F}3(w-CX38#H3Ja/NaTR%U!zxXw/D9 "p9fC]vC[c&FS 71^g,?wjhp U\M<^G.G|h&-1n) Azo(w},WSfR/25BrtnH-A_ni44 >#)'5 FjJ{BBKˬr˗w⵬_ԴBT[l>o<^^]jB&l=z#Ѹ4쐀npMV'Bp]O[9U^;vsVu!i $*qUtr6ΠSyV)nHhR^'u:G3nWpIˌ/:G~ɁTLμtξ~O&9=]PĬvUJpki55:('壏 ΡITՓDzM`1-Zz :w"mNkǁjl,ԼR͂#Q;DvF]*$ +,kO j7@M*yFszZ(́䎟ÂcN*gщn|ďp8ⰐXW[8tG! O-5]EJ@p[87Α'#/uƚWkVGCRqy|,uM4cITnhMĜ}nW\ gAż0ot:Q%Ndl gTY`"9 r&Ыa #,C37hB,M")}]i~59' )LVƕ]gzk,TW t܄#Α/]ޛ*[[φQf^ÂA&AwqG#<%)3} F;?٣{8i/}}Ϭ[9re%IMܩdp7e^%Ȧ H )»u l6H `NacI $⺞vt9(_G>dnPLc35f)nab²rnL3$(~ 1eYx+Ȕ=9xg _21wVe*WJ#KTt̪a7)Ci8mp 9<q=ZaM*nimy0T #ٹs ;csZx` Jj?@GfUԤ#LHdnvIY)sPYQʦF}zo|&:Pխ"-Iu Ij )h"gw/^wV}>zbR{{?!>z~QgyXA!iz`R-KGGX)hI/q4YY sSp0n7(3"""2B\RRlU0pՑX7.񶩗p8+s|ԡ@c( rG'W?k`V,zf#[vȇT`a[%rsD ZnlF ' -LwjX%hdE"VoUsrCa-wB1]mYρٜ5ҍ~hW~|N.*cNŽROXL }xߗEN͞9WD]ܗ%D:'!WQ3BӪv o H A Ҧfg E5< I#Sny%TwPxCIɴ&$EhX$N|qٟ)aXVvӊHhd9dYf'+alٔ\ϕ-FnUX{7Kn/+qiԺģȟ#.|GGn9uĸU2c#Qn'DȌK:Od.ד9bO/ bNJcHzta>yxrWa80mqEG%vD5Sg#-^*Đ/;0 !E Ez<O ˨AMH$JQ/>wSm K7Iqd^R b r%wuǂPNoW( U3f׺Khd BTKy֙)hȈ&>L*;.\qѼ{J q?|Rp*tAT¾ 6F$'Ia.Fhfí#Ϡ#cn3ŒOH*wTDZ9e7"!(# .)ZiY'BN4m.8'TK ]B f' En3}rr^9fE($P[ jh/mo*?P5jR@|]T'a zPdCX 8v !ONg[fpQ+騕/Nx064/92!bs$7JcDzcg@;9m$yc=r5FHvfS^2{Ok9X``\H}rBFc^ufӮ +VGNZovߠh/gM[:Mr#}͖רT lvS`9cSVWȑ{"0բ=̚.tAO`Jcϱ=Zx.{1 vi36~SUp|%e,p>[e-BY$EmkH}Kɠe> ܑPsP Py[f-[¼wༀ;h)Ebmt{8H')MU.p!PybQԸ=gFg񌓽%W" Qq6bF%Pu9 KVδFAgWx'* s@ArV\j_^wc>]Bč9iK [fCjυ&j)7t5 (Qa2*lNiʯu !{#신$_Zjˆ$ ~Y1S ҒnSAwSvo ,9O--S4 rL/Hi|<-i8?-,<~Z#. a;XH/MceFeˊ8, `]B '5`֭W΁=;9Np @"ޅmG E@X_VL]T6~ˠ8CC"$e]f&B!$(YFehLKQODIXv{A#J>I;7S ͈$پQ[ $`'!hx*/%!PΞ̴ (0 %9D-9y%9{w̑䩦+E aH|@Cڢf0 C{1U.&>Db@CS}H9 n&5gkJZ/D`W/KkM&;tdh#HDfh1,pz1c)ھ3v5\u,"y::HxA܎*2\۠싄>(JY|!ةX a5{x4` Vhx~qS12'CS~v : +Fg,пX~xݷ0  +L` I| LY۵S|> !X"G?ן":}TRnf3O8o_ bL^8̆16÷ Q 6y7^MUnH][kA/ :G9v]y)8<2&M^Ƥ\]6tbȠAZxdz߶=ϜEjTυ~Ofi@K@$`QVRnӲu*+bܔF~ܱsm.2?y8ϣ4\e@˦6#ZUaEzj /JZm$/pe\FbYM;uP⌕7]^%DYL M"mY2u@RARidWUqKp玜y.3phv>j-b7(i+3?[Y'oU( Y{@ # o;|>+$gkbFJtl.V)˾$d0j`e h~I~-c5L|e{h YNt"7?An1#bI3ZCǸ^8b`!)-Qr|_JE=J`bQF aa8pu}ҙY2nnp :k7OFH1u=)'3"lʂZcB;HZ#)hQܷsWϹ Sf;U,qZ@WrsAo{ڸ8@Ꝕ|q|80$Lɖio:n%%i;'Y-|5hU ݁z xݟd{<?_ V w[jpt;Т";PTԫup;nq'W-J萴3;~F&}N:DL?dbԔ4|Ʊ``fsO,y iQ6үCƣU9)3%K*yQ/V|yw4Ǧ;g 3B;^U #6ArQ!*1bK4I Ԣn vB9֙R)B*̟jq"WTt yc4##$@)dJ”+sqLNk)ճ HR RZ\2Ո=E%\Mr*JW3'eh[ j|Kkݸ:e, 0d1c8֚&8)B;wp y0Xߚe@v$4;`bO\mP<Ո#X%s&R*R( _:q@\Ẁ S`_rZ Ql^&λ3~3{"ɳ@&8%6Uo\[ehYMobIo]Z6FU*aFzٗ eYQ^/&=/etv@lauq91QAC0,H<&5@#49 JDez;K?wQN [ޓ8n "}9K=PN<'[yTs>6: AMeAַo|8P9J80?&ć~\=7aI ex5(lmWV5PQ ѱ{QHD SmyT4y_]?tL_ewNDإ$P$~'Y ?Uxܮه (Tף;QaCT1vxYT]viL,λDjy5 t ݸČBydtbq:K=WVϙ Jdbcpihk@IiWfe藠IHi~ҝm#z;7#]^]>̦/eXWSmmp#e0Qm)OjG7Aa 8&˙7%-*͗ m-܃-PNNߗ+v +Cnt;ƻsjs.טB+,Fju!z`#~$H7"Fˑ~j`C0RiǞSaoƥRX_ 5yqYw Wei#9R]d@k@yDC𻘼.s޸!|ӢX@w-S$ !kh X \74IGY5#d>hKcFAS9Z(`YyL]~뤹i4+?bk< w&\hF(U}ʑ#ޘņ=iQJ5Kh&f p1rYj,A%?z"ۡ,+p\HYFj\au$ ŖcNX5Z}'DO]_x@@7fYr . K u p*٦q!v xrJm:8{v r4'$ٝ~5qɜ =Vo%^Wx5ZkѸ&p2u}mpk-mb. sotu=  9ۭվգcYmtǚ3ї|:J”H! ZBBEUdF>Úq$|-j\0j0,aag=iƨ Dq#DF)v )fMBCQs4@IJ֏LP^I78`P֚NӼW5]AuTxe M ՚F 4ZWlw,}tHʐX @* {XGDWDqdn. G.sԺ@xbW@1Z`qza{ B/-n[+k8֐vÏU~H,"R}c* Ӯ_:[0v:'Jiv}f؇?R߸Qo VBucș7'ltϘh,BK@X  L9G8*m7za~aS7JUQWM,bSm|a [imО':վ]ESkǖ/.F7jTCć`ݏsZec_$&M6̋I"X_8(0@ b_}6 J Tk2Z1*DX+>ޝ~^O(+iv>+NJh}e)7̟:,4Z`?3 >£_fs$HdRt9fS?LE"sԃ˱GXg!6KSo԰YğqkX1 wdX[1{B>DC̵XQ dC{|uַ.oQ&] 0,hNfZR:_(v2 7 `Wi oB$bԧaMj(Yia:Ĥ_>2?tgP-:@G`sGkVL&M$%%="CeC&8C9hAXK;m\$[õ<4ΰ5g`7EUt+j8kg5Ī=AqPC/c|^A<}@^j=&6|bb$nDӗu,~QY^ Y}6li%is[ @Qϱ3eyzx1!9:HN^Swo"!V]톦uzƦ:q#okezi,%xJƦ>N"4eEV@|{J$naDkUXe!eʞ+:ϒ0N  x#w= ㆈߔV,e*ݥ[o7Á݂#2G7@'7QBHb xKv?znn\7~ei(+FxWQ"<ĉKHPW8V +׷tpp,=i~^[E*<'|F:AȬ L4<ڀ?O; *4?>{v%yzg- ,֡2$'Ns͉>wᳩpA;R^Ԡݲ-'5su=Hn}FsƔ {ɰDo1pFDQs} G4_&:T5 Hu!?l~A=鈧2;z-T}-3UmC2M?EM8R} (j?a'W2ՒDa<=xSjnBL+"T[ùSk8ho? /SּOC6<6YlBCyl>o@;׾MGvUiЙG/K7ƴk?l9<'V?J)_C1~<{Wݩk_gMJ$ .Sn\?\ JcNu[ۮV=>g3`[0J-R|01o| Y?J\%Tm&L7w#O*[_ 9y sv"d]אPlP֕s1tB!`r1Շ9C9@E,> 砲;ZuanH>zfhȤqiR'nJnE\\k_l*ea<:RKRS0pi61P#|5z,$:lq_QgͰnOoI1.  obZ;J=T1|ùOG_cG KT&rԲ՟f3ҷ⳩0tMZz%aVד\7R_ yiܢĴ| b( J2&i-@`8Im ݒ+T]rD^׷Ƹ%U۹K9=:Q^96_I#' C~xzu7 W$4YFu?ؚ7)Hqi͆!Ʋz4׌f*Ou/Ɯ5b;b,0R-]HLXۉ-02txo6IO)7!1Ɛpɦ"R^u쿘iS u>'tS;< HFri΂k8Qy$/o![z?`Ũaw&Z+ )ǦkM7qB]L0Xf^=Jδ #Nɷc(}+ZԄ xk?"DHmyB҃6Gy˞`H`wAPjX{۵2xOtXVQ^%ȘG0_]M!e$~q mt^.Oc6nxP5}5D/y~ӏr(^#ݳ=bAr !lFRTKê|-d.K RxܗKx c p [Jm" !d+Kܬqc"~3=ɩ6$-g^ gy)X+(ZX<-q)PH4<9TLYȴaq /;>[s T͝4: ɞGpތ΅Q =>^LṶ@"= (T1~2{oęi@͖%=2@95um0+&'/i\ A8ȳfez*K^X.减%\Sq bVȶ޷8 *Du(qt^{ 2U[u声S"ɝEZ%e{}Cl-wR-h 8{n9gjyԎ 5d0cB B32Ӏ'=rgdaq +Qo*œRv<G %ٲTaFϲ' w9oUZ1/_WO^ψǸwAE!3\t<KQ"?`; ͆.P"=[lh Ml ChI܋IL%NdUؒV}(m rRfnF~Tm6}iy -"i䪓1@X|@m:BOӁOZ̹M%1dkx9;0Wފ:hx .78&%;p]ER۞طtvN9th##2 垴&fBr>:;6>kXX, $-g%硼-cJWbcE6¸_pk.CbsG.7ruДs.<"]ai5V,]G?W߭q5bU7jNvmp#t;9Ջ6 /;DJ> OqlwPmIxǭW0X-S! w+{R 9 o9 0n=5DŽ9L3^Wn H/y}ƂRu8V[ ʖqo)iyW4ધa `K"`4תS DDN?8T/J r \q}s iYj$t,Cb t5E߆^Ǖ m!¾!z ݰj\~Ef7'a-m,l'fJuoi>nl{: !F3J<][G^cIdfg<< y<+]fOik>+Mx󨘸ݗ8\IU̼cnΡl*6?;9_Sܻܰ3{mk-\. z3ziJ౮Z{C m S1&s9#û#ÉHC#/Vc+e L[Ρ;;r;;~g|`%t\1]Gp( Cv\YZ*629 hTY!&T;8BӼKhlQWm#jcؕo[gR]K|NލXɢ΢1خGHd.0f.=<~f(Q8Ĵ=0 ;w37 ]]1$N{m ZIt>Ea^|eʘPjIąNfl^<|aZx&Ő$i,҇UjHg2dSl7%@H\_/(/F>9'7$>?-; &WUGR[h? 8RD=%%fE* n_9z*Y|?vR.t j)l=rՔDq/*)7 Oϝ:]ȈM(G =|g,K08dxTӡ&ZQeL7K?H2ĩăuWdݸǣ!+ WCpF?4ޓѴ%^+-#\$=6sGME-=IP8bK DdmeH((?wFфPU?"8Se}ϩc'Ξ]!PFN;wլ y нajF:60h'G>hPOYw/=` ԕ :< +\s.)CJ!Y#lΣz;391cC0uuBE$ }KV];y9}uO·w@VT4w$WC%J!%Y #z"0m?k{P[nT$ЀR@EBA%01ʟuHHeFVwEș?g=j5 &ڇDn'iloYeŬB[G6;ЯR^,`š^3J'3M9((VuJtv7^m>a. 5f`cSjKYҴajZJ4/%$%2pD%*_! : q]{T0}[s%yƺ4#n{ &i?h{t p$*-8 nGPv(~Je; \,bK^]#%7x%bޫ Ǡ<+Kѝ8`B@",r~4ZaBN2«b&b6؃t7fX4<*ɏ7'@}HpӰr",0UG_n0F,?=, %4 ptg4 p8}V/6 9RD]^9)SC!u%q?  ۂ } sJ?6tL&B|רyhuf*hפZTuƣh2o hyЩbU޵9v*׫dȡd-ڏ({iU3FwOkn5YGzEfQMSdE 06sfTb_ms+ r.pխ֔oo?Jt'P6k"3nUtDlPP >$8zƣR PZ~ M1׷xu{q|=*U!E ׎4bF|o ⓟ`Tq.$^9$ڴ䱗M1i+D#FlF3" {P>\7g@dâayצ}ٻZMR,l1-Ho4+#~f؅< ;%o>|2!sQ2krGV/!pfp![RvS욞CoLV%k̎ᠢKt ,;_J[%01܋CqI+P"bY(Y]5l>Lso:5Ӏ߳GM 9+ J' ޽e!9ev }=$~T>)Sz@qkB VOr6F(NCIN:݁Mee)G }lC"Uk$nL4p?j8)THvK[~]鹞0Q|@_U}|;MK;:qhiL[<+CNز)EUrkt\*>0 ҪUe -.S~1 c/JY^@i22I<7 1͗);y֥/.KrXK$>eB{ʙ;nSk9E&ШZC=Hqb>ɏgl1:(-dW̤NC& `X7%Iu?K׳J`Ce\'?1R%s-:.=> LVeb4/,>(}8 u¤{V"{6Œ55F lݡ[Й$5eY%q_)\c$T[kt$PΪ]FPrL갈Wn9`=`@s܄5}L[" OJmQa jŖd+Uv &;n8?^i :따t@p9 N~ 5%7L^' qn;&snl h CB0^L|fFuZFly0$b۰ZR-s?cOb(@,!! zIkq,P4Y@矡W(+RclTr:>\غ.S9Y#WaroU\$XRoC{Q &Ij6lkrcx:x3ItNl;G;{TjPlI^Ӧ*tSf&ٰO d{ΘׂՍiG]]ףvrP݈)Z)\ >++L\siYHp/6鍙͋;@w e[WI+y0r.q\d:(c]/A 矉D2Q꯱8H9N[{\Yq톴RGuH 8 BISkfU͓-M)F_9W8g Dv,yb&B:5uH|[DN3өv=9!wᓢug0o{t>o11l~l15YE4}"[%l)2/D\]zZe>E.f>33p@I{X**wEiITcՀZD-p!&Ϡ|q qE jث2냰e\*MУL6*`6̛߱Bj`I\(5^ uCNel|so3[g񶉄NL5j+ jiAA(,F]q,U|C ;?l?F#rZ31ˤ^qř/`I*mR+VΆ/6 moxӛ^_=ЇZ6H빳q\FM<$6 /x7[77lDzh?+G?.!P A =J-( MzTDݦgf/VCz3tWHv:|K=8TP?-aB/|`u_'& 3=C8=1W[W^L\o8 !66܌кB)2NwJ[} eC&0T)BC7غw8J'76tDfC|ÜСUla./6Ax0n!LB]췈G_*&,ڣwd &Z5qP _k5 &4FlLVߣvfϹ>(d Ǝo:d_O`w :8Bne3xW7qJ[+2Ƕjlx%)h8s&|wu ٻ0:P[|aϊ25r-gJC[[lg"4BzQg\ ?|F[Od|8VV>wy.@$E$*EjDeȋS8Z6pJUo G݊ОF5Q]StεJxG cR4E`gjwnDCQrŊf*{zwBK΢XB.z~SIK7ސ@"_ !ZH^rȁej'ʀkW mrJE-;׀do*w=?Qz05z 5}-o;C[}Z]l`VFF rnaoTKJܖ9k3;7\!iUZxl ;޽o^L8F窣wV1KK2M>ck^=rpM } AƏmcK2~gRxs_c0RtaT1q9\q@)T\I~P c9>|>gje NbT5UOҝ/s7>3'{$γRڊlif\45ɤIaz|Y\ .IS b:.lJM"$8iȩ*ণndpAiji63c= ?|:m%WSD9g?EJOʊA췈H S]'ƬX뇑L|N !b5\CM5\#@8;en9 ޤbB8 _&}i& ĶS LvC6->iTՈmYE$a4ZywXb9`UG[l,B+&Ύz(H3 .yF׏>?tq>22C8+)rޘ7ͺ좽#Z6t$!wME?Tl{1Q5}%hQGOz CrbT[맿.yȦjI8 Ϥn>)x&@ėni+oʯdKZnrݮcMA`\4Ɠb eF Z3 t RxTL<]d:@E|DZ= Y `-{[&M8WcM06P>m'Fcn\л?@uB+X64x#ڥd('G%*jwXDEQSبJ⧯CRIGsg*iq1W@5d*siN[GYo9dCw~^LJ Q鴓3*8G:2t TGb%u-AEif!}R >$Tjl'c=ye|^'ž'?<8Iv3mEږS+ A|,xyO/ J 1ʞ+[4+ݍ8;!R‰|>rΏ:b7 |zBժlomOV]V{af+j;(+np ujnSWa`nX$۱A/Ӈ=4{z;>'E E~o h.BnH&d,Y4מQyx /hU]\d3t]o+b@_# Ř%΂nlOBz,;).^l/Ep߭?C6'kP ZNr)}ۦoRڈ@G  Y:\Cu)QՇg8Qqx@кLXGgeV;ZJTn~jԬ ^|]-z3I!Hi}.l IR3l8K`P `!ܗݍX4% H = fi9Y5NS$ o|q`j1nbԑ5m/Kݑ|xnivJ&IfLocq0vo#A:Rٌz?ݑLN!л{f\QZKʚ(DN3y v{Ċ#,Nc09Y4)0QaRTeyW,V@AuD]tu2vwC9OGkS BmUU]Fch,XRXh?"s*(tg"v7F๰5 ZCzֿ| uݰ8GŕKEF-j3|Ďzts3С>Nka824kZh{%ݙ}rP&Qo;hXvEm,*:RzFͳ 8diT7R}bda G6?r'%N1)LI.hi*N&A]}:#¢p)k\\Kim!-゛lQ_Ӿ![lO[ӕX>PCnaf1c0BU& 's^CJl3őtnEDe6M Ub8dHALh4C~2Jy;|S]4*-Hb5 7{thLaہ^s$c adS)6Tsao\\zf}%U&32sm]#QYzL]\#_؜IIh6fm*$NȐDɳ!Mw)W}ideW6Sc0l{oJ4gp7!?45Scr.P\6HXTDLYGO9EWX*?%Wmp pE;%CdloXW"i0dO{>wݵRfx®cRHF.) CK!^fSK%}Q`e<L`nKiQMK!!U4gi=J@֝( gH-U7{bq[2أˮG'h`0s7ա̚uW#Khnq8v.1|.G6&(21KؿlA͚/neS~Zm-j7F%<r5O7&,<6dЕ_JO3[A=$ ѐ cQAv16Q%,{$yYŨ( %xsr{H0,kYyǬG*aFm&E(Z`3iW]|κ kP%M]Y|+RG]1="^hVQ^C ](7#Qq9ѨQc[A/G4pҢFitF9rj`ọO1Q(;>pµ?oA"nb(fpd nT;uet{f>%(*,01h]1 )Ȕ. e`zl v#X'<~W$AA#<.IXZY܁KJ G#g$ƻE- #̉,.ke,1gS@HM  uMiG NE"φ$~K[GXwiLu $wӂ`Բ?qCSUGIvn-r_ϏCqH$YrJs (O"!V>VKv󓾶]炝 h$ OxRq}1Qgs@<ۋ.TJ 6x,%<&V էlчۅ݂-g*{SS԰z-~VD['zؠE%fUMiGłG=;K?} :g{B)$\R ξ-`]] 36>' 00IZ劗}e:Ei{cn!5J ?`x#Y>B2FdQyl/{4S_t*6q%R\NHɑUN$Kgӹ {??')b $6~:yaNT9R Cl{WMV9,Fޑ^؈(}cIfa $ TvG{|0SKɷ'E ɇQlPgqFkn=[jFuHoIzn$/850BP!{b`=nѺl"AG.I;Z~*d^ۯ[ >$}1#5cQJqf׍|={ps3-GpHstX0|Q-Ě+#{I2.˦7ndv7FI4`Ud+I:=n= 9a+RGAwzdw̬@:]S ӳ+j6v!.GVCDR5Le31bCڄF!0%̆'N6άXVS~ӓ憛H/&b>Î(ҰcCĆ蝺h?KDoƔ*Z;/1%,&9aqlUZ$U`z C4Y\uQ€^GsS(TV⛡8mQhAzgvג$)hmMIkI>[fsQrl#^3ԗx)6P)q+T,4 @)g}a*%i+T8.%3axiJB8&o$-~dU֜c7֤Ww`& +GD#QrzmЃ1jv*~7Z?6'wg<6r v`ylLP %Tqdd= ݾܒn@ +;|v=e(GnZ,{EB0{uoA҂'V'gnBVj,n?Nv?t?NEt_(}PX'4,Hc{:8x,\i]]2 8Mꣴ2ɗ1ʝ%/@&qC3kHGHQU6l"-+Q icM*YZLYnb}hnIM\\_l4C޾Jmw,eV:e}m `@h7c|Ϭ?8ĺz!|A[V'-}u'SV-E^s>ڢ?y{pۨ ZM.(VT49j%:SゴpDk 3;gEqMjknq3&ZztTȝ-",r[k(^hT/Qs 6z3?(6~&1R^3*]OMr%<+vqԅ]e|;>;&H 峦7RLbޚ|g}EAgQ[io)ݼVo e ?!=n_LЦF0w z3V_xEXY|B3;T1L-Qwz(Y_w}$еR{tz/. @Ev*WҕskYE:ɡA;ZnʆG岢qOT4%ꪅذw U)=FAT/(Virx^y`hyZEJB4IA zG1l)s7l0ctKXPWL;(nOۍRJM8ft>94^MHօƉ+< */ ;̽ϥ9W8D,H􆲑!W26 Î ROV(M]T- Do^m{|C@ѸTu䴔!Nd2C]bSS-( Mt68K ȁ7 ь_Roej\Q4hh] |,YGK|1vPC(mbtNt- >tfڀ'uWu)CVC;#XP4.>l%I":vu@qy-*K:e0*loH(Ae9LYp=_ h*\p meoD-&I ȁcmj~2zN50ߧhȌ9▯e̫U;ak5eLo,@ '돮1s! դa_씯2Aqw_8U/T:3tJ_r܁L HwCz{kxbnT}24TxVj sgL9_k]c@*-Ujð!8%LOC81{8Rolu~?cϳ^jKSIUͲ~MJR6EA`Txvc2,,aOE{=,d$e|iFJ93< 65]jњZ. Ts ǦDA !V%jh/z1")ڄߥU9ʎ/vvH07}}k妍q~Nnk-J6p{aMXJuT<`~@d:3rfxQ 7WW94{@]aHNW< {]C|* ?EïkF i^_J.܌Mn:CWtp&o'ˆJ;(G+܁9;0c;`2l?!T.#G/ru-8ŵ]1QN|[`JuW9| {lP3_l }>`(_"O c\:H`f?.S?~u/084Zmh!|v8ƕg>VOhsDEkk cFKC@} {94'mX` t>ł=ǖ艅Dxc&.|Opɵ+ CB=z50p[Ηu7e+x;Ou[85m(#{`P]$r_]q^&M_)P ;$*tϲ?[r}K%-*Rmw*4`y-^+@q&j@Ea72lVUV)52K{ԁ3zgoi8^F)JGRņqv4EFƗfːyTMPEfýC'Sj _]nηuL*\7*$'Y񋿴K6^ ܫ6=͡քpl=(|sq'y2ipobϓY:Ъ*2 lRٟPl肉QO}rg,8ˁgqL}ijwe`mU,?!p˻*|#YJ@9Nf QrAc>/̶Lݾ')c4W5!8 I4{h[˿…q3 8 3e٥thΆ.DCV߾`\hDi#'Tgv"5WQ w!x(q\0^| MD2`tM*,&)7,-V <]F{+S9_EEIXYd8UXy̹TfGjӶ+ lp 3{N"%'6*UỀA֪j#h j{H[pǢ9$T!B0NQUcrQm,)m෺v¢OawQv\;02Iu;b9QayEbIژE7NQQ#'ʲ@ FWDuȿLҤRs Ա bI46?Dh` 9l D>W_helưЗĺߧPL{*55Wʠ ㊻G20?r̖ny j'[Vjg4g`?,Z oZBԅ(gH$kdNHS [5j7 reڀ|vNfHbDPKZ{7ԡRBd\]Uah=j }!aҐ[$/yfZ/SAt()4@l Fb䫭7OfO{fO^╦a酪M!T@zYsyouC"b(C埊B!G \v}zڰMǶ5)zҙ+8_d_"*u0.MOe.baSx(=*4?_@>Xf9lEѦG:SfZtsI ܚ-~Bgr,yD'5fDE!5F"&YyM"ԗni)ɝYOHPLo)n@LBjEϕӟƼ 2X")k8Lե6z4!te"-jsF.⟚//TV, qޘ_L:`I0&⇑u၁^=pOX4JKVb@&P]Ӥҏ/YE9iK[7d;lnj$ gOOQ.tŹTR:ourJnz!Njq7XwzT#6w&i!B>_R-g-f&WxhM!Y4 udJ;#`b=$z(N4°rv⠸8NsK GB*!45SL?qQ_x-rdzD.4߯nR003iT7bIs@$ŷa:}j90sۅ$<8'(ZJ|2%)!Ys},"W,],:aT~ r|2sT{Wv-y#I1nI#pC9插2ru+YmwL*Vq3͸Js]Kb2"}w[+ Ë_QK_(h`Iڛ/{ #/eF Rں11va|҉")KE@À/ƥ b*7'iGdBrYQUaGxw(+g{ݧ I?Zw(XPH R0Y˞ zMBUQ`]0R%#h-Nx1IPO/ esEȳ8ᵗ?CvυW4*ƌZ\iD@Xxʳ`GXԓ %|t Qʁ' [֚$PK8ު3MgPtFkɿ: : O%!Qg[Y&vyn@%=ؔUF,U:2{Yb%'>f.mJ$d/*WgWnjn0"vcF,"nhzW/VZړo/@|9 ICmǯ 3iI65Ds^u볛eWpc3^湮*GL+VJ4k$֐+U cYˋf+e#%-~0LRazg?W2`9L)6RtV^T؏0l5c~9h?Xb4sSVk10f:։14+0tCLb1!YFjv9K\U|<"/gqhf9@zSLZx7ǒkW.]qI+֖ʬs)VjʳvXzV_H]qa Iڡ v<"onI81O*X@KƓiAoAH[`-|?;ˮcLoP/!"(L6$ D?sA¬)n-k<@cvMqfm2 "2ˎpǖTQP-<ޭ'x~TȤ!2L5XD $A;1u>]Ak_--prˏ7NzV+z8"bW#wNKG"/TCԩ?2`p?l[,Ya3 Gw*A GlK|0VrfQ.H@ 50닎Ry'2)LPz(G|kg?n*tURxVwWP {Mk|cq88T{}pZ95>*,7A4vr:"u w?O-JZov_x;0LJUq>U? O9GL^H.J d_#01)vm:^ mql.!OaHSF ۳bzBTˊ9-^c7y,?mTe>3_ےp r}?k,k'Ã::{%U%O҅s"blI5gy53gn SIl|{Dw |waG>y-n'zNZܦE|hB":bƤ6|#9/W㷌J>0؏}T(}I[كyf޺_bLGA" ºQlɔ 41TdIw abO[ۿXڵ.A ?G[P?$G8_RvkKC6չ 9 T [9P9gG{.GBo z :}; ;{;|:B) 0-dzX~-y1ƺ@:EՕ'8vi0Oٱu_!(6_3oBTx|w2h#!B:5PɁhr5 )ד c( ĭA|`M/; ]źMQil">72acN*Y%AVf@`ݱsd:dJC1j.s>DY׼2f&[:PithEmi7:;YRA)_#eL?iM΅֏0o^^]Fb=D&Cm$D))ֺxo=Kzնrh,tH['<7KHM>YW],k( !LCp,+OSO7 cb $HۤY嵇_~xTf38zv X+S>j0a>cUK6[ :sް~|fi?-b9{qP]Ϸ@4,c6/6Pͅ}MhY]Ӵϓ'zIՓ.HhsiSd`R&<ؐeTlFbg M0Z` Vm|-![ƫF$|^2&7'z3Er* hLJBB3JYF9:mTr/+LCǩ2uEBbo浹TE""ۑ)WfE /lJ !-ܧDikgG@I. RI3%/&Aq^g|2[;VWWlKiujוp^қB@.񼾵%|Bg G#1Ő)K ?is5 >|y|1U5{_L aڝmilp6'hL7k63jYu7蜣OoyϟaX?#z9QRdO jH2,<5>@¥{ѯ@5`~VޝSH,jF +Q`qh¹# j-1XX%9=r;Cd\˲K8 2"ɳ"uHPQT=+(C+ׯ,oG*ة/ +r.YݑjՉЯ[:G7 v@Qx.2frH*))0#cZH a/zfߖ = Diⶭ"ɔ߳ʭѭVTo.DN'kMh:n3 ?BB@RU ?2MwJP{ogY&X1 m%2 TDxh1kQЯO\/\F2JBΣ23JOO(p8 5:U!M:Į_)WȭE[Y!Q-Ŋլ²^10JP ~]&eFƹ֏~~G,hђ:)č6]߄ge+s6t\%R@lRnYG3 ?Leq*t5hNW7WvUu3N> .1z RCc@غ1оJC\?1G P}54:_F3Je{:jUqn!3ptB8`PBt! 7 kN֍CX?zqFž.m*$8:ӌ7K:V,eOC$ߛ:.Bq0YZa;rF#khXsGl=x }5]T?Ȧĉ8>(2?n'؄- ٽYPFdnuRx\컳cFp z~)f&3JQ`Kb)9etE#Ώ}mXafM%3BAckKq-Sﹽ+vý`Rւ vOek-g1͜)kGr2`_ vin y k(> Oiu}zgAКE#>bM镓KF@};P'_g4隆3 k 4lyCjS};eY +w?Pݞ+HcAnMR0<D|{YC>4134}ILtfWw\w %x]."%aK~%MJP Z E*J\З+c#fl/EB6|UGpr7'Aͷpld-o\]L(fT, 1uE3Z􃳥j)>)GFgyz7 5\Q"{E+AjtVk6g^=eϣ/urHu*=$Q\&J#W#Xn ¡,~ǧU v l&EуvOĺ#?ޱ@Y4aX5Nzn&Sz0 F24焥x#EQIVU􁆏[oBQ!-FȤq:-(*nѳI0\{oQynb؍Lr:JjLEtCL,rrX4᭚IC=Mz ;}+JvrG{0* 8,6JlXJFzBA7MR֥HJo 7diNKK//fēB>:I&hKJl% j8|Y#5پHwp3\AFOc{^'񇕭OxI763c0p`m gяQ9HH>1vR2skBvotNSԞyea@trX:5jь YK РBNvn:;vP9._o0x GNg:woHf0wH;KQ&(*(9'OkH>UqZ98@E5fy[@=2 \-M g //~R.-pM{rn I~Va@ʤ |gmmyh_Skrv[ ^/Ct;K=A7'(n* q# Ұ>f(1Ravc_zR1||&>bv G2Lz1R}[{9тJtEoihlh$`Xzrf%3@s㣤T(OFZz4vX"dE{Q-%w*u>F?&m`ɀ3_[M~ ǃsCm8&^,fnmb--7'TwOL5pfe"ɤ[0&O5 )nGKq*ʹՊm1j 4} OՕf%FVwnJEҪIR2O /b3,O;;s^i4PI\6{ϐzIP"WnW^tP sH- |/DLpƗ (͊騜|}Ey9b]^aYۣhqȆ?1uR_IB/6 d.o޿gv|"(}L MYOG-l,0\/A7Gl( ?_";H8:6jB G`zK##6I t=wϴx+~*P!Ӆ-lAD 2.p,^0v+YƢx.YzuSxUr/ dp>Z|*ǝHስ`j1@7,gifjhOnw}h P/8 Jl'u"::,ކmz-"6xtw챘Cυ'^ i9"c=ڪizFgOڌ.6z #h/$O~Է/5IQW5{v7diТ-ec;9fگAo{8Ncjz$s|Y읙*v:ҞI_>{Û[8l -ck'rqgq t; k2UUP5(В0% PƱ ՌDOiA5  UDrrF{A+Nyu3 Ͳm2Y{ ` s1:XܺBЩyN=|'i=jnGbΖ1H9S+7K̅hzr45 Po }T\m9Le踈)31Eg%ʶc٤,d)_HXgnƲ* [ jvt uv]!e23(ww '0}{#6I`VvUc=' R 7g/, bnj$Ϗ!>]\m8dpӴlbg;I(o 7Xɬ?8l@BIGzw聢lK"T)Ϯj*aAb_ݵk|Ow>]0{2}&/a|#ugL*  ԥlW[A̮-( JF h6ƚϼ6쐆-,LMMZRȴ1ح\L%dHI^G#])L0?uH} tXڳ"24VG?wyCPr-Lx 5"LN^et5!m1)a@+Q/=;y~-Yp 6l~aL1KI_ n0;Ov 5(3jx‹)1jz8a A60#Ty:ل+|Z:j ]i?kiTk2K"YM`+ߜq.vtԎ"Nu4C# !H?"-uhmd sֳQ&LE[qx3ZgI?%#G4֏CS ɧ`n56䇥a5jŹ< Pfp1%C(dG|0*yUc.餻^hjΥhwѝ~6QCN&б.*:SI 9ld+y\{a&*{M wyGrHXlkP;2GRcnFH|<Itf`J+vOfZ"3d3d(yILtmU6#5smheEMkM_ym맋|DM@E̅W/>E]h̻Urps^D{vu)X,-xG1bo '(NBqa.AEث [gR$2sJT|-BT?$өnz#>\Z )<rϮɪ1o8 F{,jnE؛aR\y΅I=fB#,TbNQ+K~KX꬗[ bij[9;LZk6IHS gS/B/:z *  P̆5H5 Fjzo2zŊlxtJNE{}^&ߐ ;]5iWoK%I6;ڒuUj|=%R9 ws􎢖ޜW,4ќC6Yض31wL]v8Wfqcoec}N}ꦃma$o_miwD|jY`>~)^UF*#ژ(ׄ|NҷZ ?.z[L13I&Ox^ŀ("#X1ͨYx}KI~;6#??U!{ sҪ,q&c'wƙoR#zR6!2x3|,-x>= >*nS`.DB Nq71FY>g.4y7Qep5KmNi >R鶑uH(>/Q]0SeTה;hW{x0dJoFbc{ ]7gX"R{4߆`\^LyS55(¯u J]&nUxNat,RF'lR8E)`7Ij7BVm7ѣ=eQ:Tk(2 N^) =JpeGdeNA\ 􂳑lKHd+9V9~!_b>}[JMqUU7$@=={`ۮNs=$A#BrlVEMcڑX Yv183K'TO?q5A/8(cJZ/l҂C5H+ɓ8 ?LtIN4erHO!c'cxS) `c4-hCRQh&iRhev~*rVFgX:LbŸ}p*\1H k')|_[N˭y==mاJ**v{͐iLqonsE%4KᰏDm4@HL Aq(Tt,[xfܳ}h #{VN"D׎w-ɼ1Tdu"12qʭ_bv(HZ >ી _HR ~PK9S3DI3I6cӲ,)>kv;k!{;&'r2+ŚɑH&Ew0PΧV9vg9쑳*ޥдsAKi5=9g'~K?zg <$tqg[yWh GR` Ɛx9,[i¾=#]OHȥa,=gPb_ 89Tx SF{Q!{aj6/|T +lU=>7eƦo7ڨA ?ՐyFi#gbЮ!/WU:6!$Ȱm'o{؄ͲƯ e27ޫ+LEWP4/:D3yNwL H+&9 |c@={SĿ&c"GQAE8Er`}޼mUjuXvw]5(ĎFPgmjy ם Z̎ jq0?mn9[&XW4^z,b>/-`+SIy ~{P*5*K@VאTO](fXɇEi 'llʹ1O1)M_>* +w"cm ސ8#p";HxCf/0W O\U$)T{jF`/8+q4Zf|ųORyBĠydePb~]-iD Z:=zIg|\7m[d儵h˶5yv4gZzKA wUc$,_D 'gO-W~t4lA}s5u'V2T"rU6#oDGZ#H}%CDB̌<[5 K6q0c")7G6޽AIJ:zR~$p/gpl2-~IF"0ń0ƇPrf2#̜r#yY6]cw`hXT) }N%?p?iO`Av$LƙrؘPx?WOI>{j=/oȦ Ua}&qلU)ΩS5ܸ}H-sQLKt,=(oBj= dumTdJؔ4aî[_BUb\OKjQKus%M)$+*Ƕ8$N~|/|ol`]:/;L2T`s`ZþO,(RgUxyY<шZ{ۡT!5Pت4_TGږAi%劄l؅:̪L**\&+6Xr8u,j6I)L ;tpUp0M9UOZ_ 9ɊIϚ ޲:2O~U} O n\mVl*-]?^B0g2:͛Cze2s%ܤ2EL$(p]틠tI`}!x{ cJ*%XwKS!SY(7Mn4kfJKR {?=XNpI5.e:yocwƐATw/D4TP? ee.k<\Qu^T m{Ro5*"fn^*%(`#׌#XHN)LYHQTU \8mkJ~ ]5z& U?7<#=ꥥ@1~"7$x's~J,'un ۖzh2H$W[e5[Q)a^EYF=pw'|iJ ǂ՗ndjYc(D *:<(,4D F:fi8p{> h6A;+i):W6Lij[M?ca DMȣj7yxtkqi|"KA҇A5ߦL[V>ЂqZ={qǾoNshzu=CdP^?cadT%Ucv BnLEEj]m)@:ΠU^k\#8ה!YZC yS.%UB4ld'_$!T`'j$E?_5cI~/ja3>*q; R\tGz͓OI2*@ǧO bN_R~]_:Dׂ>)s]&cmAL[%vvH5QmyIlh 4M3g;9 ߨO |ܒL->yB +kCQ;he߸+T竆1w> AݣX{#*TYTqyi//,R!vIJ aQyLt2JO#oSU푗1wPX/2m$eb[x'4f;PC;?2ZM@ŀuKp\њs"7\]g"S`ν*`4=*ɿ::x2ך.:"kѧm9rFnh?#R>sݡ؅yh4zR$"-%KBw7Iqm .A4OLgrЮWe?O_~^}E+Ah1%dzNk~/u6rI1aAeem[-i/C!qzHD̲9;. baND*D@K.[oHI7N)TXqNHn)kDhUi}z(g@A(2]NPB,9FjIp|``tA(UޙY8ǰ30@ -i(&1%17Od^-ޘJ]sjG9_ ǝV#iֶ/4歼#g^ymOIg9|Cd vdڄ^>-LK<}ɇa2$KT>N4ɏ΁PӢB4DI0]iHt^v2MoqTv B)4a`ΩQ fc0#pAb>N"(xY2oӬDڈV\UFuuQ&1i#S%,.5kytG2ٮ/  pmreNs@TXr’~H{Ie+='9a@s]KI(@ ir7 $T Dmw B~i\M4.\~r^o8XW5L#.(i:dhsy92u|NxrDmM[<~ͯx3M$- _Q8ďeO*Q)WJh>%$Rpgk+֋\RیЃDz{E8;F t0 8ʶ.mz:3ybH\6 AmKCY8Ӕ3%i%_mqAGלN!Nme_ rv$#/w/ s+z9XM4 E zUyWSxB h?=t+3%<^G곢PoF,&92dXr0c?S!9GbOjo"k@t KYd~3M-/w;<Q=͙W<{ nZhM'/ʩAwT5 i.Qfe +ʖԩ~ЧZ\,e<%r,۽N}H3ŨQ(ݾ~mG^-x\Mݏo4>#RKr| ٮA$";pn4OeYzůp?~ Ez7^$~^bh2̑**|* z[\=O7!$TwwO[*rbs?bnjҺFFҝ^k`1:. OFEaKݦ}Dy\iP{j楤C4aʎa{a!%'F(iwaK>􄙛;TNՋ֔R*sc>A`g)U% -C 0-Dvm<ѻ͝K#_s/r_^QRO(eeu裎D+kITrsCg`c0H.xY _KhHFW)Hd8 \vZ3ӥu={_~ / <<$7R8HB2׉<3G=5":TuvɝGHw@ h${1PB~L]i9FAYՅ40h~fw'. 1I%i$U?A[bE :k lGOU<r5N+ h'ғu @Eyt#ۃpQD n6m\{kG^kVV?!dZ޸,bĜnGhG(O/8˿lSAM9XfR`uvL WZ$*'nC.abotn{%b(=톿Dz|`Rd.}ApTE4,DgIԄ;%^ ,׆(y1v9Fl>KE<$m=BJot &,!ߔ'Ѐ[ΤmsvՀ|Ԡ:fmMUN5#T;[Y29N7}⦋bO)+TTdd̦lG 0:a ڧW+!N JW7CޏRN0$/ %sSz-_4KaƎXr>\_6/ S #!i"te9>QC$23|i=e`̱'is}êEwf\BuՃM&nKxIDVk<ҙVTT+u /"q&{0N NgY Ls tF:9`ָ[ d`$(S4 CQJ7|^P\}vE'A)'T5\'?n Q}v6TJҷCu2NM+NFI#sQiG(RBBIUZa{B[4<ى{P 9-2+*@-7Zf]4pgi>(sXdx46r,#/]iY,O,DĹy.;H+︍g+ 'bjꍔl>\)'?Tc6.B+%l,'5r{uW7 %ppg MsNN t& ·#"5q%x]~VWHu[tdI(BB#o>%'<1vR#} ;\66e 8l: !36듴S=Múhak+ij,Ay_ا$)+dN~'T}:HE/ Ȋ6 Ǧ1,Y>(YNK8w=;cOM:VqL6`{Y3Xf\ی3JK~˘#7Bֵ)cg_#C=S9<55|Q9J+NXQ1Tv3v}Y;2̭'NB_R+ҩݎ؋x"MP; IxEd@I˩@-)B+Bk8zbTo2)N2a嘝 kȳ8`\I=~T~$SCj>-@=}iJSPVBvo<<0ԾEny iWˉPڄt[V0z# (V?ܷ˔J@qZ 젥#΄,EGUȲx Jcɹmu)G5c6nsRI{3&cTRm\K 3aN@+ܶ ֫9W.A*"5gu'2uQ) SjYg]IJ&wo$y̘l*did+MB ޒ!VIj殪ҩkxC~ؓ]lW+/|uBkz%8u?wÂآ?U#Vrxׄ8,}4fkNW; ]gjIHU4$"6drd6pyFҨ1V;j+pk-F8 ,P.5Wt2mޑ n^ϣ[o.vQj$PE]纕Bjt: %9Lw(rEC3s{d&f6xd- y߆VЈ@\/Uڵ9 j#gs{ypZ|hKsȰTŖ8vaxVaW ׏aHVp}뢋6(Δ7>1[aidI=`ǏLQ6<{:ƹBŁ^ya1`a=:ް˱%CuS>@%uiY/LYG.{m~FA[18R| "ZV86|^MG.\J^Pyx.iE;+M|p;te@dQØLj|'d ;qҝhaQnc$ D%N nSh\sb*:]b=Aid}ڰ7M͸V>I?a,;# ( yi{;pY]U˂m=o1.[^ zr65MA $ot86/qTsEY)nZTJwp];W*qt _hv{b6_qCܐ@c[H/ lRbAuC,6̅76 sJgk!l|Q]<ڍ Eʼniu:IM'[#3ˀ_iW %pKVFE/|F!M=@P61,\mDZl9ߔ?پviOKXD))Hw}2Ϣ᫮;~>Id 0BBY%񎮯|^csɥk. :|سpI[.mZ&ZUeiz3B`/: $F3Ǡ}IN~@S:x0nA28 Į̈w `+t0/":Msh]Zđ_l.uNgW 󠙾ihAb3N?vVqa&rKj]`Ohhnfڒ9q?ʵXJ0-!Aou e؂Dw43q im?/׉ԓk]/g7fL!~v#Q4nQwHoկUw]I읍WŢ ꚗZrܟIfjuqZ b4KrD^Bglgqڽ7IQ/MZj'y)܉67d' _h{#[)zuy؍4_=%<*'x8[ي#K@dz :srw;6%մ=] _Hh`D|3 -!Exs,"^V(m8eTp:YuCg@ BhBfwK!e3*O ƴN+̐e0JdmƯK">N]+ӰbIy kB.sդ6@/:¤`ejy*Nv#W V}{ۑ,EGV I~Kx?r7 QWK%Vf0Lfj{cpGAouρ`VM#0ށQeEըdP mK|"6uGorn?1͡+v$Ybi_~ɽq̕2w0D~uԖ'k.sT-!1.C̪v4[`, B/Qyp мwLTȪznu@k oZ w(b(#<@Ol.z5x h8c05м\=S;jtZ9V\/F/x-BM)A':WW^&XBIkU޷emo j&tQ{J=AB'gQPJ9Zp2;pt+1ĝds3,.&W+ϦIWeJ4m@r[ _Oz^(5E3wn  ?Ni;!hCg'3ߥQ_(0,N3l"޼  %z^yU)8䶷Lwij)IZQ^],](z~lRfB;¡S# d "'$K9uuH%Zyڌ-༰CG 괕Zi|uci&|*rrڟDg%NAhg)HL*d5x[᭶rڕ`0R4 w8_䞎8cCܹ?. qLΏv6^s]( ǐ:cvsRh2l_38m4:Wl$dvq4"}q":zt؂Ci.sh~N pۡE*&@<(rQH>OzkC..sDLTu1ȓ?KgGǥ a_uRΜOeZް=2".\E Z9+#kvCkdD-Op"8^;oG145FlX!Fb ॱR4bj"IoA(=pIZ:f.[1:SiaVuolɱ,[ŝނg>LpܳTڔyaޏ7ֳșv(Oz^, T/]7-Em cJl?Η+؅UUrdKXEXWZ('CJ(TQzFO_`rrtbuuiH*y7bQ!ybqZB$0@{3dY"[\WI7~y-_b-!ñQX T0ʔlkP0)rԘ4)f0o:ce">*"?4\ց ߺ𘛱-v/3.FxAO!7⦄*Rn"sf<ޒg%h2΢^ ԦR+ζzl$d6CB܇wu"" UyTQ 6)TmOfY38s`s ~/;Y߃BMϚnk2hPuByIIo{!dM]*Twɩ>B 2"6EIp\́'ܾx61$ildz[A}N1$ &~U،glXmD@F"v1[~g!*8?#7tBװy1Iu ꉾQ~]Na09V Os46b(Q<5~ӇMpN,N U"yoOsQuȾ@, bKdjy<`=ܥK NfLר5H0(嚭P&FKFmv1|9n9%:˔' sMŀAHXN?tnm]3W/ jΈ1D4Y̱Q-h=&ǀ1 1JnKO:zbb? 4c#K̋%PFfngַy!uLMn6G޷`^0 y7`2cj'_xZ3+IղŌe0a6gJgސ:PU *f]<`l,{WJ?bFcAƉ`$ԾN?i(ZzWQ!۳R`Z r$Kַ)fwϨu0]:6L$(qC/tpC+m$.BWU[7/罃+} A EWYLi1M!9cݸvNZ ǣypaWÌ ĝ|"a HݣdEij-B}꨷Gs̟tSun 1+d$] ç Gvh.Ҕ>D#1TZd#&j1ZDDZ^ݤ7QP~uaSkȜBQ/mw>~hJW禘a'M e^Uf(D3Qq~߂*ML˻_=D=qJLN<mBDlKg} oU0b<$QL tC@Ai-g!ቊ@K72LG?+.C.Z\3u 5BSm3<_mQ5=c  `יovL>cҟeC P܄?S>bb9~6xrҾP.=V;L>ǟBrt~;sl6Ajd@ 7[_Ji(ET#n#{996]4ԴYm^*9 EH6H/V87ZfWtE9AQ~,m QaucXҷ2OL;O9 XV?嬚kjqHj~4kɪ.r*I' k{%x"CV1Nx7ܻI.N X`weTC҃#%ҧ` ?wBT*W.aDd0[զoM$̣nsp͞@m8FI˙)ƺk[J8Zsa ,Θ@G9EkǬCja|n BY 7*L)2uQEGPޞb}ix},s0JbಕӝD"7$؜ֵE!B$JZM*B*pX weH6IFc\x"һ̀h j4д0% s&DNW KIw J"3i Ÿϲ= =MHF١dN R2ob.0,s=[`tsF:IN"tX䚟I IB;Rf`)> ! tD71cIښ8A`\p 5]\ndhroFHU['SF/ozs q}I<ߩŒ[`+͜0PBva3ĒT)< aylGq[pG.OVOѰQ`iCkߩE'G翈d[/Տ9'M21AT6?jQ2tR[X*}!KnwQRR-v`sS*23>QC~$UNP@<"?ȶPuСUbZ5:Tݥ1jW{{M&[ : WC_w_}j^YhF%;N-!h@V`J0*MT>'[ޠ-Eir 1&69qHӇ간 bl rcm JҰsB>~=zԀV3CڪQ{%EV/{q"̜"daޔ@ jyQ-q4_km?"~ bʂD( G^=$z. yV4,Zo"#o7ZlդŸD\Ka9n7Q!ރg#a)%6֡+^&⏴G3L\56%Lv{*|Foamh4(1mX$ēq42P^s+uccںJ`F6 [5`B9pEwY흯|3bω^Ś,Pc9)l枫xէ;Cq~.~{ܓhX:V{p6a}"!mqHx{!kwRK- NǺ܌'wD+kV iϢ-nl+zޔt!X T;,'-1"eJ)W ǩ'Ӽ@]%ː R-ʼn[ uzTn){,NrKMA"%Op L*"\i~|hCٱZ{wVɩZReJ B9X˦@j`~AMz-T$:ъg!M? 3ezwyw&sPȵߵ hʌ^<F#,۷XnLR1G\9v&BBTT`hQ7s9MPWJǐ v~Ns g3/u+3N{njjMDp{,QAǑf6(}IYfTAa}͜,aܶ1 F@8hEJ}*eKF~i ?ѺAq ,f%7@Nj淼h VAtut(j㟂3AGcX$m* WD+*Ϟ_7 E]E!X\wZKx>'$Z)j#Iimj$zk`]f; wIK+{6|ys6iKJ0Q3s/&g5"q<3x{HA..u3S>&,w[7tbW~DO*3`ua8i³ ǟQ0m]t2  mS"5dp܎o)8'z` EK+;zxnLP9@e}C&2q@KC7bu~}ȫ9`͂J.A݄ nnC[iOa)8քI9%MeMS&Ϳ٥㐦]vu@5vt5sBnC-m ,&^LD_BC֌r0zx)| Pjێ9s)ܜDŽ.1\H>5Ev P7+Nҭ+YI3r@c_?59"c~2@F|b!d+6W sZDⰪWw.JTtc}#6fB>1B>( =ń hK+ A$P,5P&O`IS}*[IOz7ښ>kʅn]~%scbp4ʺܾ|ׅZ/o|? q7EQnjW+.w T)hH"ዜb~r|R7PN.3$>EΥl.NzH׽/Le\9&pßp  #0 -O#(Umq_ q۷;U 0 \#p'Mp{v2^o3G{ś'8f_7N:.{jGyJANf5hna"hߟeh~ ݜh,eA8S8z WXi 9V2C{\f.釮ΠRG[Pƍ ?ɮilÄ# 6@f1 (3ay*)0f XA mI~L"z0 *x&gZl4#1'.$8=J# u!Ι$=ԞiޣlFs!?(䑿1 ĸwg:S&pBM̤H#p/@v`:V>-LhϬ$W۝}zdNtn(}il#$;[ eB|U8n ±~Ms9~N,PK~@?ܼW+Wu"I>=;ׅ^w㧚5dkgO(^ /BqeKsܒIi5g }7!M$?_5Ho]syIRTV~sqŹh(w SOp:诱57~ß_4ƹg`#fn5$v(.~V}Ϝ-Mkݠ)[b_N< /x YF 4_i(p݃ n2q'X|(vE,{E:[- AV ˰CT?p줳M?U~ EDAͿC|@nsE"=z5ps| {h#+4*`j}Z"'˯* jJh4-ɀWbg߶F)MޛFCnk r/J]92V@s={T Xޥ͟ z(E#ܬ.GG-:HnE1*}eI_-)3ރ(9pÈ8g]5l1x'Hpuv-PJmW3*M1f9 :J׎$5J=R|ymt*-`.AC+6;6藺DΫr[Zh+l[.9~'L{EMrGb O73,nLym?<;,4BZ]z V.*,|9V\Ƹ+E JC6f_eKu$,BFW 27@MS i0bW=fP"հWLU9ys7TTNؚvo&gV '_h "ש<|ƅm@2TVڇz(S.hZ?#Ǭgޥs`]=)%PGxp9iIdsEnѩ`bK> LecR٫.FEFwbEDs$xMci׍'-0U4z18ư O>71 rCU"iSbTh\9ePԏ9=76̰ӥǼluXSLBۡ?iHk&HDԟ}wtUliE6r TOabQG2V|x]D<Fi >rU=O6]8Z:&Pv-]*&Z"mng9>6M):|)CҪ>T̡0Zɡa/+]"˝֦ w䲍1q/;T?W? `ʥojto]:է1U ?wHH7wlS>l?CE/O\YgOL$Ob5FhӞ8 φ`0badsjJylFh_S'ЊB a 0q 4u׷t_'qJ醬FxuK`tUDEkfY`]nĿU-zq*]G(Moqqpo<8 y !6>4I ٛ4kݏTf"$Xz8fn0-c,[᧏hʍ\ę NQ I0ZdcXDSS]#q Jm7m=eZUN! ·5K^FGsleo>rM!Cl7Íb y$0j%TnIuWڽ?4B.>zmBJ!~Ae4bи!#GjU?$U}[6dȂR8d_a!6r祗!#g#^M TI ߓSJ E1β~*.E[tֵn{ (?p|.P̶AǛ%whҌޝ➐um\\#}h%֍lB m L %ǿM=V.l|-0OK !Ɨ-6_l\~p{ JDQ{k- z %Xof8zGeAgWzя-*Wf N n jpR6 ST2$ȶ˫~kTK^n9uP4O'mrmxp^hSBiJj} .E*Y c~Lyߵ*6~'*tE=p*f1"|v,F 44?j_m%9T'H,+Ih--dMg/tmvt)޷nȈ#H"kV7/f{pLEșQ# CjFHU{d 5*?P, ~y6hS ,a=dpӏq͂!mw˸{Yt,, x5&%ѳU^NlbU8h*)HG0JsSGmG6!ʍj¡idWy=ۋ >)>'E% HJi dxQc ͛LxjTa0~m yt0R* X|CD3,N˵S Z>Uwq +Ó$5 -2J,nVnȄ (HuOK饬ʡ#_M2ّ= A}ѓ z-\C+z‚8HEJ)'u)Oe#Uh*Jզ 1Mkӫ2Si2ۥ?8jejQXjb{xχ-m*cC;\ii']Zc&Ī N])r1L|3f{MĥAFOR`B0 O.^a8MnR~h,…*x^n->RKkJ f}eėI<2[:x/&P٨.yCpd^[nye~ĨcSOe%Qkzvʫ:'3,&NTE܎uWz3AM1q sܑ= x65ۛS;V8/ 7Vp]/eҳ&;!jaV ŭ@i;MHje<<~8/ /L @{yQ%Rq3nE"#2xSM*e3w<HJ4J%E\D{R^e۴ɪXof0NB%g`g- bʝyZ߇|{G?{ڤI%r1F>3O>Pq<ÿ*AVnn+\m Эg4oi\jIø1 Qs 'ޛ32G6M :/dn2vw7)= Dǣ6pįn$ e2ޱ7[7W<[Ur>pGB# 2'Xl/Pg*CF>4qZ$>*(`{l#ոwш!|I+nMcG`Zdw#U-!Cfa㍜;7O4,Z1 Ӎ|ynEHJ{ HNsjוnmpj#S94n#yR{YٛF:`\8{h^a7Ywо]& !9 &3&SPE(P30%</ `lu"Cr4 2po:obo՝tx5Oe'`0BE,棪:@uڕrP2 V ZTg?_Vj_w i% 4Njkqix=:^l:pAr[ϼ Α}Iw/L˥Cr֔JJjG~>moW 91V$*dO<]M#$jػi-2?Òs$ֺ,4–8bhB,659l3=Akga:8.oMp4;HHm|A@+W;6 (Za>tʯᆈ quX, [K13ќ/&) *(qX*Hhn zѺ{`[eTqcݡ xDIBQ? &]gSZic.$UP<( QPh6K %a>N(_o Hy8(kz$QD(c(.FZ'P>{WzW)^!H|l f;ŇIG\2 Ԏjx` ѽ-߇ ,8G:}yӑݪ.Y[YitR{g(@0>|%p!0xI౤-zInQ$DZeB2 r)a[ңKV^pyVMgV+>oa_1߀CxtqgFK" k r/ 8gF~\uQ{uK !` WJ%:{.w| .7/򋤦d\4~Yy]sr),HW3;h$ ^E˘ ƨa40ͯ?ob;#Vhz4&)a?_na΂ Y#k~u"6VujubX$&WJP6-9:#粟:rr?{*s#&@M('A]îp58WhYy{y)dHt%aԄ8Hm1? 2Y"S;ͧj⩯Y<˽)أ&8ZWghD\S\/tȆ b VtYAvM\Bv +`2|,/H<(CS)A[]Jw^CJugm 9];_ѵN)%Տ_LHF8zjwoE g81=/6p&F#瑤䛕 Dn 혱 $;6>ykG5JД5Eb̼y'Hn+tC =r ?+ַCJt]~weOѢqƳg W-":cm͗X)dKHgCY3ܧkFn^:1C%jAA_1 .BstXNZ ꥥ/&I&0(S;pj6T0z^^sٻdgSQxǫuPU t ҂Ї~SNU^- MsW,k|(zsҭdm6xĪZ{rJsP *oo7K+8z|D*_}[ m}j Xo@W۞e=ވ-t|m S.5_6gĘj%|}#ߖM%1YdA.w%4~N 6_V KVrcL2[Sԍg&˶Kێn tEQmK%W>ȷ: DR ۄW_tMN°g'7W6tI_ >LIջ|&>)~IwI6:ڥ^r^Up ^"}3 5a6|' W {f&}Q,vhxQ:Ojaf_G \ĽWҘ7\Q}XT`?|H\ :0J0q~+|ul$&\ϥ,E3ꅓY"*⃒CMyY5>4~v9]0f=a[|(tפu7`-5 h9Lm#n}!ׯO\m]z'JN}%~fVlA1B^r6Hx*?I#0>2C)X]QHX)sQ@JwA*gnib\~?\5!w^\)ho[7>EdRfw_:ltW >rJ|WٰHGKcSK~Mcs͉3(g_kx[`jq#. ]63iy06ě?2o98dϖ rO<֚\$h%ou+*TE:F#9T KXgg/lbP*)晜,NS3)}gؚ\?..!ӽm5E>~*js{A2AʆY _eYpO)>*A/`y<ߋW\oݓtz"IUH!#L Ԗwq:)JGr{b<ݐ42.KJ%nh^+H7KCy?9KSЯQS7lXo)xE1]=;)6ڰFM7JW<'(z4/ƇC#3M ?]yG-Jgk*GxIS~ 9k TnvOP*#GkP4Nt_{i0(:2.Q"ߗM՛uAw*oγ0BP`M(FQBWr'7 iQVg"Y#жSᔌ{ 2}/SM`S[]!'1i0g@);ǚkH W?kwZ&p}sMZ=e?wpn!8#Yuz$8^YR?3ڑnH2S_脘CpydOKK: l_qJG>1g.J_pf ݿJn.Z]5.q[8- :e6RӎN˭(e)}%]T/i@7_"|x5Oz<0H}r<ۢhWQ"-#mrWVpLo3%_o|G:1s;uNA$͎ Zl8.|dnw u/ G]eg  Vre? VRs5^w>F-a;$4K}K&X'Ze5,!A5܆k9 }*Gt(YdPN24+;$SfA-Gmm,ڄ}Xބ&%Tkqqc GߗM~CZ]&zė~&:vk ]4-LA"W'mkt|% ֙!-&iY0Ń< 3V~Oq\F v+-i݀W"= TNqZ"bG_`*>Q !ManLon *=ݣq_} S6-$A W'$PAv4Ԡ6Q!f4|aFӵU?.xeb$VVfwVI%@Dy8AIwp -S@Y?65f U'B O *;QwD10tq)_M^^kxDEZ\'cz{q؍ o W5yt/.}ltP: %8ĞʍtP֦ 4GF H.]r\\Ѱ=}qB&lUkH4Z [I0bTy5a `J_i>D{]OZ{K=2džԙp_p $-d+ Eݓ(MC90Pi&wɡ 4 q!@\Sv|/q/x䦤 zO]y&"+Dn[_QK§SG2AIޙ}SIA[kzr.ҙܮ 5[ը(--4SL\(5\ͭ`;(V^}^=]tϫM8T"Ir9϶OH=ϡ_v//o=mA" IN=&ID{Ӡ-nW-w'~XɀFl _BKW2X{ tl5,L]8Qߝ[r HT`].тkH4Q#yqlV L<*`N0͝3UEu0C]7N!6#MPpd)4!!ҽDW o>MB}}ig/1@{XZgP[qƶ';baXW{^2Or@%j;"I{SD’W,s*yeȪp,IFj{Rm̊@~uFR[!6rFsWxu%dtlm&]BЏš`-g{uE񰨲4maJ x@4ðl<--6A:NO',DL3 }QM~UGmq0Ԩ=:l$F vH^m.U&FpW2$Xb&5HNjkg5Ȭ@Т@\kNGza 6b\.iptu$E|i>4HkfCDJt52~qc:=ɭ/d6| S<ג~8}/qU~I|ǤcI1U!F4ºy_/bۨ]63ŮGX"@۱EfJG q5Q6X2LnԌޟ'oI'QR/rVg)Eahf>߻mw>iaq))OZ[MKHSͽs/)UR-Ewt5Q*];己r#v >L-[q2ѼJ<3>&&R*fӘZ{ !BZ%CSs&2rD|J}xw mcbTLML{Hxpce)Cl5=W8Luo)ѐgQPYH6!rA14H(,Ebq%ݺGt]m:-.x-j1'o98ݶrqН!ԡÓZ>1HIB$e&^ & [<ӂ(=Y-M̊E[O.#3m]uE= ̉m@I:89x V_sBmq]F _e# 5Dׅ[=j鶄D w!1i8xCEYrTXn<"  wL<><3+H$Sa߶ZȅuvE4sgChQ-Ca' /l@n{E0svq7%j`0@T%od@҄̾>VܸE>->E|Oήg+1}yj_[B ^xZk,bGs;y~ScЩBxvՎfJ^(vWHg3Z qdи,je#I»E54)MtD nkն~)~[!n/HM=<[+k~[?inLJSKV*߿/4n裬 0] x=Ϥ.+eyR_UG7TgCp9azrnjMڅ=6TN4kJԋ0)mT]LZKv7+FofTS1|,M[1hm{_g(QBs v)A aE=@Yk[[wM:p@𦸭O48`|k!mjZj$c3tOyyFKW5H3s,xDՑhWn|V}ɏ"!*?䍏Ⱅ2MĴ`ӧ?8%X NJOBP%Ӑ7^ @.VEPÙD{=!N1c]&ѭzގ-ȫ~S;osvo>p͐m/yܓD\*tI"I-}04eq$>"&_"HBB v BlC M$p`ƅNMp>> jREP u@GK@Ę^Nb1(p |- -]?}e$p@UBo<ja6PaAo)pl /!> n.SG!q\s)8O~vhnXl?e 'k3s?}R'0cYM٭% xdD;\My(JHX^9IFao>rVόI+˿s 8WOl[p1) aƾH$4 r["֋W@.wDl!$ OgML-o#cոP瀒4Cgjw{fj=a{-W?b:֩ iю];?CaqKզcrkƀˁl 5~x1R!wgZH3{j6HVu0)(rJ]q^R{0`ʹHLŋ'qq͵J@ Ż! u =KspLN^I"u}{{.bpnad@guxkqs.ix_5z-TU(uZ^xcQzGF4Osxӿ̄|g HU0ۚzGg4R 8o!{$f4!!,gEͳ儤Y\xTλ57,mA naq4Ty u3('dXѨoVYsַy rFFA;ZXN em5H';Ouz^N"J{jj s32@2A_H+xkSA `hc%?k0k9B?#` `=y)u#3#pJDmɎΚx65otXT4 p0zm ^a[Y PS:e?x1vqG.E5/JI';݇j|_am3h`*c`{aO揊aࡍrL+cζ#s anS7Rnn̼SNAޑ1Q.L=1<N씥R[#Zey$R GA=x^IkAǀDM[3!!E>` nώGJ1\\Ӱ c{W8jyWA@F]K"Y꤈ ~"Yu9[>2Y3ݨggr-2a5`z-Աb6>_NK!4@'TifX 'DEIcwCĄ=t: .AEvׅ JXZ:y D[# Q!0p ͫCP&u]80o@B8dq^J#M0)"1Vl I.dHiz@N[Y ]1-)&:('6zh? _Vqά"ϧG$o>gI'L׻`A-* '!h8u97,ח38ՉQgl1gs3*<0% pQYkO[x%AN;}r1q'M2w$x$g)y l zDC׵I)1Bq!ـPE5rJb`9%e.>9Z*O޸AoM}U?[GW e(`g+U\H/%5T0/iWx! )D :Pv,,Ic$_k޹ϋgeH!YFld1V8<6\T]Ԧ4M`o:`餞~9P4 ժRU_^lce^zZḶfvMឆ d9d<9%A IycvX+X|D#*E|GLqm7HA,A<.'@j(?~@.H0' ΌkiуaK==jN ۩NW `=7v2] U1ZF-$B$2ѳ|8b"),?6NY>O`+$'Adi.[q6Ҵ)``ڗ)|scZ*#L"fA#11mgBoIm?X{Zw6f;%7^nJF]nH&`3<:Hto|lifC݇0͖̩ CIEDd 3j々T0G/4%D[bEWt+!OXڒz A*&GtiZM_1]~VòM!!p8RtȔu)M،I|W?;cO;mR_9GHp\ %">\.TJ7hD/Qԉ38KOI_Sru^bq5=f7dzATA~Ugm mf^ڝp  Лzf$V+]l Y+}]&\JS'%͎e? t(K3gCOr0jyhc FȪqr$ɶ>^@FHe0g ;c}1goϙZ:Ud Ib{Z('_BW'"x '毧:SCg&9d-& P%Ywo;aDKGevD.g8fݏ_!:~jFf*QX8tse@+ݻxM[aPOJa;gaB;m~oyfd@dBΐ5ES##܊T[C,P ^ 3֌;}Med]bq1b BWJSn&9A>7vuT݄ cʤ졇VYza׸y.FK5kNP2bB:@Ne֕z|uhW +LU6#rIhV8L5SN/p-}Ɋߺ>٪ZH-x#6XJ nAO?qޱKU©N-{ainHpAvJWd^LB6zXlMByK60ZѸF:\v >q *2~aJ/15oiNW ^T=Qq/}woH~חd=_J#٬=޳~>(Af'"|ÄxԀUXuYF߄֛wu(XB!vF3̆4CsR?e/U5~d1=˷@+l4\b3i:GO;\)۠IkZj˦Cz9;UpXqU%xPg.oḁ$TL) ͙\ޚUMɅ.E9$͹sߖ@Vr‹eW'DB#҆B*gk#\ܫ2 L1).mMTz=@@)AwDh01Civu|S&BL!sGj6PCnsW,x(.*=ۮӵvQҠ`*nهT$."(ntKga$XCY$ԩwMshtz4!f+ Xy.GvہgP5M3_Ɵը]U<|Zj':~q;JC5) mLN+җxsV7ME)uX8]`lO'R}אԐF?ܙj7OB&N\,%^#Yy|+dpYqhjͼ?8Zc9Z4Rw0yi| 8B-lX(ښ#4"T~7 Ҕ+j&ѽuQ# "C;exV,po FtOLhy7Xxpy vn  24U*q RBzo;X"(Ĝ {$bVA O2RL\g^ye:O5N]ffݞBXj-?iz[P,a${Wl]Ixyڸs< mw>N* g(հ@jXV(ݧ`fy=\:H+ +O jd!8aCƱ ?\9|ѩ7 À&|WG>,S>P f5fHSC&(HWAktLA|I7j|-Nb#&X7]~B}ʜ"6 C :gtDd›HE]߸3:SČn?aܷgqR&5F)zTDz 'DuD1>Sd/a\;k`A6ݥO!褓x!I"l/nf4N )-̑$ h1 @}#CS3T\+7NtcO[MV,=70yYO@pޣԵ7ݑiGjF!~]r2՟%gȺD=]u ^ɞ2::oiszEb@آ~Od@1w1$twaKLVSU/ ZJ,#UvK{'xd0h4 N2& x%+/]+*gic|`F2rAs\ ׋hV~ EO!Q]8v,XϞQGn+~ LxF7.YMuV H:ed5PPE)?d(DՐJj;`n;-(EaWm&3좰 jJ bijo%ϧ?-8NBDul='uQ%W7Z/ (:lΪO2%" p= >!!?[}VB4d+P=&w?Jc7r( -)jE$W*ZQȲ8{C:ŌonB*!/-$+ 3HgbCtBRG >A)]j+ٯPk("g+INb*$C()\5 ~ܰFxUdDK* c Cψ1ַ-km@\@diN9IzBRWfq]Jp^Ujاdq(Jx"+vWfH$]Lߤ&Hl~ҏU:Z{mBѦ4e FҴBs:rм& i" 3 gXP' ~Ӥ{ŗ}F5Y4 g⸥!;<^äx(z;5摆ѶKN~ru(9Z*S)cFͯS^G4A(4&ڴʩl`C3kF'p.b%MA0l !$H1^f;]Å`fQ1SB^a^jzNݩcGA^ŏnn .4!WP@s=vjaT>53+)moF7YSaTޙ.zpe:j#O fzR;iAHle֟v =,uFbWq}*"C1GF8j?t^!s:Hy7Msަ=EڽZ]}..C_*[ ܎j%Jq, Y 5OuE(u`sշBϨrv" vo/NcJV,ʜCBNغ0p&x8sT~2V@2D[_%%L+&&%Iw *λgވxs 0k 4!hagjWD˜ i<\7p2|N^" gDysJp9s%{ A*:OEƴZOFjC|c8[XH=XEZ=zo"fؠT{רnT !ƫa NuM nO ahJ6/x7VZ]wjfpBN?2t/Ba5:v= mN[*WrU>z,+=@bֶ G` |zd÷ӨXQ,/$c{wFyօ҆yI/\jB: XY犇"l3+BHmXY AFda} 4ަňr^[ 6*AqYc\UEK`ޗ,S Yq~'Qyd%"]I1ȡ\2ˑ(.uB C~6kh*RN:X{iL&?9{ĒJPի[8z;BF+3,{{zbgˠC$oY֗aSx4;#yKgg(U+3M[E|}l!4:J:҉Lx=EpcX_/GrRgڭrdιQ+l:ހ=Rx?[8 ?x,A[HKKӁN"I0O$/F }>RP;%j\'M*sʟ41'{9muLC0%[sz ٪:C҅: Mnk2deU4*>mkڑ Q@i7"{摴Љe7~R Bym%eo",h?3ԑ'/`S ϋvIELb}q3wܩlv3-R`_L{Y0_(F[i؅ ,+t `X <w!&$t$=Xd`f*J}TWx2ixz|!gdi*&2m\xr4ˈ~U,眣V]=#+㻻.͒!;wyٷb&b(#˪ޏϮxUv%s^W "uPTiߎݕBTD=X?I5HN~N)8 ibXy )8xp2 Sқk0I8eYqU7a]:Oݔa6U#X~Hm/*yQN$t ibg_ bX$dN&M*-!j]&LA dMX" :F$&F<x!6 rL\2JuO$y썗U AD_ȴGq6ԙ/ ٬ZJ%Ծ= ;v+w!䥍%(Uػw/ϱB#70L~zYE.&vcy/AW=;WWC_,sszDj܏hS1.Y;6sODMo ZBՔ̭Ăsm,qCj"A dLl*̓i1pSaɼm1jn^1. X?}Ȏ`Dp-TJ .h54FmW|IkeM5 =.? d+\i075NK!`(\*1fBlػ>x{s6 /`ԯ%Ar9F$NI)@Bn>O|Y5 ѐ"ey'GeB j:=[o^FuQWTk6WO/_C;P=kA34Gf]2idN02OW<ֻHzFv|[ x*n=A Y#<3c>44pjYIۺ )wC+02R&!- D%@U9`*zP0|0),PA&tSЦ3QPqn(@@C2ޗfKm,\>'^$( ;(crclw9B)י[/F2xAJ6 %*')J)E(]zێZ "'{"bs^EV94$}LzL{~.1Q.:i]wƮx݄!N6M. Z+}ױ})E e4{wѻG&zyLO3ɼsvE-L,,AZ&v4ksB牟>#+$MB)92f2 ݨF}mY9A/%a]pMw/O#B;Sϵ ^Y؃r!4 j#i[9B8I{D)|-ytyn<]\2!KC n0cBԋu%/~H^J\zP-⑘9z4҇q aARkx Vjڭg:O~ބ}H @: â'Ô*Bղ>f&Pѳ'_\4o&XMjTq򱑙jQp `r_ܲ*~5[۰.2^H@t^yX"A9RMN'ېb WDPhˀ3(SMjO6ehFXO}tL,=VhTY럳c୙0)e@[ [ h}Ҫ}v;<P Ztl.Nt$74ӭPkT"H8mE3U -147R{˱iMq]6Ts07ߪDpcB͒ E_[s"DV"˄;;D*Bjh2S#xDEtƠ  |& ]Fp&Dy*uѼ}ArԹ0wYd>;: Q'&UAF@@TҟF@wB/bRr÷>~μiBm޻ LY!r$7RPg s*:B]\^_,k PIL9Fd(bеʝ\QMҦHW˂h!ˀd)K8adP٫&y$Pof̱)և!g]"偟#\"VPv<$?S' 'v76EU\qսdydFQkMҀ/ö/̐ q~J;p/H%6Ɓ BSc`N̒ *fV*?s,4*|J<᩺wCֵ!SBjLFi*rxñ:ZzdA_b@UH#2{K4$:^Ҹn ig Ϻ\e( y}X3&9!쵌k1J<7.S5 h14pݙxЪb'yujLu̴${K =&y.{>%ơr&-NCkohy|EK{Ɔ=S {]_ɕBCu9uzǞi!x -*~bI6!i&ceDph=kgx{nIHKu'ƞ|^ټHDU~:{+K^PUIV ?'gQ+)m~"dYG6LMOȔޞupە-vJ2$5x 2D6yUeR˸E7aLN$eWQ}Pk cr6d@Đ&͒"4RC',Lx/»CA{7!>7mśX{nb" paaG1a[N챓|5̐*kx@xQ2?el)&@LV!nőy:چ&@Wjܥt@oCS.zt;9p5#n%@r93&,ȑfbx=Wț:?^YIdj {œϞ7Ti? DS$bKǧIm圹tC ߜ7 y4/\}=u6Bsf", v!~rh zM4R漶 2u8Uv7`lG"4Ղt`(+_"Gʰ 8?*揕,T}us<gIm.{-U}-9w`BUAOJٲMj@Ĉ"X岬J8h.:@ߔP}Q[^|ir ܁/3ęK$jrDȺ*w۲n9*&PVQͅ_ꑽ>TAt;S%vQaSks g< 2LPnK%u*wY gs好 X3/>PmmLu7Sgp:ǁA$ fEL౹օ*ˀ#'~2Kd]5B22նc`c6H.~u !H5;Ƀmq3!WS{Ge>E),H%Crfᖶ7anX+au!?аQ,м px]xAZ7i6;lUZs谢y46OvvUG5I^NX >7-9D;fBI܏nْ[5=mOKA4>8ݱmX#r .1?'M66˵jsgj8Z}uXckqIoŠɼ2pnҐ^?sbS8u3)u+գaZRJ( B괙DyM@ [-1f4l*$0reg f}bp !.Rí`ylsjd`DU+`VXJ L_@G=2쓳Z%Qaȡӗҽ+%F#8c CoΟޘϿ 6?[ƮnzLlhs*.儜z=qT￸ Ya:!S2&zP"7 g^uC!81P3[@%^wOsE=9dϬ~ Pm7y.lwcx(i/]](u*Om_A (Ѥo(00G]/XY"M%> _jdZ\ RT}7tR  hVzKnbXȂ1- 49)_{ HyP9s]ۣHzR ښl DRƒFjk*hFKjvD$OKlhYr^4 Q t_h{` "7:_ё6h1'u?+?ofq<~-pʢM/Mk ι̒ WXCVj}kx;fÛE3(`>C%drnPE@ ʀV8Nn=G^]$6=^OB!3q =7.j MЂ/d _X*cvmdb33n'@9Jwe0EN4Kg"㻤Q%~1kh!D;W' J7]:0Zl" uZ$#cqɗϊ{]I|(|GMBW8fJҼQ&uN8Fwd7C|FJ`E LNe.adX%ɜ&8~h5XGP{A_p(eLPv5*to|ઌl3l'ٲܰ8$_cׇ=BՖw uxм 'yWRW~&Z$OdIg;lk<* ԐwB1+Bõd]zGJ2 !`Li%.U~e;"3{e쮑s  j_"}Q'hC {gdWTzs3vB%43WD!= !~84G=$t߲ 'hA BXY%X>.DCNƕqXpUE0ҩƎ:wc8׌wKZOjߞ5V11ް٠PiTu#wU+E ÅJVP8=ݛCiڿyyt~.ZWDKi1M)VVEs5,Q?ES#: FVi:C4DNb}bO22=G-KW9ӰSCd%%Ю|KBkO^f&b`?ޡһxe =v _$>~gya|ùeneN)5@;xDRIũ%f]GNbHMrctK<1RIJoc$ը+"[:Wx9W0Nhj7Ӱ S|/J`kPq@K!rw"X K^ci&_T#wCϭƌQծ1+ęoi-D"Ľ6#f6֓*=F !0 D,.bsdɢڹrF+RF^kb?v""̇qy Ql~N3zo jڷ4A)ʨLexGYM9&3`q3.dMi:pw9OlYiX["6=~}^[pn`/ܖ |0Ф}_`,'?H}*Q57pQžhu~n}?Y`ه1CNS~BKMMR}3K*l|)744 'K3jw&:_itmR#((|BqbXp-*Տ+ +aXB&.*Kgj< b:;!#VqX^+544 ]5V8򠁶EтW̉@?jf:E8Z#ȞI6<RY:12 3%V'%.7]gbj5H)A(('zYT4wq{϶/S/@B߳H{BN[ol|v!u=srq!'?kX MNݍ$sU"bVFAɍ(fׅZw}yX]㹉]lv$b36FV(_J `mu  B5ТՎSgc$=OHnE}Ίڒc5G.{sDBZ()?h4r/3D\0|8#YF.mV;t DCߙD0ݑsaXàuXɻX3*ߟ@}Ћc ȁaUUOVuu55D7S:aߘGPA4ݶH(E'Dg7:{֙AzdĝPZ `/8}$ {j96}?*u=Oy 9N{ZalO-)):$].e?jy?9C?وȣ!(8k ow^uY%ix+쐿(.IIvIyZbNm:,ȡ)\b"1N z"i'!>u"VJ 5 ƟGYx2,X-R931Ρo\CvW;zU?bcD3 $V}]4{`v~B.]W.0D3N3lCcĜHSr,e hYOLs)#y4)>ƷIjANVJBjBvcNuҷ?2?`p 2g(J\W) ^mf <7,^>C9g@ġF`2#XCn%pԖSR[`VTR*5&m ,Phe6/|kq6H6WdPsC)dA)ieuK DJqy8p%<[8B‡mInqA8xP2tͬMB0.GkL!* ڂ,c"p+ ̆yr 2Hd+(rrMcCYh9>XB DBd%#c/]+&n~i(V1UM6 hV7\1lSM\~gxF\P)kt;@B$⯡l0|;A*v&>y 6}>"dk- OT0dnENPY'[sG Z#Hxro_:n/tqcd޵3J rc|eiA^l/mQ!*ov`.lV'F(Z#֯X;>"Rq.E>첧^pTnFt2X{{}~r*pV S5о f7k!|%v?SLK>$Lych4$t">nZإq9ϟƶ(b'oF7ob|<f60r Bn(4aR}$;DQ}5tBZmHh0j'Ǽ1J9e἗?IUϺUnFA, '?{UXh\nCs- cޜxyU` )wB4)YڃRD\N+1Ra]\+ob/.eEAj2BW9@Fh"["\@eML0x|t-"|ٻh E%3%.TR˰U~+wZ4T.UuD*! ^F 2 G޺&LǾYd#Җ'p`"\ʷf2wRXvwU tW~Fnk%sYxfpF8./(I̧H8Fn,Ie5a8v_vd?"XR2!qx8V<O%]ԂYMyC- :Hq@V|;0Vx/!1mq[9{P7Acos@pj(|o O}h::|N.lj1-wkrAfexynGjCf6h"o&SSUH(${m1# ͟"#}mc}$Ycg'NQh+ !m$~)Z<hGˑciCq30%5TvAN *zZ`[K8%) OV*wNmT{,9+8$C~DT˒qGe/4< 5N( 4X @XXFR+s}ß}fL7C\yQŃ&.)#n%v/ kq5АsV  ȇ8siܰR .?ߖyϿ2̯sF\^$š\39M.%Fera΃E zp7nRY{s= ;lr ׎Xq`X8ۦl (d~@8fgu#23;bjG6byPl ChQn/ U=R$!U/T0t(RE*2$E BS솃&=:Z1M$9ZAoblk*$L8 +,d7J˳vT=C#r&l؅83Wː>6=.*i;%MsKyRúǘZs(}AN>qIbv@\)jm2Fzy輗ĥuBsnR:=A;8Ӊz(+n<7iKrQ8,i OZ-*-_4wҗDToCvg#+z5Z&/C5Z`>g%7F"Xui@ڰi{L. 0X:L^ fUÉ?э5W2׌I" "ސ6T~GK9/2P כӥ!uRXU3DJUs**@Ͷϊ\(H>_KvϾYtj!D4U` ___XLǍV] 7GE.4PzZf6H- ;] ٮPjqԛ_K뽔^ { (Pq/> bZeFnբ)@у".{:᭺P؉.OB6DTj&Ɋ^u L8`Ì鳧9w5uͮ3TL)')ϥ~6UgV~YY>F5#0~3}l z g66)K#F i!-@d|l ʾ.ߌj#?ŒqyNh'f1hV萣]Eӹ! CVAo "S K͜la&mJ9 3VSx_~"*C [<@ucϼhzܑudtT By%]BIfmƦu?kg $(0%8A| m JFM!rָQ$@fGCx=ƛcfr0i@{[֗#Bk2qАM\+ ˽SNx.R~ȕf\h,{ql1)iJ0lN1]p> 6Lka[Κ;NYٞ";yRWϟCG%y%R+30(-Rҷ҂Z0,;—ɋKI9A15Co>f\#S\c%&BrH%V;,|L9Z.~LЄ"]][=4Dؽ7ȉl`B 8jM/Nq*yJo>f8a27:פ)m$0ڋǏ+g휪0?7(A>vfӠ`λTn H?m[B 9 ZZ+S?D].mx7Yzi>V!u-ý ]F#bLx lH,;+' :rƮ$:Ʃ~&g amZH𴖰|jSYWs$~Se+`b֬q© } mFC[9f9U(ԖcIw#W `HB~䝋HB~)Y$i-!M!Ԗ %Lϖt0]BH#^=2~t owzMy6ת{ \G .Gp%1xydս.5PxCQR8_];66H|c>*?AwEy,*p(-yVg 8o,ʪ|qUNTDad7svoĤoY,/w7_Uim&?zvke@0$h#^M o@%F&uR_O\Ѽ~.TAm /dJr--X_S,_O}N}uymb}6EMˌ_4XD)>pblp}bE7tQb ɔ~LqLz55* <.Cb풳[;G"nvqLK$LF2&&xS&7n]st0xKK3l}+ .rˎ7w&v0Op]u뭿ĕ`;2DPV7s[t{`J=ܫ /FC1L*q6 Cro/SLjɐSۡ0zǠznآkžZq>}c’сoP*7lK&á# < +"Ԓ|H$ːY!M(:]Ђ9\&HlSҭ7U$]~V qԣi29ME]mWUe\ ~lP&:"mqKE!5-/*}֌3܋4lԇ3v9R;ي)IIB?H뒈sH0n{ǀ?2 `RX#f- 0Jw{&JO]WWN}> #;2WP..3Kg@&mrkk1Bv\ >GkL( +DuiX窈pks)E٣99UIKE1V&q^ SkB|! z{3* ̜ތ|[ބ% uA0#j] #^6l s[_9͹=`$o gsAӆnQ ֐m_Yʆu !ov߭}MfVXx+3зTr-'ra"*C^Gq>IVsSoX@3$ɵ O1:{ٗ0i;(㎄v2ffq \V7k ٪;g}9;)!"Sܿ]5t="HP6ofB YnR+RĚqpOXifZb 6?J4.Na ] I9 XXQCN7P̱ C+hE蟈{;J+]r)*_2jPM>*:@8Q%FŠ 1?jR]p,Ry_NOL(Ecmq^n$oٞu:t"C-㺮8z>˯mtUظBFE@050TCfՉƄ[6!Qd[ Eg@ܮt@ߜ#5%dپqD (fOo߄f_?Ff᭠rh(VbO'SY^Yl\#8XR'm#dqG dgr߰;cêWH\A~j6ǘqT|-6Y;"aLD%ȉ2է0ɠݾI[Q*q7\}1OW *F%g6CgZ_?ǁ Ťꃯ;N"-b?Hϙkmb}:ݚ!/!qacdfۢlX:$d[WI ٔڛ!zm&j(ƳCYL ))I1izpT;$1[rM??PkjyoR!Iݖ&N(8);']G@U6Q~}FI؟EB3c1!qI'N .V,ﶄ]qm?i4C;C.NlAL|zРC>Hh|:MxD2OFIS\ (~Z{z7%Gb96~+ D7MZK7E?劝)ލe~}^=5lj#, lQ!{)7^*>Hh*pS@k5dbiuϣ8~ĒB+ok[JK}"1;6[Q yK P%12m85؟ +u f/,Dqn"J{Ծ;8\!,pa>T JTU_;!"l,kzѶANWRz2Ѱ<(N홤|0{50]6JV.Ak<9>AN \jK2mWU M 6+Op[#L18Έ"Q(?MRX7:auG^ 7WYaa5SJ9A h"fA5uL-.^x)w7:^ĉAL<mΏWݔ# .9pBOLyuŘNeC/Y`EC; g=䑑h%[Kr'Л_[},Nu‹`һ V%{p/nQ59F$GNf7mMϷ&-o1*ReshP#"- M7Wo?*0Z.[ Ұ&3sNaXH[^] m>4v7rIZ"/$Gv୏*r9KL7wdfG: ae(e ==P%aڌ΄8}Q"uN@2uS34>j~Nts[R2)@=W _$uO9T{ 8]]a+F[rPq[VA?Jpf7w P:eyr$OrCY%e:vU."Y}H"ʴxIv&?;obб ~UO$YWa%W|*Dq<ǤԎa9uya \ػh>:7ho˻v ~XF'[*ț[}]1@^||Lן03)˥ƏF+^NJc6{ecI[IZ#'Z"RXnoapنtU%2b©oR 7RfD\R6\OXڲawU^}4Lg$0:/OH8(5J`p9iOs+Aɇgɜ]:bXpv $C,븃9 **f,Eu$KmVRSrTO{:@Az࿐|KaHK+)lϫvDkK2;, iڼL|hkKM`'js2;򘁐Cs\9wQ$Bu~ɓQp`U^.R\?.RdO>i]@ \/8l-I9p h8)(cHi(TqsAxȠɉQNR*Dv5v{>p7/ѯbiΕgO3'rU{#\IlʛY^15>7|GVI p.[ 0yifJg{Xњhēׁl5㤸3;lGݘcJCH7ujjD]eh) hZ?q֏>YFᲯFf3/J;#`g4k%3XG-(y=LaL& @Fc[:sb Dl&6m1byw߻r%?c p/k=f n%7s"ehA1g膁Za53%*v<ϋx6?>qyC/%9L@<<$:aEB%>zdC Q4*"_?r! zDT]BrA石zE8\hz 8'{/ISPal"Ʀu@"BZAR0Uo!b'͕!`Xߵ|Yx.+`1>]bllqn% R_A( :2Ax˪Iـ@<(iLYc<6"AJDS"Ar)(kM N2lxi},T 謲yb%^po- qՓ6t @%ˉvLIo+( C*p,:<=3XN '^aTJ7g!^q.ɺ&Ge˨ƔM`tgbe?ʫϔ-f J*h' &^)c5 ja+ny1nBfX}~#At<> pSozyj[i#{y32jG} NxT㲈gkEɉO+$ڵ*my3fH\>pkmKr]/-f/ghm)wMk^ЭSmC)BgǤhlawca,>L<26NErx·p,= ڟ{\+Zy9tifCRF |hI=ĵߩd  hO~jC|&C{WDq%5Ps͸暘ݸNGu(6W{D b Z,n+#A/pܕIzqw2g)N.?B_ Rs[Y . |^1}SYى2Ȧ]ӻ~b q ӠU{/qT?h=_̘L/tЮ.Z,($B m b9]SÚF4U(prdpHڣ*ΟO*a±] JU\<'L+;v&Ԁ`f~[8_-p:gt7Y|ѾSRmS?s%(AKմh%h6PT|XX{-ldRhMl}xۻ|KGFsރ"MF ) <ȀJ,؋̀F䪥+p!X#= =?{tzjI5[kق!Ai6*(|6߼}<9bA~CH>sm^٬^2l;W~?1d@2~jll}r+DsKVmIqh-uUGcC_d # L7)<֘UorɦpTTV}AKc3) \xZD-l!cxVQH)-.43flT1Y[J(@Yk4[rl=0 >'Ec[;~'`aUmp%zIL^o݇z3lP'` ~PpRg T)M3|׼ T\=LhnDwX/,%k~;>nK@쿑Nqn\ z@#a 10(KqTɀHleo#׮ie~0@X%O:1+@:SjT `o;klH`LhrC{o8=6!Fx&8(5py)Ho0>sr鐤WRiTWu'Ǯ`1oSoPBS(],yZ2s)aMk^n)9Xv*DX~}%0GcK< 4zv@K"[d~ ʈ\\qp3͏| k'UY˧Q(qgP1+lRV΀UP_o-fau+Ntv_x/8UN1b'ȼ6e"Xoa'`x \{NiVZ្\eԽϴ=Z`}5 U FޏGuiDi޴uG6A?d)Mu8}" A-%K5A:;Vti3rSq1D?KkuXMyo(iؖaC'{$czՀa_j*ɖOF e.àVkY 8I05o_<<6ShD8I>^-w8VAZQS#Ek8q࿂M#Lx́(M" )d^s Obhh>S;Cqܶ:X|qcLJ:K` M$su2`UB?x3y$j-K]7( 7QDa69,D+Wɝw!D@^. 5专Avi0Bcܹݹߊبn! Yxs T7(|uKZ.JuKe+N1&gw ґӧ74)%P9!IX=G[dq!f iiy^s"<4U FVg г0dY;V:/> #0!=R]M>ag9l[U8K+O8R}֘VO%H^&x&ϫlhU,#Rz!_99 ΢!3Hj=[}vNFgWC*&Y6u/0ƠSN 9L!+>s9Ȣ.s^"~xO~uh-3pMٿq'F~{vfAEM;(~ ~,N WpV`ȑK9؆)Rs6Pp}Q""ʧU6Q˧,x/VL Ӯg f.-ؐ9 D-wo  (tTqB 8ݑaImhm(!wJG<\owqLΰ }҃h v8Bk[#CR y<W hNݫW~nX^17gS ]BqRQIb fkx!fO #-(/vJ"†+_HZ]1lXoNA&|KmȣRƎMt7S,6Y3;}=[˴L}ˆW*@<2y<\XozGМkCè.Z`1ZMe>O/Ui- ९MB;'C|tl\e幫BRk5 ׅMĹSK m^7 qeD TC&Cy 7TCxo^5$#n ĵBb qm0Gf!>o 0%.̹cU`|_ hI@' 'RȈk Ng6F'i/\Cow"d,n =+o*. ܜKHK? +Dc,:gD -Lpqo ^v>^[+ 1ziꏜ'&Kz7'k{.&[cY!;[nځdy0O㊅G2^S=W4Ŋutр}R>BD&' +IXC{XF(\a>i\0aAd(¼LAiEHF Ii@0QszݒHLQiGPfK S'0+M3 Ĺ*\}~lj\@oq~4jq}4"\A8Zf tHrZ|-􆼆kr> 1AN<sCS!xTe:#*7Qmx̼;KB mj=}`L3wۜK[^UQ&[)9%hk]zqRȕ&cG܅6q6s߶q7k.`)0]ƆcTEv(}}}W bXug+ 6Q&-a2 NfSI7tf |;Hy;&U"Ibbb\4~$%ʱqE _3Z3,5*a0P5["IWN"w_+NB< ?vUQ*e_~kg R 2\}ha/Oq߶~9!Fhinlwqi`7>s.%4^C>P@ }g֕ѩ:栜]9T`ͺ#5V ZB! 4<:s7x4 P/`V rM|#" %Uj8a'x?_FGp2J)6~'tԳa?,'h0|p?{+>O{)1!Q`\^Xa華f]1M[!.Ɋ"Z/vi_r:#ĉ !ޘlΆM\Jb& 0A՘z!\X:+K&^7䢸8Gj2sY|_H@:W"`yf?@f7 =sP+ĚƖ5+*=>4̡Kp6b"bo'cFR)3ln~E81N?ι-vPQf{b:VŎ@*ܝgϬm ?C+ [A/sEZ|\wyK&2/{?9p"4jEߨԲKkXB0iX^[];ڂsb&/>߃Jlcnp;zr [UKgT'ok9y ~&]mi"(1R +Dz.@r޿w7 hlGxpAiKcKO%b0߀'zQ1=Dbb"nx&;W bNB ,QUӶԌDēT5+XYamzQBZ[q77 . @q5HE:C)h]:&>vTa"/v()RLLFre(io}jױJw9Ώ|(q ]$Xne)?[Kʭp%0MOJrdԍF}Ol½I,4䮃m9dHe$7N5IiHC0qgjIiic^9OQ2h$ѓt yKp"+gʏ.?G[n97k٭= .~Tձ@)ʨ;!B-8Y8(0k!6VIF]n%5x|~xą𣾐4 Z؅;OdHӜZ6P>JO$FPp :qZ"|Q/JqJ l,}w Y<t6β_^7e[ЧU3SYm'ѨìR$XoiOdԏǗF@y=k6#S{Qu%q3]>m>a?4>Iz=@ofze㳸N8pgRkkuJ>bFJw9HhXZE Ud&Q%C0zcG"? n2n6 z{8F{57(k$9Yw5 ne`L;{(I'W3SP3֍Σ>'扙|,UsXL{fq)x0{!75ouX? J8)oeW'-zpx `__0XNgV;OFL\b/8%H}HDžʦpFH?ؼ>5P*Q:U^qJd2K3cŚw/_t7*dSzu\F<\nْ (W&Ww<` Zʼngw2Ne冘|%}9S"I1hJiFA'W~=ܳd6}}3F;3B'4n\CģЄ9_ꭩL{EX$mx;&&g*B}i_4`Nb$$V2 _zՃOU'X;~"9'řNp skZk 9{*zCi׀gaClZlȫ.*Ay+L %-e"Sh$Z)^:(;;?oB7:TBGIuKLk#\QT6)H6-UA)?#"[r6:5WYY/c+J[py=4]'oӶq%9Ҧ%r/vE9pD>@qX6E=y{{c: cΩ}k9]T"ͿW~<4EϘOm^Mm ْBEtpİR70{{[-$xEQ5Uu8t,E& ao 嵂 ̈ V˘8 @x[ܲL PAw?7ƿwD7Ah5d_s!]*qW=TmԒȓ+NWXb;['5kgWk<զ'wf;{P4DfԜ~˲J],KP]*}8z@wD8fC|m߃R7S#$W]*iX^Ϭ7$43j|a|LR7jUG:A{ -6u_bIORHvep l#,jڹo~a˳9]ٚ<S (I#,K­RVZmV߫ 󉬪/X4¡[Ԣȸt/gE9E],#d/Cr_T@8[c=8någI4`lD J>Uҏ*ñap7xS*Gn)81\F :܈u09/b^Bh#ZHX3O6$ajȚQ[I+@7G&̥y=_i硋kt*< |@f03],  .2kF+]j8geOgVlBDyfVYȣP㳜l*L}HOպ~#OW^n^Q:,޺i;$>X%4:]3[8'<[T'j=ǣè^aXZ `vDYDnp+z~b%~&wpp&d|K7aH.n~j &媷~ \Hz_'ȑ*!ŲDr4(e%g)b@o/hC1ů\87 }o"o P!ҭ|7\KUZr`Ǭ + D]Dݱx=y3*@}r+v!iV|9@N &j9{NY3I@HmPj2<XU'I8hw\R4F]RJKM&&,,iiΥjvv ` \k$b: W ͆B .=62f*y@}1/- Lm$;wōG'b8Rќ4]?C\Suw2D Ny]ekqY sZ1D&<9_[ZaTdB!_X ҆D\wۻ0iҥK1;~鞄15W^S}gT2q1q{o?@LhRҼcYZNCza7 ;C+ JC˶'.9!~~0Q,sd3a-,øh^+9jPP/6cMM d}-r6鸲E,ULx?^hw 3i.o~>b=-O`J7|]L*q@|Pl=TO@qmII"dtQK[Lm(֕ Bpp/;ؕYHKV̘u1M@.=hStНlB*3`^qT/`-&poBHTNz\Ǿ#rFnrD.w4a^\ϸ>oNKx:K:AO;`w^|0I56(on &dqc&zѷM 84y?*Ϩ\c4aZ\i O0LhH9P"8&@aX2rcaBpXѦ; ؕ>JU[)oab|iμ:+LFz.d;1(LkTzd#uy_ FN".haV]vՋ '$Tip)@#u"VF&픡RIy'^ՍbcA=#X?[ XM() G(Dh2Ī}0;ZϦŽpX2(q5ʴ;o(;&4Ks:Nlz<-֏W A;x8X.a+ĖW+jLHb?16156nU;[LǙFD7ߢa3,oCž&Xvl {:aQX7!U9la7Si` :+.Ey8* .gG`{2rY<_'8n|ٯ޹{%8>aXUM^ip L( 2coBj 1W[HQ'I<sEPBiqGe; Yeq@A#VK઎Y֟]-LD'޻L1c&ߔn`'i,@}Be*X?3bZ$aꂜ&룋<M9z_*z Oچު?.o7<䎝ЦE^~r7\ě .W:.15ߡH.RMd(Pq|3L# V0[IeY_g{HR``.x~B/ynrp 3ݬ&.bpxl S{^.W`μM; NbLLܮw%ؽYs um^JD=aXK\яw+J=tp{wr*yCB.s@@e8z_tGTsSảdi9P:;ju'ݖ|-&K!t+>RܲT1*ɔ&k!sGvb& ]O^h'b%<{B B#bvU4Ag=XY2 V(5tҐ~*~9Y|7TD[,Fb hb^\D享`./ƃ`Ko5lCgR~c8n8AurƯA-7二GH?VoZܧ>ر:WmSdW9ܔBBdi Lҡ Ug5bZ ^̒,UA.g(-Q oX$9CΕ-h+hn7o&5e.>~Ajc){W%Klp2clnlʍWJ\-/WX^j03Q= 2-7LFfP Ehvk2#Mu/3%:5YtŅN,-PI϶UV&Q7oL_YD<c(Xaj-/<`uuŬ$L9oc5k!auQgޙ"kԝ<3șw;2ؿ@Iϟe>?mnj;ž %γEjM*ukf҂~~D[VN:ԑK#\z9ZB =LiC1.`.m]%#HOmNj 1 cFefj֚S<.*c9cm=J̮L>7^HuysW# ̘~* }O MBU8BMO5EN8 3jtYkЦzOsǴLi,sxr7?}Lq,"SkpEn׾>0V|tTƺE^:!8#80*]sa$6t; bJ=3-iP>sC2kDIcoK`U2).lhqD9<- %p%uZW ТJ 3'w@KǏHHav\*qh֋f:&`vVK ;K(ǪuYWs}=8.ƶȸ.h{ife~,FYL8gZ<I Rq{bLUl?9K""եUB6,dGf-fr| ua:Y_O0_%42VvJ t'[]0EY7F R]44D@dnu7imqxd5eܐ_T2Oǁve] #N\~?~=3CZ0F'@8<@0ABK^˰ d+nr:UXjyӌxCwABT<=c_D+sV֚݊}o%Yux[Ok3<°  K" ]JP~m{ZE.럣o(pm55 \/{ٕ4#M}l q((u.2"ga_EZ/@jU7{s_&/YSK3 І-[|}1)3U ,U.e(<<' eQ.xK&``BiB~H0JS!0Z;BBԄ@ 4eF<~j4+(\]@i8yҿHϪ"P 77‚N$aP q&C&oρBRg]L Eoiyɏ⨙+݄[T|Z>Z$9;=<%W2Ŷi mk-`aB# %P34Κ! B=>YKɸ5mtP4Hut2a˜vJ菝;: nL"n~Q{\ ePg}:>X/H5iC ֺ`5 #1aOvQ PTwqOCmRYeyBTbtieAX7³$VQ/4$Hb@P={&X^Y2q3<hJl3^ɿ-pN7yy~B45Kpeje}#FO?wzբdPR.5QISj,ʺ ZʆɝuMRhGBA{X1Tfk&)I(AWt#bzg R򞢀O%QEq׹bDn_CjM9eoþg@ܮWb)=dY `eR:Yϳƥ{9;D=2l-sz7C0=#>_3~$tkΪp"Њtٳ?fؗ6]*㎅",ɂV Nj%߁K4(*a9vHmeC!7u/djxSϏxY3?斑7i#~T=qʜ7{W8uБ\C܌䂥x05ݪ%f{xM3I8HI2L,}U&|.V6H]^& [_ pM^Cxpĝ SvI?Y u}ZGQ̮c+ ^hĥWViㄼjK mM8NG%S95 ̫ )~Ge\c<1j˨ܵVI8CshyT4֕ Wh\ǧ.Z)j: VV.bi&^Pȡ>#X ~1وȮ,C@6f|/ڇgPjSΘvoffIo=)Y5߳Ber) ԣʲIiΈ' !Ejk0I -h3}?:=+F+EcJ&0qJ0z( 3G$i4_j,9(Ba13ws]WJ/H"b4)|܆0H*%}ǿF  X29%]YHcqdIfPGҊ]K)@"ë]Sg]R譱\O_#/:ϚTSW1ߙ!֝z>B#rf[yWQ!븼PmZ|zEwq, ]'8G(+nV. 5ќ XS[Ϗ!umc4d#=JmN#K%7&U}ض?ʮSZUᙽ#\pH !hsw'ZeZ &wz޶Ƭ1!Z>fT&6:&wm)F ]!K}q4D@t/u?-O*e&KbD6+ ;3۷"a&P}s5|T'Amlu,Ge4Lg୊mh` ~?_Y<r(٭RD 1{jQ@Zo*e ѹotts*a=ڼ߶N 8M]1׼?riULisA6C?vA Q()&3m~-`%,LiL JpXFH8 }~p>`l/9X'A{O> B1'ږQMFʋq&Eg7 \jxl8g-0bF-5U٘ofJH^|8Д|峲s2|C*X2c^aj d)Nm513uz- {@` nv r#ٜ98<6"gNP\Mu(gi=Uct,_H4Is݉ WCԄ \k޵I8Tݖ=zrm"=#)FI2fd/ ly,\я!6-P!^ʾ&AƨСvDD%`Z }2RM P?Hp;**ӎ [/?Txs +3<{i=;Ϫ"_߈7dZv]֫M ,ҫdj*&[]$_l$JC.5WP2cbKזiܐ1Wh0^H̻flWhhL 5xU {yݒ0"޾ŷi PL$7\ӞSubgp$ݡ=DS~V{aso aK-S}v}M֯rhtEf7C!E MDCA #ȾRV'9Ya5 {F*zR2¤@Ε|i;,޸BH:Sx*kvdߺui!D'̆?Q|܈O}Qd( q+w[tҺ<}43yYpB?(`7-:0ɤ9xT w_0³P4G:Q@ҩb&)9ˆiϛ[;bd$՜b| V-e7IQF$WEYVe\7&Yc}U<;T22Jk[.)(vv$>v"~ޛ;Zv$ + /u5#য়czϒ>9囝WU:,]%8>7ur0jQfS:e"aHِȿR`5_JKt^gC%}8x0#Uc[s0vdWr, A.5]&,6|_|ú}W51Zs_n-yU`MelXǸkL6l}kKD4royk(Ba&8Q@y;&E9̏B}/$g]7WyA=TabûD邏nB ĊQ;3u|Tъ2]>i0''34FarFْQ(! /XA1SGWf`}în^cOc{;Ok#p5Hmy\Z>We97vZ ,G\I뾌0L6b8rV*`BwO2TM} ǟM+a,Zj\-5}UR2k:H)q4 u|n㰕 Қ(PVtT]\}kSG(jsٌLvkPdLįyǩG+ήT /_B8rL?iqmq2Ie,S,#1]6ηL(px=$v]3h/aⓩPm0׾^}cz/먿GR" (Y?.'P>tPyCqǜ/3jʍcZ@4feP 7>w=K8PUbgG{>V$Jq ,?4{bNsEZ"Tםݿv[PH:); 5m`HF_P:1$P.Лsn `qr}/,{&7usQe󵦄Pu yYL0pGi;5 ^n醋k E S>IV *f(>+԰i)!|t_'I|ǣ/΀WG0Ku|*1g/hi0@y8pө"ʵq!D\ϰ"Ӱ0`Pzf qϣzܱV4 }>u(`:U 5q'ӄ#^6vMU3eJ#xl9 >_xIFS<o5pA6%Tw$EQk675H2D%j2c?%' h|[`VXzl0K!,+D;?OI&?$ˣ27YW;"3< l?KQ,K 7WzSꒃsCk;_%0wb ZΝ [.v7"/i4ᡉl#Ua}ؙ`2;0o hSlC 3KhT[cb<噿t@hpQ:"yriebq>W«,C~jYdQH;*'+jʯ-B;dҴK_4+-`^-Dσ.</q2fs{.`PsZn)͔X-~_f,+2($4w*^IǙY#;ŢgmڱRc Hpe@!@  /}ߞ?y`{$_bò\ W8\TirD!`$w\!JJy?EULEQ6u8UP\d=+mFZ@eqQOX). 4hCc6eτF~^ҶΫԨSo^{;Hxeo~e ЯΝ~NEy7qp,nWʡG.V.Uӂ-6H͜ՠ4߭ngm&39]E"tP'[Ni+wb5$#_m3m̓D2._j6ό9+Y* Ow 8ۀ&ul֜J13;}1[VkqK`ea#`t ~ˊsCPV׏Q{9VL h51#&f%=SO`=ƎR%~?r|=H%LE=ޗH[8n[5m.Yn s ƚ Xn^vt\868D]C,PTY@Lo{Kk/fjsJk]Wn:Uq/YwS:X))ok0}hg*3ij美 ;Gfl6]zj]mȰGd0p ťeCv y5E~lWheT:fh:&?+ݠ05(d5}"@xh,~W41J>ֱ҈oɔj*PߓesD {"lgZ#\l;[zFdr!xtөOq8 6/ Af[P$~͙^ L6:ǀFf w6rNC9Z-*S]wn QZKNdV2\[FT6$c=@@ JLh۫<im@Bddi^1bJe{Bh:X}'vƭEwpzFPn]=E]M'>- 豭k@b pc>cG~wjt2yD'zQS f&E>"ZKI%4!pt!}`F$Iqa -i"nT{kRO|ʯL" }xJO8 V򟖻e/_$tR|gA+mҹw״` q u:sJg22Xfz* rڕGZWN=Z 'Wa_p+{ ܹwIAtles2߅ . ̑ r<ВU}j "]eF̜ W ;`TAq>VҖQnxMX&, Z /;vc?zR`XhDWo/qaG1yJ=HOڏ| Ӗ]/)AEgr+iVOl]S>$X\jg=%6oNJoyjiRi||JHe9? F-ɮC}nJ&nȇCybuhJk)!\녽\{]#Ah&qc;D4X88U7v2;oS2v&Lm+ ܖ|?ڡVIY1=Fu %"ih6Xx/+ p.FT69MUv;Hrjټ}/)z\QbdGV*#k3[,?jlb!a+-ќzlL~dؙ7?xuK)CV gBJXe@֚R\3cَu p hkU4[X۞bp&;,8vHZn&8-6aAWYTv]Ӵ'+f ־1\Alr:ngOv{T'KZvl`TJՆV<G?`[b@(>ZJ}#ZV=وOԅH#z9ؑr]`Q160nS6!ܽړpiE j\$ʲ!WnEQgVSlX3DM΋ .a(7k/ 3y?r~z[).B8VH1]Ծ=ڽb0s+Z\?"YȨg";Ѵ@1]n=Ͻ"V=8+d§;?kZIt fDŁ !1,M;K=~X|-&^FٗyUkdJOxm;<)HoVWľR(Ikv{ 䡱F wBĒ(zGĦZTg]Rm8gsΐH'h>ϯx>; {z !;onK׷;G:-3²  :ݡ"¢~C" p;Ypwy;`G"{sLT9~9J=Tzm){NDŽ· imej+IqB ze־*o>[P2r5~+ 7ӳt~m}b&چ+%9(}xh&~~ Rp7h+0/$=H-q> a 'pRGWf6᭝u'1HhQuvtC٩ff]TFvV]!y;\qJ] }g'HOV^!.`? <0XsB3C"T:A9? \[^X ]'S]4 b4'p}XbO & 0 qGGaϝMƅg,O& >aĦ1#8޹"a37 a2 X$#~Uul gc[~jt) ĪLbqO={M,*ѿ0K=̓fZ !U`ȑF #ۣe.`(^AS|~"mE*p@OY0ytvKBo?hM٦eA>~wgF@Q)<'~"Ր\&M9+I99{V=1F;b=j<ܩe *EW7Eo*Kk~ɷ@.UiNv2]YT'n Z32_tEW'P qӺ[J&Lxc=vA̛IvRݟ˲ =/W9 7qwT3›rp KeQv"%5G' "ԙ5g,DgXH_ECC=Nkg=N`ij 3B&!{wB]{-.`{X.>X.sLCΛesm:۳I='}Z[h.arP>'\AՅ!_`ȧkVgGH2G3G28'5sNb㍝uop* >i'=tI“"& NFo/RV{/cu)A",PsW*~jtiL&Od?\̽ExpUտ){>ܔZBC}4lsP˿UDyicg]̬ 8Ñ^2Ok̳yHC.wV \][#^U-fcWzSV2%7qLZ\"4tEܾRl4$;tzsSsF[Xa:͸oB#Lo7.%k11^Dq[V]ޓ[fR2 >+f`$SA j!JhA W]\E٨'9nR-&$W+B|&szɆZ8biD_aHAK*dq8$*\1Jwy\B%Cq \p@= PSLʶ|k_gDNl|r0ܯNuH"3\)6lPP}EKLP:/">`WgbB4snؔppx V9)~}Q&H!pPbt.^EŽz /ؖ;̧xq81Cqo4Xh-/Vmc!~PD3,t(sHQ,FصWXMh|ԅ `fbT]KG5It1 9W#F%Y.#)lߘ1NCi2xWgvJ1."ŏ~#'b 9 eq`Ыu2R:\ pEMպDԧM2po_Չ_S/8\<   =E##]DkXDYD\uW~ 7s ǧLPI7fؐD$T?l^dWn9$oUQ݅aiುh3at۔Ԧ :Kjo<\S Du]u%Fxu搛.&wY,Vd -Ng|i87uSEy*nu+| \ gO.2QW|53Б>!(-2ӦYmQf]܄elƓW?s%LtTbwdNpDh,g m v6y2b{K/jjW^Ovi/ng&1g]j 8(`vUx*VXjSk5k6@:o]a;2/1^ Zkh:kԱ _8i8Eb<Z0+Isr"[tjg|]j*&,O?+]'P%융QWPIzlσq´l?.G}Z'әv+D.½̭t68GwbrҶmhfAj9^r )z9HtT4$ *G+cqpC-j yJNiv^[ M+r R/CV 0`k R(xfAu ~:Wx x9zQdÏהrO.3S苟è5 >o+BB\Qhi3n hni!+ DWf嶱K E]Vth}%WWrV&S whA(Vc! ZДbnYIkjPvf9BB}1Sedla҅f] P+tdJD4vQĈ#OG \ @*Ñ\G&ܙ$FʕRJ֮߼XϪB q ,+qTؒ=ʽRi6IA9$GP]O%98}Ar=α. j10ܡkZ *Bpj@rK'ĚQ73tpN0w 0x?cvR wQi`KtK(r`WJ2Cc4q;ˠyvyҀY.n=shKˎ؜w~9Eڨ$>%Wex>ȡ%GaM& fR]t[ָn};αIQ@W@Յ 6BW{_Qp髗,+/i(5MH<ݕ`Ѯ02ꊘKeǠԥ_Gk{}.HX_o屗+CSV(  .%#|(&;Fͺ3h}-- UfD<̶Ť' fEymz #,ZoY3Wζ8~@q4ys`H4)濓@%)UK^v>d,8<)7 ߠѨ)dƵ? |'d8i\rqխX-~c%W@ Q"m?y8F(h*cr0ٜ饀wPvrZ=O~Zԅ/6䱃Tï=z-mCr)4UYG%:.M, =Fq'#tJTX02p~2PT\PjJςi[ _GW8_?.A kn)T. OГ2}vDU=^‡#X{ ua2W_eq~j+@91Y[+D|Pn%'mv6+N.F}6ڽru %}[[7'vhv2E\5o`e<2&䎅1Pib6:5g*t- r[G ו\܁b{R3lkwud&] uϷH(U+Ȑ/Q8I tlxT}H$tFZK7M)u MBP3 WWFԝ&-zC{O6p< )qj>KĂ@ 62CIg*PŬ0p~^AVD )^V2ɳ׹%GA_8ni_ޛV"6 aQ׃nVKmv$:ъ8ϔT(_^_esG4bBkȴh- TC'+Ls NȿXvp Lr`/N<΃7Ĉ}==,Loz}ᓤX.qR(?n)㰨&X^3YxW˿C=Ie(<煆`ux^ UnDk*xXEsvs8-a/bM+fva8}9f+9D=Y$VM(κLFpsT!k~ŸH)0 4ht>p D?bǁ]c٪|B]\i}Ss+ ' PB7,(Zs^HMO ydmx.#%Cd<yc?\mKIAٜ񺻦!ny܋CŒ+:c7?ܪJ%LɄDd'fMڹD.dyBwѯa8_8I:^fѝ]89uøܤ:VZ,Tԁ<n1էXיs,uheFSO5 ˽0#{?oYRYj uE)qW &D.%ύcp_#ItnYLq,:K:0V)KL# LwfRR= kKݠ",7`af`(fk*  @(b{_u\"Z, W&=FvLLԌ<ʂ=C{*ֱ.CV{#oœͅ0S"$5NxPz>:b9_TkQS}IfdR* gW&{8Z{zlxVAWmŦ=Ԑkփ}fUyԣF:ú_-mki2/KoIڑ10x_y>%`f$qL&,e'حWZ\ZWX {Y3mV:''i^'6j۔dK{ Z]kE}ғ7^AQͤqSr K#-(2p҇jvƀ)#ΝƼ`zEJߎWf3 B;pݠQh ]qȝ-4DE2-;&tU>3yKʝ&~&ɪ.W* ǀ~ǹ^ ͂6ENPt'N $kϕLok m0ǩ*x3ө_AW*ݐ_X̎>8p̥]KXIHqhM&rN; Rg=^ ⢣ w[$;eM2 *E@Ci`V'.5ꭦ );/օ!Jk, Wѡ*:\ on:PrXV~嗆 N۴@~:ۆY$v- t5r2hL_E3, jEbyeOXw؂IiRY T?$352;||hM:D[3>cMbZٳZO:9Yk+ӫF7DtL ޶fЩ(^5%$v#v=a_}8+QZ6'5}Mh'5xV(V0R,x MtGoݧ4;~F 0%kW2T)LT+!# xs/7^aFJd8|5?Ԩ\g_cӶ>G uwDaYԝ诱Ile[~_Ի eePaFm? QSXմh(t:7Rе f3RLb дΟě{aiRk|4ɔ^x/܂%zI2w&q:]}B/rV+Ldci$ʅ+&W S|zt RZzS|>*( &@_B 9<̣H[ C@}ߖIЄ^g (LI=5<5cXuƳO4K@+yow4M(2\tCy'/~8t]0 h۾߀i$S]a=@MǦ^?$c˫Aj l0 NBc(WNFʣtג#2k_WZބN$J^T:/s{LZ'ghґªEPfV+0,{?kn-s)y!~! !%x&W$TZPp{>*L2!ǒG_Xd t`~$IQK$upȽ5SK,wh:H v\Ǥ\bS„=1RehJa-3 ? ؓ&ăP2 MgPm%NZW'HPꖧzapqĉc*Jʾ4:ݮ}Ѻ/p`/I14ZYffA`aHOLH)9 X{{C {pΫ鐬.;|iE^S W)lH/n#Gž*i`;rNXJ0ÌWJe f/QqefX q ܨVtφ(U`[JBw9'`/Emk~z\¡ټ@°0B/զr C^$lTF~gqp4ƹb4b̃fľY8G "@-uo2E|Q;ছߜFB\'2; 9dBI.62A/6kIyqݘo2W '>vYcpڷ˝P$)#>i-9*Y.FF]|l|XQrƦL{JHȝfc p{`YI‰8 wPYEBUdAFߛEҭ<7*sbs6a}گ2Y#(|LvI[q$昆tHyAX,'3=Ƿ4- ;Km^1A5jm>{2j&vF+JҒnSC YC-nGAhDbAyP ._ѷyDޛ"cA+hJ5̛`a~~±yFeY-ਝ}LM@-l=Rnjm'9`W`x)f߉5S{܏r$YHLKX ,2p}BjAݩyo@b{1 => n6(Q%-ٿhv9[xOAXfP^ 3[t#VJl'a|;99.1"ڣw=cC\"lMܸvKRֽwAZn}{:! 1TV]&xLng Ώ: ^MC1q4CY1B8(#v&qޠ'Y*²}02W[b* 13Bv\\[o}ENcͩz(/ZQB<mD{N/nKJ]:;$+)Q8Q뱋ÁyEPE+ L o6fRRVHԨ; ŷJP6ȡ=k@|mS*rm+{ukN,KT>8`=SX"TuP0tY&wJb WZ-AįMlWXU#}sn:ÍOeDL _߯躴~y-vف: e CrHa/aWuhЛqddDE0U<8@;c0%V^4%_pAsesszRL+Gu2:dQFFЅ;\'GE^{BTߒpf`BC|]˧]!'6(1h`'j&=iOW-~X؝}s5"# lX!䡧n /mvC vOaTQ?9/dUEWQmBIԽqTd'F n(҇[dw{tBAMTX^(;X:I_/3oלR" {2UH(ja_V$2g1k~U-vʊEؼYhv]*k;"ooOG[_ `BSr3'Uc |En-M?7N )*oL/ a-i f1qT\ej?Hb Jo`ٺlwG98yhL!5jlr 'wzlx'2MƾttNX R{aAG#RdPp =jK?o-.pGr0|0ÑV~{xBHh\f$r KTk uKp/ZBҋ#$)`^([t͹f^R؁Z@Q|T%z(s<0H<ć'J~7 M@Oe}4if\4H<$bK6-࿊ǫPɓo1?]$ɹi%HXD DTw~u' *:0換M'`Ge'~ ۥj]m=iyO0tN98̱7EiA5џhs}uZLhs 29 +?^Cځ͇)24ވkD=y)DD5hh̢";}skKwt l绢Q~iAeiNyBP BZafuXl:rbY-̈́F¬`=;WvqRhh-Rz<[VG<"J'goP'QVGtsF~zv*& UԪ( ÕKV-HC8 yA@G4 ؿU|UU T4ЕjD;/~(7+X(&4)$uy;L t-3=VA{ 5p q@9*l=0p|ݘVI1>B&i/tu(L}n\7VIɉ0kzw,=&q}q=~71$&I} >޻[0X h(HT3Gd82%Xg?=>#EeIH[; a ڼÀs\oh'tXx2f+X.TRva}.8<Ax5{eƫG):` TRFȱuJ-{N!,)aʵz8JPbB9Z2jP͔BhPOKi1tr4]{/$!Xϸdun\jva-7ǚo`(ͨ]dNN+8]"u"[ 0.oХҶtQ -[ *O#\cE3|-7 7_by:s)޹ӊ$ y~ ~ˤ.wEBs;O usԥ+NQ${yF&cGF"҅'! % D~kA8΃@A.v* lـzI8a$UEJ>kRLK݋$%ק^A;6gNJ:qP".0b\"L,AB)B>QE]$z:K-}2sofhdKLJ:uٕ<V#G2/lx@V!'k蓟t3J lCOqfz| L?Y [r!)':{s%򽛔AClAs#3]-om>SI"->C ִU xGttd? y=rZf8SG)1y&e`SC0a[=:ЯqbY5M f~!I̋L쭑]@﷖#3 #8Yւrz{JEi+fx(_?$ף ̌YRZŬPLI}Zeі>d[-G|޴Ҿ8;/ߔiڕ/,ʦ#q8hlu(۶6ۈ)Дڙ/-c{WNa7S7#W\d2o*,t.%D S(' kqw {s cS_cN^y;Q ; Ҝ *IM̈́r%ƤHT ]] ܀bW $(2Y/N֞ wOdnUXTລLwbf9=M"\1ڜ'hlP8}mn{$c\EvA_%.D0\~|g!,NSѺ Lͭw>J86{z՟N^uX<[8pWA0KC~}9)CÜ=3ѐ0A,Sڸ^yQy˿OrΜ R9y"&-.Gi\$_$叡 ЧP XnMY:ZE> 2B"`h#L8gN0)%AzPmq R}6澚AK,YO; >N$mXNRܫ!HقA㡸ђHzp7EShp]IFA0g*2 ioSY ?8B ~?3vU? C Y_Xu wx;&R`Gt%v)nR`D9uͫ7w3. %ޒLֳT?/`}ME-3*)ZщH)[8Wz%}Rh>P/qBnUDZa}0E-6R|ukE,{ &U5a kjGd߫kg d '0˂_ce ƌ3sxܳs+,=0`qk҆@2[G!&춥nDV;EetNY -m[%+@L"F2@ H@9Y 6[rVcmҺf|dq&x㓨{DBRr6[ZNJ;}wJTx d|dZ]`Q=F/ 4X[obȢ.%ّS44(ݡd7\hqn~7 X5~#DJ3NLa RM~5p hh9сvgvZ]IſH޲x@?LGAhzn`1tI;(THN Uz%|dԑy4Xf_q&o<hU =o)ĢOIOzJP(JsF\~\%ƧToVZԢ?ObM1 Rp0w4; yʍW&0RǺ 4Bͯx԰RZCb!eHWIZ]aWZ`+Iq11 ٥7DGr!OND=2d[s:lb[{4f>TQBܥl+qM Cc@ںǑ̳C=j63܄lUYyQVsi|poAW'xtAӮtJ8CLO@j^z<Ğ+SbYn؆/Q j<McWPEU=ekݓCkі9g`͐͜&dq 裡 ⿝kcENjMY0?<:WRʥk`xS?$ېK=/2e`{+t7:STt|+ηVT'f2u;z#safU⬁E(WP?oHnƫ ܾwd߂`fRߜT&@^[+$0 "~8/o<Ĩzivć+#{C+=U)pi;ɸܱDx2֎Xr~8=s JO(wcg#0/V\Ɋ*rM1̾lH麄T\L54ȼ,^<psy#PdnFsyK2#hK5k[-2hҼ0`>]RnST 32my,rChM-2MtTxT=[t2^=5P[hS97g5YF:D,zlyrfŜiR6=} +]o9CwJ$"P{!_LQ/5Ŭ0r~!Tŏ]vS7V2;Mvc)qB x-m+@wC5{ؖ 0j/LRpf]dLd >'b~gR#|p_7|u)v 4d7UI-C0gXWr,9T"8#c$F?,t:d2 ҡc(*uMҬKXx;zu6 >UHE$acڊ8v n%%oo3?/'I1c |g0՟0yn!ކ5Ğ7J‡"v, /f@G2C^-6o R#C 2)97Լ2'$xo񻢌XP غ:1uT%qg'CQLwU $Y.j$ wzmjЩ >0dE(+ۄXtKF|>(aI{")`oM \!Fu')iXݴa|Fs2A%Ec!j@Ѫ!-BDK .)?EiyO@ᓷx}#wIitإl1wV-K>^ƣE**oU@:C XϥKBH<ⷷs~Q#ZN%C ?켯 rBQX{F$kJl~* 3leIמ֝x%P #[ }n진UL- SăA+NGPQ?@뭓zGXT7yN*PRQyȨdQL H0֯tF8LoB0d0aj.vV^mGpvN+z-˺'[%p [fFB, aT>q,L?FiZwkaXnʄFtv}ъy#g! *A?&v$L5Q5Wo-674yVmXt6̙2OkE j,ߕ [LX^o]OxXJȽ2 QTp28O+1!6YfJ*2ɘ+:2'~u]4a~`x>8i2!ęj*W r(@dSքBSPƥC$'^%ޚq^g^ 40.۾=PysbTgd*RlQBeOrqT;x,lsKi70B9AݔC\O23+xImznKKF".\/4 6ox`<2Li BT^h3iȱ}&gg;w;R 5qVt-EPh5&?7\ntc&w<҄?/Z𼁗@ّ8)jsYXJ|ŒHu셩5~ &I?mKZN.2{(j a-]ȥ!CBJ&&q+kg.hu'w}‚ ށD)[BtRH$me')[V@5_(8 hQn3" o3ιGeۉ{ >"pbwn#]=~5Zxh|u!){Zhu1{vms'*?-IgR?>M$!sLGu,0Awzc?F:`{֞٠eyiGHN e7A-fH `}CV"#/-~|݊$_1tmv#y"050IBwޟ1m&bCC SʄAur/nO Xa /jnYe|QpT+``p\&+g [Rom m' ,vqm0ET7:˷TkL 4g _$2_eaUrh6z@pZx O쳩tݶv-$]x ^=:ҡJl+맜 bjhphˋw&^l~ֽMѝi8t8痡xKb2"vwZTa$e'Y}cn|4-'%A4HOb+cT!VBr<^٪=6\ֺޕXbt\DC`ТJp-ׄz+ &u;J2Hoá[$o6L2=%mVG!o !@>)VrY4/>sjemvct2ܒ.Wv梻M HVdmqiB#-_L3 9i:VqA$,<.h-8z(?zhSMP?vC'_GJ[@33r_+pl4; ۠ >BR 2@bFv<860yT}Z 6GT%m.9Mu~fl8c3"7o@g|".ӝV' ٕcO>Jn…vl~00B4Eq ].[{Z0S Δ)JNjPf6pQ񠿡!ɕ+GC;Op'p8..14#?3ra%N3]3?#% m!L6OQ`1p\5Cs8 ^m?K+k( +0J}C@ҕwGB.m:ϟ;`x![Sジfȣy8\,)/:ѭ\wNKQwIeHʪWk$Uj#Agwư#.GhKYQcmIA"̜[:GRq/lm3&;o;|n@"H i2c%崖,+V;dQF\H$haB+2Z$lM$X>W)EǶJnqbm.84Dd , Dİ3eF56pYFp5d.RoW[e.9ѓqb 2f{\:|&b:GdoTSSo^~ 7zl&r:'Q7EO#Le4= "lN\2fN<ٴ߭5.NYVuZdQ+ 9ALţ{u>>J.ȥ}ŗ~"ה r]Տ\D!5zFw$(}N¶jw"U0]E^)~,=K=G#n1w&G?݀LuUd>!F!47tc21fw˵.DX3tB)2՛}XT3$YvbĪQ~ cZVo?U4a,ٯ=vˀVpn2Tm=.9xJoU[aQ8@r$rАCtF)9: M(.2#{LwvЊL"@g,793Aʛ;P"v]-m6:PՓU LUiL-?_Ou,F w!| t\Bz]i [bZ'(e\aTk^?^J?m{u(,zI|P6q8W:+TNtc௲hXu0@=dюKp* Y4WZWŝBNw8%sV$7J%k!ӖWd%@^ @G"O#tݺOUg*] Ys',6*rj#dʷWMI 4d6cMz>$9RBEZzz1x RP!Dj=t}GlIe開2<& Rv<@M\؈㦎Hv̝$E{^xEyڂGR)z396L:])Nl>X q=07 (L g(`Ouw7b0=SRk!2(En(.{{d )c S\Vw#?B +Xt MA09Hvխ{}/fQE`JrmW4+ y/BobT=R {ZብX<c[.e|#bp~XF3Q} 9<;V"pBQsM̆{)+Z_*_HoYZ%݆ielDu^E%"hyjƉ:OpvSGs^׍ 4!πX$7[B* nG$@OϦ!w׌LK+<w{?QܤBzsD7rCv(W^c>Z ჭpY[Rb_zѱ:Yg:k5=Ow M^V[@pA^ Wp"< !O 5kҎ9TÊ60O'+vsS];hs``>@W_kz)T/^ϷxyQ]F`u(Wqao]?r`Z%36?D1lT7NZ^7ѧ{Y<:4uCt4 hLwS[d:[ft'3˥;+/m[ezIiE6V-E -)".p ^UHkM&Xې=#' s,kXo%ԯ\~Ĕ\iC`gk>Y1r!RFgKso7gb/cLM-d7|83aVm>^GB+&>iAm OFlpU?#)qgc&,ҡMCqP _fY(}b)>vhyLLEiݚSc>ztelY NBy`F:8oyς9?$_Kxh%L2fnLPPņ$A 8[xO };M{%\YHOLARhyDx~LC1incwlT8E(^:Vv3Z f$ P:\gRmB9u3C4_2 듆{9V0ҩ)dt㘽) o4`_2uqIsh*ۚw>Yl_?:fy.ok #QV5mxCo䣤S/?Of`4m0xAydd}׮#'Vn _+^"9OhsI//xM#b&D\B>G{=wfIcU0*~٫ц; F!`R'iSp5A&LZG st&K ^l92Ρҕ n xǯ$h& q$dF͓aٷpdXaPjJH AY# QYhĭX;zB|HKE~^lm gOZxDAWqBmBS 1q܅( 5[.Hm'cX/#pqi_͇b3tuT>*nռY)^gY0' 뱸^Wlo [V;`,`W"jL&*Lgp$XRwf@b ?rEE:6U1tƟXb=Oχ5'͉hq胘F&nhTG^!3[ 7,np↛R{W ޅf%qԸIq)'͐"{Y,G6)E[CH۳"ɋ`Ft ֺKȫ5=ѭb\5QjP,qQ HB[BBҨ~6#L"sCA%5$ɴaiJϟ%yFG~q@fuɸ1vMVQkmKLhܴoϝ&ꛦ/^#1rVlHTģu$X0Z%:}όD'7dXlDv_^xDX?(:0;=+U $ ] e,)&mIЋZTZ2F7u/FD֐"[RjG7Whi',^:*)GIopqGC8Wi==>m,E!cm{.夙b&ecmad3F.l1T(iJLo,{GpAV&REHo_8!W5MJ78gĶcLo=`Vy % :ޅlЬa3kaۗ?ĥ]O jðS1VN c*uo 3=pIMJ#͆pnrfo:^ xCA\tJїog)­b34/!9CsDd{bʳy$?0>RĢ^GqzyJS8X苺A SU:@xҀ*9'p|i4@,5g=[<[~M!}pϹeΤLe)l@NdH`&>,96a6n'3۫`OኹO1ӧg PgM!>D`7620Z0*o$\; x:-;GZ {0+g'YOxƔޱ~ OoT8j7ݝ%P;gFע L.qdI8$w-tRDݖ,rF9XcmA T,zOO[2t "r6sckiEaY~%/xkS'kxz)xs} ap ’ת\DaDI ]䧌hi-!9.Vvo4AQx)9E<#\⑝/&K$Q )%5%#e^$q#p=Ǜ~UAɜn<=>#D9wIm 㛋hلD-Kav:`}Ө #mvc&{ G&sH.,G`-nOch+2hx%SMc[\$J]-l{RւRKyg)]z"W0UZ4P%6H3/״+GtПE`'2kH@LFs>Z¹Kwwhx@¼5%k" s/V\CȾ_ݫaˁh߲/:rl{hqM>Q'й J4w?Xsô:ZGZ3K8@쮩*ܜ5:zQma&2U)۶SDy*˺XӼƋdӃeA_fX>)P NSY:c+Ӧ^u΢mJR G'?/sZs,Z_M+44 eVV#-ޞ4-xH%\ky|qhRi%Lc앩` $ӏIj,oF$v4FB͌=V5SkRT݂W*F9;n8k֡d3sEпGwGWK*!;zhkxAVId VԤHL?n.hΑ\Ldm׎-&->WjĻ%~HMtHJ![E)HϬ2֩^N(^As@6 {R |Y)x~vx%vн.` 9| zLׅ,Kfib4 Idݰ!PrEܽJT}fR7 J/ƅ/'[?;n*dhsEUy /[zXkq~'9A4E Z;LGCt>Hd箰r?~gw *- ncce;8.L|_\oqW5mBd  Y%Ɛ4:-A%bCЫS@ʬWPli',C6Q Pl|\.K6<<0%uxgT);߷'g]]7G3/9LKquI[|\~5'ts 'b_ D腼Q{}c4y}mroͣa'}_0-$Kw"nºx*ց;KlKbBv9z&s}?еDjK?: k2`t]߶.h W8.ޗpe8d>Y4&Aa/QWB8^@y}vEEin.*zvv28}PcɬV`;pdVLRfb5Ew7;L&ma%Jד31q|߽ ]S⎢N pclλY)W7_&}lw܎cIWم"UpN`0~WOnVJ72: GqRGA{ *NN$ʼEMCߠbׇSW^h} Po$}\}y~YDځv%lUWu)jx>Z p1TWfS- 崇Zg^ն0!#ٖbwAl8Aղ"p' ՟ys?CUR&uހ|ਕ֒q6p` ?GDV>҅oUlymz rWr૏aB;/pT`qcr|^? rX{ xGR^ w(L9InzF ~N%#9 PGc *&T %$-/VB "ݠm#-ٌ%otȨ3w\. g n̲eu0c-ɋnRRXAFkVv9j Zpqd4 6bT`+g}MCgxr0N;紸V׭8G7[!z{f!Ox2rW?G_׏BRHU0cDanh" nj1˷&<76R;#}x[o *FB𪳓#ɓO,ABf)61L.y7YI%J(0'hB (X]p[mųH8?KOhgS}TW@c=Y8s؞.=lg*ȓ-m !`_HU^j)==J!C>Z){Mp4~/I^bLr{ѱఆ]D}?>h 9')?5Ce-e0B2NiZBPWv/4 SfȦV%x4>RJ\Y|'I^0xCjׯ.QZ_YźQ+OhRF%7B.P#I޹ B= de<#m`jd4>0Od9R-o;2dɓ5!T9G됏ܨ 0h0s6pi-\)P>;؏oaGӯSb%ɘ뛐@8 SbǪܼF7礯/Cye !ynKM\|O1SrFv)FAn$;zT 4g]´g؆)HiHo=+q6Y?hEYM?l%U.{h1ja^6躛ѧAt˿<Ŋ1>~9)n .75qj$*EAIN7Rz;{sCtD<9wA7 GVabƒd&GMfp* inVJOp,Ń!GT|UV;U;3IgU9"Px|kNt%GJfl m~#3 5B/0i\E_BK᫰2KPq愴ݓ>;0.H1g}}HlPkn͠91Ihzao8kcdBP!31bs*0 <R3)'Qq}U ߀nj@[˼߶|.aY$ n~'TN IyX|f49[J|q di`΄5 9Ah ;(hF&:si-Bjpq#{dFhvPv^ etNYmDAg#>hMacaɱzm 2uHփVn e86(ĸcHxZ-ԧ3"0wOꤕ[݂4p Q׮!xmaaC- NN1'e^Vzq.D4eQ 8Ao@.?wjLM-<?;D-2 -BCbSݰ8Nc>½߭8Y1+3&W>)gMF y'+z3='FZvC2KÐ:(1?*SD߂ꨄO=`k03=)_Ը#d 1CnJJ ]Ӭ45Ht5rzn=Vܬbpc]|NN]y~ )JC7"X]Pd5M:{n8'ǕW]DP}O7|2* [?m<=^.{O|6} dU>+Vbb.cy@ټ=Z9F9б ;e,jYzp\lMh5oT( 6,+Jٗlz,&vB28u+f\VĬsÝniskƵZEj,he7 6y\ +B GRAg`~)cLP#y"m; ib\7cQekIȀUh^J1Y_x)F64S+R2HlOI7xNdL+'}95閰J;]!RW/ [;ϲ? {'aƆ"}a/@n -魛Nyu8TWRX4pL]>?s$Zf *WHI=Ө7s`l t`R/͋?tͽs `tȁ?(Ҵ)QglN2tlkt~eVHjGJm F(PvLٍ4\a> ,>{7[8f8|إjƼGK #2|T.gA|7l^Iݫ'Q8nÆ,éd.|hDÃFp^Yp*S:c\!K,,ddBggR()f)fh:k̭-TBJyūUz-4l  +_'|+)x0k rtd`4x{L7@ZEFkM%H$M֓ի64N|&ͰXrGY/aǎgb#z9lp<~6 3qbe4$rj?a;ng_xbq \YY? 9aN+ N 6D/q A!F, ㇍2P.R> c̩IX7β3=M3clwsTjM{r6K'#CT:%F[^ 7 :_wPG1-z[dŪeP[u>%a14g0H?/J$dʰg02qś?rE޿vHi{`&#tO|7uHIfȅ/֪3ͩ&wL&ݭջp-H}:3{3AJ)oXhb-b.r֌NX- FW; iO%!&_nZXW>H6MHwo~p*dP٫ U ~nz=^*$_Tfb`=k(7C{rru̯tVY+fE F >4BkFRsa(8, 4P.pB+"L ekd;f|1+aNV(i_o k  <,Y;1z:ʂ<{x:h(wk}ee"&`cud>[q#Ac>I|q7ե ~>4=LFY4t#0sLS"֟oycMҳ!A\yJe2!ahGSQ I/xLY'>W!nDA̤F]Zƽu9:Gf@9>O S!6F> 1Y1_|aw\&CȞLY/!+fͫ*;0#hȀ 4"F`xYM Vv lⁱGETD _fiI (!kc_|#](ZB7Q!ٮÚlx a x(2{R*|'i#l& ,LJE`(utLUwkuU}2,<V%{`fNpɏW=XAJb`(? mn0yBݚ*c]X&f5,Bs 1"R1:Xv}H+e=U卹mVv67ƼG&1;V‰\t1ڙVgQEe9%bivX?h^;sID{zYmMC!XfgA X:hyy?1kjzWut4"5aqpUE@Hj  :d|$M/ʞ;Siw5B}6zGvz|a-ÅQF n>:C[GtCfi"ΥBIҮҶy,1=s]1P)\bn4aut\86(굣_Zv?Ql$x |lM享h  n.~r[7oMb PV9WV ɓDɱ2F^j V~DžS/~QQo,c7;Pം{oЏn i}c+qkx GUV6֏)@=uktOst:A<hG%+GC*_:=(ͤ9,ϋptG/>sl5wT4䲻T<)m.煐!FI9s)7E8TmCN%a&xwV41&nk@w\?kX\ %m4J k9}J U~ӠReoѾ+0n䀠K|_>=^< t~RP(mW) n ,C;TI*W'"GWq\ *wda) xNHٙDR8+4{{6s.,[SEDCzEX\REnsWw/)Uq6_l~9/{}ֻSi7DKt.JLߊ(Q48B;8ȝ~^LHKRafl(_qJ㭗;}B#JyƗRw'i!FhOƕć1(U023#|5ƽxXlhH{?g/ᛎ 76PFC=rޜ9o%a':4OO: \)T32*C:tiA"vΆDY)!:?ks&%\ $J](7c9տ2o< CtͶr/Jڇ2be/TӬ?0G`y|R!? ~T% pG&Q(KM@dY_bbDOF}BYQi&~qZع4RARNvNd>!YotpN!G6_[񖋒)e+;*"6ԁ %-)zaEۃ~4Z뭳p$r3;?#f6vL|0K@TN _E.4 ,Q H!`z&z0Sßc}cnEI2<ؔ6gK5qOE2c|ʄ^ݑu7ls%ק|[qIvہg sPߖN'$Lo-X ލH!ݥ:Uށƽ5K/-X*l.j9kx,t()x{ۢ.l""䱐RtYBD0 ҋKdq3u{<νsFyPViv|MVafۧ##HsE-BkҴ0t٫z:ƴ|f(&=u1lnl!R²I ,/ЄFGurkLgn0fG~phgxy\ZG"j݉:Iu!AEvg>ذJs-$hyxOᯝt|=ȵ$m }I>::ePmiO:׆m{_anp# )~D9/@絅2ͽ}g%# v Eb`1Q ~J]S]éRUi VzNN n0 Y u fG0@R~ALU/Rӣudkl5Bw.Cs>m|/jƬZP4E\F>l5 ?-5՛_0T_5&!;K>SaLv%5g>SomY ?lGBhD#*>2!lASTZ1XqNnH>oaNsLaT44nZߎ>Pb"}m0\!fmq"LKo+o'I5 ҳ(+EAI"歝tA d/=>샣`#WJpW$ވ D (גoKdtV Nc®qjDfC[%Х=؁\2W?X3jLo&v.L3-ZibCmVy ͅ2ټ`s%h$J ;>p@@~#k׻W' )C'^m1W]λ $7\?b0;4N[R.P-IlwKHۈwu)gE8UW!Ţw(? e4 NJ,ITh/d8 ,ZzeNE ki_p`:ï>?2Z)޾g4Dkl#l?aܸ,T7!kiQ)) s3t++/=~hI/8\m5mz&@fJЦB ZC[*3_p5Ai|-V4}WB’ hSIA؋A ط:PuHG"Jm" SH{pᥭin\!>3/~3o(c8x>Lltlm' _lS9=ޭ EQ*{nN <8.}; ݣ'tk#jTzDA/)ĀZ!?r,]J]Ond5 ²؋6pœl>Y2/ɑu1Y? xgo 6sǪqybđPp%2dgI`b?9vAK~R$BR" ReP e50+5lyvN |;ۿ>p:5F f) kZ5[ټƍEULݨ D4"$ns.U^ e2(vq6hoZGu3QZA$-zfDmGQa4.5G!HSa rgwP b}!zS'5UP A7 GٶԤS< , O)&VrU)S/d߫:BXln ۽Ҙ\ydRF) L;ܠ(G|Ԁ$b17+PS*ἌU4h6C Tw l_+̯mwe6>35&s|&9ýdc!!,yɷuR6!s;._ya\TAY0=$1CQnu@v+ʘEXңlq4BvB%"iW3]V""sc2;?͟_p;@hax>n%i߹ VWNYܐ<"S~3ʐzZ&/#2tѹ|!}BQ0bJr3mzEc/B8esuݠzi?p+= g.¢=[!idٕ[NvS+A,I3\f C+q)3=kQхga f[oA\rdl7&G:ƬrpN&Tޮd/+}|+{1a_啽$.t_@?6:%[ZZMWEљT ǫ ehҊ׆'qK}ҝIȲJ2Qg!*\Jtc P'L~"oSRӦ^uKɟbWhΆ9CU} .@Oa9+dzhA֧ʶ}%;6ߋ]ؐeARs*c;e>Bµ 2}rZZ3ȯt3ь9z)Vߌ)Eo{䯋9m8p*XOCxO8P\EqRoac.ƳGF8R%h.DMԊʯq, K~LDkp&E{H< {wJ.ȓYÍ:蔧4ˌn/XEv&FAb n?o&q 8Lqj b'(+DrRWhS/.nd> 0ȂZr?WPG(K2ZZiX=l-4#BV 3/lUlVmVfNފلW85%[lPY?Y (m%"/P=_ݎ݈o p~ř~G?bGԫ4Z}{><^J-G"#c]K\zG(&FAs&8 Y[ܴK"m(8 SĹ"|1ٯp0B5e3GӛX~(TیVGMK$}27ϲxQInG5hsP+6BqbW$l䧻y,h6^ wXjtpթ;RAK!p7Cdej|Dyy TD6I6J p~7ʺc"z{l#8e {]aQ]u#(P>"/Z8à 4aZM1+J:ߒՙ|w_\'p#[:.X( )g 7!K!!Hd`$a#-L}Dcúj2ȹ|IY#[qdcSZzyKM^ؐFB%:bqLԓh9RnyRU,׽f+x0ex)t=AQǎBӿ>aƠF]{qo6SrpwU"x:|C?F{Cxض2 Xު3~i[gY\xeʕ8w 40ίuq~f a9GIh ~ _z܌Y`DTt*hpaWj¼M.#IY kfLsȬw{S o@=tkt,C #=`i#ft5LZ~k77̙)6(/vd/*D[8IM5բ'@8>B(o[:S;s1wVC⡙frZG8MI͊jQTOUmQ+9[˨"Tygf9^?f尠C W87RGZp"E,~!|-: VMU0^ܖ\GnV C TTD)sDn~6?@ iiB+.](޾k%J66H"hgvdQ>10}7.d&7Ze^R;$~rEK$ڽFkYk<ݝ&mvW8{!"󋋆{'w Jmm W0 R@<}9챙~5m}*t8^7DD_J4G9RS)n&_/*%]V{iqUw"8o\5mta!CЦXcZ'jzjޅ.Ɋn#̭jِ.c>+*E^ࢼ}aEZ4w%֡-;:ᢀ'TF RZ wzMuakISIzHqud/$I{m̒H[Zs$eJ ~wEC9*tECB# :Q7Ɏ#~x>GaQG}lۄ:0_ΐÏJbэ]WKU>t;=d O mlRRd?#2d2Ϯp2Ać[ېWYU~­U: J[,_3\,`uVUᰗ7dtb;@isP='v.jIS{&TPF=Ta &C] GyAo-5 zY ڰN4j<@F6^[R<8'Β#aq^,4M׷#/@'< 2KPMjuX4*H-U&$a)ræ:}U݆q#/;lU䈐ɡ!OOx5lp=> Tu}bͳqѦ}3g#Kx昳.Z;[߲Ш"$4A}wzVg:g]~?!.s?/ Ļ3&b&sPنWQx{͘t줄ruM3G^ c^Fۦh OeR%~M.Q5C1|~"-=|ISS/31"Ay*_eS^t`d-9\F^٘V֝ @aG*1p6} Q %I.à0bi#,,͑!\gCYpT3=FI;gmCW40ܖ;+D^A!f<|7.cQ:mUyt #a1)_-L] LȽY.MʯGFm9-eP k}=Ǐ9,|}PN W%o9BHTT?w~^Cimq L=7NE&D.:ԙutvS-J>?И$;E_Z#|&63׏ (#4QIfAuGCcɠYퟂVY狨f\F%Hx̹!{vFE\[ĎD}˜Pbb!ڲF博t#&% ?h**h_[#mVi]&c[9QD2@. RzCNs@4L7gI*bW#Y})Gr ŽEC$,.;C:pab`; bQSMmvh5Zv`NukJ>ېmӈrh G[ 7v%%JF/M g7wXpm0/ڜw~q=6wˌ|[yU޻h@ Տ&BsrcK$M^sbB3,^i YvѴk?A9 e:I/Doalqaw.ʆx Sΐ OV=*k(= -:)̀߄bs9/B3FpڬlxХ}i Hu둴A~Tgf)j% N,Mtr NBBLϥ QR"DT('zՆ1 Izfkf?Ө7[baDlԭ̀ d堽:"6׷Zmhg1bu!1E暁n^wM%8T`zE0uaNel-2~y&1R:Wfwt-W|xw$`џ1'z[o*3=':1b:SǦ.xtVpj ؝䢙rc݌-y0BC!' fءNCAFu[Nrx]oZ0ƭNjR:P\3< n!Ǒ(OT jȎvv!&f=8Iء57@#iUA LeG]䥝҈X̿'2šʼnKȬ3wIRu-i:֨#c:r7/q4z$ee 纅1|{> NsSkI|pJħ8zNHK{\֑ny#4Zh/aP W#[`]jɟx 4 xp|ͲN,(twЗ$ZrhqnLog~.[lPk:.-5[V-x0t/һ*V: JrEĦ_syyL]oQLU@p{۠n͔-W K&6 h'ZeRd0tkRNvj'`z](~\b1+0jɑ=Xov($O!V yWlZ߄KVqGhD$sy1(>-e\!Df\ѣbuK,dWa !Wq&SDUC#`:@WϬa|dnZ3hi}߿("~6Dхωؼ"5/ n8.$xo5!>;߻ЌJQgh`W}SMoz$a\V#zSKL$>KBمW im~4}gG|]P8PbNWOD!d^GTH7G:^Szmf}wĠőY x㖼faGᐱU8 g[;jyD&xm,d ቴ+Mt=50]\P[`7m^aϔñu+V|"dvQFĒq%T>[7,SG> ҈|n7)p]8Rrmya9@ ?ETQ$}PI6 fŨbru?Y1Z#s Ы&)L0xi79ud\pyc,ҋM{%D9NƟRGE*S~z0(]9,9) PγAFu1jC_dO*XB$szuhTߥ؞NbG}% UrE8?Ǡ^0'mT2 4sgOq&sS(~cgtΏ&wOtaTEGؕnil̰#&y )*_ݗ#'I'UL\;" ΙśG7ҩfZU=,zpքH(M/ӭ44輒Q9vZw3[vq Fc4ELoĿbs<#sr~õ V4hr/mwD: v4lb3+QS@`",Bw"4+,F@*D(GÜ?Oŀ*'>#l?!(9MJO'k=rLM$[jmԴ"A%L_.AP=ǾrH_7Ψ]3`pBzPL -=CGk{\b"t =(<W|h6|ܕP_ 8*3Ҋ՘PRQmAvP=9J L$K>Nb]}/e,c woa$<9n m.y[ tɱ{L^#?;&ƫ_lDN&Yl?Iʎ?TPQ  y#\pE~ڿ8@=gUSUpֱM"MԔ -@0Ls޾U_P7iTˀ3調vHQVmVyaQӯuI-]C$zA"a-gK vf/~a8r"*D1RU뇹?gQ/g0> ¸+^b6 ~I] \] T$- a7u3XYWj wrК;Dy2۔zy(׹J(V| GL%}[%s6̆>Ho$!&[٣α3'F2.PuxY"[q[hc?`75*G:ofF| z~Pg$!F{vC=.''OQsXS?# !1y-&ܘMI 5)7qlecrŷ)d2Mw}Gz2Gr@7T,,ipHŖLI~Qװ|ΠBBM?`W$N\$a`t Ά6y-"W),8e h;'Ofw{+w2ZG˒崲'M2G<7-)u`ehib S*"f@\>c]-h*:1opڂܝJѶTCܰ+NH~ĭͮ/&3 ,iL adyH==d·?d۩:*oL LGPۛ>ad?p9G-Wh(;Zw콑rɹߒl?U1 t1"=ڑJ')g3Ag3,m纯Z2[+Ĵ .V(Ȫ|0'vunp[i oIXLj46̢)vʌe9I0$sPBޟ.G3Hdȁ;H Sx͌yaAlʡxTQLgy폾5Ӆedl/^E|IG΋Z\t]]`X3,!)d>}agԴ-.=1"m2\Q¶1[ZD&ND͞q7lKV-y9 _ƏpCIOC`dNfB bp;!H˹ "r[LyPh>!CQcGLm{8)>]=}K]WE7o^rYeuN BhFQDǛwNr%WjOp8F>ոauXJ|ڻ,FKS3#RyvF U=Qj.0*ʓ秥X3vV%;!2!W<) 9{^8&\>Y#xBpOz7GqY*)O%S2Ο,k~"!I\KNt a=ܛ%F"8wP;Tzʹ=lі>O[w~%b>{C͹?q: I#}Y|)V!omjmeE.VSL&K@G5:W&ڒ/̘:8l D 2ցٞt85-(E.NHEt }Sya}(Oh`PgX#~VU}nNhDLs6(ͯ:{_o Hl0-Oa?'O)OUA9Zl ϻ)Ȳ °iUi4@|qFi~i<ԥ|+{*؅A]!eAQ^o+PcIAuf!rLCÜe9voE{ ubKhR{C!GO Ӡ:7$-[ͯOO޻z#7-GJQGqT;4a #-B-`$)%RybW Gmt`[!F#zaAi?-$hA?AT:#NgTj,[oΐ:lu;Cv'c,ޥC&;yELt/;4 REe&[:V=DR9q[h):`vR$RO=QWo[pk'&ͳ@֨u5 )}nJ?x )y؎zђVAs Aۅ98Z/OXeckʚS0TQ%nj7Vd_zg@ (Y,G# OٛQk*M0f W߀=xeVwZpF FaegFaӾvv3w/8H^RtaZF ɟ5/LNVBJQ[(Z(o=,z,v~g <.CL?C qՔ&PEHꝣJ;먤7i.LIAZs2пARsK[DvRc?lאQѵv(j'2}xtqEAG 3|'@臨 ࡾѶ)L? o\$@4"$t'M3{'jʀ8t?s)3|͏=3l6ƾ 2L6?v}ڳa{9ύ|t޸^Qy@ZX*&N-H=8:UctH䷫?h}kByyᒗ4SX?´ԇ?ř(HVZS0b ~dtߩlh)-U{^[UlcLP' K'P@h ŇfgGk6Ϲ(pSnTTmO JwF hS>ҏJ ŝF=?GHyo2x?EˈgI?,[cT,[CqUɸao|5#f~:VB:tޑ7/>3e%W!l4ciFTÕS$(B6e^ 3G+qhՓIHw#; m9ng%r 1WM9.ސy GM#%6;=Edvg/'߇#H, ŋ4;-U2հdcaG׿AcڮNXrYU ͈A8].Vg$/ Ee0,<9KEim2.ewq23_wYv>7@#<"NےoQ`vNmI8Ƥ-0 z0[sٞAv8NѦ K@O0D*יd!gL totJVZZD<T=IbR:Hw#xV]tЀ%]a_~X33~5' E$?@o<$ gc9`"9KQ 6Xf0eweL[cY2GrL| 5sNﬔi9":&+Z۲hsQ7x{ȧF Qw>~Ngf6B?UU4[Lci8^"rcy%ө|+C12n F~(!xקemZdZe`K I,ܲ}x' =̜XIjB;~g@k4l';QL g)Sfau SQϼp6cv *U+Hlnfgt蕒WmN!yR? H9SO(Umࢶ=DU3\Ư׷]}lwXP..qfz{4K~L;gЋz~!mx  iq)DA@ퟤe!b5\IZDf)",oihkKд*g_] :`Aޯ3F%ƖU9&~9p"T͌7$Ԓ*_4nqJlc60}U΢Ks7C˝tX,+| U9'QΖ])}_H@|l{Ub19۞dtt'bpM:ۗQSKk]ȯϖ#qnoI͞@"\ `;._DpG& "|;ABǮDϸ)͠.ѠtXAn{f5Ʊ-ϥyAC&xPeg^Li:5Hnh]3kJfLan~c$r^>kQV40kDO{ qt/%N_p?C2P?Ig*WGI~4H,B$[?t9v@ۃ߅݂{ $dڸh1 U.+ S'^]r 讴(~&T鯦Y.p`u0gJ̴R2Z)Hcbtj"G8 7kX#ٽ3!*k4kɧda22K13/̻MYrQmd[}\4z6FD2]cN9C-?O:KXXT&W!Z[JPl[#>UL.nBZMOh4?!i6M\&M3'#Z'((MsK33DY3^G¥/=7K_7d]Kp532pgkh4ڸrcJOur|FOq*@ d fU]X9Ҫ6}>Bh1-fuk2*ATU_-6U_NYmSK:GM 3+0!(? -ZI)^F q|%*zбH4I!vstĬIo\_\M2'9;mzY*Oyĭw8]|FRuw>/vaJ{r@ vߔ!ďWe?Z鲆OU7Ǔ_=Ȼ$|RӞ\=$yb~^1ˮBr?.^vs}'n#NoV7ȏ [w,bG%PgIZn@14i&s@S(fN#Td2lJ_u|c|8.QALOzoX!#|e"}hO$Ge"{-kNHC )4{ae̽{'Ɏ K iGY)h*5 F@{U+ ?{^U wF>Rƙ$utw{Q kuNBBA^5ΈQfΉBY,i+W4}G?庵m[Lp6oo@ZV !!b4Շe7w-FMb !*Ps~K/9OG#k+.$[L*=^.Eb|=/lGc}X|K[ £>Q ib!o#t,,lpU" 7=F9JGQZHrԊQ3p~.6N m2xj˫!ŜOy&q&ȷp#ɆOAHwTBՅIdJ'/t:A҄̐GT%LN6! 5. WsPCc>%ֻƧs~paY yHSц#u`Ëf%ev%` R}֣MveNhsHP=n#Y@)6| dڟS^EL%#u&n̟DCY*m Sd1gDhQ[>?¡+xZ<ۓ&|I')  HuuZY{Eb=,k ~C \XaNe-tyUye*8Bm36Xh]"ްҭq4uRs*GgaЀ+CI ӱhb&UiPb+R!HSD< ʞWpZaOgPb-=);u"i849Ѧ)y,;" o:FSNJ"E<͘%{F_w3ح]8'T7(o_5VdO ,vsn6pi :QDa| T'`i*1o980AP_L_3$]*V`nX1Հa@/b̐KFk0^9To8#熷+'vY vFSnaQ2l } {XkVSk=/U'n+[4yRW)-DTtMމE(gįZeSy bzEkT;EA43j^ϟǹ eM[We^AT5,2;@`$t+lw·_Iܠ"y;B},O}WBր |Ña8s0gt56rΡ0pB}^ʇ۔+m9K#HKiTuM?i;tz$3@9R*nؿGKa&n5p'\\qLC9M`<{;6 1M+o)>pOF됖 &=j(@*i0%Y>cJ4CVNl,mRd &vavUsrRtjx]A5(91YKⓊ W? bdD}q̬ 8u1iM$%#ԻAUg(۩+rg@W]%dS(2€G84$ԡߜ[gad#+ vBJS6q[vy\+<>Qiq*OL_,̬aX]THRw&\Af gc'@Y4t=Yxv(iZE1g32W'=ЉrQAUo˳r,,d*kTQ?ObQ8t9ZVw .CcԷ`Iq׸(qxI֋tӯW#?̡AG^F^'T #*F-)HIM)NJs{ _}y`/ݪU+[&6nhYy!pu-gt$GQ̥6?1%F4QW w>k;!!bf$~Ry徫Kڴs@B,hY$cFэp:z7Q:Ĭc11g\LF6J/?T: ;bE`I?`>nqR*UW^pQ Jr ϯ\Th,Wu:>(H[9y?1DBٹp-aMlD@>ɰ]ޘG!9 ^k۽EKyY؉C߇Cn֤aӻ(+ v$6z٭Ki?CV1^=ӞO~k*S#4LaoR/{Rd޸Y=dT-g28hx9Wuw%V {L@h&CsM؎?3{]|* zH*.ӽS^捽\UP0|f>o+׋ڮ!;dDȤ? ҃|U@@7whZSm,GH$WvP܍gjZ $:.%:1A  7:{uqẔOU=uǭy}X޹ .]1s*i*-##o8v`:}MС15'"PDKZJ_C_G1@Tit9OXس(cPo^ OdZXE%FR};Dd>=d79Z72<;BBu}dW#q=cq ~@y=<5z}"Dƨґ.de *7Ah2I$3~˽a SB/]{H)~.=iGY z8qW'褼te6S<;0֦mK s}B`] %/wUH%- xY;Pn ͙c$J0弗ysH<6r &)ƃKv$ Œ*Rmlbw21(p ?Bs wZWw ezN GaE59ɡ/ 4MmHCFumuj$|ހ^)sx"HO|Pˬk6` tS1]准ufw${/^iEa߯Vѡԟޡa<=Ip[t.1jmQ4fb{Aڬw .ƅ-:ݰՏjsI\j~tT*CϕdX&9d = `NAkrtlgѨ"̿D?coMrdS]G`\o7 >Iemt[,آYš*r|.,fu8tv+Q\Y+څuu[z.GVTUAF]>/5sf`3JrR:* Mqb"B2\ G̙a,M/ 4Nj:gwb !Ag!5"r'l=̪p!,g .y1Ot:?a5 5<w\.uEt{PDҍ4'i]ƃ | o&AC nB?jO9 2LGG+w Prr +Zb;X=9+H>ok~a mToCumG:d=q+@Lo%=r#"dס#77fv!8l:[Ra6~Nfb AvBEc+mڽpLYsX`&R;Mjwޣ$PNCbQ\(*3T%P2{HWidbTIc2 y=|jQ绗;= ZA,w' @[Z3Re~FKizkhXц^Z`$2凬*l߀qPoTw&npEzNy({GeCJy:KP!sb1ы]bp ; uqg踾9dh? WMxWSVIl!8]@)~E*\>ne(#:K[.H#7*[k9aC;>vw5`i}x*G:e*5= ##1!6j=m v=B)b}f4-@GbТ#)HP~XM@,m!7:?~?C,&Hdp4/nZ mc(机LY?6bÉkZQ%It9<% Ƭ)U݇twξ[+єΞQ\~ _OIB3>UMiaE31L.03\6RwV\%ڣ[ i2F~T N$%g X.]"/? O /=b}Y+)*zWF F`G}A)4)caj$ k@Q[R%ӮϪآT8tez-=#J-@LCk±5aV"^KݮᡇRPٲ]A&qE툅cyo-acvr41-nQ(n* -'<DT>> 3Ji漦QŨmu28I% ԚL(sv+ w+p=][ f2>uM׈ZN}a,`cJ> zom@{m+ Aj͕Zw" L/n;T[Pw sU[a6|-b~ܴ4@}``]L5)05EP75Ƣa+ۈzMe1 :5fk?dCTE  3+jfd3 ]G6ӆ(9=@l'[sݙ:.B]~l&QEOs@>H~`[8d^T.m1U,a^+Zŷ;t XٙgDg)xbt[ B^x-hWŖX>@Qu £E' i%+imj:P}cZ /r; AIA6c ??F+KmS '̍vN&)ztd{xg0fCA[#yӪCIru(BΠcA)$ e*%tꈶ{$CzK׸ UosU yXP[e!s17 A BmѼV>g-1Ղ8`fʕKLNc7r}9VaL$3{#!+loQլQ{pkadP" X1xckrZl.gTThgr'v ku7@Fw0<d6LQ$u3]^Pj]@s.cSmHáv9 kmQ|wHYVz$瀕p>1KAxǩKϸ3,}#]8Э{ZwU$~u_Úz4%<ڤ@uD6^ɴab=z6}R 8~Kyҙ%lDKRnJs4QvXWUز\$Dg^mIl/x;qR R0Ɍ\waުAA,Ϻ3_qDc6T1gC)v9n iCm UF W}%ƭ1+Qg1d/P1^CLzL~OEY:>lK*Qc"1Yg;x<هJ?3_߱;%OK2yG==ep &;tJ8_5"ڢc Ķ ć)n5bX? HJy*Wla+" rkHE?}J o+:G /]n7"O%*D Ђny_8I>6Ce8f56 ԐfK!4{gH:/ 0Ӑ.~Gk‡.)E)imR s ϯE N>xoB 52Kໝ m?$i%S)V?f*.bW2Kր5TFsV#52#v%Ô}p1bwWcq}ժh-ojtt78RuUDVSez5.cnߞ~ōkbs9~<L5cc=j37{զsƎy+7q=,T6m͐Th||Rr׉F(Yp]ʛ-Dn=P%R8 ݩehJCnd\W0Go07PDP ]$*rux{k_/uvג3 3"͒uRvG܏ ?79zEtP{T,՟QdC+sA+}]"D-2i.Ypcl;N?A@nn NVA󨿢Mv x?nK;@e J4 m2awC XYB,d8Ud } EjU2YH,w!:hMr0=sh׃Tiu+䭯w'KGBWvJGY E]\3GV$4p- 4`~ l;= Ƌ*o^ *a;[CTwsxܵ_  #@\L6̯:E_mJoHoH[zd3.y}qx5N)~K)i(z]OǗ:+_ / U~dP 5d|^Ѧ9xOdm!FVȪD%\! ;qSPBQs(I5zX(-YXh5!Rԣ{CdzlL(Żo: Pڍ,fR[xܜ79uj,dPS*+/jlk*`8̡w9]3-Ѝʫ,wNQ>5m>k|5#'Ddud{kHxWxY#k]Af b o6sޱ,ꙊPAmɓrx!&傴;~w:U*)Hm m?%(%mÃC| v axʴZ;3BNaD~B3}uQ;%Lg4 %v!\}{VI}j,kj>Іs;0 !8R&uS渿?j3怗I0W8t{} rVӎ'42UqjsWW n mO {PۼKĥQwyla'I:n[T/ffC,'I9NJр_'kkէ:ٺs^'J7۞V/lؙK#_1r:wDPP{C˄֥ev g,w!z5/6ٸAjp}vxw?C^RådV/}iQG׍Ʃ{ٿN"".'p=nESg _7:jPIK.'zvX5X#P%nđ O xWhe6|0vJ"nLsi0hS OIyh9jk i^ ORҎ3Ĉ3WxTs)ԥ&@Dc6| ţ"_[!' >j IOd "5Q.#s*%WmT!/6:k)O!ǀ.5z.oe%|fW&Z؜ըUrտŧ.OU}N4/S'(qz6!`QHD:"MXng5e ETgJWs7M,_Vo|Û"]`y[BXRs79x oȍkc8(@j4%eo&\o kN{+‰tߐ܃L+pֶ 6"TmÃ1jel4x c+/ٜh$=y:' :Bϓ#!ȓ K1*~uޯu*E??0;"9NW)a@R4IJR} YSk @0Q fj cibdTdF#foːZJLዙ_ {yXzḀcfDS*vMԝVm(UH8D4QW)HKԓP%@:S'6Ч,,*F9(<N1)CP ݊5v|ݍM-ZbL;PvvT = Wj,KRU5 -˲oyNů6h]s?IǙ-k=kO6b*1k*P4U.7@{!& KlrѸ3h1K0Wӡy+ Oj`ASTRapUl͙+i"ki>O޺jDp;pHE Si c>ldSOPu|nXX]}po&+4Dm<\i邅B+gR5561M/|!"Q1,o/H,$]o~R :œrtgC{v\{b$|!B43҉ t v} 8?yo6p3o&!Q0q 9ogZNrfR/ v? RԈ~lX~s%U3v+4+vR7v`78h^@ɩz#2a7b@k | q@|նkdG@x0Ef~8U]pؐч}jeڂ_:-njܬ)RbLn q^ ͑\<K¬m/28bE2{NY\w+į,N OJB&cZS) _vU>9跟 ,k͔,Ԁ B| 06ͺoz]=$ZSʔv!|P捃A\#eM=w"' 4, ꃷ! 72#u6YaM9|{ S'JXsߪ`!t2q @m&Dcvys6Y 쭜T1|M!95 }{DѝAА`d=/XlJE1Ayw9~.vXBl`%]4 rP_)Jd8RjČRRQd+;S8^\u$mZ\I[p%?E.Dƺyts~0TXXH3`Fj3 Qb|!uy-F΢!ђN $B?@sBǷhY@SϚ{dSv6Ea /fqРf~Nf]0y‚%U Xr2M41`의;a8ò}Vu/ވ`ox ` }ZA!x4\mu.>h9AxnC[5Ԫh>%GO~_aWmWCZf!|LzbR7gKy5O p"˔^1{ C3Ezuƿ_zz uۇri ˜vz+p^R7x,]%f w,\GNpíwvH.C/{\`P 2 $9:DO{]+ɖsKd?s ?)͕&皑L˖LJ~^ 5 *y^ }E6h93 ?Y;<=p1q2M|gr?4_wcA*y9 Z*@$c>dI ky.F;KзbS5Pڳ*,E[qOxw4/zi[:K7 .,rCF;`g')S3$,dj@H|rS4vifqn5sh]uUT@*)SmI]Y\!L!LVo8Hx8e!Bǧfy@61u$w92@^.˦c􄴾<$R_HsXg')v}cŵM/^R@_'6&1վwx'|JXUD׬ZecJ2Il-&-15.{,xUvs@dM ӑ[_lTZ i~| ϼ Il!0mD7u Ui͊C"UQE^E$0Rcij̫aIP['‹KiD.UcaJT .rks#eмp Ӈ[9)ۦ+ްGro~Zv8Y|k$= ~I:pl7y5W{n.Q~O1L4,lRIIrH9r!MYͻv&E*sڏJJ?AoõfEқ<`,z^[.Y5Lڡ,KIǞr9cF!tFlW|x9dJ0z!1p 'R5#8}ܥm|rM^̧urc'”]`mȰk)h%k3WxiElaW@SàڔjR&X3y47m;$@([2}ޑ UwfEcHO =jT#Cp05";WUtOMTEYi~e&!yIX, P{jBgۚ,Me'@;iy}@U`~"W}㽂O!5娥+ 73, É9+8U>Y-J,g b sO*W*wD<_My_[J3cSķuuwT󨦤έ3UsOX7$=\;gq">ӳÙZl\*`[ESNEsҫD8~֣R_WGI&?\!)Zh8|M03oE#C6f^!]hɉ(wiO-a\zLCh4Ĭpe) %tC+W:þu=EOh VjgqƆזnCɉƗi2j؇)HͷNd,wcID,/P]"Tb>R -_U)5by*~oDqĸP7Cۮoic]Z "԰UPiFu$m]LTk e81sb nRMXMgOgAonŁs}׸iE F8|^hN\~-,-^(#Gt#z>~u9(2vTQ$Y=+S s\p): Pa4);=TU`2Թ}Ǩ ׅr PIۋ`^MY(* jN i%#|*揥g$(oefQkNB!xFb|іmGzs Me NR_1-B6]$ <2SCۺ"cP1fXy?ӻKW2"CsKPrqZt-#pZFB/OX  i`=g<]Yj(ܽ#uc`ŠJ\~l' biœofZRP…7wCX:vdKR~ՓPuEUT2ٛyjy{4A;O&jÁr}lCc)DQ0d.ks:8nz@'[7]~t= ~6jcW-ja6QԦPsrGqxNZ2v!U" ;M~Tǧγ>sIYܔk`x?jkەg0f; ^-9Pu I_6Yru6Q} %o;~09qH0zbN)1<#.: Zwד{{lM[P?aMdM ,"ek]Z1fEHCh4~иZ$Kp]:9N?#`TD2RY>1K;[/ WPaq{g؝"Uo,@.O:twWl}qװ4/p|lޡdAȪB*-SmRSO"k?Ϫ1:ʮwM$Zd=/1*rș s&E坁i} LC̜,+e -Sl>R"f"+V_gq}ؕ%ē協'Pη <%eQlSٿݹ@B{e8 K|iYp*k𱊇fLNʴZv>mGL% DX qo{^0-SZQIJQ:1k[|%1i|f@ӳz͢Rcqh/ Agm.7//TrZ=W8_Yl/ti;rP}8d]NUa'vdMambc!*d:}zW$5q08O?_ypW6ɗ׋8,̢ˉ!%Ǒӥ^:jlsr=Bh9q70ZmBvTvzT!6b" g_2na1*KYwdx;ЅCZ\D5k/qCM|~)W*jvߥ/ÿ8Ax7ne1PxV,/r̔lTk$ -/D-)ÜzXW_ӯa]3=+?^8D ~ oP; ¿Q.J~d\s1Ϻq`L,"ss٘Q')y[3pSIFkG͓X/U |d$l7X=.XyxlYS_qyjs`/($x5r|G1??֩q߉VدV\!j; sFn$Tdžf 8jvTV9Ra_' Rgh3OJL|?SӜu/ +=sfxߪ~ &d{ԅ/]?y w >$Uir- *aR ?9]먳}Wj[^r%ۮ)ԹISD@KU+Ӆw2QFe 3YnqhԪd{ BEԼ J*:㘩OU^:: 9axAz|tsK&F܉޳DN*ݦ}#l ğqxh/ZF0E5<<]xsF K^Z mQsBjjb$:okX*VcsF _d DĨVImԸb:ɨ? oKZnDp/yw eR.=f?pM咥`,To{3vkPAr4n8W*N$ ڗ {p؋0z,/ a+'2gs &"*fCw]yye}=v0BgоvY; OlCr%D.a MjM;GO \r\$/X配 ?&Yev=UHg;|V֖j[ [)aj{IhڻOS}-n&|9FQxHil%B++|_qk]yB>yةnB,VH{2[Q|/ggWxyŠ%+݅A!SYg ~Cusޔq?\~#nZXSs ,\1cLykɯx\FN F=I6M(a^tJ%ZrЪzI =gzl WJk܃1"@ni^C[7֠, 7GL36&Wi-oVSc\,&mS,D2gn9՝J?F.ڏ7C4ojJJ Hf=,4e<܅r(d;wn@^ Ux$yŎj$#BY* Lsrt|p[p5Ap:bF7iD{JC X(.z}cM+aE ܭsMʕ fz/{ɞ]ND6 *bJ{ps dbCmu@qa}oⰱ1= _XL[2 B$Qg_}f=ɧfM $Zlotv|`'āH3PKS|r*LH>5iQDpȠ"tPQ~;WMo uGj.&5;,N]ғD79Zʴv61YwOJSԣAh$>.T~"8 ZPnmeGwFkf$0(ЌD86dn Ooඪ e?-3?(숪>8r2\j@ƱMذԮfP@)x3aȊl [? r"y$)_؜G-^)fd?m$j i{bV`?vhr, #5i#'QEvj8k]8k_Ĕ 6j r~]Ė-T%ɋPlH:hfX8fwϜv\8w˩U (Y=TrL̹]=rQO0=;'ӜBrTƈHQl@ p2V'zCBO}.39S{y!>Iѕ9AH](QKPAηVCAMC|.8 @x>ش8v[ %p fp6=C>\ @3jaڱp 0G f-C+JX|i*/ID!& ȃϤiGJn$UR\tDqʄzK3"_~Fm+, gXr"-㋫Di~kGhZ Z alLA7ZtA{SZWqx9џEm%smm'ℯ:;yϰG]<;$n(@*qeIIZixσ =f-֪hpn k]h/0|MlcX˾,ŨN2ؘ Ӯ讓 na0*Q"<;V&&oÀ ?R])8I:b'k *vP@Mh0=]z?u&wy6-sD\±0XW`8;ls4ym'qj'A.3C\̍YL%Չ"9O:ϗg~~R}4 TspjO:n12)|AH ~ʳ Ҿ Ջm:l9KE[q8N+wj 3eh)֩_倸8cqzj =i߹I } %3un<%ӺsikGk"obwDIYV ΃.u߰?)E:Hδh@dl)g~W&.`׃Gfn0gsF()=MApQf…E\#p˓b&"\kԛJABoI-=.% @[N6^ҹ;H e`Z>Ӕ5(MW}]a%ٞ.z ˟}+ uȰ6GQ䇋sA[r3oJ r,zH;vBÕğ1 ǂdqYNo:8y>U+dT0AX 7,L$^R/Zu YM ,IW-L4v-|^<􁅒^G(sYS$uA8s˵Eųf۝ñ?ԛo Lږ5g+q4VCLI@?#JQP&}7;-+k#^I~Wya7z+'։>f*KЫ? Q6@,0Rm;^ ċmb,+& 50),bLԟ׿ZL 6M6+5Xb驃EGjz\Uib>j6S9Rw}v]b^*(A⛳jYGҒ蒮qN\Ǹ/V[VجU@r^,${=q9ZNCA~ubtb,˔}N::XDgzT0u%8)<V…92kMsI9*~j iX*}`dD \tzsMjZܭR,o[)rۛA|/q4T5&QY|`#KI!{Nv2:pi|\DQ$%"ɹe^o*IoOB)Lr)8UlV@>;=7`M~z}YN%kko\h {U1Tdv<+Szq8Zۆh hK2hUF,S{|-U]ؾ~S!o)*زu}uG1q+Wjq1Tgn Y҇{XIpdQskSHKS7JrJ;/G]КqP}72VBQL}PIK @Sungɳid>)sjl=S ?{A)_rc*(ss%_^wh_pR6ߏi4J} .{~Ycc1h_,R#[ab(bS|LMۋ gҧLZiM~i@mqpf @A*%S}yĺƚ]ȰPKT?/a!fhsFT.J˵IZ?Iu(GUhUbH}USܜhѼݦ:.nEq+>xmV,ΊM$ˆk,!x67KG&(%miR#2|+A`!I+o؍ofh+=c͏H G-_^ҫ;UG8rvZc&x-ENN{  Ë2+_ڒ_1aS2LA)(8NE]#wڢWE]`Jn8>ŢS>rRt"Wr=s+0.}F,q;J Џ{^6> S /Қum gxD Ts7/c+,6)<~9? RzwC)sb;3 f>U1Ds01kA!?=ܼ#mLG^`D>3_Ce[*_USRy+Q(w2(]9y 0oүMP2$pƬ`e} QTZ_C ƫurI}VduvY0x.[z r*ZT:Pu7F 1M䪶#;{WGR0o=W`j sFOeOy#%16^F xcMAfWn 4%6+nh"ȟO\396H~K(*xCg$;6'4\yCY s{_L7H!sxR}'"̴#HZlIqN<<-n}}Mb6dn,baxE+模KF+ F>kUaJUo!W75(!Katjq Uk;50 (X I@QrU`3.5F ]6<:]0Ur|œչm\7NlWCxƋ ,~( ?.WB3LdLHܠ%Kjd!S[(U1h([6A3 oNgؙz Ź<LRP$&QA:=yjNpI ]5L (6OSZ簩ikcUVyB@Ԡe0%5YZ^$ swln?Bs gݵ{0_gȓ-[(/Jp-Tt]2*PC$mNQ[n/\M l7Mãhڦ͗wI~X5ѯ k3 Xɿ"(a%&&aͅ4CS=HZO?z, VrV20..q3?Ii/:LNpT#t5R&fDBm="-7pֶB(ye9pgጎ=lu3ة9I]|cZ"o.lf֌ޕ0^3,3;(\yo0m UT7Ϥc !"O3HP($)H:h&N=-ɏiLb*XTx(y)ET# q J.iHVd!"qCjE!i8ve.hlvtb!`1/i,⹦kW^^Ʃv 9f'L5*=dWͮXWg1A|8TV*=J3sZa=*ұ֡so>-9zݺO%|)af'Zˮ p;u;|;xEgCn 7v]f\AfGE*Y˼wjabb ^2(PcbG$hvpbxU:T32H8S8#5,uj8EDǨH8ymF"'=E8EN nkCDawC y=l;KN9I񯯆GV 0>OTw !D>뎱iᙆ1mԎ<2o6UQֲSP{ \paT 碌k ='V;įu()>7rH+hd%]+((Fª jʖɮOQK6ef iϪG;@-u.p["0C+{m"?<1ߞ:& &ıqB;c }"^MA~0< z^yiah#Y,dr' 4y1G_B~MPQ+¦kI/2LW !4գ7wg ӄhΏD@ٜ](ӼjJȞfi>NUǢ+`_8jxzRANPv%,\o?ES6\ncʺʓ,󘮦7ҜZ,{FeCe"G.uq1OM9#({26K"RV{z䳏·l\EU!HQX8ku:Q9B<@r_z~k.fzg}.3j%{D؇וS,.&&;Tɯ^"b^aɀcL;35㥻Ҏ,jgl/vSړh9%lc|g 0= kH,Cf`+0pv2D+UI!XG@32ͥ,@^X"-sEDSc4^Ȗ&s p_zX-Yn* A1gvO R u_Bl,s%{`Xi1lYHhZȑD㛊'P+#y9 ?YN@cMbSu>90}-8ʨR9/<HUG}޲(-$hrd2ɸ:J OV8 aq"pjlBGvor]ziP@#Я$<'!JG4aEgs  Fђ36h>Xrh"oп*6MBݩKD౎-&)/?ʕ?hϰIR}vrF)՘ : pt"Y[P/$9s8JPܾWnOcHR=:{zp%R.ilO]60:thJz/"e< @ 0KǥŦ}h~|_V1\xwCšG-`#$$^9D.1WEtch?m(][ 'b-`YV`i25As#Fvy±E}lDkҚg)Z,,އɝ0^Rm hFW4X9AG}^bZ\ePΓ O2dҥ!m'k’LJ`׃_WbyՇ; I^ᦰVw).^؄Y j=*/Iz1~?QSy  ۏ}b2Ǽ|GvF}־W#j2(7qN:̠"/𮼈i(wѼ$3SB/)RJx.U9e>Sؽ FLQ8*j~PjQOd @`?p T7 i"4 -W":(~#iu []ۗؖS I.HȤqe $-]!11vlXҎg f u (xڥvUɕ^H: P&e{aysx٬ 3Tu8WƦj=znŴe_=j6Cb6 kKwnkԪ  RzfVvgblښneٙ2Fğ|khpk3+0s|=sAU86! ;?=_mt#-ኆx/rkġ Cɡ@o,@rHp(u9CNQ[ AtjQ$F|Hw8NU J{.)')fyQx-9;.gG mK/TGqUp0TH^fVpsmd.e{BQTnlbn:vKvq?áruNDTquSC.6όʾ[{v3|D~~d2ẖc w=|^UO!&/AETbi= qC V/e0).䑥vBr $-Pi_@Ub*Xu%_o`wBF}q/?rU RC$ۛ)M`5^Dm*S<ۅ/M|^B>csxГƍw@jl:W J:C<8׆rxLy3hF1r:{})-]ΓvB܂`Þe Vq tZZtEaT7df덄IF5  @~!?CsVҽN肥Bv܃P^ӬCa„RYJ>+h͙{IOwdL,GǑS%U "ۓGE .=ͤ^"|20R58Aπ ;9ݹJ˓.*&{j5kyh9'H}ylO3$bFLAvi!6u)k&`!(H"01NԸcW Ud8oB}ӛM#9;ߛOk1k1,~ouE3N߲^Z_6Pfȓ5gu}qdYHeUTzhwJZ5Ӗ|~zdR?Nq Bx~)܀Z$[#$P%W6}Oy_I^VP;otzx%\8Ģ 4}#˫?RXx(y>"sb*g6ʴa^DiڙjR'U!{sz z$4}``K=r $vzbmJA3?1M0Ns'm32g`ΏWz`krEyP2Gۯ6?@7v b?;BbcUrFt"To0՗SBדr0mNA T?)'Jk  u}K zXq~#\GMT+}ŷC*f^Md"SZeH uV7CZȧ dF_#LFB_Ȁ>RKM2ʚMDti `{mN:M־JR+׹B[`jBP'U,,%;W6Ul`% nJ)"܃ˈ c ǎQ!(?->`O,gN189hMJ?õXQ_ dZA+Ubx zڒ}nUCԀɉ'TW/Fg/R'N ].KpRD1UɇDF:=afj;~[D&<jN>gLͼy0Tx(?1.♵ ~,W]xP{_"2 M<x [<6wyUAM=FBr[$dp$byw%榖0~OƎzP=Ŕ]i\Rr|T6Ibo̒,̥Acܝjm͠*`<njLec+'tbDF#9^JC &0/.gW25"6[P.XFTo=5)IPN|53lލH"i[gםgq<&s !~1*J͎D|`ח,,Ϟ.{/]9ioNKf+Qn(= Ec\)jl韧Ro#pEnV) MV#H =Л{*|)9?4s ?0?!]U3Ί -+Ap?J֫ij*1d%ta X ©Pu}',lc@3dDc\3m 9IGz<n$-GnK{&iՖ%PwIZk=SrUuG.߆޶N`Ʊ~\gn;6kmMaf9lK p|#u (-{Q#uXř6doG0[LWzR0ȎՉϏX0Ԓ{;6$[[ʁnch rlbDd)`Wp&MP;:%0񄶄cd,€FJygab]:yͥf9 1ԥP1 ,7jz_%ۺZ'5G%>;&}Fe lo0^a3ؐITy1v*gQfjLc섉@'T!y60J90y]Z6+a^(eT"`  (dGzc994;gz@.",T0sѠAj4mK$Kl|/֍VX 1T|uB /-<7t_`IS'neuI?#n4ڼ;֨|MКx >qַ}H \RѤʙ(;pJ3P=.844<&|/u=]Өv[X5׶5[ϊGe")R,v5z5hs ܊Ni0ȦR Cw'5dlQAvFL2ԩkw[x'D&!3ߏ^LL \szAA_gѲHj#֩5!6fǂTy8 flqҶcc;378s?a0?4e0>-(\gY]JCgR1y$;-xM%Vi{v 6e*U Y;:hR Q<u n}8:̫ԥKQ'*1Z(aLgy~I}\P::2" 3g2T却|peB|!.I{Gd<;AHoh%(Ņb`-G^E[ Tៗ|<b!O6ydh8mq0cX@y|S ú}u6MNFr?4rN0?01{q>r4ZgyKĴʤTy)`OM~ZL'q%\iU)R[qM[1<#{g[mL?ਥmE;SUqsBI 'b!T",t.RcdpR3EVakMk1:_@XB'^G8XɩKXgBzil맅6KZOYVdYδS*򠖖 +jQB*۱i{Bݮ! RпiSbSwg%  .sqy5QPTk7H–dPWQ O ז?u m-^A5ZdLkȸrdk~i_mcvDwolEX?J]2WUAo_?2Y1 ~^Te&@D)I/*!V.JڐL4a8A;ҾҮЂ rƐ6.sjMspc"ᅣ5Ɵ2u47n:jlJ\ J߭ ke NVNW%˥/ D߷FizJ0V5ѲeQ  EL/VpmHb]jG'$Ćo$}ĩ|k #?u\Eu|ɕ@V^.D;KhA# ̪A_Jd Gd)N0lr5>SHu=?7)8. j? 3rprp.=L[FLf8'e^O}jff7D%bզ+ovAAf+ߥEYYT❲OʋmFjqհ1]8u@pvF^x=T/:ezGUn"B},윹e0/~)6RJlw-M7QyOGNK͑ :DdV;O3W?8tlݯ̠mpE鑭XQIDnN/N/Dt G'jl $Qbl h|^ʮGe>\j8A(zOe~urZS.n;.H[?iq+ 9Ad "e*Ym9>z:1Y*l}yN$15R>8i%[Deͻ92 E a "ɺE"T6*DPY2{͘‡'3T3c⯪A _hv8QIX;"&ch٪m$OQiOclSmϮY- EﲏSg!9pb'83,WQ8D: ޔ!7_ZaNJ%_Bh Gbdҳd4_R]TI:a~./_0>z_!%JNI#)'_ lkf{2u\kNp{Zd\ySLi[)~t,E )"`و6˴)r@-$J F`7W"oq4C<_o^ǃh8ɘD BXtJ.wȶx) K`\׼Ocّلз:|jH -Sq?%]#9Vai;D8KU:G] 4r>>Dq2Td> [1y c,O ̦{ @)h^[0'1)B)=G"̤``!%٢7E4p|9cϿF`wAGQlJ ܋p[ʚ}eq+UlʮL_ͩ$4leOtb9 K/_' s]m2nɳATʫͬS(g}aW5Z7 6,ZzeCȪi e5/ d- rOctWU UW&R/YAUszėΠPi:ϾK{PWxJl5y{:`JY{>`EA۸VP7u؁fI-xPT#$8i*ŶiTS_7h{͡K*ήiݦnMcL _vӻw!K/U4(-0zUjHXkZ6d'?HӗZ-sk} u؀sde΂^)YlyϔO!#9ӟ٤\Dr.# =1e9zHf[?@IݙM> 9 >▉$LM݈0e5l=7%7}طuݺ64vhINugJn8ܳ;HHgH/+#ҕ&buvj{pNcd3R09.4HU/)OxI,eq4C+{lP{}21ↈmm ;ρXj/\X[C-UB{Zhmh0AxVABȓN 礪2 v6Sm.P- ,ߣ) JN^L滑bφLLhˋE9l8nSp4g)V;TKwNx"oR%HJ4]27V<7X` ~eh>ђZm_E:+v>V ʽ_~|]*jbxN~:6SfVzWlؔ5ms\qDjw>ofb4?F{[b;@⽫?s0{yX;K9C߾ me#F4kxj8N{(hrȨVdZ'xiO-Le3}G pp=ͅΐuզ /:V:i m"G@{jvu>m50IA+_Hy5!(DʔQJ*+6OR?prK&\=Y z~]](TEac!cw!%N"nL68N8O:!uYǸ7FHxRGro޼KP\b{yD3lFZ ZxRM"=uɺ=fO5kՊz[9}̲ CP9a ꫌هQ!(ѿv)A#h\%~R,n ] J*cpMK#PL{$R W>TPBaJXYS,+` FI=ۣTjb޳{FfS"OK4ʎ"IW6 gBAռV_hֱ❥SHR J1I'mUn͋[En?JvC 6ټC9bi~^ڍd E5~ExTPal&4S7RSK\|m Ր=%iE7Pg7 f&N*Mô5!*&~gR!you 4f"vjq=B6E!t'* ᇌK2n#QXePQY"iP) !lXV^G &:70UGiTF{xO0D-AyB,v#ֻ%@GiKC>Wf66¸ }_jv?A;_I4pMA+6 Q4ɬ"#l ݱ=#khIx2S^{a-,1ȋv]4n|IS֗mTЍ^V*}l~0G(1=GNqX O^%[e-?*Gp%<9Sbu63j*Qx%;Dmj;6( Sr.0"Yew{1R&Dȧ3o(E_<9L?rl1Jr%?t vRUE K@2Z/̀HS\"#g#tǞdW {4t3Y)n6=DgS2br?96 LVflO6vmu,i o)?U  3Н݂lAT k\?r'vi\ӱ3Q<6$0e0Yf}h%:۹Y~2}`uߓ˼LIpY3 [m$^R-`_Gc!я]үUj. @pqAAvsum:)S]R3T.|Z'9|vQQ9]ZqP$X9v&G@š$~I4 =7$h Ӌܹԫi<[a9xӁk Xb:'*ѫMb%icJn25U璕q)Q7EPoS'!o\QT;tR74`|j-*e%0/ᱢ:/;03dAʀL,f=R4 G4Ý5KZK~Dx!3HkOXVy 3B@(P/ s9tם)A< !8!l .Q76Oߚ1!\f&R2p;\kD ƫa&pO[ى0nmÓu?{<ê9\%49(ޔ?2|<̓or 6K.  1k![4aibЁU*d4,5pa=IV9pԉ*`BXDPzq@(lٳ6'E'⥭?5*Dǣ^7Hձm//t`6ݭ_R?oԞң6҆m*.k` ONlx`׉='&o9M*Pk-׊*o6 pm^(6,XmAies*\i@RϝL49P뼇{z܇N?P5CH0 1yO<枨=0To| p `*gKQ_frOesTX!K*A/'P%_GQbY*f-Eur!RH0Q<'s[׏8U^)h uw&U㿅6<~8{ D:CCha[(E? u\aYt\G* ]΋2~&՘*1Ϥ ן2U(UѕL=o9uzo1hܗ\e8UadR)Ҧ<6`:^rGZPsq@rkePZz`7!,`UT j"N9[A˵FoPH/Økb : \ŌX񻢬G|0j,.325:? goc~JS1ךw(JPv_a FY*X=k~4 VȺKl`n*!z+4~8|^CxKg} uZe8*M_I=YRFMU*9EйDlCR^}lRC.j@"ZZML&]FT108QmzVAf%iRP^*Ly縼{Se-?t}#ge,Yso87|% 9UIc+=t^P2@X8p4o=WHMqǚ/iGP_hpzlCz"|`n{e<)oUS'(O9cLX@[c? <-ASq+_7no1i#7iC/ uw8ʒ.|;Eݠk꾔 VG9w<^5`.戮 n 7u*A}dI/ezLt` ,ҭҪ@5-Dch$,Vc.ಘt]^O\ꏩNvigIAtJrsOe#ffS>\8&.c-brY8'1lYQĹ(5S Qcìh?0̲-9@J^[U2Xr䚪.޽zXsFeCNF0(Ξ'ؤ2vYdC'Ne}HtKJC?)`lu0WXxn9Ѱ.Cˁ{0|3lA.bEh i*W;~Jkq`Brm/ʊ ^դ'> BSH6XˋR,m~b#q|-WY]^O2/Һ_W<߻$y3ΧA D3$g|OuߡFZc"]Խ=҉drcdC?^`2A >p{-,ono2swA\4҃YNPl(tզ v ;hSM%y`Ͼ Vϰ ITj2 Gb@:?s:+ESŵBQs1 ˩erBNkO^:🗃̶^K3R:#d"#JFm@e^6*U ZZ稝TD`:@|L7;دG&sXaBiDT/ilyϕ%'ŀKU@YωK(5{Po=GD7ȄyʒHÐ3K;捻/Ơjrhx|Yޢ#g+iMΟ$>)sW),^ao!JOa2 ;lL9o%>ʪ =^ ВgcʫjQl:k56Ag)Ϛ K'wA'8Scm'tfyap$/=hdwd%ʢcoBԈܯ% R+8\31ľHܡ`?yxޡ ~m<8LV@3o 5K|xt<ۂ(sf ,+GhU<Ǎ"р`Clvb9ݘ+!̪}05B"[̉뵇grAKZ KO?ʿ(RDYJsR+Ug[Cʮ͵Q@6isKixi3Ķhf3ظ^$?"ƶ)qށdNz5];>oB"S|ƔFޗLN^?e.?NH}CƤVמ7PE>l `)L=m.~햨8KOD+ug ܏».̞% 7i ?1^LL7Rg=vkG.X?4.H, }O pN?<%gIRywTsx;-g`jk4chh/3,i'ݬ.)>*;`}v l1,p3AϜ@ssbZqg…DnGX֭c^{$OZ{Rp^2({_1ǟф; xfk:[=Lzbt@hwYm R(VQ /o ,}~S-P~jWudߦ@+!'L4vX0&B@=] VA DHz 1HNc Y68Juj> ade(͢"X~Z>G{Q$'9IEJ񔑯l9[9ZudD#bK^t T11n$l|qQTҼ6Q! EFXHgы~.gȃ[y$&tx)Y*ٽc^+9]ofF Cf9pg4q hۈH);NjNO4. ؋Jt?~c`1vG8KO<-d/P/r [WrG׃>SDZxIEd|_. pFB6]+*:f>5ۃjŹͤV{SJ hiV W{磧%iߔU"._AF$gSD%3Fôr9TXrs9X _A?9!p/= 9(f.Cܰ4@+(h}kKzܰ9E`PeN+D2j1G͏z)ņSׯI0L/!PL2E닝%07M\VƢR?>O7DῳskBM%ME]DpBmكR{4J 4z[7aBq|V a PoJ*L F xS,qh'pv!_gS <+Qm-cOZ q(|( ~_rIfn}nyhks&U&xD-JmA6{wqP8Sh-"4BÜ&6hy2* "Lri놬as[vE:]i f=$b0$. j1̿Ԓܠv4FEei2WER?I(FOyOFiAZwes n$q0^eD n qtTա/bي48`=S=^ͬ<~iÙO_dq%eD͘‘( 2q/2\b@ǧGl H gȳ[tnꔩ ˽*.'nm9-VMBܤ'luKu ]:UYK{OVi[fDw(ʑ's mbzoP_+}2X(y%M;j;wM{9ΌhTNHJN:XQ.{,.0ʐC4Au{*qx2vS;jk#x`s{ &C^nQD%&ݦ-[EY0Ka+^lU<[T/K>roF*>|Ņ ry+ B{,PjyDhS>8J`vIr[>4js\Ȩ,S}j-6/QdӽI44S!EA\rMaaI#zzi!8m1|+FȐҕ ֽ;l;Z{TpTf?)m!>ާ~+u`*b>J[eV0J]U:3U4_W='ew[MsCrY_cXB(sdq|c#4WYP梞hTPߛzt'|IBga- ;;jZ;PgDEjgI]Ơ7}'\IFxJRr~ۇX&q952ت7OY (`B7c0-D[p/fY3\1]n"n,86x󞭬vX3a3ߓ & 'ׇ;G);@'B~|¤NX3^:ML}y F_nHAC*%ehf0i"9YnY!V.9)86:)!ⅉdg:+R&ӿ M&4oe|n:MUvey!{zDF% ߼ojnJt3Zj%XS =w&DY&|G^hN@k)EdJг5+qv1PgŸu bRu-p"W1 |֒B5noH6@ brm`zYZfWvƭ48L1 C~IIrK`ݶX,<Ͷƿ6vumvl_{{]_=5q =v5IQD3Uù@ Q~"#-~6o2L$idO -4TW[gkB0޹LgI!dEa {wBO틎_8^D.&/D#lpZ#CE`" |GZG_p]|f@CzØ :P}U>;Ag!4[#6`g[P-H,f"KN<tHrJeZ>2a,3_ո҃ & &`<ǐ2VFdn7p^+$(.}PBaJN !Tdne,:oa n[n]T#Oy1RA6x3tT'/n=w h}8Njҍ{7moB1, "ޮ~B:c2H[WxHU|=pn)!9jK}x{SS}r_lmIc pUNc1 )U[ *ä eo%fsվ1p[M'"SlhG|Nqc=>TbxGj`|x%%E>i`szӃ@$2؈J x&ZGaQ)IbhR ,#; + qoLDTZ7{,\ZL;;;lл~5Q iP쩕;(AJh"MO / },nwI}2701z<3娃4Z9n$b0:G<8gr#ܴ,WN>jyk;AĶZ b;'Hm>tDzYn@ jؐԒzb;gS|,֠fiNv%y=+s+[kpKWotj 74IC2 _x \P7Èt_eycu:I kK&8oP-##ɆЁGG]^ˆWdi1xSd[P6F'%sڨ=3 [A"GJfJܲ jT,p~g^kbyR__(aW8ոI$X=Qlׅ*Z~7$f@ #p.rx.D>)HP`e'Z0dhmic69f`PtcqՒܗ(>*ϩB9~ ]tx)ㄡEV%TU嘆48-(1R 1yRZE..u6k鋧,uK>IH] Z}o9@z×Nb(%%߮cߛ3EeJ~0NVwK4:Ee>J<;1פf'rVfw3tՄs&:Ӛj EHQE;=I̔TX 7ٸeȀlEXZ)Id0QVDk0D#EloDy.ٌ R4W ًR1]GxEZb0%L /D-?KY#JH-. b@aߣN=Ԭ@wP ˤE'錊2WƵF:$c".0.Usl1Z}?TxuB~fzi%uۻKpRG0n4#mX+s#u 6\ǚE:B9iceΤI߳vD.Bc.`E|kY*WPQ:FBU A&<> +I 0#~+XkD`?eZNE…av׮ ~e\ȑ\HKedaB#:skUQsGl"Y$el_xuU:»} @#BtP9f@Ն 10Z_g иV>h61C= # eXo*8*44psOL?wMdsm} !:NΔVGv ͖zH)qnIbHb+ѣLhAhsu+YqA3 @w}$lR@QKp^a[k()^paǟ49^NxQF8\_1 =e? Ze4< Fx?CcOn=r#EC 7N*E>1rxiٗIrƄu2,~~؟=_qV&'>L-]Ҁ  i븙Ӭ$vQʋQuhi Ck? PdrZӪ7˩lf`Hۛ#[ZQlni; XoêLH}Ҁ0E3*(N }6pЏU`RHv֢}~^[xW:wAfVf{nޙLmi$aUjYي9UAmɳPږi:u\Q~_w{NJ`ǘ4(ڽ g@!,54{)vߛj^B TF#F&X.0/E. 0l$:#PV +p|E u\K9ݡnm"qw}/;l|{ozwPѠs6I\{ >GHͧiqռYXہ6mU擷䲔~l'-(WA2S^Ruj qul%HPG 澉: J][=^8+%puLv2Rz)R'h_65$'Tl`ЀfwCڋ Q'btQN=qͽ'Rj2αr>ѝJiX!-g9vd2缦-Qo]{l26Ob2C MUEP~_gdU|*"vXr";;Hݍoy3cP* Cg˳;7^*-ZR~~Q NaBG]- ]@*95|dVZ[N:L)[յTˣ4AB񤥒4[9%%LuFviy;•饍VgISkLJby3GDxԹ@)nv0=t59~}E[FqWa34:hgAk5%_0=FrlQ"B86Pmtѕe}Y.~r~Dz4`Y_ &cأ)+PwRi|R~}wO18OP9@DUbV%v'3:T$ a.Rz~Xx E{yڎӠHGfmRl}_X0t\`]Lͱ5}I;ph4竌e P?4DT& ao_6cYf$Px[ Z {_W1[xy`;fݺIf'2f=JF /<0Eq&p񕮰˫֗ yn5")/׮w>qτ?F<揊lk#n0C6[^XR-)V>bUu0Iŋ0"L' Uc,4ˢtxxgJu7$uFM$)T(>@ !&[imR٪~)6R`h&&Haԩ 0u;jL%HLI{Ky%k'Y^w'=2c]XQ#78 U 7<1ttM-qZ,}k<a斆z٪W%yr!]v8 „Q)va Xk_6P@2i̝ %%EnhF;]X@A': D5GxYs j?3/_=;y 15F] QC.u"K+81$bWrM(ע_#m0)`smϧ/OGb P04j:!U.JM2Ȥ"-NN=8ژP_h4uDr7PX}QY§5Y)Y~+$.f?DW=Przä _k|1YK0S=eR\O6w)Ǯ`3=`nj&{=OL =F=f ]@ާ@Ht$޼|W(fOsm-+o6mھu1`AVFi^lɹ]fkr6`2i 08` p'9>P^cNEB]Ӽ2t4l׎ & ·LuJ>iT}|vD.f8oܑuFe'2Q{d|҇6;%Fg$c`1)^(Xj/7> *_윅yWC1BGB^RTCmh0UjRw@* W_q8FPT<щ#+l?3gLGN'tg綾qͩfpQyWnr1 π΁~=Y \Je…JRFHqB$Ir,yOw>ztz8?N+ S?J3sh 3ĵd|Bg. *~!²ʧx8ZVޮV01ׯFRtfa5soGd,dYEPh~~)̱;Z0)QΔf/ZܙԀ(B 1GA\$u-Yxu{P!d¨dԝ=) D2W .|DfS䗯UfWQ.dE!ccF3I<^G|Y+~J5fPO`#YG)0n22@$r \,4 -PƄf[R{$\C\l/NdL{Z-Š:9FN4V@!0GsIw ڨߑ.`barq.}$Pxt.A|*>#elelaaW06HJE˪]'k@%bë5X/G`MdDKv`^%"T)'@#dDᴫ&Ӱ_2fk}梵&ws5\IS_[_z5~\\ 8lU!N(W`5{' ȬbvB1yl:+ѪJ]Uh^\w*l?l!jQ31&moHV z%TD[? 쏡/B=}֭Ǡg A)ڃt%Ʈ=?Ҷ(>_>vMjᱢ0[ +A.~ snX=.|N;WmEiɼ*1?d}F$ EWOUc_NMHWaV;dxЕɠt?cZ&@ȟ9%}AIfx{_c2710MbDzPoG E>Rcٯv&o O@^ApD6wZDj;I'=5B"ӄW̑?t2m囂(|@输{@q#>J ᕕsYmp|sekJ#hѢ(4Ba.'q""hq 3(ǪHrkNm:Q{oT #*"pId*'*V+S`g1%Nn4ܰ;ȴhui3;X&( 9 Oce~;  ֪/ֽ7xwm+jFKiT PRI w •KX`:5GKxV*OwmlH^YÉC<]p-ey#=%.d}[ÿeVc]/SZע-R;KRۆq5[ᤇT1r(R^T b5Xw%e쿄FW] 'ޠ?*;=/66+%9Xe%v~Q(r.O&JD0np!0oēM>Jp|ɷdOw=~0ʽ/a9w6RI O}uruvau=FX?StJ[n k EF]$HQJ[X;nȓNs:fv(Д&dѠܾ]:wͪSFNnR)c \Ŀ8[-Ž<ꔇN>Dg5 (2l™yUAjIU VV8/^(?Kћ7ahVl,_m8۸RwB(j ؟qcG(H4_N=aO5XcMj"d\@OLDɞl1䱍(⹣RXB߬rYlA'i=#()%u(VUwG!1Tsla}n;yJ_sL8:a dG9תƝo-+V\)W1kM1t''619[@8 㱮vRnڲ2^pl#RxC3zM>&RF^S]8∲A}|Cz%#s_'u,AݾD?|]C`_Z;7ͼ~޹{FKYu",ESpR&HfXOGw ޡ <)S%^'Lm <&7Gyګ'2Qdjg3g\)XXȷm;$ }/.ZD"k< Wvo[a ]gn\4I3IE{:ؾJ)!o sDY9s\ {#fZXH)86`Mw"{cLW!a{.dx@ ?9"L?NDݧIlpߠch9E [T,V쵁:mc" V?@u}uJ\L;-f?}.0k {E:Ii%UpWm'O"J*1@MH/36'A>;daK 6WGv7:Y0z:Ru>Mms+@q2%)ϧ ΪڹetGFyDޗ@b<<%c@](`z @6%l°z.2jUwM Lfkx6}AA>"@: ͠Ghe%-?> Pyߏ^-v]dE8%%)2{J!4Oj\ |2h'EvGi 1v̶uQT Wz3Gq0LGzI t7*oc٭M['oMqg'vPVM~z>+t٧s/KTK]@LSSzbHd[<*v.D]O|MFBstWh"RXC"1,z{KBW+SZ4nV%'5ݽo ƪ7" z=Z-ʯy!ze{3:e#T̑IH~"h"GqlMt[֥•yyy][K8fet hP׃>K*ں{"XDZ\Z8wzR ho SxoTi%i!3?)JY[#bU : {|-^'6 ]m0mr{ Fz3.F ^M^dQk=R}鐪U+nj^˅4US:ӤKlp&{%D<9S݋M1]8bŌ6znqYZA7tJQ)c\A@+>"pxIW3xPwPO3Yث6]'"]93Zu]Sd;\%ظZ :Mޫ8fK(RkPhb `|MϽͽ Z>w[7RH_ʖ=A1(Igs$sig{D@)#S9G8g1|ʇ׹we,a#m% )Z ix![K$W BQyuLg4){&q! o[ A^!P8_; oK6g 5zWD",l+\' f݋ bmj@SG v{V J=eC5|uñNB캨GbRş7 ͚'̗C 6˦4cއ4#Ϋ0WU$妿-3+N&qaHoDOzB3Gn!LKZ?PϢR'.4"*w8(!vr3.EL)jΝTC̈Q߲u"$֎̪VLLR+V4<G,tCOH$p &J (G1J!XbfguKAM[TO}Cm뙽DWa3ASJST +Ճ j*c1jސR$':,~@@#gKX2V~ߚR~J M yϮ3c'qɜ붘Wk] \H1R l\Xb`_?Q)rO82YŅ E2VC3 :;ڒ%HDU+e:Ԗ>7g%3R2~ӅyC&A}ȁc@vHs)+իRHLW?;o [K  K)%VA&F~YߓYxОCWGE1` UBh~+d9KzAv/TVY',AIdMBi4W aw֑ ǼڷJ 5Dp.o.u=r݉cpˍLG&~4kO:IP$0QnŘE9ÒI'r\ 4Ҡ$# p邒NL)?y)ϡjܧ)~)z>ߊ5"js%hK†Tu? =HtJ⛶ +HV<\z%W“W,edI05V xsp] v˨ ouKrRv;&BXCC8'faZ'ym jm=(_j;xIBzF w6VgJprg,>vT>*[ #?цb%Fǂ=" R;I'7Y=& h,,`:%ܬE^A#յtᒺlj?d(aLE8Ґd]8n7Lɭ Sr﷤y4o5Df[Ʊ\ q34@V;>ЫmEqh5!/Ћa@YO8!qx$_b$ԙxΫ':j#7 қUB;ziuh)b~~G$q Pt}:0\X)ܵSVx >Β߹'L s&{oOW8Uء3a5ȶLھ "C E%N OLW:KM/D  +,ʂ\ϻ,;˄#L?q c[R5h]%ʋM(\f"8co_a)*rD gz14B5j,^ɺo;e6؜[J{]2Q)&q>Lۯʃ5hbV2切˒ PrƻpH>7Nv1PPRO!:ihАodu[ vzz_ỷ)CP7W'"|Mv jD$깝LMc IsRf[?# 0SL :Y'^4x<fʐ7!q&v`#gWncV(& h?Xh Jk`_ȹ-+WM ʴj D.Τ`G3Qa~G?0^׈K-L/gNY^-ܬ]GEdnܻ, hqC@K~ qiOlo-$U]| pI@K2t@/(\_RԑꔿGM ̓ɲA֡vtbouBkV_PDBOqz[tkofIvmB}p#ˡ+Inp, aHx%6R\6&P*o]ԐJO TFS,^Wk*349e@ |KWMRl!xtSMD*O|yv$[=QW:4%dzHu݉ (ɒ-l5(Gh.oP˛D+yq" E 'yqu T,1yPN$W)C3W I4KjDЇ3CHhձv5b܏'60HWgĥf6tn0g Ie'K0ꭖ!iq F5֠$?"hID$ vvTvFe:EdJ"ö{8vKK/7~,"V=h#f TVg4Ccg45S;7fn )޸[Y[R5P)(g̤6\u+8ɯ:d(3Ɩl襕 &eLk`L3C>I?G*)5Go}zׯzK:{&ńzaq6^s笟1IEirP S]:1:PGI[-+gi2FOYb߸C!U쿮&mhtѵ- M 26R"yE9KT!]QRU)e&M6*2 |,.w4O'2[ H3 ՎL-N]fhuG4j:xT8Z4@1q06aҿ* |;?1*PzT[kC4_RX-RlH̢ X*|!N>@S =5^،2dYgc%&+K{QP1GT5J_h&]eh("|VUw_o-OZY5Gw5[2`k A6]ꈎK_BᫀH(D9?eںE: {]?MaskaV.Tđ4,̘.|{vC֟CB>b\Q)q@h0*ykN`-y81vUMbʩ#I{>oΩHfW`[6K23Bk"0pL arM@6_烷 ePNX 1ၢ]7q'k]ɕ׺b;: xk#-:8='Vuv'̇({͐]>oF}H"<>}f,kmmAъlu 12PM@*W_I?ඦ,P£"2 Z[-\iZOCNi\ѹSV"AvRa ^!:ĉ|]R"BpӢ*ޅ뗊 kn%k׀Ϗv8U]CPε!aψ|<6ι*48 jOT~` ڙ 󲁟' @$ 6cQ;O'stܻvsv .qiA9]nߏZX%\dAnEa~"ìe8;PT*L䌺1$GDR'\_cd+^U.9;߾$uaT) i]rN@ÝQ}>2>(4H𼾯WCfK38!\F$IM a|Y뒹A»yiC8*rBB7| @]zҴY%Lr{k ==])VzAXP>8pb`o]04S\aORヘqȵ&=4Qqe=}A4Юc,E9hx^m+a(Eʮ9tR{wk {tgVSo[:1E~,aUf슅xBFix~orYdN Jy):cIj7 zhJ25%JPiuG'Cǒ&z !_> ch8 zdQ\R]g]ևH@nyhN9sywXSCWG5駩1~[cVDoKhq)R~G%ѺmeoPڙeR]$*\/үzz:5Fy@}šdJ ^x{!!IL΁_`Y?z ]We5~v\H+'}Y>o`,4S0YoHI3b־Qgy=DqrmN>>Q}ww@+ԩ45PMiE=rx:{b C^|.Dm~;h2-"35mxRe:P[B\ K5wų(+-bj*Q>ܶ1';K>AlRmq? !Qm~>y>D+d$_\wckc8Bw@R@R 3Di"PT?iث/%&n7X7Q3±>-B6E> 7kk/=B9XzJ1?Xx'҃1fP#juVP' DŽwҡrt!V_,R(ugl 6SHavGw׮nݚЪfl+B(أ\OvEUpI,#V̅+q~?4V1x"0_i8HyLqv9 (,b](W/VN!0+][cςZo n\%2uMt6 u &BccQw-HNOᄺZ4 ЕW!'v95nYh-駥N&~*D[Wz|+Tz}& QLɟLu8yi[5<$m${Z4!Cmng@ Iќ`^.ep5Öݴ3i7|QmT\A=}Nk/̌wJ:oUic\C=bWLH<e+5W,6V/R "o #4U{n_H;ŝu9Ǯde Ur U?~kmT](`tiN§{אDZxlXrw-ʼ_`6٤˧ɹOb^DQi^mzTslh(b5 };Zv4ϝ^˕eભ' 8GWtwtjyH;ͼkţpdo=mH/3CcKl@V+;LCu 9/^>1rh IGzF+^USerK͛+?!mFesL2 ܂2 =iʔǦ2$][+&0v}? A]/_8W{);2ن^zY$nhW}MT"7 '"ˀ:1^`\`6׾f}caWs*m9f"|p"д@O)PhB o .d1'ƱhцR4Ub;D'{YF9 !/uH{&b_)Y )MOڃQMTdbU>3.=`G&Ӕɮy*dj3ı_bO{ $AD:'2Z5ʵLx\K v!5(1ڣR2z YQGh,X$+b</6AGtD'#ĪEmI\;2 80-~j})ηBXMy&ҧsqqB2@`e}ü 0u5W?ƂTfO.9zF{{A:wqK5i =Ԩ>vΎ ݐV} ɝDVb;>`ЯMLj^ty-ׇ.LL;n (Nf$ s=WQd5qSUO&ea+֜uu1E,wԀETt,g|Su`{(huGyqVaO?)tnŅ >v5(?9ql^_ ٜ08Q~9xFơAgTp.kvxɀh4J? 9a܁ 4G_UZF!ge2*:ZT[:Fɑ:freƭo夦;J2YUܕ?&8!$FJhη_7? R[,Q&hG?t3 , "e:#%$z\;衂V^QNA~Q #o4nƛ uY9nپ'AVO|_+Acu ȲmC0O_w'gvdΒ`@ld6Aao\9Ƽ<š b#l ʖ^*h.2oKtu-jz|32q@ھ[v "ya0Yì5T( @6%7qo I\bdy~z&423mɬcqygN6u>Zxv\/E2Ǎ[pKd%mmժbػe0Sv?V33fjp,auz\pQ #i6u>8V-;2 ٣!+0ufFXA C5pVłT}F4JΔ1?72̪Dt1@{Y-򼗄T .Ch :y+A7NF:Tuӏ-a("n݇,":EFB։7yg`zB\Y/7ujY&UFCwH;rr\BK`;/_^F-"cN37;qdCf)tI!+E=r.K)=!+*]}$)ukY;K*cjͦS 9U/ЀT2/fI_YVTP, sYl"mhOg>+ gȟ`B="[2a1A x42*Zt%L\3DIϲ`w,u>dpX2ĺZ}yp?&ZG2ꎧoT{V YبY@0&u4? ]|";yY65RWeA pVσ|}+a)50QF8s#%Xm{ Xn7D*?jԔ7u6GUFs@!AJ &TKl"qz :o>m^h{b(uC0ۢ?ϱG/oYeqJL։3 D%>kL59$m.x:t;aj.PY&ħ8YTfVӫWZQY0jgC왊ǯx"vA!4&oqL.nTp4JXC fN\b$P r<Ӻd0+ʮ';IZReDixbnΖ#g\jp"-{A ( oe $|AVv}|I>a/eGO&c/?ն|*Nԕq}rh#[_GXDNsD/j[x BPi# #Mn@KR`nhZi<1O'o`xHqt aNQ"{m};C x[K))OZ6epp&# b+1u\Go!WPNK|'W ץ,2< XE~M<}`E5F߃GɄ+<9G0+SI9:#4  ]uug5 7[5{glGe&@%dw>/:u„Bx잴BPL&7J.:)8^T sKYaW'{/7Ŗ/2FA2H(g@39֓ {, H?>i{ue|Khb)8D3Tol1mWSԬmB82<%eȑl'4_].}a&ג6KK>sKZD PMtm7 Y)E&f.9yq$pMJB&Up,kNjVxTb+JH_Mw¹tfaqSk: {qЖ]mg \_)?+LL7 ड़)f_yG`*FSI)vƻ5C;h<&SA Gf|k0C=nCLjHHQGAL53qj+qD-:zr5 L #]:r/˜b^ngf訂iGcYO@<ں{za~d=›#aqCk")cMWȅ4unǽQ\ox︭s2z6E}aX&C캱 EQGs:,kaw@ӞXN/yAE9U™{~<(xn&.K\Є g2)}kYy5o9bN"$<o4,d'\w>PW3n,W~}'ȂN.#\5H@+BȋZf-OrU]3$' KqU'Jf2c6q2M/ eӻ0 `6Ws*Î (Q0LTc+SifJPK*~u$HX 5Er,D_*# Y%OqA^[ :dAsGKz1Y[5#Ɩvh=|_91w\&SF4s cd )/f6O.H;̾+XQS+ VmvVow\VȎ׹w6N#h=B h8c a#,GGPKv&?&b?~ џ${Ʃ_|ѐBR"7P=.NpNjym9Hu@jZѱC؟?RiZd +ηٗ2dH@Ub7n_"ֺ62i:9`K"> $/Uy/_LmK1Yr.}kkxa )%9[K?fjt}7;-=y΂Vs`TF 2 [zPN}&qt^lT=qLyBEƁ*"5ԎYǛN=zQf|Fzaҡ=%T 浼嚽b,ۻ{til3wXJP.q^Ԟ:g-ƝdH% \QE@MQ'(o6j 9'#{ DRO[ȯS*9dOg=1`TfX7A TO? Ǫ\s,"i1ڰ.">R|!Q-ˬugtJ$'}m8]kQa-"p&'58Ɂe'\zns" PbU\hFjXX,K$+.(,&8IAȈ GP+: `;W;mJ}_vf`B!~Kba慝 ]YmiLJ=W1*NX꘏[$pҰo QFj%0yR_,4RCqCKD/ Y`xM:oz|Xp(bgC_{,kvpl\s5©C1#3 Vwײ nQD% ys)Qv*4 Im/hfhԒX  =TZcEd#Tns8뚏8/]iw}+s؄ڼdm2nD+ #r93f[D+]T26%.8<9w?-D>e B>"R  1 $ۇ [GHcJPm^+i~M<7KTdg")$y~h +-4yAwhLM%GΎO8$) *2xtY'BvM~ivT:92ZȐOyɧՃ*>\ڶɥT%D"7ɻ™f4a8ZvO7o:vߛOv1z)Tbʃ)_4+}&=53+--89: GEͫ \Tbi93940 8Y<3swBVGt<_p@kH VL+r+sI!sɌIʸƍR2vq(䑳Z^ֹ;A݌{8OgmN,u'V\\M%vlӭhbgid}͛ {w$aRaM@Bت& ^ y*R/^2iba]5[',j>dS^qGXy l4r0q+!Rbܰ-B<._F㬫y/1][iOlnqQsd"s-W3 ҃=/PAJrbdl8*8˿}u*#)xH@H!| ;A^D|% B.\p.#J+y~ K2wq|.۶`=CL/%_Mv8ѷ%?1dg/{EXtzU]g^dttซU魠IJ}惄O,D n/ۢA˝zTQyf*#NNCJړ1EIj̇D=h*y8Џ:Ak;梊; (r/)b|'2+Sƞ(/кd!Mz-8h8 2WI4CCf2^Lx+<fꕈ/^%{ gWT^3)a=E>io&ZʷS(`h\hG \Qu.m ! ^‡*^=\ TX4pӾoB~T{#Hf.bb"@@ AW*G&KZ(tbFhL<{dv{g=h-g1k}zųʎ\ӗb6*AMUqMm{W90)1a>riYS2)XtDuPw+^F3ĴVZJ{93K tnm) )(x ֍<h[b.JfYJ WY'[9M"F >bFMA f!nU.i{)AluP,ESSsZJm$rW"$hv; djpuR/}oXS"wqSeL)~C%kI,)"ݓa`xƐJ82IxꓑH1e+j2*ßkUʬ @f¡B5aUAy|xH4rIM`ɍg̀3 i>& cq}-yӴ7'9Yج͝ M{ƺO~Ph-񎘁^[ںwٱ"=8yaUSw#&m~Hik\dmNTB,ˀJ ." Rn,< ~d.@_a>3&wIE#j!AS& R]͞ۀa&jؤSw٧5/GWq5ا| t[X{ V|tC']tqo*@Ыiso~ QkU-fPr.y2陀S j `ay ZF|Dfэ@wB?nс4jwR)r '6!vq{O6M֠{lv2D>RJ?pVcy %J a}#2􂳮b7} m֯'w⧘޹gm %:?  zF>?SJGy7bͧP{ GnTdŹέVOnH^P܅DoUAXg-ƑĢ|-9pZ!|0*8dc}:v_ԗldQ | :o0wDSJ9?uO䂼 5DP뾖 Z͞ӋMcH[m?X_e٘.gvG;8]{Sl|^"P*Hr wa7Vxзʸ>)]nI=ǧMX@f9pީz .ID̷Ay3'?-x2 /&s)X 1EYִGC&jkEz :曻䓴wS6}T9J9#S~ЏAC]=VJDY~RJ*E Ǵ@~FdSxZ8eDD[Q_m]N9]O23Aid?WT?CΞdTTlɓ/ x'D؂TE,E5,Rc5q.o^=-5ub$Ш]`|eooh_9/CcZo,L+S}N!+e[ew&2/RSɵCƱ&|9Xq?dYT-`D E N|îߢȩI&LlԉknoEokLd6 `-0WfjHHљ>}X8<~Xb}@zs 3 iPucdllS\t!eq ^e*=xh0b-߳n)W]۽%h31WX;m.ry|p@>8='o Y?68 Zlci0j>#q#g7 SھRK}u<?{'}J2` ؛Q{\k)j|؇$UJ!)ɩ"] O>0vo] )'1&]L{ .f[;Y0rI lvo6Xh[ :Elyi>~7k`i:'K}s h56}Y8̹iMlyb&j[qf(mx^T.ܟLٟC_R ;ٳI9)-C^q^hvW ǽ+oR87e>T@=x~j$R9M4u{.|8| j* >¿&ai<~ [$|IZF q,vgVq$9-X)06Dcic;ˤZ}M}TU/Sh 9<~/%i yY*C"B5 O%L T>忄~4~%,@YPewBS0JW{GWDJ&]\6?,}GJ~@ (]Z.j-vZ~ljj1"V! `^.[vZ)c06EG iݬ1%V__K;rTjikQ ބ5c#NXʥ뇠i1: xw H)_;Z&&k _m\pu) A'TDP])?:"1R=5FX j.Drwʰ=qvt*sC;&5KI.O7ޕ!:{q<8)k2P T$߉>Z UK<_]x hn ;Mzf*iSf0 )_M2\A [Ym8/Qɇ2"=a,.{~?R7;N[/gQ5n#j={`߀LG^C◐6^mRkB\μ!IزI|3µBlKuɃ<uchEO(&[;g۝=T]=2*Xiן9ˌX=Q(?}lX GLSKme~QS7s o&~d$0IѼ;Rxa{׺08}F$*B>'\O5Ԉu4\~-;vn=Vm.'8)cGN}e_S;,׷> a}+ØoiS;'0K0n<aZpTƋ'GZ-=3s6^6.qc‰V}d:MX `{o'` #YW1]lLD=UJӥҕ a4ΎX2'jUX| ga@Yɥq4DP\Z_ٿ b'f(LWZtC㟄Yiח0]wOu$ǢX9Éd`UjSQzic\C'_ "q=Zi5}zQL3 4oL[ 5#oJoEc mTBZ@c r5R>cr]vRK(0*[]DIzy]ӳS͂ԥe+@fyB8Nebbqo C2.ָb5LkKZ̩Θiۤj?;+H"0U.:}Ն1R=籪5 Z:knP`3{T_ hxu<g~yd<I EK ݞinML󕇳J 'Lr]=dNd=aХvo|ʋM0䇩\{n$,\}|%+֪J%U Su"uԹ:a{y>j#5Nv"D9{hXjMGLUJ@ʳ1yZ2UM W۲\T<=p1uWiA}NEC~/0fZ0G(;H #,)P P*?ha@F=1f6"]8~|{ wӎn5 6C7"76gACtu9kIu0A}r3E>P]ߢ=homP J~4jʬC1JDX'TfS/MO{I?=x%:ЬR ֭hH-;0JSh ImRȯU7Q^K;):-T{(HÊ=?d*$9d"XEH4%coNņۄ[4KiJ9ťp@a vP-S@J]1{U`ec;]kX c.)B)hv-e$҇Gb {(Qi`ԃ:bQqɼo4lj ~1'`I 1 7m.)AIF8b@ȉnL~, O SQRW=K0M9jcEu۝ wai5Naզ/yx͎}1'pug,cFqFoo-LCq ~c›izelUky8.J[(AU<~?q UidyO<2@0ɖ),VL~Vl?+ɦD Jjo&ZHa RTd"ZeỊ ;ϐ|̮N0e e?ffAP89#1˳*u>ݵT+v{z|pQvZ pOeqIzOs~lc~o iLF/Eyz' ޾]?[4U4ы o㵛7A[z{x7-4~qlcsIlɯUH&hdTQo%X:T䒷N c-aEdYP+^{:Duj!w\ؽ' F+HK}dTT#$%e՗Z* r)(/lz:tM'|BOoXjjm:;/o#=z = _yzL&ßtJ?u9X-[m6:W y״k  T3ZweK1%^)kJX&;8E܍x%K gX;9߮*~r twJ(+#Z􅇪*L^ј)IGd0FQ4 Y#^woK4ힻn>6ږ $C 9TG ]dQyyZ} dۻS_yK)vp!Vqdk&5Z~n^E-hȹk6{_IuJ)b-$QQչ`Jqʼnɘ ҒN^'^hHQ[DHċWois0K{@ѣ 4!:ލŪ0φqތ]Fΐ_)lXMK=d;I ʄax` rp&CՀ\x9gn"s|S# KwwY~sr,5Q!rBqe!`!Ojyucp7sʮa\\X0ci{6e/ X4MYz&yw yk')hMX{B0B#K^|i,Ֆv_(CZX灗Ei40B|r/|XOu7[D,MF>~Q`&,c{ R s6jx3hH +t~z_n>tL\ب%"]\70Fo*b^"-J{;3N# <[avLwN./yZrsQ?lr8N9s.p3 {TEqm(}sNb,.Mկ9D,/Ɉ:T:1\~GY7ztvFRpqs،uӁ;0yC]A+N>b/\/`FM"|:NwS}@mNEjNלZn)(7@-ݪ=c [4\rwcbQ-jŅuюqEez7)'m8 l\ԱE|(~zۛ BNR #v\D=TZaaȈCZDS"n7:]xC6_CRu Ȩli\S'ê r{RŔ03dPT+caoRq;fZ<5:m^J X+9gY^j) `J<dc1JiTJ~B%J yJPu3)A~Z;X t 9?zY~}P8 x?N*Ow5VV,;l`^~s mDYMYhj8-'Խl`)xc6[zԚ.Wˀ:6u$v`Xs)/n- e^TF3lm4fB|50^'ckҤ\EyW\OɘjDuF|(}s@Ad,bjբp )ׁ v(~j4OϺN6"σE<^RFG|v7*xa?Ne7w喖qlLTse*pX5WM,q|?aUkP#i?=ʱ`[>=²_>HǯjDi/\1G+&z` ~"m =]Vb5Ͻ zqN "^eMn˚rMH$"kЉ TK+ yX78z5+] O>i7ǩhWv}kLDZ`z#ճ#P .ؽ@ҽLC&JP?7o+DZ;7ZB10p,{]CónE$GӢ{ᣕ ,~ |^u}h[)bYr%ClK"6p'h2B쬅]Vw=-o͚eŁ0 cL 5!7 WLn'k 4TW+Ve>_oہh%7dxQetwQ 8\rnzE#ZFq|7cZbt4GBP Xwy~vh p'֞<4%fQ ûpċJaDӧ_GuW1}4 =don<6ѥĶ2 B4g5|Zd/X0U"Ig$ON&Pn5=4㘋 q;R")Ŝ%a9T>lpK)IiJ~@k!S|c?䈿ެlqt #n?pҬZPFPz1Js,^(nȨ+GAn#R#=/}}ƾR㺥&B-,9GQЧEO&(a7:zsׄfi;c='>P ~]asP(\?[3[X/gܓHM&Ϥq7En*} ,-F6wH:_?=w08)OV%%Ue h1oۗBc(RqGTH닡X3'H.Jbq!/R,3pH?3N9UvIP RgS1Mz!pPZDT8 5t̢U@=[$P=V^\H@kᏎRO$I2s(oo,? 2D)XD u?u !V9 tS $Wre(8`є:OoV!?ZcR5 *xߣ*=#.DL:l34 & ̈#O. vox~؎`U2_)YҸĒNEWZc0Z4e4T樃a䀘K$>ե+9,JA3B#F5 Z θ6d`QͶ9LzkYeT`+PQDe^ ^NӦhuU~,'h `HN >LݔtIGQkzSx tER c~t<OIbf|8Z8E_˿ .J0PĬF|;![* ⊬&v߄1S63^GzM-FP;>RK=kY6^Y r;Y̍J x/%С /M&Je:-wNj=ma4q9 ]N#KҝDQORFy?p*ɘEƖ=EBl@E&do^nrQwGBl *#Sy0a -oO2Jivnt9l6{s2<9p:|sވ*Yv fn!2kEw̸t TGԙqWiiJ$ҚX Y BpL{9*OCN4 ʱxDTő#*d.ҕ؅iv}Y|hfwc̿μ14>O ׷$P"_򏪈q|,|i]=(!x;z{P7NE_*Ǔ[d:63$mjA :Yiڝ4n `ob &xS"S q W.;Bxhc~obuv%`~t'G 9N`S0TޝpEooxcltx“m }]i9<ӈF947zTr>T}P~ N*!%xa 15%եmiXO̬ IѧBaOYp`jzE.xM7C-Bx(j jUa|B=`;8I踷v Hb .WaL5;vn`cYCy_M_R81C+pKr| m{s9brT g,CQ,u\ `jfw+R]Tf TKC'mh`u|x XTp9ge-&:A`̙zag \` j{Jǀo"̞1YﭾvjCQ3Q,3F kyPk%J^BL +="x"$>!:ŞU`5/[oc[UO6/B( WsGUEf0 !On"j< xOq{_A%Nu>c-4а--H BEIŰWAI(;YŻ8ŴD!5 : ^C ZIr:9 vb߉1(4DvS #ކu@7YI vRN>#G x,Ñn78H{:WߙȜ}upT@T1ƙs0e:#\ }ußh5Ȇ|p靮쾴T#>jڵqä_F*{鴆>!5} ҹJ4ʸW.I !()~Ad> Η"g ]}pwcSc7l yW)W؈~}v?CȪ~Jzn͗jg ~gس^8hP .[SC5 d9 תg)}HS U1Џrr5-6d%Ej>!nٌX' 僫ݚ/]ff,/EK"bCS\HL(.԰KO`]Hd/KܤEsVx׏)12©pBwtAiz˶d5Cb#%'ZEFV9|41;~uöom j-6 tobلLpa6tgݟOŌsy5J]zw;mN#Hj%*Nj0}$t ѵR:9U'XSB٭Mh[4渷 +[tUozX2̢CDt=\yv)K_Jw):AHaV >Y$+C=I1!j[kKU=!?L*tY27RN)?ֿH"E*qt=e}];]RZݜ娍1ZY^_'u{!8̟k13#Ŧ<#SsF ֋&$+o!}TEX(FjZn#20lop6OfF^|3ԓG/5FF^f@Z^dFf,dճb:z`!s]HcG'BnCD~:aB+i@+z~w%XxCx5z̬카O:qBH P3C q=r|8E~M Nwf/Ӡ3M@& Z/qY%z] b$W2@dq S5q2>Fqmcyey~S7xjl{q4Mo eU@?Rn d|IGJFkt5U"Sfc.1=q>{꣑?7uf a/Ճю]3z<}ƴvq\H.f !C%r(2'zb: L#>;},V0t,WXqC0~FŴ7ƨ<7D̈́U/h=Ihs}\j[^Ӌ\b | erS ی0*8:$mxWOҕK֯W?s̯DECt#DVC{ Io:r\8iI -U/Z<̟-_>'((^WsgG_%cӂ>$}C LxEZ`h=;x33..n+:Rz߫Zͩf+\CW'ov^o^[&TqRst[1%vWB.4cF1mɞ\1p6oH_hܗ%\Rq<,?mSm"0*1EB1zgܗa6m񉫍dJ8Z~E9;4 OgFqfQxBR >^`+ԩoQ-emeq<9Ώ| Cr}m wYTXx {p,o-%UF\f poӵl|8缲km\j ]$ّ7_CY֮hPyULjT<Ҧ"ȹH~~8Śi&0o0JxSpI>ΰ:lA?< ~~}_$(p|L91U 3/L,NJ8 tE~PcsUѤQ v**q ms=C^L*%}͠ڹG DMV%SS~;2hTs# ;۸'SVVGP̄8gQ' yĆz^ꌮk{sY9(8֯8:D+JU/bI." "C Tk|a,yu@` oUMaݘ(qR>8J}\6̖qz[GMЊ{`?#sB"8jx9LOr'$Q&WK=7.6EW k [Bs=L_$9I>N|aQ|Sn}kj?3MހKE0Q@ڹ6W0)HG&(կ{jbYe1 YS4;Ӭ²n96@6 T'Gqz us1 0lcuVC}ޒ +q1NQ!5űoNJVQH Z'&U7nۭls}am*f//E @Ra0Kj8qXfcpt@#xd0bpѬMLlnnoO얤z&Pm*0cMIM#{qcnif5)3Wp6au">{O~JYF O*z7ZPj_{B{VT6 " O̬: C猫!bUIӳo!'(L_Aܙ I ^u'C*$gеt|\bS ldms,#-ʑLYpM%qg/iq 1F'`۟CΣi|jv~닍ofAEvfh6RSڏ2Pr}~$' (_ @uJpJlh9*FGĩ6H+;}u.G׆E5D.s ob;wu?|-8X0Y4nٹG{JQNw X p0ɂ91 A`P@b6FρψhI!ZhSrꐭڲAN`!Xu9~k>swvE*{}PccC5пCyegM\Kbo]l1}꒡S<=2""_b"7p&=t &%eQC8UD_'+NІLuu%Ԥ"WMP8 `ajy{ T0$5]Q73o\jDf> zfRPfAdT {- >[3پӀQXU_|j=;?Zmŕ +X[΁8.{<"7N[+ ݞ :QjϺOd+|&B&6vr G+Wjϭ]Kzm/ #麡/%g$Z6]p V,9؅їuCy#_n_p7iJ^@]av3:1 0*Vְ?o [z bUVۘ(EYE06)HV. 4}*bIZKkU|V:mT;ȁqN&l*@`dVy;(= ~|1HϏ5nm# ;.VNv;:nR5HÝK[]@q}8F%Cky>u={ޢLBE0QI.n-I̭zi|_ _Xݒ `g(xQTao p[ Ķ@)!C5޼\~) @P=f9R/3]|Om#4#+;5⢉W:}k:L@~nv*¨ap#/ 4Q txF/bd1A;N|&cfqur]". E[s˜눿UJneԳ. ?D6ʖ.Dg5 1yG]DC2.YY!Nzdׯ!$14`fװ<5T6k+ 6oa)1|2)v3٩B3ܢQ1#^5[`.AI7tNZMbZm5,T7",H&vF8r%f!P^U7r=g ҇Z?j uѢ_ :Dh~z|Wjjh; ٥Iԟ;VbJ*SMP;iU~))?|W[oh&5τ5~$ %SFGddK |T=~\ǿߪғUI08:82J/e)n(_.\o~'i26q9y%vVTwrcIuu-ӒT.P*R}X$va^{uA7yλNw,;{xI`҅fRS/Ӿ䎓va@̧#90&K~kvoB{l6va_*)QKwI칆F[)1 :3JZ҆{Q3 gd'Qn1AX+$S/MHI(1{2[69Q+Ќd!_SPhwv6@#;ĺ=mTރS_eGP? bh .ߛԱpIV00k^g$)􎟮BQwk3vIX%iH+ FFy*#jq;lkrc~7Ȩ ^YT b꤀&L ⣎_ކ^(I9MQ2c508|\/U]3&+haE}%Q32+b՚3v2ыk'|qiG:&[HRO>WTj 9{IcO/T꟎ZgÔXZKTg29< vp2~#n[QW}Qzx8Ows8Xт{toy9%X* L&$W)b!Γoc&?~O+ a F !>!Z#\/[5c#_'doe9嬒Us[Vib~ B!(`t'_C<{<S#J ͟SGS 5b.%>pb9}`2-?g ^LdARCر\ ?R$yXnv0nQR!02mFʈEiYLĞ'/lW5o(nw_ b qV'0-(y:6g aZojt[yIм-hp?wELaa$jwV|ܝ Bv_["Nusfo+ћT(lmyU uso1S9~dĺhD{;#ʒ"IeZ|ܸ Fv32I1iv{-ZڌE`ʿ;za ʀg@^ W,L% =JՉk} m+lW]C03rWe# 7.'pB?ƨR|M\pb;bAF8Ct框(pvh#L LJ+o]D> h"P">A ~8\aGsf{JJb˘-n͡PlGXm}t5 ۂ0.F"_ײTc9vTGvY~`T}٬/C:?eN͍t=jl!~w@/ VVql}|YoPR`D\RRBC7-J:uC"EHꠣ?E`\iAx^p}#.2OG",˙Ieo\nS|-] U%"ӝlhF( p->hny3 =g 刜68N>R"fBʘ΍d1|a5h]!.Š 㘏ՍRJ5lFnmzq,[o&E[X;u'3+Ȭ(u?/E> 8m yWHQ)k?mW[Of5|KD2'GPËHX¹h-IFv![Ս5.V>D4&|UPBXyRq2nT9ee]NM8q5`X{*ǹ)gV1ND8X<_+eN 5xCcԒ4F1Bg"SGG$RJ HzYP4eFGp8@!Y~ZJN3%,x/GR7_{'qƋ%Q~nss:uzTWrZ,n?{r$^0{0w"Z ߾5 / ]/)َc"Q > 8 w t,貔6ѧKZe}:`XTU끒Zm؟ޮH "8ocSs-.m6m1w~:ܰPƪ]k>Ui68̚‰ ԽJ9m:w"*KU-N Oj*"U=7 XJ*sE䮊es9h9OBl g@| I xL-AqKJusFsƴ#JYTd-s{&[Zdl[gP䷴G3xs=JA.3(Zb78fa)-9EdTnYsap ,ݢR.e㿚\i%_Hg:ެE}nx LezًFn.K/Ui9knyZx q:C ~Ly\=>@(:Cϴru^ƾ ͌l̓QQɤO[B `g.ZginOv`~rSߺN1أtX?nKdt\O-~/6RB>а jգ]nWSfދVgG>oQt͗iDYcjـ^oSw~~_:Yo`c z#5snk$@NTxXTGX2 W44ڑn :=dZ_w?Q1ؗ۸j6>&+SGU]C{ǪD|QmW 9X\x~Fl=(s[9:/n.h#Sʱ'$͔F |K0x"N_2 N{޶)8ȅי <up==kbqES/tQ/RX#X gD5۷CD7TS6Zi,sD2<k Muv֩eaLfx @rc"r` Dɛ^ `dzVQA~`NM`DlCG'_^oÒzIKw3n7cy=KS7xE!(DR է!ȰoTu^a^-d\P&Qx$7,<q.֫`=h=kZ}[ъ|OjY'gɧ0yO JjZq"@|stt9mBl&c3rV9Z)d4 {NV@ 6r~t)|Usq14qD>b c!yƁ*'*Ro6^1_[b:+儓ix פ'ɿc?9`RY @} _0^k r=&I9{F1Y1Y$i>nH ` lB!I!]y7;}m@HSzw (~ib( XQ&!mH(x-X]Z.h8_ Ifw|QPV 2*lO:~$GQh( y#NAhԵbe8dUeN4ʦL;) 렭}nD Rw[ekM ueʜ aJ8dXL >d0"ЮrN>1/~ՇL/3A?HՉ]'d'G jM *#d*Q*ʌR,11w8Gfµ+ hK\5O~{{Ĩ`iD='1M){aT1|w`$ # Тu$=!oòuo2F1 7X_G U"}/HU6_R4 v,csrXbAѠcȘ_Zr t1 6U`D53-H;S’w.~5LL`y6-F{.YRU'ɹȍ{t9$6L}KJptD.֢W U7Ԛd4,|>k2Z ނzY.ꮟգYnWL z\6uо%r&A|`r$ U.6Gp:Q% :D;PrY YkLbӲ5QQ|EFi]VJ]_XY FZ? VqLV LRtB4qo$ȩ)Z5i;nKx/u-z1IbjI:=Lϓ : V)7fkldA3(gºA A,VU&y p{{F'K*tz67nN@Ur\ҶӨH.Fzi2mzAց XCE+$Z-I+_:~07ʝvHy++E[whs[tʐ^%͒g:UPӆMaD_xZ đK*^&uvdl죲.Pu۫l(ʀs< %i֪ Ucϻ=V\sUtSBUbKiޑk!A@Ȱ ZJ>3m!zN0 fN(¿$2Թ FCX{ -d[@L#| {8jX,iД \eEH~\ZeŌ㩊7<;HXV=Wpp i$ C+m6WQPULCҨ ʱ"@D7R)$gB::zsz8 kFJĈ/xعۖXHp>S5ҳ^١a5ۮ/@"ah~[̺6ibF%%`_}(WvnJQlW9%^)_H.dpBDAR_I c>dz*ہ|WmoW<e 7KNr]ضZ7uuZlJL?6|?cY(l[54\.EUb0]OG1O$z lKvD]m_v]oyeN4dL9VFx!A ^ `QQ9@zalwRe2yCn:|4ϞV5yLmo%EGϵ&5)ª TdA}tdV~P$7*g@MVzCAmYac09ӡo!Am況hwv RMkXE (Wp͘;mX;93tϒx-Z0_Jy)qQHٱ_/ݩ">fw²j@fԾ4S VV`xR\$F[lWD\)5}YE7: KqM ݨrf0 b}.1EWΗ@q ;۽h)9.$FA`dqK 2V#6gɯ1T#*]Nz`5Cц{͜o9G}“pݮMQ ЩյC? ߲ ?tLbO^2~)pi͎lӒP9+fVP223R>A_Ff`AR)>9)ZumZ)4130UaIt4_dW%JXe_* M:A6G)d`4VC FvɤPކLZ"ǪÇCzŎg x\OM/`Ѷc8qޘX6Q8T%vwoQgF_? רb*ʿxI\uRɈUrf'BNq>td 9d@C`\YpDxNJ;38Uۭ_]\yN $Vmu΂65D2Cd/, y>E/ ю/)Lx,CaF{zA/YS*ܸ3g46 cgRdvV&lՎ,Gl7/2ҩ\/,fMOkUȖ*,C"}Y(AŃCLn"fx2۽dGB[.{τ\^eRسf8`C!hh :4F*֫(XO 4$A|?v.HMxg`@{;1@\Y0[Ҍ N4n;c_֪YH(`^1xY0D<֡nMmWG}[#- (HyiO`K$osaQ 欖XKV1<$>[J>5x2 8x~kHoRc5QerhKN([ j-٦3De^DpnS߿~]p >ӿqm c8We`$}l|aS1k!gSW ٣v=lH'Eftx@Q{ӢA0xԫn kaPG?zHs#2,:Q2䬦aC<<1iJϳ"/D@W ScVcRw+0b܂[g q`d-)‰%'GlqH ކzZ~qT=MsѺf]kN)3wM)` ό!@ 7H^Pc}ս9-!_r`cD:~4 ;JNy7M+8S/ .`L8"LHCY68\ Z=uߏwPT4턘@oDXH":<@nc'#Vg9 |6OP2`'N5іTB؇\YRj7Fֹ<Lg.Vt_vB%\7;_a>CruFZ8Y?Sr T*j",g8yD+6#"tZM+$NDlVL22Fd,0ó?bw4vNPb̅FZYp"Pjc^!f (P+ 7-Ԅ| \&rׄCZm2rx*}y)QWSSrgj>u;X: b]<\L- Єc:st /KZ_ CKWAqo1>@Ϻրjd9@4v 1.7e̳UI9,Ijn))W^7Bۛ.8̈3NVO v /8m%¿j>kY}{~F⦁ߊlHGU~dʀ$`{@QIRLZM?6h~u$pbBJm6‰H$S:D[Prk:?69?0`E}Gլ<-Ԡ.MA$%n!&k$KM2]5 <sDICPC@m˗mt bR{EAwO?Ә =ӗ[_KWO[D!3xr}= HJUsuԔ > dMcߏ$z5!ƶ֭qXީ xr輰)0|%T&-aHt9PC ԋK7rT&G.fQ9aVk lyZwH}Q36?g;6P?6͐S-dե$#(ie#:~8 h硦TڈB.].Xf[o y - p38~ a (5LJ9TXq;M}g9 ٪ۇ9e:07{2r\dB b1Q rf^ή-1AA巭ȗhude⢪>dwwWgOY8r;#P83S dʙa^Y'2nૈp$lQ)pd h@H=[D{ kicu[ D`/$2ƻ+.lڽdokZ}2_P_Gѓn, PV^NPL9 X`d!> />)c '6w" ƌ,ΝԒ-2-Uw^5= Les_]"-ݱGO6lAq>x[hMUb5[ד͝!`-/䦳GKp}Rt59mX|in9v3H"`8*&*jrbFMKB3h sw1'$Po!G'`z,֪tGgT v"o;EYP{᱀EYk>WH^|q HAUb= VyUAatDaRT9-T|3+ԫHLlۘީo&lLz)l6\9nJVyAe1$}` l Hy z}n5=z!裞V@=V(S/L,Vk}ݯ Ѩ3VS JLCMIRbٱE.C/ )+؇B*z旝vDMA3x?뼑 <8+<{v<Bbʦk$Ab'2ձoΧy>-7*%DSYS骞f4!OѤN!Md$ξS/jj>9n׶EAlm5^&(P[29.NHl #8 xaʗhlCG80kS>dͯQ}^uթ6i|۳c@{ӑ={4 z%e)؜$wTH|ǂ)WWw 0[YK|$<^-IBtY ʺ@ qfUs* 9&l]dI-&'ܭ3u1t71JhJGd  hzN׈RN)B&{w5ޞ .އ@^䅇,+FȐ*ԶQ1 HY|Ǔ)jBt&k/#ێ_i2 #'WGҚ\(&c^ <w76Tqtӏs40eq-'$/ WO|榲mUgf r:QcADhɴ)dyG᱉sZ9low}1κZh'2!;4JPC]vjL>4)_hȸg SJ1e^*3lá kcqk٭Y I-{T]c1z(i *hI&.&Jð[lud]^I5^ gJ/ѤKkgLQwxnyq2UT]'aN2{FN*U)O.@|j’8"4k򤧐%bΰ Yd$ИId'-unDwvY{ :j$S =D Gt;;LATA{kf_a %kuˢKw ]_[k?~qLc;Ra3z6 4Bjs!sr=#:F%N4)Yf>TD2 TrUڗNO|f$ҰEDѦF=Dhdc@:*ud,6^ Iӕ(QvAB Xr sqmgVgG҄O_`÷.'X[QB:_6#Q@e"0 n r)iR+oD6enUX3X ֑ ~u/Gj|QS%Y wˍ6rIū# ɿ!Ap{=\UȤ$< E{5ҥ; ؙ 蕄VjL"NsgU_j~XH@V#S!X# G06iu^ [m>힜v۝}T[b P(2n%ppW}!Y'U'0j=UKP"{}&ż ő05ʧܯ^i8]XbJ3o孧X_Ge@ރ@NTƏtOz/%E#`=Nծ_7)P`grfT į=QMRejbI/P;xk+˦T7V8p緓=g#@d7xLI~(G R(w-:L$ʤ>7kd_GuR Y%~]g*G0 :ߍ#+SHLiU_Cm.J/NߤA/ֽDQ3 5%P9[AbsODǣ2L\BIv9C-`CV5?g7CܗMƚ+J cC] kn/9rP*[5$BaM U-#`FjnQcicV @3dwyo]:3!Yë:+䃣(>oSz+LI׼Zbv}4EufFZ$D7To(ꊚp49vB-ԿnZ͒ Dj .s.@7<{1Vr5%p k,h Pi^־cBeuVQ&Pe)얐s1໘(i]1huwnH 龺-Q63n N]`_JaV|ݩFP]#ntJ; E'c4@.ƙ`؊AU'k:~AKMA[c\(-m"sRN8ɻ;ɦ=Ңz)7WQ?y t3#o;~7tlBgSxrea;J?|ҹ#r˟_s6^ qa.Z-}^dQO4T?bgnpp{5% $k&s\'.M"HeE䥹m Iw[vX9X` RyOIsD|̫'(?vZ_7J Ϸhٔ5Z9sFX9[p6Ϭ0ᠳ?l"bvTRz)3x ~mH>jfdYլ5Z" 8QyCg?`QT >R>12 %FL|DY0\tM0ibJO̅ֆ{)E1.Y堾[QLTPczcݥM-yXXeB JxOιZoyp5i W[>&#a7B%R0wT4d|s2-ң#` {~1]~~gL^ChV0uB,彙[(ePORhes @g!- ?3`ob#buh?8'U%|~0h H?XxiP[9< DZIˈMmue(PJe]ƑͱqT(oFs\6|%8 `tp43Xauu,Ք;e\&'Xs3ew d S3(k.w 1Gu;OC x6PCLA/:r5ɠ!tj{LYnAX=LPSౡ$BbSWͶf1b%ԿLxW=A,est7hb?-soʱрk:@PlD7Sw,*{e^Otɗ#Hre*KfSD7%^WaڊGf`G̍N4d<~)G$rgY}q'Cv{{f̍VBC%coεgwT^3Dtc_ pav|s]^  ~P P(PδA by Ep@LJl*Y9r[,26˷py]I_iq!Y@8ڑa1H\jR |pه$΋&}hz#\r*o@t)`n3?e^ L uB4,$U[D2A8/@Qg+IPsQ3^ِ?TF >"ѸqbD3:|}k=Eg?qgdK# R9qUYB --w .YKp –3?5z[>;χq- ̣K&O/pFa}+&{o0s-Lvy*nYMDA]nb"0-TXQ"q|5L߻9Ձ5F/Wv:ȷELF{NUb8|6e5tG/W;q ɞJ`'wn+"ĀxYW((HvPtD˒F1: ;2.ۯ}FRg7-z #owvb|*%b\80|L4iMwp6o~a?/$Į-[H?9= woϐĚ2 2W@6a^#[xxx1½#}z*),X˔ųRyˑ"&2Uy$q2Vy5ϗ`NY2b>eByQT1 ?( \q 1>խY? kR5bRGéRK-:%GOʁnܚ||K2?B ` [[>*]A#ˑox Jl/DN n9@n L/*uJg*W 8[d=t ai!+XrIŐլwP!34E: T[#%3e9@CÕK;/u#ӕN$}q3 aadKjj%h :dɎy{^A=죥.uEt\҈ކ0p ]/_ӕ ;Y}B 0j3_D=YR}^Pq9i 5p$Y.G,ii;tu.?*ʻ4o]h6$D9+l1Qg%@w{4` %4?2Uɽçv *מQ/Dmwwzqݗz cmCǞbL2QyVg33HXM5=RbƇ8uqM7SaDTCz0jaEb^X?a|0a߄j&tdTWTB>pYˠoP捃(~2@W2ݗBD0}UH 45j|ͦu]z1dB&r|-%U۸0cDLXjΆ'8[09kXȴ%,cbҀSDќC0=t̮%jG,_1R-s>*I6Ehu]YC`I| rܱ6$DI͗,>f!F\uqk޺9.?f 8{"Virh-y !$_֊(~MȇBeӚ{rW wցA7);MJ66XEk 0YZk(/3v.[)GxUR6@V"RJb @jqM+aPIjlw 0>-q g5Cv8S8NY@MaqvՊB@d %MUkߓw~2[Q<74rB ;&V8d 䎯)&ͦ ]S< Stm&Ovh| ߋ$NZ33&Fj$ͯNƎ!TI2-8ZkKpiHEmybO(ZX;Ped c57k >}LR֨4␘~~9u7:= $4tx-qsf@ZRn)!ܟZ0 괟Zsq^)Yռܧp=- vtkeeu4s#hV FdtPupiR;<yfI&%i<44 p/2Qy(ĒѷL5ne-3WvF^k˖G^i5AORS|z^N?/,&r"CGpfFCCP"Ƭտgc?HCN/bQY 3}-}_&d+Bq/B+S>,#4?]j25ސA䒽%[gƚ}/L{-צă7w#-[8K'&G~<x.H%YTΠ#;ټ)0IY"ej-F;)7iW2o_pjQM+ב\ ;Ǹνj8!,fG^+tA{/g]@Q|K:|~xE+~ksm)*EI-swBY*-̵[%b,|X_ y D˾@ lstyz?u`~34$#^J;#Sɬؽ@N1+/U?f9I#~;DI+zĿX UjHƶlOa^/&T:N8 hvqc|Hܿ휣~6]~"nx (Zw62CW1\RRez:{*fƭt1re"͋zJyCDS]nQKĚ T\%ZP!$-U(ATgvм[@FU9^ep ٝEuԏK.)*;R0-@JfR&üGxXQj(e4cQ4T١ ,c/kGe?pxBjɕV4ZK0cw.s]R ?,uFsG|.'c.t0iñFkXhb9(I՗.Q*|ɚsP}G(?B$l[ xu1]{l`[wA7V?!)ZB4<.WRй}{w1XTisH=T8"`6#xB= ߩ `t(ޚy$X(b숕hиW S;`[2bc2i]|=Yz\MvM4n'aTH!Dcxw{d?舎Wڥo 6S[5e;:2GݡFụ:*ͬ;WfvD/?Z=f*čo7h8̲0CnVә| P;MCn̂rI.)Ƹ ?B sZZnϘ-p#k}4wƒGQ+Ʃpn%Vx-余 /ѐ L@J2P*ZnfsQ>B.ݏab_n^1 M-+FX-1L,+]m<wƹN9 ib9= 8v#}Q8X_ t8u*9u);;:^AytC \nՌzw:I%sf6]a93Er@k:j{[i!Xl? :FIV^8Lgj>>E|L~n% *8kG8{4fE ElvHP'"??zOW?b|Jzfq chkn% FD'cORpLїC 2 †r  {1!rɻ sKv^zކ`.䎌&r8mӾ%$BM!6O؍'b<+p$ @9; ڂ -n,.YV?\6pbFwp_QU󳽵H+f~$x (iUdYUps9 UOy=SF/߹ q+gxP@ooDJ`hMV [x\pQ~1JgdjzKG&[*dYMNZj-֗9n51ewW՜TF|'p ᨥ ߗm,1"1u-70nӋo0cGޚ1Mav1Ш(S!Ab͵ o=ޖgIi^a(dy @PWm\p2X;"&u oW ˹ ,hR,tF&8mwFkW0yކw@RZ=1+ZZi >zZ|1F&uvMRUJfpIE1m+;u`G92s/N_gjr ǻ'JGy.Y˪Ĕrݨ#vˣ_* {L)Xo?2 Lľ ?45W?t_!" ґ %v1זA'UҤn_JPPcmAHw C סde$ӴB{(~|xx/?1tmc:Cmj#eV{|ig'4/Xކ|{V5; ).q΋mIlY?s{$`Ѐ7AD:6EkUgd^I!\l-^w! ,x#iA? TTV*j#>/}"Ы+4>g#'6wP51G׎ˇb$OUՎ驖jo+LEù2&r+"`{GMm0̬i.? J,)UAB:oa϶_jLڱR#JQLws( ?'81$tf.kA` tr aOBtRޡڰ^Š'Y d&ĸ}J,K&_{-_CyMobPVDB-PǸ0aN ͏{8f?X)7[AxR. GQ|s܆?ZZ>H.jqx!MDStFDC'n]0Oz\ypd_P%9l7 P!>5v>ZE M%d RĶ%#̲ճ"X#."%ynA>d#nΘCl;遹/oQq:٥쨫ؕ-QwMO;zHΑwdd.K^l u}NoxDH+n}"Xi8P|g imbA=sfe*WN,x̟EAȏ;9J$B%bjTP+xij`媇i6- T><>0,"ҵ ڈ@32SՋr38zd;XkՐeK}y6kv9@ ܝ\^,3LGEdήkƣJU11Q՚wBF'>}*b*6 Wol\ߝnoEbj.vdA=叠p:jr[NH[eGL#m$!4ǡ-R 2^ۤRCZ~B!N fQ59.~lfݑQoͻz:c F J[HԓFwh盋_/k WQWoyS>I8nJ}S( ݀{3LJr-8A|1juzHШ;)e`n%7ENxI؄2+3J$V ]1ntTJ 1gzS~s\AgS8϶#r~8C(SlBnv7NPNr@udZ[:3E5ћ`.C p=Hdc? L-B05Ch4Oǭ!m֊2,Yy@ۃ߱$"s9t¥/J_|^htgl\,stAޗX>޶ Z LdVA Wֶd:;%=Ɂn$a8CD(ѠJ-faE$gq.=pQܿDdZ-6i[vj0y#expf%IyYNfz=#(-qq&M$V,n"toҭ V5ka'\<эqIWwB4sה{n"M9Sp3JQirWQ3|Su ,x0{sW+@nl܍Uٮ"1X-oLj`׊E$jwFŠh$ºFo_Ƞ^!72Lf}8m@ߪq4ߡtIsc u{_u=F\ھBA]-{CR$e.OsES!/مa>G_.(aab"d]w"K`(0l&]_`+"\~~gn%_?k=LVɦB^.$/WM3gYB\iyut Wn!kWS4;*%vMG d')rPؠN$tf\z^7#-75 ?nBY жR,r86ǭO%M XNoX!9: -SD b׃@-"Fᖦ*MI`(o_v?/ |rV}zz#YqoR+ :+/̼W\6\\_ᄓl <$ A2Pۍ$@9IVs l7I Uۅ1>T@t/DӔ=*mbkt0*d8ΎUUVɘ0drX=&`<ag-}X9+L`,:QŚY$5O-]]ώאV=75kN:q;kXTҭ>tjB 2ޖGV0F lIY٤ B~Y_B)l,/6ڍ>bi٦Murbxk(]a|8AQL ݈woSrFkR|,^#JnQi-%Vw7Kt"5f 0$6ۢ0 ^!*: =Z\X3c3Q=kɩEv=`K,7.CtTzfg{q7 x;Z`Kc3p0.\Uv RZ& G:5 I#5ɻX:Vu3l88}ck^,gV$W^o{F7W}z0hъǜ*{(br MpqAnthrY+0,;:߸=_6]qXki8ޫHɩ\^0DE nF=:R@,&{d 'jI5]u֙A#>xy*e8C+Ql s+f_Xק֣bݘ|~?15Yo8u4G‹k>k! ĖWDq\LVCgyn&:KzL_a-mc-bfnfV:h\î)`spo#!BLBf*=^{Ax "F]岌%=FiT& D+_g͸q@<=/̏Ghdq3GrM:f6BCP+k&zE]rz6Ơ~[4""<Qt eI>Pԗ"ã"J<&lCϨ j|(脆KSl6q:fY.lOԾ0}{N!Ia eͳgDC EuK)~`n-QL ǡ>Lk'EҘ0D("Lf>G#P'}"[QS*tucU\:p&6u^ˏ^pkl C~f?J! ZHάi\ۧҶp{'51:Mvto93e;kEޫ9:%o_ȰPitYտ )R%+>/9 5xܩG;L-:n*}\w=q Ęȟa|!U'XI{8GLS1L[3h9DE?F(vYrьI|\i)x 8Z-1YtIyƕj5IWVnrb};J=*s]KDG91f PRd}ͷӽ;/Nk n)B8U|p(`"{>lSl ڢٷB4JWǰp-DuaÀ0~Sg-5휭`XSȨϧe8wud&4X΁J`At w^&n{f;.PÃ0%0AR=I,_Q.պ k ?pG7}>c0ٱѸ?w=6sȫb(%M,%}fتH- σUqFsMSU AԔA$Fۛ(*G"CWUf4YSA=Ldlp{QD5DPy~^9>'UoVcz-62iBcf%ANiIyEE? ViqriUpt#3i9$ewse#Cgb t;~ϐ %#(P 4Q*k4 #6?lm/ )O;]ht\`SQ[^-W)J0r E4׻1.qfkFfU.WxyV%JTe0?G,0" &/sŁHhX>پ XfBQG>#56ZCZ'8vc / OO$h-SZ aYX.xk2O:'G_7[Jfqy+RJ#@ʱb*2UP'\&~gJLB5#KY'`ھ͍kq'\\*XqrR\iB0إsKQExhr;)U+B (kɔ.,^H?@po9한0*1`0-٨} :flK%RO9ҜJ}GnA $$+\8"YRCqXjEX ^06-~pB% lm:y](-k ;ګhQz^Fe2XmOaښx&Nq_ r`\z)Fq-&)rX_~ӟ'R#7zl>~=1qϚT-IMPNoʤ=@H84߅FnGĮX Є1=ǓߋprK(dD}K.θAu(TmfJ0Y&%^H7#5cn@K etΞ&ssw2N6mگE6y/4"u]w(hp=CWu $79e;@so"5/5a}X܋/ + 雇4n;'MO$0\cTp&R2U藘x܊k--Cڲ33V2[X+bZH+G80tLgfߕ:\QfuR|G=t (AC`4kG9b]^hͱUGeg"FshPu\8ijy LAGgO[*2pۼ2粟qө&+yW4?5wO#ӧrnek Ap]oqCbZ^2?L6b>G+3-щ}I,:!1^X0Z@n(^\GBuS' \GcykR&RD+% QXk/eԞӨ}AKU$g g0lb<=ۿT)&qTݍ@2+$P,uHu>"D8JY>@Q#J\UQa{5` Eg,廊m*tHSXJ.,C &ضOvT3UB6b Eggk32lLM<%0TK`[}6"m}na](ˉQaHVI֑^+ń5?gCmhbڬDRoVi]7ykFȓ_䋯v)t)&ѵ]492؛MK*+tMrNq۪|g]2]a NҲ"S1NƬJ հf Vl0"K17z{/2x2GUν36jΈ@P⸽D %KК SZ^9ޠ rPRmY=8⁵?PI[ B,[$Øo"Q)|ARQ j7]؃]ey(U.8[и+H;2,isvEI5;0矖,Qxk/r7 B.H:+.N>GQh6=#DUWGb&!$"T'_Y{jJfxj6H>"ڱ^ r%Tf&K´8ۓb۰u)7 gJv#OS/ d`_9y?J4[y p[J 倣OZ@ 0e ֹ;/9>i !w K$.#Q4uhSLR.e+hTy.C@ǐ 0JST聲l_P'ꪬ݃УjX9W{i햢/): |~Ⱦ]Fr8wf~_6:8=^}pVAݔޫM`Ksa>r[idQ#au R{oi]Dd > 4pz+l|uoWeWY/RtgF Z%r˅MfNN.Ѻ7 (&9jXb[M#$ #X}Og29)Z%CVg%^BEܓqR5X&9~%G9APjC=h %̾qU.SN߂C*XƳ? /`MBaLE)1AS'7|t{q WW%M*2m &Wy <1c&h& +Xuti-y(,>iR@;/,;f_,\O; \y;cxF§q:*i-R|x* ]ՁXN@ٙ`sLgj lw_ﺜ7~dhqȉxhn[s$Sv%GW_Zlj5Pz2r&6WZ`t|3AY\ՅSR|HeKO"e<Ȗ{1'MX Wmv<୓a7yas`'R Va,PְʳZ-l8]&+nhcB"E42',x6_Xaik\Eu6bI!V V6#T0blҽX|FC8fK[x/U}wLq,zjNp*BN1iFӐXvNcepvmmeKF% ȹn: mgDҁs%/ rR4JMY#d1~ E8Aw{/= 90< XAI9v(:HGV煪H_śaiTɡɜ;L&v iyO s^2#MRCTRW&xkj/8괊FtsIkÐ9kl{^}'a':'d|:iZkY4~TW9d\Oc9bX3Utٳ)ܟ#s9h"~?D&4GAUY&(O81A oL]:K[\1vKhb=үp `wYnj}ej.iQ}Bчf| +;`Hjcܺt;]psomw[҉x-ky~ UO~J ^gvfI`lA&sQnck||7hbSR Y}:8If't }0޺,/5] ~}7T;^$,^y_4m%6A^KrY T۶bWx-zǃ΄|=RKlʏ4WsS>19 PՓvFjԪ/rjyZ$vPu:3WN/KOd]&:DJ0?R{ oh@ѓ}}x3q4(I˿dnp[<#I\Ad}/8j⪻MN0~dk(bM&+k}A1bG[u:GpT4nUw'i$u^WJ(փ}" us'jǪ89/Oחp4l6jRLTCVdz9]^fC66w|4hָ)ᢒ"C*Z'ǂ[#x<1 Wk"y_Ζ@2OQecdk{JK5S68uNA<K\tbr]"_AհߡoUm=!_W)tpGPDptaV^5`ՐQijCi~fUg{'NP%ұ>`G\`rt ڰBXK;ڊ$P Jw2S#a7$R~k0ϲ ;X,-BEmHr<9i%'iJnxG[%\Kf 2Iʞ8"z +'=TAjU;&6"8'CffF48N9^ERc~~7J>iwf7㦊VLUhօ'HF1BkT&gxu{qS'mh{hABpE 07te4Onh=t&l4%aNo檧Fm!0lI?77ϭa9Yv̲ TmHh?_aDJ>x I\4]WD)R2xT+J9#R8pE w(Zdc/NpQB NR[޾s7|*͊o!/\pexAP>&ӺN8z94F7w7t;<;mbwM t&f 6]D !o Ļ->ogU<6^%`ȹ43·uuq=D5::Ost,E Lk}#Ⱦ XOP +" @ x|{>t5ojBO{f濟 SVaF]b ' <dP>̥bca-Ey#ZUS+B"N<`v qI_NnqgY jz.iII*v"qVe$ajzMCxQpDlE[cx.%j<9.Z1zތ^A )7TƬ<_ x ("(O`_Ȓ=|hT&.(-r\T;N<3דb9^Iߛ eښ\"/ПR6}<#n3n3 F]x>^f =&ff+ R* M0@BM1dflzrs?oA,yAl]>%us:+;1)19jDS󑪜t:$ᗶ@mG؇ft,3  8U%u{< { 1`PEPMv][KMkB&vq(*@/\7}ިO?IzXwu08s <Ǖ+ˌDI=sW&{7 Cfܻxj%aQr0/}c}NW[QWZ8{hBl5> Fs`բnHdUx0[0H [N"%r $ۧ"gۙ!iS~_Z^I$'jU3dkSl%lܑ3^`'|6$DCO/oo7"!v=+Ʒi$>w+1`) &epu ᪻-mxmdq,f)4:7K+G>щrPk*ǪN+^j<1 [EF]*M~&5 ok 5:^Zv! 2ǖӰ[WuE?Of_st%0 (b~ɸ{4`T?x@Aw҆P(]MARRL`[i0?SSIf.k)":1L#gKԠD{44~gSM$?U4+,<f Dh6hcH[8SNJo~zE@%8&j6[y' $srJ+53} MDUA9%> [ V<|daRAAaca&Y~ܤ=۩9_T"LRHoeBxT ethREMb)aSr(闽>wåπ}&S,l~Cjv ŠMjd#cz{Hz%F; 񕛱q9.B,>U%vEk M MbsY.$M!d4i;\.F{lo˺6OQ1v7KBL~i75l5Ah)pe 0<Ќ/кqͶA~ˊh]= *HǼ>:t&Sg+ P"<或k dHُyӨz!8~<;)U=`U@T ${}Uk4Gj nIgˍt$1e+)EÐaʖ*~0)lQ48R-w]&: @%g/t5HvTдrv#gCn߀c&>"0ŧWYaef] Y~tz[=&%Mhq] 6V ;1@ NMTJۉVC˳˦secf5~F*+%IA h2]3P1"0+Cw%]Df@ͽT㇣1O-KY=lGߣ>d춂Fupa {!=diģm w|~9>(5w|\E N;}#3޸I-ZqV<')7*j>r=1jIP!Z)]-)xyE7(N7B,$VO͆_aY$G^&@(17vwHKEbahiF5J9PqU !3FLZm5~U85eKN2iǢ7lSĒƉ]߬>\|b:~cƫa0S<ӽY_gю* 1Y Mz\rR0[BeĤ΀CQVyUmHjZ7 I rw4;iUi{/a!$֌8竺rxDؓ9!*?wAkLQ0<W!3 9Q?'IA1~{bVWܙmV ?˿J~i(`.+L28EU\Pbrlw"[8xdIY'ڲ`GSSx6^( * 46+_Y87і'K>ˋq.=Y_pw4&b F&w3LА}ڪ%ib 6WOd!l;uU>M)F5FGF|mN Uun pә㎗8 g 7Ҩ/m<+ro<W~Xow)*Zk tVx`r)cwU0֗hn^JQ\ v\ |Dٖ"HoJ7 \XMj3$#éE7wkBa֔gM%?3hD pVT`HK?:p{WU^26[ʉugf|?r pf} l;EZRfJ앛i-~?r_dD* m,J]n_y<+-? vΥM}cHtv;ye^Z "n]< JY).jp@.D â1Iso(jL fK 8EQhTe5OAx׿@:m9읐p7ULG"G9 +<Ԏfe85;v7ˢ<7Y͉j1Ift6?i= t'XIkT0^uKc_Z\Soz!7X4J _6/sE!HhXsctF`=AyqzסƩXdžbb0GF\]B]/br4]S#(DBǘ0,l5]'G !"l^8(Uz2}#zn6>{(;#p¤|98!AwOM#tmdlݭC7<{39XOJah 8o1vG* Tٺr'D@Nv(JIF/;T% ̔x+:ecevtl*/T0W*)¸>' <=͕dm0%9w>/]f|3șppנ-B.e\o|~υCA{JGH˱V>rLLf S`PdުZV7PK-dn7s<¡7ڜƠ97(sv4jNEn59qOl9%A:LOXۡEbqʘc̭Iir*hJ-HH>)QY qqE޺;n&u}V$ǑB5iAc*DrL3 49G',v: gWNڋϺLstd*v=kjݽkǰ5|a=9H(J;Ԧ#v+@@Om fIWzt~n=ݎ]٥)MÇyCX7.p K@%4&U3|Vхu]o͉$eҪ(_i8 E'=ǘwjeiPmNi1v 'ĸ@2cd4mYC;bvNt0ar/,#{)c]gMAtidxqOu0ؙ̆R7+b$]Fjq) D{B 1HgF }j55*bvzPD`;I.Nӊ qDLB^-Jb }zZ1QknDv=Cc19rl="iSyA&&O]5=/dqC ,Drw#t:Wy**)CEqemv qQA7k@(TZpay69?بhyPo :69 IHcP G~O4S(pnF84dB3S(D/iy!I0Q4F%J-m9yZCPl\d&p]#5q /h`\fchhlL*uE6y[%ր$u\Z'81۲LHoy?w{)¬ŪQ{ab~8zayp50` >&=dmX[`-8u}̿[K}F "ْ qm@c T[u-EVTK$;(Wf7>8=7O7{U(_kNEn̾s?uNwFwgT;־U} M]P#LwL>dԒD2I%w_l"R.8' bs!R{>alμ ̝cd8e`A|hkiw7N--Am6[){rt K>iP [?&M=]fr9KQ,1 8:ԗq yu2{ñXYN }'xkɈR4hqymͭlfHEk[|vܫnn7p#ՔJ)3Nô[Mȋ?!tt '(0iUڪ1.7L`.ݯxǍr\<}/P 4eu5` ת5AL  OճZt$<2P$Ե;ŧPz!۷xxA2]\L^lFFKC`ĺ9ߵ7ÚɃ2hCn?r6Op|/Y%:-}x̵ w9C`ʓrHIw=+ tҥH<7 qΟ̒ cx<P`J#}Uq@=E5|Hn :r bTӶvfm4!De{B6oH'۹U+NX\#>`R$ p^ :.QN̚}CkG ۅ29E}?p oQ (A%ӡ9T@ҷ]KѶoSqc7X4"e6jGx 2ZV- Hoai 6!:՚\@ZMq&<#?EIy≊yN'O|.~}BO%BENjs6$JbEz>ZC3K딄jtNl؅:Oҁc9/CX뚖^!^G-~n1ǒb7BGp_WvNEX-_?ǡo:{́gf5iɣH~ 'F`.ZG5Oa2~Hl5~}H;&ǟBY9 άfnG? ld6;T.xutV֙M_A9DF|skVR{'q8)+c;^=k93 X4p!\j o`)PK}PU;ĝlY$э*|٤Ľ,J"P\N'`קNZwK{55ͪ#숧>,6þJl]|N!+>ky?WHv#ҞEPAX +ȠQ:uI<Ѹ9 j^LF 0^ >f"j} ]ђT'1ɦYxK(eh:N!K](x ڙ. q@>;#^SxS|sv:5nI2h'[1\yd*wjkd2P ͵i-%Ll:&tTB\^Li#O$܋ٓ9ȉeXn0d~tA qw ݣ_a _fvJpvg}I[$jU725wۖjyژ85lPȣ(| otd,m[,,5y<9 Qpŝ$q p]@*7!J!ȸH2z|4j!{LlA9 ,iDImA)OOK*`-:t!K?{/`=f:WIc ԡ;5 bZ{́3*5cE~#ǀi سwڽ)&3JZ='dE`nC٤_J"Z{UtT!Ł0xRɣ7U?'oV0 =ڬ.3WH fHbdґΎذv툚97\eP[Y#LV8ïPM5lZBĒ=ou~DWjU; 502j"U`RY0YdzVg*{cHe&TS#p:֡44A' ) 0Bq+^IJφ|n nn G[4<{Nʹw5;- 3U+'8l?z"?LiI\|Љpcb"^3)d2/syXWݩfmr?޸-NV9C%Mc⛇ˑ$GV10x_Uv SCÄo%l!dbMn8k,s$G$H U*@0ۄws+>"wF;+M[Rev:v4?BܿljhAoRK#z]/@7gsŃr>C=B]PE+ D@"l@~*.vlNDzFCapOu,6ޭ8}w[- =3~WYsBli϶UuѻdIŭDl dyJ_#5˦-Uѓ?o[h<1^F_غve28(15ӎSw&bsr_Cן5/q1q[" kvq=>졋5 OBw3Ss#̴ a}G>m6S?zO2=qa:iB$|M i5q 0ܮM5ziMIN̰,_1wEO4a`WYL-ȞUZ}2XQ.QTqryXWW{ߔAE('J⼺"`P)PFD4-YlRAW(t(~jY 5:toʽ~ v"'(/[#kHtĤc2V.oX4~ujV9"i`a=aAY/Xdf~V +HF=:FE m|^=]R\P; ;qUO]I.6e 7&/.h!RKPfkDp:4F*[B"S~Na7 /Eԛ(XQ~ O9ZR gzc}ʌԍHaӂS -CYV,5u517S4}Ŕ.aVrhL7je*^8YvK M<[5e.G~ so=urSԽ`S.qk|?G}m$6li$SI<) XMp;#I2llFMpVvvRY*` .d}nWnBB1VrgRƔidL=*d ljߨ?b#-ݵwr.鼠p3d39)L-m^t3{Fd!2QҬQ:>(s[q%9.wQT@Ur7yydEN}Ƙ2t{50Kb! ~NG h0WWZ@;䂉324d~+ZEN}9vBĦf+bD2lii韟nyT*99Ps$mF![@X8W* a6HEi^;st@rL`ɵ]Mo4x4NO=9yL79.V.T$)rӫoemB֔ o' >y404)gb7y#zJGɠn0l@)w!j5$DuҧRy.z,eq=s[>@}s0@*y7JX4D_<ZU=gSd6Y!X *d1Q*Iv(O,t.RTxk;@*] q9Fh/Y`A:>4.Şl rry5txQ7:nc 8mWŝd,Abr;* zj!4-"!#97kwOݱL#~}uRAWT c/7:iv!'I Xy* lr 4KD"v$Jim/9@Čw3Q*^ڑyAhE@jShu[O: QxD*2'E$eԞ7 u4*Jeׂ`;#& l;wlhB>քe_|,y 1u`p]tSfE+V;2 aY7ϰN]t,]6{*a25> qW"8A=ݕۘؑ#a0&H<'uwZ bt..u -3lk|ܢe"üD/Ho##0*\γ g0i2z-GpVE(4o)00HQX3=H[zxE>l7|zf5 Ȥ%#qRU3LkG-=uI@jg6;8`ZpT0ݼ^k[hPrS)\rǣtG~|̟R,W c&D총t˅q Z`0gL`Zr!tV"#(sm*aJa]6~^- F m1omUn5a~/q)3ݐ),_0/4tb|oǦ8c w&qM|3umk"OPd;NX=~.VE jG(囪V4δPhcw8ߤWpTzL!'[}k÷ڪ("&)j^ T]e#ҧyQ$u9+#* E~!`13@xDS׻'ކW 8z_Gz3xjdJf]}hh;K+a4=ҌmLUb9ӚR{seBX*ʅpXιfM.\Ԩ`7h.FP],zd9_RLxidx3OK>u S*@~>#9НE[TW7#`EE,D uD#yr>*EX¦ \Tћe?f˸~Kh1)-{sZaR5,-dxIT(𯙷8CH\lẍ{WO-Bӓg~gv6y}#\,ha;?qZy6Cۅ#2|2ذw)arnf%.yqq?+{;XuX$>R~guFTU`x&crLŁ1rŬsP݋aujz zmxA YF"<+`o|.W%͂D@:hL#bڀbwFJp;*V12 :9kO p('cB nH} GBDl1H41o"TaZ63:=mŭh1ns-عXwŒ T<9`#!_emoBc;"j@L"**L3V83bye6.pd>KE3੄l4 )n]|*iooD{uB7ɟy=}֥ꄙ+f]\`-(3v$Ρv{_6ºcaelSiMkza M}Vu/Yv[SPdq_-v@ g !ĎņkF-;3i.;ä妼2,ZZQ ڐ v. 8O3V6$#L&3o2ʧ#1W1B—|h]?#r+򂚐ǝ)K۟xbĎISAE+;gQSr]%ym5B쥸 `Y:ɡѬ*M;!]LG*]Tw$=%fz^Ku}q@?ġhYGtRcK>cM{P̲l] dʆ27B2W׉2 O%X*lZb ,`LaNKB;/2UܟnigIy̺1ɓZ45xe4|B-2[^Q(XiϨin)cw+;sZ3m$ bOhY6sZYbտʳf=-ǑK-3bR֛$V΂&:sсb~J|WYV?:dFGܦjG%[%7R {" O,=xz?4:|RnьGĿ I3d2E)8[IfȋRűpv.H<4s:7.> >N"|7WVcH#Nk2"WZCwoFis l4Jn.uSϓ폴JI@?9kIP^h9D>T'QtSۘ$KF 2 'ft'̪9? /9QIB qLfWhl9Y92HCa 0fMF%^&,rJJa|ڟ9kIzˆtއt Fmv֌]ժ )v5:C%=+ smZ'j*է;o-D:GUum/NSeVȼVɧхwhG\V^x2&PŸ9;9o`!Or,V~S7Bn`ډ[}AU !:_Bw-U-]afe+P"=؇T/Ud~M_C{}((T渧̰{$vc-cPXLSOnʀCK{3oxN4}n[Q 6ֈd_;']:*7W@b\0B[\  Yp&Ѱp%ywۇ'a-A)/UChszX^RQݞK.ɪo,>9k K+xL{ХZ`/Rֲ (o_MT&Iꬎ ̈ *.&a'/sDr[R=]k݉?u"C]5y@_Ď$u/O64lJa9TN"*+|vY{ּ/:ʭZLF*mn:P{WE'sWQ]]^&Y߿Db#VT,m%&d)3 bzG410aiڎ5Z *į3:>UEh?/e3qT N ܰVUN} .o01g*:>#eɜ.^ 2 Z 9ܖ)'j GЄ͠\Ŀ!(柾7hλC#6R9#dWY xKkgdairưA{C5$A/ͬSا n`b +l}vy)0J+pɉȇQY@O/ML_.lTjW'@kU692 K?>d .;~d6mOtPoI҈dq_RJJH+B%wB2QKoy2"?_jBƑ!%"=ZaVvbxKiB*{FB } 4EvS.(őmC<Ӎ5ǫsasHGe4IMӖ>UTqQMmTW5}Ү4( ז/>Ӕ{i㞞pr-bZ-0 }ml]KsIެ̕Gcd2h2^o1@Oƻ vj!\li,54uDOe.-VOHꦢYU<:ܺ_4EKiH\ޭG^L3|nHlOKIt5*%*zGY T@9C ~T lA0$5`v}8 ^?s1&Xdh7nuu[m_勵]b[:3S-cwwQ #|x2# ֑:JB=@)N vq4|aafl~vCi g!ƭEaE'&80H! 0 .'i*#S3WsbPDadVpa ΂„p+ɣ nY)I Q Fkς߆& D1c#2MIqCcl4 9@Մ?\mL!<AfzΤx/ԤO!92ոg=LQli1YP=7!bt3r5H纰K|HnD.7:F9:32lt- 'Gz80a7>Q7Hh56/#ڵ~Λ?Gae 0al}~7c Fsq;z'}#41 AgB͝_--6 %bE(\34aeߖ4FYaU`J[BL裸QV(?pN4(>GOŷEɕ;tn\L$ #y Er9Tp|8jX Cf7)ȫUC$i!AZV,RX΢/֟> z|@w,s.IyiJ*LzeA6^d9=녜`?.U["XZeƙQx |S阾z$SM젬7qH JlceFb/ms7AZ> ENl>" 4G0[6bOk(Lʧz{VٴG9@y|I;.NN Vܪ7:j lw#S';"ᴫ{b;6HKҟzq 4Ⱦw^yLIld)ҽT/x-Jۻkh` X*9dY[QmMVSTeظ'Dt*l YA tziS!jeΫQ9<,O}=#<[PTz^CLV e!(ST8|e:DGcRH,Wk?njU [O0d~ ñ+\-[~D鹠N?pdpXA/ Pv@.uYul+x( PYqw])v= ` q} #ٰTADk& K]b? d\n '#Q %̟l $oͳ$ːcv`h|2{T{?⺴qǹ -T!DjBqU~{M WKQJC mSJ\y^Z]‚ʣB)Fǡdc&i:<^̇{ +dF? MAxNF ܠ@ cm^ϦNZm'*Gk{Aʎp 'VOe! UP:;@=EUwR  j9V OsIkZ߽y0X7j esRz< r'Ek+"8k؞;DpU0mDޖv[Tjȇ;d`'"j8@^)4D3MЬoH5h(7@?]&`ZzQ} z.RnmKǍHhPcЭLr1Rj\eѰbaک*䅼 ?'-G֚ D>ar  MgcҴuX32k$ 7@I0;|uAy/9cюЅ6 c[6 Z޹̹7D.| Kf@Q1tҗI4bpPnmv5(qe|,xif\ w:̼=9UsS@7z|Qv ܅<(gN=gϥb{nw(dfxLK l!q4rL@a7(NHi4'#Ez5(hgwTUD$dLZ8Eթ |X<)m[ hŷ)?flvqt\U |c+zvmPϝܫu(G풄ԡU=1\ayb+3emJsK7r%! J@GxVq 0D`cJ˹Tw{ℹad!ҽ1`w.ڙbO"^V׾4[ѥ#'HEfGU~'f^mZy[;CRVujAe20ٮ~iY9 ˆͯě}%XT b:oJ'ld|e-.zOc m~N*H@Q)/ĺh@r%gq4ٲ fTf@|40-& TU`;Î "A'eŽ9P` Ĕ"< }1Uv>.hc2.H?/l>S@˭Xź -SE1@@9vr 5w:Phhρ9|Q EH'p~33V Y',`ҠOyâ*pcur $0+4y9;ʺPjg4f@%_(kǍsi,׸ILj䠹$8¹S{6 wʲ)؁?xgΗ4Gfq: d9q2ehJ_պ݄SbbP^6G]m![$| ^p?+!M^?6ĺ,&*J_;~ȕ‡܊t3b|BS#Eؽ,.MO_qHBT ` jﹿ]|9v8az)7>bDO9~Z-p [`K)7Ep/+iGxz#?"8y!hQx*btI Y͖;9iHeRj?%Iڏj?>,LH@9PS+c^=ryn ~lQ%i)Fk:/-n,j+xǗ7*5#q!}4DeXi $,mCll9,XfzFf\h Wa1m7]]/鮸oiT%ڗ }x$uz ]4ҍv27nu{*B裇ܑ}!?^ {Otq. T֦8h!^,cZ3+p~C%xN9:C@g3€d6+-SNMiؽF (hf-qҿ,\ 'O&%UT$XoE]_.6ԉRzYkN;wѩ.` S&K7>6 qX6Dr3]9J|~_2B(z2د{Z*edY9VZ4;b0rGJFF8LӴgn`Ps7je<B5ᗁV%neyJX(*!`wwˤes6ETdn*ҫ:0b[`FOoy[FQ!?ͪ58@εE4(?CkFGy,'m%" S=i;A6X+:m]tFɳois[Ba.M9ʌr*o>t8ӷcH)>O'$͚_]khV0K]n~ة;|y-Q+ `}Uav.*$UVIi|6Fθw"`ʉ?etˌPvR,G螩O1iEzyϴm8Y0+jñ+jx0=?pkrh4`5!r;ď@Ng7p"VR<#.WSe1&+%>ݨ_Tvu]ߵ c<D>'DMs) CY/1MxxTWK 34VIcwoqB 6 J~q cI|_"ȗ1@O4a}@t8ByFɄk3A]9 uq ALأt4dpy/B\ӽW;(Cs Ȁ]Rҫ&[l#| Ɛ] u46)֔߅  ߒ-r5^fjLudԞV YYXS]z32s٨#޳Ik# KR")Kix x<G"kL{$\|`@Ey{AH?jSX_B}G|5as&iQtJw dBb'chJ 1}8•!fojDaծ!d2_+y]gI!=u [pTFoJ&$/qS`&Ae͠`WNJ)+=}a&akACv:!;o4%'zm?#d9x rVk^qK^?"{>8h/$LIiCR B!n>31!Ht76L2Z' P[6L=;1mkL X&ZyZ@0䢢1HOphť:k԰x(`TyQTEL9mCh.m&5\<6&+&NA#DRD8 [U~>Q: v}8K8:nHW[˿$t4Y1c{){i|iϠlb":_tEVC͌ { p{3UЁW #oѧLp`=z%AXF7mp{u hha~ o('JH&lA@ʁN3+D/y]{ OTKP| #Y)Ǐ*d{n1G* EZ]?X[rTL{6y0y{elŊΎcU"//(bX 3e_bZe2\ɉIgo3SQjʹ>S^E9 pwK)BeI2{fByS2ʵG:çѣ t,.&I䒺/? K72Z<ؠ ےW6,b0 i(72h9{7SgeqQm踺6'XèY`PӺ12 x\\3J _JxqN,h4E&)E? @<`$L{w]cq7 6¬i8Bά[QTYMd8N/(D.e'$`Ρaラ:CTeN92\^.R"/Fҟ;:0 w1Hz7fV;rH-~&"fP=X)U ؅[QUd7Q!/5G9M.;!H%L( s/ax 2)$NwN*⍛ˣIe@Ԑ ($6G=*,3VUjF5N6Q%MHG|ur,dWy guɋ6>]z`TL "Xlw0!dDKoYB"me'}2c鼝=SeW,x5{(vxc`4+]X~ 2@ɳA\g\9iHe$!pD]oٷzqƌAM8&IV?b[6>T ]16x› u8")$^PAܪV}3}ȗPٻq̋5lot!6AĸWdTߴo`m&t7ԛ;l5`Mc<0e.DڼG\ WId AQrAĖtx[[0)l0*zge+ p%OVƏ?䩑IKWoZ݃3ԋR;q #GevG8ʒu?}?ĴzyX%٨5h.#bhyrf{f1!yQB ss~))7&n dⳏ|dR|xU4YM}mPJ!D!{_Hj|.az Y˷AtGN9{zsȉɗ4Ha1/8"B^m8XK ?- UƾC³/f9"CJSaKa#;3EgﰗQВ9M") Dck Gn[1OZsZ|~/1J꘵r{%1p!ߖ/[.h&|€ VuK4!*V1}Ul5)? iChuXkc$怎y)d/yn^S?^:') AGI&^?[ADr^z*p63(wC3^ʮЍ9뢆J-! k[4:b57e=!*@̬KP][X+L 6]O?ێdz`w<) _ g_dhnn4; ]w?Jz_/W)C+ R`S?WuTpQՃnO3^yhuBe9H/to^=/#) rB ć?++.+tK(!z59%86%$R,0Q M-eLMחKf!G̎Ng'QCA95 흯Fǖn!z/!dJ~ʷ?!}{+A"8ɅL頼=jEIߪ-y4GOO=Bx=>#~a>0c<ƞѕtS)9܈@ *4lx=gaf=x]Jrr& cqщd]ƅy)Xj$>CƍXlсϫ D ]b$9ˡx&me 7m'ZWNwHpY&KG#*r!Rk-7|%5Ca8ƥ6?@ Z"}] -4 ,q ib3uz#+XS[La#2 "U_V3-gY׮T>k=gƾZZrl?[.Xj3F?UmALKxh}O:6*O &\ 5K_GԂdv{3 bZn$653 ](#],XC0@Jv0WT PW\٫3`R($\Nw.y"pЦ!<މHY*@G䵙|=kIC?$13g"D$[Z"mBurSXO& es*4-V`>KBh7 0Ds{GatMc~U{[>HG&5T C`t:kO+A:(iYv }+P,Af"a#΂`Ğ#:P7.13tFT N_,eq,?h쒄[J'8$3.kOI3DNO։&[!2l*uAɟ mtfâfk8ӝ)P2at &Zp%'Ew\R-^CRШ0 ~p:]>ʬTw,?]BÌbʁ7kx`*{>= k*+ tyB(U–Ξo :&jED]ϥc#gīJyLAX1 E4 mл_mxI[mGLB\19/ZLU!4A}^dz NQak<`bHv w0"$ifk(]nYԡTi S/$jyfo<ё+p:g\tZp0H;mBdMѝnt(K\Y=. {B1b^P| *HzH*['yO2?΂H:=_zɎLV3yA"L8IT_Ŝt,(!!l-_rß58u|i:X!ЩDhi[Yxj=;*#8շIto2mPl\4笪+ݜLx#_i⚦ɩDQUP!?bqʩ0XaꤘiɋihMn}U<)ygTp"Fߓ= Hj$iߞç?O0g )ylDZ?<ʸ c[Qн&AT_@1E]оk@K)&P $KgSGi'dӪ# I34wVhBpLO_ǻ؝vy0+wXNiW^ql|p?D*ؠTa˙ f <ۜ.TǗtpش)šf&K65GWI*5޳a(8k i ;|p/!I_`eTœf0.=@=d30Ho5dtOru'Mh?:ZYb@q$-jcL-tdlj!hkue\~ tоP B@AQh9G}$8팵H-$Waw65Uc4q*|L}gō]6Ť<>g˜T{7MɖS.h&qmqϤ9=AqyGD`G`quv pxQuWx8뉜Sp>&^n^pX5=Zg&#cda'A1vVltp wIӠ>*WP'+FǭCI_Ր D.O:el?M̹חXm)/DY6 65Oz8œ53o BATN؀Ċħ*Y!s X;~+],a(98-K{}CS]8"P =l^4jOZd bNߨMthDճ2g~, xR6 Q G^ZZ wq=Y2lL[l?Hx/piLLty)P%pӾSoqDYu/,!]&}ބ489Ձ?>YǓa [oOqQE0%W yF^}0.N!q+ucC΍BYs1 3p.T%}s]5:W;q=)IdO:r[Ic8JH6PcA BI/C JcǠߨ[;sR+_ 7ۂOa'<úv$o:H:yv#NMõ Gk&>v{}(,Ns7۔5Dۘ,F('EIu0 m1=uMʿhN@E Б+F\M|#wi(jV k*qg[=Ӆ RF\* թ1d|>}QL-S:2zxzfJ͐ Xw2ZUۚ{|^FWL3 MeQHwVTRa/֒t}" _lE-ac lv ?7i, 0hKEDn,GXu/Ӌ&vdؔOH=d:{<݃üYo>2878Vp 285]Mu:|x'(>L}n`ξTi?لA1G z8yKYMM3Qp!ϯDZ8w_X%DEs \dic;eeo8Z|hpDv |5N[I[$ Qlo|GgQ yebNL'j!enE|u= tmxRzW ujXs-N4@d)lVrKq?,Bol$<kpЇ08z9P&XEAbj<²̪h(FbO~&Y;϶2!cS_1'/݂d4D:XL JJ ;1~-Ǘ~G $Z98I=!@aZKW}IQ* (Xt75R`TYŠ\Eܧb9Dy߆K'7IXR4TCz7Վ;yMdǚ `=BSv՞>eZ&я7!yƂOaślPnj|̱*&9'yy >UHЏLH1%(g/`)w]}3h,LZc# c!i +GEP"R#eUPZ 3QOƋY׀Xip?P/FV*. VCbH"1Z[A@]O%somCʭ}l!y;Jt‹Is UZ4b_MzKY ^lS|5˵\k_2X%Ied8L6?No4 > T;~#'.Gsa̪4&/FWTWy{vE5TRO{)@;ntn-Y[d< E{*:[dMߚ9kX@^C"#1%4}K T {ث~XJfIX$uKdF"WGձ9Z%avv}GC(p8o]u͖|ㄧ51PכF.f,ַpE'rH$Y3:/MU?0*֟ő Ui8`yy ޼7 -]h["qE_HL%+aQE F]:FbЯ|#dЦ.cD[CdrZWvjӉP8Zsq O+d J9@H5DrNMAGl6N =C"FnT[>\kW6=x$2W}[Zܪ:Ai&)~a=Lc^D3>wQQ =F *~XK1Pz88AO屧l-"վ?jm(B؀#LsI.Z[*\K܇4ʸ~V2gYcʣَkQցD'Yל|SI_?٤(0%ِx?߽:]Z+/RFτ7ԷچcHe6f39^nܣ?b4{XT3i v7N">❚u;5h&ba0IDU$\G]Hvx ^=8 pF֤77譚 ѽu%s]|!GvV(%"#Vfؗ")7_50N~j_wU5(05/Zdx63ٲE ܤèacz4 uWrJIٞlK|tgتGm=4NL\)GBhN |$Ő[|\':1zO +HB!GqFiSCDR4^NXx=+d푝QIlr)[ deik0XS (J zC^(~@pQ}N8rr^'O@2"@G &D86?Y aW)-exj.6*򞌂:iJ]7fi"t3 m"HFX|ר=DoӀ;N rUC##Gq<%[\<9vLbn&ٚ.R'4!(eΟuβTAI\ yxpxv'FGP7`Xl?CPGd9083qc#ӳta?ޝ8OA#=GqUTvJwhsx?m)&X(B@mFĘrs٠fE: ʌt VK<狕84S~6濄<@yW/\; `-h-^V/DA5eI$%?elujdRi£ /uv*[yW0lI+r TPVy8hfr#=e/%C`rw&>81aw_1c 'ļg cd{趮\Jn1> ϾD4DOJ P: 0)`d#N`y?Zށm{niZƖ:/u=#ֽT+˹yIE,*9:,F6i hL Ǿm/w\.z<[ 4g':-)7in"0Txw}0 'FZ'ōZ ҅G QeӘFU!@I* C[sZRxML+@a`'*p4.1ei0=YnA9;<>ć,Mc|nǬe"Gᮬ]NRJ_Ş>ƞmfO =c/vU3dIe;@68ve -Fe]l^'H<&Rǵ G=`%#11EAq5/t~=0{J;@q͛C3`oxPLVBCL3AϤ[Yhix6Ffߑx$H % 5姰y`G @412l+mqEMC;@xRZ ٙAx8_KN sx  ɕ/dLkn4ps"C&R>bv'\ЮM'wA%vWf6aբb>bNޯIFo{YP&L+t+Wd.ܮ(.Lv,ܲ`$`dq6X,;LpU>ݎV{^U GH+*t:²cH:2頙p>ڽ{]>_>@ Mrd\\'7[soР)nVݣpDhɴ$O[yf Kn{z0xĝt%p2CRK- ?!:ðڄqL, -DBԆY:? gpvcW,]_N?@m ٩x:c,̶NQ 8x)yjhI4YA`x HYRGHwz G5]ZO2΀\V;*F\ $-_G>^(ɬF;%ƙ5fycXyy-}Yi%DdMˌ4*#hOϝcJubu^[י$;3N OK n?q `wi\!T C/ǖx1 Iq؛GDQ Oݡ"q-mh{W[*wTk:%xORwe]hC{\Tw*NlΊ>]h#%&!GIs᳠QCWF vܻͤ87͊H8EE[QwT؀ V4kЮa AF˹k \'@qxxNr eWzuP'zċ C~18d99dT(\3Հi J~>[I`MtDf'lZZ|oʳrSvt'"*k(8`(ugqǝqcT:  kp:3IxʈJSmˆu?b;~g/ 4\ɖT)nxf?޻mHmbiBz+S9(0D 2xi5Ο1sgﶽuq|:=.#'MciG\$a:ᤊ5Z5@Uu@F*Jm?BV,?֙գD 00T5z`Vp-^"O8x3N2^ ZH[JAB,-/yx{3e(/'J+ZO[b ͽk(Ŏ;O #@C|xE%տ!#zd>3LXȩAF;Lt,eFyj.]b}*B.OEq۩b4Y*/F]hz;2ylkN9ޚ:6 m0"[>,ڋfI!]bTݞ'IjwGyJvkU12iš;`d A64_<3Ww*žBY$= bA ״ zܔɺk<&^菒f瀅aYTb` ROiqY]nAphNf@1w@o/yfWH_בGH[B|Xa$6̍쿶Cy>(>竹 WO0 Kie0U~k|,yM?#+.*?p(j|Dd}e+>;(%$5oP] O`Q|kPIJWxsw43VSQ/.W6 (ѱ*'&(Ij*V0w|BO5#Q'e7sF"!|T=wn4ⱗd90qBMLz_8R鎖̊_v%i>ds_c |Jmoe'΢JoVٻ _=͔0^7dՋiE < PKAY~;hhƮeATb%]ji!,+vwAA?qI )l@ju)J"W ::iAO;|0(w:2ۭmՈDlՔrզj҄Lkk`y!y@tAuܕ! XrdtEo*ef HV\A@Rh~f.k[ ba^(MZo6B D7IO6 >.xs>m3 CR8!ᨢ~ėG16srXJfd{83VA䢌a~yF$HY٬1O5|LjI䑌܅mIgŨJGxJ1+~^H&ThZز +K,Q.W~N##:֩rjVS0˘H2 f6Eu9BUOTGMB:śǑRܝ-p6^<:^k1])ZvBvFvίhr>J_QD:&;c<ݚl|Tt &ԛk<U[?"Y[+~bf6*4eJ]®{L!Dg(C_D _Z5_l,(qK;ږ.S` ,!uRnQzi;~Z,;LìyHf6uy`} ֐j%1DR"^&HL T27n-J=ڡg\JG}R=qMrjP_G %3"S PDM ifhswׯX~g.zrdb:z4e]NOT 1`8[ERFJy /ѝҽMK|~$cF1By];KX^8O duA癗fi6 2YGvcg"}t~SN^W>|Ϣ6m">|n(,Cs+4vz &K/IxaF $nCP-lAXrQj]0K܍#zXU L&,}( 8.橰\.gjQ2pJ=PNڎ9*4OfMY@@uaa/c>A\̟bH?'\X?& Șخi)Uj𔙧vv]Eʼnuv/ gp7IP#3gnA0_}FW5"̆dj@ƃUI^MD \m]d\P+1. 2 [=eJY6y`&zL JXU:r): H[Ҥ) M쿬IT졈zq#7[F"Ex/MN-B;7xd[BPh73l+$؟`wH v}W>2hvlX{;s00╵3x{p\5l&q(/`S~IU*5RhuR HaՔM}QǪl({*%(Lf%24z)L.ʶL@BU>;%*q"+3LZ] Zo%~dpp*_Xʽ:N0m:J鵝/`<.Da*7g;Fm\4M8pSJ Z8+gg9Nr^%u|T*[plGAbL?͵*2ֻm <G 0@ky&S0[HQ~_t7$}@/4ۇ#|!'fN܍v::*;dž3\$N,9P*c&up$jfʏBNEold5 !s4>Ý#nF\,s<+0N}i݁ن/4j:J^(w HEۿ$ Gk3ڌ@Nqk[ ۥG<]xQ7wmēQyL5HVj}5Dz&$,, lΪ:3ѧ7v'e7[T׋[s/LPD} 5Jዷ:J}#HuS{d 2keKbYLSoH%'<ȎIXYXcH *-d]! Ohl@Q,uԙ Ek25Ag`rEċ'ә G`Ԟ[6I3=Pa;؆=cFM[vq YA,b$?Glh8 brevEi*wqrKXm$SHvAm[9nV+ xg>P"&Kd_ΊC0Y%rP>K LM,ބ"ϔj, W$Ft],6"0p PRlψT->5j᜜ML/Қ BXغ5/fFy7ed(B-Ktߗ<bv10ew+R|&M҇yY$^ni0IƭLl!%bت\w""^TevV䟌Z*bEt򲸺ֆ$Q[as[K(f ޷{4r[$b@Y$\ v}_R/p_LŸ9Ira ݡGAYHW,CL9`U=ʍY3" jd-SIQȊ qR /O+:QSs ~B:h=Ag@O.tpyp7/,Tdk%?=rbfKA$#VZ6<$& nznm3&7mվo|BT_ 0".% 05Zp˖tZ=F^g*sKAmLӈ@i< 9 ߢ +N$4^LLn7LkӡxG!]nyFc #/nbDwwM0,6T-V9"z/@=c!\m_~YHq 8Ld ,_I'C>v?ܨ2hGԑBe-Ew$w{ߴvh?:ν~*/T7^ [o-SE&;kH#I;+w;cq. U+u>J<55c|aFP.!>zLЏ8"@bA68d;~buc61(!ioq FPJ* dP%}t'CҞ*Z=J]`i/b4˼|38Gč ViA# *6JQGqpES3od+!<% ἳ@-j<ݴJp> Wajn g ӂLk jV\;2v51!M-N9CEHEM|thB]Sg)?ck R^bOF↧%Ӝ]E1>'jLEyTRNnXLt| pcf5WˀR'J5ګ'r-1\N]Z}14zfz%ZFAs1%w%msEq/rB|i+6?+wpv BJ- X3}$<0c@u B~ό9"*/"ñ.JU;<35{ < h6{ zӛ^dyG[n+-B:-xzwlVL:τ  2+noY |wV~ V; 8AB&,Ĝkd x/<:uqTdqu/s]",JE1js`=\Am]P]]H*,Ș $fy34p+x8LPaTm!˷URf|_L5 -Qe5H:\#2X[X|[Ţ#j5i`MRKol[hf2O ?+DBi^(8,S?pPq rK'س -l?х^-ݎAbOFKGiLDֳMYk/Yܤ f&m^"DD LQHHKW57A mD$:o{iԞ8d4m5K}{ϡI[|Nl?MpXĉzKiOt95Ip* }Z$ʵ,S \F#/~dy(Ns|)N0[78W b$ayeP7#)22:fy |blk;rMdl'9G_ݿoXo|dŸ3_# ܊ OlOožeGy9DzB n/QqN*)5q"S^G*>7w+aCB$$Ġnyp̲.9U;=K*qoGyn#t U Pr`.5_K.$:et^_)Rt$P}98jS#EJKZ4mGբBv^젼QþJh1rLVrJ7$2>A[ESzCD{oh(~lRŻo͘JM'%޲ _igbwOY jO ?wpj#Lξ߳G.s/pyV=6G)RUp<舨/&G畔2DU@7@[/f5aO#}dOV#g̞!bIa'F'j ŒlRD \6eĻtn\9ȓMzx CWG/d ]`N2.>VC֔lmEC93As.E_;~D=)YS}}FF4$!:n[qJm?>4^F$8㿊1j= EPgPZGKV "f =`%{ڥ-$%`ZIRh>70ZXKZ1 @*5/c]Fv+vZXNХO H9絼dL -Lj@,.|fnW'9W+Z׼!𾼑 "ۅ[LL.F7%B*k/,B~چ%D4q3DEQ n&nFA;r9]C(s"Y! s֓lXkF[5^mO.(03e\,~?_˵DҊ.i*`)ͻUIsYRdAJRk9=PK &z%v,s@sOZPLE̷Dw3}4?`|fu3 |k̗i}vjʷE%(fl?%jIzWRbHMf9 oddH's= .'(S}Mժ/ :=ҕ[&϶}=mƒ'[f wcbx 30qѩ8Ȕn_~`ר/?1;|9j[a836;7̭mYZL B;gx׳=%&.?R[ /C2nl*P脾Q̦+Z9Df;/+Ae'X(σ~=>yT16l$*xҜPlp۸Rs m/_W0| \oȏ{[7;gņΦ=&ٍGeaf&śkc%&[IO%F;^b'q1+i-ljz訸x׵ds eZ$(8'f{Q]!X)уoU~>@&b6UQzHyKrv^H>"a? Z$cy 9quP6m`G @9u s(RfqXX>,8ks.~Lٹ8ttkLPNYfEU.`5$~7 |6yQB6$Ҩr,˫2 jHta-a 2Μ`i2OLȡybwZ?;=T~ F!]x ۄ3_^>Ww6`X**fGxtY{ض<|sfX3\.] \kt>wsrF2q`ۄ20VbgW<$r*^ېݐ;0wfLA@TrɴKmΚ+A%nHvcP0tO|Ͱ}[xL@Iۧ OzT.9r\rtH#?vÊcIdO}m-@zJ 1HR[U ˯GHsIʟ? X[`x_ܓksSZkA_`=> Kֺ~Vb^.Mj|X|PXwt 6"2!/ wN&V;/ܝFbN>QPIdAҺy,Ԃ]?Kx` Zwy=2ZPį, go̺iz1CwvH Σ_ o/{ u@=X~i;.*/2v8!ޕ|#ex[@yvw"ڻeº+-yXF5}zL cE`Fu}"*CΌ{̍N? ROLOGO[xk(/G)I3Oi?xܺ?qܴw)cc<'3>`qBy84WH?p>?fny4&}nJFg-wow/N?!Ԙx?J6k=Bd!"y ! y'$U Bpڒ-_{noBiޜ;%臸1AR*yJè2~+E>Fpzd)F5nܽF.5JA~)\9[Q֜f1{]O/UNMǖӍP +orTlHfl$ QG!ZPF uM/*@S[*vZ'c[0@'KWC/wX+{Գ&^om 0ԏSfrLP3d ʱ_:|-o\r ٔo 2Qp?;  *xgwZ1޿YM^'5 ̰-< [c"^jICH웏l,1mӐ OSsXppig?| lw):+i\'8d)/%1g@ w6 !(QuR^WFK"egVM BY߀kƄFKq)Eó / ŋs݋\XaĮu~!PضgY#cbSѣ1z)xWwCN[ *=k@TXz"FMW衿qZ O_V5⋾ mM  ›n4"k~."8!,m'PfbS3Nʻ0hR+Gq~)LvZOX致^SϻI d 7ju'!Gk6rPkC}ȭ0~S\/?ܘ)$Mj"h90`f8}6?%? "w9H287;l .V(z0X0gOUa"7oϡ tpQ5NcSY NQ˜wн6yUMD5Yt 7'ǭVREwzuғ.x罍biCPXVLvoP#:,K.E3p?՞?²CJS-LmFLX좮ls#hK)A͓CN=#Hw`P̡l9[n\o*C;ثpt1n3}ؒ~c5H$lp}5Q1h[h%TkMU V$vV K Qبq6Ыi7_G O)oB_T8N_ꎴkQ~QYك>dSDNaFPg -)4b@Uy7d4&GQœQ '>Ӊၨ&>dve5c{YR,%OMY"|yPϢᕶ6M'Tb[X-9܏.p-(ƆyNUpY;ցTCi I{ a,ops6ΰ1 >V6 cj;P-oF[0N'R傷L,K>GB}嶲 [گ,$RHe9XuZ@Erl毀 L3S~j`1z2\ē-%|)O7ں*Kbf**Yʓ]JQ.7?hHpPڴ :J3`1m6x~wTkYOXYgT*&ǩ>sX*)wke}|?<1+]<Eŀ͸C( ?]݆a73OomRޙ9TH{$1^oZI $㍶j8Y`m%5$ԥD\wܯX_G7lgh[@AwqdIDx)"99+>g̭ٚp9 -;ڥzrq|8V.5/-_F 90PQ"cfrDxT,xݙ::"(<5ve)&YEUG㦅C9VoC6[ʩC(4cFhhJc6}LQiY~岴i tNJ!TS>uYȹۏW|XApѶ=ꞡvd:V-d{eZ,RwdI].K餲ݕlj A` v /Z!UD-ȥԞ~}Bݡ}J:;]iܦ!kPl$ڹslM G[& ip:%Q;%IE?RrJ-yK? M3k,э`sFKia~]6`#ERw$K]D\Қ3":G $͖~!Z:1Z޴/ɉkC~Vo[ҕ]0ɲokS)^?KNG?W )QB[_E;t-;\GDP,0k8"-ΕFQB? ϵIrd(wx]2T2 V 3S ɼdQ|Hl^G²2ͼ>oT?Y-]Vk;0NO;X2?)@iv22;2&2sDǸ*3ir#dGrcK F@\psb pNAXU¼D{n?嗺.^wGɜ=u&}EΝ͸aL׸f/Y睜ffukeO ͜T"K7:+RzxN^S]Y !mD~6}_2x5$t~O¦W{.$vJ1f2Tuw̹q9bj֔"w+R(R~PۉfLK *̺qM[J0`Q*f2#IMJdhn>2 .FxDS;?YwC$Jzđ$E[$ @)>/m, e"n%X}$ VWEh01 m&x}> qiYqgGC. #Kw%bsh9T/[bAR/U;/bUM+mr}f)EI|O1~Pj8n~!GI|.'&C]aUVjlqn \+fX*kTP6klC6rr,=v,OW0X~{\Fdh)wX'K*3A']̑50+#r2Tm0㷧pfLxqdo 4QtU#>^qqѼQEB%vf$*q" iaENK.ԟ MU&Agt+fZX|XUVdj4 ;SR_=AlsO5B?ʚc$}FF0bTVV0/v>.YE9.m /Sgj;&>P`*N,G(}US@%P #BoւAFX]d}E<~4GR"i} 7iIg) \ɡq*ozrK1GNؚ`&L7\`wC6e.`oFQV0~#jb=dtIߵvbz_ EP`.07MYI<3~QQQtt'ǫ"ZUKȈnۭ8ĈPHgv]g 54)|yU;s+4Beg>2lW+fN>Dl :I풵2?EPtj.!G=Zv5;v"TGa2"6"ʝĸ ̱KC^w *[i$_,G.<#˵k~"P,=Ԧ=!gyV-0|-t3ih鳵vɋKB pji3ck1veVIdPU8NQN89z`UaT& 4ccQ@[vihN9a T⾶n)`hRP?ʒk*3  rMFzlwS4ƌșBO=..@_Jס?ꢓ̧p7(0в`@a eS]>s_ZdK}1wqX9'4W񲏙P2M7',A$ p6P2R OV: 0.x| J_aws3Sl4 ֏/ 9^i#Tկ.%11$d(ӤG;Q5x#Ց@D+,b\˕یj{*Fnix כ'2) JݚrXYTc%]ȽW<&yұX§KCu 7]+j X8f f-f,6`ѷ35\ӣ)]u,߄x7&rU#f5,( 0- 7@JFFƺK ƜUyOn6:d}sVq| LX '1Mr2KU$cfH`ݸs$gn$ZƜ-׆X((ۀkrBP[ a[щ< 񞻉s?<5 w|7_˹i+4 fS'DQUs{  8Ԋ^\D "B~$N}bcJR \"VrǁRKy&q iOx;8Wc!`.=Jjg-v&AT_ 6PDmI8jj DtKrz<)`>!ЕZ\4^? *|UAK0݉ XP)xD BMj yj8?fDO\8ZE"?E`\efb*{CM,G/2[d&z:Begx1ێOUC/ɐ?3%巚1+͐mzC;۽͗ X2Hq#0<GP''gѦ6\/h}ý;|8!tO69T9=#hbEtBHoGQl+kR_6=p 2ؘPsfٜ%"HNlt+ e\XmaF5+`ϛ3wqy*arT/~qcL̮ݤEƀѭ= 4:p -"~ዑoޢpL˻zs:פ.!-1nh}9/C"El"&9ď" %s^[d7aDrOm5! 5ߢ]Z腽l?\v0E+q^i$r&lʂ CȖ6Araoפ7D=PG FByt⪝L,p7HP^ǫ;^gB'59W_|٣{wl*| 7k30QsZ6C.98(VNBFHx?W,?zR2 R->O6x'\ca]<%;`Ҁ8y!Ÿk/JbQ9?Sgԛ_2s`J=tyM9~_G$y_T%P Q=L!#7_ĜI$У@c^-޶:=9ehXDSrc t7eԂ(=|;akkxX)HZ\r<]R7~m24@/JH51|ۦ#vS2eZVDZQH`ٚy/WK:w}7=+TAyqs"P2\oCz<g.JXn.X>]xJZ\2}%ln GI"~UH"v GWi|wk1̭?4SOHLV1Yj&:?UɺY5n,*JVn e%i`?1UA}/C75\xIEݨzYC+02?^G=ϡ)~J V0A l}΁ቼ=bjV9=5czmpIq/[^u mG&jUH87$4"zy7c߉;~+8˕ہВR*PmM#\} cQqep'y{2n4HHme@BDXjIaN0jϛ\2X2ufR2\僲_=L/-=8CQrn@Q, Pe6p*'7?y!z)u<bv=L.Lv| xl`(WM,{\$k vct6!٥B9G#yXWd&Շ֋7Ub w{b]dsZz Һ°7G6y)BӹP6s$*/t|l#Q= &FhD}l.R|1,H,Aޒ@=4oTg*L.cȖ'9C:E @sq! *<s?]Up<4.w}PM!@ ߨP;؞6;AS^fu#KLVǒR+gcazNOQum3=#[!ﯪ w]f+fcGI,u`%psޮglHp@އаmBF-|xv*F6*Hz['Va/&z2Opw*|;r0vtm ;@aAMe@Jޘh&;qY}TlirՑ 8bJ9ᶼ8<4=\yp|]zX/5,QѱkپBJ?5PcBD7$Njyx>) JHP<9rILS}gYHJY %b,ݏя|0mC; _̇QMt.+"@H7#d{)$WN"8_lu|W.p:Jt&DMp1MPO-W s[ڢᙙqCM.Y(a#M/Y4hm-`{y{ LDGk ^Yb:+M D#g7u[7`6EТIi aUţͺ]LV$CZ] u3dӄo[abȝPޕau0:t”pH6!==,S3pA`_@Y{|&;vYyc._x[z;az垬>peW@+L7 b{P!W{]@Pg(ބ zw8\pY'o`BjXGa.-GDSV~0ozskI篡Irc+ eK+d_q-Ej f%`^Ư8Z$gbPs)p\=_ba#lݿ$ja`9X3X6u G/RYʇ)᳜F%i|]=|#l𐎥* ?Үbѱ05(xUb~?ң,54$^פ7'=6uFgfdoіo)٣i_߉LK:)x #`D.BcLv壹21L7<Q4#SN& u`8E=Q*G=C6NY+=G YWbç%W;y8̞tJØeCӒYF\f}n}yKIZvV5-Zm 8כƢstqj>F#6b)cMWM߇3imA/\"aG&i }q?d}[f^ՂTs ^-*# U趁,hqM7H$ĢIL؂U퓗(y#{x~e#6=n5U|29"\IT F`|iV/g-*s9% hi2*BRt}­`?(bLWK]XLُ$Q6h׈N#2B8fbS1?+85ՍGh@&Go-NK߇R wYܘݿ)]2SDz9̢7,yܖ^AbJaDL*؂:4oCXZ^VQ1!U5+s`M|e&čn.5jI~ l nW80y^,eTh}D$f/h jSpXl[|'&p=|^ZTjumRsYS=j줛0?:W0n쾠RGy3Ͽ\B~g BbFGH{L r}regQYǭUEp'B-郫6Tg_KFZTSm h%L &Uz`x mDܔ$X>U}E'/L߀ŀ|[) ˸K3c(oN[ ЌA˷5Rv[$JTv&|Wd+wNSΎ -<9ț= D6 Z>(g"Bmɗ ֞cBX^~VQUUo})׃_/At2lI >f)-Z>JM(-8'\2Ɖ,[d Y2ʚExY%hY7W5Dl g%A.k +񉋫jlsCSE1 @cfطqDu7* Oyb0һ<|ty.B“ݎ/,祥z3oϤ,4eyPoMg{3>R=&%f#-q6!ҵPm: k?;K7AsY? ,Ahv0WVdokLV>74>as%1p !UW 2kK\q~pXWo |5 ƺUum،5)^;gaix&3nH+M& 7bHĨ>WoC>+%Nwk^ĴSVkXČQl]"kЦkʝVMcJPkj 8<Иbab}[qac&YTGIlYH3rhn74瀫XaWq}s7$cgQvsQ=лˎ44$_ÑGse0R }%m y4/oV%z[*HCkv/a"KxD:¬p3P_ɉŽ#62@a8!Op\W U 7n(9X6+0q jY~ZLGDQ [?f{yCp22,ܯ/+( HpMSD:LPD~6ȫ`CkbUv& CW#F042&{ KJ)˜pkÿ)>X,Wu Nw6&Ȕ53c% ۲ l<0,MG#Ď=vb]JML^RX^ߋ`A*X ~NhOxA?ZSe 5Fq~z/}ፓ J3\FHaVdHQfC !(랇0l7V׾ : ($8'qe(p>hY,ਸ਼ +2&ě@>i'[+f r[[Pe[&O2NaӼ#aΉ]`u#=+f1 |K̉bU}Lqs[iMJ+}SlWwx 9B!MB'y|oJԎ)jN Ӭ@UWHC dCc,_3qJ|K {vX>yn4Ni}cSh/8TEZqh"z?k Ka1< Ǹ1 I t UEԳBP.6Lǒ&zDm[|l1P80wlz{}yo 7L*2cCCRrfF[$l!m*4Q{[-{QS6G.C;__v „AvA<WAh _'qEw.VJ7_'ǯ;δH8W'́67) _݂ t=InosA ݓ8Z\鹸y c Dh'Hq-=`XREp4Jף֚^9V/l ?O5{7jk)QLL}7V)N{GF7 } J; I>4g1p]yF>]KhԂdm{H3A++֌-6q߼qml}\eJ"wpXa(DDלՔ~6c kXsm7ÐF8Ȃ=[PcDk j-j9D7O sYoWlF"dƺ#hPK=گBW"3avn$_  Δ?~3D*ad~/tO9pX j4D{6q+Gofa{ALo~ًk%X}%+%!V|z@6(fP^8&;84_2/R3:?)c^WmR`&n 1}%Lc8LGB2e9_k;Wrqf>R*kc¦k2KBU%.l;i!=wI ׹!Xl)Y Q3jИm˽SI+|QK;f9}S. ]$7l~_ h˘rEG$PQi|e D¿:)?Dp8&&ec/1+ÿ2s,`䎭lGa,V0`$X'K$hW\"hS܉sD~7L.Euq`f̼<@ɂpd.E(-JKH-*ý! 1ؐ= iT)PBsk7nG;l̻f"wJS۟NC VLK!kX>p $--=JШMƆ@! hDX`zf /(&c$ vIWG5p;5!+1S9=jPT;, WҶ>X8~@#bEF&zI_[s'1'|زaBD0Rщp+Y%j.vNz"%+J0EtC;֢nn.hTА}uB@)a@\D8^ 5q7<[8&=X2V[׳Ɛg-ٳd1?R=tG*eC*?d4u.g~D1F@cXkfCΞ)x?bܩXaRn 4VQ50ZR;V'_X=7_J"?+ ,BחB 1IMI>[BEg!ˀ.-mpo\.:r4EP(@ﹻdHNg=&|YJsZAZ+  ^ JQu Gt;hd.+W!̎(5Do`1@ď^aN"e:X[\kDFh8\q@ &m}p0+ܧֳB$StK6?`=0`;8؟ELR #ws,9B;хBa$OYE(Ix)2nލ ZPKJ$r"e23իlM'mWyڻmBe?W"oD`VW7Un_JVa64Rw4% .3Ğ?yR5BsaB~-?e} M w9Iޥ\<4bfsnX{41mMJ?P:QOGB7n7(t3+`PV^b buex37ZͤN;EI8nB;?>Wv/([)QM,uUA/0c#oM3gxAgn$gE|d0|w??a)(,gjy^HPBs xS7z#Udyw!! `ƞrLBQnz'Ӷϸ_x+~ " @B11g5tn HNJYH;nA;~YBg˹mpQqF)Q(>!@MG>_hmhtWs`w~U"u܌4hHP0n]ʗP}Ne?D$=F@r nZ׮&~>]b<_z8}KWp˗Z̚m`z1MWf >qsࢷ!ަVkiYJ}5s?7,>!C3"ڸp-`O¼9HpSe[/9|b!frAwdxPX+p]ngycÕw×\[V NdܻVNmεr'"Pd>;eZk-#~PKfi$wtd ?#sp$H|Zgk#C5,&*Gt zk{j'~R쒧?XzaV_:9L8R+[ X/ɜ|8d9A.(AڑlV]&*R¾!}=+C`ÃN3ͅiOGOQ4!Di^-b1L1;L ƀ$Nf`  T.t@^-]gվh^W$0챘ntUھUn ,Ϯ`,I2~kZ|ݳ}?r56S¼eFɐi:ޓXDTZtj3,Êx8X47|DXJPsD ~s {yW!xKqBF\;hTB 11Z}jb)_cP? l! I&B7%q(=k;ZnI2=q$ sMVPhnjNKuыM K /.<\rbw(t"¯QrC^T7T'Hm& QhJŅv);'w(`xa'P0}Tnw#X|ISS^h2=g x/ߌ=!a;:wxdW))]hGU],{+%RAWL (T:N8;,IVBp^V5R+ 9~]Is!&,Z>zC @ ta9߸HTRޟ]N8f\}(#."!`Фic[3q:HgXaOUp. wIt 7Z1qɀـJ_ݿeh_N;,~P}[?P]P| 3kOw"Si(KpԴjN`uE6cI:TI(=V8z:' K%.<ٜ'|k|&<֜ɳ(H!MU'P;ts E ٩>~`š8UUEhĩ@GFKh?=s˹@ 5l/ž&[) ]`İ#K ?d`xJF s2Vܺ/'>כ^x 4bor"5@?VyIZ?EG{|E8`rc95}+6Wxk yOd*[u$yYx/oVrw$NSDIˬ/-Mu`Rf~Iq*>+Hz$s(\< }c9Y-7 flJjrºԁH`ll twN;TD/}/: t\TڄSTOR:*[vmt%# O,D/O+ 3j,eSD-' " j8t{$JGoOQi>=P9mxowK\s w7^,$N"z6l{$Cfa51AP޶+++FdSv SP1Yˌ|X]Z31VBvx0/q ZJl8 ww&eBɟX/k>]LDLO/Y`Z)YN YCt8֩\{[녁񚆧RSGdt^ׁ w;̅:?WH֤(ڧ8EVodQT)#6 JHzzXO! xYdg?Ր{a%=;5wstcQVrI֋džRp#t<Ye6+P;L"6J&y5Y;?Zu >2Z?141}GXEgSrđa 4G A[GOAs@\y[8LTZaJy1; ql(VN݀cޑ~y(h#:v\޹ .5,I\`NQXDX+^H4+ޤ.8PmYOwHh8' 4!/Ppkh?.4 m+2^5BWB ֊FblQ@+E 9yJh|z0 ˀD:vq׳s.E·H' b:U !!g$ \d<ĜZ VpvSwj< eh T1zs/YΏ!/R>ml5L W5{@;8$F4X}:.Yn48}tO0L%L|6k424kIR}2%ECw"{A+Io!2$sE!4*{~Ty, 2er*3e)\x݃,"KLwtPgH(ܳ93 LuB'?L5jDL52W8=k?mJqH3 311)z6A~$,_ p$,ֵpc3WYs`{`X{$7FD6$lq弲 OAOj ; *+JB2^,fT!ӂ0Np]ҳ<@#76TZx`NKe+^IcܶZ`& vrc:lW4D ˍ}5G{^ou`w"P"QAtV|Ow4+4mi<3B JX׈X<NƞҺ8#gmn,6nw#%@:ՈUq0_7Jv4ֵWhzQ8aT)V&(=P\T: 2"-^/Sٶw"ujHP\.e*K=urqY>;=H𩊎$0Q׌Za@kܨʕjL >򼥣(ebh]X5NqOiT;uDYFӓ wPd=$hYwұ0mb# x$@Ӭ5^sMJ<̀ '.l3@Y8\ӰR0+)iAܹk?чQ2V .`~r7<糛"?댈F3,M&V" :`1^'e51kSn~j6Yx+@=b+,{^s:)}~f?.x^ZH+>=xJ;ԝW_Է-B4f4'{,y,@Q,Q3p;ӷ$9ƤExr#,+nɗ煷b%`娴,Zɗ048BQQz=1&%OlWrmxe>x'[RFV1:٥Qo cK@Nv;{b/ATMɐכj1I fdž#i nX0\}~k):dꨌf-;1DƙU'۹ hB%+uҧN`Q/(<0"|W{o~ޖА7isRv/z78{iT.3rdsgZ`j9W=pR:UNOO{جP<=mAі8d׵7r.~\T≈TwgY}M} ywQO3\U%\U%a鄫5lx2=.z~ ~!}n ̮Ҧ]=] 'Tv):ҳe'I0.(_}ok,t^wwlA3k{=n5ˉ#|tH͐ҍz< ja DA]r wq#YvHOIٛOpd\66Ԋ-U+\(/Shk*H>(3,M]Pr=, ]2jU;ۛyEG<y8-ݲ|#^g+DvEƐG`̕z!;:)ދrRҴo1Eiy q HS&h)8.:&gEY69+@}҈aQi=ph4ML4/}LkyH-0Z_"Ħ! k4a'y,ހ| "h"Vu}1 qW콳h 7CÊ=/KS TlD08l7#BdΎS /";`)Tĥ*x]1ta ŭ\9}Zm<=,AH5-y˹T :RlZ`=oVuBOWIKl hC1o\ԝ6~}0 QVI6m^^zQ*?LʅTzMt;A `%LRS%gzwVjFL/iM2KvA wW5{Cx?kǼs>"av4-6aD* ,X$֗tTWǕUR8CŅ2Pj6W*}K̒U7*Re!@7)l#Oݥ@38z/ްyD347mb tz[T*us-MvZw%(g.|Y$D?eLOjr\)BlH%!0V1K #|r.sL<<&.U3"߿fO,P)+o9dvm-qۯPO6>[#>Hv#< "2*Txq/۴ D)$2I':zCyE9a4\S1$l㈘8d,z2>EdyT9e+\-c6^s`qHP&ڑcowP~1E7(Ԡ aަά8#ɑdpլ]" ࠞ +xFR#8Ri O{S3}ΟL,wNȱN;:" <]Dަ.6 xS~2r<]zwrNF/\ѥJfMe;nEkQSdf1Zl{Ò@&\׋(j߳ ${T1փd4DYSMv@Vfǘ8N] ;u~~%|G5)A\NwR@*Xws~ j9I ;ArZ$* ^>g bLpXju] ]O}> 3u Ki"vS]ԇ4 [#dlOQ~}g$X-W9mBbi )cWk3^˹#wb}d0':#] ɢL䅺1On_gjK>Z!6߫[Kv1.NAYo <C);wY+~~w y9aBImQ9^ݬ銱z3Rez?NvwMä[~b*qvpP[e!E'DŴ0ZEϐF©HGV+q1T/v#mga%'6O!亿KsozWL7bq"kW]~NaaѸGNu;!R`Ր?J7_͐?bv*\&0g^/.}<I?A5"$x}U#S?JЃAe$ɖH&fYf9'˴Vd;ka<+6Qѐfד^#ڻn#^љMilX;OGFBA9RY: j#W.sDflH}/fMk7 ;\,A|h\"[}Q['=W+.hoxV/Cc9r \܃]*c3U! ĢT/ Q?klC(A@;p)O 4S^MiZэO qڠ%mHL}'K:gBGϰvpacԚӾBxA(׃%}[lb7`/[vT0_$/p(|Q>$0ОXE lq)ɡ}qB9?so b!$瑾 i~׭r0_8bpPŘC[`&`#]d^YM|PݲHφ1s95~e8o[N,voM?^Ɗͳ-z;Znp-Em#`! m@콸0ExW󸢮}r?y,c-yFϞFL. rX[')eHĤȝCeVPMNsQfWZl;g?dM,Kߡ^v.3$[zopFt z׿ PN4iI'==/^ZR`UZ0i1zA_-UI%1{\A,%fzI7Ʋ4N}mZ)yuh],ȐUi5dܑޢIɍ2rԛɟ$XÂ)9(E+,&/8ȟ@֑\=Q ՗7{ /fԽλ?ؤڎĮd4Vnj["PĽbh6O"f:SFJlgt[$[#ԎFš<- ACF@z{śe5L*j^ Ůe xMϔ[7@f 0əwoMO\ Y#SI;gg>x6oW'|02еjk.汧ykZy (g=dBN<8aH7-~'o.a!3׼l3)ze_}6\iX<sFolׄ[AZ@ybػĻyZ1.2s0wq?1@2I1c7D,w׋RC'80f4T:J]}yy3Ԉ6 -^ШL~yM5< ^4SkhkUy@r7:; ]g(Ă-}ЍFóf3cgAuc]Ϳ@`Wѧd*>4H^`/,i M9ߨGH?.]IF9ĶZH_ ZlY18?(Q4e6L_g@PЋN-%7 @!7!H6[Qgn& EdјG^kϡjnDL H)qyɀȳА,:hJi?V$s8;u.xCd^%L+${1-:J.X=\8 qz]J7~e)9DS~i=x' m—KjA Q87mBJz3g:ηw=hYxyv1ԅd;#Dߦug8mtzRYpĕW&ɤ'pR_(3F^1ԫyE΅4  RtvۃƙGos[g!e,!p?J[} (ˀOkWBAcQ +jy {+Ú-cNz *] KTdޱCtݫǧ}D@˨z4=adft0̧G[|M +)`oN6XEԏ#2Ê0:*'Y;3U@=H،Te?hKIK9e'c:T dl #ũn`S58[~Tp[ "gqM I %~>^3NT{hқb;NEc٥A}ix2K ~^czl9.Wt<9C +C%G("mTH7 `XF׫EE 񣚛-+gӏ5󨓃1^5qF(`  X28G|@9F ZRy9q> ~Ŭ3A< NC2EstXP gc桊U%\wW&v+(z.%"^ `H@o,_jGrPjX$?#AtGkX`^BDVA!ۅ?Y&g0xe'ɜA":IC?,M^k=*wTT0k2jGu"4tov64mR~gEE*C ZDEtڂɫN&MCpb(V|crI hl9_v?c W>"en{N'ӚJsSNJج D8^Ypc'ep9;bӷK*ג5?'n|ҋ겮&T:oXw>yy2?cjY1`۲yB-v5\_T1mji*1u,;,E ''pUJ2nHpj(oA @БU{\;tQN!]UaKF=!}6_e[!UM]B=9$.Ane9R}ku ~˞|7GIevlTWe!0H6kӌZAi>ԜҵH_Yc)م-<^I6>$WQK:S؊P'c΃ K!X6csVS)mv"q3sxsVʟw縉FbCz1h# I)*5rkG"hg3OìPZއy.L^]'V4#c,%Օ; !X)mz7 +vkgаܗϤnzO"7 BƱ4Vg*W=fSm7XVꢧRbsiIz0ZݏmܱtxVX  \FB蜟6Eʅ>mт)K4 Qت4Y|i>\`_ޞգm劓 K3v*t ;l$N<+][T3w1D"xctNg!IEbLV:l#lƀLff"TꎑH&0] 9en}[ĸ|4شy9›luKm>%Y]DCf9d-S,v:H]UBhD|64(Ë ոbbeQp;Fclzvٸ:Z'H<fv$5#.U׽ =Rvxɿe ds!oc8(EEއ82[urhq ^ЭYDgӒF`=X^Y B;G-9%_M1a,gp6;^O5\VEupDb$% ww(Kqqţ GPJ϶/b.ᅨر(W8R"RkB؝QGrߛ:9DLWnZx&%o u""3;@HPSчI\6h>$$(R 1T"'Vҥ#ξxb&VەX[V(W vk 2N>p_J'RMM@!2lOwNeZy MUlو ֊&uhU8W!+E7DaZU ɢZԽ,L ~Dx_D~=;>Wշ^1w )m 3_.8U(d*I>&Ͷ^ 6d/#E$qf$a=량IjVCfJ`Q6k[6f&6M~Ԙ GقXǸOR\Ls3iA4wRz0heQC543FטtRגU'D#3 Fy}CQ%NE:QViAq|`q e`K(0ؾ%M 0\/_BrԑXQp)xj=gǎהe|Z*'㠢w 4Ome&-) 6!$+#!P'؝ɃBxGkuX7")Yv͋5,/*srMzơ\QA1<Br`َgȊL4$=-BcTObqF#[,P[.nנI/v@>L-> .=G1"FܨG9s,6 5'n-0U[<#x,9w+$56|R'5kk`!lvO(03' 't>^xvNZVYHD#I==O!kJte^L#?aZk%{ _{JGHf#i[@E5iAS0G}#1&|'i)p4 (Qыx13J i%I\A4ɿI$-e Y :֘%z0%PV@aOo M Z&< ǒ $R+QEmiŁou0 { Gֶy],!a xqPeSjnm _/ow[ 5Э?z [SLBTSC_7xw+Nkԙԍ:3xyfs 9hVe#Cy*\_x .FFS@A\^0tk9y [ZX84R=?$v :wspay/΁g͋R\|7q`Yz^4=ܕXy0W{&͕14UTIkx^篹M]2rlopbowбqׯ SJ/~w$ޘ2?BUh|g*['R%XiQ&Ϝ* rv'qo=^vOhU46Sf]b!i٥ggIؗ7 <>5φ]:nl`4l/ŭw^{MXYqL\ ğ 4fXǤBg60֣M _ǭPkRũYd+,rQqŅ.s4N/`c9(甏V,uoB.=j?AWɾ}*O[ I-_x{YClV|"e1;x#:t|WWTNxhK "_"(Oa`B-qYi]oogM/7?weF-ZrWјUX" 5;mj[{&Ev;`IjYWk2 HVց7ԅ Gȍ}ѕ- ? Mi)GO`Uغ(uŗ=Նv2;&GEMQ`mql&~R)M70hK Q^oX!gn87IBl̸Rt]U UbQ^|x1VbjF[]:~,;fzl1ᑇn\2L&.Zj }4E4hZt^x3Kwj'9|v0N0`l*s*6N_OUI˹978=~5~whI/yT֘ Ri$s $9l'gJNl˲v;qN{K/4Ber/7D I8SUYmoۧI 0v &"S*3Rս E|HA'p"JƏEZ!-jFv;#{g~n&eAV 7sւȠWl؊lCZC&yMXÈ,qg(Gz'M`k4/ UK4%1{R.OEu]˳4z G\ $L/{\7FbwmOj̣Ӂaʶͅd؉oŌOB9gi0eiPfu"/dIV0z%JN&;WH:CtS0 ޔ9Ks7BZ7p3QPKb&KJ8£WeP#N/$ =rqAuVFa}@ǔ@;5z_z(d (Z7pm.'nڨ%`-AʫS]3ec x"عNҨ.~I1ZNxMuW$/Cyy<F9Ikn,$T9/;hÁlYޜGn&ςLbR]?Zr ?/q 8AZֆՂSlFACbWMRD,A˴^1җq_忾Ze]a5j!GF"va uLV% (?Yy"&" +m$gFDĿh<80B 3@L-,_i0^Gble$Y/gt&MUX?hcug4>5΂zƞq=t˒tW+WSoްdh@. ᇇ-JN3s1#Dr]/h?hHY.0P Kaﶸ c%8t5DH)^9Nr҇blb-ͭpdn",G"VV (_zǶV.TKsE*XegpR;_-#+EBeG*,:Y@_1DJ!Mdu.:i=2Gw{!u?za[<:J`F`ozx5W-PºyB6suʰjEc9SwHx|D3N6^5N%89YUe~:Y0с+F8͐t%^`]}޸*{{\Ggi3*u`1Cy($Xms+:ZMJ醶frxIbYd'uH-ybd7C+U;WwcBZhB=H%& OFTՙ&p/9ajF$tcO*﵆pkEۗyvu@$}LYbo !k5)T\:K':S€WϾA; Q:(ir3PY5> ̭ۑs0EijB}fe9;V8{)wpe!p$}ĔGճ斠UM۽< 7SV?z|#@R[ 9(l 5>@` j~tSD'Z'O23EBoYB ʮ:NaM,MiCd1E#7AeFTi  #~kjhYiz`aCH4Y+s҂6.0Jlt<ҁB3+k;\h!AYx'\t.D T(./6hPN&}\5o㡮^`aYzAϚ(\^1c$Eh뮚q\?cL/$ms?Ǟu舟#MPKd|l6Cu#¼ȆkpU׃̉T؋V}>bK&=:2/9 UCjdz@*G+Oob ՙجI֞_9`Y?H?J: rOKeU?ß K/طraJjɜWmW)3,B[+YOʼnJ$5ې21cWz 3]W7L e\(Qs!,PmB !rRzqz{`DBb!Cv F$!~/wN8.8o'os(aOUֺ*9Ulۚk($u:bTf%2zsH oj/+Ezn}j c 4'a,tG+ `~R[~!l1J١iXr6+qZh@@%_@0e 4V8{>04dZDÌE 5j vb>g5Jy&|V@2HvT& NCcq 6ԕNۻ I`+ʍ4 22!͵!9~+¸mvV|v̪9YgʥK"&դΪ dE@):uCAK`2>YQIi~q[Z Oms7) !ӟ@Zw"QGf҃mիuw.jݷH%i>cGX@O@Yj0oLW8u ,0_Bb|xhe3 Xұ)d`㤺L5)717,r+Y 3-Eo4,LmRPAwS[m7/iRYWj(kg*AѼSݤhseYcuaŰXjbzߦ7*3A3+B1`',V]Fv2mOo%7{Ylٶ g25/}`QO'q~P\8AhsM?7P@(vMy I68z<~4O\RDms "R^YudyQ-Gbd8 9 m₁N?}66XIJ:(}yjCx8Y.rctjo>HsaY뛑Y g*-KC[jOC4C ! q2[IwJ (#%ׁG~8 S8ܩTX{7!4Ɉ>)٩S/q z1S;EEAjCf."n̙7sf|C[cDmy|bz>So+-ݲ*5X9 R^.\3[0k̒#ǡo|r*dK4=:5\h nQ=ZAdbIodvbP)8m\Kށ%ܨ߹Tyik_BLA)D*N|L) 2_s8w4] q}*F2$S#.+'wMG,-dUBlJqU~ @X!^Wٶ]i{,,G1lBoʵNO6˫KG0imLDz$(оNm(PC;7./ULA~,5IM Q)eQO*j~m`j1Oi]ژQ{>סx+'X^plUQ6驻Q*  u;4L&D(sa;K~ źRD;>p$, mP Zʳ~)FlAo&hw5SwI{Z}ʖU~< ]PadCKhK7ш3-w}K`ĉڃN+3xښ&k7#e ӕ,pʊ 3/lUTo(8яy>a/ 'Z$Soөgwy׵ DnO3O5gȴ>-?tlr5dU.9ulEȱ9zUՑ`'ѷ ȏۢŵc2=ҧx eb2vbqA+MV<\W+6 ^!9*ݥw:zYzF?wATYiVv$Ӹ2 `RQO7ZEEAEf ߎBDI}b!v#R4* q4sU&JXGW:?u#xH2:х85/c%՟$u1t $R؞`t*hæ*Bn7MzJ} sAѵ"_ }MX$6 Y+3 ̩|Nt QU @PJgTUl+a|p U t~KRUKZx+Mn5;ښj(~y_bBHJHt:|;/(ZpZEj5Fh|jK{eL'`[>{ .3H񞴅}UDCUUs(^Ә@e?@ID~p WQ+4`N ] |H kfFʆۀ!Ow󹇄Opj֭ Z߯Z>6W!ocX qv1G:԰D  $*NvWsj#,+r9+1EP11H ҺJkpÌr+gDt=;0xV-"V9!@($سHu/rPؠ +W7ծtie{/#8[j77pFɉ5Ddk{o1K bbZl~,LZqEy4)^ؑԽ91pe73׉zac2&b3wYIJU$.|45Y^i `GOO0aw2Ԕ qsiNrS}MlTR빽/%O<΃F_g:,w,9~H x.)2mNYR)_V.~jl"\R'5RuQ44)>SL.>c)ozsjC*&v`flgd:VrLE]ax6=С1V!7Ҽ PnOwy0t]7y?w8.{7`*jA;.Tٜ.; Zx>sIھݏmNTF(3eጝYe 6Q2Ok 4}ɺSΆיydTݿqOkD }زȵþToR^=K!xt!$;ga1xdeKTq[I6gjɻs\lLlR û9}*E -vdOd]1hsܴqQn8b-jk#A)z !Vۘg֡߬Zej- lo`UgEק>](gX.L"^!{Acn(l$l\!9#7k.A$0p#}m&APmB>}=/Wnw#| H`>p'ln:pH$>Hlʝ. $T鶗 8qg5 X"H,:Ф61": 44= h͚!~s3QoE݄ES/^Ѥ:Ugx/C1bD6|Y#bm̝TSU]+u%x`pz0uMKĐxm\L/ w^7l]ce;Tx 5Ѹ!XqA&Jh[5?ȺvB9"ꮤ̦M4 d[ ÉC:,wDq-˜H oX_4 miC ar# q|hm87D#1WO l"ORD#(a C*=k0n~yowxu(d[ Kj۠ˈGl ΄?  !U6?7A(LuVi"|yR!%&A$ 㟨 ǜ=cDr<;gy$?#]BݒGؖr ~<0F%;e|ІOZ #l G||=Pa])a.mcV^$L>q;m+DN< _OG]LTԞ1Xۥ \bޕZ99)呻OZw<+௪ř4ܫ\ \ >8].KjSth㴠!@p͊{$3 jn$6?Nx(2 KdAo5i;YXx917ذ/!@,"3ORpH_cy|(/>mzrW/M̚ү[bZo 9JE~(Ib,G &%WF^?<ڹ "6;WE)Q__PKuGzp:ۍ%i+PleH dkRYMj|z+ytj}ZSݴtFǪcfs2\4,fCAޤx@ޡ;VIu?2F>,RV*Snԧl\WB>@'&4ʃ_V &cY7_"Vs_U_ϟ5<"މoRg?1BzkG@z O+ZHzAeA},̛ sz` -ڋ#yEXz126{{ɨ4;Me隻(e6ٱ/瓐HB3xk"YLsH@*A(D킨ޝ"쁸ŬS+O? X&7L̉3 CYcg!k8CA$WqOL&R…G@`ȫQN-}oi5z O/G*h\8ArqP\Ǎ[s*i>d}b%Wh䧃]l|rֆgC%\"'7~C;+7@#>?XCK9[m䲘 b2A{pS yߤ,i'!gWt_x~"$~Hc X (u<~.T]HQw{8 >*VF6**aAs!9D R|?Vp ?''Mu=hϙK&Td8J&0]iM%o ʞ 93/ph ۣ5#?vP,BΠx l ̦V L3pSv#K}\6ĝl-a&K*EMng8*A~}p,`CŸsvu({FʱTc!T D9O+/VR%kmkz(7e.v ~ n /2cXBNQHK*i!O=m#m#eJk3/rUo  /U2:~y',*?558 [h؜йJ'M\@~{I f7| V LAMgt)-|C~#*Cڜ{k)6H% )&XQG=M) XלyFC=Y9p>s+PHn[C@NC7>3IɁ 4@,iƣܻ)ociE\]2BX_?V,b&r}ƿT僆@P!$e9mlDg%"2Fo6tzZ 6T?$_]!Q;1O8J.WIeXDhԅĈC}/:koǭ%{g 9)QƶO¥չ5:BO<]D/`'hb;\[{qi:'Xe퉖_sP3>F2d$:zeky\$oZ5-!b{شx&YvܲOzwr+q*.EkQ'>wU!y0he^[F2eڄ+W҄ha gnN3fH{H‰AP(K<9H>_ JnM̽"LalY}a؝F +q]h @3+.b^K_CZ1_nBƺK uG?L2&q" f?xPa|kV`Yk'+6rh}8!1 E6Ը)$a廳ޜ3@Ra9\άN29M(m.)csA[Ä3ϔg'Š%%:NҸϸH1v=̽ 0;:9l|%Rw>cBFjy|5!lUkL>3FNIYgB4¥<(v P8+%IPQuP%J7݂3\yq(>fSjWU9 A)*-ߨ}ܖOW#<:ɡ4ԲA#[qc Hѝ mWEmA%*|`\+oxqN8Feh^֙D&ʨt*# ?"Kl}:Hؤ|uD7gg5m+N,Ϫ#<v$ﱽ'VFj"D}QF|ceC#{qKNp w5p0,Y3ɀ.P}WVHp{\PUJ@çY:+Utv;o7ot91$:, Lm+3?#MaizB-|"x?(uB- c7CAC۾N]6HaHT/޺Y-Tp> x٥^]3,)\.#Յ<6![HϠ=\]-Rq;؟%SjUT6F7c|y ΪF(V"4A 9-`сe墿LsshR-: E`\`WTKg2.6sIggeWvLs^RU͵'% [>F ,Iu8IDCSKvU 8 8׵%XpJ0_ @^2D<>B}x%7Cn a mSd# Ne+\!xt$faJAp2_szq>[eeCά +-|mWx%/s'sLaBc6}U\bo=!-\`{vYij(I ^yRǨRr37m#o5{I{#e֜x-y ~&`]S7sm-ه ?L3j5T$ƒK[>ѷ ˌP,Kʶ8dkFNL-XA+nv1c= ffJ tC֞)CW^Y&qx& 9zzҋ4+n(׹1~\x!q؊HiVtLʞhx ncJI@L:v"ɮ@zO14RƮ>O>dp u m :61 "M]ٔX+ɱ# [8g6?xZr_nD̑ cx[T&GEТ0 Z(dyƒ2-: L.׉'±߫g`a4uq,Np dp͵\tZ<(?TCTxz(U -F>V^ RT^Q2:鉠mhĜHB5Zȩ1YvnԎCTu%_e.ަܽ]Y9uFJ4w!QIO'>- ag$ hoȜZؒBA8ޮɵf&dJT࿕/9_ VH>V 4i=qO8*Z|DJ]BK|q #nTG!sҤ} r{܌ZE rA'dsCL#:!la go |!-WD4tqZ |dzPЧ#7[_Ǭ6ں]v'/!ӑS;^3_~7vuҶРҢ: +ytkNhYѱgdYNh9}G/`5B" xǧ #)SL{VXFpQqbZ|0ޣ1~A`, B]FL+:`? Qhٜm@5j9\0ڡϜ ~2%NaNқ!-&9Pqբ~.9G]y.gl G8Q'l HĂd˅ #y>cǥ}ŷ'9mE:JZ {(/0I*.@5ADA6X "ݑ`>Y!ur5^ Ԗda %2=k!(aJΧ Ns:Z->;EXyJ5 %GN;pI:]kZ ^o3Pb;DUέ< LXʟ s:]AΥ19ց蜣wZv rw6H[dlZ1%<0Ndeup*Ͳrxi+'FN/8hCƲ>F UCR٨\R.Xx #$T_><:6ZZMjcQN_-?&Zja߸qp/!;Y(|E( _%bB'²PmxnT4#jGZZd,x׉eh!HpSds*Le"&e|ؽҡ-_,o&6*v4L*0hWI$6Yu57eB #i*^0M3\ݟf5Gӯ W JS(IXrס3Ɵ_TFYȾ6S|h/KkDLF:5;W=1:QQ'E[i͜i!MiD/#2o$m:ѴX?6xSwhLml8Bſ􂖟1AwIvU9V*;`&Ў%kWtb\*c1 y\^ed]GۈFc bz9H&BB* w $.M0b닦 49> ٨K5!UU{Q͏w/hFˑ̘ʪ&m&9鰆i:Cu$(9JqZ.ʲɰvF"xqV(G%ßPt+kb,] B/Ϋnij:h=۫ :hVm3o)UUړ ;V< / çGZ =/Kr{E5uj&21PVujve+Grb@PS  MB zxV>S?9(D"QWњZ|+4~:9xt/I- d+]iQsz6!L_L݆XTlU_)bOʣP Ǹܹ~K3ݠz.wi>w18hnk6dtps 4f7h=/2b&){u_eZVUcӸf޲GsKO=<*wf; ߻#+Ayc+Ql ɗx̙JGw"qAmNh.k& O ?,ySbAtL4#sםAT &G|'c+'§6)Ye?˽H(8XJҖ+duZL7a=Ό.!eFh #rEf$px=v$/j+5kW羭<Gml,Eg7U|,y<JhHWy0 .I}RU smH6bL4>o6g!"p0V=ei&βYߥܽ%6Ԕ(ziFK+geM؎{O߸["/pU]tuja J#l:FZqxJ_q!L!#?L70 z^[آd)RaCKdߙ󳡐%;Bl/qPjQ9F+2c[Pn 3\J"QLxv0|*"i{K_2~|%NRAV?QmWݬ7ɬcm9s=32Q홄 VzܜCYe#gq+ۿOdq|]GNevhGۀ*w)u ͕L/5L6r.qõ_qif?rNy& @O4@v1=J`y"ԤD9 x,Hך ;V{C# Ww[L?Iҥ܂A%ټZQC9hβ Aց)3VD'C(x؅8F}AcVL謻;B {߹Ws. 'GeITEKLC<$ks|(7oG .1U,4 䗩!ҩzw7Mߐ8H s fJ~l+V{B2 K̭wc?}_ۇcϫgZ@W:{#ʊ2'i"ܫ]:r-^;4jqCiͱwsR22_\U?ޏY/c<=jq8c:[bu3 +%$8 z)i1.,U\ p}hm>Q^\ԑ)qT1LBhȈxz't6rlZhJStY|:\`H{ i= NQEaY ejA]wz!kQ"E'vg|ml?tf){~t=%/QlIS^׬FZK:SЊ' 竀 ͋&ԅiO kO|28 Y˿XW”_(ü6WR|1znwAep `¹zϕ{~NnCaN%,+̞MQ6#C@is_kT?2$ [/Jy-y| NH"_7M$m[{.w7ThH Aսu3O5jYFddZ#~r[DxoJĚSM|npz0l`<; jZ->3.k@9t;dW 5>On4LJǀ!>dD>$:[V+Hg6񆊠iD-o,ER kvfdz֫ vz,Cbܺ]8pWc_cHZ!!2vA>E~x0(s*Vpr>W]1%p?)HTy[3FGY$.YV5J6J,Q^(u|tvX4_4$o<3llC ?Ɂ[{HQ?x]$;~ #kSr~u|ؚcI&".,own㦡-Si$='tM^ -M =f +.jI_QoO!S=(wcժ`sKZ+ %F)D6(oi9ugXJ?J"Ӟ,է{p'Uwhƴ qE#ӣ:+EHvk,isּoFWli[,@ lѿW]@x~qyDp3ho&6|Nw(*!"߽ ]4XE%@0)@F`j+ϊ>_dXs4"a2U@%%建vM: OңPtI#js&vͼf*'/ t8c\A]A@8٣*)'m`U<.jШ&ο.*>"GvK䫅rћt^&@)t3hO5w VƘo #X7dge΃ipYZ>ޭhU E}+x4d XMJ:蔅ǃ륨݌$|"DD lo7q,CzpPSx5uQh]D%3H'ئ#AS b {hܻwIi'g/6b.OrXۨ [ t= Mdc lGpÖ,1~Yv (8#huRUG/`wģrA?й%X=rwᵔ!lRc ]7*-a"NXOd9=#L9quȈ׈r)qc!*~3CCiZf bxcnv X۾0ʨ!"<`.qeUu |QVd!c/UG2U6R,ɒ=uI$".&mph]ҤكPzF zlf^*yutYeEgh}z .l: )ŘnDȦ%nդa*dA8^qh2M6oy߂MlW1nyT=r K8ՐRYZN3jݣrY %k4-3ȿ/ ٜDihҮ=/dʊKqb:vb1%}Vj &Py2N|B+3 '*Ze-k4CZ uuqN:`;UZi"k }W>y˦^A[v}MWAKgC =FT{t50}?́7rp,\lHwsx^DDIg)C"u$=v;tG#_,Re1)"^>W?$J'}hB3TBP b#ϧ&37_ͨ?H0#B'Qdq&ƒ{8]hV4NFf@K}CB`ĪP9v(hv+vaxni4!5MIka|db5 ޸5.XVm=E6BP\aW/O KT|w4hAv3gm61$>8u_2i$c_mA VFCҹW iu`he8}4ufn8.0@pJ?+GN %kEZR٦G=VvmV7< B}3 d]"XqJQ԰PxiNT2M o!$]Y}%,"hy4dT"-_226Z ֣De)eП9 BC$l)Y$P-n}ebDG}ER&>u;BqXYVp7 H5`i At[W}m܏7tVhewQ'J,84Gcd^BfQ ? 3705ĺc _PsQݦ;J-O=v)?FB^1% U 2Yv,# kRѧĶ\&\'4\>_JS3TeN1kn[-pXa󵿙 Raeu4Q3Ox  {vGޯA UKaX}c_Bg8f ^יRϬQׁ)ZGy)+CDg7l'bꝰa5dݻv&ch8x@aUcjwvi'{u*w aG1֗I.3AJM~]iZAC;~ #|fK2`WA_ː}Bk*GW6T]Mz¨# /߿VتEϴ;Erm=7_` #E<됤 S^~jG b+fbext8ߨqg^'hVQ& Î7,S̰ ik19u=Hu sy:pmj&G)4x~YQi6RmT_e<{6P`D^_o g{* rLa{iwܰ`^P rB랖tW dy+øE,dr6֦NAZQZ17Fa#NSǃT`a)lOՉ=섟(~wKmP9x~uXB"3(5:E 10 Ǎ-w,aSw{ UljUh;0i?L*k-[Xxhn:'-#E6Әy%+Z!} ֞;h 4%/P\.M_|JeE?ea־ɔKQHX_^b KKl9Aaޑң1[vw^yݧ,fVDrY^#\奊Øla)&M0 dUb>1ȝc`g5;Ry3 pRڂo̵|ulv\DQ1{!I`1^KA@w :=S#E҆wwkQ>#(vƲOvDcGO&\ͦ:+*rD)9}=v?/S&HM8ja3VuM0"*K .e\&F'l&,~e1pF?+7U\r~cYcڥ]bKWBrw↕llԆ23Ro8m$̳i}oIp^v{cUƄjhDOLj{m22_2B'6P0t DJ,\}:S~Ew*n8(s %<&{p!vDlF][삟'~b.#/Є=_ENx/kjr0<& :klM*?g˞PP "&8#`͘w.YTIifH!fHpkWqGŴLcXpO>Lmϛ_ce `%k10fJ,'$NVv GND)BN<9 `W}2MD}s'@L.Ǵ2Ry\w!8+2y%Z7̀EygLӹjs8?\A/Hfͥ| 2$[0HB΃s| 4$ d\eʙL=2h_ѽ?%W0yv6F;C3,, .<]7diRDy^ayv~(9D!î)h GǏo'mEs&BY&"pai쓩Fipk_92y‰கTeGZDܺfF5 Y6Po,/ +DF@pܴ0(1~).Dȼ)D̔lj_ 7nbEsWT-c߷F?aP՜nF-p{f*}X//2$ˎcN h'l%Fp7#1<n1i( h GQWc} dBnDJ,!(ı)ݧ[EP3\a~Dq I8 kg nȅ:Ky@z tw%h70rn\ѫ'77b-"Y".Lju$6"MYR,6%0} ޿伇FL6+BEk-*m8ĨrFvȄx9{&`} "ޞc9oSed3u G,/MD]MH%5GDOGp Grx}W66W3/ve f-Z=E_kQ*:`FxAē{89tPVYg^gf^cUKC$0e~ۤ!슘tlhS dJdol̎%d%+@8%V @;dEfduo P"pL@P7 y ϼ|>Q \/Rڭg!fU^wec勵>S<|&1{1yvV݊*WCcOW-^f׎(݋7Q9J&0hI@IZ| =/mT2ͪw1$&Ӕ)~ 76oB_P*r-^Ajj־}_%aB;W;( ƕEʵV!FG0#XН)#嶾Z.׬Ld $aj33o_ [Z?~eSMTZlTy|yRUMSyM!(${Fr K+JW }UW(\cK$%sWZf"o"PV68όߣ c 7.4ИOAVa'e/Y< W ~TZN`_|%VEN*LuᷢKQ2a&f@'6`%^{ԑ,!ZP͟2Jv=뻿b߸Y1b; as_Oj.G/_GP%;Kh؂d|+K4qi#Upa<_Hߚ;7.ṛv/ˬvinW`RK;tláaֺhAlz(7!KkY?3$!ÖidM<$MTG`hO'4pE5ƀπÿLk&R`!aT#Z])쫐̓*RU37C5I p -',b!r%d@5GysBQPIq q=훘obf',L lY֊vTE=;.f,M%oelaA d 31JJ\UX5([Ѝڣ:zJ%"Z/D%nkɼܦL %s6PJ^:sY )6 (Œ &k!@eIqWx ֥ >t SJq 33r. 5oȎkh^թiO/{#dX\'Syiz5NJ4EGzJmڮĹ[O\~#:!E8 AF6=0S2~/$=2GC̲WiFd٣ܨ8:2%5I:GcoHfcPCDψ8M`0)'Pbҙe|!qp-d QCMɔFZ@Ycl^U`x4N$*aQJ8k j{jWK}Hw(:MJۖ+0=h7X}Ab*ŕiBKΘ!n*#ב~4;5]=KfSStͲ;= '~Bj\x-֢ % 'ISAk!7MG4$"rXICVU8H;Fqӈ-XO̚vPgt\?j^\p칪NEC1ą=тFy"Y-&PZŧQx:, w~\̼RI`/iu% d^IW'/aa|noSҁh1tz\8jIAIB`xAoT"4z|aRFd:2֗:xN-y1t~f fxD}U xk:臬sf{6O=+݌,]U[k9ѻa\0O @6M֓k g-Na Q Ulm_% Z PyfmgMG9 ͞fN&qsiG"4~F]9(Q2RN*?J35p!?j UܚR}Xyi%moSUw qa. hz۸B(0-~r~""[o6B'@ۋeXÃ+Z%t~8gnRCȃsnVၡzF)buh )[#@bO_>|öXǽMӛSe=o]]^{ssd HMY`Py#G.I`tеԚu}h/3K{3-V:(/M)(vEQ׵՚tMLS~<"Yd@*ǩ0Bzo9mt'I3:RNKT @}B$bnGurw"WFC t fgLR䨵4ETvf2`zO?eq| #Kgv3$ZC P/uut @̀XJd$=¸rmw8}п)B[㭞"PJeXʯq[nm\wQ7uXZ*C \ֿ|iO 6.`X/SV/<>u5CS/+;o!N44"5w.Cf IR,VNE|lADќrJGV[mZU_;B]F5+^ P_@KN%y(|z l %ޭ%8n`NSߨ?V~˼̑&WÚcOӧ[}=|w.Ho[">ytTx)qtf eriCٔ}1`l.]tRLbV|ەP 0@>е!xT3(ɐzkwVtu9Zegaۆ/s9U& ^9@6Z$ؖ׆.JmQ~|[jX S>#d ǡj&݄I騂mSv([c$`  T^xn0T1< 48] 0hڻh"v_Q\ul1z֬ÒF"?d~,n {)\$D]i-āgķHFdҴ*+r˅i+s/`F60`Ad xO CAyY00wSѳX1 a8:UJב_3u3+ЍEa^Wo eE  ^*-vƐClw4ʋۈAAcM)zncf86 `Ρ@@̞Ӣߢ5r~DT L *icOڶ8i:ʕ7k\~y cLE>M)h^OJ65;ߴ 2>n>ѫ'oڰ~eTz`bP4C?JdB)frܸDx,/ZEi~"zJdRl~M?\ȒL[ nym9J ~1g4+/b )&CܸaHSk(8ڣ%]G_Iv%}p trS` OZn4:ȆRٜD{9:W2aaPYiwu%jQa׊̤aWs?1e;#}oL/+T~]F|jŇφEKlEkCNKzw5Azw!(͆_ o(T-8Zi˅9nc=~ζ FuU%Sv/<Ү]cl%?Aq߳NXECuL njO:&wWn[\47WY9gHF͋ciվ _R )\m,$Cd28%OT(Br!n*/qgbyLfFArWM;3b٘cPOiSB $!OҢ>Y _ؖ$O 4Fo :t~[Bofxz'amoǮ:tIs7MðY٬QF!tKۍl'(Enz6"dAqk o\X8Ⓕ g|)12 <.%ѕn6r49vCW6-侳ĆǮScٰ1ex%#f2@4]|;<}Yu~FyI^٦2gbOz{ 8_G f j <&ͯg""PS~+sudT /  V᠓o*yd~kqjl{>VV OI!o! i[|8YC\Yky/N- 950e=Ja&`Ŷw>"1Zǜuh.ڴg.CT]?OE^9N`OG|UN p"w TaXɭŪ/e #7+ո oܓ9RLT5|hBO Iw[妗k^GkxETRC*KhEb@5JudC ȣɟ Ϳ)PwI*nKbK ͏_^@0͵Ӧ8aD N)4Q(b!U܁dhSj&0R=h}!{YLxdvK=qb .硲<#駸#fz0Qs܀%ݷI-|vOqK{/jL`vpDtZ[{8Dی@FuA17Eti6'9+͋Cqb6̉jg@^&~ 9*$n۩ٜ;TKt$1)Gmk|M]h.Wݖk" sJawpz^ڑ|yJl-W†T/Y@nU#vN,qlߍ#Yӕ3֔q!*%nG-\olO/!Oe$ßTXZ[/[p.Q~l3}b(ҏ4. z@f ׻v3lLf:mR˷eaE@Y6=ax(p&%+!nF2K+v:I%"s#afr?@ދӇD(RSmGgI`K-g e0/ϼe[1kwq*4$5)8ak![igg,H-Է'nZq`(75Z(Di8vf- 2=pm|VB4;m9H/R5eĊtBO lgiG$dJغm4*ReksvYR({PXӔC"~6ӯ G*Ճ>hܔMa€I PNݥFtBI9UXQ>1r3|410MqMb=CS2U}/ RauHu˵VISb5u$D|”E(dgP~UѡA@+;hΑ$ 'q `-+$6ggALj!V(5)>=ӥȃkЎY ^b&n)gZ/U&"زP`|$﴿"nЙSD"8PapQ k.[ʃ ƹ2*foش$p6 &oF]+J•oԑocJ.Ms{%hڑ)^g&{ cܟqҥȝd>%u?w7)%^-*H,\_L !(iB&Փz>f 2v^~'&P>BI (ՈP]lsoyBU7V&IlvvD1{8ն7ꯖK? c z=2=ZjܠqlwDg9Я-jqɩ5eV gH R^r[apWY#g%T?)Ɩѽ%I@)7y薸ͱO߅:@y}6? IuBU>LB'=* u_0:Tz3MQy+ "ZA^AAsN>QO°2':ݾMrt=ߌrɭCv/6ނy>>[ hE9_- m[PՅll5/>d*@POgek4S N+ Fy#B} H"fa^6f*][{8_5ĽبfꘐҮ@]dXKe2i$O42_,-G<~C2g_W &qeo6b](=ټ}zsa*`fvHM⁋nQn)?X<9dWwAL&2,мw!PVSt) p;ҫ|&( ۉ_?_aNmNҒ':1.ON!_8<ѐ[˸埑بn$hC AZL&2 24 Z RW%SyH~M-PfRW%֗iXvӭ?} 4 ct*ק]E.<7 і<5_j~ ? 6^WZGDY4 ]k(lPj./u`"oCXՏx{"n#s')8INL{2']24=å*})a`B$`-ʺ^bqb-Gߏ!j/6`2`!Sf؆Mu 60CɄsB6CL0K@55(sMf/1ީ X@{WJw3$,r*6bTU^\y!F/#g$/6I&DzpoO)/I7Ojݨb'rVL6hȩύ,di%iPDZ /{VAěǗ$Zga3,;D`2**k:Rt *A(uʪp KqVnqSw~A>6ٓh΁Iw7g1)eGj֤[|p%,S^͗ܬJZ{L#*eL0I*۴QP<@-Jae&ut\$[ w W/D"ӽdp0z\"j^[[noD6>%'VlH6KޠSq_W ٷݔ9 E!xk$kv&846 *2oISKi"ԵW7ܸdMUṨȖ}KMy2J) |}B>_ K(,^̚kZ^b S;X`ݐ‰ދ"|f}A`P5b&̔ &'e'9J𺑆i[QpC#83td˒ NX.T_6[82e;7: $Pzpx?t鬹NG3^ptn _`⏰Z6Acmp%/x-gA}!Ȫ.zbqh@,C~-"zIgݶ+?F!mtHQH ٣_XϹw͎gIZZ3]u7Kwat$c۩0VG!m bGX\L@瑊L ZfadmhjѦ(HSgRS)B(s)~: \6gk 3X4?7DZ\.5Z?D1:T%Za9tJ 4*icMzpAS^5)eD~BrzE,ʳjU ZܨyI~':x=3ױ†}NMNⷰ7J'r.gr! dB;k|4`yYe0|_Y8ʠ;Ua Yw=wxBh 9bć׹[A8o,W~IvAgh%k7Y*+Amlp$ESmpUd>~泯"$ٽGLN?SIo5:ߌwmˤ)V6n_16^?Prel?TtcJwq<:crzL)f}p8<6dwMJe (I4H(*ZJ S#7LC̣AOtoST1N;/@eޮt8q3oR`UhvYǹ=aj:jCtpQ|ouv7|QŪs^VMӗ4yӂD KȦogI E GX0] /3o[="ESL? ݔLd mujOwT>8ˌ/k/Ds|41i a_3 v M@_uK_wZm^hs[fYneQ!RAP ʚ o?{z!!3^u>! rZL!B˲ղzz>%CIЫ !]ɏ*R[+s1VI)BMe!\gmW(1 Kx/̸0AJ m1ߎ=Ƀ~', ϒ!.~WP+o+E`fYؚX߽Z:Y  _@06dzkOU \:噵|2M*MceSO2Jci$FR%5\0{jڔ-%u^S!ȍ}@Tkm4!ExnMgJ=_('O>)8O z2*-ug.5zUAgk˞f`n4f02VFz2MTr } /ْC|k?o+`Z>bj)͒8{xNԼgɁ+zvM{pd G"l<*;@trAZulKKBxwF{wh1 mu1ɪlVzjR3 u2'03r4o]~ t>L=]}@=N:`.Y,K-'ؤuR9"6[ $|uy;[܃zS*yn֡kDҨ&DW%<ѝbNTtp>IMX5 $2ס0wt'(.AԆ&0.SXgCߒFZ)\(R<먰yZ `h_`'j=M~& #JO)feYEN8Q@8v)dCf*:W4kp7!Iҥ ⯢ fc8[}0h#rPvfiM@Id{˰Zdxn0 AbPpb6~ HXZĆb.~:Tq``jGXy[cy [^4lb w+WQ0|a jPS[Z,vEfQ~dO|zE22WTFb*g"]C0|jӈ~=Bvco8a+t.Ix5)ʃd!i3 KWdJA>3zhvV70F*xY8AuB4Z;Β L$)E;m{kNY$'p 9֩p|-m6Okn_%^,nLW$UW<ؽN>ㅶs!|з@yCRK+j V߽neid5|gi )B\h&xW6%|oB%?af$ᬊYQj48EB1t`âQa4#:2~=-sL,?`՟ [שeDaN c"/eWƆv2;120EtiS場%LEqR0^PNd??er~ jQID@*\CvS>ympSmyu\A| ˹ӆ'BO)djY NKF+ʓrW7(L8nr5b΢_v2 H?  Ő9#QtsUlSjb?nnߔ^7iZUdRY'"S~|X?3Q`pn!ًcpy~늽/Mc 8M 7]djPb'UtT4 a&:^g'Gϝ;M| ٖya|*` Eg/nol_J$, csimOHT&!CU"(#K gGC4ݜ_ ^HOkT6K*"$zPm%3yQ'\H f"F[0(eD[ qg>ݮ%L4]\I= 5 aaBeZy_ |&)c`['nUd3Z9t1Y{ĩ]uuQ&<_bͮJ<lrMPLLq&,IC0btK^^{V$̊7LL%vRʺϓ@akWnl3Faaq=Եm9W=Y# 5 ?S4Y6>Æ0I0 As{IOiJ%`y[>KݥB5/,9w9J l8;q;Ȅ~D);>C3hvKwZ`r>+ {ggÆ`)uSΦBT,Io8 d5+Qo:f(Qt8-3g/Io??C}!5T꩚HKI[iZ3~I 03&E8:Ϛ_¶ΜtJ488!/zo)o'5pW$5[c f_!1R(0 Vdh -$DU⽜\NV]i,J$b&5 ].o0RA8 ЗѱpM<>en9@DsVS L"!NHu>z#0Ԫe?FYD 43|$Iy}m!%LYr=| A}KA(G}5[I'uUqJ#ied|cHMn&u\79ЅYwBK^31I"H;yMkrzB6LU#ęf*UWhVOV#weacd&$Fif1ִO-xzn Xe| -9 {LkURZHk->"觛ms%4GqI"_[4lnRZUZN+0YV3ԯW9l4 ON0|]P! M}̲?ݚ.=E[eo{@8O\ tx4NdspLT[ojƴJÃM+} $]+ PS~Dg@ F)EߞD-Zՠ=S$Wp@Dny*,מ-_@4e@7E xc"}H,|C~Rw4I;!˭ݏ W4ή?PSWukݼ0 uvxa(h-OÝRi=V6:r-Px+ M6c-?|8<^ͬ :};n$Wc2]-_5Q^D%i+3n5.QÃodv HFPyhS(::K$|\<>C3iؐ4ssM(A k,Rr#Wu+-L{XO2>11wj ~Ńp96~J݌Yc>:LlD _}W^ M0`I`2Z%2Q'm#ڰ%1tj=*4 ë|7hdHz`{t^a~I(eJemw#AR~I ❮D,]XfnT̓0\ ͼ3 ÆC{_lE>_.[J䪔ѴϽ/ gψ LxJr/O((#dfp"+Nֆ+Rm|)Z|tMԌa9%GL`aa?e@r+n/0EmǰV½ E@|\N/9zw|I4[wqK4twbVma`=`].NnOyb/#b$&vzA?U{AsXy)_l۳mo# \ 8#.l;v~Hr J Bhc!~i?Cӓø[rJ5M^lILVDb*S̼~ ŧ߽ PW]jˬS5 :"(W|@k-: TwZlฃ-4lηQg &!G%>F񃄻O'x=0$ O|ý(HN{SUYMtAALf/2v/^m8kJҭ'>yVLgb\/'8yJаhpMo^t~$wHQ`考 / &Ńu=X궁Zx>/?Fڽ?u)/NV]SIMܑ@2wZx?D;e&o͵fs,3")m%Ў}켈}($Wuݐ+z*oVHج=XE` T؈ 4j*rЄ,{cÈ)xmvqIA CqX` ۊR3?E2 ;YǦv Fu >7VBdw_EDqӖ @.8}rmIc_pYI?}tMqp| 2{Oyʛ|5zcӼ')'ѷ`V}rmַǫ7Oԝ6Al[ h Fmw&J =RE]- %ޏ6`<`V;0^m8o 2H6,6/~s,3LQډU*+Gsm p:ب eF+L 4P 1$2āI41!2!\2=SlW Zk"$%x?o0vzg_Z~[0ǠbfIss[퀬A{)?Zfco\~hlj=2ѼV/umBaw@GH |bR2E#E9iݏ~SKHi2Bt =IC]2Y e]W @GwMSj?W弈vC!MIU`>K&]ZQe.eKZ ˄ X*&H.ӗ_9_v9oLNK13h% IW'494;>9Ro X3(bƙB=Mtջ&W-9X1pFLSb5]A˰gq\5 k|kuf,f3B5aXU*c*c7#F_۩*-9Sʜc^!YEBj+[OUAmZVv.4ViI9ǽE SI|edh~p^NtA@F'\řz-+葲8@R_/ˉ3rqk|\?K9\Al#㉵0g6ojZ""-@؞N#g3°:@N\ 4EEz|@Z.?%E"ooC?3 p^ll>\DOv-}AM=+B \r 3}X0Vc*Tș% Dz<^71>q~cmܜ`ҀA_֍ ބȏX^rzV2{ Snrʡ!tP#MRM:jBr9(?vT <3?-{;B2%2(__[l( !j nOk+ 0ksoUG1+D0xUu51PrLO#+u(V %n72L=/ub7Q ,ֻpnN1 ^IV7PYo;f\gG%P9GVB@ |;)ڞX?|FJ2>\hD'.XؗB @ orҳ]-wg5” נTR~5kj_Z _:sl7FAb빈}Zvj[՜"VOfdDMXіJСQ%rԙ6:(plRۅ.JofB/J}D7?29O_7S\T@dθyP]2qV`4Sj;&Wpw67L 8OY]Dxу}1oЕ#:{}ip2?8_WƤQwqprՍNA*‰LfwhS<ʲlq>>Z[\Qq>>E.VxC{u*(7dSֵ1U" mqSj=7E)툅1{j`Pd'z~TK`=Ơ);~I+b\x?gaC^ehXpӾk0"=uǚ=b){Ho<ĹK /OlgʺP}ا9ְ{@ Nљ,Z+*|ɾtLMll*Qf!uo;V!q5]{8 p(_JJ2~颫;?ETBV |*ȇа wutGdU܎Wb%:kb<3 2?/)̗oz_;@0K`Fĵ#?͟ZP^2Ll]'du'dj:D% 72mBwZܲWo-~Zok|jn_^?^^%2?,$\nT=Da:-[:פX86wg0tz=xG~_pv쌔~ظntN:+KY C$9i2KTǰde\IMlVZ-\o\:Xs1|F5GDN}Տ ;fDVF=A5IܗEK#7Bv Z[ѳ}+uYr.<jHwsHL+ 8+$E`m1쨛)Yk@KO5TN7pMB>zb~Tb6m{:o# $tAZWiRHø-7/fj.=g 1i5 JC3%<0 c J+d-)LNbѵ bk9wRѝTV Lyչi5F!َQ mZ(i;Q^ (]'"L"nAƝ6&CZ m1岙WI6W72=2.>ZȦ~|LkTѤԷ^b N^Uc7f!_=Xa)xE!6A9QXkaF䫁BrIr]X+l7b Ł*YWr)]Z|S]Kw5z} W5vKADm< Ƭ8 {,hTpۢ F )2#!7`0Ûwb8*A"U<#&_ZH_ ls^/˧NCESlX&"ʻ|QQڂjeQP'4:w,ygJ_].v,:#M,i󚇵aHCsq[SL!pA#d=[ޛ!"2N0(ݲB?m[X|yÌK2j*-)v5@)*V tgcI,7>Yr jфrda1=] O늞] n|hnݪRtcP/cX7A`" cf78%$h{~ǣ _xLި) c?IƓh^Wl<:bxyg>g3? 1F"8%7/gN.t- JYL*錟>$zS$,Ȋ&7D֏=wBrw(Ň (xV&15x{K&B,\9R"ׇ:.0>%B Ͽz_Q7v@Yx=L3YGQ}eǔoܭ., 睕ֳ>&ll ~w_W!h\fimQ\.‰-,BȽ1Wn6Bh6ظ "_?󢱚Bkg9Byu^iiߞ3x±MDG aad2SxFt ّ6b/aX=<ţ[뭐I-`d1GiY˻fڄ*؛"*5UHz U>h3$x:p%r119[";ȸv+4~|Ԥ_5 p_V*:svdҰY^= RqbñGlH,ݟ A{ $dϕ[5uq MC/W0nm;`D3Wri0!B"|h! P>7'Kl&) i0tB ]d᜗hJ4)m/Bo&{j1z#zP38 .W/W_bwbA-w0$@q{եN~ד}c!{CsCO巕%WDpB~_jΊT %S݈,-ӝE%P6{QXek#h*cK XҁV2l2V~A2PYpO"3}?,gT-SLJCHLziv4zE %Ɲπmꦂp74l:#'`0rln$&dd/jM`[:w{-\⪴646t4jq[aPF8'T?*Ds3SiʶB[KC䗼9W+%A߂7e9-%Z@v2bņl{0 9a/*ď%' )2Y/?6]!E"&n*e]"RNqL~~<c )C/μ'q#^,pӔ)PpYj2-EEq/p5[AxO RVYa^iAp;;d=?-Az ('LƇi!Jwc *'8dGmgHرF24:Q3ZL9·8ss`Aɔ=PPw̶j)d* sNzk0;C$ F&7]lg7g;o'^!l%L$#%AYٺ5]r;9kt3ӑI&TeXf8J0aE(7 /׵MRq[x.6bcz>0Zt~t;<>YurR5:bcEl|5pzB]8r֮ [絤? Zn2p$vH XlG1 e#KcwG-3Ł@IwM̓VvYR"9&Eݢ|jw5yo;f 47OptםV-Tn}d5z)˰1zi ;)htqYB;ӿDZ1bWb2Zlċ*1 g׀&u3 HU:G\qM(E5]sBʻ grmSMS':l.=rhn] 0k}RX4e;ޕ W;4%ޟ.6lP‚ P/GR+,Ymڵk^֯'LwEI3w[ Sa#uJE5~5?Ic\hikp7@tɍ~HTH!r D'ڏ+ СނI1Cۻ2$ʔ9f!$!IVW;ٛM(ssrm%/F43*|!`)D]v4dA!+lkI۱[O4 ˕;3l (E;ej;LsUZtO5whJɸoK>.']tKc,wU)Ƙe!6aO8>Sɵ3IJYqULEY8T8ed`P>vt}qBLh+ܥ>0~.jD g} mL̈(Y_Du<=/] Wu5utV5 zƏLW|L]<%F˸ΤLHD[C.0C-{9ljthtNƉWoOAe_в)]㴧9AEtѰ$U9"?riXwQ9 9SeWupFzK ʰϐ?vZX+ 9aܞܸjhpJS/#]쏎<ĊoQUwQrC}1˛,B G|@dv.V;g'yva.3]Kaz-#x/jC@duF6fkPBlZ۷禙:/?ٚR FjhDB @%`SWK #ucְll(T ك47^槙-\<w.J<K?<[zsSISD+ ϯ$ZVh̶v'{Քec EX p&K@B:""Zٜ;M|L*f*셳!d ^3t36+-PK ɑru(J1-RlW-5)*yHSyCׯlC>B(sue)Û)shctJIpZq{K޻q$a/wV'Z-r3_]@'LNЇ37fdҠݜݻx9MV "`tOaY 5ޢ[q{^([iiAFQmlF|6"79Řh:ocTV:F}cFfR[ը& #܍*AAyCF]sП6p;uZiV"yEnJŇ~]"{降{QzWϕ/ 9M3twgl0u@O.}lpZ^ 4>?3,o 6̛a"p\ 6WW7M\!%*ARݝ%nZCaa <ƒj@ߖ'HߎwD|Z3KŮ}GځP[ M+H.!덷ʦNfo!Vz. LM!u9Anil12nRC_AGM;2y.a$&-)}D| *|2y:>"J5 @O^#')W5Ş,}UϩJW̝LSA xUtGJ s뭱 )- f@^$RWiWkWX`} xŨ&bux0 zQӟ`7nto5 {h.ځ+6"w]!5~ehN48(<4ḏ˓xfD{AUBrhs:e"ѕFlOv  cı$xwRx+'2;X]>!(+(b9.3骘 #@ 4ƥ'1Y+C=Y6E^cL HߍC˞&/JaMhzOtr3 9be8y*sӢbY]u8ާeYk󈠵6a/z*.9߳,n [Gہa*֊r[-o78MӦ$tKhB 6.?[-ODSlTdSW6fN-%KYwF}jISx_ Ʃ[WEK$V6:}>kUՊCB g;ʊm!JGo /.*LO iV#v7, 1||аS2j)0 9/+&cß\F=cUhnY 7kW Ҕk}EwgIc)B欐Jx8 M$hǀK?%F{\X:}5 ~|aʀ iV]sߩxN۔ OXRD 'rm, ԂR\Hɑ*?(,Hư%A"x F5GZU&۾gJxخ*;x0W\@yO6b3(G& \XxǘlN6QTzi7iEyhZ$/wuH Uӕ.i'7g*2lIJM CPd^I0DZOX:!?RHF=sU z Z 'p 8.l|(Q)Z,Wg@[+T͛BA1R"{3"ͩZQQMO heh$FGkS@,,G.Nf{.|,팖# \u&.C^i68H.P57vE|K"@}D2S ˽y7lq eE|@՝ rB3dbdPFϿȗKpbRkNL;lfsQ@F36v61LK(T9V0 )p~k 9}kN{j+cB:u!]n>ZGBȜT ; %[=c[!nVV0 ?iw*Iw+qXLU+CނB b?i|S<2TW (%6K̟&U*/GVhJş2!ڣ>^kfԮ"5\Sf{5LBpg.sN:S9fՏ·O]0_5CR ~H-X—izCcL_=]bPAiCH٤8eBtvq`S*$ <@jb ܜά^?G$s/FCݭ1#g .:I.FӏX gV7 c'+˕I6c[&^% OEfEβm[Cs7[fؙO3LGJ:YNWť{bɇ-J[lV uzWq㞶-U8aݘxjIS1[_k!YwvU1|prCZ+:yj,1}TWA #PJGlz:NF?yH}r'' fjHɺ^?2t;kt5rZU6GLJ:7ڮ׋8U5}m̍CyT0ݼ$xEA>4y\v@w)[ ;0u͢fT_ Ec$+mwp;Q8FOC.`D< `ׁhBfbM 0R3Qϔơ9_A|¶(hYVXT>7;G Kp€n/\X!ɨimʔkׁ9 Dfips,)McӄӼ z8e ܝSE!J@fOిu-*f6$:,䲭]wƷYuYNM_vQjgjMNL$ \+o>@-F+dʍ58;d#VTմǟ)mcGf֚OҋQfpte,}d i2#Ks!Ci嫖Ų bc0G;O#Q0\E͆WC^ֳ{><yËsHT[9>-gi>|Y{3U L2;{_WMζ氚xF? a۳SH#|6>*&HK\NTy)`WN5&|4L/S;ЮP ڃP%kNA$a|-D2 O#,2N9˜RhHk~Lhkxy ǂn/mœԵ[b-Un6P4Mg{ØvP,4=Hk(0$Xsm{Ƞ''̪~Ya7q+r@Ǡboa݌aq{f֧u*xzM:c|j ,t{W?w\1.էc.),΂@ygZLb0~NCI: v x-eQ5l,N!63<ՔT8z0e5dnF 4$ 09_ El .2)P1'JlͱNrU$`hvm-(FՐ Y|?,\F1ӰOX\,{1mV*7;glq뉌u 5;HcJgF^|,IIԆ aYZX'ò䍱B(mUVu5o&CDŽgo}mIՖn+ļY&۷0ubfzڄ)JYp~\9"Ajد@خU'6&VO>べe"b_FrYkkА:|< !sJi΁êd 4OXL:~yZ8"0ar,wjv25\@%U 2^¾; ӴLsۄu '8l>מXXp3]+!UzY xC5i_HӾtfVr[/qŘfr3 @^ 3+cR80(8p:,8PaٷOx쿦r-6rbda4?lhg޽"StV~PNq㐖]XbqrφzD>ڌ#JT1Yprۥ2.!Ԕy eS ʵUƒ6z<\GkEgک3S< jH*1poZ`"t^r 4~&X᪨sU ~I7(wW`.@$9iWk+'qbJ'bR iK|8 !%&tly |w$ -ԟqvՊyS,bɟ”z؜F˲N/R$>@RV.rk6vHب~\Uߤr!bvӤv8eaƠ<%Յ[lu}k jvc}7W$;ѐ{/T'APz.M3c1x: ma$ }7C]'Si LB88RmjU=H\|_.x9R2G.z_f{;~̤,ZDBUگu9\ohS\hgU8ϫ* C &@EK9>`&3*joFOjs+d 89?l9c{o.ҷ"pAY`BvrE@b[ދZR zE3dQvT-"+>ߑ6c$,Y*KbhR ]|gv~Ed@𷭊2ff:h=?$h5b*UukQ(V@}ۧ=e3}#WR1 HxѿK[V\; c4r+9(6y#`@l;?d[LW:--"a<]MaIlB: Dξ$ PN~_wK*|OG{"F+i%[òdą:>^Y#w FyaXBTȋ`:qke6]Jd&nj?sհKC7qm[Jb7[O՗@@mP2_x ?D+ڵfjN K~e& e){lG@:|fqiwd=qc B6]E[A,][VVT=&UU-hG^Iw@^ĻucVQ4` 1G)‡j䠳(Ñk5z%,ߘQiE*=/IfȻw.ٰ$ =2Z$>N`Cs~GIHPU#73f"`@)cP*Gh @8M )@518sd#tc6u}1#>uL΢Cl6rğ_CRǰ$<*%=S 26EFsq۫p:E+GIH>Bb3(SNz´p8S:;ىi͒}_ C 赕%TˊbZXjU6iVGa;<]mXNLU!OW\iμ"4vGy{XjbQ>SS!)y7a Y)dVO:3K螣lʍ³c!"+iwlѦґBar){37$ ԑw9*5{"w}5#j-.R@n7|BYY`(#(p,*7M^/9mv06ξƮ,7" ֙QL 5#-'XyP?\I)5ySFlԑU%xC'ì9ӻ[jRLGlEжϘWysذ,=YQ`b m4ڈ gCX:hQ,3}A4Y-Ăx˚.㇗*c;\E?+Zud}|m?S>\E*zܛcM:(iR!^0 ` H NYvaY7ikyUSCKz⍓y޽07S| _#5=ܣg|UO*yDV)x,+ZU ۘ6s= _=- :jix`wx"rU9j řGvy1[Or6^BTU+9 `M0(o 3GaIɴO'2^S.&g Xo*c )?z*OHi8$yo%=\6ۧ&S.KOk[Bq#)D@|]f=XP%a8iYܝ$F66I%V;9sH uuLŦV_}Iuy3r9AFy2׆x/ݖ19d?BmvrgHH聿\ әɒ]]P˂?= 5Svw{u 4)|wG6$&.-*\['sUw.D3V chzAhYy7 >:ژa{E&C:\g+5+&bvVZ$E d>vvΨ>Ymо\ri)Cag(r]=uJ;혳r@Gwjdtcכ|m8Tx;H*^HU%4s[ LG||7'g1~. /jǨ([Q-4r2|YދK̚L(#213{7oi W?&ݤG0(#%_ҋ_BڜޢG?yg67N*YJwa3^!>uGzv..(ƹQSxi{4_ҿoįiQ"zkT<=1 hT^/b&M K\?Öc1Am{R9[2>)ƺP<7<2Iy\gjpoXpg9p`6-W.CE?oshסrbHGܠ'_M=!# 2 /I!]qGeM^B #FeFԩB7w+)XWiE#5. 6_/),YVAc]:wnN)A'YP0^5R/!V "6e5նF:U#a&S/;e5O@x NpA@YΜ {WADDstRz%VKFZFꕹ <Ü-[Tc#Eq=Yl]:8И!caDyQ=(G`̛#l\@Hn)$ս*ou'S5"h  Z)4呜]q+?o5! 37"}sQXꣲ;ָ==w-;yLsh8d okԘ7Â4_ҢtԢRU͊6Ɗl٘/ $1:ow;;VgAA*F9a n8,13/EРu1j;kS@S~7R47ZkʌTyz._GB ftrn.}Jljot9ET%(a%g>UJ)wL[JL (ۛ. ߨyL %m6+ ŀQ,m%Og4)4A[%$bxۍY^H^9i)EJsz?"=aMeɱ17z~0u{U+E3&.pOj>Ǭz!u+4bf+:{! kE,4-?24Yܥ~W%L+ g'Ny Aqv:NMȽajWD*wy|uS៭)pqpshCUR,$utvO1aIhb \[Ui] Lx|l[ozt>#HzN"k-9 P/ Pw-.'fi7yP9z I(~P"3RJ pV zʃȿJZ̒oM݉7`M$bA7:8ՅQ`yϞ3O[ Ԍ&!&p(GzieYIXdY xUNPkMvBRF+#y_>7Dg&Aa׿Zd)_4Zp|t43lRda砶6G*;ڃ *WvA܈8sX#\R|dMG_ _@k5r IMhMp*:amU։Q a]_%ljޝ1pzLB=@C8awe9Vլ0Qj=QWvaq%"G[8FS9BC0'Jc1!õbPꯪ>ēb[ѸVp:bM,#"{? L|1[̔y;<~#(iʆ#I|Dž66f"6BJ xwbLH;;:DY:Νqх(#̼Q̩ RTv ߲/7<7| I\{ұM[8oG~W`gh1/| @)!aDp!#ov`KP=jKq(f=0$ep3a"QB1V":O;/df"p<2AR>h>tV3x핞6  _E q?>,̡rX01 R w%5ljHk*|y5v쀀8B-8觿Rg\=0X?-аwԆ?;U>9t3|}&E:GЃÉ~fNxbl y+t~/*M4?V%Jwӡg/>{Ȗ~g=qr3?Gx?o0u.X>xE{|E%T -YE3Q>g=r} ;٥jm!t]([,uȦb&ŐCk9}UoD#ev?VIH8rKN9ןȷ<={|`@f՗J$s3OX/ح b5vBbePG}R*F&"Y]=7 a4AFŦ܅z] $: jF|&IivûwϏ0o{UH_siL͟ I 6 )^7oMnmi<jGIGp'Wc&VR(̌)hIUtF;勃sv5n,ݹ}_*0F,2D[GڜyW2D_, jklSK{ }௧sCU_qIQ_Dfdfe0#}^[PcPqQd$ ʕ1: )s|DQVQgt3 0~ /}3^Ob}獤$YbXErRVY@^s("\!S !/+pxׯ>1 %}ƇT#+ʇڀo lH7GΙ7B$3ѷmn5bP Z-MkDT]d;{Ñ) Xݑ7r{wL)ף*XT1b#x9g))U]ōxR'치In{EH4.z@CZ|:?҄"E*d+a@t%˳N]219Z4C;N-4u:Be{ E E&bD}޵TT~1!6Vɾ@ 7?zwJ~14WčɊ"Lpy=M+CIrJts!\hyz$h̀{ctYRqbnqƗNQn92:$oz2zL(~MY7zIiZl7yU UOp.[Hzh*|nJ~16*(Q2JBxĺG+(F􌍕ڢQŸP\g*7I`ְc)fZ+] ~ƾ B|c}&Uc}~Bb52efzBr] C}ꗁS`#R5qU߾wєW5* C=܂6f `3ZV;g$E 3A{\_B3]:! SmfV=E󇻪?a>.1-jJܔ1uI}zH?AoVM) +D*AǮLzop$]yοN4י7KzaUmFH;r3sU9[Z Xqp9^m{,՞:-׈y ,a3,Rm'zEerCh#v+~]Xh!dswhZM C~J3r*96=,qV8cʠ|lNj!\TphQ>[qD~"iisэ.e=z fm$cfڬh$''%-Z ȳpC?jD';*]%^kCҥu^zT *;ũgކ]~_Fgjn 2BED vΚk|m36Ҧ#ptK zTgg!{3!.U4=FbV6 A*kA]-i%Yr{'CI5ص}`"0Gsj@l@T:O:Ke_J)k:ȀkvT^Di[vqgk-^o1nz-0+]m]Ac 8#KjX );O~MK_6nͨcE;rN+qDho!y=Ĝh/zxO.Z &-s(9;n311fIq\ 0H1n/v;KwϨӻn[L^ʌXEhZ\Ƞx6`G7wx cMg+۱|ڒ]vu^{(Ddy =Ba寺(w* CC^CR  NYzgEݡM5xӓ fӿO(:ӫbWU.Tyck&r%b;1&iP͸d^*zqńN#vB)_u~ۇi`@5{HPcbarXSRZ2z@ vo"8 Ґn}ph8S8dHʅȫM ! 9I_Q߿\ڛAj}Q³uc[<ٻ!P? z$y}/&K*6f GLij o&:.ƵfO I4'Udnڿ!ԙee ts-l1EبoM}J\f6|8 9ۛ$jĮ(kcs,t!V>oq#qIh]1V 4S}>D:4Yr#puz, S޷/@su? -1gQ-bh{_@uɞ:bO/+c5&HHLH5Sݮ5N}hRKܣ/)9#ajIvQojǟlrz5%R]|6-#l<_FVK<=Rfzɭ³-n0E9kiY.cm7P-8F. Z䂺@5™[2PڇDCǴPM 9g}@bf@Aylŏ%9W} GY?,8Ὅ)p3뾿Jlx C1,Awo?/gt&ct݃"a-MªrhԕPly.#}ru( bgQ$ U8P1 ដ{R;Gt3/RY+cn]kb D֍w[ 0q`ioh& Hщ|n X:0.ƨ]r;lz̛^"I$zV. .5`Ugn ŁQ5VEvbe)Ýt|j'x+"^at$K/չJ) m3coomr[j:Ҥ}.Sf!dZ1>rݔuXޟ*=֜Wkxn#b%ӃA3 9*ݻMZ޼6Q4G6|mǾj޵%zvR3Ƌ;TFiq^:1 PGw)2T} U}2n/ia(As)mi#o~0#aVtgʨGqu':LƸ.WԻ; 3 ]a5<Y{_!ZWR계>j\ITN'&fJTp71Qyسcwdzy/ˑL?Fuj>J4% -b uʒ1υb7 6yb.Ӎq $Lfp9M0b SA#):겦E0]aHhP6΀'YF2rD,A,aM4'q ˿to**^Ihm4 {_y} tt=\w.KOZ9CQ ΃k0~" s"ts`:w]#ӆ9 3QdiGM}D0+^}"OFH(-ŧ,)JEGTjzwǪ+BR䢳oUc' ֡qG\KK[!uS $|w X5GOǥ! Xَ iM$@‘:^ɤ4묭Q75MR_OaoC"qh'T9ØoaJ$XHC,nl)>V_KOG`wsg6({$ڙ!x\-b }E^dt78pMCmt인HJsGS@wpJKV^):Ȱ&Dfś@D~ !]hr&yl'e%巚XO22u*Y'36Ax469gDڻ2(~=marWlaRNzuј,u*|{W TKh }9kgc7&[{5MnnU`*|ۅl>w$ad=a5v|EQ o{{oU]Y#Ժ쉎*նjoSRfa.Ŷ 6dt]<\օjAiusXH5pzWoך%omrW 06MaS|Qf:*}39aBDS_rfW+he7p[B ݿG}^G^: (axP_07g:*fd9ͣP9և\UW`ý5tLuR0wO$ yҸϛu1"Nł#AdA7Mtjj'@|IlYÏ~MWcdJNKo'[Ǫ}?5%I*Ir;<~N_|Xu56lƮq2bP?7WE;Цjn\oVq=0{v]> DHP&iY^1I-]V_p]xr3~TYo 'ͶOun3UPN7f?2 _R6U +";?IGGa BJyVͣb@ +TzkJ6}F{\<'$δ!Ji  \[62etK92VW2=`Vg!~̤wA lV$`X,/<2@(YN۴z7<VXMŖK #PԸwu'gUMNYdon[͚'e:u|BO)H~s^?2#^E!tÃ%=l*jR!o~xSsAdqa7,w7E+Јb7R0D:Ѵ} EH\&B%JCN7%eZ/z<~`_3 %xatwZc!Phti")W HrMQ\_sFRJ=B=w§GʔI,j{eOk8Zh Ex}O.,|L@cB&=‹W\QU.M)vP[uMd 7DX>ѱ8~"aSKM"ž^n|ص 4u5n"d0Ӭi=5@k>A _;D{?82Bеl-#.b<9.sDQ2z5SdTA"㺂,lN} 2T-euug=am2opLFhvgk@6ZzXꙔQ)9na駱|rq½2&Ԋ|qTͷ)Z_3'qXVGx‭uAtP lfD #U9WF#ТL] '>pZ|9\ CYD`R>,r$ѸWnXWܾ4S-h(C}9{h_yy`h.oͥ.X>1^ԛm8qIdrȡfuc7gtv){ƇSVQ|[ZDp:}&pE!ORvZA8kyZq}0H9 ߎYzΒY[}h@+wm0WɝD2 2ozIW>hm6tJ -)Q=y' "E*D'pSNxd0PYMΔ%ٯal~`],2>?W7Eza5Xf*v(CW64A|r ttTt k]HJreG4=*A@&Ǡ%C %yjNxLSx`!6fi4Sצ.K}?8l?rMn#1琭gԀ5FsWd w Bʇׇ?<$Y?YdbSn&v`c#<,>íh1nڟ}?O 2&+gX<~#~"'hxXSFE.p\ġmo%zA<ϩseЙB~J+~+XkT;:20~1 |,ij0xon V0fEll-Ol" h0VضT/{8oPS-~<Xm# t+ /^̧]geVQ8 }xri׎߈- 29IM#[R{`hrWb'l8M5uBJ`X QE;BRХ:G{W~q@'@Dwe|j,Q~ 3I#0R@LQFahh|-dW ! (#8_fCGYlbod3fK,W-"jbX{fDws'"ښ99_wi\X{+ϊ`#Z$RS2NE/ՏJk !>Z+@06yNFV6ަxͷE @G@:MÝ5%@8{1o+ "9l]oN|eo"kC"r4uaq!n0%X="dn]ip8NWl"+x(g*dXU1VsDuM)`Lױ|p RR2$`+aG?a9W `pQ5o0 vTz H ׯmt .VjAiʨ8lܳf y?1?jOaSEef9gZ֞~bI"`bt6R^H}crH>zaH(u9!U9Efxinǜo yYlf*iJR`0ݾ3F`q[(d<2!J% ٤UF ac*aD5+<DYFug&_Iz5BMKƟ 8b7ś\ i7:aWĵ֋ٱݚ. z[w@ߑB7X~V~16U HP=*xaI.Ilvnv(צTU{k8Za>!3G[u&;$UͶ$VqSe5s nBrem[}PߙyWy[]սR}V{) mx+ӒhMJ̜FMbp&S-:hB2|9?6IaEZMo)RL7^4AdxN'+^uߒSubgv곽1Q>sYI$E 8B2PUeA{՘??Dk}2-od#oh^/P`!3 0Jݘ =%/ltw H#|BQ*\$t|48-`%LO>nQ@8JɎF6{n(: n'AeKio_G )֜ykp5yo,fJ.|w:/c'dphqrOY;oK  *wa4Z̑5 6OiܼoN"&k[j oK3b7"Qng163;vjpFGNhp+o(lZ)bUd{ Y>ph=7`IqD]}plū1nЌ5lmxqf ޓd0 @)G5ӇCzc%6 ~rҞҨ^1dz@R3w f96vЦ,86^ItZ9T$W#~=˳EW9XeeSֺ]DtKؼ¯n@P;T%> ffPp$q\O5kq%tFMՉ+N*ø%KGh40_SYU3aPl4%@SvV`Q5 |s<-v2dB4 ᜽Al~oN%|(weExMtPNB`9*19;;HGyRLZpS lܵ;)}CQ7su-]ڣl3#36 ,lMvNmǥS#22aG%GԤĎJsڻuM]4:yj1󘴸sEo)4v/_H?0 }7Hd ^><0uprϭD>x(5n9b{8yϿXFDoJUS3끹G)SZ=e%D@n 8I:AVX/;Ώ;xQ[gyR꠱ "kNe&cl¹*b$O@qfUuS$ɞ\Vܿ+Q3mc Gwl_jQZrE"gsJ0?\6`u-0+WEBЊVЉ}Etn{4*zo :1>֓^j[F26%bGK$z`'clZ=^Έ$TX#S-BtXjq=NSEƪ @?Atb20’ 8|/KJj&+R~`"IJ%, >)&xJ_[db-L%9Z*8 >/m+g/Zv-oz[uIOJh9AbMcѤ)[,[dOu ZP -)+nȏҳ &/߹z҆b xyF;m6u !'4Rha~bT2psǓFu&[. d#EI97%AɈE_|ʫidPݰ÷ }ssIn8Vn0_e(2+JCMXB #I$+)]N(x ##^ҫh@oc:Gc(it`[QL@uJ@88G J >З" *22$})H 7ANaҒBr fMrϢK/n"AtZhU1~~!Flhp!p0B <9>r0OT]SȔ:(ͷ/%x[)PíiVF?j"EdyR;)2+ <d7;,HElG2T€lCx'۸:K'*sĪ;vUu% ٵ Q_9#h:SfԶd@AyzE)#,¼-l*<674[vr&kml4͏{iigv TlE= vBB-A leoųtL[owR?5\զ'~;TI}U11Pip')ό@9 UY 1K'$]ާ xSI(^!)%Z[ צiiΘ6j13J"ILҸ :}*08ʦrmXTGҶ)ZS3*Q%WN@!L@ل)rqQf~9 z+6V0\J.sIO:{P5s;<= M"*[y?2c -1O#좐^ >>9 'jZb<1>FBbxhw#71*i`k9Gl^|*[ՠ-D.KW0@1"4$&u;`#k^@tptq=k _/vnظ`gUiw#:R_3k<3<kx^KQ1Hb52@69hՕBl%Uv]g[IHV+`~ r |A;yCO]ýsyEYugW CJ ڮ0%зmz: M)o|6勬Pa޽ q"5 QGk0Y'd`Sa a&Ve72Oz: v%KHgFc#3’ #Eܖ3&: Lwqgo^jc';f*?ظ7UqF<9q͜XkSծ\j-cyp%2ߏwQT6?Dh񇱜d(*zU[L]I4V&Fa`jc 5KcXCwՉ2&5ӈM0yw2a-:TX" Y!;pWc@>h1W@M-i~Krw-Veȏ4dsKe:obo.GxXK zˬyg)bo B/yWk/:|^(K6d}NlKZPw:<"zrӛ,yvّ֛jNFv_f[OQdzx`PK+״zS9 }*0*ל"ܤ7qi1 6sc`@vOOY1x]Ϲ -#O=(IS?ˮrٽjZrzHuZ$ UbHhc>|2S5w eT%ٮ;5 '5D1k+v"X/V{Ϯ4Jͱމ;"4q(r[ aAI鵡6ťQ,`O)^=njv=ep] IpKh 2aPx7Y9=ԬDOy+3S-f90ФDeP;DIdz3n yZn8W+u ?{Y/KKJAXfkp;n uQD @E+'VfZkLx2#a2xmqWI>J~ +x~NI @5 % ?>2bRDmd?P~-Tn`7N_lqMtw+STg_@mm}إah2__mu,CvK얿b X++y44}Ekq[d﫛URJ!3a`*\;kX]ܼ,?U' ŁDvDˤ]Nf|W,? ?RyWĸN"+~h]p';n2M&EM8NQA~Jπ)]WZǤn7kfِXh5.00M$kwY6^G;o{-wج0&\'MOXl$!C1hmZCn4N\<7VeQpLZ& l>~7M+߲M)8TKEK52PU0I" ʪqt ꭯V*@QQe}]{!ϛM=>YǁJrn>B`]揰ks.?VO1[x:J,Gn/6 #uĴp]MptinWep~sAkϢ?@aXͭ6[BfA@!6;ŴA@| lWys!#['KcReOd6]z]pY7;}zJifA:~7PSf/R:\cۺ(fb?gҺG8(vWaq 6D 8ݎ'ƃv*P!ϓTOu|MN1"ScG=hH;@>,f󜻈J-P~A&`YS< @cU<fc JqZ㭪fVo[c[.PGf 0m[ GO+@ydå]9#VZk՚0 ,pTi-qЬVs$1c'j꿔 }xF,?1\iDE H~gw!b:};_1QQb~I@4r 9G&g9?ؘ "秊f6(baI"~)Xk̩C%M Jy]/v2]hb`ͣP"\\mA K4X0g49"+zo3LQPZzw'VfГz' Pw椸aW<(GByytF8Fo:] N.٥l/ZqP}>_hFҨך$KWb$ibrQhrpFSt=Y0Uԓ.T]_Ϣė A#vGk*i9H6JyWֱ}o< t.:'E;l?fhfVIkL+V:\+,TD/K~ȶXJbxis23>0Md/z#r>t8M7Q[VfH$ opW>2/չQ >ݥ 9͝J#VL;i$ R] #Z5J/3uC?> V%jHi&/MUZb->|# sOLL禈*ɭ[էO!0{ K(BjI'_Dms0$pYPHP+ߒf kr>e{tWvYY6̶Yބ xg`ٖ$RMP~h71M=L _^e$?]^V50Ryk/; J8Նepli4Msndo]qnHwE̍-GMAW &R_MK;kh]qXQ9z-oS^xz~ H@FP@֏K6ԕdQb \|FmSK?pwns l+虎ݴB.=C11:C*_'zO^u[H㏎%UOZiNJszB-l.$8ʥy?:KޔaN׏ -8/ȼ?]W'BZ7 ۻJ+6_pṋ e؎:u\Mn-R,9?T`<` t_ʒHbLNF=p\ma1ֆ7I=AC[5Q8ÏAj4zX>HwؿyHfix2erʟ$\sYG.F(@\脾#O^$sǸdyĥwO4= YJMgW=d6^lhBFi%^HRe?'G3Z62>|@sUXtn( ?R{t@E+`g|P@ DdV )X1P[ب4sFWcI$ !n K"^~B3W`jJwam)30_ªpPX$jI-)A3%Fg@r;=@p(Q&?4{el5I(A8 &Og#18}Dh"==v]<,[|KxDm*#g=FO|źJ-BVK]NM M\oV ز)BQoͽY}}5$jj/Ĉm~RIvm)؇7~RI)%O^NDWWR9Z# }ubφqDg5bofr*jʼԅ",БN= bJipA i9|+[C sGČxmے3v"UP4:EDd'd]%.la;|_m`G8_2G?B\0n< oN'^YE|4 ?gN\sd7ɵT; { >k8|[<=%jQ7޷0ыc03}t _O_DN0wDcW,%?6Nڦ`]M}KЄ%1!4BW>ƵAdo//FNLN;>!rN26<0PqĎ9z%4(5,ę|&C&<î ¤?j"l`XgyX@T\E,kBsiH)GtENd@G#y֝`W"?1/x 33IY'ujĎ,q&dlc-X|Q}J>7†KfG9i 4]K7 qj[%usClXω-n'DPP=/v 6uZ4hI(% v{pW64\_Q,:Pj=ECvBo韂1:(|ex I"oX]BsJ^pʿgƮfq3ϨAfK%!h;=d7;"?:6ܱaA$$6D/Mv_UMYeg9_X:qGB $ <"J96])$,3e h~] @[ሠ-L 'Mm)C PNjXo(ukpl5FMSe'|5H7C,x*A +m)k4k ]\Am}{:Dzއmق/G_de8 hPieMGjI }rEZI{jhs+]wǯFRΨN~8(P_̑Qq$NeGsZy|6S> =R,?t|>X255-)IΑJ:)WȖq43:gVGG< o[F;=SA#ʮWRͻ5rA8?q9?F`ңJ`I R ѯ D,ᵾ1}bjQ&Mih0[ɣ֊lGJT'wH|٣!Ȗj၁k-mH2N9ȕei64~ XI$Uxrkmv~ z|RLfRorwXSdN@&{MjУ?՘Z4ծ"%qeP8IZ-x;hfQHf;QlQtm|Y,#Gmɛ캄 _]<ll+ ;cOzzZrks\3WSEX۰eցp3l7r05=覲b5N_Ƕ9Qe$]BФxϺtNnmF6J0[좂vF%\#ʀWmv؋U´TǒyЇ6*Qbj߱FTɟVW/)rnʠ*&H?&c錝`Hmtq%„/g7Ռ"`YPf/nhq< +lWҋ/=\ƖvsW%Tp+,פ~_{$j/>k4/.KKI=2f64 'wgzMUUP̎Y./lL8REǛbDoX>SWQ4n;+sņz!( @q5?x5ۈ׈TcX6bm2#斖8m!2WgW|-뀝tCwzٿ1jJ3cU`m ajp,tWCA8˵E4=7"('|5-6!T?o#ENf"Ťj p< Q()Q2}OGB YI4;GFT!kL]ZAnY~7>4Av ?cDt`BrwLnX;16FYRVM˴msNc~˷wkݗnR[B#jrdzӌGP#G]sdfbQN .O>J MJ:DGJq2+E)e߆eHLzq#ٓjvVX'2v+-M`Rvgӫ͊]:Fw92]Ϛ6F▂j pyE7^,Pc'0 ) ޸gDtwrd'(V9Gճ<~_ v;NEt-J}8[Vci`-JReD)]_b5F:YĦ/ w$ÝsT`9jtAjH\Ĕzҝڟ/6xh#]4 g< _0~ i06 m^Zx%:Q-bcf}8-))Dg00d.7KR9 ͉oA RòDRZթCw zT/4Q5H?+tR=yѹ)sf&^W{<Ԫt^t}e47L^aAUglړByAo=w%Pd?1 t&ڭockzIӅs0ɇtrΓJ|l-h 梿Gz(s,z]AQcX熁KMB*ICR4:MkCG+E[}^E|6:$HǶNLtW8'2>ue~,`[.R7L5#n{=`l]g%-#-lxr8+fTkt[_ +#QЂI[-r%,͛aZٗ3@b0%n;h}Qntut~ Ln.[^x| P%_2S&#1ø/Dl<&. 8DZcD&KBHŝ ^P3:.\Y>;w9"JlsН{7q4|0la{9Ůe2f>cå[R |nPeb2ҁ6xzM1zL4W< ~aeoSp'n6vM|N<\Z6ӼԚ_^QC8c8m>M WK$#*U<r/,_ޮ;U,::Sv1NN¬!3XTȊ ;7QE; kd,ԡ2ȔxĐ$VavqoR]0> lg?_ ۆ'W zWq::Ɛ Ȫt5=f nMcuKnϽs#rpcY:+H?Cz,0H.,ƫ#5Upq4zRuΞAM:/Gܺ\/;جu1ضw0WstHURSˮv|u5X`He 8:&? xlH.9巁ᔊI7!;;Er9qCMT,Ѯ!)-!F~n{`0$j[xW m;4A[6˭cw)4h&Frc-;A>\QAX rbm=.޻G=̚b|,+ǥ}.R:vHZ'aB)>Fl:6\UhUZ =c94şkeӽoy¸%hRȰ/IC%򼊮 ~] %ٰ֤'@:^EL$/auȨM)XדRW:<]gOv4L7ws#) {D9.%V4{jџx^{Cv9<{wt•f>y ʣ@,?6c1j,<_AYNJzrAJf ;6wUEdEG㌻ J/9#0C_hCm߹Tjdh_W55TQ-ME5˦s"^D]R$'d/Xz!ta 8{/P[GN3~ ad=g%RtSNC۾ٙgݭ'.M7xL|܆|Ҵ?0 @-L oTvB/exƻզp[_Cd[_Jz$ ,fmÑ+)ORnVk#uPbe DYcP;W|#<;(,h-= 9}x<^XR( -PMQjp7&O*3bfZYV6J<$z%̈@-#RV q6Ђ_WS$Ϡg ){1 4keUcV*+JqF͈CofRѮ !ZopwT>2w7!خDFTгOG)t̘ |Ho~T.J#/G.,ߖUά]mPj '|]Õ@<G(1nF~Pn,Iэ0]SQBp7}rz]x\O0ggQP'lz[G ww:.Ke՜b ݩ[^A#KDŅF;}M : zmp UEҕآBǪ0RGTk&fGFژp4HT[#* #-zbJMYXZd1iQG3i{S(K)J2\5l , ozEik~`T~n)F1C&e.vvݛĥ;.9prnڊ8r)%&wnnOcAK?+02*CNr}9)NXY?Ө94qc̊bŲMQ] gt:V MF\sE޹O\G@r@QEbN zopFw_eF75Qa#=[8cJ:{K$zSZޚHsưUHS -(i (M%G9hnkBNuR3 d*'P:PҘgIbI fS'6ѝ&Еcjػȃg)UޫuӶpqr&(nɑoeC$5PWa`h~wNjH{Uo\cJg`Xf fZ-Vz#tZQ& iqad@W7EdRPT}6`|v% I8GH]- μnlVe(FmH hZeN^ˋ2 *#ݓv4>ӏBa730d8J 4'ym?9p)u+D0z1M= aJwnc`}WGt&7Ӛ2 D DRs>=]5hF؇:'po(^:`EPN<04-NHg UfۣϘkJYYܪns#ecUjlt1C3/@TGCOt(&1]\]M=!V )-$w辅G5l*X|,G@*5 )p9VZ5CC{ N,6g~ CD;ߨQbR $j=" }=1~f6IF9nn1w)AɅ;ѐ<|ݪk)56]a#'s~\:9# y)eo&e >AGJok GOPaa(V&_ s.7T~췵%©7L%Ŋ/*Жk£ؿvy pdk2=# bZQ I\o8wd1e Yifyߗ/w1kpS k=ˍ I(DJL՝ M3ݞz @ժͳ*U]TOy{ɐlc9l%Ɋ DDW IF2@)>XtRBߐxS90싪IR<= ѦFy,S [Q`YR氁èK^#w1`\*ާA%ӀS4-Hƍ0Aol$e?wŬ:Rl'| ܽ`JB(< (~mDpIrfկ<ǞJʄmd$ɽ A7΢"{S0߅p! rD[ < E I).-$'cdFE[8F vgH{bѧeϋa?;f-e@O-#QS%ί)F;7 :z|  (Aj_I쀌:7D7$yʗ CMWǑ6Bn.qpp3Ue5qh%D/1]94 ) ЩWV> d#|&{ lccCzkPz[KQ qٚM>s((tfael^$;Th-Y4KUԒI2/#cI =[b{cK9DSBQĢJ4dEk*a5flg21@G\YIi0㊌!dSG_ äӾcMφ/cD7\six5 /;0x(OҊ$A]<,;r J8Xt]V.pw~k|D=4gaS_p7vYTR%}aj v6F;s12~#kċqլTK!w[ւzKy`+>M3K\Y9Q)EU/( E~KtӸ [ Ԗ 7"{kv<̳d@cn)/SďOuTQЯ_)\+C'Tˑ{Ǭ#NyĆB|?,('PO&Ga<(2W/+J-Yfuol;̢?-CagKHJ?~Ds&C& u~b^[G8p+.ɈB-굁[0;#:;jhG)BԿh0?;,qbƧ>wXg-XD+5;".4fp{vL!B{PS5JE=6rR4FPu $ 7+(E׆oN6c ,3d皒kđ@3\0CY"5n ׭ ~uf.9@cD3+,{்LM Lm_˟u:.!*J9;z05wGndͳ6&{Sz J\&1:*@X$E!qA l^QǴGB0?@ߌX%?,Ubׂ"Φg,  vB#K @6T '΍=P8H47c#I;\6@8{blAXU5iu:¶qTkzoq(Fy3ͤBĕH:K38ܳ<c7hHLnJ?./J5p/bP~,@|i_Q/YL3gw։`2uX)- qk`۽_G!fazZAhܛgd?6QD{7go }Po}{Y|n^P @q'ZH=t@a6n._fpXX|wسZ!Xa0TgN.ls(8VIhAʃj,ERt!eJfHʁ732Vxc5 \;9OayF;_C,a%̽mCD"|Ӏ 0pT[t'alv n&OuEEH f1 qFn& ȍJ&WQkSN'}ip}ʒ):TD](;5(!Oh(Rl'l@rb1q܉+(]3f(Se]#[?{ܧ$(rt"1bɤؼ8*ZǼȣ:I"YaLv ӨQ)~-84mREGҐI_sx  [Ff;b](!UP\o*nU*ܧ/`7zffo^6dƳFhM?*]D=&}_mɠdo3 ?P&⅜kLCmV޶Z|0LSh:jܞi穯oTZ8f/̄#!t mKE @zgL!oj4+(@v'#8;. 0 z]tmb)C(G~mٵzU @0 Fk72p4*<ڻ\N'Ml-LA0cjPhM[}]ݍ8.&/+̶Noam^"JQLf~u 21iz{_4ħ4{Hv`Mj.[J jgS8"5-SX\S'|hI!3e{j5rg p>eLRG=bV=& -Iu:v'F`L$ٴ0]hx 6牜[0?Z ޹ѵO8V{$Ns馐>-SԀ72@1|w.x 2>7A3:* KIɩO(u(, kwu W<3T#4ԯ6yCZXB8 Y/tkf}BA%FyDyZ(q璑X$/AV=ոVwKDr/#!nPL4|oU&uQ2j%k3bW(Ivu= !2bJ{D.[J5}!.uKDzn5z ^Cy6}G)1Q`:;kݚx1Yq.dFÛ“ۃ$?  @-Ixva2*s큥7G{I+&Gibdl v̮X&GR% VlvC㢎M-^i4+D?^d$=.v0|F"Ae7Nv%GWkYd(iaG$.|fAzX{Ai7$z»5?-b) |=5+rx! 3o ;:KadLj.da$2<xȔydT>JiiI r*0lCYp\ p{5jnBr?/1;!iEA}]˵' 1^uB2wHhU(QA _xO5kqľ2U6ݺN/kmޅe!>PgWO'%/?/6.&=}R ^Z9`&gi>K_O3Sjڡcp-26fq0%bDIN-NurHwG@Ѿ>WKA>Gk+{s5KW,N#nQDiU)#C bx#C?-|pS_ bx- bP"1D7ɏ|SyUG+"7G R$j((ܿpcM"C)π"I*S3E}l_R(V`*A7:-XcbI H|gyt'S *w_[m{]9k$Uـz֦&~]M\"<$Y6/p{j_|AX_~^>DkaAD|Jt<Ž((Eg|P[mxӃǍhCo~Pjnz[ɥpsc%U \HK Q H.ÛɌ.ZPM!;E?$WWlУ{ꑜD/oi]@qDJt/_qx:p*3w搹,B8ʬ2TR _d8N)gE[--zyX!Pœ(Rұ ϸogK PPT3scƵ<L:K "/ފ_+@b>>@]W48rTéA lL5XI٬vS-C |B]K 0hbQ\-p.r)d5}5}Ȗs|m*<xqPtpIRI1aVGF ].ULїT/`Hg< OxXVM6s_f-XIܤЉy}'˙1swOrʜ"تHG.L_o=lt:*x CK|fdb٭6VbMwb/Cf[ &"8.M82Żks/1c퉉XR:s3>̯HeLR +ȪDt u+,/]crJe=YY!]Pq3W%wJa6 OVt-$XoD~m* RJ߲/.imRF%G6){eZoj $h\Z@%GND)x{nq)kt0QC'-?~b(,⯲[Y R )/*<G]QAv;th<pW7Oyc08ZE1Z*3ns;3r3|W)]=c:*.8 I*]fea>yZ:8vb>_WS>J2 ^).i-T(E`gq5Z$7Z:71.*MDQiL]KM^>ፅɺOI0H*-Nf7 6Et QO.BLw([=Zavs F3apEkёkzQAe_Ex@'V~Țb= -:|1<Ľ .(V;mh'V$dnS= #$3" "MKPP; r>ˁ iΖFӰ]䀀LonoTB,"P3 ^F+K{rGkfzan 0|BIѺ)0xJ|6"FeQ59&9_j";&rz~>a?ík?%\`FIOPiKfBYi(IҖ>=6S}: YPzSb+ew* l86)y ò:l+ \'=Z+*iP-p1ܹOrxJM|"@=PcyPo^A@<|*hf{(8JgLODCvr+'S'Vjeiʵͭɓ:_퉏z%x΀SJ˛&Rԥf) 0OxDQ붸ޯ?!윌9(Z*Ymn?.4٤㰬ʩ=:?i5 g(̍p:T@Ũ砱q31-x+YE(v SBTӖI ʵDA{Rz 7 O瀗LlNf[1 WhO4ڎdw,R-RmlQ [u==2ĸWR.%8ȴ2!s1QĻ9 O`~ETr*w b*|f4?@o>_SXUYLQ=0R7a% xǐE=!.+ꢷCAk0Te8#HdAz5\իgJlThdo_˸r#` t2MJɰpx1 OG]'vB!~nҶm+X]b4AܷG%gw+ AH+syPiz3xm GX'R{/,o/gi͝e%+ָxKݑn`YmX#kIn!M~'9ckI&s"bT  E٫T ~(p#^FŞȎ} B6"JB4"re(M Ct?Yః76MQ w(ʵ!-.KY(]/T ƩxKU &#]\ _-(33(vh% e )=/s@'B5VDa ~?> ?K >[4F9gwI*D6GO<",@!hQbV{cNqp <{1ok/SKLnRBSj cD߷YAS3 X,3)g>fɞuZzOv1>6!WzFiLr9]!L-PT;rK(o B~x.3ޭ(W̟U#'jɦCglr?6Ni8sT!mGbѐ*;hKwKwrm$*]i̖oӊŐ`r|GYPo0H=+RK?=n]F]͕pŸ"N0 @_}ŎFZ7p]<2OChӦr;`{PfP'tճ y9t<)ΎYj,J|vWsYi#P3&,mfW<pc^7f䳩,ZIfcj_kT+ YWI_|titOHCIbrgp ]F R9ع2>d\#uIÎxcmknV Wu^ ~G!*+ZcN u͛sh}G x&*Mߺ/m~d;4 e?To{UŌd9HZ*`:NHP6e͜&݀Ofi-mPP3(mxtr>эp}||+mNBvW} f.L|H6wzos Dk Ny [ZJVG=^޾#vO.0~-<0ll{o%R$~77Jy?gP;ڛ9YhEK' DF|F,bǑܤĻJjm5Ak$Mf\'Gʃ$O@E=XKEjb+r~ h @=rT=i9r8:U4c&t쀎Jz#L]1.˯pG%$A ӢThiWbFdHpwzO 6B˜t'mZ 8FdznI䭶^!lZ(CC|WT"A,[&WECPc;ꎗJLu^WY-;~zc^.Yw@Ok ^Z< I lQWSls/MYFEKt!,9ݨֲ&Iu+#k獹`!rMRq:9R쀐ճ"E wyNA3 {v;/)3}DnJ\ZSR "b 2>P1F.pVd,ȵpNS=1mDh7HQY reiʹd (wb?C+e)Zp> 3: \1 5n9c\L4ju쥰2sl $HJ8pP%'}]YΠoZ-T(^fhT$+WW<.GxH_ѿvn]KfxCP7vU'.dLj% |z#JLXK!'rͮ'x7,ˈ:jXAK+`lۦD+EnP!-Xن;-}=W[__Nf k%eH!o3T1džֻ&nԸ{Zg'5u8j<W)` FZͿQ%eBNYM?m7En4MJ>8vH܃2b`V^ePO93"=<@Y숱G^"(@@dAF[5c=t!YSkvޫ}SZT }.k;{_MBhIw WSmFiHcKsі(+90z3AFM> NTc,Dr,0XE@67R!W. lK5HK?j^b/&23P7^Qұa$D'ۛHJC{N`,J5j}3l4 W >4(yՄT>d0wƄ+NAѮɈ =ЁL}s|}v<3&]t )"vU'û9"D92&m5`< E̘r$[x2 ^,*zsͽz^grE}dKd1#Ҟ6DB Ѹfz(;[Uk`Ywwc9 =(X{OQ㯆~HYxޭ/w>6^0RP+;9sEօrl;@z~ GSR{9g/^b.p|e01VcNkņ FLMcgDPO,gn0f%Ȅ%+#~%~*^vL?}Z_s]ϐ8;;e=]uz=P "DbQ <+}i k[OrVZ,Ժ5ŵ hU*jx[NEOAY܉^$D=ԗ};ZV. Sgjْmȋ _}B sw|²o=TO爼F8Yn )V ]@CDSt6~=a%.jPw5}JC'm/U.dTSdOe+ #7$|G堪@~L43 difN?9)tg^K^oߝfn+EyoȞ; 9{ |bV%RPmJ;$W(=Bf@N>Q\*W357{V:Bذ.`V"`87Y@}}J!iA1Q;e!42ٶiAR %nj%{3 H] ҋHuM3/=unmԓ#*#4ӵۅ)3碄H'jIsWyII*%z8/4TfC)gW%Tk٪7o &Sb}WY<;_c7:ỹl`[V,coI 9O#T.M@廥o`Z2Kݡ>ϴӁ5$@@Oe)C9qSE ^bݴWUU_*;y'H5H](Ĝ]] C@1EبExaŞiVlovvg0"X O K$ܱ\D!y'>9.nUL?]0mBR_FPdaZvH7"Q;ο?LXAWMڃkt[/,7(xh}]hIT%(9[rl8wqݧk,q Ϸʆw5Oo"q'|*m#PcveH]xg;{"zăs+{d|ԗZdxTnYT~ոSLz4QhtIk j6 \K8C9R=N,aa hJ_op' A(|9 3K qSt*w ^J.&V=ѡpWfFG )QмU24/80X<mQN!;Sdm]-mo36>IyL0\ >.4ms9,]TCDW(S A Rls+AJ>`1ŶaQ(q|X-AoOpT\n>u n FWd:9{BFl2*\dw L͋qK&)N;t6X3ZsMWVd~/, ^L-[Pn؃HB2>߭y IH9zTKP<ٖ'Bp5u<} 橽1 d+׵5{'xDx4}+&I? bwGBHp*# bOL. FM f߮CS;ճx([2ITWjOhWb4r5ܒ?ze޸Q[ܥogWҴT ֏"D;qtIEk'5Wy8T6UABmx$nCR4mm.xLk"0 tqt*eݦ@rWsk-RL_< Y=AMJ5:kAWoYUq1Y=~[X~^ BdUӯș -Z&_9Xhf戒5D5o[ՄasAt[FǎaC'pҩP㋍$@I$EU7H~] ?9|G){M. AvZ4c@9w9hƚEvRAeAgBݼG@|:Rڡ{[aH<&Yvul?pA%Uhpa"Ο{J_KRm'F=C:Fnu?Rx .ߥQ4h(H0Zp&͇+w[U|l4{6¥4R-r+<xֻOK4)(gYg3>&-T9F i|[X`8`H&T6( \UV 5+_qby[>q>[_DEmݸ=e*26! 0cI|aˋlPxL)'-*Y.~h/"OCpi050!ېt[Lm}dsJ-BC>?xɧrTp b=Х9r~$śXir%/Fu2dȫk<6=]J"CSGLo!L yZu%_X@F=x1FcȒ <Ց #kᒵY$V֩0icmgB9tQvEB?j┭L?9)2玲CB$9c=ъ.P*o*r4FM, #xu|ɸH6<*Fy7 DcfTLC7:#.^(s'껿)Vc eܟ$2-Aևdu 46鷰Df+"{p‡0loĢL3 /_LuMDb/5ntIEI 2n?pEH6;9Q֢?pL+[7)K :9:c+d{ڐ2 -h!l/ɯ]nI_Uh~Ż23hY;,%H[.j\EåQ@A.aJh0R#xkh ZԡZHt?BS"̻`mnQ"dͭF6#!z/["bS[+B-P!6zخpm^=^߹A& xG3OMi5 @,.Nx :Iwݝ]!9pY;,M`O*㣳ttg,F}&V͟G \ן8#!>ͼ8u7!'S9 X1[ G]sӏ]l;'ҿ`}l - d 8 \,W#XQQ 1hS^fqU@s=y@25Ϭ=$rϳMG;8KDWD\kj0/'.p喴,HJ3Z#ꕻcDL/jo׋b?EN0(л憗gNLŁR;13MR'k!?Cp۸G RD= F/ّX9ժ)Aݥp^4>3rƕ6Gksg]Ed ȟ"jPپ^Yb0hHV) bT$"@?7Dg/O ?*6AU5)Zth'uxp)ߤ{'>v[wvDA{a'o;h4y6e_>qQgϷHB6Ύs U1pNaB e"4Dw>uu#`DkFҴXvM4-E=x̜蓛T ^/khB{G4t2.XѽN}(( \P2>:ޖ쀆ԲN:gozu}"WK/zTQz_-%0?sR/Wj/I=k\(bk9,ֆ:˷ s`6h*U1 dâ^(OY7x vZSD'yC %ƨ/?9"j45a'Hl0ӛƝ}uQwjlcxҕedݯb=mbj*25'!oXn2.9u0]vlHpvQO7e[_d9f|0L%c.$C$Obb^(ðsjz/ꇓb"|]V:&a>xKi5k${c0/d+WLЇl/~c'Rb1HUٲ&Sa >oF F0eF 8!#8͂@N vOk&=7P託ڠ^kkMCX1˷fT9(c:в:w:_ <еcbB)V6ӧuzGY9U_p =pQ3mqL96܊Q(ճ] -VhH͚ ]m1x!ưwabINdEt/o_wM^m(A]A>'ɒ:=4m .s:ޗy-5f[Q[v91e X佗}Nm˳-+3G Y~!B{Wf9Z2NtX ;I!cˠ;8CmmF=H70XqD30I1(c7s p{od꺹$q_~H U8q2/$4ik@d^,◄E>}/΋V]'?L CeATp:rrjM Ѥ^cYqM8"j*@&` ]>T|j;0 (:g}ocYM$ wtn7[{i]O MAr:MD !| "\F`=/a|=kQ*2fP)O;sDndC! г2 T⣵_y Q[T=77" u%.v6Nx6J_4PbDac?_=ZvOm`!0WE6~m>&Q-l<#b:dg}2|O?;od|xp97mzc-`9)rb$gMIto{L`̓as]/2F(k7]U}*K~{TvbXk6KNg4PmzLd]}B JNtքk rLJþCwٲ_+ ! d8di@%(d;X )K^17 %w~6(rS,o\I5cLlb!"ȁ.,q22 H kXH o3=N1=s4 @ Me^Nm_PdF #o+)x#[PS+8x>e]2_CiJ{ Dp}#DY5 =vO!0ɜ=~=*7&~ {dkۆ|j$֏I?؃ݰCRN7SCF"_zlr/$QOBP#O;B-R;O&̑ f1Vm.źmXhlBqL>3VΔޜ t㵤RەItP#0b4!b@: n;;~OP垕xtEZ~ F.#ybz|t^ WOwj yK# hO*RIvsѴ}}ZJ>E$!͢4Jfxz cǛvj^e857-x&ge~T;9,_UPלqCm kRDTrnTܳ ;.ͯ3Ʋݒ\. ; <#~('Jr![wKHN 59 72\-hYPmw0Q4)=AS3V6STk=Jhz`Mhρlf%ϛ#ڱSSg/$lD6 ӇN,'j1k.J|Yp |/6{~eGP'6sa^FBVEv6^ތ?Ӈj+i"-e@0UcbDH! Ŷz-7dJǖfF Z$LAw@;߬!0f -R[  PǸ;1/0 $H7X0_idN[2)MFO:Sf S7?ԌJ'6j%Bjv&V|*aװ-p%C0oymZzZ=k..k;Už^[hUAmFGU"}UrnUqIAG|UqeW$Bj!^~v)QˋB, )hM[z =颪_rv'j;$ʄ8+67M[rzm9I&oqga0婻h1^M:0&2KwJF۟O^H-YɂLԕ9K[X$ J_vX2( >hr'cof;tKY޲if1Ȓ| gc6"Rk'Cx5rg=xc8 < jF }w¥ w7Q@s7& sfx]6gy{\G6A_~ZhςDK%cjq؉Wt2;{2zad;pp?̅:{$kL\35]6g-ka \jtK+q9v{l4V}RǨLX2a&R%ޣ[দ.[1iXQ?ll]g_󳀪TR 5Z=L Iv),شf*sgF-|F#h9‡)ʰd+ vTb,/v/z@N&ROF +(:f=DHD|zJX;ќbnKJ|;^Tf(.~k Ì =71C@t"+ UMh(ì̸,`DX\XaiSVH0C)u屰o+|}_Ą0 !Oá;/_8 cR@&aq!>&?}tUzeQ,2^nҋ"ʙ9 _L`'nڶͤН`XH@rА7q":,3/x5E/=w-j*4o!gS'!ǜ@ߓ_S=Χ-l1>S;.G;}a/ۑuE=A8}Ps#ˍ !3hS*T8+bpmG:)DiKŅj"JB)␠ b7owWسB|;Ja,f;xYOaP$ˊ6>H۸!sUKŃFbS"_f.pGZ@O|,iM:c6|S {U]C$|aFjLhϓ vm|wp>z!E)%SfJ+Rndd~ݿ~iRX 񍓴  ;}zh%% Et'ze7*{lo a﯃Pz!9N#mBmPɲ>6S"Y挭J } /@.|ZMVNt/Z?IiGL}˄~TvH87滴nBѨljpyD 5C,||o}@r|T;,b9kG3<6P5pkS=Xp ޠJƖᄈnȼ ^B005=Fq&Oz6, )]Swq@CMuhI1<-f\6"[-=yT:0=BbfkJq=k ^%F?,cMoɇOۍOvņ$wdy-1$i-a Bކ论Dbz0.}<5LZ k\i D8}Y$ WW}$FGʂ.iASH6z9W4 D5i\}kmdj0 ^C6` @98R]l>2"m[ӭBTHXK]߯76P y?RS!]#5aVf9_8НͰj^t_N|_ D0;0ηJe1 WѦ;o NZ(K=+" **. -2a$yVnTxWX"˟Zj>~(|@El=vYSYj.*xH Ϝ46H&>a%|Hp"RgpY_ -|!Y8ԟy*n`=0hGkc,:&C`qKh@̛YuGZI;X -\YJlOvͮøsmyS*rr"heƟzI4ƒ^yжU{A'= df#QFx{@K@!k"_l$UZ9sFH?t@I$2+!C\vc&Lğ75% ί:a1~ ‹şXFboOfMؾuOеx9Q w+ +}Y蜎DIju:Յ> ҆> 0hnW<n䱬 j!dY\w!R|9QeO_?ft0ADftxΥBeh AnwTQk5l4}+pq0KPJUQQ7 ڄ7)d}U5[۟ZDT熜Q$z Sy46>ct {qF^SYV$pa` 5\UIxHQ&5acJM X)b2K ɆXr)14J6Up W Q]_?›Z'%?.JPHJ3D.dlK(2<Ftq<.5~:9yD%O氙ENJ%Wom"RR) kXTeCg,$^S@4nLEVU}t8D+-կrc۽& -(zMYF}:_V32~gC/?ZWKA-i>Kڞq}6蒫g4"@qVRSef]]f%YY¼t4~v؃)q_ $v[|=5`Y^=51{$'6ꑀ%^[xϠ[5q`|u?a_?~*|,:Re]L{y|,_N}zFJ~i|5`Mͩ TK?F^"O _ 7a1>+NנixTE%3@e}k1)|s˼d*.KzR1 .^tR CPtgʁ~2e]fSD;5[- W(Q)EjvKܙo\rƱ>s"sFHZ!|,v,vbEDk邼#eo= γpSI9I:[Mm\bKzuǷ"7GXѝpi?sƊMW7&d R}("sfDoӖS_F/^LխֲT ӥbl0~²'+m駬AW,/>sx>#f? Yz GѪ?-PNUMňU^v+hUp+H1;U1 26StkIˉN|F2s: =n#!=9"F{f(almm ՓWRR(a+bX*ws w5}moyDV']E[5t =!O3[ Ydm|"1S.hk8\VZVrЕ)D:Xd12C^SLdD-MNFOeF紻'w4w2ALb&q-MJK FרNr=D_Lae{GLw9DhI_}D؊YQ5LhU-jW1}Qn ZDmhIne3&_\CFǁGnw55er`8,atPk+,~JCM$5G!6̂g ɳڀQ{"K#bP$kђ_cf `U7@ =o˙# =TH 院{)INKP6=R"f}aܸ-nRn6 kgﱨ +ٿFP.w6<+ِ>(yǀqgO%dF搏e̳ ~-=]r&sƼw٘C*~&.mHP?wr^DžB2F0^x)UgWB6_<3,kMEDUk?`![!>-mp;:q b"7 ;"qrSF )d~ooYFtF߰-T*˄A񆀹`ѯj|+:=9faMQJ0xpD5Y"zmJ.vϓI5}~%aj~8PyKmtn6d>&a@M#7gQ"icꊿ ډ_"H=rįlW&-Vi,xB.!|Ё z !ny=Wh]T7:>)о % 2v >u?P&Y]&ڕsgTl̞nρ bnY&m6XbG3 6Z7Wc*12ioSWSEʃxI^x;N|Zt-k&"{Ly)z~QV񑑗Wt]rxFsZx"5^rfrYxqPT>,'VeSk>idCa`0 Q \Ѹ <3`hЙveL?ţ+Ws IYwvQ ޽9>NKbK`$Zy׮El]JԨڸݹX)k 镜GZ߱ -%,?b|\^Ea;FY\V4!L/D6<'c)GTi%dy4FB2{"*MYejUpLELR> >)6I 4!Eqk w,d>P/:Ga~QKtڋӘn8ﰻ_:aB xKT +OZ 5"cD"\PI0Ӱ=U[wK܊I7qH[H>m Pclkc.^QÏ|p4b f3h7]frvq9-녫䖕4Bw ֓ 0;bm;ùXeFҭV8N,`,xB&Gt@3늺},0Kw{5)r[}Ԙ$>0+7y !nz &P[wy'Č-Ueto { gFkf }^;lE.#%sbfyר5yօwNP^jD17pIIcNPʴ ڮ'$A#H^Kb,wYpaG@MCi?L {dI}\h@8Wįh?&k-6Soֱ/,஑r b>.Fpqa@],p;Ç)tH^ xw`\_c6w_`:=P-w.Ј n Кh{JA dqa5o֮rKD`QhH3"Sޜ<(΁$ܡBDƝZbO2qO'Ѿ@k |)as߮iK՞D4r^tu1]>jˋ_WJdsP攴wHśRJ`ގ2&Z,HMkq@G.$JmW]VD[W[KL[g U7ڹDl)LxjJ{.b{25{~j?#S`>D$)q nf1IѱՏ"/+( N@7V.'ڊ0K~ V:UX Xq(ܖ Th5o jh}ˁrxTh[6ƈJA8]  9O\arb3gE: oM p$Z3MGs(ˈҧ-YcI\81BHXS?.s_|#- 7KԵwҼB7 d)ܛ")T^ָ$daHkizfEhX6CR&EH,}wӌ }'#7[3YZ0yg R@ UKVEh[.=f+n$'C%4qcFl%KX")vbcע<$qŇpt""a1-@Zbl4XI871Eh_n^>.}Ə"^G)wind@v+[t '@pal !?t=y4IJ>ySzVQz~/$ r\恾o( DsՃ>΂; @  uI2A-B!ˋlX N]sLnJWڬ/n(ބַrmG]}9,E#T4j >CsKh)I3S8m>I-]_MZț\wõEni LD:bw{bgftA3[HEمnL]dOŏYH6sw-k t./#d8zR5.IDeXw /nYn(2#=>N ˝H4 oue');/ `7صaH|&)l69%W% mGcn!)w& +X*ιSx|w,ハZBXM6( ^e:ǧU:Чcglߞxl,[R/U'.uW{Mg!'>GbGk|ey#k j;KȬ6|pu|Iϳׇ0m6cD zz lסR}g徴8ҁ\8 hXJFL۹I5rӬ_hYq)7?D3Hd[/ɹF7w!JcS9zZ)Ywڂ;[xjq@S4˗sCIMR h0|④~Llmek gNu1)8NiwnK;M%_ϩ_<2{'ܧw$Ъ4?[_+W#'7hZܼϔl)wy7Pkˈi[sOKj omUuvUOb08$-һsOt#Df{DU*z3xºĂ1s՝G|;M))5*,)v6sۈrm OLC{<}%z~S"~cKurøISh sTmMӜFָ&eE.UoΠ6կ7#lPB8C"1cyma?5p@[$ ůVIq2 Ǫ^_zԺD)suVGH({g^FTR·S*~D*s6RK)*D=z tBo 1͒ow32#uzq?eZbc,vKċ`܈z d8;VgUba #XLp-  o¸vUН;5펝nR%,U?fԶ3~OGag/p]MtݶIt'4CAS_hlՕlڵP>9@$vZ 4EX`uÇ<ζ x=;JC${SDK9::ⲅ_ r>q$,jzցY}֐yqFE=F|F>k>6Y4 zL}B{E.XUO࿔T-,l&r{!ʤꍠ;-ᮿ/- l{떺[!ۀ܃JrYHȅ ک.-/G8Fdžsú?1~@oZPϲe"nr,ؔ@]ENpy0MhmG[fr*ޒ+A2SL#@ΚDT-P_A qnQ(ছ߆K mwz+. h3?%dPF`Nfu}wgic cPIf緫V+ڣΩ;"5ɈY.ػYfN5A9\;xؗ`5uZdm`ּ<1aWhZip*ܓlObC԰~WwLzaU+Xo6ɾH)d8ㇾ:Ӛe~<5IѸ0u'h/9nn6O!`$ !p\`JU }յpHhԿ֧ʠՄ: R`AX|l'MNUMRxDrI@xOU9\L_%>q ZX!iTAmxqj5p^CNIͻ&fuL@[`$v ^_@gX@ݽ)V¸h0}6!6=N}r J$^2C`%~jyA;޻aZ1}YֲqeX3*Z6 qLJ'u819958׋>5"*9l'z=]NɕX ih7VõԲ>\{5Z=7-at5O/sȄ ܓ.ӔJM#핌k,јji5[Y?x4nDoӃqg:-.R |8Mi4 mxBH4:Y;I6: +['r/ 9U3]IA^IʽBEqyq#^9F2"jg0@rJ xtr_8Hkp|$O 47}|ret5oۦv K` qLt`_B[ 0B4F"Rfo9Hd;i='װtL ocT"w釴_N<8oM$DE0r&X;?%9f1+"IxI8RϢupp(MT7_a}Ѥբz~D+ݘ̎sch[%䍳66WuM #ip tqL^n(2u#ىbB${oz'PSuČczg3et\m^DĶX~ǠkkHos,6`!_#C֥A 9?:A)ha?3\fǪ7jCQct\\ʿ$??713R} {gV$V=)gZ9e#Fo/ryoU [@d(&^j#h%Ʉm*_%`RL[o .l ^*0E':rLY-N"dL^˫=;/ [Yy=fExe20d,+"9װ}~;y).V ^DOZ|EIq4,놴p:Y8_^Y"_!yZÑ4`R[N4Jr Ҁ$ il!{IќTFV3+8SDm\^'r1"@eiA.#Džh7L{9=1jlY&@ۮB\t"r^^']n&.՘R3h%Ub4Ap8$Tk|̊}oiCx3vNFnLt؞H٣ CoakSiiOe:숓1@/ڝ%ڷܷx[ؐ2тD'6Zsvyի2H,$V2W٥Z,q%}LX(;97w=՘a0#l%zq^1ث <%ck^]d82&UIuh@4Y`m;\PUYGkhߧ5*bz1q K-V s.q#PXl@u.b6Kr,K>z瘳f{HcQp}c?8r[T֏^[3tJVM5HhS{T#ax| ޫtcd5glĻ5/␬&!Ɣ݊PʎS4'3]%/IIoxEĠ_J]Ѧ}{ryΏ\^a2=\hƠ6ΆL`a j \+}%!DWѲkSo N1lq83\Fdv tG\\q\QGASK2zpUM׹LIgqP)9DG(r{30w Z IkF FX ۍXgnicgM|yqE9XuK!% T~lƒ?!e^S/ʱ4|_ú#EK ̼DhH5F{6Y T 1ash@>쬪_z ®02xЃˮNe {uI] H+}N*Etƚ0 =$BE8z+"Q'&QΒ(2QA :_th=!Zze /OؘYPc[Q&z!N=Sav%թ.ۿ`<#Իܟ ?P.o4b5 "T;Ǡ33|? TR?eǦveg%OɪԒ !x?:0'-E |cVavk !)gmQcVCN(M-%n8?M`\Yv H& nfQZEW51j0[=ـA[VAq<LĹV/VLhGuB$`ҟRIρ|CFcNH׀,P~6•a3M_R_/g&_iylשIQe! I"P_Rۖ @Jw "Yݣ1)bCJCv!wVYf*K@$/H)8<6&-`*;t(P~۴O6HW‰I\iY6mDǧPo+a@bmcyt_rqcC VDǐ$i[`oJ Y[? x@J_/Nቃ 9Bƒ![ja6ѣznUxJS/ P^q_ |+oǦbHQ9)|4# S"dw|UZهͭ66>M5"r|y㆘Z'T@ O4@IpZ4ME[ZH\sB;Z'X .* ~7Sz&ڬ#"+$?#ɐ6:w4wkF^֜6y/Ph=oF߈>&$Qk¹ DN~ S")J[~Zld-k@<2uL~^b8V]HՑ GT^OA^{IBLo?dv3IHC7ك6rm|` |[X06묉k}*hEZm;_ ݬ % .4ր{aѣ7{/Y`ʅ,=DT1/+yq]rt\]K\.GTqaI|{ 31/Ȣ ݚBrU[?ggnO D\vӖgb拰w?gAv}'Ned&?eOb=4=N_]*n>Jc@)Yd>߆Fm5U/;w3ZR;dAW my^ k85|P2ˏ7wۧ}3\7Y>g27+޳$%d{mݩpi[lU>3#҄UseYP 6bj *ƶiEKyy\H5雈4,Bg,C>UjR?}$6HAj7/BPćOA2[5+6F1X. /sb +TC~]vdɨQ.8T.lEmr%;82$8`h6OBJ&u%yoyêIf5b0rϭe˛5F8 _4!iB)lM d)|m9ro`1㼢~Hy}@C礐g 0z#:=?@m!WD '<{h7 gd4(F㙿8UyR*";s m <9S -ui<>Z2`tO ZjL['{L [<{y\MX9(ipK4m$˦܇fhϢ5Rۋ!ՠRG";/a#@~@Y2ߋJ/m\v,.Ej-ʛeh;*// M&;]'n/! yFlK y gZqPBUj ܈4hn#_(JINvuM)?e}zX{9ȪI*=]7s*̞ IYyQo1ȕ ?ׅR-ӛ.5ABqiOX)OgMT6O摫WK!$6*3o6PGZA~r`%2 URqCjoXA\=oisQd(ߏ&bX'_f a+yEEBj,CYC _ Qhzu N_~K 4hr*:`#hUľ=E͓""hk|]cy#]14g;{FZn}C8O FBnrPqaJ:'I4i?8eS ~hʣʊ;wUsLN?@=S ClJW` }4׎IϠL!?w%b> +| JL8nmWX+ eeu^8Lsز4ӗ!N03v&ez> 9Sv ^nwWg醀# X4IK_@h45dVecxp?A/a3P 8 @}MYiԝDŽeT2h݄xc29Ud- +!:D<-ʻ]IA~ke[1=T9I}fivzbo!䩃g d}X80|) r[̃,I iȧv[NZ"lFQg̘qqA7=ZT&|ӽ=fj^FT@]oXQ3&.we_k!ܶ-2K.c쏶,TRPxTr&Z%w}Gٵ'RyRpzw,Q NyQo2'8t d+R+$+Gg׎ ,q}NmR<}܉ȉa|.nϫ\d <@ c~xȖ NM27 9u(;%+~6NFRw>/Ia:JA* sxdqb)iOx+m} 3Ia>oXJ!!dE,Z=4Svq0cK=K/_-ESlK俇'yimOقUu=1t[swYN&!tM}EΞudaL?uLH9Jxt!~ Z4sLHg"x^doFh沸yB_f$~m Ƨz^)F(wWN1(Ҋ vVʳq])\x9Z<!ea] >"%f>"ĭSWгV\vL-3P+le-x8AHŘc8B\ٴ7,ᐵ_j3&@]^W5~@!-Sh漧p5 k1Ek^G)Q9I F\i]sr~5wQF_ TJfOڱ^Z<ٰ;lj,d 빓0'd@H%&$#a'f::\Kgȷ|ENe_G[}Poʘj?|Ƙ>41@\QWZ@Ċ)\8Es|Q੧!O!w8{7nAUdh ;ƵmX(aml%5vM `50… f|_^Ib@ie4^\c&ji8=Bn ZZIuYfCe:F`OW_RW†!30@v}EŷO"DACts; Le(5B(;/å(TB]a\o^i-e,QA}[Qtp=j1~zX1s6fVߍZ@ Y,!c-m 8h /4ńGHL 8Dfej)>"g4:ak5i".rII1f(N$ h%,\^@CWD2WjؔqiY6(9AwO4X,o0C=kFk~޸*.2CPN-jj:JyYw1śFWݡlNN"z_{CYGG`MGW S{PJ9Um||b<,rAcM.=~=-ApT@;_'/}ݯ7vDIpBIåIyc$ - EN@T\x>6Aĩ) R23?3obq҉PDTX+26F1Yd=޸zya+ T!&Q̴ק4`襴w꫅&l91&l@h)8܆KϢRAmb W(g=$0ၝf'TiN~llGqC^(b/H"ѵ3`BhY7 ~&x;e?i][UIJl[q CF'4£ ): x`0lkT#ӎ٬qSm5#hfl$bcW 鴁8yMpd={lgխ̺ 9Ry~V5'6xvFNlOXʄNro*G"|t8Rs$mKDL+TxwA~΋AFM}dNpն3 ٟHDz]皺u,w,x5(@=0R ⳋv=Z8}a|] 9Je GƱ*̄Ee^Ւ% A#Mk]A62AH#O G]Pk/)Ft\۟k$j g2tJѮ06pc-Ndw7߾ L!;I4͇[ ԰lr(>J<%PQEDy5Ќw_& H/].?<Ͳgʀ㜦h|Y, `` a(כn[N9hkP6 k3¨~R 4yǎ K[Izⷕ s0{FMqxW^G.D+cG$4>J"~g4[ ?bWx  .Ku*;[+=qi<27\J_S_)+wpɠ%poJHꈜ Ɓ*NĉvZ>\ۺf<]Dd_Ϛ:u]Xyjvw1A&ZaJrA2g'm<2ݿm욃p[(Gmdz*l'yx =Y,BN q]vܫx1ř!szּ!T}IFM\6+H K= ) _x]>t tʽ8<[-6!3 m4n}3ǽfI Њ3,ݘOOF?\ #P'fe(tkR+QBr ˧}ר =송" j܌T4B noEbX]{+"5G-vw<_l%K$ty#җu@n{(-D:(АqLvc;9W)R4}ԏ:7؂| t4N3AqA?ʏ+$zQ)g\qŢΰG(g 53EHy)'M=i.gFJȝUeY+irH0$kLRa-'T3l]A5[@e8 ʢg! "uP%IA/;H{_P`xv4~`dex4BӀN%Yk\U#m|Tea8wi8G$#:?ěݭ៪k_8*fPy ',Gⲓ"%ScdD+f {+F>.M>=?`yԀ|o?!ɬd}&&$Y &CWPda7<mI}`^KU"]1B(KI91I$$Xgĭ6zA I:m3@-ȃ)OJ UJ$,B{nOi ~NbߣDkyߌ[ Z3H'gʘ2( !FڌRo^1+;K[k̽ N+Vỉ:$C[_ΟV:S|G?} *qkPfY\py֩S1"L3 An4;"br Z6G WF{3GJ_W*j{n44h~u\(E a7g^UbJN62V3zp "S\'k%U٘4$Z}zaTb"/.<̅\HuHj ͱK/A~:&޶WDX|b.Q-$X+'?]㸵9Rwk)s~|U?y)Ct{+ :7z@,a7M㒩cGn1U \{ΨazOcKB*Zw{Ζ\2%04Z?%b+fAom#n308>^^1ڥ@K(XYFi۸ӕ_v邍KwG[Cœeª1:я+] Ѭ&Km:MzJrL𲄳2!}(uV#ė7h5(dV/=:TVFA44yYŦx,L%&n|^{&/r(KP8EX7ًws:z>׻~tC%Zhä܆a&c+wL"{\q[Od?D阾Ytarc}o*'tdtU{o Ub/&J$~Kr}^6.O\'gٖ[?NZ2&UIgƊcbcBO}j[rXH݁XpQ1>TH~BN~#zֿuTMX=c DcU@ViyY@e)䜆Pg=ט>dUQj;WT?Fx=:t6-OLj)l`Zz1ϫewcgtG<+໘Q/fkXR,3adQK+VX$w:+5l5=y'GfĤ _ keGoBOqA-jow,#Mt:)D Z"6fR)Uydo|w%kXjG-^Zdb9cLAA,n3(/[]+m(Y 0ǴN(P[?#.ˎ~zQ:Z$!D> '|g$yA$j9,5*oM' Q`UQ4 s"d=cǦteT׵V|Yi}#Ɲ/64][.*-Ve6HgPcz- IrQw8F7t턙D^CFռs? ¦fkQ0_Ĉ;ox*kSEշ{awд@g٨TfqOćDWfϏݬ@5|[MW:|Z[8!1HT^MQ )>7O/gv2RN+Wת7m&-=՚tz"o6NZb?mf,1E˚AUc>6'J=LW B;ɜ t /*+< ex9 ̻;;gZT*GBR#LeM hD-rH!sלF2X^FKdl C .{-I1jǍhA }q6xDWiIX0$A}CIoH#g*Iu2hoY4ӗSg. k/KQdwmf$uCm+a#K ?VM̵iyC [߉,VSZ\kYP d0nɑVĹQP y<(^"cVR _*%\PY f5 h)ʉ`\iw ›Um6Ĩʭ"BM %X8 7iPc.zhg]m@b[mL~ C; {owfd\<1U>n]IYJ:5*]vc =;[BQIO]-GFWZ7m:j}LttqZ㋒ܭN6\l#i?5u dǺ_Dt6+ۣdRX0wY6#u>Y\._'SoaV^!mkBYN4%ǟӗ>kPs!iڏz<[{j2$ 9@vĢUbQ$4?=XJo[;O$@; CYPQ99bn7D#D>tkj@JԬ;6sIwtfFs7L&x @+YO(%l h P8 Y_\ =߇CߺwIr韂`ҖKٌ"R)&Œ7&ɠDW_4J.(S+\gB|.QGxC{l\'/c$#~LXmB(P8Z*Q MxPˁmOIļG#?k fqC{9-W|]w<"Ya_o+~"|Ϲ;. }zR%hxj;+R|"%Y4n;95HRv [9\6J9t:;uspP;WK~ &SĝtG|).PZ4Z0 ͱA/連ݚ5~@:6 ~Ő&33)34T%NNW'ʼnuJר#O!h=Fj/o&~\{ ʘ!DN0j_z"8mB=}tDOeM{zpDe}j w MlFO4ӊy>h1q)Gc7'xNPe[IGYPrlsF H 2ч͟NڔVE_gRX#aah \ҹSkɛzy|bG}CmwfsFVcDZp6>hplHg浙$ՐP|A 9dO{>?]=׷FL$ amaDGyicי ^+zG̾5vQQVm`X6>ؔ­Á% qu ⭶}+}. ?Z!cqeKpd;4 |Kc+Y} !8sr@<K[%`b$E"B^x^f 7s$2ȅc8,sM;+2Hf_χ6#ME<,>?U}OBi~DnN(JX5dϬa|fTj=liE'*0u{T-=M+ Ϗl~nZOc;TG괳fZ{Vz ;"q|W>ԕ (C\lmMަ^AQŢǚS}^ZG%T[a}4%,@ ҟ.a&|bGEywS\M#ҕ*pn db03 uL!݅Rcb%5^ ^E͓Jvp\^fkբh\Qs3F .lQ|MU+^$ku!%7!iP*e L=zpJf d箳:8#5,Bwm˄btQB:W'Q#/&ɩS37U7j: DGhvh -kV&4@?G= hsQzG\ iBCi&_{;ڡIydd(džwK[B)CaP?@ ;jJ<^AHyVFj,SB&öhgݢu(vV+C_Nja XIRO6w٭+A+ O7G几od}AԸLٕ@ &YɜDqUCجl>V$U˗Dyo|ޝx?EiK֔bXо=EqOtMup #PhQݒPmۀAT3lwS3NĹRASYpxDu~K:2=W-5x+ ]IŶ0g!·K5腬KnٗVVkC+:"p2A?-FbZALG&kVoJ:yS2W^n:F\ lGuN&RKm $OQ ,g0lq*o4Rm9,4Ѝ$ lK) RxygQds` RKtc5[%fÃpjpϷ1 vB kVt! Ƥ N?9Wa03'HW/ۮ6` d "A>2T6],Ż<"0CyX9WVV/I[`ǽ(}+v'>W xc+n 멤]uIpto!2 q3A`a|W~8?eMXRi[F.4z>nntnFƢ@Rw@&5Xh@օ% LvpߪNe~I-$@!ptqG xNl-9kx oS}RB RV^-k3nb<`&><ꆝQ]B^䊌H~:`pI&)cqQK;#M$8wڈH0ŖGc)*KՈ o"#珥I6SA6W ֟' $g㌙Ba_u6VWm.i"XM}Y^ gxf`8W1rPwAgk_9x{h]6%|5j:2ң.)dִ"1%[n]̭eؘœ^݆T"i{aE"!qR4#Ԗ bEe!2 [dWL>1,Ȝ3w6~]eDN xrmG/䖟~'4FfU|U􍥝Ň}LOnX4g^XOj =v|yR 1 *SHs(La;Yyҗ҃IΛ< sBFU(߽#˄#BFsNf c¼b'hwG>Ӏϟ7(K(JfSwTHkj=g0dr?k-"8c] cvTE]IT6 dTn<vSUxSePLno W,j.q*x s? kST0kVN#xC]J^5,0$/+3wm'mm{)+b(JouBG=jĹR#6:귟>\.Wg ߒ1~dM"LO>u'44$*^A<*ľ5%LWHyؘEU[Ǻc1|Q cߧUG+e󞲺 4ʃ:$6Zd`&#[Igq5SG\aӪ?!g❣u+je2!Ep#I@HM `F(Ա/ھR)0;o /;證Ŝɯ`l{ _h v%,ӇsI!gBYMw H/n-Z[؞1 hK :_M\ߤ:be?fԋ[bKJ0>ӣGgI CqrL58$WA@ft~d׷]VAr?'bn ϩku(`ޣ&%[%5H$}6K>[S|6m}Y,NR$ejW;y>LL~cM7_Y0Zo,(˒zڦ:5< &Ģ8$!78v]V"i7*YR0j^pKvS&E!K-E4b0U RDV$䶞=bP7H%C*5fA42; cGUp 7q|̈>^{:zYDM*bKZ{ *x?5j. n~u܉hv́ٚKkp߷.{![jW!k?3 랧Ga1oR ):Bd6@BI?TK-=fL O=T$oL|RbF7渨M~a02:Pqb$N?:;$^WrL^kiuUEX~%h@ e:KRmEa_ /sy8å,:D0ځ8B3y]uC|'(~mpr A>abA5#tİ y̻.X ejENV3:=规+4J.AF;t>/3g~nA4sںm> ߺG2Ajn1h=սKpzg `paO| w :Ff6AS3߁N5_W^][VȽ F#HbG0Տ&<zO!r,%WypDĕx*GTӰDV}Ҋ1`9?+ H@x;duBܡ>sf0H;;'0S 5 Fgyм"{I܈]k,V=( H}CSJ`ih nӱezg˂)?DɆpVNl+s( Rer bGʉOaﭗ" 5Bط~θnK Qfm$ \[2\="9uV0id1hnB*c d0ra']ao%\e !)A=9>"0uœ?oX{V>ݟ="gn1z\ {N,7p15vR w'^KTxu5fs)88 lĽ\ $7I:^j^Npn:Xhnh:g x-U;%:X[=c ^3Z-?7_uCDNrTөcLGp $)O"#u/Q(VFgX38 0hO$,,Jf`ͣZr:n?J/`3x2'\"8o͓藊 v)M=-Vպ9b%Dju'y!0r{U);K#+āQJ?Ji nFMrJ2`xRe'{#GDҶl.ie/olGrcnK~SQF;K9ڊtYIzX ,rϿ!JX WYd|:B(Ýй U=s,gU\ vS>K($3s€%jd %sLEIMeSS-@dn/x4.1̔<hCs6<=#o۴+h5@SPL|$%= ^^"Nk:UZ#>۱n=xdJGR'HQ-{ǀrQ5=30p(a5Sjn3]mNLWHlr tO+ځw++WoW% oEyz:᭪oQ;1riՂ&UZcQف) 9-N//hzJ]ljo";dzW8 }2~6b_ZG⃛ORUUH[.J Qj \.>9 PZUӍIPSiM;A0 dSғE,7~Wﭳan5޼dGFalH;>Mjm2''6} d8L\b[T5T~[qLPru ȽY,_*m|k 1&y&]: Zf#;.j|-|l.0`)""$03? h M渮68G#gAS'o3o E%n`zy/xMvw$Kϡ0ޘnR1SJoul&z;q?a2ިcV!YPn1_USClO2Ox&u0$P6 >9MHGw(&]9Ezrm.yq W1n"iM ~,Ylv W4Uvuo4CgҰE` g;,^J:}Jb6e͹ G$$RIHq6E܂ò`>YzX0vJ׭xv 单D)34<͛Gs|r k:(_ -^!)I 控V؏.'\&C*-%]Տ<73wEKc1kaHE-k|bK[\Rċ?OP+A~wNp4H|^QB!U[{&ϑdg"xT6}BS„%'ҋ2MvVNGYFW"?s]0~OԕVc~ŶlX>xs!Xb4 'T3[e<8lr쀘ikU h+:acy[=%dȺi.VQ>?.p3#O/̩Z8jFY u0FnL! pVBAD ֔(nPE!GcʖIO&^Ɏn\}G*oD!Y:lpVG# 7mYU+8eY4TB_ghh 5^hH4[OGWoQapE4n c]|E2(E=, ۊ=dIgC-a,ZGlu8Mqbw(!y[ywm/% D֭¥zSLWН7 jǀs?v)}t9@daGy'rQYX돑C9n۞采&g̨ا/KIždah[|n7@h,V~Ȟ6Fqf};n >q4\ByLUv@B=={B;端GAXOaVm(q\8w>5D! ݺ$]sL6 *(ew )^@.;+loxv]_ 7wЇ'VpV|D5r}yʙ%{"`304TmX mHiiH}JCF*jR&ȝo?ٲGUcyhfak-2k#`e#+rKy- 5,;?R}B|$r +hnI]?bLӎ/'M)Np]E%s9c}g6M;w͈Ms0>b]>Q_ʓc*8=NuM.^w.?B'NG wb׾G]kg_(6P9 K4n Ng9z YeS]KѲw1;D ]riY@ o*j|nSuHP`nnZX* *r)#\7>aK(Rbx dm18h2+$^AJHWiT<`LJi{Mň붤o<*5E+nI588_WP:/4BL~% DrYn%myKJNH|sdޅQpIs5v8k}0j9U Ϭn)w("89ڵu_f wtuۣ| ,Akʙ qU/7;fftG=ĠPcrsK{0pI& t>+ KyП+Ojs=<"~;ȯ<oƀN2`Ű.^\- Ƃzw6>י eU`{ 'Y) W5Ѷ,_|o.)Zx$,!ץ_[NUҏ03 ׻n8ʆDʵBَYK.inI>XߙRSxiGNb=;<)Y~Q"m/Sfg?u܃t׀-${R15WD '%L`+a7ck|=E K4pU愶 gQR+nՉ_$dl(S C^]ɕ췴IjV7Z,q}&Fkwn@¯FXl$-Pm)ێpKdc= 6 lTeMemqRE{=H ^A*|"Kؒr53dK~!|`WׁWsWMƛd׀U5]z>VNE$Q,o!΅R^71󯦩"X4*~)\/ux}qoѸ]}2zV*^+S v(<Cs1?TZ3:Q-H N2FRU?2XF\R1? ,u.N")9zA/dUʯuV6CՏ:PMثxibJÅ /NycoD%*ش\2l=')Sʦ25zt, {XTw@V*CegG*)< 6tcQ3OGŤ>9TdAIH%=( >I@)ܫ2[OFM9> ~ʈ~D&`ݔM~A׼42T5%$PZ&- N&3YN/&?CIr>k[1Eiɤnpߡcwh\@녃j_J=T? l صCbș@ieT|H|u?@b 7},KcqX̊ !lmFoԨ̠9wQ$a.F@&*8-rѶ@O_%fql$ˣ;1d1[)YlHVN %.IZlz5RqfFB! t,VQ&UBBU8~oG}?2_lm #M)>.< hU]bM;, d.k69|'i{dTP,Xg@3}S|:F LHDaՙ})"/MK론;E)˄JXA/N1RhT3 o ^J,$ K,zx|wҾ%3)+7f&.pRYEk-է[EK+ZxuRz"ƹ*MꈶPes|r]iy9çh_hĺc^`+yUF#zѷTJb<}?Nm'{/?7#_Wt+z' FIΧ^a FV/ w?;7u$@Dg%9L짗)/@<_YA}vF`Z:fY7[0 Z\]qnƛ)5"A[K grA~JJ7 K'q6ɃyڭtBr}j`d 5jHMȥň-MvOFʴB_Q_+)q&9=qf&SY_ /(bS͆s uQSW[ q&?Aӊ/HL3kJoQto>PE,LVwhL}`FIvKR rG_j?W0S< !r1w]Uen2^֏ri;,|d `I('Fh􅉦 #׭ۍCxYl|zGch((vtc(ۄj^RIVpy84A>^ܔ!3ҡ9@'(b )l`*y>L9NZ.9ɮegߛjѯW;2VE'#e _]TR6o |`1ӥ2_}R57Ç.DL~k$+vȡGX t&)Tv8L0F7#$I-)9 "ᲀeds"WJJ>գ#^xdghʌ7*LD"(#ӵܹq4l1K9"!6|uTKD/ҁC Ie9џ"E j-4ɖFM>g|{ݗ> D:yrسF}>R9_ƭ,\$%s!NV W.c}KCi$ۄp]s6=vX{~*uv9Qꏊ:iu^ISn.V,(pO޵-s)0{ 1=r>*|M̴#fnn<^(Isqfj:C/}v7eOtdҘǩA 5xao*!ۇ0d-Jps!]g{$6܍4 چ8G% G{8ާ!$aO+8J]D}iC\jg ^]G{LY>cDba 6#2rxHSwKZtQuNJ״~zNaNTz"F_ũSΖAǧBh 9uk_:P2GfBB9-Wl^1L҆.yn(B/Zgg?;>ԕ͐'o0&4k-@^"J#M)ߨ:^vj^$Xq yl)kU'_'~e ʹO[*,#4?KkE 4Je_khpB6@PAz]j +@jg12D W e5?7 B& _=ȯ+af3ETl@z / S>JDJD rˎ"HzlKrE9_[`1ЎML_ĩiҟ8VfYH,T]t!Iɣ!=]̼߬#9?ߌ{HRz.,yFuI*G1fBz#ajnՏ0Wҁ, n͈۹ K`h 4bt8r[50P);Q,@uY={9{JY4ZXqbƷFUN&u&R0@^̺d;]$e,y%2҇ՃP_-xaH 2\M]vLj$? tC*G*.P'laDL`]ۯ{)/:sV#"_?\ejMD-eX]Tw {]|qPs_YciZASh8N:GX)(#K0$N~7މ]#Su$RdZ<,m3-XIh?6c$mV 1  'ԷpՔn 1r_3rT/ t" nT#=YO%\2D^%AZ H,'euPe3ztn! ]_3Twt*jy;L DS>g2Kb#iNbjIoSrAz_YJ_K7}@rN {&U Mc$tp'y!W8|ԎpbRwUB6&IƲM-srb>xAᐻFfKOK Ŧ8mu "w?[$Y{3aomr8{)M!٤;!I-z0PQ 0eۧ3WאV^\iaf(7_zHB[ujY7ؓBxFɿTSj|mv,a$;ppḬLMe`]|a)XE(אDmXz!V94#lw@gsHD!Q.Ph.*{YHŢ?mVv E P룻Ե醲 H'ʎ&<DF*x`> .զ[sxIMreAoS`JԮ6XHy,;^vfԠ._|nnݞF7ۥw֙I`ϕb g4g&zVLን+[J*ŎyLB: _j$ A'"Vz%+E>QY8v8&׽%D~cUxޙIXW95Ct|(]#`n[ <̇XkNW]{C:W{DWѕs۔ӄx@q7*װFs Te_<ϲu;;=Wy^5$)z[2&[!?؅v47~$(xn.>]^<2;t '6bIwVbXx/eͭlB2v & yw)߁g',&5^r#0&^繪YqrJC(%*mJhqj\P>sL*Q @ >M8t%Fm]AOt[pPԟk Ud?4K"v%^QLDD.>)V_կV@(,`8n`?巡븗ū N2y 1mhA+/> Kw4zޞK7$sWĸ8vxE; Gkk\zK V 9$T /쪒EFcd=L\@ wvUږPVsS8'06q΄$L.wGP#MW[+["~.$BBwmmz."8n>B*UL(6>Iˊ;zx*#e.\0 n^# {EW|310x65itJgBAݦ+H jkĿ(vˇp:]+3Ŷy05z2lnwzXPu%z¦i8O@ތV+7K{jNTc1>@@78IKbrvg +-ox:G-?TĂHGη@w@c2 z>E&{ L$JZ?{}ГƘD,N(TLl1SK)M^N=vr㐼鱧 4T!tX/ò1ֺ"MvN "{`LqAVuzr@aF䗕BnE"VaS%bX~H1k:k?_qDfJloEk#7R wD|f>ʚgqB. AYތ)A`XV#Ɏ-ѠD$Ñ(8+2, i΍HYY5V5C|;˱93ZTY7nb@Nt9>Xl liC[O n]!Y;_X0pORŹX/i釜aAWRc}l*%xm@sS=r5Y'*[~xEda&ϡQˤc%fB $;$ki-`ۊ- LBr#t/u@sGZ-Tw"-FH2+ВXv1~Y0u)+| J 9,]wP(|_XɁ|%[wRV-4y|E4 iHOȂ/ܡo@3f2 L7 E~-IP݉w̝)[݅P%6BNXSvt{SƢ(8S TppB2s> g8.]0B[>ד7Xn<+9ScoPZ_2:)|oba0 E'=mGNKGTVnHSiAv-Q 3Ƞ07 ÏSW^.%s:g)i+ww^LV.{,>YXYJлu D7Cr=W^GQ GH'ܫ`SMa 3IޒƻOک;$D1IrOxS)t;+LK?}eϥN8%hhoW ogOd֎neYi+fҢ=! >/锏!{PD0NR*WmqD!9ab~< SVZG<J`AزP;RLP 9lp$aOM!L;FڦOBA\}7M1?X*)gH?',U2̡TK>@*3[O1 ~ɑĬ.gybڒn<б?jubE=|Cn2!ĜT邱׀$Hm F_u}άkՕa!0F_Gʣ8D7=C_ANj@-3 Ӽl:VTu=I mAj!ڠb*fo9f׃ R֦W?֭WGz%,сt&CKp'stDSS#7ՀM%x/܄~n+ct^q?va#}ZKx,o&n9L*Q  Οք񊬩]dgA"Pj$pK9KN>dC/[- oP ӰoGU)a4 +u+oQ*eWSѿapp.X+R)G.jL$4{%ʰv 6Óɇm*COz˦ եbTxߔu|ToZ #̐rd ߩ"skl#Xq7~&e%N/;M˿bB}W騗?T ?/RפwBx.{1RLētUܺ]v+c=O/T`bvFeqƕ~ .cpQ']6?G̢`1)5\sWpyu?n =X."_ߝz߳Fێbw?g: X/jx\iĢcCmrdhruSk׬7Dg߆X2*h6$^m("TVdg t$X'ICVP=Gg}~U:}Z7𞺵zĆ.Y2rOC D'_+`kcI/*Rs:; 0e<7sEId*.P ܰ|wOu(Ci ru0q@tYw\IIn,z_^P£J%;B~T^I( M}QY6"nrMNJH5|et @PJHEީc&ӎU07J<=݉[N"9S7q4Lt')\w1v'<8Igӓ["s(SFtB`7 t9T }_@TNrRꥎ""XB`QIϡ8񌾆C!0o=F~n+os<_X.}hX#HZ!ǽ~uG 8:^VH'us,uEw[y_/62  *rTi Hm1E iƄ-=M̯Ny~tj&=lU'RV3Z/bTŶj i=e;uw8[/TQ|b-QQh?[+a`ԟZ4ʺ1W .U"&ő- "2bѿvSQ р.gW Wr2 C Uc*Ll;=¿4?QL|wN >+Ŀ4lA"ښj7<+:hT-4BqauNGpy=_x {EAdUxqHsq1.Z[DBP{uY#Ȑ&N(&nd]J_ڥq$ l.Ib O6mXV9-+!T@J.Skv356 w9WЮhn]pffb mJKI. d ;fa߯w6p\CݿB w}KMR a кdΓg:g{8G|\<?rԔǭ X4$\?L!z^h[xnk ũ\Ak|y0. *= 㠵>Km"DO4gpV<@m"RF?qA(/vU[x#\Y+]p"]N7?klKS-Tpѫ2pF.iӏ`)@DxCTOKhaܭ1Hs kD|$7.slؑ‹$q3:ƦuTDhA!4|X-Ž Z6'{+:=<8­Vj8*.:%dFFOl|6#UDcA% b!D* [vQJP;lJGDΑؤF4cxpoC|vaH iJV XTs~I vLioO$Gs%l.}{sqVc?'kE x2#W$dixnR0Ph0ߴҋ"O)ca>jJ m% uRb?vwioWsztMI:>GDx4F2һ$@ 'Ôdxl[LDJȄ2~Q g4;KlC6Um,0T? ԁ1љ1:5"xJtH᜹qr땁b]1ކgـ~ݏ;~Q~ͅkZԊPn~H8]"V_K'{\ J:7 jGHAQ1b_* OO Ҽ\9b!Kv@aCH uʙeyt3}9- XX|BgLߙɷ3vN8i7|YL%cJW8M&Ŕ"Kf 26ޚS'n\'|bsډr yڹWU41S9 clkx"5:+_.s!oK{klu@ڶY% ~l5RۯB]A) A&: \ }k/Ƃ&&W#` kׁQ Ķ=2Kc, t8YV;~u5+)׫p"Z֭b:h{T!mYPkO;ڙEQ]gq޴Iz)c C<]EmeMP q?ǖpbsM#qٞ)RNs  N犄"SH|p؊"4|cCKD/p&/%5[uȻ1I0j0n%;NaK,[]qP1C5J|hZŁ{?XA}<LH:ҿ煄PԜP߸ЂsĴ|~?#kY6Gӈ'O2J: MKg]!8DwUK  <5U2 &Ҟzh3xa cuX=nHŶ~d/d3`I%*TFҔG Ĩm?ZUY Hi cpϖ!wqK;C`{659:M>4rŚj5FĄ?{VC%SWo\B+YiyVSJ[$RoΣ7"h11Zօdt@(yp۱Nfrjd#ɒjmUm ov.{c.Q HSS9v<<Wo"LeU.aFl=е^jUSF.C&sҀ|t׭Lҟc3pT«7\B9{Q:=$n@j鬒{2J%fSB> pc9`U7 k%L ݘWPps" +Ë=^}?8?,RYoq1c$q_o-HCM%8-NORoX魎m` 5K?n9&y#8,:h'ժEэ>61%#N74=5,IC4e V%6Ɲw/!6JV=6Z!Pћ|pHzH>,6XnkK0S6mƙ}hyPzjyns$N 3+ 3W]dl֫lJQx7ZL3ZBex UI*G! !\m g zSCT1h>i-֜ղO)8zU3oz3GDP\σ.DɈ荌%{;f͸PYqďnG,'{Lwʓ\41 Rs6`KηޅNߣK{Q:ޞ޳p1Szտ$TGN8n %wc 8Zd [uܱTcRWX-J&˯əEs6ܰI-"YecD*cq Zy]px<݆U2{D+:rKwEN3V./PY*Tnqᩃ$j4+[X>0jg/wZ *oxg<;)l}B1jGRvvḛtjdZ,mE剖>PPk pхWU2aBg96V1="@ח_XdN~sAg,p N623e=$AruxS<e'Xy8Z:B Tg)8"axeQg23]?4VDk4c/$Ke 8mR'V-e^W̨ily"fɐ;ҹ4x.~ֶJL+Iؚ`XM!js _봀}i}m9:LԉѣnoXb;Kk /~nWz Q?7)_a9lp _{XfB^3}&ӁꖭvV0•4֔Ӈ6u'H5>#9 <`e=B&6ωpf(;rp:jVK}HВ*pKʠZ^P/TT'-Jßeڻo3*[֟Rm } "c<+~H{tf5p7(`QR0>۴j]3 =*mIh1NF~ &?XB:g-"a47^ ^UiHvVW.KN%hMl!ա>)rr?Ni7(5Wyq$߳EXF@ V- J|sPϼZv'Wh,:l^M'^ܕ!N%ߋπWoZ,Ι/g%Pz#wŬmYۚ6TV @ 9.{崗 _,S}©-bcoO)GW44\N⛊3+ Bh/^'<6wV[ӎ4_ iIS(\RȷHY4~6:ȝ&4ϵmܟ f6,͑ sLK @Xr=V\Ӕt:X_?Q7OzyO"ź-V_4îE@!ܫdY=޵ڂ$40 A :?=a6`F(5 3Tq#5\sKh,ԣ9=3{ɦH'yc}ejxa<& v {:@hyy mm~0],a;I7\wç?0|TH(u5%9~GvMy_%`>["EV8X)L]w kuZcNFeDc 8>72[:'?{mphnt+q8HQ.xS?3#-#㦪OZ k=@ 8wи\ʾ"w9j,L]RWv^L%76˥.5T.IT+mVV .q\Lym[ӈ ?-4M/ k}:-o ~ nC|Z- ݣEş 0T ^>Xţ\)n/ N TMu&Lw/qī 2dN?.MJRH54݈<RE TAt0f[+wFuĽ*[QP!dijtZO,Zk8 V ϑ1!uGdS ' 8#'['jt!SC3O10;yFmi\qW ?/p^2cpyf[ }i'9L?YBTފ~@Hpt?q[0Nnt-cwWс=[9ľ[΋rخ5*>(DnSse棿a] 1poHGW8 RKo` ńk9fjG;V3ti6Wћk˱.XK#+S>ϡkKˌXd@D=Y! xҭM^T-T]HD|| $?wCNio񥮾' V*+K)LF^I[[XZ2gwtJC>zм cZ 3iek{;V (tW3b wY!JBˣtmLGna-9DXѳӯY+rq$@(JXb^zdԶ]dliYT&I&uw{Aa!̈́qY̯yV'F7sOڼ"|Ϣ,:Ğ,'3"k(kgXl I}R¹apwxp{xۚÀ_BLMh [hzvlpj#~R!_:`:`޸Yæ!yju^ߚ-8켛 HtXii~]rR JIfr=Np׮X]X* %ۢr|[;MO!eTh;Q45<cy.k\`MT-{ v?Nʻaa &O%/11 ܿX.t2lPh?rGbXEc5q.zRѥ!𗚀r7dHnh9>tc;=L W.KrG<w,W T&~j:PY qGU[ cc"rר9=yxCQ79,7lXnՠ09g@y|&iû޹KBwu=(S([<ü·- sh l 3#b28%B35=)}H4h%!eBҽ3&bA).KH9TcG f%BWPU ȍvNjX"f7rdmLs0fQ/'F1F4+wzjRu9|e*k@e['*#T?P3K|CORL&9$`eV ӋDN~[Zend%ͷA%Nđ4ZZK9$5Jߟ;Kd¹p;5/XCw 7ž'fޗM9)@s-9 lA$]c{#K MbS1[j={RRP>j#51O<0|&,@P(ͰX*^X'x/D{u Mуv>4پ_(6n+MQk]E) iU4J3(F$ ~E =~# [šŝE [څکyB ƶLY$ {vρn<#^FGDQ1t68GD9"|Va%a;3b(L_'D}(ԪaxGҡ|m%~$Aɜ1CeHk3xp;c*׸eNMÝUq',o]P|8>s09#خPs&3g͏K8-5j<aox܊⤁¾ L|j` z6NM2.8`ˤlD0gy`gqS8SZYRIu7Yh**-LJ?GD*W:Ӿܡ!h˾LJMCł(3L0y# BzRXBLGiX3GDNZFdKD@O=FuE{إOjDk牤_9'iR_?sMM 0 ԈY&"\E!!xeKXo&00#T|eke+7e+1E]¯9jrY4ͫ~ tNyA?iϧ5>y- B9^⛽pZ-<4I_)@%V +}#ԲV'^f(*oJ[Bek$;'7kYKbEm+jdJr4B/4'ɒ `1CɡT 7maBV,ç&ԁ@Z͡Գ( rF ?fL w4r62Q~?[ǶUPҴĈ~A$<^dhj|сJmە=?1F/?bmD[0++OSyUP!Ts%Khze Sw/ \:>w- 2V";LLB;J6eRv n_ʗs 7dIsP;:Xo-LrϰAȊea2,\n_X+2o|wòF$(M̕ ؝Ք(-xf{hK$;N'HS]GTLY4d Dz8O2:(iDrI2KQB,`Y1-!ЉݰЁqwA8`p6[ۼrNM8µ8Y(^[ ȶp} KfhPMr >FkMYzt1deF]X.8$$o{}+*  ЂJ\_y">cۣô77JRsjJ2L^hiuL#ti尭~ZT.=/~$1/#~,oND,Kz^Q j3T#bʊ=:?XPH'5{ɛ,c;o`2(U( 3Ry۶xBP*y z5;H SlZb7|ưF/ĪX#,Mwx]v e\A*a5eȈtd!|Tcjxɨ853zs1v;~ph0tR\w'lCX#M[ R[=J~I]iYgQZ/jγ$#yZY$x^|*ZX ͑ +>*򱏝}6ÊM>(݆ DIk:IB:5ҺG'vbYحRL2xXSJ&iIe7eÕT>IȚL1|I: 8"f٠9 xC|ϡ4_.tS!p -rI[&N8͌`mJ4 c}B*'pKKL|!iEq{7Y<)re2˒ Rko^CYZ$'_g{M'͈uZT2_L$ p0aݍHݡD.+lM}r!u?~ޱH .)a^0IbX#7T` c3& ^i*.ECuXu/!Iģ\ӌiNÍC5\wkoe,vb; e* ?͢$Q$3O6<~Rҥ >:j35ʆ;k"G !Rkbǹ\= صhHɣKDcպם$c .j|ip](Z_W'uÅ8hbc5m{ҽgvWEņyQSrm9evabYayV~1dG=^BٷfWRmTS<9+=``J RnVTFF)JdrJ@{IY@+@g;t7* sK MNYaTLv'_.`F^eLMZl~JY+\:o=?`>'MڔD yVe[^k0_Fkh<ΑsYal#E,,D2ML$ec&.kHD+gOLgrDؒq~ $ eZL{,t}.vy~eFF- Jr i=6#c}82§ӥuǽF} @'s[R> ^5I;pwoFH\Lm݀9AwB_ BaIJpiԁP,2@k ˸ofbI&aV"ժӶ0Va"Iޥhhe o8cT JV$4v&g8B<ۈ>pODn>tU+[/]DR՗4vph ͕LooA]хktZ{5j 㶢Ljϋ_a &`!,s^hva%gchO GzΦ(o]IưjkP*a';yzcR!j.5' @:0?c"WG{ޚQDr2#$@kYmG4?+j/tM +C.i@]m"=ճ#F1ܠFV/~6E"2 σ< F'ݏoAxO>9 A%ɕ*i Pd}^2l`V5Qqe pruL x0 W;*NS~Y ^oP"W~p8`A$-_N,"u!~B6O4\Bhf(h0]K\cWYc+"{@éN5Dn?.ӨQjU,Sb N%)YZ}#ИTo}Jߛ2l&³e raHI/4W37% @F\NhC[%IPO;I+mz Ĕ͵L棆;)> xݽc2)W8Dln.XUM`&-5=ԍǦmQ6̡i秠 $g8+β!>r#&ѱeb̲FD*s5f&A[K~Bkۉ3\Ɛy Rx'G@|B޿sX;m홵ː{mȡxMdHo ;`(\ǵTNfh؛-seRbQI&հzK0 btxHG?@0;"}*@UQ' =/ H 0{˴6{}5˨(1~4XdY)^J+8_@(!xl9zU:ΡO|/YA1һ)1< dmmZR&vU$Eq->)Vip䡆;o:v:Gv59*/+kG*\14t1$&5.vn))t $f R޹ -j9]nALm!稤LAw| ]iPox߻z{c1)GO!lr-v@n of&JJk@N`.kO@bdq>b@q<ͪ᜼^8ܑT^v}6HB7N Vu0`dTݗ<:`p!.cDu|7S#k0`So<+_&v޳R+6TIk,4*.ψS!*hF[Tj'u y ̜ *dI*5FsxҐ/` *=6\/!y@~C1iF Y(X0!Dq _Mt_)FiVi3f.أ Ls*6= zE?3(C _(G?m ' ~VnF{6|3)|L[peg jDQ 5 @fӠ5A#ǔwgD*z|'aϊ?豧##5ZD+k:Vӣt%S5hiOD$jSda Ưf4TgsV8kÆ["* 6,;<B_P9]feDrlN}jD;Fܧ {ܤO*=Υ#!\\EH_u-;8?1 l(VK eY ܧET-XqSbXb\P!@ID6[`8֢sSe3 P^mz#nGu!ð TzGY:ͱ ?y h6, L*i pwJ]/ʾH^e-Zk T@I9t>zYz 9[N ,|hDz7˾ؾv8.K:"ԟuд;jn ǰ&8>\$GYΗTDfUr\9(5x[ 7#ygFͺ_ı_雂]/he; j Ҡd /+:!1Ld.XŌi 'ڇ 'Pv4a$$.ks_S,a E^X(P~#PLy(> 9w EXIOfSԣE dɰb  UGEOߟρOKIGq`lrj_ UOJj :,o< )Jb"P+wB IbiS'귱[npxYns!BE 9V?ELth=P`))p R N{-KfAqmUv g?.p?Y1村tj& v|Jhg#x +{Y{K4N=Krܱ5&}a(;Ʈ28ʥ\7]Z?dd~TR 5|^G(6|V 9-k]$ \OWhr5^"OD dj7̈It 8,E]vV>a)e{#SvR2nfL \ +nҘp8#Ys$^p&0" {lхf)LT<}Y *R~V[ 7pC:r}m~QűT;% .|PUY [$F<~*2{iMܝK76W(4#MKZcRZS^iCH,>fDsxyUKS[-S5ZA;%&)va&JwNfWgM~ E<h,WKݔyb 4z rZes7=}S(.mF{7 7QnjN*4ďG)i}( .W.}{Zx:r߾2{Q/y] *GX.VzM-LXWb)*Q3ҡZib yFd+j(t(GXdk^3Ȋ>۰SMeIAE!Ȧ΋̍"w*m1Y$h *)Y 2BD"mI-ĩjY㆘;xI+H( *KsfUuϢ汪W Ru{WHW;wAJN>'a dDBX-璜Ϳ|Pw&cнj(tL'K,pL?:/P`Խ'S`F5Z44^HocFdmMdHR(bߐA|irG&Bj nT鹘1mBMeԧL*7TCCRP-ACTNxq=tvCy/ Q[n^8}\ lY5H6ߨ; m͇v/C9@Cє94Vxq|՜QWz:26kX = 5+ptz!$2GS[HnЙJsMjGyO4b;Q ԮF۞Su ?59;oBsf=I1ӕ% ME)5]`Q@q3jCvt4ˠc Xi<:+fs%YKa ;RS]9z)HUtN^&Df8cOlj+bST_I=xv6Zza_ԏ :34fj2§T: "M&NoP֓Y!,*]bFxhUCRQ(`?c |r:Ek8F=N!F^RdhOnA)o\׆(ib0,TY8L`ncEAg 1+z5nRgT Mڨ/wt\uM̔j{f9]/#ڱ$2L~<-C:ƶ+5y*X*Qa~RUmlVJ/S8iᱞՊDda[1@P;E;Y%vGqar^ F-+X`|Cztb2"[vsk)jX:Zk_D QRɷ%uodԉj-iZE$CA{I ]v#9cm|j2 /)s%.?(?j)o?~@qfLʢi⿽P qI_8 NϾc/Ptzx2*SH/W)`6?UT$@~6h9#_]z(0eHB!Wr(p-5/T[ͻ!>]<aǎ@rR[5\M"W;O^(e^+h)ԛw}їj=04ϺZm?%2z%N=7z/F'W ARO$#|f0˴B~s, .LLtG,kb7`Wܭ`ޗ/0j +.&euLЛ/Q06wdU Pl'%/kp`d.b&j)#E0yxGHYf Gecw4J4c)]r{wsH2CNKۛ|˟9Rd;2t,PX@3V^QO?\Ef&&iҫHpyUx#5}j ~KDQx)o|FCҊ>d0KsUt(/D6A 樨گ㇤ƒym~d+*&hEKJ*(:Ū[Rs,_#Ū>d`$pT&$˳ IME-R^(@ Me1'X;m z$Ïqv &SB;1:~STϾN^ b[\-bh՞`䢉:liQlWe#[L@#.h+@Q$aNF㖸 sP`2i$`$Vo@/4UI^mF۟*P`z-5`g!r?†8z #+yױm=FÌ3_ Z5:.@^Z)>"itccR'cckLivbtSrDy.tb?Wnd1u0tU|.(w׀`< %'3 %p\[-º|*^GivkK]TH=`؊F.[J C|7[QzP#0+8Ċ+&'-˩u:6&ū$`?t- m.<{5;5ݱ~{1#[ޜeg$"IZzgCHLǍP#ԣ̱xޢ~9`Y⮦F'A"QݷK%ovG"?sF'Zr"X,RUors6q1fG~ㆱ]BJ)+<L5x@0rCY/23x%F.y:xy@?d+2jTދn%K֧F?J5 &G- G.$V.?.0abVF9Z+wv<c DR8X(FrZ?7 uf'(8Q?ܿTMOӳЏڗ蔫)j,709m]Þ@$&h˿{{6Ԏn%];!=-IFB,,gptv@,cY԰P C##3J\O,WrJ -si6[*΃#1&8jsq$w]:iI$z#DQTҁ̲#kO}ICRu#`aE lɦHM#)t~)αYz?Pt{˜̿穆6Rӭxt[de: #juP5w[\sLOymj7bjB /Ne]tѬ+kvp Qq f/jau!@"'Eث/G;Q*@X*YKP'`)5NKFcc7Y[rc_ˇN8#͵%py9㵠x;u,j;$%{JKG? Y/Oˤ[̫Xx^UQ~,݂ϱU/ڊk)' OqPD~5#WV5EydMq>x.N˗M78tb2ed`+2ЩDN{e>3W۴YASÍ%~ L"4ri)ӧō Ӌ{;yo5vlթ}2+}),x-_<Mw17r^vS#jw5,iDx< sioKd}v.ޤg®1%qOxXdjnبTt[0 ?NMt}N/]za s״va(4IT%~ T~IͼBEaKm^||ȑ|WLz@?&Sw'5pVr^H'kSiLs14Ë @|UE|IwJoȽB]BH.jm1*'(,tvAnʓZ6&N. -_B5&)PaFW5]qS7XvM'Ocff]B_si~=һ61T!ͫNݷo]c̬+>>g"[>OߎBURṟ0c&{ȲT\q S\4rISHM-S[߹ V\t˔ gl=X ‰f#Gb5 _ctaQuZxh[|qČק.g~AGVsM=%"G!@_~/gބ?Iv9 #h0nWmڐ) ;% 5_Y(a_rp1ar׫9^)@]B?@g&'v)֭SS=q։ǂn JSw% Ʊ,xç$ѝjA , ڀogx$9?2$I 6E{3ę6'CAb D) n_}P3a./"4;bDžP$ mq;)]rzO6mDS4A˶|i"O !w t, LﭩNR[M76֤[`ۖ^ztҽa_LQ@?&NL/fpНc(T psBspybv(FܺdZ>r 4FO;uAlaR%Xh8X)C)W;hO>41?=C~4GJ~W(iD-@{ >yMg3Sl3Q504pٞxmS fnY?p4X`V6+(ni 2ـN rj$vtR &'r cQF& qƜ0/HP"W!Gh} B2_.^!bĕ$ 1ƧsҌPM,E]WUxR4Qp m TMX)[-ڰ\ [ȯ]2UJ߁⛄;p/voKT Xl†yѻ%y p\_UþNF$:#=vY:O۶\ O%޳&]W&lpИ؍`<\6G% f,(<5*Uq, K^^G4Y2pW4Qcl,;iEɚS7 s(7r3 o&"gp¼]  % .NЅF|_ ࡿqgE$ʝbqPLlabl*D+}P#xWf`EŤܹ>NUckmQ<6Va"=[PzB /;?pӷn o5$³&7uϷi_{N&&EYZfAuEkFp;%-Kmw?Њ$m-)tΉVE01:5ݎfK􍮇F p˧`<,tՉ Sx5r]7ɫ&o]~R[6thS>γ&J!vYFۘF.$dk?1IqbSq_]~]<^/:$:޲abs *U!c(j~+qLW)juFX]? ' wp=^|&֓'HPK<-郆 5~6o{'<ʃK%CQ!8XAx-UpwXM-{XL}|D(?Netޫ@ N[oU-{]H*ZԹR٧ʲgLS8jڄoY%a)7"+j!T̴C#3|Howw7 #XNy&Dڡw|m#FJmE!#:vhze3,Hx+ u{@ct:]vEJX*J@NI]G<*Eo7i]$cHv^Ht)kBe)c10kʒ#x<iNڈ?G1'$MHdhce: *:Oʯ; EQ.K~p)YՌ ? <صH7YP@v~ջ^ Zo)p$ ~P ,Qa fߙ]NF}!18'ڊ:ٹв4p(G|)DHe,BF@!E2 Kz`r<ɂ/^q.^GBYZiZb= O[-]~>;KًVp"ә㹃_'s2q☕ g+(pq8i|zYc:dyd! y+7Xy?2RՅ**ǭ=n}?zZ96#|XhB<qHco&w,qҭ+O qn8ʫZx(p*MWt*uWGSda|vmvUfdVjIMT Biw%vgnc^ug;^b=:H"G+ɎH+(g̎0v"\Du v}6i>32q: 吏V'F1Mˡut| P ~核]/Q AGf^dO)c"1uP=֯9 ,.L{|hwBY!ۀap:~<۵-e96M7ӖUhrs:*ӿh/S_p;'TN@Euѓf&| YiȓŽ#pdڍ<&)u1ʿuaB Y۸7Jҽ"Yir*h \ܣžΝ"CO#گĥtj?]-e 'k-)ǎ#ŕp}m,P897a{4/خF=|gDr[/7ĵ^* _,g:J8ĊT/шk+! T]P0ga =$g̻U N=^jD$9w"'o*v6`'+1#:](@hJ8{tQ-@MqxR@D‘!}%M`d! Wh/u`I4'i6o/"Kfj>aG~77=DAz!x0۾3E9 IVY@oiNZ~Ű8-ɨ}$ްq&rϵAHWl{0A4=r StsI+DCY-iԝ'9o[-7Z"pr,~X:қ6bcU`.sI`56)\œ7¹thn786U4_K¿1C,NA34F]vނg\)Ag3٢/0}(y"OU2# GV.`;- zD82Ec/_c`2:iA#N ؚQTw~ ;XPvAyR~h1 ֍NM&ub6ی(Y^Lq=amIt(4r7 AE_[Rv b WEO+k7ZV1m]y'!hiW~IVE")6;no/4Q<jfJ6XA3()|d QP b}< #H?ެ N{]C[͏T1k ڑ}wcsYwV;;wdb>\S_ 5Su,< 8til*a}gTshts^#[e>7'H2>9]JV M,V&hf{B7 w>7z}Y97B'}&gu F   N%~FEte'[:a9`1:cPL$K~,QZ~',Dz %D9rP߳ :4|f Zjtݭ= mȳǤS6uY6D-ҀA0! %un^4HŌ bh)H+&YL,Clބy,Nd r f?fqN5||8Dʲgc6أ|=)M:᭢{<,HES<&z rICb\YC9@jN ]uBۛ;J:34Yy!ڕdž%|vFv:SX Q&r~Dm1.e7NSuSVZפIahg/GƸ'Wd&$J2Q#txgIG5PX|=XMV{g|I8uw7@KCiJD!XVDͷ4[O33&ݐ%:"Vnл = B-d #r.맭"tF uWfS*x|:{z^Z5HKn4I6b%ۭ#gK ]]j.B7 AG"z2A_Bړ<Ö>Z#KI01fr3s[@^29գ3 >[LmCfuae 33d9jpOSr=0i81{~fu`4E%N@NІ Hb<ycjűާ ZwSDj4ATGG]aR t[0PdZ?xC*@#%W^(4oyEFťe1qVmfrm'a?9Rab;2]l>D~gHɴ.L~Z6CV 0\8_NxPF(fm|㊁6QCw KV{8oeZG WkzwHĻF8t59⻆{edslj+'Lل j$1CL׋Ux^-o rX3¾]%bb# gQO9C<0S[Tq8YUq'W~~~*/޸u// Vd3)7c+>u)u9 #R#0Yɐ-6r$*BnyMwuq W)(jo5&ϲU (iZ)2(!5 *%ISǙR8x7 ;A)(?2P-<96h=exҐ)]NYe!S<[״㘓g#̕?q c%}Od x[g/ƻq]g4Px?DJ^b?.g vW|nz&z"f^-IٌWoQR  Io(#B'ۥ3dY|DC 젷]fs' l/=jwȡW$S@uc~fz@g^F]|%oZ5EԿ-ն$P6zdHzFxV&`t g6Aq֊>64 υuNa^HGfby D?j 翢 |űr9AAAJu3RgHp޺V,`z$6SPw:Rz k3?gjp6 tgt?W̃OwkZaТAt]H>T]6jȵN5RvQkPAhctZمV$GS}$Ԩl;V;dkgczEYb!D((lBUs@(oy(YQ[#=AKT÷GYU]Kn|ȲJ*oID%c 8&+Orh{c.[{+k;]EZ,@2UT;O#n GZ;[ \I2qAǬG@ _V]§/DD> 9x8c."1RqY.g5*%hIӉahƓ]?|~*cg~ $86ٮ8g~l'm(mbVL PiM(@))Ӛ׾K l? %DSs5L޶ e}-lE ?62 ш1TW<œz [&x`.0PBfEh~0aŨ`h[u'EDÃa7@~[4+: pre?zg$'z,Nt%2h >$I]~WLغh_nu&̃fOR_֬eK~wwX٪LisU\uJ5[23Wrq;%>\:ffvn`+;?MQ?Ib<{;*Go'9n^y cƙ!RV[6Yp&2V@&T b1/۠󻸀N?B`}!Iq94pubƇ-I~oq3oid;#S[<uz ׋P;L| TAf5/ @J'NO1aVxI.k:N52z53&W@ IK?a+|7% TjLUA_x{̙Կ.ڬG:%-_hΥR3 f͉q‰Ʌ!ְ%ʑ*h :)  $_#3gP{?~>mzuezwm,v1"G>Ǩ 5E7Qnɯ2ݛm #d*6;kuP:?eK=-Lb/{32ZA.ug""&r've=_~γQpYYɬN&,}?s#Ʌmuv"y_L4]^Ċ0gSvI9L6nCnwWsD.Ga䏢m-6_eqbBv=vM&虼x/EtcַQ&*;OۜlX(\ZV/UЇbr)`広${ 1_^g(tm a!. l!|H[ޘzA:mU-n6"'xOo̕DgБ o7 W,PAnh3Ds:hG;_f2D";/ŷ/!.Hr'BHdMVp 9y(qʡ!0~~%kՏfvap!,&,Q6k v3}=%X-k򵭮40 :-NJ.Z#@Ƥ~981Rӗq'TwD!BBPyW<;FµwKamGwm+l XE~ W8lmXSaFs %pt'6v^Bh"'L{KzuM qy•u! 5Rx|XYV]k0Zԣ-vWKFKLJscXz7:x}wadp8>/l'p[&|%s}^*F)8&5d1쭜ri(p>*WPLĖL 5Bh\SO+`sM&D1.UHZ׈j-nTp4j]%oy0o'8^D& B{$0eYcsUlw'9s67)hWwaj9sh4<5g'TdT#:j6Bh bG$/1e;vkJDaxGo4; 1! @xiz!bl(LMIb)k j=klSbB°֙G70<}8Q>K a߶~dyqܿWmB<ʌП3uΫY?|ɼ`G>`{30I!VgaE7F) BCz5!V%W6?KPh8u-/.瞐6aد l6ۃ zޡ'*)չW:'B@ǭ} cJ2X6҃h \WIz*<dTVC=2 (pEW5-u6d \Bk#x x,0 2sCSHQ\BRi4q*s7dޕ+`%ň7Ʀ6yLf$Z+݀(ʾҍ-hC@kP]>*KxS<^zΉpM_I&;mJyeE!ZU oj^/% mtr*(Rs4Xsꜧ":\ѬT5:z1ź-37xr2'O sl \6Xvy3#Pۙ[!׏u`Lܯd;9,{\Ptwߏ9f'3aÃ'e5Kb[ur]l)lj_/"(FN-4Qǫjg4Y@Vs?hWA}? `(웾_MÅjhDp An08$R%.L{wKLN=eIAPkm6Y=BКdtUr]Z:XgЌID =vwOPcY#N 贙I!M1@ ڴ6#`?~KN=8U*Ç/mSLQ2^%T߇HoyE`5ˁ#.9,UC,JF:U .`L76>" my̡av,< 1@*dP1c41)/:`z(&8plUT9 \]a4[Ecw߫5Sϊ,ۨ}ɱʹS&5OA1@I u.(ymSz2> 4V&YYYjW;Pۍ\,R%vtpǗYkLdv\A"[ªLW+bO.&}T10b=DDR퍍#{~L-Pq\~Ud"%E3݃BݫcubZ/Jw*O"INԃbF8ur$S-,=e2B Hifی5DbMy< )c$TLnjnje|sS;xf,wWEcz>$(<;gGCfiRD QyYh2+tͶt+Y2Tع,*O\Q F'Kn"趉7xmk/r*\syR{%TR _Wq ?Zbfm]p)+Mۜ`9[7 lv{hi^@q&~, = B:ut~a 6JC/Wf~(NB'Դ~:&:JNˏe\цSlj9|h yb a`hg*msz&<寺md紧BA 3Ywʆa)Ė)Z قt십0og-lHf^qҚ&j7CJܵ!~{ z*nj@PZ=ma(6z^l g䒺Ptz]Q=l:A.y) $ V&8)tA|w|efE.IV̀">0 iʒMڀPXF f,mo&u׭αdda}T~HcySm]F#_M6-*([+-O4OPN˳NRJ/Z1/BvF2fmp⼜wP[ǒ5q`9o'$F4tp^2 9z5 ~imIׅ\BΗ]6)n1"HwÎ\Xngc˂mraC޿RN^XNBA+Z=ӂ|čRSjʸ1@'8k[ڇbM!fĔYki5t{8b)S kF=B$0k[FoOw*3x{h!hPo`Nn[x//q .Ξ}uM 5j"5lk+6@}+j\ռԬXSuJw@MS\Es#>\ߟzɼNzΟV/ ,'k39@y@Z d*Y}?Yvd\]|v4jH/֎f5LN5E{ i&mFįh;J6Ѣp`3ABұZInڍj;DM 9I|P\^dMP-QBT&yy+"l@yRA@dDM1+X~{~ M\ >DT^OF܏>nhùE?٧>Kb,ÇHc]h,<2mCiu!̻ նI:GH/uLR*,Xʎ2J'ZJVz9rVz.+6eQH[7Um, ,$*Or+obx!#`9Qm"d1tUXߚ UE8N7k^PrbXNw ( YnnS3r"7,vK'j c A1~nccW%rF"'WIXLFYpݡ8Aww&qrYЌ }.2l]WNl4a {ӎ֬5AEZ)zjP{jרe72"J;ZM/,CS4|VH۰GkFGoyahXB9@1Zsԟ}t/=0ʞ EmB; NIk! q{; iG|SjXkmvG $݊o}nxa0hvx"2!ځ&jMN<|X !ė/} n=*3|cC_/$%Ecĵnwa;!g|prԵlf,h9њ;U+;<6j ʺ2L&{$$ ذ=)q >~e|%*ꕁ tU)mkW38,GςK(oh*PxɅ" Qlv؝8)O o6pw% 9K4c$)u &voq96eGJmˉ+>,R٣2 YW aT%vM>=N ` F)A 8Ic@" Z}6d*RE!'-upǑ3w4! MU&iPQF0%Ceإn;eS:|c/prWGMܳz,Aځ/;3)buHrx~m)I.26}' k(X5~#ةbW\5j=jQNAI,lܦxũlδT8YZ(s-&\P9Qi6K~<"kZ| o^=;,S܂ ̝ jcG:ݳٛSjXؚ4rpӖqR )Y /ioCǝݗz| 褞>kI52{D#Z:+ {j 㹭dӧIg[4/TyC؁2kRnH*d?^)*6fZ9XѨ,@_Cĕ,{1zSNoa䄌uq@c̀ݭ^J;_@Oޜ$m4LΩM`5(K弋|pS{1z7fW+Q_FmdB[Y>MYkY2!g{ 1r/g= I9TO8ugEҪZJtiS $$h2,#z -n|k==y*=ԬJRNjm]eҮVόw7xϪ^2M.{7'ˤHE#ffslj? usMgУ]S\CjJ#>3g*P=_c! dr̪VFyuX|Vq~B8xw.x,+%m8.: F?'2E9Tn4Q:0>݁Q^D)hFI4&GA*m&(ءmݬC'Vx-Տʶo@`{kd | 'eȑ(Ŋ9+]Q8+ cJ&>TsV1KAL>{`5`=lK]Ki?N2g :5sAwO8h(,Q~"xj$alH'9qIcF"Sf:Dq0&U]" QWiNu+¾(0M=嘞@/'쓝ug {z ܬ~Sq'@ګ%O \go%fY>]?HK4DE2yF\;vܯ $X#=ۨKZZ6 #]HuѮq^VWM( fLp}uB>Ihajk[z}T>kx<ތG;:]<,t5Y°Wa0*a28+R?CD Z9wCShmx! xϐA|'#.-%>&-x0r&H8ʯmchG,\pF{[.Zt tѲy(k%<`;74ɬ,#?m XJn:|Nv7h)+yOS;]嚜ywU^:D+ށux|EfFZt;?w_k" "64u5ϫ,eBCy=S1 gSxٛw҃﬏ h(Ho Ր <=6G|39kI^Es4o 8 B9#ǹc1s|3H:l73)B#ATƦ՘3/[ܫoZAh[|0iʹ'-o[a0G4ת/0M:*C){H?کۈԔ_‚%慗;AQRZ Ls~7:yOi&SIʻ_h;Dm?L_TxV7fGzONMƲ'aRPCGS ) L /?OD=`?RE Q2pb!B<=e ˫1e'/" Lq䃥w,@DUnDxnu`y*僺It#3,H $/;ɌU!#{|5ޔٛK0&!17~R38IMs`m kݔ^.^ Y-jv4Y r/HPJ9z'!h~})R"Pw)s&EkKx we3C k/CNDMC,Tx iH:sp+b*8P:ձq&M}?zU {QZo3Tth%-$F{)c3Q]S"#]Jd{ڕf)Mπc3*u; "{ Dگ+ g%'k2Gԛug4G<lZ>o8D ǻ;gK[^oU 7-N;'6&'/=Udr)]MX=KyaW't4Fsk/34IqHйc@R@$ޤDŷ.yc6䉨+l" 89M;#Yi䚶j?<&nMPg v`Jq֠o 'X+pk®@vARn2O]m{XFg\YB/c$+ˡG#؅ޜ+DrP}#` KuO6hyk(ys Dlnn{<8=Zy!E)307 ]+Ȃc&jvE;?4f.4?~+[R΀5 ҳG^[̽,Ojad#Pq}x6m݊3}>]m65q~/ .F ,"SFȁz[Fp [X. Ĕ8~ 7}3N~de΀/e ~$Cj¶sllTM4 V?ވ)HW\˸f/a%J@Ѧ6Us8X_?&.ƚrd¨~>1ܰ?˸%-` A ݀T Y{< /ȸms&g8pd!/ŷu8Kßl؀wYevHNt[gKexɎ' 2PbV %FR̢us!/ĂKX4{" r wqA.?e,L)дOၶ*e_ ÀAٍ[Y@CΔ)rB^zGEZV˒Ū1^1)cFiy#\c` nw!wɚtqx\=ԥ'L"W.Sq09 oH4L,C%ZA?}_60NOUv} a u%X́ HyU¿piq`-jK 92L@}GPZ(|:Ѭ<< ::S$'Q5w}&NGi"F9& P/?6Jr.C 5HJs><=ai.S4UWYscu"~~A}@ U@3n}Ԃ-%Z)}3-oɴY;0S9X}k83vLm24[rNw xy#gީK[jI6:`H%]$+ !JKx/}ߌg!İhW!^}\pp0PB*괉0sYx3I?QGG}:gHh5@~w! 7e E<E;Nd8i3{ *I:BPc}( ԒMZtMʕVL\=47!Mnj0sу& b#ӭKBMA; ےq}xS(^XYՎh܉rآ5!vz Njdu>z$)-Ȩ븮עŨ^aK/&IPm32Zt3~#6J?)huҘ(t"H*6 ldd֥vZ$L8X!9I@FSU1R=L/Hf`qz(+ĚjT4pxQV:kV,8×o7XBtc{(<:hZW_=Д.VkգC,( 1_AKd]M2?iahBr"R/D"od4̔)C,S/-Vl$n!vcvo+lm}ww\;^5?qo -4ILTVla{ϔl9ܡe rA_&KYemNbPi 7Nhl.xӀg(8Jrk,|.^H|jti{¾ɋUU9~=b "`<7>m 2Wd]W5 &!#7`c nt bmQ]OŐXŤpNwtY,MC1!6C*_309>&dޔ_!XֹherSgž A5r'pY\eur DrKV(i$Hb6 X7|[@c*yj4fqڏהCZI`v謀{μ|AoK B/;/ Yּ]]03[&m<>yheMr[cj6]D 7GJVBe^p#Eq O6I3[[ѦI#NyQ` dX#~ң}\ T>xuzXhJDVq <#};Bi5&RT`G#X,Qp(GQޤ N}vdz t>.R4 >Eh0^/LT>`:f֐nqG+m :,~tߊ[TWZ&ѿut6ge>JżrݍUSؙ bj\`$^igl digB'hK[IePU%q#^70;Пп,CՅ Iv;Gʧt\)_J 4u{&4+tN7Q}tZڛ$Ӳy>@ y]h4گ +vs@4eG2/ |b-:e3SY{I>L JKm(dC'ZW}`r;Z_JJ:%7(HvTt8A^=_!]UJ]f̑ځn&~jq;qv?hJ7oI[iH3x8r?ɶ\܅]@[Vfvo]dg VQC6FB:rvi>[\;̵4-o(I*C k/&eN$Ps7c1{:9"SmEi _iV7)?0ɗVekvXzX0F4쮔{ q^z*|b$pps'wA#Nuٖ˖ݕ׵иZE|Er 6c?ʋڮaמ!ºy"3[D6(jCL%g$S''PϧLVƶdzB#솭ige7n]XVסddXBE$4B?nA\ܱKj(L.k1, DFV؜NhaAzvx%-% ^w߽vOPOa(Z !e㚻#C:D}6Yn3do!q}5=~X"JW&i3sa[sz! M""BueO?u!V5,aC`J0/F> U)*YJܩ‹qN 9j gփӋxMY 6_- /b! BG ml_`IlǺnW>;,j =ߤ%r|3SW)$OoGhJQDn)N<_1pi, 'YY=Ym?G)򳄐EnOCtlΝ,HomjEoŬHpjN)΁F-9gx1r( .:!J z0^o0vkI"\;H 3E]nZWJkI;|knN֣8C+|ij&*uhi-d6n|0mk8+aCԊqȣr]Zm.mR#Uغx ̐ݦ2}X9K^9I3 6U}*׾WL,? 06?bȞu*8O=/ty!֕;G_9oϢ3tKx+aS5jHɶca!jff x#IMJKt~˛$q@Rt["P'd@ge򓇿/ baϬB 4en"umV}8p_ *^kFҷs{_} xQQ9KQi 9Z#1Z \D+S&Zdj.xf Lt̰S ޑM>-ˣĿ:FC%DAnibC)$nG4%IǞB:ߌ!j7m+$N穼sMg˧HS)qAU.\fk0*~]4|>ho,<%}r4Yj\zAehIs[d )g뎧ɫy擗ޖ. K.u{ /}]!~W1I,;sדʆ=ъ) եt%:W}: @g=sWᠶ{pa2hG![J~XSg:x(Z4\cӤ:0Vޢ+6h-19~i8g Pv >LqLuQGn{ A@_8 Hh7D#o$f!ȼ)pa. )eZP2w].d(UcM##c0!%Cı,B%Aw0:xGDй6TP^,kke{\ )U|YP:pZX>GھvO '!: HL@a޳qtG J0K|JkmDl:XgD?|ud'd{j`(RҁQ͗eCC~1V-@}yiHCFua'K[xmg i]c\\tJ6](UM Ir'qG|Rk@aq-:wҔ\ǝ!EBnGEɨyD&Q1¸Z7|b*}L*3{A}[%krƪ:xU>"pETbrpJT/L_v|[xtsTh%YMpeȦ[$[x|qSF%Bn bKOd>zֹ zTl*?0T e1#t(f>,Ρ5UxIK=^?K֝3TK*ъw'sp*Qi25qc՚JP>s|fTL$6$ `a*̔Xx nSꯥqԷQ;DX7H6yæWMɧj: w5>M|t80R] FèVXŚKՋYz}Z% RɽNƸ^: v$Z9jnZ@ y3_{7hU:BFD1i"k1͍m,=?-~pRq򷁕6.0CdS%=ӓcGGIPq#F]96>\D1\Smn o໼4"IN;uIu@ lx-Uto ~_.g5"3?P *N~=DA!s2KB2yClQ聈9j{ +oʨa>hKa0G"@tA~ނchh}#NO)Ϥ%v1|XIEfdsf&A .{#A弡fi{g\RvkьACX޽WD)kPs!~?Czڠ$=OsTB SKvZ 0UqSPI4b$ 8*I/Dn-DDS%},}(4z/M*)Ko gW7a< pz6oo1#PNTA#Tp]#%GXa `*}:>Yzj '=(8 Fu3$qDZ!\u1TtDh)T^>qcb=O3m` jB*6M&@:&X w Nn~n./8, x g\l=AsoΈ{bB3b87s8JR6EMQs'^4[Qoo3w-dBH雭_JCD, 3DdU8xmh3L/.V\MSN\ Xj0ɼpVsO6* G#Yp10 }CO_1(xud\,3zroq48./ŦS4qNjvq6lD]E> gF-;k(U]ADK.0YѪb+\Ÿ%*R5k"i@¤1 ֔oVkyPTK D]Y+穉bڗ}0M(VJ2eCvC<c-!]azʊQalI?̏y-2db \/ȷtRuQ!DI_,C4 zx?(ڏC[uLkEJu ԝV|X<֯h^_>s{YJ'ȩ32Və@|Up? FERlBOB_ %sv4#KKD3p/F^!|V2_4k;G }(zB`g~'+;H !W Ե _:(Dk+f "ϕ̈ᑵ WU ~?7IsD~V6pl͍LK.GZLhD[x( T):]{Gq4"csXi/r(0֖BUDG}8+_[+Lȿ붗uF'?!⭍V } ^)}cź/>{bSv̉P~p==+ FJ1YSagRi앝C3+4OzIVZq`+Hwgӏ@gX=P[U `i iX7>sщ&}JQc3kXU_=*$QV8vnft=j5cmkG_~`y^(TkMᒄ¤LE4 %Awcy𿙣bAqJNK* w:m  O{FβѹSu_["Yq#,a0z 7*5-O.x«-<xա}9u`'XsY575V!k9QgcҺ5M;`&JxݭYcHf)Y,o5!Afeg5CY_@eTz3߃;;> NWؽIm?¨8.ܺ=a"7te4(D%' iLA7$1S:Fįk~Et+[`j ԌPn-=eWAj]J,E<=A m~`P9:Lj*C6q֎SP!4( {U aI:^&1UCDg"t~xiؕ{fň~][辷g lKd -5ʁfV7;B[ə+*QuDa7@Zq?T粲mZvtx.,4\/YB3ST!hkY ZPBC9bJ锪HΠKP.aU4Q4z0R MSӃ`7@!sx}j]`R:_᠛0 YPF&B.K5N_sk O K)CfrkZ^-M-EEȰAr(>ߙy1,ȓYGaђvNM0f..nXE<;_Mb\fN1lŨ)#/oL/wO0ߧt׷VTdg=EX)|t?I`60tiR;]Ye ˀס+IMs]\Ț ~!"{͚8"<=_buVDZOv4\3sC9Tt>HJM@R:Y-иUBV(wM@_^*rJwnA+'v]""V5͌N(X|wWbPM'ę4j{_ bR'6,Mc*Чo}*g[sr7>,>䢻Ţ{pXj˻ௗR Hu=(ug\-#pz-j!! ՜W,p2Ĺ'V<&?. &@.ks G:s'8#?rUōTT pNE CuE_ .(c*.3q_ a@i;[Cj4sZM^Ukz HOZzŠrP6zIW0 ߻ 0ģ;%,mqeKX+n#&L*m0dY $K \dbe !)GCLۨae(}#@ \JBI0:38G/ ^+kd&0{*9D3V Ժ&WJޏeO/MC^T +X+x02~U`u&*r&S#ɉUk F$37#+FyRRZ8'XT5t/_xZrʠT[0VN iʐD%7\PG1*Ţ / 3m$d6&vLsm],Tj7qaI;*d[ط *7Ø3iMj!P2kfyO(-&tJ8~ⲇb8ↇkZGnMPƩ#6tI=(p:ט(_21s';GPAOK~k ¹Ӕ6N]pR?Mq{~ak?PJS:I;;7rف4nO2i@t w.ڌoPݸ:]M^([kΦkFؿBBUH2 .1|h7S2KvPQ`Y/- &HY?\6~OW2B,AOG63F(Kʝ {hTvn(4QjW:D?z&KE¾h,0Pn;w[FًUls+H&L&=.)*TSD6h4ĂqmBø(^ }h.LYPWm2p=ccHyx7i9%[x&Xy@plbHۇ8XoǨq {$݈B/#E쐶TV^+Md?. *G쩩H`|={gRo*r _i(0+##m!0RqӤ]RTE 9.W7"Cڂmtw 6}F=ƪ<Tj9L#zl3liIs3["ՍB6>ޚ0yw{~W\gThF,0X yjԍshj}d2S"`HzNդ%CގޗЍefHom"XwBޫ( ]A<;@`y?^ `tWIwZPaHdpu[(76T.G2g *X~Q){aBE UKT %`8荁7]U=e B}/2$|дlǓX Dڅ/% RݮȨnN~KVmOH%zV%gLu}޶ދn فKy][Q(0f~ '02-/Y[99] AƻEFQ؀se\; iy& IFn!r;]>H%f{DŽR;͞+^ȁ=1;m=$?߂qI7 C,"vO]+UTpt[Yn\:.3iĭ4t?Cު *?k 8XO9u50x~_I _#{iΎ*_#y)\=YCSqEڮUP{[πcD'pjٵJH@Wj#V@FGF-S;x.K"Hjo֏J&ut77c*P`,ZY4>i1rJyHW_arw>,] < kfya`I&&AF3ih/ꑁ w$bF=} <"RSsoW.t{'r̷VHBI[I#KɜaLpØ u%ڶm0M>B/9G>4jd@Hb ^ oŞ5O`Ԥ@ŤKW@ 5$fJk" WHh#dGC2%_<fo }C~סL&Ch(M ~; Fx6lB| MVwW,ڞ*ѕOw %h#f̃)wB5JٷB)6n$xre^};PeS/dɠ}'Rˡ]cr#҆jo:`HY~Q Pr=|dc&gGxF}^S|aY!>b j+ğKO6BiZpiBzNl`$|D U _a\|?~'}mEr~3$c ;3!^Uk~DZGXE3u3vtʡKI0෰TlCp/4s Gr!/Gϙ%Y<6PQa݃LΪOem;~Jߋ2Otëzc|_nHQ`S6zNMVp%_@§CCOu^MJxOۈ?6#rS4|"WʸJCvJ=m -p?F*nE {lʮ!%yI[,kR Oa!]#B`۬Ҙ7Oƍ~T]c3XNC<}Qh/t;+( 3q#h 6&^ZI%!T4@gdeuT&ʵ5P`~@u's~^ڼP`cNQP"vEs4 O:-bxRm9VyDq@ 1E0>ots[˲:nUs - vqxwqHAf5 TB}ۋ "̢DdI;%͎c%$5Պ3%lNܘoX>Z`ܛ;F/fσF?9S| 5O}|˒J |Z7a>G&PwS]GhA/책&%@f ` g /Ϝ5؋Ha^^Q[-#%ZypN@{ڌA[SynN&`EMZ`S o+_Y1dXp!(͛k +ylps4YȜ2˅檻^=  G!Y R _ΰ1aǑ||Awr'h!&/IZs8 >IhntGn ?ƹ_M?MS |oт}D(6>}$Gڲc/p'l~`T߭p˹<OPԓ¯W*XK؛@:]Z8Enc0u޺]p |=V;|4\Cu>ɗ#blün>`~޿pkJDsV;wY/Ddt!U4>-mh:=,T8ح[49 R-ik 2<(9=ʕb3Ɂ^7>W;*׶BrpJFDRRa@G= ldxbRi\sHӐy1!T F# P ~X\T1 G?@}޻d1%鴭6g𑐄L fAvh9DHEAܾ!D_\fnKTwɅ9-*䑄` -ީãw,adG?݆OϗAS PY?7aqx~C\38nZբvNvFt2zDB,; Mw$%TS>ع \$k%㔌ZܗWiG͙qӨe#U(WR0S+]v!sG0oQQE ϤoBEb'a+^@}5V,F|ops$?o-bB\3;~%_47buNSwvйH'5w0]/`/*ϐ:TגB5(84.kkрX [2­];;#tsvrIRϡPf5ߩ ΕA&Ce&>û6'6&4Qmn=ZCLOfjA=2CB޻Cɝu'%4.p8uW0 sR xlxI)``{qLecw;g,d_@ Zi%gOaR3:e{!;RS} B/aXrg 4U1:'+ݛ}gO/ϭ"cݙp70X6XxQCMEH;b םcӈ:Ig/;߸i5Z[xxۚp-!ޞeZ&":k8%qZl92^3z*tMob!}O%OqHr'^hД57%YS- A71gк'V vzۅ k,Y?_t4}X ̕mP;r?az#"01#$3G* }ܙ4ASgqDJqi 8o%W}ϵٺ3Oc`0="`HԑNZAIS2K+` 7jBeH:51Fmѧw}Z hj9u~l65;U 09z?Оr|"PB/Gd=(%~#sv!yP@a]pNMwWaJNkNFɑʰOWK1P[G@^ǓIwKDyUyc5j.}&ײS?VtՠAˀGդD4U̚@s#j}E={jpdLޕ3a3-/@vMdNsTY=h*tE?zR,yc Y@?i9Cw}o93gn Pɖ2$cG.k Ig9 z06KPqc%Gޛ o Y<I6M %嫟*4D.&&d]Ҧ8Ë"BTG)I{%8r8-t|bUE]~۔SZ1)6#4Jghҋ]$U<'lPf:qg}ŨZ RS6.}q)KV"YT݉3lE܉  ߊ;itI,e6&DQ>=],"ԝ Jd…ĕ#`},0FxNΕc5LǞ@?8582_iKUHVY\{cea.qhTJEm>[y1Oƍ6}R;P_4k2 Xflе%Ms;$|Pîdu]ŒMUJqYGZLY+wfV)!t %-Kj6&ntc~gIp01#ݍ iRABlxw`o[Gɷk<]Us P'4eVޠ2S2Oy[Nt.9yqkxyS|.$KTl6b:Ah 5^g~V M؞hӆp]yz B87|j Hɻl(7֠uĠi@S7Bl?5O~Q[b-l`J5,ׁ9aEI& x(nZ(s ғ$ Q[Q-KENA;aWrVY3˾0<:e!c&r̖t-Q'$]Jw72LKPj-T 7 QuY G"-_G3,QD\> C/l\ U+s3իqH=PƔI.: he[)s>ŤyCEbt݌‘G)֪ mMqOКHi \P&#z; :btM熙c7P_T46?aVOR*3NX5XZ?ZSSU[j(-[Vl];fQTsVԡ?+E#0nMCPl=္3e,rg^,!nj RBXAcZi<#lIBrRA7ұh$66änhVEk + pYeǚ2gH$#Աgpѻ)xF56mC2@(6V4tsp/?&]O<ۮmNâ,tMgy :r $3YhYhZTm)"q=I1Tѯxn:g2]߉)ThEF9 rcW1"=u_ܼfIdE-ł3-cZP7D\ #%lfh+W{UO:>\(RhHQLF۫5Z1*FMP$z*9ߜV߻: {9ϧ|>Ԡ%I: Żx&۫p*[?L7r&ɗV0=o B , ˝"U7Zx\>V[Z]p^,bGb*1߭[*5i-ބs$8tK_r_,d&So^C(~"[F/R5%鐶`<lj>Yq'#6$>%lndƞd79LcW/QoABܩmd\p1hF/g\W:pl9Pctf r4&-&L3 H0(8,੅Ts t,^]KH@grȂ˲atm\z,Yٛy$Q=tyDؕgxuӆߞn羥hʧf5ET| }mc?}g:B`;N) NºZ>TD_dY'[)|nY쩍=aMy4Ojkf~DlMԱƭ#RwM: BWm$l)I?JNxƆ֋&Q2sgty^?J$2!]fSfVk/Svh@(No9mDjE1C5{y<0Nb 4 lʌOup6x.[ZJk\P=nQ}=>q{")19/>y2>MSl4}"3˝]qoۋ)}f]y|`NG ܡ!Tx+= )ak Ђ8 . d >$MˋRmk/#xπ*=d֢0[_q!w37ëJeھy 7,`ܐubW_ye0 GȽ:a5٬L)wON[5ݵdQ#p/1"Kzn.6W1=֧>zJ x͙Q%zkғ02Esg7tM̸Zp.EHPU+$6"jNM6\ګe\m4Zv7c&i*X2\aceg3z"Vk9H&&WĀ'l~G +`ˀH.G8'A:srsi4mCt >LQشSmT9N o3[[1p_uZqY h3{9SNuYUM,AߊV,d#*Tp]Rm5бTɢA2XQ6UV5@zF@XZ=v^6f$G,yi 潕)L; ߕ ٳ#`ipE|5Ӳ3Ielچ o#H7~#:u E:v+nzDbM$8XÉZ,sIi5q>hp:vHF f ~eُuS`d$Ę3LqJRePcϷfB!?;|#Nd.Ûa]m>hJ/ Mͱ,O").2M0XE"#:˾M"v:JqHEc|.h[Ze'7r㠎6S̮1 I_&B;i荃S 1@>m/y+F1K">VX< OBϹazy=5pGGkb OxUE~J؀e DL1mI" s0h)Ŭ^uvm(\2 l;Tzۉ_ hwLJzqDv`c˞Z(shaUӖ&g8&˩&Pe}w0-}hKNEf9ɾdx}(?UZ(5/z֋ &~3U | *łr+:p-6UV^ ,JLE^㵋D7gB4e`&Q1w|"5<Gǎљƣe?]:Qy)Q|{᜴n! Z{OwXh*~z69k̸Tr#p6ZkdeVF:q5N`qT@OP8QւhŅ_Ŀ$'"U.ϐ1/6n˗2OQpS(x'7Bgtv=|| b=Qnkn0C^ kL+Z#"Y㚄2w0Sf bdRe [zx ߉"lyQuzۜGXӐ1X\ݫ8tXs8TlNཎ!gN^m:Ey4:NE@\]/Z']sf6Byc7Q@M.Y׫>wis0+[%{z:݂\#xW ^Ty6m2 1٨QRUP[WX*[S iyHdk-R0V.fwIb)|b]dc26S?RK&C=`zlTB4 O$dVsC?- 1'Wmn9'Kf@ga<[0#y #ӿ*Qɸ9S-gctu/[Lط4}A?O]g7 4bF=s #~ш^fXH1N+JZPV5 fz}\8DR@gJ;Gk8_ ƌ7,\:z{Q?,$\q1(X; ,薞dn'ͣD>B+73Iyj;]u\j0)[]Xٛ/v 7($/)D2x'tʷ_g(:=Ⱥ.TyLj@z3@A16[Qmt l!,GkN7('Ȕm\K%7Y$x`E,3%h<̅2TlLnXEP@~rwXm'pv:dp^ҥğ҈t~c[7ȃT%H7PJgs@ɟLp+`b t*WS/L oƠ#l1XS!?_'! t:9ps߂++=Y3J uK%7xeBآ- ,Z1SAw:T4֕yV#/u9D9f2PT?*0yss~Ntb0Γ9y_J`g J7{ -Q褢4- "bgZ5 m!MM{ 䡴T'I_? ߜ7' "%<ӰDI*"LįGxℹFN(&y{zHu!B+uH##I扐},h7Ō mPs-8d7[()b8Alι &p˪ʧ`' ̊t+P2#L0i2X!8rSڬj[.l>zU`NP|E1VeQ %1Oh ~<]nkQ&Xz )9I$($1#М-py(p6%Υ|`Lp) 1ƈ(2<}\uD{U^&&2!ZUQޮFvCɬoÂn.>g(/-q@43'I[^IΌHV XvymX֢ZH~SGSjɤ2`_#c1zbS&*6 B<a̬3wcd"ec죚s"Œr=^|?nfx/[۽xa( >茸( Re Ft㟰hR=;\#bܵ5h8ln*`YPY'7u;iaO1qL4Sl,fh YQem*d 1ID ?ɜ W2.COa"Yv(XQs٭DHf!pn4_ rw%x#&Ӄc"X,L9&|gݑu7*ݛl߂-BTXfySXmqv.4Z0Xf_zSr@\0ו4pߡjL{XH-.M3VԼaN%'aߌ#I Q@tt75F?jhmCLF{_U*H, W9P|466dH^Vt}j:CK}O "j<Ɠ8lFTTJftUmHД{ rcy؂&my_aLEФ׍-Pq60 ]54-4Nن?g;cّ,bfOO-1Ϝׄq@vq*4EbHß-0CTm2VP%^|J?~UUsb!پB8wu|wp(ҏhAlzB_T5khU4X;8{. ɠ 3Jq6~OeKx%Qm.! )~rh7qPKT&l2h?-ƖѴA%( ?wOpMD;6.9uf8ނ~ ΡVfPӇV,J5]8mb%TT\&`hH>t/C oFp2 IJiXl0M[R/_Cnx̚ },ׄ=^P%_%lfZT DwXښ\Koը`,[천5~g3VD< x\B):xu>r͵#!jQ|wEBj9j_0YX]u4)LݢŅA_^Po3Utwhc>c2 aU< F8mZ"VI&ؓ`tܥtS@K!Wy_^p1VhXv?tXZnZ8uۗ^0ٰ|Q֖X`<(:mEğ&+ As'$I_hڔ68 JDn.03`jC B^P^#9F܉wW^Z<'fnSF0/~x_<.Bn;eL'([rrav:3DA,)t/5|IPCͥK:ַ ~[^ӜT<I7j huVU4!VzI) bHǽ<klܸα|ƼJ?"t?bHp y?"ɜMI<>\`:U1[~> ]顋^@зq5n3>4Xa!.'ش7mFI>9 Vd^12s؃j3bEYnz~Y8Flg^eGۋd8E7,&utңtb},I݃9MB'[|,;IWta>p1OF3z D8A"c0stu޴Dҁm3eP0&rYkhy8U5Xx7ތƀǒmÿ%'Ӯxo_͊L<8鳨 ( Z@ `wҿScV{\SkhRc,OA= fUm 6lJD{WqA"G;p CoI$/j3{Ќb>zPyr꽀@Ks:D z6/5[r?ڙ96}FaЅRl@zg6cՋ=Bq܍Y(=.g*4 xA4iANΙTdKƦZ ( ri~N,t ͅ,e.E'r 7Cq#ƥd!1jdC{LM_8bllh$UR,;rçccM$l|RQ q=$GXHnmGk6j 2p+s]do\h״1Pz$u.@å0.4n߿hkToZAʶxFR^-/ f-^ٹ`Jb_ !k "<▌ь+9J弋>ݎU}h[X#w݆r-.p w8&˙ 8#P5LK.{l,`dK;#l9$v Oahw 4R##&-R|xni<®PGv]ا'in54DGYȔ]举|-ɋ9Im>YR@\>)͓OipESx+vZ)UKO׈gН"8V1gJ3[$-PaKRy2`7зN8uC41ěsD| BAвR4Qjtpi-99O/( x}pځNCgJ3pw6V9fd9Uvbbr?' 7ziqKϘdbESqbHWnS׫+:+s3N,-uuvV k=9# 5`P}3Z6,qӾɚN/, %[Q V't%lpXķ54{1|< y:-K&-X$DfQډLO/8T~ בc=[;IoߏUK| ~!e~@ %F@5DgylɦHr ;w\[>"'09U'蹢5R[(v0up\שqޠ6&_zIG\zxA[)@Ԏ(9-@eZd֮e}fG~  ,ߜ˵15,Q+֊2M2@~6ɛui bM9^mq357%U?r]4x/ѣ4 G(\ˬivN'|b=}|^$V,=o.>2c&uC*%3q|CF۾$B;QMtۗ8PYb;J]ۅ_󭶊j7{fy,EOJ0bq[ïj'"+!5 @'d>2dam)>9e'B@TibBdj2$o|lY4T+Ji׿3*q Oa1R-ȝE6AG.g_Ӊ.w5ձp61Fۯr&SɡtX`YVMl=3aI|2xVL\1 ~K1Z^/SF~z\GI2Lŕm0YXtYNe>a[< I؜!eRO8w=Y~ldaAr (,/=P8VR|_&i:ug|뭔UYRt (?jO{<«J\i y=@5uCusK x٣ȿ_wo%7h!$ڧ9ծ'y3ʣ ̘KҠ0 ;tK*-!,Z0)iJV=6g)l02wlGgѢ΂c@z#뎗nQXA4CKDG_> EͲxa7(HJ6;9D[8r{+v "bpbCz "r ^%.!/0Q)$1Vi!Nթ)CD_)ŗEYhD<ӵ{ϩ|~}M)pt#Oor h~m3djsィ@|hBo|.fiq8{=' z8QO%UpeQJm0OAn8ЅȔj׭+fD-A {y*bk G' @X^%/dUnҞ Givַ}?S-Ò@ u6Vֈ_p; r&wFuusY9#78t EwخԮ!ghډ;L}1U}~(4IwZuOҀ ?lK* P)LF;*30ppSQZ:$|ߨ@}P$^A ,0\Cɣea]+{$Jͫk_@f˷G@s/M2=pż#O"Z+Nʒ鲚]1gXm84-' /ru >i7 >k^Pظo]oǐRnB8[d Y2Bm[ `x 4_ݱ~uY\R&ݾo6BIsw[||G`'zG[#.Eq(#W9HoY%'#v\96rt1}^ H) f`xiC‹ ]z>5߆OEgʭ:̻\BHF[ʟ!Y53W]Z4gk.gX ȇP#)89ÉKƥߊhGu;NHhA E1T֎sJT 6.n` wV)w1QK!K}bTiؠVVn5=bd~&|ME &;X$S10+EB6bQgt((@`_ F! y12Nszn;^|zG5 _%Rus/[WȮ|wUlYPS JVMl݇MԽ 7UnmRh24?2nyw ^YfDlŪKd<>H@xU b4UFtkBp u\Rؘ]nK.'ίȩ tW__7J`*| iOEˢr5N"h1molx^`va&?vޕi?G.jEȎT=UN/7Q-C RaIZ|$YO+IӍFj]OZ`~ cKLD׉׸@C,oނTH\1k"- hk; mz{Tפ̽(ob?((N,OcIw ՞Og}d8!%%OsP\q[N`^fқ{XwrE}&.אL%”L&ބ]m&{*J8DmK#bMbׯO eg[Lލ Z&Λm V"BT%(ӄN5v G `F5pm(> PгDgnO=ڛ}p0Pc C:fS_ܙHC$SJ<ŢiNF& tSG2nhvV~P/7v_my6}v-algreHe1hh_}Y.rH-{Bzkb]&@>!yɠtE4lz>(.ʌFUȇUq g@U9xzd9jMng"7+>R@^~JrA+H9=#KYgO/@ a1+ ko:==!뵁2@KAy ;{}̥nPNvҴc!c$ Ɉ \OUY\@щ!5b=U1ZSΟ5F`|diLlr9i{SP867/?)MP =%p(1}DjȔsMſ,SmI0.1mU rO?)Nv\h |W֤,\°fyGcT hl GQA\Trs2(]N-MJ5Ap!61B<ΆQW[O\rn-xV02Td!CҢA@j;.ЋF@ Ư]E~B?hKi7MxUyFDC}zp1+;Es ohLyex|Wx6|i Ǡ4}4 &4cD*-loEZDKRZmﺗB^[3;YSOğr=Րr+:?bw _)Vj;*ltcq7ߦʵamU/fF5ߩff`2!6-[<8~G)KB3ϙ/rsMՂCzB|`e4Z"(~Ig۫ $W _RP;;Iif#1|Bbq< C%`~R7BƯxBҴccٺ@8o"7kh6V Cid35CN)׊0+(hGVL7b;Fmϑu&l!\yCN՝WxӴZOpLT %}t;>L<ر_jրTE>- A(+cZ@xkJ,sزn@yҨ&:tPB̻{;T}Yvd* cYw-SW0-T9v֯\f mI[r_%uXNgSje)E-W֋lVg'`w﵀F?}&ѡ 2[GR(v'xAwf{yݒ4\cDŽ\|UJl4qW At=Ofϝ G?0ecí>JmM TWNɟ!RfCb.KnUghIqTnE]GCǜZ! bWC {@X-%ٷ*j ݖ02%dJgֿ]aBj~r,H9 yι%Ie B+[}z6V|%*dP̏ ۔i14Cl T8oXFe.` osT!ףW ?ߟF[bxH5 7z'`ӟЂA_UT ZRQ6Q Է)ayRB'\mVL~Q_ˋS+v^ Z  3<0 .}Wߜ TaǥX!r"܅>$DlM$Tm:'2NNkЁmhfK_FbI) ݰE䘖T467DhC2ɻx]pjplv>T#bvY[9% z8LB ete?;ܭ%2huD`ho>,e fBjn5>i%-R3՗Հ.73<ޞs+ Klв(hBk4L3 65l!(HM*Ћ͟ }-Jp4viqo UK%%#_ƒ>QOdH"D˧N\Rz҅R"&N P4!OqM5BF F1[oS9 teV 1#Z<8* ξ^X%{jz5O)r Ċ@H[YrI) ·/ ,s Kޗ ;JH{kk@eE8S*b.U)bn*,TA:#"(,[ ňÐTyFBF&}=Nːq3`ģlߧ\D>7Kw&_ _ou" Unf:3i[dp0=]K`L6OmOe; h̋$*Ķi}oC;#a ͣzu U`)#a-`Ki 5siCҔh:r 7Pг}l 4p{r۸+=؀5Y'R|HXK :Vryy/)3AozVky\5!2$O$2 /1p~S./CuwԸ4ƚ-_:2(qwYHoJ% qD-=EY?HwXH$Cר  z1(p^_xڌzj* 7>c>Z;PHL]pkr,l7=;N[d,_|Ǹ3 (+l@,u1 汳/^ J%H rgZ8o[Hznf]y`qLݧtx=9Q\ձil߬ڣ%Fd3tiIJ}Q#%*zz"}rڎD"ZſI COF`5(#;CAdP琺]m8i Ơ->7\5I g&~=!~G(w!Ev[8d[%<QӉYjW7G=KpEwZ5xp$PT .oU%'h@jimf۔p(+{cC EdQc]+?' f-ĎĀR__D6=$K,*c}p),=,ykb]fj3ck/_jFEZe<v/Uf\6 yUjבh9ׄg& ˄w`C0s6,LR 4b}vYLc:.ed xc6槐 Y$56O,6w.SӪyWPVtSBLq@n4 Ta*1zP5H\XGvQN: PJ}y2'Qi. M7$Z%/zU'g^HX0v31RrfGX/F:~x"43U\-hwdwhYhE%Ía}{0$m 紐[>5g&sAeR^DbQ|LcoHllWR]t`GLGHՏ̔dJQLԪIG4 c"'VaǛa(D?о?hT;9 L,nJ#%+C=( S˥{QS]USrEt ȷD<+1@JֳSU8r= K.`^s4o &'j:zykZM`~S6]8\A`TN}.FXQ:A*#|Qva4?QI҂0ȇeava&9#>"fF<[*Z$8}6 Xl5ܿ|/KoYrUCԋߦ,f]:qX1ޥ_"~9W2zUyDHCj{d51F;1 $_]*;QrkgZȆ@5ϚIU^Kx/3WO_z0i,E\W's Qy hIKG>wzsz@ V 4 `Uԙ^#8+tP9|㝶GZR'R®$=!PWkbQn6aJ&j/yE0z.qг·ܕ#gAS{`xZ-=m.o>{+D1Ĩr fypD.nјs1% ^.\HZtjy7iD+xWP|St Z \q#mHƝ%WmNNbeߙ3]Lly [dD&#jpLo$̄'Yڄ[n&^-(-tDy*N6kevU!{A Ig$PmW/Y?'UZSʖ/?ugńz,O-Xeh~tHV !a 0+ILTaN˴9K"r܏.)"=)o`loT_Ơ'ȝ{ ᳂5p)ЩɭSUlH;bWrfJ1x-gKn:/#Gl^=*{ .NwA}17sK.% Ƅ$J%[_xaK@m X(0<l.N+6't&߹YiHY&jH(}=G&BQ,U}:o/_T Nf)aJv9E|6c_rVU{H2ۃS3$ɎofteZ 9 :s\y9XvkK82ʦ (G*Q>|gm-´>V)v\gYزt^T`x*],-Z$A>.0FNgɢ?%(㤃jqQz6Ya"uʽQO؟5Vg9\ww~szZX6r4WS^ n;xilQD̎@52^b,^}z?:.#EU=T'XԙH6hh;CAWN']K|'4/ "*͋ʀyxEPcdc&M,, nߚZ.J~OM v1%#)œDIyÛ_ =h33!</c˧:*=T"i(+L`jtftӭ}1|ޟvT^O* ŒVAcy;>?"E5+ἥ(Avn&&tr׮BEyZ#=T3ijۥh7mn ]\4M6倆, 9kY49pdͩ,BM 蟣!}t8^Y^lmAz_uB? /L7%ȥ-t9 {ZTRڇʛB=c {|^|GblX,"+NJYq?/*.4=6~P@cka=D_P&r # m'Mx#EUzT7U"0 Xܯ`MсJ}1 _.ԅWjz%H͙9CgjQuQ-|Gϓ8=Tk*wIk>D}4_;/.4lvZ[ϴu":6"Eobהn XJOD+k qoUU=lwzXYEg`)"my}܏JPD;2e@*}coO\ ee (Ov/w1I7w-OG65)+M e|ZcO&c2^8K3QqOxAK[&11B7%2kvbl`=82'A> ܽ@UݵM+<>1]oshGK\)=%]S(v L:sԒ! r#4{Dn淘u[az7`v{?n t!\xV&ٽ )ɍ&X3 (w&EIxZ]II7{ǻwTJ1Y龛ު9fb3ڈǞXP14 C2qXM-: Nj UzF3saˈP)Wr&^)!N)5Kis6.{ʻD9|_5&77+ci=.U BgH8)XO+ S1̘큍&E}:\fC&dJ(f̴4`d0Ml徕 $jKp {9ܘ/c5}Imz3mJH|kuZ啁B27/!6G,Q80UP*ũ$|GwMV, pߵ jrgS7WT Э*UFzp(,{c(|.<6!EGMrՄ[@3e.3`-P |?fP8uM19JfR؛;Ef63SJᰥeQB \ƌAX~$e8 MR53/iŢiS2tGkXlzJ'#"6C#h߻svn,%wV@ ` kP ? cm!|^ =K35e ]a>Q &-%]v?eepW-- @cWKs;T!p9MKJ!;[ϜwĆX?X,"V9tmo0e"/LA^zåK8M@ofŭh|,n6'?m|[ZsѣR̻|7h ` no|z7ܙc2$e_[6:+S˦JtP)xؗkT`:mC_bo3b;j+cz^}kV^iM8SA@Ņ"2NhIy&GyaTC;ǚ{Y({6Wz31[HQ^V>@HdbB4OķWN;Q0tܑFsߍ(LcK3gx j)v9>V03ks{ZUp Up*3A= ѷXrfΔFO^yv MNSB 匚}/6/R|%|Ss7z[x|D蓎o1J7+*S8ͧ } I?⳥.͉f_j$ŐoSC61i^ԝCHkD~wV"J5 5=jZ9{zԨ8Tk3yqCaQJ9OMV`nY޵ńҝu)5Upf\wguDL#[p/cE b2γ9fѭ^tQvʏլ"mjk>NDU۹ï':x9q%w5}y&ӄ^0X^!&[ػ oߤ ,+<:`Vo?RviJW/zSg_UXdRBo|Rf< .? t'hjkZ~kTV{rJxXMQ{3+w)|B pH9a5X`yV(!cD%ƱWʰu `ȒU3XQŝ5&W}SXYD4lDV{Nې6(e8]tMZ.QԎ&5gv/Ԉ`cg/%dW }XK\׌Iۄ[֌;npsOCO{"_tf'&ՁBY.7פ}8oq>hF\ (=` %'coq:c܌9-|qG>M7>ePIyU{h:^3j} 1<yJHi%{Pl ]kVeOcfڮhW&涼M&>+j3',^q4 <-3Y :Y_oW-h09\BCt'E<>ɶWMm0()!;P_gSQ̈ޠ[ͮ;xEqF:ؗ c2Arʌ6#0¶ A͐|y{Y-D4šeImz8[#EcoKx.ӈc 6nB@fP)e&#dⅦn[+&{u Gk?̳h*n:|0M=BMk"冰d{ˢΩ2DxR_Z8^LYX}`E9":/[B; t H$OmSE5ɗ0N;it+;GS_+O"~.21%mj XHM4Y Bm&vF(kYZ^4P@kA0ju8q1~}!yt2lGjK"e\bu".p(!6S٥'4,'(8n3f!ea^ ose>-=%Ex BebF ; 2>hdK_t^;2\ *>Gn9[3itX]4} ڴztm<*vp+ϸ: n,`UWW.nNOzGVhLrБ>;ġq.>^>6buU/m?+; @#gA*[*7l OCFJܷms0LmyG)͹ h?ƞI:l~SԚ L}CCIcT/9 f#Gn<aZyzj:VL((B:vPqV|1lhמ0UcBxN}gBI>qµ4dشykAԭwAP;se6ŏکy#ɠx'nóNjJϳ7{H>"74ujhLJTJ]4gpG^Ljn.+.$- }gA~5B4§6qN^Zʾ D,ORi=yŲZ?fO궏 f*< }C~U|ߑp9:tѼ$;l|bPfd(+2?{dZy~,\7~J<{'K]c>Ѽe[ۻ D H* cˮX`qԘO`sL-){'teRSx[ĩc'Iu!XyH#R}ScOB@gHޕG?/-i}gaJ(fkCSլi 5Upjqq]++RFqᢩz;D/ql(؍ŌrA{yFh=LkSuElA|##RW#T~'[2? %7^}Cr4S;-0N0a"UA>o ʿA 5|FC2on^A:l܉EEZqƼ}FOb\m[rCglƱ:)V8V.nYt?sL>o8ݟHw"=h@exԶ<20tO,F淛5\;y#S]RpCҊCo'oT$T i;4z^jH2ϝz0B^P"ׄTG/[wnOTgkv#z& ^uY~Ynpd:W+ P_jS)nOsA 4c+*kcCyD!qzʷ?|"F]vCtDLYn+ȗ`,˸ )C =e(6V:Ϸ-wpdZ y{g7E0(c7(i4#9]mFHVj#. ьq(ʤ E)&/ S'[iScO}gXlvתF!F5{!^͙wT?/.t 9Q])m+ / 0Q/[yu3즃RasNrZߧKqUjg"+E`^i_(-|#](%  +:WcaDHekJlt~Mu Zv?U$ʮ %BJ;``Z)6lElrÙ*>l[V1l[C͇q{ft6`(nWD yq8{7#eA.EJL'dS+wPrcnj3SsMscv`Zo 4Wrju zCnfC9xAQAC䅇  5_5ɭ`ҍLPN3iGoՏ6R0v2p(~Ԛxh5vyg(vKe/gsy+'+~ȟ4ަ Hs6?XCT#5)]T~q K~|x}@,\ ԹXt$:\~޼ʰPh10i!ol(dEl:pZyvDj~̏HkOI+(}OdOħhm `0UGBnc ­-7J9#sZă4@|ߜaaǙ[C?ɬ~ŇsErcԪY l!"p~?;& ۪:Lb'f`XQڢcΨ2)o!ayHݺ\} ]nYQ]G%_1 '6PHm_r"130T+6ʡH,@@_+CB.oMyDm#'揯G4,G l|E=X TŢtIѷ?C ȍjHEKKI9?KђX1#%t_zJFB Q;bEçnc ~t̄* <55ˑ!KE^&L+/JYE'\;t`4}`!d;4P}zSQ\fҜSR*?(|NRD!iٲsvx2rXۗMx8רs'tvL龷PTԐ^H@DĤ@gXwL 9DBpaKP2Zw#&F_':NأlptX]æmV5o1Չ%|xRlIkQ⵱q'K!F Y;Ń䂴DUZoqiiEdz mUX^DYF'{E`жV'zDPL9Ȫk ]dѩ9 ]54$6,2rg.WJ 0q4G {6/fioWk[i1k$ǀ[v= ".g^}'/,\\zrS0=?$1a쵌Cz6oB;'"sIUtή{#~!kta߅#wWx8Wf1ϋGkLs+מWQ$`kqҖwoG)MNd*F?OXFR-ދ*'ޮDi@ƪn}Q稠i?k@q)# s#h` P"fɳO4 Ƿ֏$B^l5iە@VRk(ag[01'+c{pqlEX3 ZC.௨c / H8\D$rR{E1DȂCfK߫%9?l”!O_"_`c9(;1A5dTM@gmZQMH1嘊~ ,ԫa⯡\[NW~JHbt͆Ze$AZ)2X |BJ8qw>%+u`~! *,hqg@pXD,K^7;9e1֡{*X*z:B_j#Tä nve_ֱ'?^`q-Ml [G<''hDd58~GxcD~jfO8I2?Y"oݡv繝`nhnaޢRtuyQ/ #J 3h;/S+KP]3S"EL\A@Vo%&Z\FD1CG7@״+QXυ\h7ȟKYjǻD㇁8HK{g_؊zQ e`K^g8BrZLjP.4| sU^|IDvjv؏'iӉ(_kZ ck_pw˪7`Rsb*!+S>ˈbF?Yw cx X2sTB.<_@ήV_=uVxM3RN,jvewuRIj9#WmѪ-׻w[!b7 sM}b7~i#5pvpL1$2JWup[ZE=3p lL:l5槲昆hF ercsIgxJYUlX,4r i㹄4YCf=,*f}&5EJ}~[2Mr$5m{y0LQ5aT խiP:/7F#'Y-V71Iodgò!4RyZDFے$4]o+\_$k ~m'+DՏR9ٟ48_L < )[&K5UZLvKiEfWit2O' T2,QʞPúL/]DbڂCTdH]#/1- 0qʏ܉V{j(\?tnߖ1Gh`f>AQA4e5iAtǢ$:^~0c2th+6I;aR 0S#"`{hL(gqDfa4t^a#E{L Biq8*\-̔x,vwNfC ܇ƨҢ0[ X%l_⽫4>ؐH`]-QԲ'v QBGyn%BEW ҙkHYe&T[C}7weU`MtI‡jɪ[iZw7|}5s-0TE?qC4F %cӊIu7X/6+ng^qͫ~4dO|aYO3&z SVSJbq$;XNdS5E߹_{(v|w?2SmnH—AzC_/-/V\@$oQ^ ϔEJk~>e:exb\zP':2GO3Abltbhe%^Fß⡓*X'*iC  QBW[\k!~(uw E+.Ϥ^⸦ uĨYٚ#oG QcASSvyexeF*A} <͙`}0L,đ;*8F9`;62[Ww3- ?[dޙ`խ{Gܑ[IbxXIѹL{{ָS`XxyG?jKʩ ~i$cեQ;Qr[-䉣̲T53dFxל촩ʐ+ ? 8| iWWK͑sI!dH>کt'*!Q>i׋u_\Bz|n2Ƌ8ks~ICyߪ~f#OLq/Hr2,n{ASxpWR4 8 u$ r Ga:'A:: jt5Sd ΛDK:{*3n)VFX7B !m&[vŔsDiM.miNtMʾ[49(ْxetKS :{7Eu9J%GWԔ} :R˚50tL;LE#U#[㎰6yad xZ>NvhȆqmVv!=*QQC Q67aGh^O @)\o]r Ԥ/rѰkȴ, QPdhqG4&]ʽ(T\3Ialm.bI#ԩyYTm*ƍcmJr;lq;}V-KYVKW\C=ePEt?1 Rgd^(@7L&;&tWqEC ƅl3B 98%;Kѹ|.Es_oP$)hfڣ:R4҆KcdFE%84>>5P}w F/bWO<+a!.-:dRE}p)iQԶ R`񃍍 N!ZJ< ,6 t& xnk-މUґ@:ْN-%Ch/!m,֞+AYQ"uգusѼiA(Er;r5pIi|̾5ӔCUi[,*g&69lXߜpFSX\1^D|0PRIZ,qʴ7 Ǔtt/l%v &>?BII0e\ mPe[V #WIT\tSƥo9yk&w"P,"g9㰎s`Ɓ:tE,3LOoBK0t_D "Ngjd"uDJ_$+G}j?k`e )LjЗ#07hx!`%U)#ܼc}TF Uy< ENk_HCae2-Q=-7C*T` /  (2&Nf#Tqڀ}o]t{V!J=o.j|mc~a\ao:.Ww˸]H2)VY:f]sB,boR@:?j߅p M޵qf5n$bnIf?Fe;6?/1]Zh+bPp@_}-\b5Ȧz2GZ!}B0 ug:}P v4(X]>ݹjK~?(Apc+ƤecͿ ˥@G(eW 8>ڷS7-jW9(E1[5wӜ0xuL:^Ù !pCvi,Aq|rq-VK#gXC$ һq"q&!8_Ҳ&xEd*0GŧϬb7 )&˼o!5.:"hr|X^GJSZAAan@˷Ta>řbhu7$|۟!QM,*W$>xʐMwlNrO2FLv@H;(H'|ro5O64`PDnѽ9~Wb'׷|979 ^Xd䯧,9oiZG)_qtXg+K$k!u`vؚ{zMʓKZ^)V Zl {~Kt&x},@1HwY+OAShe_y-,4NcV| p 3͕CErac <ԠTeNa $Uvҽq5O'ϽfFvq1԰uaHMg&v( ٯj9sn~q6۔i#5 !Y|.0MJxQ}YkM1rtmD!P߼czL(@јXILhJMHHGWAA#P2I< I 3ƈu̽_D$RsZ[8|b!P^$ڗs$F!_ӗЗmF6]'Q螷AE-̶; NjJ^P ' y6PlLd+@ @zu"K.Q*r$/D;Rr&״Iym3Y~=3m"ƽ5u)eTT9dϟBnQSfGL)*jB$Uc~]➹xlpzHI/?FLB Tu87o TX}x7gO@0?OBM?uVQP,Z(]:9ZpEg,@'xfΝM@9s#w7e <llZ)>1dQIX ZFhwO@:8~]hipc7wO3o2k8hmVοl}uCsPcfh}r<'juj7g)X6@9_ن/Jy^7?(V$Uo+}IUҶιo1Ev3 `ʉfKK6M{JC5+ð=jW1QKsx_&#$ăn'QOIֶb T#{\{M[+(UOWr6 0l U&o/d3!o/! lqf!?乮C,AlG*?'KP׶KDןla_}t9#b oixr3ƞq+jLl {_ @F>VW05@g- z;&+ sĨ7%n'-8Z%'>uMR#b:)7rbdwPg.`faGp"\2VUKJZplX4Wu4fU؎obW[#^B\QSv*d9up۠Fz;L \PB."=',8g!jDqADڊs_%K"k*tS;`CsGz.K)|} rvu dѓ0pcy)0֮?Q/)G @L.ݶ8zߎ|f$ ?Y=2OWNqױ<܉iT.O-N}uYcSOm_D0EnֶL|?ɅV(i ƽ,-8 $+sG̔\V{0|kRRSJP͢bbTi6Y0jO8KxI!u~RjPҺs0=s/$[u)wΨW~oմVZx!ht_ CS{+D!Oc\j2n:@k:-FV{h_0r>bY ![cFE[+cR]? ɦQ#o~nb (%BY"!{0sQaMdԽ`v&:Fcs>^ԉ UP.=HJ8,L͝Xu\]M6kCIݮEM4xE}Qa w1722la>5! آi:4?n?HkǷ`Uj\AM|2wLNV[v;%oB#;. W3 !͡A:([ns1!hLAW-AIUX;6!(D^BӴ~U܂CZmd[oL˵i w4!_ebPMK3Xw.M}x냈N0P/MA9lVG7lWw>Vg0U>$EsW}|}B(*{3njp!|,u MQd#cHɯRTatb%@"1yDZ=# cԾ qTq$>V;ioiњ ۧiǎك;x2 on' I3dT64=}lg '$jA8Rr&G$j1kF!5f4n}9*xl 9|ur /3b?؊}&wqn 6MTT)=u;D.NhQTf[dAzKd2)@{sd.~s>a9dLEu9m( %iܟeR^vxZQb RؙG٭]^tyzIeRYոD'dp_ ul;<|^{qktnA4u1`a/e MG8!tMT sM5Y3V)PpMYtՂ^DK}!2#X|@굴"#C(nF >~=V`uY`g_Dq6](*@Цin)S?xp ;7Qٲ, A;:[D]MJJGnWLY𧗿錀ZqQţZ4$9ag9QdfpY _S Ctr# ,. 8[:rM$7ų Y8M ʱ+#.aG<ŊUCmcםpJvr-fApbkz-!"8#1|6 RT:bELKy`\|踓9L*_-7k_\TY_F K?%R8ʿY# MVzy@io&L:q0vUr濼gF;k43t}2:ЧdQiH nsG"8wuz?Rr?"vEj|`7Iyl gtPb޴O&T7Q`YW ⡨!/Hi5jYjjv%|nQRj@~qOt`?z5AH4P*PLTXSکA #̚rLDV±'+bZ\WrA#ŀnryߛWYKII:jAzT*,dMTeC99TPcHmki3G#,[]PM{' ؐ BAV-oXI'3\3% !Fi_- 1 z  G䃯B>cW.̀]f5@P%fUK 2@`F;:6ZO+ {<"qqBH `EJ혔Li# &QوIt/ &V=PD;NwbmmFqߟ6CVܫ#>5Ђ-U|R(L6*͂kE\H [jWڃxҮu41)xtnf#"wӏ4c†vAdC)PϿw^{dž(+ ΁Ρ~XO], ELk!;,;Gؐ\AfOjgp!_iZ Jѥ5=,_AXUԉFpGfN2Vל=(%l26i^ў痈aRKz.2\}X}InoIHJY} U_VxVIeK;c(rV|6G>(|DC&dlȭiwpה̺S7D/ mxz O!TJ\r : 0p0>45-@!nFp4+P\<{zE)+alO>o2l{ctb5LJfT0tW5wr#+%?]/ I.&pl';Ǧ&&Fȩ*%NS.T3GH8e0 %2L%KǷ6ƚ;%3C 6pQXBhs;'7SN;vc K.tkkh.T'n0zoDƇ+:d3ATrmPE1WֈeWl>۾+K\dV9wf@>{¢Gr1s$Rzm-p{!g0.hRÆϝśjDc8$l(:>ZgS&r2k<//5^K xu,A1rgn.Rx uW% π"q x% qUa}[8E=p 0n;::Ux9 moZjcIp+:tdda2M _a^hD$P-^D ?",)Lv]҆"A4Φ=&Z-1+3H݊[\ͦyFjj~6ti4L4Yp㽹h!ab@ =wy(t.sw\dRpD& *DŦew#+핣, (BnM)__ݡvY^|Ȭ=f7@znZHܡ͚ab앗i 2{^ɍ*@QM\iulp;kR䧡::%1bsĨ;EEM=PX*׼vm:XC RUQSV'/* vԸ^˦}v0w'/JK'͝|\ۨiI >R$NA` ϥ5w@ב3!1)tNm A3c954yJNhe-N+H&{[5Xxt)E-;+:Gۇ3nXpT}T< ksa ss8A -$ ƾɠEaYQ+b4PMx+ޘV$Lk3ixLiE UmYA?%ᦥQݬ~G0qazUc_9&j_X5ݵUڭ"tl(@pa~&rmK6[] s\e@ ;Q_a%v]Vp|* ']7A;̳Hւ/L|yDC/bWi"Zj 0P+5 чUKyI(ØqĢY(nZ{_*s{ou&-Ǜ5^]@{scHT³fWkESF=n?R{ _^:2s%CzjV0 yH9 wdh}(U8ZlCR<PzÌռ^Jp|pHt=2ꝸ T鲎Sl ܘftp@С _/6q9 BFqga P }gۦ8AZI}g}~i4jI*l c8<|q ~G$ Qz>S pGjDgF2Q( (1\t rGe#(JH~}c藐5p'Z<:3Я-SQM/G߯zrL)M>3q #^G4VdڈP͎^r3֯i7boXqU j,޼Jk~A,`>q_җX1$qvm/y_(MwI,J2 äWnh_:!T*<Ӕö׎,q)v$tH |޲@N1Yg# zs瞽+H=~}D.W$APz9 G&uZQ P+>sZCq?[^j}i&|p(;L 6 J7/G85/_jtWlnQmʸjb#1 [b2x=ȝ6}|]r)@$& Lu?}nQ9nOXJog޵`'ѓG<>6ޯ.lؠ>z>!Gd;b7ґaб==;WE8ߞ(Jѐhb931;?_ |C<|s>n5?*C^KGYP޼OZG+ĉ #߈NK+=͓ǎ~ڃ/R.pV'd *A~淚m}u[S+8z$ϗ7fV4>oۮlҚX=75Y{/@/ˢS4]>$6! 3O|Cۅ& 5AD-BF%2'tC幁\(`(E&kz!XJ52ppTCp=.Ì.N5^f+M>0T]9$̟ql&;y+K,^5AM+p iO;YnÏ_ߖuI\]f#8.;#,٧{ʬQ`/j,NUwf$Wx=&['72qox5y*B?Ho>oHwD$T~fA.=I$Cjf*4%!IWq.Ħ-NoO7|sQ@:6VRV8ph..gV{-l&U<+#LY+vlc%4-EeoHYf 2YFν`xxsR]!nWfdl?E36fx3œ.؏[9s:HG!: zZhJ_moKۑ"AF~ֺ (%z+߽hն=#-KP1v0˻^B 8xyɷbjyT|6,STkeeϰM}P[> 6Z^ngp8T|tHX?_Eױz~svGh[6sXJjH^q;7=%bhc~o]pLa)!M}SH:GNaH ]a=䂃QvLs[G>&H܂ lYW%GM / `kWY7vVM07fP,J0‚LJ#ϣϩ H`^]仛De7Sw"Kͨsj**/d3eoН7y>M͘A>iyD:-J v`6ƹC],!!΁dh"-p}bw0$էʮkjL5uhU% .̤)8ffCzw z[.e)MڪzU^R $6Wܬ?LGEPo0w} mxjCm^S6z9U@<0I^V [?Dakaj}<#:EN\׈1u{91?W`m{;ujE2x/ s!. ֩ #zTwq@pX>Ejs/'\8òfNuT {HkZ( 3+uEa(:ؙ:cNLەA2q뀛 4:d Ϲ5'Ubѹ [[R9od"u7<B ·@Rk zy\Iaչ 3,6H{϶V(+:ӻ(Bο@΅0T,n g@,F/,:tH:ڊp}gI"7Q9 6E3^DpųI!3BN)_Tq}Jy!E҃%q1Y(32iZeNU=삼R||-^g[85y$F`"zEiHH˺ 2 S»paKvMv\'x;'=Hs[րV qB%96WGv `Iє*htd.>Anls}1VLN2p$q5<]*L^x)%"w>S>Lyq.ŒpKow6.kL64jM8lq[p F;V%.T%xűʦxndQvm .2\s5L)YvM<&T!{AZ-L-+! dBv'?eW :hv=V_ߖy` pc]E:OEJNI qYUi:N0x٧ڦB,pdGg}|ȦO͜ՁT&B#p׽n1,*m^CE81]`͝ʀ9NT Cύ.3y6EO$ dc_A=摒ۗ4nxެ |*1n[ezB-39Q{M tMH )p"NZRP=yFr$;;Bȴd׬{}:zg9v{TA7 g#fNbl+".#mX ?RnhzhbBB68bV)W>p|xȃsɖA12*ih0m_~7-KyRtYٖix9/LV_e%*vAs<%![y9Rͣ w\5϶P;Nnͺ"clVfx[N,v\<_qa$SZ_StS&H,caYt:V+wd v]N9ݞWˮH gS;HqFLeɳ6p Ηnv@yovr $6 9Ɍ]6DV#KevzAذ)8޹ Fkp<_Q#;M{zF/+^odl8fScxu1I@l[l3o ~+9e3h4T:^T'Ff:9 CŶf[ss|~/yH= YEA:;nDkSPP&'{]Y2!-8oed 7#M:10Ý|||^OSR8W\g)X!F%0M,Wsҕ@Fs&-%KW6-2zj6B)9f/]VasNއ~L!mvRy7JPU_]ZA;'XCT2,d4lѼ- qja[P7L:QUe]NޕBy|>(FlSS{\R"Q5c2I4Ĝ&X0rݩmyÑO]D K_io!b =Q[.;}>7V,#.mJ/OVpi8::yGA1K))qV\|i| ?W2!Z(v%G$k00UdDYKS|yk Y֩->w)Ҝd϶b`MTj cuhB %{& Dk =X5g.#W4aDuX:/A`vU>Z7/0g=UQ®@˔̸?&IJ߈xɃfR,.3XLqg?ߵkf{5m㲍3p8|9SOkk7vr#6!wyue}piQ) 3<`3 IT (QڧeK×-CUh몝W،ʇ<؂3UJRRq4.ʎgQ`tXP.O 92;ZUJrTul,)<'5)S`mm1H{T@씖"A / )HoUxk{:H2חǫ A* u>HDbEf(6'YYwkY?1YF?Q!#1b3OF<$P՘N@81\x'Nܥ?D6UYsڝyz!ӥJ#EQ B+@d=ƪmސW7ܫ`|:ZjpT&q?y t$0w~>.od 1cQmpY칬8um4ub6(1in2%&u Ȫ϶-!D mݥ\aV j.(wR@)u^ MkBS0_Gw]VX I9$:)F3a0@:/M ݑ,d9LI@/J `k7lP!tRE*:K*NjKs<@B6?12~ uE9@8tZ&a/ ZBߞur+-"FM3D 8p4m2QoO-畍Q1A{nUwWQ}3ֳ':m:1I]F\^o;B=vuRH3qc碪{j91;U<"i;Cёoc&Dǀ^|/b^T_͈aUYU׎Y ;wP"9KcFo ]j^*q k>=.o1^1{;D_ 6Us% umǡ0P$Xr7͘;L J-3e~FR4`ZѮlZ91'1!'Eg ^:[y)3.&2 yz )+:⧨ !L$pc sJba.ͦQ~Q144OaewDՐCGٲن̎7VF֩F7sޘ/ ]%>}Šsp_݅噲?Sk}XƗA3Rz9QAHK(f@!WAUpGt]J/yO\ET_2=cG$UbWHr_6W0)ltJbV76o0cebns'_i3AQ 6\Ϥ:#%taMWN -Чwjm ȸ`"lX!;Ѭ.҇[oPw?pĎ /vXxi7ua'_dwC:)A̰,pSx`6b'DrVwHN+:UMfv3_ϷZQ%@?> o,DkkiHJL3I|~-dG3GL-UG"n.Np!)rB{t^ K55l7#^\z[m>j`[c#d5A{ؠ r4T3h辊 N$?kI^ړ;|S~ipg,C'?!]Lυ(0&(+H5+P3:#Rl}ClbTe6X+K?žs)MNn(: ;@G2+js]Dh"Uv\ #$Y]&Njŷ~pv*ZQVPOUI? JX8,Sw tB|Rػ+㟝v1?`0):--LUeu!u3",saBE}&M;q*,R[,#'Ƅ"/}lW3?;r37R2I•y i,f܁$Ulv7U/2(_.kNSaX< ?J5{p*Joq#%R=C hixlXùJS!, «fzSh5Nj cc͸)A:>⮌F89qK1(E閧+cQb 0z'2,.≙~ e n=9/vTQۺP2Eg/{kwlȌfec]-M-$< udT-^P(fjSz &tmt* EtԼM̽0oy=w /ɮeMPq:lTSeĭo%PۘqE Msx 5Zw8w-Rg3ď!LcJrr®X<8{hqk za cVֲ7 !WYzw MoP:Tlm{ /1Kfo)H%d)W{g .\~R2$6E4NgWrG,ph2eιżh^!׈{g5Z"ԌPrpbCG箫 $W}r,0hu P'.fAwTgK3KPG7vhWx=YՀ nT1K%UC)0V}IeT&Jr},tG Psؽ>t \~S$Y=R7Hu`NX!*;0C&eG= 8(MKYGױg,+/BOwEt,zYY5?L{a-?8]U{[͚ܗF{@D9~8`-oh#_L.f*nV| CA=ۏpo\Yh|f4Qp:uZ1W]oЃ_9`?Fk{Oׁf'YqDaU]X$a/tkQ8o* "0id'ESd\_pV̋NuҀ-!4!oڵkPt~XveyIBxhw-y`Z,!֗9p^5;Wt=aiIZ]L?Mc rQ?j|PY#NgΨv^(u~`8H2&&e򤮌+E%}(af&nq\h(͋όSvZ$7ٜy8<5G$#FiG XF#2k#\j =?:I=*NJܦkoBԥ7Tgyc7fl|xYi7yG.Pt02f=1C 6 d x&JcrN|aph#tN}/'gs݇`]Z e+?{ySK{-4ˀO1FY͡ȧ\lzR+Y5l<>ʐk߂›ƋcKL e٩[hY;LA c) 6D`1V!mY-r=i d0W|VY\W0JMM1i Xx?3,f,_=N$,Pw<9b9M~ɕUWpL/['px0%ؔH'0F9 *ylYg+g5T(5yo2uK7 S-⠪L֨'4ύ_/a\B1Z1&H3SD TqcnRD\qvsgxYϝFz &EP!y %fy@th.xiz8effWOFH3ch僃rJ'k@\OΑ~Rh͕x ar&hoS#O&zXQ"U3$cD]Ra,ueo~3ZyI>%p Jmm&7qe~"cN _i+wv1H $h|("(Zj>}7b fxp1?&Ű*Ӂ/g?ixǨi#4&t똴4™ .;ep8 -u#(M3!+B63J  G}8'ڡ D/k^"(dfx_#/9Dw2ӳߛ% !@NP Ѳ˧M6h Z`T2nrS,"m$CCd>&ҳt>Ws~s r9k V5 +\]63ͺL`hBJjھ+(RdgpMjTX1D"s/GLzRWT[g ;XK)řOW x]$p"PTޗ@PieSbO^Q_E佊M#A_3 YdBZ(tȎ P coϋL })+j@J !/N~rEU&5w;|r@ !υ]'%CzNX0G4ęptط!ZmHl SƸ|X,kN*QiDSF!FI]$}C] as*,uuCc+sF,I-: #V5.+N{9;;&e!9=-q7414&y9;;"j{$w&Iѧ$d;Iӂ)Y"_''7ӌ E5pYVq?#NlӘk02vOe w4>[:#DVB{RR J*9H86 u|$w ]'3F2u.糿>  \/:ݔ۲æ[\O?N&[2GF:1ӌS~H0ezﯬc#&@Hi[ 5> TA:ׁP6M&$)ޕ oe<{" f95E 8/~V1p>Jm$W]cB !x4\#}%]tQ- BNUN_˽Av&n}_xtMi%_!@ q(ZLcIP~`=] =( P; v`-̚b¤H6e_W{~yQ^9K7:݅φ'NpQ+RcQѮo湘6 k+ tE|MSu[ i/䤪)@P86%C DKifWB1ʥ%N^U(%'~bq FCײ. b_vj*ߑUjU'VMלĒ8j܇L+fs,H_va\F%z[m4㚦Tz%aOƶ{trU !>$M'Ily~ %Go\GcNmfo{[.16^t˷mpaw^kŹ;x2~R[d`YoO[}mQib[ VR[+VnN*"6|w:OC䟈ڔo _c^*Ի,7HSϨ?L6z ~S?V}m'D,7ŕadXL$=.∽~s-$Zk2&:sr}=|K 4a#ݛo׭gI=BMn߾ҞhwcutkweXU/nMTO n`߹ox{V%?7x:]  ;%P'u=3R'1E~u(#"pS׽;"}ZEtmmPdjWP S=z;OrO!{S;IEE?f?֏\`Aܶr{!LtşH<Cn͉! I^+:rRDjy߬w"P>6,g ."R7ȄY~`DL3qfGxm7t68 E\f?ueiwxU30W+"-9-*'u=h~ɳK-Ț “ /mi \: $9z΅e,;?/ȧRp6+*0z} 897xYYWRU4"fX]vY'qv,cB,:Ț-6]ۓYUc EϤPhf q$wot43Bu,u`ga]vD/?cZ jMvcf/V6Hm=#˙^wNlHO sçȗ' p\z?}| h9 ?oog6L`AL!oW)ʪFb)@l#N^ֶrFO M| GMuޙ/z@ؤV1CAf9R#rE.CuCMmf]9k2Y`t& $>Gz{}tx%6(9:Kj/XC}5U)[$'; @|_ֽ.$ˊ<4 62~wFyQE:Fa}`;A<%{h.i󹜮z׎c߿^,YܳKE6G&G31’K. v,ەgʈ"<OPS0*^LZ5W8߽w4e52r Lw'q-mTU['!O::Vޱ`SSLHO+݋BC˨.I>iB#hN G_٭z@ìPRn %$&hK=V>Xx/ى;T#݈1r]x9qvn9m]l(#?u0vc"xE0}NZt7p@z-%A@#./;| :qY+,b먐f~J? sŌb(9U J SVk@\l0"hobpx 67}j khZ7og6aՈGu\Mڭg)a /shǺ1EqB cp vQaqDG{奲`Mh Q0uۉ*6ak5`y PVFRx  韾ʛ?3Ks5XONa9\9ݧIAH| .RwD-Rq%1GDFL!@3W>g 59Qഞy$QGN@MP 0)ދj]Ru}H*1-\uh nmoXZi73EP\wu(6p&2Cv\;CBJ;Vq|*>xZ  xzϟ%E9aeWC̡p#h)<^K=Lҥ^vnXT=vq$6ڶV\i>1yo׎  nTCH_ a!/]1'#oNDƏޑ45\ a!CXuzd\M/Su@L Nq'D̦fZ4š3*g~u3ʞK* acw}/)Tc( Q47)onƯnwD6X=VWt/`>Fw&dMO3do*|bS*|8A€vfiCS wc3#IyvW_jL\ē7sgw|Gtw=e{a_=LjB¿: enǿ֞|u&K8^CPtcRpJ !>y0Mvq9eCs wOL Q`=f,p:~Y]Pfw]|60-GQi2~yrq,FϜc , 6U߯i`CU4dW e{;Dl ΍N@H;J*e2i6vZR]fKpd$ZF .BLy##afM@3exwKC YZ|kYp9Sˬ&Wˆ1ֈN~.2~2bE/C]pKrl _0X-Rhj1]QvwXwCS'~ О {{o)6 TNPQâ1W*c TԻhQ}CuNΛQ@k~]O}GoA{L5j5Aԟt`CeG VM򻄢1qg^@$?*f39gƥE[Wa6'1IhL9}2js v(*ZqlT\6Fjʋ Dre)5yӻ]! "(3Ƌb2VгG.՗s~DgZ48;kW\D򚀗uEo]V|ID>Y@+[$j/ rTwA,*:OtA&J dYAHT9Ju{97Hz6יl֨^@BIogz^%ozW9TkKW6_Ӭ,'t5.=:UD_!K}P:HSɆDڶi*!uE<U3K9HGfKŊ{6:uZB 5rfUr@rЅkd6;"q vϣ`IO*I5Œ(^FS)v-9J+0V$mJnօjτH{5|AUS{nIA= c8!Z.6/$ U r,K'fTՋCW6jmk)Is+l"ݐp ٌܵ#,0G:|p]\׽yu~5[10tPW;}6[n=Sw+" բQ_Qg%q>imz7 gwJ5L7bn!0`MdïSXaA~vMxI3E7!IҤ)0r\au`v>D%oI0tnp*evQ-#}O(q!M $: )"W&]Z^^ M0Nh$ZS:M| gCDK^w.w+aƠQ9%Z+~6043#Ɗž}\0atlG XL/1ޝ&_/(Uv)=ⰕkL$- 'cwњh& 2G~}+gҗ!Y.l: |&7OF/{56_~re`Z>$Ր3Orp B"v!@mY=o]&D0a@jgl(egr1CxϹ/Sz% M:ќ"9#>G/ xn<0|85K~630clj÷cqyHNf[g^mԆug0X %Z"lTRmlx\c iȏ|H8Y||vg/ETK?j,b_'{^Q+xo`D:BIb@|T;&(C%^lJnȈ.axLtaWZdp:&wd3%V} :k,_ IM1xdKmp֓u(=Vy?D%//Yq #Lcn qᱞSP=bk '>ʝM@A  CpC豏%)K8iy ]_\ۮ̢mHV5N43ȫ826x;ao"8Ap"MH1qa߻˫B8 upBM3aU ]K^BSJ8{וu,o M=it`zɦ"/B1s^qvDU`5ñ5]n/Pʞ 8 0]dIc!ǔV`#¿i@Y@0%<ńN$kS2 p? ֌M`U(ICw~'LJt%exfb^l]ƏH\&4jGڧk+7ψY  x_n97w9 x~鞝v0F?a_ @}QQ jorv6%~aQ0HZ'8 bVi9m\)lC0.%+*ߡ){B8a4 A7Px b!U֜~ė1@/Jqxf;.ɥlCaxPM'|!m'q|0^xK-~v#hDkmZb!_^ ԌFjׄ?A9u {uOiN`o4d`YJ*9 @w>ANnx5 Yٺ!?jmFwG5ʜ؎E BP0kY cհۄ䔚F!aQ|yOV־WxL%h#$o-7]0Ɯoj1g仾;Nxw u-;Zq!Q\TX_PǾ5 Aysp>%dQbw [&pFEq\ (u#Y-}8x2Z݌1!j4;WK~YiW톡0#I_1󤢧 G`^|Ϯ:4vmY o^4`I }|VE~0"qn%E:]qpdfsS:d N^3>PJ5-:dq}Yufy3 3أaQ'{"z*70k&Z&N~a&؝{M/s/Y668xj$){g2V)^ǺY KsPI'9/= pёLMjV8xfu <xp84%;7;Rx$Ψ Mf+[۠#` YE:##|4΅zz bpVkx[WT8xZ]Ę1Z"G6^KC견TΠrU+"DG٬of'K5 E@;56Q;#~ ZI->ʚƣս (m칍BG?aO\J44c@Tin+7#8>`] -)7=hDEb Òmv%O]2dZvw ýnzr I+0 U/F=#.3`ϭfTySG1hC;}8,L͞N,DT"tЎP}[ ǡ˯Vj ٽQ%Fea3eٶFܔ_u%ʚg.xZ\:|A|W_i2Ϝ ijew&LM-)jw IRf+ςZ`c?u}Lsl/mʉ13Gir2'TPPuDy] r ׌[=wk]|\w -Sf>gRPf6&v7F5E`g.7xOG;\f=א`P% k17԰P9]*xh"SJaڎɻ(X&L+")#_AܑO;Q1/tPyZ..♣G8-n~ %n u2F33fx7_E'҆?*7~VASz:ӊ#ey U*㋛qct߮WΏX0S04j^-P% B[% W}[}1oq[`\9EP!GcXlLTg? ` 翋U fIk9+jC XV5e7}~bӨ06$+;JK 7>KI'ܶ!q:-U>Z-' Xs'j>"8/s-9|yTtf=#eL@#dοe V~'AZMK6 @81YNJզL_Oj;^vص\]ylZ [8hSlad9%f*X aq"XH+Bϔܘ EgCm_iTi;M%I~}M C~v:)EM;]h*GGCfs맯7Afۚ՝ ,m+9( F'+rVY:KUCd DO%dŁ{Lu8~5ߤNf K ދjy;:COƺ-ҖXM3vǔ ؄L?S #ִsL 'iJ<9q`e{ЫDHa׫|w[mpX+{hz/R,9t_a(vZxh-AaWF0A A$7+cE~ .2+'5ŊMzec= 4swL-zPb42 cwݟS"pzl:dѸlYMsÎ &ķ[D)*gcu$7W?a"xiMdϧ!Zg %©n"P j)Ä́׆Tk܀IP7hx2-}zE' xgk0+BLτ;~qOo;+⌛va;@RhU!Y~KJm^@'KtH(+0vB*.t _יs|~1-ʑڜ},?1ql঻LZ]Hԫt)`^CB@=uj b.sdEDpGk)pU|sg0\ԇczHʌR=DN\L8 gkl!ҙ< OA|.8ֽSj)f02tkФQ/n6͸k _ ׅJoprVQ+p)=՟#@S>S&uR׉ \TٴŞt7EmؚƩS`a!3wKu3n&~>F)Jfк4"߹^Aөi7Ad7]V]fP)<pņo؍Ԧ:?`~O3cz-$much7":sÎ"oFYv$Qrg=LUfʮebN+#ak߼~Wh'HiyLcl0uwMbDjV+ɐJ(zHV1HK/#M/;X@tG.ss/eO n7d?(w(v Y}ze/DLq MA|v2-7 bPRεGpruߑ&Kж(]&ey]x&SaRi1bC͎@/  _)ȇ*Ӂ( %DQD! ?Su4aH .ۢ;-Yb؍^ː=~~¿=C.T ^БRݘp@;wn YY ]{Hߘ3vU$`|"'y%pKRviHX~m,.#eg)#nSa\m"U7%ۇJY Ȣz&㝆O{#fp öUGhTC{ީkp7 ?S;}<v|ҳ7,^E2O0/ Vixs5?ڌ˳6w NIhMGj "i40)ިvejI^Y!C_ [ hr0ETlf_H*ŒR4B-R0KLr} (+":^o ¿ {KB=FrX쯢ޭRFF4I:.*(Hy:dƌ&S2}fR /E cfmDRS$ڤRS_]As D%ΛNQMgi^VU_5ɶYwvuqzw=|ngf !1NAc^)r_qN\ZF@@ ͈W(l;yaNvh|H/ .hj"QL#Nu>.&ec_9k醻Blt(q^z̿9ʩcѩ8{bp/rU)g:L1;\P9xYca xH"7tHڈX<Å@!=ldwk{C2 Z[y8 @J <,=]ܿ+"\7ި9`Rtw'J6K ?tVYԏU_RlT7a "11lUUeL߷sko^GdkMy'u]Ŀ~#jF|%SihsQqaEFvF=.j2H<\99yF}q&0z~75FZwmlvM݃남oH~P0S{ߵ=қR/7&+U+b0R VS)rݮ *'TH$)XKc62>qۿk 3.B|_86r< p&-N $>CX$u,p+ߪa {}KYa./ݬ3\O;'՜I:~"z=ޔV~f7<14Y^i]D t~.RZ㿦W9w#<ϝ䤝JB9+uGƒ|; @>+qzN(BeH8޺L [C)m4)FGԢrTz VTm&ө"xal1sI`=.dWw'`MtyS ^p)7:5GT3UMAWYF|#.%L{̸9z؍ MmcfR텀 zypr6Nv{'ᕽ_#C1d 19ffN%Dh<3 `K WI*U\Mz:wX~qY n@(;z)yp/G|KGhQyP{(bbʈ}9/F =!\di׶s  }Gwskl%I}1I-ʠ1ۮsALEbDwدgꃩj/&QCp7$ v| 22Py(K|D0AtQڴaI f@+e{p kh%t7*:6Pn &ΝTFۊ_e]-.c(iz|]%C+?׊ߕʼn۸ߝJ p `GOCmwAƮ=dtImا;:  u%ζ3鐺*[ܙdx%& \רcepѶ^AI1qCڀV_TjA%LP klgjV&i&x%&0U,46F9tJR2w+նD9,d)Uш?EHQUٯKS\pSh>1%D?eIvce0=BL,V9> ~gH„AG&ܖˊyUx%$V#Sj+Sp 1U B˅œǥ#&}|xO칔Y[/3不ӈ./Jn*R֨a?˃-8 n?uB#yR2\Ykً0FN ebU×͛ PfjJ*ER[Z_76b#=OOKHKkGu*آ/lP+plv~GHflo仌W(hfkJObH_rj S*g5r&i9(5:(uPB)s !\hWĬT]C‚!%u5|__ M\QtwKۉ7x䈔$: ?"ܛI$I)v {5coK\\c!țzݔ΍ ŕW`RX~?]iz{ɕʮ',r [\1{(_Q~(!/:H28t;B j?oX-۠4"+|ImТ~2G+Xxµ"7b'))^UXdC^ 8?20m*P]l#`k:HZ:)H)f^/$J0 ԝm|_CMގ=-K 'B!0/QS&m+rr6h>}jѓh"ܯ:Qлxtf !핡lF{ߛT3(}{`bʁ= &h|y)vZ1we[6QmWF9A* Dgc>ګM9A"'{};0̑؊9 - 8b-{ JG֮ psL&u > 8'}_IlPڬek~!pT2P>ԋf<*WXmIxo[eUDX ]{=$6˲ ȍnwIyYC] @Cbi6 S#!ePӴD_UCq ֙eyvOUpus툝 f{z>콒o-ŢWFn%f_QU:jr4* K5@|$)Pd4ta=~uO~)Q3tiB\] ``Ð$[G@4ʤ]С'fa%-*v\n(O'&i` u EQ? >vcלʌ<[30E!8(/*:{0iqKn!'-έYn>|&U=k"2[9@E R5Apc>)1gwA>mw^_ԄYlqXx2Q铡s!S7RHKYSOo~A}3TǪX(C{Sӄ޸}AIݚ1wɶ.x#͆GX{L?-&$9vk]'6fмDxK~j8aהJ-@~9 V$eD.>x^H69v^H##GTIqçx ÔUlZ +%y 6vCQ ˢ$9O(Sէ_ڊnKlD1wD\?*+uJ`\!z*ë kѶawrJLT Rj],hua[Cp޽V.~K.蛈K1-̋/.GhX"kgͮ`RS](LFrh.Ͳ;ս$}zx?IM^Y&d/jͪU^M]K_Mȷu`uwt bkG=7I?z+9N\ TURH43{bzVE[d,E=!@`gMc%bP_aPV箁з& ?п_,/ Rl6t,gY^-6HƔy^ޓ,?TPr}hLB #hNcZsflP-(t`i+toxhd}'>/M8>\JTK 6`o\hí]= ‚T iBSG}wĐ2.e`A;K%+$=UWC$.erdp')~"&֯*}0h)Zet'Mt*ߕBo&am3j)**#Qsg6?'/y%'~09"Mhn^ܽqBz1VL[8cԨ0xJ!=0;}?_p6q䁌F$"!onE05*Ɠ2B=r^J-Kˉa4nIh7=?zA"fzVS8-}u$| #wR%lT`7[1~k݁'"'j זNqשIkVRn1DžŋRfV:O=b@z5VHх>ĎL BJDt"yENyRX$2B`YnwiXKTP+>Jp/>Sʝ"O+ѱ<3w $EƩrि%me'b"rUP@ OrŀYqDkO1oiak $dɦR`C W8$xtoaJT\G'兢ퟵpgYשs|`"C'gƤ, Ot"&fw3nڒ,Ńz@=dgA *ڳ[|+~9WBɡ6XHY7. w$tۧm@W{ڪSz(mVt\B50Z|^i7ommQ~v\DsDJUTC+<̜ #۝W${SUsV |[4]}u|5~9B"Z.c)&ao=k7f+M>Cf#JiW(޲-=Z׈f:_&D/>*wJ^C]2>&h<8a,buFOj4ifa >eC`F;vj`8&k݋ҟ#M<rClIOͲ~Jsj9G]u\EC듌iX/';`')c|8؋觓 L 0fu7&IŰ;)s;r3_V}r!  $GBъsե!E;[7MU9:Ȼx6T=#zlN0R)OƂr]9녞-ҥ?hBe8U2JѹQ7ȰK$Qҧ9/`E5MaIu<%ZWR(p߻x_a\{H?DjHE'PGmT1bB!.I[+yS8s:-x%TMGm'H]+zq KԯܼSfbP:EG23[ ["sETx6n<`1a%ItNg l KTYxD x^ғ]u8'3TsLJQPZ,8+B6ڣjus::J00*yQƄɡ$b3gwIr&N 9_] 0hHFr,0SgB3HoE\BdLpJ$^[VU*\HI:3gPmμBB @@>Uv*9XJ褿Х8%^osc1b:'vۧ?,J6J*\sY[xB9o pU >zprjVײ&nlB0+=,8N)R+6׍S/'DWӯU˺wGt(øk6X5 MsI*c[@o+OMnc$XHt*uuXF^E,\AaQBVj5#%C>Lܑ דYUn 8ꚏH5._]cDa !짹<!Hm|#qk׋hrO K胬^yX_:!e[̸Tl8QbXi KgAZy"T3l-v?y#@W3#4 :ԡB0;:u?zǴ&?>UZj>wn+Rtuj;sϲ/Z~QQ܈r˚B¸b3hlckH) !y>we}?- bl]B*zX0l6!@ mɟj>4n5q \$ɇ< q|OعjyƓ̩%%XR/ѳxϠ6q#EWǬf$~e{tv!hf.$Nݔlx*cG {h yby6~EJPV:&lPj-Vxύ䢿N"Em@nv.qg>I/";# Tok"O#z3|d] wX4twaS(,4hx3©e Π0рKCz1xּd qš, GArڌ(.tE&e&Lo9"3:>a``=afْݰ@% #]}_vy.iSW~flwIMSO8av~̋,v:!BQ_d!z z?4AVAҥ7[ۊ.BGوS~J~9X2N[D,җ~^y0]pQW?`Xh\4nԛ_]m=VBbWXjtN:\eLy;qաZbax+ EX'ؔuGV9p9"BUp7%V5RL\Z1BFO;о9)truS+#^`ܛ˄͍eױ?̨S-_3eQ$7Q#$p7n*wA4*rߎmD+֜kć{Qi\]?eao=M,5cwx]KIj9/tVcɡUq4H{&k  *Ų섐$p}PZzrtkѐEҧ-=Ef~X3&5Dg+ .VkAO gp e\8}a1읥9|nťzG/=6Pd(|2ZU|*%j@GcanD !1[ciONx`y*NBRK~ ;e6c];g\̒?YtiXr˒" #9s7]o9Ls!.'@{jvQӍKqʪy˟ 3ӱa `so `ykhs;j͹۔ҟW]}L8MGV$F=-@]yІ&:̧``4$A8Ħ x3D@Yeo4TI l떁drt/q^Z>²GPF{8G1~Se޽?9N4wzt^ĉ*Z5* XWq =ALĭ {xh=D&LDtW [+^y_ B͚B=GUJj P1Hacr_c#opAt)6ħ`Hɸ{˘C(k{"ܲLZ]vL-UrMb(a@W]>#r5۾l渻_aߚaO`NʔE3bvġUd W~0^mJo.LxlBUK#9OAw|`U66@YY3\b畞?BB`_u> %tGKk¾b40C`cy XXZdcavGL8>_] m˗;hZ;o{Ft4b)Ŗ咆&*ڱ|g@*1%~-?ĢnkOvaC  d9}芔QƓKuL 4ˡ|NjV+'"Pgkd+u RܴB{7}SvnYޢp/S;5Kxd~^^j"(O3A^We_"~jK)՝Lcet`z᭕r3BizOaO0PDmQ$%qF{[- %>;WM6 80]f·y3]gv &s=_jtc^Z nB!TU'gulh:PH&df*ImjsNԡf hVH%a1%%"V`ۙp13i>z2k$4mZU1jJq& eB!~H6\G?٭;or!s Pٽ8T~2]':y*ũPwWeJpH~؜,/R@ +UQHk@nOH͌PZy}T$kO6IJx.]& ?p9ŭiDH#Z0XHmW̅y|.bOdf' ]b!IIjzN~;ZZa`aJ&57 &ZK/-yt.mF 0f3;I:|"'TO@H1:Hҡ_AShcgue;  ²:8ItLUa0S^%B'Lrh֝VkmH=aѕXUUȸ@3dcQG_ n!EDD40H2r&j5.dM "B ʠ"Q]=V|^%LnKA3kㆌp〪l.uVV0rJ\>4L!.OyüWY퍍1 W:RcNTA+y/uێigYy`$nQkԉvIHEr̺np={"Wmj 뫁1hJux闢0 XLai5֚䰶u-9ܜAJ+,ݳ-5)yX`̛0gG hjmU4=clxy>;ðͪxlPV.dҖGkea |cpO%3-_{L'VcUc_M+j Ԩvj&tl]p5N´RǹpU"b;$Wi҇N=T6mCIGmZN 8YdS3=o/䕛yA˕Eŝ|`~+ACOs#%-ُ'f&ٟ&tG,}Z=k3T/op-Ij O9ցj",}$hs~QO W?;hϱ½'k_㸣K0J2j3 O'qִ,(41ڛb&S+00Y`[l1d_v50S9<,A0uLY1(~זvW%&[ح;2N.!є2aFIKq}i\UZbƀ.m@RKVҘ~{$6gvIc(xm8Z%eXHwׂY(!Hk'Lꭝ=3K6McxI=I= H~8u4kv d q8LI`Z=a -9}EZq8 .@.xWjҤD([vnpHՕGG7}c'hcF+#;K4p ) ^F/QbF.w.$QT^T≒H]ߋá>=փj9t3(> -3EfLH&ݱA5u=z>h(?C6HMWᙔ̩)qbd7(Y喤af*YA=qhgMQpoVa]) 69֖%B"}^h * L{ʿ+q4卆zXm&\<8&#PzxT+KRg ,f4|Yk|*4CFRH&(fc5LF'+z&Ƚ j2_W 뛱KE>wԾ.g,sfɽ.9t Ȣ\)\FʝOg}IZnRCF"h=m˃TÄ#ݜTzWF/.a:jȖnP//No.Wț"Bs(}Ϳ#^}D[:wEiyYW^Alab!ꯁNQyMs>&v|+qZCzSX\E]xM`/tqtIr SUW2r J^s '[0#LfgNsqϦ¬*wg/Ð9C) -ue^Ts?q\w{Qr+N ^ 6[ɅvN&K{JT W`:8+sҖKf^a #!QO\&nӥ7~_ B E-N7@$̛r! z&s{@e,.?yMMV@ϸ;F"-W @On^ȕ4M4sA|٨ 䶯"QxF:YJ ^n>dҴl4λ[< }nPEQ-5Se]}D e&/+F+FUW\0jq{%k71ܸУn\8jJW%b䢿D b,(.}qCC': f-PgKȟGΥ2oYr4B"y13#@mRA22arU-EF4 "#WBc{ɥ5ݾҗY 4.}\'mo!̾CdYһyXE=~ё.v- h,_r]2`C)Ä+ѶD}k2}_( g߈HdךpO8Zm}ޗhoG8B҇i#9m~(벨|r۰L[M;;;}/H\bl fJa2TU VҫMv"DwYvѤm[z9a6෢a>dV?/?U9؇ƣ3@[@@&ˀ${Do0T7yptt_JГ])3@٘\`fO[̏)τ!-0i?*[n`s^zrLӞq_-Kں=3GwcfThE˝O[c0iI$I؝-蛼q%vlUBᒴm`XGyt`sPfDlG .S 5;V &AW 7ϩyS!Ǜo߀ wsXybFݖ՚(dqIy\3 %l()h9He#1A/l^:SrwmLu9ͨmC4d[bB"jl vfK0 sg2AVpYq ܉Tl 3vMM8&l%mOsD0MuXiVK@J'-J vYYI4^\AEl ey!3@:][1"Ki[6B}(`@1ˬ T{'= Rb=Dvuֵ\'.F8(YZeWZu6B(k͏\i['\ć03b޹^ :9t<ɬClCw郆e ao_(/66yTCk S&")$oya{u<':pVl  )zcg(e'];c4^ʻ–KRmh3 eDUKZn =>MsMo"YVd'%zjpͰ BH I;9o' JJ}ɋn6Xn;>A _>->k(,UrB; }//B@E 0#:p$ܽta+b +ۄݬ5 \ؑe]&Ƌ\ ]7s(f/uRTEoOTnbP"?{>M.., ~\[M$ņܼ%cş}.;#3KXzkb"Vnc{WQu.+&;Zld>"VX Dнs27̆Z[듼F-u q~G+ /XpqlDbWLS0fJ7VKAp{a5V8> TGi}桭C'+A1V6jb P DUlS:s/^#[Yg"miYgSݿab-TѥXOmUNZd`qf \BԢNAÙJ Rɳޯ,c.^)>(\ M$局o$Տk@ =x zGX[az9Q5.Xiv qt2gusXۢS9,0"T(,*D0KzY*s΃Pb$dkMvR@(uDɓb]r)}PQI *2Ɣi.-Y+A.X^+/nF1o 4?t'e}~ (Mr X;\0g[p.["*}KF$@iFgQo\WDЙ-9ױ [O&g ? 4w@G35&65凳la'fXHof2a骄 6?};zxH:l@ 8PX[t(>׺Ğev={~ :1h8A %χ<ׄ-".#؏Z~6g|79ܬWu_7%Y9 f7 =13Mp%HOsK5a"c#l@q/qȃ{t|vj"pm_N~i UmO 1[3ظ+ėRB;̏aYkNAJFΈNURnU@9kS9j2lrG;=j]Ȱ)=#ޞ$&!RmVGC,rPh1'iK2P `FmGjO)Ó@ iJ;j۟T mx!ofژ5p>yxAF=# .T qg7Kn +!&b~#˦_U-*&bM"Be2.SK¹R뻽4AF퇥}<_؄流S+OK1U]db4%؍VE栐ዓK&GIֈ,ZP qy-ꗳҧIǼϱ¥۴]ƊY5ons@Ni >bň|!}숢CE?)q%AAN;%;&oDRu6;u;mU1OҷL } #|5 k|=3 \7^6DP+K,"Z $B\A:]DZljUéOYT "f (-‹.s;WŠMvV4 jUIeR K|o&/կ> EyFX`o \Nϥ{bUjjaTNH$k0ߢؚ5b;HN$}G\Uܐ2W "m&rbYQ]Fvכ c}mfRRMߧ[r+1Y;=,ANVMB(Tc<. )ƇS"2ζCCNSqN.ZMSJT 1zV*蔑uA*SiexyMt 2*(+hUGlbT$B5;JhZ dSLp\B̩:J0`dyVr ,|Y$moMC/kezzW"%C|q3Y Q+H[:qfU#MA*}s0+7[9H׷C\ٖN D4>wGI,Cu>X $* TdP#t 'L`9wр r5"YJU_B.H[F|H>fx/]ljg),4Qd tîӉVcSj".B1W0dN,EN#bԻ%‹xe G#ˤm2DEP݅?'0"Z,У:͌+/Y#V-&Wa9C:6.e;I<.4ȻKɫC(3LeHzwwYyGn4{jpxyGK0,[x9fvV~\ڍIy=N hAM?) 3#ՌtZЎDyFO5ý&-/;yRkd1tϔAz\qSSۏ)1S`GCA8e:BOگ!}gVN| t;:\6 £Yx:KpeJ?FK'UEcGL{Ʀ~҈nw =BG $Q#y)\",}F e(;jG6˗yIWFN@xKX ĢaM>]j@djFyVyWdxzYSM)z| &ACgX'FY=` hR "]bڼ~RUlP6p^K1g<՘.6bL2]ݸ"HLҨc2=oͼ֕S~zK_7$| ʷ!⨽ wxYd9̈́?j>11\/ :E miĖLV=B/ hV32Ё #Rbk?eB/ H+lKW4r\|S4|@p}̘,f|_ <(f.t,4Mtv,VۼAF;0b`hg.괹sD0B(f4AB샒V.K.G5\3!f5I.ɝ˿ԅ%&chSti!I"l#X"P{3 2;6~&I7%{9?toP8Pl^8E„#ڇ4:3 9$˛\ t~jBVŠ}뵙_n{q/6 f|5>!u+J)u;XXUs}N5mu[3+L?ȚTW*hZ)ɹ AN*q5 !ίڇb#ֻ͈SCbU_!jVṞܽM^pҋ]U:Ov@Aogz^+.B!C5 Q1v;aw r }3U'QLJxRW.-ޒ\l|¤NjPأ% Hj6?*YfU^MͶ'BzqɫdF*B4E\N kLw+~ 4/=W"vlϜ񯥢I;y-p(n!O :–i+UjR6h|ͮW2g~un?yͮV)șK{dp [ʠP79V]!Ṣa;¸]p4&|~vt=NPrG~ˣlr*Q THXӫڙ EJdzPPjWOΚ|ZN`gXWc F=\Vea曁nFs#.Pt:#8j|P(;QwHD= _BwG,fVJ2"o8+XH) wcZb[Ď@>,jڀM{%%_(U5LWj\vl[VH7[8p;԰B* {3)΅w[_iM2Aajک.mIG[F'9[tRO>#UH2"<'կ{a|K&_֝ǘ~'KtC֩Z~2?^ׂPG(27/P*od_ǢfQE,6Q|wp"0Fgs qwj1lq.-ko|͚_\uDEcc-+DrsDcH;w " K/*'{]6{%G!x8|?MRWH ^IU0H($œ2!l! 8D\ ɚxU/`^ۥўa,Ћ7 ܲNFOm2 1F\IV8S8hI9 摇=gĉ_d HV+ʥPppJj\3Os0iEOn!mg\ k=V2O& jLcln>.sj [SglzI@S rCuFy o*pޙeL7pZ|h(m+~{~ a5JrƙDpw411÷!<_I]/ӥ7szŎ a]xٞ!$r19:C~YD1 *\6d6$zn3P(jDaEJ<\#`JcCC&heՊQ7vNWU A?ү@`}mn\8^@2uyE\R)1!c;IbRc%riv0w 1]iq5 [[4%7:XҎnb^"MnY^U!9]gRp6 K ^< 1cxR>ct[J 4k-N7DzV~Ycsݮ>ؼ./;zp٦ln[l J^6-CgFZeP0R7:M?50b6-7ljѨ'zqo.eͭTxh`0X^'ٲ11|@^A]ߜ, P\U2ItݚɎ -4C_`7?_[/oEv<7Xjri`M1GVpl v0, dPGb5)uWtR>Ai2K?5 czMi#Z,H*XN2効DzE~XiozDjQU6VK,ZA>F:^&.8ⵕM4-( ĸ= ; /C 6(鱸V⸽̏_N[k$=Ͳaw?#3 ݵ *5FN#-녎[OZ[WoJ];nI k:ޥ (+d+eFkBm9nSDx~oѧG;%R%ùrɜ|4MfpenɅS{Uj+|U@ar:W P~r 0`yKAk^ VW> ~!3…P ߄"[PZ.ڻ >< t8I.W ((ȓ.QP)ߗof.@Af7ia@63 xFY!gB:rI?`Uõ54k]6 }qJΈ M 5ve# B0[D VN*I1IIF:^ Pm ֛L1!`am\12/xsHmu~!#Jn;rwGϕ<_Q~j{5|?6RO,HHO<^#0'ޯp~>Au _$ag$Pp{OX~;ek›8B8OQ&sqi4TlHm őX1g(9ʸ3K =9ςg͏6(W׃;l7E׈TeYgВy0p8mBaV`f;69^F@ުRg*G;Cc _:!ֵw8S8vMLq ՠ6.n«Ů{cY<`uq> @,vNavT9%?p0u:kD:ݮ>'RpyI(mŠwh]ȼU#+/yYSJv>z沩 &u8Bxv:7{CrDn Z42uKQs/c*0@-wGFpR,m&?>#Ob-@ X7vy[?͐{l WE<¾ډ.AsyV@*(c͎bL}vZO{$,ёp`Gltϱzz7sWLVOt9 :Ak.h  -oLP"[ࢎDw(2  E}+"ܫTnOi)Oʯs)._l(1 5?b(!y?Ml 38EYcPs%@-곍t,6<`i?8#dsꄑ._!{FG܍Vo{C-[(O˘1+X//d/΁f;P?=]37Q-  *h$ou?/Ro{/C<"G449;Sj<*zKCiqYL)Yvj['h_xSB(b8Mz>GݩŤ&V%prY*5a:.KvY5AaCmRN"b$<`N7^ } ]Xr  2aeV~y᪫ po97V?׼bj!@r|7 2P?"U5h8au9lf,eS1F/H%MꃄNھv5!I?%0vݶIϪl=a޵WMٍ6:"ͬ߃Xru^E-f1/qnjF Q yE..o, Vi|]3ΓD;P1/ۨ(p{*X)11,r.MZھ-qx+T}IA2K|qh]3\+8'X]665V*uSN"GZQ]zRnڿ"&l~LUݺH^UM 8R#8+2mQ?\ 5O<5GRK#d)2x?ܲ,V_㾍uG oKykةJz-`GA;K v’A?@Oiؿ>O K1 =[0E0{ +.i9OGQݸvӬhvtSݣQ7Q +Z}PN0ΉK+q ̳%J,Пo?Ʌ|ws4[ř=J}.~tf~N qG,#9r約7-|-Fh佒ɬE')3-,kgl̢XkSe5@dTa0AS,nv)xb?? @bGo < )lji`_~ @)8UYQZBU,6NV9figDvV7j%x@_+U䬈\s{' 饎@i@(pt&]>`5'"6n%¤cU-LQ}Lh2(+˻_A&>>%ƞ&2 $Gs$8 1=yvꋫpMH󽮡:_b2#dٖl"z>^xz)X㔟׈| kȻ̊jDwIj0Anly40k)VMowj+iCKbIvg:ni :Ԯd j=snjZD㣾(5]c ^-}7 pQ;.Fﴧx7fla,fUь@?vCxLzD"Rv|X^RmWCJQ|?JOa,F/d ͝3RMMmDCHºbdA, A`NxA=iD 2{#ˋ8԰)*ΔlrzQS2P䍿 [Ob_h!:30sc,mXًE>^KWxq,*8Dg"V x9MڬF,, Ov6t^8̮w%$yJ͜%'؎Ɗ c Y} ZS/ȃG!n8cAKEL1Ӝ :t6Ub’xZDR~goǟVY!r Vz+KN[cz_ق.ZYaϔ2B-&];.:{o;6=zaԻʩlf"@VTDܮڮhQ/=RqTks0N14h .u񩺘)V'ZV;3a2E{OZa>r,W4O$8UpANn7cSכ7gP4?􅞢 y %@=9H>c6g㉨!SaD\[Vаk (m&>K[i(@ܐߠc_cOB(:IDW&F׿0R I_lb"f@id' A;R04Fc%CRvt+ZfJt[Fm0 уʼN:%6QaVpH Pv䕊س(Wmu$JBA?]΅#ryLU> &:.XNh Ez\jL:(BbIqJՎJHhq_u1?CvI2X%ם(Օ~0R\*IץOM.d#KVT'&mK*"5 j(ex)n#pKہxGuP+MEMh>=mt0whq;EPhHE Ј-xq[9%}oR+oYj1c_qJ+F"wUAQ902ʢ;:`yu1!4 ݱBRQre6z8)OGixN%# b[guӞr꺈b緸tS_rzl}C΋wD;\"ͅL?ALxX$#* eMژu=PPcE\x3Q$:j'"="u [_ۏb) r,]>Wry.dY!>أ_}Di7XEX8Jd {acF)s71~w{\mgi)/?־ M=h99\RC.R{bS,ŗ i*(kiM^A!z".Đj~kJgcԋ6*40͍?(He&i^J sPX5! ]&8`NJY1.`&fusr+de {p@~X!%*q<4ΉePuwc# K;I}r=%3d9}*I!K1`s 1\0:q!u<Z>4USy"h)mAKY#}pax{;/8LOzK@7"vRAr ..Mg.7@#5<|x%Q8ZUX6&Ďb<$[h?}!o>uA(jnHxծ5|i9sw#Dʼnr>4_PͶOEDDgDW"с磿:.z.2n< σ@7K9 QNep'RZ Hvfآp+/괝Ф`݂dR;AEnk=~)uH.>d2Ez' VJnÏ4 f>^vAs-\h'ycAb7+XzJ]aT5лYi0 (`)ߒ.0;= δKQ/`:y*/WƮ2-3'DpLh(WN̶0 '~9eon~pn#G (^vTV݄ak`ɭMW>|7!W#>DGwI/໽Qē.!dvTY=?uJ8Xl/꘨& mS'H#":2 KNtb>LWzAxbu.gֶ1>BQtqE1{4?;H#@i4 2BuJnr/Xk8‰kr|\@?jE?0gd)ei f X^q'`סγgAJ9L:Ssw胢cg5 W]߾B_֯KfP6N+\K"m!Qۗe~*ɝ/>d{Kb>g9L'1WZxJi$Uhe~|Z.eH#m"IPVDNLzf j)`g}0 %'TrTŶ/:y*o::ۨQ"ӀAPg\iR%jwJB0uQLK0tO0_l(a[fO[긴~"{+SI*T,$sn}7I<խr%:1a\5)]ГsǩԚ~=. 8.8M9 7UIs(F٥;h>qΚ*}6æ`G͹k8ICnȟʉS asd6lε2`? Oi'a-JJQf}Z SD,<'60yNuug3Jzru_y0\"o*eQnFR hӼ\iYGJo2Yn1r\-Y<0ڳ6zqhqeo"gs7pyrMláKS2]n\ݬfS.dM:p,M$`"rIq?=,P1;}!VCXCZ+5 W0eS:ELsd\JishBjEm_m.8-O]Nc|<;{jZh:A Ҵ{73,2-w(Mi+jGdoz=c$uiykJ;'gP4DkT;^]|Kэǯ}׆9juOi[1ǵ?EIqjGDR~q[z+v"(-Œnǿcn{]HHRokM5' abp4S$U'*lnl솁0yL5#n/&v{2VH? B6V̷P[#!-𔀬(h)H)wb}߲Kpus';}.ȌbGuA~%-8ϒm{`ύR9i:x1z%~T%ޮn<ӭo@ b ά%xȕ%ލԋ3 )KWSu-!ʥr2YJ$5W"e/VDWB8e ? b%7C\RkJ3c.x 4G\񝓣xZg)RK{@,U12*O@uC:(+|<;Wm0..:8h;XMKS^ ly9!34gz2S(Ci΀ AMԍRg`ޓԛ9d1uEk\e$ MzAR-[_>\dcK nLכsGNdpT:vmf0t҇`PXZmϺ~Hfn*z)"%"H1"=NElO<\oSSP'kYAF+[7!rS,9N'Tܬa-;BX 9 q$0 Lw|aACڹFc7 UTY,һN/,4>?ځ`&] SJreD7Y!H4S#r0O5JG6D /Tθ3[c£72 [psIk%;U 9htKfi70 $SKQ.mwM0$X]B[X{eҟ$-9Gb&U$Hb$ǫdoҶXƒ(NOl? Sщ{.[cbk/v1B SjnnAms̗xwCz5RzB͸ip{lY;j%ͨaɫDj.P,ǽ*'E[k`sDk)YQ=Y"pwm4J'z[Ȳd gCKM,e! k6P2p.Bve@I|x[%|R:RSLՃ= ȉ.K}-9ڤ(.PVw}fbDʺB #AJ$$5{M$<`#튌1OvOBKԓ.HɛМ)ʘʲ,UnRz_ }zʺCzv@ڤ\% g +"Jri]q"EB".cUJSLj$(JF9[MY\ZP;D(rr@AhH/Z OtcEgvH_apÑ;qB,G"~`p/w5)7~ R0C4 L&]ǧ2Y>t,.N^RܻX)4YagۡI$Lc / ,p;: |?1W rx'uK9>Uǜbu":94cOU\ϜID=@>' 0wvUFpֽәGQ@:w"#'15ֹPSb측RQ[>%`N_!6B% 9(4wWAC ^M@G؇Lj\^oo}oC^M.T:D \Xmnu\nc8w_;gi|zC3nV܇v* 'U v2Kf'x͒cqW G}TH%y|Y&5[#A%]ؙ N*nQK9zeQ~UB}}1@e~(JWo& WBFf()!0)EY(uxUXj͚*ZD!~ljjb-['$8Г?BLga/ u0H-xcţGfO:??*}`䍈on5̕3%a@ԗ>-Ľϰ!gE2s O/gomЀ]sY-43T^| ](J!2yikP|[0*ҽ+!Lg\ lGeXqөQθOؘG)@? I̛ M{2%B/s/)8~iO~L7z@_l;ͫN.p|}&mcмOb(*~q!%M.׍=θql,NKrQRe|@iRDEdRB(~@z/ٽUtaKI3?H|.>A JX~1 Ag:Xy6~2 uuߘ=5lȥYz3λiP1t(TVa}`;afw8>7&!6UQP(6'} 9e8--SXIxZH$60q2WB,G vE!i^䟧_0Sm< (`VgN!gDJ $>͘~jF=HwGaR'}I&2t9&NGM%zx>A9pVH8=# ]Qmeoշ*ܶ gg1 ZPjuΩã\v<`IAE#Hs0vz=[TQ3:r(s[i&o%r'X@yt.6k82G?< ދ9ѿ4(oT6+gҢ37c撨I;l">[tsHD@O-@G^["7Pnaxc;!3'b$#|xRfrJ\ uE|2Y)飍~A236YZ"$Kl9%h|qb.pV@kKJ"j,FLXH~E~vK:'CӯpCDmE^)V14- 8Կ+cX2$nTj fwQ@NUKlԫ0XCB'PV7!G׮߿| Q͂24k^t9G@h?:tYز c T: auc:ri;:,ޘTu-J`᧣6%#,,slz\jﳯCB.H'FƖ9~cdIna%!,~d4Y4Qgs*0he09Q2$%Іok(2rCufivР ur/l'@9g,ȆqxhX~g(bS)mh[xcbIDx D毺_Ў-됫ˢ&9]S0V](?gx(k?1,->&:g#$Nqht/wF_I5oT?DY1uO/v/; !ٖLΠ_OM6|вePfF<}R5'kޘ~JS'hJfc܈X"a͘#赽t8Vȶx^ 3@JW OYaLb(k_vD@wXG'sYs SzwhмaerbT/}M^_2EBUlȏ4VB" j MNSZ&cKiaxi(18GB=V)(=(6v+?U3,^#Ywǁ_ш8ąR^p6r0N3FVW\ ݴA-fKhQ[<1)!h'6 K~?7[q?e-)q"( uE+6.Gxe%r#,_LW8&: 'l 9Lxhj w7[:(TJ/;iqh:bYzυ6oA[x Z=hNGi (yqeZ]Gm%leqnd.|RF?:rӾ"샯[̹ԅ |ӃpQ \TdRMg@wѲ^5t x|L[)u.”&t >-c ϲ7іpEQ6mgyB`D6Ϛ7Z')yY7|#Ra (9b]ۀ?Mn%ѕ/s=o1ʣ D8 sBT鑄JDf^/i_UAS݅@nʼnڲKT5SX"8zSC]n ؂~pf`u3+5 _XN!LCnHfG#>}*XKX[ۯ!*!< @P= `"EOrݖOh*j xzxC-^/ZWȘn~^msh&ޱ(0-0V>[R]`{o{(bf0syυ%^Q'^\M4>ww zs 350:ƾ}}@îSN 'F㪦 aF&z %c@QGs/F_h$E[TP:ծ<C%o1嚬J*1U1W|S2x B *(XuhAUdF /sX0g=pW}W=~=Es?S9Nlp Y&_TC_%ykXt.igуǝq8ʫHGwN9)0"\''k1,Qg]:"\;_b=—S7o<{F 3k')3aKBU8reEfa@D]΢/\G%/f2OũmiT[n㖢×6# I+%i%[{;SIٳ1L Ѕ?^IqI? @oo ƧW"yECץ+ȸ=WoT!P]Iڮ!nꎟ#~C~"TE+fs-WXJrH7 ysi:ftփ/qtʜDX*]q+Qc-I!ɣmq'/1=3nd~WߒX#n !VWą\F*͑( Lݜ&ũ8 ]2/iM2ֺr4!LwnrO!_yHexqU> Kry'jRgKCS?l0sF>ˣIz+cHWgeB,E+/06\#0tkh&CP~#󟂭 Y g8<|xTL.0D,F΂aǩB) g%ŏٗdw{1 mĘj!Rlj=Sn]ǒrq}M*᯼y/pSގO-$x xOT?S e]dI FY+(>4nWDم Y'ڝVB*WeԦϿܬ9 Am%2 zZN:p?61$^t3u?ZNjd̏U[Mcͦ\0<Ul\DHĺGZ'dM6ip gp(%)"vXj]XM,hS-bS|ג8Gΐ9P@i(i6JE Wnx-TCwn"g00>DȨ&VFmvEFzllۉPBy?NTC9 (#&28J5XUlF^< ِY`AH0/_ k x,fZ6+RIR~u:J/1KI#[\<NFdS]z0Wa3UB`Tyůk~]?ܕD٩e ݩ,zFhVz?E/|랝PZ ekz#\—J#mL_࢛/PW^{]d|>V-"8^4Ң0JJǝs@vCq: T>f6"3PIF4e;٣OpznDV_a~+lj~wfsz*>锕@"Ze'jv8To&Q/ λ 9ǀٺ\;CA D1#w2m# Rpm~_}5Rt}m[!s7hێTDcM6g2-UZDgnZC#xifDʻ 5ܳ( l#>%c8]VY" o0Яq[w{FIBPD#zkhF-A"FibA@Uj9IBM^N ݔ&&4VkE`UK7;$vQ5 u pT\7 hf*k0ho /rWU!eu=HJgoKlm 8,Q𡷁BFh|_;╗nܥxy JۋQ!y b.N]TeE".;?i;azA+巭eu[.2 RzyyI"]:eBZʲzXS9o9ܝiYm8Ȋ=E=I18OnmT,[R0Q6[wa q 9A]=7!pi76:jC?.+17iNPCmjZxyF󥗑eHoa0LWsZ6 “~{5; 8'ٞpv'6 5kдW;=)b`ZҌ$K8a 7`#T!ݬUez:?pW@(mdK!D` j`v;Aol)J,}1b5[HSt4UƀE(ݨIT`h}`y@ U/  ГoabHǒVJqϠ"QMi WcЯYmSW҄r418+[@ V*&8-$ZF:Og%Aj$l翅iHu/`bRwdˋin nw 3iݦ&;P~?ǂss2yAt.^x=]|ۼABNu{Mmh f[Aj8{wN16k@D c[E-?gT@3E,DfgHyM&a$g䳲@2\*ƌ"iNhlڍgjg2ۘ5 <6O;feь`uW{dN~D|?v.U xHdsY߉޸".ӶLrp~yǀ37Tm+@_6ˏT ӳr8$0sGkr4[(G:,@:]z33DUNпf"<,Jv:j_ þ|P*k˖p??J,GT~g)wEҧ9>|KbA_w{V'9_a-׳\z|D5lr8lξun"픰YJLG; lJq& xM 7VW7Hy0d;X\pGJ)N 6aaG6 m\ ZJc56Wh#U5Wm RGYBR{*VFxMUj;AhCYR/}3)c۸@p [cD:6>4DQ|mn;xa+?q9<,v JwtMO%t%h1y_yЎ3Nw8WGӶ6&h` N['[po~-d NEQ䞥E%}MdW[Ֆ-cis~-:{] \ g~D]Ln5S8x812*l %*[hGˠZ:Ԩ6j#m@nMcFD6GGv7PPkfTyZ%v7a+#=(G U$^8"x:;' yk8(KcQ-)1v!`?U(Qv8xԱWm2Os:q(n*aҠyW^Fºs\2 ҃`ٌ|JAX2h .گx(LһOO%r*VEy qU/ҖU47D\n(T.}7IkMY˚NW }4N( 7j\lDmq2LsyR&j"ݥdCCh?(2Y'%\htc:##g.Rjn3){hBۼ;nBh\[V|v~_I1t,X_쳓 LSKd(86A')|H8)V]<.b(4x>Dp}^ p)u(HTR:B h(% 5CG-Owp'=(Z^nZDy~.uɴ  ߰2qŁJ^}1[dRJm2W]RjRc!NB=OEZTn,bu$PyF>ӲyH=p< j2춂(m<] A+^la3H&hXr{ |ˠ'ƮFrI=M6 ]QwRAq cqz:~U?nF˚stQE(4Tܔs%jc3aJS,f8,-V(bIwNW|r7Z2z DC|pck~4Lhh˳GP{[m8rH+?)oE>{͛6S48^+ù 5Ώ# Wi)XAEcK3G\75 4z^N"3C>cq4-i5d O^TքL(]!0rU8Q*s0K( ( \`/qz($RTttRK?toWL)WK sM}2 K?ʓ;]4n+%vN!SþnSBt׮CL|@~E`LG[e|]\ngh킄D&aQ0nTb+6.6ud UQ'Ȩ8koN x(/th3LQ7[.HHˮLZ.Y¡r'x/5-EV:1w0u+O F1aA$^~- ڳ'쀰:NŦq&u-BDR 9HC +nJWK@qb,E$H4~.Rc|&5QiU5h ^+- /?sO]UMML\u@7jwO U)ˈs]rtnJ )^r82DjWY4 rUM7k>oTտFud۔S;foLCq4'$_}:a}@Q a^/ߐ»)|CL-&Bp1,v\;YM1{nb+@d->_B{|dgxLCzүq>P36̗閝E/yloL6p qAS>o )F# bELAPA{[Cx4 |!1W,7iH3B$N"+Q dVw NZHfH/k4+SiÊ*yH9Oe255yW+<ƣ9TOQiSy:&)Vr#I"mrGcHRqrk_^qw%8e=)]bhٍet5z%2Gvȋ#[^i.3PlS_";, VGU͂Rb h7"IDtv l4?mm42/V9ֽ$ʙY 5HE?TYfyt+N)a?>Kk6o7?UB?dA,PŹ鸈 b'J9V\vA[ɫrE7m#Y+M^]Hx%x`s[jE'Sh#VyN"brf]#4Iq^4YuX29v/l.ҙyn!SEL'6{3r *Р/~Y *YLH#خkt WL*Eu߅bvQqԻrLǟ[)%"D3Aٽ%݀R,;-yvK?ǥbʜ^[BI-T#,<ƾuJ]0zw>B7eY;=)?7[N_3"̖ؑж>|X BA~O IW\_[& -GYTVnlwRn |C@@W$CӉ0EiPC53GtBqNm̄\ZlZ*ݳFNyFL˴g>x#9ZHR  ;Ms,>8M HKKAsa%) 2&4s^zȹtcՇ!٩Q޲PjsMC"`gd4^u&7*isS[үMн( ]3 J:jWKl;@:%pÉ ,Ģ7o"^sR'˸!Gg2xPjeNDjI]/VᤳlKA2~T,J-+"ԡ]8øu@1wE];JZʑ?R*,ջi̖l'Qs/V͝v|*pu_?+;|vUHRW4>M~6ҥnugO`y3R`!ߜx692"s6<Dd1^ JD\'^LHC痕z$0kܺnVǬe(ur ',6+"X@.ܪszE`Wh&A<7*kC9;0٦8!Bktg&~u e% I%<_AuyY%7=ej˵5$Sɜr~Eq륱A9e)/?ޅ$re@ǧ^ S#O?ДMv}Utb kqM)OYeħyg MnN{|Dx`G%t[ V2aM|B[ɋy4N / 3_!2`)doz3ך)x-v5y Cn-*8ƼH%94KzAjЩg^rl"W [eS M=_ npl+lp}5h-L>$kN)ҴbP1~3:?m _B3+<tfӧS8 H^EkK }EfKlf֣ѭnɹ p 8,QH\0%P!8%櫣MmR3$bKqIM Mk+Pxg{na.u|+uΥO׃t1J us:ӻ$=qg1,\mm GT [vRӕjwJ:0L\ڳUO-1B@1TU6I${ [JGOےFA "> 1`t;Jԇ4)FXffQ-#\~҇ C,+X%JL阦Ltz޸W+Ks:^bJ\ Aҧ$b-kP̜ȓ2x~͓R#p` g|%1@&#T^i(3ls)FAI v)~#C"B!XRb(>|/A>?%Qo{o-҈u2o,3ϹrQXdTczA޶1r+ncfw"]U?&YR?ǎx]OI3"8PTI,2 f&,ʍvtj n0`2]>gΦDz9i=<Ð [o6m@b\|.q,{~뒸ȱW`ƞ6-ޑE&v>~?#j&"n,lJ|lHQc['XŻSp-[3e[,7ď6<&*?3%OdDz*kppuB{[mďa%8|J\ķ2z˝}J`oZNM)_g8KW:a?:[T%\=9e:֐`>.ז=';fU琝v-E@ 's%殄SH͞@l#|RE8ax(C gwvcWz{1$KU p,:b2nRVLe_^t[hA{jVCcD69ƻc%Nf>@F2Ϊ c{Z)t}AJ#~s(xq!,O^D &0㚺~s~؋GbW| %GXJ9ࠨ5z)zifaiu  " OkrcR7sgK_ˇ0#1 /,ר$ Cԇz?M~`|CFvBBfĥq O^zCt!S+yf~Z$ 駕*R JFX-)@z'kZ.0|`zWO9KU/A$RII5ۢW#)$u'9$4=䬣A Dt-n.LTn1nI [&}1V&j;{E{g¯%/?%t1fFD9}Zfe4_3.^A$dmQx/4 *R u|p@ʐtWEݰ6%hw`1F"l?!^@]<9Lw} PP3yD(?WwΌHPs6%>7㏜!Ui6Swn|Gkg`k d{e_Rl/",+p񆰽řr](ʇbUy{'Kծk \xU6snT]W1 "[يr(ts,8{oXkg$o ]o]za]`/T^fON+ ]=!$ue #9>R 1O0St6q}9 _vm'>QhJ߬}|MG aw%}Wznq"u>b BuqY߲3knㅥEGa٩٥xa/J5m(EOkWGƀ l|wLL$ x)s:#wToc6e/'}9xD61.KPM vjB[}ꑤ?JD5/!_l K^%_S֚caM 0 >Dz-Ӯ B9DlQJX;!?O6d$5bx֞"yፘYȹ },nhΜÄ6T^}$p+ʴx-/`dEzA <7,4QaЮOMd·%w6^M\Zs$z!lږ" T-RMC >\+I8 8pr9k緙+ֺ,GXUu#-po0X+]\mHpN"q!1An%zg9M/TsQ;ۛzU3 ^QfM4|NzFu-y/w,4m<}! pnyL|͞ Gai⾒3ddy2TtL-8 T26n+ɁlzWMYȍRWl.r+\JR43Mi&/24FiAstxncpJZ~Lݷ]31¡ފ;s8ΘLjnFHCh1d%a_:in(+Nc#̐iH00'ۯP?+heI&໛ v2 $'f, wVZ㍗uY,QYѿEyoFgA|c,%ǡ}/z[e/؊њk^)!D٩ÿt[zglA/?-zSH)sneÜZVH#P5-߄̌5DrZϼߗxPH߫6 4ŒNKEvv$>-5+A잒T!ip3]udp ˫g~}  qOaVz+jareWDc矬^I9[j4OHp`deeuP~|N 7uDqO^v⨩HepfׁPPSX7EchҢ(hn7WizoI8C@%q'$o}v=4UO ӘGd8LڑY0Gqwu%!#ck,{O_ GƝ~G朔r5V #\Nޭ܀#`KM Z%S\:Iwg~}lL!rD[|kO9|ŔQUCXLLц%>#d8e2}p K`(J 4F?drS|g([LZZRGK&-\rM/a;EQ:Vpv-^Qނ(qhV)vG"DuzǚW8nE;舿= (8+M1po*[5G0j>8U=² !)Ӑ^wmijRG}pG^ڧkTjIm,3ٛ[ F4.&T^ס&u nB'S#f Yۿ!ۖ>K߂kO+1S{rm#NhK勢x<9Y!7uN&~T5~y@z -^qstff+Tfcۚ|)^#cenY8D"sU S ;Y"o1Y&}B稳w`5R[OȄ,hKʀ\e+BřBhwL4a\TC s)o7J:8ж,,z]_8c܈r)=XVzs4x+H!3~0DKzNaq=R&>?ƫyʦ:iЁ?FJAY㘍ff/7MIH L(,`KT ]B Uyp]jWT:" ` jh9O;V?zvH/"2aPD-WJ`Tmľ3G= BIFv7D C1F5V<*_LL53"\;\]^xI8a)1e;{*cuL Lhu/>-bRGI  PW])Ȉ]!1a4S,E7O=PE%IK z]Y. 9_`ε9x-aMi -UB,҇IXGAݹvޜ5T >w )F QLo?wMreF"DC?u@l 8Ӝ:&f+N2\(,!`g$}m][q}@ǭwDe:hB+!Ghw͒d˒8 Dt`|7*!SP%πL4*Ĝ<ȭ`;}FfS8Ce僝щ/y@-k@%oQTU骎pateKMh\xmm4*assʾ sA&/ g'F7Rih ͤ1~SU ب[΃?d>kݯK*k@6LuTF̻7Y$$M XKm'W~Mui?$6ą01^Xb -\*O8_6j E(гЮP 7$ d/ڴ3 "TqpcM}lSvi:v~4i@jj=:7;nF5y A62U@țjϯg4oTrzu5ނL&-,GgyZDdͯE /z~C/[%chX긓]1l'UkR_6p_xDȬLL~<-+Vh|C}1 kzpIv9?o*6Ñ-m Rhi7ST T-~ մsZTȝqJ^QLKb?Q7\'gxFhA, hyOu _pLWCp=6А1  OՈ} 笴]0YWv$I#Xbmx8-]m#~6Q=<ͥ mzt{Ȑ /s ha&.Άlrv{P=%![]田H- -y杚mm$ J6,(ӫD삆ɛ(qd+el HM#ꘗEn CTjLb9Qٝ>Ȯ˰\FNp6w:TfŶϵ8 >uDxoAI 5N׌3 ]kN/NjF~hIRL.0fĞ㤰̾~azR[Pa[ &Ko!+}eP*!Yg/FF8g]c}.:O^*忤M!*f)|OY;tc E w壿íL V'W7Z&C*!SS:%n$!-Rt #1fByU&~.)o<DIx,ҋ'vVWu& n2+m|m]fzvY IR5*ے*{}'(d݇*\v i8]R7UJH(n7:jd(]P \ N C>M2U iT&)Ɋk&QrP*UIoF;h5^m$/LyA؊DţR*Fhջؙ #W}]GcLPЊ4\fiJ,:`7*̦cK=>6h:/{֬˻Yw>3&,YӆB0o[Z1ᇉؖƯX $˄EHz(8gM*<ʄU%^}vep? ᶲqB-5΍ďQiJvRw_K_ۦkU\'}EXUjeDX_Xz>IRW/B>qd\L Sǫ|6x>amc! (h ay )"/֔GK'.w-y0>ix7cGm066$Fop$niUar:hjީAFsa:j>j] B^vLҡӧ~b7[kznQ.)`km:8\<-o%in+zc." lhm )-$6/Ura.B".H+ۼB#6X.կE3Cr<}$KcǛ]=}̈U[%ˀZQ𺙡 FQv <҇_4(\ݮ4 T\)`r7nڼK@}ـI.e]5¯Bϑtlj/ZI)5`O `닪&ij|1g8DboE3;(2oÿ'n`6RObNN̉! d_hO-}# )9kHn3z'vtCҧ Y QƮ[{_"1[-vm_ى D%M91?DVBƗ=yQOV%ij:Q4"NBOL# .SIgֳ{}nTY-rl'l ̧=i8`VŅΧ[婔QTxݮ1qud%q'-jBgCcAϲk$L UOgfQS`}t3܉(pjfU:Yl=o? uļf;d ^Ws賈q\2:B<=o_jhTWMj]-ndQ;f_sLՓ4e()P]άq  7iڣnM Ҝ4ɗz#vQkXƃ?WOMa2׹0?b*i涇$OR#Vèyava_8))8M-9~d})CWd|'#Zbx6IG_o32.Q >zI0!̘Dj8zDfc|WssFsmn(XO)e#~  Hy.keƇ?.d~FAu {9вܡ*(h'I.LyMyѬy$sc9~˸tÒsYxL< dܺ=6[k3NQr?De\ͨ.eYԥՓoDK|*wnGw|::,>d|x&c>7K<6 e+BZ>Bn(BоtOM|8E2AbgċVvlTy7?07ֳЫEᢿZN))F&K3 ˋ |X5%8KhHVEwto}Q(se;<`1Thgy.> | k7s/hTO=#4|VB@$S6Ǎx4V6()BJ͢;V#O@z/9HK9Hm7 rq3,M+Ìk$28_ ̩pEم21 J}y?{txVcbomY%} uMo+ecgVHax쩟] LP# z.s xY0\pvyDdžP#I2Jq[ l(H+*LthMU:iΐ<wn֜~EeJ +lS/FLg B!|XndaǏ42A,DcZ/Af}S(:gBzl33eup]-_旝`2MvhWl#DgC!b_qzVd<K=V؃fH _15@xtTp99Ad$̧-hU:`i`S(AyOtKr:xÏui7W1za>%`=WHN}SA@j> 4:{P%$Rn+͓l> 3]F"u=aٓ.^,q4l3BQB5WW-mkm\mo2?r -hz/Qucq<=ŌoG(k5%xB#ƴJ"S^zO4p#?2~Um̚ZwD]Mhfgم%/5f2Љm6;1c=|ov0v|*pcXδ?aL(m/'&36-LVrܙ{8ÑH!j4C$"]O&UH˶Oҝf{y"MOWh1$򿨱vL:bFj7pV<+f.2xzE0سӈieqN|_2M^;oŸ 1>` Ld>ȷ#G?nvb;a\6 Lzjsд았 76S@S=g<:W ,T}X@w@BuPaJeDkVŐё&=9:>TaaU"'q *Q\$D+cJ "4eሠ6U,:1Bp7w[_bH7q,|-SҔgCߍU`{ Bq.ciVlp,E 5tD(6('%CpHL@|0'&CKh>gzD*&"kݚ3^ G(n 7`鱗_WXE7fxCDדCYƠ>JiI^U*j:N Ah|2za@3,is@ce?q0Ej(]:l>2sWINgV|t'ghNr:d NdQ9g$7haVLDN*<}͐x=qV\..rfbL%A@тzn5>%`ӪuheNepЯ"¥FpѤG_P'XKs3 laRYG?R\e da ().#WpB1l^)b0j51XE$؏/J,a:@cj=ְ)+& !=Sڤ =l'7%l2f5·+B|'|g9C@=`i:ѧqmzOZ,QEL@ ,5mf1)+t:i5(DM(ZRhU=ؠemkcm>)@x6;찦1oշdvGmu݃㇏X1y اpi( ]nTz"Ub'iN9u(gIC5 $VaL# -; -@b)H52K6YO?G3/:v7 mTmV#3ُ-#j>A ô0a+-"/i cS]MxZ~o聾>/Y0?.v)UQi!!٬(^oSMO4RJVm,>AUrs#9]`@2_^bbSwrKA?T}1iƕ?L ʈW+)~3jFzGc.Hs;PS2OŸ;>y7H@?Ӏn~xgQUf F%xZ3!1U ؿ:` }Fu_cibuHQ6$ bC`݆uszZ M, e dB'PN p{qv\FeC ƕO-O 즊*hWQ_ͬGs s ?(eG=AҔp>@)s5aDxh /]I77%5~PX*dJyKV<;~ŧr`\j` :"6fd@oomIϸ6$%5K%3n%v(MRFĮ{Ix[@O4mF촽hMF`RPiR}SwoaoT݌Zف1~Fyel_XߘFÊb81y8:[]ot4O\Db`hWtbYxJh;\$zsz2 ʹZ~;iE?]Ft=]O:cTH^f7Q76d=N`mqz?30T;9\k'dz;UI#Cg0&SƱ~Bƪn_ܸr_ ёuGeVn4šSnxuc@qx wO 9 n{y5@"_T 3͞غ7 \\j[ -,>.&UTe#b-7hc u^9}̳Ljd[; biUZCڐ* E,yo a}CwW !5(E:3vr[\ɘ ܋j sdD~S:.(1+ 4x:-ЁA m&ץf*\An9[fVEjeWm +>^dcW"%S]Mp¼6vc \uKPhe5B6fn~uZ$ݵ/'soGAXb7; 5P@,Y"қ+<$b#zNfF8|H*DnSӝqSmVh ^{fO"ɟV+{b-׷Eը[Iʹ!xrNݣ"-R&r~P/|]{i}xEĎVn4;(!bSWshsF C2 & g` Kt,D ݨ32^d_!dCHT));CTu{X]e\hlwk26SZNiI겿Pj;x: 8-3:ٿ-cM3z|2'TB=Yɚ-wA}k 0L=>4{t̟[۲7`o a4"L<5+Q@qEѬA5sAX=HPA:uLL6.Ý*34ͦL~lJ(cX@F8mQMH;rp!6[^u9m|ǣW(CnL#T̙Q南@1bYV7ϴ *F[&)XE]K*]7ȶ쏘hR)y? b[ KG.:v~o";G4&-ݭ uIY2%AcSE V3^| (Srw5Cr:x@ _|76h;&KSora۹#8Ǵ&/ob:Ld>9Ʉaj$Eܼ~dÐ Xc Nm|fm@T)bԱ|O'j[}N]T6]͜( E^Y2P,#g^u_yK-mH҄e{MNok]5j# QWK5: ?cH2'Lv33g+PRXoC[(/'"@ ̽b~Z)JʴΚ%K3O]"0J`sxSu:!L۪dUy8i16{&9!H%Q{RW?"zhpId5 &U]axRWrԖN i`D,"do^ʎJ!+5 xo{w~O݅}N>M,LQ2D&Ao:{ojX4FCԺSӫٛhMf}vLMvsIDN#@/n|C7%`^s) U[]3D~ۚɗZAǞwW<"['TOIOO$l9a9;V2>M5 {Xp!cjS9ep%B(/N IX[ߥ4zLBb]s+e;ɨ#<-a]K2%c»>DD:83}3fg EްQx>?*\IT& ^B;t Eg PF(YE/()DbRGG%8oEAR)2Rgic֦AıPZeI$C8N4/ 4{ (܉Fחl+VfME z 4'''ꈙz:hKh}1j?Trւq)FWi>s¹ LzotRO,lJ3 ޘ(X@pڥ4tj՚ 38G[=6E{@AKMO}Ih;>8Bo/im&t»_w \ݟEH`c,%Dw[/+>x9? X!vd>Rm 1uӣDE\?m Uވ)NXt|qxV[ bXюT,1h+KyUρ6qPVyI}J +꣦ݩ_w/\T:l+`AɾxDoAtbu hO=!\mfOP wk::]uo})W;A{~W^Uhx;Hc=GãNAǠά9RA1xiCԷl#VMLk&bAgBw(${_ǭ(s!'+<7*Zׄv | Uv*$rx4Ym**ܩ FYO~RY=y T48#~kFru t䉅f(6Dub>I^3* s?!5c)a G ÅmVE p3oze8XW%(}]v&r\C}=ٷCQ>>fXLa`uԽ4Aɓԛhaxp&A!x#6#Q)GxW"O_ B<_˭}m,Rk/ߘ IetTk}Ukψ._u)WHۢ6VYgM7|]lt$( nq$bxP( ^ H SEUJ GeTZ, }y+i;ʗ rgӉsSѬDIWj$& W|GVxV"cDhT=̃tս_M$ K%o{se* ?>p24K^P̚>.<$ lzsijN6gיwo͇HTZet:< )1BJKmbx' FZi/ [Ze## W Ҵ$Q]3 N̅e$Q%Tkj#5P`IY.}ԌPq5Agx'.ğ@gloN5Q<[ +ڍN<8+/b TX O~έmݼ+r :KRk_;@HAbrrH4fۘOIVog=^{lIļJvaW;Nsߦman-k)mD>uM d⹢l5R%i|Pbs ߺkLqFG>4$ ]vGܐ=oTZWgfx֩+-/T6*A=Z)b 0[ɂ*d*c@4{$ &ș6R\47[{)u؆?d7tsDY̒%&C6תC6$N Å,\N*}}^䕩z Ea6՟o.in[M~^"UVSکݘ2њQ uތHIh!"+ {=9BǒFд>D=,h!kwj^*CC bpbbʼs!3UkiۦXeqM%o1÷U?}JivU,;>Dӵ 9kqionZBzu?q7<GDuSѥs/V*vE7}q1}qb~pՕA7kyKJGR>xaʸ*ߑF,\qRX 1NG'3OwF'k3θJD#Rs-R)bVxD5> O-_n.8!{eIf*B5 ,i@G@%nAVI0HFjpB#v,sKxڑl)lӊЈP"]er(@'蝿yHw31b:(p5_n+N8'Hԛ=bӾګT!eiaSq٠oQP+KN{l]Gm֘  cm^ԥHeh䃀yr*dVf/ Ӎ.@uxbE[RU1`\}{A"_R(ׇq*^n[Ɍ=8{,!ϓ܁9HAEe(#s,@E=Om"o_U=w[%%B*ԯCw{b E93<: l䇤0A NjfvV(0@Ɣ4K,{: ' :Ԟ3.اSu<<X+9>"8s؍-^"?]K3,OI/N+j2!:Ү:4'PXș'=pkq[!QnK}J]ׂvUnuQY q\Sr Ç 9 zUuYY}އTw?Uև>\; ԙуPP39DH1,H\+a*=I>nV0T|CY>Uf o^^)G=0ĽCx4ց7Q;?(wk:ҩK[^YC!7wՉg`:N N_& .0وH yʺ}tc`\o]8'Ҝ , 9^R(hj\\+I p{?!_E_1d֠DV(nŹYKyX"ᅯ@S{DBIl#V7}v^?Mq2hmW0CË; ZrVYgg%]- =0P/VsO޳Dwj|kyI`GR2>G=. o.ѝ s|=ׂs&\v,Gm_#UP%9L%t_ܠZCPFCʋ0`9,ٺmzDI Wo _$E ʎ-Xww16TaJ spQ7>|VIpDž ӌбo{B~x[};-VLI;4 %5øA[W3o§İ ­ R@Ve4%}݆(za拼9?[$]"1ܛ$0~θƏ>Clp 16Fa=둞H-j#֘1/QL}kVGH =8&Q'h@Vw2GllsA]^*gn_ur_xARx]rƚ\ܨ]G=j&nō͈U#!rhu2"n'`P0c6ė M.1bdp&U~J_,gd17t:J]s!N[B\wv^ Q\a][z2) i*aِZЇG+ }ݮ&p=1!(s"BD# =DwcA y(k₃iQWM<5=cU2WYH}`.yB돕A9[,`$zg!) }-(LX&A67^ 9ԭ>ͥ0rfZA;bNBKH~Rϒ^#Dx//ma|ύb9UJ)$4{xygA\Y ĵbhA7P8nٮ\|D6is'È XĢC« k FvLk*th^L5D0WϔABց-$E)K`lL>||S"ЇQ, Qq,fL̔z>L;T3V@(&jKu9]@7DM$##'9±R24C)֩k:_lhE*Xހ=LnD U2O"tň*(Q?Vw;ޘԶ.Qe1^LCݎė1ԔWoQl<),xfZI ;/[azPc fTkI'߀z9*VPVD**tzwZ4!U x(2:ez[Ց B}; w.ѵ ۚE}$4KCQ9v뷳< ک$_HN&5?0M[JoJ> zzS_cM &,Tx )s+|z"'nA%j&@?U?Sb)O6Yxh ㆁ,VY X~ )6TB[K=Cd*Y/ɭ1tTSv-YK2vu ˝Xm$c*E(/jM>pDJؚyctIyz&cy(U)J; LA`c+\^ÉI>"n}}9?ѮH@ UM/MX!7_7&=aj\Xuݴk;&Dvm)rDi^N%WmiCR2.xZ_ސVڥ%fdIifD?ZKfuLpƇ4#s!ULZ* 4])^ڀ+|<3A w ,ưSA[3gRB_ ud3M6 #yǁL=ғ‰dF^ma: Ti0vQtqq֖:mZg+R6,{tZu C"؂VǓP/ iX؏;6=M&6ǝ}z.cF A8遰$3/o^NJb9 " dm=&RoH4 PY}p38p\v,CXчRN8kbuu`[t"53 XƦzS L/c0 ,V|\V[ jࠡnD O2hsBx+D+gX7wyR5 _ڙGGӔ }"5g `c\ :a a'4MH+n|Z? eP;xqd TSۓ!v+rG:qwD Ԕ^ہvrkޝ!b9,k}QfK0P8'hh3zo== r>˰L ?ڙ 8"k❗@"L$;R!b6@F@&>5ܚw4ƳYG 7ÕeVs3mdaq͝"wxlVerx(^ޚGz0VҸ;S7`v fOV]\Z݆P(EȄB4w^;:l_wi$ҳlli 6ӱ3U8!KeWghv=rr܇liHϊXIc7ֳ0}ǖ@yHm' Zk#!P# r2 LroJt-ս*l;8qaրGB@rH"T*-GDXDQsФm) ./ħ?˧ċ0sQ8L1;Oҋw TY~}`PS I*܆Qڕy=R$[.cSt09T1³ϐW 0g3^ا SK pU*ib/hi+Kx)* ^71G-KM(A4z%"AXY:'(}d岄6.e520P<̢>测0]q?sn%W .SWܹ$69EM(:1d9Z`u8MˌE>Wz ʔ Ѱq[^l>`=# XK#FPiUVSCkH"kD3s*Y Bu+qJxCqpxe^':P*[=sS`N@C3.oY#ϥnX:'O;iG',9Q!s~x'+YIJOHA| ԂCr)id& ~ %:IR"lwq9N>1e /"%\Jr>NϬ>(o{;j(USml_o!inWz]/ GmX"'zZd61{y L}2!r5;-x-f0heډ+k^`kN_QÙNw'ꛙ>]`+8##ú4ӀT7JQˆUW'7q#l,BbfHB|<[nY?`VbxGe([Ҩp*f&e -i;*4)yX7xy3Yd}6FMr13K*XݾJ $s>ܼ+A3iT 8J]]ɍ qE*Ar(g<٬ץM9g" _M6@DWʟYCI$uP|KaO:K nk$JeTϦ]7=$gSKRzvCpv_t6 :)o߶_=Nn[("}ak*^*Y.2hR47RPĉX2v <71sW~x/'v,_ dDv|)7k1VQ5DZ}Y KV3K չhmm>4pܵK$RI赏IؙtEZq5 c]2%06X:FBd;~"[o`ڷ̮MRBb3*c2ZHzcmiN?Ei*{F<w} Tb̎'N])!^\v2Yp#S$ji͘QZktSK4Ze\>ۍFb%B7ZBG1z7C,L2!)}Ns^^n ՚WVa?xoz-k̿E8=fppb{GKM;eG0|RrQ-jk:I#b'zNێ$BJ+,.^: @yXtL `Oii]R?h Q@e,pyOY<+T{tm%TG @.~ &*OL\bDbPc>f 6z@JT®Ld9QX -zIߋF'ܾ/'naB6̟NسѼ"If`7bn.0:{@,,uYM 1hW_#-*J\ A/݇]}^T^.7}klT+Ktķ6O mޜzd;F29v9}.?S3z15AqD1K7%;-k~E VvD9;[_BF?znAdĴcSL&wkǔt~-,RO%ԘAq ?:"$cA"(l8৸>$l7:Gwڿ맟 3¾n̏ OLav#O۪`G՗"0#Yn/No{VV]c9yxےPq< jp+O`R8\kdBsuM.ef3U`NuY('P:}wC/Яə4:Z=p*"mșw]=jS˲ [QM߾pʸ/{E[#:̾c E˹8M#la8%8zk2d<\H{ϛew0pX prȣ)jY`Eb=L~iᡨxkVlޱǝE窴"~!^ο{~}`i+aM嚘G:`J@hGJrVMo ,I͎VE# Q Y U}?+xY* آ2W**7ؔ{~ #|>ͿQWp, >CJܵk)ƍR-יܧHu2]R+^cH頦lL\.ӭvRgn%@|ۗWuV 61k@?'0ѷۻvP)e`LG̠'>1h@ŦB,/jFWR"K\]q7KY3lE k4 4S`tTQWL2Jjm۠\ rsH&(:^1[*tO9>\BG:ΧT+&O# ) Ҹ"Sb^ȧAE IiW^={|,2n-8ݥpRnj.װG4K`TDA$3>i6;Uy(%8ַ@dR?q^a| ώqzYWܥCÉTK9Jfv~MRVW1?-r1hۭNͅUJ^:`)$t YCwŁ;KF3X[I;a틛&/Nu[q0 ,DΎy?;CNIj U#A Vbpf8}r߮+(v :jp{ F ]SnX#ǚ۱Dp/;3pir$%un-~VC@ve1f&x5RA5]t}ؒ=? R<Qv=MB\c_%/~&Lfl/.YR*g$w*"xK#ehs0B." eQ7-1+9aBri!}8BjȔi+0h^3~ }#foJ- |T23Fs>T҆ $/jro4%Zz>${΂ "?#qmS{ ؙZȳpȟ90cEGKGX\ﰷͲH=;?LHb̯`W~DgkyHJV룷h<玓7~n0aOs'Ku{k@ꪃl~8J5px_uHm.JNTnThc1`ƥ { $[Ld˕ϭn̜±\1XN-Q;wq|VUJe%fmپܔ8ҙ #.9cfOJ1AIN ;#6QH{uJY>^%DhW@y Gר*;'I:-okЏ':JϬ46 \X/0t#ƣ:$*h(m}eI/2M0f!wfTlBӹR0HzU /W PFYPdیdޣOjA1h1L9~$Rp+9@`Gn Y_8>Ukp: lFW𹂽6AQq$ [$1J|0w-r9l1 Qh ꮴƒ7S~L9N?G&njBevBm =#۔ȗFyRp7u-/Ł6Y\\|nPs>}}ZgȔFךf}Gv9eBs z{0ς Krho/cĸ J0DLn'o*lpNRiӪ"w мBj[qO %ޭ5 08>dkR{!)a9%&cO H4pL{mC#ݾˮLf径Aib ".jߧ.c/r 90()#nd=3 A|GZ^r{ޥ>_C/6?>A6pP{x[W@)e~<8bk?8>ɡDK+ c  `.Kg78{r/2jYHt!nSpɒO* 9pQ&7X-C:L_T^{ o۱я5<޹!h:lIiSeЬ`=?ʘu>j (2sdp;k-+ N} hwZ1pqe7F "Z>A'# a`ynئdif/.fQ@bFynk#R oW`-Ѿ|Kg9=/AZRەe11i㤧ʿRaB(I\5aʍ^ֲQ[\'#=U2wg:^{vB x7@Pj'kʪ=i~M[8>GoClBmމD^FY <-K3YtjJTZUR{TkaoˬK32MBN>97VFtX(1Νxx9LqTcB?QQlG- MoH2U8DqӤy<*xٴ @Klx V  %$~DLj`ñw< #4˶5;f,Fb\Z6'ŵ0mMur̮>:A{C.;;Zgʠd-"}۬s,Z .V@e)Q_שV r-3&҉ID1q#YBgNӀLL-X(7Vj]ǣTbٖ> If)H+-T6W`5}͋8 !bG,$=;)IfDv"j\ELcY՝ !^".rm/\{-M˴^!wQyt_FsM To26Dg7"ߎ?O$}ZA !Ї5>$0p8Jhb׿Wy:_ K-Nj HFCmϸA!<ĭ{Ta8]F=q[1892&n+*YQ㘒V׊#AE2ɁԄЌia(!zK (/D7F/D6Kўeτ6e|#a.i4!ZCFl:F} 09Y*(Ugs-A"e ֹ[;B.P:-8SHfȐP26 -$GX1/Fy]d9S˼5xcZIy&lz51t$~t(;[MoF%ĹFZe&$c L/ ^j#ϯihۛ!͆r>F^ACe`˒(I`bt 7~^gOVMPfE{~VXKFJɛwԮq(W=#}*g>#-&!8Y@dkWpzZc[dqؠh(4V6)#fq@nYUlFPxAږ*B,k"]/[erA 3u6#t#FBczZ(_r2HnKeād ::]<=gj 9E֝S%z;lDHi+g U--B xFf̥7~^c;КJ% C0Ojݗ5@ʡi>>khs?8\Zl*̶֫S eHun~zPlb?:Eb£~>Hg#ـ%쫫G$]1PS+561%XIC,Q }>DŽ&N p*X)`Ql?_-(b}O)Q}QP&SCH+g ,OƜI뫻`.rPs(-} ͦ\Vw4 =hRh𣺜h ұSxs[P0gf ~5B[қ}>%׹p%O p A/DՎngnzC R\ =]P %"FM2:Ţ,3=8'*7t"!! Cg$ ݪ]{z ;%o7 $Wq(rY0G ̙oh>_U"]!tJ!׌k9x嫸WyWδbv?_If$##/ C B!ɎcPp癍u-}e镯ӅUU"z"#X`ԼXc9`]=y-`Com_`2,u.3qߏͺl³#6ߘcdZ/5q$`Tpqw n9$<~p&+k{ʫP.F}y\kHuFX}616ʐqKCP6'wPnݪ6l!jk`JC~S<%F˃E/$1xqNj dW4JywYb(Vae;RKЦd5"hHg)'EY†e ΄]Xl0ӟU,iҿUV2T՟LkEF?u\nAsJ^Eo/X{5[pMHn !M?RFpZ_չqtgkfuǤլ!b;E;)@`B8'D\BiVNKt;̰z| sj%7auẌa_)::COi$A- B~:p[I3DV?15Xʟ}ػ(CݜZ:: ˗巫^dF(plz1p JW FaY}W|Fn5VwVb` j}JMqZeKWW0[C( E">FS-K)*J5S Wl} FAZf벇q\cyc[}_>tIyý!'_ѫr3[4}XVa\O*8e`΃Jn.P* 3UP8ٿx jd1N{-Nm~-FA+őrQ^Pu-g5%N6>I=6xݵ kgzt#I8)HGIy(mpؾԯ'Z#:YTkt[=gK?bhr㗩YNRx@C Mj b6kuGRB6R|-dTj H3"8ؤ'W.O=_vXB]m6O(FRKD\GFԃ QI*I*) c71˳%_\ <;>O+|,~/"Ӿ-A℟ $u':};p37/=&ƓҋX*aUVo;w!/@F.BK?9om(uMESS&G)@w_ߖe擉:&†kԧ-Xzhְv)r ځ5e.!LzH3*hcY4=O_ G-2sqL 柼7w˸[F+5\q,ʹ`1?`XxduN#!&nvHmjQ(n+KbAWHR;NUjٸ ~0:ps~t1VN|it 0R d\>zkBOf p}WqåW Z(]$9ږ]7z9DITQ)ލ=>JC*AF7Dw=dXeF?Z AZ ^"}ZUQǓ~{WxHKz e )Xgv 7#]meD.U+P%ۋ2Ȍ>qisNcǿPؽ ~Hb 2̝zlٔ v߿/8y /0rC1[ ^Fpp? Yܠ8au̹c9Xק]T-vJ64p9-Ts ɇ Qz Y̽fF25Kbϑ܁pؿ0a7 pݷ}&yr&< W&u@lsPq)=< M)i.fW0;|  "Zߩ~kV*ߘ캊̳C0[[yIdR 2߹%"MYtit;>iਔ9GSMi" p:)6?5Ncn;QV6=k8u^v{Y&11NMp^OdtRr(Gn^XgA.l: o$+J-gVAlu Cͥ5ZEY*bk>vM'r\/l_#nu '*1X'ȵeM.7R6x5y IHr Vwu9Aٓa27YC iTN3#mg cX13gi/>ci_,_HzR`IJ̨6`wvr_AV;yhTvu hkU7dxiƐ^8H-Q:&tLYa2lځG#(+fзfBU&xhstn_>Fc̒\f-tRUEE25 ;W~ dcz[4;S>#d{RCc%WM.RiJ/.K8PtO`բG_AŷIOmm'#QϞ[)̤v.TU,JKqjn$5{,:/>wf/Fi[ E&ey )q". B)MTvEꄝf!i4ncGQx$F~/M[V J &9W;WϷ-I-C!bQ~Oy/i3!!и>:C5TSMiMƼ5>gYx1\OVf6g|'gRV"d`';д࿔(A3(g(A6NVB,zYhrhN&UB&SbH( oh~dLj:;yy 䳎4_E ea363pp^wXR 9y+(=,UX }ͧEvv:ĢT]GU'm7dg/5={,#UZC:>|,t܍! #j!!–oae{M@"[jn Q"F. s2@b3Ainm82p4H2 @\bf[crmpsvtdpm7q^YS/O ͅTjZ7Ϗ8sIAPfK_i ,nDhJ\@#D!ءu0 DH&tQCa:čng_̤Τ'ɓ[#WE4V5Օ,<)OZ$: sj-&1e*s#h%S 0mb6) ,8"p~ e<@'RH%O3ҸaΪgT ݊ sTe•lxv}] 1q{7Vc-r_09٬o*n|츸S3*/+Q/҇ӻrml !H;Y|Y:_~x7o%IAg򭲸l3z %k%jnx [F$U 13^`42q F0C|Te R"S/ 3xv] BZ*?o(Du %3;?Y>q뵫Ǭa1{;)2o%EgE@v291e X\s*owi\?a-IhxIHa~/CR&T+iVOpu?\0aB`a7^l+8mE!Y2>XeR~5ŭ׆:VUcR ?>s2gui(.Lxv)g[ӓOQJ1IdAH-P)~RvR/^Dggx-SCtʒqBT=^C@5mʚUnY_.FZ+ k)gFM1J9PmN]*@<s=6ѵZ϶wN;tޔڣ̛ -nŮVHv s5 r%[ۋqFFW5zdmTR~Jt)!B@vZXk\'x#-FGݢ~XzHtUEcU f۩9^j݃ 5BbUK 0n"^C,%A2DӜ"8L@ll@AqA&71נC۽ZaARBaQxB-nHBYk@;K3$lg:~ I]aS>d:wߟ]bIeR9#fsQ\hb֝I\<+( qԥr9Oj%.Son9_  .|ƫK͉(**2X=RStQwP7*JN;QD}Ǐ[`lOzR9J `iE_FxZ0o|OuzqF")/ /KfwgF7uQC1,b0<hV&U b7surٻh- \:$3p]9Q,H@䶠G^~ʕ}=+*ȳÈA{7j> 9sFšחH<*58%9?w Ê5 Մ{MOVQ֗i ZI4ηsTE pxˮ:GwFira2%<-)j\>R6#+K=K9QX'$kF:٣a+jQ[kO]Bs}%B=f˦0/\̦ZksF%m+K9^S|<-; DV 9'3x=<:Cp6)CZ-h+BJ8ޙ ȪHjɽوUn1L 3hmO#0^Ib#9nm E,IdKɟcJMɆi5ԒZa@dҠ_zJeled^ᵚmˬ`@!lx:ilN7+/|q)4,l e٣9M0OhBH[lM+VV(vb-b>ɢP&fr!yoKb0^J]k0nQk授R5>3e1wze}m:6}3U+^pX`ęe `cd#bBSͥ.V8)EHG  "uqiGSAe(adk{Rݤ-|1˜TX%xDo3yj-YkhYlL%ٝA/ >ɟ;nrP\o.yn#CRH"gne(Ÿz?"KA9thǤkM!}Cv$v-9VKp|UElNoEC$rVVa&+8U K7},U:*-x'ސ9aii*oԧwx&`HR]٧1_H0w?Fm2)<*ِO~$V0u$Ӫf4衫hA`Ujӳe88J8ExݛoK}I=Y2Z42YlJ?$39_+ ?+Z: !fSڸ]1Gvh?T N{Nr {eϘcGV%wd_d!/lKqr;͊̾QCRH"^Xnǽ3uuiC&`#vO/C=Okp!|!28˘(U+[NʮNS̒o잒qvPJZgnPS`?MWAWUmn ^3'h%ik@U\͛@ %qbPG;D + 1̓ˬJKEQ}H,O+$E1LAmw( +LcE%cK3$ (~Ώr ?¡,OT`axkDZ" kr0kDvu8`ocZZ]i+뾦۝%*׵+U3E~<90$WGIjN $cezW `&,K )$Np.y38O.X=8Edlk.O8rj,*}8VkԦo!E2O>u?N`Oq4w whaժ.b[ I 2qQۣh,OpeO P; 5QnsnWz5*2)uw&g2mi>+)rbb|%G "u媷ٔfV1ӀHÂӥc]lAy^lǛ{[mvbK{nH@Y @<ѩ |t,`YQ5\;5ĵ>a+p~ dB-ӷy`]71$SYZP݋MbyyFx]`/[|u$M}. $ G3(@Mt@0-| EPd2J r8L۞;,ѢoAU;Zm+:;PX I;v1E'LNg+"w>< v4І榼ET&`dʦ]Q4]{XE_>V!}cv>+PrH&4~F_>_Lpb惶G9%3n#w(Z0p&^o@QݴYzͯ5\VCR\/:Ay{pw )Aڪhp0_G9j 9a\{Z(H:e-;ߞ|_ĕ #ǦScT&"$f8||G"P0ՀjݖTi  ,0Ɇө ܓ9|\p(T@HUxZYq`H;7Ucr |%tQv^ dK񩹰+Lm"!}xL^Qԙ_'6E^3Gy{1l.ͻk{=Wf4AN$APKXXb fe81>Q2>ƷO;Ph֨`n7M&ʢd;YŃ%7Qt Uw!-f. ̋DVAt2K6ӀNБե67i7,FmC: /iRp6B!6]{ՔzꙜfј-< o&oh2H9 ĥoQT- TQ%xNG F% 3}mom u]O,m 3KFj _;S;ڮ^b0M^Eh>t_1 Vp.n;f΍UȷWn Mӂv]:Dag51ZBޞ 6X;XȽިxjFΔw/g>. &78¨VHcVuiXiE5%6ƨogiZB##{`M2=rpO,樣HN"͸7iگ Eadco &BUV2}r(K oV=t't7= 9PVCLs0n'6l0t]YseT|qIL(ؚǙƟorm[7 A-QD:onw$3AG[q%S[2oN5Ԃ VrKlbzU|7ziw w?/3S:i.G(;^|TV}_E?sR*ۚ49j6t 1v.ѯ$ݓjQO{v'eUy+1{E8 *H/Iov_AL-3Ya?/(vi8?e5wW]iBU@{y;R吐 >$L=;hXfǼ9˛V))ß΁ȳgi(u]輸y+9 JG>P>WjN՝va,] ÖW9t:BH \龧'(!n4BtO^Yz(J b CHߊu?T 3yȝ?opy+@gkqkjmRɁ\~ gV,Wk(UV X kX"ܩ1 iLorvko1ܺd'Oƅ#3/EbFEǓ}E\~?O&OÕu|}M"a L=5j֏69~zHdzd5o2<<;`fZ`TgɄƲQN鰾yAе???(Xr3\̿o>BG~7=>3kKuu!{'4I X~<%%^=zK^E.Nf33Äk_cj[#׮MZ j7$]=G nL7(6;V=#]x@:jpz (u P}+wLjxc9$O8d/yvkevΫVJyj$`(ncp nL INѭh2eܜŶi2h%0@8u]l'dQqHւfW Lgh(WT~2[&{=݈HЏƇgv-YV߼H^73,&-e5YH_?-\G b?2~"NP/![0Uz'{Ž׮\Y &_U-%Ga2J\IOnWjW^wyp31ˁtž9~+Gy5&i*`ԉ- t0+Uwk <9ĨEJK̕0X%+x"Ms.st 76N>aS]h{ T0^Fq!}$aW\y[[:pqxF?pZ|F)0l]05rY{ T΁h(b3,nN@\"P)rvxyy )PH {l"U?pӨzL|%X!dAʸ7.ù4bLFv[ib:kv P|O~ vu4MBNG{0zCt?Zfe]HjbR" :w(~F|r>V(h;~ 3>}BY4 eHzꂲ 1|,;u+ I3eV*[IɒjQS\K=+WObuSG7,!GV֎]\f{Vg[3;ߐ S9I㽽ZAǮ3"@$Y*] b)F_%z1}IC]N`2о1MQQśBa mX*Ԝs4'waZ/,z3JvI/3#Xf9m x e:r2+A]o}禀dk=Z~ɄJS.~]H$ty>/i o*R3a^X# ZʑrպHQ\D+(\a~I OTU䨒ݘ =BiA){*OGCWm8l}欦_ gW/3?YjF;v%'AGoT$QꣶrF_O{i' y©;}sgn|f$m߾ !^|>RLjaW_v)Dg urjT*߆R-i3VKs|?63:@zڗ/I?9r4pV:zaK4ii Ug8u-PVOyL%kCC +NAj 4:XXIxH%tqSVEW>hNbXGʆ4 ;o }@rhhgf1o ա}Ϳws9?„KO$2: QtW5DXNCNtLeyGc[6DGF 9xn~ʹ#S9u,I7ny)2\vqn?X|yXBa,@±T6k!p-mHz9qSQ#^yNY)}hU6jMU"1 fFʓXUSd iP]XK7_G1ս]zpֲWO{UvBݥi4R\wHkLtRwW^4pHf@'^r۞%VN|DG&To8rQŨ>E ɫTXC\)`Y;Jմ17Csc&M xYj S#|^Qpי["Abuf *^N ɠ%,\@_u0!Z>)Kb2p@apst'{ڊ˩_n~*UElc9O퇠24hW(p7+I[`âOp`3^Bl>ʪ+ɮ}0lQTVC[AZi5Z\$͊_. Cۊ3Ǣ[{yቢ&+Kk>IY:&*,İf{|?>:<̕LvHS0(ZVdٝB,9\)۶@ґ<0N_A%]HLپwpGQ?q ! T( w]g㎾F˟8|o]mй= w^X3Ks7 𡔶BOoAɃze](۰f)(פ "bfCjGyiU'1]\ vL[vF 7.QI[lu>ˆH̶ރ:4~bФ02#uЮι@aCi :]>zlݸkȳOfRIq 9u`ْڡ ɤ7?u5S< pGJ%w8 wb; ,RqftPn PJ8~G9{+oJWi E4@EUTm#)1RaA.$OI1nx]RgOjPgY4P "zyɌ _'_'0b/[#p+wLhmg0,fW!,R_S,a(b'qs3:28˙fpZ*i%g:*, h;x”+V])9{|JԻSr.5GxC>X®fnO|iIy<,y !T1B%;g1g)dEĭ,[sɣKш q*) =ouOq2יP<Z^~%KBrQu<s^S;eK.aoGgHLwB~W}1@H9aRUlca_JnPUdNd`w`4Se~S~`(ʴՅz5_(,IG햝աa&b`={0MVbcYL@~«!<ݭ¿!UR(Y0AIr-rܠk'M6Ň% :JPp$V.:3$_$Z3-SEހJ&yc)YI:6PL}z0^d׻4 Rc%zMEjg3Qire"+ZҮjʿ ~OwfDj41ܗ0>`B0:yP]k zlE`Op 4[2 vx}#1W< ^1 F_A)^Ӳ"|{hΩ&Д,w4:shb&UYu/Ú?[Hr95h9\S̖"U10qP^Pkl)xC'9Yc̊Oe2A WTg A$-T3 B`<ӿRѰwFȡmҌF%0x ̝V>>7[vmL>02]2Mi*Z<@ )#T9I{u5LOSR.:v #hi!ߗ׎Rѯ}m7O8\Wfl=e>x +)!j܌間,KDSA.Z6Jpu_o)x5 vtU2;7Fx+!^6L( 98|͚&9tARB?5zmo;,"A>H}dvj_0-@r{ln5!d9KpSܿmgqv@z:t$hw&9ֲn.lN/RlL+kZ3*6F*B CjB'̕>H a7xoow9ɃC22:-b-}s 4uI~zoVTz4wf.tҫWX @ϥ_u4?sՆ[X+VNSI[YVfjaFsV=y>TNFr(5$wԛga(Ap%ѵr\Dɷ='O|`T%~&UD^&cjigB*Z`Dzny6u5{"yE%T I> 4AlmHO?29ƊA!~Dx)'%d*Է}n;I#5wM+k_E2('i(?M@.0-osIJ*$nӍ^^Vds48 t{50bXjp젿q.wK\I" (yCBX =r s8\ )DB}̬ [C!ѵtޫ^PޏJ+B]DH s#5OQ[p4ה$.Ri(?_N\dZ1ϫ#.) t~y-' x,D}nř@yⷘ=5ٸDna| ]F.oG1n(.l)ð^]3EzP? 2̫W@Ž)T2QYqq557@ba S'GmKOzJ'؁20W a hw>Z5A}eҪYJW!)yNLvSp #f.M_;X4KE쏽ZBQοԊ;t^,5Nq7{k$ߙ!l5_EAB$,YN|jPFT.S ݇eEp=hBAR59hhwFʢca Q]"GM$nBXYؿteT`y4za"0w)K{ yp,BNtao*U[Qw{f p] m_w.>2 *jsKŧm& (ݢ{3f\<ۮp b0OK,ڨ[Ph`OLUY,@^:$)v\7 s(Kfk'UKY6H%S2 ZW:xݚ,oit6QÔS .5rre؄V8~5l"7F%xUPFX ͂Yj#P| 򑔭K}ߗ{kT>ʟ+$1*4ݔgKC \ͼh(9(B;_뛔ۖ3+j6S!5+׀߸#yX߈8=u8}߅*nپʙ՗l>a ٢nH[F6CNզ;z_`ƥ-Tɼ u5^[Y_0=څ>!l}qE;atmj7Ju\b7z _|gR"`-3GOE*dtfgS#9 δS~2Bt =OZa\l}eaᘊ_'$',N`! }3>38P: {MII bsvu; G6bۓ_ع2M7Q˖tJlﺁd߃yV |tFZ1 @ Ou,~ktk" ?/ƬޯGV  /< ΣY`]xqY4SWN_>YK3Ux5Y%Q绹#% 7JUQi+شȶё/Jjz_RA&"Ux ˵,k>e$Ci>8sH,]yh_&SERg$٭ktlKC^7W#D7jo!u*\Wv8x"le֔gVy4b(ێxDXQN+p7m)?y$0<@q@bn4Y?YjĪ9H#J!/g, b&Ah_]GyaׂO֕`:a0;Α!JP djkz=W%쓉.vg`d4/ ؛GqӉ]bzZK!P d*CW:|"*>3g,)lhxHFRU%9` -ٰ\C!䶄\z]bo mmF_5 1wБ^z ?YEwaw](3N؞ Crse 4|5h0\RfeAN62@t0_ s&E=J6 vp+e DUK"ʅ i=3 # C 6YS B!pH)"Zi|{GlD@_%S/QNHC گP&x'D-PL ,%iv@ʍփ%(QIg0=2SDVlY긆ыZE}X& |? R3Sd~+d۵ͥhcd\Wۛۡz%`z\c}c{aP10mh#(jރnX)W̺ U mWq2zvSuN~d"e?@scxK@l_w2Lkc5u_)r_4BNl7dbRŜM˅B^!6W;7mjcEdC۬{ 8udE2Uqt7EPڜ 8z}<3,iA}Noh^Q[3nR m.\vj c$kS2Q"0Gez+8uupO$$nj(_Ъ}Ɏ(zn)s;*pN&G` |S'X ڶjO3<_{'~NP7\ȺTdh< Fe{箜kCU6`.'PTpS0}@D[3NL-eQ˗tő~Tdn1fpSAiHYk?QqIMz.5=E|k,>r2^vrI%|SM!lahbDMcX%h*X7AmBZqNt#fHj郎.t70V'uYsd_3?R sz45znl]GNj7lL<ReSXᬘq>}$S (JW1KS&SDdAH-Y=ⱬ"NƉzHQ$ Jl_ܗKtn9"%{g jʫ+N)%`.䎄ޞD;T,]eJQ b(:>-VW f% /s(A9o3=*c<8j-aȯQ=OƮC\I/ MǷ67WAf쯵5%I _\\$2k3H)̔,gJN.MHlDzomp/\ !YjV۸ZxyN˹tT~׭S21;@s;qIM\ +D~Ҏ:[@qݮO`pKt^3 \(8tYQɈs?[6t"Z 4GrU4VN#RJ2&YdO37$M!SvLѹ-8J~H81z-fOEgq+SQEv•v#}f:ň9`~+sASs\SNGR]kVۺ6<.犗¤!-` $eBw&UÅ|35.ȞY7u\"{6fAbLRy#eF`<hz2FCGv6#35I칔ZA<.^p;^~FXV)S5hZRgkD-MW=' P:sRqP*ЖU2j4SOZ;OEüGE*lTzz~:T^!y#{h ̕p..T`\릋un44p2wN{eƓ.5iA'0*yd[}"r+/O~pDctCmz]>sV;O)@GYH^i$KFВ $%z|0I-Į0BӍLLnyxc0{s5;?>9<_gBpV0lg`%Ʈ}9ơek!=@..pIS\Jfv ?:O=ݑ"#^$>chfC;ASJu"o>U tBA?%\0=nL B2L7.|e-]&By$JK,7Pkbe . u=ǨSdv]l)Fl]5M u_5Xk:.mvnzX2}6f}pok;AX4$bK/Y+;OزѩooY\bM 4H!_;lCY\5"[ oi(1ڨ􀻊&ӯPOʽ>ʲkdƬ #PO$M_GiBj;(sYO-q_:1G wzº.[2 Na3o\Ng)A?|U&h0lv,/ȹjΏ٢6dpKIN5Ն[*Tg2wZt5.R"r`|O?F~.8uuVHFHK@A^?ğtp̴* Waj"5 UmYCw <=MF'WL39~V<3&셧( B$HrB^y}Vjp`W @%tdP |Q`nCs pjf,5>nZ7% {l~K<6i{5KW}!_:BJj>+&k'ZSr%?DMivA]g~( *k'oX g|>^SĜ,@IsE!zCdYZYxynGCcTۨR "5Fo:-";>gޘUċCN Z4F@dA* jIcM?i] }z x.8O50ԛdŐ '^ywy}QXv5=?ID ~<뷇RT>JO9SMQ J~`3ͤC"ȭ  m30i7,`/zp; F_ * ݍDtm*^%O)t{Lh/yȖ$^LU=s"~ qv9XѾfP(YztL꺔ܔ*qcB\(,=S% =v\SHW0qYwULq"n*OژFY1mS|2'䜼hJCN eoFIc-"%[-Ȗ~ O0 ;= 4M\m3lkƽU*؀"E'3 Zԭ崶ԃkqn2 H|l"HX< s.(o\q𞤄<~$C@C!3;+A3+h)*O!wwli 'P%4tfǡZ,J]l sb(t ^tJ NW^@¸{id.yNq^޳wm+O hi2``l@\~3[ET=K1"q H#An|ӅA³ 025CGG Bu󽘡i'CsVf$2OWξȨR[^ V9m`^ݏ@JPFP}=ΩoUGbq7?b^i4t.[ٮ2Y7m:z-'ݝIy`&-εrL1W_LG8v*n3;K\_ס0`p]hNTM$=wh)/V*o٣0L>%y{Fպ`s=X:@%1VD՞JtJyw?(#pI %?rd%xFe )*}3K1Iӽx+ emtK_(lBۯDbɑlTy)1 ׿BMb:|Ds˽1m$DU $>uAկ\uID pdIT(beqLx^ |#S"+R>q8xd6~m? }6ČvI|)Qͭ Dwzo?!A&Vm$w|sx?& zg{.8\lݱEvNI-VoKJRU$[Ra?jO9ٍ{?wOQ/~5?R`.|z$"+s~-Owe9̲"´ь*l4A$br 1J$(K !o.&&eIjiO='0͊|ֶм1 h[%ٶ+ :'^`NTidh0Y\Zun ]KCwY f$yVؼqTf8W,Ӗ Y%Z@֬g6i9VZLl}ek5"s W#_c{^{*F'}yJ^ۥFyULTZ4NI;dc6|o〻krm㚛Ykk(_;ZѤGbQ H'"~Ƅf.sjVr_j\mxN@3'}N=٠oo}5Y/ {ɱC2keMOVI Gxm:y*|630ţx{Y܅t”OV4J09PtK[^3aܛ%x'{Dͪ@OW@jj'ĵKB-tHf}y\wYY. T7=&j~ T7Q%9YB-/$0~gw6"efÏ\L\.1̟d!0\AFj|n "~<6+P`SĉtfmUȝ78%ty2%s1pYB4R7$ֳiw;ħKq,ձiF~!pb~tA|C:5Y[m楙)Vk~_$SX{UB)bAAE%B`L fE sH3(X,qǨxc :qK\S٬ yE@iRo.A'=BT>6XUqY("MlIIe*|\p"y899U07cNٶ_z@[&uxz^Þޏ qҢ KxXay9yL pi>= Ȗo2oVʢR^49᪄_v*i0o<98*lٱ]0)9qjp˶$!^u?J7fΌI03cFq@+pęWhR]y)HWO-?(xm)z ^j9lizSv!|zWf[X݊hNk,ۉ|oNb89_ "ZS# f=PeVEo`#bx!𹓾H * '9~ul"!\g2UzqhҒ^`sBButcQ#!߫6PRqWQ+[mt|EnPsKAi^k(F¿@#%[ [PF m" 0Haca]1Jub8T:uJ!V ݩ1@_g.@tNnPI]-hRXuj⥥a Q1캤Rk,Uu߁bfVxd;Hɘ4"{9_ c;z=-e{gݱEys-mpv~x I9RԂ{O'uwM|b l! QsOG6 XK(SNO-RZgSęm!^o}}=Elq$c\0q1cit ^H˒ޔOnB^Y$`5AOz SW>ܓhzE9t$}aH5ѮpR9 D(5Ol.W`?(}C͸]ۅp 7&쯛o!Yn|| @j}>^RHK~tIM;2-eoY/igektdZ8WǑgĒL tMppЙ?"182Hg3j#UGi$qV{}JEAe%8!Xr%C"Dw6q;cFOqod/ ur4@>9SuO@+ǂ鞥_: l)MC*7z],y\\<} 6WtW 2Ϭ]ް nEV2dp `g\îJQfe&q2^JHyGq{Ez*N,Qw.:M}LSaxF(]^^iZr\r6;7j"r@6`Tl~X縷p ENG :Wo- Plkc]XuO)ZA BnEZ;1y!z=U3~F^,{ɏ7Hȹ#hD7"^d{RS! a=Y7;I`x y 2m?HX)xGtK>wͳ}O]6h2㊯-Hw⏷^D^q$+L^ߦ(e^6u?vkg灷 D]%,hfB6Cr[,πQQ>n<[w).aLـ̯T=545yuYFg|sVA>Ĉ@[P2Q2cA0>A[K)63͋rFG<*;lmk &1,='D}~itdȾxdC=]̆'G 83lxoFۏM}04L۲߂ wIc+S8tFR&HzD%$;>EaB70Y!IXFA >?5&sq}g~Vdiӑqi $dO Ngvk&ȗ>> >Eǃy NV,:{񶵻 hXQ1DM:$8x&j(.I̎uQtS@8^F_?;1@ӉjJ+[=@0:nyN: &vATt54e(M lt|nG)A+Ւ!E9UY,pRAf"30/Lfۻ|ScĮB6VTgc`2͛D<n 1jS8Ѐ ʸF#ZЏjw?C~dQ8ʣ3*'h]11Vus1⵵[VChV@v)F "QHco/dzam7 nd0L:G05lA )!J8( '|{A!hq-M^1\H>4x4 i?iFt!eSgy:ß2aq=y?D{C`Z.CWig-KD~L0Ma2$8Exo}rBiS5E20=c:%k~kvr^fAmPOX֌w 5¸mw=ΐ AJ PM'.71,*MPoeqYYdg Yc*N !,ϢpJKska eЦ8X8$uU뽠9Jh31%2tо3zҋ{ɋb)7|LzF2䕶a{e Xpz>jCZH蓯S,%V [Ŝ_8n9 ROzNfV٩Q >g}^F8 OeMx白MgBV'v*l (O/T(ia_sߡesF ƀQ>(uP12=+@j#A!# O]SYYh2"iU2Cš}SSQ?85_+W]ɿveP"dHp ;GyP2\"KB҆q*u-ښt&_/ " p T[ow篱tsJQLQ F&;n -tQw85q|A?RRY)32֢EيUKi^ _='[fH}v˙)l,|^'Dƣ~\C&N, ޕ0%S>>10BPGdyE`^AA9AE/~,w8+]wqF9-]o6i4H&_!É 5gTaܭ!*OY`3Ov.'Znubk߇;%=L4ɖtN@}1Fr> D ztx3IgqrXOٌUXՆ{'‰䯨Qw6/aÇ ćE]zEmCc;RM΍W˅k&1l^v)7Ukl= g&ȧT)Rm5 ;b\cN3ЕqQ9ɺ9,SFzѭ`o]&ot6ʳ/ }R`Ni3Ǎ1?fY=۩A&з,zE`"{YV-(,ye0_Ct{ ;{h>a$`.ₖl|Ɛ_Y"O0e,{M!2Q"  1dHVN)k'Geye0C@\ն0CCӖÇjgAt mBvL/\SĚ#wˎ.k.µ2kԂJn8xRcSnNnӰàl 3JmY&!͞T# qX 3mG{TLI 88rn9>L.?bwVx% FBU DE"͛0]Y|qG_CgI׈<Yv0h.AE:׵؂rb<ä7QѶȩ 9\BMUl2$~ѥJU'ޚ8zo1h33T0&XGzYo sD\ͯC (]yFgcwEj]+ssVZH_5$*By@apP<)$,E=GR-8%Ŝdif!z2c5M Y;c)R襪h7Cw#;_+ģ#ij) 6v"oܾڃN*m~$({ppcMcJ5/ e{¸9Ya%>^҅ /18xE QO3Ltc>#^!vhu 5(D1麅\RFZǬ{8sAtp8vwޓ Cl0I5Q@Tn_H spm1fuRv;vINw_z:8!|gaswm~HsA!ox ;98?5FSSt=ݸj7^[esͯF.:fh-Cp#˝C H4ӈLh10OLA)\7w>g7Jz. nulIR1_ z>Ut*|<.D9oHm:eόd)ŽXVv}ܬHcԲ;>@ Iܬ) 8W&4moWE ,]Wӈ(qUBm/Z'uoh"g{ޒ3\ᓠ4L]5>AL3ԑvJ;˗Ū˹<Ō_*UIaD.UFCmw6- I߬!|A.:xYAw Fh\K_wU><eѵ!Gkis R֩%F%hI3 mǣ3DeMpg6MDHF))e>kI;4IɳVP5E/Z  $Ly9A im# x#"4JDd$kt|)ޙ!:trf(\$|Q5pnog 2,yCKru8`ܿj@E %D[%:)̺|u ݸ!X]VیO2+K DD~.$^b$5h)*)&yC|T5B|By}ʾw.0koݾ(vAJ2a)>pՕ|9R߉ˉO➧65c\j$sv~~?LXh vUx;Vx@$>f ;gKѐ+tIˠd&@RNȉ"3@E^cy OECd89lYƺCZ71G\S7BCiS*Nf(ndfT M7jI>ebڱX3><,{]9K+ Eʎ ֣FЈApo5. ǤN̐T9M\-y31:>ř? g%U`8(5(]ZS@gpX+CT9-j %_R+,42ɠ<1Qfyk='SmMOA%ee20J*r@Ϣ;yT:5,=sgcr2/0}zf {9tPaXiaHIRu/!QfMUgqvr8.2@~B쩝-`,X= K51hĽbeuKXTW{jhM 7oXt:zhO2RuMM4ίLE[S$q@(W0>򂄠ڌ'=C wyط63AH'.F%@RPHTm oxDY_>|RFTD|𬨓WIQ`2 KQEwjD1ɾ*;}mou0HX O2N֫{TEl 3dV/ˈlj9uAw7mN'UTTKg'(LTI/$CTXUn~RWX.53['"zU3L3@JJ-/ c4%2u%׵Գ#,0*K~Iʌ3Odg&>ezwp}_CvDttܐʫ20Ԑu]O oE -A[ϡDF*x!RKULAHppE]\tqOD/ӪuVqN$wȓhΈʪ D ?.j\銼l!`i&oڦX*ևZlWe$,i>ZLv ?zv .)OR14^6'moqR>>UBi0 Y{# >&8$:AKű9f#)Dv,k8 u(8{`frK6bvy >g|K}#*O^{z(YxVs`]=@z{:k Mt {Ɖq,qG5 HBb/Nvo)?$|[xc9Rt@jR~^9n}ڧO1_3Lm~M#o"՗ u}9ì sbEMJĮDw_P?ӷ5}CK/3"^O#fF)z1;㛠qͱ.qw)֖8o\4Li.pEO 2ZݯR"Oa&jP[Cb'gE PqLUaQw•>`XK:qf6Ѡ +} aPA#fT/8ctuSxpS=M?e$Ϋ7'R)~ a:]==}Q'A'`t Bul;R `z(\5yE!=POU85=6C Ƃ[uciF6n9"yC*gQV:$[{LE@JMIi*͹n$G1ZW M]a8X F^8zx~ϩ"qpp ݗD;ҿ}H]0Uo9wEfk6 n?`ҵEeʠ=(; !U Ծ~hb:}d-bu&oģ@ WKZݖ沫\lNL-9Y1ؚO_Cj{vTRWȅ,Quڬ/sٱ/t4Zybi礽| :atEfLut]v(&8 Z8p5Nlm:mQ[4LבmdsoL{GU*@GZPr WI3ΧQ(){~G_LR=oE+*ѹ]8_3&Q=izEŶKbȶti6ũ%ʸ?}[ aT?E_d_0$p{>z8H4lGnWJŢQQ7 FbM?cva2Z';n)W3!qى|r=n$cqM)胐#h*M}^ Gi;Yn qs@b$jjS=(/ S!@js?NHڦof7q 99MY;_M {l|D_isAc^(fP_B屮/]X%* S07,#pP-ӆ4PԠm/ `'WuymʹMoM|׏=3 xW%mitӊYTfh1/妾*'qwP&1rHC'|1;y< v/)f$ xt/y?0X nkZ%E݂iw=ro2P94.bd51-vqA@i978t %]H6sP;3@xWe7{-KwRSe Hd_&N.$ jyt |mFgmիUlxtG\_n!o'كj&(ouםG[A(Ȃ=eL?EŖ5oD:i6Ea[K= r`PRzW/}H"tq>oP2Mafbk؜#FtJmՏ($ T!bnw7[[eˢLk!$kLlT5c|1  hD|b;0VRCCƼO 4jE0~GԪ /Yfv17Ԉ8\+u8.ކVjp!wʰ'nn53p\1(foeU\VID'ƞ>[CW!tb48'/Ǝ8ح;hv[9bR[)~|]l|iݴYj'9K-G@ʪh3ėڮ'kH7;Uu&l!Huc`V"<UJ-37 Oiy >mӀQ\ħkbUE"숏:$[5m &iq v9<dRQ@E' `>g!"P!F 0uM֍q 9k$ǜJ0rj(@yއe9#B q v(O4/l=Q[ b}L9TxGIh$@"!{2DxU*&U̞y6+a@QMfI">\<λir5C{4ULX( KJ3Yk ,Nk.hԘ*DZ%u)$Yx)P+?5J Gp$&Đ6s>T"eeZ^,zt6jv#T" G @MDGڃ T! va|(7v 0ԩfAYzS"cwYI߯aLtq]a jlŪ~'Da9;`I)rL<ג >I6=S]P ~۝5tԛ!Zo-.\>k#]) ~w]gj/5m->0 Wpbe|$hڞ}Um饊vMRpϰ/6<k&yN[G] /ez%wqk-j@z8<6F5)8^xg}R:_NKrP ,}q ꋿÍ5&ta9;\C\K{0;s;SI:{:ӆӱ|8ҎQoz".D*aZLH)hm?@ug{r|b%/&m2b2k 1 dUbVTNq&,]u,+YÉY~̬eOeT#H,$Pc3io }s4;" h"b=:sGʬp|z/B`vUhɏvgiaF Z0XN?pNŷ"||^ 6{WowB+v46T+GPWM7fԴ3g#m~FبT} ͗oM LgJn \]v$aLd {Z,h>8݋OJVR|?)Kn ]V`kD1hg0CS#:`YHwDAN0-3dF^+]@lah^g(ݚ!zB~%= AbR߸J몑 (4W8&\"f D <-&?97㗓ǬU_Zh4LA( 1.Xọwu Bx*:bX(~:]~lXG+T*A̜TBؽ0.L_<(`uC􌍤@_Nwj2sT")naŞmq՝x)6T3lO,3~rnJ։C XH+hr4|^k/Hg܈]qJFw.OpNzy5Va_k]d(M|_Ī4(ި+2=28: yl]Ыa'ڋj`^^t0 qpN+9B47Mpa cN5MA;:nMNjS}*0ü >MB+*HS4_/YD/ vmоJ@iНG{S]x2y]%), ɻޥ}pJǵg`xlWe ɩ'35ʝ"X6Թӧ2zC]8>Ĕ,܄눣H)8q!;C?fB"f eF0;cAB>~-#{}3rFym`'s3iQ~9!8d ώ R+m I@N'z7/.a(G(kf`)֯dxVLVu a-?-Dzk.B-G8S FÒT?PeP:'Uu=ʲO:kbntr]_OHaċJ9X.@k]9MڻtvC!4JBFݤ57`i#m{Eg",@5>ц1O8@1yRHף(i6pAʛXyxHut Pe(ց o^bgŇSż {.{#.[fΓvY21|HYdl*|G[b4Qi_' tјmS wb8gJۧfq]nU"Ze#D5?|Rq_͋돛e4tkò QJςLWa3=g{_gRJ/<ˋkh&?yi"h5blN`lb8Y q{X-thTb59,[ -kM$a&y-- 2ۇSB,&o34-Yfzk~4>11^-R0F*03C҄Z{4kX0F%ផIbxbz #W8]Mp0VW6JER^.Lya://1J:'o?c,(6dɷ2=q$쭵b:a?Y`>7 >)P΋38//a3|׏'^dW;αS.ɑ d?aib st4K6W&dgiiu6&DD{je bjN- & 'b_|oi/72X1\ςq +`/ODdu yJÂOajcXNϰ2װ;k!pUH|˧sq^Z"/S] ~KA/z"9g^J5. mwr ;jń23HۿBe l=< n(6tEe&:͢a'ݮDW}}qȡz|c]#be`v.;a@??GOO G1iO kĝs"b-u Tmo&{ll! fV>d UjnxO`n\5̦OWp[U2'lB]VJaOWbnMtfӥ8tdsLrCFFrQM`b[[ \ xSD].8|!ռp1FٻzuTjoh]H`]H N̚egzPb[V۽@}_H'sWbe4xl ,IhBCiUNو.0O#&2,}C}Mp9tϹ߼'p TWithjIoxGٟ7)māĈs}پ[/nz%H8DB_^]g[ɭ #;*ZnnqY^« <"I A(i/Z8b1'siT5k[NhLUg٘f] [(F@2.:UC s-H=8OvSx4o.uv3dRgfLDCw,3<][_FpƏ΋4FT뭁s@޻^Zv%ݷxn,s$s(YO{@Yԇ{`kn@!zSC]7s[\C?IV~^Rnp m5}և4Ϸp GWx<$~DyDdN1L ώix4SڢٽlI {$&n5 xb/Tj[Cyy*+ ͙T+&jͳk[>e3ހ*1ڠi0&BQ57" k`1`)ȔSzd]_ŠЪ3rip28 9LLcz(>#>L0НMޔ;Rb3jtM J|;$L}!y|LGI`F$T!CDd?̦|qc90o~$}X=nhhؿuT3X|_bbw<1;u2+!'i>GDxr^sGQma{:GU$wl5}![Pe$J a=)r ap9S':le\eQˌ fl0刅Ӻ\[0 k$ԲQg'iCtӝ dk8&o= Cnd } rm"<8ԙe G-43p ls"5UY,>P`Je~kh V_IDBp//?|p @ ,V?LHu>H=*P_%lJ̈P2ǬP |ᢋ<0[1E~Dݪܑ]Kck_jLcMSze&*S5Xݿ# ~i;4P ~1u6Aq_9a' Y(e]÷ͳNgE?q'YiYJ޲9<9otp/kfױcOĝ@!P#lBgrGR>bh{N~Ԍ%ti̅$30"أ]A0L]|\YJ(h̋p \ "Dv}xmtgj0gTfeyJw+z :{L /{n4Ut;CEa(oT)Whϐ[z>YS`a<ӳ96PԩUvdlצL,U(٢V 0W8\@29ý fs:U[ݟP4*e>,M>'e?h%tȩ]Q35"7iREm =g ѿ2?^5Y0sVR PPs7ufO!N֣_;]d($<~}hӀ21TlJ+2+{nD*=<ז15v}cZD|\%6ma!8,4CEO':wGOkX c?wRq3p vw\m  ˢFb&;<Ђp=mz4pqaŕNc@E;UI'6EX |x tݛPoN)ZPƀ^M$9tDLef f0>"GyH<>[$ݚqW$ ~tfLʉ:U((ޓGӷs\eNۣw Y,`凱iKZDBnVDBbt2RUC( ׷ ;ak4kJ|M7@pTRZ\ksϨD:7eTɦSDy$@@]<q6@,K 䴧c3 ,vνw]FHZoic\|]Eucʮ[4fI-AvMk)un]o|kl!'|-L,d yJ >-R4ss$P?( !##vYmu ALn7bf?=~}@N̎VmLl^> ?g%J4'T3l^GHH &{ 8$ɡY%$B"Ce!eSSك.6"jw\-+Oht&Qf, 1@f@~r8MBX// PtuፚUdT;~3')* 5l+OvѪ44[+ԡxec:JUEt񒁥㞞 令?6N6M݇lQe5_J8a;-ׇS#^]B qBCY|,xtukPkDD[.٢%t>q!]FQ#kli$ [Oajlzot nu$tqP* dav10 }ߢ!%Ϥ;֯~Pw/Q[zd{)w'go(颯J_ˇX3-Za7H?H0[+eC gMg]U]1]?#*ÒiyG(a~s2H>MU|VY/(4 PAAZOGH7cX4 ?a@}xG{0GCT0Y,4Myg M cg-顕{gTצ!z(12eQ3y6 $~&wC< [9Q2|?b,|idVIVD˿1*ݨ@efZ'٣u$ԈXx_L6^elEy$#RdJ^mWd;|(p%Zݟfi@A芹8048mu¤,e-[D54%}'CT6(&Ɂ>ϞtNmz0HR]U B&{r\xYW Yzb5~ C% t^ ]ISbXKism0í[UW6v!or )?<"b|d(ӏu'E6'6bxSyJR]^Gtw(@xy3iGs2>*a~3\1i%ƉQ]8:fS;H!HnNgx'gbʛ#T>Sr,^_ZT/#Q.¹v$ZuNHR qK:!TRz[mp֖:^+ m9YeU8iJ ~+ EM!( sXyڥyKڄ_)!׀NkӾ{^00^q4>8`.Ɣ@ 6ӁY'}*7r1,`nh;$F9uHD@obTÈ_Z?n(l*W;nP18/EhFL]53]nJ#, O[mC!%.^}gZHiQR1^÷,2]q8EDnK#pUJNYhMj krAӍq,:[-U.],[7c$Ф ᇴLInJg;,]O>>ċt6rkMOfr/^W.kVH=sx4֘OQacScAh\ZPvf\Ir`zqy]TCl D3Z% tbF SiBbcQ+9:g<[QLk*M%Y,{m龂r±F:Z@(G^iXPeGg1i(͌Q!C;xgPk($i#n+{)>]bTw3j ^-DZ^|%KL@X\)9X)WA(xtιA7I3|i1Y?0uB[gCU4$GJG>țZ?|֥N|yK4Iiɠ˔*E+. ouNF8B&}mz@Z"-1ϻ L@X?3I4i-&NxxH},i_;lIh,-# kF>YeNS%klA"2#`gT/Y%{hqX{P(If}{5l AǦ:[*譠\e;yTVcցs`ANXۇnYhnB:lf^?ЬRg 陻\jFmefPN0C͔K1; C\b/?<[m|[eEo 4ʢH gˢ;+^K5flL? Ffhjxɾu򳢩ϕBk{n h 1tV% [#noƣ hӳ(++ #F߃>"(F31,($1޺&|OqKֹQNK `{?l$(/JA2mыh$U:1"Q7uiN>*'CGKi5ˬ_Y`Gpw ӯ'F䇇(:Zv>8Ϋу-^!L.Ea2 ~.*lp6$T7𲺖#6RcM׼S5,H>E.30B:U DUPPE+-\z3A]U}G>Χmʐ3!24M"l-5>ӧشCMvA.&_jH,rbϒSr"DQnPqQ )mT-@J@,k2\kxz8QװzƵ<:)vuVy?{3 5L;Uᇰz@}Hr#^Z֛B,Ƚ+/n﵏9 i.ߺ PS(ɰ\n~.;K?3KuIB.3J'\33dp'k!pVzzPgTje|ݖ&Fc0+WTߌ֕Hd"=-θt3B1KG>8Ik%ߵwRM#.+lzǩܴ~PfJ^]/KMJz<1!lZ/ ^x,hPGʞ' 56I);;[5C Ş-Uԕ\@rF2/Ċ=ZVϿl#.߻Y7WJrbw@eV:UOIx[n\w?P5%ÍD`y9UtʻފDO\OCrc}]/tϋ;6[a)m?S׳o[x[ي`vuM( 7GI7[Ne;'u`|:SP$ʛ3i(Z.#zYyʆ(%DɹH\`";Cxg뽽!vJ_ 9n,ukGyר$~r` MWVK/ָ_Ԁo8V"c.NbTŹlxL=OMEPߢVsއeE4~S ƇOLDomxBaD /͡db+"}ނ&7@в7Er/GݞE7Ke׫sD$WY~=vWr) 5ӑ6rܦ}u7?GV.vO.h<ݚ )25I)F0e ,jo(83G05gxYʢ-2- <wѥi3"h3>]d^yzC|ŢOqJhBy yqqEDz&*W49Pƾ9uo`H7my65nE@OPa>ލ$xj8;d5|Yh9-\7Dvq"Y܌GM},DOy(xLy]Ajk!;ć"eSU@VxjVMhkN$TcPdLTxt xFz!Ҏ٫ae_UG$rfO t^yDuN ]anc'e"Y,d)SZ#L!ວCfVsԖ' r@r˨K?E@{t>Te&D#Q 1J V ,)Odr 6.4є}{̿HhuWhgwPA7JvormaOHD: M a{:$h+[BiږJ?";WUz E-`mi{pڅ$/..Qt{5D=F|x(Vhbjy"崆pJ w"7bރAv}J4ټцR)ܪ XUF ɎbhF\-8&%%p6>u0tļZ_Bä'O:aPgi t R++:0^zU䝽VR Tw}L`=!qC# w.ת(سmI <=~Dn#CAY=CRP^= +jBYwT%lטz (˒V)\[_fvLSEqޤ{1As 03a <Y! USSK@e7&sn۴+T)&1ǶZ"ֆ8PIGԇzP*\72QO`v_Ck|OlCϾLк*\X<@6 oPqCLٰ9kw!f,l|: ̯x (|kiܪO}G詚7o8ކ;W)e@ =CVkwg {("kOEtjH/QBA1}hXHf>g蹯h nsgP`L~i7XcHKޟ6&zxLT~1c~*b/K1)@$Q1sa5h q}'D𦎈奍| 5݆2W>KtDST'TH ՆuN TW<4!n*hcbZ5>T6sWsY#.C͐y :ᄺU&;N*DLDbF&)[ L*pom{ON酀yvO'ޒ}gLLzfh ̗LKT""Ff2&+㆗_Z2@UY0[j=,4IZcгd?鵦sSr^NY17!#ek#g$~0Gx7z m )[RSPEK(#>hBZ 䉏E*ɯEglWF(b[sxO"C2ߤQUkóV&r(=0t"cBYڑHpe_% .blx\.&bٮNf5MNJ$N'!"jAt(3{gy9CI%_W:QQ$(EJ_ny ΒN3c:8=Oڡ+4rP0oS&}}8Uj[%A&]BBXlшa$喆n4Sp{uKqb}[ \kP]_ 917vj8H.AxsŪ <8 # \KD4%$z~Z~SR1({(?n0Q3v-Ut/s)̢无d5w֜KgB+nLgMvf͢*c/r߉j{^at=Y-P#[8юI4Brx)r0LH| A"(F_KNydrAWܝHK}Ual6H!?jR?{^}IA<@wDĄ>ڥ <),,<c};䅕 #TEAeu5qFja$O/G.X%%] r84c'.!_Qwg^)7"g /"yuK0$٢?[S y =8qvBMԻ0@ O7p1W,vi/&/aπ27![ˌҨ"XSsQȪD~\?6"r( 0fႎW2SlpJڢ!IA#6] 0':>3)eèrC9N]cـ{E T0PGw͋G$:Q]^#g;0`yܴRJD@A?vT[h˧dO =~3㊦ X=y5Y riQIP5}ZJY9ǥ}qWL ?3{{~;0hi3&8rpPQUCCgyq_adCa<+A#trɤ7fcOˈ-FFq~ gn :w":B˨]M"@3XJwpGKSz;yTF܀dXel'.hJG2i:4bޝrP6`@?@|jCϳa_%;hX =5b7TM7]7Bbd\Xvod'jCLY#iUJU[i\yE-,!yBkL'&/*Ae[׃KN cSѢ2H#owlOrCI(I/Q:3!rKlʧs:*=6Brഊ?{ b˸m*T^pB:i; ̐ζjeǸ螆 jbxBze_ kgEKS+v ~_CޗD YĬF6)ZS{G u|H!-E8bD,c€,DG";9mEh"+]N\5JŻr*C`"}+*nwCORe;dL=E$q4$gOm b,,rC)ke,%s!Jo C" H{49C-5B.5Om.v~XFz3]AT$; ,ͼ|Cq @ET?n", 5(|+L&|B=KQ%_H Z- JdS8Rm7:qa 7X359W'A_,( -GDL㌑nҘDp;ҤǸ\ g$y6_r:&Bm>=LwykލS}27{!U2 %9Q֒Oox &q+T_Z5aLcGRA{ .-xygd<?. 0R;`ݮ;3C&v_mQVa|]7U[d圜و[e8;9y@)hX`7z0OTP,}zL?̾Xsf}iAR}8Jo }wlT^^rW/䇽d vXgf0*\PZ ?_!tb%f9b*ϹwJzE!_l^vBҀGkC~[8v +zBXA`C]32%uQ/Jeu_>&\Ma'TypEi1 UFz_i2Sq-a, [e '>jBy} [֛ &KP g3{2q#ie.ziJ$0'!+}q ֪2)zvI*TWYE}#yvEk4y ƾP"ِS*Xa,'R ).e}p>ʛ'B6"hfuQr?(dKsp&rREjk׾ -J@b:mr )%3|"Cb NXc*;"(t$794&>D'q)`dS΅j$56M>,J!$񔀹5fxŮA2>\I0C?R&nM\Abb? RdfS}YtS2H9k7 ̳-ZW os^M \$K)Du?}i:>^6#_][^6q۰l3$gRAI $[Ҧ"˜n]Cܾ+ )P&wk%Yƍɋ)h^#!t1=lH+jӬWG=掗!2/%荼LS0{@Vv07Fz 9lʵ [v킆NkxaؤNg I8oꄃx` 8Al2 2( wL}Ӥ9jTهM k #-?hR穁):-G{?˅\\YPFzDw`Bgfgͯ nB'x~#,dýqzgeP|NqgE|0V+ kEڰgl8b) jjӏa~Aƫ3KM\)Z6ې<=nt$q{J/R2:rWE?6g[`fď=vD"$W=gDpL!5b7vtTwae;p4c&=8;8Ĉ);O4DozҶQe@aQpKsvX_ߛ#;xBZq!e y],8sAY[1<Åv4KMN󷸔 1NxDW)J7P+{dPygKlIJI@2 YO08mS "K] %HPiC-EF-irKBW8 5d@v6l+XJ#4#uG{jUN(~ӕ* y$u4&T{B;tJx018hRo PÂ]q<=N:N}1Ԫ;6# *e1ߥafʜ]3=B\ E[w< 6xď8A, Bcj.Z֭ f``j>AC"=GH~@YR: 4F5v ɻӌh?e9stBBaY7ΘW73-#VV59Z),Cۙ%6%٦>JkʳԑV׈/"GZtnro+88uChDe}M `o@ q[[ ?8+BU#Hڜ^1֜ƌA`漏C~F~t`~^)" ì.0Ox,&{̫=N)% W也ӅV[u^e`p7m<+s(QŬ΃ʊ %Bn值O)Σ䒿&ԫ:q!VrSfAbyq}ʼhZKmڻP !'+~<$ĸ xVWO K9eIq}>ҷPibʓBV~IT|]4 65 6UAa㻺k01z%Ú%U2՗gD9{Vj4oI囜W1yj0yX>F.;m8_ݽYNN*7W(Vd+m/Yˍ,QS&Vo>sMd-@fc,_o)G?Y3]<z/~}D+$ފ>!UqxvEr4HkE?Q{W1{_"H+2gxokie'&{6,bqAځͼ?o8uD/z>-p:xY„O`n‘UҚ;P@@RD3r~ceS yySk.P jOmkJ&^mw7x)صOu/1.GO. H`,8}yiN1&PPBPUxӥafa:N_e嬩x&h50'-G㷻*hߏ $7Z?d . ׅ[*9;Q߬Q$)i>ӼI,gH|Y1*SϾ3ҐHe!JdJ8mJ8D_J3I@o̔\BkbmҀz\̭5ݵ`yv1Mt$nln[-W@@}(C?STTaﵓ<ϓQ&0t(tNZ]6A$p t0u[fJ,dz) q]`j Nݵb'))k߿XlL#02k  bL'[b]gVg@Z|H3@vCZBAD;V*I~`dui3 kAm3}0̱{c2Uu|;944Pc ݣ2WY3R x)?_p@_(iaj 5FثE=rȅZ5?{kiܚ;+;9i% ?6 m| Є^By_FZOh]aocA' 4΄1{!Nluާ4 AEZ! #5J/^rYI+p]| t!4)9\eY[7p?oO߾kS^#;Zgs(5fzm"kz]c~E{ڇ"]_ԒejlpzsvLf>ڮkBުPR?./CդWLj|NF"yj~EO!\wl te|[|ЅxrsIn LGP1@ҹ2bH %Ӵh}6H7WK"-tuVq)\!&"SEo%#TRw6C0׿KLP.ũg;8- v%n啤9T㏞jYԐk">Eͯ"S1=Kaq&4q@V=cE@rZl3sqW$? C֫ch>2me>G`Za< /xW~yUwT,`\cx T*ylnr I!|,ܑ9f\R=)ws哿.|]9f#u8o i$ E$H ~ R_/oi8Fe3:9k{/}ǴGH²Bkv> UU,E*@8fV?\U<1P6:F?hBl(yEeNet/%:n8kwtoPz=yr]L?{ S˓,}IlIx+&T~ %",l6B.G tӠU t\djJV5u-B* kgZ™ۧ ^!SIlDaQv/lPF< U,ua{&ӭr7eհiIԑyMj]V}8˥uPQ^hc⨨dȰYz$Щ}.\a$Dq;Yw:7| H/z3LE{c9iQ$d'v*9Gx܊BKX^h׷+{./c4!z%KINfFۍO} ԺՆ!yܛгL2 ϝ?*G2U~q.*uT8T-mFldW3d%DI;zj(qV%TEQQ(6y`^QC#٪`洶y܏TX[[epyOCy!T/@)wK]ife`/U 9)5ڦ FMszK4|@H^_1y+s$!9poAfUgi=G^`C f.>ʜb^NQG~Y-υ,?E*!S#O* 1SsYV;TwDTs,;wo~ ЃKQn1(rNjU?&=LMֱ(|kWM\rA 4Q4`yu6Rg!GIM"AD.#1aՆL2.]1>@R2jrkJNYLk2;epz.=QS;J/P֢7TW+I'TT҃&~F^qPԵg7l>ԎY) ܸLpEpo쉰.U wڊf;O`H.GK;;e`vC" 6(YQczT8fes& a;Qun^H ؛t*ʇ;Y^.~nG.uz7-pnixY[3o%˅}\rzn!g *a|F$!1%,el93w_96s]K,la|%@ bewŢ _of0쵇 `yͣ}2ƺ`vxDʒbjLӍm?p(_4M.Z+?& n&܁F~ V]%@Njpk=6vwɠ)@WgBVq9?F^^9v˿;i*x{C: _ԽYͱ΢˗n]; 9TՈ, ^oу q]jB_IƎ NVq_u NbW"V,k-&tLh>ZU֥ɚ>eי$1>,$_+ohn.N [Ĺ_-ND4e Z ݝK}|7D#* ˠBQeKuueƭ3eECtSOO$&'_^/NMNa׆aIwIu jm]fum'PrxS L睆pqpj/?t1s}n]&ԝy*U m O]aUkW; paVhc# JQׯ7k6p-σήR{=IfJ&tߣxz>ʍGHZmkYܙ-k@|} &Tl!yì8<.g lrt[kD~[Cmܱ(m*Cw)+_[/v6G]%z Eu)z %tC$[/-Ar~9?nHZ:8aQBpL ƍG gkw( ncj:Q:E-LA=^ l)fV@z áɋa,-L5]vyyۢ2 8O* l'5N5Z pۆ gYn.;# o:f{jidq ^q7#ۜ72oaZd+-u2^%P!U.`'MAxrcWkr>sڤݒ3;Ӈ~S}=.<<~ӃWA:Z:Z>L&PT5J zf7.]wz6 Z3.+Qֆ$/W bкNau(q J.4) ~P%ANц%i Ьzegb(*[ׯ6ml38m'"bkvz(͢-"i5gX;.,} \ Hs"?&vyK?@eD7r:N; Oشv}2 .#?%G>?NuGfX4GvDj!Kƒ&e$#Df7 dm@`ܴ "W\#Qia3VCVy9-Te9ЙIEV ks8$TdPHJYI͐/}v ggd&Crrx[ԇRꜗ¡z8V)~n~Ȅ\#VƂś[_+}#\|Xa((I+(RW˒@g 2sQbT,p=1d뻧E7 2f^ڥ]$18iA ٧0c1d]2&"-mzhJ}:JcjZ׮i.@ۏ~KOkMA&Z%N"43SZ.&SHWX}%&y*1=s% J]J.)1oc&3fըLXucf-DpDˌU[pp$'^a}U<5,zPff|6uI(\$GfVhiȇ^"l ҊZJBi`v<- 6Os ލcP?FTY bHCг  7bhJ;`mrF))S?OFJog xAdqh}f]pUl9hU|^yJPU<>:F̳:o/bF3FWnxJ .p$OЩ ]Wْxg\-mt L:X{ݨE+lh(3ϡSä(fjފy8,EAz?>oeZ3>V T߆$hn$Y!` /MOySỖrE.&gYVœc ev-.#Iʘ;ri@awU`{HA3`b1WPeGo~[Ds^$1 0%S l;J2Xb3L̫>bSL5V-' ^E?Q[ɲzz~ر4,v("ՠ<ͩaEx4M ĕT+At.1{$_s+1+@E!,=>Lf*tB7B:|Sx_Ɗo6/xK`hEݧdhCRژ#z[_b[M%p 8M( 8ISEkEjaZOY9:ZhWӫ,A _1|0kw\s3߾#2+m/F_?8es;Du.O5Aks1έ!TmBV !he]VGa0=}Ck- BvYX;<?c=SsNiU$";}:;:FC;{I>SkCwĮ>+e_%5AG"BPe&G9z`?4IS*Qv=gM"AӵzcgJjngϱś sFi ߚTy񡞷yakoi׼5x$Yyp ,x@ƟfPJ^uRW&F) 6 4 :$HB1(Hi/&JWu>ڳҍz`?Jl-}ײP '7+@|oj `Kc>4o%ЎPn:%dbn,A!<0u/֢l?^M/046\\kqa FͤݙrtLQ̿ݱ!X ! k=S>Ub@?q!< F}s28#Ӗ2]a^c hCAv֙xEL*?k{5d]Q_4=VG;Vg;J}Q@y)*,)-(dp_5iX#m ϕ9ϏeqY nJfJvuSk6OS>ds5EzJn8|&SLG(ЏD ݑ>WyYF9Jv^$@dzfԬְotPkג@hQ:Tޛ-`5}Aj \o#_EǭCw9LP+.VVvo6T1 |gr3&ÏqJ&:A$g$*$IE((5\i)tnMJӚLrflfV} 2\>̅ўyqk)V=#@#Xzf Jhi(2KDsxs$-'!5E9ͤ|jIy^<-]śS$UN\1[o\Mv Ik>5[4Kcg|=&,t;C[enl8uƞݞC^E汯\ UTޔEGn233H ꘞDA=>סCS%Gf xga~]cri3H;v^NX})YZ<qzO݆cOK՚BJS/kTW<3l?.IL#"?i8TBt?rpwjlAVބA) ph=Wn0/N$qo}DCKB|_:|yiQ F˻ݵOՃ΢7ՎZx]giU"`uz'hB2+ǟalW<4X<3_rX~b->94WFh85>bG32#7@R>vp-ZV<@:wI 2r4awwޅ *ѽs%F$KU Z>IJKD(.:Os0;z&m16{0I#hUQƞyn^Qg ^<.[ ym6?`˖k>64ǥF?70'k7be 'qTG(C`Q?.g)~Q.5`b1T 6ӦѤH\;.۝]&QMme4n7Klhe1j_.aGd4eX_W=_u$}3@pmLJT~2|D<9aɩ N4Ɨux5 uxzb/H=kX9ok8_LHU#x#^mpmK#zD *5*{b{b(^| ,fED8P;Adž|4`b]|i,byɇ?DSI`zf~+֪JU.C#\#H_2 Y˧!%-öVWD2 *gisÙ]8J3֣pROŸ . CCQ N%\Lㅔ@/ga_x>Ve\,2{cu[=m5?VwJyF~wbQbdr[]{L~TbnKf!$=mʘG 5v`< UI%7ޒ8ӥ7ezN4J(=Doc0-7fSyiu鹚Ţ:-}GMu}Gר_ٛa9^ÅYRe-wa Z:: ]|;5OwQ&ɺ!U}]s™ {'T~5'8^!9xA}=;v%>%bzgjm9xPCW6߲<*b^ xѢ_._W`$3u a۲ LKAa-Qwlqږ!t2UV"\`WIb(oyF7ƹXOXGj7͒0ֺ8g@[(|m|cݼ  m8z2u~&Q= [D7b ޔeo~ fʮhWW|[4Mex[ܸ[R=8{qh<ZS~_#.4qGt<6!YkUywH[2 Wf q/ې\0PX5lP'_u:vҾ<*2TAGv:Qx:U:@2-`NB%KN4 )g>`K eur-5_0&藨6hDˠU 5z,!,Ϡj;-wsI]mQ4F)ʼnLO8y9xt |GŃWq:R;'l| >4$h8~hz|{b=c &Tg|w(hh5Vޝ F&ᯖ#YU@~ϖ"0l*`  AJ(jIblHv˪ MBI E(YD[%_*Ăq6hw'[Z)cdjvWYtDw^mR[e>;ON̳ Om 8( LsX+Ix>r N,') (EX/F ak=} Ъ3H*/ۈD5Gc%lvj"*> U(Z\oSAELD]Jߩ`zu}MZW煬4yusd1dAa 9h7F :R4ԹX6x϶JIsO<]vF-_p3+s[ { Wn/j0RkQMawWfOh걩wMs&yj"?Q#iZ$iƸi\W׳ȚbSTs׫[ԩb K?j&9hIQzINEa"/_L0q5"1OWYMmG;V&$7AU zM7@"96=.rm.WƗT[_G~tsHz2l}ٹ|'㡣Adө 충7thIJї9Z ڴnN +kq'EB)M曵%pOQ;@'CVMk0R,WnX);r3%d ?|*͹V3-R%GA=4VhG̞TD5Ja{Qx9"S ~mm:BIȇ($@MgEZ^"MAz91ĊA1[hf-={ԑ4_Z-FѱS(H$ ­OcIVNCG't;OĬhv$ Z7.ɽJS$f;p$'bUmB4vm^*,qq ]l sLj<=զPosG2{<使 V~!<3ol7(Wb8i,FxƩ4 q=3ɉe( .^SR'FMR]QdB/qSz4Jjҩztxm5D&L˶yB|6I51\ =h]ih`T;˯>lf=uRAQԔ#<4&J.ϧZ]UlAT61Eh!uZ@HU>>J1>6idT"5a)Buf<*k+J7 6c|`Bl^v@ڍ?~l {;u>pD¢E?/@D"7e[ek ±ʕDȳ\{ϸJ!~㝝vd6ī!9/jkt~>rxٛҪ;h&frn~4̢(`lq'3ʩld4]״LiH՗#]]rhCM< ޓ.tu>cQ+VXwrT-b?; rt39p%1[ kYmgsU7QబkI"vt 05IyGՉUydaCإ-j7x2\d(+- ޕc7DAA^&E\O^_@v4pW=v-8—VLc,kSU^Sd̳hGUvnz723*!CNʨ6^iϷ]& (;*E`%ꣲpw* "vW@2{}s@[½$"edz=zj;]VҶ3y[ Y۔~vh"߱yA-u\&9Cԃ?$eyYwaVƔTẔbS15/ c`ZJ$)BɣB;c?YHOs4 ߏ󾏊xmP9u\Pm>.زSNuS+lM8..% e̒49Q\矵4Y.* (`[Yhk]TW5P)$ #ס,oo eu8&Ih;q%sHUjع|i mfG3yE'b/zҩ=J_ !4nX ;9=SciG?(~~ҢaM)Birj/'bWv’A,Hg *YP$ExuA ^:żpڂ̣5I#1!\JV%/imĖ\yHYdo]XRXx$g|ص@JG4{a^E]06 0|dKB6,λwS? s&HxM7T@SQ"7E泊Υ)2B1(Y"we(fS;Qxzov2ċ΋wXׯMiF} 0Xr M2$xiD5?X쩣ޒ?60l\E` c[S<- f[n/z,ğj|H [5t䤤mhx{>k9YJc]hв.t+5"Iа^o&TgWC>Pݦ.H.]`:SƸ>S-LyH[$`)Y=oh%ٕ 8LjN4ۀ6'?4 $I(wÛ; )|#%ItC 1H vU|kb(T./*}Ut|?M`32BLZz{d֑5kIʹ7cZVbO )'-X4?6rQXa ҏI'n (lKj"ߙA' =`RQ!@Bߖ-&{HC; "F"Tӄi}D1Ӌy$| LB/h犥;+LPЊ ~r j1^pj;:Yt;ꦣV b=[ c\pSW J`}}O0h"<4) 4A|)əOUr˶YCDu=6,.`1<#~K寄i}?JQy5 w:\ C6tHmM0}eEED >GuhePn[W{X8T]Ą~80 C?7zK~vmoٱ'SiF0:?p5-avOLyk jXwI оa'^=H!7fô; `TJ+村ba+\2+ol]Udiג6(OVgbٕ4Nt73 `+*Ғ,=sQ1nƃ} X?,N]aIvQK+F}"F_ӄu>̕zoRM|է.27!pB24u_{P74ɸsV|ds[3|Pu}婅*IJYSF*G~ v0:,\-c#d[Q(~0嚱kY|{g! ]ax% (WHf=J=g %/RA7:+E7wEO9oefu^C%P;թN$YŒ08H"Z]N8_D'xrLWݩnJ~%zI[5Z?(Yjhv/[P$hF$QzrCjOc"E|Cn-J qrM \/E-*<ӾN;-Hx$vCGцE ԫ,MrB4mkb F ѓdjUĶ=".GIٰ\70ombWݖʇ*ͫHtKJ,ZoƗ{Ԁ4Ȓc6<>6JnҊ'ol Im%~QZ)fW$:q):BU&-";H}Cݗ3A+>4 Kh˚G0"h=P~w,s * lM=΄Ă.5Eqx^g]@^l*[xG}.nKB%$L4$H\?Z!aHFf;6 lb]Ն:(BC\ZQEy'X4S Y76p]8oĂ@pV H`B~]}o7|W]mEՄvDP֍,_ h_nAqT5/@OzdofהA mϜθbiI؇>Oz>FI9xמ)Z q^V+~ͺt 8!5aQmMVX'(vl4 7'e|Oa{?Zƿ߮Q ]ԼT3R~.ͲjӣL/qϗ@=ڸj^#su%cgd Qi=DQ2m;C_Ep'rq+e,~PVW~yA0w>J|K?c5*'k:@:Pf8*sa NY#Vvgm` y=Bhx!pA+)2" W d@JLgMzUZQN\dga%`Du[.id%<^XB:c㥅R,\Ս[AT!J,g &6jhķv 8OG64~9eV%!E+ 4~u!I+{FrK jX;W[K [NhwO'FlI)lvuҳՒyP<+!kpWwKq)i.CyWrC 8b>;pwb1p2=3 ѠYenGWa;X|.͟ l'\-Pu8GZORd(#?鎔p_RϜvW$^@>r WA-IXGQ:뇙ߍ^͹B KW;;]jV0]! dP)}'Cx 8Ê =RL `!-k$`xzDO*1FlZ"ÐAZb^>\+?#QNtt.S;^i0zؒn-54Ʀp$D 3S{cɓ7z:#|Hu] d5&׃+bpW(4$٩M(׈xi1\F3m#/5TWa&qsTKI e8NM?yH C~bX\Fn̳_r,g =VBp<Yo!j&?|قa}cvZ8mNFo,LECO`tۊlA S{{Q4uL+zD|8?q^7G-BB`j1t_ԄإF[ _J`}D*u2cPN`%#t#ZҴ2SaʈǡR'rn.'+K3p~{)FҶs:E't_v62#Ғ5pw[hۓ1U> I3%q$Y<Bf=E9v7o I3pDy7C)ka] ޑOS:s)q)UaTu!oލ6X2D!]@ӈ\hRbj}Fbm;JΦUH&':m4|/Z!662Ѹ$9_+(4iSBhh> ^c!v 4h/~F1i3ɧ(8Kj: a6eR]I1x|/=Pc>/Ɏ~$xw%z6u_ ~AOp\k8Zz=dwttژ s4gr`R'EU:vuz] 3$ko9 Kd ӴTg'dmM)f96TOW1i|>oׇPVt\a(2U-u P a6koA⍑20\Xcѳ=r/Q>=Z4*q -EJ!ߌ׽O80G?!tP'&'_@\ DNJr @{+w#*[<<܍*.ѯ(̲(K'ʎj A)WA(Բt[{q248lf&#[e \ ;+CW=jY]M%uQ}$+kႶqG}}=Ftm`r Gcqуj r~)a=<t4`;ujP+5hZýN^j *f-((Si9G-nj 30Wb3s_O6.}ZjcC&,Twplg}YpZwg5!u|ePr*-3E l٘<)=5_hY.nnR%v(kPϮŋߊjX_=da瘠/P9|.suɟ>. g79kh /#rwECt 2Ku sƨbyphh#fF#fò (38L<c_^&U= 22Rk'Mk]_tt@eTv aMʓVҁkf*M04BiT*VOTjy d;c:v-%S zL Ao+ tqš#̧ܞjᾸcCm&l j5MC5hx ~UU#ΟgkzdSAMdפӹD:%~ \`q?o|WpfKTGCA?eZO"jPv'ii8@OV*JͶaO95THCq G9a?{B8۲tvu>0GVk>Ն|1u>[H'[J6+ Ķ8ZC2XrS<&N!3{J3q!-a$[z{צ`-l$耕@Q*@G OlU@FC>3)(;fnՔZO2U\P.Y6,T d(8P3||KnĔta [=O Xjo rkε7r>GQaUAϒ[ l)5KqizLU4ag/i<Ֆ`5ɻ,U( yW&#v?WX mbV pP!/tL-#f57$ޓ+ӝcd3$Ƃ~2YUHiE)K1|jNKX|Ih5Q`hd o'8pE3 F%)e so \z)Mb ‹#'Dz+๡cxڿuj:`A0ϸ90e5L1:DMe,)=[FHuyȯ;?bԝ1;bH%yFeW`zrwjKw8R d.=.h5pќݾ>%zgG< ĸ,}'eiL o=%SӴ\M`^ImMƩ,M `eB*rɞ[!qy"/磵hۺW*ʭc*UƷxjۨCrRʚNUfMWsWQ ñ(=`{vBTC>'8\-D1 Ձ]#:`H o!zXo0<&x-J=jMcd:ؙ MImЊXI Ә]m'xM^1_5yQui:[xK \Znlޞq@'V-u,2vgBiY-tP HD\Z. G::K!!m$.h:㭹T]\m4@?zIlrx~s%'Z`wiH:(~-gR7c=8ԵprO>#P.d&/suHٝT@mVq1"sz IB_EJ< Y-' H'{Jp^ʸ;Uy0a8?g,Njw%=Vf-緳V`Tǟ5i@ezBB_\1-ݒ.>?*E珌uoGƽem1F k|+i֖SSB{ 9|1w`_0[qD?&dصP^=kt 5.;WꏸXeFpȿ]pFMN@,huuuͦ J`BNW;<;8P2T=O5YivT^r.|y忨a/H/څڛ3Y9l{*YڡcRChW c*gzuf^?Tcc_<"'gncCLÉTsсTÄi؊d٘Ro EZF_vX>}a9q/,ۙ Ǣ68F C'[56;kPYiޛeϺap-$\0 aHS`[}FQ*>RQ<l@A>ewBDn?u/KB͹#xL%dJ'*iu:y٦ͨHaŬ(PP7VP tx'j022 v(ynCOh_JLh~2#O{uHP1B,SiU9~-bJbmlƷOMU7^>U4Rn Y܇2bCf1(~fޥ`m鑏u^Ka- hyx(hml ]L:eJh% uZY6%`A*Sc[ 5~'DCN,r&5wSRD㤐+]nS/\,ښ|P* J7Kb3Vtm䔕 ]+ZPv-LGDTqKw0Oq:JeN`1E5t1hKDkh^6ɭ4+\/FZ#:܆&YW?W. \tÜgޘxP`)r6o1$ͨ7'M56Ƨ7UW[-I+Z2ŇNSu[n/ no0(ax=f& c]- 5LV緩_}/ߏ8:E 656?UVv@wIGDɯQʟU(OvDJ%Rcb0' aWz&v@E#cj8>"2oqtT*P_XT1g*AtB=ΖR% X~eQsOmPd5]r +1Y"$K(vBi`h)9`]Ԛqo~7qJk{PJ^,Z%W_zTOΎF4/gjy_.z mx&!dߑ_ :.71W?Ŕ',ŗW ndV㒪Ȁ'j'q~. v]zEyl]i+|+Le= k@X0nlqsfr-LClDY`x ɰY%f*Od(PO .`y?HMgwXwD %]Pƞ'g.+>YB)p1bs~ZM2 hqlt!*?QJ3'vnsflz^=4SW lpoH[: N_|)$wçm(OUzn4[9|ŷ[zNA29VJރZZRM&ĔRӥ3C,w!gR+!g)!q{ə]d63cY 1O56ĉߐ#!Jf`R/m6#)a`:'qX~%tǘ*{x}E4§c"%}yn;HGK=/XK;F9]"k#l/NU*^7#,$7< JTZ[#m=f<9]ek hKRxni8,ԖՎčON◪/lFhdX"jFUߺrU&lGYB+0z``,@K-zn?a{/T* VkVSH> 6+.Hi5R,=>\ LHtU1<8[vhlS PgXO.FZ$,{A?V`k/_v2ÈA8}>y'3]~UoQJa`G/]JorCģNj_5DN\9:BRj AM 5yċ`9>[RqlkP* ]V wR~yFͼ֔۫n;$Y,[zn_>/յ1Z3,>{RAҨk*zdo\J~*{dĪ_+ऺ#TFrQ:W{GJ.,65=mF;͗S}1Itđr#[[hs oÑ[jS `Jr Ik~W4㺍"aW]ڤ՜0wO(V[ ua\8V<4$CԯvJpClЊfT}+783'AXlӍeRj|[$*iq9H^mIvZ Tu03w&G-_.H`J+%*6"9|oר{*X )aFS@N$r?k)W\꼨]&&zCk@ 2p֬ pf[AUiV lO)ߎL!%c^=€۸߄.S"lr S2>$>apk"b{ mG]Hc?ۼ~l2 U'(+&a-hm9dÃ2+8a#z 0c,6!q<< uB'sJE9K klR02 L]W4KIYe"7eH'@UK߮w.9eֺ|0snw*k 6h‰.t+%YrDB1tH#R[wrwRB|߅8vZ᪸BcὄoWƸZXދ! jJזY;@fǓ.04ig ¨Z&*yҭ2(rRDb%QVa yW(4ta3Craw tp ~ paQf.oD5 yr6Of[ ?ƞT)2}̣1 h"ILT7\~к8Yx ;":duX e02!J:~ ?1Mzoi@"7pWY }ksz;#@1hsnժ*^;| fEvxĿ >WC3Nb}z,673((ebL!yhYS(pPWepZm=MW o& @}*O;褼s#楻V^JzEIH 5ȃl`#a*L8isCѪL;!"h:TLu'HTtհ,jؚ٩N(Fb$<4w*`;# J: tΰ*H&0 @ DY$$ mgl}s#_;!6*T ^Te4)u۷BiC ns՛l[3?*&|w5kIf&CnzMCt=Rۚ!ST㕌n& 'P/r6j*mE*=6m&b+~N<-7RbyR'jM'~mjhܚ<'ܧ6nb(<ˈ)UObz^< ZM6%Pzw:9 Ls#5s7iEEkH,?SކOr^:xj%Jpم.' 8)+~]ŏ;J+// ^6p55hm $ݺlcN>Ycd;K@b8#/ 55vLg^N}+XX։8OfPɚ*c\ oD q ]i Z(G{Sʩq|<݌_ ~']xo_ Iˌ`˂&nv$ftu7gR=⩊6VwaIM |e24[U)d}El}"WHѤr>5ŕoqq^+)ǀP-#FOXOLQg#cr*0CP%vQ ŠБB%G}#fQ+H8G `XWF|/reÕ-䤲K_2ҩ"T]٘ȦT9ot"XUSƟQp <{se&l5-Vk\v3e^8}Ek9:U%~ M+l).?5n"** K3ϐOXyJfؚO8NYˊOc=vpIl{F]=~9_{l`3IbXw6V<GR$ݕ`7ٮAI4f\s|* ĉ=ŧh'%?q#GtԯstJԺhu>Q\+zyS`-AAk;}g [\s0tY r'm]%.["U[D hv&H!Gduzzc7%z@@U 1,~(l4uVbVgB y݆)3Ss 2O=6K(*\3h$w݇E(Dy"Ę^1>`!RQDfC=]|/&$}ײvVcTs_)p5^~8e>]?yђ&O9@]6vHD3&$BI[H8&|n^8ƿ%z>,en@Z>Uq~!2 S^.M8͘/2ޟ*1n6kQ P ~+i #qbh:szB#]G :j6{ }-CQL)f?/]yam5t `ӑfTqaQUN# I?"ؠ _zY$J#C z[30Rzwh|Hk>C>j=ah++c|l  igALː1,$~t]`sjnzGOz!-"f33 V*JbGlAV`߳$WX,R֩6(&/`e$ǣ/z nxX]^TYY%Vjg|Γyv{/)pXm5:]u$IgGIm+Ouw|mP\{Q6AsQ" 62΢dť8D5lug 0s5XA |k-Cw]J1 k}\,`Ⱥs̥.clA?8`%~{8^2@C01'LDXc".J끊:bP3؀R4Ymk#q9s+uo +ԧie9k =:~вn~ nh*gCp:/'/<־v,!^ ԡhQ -R~CVGPK~WCqbSgMq0*f$s0#/"}0԰٩Mkt cb3*+ٲz>pS.=3$A^/D4Bnh{)#a PeNȂ[,CթT_elP.zQ܍jܔ#oy4k`XUҪB_oKIT̢I yPê"ZR]V, qopS$Ԡ A56G31V n-dµ %`Ёz9l45 CJ%(ƄT~&ABQGk}`0( R6ZY=m)p~yM;vplWk/Uf*f-BǏ'zXedpiJkWDߜH 5^-"(__1bڨLPs`;X\ajK!ϵG6TPoQO,^2}>3e"v:NlJ ؈+c/^LC^2v\=9(ЊFؼ}I )0A:PR$Xgf*7oӓxs=~kU 9۴|" n%Ai|;TIQ8ŏ)jIy}0nj7XTq#(rNN&sPIάʝ^!8.©:Eh K[#\bXqCN|23yi8Oj'Rb6Y -'sh[.99X۫kH@h~ -9(y=T utq.\{^8sfAЪa{:"Qg4^(C鲏caPƦ!/ٟa>:CïGH5# PYH#R-H/ +}:wf( "BYk) ] f QͶiýEeP_3%)?)%\QV AK@K,$}WbIWZti#i )%bLu zׄjkңkr%B#"7(JMbQ^ \Uaxyyӕ^`JBȟ!GTcKRN0QEp$ k _,(}#mҘwhZa147n+Đ̗[S>lq e3mT}Fj$(KJ :rqOxǚ3j1 L  9l\Z|T<:?G|k`ӛTz߀&d9 L :FC|t~! TtpD$r86!e <.쿯vGG)}'_\YrjdnF~0I_唎,dut4PxvDLt\nZsy%lu:$ 7}(S\VbLM˶f)vl7Uʺ{A0 Aԣd\Zr7 `N=ƧvD5k*r}RG6Vx5ot8ܰ)Sq&> /I!Uګ уn]ǐ!ޜy?V=`LU/_6Ȥu5^7's[19kifÃb;Gc\v_AiXl OE$9#ӪFP~VnD0S:jvZp7c{ "nݽe̎QQP_gc`@C:g%Ź*t`oZS+nx#AY\ +)_@%W9䛃cF p/;J}$B5Ӕz}46p@biCA CQ"rat9tsTI¿=pe$w~Yd_Rh$,9B^K)1mYJ@'y~+c0Ounex;1~)qNA֗A}fɦ5avc!e-{|Xjmd%{$=!>q0QϮLk|^2ov H"MXW4ṕ [m+wi$&ޟ%)8 0&f8*]B~$vVc-Z*BpyV~(P'ثGQ>{z&mtZ J/=:`S0%H*ЄJńAݬ%]8]_5dFj9$EWNd0\ 7u'm |1VI˄hFkjX">T_uMҶ:7VcK/bQ23r@t]w67ӉITpمhܴh1l!iHŹgl#-?zT$&?߼5B(#h<̬w1vF-[}pٜ8QyBwNᰄ}ӑ Fk&(v.ź}Л2 s)2/rB?#JsMV[XeBIn:1@@%RJyoTIBj6p Rda)|]M"i?㸮[Eyh3Ϊ(pd 7Vp12Hk ³t^3-#H!C9˱q1v)j2'Ow䵮F9𩟖YŧR)n혰yԡ]r6AK^_) Ћ+"G VKD5#-Թ')*T<ҕӌb|*,↸'\QYZEj# jײs$+ṻԤG6 ~7?ӔݝNm>uo LXqиW d5|&0ndk" On@)㿗3t# lhR\ R\rSI4Gne謯JrеJ6 w^-l(Iշ @0ﲯg>kLKgz<*Vmq8WK$IpŮ0VOhb6HLxh}1a+3'Sp iPP羡{ BFm(^/?&!FW  Uo6DԒVb$>^RśW9”On<Ż3B,8Qv& pc LYt$y[)ҋ&#UqݨW1۳;ł%n}0d,"%VȢM-jtmoc\5m-SvbOyj1kdlW~ |g zܪƭ=N U|j -iQ]~s6Lc)V!.]}cu/?ZM>Ư WlojyQ1P>*\t˘.Ѽg\66+RSIgu4ѭe: ? oh 6c<`a,567 TJg/5nb,7^K?zEw u E5@Ln"`L]˯vz:BSk=wq_l-֌7*82h!vZ< r|b׬@c?Bu}t~W튈Y9[b#q+[ꊒ}}>* hl)L/ 9\lUtX m~c$)΄+Z2459]W 1T:bTTl7C -t-'ќvaui'lht* ~'gFݜ bbFff{?( s.Π^|UAW†WY<'ApVJ[d^͋xKK j`MyxHV>]ϥc(SUzv%m:풩]QCsL@! uCOyܹ/+wZ"KDK/ư DT^fZCaG/؇Y!Vu8O55g5VC"GBqӌᦔx`Ty8Khzv|45j%ubaPI(oBQxK`a2·}T|Z3of*xOǶW.澝սr$cTdC1=ѼOY Ϧn1E!hC٬r y,WM8~5A>Sxg_ET$ծWgb~x¸ B!O'njh? oV)v8QGm:9T +Zq-iob Aړe9}[&*X$.AO.&0LzR )Eu((4,|DO aiW3qWt8,{"KVG`pqh[HBQ=thf DUw~gNU]9%lP_}|0t;H\>6emܽ!Qr~tj#qy$(dWCP!$=J88\_ mz4׫)D֩8~W܇ƉÞ/,?'IZ*1 -+=B,0e`\+ޅ&ο a`[^lO-1z pT >>_\z&*˒ۚiQ](d~Jzwd Vض lƑ͆QF\ Z>UKއϨ](i4za*toI_EyScֶ ,Rd4OgRCNw>wjft}S if,u@G83@H޵ӈT -Ț:CK+EYkWP䥭&ܙJ4 gCm2vf<-Qyjĉb&YDamggiٴ7!+\53lUT9(F7R뎁" =Hv Ib  f{; b`aB[!^kX#xXts-xw [psfAeߤ#E W)n%dBP/y?N#B0` `|,f 9J^ڂR4OU(#O׏B@Q ɵB&˽8J\yiچokWWPʫ~&vڮD+>w6>=7,5R6aژR?L,kյLQH gX4*2RSz뽟ob9hZ_#Էc]^ٛK#SXQEZyԑ(2`۟^ 7!8NqwO ۤ3+kźFp$4=βhxⰺ;t?*h'=&T*9֭d1wcA:.APKp7 3{Ol+Xplr/O :yo#@ zƨ%9"X>>!TB%}\}eUg۴ ~5BVbタJn7s3Fq\#R*u2DAL>fZZB^Pb|X:rC|QOA*Ĺ6FBS"70i!]VOO 2ֵ_=X$钱*_d@I^3_baU:K֌e+řV.?䝎5EX`"a_EuZgH* @ /Q{*`؀WD>j*J=Hu ] a t0U=UDm#qҪG 8.ںyj+ˁP]P{G'`Bd?Sxy`r]VCd17۹|53jx4-k x.iN+dF>^B8ж@I7_D։n$;x/쫑)n6]=(o sB=ců$y_ww ՘}wJ#k<Dmp9d!m+Y:I*v lZiP?qLu?]IL7l8GJ.i]Oi(FQj9iPԎڒ^e.dFpaLJd"p1ڬS樓Ӻ:J`WgdzΉ-%͎ ,vF@@v)rRn*&D:dyѦ߮);h< 쑗1C~`;QY20ˉ6Gh`[ Xj-MN K,o<"OR(@RZ-um !|H,48]!,P x!W$w DNV*WSm<VG~K.\p0x%59NI:XV.\E뛷kf`0oLt,^ \mܿ+Sa)<Þa'riѠ!ˀLJZo0Vf4x\MCwշcG>mIl͗|{ml)g&᡹RA Sb~58ϞkI8+Z?|_[~xUȁv'8sRobHJC9[]w|mZ<`TցGy Et4?%{wR) qQ 9 , otHXBleBhƗ;['0<B!V`|ʙ1P7gl-jO^oyȷnf2#~bb7Pnq~l@!Sd0Pݣp;B@3@IϳiBmҕ\o<Bz*bQieE{[ږ_]쟹gw.>8%[LkN i13րKLI{wVvfh|8Hz@ܲS^1C/k2N>!VbL%IB|PQWSGR 2% 7JHe8!Dj_g+HyGICQI?}+"27:Wmvn'#+5VO]ѝkz/Gv / ڢ?G5zJkӮ?% wp&¡23&Ӭlux6R]TqqrO&]h^ʉ4Ҋ,IWM) oS*T] דVM+@Z. `g3=L5OYf>JEaoP5;«1 j>¬# LwCY$̀#} h}2ZŜ/^q9EI,t>gtD*Zp> %{~nH/g ,7m^-SوSC0伂ٷ3ORtWN2ހDi4< +Uˍ)A%vcI  W>M-8PTv{s{B>/O]d7Ŕ_<$0l=hk>o xg|mv26ڱUS֨Ss1bJ$ coP$h4(?˦TuUA+Eۧ,.xLx(`xwj^m5wQ1}䰁Ȧ.47-!ߊ3k?t GizvsvVKFU as6/EzK~& Z%/ Q~̎G}@|w3 =R 卍| ~~4%jc-A丙܍(LShkÌETrB&p{hx}^:m[ SIʰ!r"T4s> ąl7 A̾9jw9W=?q=A7—9 +q-&udٷ{qhib_u)=IFvfD' G]u{[Ɗ>̅cAG֝V,V[CvPSkcv$ļ?ED4 |w &j\'vtrS,*!S"pS6cr<:@H~g)*|+.#w} 3ziNͻ1KȢYN}i܆&!#d kj?0g6(5eYL\N9xzOc݊wnS F4bW@6 ̯+Lk3@&k\^ YiTзlLI:˳ӄ[`LqOq.ɚBgZ^MgD//aӍH`}ƞxLvAgv{]z Ⅽ;ּm;c})?nZ?Il- шpMꉱ 6yP^{`_)~N5]{Nk6ov \!.(kn bBjd礀cg.@d2?)ɖb/$[^3Eԏt'=HpP:sh`}scd~ OwgAx1!C3/Qh *.*q9]AݜP{:j0y託ZxaA-J *-B:l:>t[.J s:`2݉>]W$Jߢ"fpq9hR6}8F v(gxRW$;VJ,Wv/=V˾#GuRA'RV%s#23Ç@=`ώW|Hw}~XoADXm`.8p!ɀ@Ǹ0ޯIkVq6P%v2D\U рug? rXd9@bNcLEpuT?g `A#F@n]^=y^ Vfzҽ7c 9J.?c xd" ǸhB EP!ڏ dN3<.ibS<α͑s>鐧(xXI`KKV5+iٽ5e)x,3ߊU둩+*hǺŭ&t~?|a7s'OwXJQa+v}.PiuR4m60zNj.}u^$^L"1Q+~y4cE`#N^V8N~Ɔ+<$ 򪳻7HgYT?!1R9T'z0kKVċ q J#Zu\V NWSsrWq;sO#ZSA603x>%Z4;n s罟wH5c`(~Vr<7pcލLI2\3O:ҋyV0tk@ޏNQ G</ vg{(%Mfb1v\?ajX) ;7H7W| e2qg=YZ4l-yJ78βD4U.5Tf$ȀoiX%F|ϗkBٶ]," W o4Eޔ,93-ʣ"Pd]̸9D>-bNj\04{U8@Om(N*Io) rU$*ќ4U3L ߲,I${Kn6zuR:ǠTT0X] ֋]L@y: JM wPb/8ŢfgmKmKg;qvd³qjp_#_:Z"-Nj_Έ]0ܘqD`Ge.RO?ހwR|*5lk+<HU%Vk;/+@>Ɖ?(m&[˷?Vp Q$Uk۽+{3SGθK+҅w?H 3Xj!>+ =FM]?>дؤ:MT$Ėk2[vy aY I=ZƋ0*9P{'PZD?/މYa&UӉQ0򷗄'5{[:ȍ0v`77L Gݶ7RSh\oiw?^8͆z?}>rAp],TZr) 8wS_ZJRa2eJ:Z:qر+7S:|G Fp*Ob&G3Lp60}'Dr}ˈ-lִS'Mm}%_ ̈!ضj`VdQȁHmI<~FJƋr&kTag!z',Ug& N&6z_*X4bp>ՀRI dYqLJGUuI%x0BkszzSw"kI(s  u)5 _t3HToLڑ DW.AվR}RwJ q]m6BG gɵA)77 S5og: D,)UbŴ5VӍ.l; g?B*־gt;1.E*B#& {a7<5/ĝ`D I~n|(c@qY`^l۟Ʌ:'HX/֧ET= Gމ%My39ׯ9?#e=yWwˋL5oe}{G.*[ gjKIHܘ&I`?GT3DtWR} 2ؿveKAbV;wi0 MO~ b{hL԰cD+6Da! GU`L?Ήsx $ q+X=?3^~CZ^ qyˬejmۀ=KS.JU"GK- <O1@_#X)/ ґA @M<{iy0#?΅BRM2}-|B;l4Rv.&Y;66}1BA0@4Qn9 %bPjo52scپQ2zVc<4B_ j!,܊un6'79 Oj5G) h; %G̀|<9HψE5s~6 gWWv4*KzAB-8A-hw{!=[p}fGh'_t ˰^ʈlX ,1Jy.˓4ԽDuD财7~:N-e~= H]Vlc@<>PLnb *o^8شQq"kvz`-~ݫR8+2,0޿Id'w/~"T^# Re1r dj =|P _LE$/N`4b86qզYKkF^p =8~XPy\T.P {Mnc%HX"oIq K)ݹ~W#~)ۘ GW wdmg M'" WڬV]Qa"h*l"aF"Ɛ`: d{6VV3˨6"9~\yei S CsHe tn 1KH'9,5ďuMu{2o(b 4[Pշ&x:^D oZ^$ zZ_+v2N9 krLt6դ"v}|pː3M:SnRMoC?g@s3gu.Og1oA e 8!%Ȯ"fc'Ӭ)N~0| jGdPMؑD_Dxb 5!ŒGNHgzsDd_'.ThN{_Y{CwRqlv?+D"duD+6dW!f@+9K-^BLvv\t,DZ(wOmy, zj E=*!'504ϾoUV}X\Utzurl=hudڒ6^'Kuv *%(l$o&Nwdp5xL7B{T}P3=Xhnb]5| X`RS@M*" v4tr(C!5Q}S g?8fÅ77`+4r`;% FY^'+.K0ʀ![گ3kqg35h͎ !{m#MEϦhQ/Rp2B{+_DEiR=uC~ĿI㍳x;.YhY:MpfuS`+p-Z܊kOEKS@dwI5ɬ41r60c}Qs{l cxɌLFd4Di(_t}Ɂ`lj$ѿG%24@'%+%QIcpT> wP[TWYaT+٢ B0ĢS,xΓ$KٰݰTt?xbڧtS&݌^"F)i/Rl% ?X@c_)A"e-rt쁡<S-c[ٖԨ&Av1[_˂9ۄ}wK j)H<9cZ!T'j=n͖g-IJ>$Lz05R3ӂM[yF5cn{?cmS֗Vl-ۭwjPpjE0t6X®"S AXLkZ$4Wj~ȷ})‡֛+X$(&xmz"VġtWYDB'ew2r_`oafjuթy_& *"7uJR=5}xuǡ8 9͒LOaiH–NXx41?f@*GoO!eDdl~8`fv۵Q Xci@G~ K ]5HPG!(Ħco[I6]w<疙]P;h::WN&˹RvÞ #^Vuop;7 PM6%t~'?C\7͏!X!e_cIXzkAVN塄R4#-_H90},oP$۩[||GE rス]F]cuHڧ8dgo!+@S…Lg<Ῡ-Yx ĕ Ҥ9-ʦF2{xL`'uȐʦޅlp=̋ӭ@5<,:>i׹J+oE`+1`%>:nBxqȩJ9 Y-T9ϩ'?nmRtEљ @p]/1;a4Cki7xFVsx_=\yzSZ~4CZLS/aez \c–AIL. Ch?/ـhnc]vϝ[R{ERnl7#;siioL`ر#!6žR|צd."}+}_݇~;"CJ ,(r;|{B%߃M/B:#H'VzG.,ґd}ä*%3T\/LEa ~*hJU \Ӌ܈K_TS,૸M譚riU|`7_py8Í -_b>ŷνNtI*>U5MFn\QI,FB.IT(!){NFFw[7TTP/9HNMBA yb&,H'7L3j =I?c 2ۦԃp]:s[%Tx2FUGym/ju ÑTvQ9>Y'CXi_.'Jz?')rؓ ' ~L/h+ycO |6,7 'U/?͊]grUXNO_{=OmTsTÞ5Z Z.Œ][K :#Q2 _ Ql{Jkq*dh;bskʐood$J]#IVr?0@ O$4CT ('4xy3ݜWb_Z~auNhIXr5<(7q&`; 94R<~ l^Re@%ɮV{rDkGmJ&;se,xJ"}Ifl^g-ׯH0SWmg͑ %} =f{ʖhG]^b.SFTNr a *cǷ!!+0ὂO[O9w9:K(E73kh2:`7WNpc37dߊﴙSù%±x \ЦP1tYr=sug-DxE ~.F wPJ(Ak!ϜMZDZڙL:'zXFsm/cPQ˕ߑA?^1%5> TR^V2;W,?܋½`*b&ǜ` %`bx(y!c]cal{){22Ln1ͥѡd=#E yA"C[m6N)JzA!)*_l1䏕hJ*W 18BF&G'}>K3vEV/cAa7)C } j-P3tWw$rFJ=b;#eGּߟs&Y%cׁJG\/ž·<2$d'`` orn.5w" i\>+0̌_aJ[qk '7Gjӄ7U0g}P[W+\dtH2t%@LR57'>N]|P=hiy_]9U֋$7:Qm_~!e(bkPͦ {@fj~n]5CūU#o#5 P@+lrbUɰ()EWI~Ȋၪ5ba AJetiسM+2n)L}bcG2+Ϳ܏|^GZ@ؽTb\ql6C &A+;{yD^+zŕDaڬ// daҵvpNDz﫢Xx1t&L6W؋|/qkSiɍZϧ;gYa^Զo$' M#DXg)jCcK\_x̑FF(df# ? mok} $.u. xqs~3-Iq~mșZ{8?ZlBqDQ.m(j:ʙ NBh{l̛eK4Mh @ujV0mB,MϻpyaKeu-v7]Nxˑh)u6lT 2RYL>'h_c.0n ݸǹƛuC@ RvQWܞkQI bHh:o9 Z7 B?ZQ=õv^[HήA e;;nKn M8B!4fi-PgKf0T^p$O;9ή^_eӿaA Qh'9È=*"GYFgm$Ntls !8\z¹_u2pܧ~ _8[ 0 )J*xˆX= :t($("!o[@T ,ή F0̒QHT>+joCarD@oow|ʘ gT׃BFދo ?iB@2cK)'v&_oK^0304 Wb0 yɌ վBTzm`E~>E}ӭV:1O'ƪ|01yx2*{GxJ 8\ GC# RXSl"򏫲EK|MQgJ́[m*d(P .jT}׶r;2H."Ñ-}pn'1玺x0 &p02y'XnDŽߌʄL?\Vf+1Nq  R*<F.p$+ _(R_,[2ENlYl ]!-xsYe$кNۏC^:t^șJ&ۭj`!s.mzrn}cRa5=]{~wg WpooE#xӡ_:W+ƭDp+>K9#Gs[&Ů_'tw]h;ND GfR*'c7,ʁFVġz\z2 Jve,v2⾱7zCTV ΩEmwFд<~"xÜȭO,|h v֏ا6Uaw^>r*U-B+`}5τx(W`E]zu"/Oî bƊ XAd#5z$v\NOd`aK-]*^鱼tBrO'W Eųww ^dxm=S >P?b]*ɣ6YQkH/s{]K3h[Dy[psU/]_ur&]1 ˰ *+nM~Nmܢ0*)fVSY-$Ɋ_7ZnuS^ڪ/:+>Fg~/2':۩yfWF +IE4NK$v2l r7ͱ=^SgqmQ3``ɡ5[un^UrsdU;SyZI StNm$9Wr[ߕs0c{L2r bQԀ/A&K^) 4Ł?4g`of%P|@x޷҇NJ6}I /è&qψ>PNPtM#ɿi&w˽7zGnb;HU2u%-@2Adz֤Q!@}ұ/)2㘕RAE1B;GH{͟w*%dtY|ٽ=.Jw]ԓau&՝zO?mʵu`)$0".bR6Nsvfk|y+m"sՊ<m9<-ìdMG!WK>ZM\gtX#7qjr_TNnܬᤁge /B4Y-O=Qٶ(ŌMLhLwI:CVzn,Bn@08 ^h1b a{:SK:d0::ͮkF ʦqʥ_;4idM~kfN4\H'-(gʝXLϜ?= +-` fR1`HT-a!a{VTh$W8`2 #ïXt9ƄOSEb`!sb6>6ǰt󒿴 Ua)4ͣ˄~7|+dᣃ(vWe=W'3"q@9*@6匘eET@Tk sQɾ~Vbԫ[o'=2LY=g+#gzP*6f>6Z J@ҰP_LLϯmD퇭˚7ϴWȓ~X`G^6c65g85ݼ,OClRIԶm|$kaay5s)3_K<7K<=4<R +*^v9j+QE+X+Ѓr1>"o?VT}[NgdY1) 9DOPKuU8gFƒud${c/s+m0Ŷ#F~flWJm `:M/,s|[yPEbLsj-"ZT*t{ϒWKdڣt?_o'T6[f(^B"%W)Y~ELOg3 ِls?OЧABI :SZ?]Q-DEf0ˈX~P'b3B="_+߭,Z|LLN;h9 3F]U`Z.`_ly`UK"#w$8CL[ܮbgU?Լ *غ8Wq[4Nl^ .h>İbgQm`x@Zhrv"ۥia"iMOރɯ|$=pWAFyτw4k޷,rA!DU]e0[-xQ0 N>:%j~Տ[ado<zO830"MMiL_A[6K+EmA͖hE" OTM/f,g1uһLqEy#1(L2=(Ar)r"^8QD]IzH+ҔJ]>$MuPS4H&k}iڷeJ#sB(3lA%?7uo-z>7o\ !룀l[A?,`תhaW}U?ossbbsE/cf  #^g!^J=uUȰS3zvORiؑwG1˞ZJ[$J$ZJhCep sJ.L_~ԣI)_<Е4?Qp7 dz4# rn B_i(P"ʞ)lEqبyP6Cp /G]hqaM!\(/T $NZv;$w$d$wFvq][ࢧAqɃT0wޙ332Xxq e^9D!UȰcxpY?CgRE(?е矎z#cT$"-% _RP .3[e_a}DE~Թk:84åov!pKK8-ˑksh3ܸ m!>Bd2 ϧ釀O#I-RG 2/@' C:əSڻ bɹ_O'ʼnu&w~|Bz!d#"[`2+/w(zW #\Uw&Hc`~:ԫ#s-nJ\zql[4CGƖKaw(t.JOVB69s's=ӸY >i0ʮPi f1cI-:MK p@rxό7ر.ȪiD>#;Qc.hiP ؁b2!?PatTVDKI͜x#PyB-0%׌¨eeY\֏B %Vlf2P ȼx +vtU3 D܂~uoإÓZ;Iᰡplb|4-h|{Zp~8A̲_tXr7IHȯUQKb*"ͧ_8X$>K0۫qy#W+WZMn(lIy!y0,etjƛd#ѡ/iE3{c;a3VJ*9MA=n\;Gі}'UiG[,B͚hx¶Ģz\lD elkIs(U?F* iiw!F (-@[6s Wr{Ј0MNu .8|t.i`14jFDd\' x/ |R[0N]Lz 2d]h 4MY~7E9c5\PVS+!L 7kJ4f5h ]q`G"/_~:N- t3it>C;1[cMF^(܋Oa,c(y*3.X%t3haɻϽĊۢ.7ܽ(y h,S)~0 !qQ>7Y7^ٍ @dF-~}}84m:Imh`60FG9O_yW[`r\5#+պC" pg#ҭTef̸eHYKI (gl҂BεVNXi(,|?L/;7E: C MݹN'9S?,]UCw#ob1 !Ng}ܥ^ouC#=.M$i@{{-yxv˹nbspz? īMȑ")Ŗa~ D`:9?{y;Mkr` QR ]ph\-ǭ,0sAu%Q~:жuK2~0q1{$+ E#TP2%_XXDl'?9Rz7Ж[Ndc1!G՚p{sX"N=)%G ֫(>4^[^?+>$p죪 &8 R`l|CDUՈez>oaȝpxiP[b zo2$L0=VuE `CH9E~/c5c>X[9n\DM1lb HV˜A??: + s ijMLxk򅧹"M6;IjMF(gIVm **O.,/srϿO7(0 }{dt$tmؙ,8u? LMH.M\ա)S\7}w&?ш'x =dF()@6;qQotWdy'JmP@|x[F[' j.0o7=1@&֨fN 4;vo+WC\[_­W( yj}=p\h5:ҽA嚈GJuc@Mzsd6QaUNG AQBHV<-EX_Rq^XHш3 vq4nmWpL~&Gw8QbwDeQ4d ](>)S8D)I˔g^Ā_/>rm W6KPz=2[5RfMi5FJ.~7b>up>FVJHF:؈RRmNDtz㜋MpY=Ƃ@(tI\'xr]o"~k3PTŰ:FV/A}jn_!X/Q,_CDJA#b,85mğʥ($\( 'C]s]UN0w7?KnaԮ9Z~g Ƀ/*nYPkhEKT;vWγ/% t,'aD\ASAZl*e]Y52HLGD^/ gub-ŷ+uG(incdXď*"Z y鹓N9NA5A6;UϮC ,ɉRsԘa3z I{[N ; +O3_o˜ ~)iv`gt c6aCzX;yZmNڜ>~R/ulC‰Z׹3ԥ 6똜}M$˯ x8%-辡#2;E3iM'#\0•2Zy2ƥ#^ 2wVfUHUBtB疹w+1uh9ni? ?4)kO_ m7D"%t`g^CbҪ6gfVp@K KC{;nV `\W 9vGqz_鲣A#wL+-U)ҋLMRb$C`=h%[(E%_[%z Y}S[bz._մ 3eT'2v+b[2kc>ndb&M>KݾsnLx5bOt#9_F[m&;;8A_TEXӎJA%a/-α~bkj%l+eY#/[B vA)ē2=(u{z|"j_8ojs/V+3%~ԢWfGnڌȫ~<"?~0 pkwӓ}dm,qNG(jh'PG<5Ф,Sٓ{bVC٪! M]rX}.$+FU]nW_6-ϛZAPZnXs CQp$COh,aiQrO"[p7~nCr 2ӄ '7>ko+AUns70U4ә+a=DI ,ֶj.d2!SwEx72쑄ͲtTؒN*בdWZn}+DF"NBʭB`\pVr,XS"lμ1i>i!sϊW1~P@ˎ) @$pFV1r9 ܑOD.,|! ssvr(zU5(S|iX ;$OOk@1u4)3wufbqcP^zWp_ې`294mN*->㹚eT[vHV7Ya-U>)Z&8^>[=)pjS9&xQ3i̧s@KGNJoc[wyhsV!jAC"xHSnF;V‘^Eqׂ.+x4ÊB ھ-e/J9ӦGF&3> cH*cBM]4xgkq~^A+M=@"PGڤip)Yb ^,Ftr–K%"$OFgT iϬMÚ13%\ j5,s^ ޟ0ՕIg'30wS |WLIx*b\^oY21syt]3.pK93)T:fȦy)C :YLYwEs"m.!AE\ޅ C=F<QD}sm7طC_.m?j. vK9U+Wvo~;&Io\sfz,u@NgB1QwNN 8y| SiI!kr3ij>:(NFBBQey4F;"a1Jrީ~Z9,˴/C&K3L8S ^jܽڸ 8)2q_8Bܡ O2 "/*lh~y^ƦglKZPLB%y=^kď YxGFxP\#7fȣeIc}0-)_B[k B=R?1LeIr 1!HAn-$k &-lq:8f;Kdh|جP]ɩ]r_QA; ;} f8ϙTGáJuN6|dHƢI&ڑ.<7ʬ’AYg(fzq2vF[ntl!k`hOiPSzB7~6nZ Qک|x>`:Dki8P7~uC5Y"60tAa *%w{·u/&!)+b~ r8ĶUj~cVd7 ! u\Pr; ;7=]xm0w-fȘtvxg$ )K. ?S/I7G)M%(ڷR(߲)O~FeNXV񱊓gld)_HaBq>(z91[i3$De0g~d2)5+!$Tjx{LƅV03Un!bar zoƐO!}L$bG Rh:oS]/;*xp1,Q"XyS㢕T-nHz“w^?̍abdȌm8?.3R:z̕׽Ql GND$>7Đo8VcLGGr3& exR ) [[ܔƇ?7IӑZ~u%G֌hP0}9M5NH2d,@ vqn)`I+`O:IJ>J\) d_:6-qE-H1dS~=Ew# *xkj9]akŊ hR}@(s8gdsL]P¢AF7U*j6 ZNEsuRh"CřOtCZ/!UtO3i^&H |"m6Gh4ײl?hux:3 /xCB+-VWA~^< u )F޸g9u:xߡ"urϘ6̰:,_, Ӫdalm,20SC1yƸYT`OdHبYK׎Έ,N9aSx6o*BsSb&lRBʅ@Ϟy,^gЖ?-.x"-}bhNKxHqqK1d6}C2^E7vq?ј̹SևB$61\V+^GPl :_eH9/eHw"oAKWC 3&'/U|jO%%5_Ƚ&GjfBס$I |'9,<9qN{OՏ# `--褺z_ujd+Aό IyU$EHTXX' d_.xrŚ"G@v`lMj@TB VcNEe`ry?nU[{vԡ>7 CE3t: `wm*4' ݔnUStZhH3;BOSmkn ]iT'&I\ESe`GA}zКMӮ5AÀʡ\*Wj%V?%7,?;]T:AlC+UمCAv!͆01]WK[+E[_̖D6g̵QLphn̍?h#T'U gItu?ܒ c`//uϻ64 sv/e8f*!`tG|b w~59P9M((ES!(+νvZQh50Y;{{%u(Qg sjdRgsTi(Xש4JTSR-׈yЂsĎn0zyCPIfGL=n9jY٭«N8bt>\ȋ,3I%b?Ib:hkWnE#׸79hP(Z8Ic(M!sMaz@8-%\˯5޸r{g>R EGLUƀ]vb$*3_#7mTFgv*w!V2)im']#pNc{=iX^X,cBc^n$0_l鏋 Ov߄Cj0Yʪ|VH*|f*((5 {1z/3$g = ?/ PPe&2I6&m0o'| › 7pσT JD*9,%ib-9e[AE-Vۙa`r'뢕|bߍx 5Qkoxtf8z*(^ho w"tNU#o좂W:[%E r|!Y̡fKhXtoUzvIY vPqc,fBfpcdQMyk*s.K_FAwkr%\Wv;fHu̎Fh3thl{||8pЦp QiʟK׋vͤKy%_0kWy%M، }:|/ڪҖ2'1̏+R>"9թy3J:<ڦ&y,LT%x_G" 1 1JaeJB!aJIr~FY ,ȅ*I%&3KUA#ځ3MWf z TUn OcSYB &{c 6SA7sp "ҴoN8#VuB\?R/bﲎI9ogw|1 uڠ'R]nC^?ѯk}F u~X؎ǖ|_N+];ޚKmSXGMeP,zh7ǚ |>N[h-h<:45Ʈ x6l^(!t125fExe&\)wn8LE9Ҝq`yѶzѱ+_7Dx).V7x;s˱  -ɥp}f4?Ug:MqYr%8:#{YaqBb[%+uT*)v3HOݳj&BJO#>i ߺh1{P)Kߴ7؊xЕK `M?X&ﶩcNz3@~B}bHUCPo f $%X]\aźIҡ UXH YG$殅 li1"EK1BCm_ZgrLeX *5 Y#<ԕßf#mh퟽,u!ŠUP.GP4˲} 񫹘P gO:xF_M-p|x'M䞢WrŀHR$'w$ޭ!*< %Y5gjP4 q7cs"sBa"JRyE+5sA;;÷bDeAO@\|tF+w%# {g k:D4~#)kN%q1;So=T y+>AF'8Z *$2@XtΌgp-iy@%S1d Y"rUwkz[)s`s{OK*A^>KKJtm9!~_-e-&?SL+ !N ̫VXyqUl93rw8<1 @ FqAԵs",Zβ~tbևuniQhfY͎=m-sP1g@5D'Ɲ -qȿAh߾pϕp._(G^oZ66RN4I65&}75NdrIƅ]DY>4>>P1с!`c>6\Z6F 4N en_o=V!}ܭm"g (SNx+%?0 p)##7/N޸Ryy{zO CU.+/w<b+0_}GcFRPbNu}U!um2&7 OkQ=bΎ\IL#t k1`aμpH¦sknˌx fg`bжzA9 'Asy㸦ܥfZv怰*{F;I'5jFaiU\1eZu>pHt([T!x0[, L.)H\ 3Xs$hP&:*s_Y tk{~%6g) V]zMfzE`yY^oM SܞܸLO,K3G7lH]?BҨ=C-NK}Ka ?< |܍gs\ܻj7FcP, O,Tw rg1w [AY"<] i.t#!4* 5#Ιjg)3Me`TL}gEc  ﱕXrȌ4V6B^֙;`qjs< *q0]_͒tN.rt212,@_pnE$6>-T^M<@e/$beuMihkl r+?<`hm4Miu5 ĺe7+~a: % dL3$HhudB[@9>I FT2 !y~`!ӬH2H"Pk| NP>vx@X,4&؛_ I;N:NK0;"ãn,vdUގK-L-GKjy8S45iۡj@%#D01QFbܛ `ﭗ0PeDir{lWAꍫr4jwǭAj]گV'5A-BROt.+}dGhF21m.k.Cq%5~-+CUng5FX{!Q@h.i3(Ei"Ihx֩AD؂CfWༀFtATrOt6:F O4k.x" Pz-hEUҙxXU|Df&,u {eIj[ouF[&Fo>خWU'Gs!#/F,k;遙.`ĩ(K6qEB<fl )Y󱚺(fV+'?s)&ծ yƩP_twuc+q>uIB5~@8 kT9x=q~YIm6a#[kو+ǐ.d7%0N[pk˕rYcShyIJrC⁞mŘl6dRTluN}/*=d疚R۾D;1X,hWߜ3LCh[uo |46Y~9^҅x/ 8CTh]TO3lYbAl5;}( Ȝp 9mzgNk HBrԵm:#0`OF]o+RymMgr?$T01T0ꑽ!CoM"Fƚ|﫜ڝfo$b#^s׽UzEĝu_=u6VNE(OdvJ?^UqO87iKŏ30' 2n;B/u !w^ZzgM$R: Z6tٮdk8{ vNv{`}iGhx>ɉdHJOt֐5/Nl =br[\HEzX]^5PSI[o 5 Lov.r5@聳Lo@N[n1Dixֱϙ,I'M'<6k܅laCny<L*pԮk%!ieL=GIB(h UL`a8l4#IFrt1bg>q= ;k}1"}p%P|X;HWuP6eMg,pXAb#?;QC&|2yג3>i. A'Ԗ0!3;˃?tOvk-%`S vUkX#i':Ύñccb&GOz^N'?>D? (0hو_Zբ {:S707Ư ' sѕ{7_O&Пs?JX՛s  ŲCC%+6ݧ7[YԃFjw$Mqaơ|.6@1L Y|P+Җqe6k "Å(~LDZGf੘E8C?SOPuCx@d~1/Ζ Hع|7< z5cn+ v܋.ߘj֟/f_@ J:7ӷ ~qZO,~jDFo9,} r5U'Cb쾛 =_ZU 1Sϖ%?$7]@NuA.P22zpIp+ނC**$F0p,ty80FS57}as"?I{yGѝ1Ylx~% u-_7kv[FuxZ j$l{G×i v4՗t7  EG8#r>F;*rwmIO\ԯAS;}S 줧l+s ?jy>i`W)ُ/,nx | fΉ}xn{%?転ҝS1>41 J~;l0M~û|ʜ.$CC.h.w7cNu Eh5=dp5c k+]5n׶ġoqs%>ڃyڿ4FO[ %Ş/M֠g/E0# },KU>Ȇ76]UzfAG={S¡E{?=#x紟@wHӕ]`^L,Lp@Y -I_rr挼#t9ꞍH"#=*3t=ro\}_;E7gn=`_ z>~hncFCr{!t˥M01ez/v;zVtR炭cvHS DLV7dn%)!qwe$ެ[Wсqn5"eUVQ Sd*FQ:W(sZ[d2Ȳ<>W퀂#9f(;Rg=:8 sYJ6Z60?БbJrdkpl0p\"+:ve,[{:wQ+KMp6Mv4%U:fO]u*O˃ע^0CH+(`1c.D<|Ā\ a* PØtx]D B@~/dƴ^<5hgW$_u$[٬~-DZTB(eVmF+$«M$aH;bD8 %0Ϸ Ya?Xw%ؗd6~SL6pǛo7nXsIVxi~(Eޯ&"j|DH)+I.7lƝ`Ͷxf˨34:C8GI2?Tu =I4 { 8aqtL&gY!1&qD'z$bĠ>W +_꿰@`n3[ v̻z!,kd%łŋhId7rݠ̓G([/q,g44˪Lp$Hbm!W/Ǚ@ƹЪ4']a}.Ea~ږx"h\B\<9aۊҵ]HqA$m%%@o>^a]m{Rfhu J{s+Y&CF4+@*g$*Iʷ'@5I`^o[mG_:w/=] )Nrؖq=\j [/kTYX[ǿ]醍TdNVyaLZ,11CU".F!~2VXG\\-j:TI՜[3Fg@ίK~QUU9;vO)WV)=IJ)G!#\O"_Mrؽ8p982ma-4.C]@!ړR&}-밈o:Rϗl ͝kE+ Bfd6N=1 O\s'r4o/m^#;DlQ?̳nD o$V M2C\A*Wêq/o9 <|e#A?^jPt8 Jx&M6f38 ,$/N"u*5 -!GYrl%rؕCRuwYسgzBU)]Emahb<, LUzU2 i,86{r4zK`!jd㌕99ij1N0W]eyFh}/de!!t)kI[J^z ̦ u1E?V!%s#_h$NKI\dGu9 ㍐5j]H+;ukw'4[k`aR GHT`*E[~"3 @$u/$yAx@& {V|]H\_0̛%(ݷ;z(q-f(< vH<6zoebu(R>T0dUƨ Cpbe4=ϳ!XlwQM x7bU>T۱\~*<~"u p^Cɺ> a%,f]W2PK!@e$*Xݕ剎S sS"TBO9A9h[#XЌBd"j b@7I^Q$ނ|*yk{#d ׺t-?R5M%o0e2n݊M,,>ա=N" H.2sQb+K(M4&fEu U儆}Ⴗ1r< P@EiSM찻zqrs ?]o(=lO V3䠠BեɅǔe?.':Xp=D(jI_F,ЦbC\!<'(]J]:c椺|@Dro5% T̵ix<<0Usm/g#/ x Lr% u깒,ktbV @GMbI9@CU#cM{aLOIY {>Pۓ8a)wmI@\ L:'WP5Q(efYL0H2gnl8 W&`^Hwf@0R;5}Sdz6^R7 bhу\x 22ik҅^4_4D\dXKT8w<`~%_ХaFI344MH^#.㚻Z[J׃hhw**W\Z/q'>RMs阾_n)] \õɢЍRXCG+=i#0*[8_7!9wd_Pˁf,n Io7_uzݒЊ֩鷚 +?\b,Ҟk7qeiVp+12g V h"6R3dnK٨7CL3hD)S5LZ^+fK2law ?Cx&Qǧgu\)_ *hF0c?,fi`&qce,*0KY֚酮:X&1*$HPGǛKw;$!. n=,U40Ş5d%LGY_9Zvq:K=+FX꾝f]%JCK@|ϼA~ҫˈѱ;(c{3L2# kidyB<'1&Z{98ֈnU,Qhla=7ɡΚnە\bR*rg*pNmKn0A!UYr؏O2On5 z^壯#TaYyF(X] \@ځ6sT[z L+\̹1 jd 0'i¼lW?bpZ)zsG?;}qF:S!k[ u=@mvqu]!W!8Rc8U<:6>\4p{""Hu@-rEl [\/b:P9n]BT:t4$un/b0Sw^;ބtqDG- aAB2Mı-n< 0{٭󎭡BYmZ0Ntgg1H!ZduS7bY۲&IUGwB/GҵX9B@@9?π> v+;ԇʵv.>kr|YO4^Ns0M +2#Re Z[z蘿ϴJF/tX2_i2ϻe c\v !%d[ ݤTZ"@=m0FN+Q4X.Aw"υ(x~S1x%l Ҳ4o2WpgY P>(b]sdp 2mbfL*YU3G x&_jkT_!Afm俳OJ"h?rvÛ( 5& s}7%*_+4|/( Fc=C _3+Q ~%2KZ62"25@f@ac8zAڻU&sbD>n %CGw9 8gk?ߨN\m;g% KN_@<,6~qeݮbm>j)ZM4ԮG*2I(B uPE{Cm.* dCiYHHK3U/uE# Tm@ p(z eGa끃!ou~inUJ|11]zImB6+gO8L Q]Gӑ:fBF\A[J(B*DCCCU17hDG1Z?Qu\PU c± 6vi:+'$™M LVxS>#:j/i%r.2_ ;Vo6C3K?;u、7_7Dwc9C&aD1M1~=cɷ)ASED2H3 &!R2F(aeѓ tTDr8v S j 3]?$d}[ i)m !7eԌrLPdMO5ؐFJݴZ <YCN&5))g ԡ &znR׿ :4>F 3UHi˰Xwbl`Bt^ =Dlh.IXyvdCf)K֜5EӱsrcYnDbBS}q- ]D[&#bJ)@lYc}oA#סYNzi-TB]nKӒR>%6jQAC;*)},;&vG ܝLѕY|h*zu[r8Эc 84g(ۂ $DU ^%E \`$^AھYksv@Jے TQǏC#5$ S'Au5ꕯ OBPwD^Drz"(nO9RzzW[9k[m~CX{30!SH! RN;i13c?LY~O탭࢐U^2 :6CPtQ'C@58Q>rڵ=swj̫b\S`3M ES zg~Tx,&6 HNfpYڳľM"x'u>mym߫KF0es(C[ L1 "ĽnRZC?uQi)u.ٴFsl(ox]h4ʯ 6+8},;| j )+3 x&Smr!u7(x@L Z#lG71P A>UקI1"ʡ'} YV7)8zъ ͥ1 @ 3dplVM11ǟ*#a/qͤ #=#zۖKC)+r'g>w+HSahIؔa:IB⋸y4^ů!ԯE e~ m^a#RF<ͤ"yG$m뼆&>q& ?Vl ɿjȰ*ߧ6?L1K@X\ 3__Ew  |h*Ysg޾IW-in*$3OwF&Ť^ EۨA+OhQۙpX/m -; (Q:pu¼->1'Iv9y~?GzЉ|SEGn,7]d)k@O| ,v2/!ZMPٯJX"~dl*leg'tmVPvLl71VѳAM@J(ߓOɿo*)rm* (9S1i7^!0?}B.azDõ~Ý*rJaT"eyfџY;9wL20-:Gf ]>~ee_{&oJCz Fƶf:+{;ʫ 7Տ O!!bw*]?S#d7!KA cdb(\ قzwVw.|so:#ud?w?05i׳߇1+> <U6y/c5d~".^=| i:?HSv§s Mq2mdM2dz?(9M?A)P`s?_RJJdK^a]hx!a&\/5یE%d<, h; B•힌wM%Rb"ҙedqW{VI0⪣$0=@z$8 {tf&d un7;t}GŸY9A6S*$ܢnZ]F2"*A\K]8Eq0J;Gl歠UZcq~'*. 30o/]['ioPdqݸ ?@^ThiAfpy^ \=u M$t lsօSQzMWaĻ7ei׉e"IPP RiaS p hr7B_/98ukvCb"},{e߼7==؈Wݯ n.&GȊjuE8>B}H&oc-zJ'IߒsY͍BFkɊk}lL-P ǯ/HVSS!ܲ5'9ס@fi tDj1ޥ%SgඡmC7Tv'$w]wZH:sPYú Ёi;iSg^Ѿ3h2زNU=zbwe>*u&*`< #1´I6` gNMwd]}r-@/:(q@.\0[Yc .JTa{ :NH> <[O(ohsJlOݙ!S DNҢ>k=W%άoVbKUz0>U4YØ0Ľ MxeT&^(3LZg?w}"Eq7VoB%ȣ8 hK7&P@wC!X{|K{8c@p.Q+81hV$.*]J[8Ow?GsiN(yU!pEU, Qa1 >%M+cHǣE d] kMEiZ~wۅ )FΡ5ٞ$Dƒ=Sat5 칐E=5#|؄ &!]"2--DV-v:8Vl=bhx'7$z9ش)2Rd)“^GjVr%p_`hh}Sod>. ^XM @p]@n;m*b˗03uza}~rģoX~ IT70*c ,|!7v02"ybNC2z{XhqO:0Gf 0ϩdIqO;-鲏@t#,z{8\$ts_~xm#RҮ5wDڴ+`@v$ȷRYjO4J*;yB$ml8d%N\P)v/Ο+.c1y7 Z:7@s%_A}X A0l^yl+eW'i$X~#QTHFi8U> 159t@2fݱ#^WW9J0 TRjhy@mHs%ҘokPt.&8JzN{g)#ʹ31dlqDTf~5RZ0TRK^ Q̗iZm/#e. t ecV!j[MCn?&&!2֧7N % 8N~:kϵ\Ղ+e$ LۖLKݸ1x %L +^lnAzb#_!琫Ex Kb=*ţ.Lgh'"Ir<5ӹX0Fx `z7d2nM>%k 8+L^8ؠ"j`3aG/ej1g]@@RlDuOvT8~h5j [BAr;)ȥ2~X$ym$W1sqģS:.y0k?!a2{-F ~loN.fB\8TxUX""Zy'ʨϘ+)*{{^UIcpdby\B&qhY@B&~}6c!J¼&Y z(t K`Ht\֪Dc\k*1Oac]x\0B5p+?!}*2eˉ8k5~w#~ URl4T֚6^7<)bϾاKL!0Q'xV1 3a3P3P¶z; MZHʹªP OK;&Stuf`GN& L]+ HB`*%t-:u 9eCD u2ٕdzC-X2%}H6y#)gkUCx 1rƻCNF"kl{N7P [7"avF]p+PE!& Z:}٭ >5#ڹ$3GKMr3w8î4r&ʵWޙp^Kk(㼙GzX΄x՚KQpۦvL=]cH9X>bvfFW@ܾzS}TKH%1;31[ q _~ H/e'B9 ;[38ΪF,-ע#wi iqsZM~Nrm8ԝ> 4`:Z._zlsXyg b"# N\-*{@Cašw~*nhKʺU`jTAKV㶜dX wDg, JUq]]e(39Nv(n =AKR:$4]͵xj;}G*a=N>pmq8Գ@}~bo-@I/37+Mcy=&Vfb_ [1]b}e#HeCj14 :VEM1u s}1hpmK)l$jD?t&bGPSp".Q& ;ӁgvSπD9GX(1GA\#';z"3!G58ʓaa~'l 9^) nÞ.sUL#ا]E4E*;9P%$S}EH}#ccr;bAabN/U3q9kdʬ9|½6D(>N m0و ?`P 21B]05yYa Be$Ext](f(/w* 4֙Tf>| 9%/N;YMnƂi(׮xc` >ɐ)8'z$8`R땯Z|8UP{S '{D(e`x+/Y8HPKxO>16#C1*5@q?@f]/i#ȽE-G b"+5BAWYВ-;5^5)ͯOO8%^LuWSeӈ)~PxrFPބĒJ{3M+Dha)aԠM; wx[|[ޣ)ps= .h+hE6o$Uu{xn$A_t.Jv~8ķڀ-5Bva=b\"gm>5KX&6LSz}?z%},Jǐ/qG;#*!f2p?w7WPovdNJq|6Ҙ= G:k_K11NROK>/3ۼ$& p"삍(NV4I]KIѹ ƈNJ-knJ6g gB "8,߭󩷴(zs?#Cc:nZ"֟r{ohR+24^ +Mކmn%2#S Xe}4*/lyɊ''W矛*zQwS.:]|97x6MT棣MPF~?N[$-r-(:.*g 3\N}SVJG' ,u #ew3ӣ ߬6B(ޔBFufi8 T~üLBzƀj>w9,vSe9#7s7K `$d8>LIޝb-"F[ },ůf.Ffq&Ĺ+plL-|c 7z7 3nܰ &eiJԱn-P}_joџע<]@=T~8CM7RA٣d$#$ \Rb&l_0!,?S9&AţY٠?$謸n܉Jg҂T W5. ">HjSb7$@J,,Y9>SlUi U׮{tWd)6mc~nܝ!B XrY[ӳ3vnNwI 2EdֵlQbk'xH4~ɝǖewmyHuqGtcT8,(X5_ # yf]Ӝ-%W+?'4^<|$O LA}^G{ndL輗9+= U*AxT0Ž@U;G*`~(.dCI\}H#Z:pBhˣv @I>wu䆤(t 2Rcˉ凌KQY^-ojBV7΃ *Gcu@"Zd}ȓ)Dhݲ!B\֑vhMT `LCD]/Ш vߎN&sX /%,C5<:J+I_<Puz\uW|jXؕݺ "0҅WLS됟>ʋ]2Vn˩mV N<!)4-P;yX2(4e3_[fո8HM0+0yE=N/cȾj9Đ$畨>>p4 -2 ?~? Ճ;([Q ?^C8 y}<$/z.k'VիYK3͕Y)OtAK W#șEƞT h'=mx1d>]㮍}l񄣘PŚrSLG,^YEPp/.xw*mL)w7Ѓ9[/!ŗ(7?Φ|/B&ͼs>ET}PE$wϴ*X&jmg6`"NhwRM{k+KzoSA4PLR}E2<^fs Py$_%EzΨtqB1v+*2d~J[a8v j`f%!+]cl]p8چ!>&8|)#PW3jui*2tk~Jx0d1\I;]G5zL0ůAԦ`>FI~fp {ďWѠq~\>,Y;b(TGMVN .v y_yzY8Qx82*K1r3,9f$]çLyMDmfu2-bFggҼ&;Do -Äve%s\XlIg) T0ZvE_9DžtlxI3A,aG2E_/Ɖ^qge2b0^3e ϗGb]&˜IHA).󾱒8*WН3J[!_Sjx|_oN>=07SAECcSH3쵃-Fh`NETLx*f^2-xهgM x*?\*׌[6?[#@|s "[rXEh=&ŎN+rfl&^=F8(_\aX@K;lyqyҵp@o!sUO`(i:1NxQGft.c ^ AR-rLkWh $ !}\ w;w)o*Q1(&+؞qR [2Gn)29+ \]viΙZADž+篟Hq"+HsmhS[l}g)|`fxB-dh$6%d:QmH+J'խ!0GOE˼Ls0S3GGgFMw^tISRw`Y&[J3gŧ#M 7yĤR[ ^7kf@PO@:iSYq?ƧA\+7 0kj3;5N 4׸? F֐2x0qn<,.gzˬ?.8qd:GUQM863 ,v*獃H>6V85)#rxB~sig8'B:2~%UKs+v\ߘLZ,"~6;6ԃٚqƓP&N`Elg"OZb (D-ApZNq$ޚo' 폔JKy/6Ơۺ ).=@~ M;ς=YеA xArth&9a>9wW}d:R3Cc@)򖼨im*S m`<|McX뙝kN%P":d -<+ĜY>P泲Qp ❎i0@AK66Qz4d-uzQiMߠl1Xܜt. ŶNaH+/^LVEAnî0wAN1!9>lՊ^Bqqjme!ѐe{+GNKNZ.$ 'gwI ,T=8T`:rR DMkS,繣*"υ @NTˤ ~kRg,pKd0j+ &CDN+o!1#(fcx8#1>jم!x`ۀtv8ߣˎ=m~r\ɈGqtl2 J-r%zZ'Wם |u๘w9o-x^F*gֹ4}`DA_ KƥDTd芶?=3h(d*#'O9=V8]_?g9N,f~^ҼuH[t)Cr$♻ELAռ*cLr׍E:=ޞG2~3 :@:a-gXo VSi얕->:Hp"֤?Wzc@_;e47fNtieO2?frI8C2Յ`{M;&O.IGGE-X}նa>R_#Ⱥ/Eh(0GzۄI.#q\xi?Fw>iOOR Oy"nxb90Euފxt6WƟi]20%)6[הڙ06conj%rG$xnuJW{b< ͐䓠F@M9kowCΧВz~gM>C| nK7JQ9Y!ɐ=@"}/8+>0\3ˡ3|m|8d]HjfaO.ȭ{hc$ -W"X94]VǬšgwGՖTء)lَ.l,wRzǜ*r@,z m O}1ٲggkAJJ7 L{ x:$Y:}"-/lH<׵nrPm+|*dCiW1Dh(6Rpaȯ\SSSϙ.r<:}"̹(~H4ڕbo<% l6@L)cwFEx wv+ى2mUMc)1c8" #NF讆l.4+1<(#Ҡ++udtnf4ZxUv]id:~e?K2{yϘq+9)h OT ddM4lEw1xa=DĝpVēXAט+ TΜ+2"oqL~?iw$@ Z;vj05$)^o:]lc XjZ2'D5j+~ܤhBsU7KU&⨓Q : 0+(ZR`#jwyo+4 nbOPN&P=Cxw,s%oki{KlX~YN07MQqs\sY<6(U/H{Y]w,`ֵx#ܘx,:'i)%H<jQ=[ )&& ٺsKvf.R&B.H+cףm-KGI؟"9QZkZ:-em >}]Aj 7h{c b3nvPrVCosz߶*aQ%&8Us1QZkh[ECWAֳބ?}㴗mmOOm ZC\(xg )- -weA(niv|9 әlo?OoM,oymy*H L0q2C[[aMZ y \Jb$a# | !rysrL; o Y3&[p@MvQ|OdΫEtł&Hke%s%BP)/KM[Q-ߍ~q8]Ţ븶maNskɫ`X_>BzϥB9t*6\BGj 1 %}HyuL+}╿qo2YO}w dS+Ȗ±,Z5CWbeʠ#稒å*BfQ ?R w}TZ^HAHĕ v[T/ynً/Qv@K@43Fx%nLjK؆Σ nV@Um OJO@zDc)ʠAGa^ i.+1}+ 0%` iYSkzG?6lm:hS Oް~1֔0&u_ig&3T=ܮ -W{52t>]j뎑H "}/Z~xqo$+g^,[sq_.,=JY?NioL ۸,"OؚZ q̂iG"]b {JcC  Kylq2r9lqFS9$Аj4}X]-$)}rxE}ii?q}`.*jѲతKR wmz q0~(P7Kޓ%1u {j"4$ğ>L.l[hfZ9Dss>x1+ 4WUbXà:ޜ7C^-7ٗ &h1\hMM+-b&eUL:B~7ex?t{?8$/C62Ve Nn0V_({$PP^GLF}r,gw;r=$^v/20C kR+ %N4҃XhԻGޫ^9+&~DvHx_Ŕ:n6K?|$Q,ې[“dk{{tQ17/2an: sֻpYxlYvkDWC(I]0ök0%zgf1SOìsR N Oc) +cUP0iՊDARMAQ%Bc$*DwkaK/"Guse/F0G''h q RD9 ճ e4f', X7/̛4S0փ4ar}/6 0-gC(P%Iӂx~..1oaIyʍeh :p>4U?KzMrE'BO_@n@*Lk@A.7PAaa^ G6FEA`m(#$4hPF(\^ #|`+-G|Ogcՠ4 rinfEҲ٨ADN@ҒgT:s! U=@G&P?))1M`g~.u݅.Q7lF?Ƴ^.%!E݁a46* ]bߠ?qrt<X54[ j*3XR|DxVX%q & Pp(į0\$dAXѺ)rHd|_ZOdTMjrl\@y3P3{U0^5܊4w!^ 0\N k:ÝZhD2on3QA^QZB2k  gTq1XMhrf瀼QMqʜϖ!5o<?N: P7Uy֪8}Ս\I*Ҏ"*%wa,W1- |;fNWivvV8azUWpFmk֏&1PR.-1ރQYЙ *Tm޵'4NaMRH }yv/</+A ꚦ ɡafD~3S_i2 'ݲT̰ FE7q]ZNvxsڮERi Hq1DZ>3u -PJ"? zU]j"ܐX.7w^/l*6[Z-p\EJUf؋h;0E~l?!} 1ƈA >Xd5?-#&š""\AC=lX|!@#R0z4*i݇{7't|#$W3;mK&Rz9ob0PvtقXǎu lq[BKesuvwOhiuQ U%s#MpԐc=N_˫7KtMU 0ҩoGÆs+|\ٌ\ΧcMyċ*L}vØ*u7|Ѭrŭϳ bH)_Lta%t˪;Òis~sҬ,2Řc[|r*8mNkۘs?v;yk͢4wn4{| ] RnZ:3$ڽFĖ1Wd'd*$y2_aVӳaP٢u7OMpE@@2}YˆeM7ɓv9^Z׆x6/POPwF `a/bz-P]; g~ðBO?Qm^Y{gxX=k 5^u(s{Q&*ch -uxi X+JU';AO2̤]VX_kk%Jcc= j-dGG~ 6{\]#AMqa"ԝmmic"Ew9[m;*s{7XAC&ˡPhkQ3o D VbKF?=ITOyCH 2:_[SjC3ILjUEDv\GhdЭP6Ȫ9)NY_ECuPc&B%OY70Dɼ|T", `Bk^6=ċZDU%%L;UK ,ẓ% ΜH"4 }6t$; 1U,*pB^ɪ-jN D ~>\78iּQ5Un-<^ˉ/ܫrN!u,v-}x)"n^u(p61NyĞ9뚝E(kg TV TkPplHPKZӬt׬?>Y"F -5AJo7T]%81 [<ɖeT) 6<OPwTDӞNpLMDQjǎHZ+H{*4ź5ܫ4;>$W[/H8zNv>`"?6tsk.R^Mg17#07 vmyC*Zi3|"U7\/OJkNX/~qV3˂ B$FleT'WaTqެ65ΰ=莺f>U]pŨ9 Q$S5 ax =^c-[5PN,XV/֓hT4M)x" ;Y*T<2X2tdq%l >Ko+xLI ,9| e$<[}0\iڞn`Q7{=Kۧ܆8~dBQRv,VءMo-TPb.%xm⧇čgƴP(vsbg@ t|a߷1z/mxA;ª֧i~f;e(1Cs*XU X%TtseU+Q1n5zO %"qFAB<OPq-]H {JS~ a#Z([0n(NN9&b~--v'XHy_+lXC}KoNugw2zoLTp `\1)p#_x,^IG[/o]7!L=i\ŀ%Ezx,D1%_,)1|H4/shaÐ࡫2Wۭ]T FGPf.)~|h5MnFmp7#= asBy`WS_eH˚E8/RVi5U5O>ִjgBa/RֵőlG]ro) 8GCN[p !KyV!;g%=Bh{雏5']qS"R#֚Y(>x+|RXTwqO30W@ky\ys"B?N#- ]1_.[Y.sWF%mvYFD6(N Pq4m g[(Z8n:aq5FhJ;҇iqLʌOY![?Qs5=\0l(O ]M"=Cy(lj7 ,<7>ǍF0[JDDIjg(G|P;xn$F1=W}J5];!;}9C82_T0&|Fp.]jiu(%afhLX6WVݓ)ǂ럤ȉ '!):^ߊ%<"zNa@0_٭HAawG_61}2O))9T@%s܍]:5 jw\N!k)XC_IǶ`Y/j?cߍC&}!}X<@_w<@*R&.չk k) u]Q]jxY{ !O=[]_&=E͋(96y+ tk%hZ<9$s]fjnQ8X;!iaE*J~@JzbkD"0{ .@`8kigd oRt!bhP)Jw= >7lyΣ'jua1V cՙZ dDsx7( 7|IVa3mRta3Aa_ie ď+Q!Fy0KuK$quXȥ#?6[_YOF& k~mu:0 -}LW$3Mś{;6|`yq㰭-tAcj)m u*p譏Ί+d R8fQߤ׍w#D+;步]\bm.qEYW.hR{:gHYbj4*Ͼb@qȴ&)@'Ḏ?0`cT: lSi9njARRR9-D{%;dBc_C)܀,Op@}sE71 g/EkRHs+]ZQiئ0ޮ_팃}FN%y'?ItX~<^7!&3=:8)ܙ~-ˆFUE?mGzO.<1ʺ`0gy_Hu;+I2fe>Mn $WWѓ&⠊=Hؠ2W\4% d>԰vdH}-qs\5eGinwUH745񰖐5%fLqj4eˣu8$fwh˳6L}< ]g_xiflEVZ)ÚAȿ6V6kO#dîͰSNk{wrbxQ@Ze-lڎnF֯BZݽRؑ:%K_\:ņ >'] ]YmfU msF-1Xe#߫sUMf5dӌe nCGA4B[8„@ %8lVMX|>aC&/Z2*'t-ިW#%/dL98߂p3K]0]%&̖؝pU.D+m_WVMr% IEx+5>.2s@R;Fn\dMbTk1 ;/f{pʶKX_j$#C/pڮ;(B{$tv=Z @ =3֘ĔDKy nmqvzKp_ÒvL}7¯q 7ڧV AIΥItň-Hɋ%q D5)&#V&~SfӋŹ6+r.C_*DKeЂaI++?AiXQjy귆6_I!Ka 0>ckww]Y=-GqG/g? k29xW=7͘BV*{"e0GTbZnPx5!^-rDDO:˸{HQrayhiҪHS_/(BJ@iTGی-{!;pn8o%|Xl-Qmຊ8,Ա! -Xhhtfʥx-hU  `Y@mqnz tt8 j\JFknyysVgF_Ot:Sa{Yٛ0g\ok=h`tǡ&ۄ^uz6wPu h끸핂+IQY`jlDJG?8c)$l4<<-;I*y'912Hy]1Sje ΅ºYgᙈMSqG+# ^\Gm{6bll+ k_VNoVo0g?.2|%>?,E>P>>ᓎ~1SLN)SZ`~Q; `˃>i)E"NwOz8҅X\>5+ HdRN١YJp4Qr25t%]:]& ҇*?*IOOc溒]e-a^c:]+GU7s۳;oB3䤡kyQJ aM*˺%Ҋ|1*Iȩ#[X2X({شO%?7UAe15mSil_8$6A=/M]^1]ˠKK?Q[sSKMPzVgz^n"3c,>lC! ti׭@ZEb ~Hf[ adsA ,u dXzHq3]'1er lrCڳ0v Xf[^7Vu7G|?p|}p퟼{NtX*”0eەjIyg ּ=U<VK uq0n,zezԕ(?p<52V[єs-uǥ/hJ M27tzѡl x3o1♊kV Cp,}лG]FQXNpG5KX;gKtb7cN )G(Yq@ HzQX|ӲJ]%3Dd)LPnAgCۥFewx= W8븭tHƞO8anl;꠾##ͻSL#t;W^\h FW*sz(B6hO NK~c!`%\χ{Dg㩰\OҬ?,nr &l:zVZF-gC×/Vզ6G :E5EYu`F xm4KL.JZWQ] 9> XB;uP>q#?KJ 6"\_ȿ#75WB8߉\dⵃĺ_ui_[-KթX llQb2;$ Aw'-;YD%9f)X;δTї )mMߤzfʣ OEN5jqc<\' HuB1ch'7` Gu!@M;z=&bWo Y$6Ew Aa<=،C'Љ0 :L%E0J O!i E9eZݩqxs{C}OXv [05519yjj7+gUZ>@\ v Qh!@_pɹEGdk& V*EڸO=^~3 Z.ufY;UIlW󹢈zaU%) وK)ՙs ײ!m R,J,%Ɓ[W|T]OrxGuۛ#҆#b\ᑝE'lUt^juEw;XA{S[~h$h(޷Z ToE8j޵Ih4P6_9rL%&]+`; ʗ r⟝C83\m|}nM|*D!D>yW rcDu ]vl78f󷬳o,jgoPtJH]wۓk\n_8WQwr(Pk HO+ ljc8 (:f3pڊc?=Dh_#3!Bdȅ Y:kW{ 88ѸrɐXAQ׾66I%ͳEASfn.g| Ӫþ Z[C+[P 7z%}=MZv`U)N]uO`VjZ\7>ڢ9Lf Y:,ki{tD,G f(dosfaE.ho'ʞ% Ӄ:f*X}Uő^b x,LP__PN~Z8ְ(5JZ=IvPR q6Xl2>8q~CS^_OֳeZ?pQ(>9q0tF(-ZD48wxFPz}*1f!xT!,~wl/d$ 鸘We#1K*PN'*X{,h{]`f̂=>[#˪yKQgLg_UfG<̋I?c_#L >@0ԖZTr`7cK5JDŽx eHZAzuB!Tf1|Q~/Ȳዩsyft?~x-U2%7^(j, ~qD%Gr,}yА *^1&!ZDKA+YlxSY o ylj|{dսs4П^ \VbDpvا>8|wb'ZVRژh6MB'"VDV HJS`J\̀Ëv0z`)DQ*Gj7"Xi'Q|PhĿU>WbC h1*B8ucTFfjuh{56JsKK-p* GLYo֑ A0͢{'W\ gC05$q]L u2<\?p6wvs ^5NetS{ ռyg|,;nqu d y([A4NklXT jeLPVKkQ9 )vs9_xj8Ds%V7yң:'"j営z}{!~b^.8Wރ`*A_ /cJ$ă70mfMw 3O14䧠pV=#X_뻡`8}wz~ɪѐT̛/ e\wz #ܜ5عم]#yqo8* wEեe>1xژߗBUI[ 1jԯUʄU+6}O}oZ  <4h)dYS ƤG_|<ꟍ \B"ŧ$Gkl NP/o)QI,HxD8GD&k/Ng݆Q #8zNX:i+Iyszo!Qq-#z4UVΦHs"gA# A&BS<.?)9B^5 |u'!~'L׆~.i_&6"j5ґ}hbk.i:R]㽥 I ngn?>ak/! o;4[g^3bBKZd&\%MH(2!/0}%f)|XcdžB$ %g5eb3|q!:wȘ‘'JN 4bמ$`(ϐ%*sk~}KqҔsߣNE9ϠޒǛ9Bo^,<VRހ:U{ND3t^n4Ѝ䑭r%1rzEvMwѪ:H2Rʰ8{"9r:0 EXB- [.p:x&sjio-&gfleh,5\s4~Ϙ 4zfNd ӿLOLh$>:4k +n!0f+஌:^=l8O6U j;J+ w>10:&@⦒u404khChRnedFʸU('61*.r˷IJNŊ^jaٰK d;T}EXURHOks2;Rk<:2]2MffR'}nn!<$Zع 1R 3 ;ս QڃUdZcnԱ hhM/%?݊uO囜8"P3Mh1-EKmJ(=w(bh"ARC=">hN:=B,:͏PΣzhE7}m&;@ʡ;_q^6v/.DLģ_I>Hd؋x'HRwz yZK]+pa!ȿeK—({mE.f4@x0(~thQgѧө:&;1/#2q)V!$nijIq5NLpZh煵V^#:DA4Q|U[RIpkG,륰{T|$̮c/eȕeEC(ImBaڅDrz%ȑ _gVi a+ Vz(] i8O5 &n%7PJN ĕR^ ӍO0kCh@DgLl-Б0tq?7Q'G9TLۼl_Qƍf]Ttu_z7~Oƫ9Onyik9QvϘ6Gt=T а\ s}n kM lO(.ma~(ͷt֘h`S?O~ sxϋBp0`ΠЌ(E)Z7<~О4Kx{_9Φ"%nI:IݳزcP{wk\56YCzGmҷhjS[LW81|+Q?+cLP u} '4(QKg7@kQy )_2F8bVN?Οx(ɪLuìWbſo~ᇭVkK tUySk HMC=Cvn@-^C牻'a0u?pҧ6Wp}Kܘn [>9oeg~jy=>XeR*De?ԟ2@)c2ȽKM,\=UXw:b#%8Vӣkl ~ʛ'|IN 9/X6'('dx{҈# IK};6x=Spcb'Z/]cJTZzdGY>"`n9[4ʔQe1[lDRxEKjfqi95qk]8Ɲ[_})%trg鮁yg瓮f?sG%^2maH̱=@cX5QvG=d,^#_bkw ^RX2r@ϓb9[S֌U:+8໤{8$ה5;m@q7 m.^h;%LP|<Xt`u'[S%p+-߃<VՊ˗Wq JZ9W[,y^K̕]fiCj,fegS]

    ݇t8I=E5HY"r}FDK)@YbÄ)`]eoy6a KHJP*NmU\ΜeFN \^B/f핼45*Iˤv|ݨؗm"Ow<4Hz,\k;opहNT, g*4`_9AE$>~Š!KM1qK֧u8,:.{!quƞKhwئ`?< 1ݮ{ދ4PoT*UMi(1U\?CmUUnX1(SтR*N4KNT!Da4 'XX7$xnQW9[)]6e5uʎ PVh3?5^tg;ij9G%z%AM&m&]c{ؐ?*gJX.bd#h}Lʨ#m";t摪#x-"MD'hWMx,U6w=''NV%r]Y9~vt8-dNk_p1/Jmw&8EwfV,&1N^98QMP^z3:LW]ٸGӫ/9.y,,h] J{89GZl/v uecԉUrCFǭC'd,??}{#7usƂ~ {|ް˜wr 45AΕ4Ǻ!mE @?'1# \%4=+}C9{t[&Q@W[{WaWݢ[)"'wlgkTvT@`1餰 dֹmʼ6=D?©0mʶ |[G9N ЁU+7`Ȝ ._$cmx-C, XNH'UL\*S0=jA?Ν&]rQWRs`'uwWʰˀ1xY$"0IvDhFdYZ 6jR~:˂Bdhh\V1HeiI5XXqRv2-B9`Z'e XMgf$iC6AI2u.&]#b5EPsX0m'gݪ5iU #ݙjmzNRVA|qgWŻtL)YICsh|GiP{ CÇ!I2NٹgF5::_EyAJAEA5hS>"U&0dfJ_Kw!+}|yE]f? L۠fXbn{-ƨu2Uj㊒]Ѿϳl>%'akV?a&3>\}F⮎)YP>ZDcfi%bd-i8d#7~ܤYEaJo= i/7X =0iw>k6tBܙm;h? e)[6JU7I1kewl߫?+evHme(xyo,ceM~ ֵ֢jie4oA2hQ7iBT{}v QeƷ^u< O^Tax*K*7D.#觾#z )-Yqe#5þq >#c˳$95 !8楩+j6)*5Vo|gyU;ClS"A6F~d ?Eim0a0'ahE1" ѷ۪yL7{!y~W=TMtEsMmD¼]yhu lV"_ЀҮ/9X/ K_|@b W d{uAQr"C-8UA2ܽ]KBa}3^Z is;N[q> `\[LC8f粛G+4.ft}@ǹpM``1)7n͒7qYoqU[x)K 2?(@޼t,vA 1")j8L;)w+U~^҅*@ Z.%-Eb_uJ!K-N{=%Z4I5%%8" *܉(/YKUBB䔱(rSi[/k:|Ω*;%*6P.^Y (I8t%ICf1^9ggNLO"UuLtf+bˠ/~ա_F~KE^{9+7n'A ŵdOۥ:ָUJoDBD !:QP|/r_ldͰOt5[QZ%S삔'f1 <~m\p!wfr7fgvdKft}G]KVVlL]^J^/gbJܐ̶Ϩ{Eap[8kZEWn\+*8A`w;5 Iо&?`g}([W*uvfK?q#DDm?#e923;@uH vP\>HMRأpϨMWh (?c|s9``4hN(W /T !)D Q>}`ו4: bj* 3 ^ME`̆+bזx$Up3#ZT)*|N97ĬI㘢S"*/6:>RY=,Wp5, nǗGDI%@]m"n?\0ddHTPZתfqTafl@$lwh m?ވi Huv|z_uQ0"Qcڲ=72([P)WA0miDý^#T=;XLܛ3Ngm,N6bJ3UjNׯY͇~̥ٲB1-XI6Ӯ3k{ c>r߹ȫhR͝lfua}aMV o OD\+O*qByz"-f6JM9,Ps}kתq-^aϥнO%C\aÈ@Ǻ7LRBgMutY3f c#y tʉm">'tER]a9Ww˿2IAn|ʥZyW_B<ҷ~^jT_쬿wND+KŨu˨ 5& : ?y{( ڬf^`!GKfR^ Nt[ēE?}%Jr %&~?h07ϥ ˜%n"f.}c/q,{#FoAOx/鰖1{OfdC2A$R>y@`:  ^\F(?aGZeuW(bb&Wm_ڽqLɣ0,dK|;Ox {_1d+şڹAvs|a X)'+$˩9M͚nQ.4@9NL7]JFCAe"&ܕUwnb-V(̩OKmAL2)Ү#f ,ω8K;K|0q(1BWKBOvEڊ€NX!09MhIc_9ǻh\[a|BGJA͢ gI 0M| Q;$. O$?%:`~!]&w3~ )zX _7!#1?tW]3*.vDo9Li`Y;Md7|9~ͫȈrޕ#dZY/6rr ML||ɖa ,owpbn&:ib߀sk E,sGH#jh)+:N X_{uH[ \'%chsL;&:.L$I~|t8(O LT7VJl'g?N$ ]˄UN6h  M3?popK(u.+\wge B`_L:(ڜ:e: d6(I{/Uzrh9՞ezMPO3nB"ZX +S79DA6^G[iYn6*Jo}C1LB:=yc얱&b8:=7tzIj[:X})T@V:]mu}~_'{Ѝ> X mv[r.*gU|)ȂQVߠ8lߨLN f\%ą= S`˓ϕ)`LS}vj:V) 4~5]Æ$SwB˺L@6cdx}bJxN ޵f$y`ɔ Q?޷izGc/s>Tp  `eojn Qk(ċP>4h.6>[e`U|'rZH}< 6$ignimB YeR]j/Pkh ڃ~B}º.01H6f3QŒTr'2M[A a2شyi&ʞT+6ՁU(V֍'g$1/R!y\H ?\}m"Z|fQ%&9ޘv raXoS$RRp"uv@DMo-EtWaY 9\Fe#3e:!|^O PTm4{~jn~11ȧx݌hOGŋOd6Y(JƨEߍ;%@uρ6p#BZ.bZ?@Q7CM~11 P@Lz5*W eB%JYfƱPļ<'+KߌAjQN"1Mѱ|^Owey.s#?qvn(F$«Xk@}P b_@v˥œeM8gs`o2Ր4Ȳ*]8;Q.K:XA߂!\̽u|نav^-FU+:'wge#l` VVWϟXCK2LcClڊ5{ xn`/Q }]sDa{4-nƗfM!g`YHߗM9[jYn߈pQPqg5^oZew|A %uyS/u9:&s zW'ο*փ¥ݜx, 4bJ{K[͔PbDV%krV@LX9MYFg2n̰<4yo$H+k%CJ-kElX<\^ IʈŎӰʹ8A@EcO  )`@!j-KZi?T}b^Vk90Dhj )6G1<8 ,;Q3Wz!p>/AT콴c21KB>JL>(T^_dvɄhWyIh;=f{ T`0`A&i:* Mu=IKJsY3_b`/a3#,^M^M@D`2BDJz{ظJ=6w bK TBN2O(,*ngDiLs7mě;/+Fو4 >;$>t&{}U+)p BjArPWB=/3ϫҕJvL-ytB 5Bk x9$i 즷\p(iDy)^~bmlG,ܚX2& k 2"fT٩:eqtq~jx:qA~ӣDellYOJ yWJګ+ ֭ GoGAZ_*.>‘oBܾl3p0mɹۖymi ͵i`˝-G_w=4%n.K*`|ifEݵ=,Rlz @bj]FH1K"ksKDUmQ [$ejP°51[6gfE<:LWZށ` 6o1Rc0R~[$=hM&JÖ,.;߁βaה&'0_7>:2r/VL~*qUxۻXL{bhl0Lf"@;5?]A\iƉ^ͥby{CO])I ɒJB"Oی*1=X'-4BR+H 5&گѥɦ*!D^f]1g,U_eHW S 4/3VH ޴R+,._ *{E˅Hb|^1_{1z `\pڸnn.f"XB^ޒEc0- qKp2)ap$r:X%c k䒥WQ1eԅ3@'h`REߙbˈ X2 Csu_c2 KP|L }Oi/0Whp66JĞ-trӜkдpyK}<RXнT!⺹E`#pTǕهb6:lťc,)i]))%s#LĄϷaO ,H}:[y4CKR *`tt7\LVr@G},Esn6`Jke%b66| 9RX 0 Ll{.mB^R5tuOJ;DVM=?M_76FƒYvt%@-} EU w[2 kLH<]BCy!}[㧇KGu_4@ܺz?(yBbQ{:iYxMSmA]d OK![R|u8"ϦӌNJ4!# 3_Ey%ug'kD$qzTrK|GJH\) WRi̔\#'Z+WЕD aM<,P/BI-)** @U Xֻ%6[Kuv48TH nU"gMik*/cئG?M)yΟ[^]S_ktUDw?kbU_?$ 𕜅(Ot1H[@ǎAOg_qs^NvlwQ8J-5+sd'aLMqߠF^#j_3]0DZ鹛ڙyXÈc|U&B^:жY%VvM[mc 0l\"NpY BO0TVtM Sx<{ '7= T窒y*Vy|9w]=U;{-{&9;'*#~2=г]˜Pxj@JFYʸ/GTMDmg?uRLz$>?ߡ\͹@f"e첡Hessv'hKg؜ wA\'\H+]Ӥ elɧBDVJ="S ^ ͱ/]eJMd 0;q-^6#|nV_ ?Q'1 yR ڮgp;;1l*w쇻D+Rgc}*đ@?Pk'D>9 SZ%)i*#Wrea{=cһ_.Wlf <ޗbmbMYh T) Fn<Ʋ^Z"7 홋_5.Wj 0 Lź5:}1N=w$-^ˁlB*j_t눗ݩ uCŻ51'I%K۵O=>'x@)_Eu l5^({f3_5jx@}DO) )&nW$>5ÓYĉ$}/iGGW}W]vLQt6V3ieèχ:b=~d1'~RbTr sm&RrJati IIJ65չܱ8:%@txl'%IOp6ؐiI~^Ov®JmuBbj"r:?:BDHy@5棙,0qJ@p0 ( Yg40+h&ض Gc[Q0#E~> {CjRKD nW"֓O<g|u2krhEd>bvՐC#6W.-NK0'Qܕ/PE r? 3HF&5oPXmOu&Nۃ}[:}h6,Ŀ+PmY,Vgwg|2iHxv$׶a=^״u-?[u^bph* K^83EDI\fKe6o),oyK;N UFe,rR*^ۈ>.B;D@CS{bjծ"NիCHjDzN=}@Gݲr6ͧWBRPd3i6m7A9Dt0Z()z|wp(纔'{-??dpy40e tAT yajKV8E8!= S<)x]9!y_+(N(gc<Ř?o9]9G]VJ} <Kj˄yL 8æ v Iwi]jltX֒dOf\_:"uG65~fbqI@ɞ1&7JFQr~` n ZEU1LO;O5)/6BgMrƏȁ|W^qV\h'0`w1x'iUUUn6bUrZ˹'֊%?MjY+C)HM4ɥ-+ g:5kgĽۧrm:嵓:oEDDX‹,ٹR%dB+P=6$Rml=0"sb1eԖEbh>WQ*udxKlyG>2>󩐄L$9ۨIUh^0k#E9NWrZB:TzSC°) P̽]-|*o~û@" nP2D7|$`%:kabĻg~sFOu7L*ENߏXu>:^ " =W<#0GnM< 2+;6^Tӂ$_re1OJԍ ]ߤ~p%YU]p.L)Ӑ[!cG $1<36l H 4L9i!YHIZV_̝;MG!>+]PE,C(MWKkQ*t$ rp*`PI@flh3D0ngI?Te揔H+Y;F{^z9[ĩiP%h5Y]w,dyЭLTG %vۖ_ĆFEL^jÄ-$IqaǺ0oh047+D#g^䑂OM5~ӄzk#엵 dy[EN_Aa=rr%*AP3i'?Ȳ0YR``+''D8$oS qǁs±M/B=[sJBֿ*[wVX^ϥnlno`M^@ǀ8;%3B)D+k`FWQYofEBe лc\̀[Zlߟnk,ޘ-N Û:5Ϲ0a䇷r})Ѻ/"tOv]8bjD,R~|N{Gz(1U>tXhz _nʍimABG7CI8a-ҋwh :3&c\ћ]+0R1u^Ub_ujT֭pydz%[=,bOsO[yH?{c2 $jq'g8#U^V3MMOEN $PX@"/\99O|VNi*/x,dGQ\T1d4W[ly{޹n;-.igĸ@ S\%tF >Ll]gvVX_|OjG*v+⫕V|޼*!-L4"0Wi%o1{m0|IUcRLrF`P-D6$}(ЙA^mT(9 V΅徿KޢW_UCl*qywQCd`q .(FZ$<: &Zį/yb@ 5'ѫ]PZs/ů{Ra(,C}?Bi_ۇῖ _21v-bx/;Ȱa;{ZA\G_ fX0Glx30 I*;w iwA, N@ YOm>)0zuzg>7ƱsiaILl{a _5ʼ,Ĕ ^l܉m$ Sh1 h#b͢N gN- B*Y-< вbS߁(T~ XϽp^“g=\Lێ,n\eyK0g4뾒iD4{U֏I`VʘcqHH{2 :I_yG(#([AJu }3z,}+N1EI$I%1>;?ndhʵ'aM 㨋8 Fit'Ho% #JD85|'槹D{P#UN!} +9HsPf%8dVaUzH1|rN?@cZ,&Ed?~vy<6'#GͶ m 6KhqA4u' <M]Z:Q7Z.555T E*Ke09p]Zڻ-NiU^+0#ȫްh"4O YOK]vR <= j8F8̧k55?hg9 gb{؇)rf57w~Q ϞvF[Jvn-9n)cIZJ-<{)Kje=  W)>!lY0X9Ewo˥QmS%$|uW^Ky10򌑥WWX0h}'&;][f'g._oDO%H;yf1u4@e'ڡy44\pHZ,xn-CԱm||.ԓ\X"=e->(]Gۓj ֘:FA)C>Ǫ2 8+7<)3Tuz91y|+O*!~wTa)?"Ҭ5iso5QL;tiJeVm sփ3S!؞RbkڦR=7&c҃^̅:{L(Ҍ \n1-w29m,^P,fv1(rKT]A͌'{KxxQ_?#-K{47@9PO!5c@sBEL uRFP4@UH6;*Xe^JE$</97t+NBL݂SB%<2GC]h&I(u0cW MZh?gU_b ~ xVrH=;?qҀB-z((TE ZKlE=9{E1ԙK f? Fnt'HŽ@)h{ '$I\ȉO DEݿ{~0$WlKcہ}st/|i29wof [׃m/)YNbƌEzNNi;OVU,^o8_߬mΩ;,'x ooЋRTXtGM_ͱ M?o3%~ԼCK'ejF1sJhQy?!8kMXRPu_G$ nEldrj["S['~(M޻čUC~u:5' Ib8|2ɦbˆm@&Vu`&/!/XOU,Fө }>:&;.o92oiL:Kw?UuȓIEMb >Qu­ ;Z#Gh,2a z^>U-/ļ{$YRrD2g$P2ǂ=͝$sv7ԣH&9mV•\"ۗ5Dig@ I9 |4WkL_o0ufpmY*o|X.i*TK3601lhplJQ*=pD2Б"HD0ñHǙLjulHy~*(A{x~,j =oGP5BL:s=;Dw8"-X%"s='ieMo뙇(u,vfk{u-yhIj8JPKds͸R6Ǔ%j K!I%6ʙt GrWvfB/m'[$h;{*dx9|ı^Sy"jl?D&CdP/yB )dc7%=ΡH#A tĐN3)M8=7+F_.-\O,uU>1L~}[w{^2pFĀp<>_|ϩ[0~se}Rfgƃ 00M1)bAfavEy> EZIu<;{p\E[ϔ뺦|0\TJ{ryR#+@H>zFک\59k< lD+Z\ṁ"W%I1f@$t-N's5-w5XwUu&ֳ~~kr0!ƿu3X.CP 5 *&prI$Vp(}]g5:πS+~wxW *W}(w[4KGd3<Ր  6S~q[+|\Tg L 5xjA+MAd.+Ζ=VoDK"߿'7!zyJ_TM$*qb`DS[& ʁ,U'+XNo 4WnߪfS@wR(w30H@Etҙt6jQ };y!{-$:̖ & `D%^ "-7|tClAFj-];b Nk,;@Jk]{IJaz$-IU6F V=e mRb/THF%Rњi?ivZC;7)f֠D=J`} =^-Pgxhڞ>jLrCP^&V ^3F/o)HSɖq)ctqr䊖M爨Wp7 jʵ!>0`¢2 .ں_ȠG3S'4ȯ_ \G@𩖑+=bh#ےnܸӜ-@z!{-G|N0þx7*2*"du`qX--y-Wx,@&KO;uxRCk;|R'XDؒء<d LT5"7!n IJflGd@rD2cg̍I B,J_?+Ֆi|m"DuXS,6 J)X\q2Vf @ `-Vu?sCEM? pz `y4 "<ƶ3wޫ sa2MF n<ziu`Hd B3Ki-{LnY{fl#W M_C*mHkhs␭7Q+kxOcYZź.F2L{+2C4톡(iiɴK!6Gt&?jI0]>q|&Dlu5Y g㳶Io>@(I$3lQl,>EݮJ#>}ڲ$ mRQ鈘=g62Ydg=i- jSDӼ j.}^z tɟQrR~}%mQZ:+PG$sgfJՁ>YZYy5g;9bPh=>{H" jCi+P%2zCoZRAzF޸q2?_U Y6xS$dd(_1K 39Ƶ f="~e}}$~Gf9mQd;PbA$j*yV" =zmR+q)p%/Y5<-lJʑ' i"y}vlth(8ms$SUA]:u ~_Q!W|sy\#&ezwsHy3j,kԌn3nDG9*%ykM^ul\`/.Th<< "ɬxO]F&"C+<e867nb1~q] +TA뽭C+N$xZx.BC>S NNn0>ngގ+U8ݪ(э#60XK/H==SahTl__|0&Z}&5_5 %Qnӕ1-&k< Incj Hw;D-G`66ۥWrtWp1Hr&}3L8MǕt!?hsz5c`ͮRڽe==xb<1ΐ]a\*ZEqOVUCntpdK cr{l! r1ǝ)Bdը1>Ga\iOamQ}t7Tw]OͿ %nϏZe7nRְm!Eu^XXvNJ}؀`5q|ckx:xWrިn)eXф&xiS QKbK)S7akіK/U(YJV;gd,xm 7 Z !FcX!6ɉi4Ƶ &z! VWBs93RPD^82:|;y_Wf%Z4)3y¾?5L^YL J9-Ҷ{r!~\USHFc^q0 [MbSW!tG^U$հ`t禙1PHBũټ$'+h4xQ,yK,kfvHY+ŠxaN8CU0 ɴdK[0ۅ,#~k @GlvG*oӒWgȨ/TTY T*$Yqi KMcig5B\/d)Jq>]E {>1PV>6K۟Ņ'r} ߀4]u6&NhET@Q3h UE Tb:}ߡpe`1M67d4ҤFusNa,M3$2wEǙ,-1 B[c%Abη608u03,=/RjtPypLjn`ѥr}vX1Nل,}FVRr;a?97XCE|=j-Wk,8]>KJEKG:XZQ]qb3س`#`دyTHLc֛M2ʰch uGo,/P1oZ?6Fv({HܞtdO&SrR# ДY=6],Q/S>b(fh!Jqu;IiHR C{2};خN4piO-iO+ hE0$cX9w,G ] OG@Ԗ*=8KC 4ka{ \+JmZ ,[KJdyy+w =ɟ8Tt)ҭ> F-u!:9S@ŽHapTavqG[B8߼pNz4@Ŀ2X=Ve[P{{M2^"ɜbOT6^)_VyC>yic*ڽNݶtLJn Ύd<phJYXQujW# f(\xD=hWnΦ}ޏ74ݥ3l0B&57Aw5mN l.,0 6`jKU/N. NbE-wnFX~ྒྷn ˁݼZݾh i*^]0D5/ riǫCAPI11[f,5kLܨ$Ch{[r0!9vv`H4V UUTo*5ڦo$~*qHGԽL!!-}]X!_5wqPg5'P'~_L]sz}Y< Сz){aJ ҥw]Î0LA?_I, [hcaŷg7x^к^w\fcOХ,c%N&znp:аT@rS8ݙ[BV9L C2W_o?M^*ϕQFU7xΩ4ܑ ZC9p}V?&}X*^ {mDKs}gha@4I6T0o{$GX2D;4UrMFN3Ɛ\FES"3R%+STviK8?- S$MI_wn zjycx} K2K8E@OyA C E#nb=f4h#֓;.p |ep"( z@Ym}+kJ鿗Bc /=&!of!%!nG|;sidhOqM=! _b:rZ'v= =v;&] Er>ܟ@mFzaԴ+Io[BC>k5DO>cK ԄJ.CvR}S }l(S³?>bS'-)~t/ kFi˓w98Y^R5Qۥ.CCp9n&I.zOF6?u\X'|1v 8In0ˎj2yofot(*T4bLNg T/'_Dt~IG&,N<8($Jy$*Pc bmpXMP@W bLǺz)?]=8)Zf ;q0){=)xOcWt`K1b# _}︋x#۝Y Y7!'VMXB2b׎zjvGH|ȾҶ'ට 3K!IRUFAl;n؛>qneWz3e (r4iF29Qm辔iv1a]aC/̤rzּ-ZKum;OI ,~Z~SgC;*/%oL,Gk@~8F>g]!C )Bd&SU+v>xqş\yĻX>m>~mB &%l4+%.YcZҺDbN_E VscqIaIi/R|'G"Cmس8˥A}> $۪D#YI ;~BY0c;gn4| : H(r% M7_$k*?{? d^z *bNzzA{^l̮f.r/Ba!#HYJaH=_d#s;N5T~"0g?ʜ=.&}4K8Y) Hmݲw`gl,}^ٽ-4nJoN[;M J_{V:hze> X:Z;0dW;ODK9dG׊? Z9ŗ@`JuRBҖN ?'Pnso۲g>K e&BP"V4 93C|ڀ}^}-~G;=iN7!{ذN|6X˷xb'_s;Y̤8XLA%?HMg>zFR/: , g E </򭮋Y7`24.+S#RPMl<ۅi-w" + ^A׮"/GI޹$ `R?&g9/J3u>AL3GZey! ^yPk*ϩ&4$&ܔD@B'&93 Ή|F  UgQ5=ySM*<u&R-#^c$\qӣ AG\S|a.UD5Dkƛg`q- p" siAY|\$ܝo[+)D;&/ ̱4$mMW.\; m2<gc}͇+sn#s 'I.C0F}xݷ?6ʇ׼dv96&! ԊqIH$"]| Nrk(ΐ~t*熿w|=\H*pv_L,%ie G9XR"2>f9PaaaPOT"T B|9,Jو0Y} +| 莗3ljOH{`]<; Z5I˿#!}Ґ5^&,"@== M'lR!4mgVPK'kz˜gYudHyFF@CʊJyuGor>0(Vcdkk@o( ;F#̶wp3"hq'TAq]iMD[I43qx. cv$xǦr:妵:[@^=+9+g2~E2 ofzhE%}3n'c 17Pg9DPDX3>8BXtzTգaI2֟DNXq=a}K"^@S1 ;\~in_S20}%Ml`QSUуzi ܑE;i? ā96U Skߎ;!p{)ePR0#<"av Ǩ`E}L%ƺaTi i 2ۜX2}7F3{~o_֣HZ'2JyXN2e7^ _@PC<4xe=F?iK\V!o>l*ȸW%)bgC9ɩVl@$Tޟ@:C+Yp_Ejw*lfu8 bAEa5= it؅n2yYePDn-'xvM%?>M(0SDBL`$HS=S {qWTA} %ml9_Ԑw8P<( sLyEt,px>q)q{U'c|Ȇra[o +$$fr zE_`&`<^& \7T)*qL{uTƽhR" "z3𨛥pr3G3_M[ Jͪ>ͩL?mV<~3oiTZ߹w0RM#`5xOAjPxP)J[6su'\˞OᢧORƘ!x%6(~ ]-rom_' 7W,x4ݮqut gХ&.o?Ȋ%z5UmCxwVEo^iWdjpWs~'ϳxO[j{F]xQ%K; =^WzzԈ>ʳx^F*g2G8",]yE V~;`0+4='C(Y1%&mIa=x4C_=n?/`^"!_mc59$U,`fZNo?9 b+g!/\WWSڟe]os7vd첇T!Cjyxt"Ɏy(yJ)znx)`T_󘄩35FnO *RcQR0̧j)SS֭kT:#+ֶkŝ& #gEH~ J*t,wI[E$ŝLM1fsʥÐozƓ] sҩc~֯(0r*d n<+?W{kdoME5Tн=/OV-6ߊ/@W-rIԪ|sc2ޗ)V,1%i9+j kVU~d3N^ >UGߥS׸b.^r°G5jl GUǑ0sO3eTȏ>R1V(d z@$;8I6 b v M^,֧Gj>Z~b<"@DcnZO&?rkKr :_ag*/zkޡ9*'Uir+Wx$dURQd~WƏ-%BE)A(.`b/OQUH9U+W|נw:)Ӄo#)mһy6p$+o8ijAHҥBt0:롳,! M mD(Ez#.0B<ʧC#m <{BvBxLc ? ~5Į5 :e!WEc0Y%Βc=;C> 蚕4ѭ5fWtI.*c؊8~ᄷsMi>K̆J hi~* oFt&f@]*m66U5ck&Xȣ@B6xiD_EN:љYiF?kxŧ a0KiE_v:%<Rx-=c-. !H2zBsZaRr{ha%ӥ2\E#4Z{|8S7{)jCN,.宬gdO P:#@NZҀu;k%4~SsAis8-̋\%m\0-ǙsP\tiGҸ&^Ҵ>TOpy%4d]ZInsƃTܳ>J M},x%CԾs^g.29hIylhSWyJn?{Dd$땘X*yW\5f"#[a.(Rq f@oX/J4{gc˨u L "bbUMTbm2]n(eF]'Ա| ĈgvM% %ȇqC\X3<`>aOxdmr(JktBvvy'py}x<3 x4taɩײۛ;Fqmԟq=_&2Qؾ11f{VjN;-XG K`(?P|Br'˵"Oo{ g+LEsKydvi24n|w.b3bЅ[75pęW <ȬYKkOfѬ3's vP9q$Y-BbuEKX|AF ȫ8zg~4 (e(]PbSp{M}0mi";  ͤ}[xUXf"[zt"[\VE9w4 ?qFD'Ig9)xeƣ,eiD";w*%JSVI!o3)s8S/_׽553'E "[Ea`Ϊ@M:DOM$gF/Y ZEVmfbc r AW*ތb>8P>0H#)9zu/D8{Ȣ曡j՜k&(k5yr%uG^hLӱѢ棵=O5f&q?.U>x$ X/PPGFVޟXi UmWTOGKE,,ɿy᧛Zv/d]U `6c vV0O/4PYPv[u:uw~$j{τӡ3TՃߛxBv|#] ɛŒ@+)Gؘ )G@+8{ N/C$z_:jJ?hw _|rB^@ =3Iy(bQÈ_gu"JŴ\t3DكP!v1NJTׁ@Y(!>|Zj|пoOI]7:V< Ë[[=R( E-ܐtL+h/ Xn#ᶗN\+PQ^iv%7μᦾvL#i})Yk E.c+2Z6""Cl>YP=h-ma"-Q2WknCDHZ6s`TR "ڒNbxEyq~sK^.E)_EK82Ew)f{ptv6!ثWΆ|v@1͋x˺hi xZ:!WB@* YB021v`A]?2Boͻ*eJdms IZ!. Mo"1^? *'z纒g62BplMZ0q?o37.zу9 )x l7N ?b=T=6mWØ58ui;oqjikMsET.iM9jca쪥\oL[w)ihg,cCX4P؋I-'_\wd3'6Ypv ї3ՙE(ʭPɻ@qʷgf-6ē"a<ҬÔT "16O[|cm LG75IGO4&62`E,uւ`K!Tnpez'.t Po^Ҋ~NWLjǯ୑YvDh@X'$vKQQ17MVCt ړb8ab^s"b)O&\+valYF H@FrfAF"CKf@AA3*H9/T!_azu+$BECp9֣J(}sl?(`8Ѽ>{p1yikv3!Lz 0nZkk$Tט*Ty @݁i`WOjm ن¯<#Z(JUvnj5&YMQ/6@f4Q+CyH }KӮLq ,q+l61{A`^9!CYZRQ~XB\bUmRdRH6.tDW@+9l n.e :jV)8ɡw Q% քGZzEp\%ūǃ8nrGn-:o(q˅]Q}.$r&Xo?!@˘$,v WV)Z+&|_lbYuJ9T6HV):e' @> Go٦/9g7SZmߞ6-% ?VZ3o{OK37{ԸIvB_HLǦ՚wz5ФΓ1 -X$$<鯩p*9Xޭ:&oCS56uw`թdڶ 5~8j0!dj2^ *Jq36 Y,|\"o1TjQV$ v@Ymp}XT ؄!fT4 LCָr_쾔km*xA:+ist!FzsB3 |捅%Me/jx#,k@\ JAHx%ki7rſ$AR'Uŝ+eʧKx+pn3ߥFȶm@S6r,`Hz\}> _~6"ٯ=X-~\BY AHwA|@ǴwtǜzwTy0+Π61VXU,_T &x#vi41MU= r0\Syw+tXdSs U{p) vjY74ZGupLF2o{һRpQܹFCѾ ܊ | D{EѰ,ƞO1L./ۋ+$GLԹĬOmImU I=w[b"?FhQ\MaMi$q;za2jtՄԱ`zȱ>C)MR޻-D$")>&8Ey1nP̿Ýs$uL *dѠ@O.TC:^aK4܅3PL\Z0Jhk2Gl Ny%Lm@.`uq8:IRV&X}!B&;$#Mmlˆ3pٓXD8,ŶRߐ\7MɾQ efTT0[yr}=or +k\ $?ԁ)<9v_&r`>/% _;FLy9`}5@-%Z}#DgAR{HT$jA5S#t{"qܦVvo (eJ1YeSdy[KXhƮ=Gy@lOxt"QM:0Y %RղP+A[x뮟ٹ\N4!i&6oEUiwI{eBU+vm*$#E4sQUm/hdʪD19ihG2XDy+(V f+ >ɇ;PrN RSnr/ktbS"xM/+ಫȽJJ"f/t4:=)]̳ ǒOO7H¢6:b\GOQ#N`~(L&R=X4}|%$s/ bVC["ʧ 6H7~CrtdN԰G (O@}icN 9}:e%,/" Y뛴,n[Qa\A$AٿƕX.JpN݉9): <_1a0bXų.Cy QVuNgX7PkGDܐ- D0:xA=/L7$a @q=d?mf{J%P@C >ڐI^a?~yKPNTa@%k\<6wN I.[lR(Spw5F 3%ěrc/"Mfnof$6" e [VjOI 0[ud~jW[WI6zf}6+;Om Owo9C-vZi8 ̺(N2iJ҈I,q^/Jc(OǏ)gPkw\YdC,vq1k@<$G<|])l׹,)_j-AHz5wf҉{u$w{d@FFd7y&rd^H@Bm߼c qVkڔ̃aH^o*M]"A#q⨎>O#UEaF,S=G0GvoVuⷮT72?RH_gMl1AnwyO DfrāWAs7op1]G[bbD{HZ}Mʷ(??hmQ ^GPyl)",|25ٞ6`3^@KqS=d{o(i-ŝs72h/xnV$[=1*ᴽv%\*iVKllY'AvЭڡ2,UcٲM0OߦusTSYgJ\$8y˧SEFBa^qsAF8ZK>P)YR+KQF)wkY&cBgykL,gRPnqiB[6>ƿaSJ0rI|~*[4K;4/\y&1ex}ӥ=;5#;e$E\Aչ> }e!@׽ݓMK2q7<5%Yf]\y4[AzM SGOE-[8Dy_"Uu}8nUqt[GA^pG\;p{se5iO,دvj7Lֽ{48i:pԯMx;;Ƒd;&qxB :.Y;^:G؇aԔGO.$sSFVJfE#Nl|ǐ{_;}Ιy-od8M62y +N#g/ahĴjH܇NY^^W3&bXSZ/s:^C3 ?WU)nE!xb),Z^>}]>@œ[7w ,6Zd rlmrxcmՊ<3:aT"'b[P `$@86q~fvV0X GX- Y bSP]w*aHٗ$D`UO4*kF5l{=3^|wmWw`R!#<\ 3)_w׳k(KFȅ4 ˄=ajB Ha47L/H40,F۰,Sc=z}i؇Sg DRBتntBRu%rf-Qh&/s]5|7BcK &e1-WQAEA?b4(DvT!3.!)qJyXGK;VgxؒK":+QΓV N_s{ By!~i pZ\Gz_k3H~fs@S#/_E6'f@u O%Ӽ 0}0ߧӽoɉvVgrhLvߖĆ}JB_ntԲV0hF{ nK'|xrdyǓ{?ηʼ(nŪXB>֝xGH scY9gVЕ"bÄNt:'QԻŪ] /X 0fCu.k<&)o9QF]Q wuo(m<5 |P@ow/bq=g;) "t4IJ9DcꞠU[~M)?,$)Vm@^ՠn m~!(^|^vg1`+Rip 1iI%t? ߡ.b9axo֖T1S;'6k+ו $]GG9Vw-ɀq#KTSJsa*IfSSLḵfj& Uj}}XJRy>Ps6ldoz!L&(F|sx@\Rڛ0*\.Hv>4 5HcNFNrEiF&AE`-dą Nd=YʯH,N`>.Hu o&W,t#\}1'ӻrHV ~"_Er sЫ\EV5 wȋhJ3mL'PZ-٣ pFhˇYtzIHEu1Xlw%f,s2s%F9]G\gB7죛.ҫ%if>J{bJ#_2ET^ۨqWg A|NIዘƼh}(7dX kIN$x!Bg[ʙAG&Yф0]MjsV&^4*no\.-a۟mo oW!*5QFM.H}:ם02!B+6}W 0OxBty}n)J[A_R b"2I& ZUOI Cq)I&2KzC⺯GYs,h vxJ[RpUq$!C|EoHR4O6 Ge+'G W gVGU.إcRP7wB-MʼnliX BAI!&*o*|p:]O4HqX-'W }!9MVe%j]_Է|5Ψ*au r^/J$Wd}IX^oxJePEyZ@؅ḍT۪X/T! s)OgN }+.C,q&xB2Yi\z:Q{y!Q5W-s {SJ*q*-z6+4P($ `=-g,/wGjKlXz˥9pzГx0 u͈k{L] Y\‹]_ЀOQI]kϚPf҃$(ތdgT WIfx7 =BQef7|Kܯ|rĔӑ.E?ioOu2=cLGun6Fe\ mlI7C"p΂t1y`A'Rpb;kE;10,sDZT3_[Th'u>W`gE[Ƶ6)?Ft$=r}, ǥd!peTL&;2vr&`H'3@r|gvh!Z jC}\{"jcV{ רA5R)*v(Jj"'`vnJu$?@Hܼȹh)V֣Q*Jlųǥ,%+ t#ݟ}Α /&*.w2RdHu;|c=\U/nSB,JPdhUVOU@ 5!m-hU ^(Ux2b?PzTo NJ9M*d,1.zk2dC9[ %)B[dyz0)/aQZ;[JI w_e_ҳZUr;9 7vr 73*F? j=}^0-=ڟF?NxȔip!;Z\Tw"Yl=!y}5$q嚅Dǻyp78s״WJ狮ԺX0%D**E͍9J s;sKˎQٵԗK 2nsX"akZj65u[-:Yy^e>"ظlŢ-հ<]з!edFL>FDi8~˷wb'9 歗+Py ~WJ:婥7`iMJ/&]1ϥgqe}k;CWdrs4=4}D?J^_%Do)x^O%'0t="̀L7'yD@,i8U%_/;gkw+$ǃ-Lk6g_"1mIıN3.B%e9%eHRF'՚͙Bv 'u%-@ITLF,l#e'WχOmzpj1Ĺ߬ UGB -%&JKI$ov3[cBϘJE9V(7ZB!*I8#a+8,55bm^5e b׋Zq`z|XNfjʕյqԠ,^]`hHi +ധAf,3(b?5IZ.o{-4|Q%#S/r,S4*=H /+")д1  G4*m{t'\n t] (am3Qٗ[iVo!N&˿k`Q C7ib`. @nFVe~n~`v9̍;H'7ř1C>c#F^o.cwh')(~*${ВR`H[Wjڴ 8DP fj0W͖ijF-B3 #OuKU DpQ~(oA3"J&„q]Ԑ-RK{ |/bcO ZPB()[-Z>MшgHWqj\hqM*51σ _\8<4_S/Xh5 g|[ :xZܬv= =f9h<~u,$ꕾ)2󷤻L"¤kfٳ$DG_`m+Cot:o W9uNp}YɮD &dt"~w=KЍgtPj(bT;oUtw;<Wrmm?$ccog.ih Fx<8_mD8m_\@u>F1)b^6s$2D$awlZ <H5:\´`d 8P7PL}?;c=j$8g =) aO-6[mQ䉹d/-7uIdUx_5~,]ҡr$4)omӛl7Q9zdH"av+n g& ɻ`H*!gM0A}2Hԃ:yn]T,:0 t][HQT0A@V}eOiJa{$qK8HEyEx(O{w#]$ o짘ˁ{wQː\ߨcmZb1H5#~ u9E~ N7D:Լ釪|0z^E7C'&daU\ZCiPaM"\܌imv%w%ζLVWEVA8acBԡ%(Kȩ*~ EMj톃_g nV3= BR!o'*ZHzl~_wVYps䙐ژ2e 1rum#6.-uav]nG>ANbָ;р@&B'ÅD2Ve~_>[Psx!E ~N!y?z͙Nd[vXkd53 ܵ ȣ2 1QuտN?<ğO{ nQmI{{ ,FmcyJ6Z zF PP1? !pƀz=áG@Uʣ dju8$"[KDcz'r,n_:ES煄x7#0r{5CL="NK+P12Dˉ,G5?::?%oRLPXj&oVlr/,Eq`GDnѻ}Nip.n׷@VRA=QڟBlP %}Ђܳ{81 XJXVD$b E w+ƿU4٭eӷI@M<ҵaDA6 SVrM9 4*d9ўAv_@najr@y/ nk{G尐uvw}KZ:1ٙ:ĽqÌZ~H"ak|ܸX!$CAx~kR YÈvݭ0 sB~x, G.%EE9jv@lʭ{[ Ӝz JSd1wNfoI34(f*b#=LM!R\,M_1_TޘH>i;|ݨ﹌fYQwHFo+? =Y?ߠW3߁<^pGKԺ=ctEU]AwXCv\{__ظz1)@bIp12-ʹU7MG7K7ivx͂e(7=KlXOȴ{,mAz言]mV191Z%:/Nxrk)P2.-9CR%oc^r JƫY]qK0(XpY7k{#Vx 4'KacIz~LV{zVRc!OWv%V0k~$KI'J?Qk+{:M T [ #bC Y&[<5֙B<{ HIٜ6qy\{&|!˘o($%͗vFR:P:\C FZkQK>4iMiπ5TKS"N1J~ČHt5dX ƩzL=M7 P@M92@0igǴ24A ;tpRv"_FGbyXw_٘IhRiyƻNgCIW&s#pYME4JɗU+}1qAq|)дO֣9 Iv/(X _@(R7J391ׄv^&R:A'&Ή{_DHe(Z\{΄ 77>9[;d@c4)AKNm{}~ _) q@/V,eCmA|C!Ϗc 1*F.L1=[jIgepAc>*$^ Cpo mm} lzЇ_`6#)RЉXcK7$ufc= 8;ɣ`uBKϗM2;::5?+P}jKzH64f(xƇ2Nm~s\$"Vm,%n)Qkxw9Y+$:سOM[I#sɁ8פ+`TO@sgKa$Ȉ J hQ& -T јp;ǺDaqR>ߛkVW b\ }pO-j("}"_:TO@& )ZRjl2G9c/K/z?/+cǓΌLIџ#d?Oh줦~حzmv5U^C4Sv&bIʥVv5:XW:0&$LwS]ybK)Zq-ўF{Ɲ0>j?s234#vu5rPG=P̰ގ)_ahY3_=B,XsÕbvӲݮ,YHNe@3PoGҨ:41t?ۭ&䢕W HV1h6XPp$Io+Ok2gņRi8zΚ5<? Wn3fGgsCE'XlL3Ӌ՞HuL,FX@T;@Ydt9 ~ɷM,w7%tlw6Jpv] (-?[pABaZOYphpr#JBVlɞKZۛ9]/GGx0@>z79eg&*ez]KHGV)'"xI Hv;'/<ƗutdF]O(^G/ZpLE?!Q_i:r%v/z6¼i_FDa|ha<2[?|nϷH)}}$܁;B6D3wķtEt_>g [rFkLۓзWP6A!v$]}Zq‹۔Wec$m%t] sF7?*R^ Pn3{2혘e+Ntˆtee&(A6IO4|[ vE$C;M:\` Q˓> PvGbL~ɳ|>H~.`k/:#Lj8Glڭ4I̛tzbT%mIݽʣmj7!kɁt7S\3m{g dS}=8Bwijd}B' LG˚z-vk tX:q >V3޴GM}"fu._Cs8GU`deEߞy" IBx>="j]G`x[8exjQfܦZ,mhu}4Yʃ lOPj;)&GdtvT D"<4piG{9/(IZ[?\:u @R*iBr / k 2~RI+Lyyz6ߑHR|lMA";7_:A0FRmlr)MW>*S]bް>a?p4N+1'NŘi<ScgM4qr-i8W\s@P?4t@Ǖ\e߱wz5cXFF3"i\UK#QmF)0'nIΖ?M> AJm.BA|8Z0$& TiT?(1I7;Π)l^y<4LvȆq>@BY\k~hApߠ^IVG\94} _Uvd}ʁGzKufǘ=Da@k}{wJ2O'ұ> h\Gnk^EmoxgĿ;Bzb̫aăߝ5G?.NM`])J( EcV !ݐ^!BR{ЌO3i_zN[Q3`wrrInkWTzu,mњIM90 46z=9)򣄲R5O˿mOE:H|ܩ4е%1uK*$Qʕoq?WjP't;K[9 (Ԭ·v.n{<47z;rKBVqbdQeaE7 ~ Mg:GZ3\҈5DoޟIcGN)%M/$Yh8U_jƽj z8fz"L$;رUlm,dU$۹j1euZ~'|e ]ێrQ <@cG_x@Q'a%H({= X^";1zιHդyYTNbE~:?-~! Y5cKcxbjFdSYNL~X'6sձ{Ke\|7u0N+ Ԏ9Y<Ӕ:F4u¦w?> E1_S>Z3DR/B)wSIR àmr_._vc:]2'f5Wid5ͣO,?ͨcDŤfx7k_Ig9AQ5¾ұ+y~sY pP hп9x,`NP3,BtF6>, V1cif%uq*%pKVM?SIXp志X]ZHxJزq^%c/RB*JɔlQ6a2<&2pMg.6+BQ]G"#gdOѦ@ʔaortscZG6G9@v&cTsF,U% xpl ^EџJ;YDLۯ*^HFe{;Ps:#熒M1 ̢AyOM\x¬LjrL#4aͽ57i_`vR8dd)uC4Gϰȫ &cj3^e-1IWd#we+{ h8<®)ٚ "6zeʁH-aenxNI5waa}X jVf_IO5 R^V^3*@gJԉf{Oԋ]`1`yD7 v4Cz|@KZ#`Iw,hOɝawvۮcnĔ_uiEܫu*ҼEQTeɽϷ/gg(ȹO,ȎZ(^vBC8^i*Rp}.޺`@_8O\PSV~tBi{?1I >9t3A o#tQV%!(&5Y,D ʼ]i:j&?E6%}\TUfOv5T˛U%zI%J'm(tZ=FuDyA ֍v7ABY1qpa> Q3"{?u/x?8!RI.Qqbap݆RUQyZ~\Nz0N*vuNpj` `hxBKfԚt/-Lo4'D~=%$AtMVWiO>&<҃x# >{--K>hL "U&ന]~ oxej0Lۑf1r\*6@ƍVs_t)a0-ek}sٿZ!"Xٗ.FIBF 8Y]4!a[_^$cElϸ ,X!3ʍ $F>ѣ.1r]pzyxX֯gCbCKP|F#Ԟi Թ-mra0qVj&R< VGN2J!VZmH;Ewn05Gv[bI~dzv /#:S RxQt6NwNF]ns00-VANДycP\:dc7Ah[ᤍGkev>5p&p&u38챇TKFf8A ~l#F]#D wAKE/!E$tb 0oI{Gu n*#v|Kΰ!4Ƅ<:K*/(!lb9 COI}͖ q~ |Odƒ$+=MYt{CR77huoڏ.Td&x/AW,Ǿz&x_QV%=p\RT)/8c&OWTTۏt].8F3:_YU #A _V^6NO}.x=H&%2KsMShB[MܽM\&x?hZĊ{xGCy_&~G:. ?-HrpG@$ŏI?'D 1Jm~oFծ{j^pni1{&P='٭>2j~Q$k ~(@z}zN+m\3.Ǝir௅ķQskS& 0.) M^0/`tt<|rBmS%L7 y͌jX{7eޮ7v |[#fld0tsA"Ei E8 ABlbLu)hJlO43HqA:/%RkdSo:o`u/%jnj0}<8wb ٔEL,TBfEcˆd //!D_"["Ag`vB=L|AUZz˄o>HuD9tH_?@)ɴAdOLW ύg*4g.j kvrj1f"QUS1wq;Rd0ScҲ;ո"'ހFPȪT.3n(g5X{uj!wd u7(HcӍLs/g5z# bk*?extmow"edfu`D ʆ\]/n$GQ.V; }ѠyCdIɓ8Eî$ Ej<y8@nN ӈNa M4P4*U',d e&ISda;Ξk*n Jۈ𑊒 nŞ#E^,0gHէb~ZgB`6|ݒONk=E ^1nsBגR7q `~c(; 5Mq>i<^D1Pȁ1^fM!guxxXyKaz!JnJ]V=Nt/~Х!_ Ap_Ě?'D)ӦǶEYlZA%D;?i}$)$ho3bУ`5nt0gv ||+KȈjK jъq>4MǬgbDJ:S,9\6XC0#_'8(8TVw?-܈ cg{' 9'HVGZ`.otXIcXδ@oֱ)_$)6&FQcRp/<܁\_O! сHN%B0?SǶL"dE@f?`5*&[oZ N+ tҟk: ] svgt'*gÇL@ǖ&,W}/CڕsQ'{PjcfKbCf&sI{q$-jkj wh-Pqerܘciʹ|۔pjGq6"A!ݞ|yjeUI*Cz_7l J QQ>菐p Æ(օ/aP{ICCS:)yx]-ީJ|Hh8_R12[؍ AC~yJDm9OKc*:38z8ϊu۳!L#T4 H*@[J^JRt&wCPPAI7^9_(ar{gaH349\pF<߭Dm%^fMTp#Cq^r32[-M%Vg-v7$nE<}I%fnkemm]`[^OAE*q'e2Z:- !an򾇝۝+*O h8UE/Dv>>T{p5u3=LeONȞMѳSk@u74c1Q= r(]Bĉ4bIkg:쥽Kd&qGxBDu+S>A/{A%n%, ` <m Fؑ&t}ϑSUZ>5yU!PtN;OmRdy4FA΍"IZ3ɪXbz aRIQvoUx\8ǥ];/fn]b|I~eіjy9`sa@Iqq9[\=XS}Ei}T+CY{g덉Wca-/H8O aN=eWݝdS5i#QRl8{#:ӹ肭¡j8T\p {-ơY#\[CȠ%h*_& lg|v] 0,Y ,eAzsio./.m߅ķ4,rK!ttߔpa4&"~l; jH'volti'qUks&K:+MMg"DLEck?i Bi:!}jR|4c.;K@ bdTn.n2KUر474}01)2N~Y;]R 9&#)ԍG0jQ: ;n4VK [IB>Dydi":TEؘM;=hݠ~",F0 vQTY ̟ };!:SvZ sOWr2G``KPNNXNR]H͡WtN%$E'(M535:[g;;81c$ "+ ޟx+JŎie8[0G)+G g tR=='$tdAU٧ Q7"p~ؓUs|Wz_0jE5LǮdC Zl (4b yʭQsT:u~޵rsQ8)6lht7ugDq1dAİ2-]y5"ꍗXF@ʂbX 1w7/tQ{ \`!:+l晪7F0lY%Lu_B|6^u5?-YZ(>{ʉ^hP ZI u^4Lñ"tPuAE<ەWZ WO ]I K";Az!}`f7ׅ$H,"htG(r+/64JJZcK#$y>].LQU%9vPgsR @ ,exE\숭I=rhWEgN:d.u@IXhT=cs3 _ ΘS=eM0,׍y0pճ1#|=N$yXZ1( r>vά͵=Sy^Cgn[vE8f (| ]CUX\'Z{dQ޸,|bObe{ڨZGz!2B|o.ݗmknܰxr``jSWBp\V? ;.G!ӥ`kk^jÈ%7_ڴSYu>ǫ oҚؾ yLȕL HIoJif{cl3m] 5rb?U'S\>hqs^ZDzQ *}W\b`v&n[VsHJїU!Mm Aڢ$%ʰDEq pBPJTW PQ߇0]S&9S(]iB,&m*˭zml4%<,Y;<8865 `5C4x`]\0tUp}'H't qJWD@2MѝtD@.EٚC2HI"RQBPBo6|ViY<-oָڟ?ѽlT}tiCq6o+}k  Sܷڞ[4Uv ooϝ-)I_}I`'DX) t-JWP]NZ@.TT,>T*~r0Ea" jbarXC9c'Hc6bfmҰ-/ixw8 4i`Gvvæ nV:M~[җۿӟjGN`߄{:/ X)$=0x8,pMl\l  F+گ][nGP*mt*k+ # B-͡lAıX``ojLbBOxQt@ˠ=F: "}(&į^N9R+P ?DV ߧ`W}_Qquy˫~kf0qmX{,CH1}UJJPC&^።Miُْ1k+$cf5 p3kk]w·`O|&zG)[b .Iz6U";Snhz =Sz/5VĹ=Dy{T2eD`Jxb"sx apMBncb J BjmCz7sx8널g0!5~t|+8_5f1Ԍ"c0DFS$߅hR=貤6Q==O8VHXycfL=H г d E9 ͊i ptP/b'L<[o3$X3mdҭ q|V|^xA`65;ezaa\N1Qs(yj+2?b1`AluCk%iGfΞcu2*Ji;Wi[aNeI˲G af0u ѽydԷU8^rV⬑M8|[lb.Ƣ?l}e.'1o` 6%`_=Fz2,Mm)(S=1۹=hykIR<'NxNޔΖǏ5 Zod 4 lVelOHSN=<=='V=JH>r$¨2(xt36ՇqE;ʝ*9yRQ1DZ52Z5NfJc(zq%fV\+}w{Ńu}<;,Iܘk[G!čaI'%W1.Q׮ǣFnnć* !A ֣i$lΪL{ҍE `{ v8.sJծ9ByfHb뜆Ԗ1U$0AP3>Դ1ѣLl wrvba]}<,{0 WAgSí|*3 z$d-SF9 )gl%"f*ۃ+;ތ{9ܴy>/{h壨h,Rr/0}:d쟏c|0I[Blt`λ ⍆QAqR۲WMrufGaR{/z|SɼLVh<ڣ@aƟ){Di;ZduLvҗvh'@ZuEKq=*xeNEk}w?Nܦ}EV+Vwfi|I`wJ[S7"X J3bP7ئ{>tUOJ3CiKsG ߼'miH$;mm͖ՍZ*z 8N9+G KwqGWt#.sr,X? ,{izL[$Rͳr3uK1nƇ)Cfah+g})#ZaJӮMӽ^>V)-W!*c3Ziy҃\RVfyN -$TgG@1yu6P&"}%Nd˅ceweZ$^Mc{6藶sj(1fV>`< hj$H9td>mQ~ڇ7Y8ofیP{O$hVS>Q1s4Ԡ<{a#*v5ƭV*z!l]Ah[rhHKEճlUrY2=F,5xbBЪЫ+{QOGpM0usvv83\MbQY'1!BDV?RF觠1o<%\B: e&)6b´Ou No|cy_h27q22*PG7 jp[ն~o/H1sīT* meo=kݢc&'{]j{?G&_]|VD}?mqBع'E|£&jvH:(\iSu ,}:sA@*]Pצx+rTn*jIWR)]*4Pޯrs~G@."˜vÁn {ڄcnhW{gRD})h pk]hRbFJ~Ж~UF=Zc År|'L1}=Bjg-.?Lsd:\i[BWL9#)~K V@:PpUlV|=cmuvG ntxp2' ctj J6 B`=[іl̢Jy0 Ԧcseř fm%ƷR\?,}k*Y^_"[dƋ.n ϧkEBՋ(K7L;c>w%S ȸOW mZ:'C7i]8m!c vݬ1êkM~nڀWK"/~H.kN1AObݧH9s7H-('sPt~Yzt3C.՘.+ ;S>6e~*GƍdWpȅj.eִ1kw w&cXr. |TIV݂vvw'(` I&-]ب7 !rJi)3{njJM' Suښ'-|Nqe&ЙV8 =Y&.oÞyLJd鴋}B/nlbu) \ᘳV ;ydž*cŞmtW{ǀXvLάQs+h6NVk#BAPFXwKa>K(Kfg~To5Č+s*&ĶhPيj!(+P #iͻ,tT"x9Jf yn#i)ڋ|/_ 1)VD pЮod$hv{x=Vn]ƪjn5 ou UvbՁWa]e,(PKi3ޚm sAҪǛ_ψr)-a|@B7f0dk)XUWf19$(n):NףRoďaE:tƯ*Tj$B˂ݔ!.1Gr.MwM 2tw~`03N*~E/ p6{]`w\t rW֛-:aJI"Q%Qu#x#Յx=]MBG)*Xy4Y3su NEy!b6B!?yBhX"yӝʸD>26=v>_?H9<%jI5KT..^b'e"+WeތvnWuf +,Хzlد e=+ވvI\KWI tM&rO:,n'y,b*He 1@gNF 6Q޶j]a(sʬr.BXg ):D1| kV+s^>3K/V䄖Wc]Ӝ9Qm*"&"yl{o-E( :%7`w;d+Nɰo@e&X#òcn+Sp.C3.k&0aaׅwo@~?';7 w]IR[茺dy?gHu_;7 Om™\]F":.i76P:0Em%Rbi;*v5{kKʠ,ֳ{=4~P`b<:~sH|Iz1\I[7{`ܺ]хZ lgYtXmyzyU<AM˶c9g_qi7`hR_kx՗8iI e?+Ƀvt _-Y|w a`μoog8b8Y7]zMµ.:8$9Z=1؞IG]0| r τkA ѣ$zwxD;(/9ME obXP t]K &uY==/<:(n;dn@}ȑN:_Nz׉`iU󶲪+ecnSk/3G*QJrxh' EDA'mbgQj3yjR'XWRt9 ׈Ӕ07_>olng!mԢdJPe ؇<^?,ܘgNjk(jn\AJX:.ٶ"fe0 _S#a zzf[VYaMZ<ռfU[ tZ};[aRp!%$R3eĤt zG_KrK6 ;\^KKX97Yto0Xt2vk9ӫ4'yU{Q|MOꅽ_Op3锪4NYe:2"2 &@WOƚc2Wes(ˑWKKCf],wl%:Eǡ39=# ZҼBI`aƀ[TT_r?m3C[pXNw`{nKlU@:5vC~1!XTkgA#Mo3_RMJLӴs?ͷ%</O~ų}(;W ]*X%U:zZJ zɡ9{5ɟQGV&5,4Dm߆6fjCr.0O"GlIE*u+lcDY2շ@[Z.2xt?.{0|q1Z(?bO~yuA߇=Z:8Lޢ6 m ^O)Gl(@HWEN+4H5_sWגrmKq)AM+Vs<*TbC 5 ÓPWLE/ϏԌ#_"׮Q"DH[9v4N#9'X1vE{O`o]O1)D|sdExBNoGGTknlkf7+GÂc`:F>LFϵJQ KM s3H?tq%c3rF/Lp4.F$voxOi5~SL^;l㽓^ȍz 334pXgڛiq^ n1Nx@Z .2C+!OfawR/!Ćb%U-j0]d]Rs(R61=Z4 &PyZ2-$J>ӉpbZ!(ҿڷ5_So1a#}DLI%E?I2|6>*ԉ3ez88G^cئ|1 D+T;dXon$ -X/BBESͨ\2^]qC^}|G=Xia-N$\6`s#n&_!ġF) =gZrLJb phNKg{ P\ b%SkLTqWRɜq'F: ȾJ W}!yW*L4?S9! _l xp[~.̑S$ݧ8(3`_^cX.:x&?%N9BULtg-Ƨg#ˌ/{nrS#LΟBVrǚju$;wГM5R2;%o 'Nֶemub*YS(]: EqX'0uЍ,tkՉVxM$)yMqzp=*{w+Ipu,b^Ot,ra1QCe ){_=쵩+y:nϺ*(c}F44wf-؟ދ*Om Տ<teߢ1 .69_(u(S]+rFQ5R=@FldTػ*4Uw]ɡԅF6l0Ɂ}C3J+y6)׮<-H?m햼AG-* cw^KR DDy6{NK=VEEQApqƫJ^~hTf@|H@Z=;*!Jd\Iu^€<[/$ABY5*00nZ7>t8 _Z D =^)B'zxڜ#hKus#w~zP@)(lUrkߙ< g q߽SJlDCRJX uO"B-:aV\`V@@l{Z 'Sc0dN:yN"I"'̅"=l?h(3lVU]ArPL>϶3?ǀUĴeK,h"ٵ\e(RGZ WT7SWA 81;R?5!:"{%sJsrj,b#1&UX^wQqF  j6cRzv8\Ol8#G\8D"'&gΎo35ˏ|QZ-Dq7'Y;5/ O^k$7U/ndbNdQB\Kl,\H~P9)RDMTC{=/.Z6(sv#:Acϻt~ Ύqf!s}OL^y->a8 NEO^ޣ1& A'}^OG@նCIͪ؇kCj j gӜi"=~„iX)vẀ|O5bZ8)#C<$l7uȢ"M7}̙tTֻ$P%3F*q$rFʺULCQ1ީH'[y: *sV[|Y|+A;JTQ'v*"Ef`C,/HvT\D %TN~%HbOe6P""^)5?9/}D=8%`EWT2fd5ᾡ'_g}\+&6Tvc졘ڌ Hs!͝ B!\z ZU%WDU'fD3wDߎdp%||tD|8xvF&TS(YəgpqC6cEqD) Dž,:alvjX8Z=bph*3c4'fJXcI:ȪGNbah=A&I$:zS 0UM K} qJ䂶 - u&RS5&}V~ R*:RJV{d<%҇@e,3mU$q)fbX|.wCX/VwVMx /r0LHw!5cE[GMWdcxMds]څq]:IE<+uEF G 1xeC96l)Av7Qj (TU'_ʘ^iǀ R@9r'x3pw._RK9W/-\SB%uy}Y|cܓ,pF 1DEѬf'YW>Oc]dwB*dBJSU~':bYK+Y+py/־8 #7Ӏ.qϊ= vvELEA۩JTe7IOuɝ_2<펜ϛC|s z_ A<ErZ{f[Qs2j> jk&Lz 3x9_ծ7}XYMl-9=Nm#'mJt'_Y|k-.?.MnRʖX1.bo lgi\;ލx5TD`'x dZAuEKDv'-|v t+G d'Ԫ.H5ɣtLx bj#tKj?Ii^?'H_2osEU ,5GSǁRؤ5Ƹ,(K0eJDk_G x;!NƘMvux"WW|T*j>wJLVHBeg;;{PPCh Qr_wӐ*{G[ק]׌ƋbzIt6PL0 o$iɷ}}w,%+")1֖Wga-py{uSbt>(`U. C yowk7Nq% pwV߅6>D0_m( +#@rmIzJGLQO"D!rKso˖X4!y%Ak%Չ\ 6yas^l?&ʌ8Bc83~ȚvNψNlcVפ\&100DB;gy!]q:-t}t݌\5w7/czk^oP.kS,[]dk+B#WC|z|-K*tLk\36)ҙD>Uo,$):tGULNy<~IU(bds.5*RfB3PxW># iyO6&'mܪ>T*dwp|8&5z$8iXc%x@erPYX(f;kg L2~XJ("G`aAV/| l!.NLxo] qF!YdH<፻1%[\[􋽛{FFB :Sn;(56aQBl齍J#ORrAټHdqzuz7Fee?hge@>E0iE=w[C 8E7Ë^nq>ԅnmY &*g+)VpR*'>(`y$ShrG:'Iˊ5mY 0"\޺_ieׇ + 3 S cm|]0B0=9||g! ^m#<џ౗ bڌh9>aôfww2t+y\ciTb^P~pVkY?+Z`yqC.דL2~f_0l _[ ~pEtەePPE0V_aM3]+QӢ\N4hTJWkZ<=WE-?rWpn^~e Xͯ:k$ #R~GFWok(ieg{W"XxpI /0Ph'j@] ]HhZή%ei2},)o] dp[VcE""YRdQFљ6gm&:g4$u*Q M0y =sT۾,&KݤΥplfjTc4Dw&*e Z5]/R" n[)= 5BVgXE\]H;u6Z'y'߹9v!$%D N-MS[ӯ7ޘ&JK?^ϥu@= D"BҼw2Jb5V @@̻6_d Q.m5\7&+gOeixOtyT挃ѢŚ>,!] 66qHu+z/wrVt&xt6dY O[clLx L\Q/!T~si($omsK9لp29,βfuxSj9mQ;of/BaT֠O=Y'\dv#e!V;b͞]6*@ #o/wk׺7b-+,޲h ڻJܞ]}M7YAR;TG}נFD?En~X"ǁ lMܹUjH5-?P؝ 턵c7[n`&F-$7ْ"_5?LSDRnI/R2?(ܾi8<,AopкBċ]j8!8T(F) (a/!Ctd‘c[ US)AaOp`?M#ly6)Ǚ{ o$:j';p8n;BCG/r+ ߔ |(cZ2_ƑDGTPFl|įT%aC5SG[1R2"u7_V>2q4/$^&(~1\$RAz\.6w"5`M"'ra5jִw^8_H 6ޜg<4LƦC/>}8|J8V g$c=';eh<{#%i轻hzNK[ X,b3@ƗJtQV4> %4 0s&,7Bc?6 q{G~?v9Ȥi_',Mv&K@򢮜&U({MM)|HSl5Y】ͪr.zb@ ^HA XtEɏIA ֻv:7z:'19"^nyxvavsv3!h1ǁi^CSE:qȎEsT;qTGZcut|L[f̉GIEC6 UR#)156l))hPsӸ[s) [F5ϏMFƽ9+5P[, كeT?r=4ddVQ9юitf'q~6bi,_ytPXY#]YJ&ԏ/'cB- `T{$ҢJB# D&>,JJ4}mW(-bW,һmal^F6Edd؜ K4 _w&"єgY O=2!@uQZ)UYBmpT,q儻O <`cn$ cNa[}Xh(6aMB\GNÒ]v)Ӣ)<ňZn˜\StP d{L~DT}7CI|m:7BY5t{U()1&qz 1syG[׼wv~>= a78SRoqŘ&#IO& ;ĝHE~D )r2>_ 'z֥\gdP}"qGtejq|ő$WvmJwL lV3ӏ^Ci.7}B*x[^gQCrx):?p+f9 &g=>@̡ KUй/k?Y+-noB's?S$&aamd.ܯ}BfO;\f3hbT,̌uOXx)x30}Qx| :<֍*+a˹+ ,jc,3{[c.Wu@2-:B? T yJu"ޮ=)6RKD`Mo⚥sukjڂ`gdNs86Xǂy~\y䮵~S *?/gE/Y׆l HpGy.j޸Rb[o]d/[2;JDx_MDǦ'&˚Rw5c`h6ڠ} dzsLf %t*mPl]}]u[So!+҈)ܵs$#{}jZ:bv, 07CWؑPA h@x¶nkת8v&|O/T# "GOwX,)f.L&vو /WjJEC{1+^I?l?h-t^_WCvOǯ/۸U{1+#=0*a(E#fiv'Nͽ }(BPt/%2/IśOl#=3lnR 4)>I~{+?J#\(vAjk&g^A2KV.Nb6ir}6Vt%"XC0xbcVLi+ymk^<@+Aw1 TwzEbI0Q>z)^ Yrzb1H/fFqEjf*wL"H&EJ(F+xv#g'Ol˔m*x},=*CX T4PasUO܈CmIBb Ԟ*0K<&$eI=J6dW[N+: nxk|iYk}ި !F냶L? D>r{}geK_t}y59%*{"H1FĎvjGoHeG)91oת7ݹL mN2VH7᧴yS#$b."8ZAޤӟf>,7Jx% 7(6+WRXwWJR/-T-D(劦k[8Ԇla;+;hR8PaYB 琐&$U; QQtHGlucn9Y?Tn+2ߍX︠Z5%;}|Ho`1v倝7rjLđ:CZý]*uֿ JR*Bzi!mз?/ JUq ڋ|g3tƩg|{`74;~Ͱ%,Q)tWn*zuXAyS.td|QԐYZ'^s4m6EӊM8^DCq:_^ޤ76LdϠ0YHn7JK;QmE% ľ%ҞdH)Ӆ/MOn{# //d0}uȅr6?q ^IK>FJ81ለ~tt~E:V^ҿ~#<Τ[uQzegRko3"L22^FQ&AYiyȌC^/6a|[V" y߂MM퐁e셦:^$>pynM=W4dΡQTpyFPJmR]SJ tÿ]^{߼%R$ T_Z2}Q9Xˏ;$ÁY%Q:olNOhf| ts0;Eȥ m* `-nꅛq;VZ.yr=*MS Hi脒}6ne]D ɿ}@AyǼuyT>[6[[%1J}PWU3NKWpkDK6* ,ƦI>oL EE)+;Dϫ"D):?~{C.{1Jş0ڟZ3\m6||[ ih?}`i5黼Xăuh^ #2|CmT}@W{B\.7B$F'>a ,z+Kc8̣_K>XTj'`cJ^$ PJhQiU<Υs0JƝkw!b4ȏ49ѣQ08YI#r aٜ t@gܣ(]8<̴T01q}Bј]nE/Xs"2&S]WV03}?}2wdx]_A{_s˒{Eh#$Bd$w{g ̍mM޴xߗznߪml_c>X/m%\ S8j9H^ e.Fȼ=Y!Q QS-A'y hh2QeƱ$eҖN6sKm'$:&Wz2H|8ZF౩C@PmC~ K&<#,7KLL-7H n~v-%|I6_2 4][ qZXh]:rKk9< H(&@aʍ)OYU"VjQ:Ǟ&:^A"Jƅr7Sg!z!9ᓰD)@$7kJ}h[zU'~rpwF`w&#puZxZZ8WU#?43 :4Uz*ZJjޠ7ɧp%ݾaӽ1ӑ rUFLL;Q 961c>,)t F_{`8tu` &>med,'6~0AlႜoUfN`V:G]Zf{b^_EwtJy$_b^7?%skPݰŧ|=٣ jr2jSyKnI< gFY\ZeB"|A0dT,y}`wK qp#B4fOnl }VlA&Xuk89- ZzXK+;5_IŬ+CmY3nS+j%li}bge 2Gu=ͦ+'<_EQ/=(gޣ/=.&H@42];˚3SO*(Aka '_v!qr " !a6ӛ8洟#O5%30ȧr֕0,:'ZwƇ2F Ǔ-qxlSM)$\T~|'I̴¼8B|ܝbjKs<;rR/r]H_V>@OH6NSɣV 0h DZ~_T@^*` m8$[﬊ Y4.~1>3 b_w+MlgɶIZx Db>vsx |ҹa?q&Phf ̶!8ܬX Zfxzb!.&9)wLll[ 2#7O#޳5`/ g>7> ZY[s,# NXjwA)~nPU`l~$k͗HJE}qM.}i|rN4pOm': ۄ420[YkYå*Âl? Vxul110Iek_dȼ`vx¶γ 5vTP#C'SQnX-_¯BÉKc|`r|D?6#INB\ѭ׋ɳ! sA^m0TOҭN_4!Hw*Ё0ϻ1_;\0;٭hFru}E4= ÑSHJb^6>4_ +[ѝw!hz4>6 %,EGlA,z=$m5a8,J>;B"N^RqBV4?,\ŗ1UMw ;b~엲9T1kIg MĪ=s24Li$ˍҪo-'J? 9mWΟ|x^iNz \*UelѮ)怤h:V<%j[3C&o(oO9LW2y+iی$SZ~^;]9sZ[Y6&[a/R9S_W #(ޔ;d)fti].(s>]Җ@`m=\J:YLjEi#y!5?Hu ،~YCýBxHt'?rvN7ts[&-(ԢώZɰ(2mmp4'x174{I>%Ƽ #Ey_{xg6##\a 1n]*snZA8֍J,tNjE+%jts|X6iH_p-fvM]7Vd_k;8%bB3|2gf^ ;4v̿X.1P_t" h:n2$%9q f~<#L[>q0^[h#Qf*[oP>E>Uo7AD⥻u^䩭) 6$62> 6^"۟;x+Znzqz1Q-K}tюt(Zwˋ=HYD9>R@/z %Ϩ@DWF._b7= Ƅ A8O ֌wPuhof_>kbWx4ar#5̊\ ?az;yzVuͼ߹yqXjfv3#E堟dD+ ʹ^A{d*[)*Ǔ}] ~aρ㖤#2l pVGuI% uPseaMscS+gƀT4뿤:}; g l͡$~,:^>]AkoJЇxPEK(Tou4tڈ{B}Zc!5@[ jzpu UFbnZXqv,&6aY;!z9οʻ:_ a9|cV*$XTY4Œeu"g:^Ly EŒ`PDNJ/LjI)~7}ċ@CVCK C##Eߺʰ0J`XևƻrAV?(H?[hե]RēV>/}O=,u):jpq_!7MA:La mw&[~ßaX\茷L@dE>즇jE?ċb Ļs\X%]Ma Wr8 +<+K0ac»Q&Fh/ri7)Ps ss/(l͘ɠsFZ?b֗^K"폑"9EtK :=V^lB#F6s%6@A{\l9`.򘡤چ^sSQL]=}t{wW^envפ3;XCxǯx{v^z6%CE]&Kך^NG:]ܞPVbWx 4\W"H᫆`:S>8?N+ˋpā,m"ي_[ ퟕ8}4^9$.5Y7XWb-{k|I!q(f7pkhF&ūv߈>JmAIggyqݞӖ=sʺkz&;'W@DY6_aÔI .JzX' ( R1 i_nZRr:g-TuUYyWLj=GǍXBW'Z z\U/SjOPF$>B8)5-%E~}-5Ok ƒd,,a(DyJٍztwE6j'Hn39@¥1oW=C[8É>*>X}ZbϏtC6iM 7 Pdx!3[I~Nn_pDOOE.)l\}p(uLn˃_IHI'ƤWNm"0/ nH\ A6H!+7~ey 0<,뭝Ѕ]Rj;)/۞On %wBI4d vW d"Qj7`~pŢ9IOiqq-3IOK,tMw?g Nd/myyeTl G9p 6n^6SK~tf]@|t'mŃ6YՁӖ_!^S~f1gyэBGqWNq6ecu|8Mr)q>'>|,/5e= sv2H {JGVtٺydh7M 9R,BL 9[SNǗۈV/Bkο 44Նw]jLDP"ʈ`tc1dM kiR~ozz{57!ƗkxvʍĺjY!weiv*πk %׵ͿǸppթd;DYe,8QnX ЩƤ4ю#r>rL^j af#P;7Pʏo鰻^#{6"yOvQ"Z|9؊u ߟp|.[ҞHSr|XX@%7B(,`>iw<:IJjq([{d9ּF1\zB9s)OD-Tʛ7O |…hO)H9bR޶bkgpUh2F@'N"YrQVD Te2?ªϥ-[O-|Y?Ad0y]sumJՊCubā)epK;2D$DO-р?`'x@pәk"Ũ.^{4ּ#U|yEu1V6VMełQCIsŒ^½t NU5c#6` _|?- &?#"2RDyɞыp')5`V NzlS%X~PA.`8σM;iMvx鏄 MWpdh_sz~͠(ڞ.u4}Z,di47$B+`*|Íw!|N[wR4S)t(dgLW; 9G3):Q}cm`򜼈 :*+1 9$"h&Ø5z%cWa88M$ebgNڦTY0?&r-4-t%=;Pڟ+陝? ãQΪaA+%E_<y*Uj^$8*AJ@) r 5!.@X` $tN8'݄!NzTt-1ha<[N#Oi=A<_%ӻ,,yp{5>M,wHGvME{LP>T΃,)b46B nMFKi銧q·+yxx7*SK .ISQe eO eA/q^5 u}ңד-b4 <  BcqPIX\}oIKmI'`;//۞C^ZMBf4ELǁWK)Lf`x˿yjP6rUVdϧQ{89ID&)h:,lea[hH?0R vXJo˄ͧ OچU|h@Tj98Lxwkx!sӯ 7c>1߻IBAҎz1U6q 20<_uHPEeF+@1#7/p@;P /@ }C%( ':#3'5MiD|?崴5,1FS1O'&Vt}|KX|Ki)a_ߥi V-T79m5~ I {1oRnqтC @1XO{)*3=/^]PpA}څ|*7dڶ542tGRF[l1|*'`]&gK[JXYFH9[u H^T< e%EƮՀ ͓^_ɧ-ФlOq oY ƣp(<5':iJq08D?N*h6!#++;r7(@_fp0$]C>LkvK0ʼn6ƅx-c72 -(Ӵ% k()ExVHec_$ X>__~j3É1F&O?,"Ɓvz)# m::q=M6[[1Ӻ1G- K6k=wLʶ/>}!Ri$h3dqͪ3* ަ-Ӑe6YŰY#p&;3Q 89M- K3)f_$W4*nRt,iKФŜt!ȑAi23 L[8_4rC8:dS UC5 Ҿ&h9: blD֜jYZDo:t3RAw↙{K 5̡S;f}U}kQ2u6`7gvN;H.ܶA864VX._ $z^.:xI3^Ϧ`Q/bqv9c(ebPI?xLruSDԠ3ѩ;.~P;˲3UKt,+;M͉l/_˲_0wd< Nr{b=笛;j}pD]!gulՁłIZ;sufѸ]ꐬkww~;©,3J-Ԡ$ sI/Lv}id!uc7[F%U1OZxҳvhO>bRsKcXMmlVX1b_>&fXHG'E;L+}ze 17{'AmuGt$['%Ԏh_do{KRn2'4h`46ia 3a!tPM7y0uEn"#cCp\?&M6x:X|g22_IW~xm | UVmvݒi1a꫚4J< U7!/&{-Rho1O Z > 13T'Y &cQzz+USAt́iJb e7qZQ7*䠳/2 j; 9Hx)W7YcS|E=ir/23Ol]*VsEAʬG%3pf+U\] ,ek]leN8$ڳU?ᔺubcdf (IW%0׻KI2ϿvvSI 7ohϟrՄ|[YOm&h>b4Ha= 1!kҀlnhW[BaY-`{;{˕R }lɳ[N~$ 93Fq=/`<P(9z/7܇QC.'GWрc^&h?o2~Ejr+iT29 Bzv4Ε ҂0= *8êdp<%ZK3V.G%"7n@eH-aSnR- #`%`|SC-NW"!^Q8m}^ V9)Uz1 (B⭊3@ _?PHaEQÞYD aߜͮ-huףTL !g_&Dtrvzi+7f%d{2u^v wĤJAƂU?fSB#lv򷲱Ë3m$qdQv u b k'ɽzEB#i.' 0L$U$bKG71YXf%'J1e,:*FZI^68nwZĐ>jp7Kv)g\5[z瑄7&,W+ N-w?^ au?&#~Gcn o)" nbEeXyi«E1$~з.$;v=%*ec=sܼGf +-m NjD!Q~[lZ֝}h n|B wPF(^(% =5q=ҽ\*زsXUɦ(A\n-ԯSb'-ѽ4"ef[y Z d86ȍ!%MDԀ5KiǪ|Ti;|Iŏ :0HF )kmQ>Qʠ15k0o>"OB'4#E٣|?<ޑ?Q=^ƠvU P0 j`/'π76"|s%ćR粈n0L7wfT&ppz֒c&؈޷0̂݇ g`Ұ 68%5<* %@iۏuVk{|L3<肂IVyxf{Inb-gdtT_ 8 )lG:Կ1fmBX`T^娀# ?!ۏP@Z8oF7^-'[н fQ%esEJkk=Xn? {IY[gޅ'#aܞd6\{\Hk@5o Rx,woOn0ori7) o qHh<3`,ѿ~,aFXNlkdEG)t8{-{ yKr\-\i(Zők~Ck_ݤS,'el>^+YA^3'[CIf8SZOz GE;Ծۜ N9NQ/<ɏ LDhkKQnI04B&p?J")IyNPyF%xjTpv:HA0C +ޭZ$"y.o㾪(jp+^QKeiX@ '>,WxZ?YRjW=x{gF_Dhc6kud)(= $Ui^GxWو{Ym>f9';i•R,݅FY_TW@,^:B`'UT]m`iީDt19McgECVk>.:f=ÃK34)Qw5IH<:wYyQ [+KAF\$=;K[m"S~rϠ!j38%&X"zWCnXؕil0d yYMXw!6yMm?NnCţ* @WRݯckPCE2pf%]*  輦RQd )ۡ7ohML/&<Ě[DhpLhn(5Ù2ތ;d&=~0u|S_$ޮ>Ix(LWLkzVa|mf GNgxtÿgrZIDa zf}~[X {bNgpc.KVAs}<Jh^î 1\jˡ6֗kqi*>F 0=Fd/)Y5q\Q3L{5*/MJ٦樳zMJ-ٹA.a :go24&-< <|tAK;ͅYPC,'|b!:^*!+.aq+3IQm ^q7Po1!qau:+7QbP=HӑQ ;p(UKxClneͽQ͂p Xw_1z6nńUri눋pn %N[%5K}6RNG>pY-1ζ2i -_'܂ W{C2р2+NJEUp/1 =ojiwgxD^ ,;p/4,ezzۧEIzvk`~^! @>QG  ol˃ weQ^7fYqIYe_56Es ݓ_‰謠l,گ u Aͩ/ÖMJA{}}0?GvN &$wܳ` kb'+J-A>/_^R Z#iG8|D0kCx@㚇UQ6@^6$VT]5~ݯS+]ţ>#MBfߨI/|ܣ֞g ><5[_;9o:0pIs@m3m{M7tRl@A=ܛeÁ[K,$>J3;##5ںj9(s(-*(ٚwi7e{C sܮ" qܣl4n$ǘ0FQ;" (8Q4u^B.uJKUn $"ru+q7#M׽H؂Y ܲ0boM3cۿ24}Xb*d[V#r aAG ]a)|M.`’n'Q r\E80L9/`#`yۊ{N^W.۰|pw]t*GkI2wLtp5>UcO[ vŎI0g7ZOU q vfuM _.P{\3Yw9Y+%6ūP/`;4Ƶb2:AryѕqK6`mn81+ͭ#,4 ~&Y\;Z¯fN#zZy5kUX.vџ"VC9NqvM$K'X `%dʼn% x Rv/Hy6ďjP5 ge8iz_2T1)Q,}DLoqio5`Ħ%KYgX!ޭ);y8iD{ ^t#ݪŅ.< 2I0a`ĄGpȸ V<{.;E%K.FǢU?G=1*/5AߘYG3u5.)}ڋ>QIWIqM{pȦ_]$:֬|!4vmn=qE:!M`"Bi߳'hw1+0lMf}53_cw2a\1!<2Z06{gw^!vMj!<_ÕLRȠOcJ1.\~"k(09`ynH[qΪjUЃtJԙuW~ plrWM| J%lY^W!^CW*g!> .㻶p&vE7$#=pzށ㣆435 buJ<B@覯.:IF&H>~^qJ\ hjE&y{8?CۈPn!JWMqY+q-"CL1SVS*6oȉZH YzaJ\4)+1PoJ=E1w)f_䐠fy;H8oNQ,Ņ"̂3tUG%ucS+!qbhva0!fi?Re0%q6ACͨ@,OMkBG 5*d)^;d7_xגe{bͳIltE,]~.9Sì''Ȗ'b&U^,qJܿGzyDlP_46 wP=\tW~"BHnV\_uܨbwKcW~&M3΀:1UgRpFtXg\@EJmz^!ʷ9ĥ{U(*e>"k&ԫ"SI ⌖BB8kׯQtӹE0>Gĵ8@u=ytX,нGOM 2*6mcM$m< þ;?ʡ$,vy y ~L"0 ?}*#88Zpe˧I{H&[E.VF, PsVFgk$!ФF7㼑Z{_JM= x5"r×y֍hib,Ka, PӃ7VIU3IME 6%]9DmB e)3j)'.\Z8aQ+=n~KUscÎ'穘|(!; QPD5;7飥uvf6ifKމ馁U \͹uq%K;`}`z NʇiqQ>v3sD@^{.=I|PuF<.0/;%0z^@$2t\ `=GQ.Ff$q}xY=C% b`hkaӽ?FDߋE=sW.`ŷ;C0tAu =Y>z26ML7E{P#<ķH|*mN+Z' t6YO ]CV$(~F|gi2p<.D ?hn.ߝE&C9\>7~tF^Zaa"Ƿ{muV﫯:H`r2tN?@#4ÍQ-)`MI2̉-ӴH,TbVK]e|uDyPסch~UX:,1qΛ^(/s.{?̙Vx/TEEe5x58ݔZ`=] ,H*xAϛiEB Ups n8f(+NW 72pmۈq9Ti>{+P@#E4UuD^Œ]C2ŽꜤQ_Ϩ2*d.V];ӔJFNpQW= w\xUJu2(`B/wR\čC,6l6cFӪ2 Ld*FVѭec-Wfflv&c>~ ܩ9r.F,QcD;EkWiSk~rq2 /Oo?عD =XF 4"阡X2-8^w?'N|8J#ޣwqh׌m,keaB|DD]>;{ C- ,"E:r$QVM}>,eNYtTYP<:yo8 NEXRWA;j(Ŷ(t:yN]u> MY tCm0ŏ;tbIϴ>V4@ M_8[ZV65v0n8!'GtƿrOduۨ aM& cux`rZã_TQC+N;K+,Ex\h&'"F[ԙMBeai~64΀uR/_2aG0 (&@|2 m$I&Lқ"F#|uym&D<,|G?ߛKo#)Dor̤!l<ǑS'(L|AhIDfI?֚d ^1q]FŢoyї-k# s#q[Z~nA0VJ!MD8Uk!78 {YT9 4d,p*pCUng;zrx:3>YPD\5L++/p {uy4?q*|{C#D_$%b9p`{◱iCzf2&J'.p6b/b5zr~1i<0S(>SW6Q޴aYOPßR Ј!~Aa!A Of XG[ != /jjM$&: +6(f,@NʵA 1{hTSB7J$Xg ii0}܁_F0d':dZ}a@>*5SNL22yf&[=7}.CƿϻN5`綞v~IEߎ`oIb4&9oޭ{Й<zgv7Be%b'82<`15 %Xڥ)!yy]yigT S; 'X;猠BSXhL41=DQhͯItw>NWC䈭)8, ^hlvHˉ:}So+ o_{O;쟹v~Ee7ߘ`j-iUޡwaL |ؤ^! s=6[.EË! tZwzc/bmwbkfKsMnTzKxk=Roswɮ;H1nyF|2ff>d%EG0uNL&%Kq_hr\{+f7uپ!`N5CGUn!sswC2*$U)mK4"FjArjo0` ϪG90^08JqEef9&(_t-' #NqMg}`hܩoe\\ AUk:j:W \:u/ US~qx6NG%Iˑx=+ek>2dT%돿c|#j%ak!r;4RZt gGQM@י36QFcƉ:@6˳u7Cew ݏr#;:2/ nү?{ 0n*1˜=pj Alr/7 Jm5x9AK6{qeKB){qWj^gR[1bJLIpZo\& 5X.)NݢCW`,YZ!dv)&ɯO"i3dʘ>?ф3P*aKv#.LɦnN02W|yqpg`t֥ZtI(8jU]v1גMz|_1b, SREnlVZs[*=JKMR@|? #Eˠ[+B\=jОPNwA~+Ig}C%S P;WLB[լWs/wu/H|=!E1n#|ʙ#_O҂;oӇx A,V <^;H+nZ9b0.S4ٳ {8:I]k̽y' 6*x۝M0g/[S|$x% 3q5N8|rG[!V3XzLӗ#1<̛BW0ಿut)=<'XhJ=Cv+G#~ Hm4R[-)j {]av?@.)/?nI>:[Ĉ2y+1Dz/0vJKm_!q H`$$z=kKHrf ('Y' ScǞKJW_IglQA 9=:BЩҕ|#nm.ŘRˑE"2J*y26wh3eMvا'_RW T4 ]˹]$dX9R+Q$%uš鏧8 :Or2)==)"ܰ6y16㴢jHYQwnh)וā1:=kMmStNm6jmgT'^k< !ZB E.i\E\Z/vG|njN&L9'Q^!mƕZcus%f 721.p]A;tm18:`xenz!n]@9DB}kLKEi(Wj$ ᧇ\}]>m:1o$7ߡp- +K5Fgi;J[N4C˪kJomqA86;ӖDZ}b ( (Ucb]%[4cXL+{.=n'Αk'| {:ݠmGCHMZCh?ȳIX܀A.gհdnu8}_YwzaL+7O LvyW\E2IcrhbȥQj12۩СSHV"i#wG?[ (?xMq1.f֥ӝna3oC1;^C_hnX֤zDFhx LBC{ڧʨYBj)+mGnw4Z V'3_WbMހX{kϩRqˌ.:Ǩ8.D=G'ۢ|fK/W4݈–z LJp~Ko 'Z 2BA>h iY׻K[EIl8 u2'sDp>>j (lqs< Wwۃ&y5f8F5DI[ k?߆ܗqߟq4D*hbv"")-GK $w7)y=. (_3|TNmw[ɜBA^_גPiU)xA#}iKߧ^zM_3 Dn"5ᄎj>:]]2ײf\h\-֚c*u֩j6Xe*,^"D+NI(ap S4Ʈߠd5b9^K&+6rOT]C!ScUZ@52,>>gI #R!mYSֻb'@PAnqR`2!M~%ybs(ofJOv-='ɞ@B v2ITV+rɜWյ705gX4d (ɽ;q&DB\S3%aĀon`:7PcuS}< R)߃7({`cq'9/rgzLq's(KUK&mL NH5Qgl7n_ù'8L>SW3Q<+p]DS]jþO8i\0:#`lWo+^ v}"6ǝ%|ГO!5총-ΏVb`l}^Y]ǨORo{S#7:Vb MQ_NhwR%+҉qW'WPGf ns|JR$gO&6dks֔y.#Td')jQ 纪p| KvjٜJKj*S0XU(~+mQ!Spу|rj9g^^}Xe#pls{U5QEg:8ތE{[YPa8wVgʈKĵIuǃz CU@;#@4dKתʔY.I`~ #9bipIʣF^uWw6BCm(j7WO/[." ThN<~$,0.Xڏ$OVVcTࢰKm F?wc Rl\ 0ʝ288qYPG=w| 9S1.6NJ6sTw m.`Ģf#__k$Ʀm(d%z|Z,E*Hw<4I ,'\eUVɫ>q؄F﫬~D4(Yuw.(>#ݵ#3 4G#h,~>h'sꙛlAnqʙY.CË Hpb8tӃK2?:Dv ɷ4h"hf$5h~Hw!(YgpL9&A죈^2\XY>S7fLo^,y=IADT#BDm]yz6 @&kF|QǝJ7qoYxs_Z5:[=RT@UX> EDoec!F t@uߑ$z 0;o]twG6VKǙ MZ-j%j~Jo2mP?J߀QŁ|&TZ2Muațuoi3&V,]U+-H>v A9Fz8Y=ֻ]7Qw#c~EfzW;+=K% ([n-jҼWidw򴼘̵EK/sX[duַ8.QC@ԗ2>]M#(F~Ev3d!"2eRFMU B'Tw*B:b圭+|g,5)bM돲&x~DICʥVo$0Ǜ(S~Ӡۥ0ջ:<PgL(x ?RSP(ez MA{H={QKqO\Dj/E7\H?Q-8Vd)fuKSL< $ġF`2a>)69[K=RQx0PϾ .V},ιr1n -gZc˾dMuYՙ`gN1jaݙ 򓕏:Ғn%|h%x h8+A_ )SRzʽm}Y;oqWݏSj[^f@r;jz7:_kh-u2V!_AQؕm<|D2}T2ӧC@E {QNdJ>l4o֢,~]́xtF`hL6hchcI81_xm~J ,c"u'j(}}朓݊mQ!:5jSxbh/ 'hS?EzMWFܜW7htaD'cEdGfd6uiq\fWxo*?,?:OqHdp]˚ VDx!5j0,Us,OݬC~2Fa:!PPYЙ(?E23^y Zx N)tMvQ/?+;r4#(wg^)4fVہ0M֧H~d )uAU8']./m6"f% brxc%t 2J0]є2oqvd@ f`nM~/:RŸR1~yYhA YpcCyބSnz.)UM^7Muw7D=չ''_}& @ev@r|wU̼xeK*$e!ﴑ#V~i鲃;*LB({E>] E׋DY%nIM1>YZj=0f=;[T_YC{{(S[{@L0>lh}7^{J2\Vd+IR+jua6)M_)'~6p} bKCƵZX\&DmYmX.~fitlHQGo]_G ܞgbs&FHx(,X[?̓ϝ'Mcԟst9)HwWh|d4#b:\9xkyn{(w~цĺ(%vN˳PZ `zwv9ō$i3̛ !@S-٪i\+1ۡzmNR-|!w0P/j6iɀz)p7K}vTc5Uj `TZcg3&YKD& FNq76 ђ pvV7oI8+e i$GX=}b1eH 1BJvl06B⻍ȓ0{xW#C:z/Ϩʹi}Co€4Gm).x M ˢ_LKG1A#ǧ?]s7W_7-~KQDUx]c"$l>=/A&Yֲ Ǖ xYh^f;D<#pD%f:@+oLQ#~iXR=/!FÚ2=It! JeVWWOkc M<$~ڕ1-^p&! <:/!zT561Fd/4-xbhN,I vyT0ꅹX m7Dco-r'<2%Kl~S/S*mCi|}Y!if,X~k3(1s%tNg+d(4~8^x/Rmsna̐Cf=t8 Q,ep}]~/$&~v&IuLM\;w>BI$Bttb;RܣNw2' R#.ji9lȨWvAq;6Rsʦ;jqݲp1Q77Bg6z aMcGl1WS(`ۢ!$Xq}GEZ2CzSQ5&To5 LYn&kNp"1E1Y810:RY>m;#T!l SrF`3˼|BdENfѻ*U7 ?(ׯ)\֟p ɥdj6 b` 0^M%O"I/ \CvBe)I+zPT,5=,[IA\q~c}$`5JY0_T&щg⮌_X=w¬,Cۀ])#XOh},d#Kr. tw<5Qڅ` $8]w\doRV'gxp姟y޾ݗrBȎ˒C(C[A9Sp2K[Vn.:OU+QVֆ&_99JaP7`q z񵠧6K&6\צ}G,)h?sMUN-d8~s['$w"Gɞ6֘FGOd@iԒ:ex s%_Q< à21h(4?Al'^{=S015 C_D!&{KYK-7m@KӗW+$ΏR ⭺F-:iUCtUڳ8uMH۸w7{A7' S%V}C5>|BA㜮ϋJnDO BrVCGcWx#>h{,Ъd^"[K9 7%hFz}dc?ԀBe.6/ >F3? fыdӰuQU3[:Ó7-5QntQ2ųrkDH r3y+e8PJ6\~'ІE>HP䓎u jdm,BD~`}Bo)E yA^(ؾ/.ڥ tp>̽qmsi''y9Aw+6arϮ酜eoD0?r/\xrbD+Eә] v)8tp)8(fB;>Н%lncܚ Z ;})9"(w7T7;মt?0aP6A'®*$Ġsk6%2>z\>o4RLrI6lK ]ݍNzC\ㄻaЕ6rWTqm \  (v?}NR+[Oľ \ ¾}J8|h|WY=_fdN%y2^ =x^\ wH"#nvG4HiB#?MƜx15 +p PfBJ,Plp?2:52w̶'݌JLy [K> `UR6kYƊ :q'4$ AN5HVeYAy>.2-2s}~-:7F_ bK7q+|b_ 07:̋s5p?!!}x4"JqF4E\!SŒ^͹$p'^ڟ7@cgEC[ H, De&4< Ok<]9{}z,/id.P #Ur:P]LC bMTl|\ Ew㫮d&(("S=wL,O$K6(И_fAa0`%eú-Rj({ UN^pz㛧|B"/]*#UU iOuv[{RGg{HI HցBY4 rCbnw*PDh1#*m&3]o|>ŷ/y}]t n~7;)u9\AǮqZG1R:dt?Ӌ׹*qit Zڦ{<,* Q:N}H,4$\D\QovwXF D4xa9JtkwͲۏnKŢÝa_fپFOi7'. xxrL"ڪ;?ZnҚ oP̘+s~67NP%+LܻidU@dlC~6xT'NWo|y'y:D|:`3 >[5_V/Kj1V7]נ-Ӫ]8-/o/<4kgVEvajO ,Zd$^Ip{1H &pQKm,c`Ou {FEn<5'o&qT$ Jmє<#[vj̆+ 9dxJ6mD#`6FiQdejr]AsytrЬ"; m6*Awk}[~.X#|[o"Z44BhT|hx| cշ wwXo?<VB*+$ P7\r*l?vU.:踰Q ^SVKMOvsV!|0zLeh479G/ * O1<~ڂ*urB[J,ա"!4!VT 6nzQHM҉%˓QDIc7d-nɶCSLaMsQ$'}kx /E0:/ oYP޷wsӗ8EH1F<|[A9e5uuT}u#AR~~`3\{ħx.c VbyR?-{ȇV-H& +@!8+'u'RTİlFVc2 y: tb/lBiw{Q'Upzy ] g3hXHt~#ذ%FK[XƱ˧ObtCh>\XA, &ں;8wʃG_1v~)07oU^BY$5(| 5"72y: "[ꉙAJy.%S܃Hvb‡djΤ슾RH#AY$L/тr3Xl(,+l-C Z2럁\̹d,&#A1BۙqO RBm`Uvࣽ3D &n1jS%[Md6қkq9q8[R#ڷ-M>H|Ȁ7t`ItӞWSER"4M]+*?hq%zi:Rxr)HKk¤Xah{4( `cjAsoB^MlHNU]>X$HHFHvr]"%lukŦsH1{+Kσټ~xab1&O]ؿ)њQ{OL/7u,n.ۯeVhQ ^VٛDG@@-<=nB^d}ŶۤKceIb( |&l).:g5W\ EU2 ŀ[e&? j71qbwy;o.O΍STˎ%4m&$Qİ>` `Wqk Xܧ0GtRiB"htG3ဓxT,tRL]!x0YS/ks5x<$MfGEcz`9fZJkvC$ ;j0РAmIuc(|%pa aږGR[Ni2 "xkK>{W J9o>\R;97*O#%".>:y *X'/xGάQewee/O7o[ѓrߝbP#ԁP(xTk1]t2u\z'Iub5͔`~spq{qn;]+tQSPnG`oZ]/,Od1mMŚ'(~1'dLXG7]F3 -eMnlR+ ;"]Yhc!N3m $^,D gxUb@19COL)$!EHƬ-]ia`՗50U0\[uS[Wtn%c(U?Ԉ\Am >:^.<<-M@a gju}kSc1, 9Jkb e3^Flh /#c!@њ"=F%SnjBW.Vjt8;~f󻹰3wE Dc;7Q! HunyLy 6Jq]mB,m){0=~Wxu3l!7#2mN Yz%!$fQ7 J_*Mņ2Kl;9@g<3Y SwϨz7}(K3q]) hBpr Co{=jNۍz>bg^YS2EP|K#`&&K_Ȧ>1k«vȝ_dUfU30!θej,Ӱ)og]%՝4XњX6ڀ[  Y/|5o|v^;*ل%+,zb;I#sğː[$@Bb#YC*`)Ic -1^V5@wR5!Mne]CȩЉ44߃`[B) }YX鶐ͮRF $m3e>+<9lx83|q:hCi u/p (V+F&P}vGKۚ6gwktNR2D?u}'lH7:/5)[R2ZxvːsITh8ƭmO+ b3l+k&ʕڪƇA*a? ȈPhn;)('6D}Gz'w5pt)S&cf#{7(ncJl l%Rh`B;+[?pb3l 5'o?cg*GC2Sb-%PˌrtG̛T/~P ,5lZji)ᕯ)*aKtD|=ܛw:Ylj8M]2my;p7K3WRy]8Bic+V|K>$5*9~W Sp ; ۑvT?C7o Kkl?c8Co q7 UףwH.lpv_((ۨ _7}&et$B{Lr mA" VJ{&o3aw9v۲jc9dmݨݴ3 6+M-Eu6?,ї[ ~) 7dD f̨b"!~1N*6uW\';_Fɿ?'aN;F-::糽y>WP$`IKݷ9XvY ϚۓԈ&y'̸T]J)6'z0udtTvADFsY0 '7m::%uʡ5BӬgX,hp|(f}]yyVX o8z N"e(`$B&7/Ѳ+Tvz 5~Aߋ @HatȖG?Yh{ϘwOv 57ֳbK1,Q՜n#5۩L+ɵ4x=mQ'Z:}IN\"9R5ט58j8e%"hCx vX^v9=U̗炿c;@ڎCmh-%0z'>Ÿ''RgK8\fL(-?K Jk#'ނ\M9xM:*Ts[ͥ%pm˙J>4_e:5 tJs8\'Xdz;1v.8|. a2'Bkk#E``Lm͗ߎh" ҈ļ@OO6;;w)*U0!FLh3m`ɯiNh[8βq?sRב"3w$n 1Є4$׼n5;d\i[)a.i8LnƐO&iS`fb1=p! $*Z lETôxVWSgiG-]%Bu[XJ:>3,.^r&z27PE/2.iu]QGI:sfNYzL[Cg› @k{vicdwKD+>‰HLlzw}s T`WBYubp@jzq dPߞH8 2XJVas Ꜯb+rB:]_@Aͺ2=c=Yu1 -n&Ĩ3\cw?JMUDKUR'zjagCZPƌo2;-3E.Q|Vv#v0] ]77PFڒ*niv1Vm)x 7d1eǓp^־)(-f^Ì.,@%$_WUqy5p8geݹѱ X8{/K>8#71hU&uSJ~!GN8̗d*jFO3l)i좉X4u9y92/i`Rrdq @dV~72<'";.=޶} V$*x0 +';܀&f={1d8X5 EטW٤?];`{qHN 鹘D]K^Dtc(CmKr jm(0븓Zu]|9T7[ ˮ7%,(;0&q'V4A+/75=!lG"k&KiU(؎}3ƔOݏ2вc `C&lnGR0o0'#k)ĺ`ģ5LNT5i`sx/3.NJ}o%.qs-lcLJN՟A0~ 9>' tnM!+bUZmch?h}xAKtxE\7M0\a spµCW.LEH|Ϩ[*xJ/Q$g/bAPU# c<42lLxfΐ7"ɀ(BڇZ ۥ-zm eb\F1y#B߃e?X.W.]*οD<kػ>0[WŤx.|*MR&+6(v.,>/hrG).{3&>6PHqTmxN yS_6_ ]@ڹ}Gp"NW 뎚#ZeӪrAvoX3(?:+vH}m"|u&,-GL#y$˵A pWὧݏI[rhYu鄔gᵊ !Pl֊!r ."&5-%$.< wY-RCwKBCC L1LX.93b ?&96r`2J';Z a*u_ۻ2:Y^jxvA ]8j, s%Kw#9Xn9}+r1 =8τ7p+_-.Hf?," h A\R ܅X)! n3Rqzw^M J23YM;0ϱBâ}S oyZMPpvƹ T(S+u<<7|LA%Ի~׻/:+bu)i|>) EgtTlۈցGO߁gIA(nu.m8b֜_fҾ6#4O*R\D21SqO+W*੻t2 "2@^]/wOOQXןtNE?4E'3v!v\d&?l1\}AWVEQASΝYSxšlfha!rNp#R11G{CU_Ԁ;?rܫK܎ x)"EP$_Z.Q85_vaQ?I]g8:ܼih,o:%jfnI9,ӑUD']3*foZs. ]]Lmoi eZ9<i*:Gc+=$^y]VyayZO^wfQ6;LL`T 1h;le=o,>R9u:(+%@j 5;Dr i('ɅAa$OũߢÉBQ,~'$w+5 {Vн|@~:*kBQs4-|sM:ڌ4P?xf% ޙ7ԅ([W6xK vɔ}gذtњ_=Tf< "PG|4젿OxÊ0;G#obʚZ2 "l\3*0nv_za62R[ݸ_~7+Wwu-C6pJY& ~"EQtn,o ^ꢊ)z٠sT4N*- a]87b¡"pU!<ӑz=ΜM"!fMjP\lQN,,cZ4:GhIe9ݾZPz`ob(3Ax(*Q9 2]^:{#3܀={oIMQ>x}ƒfrK&"mҌbGCɷ Cb nޜVU^Tɣ;b1=w9'ҸxU.,4/L>V$aCB s }nr,[YJsA),;kT|Zۖ{kϏ8`a.)_i{ݙlyjf{Z勪z{=/,"8+cTϟxV"i-@ ).$̎՗ VoKuhhX7mIV> AgLk.׬ªx6]=5:~z~y#}zᮆ(fA)?Хa6}yK>`nJc x!R6Ŕ6T3_fHc_~$Yf?Sk!MZ/Ǎ|!+v(^-/ÏK`]f$htIxY27 }hZVضuPTk7dg&2GCd8@glVaIʢ|&{-:7 Fs 23olWq ZUےғWh;(* +(qwrP5b!*l|e > 1^% S\ /|Za! HLѼ @H$$nxq4.5N |;D?6 tZ4 SX(R?0;O$n{7aĜ?.)z^v*%'vynX8T;dҥK"3KA655V|zD%M>#[ WLӬ 6xF*i4ޚD$R/خ*$!vΛQ.tfeZ݆: s$ @4l8]8X_3 \*ќ9RE){Yӿ+; s^ 8+d.S5OiʵSD2sQKv٤`4D[RN(]tm9^?8q jw.>"6Bjw `uZ+KܿrX8u{.hp'M2{ZJE;OUPi| Ķ%=5ސ2t}Hwp}ـV y?}"߭\="ҡ+ @?&9R>ަw+BރHˣmkZKL{ҿ+!շJ`UH.1U,G`R=;߬ -QLG~NxN{䲫P'v ]L=y(Bף/+34ckt6:g?֌X'>L]Ee"Zkn-SQnlĝF:χ>u.ˆT'ù۪[,8if1xa ^Y\Ͷ 0}6:M3zRbRvM9g#5b7R5!օ/FY2'x6 @EITx&bĞp:{l1z`Y0o ;oyԊmӚJ[XQs*_t,ᓍV衸CV2I4iv(,.#E R\QCo5s^+;8xu {|KT7#}Jc! M.$Kqar;ZUn-HwV 3I^s}yaF2Z+ZFK/[kCƾ|OX c8Ӂ|a45=2~`h T8QIݕ-w;LTi--R\RU0! {%KKuqޛD4:-c[KGmek%-m#W8,E*5+]S9Z TF{I}&ʴHJ?k(=nMu:9zr?kT*XؤX24'*a3Q-v4eQ 2%wTPܘ[u$Űoފ- lWU:#˹#)CZf A%4YX~ʴ߳dUw&`gk?A~fQV !]:f|ɝ:=g0r`&Eauvf}#\iO FΥl f<]R #4@OiJy3h(:jAhCk?;Oٶ͛P싩uE舘+ N D>Å" sc?b(R]8JN>]G]}0) J| ۻ׆=Ou$ߕBAزc؈9!sT|l+ N!"7e,*w6`[ݬm1]Cے+}êJq4[P}|_?o04asAB'H,c܍06JK4cPt芒L9HR~wpJ8T?PܳXd<g%&;Z1]k'E*O,޽ Suyuvo X[rǯѕd/?WU/B }5sP$uɓ9W5<-)~40NaxBHfF/?rfP-2}uxm8GY*AC ^bG_eWF@O&%*: i@!%nl$! :hX `gXP)(?WXRTuŴ#mқ ܼZY3#aa2bF})8-"腳=A*HAVQv_t'U"b6uaMݩN4c$fݗ͈}f>ZApPZ욄lp}ʨxqbQ.~} W+?'6hJF4ebiqcyC+zm= {LJU_d zOW@y# <3AlAI1p^/Ż!.2z]BIT"n#ʶS'^hʒ/fIbZ\J#aF+"H+o,W$cmc䐤[;n/V&/r`VLsgprq+EoE8r tkIi74.m0bMYZXeZRVXma[Pa5pw} RP/)%p(T0zy0Srg2I}njX)g\3|XaH&EA%p"F532Tsa$0t! $zE`ǯ"oZ;~nh_؈ $B{:w7#:\_+?}Lv,Z  kuD_vK+Bp(㸱Q(>Vg:0!搵@ފ-TB/Vv趲N -lv rEeлEe.LlJ¬i$>%j w>2w|m`~@il@{uCl.H"|vPm"{P8k׺?)s?5UGf\2-nZ۔ x˝E#bP)>T~!1Hx4G#~_-;O8ת)F|z >, ;oTq30@O(V<Ÿ;n3܄q~4d\ogtTG?53V`1+>}I"JR~FDrgMW7䁅BƲ轠7@E0NH;ߗ(c$‡1,/[-!5WPz,Y=\H;4kLXƦ̐̓)sH1&vmkĢVH &ƽHͯuu'SjþN 6#h*vh4';FHv]Lz nD#9R9 !s8ʖ9EfSRA .pi :_+g+S}dpK6|-Ԟl' ;C*6efgTiXܺsQ~^.7`'F~G*Y"%n֭[.uC鉱+{K.ub!~&q#HQ1XrOG[ AGjmQld6x4A\4 ;%lC+]׷3Ԧ<4Jn/axbY_VU><~xu1e)al;R)ȵ7)!F*y奈7hTVyZOvBmz{Zԍɂ5SgrSJ2B@iOx;:LpnW3^2,Hb7Bղ_T6Di'v>8>>=$6C-g%"DwpīF}Z63 * ۺ ϰX@VS0ӫn4MbUj: kb#^e;c@JaW9Ivk'qD¿;5Lʗg)%S.wB9 G_z7- E4H4'tSAn0mmH"WMK’}NmqVPWnt;əV[mi4')Dp6u6VG<xi+:M%6@*`rJƃ1%Ѻ͠CVޜhoyAS0_f|C?ɴWL.V _"æPRX |-N%zg+0Z ޏD~6nNg7/tr4~iC K'Dr+M Cwvd=M>k8YdcC Z\}Qp$s 2uysb(8b8aߢFiΜ)Oup˭Xw "k^^Wt=EBr+"TG(,t ZF @yZfJk5KnS{xQ`$Ekx<"o[rC~q%dn%nqG㳱od$uN{n> ejj 5{t6.^b5WiA+n_}a%aP;_ .JQN >`q̈́પ*з6(G{mAb5>c J5I+10^.b?R!uV0~|[ ULtw/,qU-3Gd6[ 3EM1V5msliAQHM}aPyq?}G$h%@o(͑+ܠ>z$o,n>.+;.Be:|&ҋs Vɺ8^"S=YNӉ(Pn PBN0#q *wFΨ+Obh2CāMH2|fȟZ? K?æ/mh7ڊu/\n7*Ԑc&"ܮ HNpZ \INz^rySaݿYN3icz>=ʰ耕q4&L'cKɫCݳvğʱ#1u(::M櫙/ r,I>tzmy6>B5xACQ~_$҉k㷢>{'^^HߥYZ̈́ =BFFoKQPvo a&4.ŧr$m8,=YW V 3UӊO\dh >#˄z y3ߛX)L=j.Lۜ{*o)ZԢ>\, ==@4:~e&!#\EL}{9^ uyuڌ֫a38rB~O6# Q"o:_]ɍ?T[.oO0]&p^>bvb_k ٻR:9\8 /HMMBG _ p92 ],JUc h0mWGo ) NNLPVjR&Wj[nȣĺ#r´d,jOe,6AyF){Fr{ItQ3V$o<5^TE}XXT=2MPSE~DVQ@f^Kxe`=ߡB8=wu<^-nM%HVGgS іBOͽ;]ʳ3=_nEi+Z)[c_DPWc~4)rjSRVu|/4Ծd.qϢGI m' srj0iw!ԯ7iFR|+5ɗ>M^׼0z8>Z3)&Y ך"1!#T/. *+H0iF Sm еnA}|.o(Ĩ3CHMA;Qŕue76 L_}yFn̺/AE x7w-FxZNf\\D;[PA@i_mWކFY:^Be\K= (˪?\XO2~1"JrV"ldbQO8(ߏaÐ~aQհp$}J0;_"2u?`I+W 27 sNQU`,hqM%TT+Rrޭz .;K௫<:O hG'̶-0(륛Я X nvi6&[4;xM 6TՊϧ 8jbmJFc|*MY.rxd V"<gq(5-[F:2i7gS,Ce?F"LNb;\XsrS1tyh? {ر{adSb'jl_QySo]rorPO8t&-F/QӲ\ճM%vt !/E9ARa"톙]^d9 h|# Jd 4L@I7sȯ; }>V+'%1bLʵ8tԦ@Id_kւPnƧW'NVsPaYpОD?047ٻ,$% HL~^/SIRӠ̬9ÆlPdb;=g[(q}'z8=j :6@k.N\~(1Gn"ǁ?3woje,9a _FrOechͪey Eh<c{@ʽ{QmmlFȜi*+K@QS %٩_4t*8gΜDxtvB%騖[,ǾG k*Ph%@yjI-ث)c=v:p} :tOJ9:Jk:6IҐIL{vv,]O]O3޻լk4g_$yIfdkV5GG) Puܖk$f䂠HD垛HOiӸ6+1(`TK D&zUz?lg񞰪.>-RqYAC̶**N/!WV ^+fmc(5n/u2OnC,u"n?Uw5@5e%& DM_@R2jZ>"o VOHhjk s0 #QȐŽDE%"q\U3)5jf=}6;"UƷ[* 4tT5o$ω#>Bk0=9lYQ%B`Se2uhC]@& $TlRDK%q;Cy]^(@n"3܌(a%j]t덠Js 6sYi}8M O`٤0~+j~!R1ƸJ0ޮc1xgbKЧR4ݏ%Û#:~d!˧._Қv"4rGĒA E߆rdMhPkl hT\wMEռwm*n`Ob}E?IÏ"S2&̐bߨI/D[qkvgC/el> :O缼 ?S^S ]"=ZO0_45Vf2Q/N ue|f<9PN+jauG |YB?|'Bk8ӏ]'NLs>YSbĵ]udhS󿐐'Va!u5pB,x^Ș7'gɩZBFkx$ 5C e^7["|Ry3^`Xw/kQFbRYL U'[<cH9߼pS>ZzX,Eh`xR]5_VxC#3 y|ԝ~ƞs :ٍJsa`%y!P: [׈ʞbʜ'qp*7ncy^pvYM;O3JhM$WnQ\MVSP[ LoY =8K4Zér+*xqTÿ0ƹK1ۣd xdWW8"NvHTTP lF0XКnB>b(^zˆ8Yr"8d!G_R#G7"6e,ZU_7!CV:@rD/ JK|2+=Ăq- ~=2O.':SvNmV QtdEb(:\qU# Zド6˙F"͇qT5UOP7߈d)+v-ӮPN6uY?b"8N"^]RzzIqqA7sGHp[/J tp>fvf>1=L8T2A0Mqm/1bNnE@o[` ,;6 <×L|<0uM[EE-` j,̝&1!QtZA#YOa%{("^ "ZY+FOZL॓vvh/yi[1"L3euuڟ6_ŋi]Kv>)l>X@?n9AkaFJ-t@7Z{țN;?~z)zr.#3"(HdI&b{SɁm(Q_2}7S<K="ɮ?$^W|{!l~rQRz?Ñ9 MdKl?b4|ʷ$mA"`NS dQ8s8UwPsoHۅ$XYhǜ^-.:o@WTKؖlsnAnony~a"ȗ`;ivY]%bii +#6ꌘ~SM( sVw=(Iڝ"W 5(_8lנMxz}8 Rܴd+S)1BmĹ'dC*؍͒?LngmQ jXb$A=gw(OV,XQ~7㘴PQIˁӘ{hڗmJL`:(d?8fJmjM"<9RJ"jsRY@7`L4;]<\7jORػQs8U 1@[g($Iڥ%Ybك[nN=CsX'ۨqM!6xVRLǂ9솉LR2B!\A#-yX0}^ \J2n6!g>$A4tMu B7jtz>atL@B0+ 4|nhQ㩽& 3J_FX~Sճ}.BWֆvc4 0Z->Y3aSs7&&M; 'zR!1E/2/~ WWt-aeahP@֋ [e;ʞ!)=ۺ E?0_2StQFBݻE3wa_9@LSOGڝB݀xyUK}VDVIt3RAQ&@-b{?cJ2eR\j h@yvL Zv3:\`=y?xXG|(e_/k94$ö 9GT)ON!5ugdyem$/RDNh*:tHTyl9S;,*_jw( M4 0[&4*7#w5GDž֦.9lDw_2^f:m|rFgZG0uQ DYC=~Đ\A6= XXJG֞"% ī0 u)r @%!&,b'^A\^gYd p9 ƐL,WKix%q҈u'~cT<Ȣ)aC]<'t2\8g4Z#H•,|DlIr?tǒdڏR5P-+>˳KcljSrM$:W 赢Mcʋ<tCT V<I1E*H}ihy$ĚSZv#TtrWi<֘Ww[0]$`"X-a5to(zDS!F5[r8{܉i+}bqyE)M/FNxv㿢"MFNDg6QWO:rMgˢ0;?SIE}aYAV^3kb?&ԃi%G2o>"x_0QӚrLۙ?=mY>BE=h3TdCK/kT^1_HYwpmI+;+@)d]r*dZG0z2,>_f廜+8m X_AJqYELu4K:aP5x Lh}w"+:AE_Vi5=q;AS%l#Ο:"gognЯ I:<1J4:`zr<7`Ȃǂe]_rrŇoiH%mbZ%U!v{\b[W-2VU;%֛ڗJ#'㦇_ [HD0?(}$km6LF٩Z ʺ;$c)li}2 }XmʿMǂr Xy1K-o}?21tVWX[(6l{@DwOR(TKEig ʜMxȘW5rJ:CO鉀q$"tZG !1S ZԌNwCYb9eX3 \a1[לϺ@YBM="W䔼i5. :'s%k:vw)tNgs<2`qi\?~X,2Q9A{QL|pb*ٞ F*U腷AaV@k | 26(dU@W4׀_481SE]2{}:F,$V7*ߦLx7Ju.cwPuPׯo/%Π-5sh!eFDKhw}(Ip|[t\ EdU9@0. ¿e˒LO-ź]-eguЍo¨Ҕ/N'RcpVmxota.<6-3Pپ JX*]BVퟨ .Y8~P[\䍌Ƕ"xBMܓ$1+턏bQ?qW)t_Om._iVPQTC~@|;ˁ5%ꐾ~L0yRrھ = s".4Gyx3z88n6Aa)׵B4)K*L7NVҤcU%` ~Zv ۫D?K˦="Y[4=c)S#js#+|%e11:L72\( %vq*J>/Pty$E%Wht MITt>ϡxZqȳ"UqxNO*o)~N~dhiDT'DӌÁ&5F?|3?q5<ˠ% 4Fov$Kέҽ`_Ș}3UK(9N/1TIPmHH&# A5{*Yqkn;MFj(0 <z%lX"4fЫu>.䪆 Lo=*2PIV 2$b8*)!owWNϰsӕmar 3!kUk]sԶޚC=?ʌZ%#Eng{aT|z+| !%+ZW@& z~Mڐi;y*QCۑ,E]> 񴞷}We^:'8$El* ,BV~%AZ.J8hD}Y[df`iM !oijvF ,sl`!nTDRzz-cQJMs"6R0&(U o&e{֣ [3_CĽI[ٷ?י1;@ILk|(Uq9ݮhG`Ng,]D$AG v>x&|@Q+ꐵSڍsZ9jvG"䂽7V/bJ},  @QJݼyБzvvkxhpgو*9I>|)a0|8 cQ[+M{'t60O%V1;(>NwWk@[g+lU? H* bdK5- b vCT@ ?'8&u_5a LC'%c9+ xF$"w7}zrCXV5؅IxD5lQ$Y[Qm:>A2rP Fbc.tJګbk@+WI*"Z0d!^N7N׫ǹ csJYZŃu `{!rJ[oͼLN ?u2mMDc"ڣM9yx`aAXY@7 B*{A(\Z/XPC60RrsVg ?9eIJn> M s8Iin0x=2%ʹ ;gӔbǩ)4 53㓜ەATu.*O>Z$gF-xi"k>pèB\ 2½5d,Rys`LmFړ=?{^ѣО6"WpSo0Q{/K|֞3l<٘COPԔ5))9K$P(wӿ΃Қ z.oLG۵RQqs9 Ώuh [7Q [4cQP0`Vܷk"r3^4JAe^lǴLoZzVFJlJ$}."END<_错Co=|=e~[.d?xv_q}yyTmxe…O9YQE|y/糲BB~9{J FQ|XL!9p۩ٿfw[Y~Grz,&3YarĪ>f|ݡ*Wo2 - D`[!_%77ijD{ y(` cZ2J]X2L (f -z9m!K kP5: CҎqVUa%2|(t)j{Ux`"#&*Gؐd''reN*ʶ];%IEjO@AxW)Vlf8զuaS_Vi5K^dɭI> O58Y:D%Bp,Dsƙn*gN7skF"5eh~ Wˡhfw|n8ɢJCC aGxh`,c?6qL+"$;>3 clgϻMCj8~,؜uiqަd7\_ 2yFZDpRHaD丳k(dJJh4f.Si7Ӈ Hb*쫹y{q0bj+DB ^M&y "7ue4u_W!F0= fŭjHVP*zhQwY5mt<SKMeZ`g12M^bč H-Hy:EQl!:i4 4 Mr4{>Nz>©9 dӍ 3WVnxJ$W{j2u{'Hj6ݵ*x-|W&BX*G AR2rRoWZ7?qQ(d_y\X.Uָey83'Ε f zS]>5ط\!%/_" 6"i FynH_&9||svNE"U]3BP |}VLc*ړ\ks]{rՉ^$ЋCv 3w^nrlW<F5v?i*Ȏ{R4B_CKrcmieVtuJZlfG@J"Bmn10LF {`5O+S.O)v`3V KIRb!ۜvSjا l3 LMEQ`X6v]ߒO;W5ȓ}+[|Xt'?ᐖ~|h#YK;z|cP>Wbd #D8 #МoP_` 1T8ljuGZޤX*2_L:=J R/`D/#,Luϕ77JZAq(|Ok޶ҕ"֥ f3Dl2ˆlWz?ZG a^)^uY2r! &OCl8y[tDM9mI%a>|0YJf29TקCr]^dFl0r2rKrqNdVǦT]Qtd97 tJ'!o\`װZ[6 ؅E =[Sݠ-n5dL.7o}7OFטO G(S+P:W,ΔL]:40Ocyױ{H|9v H89(/Xw(@RAkDz,5G:XE!ȼ˨) ),!RE\z2wU uxvlzx8jN9?9|a)[釋:OqDE%BPl\WY^6 {n8&wW0"0͏eghDRVli 0,$i׹%Llu謁wM-^DL:>gh`yڐY`h%|DD-1U)Km\̾о *\B[){".47[I\/ r;a%8딲K g9OkUh;`P&GN;PW>7*W=JPSBuemr4i%mi $X\9ƫ;,?PG3G:oQk302dEYvUbQ寔f{<V7W"BL縴4a9'};H.a4ҡ6kTFIM` D-K Oe3U'N> q`MZ]닂A~)dӻ3Q| Cq%USh7YVX*BJj1bl?'a"stM/Ѭ`W(saHQ׵KxU~i dv2 8O?Ԁ!=drT1/z <,c_Ɂ=&LF(/qתJm1=y9ND \/ (>3[gd_^.\M>֪Ni/ qQz 乨0NTr9o`@\e]Le2miJ諠31{G@?erlBr]9` ($R+""2CJdsa,\qH4FC4| !6 klչy8lLbiwejע# 5h*_ymnx4EiquO0d歐K"$gSHj|CU~ڀ$$ws$>&&#cbQPi-m|&+¢0J&;KgI'%"SغMQW>9bO).W"OogM OD2زzt\2-T :¤0R+yC|V.S<'y]ftc~ꎞst J `c&ͤ%$S6Hz ]\lWpJEpƊ< S$O፨{s H +uFm/u }N jL͹EP{=@hù_ϪBS Y!Bfi>kxiNBkQGPy5,$ue g. "KˤG聞h%~; k!9i9́ÉvI1U ?._rI-֌h{F@Ltj/yhGzD3yųɆSnZ~JDՕ9lHzֱz5M:,o $Bz2Z0r ?f'kS-*}#* jpJ~#15g={˒o_I7g+>?h m 1n*tSAO(T1dF!3DHJVs&;Ĝ]EhVc}vlcm "$>8*B;Un3I Ugo%6!6q\=6M#"Xv=a5*AIP qӺ.9q v9/Z?I,j4ٺVcFVSAv~9=/5Hkud[=>viMnB#eM0qCݶB[ڜKu(6k4͕euJ_gѥտ1>}O!WYN]Gm~,3rAd)zbct^D>+uCCrm;"ޫ+ y p%Dm8UhZ,AMMcɏux#]I5%Y>l'oBt)GWBH?oh7N?J[ހ$D?]>ӋRl;᣼ӖB(*bR̃znfn`ZX(y=ޮV:ͯfJ%=~7]P(-c ub\3}lvѣ}oT-<֕D}'1NKcHJ|9>pQh8Ŝ*85j~IsU,9ȕ㍄,롆R c`)@$ɉE滒3%hT?8m(/@ds<h0-E%ΑK9;E-$dbM,HʑۦF8'L,$wۅZĊk-K.e8!v|!DdjvL&鶧 Tt?(BJ|=R6xtJ|_54k͓y sY 7yCc]Pia }%7]$UR@ F >U: 1?yT:]rḭGOe)7| (#üvǶb65h*/a=d010OGС8b. (!dAD-Ʊ11|Rz \4"Cu~=$@vœ,)f,vdsCRpJ޶ՄJ2huʘh~ļD)3;^*[xzh;^r+:*@án?0B7gKKXYҊU‚ p^4 FxQYKϽ&{ss`8q򋡽LKrAtAFQoi {܎$Bא-O1++ ө1-9@Zv!o!\\jU"2N~8>$>BH_B8~OQde`I87'Ы*u<1SH= ~C-< +~|$ 0b?Uogd\)fr O X(i*oUUi wxy= XQkbK`'9"G[iYXB@sCVgq7#Uy6`6RfdLiCeM`|GϪBJ [>լ rOu`.: B,izv}8!t"(5<¤t/s_h }hKZd,)*aN>qI>@Hf‰ [h7a?f\n.U(0RpSS~=L+If1*y&F"f5ю?]76h IJSu\tk?gm߶]m4%YDNEJ]P'KS)ҋS bMZwD>beP:yHi('  @3D:a癥+9dSŽMn -A,e4Al5A܆ΖeȱZGqM&SKރeē[ȃ+}bݐN9 |EFڼ:(!Gʁ(t7ð U?vU*;:^"޸1<~.'oG(]߄?<O\0V刾Wz+{>lY_ިfV =~Rp So-j9$l3nN6bpdHX!i\F)~OW5q E#y#Z;> LpyG:5l頧Hĕn73킅FhR\<^ )K$P ʇ..20nMB¼nc>Mqs[N<;Up&O+kn(I1 (&pC0L`1P6fSCiվ^^` H<ꦚ-4B5CDIl8#s+ˤZ7\f - DQ< fFV$5㩑c>d >dī*{~ZJN#+K.smz{3st}]_I)RW`oRɀҎ qp{Au5[}h`gDM&Rr~$Ai0R q |fjRot}; ˓ghVc6@қ i] sPw}hq0hT@* >/yI?k>3 D3c:ӛ( KڱgK}|?d̦F$|ηR:vLy݄L2)RѤH,I$"46V8Wwq{f&?k*(>l[044MD5zV}I{ߥjm/ej<+SP% Kfm ?t-E_xi*`! $J-nܙvcw=&iUz-<:z-;ZNw^!(zH$;|*}1*{Qʵ%PZ<&_Y!Kp?lxU ZG*vQEGn%Wsuޑ XGǫXHGȡF뷫tEJ0%GoABV@7D8̋ޔ>p}YLst5r !*R}v騄稲Z1νa ɕ}Md?`T# {b 8=d2~֩zT`9?g7z$ )P-pڞxvwgyCbGIK۠zs$SNs )A G GmOϑcv^%xE- exD7ō^F.~w!nVDYܗެqcSi'œ]6=P;uQ~.Q H2\Y_Jvht!gdo]Kk}^l5^lfe1P#RsA Z9sw5zʆ>q\PW\ʰ\2׿t}t^; ؤyEBuѰvɐ_{i3WV{$^g%fa|`ߕVK4B<t")Vmz}xpdeoT ڔѓҹ2;N 7olE&dB`'}\3b`/H.vRdѿ,.rR|ָ)~oa}q~ o4:YSiV"wHR3%'5F )~4q/p uZ Ů]H[3L1-Dh鬺ѽy ΟOL'J(j;@Jw ǒbH{T(ڟĥ;VeHD{o_ 93a|WZ9\L噮ќc U G~ӼlO,:QBup2F|unW`x;PfIxa8j"-e܏{B#O`SN_T *w}61vP$0Y'f7⒰e$ہhO5K;Tt%L؅# 멾*,8# ƅ_8;꼛14rbVj@qz5.}{kZS=C{W0F{q.I(*UAf)TT܃PBhO a8T< [/ptNf0f4"3kCK@Xd9,Bh;e݌4T?-:syA,/Ak{R CUI@ 5;'н<_5i'?lAʐQ'Knc5u~h `QKMFYl9^20dރ,| ՖtJ UξcRp+׈5t[k/CAaygj-z|Q¨OѢw7xC%3|@|{BuՏPCiʶH. >1WN+h HԌv*,;Gӄxʹ!=(l~D\${ 2ӑ!СЬcn/ ˚DkG!_2Šd(]!AF J,[քD>1sVƮǃ !{Jc)3Ɉ&NV^>$4PF >^A56XL[?ts܎ht H%]#~vy<HQ<Xc=elsn%a|]DHٻ(ך^ǒ>kFDT,N C/oZǍ+s[0/:0y 9ӟ8e냲HUG~)/঵.IX qC1Y' &bj#6>3briE$3X<"5idOySv8`/ Q#rbc 3z ҙ1{ ]dA@M'K4C?VbU)Go+Sp7!Oٻ^z4*uV<_`P-\@j )BW+"^BJF xQHe,FmAnN B׌D{>׺хf&v9XP U$,+x{QC#TOxKb5-hh ֣ e`pA>MϊD>q![?C޾Ya81vjn #!ʗ˼Qtx[qB\Va\NQ$ۏUva[gJ Zd0|QwGH1TY6)3R\0ޞ$#|A-NEdCnQ-y@HT%SRȓfh wU' gKh~ݪ(7>No4ϷwYdRi c[)N$cVӸi /_ohat,I mquj5 ot9Š0આQ$ËIwpq:NY&)+t'òj0я,oDE53)&-jP-є}9/) \@|Ƣ:'$yeq׃ƖeZYڇA9 ⬓7k(ym=Gxn {s稄mL,!.ĒAGNEWok?%@Y"uΝ@B$'n}9 `Y 9VIT.|'ʥceO?*c*tŌ~vG_lFʄ(;O?. l?T]%F !Xѳ1JXZH2t Lp1ܷ%LtAln0\MAYB*CP- >j "ߤ:lsl$K`ZVv4_H٥)"8^9wc(ŽZ,N+LLOWH084.Jz/ qneJEnVV22e3y҇|%Pos~[sc{KPRta33T(rH=|$z=bSnt֫Tv j2+"Ed GWoS3Ϥp$pp::wߔ_dx0"Q<Ύݩ_!LN {" uN%5jR!6H`*cch'u^4ݸR1H=[&/cT%D ٱec;dm @j5s.Mxt]j50d \E5q:Felgj2=9pEOś={\{|(ׁAA]$u1BUer&UCÛ$V[SHRb]D%`WU. q꾹@e% ~%Ji Q7nB+4bSCM@]eST+ ٣t/og򙕦8/oּ10u)&K](1GYJ:VrU>yco7^XXZ\nxPfGq,ڴٍǛ\?|z7o䦇&3gNt d|\azMht/> 9on> tcks+e0=˫#mKe]%(j :s Ρxu3$EubnU,G 33bsú-QU,NVX8#ʿliAMm378v 9҄[~Ȅ]-̨#Vkh]@+ۄlXV'< 2wMژMwk{D@eV:rSGWS.㸽Az9kˇy TAa&*6wt0B:K^/aV6dcQ/ B*Sqې6a[ ,.7_ҿ_jkE &6 а]S,YeÇGy!sV)`Ӿ/9n ѹ K ROWMZkQGJ2zʓXUJ& etlNq,0u ڶ'he4+תF}+$v/wr e&7;&ܓ5Z<퓛@ ^s0WIR~5uyw4yF2ٝ(n$4PfA#PgqqP4+ۂޕilgXCvyB&p)#``lWB5GU"XW$yXjE;p2=1(]y>Q#JTV0$G9XE{yav$1w\u|ĶdaZQ[=D‘o *#YpRحFBEGQ~hT +IYY1,C I$4Bx~&@TOX`zW%iag%̢2!ʥ?z`K+=Cemxg<,LciWVq B}ݤwDʉ5vv {m snУ 2tuJ.RoN}(]I vBjG]ɾm̈́8:gQ*z*Z$`vNGg>7zc͌fK2lvN `*L?cZc58_#lka >΀F'E 3nQ7N*w\y뚈q* e*d̝; HշD?`9Y|FKoF$4 DsѩE06%4hC]8 ̡IS|~/nv3qu46gӛFj!A6a3# ]굎{% F:6;b,ĥoR>Q3ʜOFJkŇ`(6X!$^DH˞ˇI{kL˵X|Ǵy?Ξ )cfn?33cNv.{8\lCE6ڲ$rL;MMN؁ВU` B͗٣zNg-3}r`Q_{:5Dvݿc-%dZ\NǔxiJnne tu*t.Xrk$g4=xc0zGJn5ՔM&ra?@ TZ}OާHBx]1x+eC-8;k ?TRAz,E-lkHf<Ո+euS(`"vLf¥K\I+?$c7U9+0(~Y>KHzɩ@ zl"³׋іH< zC}D8"hgM1ֶU'Jnjvթp;؅4h|6$+H$T)dj_] P8G`r+g;3Ii^`=F|{ͳ UNT\\. X͇R4-Ӱ`w<GGjSfU4 ju.'Za]ҧ@:VavSt#@9u'ؑu.5U#-_"I`Ky.(!!RԵ^˚ϝ'WI$D.u!:&Y 5|z4 EwEda V>+eEwN AK;"a!&0`Y68"܍:.#rȇ2D < %-=͐ 4G R33iz &kգс6ttgwyQ6fU[]lڧ-9 g-h_૩1XSr7Pk34>unA9{<L8,I6SOƖOg(' Cъ# *w 6q + e糛,Py7f===qu%M~7/cbV9#3!2}tu'TÛtߊsrDQ+`WMݝI:'f>~fPP F rNOBq@Ë*}:6_fMCU]BfKX48ϵFne$n}ۊ0ϑIʪKr[+ @{"H3pHܓ ~*)z6JN"d!i9S[s UvVy5HQ{)_₧+t }6_~Y]?~XT L X&5wYڸ44?^ݼ՗ m DPrN2)p2Yu_7~فݦr汤j %w;} ,֨&(L`Chf^]yL;ėo]ncw;Sr5#|+Fҥܧ3֒ sk-"51 ?L>% ~+2/PLvYc˻SU[eb3g$Uð}.w.惶#))&Le"D5zteMƞ/+;nHբ :C{^OCH @(޿U 9R裝`/Tld,Qcߨ{c~@x=6X/snc&N; ,YYq/IÎy>Ʋ,kYH N `Mj/:Q?>Dʤ ެp*1y$A(x+[ +? ~s&d}^=LO"矏h2#C EI!]"w*5|?opmf_174sx&#dTF:g {&&&e )U,e²Jʘ<%y&FeOa!䃩[n4E y)(|Dr . (TdPMKF8wTA?cI1 }3._8"nLhWCc0f:fuْ-Ǥ*6OdSUn2I詽h@< ȅ>YƠf, n=qZ jCX&!`ta4Ev[|+-Ҽ_…N&P;aОh |w!yG$ƫKΨ-0i!ۥyҕEZTSgds%"`Rp[[6Eo@|I;ԮUvJ[7H,?L"SX(R<؇@ v!¸`Њ,P>gng}^6k-eo!}IERq{ N_ĮyAثRBU 6`Gk )`ą<}5 ;U  z%9 VIEFp79DTuod#7 E/yb;+[}~Uұc0/;0K^BןVr+Q[ß~Cک'q#`$a%, oo/rGGɵ-XCCˈ/+L{~RD[ZC- q*]p9'ȈI4RjT8:uVw h0a6{b?G"\ZTixmnļ$Iْa Fg3+cwNmB'"t>+!_/_woPFݽ~ {pdF,]ń m7*:˺p*6dd=uEE}] IJTgPy@F6^tJ܇Vh Z'sUWHOE]%D7+p8}gefq؏d[D@EO:Y 3Rpw]t+;.}aX` gڜxb,0 X:Z:##Ermªt;NJ.~mIA'fm/-J|n fUwPW,yۀ-#/%cG.W혙ȓe] ܓxP{`_$PIpwVSj@Gz&o V"_WcyNgXwO>h\}n"KJ/VWyWΏyDŠ:avujqZH)+nlj鱿]}X9*TťӾ<ߓH,j@4Z4DXn:-rs:wѴF f?||,KRaBk<'"hxg,lV@x(>p_DoSw' )Z0-$?c9M > VqcE纄_i.;?ж/}Pc &pea2LqzRtCAKyˠ >@E:@!d75N"G6{C^\|HR cpKg?A,wfqG5D@WgJ 9 IxٔcX\YKیNhʆFkw$.w4Fpb-0o*Sdi(5q.%Q)Th8;{9uTZ@b &7j"w=VV]ɗ!'D)emi0 |H$zRm{rj-m5>Qڄ/t{<#[-֋l&sbP{'MOŜ#7 Shcd;vcLy,=P,o^78mm'8 #Fh gzNREO#U]=H׊ Y _K)CJyg]匒Dpf'ʠe8c 7=滋Q2e?[X9kcl|m+f+'\m@XqBNbdw`zCjvdlq |BFSV}ƽB`7S{d&%j+R!,q U:ehn3q}B.oSd.Im2$8$ i?-~zj&"Mi\tp'k'([4jںֆCd$_KKDGW]b2p !}'żBGP^yCï8NPtL-Uκ較#x֛]V7f T_˙[Y]Q̂gMg )eKg% @ /#`0=%z[kBΠt/:HSF;^Zƒ,p/'":K"6 n N,Ҏ-mdʺJ| zrHk6Ʉ1"Ћvt.j#VVO$3I ޢhWlWjgoTW䒑WpH| GT<IAWNZBB9R=bF\NcG@tv]hNP_&N.uQn*Rrt`Ƭg@T~29fZUt JݿrmzC( 0Ꮼ9 Og2 Ua'I3uUOn\~ĤVehE-J㨄d1GP"9#پ<$rJAxq SHS!H4O~ZNs $S:Ff;2x^ZE|]G~z*4_:y (\\wbU?<mv9ڋmphM6:+$6֞~dK>Aw>?sWn!-(şxNݿ-A&aQaûɋ>/Ȃ$d[0EXDcu 닊0ǨE|t7,lAЪ\Rm[l'$؈*OXDM#XC\Z!&x!fqealK(ns$y\1BMU&5:fdU}46i|NjW7}0L(W0H&m$bmDxn.j!d'˲]H[v5mUyP9,ݰ^eEt-̺jNEq*Z(]hD>"Bݔsz-}ʱi7\g7b.chڗB48R Uūz _m@HinzXa0}kc*BXbRЩ;w#[ťȌߕd"CwяJk33|:?ξtw!ftN EP" ՅJ:9s3woUÈJ%V|p)+$03mKF㈩ rnv*91,P̩O$RA!>UXpWAQ-i#IC..Dxʦ$6UppѾW 'N(y_;~ggXrL@C13x< icf3{5VIɢwQN=83ͩ{c~oi]ewMJFPfcO$|"tӭ9Ôϱ5 6+nja8M$N+7x#+snVTwmLj4+ʭ&_GsM" ..h'oQd`ړ n5RC3~7F6}|ZkD =ҠzXɺ5 dp0}';W`ET] (oL:%#4ܞ%J*5P[:4L{O3"9FbmK':|!N8ϱ4IUuO?_wqQkm+1g/ JY8uKߑ֙˺i( ^lD?BHNI*8G_MKvɯ [w1;d8mۀq{x9`AJroDiŒ%\)@0 <'iG7?k l:ֻD &Jj;!׏Lr!udL!ršb7 &]IpvfW1 #aϛ= B #$opSEP"TcoaTuAL-CULv`zҚ6Y]B~r4{51װx |& ϸ*YR{ƈ~Vft~,Ɩ"zs-l6jsG﹩/crj=H2NcWER+"8q֗D1t7ZM,*CyQE SMa.U GG=TQn8m I<:1+s.^[O/Q:X72*^rVJY:\eN>BHȏylc9جDB6fNh4\g-bp9ۋKtXX-J;Gl֥<6.6L+@+/PSNfZ| nmUjC?a=jb*3Qس@Y9V#>:1"L/s'a1#URM8 k)Pͪ(mny)V@V% xi~g Fhu0"U_N_ſ 8eP7\2yGorSҚW3Bοo}՜<И✮y<,gS7ZҊNr,D1}h AyA㱽eS}p6v0pk֟Up{:%e|\aRSYxmx^T!HVط+Ry_W2j4"@Ƞ%2bȩyf+>LjQWb-'igIڬOSc]WqB5hst?г.?+'Pc _Oa1n!E}ijWc9wAy:@rOY\. ˁG1~2BZ|䔏!!ͷ&jM/)\`$5Jэ2pe%8P#rgIIťTHʹ: 4EF.g ].A.N{'ï|7,| )i!G,8K wgfQ]VaŴI 糩t]nC41amY0!6]X f`aԤ5+պ3 2h%FdVuC3';h Ԣ=6u9LQinnm:T^'l?z 6~o>kFO. Ԡ2UL5*4`,)1/yw-?+6֥\p@#蟬i}('2o=%#1@8~L Ӓ6;O6)px;I䵟;XYg|rMiַS 4;ZZO㇊.C/Q4UXUG^u&Gʅoc, !j;X*/y[iOUi!1UiٰOL=|4 Y֌L缾m+dёs5-2Qe ut#;8Fh !V4vX1iJMpTŠÆCZ4U;+x) yʦg+)fWm}em mKX("@DfSJjZYKG۬>6fc$Bwq^b3\yX~rb>f퉈3l` -k[Uykc-mOΗtR(Bd<_wKM3;מp*52̨ X ĉDԷ =\r̛VW*T_|_bY> "7[.&5hc#p dv0I&K0"% DaZ͹nf,kHk@j|:n8ҎQg^Q ea gWl x{d9D+#0𢖃SG01]ܭcG]f7,5tDWsX2`]&oM?iu&&厲bRR椘Af Fz{qS DOpҀ3"P?؇^&@S$'+P*DaaNA.@pap%t-vך %@m( 6eLcĴ~}s%:--5u֏6pY۠A'%)Ww|FX|(3E*7cS5dيMk޹0X9]̷ RmO_}iVc {hEKU-/~dmđpDf41"ֻ,`gEYa!kt A3un1r aٖZ(6ݹTaf+;[ޤPDh#t玸x(7|!>:}flʒs( ӟ -]F"|ٙ /pSՆVG9P0`Y"dXJOx S+O1B9ȇ5`:!DhOg.8~2 !2D"VQʽddK$qtCژ1})k@'wG]`]ˡoSl鶑rnf5h']2 [ԭm[#|Wl6>A^؋Zg^4PÎ̉k3mM V.%*hI%Shя#3%:Ӗ9ؘtї9p0}:|gKV=+ @|0`0ݒ`O"^ 4 oTvw1=~7pm]V- B^*f؎r~.D}JG\ʧH@J_Ɉ?F7oA "*R63װy4F. Nhb"Y{D[%euM؛)(~CVO;$a/RP ܩGOeH9]̿fy߷A#ppcz*"OY6wt̻Lgb,gxD&Ϊ ɺkwaL5`/=ۇ f9X?}b7Nw!AA&- jI_QB1gmsPCHǍO z ڴTvuX_3Q롁<УAFMQz-9KdN+8Wo_BPBc`3=,T45ʗf^LRiB 6feϒhBA`yZX=ךO; <<0xHR0uj%>*n}v~€7m hCsɠ1Z=5},QyJRO[8oG~QՎ: H& g~a.*A;_ 0pyLbƩ q\ "F.Rt㫡uwb;%ہ=`)DPYz4YzY!n;y2ߋyVn{/!b/ xuĥإ={,kenz!a4AٴƵ?%9Tj,DFCF哆s\`ƓTkj[X֜A16'p^ 1`(v>e'Sa8B|CjAeqڡlCn:($;*Xio*{Y c$>"|J*tY)K+U!K'A֋v}Kg3k`HR>OzDMhb0Ը-m>U_w쨶KI3Ujaxi98)YAʿg8MQAɄJ Nq$,52gy >FĆR *ɼ[s$K%NZ2 Ş"fec4knziS0o*00hkS:jY0O#^q.[Aezj$w82|hڎN ҝ²#| )DFy~_+yz4l hIf)|h͚2yr GsmToZ>vĵd'z+Fwh 0y_B/e|X5!{(;K.vfMY1@N'i*A\]4AcYXÈ\D\" ۛJϕt5i;'.8zd:ȜTYܦOWY6ڛe+fȿXJ K=lfr/d**~k'I haK=zAhXɢU+I$`c;m++?Yĉ(>@3Sy_kQM{Hi#(;~͗)zQ =.tdj+fOGS^6p]&M%J|iaƅ4Y!\,!aQ/f2](.r0{4e/l.}$;WAGb-0zZ(Z k*|U, ra jB yZ̙B6N闲a&BP:$\``@H?ؙҖl2}9O QrgCL^1RH#5c7_!a[3vvM43tv."$ظPֲ DtIkim4s$:̴u6|3l?^[XBW/vf=-ȣ)ѯ $nnSWmg_̓Eb(iEͦ0e?0v\|)/w4,ʮȁجj6mYV(t$t3 %]|Bޱ̠\m"链fZ+>o'gyǏʟ]* 8 I)o>]|xyh=vLF̔p{V{~i)eEK#umOJ}6UtbTh[ihFzDBu]t[Pk b-Rbî^݂go94Nv1>TjNQFb{2MB8TY*Q22`qk19jCПPQ,~Hۓ r9Y&@\T t/x;VSԐ\]{觹w;jϰXKX$rћ(׳CG $gs;.̙ƴx攘ˡK"LdBx\VחQtEoK ;m7+lʗE*&}8rQy}9g1͹j3xڌf'iS|,Ktn)&jqwDƱevtkp0$i}oIIiq փkQ;c]5Z? 0+{D%y(uK5>~a&C)^D*$Og㷒uF8X~Tc lIE) |<lu-ә #fi;c4㥈%hM7|\bO\PrL+Uv Y5ca}tB ̐|M2]E\ɒvynl8O\nx:MXR2!(8Ud]FFd&> Q(D $%ѯȰ_?@#x pP2b,F3ˆℓ8 Vrk~:QRW16ocp*x!EV50 8 &3Y5WM!%1gr8 *IC6ÈaKs (M/\=S6%&\ˣD`Ob  %S &2q7nXn1c3ܲ;bTʸ@UxOzMkY<-/*"=Krl2<5MwYFrN|ӫ'Y_o5!چeJFiH7,)Nي)G6zMkpq4r_f%R3.sc%eJ=+xHBceB8(*E?6׎ ,|=̓{]y5P;z{¬SX ǀWl`ӡAu7AZT_kأH\NF)pb0f历wA?0IT?nfM7{Tdltxv;~ t"Qpe4=&KG6@ᥐjeA(pkɓ[z mK1TS:B7xhSQ(xAYL\=Cf='ջʂaRrO $iH裻IBaIaف'aو)Z7j뭺h` O0EOu ]s[vqJݸY(Ob#@hM#+܏4Jؠbԫ'u2sZ?zlB'I쏵|bQMI$2XpVqV5ę4Մ~ [1lOfztj2 o-7mER4|1a'&"R\CFڃ=(cs:-,a p6 mm! ɉn$R<3lCJG>SۙhIc}3´j?.E [g( />lo6>p͑rC-iY>]ôu]w~il ]oXa 1? *+Uq6$kU_q aV;Q (AE 8oN4iy3N)*R?!%y%O~n[I_nR`#נP^ iF{3Yi5/&mr [HvpҤz=#Ε$Yp=d!H AN{3x 0DJٲG1Դ?m:iB,8>E}KJ ,tr)Dsj;:mX=7c&;yPwOjF~Q¼fmފH0e5/>m[o9w@~J@<7b>mţ..Ƅtn/jClUv/~:f`/$9`boגgz~hD)@`o2zNE5XܱUwN 2޺ިyc{.N|~}`BXpT%E6]9+ oG 'Lat2zFeXjsĂc9M2HZԎhڲLd# |Tadeڭg\ޓ! q Mn|y8u׹e-/VydEe>iQ, gz DWĪi*5i8p /PA͡چŚkV]pO5-5icZՉPP@?Fpqfe\ΧrYVt"}ePeq7#^ 8/U0)ET? vQP6/h$i27=7ixSL&Э|r{#|0]yvy?ë́;7Q((0^nߵ<=IDnT6﫲5M/JK,+PߑVy_*2 4o E RS=L ]>8d{zEvLLg,.ؓE" 䄊߀?(uK1lc 6_!4>6i_jQ!`wa%> 2sdy@5X2[ӃQBRJ\"g^`?K.S o I6|s@Hd6h'|!=thT#W sJ(A9[G!&FzVN J26=k%8so0p;;~&@u tH7"Eڭ8+:#䦛lP "Aw2=p)ip&K* $1:WOe \'DKp+9; bw;1:xo߶\JGkŏIVKh՛s7ko gk9~cvĊiLkW~eJ6:_ʶI_rU*Ejz#.ƍ,F8ƃT1m:θ jD*wn c#se"S8[.=IڒYb%{9 <9YaA 6OrSq<)0ǖ8VLـ1ZZ<2Nb GVG+Lțd*X5>- V&Nc/ϋ9 Ip4/8NT;?f2̴h42 *d[pshPFbgp !lq$u)^EY"T?=9ד35MRin;Hn6~]$#ͺ)n>--uaXޗ,/5$-OF/#W- Be-\5=D2$N*蹡TC;M;I-e \ lHW+Q2x{n>>[w!x`ⴏ_vʞA$Ǻf/U&2s:ʹܵiֈsjOt\ D ±=f;+<˟?-t]F-;ߨbȚzGCe+bbTLR[S\9HaFEWcu 狄+‹I.a#ϷTI%M>!R\5<>kgn6{SYT_:ɀveݷ>o'Gcn* \o]RnN+,^ܪ`-u`9g1S8<J؇Aڎ.{.o?z!H*0L/sj^ZmQi׀+δY.yGݿY*6A ZɩgzC(xw6!aAG!T(Zxkȕ3PԀ?DmPi ye53*lCb?YE39AeW]&3Lem?ʗfFTUBvwo7 bVmИrou|G5ѷ'U/q2sV\j^L@}\oyѿWV]q(7߽ϑa+Yz"dЉj3qъ>j+WV(=45Eq(89b0؈0?IzFɧ+RR4V^>;:d/]p^ jm׳ibRl~[qK9SE'#_k/occ/);YNhȐrk0櫭)ڮߚ瀺ܠ&dM:2\k4Y\F`E șo&Ud8b [GUk$g+u,C>nX+JX4&fMk)hy<eN/Z  CݰXt]2 A v}~ŵou31A ]ö]ѷ!@V| XgzEü=FA9Nn`V-Ljhn0` UHޅZQu\ѤQϘ2V"H/3꼑xy#adDk% O,ht-;0TJ[I+=ky2t\׼?Xqg@[t()͆> &"V & [+)1xG0`koփ:g>V0з_.]UnOBɸbrZ/mAThh(o13,dͶUT@yPt=f Q_Xr##Γ^A6Esnʥm{z+ +#Cb T K+/d6A>HU?ܧj7Ip+WT}eqK6p(tfN)jv{POVd WiĘe_C>OUf9ޑ^ [_9C<ʿ,y\SCSg+k%O2vͶsH PFMP_F²C7'`b"0@%cL <yŋf믐W J60.ț3'[w`+&|ч3疒6FBAQ!DoR^@U' c`IUKp1̤;\!MߌEYvY V|ZMZvgX_XiCA6"b$›{(l2=otD#lU (ݬMppʹ4?Pu Kqr_q"}3GK~W!9xϕ'vVfVqwe~E#ܼ'ja=LO9K{=q/zxRw#ԝ2CN&=0P8PIe$-1Q;X5j4ie_pL傒Zvk; h]<7F;l ;rlg-i] SE Jfg.^euG6BDb9ZGVM*6YU;EcUd4U y ]zTC2>#]9!so{z# lxhAa8Gb=mh عpxWIM꤁ZO4kyK{ oN+>Z9>vQiiSY!>Fӗ׃X1smTP>ڵa/v3#.JOO8hBr^NEq-^z9bϘiJoW+*F&+sYH%{LQONZ, oSKQ SaČh^Yp]A\G0T0E-:94T j3 * E>kٿj"kJsh AeUoG&dw45|):w(~Aut:zh qVrIY,zHj-Ⱥ~M^\T)쥆Fc\̮\ЧcȮ}4 5Mr*j)yeW.q^(霬B2>0mPS9iLARa}7Uu*؋?'M ލSP*']GZ>#xTx0#PjGXK[7azj\Rʿ߿^ݡ}*"4ɇ3MB-|r^YZ=%Ҭ2fҘ{rz6 *gڞ,xp|:p&DlX-28H@fæ=&0[jDf ]Ψiߍ)_n4ZGv~i9tt%wlwIօVfȰ ՝:I* al(Pf$&3=eHfw`qScD nD ޅ^wApZѢT|-s=,#y&B}6mÈ wA/`H ,y?m/vDE9<[Z+lQ2j6’5A=-.*VXcka[jWb:u#Q"_h)GXF r p`"}Qjʂ $=x[boQޮ$aU Ҏ(AJN>⚕s]/NᣨF,i p*X\vp42}=KXV+\~ה@W+Gxk37vr)hhC!sqhJxPT\cϼl*M9jsQ̑]ਁcdKf9/4Bq8xQ +^Dra R} 1zÿ)g,m E yCsrjJRNYF/p#6r8o 6YS*Z͜ARdB X4n*7R[=I2xi$Gg3Ğ!H CͰYI.MW$=p;b:`sЦ~gzȝ{3+S~;Sݢ["AAl]Fֺ=(c‚2E>OmlgnCp% (kc {tԙ Q OwBM+4t?,cKqFr^v@ pe젣L*MM KL7c1n̔BMS+D\՟7_pUh b2s&7*2B{Y5xҼH;SC`2SR8! 8NEY+i큅=aҒI]++[s./?;?_A$ni:Pd$ޫr_pV *c2aV~<њKB>fon{c'tl3@8uyzԧsb$ʟQ/~/"; fMf~ G{dk=@Ch:u{1<2?돽>}Aoԥ? 0ILT 륃IZ&qҰC3Iz\47d| iUi1OoUXmC8ڇF!-nyQ>U7௶]@.2Rt/Z*E kc6ϐ^O\w nȹNsC2$MS졃9`k{`(|iuw43]]j!;).)ĕw(&7 lL\~9do~Y;}:m f1VH*o cN_Yz=^=Q;AXNHKH-b FT6K&u9nHMˆ;)Y+'X햣wb~7}z(B,z4%Gs1 z~u90EڥTyfyP8{*z(?9&hRIɕ(رrtPoJ{1R#qS/ AC;\_g N{~=;’=rz`!}]|ı>zE=pkeIZC#2̄}Nu@KNd :*o[|0jZRb s"p&'}dn9`yRimKM?wTXɎdh8f:S2.CO*Š-|ದcI>FEv͝+Dd-$!u+6~X+ր' |GG׉RIxXJ ;6B!Z=}ZLؼpM9w"_B&s v&oFup.V+q_Glk$ؘJF LepG~_^u&Gz6ArĒ)+ wSJRGY}k9C,EU'ad/.]_d$Rg* 'w s"s[mee'r)"Yۥk S3X`Q3-Z ];LTjA&'=8@igf=* &"@uu+5ψQ^FA4y OKyRr"kOpPgT ~fXĢ˫_\G <#P" +7r<30u:/TzH4vU-BjaI$ 6X'[$<1,Oiߟs ݙxr]~Y %9y --5 &f͢KvHA3E?5AGfUo,bTۡ y"ٿBIHbS1awP08ˠm",q=lyj@ݮ2D$^Hs %q:=ֳ[Wu5U NhSrE.2@G/b6>](7Z .4=sܒcB7DY=+N 'LN"abמ֊LC 8?= C Z)᮶;mb_ls(Kza#DR>pّo@|f@橜w7zēz,`]@ߕ|Wn)Ro擆\=Rl\D }0V~z87OP_Z?yFPp0m[ ~{;]L|j iu80] o cC(. %._7Wwj-jXR]uEmdjvShAF;%VxdN4-/7z܋z,¡Z꜒߅؅맰> 2s4E&ȏ]2tv[, 3")>|Ms%R8#(*DPPLt)ޫJ^KBZsn58&q66-T.EO͞V &̙gC/й՚?lHY$}q) ^FE 1[} vuj26r4߼!fmrus?> ;f?*ܨG:ra>uI}pFJK[A&űBjL7FgIǭ,_>T\@2-Gz_Py -(:rcU@+Ih۟8qb~E,]<Q]>] % X'lWCߞٻb9:#BYħ:FȖ9kCx,)MNx*~^}՞Q a33\ fm\h1!:6ʳV󬘮¤1j/8熫MD2K;c"4cRqS% 8t4g%:Œ%h.w'O L gܡ'{HrpHyTH;'-%*M /_t_dm.dNwj^cK]9;WrGjhe4134cҺ#T 2$oܯM|*W53@|pBk?yxLl9=Cx`@i^H=Cw~>O,/:}ETW Kq7v!5"D;HQux) |eM6\WfC $[fu[nB7Z7Lz!raHgxK JaJd5Si˧a4PT`v8ӱzr(*`,:ĴMoRe~1N4X_Kk յ<&_Ë {q5PKj&Љ_SNHwYj%{maQ/ʪ tȞLC[j F]J` 0#b)[ de4p﷟GFMо6NB SQI1E׮w .W%Bs{Ͷ176u]O\_'0cQ= hsh`g%?h.!ˋڍhn:лS&`\WiB$C/##ßw#`5\PgU[.K%l*hT̩6~'_gB(ZV=̯qAd$ߒ9'0tڭTE~~a@ W~GܵOѽEHQ7x(:.ofB?m^jn:2fQJZr!9{N\Q7p'&!+Hx}Cswa8UA,ڛ=s3]޿ۺ+l4E<ԮJdl 87cmW+TXhݒR pP>X=KNE_o ^4j_;{ϱ>~Q7zLLmnMnjdZL|L}ZpfH4p]$Я5J|r ixUYupĿnTliC&K(&AeSЍᗗ#b I:ȃ4 *T49 b?8KVc]7Q/궒S#~ڳ]WxڭpGm MlI6 5ӪO^wQ:(V7:f:+ ڌf_,ǓrXHMgSXr}*aPތDawVo@챹_gȤfJy?98s[Nή]^V g02NO< o̊j#A1LYg^Ҷ(2BƩZUu%W :Û#5?%) Q' j uJ_$G_W qT/xv8TIx*9Dy(LS @Gׯ nl7`l'SI,6 G5` =0 AB~\(g , =E$.h}~g=k8nJbͪl(qw԰7k΍p.T@q3_mK)j36H9—UO*he7gm ѶRViK=XS7KD]ym9 fzN3EDBCՀDܠ"^1|$Xv`e`_)B+[ kzșqo5cĒ pw"坣Y 'wt HQ>qzZ"Zi *X z*iS;s3'868݈存ʁ)n,~Jib1x8^' "̉F)lVޝxyo/l4hvީ_pWEeŴ {0o&YD1K X8`A丿։ Щ+A]u ǙɿXjXʌvUc j5~H~[TKqLlA!<^3PJs{epKkzʣxQwc.ƮK6JqzIx>R=#D_w9THM+lv O5"^%xJh&F˅ciyT??éuL:/Fɠ"ԵUSҼs 5CPGLRH}_SdD_X|s.J!bd'ǂ)<%Ex*A_Eoゑ Zzdix )f}?خ^g[Z~ªW"iFb}=2?W_84~/@ڠz4+f1XP'%NJ0HU̙z"HE4|3#: !lY#(E4sY%?nz(KVpҲ'Y~UVMrU3?\b ~ү-1yk3ܳ*׫_6*w]P 6Oy(^s.CbjkWr/*}/խpLF׫c˸$rN^GbJg^,--7b\D\\3n*C қ_Ċ;$F#6ZP`v-< }b"m?SJ$<\\NIPwSNJt>/'3%)TaxmgedI=)t[qRS6-B|$_L&OzLۑb{-]1>,O,v)0r}Z֎jP"e\vej&dEh=b.:9 Xy\U=jE>ɢ\ pY_ Wno|8qvJ8(ο֜ˑGשּkf'0DlC+֑T};[?(sj6*oT(9F>`뾅~Ej6A#>wdYE\^KN*a͓\FIap=⒣~<)liP_YNd)] pXm)P :ֹy۷[ \ ܣ}D-6R귅 E=O]rs~%f%#$Nx`QJ0$w۔~"U+I`E+eE|o"c!"IZ*>#'0Pȹ*:9h~]3,DTL8U)i <;vtC #ނ u>Al!O?n$F08],Y|gUDտժtrtY2}sfm),TZdž_ zk4zӠ9x2è`Jt*|*5%kB}@NIej&LxVrKѯs4;Ҿ vkEv@c/P( Viu[vA-2'wye-8;sWwC<L~6m@ڋ9J=fkIs}0 pL7+8W^P^Jfa<,CR*og*tiF>qgcbXzOOd;#dc\6ǚ-^3qϕ,m7 %TXNL#EMLJg7[0q 2 ic&(o!cz"u+u,ϒ"Pr"f HLT؋ %χҊWBE8ZlyF쀸[!ݗ/8{1T[hfx%oJAIL7QO}952Cg{-_h,te=v/RqՅI(IqtMa*hT%wYtg;67Ԟ&[>)E w?rFUڬݒ8gZgUr|bf qnOi\v$ 6ȋzdX :9abErG P( G9Ɣ?h3UWYIБ`E5CƇò[X9-9W̱g 'D){GW gPx_i[w46]YHNBײȌ}J#Qe sQ]0r|6yŻjhp8ș;]~:\gpҬ AΌj+jdp WecBe`Xtkz&3]zۤ|z,W;6Rg)qZYn-/wLu=[D}/A_}dsCʉRMuVx'9zz_5<;EfgZrmIzRBb֖ekDxF1ɵL# bX~'ebE;#_4J&uW,Fxk TqCUrnmTBt(fmmo|0ǮՒ]Aamр@L>,KdE2A62x,< _,rwwh` izcܜp`u1H OYme9ߋc+Aʁ6X\@00B Su XOFJ]]x'+ZR ɹ4 2gXI{ig;t!g&9("Zh`rM :Gv:fNn|">%vk )t5r,ȖISY@1NIv690ЫG߳A#HEa *^K/ xQ>n|"H5R*4N~N \$OD>pA̛%7w#;^ aA"[Hޏ4ʌ>FūF$x#PׁEU ړT qgPp(7+In@IR=~ߚ RJr~Z6ªψ$-ʅt XGWD$pWqS]ZR܂IVŝu]*֋k,jw# &co f {Vjј QedBA6 j8ܥ U "SRrbM\YjdXOy& (Z9Ü$7xa۫#2j(W}R$1~үv+EIƧ*i?n$>F ϑDO-|%Bs%j(Iqzh4-gǞM?]Kn8KXؾ(rx}@ݫ(KӾ}*".(4O6 xT1(_CrP| +i}}q5d J@4gBS"R>[-m2e$kwsl3W'_5}ra4 %cv{9lznTvjLM~/L"yn@q Up|c)4vNVĒ5CA(󣈷QS-h C *Jٍ\2sM:r*7 Itp;25 D܎ΑO]IViWrR?{gNcλU3ӿZpHfq5W59"=NhYRi[C"r:__R1X " k(G!J~%tp d*7Oe-poq%b-TnV?&,vbEoJQR\2WBR0#y>JXM+/q !H xL뱕z(hz7ֻwW/;t]u*#"}hm1KӚ'% f@8BWP@sh}ٞ-Sy:1Yaf3/z5`1P+Yq'ՂFQH l94o 9v]P2 xmǵ~CfE(n'}^q#>}k4V5Q/|"քpo\/<=.t1 AR]0EI@h '~jRL6$VY5gqvL$p>{5ko`?0ΖNU=igsG!-?]3@G6\<8@s1ftQz/ܶX\՜6ȫ7`70D4v/{N4B<]Sv,3. IO>Ž"_'|!$CsaI{P /JM!Y43%AJfՍg>!Қ@#N,y*aUbMr_# 9i39EU5?V42£ɪ3Oͨl4_]jkNƱӸYisͶw$=ު0:~ÞE pvK :jq~PҪѰ1\U|Pcxl'nVhh(럋M !| icORw uݢbh顃dƗrF?Y#të퐼@5^kK͞"$X+N56@ӓzD .Nme oTfL]#ƞ 嬧XCU1Xf_`} ٚCwXW^ʅ# T~ 2k-tZ`=ռ3P::]E^ڌ晕A[iG 5")I_Vv0+zΗݎM;O' I/ŝ&w^WHDd 2/!EWap%g1a?]" #{*{v1蓾/P;}`Һ{JcqV%b—y8mvk{KwY_ESTIeRDANTws4t]|k1.n7^F}ZEe3{IMZ<PVWk3MjF>rm)N&:ێpTu^G6no 7W\U0p@3PJ5Gtswi]sD')6쬲Lq\T;j &!7?Qڳ}4@-\.F4 ZI'xZx[Eeg:OwbB5^\[lQ2T vsGι?촌1=2ȃ_2̻9* RTg`>*79AaRW#O)Jz S*,ygQ4ҽό MOӿWf+d7E܋o//I9ҬOq¹*uZaT PV=ݙm"(/8ٶ`(`N&jU5\;2%Jm k7,yWWg 쓂) N/w"t"UB;"Tg!HDB-LηҍPAI8f6`v,Gչ Mn$+T'VNXA+hRp#RQ(\.U#)bY - H8  ƭBR·|7 6a";6 uYoT5 WfdfYwTE\t= ºLenj(;jK~GΚFAH鈦ŽH0^Ht)X$Z߼< *} CQ:?9cB-&.@Mm%(kJ\"8bV_%[U]/kW> o?WU<`OutGM2b9ӳN noaLNNU`k`,d\ށrA0o{ϸFU C)ZHK H_Pmy1GE5,f}x!=AJL<72"w˸ȣizk^mp-'X1fƻ}x}Xl>Nak4~ވfߤUqjG#+I]?P?FOkf}\T20٠F>ُzںE={l"r B56*lKy3 8/[ |h 1g@}".&oƕLp ◃2 Fq=]Ѓ \)n_ɡW~{ Ӧ,ijقѽO.C%̌Ɉui "lT?͙WG:n(&:iLl+U"kfj9=M˴//6xSyu lF3&rOQ԰vr;K~ŠȎ@N(qR^|E~O:v577iX"z  .YKy :>h/&?3>lv;Quz;or3EN I ^^DAGls}W}H;9ݙĠ91fmUnQ4-ҫ @Xq\,&M1AR5AԺ)FCx Xֲ+_&, )o9|5qDqx-0Jbby/+rt~8a0֐w6zr%: d>!fp| \f E#8.,nbQs oᕠ¦9q;'\BȀdkӯU8b_GiZZ_ V P9.g:*?k|-vuK> A@,㯓XnX{ėv_ZcU3_7e G_}q4>t1Y3p;=`4&O\x6N(uհ &-Hd4|O-+0`^A~28OZ\_s 4\-|MDBLŴhBcG=By!ؙȢ8 @qpEq0k:$mc * d{P]IF׿> ½<+`Z\H9&Iָ-0 =̼"`%#\dr}?6p Y3K#e:u+TBbLĒq҈sw]4k mV@+5t/Љ6ZN y;Yl8RB_nwJ011WV_lx kԯ!8ZP%ј<.Vf4oאJv:jwAis EW]d')fy63~LG5gt/Y]P^b*];-Hpc'p#9:"Γzμh%!s5vߑ^+~D{RQؘ⹊cbQZ ,="e ̏RtaDڙ! 7Cq}K?4%$GdTFy\$x޿ZoFdD"1c(}^~ JN/RrfuI _SOуf}$wC ?䞖 &eKHSVӢ|xHiC[$(&'Ӈ %WH˻,i20&4UĂCeamT3]Z<[3[` On@aasVos)mRsK{UIOD }ز6^:GEuь-UHw Ff872׳ lޒ;|-@ۚioP{M 3Nl)PM468[?WVs1JozvyCd^9fC&*5>Qܪn-d{W@V~m #hn*a3:vڞ89/s87Q}+/R'3!6*$ᄓݩ齙%S#^2aN+d݉˙"%Ms^:Mg>9+) 57R֮Y+9f͍y@?N Ұ`%_}&|{!ɫjWCݢ`=p8^u:2n|%}1L30V"YDG͛ÝSw!ٳ`^Xw!UL2%3Qm Uvm؛n d&FMEe(yD@T+;}tqQ3@boH#6&(L(P1D-}}3AY%4:I҂Eflb@FԝBZBx֭d<3rIV Dh!ߋc ͐LhQwV, 4̵NRRщTaplˀټL*R/1="PjV1VBw旣{3 ;)T^XNMUR7hg31|8E Pm.ܞM̫0"2AcQ_dʹBˊ9BP༭B1!:c|yCld'0 Wr(@ǀ[-7| 2^:-GbbT-G}Sy@5!h^anTuwif\bD|ܩ;y $*xHܼSW|EHcر% mh8QBr Of777,E-ۣ;*yU=(Ƃ7)Gž&5`Rw>o uAVkiJJpPd=ؓxu]ERSu EKBSؑ{C|W~_6 8 8VQnT%c@хӍ?h ֫)mL 4؏uɏ$wBϭc>c w-myS@F &' é(;H3jR륞nNd)G |` Q PwO:SH%~yfyMMPPeSXK-y]NVI e|\8prUCm )!CZWXxyIBGoHvD!0Ko5rM= 6uU(z0=XgD?swuٓ{g(H3FѮܨ7+SV& K* H~Vۋ_ ax4̤43 @H>e-aqe5>LAC؊\cZ)H'Ưe~P|Hj7hQSm/mnv-H!:v]B UzGy`euoG?A,,O <׉_pIU\JԐx#WkZ:-b8X R4mN+TNj3w$]mlh ]BT_N1ܢ4vk@{G]åže9n‘,V{G38TcgA":w9YR6iLhp\=vj"! 3oܵ>Ou^{?EެՑԜGiXT8U۷04CˉR xb^ sf/;Dx w엪#Gpy-d;IZMRZz4:r] ϟ5?y"r%s&2zh7GAV D2I=PʥMF8ި4HgV0#?_WQA.VM-izgZy# [v.ن ZʘP 62FFKx;aS>j :_qfe*!&',$?5O \!n0c^oT&s*liG+9=y 3$C``w\+lxaS }Q;*KUAf!W#ds Ž$.ѻTrE]!h\np} +]v̠|@pzJ^Ϣ]ߕ ~.;FR/8IR)fglJʚFEp|e;'ܲ,ĸcZio3 cqe3;Rۨzp1-NmQΗ$lt6GO펳f|tBc# #}s-v_N^qռsYh6RMꨋ8Bjy#{4oA+hqH 3(ᐠӏ8p:Rܲ!&wac9ɚ`/׉?]Z K"8k4-i4ywf{ʈ8فURvKXwgC9ɋެi85kQè&hF<28N+yzML=q|օzG,I{NL$)4Ebo1qsh_0Eq%9!XDO mAnHPdf|ع)[&"Wyr|gŪthrиGHJh)؂Oڅ|XN:9Dea2*AjDaHOvB&}<FVl'0M-+;)[4b˂]mfY@'I$=GT|8! K}+A/d$uVI9c)gk+^8P: "Afony^]QY[_v^![[}@pz"cŅ'z)ʘŧ=~;Fă=rƑ#mn?aa(Y!܇}vjeTX^Dl8'8Sܛ&qD{X][ pW+ YB(pnib/XPW^>JqvO}HdnwucuBj=Fݛ.-rX[2[Hgʉj0A W7-MkN3؇DcE1Z X5yG0ebj2j:)·l70~5oA.abrH+r"5.n=xf&t;2~akgLSU3^t .IAd,ϾN_PQ=`W߱ r^RՇ>Bjn)IUG@@Z$U%MӟqO (oD==;Az)'[0]qER`Io.E5P BQ#GuAd*ac杺ۨhl.2֍" $E`Hͺ`PԖĺHd]%qab%S(њ;?ɃW>WQ:P̓t>qSi7j?OSp<ǻX pdUQ yӂyØGDiJ1T4uQû~ۖK(D;@keHt،tL8PްL $KH_TR;N-OhI͢w0&ã2H%o8)F#~)xji[yx=!x(zDz-$ao | %pj.*m5iiMa(8@武NZDStt4`llh>u ݝc2lGl]6ϟ!#_MG2 sfRDUFQ3%=6q\͗Zn;q "̣QҞEC NT]8m؊sU%άwF>`6-Fy6V1ӤkǡU[ZQG R0uTlҏW9jf *~LzRN/@^&J%(@็AP&RV X/NT5-R <ޱGҵa_k$ n{7X^&l(0Ε'Xx0?L<^==I -y^y*/>k"ك5^,JvWX峓m{X.vnX)=sG$ϒSˁK`Sün3$f^EuNR}p}+M_&]E:iuusJC'uOKuqSwNd7 R/fKI˺{%ɮ1Ҁy;fC,CJmy–-̅it?`;CZL.PeI S}`N| l!}lm)Vu1/}C^yV"DNg^X?TA5BJ:!A'!υM|CiRy-J8|2\l _wsV*Pr'C,K"L{s @0"/k}! 3_tW8iiAAXp쨆r5HEN|H-$W[Q:pS_3<F0:YD}$XYT i!tBcÔfv%#eb,gs|  {AC} DrQAUl5ʪ6|ܺhm ƙW^s.v uo`<"9%oz !x24z\zUON'=lCbfy>zo~MըuyƧh},xV.cG<믣Ke @mS,S;Qʛ>\h-!?G xi[W4UX4Lac `%ߔ5$}[hrkLY G z@ķֈt{bw_*9OT4 P#Cgv<(Od '/bn>ӡwt__-jjگ;j:.@B>"v}Y+] 5[n{5 tU,ǕRӃ@rUU4*Ү: h!veAA s礁M7Hf:Pڻoz}n $Oqqce_;סhcxV4?jn4ƭ{/ר%AeXj /sMPDI WzIZ ~"+lLSVJYL$_6Ř1bgK\pچıcq8`.Wh W!v]_1r壠ÜzJ6 %(('*׊BKԖ705Sq\O:x@.5m0! 3l{ هܮfZ!LH֠=ݴ7+`[aD<A6„E.$)4bl-W^+W3<_t k璻=51HySV_@VE:<6(16&BK8=}A x; 9<ӵX;!oxjSڔN?b_0FLƫY!g͠g,dՀBkCdB%3[k1Ê{k=ZOa:G@KoMUųZz 13PX'5,JpZ7cuFc[/PT{ڼOCbNt 21 ZXb{x[ax%}C)Zv?ty4\oj!. qjL(iGYMu^ Gյ륦m*ly?ĝ`4Wi`1lTq`aY.;6iQ[֑hSo[|;9ʟl&; T燫 $XRBS*G[.45BG t0﯁ ?'<37TexKvC_>ʓQK#`PF d1&*ABbN'l EsANU.F3 a5mr.gc:Re`LZo`Aّ f*4gL@w3uX7}xPT1jkओ*q0ݥQlANL.. XOvxehx2!2&wR1(ㇼ ߮bxvtm Faq8ErJ|Q/pBxB#4g<\ Xg=L=L D_| \1@7;K" mSʊj&` @cw=">zp?:r"Jyّ,S.O{Y_!YNsLSd'p sƮ:V9Mx$rf("C'ل (k*H8Ra^ceGw 6ȱ:}c:\tәe'sWLq_NrhVr6 Fؘ_pjk7Ѱd0:nUH?puډ^ iaU񬋖 2O$%ށ딼WT 3sĖE)De "x.e9;P:?%$r8|RԨ}Sy,>TjQ0jcbSVb[n7_*{I0ya]tO9) #L Efid [;'/fNkBS}=MZ?ks7Be;/бGf *J?! "$hQvɾS?E=5ǠE3] ,XuT{,C?G禶;H=CW-\0Ahٖ^c&Gz3ۀJ`v%y!Fz.nɗRbɹ+@t%*ߵarCEAe3HH| as( T7¡{hѨ5H "Rjz>L>D#M2CazХJJ0 )t:dA J Jxa(2"̌?KM˝=m>Zi_nhޤrC3@خ 5?<1qK~f.9u}Քx Md= va)X!TEW013SRf09Rk.B%XAr2"~I=W|^FH&OnD?!˦8vػp֜Ɨ\,66݇#= <mlJ/n=^ v /JsMo @׻@jg.b)"=9cwl;#Rw ipǂυVP;ճ&+RYyjJ#}is_\tNE\$*-VАB;Knk)R7j!Qwp7t\{8́ꓰ+U4:\A[JxD캋R7Ӵ9ub:"/n/p7-($dh}fbI~I5y&wUNm9Xi$bL1D!Q KJi0ۤ9C4s/(ϩZ-qXnu4:19= tJ%سU#CPuFeJiWiv$aL[J^>TfhY@BMYcG>AY4^٧bdOl[W5*O 3zKvez"5-jOP\EÒѾ10fN"qOc`PCl\)kW[7Ȁ!+_ENwn)Rw`rώCsVbB!-ULc%קQT4wjfL ->[.V|zt<"ׂ<[,Mℍ7!qAܒ61/؂3p@MnCXrƿ=jAn_ #`0.qxgl;-,Ĥ 6͠xI,lp#V.Zc9~4gզ|~=l(!uZbPD*-*)mZkuT/@l;qF:qL.ODw7UQ9ypkWE d!}_}7Ʉ *")8auFY$pnp&c$%Ρ UGFPLVJ4=~6jTrrl#ɸqٹvbqiq\YRT]lڲ3/? s`#eu{K_跫F)߻xz[茬ʝXϜ{/&rJ; 6*0G)k@Tbg~;I8`eW$[|C Eo 5v;,ۑ XR#(ntS{JnACH;+3Tߵ__c9cqf[v5VشwKTb0^"@WTg7Z/V)9:o\\R}~̌0hX O'm*`;pU0}^]m0 <0 EjZ7*N=иr0pZ&֬{vKNYU:/=Ѡ`8D6#J ^+YJQBHymeX Xw5XtynǤV PD7p1ΒBSd9ƿFH[%Y %)qMgE>0%5y3AURma9]>cF:#͏/ro؞r1[ v?rr–Ѹw}j\a昹li7/e{wBx\46ʶxyqh0 EP&n!16Y-YX1U+Cqnw5\v9&Mm9nԝtӍ3Dd\i_.yU*<2v3 {3 "]ō?s>[$lZƛ}_G{UNhQ>A̼fe:oCM8XۛKŌ} q4/ΟЪ &cB^<ȌS3d>Q)iFQk1a>X ~Jb)_~U3າNE@׀NmvP2Vlz(̑(/kC_ϵd]Kbڢ'T6+lxTtQq6gz4kv,̂s-MIѐ>\p++*NLpPkͭ,zg-qQ _̥E'cB!sgͮ=c~:ct闸6~ۨPw#_q%KffAmٌTF:A37RGTi}z}U(缞gʫ7iZWx H~IZ܆deA^#>߸guKI4%57F\vD[MR[n@3_8;ҫ/mQ(@mH=15(#8Rfge{"M gGy-r|q_1M {rB;x4Ր?klO[- trN/ʈb3sFCl2Mg ZH&&,rYFpdQg!5AQdd_lnkcI2LaJ/t`fGdŌ VO`Hu(6v|pٴ:#P \K+dK=LWgWa_|v&!OVxد+@9[ڱ!;S"z+Jbk0m{k Wϲv(H*}$ Q,f ;Zwִ%)(qtܬ°aZ#3GA r~\"?σaIe)dH T:j@_Weqo+ oTHe xSN d2PI:Mv>/?c& M:ꤕGxM~UXvzR׶('YB'w1"`_0PUiyMw62‘S[0nk@msB8ĵ+mmoPawCM~H4WO,m/'w<+( /7Eh}T @7Q"# ([ 61[RgrvD؆x*VAAI9Y/ҜzEb=Y=kZ2}n%[hyp2#hlN=EMv8> ^'1횎G& )W\\PԋAbA1JkP/DZjB/u<[Z}qXO8v"}RZR\ ]lP4VUYX2Xٜ-Lf7=ΖC2P&R6\ߛy#߯s(1axRZe χn|@~jjR^_HaqE$M,ggfz_&{h2 71qE֒4%/ y u k!SZD-L3Q.p/cWbA̬<GdK4>X l/M}3?#V"ü7; <%Md$SIrUwia? {|^ߚ.W/ ;5Bk +,պäޒKD;', v5Kݕ9MqU_ajğԸ1>',1"W 5Y'SL*AT#GiS7֜GS^*w`JI!YaךUm-vhlz3޿8eK 񟏆m)HF,9':^ Ƹ7<uR#BPqwc%e±z GuTO+ rO ⥺.1fʈ;*xKi P>ösF"T?T@B "l㵔e I6g6 4EL?2DhPEfWbRaB[т컽4n3sd} %2ķ?qQ0vUaؼ۔ 8fkhZ˖ۊAI BE9ڄy^ЕWal<J2i _9nw>D(E7x 3O\`oZy".g(hgj"8TinE&Sn jXNj4-)Z TQuEDISc|/ƼgGș<հTî3UR~2z\e H`_↉czv>pp-N?]wmD҅Qw!w:. Q5Mh*o-4_WGxT)P;HH"O}s>%Ӱè]]8fR-M$h9d 'V6et7*聒,dQ4{ r_LU^U~RBKBdiEE8Iw@NДΩG>w ]ձ̾HZ, e ]Q2qpz]Q"lG}Fūh0Xz@3(JPcAw!KL5h})#]۝f%0,;S{V$Rda9LPF\օIx}5}EB֚!`xvMvjTEW P0 <>6lS'zt v5X]hevssϣRW0DŽ2b=fAE y fGGgj_AMp'| a} (r1fOzuU.rѐk礡G/x$Sv .[7>Ͳ<lnKDhVŦ)譿Pp[.L~MV93QjS-~r %UH~@ޥ1tA+mDKH}ɞn(T7#+(2dWSf7谑]Ȑx#ZfY8۴ŽVm4L#{ԚX20~T)4}p}ڔK14ՂHǶG! ۝Rk96L R{Pڇj|oc/7A|oB6M9I[Rݡgq]1 qQEuYYdZs;lה&b.D[OXԺP$g_={gC{@|Dj (ÜsWLUވ߿b#V^>`vbz݁:\GI45'h?`4#\\ o.+L]GgݣlUϢEK䱠YOl'&Eh^RVԴM4}Ap meT[ mr]w6{aSR/{'5-kbjQ7HCyڽe0%zcŹUHeQ83T!s1ɲ]He3R1g'd)kH۝^Q M^2o\BLZi}W+թ7S0ww 23=0 a_/pkGV@7?sxRwc1T%|#'$AQ+<)eRvTRU͚S*A7qK ?dc;C/M% 2Ӗ%ebnbټOjƹ6?6sMuHGmxů v{ˇ!5K"PAU&rT绐gp?F纋Ƹvې>$Ela&'`vN=?0r$3V+ 6F2K$';uaIA=GC Yu|D>Zux8뢰JQUm6vImޅ`V.ar4PGَ16!VX٫JpT<,*1a#tz ( f-\u+;e6MZwvS*2 ̯0PE!] OjSbbSpOmf΀b1L0K=@~ݛ9t`g%ӄ|ҎEw64YEj2LuZh/ƠO5GРeدyߗMX*vX|VzBNTqbbW5*bL؞ lfsVp<KFyz+jk&m)1J@|nX妸ZE C1;]UdD7 Dbz}=n_P^va+Kړ30EDTAyzn̥i!PHB|ln_af*l\msR|" 2F˿ٰ;uTlͭ#<@=&.b.k.>a]SLvC?.aC-{_ IA臐Z!fNpy 4h?"nǑtqI$Yoи8})TcqI. 䤜J&O|{Lv.($BU|V$ t񡸉m:Akxޗ_;h"]+1I/3 :8ݱh'sd4Jr`ּ̋Kw!!W'DM5;Ǜ:8Ǒ/b* >]C4<{$hGOlz:IW Jρn;\ _@i(`־Nt"aV_Y@;8Mɓ¹h8]%^3 jUh/zM.襷&M?v JA\ЬfT>'r}3zG27Q 8ɑ ' XSQTYMuAb nrb.DL&9a9ӫ8u+hM:;@k< <ѡ<5U)/`FW[w"[WCh r*aq߫xV'f$H$8MuKk^\|CLJcPM Lk7E?AD2(n2 ,4h _p-s"$1Ј&x$C>Tj 2{^QT{ }=YOq=(l4z[3$"';u';ݠeB!10[92e㽎yR,ֈ Hm<fBGX)6NG.3|F7#뙺m:‹s}$)ez+t@DL5qy2 a¤$,SY~E|IGLgص?vSo1fon_M%:"& ' }E۽ݶBck z.b֑J-*JRPOeDۍ1ǘ  C((q{7IU[~lXT5XvZϵjtY;4O:K!M+x ʮƕ辶;+p4B`r^N; Dr9)􄗤?2VpЊ܏~ʤ:V5&8D~nͯU]U y$27ו"k/ ,[].X?dTNtL8w FIMBșNxp'A"ߊ eɉ~Qʛ.Bv/%QIW.A㉡cgy wjAy6Oo_pM(-<54_Ίu ݋-zI* g!22W?6{EmRDuzl]7ՙo|J)܋Jjtj}3ۚH'ZSYVZ0#Qؐn4WV<3GZY觥^[:V7s3aͪѳDTm[)~MAcGU77K.5:`F_ WLEwˊFvj:Ly[#\q= At#X6K8{g|+>\7*$lX&7Հ KV[6l!4󶚂ëzuXȄs4n՘5MixQxĎO6s{dcoRKʒqzR*8{Ou 0>P-]g]CpJ-}˗o|Ή +yenz, +#j ^OswxOH۶V׿UiXdRoJ#+ʡ*$'!Nwj͐˅ӉOɀt;[s<WGiS$h4#x8S):'a&U3\ee:1o=sfT2۴WTwW([L930^B58'f#DE}{Z@w .Guįvo,Sr<ҝ^);J*`po.+A7 U E~w@weS[w'&wхZ+V>3I-5%NxrcNEQ{Qzb(Q[ &p U(h z[_DhcڥKn33Cxb[`kM0d2)]X?b'!rIWx>?0qƠ|;Ž4)C|b3e+f ^]H0d =e>t^`r^idpE]o*A (]Yy8.$8omt?KR~"gf<-@dpDeʼnptзv בpN4Cy3r&iCHM_4Z Q,nD˖\E]c?dÜI=Մ' 59:D4Ff`oCz|2g\gzȍ(bvrDzVc )u4bU ({ -GfwJ8^ Y֢Y2_@J\z~c~a+ޝM.r^/Zj|t m ֹʗK_9^IXo "*+8~2| AXa^Z9GKVQm<*61kJs QaAW\s#K")` ǫgaydtvvT})4ĭ.>u]e>T&|h^wb~u|[ΝO>/ {Ѕqpۻ=ca'DGֶ 2`ZFSf/qJ6bPa|@2CMy

    Ca /;A3sdQyR T!5I[cׄ ld5j@@[4S24@nr(84Jnɖ0Ĭ}U5Zu*d!OI\jOK 0a( xA Ҭ3F}&dmkgmoA8ù`Myq\:"IY$o08-'8|'Bm-b*u}+N %@5Y1vq3/ [LI&ef!KnepҜԖƗW \ ϓv A67kET'u bŌ8Xš.Pl+75KC$/8@wLO$E`K@Mp4gT ObHxg%l |^:>_;)wd Y,h ꫱_Di0>3S'Ɯ`6.! ֍` |L'S_ خ F&D*g^SؕiE[8V\X ~HP?n^lAJ{%F>ӾIRŸ9T_vFNt֛Уj /-n}Nn|! 9֑o#4Jg ԚJ0!Z,Y &9X;#C pj' h[,(Kx<tI=-+yM^KmJbl7| ,06JBr ̀ttg'A{yzmpf0lιhφY_Wc5(LEM|FXVbH"C}x;xG \A\߶d P)/rYc/q0ަ4@` o:[&A^:JlT\=X4 E M (?s-7\ -1'U:#0OT?eN)6yTW[">D~oojN7%*4^ӽP dzNՕgZ2*xm&x[vI*/#@ 1MIr&,gKS8JߔL;]u$v1>9n֨8ika%ɱa)/Uo_1,1WÒvx4*gZS%@"L\mQ,OxoԢ$iQ>wh'  n%w[?dTKo3wcw3UV$BRS0sRN\"|mF4Mq|PB2aWP2BLQ*h.:߭ CiuL+!]JO lqA> a `ä93sdRBS'H"HSOL_!t L[._2fᶵ:qUaSLPXZ⥨TӴpSK>yv] C dZW*U^pElq^cfK+pD #sgHT(8RAcP6yd[wʶTȑBĂʾaz-N2@:$aGrB@oY8MVl̊6V%6ye&D ԝZleXv(5+X? t0(<— jzelN ɋ%׭1QenyI^)uַxdfDݩe|CG=Q9r vܼhwة6A/ݱ@w~fG_VoH[9a)ز1Ђ2ɿfVPxo- AlĆk]TOTi3IOL,_ٚLu"<+C~ʻy7hKVfʑVhY39(B | [AhQeC5~ Lͅ[+pDj%[<QD" m3r~IXXC (be19kqVmkƈ.: v饲طQiL[0Fi`Ngc5 0;1pfN~1 P_RC(c+i$Aΰ k[&JzxFГ? #TfOHNL{ :.{n$1 <4ҧ!S=o҆Gl^ERQgM&Y;@%.<)Ro&Nj2񆹟hnj' &@=rWۈd^(\s{D9 H})*Guvq%[ \yb%O>\ulIuNyCC1 ǮC%0 A6Ψw0c]ʒRTnws2 &Z#&5sܩ֋@T`zersQ*qy`yt%1j/D7s#<,A( *krfs[l]d 2N?Q@"GW)y3zM8֍Ξ2K'+=͡lz ޱ["{b`Ĭn\MszîM$Xw, JRq_WtcME"[KX&,ϝ`atD$x1 |0NUXdarMQ_ Rdf6>OOrU3lެDD6#b&h]֢a>--0{j vh/X˃8^r2Ը5?hb40!ȉ ; qÈ>%`f=y|ł#UEP/#+7 |W "N$YcNaŵS{g,F#@ǓR1f tQbӯrJ1ie]Jbg>8/Pӛ,L?:qgjNM(%-rDgDtVFdfh@a|>:Q=9I1tڪD7sVP<%Jc?o/wk#Ie-/_mӅE_aEc*p($~C8~WY(ƾ+^WT "s?#ofm'kݡ:A <ӠQ^-˶^r,\3**t(q#2V.¼#L?  1$53yW"(8׿2fMm2Hkuka1 "1ݱg1gEHAN p,lV ?iCL~i`[WzgoR&=$Dq1Ș)5vO+Ű/1:$jFqՋoNk^ie!׶)mAyA0ָ~`kdsD[sLиj}VR;YS.y+Eg%.knC sJv2ukjxg1 W<'* XF\_j,D old?qy0s4Sb0^ƯFè"p bvz$S2 *JH؊N9]넁VJvy漑`"9\.ǻ!4xHmosu0t1 x $!pWznmL#&O<"g `MW fqW",4)ڊbuM%򢻧'+b*. w#s+lHu+ Rя/*/'^gĴ\=Ԓ4tE9 `g^D-(M ѶR/&h85dq)@꿂;W%+ w`H$zJ]Өd_V.ܷB~3=ܳ/Ȃ9p4, kVlx` }/Į {nѯ8ĂΗ)M<_G|O;uݞţ =*:b~ur,/)owJr"/ d5IZ61&?$N${/:5Wy,zW7b27V>_<"N1Zck^Y⫫ڌ(M$g3Ly`$1I)m.N*wkTmԍ[v>4,nM^4?'6 ٰT^߾ۛ-C8d ;hP"|uEW 4jKƜbm^v5 sza W9ww{YI,/wiīG Uc|*{!͋py`n878]$?gȾ?)hCweo|UaO'5Eĥ%u56^xt܀Ï%5 ^Y^ cOS2jƚύPzEh(=A/(7`COXK(!>:(8. UWIS'#%+~AjPL$Xl^'V)-YðJ~=EETu1u#_ k-v"p%>Qۥe賳a*-DƜ K4Ȃܝ{aoĝԥ]@#cxmWn T_- =Zl x)P-0Pi(:s.Hd07hF-l$k_Kz7CmrusI8RW(yo+-,;i?в>77plEap&ϟagvO^ _c٥0s9zWHagBc/K^ң"׿ESZ6+ enU(z6xx6Gywcr+^ޱrH+QK[tڻx'K5dHVV Sűq@!(b?8n< >yKy) yEEUA"?qN?@P^ؿs!%#!o7"U 3߆]܌~n$ȣ'|T*O Z Lر9-has!l؜emӧa]2##[m3Uh5*wcVRJcPB4 >e8G,WjHQѓjq\'`]5G1uvĝ6PyS<%@We8*j_d<}jTws *Ӷg3 ԪQ+>bP}LP٭0fP3’*d]eEh4;<1@ (kI|EuҝMz/;nAH ?*KBZV8د#>b-ۜQR?5)k>HćsC-ɱ#-vZ@Mء[Z\`p~AH FLe/:ExWEeރi<}Tv v(N^ʦϽ{;C t++.Ȃ Q:4Ռm59-Ydf #,A;Q |֡H#*0ee  q=Y@URqTglts%ƟK$dG|^Է$sMkqteB#`mWHpoE4`u Xk¾4u'h4`1k}>C ;f<>_~yHi6JkQ+uf/\ VCv̝Jn;WfyV1w.T_ V 3mӎḭ̄)AK\WOmoP M7,gcK,Őh wCޗ|XWGŠwC_:e8#|/BBYŌlF/,MG}HF5d",, n ኻuV~>%aH-d^TX.\|ijJESOoVz2wA.â[,᧎I흋7 J `\Īnɑ-FeZcWH1Z_'IuJ]l} tAW 8^{M0(6K5x' W\}2 U)b~Y81Dd+&G%@r:)B4~ZUw 0|BXUvUm҉ a P̴&:157xtvoTEtXeoQ?"lИ0XS\@2ICev_c69Oބ1g=5{BZ i ddm0oq;?2QZ(wٵ%vǬޡAr~׫'өJ`URPV/Le&mΛ&Uz*n̴ڽ[ ;dj\=ۚ@,&ΖD`ltsRӚңQU(i G~&9-t+GghXgyYݷ 57|hv M;+ZQSCabq |_v=h%^_Xe־IQyr*{ff)>R/V;QPZc j fZLiSl 즩9U =ZO xrHNtʫtb7K1P hnؖC^$>7S&`WA3OļdW)Hn LC]4'%UDSV|*xa>kyDGhU4Ǟk1FOkRq>Z4y+AR%@ٷTлUh3ۿ+gjۖ!4?KT٨PFZ0vC Q`r 1T2R fѾ4UϾl{ٟ;:g$gRQRZ6m(> ozc+SlLZ4a3Ls =)H`4=CE7P3XT-OB? AϲnP|d81 eMO+G@wl}5<ܛr9kՆ=yпllN:Hޥb?I\EM@ QcPaaحk`P!![b HC;F{ *0R%Nf1ݞg@?A;ztZ&na:ajW$!ZĄ37B',D?NWcC 74\bn }2Ξ+TΕ1|%47,"p@ ,ൎI}Zn08KQ%1|!I&*`>*jBG>W i1+Pw  uvŵEuv]ؽ,VB]Yix+ڡ ښJ 0q0u L:5Iv~ڂn)xم[b#s# eVkdA&#.$% VTW0$ ESpkܐ.*Ӎb{u(gWyk%YIq}?]#jt΁pAqY:TUxH"W=$Gi@aP+TE O|bIPoGXrcs5F2@ 1wCA]l߀qgy`=Ifx΄&C)kP5GirX"'4r$|L ô_Ԭk'6kf*vj\ R˖ύg麊ίzHI&5faꗡp-9<% 2{<Vkf4͌TS 0[l.,lneG+tIRbܺ B ZTgdEbnQ[8r, Ej(k} fPH 7=$A>!M#KqG50RA_FDMX79`Пa|J4ˡɥDV4X  ;"mk7 Dh ߋ8BJ1z`EEQ\BD>x$0dgSjw (ʼb)7{8,O|'-*= ٸO'`/+_KQf`A&YvFr _7ӫWM|.ʦc,=s?^N;TrL'CW;k"{fyRI8HUb 1 B%*ȐrY EUTF=<['1 uQ=Ӛlm <_f{uAXd_T;t1?,^~ϓjR)/KY@uy,֚UWOsӓ3E}gv@IdGWU NIP[;+}iwmӻP׷mىWD5i$FJɾ7#9Pc"la jg-JbZ^i70PS(ll( \z-",,Ԏq9ӠXϖG 뱙ŨN8ra0[25N5)`d[ܽ}2r|W<sV>8i1H9=>qO\Rms},c(spA ΡGm7Hf-_mp\ipʇ(oguISGNBK6]P3y#qzi 9g:j!iq{gewW:bci8婖29%nvĮ͘6.qnA[W hu {T!N`䃀߷3-SeB)5>teoReF~o{Uzmr!97AXdwK<1DnyTpՂUSsYM7\m)غ$}tR}{姂Yg-#msP/@4?~Feb ] RJ/0߹ quO  x]+,[|w8ӭU%@ 5ٌe +ѼgǴ u7֍T6C+LWS^FrTI DW vaY/IU.v$KkoVǵVQo\k)`՝-f~Pv:YMuVkRmF4і@ j@r/"HVB#-pvhF]زp! M RJkT7S`(6KDdii_(;dE5SٿK?ª}=9:ÊĨ-v2$xSBY ?"LU;Z1kB 5-֭]żm;Sjg@]Gs[хSH_{^5JA4ݷN Rȗ"DѭŊܛ#Dw-μ -^¯Iѱ7*G#/D2)4?|{ $?[}w)T#M~Ll.Q@%N S&xq#Yo eH@KGOyiY~1vFQiZ0#@tx%i(Cm4Y#NjX\.hU{$VoLw^j-+wruu6tڵh}BV/0$B6S({gnnع]X<)͏;㖜^I=8&[pFwFnd?tBh ȁ0]er[R? P:E]ŁęĞ; ( ZB9f=w=AEKUQ7<.G*ꤡa GXBlRˡZ9$ yë0!+lݒ=_qݲTp#s>m1yJ5uჱ_ྲ]R'Ise;3KS}0 hFkC#ca c)t Q99&t/ݖf}c;"U^&e)_;kr6asTZ'rxBhC͑_] ^G[eЕ/ҳI0dmAsSR8ー2֝z߇ݿ!xy*O- w cuAF7e-<&L=SqVacj )'2L,vx12_Fp^`~oulv&"eA{m>gPU-jqpT{?MDv]$* DS/ Tz bW{psγe')?ND ^W?bLiWLvB\hT|,$E*Gzxr>o\]ooNV0˄8*!En葨 ڳ_dTu8ӡ,k=~,obFphD aPmb +101S]W#1jX#B$Oǧ37ѰInTi B0/wG3^:-hz"l=]i˱zP}G5RЄ|IZɚuWky`snGAσ{r,őkf킸g* s{4狚pD2 OFEwiY0`k%ҬƊM9%ڨ^mu|Z.S+Ż'1*Pt2mc&Z8 X7Cu6/sXMJ $^lw4+f(+|qÒźJi?d(*-x'cۨSba@D#X=BG4E[@N @}~xAEI}ylhkjs͔;0Er[ lC膟ЧBf5;uBK&N s+p}9RZߋ-_lwDԋ r p"i2sh쉉 B'(%8zq6'?cCPPID’&C{&Gzϭ+J\AgJ@r=f!}Sab~(rSthZ< zRwe#D!5@z&h׈& +3*:rsX؝+V~oqd(0lZOlxڒ4%Gy~etdte>[)r*4B{$W-n?fnDP b7/7]\GE/@(u?^AIJ욡>q5\ dù@2rovڅcap/߇.l{#d^04 Sי7?,z@'xҒa߿uYFl,gqѲ6ܐg)wh4ՏGsdSh䕦)ߺ(Ɣ(#C;0ӡ X5Eݲhņn۪qE!-;QvB~9҇@8giӛ0c`n收DQ4Xj97@7|c s}gߔ=Ɲypޓd'4 &J)[JݶCRRJ|<~r-;ZbnOaIegh Ja Xp'-FhҮBDK<?H)./%)܋jJhcxPr7]n}Ж].-Xtc2PZts]DZ㗦9ުMCCӋsE=U|P?]JDi>E&DDoccqB υ 0Թd9RU/qYǃ a4t+Ce7{Y VT iWt΢[䥎awB-1_Pnܳ#pIlmz'C}Ӟ%J>,8G,ugًA8 ⇱ V/dx!HO-_V2M 4Kg4i}{߂hFTebڻF*Ax ;;v#d \Mwl4|:cJWG+J& .9:j~+CDk|`ۇ1`[ʼn:Ve#|ULP/Hx&8^\1,r/6gaLd/3kBߢ_ssyZ6I}k2UR邊=f35zxF^i'^iʁcqJIVNFPᴙ!ve@.W6T2"* xK!f\Z CPǦ]pqTӬ/O0;5wnIWAkPeiaQ*-6`XW Lu\H0׉Չ.+ I};se ^gвF7)Ri tXf~C:B?[䑪O74/88Sx\ f!57Ǝ`;ZxJ2=sX*I4tNZMjuq@cQSQ݌gatQKlWs !r+MAsڛC0~1B3$Cm6&jߏ-v, Dّff?H2V* |3Yr%:@A .IW.)F9,|DF%J@c}ĶMJjΚ[E+.ti%)shX[RDi2!2=u,'e9';9J<JfNcELaNA' RNڋěF#_dݡ_Jlr W15fVS$?5Y5"f5lXOPVFDQ"Ϟ" ,=[b+|o+8@n:%V<[2}L߸͕)0,!jWBj!7ѿ!{7򵣶ߪ9( #XcLBKchxYFŷߡR m3.L39z "I|2i<^;F]2MbϠYu퓙F)UO>8FLE6ธ+ѷBy3MD~yט2RH*[r'?޽ҝXVB=WYA_vX @,FwS:h/󋤐s 8M^"y h*VO2n{+`5ۘ I.jbX<o~ _!?l*+Yj Bn!^ڗjZs51V 6Z=ᥫ \a/ۇdRtCߓ[QaYz;5/YNcoe_إhlR$+GbD4pƩ6m{Xƪ0{FZohxSj 8 ǘr=ݹw ZisryǓD)(ZiMϰ+M#45MMJ qvZSw&痡Q=U;n !܀>Mym֏RǺDJK^klp[ %rGbHhM%AI9K5RKEv1H_>bWl0Y<y݅H$|줢h0]Rk?7c0pAĦ*]gxòf}OE0B-iQ'ywG{b5JpXywoJYjMcsq(0I'kC^{A-&p0( J_cNGc6H5ԯtdB-՛J,WY6k Wu7sYJB+OQr* ľԬ>Eobmm~+(<,b ;qFEhS}z_-_<IUpB> &+ MO&Yij {4Pš!Og'MY1g"T_@F^RUlPι_Y(nhA-f_RedA`}U.C =" FF 2]q4Oٱp^7QvϬSBk72g!&CR^9bzN0?A0Nunw P}eSI 5Z= v&`^,ܽ!RQ?k͝2΍*ׁnfms+f7/؇6f @KkܽcOTpzY>"iE{.Qbs#ehOAdRZID @ NV;B.ڞApqu3qH]{5!uZ[63";Rg{{0׹e'_ޗoaP#D"Bdl #IWy='!"w픠 Vs,QJ/_{vYq/H+ze;{[00s2NY隊(;9-Ƞ3^e59c&4PN3Y6;J@k ݀ofhVL(W\@lc@U4QzTi;DQB8@>"g Ā|TGl%웡4F d ;;fUsM4-/@銜vՕ|^yRb͚}Kۊ]_1>G5LT jlat[hV|`R2x&KzdbcH 0vYٺart/?%|!7ⱓB08!$W]RyKj؇ag TArR9;qqU'kHF Ӽs>ل3#Q ERsO]X7|Ij*MB+)) z;sQKQl`CWs= s,l.H29gSקbDZP8\)|ձb~EeuoTG@9mfH2!JhKzCۯ`(Mv iS# ˌC!nB β;nR']-2GjR=k MˠV?0:x4HŻ,v uŔN׈3xr/j ji8 mjr#U;r@EDY]IoC=E+j" +=^ٖ"5xY nsmzIhn @ x:^mUם fy$LtvInR Ak1 1,l\t޿)KdnV^_?%& ($bB|I%yAÔeMH` 7 VBt75ec?0ٔ@qfpy$LASQ-dWC ~lclv~WV]<\Z.0 2>eaQ+q/Ι2huN +zSU/v..}O~nvL.蓭Gv^L0AKoc*,69 $܅a"ZlqY(+hRgiL {& dxŨM 'm7_=soݔ{MvwZwE.7Ow4*ȯA/0 ,5+~`%*'.Q-q)@\)H-+Wu [) f6 Jl3H ;JF5~Ȭ;H#$˔s]1ZiN6,#S}Q3iV9<~x[ "b&2Ԫ$LrD~07!u,wWxrWs3i`"Ž)k>RqICKC慒8v|Ff 9qLzt)m .^0|:[J^?]c*8Gj{p(,ݕL*&Jy]T&'&4*Nwݼש~%-8[!NbBE3*QJ*ypdJs`]ґ@Llٮ]|:k i2H\3(IHoe#*G~6tDK_ʚ.wљiɎSpl^vBڬ"K.nc5}{=mw4irm(6C~ SV,$xt EшAͺ\T }V!;%"{jG**^ƊS'%*0JpKr+k!1 ;6ٷxٱh[$[ X88J2~2V7fW &=>d@!mt6clQ'2eھ./´m:i $-V!':jG-ݤurNb $P-F[e#׋7Jw\ro!T`$EV-#4jN8W2fw$8UDI@el.t"zJ3+ndc2,m@ڣTrgWMT|k(cr5H!IK'5kp@(:㬽vǡjOV[)I*DVL\ECxܒzWzxRsa0v~\kzi3.0|DlvyY͘d@. y*n0R{2s5pڵQss*0AԇC5̖s=)Yw&hXۼ_ՊE{w#NFx8*؝`:i!sa7gޠ4%imuwQt ~>D)xSٵ |N i0~^O׳ Y&on/xo6nC2&Lx+!p9ѫK{P/)ve-P& +vTZ3Nf_voE%<)xX Up@J| &|"Ry!<0ZcIhXg;.!){*V!7D!}Z K=N 6r.-A=Ou N2uuVC /retYdqǤ8܉Y= Of?Ph>ݣWFZ裀yd%b&|qCE/K. ܧl/N"&Ub.1WjG;+f<XZ5NCV m.AF5ndAf3S4A4CevRh)Կ/9K0`B 42 MtQW'[N:urC"#m8U[1&S ̸c5vEerMFȏ.Y!r.4_53 :ɊO-=_P"dæpQ|$ |o[涫w}9v;f@E+q4|%}3U=N[ԤIGtnE!åkJ#ΞZh(Tfw]Bѱ4eUF+ KtdȸzGݤh߀M.k{4w&PQLv+-TQ7bYr ĠɈ<Υ[C#`s#Ǡ^:-Ь70-&4[P]~E?tLty>&Q9!x zѕZP“æj^Xn"J[I&&m*\e~iTt( &h E%"+-J5ȃɱH:R WHΩ/ 84Rz1zmcsBn:]YcL`>P6s }1T!8O$ N+3I(=IhEL9h*]е7'F0@@5&9oF4>^_S'XCoؾ!'ً'?u yȂ3O҉ Bʱ{{UH _xas)}}ӳRYϛ<>CH14 hiWe3㊆l'KJ v;-4{Ⱥ.?M"j=w&3Ni n=ΏLd&>>)N&!oGp~ab /%ZH&}^"S~Hf7[/- Ձb)R>\ac 2U nvUkO> \'c2c ANY@]<Ìg8k&-C ء?̘\bھ%GkR2*Xt czfiPkb^h4ܢUΒJƢ3uJ}hؤ"l=O/ t6Ru(H$z4%{F/_T:4LeR ePxя! Mnm9: n+ ۊ.Cj]"FH׌Jk{ZN$Re}%cGCd|%AxWO$rMMy,H_L]^`n^{@A#SrIE{.tS'vMx9T[Ieo,w'UĞ@ѵc+ 긻dtRY*В 䌛qT"|bթLf.4hn]LE!7ka@i|B)8зyFFD\=Cj ?xUC*pډm Ң9 X1B :)V[g|eBB^!~3t~`źlC;IϧmQ^g+ZMNԃ1#qKta-[Ka\F_ȝ-@a&8j#yzBоhFn8;Q=tQt\,cMvWScx#Fǔ;=R*{mيl-bGgO).c<ݹc VPݒy[8Y jblm{* TLJDj-IYPz84skɏ ;kR)D)H~|K3xmeyTT0p8eV{[O>_2H0yC)ck|{_ѩQWw<3Z[lv@bN |,̚3MvutfQwزnYZJ ɇɅSv(WT\(׊>$=b~eYE⮪>4=55FD{6vh- u( nqk/ U=},TV&`PV&yϙcdu=e!%I!ga$݁/?].m EkB9KL>KPe'X@xof'25XKć97H~wU1n`7K؊xF% 6ԳZa__Ág(X ׊~n]rI*:N;2_X$X|ʙI1AX>:.XshCK", tN.JD'xu^ՂBevI.πi´1QM:$̲lL\%:׃ul&m 0'qj#ݨ>%rF҃]k-`PA V_e3siB //0[߼_m.EESc8Ckc`\b(̨\E;]dGv_i~0:c򿑆p4r,7SgdLeyH'r0*\au!ߦ=c}AuG^B$Ej(YC[E9HJb1L3]M2GvŸy@Td*yD .JJ8jJuTS۫U#F}\SF&OrP%ܵ()ٴtGPZk Gr #.|X,9]ʄn魢A.Bi .MhZ=X] `@n4>L2iɅ.yko]q}!a.ѸjC_}$B=F|H 8`P7KVldD3ް 2iP db"zRɾ(Ϟf:lZ޿8;gIg PCպjvXͳO~6wԿD!Rl5OfYkQڼ[;^H;*(%3A Fo sP" *e1k5>ayiP}AkyV 32!C9b]u9hn֩ ۝;A?MpL(%.R<Ofs[Nn5"qܪ5@k; [3Jykq=sZ_ׁMY&'/l/}]¿iؚ#]bF™oJr \5ٶP2|XzX+\t&K4ɭ9g>F3-gY5 1;{@nN!iD%y5 ;#ۮ%R$4T΍3T]#{!#{͸]غHA N4!Ւ#v*L\;~2B1$)e^jSWcE}v ۆp\Y @218x3,ߍDPKJd^yUT[ 2; S[::2t0ؑ7@ªh9\SGڣqs?ͭe72Ţ^A CLkDbzOdy2^qt@Njy5XKj?/SVeN3Y%LrnAZfϫ*8Zr/& }4砌1:Ql|76}{>h$ȲTG*dCw*KTRWl 5m YL/  I3k7tȼ_8f`T vX Bd sР&'r ̼OjEij86PD6jeésJ_5㫒-l} j^>ȏM@Oq"O2ξLsʅ]ګjT?ۗ 8)(^[l*ռq7͒ SVB! {eSeMPDQ>&%5$RP<4"%8@"}wFR RZ< >jRoZבv)iwtwdAv"#,X=~OdI"XALO1ڢF,wMwD/Q[UVedBg{z ,]̈́NTdgmr ȋm:0`mi4#4 UuvCU:IܱJaj"ix%'[Qك}ܹBđk݃FTVΔ@^"OE5}ctрaxv6 {Y<nV)$R9/lA1#j$fR'*28t_ry,C7`NV ܝ$oZjKn}ʂP1bIy+mΠy5\vZHHP<*{[)GV٩#RAJĉ]˵/ƪ_D,qg.x/,冄 O[BjeC`!><8jap DGTbRJ$^w:CD hj`edpr̅bw/e\.3~ ւ+֟N8/m' ;GbKViy}$K5}1s-xA,E8ϊvVOHަ7h4IJb7SR^T=~=Ne4ȈQԟL/bv؋ ٕŘ&@v.2lMjU/yȊhgeU`alՏhDJ1ۘ(./%v!&XWDENAri+d}`K1JnR89Xc"Y@!8-F|~O>oyt,X?xfp*A.:+[k_':Fi7}ʻ6m, G:ED:WܲV+iLrX|3]:UCugZ\3"9 y-7l|-8~Qq2b%m 5 "N7j|m`A2ijߵXһ!Ic]N,g&d2=Wf_⑹H l?FX –K9sۣea9vԸ\'m3>,7=AK3QD:V闍ݍ#5Q jJ$r[ Q3ZRlu@/p:{ALJ_lw1HJ+HDž-}-!VM8X&.~=ތ-'xm $qi9o/Q䜖Bܠ/ib><2b'IQ3w_͗iNG!4_R)-g 2-H~A)&+ }4!F7l4YR7֜Ֆ#L5>JJPcTcYi^_‚wMD+_&g^@OK8<NWnJ[))~Nb r;Vqu.hnRT}δFocN㑣'Lx@Tb >#<q4TCpY`DHaQO єg P ?vspc}Ii8rmwOg <)ThJZ^MԄ`JZw[kFg% YK}%ͤcSp,=4؄Igl$@b31tag/iL8iέ|_){?7C o_FFR^x\.Դ`SQZd[<9IsԓtDyeJSEz!ۦ)=ZFiEBv4p>OTYdꖝAӧ+e^L>zzsLJTs9.HOE{{u4i<5b;I7k@ţp=WhRr{B[iJVZ@BOoq-`}Laqp3: '&ʚb8or v^2I._8[nF#3J;[k6dwybhLn$綶F.Pk0Qȗ8dRgi&x^n EW+5Bexsb뙍s(!| j=ȷl*xڅ=.Z. E{k)t(Xj)mrMTr](so5 @ >ξqupUZxO'-Xo?TdQ(йd2L(q=Do(w5t ~Kx%E/z';f#%z?`i0*Ҁ}7DO)[Ix].Yb1uJ NDz^TSe @]e omW s'ʁEӍ^AJdԯ@e"VաLeNX[8X[F؂`Z:: f^l]{fo# HPxmXHHokp`fV.|,Nå qaK3w챋2LJ޼k?,3-!5 럶qYX ޒ'OΔmNlJ*y@\}e&EvMuǒ$$Pe{L9ݭH޿W[t@ `geln?Q\z%w;IaOu zWbұa&xIU6@#[*_34r 3qʍ7,R~-9gvU)Fc-$kMa(صXFu>Y dw@xb,PKrE[h=*ƕ.uj]'6GgZc0nzʚL\dҢr2a??*-GO\[ N˱{{]uc+3-/[.s4YH]-`%0=; 9&N/1_D&t]Zs;UfQ.YD \*y:5`˥}|Scq̠f$oLpE뗡'q^W_k~N͞1Gz`=߃,"y Z>ViWjoʢb1vH'ltߑk@ qh!ByEwcC I8HdxoT,}Tx(?k̺ Z{/yœ`b kuPr GV[zG&ZRNS9cj3y_Ͽbz1Vefz1)@2mֻ'3MGvLQ.&Ǻ? 3%,o lVǤ⇎i/}r07fL7Z|F!+~^sA 92;k eg<ދ@7~m9Hޔ02ft%9Hφ?̆I/gKL[u e([d쓣CQɴDw΋L9nr 6J^KY;'oPSnӇ6 / a9" +v-1tD1CižgHþ涎zk&'qN @{}`4Ǝwjɑ@rӃ%HCHii&IT)xއP()?^T% `\hi@v'ǫ⎱GT_Zqtb>MHѕr5ѩr/wZfTEVnPXkHE hy%5pZ\x&֯?T=͜GN|7&|e eaȐW)5Xexގ4y7<LnIaތn|Pd߮Ec`LB[OI-MIf_S[16HðgR;Jikiz(Jö$~ &JkGo>aHH`H# Pˆ6%ZFAb".27*W* RjEnݕVt\tۖ3ArP!BZF+\"*mݿsd@ E )#s,JN怜@s8T\66" Lp 2-л7. JvT7xfm Q7_ųXmz)Sle떂ag [ciM. nz_drqK%ٻNQ4P>@8@#PQy{fuPAKQn%ۓ|['EcݠV|)J4ٲ\x~s6+q1>tkߗ}Soh^/`KDŽFkܮU>dxljԧ$F慯ば+XtzEu@.kw*_ܿT5^ w9$D~ qkd{U7vlB\,iz䟦V!XU4Zq? Ǽ/ٷn5(q>Mf*ji !c ޘ\ D2,.S)v&`4tSc(D[WH:,[_r+5IQU({AZ=a@pTa}Z&.5Mh0.!Hсl"lAͱaxBy1CЂ`;.ӕoXH0j#ZIptݪν-+Ii\3mD|#?!ۉS=iuHl"}I6oVೳhyB]2.Fj1 ;Y7gMqaaMn'ut8WD/KZB+VXz` 9 ӽ8/Gk:dITXܵ$wA0.OE_Y鬈/Sy D|ʃɑ,vyujyv?yb7jY ;{N$< XV2Hqe$ ^K'9<>rq/"v)<\JN)|UFit4`"Ӥ/s\"eNi P,*a3,uj| GϱYj>D=W:%N,  *Fܼ`M3]kƸ W2F HՄ9T喓\^0_8^ 9Qek#FzlDT'ߞNoKXStq *b 5eK^%]f+ۢ؎ҞpW;aZNNU es zpwE%c?A2fXv;#n+V.jgeTlO(θe o}/_OcMIEyҵJ^d3ʑ#z#hl]rnMYF][ xM*s7nB]zqN+4=LtWic?+R|A<˂BP /pZwKophsC=QxzlP".%NX,r"LbvF9cw`C&r$ItkB:8K 栞 IS$ʙT[A@4qK++%cJs0Q* ft(ÒuԂc[7>'lrc#)n}}\\_i{ OhR?[K+7(٬ $\S{ήX$pVMx H MKa0ockt!@R?w)ݿVAqRts}!r -1j:K{a~= ^Fzu̔ mb I/)zs֫-w*^巍t/F`{򔋢O,GmA rj1pk|&x[q# 0.?`?N:w+qiS`gTg=~_jehU=e +Q|_݆lF]qڤ7 xXdf`VR@@5.8Vb5=Խ]!25zUH}n%k8)>14fXQt߁_x뀁3.~|IBt}R.c䯛P4@Xv)qf?h8t&ItB t)ʫ?;?A9"woTF~#{el1! 2AZ ~p[G< X)1 Osd}pКeۯ*8Rz waWYlMcss@ +FFE*^ᫀVAT*vՏ/o)u8~sB,2*ξפEbʴ:d*4\̈́,:erhW"s]r<?N՘TtCcגC K6PM.kBg^ٮezqb)0 Ɂ#&Άy{~{E]d1V ܦl ]q uDz)Y+W=Oڳ?q ֢p;2[Wl0}]DLE_|8uQZA~_8sѭk̠ ˇmvm2o( K NZ~w)z_IU3zs: '}< 縘mEz6 n @f4+$Otx&.w tbg1\QRœ[;7fhMD~KPq1gٝa#Pvϋ`aoev9gF,V.a5ŶVK|3dXߍɵIE#![1@+[Zsv`L qΒf.~Ó9d}'zc$,TN%{≜úA|jB$+'ScAvy[+YiX@TZHG _Ixf ?ŝܗs_`F+$Ԍ[4ұ^D.SԵ]Wik[Qˡ?v;}/]qK18t 70G/Js_IVmRX2b#\PM#Z9q @[LF$NJnuQ1s&]XFtnjphSe'S #x#]Nf )LaʍYj9ޚogeUaLNfln- ,v5ZV%Hυk\]6!9+L^ZwBIqT{'`S+y)>3;ΡY{@.!{ ! y^xtYH>HS@ őR0bчnJV"3n+4gb-gjHXEz8W){+jgr)^hH ^&)D{,[~ϳYn\~0grEn3R.Ѥ(uEAo+Xf3:c(o[,-Щ<,uW(: %2AV+Y~вto(a }N 2_@3ݔ=WZ r4[n ۰k%_0>,ә>3"Mev,q%`/JGsKMσGz+*fIZ9zi xa~iއ 61~U(z(Ir$K0=P]{mȿ =J$ǘ 3@ RBxǣd)+r#vdtN͡ݣ=Ǚ '{bW: tPFY<_dUB<${"@hܴ_Jig=0JL:XPe!cՍOQwVf|/ )› v@M9oEĶpTR7v>>-j3!&@}*(S&6UU> 9-<RnE MN=qv'AI"vIߟjU ̓5B⧮k,]. 57n&8Dv0# (rޟ,=b9* ;7/wQO;$ j}[/P#6]<W1 Y ҳLz"S49?)[$<I{q,/dx"DN+$v`Xzj zɽ !$[iqle{bYb X»=2$ę<>X; $2-_~gJkocwh/ m⃪XetןEsB L^8hRpoUV#)_&Zl/Vf97Ēʉ7Z% xۃ2[:ػp\}(hE ĖmKGs@aB -̻I,sZ7w1x{ ^ujDHˆpt웤2zŽM 3F^m#FHR|Gg64ہ/s!ęE(IB6N`9C`c,>;Z (-[xxz@t%(vE{S4,76,&? 9Fh$KąCs565^t$@J*2VƃDlgs V v{! R?Uؗ7vKS&}dTXE ?}CԥZʝSRO}^՘!ҕ3dnsMSFJ0}gpo ?hP~PL=s;[a5e#cɋgyz)zƧ^|FxeXU @Q)+3"ǎ}WWR9vw}d2? ]o՟rM!l@t[:[UٯL_-QnނE5P[(;VmfwQyٜ#nLR᬴߀jy'!g/01)T[\=,2%)9?n Fz*1y2oV̕cDt;dIu,#xIpf!pubm|J؍̷벯%G#زF2s#a3JbמEO@-O9WfW&雎6\j Et_s缹(YjkPBİ^b8y*\ " āMTI=7zڨ}i~%ͲQkꎵ[F`S-%fD&hbR/N@g5rEz³C0`xH{`} 3áo- `v aMAѷGg劸oj|Qf䄍Ń<@31 >(Vޮ }݀Dfdq}H(2Q.R!Aф.etvY\w8Zb.W 0)u*c-\RA"t=Tx.`v ~5il.A,X ġ)q\XG~x܀ovR`SC*k7]C/OwCdV 8G5yo˻MuH:dΣq66bT M%fhvU`dF KsY 1P;UV<"m_vcybNq@= P,A.A[y.hg,$Dh_ǎ|)pzႧCT&Fb1yM^25Sg}[|'J«bv]8-5[X6n?`/Q>ʪF|_>,yl† !T f̎`J,S9ݐ3dHJ< <|wӂٺQ[pP//-JNPpvIˊEBx;8x6gw$6 ޴v'!g Mq37JeV5ywhO*bAz,3r<"Y)x8MۖN+F)% sx@H܅:_([=dM[qu-qɎrPjFhx_UK~]A$gݩ'#m,̳ 6;Z9}WR5$= 6(c5>=zD;? ܐeu*/62d&Yr2ٙS" .Cxr`@;rj -b[үd@M8ghr[-oPȡg"Ҭę]zMJ hXPmigm/Yt&}jJ1ojlg66,S BfkY^CL&qr6Rd#2r` 4R6zh)$`{3rd8=~75AH'+!b[]wG u1]&/v ;;zH袻4,dc$Vt&vBy \ỵ,^. ?w]w^LdtT!a+%j"(Pt)MrFIwi"LՋ fJ4.`"1Yq.p?c$ 8|^?_2j<-B)쒘M>"8>pBCYҧj$q]tpV(9kwT }`й*SVa6?FJPmE>|]B.G4%f!7bHU( 0[{\Hpwshd^ Cey΍dKc}e(ԚtZ?4?ȏђ%Q!;PP r0}eE (WP/*e<.o$73?K&rk,Nܓ B&dq#R4,>^ APǭ1܄V%.+VFO.7lRLٓpcM[ʰ=ZP0pU7$"6iŜl}x`h&ѪRrOQb]5<-wsX9upX#:aWK]"n4 ^ʝ !@7Ba1c+P!kxH% J]2/$RZ=zfw-YYj88ZT\99*T=Ij*B]SאՖ)ѵc^EUk0CH&HCұ`$"Ckyk:GJ MC5 sQ肘oAຽl/h;* ȑ<>Jp# S~xݴ- h ,Fbm9 *5QA?ʑi7O$/6gD$i ply8W('1 =Mf0V \1(ZE!< hnao&']`yN>73oEyV(++4jN!=pIm/0آLdo!cȂ7!bR!ۀBE-\L{yO1f9BnL[Fjըqbq"ɞRn_l j [A@-oaI Vlpt}ാ~Mhd wS;}2 Ke_2R4.~0W6\v4`wk`D^3iy^O"0 %n2˷W0+n0h*ly~=$%"D`{0W6@ٶ u!4ѬsܗWGzDpm!i=qaZK#"XҁeS"XU}VФ° MB/#٤^B |uvq؀|GOL<>''lS oUj{JMBAA>\~5Pn*|xN(\M8`ࡔ^ ;?HhV~t>~WktmmU?Nj6tݞWZN/:4xlʹ_;|RQSvm^6l=vF}~8?W J٥@1>a N57dë2pvuߵ8)x%hzS]k 1)[ax 8H7Zg6;Q9g tiekD쳮5@cA[@"<Ͼ#ħahcX%_e|.Ν#Ek%=HQ%;!Q8Q-4Ì"+(Zx#JۇT@}D/"(HQ*W$񜌑`\Q]@L7YcUDA*,&8 [ ] Ƿ nExL2T(L8eV2[e3HN WZMYOT~٪cN%ԧ] 3 }ցBKDrˢ$fbIKnr(+R,mkڴ'Xă,JYQ~(@@Q+b1O0Y%rh݋JoJ!>76C% -\PT؟d~VoyN( ,x뷵cKT&qy5 IFm2qcC͒OB؅Lʜ"&,9`j8P=:x!Ky'mj]0XcL(@_T3/6u]OJ40\Ėi ӹrr1V4\!+OY5CfRVդ*sS_R[ $>>^w2N_u?rE]-.0/=w盤tQ] IwZ}6݃Tl(|h0metur.9vɬUgg_^[n \},漎 e &M3=($۱F8\&VJ,o&KQCa| ³7u %׬Z=m*Bv1#̵°z> n_) u~ajS]nID|w"=I%BҢ@d6Qys9Vd) 'APXzbA8e81w-F2\׸HUV D{A`b\ 4@ñwD.Xj%be6a*\Yu,?C'LI~Pz o=OC}z(' d~"18XYi"5(oߛJ qn'P(|S!=qP !$&w-2vCPeʖospC tTI(w ]eR"x%drB,P@c}n d~%n)-qQ~X=gKO t # sǶ"5& Vꆓ] yh7v'r>ׁBjrדq2TmUTD#=^'o+:1~߸ @0%[0y9S;{[uv͆ܦX#$mej>zYmPCģS=%{~4 Q]Ei\h T LľE4B)EٮG/xQM7|!yx=Ԑ31r4 cCى^O'ӯBK8D]J*ܽ1 ^$%VƗ1m53y0ـI#QWճG6B:1 1~14J?N? R# cA8~6<&Ft pf&T46%ƻIyЇWjT@IqCR '~̜Z"It5.y2 :$8/ib]h@^Mp΍'mG'i< g CRO=6 [ivRD0\K!'%{G?Oh_Ym~_Röc0mKt> bk0䓪]w1fgz<.Φ~Db/n fu0Lb NޮKyULF.DF?Ʀ;NlqlI͝ijd'G&m?ڵ1*~\ Y{<Ϥ%%ղW>;׃E7Selsb?]XsAe?~n1Ԧi<僺h tظBkPrzS0~7|ׄ?;x/`@7HStcߠfb! D:04j"qw\=T5Pf $P8Әs,E7% RV-1GB˔ 4n4 Oې}X&z5m9jA@Xd+BXzH(0Q3.݇}&J=K t{^en<4G[֬]4w3FBa' OuRFzcaî"s (܌`pa$̷ ݳIԆ,Y{ YHo+WSY(@Y9h'q֚.]r6y3]QwˮN%DŽaޠno=z:yPrKrȽEO;nYn+z8YYZX(,;mf@[oy?!s.{.uS$bp! 76<&e1:K!5@W ^#JA[˕h9 o s_7"w 蕥MOIJ3Z-BVjx}dJƇ6,UE1)g_hV0 _ۦ5CnYmqxϡO-4Gts "-v`١#HƤ2E+ #}2ƃݤ} '(ӶaI]iLzz8(1 C!CW [wc!z!yf?;Ih9 y*RM2gհBp.  X[t`IPF=GB)BQe9>&asdIY3Ta cXNql3僈(&>;}v1'krhU1{> "tX갗ewhjB& C*#!>oF\]7_*Sq-=U6=IQ,yuvXj);~n7S 5Ǫ (?`+sh4#P8>0_?Ce 2)f:]a}J lhz[º D]BGos^8s^RA←cO5fGVރ+A%ھq&qV>hL+>uIN\J]^G1}FTYf}R7KB;{Tb ۝ H0TlQwOՍZe8e͎4'o'NԽeՈu=fE? Y%uW9㎛ńO_W̓:He"R H$1?*S߄ҵSnnD>GBn .+\⛇NOS=0Gdk(ZF%q}u_75qf1fJfDX.Dr#>D܆0!f/i%5V;pP#9:U%MτfY' [ڭS#?&zT[KshI2]?/Z.ϕyZcpc"n_Rz۞7iCV3%Z9 0&hG rPG@_)PJHWvNqjfeW8OR|up-/+nËm- aT̫۫?6q?y <H}]a5~Uv9O cw\o_L đF3Gr5~u1ѩߠDFg"{zx˘J>_ o'^ L}4l2FQAs;v 8O͖KQYw9BLFP`h3\"N.3s5AeTW=AyqO| ƫzƲx^ _;PіUo/g$/Q#}3#p/ S8#^Z NjHuhbp5C܇.}T QWhyzU*aӔF}0x2/4ny*&/E8MG\) />yB{YkN-)6^ëU o`En,-kuy{wÚ=xCY2(ܸ䰏,3u %F$~hQ-ilOhY[SP>A,;LtfxO?]hd[OtWv91,-`̮G"64D2  ߶j ܙ>DXF]tvkIrgRdYhv 94ACإN#sDT*׹I>C Tz#Ae{RO s=[N-`%>5m0429._KQQusmuə)e%NJ1ǧ/y.eS>y7C#gnmrӇFɑ47u#zG| !$V>Lߣ&4}>?}| s_RT鍠\Clcc*;WfߋwXZ9:B@*$G\m~bԝ,SO!_.d'nP{Ö, S'#z _$Bs}V}R֕A oX2;~X !Sg<{+|aWl2D T$1.|ImZf _Mz}FQZ9oҮ!,X>Vi}hfz`#̜Y/$Pu|h-MG3Z&ǪS4?c(EYMEVSz߶Y"p#@<h7<zS{r۳fVSClz@[wĮ! Z`㽻B 6nP̀As$ASCj"+O9'&ܧ_I0[,S~W3Osb.+|gэUUJ0w<>GxDXM7* p&Ys-,(#ۇ=-~nJAO_~(^Ojy$t=b:&&$5s6ԁ;RxE1;W <\is-uQ^&߁ّ - 6DD_\{5$GwC$> 9'x=ͪ&?ݧl"$C l`# ]BF׃݇6Y?_9i >hg¥C΍Sa캂bܠD7NٸdI^Mquo` WU(`4R*4jZ)y1GKH<XeoVU"WU ǝö4xEO-2*UeT>`@iwz}Kv!cwjIOp!xF(M{ g!n0HqϿBGKwyy B\%?YzZZ(eY;]h'N՝:dl$wV2Z~fZ\t{ĬV3Ş)Rwz8b hnnS1rm}_jM7ZGj n!88(řf nڰ]fc̻ppͧ<Iih Adǝv`%=MN[?F?]8 $htpIT3L$CTlP2Ň,uk~Pl" r3i ;J)\>G)͇ކ{ysAAETk9UtAkΤXRm@m^{4ڶаo1p(tcI pNtc *x% W5{Keς(Օ>yx_M7 @=`#9E&Ca}ܚyIii#Ksa%ʆjSb"|}9`[o6#7́%N`غ/~6(OT>AI^Oc@Zg/Zr {Ud g$cA[CO1oȏؤ&Ph~q&{^F/x2l=z!&bϠ2ZI2oAn3zbBYv/ᇔV<^iiŇs"޻.fƽ-?^eΉI[ZNB:z$-s:N7Hdڰlu/,1R{جKmgTԋ64y]7.;Q9VA~ώZО4^)eU@lhSvc2(Ld/aBL1I_:=Jʝ7яT(Okd9~?H$P ؽix0[lZ݈V3g36 侹u*|%O&Ir$`xPHN~Vd/uqBWNّuѱ U+,Ay-QJ7b߷Jr!kPv.^ =X_?p2 ,a*4[5R3'NM[,g6mizX*i u!qFrdZ y5'6,FqFڶ\hzI:flR${͡8.KIMpZ{֘ep$#]v1%DFqc{xjE0 I?.64_Ԙ.(}qy((\buS$~Eno(zchFJ{/e@@Y'j{yAO \7z\'3%Ns1 1A/?O/[ߖKˁjGNd/LLo>C&փw_Q6e8ule5̃~m,g ޹Ns3tuS-^P[1;f{:Y<؆~b[aL%O$ bu@&_j ė3b"CK. πcm_ǭCGV)<:)u؎*%.`sFwg239uN$mtv4HWr7}S6oDֿRhһ'4KjnCJ:ՕB(Xk@BvA.eF%q7@<%KHAO͍LJcʿ{E2Lb}Qev0h]]px4T3MdM٦ex]ꦶͅ9E釲>W`Bkcj7_񘡹ㆋyeKXцjnvh8bgچX*]EJ!jѤD#;+i""'/YBQ8S5 P/mZ\rC_וdu\cQ>okCBglӴ'H;ibO9%f L4Kd,٦62# 3"&l1Wg\Jgk-'8ϋoF.[ֿJ^4GKTk/a= 9jaT{AU5|xֻi)|"cRhw{jnZN}S{s!BHz_*k5_[Z5h7ɀn`ܣ^"gatWM hmfE|xT(1f9/yOX3W3܊*CK)"{7 lQy5I%5vZHg tОᓭ^q-R欄B % k5eYl~g}W,Bߝ{5u#rDH64Lג#6Y zz48]0Y#e10y2!|Ѐ/>UKgyH"98iAzCG'HU^b>D;jE!SЪ^{4ZK]5i1%в=3:l.~*I)D@_ӢJSPʚ2yS^a!d'o745h,O.(cH#DocY6xYՋ^ vn " _ťf?nϙ I'˜Aœc|>1Sr) )j| FM0:ԛu%.GI6rk\(C˶ψ#'-K_ӋgrR:cp7K.YjzkҙXfO8m~P|II;le?"b1??l_mcޑ׽PDKd0S;dLFp%@{W_q2?hVQk 0ҺE^}jPh`~ e_:r[c$ 'EfHS>ȼx']l;Cv]/GOmmS]xU0@5\ JalC 6}ݒ$H5+,|;oF4GC}l{$oPu*@f1UcGϯ9o]91I(xX7AJ~@ߧ~v%O}WMIk-WJ9-\j'C@7΅ gJ'l"ӴW<0sr wa=]JxqʻK~s{Ϛ Ñ!(ZlX2{.5kW /Ł DRr A+ԉ+fZ,fE_h!Қ匋j>\^'UwU8pUIMr_ȝx@ƈPpxܚùR /4)@^ v9iy0BJw@GQFs"ae:.p޶C[>l\}WŽ(9>&L ?rJR'w*zl黎wdD$QkTO4˄\:|yVՌ'w#>v$$TÝЕ\WN'Dr]|jϨr}ėP N1$@rNg5+UN=qޓ8kce.T%7M3/")O&GN|VcfïAA'24 /5F}ƻ;:ޥv'6EӁ iGI1LBSgHQL(iPr\HJ' O%V%E?l5tF(4 YnJCJU+CגdIN:[M䆏 ՆAl3PG-ِIotf9ߠ >>wJ ݴ䅥`\5ە0v E 3X>lIi$DŽmUcGJ8A;F͞ޕA`r4gUdtP~ZEQG(!NN,QH8c:5~X^o_kSucia+ǡT|D0׈Hw͔ XBu/:,X}MDBd*5V ).+q>ϓM._ТQy3IIdГ(RI3 AmbkW ?Z4ƨjK*};!R8wR9 {pV!9#ˠSт:xIm(';=Q@uN\ǫO7*<ŻIy 9ގّj!A@ēBzZ,IF>Rq49VғǸV\ :5j*ƺhkeP7a/ǶBYxI'g3 }O^}+]mT'oCorAZPXtXTl(9_̭ؕO:'ȗ/1Xŷj5԰k@܍7 q@LB}~ȟO74aQJ4Y߷?fj:>վ6Qxw,MEȯ.$mnsM=GŸx{D]Q vUC<~#Kdz\ ]I'#e(rq˪nk Zx"{?m$hW^ Y{&/E^c1hw,뜩+3fe&iFr  >}%JݒT|w1dQnkv4n_gZzX*,nTXpboB\jNϓi.2eU1~" FJ0 u4@Ěi ̃] o f{\XVln]؍$R\7h+Sqd)JO5SGt+!0ڊQkBPA,XG{Æ*25j6?ӛ>l\!:iqS1 oKƬ`zz΅ɮ݂~!_ -\Ԉ(B8lͿܾ9?8ZE\4]K<3j;_+@N'3 XLۼ8yz!<ԗ D0@ΞEFXyP7兝V^]\M.O!ʩ,6@U agKb6QƆ:z%#mO p#1&ݯ?ox2tcTٹ`(P W7 Kw0٭?6 VX3hMO`+ tQHD,$ ,:!hx(sa9}s"}M+/S/9Ha6iԇ—bqæMDT&֯QCYApbY"&eCSJ2RfBd7$Q$~/oi\t"k'72+>&4⩥bȕ!%$ 327'jfB3$m(OE̘3 cT[]6ioyƁnq̛v ~wfz˭yGT- Mq:]c75'%L !h^fjJ@fH) =,!33U~ s[?{ZC2+NHLBJZx!Dt>]4p-}~Mz[w.#!D,?a^[>|[6" o;{ %G. ᗴӾZfm?PVn!Pbd0_s I"k8Dzs{*TGGi2;f,aF-&voKC8:߬t$,!@|F֙~1utcB0d]+oѹWK'Q a&6V̆BcZvD MD4u/m4p Ys`{!*wdQO}P4L Ip"49㲻2N?{":0a$Z.f^۩8>KtXdZu"Ad)f"k5W$Ape(~m2+R-)cDh۝VtBƏyp6|N''8~!|ŕU@I:SfΈq&fHkE5&t' 0KC78%4ڌ?,^צw/ࠆKǼX;#\!R-5j,oc| 0!/܇{# n"ϙGiTU͢S+{TYU5.r{&JeBmC(ЕA_Oz%kFE"E*8:+$7OK!uLBO.֦D=FŸ+<~ 9P1Ġ1tue Uزy`*AomIDoSollS`)N&F?` ,mnRDN)9'ِ\>[# Y>r:0siܻ] @c+'[/\ ܮں =}hTe22*u[Zmz}$9'L A,V4q81 n ewcհ%ǻ`OĜдDPHPD-4$mOi]E8щ`YNTjH\U971 ߸T3:MG8J +9tqǮ3Hus;6Jv!JbS Px*Y-ݻxj9;I5^æ؇'^bU|]d+e#= nRs-'N,Z;W8|g-1Q zPyyKQF+Ags_e(s5K5vt) G1(OL@AZh_Њ ]l)b+4ugTz6V LN&;&l =;z YYウ$k,w4,{ r P/S z# cѡ`nHoeM ]QY? 3aRL1 ~q˸W fcS/&i0'U:̬MD"^9"s.AzX8/i0|Z@K!1/u',wӛTil}S0ɴ9FxUQܻ(m z I8 VSB1\5~`3g5+2YCz=)R s}gqJ 51m+k _S=zԾʫXjЍ hzciY}+bO X&uO;Q1>i/pŝV\'k8HÚcCw¦ :eЖۅfX=6 e/ϔ,l)?Amؠy=AbwiGW;bXA3"NuGj7c&ҷ-dk6S#7)-SWx!ր^+6P%X'Ax*? Xwwu_C KZi!] uB`tnq0=nޝ! n8 -YX ?L<am10}x.4 lFfJlt5J}#RLf([s\<10|1&`ˆf%F* NPVZG޲X9Vٵ2v7!p\cNn|k-⾶$#B0Wo {e7a*Ld= bARgJѵ*.ltzͣ("*y@(b[/Ӕ$NDPio:)9dR*Obv܃ZEGv$Aː/!C7 F@3ȼ#c9S?ǨwH!WU|D:Ff_B<޷s fo < @[X1{FkaWKQj'7C`|<  j7ɏD,NʛA-sZKBJ^x/W@ԂRAl9 `q xc IXx .4W#ӕeXS5+?[W(Fkۈ_5ߥ,,OJ۠n^.dɯ0: ;~}O{ 6#?5jCgdt4nWg2ic c!/Y6 o?) ˂h/uftjQs)9DNd1vZMHBxA4w6>/ LFy݉6N Xy;xq۪*9gLSHa1d[[@Oeс\ %kuP (Ő52x0@i>&:awRJq [-Wfx %T\Y,|_"e3SwUJzYt񢻰 28XS*zuy!bU 5 AB:finѳ,Uw qڼ Z%ϭU k1F('o'\cH* ZYڦ!_pH@z@z&tӨ}irb ap4uERF_1p)"h}@c)<ȜeMll-hHm5&󉌏М32XUgk{KmLv{*zt@k8+DZUFu/6vxO+hY!UChuO7Cu==7!&o?M,zmb?Ibc#E;Qt6J)52&m"EDa:1FA/d1)1{) ,naҫ}I-&ע*KBtBrb&*D4A|#۴,Kb0Ha:Z[*)] "gHP-/S>N@T, "Ɖ@Vc?I1 pOe9]iFڴͪϻiC;wTZ5zOӇbA5GusGۋZ?/YfL;8s:XK1yQm/s9[Ҵ,)aq6v:d>.9ĻaR{RYϚ \HDZmn|k !^}kpG:9ҶbΛ#= #q, uԣDۿEUTĿckc8RhOglvb+fS "8XaR] 6rK8أ{`Ezn0XLM%1zD]XK ǁSHq)5 (1?l&o#[Bf挡SȲQhT~ =й-ڔNzèݜ"AVcS(/e?d1h u$xY)x6\Q]0ai Rt rdckƢvt[wuBa,n>Cdvm4FnH3/6?[vKAdԁSVS3}_ b@=6Is<ǎH̀Io80_l!JЎd/Wt截$ksnv:g2 j6U1OWٹ,tGBRPnk;l"x'In5LWI`g & WiTXԳ^q1m#p y 9( &@sK.?h='`>XZ˥]mFX .+gסh%-m&_+ }0!ƫXB$nea-fҖGY}Ő$ɣn1?3O9g ; *yTvsbyו37#fFML-ݺ{D:#'@[Ă,kpѝe%X <Gf_Z\cga=Jc?ɰNϓi0zF:yU桏@ jW`8L;Gg<4ς^8 jbQU=?808k=73Xqh{pf4)q˞B:9\I\A-W0I2;yWR،**aGڠiz>'#1V:ŹD%rr@ݢJKV\\D|%WD*yfWSOCx|OT2D:F薽֙E~0v۷18Y8te*9_?}K|W8זuWLP]Pib;a"sv2O…C`S't1HZYZ'i}fP3>6rtm;&n.,+ ޑFߛa>G4'-0 }_h̵ P#.8S4<4k$nLc_W9f,Yq608$uOi&&r CM0~`u2bNߴrebrm[{n݋@~blT< d\dZVٟWyi^=с;/\ۦ^9JE ՓNnxɏxkCaB9]6>zK=0/x] %"vD=l(Fc#> %o+kiK?68r~ʬz Zb}oL1etƬ]h/Ηڠs΁yi}A~o+G&.w}Fy"O0-=fHm~ESaꊕ%mEHp2x<*(hҍE.Q~KÌ\.tW@Wo%$z0G6M{]Fd"=S{;6$NO#_|s 5(9"%H8 7tB9_rq Hyk>kyo3tת73vu(݄LޭUeE?CWpZ٪lOq7TruSP.a$أ%a BQn( B?)ؕm`(3TUVc^Rw=tsļG1"ܢ>'ڞr0 Y>@IYW ϻ>^k$)cx~#MxibVIT荷<[Q5+Y?]N9 7˷75ʣVzҧn0 Zei2W̵ӾY']YKDz`O7vy#(mRBϋQX_"%ºK L 娾rVo ^PX|ndArPV/Ģ1TT=Q6[^D/ppTUF;~4408\o]jS|žǜac燷n(D?ؾ/Q[k4S}w3Ey4;-U;y ,6 xX F`SٮhsT 0#ʪMk볻/$M~;?>58e$ ٷf/9?9<6`rʈL#U_PJ&R +ez[LBŚM7WJvhգ$8,u`y,sd.BKKx$VZfq!r&fȩ&Rc'JIQK coHUn0j:a>ڬ'ɵ&ξO | -쳪ODAMH=+Wf9B.@WYQآt=CH@{ 5 :ݼ5imh2YQYW_,SbyתhRpNdmpZb@N]iidlV6 _QKF:Kw6$By5ScAHj~&v/.ӾD>BQ_I,H@Sv,᜘(!2R$.uDx1$IEҭ2es eLu8^=,kIKO(-Y-_ ou xO0m:Ҥ7 n ʪ4h_ghB'd/GTZG2cw^q>J`.| ?8:w<]0fK ,=[F}R}`xܗ0k wNAnjјlv[J\[.I\%@5T؎zd꫁F:vVgT*킖+ q~<$F3xheR׈l(6v!쫦—lErnގG/TAiw ~1x7v?xJT6݈gM t݅dU^iomXRyZ4 ˩ۺH+NZƈp-0)]'zP|M1Doz,uXV (`r ˶_d|NC?q^Xc$Z`1!{J̫TCfI /ĂFv 6-7Ӄ|sF躣V?İ 2JKG_nd*Mm~]ް䡉W'' >,:q4C6jq|:#Ñж}XMra?g[@ ;DAvɂ.w |xScoxLs}GXݤ2 ɉu16IW*\5Б_Bo-R=:kS.̑ݘk7<݂2ė8klL uAO !0ozTMT3X;,:>i=Uu^˚7UJphx T7t#X`niyGJNH5hQ&J/ؕ҆y,@N%+Bf7I4x}id}K\giܜ?0̙sd5S𣖔(!6GJs)orYOEShԑB%-cs2#k w 32=qt-a v(9N.a |nm)Swln}958^Nj/4ɇ3WdE5Ɛ-GC`F ҆[@s|"/M[@B]+r!П^3<@D &<f% xB;,r2*.zFWT0o; =oDy@i`WLs_#luD:F},*#gmC7sGb3G^ Mw=ofK B0N{]D( FQR6&(?WU_߃O#@GpxIܡIa_! % (m_a(;QbݛD-CՁ%4TI2~Kk炍 _ԅ_Luy@] _xtSRfvW5Jj] Xg'5XT}S^#Mчej 兲#SG a@0zI_R3\CФhy1y\hNE":αO. "xĆ{Wex|% yg;bfF-M@R}ܫ% gb1^[o,d")4(i {8'V"eIjOnSBVSp]k#xUuH!X vz#؃G7m ͫh0RՑ@ UvG`3qp<{BdhdC$h6-? X(zQ.U3~m8%vό g;6U[xG-Mfv3\稬q6)ly=C%=b_pm ^d+ mҩG$ɘHu6ƏϧBVr+" L㫇y4ڵыnh s=sDQ)4WhF."%hWNmPrZjh|#!a]ɛDH=c5עRs IOpZ= LC|X:oﭳh=Nkets>T&{p'#d0r*iF%;k6"ӕJPd:JV<ٹ3 ~X0>F}Ufpi,8d8)p+iyᄥ_4Q@.Ov6^!IG.Ã'v #3_—xAY8\J f$oi7zwdpmA7=ʑ9P+"d؋Fus~?I2*y ]. 蔕,M{K'6nCIQZi3a2[{ސZzEPc!F TUSm GJy`!luP͔Ix,G2(HUtXh=E\?}Dks"ۤ" GTnl溏&t}5~G NQqm`Qk()W{EmKr%>+Ղ{4)77@x5hQ&Yy}9#{&~TovzNʬ{dx\R5, Â17X@"&)(`,/wd:=mɧя=0m)1jlޒ#mH,}1BsO&ES q6ЁdIyeRDw_ .V}z(T]x NL@^FHzQb/ r26!;P6k,|RT6!v lf 琋X[U/-mw9@`l-q C]_X{MAsEɇ"% Ͻı*ȷ(\ lLwڈ4n[. vn\eɟxH%EPs<'l YHs3r[/=FRd|}y~twȢ_?Pu\bIB?K-IT6#8{v2YIsF+'9s٩ sQ6v.CyE3u hd(P"Z"fl F?OG\O˰pI- 0ȌP%(dYled'u{6 fȯeC**y_u.GR.cPYJQfg`6E GZE=z+72G%ALDݣ<G"}Kΐ>TjuV xꁾ (CsfP(UU_)fс2j\ gno;*Cr,LDM3_BxԳ6Ba,)*!>#i[ s! "ZV̞Etnǟ^}TԦɖd'i{@OڽtLӨ<6 ItU]v^GBDĹ\sUMʝaso&]vJN+7*X懥FSTq-Hj`vR13;!RsiDnxf kIY.=v/=ZSݞ}:6m=n 'NuܻFY ᆽ72Cϲ`+ᾀ{\gzJ"聯`eӦXEǺQ}_ "lDϫ-6GKET$B> `TP7tH7}+9TAcWg0=޴B;~UY$7Vӏl\ cmW,\"XO(9u&p\! H^:|';GtXqV,;b<ۤd.0}G0~;8-e>+7ŢWV5]н薤U 8g(/W2'Jdk4F}FʥJ$f;9{5 `Q؅ѥc<AYчM~hjW.cU,hZ/;ae MԉIC2j$=CЗ^ǮLp:#Q癅Wh^:83u6tCU>{?EPhkK& º0OsI9)<$clooq+C2fDfARwu8 HSx] DXFyN>љl,?ikW`VtU?k($lr$>' K,R_zp6y8OՕ3r fZk0L〔10j!tQ0nQWʑ ر5&^4"An u,! AuF)q6YNbګ16Ҙswd.4C:EBGfOj o\NWǟwzhAxJ%sXuULMAq:e<%8D,5>L -,5gD|DWIX06ˀcb!OڒHRXߝWjQD4x)ҋWKg4)LlAG7Yf7ཡdvtx4~f^m[عf8\MK:ڻKFOG6?~Ym3J-P%CZRu0$r.sG_UN[5;GE4,?#ZųCP7w9eicPlL-ki+h6!nE?)/q4TK'Fv3Fm&QdZ Ut&u J 0Ԫiil])8.8`"yR (<Fl=b8k Zp#{ϑls -]p>S @=d۹` WlL qf^Z9O"Ӝ?Wz#g i4ͧB˦)t\kiqaMݍ_*̎t]ukew_cYCVU qߍX-hn8-FO2df98IEcxO}Z+ w)/ޤ[&A@'=w)Id`,xnα`ks&C#TM*V~=x\{ԟ-@i3پ09@#QvJko\L{etOO5y*#+1g3W1XTpBGT`~O EFdT "BBERf{IԲ [dIC![ഇjN 2EI3Ңeh=l A{<>uXxPN"xFR.qW'ˑVp9J" xCMx8R_JU`uVY 񪁊}C8$v௶44 AR VY,Hc@9ĕ\Mto2s9)Ē3uIo}gHIgqߋ͡eϵXK&2ၘOX  %4RBI_3셬 0`m ˟/ƁrQd/,FQ=l5E\8BrݮwNmi}oX@ρU~[iER"üGjQDU={GP*vzY-^HfjLI9Du7ھ B5wmW(E'ӸvJ;՟:Ul)jO^_@Iu/u#{֛OeC,e'Jޒf~:!wisP(z|w)XEkG[3O~wO1| V}*fZp?qKhtVni{y,Pݚ֚^ջ|!>oQ3G%d,`д-We^IJo,DwPPn/kU(Bc8!x $TИ2QqQDӋ:.$-='# a@y%X& cJBZ:cLE?!"hfSputc %saj|m#+SoH5]%O> Q궇o5>#z9sP|gQ-;&|1Oȳ2;rG|ߜ2<HKJH_Xzm@46:~=q\/sO2}]IDba4ÑTB[}&pG[OldvtIdp5R8dP_CLD6u3N}f*& #"xHjkS* KVI)w1N׿'`+]?+M\lTrwyaEb9 DҗYȦ">XzJ\1rĚ*%M8 1h@%4@& {*󩋡Z\=n[{y-G]˄->ˑE#]LkQňGI]=YU}Ki *Wjyp=ǿޏ3 \`?J&>Q[Q7Ξc]fsҷ?RKU![tD/ABKl(ZT)!?ZS*/Kȁh`vK673RA*L+nbbBuu!?Y ݶɤMV9'GGY 9.:~Ozp4xg)~wEӸZPoQ +bxG$.?M}\AbL:-~8@>I2tt{ER"R=|Xr"hN:I0y}IKِvV2(RMi7u!'xu6mܠmQr1&C@*{d>H ^2jn[bJr/PIJ 46/Px̥-MCao" eN ՌN0(DmWbhպJTz=J0kL8g'd?3&ڂnapG' os"XE/O=vX+>^ϗeo͹LMIyJcra*.iogDh5r\Bm`dpe;\J~k )[|Bf0m"zIiժ1amv^͙<Ʀ˖=JL&ۑ4EIlS .c'V+Ae:YW;^Jt^&DA{l8>|Thއr`1;:'B+qk=UBRn0_ON%P{kn&Rܵ>t횈 Z@c^[.a4 2x KW~(0uGB%$YCݝX e{ykMMvЈ EêK˫b?L pyozw+JUm9LĬmC~1>E>_t #F*U;΋ߡRΚ4wBj4R_M]iقhOnGa @6 tVOW=a/fZQlQb,T^u&훨~_ԌmA: .PFE\0Lnj`j Q 2nLv-ǃD*%X vAX&]9- \=Xg*vw"e-![asD}]@r-9R5T63N.鬣 > +8-ZC1 fDB{Uv k$:/tzuVf+ g@}Eēo#ͧ]>Kȃx>'%1KAyU77e C› ۔E0Q ?JFY- 4f#TRbwT wrͯmShP{W[9E11mYCë+p0Tl,7 SƱzۤs/𖽬DNDzӊedqJ.e*k7PE05E޲G(O?"g})9}Dexw +6 tvqn"lk>Pv^S=UW,:u_g(^jMߛ[Ƞqrr̕MQ{ןPϞԷlY2atzlv|_˚[\7 w`}r4!qQS)3> 8+=EG-/;5Ѫ$ /w*V|qcb-t}|𬱐e6 @K x+^c؍BәaFg>ĈŢ>˳d/SIC}YƵo=u${~|w J6:d_2l_gwO-شkq(Ç,re1s0RMy)HUllXf%OD.bIgmLhH`k9&S6\{OwmhSN! v1#C޾bEa4zOrp6i F\ݽA`!lQ|T%E˸OA+eiúCM|dȱzJ f Rv` oWz~#>6AqyH#XQ:Om+s|F"Ce&+"<<;zOASk,zG &=*%,42q }_tUT㙣 p,( ;DzL0+::zI_9] Ӛ%=0Cb:?vӕ.XeJʑݸ#|$ &W2s eeecɕ@hNӊUHo[̋O@aY>J't8ύceaE U`,7.z6v`pGVūQIi"M ؋<^yl !NA⟣)_(5<&vyz cmd奀_91n|q62xɨ'؍w}GJ~^3ۭFt+LRkHkZ4?GENESFɉK"9r*( ? 6Bޢd.;/wdWyKlp2B]A9;}'U}i"UwSʯ Z:Z*VH,;ٗ?v?IkKXk۞֭4ph2]V!غ2}Lv$3 /ܓhT O?!Ly7&4@|`9Xˁntu߾bLD)An6J{UZ'a $ lvgumi~":vz hfh +uRxLvwKLE<ϔO7+"%F"n{wcNӻ^Uf4hT8AgcDfzfRDHV_x.6eҊR0;5mʨ+2V;mt^D&UQoϰY),iwA ~"f6ժL bFL׻dԻ:a'2'NIc%T1eI4 [/n210Il$3=9"E&[4!ݣF]7k١ ~/Qd%sՇ)_M'>TuLG1!ܭih(WmAs+o%`eh>=9۲޽9% /zy!a䘢1I2._}X$f ҇AB(NpnWbn յܑWZ 0-Ͽcn=fk!.٥Ԏ!k'M57aU`K]'ӥ~@J[2w PL̜ac/{p5&Do}FRyswhQ`-ɏB&=T#Q[{ :aUsMW!OmU:gUB(JUPck_Ac=RȀ&үqFԙluRytdݏc$(h|&-fMXomҍf j3^"'htt5$\rw ? [B&Pll*ɮm |s4bi'(Nq-ëYte9(HSۤzn^qquY*֕tYMxߧ׃)H{LfPa ׊@P"K#&3m?Sv(2TM8wB^)5U^8rNY#xd#NkU cL !geQb4k .l{z!D;9nL\& Fe[IyEy2_jĤ5ڻvßb~i| ؖi_¤S&.Suj$ ,Y.m_H~+{,vr <ܰzlC~GhKmgػPfY׀+"9d$R:WS*qȑ4LXDae:7mSҏx]bی=Ii D?z7WX3'qnv3 s-tKI5^Y&J}{WmQ^lr`$-z{a[!| 㥓~mC}1U3"oS=]?x~0"@?>,,?͒lk nTl6nqZ2Q㒲fޟLK^ 8؃"{*2: c,tnQyYUp&QͶ 2Ϸg08 gƂLFվ9(LqэLTnXza ~-$0Wˠ{9Wfu%,l*|Z-O88S#g3I;ID%AHřhR(y:DRw? *bjĴU(*qzo}>_;Y!0E>>ZHiG{MV־l2p f>[䑘@~{w2uLYbi/ #O@\$SyZ:S6w_wu~VY;7 ?2rf#]7Ab 'F԰'ksAC62ne4>kѝ/.F!*ƷWJ`!*׷X}B)7j",J*#g;(YA^+G^M Z0)1+E[4xD[+{1R:ŗH9˗~0 9r[ ,g>]_-F8R&:UnepOwia 0U%ׁ{N&uSEL( ?~ 9 ;O!k('1 >C;w'73a_ 畻!E9 q*IH nSG씛GGRqYN&WD_ ASJ0?K.}EWDK>FX(KgҝȲyY٥4!Dɑ;O#>O:fG5;ŗ\c֚$>L'Fsi:黄]|00aaB26v_1pmH{UQ2x(\4(9#f8{V0&tjJ`NLlg*l]!.)A\M 0$0CZԡ @licGWHFWڐ==2)#H T}jTM* ?P@cRSbuZ!^Le6Br{z30 /5t%ȂP*Uf$K >!gwN/2/>"Nn3:E!5iQ"Wd3[,1$N~Mg.DGc)?ˑ1ӕɗU?NxB'KE8pu,&< ݭ8J%C ?V0XDEm5ӄG]eMU@ѬRоԫsw.(yj6eآXt NWCD(!OZSo78gcukZ,aF' # rdef徝=D l# ^>Bt% x/Ј6L*ܡ ͏rO_9k`=阺{mҵvm&)8gG,G;D u:޳i/??'+)`ۗv 2Iyp7Rjg+|+Igk@~EV(bV [u ~3/~{_Mh]c}Is>oiY~Ees2DԷ-LJ.Mb \k;m\,k@[\4(~$>Xe^@h/M.Gu$;{b_DÅ# )W )Pj1byQ$/ڔsVHfq|$`IlW2VQv3#^\D_o^ j`P.@EC5?.CD^(Vݬm+i0|n1vg heWȈw½6p MXA wڝKxC~9`m~=NIX(lB=TфTi'V#lZS«!:'T+DT(m%nS xO[•lO^m.0an@MӡH3TLOcʷS|wyyݜh;+uxP ,j[Tf8ρ:\ۘbTW_[iњ#[@$ :r;}LMJB|XZ4KS\s?֓蝴y9K}&eNt*ti= 5o1+כ-9'$U(ъLMZDߓړ]!%hsejkFdR~*U nCZ.Y& OOlf,%%)njƆ=Kx/^}FD+d`ʊ]zY2r .)w0 Ws$dĪq~ߐRAW0ьT .d| t)6~\Sb? 61(bb *`n2BԱ&KzE@%!;9YXh#y7-8ݾv:)˿ n:rCuc|CQd (˗s .nf>o,S SsmmjwNr/>dAܾFDj667ЉKOLxIPX~ TL)*lhm l6hE`5::+!?膋Rurt:"b1Y)IșE yzɊMa@ & 4~ OM3&N4W5!XZ~ge.Rd%!J mbʿA[RNÿm^31g?'bhԍ ׫dMTiH_zoiV{[/ It'!+!E6+4\᐀iF|Txt+R r#^Ha&"GAo-K)gRnhRSb~^G_5)uڊ7 Ps>h$0:y8|B=Gw;VR~4?&)9uBIHTq;)ChwTF-Tuִ}2DaZښYHvǶ9 =+!y_%b13`s ܧZ%6a tc'B N=_{ʸUs*vI8I4UZ9$#qQ$cZP5Y-$!$fpWU_:ͤS_FH݂p=v)tg&sKKhB*ORDfs]}ѭZLwUe’4a9ELCvFf&Ɓ)W]ec'ˢףZtάr];#@FS zө^FG]q ss?}HgͧOtL$UYIv~/Rq%2&]K ޽QOU+s4ݛ~r}V; n a/փ>+lf}2KYM8k4?b;HzIudX\f \Xmx2GT۽c{pyÍEϳл45 :ҴU(g)!=\L]Qna+V5EtE3rjVv8"(.6Ә| [g\4 ~7IJP=vUm !*dQ 2zd8I2`y䮘xSnXw2Yy/c?PnƲ%̮D,νMSbp`DɄQ@ʏ+DTD pa{ĴJm5 AYjoxW#n)(;*>n"*جFp؎HdWL6wc]z)CSG5C)C q^ˢꚁ EGo-O5-XMCX  AS֧YǖJ} 18W<ҹob  h:giDq#dݻvA{cxRtÄҩejQ^S?KA9,U2Mx*{7]jSJC|& ,]f'enfiF"p$<!JjF`]! זem+XRl#SMxH]ҥ~UܻMAހa,t@sö 47x6 phT)dmyhg') >ԲAҙ}_eۼ(lbt ejjրשfn@KXKBɋh9VP,BOcjp:_Q"<.u9PRmkH()y%IY.y$Xf\XhQ>,Lș<*rnLWx`o }R(\TXNz!Ʃ9`B@&.sB] .cH1|i!uTn ԷנpxszÖnfo>PZ~=6sK1Ha;ljcgJ}kB~Đ8Ga"@83Bn>݈t-kBBdmrWM7RA>fckR:+2s6 :^4O_J=P8dj- 9G;ږ`R$eއ*1ژַq6 Q dپ0m3ba;2~FǎРO,u+dZfczv2= <.ູqLշ(E#z'>4ѿ~$(|S@A,q.(%e{.(Du3~'8-JB{b2lx()$:YGz]fcMMTVeyIȩp?=n8R_Qd'@iPK79TᣥeB{熢Qj݈ *>P5B$H:_F=U׊YbS)F|#aI8qqp HYcS)Q8^ltO,eE=hՆf. :6z)وXZkL*2&k(gސ<<9KVd,uBN2݁&@N>eO<+O3d8,kUŴF33/i9Qxee] -ڤ߂U_\#%]B6:hc2OpYݿT8wz8L6h\J뀵}@RV db ECE,cc'x*5PHj ĺ*QmO@m9yj7s8j 2:I#]飬+2d8#aF$2ƕc-~; ۽C;w 38ufKsBA=g(ܞ0 mBˉQ"YxHKr;-jQ ]cI`% f9K :/_sXmp^qWS5F9a^(^9pzE_Xj泌=r@s-s4Xԗ JP5c~]O4ipN0!bAtcpR#͵r=KM/w+VR)A/fW0Q6d(q8!ACFj?oSllĕʉ5M_o&aLu]~dOWӋ"?Œ(k ݃͵Fvk}굧/|b1lSu$NByY!x>|~p8!-49b,i;Oe:]ML& 4Y!J;u/xa(tr+k>s\$R`;(1w|ZwF|b@&ӻ\^ Uє׼M< !"l Q=w:ʮjǿVxH[ʦ:*[sҴ ?{a5l3Iцd<:)/gR|ǮVDݳ#>S{z_Ymv$bKAycХkE_܋:Fj-M2 0ּVjMa<{,誱NH?>y-fN w=®FՖcqrOe0Y@!NO1T@:_TA<6 R _6 E/9^uvf. Fn9sЉ^ dvpm8cuKgI !k)DPSv_ ڥN+gffnXlQgjקXRe.q*` ͻ`pw8`j  `!.bmopR>^KݰFUn7Հλ&GoŸj@Aa-Sbxa$E UۼKznrٴTtu\|Lc5in!NRbIt2xvPA{; yɢ-k/6]έOH^9+v`)WQʮ4z3FSzd =!o0)Ή.szjΰ82Vr1p"\ϗ@-P?[y!kch!1ݽ:7SdԜ4rwhFxTY\P neus0ѳ`4!t#s/Ч4j3Y! =ڑ`R.Sd #1t2ruJʮ&}""H -QHo'/n6cdz$]iA4(9-ӵ)2k}q"}T QVw^^-iȻުg2Uo ]k0N[A\zNsx."ٷXd"VYO݇yWoK4 WZo>!1?hۍ42 ծ?8R-8'}x\";M7-iZ=O*ߣxZNLēC-$!;e\3glW2{~ފ+m/#6a?L PS;,uI Q[8 ?׷1u ,BCVOe`]]Ҫ~-؈NT{4~3o2s,v[Btepod[#{Lv%iݢlLPǨ#di$ޭM| ֟}R@0|d"wC<7D/Ge@#Qjv º9c[Ad w(Y0,oguz94;^ 66oن+EEop8tՉ؟x|B&bf-+x[6CxЁ5#)*r0n(ۈi#y> G6(N1yF|Vmhdk*HL֋XT&aijwk#5Q^&I"|[{v&!F!gϤǸw]+Vff RЛSgfE[PpR*ҏfn˨o^ sZql5{آӅ[h H;pq%b(]rLgt8t|_ij0[۴Jx3sboǍ3%( c-(S\+PܥJlb!2 ) ׵Z4P=;ǖ7L'̣Tp&7lrU&kUPH=Ed[{[c9e@$-Ph]Dczk+YVK,UfMt v ߐB ">k.q -W'An:b|I.AYXo(hbI\zuA2be'&q".ms%kDS $/cB@ eZc5ӪA!1R"]W,Ά&-*ӅkPY0j۶–' 8e3oM,[.ǖ+?<sƘO`HRu\(Dyu枴CqV }XFEv@;K@D S#q"9`Wu.*v(_֞y=G6"!& y:B7A 6LHRLȴ>" uCf82"\Nk /F#|r@'뻑d-!*„=&Fd4t>RVw& 'L/muChOKϗ~ljf+NnCNC2lNwτ_h+K5-)ŸBt:5nPDrLQQ?!!FNs_H~PU+]Z쇲JP :!7m3>+;!I⿥W߿&d5(<7N֢4'3ZكGAF ]`'~neu8*л+Hb&KRX<AТh~u*)qn_&fv%OC;-@ r7hѫg@Ўa%*{Ptg;slfyguK_UO[yQov))ٽ78t#V4Kx܏ޒ!E0mKbU`dN21ڙB8 bnNr5.3nN=KJ 0Dk\ڡ]:!\qrCf 5wqN6j댻qպ-?I/eT[ 1}r'0w=IA-N4gf`vU1X%[JW\ X?`jVAo@|YH`r4d-b"!PA4c+)eu,`n <;,iJU-2Z=hk@(#SOQ!HL 8+”ZM, E_ҢIX(uhW}3ivb$VwuDeŎ HSK=A,r?KmJ\4CSxBAV{>R҆.5Lǁy+4K<,M'x.0fPO﬿!^v 4Gԩax ߰ ޛqq{D!5Jbl=[B^a9>!k^ FQ↪7߁YÆnDd$h+KA0l4~ʑ-@g#0YGaNT_4yhZ@ OEhQS TPF0RpJGθ3Q-C``Nv]>=9 2J5T *B;E9ȯz4g\'dC4^h/^a2¹4 ӌVH36 yvc4Ȑ޽#@b#I{*`wEi<]WtKdjw@݄puP`*G'7:Aq.Y7EpTfb/owS;1l{0r]u爽8@R N;oet]ǀScovݏ/]7XZո5Y'/Pt.._J?K$J5sn lR/<|KDKn_x}j&m ,eU;)MΝ{n]hY k_xS+6(*:XV OlF( $QiMSodt.< Wpmu2)iXj`v$v 艌&l}Ql9Š4т/VO"wK4 {U1RAhSӃ5IeWHi+&OՁ0mˠ_h6Ba{Kds]#7մpeZج/2zQ>|kk ]| ƽWDi'tUH޵U2SDy6R@7x/GjSy&ϛХ*qoKSqq* a1ͿQ>OAsܚRI; 'qOa oGR- 2Ӂ.JTxڕUaC>Wo?s5Y}$%jb'bPQ/1 ZQв3W7֐lm($cz Q8Ҏ="߱XH;0w80B*f[fш_Z#@)t߽/],)U@v O&?#k-HQΝn\:xq(lkRq[3-E_sE= ={x' !7`:P[ro LVmUoA5ڳ aglA%\!JfA<ʅțz% ~QΨu$ۖ1gl>㧿ށ6UTU6c`% a^fjMnК&qL :*T@_gkW%%[$^w .; L\  ڂv-vSI& Nz{%3˴ژw0vsswgHtk xHshn?s:&~Fd?ty~*2vdp)h!m=]9^( < N(2>[zXvR( 4Bi?G^[M3@XWu#˕Zl~=rXلV+ԕ[mX:13(IkOWZxKS%&O<<jxΖ$ɻ So[ﯦrJAR4Nޮa%is,_.xlKH*%'6:bBO xv{ "97$[!f Ƒ/_'OwY}KPD"u8hc%QZ FLDŐtG!%h'4uK|B)i:L(:?S/4WlDOZs X}!{z.3n;D3ܬSA?SCƖЛxBpo$ wreA@u6;N!ߖ(NLL,=!yksq,,69'Ǜo8{&g]/;ޖ0pǎ(7Yۄg؆ x o+B/]bj ~~8.rNB=ٳJhlu1j#_f^CZespEҊ˅s4 8 p%<>THRu.8`AA@hO=pNj)qIǁ(mc 4Wb&$'aD\s8_Lu+pշ*v[6Ay}TrRwW]U 6ew7ߝg6$€μ}اM iistUƭ: H p #!R;=M֮'h<$L AQƫBuiZj1_ד=JYI;ҹLb/X[3ct֌9B95(~+ޣ3򁚓ZMɸ䊋 '8VQq8 k{6q9Xפ[)i(VuXX:/\HCBfOs2)־ڞP鬀?V)`]"Zx6xQ93f# q*sA2#bQ kpIctyc2]֞x&tT ~rSTk& SY- ?^.CX<˧LS(6>KRr6eU eq{K G GhX( 7.?(hFtx&ʹ )^_?&F@pz -~& 5aG/6eHߤe]%nTf.n "ي)$'J`/S a9ƨh;>Myl ª0e\ а{ ;WL%r"WXHYj"ӆ *^rV*#p#j9 S҃$Fc_0ɽv(^ fn Ȇ.vlD֢xlV02җ+##m3LC AϦnSʁ,)Wj~>e`׵#A%&Pe† A~#a $^[ht`J{ʌ)xل?0R9#{9#pQ~Q-oJ i3 A/ӮM$-Zc'?H>BӪ JQ^_PQZ3K0-ԥp~ApH!gCjV]1;2rFWp< 9 3ĻoV8Xc[+Bњ[Jb0gŢ;bW/#O& B:6]rT ͋Qc̯ELBK+e2,pioh3 {tpL*< Z'sGdXEo*a2ʨB4A24w664zD g!xޛBJ U$O3]:yYbB0/@3EGE6EKp->$#S,XkEU (f5;m>9Y͍xT<2xXW7`{^KdU.wFmz%$|Pfqb"r6qah;W۪X9>8w~p;Q .u(HםIdFwiDcf7OEH}k}x,:)U2VBͅ7ʡì3v֚1V[gUK(%VHnr$@" /e/qӟ35P*piy&@v$N FS,|O"ڿآiQ$V7k)X* [*v|+5*m9CDuX:E_Y(SLثǵfxΙؘo7+Q ~S? ]X;s!5azȰqJX%E'@@z =6cl.žFq]P7mjNՐJ@gZc&^c.f*1Hn1$p_7*߼&%/̃hZBS3{?yWu/ ӣcK#L LJvF&^St!b1a9[w:A> `^!`)Ľ3Rw8-F$DEZ!ϸ ?r֑Q$>͏cm/J;XXZHgxkcIaŎ",X3?1cѿBb2u*Hxnʲ0r5dhV٩'`"<Y vf#`p#~C5Lg L?ҹOwŢOQJVQ=FP/(R鄩) 磀j}"^˴2O}֜Ar!q)YdS﫜VppOO~Uֽ'"д13d.Q`[U)<*%N/ذ6듋g8tDzٌ{@854㵡$*Sps&@v!~̒@57t*5o ިet-wx{}+et]g-A ŏ( ",ӱ]"xP J ~3!H`j}.ߚВ63 TzTi0 XB0X-!Us(/M@JE6u$zmrzcHqw?˓p d.{#_?:dt'+0U)N:l7k+Ms-%_~>ʖaP<1mMIqS3uPq=4Bz )BCӔl,aA 2變AW`Xcs,eZ:C*{e'OݭvvDՅ?"!E<'crCDhn5C5)RE[f ʣlp!9ܦ_|cGbVn 麹^+!!SKcTpq_,!XY֟ H!o+^'1#E&h 8 SwM^S@8hWh 9PFTƒ>paLy$#Bϼ38z>l1t5!JφoMn=̫6~6\2D`XI & G4NX$~Ph #V_D c'7&v¢<{= Z->L.W˙& ``Uvom@SèUȐ+5p`2õTQ)%k5oJV3X/g?(Lym?3 2.$UT$}0ɹQ-7+GM EHwfG,-I~Bε}hi#d3JвW ;~8jOYZOd:YԪʽԪȎ;RH⭉jL~fCuz̤Ba 㙐u?89sYI7+w-*:u@afTn?@/3%5F`NbW(C>O3-sO()vko03HCe?I>z )fK՞_?n B&;eSn=Nɚ!z^^V dqC Ʈ="eߟ@~ UDq ;VK}a`/붛9 ;ED; IB9L)$]o_bj]%Z#TF? O) u&:wϾHZ$&GUnh6V4iĉ?z CfFGxF vVOAd]Չ>՚ 2YFi~h&sO=8K?_tQA]W`μ40X˅[bFğK5/} ƛ u v, ^fIk ^ 2aaƵ+*:NGAs2Wݐ#UA%zSZ񴿥e]eMitP}/}pf@oQwv<!GHDCu O 2jkAc T-ѧy~#|` ^UnWA=NpTI615²#J[c:bfa7cѴ@B? HhxYr5P"ʊ:)󋣈hFuZU㤩 6z\qS;Uj:=\:I%"; ,,wrLŰp (1=t|X[b~ >_59/'_UsF-YyhÖK|eWOu @Pxyw!f!g9@6TGL,Hucg2ڱQ}# 'yJUc;)dt67|=>sxvfyX"MWn-YFbCHaGlS2DiW:h)w*#>\>߿Eg0pNd E 8o4ub֫sve2*# i~)%ϬBߟ)ZGO Q^f)|iĊdKk7͖칫bեᷝ4d.-`;7 N_jq;qRʵR`L[ ŖjRP0}W] C43C١kh4~ïgd-~ѭ 1RcCw K-W9tYai2 U`='1묵\AHCd/HdZc0¶^8/PH-? :x ذM!DY+oq^1}| OIH)'5@zj,~o=|4mCFne"l΍̨[⑥:>vU>lǖ@ -񴺣'݀د!s% gXZN#NaT2%t*aw\t'XkM X ĘH#WÍeh6 2]V@)-/@EI8QaU谀xW)QI:?z} jkUAb'9Ʒd kPX/}\%s+öZau",Z4;YݷydZ)/r[ήk!7+Q1KhzΠ~ '$Lʲt]g΅ˑ ,̰Ԗ p%pWW|{V7JEe gڑPF1 aE]7ϛv֍0Pa:E`f?ؑ7B@%!IǯDړ5yk_Ӯzm#yG:)~ndH>?Vӯ\.t)Efm{ewa%%x_d+lg/]{i*|(SU=hhI}h<>pC^F\NŀK9{wcsٯ Md'&zL!SvMFpb५{?`Sqe2΍~ .a9 nw3.]2N<'aq$(U+OYl[߯r@phϋ8@OqX{c$4 0+&d'`"D ¥U!LJq88&)iLkexŔ+)3J[2|I)uG_*lF;]`cٲ`M&ʲZ5-?^Hu^ ]^7sz UT#ZVRa "&5^Cyi_Ik l"Jܻvn_\vc(0őyLI2y8uǨuiGgn 1āwנla}?q$g@ktr1Β&/i!\]% [5Ϛ}62GNd 8)`{(ɘnλ>-тwW< \C_MĢM.t5*vrv/ly)Dk2Rk ?&AR,轠SxE^! vak|hd7>McA^c$k?pE G wR%~Q>ݢ?h=96\.Fo5>תɵ/="ga ]#19I ~_[r+7EI60wܼ0Hfw! s m2 -JJ(zBrsjZf ƐL1V,`Sӻ{`5YZ!-@I~F$ j!Q&(j^Gr#< y&=)$c(;BRYThRD6w| EX*UDƫiG48a 9q WG b(w7 6Z=.G[ OY ]-垁zmZ.$=ޘ0LRnty52lcZ%PZ ҾC$C*Z(?ލ7 BVʣ1cQzQ W7 i`n':wY'`VABLG:ެ od_6F'Goiv3vvLr\fw9^. z`>P xN83ti@@/K!NQ3Ь'!7]0=k~*oD/RhPrJdDϢHOd XRFo8kN " a*Cbr)BALCw{+z 3^P)H$b IC0S-D ?oAv_rm&a Me0)54._54C@ A6vZHӥYs`/+l߼fmYO +5qmk5R1ļr\A "PnyjLSv3, kW7Ze! -RV0p7[ct:!Pl d 1"Qؼbhg(?M&\vu!t@`fYakȸ/\rֵb[*>.i(Cig\lcD>Q8uNSXiGna˖yCPHPGX ҤpOaz* w/3f '8A sӋ ~iJl+ĖSNŪbg?>BX̱k۝-EE۪!Ny}~1}A~e~^sNHY j6Zȷ 4"{g <]Ep ڝDJ&EblS?N0 z<_<g9d?*hD"^a$sSunSoFw jM`N!w\ D|SP<[Ĥ!F /uNs6w?'vP 1WJ&jԙqv !Nùѱ`M\.d6e E~&9w`pv[QB( Ԯ0}u N#$* WZ8%`5EDVt@D1fQTxnY#Pu_j b﹜&N:D=Ԇn}7I "3]C&=,:u=iiVAh8CNR4x=cM-S@ +Ҷ. `MT;% bt\_‡|/ =g]kZh$x5N ,, @ޕiX˪T]@΃vR62 PZcO ;@lLHfT7umHb=;CZ5Eu]dy3MCw珚0B{J^n4CYDW O!s dykU׫ԛ:{nsu:/02e^aї7Q.ϑcs2±*>2w󰆸7s(ѷj^C@kY:e{1mwy1(L#.8I%Ñݛ('%Z ߔvh$JȤ}<*HzcQrPAٸHz]Ŀ$z2͕ p.KրEHRN(AF v=]ceUЕ63m>rЖJ!"]ո 21ֲ#iXDJ0!ɩpQ^FVP {O+_n3>61K 땽~Q2kZ&.p;f+,u>T&M-e>W{T{ :tR`q[gBqUkÕ5ބGKxLQрt#^;xčV/<"G 9oz{kk.] x~"D4:t_t+HE5y_E8w3 |O>$b%DʝX|qe7ZDB07TXA'#ߢYv M\% #aQ9ܘģܸ#Wh>JXpU3{甓ݶ`1 6z1鷇;[qe25ff7D}*x7 -!43,auBd賢O!gJO?QQ?&*  eJ|oJuŠ#pD7f?۲~bo$wy *Zď`l C;YĔIC0>g=$&pj2(7JzHp KJm'~I݁p4FqCLs 1c]('fE\σs#TQ0M]XF MgAf*BPM@o%;t(:4dJSV?Ii \}Eنi1>f*Bk")].=J tky0IezbEl-ZH'Ƶa|׊t ؈Z⫼/)ޒamM=JC=YZ0"I0id)@O ‡[zxծ@0ŵSnYʮI Q=;wo9Y_hOXc5#A(eTtfe~D".ΞÄV't07o 7>ߍ=8 8z+E^h Jd1-nJ><4π~ӎG^Kd$$]^Ns)Lۚ9#0m#@>oa}Z"*0_@L&46h/R` $hYG~KSVqf:lqyP|eQ]MwE ƃLrfNõl}m6-{XDeLBn0GVzp˗^Z;Kib+uLEirg{b(pFGL#Qھ!_s^}G2٧Wu[Z3K5JV+8GBagЮSϐ_b9()*]+`Xx}>LrDi R >ZO󿏬dW+.\:tI{q) )+x7m23p,|sZ݇g$ֲ}Du i4$Mt}doK%,lkE_$ CKOC@y"7(mKSuV'n 7D\Dp"2x33{KȚ`ǘ3M6[VWyi8}`xڕ&U=dQBa-R(wR|]X*dr[4ȮW;65;#̕dW 7wf}Q44yiP|f&Ai\-jS*D+ۂ_%a*|9P57XʆWǗA?vM1rj3tֶ"O7۪H3`^j7]N:[ ;cBavz~sf*VcLvC,4Pk9mJ|߻GPqϜԢל ~B7UZ 6ݹcVVacy,av/MϼRtSߜ 8 œ{j.!"l#!v20 GC3(0@ʟC 3 àd%-[bIzz.="D<RPYѼJ( jKsVׇp ]5r~{nxxgZ澟V^/O ?Q[ )ӑpxpZG_>!l3@m A13M*Ъ[pp|wVBQuN^ _^ Jn Kv;BhØU(;֗siu1 69-tED?/ᖫVʖL;AjYꚿΓVeՔs\Ņn񿊕6%cNn2 S8= R;2}kY.GJr`F5ؽ͜VR*,A2FF-dh;/7*:J3JICjUduW$:?Z/]%^gxaղnxG/T`-DiV&b%nWP!XLVF'6ԣ_*Riׇ L9FA 2ug*"Sr;!;/D;@.KyH`AN'1݊b0 4J_VkWQbƀ ĽhTHGK y.oyt:7xWmvʟg?O p&tM2up-9ɂ}K͊sؕ?qv%@j]q`M6CWD=@~ps8֦/e tF=]g2juDȩogI."i#p8ޑP1M3@[SPCl%lIX1!o p::zo1N՟٣Ow mԻw(A,v<}3HҺ. #.G`næcD۹(-,)Ad`:oI!CqhWY\s2@0v6]u`^$.2[_ekBS d ^8 f0ԹIg#d3 Ճ?d탨Zy::7BB+xB1~k#!!$Zo@ Lfs&GsަF&-bo :Av!<-Aqa=ՠ z~7nOa]g0eKDSzEon8YTֈjPTuљr,cSn 9KhGPۑCؑ;>ݱ/3L##*pFw$*1 B#9Z&~d|=ehEb)B~jC;ng<[zNإG`M0$њ^*nS]+ #|rL~&}E uCQcu$'Trz~8=se1:?k)$,:d(3C1N0sibihX y"{kk8kz.yIo9:oCռh}챾_s"Ja&dݲ>e18_Lb9ŞsdHc51z>hsD{j}6V*_Ks叶3z8Ÿ3G6 dV'lt(no-^_*ew#Ķy*䛍UHo۰k;wfOY}PC* "8=32?ͻF |JM5f76/8t*݃m #nKd+Y"OIx=@ 7AvOYxJ΋,"K=*V@z<.UA:9/օL|PRD,pMC><$|Vߡ2 35|b]c,5a&e]9Ƚ(v&)@'g,UGZLz| ,mי0DT?w-TV!q఼2"C\:0Nuw5|̮@9q:t6OWwF7Lwkѓ3Cqd=u^˵1QA҉HƉ7aWyFsF^\Um?mMd?Q4 +bh["uOI1u"cKe7?`-UHI=zvh dd2X'a62-u L8v!QxxP%Gʁ)>g/#4 W3pêua|XB98VB'/VphR NP U[gJ,1;ڜ*՜idf趪2iNul.R,,iW' |]nB+x| b:-nAKc梨iϝX216(No%_?٩5y*# e!ӤA Yڞ42alB3OMm!27R}gB]`O?^#R- 2wd [FtecCEeDDem2ɛ"s&r`70l&%HD Gs|F"`\'cţs\TEP%2Q`Vtú/M 8-GΟ GTٞtBM Ygƚ$i1]B>ڽ>:^~!հ3Ď R4SUN[EdrN(˔\S4#싌(v4b3LWB͑Uș&tWi""X$[zP_邝!?z-U$'| 3z':b޳j)]5c/ր At¼44v})lqRäb*s[ҙ8q_ڧ LpO?f :gZz .òٰx<ئ8BUjˀ݆t M%۞#C)B? ُk NBZf*OIj]'ЮCPi[I:Z/Q2!)z !$h\lJ-#gز2p( }vxqp5" R!|8^?% a293Au &5gF]k>1_^9U1J+G]=-Ht,ao}۵9BűաI:gGyqJ}F־ [+Q ,$t/+\ ꑟs#IDdش뗙ƴ1fVhzC$;$ŗV|m QVSjUwPcxlU47sCD%NKc}?8ҭO+԰ ^jV J'i*3y/xʄo$3Z՘HD\" [j12~d.n >1V1TXG68Kf{.-03! g [FWzQ- Cwqp|ϩto'jaIS| US,(Q+U`xY#?{M)#I\;6gol3d\6NbV\1uq sPج"l|԰P_ 9<o,zqUQ ^&bͽuׅ]ت_'h%kiǒ?zCK! >5B@FJP?[nh^f dk|րjL6|N@ 84p IƇCo.L;ru#Y֮4oΘor"K>E Qr a<8Lmng~w6*ѵ7$:̑*Y>$ٳ'ҟzTҥbκ!CMByzqY I͎& u5%H,DrP65 ĩgQIu7+KoT"qIL4y 楸QH"SqtJʬ L0, \mq_zT-h܋3_ag0M%/Ƣ?E_RE׶pV.̎f염v:)'TvlPoΪ;2m@Qr&\ۣ ķ 4wfZ1Rޏ( Τ Ӳ!cqb-¿ ";-^j =TZYMnoybw+o;>>ݹKi>:IHPy T/G9s!Fs4Ҡ~RN1tPe8ebj9nG.$񶞔?[SJEYM WdJ.IȤS$܏<<R\)cak:! HnT;d +8xn$l ؋EoaLa}!7nBHfRFRt1XRl9olDŽE]GJ0 kE7μ+) 6}ڳ+Z O*;T8 E'[|vW(rmn7(ٟkKe>viw ]zc/nQ?ٔ FMyi'z[Eė8b6'#Txwȅ0PEBErHsHSezXü-wO| D['<8Iˈ^m5S<+3u$p6Ӣ{ߏE_]nIBoQ#b'su[qt_oWbU}G#k ]ƔBl[}]|\|͕dyj?G}^G*:*&Ѐ!$?mšˡ> ]~n&b)%Lmubia$H0TPtD&[M)mK-aͧ~O;Ǫs x6砾F%TҗDZz\|t]dUNg_M-n%QT5LN +LJfl>ЧDGxБ $.vn'ez֩J7#HiOى-HnL˰t>^+ {#= FT/jf+bs9Mk%ŭ~\_B?426\6zqT;,)%c^3"_CdtfG%$) 5CtKP.tȭQlݾ)X*rw{qZZmjKi1eNliGl!>0pS-=nTr=K>TX$7M׳c*h >bLkNNȖOZ/ Ղ#8&B랴p, dM=УI?D_NiOMy'+V?jK[A9*3r OjpNxst! :f#ݨA ;N6c۷ߴs(FJpbn D@ h k1)!0>Sͮ0T|dWMgZ wCe,,E` XyPz]Yf5Q $K%A2,k,lou6-a׼ێ17%4,c*08D'r0!W6į:jYM- a=D- VqբER!ھ㛸f7t$v%W)ػȗ(eԗ D|y@Q5 W`\ XWJFRDX1YCitDe _e{ktMV75e 'VD H8 a4Ge!Ii|@Z'>XRȁTs/3t)M| UǞF&&"cT/f~fhӨs.ɂqpHvq!"!}1ePv%+NCl~?~`t cYӽ'RtC';c+-fs6Pu_*#x~FߙJyQ߻@dH7qENWeW枈kfա_1NCEM#3GARw@ W7v`\M9ɒJ<58xː^EC3k!U \FCP+^g 5am@#OZ/j5B֒':rjȞvJSM.VN KHXA^9+[/JKdimSmeݮ!!@ڇ̷S6tS`1@Mtjs7dFBJ,@i$ZG1S+uВAes*v# \N 1-NH#l?cBZnإK;4b28Maù4؋.(” D֑x/3 B^UPm{(Z;TJ14p)jK2:? :]N ȩz*yoajePתÈ:o&E^KfWc sLs;N3IS9:QI>e@Pžeyt$ՙ>O65L ys-u\6= L{仞з$xLc &or!h^!fQ"+NLVm- NDҤZU|[ &FE؜$\M2-n"w)K 9tdVo:!?L^ &[&%mڥmrpK6R-28eSoˆ Q1UZ4Kj9}v^`1 `/,@TݜqiШMk5^]ґ0J߰9ל׆B`M";GI~_Ϩp9Zj" Xsx("6cYzǜr8w4gsfk]oMk<:v,!x}\I!/0rTôu8^ Go 0pRs}Q[X'%wZ9,L$k3 H0JHCCX?"7r o#cܲy,|$4A=rQZӋ|>tmjĹ."Ώ^OY8Xm\4~5:{#IF>3Z3W-PgmO3z >ЍF6.{O! ܼwtlQ;yMOhgsxfyT9ʯx4ΎuA<+v V@m(бC)DN9uPs( c%·gDsNӱ6qJ,lvh;VB.(JN^F&|F4ĞwyMkSH؋L EH" 6v`g{Q?&k0 "tUƀ@@07gv)2n^Y40h5Kr?B19`сX[S탍lN}=VNnUdN D/HF-dee_g5)]3MuBVqBxQwS;/=R[DF>of&- F4:FY!"&1$zrU[l9O. x:Vd]ÆXdO/'R2xs3أŇa*J_؎-uAK(~yi} e7va7{C8O~~E7Y¤(v_ToY9ϲF,a50r]g5 4*kW<)JՎUH⏺،%Ofgf|*$19 ~1jhV(bFx%d XU\ڀ=|]ArPi9ݑxu$抰jqa q{~]*Au.>K*S͚+[rvݾ"T5Tc6E-ěuHl|0Ɋ|iS"=e-4EX[mizoMpJ UDY-oJ0|r۵x'I(╫cAJw@:z@p)Ϗ[ٳQ*jg?]x\I}#ņY L_:.2  ~ 0 Ε9CzaҠâYZm'D?6 c9k^(ܜ20j9p:N#w Xjύ\S=2RP4註J48U!ȅA@P)f/Ul)")-\Q'OcR |y[iH*:č?LEC@J# 5p."E m],I^zQaH!?{Zr0WkggJFSc0Boš^_S(MR=f9||k#>>|Nj!9GBۢeܟW?X@5\3#һ` lP{A#{x9L(sޅig$O؞ndCötOq_/ D>@k3{ A8/{QHT2/$ǡwx@rժ0ڭ+XE^@#8rP(߂5u#!#T*QѮ<S~e<ܬOao 7O_E&=}MDc+qZT^T9F*'-OWSbj/9 >q&:&c[?:/QeEac&7 BC5ܼ lN[kycM&3#Gs./1Tjuy_qn\7#uLݗc-:`FxKG&7ka r0`(~>r`RMvkikR ?}I4EA0V>}bu]$"e_<~pO`t >D73WSA:3hTIOQ<%6gi&(7=z ìdǮes2x M7RB)/~":J/ǤNGW0}X w6CٝOpΟDy):PT&g.11<jz٢2+vrRa,gZ-/9V1N@D@t;s/b m̍Qm0fP9[7ޠF UM0FpK<:ɋF:sƣ 1u6Ab_7?% \;m^wnvȺU3=NyOC2h䓨SHF s6T\q[W"y i7B[xP*NmiK{?sWDaQ$2 І\ok(FQ6+˰} k|.xXDbn\GjZQ&B^7짲w4y;,UQ4>o|s5{bO6ۗm$2Б,$?voR#I;5c(>{ߦ\uB1vћe«*f͜b(v_ᲔzCs1-d}+>'AKD-#trR4aDJPS#aL0Fh_L?WkHt!$˺aEv$q5Z#!`WZ2H [Pe|HdńoTlQ~_In`H L ?M~maOn2FXo+xXOrgfby\?_36n>r)XJXӨ*S^r*) q֬?3:IhԏQ#9#y@޴o5*0y#h?\hٔ?,il"Dw -Y:}*ou,7m)( qЁvOtA  cH)%!I(@ M/\ᬕ^ %{9X"w, ,&3S(z^5j(%tA̚~(2ֽr*V^=?HӳK8vr z«c&x%R( ->t`ÑUQЦr8WwqVCAw?rSAo!Kbgd=y}( 1eh+Q~Εqq0_WxȀBպ4V2r%NDM hnVontqcRWݭ{#G][? YwϦ[/FhW<#cYRp| |jȪba8ٮo@*-[#%D}yu ^"i .a R'%=i7_qeqGQvb^horjN! w@__LУיD`65! oQLf:#}ެ4n{z,mLd-bŦ 0@/'VݍOhTDz] -!s2DO[Ȗ6cv$u:%ݪش +USfǮ Bӵc`Sd=]B6ȯOp},qn.s#˹4|J7C 'd r΅UCl-)KH[qL`@f /|;O,FOC5u5Lhm7SyjREI7ly5YВBB4:ksrĝh]1 yDp|+d& г{T#g($^T[ɋS,X·9d`GjQʒeN _usK5}i/R` DM(`#N>7b^}G:v\y]]:@A _vV`BYnf(A7sOp'zDz[0z B1\18ƘlkwVUصgN=Y! xp: n NE E^<./!- P_`<-ԋS_c ^DKoK+ī4ևyŽ'.iî$E.Vȟ}͐E/aD&ģ#@s^;wj5[$C~@7E7tBfY\+]l'Oxd 6JNNK#O9|网OJEx`.bb ɠ$#L\ ;mݩpp*m2AR4_Co$QDVei?~s堖A"; ZAq* "&EBfcF'# + dVlXTJ)o^dV\Bb=}ɨ2PДzuwٯ;] _Ǥ+$*Qg䦸?}@C/\H91UfP woBX$kdrCWN&DΥ!&*D)8wBVQOe/ۺt&]VX_zXCp v!j?no(w)ijvdwR'ff2q[ ?8Gb+WRIqufl.$ b_fתHYomK5XW\Rrj(6l%Rʲ85o!1uZ w !%z] hd+,LXxpU7 -qN/Cgf;Eϛqn罣p5J{- gr0ݺڽ%h@h)ehQ$+3Ai.1n(OqQGMɵ0MKǛ( A42>?gtȻF4K+² d<-9t`rA2fc10`&BJfU˽2Zv_xvvQ k8?nWr\jt6{rs?ء8֎ Sԣԡ ً֛ՠdZj}f ./H}|":o$~¯>?D?n.?dfEP> u;ٳ5FCՌ]~h++W]D 5WBI9Ԇ584`fNNKeYEK59zTUOj/[҃QC۾5vִ֠jqOt*rgx f kz챮ںFi`ak]=N{p5M+=_|q֒&ÆJu4CJ4:pI+ QɌfAЊ2W+vRR3ȸ2|"Ⱥ=vi3-GFf@rVC +Er~KʤްB\/s1f ؉TkE$,}bc5k0C7"gZF\{1bB-Ua$*;|cҵ<㓣c(AF*\i/ܖ[ټ1PG⌒9$FA4kfx] y<㲠/uSɨAo8]FY' ԞZGA0p1A~#{N˻|5gKv\:lU^0Wݙ [$=IOR:/gjQ^\5he!U^Cx5oǽWKlm!p@*iIMly8@7z7~Vyzp1i ƃVɆBQ4dX3p}-'qLPBq5 OAC)8J@\/NܠkGt)sC7RJ4J}Mk300[e.~rAFDe6.l"{fvT?`Mfvz 4୻)b#Aѵ- OaW̯8ijoa: WKU`oӱaĠ $R:MM5 }tEFؙϘcӛWVC8"Plm+v~5#b{bO n[DM| xVGYq&5><* .s6$w@k<}/8\\K+ N.p0' %9F=Fqc(#rRD(. 6!r7`8C7t^(`c*>T[cb0#0BeN2KX;Y0Yx+No5!y]!5v%Bπ#_3J IZw# ȍwW~.`r$ #~GʟV.D=(.e[{;v[k\*@*a~' w䱎'KżbkH;}Ox^I|;X-ǗC!1x+|vDq1\ۃIS ZjH..(ܡim9kv,,#?iWIix1@;NAoeٗa'9-J̀s(f3:Kvjʗ բCHcja^,'G5!-,^zRzj ӿ\Y#Ԧ /gE7+b;Ҁ,45sWZIHP Ś] KC9>~H>,[;ɉXcx*IBtz?@V-UH끫|pY`b), QƇQ2CH&f}a I0_=Hxyu#(cw7dwcI5|75gvR}898S}!Fcjz54c3v].d4k?ZQ:. J} W,H Qɺ0z..}Cl}>{ZoGUuePoo1@1\K?\gF dGf`KF+J=~n.`H\k/%83ʼ7l~c_nc;L\[{?~KL-_/؇0:ĺݧ"z3U-vw/⹞?<]qJQtahځ.#QW+a_I<|[J>1 |7Jm%F[9;J5k57 }yzprQ$ Q[5qK{?dӝ,m|͟:<:ۮhL3+R =xMIJ#c~xgxm))2?M|8XDrNqP$̰$f|W 1MT%22 >64'SBd66|O苉orYZ6=>ð87T^[Fxܖ(Ɖ+}ˣ4$hnΔ2 x8Q{dZrVUnj&juX^:S!өBg~ bܷ.4m+ /0ĩ3'V. A2gr)Tz2 na`ξ!].M<?2Y^ H o:HHNVP͟&jE\ iXV - +8U>tl}r^NWd9 a`zfדG#?]xgJ+ZLj:Xqs6+@ʭ1ZG \QU~K[Pv+@ ӶC s^d%xMHĚMG4tm[d " #1r WO?ԒLԿQ7@2EО̿4G-/f p'렫 ޝUæ,n iVoM(VrmY@ k>%!?°/0_|0z3X32 6 Bc6KJb?YwLI:%U`SL5"(m(Ɵ;|ƓZYC_?< qB;FgkqZ&'x.y{A7! 1%yHhzD}u%?\ʜbvBS6R40vMejj$=F׌'fkZjdR5!16A1gD{69K=!Cgf G ~=[Z~JmG^|q0CA;'+DLrkq0.Ƶ.kְ>^ZN~.%uk/ ҇<aGv duie)J}0I:9d KX/4 Y/\XW_Dm .?TGWe~i`ﯴvkQ՜􃍾gϷa vB}+GVʗ:s#q۳8S7()sJ^E2htvPZF Nf$8ghq vkz)̔/qVB+r%+``r ᒱn=n2M$#E}yZR;O?Lu*Oe8j?ZvgڱڳfpV}22f3w}v&Y띔Uz,2^tDGscs('!!"K\BC] 6dtn d<沣0!Zˠ:7;2X45En=RlN}vt;.P)x(в*k_,b_ 0B0Zǩ5@oєϸH!iRSВǧAS5i~^Lt2[t3r\$̰:>}JYg͎'_fx5VW/H_%Agճ$ 23(j|zDF: ^FZ-c>ݲ`O)9gnnPq нA31ȝ^B F}xSw)D<"L,8g$*)+A^=p@d9)lw_cx1D6Qe72)<&|KM61n;b抮h!S_\r[s|ծ\.a"'¯b!CpiGق3Ȅ4$>v+M"1Iu~ss+KC+0 fxJeoDΙƇ;N{{ω3z$ycl]e}4ĕsUlk߽|u f0 6h-.HpK)A.D::g"+䩵֎9O7Z3jј_78d%ývôw zgN/t9 8m D?tO+!I1β파 Ǡ}C x$-ѥ0;O$9幀 JP=s.1w |St|=_[2JQT> a&(?";E,^{ QZmAAuUC) D^7H.U|%F`&etVZ5U(>QOI, ›+wWg t5PTY㓻byU)C Jm/~ug / V8;*sC8?1zzp"æ{eW!Cgh{z (7 o "޴Loɩ0:돚wwN1~_oOWyԦ7cƘ-8mti~IMIcL#iANFFRAq\$J+1<ڬEgJe@-o~f&'}T.zdySmb+C\_ vYP'=ZƺAM{ + AiVP", m a7KJԷL( Fn;l۫ ! 5c8Bj0. ߰z~cZ (tk'2ƺ9yfrhߠcYAO@i+:ASqRB ZA6"ŇzȈ\O Qn2uElQj{[~_)=PQCdyJy\xGV NjbE*#Q=!%)B~J96@en W)yҵ-_qf*P7$bSu܉>*k!򜟯Τ7I >D)|th#:bQN4k@oE~yѼ p.%ݵ .g%T"[GsI4e؜!;U9MeU&mj3Xɰ)AgAT?Ӯ#TR5ӣ,->4m9 zwIkBQ0y2ٌ=O@R݋4SiˠY<,5ƻ}q5h Cӣ_4E<18*W_TT+e*,)6 Z}3\ 5A)qd_yΉ5c>xmIyc S9UPr9j[}uQ*C8;S-30a>}GBUi O@ b%~[i\QɄxV|D37VL+at\i<B5R_ s&w'"MuQWϤ__[swM66n|`.ߥAQi-.E,Ҡ =ǯ<!_M(EjB8X:4u7H"#uv[ڇ0A!e u:R0FH>qAE ;H?ȣҿh,=Ȁ."?2F~y4V*v+zz=qcqKI`n+$eID|(dN`TIN7a_vy4i{.52i{ wA '1 1! LuB_c[=w4B_?l:rMZSTVj+TsV'Kf(*hՖ]JTs7Y=)Τ筷*>o8A6ru{ ? %dTNЉ|AE (w ILƷImW_>d(sB,)pɴ0UFXI"q bTIhϥ,"ainL*A#M& )@AJ"{P WK\8ce%DxCq{5ّjͳr`L=5yq9x̂HsDn })6RNvk6 ]fJ}esWz^@/4nPc=;Z[{J0`d]Mœ2hU+ݫ4{NjZoN5ѷ=ȓ*EL&*/`P-'f#Y7(G؊d+ p^MDK՚zF$ӱGtJr9hLL,!{ޣ|ީ]\ad7#oJlZX`p1_At bTmL*h!ֵg%QeMN8"R,Ê]SWCA;[o! 9$QoNv?ufqK M u~ptq!|`ȶ( GP,q ܺA4=neѧ蔓q~xc#.xu㴜 HϦ}s3%W픭}hj N*EĎv7Ehۤ#μ-?hO6/[R )Zs?-`3vnQf_#}֒Ւ@^95-Մg-dJ( >f+'>=le ^}T\xNHZD!ڰ{K鹄 1͈(;-Ha`ʣd JS<_jBH-;,AATiԲ.OEWqe#,;X1Y,$tG36,g8]}‹<kY ؔti1/PIºz"$v.R EťMgpi7 ]7yޑF,<'FwlLşfω#':Abf+ʁT2/~E*r6؇v*c]]2GW HfWEX*IR̄AQZNndvͽlX@nxxOpl-BöMLI[ӒGox=Aqbe9p$!ZwޗmyOajn*_xήVzHmxQr(MGQmuZI }]/oo&qk%2vF.~ ޤ%W$2(/mB@EMCՊ__Rn簵F`UxMR.ȆM"́u*u/pg:Rm_^ S FL\cuߛ{0TrzPha CQ(!_0_~jS\%1V-L#7(7)x%{mh|>Z_hpVI #,L<%bFv`\cv@lV#?x|UF])yeBr,sTCD:,pi^0.rkgyB=SWC6R`lngmy.11c n1}uqFf*I#{ abIƓJsiA֯hycKHe2 H ɕQm;u3:k|h wYعƄK&d$Uj=DHBN˝0׏Sz=3Kqto4v[\'%Uk/>Yl&-)`E T=Ҫ纜1;FْړksI6m̨;M>#+(S7ji36S=8l!ow@Tr+r'Cydrt$MF$M3 zg#l |\'iɇ?m{ ># _#fSRW0=yN~FXFIS`,X;'-a5.jZm#%o Xe]nPu6 jh[`nz7qqX[M{ج\=ѽ5Tg_ineTfh[>3!ɸU=Ca:/bEH1ې7V"~ORäKe4ڞX ^E /r9e|OEy.Mru}c= ZU>kp4_:31;!=\#dM_RIChir-+ BHZ3p~ R]jj&U/M7b{bhT^w rKOnhS1,t}^-c|B1EhUFg+!cZ;<1STŽa&?'n.ʓ#iTaAByAqEKᙨw蜗YasZTկwQ^Sexvᢳ;W}m-YQ9RGd]lQ$ zTXDͯ~L%%zo5o)U *#â=@ rB`WlsHih4TFݞZOテF}sftEGBKcz! H"RD`{^HFj[1Npcr+`|IjQx3.1sY-B6'v U~&ҷ >@{ ݋sJej7?H;!rO KQx{ * Q$dVF!-.py'l}oAЎ3|` _h`'ym ˙ 7z%lVMP5( uι Sy?Jj%4ӊ=*w79/`0#!\jb **'8Y IPGOC4 ;LTNLv"diV+h6o~KޣHK,f8Y~nq jyqIb(|Q Z Shhۭx PICy馪Q$O~hA b0orp0Mu g_V̐VB}\)R35?F+ !&]oK5MWJj0N }26a]]7W:@,Ȇ|!AӋzq0hHxlԲW${*T؁}[؝j>KKF "#k9%czUWZ'YZ]8g;|JX`3)Rv0W:#{NkoNQ\)C/;=w !| * Ux!u;FhbshB~|%>/?/BhI ,FϭES6TM O"Ev~72޾A)|1)ҕ+$)lB WYx轫' @%ҽyO7G k*pt(Cc*(1[UJU+Srh Gֵ$,'8 sQηJШEizFcj0BõR}jYZzSR%e"|w0aƻǛi򽳐#f]%~m\}wCt8mz8DGW.:;+:f/O q}F/՜_h-~&0ra|=bB4к3 3(Cv酏u%؛$VBLc3,A8̧=uJa3-߭kHǵW>=*٧.{uGsvyB8VI1|1hr}D"} J[ H%t}͆1_( 8WGrږ({',ۮ-q>N+Z:N$,N~x8~248:s]$'f7ʋЍŢc\Ķ|jh!l#EHq`*o{IiV?Y$+pp4Ǐ|:醸98x 4SIWfS%"xi"??bС710' {O ҨJ*Hbߘ=ACt=p aҞhMiL2mڰ:[H 'Zŋu&5#9T[W@G!@p CI;>q9AɢO"WǏB_ql(.Oҟz'r3g~K 8NVuU@fxxv+!*KٚA6N,afbE2; 63GOT"|].cࢼb7GޫRdk F7nT\XT&#߳%d|Œ 0aQnpUY?;5pww  a}fJG9+Od1ݳ,N.W*M!@KqXɯxC¤=癑J1U zz Ș0ߕoG(8Sjzg']wPߢ&2@U tq_\^ v !GrSƝ kgwX-uՑsEX>/nTQ""f*4I۷2Zs,X켲|4h]eNmg\,¥{{Oޠ0D!``Y,xt.Us]No}j A>{^$ $7WމDqj䐄}$ر6·V5ጛWDXꭡȦJPG2!w/AjBU69;m;7M$1Вf'5CoBMmPo9#7{5lDѢ0d‹OPx^^UG]CwZ! 1v=ϠKDG4jPDڿL<.wPá@V lkB*,,3$rS6{?ڰ4qӡo7LX UKa *V䃢? ׼xvw;lm.I><&aY$"~#DIFt"TkCCRqp?FF,W*"IO^JMvE 4Gu-&p-J56-U55xB\Jw=kBhyT`wt8iv&j\ucC oy=3s,--t e i.RgzZKu2 c3CRx:up# ԮԼO~F.b’ ʅ\N$َ< N0ejCݿvEzw<5٩d5 [C@%-p5u`[Khr,w@dV0ʰYhzٜ-9(ݍ/9L׶5>6-e8B`_$`c߫l^0?Tzj)zeH]8M'L}qOo𹽩y+?@ͲiΧ-y!f^p'ܱ2Σ7Ο0TnjՒ4ិx>!ʁ  D IG۠xˍSDhN~:?XV-DsWάSMɷm?_ƪW(EDu,v%v#q}ԯ4Lat0#;x]ԋdJ5K“UP50b\.8]/]wqFBaAu5usV@ P5=kּM h%>V>y˪w,=gCd-PVgt3j4P~*yB9:v)b~}Jܰ6yPmMQJ-;m>]N(Vj]ƀC2mo8_ Ǖw*MjQO?^^!߭)o; .rmn'X$O֗q};b;&p;3 ڥ4w,&>9xrzVFZ1L+ õ̳9vbˇ܆)I ՞[i+OÃĿ4}p=h=kATCG$>+Xk̏SL_HM> K$șё줼y*M5 -gexXuz>-xyI}`j6 rDᐅ#ϓma誠v Rz^-ܔkHR?6>]WE+⣈LG蹊%X mHKQ&]D|+И̾'lu~tS 4X.KF#oe,&^sTXaQ YW03Vhvې|26=KX/3]1CCߥ;̹r2= ^PSI992(254QʢX T&1Dp;(sjWͤ=vV+z^c9 a'.BMR)2xMΩy ǽv B Ō&5.b#ʐ1ΝNu-▁XBtDaL R_kOu bsy|?memä6 -uԥ5uXIHL} 3͍mi 0t9ƀǶPڵk~[s9!@Ov)eTm'GGk~ ΊDs+oR@~O/[$M;m^Qp> 2ܢ|,3 A_ b?y= R"VE_jtX=.//tNmh/SI>go6.0Pn*sY;@z*W5) <3e0P ;hi<3{FLX;"mcaޚ Tg7ǃZ6i>;1d1b߅Ev K>K"6RĆKl*}v)e1(Q쁊BdpT$Jn@$/Hp{F^MA>6dd$8{&6UL6Եcr9\"CHܖBR/"8c3G[E}ֲN]jK'r޲ڨGWyޗY:783oR4/L,}ibB .HkD64ltG7*X[[j909GMƩ%𒂝fBѭ8zvP1޺G KQ$[hLW-qk6`cbŧSx_=WOئK:Y,l塎/Ve[4͙Qٝ ܼ)b}tC: yU$3DȖӑсL=dy};6:akG/a:'U"ԚDCs#,{ @dX3Ftƭt}ɣ|HXw}dnL'w#&M#v.sBa#5oշS~a ΃ޚCu[T?Z$EusPt[<-mԄI-tNڢx% +.lGܕ7B֥Utv93E蝷ӿNY8hzۺ=Xh<) r1%vu"HE?w'r:0v{>D˿6agSlrJ⊇֒V{T^̨bɢ %m8xiR! CxnW(2Ϥ2aƗl!ﯖކ1PKDW0LJ/\TfҮSv~ǰ= h9"ҍN;ޝM$yimd/=D>N)/r{I+_5C=X&06D|11d}[S &BWQ/Qpʃъ[T3C^y?[(lX'@PTrƷ+2hLU 9t# )H+j䈔]$9HZj :6K 7:q;﫪Aa9.@-Oj)q]&׽I|@T]'fܼB:# +]\GTR =ymlj"MaJ?USQ#bVlBTmY#쮕bNJi9p]kmȬ9wZ44$ ] xXr4~p.-Tx(WZsȤAStiSzXu"6#b>=a~eSaQbs2?RlqbZV-]Gxt+6Cq9a$%7ΥB^SoK_~am#RA&b^3beif2qJ ō.ȝJE u yrb9`=1$ c׵NB6RڢV4r3nP(T7݅|BKDΥ,]3%eV>ڸ=ϤJHmC $b=!uݒP'nMDnZh%_:$u _3c΂TEq >NTuTGbM3)?1ҕ-A-bspؒco٢ͲyKVRZNORA>0J&ɩhDx*(͂ PlaA_O||-*`Nq~lh,hB^k 'ESk#lSVqT(_2F(dV'O5b~)AXA" &*?_H6 \([8G"9n[% ,󊾛B,<aX{o3w(C#1r'\VVY}?̮5.<6XK\CՑޫJpz{bCmWڛWhOQddU{a4uV8uJ ,} %e)}Nd(8nH^[c )lr`UR:U_& v)V&A# Q qD́q0I(hQJz2 LxXLZASji(M=ItZK+Ak'7o.3&s:vL_9r&8I3*G;BDY5h&2 Qa,4}o=D7t~{[~r/zSE]6 .Ptu?I h{?~tD3k=&nx]0)he1a i9<ϸ2,/Id)(1ЗrZ F}Ìz|,τyU"{qyW9Vd3n|`t]uHcvKÌsX:=6oV-|Y}q<')uOR\TzJW,yݥt $ٶve[CGOx5ʶ"f teﮍ0VSZ1b:W n_1 .!do>XXn|P lŊcpnznZr[ŚWpK̄Д>j /:5=+s5 Q7FvA{X;'(uKp8fiG1ԛRT[ԧ͌(+UW "cV$/BO,͘Q?&c7Noj,*txg U4ԡA_gjd|A% = 6񆃊r\KBFdž≜9i"%ГFw azSy=wkvuE' w2TZugÅM}91L!>…!LH j=,E+m0u:.)Ut4\$go[UH~13k ; s E>3t!,{#bg3b d"8;Pƈ}:6VkWt-:ݎW;X}r'&\dfP;ksK"T]7׆Ǜx4>~wĢ/̣~}\XJgW7W |zG0LWD;< ;Rt}XB;뿐J0'Hk,C4k|*\|5]@M9ytJ%>D``l\G4p@tO|Աm$qt?*%r6O!w{E@M*nrSH}W0X/arf:.Vp !RI'GUZUs7ݟ3 L17䒡mNRWePB([L,n75P"Ãcy[rMqAn풸bL_8+|0n1 A+vJ&j m.t2jk*R| a!}yǛAɲGp]N~5f7w$vq1+v\Kr&S5Tnjnaa4Dy[yWUoaW5/X(>es;׏+0~{a I68% rjK>A 7@9H1E rߨ";^OqO8!xx5 c?>j'P A)N0#Ebj8ygwSx#=*?߈s4_zJr#BCAi6b=?~e3g3yS0'[@8:S4-9k# 뾘?GN拳MzEH8Ys Y>Q "4J)rThi>\qn"eg2g{SF똵^)*jB#.JDWh|2vQnˏI,Χ_8(|3od Zʉj!}4,Dw-Nq!^|3og KfY5+WD {P]U\@E.#Ga6H̼by@WN}{"a5ϔ~x"P_j-*aїJL|G̹ ӊ4`+XZPT](I+>UO2KR t爆XY=иq4H?pTl@2wb xiݺPĆGhwl\7uE0W5J' z$J12,KĺMiUTf2c!IµKg$S2x$+ ܉2Z,ˆX)Q 9gb?(N4c!'Qle 9FsT-@-=5^>*ƿv$ I5($u2p$dSLCS[x~vXc/iޭh:]$r"?)7^:BU5R> <6:OTfdYlȓ\`\z ׶AGf(7%Sp1isQQh4EϫC Xpuzd#% 20ytĘ'O_0Ppܮ{S9I\ՙQi#vKCF Fw'D^h}V825P^oΣRY=EO.W+Q*,o cO7~nq(O͐(T(*%r: H 'HW,gW*t\=dXQFGEf+T6ÏS;,;N[~lY=w ng7_q.4B } _1P1nԂCTJ&Ѕ3,%qBPҭI}sgn=R& 5IZ>> xS+r~2C5DϹ< B cΎ=0G{ab[%]L|fvT=o4YH/ ;2m Ɉ;\~N̺ŷ{P=Le},9dWEe@`-T%Wm(89"> Tb\*IOa!MJN 9v}"hnϵ~Zv(O0Fi3jlY)n4S6rWA9 ˋ?(E:. _D^6ox܏>Hj,#bk`R-qWPO7AX=WhPLΎ3p8iύePԧ)PbղeܓL&O^dwQ-aܜq yk+/{6wgk1h<k~n8I-$nc 6i- W !ƾ a1:K H!]7(YD}p$+}-f¢m̚4 VUcy\oEٿ mr9 NIܛ%Qke.HY/p.HnPS[v/%.I[C Y4ԋ$_zofy@-m j:HNoס0# ?mVɋnR\UW?+<0׋vEVc b֭g*;>\; Wˤ+g5ܷ O,"qX1? adG9bepNmPl} O"F% qbTLB52Д~|cV+:f-Blri'Zh@@nr,`i [ۉ$T8<"k)_4= pBqٍD5PGM!&8F&4{i= V9Co瘚{FqS^x[e$%IAJtA6޲:&t@mE&Y~ 2oYYw{ w}}C$XN +}SzUvq-\3[B?@Cn/\:31 ̉%lBo9'doS=@MnSzdz*į}Ԡ%DCmixN $YJo/;Ҭ|h#Z1!)<:#mI$pE.[,*ԪXc]!b2CI9f4QuQSl% *7YS:gM+qO4N`Z c=Y{Y{i&TT]>2_0u,gN}sF3HNtbq;>7~+n ΢`+D:(?*8V;,*R>?~~2B̳;Σ&!;iƻeVK͆'rFyOtAZ9Kkq?WzWACsh~vD쓘*O*6v&x~R?KqϜyi%Giym9q6ш PE$o6IJ"DvNNT:y&lQ>pGP5( \pm;$w֜w&}e FJ)|М!'8V"ҿmtʅ~T-P ɏU!:xY)O1c5xkd!sUr$WB'!i,&Ţk TI $<sŶWkڔo5-/qM[Uʔ~GY_4\풎}V*hv2n<^iG|Ñt[ z`C4p,㤢[֝"izNqSk6OOG*W.ώ.9& 1vdRo׊PǕZKa7I+G%k?x 89SO*W(P<J +  Eg2U㛀p0MgJf OU:iy*)Эh`XI>E(oP] nP+aͿqm˷L/fb}y  WܯtDں,HGU cŀ`(m +?}}כ΄tPrWqÀLJETRWPb GL/v}XR,-Q% uU.nA2(9Z ׺@OB[,Q2*-ʇ|"c>%Kl `7a: ڂǙ3.GEe[vEaA_; ^,,N2mr 0!i޲]Z6{Ҵ8KAU1r YwD6/^|n`t84S˜iYD*sX7?,T&IePW}O>HV2͋z9g=kv `ϢnU١#gVL`<+!h>$s%)9nV}Ξ#BbF2pmU;=~X+}N6ٙ:Ks u06KEα'+UB6D^he8{}A黀;X&Jlsb:nMv ZxZN,#!}(}i2e ^ $ADha5 [5WuՓ.K)|Es$l-1"(dĺA/l&wF(HUSa&?lFܩ,x,ˋuxgR'hB^FLd,|hPݧ7ŋ ЎP }",B3C,."C5Qq%!$f ɒWV6^@MY1|aد%9#;c\Sŀ, <\n᰻%~uHVȃM#w&ۼF#xXntNo ;Yx*&~7eZ*7fmc'xZnw̫vqk%~k m->ZmVRST­k= DKx,t<h_CN]tG6kŽ`glNV+)X[evp?"> Pq*_c '4c.KX}Z]1E=G ])\=fq7jET}\5zvOTKˍsoQG_Z"2e[ۤhw''j 0[rj*93qSV915pD"P-~g+=$]cp,MLF%'˝6F7 EG8ϓ0+A$]PB?ݤa<|kar,Dz(jjtqwYuSw[)og98N, O#N< VV!K|+ U Д:.\БC5'ٛ ۿ+h 2g toz% VMMPSAo)Ȗq1Sr%E{GEـCP/k L|  i7:vt ҥR-Ӿ`^ԧiI+mRaP)s%>|)_ӾS/DAR%q'5+ Jt=3N !"3ߪ0<K-UȱZjTsUNS!qֆOtoMRۗ[y`I08'j.'<,k ֫8ŕ&Tb0ۯw]'۴][kggRliNZE[?4p5R@Yo4}VA5R/N|OƺQK*H蔚 {y uqh֎I:S8zUy|5!5و|Thޙ&[ԕ*\J>7feEޖb;Ͼ_J2+X_2BW%V/n2`Y_HPbfT$o[P:U@x'ᷟE߁[^89]"4K,Rr1E_n׺vݩw aLeZ5aaͷ^UVɿ| kT^0d1ˉ.4Ղvj@lEepmĖB"IGA砐%lrI=~)62Fk$Er6X#Ufv)8 W?uPcu2B{k49ߕ]f-.1˯@Si6i/lFjD<_hyңjA1M5`RձCP lqyG3A臉pCB!v%4PO{H\-6%SB&m%I  )vgBy,>-6{%%/jUBfG_]Ɔmcu9E=f_&MU.`1HO؄@fZgd\zlѴZs\` #XոB ]r?܉k7_#7z|) Mh:P3;7R^&d5;[HPjnτg Qw~xnODL$i?34] C[F(\5}v{KyLŋL,F;4|!q~8ha\$ҲTF[Ez-cy? 28PQ\k~E4:=X#1NVw,%+ yJMSKWѮ~^]rXWW, ܀JeѰ^t2D먫 "|E`Wx !ؗ >;C.T[ʅnD րCiA,sJҙptz;sia] +b遽C`8cN{2H`Ns){i~9Y?^ Y'Bxlt7 &it9 F35[/6ܧDzqОSGۓ8 0R*%e,7n*FpXqu'r9)cڒQؑכ^`.GZl{eId;Za >vC͌nׅ?}ejP$HBɒWs(U/ͰA'| @;9jGyp))%}j.L KN+majQp[υ~klUdpLd$ Aŷ5Die4VY2uDc@M+ʈץnll$n' ʐV (:_ejPC W:B[A67?JĊjYXKuߊHzјYweJaX8 Nԛ FRXrVS[0Xc:ri>'5S!D~EV0" VNOTl%Wk 1iOLUEqz}Kr[}S]^-y`U3bd$.,?K1lB{Reg_&tf%T dedX0)*Y5<j64>PHy` hE*hwBaKِvwvOC^M>#컊Wjl۶(_ m0Jh2~~ңŝ'W Vf'MذF&HT#z:.QRO^st[#waܡJӥ9%*X`M C.}P"|ߣpD~Gz tZhdCػ+r Rq"삉`i{-rOSTɾVKE;O9yMtʻPAƙklx4Vzz.wNU6*ZAL;y8ꮯ@+p.\ *Èe7NMΰF | (ix3C#qut3B]ɜ6_)\yd4t<;P{[Q0G( d_* 2<&-wTV3LXv|ԧP\k^w dǖP3Wj"!]'o~g`2Oyf..' & | `ؾ-29X'[}8IBа{EH$7nוjwH^߉O:x:uqО~6d.i] +qlN} å7&^ Dz}[jc9k8A4Uj/*L/\xxBެcR Ú{JB Z!l0 s"aĐAQ-7aջ +(.:zy71 7(߀k g 8;V!vfv>{$"2:DZ&8ݒj]tv=Pݴ; H/jkw,/=|dBYxU 2;5m($ɵ"תrK&PD=;Zۣٙ6 (L0sTSt-[Cܐsp^k؃h+}Zy͗l5Zz^`oG8ֿZ}HJ?=RfF絏so M`%ZRhF> z(ub9ߒxȫ˨,Mby]rG!#σQ>nPy<7-9@i%̻ d.;gR٣[0}'NV'|"ސpx %x|dZ 6c"a4\\Ѭyj'j{7=۳ 97T(+``[-WQ㚗j dUM3nEgErt&YK -kYu tҎ)5%.$xIEnPxa[r,8RM,wȭqjE}5҈*? ks8fYEQl_-S/10 l2$?i͇=Ơv}yV4QD@|pV{'n8f2g]'Gu{ݑ&;ॉ<8 -˟Z>ZFGhD_U )u et -oY/ޝ^<WW"9mmx1l1{Flw]$ Oe60]" {sd֬v޷?}u`Z?:&N=l1Z "fM =rvJ;wRVZaoZ>&^R-"/N%fIr*O4b/:+9w|O~KFiF.\߹iܟ*']ZD+)9Tar&w (H(j*\EJo=A)y0gUYny;'DV *ZlAmCdv; /8oģ;gK+0NF H3/oɓ1p]?#e:" Q5:A̕DQx,sΏŃ:BE7gW?^, AKSF>1'ūd&\ )㏍F?7+K|U'ep ls"nڊ սL^X\v;5E?м0o7{-r1iMīg3L~mL,Dll{؍\9rS dM\?$ [ErW";䦨HC2<^е̮@4eƕc#;Ty&hp m-5`N~e d3tᄊCqr&QHqJFQ01je>kȕs_8Ih~TeR1L23KH0GE z:rK,0?i_Ldנ@Pyz#aֆ٩Ox e}6\O}C%h(B}(W.6k\4ٿF ˺%~龯x;98khu񵩻F5G}/)DxPV-}YIxϟ=P3w?JW4V#*bkX-[«NHi!9 2ϵd iOz:mͅ5gJ?C!nHS&lFq5bJڧ#gIU][_s?o0&' $Y 6-* MJn_u$QI4;}08^B's;4Aj=?Rz=G]o 3@TIeơPvjw߾0rr77묪-j<3Bêˏ'.t [w=9(f4%rZqݑ5.xoKh+}[X~yϲx.>M48!%} fe|JSCٽxBU`ƀ]okaTS2bA+ +49$NJko[cPO GwY/hu=nO0<> l_<6,O.&00X&P/'D <@؈PhC[sg)XbGLԍn2Q>$gj6Lnꩆ]7\f>y04Jk]c >)TLrþe3oLhn ;pʍ]f"h:eo?ߏ2Eeg QIK=D`JBX6)F Z_0[z4`b7 jtY \ c!FXG],s}mBB [6& 6ەa Upq$]EϳpxrwI]}ZcsA,+g~Y*PfO ?Bmv\ :R@fz"RB[X h%vl6~A-TK8l77cE~ao/eC7Ztm]LA5&\7Mީ&yWzUEvJ"3ps6чl:*zC؁ 4ͤyQ{*x$ _}Z]D2ݖIk3q")olu[%t!uC>ЂYHs M,ǩi]Ā2CFiP}+{y1[7h}83Oi52{0%9)ȘI>~Ed@b ]}T3.noZnj+8=cl;{ <ӪQV'¦`k1!Զ0erG%3vٙ\)ԉ' `yTfةH?+ ^(H{M߻e3ıTF4[%UqS m40d+<~r\_6$0\}*8nDe¥`mا"|3ݝQ>+Z]qAAYˎ:zT3'<\1̎k t81iبq3[͕k%nH>vprLTb oa.bH >LjI`P`.g7P$$v"!TĞE΢Qƥ5PCJesOT "lm=e@DQVdXwK] Ү]TY#32"~WU:E.V7ii:N,/&*ӵ_ }xTnHD)Z=FPqM/LYS-.мR8)TN`B2Tiࡰ-VVx,i*6@0D4G("wӂ&L-[kY.Z{mlCcf>Qm=.%˥䚆 WoTj7I46½͵OR!.Ƅz_Վ"s҇M~ɚg`&lMV]gw2cƓ릧I"4L|:0m*/G3f8mPܲLeL 2&h.59[vLS-vwB8CNgXhu)@(i0/<ZWW@wʉ7 \ҸiÅMx; Tv?_rG@GJD\hPŔ,h&֦M >QyEJug޷Z ZrQ@Xۏ+0+v*>Z#mk}vrU?0݋DEA"^TSQ؜++s fe`frňDUyY9|rIvD3/f'9fP !Jks9CC!'VL36 8=U *ͥw7DlΣ8#-t 0c²'hU21[]fkj:xh`>X fM=.70!-@;nܒ" /~ 8.x jb%^~2Qqа; /]>'W;-ǂ[8fS%N9  y!$TN/6;X6ڋ^ }sK(>oށ# +$'r\s\V\?I'+~T+*@63yooaZ.9Y$(oʽ] [;ՁE\̇Py;b0 wÔ q=;닥mt8oϩfA6{6(u^=!,fjntL cFAI\Qăf(iù.瞚iX0]+2ܖ)IZ-X9>R>9),{X{0[ߡE =؏oZ?JGkluaK3 73Wpt?~qǹt.s6 /X.*T#?k;hɭF@s¿;wN5"\vi񌉩Î3JR&,^(߲fJ(_"O4lϛ0]/ʏ¥qNpQD^/̘$ޓiPx[P,]RR J 6$F7nMY.h,0'U~B~*5IB?V.x@C"dPG2oBUgU<'3S _mߋw6blP+CV˷g G~^v^QшÆ&,q/y}XU $Zb{1jroj,"D.**k>#ZNn]iyKm}oo`#k: lapC?f5je~u-Ϛ}}K cM^@=͏qliƓl}-1f)jY y^CLChKևQpcuai`# Z`7^TZe2ebC1 ۂQK$d.ljc?dԋvL\]{/dX,9Uv ]є pnD@w_)RF|)瞏!|e!ƸMXȨ 83_YJoGq6j3wB޳)Љpmq`m1o&=|.G=djNeQiDy04?(2DeA P^Øǿhjɹ"[6]}t- # <_R$¬[w/2F6 ;TpoC1=Kxs4쨏ƒJX9':E w85EYq& Rz@ CƲV8>+hMCy!S@>sKg߰vhE]JmĕìI Lzq,r`V>>v]1|zÆي:~א0@yW6B|n% "mKhђwVեŞ*Kq3z{(h;*c CV_0z5lD|J[ zG:<̩ dretŸ[*Pzt55A~+.)d~uyӫt㵥6~#HwqjCуY,=NGg3c淼0~]!M-Y#rq MEƝ6NǣPfz3P DcPim[ƥPt{e,jRĵWȑ9:qQTn+|RzY,`L4#h晀%zj곷Nɧ74l'L-BqԎ_xȭ8sooY S{(Mhl'\'W@#tRd5 aT?jESmWB=;}8?{\JdtΚ HJGI%h8z4Vl dQiE %4"˨%2xK VNh'Q9//x4gjjMFISd8ԖYD!+N -TiCg'vC]}6' Ny?Eq x,Te ўkBwt%2"X-1+b=SJĠJ%p2*O JEʇtEs>̅~*_^jD@(^8ށuԻv4(|oA+e7m'982Z =<IDdujcmHͤ#A=lg57zKT$Z׮UlH8?dv}=,Шps $0-s9'/L|r*E#9BU9(;[gTF"SQ0`,DgBYDg9D\Z ~Mkd"w2*_Fu &i1q'*eh/҅Ԝ<.c~8pZLȏ"GflS͒ET\'XmV+s/FZ5@2xi20t:'lh;RիK) (g&MiMZb~6s2@M"`/yv(G<?sUDJ^Ref: M|=@zts ujva!Zh-*ʣJt=y-EU̚!%6]e<q@*IjLShh؀ h`^Ԁyu; v?H{"&B)S2\t ^u02DQD@dR.R^QxBRZCn|dcra4gP5O-UO7hy5c?٨Zf89phӘv:; =AL[Ìj$>)]G%vMvB9_~b"ffEm7uTH׈,@|$A^z5~;oxz\)sl IPVky68W!KndBDnXN2!F= *l&f4\HZ*`+(),i|n5HD?Qjـu {n#Ґɹ&U!0JU=~Vq{T Do%xG812P'H8@c/EHiU2=[BB2m96{Vm)ZIuʬPEA # j`c5 X i r.@+5 l(^J&i;hf^!S_뮯V@b# ڻ%-{#kg%cKg6)Ⱦp􊲘<̺ ᰣGfoN_|nZbisod tzlOqB_iSI5ȽPAD]:O^Kx(H;-2l[201R"O,I*M([$M7r*&V!x~m?VMMm# `Y愜Oj.!bo<\x77ypZK8!Wم9 y@<@ -!!l?v2m&\pne̫lsB @91@{jot$y/`pj~Uo8w 4vf[\k?qbC]|7E\&)U.smY:PvwT'Г4:dveWnw0|C^2:j>\rhxV)qE"('8M(Vۨ _ybfքy5^|{@2JB&wߗ/+i‚sIzq@8w'LrȘVhԁ2cmx&èxɥ5h(_U)5*iCьxZh0ӈCIJƭ=[}G*3L$>h:Q .(=/l2,ttɂ0|3Lx۽0ec$7X[NL %W&̄UCΠmy3Z Ǥ3og:\@_jS=]&ݢJk&ozqq:v/mq V/sqQc飜>AyBFj/z86Lo|2>Z}@*JkҜ+c1ƛ MpcpA$6@0)δ6H{> E3ҫčC4 a{MZCBeG44ڜ}ʟNJv'i ErRyܲ B~|s?}mW{c>᫹S*y*bbܑWЏ["|X46?\,ntp^5γhѨM \rVdlz`+SVw曟_'|M@ O9P;LB;L85f1qr6@I O6`M dR_v>h{kF< =OBUߌ^<>Vdel-.2b¯./ʐޑidl>b1~8)+oݯa@-#y".dL.]aKQNAǰs/ofiYyݷ%%d)GAK(H`4(3Ѷ~zoqׇ Iopxgn˪|P#>T- d R2Ѣ.Wj\$)"nWV64igF@0ۀQC?ǖK쀢I%N_ަ* \u-E Ϳ~UkF { [|}ҐlTUfek7hnM˷wUƄ[k~0T/f L6NL]h6|qw ND 8%Ůpv28rn6nekDX #>% A"N&Zg2I'z;lʍy.ReV81{@k BJ* :dJ䜨'Ngl-H:I7pB.=vݕ^A?derŻ$f5-sXfsοR0yEF5wJ27J f61tX?r9Gx+ћ6%c:%G.siiuraA4sR#?d5#.hhN2kyQg i(P6н]i9G 5Kdy'v:IGt-Udžm^P#*x}SyJ3ҟ q k EW_kO1&/-a>.rO 8P$HrfopcoWAfT%yKpBIS9_ζB@}0TQ5V>9bV{;slP`Cw4|D.d8<9yuSӃЕ;PY !Qh 6z%"k9 Y"q~t]PVeq A@>KL_0g0Bb"@oq:R;GcxǴ-B<9Qh]J%09~. 6%v=  x5V>䁵텴+e quT>g󂣩#ֈ~`Y{nTO2鸗P DH q$˶oN9B&=.N\cjtC:e73-^e4.WFg߶kEv*v pQ2Si$lfYm%wq70Vn؂s 5f[uȑ٘D(Zaw`CtV鞧$L?Owx|;zTmB*"L8,1 ҜER;8C'|ش >?Y9.t̆6AsOzsZb ?B*زQMPR2̽.ՙbtD 旫|ێA7bC?*^>[%6m \X~UPXS/1"Gf|b΍.Kf7@Nv@S糴2Tw܎  C#xapʁÂǕp seԱׅ+GB j*I}Bl38H S.T-i@ȃ?*`u |VقC~y%NA5S--Uq "Xp)(} `/4%GL1=(Ξ_nەFZ}Syqn5*0@Z%vڞh(E0ܶm5P剨b^Q ?ӝ.a շKXiA,RZt"w茘-떼\ ;&D7Q>;RCi_߲FI!u>4GwG4ﭑU5H1r&Y-H!Tni$^-W?1iҨ_?#jG6SAk $1Q2C8 E*ow $#!RD^fUY4_ x kJ(A4]g$w[qDM:Q"B 1{oՕŪ፣5>vjaw⫊V]M"AA<f]VO^ v{㱒?7HQ'˅ۻHwm#Y6'Hs0m(IDa$P@C#FF%Mr8Z :O~KPF0ci -E !l03, GT2>/qS6~aҔ~Xݔk GJbOD!"& Z=>K[Z UMҺ~iO~0XmIr*qHokG>ߢTTN7c; !g:u]H_=6Y@nω7eIk?'LIRu# n8|tX[| |$ܜlq("&ݣvL6P[fyf5I$+ XSHǜ,4P\.N2-*s#pa۽-U5s%Jm,!2G%.Z _Ԫo0mA%"FzƤoahɬ -Wnܑzµ-Bw/T: UclFha%H%ߍrY@C +N1^l`?|=7Fi3l%Wfb?vN6p8ӱlm8 Nz\Vcyw -Kn1}=1MFxY_BW҈0TF-ԷM {iSB)X qzFCPG vǠ2˿PW`UԜ#'%ocnLw1F;7tlG%YC&7+p[>&%UŮcSjFn'hT>966mJƪz_;ՠ (+z #CfB>njF;NS]70kR@hSM')D!t酟IqwkHΣ{/|#G~G+1 qxR@q+'qג{Kjɂ1sW /B@KknCC#=Lo*'4Z&{aZ GFW|h*ŵ/$7=_nC瑒zN\w해lcm̜搧k|7.t?@&2~1&ѳZ 4WPSg-yrM]M"DpGer؞L,BۖP JQkP dF Gi_f0NqQWfvZ1ϭ2*x5h75!Ar#N1i̢'33GC TEZkjdQS٤FVC9.b5p_='84a]tlfeW!qFBL܏?1m$mktIYj1ֶ/یQҐ ( qDxȂaQZ[֞x=Kռjh@#Zmmzh if%RZ1+ڲ*BA6k]ZQGq,uTN嘭|s<'Qu,H դZ?5;?9JG32W%;:;Շ%eY7B3?[6)fvҩ!Wwл~L*If]h1k8&$Gsd g%}<@CWPkE8 TR(m c{ԬJ-PH2.UL2o8P" :CxΡ#A'rS\%wl Q2V]erYƵUoH{Ȋssߟh0h^%J5>R筕19`hJL5f106q]p_t(@R ]y  |Nk x0 kfRpvwhZGcrR_O<.a ,'XIERomQVWuIfm\d^c%C8\M{ Ҥ=0)V5@x0ˎF7;ƴm *Hڑ|3{SCC2 D!ߊ aq/:Bdx{ fy\u! /Io#ūod`NQMչG>H߰~oE T(UE퀮V.OUezٍjq&A΀9ҔIk?<K=*ŪQ 5mqvW٩(y!^*s}}'2\12w H!$ G/tt> )(PԶ1+nO@$ٵD[t 5od5L"D˂Qy|oT'ɠXlumL{.Q,J{+f?Mҹp<}ߌJxa5EۖJMq(m ۈ1 >a -qH%KnЉ_7"ՓM\@&wlk5-77wbru4Mtޞ/Xor\gg6o5,~`ꪸ^ 69 22*F|RDCd{)Swk{9ٵ) Oue5~c>"f~dOϼ˧XWA70 /#QҺ4 mqJ PUPƛ yL ˞c@c!;TuuiԬkU#cKXǣ`\XS0%ς/ _g|HAu˼1"c)Kz@Cg q KX عN"נ {< lp&& n"U%q/cA{57\&TeSGxof9U7hUo bѨp,OFf4#S:VqGf;QxζED5t)肕If?7a Q TG4n$3M4]s)(ۍJnhgA-AO&d+D9X7~!2؅kJ]*"]y=7)$pkl`yPpg9a CBN6%mD456P%YQN0!:lzk!4I˫_#igΓ&_&jCPsO1jϽyhLJkֵD3qꚦ.,*X5fH2jjZ6fvT#*|r\YBקN(Kz'e(¹k!=ǃ:}8PM ,wRqף0팮-,`4Dݰ`蛙NaRl B5 4!Zig&߈W9#ż훓(hOv*jn+[YMSX*龔3&9u[G[k9b|Qk%{)M# D-L@MCf [ %ҜPd [JM?f7\C3&Ŏ8C÷jCAE.Vo 6|Eu L/!_g﹀z'o &ߊA1C(TV_cHٯ_Nʑ$JmK]ݷ'flyC4E9]1j`/Ym#sm3Ц  Srs f;ʣ|վ/8qGVq 8J(A &vF% [?Tcv tTPIK02C$(Fcg̾P7 W)AŋEkz)Dat5ܐI2{5yN]G_>GnwD?h[:>U+ pTqt#AO~=GwdUHȸiLI6kTFL\;By VWdq:|>?TMTzĎo҃Lh|r ﵗГzMʬJ.~`aC]iSeYߴ=w%IX jj\tsrldi؝ɺh\n?4z$/!{k{Li;+sr  MK"6 p0W7͝h~^O sv ) THrmΉ5R*b5NFG]F#.m$kF%3u\KPQ0nsڀiRBI~=ug?e4  2΍0]n GMUWT k)\]Ăz0}D1@JJ^H cl@*m0IUF=9ñPэxq[4Hp tFNد3K~jsx=}" P g{C,GLjk7|]+k0 29-a#37bm\j7Ko̯}Kq#& g֩/dNJNbGT0Li8EV]ULmrZkq$l$7-?q'0=J1z 󎽀R3*UJuq7*\pI\ѡkim͎o-`"?NcA8O}\`D#ǺV`2A(ptjy[z0n-jV׆SԌgqnՑzJֵ=@mAB"sy Wbn:hkK%<~K͡/qiZ0*\~Hd:<5w[g~xYCg cO@/CdKx]vTwκ K.=aGɫeQX#v0#g') }ol*Z_A$#buyv3ɏO_&vA$;=dSjh(QO@ŬL߷QW)$㹑vt[od̾RG-Llkr$D*>DViM﮻ᅧ q0}T`FMR8k'߬aAfKWGl9!b{Д e DS\7*8Zj9҉$9y2"DӗB09b*hHg2cռ=0.֜kZqE!1Ǔ j*b#Fku8Gާ8a[EY,wgڬHJGWQiMFeF}_sOR ehV).VzEa2~<e0g#[1Ce+i;FQN;o `CG8cjRenbz)xѥɗcr^y;٩] ٤DA*]ب|Ε_/iY rQI_?kdB9lcUikLYedۃ$ABPԬ꿬+2֕01n8s" 8&^//qlRzY qCW`HqdSТԆZY7ǁњb^C=8&SDzk.+ 8Oe {@9e߭TԜe#eK~dsL1-Ŭs0je'8 tKUHɏq_^:e@]Xx(vmBa&t,.\xOM+p-x8Uan´sNtW-.m-': %#GsEv46j?`̇xOw=5nP|.HLJC!; >$ pɥ_~}dg@8ʸ69#T Ӻ/^yvdWf{qsq@EOeKbdid!*"[.1y5> Mq}G8peޝ;9lփ)ׯ9m֊hGXٸuT fMS 21(=O{聸FPwV\qv#}~-qV"D>*э8w]p/ӉƾsIӂ{G4R̫OG>{daՉ*!)fd~P"XrؓkY~V O/Pd@8jh_}Kq<&5/g㰆낿A.<(UAӿ+.vbBeE]zz+m71qRI̱ vT {R֙')"Q+ Y M l|=.;h !gڮuЂ|.k {n-ȢZ%X9ؔ3SC27,tt9E͞RR,~VwrO[.QLw\/)ݖdv`c'|Llks3 '7$IS"BYL'#ocY5> h#U6b2ͱhyCc/YgYi-ǽB\cƯ<_4K(-8epAO-.)t(%Ae]] k{`{_*Ec:gmU݄loUf5ƾ4#ox0a@BWAfwIs=/8/[XB/?%L5j&c{<v~x?hF5Ν&u $n%^8qm%Q;m޽ˉ35=vsc~|k?Pt mAoG%޳%}{:]y`w5]X<## d{sYҊ&7Q zx ]VQM㳏_l\tN꺢 Bˉؐ8ZbK=&٤z?Er; Fy?{%ˑLFFN>SwzTe^xߠ4ARhVtI) =ɹiNiFvF9A$fH?_Cyrmeǭd[d4O8J) ɼA`l-j=`ὛPCުJpvņE >qk'@`[4.?SΪbZHkh-}T` K6hLzWɍL{Bwr(Gd߬gE=d V)q&uaNH%bzAtǢ=S v$Bz4;LjXd|$<ɫ.=K9PW8÷,7k Axpo'Ye47XD<%Xd/v1å <|ke^'>gYO  \Ym[®27TD9yef~" @eHNU7B\ܞttZ([ '^6W#{|̯X2cƭ`+5 v.oHiN(hTͿ655!߷e*! KW_P16Mp4fbgԧ5A=M޳QnYq]Ǫ$ :уcȍ" KyR,܁dğ2TXsYDK.`F5ae*lھSrcɔ)~xkʻ-B+Y҄~jqʪ'q02%6B& 辿o Dn?ZP#x;(V w}NHꕴIxJ^c w#!jE AH@gng Rh~*wɭ%,>%0 [Q)3%[!z9N$7vV2ۂE.Y:YPC^HE>\/Fia=QV~{H,eP u/PMu)KDOi8t'*5KBdpp fAUbrIޣn82qCțb? Sr[.8V0jGG-RңdNŵ <m'Lwb<菤&;Qx 1ӦF@sFҨ D| ƪ 1`{xA,}Yt7.^=&LwǬ*A6lGۺ"&]pS#(S"n}aޡ C%/ dAIeFv9C@E#R*,aNluWـXk= kw4[R-ĉ$Quou>B`qC7(b*[+Eb37{2N`e_v :}Oxop*l XPe08,a\!ٍ9U`GVuU(NX놬/!)/6",sTN1ʜYA/Ҳ\$YƈL9ڕH57!\S"y8k\k 2x-׮J,ĸfTsjYX>?e6ў|XȲY""l2nЅcwowA!"QEF}o]J/)*,hMkuX5&[k~1U>z]EWT!!K@oechfҥY ѢLe<@yRu`K/?;׽ ~΢U:IlA@d*Xo%+C;EܗǼ>ƽg>qkZ,])q]'8I#gÓje{ߦ;UZ6~d0-wzVǢ вDGmxOA1"u#uf='J<ñ[\PfNԻu`󨻼i^PwJs&kb`m}řPƋ'+V@Ɩ[tKP:QlLӹH QDE4݅7Ȅi5V^O``!pKۿ<\WKؽCk}Cfr]"Pp\=j"q<~Qѽ#@tIE(IqmgBE\J퉞=$rб5A\ox]*ǚ"rwWzt#.Xta礼٫2Q'pC=`yb>(4Ud59{~h#9[lr&W;lBhn"ط"CL 2f( ?ğOC[]Ź9o5fݟ8{A zl[#!?l?5*4>zӀVr/]!Ú6RhzFz0S_|*: I%-;13 +OҴ8ztuL ALBt(z4ՉKu8SrqOVAodƑk?e@n+ "R[qg,(sysp d%  uFz2rXE*ez"(tB~ B({]t.ʧ *%K1PR/kB>>x*ޑi!G>dBZDŽAN}[0G =թ0A &"%!Y$%UdUع#Uh^&*…^/>89Yߺ'z=ҨCI6ibԟp6\ (qa&&YF`3Pj|@S*2B Y#'<@UV'uRr\BϙPEo j sG;###ɀVl1buM5!kt l~43m[1^W1z|yL;6$(lGMՙ`VN) `:cqKBY 2IQXIwu CKn&C7kh[6u~b P' -^% \#<ӟ{ps1>[b:Ǩ;ҫʹ;F*bs{&VڈxfG@&C{M&"A%b#NQRg+{h;6Db!, I"%7NrmQ!+-"eNHڧ# )Bm2 B<1ާ{t]V)XoAL e3לd|ɭiq9 d#Dú! Y Ô=9 )۟3V~ !|bmeJ2ZlЄ~ 4wkFd}cP@`r}bbͳUS+Qr?HY'UBc%Bk(6%T]Qj0( )_Nk~0ge:U(A4w Θ1Fh8̎)̅Hkzr76wxNOfIox-ORW~B-2+L(vK zw}<NV48&] 'b&s&vݰ\C~z^[mֽw-%Z[VBz]Id)XU?~ͭű%&l5pqQ帨5»ј՗*>4GWRJ.! /PZaSDeaBG053ʊHo!l`"6ZJf7WX$C1ŅLi$2m'u{KP]MDK@zs'WT}=~LN p( %YWo"nQ#(-9JR_кх }[\&dcMi  _,P1]L l}TI;8Dٷ[a f K}T8Ui)Cn1(Q]M{Y0ÑKEBn$?tD< Pf}emdN$xv̰LT{4<߾h eql l/ Fffǫj7W,XPs}<>WI$vk- uMDOw;.d[(͂)vDBkf#VQiZ5?i೫H4L-X#3w07e#Q kr#HMbK(1aw8OwV/R˸XnhFZ9Kӟ[iud|u寧 }JbTo PXA\-${4 s8vsm2N`Nv1yN2Ϣ-MN0`K~:䆄&O+'`/;d?U%@JQF;34dH\gBg28Z15sC]JdǗ Rnuo]zq7)K/[ʅw= þk2Cf~qȎI\X/\ :4NƉD/9GU֚?%/K:W6xG&9;AyGydTӔ.efufn:-`9gUP%fCY/ת9ѽѬR{YeH a]holmwaϘ7\>*a^~O'\½z<)a6OT+kNJ'6_>@]1yḿ ڻ?<tc /[<7]s79Q$h`jX{ d0uOMiuXG$`-d[p6< M7)h𺙈#R2:L^: N]ZNěy%J %mcר$@M76¹ˊ$'^u1) x-d'\),rq d{RyJ;5Ͳ0aVQؒTg)&IEA7BQ: n{Xlw'Wmv 6弖B܆!Y|V|G6}O&^_P <N%+ #[!)u CaH$xr3 !g @x7'=l] POX-m[?mcSY3<`@I Lz&cs%s}l(W'^şHVrT+M! ȿ1Tw3ytNrϥQ~g,FNxnCo`bKC"x3#ZnZ]OW_t<履A@UNC,!}F? VöUNN)Y L +R@^AE.\};-֥=)E[Fj1Bu "Ɵ\417")VRSr65/3@ɻ|]fNWl:6K $[-WmҌlsm@l !=ء! 3QνZ5+לICU=9.69ha Xdh˩KW?&z}n@/w4~rL: o tYuW K%S sA ZqPegjP!2/9ld=0 zmI%!H'3]'=Yf|<탋o݇]]a3-/tױ4HGE}d(F e29R6fx$vU$*?xp0n̜{zFL(;p#۬TDWGF!jG]RHr *'/y\ZCSS(Y 锟"im*/Dzd}!MߠXNf>iՌlǝz0i=FjgP *Py޶W󀞜:åGk)*czq-)LxfQ59 PwHg-QŒXGF.#HXOPm= !{Dջb4/iʣ"N͂VW zX{/c@{ 󿌎00l, ;ll?O 7/8DY㵴B#ZbO%|h!7\$ oRV^݈# aE(A0pЎ>?(ח!#pm0:Z;ehȜ!Ϸ! 4F'pcE(F6a笭XgaMfF[xr .ǫ8er!fQB8$&$HL(?ACnL:-<+fb46ąHזAJ*Zjђ!ʿQOʵ2f+|#۠ԓ]voL@@sl h¤.!+TUJ!TN܅T B&i(8kʋǍ! UMEdSF69( ?qKIh4OQs&/Ljб4 ?ؿRN2c ?C ubi[o)xe˲dt0[ql{*[/uo 4Ȅ90A?$1 *L RM6G2%`d6x}oGfXLeYfIr9d퉃!gQɳfW;J/6< F(ASav4 Bl;AE+q˫~<6Yc޺M+#ըV- yi72ENtuW&؏ XXDH\TTϤߕ>g8[=)wW"FVL`̠`$,yEˌr0UYՐDjn|oLon@;8a[ @Iu;>xKY&CwftE֞"(y6Z{wHI<2q,z+Qe|IphtϴO} R(.\0BwFq>?µ@+8 AVTq+&`"[z>= _"5yĆ=ށ FlP 9vȢ*ʡ %UINjm_m"Ms >`YO3{鄭: ȌX˧qywߡ3FL6۹ߩq6xsx_$2,R C`j՟Y""D'(⤶1T9{RΰD woNSOQ ),,Bi!U1 ücqx7%sp?;Td!+@8dp>eZ j'X(O諈  M[}Bu=;r>ˬxc8@~Dp8*9U _a!giU(Z gʮ6%yanHf:UcTZX\Y~z̮22$}Ca:o͸1xw ) unvwFx0,Qlf6mzAoB"=}rƔlk3Lzi rʦ4+߂⢎ȟfhnߣ蛣/ N=dF@|[ -j] ӓVx5D BR+{C?nQ4}IɃ^}Or!:ϴZYݟ=< P{|-DS;|Fk5~tt xb)LcVnD~h}/Bl P뛌pQ3c翗ςw*2;2f߰M6x a7h.n HU{=Gi:!ۙ rm@1VG BP2ڞ>67P~Qy2E1vK' ףi o،mnKDz@ŗ==nC0??Ufׇۄf˷ϭ;[yL58s~rrSBUHd„bqeNc )qKX_պ`Ƥ=Hx|5=azn/r0;ʀU3 |զ OR6}t+mF TqxNhTe|yyQYV6w.邆@ v )K)N%EҦMW%ikeIst4d쨋dZFwn!cGVan=]  k1 $٫$ ]tV8)V㐡u1kΞ$a8'L]65Fmx,!pLf:I-oiW>-jl2W;g2gH~1B7x^Kn:HϗeݒºH{2|** o~4\݆l(s:{ (P(g`xj>78ekr,*r槛24z!fɢBIa`6o5$zG=Q̰VW,,޽tHxZcHΚH`a[n1K|@Q912gK ;h)ߘ{pVy|yb&cޞKYQoQϏ'kNJT#n (ĕ/-6OwT]Z,LJoPMxh$v+0i!V&ET6] j#W:9@;UncH7SеFz8`{ă'y<<82Yl/?A9uvi4iœܚt};vMn/p$>8rp0JNTA;؀>IைHaTЩT~Hp>ۼ T0 S7*9g U")s2An ÔM9K9#9q3uEC! v,D~ǰOz:1lf'6?FRf8UEQz=?xJ#TA `9J'i*Ӕ0iWi,Y&#wΓ҈^T͊WRI8z1ClH]ل8A$Ө^lVMG}jQ9n] OA\V>p"H#@P$w^7z3*N2+IQ; f5~SXʇu%5LDwTK\nxyJ&=V4?f6jc'mrP Qԭs{FմIqkÞk clʞ!oo N쵀&Sk) '&BTP) 3m^n.K,TTqiW+\f#G~l 4;i/`tlRAģQ$:X:>@_LFE+jp~hM̕h^G2`?q| ȥ(L8_rGW MGhUA0 j7Gw'GC]fF$+zdlEفQ99)eT<,01'EZc :AvNKoU@pue,r>ȍ>0*lVgD Јf cOcQ٪ո~Tjoea 1t1K[пjC_8by|cwc;ДzD3؍ƻKCK, C8tڭ>R%dE=`EՌh% !|aUQ\WD~z7gܽ{v#TCξ}ghIU lcc$kyXP<(y'i|CZHqwptWk""Y4Iۜ"stŤvYt!&ΜKg[j.$a%Ӓ$K_kl;&1BSNW> U%7JSCm'P g+r[u T橚P`ƷiK;󽹁436mzKy1Ou@J]Yu~XAt:pE]ƙ2H<sFkfJz&BEm7'ŰEZFx+j͏lDŽ>]U) QkXy^"WK3a8uM/@z .J.'Ҙ%!z %iWj*&L됨뛘yo_x2}7_QpnfEdV"fQ=e#(Ah8[fy6#r̃5,@_"b}lH5_ <#bk24FMG 7!װU$tCp"%T@k$5,/h=ƈ೙cRwH+ޏΨ~ґmOx DU@#YoKv{331xsV9P{5d_NQ;J)ה ? a2 ?˾+ [FK) 4EEN鿼p% sGk0IYhX?,D%!h ~gFOB O+!Y̋ϗ[>/=RD2ځUk]O -0 sOYbD@y)'3h#h.)x9$O7.{QI~d eþg57]dAE&}B\#q ݵmDP2SBqgVQ|X;cRDy zv pV(~GChSSt%4Ѣl1A'6FvIg@ڜ^136 r*,vhk1uOO΂Q]KD[^i<c^ؑNR_ծ`UkS3JDc_g5]_[kSITys-`pۼ:p Ƌ$w ;BAڹx+XY76e[*n_Hۘ~0cJ(@&F'@׋gQ_=c I"9@ 9DB ]p.'wQOţY}~dqmV^Y&[af=ak<3PY˄;t+A2$K͑b~OdpWAژRnXH*{lPnQ}f`i MFܐ{ۃp 3SvЎC-IJ_X$Xt6$Lo^SeBi|WV(eEx5ʺ_D5U1תBnyu_Α@ @B(gnʽ+A;=DOQRkم~@<%yמ*hCPbJV (~Ɂ5~c]z0ߦ>3Z9%vXZTӢ~Obo <([jDu(NM-Ą)ñNe;ʔY4xI\FI'5(i5h]+s`^|mۻ݄g@,z9f4Hٓb3CkEV> E? MQk+YXӄ 94=~iQ=0$8(C"pဗrefYPaAJ1d\@HEShbF; R%YmQ N24!ݔIk,v,ѕR&gEbt)F/ԕ3xfNj?QVJuhgopWkco~GY)`#TObGRTDIV?p/ldr%22gH&!o`u%zjUxQ-f)ϏuGD49@~G!ahB=DNg~ g;Hn&R_VwBR5 aF6?ZIq LT䰀^3%t8PJ,\݌^e?ƺ ]ڸN&=/ꨫ^\`+oI{!)EYHD[` ާx. }ba7)p'ͫпLw/ Q(Ǭk}a"#귡7؜wm?x\ iN@_±NNg`jpM:xds~퀯!MTb4 &>y߅»,[K$T⪺0vӃYM[whom垅f;-1tlhG+l0iU49.w/ :BHa]l뱣#]yBWQ̓4~\T+:r(cD=Yb og-av5QGrO!Ⱦ;ܺk:X\jtP6 [cEijUѲ6hS35rv q;51 l\:<%9 x0|FAKXt^'FkV@XW]qZT-[jq]5l]`3ÈSE23 k2U rJoQTPD=)<?ނֻ0hf c'?W9^؎d͏CBπ ]B5K'НU,tjlly\y /U!l|SQUwYpNxhy( ]TlKRI'ւ|ݒ0/ȶ4jBi>Oho*F~Mp_3?=#aӢ`8XҘIEcUvbo3~3cG??z!RF:(y4|*hi";Z I%;ENcw$]c swj֜ಶ<7Ke7QG{^,v5W}mXx/^ycUՅg:{%;h4'Q|1[u:~>[߫9p۟SM׺UFOp^[D4iw5!pD|*he;&C9NJQx3nAw8q~@oX =8 R4n4o :oci)l9^[$b&wEAL$ 4:>|%_^fP-,Wcxu>}}Fk?ՅCYa*WOّ.?Z0vaK"4Y2P!ExH!Ac9yHlrxXzqTA76S<0 Ș}ba Snk0l8l]R8a1}"w?!j^{qgQ.E-!<{ +Ѝ]HT"oН;V IHa|=Sѿ5.J$I55b$-ǵ0ՁXU!r7TTOm T-%\Z XAf82dce vT(jR6"s02eލ9DBM7lLF@֊_qTf^DF-1Gߠya,-3=^Bie6zA؎nl1jy]V}ɄQÝ@!&_ݗvR%|~ M+\j% |{8Yh5@7iҫlp\Y0"nYo  j.˗:W:ujGh5| SÜP6qs Gd[+a-sLb2O-JB0׎Sqh B2|myvM8 x(o$o'vlw\\WoXFY kTDWQ:>64.I*!e%*$@L~L}[tD=k%r_ -@ֵ G_1J|HIר y?"RQ(Kkt]8}Ik͆/@Q6|Zfs.$DM6O0!pVU6;yuk7λ T )Z & gUHfswב9Tu^@MrSZx&?qejbM;/|s~sW-"̏<?Haܣ;WTS`C(F/GᢌtVgRf9a p> x{*V̅ eՍOnAǥ"r1">r$G!ʱP4C7;9oXA|;+Z%jG?h Bq/ t/LFE\idZO7AGLll-`#:#ڕDj3(/UJ"w)0i ~jMNHe9-)ﺴ6R G}eD%VtKQ.I6'kLӭ…4=#N& E2a2M) D0s>x32< ?f[tOCmQq-bdIO]ݦ& hT{",AGj9Y,.4ҾOc:݀f8Rsx*xk0$^}=.q1hX[%.䮳C%,t/oR FMOKr9.5=XSEJ= mճOC3"^%:$MYJn:aT\- !+Svbsve se,f%EBTd/S/: P~B,\yM>bcx `?.Ջ}riv `=eq!%Noo-০AKWoj2v7HH}RWo[ ߛ8V䜩B׎}eXLZ0c5%~p#~ kop@Cut9p߈mHN%0bF,|DzljBGy@0 TE7 t$4h}/:jeW\K2 .ب>zP':.Z){' %$  ~ N<\{x 'k>+݊BU~P*]nt0vnƿyZEqїRA@jM6Ld77%u$ Oy1sіyGx$-rc:5>HZXfȯ4 j+A oI5wrmHuPJ]U~BCB /p^#2&B .F8v-ch./t=QXڬ v]7Pw{\WX$?s_EHVTLWVQWtj&0 z|%CfI&Q[uN+ٯf|}078a`psSbڍSG'ɺ.a܆wZYJ7xICz?zQ,ut%LCMgkMEuJjc> (~:  WXgqkyg=M3p]-lw4qo3[ۣ]gTSeigfoW[e\y!KOC|س![ h~^DΪ<6r=$y24%9XAfGznD[Ҵ$ÎaY&cr|P .D C~WCت}kڬ;x ni&ƁGD2w||Vcj#PnCBܝf.!jfa~Z>a#! }iRɮ~Du~7 ʒӝ]~8ful'm0M%4d dE Xd֋h!cQAJBi11Q(^{ׂ)5D|{6* BAS+0AUIN&-Ӄgri`{N5 ګ3;RO"˥G\B߁;$c |Y 2eLl .) V`+2(Ps{6*VhY i|%*A 9ܕ)O☃ f??e.3鷗6᳝m$]/qM{uot!S?߲x%rbqS_aO MzXW$v2g)'z+ G2L]es518n*R]O眄_ -[.䧴е.tzoy'0-TZ ņBnL?a}Gv[3 wFdЈC[;9Lutƶ3W{_댎zAqU?JMpӺ)E;>9A<:[~@Ƹock&ȞSI'+p}iR" *G}8vҸVj-niET%!-4h 89$ ׇ)fD]jRyFzL#UQ{&2LASU|5 bVV/z]is[F.Gp!0UA%8clkى}PuʁɁjLҴ]N8?zH菔Av~Rn T3q/-#xYK!/d5@}Z'&|\$ #RɌ6ccYh"0f#F硤xF%mȆa>.7rKlW;Dv;d 5~bfČaoo)2n%|E m.42s@Yv$f3Eg[5+Sn^^VMxI  R @tOX5wVs|EQH݇)}oz,mΚS٣D_Y0L|YkһgCػR]un[5܌a|Dz@UjN]r `9 mE`,ubj*ďi TdڣZRfT]P@WX` ̆e-c,qgH}L͐7lHdL*tq~¹Y;+C E(שX&^j%7|DYaYvnn:;u0)`{SZB(K>ġ.(y~0B* kӏt` 8PqMj $[Ѳ crKDq3ZDcɒEk}3o$8FS_gqJE_J6+;-bsR&SWMWQ_Hj{ף1l"jouAa1US=[@?hE_Vw0. ^QHV8t׶݄=/&~ _V/ATnj-;ˆ&Vyw " s;X#n&eS.Sor#tظ!^Pr'Of'On+| Jlz+o}yRv x+Nrg_Z1 RZT@Fm[цTӃlhǍ$Cd?5ކ@l^YKM*#=_4Ρx?f'*Wڋd_`nAkFiF潤zƐ4֒:5Z:>aT}D]0BxGoGlc_&j]cc|*0GStS+)}fmdk'+i[cHR4Qܘ2 c%{Ha}(nhlX`n>k$ɚZjtU}Mtz5,ͦI*%zWL'ŘXV)(,e' TEf& p39Ȥŷ| SuUy`[@}yI]vZPToDSLFٯꌡTր^՜ (]6/kBo31() E\/ UTTJ/iۘr|n?#A*C%۶.dbhQ*:@bOš!fE< ƒ8T00-B=yGbWWRrIڙ\^jL#r6]ҫL&ٱ^od,A-ˌkra-qMn !3%1 {o6w͠sI#m~+$ݹXXGlT<.Z%`TZZUT2:`  Gu'z!IHҷ/0(fl?el>&esuIx4c m2nvokJ-UQ짧#0;w@<4dx{ag1oVKK vP0òB.?@*WB`^Z[)!&>ؒ lup" 򫿋_OYɹAY@EZ=i#K"}=MIP@'ُ:GSg{ S ū8*V ƍiW.ZQ7 R&lQpQV:Eg"y0s!éJGdEH~q)PAXvʭ -{ύM|No)O]R|Gf墥ew|A9FI9@9ɼ;.ki_꫔ XZB, @w?cIK(@oƑꋽdJ`p٨"ƥ$ݚ *P%{_O.ރq6[&W|*|=_#^N9O ,z캿ʽߦ[vTU\>_C=G B2deGD&F0YɷF&q~gm@Ta&өރBq 4N$stCDYHZyRXtyWI (*RP\* \ RG+D0ZAu 6ߥ YΘl3JcEFӒDuvXM/S,,v QEdž-h?,K7{o7)2_yk`z/gpׁ+nZ#7]]ڥ@-d!i1' ш`Ľa||wV~"kpx;0ЅL-!PP@G+Ʀ17"<,*x~!zl%(&8YՁDW-}#eb`}j MYCV Pȑ??]XboԊ`߻ H~Os@zR]9M3j{GFL]{e5R#نTx@wo|xѥ3ۣ<;:Qsk}x_b`5Ȓ%IL5\0Q0i1)YPrѾTc:=>7r)CEJZSbMϩÇ_UkzhJg.?q$i|xDZ:L%7~a;#sX %yց~.T김顉d)I̸@}@;cg0u*N=/ 2&RKVFhY+&B(K67Fk⍹5ZUW; } MbمwMhfstF'̀/. lcE%׌b ̼n`τ84( R*C|0z<W `7i'鿪ΖP)D`V lP{m~)E 9yݴk˶tpB&Y{5@бNb[`˭BN&~= od*U$kW= iqsޓӶȪv v#J|leDUM"S޻JMD*i el3"g lI&(؏}Gdh!W:_:tq~DH d"V'GpI"n[%d/6KVL9`5.${YyWeqm+rK^BN?S䪝̠{q+88daI,NWщ!J/CmM:lek2ꭉ:s:6T| xJkrn@1miWr@ft  7yDk\eF쏣m$x/D A{#O1 cm t4G-e [ۭ+L/O/0O?qvVWLr Ek HRk8켧SRk|S~6]5t33Oj:ᦦIo.(1znz+&BQevu,q˗U7sX+L8z7[xWv+t=.gRuLE9bh"pm:;^?do AkEUqwa$Άq446j,aPXO{r lod %$ƆnZ?_+Vb U-7'K}r*.l/>,/ܘtqH"6(C Z OlZu\K7T\ĭ`rbލo4A rQ׻ǜd ]6cWG6BH^NB@eIƱ:߱;%Rkge΀Sմ#t~wG^OPpb 9˃J(s^%hof\$Ejy)nՐwK 셔o<0l7H@N?ħs A*"ѫYJ%h3pmV(74(Fo{ li1*NC 0wLOf:V!=[y|,2$0xk$F}Y bWKb4e9yEtSO7`ߜd~@ջ%/a<3IПq3Ҥ_]B@ת=&h!}e%dWԳq%͕M]n:ʑR5~y(Ӝ0}Hw} McM/4YǙ#L8XΪ"qGC8ʞ5"#۲ݢ:Ӽ`LuQ:0`!P~ZIݭ C Vdd-z\ AM\owuk ޤ wWUy#fMXT=q8(By?G-HX!"߽4;ɚ<PccQRAGd3['o}z;=vDl;=BQoyV*+vI?JVWI2_lI̎=V'\qv+s!'ԄHBA|Fx7S))~F:%>:M %(>\&B&.U?wnrYD7j$(If.tp@:槕ĐM(laP@7:'KYFZii -oy#] -:9>GX}-d'BXr>Uˏwynhf@Q}>š7<h;[`~g! M ] jvBa`0a/Y <"N!t2*򝙾a ^GwnMJp5So㥆l~ǟdWGܙ~3g^;h %o}mMnT!LE)u—y%<>-@* ҴOK!&$8$QnY gà6܅RPG` `L1f4Z.v,G #NMm3eF.%KM|ө舀|!TYv|T`/hթG˘O;^`}jMn)1Nݯ:}̊!?mCz0zN@Ћj` r}Fw@ 4 \@)(Í"U_F2} T(Y ka Uiy tS9Ǖ %_ܨ,=7*@c ئPzW% W=|  K<^PSsLa^ I:/f^5ݯhI-+> VzڔjwxkjADV/FU5's][cOvC(e(~Q3@}ճ>]2Z^>3ٵL'gu{/"ݑ7ro Ζs %­1nnF0p;`t: >Jv> =jVO $_slKP33<cO 5s'c] ;O<Fu†M"Q7P' },k6O9llJWe˓լU״+pvKAq4N#΅Ne!M W.uc sm?QC o/hz|4 kw-iٛZ98;E4]XleMrԗrZ+6pn뜟f=7?|83%tٸ8!Ґztq`͌Pnw IKzP9t^r`!~_dޠ|t~>bG?z?> bgtifFbA /ZHsc_pM"Sbᷘ_ڎ֬!U~>%;3^`C}M0_!v88Ot^.6&ZZe`]Pt]Z^Ѿmry-:Dx%8Z.A֬pw1Y4kfpF غ;־0衹hcJRD5b% сX*?%|p55w[эۻ% e1ryYsycR9]M.h. u=Q;GLG#@KdYu9͸TlSS4b#*l̲tu Ce2ytǖ͔kiwio)Xyg0{蜎R77Xqj7㝍q^-{Ds MSs=%}Oe[GZvKay9wajgփ źɾjC!ĺ Y$D.lY*ZmQ. Իy2LJV*1 lnea)l 0g|Ybumӈ$O4,qiɰ b(vm`vth ^Zo VَqYH|+ouI&쟏 kbڶ&ʦ׿Z}tO ICNOX];!%_~°Z4x'Шq5F\VG̺;:|޲%e+'*,2k} & Σ??@ňVGa`'^ڜ*5њ4%Agwݾ"D nsnFcn{hT8s_$wҒúPqAXӌ;@/XLK`مWl N :5?Ňعd;72H@vhU9í]>+N9k,pF[Nک^vbg(QLJGu-ñ𿓨 -Q^⓹KMpRǾß' acNy](:XGr({*92)[p#1/\s`.hL9)<k HMq4FS2&S'mȯ G f}ˑV*l!oP(7JKjHo' C;ǣY? !'> J5h{Tcfv(O>G/W5w㔋w@mI&D^=ixs3q3=!^4̙,Ȩ8 /_12myܦP !L=2{ ϾY;͖@<87Qb{au^}fm&\p^cv}-3}P~L&;.HRKm`S5+ 0c  9iR$8od(W4~P$bȦk&c3Ll Bk[-{NWqWsBg~$H6U;UH1/Q^=i!&˅f1Oڬ,( xx!$c/ [hv#$Yu^Ҷr@ǃ^"/ ^[F|9%熑q:h7:<5kݶ{GVqOB&K*:2l- !@5BBTʣ)Pt7l>C~):cQ`8iO g|u"-Gp|{;k,TS"pDlb$ ^ؠ1'MmKBq>BMuh}c \t9ŠG&m (\p[ ="SrDn9gq(cήd-qt7aXpBHB\;5'״޲T`˽281͘Gi0Ы9@cr+o:oZ b[lU_Hu-A6$-%;ع%ͳApILW,kv1V\HkZLvӽh#ϭ9}/P^?nRѓќmjX۪G?p~Kro&1_{= ]og>xjvE|\h(GۆAMZ>n~m=Q4Ch/vT|u/* E]mB<{ &yK*$iz^}@ ~|Doa k;&8`)YG+֠H/#&3@\*ײsRGGQ,͏Mz⷗4۹Rh;EG#?DX;mVz EM>|6/1v]+)W>]ucFgXks6")_C@< kk5bk*]N53i:c{_ +/PCTe-EW̳t.BT#$5@C+zgf쿽WQ#TҟonjkA=tAg Pz ΄"m~g0လB0K9<΢z &PB>x*oP:^wYlknO3a=5C%g@KQ\5ựX^^ B`16P]u7<{n4r%5{Y6&#( c|j[lƟ^i651)5nW?zLzV= (L.Uf‘`ޕ.*e=>@~HZŦwhػ_;y pK:J%NeW)QxcQ2^+>&a,eDFm}}qiF[=}.DnYJ9s?WJ6bU9$psSJ\᳒(լrez(l{U,)}D 0YإsԻ^L-4,G4+B?d6"_5 n%p)!YtPA[L'/R cCؗ@&.gҜ,H(,mdkdj x|Snr+`jsqe>륐CdzOY`VnL8"HCv0 UٌA!K=KM<&e59?.5ԺYs{RwQB8֓5hloo*F3PfʰPIewpz]TS+.'"JKBrXJSV5{Q2Jay0Ƙ֭-M[{m ƌ( x'`JkgUh"rȅH{q=Om@q6+tvUgwSR.wz}U PI2um:. ,t2Q 8Dfdy(XJ©]RNtrk_oYNb7xgL7Bb$﹵#kJkM$^?wh9Na׉z.F5Hh/ܕ ^aF:3SenSGf8eՑ"cު~p=YTP3wDhs S.:g :r />KغLYd'u7/-+MSCIR:eE-C@,1+ ty@e5X[nf&rK62h,VWZzZ׌[[q٭ 2X$x 8Lop1B>Il$n٘l Z)֘DHtς,v(>̞3qp~ !MDz]a ZV\e ,e(EkW4&ٵ#O/(Y ټ>[ 3ܲxg3<8)WFR+#vv OMWdӎ qw&V~w R \Z̯Ƕ[e!{uUpjˑL`W"X*xQDXJ0[[y*ቖ}RDCX iVVl@x0P\*9m7GWdԊNOnN1h_:nj27݉ZJ!)S'7ÎC$ ɣ &6RӞ7k+DaW\Pk1OCھPY5u}WZ@N3zC,k'9}e_=G[snnX:b>̻$H:ea(j1>J?r}CfeB=OkMȆXt.yβdΒGr̩r!/턧4S6ɟ!yiECFSQR5@sА;_7?\>X>EBOsAe5vyxL/ŷݶIN& V/>[?Й:ADдk)@ƄV"rrQF?5-#zU˼;P|}l2G ,kJ&M.ġq60󳠺`%FxG8@9Lժk9.ZrAr!t<_fK'Ue(kI5J,(B}'U%'6fBU$YoTwB7t3UN#ʪ( i@DV)C}@G2:l,yu۠ux)ѡ3~yxHB B[iݔsp:pZcRV;bɸY*k8(UEt: 6 iTwETMު}}b$U @|05KoY¿ISh4ڞHid.᢭9D*\g}n_zQ[ANF0L:b8>vdXg!g$%̬*$F]$2'ѵ^DPJ_o3k5JEtڲ}7uEoTEݖ09 uB$p܎3ΐ9㤋v3lM$QB# vQIS?vWtLABVzXfX~!yZ!BfF]"/+^ Msjmݐ>+WfSp{G e³yFx P6*vs#Xդ4H=U9X/Bwni5fcX XOsL0eϣ[8F~R߭`Ei\rLciv>2a1R§!=bXN\Fͧ(1o I`tIc3ua)4^鑧7 FuVi )?YRˑdQ {7PϴP! eǾ9>?u/ɱtBI7LIe| = GSWx> ؤ4cOtVPP8:.2oVAà+ Iz9{ (so#~f畗:r&)]*E^Ѯշ8#Ƨ/)e#6M-RD-p+/ ̒ΔS$K&MƩsK~ G2&J>ҠUdsd}fh#Nөs03גKHeBUo.1%~0WTJ^DNQ'18 V վְ:#!!Y4?al\ J;Ucdw?8c -|tڽ˒e!n46nMI3@yR`[tw<EX^Ǒ1E}Վ#BUϋ9wm)h+X:kQmtX՝<%֯F(/֘\7?VLr3',T?#7P+u.Z$ #+FD~CPd( REph F`1vw=H8*q.|6Cڶ:Zk=B MpٖhJ }z Vrf~b)Q1PpэAh jz8::~x$`1vrKݏA9*#Yۊ; 6d'ZnARfTqX!D)v ]Dv_>XC΀2fWLE> e,f bm2mSv_Eamep R9y!:)W-7ˁV: ᐄxgE~$yreV-Aג3 +3z/!i/Od8,Q9c&qÄ̱}-9{\lՙ=3@bq=N"W6 J^& 8$#tݎhrv~`r4b)ƩH`6ylkUӇ3қdf5dS֢܀0ځMĺ&E7WB=nrb$0 Q~i >OM{=IӜg#fU AMd&LYX'#H߮JM[`\Z Y1 5L˷xrjo<|{T$v~R4{arL[^ UNhWX K! e\&ۓGy"7Q\39z'T?Dg>:yϟØ`#"m&.ZO,2!&^X2b7m;6E#I%1:*<'P%gU7/]f[8zAМ/.Ə7=.r!jZq}#FiYSt: ;o6IS]6 D%KiAK:/CkOZGv$"zq%ʫqZ랞7 g ~xG(h·F%|sI>Mk6r{|3JfWJcF~/O: K5t`Vc4 ,*n'p@;LF ׆SxTw~ٮS歰-+$@\+Kt TmNMFnUYS,R/V:e8Zs/5u/qj zA44"h2ߩOUI4ރjnz6dBi=dEv1n6VIȜ:VaϵNMhDug\(xJYA_М0RFZ MW귬zs߻V\]›s`u ͞EF#R >Ѽڽk|!<]( @d {b8> g1[O>Â.@%/0چ25X)8:X_}vJx*V[Pul,fnF mN/ + JMW;iz ]X !Ə$L3&DnC⛛L y1ftTZ~6HaRXd牞Q0RS-o>3^>ωflcFbl֧YVr^Cĭh7.>h"$#NmJ$qnj6\Dv0%4D@xfy)As%90n%7KPS`#͒Y (gcoDzxɴw(&Q?}^yu&հy #)w1a֟4OjPE9*6o]2톴{,쯑,iQ&ꜙRXƧY!M\EGWTC5pڻmq6羰e\fsѴrIdJзY"#]ت"c:xqTho-* 3 8<$#-{4"%Lj8ii?-A'MZNjpHAQ ;H ,U{vUkuew a"?>|xո~`uM§" m&cȰ% ΛwlΡ Ns:AHU&rtO'w*K~ K*h@Sls-7%/u fI\ٓ."ÀsfX9K9й勖ʍ| e})u f?JmL¢Sr (#6+ F.ye=vX<[y'\0Br*B0Ga)k3 3-a@C} i&F0Ɓ?v҇`#>M)åU>Fsr@+]{QlF9ʢ, ӽ;}ѣPCHZH[ē9Lis= f}摳lA-02op'{_Xkl%/[Ӕ@t>r`:]eJLcϹ>FߝMӽޢb{樴ez6?l3eġxtp^692-Fv)zJq?r d-/>ͨ& &ɭЄ+sr!מ͝W_oelX˚s,r>o\p'CR= .ua\_AßM]FgQrnB6"o`/٥#P_#W `%jbOmh2'sC;M#{p5GsY"{򉒎v?3kGGٱ(eQAF߂w{q4zxMH^ [UsD U"_x]"ù'i삞@B(,.-lrZSY&`kş%WLFq6[j\ =[|[jӟ ffxk-3>uZ)k4kfؚgRs Ce {1gw.b"gVvw ?HDzz$Fkr 'jxSiF_JJN%K5Tn-prqzQ"BSՂNf=ϕLN{4e8qiȣD ӯzRW}ZFO.£23gid.Ymz-4I` n.ɜeٔ8Hta۹<iRt%=P Mv =mx.T"mF}b8yѾE+8W@0>jIlq" ,,3csf`9`S`/Z#`C>d!"2^* xi [$|]פ(4;y Pa/+ݩlQJ1 |Z;fq2 Z*s y/W=goP{XG1{Y +MXd0漊򿅁aBwޢRѓ 8 ,D8~'tsĪljUk"wM[-HNCaz@{: ϓBlWaރQ@)%)$Ӿ%ޞ;aX{^h]102nDPT!́ v:?!㞻ufoMV&8P5|LZG@:G7ϝQ7IuMy")!JL[{SԁGȕs$4^Kdl&)9*D,E.kĘKwJC.[wvΆJחzz|ܳ3ԌL"AW|P,:J&q@z|Ƒ.跍jO+ 3 sDI;XXL6 }[14%`*޲*_*5"oZ<.Jpte$D"\1V.z:UfZ=c\[p: ̫"(],LtȓXfC&NCYsݠYcQ? i8;rS{BN5A+;2Rwѡ940UnRq]%^Rk_y-+Տ=m~b^=q75dLE^۽1S}ΣIp@W塙gt)zt`)Tq*h ;di1QO"RK6ީ#jM(#y+K]@6љ#xMOɤdZK"ΜAOKJQeaR_ZmK/5;!dr|EzmFٔX~SB/zէ!ceL^AG7U'L."!SMwt[?;}l4g7+\0&S-6Z]-nW|-btPar( _;ڎi1 渊u9ݿ:r.:6h ]Z,%ue֜]Jy&y/?# 2[3s>ݵZ<1X߳zzwԜ0(]o‚U$̡XdFMYM0ʰfݠ%5Ѷ(?˟NpXX<5oAn`Mjiw>jԻ!K@ta_n|p{xSzݚVJ}bNY1<\\ŒTZ9gљ3iz4D ݒԔV%K[d'*j^YbNKCkWT y bBC ,Fkbsb8TL^[ҁ E$܆MBV\e0_DZ [HK')} sدW G:[-"H1Z( Po܆!9ra=ljԽjJl2lg"DwXSqJϤP!_TY/{2"g]C ؅4c4. pU{7pS7xaTB_I̤F3oFt!3#g+cBT:DsoP| nn1H tWޅ,u]RU.WXXrbj lV }7x~5K=h/$V|_0Fv\]vg6=Rr[cܓgI~L)MnmFBv LSImD/Q'XDO&s@/ۄVe׶*In1V2m}(] mdsř=BJtt3e5ii;dR?wU$2+?Xkh-1!.Wӕ%:NeYw1KưpPt:Y֐BxZl`k-qSL+rg:iy䰅?zc,7&&1iST"gx/_C]t'P/"Qy\0J 7z-@`HR| >-z8OGVWT9'˒ѭ-Z͜PMKts Va:#RR4$L~*#(Ei‘c "ߺ <N:VlL &|Eޱtʏ$a\HY=}\.(I`U7ZYQ %FFb[縀n/]((2spZj,Uf.vʦ'd?r?.+U>50L:)gpB'n~G=#*ENߔJ Kq~y#@!fw=4^]yd?7S y1 /HF5.y]1E'Уtzj"6S?o 29pzSc]@^u۪Wf NT:"(WY"!K[` Wߌ3l"gF"lD64yy\hQ,='ˮkp"q1b[ * fE0,P?{MXA[L9i|mL;SH #xi=5J1 H'З~"n`?}A2Z9쪩(KE`m۔ 1Q 6k}pxK{"S*uf~gZO3I },CbdaS 4$}54A(,gPs#&̒2he]z%(yrz7)mUn•̩pJvz7j P9I { %SXi l6+g)2L Efx7WA'赓q~n] e2sk^ek ?ftopgc&~hII͵X5 +`p`J#CԹ<.xH09bBּi:X~҆Zz3A_ E԰[hmn?7tQ_%oactX@a*/bi3񘟲F* F_ aԕ…ANi=i6tqcwDI2~.%R){4b |X Q Z׉u '#Dm^ ̒O~$ԼƛNbKK4hҷoQlW&X7=,X QaDy;sl \[܉li>,\Å"Z+ǭE;O$O YZQu`L YiQk9gRї`]W` Q&0KtЯZ4XA5E; m{a8bQ/tW؏Y'?h6tYey?8OGCF)~yj[A7oLJ}f!e ީ-H/P:gO1?\KmiQ)U4Rhai$G^ ֍$*e9umB gvv}sn1wӋXM:D`7QAQV[+Sv _8hE=MJЗs!9D]qh{ 3;H7) ?GbRppMn͕}\*:lT^B|x]` 0KO ) ü8P@_Gc+VA(2lj;3߀ˇe4tI8"s;'TEҎz8pw05d @LP kM.m]ʉ'B}8ӛkB`!9X8 Yn!~n ђl(8zـt+l#3')>V;>R#E^ dxN[9=!kgk(נ=ql%G-4V뵨~9,V[_ y\PV(0!uv_Mf 镧kh6ؑ?YƭTQpSͧ3G){yR^9qX- )zV.ku /.=%d~Σ:@ŵ"43!O:0Tϔ/ V?fUce*Enz `[*pg9zMӺ5wʸ-G܂c!4jLs}^ݨMgc 0(z'ţnKuU֢804ݺQb YsswSuNjW\pk@K:'CjmN?9ϋi34&ad1.n (br2 I]01`~M/>&!ȶdס4*ÖIǝJ0YژrbH GΤ#Gqe4:[&U 'tK=_׎йEb2 ?5f!NȁfʗR0IpO6i}ްt%}6K:McCbtUryDV ndQ Iw*dA[OQ!bfg؜biYgXe"yyzw Hk_=cȡp|Q{7\Lcjv{>-t}q +(deX1w2LV6uNĖߊcOIR7 \^?ؕ'/d\(1BGaf< QL?}8^G(xBVrf Ic/ٲLuo~g& ^Q !*" <8s_&Ĵ5hOZ|eS-e`C )`GklH -*KXm36cG c /i#rm*'휺yHmJ  }-C/E&swt(r\$1XM}̰%h*cl mP7a7CG{bM~k!k-,˱Q(V.nb0WR*QDܥ,]ĮTE8PO$&~kZbGV P,7%,X[Uk{5a٥GSToj1o> s:Hw~Uf'a'Xa2\dU덿n!}~0veҦ'q@Gc\5-nJZٵ9D~܃)#0y+514pTcP-Gng:G{EB1,@J yH[ ;*=BUk+/iK\$4 Ax#xg ԿILKXm(G7p6ՈW<`k@! ȵe"Q⍮0vE$#w+= iXޒ9]cH Bz';'WQt[E8SǍI8}W񝑜Y͓s׶!H.W_Fg~_)6ufċ)N4gNMIM"੩ ֝̃Ho?2tLKq!ITd>'<[/: ($6le?h;ϐ)T Hȹ ֮fMUfm64C#L I9! z|FCcőIХd P]'_*Mfn wA=(Fy;$ú} 5C gg6L\l#z#Dv5NP[T.Xx>l-hMd榵KmNF 7-%~ sN0YYcnе9KBEPȬa&"I0j ^ B"fHNӖ;,^@]pPۥ1$MaX QuZTNUe鮨Sv0>(+>틆Bg9`s3 xrnaGwz^ R@I!hG,>![TW|Xg[`2[<4m(Cy{g3̬C 2TrZJ̙.OA%=эBno(FO2.vwͯBGc_ xR+@۸d.d[ ,[v/>o_n0D*R>$g4QMh"@^?5%vbipb46Lc#CpFfLiGe$VjJ5y@U9[q؜aM'~=[ `8ȗA]5tb*x4oFpĴ?de̙B@s!Z8S4=r*emomYL 89+X~L>7Qà-U|r@ϊަs"Vo#^Umъ25״ ό !x 8%~-j#vB#sGW!;؄ G439&Nh*/v5FYTBf7Kosck3frq,}"(2$ \h7м4p]BrŪ1| ~RڨOvtX< >EČ$\v$F$MN1`p]ntUuro կ&Z{/f>z;@ W·-^R ܾ_K hvqVb*'&MƸ6ǴMo=|وG(yl)|NrFH,b +} V`b]ѝ[>FɸpkB&N`cӏӧ)]}:".t_?<蕢X<ԾxS&F-9;hzH"YwnWޥ5G?pB7>g 9*&Y-Kq)׶ofV/1)Rn=W ]M1LFD69 dB|Ey^lbZ/]^{:xMR i׶;PB+w28ܗg \miq (:2I y l log>;?U멉$C6069 eqb\kFAN;}3~t 3%-[k79{\9݂{QQio\ K/U,!N"H"<&7PԖ˜ 98̩TXkac3QAS0WZaHP0ɓ}C~o,_G>(j`ʬxl'Bc0n[H0M>*C{~A!J~n h!tFMVK Kgp0>c~im6Y5+w3ԏC_y;@ffS{%ZPCKG$Wu&4! ${ UA->ѣ%HQ+qje`lSq)=( 2Hp8D=v;[:S_YN%!G/-6CM$i|=pG"@cPς[qG javP譤x<i ͤ"]#5KN4,{Qʹѽ0y5۞#_bWXaяֻa ](Нv|.o] = lQV* ҏʨLRh_ f RZaͱnPs1g@xzCSBeKCR㑬S7!dwc_ŸO4v׆)[k.uϘŖnk$}HKI}S,ՄaE3Ggd/ { xjn*]8JwBnOv;up)}Qȵ22 *vCy22U_H 'a 2*AW"AUPbCA%&j^$ێbQ QUTN[!bK׷H˲ ~!3 l iwjz< 3&8(+Z 0p"U,>" J9%,]Qq1Ȫw~u7Ǻ^bc2J7=19XYyDGM!`hxN5_HH6Б"7r`ׂ{]uGO7/l %i~zئkpϊ6Fj ܽ u8m9:&۸+u䩨Rƙ[\6s^rJ?zdsoՏr"@6&|Lᴣ# s%'^ уS<,AG8ʆ>򿥳&XJ5Dv O!NṵΖ Z'g ~юJGPd.1|bٵ`'>$?ײl戬XH(5 !͖43\*Q2 ^^OS|4Mݏ 8)Nj,\ʵS_vf4D(!\M=d82{IڄewpU<cx<>#=D.攕^%ĄYg5$oq݆M5kne{)N0pɵ2ZŨ"#/aLKH~J^vF) Vqm! ]5J6/409aǹtvs۳ư}8Ty" ^Geŷ YW3hݻէgИ^h=~YkD1Ӛ! AtuHH[K.M+(q"+\VfĢhly\l_4N3<3,˛KF1&YOuS ~syyY ^zY1@,7bChWdwݮfžq*UhKtz 9Â<wг=F2^"D}t{_`DbOLGrJqx1p7We7$W{yrŅ W}nh98np:CQOk8{ScO C? &DVd\EʪGkjK%Z<#\+K,LhrJI{jd8ԴMj*èfo*Ŕy 9wb@1R|r:,#;UVRY:.Ж؅kG%nY$jsd_|?jZA<孷P7"w1![O`IOsdv}E MT.|g].Q7# apm v7!\ JE#Ƀp}o::үw;جI8 l~$N07=97Aߣt΅M/+pTP/nsR?U̼Vahz`8> KP􏷲*7ڊ<_eYҪoXܾ! yX -gC9/HIi;r -X{6 ]J u%fg-@]n%IH3 Eva:4K͊q%3$p*_| ewtn bPN%^ep^ 2q dglx,z\ G~7if1nk#6\ŁhnPQD_xկM  d jyuY-DT}W-a#rͭz>QLYSM"x؋vt9ߩgWld*VV L[;%W&fz <Ҏ ~Ц'& 1m5UI#%S^:TgxHm@n|S>"0|AULZ.WJ#))D_^^Cs5nĨ+7/]}&yQDl_tKkrw{1i)7Q^#<ˑɊ`F*c,g?9P„ȲP[-M.U0y1ͷq k?bAQl}ˇݴug^eL܏jېw|`_`o[ lӓaNCܑ!S~ )Ahl(F_®mL3K ~֔7]Mu+1opJ_~εėx0fq p*ɔ*ڽ/Wsj̲s$HDXj"kk8<~D_@yj8S4R0_Q="i Sv#;ap-!vZŬCJm*@!:j',O) -!+L7UFeCm?(#$v }Zf݌{Iix J?yP:޻H6i˱׊=ܮ8:-dMښi F0d!j@D2y> y EPD K]ZI ;μxxԡm i[V!SZ_(r7$r2gGO$=ȻtsC%۟#=~M' MYO q[Ml0a?|"Z4ػqDDSZ};Nz[೼MSSl蕂(t狻l[(s-] lo݃3?1=?8V V}*jGet6><2͌R m䒉bPcY%S4xyǿ_מBEMJ(얙e'0NÛՊƝ!MAȬ]3Ҹ6;u-T j %Du8Oarl] Jo94E]8'_R!Φb'LTj&|/fKZ ]lc1j0mBKU%ETL͓fY'aZN .]3QS2xYEsHrs'L *w"{kyF@[m 874#YVnUw f*fڈWpoOQlaخ9 08 yfՑ2 ]vӲv}\-afljj}|9&GF0 N5ܚ&c}\o׫~$5PYu"~Yt(mTV~60i4@ U1{vQ'q@vppv&4dUw C0ʘ?^Xǔniv3qzߟ6K*к'%͸@C UBgx-uLJ)Wu߮k*,=v|yGIE#TJ>, G/-[[.Qb-e#s@OVZ"6h6ܿ%c~ lĸ5' _^9i-e Ka9k:Fʫi9 +f~ʏ spcXUh3@#f|h_rrJf^c[Uvbc!T/HWY8*9VkC wOpnu>ctXk 3IaIܫ<׈-K P>pmnkoo!11Y r8XR/ :O>>)MNHB0VYdM؅E;^9bmYW} cyKF˖$F&P^vL܀J١tQ|s?n]/,zeKAhG+[N2@_*F=Z5L/ >AAoh$іk$"Pb?u "dZs0R`Dž~sʀ+ijKSUܽ@5& Oitk<:iZ?H6s1`mi&oeZ`m khKd>ɤ0n\5kj4NiI+>̛<#/A}q*)fjo;U#L4dӮykt8yQL0v|fK{qs53]2LN,,W*$r8~WZЎX{NUHB픾9θS aƒ}'< s5l}>*b|bBO  ZfCh*+Gތ~^}=ϐ9Ц'O ؈!\QtdeN4Exd@66SrH_+餔'%h;> 5SRcl>ov%8⯟rjop<%}tS=̂7Rxk`ёꆣ Ƚ${Zey`|=>|0;QL%19B@(iIWa-6|pW#y.C@$zh"~^ײAv JHb*_(t0b^kGŽj~[9:R|w_KwVa\6adH@!0Qhg㈳CMgN1QO6ɔQ3Qyw"А@,)I|+N,iMi>4]uG7&Fɖ$}; p| dvtJ4OЌte&݃?R'i3_u! 2J'm(`Xz9Ɍ 2WpLMt qѢ:dRaRž* ݏ\Ýo OHg†?LqUSI @5LdoJ[]Y=bw$6ExAy/7kXb}zM974Fk'y.Ctσbɋ#ڼ^{OgIkRQ80+AX; υD\3|ErbyDnI.n' O \S~HXN) 1#=n`)Qxd?[d"=X."xw%OP/3(*CtꒅcC#衫q:~d;准|7uRxB%+ȸ'd(iJWՊb)|1 zL#hS>*cdr<)@K_3`./{7X4AXVQZ){!镫6|=!uqQq/Η%F4Y}n|!+DqNG|dDS_]epQf= X \Z0,@^ *X'GWK6΢p͒kԵuEmӺ9'/8$>ԤiCÍkI/IJY{|}ËTmHA`QueW=ȢR1*}Jr UHf'>ɭ ΐ'OPg"x1 J%%̪aCoN!d6n7?, Liބ(Z/̙M GprfEjR}@!̊(P+cF~0;}9k3jua,a?Ƒn` >.K&PI6RN!xL5*DyA*-v ycDg>\COyTA~/XGl߁C ^s4_wŘIFUHW˵FNuq{}[ERTA~uIaQ|$˰g+'`~#1Sц'iMeK f&M)_ BwMp[Kwh;ֵu(]iO!d֒+a$ɰ9IR;ȖlLh:yjt33 n .w#-afi.C[rz-SgmӠ*WNک: WgxW hsS-Lv־Hۃ\aAٕ,mQU!g - ;nߢt--xG"'Lޕ/"@qKwC8jmp ʽjAQ(0pnǁX}Ddݬ'jcYfsGJoERcWGUG0^(h)<8ػ4 A1{?j<%MhCѫ{ȐNxDqr#nD F.Y;R^Z쓠ЍVe wlt_rbIKdx;6cox!Do-N˗`FhY!@^7 lI [ O8uqEXs5mJ0V ҕoR_@wmm n' {*cCkc2W"h8wnƦo- eRQ c1:vl_6& ~NN0y3=f]J2VN3lşYk skj5b=!_XlΕ>@ޜ2H ۝Z|8^Ėoí̌ÕwJSqJ# G+0xp#HhNpHL'c?Y1cLj{'p+~"QxP%h y~[lzL!d%"ˍ֎xn:h5cjV=Xe@ }S{6AčPX/p$ŜN N jAbݎBN ѫq̓Z$D'^A>;<ϊڅ3CgqI/ ݤ >*->jb\t#TBoMQ$&+ aj7ф6j0Y{Uӳ.-yi,(Cf`LGʅɋ5 ޿#k I|t1|KT9=c)Eg6=_ VP*QusXv^(ΣH5b.l;+ R+`+3$*11OmU6¬5 'ꙩ2}_RXbp.+1i d֠zs4טUFK[Wv7iĥz+. 1ڽʂ=<{U(ǝ+`2RșRab 2Ɔ,E1N5`Ö+n:)!2VvMFlaU8b2 GCm X+Ld63 /}Y/ʊk>!MhH֐#!=Z*9IꬼaL<,1|L^֏-H{aג[Ky3)VI~T(^@CT&#;X\ƙ )2O45GJ&u.^;a" ~pK?4l{=<TGEze X5ǞEG= q~Mu܆^[{sD{w#ϛ8ϽN/ ;p v׿|aJ%V5#:&'v$ +-RU~[ҕv鄭z?b9<5t=LrA!Rr~ ݖžA7>­u;-CnHQC16y{( KmtPѼ,c}8ؕ4>w_I$P6Sp4?/ƐpBtk%xjZ 0 H eq0 L.\߶m!Xm/">[z_ ˸8̭jK $opcӳ#;5#_1XõAg]P)5u7"&YaFp FW5tv"p6{5^s`ZFf]HL'G "Yɜoc!+!hE O6y#Ip* qϐ V|Y$ =Gf)t"GZfNXAx)_`O[;@Lp(\~~ϩ^YO]c׮S]Ԩ⏃\bXd?j_kDq][T7[py 8Tms10 a 3&cB!nFښ.O= }`:&%iBl]X  c|[PL Y^>2VMPaQogLpGHIQ"83[c'֊L@ evH-"4ؤEy;YmDAQɁY/Rh.J@Hn4)IH``sk_W9fa'N0'լ۱|(sE2&^Gσ]*`P>WAٮpC':o͇~<~]¶$Rw?Y֍ԹV@~s'=511.R: ?Qpʜ]az߲_T2j}G{$DiZF6y馪v3<LޅЭVjZN,55f%Y MkHf11Oiyi喍B<X۹QP,SPОJ_v1B$J{nЁn%e45 2;~rbzsS嬜) agVj/ S5c_ACKꨟ`T\-^!hIuW8#k`n ͢y t^33Fc25DuK|і>AogFpj礼8}EkrچYV5I̍]'tE+%'_JBEf1Yv& qari`&{`&U;KVWcYbx8mtl lOX+`>;[qIug*΁{,f#% &ި>*었+0')ZkuQ@)C~4::EE:4Tmh5}u$2Y8Ho}l?#S_-1,TՀS_`7});\+r%BXYg7 ]CMųSω2m,l2ՐGmͤny9RA"# OnܤbRVڋ¨&;gV#|Dg[tl_BA욶_3޴/ad S( 9H@tHɦdW.. >(PDAS.v 3}SU;n O>(845C4f|!ٱ?F]B99~,dڋ6TQʼfJG =?ݣXaL]5}IvTTVwҭ!$&HZ9GqyY|چϰ `DTʨBܓBF$C :}Q-nQP>Cj"`narAOC 12>3{K߷ O[nl7+vqn҉Kk)xr6bD?L#|ohx9Ĵhal٢XtDո࠮&?Ϣ9:'t_G*-7oc?SU8D :u6,JUj4́ۓ ;m_o(I gwE1-fh!=ϫ?apڎ&G L ē5NJ1&THW?D%\ DH1féP0sOeQ@3.ȬI X GkO)Ld՘Ch`_ezk^{H~RY<>X/8x`hUAj+7%Wnq\ԩ.s;+y^b\:rZqŇh+`x}a[0;q/M()MF>NbL?(.JGRv=kܷ]Я m{^4T[ >1<$AAUo #BGvfme/m%8L@5$ókL=:z?}8 _!!PR6a~,~N}mU}?1~25BKZz!zBxkicbtQ 4 ){D(H]BHW[IˮˌZ$EЍrnZGPOTQˆpkj&H[o ın = NbE>P2-閤tva#+.i9?x&o7Kp|Pa`JSs2ZS(yՠB^9252#_; q)e\fLLa}I)uQȔ#ljn u5U\||ROxvl_q}$V Xs;jTѳ j"Jˍ{rb#ρmm3fÂ9й-q^zoA̭ߕCc"| փzoh|٘-%2}Ն@P׍F b L?F %D,=]X.0pT:g0$g'Wܺ|iR}S2a(bNqz.u{0!>>"fӎ2rgyR rX>L0Q&UNg.HQ:dmd=.9R4=Κrvru%2Oi+zIQJ^p!Ad4Mb.փRND( =qnB|17d.hSriGjQ#u~n;k,G3[W%ɕNwDsf~.,\ YCO0 X2Vo @_r-BI3>#eЏPj>Q{Jl%VУ_/3Z j{0"x)bu$p! 8βVL1*ک ~"1O[\VOA'/&˭wK@ \QJ]y5d/v.MBjDd 47;y 0}'=\bG>7}+mlNСӌiU31+'M߃rߣХv3jP܉8q\&؈g`,C}yvmܹ1XXsnq,$\ U{&#%IfFMFU/VP.X%VR@ DpY47UEwK(05>vvյʯaٵ5{ZmzEǒaO>$ Xeh9MU"l,,&2D@\kyƒ5iQ(:P!_jYaRj2VGsCAof)m{vri;TfYY{k%ji>(4Q񓐕a!_c:G='VUͰ/Qzr(B{뼇 jyKQ1*(T#" >e)wI9XvdjH<2Z0Tyڝ@BqPjQP=]Eo(zr dQ+~}53k>6qоS4x9$6Q%+P[ xW)R^q] lTJ3>mM1A5. ǡLGԩ)I럎L9N ˏMtӂ.N4配IÈ;Qc]~`ԥ 3쫸dd AIGdgja\__ݼ1?ChPkOz8Xtvf?&:r`׊-=i*cɦע{SCza q]oT2,mLK , -[2g (5G2T{uP`.gvTFx 41]+dyXbbd^;*<|{[[/aL ]cxMTIīv|٪MMIg^>X"grLItל&Pjox,j}3A-I&WGNj >辍νg&P,]4%]n*eJBpU*=_kߚ\-sZU Į_@%vYMC+`.j p4iT?[XI1jĚUdu{]3'G3ۜYw!3bfj>ntn l`{$~|M ѓELv'6`VM64~ SiiFs-x6I2|gDI2gF%Iey6T">"nG"|ӟiAĤaڷqUjHx*xsq9BYT3# 3 n7?`JL͌ t@2Bk4ˡOINP̄5T$¤Y@ AVm)ۺޱ"`e98(%`=<RXPM"ݦMmdwO8&oxS \ w$B!< QX{GS,LLбsPR8$tMB\xĊC}Ȼ;k+>(r_[5&W[G#+(Hp~ x֯3CƳECq㘦^\vzȐ͗ox}nr@esj72 rKlpx(2B&=Vo hsޙ--pn}pL uIFδ28׫&8#r|~]PQUr?= 0m 3,kRFHOKX=wNDTذЊM8cUl! {cf"0 F񫎼 Cv:GNklfo/Dn\gSK_ouMf#6dH\|ecMF#DeHƲc090푸lhe_'SZ8z8G qbxό+/C%–lSIVr[+3 RaК--"K_nkS 'I$ne[{!oCEjp%;uP Ft}3Eܝ}ill7^Jv|Z{$;]Nk%(7_c;Q[}շ6OF1Z̏mj —aΪ6veR,\ 9aС{4%ff"34K$( ~S1+ߗ&~uH10:u,SI\u(HȨq\Dpk/餶y-j"V PP5Rڊj$Wv?v1k"$gb&/59 Ϋlߛy̟-Z_(B4o';+-^g'֐gAoq(|O ~^hfMiW"DD^Ny@!Nv?nDT5q1vE7b)Q!R'jcN _hgZbA&eckt#dݦYn~Dc`2憶.f[Ty๠tGt)w ƾGm{"Ev_bE8V 7e=\h8.~@5| 21o%淯@3ڗRE[1(E[%Za {`#)j2W9wY S̠Ki~'^@= VG<#䄽F9+,ͪך<fL EDsImn@j^4b 3C "_f35#| XU+.bFi_6H^ZQC.%6|_Zvjh6ėôI6C ~۵Ǿgs?vg%s$'$:wiFDM0irG`Bz'L[yY&|5Z2]W>eM'$Q $AɶЖnC_[*_\A[dMʡMws=:Zh91נp!V2ZZ`NN1_8rxBhVR1o&&fң6bV[2]+AT`a GU% /ԂBsSØe`=D\8dQzlI3 Z& =Qd@ xG˪HE٫uKY!>5e"7Ib?, gh [r[,Z%~Hp{[R:GrkҖ6Ov8? ~1sp*+U -ND hKC;qt:""w F"4\\ċfv 4Xy)VvWE*NK܁*Yr>Sl#:b8*"NLD`NtU،1q/Q9ǡ"7 c=2+ T3qazL̰ͬ҇AVg?b`QIe}7H-J'ei/'~C9v)Dr+LXGBwF;90)]Niڌ5t1A2dFpɎ4NYUȖ8۲Gv!M̿A ϡ_FZW.{c󘃏kg 0&?D^xծTYàyolW?mȵKA8hdz68#JlJu]~?>ޛC0Sގ,&#Ÿ+|-h8p)r݈`v[Bh.%D"@>=fSpəh \ zoH&}u]aa Zouqe{ꢶS K*w(C z!Ef[xNc_=c zz2P0ڞ2;2)=CW7^9!$ MLN?C@?[+~QdyRV$T/OPE[~|oR`Ek_OwifL j =?n-Ϥ^$U2ԋox13:i2}M([ibk ˔c8XTkQT#)^j.n-x EI+zi*] l~rI{& rmi43)Ep/f{q>yd%=&6VK[=!D):NF U %^8PB2[̩$T̨߄6Ie )Y?>׵1_jŊhgK}3,h>;[> %P jRVHfd:U0euPmb9B%\HY>f*Ip"qš=wb-J6οKvb ~ZQ{X7&E< lr'X]iYBtJ:7nW2hU5n%W\炕'(:"@](Dy9@?~APwjsS}kG.<3}'ѓV/-$JG`$),XÿZbI#NtG B j,"dQw ЙoAr_f.k۩&o Ktl|&)m!8KdpM9Z d`_,0jTkf0!wxv+ď&[>#j}asYh֐H>]Gni劌 גjɅ/$> Ҍ= .b낣֪i>r 1 Tn1mt 9Ij 99Kjsh@rtACm5n-L \:d5xRkfOuR]1uL= LyⳉWpLJ Qur^~><,@$ٷˈ*g ID{DU- |**2c#%-XBϻ p/b8s {'w/nNhLVE6(_Z[?sSiP1cq>g]h Kޜ{6}z5pv14E{#OI" ߽ &vzQ.*t`v|SnJ}i;[0ºRwvYm![Ao#VA|&5Ծ\}[+pKxB۬뷨KYjhʻXn=)/[߶}r֟&$RIB#^*!!eJo ȠMޙoQap9R]lȼvxi ).ޤu>D3:&*h@'j&7s `"%TfqE4}y A~Pwb*Jn3a:|"O| 8o~H!kAL/22wʧ*2znWj *´[#qcgcƮ-PR Uۼ,{kB9ѥ7zD,N*R(K a~ur؋ `[ P~BWQo֖Aª YbeJ0cxmzE4%H2@_N <Rƾk7ka9:# ONiӘaWK񵻪od ]';hdۥD#y31πw¿p yY"bRQ9D` {]RS-1! ǒ-98CцXc&@|57b LZí4铌'.pzjl6 \25(Ku 92⎰z.FG0)(0Gl(,lKfcCbx麄6b,@(Zt|WHF0N16~VIN`C剃{#zƁ?7v%qwR 8F.:r.*cO-ZQx0m Htp)PgW)Zt")R .)kޅ%jYQv<9݂yjc1\BeQU3Ѥܯjd}*e]V'|)<(6+%?mE2(߁  !ʕdڐ_N/PQ: -+Tk_A+ {b3V\:j;`PIi]¥rأ<*|XVCM/-6$O8P ^K,4g k+}U%C&451@"v{uz㬰vAAXt؆$D $ ʰfmbč[zyڨ1^nEw?zN2@[;R')naxF8bY ?O E[-%.u˶[|09>Bq7|e)5`BO nȦ;#{ʅmٱҀ8fhP@r%Q9>T^0Oӹyǃy~f\4@KE7MBf9H9ܟQP.Oik/9Y{/vڅH3f1q/1vg5ഡ;~iuNgFb2Co[mܿ|iL+MQn!<5@XPg#S'CʮT0jP)D"G֌O/'ue u+ܢ}X г siE@Y ʤ%0y/j|^kw<F:Ҝp^hD)$v$-, "W4|P٫8蝌 !0Rn8`;. G|L&@El[$f28Ց}tpP3-:bӔ;:i;KyjzJnQF4׀Ӹ> O:Ep`C~J&R܋T Rc; ̶0m@#jT7mǵLE+-硈k`:7P^e?k-CӇlq ̵Jg؊ y3 R΀ <)XMo)DT7 /H\5bxk2d_@NPITv۞[op5yĂ.u&KUfᒷӖWoo܃&\hT[}Z#;wXYhNUy_Ǻ?O_+VQ14O|#E ()TqaJ,ݛ*pF8:$ )Rξ6hH7>bPm*SCVE3$$FN},6fWYV o |\30ڥ۫:gG]FYFdfۜ9مJ5U6+`SP+\ߗR܉qInjϸ xG9s@,ϯEyfh'TM?f:C4mE6=q xN')$;bLp_t+^HLxmd7ܹUݤQe(YEd.ƶύTTy/3oJ{%S`c@-۽q Gʜ6#3Q6 ,?9nd\p> =ŧv@?~q!hsʠ!e>Ur6h#wLစS\R't /\t5*D˷ ycG5Bv34!lIP35EOoŇ%*0&+Sm^C5?ZK3"u>eoˋ*51*lAa>ʨCH4g醾&Y_RԧZrWď[TrוI0?a(qQ<=b/g,ok/1-EReH-`+$׮_)1m5D:mOISC`˃HOߙq1 ) .P)![2yN ~_?Ţ#Y؋Ks mOʤdZUʣ\le[7˻n#U wntci&جt/K`I%?n$E>e PA/A!ZNrg@X'c9E(òcO4HksF\ʹ5>9=A):W'P=4TbG/3D8OR'ij//4.dBj|ٞ}jPxTVL3t qVTE;:==_ 2' (P1,yxq?_uTk t Z :.٩ƆKˍ8 7oXR-_FKӀEV_#s''bYt:wZ7~k{M91Ԋ!`W\ew`E b_X_T83tuRŚ/]4 >XL oaߏyGLN~/J{I hĿϖ.)N!ȁ`|2ZǽGEr0L=JdO13Q.z{ċUx![՜;sާ,%~d 4O@wla!ۂ)U{_GF]g%S ~,7˽cu|fgz( zc-xY<2 DgrZ}䒢Kx1)BI&cK@4Z8;_0ت ]F ,RXV bLCL@e}0nf `b޴fDBo ؾ}h>Q(\@HA2p}NW@ol[?s_&ٮgtE+5& 'FoZ;-9JV*#-frNB+L,kbgC,w,7%2aR,/0Ʋr8\z0`c1ۆNX U֛w~}<+@? 1љU?YUf (?P5xL;=u0OD`K,5r_+c|Ȫ 4:<ѭthGÑ\fŐY*|IJt;+N>d֘ ŝpZ k$N]W$0To#ȣ-4G2spB*iC߆zsO|!)Ń0 UˎeKbJSDL28"bbEf.|iZn@nOD"̗!{$]o$/ս~Cv5y ?R%m01#WДɸYrD$ӠMpuk*P`->MCL}c%`lY;WAThyo%hp3S4;v6ydž3~Eby0dg.  (R]D0vYe0XDdLr<" ×5Rŵ Ravh̥Nnǣ[ [Y_zxd2\ *ʃw.kWF"W>5Z9KmW;&T@ΌjxsFW2 Wʏ8=+!< S6-HiIkIX.uUV0L_&wK =^>-p|I)Mk-${% ;g$X<#-/&O)FV*#g0Ф"H\o=f>~& :?vr+%bJc!_D$XjƹK~\ck{:RdiqڙWR1K!Q HcOǝYh!3 M}+`ϢϜgܜ@h&'wlڄ[óu4c/͝E~Em.KjX~y{m4e?ĦKjsOO@$⇌B >)Q5L\t[ &Oz'JwK0IUMzȠQ6銠_X2^x$(T _f{䎰;pJGN!bRp8 p[ u 䡠N#=uB ڋ^8FI)!l h@ k d&lXj>kߟCN lxzN-PvgNԈ t/HK1%^D=nz]Crhx)wޮUTsEy%r&|ҩ`PMp%$CxUi3$azEC;XkmM-b)%Pki/?l+Fb*8!;w1$YPn V"εUo< }F9 9Ud63L$+||ꦐ솬WlXG?#ah^'- "٢JV&[y8+H'A<fhc` Au5aS;A9q:|#)NT^D@hq\!,ڲesH>> +]u#Es\^מQcv';@LCIX lJ{ ^Ή?''F#aՁ^ nk(/).)sc7"- ~ZL82<ٞn^A| 0LE#ΔL[1rRuػ $\HB:S/3763:x}(~ S>A,\jjLLcǽ5 ٯbI]G@__!9;(xK>\y)23l9( q<{86c$P]if#:)lAr;*d2sRºs8+%H%\yqVJǂgd2\80 a,K3m8Ez>&n0s9e*] +raдȘMSz+^M &as'7%&H \쎥lҌXc i#,^ѮB8W`lzR^U_)6Q6UT?>sMTqTs ୑bYh/g"q]!ޑ`ȋ-}S_ +A  [ń*_3y] q\.YRQJM⨔]ߴ4'-E=j y-7XXwq(4\TKEqm asB,ݲy8rADd‚}n(;g ,>|2*Cn_X{VoH+;b8SNF=Փ+_a:* ?;}qhsuyެ ]0nXF uxVEbn}XEM/ j{FƵ8th p*q 03+/Ţ[Nj2 !kΥ&[P4ѶrXU)Uyī4Gej񔶀p͚MA`|uOZʔ9P7K:_"2ns`.D>2%p7 "oΩs|.A 6o 0}mɝѩ۲Ђ$5<+o\/bu[2JnkwG;9YqG3l%H#ݒ$fPȫ`Dނ&8?H5,fbdBy^rQ뜟'Ni囹U}=8S{+EUް<:D#':<0i~̗:f1\?&[Z| )t gsk^3m'M]MH 8q[-\^1$3zJЉ)zt^: m0ی>M+,DXnv0 *9''riDR0Vة W:.{|x-#V4(k=<{ sr2ڄ5V&J@08'A#[r4ޢ!p2sI m,+c^yuoԕn}yvT?򒜤MJv\TtM$hVN^g84|!?7jھQ:LSg+U)eX=vcۏؑF@tUW,@{[|`F^ 6LNvL?ӬWp~X }}7'=/+XUvBRўblٸ+:m٥ẅ́lb( U@`K[+"٧ }jDY%z*k̥mm/0^7QPnq B s Lkf+iKP݈G`hh؏h K R S@RAJPdתK8]^y:}punepUˋ8AU_.~.f'yӂ]Ǜ\?&`Y6↵\/x{Tm?*4FPRiUm7{$h m}vzluN?$ckH/BEF" 3\,oZ 87gKHGu'xq6z1[a˵.kҌw {K U,[x7ʯr rG}2͝>[^ M~Sfrk r\S7;=: 70rL{#fJ칙G3S+%\Yv߲ ~R_"{&09>)]>|QFhٓ6q2o4Y^eCD"#|E>OG6HqaN~O_-Vihh牚ZJ/AwAPرl{/PF$<ʔ?!}*@ݮ1(ɉcONB 69Rm驳1abO30PxݘGPBU!D}]+؆6X r2"AXxJKB(y4njhz9dCcY&qX7S<e:%6[̌s3deY=T݊gS{oų=V &lWr*˹Pv |Ǻ!54\tpkp8uzS#<.;Q B1L5NVglL % *C^>Й HςG.X O}QnFy\J bmQY7b|p*"xZj~9@^eM4zV)p.pѭb0J2"_כ^d_(Nrm:(-sxuYN9qnQ$ پɽ5|.oN8}3`ڟfl;9!? NR{ U9 FV5T{m=$ds= ) >2q6`P7YfqiY2fOG핛Z Z]{*FhB{KŃiep>SlFi\JF0b )!8 *8pa3"89KyAM L_q&Δ@b̍ƃ?lcӋ^@<C_=: bͳfչzSP-W E{,f=07VM~E՛YwW.}zL;y^V0&eGߋ{>/>qYi-der SL V*pGVc-VjVxA2[b_L.KM7vg.4‡\76-?f'y3A :CJKBK{\ci;HP1b.>'6?C>Jb/{~D|>Y־f&)6#wIkzt$K*M>NqJ ,L.~ޖLkY(A+c&̗8b¦8x .l]^K{~XYo!.nBɢq YM)NTep,f }". þ7`GN,"EsAG@n5׹Xԉ!Ҥ(R< UD=PO `IiDdә ~ ˀ<(Eڦ=LjxjӳuîeݍeԷ1^g%zZq#F9Hr۴GᥛPɬ/5 FAvd;ZROEqffRj̮h|J_mMme4%'wUam<3gbj!kpsNhjA@ bJ*L=~-M=P?>uV]!V;)8N F7\y8&1'AOh`/e%9{Wr;٪?&AfQ;\TͤPZ-OIjagQ/ "ނ )_B [vLCʰuMc Ӓ(`K&"[ :P]!#t-z FZ?kWk} uDj3T8zJlP4"bC ^z{7:iv鐒9PbsPъ!iԾYޕ_ ݄f1A""[a-("BE3WkPM=1TTg;H_Q)5O)Gv_=y++i$ ~7b4x2v=-;nM4x\ZFhjDaKaV\v \8>\@ + vz ixC5R<1bJhQ2l!#mBI,J"&v!A| wLgօ$+HUٖ+xNc"ɼmN %_C1GC l$@l2rin8#/$r#g}o롰`jU[ӆg*m!4h(ӣI6m吢U/nvHN7RM'k*79\zLM/{;z ϒe$>iq[sr.KtQ9?LzGoBJ<ͯFx:vGC5 \Jс f4Y ?!nVxc\)tbkyS9v`Ǹ1)7Leܺ[`RM/P'rJ3i3E9~{lVnwm;:ǽ*^nA9>zߛgܡȘ}Og(.41xv*9`93% DW !b2xv' }*YޙJ^Ď{ׄiri`)AfC4 ){^>Vw#EC>5!iɶBݕG A_q4Bb,$ģ4b/GFj)28xFx <`;'nyu%MdC`dм~Z$fa$ꕇP[~C^ xTiI a*󸧩&T=1̣ wC.c,CH-v1#Ac0o&j3mba6cg)A hŰLo80p釠dH 8=%/ hpjOS.wzn'X8=(^$WDE?}qGjzeA |c .]WMߺug|R 2a]ΎwiDlUvśN0A (Jp̨ZՃz5 dZx!T6%txy%qrI$tu<gsH.H!<>0٠dz)4~!~\Ptoгn=}~Cf˜W/o >eSII%%Oͭ[M# D**( k^NDBa'jjƹ/V6j/D㖋`bs^'Ydw<.f$P8k30ތ E w '6훹Rvۖ~OAE#'a3)`Y6~zPP: {T׋_;FV2dyD1\4*F 4LNy$k"Lt'EySXw%<604(dz!Z\`瞃w8t1h 1;*U`$ГIŀ<(,=OU3m pfS![\=ah0x<R`6̘Lq"jMCzyxGH5xD>edBQ𚽾w*oDQuGdlV-qKD gSM_bA/ O #P=h _Okyf wX 7d,%RlfVAQPS4)z7r?4a¥67E^*S7 KVOBrs5 i|P70D JY(jW_TK7%W,<<_'ft/u'a[A2=}7T}PBtݸ1 0}`jB }Doʈ bcڻuxwcT UD.bM.H\`o 2/}c6"WS>E'/&'lH3]B[PWy`,`Ck9 i6DP?/2oc#hm>{$(C!9*旹~ft}r._5wKoՌoR}Z($ п hZ ,?zJ^~re:g׻ųOt֡X-TgSހa5+y!j&6m[3-0/,ڌTF16 k+or[F 1ϲ~~VNS։)Xk+$bbdէeznp'y̷g֬D ?[e%$oR;WEciSn@⼦!7+fsP̈́PaY4v2;s%KVW!vXo¶>T?QS5 91@÷ZIp/mB.M/4](t;k3W± X ./ H3SMKetX x=V7ϻW)oǘ7! e7CE)Iӳf]ʒX.JNnHa" $H=Yj 0?*ہH$+ < =+AY~4(J{1ܗ[Tиi xe?q$z-wcsFX2G ZYR!v!'~(cQֵDdKpo2 5B&ϹҖb ܴ)'-[ /-L1db62UhAJz9ޯw`Ma jjPrG4ZOѼdFp[R#K#Hc< ]\"|6mOţ[%쥳hZʯ*}0O} HXQldBۗ]wybDO53by淐 wLQY=D VZ5d$p> Wl#,v 't*KHU3r_BVl!mrik~\h ;JAK'gQ9qNV@6ok\}?{D6O$S;{[ od/>h>z}^]wad>@9v~2?`Q[&3X=pG*aVhۛyǛnmѥ̲8b<ßuf%.&(7 O g/0%] =\o_kyNT>hMVewP0h;|lR#uoXlAHMzXa+MHIN_Oc]`'I}ȶi<1~(ӓc:Xц 0'MxA@:!)ݔszQ&ל xPB 9n߻/ҽ \X8V)w$sW}pXewk[ݚx\:}HH;, l\&^’z{uRjRO,#XDZ .qX/M<cil.#),^6YDMEDZox}|MQ ajf bCrhBMN(pg)WbMBhA\y9G~(Ѩ+~BPIr<ւCHc1HJac—ϐÜa{t}E.n4)g7_k'99v *MzQ3W!\rVv$SjslVԻ1\_1aH4D. +Bo(qw;!c>I&=:km49$$B9ʣ7e+ 96ߝиЭ5CH#JxVNBvt&i@wo% 2vDL1dl( `>S~,[ȗ=I_q,v#,|.IoAϳPy RbKAmB^Qq f;Ax#j(ѷ&]5DX8\w72KzNZ^(_%-:eiXdt)<-khitj0AÀڇ̯S'3d+V%LVKIqW?&Xl7TƒOАE jO'ݻ4!a~ScX`vL씫QX;!#;}׆(3ɏ6Tޑle1}a ia^քM]U8& VWw[#9,l]EE& rsgdG&wݖ+;ַ莆 YQ]ي"aA~y`zO.[SdR'q^1SJ.›ϋVC;fڃg|HC{%VU"Jj"3ߺ.o?`in Is e4Ipy.> 'EB,vF@zǔGlrPc.77##=JYҤړ*:7&/@2edl4k &,?ݼ;Z.,]T+p:vd 9=wGRn$h2V/MiV 6оK̴.~X CZix8.eJtn-Am`-g c2dM!U.‹x(T8TE,A@Yu([i/[G?Z:i6J DO =wsCzzx5r}H{" GO&Rs&f=s6 'z+`.Ow,`^Ȑ&%2-l0_T2d3CT-Ȯ⬀L/hTXȊk[) UJZt=_|+ >}o%m\;ndlٟXl|M2[fڢbɽ4%UBEA ;\gk B3~E ܔbqilc2y4Z6+ BmTbC5`θooUB{fG.d|wZ2r͚Yhoi[S.J"hQ7^3kY]"~庫k`QfL ~.Ɍ] Ɇ{DrCɳ>( y웁!61?oys{ERVΡ#Ȟ'dbmCJ/IDXH g]t_?up~:x+#H&A}iH$`$h\Jd:M&|9 )izטHY"7u},=s̎;ʎV;y+(L};}S4UQ^Y۵ܴፕߧϨm.=-SdA[eߊa;ƴE^D M_%Fp`%QNN׋%r&9ڝ zT0! HqIᚗ`jKǴՕH&93j `'PHʬgVZLn+ jKsKw2*)3 :C6Z\ 4q=h9) W70)ٙg8XیgXB ?ᒩ^6}: &6: eҹa'C@m{T઩kkF|/~ʫ̼ncnsg+P є+&+aFSϕˠ]rro5p$D55ē+{ vq@=u ScZ~ :eS[CI4mŁd^_ŃW{>;"@leƑ==X(^8' Z[!]`@0V$eTi#fn6l#JC2F1H0`xs!-N]3XPRG[d e@~|תb({mgX'NɇCC ޚyQp$>YWƇ~UW\tw9 b42RGE`oؒP4]XI˶*>%+D6.K[o>&;$RCB5 CoýScaZN;f@HO*NGhӯ_ 66o"TԕTȃ( J:4U1^ʿnȚɉbC)k"9+n.,i37Uv>BDށv"ᩯ.{|$ia'"S*Үb,aԃAM `Ⱦ?VaZʮ720 єc?["daHW'j yzQm:v* (Ii<ףry> 7Z7ỊUr BkCG+ܫZ3 78x2DZIڇ}BYwFzT)#_#h )%}q5.'3V=G!l-X,GfTg7 v$}L)jJ|{/Vl!cP|'vt]c2=!Rh1-ekzsl!LHb6p}.oA vNF{V :]C;} %@Z,:lu-yM,.:+2IږE;)gk$MYF,4R;ϱTw+mLƓkqK~Xf5Tq>JMhOne$Բa 'tezׅ{U?kO1Y؃ ڳ2 Um^՘ @iFP5_Lxƀ尷k-;~V>e(hvezAG]Ԩz9&x:Tu99*4W8՘!3Lfg/U=gj;ݤZ^gZٺ_ԛ*:G*˦z43=t-QVӴ̵ l4Foǻ]1 rC*n|( Ot+-`Y0?6S>HM\KoKĄ MT]d*gL_ݮ 9aP[aaV j8}YXtF}K"4*x'MG$4zsw02g;[0,YhBGB|zHݯ=q#IN1&t:Ee!b&ȳV1*(D >:ii)_R3lJj>~1)`RX 2ʘ>œd+Ke9 ,m[|Mi^`4TlJzJ6?95 5(M_tvEF)WK'uv}HFZt:=ڮ^w2G}f5o$Ʋ*53oכ,?f$߫ sTD`wyg]8}uu !iK!Gط4=@?7(6j`_#Ʋ+a~*J$ճ^*eix̍V# gZ0>~Ĝs?/*lUxSvw*frxq:9xa}Hrw&#h`cE7z=4^  _I6Iϕ l,ȉ}po3A\Xڳlk^C[ !ucHh<09 Og 9(-ŧGK$rDL&ɲ*Calr;Ǽ%%?k.kJ_ u^s7p"wuݘm9NGo)P; t}nXuʑ/1Pb=- c"ύ~g%e2*K`XH:-єZwPr:Qq݅NJыZ p:Pd(ז6Hq~-깼p*l Gd% - ؋mʻZ_@Wq't1,lഴwHn7u> :#vT +t[l8XI>oN\hI awoQRIۡB*z.KK!8^HGBkǡ1}@bO{d{yL!p% q[WK+{\aMIO)T _?%"]GfY+W]Qkx%![BŌg)Y /e`n/a(!F9š=H6$-bQFd孁ǰ8,ǠWe4D2.WI0gtj7)0 f+]Zi=f[ C/ ͐)vT=-.vXbÕ>3p]:L˾-+H c40MlK.Gv0`1:ja5l@򂤕"`m.i)6}'&(V$*0$ KT /CUaO[J.@g2hA'ZGq{ꒄ& ,Z;+. ]Mj5_FLJ틛zyTo,&p."W,=x̹aLWv[cKxY&+^p'ma!tZkΐ5QU@_43ҳlQf* Nѱ?B`(ֲxB bɥYpc7bnʂJS A@LЫ=*z܂ N y3dm$ؘ1aR?c#օor@d%{Ȟ{N$5MbP=z{BA Fαj-oe ܒ7~$хd-KWwN.z(mvǫ`ψu%J=-/W|2iW JG٧ҠvxKg8-K=-NSJ(m e^ڋeؚS/›>~N}AJ&+1 # d7Z% iQ= yaJ󿽳O^w6N>Rʐ"P@`|!cwTe͕j1>gE^ _$dSKф?ϣHjM@k໖ zÉ+ gzbO\DHz\ɗeE*@7" ʼR1ؑvʦQ@7t+LL;\IƖW{OKΚQbMrlr`_*[NkGSXӜVիm%M9"IN 1Hyuk!bwтGȣ3`TOwgw!L*ۂJߚ'wmʆ(LFku/pn,\)@9##J4 U1 gguxӫL|u~ a=^ߔ)`gd+)hh.q~I0@Og$V&nuqx/֘d,cI ]QN9,Yh(6-B;] X{+AVX' 8Iؒ7c=蘰J  s0Vt =j^v.E!罐iL~\R*{Zrɔ+߂ѣ&sr*tW)rFD 2B-fv@Hb қTyԪsz[(p&NB̉e"uL.#˳c9L ;;q !<N#}piUd8{9+r4r˕}뀉v@1nD° gY8 Bs֧T 7U4X+KRAB{ ~J~Nkb'E`+{CLRdn\yfTp TU"IXmY\h) +cH^*r=*Ѹ'v~EuÒF˖Čv!72de擶<4y+`"&Q/ Fi,+'gM9w{F3y`۾'Fc$R%ZAtbC{6ɾ4=]in7B9v0 朣,|Qt8!I;}^X 8V7݄8q9`~˴!aGO@y̻ȻYU#qqRR̶cg^Yqkv8=_)>o)mɬj)y![̳B(,lqX:+(=XQvoc֩_|_QU%|%)84n!lg|[//O"67fky sc۹TD/$uL6^8/CY ](.F)6W~ya%Jv./S~DwH&'vNK6 ٕ{PR6d,6aB2ms@ Kj8b²xI?+n&-}Ze_*UD"8( *^ $~p.UcrAg 12יYmVi-``*Z!=dz'ޝ4}]fqE}(X\5B e- 9r8t2l Q']s`\/`oбusιS3M-i$jO'I M;HP^) wE(_?\_۪`ߋ#PLwu'~v"EX.^kvdRgFbPG܂e {Eq}Wz2]o?q#{Κ {Tq[ ج`#|;}MKMu;2VGijޑAq0/UH$rx*Ղ":H݈/fkʬ1saQ\=O0MX R,?˛Wunj42['. ^f9_~ J*[GfOo۠2ih. *sPgF_CDN#W7??6nh_8 Q hacc3 b̠w@'bVydT.I▗7a9wا@;V>ѱj9אB0 ·dsà4+"\gG& zp*lk> 6tZ sCvt#y~.cWOlXP\ACQ=z<*L;hU2qV*=Fz%}V6NKygWK:\ʨ|`RT;;[r6%ekn^Fy?|f6~[B͙쎬>t#C..>ˤM-~k&BH 9UXT^-KNiI])3`] 2YNs \$0]g$98d(!jKS$ Berǎ M/D3^q"k~]Q13E'~oŧj2sXkӡcFD93Wzt{ [T3;+`Jc6s3(rn`vA-쮗v P'd]Ϊ鞣>_wPqq6ٍU|x/ 3[Sk׬: 2b"J%]H_$F=39:N q'-S@ȣMɼzz"KN='T^^xl\#8@+0vZ9okZ(%cpѝ)XsdG둋L'#[ ˤ~IFhHzPwgְT낀بQ5aG~m(m䚸uCia#yZwӕӨ <l DfV3ygviE oKF\Y{Pr\IP_ַy"yBH/?n'4PfS2jjӎ<CP1N`I 4R*8R(;Y "4kN_꓊k4_Vt0ZimuE)rg -2d+ Kx\Wй~pD"]^)TGE/ϒ&7%|T:ngrV (Rl: M/o޷u+PZ;B]Nf#e(пY'{m!xkuX>!h 'd4IE~Ǖtԑ?4'o N70a"Q]sR|.8`? {s?sX *uUkUcjBP XjDM>Ώv x yV_X³| (ԅ fv߱˄D"# DwshS-Ftִ "B>p٠D#W` MU'ÚcO}($nS $CEk4K},Úyrt#[|v߅J6 H-=sDe\Gr|mVk&m5} md/(OW+C^6\OIiϓYeFtwy=$BDH3'"V`~y{ܵ7l :Pt?,bu{egq*hBvmpy4Ck$fecNc@?CWa"5:[˷+ 3P"apԙ>#>V77ƕ +^c|-; oi8=*2(2蜍J MH>.!zɖr'z!lS6ZpZh̃[H$=j @*j2$1m=%(@fUjҌ )zINV^g[ fj' 0lC 98DZAղ .O^ DRKZ©( ù:9NX4P#xmhER W0=Y|AI:1,.{{efs1Wm7\3.kM_Y](]7/Zp OluSΛ+sQSivݲ*a.̇6434Nd[McR {>e#x;"){EB@EvS)橢 DlD'R[5Z>6& 㗼 (v3!43D{pi04qy&A'S3Qdh2龪'0r9点gCU/]0Y03Iᨶ3R0 1'2Hկ+,%7=mv>8Dm. !~d&[5^Nf0L <_e3#ba%ڱLPeҖզ4܇ hũ⒖S\,~|̧:]m*KPki)EXwEͧoBx$|dBT, :[HNoTM2fb^dB'1ѐhKw~f$$ :{KJk̄vh4ӫFݍ9Qý;;^RH%ë@nXi^>38A! H[^-{k:߆FųELJ%}5vO62r.}eɝzwqS0l|!B]¡e`i/ӱ}_?Q]c6ʢM,vy^p: ^)MER-15C挄iC ܉ɚJ@pSkUm?`_[%<xײXED#>XJkC{%AF =:*"k7] jQZvҘlB^;J?6hYgYz};.oK!dө!-.4cd U ^ ΁RVr92D4sLjI FhGr1*"a?5jpw:Ə5Աb~y{koh8!9ܔ4C_񃷿7:2~8Tbh\~U.:W2MvLb΄ _i.Ҧۧ/R,x_J9 8cdnӍw".cp4&#}y5SPސ):e35> xk&Y:QHcKj T Y;h:/2u$ψ9'3=CeUA]F?f;1jD`幁RqKoWzZ :>)j /;yu6>$.Z(o}u1'JT2Q I_\"7#/iEC._vP jiu if]GR;qόPHu'nk.%_/7ӽڙ,st芲6o^{r>u,W#砩ԩWzwFc58DbTnB~zo݈-Bdl~E-.y.YNe#io¦!>C=nr*7|yΤ6;վ30Sl֍&\h敎J1gHm_:Xٛ77AOTcR{d*PixoHc|%pX"agG!@k񔟀gTCLُ6.\1~ݺ& bmb.n`};o`yӸ= t &0beLŸ:jce)[zUJ3[KCԤFg9f|@~It[Q{3qT#a5~(>1[LI1-9rH+kA{ )V 49V_Km?k' E}h;[cl.`qЏKcӗMD!a E3m/3ⷓx V~z[aKz_]?zfd] J>w"VUՓ%R9MsP Q9|kK$.G@F}?^Xh8}\dK5{JW%6Y Uq`o7RH$S:R5$ f 3㳪E d Bw^*=f9ߒC3?yRG6cMNbc䪖̗h`zcՇC, Cܣb7mF_l3KK${lԧ̧l (~} ]IjNUٞ3(0hxs7 (X#?Hq-$XP8thS5mP/1 D[B=s{U'zIO#ލ 2NZ7nZ'xxOQw%M,!NZRgLF "/1k,%dޗ1DpmJe.&>õ|ܞjX_b9$_~{4-{oF"3ZBH Aϫ)rfGD5 Y;10O@ty͹x,[5S)2bפN43/c ?&pMﴈH,4etrVSm?a[^mwr~W&7v-Wa7V}L4 e>g_q 'xffk.:YFϠ˝VͿ' PJyΜn:zxƲfbMuT.Ҡo.]u[?)u>'oA?*0+R 5}cv'0 =8T>gA6J"DM9 m a恄(iAsÀ=(FkG^קŏp}$^鰳gJbznl:Pp4*8w⸤!)$7PYiao~a"RCrV@q{#-?}.r\E XEnYSA+X1+ӊlŲYj:/3|j2DDB(^1=@7wKl(7T9 B-.q>wk%[ 3)vb G; B? i"Cx* 1}RK':-_ BۿCT7&J#/X'?ӌyvA`6QɪKCC_ኪ^Z wSINͯ޾K)_bU^*zX-iրk*{~0qftdӾ鈱} tFeDt, 1v3^ST\Ŧd՜p@Fȿ:M6CHHHThC\IHH0-Q—$j(*P7Pugpq4#;45_zk}Ⱥ;lJ/H~A&J jb.ưeIB64 @ئk#G LՔ)g\|N㬣^are}w= ^69r{^kQJl!wU')ڌZ,8i.0;oj@ZGr6z]輊yC |vh JP@U|~P?ǀ_ \+Bz H̳9NuuTk-*Ai;toɐɰխN!SO-ꕶOE0LEOT?`q_fxOVRswoi߄M`72O= =TVUzvVm10h> -vR)BۯQ:{ [$.Oy Ϯx=rŏ SJ2&AA.싂N#mJmSNC-%qC~3ǂ3_ꄝ)רkMRLʯr.>" +/4p=v|]JyP튼%'&46Xn!~.{zLR={V{.7NS8@nbzm2uxLAtB"H~&㘅sޣ&K Vhr]q̹N,OS.¹$,5ԤަXi_v= H-n_Ve{M;fxhUV*(ޙ*-s.K;HYυ"DU{EzOc-Bͳ2'Lw\9՜Rk(g"J~/ڍ-9eyRthN$]sg`\*sLAncT4._y& ޤ3Q ,@hF¤5x3*Cؠhc“ n.r߫x~N5 %8nP6""@/;h+bɓJ@B&FNiݪ6RU!:#)W'[,CF,!IJ^BAyjSFۦMۉCue{@>o?[q &gyBߦtϨ-\vV7.8mj6&I[(M֗h)6sCsHZR9k}  > 7WzjOgf^%'+xFO,*!#I|-$ ĉAKTq`O޶q'*pCX۽]$BI@;o`APuP/&d\FT.tQ;O5J=NQdCʓRҰj\,CQ8b5f]jm֢>xց?}9O`܌CR 2ij kd1'9n֨T``f|MI+s7k$kjavF!VzW-iI?8B;_D}z&ƿ:`WAe `7Fɼ; \U ¯8m%TFi}ĭz; M:R|_-M%f4 "oy7=+` ;ʾw42U7$Ol/wƘn`5B8ԑmmsR!X*Ce r]6$dZŃ/+f.C%_T۝i&!Q7`B2Fo^04*Fcb2^sMH=@Q, !^߳cI Cy@|2ꅤj YpG?m'xBxHA\9 Yw,6g$9ųiL^,g#W!P:I^*H !J$;. zh W -gi\>{=7(oS[Ɋ9vC6'~7܊?A½IJZEdxl&y&PaIgwH&)AVySSpg]%QgD *sɋiCZ29 _aNRxZ%k>玂#O?֪&T9?flT& ڗ'7)+-Dʝi; ߌBX^@f9YP-f"*qKlNpi)+ `) F"4AO$SKQeAaɛ'i%D]hSS )ޯDsR.\:n`%a0qι)#ȔRgJa̫BzNfYR+T#ElE×^q m:1V1KY7& Q ]fKahş =qp,2R\&fiij #73xHp){bLCi}oܖDGZC;HHW|"T%eU:eI]@~|"*  Q{L"t=ļLBʿ=;h_y"XhwOM y^3bb3|8 S*` ~B?]mLOu0&TM%|[l T$Sa@N9 G")g066\_/әa_%٥_1SKcf84tecS?:5w 7uR!%& ?Ff/f4Yu$:Ng)9 4e\uzBSiGݡ,M۠ƾd \A&A͕|dM1_` C4NB]CSIhyZ=侍ű∄/'=rJ"E u~f˧&~3El +G$!JpUx]Ɋa{m/i0~54!u@B @ N߃K4?JCʀ̑1, :j*;mu۵E&r>?+##<CTyWwWŠ(M( (PW$~đmrLZG 4Y@O桁+[P1ޓX>-؇)d0HoUNK!48Tp|p9dQ0`*, WOXA?lGlpƋg4'\>} x80+ `::w1CV_@6H{Glĉ?G)R2w 4s$ΚԮdֈ4X~xI}gtMll552hLtNBی@/Sw>w~zq\5`sR|25nueOqv}JxmL>|9#Qq9wzJXD|(>>0e/tOI}qMn/Tq!J!.&',XOkG3`ui4g, ̶L9pr;Z~A<4<&A{6^C "bwYQ_Oi\H,'H-v"@;)&e\KɰбDDۈs1ŹK|UXI86qM?fo3kiR!DÃunNSJ}C9Jen ÛP.f%%FaY]CV>do8ɧC dLN % a[ڗbaӅa^zP3Cx1)Pd61qwfky> c  8JODM߳f _nV,?085AB~;62P9Y}/&("~|-֊BFY"vg,A7ԢF.Vt?cr,X3+ʗ%QJs2\Wj0Fw0kI3T#[MԕcHyϧ aS^k9R \9%&FmVVcTV4cܡUYҩ+-!^aXp]Yu4e0-N. JbI;~Ғel.9(GS8ivUp`P\汼: rs8ڶSWW(ogM]LA Dx}UI})q2?\tf2 RE )I6IV6x  %(fsֶ)&^5*JTzv  R2ҰpRhW_Kg,$ 7)a(l (!+D @rVQvxM7(Fݱ=mF;o/돏#۝Rn.-v ܠbLrh5%ay`[!]"[Qlvvl} ͙\M92A= l C7TN&ut]"W+ˣssa?|Ԩ˓|_! dEV:#8Q94XM"HR@Z.ْq'6!Q;PK\p֖Bλv u7"(7 F^P=cO^3;p;U ) AFo:y/8_|PڠDώEEPty"+T׶1!^U>lh/yCRkq[^#OJNX7 ;FO 2SXo̟lMTjhgu`QwmhcD\  ۦ^â1wm!|Sަ>[Q"N1y 'U%nϽK @ duUVan~=ʄv!>=:=ךFL ÊtJqiH%q P*E6_A.Ĉ~<SB0+%$? }LkQ]*@N9O\JYg9G.Tkot`ګGKuQL(NiQ&)-%_O)ft /^j!y 9۶`Wx!1 ޕ%MXf|r1vf#܉Y՛1^=61RDL_Hme~ |(-m mg2ܔyD‘P1Ɗװ鹨XgQqͩDJBZ9 aܠ8{):QLy"p *x?h.q" @nvN\">>A ܯ_ W KܪTCÎT<ɎI@^Bx𽇜V{rE{󟠍,(}!Hۧ a;u@u`q!*ґ5ۏ0'h22Xd-ʼPU1Π6nFYν4w@aj0t>W^|mT7 0픸册H&ꖛMd$.N2בN{MV ]dFhx3q#zRj.CRBE;Nʧ4[v}Hc@aOt*6 z:x9G`_?f>ZZǥ 7X-|x k)I 3,CZðvB "»zeM6GQ/mB+>?5B_* ـ93,\('!+qJM]Žg.b%A 8+ɯ: MO1~OxiǸM-V|(n{<颙6KkE1/])])N%U%ȮT5Yhd2+м to $,?j mwj+A}] z2#c Uc .l cel.kA6JXGL+C8dՐ)jɢ֨rdDT˧ˡU\cff jM90"KaINӜ p93eI~K-2EJvjv8<梸p uFH(xnEs DN c$8&4;?|C0GZQ5VWNX0 tuݨ[R%՞ M7|ZGM.w[C$O=3Gj>Q|㏥@VX򁈴nTt[8}v@jvYq,/OL"ԯ'3,as,C4˃Z>3kSrg =eNnT Qs w [)o lfuW2kG/ᤷuܵNYGMm8;'7O˪ZZ.Q)'1]82FD>wjՎPx[rV]L 6.U )CAA?pKAcDBv6)73}C MI8JwR$bm5c>sǕi_).Qҏ2& Eɕ B\7 ;7+ x,Ӽgj/wD,?B!+_unw OX 4h6 RHM)FwtQ*U➈6 T:$;cV~tT0|:HӀ$C9?P]vYt n99r- }A#G_UU465#ti鱦w/t煉%j /V?] gefmk9$! X:Ģ$"_-r? U#L?񪨧gHh+Z#O5A wgL3B$,'w'? D*{ ҎwxG;|` hg0DDJ*YƮenN79v_ӳ0@ԿN0r~Vr|o1g2UImB5uK(Qч_f-mpdgDLJW$yMJ`DM*MnC< ( 2LIfl UO ?.pg(AZHfMY"qӯY?PI^VzDT٨1_1 tyk=L0Ydi.LD;u0t>q愩3Ee&U[`V'8q!Τ,IG I#3 $vGtC ̖>F#ec: >u3 Φ<^9%n_T'gw15HˬQS6W /ZJ 9]IAd- cmQX嘣d9>:l :c}]i 2Yyuޖ-զn3%\.rN0M=RRKbA~`wciޅ%R)iJj/c Ui؆ ڰwAl n0J8B k$X'3-thm {#[ X&w}(023m&1&6V`%֪)@hAL<ꄷ穞GjIB % j+RFcHn$;{6yc-5KU4s?eUJrs_nu5t̋iue[7n VP驍_H`%IGޏDiy.]+ 3S4# sMʑ58B>nDrZoYM}G~;e:$Yh}ʼn`ָkr?*NP3';2PMŊ⽯8k3榮م/ qƘWW[Frl(E}>dغ1U3_>4pM~3hHΣQ0TXMsȧ1{Qq qڇ0dgL{o^DhI0TlW,b0T{P L,{óLK}qwQgnHD_l;ClcV qgvl;2!:Q `(d !9@:)-f-ЫO@琕yҐ(j?^W}8Buzؚ Yhl8|_T[#P41mMZ.rY$gMAKg.s,tsWaŪ ^hP&K齠&/!ysףT˙NJ|5(M $~ ̕^Rh3[]/]Ars@}n!4=x[hr3 :)ܱ9̗nП̥l7͌-'7D\X gqbt['ƙYѨ|du|eC%lR6hN; iP~> |I8Daqlsx?LXz\S "8ҟB$&Yl4 Q p )$J3txbB*NϮc{yVű2k Pq 59\Lf6_%~7n"Ga*m>agPfy43EZ?ߗXZ]%$k.iS買D-ϮZo-2Kw+OgIp϶M9x1L,aNWL+ɘ;".(GJ,{aS[yi!#׊fjwvwC*]NC.-gl  .VL.:өv+by۪Ʃ<^^ 6RR*=bkᎯ쵁0K8(~To{:1/ܲ[- sA T97Ol1c{e(xAS&e9}ypLD(XW*isTDɅ ⑀[jTlT xʨ26U~9%{tKkC>iQrW9Q r z.~4PU ;[hC }"zW+#k|-JSfP[nGcw~¯=(hdﺛ>f(D2$l$o۞do 4_/N\ܸE}\@I40jQo13EN&,uFǮCǨ)Ki;4p~nÝϔѳxjP tH[|hXBle f*r5C۔RO%sO؆,T$lTl2@9QiBV27)յcu"3\Ԟ8_ntnw[a 2 )*|js1I)='H[%grRA9E]B@fLZI*-`M[BSRZ)\ J)BYblWTg]e 2|YYjojAn7ڳ혶de//(9x"U_I5?//S4y1 (rXc$qRKoJ]Q7٣"[uw])0,hRq4@Ʀ_tH%8ފIDՃ] gY7Ga-2^czӆM@>+^C6_w|V_DdZU1§柵k#sKo)YRL&Tm62lVO>~hXзgqG@F+2H2,*>)cu\Yr1C*h/)P4ZoD50qGs2}VLpÍ+]7]poH.𶇄\|*R̋8^ ѝc ȮPأ؊MwׂuNׅo71=@jѫ1}fVo@$us?Z}o+0=>h!{t?}M- lDpCK'>pA`oL}.z%=i;q&֫Zw$ε7h*4p%gC~7j@vͯs8}{V͎@69GI+蘧~( WWLϐ,+##Hu+q{ ;z_C{/vDkDE㍷NGqZi+ $޲< sJGivJf%H=,ۊ*e\K+ ?ʼnWUO\dJz3o2uI8%3EōןAjz5,Cn{8k|fuKERm#Ս5Fng (n?nQp'=X|F8iH`˓`YFt gqH;}l˥ôU> WGV|3aql١~Z~/@C2i2\ W$d(;f87Q$`P *Hn>,:XYHz-7[󂩠`C[Zn"y?{SR0iX,ϘPf擽zV?[ֱ?cTɪ$ϻdž ㎔@ \duAVV;E1%4\|bø1=O'f2qD#da|ߓLM6;G8m(,nevfLzוE{ѐ= /KΝzD[iTu8QpkMw2'Odϒ^k/kQ.U>a-ˤw J`46~J $o< Іc 4Ta^,]M}Ƿ+8hҏ Pr8\?ޘjhQ:IluHF4[,˩#_ATÍ4v$v͉i'A!;HndY'R#27%|B̯)cUbG365Յ~ˊ*̻+:ЎJY8x?hKj5n ,H6AܐgXda Ӓгg=e"[ ~=UܼLav6}:zbS23xS$Zd4r$- 1mȽmHUCF9>PDʆ&cyo8aR|K)JH(ܡ:*c]=v>f^V{T c 0VnDу@YY0@xrcCݒ9-T0nH@ʍnL k] }JY ~fC [!x)b$ )y~X^tv'="2! . m[kg6l _ "&?=lm}b{W6*@W=4*P~Bi9i.[(Dc0R1Lg *_!zgRY*]YBHEN?ONt#zwl1gø'oCI6ſM\ 5#sV^zNJKVO:yww]ޕ'Iq*߸djDïJZ]GD4oV>gw޳?Mlad Wj)JH.?RNr?XuV(K:h3αro9 { t*;?f7Lkx]K44jƁGdXu E;&s1e:W#m&oǥmhnfy c^/[!c=}86lIlg@ EOVdz^%3=v_{GVy. P]H[,+ +{gM`ufҪyHlw2GK qHV\i"ͶRc0[{|ϠJ}H.Ήmi "vB]= 2,f={.u=\,! k!Y) uXTS<# 0>yujGWm re̛5FJ6CVTuzN>U?W0r/=c |L=4:5|6PES#'я] *_>k ~M]I*7X; &]N!oN\l7xDn-\E#NV(yQ1`zgT1y;nӐ  )bk7AG'))f%7#} 4GbA{uZp*m2siY[Toc~1sDQX4-YE*]c7c2u IKR~\bYZC od!f񲵉vmR-ɦbD^(n↘η&Ԕ] yy+Xok!Togʖ N F[_?B{SWJDvpe WQ$ϒWNjᖷPK#=:F`˞,_$oTh{lZ9̮W8_5nk3R^ UM %GG5݄*L|~&U7혠;_LX٦Q)cyY[Vd8b &E0XX 1E> ]fXL$x^ya%:x6)Pd"QUҤT ~7}p{qGE[̴ 3s'X^5eLѭ0A`@~-HYX'jxY.WVmX%KD.nxXR(a財${eQ*h(꽢f ~qH,r>e 3=$(.ughuLtovs{wz ]G"5>dWv? ꢴCQE禕c oڹe0)1_W 5 :bsNLP[ -9LJS9N! Y15s rz!."`RUe0+a@w:KoZY[4T_nLQgN5';űv}cjC_bI/&%QN@˳NTP2fR6_٣j ost;شA÷ %šC郞s#&H20vg7vj6|[4M*gl< SHAxNJSf ACy(G?W闒eRo33wUNE_s}i/ٞ'B]3j= TןEuQAerT&s3!+a<ɩa^%*䯜B]/ 1'mW%K$SXtnlYCJQC\ ׵ n ͪ AN*J59"Z3C|]eJ≌R#+SQlvdl2Gh% 8Еho]hm۱9\ Ġ# )W j"VlEjp E)8t](bo$,ށKJF"ܟ:6:Wj_a }5~$Z% {-aD9>.t'lO~t'OZ;-R2LB- =±;*"/8ex0 }dG %^A&T{葝Cr(h~֌qLD=svch0w^Ξy̳>[ is}`i迮fiW8Q}31Ac&g9NfqÙG]蘹!l,r]]ײO9-_ PncAD[,<`6{#9.Vj,ᴱa]w>\ 6 }A!4F0?ö 2'AiI:F̩=֮DWY}~J ۂ4u_o# Ln3H+c灯zRmԈ>O23'Q ;H5p-ЂK&=pˡdba\Jj D^y,-Nt2GqC~w T#|ē o"\gy݌<)hwѽ'܆~riEF6$3AlR!/݃MBƸzP읁XƸ´#\)$ ZeP~sFQFg1]d/Z)oJ,J3bλȮ9뮭t+5 [ߓ^ WbF́ "F4ȫ!*pt0jKEc{LЈ*w%Eg@~j>T_T^&cVN'M^u`,Qvfl>}[YurqTכ^c:_Ĥ% * }43+Y[!7 k͋UƄܣyje1ZtiEcl(Ȥ/|5|aJerMݼKchA}/Z>6`cҧXӱvK-T{DX7\< uZ+e=//'0t;3$׽ȶ~;U署w&6[["tA qM>ZҎX<s?p*(2ca ~e}'N1%ܺIUS>Z[0A%x}1)R鵜^ i?b$4N?X 1*/4GtEA&Y){iL 6!y*kYD4Ͻ($l [䴹1e$"rRs#8c1\~.fr$DrpibCd^nֈ08dL&ȴ: D*jb(6SPYO.(ޑowkEI ѵ6X|߼ ;\QElNM#{y dɿO!#G2 MIWx[Mo6L4*h%`Mge?ȇI])I$~6x1r5؛LnTِizM NzHOݣ ht$TOCi8+њ+I9+EI_EV;bA$ GO8:n8 xn"ɿX`  *cv^ƋʻPiB?}~=! )|^Ԫ5‘ـ3ďN<+9͒glw ib꬧>E|y1eu{=rJC!ؔWJGkmZSB(?uxLG O6[ZcIZ㖰!KrWvCY崖܉kl'C-eh{G  <Z4B]3F,iz"_ႨG7'B?j7pn=r kƛ Q 24?.?ѭu\`@' ,Ucy.9NXB>yWZ<XHyEk!4-{.G"7s}AfV/ig G~yN:jS1\3(]Ds* 3TZ~gP=a㉼ŢJEY#IB/YC,̰[ Xx DM56n,|50pi*DH)!1R+~ a!inG:tܥ' 8IŞ5Qu@'琌y[E\R?9KIEwdћ{./Ou)28<}z3b0:!AHዐJWGtc< hV4q'egVˑJeξj'7G=7VakHDp߬{ؚ9)ȊU.( vvB3}<#2q,n T%?ؙdEypȟ] "\6lq뭳p-[-ա7{KtPǍk #fGU}Yb!O\yMkz˥$]8gP Hl^xme]3N-"˫#Q5>sUĥ"&~ߦK47i;m>Ek_D-IJע)8+5N;m?Ċ?Q?X"\=&$BꕑYc֭jEu)xv|vc]YwȋM J~ʐ%Ͻľ| TPorz";T7 H~|؇`oeQId2[>Dldqd^IbVm:a}X*':~maUo6rr48 !l/sWn+gDn1b˹a~D~ (|E+R5 X 9J,~]@.k>{_1Cs#AH$C|;Ҩ-{Seբ'l{FRJN9 ^T~nAȽ46xCF3lX'_V{8I(joA*E Vi7}fn4+7Ҳn?kiTewX惡 (a_1{o*u%WX]OkdW0^MUH%|>cNs.y~-0$U Vg>o->;G8CM3HDψO euضf)@5@N{`C ]aF5?#D" (V;|=!f}T}]8[{1 se'1a䢣Wɺv^NÖF4'6 t ̾~5Jc@d׋.L[kQ#+8FEVݸy* v G =~ԦߊVIJ`RƦFo n(?r4G׳%Qˊ>'y+g+”!'r&#d-Hhb h6KQDzՔ8}TW,/uW+x1d<@JϏ{dIM# BA'"L> T!RƝ": fϒuCk=jp'l4\37^[9ϋDA@o9ϳ66 _YKC=mʄg,3='/eE0ǮzU(#͑Qd&l`LL~g_nq܉"7sr\Κ*AJBVt[> z{#l"kdJlȞP`H4 r9) L'$/hd㾏FkFI9DHxy|d N'p_ۂ#'֕LH{N}|Jc&RAՑqv -ŏAI5}3YuX_7#[&c QػYb}ԖC/ 1pTޙ=vŪJ^`Se+8ې-}R8L5'm훞2cmտyZ@vⰀlEd'YU2`K000^h;^s\ Րw *$uA9af)!{μfӮWuY8xt񨅭%Ռ=}H*?ETȔw__pAD@ܜ ;<6\7:yYp,P/]ߕ+>֚_* 42\ u6Lx>䑬/ XhaUu3%[uG嵗72aGׇpY⾸B+F2*2Jjs*><ʋ/ts`M#V"}l㬌L#>DBT W#X"jWn[pc0)/'Q+]ԸsQяw/Pt,i]1sR@-O8D _ULI t%K:IAOXL/i:H2lEXA092ǖDEnqj@9CL3ll qW `W C t.<.25rH5yhήؚpM^u §@kv 6Y9M9Uʬ=pNM)K815?}M HWf ġ yVh;$eRk50 bi؆)cHFK7W)!݈w^Уfχ3jciV!.nѓZ4<.V+t4,) (NI гJuv"{fb;RVu̍9;t#]Bjd%V4LUfiM#WYWӖ6UM@1E0~L[7*Es("bŧc4(yN-gM}̕v:TZYj9ƮnA\5MERg3 cLLӏ?"hƅ0EN-Wq~OmGлPDI/ fKRݘ |/SNx}KENhܮtNɚJ!gQq7tr%{VQFΑS2̙IΛBd:JJ' $M@o1 sۢ!{6Ϩ+jS6rI;,&sBg`khy9QK`b]OjH)y\(+e`VI8b+V}8{'?X萁Ȕ%$ɡ>&T# #K Dh:L(v#2c J" uOvܘo$2㸓7\kýxw.m$Z,QBrqUL+yctv[)גUؠxkm";W?QҀ"8OͨnC[ ,Ui~3B@;g&WsNr&OADC`ޒQsD'>Z˺75. D/R+ZհQ27+ֶ)70',nhHSuBmBΎfp .VIG(Y @74/ho)TnX}-PTp>0\lrD9$9EuĜ|bn6M׵!aSͳ=\/6C".ۅϚPR⏰f?k^X|MzcrCeb叕s|x"qX TRe.1͂aOJ'h!8^ܶxƤT_9YzU.;&D?#EKɻ]k5/&?b#%zd^I~JCǚ{VmvN}t7h>QOr2@ρkH+*I֒.!k,wkY6]H(kXK+0T zrU V)q" "C7p3 u&¡4엄؊v!'#2YIjyIC@=X*McGb.Z/-of'zD+cKKhaE,FRh+r( UV[eX?1#Q+%ϖWCGviK*aP~b2~ԓ Lf}Gn^)u=$=9"rhuQ P°^ g>#},nxbUYٜ3:Tg(jҍU =PH?L ggDdD}DŽ#͂R$74@g-MLr5GfRDZ7HU 3ZOY pŇ +'#ʋ_RHJyR r#(y\SK&`h :YY -cVqIORzTȡ'$tRqn5bZI;n{qn+gO!TERP]bB-4i#kJc=r3JVQڮզcoBoeQ!_E$(~.4O sDKcAV{ 0dvٓћfwI:G@?}v9uɛPQYv3]nR<* -3Dchhb؁%Ƒ;nZֱ13J4yi(,}֖$bS^oj8ƹ^d6bfb9b3; [ߘkP\@]Z|kHwbTC:@<.\瓇EL8 5[C9xY@3.WL>+`v/}F=~nj!#BMWwo,í֗.X28_-HLk/(&-W?)!14Uڑ[YoVYĢe+!y!20,7axDZ^Ї 8W'P }u:9q)q'jY b3C̘kf}.Ij! q->3<UU<6w-ANP$_/Z}/WU~ Nlۆ\%` a 6prm_[{4٫,#ӥաgo;WYXg;wl~"v[0_JVUʪ;/~}$P_j>kfҬy|d`~Y`R tCW3,-}Rp,#8"DlMfѻ T=h!!P &h4_ho$0]FT D$@uYU|l"~ai|0k uF/Dg/Y&bXuYg֤xhmI A ҼB[ճq]([J.j@8/ΪՆI%^˽RMN#іdm|Fyܔt %Sņ W< \~lt9du%2[t] ٠VTkha"b9>~SQst w5'mmI?>eن0SaFLʋ.Z#%"!9E~g{) -7I9{(BPB#u;e{y4CO*hSh|_G:7W+gnIq*6^`BC4?cR~I:-A WU@"cDTQxFp^Pgж72w6ߘli|#X .K fRoSXt8bҵ hO$fe/\rij}m7NƠL[vb!~4t/V)trA#4lЮw႔ܓ4yEn\ :,;S=lEG1BN6H}nJugEҙnB}7i=ܒ.tE$ 'sLL.+7b0-Yjl&dݣۖR$nZR۟ | 9wthVO *FکI~+ Uy4JhJhJ0VuSM&]-VE}Cykw07=mo9;e+)5'36n銙) ˠ6 ]3Z(HF XY;bi򾙡ӂ9riy118W25]ψF/prsrQMi<(%g|ӉU/ ܅P bV%jYMs;w~Yfmr&FRxih.Qn4ꡮ@vN--,Uٽ\ &yqJ8u?*8q<4k`TK~EQi4bAl1 P#$HF8}Rb}:U H=2/HGS7lA-S8~ nc+)P$=eۑe݆D)5|m2>2#mZ(-eozk#;8ϻ+m=w+$osk %pI,#b#sHx:aty :rRówI0q32C*#%&E%Ci>OnN4;S$ٜ( )X p8Uٻ@@"//\b/܎33}UCMf3!i+'.0݅V{.֗geEb ξ< 2L/ =ՙ`!8![1&Fԋ q6c,WX 1pM6 A`RXK̰{-9X};=o*!/61y`bwT;W{cԿSE~XfzзKBM}X9ПdG'IyLn5b2 o0[Qy\EsCtfϷz1DRRt[Ui{UJNC+:ōLb5(Q# NRf []LG{#.:v7 W`D4L |F0>PNƈ'MAxgkƔzqϾ{cm}3IM/TCTE=aZO>5WfLϡ'[P6VB+R fL?$ tCNK|::_jiW<Ɛ0& ])ۛR.gptQ'( q-0P 3u>0l;& whm̮BcMGX iR(s#aBRP 0jq!h,FGuaٻ^牲hD܆KyYMQ8R63cU# 5EFFey+JWcma ,ozo{X޹ M*Vi- KQ au] DQWb3L !*9g(H&bڟ);e}\/t4nU5}WE`xKx}xgyY\ܢx)j喿;D)i KR⭩m;xaaabB6AꢒLQ5\@ ^:<9,śߣ_AKX7:Ajaxz; ,ʕh]3<;yQS6ֺC AG}Ef`/ ;wh>=^p 7 *5ɁbFʯr/8m@>o sSܪM4MB@+ m6yFOlR"Tø0_ WjeYVɪ[8H5{!an?M Ȑ4e4/WlU]u;z#X/RfȰa?@T0;o:e!~doX?O&DGFs:oVj blk{㈵m OiO)P- I,9ӒƁKm]k: jSMngeP\z(JC1PR.7p"YPs+*hf4֚!@w||BFgߙD|SKrМ}cXXEs ׌'͚8;_]\,QD“Q/I:S;W>ֲwJE|bZ&%H6bوJ)unKўD[# |1רxN$YPFGeFgpn+**9Bq, tBXPn],Ӕ-eC7xP z~V8mTdz`ւ8nFG k,?I+0kt00fbK& =X_qqʗA{/Cփac G9iFi,'CAL2w禆tlS@[Z_?efe4MuZ@ML~0#^r &a7o񖩽ܽ;kX6W FyG0 ΗT̹-*12cwh4-!]S6>mÏ.A(zM|D9JʏחHd,6-gys#>y ځ7Sи7`fQz<ه9TH)ܑߎ1O wlkUHx,~ Iԁ/槫7-熏#b<-4Lxtk,{ϣ(7!dzN?q4C(F{WPhdt8A.}k-Ϻ0kh>}$[̂@ K({H-YѮ[!Y{5{gMZg V)uHBdI Yjq^B?ߓjiD` ɝ%xu^* %j64SkR$0Ly:L۲4~[Dhl㫯4l%Yv'Jс9(6dhe|rݘdj"β[U yszOpdlo $DRS;PmOH'+ܿ\0bc#S.U5PPI im< ۔,N;"`Φcu^bD~+;Bb|d\ǙÔx^sQl-+3[;.1)rTu=t@(և>3)d_%x\5.W["~PYgZ<ݺ^ uN&JuF&*"Xk(jm@nqFO.ѐIU7uL%'Wr1#Mw݂rN Z^̌J*7ޭI:kK"O`)e;v³l;h()i.A-NΈ8qx"^ae)Ra8Jt &_#0#T tK`W/rfmK}@Y tP( a c0NF[ l z,NɈr_/mvoOQYb{0H6 qta3h.v˛lOOn]K\o6pz`ZY좼k^xFQ$FĐMr($/"+ZR+d4iZfOByҕvmK\1v0 H~4M띺$/7$W;ze'OJgO!/Kfyԍd OR!%,=Hm~ r+`7k t3P_w\* wAc5[G3uBwŽ` 45/~6ͣ~qxѪ_G[ oQJ0 cFX ceXdL𙷉i`^Rn^W) 0*[T.dum_)˓,1GSp`?シ7-Y۩B75 ? - Q帺ĵƠٚzp I*/IؔiW8=;]Rie0AG2)/Z~&@ +"uG"A~*,krO[; F~̮\hHP:l6F@V,nG(5v^跕yHrh:Ġ!m-\+KD+&ǣ}M$ eI2vԙU%֚+%nդvӘ٘lU[Ƿ7 RFarCNMn03u> \uyR{G@s" aF<lB;ejw}'ԴyUohHI0)϶"bIT.lG |޽E.N0.K!Dl;N$ [y޴Zp9v@Y_V{ fj9 ;QBX;W]D3I6$,铻՚AL']0b@<p@""uކyzzWѰ𺷫,RA_X'Wm4[3K iz7%K}GN &[bw!_g2U'vJZ#l=]t=G 7{8k1uV 7`^)v?<>56\)0iO\'.Fоl1П tJ)|:7'yެ.ݺ8'ڴ{ř1vwn8xXzxO\$-rbzb˷$z}&|8::H;Udˌ$jpLqb~ODånᇥ_^A]iYv3p5{s | MBXaF0ٰH[jW "0; ivͪ#zxMO#/Kaz^%Ѕ+_YlM b8=p"ʄhIɬҦN,ߏNqO%( }?4xc?o#?l{ǫRZTJFbSXy)#{) YozUlgW4-ӆFW퀽2|ƬF7bl6(V/`}PD"}zx2_"Lb`ID TLI2}6x[@yTwiwUp5´Q5] Ev?H=&8 ^01EBEE+xTȰ1Y0q|2,":;b~ʴFS34­+((6cڐPw NImY*{h[5$)r/*~m8N̆lxf\Y797.ȣ0>N0P 7=+T?DSPgF_%$ۚc d݂(#s}TgׂϝUK=<qnNň7ZT7DTj;c4稖 hS|Fג!1Y#N@K;`FpyfN6bk6각;K|4f9héu2>?ǂXxc:@9c[I!3 6+c3*|4wMO\ 59$o_c0`%,L1 ާaE4L<.KXM0'8Bׅ 收z9KVbA!T9i#jV6̊O s-΍fK^&``6͇Ke/;M8HXOv"fFlPЌ'G Uv$͕RDdC['i>[ѺvwLaLB*E1][.CM:6塶Ml ` F#}!2ƛ_%dtB.KMjT56zBTFhcc;QT:V˯ys{V4ܘaOG}xuql1A0pg?rjbt[+-҈_jiR0.׿/Vk/Ü '.?6xfIA%*{'š- )>ܸP.?ZqrG*;L,ǜ#]‹JT@DkłӸT(F6Wy&]"(+PWҞ '-ԣプCM0!y\Iu68M˪TeuaajdUyW&)Bj*]re>ZSdWP=AXDSO 1\]-1H1/!AezՎE*hqK1ѧ>A疢$uƬ%WX5r/P1<&lu;fz`P7#&vt&B/COT43* ;ǯ[A,>*)%|RT0g.^ 4V$b26쟂goeXn{Q7`ѿrgr8ԯuiYx"-%Ewޙ#d#$c= */ӺZ6X9DX3YU\r'NM|Ͽڰ6ɵXh\W,rks~=O?D?]X O{/hKVjqԫp~*VQIΦgk@M9K'Tiq,r;NnX OK8+515 ^؎n֘P#]vQk^8A@)+~?Ő ҧ\p&p5ZFsÆ9M=zSB>.zfhmmr8(@OYd7_8#ň!|.&v4?b풷8hObK~2޽5gs# VHC-{j5>'FerFץvT, *+RBan"+PʝkVaH$&m)S< }{AqkH/gJcnF]z̑8"Ax]gR~s I4UCRJ+8dvefeQs|5O)/vL VzkGlS6N*%ܙ&awRBH0i~,uR&n*$0H/m h-З wMp3Cg!H]߹ $?_#H1l\!LW"J2G& d JeTOʌ/BOb>!yhC~Iɪ3Jq|&tR?y0NpbbN9`E_ Ο3%O_\ Eb*zyyoKY/N`-qt:(IGW a}`&춏'HN-G#I)woD~0S}<{NMA#ֻ36,dԥfuc1zc[R\SH3j8Vjn$xAJxP ܙ2چңRD\(gA !" וJkQE$?ВB-UNPq!Z"㑵i^ jVX*k-3kW]|&H;7 D\OmzlyQ%gyj[v* n4J6@?ޞBf.yD>gK( 0h!;|cKf c G9ˁ?,8R0B*CʃE[EN=T*>GL*NuR}] v H_y}^ݬuI4QWwRya'6ׯSAjaskhP~fb6F<{h tMRv6Ȳ-[]Y:,1bEm㥤AZFP̘A3x˜iϚWGl=֯ޯ]AtV6J䉸C])yDlbISoꌽfC2B@>0QY&`$*1cD+f0^ \.#eӢ|֐4=1`"H(-ie@',h4=S%])JZ5ၖucT1.:&"&FRK+*qFhAv\24ax?=߶0 T0X unh}x_"g~+ȿ%XVO3Tիqf2aFsvyuMR7Jk 5Հ]Hũ QU!HJ, D*\y)ܪM-+ue\i|3/V{?ZP{h9f,[Gf`WRPԒFo)12! A - h#B_>8 [ >kc$,Tؕ{*\rFUmf}s*$~ʋ[8Jt:w-SFTԇX-SƃUU.+}VH@͹x^B=ZI?le/LaX T4@yQMվ'Em/m\&4{ x9odP [ƀvg^;f12IĘ( F[erͧ#qP(Zmb,~/^؟&nݐphe$P,WY(+Y%N~|+5tںi4&bLtjGS0l]UmO_փZ!ȣnJCI),OmElxg 8aM=sT_V;~*dU+in&Lr3²/kZ]k#k؂pd[s g!R:[uws+LR]%l:=Dx^0"rL|;yٚ%tU17l0d!B?@q)rMD0,]5UEep91?<ϐ&උgͿ O*Gq`uݝW[<9pdԶEӰxN+,0DJ=e@M-mG%WBK~vP\c]\j7cMҬfا&E\mv^0ZN;Vv5NQT-1+1:BY|[J]w\Ơs WЙ:ޟiU3*{PFT~@acdHAsz|U!r.Y̓^jZ 6 ia&er~$Ls#Esvz?Q~ݻjvC!*h`PÝMMxv0f(&r ,SB9ޛóO9;Edr+Ӵ};{"{Wyl_MKrsW#*KoOɝ4C}rRl_?VVZ$(BY[r>Dik_b&{дl H/AeakHwY[vBmXKKQ_NzsU3[Rz{:/؂Ps:&܈ى@)Du>zATcv>8!_`X Y`|qs$ӓr+$[bh0=Ybيf9d+F.!sO N%w Ai puڬ5e*U P>[)R[A6"7A*Fs>`phQ/8.B(7d!.(tײ_ky 2n ln+0 D37wѹۭǪFkOG*@i/N82\Pa*'Rv(?OX'o:ΗOʳzM8V~U:5NjߪuL:sV<ݝe'Z1ğ l &6x58շC/U˵Ng 㽟 ,tS?H䒯/ jF`8 V(VNj0K;[M^_̑ξBݼZ{rOs,7xcbY+iR8ro~l8de TZxXH>ۅUxL< %fO+O\ R-ͧ>>kԆ[X'b >{Hrܣx#}$= R5_1}v)ސ ̂xKȹEoP+!IOe=x9O\U]38Gy}#Q1`6 =ɤj?RLR7jTo1[x<87o W 5s]弄 w]{h#D{[(Dh|$4Fn?,Z0#?^W=<מ,I hqsd@"B?jc y6|H'.e?-hPV:qz4h1v#ovnVv5Y ])t6/YPI6|&.V-+|kE"/b_Ⱦ2fakW «kGPC\)!A<Ǭ>s<YI=TaַNԴaHx0`vcdr{.#}f)DH `0ۑ8 Ӌ^9:lk=f5 x[մ@_ZXd=@5 H=b@LOxKCIpx5v `\_LurB2kr Dh] )%::SNj:m&Ͽ f2]5ͼY:G5^ԍ}"t j87:f̫F"5QQ}O p #~AE SG vNa o3P c/'֣qnh0@C,Y{O@yϸ2_"k~\|8N"K&T+[=w[CSn ʁMiFW4X" &MV"\Rt;W~,U  tg%%#$ۣx/| emsװp|PNUs:!4pcy+/gz` 4!B8 O7j*t>_L֎nA0Ae5w_ !Z<'w~'}2!UU=cue8{7BBtj^a|[Yp:al \ G1=Xcgk95)l4 = ؎kNgR7&1}qYۨ'QSmF|fskXx2isX _Yk=6c!Dzpξp MgKn. )2lnl&|asAD΃R!ubf\AN}&CLsH=\CK2,;&TaB>^kswcntp4s08`[!m"В2"h-_舡iR8&G\ ZLkP]̉W*WtMq]/ &8/d5ˡGqŬ̋K׵ZeH?sML䓭4gZ݀j6렘DqD$$ժ讻v0E./\5 B}s!iVrSՁPydkC_Xqül$̽ܢN >y `D@kPx(;L4u8[Aй ${yc˸iUDO:]\yW ESf X[v:)·qcz?w.aV~t&*5"sߎKH`RV–0š P4һE=ɨ RP*pA 9FsB~+1!Jd}}8Afmk. K28s K/yR).!B[RXrqk2|l-vWu` 4gZB6=eHw=aWܑ$DVJ;+h[a[2)^q.EB5?a|0ʶ Bؔ߈[, 8/ W.2c sGx!a_F7dR)%*ȥ(\tzZA8`jk?lOM HWS=褲tD09Vp<6 (yE7 F t0#=@!=i]K칢 Be6vh҃o6ر9d3S.OsC:Y}1cQG,7WkbQMM{]CM{e0%3<_?")En< _xFdrh"@WcƲf7AO&("ќ5] k~G͖A:c@ӧjzd23_Hc* d[ǰ%MR27oH=9m]\v]ICb׍C92%E®RL0L챝i‰-SA2ɧGͣJ=0 [sf OHY66v8 :?͖<$Ou _ԠM9z:jLa x/pY,-#6 &򏊧K*zduX96U0:Fr@b33QD)Mh5[Zys U~NqxkAQlY\tM%WMwdCUcYk 0Dd/ٚnZV=sf$bo|`w|n&3R=#M\KQ&OжP|gJTQ^E2B+`+338 IrT:4\k?k9X6R/ w ጜhKf`w<Ȭ M[ˀR ^[vؔ5:} NՓ%?}Ўk>kiO.mw+AҺƻJwsi*irFt _OC;^JZxз ߍ֘7a/.eȸ]w7= 1`~:Aff[X@BwUE@3A@"LB5ݙmɧ@UZƹ7{k,xC2gKV k 1lzx9fUI߶`q63M5B@ qX% n\3GeotbϚT8nE+y01&"o^ow>a,Ui]/틛 s *! o*(ϸ:0ײ)/2O7w=&»qƭcR1 3ۢNLFsS!K3Nmb&"?ڢ2gI{) yn6Sͳ?-MG۹mpn9;QH;uZa2 ^Jo*0nxMu־;XŒkHL]gWBl]e 5]5\ÃB|c`KK[&TÕꢁtkJG2;EjUSFG{ x2'HݓRa q!XԾ*'1<$L[,W္.p\}Rm(#ElEC'h?mm\*okQ1 ⬮y|-&R>bUMMC;! 1n,Ĉ~ u?KmC/CF sQ*M wD=16gvDNV>B։K+lP[]Ҥz$EaC8.ih|NYo eLd'#Gk #̽Au.VD:{PRg*$=\fQ`ɒ\;a;D5!lB(@|Wsd.e2`GeS'$w; ]M6(jƊ"j0 j=}xuO(xoU?׽3,T^ٻzh7vqs;g-W1_0S%~7I2nȠa0|<2R.ZQ`a;H.Gr!A"9Z4*G c"[G =[XaN&aR> PocϣМֽע:l‚K0?BIF Ѣ,ҏ~!+>OF3Az̏DQ$<  ۾i&/Y#Y\Ƒ3g*^f,`X4:RûbQgb;]z Dg<+qva]نGzp By)JbK|HgNyur+W\0BMM4Hx<.\aI׎N(7_$ bKZ,XE)bc,¢ *>"18]ҹH ı13' \ !.h\`[T:"ETi("(D3` tF3߭%xG}F8B^p H Z:flZt5 Xa>+1b$mOLt r~ljNJѻ%aГ\*d݌ Q2v7EH aүu|V|.O~{㥸a+jqoHG8NQ*B֙ =D${ֿR-y!ކ0roo@KR6!clC5C)bovCzAiA&>%A j.+XPC5N_N?/YCL [mzBo3UZ0*o,|8i*0I.Zbm]QUױk$-+ ,F7Yt$Eߠ*k}Xk<b[G/ cIQԆļc(i#wzZגh쪲Xߔ[碴![y*~s٤zɊRfbɿ='N6BaFj'AU d=ǁf yjлx@lϞv?O؉n^G ܀e(0X!:&MZqֆ5I<>_F<"ړAqY ,IνǠ^ɣW |܁*WQh$L\lPTw 1aJC96pdz6<1avE?95:~w^7E\L.)9 `Ou=hl`d \eQed7_'f-891m/0{ \X|ʻXWEkΗbި1yfXJ*vIL,/f .; hw$<5BdS+!JIt'rXiVL)t/rv恦>B^),n4. 86/#ȩ28lhL#C>T;dp>L'e =cu\G<&By$/SQO +s "nW!tQj? ױ2G+2yfE JNm4nq%4v~C:^2}TLj4@3cf%dՏR69ދT 4DjO>W_kGnX"^`(\`FW4C_>su4տ0~h:sye<@ 0s T|Ԅ UdZ⼋9"`/KYzQl2 {>DS!)u}*(#jO4փЕw^A{+#3;+#)|Ibm[nl qIK}~^`Th0~ҙ,P9!?ѩSv@m:>cZ`(Hg4{-%w G-ݬ9nrcgN0[58"(ZFȈj8( itBy0,-fz_LJIgvօ3RN4% r+rof> OBg2sd)Hz΍ # Ih.v#,ܠguvP s)|%Ox Z+=b LH,pOq2 bbL[:E1 L4B_5=mmD)LB^M9ϋcd lA{}P tMG՜靠I1FpN0i6j#9rz .>V u *KN-ΜyЌDg&x~62^4l2C5b Voπ޹dulDZ"my(]EVd lE/K hWnG&C*-}GAc^`..rNȌPzHe~&(={;[1dɈ,\@2~r+]q>)JiʼnwJ(KB(:n<)|̾т`ov`Bf֏dm)蒇+:,LѪ9aY#϶x*`;]ka_x]z(Gvm]p񀬈/Url[!%=utR#]aϟLZ=vj4]+lAqІ:6c__i@ *Ե'y]K&iOhkDP Q X`Bf`qv_iߣoZs`r\0r;fjr8cδwp! c͠dVP%j}Fw"M?}5-Ӌ>Xm&|{5j>)wN&9Ρ}#uё3e}az6U6JfKVɞ9d='EzRhU(}n،m~tRI]2Bj?"斂*l]3Bc' 0čI1 m.J(s*S9#Lx_c&jũ~p%'ogE701I@{+瑯,2gE@;L˸.P*,{4cπՋ:_?~YI-˺ތ+jO~5"^m & 33cB;QV=kG:ڌlu턇+h\t} p혖fZ|rd=QsR !. VP^y G7*^)41 ClsIf9p6'-85 H.7"D]i0{6ES GLфe2$/`QFhҴS^@Ӹ I݀xjKO.]"QChf[bO4M ?N\MS}UmuXO>_'C|-:Q$UY.R/!&ϱ2LA:,y!|8T<ϝ>dhiTwIP71țj)#P<sA7  u&aװyQEw! 4n֪fҚH_%oudq=qk>̐ZE1Դ2>t Qϖ.SD J/sZ!6fQjuĒ8њ!4@z Y߯`Vu]nTlCGt䳇%|DswubmsQBC?2 Kj!\8vTL-N^Vݤv)^}Gm6.c<Eʏ%ɻāvq];A||#@=Y8Sd`k^Va`$ɬt[h ض$h}JHҺ ,gFrئu#ہwhe[+z3 ނyؙ£ SR&K/?FR #&?!$Z"JnX &(Iė$ OԹ2Ys]sDcg%`?-ʂyd\oLkYQ*R"cCt[>fP?^T%V&Ώ#CDRLXެ.IIuzOlYUg;qh _[hPlA 5%q똅- _ j(kU:pl<. Ү 4v$'`c{JFbJ>MہݴEuo>4+N\'qn!l+}y?۫xӉ}x l~|``ǙϜʛ}tM \g،i=[)]K+8*H*LS#7XN_դ'q.Dsڙ)o'l5|7+-;Sap8d'GxlkRZ/{:O^m(+O([V%o/  i/ k~P,(FF(m>kSN?Q'l)EaN~ΐQ1ÃS>ihg[SX VþeRkJަiw^ϱ "3V-ѥ ȐJ0?S[S6Kc/,`9 p졧T=q] Zp/Me4)'xgF[u 2l rEF=8z+hD؆`X[hh+;+">sJ"_Io"̈́WZ}0󑨴s JoIB^p5}X=.XR!m'.q2?,uX́ؐ7H{y'h`#-r8˹qvh/-}-ധ2'%ZjE40b~j!P;Vwd~Q"Ke٭v=XE40|>TgeyfNjˋF#9=,>r0[8q!Rr3_Ӭ]J GX%RLZ;~: q1jlΔEиZ`,WZ:^%ԏj>.0/[[5{)ґ#.X-YÌcD` tTCR]uArMZV>~0C9f -ʎj[a[."&p¶}CƐgB}㴐[ꂄ:<&tj鰊w(ƻ|/ҁfD.UXiYb&QE1T3?D@$FcM(aRȐ$`6LN_kl 5~r̅2w!{Ͼ*mKT%bARt%+v#Lz Ch>/p3ֿ4+±D rCЄ?s[+9byGh7X9Si_yb)={{,UY\w·vn &EMm@T>&ڜ3xh!oltT.,ȫ.܈=PĠe_Q5%|}'r(g! vz/~G{MB*Dc1 Թ5VM#!?UGHf=BLP-+m'# E$KxdݯPp .X-\50ڋ^c"QX=Dc7oT*8|4fYèeB6)vM@>+فz|ЯGěv`i=ӄى W(oܠPև,\owㇰ=|&L^!M#uiKŴ(އ䴀԰q<^2iVRft`n4ʀ=>X%\;yKs4@~y%|xvFk"%?0^Œ%2u)@j,I@! ?tqc\UU9tyyӼ322k9L]d Sb?av,Un!OhE}o\ wJ->zO/pg22f6;0i0}Mz2z^9" ňg :q 8D>t;yMW95vCzR3dR`ajjPҔ5|Mӻ[{28YP1=e0n>bzOA=OXzݒBc^E$2f N6 _~H:x%[^#/0eFFI& "IܫKKn~'$W~/mطEl5hv=K땟S" -Ð2>2qժ-|[v$QfgK,\f}[r`Ե4op[Ol|^Yv42x(aRԜ e.SKP*;8Yf$7fȌȫQQz"8HyI;d4*1T`NGɢ?e;BWg1rx9 %#lKFag8KdlY>\K(u۵>.'U%*\۟ WW]G @NԪ7 @]q"Y oN{&szxj本cTdz#`6QӟuQN}D5+f=ҷ̏4L0pڅ^_ŴR{todC?NBE8ʵZp 9#k }+ˮfh]J(c=TɂziUVO_ &c]W{}`v*;LϪ6DlVW [eHbZ6ޥ9dPУ3(J["HSDM `%^9ي3y}& ߛnR >ܲ(L]KVZBd pf Jp>NYEhJT M4 ~qӴ ecyƆQ'f t:< āc05$琢ݸ+[J U^PvթĘ+YSZS"'IC]kgG@?؎}Jpܟ2c <೮,Ks*  4?HvT lC%$[m։$+rZ]y n״ 5÷n,WR 7"OEŨ~bʑJ߉`50 55wʻDh|k6Il{t/AHH#,'-~ _@Շ"}p!5x[xE جQگPJ"2$JX AT?i5yS]bѫnM>2/ըlNkP&,-^^@Cny3Vj"pkm#}WmY3gxh(CWxY+6 uIyNVMY?W qY[wf15(V r_DX7 ZG|ׁ~m*M PEײ\;wX|@,{h,G̱c2 XhT1Wkii )(eN0ŋQtCR~&}M2I 󕚢g0mhVTzVO?-OV$qo]r}E|<pZ\'a}-W aØdƴ{ QjWo dzCӾb!A: E"ж /8Al~|{crͺ 䭋xDuG79wn8(A(q@}cFI6sD:|;SIC$o\!s~9u#nަ(| 96#9z)y>ӎCpe9dR&L:z0a5DNXek"ps\Ԝ`8kO=Z@5?uɽAyH$Y6;f$h6EKY4`|G[m@ 6gGIOW[myD'B$ǸPSNnuַiw$Ph] 7B"a/q\VNJF֣sZjL.sHAbobsEldP 4jo:7`KR#7^Y}Wi+[Qhd+LWwF4SomZ6[bxU.NV{ج2#(Nw6*ѤR<8R5.[&FҐ= s=Fi^~)XDY6eJ+q+#zm*ؼTD" pvCxUYi ?WJ1!cJ jB6VKl8Z,@y =1y{'Uޘa8ƨLj뭲m.<'ٽͭۥ2>π dw#vct(QJ{k|gލaa㭳ӡ'Cd `qPA-zct#`ofwҿRWB{8l6tr.R@X謿Ela0L0A& 'MAm,ݑ} {DBSҦ4ڏN2*-A~}ol#oiթo`5G>7lu|Hco*|)^4"C%7ʞ+ J@j}LD8FBÃHmK1rzT:lgTxv1 pL %!e֏Ā]Oy3nRQ쮻̐sٙ8P[|6z+ǹ1} f  M^ P..!* }RWzl`S_qoPf/r0!CV%\SSpdu6XƖ&kΏ31MI&nGNg` dCiBR'ЂU_6OdBI X(ݶu{P dF͖ӔjyZMAx90mLD; ?ͳt8m050c$3a SbVJt< ]<7q"l<&$R$8'r35H^?8<{,ĐDZcA/ʏ9 ۗ)goQd[F0SMFޱ\tÒ>qp%b'6ZC-^`Bq>3JkSm<0vjB,d`uru9l$_p!D#@'}- <e.6`l 5Nn5KM!| ݧu3#k-]@ѳI?ˌd_Z~2- ߽=(l-g_\wk̺{DP;0 d"$Gь|ꊉϹeGmÊV3{c)&w?ⒺZpi#_#>Kiqi0H9`] B9ny`$Bڏe&֟.)aD7Nd’dU$eܨaÌUDި?fPJGvy_nvǮvI/ 6P;rޓ)z%LR7{ ]FeO4I*IFFm @;N% bPDȹJ?g^kmۊ$Ywfj6#/- DS-_ݺoSJ˰؍$" y[B7ǼEc$̾szUNO]$'*%mɽ [ogc0RK*D[7 gQ<>Esi58k VqeQ)@䴻MU#ˢ RþRw_JBoqced0;8o: 9ɦ&omx6x&wpRT q| r3W,ɼJ#1}Ԉ#K㈅zH)|i[)#=B<ڄ''KK˱ͫ~AS ʊDu}% qQg`ϫe}"kw%O:keup*jVxiQ(CeeYsƺ٠R] `E/7q 喍Qz>ڐ"KGc뫽7H0rF M0nbp&4Rȿ)2E:Vy'|\4IFbF# NvHu7 䜈wk1Bx}]f$mUaI~)SʅOQGŁv+Wp)(z]9 ؈H VD{lu`s 9`fB*\=Y=w"wvI qU뜒fpn@Zy0P]d|`aN8R~ N%UhA`2p:& j1Y0oX~Xo*[ICREɔj@{Xq N ld Jմ~L(XA!Ǣ~ӄ-yL#pr-TݩQ[טbb -:;_󨎇s;7w#?fǧYvLq ɗKX!,ۇ+Guvn-en7^aQ ,C~(^ch'2 h:, V&%ﻣnݵZ]yw 4`n,tٻ`Z[jyKRK# 71Gal(j X&@! Kq-Pl |g6[5*l>ΞBd=0TyY0[ {1r(`&lmϣa5Zаɔ \+BE1p@(JXaZ f7D g7Z犠nbz^b y&6{v_)+8vmö;lUʼn4͢`ImpJQ 2-I*/ ʑWϻ:&;.훶&uVӮk%g`|]=*Nm<%bxb}Ig!=<Á k>hCʆWdِUy0!UJauF"H^TVHq5\a>6>4J m*Xxҿ3$K?YJTL_EqDwq6qaJ # cyܙ ~GCqEl/2⵭Ұɝ#$Z- )lۯ'hii{O28ݷ"{fd]85+"ThUARj? %Dz<}P 4ICeM ɅCr,ŧlc ʸQ/2W)hҳcͱ:Ğ]̠u=h^|_6`[eշ٪]c\{HT"zlrR<_㣣ףPf?; (8p0JTp2=>m::Oqp7*<Q޽^a(i7ؚ0}Nls,l6ȰAX ]]y7hwOkoO֍fӣ7O~{D4ېB{ oo0`sGcƲg%Hޜ \[zNϼ{es.RV+vj'vՏ^zPÒbbewf'_B[Y7;Rj؋w;!Sqyn6q}!878(gE9aYpUG!jyD=^Ǒzi3YhS-sNјT)K:7"}ӥd_6r al&k=@q&F`Ů< [>x7"[ p]xLarSEg{I]>fw7@Yp|#|iNPU`vṬS!}ˑ AF t_] ڄWV™1L{tO+4&*iFj"g3%}znam[5/c|ni6]Yoۛ~!LiM%ym;Ɂz#Sϗp!&7{W9 p10LqU@ǔ\K^`20,~w{E]) $*Jebf/ռbDOi` sMSފHYdu'SX揘I%"S :Ns†{7=Wq% U!˳)7sL6Eh埗c! Vf rI,hRCgsí^w? p\q|ꏵL'k[T i]ן䜅1`Xa@: e zP};n!b!='nBͶ;yٗPBGX߿KkBo~2Ǵ:<3B[lwXRhWV'C)B ?QDЦ`񩟒6up;0'QY!ly.|z?.s繝gS*FP gKJ檦Qz97A c`D=LRsruۈY8rSڂ)O3;qOx0 "5 U,{5B{@T:}9Y]bwZ@s`7T.޼TRLL 09VV׷#- &fe"rMZM˖F5L I$/?+m?gt-@Wlr97FS%3q:f6:3T}IMk\; eᅭ6Ҍⲷ@-IX}"wL,fYjM$ո'A(kgZez`̸Lp1&J>|? *BHPU#G)^ndyY-vou:Q/tb!&6B|]fG<~L(zH-kW=bfHw!Jtp{gR(9-.VsD LV4iRYx.= HCeA?µmycP֫35e`Fֻ{_ee-#deSi"7FTeI8WΘ 㫥(ޒkXޢh >Gx7Wd𦄯k@~elԪT_P6ɫ\{ޯR>"arKzSwU JU׷%^Yÿeچ57JL:j\oɺ Sbv_,S39)h˒%#D;22HA\io&F"h 'E/IqO#:"I0.DGDח|RAXbe_i{?m(ӣaj#g˅gD~6LiKLי3m:^?W6UZ/CoJ7뺈]Z]sYEBHx\P/2l r=H٪k홧z=(́DJᒘ1TqWLoIBND“qo 5 nvN_- Tt=&[ E\Pӥ(pfog<jYW,ެ'p?8 -/6uWF0}VFgMɸGL85*MAM_'@vaV<>oej(9t'=[u^bb4>{b,VУRfIMgޒ QaTK@btȮ ه^?i`kۥh}\t2;L/cg3+Fqo{TڱnDz A^ s/IKRNp3F:[TlvXdΌ|}l g9[gH:Zxѱ9dhP O\i3xywrtQ!V 9BF[xTȠ!B S5dn#'"z0j7ڶ_^35> bZ;ja k& ɦb<||ЁVU@0O!,L?5ĒFf@z/4SnqX (JҾlXFF7IMы尌"E(^nrަ"G+raA1Kµ%:|H YYjTsߴS~o%&]"lzp7n7WRǣ>GbGoO6N͈rOwtx0-r4=VU)S8׻X8Ȝgۋ(7X]ccf̵w!xν8y)!Uݖcf*vUYN5s»XG%-hL}PMhq@m?8O;"~AX|t?=]𛤅ZB2L5 `汿(|k4Ӵ{HR[b6Qd#Q6CD;a .D $loo՝㢲Q䌨\Bd?M`#l, oTN՞HDX}s[, v(/ *Hᚬ.7Iv{(TGEFȒBݗ@W)3 [Z53#3@T,Zd!ۼw9ٷe߻f<̀11]4ۢAg4si xybJ[ e Q^l'\7נp + N6r0P- e>Bab0a߯\hTcQVÔR&Nt=Ћ]9ʝn꒳ↁ|)hOFKڦN(.~"a ī^UG@NCE -4Q/PS4OT1Wit~coV#(`>eBSD!P,fv Ž6-{Rij$cmϘԐ]&&!^> ffb˱THMշ/r„&h"\y 8'va)\"л{>^rwCnkۧ =J`N 5wI>wnJUݘ&(éY`9uBRqs^Ia}LsVaXV`hg ۔yELZ\K >g~>_JTY,fA~[6Ě:i De~AErhs:( SSJ+ HZsvDȬDnM)4G,fhVy&ڊwi6s\7 D $&Wuú$S# !3ig5 +%t2T亵IADyClt+OWiL<< :7@Sg9 nqODLd~.&/vq=,תaSN=;6S>WazʛhYTpb/e\4%E͓8)`t7YKޮ+՗U )E/A4ီj9кz?[݈!JB=Gm4߳Eز{Vg~aZH2;pmu!wfP梵h uL0\֟SCkNg)9@ -@p2j˱FaӡCǞZe%>hm."Eb˜ewN>MU0sTcXL8u)}JU-E6gu:2Վ ]dQ%7+=”Ոat-aĸ01Ēv?ZG[Emϱ2/z l'+W?C7 AC>YmqIN+s{TPSSr՝+!tq="Ujb8Dd?`=I2o[>[~h;IV pZ+{>G_/G^QQK!SI/Rw UGtbz5&Ic&Y< Qlv6_81$ :;gq;$Kx8-Xe޶vm2J7{ Q Kzl{1ʢP|&}'49쳓$o-2}X^7xpt ]BT/X/QXC, C{ag|y8iTRyEkAO|q:CyΘ3\ 1iʲ,rTpJҡȠ$!TО!]ekQ<`6ؽl=7o00DJӁ$o&< ismK"E>"g7X}mR[+&Cՙy&7vG?V͢KS҅FÄn+dD)>+/!Kq|B(ֆ0OψUMQ;d($̧YqH^s=PAcd;aKZVոƀd矗E-dgw9 In ʨN1XsKĢ # P@# hx-h9eIJ៌-x5߅w|G{d5po#$뤒C5r~ﻍB)Fj ӱ׋A.FmGepuE9 )zLsZu1oא2js!0$O+bXeaIW*ac-L pyYbf,F))68xv+θ2(D >Kli;2- Icr(u0ȏJ`rK6oT*sFP/{ҝipmDhm8ZS;Vzh]COoXV!ٴfC zGEӉ ssqătnSH1Zh]*npRC͟_+ks٢2 OkZy̼\᷆ = > ;S,q$4r@~~b!b?(<ՇO,k@<٣tLR:/eژzYz";O:!Ra>)hRo'088ͫokYZ;&hܦ* 9}KZ~6le Y)4GY.j;j$ F̳SC4y+;N[t];D%, h~hjӃ/6MÒ5licFepFWH҂jF[v˜V M4)+]cBjM%Z*߃+G{]fu=rιvdu=ttfINQ5[;Rᨎlo\ts;YXvWyUm~\b gg a(ۢt6J(sțM2M9 P;Oʳ[[kQL8OƳ.O~ϔ;I$͌70 6= ILQcnExOD8hP8M}9K8 0@/Njԫ!ʏHsM|qAQ0Cvb+6Yi%Gsz#FՠX(Ǣ_ UcEB{+r=?Y};\ u~ Zv "u O~/3v:tR:d&lS0sA%†PVkR#7j r#Z;خyl,v2kݽ5QbHEa  ʼcv`[-G{qQoVNenf1fdЏK{"VHEY,*kZ7*EO]߼~Fx_q=:ZU;<;K|-ڬvԹA35n9R F-O7x&$pVmT+1nq>L]sBpl$ս>*eUPo`+^KD[ҥ.n\Zְ|D%`o?o$LI*SsV ; Ux`z+=0H8Oc&qD"X-TeVMYj_ELERMm[ gF3|Ń?Xlynb7K_yGx%YX\|HIj鏉1k,J&BA܆-fJx1yDNM]?] %8.|@瀚cL )Ayz0 jߕŷ]2Kt?;*% UCkAzixӔiazM v簃rՈnR/{n)8T 4 qOCKMB9 ^v:P?` [%%2y(prCf@@Ż<@vav rX_o\œMEKy:jZǢ[yqΦ *A*׾Dj( *8^~MCg/m͞YzK3w֒jf<*$! 9S(Bk_؂n]c_. ֗VtE((af 3 Y`*]Mb/q6Y2]L\/M>Ƒqm/sfG4IQ% =#.$ 3x41L;?Yx.ig]%l3'IB_bH(A&?2ѿzrh G|DLOAZu75,h! l:frsdlb ?TkF,FVP;e'A)yO op02ox"0? 8%B:`Ѝٿ91,Q3v$"Q/j}  A<J-ơc 9&f~ RK;?ibp`W'(Sa&YoQkW Wt"/WniI]mƛacu2sآeО) D"fJYn6ns\T9orzjV2K5}d?ـu) xJW~ PItgK}&eW T/pNPhgʩuy-P9)IN^.;S"*\3Q4c)2&3ScdLcHtU@U>,ɁpYh]']o|0 -% RyG:Bj;%!vZ.#=gADSR@;cd,uuT$27?g *#2[4Y ȏq !5MQ蒤#:-T!c_3:C_%$`Vg Kb߆fkUO*^,Kh$)tf(cKSvcbhb 3@Vͽ=; >eNcfe&8v&ո@c:oIF{jNͼzwYWQYܔg3^a obnzK0I1 ι:1nRm)^^~&b APENɗ<%JT=AD)vFggGX1Z<גZ92*k<_i$"](1'Wp:* _=Y KQqp* 9lVJnY""n#ιu]^=_Ou|_) 0U:˸欔:lV3Ekiq C7̒B8)Vhgou}{ #3BV]NҁI%%))Э`0mv҂=_-~ +I̍#Q'c

    庻 XuH5SG&7H-+@?Xr;>NyϏ5Fopa YKIC^iMziYupNy|xn1b EZ Vl! F`hŊ_x S GqgLE|Axh~Xmu ʩJ/E߷f-f;[ V{?~U.V=Y$3buNCNYR&Te";:Eٶom28Y vkRu%wSϽcYN٢y@XlJTO}ˀ0PDSB̳(P]yE!uBJПB5D(Qib袬Cz7s3ɾlEnX"״D7i}b5u6}: `4X&Uv/Jy+QǷ%JBCS4.`D~gCtiU-^ɭ7xXIuk\-rEr/8At/*Y^HpW]nJG\ 5{fyⵦIBI1o>  Qa#m :Ab`- cpd[/SSΚ.qzᝳ.AIelS=Flyޟ7WS;L۟QI0c+v}oDb::+m裭1G IOyN7;]|sUk_9u$UsBȼۺ#hTo-N̡hhT͌VXVZn9`WY2:a1وާ7 $DXFvWbai'jʏ\:Pb qqĴ:Yu`u OMJ$aigMk+v+d5D 7~ѦBliۍ4sD2h b]@֣}\rnznpn3y@M61&Lp bmeG˒qѿhOǁy"MzwFD } &E͡/-&\¾TR]D@_w3V9hi/ ©Gs;B4.%V6舝rEG"Gkb٠sFtra?m5x0c2 >,(96[ R " @ X+?o΄5w~ @cׇWKSosO3]$90T3: a2@ieԱLU%@HIطdyE6Mp?jRԚ;X:u[&G4sppά+?_g-D{T[Mm^%@&%1c3Na#ߛ ',R(Xylc\+br6 5H&{Mc{7nVpTRԇ㝮 +tM"],8D% V7&s(k&:k3&qżɞ5\\a+] )R$QM7äńʉU#ba1_66J >IY#r&2yQX$|xKMjz:dmڨ;D+)3;.QRh?DB1h"Ab2mD~nqYJKFki֡O"lnT5Eiz > QxisgjXYԪO-U_D=Fnٚ Ե+ޝ>Ajaqڒ0_ԲuETK.؁Cl?67tEZa^OWڰqSp+bz'M FܬIO?~,Q,Go/[lc( :ҴJj=?~G 8ԩXA.v9{a9Ӄ\_زS,f:p/51EgY-af2ʒ%YnRˮ_-SVx$O,X]5ƌ0Xr⯿ #S1 ? @H֑ -[t⃎;zjڳQ\Ei,}p'ۃ*+}h)G+>T,J? (2_L!%.4~w\C|f "V7۪(kz*taZl_(V;$.s6  ȈO.Uk۲\O:MN;x ٍ3yA㭑y&!ujF\Vq¶OUU=- A| ԳQ?;eպB! k !ejڔqM9sh{kF1X+eXMw7,SL6C#nO\`M_2KV}]!_U&[r!?lw5{뿚[YTzXJub ak%Q'[>{ 9n_s I>7w6ЗZPP_ "wiJ9bD BN1|4Fڶ?ZY>i_`u'7D|MBN2w,CtzNQ2U6Hu涗oP@d%Pd>yZoŖvIԥ;C_! j]$9//Zste3W$57GwEpIGZд&kwSY`&v.F Ī3P=Dͣ,ԳlZ|2iQZd̙ۺ D@ߎG oY#hDn݊t Gna՞?1t[%RGW,ݲΪP!Xl2+SuU[Xh4HؘmQH@*nyR! ]q]BdY8)INHzzaLs~>Ri9- c^-{Qq&W̙rqawϋ<{?^:|a]KX8>Q`XVp$_^#`L ާ,K _.dnؕX&eYsPzED}uS,8Z:s5%$CQ#;N.`9jB Y}ӀIJo pdo|ؖp>tݛ[ŜYN Kin;#@n:9h(pvpOSZPȔݘ7^vv¦5IL$dϮZE@3g5iNrO,IT%}~k`iorum4F`C26yJ ]22ig&83S)[1b~g7GM^٬s73kSkb\)\0rR - bڼ*+Ly%&A8o$R_ldmXS\ŝKT@\rOh14IL!lsBq۝^^&<,vzs*3B1C_]$O1ՐX+=0&ׯdt(W"%!X].^ QXcw+ś~[M4LԴ{\;)^W?5TS[5OE;RNB)5VA tȹ6NItf3I$K++jWrGJ/b4jDl*SNdUIoտUo!'W?ޥ+{/ABɪZ^D?Iޥ%9CJ8tGУX)Y0ʨLr] (HwgB&[E߬"Ip^_ϧx%YTr f&{n;#O9`ƉfrM 6 b\ax1ruZc`DF̆6L?\mRRn9b*`$úMϔG1Ŝ+!( YS6}kk>PkPOHv v¤Z}JY uUHmt,[UNiL=/փ_ְ jcv?`#"Y@&۳4f qm;s>4fdv 䪋h O}-@<l^ 544g 3J Aa|孍Ol9Fl7ml|'ʖAN\r-nb;v<ƾXjBNp?,`eCL'=UJ=8aOTm]XBv@t]8, x|/45r5LŒհ8p~)#v6$Ih2!J"jJe."RyUP;~j:XH{7B6I5jOG-!&2K/fA'y_\Tk,wgXobZ;-+ڌ o/ 5v-Yϰi4OnB3ngmS|+lԹn{Tw CI#+'\7i/˚G†.P/VI1x;@mP>+&/kUL `J_b0@YOmkgP0@ ɋl0~‚У RMp 54ݰUx0Ghvi<ۮ;ynI<[F̦e鋙 ]%r2kGJ^5K)&RǨ$,`pE,N fO#(;!.F囼=>tE(5g,@ ߎTJ7~_0͢uɂ! Db7wzjBQ6)V! (+Dj|ҏD!I@8=8,7͙ 8EE$'*oJqX:F;L^@t EDdeBǝ_:x zg3ۍJ&g+Dֵ)8mܻkWyO +r1FΔ@܍VlCGjDE9&2!\C>ḵ{E-Vk+0$`sSos_녓*1n|NI l̆L=]E{LqG U&l>2~Vc RG~{LL$? A~>8VoIWfH:qrN[ } VAxNEzY4aY7ƫ?dHa,q{e-Vn QFl9V' (۔d)RV/Skꐆa;k} DCsZH*,+[,Ǿ]^tI Q @b%aӗAL_uM<42vÀ^s,Y:tp%ջtX3.𬕊NX kj"< MqS[v(Y:D+o!\jG"T` l $x.*Wtbw8}Лo&,Nc1B\e3Zy"P.5n1ek;2)(Y{ 9vYK߈.C x'䈒g5ް^b8w#`[C|Ƀsdt@nj e_п)xaJ|{*q}- ?<>ҭbsi[dZQM OzҎվof9N"sFꔣ+Ć`u4m0j(}t^ÞZGpسw^hs+ Ő6ŝ4@[Υj.Y(/J^zI%\FK4"vL &vn勱"`Us~av_C{oOh^]~e0|5`(u^쑘?.wt"ͨ$>T#&["&Kث%pr3_T(X'.nU'v6Wȡf$iCLN[iK_sek#fr59C86(-}~}*n]) }MJ-hz ?ű+zOG*N|.Ui i5gq]u%9SF}:S}) F_WJ.@F2 ]JFO/{[ ̥Pw=Ң'BTnw]Ιob]>yѲZ8SPS0S. ][ݩƜ ӱH.Pk+6,2ѯļ1̸EĈH>*R!/Q!ֺZdx<cՙOK3aUUWgvff!xo\r;}Qm&o)΃+mCC; !?/^A[%*Lٙ%D*b@y~d.rMp YH~{iy S"T>ژa~˴> ݯ@b5cGG',LPio:!$,:%Cb~*(R0_+nmGZE9< FwoȦ6`dw}\`vJxP^LVIJn Jf09}5os87%a)6Je e5)*7!FWg'Q>4xjmˣi#ԌzQaW896Shov3j!s/5Nk-` XB..QR.ˡMVw E62[J6&Fm{=8U ؘ'ϜӚ8xM&}qzWjUQ@Vl^(/fzNƅe08v##c}hm C=0")5&iVsf@?f?!猞)2gEէIn#ɨcoH/*YRܯo( LP Q+YA^k[ 7̤,+S=: 1jÔ9'~t:3NV ѾGAJg7@tOd&t(h'ʆerb8֏!7&ZV)9W+ ?mKKXˁ6*Nr)nԠ$ ܶ }m/!z=yIl&F *{5&VC[J"rQy㌬@᧧zAO˿#K3{YhA)4<,0×WG-PaC259Kx21JOhQIiq/uk\ jF!WT[Π[ *ތ|nWC})ͥp؝zkBQ4(NKӈW KDHf I*dXؔ데<TܯM%;}Y%"``^],x"8Kۑ^@!ѷyGs̤ 5op׎q칅ӉN$>$RWZN~W)n?:њ{IAG0"w !H'؏ ̯cSY\7NO'YSvh-zlG<%ɗ,AjwDp%mq'aTbp:Ms~: }]1p /. C%'<_lUuh<)C[ @Zl156kYe0Vh@\=3 YtXwk.A_qgOZ&ߴm"޼^|p_ܩ$U+_IC|Ͽ 'pm1+!xXDb*{|H\W&}n>p0YCe4!*v(Y\$} $wKjhbGvTq4Ok̐z.b݉vJQdkg6(?Du5VhM(VQ` CBlζn~NЫBgti[}w7Ai;=Áp_zBHVKDWNJV4ڤotYPkldr|H—۶KȺI`uCb852dس,{//='IKFgrʬ}frw&DY%l~RԲ*AÚHH8HPDw4r}fիDSKsgySj8Y_lmӕorI ౜~` }RE5)NmrpH"q${=(9}w}0υtHˌDj!㖱$|D NqbZ1ԕZ%C.:aaDΖP[RQ\R[H:{- z2C|+k-nT溫Uiz!a^+͌Z*"\khNF7 FN]O؉Dț3n8Qop>f+pH 1SJ^y~ ew#HQ HH X6(Q՞J)") r<AIGՠRǬDnźC&m GHHHʬeedmq/(* !=i&giZ"}͇1o*qӓ3rz  WGQ}}>tL=il _=xFlCKRb2=mͦM(7ĂVe(fE8T9- ߘSOien Fe ˩ 0,{_5pT&G"עI×kT)@AEs.R$Y8p7df0cìTTc~-Œ{wXr]7ϭJ}M(i+h Œ௅Qz҆7Wq!{#CAM%U=6lV*^j Tvx^*6:5><\@s3w3s|^fiFt̳C˛s-qc;F؈&v<V'&I/c| }9A &\> W~5uC]-a: O",]!cџq/FI G1wH1V ;0tt9G+HP R߿#"HQӌ!Ը8fPN{wߐ;Q21"<:2S*7<5]RCb8YI$k"vl["U>.^OEtx7 X) 'c;%*h[8ᲄXL D  ^Q([~+"ީ{kD oDVS]nYA/p:s*Vu]7y& G؈d fc)cI ,&PJU!r߆X^^|7}-bs0i9vLnY|m8(eЌp;G[ģ:ˏ @+37 Sоń0tj4wf^Sm:TD%I9m;,cm%ܡwUH>j= i B}zVާpA ߙ1)79ljtJCE$^y߸e.^i;b&.w^{V6[ kնEٸcBSvV+Uͨ!j] K Av],(/ e -NA 7nB~G"51Zc:^iØRu'b7S ZSNbCI$\PBYff!XJP3}ʩ je:zIj^G/}7nBr3+3zJaw,5vPA,+} &n:}{|HK\;.3,7i)ASb2xv)F'*y$|i'e^/:mw \V z +udA uXcqydwPl=%:ѵǻhׄtO4~Ǡ ײ:াp<"?@ (3, #PT٭6XY+]rid܂fşa$8ښ-t}h-p+Õ{h&{B-~:m{yc^z ^bhkg&r۾t]{ݸ#bGMibxPVA|;>8Eϥ^DpI'ek3Ĵ) k+~{Wm[)u'wD5Z"YOPcyH5R-Ƈ̃+ xG{#^ @L}r {)!:Rb0m@.=ڟqж(z¬*_^lGrn`s| URlpٺlõ p[1GNz?t+UTBrlF`j8fJҶiHW Ēj+WU rABC#p8p0^lguxvtUkV@0tL+)=[aI 8AvAP&1o *XI\A1uR.j1<^3A:7<7w̷zd?p3U=:]oD| EӐ޿H< Kf)ܝ<˓2v~Ŏku1CN0 b#iB\kuDixr }=#B,?w)j=-nbY3GJi0jPktdc Dn!,}ʃ$d"SC E֓RR Đ=`%y P ])A*$KpUi;B+ ;]Vs 'XI:&y7ozkE`^?O)^^h{g/ΫٷZ:ء!ωN\..o[Nϕ!SzX'WB`RL&r*d IGlS(C *x dYE#)]iBca%s۵CŊ˜Y;aCӴ-~.YnaYDpH^XouOr"Kz b)"𫲀ǩ}أc+Y*@EEu;3E. h><ʇn&bD(9NDJ3Gش^*jĽz%VD-=e?j'q,,ET ,>&8%L5˧K^#gJfo/dk=zGKoW[/zI2DKKwNӷo=CA_}icڒ?gi)s0S}3W FjL$|"耉z7mm/#Fs{ㄷDkbXŸTZiL-q[ t|P[)ir!B#p-z.FpO}V(|'-$ b0V/ݹ^ mT7` T9g‡堨~Q%F[`:tm)zEZ[WSA3.se X@aܝj?(hxnk&/Yu%ܢ=I|f7#aҪH=xM،\,'1%_]ōbvXeh94{37HO !*׸Cx|u|sf*Ǩz ,7`-N1$@é%fYӠvMf:+a B[$8 Muځ 5 L.kvo,(y@N2,ۄD2+ut? jQ&/q:":̅c/VLUOձ:PQDzB6wCGzVq7p7HBD`Z~:'?1͙@[A)'TFRTnw׻ݣ̚EIzHD%: .A㜟JEosrP`\-x(: {;,c)DJ 嬡 jƼRimOQU+SBFk=M"$C:u|F1# r kK\hm@;X=` ?fhT&2` ? fWD?m V]q#z6SngI\ gIayuFtӪy/=lkH`FK^SU59k<qV~~}Y|e`+یGTi'gPjfqR)AL89T88oozu|o_="ZbS? A!~.0$̦gx*rQh|؆oVOkba]9_`XmL8:ڼ2bgWvfR_ɊIkKE;&k뭤b} &$exBXjbPlA'nh@%19L' HףqNgur#w Oeٞ VGs\]J4m`Oi\j^e &&Y1`]\D*H!y Mi͆}|!!#ΤO f}%r Jw0= zwUDZcJ8W:(5gw)nJXO4pKDs:oWߨ-xdtt${l:P8x׆IT" 㐬iy]Ggp=ݶVE !S0m?ؽJlՂkX2ʵYM-qktp_饅>3s[2(R$Jï*fU HqīP}H- cx0E1.\*RWh)nG^@ω (4:JJZ[^!a}Lb>{S,cФ-!(_~4!edH0XM8oP=qT*~!OIYZ}RM\g#DF5qq+Ty[eNwG.e=ȸrCFї=Dv;/ L-n}4 RҸatd=(޾|;^~]? U#1S'3Ro$zw 0* yq$keD~͓ ~Ezollu?UC:I$ͨEb"~ʎfudrCz ⇘i- 4ͣa Ӎ C9 ,`;GqUaI*LK)_~w _¢@Lg*9[UhL!KAhK>+LMoj 6]2XT$`haGp<ۥT\6X:'G(| KFu:atԶ@o K/*l;(ӣqW$CcHF\\HZkF:Puej,Z u]nNgUR4e? R7ӯJ $`sZkF^eM褌pߤkșZGYd }{/Z;n8$ߚp7MVセw8rDV9BxCM@ jQSr RʀʀAd^A?&Nm}s ANZT3I<52F5! lar`g޶;T߻I3L|=V\.0wJ0XSM(2ꗯ3dUsk$A,ff21I"UW!>S)̤'vp';f|rN,TXzmS,#n(F,I{c eymBb5sT0(''i6Ar`dAF=PB }]gsU)sbSQmorxhPCYl[-j 9V@k%?IMF/ݺF&ӝd? CB2?Ttt!] j.ks(Qs]hx6FlyzķXKhu8E|p,f4&mV}[%we%`mFpORVgVTOBV+%5g&k<~<: Ad3Z2ˮ'*dCob턊[x}R<4CD#c AS-ů$O1@fhZ+ U^.36Lu}\J~ڿE_aay.OB_f% |M)pis݄vOj~bg{YgQIHc:*<[QX+>lnCf_Gğls>`vMVew2}'O:<?~qnzSl2w9 \se{8Gx̜4!Nkxi1'F&Ї7s &!lo-|h,+n_rG[/z~lG\ e#Ue "I;b{`R џG uV=R1=ܠcbS9HS Et,ϐ`y'|JE@@ (6TȎhJcv'3٩SҢLVXw BٿQw[Sq{4*?߬(lgR-cg4x'P[@ OL3iyTOWbX){ٹPZd oAБkn! H,&Gwrd$B_q˰6lN޿.6ZT7˰loL{syw6VIܖ0.ftdzryVk7KLCL!ϝǎn ]+^:?vjHMzh)a׏TwF9$Mu'6>]%'?ڏ\gStKLH_e'yInK;d3`魆bmN:\6 T ; d5l(c@m%y\g VV1AD;V&N.>`gc\X ֍R\~FP,ߒ`hvvpmY!U?@z,&!~-t B'6WVY -4dPc 8rxdl8r2iEvB8[Anˢmu(B<| 1Dn"TϳsDvуxXN7?ZV26{(:6Q:= ^Ǐ=ۋuK3m j#.fG^G3RNnʴ塂qmash B(RԯV664,[Bhzu$Պ| m,B(?G/a2Vw0Ux8[25<* AW"{ ˠ'. &g3S_JɖU}`$w;X5׏ݙ<#2FZ5oVLpIU&)f^.+v$&&@-qP}̆~@>j9}bЉ*F5[_9X8h>m9$?TkeaQ]=N}JH_DwyRcτβARdV|0?FR|0{IL+K $0Qi'& L'-Y)v%YR@8CEƢ F_]W`ؒI9 S[~m5𘂒/.f;()0l|$7jg+d}6 hMZ<{-R!S1$3.˗e<koZ PP'~lA{~^~΀ԓzZŁCКǩTW{͵'+(Q;6qeHR+=YcgՓ )Ægם*]:u7!F\/*îgpOܐgה POi9Ӈ|xn\l34/KH֏a\WGnS{8zAO6ö%3B1} }绵1uVcVV&; f@͡^c08`HȖVf=ٲGfu{U;wsGP6}j>:~z'TNaɁt2nmVDsmၸS?|r%ɏ׫n7jz'ݞIiw?N}a-Aq#<{X6UTB.F|BzG u˪RCϭPZ۝ ^!`ys|mI-n/jwlMzmi+ks \PUJlD}f*et#3Ѣ35 Η#*qۈ˴s3ZѴ!#;֝7#3vt"QK B*ER[+xE$EItYdw.Kbm12`m)#0[LeڮF /{_+lB hh RI%3u)qٰYؕ3kgz JDjjHYCtA` =Fe(*)"9ϕ,f8_z./b#"PE 0C&hE?)GN=_PŢLftv1^o\]A-#9 m.8)^ICXg7,;X ݒa59~󠯤--3[n5K5AcI|]tt}=2u炑pM‘!JpkrxZ]uFGjI.V͙jd+nȘW+^K RFݯkT!+ uf_g_80 ~'GCޠ @rؗ%r7N"ejEߣ^o]_P1*TmzCOY"*"8>, ݯlWJh,Yj,ƮuҌKҐ<3kr@%hj/A3\&a .r;ά3<@p-y`-sM3g%E}x*ȔrSm}a^Mfc mD6[_TQ-A3xk0nn\neCȂví%dteq8yy;5'O'XYתHgV'd pHiM#,AidWr5XfzP^}god" >*"Eh_~|bRb ~* VH&}^ Pچ%{ac(=piA*pbrAr'f7vs"uQ遽Gټ̪{a-VXWa04uc=(B *6egSS|b3;6z8J#X%bz V?%E4|Ѣl2d{c  v(p|hBٵ zkHCԘA>髦%$i 16Dӈa cՒ k#>K ƾ[e!W~}o- \aQHq=aRɡ'2q%2wʛ[&P|яL!meM KwXhآMffj-+5hMk$_uo`7!ґUSO6-f7fCҜf'"/sɁ䏛3smY'y>gJ4`Nqfn6V)Kk??Izot4P~v Uw+?S 7ς?.QC#D[)omio،z-h'~y1>}Ȅ(sA;Su_LQGY9_,.%hkh DjO;JRʟ*``NZ9vDG1:]_%*~ ʠضk#X%L"jF:!;qg)|M,Fjg_mS@$~Z@M@q&Y]f購xމ/(D GuG&g9] &8wbX)܈ؾ*f`D|߁V&"u)&; >YػCEچF#v!.|*W`/GA_qU3Dt2=9P}49ioc(rsa9zUS~/ZOؿrx%i ?GĄ^~MA e8ɖm^m CA(?bYoo4785%G#߽ us "/$EwDuf4Ѽ*S-K?]V+X7waDʪu!Ujir*kCҟ{j7Q,ό?̠M+c,1C[ m \).e964 {*@~W|ӘV9i`LpsA<γw&LCPe-7?a)wbqF PpcG"*w˔Q?LEj:_#H\-s?g3G50yٖ?+j^s$jb+G=QUA6o:55I#0~aTf帷^ 04Jif\!۴buYBYry[CDFXS}mIWPlVӃ:lpnG=80+㼶iwqRIm@S9cc|yH 9eôfNHĿ"]v} #:u?'=NQWo1-uOk.$MKźT҉`}@p޶('8U "cVEsx&JACuncᐷwڞ9J"/ί6j ؊3gTyGI0lE^mcz:ހ)kXƲJLb(2k0CgkiMF|m.Hchie L׆{7cM6Yp#]fKZcJÒWI HUaKwwtk_ oSݹ. wYs>w;Dq1DM}; a*2ʤ<l fAfrE D>EnwB9/ݰ@|N@УuaHPuD}*2Z?`QnĮq͙ JJ[jʹj~.8 _g%h}@q%`~׸.8Š!jI`~z~ɦ%]kHY o%ĴoINX(C`%M;7udƹWa(mIaxqpP躅`e@axíP+ŻUJdH/ŸPrMMjއ&dKEvt(0$~װ4ɜ6.KKhWU p @ȮIb ٗ3\۩ 1Uo@"F;P8 $u}gj:L~f-/X/=H#r7yƠPвx=lKwUư >G_:[6dgtEh aoCƭ>7@*h< QarUu쓕bp/vIOc-P{Ex[V[m,jʨ}H K?T?[Sٕ7q-Y3;_75Й1m, )*rF'S v~jE)W}K+ʍP f}(.omO ?)WkyTz!bPjxy ;UU!š-SK(7 '-k`H 좼rKߖw`8ҩOKRukj;hI PfEb1Df7ARڷPr̪U}qmg>rIىp2{zu5˻qϯJ}35 ֘thW COzHCDR *KOuy#@5]%c6#'It1 wt_VyeqΦ$|rxmQCčqRTT-l秭zZvݗr- ` MD0{KoLϑ^ %EG @.#snO{UNdjEWrnth6Z-J#r$%-q|ԕH,Dd/D[㊣I:)o^XeDX-9X~ j)ڣ)G2kJaXO0 AU<ͭeJuH\<7+dw&]*-G7$V'ԴVdCPl*7`{ 4q5$&&1'ߔ!"*4M7S!=ۣ%(]!&) ~ӓAe;x+D+ߣ#ALfzw -瓸{yx#{Yj2kz|݂y?B7ɰ?hZU!\dFtQ;p2ҩk9ɺcxC| 3Ƶ.ԭ } 3i"3G1v ZywPMӲSVoc#dvy#I }~Z)8o~VF^@Y{@u8o|٦j.EwWxzUZeRsʢZ[| ^YSٵTI 6. ^?X9pj=?-yұUsG :tP_}* 0^i2ou *ZqͿ=UZ6pU iah‘ zP44;(<1xM:K*؆u`?XQD+@VG[qv{O&lT7#AL48?yr>A|Y\OVl{)HJdZ]ߡ4_C6[0rk#MDj욦S<58tJe |`O|XfYَ!߲(P{5ɯUT<m}J[6C VCf&{us{쁹ER>TC2nBu!-[@Hm Y&~L<CY@[B9X[:nu_ 檿Nxih ,  CjڭDyoͭ)Kr[HUCp :g ?.DK5n)=@.D\銰llp >r; \7i sEkZ+l>Tq rYg.昗-y "LV!CM}&]vŗUXg:g1i=ΆMrWܮ8XiXb!p!#/ Mmɼw )B(0BF휐싨Q#Z#^3^Yy2#9Q]R.q!%gGi?JL"߀G >swjTdi>F|q8^iÈ.?bp⚣`h9{x9NC}+rB~9= @ ZcQfm[(N@o&tܾ) oAa? Wܢna=݀(P=L2І?)e3\\FJD^u|^u{?<7>w:)qyI_T4%}Gh@I6@b䱟,pv&zM[$PtI 7 fY `-|־_sNP' Oڵȃ7{ܣE/v~C/xآe|Vs7,ǯCC*?1u& r(CLіD⽝kǕ_L.sOf4־鬝$rѾ޾ 7$y g-adXTo p/Q< uX`vK@G^7~`xB>~&iNWȕZ?s7M!wS[i0/JnĈQ\~5ࣁeKIHQ#؀vt~:L:SY{ ?xfYjU.H-z+̦fU!d [\RpC6i;(y{GG= U=$ۿQ#? -YВQ KGSs6ۓ:^;2(Gz 9IoUƍK8Hl@wO|CX;>i؄*ɗ MouXşyNev@2 KE6_drۚCNgĶ,YVP;&ԁα{`~0y-vDɧw0Ce-`ҲH@By|k7KDvӳԏٚl%9m 'dJbD>0i%I6BU&I|.P-Tz&!\آҐ ć3x_g1PF[]Y-W#o)kOJmr, nX[p)|B9BI$5zO􋥰Ha06:\uJ@Zs8 4ƷG$ǕFǥk}Gc29Gdy^qF\6)0lv65mV*4y`ɬx> *Z**;6nVt \8@(8EZ EZ͸0y?w-sGs&E?`9*`A"F=9canAӼx! yrc6.F`w]ːQA[r ]ȴ|KG&n {Whtc{Pa vdXf;aԺ<&A|pL•qBQ ѷ/J7\lG5ejxCѠu(IfgcARM!#;ck 2IaWu6]&d<3/,eS&l ;s3)BC{uGunB|U꽞:`FaO'@, <9k_9|ghHjkQa4]5TW,>kV9?t-({ m;:4zSX{'q`rdtoG5JwA1}i] 5zf4 [E*`?'^fy'Z4`Pz}b!V p@omuN|zܣ!F`,|-޴}D>_Q`^d f+$("qeQAyD)se gmQw~2kUD~Nm^L9hjD@Ո dʸlHU%!͔ld؁E#!/ڟk :EĒyU1V8~2̬Җ|<8,joףSdaX"yy׿?HՂ5hxڵ=lNJbG]쒃勤۴H ל(8h*J^~}:Q /hE\Ƃ8=:vxU8q8&:FoJ U}$SAciv|&[ P&:yHO\;w `a=!3DW'C6֔vĶ8*btt@6,yU3z| rs Dž`廂{t og>ۻkۿw8RP%t j}EQ nst% ,)1HtJ6n]dj[$ (000g|rq}AɜH:l-TCXrw`ZQj oPv%zd~r Ot#mrCi6^G&& #S8{8ͮ7&a\fR63J8KGQmcD˸ܣzuwg!۪nn-n90|i̴hD2QDG%{u!'%ᆭIgONyK+s0 @9ŀ`6iB+M&JWЊT!m6=)xM$AYj-LХ'⚯ɗv7|,ԈGv*!c^0D|v y׼4vbvzsb2# EJ+-PYv:zՄ."(hy(> K9"4F9҅pI8UqOtM yV>sb jh;WL6ER1hCo)z= TdI^h-;(B@ǡj 1?P:8N,8h̒JqmP| Jb gaBdzOcl#_ k$1_<&Q<x_?[0[bSb} ơ{WŪȹT oX3+ a}ÂZmh(yw c0 %ᘄw71ǍYϚŤ7bEjIIq[-l`c_e^Gm1-psy11MV?׿z02<Ϸe]GvUYa\^i_X"T>l|ndtϛM1+3+i┌N:iN!f%J6.#jk<$hC"Y5p[g9vw/\S. SPғDlj*@wkU(>+3”㓥#u»݃"UڶTd?P%Tg86<= ]uf<iYKrwhhL.z Vs\A9aT\ <$EcU-2=y̚( }e$ql@/$ F(of86\,KڹV*W Au,zD"K.N~b5"_r{# ʏUڙGU(vAXLbI]yTnE,WwK$B[+KrtlF뗁rMhb k p^]dڷ*\Ԏ 1Ȳ\ e&_ &WV ̯I9rlAe JR\:} 2=cx, (:. {s-sWj3;n-^{!PsS#b5Huw›%e.CJH';?C4@fS8|R]`h!vtc)HX`㈏bW47JPT;?U?WH0a9;/ >7ptd `6fy|hsjӭZ'!YkywSj{, ߡxU&(U-+,3`=(8{B*Q Q\H]M]"'odIRq}.%-"!k€R׳H_^[u[ 'ߊZ݁ [BEpΠL %MقM#ZZ(P% `XSm& O$zLfV ZM[?eZ*YNKdћUd;* Orz=*VwqQqQvvC2jPŦg.1eMraaٹ}do4-*|G-<~kZ%6 {>0EޅyWFI~S h7Pr_/AIHx./;8|/* 4aOd}*$CpU.uqX="E1[LDSM9B:@q̏(ר e{&?x>Jɿa(Bm)25l?L~Îg]b!BH}B)y`L/C$t.a 5Pղ1ƈT}H"? >f-D~ζ=p05Ňi uo`eK1{m py%6lő:3.Jq?7pM k=2> #m8Vf]%~!]ói?UbϡJ\u 2۬h;nX DUဓ출񭵱;FhK}Q _ѹj=$pco,2HY2-k(TDafz ZjS-Vχ6!,?/N8.%a-ޡ~Od̩)RiO|~B QH ;b XfZ\l =fVRy*{.QNj(E(a8gg#9&ZaDTpW49;#)4`hXǞ2?4LFԸ/R4{#qtf  c߇_{["Ji٘IՒUJBjVdI tH dF[Zq#[J3n'_ $q&laбEQ. Œ5|0x8E#T8}xIx2fn&?)lr,&¯ajzrގd /e570#0:0؛kJM9닄Pwh;']&ifUݜSޞ"hXp<5-'ё1xN^ύaSEMK}b0- >,'1nzոCIӵEMRѴV fLϽFY<SGQA:g(dV3_1dr3!B'an_B.FT<rGӃTO *:XPуn^BVO#k1k0`.K ;ḒW[@g)%fJ )sMvL%o/uOxd :ZyfPym $(O7< 0` HnM`QK]TkrmkGyb'ن* "GR@>N U0 @KNRîv7[2>Y(_*:@| S AL%˜!PUFV*gKRp7'AxVߝFx_C#ݼ D`kPDt AE&q Q#w%z (u:ahNVjK[[bη# nӑĎ! teb:|T}ThsPF8]}m>Wа"HeiIA X/^{.u5m&2ҧ6w;ү8'Yu~;i9SbZe3yW=:drk 3,5n254K.tTrܔ@W*}l=ɉBr"_H9ҏJS'Θ ee10$[(vjPi\ I]vKCkooօxRt5"- *Ŕj,ԩJ ]l{\={ܱ$_ TM,'b.Y}Y'簮XST~LF^\2CLE(T] :BEKvN{ggo"LX``?;˨ulWJ3mFT׀V K~ 8^F25 n.kW6_k"AĹUA(2@%+KJfTI>L w­ xtoSGИTxNbD郍Bn ! rrNSU2JPG-֓q:4dwva;_z$P]m J2HGo֑,Ռ95y."(\Vϔ/>HqM!Ў ISɀˠأi lq7]e_ t t\6$}u-J;Auii.. : ali$N nMMo-b+ @FZJb>_Ƞ?[`='G\QO̐}f'u#x(ef`p%fYGV&1OU}z`AK=ƻ $1Y@}˥z{#KF?dN (5 epqW<[ǽ5_FlBZ6 9 Y㠳 8U Hgғҽa sɭju>0ʍra`bS֢jf1lɣ4Ĩ?1M4lZBJ/- b\h*}L(;Va;8>}MG H~m(t9;x],Ibh*!R"#EktZgY#:%Y; *1Aoo]:&* +inZW05VvC%`UcDAY"QL [FkmYJWen5yCP~4Z| ͻgN<l^t9M_:T AfLF0r݁2qߒwd0W;gbX#NR;5+:\υstLZ2opU kˁ?Գ)Zz&gWE0h*_hw ?UnHcY z4b xqĨzxir.KBn7YT9Y,ŪkeE8ӭqO^!:+AN[GMhu]?.d7hT%>nt 8rY]&pQf 6H'0:o[4[iC?,}٠Cyw2*ZA]}[i:|e` ݦ*C NAa?]_`n/ ^MG3{Ɵ+])mcbE|LC1 Erln_YF$)h%0t.C%0~)_uNa94HppBT'TdU$N:i'\SYr (JG5;u(9ޚ)A uƱ03Cc ,̇Le 'jׯˑ{5B8:Y8X.Pu KU݋cTqؖ?Eף\Q$x. -`AZS *0^}RDWZ'G8ͥ960ey5V"ظ] S<_NeGTtp N>ZCA:3/֥cg; +BW5,(ᤝT"|Y6H>zed}btT_1bǢodS޸,ֿbȝ"?7A]\`48)V(_]`?Lf&^ o1/操dV {geZh1EލAOsơG{1ģq H aLn b).`!BcbE&A= d1 09<(u%L./U-&n|ތʚcJu&0=>.6E~&W7ƲFq-E@5 3b}e9`(diW:}U),ʳ h(ہ 5]̓!XVb[=O3b2`BU)E w]%8rs0fP[<͠?1 j_:`=9x T.@xYtpn'*u)>cCŃZTj Ve5_eRbHnOq6SNvv(LB'G$wlj ^U YB 5g.LGe[<+ˢC>? *[tqsVI- jspDzɮx,oC2*dy^Mߋ)d۹q|Tf4Pv7$˛a? ^ܾSÄ؏ 3$fYtxa*SAILCH~=LA+NK|័Lp@HK09dxR=d7B { cSF佧ENXl9?N{WL'h9{I,B`CB$ #ͯEȃ{՘΂ǴDX1awy2КS@K=Ebbl5sSi2b y LO|9ᬋNT5P ^s-=E ;ꤽH smO/LcH"*kRv 9Ǫ#,N?~4vĸI_W//t)2ӨJzi%_Fh1QҞ U@|xXV1Obs| >][ى#AIPf'+af@Ҧ^R$gˉ"͚ 6EXѿ&E-)M[m#f-7G1VfdM w @z!8[T9MA4db1ӃÐwS(Y'zC\_NWY7C7a~Ȩ3ajc[G*yA-'S %D)xf/a"\ jƁ#<{_u ?jA0Ʌܴ9='^ 6c TF|x1u-}kfjv7u#X ]fd/xM4Qba(m+2я[=ɩ" >R8m҇}@bF" ^peE;[(sŴ7ȿUk?( u/ِ*O}yL~Ŕ1* "A>.f^ ؇{x Ֆ[VrZZbFLLɫ<+S!"Fͳ2ͻnlG2{pWeЯ W󵣉i_r{g+ kvWe[>aAk/Y%D fiFv+*5o4.^==i$)Rui+.ƁbOq$|ͿK@4C} X\K᝘v$h. ӍNQCr'Yj9#v4ε%z~(y ŀMY$C.099[5~`E&i! SH0.L0/XgNT>'Eye=,."xX1gV |p.UJD3T^1,n?ƄqG}]&?.`Uz\)I Da]`'T-oZvncE 0&}זBFsB v ڭnS}ݭqOV2*J{WeaBGiWDps'=^h.9*SJ0)_.վ'Hս^ܬ&Mw'ly0v=`={3(>=&synD$;sOmۑ<ǸEy3wl JD'A qNk/V1v)L Z+U<,>})'Pϖqxxz(_kdE2l bqD*|FdgNVU[/5 <ŲO s ɫyS1M/ҠpN(0,7|(?[W `1ۧǾUtB1yTaj,Q}E|hQ .JVe>Vֻ g!yI)ljm 'a|$ѧoO{]s#8𥮨1 Kᅈt2R|E3\ 1Q&Wn]t2fHtP(勄#[ZpG!urG)-~x[r2?t'*l;Ē-xbygtzDŽin0\K\"B)025'0|7/O_h NUX&еUÄe \SDgzkp6Ǩ΋,#q1x?Zȳ,QTy*n?|^ M5&=a׉ڃx}3yfЩ.9 f= H?*I0Fh/Ú/z s2JLGl]=b?X$*8!0#cJ'(w: vdM`)! \AqYPrrzr֓a54sZ>.n6X; +b[vAR4 cp!q# GZ3i_4*J-n {@Rb%S=IA6ƞ .Ez^ѩHzd*D+Z{9w.WFc|ܸ~\S>,*bɊ:bo)7ZUs 8EETh[.GYE獨oY&C [9*'r16>ֺ͟0՚9Z|vӍٗyYO6tѫߛ=*0e8zSk[nMIw8!ḾYI6xq6S֙ oi?HRׯ:pIV),-9a?At4x1f3lRң p J;*EF2 rl_٘6h\]-%I'<ݽ_84> k$]ܥfф[N8<<,ȗs]dX?5T0kL査UVʽ6}呋GG%ס6 SFPgzBO;BG9W<<+8ta ~L?!)ǹZ@DF{ZFdIzPFZS ,^ˍPM_^l?8퐌yk1fxYWc=L@Yŀ*`ڃQ>PKH:ߚzM+]+;0էhZ(WM9*Fqmr hB.IN,g-%5Z^-b6Yofi-[gjSX4 \>y2Ϥ\|[D72vuT ]I;@@U'HEFX6-6s*?hR?;e.B5U*:sYKs%=[hdqr)-ݯu|.(JJv:2/Ѓ<2j5kZuC(wk.ʅzpѼY-pI!FҬn2Wp MٵO5}hqe~2X?!!O8]{oKIr|S]>^b$A}#Af&3Yf:Fj:^neeuB{Uw,,Bc&v9jDsBIaŐ0@j_hjzI3V/0]6 i%"N4V"]w/2c6NO8ƥm2z}OɀK<jDiPp2HLC<IIxte@(! =#>?ỨمSE%8>* QyDƗ<H-dt,趘Sa2ip3O1mLzB^nUɄD2ƺ\`n JXQWԈ;?W@|WIZW{[]X[+J?'v43n_}2޶}".-#};+E2HS ]Ľ6h5ϙLMsBls %CVrn CezwXxȨ5 ( _zV]`ڎ@Gs^nBL(p٢CY|L"hwq̈wL} v׏.ͥQCߗt}P<--X|O'ng&Z 激C^lYGhIJը't\’\3^fBm<ǃ+(JnGb>5%RyL.x XC珍H-~@6;$LK)?Q#AM(yNe+!-^s"0u?{LETc%{sGPC7ӳٗd anF9f@a7NJD_C..CL|A j.~T'eZ:OM X$tG ylK#j><}\~K-ATAp_'v}_tbé6\8i 2w‡Z?ǤBd)ڑ,[jO0Qyk8sq{zW aPJlG3z%ORU<.Cmw"WG96I  xBݵi$,`JQ ?,^e%u?rLF@ox: =ƬÒl%Dپ²DMķ77 1WsfaJ *T_ʝC ;1Vui \1S"/k&zIM;<>S!0(p$M'Z9y]f5O=$b_t19Ha`_G׌/")F*A] c!`W^%Qr `}D$53LQkدrA$pGf3ʼnA~H$N0x.9z5<z9-ABO٤ . ^\iO,Z=i7JӽWJM)I:M C9o޹, OG[fwV,x#q̼Nct1C'%rېչ?--^4.>)=jw(Id + ,mG 3̩;m[SZ\ۡqD6bD+0w( FEiW-{~,I{Y^ioYrZ[uSڈҍELH[K]q c'q{.z8E+X def"w(ZvrfF/ӻ|+g38%omIV([= k"7,.p8f2YDrBY|ËO5!sxVgӝO'U5|?gg MpyKQHEqG: 6 Cg[k?qͯHUM`h7fKUϺ+nږ~h8yF>OW:? z!" @t{5dLDW(c-rP5/q9>XLJD䑻CnJb!)ǃ-z!$wUECtZ6NZZ}1&JdUP'1O>KጶђzDy'aQ1qI* V gR~]+YtXeطr^ݸ9Ļ%ǖͯ.pX <^X()) H+¥8E|iDRI))aPw}-.l _-E5*0ڶKWFq &!xcbe]O]mr=^w;OOI.ҨD0ѐɖaguGt[p" #@BZܼDDSJj~YOE?$mړRMEkr| K>MI YkqE-ˠz8xq| X[SvE|vdЪ7D:\cʒ>:Z4u=ld&2Xd"b)nWP!a4'^1ZAm4KvOO@ӕ>rퟰ0v7 еKƩ7g]NW,><:`O|0_6L6Ea䫏/n;$WL}-Ģl]BϱW]E=IJ;!c.KHs,xY+H@\z9rG?!.FT;ڝePРu&S[>dsT *jpUrjNARWh6{ݹ%=3d#~ԵYlhjJIumҸc҉x VV>.&sN"8ެ@Ft`YNv/t&V!|Qx@}FN-eN]PL}X¶Sv BBM ]^OgO( z]{Gywqjklmp[f2, (:1K硱ϻpXˬv X)i?zUϬi^C%—Yz'F̺z, :;O$@6k<^{ŚzL2ڪ~x~cpٶ -?]&{2d!GȬҮNk-$3;Ā%(m? Y[@0RjMO. C_MD$Gͷy9yX C%^SA3n%(/B l{ƆF*Kyz ;Z8[̝2e3SIė+96[㖟(aGA&I,a'f @Z"ESN%lVSVW78ۄ`1¬n9U$έY~M ZDizض!lkۇ8k.ȧz4 %i;ն* OH, ЕւXuMmEjHoV&: W{5S+ '3;F)!">(roU$12 iijSvmQ9>Jd CuGM${WsTFNvDQ6"?S7 ^]9*Ⱦ*:C3l~;[OsY\'RY{(`Zk_8]Z[{`TYm}R~l]e٫IQ;c Lm3Iq93)"j3(V=ǂ$px2(ڇ,"OOK] (1Y~ReCqlȰiǐK݄B;Ék8nAWHe14f>ؠ%Ubd,o7s+#hצЄ$_ĕZ8 fAZ,y`ZPMmYkxqAtV4]]6Feln@% O-6.]3jvE$&ìʽSʹN0'Hʠ8وN3mB/ y[W(KkV17 ã #Gja!+y%xVgmjCׇ4 $Tol*]D£XTQƘDŃ0y:fP@qh#1aiEgtÏ4m9XJ5=he5FݩZ#>Ro c-,t IYF[o}Yͱn%BPպg׾nig-ش6;@'%V@Pu=󼂄~ď .+M a珒iQXsFHQ-'kJSmoL h,"͝B|ÏqLgl!~ f'N._6K.oCZHajȝ&8\Zk5~5M֟DI2Qɉ`)jO,7<4ᚲYvw=x4&;Ĩ?X[3ӽ]{5U)lVLmM9LzeSQ3!8DqsQ/sq8rs a$];C7Y' og: _7I. I}~ YG!0Hb'b-5{OlTژ&!eo`|A|V|)BPa };XОedA+EMDė4Vd&{M!)Y :F*D)'V /jNp隹v|;~z6#iƀ3z(5v7ɬ*".gpU>h9VȐ{S^ENL/: ͜bao@ 3QW/uHL*{a$)@TudGQ>7:%`DH7Ts`*)@1i2Jˍ^$-.XI3'Gۈs! $dK0vҝJ+g0^z,} h*u É|CRze@=V0&gʃH㔲vHDu]!'?qɎe[j8ua(w%JsPEjoE)ux3D uM3 Z~cj-5n8 m ZIWJ_(13,&#OVRJ`y9IoSj 03܂]?Gi֝YmytX6~ ] hm$Uv1oQp X#b޺t|%/*g}i#:#fgoGq3 Z51BΠ{+ʅ0G [R@mB\e2L3'uʚ`ha>M/)M;3x?4B`ԋDILcB+=mO"F_;I"\F!)p֯I腋C:;IᜟS*Zx!¦?G: %[,I{.y*}F[bGZ#~Wr&Hv2T[:7X %tH\Oj.VwL݀4>x®DӓfDzeo-W~ чK>IILcHcF^Ӱ溒4ٍ]gGFWTBoܓKV2G -6job$]适C%t}?s׿|K25 jg9G•:}TII+ HT(G/sԃZZ ODL3;([682^j&)ӽ|4:MAaRB﷡cxzTJPZdۘWdW6ky*E8HͲ"{~:skCZ "yE -1j[˵(2 ،q`~BOu;ˏAq{٣O\ m<Z #tq!פ%a)& T n 1v6cx4]?"b m&.b+Fxe`dlVǑc J٩y#M۱x&g(㠩(},$"y+Bg~/ǯPA.嫆0~sfCԹQ{m_ԨҲmЕcdӉxM/= NC&E3\hKu!SMA ф Kd ǪK*@ R%o)L3#fsxٱEV)x+"*?+I.jO1˃#+́;QE Flej}Õ~n M[&϶{s5wύܘvl_̫N+iW4.^H迀vX}sX}QkڂO@! TXZh9ޤ["$8'|&{ i.z @+|fq҄RZ@)C"~A3J땵 mB*Ӊp 7V>Fװ^ђ ;H_ϟ=+b^[rhɽf+=$t T |YZxP@S {/K"[e~;[# }j%nR_qyvSXO5 p6RlרNDGYc=Zdha qGToF'Nx%ʴxl~!Or2ģ=KhqԵk c˓):]2"*a~YOp.bIs@<7_+B[AbUrL@HIi!Uj]i' x7qo2`+ lg-![23/} Tp*EFUMgqj%%wT{5雽/# 0\'~;h˾϶ҿ!݁Py k0_ N,;5N"j)lZ;̻*ɦ`.y7#hSrZ"3c/ '@hm[b>7i= f4.{&G+9Ky*#sU[<&0TW`Q Zϋf B'At*~ WUtKPuttps7PE8,4t# J+M dK$xƄzpH|?Z.䳳h;j Y^x(Ч|X]mK2߽1 (#-}Ճwd[ 0S㢻}>fo٭CuXvdоeDjH ¬S)>LT6|\~坵'&-M,l"L.MF >Mk=s<%ûل䕋 D 7H*d#2]vg]F) 77Y}!eOET @ rF l?Q"+(J&ㆌx֝tR1iaZk'6ƵN5a &V&˱CfrzÆ%@*X5F]LD)Y t,L-R-W0mnŨ{]H >yauui\V jPQ3dq:aS>"pM[yuum+G|sοq7 ~$n.͏7浲 zHH.ht:~I|f<Ld%\8\L"MF oW{NOS uk-cX%mf|?Wи bпz)nQyiqܷt6MRK͌!h;Wh ϙ!XJ<^#v=Yٶ} QeyYnQc[ZĤ<gl۞;J-Q⡂ạ/1?zFzsyd:[F3Gq]PCI,Y!c~yCTzO㌌%?RfQNs˞o"je`p^RPE؏V*2s,@)q$z=ò,iBVWJgm:;}쌼UPr05!~ ҚC)Ar wF8 8>61cf{BbI/ǯ/1TSL!"[5t^pW֗󳲒Wu}Mtfzh9ʜ^S(gKqsC*۹hM_1; w1grm'HKf"ί_ʯyFhPU&5XjDEIrIW%v7sd"PUC;ϜڦN@wS.X"xg!'0SA`h4ro% hQ y6߻VBzXHKLN!*M=&ٮiN  dHogƛc=FMP#3]o;3=Uʑ?HB] _bs?B#@nbH$YFo0s hs(%a>y Ȑ1FHZ+r^f~YH&u6F$bb=HByFpe)9 N$fϯ$ 9\Z^W1Ba}_XE}FAg3d $J[Fwݥ?.2@BlrZA/Z<g)3q[X̫XGAl ͇t1`uξ mqOeJhۗ+b7jξt%OֳshQ'~ѯ$x&(U54cݢ8.IVRF%b. nQCY5\LZ]dXȥoupJG)zOMA<9.x6>ђMU\/fL}]-j1>'d⋺=0G  WܲӋzQz|N@T>Vw~[SPKiwA|ry{Khdd,A֫8偂Ex4Q{XOo l'ҀJV ΂@"AN&|hJV`_ Wn)!IۻuYK>Hw0t=cI,aBc"ԆДlMuL!}^x.vli/ ojMaƩrrZKAgsuӟFy0({gMޕ1d^'V:AGo[z6bSMҞ\mi+m2DE&ºUll -! !_tF}KMV=yy|b˫2G8@_W#*쓩xJC[9.e.5A?Ϛ9![޾&e,g9ZJĆBĶ 0>;;V#=09o h*xuLhtWѩ r )+!{\eo!SEm!1v>?N9甒Isz\zFۡ"G{P {18q?[P􇩜e^[.1qk[J)YŸū!p~`rkvNɰ7Ӑ3^W7<{&5f ԅ] {9S+fb*FU2d,N "3Jq[Nv"Q֜ѕ>q@Q#"$Lߒ8 ,_qٳgfm+5pֲp_ԓwY%X{"C?Tw+g^m "^6`/3Ujg2XOJN O'*mT SHx,Fa1?s8E]eh?/-m85ȑ9,m8LH/?M `cG< R~ʲ٨MD)w\"jd+o]Lmy~RX~L#]FFjC<I ׷k-͢a5$gUyPY *&Ʊi ЛaUXWnLUG@I !Wog9kcjWG6Vf`2!F(Φ8DFjD Jl%!D1bDdz#Nm\54wG~u&hrZ 3lj-*7 32ž*Ӕ1^^LJtȸ^=!9ahK+<voǧDV#C\ k =H26ZpX" {e 8u^k2\iUʋ)lf%ڵCS{3PW'OCH7?,AbijJ2KvF,%d Vsa u.F۪z.X7#W׸F5_6tG28G0HUz]q:"e+&+E$+afn"HG,u?VNHg*q9zD߬Fah==oINPUC&+kx_W u=B17N{vcEԔۓ'rm95ڻKxVB-"yPO8Y[wOgtk42JgC2 [z"X#3ߦּϚu O;{:_5걹KEuFp34n=K3(;ȼZ2(2VP,#Z,&z+.]I\^QB^ ۸qA<\Ohԅ#t0r@W8*76"5Dv;h&Pl6㡡Yz[N85~۳~3f-2EІnCq.cWD$P2&1JY1Bj3ۜ3z$.>f:dh8(Olyug|-i2]@ˮmia(Y{\܏ 7: 7VtpT}ؔh5MfU?PbIW+52lrw><'G st*{54~ l**{s͸0rIJIxD}$-]sj M=!?w ;J sLVzĿ RN6DY²PqcHENu#z}3-O;SqÔ#WX*va"lDzH-?4Iᆶ6$ y.!V.Y+R@zpK BcVKu{ t7O "Qz=[ !B->wX!>/gAʍ-h M,/x)6l}}*f6WQ|M{J˞w K/sBS]-ZfՇ:yTir2HdNtS] bmg `MM-m<,^=fΒJ0 \A jQQt-BeQ+7jHc2WlY{ঃdmE5rz%4'V`It}eH[Ah.~F )y0/ITO$&%c_t"a9VjSڞ}RZ8#zppOXhrf3oLKw2=SeQWY:mz;7DER(K5t.!""+kE~r)e s c QLr2 0leYٍxBĻ  @@e4nۄYaoHYzXȽ_X*x>;պ*Y_@t3xֱ:LJSr83*u uջ!jدNAs!B {Hdξp~dli*8 a@έb֗f.ڰp$дN%Fy;Q0ImszBTF|LJ(VL"*3e.*#Qr*6rCߜ@UNyQPuyV:m7 Qoe(NzdA*v{.6IȜrf2=x_4. ݥ0-J}("Pnw7ݞ)LM:xA했Mm3|Ig?1I1P# 0*Lx,w]tgUJL39|#Ra;F!.qZM ׆ʆ8e}rE><'Yno=ܫ6G& DVw E< hY*ƞ{dZ/UBcaA+n4b>xG̭Cl5 GSE]Ji"&H ~.yB6`Do}Zeě!Am,QEX*m8'.}?U`掀 LaRia _1xa8jћm+?*G^k~1mXJ J[_ [anVc>ڄN+ \u8T;4n?\ ?7EwafO\ιWPQpXS0JR a8GYbIfD23$%_;=< +5m>0뇑]NjlFGKWTXՊDCazc2ʬed)0^$0osuEأfJ++vM a B) 2=܋H 59hz%ӹ'V|>}[xx!^.[e2xQaJSfӾ(z nPz/>?;xU.@.L;yfDzrCp;'0 g#YC(Wayʼ)FA1'G7raR?`\%}|]+Fj Ƙ^\2Y~-M/?tteLcE6辿ܺ(M&X;Q6ݯkFE!B7Z\'kLh=蝕 Dl DRjQ~F72'}s7âoM ˿'.4;1d/̊7d|\'%Յ}|it- F㰗&{=dtt )9KDݯF&&{>{3RLeQxZ<(x_"C̞8~lE pCA3!Ki E4ZۅsW R.#$PT+U4 4ۺGnΎFo3fEoFinSIQ`C=iIscSQ`)goz[_Xt"Ӑ| =QUۏ&P?B !{ц(<8 k4s+S%Qe@׶PLK_=S膡k`(Dj6Nٸ[kE3Z4ui6LJ(̰3~Wp~F%<[W6P}'zcb?juIÐ5dL,(̏¼|AUmO,Xj WX27 `Eep)M%L g+Ll6mD9 -3TƮ@ȝ=vbBO/^{lBQϿ# %Qܢ8-{'G]QdMbL z ,~i0hsuz㫀E;# Pn-?5#"3I EG"MER%c*zle>AX5cҀֹҩ(~vpV(+B7@5$~Zva6Eq\Zw7anB}q+nQV%0,4H\%\L~D[Qj09*yl;:IK(o#DyJHae6;#{iFZjQ*iο0uz~6j:~4>``ՓVՕwkJ|~u˅BP.%i J-`~W2.Bm_a&P 3ф,Ϙm(iO5Wi,{c["6J9~3;'iO g1F@oDk[K{:{ߟеAZ9H3.I$N fD'&"p{ˣf6>Hp϶}n!iYϵP6*kttm!x,6\m@I9;* 5S/V:@\m/xovx#9_DڱqͰ?.囜i"afsg $ρ|K+.ۏ>E<8d4b])-hJٝ;3dS]~y?gHo-iؗ" #$_&MJz%ϗhǫ@.u6 [mb5tYδ"C  ior׻y?hn?3M;+,gN+ m- e+\BgsM ;"Ѣ=i2lRF)OMۨd?d3%ytUl(֤evJJߪ >E+?AV?{úT}C,~pbm!3Ba[69sBC5w rTnƠPp9x9)Y*;3~iê0jM)ZT/va0d}6-?;.z܍>W\,xB IgS\ Q:;,f"ZGSg JLH ;Ź/b8x%E#A,r܎_F&SҸi:@a)+AX"EJ1ʠ~ C0SF?Enɬ 8/bWNꐦ4إ%Ў+!GL 1_bhYm,vUQɓiF-`w)"@h-LVnu" 0sŧ(A$w46M^&0}Fg䨚&UTВhQk7]E~$x@4*E7xRo ׋ڗF0߱u@boʌ@,]V#cg+s9 ȞM>@l&k1$']D] 9!3ӎ7bbeM$zt6́{b 6qޘgi֌sKtHWT敻s v3<:q\6Mic#'+8`rtR$؃̀StQwMqG|PK-Uām@+E `Eg{Ű5,uaV [sMa=`zA?J \/Xϳ'PQ߂#+]f(~"-kRʖޛY` c,niͿDxD\@y]iSv>twvaF vl7Ş61 U yÖ9f$^"Q?|<5˩m% 1f`H +yDAS:/#s.=Ik9py: ,˔HuaAWћ*FiTBa4TUz…dƱУe$\oĝȞn]^ӀyTKd0m# o-x<,)Cx3f+$+E񡻝-`'x̏Pj˰گ᨟c th{܀X>3?(,KG?"`Wo]lIԢ/ʠY.?D]|m_לEDm S{e#8Q$o:gpA %Y/&5/l JC2BehΗgPZt,b g9/NqP8s*+፡FMe!NI,J]<\b)4K 2<eB-@zq̷z&[Lagq],8?㺪9_)u:vkɷP\<A2s\Ѵ7ζBl@i(-dL V6\bhO- ZHL!Qp7gPV _rth 6MBcxtai!yl飁d߰2;51xnujEB4KqfJylhs$,9I=: nH jv yLBgdEan$џԡ;6U OmOvwaua8(OJ4dmoZ&ܽ_ ulʧO C0]SDBj{kU܍}yًn;>>ѣ`.M#X$@a-V!5nS)G/9Zt_SV!]6$H<;;MLL㦧84kwz/PwAXUfL1k&Ct ^,Ҝ춣( 0ޱ,;ydi8@imuOY9߶L}DBWȂsI/k.ի~|x'KfG(b!D}8ײjR1 ĸOP Ԛ+ dbq.&0;p}-U)p]l9MάN.ZoÂAӀF\ZJCeۄ mM28 'Cc0tybr) 1F'5X1s`9h cjtӄ3U"M+]H x@i9/[)nl+# 8?- EVus[_21a)eK 'J%D8%x>Qz7T®ROh4X"MHT#mCL?0H2nqqPA,7VvY1^q{C=zڷ 7#CB1+[\=e؟QBk=I\թI%w!ѕ+8I .{xyK<E{XsHHl$_kp1!(i%yrZxRn.l:*S{àmoE恣>Kǘ%4N5Z [4 gfA󸊯K{__zKb"ݸ %$I;OQ~խ%U!/ȠZoǩ:WoD(gP ij<);%sGlbWx Eݎ!} Ιz0@dkt({^m4\Kz1<- X7C!*MS]aG5Awd$;Lu&]H$2nyFYUʦo4$evb2My,zq:%^ pl+4ğ>785\}P1gǎt#zRu]WD׼-N+fP+V \%9'xz\(-+)(G)Ock9O`Fw8g$O]ZrEJuF/w=1QYK{.Jceq?"_jmF*t 'Cc])3h.Zf{WL~p%uŖ zeHTZc oL<:iAw[3;!F W5)]HuK౲lxe$~YYʐJwaJKƪy=bnAboyedppnP o}'1{]2a"Z(k[G; !٣qˆw]&Ɯ$eϓ (iex|R}=h[6 gI3?Gʾ*yp_GCwP4u|5g) zh@ &Fp J)x].zhϐ)}X"^ga{ -+lS]ķrM(o=#]) V?4zY'<\!k[eOT ND.q("Z$mwݺKd֤M@)㷦`;Skl?9\Pz"@%? V x@Ւpn'szJ줭ٽ&;5=UTF>!{A  O%&;:ϵp1FaT;'D;=AѦ ",3D "04% 0ݡX.0b_8NeZ&Nkks4a"pE1=hOmQnڒ) &/%_kQC=Gȅ./ @\@??ej>*Vs!X5l7i+ CUUhvL?u?6^;.Xiˠ8Y. X\,=ǥ0]V󈿳5ucN&7!wn#$螙9A{/x]fۜ!cؑhd%_+\fwPS=#3q m`)Ŕk۳Sz$Fn i(@Yz)oJ] 7aU) wWBQo$`CM1ǔ-))GUI+fBN?n/@~غ^Y\?.O]I]%SPu"C>F n/uOȦ !Xx|HNub' ߎ]:;-A^[o%;?{8,1MkxȮa?Th0ՏhW0.,gհ=ۃ#fyWFNk".0F~6𛧴v\5 3/edV-q&'M2*?oχtNF55Ô ' YGjF= O?rř$:$W5Cpy J޽[R:{wϢѶjSb.{@ ~4]೪ )VRlvfZWTt [ ЀJPrd},}&]{7OL9.!X^2&K÷4͐MT:.ě#}v$18tpʦɡ-(﨟>YH@X8xN|*e|uAwTI}ʴN"j`ܩTjTsxd&Kxu!g{!Sw~3ϖu"*^TxٮTɝ Ҳ+Ui:߶ X%HSމ9ސ0k2yX3bKa@I>~$R}%-X`_v:34%tB9>p-~W3hrf.ʾJ(}!N^fr+F1oQ. bp"yX%z*(lS"fq`5;RJ'Fe u\Z%RеðS<4qC!2׾@b-:lqaGF,7Xt>6> _ N_zn%U[vT/ XH)}ҥ/vV駱#4%ֶ2-Hdq9I;C$Ca) zZ#ݡHwݱykߦ&f^EW[z˝d(Z ^`1Y͟s?ǂ1SZokq8(fHEˑWqOKL瘜yjQMB%6˝ s|csJGSȼyfķU{Y jv5&W?G'D*H Jo$A`0/ Aw k_aGJ&u[;}ooE2S0H{Sܺr樓l:< 3|l~;FaYn)Kmxj|+ R7/4z*d9{lJ즏Yı]EBS9V8*9IOYH \9 C7gEyJP)+I8.+'n ?dQi1mhڻ&LTR=;O`%R #f/o0A>85½+~;%1v|`+'YfQuG&Eph7`,!@uD iX x %QHS'IJ*v3yX|䍏PS|P3\/(3e3@R^MIJײ+5Y7 ĤR+|3ɥ Vb_<ڬKy\]sHY ^V#6kwDZ~Y$M9mc.}3_hш5,%Ph\~a8<_)aE#u-.!RD92 {pY}nvVY6Amd;LjbR#/"ICÉ%Doҷ8R`rwsoqᅵ8+CۋW1ħYcgEُgyݔ[j~/Gj!5VX D<@*^^CW#bDǵӌv)dF`gkys]JNy՚O)z:a[YXߣ ,BCx3.k j{Uڼ驨suY3b^T"50wD*TMsG325ztaIw#nd{J`i``k#֩Od#sr#t P0#4maG()l~63?-C *B9ԡ𗕱CERw")mҳfmګyOɚ5kӘ} K S'σp3=&|ʊ28:&%Y@'k> > hL'0NQΖqMyyF̭WHXdTQn: ~ϟiŒ\G&MjC9Dj_$wcɫk@7lYs1ͱT|}U#>R{+ь7H2ݽDT VJZӽztGpmGV,msZ.i[lI큄DX'$؆IBby2dst ~U[LM*=eJ k$2HJuHv3g?hcHŜ䐟)˜C%𮵉)ʟ\xŽWWQV"IdCa+) QIJe.J?`UDH%G:4%rl8ƶ~6F*#>RrR4iYjs5e?o|8hd&d=F+aKyfGBqη.ΎXð/g Nw,0ޤxƎY$vLD$4` 2G8`Bۉ*0 p*ĆݏNFx>R+sކ)VwQqU-wS`^@K g_˩JOuՎ\OhOh i~}ߪtbN~,YZb3FDŽOn:|Y:3G#rL|x+sOǮHe,cKc>%s_Np*R*tQtL,UեS#=OkK윺6龍(0C1f9n}!Q|6F&s)*75V $PP,7MiC |<}R i;.5o&'hvJQ9)Z ͤԧDSfMe+bCY;u߷{_j}JBM\eb40?\bۡ=>=*dII6`_)֯P=] FD?})WĹ0RKLcYU㊄P3B ,-^'6UNBogd \E/HVҰu$DoF,2/Jފyom=w~ɃP>Cw yN‹NAly=S%NNJK}Al;yVWO^EGٻ w̔a@:3 vJa:ai FCS~q<(\s:!Ө>/nFb;hg6Z ,olj-3%S}BʊFU%9|= ֵ m}95jF$ nu,_%uMƦ&Bppۚ|&W Kj?N~ӶH`KPɦ=PlOJ!OwIKHE Q]26;2n9IӏzVm<\f;*I(,x,bP!$ۀ6OiW 7kpTb7ޣ_(IG߰$ghC7aŷs+퓃}3m'e!*$(o򱍋x`jW"evI0i0Y,zmݩ`pZtMZdAt;(%`*6_yԟ}S.Ʋe+%آ(hO51(`3zpxIKJa#XggzlvIc/2exd'ؙF?%R駰6-{2KpTyU5Ddɒ'; #bҗ~@]ĥ\vd) ~r#^x͈T@~=q8x?#ǐlop+A@l^@>,0Ґ"Hegb-OZhhֳpaB[=K)ਲ2h"LL6[rjr6LpC=-*s'ݑIxh4I.2X"(gK}c!Kj";,.6qC|V]y\WV<1Q8 &~7 ;V[--(C¤ꆭړyZFxn?Bfs3f8~-{(76"7uv>3AnY#!grvT( );hi@2FvX, 1AVqoWgzQb4x;1 ʕ ϭSzX}:rv\r]Ji )~bpJӡTO9,Q (T[tsu]ahrq$m3%l,!^Fb^ կE|}v# u<Õұ=9o#)`dL/(ֹ{%#5 ֿw?(z {@Rm3bme'C뼩.¹9d!3O{%3#tr-5Yȵa=o}fşJqBkC $}xp@|A|GfA*x{BDMC0 R++ȣ]"(uX3_aCAiB4޺(Y&$sw7,N%C7 35s 2DoY6Vog!=Po͗A9{H|uJ'kWRD!VcZ܏FcT0|0\a.7}qÄ߰ <[(zrZ>anycm_Eˋo(wίT4-Bf1;`eG1XyLYRo $ωBTk7^8x G9f_0jEKuε0R}]dHTt1-YQI0Em뉫. IL'IeE6aNhgY 0;.p0A0`2ENgrvӅ _}[n>PH /2ixF 9뾯PYNi`ݾ5_FVJU'(T\&ř.c"͟WfTm5C96"R.% aZSյ=NGe 5=]jLq٭kp=B, ,¼ >]gR-nY(Z .iK42`!oO]<_/io+`(e?pFZRS(0D&kMùyb֔~8Ӳ4 =5/-9gƑ`;9\ Nzܯp[ɮ+gDw̍?ƍrul0cs 񐑳ŸKy4Aa'ms‒A=DuiдIY 5"5k_vGD"Ĕg^Ͱ`SH6 t@4GEi!7LMQZ[yWW)R )̸a[7 5ڤGҫ&bZYȡ( 1/.e\~2H3 (E˷ro{=i q8ns'[L oHΝ_M$HX [)Rٸ l]Ws\?Ki2f QQΎN'a`& :5>Ay@f2-~daD"ykIu49w e+}Ƃ}P6d@p 3$ҊF Ϣٰ,&aְUZp*]Dzp@6g'0Jfo3v/J2ƭ{z 0ZG`Wck ĽѸC\ #54Ap82}\k˜Yv"sg[7gR !+So1 cE,}ϋQqk!i[yZ3QUW]I0p $Pu ;]d cčOR2pC5p.HfBJ9:Sr8ϟez:M{3f#[,V-J酺!{5TR15SVǑɖ o*MJ}GC|>n{{.Ye:xLo"S@Ó}6"2\2 x“9D`U@ak&t2[w~ ѳ;Hh6$vT?^yzI}i u6y#0PӊoIϔFWLl c*^}I_5fJo VrGsæVOf Z83[<j~?&qI"[l.;, ]0`룘gu6~Fc$P!D]ɩv2轳FӴԑXXsoBSgn^eq X;h1Sҗ7[ wt,ZFȏ9];UVmo}ҾDOڛ3G675{$%fI }dzJx !B4S]~{xү5Q ly]z6q41G5c繾ƋR$6oJ`ZuT֐}&pq{LvE?zV%Ξ 2!h*k=51onm䷛Wd77 )nP9g+=bbٞ ^80Vr;2ϫ۰;%v@,&2?f{;A_j43 ›zF6j&v$ 1̸UB~ ٵc0*O0$e} 63Ի|OdƝ'}|Y5G9c[ֺwez&xkxS S0g* -q#2`\6+Ʈf пW9lUzWJH͛п̫X">-y.yh`l磱 i/L}>+;MǮǭ|$rt ^XhhQT3^{҉S1xfk̉,8$eĐt\'zsO3JEɬꘙw>/(q<أ*%)(PƗӯ*fEbWY˯ 䃰W_'1b6)t}Mz"KE@ ma]kh1aGty:$8^`> hǢ ȩUZ֛GZ+Rݑ2D;"+~ֲЋRHu'3ړ XOAt >U4ZAbo@qm'8xf~hL(qYfx(SrXƝcxFNs~P ]]r j؟~[Zm2h+92ÍsH1Z;~3ޢϡTU2RV\rIʱQTbCqZ#d b^;1`Ͻq<%x((Q-|niQG"5a߆U;r&iê%7 W.tD9tǕn))Jp&m $v^ӟat^P f8c)Jk aڼ*%[x8~T=:hKi- Eykc 3RUJTS>AA)ٜl`XE'2'EZVyyY:l>#f)Q7}/7KQF͒:dt~)3q2) ȭt5$ f*wĹ=ϛHs =n@S ײ/57Wva~h8"on?F0#.m9s4-SpxpZPEk!r6Ig;$ RoB)żI#YGDI$YfzVOInLd5 ZU:hmU22ҐU@*2T.{['-?QȰscЄ*EeWarlcw(6iuA MigL~$LßTX^+ *[W(#8Q^Gr"2XxNCo? );5#G sd3֜[iFdk`vȴt^Bybn}nU4Af8PRG?4- ;I$,M#8&n Ch*T8dWlf`\ QX _UgOϋb/hn/3j`9/W2%6K ˕PFh)9O=$r]GAzMB0Sxɤ,Q-&qW\!ByX6l-}T0#5dbԜ?_Ef~-!<3ΠpV}7R ! [tF¶i8K'Y6L302$6~if;Mgkn+wg^])s<}Z &'$"9ʤ#6#SGpg-CK3LLu$n0<}z*tZ؁,kLBf@lbu,8@]by^ƄԌӪY~[7pߜ󂬍!<}P)C$" r2 2%dV9p3/=%9 WK]6?c85x0`/4YVbl\]x%/AԖB[{A3ݘx5BSnmg~u E(%Xv~ޟ{F'?`. y.. ~T-Ĝ<*x}]{#H%̜P~4>>yդZ#댶 l-\i\SF. gmnS9We*{AU1tƁΖdxxt%o,#?T|T"Qs66Qey裴\'-*p`S4l^j*ؼ8eK\Q0iI<* PC=V(wV |We*R 9Dv=Itk倮xB l5Tb2v[&z^,? '5vƛK ˚X5 V=^'&9"NBu1d,HjH a9FTx8 k A0`ryN+a'쏗B/ Ć^ufĬGÝ\SħwR>y`nF-g~ctB̟[A!}wP~}dHGl_,}< 0b}ʇQ}΍)!zkEVc\k:#XC )DO_}u$wÃ]#S=ڧm(&LW΋i Hnِp%L4jo?a^zl?` obgrn6)x*X50D- C^\ob-^I:eUHXN<<>tsaXbIL5E-)l/z9>ёOę "emGިMZV Zue!c6x>c$ 0>Q>'?SNS~e܄IM8ԟ,#rС&۩T$mZTLm+,^2Cz>#n/J=DU/RuФ"AN]Q5`vzD7 ]]@Fé8:B+1|ٲL>jA~܏r`6'S}H%.mkFD6Ifh3̪Jޚ^]S?nF8OSysJkX?^О\T,g oxLsEk\b'SӒ֐qaQm3h8{VAչ-f/ڟW(N"!0v(lQ9zSe^y%kn^3Dvv%$ Fg cSD=>ΐa%-+jrpv 6m]yqP1!옩R+xNɤwJi/h @u"4wV k,>.g-zQv_%Œ`&1P`цʛd,)e2xق}M\ Q- /_Auܚ:s+$_ϋݮR>9E'`S! W Ylƽ&p=( 'v] Rt>9A 8NhqP;4f˽Dy}#c /LtXQo lCpȵu@E?xT5~ٔ^6SǛ8`mep~* %P%8`f ůzis;J XRiZd!\p>Cܳ`ۖ%ın&^R,qIk1OܞP^nTeȭD+t 4NfL$ uw ηbaN-\@3y}yOr-ǕbF &?т0v_Sǖ|@+,.$Q6!gűQmc_+_6.&o&6ѧiyV>:WkRBqb2ql-yc|[ g!i]p=0 ocˣ R^lA\mKe$IUSg/7[ŋA$B%;pBꀶ'bYneϪ⠢ǩG9~+ {3t ssY7G "Ҋdvx>׭շg-mebX7 9 jjJJvX#Y9H-&[ y Och)}D ApIDH `P20í+{$6Nr'6Ii#"_cS4>g@`Q#0*lm(<=jO)qj$-5%Qৼ7(a )1Ƹo!4:gCVs{6u2 o?Hy"DEml Qu1'bycY]C|ܣL2Oއwh۷t<_*Tl/g̖{^^ p찧Pt*G8R܍LXR9P@X_zdcnL@.BOaޢ^x D7uO3b<|P #Au>iSꂕ|+UiD0=[(Mhٜ"ЗP{(qg7vBx4΋}Jja-X\ O/*bp9K\@c+xɂj?5rwLCqy>b993sfxHW! $;Ǽ`8XX`ul=éP+bZU!=/ӅE7x$SGRF;fP@MV.??2)|@!6/+w"!?E{\&-S$[#YbbGso$8r4CecaOM Ugd/E UkBLF[>/v32\~*ٹ%t{v[ߑێU{/Hޯ?zY׏D>% 5.S13Yq}o%؞[>"}v?4{UtQ jEyQ|:$j\q((=Tw&퟊7UX9i )Og^*KK{EUoZPo+̏A5`N@`QHF,fҮ-:'p`|fEҌܳj؟5^N2.חQ3^D@(i}*=eiډޛ5ŇӸNc@K~D\uam'u;L*Hn}<w"VJ} Ԫ[ wԍD3U&@PHշG]rR4AO8j/K|c=@dIaTl`GPY-AWX6{0>/k{a35h_"ör|۴$:-Rѩp4`,FZph n*)q>Je8O/鿁i']_K\<AkfSH i݋zo^~ ƺKfH^!P6PC'Xs[B{>Fqܸɂq^?M\ $5ȧ5/CWcpa);pI]F +6wz^|5.s䓄/d"й!JÐ[Ih4Xضi`Q@o2SĖqQ ܞmH8 %CT_YE}"kgNkgXI2=uR+hQEʄUMǴ'LϺ{Dtqtmn/5n,\6SFWAF &vsmv Ctݝɡ]|ZjVKi%D8Z *-ʊa Rc҆V~c(n|lI;Qho=& 3ZOZ |+6\wM 7BM R`';jNz{B!akrIࣦ6=d9B Fj`+GNNr,pD0%7Mϋ?rDhǙW+4( d%Oi}7qb&-~0/'39xmjN5\hW $.q3 Ju3!"#>KS28 7D6ftƨr X/*=U#ko:x}]a]w |8eB*znV+HM\"'͚[M<vNJd{m +͊XzyHѰ(l.m̆l?>ybO] h)eSk PnẆ,#.7ذ YW5g0љM8NI2'JTfAihhc=14n)ֿiU_Mo}>z-el|w~WnᐼJG#F଍p/(Lu[1: FH󭓞T10GO"J86> I>.fMAL\xAZw#)D݊^5/C;&頯˸ّ đz)BBN( WX(ZDPŸo?)@RzZVmpn̻7#%ߛ»1εXOu٨|rNSW&.8qBGߑn`~nlQ2 vXOUO*Q 2xZhzie=n;,yQh> RaP@o:Ǒ#34--qH<íRz7e. 8}Vsh+ kE{Pjݤ@Mޔ_dX88o,cO|qw[01ꁚtoUM{C U?[tq2-`o'eH ȭyWڒ>=XwRa8 rt)wt"wK+WX<[uiiTX FpX)IADy 2HhYdAj޲h{}o}XD~)|.ۙYK%(& Yy ǭl0 υ$EŎ}a;F?;}DQ[ G[PJ3޻@BB< 5ed_\"N(Q?u$):E=8wл d\Tۀ ZYQM#2zA.k6l7:X$uJ[OeB9XHYTX?͸[.nqq^C#VA{ʕTVLCmq៓f 1 \+S̊WFŀI1v$F8̻DS_<'\ { )Pb4p;=#⥘ij?W<Pfә)o\A_8gXk/S]>*BrdLT^[? 裡-!`#Kxk-Ҳa ?v-ϑd8 n #G,Iϖ0TL7O|W-y:5x,ZtT,1>cA%Dܔ}' .ʩئBAK\ b'`2cHdz%K[a7@QU)Y,K@{b71;'<!7hU+_d*U|<%g57on*Hpm0uIϬ-XAe4em#?IJŽi#qA0揳E5; AѠr1T];ͯ{d XhlZHND3sƀ*Mƶu}sG04s5| TfUVYiM LRv7 *.Hu.V!WPX21mD(*EqhoMȊXA8w|e{rmy(Z$.tغ05ɉs=+o(&^--pu/K]PG<޺x.Eurї:FyMۊ=9|Bҗӯ0/ 7u~ +mq*:~,+@4nJ nb r,sy+RL(^8LU>B0!/;/yp;"_;y.R}&%g""e f]P@u.:oR(rAmȖt$_:CZ tS.%Uњ\海y0^-:46ny@9jBZVXF-9]J`u^^DXPO"2Q`Gg4/?܂f^lwYohEй'U7[g>':q3 rΧ kЩ\Rw=X,5{ 53i2ȑXڔ1 !a2?@ʇ#1Ȗ;Ր$hn;0v~ݏY~%hӲQs-ƿf{*Eיvx @Q+ŷƻs WZ6g~?P(6pZ6莢= cXG#.E98?K?(Op:P(+m<}uǰD'],)ofjw\h:ݗ)i=b',A8N͵F o* l^̞ ?G6q,p#%SDq@p{NMZҀ ~nߨuY+WDӢB@rѶm8d#2 U(\9]x!R铗$M[}N)meDj)%Qn멧Q-jwcZRl 灂RglD/' 5_7̕i ^hC^N:1y_8U2=P6hrOj8Br`;d[al.!uwR؋&  &OHN'Uݭ^eDU:u{Y7ءФe?osc֪FX,> qUT}~Y!FUN`(HBޢr+وXI//!8/eg1K-FuRfvb6jȂH X[F *{Wh2m k=UPv3[{\:`s+;X\ݜ7L.GChq*;Ve<՟Bs'#:Ġ= d[7o<XN !1Bk#9TWPzJ AiO&gGB A(U*ktX+..H4O1MԠ&z|b~"K/Gz1 Z$W*Զ>}JE홏T<yu.| (ct])2sm҃+ R vFjv`(m3ۣ]"a8w)ߞ 31Ie,~f[SE;H0rRپo&,$uuVm߻.|f.Kxᶉh"q)%P+Tx8P™ Mx&<ʅa8װ-~4&4D٥,,'˞F6[FpU l- ʌhCKlpi^KK퇊{kTOf&(5݊rPfSk<7{ztN,ylOjSdzrw #(v rbTm{Uqc<c32jmH#h161z*0{Cf9j=wuQ$[E?NMx47>ˁ@9ҮVb_wk+ ;[r>>b(!Ea^ԂXϛ/X#Xt"4{FM5مNT=UWxYSߧ'o4=<˺EˑR[ 1ky,K+Bo@g?S{8OqƛQZ/Sio7 s]p"VqK f`S;1.ϠhPm!God=%k!q_jL⃃^۱mS zk(H;!SG/B`߄2{5^~rAy16;!5/jY G;^n6+ N݃1ф,#}ֆƘYHpbo0C+)%^R)¹z֨? kN66xnAnVXlN^<sM f DINXシ)1_L'/xDJe#/ufP__bۺj3n ڢNL'_ȨbA[Kf@-L.)mR7u* bV=C/A8#s`%fQ!ÌN4A.9H |Q:}7Œ)?4]{2noEK#@[c3pz e݀ԧc}|^|z . R!=;YzŮU{.9kګ8)!m`;ٽ N@<ӆ^5?p;rd,ܦC6s5b^g]z>UöE십Q&7TB nOo0ZcCɱ-d,ϢlE#.o4,?CG+q|wnXƌ)sυځn:U: -:e#?~kl|sidъVIP0;IHL헯v@;jaA>9>dཨy?$Wgm=s=+LU 4">õq};)27w?:8 >OB4:uً>χ~!"aET[>qE Q 1`ae{7}>TbN>?zri;3YٙZ +5ԃwua'2|U9\7|riCD|٫HlMxV(~S\y?`lO҇˜;eY(lmHcz|~ɐcfڬS#"F502:XK֬ 2#&D AY˘]%7>Dn;S˩<u``Bɜd* T8%̨O ,fUi'8,pyuT/eOqV9TM-1 wujR(Y~O#O=fw0oElH^w S*C(|T;x;zX?߁epfo6cx|8%64z"jloy+_+a- E /jpVKINzz69LrV߼%_q< !aK7P‡@<`WDL}/9K5D; |'qJik7(JDq~p$LGX #n4y"243{jS@t/] er"I_?>+a! {Gpd$~pz/wAcd3m9[j ܼ a7@|jqeޕ_>EO5 qR諊ԡ$>w@rbӴbBT -G o+ $Zڱ *j77JwXD+߳~&Uv˛6 \K0ifsFJXiБ5,^ Ã8Ρheg|lv@t9PǤ`M2HЈ2'?*w.U|hG?+({5t.,' Y Oӥ܀AmeɚLAIbBS6/ >Q;j)C-)5ٽCF?( I / 6ۮH$lQlTj2|)SK (+B@cj<.N8dz{ ~)&=`Af9WTx+A[zV.b3R'ejEE@(|]-1 U>!KoA!z=)&!-F'!v'+zڄ y )a GNϘߎdB=!\k0k4~2N&]=jr,>F Kxҩ$ˏn7tPyTofܒE;Re x0Mm>-;7<ϭetfOGSiAJRicĊsƇ ;x@rE8gYb!F쎥,#эcgu+Q"+: qB2 p= :a}kww Τhy̦{7 m{ bQhwIƟ-uv grUr{PPl3^/؂io\'W97 AV mepu5mҌ .<vK3(b!OxeҐ /Yo(3a-̐Q۰6YVƕVmg:Wiuxo#Cmo$*kUj^D{)\@; M!:^s#\χ*pmH5OR7=g;y8z–9f,Qq vlۚcu3TI`x!8qWrhOlS qo%Q=b0cMBymKxcvw[RR +$ya3pS {.3lvuZ!I}4ÎZ8ԟ[CѝvTDŤ^U#q@ɖ6*g;&Knw-4[!TeAYVHCZg\ sm_(:y;TmlҹTX)ȣ/Y/QSfҏʳ_!B ]VY`?W[㥒)*VEvtq x/m<.Lm 7X M*&|[{\bEZѡ9Z.lK/ YT7bX3e,Ϥ{ RFK7HW*sbH6q5_1hA*$*a\؜xf@m "x/$0xEG`, GTu-]G~xkixyR'觯MѿFP0g(7K`2Պ..](|d E5U1O״J{o]؋;v: &ySb2EĻiUk*1' &$UoQ/3Y}dݶ6HghfGCnNِ_._pPY# 2[+I s)ָwuqQɣ^T\ Fh:5THopUu)ptM@6+X P^<{{R|A( #oV{]KXcĹOxT}Zzw)a(TiM;;4\_srFڷ_Sw=Ϩ:jj` vJ+*Z,FqCt/Pq)`Y ٯpl$[pw#ΝVMy=x}ᾰr[h}` y9y__dм|C+yV'GӚ0I!ؗ'RFِ3?J,錄Wx'/ZYT艼фL.F~ F APr+pB'c[u I Z]?@OI`'Khxi?иEvpFP5E/Bʻۓ0hLN9,Wf0Ѐ%X}84_"=ǰ݈B"b^ K1H䫣ȁTn ) Xh!,Hp֩CLN}i j%KAH?n^(S35v[5_^Upb!R^gm)MF m?<Ӎg,;˅fu/#g&`Sָu fe3$+˻.1``C%gPM7CxJ[ jLVUP~\X1Gku/[?Lr\g'x [WJ~^ugL/~;MN˸ #*;xK=4j-I-AqG/4Ű7U0WCF MtM"sF q%V2MzD;5- 9Ag/?yГi"BwxSάeƴԮ% zjJ:)Olk;r،s^J'⼻upFKżQXvOWk_C U” eP2*#d@l~&\7UЇq Q78vxATb)ҥ)cRNo EЌͮg ͜T%-^[=^ C7r |XFD>~>q}x,}bFPJ8#n!^KD5Iʕ5[b[@Q$Ym4#p];Qi ^Ľ쁐Yg|Ux+ ɢnӁ1IPKz.BGsT[&'u/=zu'qhCehPս%轃\xՌ\9ox#,cTEv;6F텈fm?ɳPA>{ޞMq) ~z2gui3rgKPC3m^ڃQ&% Wlӱ1Ѣ 7w+UŹ^4"`hzgBoL0 0i@M;;`5<;VY߉bB2^7k Y|Κ[;Cj F V k']7A̵驈sjԷAYH٬l,:Jx+#sߠ7ntꦕmUuYN re2@K.nut91Ǽ9#;FauLI&}Z-Z}cɅ.UGAJgмʙ,cWH晟3¬qy=3-mk:__ m>aQyebV~|9֛u4hso`ɒB.qy?!ǥg@ҡ/ǡgͷ", %F 0͆Zk賅[‘u t,&'BCVtXd[d.+s>Wߥ45uJwHj7O݄c@8؅3 m'v%hIEh,*@`5kNp zJdT:& p؍Լf]Q[/wmGP(YNQмQkK*)K{r&BA@IT\'.57.S-t~6+Gjմ Db8IK#5WoRITHcMB}\[rd=Ƌ{O\~+h>.!dS1W?Z]fA CP54촛;o#e]gw29t=0&~LK<[ٛKar$*1LP4 WU/'[V]]6 GgJqVN]ƁsBj^&շx齼-X.,qJ@OsS2Ii\΅\OU4edύfBGG"{^9p0F9 XrƥkMiZU^eQLIvg:?f1l7{]Ỵ?gIy܌luyâ5nA'3Gxxr ]\oNٍ :Ce Wr鵄J~gz:P UC3v~ZYv(LM= /Mkf5ds~#[y~zM4Nϰp7#DDO<Ǚc{U*F߬V=Yê_!n~}P5!2> .yh&FLMf@,óOT8hI[_1ʘڷM|K]k3uT,{(*,!FRD>w!?Sf=*.6IP1m p!vR"E3;,\<75mŦ mFH|zx\yiCeIt7ގ.ݎ  K!|.zXKwn&?1=6lc87;TABw:MЖ8 G3][> <[e.Kbo*.+Q\;]}FX5^N"h_nY5e<D!s0"I91@` [7< ^U.VM (1oa!._!g ֫v3?!_I.S0kY_1e=,ꀓN Q[7[ Pج$:A#|P̐4ZF/d3.!oaԢQaV7V/u0]R(-j$P$hnZBv9)hLv3X};8N|y+ ' T*.59CJ $BoʣYF ՙ}lcЦKX+ɐf%Hs\@YM\蛶tsZ>Hm@8GWddp Y[˚)FyOA@cyTWF.Y)=UjuMc d_-;%/Tt`Wj,Mb$|>̵.!rN0*tV7huB#`st46`m׮ j]/!DjcmC%biN??vrgX'?aVҦ-8uAJMc\C}!Mo 7$)A3p5đȚ}GfNhE8i>A44-5H?1.#Lpat̵̰SxnsH+ zT~3yt'STrbE}rTD{,D?uXdxkߙeih9RGӲ܏qJ|կ+Wlip ^Hrs s?"ai\ 4Osⳗ XI#coE\w3gC]rN:Yw`jkV7p3f:ڶ<ҨIJ.H~*tцYJA'bX yV3reUA[yv=[a9Uk%\Yןɛ~'>"gS 9,\* n&0`|tТd-ޠ qoFζUђ]??YzO\#/젣ʟ`C/]\db7 Xkl 8#38`xk@` ԴkdW[L]37?5VY9[O-3B33774gO|I 4Q Z[}}1~Mkd֓nξ5"FزUtYN)pHֆYo%e7MT~1GXrq‹6$jγv3kQ7lc/ %ibnm:]*5zľ!nnRf Y=x5~U>hoHbES*׷2ydLtڱh2;y0k=WAIsbZ)2D$(M, Ip1C' 'Q:9kP i 0*%Fj%-u>!L) @wfʄ 4;yބFR,Fi5;qTrr` 3A= XCOaGѶ?ޱQCU&neE#wBC."X<#u9S|< jٽxǓԚC`O3"a(ai p*1P8fbST9|{k("h0F>>?\y$d#s۠l55hM-_a$F>o9kocrNPQXLO2x9B.( uiЯO <_G+^?Hfr)9fQL m) xu17I^Ti؉SP27e IMzaB%fjWnH1{ءGd1i{4 D"Wtd>g(=R%?4WV] 5 Om 1nC!PXd]9BUic g3j_R/Y2j!x3zV9߅z6Ad{ii&lbjTz2 i-ޝzKI8P%kmB*ivnqނkKsHXu{ yBj  +$[t4}mىΕQscX s'8BJӽlIwq0[쳄M9٧M{YPc"-pvpb`Z"iiK2VCl+Lwf* 1iaؘ)}/&މ@cEV7|Yo9zvOخB_88n| eX\ZPPLZ}= 2)E [NbjZy+PL&Z~5NT:;FAߢHيcu7iʃEib1WW q2^HTx߸fiUQM|eq@#V*UcԾl$KZv%-s$?R "/\}<o%HXմzr/G6'̛śA;3ܧmBe̞d) [)!;^#nk魼TAx.sF?[&׈z\c_3 6h|<|~^LUyrUk_ ܸ=Xh`QaTHΨz(0U过(V7h8 kܦd;GOu<I@ ˥-mfӓ2]W]D#fbcكcV%XKFܟ4Ŷo"s,GgBE*ZkʧN#@#)eDsimb=ra L-KŐLAEbuC[M(bdf'Eŗ_rlV^y#WlG Ww1'-ȗJc>:ۚ_ApIWu>k5zu+əCSFq`w['m'!|ĄLCn|rK ?L߹?fp|Ɠ@OhU_4TyoḊ$hm_ۜ:xb!F s.όY_[ʠ O<" 6aO$g``HDu_՜^Diq0uZ~OS>䫬hɦ/rhmdH ("'(X^P >kDC@*ES9[06+o+VdNҨ_bj1t7 ?%~}fM9lg#T>^ªd!lބvB($rp] F}[gɌ?Qm+NOVe $z=.`KHGdl '/VfGB.JF? 2 G)Ik{tY[!@5fghZ_+VԒ=Aƞo ~j}h>)AiA0Mnh%} \X)䎍5fla/Bܟ+0WH TDm5y*H nT8B0b zNw*y35d*a v;CդSr6T[۫?ge}{sdn_ +e洼?w`5oPXpo~dBl2kOf=|i_ڐt"  ` –[w<~R*Ց12iabǝknM()!hU]㒢nZ_qo!u--A5CPÚ_SB֢Ĕ Lh޶d"ս=AŶ}GhZwB>9zٿj[< ] vAYDRvtѩ9T\y7) rfY8mESM~I*g³RT-^=fiW".h@d:0Ҹ]1 ppE$b!s3FjGdVC?-6ŸYqŸ˃֑.&~z!bO0f@֕ݤ`xkѯA9'rĀ q(JܩѢTS'mn\Ԯas2esij7۽/MW9DYRtG):TVZe D:ɸAHd]?զ 3_W8:0hohl%. BIxʼV<TpQʱ0n*Iۓo}hS VX[sYsn-\i9/hUFp$ 8龄#d!GqWZI>{S}p'ypMBj"sZKx1WTmUqVD/]PP*TJŜ}KG:߽^m*vem5:٠' 9K>_&}h:F~iOY&)4^M_h)UYE\J` 0P摀wjJ^}ߜI^d>h5`\BmVxeMaH8 dRrhb鿈[Oۨ,_'{&$$A@9b|/VQLrq?SƽT[s>rR=7Pȇ"C$D]ǍWW5(xЦ3"@T sZ釴fQ@6F45 `4)IQ肒(iXKu3}{RB|y~#SF 9-6#up $v ̯zlr9ܰ\-ʶN5Hս!X)ڦț< Ͻ.2tR<;>5xg88(s)(}Vl{+U34s m'\_oZG̩_!l{:WJ*~&F!M[.&}@B,*F(C,A{)չڜ5tߍ$zv$?mPQ&p+Ț>ÚV&8}Z g*Ϝ1JԄeRdP2DHD1c$轘ݗ1e"UWZd G[RwJSia\ycy$TGp_&f9O(E&\___,LwC76\`}g+:,a̵>HdmIi։Rk\ z#lB֞araf_:rs #Ey; 5)I`˼/:vDs=$?`+[܉Q҂b{I/MH:-3hH?k4VMSXL t2y$2{]v>FW*Uڧ$> xX CHKj ^FOk*/kfz[p"s bm=` +Fi=GKOI-BE RMN/.B* n,k)tW @ uQDWݪ#WSptGeJK (H"2S@=$rV̉0Z\tjb9hRC3l2>G;~-{H|BtO;2iWmV~QSz[+s(̾^'zm>T,{kY 0_;oM%mcrtbNTџ: DKI*hFIZo r>ᙴSEpn2{Nz#/#=G"ڧrEO(N}7KB0.AK!XVTC#(C|0KpZ΍sYo8kfe$pe$f0rs[~.'9{Xψ@#-) د8=x}-MA_vdTQcKw(O5J'z:okhp %iLifs(aWKGp>#fWLy:P`26ihV髵t!/5n~M`5:>hvN8Պ/mLnoT*՚8Ҕ=H}NNuR{~jN{[3e[PmA/7=7So/gpk !^j4u Z$yAdRrPsww-U Tlm}wo뉝T`g[dPQH:h>kƟ9܉9Rh GOgLmwkQPKM!S!n;萉ؘעhX(R$^ ;is N'svHu%!ٍΡw&~̉΃K|ۗ/R ؗl!%1)yWB(^Q!RNb1#30}.TLVQ= /ߪLj` Y6ldSݦ~k$RyPYzTe{OpfG/PRkUBbD'?q5h'$ XԁMpF05;ށ e _ߛt5 )0U(jEP*)\)Zj`T7El`5 /x}qw0; Yт|?8Yr4 GoBYD=#:}mEO韨)"sn_ٻ#^ ߴ '䴞&[97V]}W1 6\<3thbL{O!ݵOg;(#册ص{ge@H$Y*vJAosYs^6(0?VJ xzHp궖i&*8H*+hjʉ6 ,O+2v~!bRoTkYPòmMڀg1s cm޿'59g/xs^zmƮϜWKu5Z< L&{3De3i}D֏M ,6.3,x#MZ)vՈo켟78 &gGV42U(5#ig6XO禪cu+F7XUsGT,7њ2{bYPe5= \Q>Hx*BVF8Ö*YUʶb+Ef֡6F# \ِa ̼yNc([Xn;QVtjbfֹ0]JɢMlZ A`덌NWjT,{d-.AH oP[䐓#(썅9p^Y {/b#(XCe z[Q<40BdEa6 N8u@M_w)|nPcRwwy.SFsigw+ÿ+e]kP;Ed5CcY02S|8G΀bm)Sn!+BMLjB%9Ec3[PY[-vڛ{y7,2Nwj"o YOɠRsR,27RZs?JLhor6mbp]O!͖ۇIi*r_xDGu&SzQ e|o ۂS>$`JhKwd|eRTfgjEo`{ Ax±IwJ|Dv\߯)C ˇ_,mcE_Ēz죍[dw!rvQek'ZK6(*wQE?,r2+$ؐ6'|q=|p:=3n,^NS_jJ ֒ O"3jS,Ojq`Csǿ;gLJ4O5*T3?Pwxfp{1#*Z:~Wwh vYuqzб0-̶m}V >#Q{KG?-#pw̼m@ו iT;Ce.~W~RDel8'2vUv%8s[oE3a~gmrtjݾ[C}cQq܉ {#;,QR^n݄c*䀪r1m[,8L=R? y֊^1C*tK  :}g-Nyց {^]樟>[ZSE,?ӕ 4ztL ,.7mlJw+H&l+xX{;Kk&˲r+s ;%a>L"dͼ2FR|e \kyQ5z"S$"jΆZ:$ [mw'y[}.hezZyaFkAnKg#+LJ.Hn[v|AܜVs?kW|b}xv/Fql dD6㡬c £Ip/gyYt3jHp~agbуA2HC2[L*57BrM]~;a-W\"p^/٣PN/jn;wH1?$‘$ ;pͷN^Ԩ6`dm5ވ'f/?ZH?ҜL%2i脂@ Y@Y  ĬQsF'`3@WC7`זr7j'~ aUZ mTCR3 ~FX,P:$P@:}#s=5Olqi]:0>!Cu4]9/ f(fj3US'yݵX)Ѫ>=mF?~7NiIyD e>%$K[t#t=:EHwan'‘wqeF:ɣGvfEGSC`n!:"Xw.lDXXmgd 6 &1!1O@S CM;b'\-ϻV4W&õ4yjkϔ5p~ +ITRW$@zӧ)}XXNyNy WM!n[rq,t0%8ƂS@$1zsA+MHkj:zh`)Zi 4L{\:Q>ɊQOr0l$4C1&-%ٜBUe8BKޖ3 qƒҗ4/i83zg#;-Q0L/"epHV_/TD'SABm׉׮_+MwW:ޜg+V}׶ZDImbnF\!fKʋ,! FIJv d3<б8Cvzyc >sNYxB7wx78 ([ +Av;bCfw^~į(KvVyqgM P~GN;' XǞVC_rjdPѷ#4>HbC3{ZvF[bUyX'GWB5]V]n9j[rУ#r?<бԚa_trAsF(4ZcBJϊ!*epӆ#7 /#F7ARDk2En %8$Tȱjjݎ1Bg\_cdvL+$f 5z:0rްJ~W0XQv!Kh5_2r 'wZ/بj!`)ŒJ66˼6)$lV[|_t Asa縓9WZ _G1H%[HxCpS1˶˪@%e5?cTVd8roVjpљ;< ȎH7dlRJsM:V}4(b陀@7ֆhLs#ܑMn{/MZED{UvNj1BKWZu g'4; RY;jq0pTT# fzh>!j諜R?a?BX|B_n0ÊXm  vl[8}ە& VBgGϖPi%T)fW[Z2BCs# ƒ7>1f2_Bm2Vٓh &u+z{Yd h=`]ҝrE?QC]@(2> 8JJ ج}y׶{qzV|8.<csô@q1.l+)`k10WWvh}7^!IB< mYpt&zNkfwliUZߨ1a|\xJ|=xr~".;l;=#yZ >JC =F#\4]vV,.$ZS bmT\ei3#qв@SwPT۔͖7nH7>sODZPɶXv4K |x!0:-aF+q/BPRr,ņI0BqN.?\t=hS21.$/Q3H k+F?Z7ۂV&P8jsuqAܮ =(@eGGeӬ  3HDHIudJ.Pɳ`.N6*ۣGdF-B|/XRv%&Ǫx:>-ŒF$>]_9#ڛdm=z4 bs3>RWaQ !?S&}*#羥WWӗLI3UFG~9 `xY,~cdV#$b\׈$s o!MʴmWo 9Fh!Jx 5 c|Ogx]xA֬dɽHLqacȴ#eͲqI "[ꐚ; |{,ĦF@v{-Ů6&4b,PX؍8尓dԫɭ0st?aÌtv\XXboib:i%8o ~8g_:lʐq{AbGIe;N-I<2M{i^ ˘YU#m mС #j'iOnp&чA&̵DnZC8( MmF= dc=Jj|%0Y+Þ  k-pkz;}{N۫9f*=rf&pTBpsSKMD_%?.钹A~a5+:Db[,#yY%[RwGp#VvyzzuB#֒@>4ݏN@ [Z%¯'2OĦ-TzF5בYdžjHr+t}'2 yVk4tCz6B9S^OwyMwЯZO{lf#X#;A" şbdv|Yπ.l!ݤΩ1! C fY}p[<4XZ*B, ~U&P2-$EPYGTaõ_ډ ߥt%,r 4gv{ڣ揠Y*1ܒ 88۩E?ŽwQ-,{xgR+C}NNeU`F]9.m%fzJrךb@f'l;-f\pC K*-)XN !;,GQu#,S?Fac|Ă6pf(bnÚɵ֠'gd틄Le,]\M<556YB0"לE'։IXhn7Z4iwH=XՎ'M ;wب0HIlDFnGg}us-Mh {$(N1?Jgtkݶy\[t ~N{z᱀Y9Z#SrLˆ8. #1G<^ TTQe72 VnT`ox~ "xe >NW\M VtWxE-)d*XKu? r=%)z*/2'w _?3#2l8SpDSghv9.M9S?H#Đ%b 1j).&Ę1SKe1*l*9Ӕ䑝;m&\lRi&;uIBI!w&sҕ́f5%e];i&x+H?E/ thzO%DmP*h{aqrC|OqP!>tB_lXfgbwoM"^J`K4J;Em>|EjYbdf 3\৅56mڸvАR\Aڼ1 sNS-끻2!!Fd@V|#ͧbaC[4!ƚ7IƻB0Y?44e''u#J vB}UN=bϏydSɊrksͼ2 i{//[fBɅPox]6LgZ|ErG-7g?ZLдʸ>%&L8fzB}foǒ]K{]2&AM3NJڱ +}uA")Q#d|oDZoCBU.[@՜ nK1 !UWdnu*fj3!HDaz&-vc8u҅Of`W8O= _ 5M&A_E2[e`Z14RKzz>Nq̈S. yӮS偸_J~U"Z^_"[xBДCE~Os*qcUq7p& h+ x$9,~Xx(?O xմů#aG&GW8拥L]_!$^Y|u>H>Oo5}ŽNT?W- +JD6d ұJrdL b גO~u祿~jxq`Eu%4l.sHx #͝ԯD UVbu]kTPM&?'~AރHM C-8i@ᆥqC{.(SD>+MxU:wE]jK1K 9!?Sbf҂*Nee~=ߋL ҚY>NFHUxgDq [$'oA z6tWt + yXIOZu1h 5e.".k-mڊ֏]{#3!* `F=V 89,b?P[> oOտ\/MЌ7 :eU5lKFCٙ*׹qf[ao6tqWA&p3Od]5SI)Ҟ:H?`oG2\'9n+hz @0_9yʡ:0RDWiݚ--ƭqRsq_e S;r|fd/b` H^h.iy XQ@:IYfN]3%dPtɂUjh=r 2>uh<m$\U?tٝ{sf͜!;}- =s͈YѣDKrb bG.J{mde)-Kc䔳 ODmw K Ŗap XjNIѥ^h90M%= >}{^HUX=^@@KW/|W*FK6!hdt1 p@so:Js-l|o8lE3UFp DcaAG.gnT4SJx /Uꖄȴ`x,5-*^t18l 'i5MᎾ43~  )]_}yS:c2(K}rDI~be:#OTPczCO(BGqhUd?Fs7ZgI_sYJR`|4r@d5i+5@3DZD{*o=Ycږؕ/lZzr__2>N]'?i(_mVшklU"gBeB*ުCڼa "Ng#0Q,BR zs!,̵^:K!%n,` (xh *Ձj3GFNdpFT0vv7ayǺGQӟvS2ĞTQ7@h9' Y6y$Vf{V^_9i-,TvG#L4u \/#[#CL ,}/"Ф a<;$r"A|,LρV)[ZcPnX,̒L6S:E X|-ibdf#K`mI6[6@,v@@YLCI3HCQg-|qUjƶ6vMr^֏2aĂ)iEdY/eBZv L5rHYv͕9HmXHofD{wWG3PaM0#<$=!խV$@k#`ݥDeq:N}0j`g8n8F9?5Ӑ z/:kރ㙝鸣@DhLUXceX@b`{4~ٔԳt6m/d` ^,..jC_C*4}юK@xw&+f7mf7`s%9;n\8Kߔ&V-}ynQkm䈹OZokzk'Pyqd 2>:XEfq .>_BVOwY \@ChrP65F<]ܨ`՛)dgPhIA.Wk *(Úp%TvZiVe 35{.L$Z\vFo6sx./Wx+D ҟOU:66~Y-p3S7@q7m3ǚ3L:}B*ﲺb ~|bР;oE*w"' iVkˠf\Cs>$?q?16_&~ϵmJ4og7w)f˼GZ?ZKQE DɧqGH~׻r#j<֖FKjM:nl0I-Sv@Zlugr|'iUX w.ܝ&/tӈ .xyXZ Z i@(*5yG`y\,S,ZFA =_ Kҳɂ-WuN~P%c+WOⰠQln 0/ƪHlE\(UqTHT## D[DU 64:7wM2ѻ*\ϯJ؍BeCѶf@ۻ!B /| 0M[NA̵ ]}n2Pį"AUo݂CI?WB\'CQ| ]RDG[`=#ɢʆ,<N fÑƍ0[Dn}ք kRvr1eaQm.pC8C!E_QҨX@|r:x.L|$g{Ǒn X`؋$- óΦY!ZM\SjAR6z1.HF5taS!!7|SWOV:1I[q$rsoj]rǙ!?b(} qPmSI~R|=;($مdĆ៌)A}Ͱ8q}4Wflj/WӼ?L1C25*I_k.f\O0QtTfU?93՘#N.T" Jx`vUelM|_`- nd;WBW*"lBf-KI wnr6Z[ŭT++)ăݛW:\Uҝ4׷4:_CXZ{]ᚱpl_p'Jwv zʵ2{ 0)]-ƗDU&l4(,fAʗ oV!Lq ­2u6+B7X(m3p;j`4V"7'J2_MOL!Y7˾RFܷ*pJ@Xl;?AhL ֬? \3T]}+`+|y`dJV9*}[6UJ*Xt#_IǡMk]hn^* #NQ<~۔WMSeeoWW`ekޘ(}h\9*lDW\j7+.YNh̰+T҆/z$dTTdBA3h ,:ixgkN!^Uhܒ8Mםj.9g{hby]; oO7bQK =JNw!(QCڲn`:t˷R%)3ɟ1Baő6@˃iIHok Kyk89 IE'#d 1|aP[{@qk *\J}/r?T קdqW>XU`2<޿޽p8ezJx "< Al< =xUNYfƃ6uTFM-ҽ~hpY*苶6/:w=fpRmTZwS{+(a=g #(Ow,k~ }K% H >')TZ݈ӁHk^rJzk OL>c/9$E1$*M&`KFP$Y /pɌSmZc8E[I)؅(MϴbN2+ЌrZ_^p^N#Ϳ+N М23BwX_beJD#R% 4כ4p™nUU< -ѐ'1E0˲{%H3 sOp6>D_w(iΥ;V==䵦櫹FqY#p{1 c#lR8w 3R7]mlcM3cZ!3(W .^loTO_8.d;6ZkV$"~n}(=RᤍIwcq)= §Ljx ת" XzP=xHgucƔn&'C}8e"ȉ$%ŃۼMM @;OM#8F,A^8-jܭ#KlN,'xRqnqEj5hoEkgrUЃHI 8J IAd`Cr1tZrlҥʧD($N?/R5h(B')&)*?"/mHXŧeg\,KSF-=䋊"$q 3=SvI 4/ṽS.TeyOђ ʟZ!MQp lĊc57:1u l-j~ob:,IP]YFVkQ+V7\qXC)`KMEĬ%'ygurȀP].axIQ{B)+4|MΥI_Chq֊v^`yDz-1,R(.)pͺMls`[FbVF㢎zXV?5Ŝ|PŠ]a.RUђL[y#s#ݍYc—,UbVn7ZNZh%RD3-7I1#iz))+kiN,TXvkfIf+w!f?(KC2%Jh6Di\8s=)έ4bUA{[LvT0wqM&NaTƘ)E_u*!d[)U:oA4K_qɉ}#ݑ0Ulwe*xG ]GN6ȃa!a2biSKLjǞ 3 zҝ혋9hS4%-Fx=VP^2ZƥIO76uNKGn%(Uo3IPOƕ+M7և\,uGwi|m0ȹkQ[o)m9C/l)Bhx=?ܸ }%8YN^~qXIAV?˄1Vk5HoOW1$x>/m1B Vٖ\q3v{m ң^r NSvߒ:0PU'Z|}J7%!̑FŒ{bʟN7z c\lPdH9a`s|,1IsK60S!c)MŽFAd.9˹^w F®-$5V :I5y$.[jydyo t֭5'okDc7-O7ӎ.5;Eae‡Mp#IᆦTDV^N>VGEa_Lf8W=o:(P|㺥!/{lA"bZn<"-z](Qf7ٿQ$ @bu!3AihKAh.1^%hR}F hyJRi&seg8e;F3dflHnukߧA),%`EB$&_J`PV>z<7$̎aq R lMx~ԅZspĽ ׮vgx`yw{zDJC'j< ' _oXi \@^pgŷv~},ArQ1T-zp*`ψ?R;(x, \%(n:J IAlHEEkZ9Y"D"f%iYGRYzԂج^(avpoHuO $S!aK{G6R|ϱ%:F&{* O䁕KZ|i/Աp `E1O%i]F@e{'ETZQ'N V)sUQGgqeiOq{Qo2 YH2љ0+P]8FKB[awCU˜֏#ICM01P_~'س\˪Hk1ľkTdн(; ˖le'Qj\nըd1?ƃQe,g/g0N7oE#I qf3*M.$d|2.(ӥeբPH%=\YOZ=!86ɡɍ;ͭB=i|t4iTcU=2o5tL*]pH- (R Vu̲,O";6VdjkP`؟Yhav?߸P>vr&sNoJ۠@̟kEgW!_T,=V/Ph+'J_lR2wU9$̚Ql>tc|ckrZnyp_!5oH~\߬)ܢM[LK 5WAPԣZJ/ ?t0f<썑lSG'K;Tm_`^vW (R4n8.*)q: erُ%QP3.',_~;6Z#Y w#[h4Zq6XXx~%t4Jɶcag@y\SN=Tn5њwUy=wa-ޙEWEH<ԇ>楙sh GfkaL(^U3&,kz~j1KtEȵX%j!F\}iC 2:}M,?T#Ƭ0aZ\JbXaci@3/L{ܛ`#%3EiOQc%;Қte8Z4̗nAĝϘ֭n~oVG(R)+yrC鰐CٌʆbP $.G|Ec* Rbp&`<(/K }9VRi!m=#;g2LsE76I:k'`roխ;&!l 4l+kxIj86s- EߞŴT{tC&{;ab!/pRPU(G1\$5M__Ì ktu䶅i~&ENُ(WYޚOrrI, GQʷs vD袋 C&t9e6X/P`ThH~D?^@H=xkiq5 ngn7\۠Mkӈg_+7cC1 '7 s/Hcv-Jh#^Ť?waS`߄e8%~] 0$ AFNV~&1D*Q0z^҅z',}m0yb$c<0p>L&<!\+eP0);2M 6 EN+"/hŎ!Wr89ǹMǡں0<>b39TK䁓@k ndi^oEfwN'x])zUgնit`G5j$ A֙fnXm<')R٥wmw~)Nsz2XNb Z.%` L(M-_Cs9bPX Y&&ưT^p8 б_u =J,Uo9@V>NTQ5`ʮݘ([M'ªge4Qԃ#KIRܶY(: -O|eڠ2 )+F\.Q\IQqq%74HrN`zC1\ dek% /dz&. Z i9+B1{Hv7k.ތr6Yhup,eT;:fi:}V r|ьL v6)؊\fzF>q L;2mLj(mDױ+X0woT [nفv;ױͲdlhYi9H=oVZ?pQ@lG| ڝ=> ik)pu[S Cw{Ö?粳ӉJRͳ*KGP~Re:r1?_X3ЦNGk!j'[?&9VX@b71v@H9B@sf)'{Jk]M زpѲ%^yS?~.]opc7ݲUrmOs`o2XeOќ_Qhc':_M!u K|"۞bh3%Tis xZyjG̣5Y@9ȣ tƧbeX`b$]bD;k?=Vg5}5U4o5:( h(xVQe;q=gΣ1`Sw0$t_8BPRcF&v:9F8lׁJke+?ȚF۳Ik=OÍo}t%z-R7IF3'uQ݇q96Ֆ _JxtPk*Wvo ~Pi'mcmΘ!H -D@a \˅jvnn6non~!VŜR92y."3)d~V-rv n!GU XtI@oa'^ESj4SXTUv:U@y,'b o0Sn#VHQBoPcsj]ZcX]}px]dҞ/{(ǀ#[Kg./eK7npVq '<ǩqESͯњ G$Ol#Rf HMtw%EGX&ON̊t~ mCk**!Ⱥ[0]r:FwCn+"Awx7 6m5CY-s܎(q7d(5 M^ 8ߴ^W*PlYGaʌD=#ltn)ifg4_PʂA)miSۚ=i\KwѰ `] )`;x̞ )ŧ ~ 2/+G\EsKb9#6_Of j 'j.dfȠ OKWW5{K;j2[D+kXȨFWԽr,ظ5{r"upWG^D_@Jyml@;M" \# 0J<{:(O_x_q fQC +zV\WTS{C,͹e}*3 5Z (>]b?$SLpbRpHão!u?oǥՐ3~A]|ӵY}H*¶|C OY`bĀxbO.wt=9׻* oz Teݰ;/Nn!5ݩ( oDcȦdqp/Ъÿ#siDZ)Fh 3d*K_t2[v{@6;z{ɕ=SZWxf͎u=V"R[e]\C3cU)/Ď&$4@tnUlB;D\?yy3O|W:|r2C9&w"sqԥ-&*&X(N B6,a9>-k(c샲f-d^DثQ>1$58` U$'ʊ6KUYc֔X֖ =a={E+yV`ǀzu}c !_糰9kW @}0$YbȠؐ(~WƨxUTasz}18Oqg78 ˈ/ԇ,it㫢Qdv Y/"o8:TjGClzjzgo;@0QF/o6hy.:1f G'zh"f-9UT#WOpBo.8B(ABj :DIue, Mqml+XSL'"#LQdvJ.^Hy|=0KF7MVϛbq -PRcW+$ԟx.:Bgtm3-£O7t}"iAzelD\,lWD20W^0ӝs10'wcݗ3!۾M>j{4OuDi=e7OVq~"*6|FXY7ߑ521IfCKhL]FD z нob6S6q60vhT}&3n+#%arj*>ޠ-nGsطc hc`񏯶ȭxn@DB)iFs,F, #!vF56/ׁӑ_(7?PD4CT' /_5U]l >YF1wO).E6A3@V7Z7,x ˪B0 ),X8X^o2v$DqzRTxd1L.Q'%vcT>OB D)y\,'6Q9߈-tNZQҰ ^0gJ!oU œC֊hy?Yҹ]Xt(^1?*[ǒ?Ã4nVaʩlXm r[mk!y/"~GyD\#Z><1o5W+[ԫt3t>6 [A/8fVQ@om̞8TDjиs9ӕ^p/S/ڰxE=XlL}63Q L-NQm6*Mɴ%?}rJ)辢Rbw5/o#f/=1f$:"NLm+5~Az9)287(%tSϋn2@Y' ^C#RYZhy{*Я,$'` k"fR< S,?~7?0M 2_ W 8?BT9pⵋ\%܅'fް`6* 4Х~ܑ`ևŠ\}v]4W'Nq)Gz^-wglmj^<1J(;jn}Z1YK"5fZZ<tSU^x}潘'zdGWfc2)&2Y|R"YOع4ׯ_ :sXiV!1*y=ZwR儕i|x5CƧee[CDdGkґE T:5",Jl%BdDsdl5L2Q\tL9ѓV ܋Jaߓ InNG@;0) R}ua=6 %o*:':qI7w@tXˡ9m1‹Cի1ߜ="EF9eWv 2`]C% B JȈykV#Izq@ a'[ʄD.{bvBZ Ns!-p%ejs=Z.W*M:&.`/lp f5"\-p>=٣k7ae`zG lY(34Q;^_-w BRF4I~(Ga#wet ܀G2I.KHvҀRX ?i +МF ]ۥy~~ҽ<Q[|K[̕쒹t[>=4h~=oS>_ƒDʬ1rFb2$ 5[c's0UP}0;ME[*'5&d m۳ QM` ӑSߜ?鼈eṅOF8ڸSۣ% b-4ې5 H$s6ET&pQ) GiZqYw (1oy5@Y=sbJ>uLUE7eJÓE˺ι\X]WJjMN8o=l7DBa|%Y֩(2sj@ NCHAaeZcN$u=.B)'ΝkA!P_rG7 ό"؈k%Eݺ*Fz;쾤sDP<\=:xnk]8{Kyj[ȀG] I hsBry)eӣzq>XZ/_AI}$%Fa-2ңWSXwElӚxt[*- $N&咷.W$eeosx҄kjQiъr_dC{=m.Eg.q2LGw)'w;QxxePԉ&=-pke mПŅxQ`%iD$|_8)  @~Fn'm=pvПFxB6>uv!sكN3dEM\ }Ȟߴv1OR(JBi⨁_TZ÷F76͇ ]Af[Kc[K|Xj:~*CL FGa Ra_x5#ba?j?LEd]LDe 1Be輰WJj`bSͫY5'8%HC;(2{.w{I `HR80$*1q٩YÀR`SaQ ԥ4Eeq;/5pdխC­Ҟp_Ƌ{W"'ּM/\+cfȨ-9S=d1"Oh~3å~mm ye)QY lD EݖȀEOE}ILpKցciSt)e4:hwt[>Ηo|U7S(΍+_CF]5$$FQA .hWqu[QQ^ɬè9Xa[9|&o=pn .۷$RC6d IX@>*NƤ?O _%ɭ' S^l#-s“B`3}>Va78<=B̺3sS,.SѡzrZ}YT4Ys€R\==Y1|_坁{b\zQrL6J0p٩i/|M~yt8pp &tQY׆Ve0^Tap8 YQE8͉tuxmu +efdpz,*QLBcSAI=$EiX+ަK੽7#n;42_nIJF91 M8dPƦh [VM\3kTD"SG9 YÔ=w" _(Q!cT>@2"ؙrE Ju\@_uJ}=JzzZN 9:2Sߙ uEP Y`a#X+2[{-N5%M޿bZn*BosOvdtLB#[5MQju-zh[!Ni_%m |6MJόZe8rx-1dQqEnHPyZ_[wh ACҫ Q<ٰ\ C U&. , YEˇ61ܙ${;AZHdm-TaX7GQs`K|8(f!܃ ?_܏~#9g=,"E~ RU_=W~ŕdޡڿzE!G&`&9nW{{ %4s*;=\*0)?x(8|,{L8w3x3e>KMT")lv.m! X} DzFѱmmŭ70}xY;'|碌0<4!\@%6iɗѸRL #60sR G}bԁN"3خ5l #Æ@;eUm>C8~q#(DG0_(jrW=akVE0͐.IW7 Mx`t៟|h?,hgZX@]Kj*bȘyFu2޻}˼߳sOx)QW*s+m4?Ƅ;Qnp$yk aZ#bD`kFVcjeTE|Xk>-vTqtui9B\P(׊vJX E1![Sdtxg+%9QOd^`kl钉lU^e? '#IL܄[ٛKU~Ozt(AuMl]N"J4>83c?XG_<P8~M > O`"XV5 $$1N8F2|DN@mόQ)gR9/%D13׷P%r#v]c4 &*WHG8ef^bs^z]\ :5R~qL<Ӓd.N;  ArJ[m8~h^|KƂ]PIbHKQ!KXE˶?Wm4<_{?6_^^,aAޒFxPpid 5Q;d8. ԔJL|i#<|$vuy9ׂDeU -s\ xu!Hf,{PAQioB`̍#q-NUl#ɡ)??"M(q(,wQf\fř3(?-"ml0^3˭#zx3(b@&$6g86-Ped)P=Cn<-{@td~ZE i uvLR t $tk'[hg^0ޖ{bz,9llY4dgX3cԂA[/$H!5)ć3>/t!d|_RC™1;GjS?A:Im4?Z\@Po/o1XIcI7 "wg58KX? MUxE)RY]v'ᲬmN$Po$7B׀Vq"SԸ|\g۝ `vJ: 򣯟Nq(B`=d?;ty57~,t4;wn0ia4v`3hw{@-|fy~Q5EL}LjOc56 J֜@ҍWgN ] Oi x?pK^0jNּmeTRH]9 s}gNMjoO -/n':vgEpđw;.}Z;lf 32.<3t;ԀЋӋ+SWA%WqBcwF*(; l!֥n-P O*,["%4b ^8Ocn7( _v@1%FA6;,xgU[+mh]D^r$ G}e999Ěn*FtDim1}8*6A ,pA݄-T٭TUlTڙZ8| U|E px?Fp6qplK'To|8iqE:3-ЉA$"竍}J`DDpA\l[>FO,5yJ;[uF6~[I_E !1!zTIji8gSoBG-=#}zW˘W1aE6~$CuQJNFLVMdgݟq{ ̓[ Gb\!H]~H N@^W1H?aRpXq\9PFE~7M/.1H#Ce2`ztYOa!e1Jx"PqVafom9qy>1$<:YT f\-$cLK#XYVf`WoFt\(W" A;cgV@"0h-(9vPnη\Hy#0%_eئsn9kEɋ'b~"VNQu͞sr,FrwMq+"cdegq[h!/ȪqW qPD_׃ٳ}>qv13.Yn^¢\Pq]8kl_džXGU" e%Xvo-\c˽k/+7 UTVZyf.7bO1y 6˩nɓ]T MB 4!X{v])N5v''5V/jȸeƼ{$'f\F;˚Cꓐ[<'㨚uUxfCni%tk )ӳ5i"w4cRw4}z)\@Xdk̥!JMUNP(>!Si1"^2a3CP ~ 0BxЧ 42!Ǯ/gM>*§E7c nY o}lFhf]2=e\Tp>tdC& )Me.sXd]Mc,Sju9+p#f`Ϟ +x=[kkӁGGwj:EB tq6փ}wb#rq9EQO2)Ams9haAU3$Üۼ%)*0ikmӨef# pgGM qJٔ&AF>ӥiP64,OiLYMX`)}ncst-bJNau}䣦#*Iن1Dd"D7oϸ'Hv jeP`aH$V۽ )\3x Dt%wPjrG(HY^@86+J)T1 Ab@VK僺yv}a.KhJONf0=Vĕևv$vKG25hq"醡9OqQ!L Z(I ΆҶB׬@b6azڄ$29MebP;E1';`c7/Npmr ߜm@[vTp٤ȴdLhCoiC`sflЃі2N) "] &:f:&HR!,&7aBlm3qk}JrθQ %9ճ.HrxfC2)>9Swp+Db>YN*UR߫!/Z| wѷS w# H 3c\OnVHxʃ{Uj༶x/*C<4Frp6K4q]QЛIYH!w*VwY0\]j}I,jLH=O&l?*2/cNJnR)䂓7X1 Q)7#с?? ^daά Vr(hG̑~uU \"k"L/=#ۓ,u,$YH24Mh>EHi$_j,/E&6fڔcĕ-|ídD%uq)Uke~r$otCOٝYq XNˋ^[@#}Qh<x}^}M6O Jg$2A'% 'H\x"tBԚn NYa+S8~LZnVD|rj:[a߭ji'|z1O S bPƆŊz\n>d4A)`:쑐DGSWUxNj jmS Eo4? }g|qS.وUj&5Jj\ՒU{*2 XY}s4c:xЭ7w!P{틜fKĒ >c3hit΄?/4,аv WgqBࢰ2}Zh+mXhÌ$[%.u<|āUS'd'b0"IC+gj ?QS”k3YnKê2@ںȒiY0r!8C3(ڍ+rB( _ \ÜmQpEA.n8czI>~=e{MkB=骈a\DE挃{9BfÆ9I@T*zL2񡌟G}x7BKEßuuihISE*}CGS i:Vs:O=Ui9PTk1D/!ƫO3a&˧$Bez4Y+ïϛ:,3u~} _ x5r4+,Vi eC}^-*[A6# B P>IMjx&,&Q tvcLv 4N>Y2Hj@O.S3K%1BW@Cv)`blCQWf$4P/r_O5u>woOƐQ jVWnxIoI3i@EA$Zo74/`(7Q]-5);*%+ !q|o@դ l[mEʧXĖ@$1(: zA.uS <3ECy-=YI]0aRpzLe_rTpH"LT* 6VX ASf$p&>'# rh|E\gE.buvgJ57خ#(nsc`rceU#n\S>$L!$Pϊ$-T^@1R$y Uw8EB>2A*XTR~NR1tJٷ$0 N4hd>yp&³md} O|>,Rs4<$=^#:sSNX"4? Cyvrӎ8Qmy#@y8u4g}(G6dE6ng c`d:ɰK#cfg?=,<9TqsIPAE0κ;T*->VdeI- I{1L~[4_)/+;Fd"*'u`;ofLRӎ]Jr~;: 헑X~$eyVxV7Q>mu%F"MXGl+wf2֝y6𑮕ySa Ѕ%pKZPޮm0ѐ (F{hTQtz \A'H-*2گ^<X BNr-N!Z|tg,-Ut|Ebv+K6v#΅- C= Q]<hP;9^.Hʬ[rp+3PlXeCU:Vf{&n~oO AFԪ`2NJՈ@ !>m ZЍ_B gqpQ)\}}\ o4~󖣰wPMPbecw∑hՒ1C!~@KMVҏiaL?uGb*:>/YW W|y^neHPai#Ga9v*jk|+C$@f?|Pc4%jm@ȿR˴`ym".RLm4Q {w֭Q I2 wq.i8;6$oEnz%G2_eO?맨>' Ib3/fAZX$22w§Scu߲Cx%0i,4 Z3m(2}'.*ՙÌ_äpcs};`9-`lGQiw, FAF:@.1"ytCB:=9ܐG&apF:B|^` qw;lc݄)}O1.)%93G̸x)bvAګz`y92|#94[;Ȗ!ẠC;T*Q~-4{K3EXS{+q XJWCs,i>0yWJfxn(KNYd?EH Ժf?g6b.ܛc޼ ecNUÚLG{M# @r/H9ii12EQ&McR}AHQ&=hnRD3f\-'bOY69jS^|Q%} &@b|g\2yH=E ƺGIvGwiՏՂ~s`,a\\<;Bes `Y%*22z(8 vkQVQ,T姉zawlfm YE˰ I; g0t*1j祢8xVj~\>B:>_0dowߏ@"En(4,z?1qMN\Z+r*2wJ`xz$Q.)`Rۇ{yQ;܀ʱq^0EAS-}VTzcZVt²(39 S΍l O4+PUˏ,{TRidV]{ʠ9}y^U8umgS!8XД?W ?Q+U3HESSbBz!!_SD,ChzM{/^\l܃@C5MB"υ`9I*&?58(kN~ϛz2kQ6MBqYbe*Lz,3Xa]0NbQ Q4m@J>}3@~ R i[*nbv vdsײhG`rQ„Aov(3g~ :eJQSwۨZ~r#x/;īo>(y*M rs,wPb. * *'Yڋ]a`,(L!:לw$_O0]jpL:`vq䁨&ڣ-0I˪%^=ELI&+U ?b*m~!mVJ\YA$UQe0W͗A&ʮq8 wV(;:ױc1`v\)v9N @ydB ?gBFMS`qdl.YQTpf\\`Ci߄HWk~|^E]jҜS)A_83K54iך4YISSẋ0{)}vt W7K)ئIt%(~!Iy4HzuQKQp=EQ?{eJq aL:)b9?g Nq!ZRa3;YU㬼ÓUn-9b$]vVBԺZu~1ּ6Dg`(NYˁgƆqZ!bGbAA1o' 8՞`~>J_L\U7KHc<\ t9[S,6/Vmx@BO`jhGa;K$mPMoJ,vgGrɪnػMCQS8XZ}WkF.KhN ŷAG쁄ݣ *BENSz$Kíu{|Bj&[IևO'}S%TsG?qd.瀻1r!x#",&4,,t598ey]h˭ w8!rk8]I}D(VsۋGF$Lm}\A&Y6}ӝZ @-\Icc#̤>+A_K, ]f[2tv@;qpMhW^` F:IoǏ2GLad8:2F$IEG4uUtS*$((DYQ^8yqMoA>)0s\*M-C'~̝h`V_˃%atc0?1Ѹ_,N?2mӍ{i2ySc[Kyma"ݿݜ%{48vaߠ!TTq`Bp9M56LG|esC9BBwVz.+T5}9A~ZQnɐaW hP 2LvxF!Q֥xj>8,5[ #MVSOuR͊хQ(BywRrlPZ/j>P#_ނO>--!e?Yhò7A؜vV!OU %{:Lx&=WC`ZtʠHk:Kpbhy+e sNT_R\t(y.N%ʨ(gCl#k4U˷oh!Hq hXR_!5Zس ї<۰k?kH,oЌs1^yąN!훷{3j~#`;H:t"E!q<־VFBZm _#N\"z^(*Gq,]xPri;IMܔ{h[OLSyߎybtQU1CEg,EAHx|+i9ۄ0<$ƫ@LW9.YߣgIrkJQ=>m/vߕR, 5E >[h6~&`ŤɎ5F*Xj&*z '"qm5 :{g%w)*_`cn0F[./9q#/AKosaN ar܃ciGo`!ȨѤf*:z%.9tun!6F ͡һP \XQ; Sj=sct3w:15~&ՁC1$wBDGէzuĀjz͍s>uR{L6!㲖x}aU.m'dža^Scr6eŘHXMK[Ab't¾1h?n)&EF6f=Zq]TDm1OrTl}hZ5h8*xw`#)9u8?+KlMl.d T9ω3eŇC8BtF0%fꩬ3dV-u McOLXQEz9;]h|~Z%p ytl4֟H'v|-vxe@O 8@o: 2}oy_/zXxގZsǼLqOmAN_ l= 0Y5B-|kxl=Azp 9O6v2:"Mi 0˵q2bajII޻:HAqx?Z;ظ:80Z:tֽκ?9q(C!4@L5C%\I{&:C)RKzGauP ګ0aƑA k B)Xc9:i]{PJPgpea 1[f뺚-)VU3m]Q~5xQϕu[DX %~XsM^eae̏|9XFeÇ#PvBEi"{BWT4df_Iy]oYn+,÷[C׉mBGfHyɤ9CIn-5x5V+ =cPwouFAˊyQy5t {cHum~[dMTR)ٓ c q3zSy@솬B[zA8hX~u95KE)HQC߫38 |@lTf2\4;XXX܌bv ҿ ]7D#uDJXRp*+^oT3c?xzFGBQG#XnZ}Sni!kfb)&U@\A+94lG`&+RG) x(x-n_Xl16F"#h+a.yJޱA+X5'i$Î$ʤ9n?g?v׹0ľݲPHVgS/5~ӄ=@9VqJsh׌. ]: 910?tH7/"?MU;Ns(~qXM#.yEȂ[O fؐ\YKu]s,.֒$Zθɇ(W(Xo~:c}歖תZm^pTv{)HAIO䃆K`';zčcϽD6Q@)4u>GyD=& iߔΞHwRgiyHςm4|=`5VRx9BO{+B#s֭D]ź~FJ٢RG=Am.m &O[u%&`{ߐ'ٺkg b^kkkZ{-0!f)6-egvuӒȡr<^P'ɜgfsj2& ;a嶉UkInj$ TtjW[hO"o^j [cK07 *.ăF(HJc"G~X*9U@ꎭ(SB@?I{0nǚ-{pT%{N 7o1cy#f0}PMRǞv sb_*#rٓ/v[8k"y̱?*)k:;\fuı?) <3T6p7*CI *P{gf=Kj9q&zn4RUvOdMm hRq}r{=pMWhIήH,Пg)-G]D0mcQLͷUuoc(}_n\϶)=_]U(0$8T܌]jIp v!rJD EO!s`c-x,]ǖKX.>J%2½")Q6)qD 62~.hT6g/rM[%b6@PR|֘#7$q7BОqmc4.+֛6J+ev`3ĸ4P|MhkCHsg_3ldG xbE?w7S/.K C)Q/ܥ^H85iO4Xc&w+_2V猱L#mν_+Bha\Vl|~O溵~йɂdyNdM HQ! =&WtJR&lՙī;dhk=~{+-ApZUk_ %9'Y#௧MϯGa`s[$?V緯~=$X ; ' Ȓ~N\Zu ?#vk=D-BR%h(0trJJ78L F*2RοSwK1dHY>伺r<1ؙ h.'՗/TvT~e[7DmVib%o}s婻3xWԞM$cϤ-r1 _ j4[7]%^)s&z: ]ƘNz:y;{2UE+~Q[Aj]uXq|ZU?5EY*m^ )cjq5F8:tm|43]44ڌXqYRV.k'*`QK)8HQX wюɄ]t+-& O/Hi].Eo 5v朌mgf;Tֱb ؑǾ,j!ö'|MB5jçVlH3v7 3MɈAn݂`}3y ~GBьXf9~ަ$}~ANa*5R渷i 6:2 3'%zZC7۩gujlQ :l]Q C>w(E7,hڬ,o ~0a)jGүrg7"} o<#:szhG 34>G&O1C>=COw QsƇ[HVȌ)p4MFQ֓M7Yo#@h("{j5Nf"hs>hX珸2nyQ))UFe~=:NiFQ$$]l/y33潉qX ei!sF5Š_ƾ 5GbN-,q/D@cIkXs܇c񯈵3ݱJq+SXF,_N! di˯;3(=OY:-P1j]aoK=*[W`$uܨw&):[K}]@wX6ꥑk@\?mH #.ƌK󞊥xE[vhjR胛dn8Wb!D #*T3?R,YD Uw#B⥏H4$sjDMW MiiL4BɸV`Q;w NAq;|iyВ4W8h6 1]5H}.>&Ig%QAO_ lX2جdPCĥ`|:zu^?7sMB _jic“'Ẁs|/N[׾K1glK#uܛ$#Ru{?@ Y;rHPF $EMEK!6v{dS9? Y60J"9˩wxFT!6UXT_B_I!d I=e{q]Ģ$HOXctPVRe$gwR^E4f> V 7B>L$,(c@limh];eͲ\c1fL+mפm}4A'ɨE 28ʶEsS@~o2u%fq5`:L#;m+}W|;nerrZӧ ŌmMjJ8HcHiX>P=Ydzm&f3|,!7>XwOQ"4ŸSmU7g>r\{t H0~?Zؤg l!Ӏb1_p4ɥC&;U0'XJ '@H ᦨsh4!f.+R4 fI.5+ڿhʱRH]F&1\9|ՈG_MЇۃ>: 0"e( sfk7yVKy@$ҀߎEC1Ҩ ddgg V;= ^ +-fy$/[ywԊLYqqFl`jo`EҹF*X 2G9BXw9';cᆘS}Ep%mN5P{ 6|rPc ,wKu$90*9w&%>hnZcuZV(3by"Mw-R#OșBT Xi{Ҡ Ճ]Ye1SB~;Ǽ}KLǨA8$@|^[in^n*$ڑE\sU&ګ|: v8ĝT$̍–_hZq NhU_Iħ]~c>YTgAkDs]wmecqAԆ UM kUŜOY7(:JMT,9H%yJ<PĂ USE~OF0!hOb Rr VRQ'`4r+s}~ i&WX6\)]K~H(::K+LfD2߾~i'KShWBK3}ܫوq6Gz蹛s6J C/R!?MZC+6n7Q~ I rwTA\?}үrƫ\heHD wAopzyཇh"e5$:b@MƯ~0b{:];mT\2j`$As?o w &YXu#@^JVw\q}vEx<לv.%lZGXᤴ,\T͕d;ae.ͨYz`j*_}Z_3X2Щ/d*lz8Ӎ'{ڻY47A] s.tOzT|Z(Ԙ-CʊN Zc†e'~fJlc;FT'Pvb-S1ۢr=\(0jrRiWxt.u|arh}u5dFE57z>eb'*)asJvPq.O f;7hJx {!paσs|!roQqJdm]N=)slyboV]IE-178 fQ,H.tc֜6QL4)k/DFH Z?L"1v-AҵfM5|G7 2AU0t0Q`c؊6b#7?[V,kȧw;=cH{_o1лkGK׽tS3Z; |nC&ez:M{v[΅O'+o =Uv*h*\[gC݈G6 ?>3uM6 Mϰh%Cg <8=00un8rdTPDvL4X}zMOJ!l'(U6LΑAd'R3~0y8,}nP«u̫[l9\۩SOHg߾^Og${.f1lNZJ7/ֳ Ԁւ[9fe7!s*y V|pkmҹ.#@ {k'6λ8$O{%%]{ Ǯ .AJ,,svgЏP'kqB Tx-izmx$Zhm ꇺpXXC{2C?{w̆ {.ӔA :zG.%,@ D@?*'__7R^3+co6K5Bt&.{:{*)p?L;a>:A"B#KXj\#??N 3峨+2?ŭd'ցxʺ@PGL8w?jZ4 :MZӨRaWv>NV囖?y&]UƋ>Д!1em!XmYyQ;\ %8@|WKǖvCJ2&иBO?_'$AxL`6trs?(-PdMWɉp88^Ֆu`w.tzfYՠRlVQFn+sѠ&I^4X۟l/O$a:O,\2 0@ K_?zyT=G1p1? 2nMXv ePۏe&'dV}31M+-Ȍ\ISECpso F =_JJ[rڃ6[RM}~@1f}0Gm[iCJ0k;R/>SxK M[5SaoʅcMuAѴGxfƇS6_fYK͵W,&w&:wG[q,m4I&)C ^̣ prD!D[DCSs-{ljEW=^t@G@;Cu,f&o[^X"*q ŞMU),.^,HG$[#ov{ Hag%0^*QhSLo( K|=塬g2C#eʚ([n~v[RbvQnY7, GHl5fhACy@&&I43;oNXGP.)I'Kn>t=2Qe15Ձ  28tŖ\ohC7SYu Ұiv'< PBV%fpΠ 9ur;Ͱ_(0S-R iyf4;\|14k]zo.# 7!g1ZwElo1FWy1sb/ץEnvP>6+Ҕ?!q$coF]ed+k4<x9g B;ѷE\'-VoI˕E:.6wE:s细+Y0Š u;Qܙl':y%%]ή>چ;ol㔰4z[fcu}ML(ad>k{;Z`_8?H"H(dq _GqB%ΌRbJ hN7 )8r|E#C>~#+^n7!R%2:*3nl_ʜ߉׬|5!nZDo,;qRzL ')]w0m9CSڌEM_yJi WCmDR@ uCga}TBc]h#TǗ;u6kAO[Y? e6)6%dcDf^_1{ϵauth(-Fy(l>cz?܄(/$V_ײhSذ >КdT$8bۢI-,}PO?WbL&8d[_}*`/Gga1@ ތ |ȉ[":0)ԇeB h>LSˤtYS?6'\ *@egnwb}o )ў.t9X͚:H|xbpiH /S4#$J fWQe ?mJRsRmmy^O˻/,2 N44"guxK kI#+m\⠄ 畞ZnM$2/#H]G_*$<p"VG&۪5{A[|se_c/=PO}`\ p EwRv/ MK=atWEe3^Hydh/0Ta a.&$gaFTM3Tg1^S@ *ӟΟZ 6 /bȧVև^UG6vۆ(#y8I  s&h ,Մ#6D}kp:Hy9ˋEIQ&bdE@t)6'AܦX:\cl43OWӾ";t;TCTdB@rGwEGjUP &KP6d1QJԸ%r37gˆTiF]翗ҐF,]S:0ʜaVPhBҿP=D#0wG_Nn<7c3CϦ~9fT@4:g'^Ul~IU);#g?f(>~Ғ5 aoUghxxA2C+n8O$I]'J={dgDMT:x#j>JTŤ>2ݎbq,:e֛w o=ǗT4xDyD'qu6I> ЗXZY礀>v#@V*Mnz W_1-ɗR~F=<(T&g]+_k7~qTnuB/|!J(Jwzaiv؟[:SGw @^+k2,, 49q oM'GAZ9] :O0sC~jx/# Us*|v@{^NTb*OZB{}g2A'Q-[O# }H왥8hBPȞ%ͬ#/dm׏[Cl`=o)$]qKn)Q#"#醔5(ȴordM,+sg1%d66tn4FPܞt 94W~Kd)j QézW̏&JtqouY32 wS\KN1zvJ%ޅf\NPX`r=S{ X3bDR mz]C;6|fcs1 |G_tihf|HbW9T/EڤY৏fٿnM ysRun`1>E!'[|%B_dXZF{ˏүڻqPk-C]䝖R9xBzhg-W,Nz%sJ!ـ8 0^b j8L7]t]) hr-h?f ~~s|}M:thr)3ʝPQ|BxMxgB;pt3\O-|v䧬$mV0ucp^De*t`=+eHcyj;r@|»t-$BMEud:_!P]^80D EhQWIX^,8o =#IRYLpr7h)9@S˜§('ZZv w#0E&%:zH199U)mKODMplzY6Rpa>A$\m c 3Itan֒1FJsWDv:~'5,L^a4"jGZ TA% . 9W|76GVĸU> x4nuA8J)D7i p WeZߠsxfa)̚'1V8!7x'sy;)Yn-_ޘ yoU+;I2jUh)9*^Y=/4-ޅ#z,l{߮ )3!Q ];.vL]H-.gcڀ(pf2hNYd` eU|Bt IrkgZ˂q]i?P똫os2Fe&!uHEO-bTWya }X.{S߶m#x\i';夯Idn;gӋ<+x8Vߑc$GDleNY3P=V]Gù8 9%6(ˉ O+4 tkΰs%p%5.lhVi+?u|%E,mUYEXVdv{xHhDŽ1vdA=JA dI$*uBsxX)?@2kJlj6SΤ650 [bW_Msk)m̏:]ۓVcuw<+|k%.:IL8'#!C$%9Nwxkj@١%Me4JyXF4:qJe͚ VZWNũnȱn 8>| ؤ%qUCW8@b)k1)Ab(}<ȡ:^WKt_qCCn'y@E@kɷ|ȱ%U@P"|y}鍺qy@)\۴BR~NҭA;(֞cq; LJ*nc! sR~]X\D?9z@E?!MER]z?,ݎJ+iE' q,:T78 K ؗ,3 v53*H OXJ4dT^nꏾY^Rm<TcXtg`.E\Wk'IX馱\luC;#X:תjŲ*#Jr;Z֨C؁ xhb@nC%i13ht6|'>k7엕DQG <4ӱnDp{ }~6%d.lS#f7|1n&>w=`W1MYA0a?U/vU 5,կOic#%<_yVxd \$W -w 3A|@RRJ jq%N9AwM TF_:l$l<؅i)g0Nѯ3X@%fXl_(C`%}[r} ^'ba (@OfTĊșM̯/yQ{ʃg <υ*qtxduNKPT W$bG r`URj|J$!ޖXLD }_g6xc]պ|Y@)3)Ӳv1\h`z{wc&Vޢur9 t?©}P>oa{Z La_\=y*{Q+~mb"4]&?|S/ed!| cYN\qb5|cyJ85Y/Q674g (j+Q5: eE/=)bckG|a һzg ɬM9 l3\.K55u/rJCG\68;w&wIบ1W%']/47r{[ ɳ sx*5L&r"?J"*fG,`V]zO|}gm{fmEw,]]Jl@#v?VDR+vK*aLlCۺ0"8rGYIQM3YKgz"F~Y4nc m?=֒ 5\J*Sɫ՗ˤm2*m/X2ɜ๧ ף_ҽM,Ƅp5ʷw;qZ`ֺyt8!=xaoBmm=GBnx3n1G@,md/5rXaȬliɔ=AǸNܯE Rj|vz!=X۹'Kow<[_S51!Жuw^|n~}2邱rl*KOc4DMsdsZ/&<7"|k%-ZV῕%t%푦 "Ɗ*n< Hn DB_+u/EfTzx b E݌mceh=Ċ5ܞҼZ(<=o1כʋ"Xuaj*+uz)@-H?p%:Pơ㨴JfvQ!OuToKoȚ-D>6ٌlop,} gjU<.DyEĢ+Tg8{* Տ] iȪ\FSC'ҞS%Nw _؛w]OB$Wi0\]~^ߥ>Cɡ8f0'%|uK ]?4=ߺմv ,OI:~H/K5I$H*߰k`:U3@-QԖָ=('&߲6 of_ _1kv;A@S O_?UsUp~JtC _o}\vݭt na2-9n7Fu)C46Qc6` ,5/AQ]$[q+}\Ԛy`L>k4EPRHABlYۛ8_:xlN5<+i|R?,!WwX4{g0YVha nsf >cbƕX֦2~LF~D1u8F&`i5ϕޮUQ͚'&`u, >?)r DNRG [b9~~ـ螂Lc+o"dտ C(c/nR2%p_G؍˪MP(wCdI/%Wߒ!Vֱ-dme4外Dm)N3g# ʦa%UC〿_׊~1:ӝa@쪛B|j#,FqwM>~Pyf TEo|zCƽeV~2!KwSht+;W(IBo/G3炅bl];*Q]Nʤ0(.5͵K`'bp\M_{%]E1| 履,^mcޗa/d+~@bpN| wԨ "}5-,S, mh#ሄ"fɦ\NRBbɨTصpTcaPhllA0K8qvoIS-~zOZQ ꆖ&r}VOk~~\>GA06>^Xi{CU;mPVܠ;8eGiL5}ͦ&\'/|IӰڤ-WTyr;HȻ7fM:q.zjWjԼH|1HSL#{$Wb5,6B1"$3cRzvL/{Ӂ7vmC p0ÅꈯXsW8_{7 2DvC C.ul׵VuᣀmSgцȔxV@7Eb% `=m32";c+V7ݾ\sB[Gt31F8fk99w!~ > ُN:_TIt[޶kBKf;>`A$?a'6IZ#{%b7,_K DRMfBr`3uU4ұ-t`Uc &p/E&|P惸[qsV@UCuJb玟u# ?Ճ~,݅f,.T$b,FP =#; 2Mb \uɄ6vT8&~#/۽l7LLC&*:` xѵ#^n,*E9؍؏eGn`U^tW  `{_@J#hn>P8؂6o-w5{XUJibr9)-z T vw1.H.n@_\R! {f3?%QnMNu^T\=qHOkRH#U1`; wܗ'dKKΎ?#/MxnKnuVͯe3[Sf9lLSB:%T VqsJb^o :gWEV!R|!?QGŎYЇ@enjww'azkanH'њo_mXeYnU#M`շr*ڗRᨌޖIIDs<~mHnbp0yg<n\1SII Uw?C_9buG_UFO9%0zQ^B؞= )L[4 Osfo2XBo4k0 ^Fvnk6Ci,**&'7cܯ$>C Mwh fЯ!Ye e./N w.}UdMj8:wuz<։3XKV^9ߜ^sJsvo_ysZ^Ie&-74Ldԝ=q5G*a$d=]aT;IJ3%Ųƚ}']H+p;l\&K$ߊgtQB<6#?x^qH ׾[ƒEiA%C6d1@S1 :  ćGRREQY>1dmMU1_UZ8+c Ǚ m=v a a22뛰WS{f83˖% Qd("؊ rڳ2 \!tzc mĶzځ$<tZȺEBM5i1:qԪeW$ c>#(<18/oPDIw*3tdž+} ӊ N:L_Kce].EDo0} kp' xjE"9u !4@>Mݎ_==ia6( wҫ q~vso|YM $CJOm:͘}o7տ3hS7Qv%+qCYف-^gߜ3vD o{k@ȦT/Z [A/~Ǚ(םqm 'ZU4ΡvMb>d@8J&֋F*mD՞ڼ{(s՞̺M_&畞]`{{{;'=܄&C@²P} &;u;KbFth<~\-ɗז8XC_%:YO;Mت :\iw#1c:]ȼą%h ~m4)$'i"=)!0F59T􅵖 x s*=̘t*8IatЬe }ɝyn}]|p5Xd>U'Q*71px Q7iGlW=wSc J38ELjғ0%P)V*xs{I}7g-""͊\L'6y| g s#ήkmר=o +{.>)8 mf S9H۔4ָu20aIxn9 *g:xo y&߄a5Y6}'F9C: [q(kOOp*/Cv]a7(&4~|spȼnPřK.h^,?s{V#KZgS eL٧1w`֮ϔ[KBrm37&4 _uǭ#(v^2V^SUЫF$䪥?c_[!@dR$IyB2ni:㍲ ٹuHqb t!Zs3D0]U_,O&w1m_|!񵾇AAq=Ee??Q/KǤ?w&A>@DaeG}04̗ݶ)ȬS&qh^Qdd-sR6X|ϛN{n!܅ '#T{dWyD1B>UdJίX,2%ǁ>!1_C{jW #w6djK'ExM@+D2xi%-T荐 3&}E-<9^Ku8!Cs?V*s5 <Y7=f$ݬ6$:un Kr_D1a; Q\ŵ nܞo,T§ dapԑhH1=ReoN/Bi롙LiPh:h[Zxk$)F)|kGQ/(BwWXҔΎ sH{sA2z3ŪL6PzkWT?N6ړq٢Lu"}6Se$ĭĚNWQ\EWi+;q  }j gsc-6XLLcy/ Fp͓ˣ+Xz ˝YGKũOoQ8ƴn@ɰhX|jdU-Jp>Ǧo NBZtZj>;2*ume LJ*1@l BӬ YrVQj&'?!<1 5õpRh3`(%S@р7ռ}9h{tZ_|U JU%dp3"~g_hJ d9ԲN"oRٸ##/B"Sj|c`wcJ]tȵsU>&nU5#UqRAhGQp"~YYY2a7Բ?ZD)baю$A,Ljx\\녧=%{)ĮH+Azoj^=nybiTRXlF]C[V ‰[-5BC3LuZ(<Պ[.}^Ff/ ƠOf6} ` LϻfH,~<U\ "4W^oCDǐsϚ"WuNPRh-, Gc#U63Tm޻&2s!keb>C.)EYD4~'@ӿ{-*i'`Fޣ~MK'V&?g0_܅hE֥cMڊ cH4gT1-+جxyGVxO DI8A8DV?js hÎ.th 5d,IpJc)ѫ[GA}YL2L0E,~MO1Vjqa4z5OX<EnoX)KM; 322R+` 6޶b(-z[QQ|w} i(`) |g^YڿǩOI}ߥ0d +%*+]~̓1ǹUok߅]]_I u/Ppx`#%_DXf ,OYwi:.LoJvMH"iB.˻|sE}83哶zRsNrV ݈~ 5ƹpi aOYS˞۸}cvW+N>.9_Bۢ\5TVk$dk0>8V͸>  &fTFt% |ELNٞĄ%"p~ګ\ ;ѬLˀfKC&!j#Vb:IJ>Ƣmmp?ggٜ#)vrr)yV\pz5c3G'/[amǰTNa܅/Z#$ⷍ {#a1-g@+ƍr86IlF"/z}%d(WvU`s~wG$.ĠR;QE|m*"|:޻v6 A\-͕HȒ~i[6#/-ք@NV$9or81Ր{h: (B+V>q t< kKެggB<rHiF^ `3(pcM/w; VC`Ej좌w6I 7'4lIXh#h9:O)!LQ?=<'}|gVbx`lpD$? +}f4[ʞW'RT$W,q)1H2g/d#]I K23Iִu n'?`/wݔ]@GF2 ([)52%g] $ȏPzzXީ} \;GErX4[<~#\66FhAϗJ;ρ_WbpM&$Ѯh]״|$*UEsa5՝,mC| 됮Zx5!MLҐ`Y,Ola@feڼsn{ᄗ}"s#QL:kWPH)B<mʔ7+ uL<nX[wb1P(ĽM'(S9k>3]〽Md *{}9i=p":$;o& Jo9ܯ? ]`< #@>(Zu{vzZ%fgυf|N[.N!["l*Xx `vA*J@Ł``\ȝ%"[CP9x'M D)渷Hut{`ap*n jK5q &Q؈V4rh2E'z%(&k~Bv4.ѹaɀEON>ҨH1v~4B/܎ M7&99gPMwMYcr{M& z Lk{ge\u(a;E{|bO%BflvC@p\1vZt`KZ\ Rr)fʑ]Vg\,CP6沥{rs~GDU^K>PsZ\i2id $Nl "rw71Ԃiul+Qol3M 'ھ!UR9uzXTTMgK xn5m 54B}{̐Xa=ԑsxxƼ fu,>KN5,?=`H$̼A_BRa2!1Z VUh ew!]}8Pj;وV;QRZu]G+w)o.# '\C:h։d[߅p-7S3?8Qޫጊ{^1 J7XiQ*r8;LT^ xV@ Qп.rtOY@;;%Hp Pkcx[3zc?Y70qo9M̗h=l0o\#ISd^a6'z9mTdu>+[%\DK1O<nμm *)7G"+-Y  yQ#q긱l~8? ZL#{m\?&\ Mlބj4[<u(x=x_/¯񹬁tPAާLQu 􎃘K sog 8HVpSL2)BçKĩTm5YBjXz &~.ṲӃ#ˏX>99X5&퐧`>bG%S];P4 {v/Av)jpΜA)9.O|Tf$Ifjh3cm9L@=}5᭯ cr;yql8WuQ2Qf؜ "Ql/ҫKuѿ7$9/ϕYȡ&FVm&;}Nx^ [98L7NK91Ma74-~Ӽs5F#dDG/9:bW (\u@~q Բ$Ib=k vi)a[n)Y삞^ԍSBHh kt8c.o&=R22t6C[xڼR5  vAO( $vp80#暂b͗j] LoUP߂K .<[A;eV'B[1&eV'׉NpO4mZna~+ްg)Mvȅ3K.r&`8Xࣈ%_xm:)H5QލUOyd(ՎԴ~bLYX1nF,|g}dvLAK+  𼾭oa{<^]7Ifˍu[F>h eߘ]nS"\cHi7oR2! rT^ R 0{D\F@m#g{ s|f*!Cf;v~eubxlP[O$‡8T顀j Ѽ86vR> Uj @_.|;Eٹ20IӔ ?ޘ"{8㘋72zQ&q E @z-nYP܎m1uT Xqx>z)`Mm V-T^pzKa1xEgFѧ [N-J`1XG,) *~:>_;e8 hg'QjկbrD{.G4N>SRL3@2qi  GE!;gy[S`kVGx0>qN Yi@C2vNylOr((о)`t,!%_PmY[p|pXbFZUXs-+݌H<<ʌ\uRf`EH_MRI) !q+̌T ?}>BJi v=ZC%T3,[oҴOʊ;sʹhSa=?{Y''}Rؤ`8dwh uQk~ *H9QaKu5{Sf#bb!gpmfylFuŅwtË' Ok''r:J.p|RlmBY8_.͂Tb[Lu # GDgv#9ި,2q2R^< 6>AxY+c |A\~}09%x–3 .5"a͸c%0PS]iVrSL û&SXq7*X \*:~O=;NQGmCo.]ll~؋U4w|_^y=E| cAsMDGZQ3U[Ml1%jEiPӞ^ו1L%],QFռH/tV8i?$ga ;d4wМFk팢Lk->\1jWM/,Un XQit.ɣMub qC[+rVnbEvY@R$,ta ?vN" pu4pF!Y<0v~h^C: %fƔ;$>'-Kz-Wf^;퓦-HŚP\8TX;53)x2U.O -͹5֤\iy~Jp堶 Vِ݊<"4}$>m[qzV=\'T"FCExlR2'r Nsv/ޣM\p1PކHLoS^J-6sVKa3-B(Qwg1=sƗF-0-ƔUxr.Q~ cfy1!+vP(,K˼MKc㥷ՆuQnJSop.Ť 9[*WtsPn$8*I󪫮%Riu]ݭ-^-k߾Bu+b/>STwb*SsQ{Xd /q%xq׾Q"8FFa d¿J4SaQӸBGv͘$cl_Et#K:bVǵ~5_OrNΛi M"h:Ye;ww<'qVn`vy`bɫ3[d%#ae%HPO'ҕ5:xR [wi_&3Φ]|ǘ oġUO<fcQ&4)$UK P$Md-ʻ*{A1 x "L*{DH+p(}Py!}*l>`_󠏻-m ֱ^-j`1tPYq z)h%T sE p˪iWI. Di?ܪBҌQwb3-?ɚɠ,ȗM%X=ZPz*tleͫg> tKMqtJ:I<3Ob"L7N-ZC6_HN|wԎR+p\_?S/L`z v08/^Jv+i~D W(/"=u s uh.ھ;z<'mSW=EVD5ČHhl,:u៽ z]A6dHb 7<$/A 2p͎T"Ƞ9 78,oU1Y&VY_zv`;odF]) ƦGPe1*C<ކRr&&T?@:_&&3!Ӏ́ؑ`>jW SodcY A $͢7j&a#]w D1-?FG< Ղ.HȡO18xX$U(ÛBT*v/=7\F*_I y++J*L0~tm:mU@i.E y6JOvz̟f/R7haaq M1QFQAM\a}HJR #p;{,GQMڴVF (uJI.WML3cJRϩMCwa&ǰ~p:;QRe73"&X-KVBL5\; o{"SQX]1MҦM^4|} qqVXL64QŞLNZ4XRC3J&P3D”g9@˻ӕNPP/H]'g0MISKI˜m`Sqw,:f+/no ;y<mS9>_a:]LXYҝ=4`r>+[{SڧE0 ,^ۦ h i@瞲q #)sfV `nEѽf}l!Busy_jx7||`ܚP[`]ԏ!~IS³΋KPR$Z0nXc1~)3T ^yR!'Ő| iV=Y%=-Ե tR&@*lRb|_;2Ma%ce%AHzMA'I,qx0FM)$8 ZFNEm (M{)XQyɧ]YZiNey qp܃WigiEw@X&bDz~4uYF\ 4q>mNepd=NֹDB-ܐ^kE0(}k Ǝ|I Sݧ"<^,=^E 0Pܮ0$ڹJW7ಖw"3 tmT]yEYtKZvyY yt+V 8IV3ġ'",ٷ%1yQFmEFk*LkB+w:;peyz(_#ke@Q=* EūOWFCx[I=yA%D2O QDʰy*frYȽQ7~x{ >@efL-0锯av z:䣃$\ &{mGad:c5 2 mt!wUEMP改goO؟k!mwwZrwU=We9bw /Bڗ=YKUCC$}Y“-E!dע0MdebK2zvQQ\&L@QBZ>'\kBQ//֣xLJr3g{Xa>x L#[IVXL_}xZu!t/Emd$.M08(jSE)l(v>FW )s+Yv9`8o?&Bqg'Nl;Pӎ6bó've .ӭxf,d ZtԎ閿tŵS`4\rjI͉3Mw$ ҽ@6#Z _h{}4i8fG4w'pT 8)h)w0S=G+m)w;@jѩ`]lM`R;T$3vAh+Yd>eH8~U0FrVT?z{2m T: k,^tsf:F8BVmll܃f3\6 77Bʕ.ڄ"͡z[-9P4vJ ZȔw׷՜XMr܆]':˥(-z+02&}H)tJ0Y >?$95yN8Q;vӍ׍?A19zRfA@BOpÑvyQ5$xKLg7/]Dmt96IY;N ȇTFjs7>&{&HRQE(7񠔊Qe]ʸ؏r0 ugVb IÛSr1`a,*UQ(@rS m0ʅRfNb܆{+@k+0Z2Ϸ^J Ƈ6D OaKH&Jpʵ; 8 $چXrޞc]Mt\s }Zۊ7-Y>hc0/:Y9oM4-5lZ-"0ݹbviFZ9\4j!4,"LzyyT|;EBm/0d[*+XgXPG*k;oT<[+a(ɭS+Mu~}s":-q}߯Pi9A \}?L&:нڣC[<2 r^y 0=#]f$c;+o7vG:|!ȍ1p9o[xVUkjn0i(jV| &MraKm슠O-@豿^I=sEYyv }2ҏdcȷN]w6tϿK(o[aef}49F7 Upp+ PrZARYn6r;-Ikg{B_hZ[DI)JRbbr\&Ó[eCSQ%'zp]PGdlX]Ae=e UW?;E,gW"x iPR^I?$kT[kNXq92վ~!3S*-|Dܪzh2^m e AkKV( B>#6gs } [gJxHAYyvIgq#P&Lf2Bh!1L~ B`-1OrP][Bhϑ(f)2TT^Y3¾$8!h]T,p"lA}CbҵI5O/^-x}ina?*,8қ_YJcȠ9T *grS<+6;B~W=5zJ:=ٯpӡYշ n[d!_#JJrIh[׶4-b֙Hr7W?'xtJC.J2()?oʷVfeTgtc^ B%A|kqTOZ#_E{jPm>D,Gh+5p/?Z}%UxFv/<һ$/.)knɰh0C=Nn>Wc2͚yej/O7D'Hsƫ~f7&߭qA^ Y٧յUӍ&[X-/[U6YOO$6QX⳿!$יx:Y\^ ɬFJ`ےXv>_LOvl|ˆ}7jYoop-dSl핓E2NmOF`X >(\[ܸn6-h[XUmo"4): =y"HTLKo?cu5Fp@c 6gN9:lh IDÌzw'>(01"aVJ rND{>5b=ׄgcD%C]^CsjY TALڰg,#8 =tj<Ge}k!(y$$6${v 0_!Ap I\MoT_t,H5FX ;`q웗-hK Qԣ"4tWcmC06 `RaNn:{K>/OlQTݾ|. V.'⓳ސb==Yv_w5cGSVj wLO'e& I3Ut_7򴎡/lNF߈П6:¯>h!,pl_O%Ovk6#e;;B㉆2 L&lT\HSQaX¤@J 8wi%eI`\(дWU*h!vBȆ4ǜZm(@tboAT'HLu <ܲig[4kU=Q2c׽3(#̤f|a>E۬ a 'jW5Nn ސ9E(L!HA8Lcc:`l&9r.tUI3*m80sA7As͈O^V갦I␸kZ߈῀=3EƸՉpY-zbH>dgu՟KV(&w|gm]އp4.k ЁKQ JKi_ѺΊ'7~(Wp:cIg -8k9̡pP \loQJ@f L\R9#ڒCS]7_&6R$/3э΢z7 ?7\(!-Lf3 wv%#V$$ 鍳~|T 1&k"bqHX8q[oX0H)7 B;f@-Nhb1?bB弸5J@xh qQ)o)?$\7]f:Jr2jxa:&,io_ T_hHӄ/g\JyFF(]~샞c%oڟfhVөħe-E 89MpكL>-e^ۭo^,!>"˶lI\in{unbyV%@'d-S̠vNQkoϷ5yk{7G]G*rV5o,Px3rQsVrjI@=;m!a$,h8][t{n)'^:(R7-Or(Yj~Cl_hd[h|8!$kazp߿@rcҩf ]%gDIл4)=]4oN(->m&_51b0{!<$lbESPY՟+,o~7HK0GS !N@]lgEx`6qf6/ pB螵bW[_꾴V"l0e}xɟ3hԆ9U(U§HJHrTt^ȷp&GJ)=TsxZ͗KL? ^ Q&˴e]q56KPؤۨlyәU2squȠ~!x˜Fl3QA(hc̓zގ١[d> b4Nzb_d_Huޣ"-i-(·:h[0!OZު41Ft !G(>w#*^wla97 G^~eUt$fXjn7c"S&+K#ђxw@7{G m ^\-0*-vN'@mЫI%-%S^p$0V{lPVܮA*?o,V[Y5g+$'d:!+d li;8(U6CũoA".)(ƽ&[$UQJpIS sH 7[K:f`Iet*/KVNyx(AuDTOE2T`xǯRѴ/vـK 0g.z wݱ87,OV#:o&O7687Z4)86!{J/s]aX&rXԬX矈Ibw.*ݥ-EBؔԔʖ B2plӒA.pe":!9 aϜtɆ~n3-[ɍ j VPUrs&;0"#g&kjrL x6Bl$V)f4ި[yD,<;F抯c/5,Kd{_8*j]-%H34Ydž;,nOopѸAf(,F`@l/Z+M9:2eHH7/t @6=L"p [-bɗXS`S]!sf &5u\Om6 ip6) o+rciHҋb{ j!vk"áĉ4Y)P-IY*LyJJI}] MO!fu}m>p\| m4 αOJ}CJM]ş=?DaBU,pЧqX}ŔiKx&@e /T,)KPpK Ϩ)ʋ. U3_ß7$^3nf:uUI;dEEV`>vZ%P^9< ඃ;MH8^ mZg1!|;ylrQ U˜$iȆ:dϷ|XNjȶo 1ٱN ~˶pbXu2-At7Ҿx ҄LҔi׀U+/ʗg+|ܚ܄aYN)cd7`n!"! ofj+$cEOs 䙓]q=Y|׵FpoEY%z܎7`AQvPOyQ]>ܻ 5aBq~# ANĕ?I$8즨PD)iyZ@07$-[5U½{*yoƦL휋?$Uqc\c Hw!֋$2.LbmZcp*uuiOf:WWw=LWk Ka H뚮ɞ}PQ5&2Ux{nqsĿv(2A R"!vgYIB=>^|EYFުkE+zOO*Q_p ]Oht9}᎓vޙk&uD4=č.dM ?w,51q~x3(g |`֞}O P$?9_ `bKKm 4~V ,/vwܯN$JWB܎OaE0\4TR97jdJ%]H@vo轂 Qsү8c4uO쮴j&qZଙnI)B:ICEO[ySglF3;Y"e'Lj_ ѱ5$2VKD zc9ӹ߀ȑr{{?D (.:[sva^.VA,Qi> v8+[dXTdn~-cϚk[ "V,)[b3t?%H625[HJQdP)EĔ?7Tug Y *.n~ݰWImQulX-<*C+}[̶DXGR8ߘOz P`qvtN.}"d|Wɺ#xF}c&pUljU6ʷ`vrFVz3<@ڂYYp@-YYg"q+d lF_~ HyZ1HuL4l)ehGb'=`;Ďuo?p]1L`n}"hܲ5y&=ǕJnUdj)rP.2A3uXҹmjΘH]" $Ǧ M4F6I SlOGwH1ʭPnb3ޫ#H4@ơMnя$%6N`4:*`Oe7K,x ^#i nFcK ♤ :Qvi!Cw^'mW.JiSo Jb*> MJWשca=EE@:R\OkŴ@򣘸(ȣ`>c.?=vBm{!{ǨPZEWl/faQ{ؿnLߜ !~>Fu z@@/(XS\ 1gzĉ*ʖF3F7̠:ܡ톗!uy'&r n?3Ѭ&v,(3D,CV BPXCbV!X.Gry6~ ILӭc3~Xŋ2)tH~g~eC+īu1eݒw++:902Be1G_ -2Bż ,bg;5{ -N1"Icp z}ZfSKəHkg6:c@ρCcq8#˶:+G]JբKr.<لB9 TEk*)wia \2KЕLSm2(\ ֣&9 &Dr`/)̤_eۃщz1Ç"e#UFtV:ýJjqhExB:*I @X!);Xkj$Ld0ʏxKT#KnJ`LR H2_[G2f@o .6f7%%js+*a:IJGvoJMKDӒī`Mo7NrU΃U4oa=ƭ%,,W,;X(~CskBrTxЯ.CACV=7ߗ:,{MVģQu6!FT' __jA3 -Z- P=ȳ56!}VµobMīG©\Nhsv*:ia?D}(%3<%s⺀ص4C5"h7XL(B:f6%'XA^wQd.KN5٪ϐ0 SM[E$1#1= lЄJC`|P3ꄤՖ6lPX[c+fʰb`9J-Tl= _;?er~RfUf\uЛŴ y~t_-<̏sv4eߘ=h0SO4HWqږw^J\#iTs0'Rp(ȕ׉Ґ<6+Yrht"Qmy;ֳ'DaMC h蠻e+M5CxOU} bv?܆_q~ukone-JZdYl Ÿ5CA&ǟyl۔"/y\VUܢCh7\9ڰp#$3`Uw*\Rz焰RbEr?oV|cMŏ]T$ _VxtFٹ>p$"~Ƽա6jEE 뒴MZ"rfVД(m ,|QlV3Z\pV' kI;c"bS"G 1/o==xvMX҆M JwG[}=>J$'v:5v (h(u<Ġ]f+XR҈p9"m45!ܗ{KˤÍ}؉7L},kj@Ul(''/9JTU8l;4?,WaD{֦맢uHî; tV7 CO9.3Gu n ,} l8q3;tID&ׅ2O=+u=a fRl-*C=qm1jt@in-@Umu WTOI% δCvZ>PT ROLMJ ԇ |F,|o,p^њYXʺ.DD}Yhtus1ۏ;1+%XٺB ]~}չ (]rqva)bw0qMbjoh+":f,<aʅhua[1#l?Q]`JDH+j;TO?LgMRz{1).z8$儜1 =Nxq~đ$(=iXc{a.t5_X>}"[]qN(ͮͅ}8OK2E~75BX? {Ie`G1b, :"%=D +K:0߼[ "ZwqȮM&e7]mD෸rqjQጂ蘵6+ =7罊g˥^ϼyf/x`r,zC"Ξ#T_I76llBi31Ѿj]!zgmʪ;)y\1wdt60/q\bا9qUQL"G%4y*nr)s [U$Fst$h]F5Fhfh;AۨkDT78ڒ`Yi*v@&6w^J --F N*9:_ffsJdӉ)YB6HL3Stw!e_;l?E;MF2Wu-K+ Iܟm 0iְӯV[ bX[1C9}ipZRن;bMnxbzˀ. B5iWkW @Xȅ‡pDA7/u Sۛ^>R++ŏJeˁKvzr"${r /ΒUшeYЃ!C|u wju6 TH3m$.وĖTi~L YP 莚q_ 諓yAe<1Vy>:#>L7ӍѰ #epnRgA[p*am9_LYx 2+f{YX РITXVęax-)c&{%f?uclQAdt?p?-ҧ0ErwyD4Rؿ$khSiwhތ˅DbcŸÛ`}!=WA1rġk&=.Bk J{kIՉ81WYCHT jwAzZuZ7;bMvM@Dk|hMZF'd/?t(!3:\$Av=2u P &ܹ[9B WT}Gnp.~}sZN*)!DBeK2/\+GZ^XQljb2\> TCJWGjBҼ8$VbAuk,'$ILqn`ދB=XO29L5v :'1r w JX^xC&[Q4xUmZG=]>ømۺFޭ,gK) iH1j%w~7]|7sn6=:(noM]fXb^! +tW@O&i, #T[!vnXHB+BL6zVseP5)|ĖIjlr$0L"fD[!Qtp>ɚ!8.&[)-aaX*D@2lz"Xk\fIvMJ%z`F[MMo'ќg=(q'iFK1]xseHú S92H}|4P̒p4R}JT57$2Dso5{7a-HUa&Kշ(?lHhB5jЏVgAbLo9}[Y߫pgҡhd;AB+I=S#(>r.sSd_i^0D[jJ+Uʁ,HmoVIȕM$OX#EfhM~*;ũ5ot,j$U獲I w'rV0 )59wIx1 *I7ȧc$oNs%o >=ڥ"?2okj!H#7@C (U%1""pBWăy3 X<|5݊r=6{(qI3bc>d ]39l ӱ28EjEB'jUTX=ÒlDMHҢ`m(r`UV²HRF[=W E7e^2Q<3 P \__aJ"ky-$ʹB^}ZCEU I"{J~FB=^/Bσ/C, K:{lUE_덙Q V g %M=r5kS[v*]S{oBX7C 56_l%6W$j[1a*Pɽ&Xȁܦ ?N6NVu)B8Rkr9|;v)$e*=sTm{/їr@ 0ac9o I1t3y ̵#ɰN@{Kv=$^T^ڕϽ^ UVJfz׏(-Uc涌a5e$?u]f o)vDG6{LҘw|Qv1*SL Cj{x7Oɺ{Uc9#f ,ӤQW=5ex6 lݕc ˬi<ʶ1&Z jYYC+82,ҹ<ߥLםeǺ%tkw5m{$L" 4j_т<ǭUU氟"7}ft\@@Jܑo|HC Fw-QWv ?DA[ sc&Y =Bs ݈1;?T+lyYj>yuS /q v|ǽ1Oi7b eb$2t(ܔHBAJ. $<( ټwSR"[Nċv/7n$jwL̓{G<;M(G5qw43τ:N3hB;/XasxA/vZ*tRP g-ho[7b \If_zVc44V&񡐯J&jΘ$CXàBU,` 'y`%R_R^pϮ>~99'ߩ6k;s+ N1v~_TmAwߒ)]xP[>~®zY iw~&~ "a S>_``qbYlGco"+~ ǖ}fxE-*Wy1k*hH( :VD J.wyW>"/sÇE飜ڐ r!7t=Z&M-^AN#s;yrHΓ rgjGS?}3{08ɽ+UBՍF0 O99M Ayf]H$mxߋ3k*_Z tK`=y"rTWəQmp㻜Ɛq쎃:'xIhx$#_. |V\7ϗb]שn,E胥Zߛst*F,K<@k٠WkOxB(2(Ǐ^p@ &'\hYbNb5]` _ݻIB| N(Y"c /g3%_ Cu m>B&]L%߾ zGҬbA +kނ' Vo/mH ~ȗVѻP9 ]ݩRDvS ,BLLqڕcV$ŸFLjxxOYPzLH]ysEWqUfD$ B:L 1( SlJ7DPn0M,'^0// M%m"F"/0yŮE/U>1K b $>5^|3̕(/|P^ ) 0 .XV V̓B;>7>" ڣ,"htż` ]+} eDRNQ6#h ME/1=%x!s0]_3m:F[x1T;Y1̫?mʶdsfF}aJJhɥشg ˁFmlc:\6 caDD""Yk"s~XT  8|#Dl:/1͈C%ڪdHe{ռ㮈$[شdFl]d7܍/-fĮ~M 7kG5е!"+CyLwW!-ӷ].`fY;R}J6ynhEP"{CbDV68 lڄ]H2$* @*% Ndu1cMBv@7KTĆu|(( zkն&F5uBƛ~ܽvQ|ĐOK_8R؃ʻV14Knnsd=6l!,DR'P{#BcJYxq #D_ qb#ZV+ڛ)K0hT0QVrNј 7;PrmLINª]9/ P-igǶf(a5ƻ!qQ a+ް { B9@`O X;K} .v\P[8fy(!ʢR,;sk'Y '՜}O{ y\'WlФc!o^F@(ooR̶Kv+)"aŐY9 97(*G;[:˷,&$u?y,bjpYx })Ǿl)n 쾰q?:ܹڣ٫rJE6۲(9P9Ef* PC7E(]x;ظE PF -g[ 3/Jt`Y7О];2sW^|.K~,i !Ba@Fڥr4PTԃk"k*9a鴡}&0 WR"^ۆZ2PԢf+m9 ˛%Z{u(2:i 2W EJtCiC;L42w:ipiT^f5b"߅ػnB6Whiur|Dڵ4g=J-qs*aW#1ˆ[ޙ0ّY&w+)g"3,]Pb遡R5 }5 Î25?c`#4/q&.١90NQo:#a[N|"&m]GF/+̢DCr 04.K`j-u?v5L.Z'YnǸtB.O$ɷwW1eJ;VoPXϜAlWM n*]S0O.|V. -˺̸&&%:#3g2ƙhhQz{#%T֌gFA9ynÃcB49ŴS;$]`_2S{Ċȏ7Z"bPiĘB#ԥ X](d R6zǺMKeHm;jRK-gA>JGƏ_ ^fؙI;?)\6MÏDZ[}iaiKq*G05KZ V 71͉Zxoz|NR _HJ.xQK;W7eO#='_CTZ{#Wv,qG1:VN>33Q/ߥ!/5 ٍkz?PŁy@ty0wL Άry8P ]ve^W NwFY*s{-iqV3}IgYA? zjg )13U[gRS|+'q]lEP,!UBo}~[u+$nlɌC<99et +U|vyRD5(gIx4 \Qn҄{ 2\81SKƢ{S%d$s81D#SDOt3†T*-0N"ײ&2*pݛc2[雾QكxBl| 8X=qr/=t. r.t2`-*V; ]I/:x q0RlsBLJFث%GJ0VM{tkc[eo>yԌ=ս\ŵlwsړe )f+Ȉ%9JN劵yTx\ă"U?2@b0]`\g}njB`l pvux=ɲOb1kէzL x*[ ^2w.:_ghG-HWb1:vjsYn<Ə=\?oTj<}nXkD&G8^J!6: dʁkg] czu=YSph)oͮRyB0 \9f`Gěxlt!Mݼ&9Jm)Sj-K'ɑm[%Ϧ_(Ib()_ra EjҏRopjբC[復tPOP4-Wl79#plWE%dq*W-Tc@1f6>3PCc D*/T44vux&徜v V@\Bq/Rkb9 mψҨtocjtXR, ?I % Y?#x_$O*yP2{etc"uga!ţJ1 s7@(`{ribֻ hQ۾DCW_3C#%';(h#j2?韷, nE |A4٠2i=2 N~?H}4jxajQu`M_ ?ɉ=+&â#(V ""pЙj&P:U@]-kqvTx`7;3{3i['Ѯ67F=T45f0I PlZE3 0xt&4] N$$y+wKS'3ol3) $YW[@p]}4ӄ["'uNE;O6mcހ5_JpNAöYZJ+1|!(#Q\FY!{I~נ2(u9mp[ q|J/n_?ҥ Oԯe3$&<^7r3+:loT|Wiy'1"‹@ 1bcNq|LXH dW-ÇPݽ}~J`<?q|J:_MsF-S:PHG;/^X9ey̽by$]+H?A+ҷPSUG&<`&]AӘgxuE ޖ<(/>)|'Qeͭg!6,dwbtSDc +nL{]?o&5ralyr/` pt! 9ٿcun`$PĦ|KJL[ioG?:?/ez>*s2yk}Ee9z (A`Y}Fl?N,x0s8E(7^E򍽬hzP<0D46DqYaL ?d/';r'~u\ `0vlJHEeGlV A)8L$`m6h VJ!NK@KOw ևcH1l$5xVI#YSK=E,WYxV|7%(0lOyniS0ߺZ#UnbOnG?~)GoN:4wL,<9#GL2V=2:'Xί?4PvV FTz-اͪ7N(:qIr/HX0șN}G~~_$Ȳ+hp&(CnR-wtRe nY B܄8?26}d5X ͅȆå⤥.:/2cu >].`ˮ0~_ Gl+{2~lEu'M >큿G:| PIll.vԇs]ƱYT&尕bnI+|[Ȕ}2".-d}*sFsm$fCo4 Qz<܁ b(.7 Ї@  u'_/\ ZܪHFΘJ63P^Kf -^^g78Ϋ-83p6ԁn+p-Rӷ8*Kr#]7 aAoZPN!B>_ɉje!{ypbOU(%UMm@$-|QXmzV$TqI!dF-=HÅ Jo"(GrX:,?@CϽA\rbV۵->!rE?FVU#(Nrʮk51leШWAg:U57a*@ [L?oxagD/Jb,H쳌his|fJ| iܠoI*^`%S0g,6S+X#4o !!AWUSh3W_}LM_,5ѳ>sp`CO?ƥ$]}RO/d[*z3;B,zr_&!+ CO|`Iq,t_3 %`0؇]IÆRf;?3_0Ϭ,-C.:s9>9r]}x5hv^Y6އ4 צ2a[rL_K ~ {lGX6fd{Xn=+B:Oj{vv PCMTnj;9[Az]r',G-LQ *MܑрƷʪZ֮ ώmX%Ά?"؄Gˋ^2 (LZy\`HikKww ?׎筁8aDUXK{ܲ}{*,ϱO30_wTs.9a&_/?6It3lO b祫\V_ Ɉ:$vc~N0c:j׾!N\Cuj[p4G8Y~57a.z;Ñ>Kjep>&^/8-5ܢ;mr%fJ ݠn?Ȓ{[WrОا]X0*7x Ol(,($Lrqq;0TTܔ7ac]̕sR|=,z_lǔ;6~jd{UT0RY ^3sxZ|~Յ#\yEV#|n%41Wмl>3eں20H`Od`$]bB1[-oq$iڣVLG#]qKL@ Z@ {lF~Qc-l]ɡNUߺN4.d5Gx mvIi{ILsExt=[3SVW,opgoT9\ʄ044.G6$J%Go~ NV}Ϡ/J$<; +?2F=X!8na*T2rl5b O Cvpм|BfYth+wamN`HD~l7 F@4g4o¸[ĹE- X4O!H{TNK qa"9Volf!Tvޘ.E=l>]D Zx<1a+8e@3 [liiZ+:_PɄh[ΓSEhH[I;jX  xQ\7bHHLgE=֣}AidѡONji#g}y-= k&[KuGYh's~\>7b 5oE\h5ov3JkXV2XR0 U<LAX?\/9fq<կ^(--dSU59g- /i횆'-7x;(yڱ:m8zD;*ڕ~5U?פIzMP\+։mADž_ B2(vg n\qRsW`JN)*PPP#U4eu?]'b1-3KG'c j2|a\x:r, Z9mb3FOUNNGKsRo٥f1}lҟ?A$D(SP'Sܵ^AwqDY@W s3y'qydĺm6x8'uckΤcS וT$re_7 zf1: ^'(s\ᝑ|`Ev8Za-(}!l+@#qfBv70Ϻ>+=*G̬ʓf | G*5ɱ۬6w(a=]#=BZ>P+*3 (*,Ӄb|%6q"{l,VvB2DazGɮ FM_UNgLA:!.(>q0F`9{TyF < 4*ޡZˑ˩^)lZ=}oLeK5"@ua`vϘ+/+z[dg=+V>2?<ܓ W/nyew}9 PԐ!{mu]~ͷMEk[9~V-,5(LjrSWa1ST;8U &gYub, ߊ {͊ú:cư!>nS\v[~zHg9L :$g^cSg€zi5ndk19 [_k?8>ZtZF4:Dpao);u+*Q)-^L'*k9M8S]r۬0#SB_='~_J&^.uI0WĶ%Ck(6)m?=zSh1mހz6e )-K"=$1PW7jk\,M}ڊOzC螧kW H'1[d0QWG}r}ׂ"uvzDRvogFRfU+0N*`0bem VZO,Eª&m)ͲƸƽG=tfYDo9Ɩ2#u:b_YYˬJꃰHT 'N$ї{ueU~F;?E9µ}70=,*jF ,7UMUv;nbGQJ]lӰTU굦O;~D{&-wXiY{a0\$B_pDUPU~>쾛kCq+k ww*Gx&*fy1I4 FvDŰ6 Z1\rZALus_8x(yZr~J3I&8g0t@Fe}l.QۍRi'221T]औ֦ͯ7RΜh9. 1Ԓs XEhkXCWٞ߁:yObJ vSs JPZ'h6ҏb$fQBWEB޵=2Cvnzsaa/#p~7'$@9S4~I$iT`(.OaX6P59]".%9ؒڳ\ԭo>bg75ĤBKߙzWb3Zbk,ױڜ^BA_ͼ,PW(th%la4[,1a/=)Ŭy } w5y6xx(Y|&G}Za]/],mͱzrӿρ'`{(N+";H\GVG Rד~}?ͺMx)4g ] Vk{<..^ O*oH9-ZTjjdC]uQQXr;Ga3-cx{ H#I9Dcޚ/7 ; );.m!EHJ&AaA[mzfIa ԅta0LU?P.9EsߗM:޳Ow@E: Ưc/_likaYd1g$ k WbJNMm;1YY4`_M)gϩ"RDe&90oeSCD'> Iǧh?# T{%'v&&E%k([ gO1:K-uWO{ٍ53>whINyp2f'l1FÞ1{e*rpOtAcE@&wu۵z4qAu޵Ԧ~|(w| :y+6 LRƩ JlKg#kagR}J֕;y@ y)ՌoN!PRڴkUu_l6jƗe.5܆xT@|̾ 0JP 7Q[ ve.iB?Ҿe,0;G͊f2 %Ƶ:ϧO if!+A:TTl!|4|g j[xl,.9v~d4|<1@K7Gvg %Cxf *f)]d)gj.|GsQ3ڌ~6=eB(x΅첣2Q+vKM?8?ns]yy0M☸th{qV@}nKzҡIhe=X.Vb 9̯ףX=Cn+U9v8050{h7fZB[k۬T\/uRUMgh3úۯ,_@>cOe-;UOpmx3'!3E9%(L%!q3+0ɹRMS1%]BGުoq } n 6uS[l+6]6F$uB"_I}\ 3jV.as,]]T *wv *N20Z Kਲ#@ .zeT() (p |Mw7,ѡԞprL۶&lbCer  r].h//[hed+ }3͉/s'5"G!wt@`}6S=)*ȱfӴN1OVD1pR8V $I|5,4C:`']1UϾ<8/T{,rvڢGZq( -sW0@@LXv'90E6@٠\(R1A`ۿ !irdͯ0ceIéR|:;Lߐ;!fvS1V/|Nݒ\+6FvLt+YoPhȵ|7~͐Qu{ *}[&I~Q<䘻|J`<3J|:PMWdۋ* 96wAVb+QbSMFŜD:\Ms]DP-P'e L3Pa; 'L ]XCZk#@`3ߎ3 4;V "K5n)*@m*O,9 Z^D#f +4fS^9Ii>?BIZҡ(^Ek[9IR&:QѼ,/khUަl ȧ)$TbPĐf-^lY 7mJ K\i/tx-ŰZ6~C4po}ge4-y -/sG*ths',#y?@q{ vV_@ΠW`9yC'1vnЃRL5V,%0'qՀ5ǿp+cwCnn6KS+ظs&$Vu.]'iPRltτ}Dío' }S CR&(.7u7*jWTYb jT#vC4bj州*ijOVXmKu`v|H_ 39 Mc HSWT+>L&cC7[ݟـecMj \ics}'(bcT. 6[Paa:e%au`dC꺕9H,4* ejEv ӯ\6twš\6 ^`[pKQ1L[ցK9;뀨QŌ/awaD'q:V'M'fL\x)NK_/zIw1blqΠHhemG+6]ew`)e2DZ>Ex R&dѝdu Ph_'$ɝ΄r1![@,Puzymե߹wK/d$glez0^O HvԢaő"ֲ)~2> R^1RE% tNV63ee: fBYfG5pN,d qg80[ԂceUXFt&qX` Bךwv1lJ~0*u $/lZW$3ʫ%M;.6yԈOX-K(+U26)B7:^P`t)B02܃glY(^6Rqu`wi JnH/ JnՋP|] ̠p7R}ш)VpIr ;䩘y4GfWLiC[Fi!pcWpј&zi*t nR C p M:]vЭjM>R^?bd/Fvk#>kky&xىL#D?qF9,.(Ph|dwG>rhvԄK+i:JE,/$<wJ0 JEl&@ۏӰu D-q]* uGGLVhѝwo3 zE3V$"V@^?7h1Ŏ_q9Z+ [8}WR{X%m v<UR[Ӌ.ޥԱ7a!xtKZhgb"lP4Dzҗ[kg/+C`e`#?ϥZ彚2 Z 5Q4'>8sxb0@G+?vs|w--&xxk7?SĺGo6 loCbja &B϶Z~hrRxHEV:|:7~ܐ&ڦ ΅vJ#Ѐ4/D7@@$<~NgK*c i2{lꌤItfM2:OZ{$bQJ5#^9ee cM.L}* AEc?GaߜrE\HpR $PD7 {.p裇SF[߳ٓԋ^Zt;VcΪ"ݷ‘PkVK> kKb?V5ab(4E #P2:9;vpa&Jb3X^RmQlMF#=QS5z*|!#xliSǢ2wަ0+:x)TUv4bM3π7F#Mc%SB]ƙ+|dhkʎcMsң!Jy).{t7"cEOCKpf/]?)h.f޷Uٰ>l1'BRuNBNn2rU-:P:- hۼ+K#ۀK:9el~ iN݂~8ey."]^<:ytqTk bF'ys/# !pN},P 1/m =X(ladDuw/*O  ї%yuf3IHA`֯`G"4i::Қ(|XK@X>[EXiO1'/]#[?p.LRI79yG yJW]u>OޤgkȘiCHTbnV< c< B19>?,bŐW$? j~)=7A"ǔ<c?m)&g2 !|Kä<֡P@R{>Vv&19' s/>?}XvIeèhmO_17-0K ĕoDg0K++s]l|KB8 ;BS4e-B́,X}쿧/C6&꾒#$ZWwXAWp+ &NćZh$%s +(uEG;Ђjؒ^b.qK}fySG0e =pKb&S!78|,m;6!X f˖E$+b&dˮ8lG HE^zcJ9U"i))b: mDrb0<^LK-Md׾LzB_Hɀ#Fw Ƭۻ)V{}7Y .9A-!,t˕H^Tum+PI;w 5(s}I$F1|]oU9] Dbb/ʍҀ w-\c8f?Ǟm"= ap6JsOuG|K0taW-1EL/] ZҮxi.\;88x*ոi6і૪goTC:nJI~3XN;1)hyuC}x9kChI/AbÓ^[3H ho$uQ,mGJ~BLTZ60}Db?3J=ëT;Y?oY^~NwzIh(*n݇^8c Hnzoл"d$UynFA C!mfOV2$a\Gr.VbǾ *Czrl@*H#r%#v _VO⬮bU֡ t $z٧ncT{&Q"ur˨~J q Ǿ 'lyɄW 1n<XZܜ}UQbЈYDD7] V7vӬ /ё+e2oj&4]K^QOY+h Kc2ƞv4L Aϵ:vN0푱$pɺ bal}%OjM.3rJNQ(׼ythBbxh(ǩX#W1F3͑pS]/SN~`J:V_/a^Ak~0eeXqHɚI[COVhhN{kS*WͽI *AIN/΋#p Yc# o<5Y&Rc7ɟJE1+)Lv[iڑ"1')$Bep|~sAѬ/ fɛG|4RQ3fD5>;LhE@g[ĝE}w b8S~8Ds6x%O1C+P8]FwW lnti 3&f KTi =tOe#O ` x:iqͱ4YI]?Cw:-t &~hK!&#S8XiztM(T[w۟0{dFPd؃ztFmp7EyХxv0s#378=1? NJH?]}(k]|-L㻏WSTdaDS4׀#CwYi "̋D(n;\3 6:V['^.1sv,~H?좢 EWCL2>J!91'-&4Br)˵ӭ~EY'4C?#F&XR6b3j%Ng$% CVvt 8.C)%y }GYΛ9l}acOڧKrr?/6;ٛyaB(=3N<%xbƷG6L[Xp_|f~4x +Py%VOI  ۈ&d.UzKLN*Tl3Xƍ7>A>#ic|nw~p3vmk#, αM~XN(PLR ~&:7H`u ѹcoQаjw…ǚ-[uuh B;{nש)ڲ=cgk#_eWU? G9wsSk#\JUTq R[W mZe[o`˘IØ~vLm 4}X@nWn I (٪I-r!7vLyMm\nf9w-'O?]]O)-MavDZ|MbFź9Gux]BCs"c.g-c%S6|2>blv!pUihL }~D\~Ds)tx6w߫N @tLȗI\ŻYj9ss!t{`v:EA+4mA[…Hab J`{YG5wT 0ՠ yNX@˺I*M';6wZivLtgmbO%7.=XC]qqb`eH#7:֠ /Aڂ{4oxNp+;5ʺSLU%X';;8T]-t&40s+U)6=O}H%咵=+-fHߏ\ 5P}~ܗ[}Bhcͷb-pJ{^Qأ3>[([J4g-né8OfCwގ)g@"gU'**>s*qNU=N;i=ޘċcn'l !"BWO9Q S0 QlT}(Ji"Jr;'/bv\u  .yca*jIH7hd" ϷSK7{AlbS@3-aO:hzLqywG`ArͶۀlps'g1dC8^d8Ji ]'1fm`0*C7XM0FAL]<&Y&tX 'YD5 1˴\ qP@Dm|QX`h ' 's` р{uv8!9ʎoO`9F_ #sЋ)KwV@rT,̫5궘QƷ{1*Oiv0lcϿk!Gg>J!Y'b:}LhyHrY5 <䠯!4F$#dqU_ wHDI8u`s-DL&9W0qQNEyf[%>W'(ղ;!UatM2N|)rg.%02v$6#VdG jKEnT}J2)v /$x)@VzB¦Jgnoh/m5mw9glr?(_dͬ齰Lw RAJpr%,w3Ld3Dr\/vfAaم\V(==".wɎPBpI).s~%1)™a1;%: ;}rSKkasLQE2=D?DfVbrt_Cv|UI!cdD ;/9ϖ|{_kWRWrEb6*"<\=ΜޥV4`=_hrwJL+ݧS: =M@Yo2lKrˡlG+bs(L VNdPktT(JUc bΰY$WpwI.ؾFY ۀN eOĆi&6y K&dd0 9&ʆ~hy.z1}$AKjVxDH=9 \yT1'/R؂Ybta;!ͣ1bKLԴ{TJrRQo*NG =<{mAђn ՟d6?dS-D!Q/p9<ZӼRɂkݭS8t zqxN Wi4O1v@V@꼳?&qNslJYs9IeM1ғLP#ס"B{T1XsXxKldEbi~IH&ɇ{)^^g&EyޱH)ZRppk ҠFz0A4Y=6!_N Řޕ5 kdK@ #Y^7NyW `uè#ZBQIvWVS4Hc55lLJb(wjE ߧ=%F0{ m >*rW;ŪI -tv>XOLZ{|* eg5'y(Fvl %RPxVDo^r!C'-m/xLC:؁C>o&K Ql3[ u{.<xpV D&z- UHqNcӷ 9pN[`||1>Eo$U9`O'e7uy$,Ѩ|3xS)Q"oLvhl}?w#9eTS+_J4Hj|~kl¯skH3&A9 jyJ3Y܋oꗟ< dss%Ǫ^fn;iLv=pĶ\hJqJMo3W"gwnav#Zť)ϩ[6H#i߳"k[c&[¹ E1E[wܳɵ'g᷾ A>Ь˳Y@r۾-ǜ`eۗrs=t_hTJ1Fkou@*Mv)Ya(苈mg"B/#p'&,gP\Re}ȷ7JXĿׂ" ^VhXdo7p%H:(]h1qp̂ct 4ۭ'\J`SʚA[bK栁>FðHYG% /HlWnh !TJEVs9#e^%Ep.ʷXAqċ ]%wHVVaD ,fG=Es>2t^0 :9]N/ur>ј]d^b4Ÿ@8 $dC,mLkBN:╥/mC y"Uv "Ose @&Ӏݬ"m )8ޛUpw=d)i@X~\ª9gn!_ŭ< ے RvxEWӝ:FD4-ykf2Q-z&)? *ߣOJRْK BOh5mQRu|WSeWDfV*" þ+ey;rX?I"C8:BŧtPz.\&FؤߟIO(dSlbhz;c܋O0+4p9H'葹}R&b( xzGBC3sfBMn yHPCE0L%N'(h!EȘ_xT"@5qhN pɎ4O&^.IX=D/SEaf0U# '4kZMlB۴I45LZ`,la6I9 a4x')BR6H*^7g&bҭW;M̉lko ՟mIK8L"-CoĨzq K>󅀶AZƞqa[5$h|{rNމIK?'L=/A#>"CK[_eRkV(XRSC-(K*GOP< „ C>{pߒdtCD][*rݾ p|/ۙyKoh:"Oi:&H3jiĶeˀl|=Av mcΞ B5x`O7pc {|n[2W[BĮδc  JhG»ljtT6?k_pvÜ Ĭ&ϰp_9M3/j)@1x?%j& e6W~TD5͕>;=CbljwK랂_]iCLnoK]tȅ649&iAE6k㢻> LW c+2N? |u5SX$ќK6s= $]k=nCFleDLӤ63O 9scʞJEkvd69!# x.eu/Kf~<W:Zae]fr|/4&SPބ(Emf~*_WofrzM;ȎNfqgu]gz(}2M\Nfc_'}:`{~udVJ wA|wU'%V~]v' E oZIJnݹU&nZX?XĥkvQ tQ~k9%{\XWSA+9N*: ix( U@ &A2 CRmز K(\ hdrwr !Mކ~( ]0l~huhD?~*edeG02Ft림{y ZvqjFG"V'QhyA= C'gDh 8 v҂Ԋչwz@x'zlhЕ]WN,4Dzy`6"?І0IT3 j/oFO1NdמO zg7dӢg)b>pT?90}O57E?[pm "|icI#h֛2oW?J& 0RobTǔN)I|EK; a\&{i"km`1FLԛ\F+:U4axţe{ 6N% UPF꾰$ X+dbOrEfj`?V{¯"aLkzkrPjMGGhCg)lhU=پeOʏiiZM+v:@ lFʍՌ\ul*5%7Q D7F &ąS5Qlp8r<qeMF-ܮmkݍۮzE}QXםJpH@}hwhڍ- gqtBLsϻE/vse*%;@[TO3>HR{OzU]+\Pi=>S|W-g*QgYt {-r4ٳ 8 F?vNimGxt[>OnXQo@xB9OOhiML dHq'kM&t˙/alm+x`e=p$ K eH64Y愂>Ek:%/qT5 $|.#W=k8C ]͖"KP%5LO}=iWl&;`VqK𯑽\YTY;`Lb|Y0w暤2N@b*)覙%]Vg bn3'ᇋZW!lzIy-A+o2`qIn]6 j̓SMAjUE^L)a]ߙ`y>;hţOtu`07sh' k^iIӍ4.cO]N{:AlB[8[SeZEzjh՜d5.X)=Z]&5"JѬLΎ@ 3 |C.SbcL Nҝx=*SHV WҰd7F.at!(1U;}~e9En:cO< M\2| \>2(Y`z!C섪NV i)8 apBԗ{qּ05ʎr6csp&MrsБ))&$2NuʆcsH[>W`[8+OF̤ 0+g.;q 蹁ۃ ~0k\9B_+j IsPU?C~⏊܆9|>NqjqgQWV*:A$q0jQ0x?qE|T|4dal?F5!뉘~ t((!7ӑĄK_?~ c)O/#=klF(rE0F"c}ર(?,M2jl{[QC7FUY#2 " ]O.U͝F<1\xw7e/;){WfUYJt-f;2[)ѯ~rC G5&sD/5< `p /e>?־y^:f(Ѡ{/cڈWw(a;.!|[QJ:15AQo<۸aDV.JM Ҭ:ؕee =`J'1!~uы!\u)fDXs-6Z Bп HbE5$Mਲ35 J՘*AU8;:} JlZ~;Q2E8cDqLkiTcW\dYFv"x"fݙN9bsT^>Dݤ*F=Q>|$Jk~1`RZSY(\bŘ~}낏{TĩhnJ1^v\t9[RK7U4TWfx"YN li|҂5Kl{__j&6CRS#:MyuQÌ_5vE*+an_O<ˡKPIG&u˫(/0^=^\N)Тă~82*т@SB-lT!l7Mi#Fp_vj˨,mqNSQF _K~-+MFl_mbOgN*o'Ln"-Hp.EUc5Kh-6C?PF`Jf~źtճ ~-{($6%F0ɸ?+c ogsg[@HpUտ)/#);20.uzN>ĔG]ZEi0YTxwՁVNu}ujf8#akk;-rh484Šh7kch(׈, v;'ٛewL`hH)x31hԋzApy E<~!s32/_ԃ?Ow xSs;8?F3E@9BMb:&|%4OMV'Fhhm(oP#BS IZ/ʞtiu\W @r詻:-ayr(2sy7@Jt_y!G꓍>nh3|/٨b0L( IjzM<m씩sJ@o9n|H5Y-;2HL/!igO`duҟ|pgL??JEZv&Gŏ-[e;E#N<=a?I6V rYWE7]ʼn1&د)j5V4]jAz@0|W͹)G߾=m?P&m;l5{ÊQok(R7E ȓ R(Qg*' Ohng"SL.|UA{Ѹ4Hq~,ݫ)vMA).g C՗p2=6VVmЬp690 %װ@:< /D%@uKK ieQm쵱:%U(@|(1SkZDrޫxjH P;$ T G|3Z=zh/O!B~KOoi}irSO ɷV W^5O##+9X 8[ xúWnd5 *.^Odu?2f_J!=,bF9cLx&evPw}dx&6x`7#Ny`ZMum5w@[1&⮒(&f8EQv%[bgyX)I_q>:vNxҨ^_,ڒ45/=fWF.%qsA˥Q a% ;.?+.]i.ʳq۠!"6lMa\9*ܶQBIv<"U25V /)'g  LDdy4J2%fmdEM ~ zOxaT:RL OM?"YvYRqŅNkÑGZ PF(n#6.?臟+̝ [ʲT%TעD mII.03@ݤRƓ Y$;)=}~ "Z-̍~", dN܉8܄|[,Ĭ n4FX%0k] 댚w*'˿o,c^<5pp]:[D^32T=Ю{ĠtYИGC>GtppY/ c$%]Am YڋblQ+pgF٫o6vҥ*,O/KT/mJ*Μ>Rْ8[پ9!mh.p]n܎,|o'8Hx<<PoN)]Ab 0`ׯНC5&NTSd(Sq9;57wAs! +,:} Ñ)9H/!R);3pC-<:T,0K6Щ8]8:gK<ƬUi~{4iܢ2YWZ׮\Vӑh6P veK^ȷcN:ӧ W *bE O;bnFw6MWȧRv$b1=7[`9dj:6F_:6ш3٭^)߽ғb)"1|jEK7.WMPތhi8 =o[ mc~wy͡A"Ay3"Y3fFT e=j785ظUq'ӲQAXkO 2ހĨϭxmk܏ /EWBt/5D-sFb-v1%_@pϞmO^arI@!B+e!ktYa".e] E*{>$+rKbjtwgS:y-lu5.Bѿ "%+.nb@*YM;(pw,XW {=OZsƗr~T (K 6=+,z(6p A:pIݸY9_D`n9vR` u^]ŌԘ[6{ATWd|*AA~m4'C*Mq"<4d $Ѐϵd+9x`4FcI\+$ nq:jX]>=o_E*Q-Y)| vDRk<¦;fkȱlFg8`a@mYt9S_r-#*Ny~dS5io6bSYPRvɓ}chصH pF;u%~z.oc;OiP&fFN.oWB%C1m(Eebޕ"K$:P.alSr20z{w[ܣ'C)d+Z̹b7aՏ =^3Y1re:.{>cEY2,mj8 O2#Ҷ嵦xq,*lsX]$8[&.[Mw e4BՅ~/ܓS1J"=YҖQ]?.6ZΚEH][fA5T5tez>wHuU 9s7E̢%/Ib=4|GRM VRQ9ZI&#1[JCFkr}NX_GyBumy|Ѻ5D՚Jzo9%ۯ|v1+$r\7r%X G cەXqрʳ`9AxQEJ i ;[=υS?7,aM0v5JODxYEq\oUD4l1@ }M1uOAl4v#IS*XADzzV> L{zg–kv?mľNLFX@y&Wtԕ"q)Ze0|(!)\$KS_J 濮Gm̍|J9;q>)&16c%U)=lsqf=5Pd.͌{8Nݵٕ2AbKk3& WZosܤ}$U7NGW?>6+ Df5ެ+eÜiնe)۷bB1]f^杫dWAʉ* n KJݕx5`A6pS)cqytS7NƑBwm3_T'*=oQ2T\7 €8>>@{ѡQiҙ dpqVp}yr!{(&2y?jo T_Xֆ{yx տщUIPɃDQ'@ .gtoU Aއ%~>)+\'zh,IlhV>~Q8;f^;ۉ7&WZ۳7DuW>{CG9Qnߤ F2|zm6Po,T3?pv$!R$f[7Ҡ\ahXP+迍,*B}ǺF{wտ۪#KnL"+Y@^f/MT,[C{pXY:r_xn(K[( \rzI?^O,ھx-R)XM>{~T2Lσ]D;˜kGe]uA@;̖x^ AZP1gѬݏx}?&ĵRB|,q3ThĄ& E~. } 5aQ50 _+>iZTM]lu)n,<.ςDD= ϋ8FEcAm0:ucBニ"(6)W 5ٍp S2bġčͮ`P8hںʖ9Z(mZWͪUE|ƕQE9s%XzJ8UO}՝WfqE5u~0 PKeE6Tj/\N9 79+$n8 *V`AhjW>m֎s5֨.FCq4)W,5k?+l cZ3ccʹzyؑfPZA~G\mQVWaNpkD+4 n͊PR b>t~Q8Og)h $5q 2GRg='Nї^k}\QnK7Pϵ7 wK(E )EqJ^:ƺPPa\[wV kpIt:AN r#7bBz8DWmVlը>"j5* Hi^ښڟȮ[ Ioj0! bp-8Q3s/fٹtMk1(=6:&73|USmwbI}OAqfPtutgvY$Y~Er )*0`.JgEc _TyluEo=|Y;UhڠMJ;2K{⤲r}>q`U7"{{t.~^#H "_7PM,iY…(+,z[yk.B&:;'Mf5O=^nkz/r^aaC{&Ŧ^0>F< PCie)ܖ}qRyhf). }׿HW<ovz@1Ҩ M3|@[Ne,}ƕNkv\UR(ߦ]UGa+:Kf j^nت0uu#!'1M޹IcvN$4݁8K_ɗ ˖9 b!D41 M-_], +wbf -!(F^&Yht\Iy,AVg!|ǖh7ۺMhYv>E$ە807LBהvTijza|A40NUsTL: \՜@ Lxx,!"_|m-s ky6z*QudlV΁D_yJ?gϊ0GYH^\_qul*>0~؋dw{hi!Cf1GD;+̩ؖ.+E$2PE m8DjUdSM]UB>PUP^A2PMžN'y71 4=xcP)Je"O/BBM:vÒ M͛UCq@jl'R`<n9G7ҵȮG eU&~ 7ߓB1.|׸b|2IBBŜvE xPw23e;c7ҝ㹅×oXVY]CSH*dDC(\pK 15T]`iLM Ɋ]ۤ Շd$:g0Qpxic~gG {,{bY}$;jJ  LT[U–l]`QXJIE; k!ά^6<"i.LА\PƵ*lˏ_$ Q52ok2<6oO 09ҹ0C5qBPVE0dn-<1a?2uSDzdқ%6vL S`4a&jTߍ'K+!bP?10S0 _0VBu^&Pq\[#{fҁH | :)^ϥ%`Jj7d۳J2i$GS(X4~"c^~̓ĞHٷd{8je_1]{h~_'ps#">vCW@'nf(r5DwMא'NriĖL abjH)3-OW&N 4(?XAќJR(TEKݲyMN\.z#y\0Iȱձ{)9*NrP@N S9P␜ȦQL>h39@(N s]JpUe/:"'JBRJ8'-SLFrxÌ";NY{HhP##MG|k1a!H &Qp>۵7VVb #"Ш85NrpS,RTҴOFTCafP._RmW+Vw9M}JA1=wuizl|{YYc+L Rȟ1RV֯y;W_FyS qZܤM!M _&fK* `W\-kݣm5hR,<͓%jBO4VYR7*C2xTE &GGycvZu5sxa{4c~{DJkL4\I i)Yͳ0G b+~ J ]QvZ~gP,$Ы@mB@ok0ڞ&H2vjBT'Xj[P+L]L߸"H]Fѐ;ܒOO`јI 'd?K*SM uC-%4 Б-TGudF`4!oC<3X4H\j1oGuop;CcҵVl [lJ$̀*'f^w&|,mu ujz# V jgd{oCrT!Ԭ4/çZP(ܐ jΣ2j(lk$[ja_vi~ ]ؿ_oc)QUnQ3iUG8%1ēnRfkOwexn9tx:eRӦ=BfvmjJLdt un4 03NbԺNzܦCۉnl:64YFi|VP+M@0:67;Pỿ)=jl4e5+e*q d2a;VO4b.Fg(t 3t=, *a&,ȔI?)2–T89/(:} w )# Ryʚ[xrJEBY22 |gy|P* iA(l~AQ6~.ZWZ_i,&{<n//K}DR)0S ~؆U~xrt4ݓF*4ݸ"RRۼeҶF {$9O&&6mU÷捤=zB05MP.vb&qģMӰ8eڦx:EPyva2(TTEItx NOA[UO4ǣ.r'򨐃6.$ :im3t'DVVi1TufzS9fpСqƮ!>L]&:%;:sK3g@+cOZ|X˿Mhm0ˤmSc8RG?Rr|ߢ7U2$I|oU9nHaⲁ r&[yߌʊx !a7gk5Ybk'^#E*S Ģz4ZϹ: p4RyRd^bŝX=DGy>#&ƒP hzu ;eZ!qx<;W2=="KJf~&ƺH1V̨{]=dމƴwe+>8W`x@QQˈWxE KеޠbwŠHr|_(a2|,v'6q8f 9K%\ݪ8:lsE * `2x,be`J9mvF2Em۠\=N,.e*Ilɸ :jW#HnQ=зY f} on=u3Ǘ쳉d(~^ΏtL;f̳OCGBڦ`k2lӠc%B'Gyv/mvb/1.sjH|CT\!9Fvwi߄UQr!IWOǘ̠(^r8*e ~Mfʲc4 }V8 i8Ye c\VjHo4,  VJ`}ZLAaX< @k&mHF7C6.gB&2o{rӧ?ȹ0tUfnM+5uAEŻ mڮNa^)[:%O/ aMl'nҠ{`/=]Fd)C82n[O4/Ŷ O6墘H; ('gB­ZD1Iqo.Xc#ڌ|%{&]a F1ZK#iv#nnMd~"?wHp[oҳ݋ܠ̜LS7iPRawOYƵQ b̔+w˥iDDSM? 50o|M߈a+ߓ /KD&chXHX*mЧA7l6 dZKJe8Yʳ̺m<6{-`SYT+Ex 9D t|snq㫮;lu*M8%=hJԧȄ2*z(I^>) sdhOc1Gu'j|RoQTgnApC^EWp!D zتz/Yq_56dՍγ06s.FKU}H:P0[U>6U3}q:#]5ga%(v }JtQAg781Rr`\W*5]#*,Rq$P~?o_:7mMRh7~װ7h0rp%jJ?|3s>=,T&j1z&b&ڥsb} z@أ*M5ş"D&ګ 5 ^3\fVXQ }FA&b.qu+3O.7iziby}%emA oZXaJo9Gl;91#AF_oyg]Ytfo4n6t`t 2 ³o Lj5Ob+u?L>`bF>w6|_QCU~ z7Mp_]>!ŀalWq(fMMhrz]@~Qd7jJpvy1߉Uf\ v@]d4fC[ ]nܤ\f*j/x/C4Q8ЭZ䃌K경5o H;.3%6emĬ݋kcv[j)]=Ni`e,Y`x`'f($.[א}̿fc#Y{/2r!#S[kź AфU3Kj%-J)3zlWL 5kV}&n+A`e¨ i ZDb3Tc=l?SA+9(G!\?UP: v w?g#7>fIh.C bƖ^3b}^XA_ wV+XFq&z:aR`X?+c>ZЏ+_ث ,GT} (P5$cdr2R{KB%+yWɸ3oiEŹҟq;LH8H&D` XAbF5OʴsY|KGZm @1>va>h[Usy?Da4)dYPWIvsueoBe]!`lWQ'wa?ҝӈHB<9oPZLk~{y}PC6QvίϸdOx] '\SZL2N.0?C]MުA*ɓz:Kqk 19Wp07sWv9"1 R}.]9g8D<]qVj79B`(hT wM!= 0 {E)aGHNعX26.#$9E|+YgHpы@:7אbU(%'jmpF9w:n\Q*TsY@Aa[K7]Osx'|nS1xp{-=laM%/KPV/fY{_S\ϝWrX||HNr Qtg!qJeӃ8`*udd۰rŃBzb i.O@+Ê=JTRB[ӽRxgaDvgf[vƾq%g.s`94vm5PuRĆs,g{{}-lAv@P,m#ݵBS!L:{sЀDPoA8Z3-}|Mq ?(Ԝ䁅J+m%P[qYbZψaqF3q#Z{" O[fxx-Dy"}|=NKGǍ%8"S& rqL>]#zT #iY_H ,B*+c x>8!wM-RwS,=LfU|H^ ylRL !%g %=s>iIG9%tJib*ubwka%eBڽpc~!֑9Lmtguj sN;̄I mسyX;H ~ +sll'(ɁjmC;/BMC_K!\<܄63;m~Qq)V5 碰\~h;/b"q)QH[]ozq >T2{NH?.-45_+Gi&$yFoJ0][\3觗 cR[ﳹ+?@Ea  |pN+h`e-?}(cSd۸5]hxئ.1Sf>] FT?r8crH{fLIT֟@Ng+ 0Bl`hyNt> ?ފR+sk|ѻ69 :Aq;I4#ꅓT0-Oga-fbRQL:Ql](@.5rJݮ*b-w pf}MB47%җh"HJj'[m>,xaC7P7~437i]/ DOB_ſIzvS.C>h;U{9kTTxob32u b/ j5zc݅:5Ng>'p5*p^ zWR2x_*\1"tm;x_ yKGOO4f1`,VPG-b0``BrYѽ g| ˑQ6^k? j(7Aޕْ@0/v. ¶kF#dbQ~0 8Zst*UK8f EHn$l0o өDKV_>v넙9#/_sܷ80)Nj2O;sBSiXAx)Jm7Eh˧yj\$g =z!Z\vs˦ʵH#`ckHk+Zq4BAQƩp*SvH8WZz4FPz0|Y~*(s }|",s$7F-9ܾ0 SiJ*5vEn@Ĝ{*- -IKb!弰\;\Q>c_F.U#LZQCCߞz,Z+u[mLǃs{>? Tjbڀ{l2!= ]L6Zy =8萷} qF|{>vJ-|2_:FV {r/#hM^?8]kИ@KmFXDt 5.3@t?e<$B;㿠lOsuK$.iW=UHb0wO/nW)|VJi,޷҈RaE!aRK4 t?~7`h9TۆT` ;h%qbAUF3n{WGM6XN1גxת$uŠ'_b5]\$mBJ8 hs݌S &dE(UZ:JI-.M AX9d8;3G&؅9U \[*-G}({\/ܮS=NKd`7j)ȉ~ q >'WgYo,5L?Qlx#ln{$PwdJajG/@_9|: M, U V"q1pJ\\H>$C}ٞWp,r'hDW"^P_0[ SLV[c޾(? mOc2#A0L|*\582oLRN b`z nbQaxr&(P\1KV˴ wEOFy-X'O^$* *rkڬWdb wSs+Kp@IOynA3P`$.&Scq[r1j2u'JwmXn3j$dR8PTg+L:0wyjio+nmUca/uQoI-lJpw!*e{p~>X^x]fƎGr~(8kGJe&o(3Ur,ZaW-.%{-ȳ=(!{qs~IoIWo$v|j:Dw:{neAJQ$lA?ʽ?Bv"a}i #j(t) 5 \`uՋ8.g%|c^"WSx䤕q}Po$$,:@>$QU3g톐t/z{U^#N1-BoVN1 {+y- }p9~%0;/ʖ#7bJP}FzC/{봜lq=Aʁ端SN-wVoϾyJ0Tɉ8sk⽼-DHΦo=]dG1JF3H̘Nk%ducLWDCGeցO Fz=Q'!:Wt]'r9[987!1Do7=:0 >S4LoLC))\QORnk`j&qKPs)]uAH  UIZ'kVm.&}TtADM|>}M:Pֹ3!6 >GnjΘU<4BͥF ֫|$omOUtm~4Tل9)`8;d Xpa:x 0ybmLB@P[1>ި|{VJwWm:W@Lh;h3C_|x7!1=r/bqy!ϽXu5)-Ԭ O>gcmua3yV @WaP/A تVD[ 5(mf_ު}l$a淕Bt "gݤ6YJ.Ryc/WOD^~2&Őe|4X&Y[j.&ix_/3If$,=FH\0k $̘<:V mP4,ŗ4O?j̫ p/s8"{x$:ő1yC7B[NZ?Obw(}Yz9s,@F׭0^'r5B;M̧hpV\X!MXep,kVrtHS;PBB^M FN{3>@4W;u Έ)Z#A녊]PjuI:7xDGWt:w2 ӾhIkȨ|{}ڀ+cel=}^10qsռi#? E=fIOɮb#2h7-{J4#j;(U,%]jwAj|~IoU%[RQۃy0}+Q&qlO#S q)5W4L ՘P5x9eF6=zYro峷”^;uRiZcJmІ;G&S1&u"᳴/W&A`FZm7Sd}[PGOi,)Zi?j (Áu+)zꁨ*gR!qs'DtWxqn\ 6m,R鷐7?B91}4H&1fDgTՙwr_77 d/\A<Ƹ5, {njXa+MhqU԰Ҷ2G G2ex륨ڴ'eEoFq8I{|wlYy)Z6K:oSӡ1LKHCi!@"㮵0 rRІB1,|(ؼCitEW9`@{ݥ-8cB2eIypY].%uLFqʌĄ6+ҥ)Im29+k"hPiVYI[k=xÐN2?20RjT7*\VvνXPJK6#\O*qieK_~Lel#GCn>@VQόۤ A^p;9J`ZqM<:c, E6;Ώ==QV%KFi˞{R*c' Ls 6_HBqpB-rX~ԩ@n)űR%kN J٪ CAm2I)Wmϑ_O H #j2Tf/aS/Sw5'/6샮HLD(Tk6d@x { }g?m6!t_W nxƿ@lQ.1ϱ(8d*{"f96:g+'$vաPϗn(fRiŨ<ʡ$_aW9zƂ~raR0=d#*R a8撮;ɀo* V#pA2swo~䈿0k) "Fǎof[\o&a _ӂefϘlE6'7[c%7?юY0!<Hrh*F{<괌gC2k80LRr)dX0(4@Kjw˒TX<Xrl$P5ŗϡy`QG3J^Lh??|zK"z\ LzTu+;uj8L <3H^o?\ǟb`ghH_y60R#ZE]T0DDw}YC' ٩9 HzUXf6BU;}؅|_KMSkĭ_jSigޘFBf<*j_!3VgCA\Px~(uFxje ~($ 銖:|<$֞{0o?H?ZeA$mFBwd`[I. {%=ű'[ؕ:qp00?p_$ డ®T 0Sj=g9TXfg[IG~gI07蠺R!ʖ Qؕꀳ's, ;v zՃ[$H.Ki&4U^^u\yB&NnXBdI)' sYo~{B %O/C ;V(F 5z6(Ŕ?7RfA4|ԆPz?XW;R A ~NdC(物$Y[%ךVxYבP;:UfF~ar 5'l 8cJ]us"9"20q/~0! Ω݌aI_kc~t\nFTa3NRfsT w:}fc$qYH0@E*x%|H-`yEg;#0;[g_V G(bY"X&)y/VIH=|HLw8gg(E #8!P3h6@khqHG[517PXAss=ś^>v!,tWPlQȔ8Z{7HrІ[|Xw79%eҙeWk|q<cyϸIYuB\BRW9f+0&=u|2ba4GrKeuhA?ñ<ŵf~ )$]qajmk[o@Ka1ʡG|Xl7j&7fĹV%_| 0tF#xp`,GY9$ӂ F3Zѵ9t7  Нi'<0e"<@gqU/Ct0k|~5i틛ûm';6כlyU9:x%vQh6 =!TTd ҝGYoQW_lJ ,6e5#vS`h^`. ]JE}u1*owc ț!ddG~ N#̇FhvdA8-njU@ ,<~;1yx)/epޗq;ȑXrP 0 i~ںj%jپ1*--hyلW2s0 't'3 /VʬbVm>^ʉx29ٔ`AÉu4Z; <ڬv]}`uMɕٯ:@j( | \9R6A$0PN{ҚN۔- ĥb5B~S+;iYeTawGPr91s-I(m w_Mi_usf\3>Ůb;kKNm9@m2Ԣ<%Ohhpu7zN2kJR'h諠Z|QﰁbBl@Y}EdZu&d@>((0dSz `FMm'P#,F>LOΊ9jE>`j :0"tN9VKP&EJd^Cb/ Y9ZO_ =#l`nCe.3<1ogCb]ʑθm>=UHjs:u v`c-|{`C,톝FL ];C974mC|ZY_=q/N@Kdj!sT1Z/?1s:m QPe#-e EY:*"v`fHǰw@WB R11_ŝaU:6]@p4T)F5p31XKZ;hYQ~  HW߀}QP#Nc**V0 YY9T>ZXRFlFhr ?ܲ{4ͅX g=}>DX )(~-]xC OG_iljPĂ iUZLv?\"S/qOYe KM85F\QPalz4qLE3R=4=jgǬ)܊i 7W]>HQ^5$|w͂jQĝFBG 7OZ]u7X_ ZO̻,,DqfStA Zn0Ml"ȓ_Eb㱹gQt]nkxa[!C? ˹4O +iÔLiVj-*,+!{"gyCb0̞.iXi-[ DžkI:>93|3.}$xE̘%^?6a%3Fbv^Jo}HFoaI/G@W8]{_@_궨H$KO>jmOT}vGD9MReyeė3ԜQ/+$ͻ=[].B3^3N~eeG}3bQ0W$GCG+RC]%l;'ٗF-_>Bbh l t]As~AqVB߀ܣL+Kd>l;Q(|E-e.džj-~/}o4,ʈ&DևXWPc ̖Ay!0)X`gãφ$m[3%p-:>H 0TD +̬>'Gޛ#AlMi |:E1%GRpnẺgtB]r> ]Y:LƯԐr 'D!)Śb7Fڮ8$(gYM4$>LY^ ĥ'p%D1S 춖sTޱ;4ӻQ%W=IxkwI][VR'4?J_"WUأ!_5 )[ M.aѨ~n y:)vY>Lye;wl&+ {+4;@ 3T9"RNrI6c|r`‹R|O~҉_-63{UU$2c*G`AQ1RLMk\#oz] 0P5f< SC3!q)M0S@lUߥca`#PԒ3oH_< 0X~@ՎMbVc͵ YP//S=O$TՙI(#Si@DwUcu:6+lt/lr~^+/cJ&,I_yF>H4 ` .''tDLF>pTAχĝ_UҤfdqM3пb=ÇYlaLvWS%@yHٌAq,uw -qN$ ͸C‼ŧ NdR5g ȿR#fLDJF̠́U@ٞp+ޑMTO( zLE^]QE`ŗef9?jIwl,$#GX{!N'R4hi8:y2c [+2-y_rI?%<Zg"ІNWp09BEQΥ0*4B1y\1a-C (b4!=Th.D,]}C`|z䶳 1gK۳Ou}'6[rrxm{As%ipA@&ջ[ح0'+:Or30}9朣xI3=׊rQ7C꾳eQBF]z=&9-g}GbƘbaMsR_&v엥3m%EBw@!EfveAkED"B \QB`Rq5:EVG[~"bN=RQjDveG'txX}Of3턃鳀cqmOY4E*MeHcv:N8Q^a|#Ɯ054.r3{ yJhȥ-8|-H<=DxCa9yARo[&u ‡?JWivK=~Ux)P:il$<* !UCyu.N`* -$<6کj8.ާd2(# +f-NqJ>U"S1QOY| nܾۦĔbE!PsC2ldb7TxLm(z=h!OtFVr Ri}ᣫ;Af5Y[uxqn0LEô5.?O̢59J?Y?{I}ӗ+π$*FMGLb9n 7w;]cUIGuKL"2ɽDzv]O 4,@h:asjפxNfҵP_֣NUFCZ:r֤<<:ܫ@BduӋYFsl5~rr^`xv.$4O." I sx_`nC%. e fNRh=~ \2e"h@.KU yp6xLx !T59|B8}ٽidrΐ w0Sf"eÎ4(a$0дĿuTXz}9Ϡs0컩3$]׵=zylBY6LYvzi%Dh/[uGTz[Jl#z~5Xz!h Ks`G2sjf.=a"zI#;֜8ct\ "=zP{Q\_}N\GTNfC=p]ЩQZpzgBD.r Ô0X,crVJ Š[̺\O*wy䴡5x}cb'4o\a'Ɋ/"s]6 ﴞ&8P1Бfj:<ǶP=2 KbJ8L`E~l|00L$(}79vh=?h$Uiv\3Dҍ1`RoP]OF[%?ZYRo,w*٣vtu(4A'վ!šV(;8jyGxIsi1:-.CIXY{N*m*GsH-= ԥcW~uLQERYZ/'^0C- }) ?^mVnpO˟)x WK󓍆M\#k(KFyC=24dcJԃYT:$sNAk/&{nW[dK9zl^tDZ.1Z6&s$yj@*D'J4Hk^Ev%mXo$n,SXs'@Y(Vq0vmIZ=) ?sxCbZK}rhHH8FАk 7T|fhډq4}?{S&@8ʊXOͨ¸ izFfr؀)CՊ>cxp`Kj{1fBL4tӲ 6uǡs9Mh`3{t.4t}C/TEBm\Ǭgan~H)òPՃaŲ$S rlbXZ:Ƚw'%ʖ .!:jR~~$%pQ𴾢F ]3Oau0c:6ļ[4 O!YRmliU 4ʰr)7]>wWQsH_c['Юw>{ WLRX常P)r5(rDk35JA Z}?G4&S\WZitļ]m52X ,9t7]?6mBnUa\wQ6:s{ҥY4LQF% v180s5zت @ #scF!*9 Kaz7j\8 &hj> f;#igD=IuL6Mi B LA]Ĉe䆖-Y}LD "d{ӐIj*_MƲŵoK\F()hm揹%\Cal0vfsS{lʓyDe-ޖ&,MR:c.=xmJ 1zB 1~H~,CH{{K\("[LE^uԩ~/N_t!=,:-lO" 0,&ȐRQ 4T)2tE\K`uJM&P՚ksja9@'F9`,yP&a%`wN%lFr S)>t9E080ݿ{]b~XD๫߽ojoڦVZT7,h]"b#`XDZFWA?}"=Br+}BGBf3Bi%wx&Z).xjOHuݺrMX_hhrŌ:~d&aCtdR;Ϛn1E*bH]N;!6?;iLhvov/ug,TQ#"ΟnE6Tuz y:]*t{[sŒ+gޔ{vɟ]ǩ#nÑN >o<3C^yUI/L_6U?rE`\u X}V-i6暑O4ED>b\s})UAOkå 90ׁiuZ2xQ!8FTyrX-͊@y%2oh=3wWJ\]= öF9ɒxǵr]B]r,LV3WCN(1ifb=h5?/[9Wi@OpDu-˲4MMYMxinjOD Yd'WZPC0OsфED?KLkܳa|%w1"hGypLV>4H?l,{%)$uÑxV?FZ]@pѫ } ,o&GkfjFo&v@s*`~H >l!H@~+IǠ?QS2k!{KQcjxpȬQWltg%'gL.vD0cqdLd#dæMΏ7[ j3NCQƋ)\cVAP^m&+ݲɜOo,.ͪ.q; Z0LDjdSo'-O&n%h ەOTk!-gڢPw\W:ZX rԧ`$005rjip( +42 go{\ RT T^X3FΞ>1m3!߉]d[WRԊWl{{h>u&Vt]d'oom_buWs)]4f0;):<~unq nS3P$rù 9< N $G.KH^Qz@ה%Ž7m70KEb5j,qlbt>+'IWOVp}VΨ t/σf;me{w?hZQӖ vzڢSn!܄6/(~)via A/! ڻJp}p)mFڐYToHX~#W<*>Ps`zc'ѱipbc+](ٸ:8"z^7 x_V<-!TS.|-))N6VΤdvSq-hzB$*p3:DDlI3%֓Ɛc"#S@ ~cں=\0^-Jq[!"q[/z2?龉HH_q4]9o]8i@Bw+&܆nc/5#yYt›3' |VzH}c/-$u4isC!3F8'D+:דV;V,ix\A4pLkfXuعo "vTZcqYWZ۩%x{dIG~Rsv߷Dw˻>)@כ$&*۝C2~I3zƧpWck$Dz @%弗nIJlB)^ {QZ ?y+\s_9N?]6͡gTs\KeE( joT?ɇ4d߷0UоN){ZUi[TbDo 'R@J< =ŕmb!,lj,sAfpTRgZ *g Cbm MBX)E*~#Kh!߳b(sذf$qk*z~ɑg|8 ܴ L /q@X5/tU ju,vy- نe}zԤc,nWJb[&bl.nߠ+MK0kDj[n?~ve4BD5?}+Z}r)<vYh g.Txs)w>{֕rۺƃOGŢHف:E:ڗZÁG*Sa9g=uXV/2 [塔ԅa(fR'c4iȟqЩpW1JW_usU 0ٰ+۸{ٴN%,λd7*\ =s<*ʎACZ4o`rwP,$Oؕ~dIely[O2|aء|Q'"_k& BewɗծiXf_psUQIxK_h/Be1V-g>Q;vK\KZtW^ `)xd=ϗ@P74Loɡ~U_ٕ0biЌvmɩǩH:ݶ5ieXCTJ&67C.n=gf̟}tW!ᢴT(({-mΥD8sN8,! W^F/ѹG6I?`ۨæGU3-u?8 3z*6s(ǧ!+n6pJKGO_T %yTޏ!Uu+1jLqvA7LM?f5kzYY;79k=8VTamCt~2G턁Ylۈ|waE bz:Gj(%F[ $x= ڢGj=;pM׻/ΰ ,% ~[Ow mP qIV_7Q.$VTVe[iY)P8{ݷu(7Q*SIy1 zќ [S&g. SQYq*fIsm A?Ap+5`#o流i,cR1qܔ)eB- e_vQ&g/IMi 1kfJ;񠣏=;)}-Y{̝ ,߭r)(FRٔ& hjD)U Oyn-?翆^ \aθB , %`T*BPpIg;rZӌ1v/zm$4W{jW=P$ӺC"{$M:cRGێd;z7043R@ZVQlwFUhAI)5W0V!紕pv Na 15/1% Jb[{m5O~jK֥#[ VmdƬL,t=:f);JN# )L5 H>vl2Щ%;N;O묷0r2 lau^b9R@j^/DLf |  x{rGAo厪? 36PK6~.-F | @fn ބ3O=؄Q`X$9i-ڦ-4œ&ю%'r'T}o0I(K)9ImR;/#'"m$ ]nhca@ Ƙ>!¸@(FEbN>:tgS(<.d9B[757RK].k f%m`-ڞHMl5= 8]죗̵A:\vw}3(xw$sm 2rf |{@z%3Zԡ?ˮhwX,H|[u7K+q#I CV )"hE]W_nwh[H` D8b9K W)MU<Ԗ!E/8_S~}m@'/.fy?ˌGG37fy2dܴPQ26ii h$/ s>A"%t=ޞ# {\u٠Cr~*tnҼ# @6/OӶV~"Af`/l:mhX6uXZC☸j <9 IFS/l)U^l_-6d3]o?O--CeQy.-T=lX1MrrH݀8`*ָY2YJHHR(ecQau N\۔-UHu÷ h۩S\]k~J9ܞJà4vqP;E&.Qˁ,MEFQc~- YBX[B-A*w坽2ɨ^i (CD[jS2ZinY%?5\KރC7XwQ9 \*K_^ *2eDneC?cJ+0M,bKK.}C7q%E }Do8M%_{o.U杦*GۑKyJ ɚ }>oA0==|c-w"CRnJjt>ϝFq?u/v4`ȗ IJay62~GF†M~jO!2rϿmn"1C:ƀNJ%5nFbѕ!=}LڑڕL/EN cdfEۜza՞y%,.ִO; +\V)_m$v 4u ٩a‪ܬs= wNN?,7aE&Hv&*ݨğXɺ 2_ u`eLo!j2ֽp5 'pޱ}\q3<_q~ͼ@άJ|1_Ap}eѾCS6 GЕԣQõ>Q էLqBS6l.oWJϛI3<ؖt^6j $[VtFR@h **ˌnљ/]_*q@O<yIG+LAAjG;fh$cmSOtT+ "z¡͑6H!9V:op~0~ DVmf坓X&Цϐ/%:Ig6g^sjEeaNÛc~s!,69xU iUa¸,'9tЮ۫v1_^ҫg1o@O|:'< jI: o!LPm b/wXeKEֹ +Ġ}=I.'apJUf &"qQp)[ĝ ڌ-/Ĉ2-4ڌrI͕H"{!|r{Wο8򪤫{,c ͘h.6"mR8- ?l-l2j`Iz:u΍5*2,r8!odکDXbpXc5ή\K%VI.Ve bv 6*e%ݰRn m&qM ׵ 㔩]Ev5tOPhڌ6tLtu]BZɾNL:$rVlj1jh@Xe k\n䗄|_)%ME'ғӊo'^u%x,|to_m5:@d i{q֞ UWd'͑w߮cӶՇGxE=V`hU12#KWS4B7`SrH vajhfO+68b o>cum'H@,^)0PYُ;a@FBplVSE9 4D\HVft"IAA-|ʝKuh:FULLKaɤx4w){DaXB&;+7ʳe_n fUz0`f/)WK.מANXSWL?$S.N7ݳhTܱ{>7;9MwmO+B@4*?qܝ = ;7F̸3Q!nG*Si3<zޅ>(ޖ }K@SR?*Iڱ=w[ņ;_B_WZF'UA)^K9|px]ww#'?nWٔ:j6 ܨtjm6mRe[T3tBS;\BtHmqxQ:/XSu;"czΛ4Ā Pcwe9~yJ0 V pN/xI4S2BD*ھdzgUQTkS1%93feBt'6ЬrahP/!iO [):SqʂBzHdw,g|Pֺ3x lo\.μă(?dWwzSn](jdP@;SiQ>i,vpK-BSϷϜukx~Fd^{c5eS||7#jӘaSdW}ދkքStuE089O B HbGo׷ۉuu2T#kӮƮp\W6q("ja 4PD2>xNZFo6|W饚(?,ߢo*-Fk2Mj zR/m( uB"`|#E #& %#q]K9D[@un8 p.B%/}Wg4A=-Ղ8LU{ݓ* HVtx_#:)&=<X~ko($#*@?=/b~&z ~gu f.:&OHެT ~ROQ>2NKzF3j$!< /B%Mv.qM22'1[Wț(v7@8^Xjj[ܔ`B p899~$S>zm1)`0ӺmSqvb}Ǜd+̟c P99{P]IrQ;i2gyŻ1' 4aM1'DѐV}kt""# N!ZXk:~={ V(%VGԵfi>)Y~jb y.y ncؑ=*g $tپi3s&J&E-6s1T %%uq'Ӹ^ۥA  H2ĶMeథ׃ O YrS%r뀦@DOxUdmmC_d U^&L?pI byK:aor{A6a6C8b:%DX3a$.YQtHmbk͝E|&G-]8sf. xP?A/4nT}a/"H:>dk}/1E0]zmuoꇲq7el)>slsWJɂ+NPzu(P.YӰ%'Փ=5?'j#.ڗҙځkLwOW P 9to!&х‡533hU)Zen}1Cgl+Evm.j2gUP! =n9ZHk oȶNvιnC6)6U>HTd2QO]G EyLP' ?iɞLSiX{5 bġ%jV#GiZJy$Gfkz'Of:b\hGY!f̞4C*<זP8/W2(q {&:%5V`>g?цrd>s렭;"Qv ~aE˔ a?%dP1M@G KmfsBߞi+f28|Jtk a_y]-(j*/cn|.2TU5f G{YX~kLS%EM>@nk&!'c5G"]9Sʚ.>m~E"H4T,awAAq\˹}v H8gÂ\_[L>6L(}OfK ϔ(@V ´ϣ-4(Ep,V&:eL_ =+Lr]%Ú&1,5snJd"NQ -7 9I;zXMa_ {@F;L uFo*D)C[lɅh&1=gs͆ʼ13Ӈ5$T;q׏e6fD+M |B>sq~Nֈ|ݽ >LHl 設5!57)_ӽj0U^$RP̩(@|uW,| DgzP` )1y$`}vASyrbXY ~ q(\vs!fX~[w+[;sLeh#0ː~4dYڻ,xFe, h ;EE"oDˆMJbmeFۉV+*,mGURQ# AP r50Vɱ΍/&isG'.gJê݉%.j2L<.gb U܄RI%"L=jLCy"O޳һ1qT3wP8 i-r LV;<덲,jx&a1?< nH^۔Gۉޑd7foHN"ot~Q!NFp ֵV߭'vdfQ/ٟY1$-NtC'#u s>agzcd3O|i ܠGe*O:NJv_!%}5Ӕ$u[S!sx_:Pꝗ2ta{C\Gʇ6ix sCE^bnWav٣WFi++LY\ShxZD*deTk]#tmonS8"VAPyAupM<9'?3FrNuaV9!z-K6=Zc, #?ۥ\"A-)d8W:@K/l2N::a1 $5TJ(GL12Lf K؎or5v! bԅ~^^ UBf.>DE.VG⹟%nu5 bY|`kvV>L&m -;NZ̀njQ:ҝJƀ Qf"/QJTG;o/ھ hh\X"<j<;l$BpCW9` B|#??j|[Ђ"o(j/ *,*N "pOt,đ bE|Gj *4]eBƶm#\)ẞǻNDFd=;iiaQGNFCyh9޲(Q11qz;s(ɬUL~BsI&IB18XTzĶfdL/ x0i\ޙ,{҈ˆ0|hh%i[[ &tGG+6Xyc} {'n}F9Z.ɓn54ظqhVg/0Гh=-M$,^/qz;+4(=]B:0$O7SRDql}Wx:1tPvx? d33ѹHL@,p8?ѱQ^-5I˧GG+R hIlK@0*R*CeЍtQ_Z~;r^)t#ĸ_;R|"SQtEkQIOvpbfm{7[~QBEq\ aŞz ڛ@fw̘-jnU %_T&Dڢd@dJ+Pf^d0q/}ib>飤H]c |0kcgq4Ku8ͱ #:7]pn.̋9slX2/z\-JWWْ|Ƒ%8Aig1JPspx:}lf#Vsr$+ .ɗf 0V3IFLd3Éuv{8lWFڳFhCX F#6P\pd0I rVЋ"ό 3wh Fm3oM%RyHfK+bFHRog)ͻT>`!7w^=FIա>{@Z_7XͶVej. }y3OivG!1C\b`3P K@'Wݸ%-DPwHdsXb 2t)T|?i,ojRV$wFu.{7կ{|BTY/8];>.4/VZ(?T'1MwB1E&Bz;qyD}<+@EAnv{xLF\[O$zZgkܤ1v0>,qؤCT$+GXbTX~Y5l8Oɭ!d%Xյ8 ,3/9.4dAk@ěbK{ [~7I-ilo6&C}N'%Sl<6Y9é%/`љ0қĘho ,M]3z+P{{N(:@sF)hT쎒޹ce^DjbO-j-EWM{P#'Bѵ۝.]h"MfZQ& y+-;_ rG%WL2@@dmh W T~+ QDD\Ond_D9H\迖9x"S% AyG0Kg5u& Ox5 q,:Ox UseUI[G( h{{PRH̓Sw:G`VcǔDLAUXZ!>H~7<R\@P+@{|`!बB\Ol2I!zʍ&X}f,4?}{iEh?d6E4gb|,c`! A_≠Mݹ!l^>C~1H/E eD:/J93VL^HHT`Nh?.V\-=no#07#* )c.Ý01bvua;\g5h}h -kN2}RjXЍ].8-7ͭhNˏ7#u2A(JҺN/r[Vmwk q:]ZQ=@ex zbHU&_B^NE9Eg].UW26]gn%a~硠X1I~E}CC_Hu^u - ӨXTt! sЇ91# (I]90 Ei1,ǘ͈ NFVF{fgˋxj>qDs' ]nGoZ߬}`o"kbP1Br& +.vdB胁  #՟TCobfp `r tS B91?%G?A14mab/_> e7Osni$RM?="P ?>v|1CH/tv{?cc=7(1e+&*Rf"O|;* &@pӚ>#qjp:|%fL(W͵ =XN?G'ViS|Dijt:DЁY+ o^Q =$8vX'Y:!ۅu='Ϡ >"Ὅr{e®KDH]FIg[\I9"}t<ɷj~`5/(k# 1GwbfaH֔v: ;iߴY΁ĢIXm,4]17L:+zofmRvk7 wde4%ͬSeGB?9%:QU{j{Qe w1cabUZeS@v.UheܟT= İڽ4Ŝ=uB}ͫyiy D+!<VB)ǩ첯1˪fy`4iZoWpMa1\8,SgҶ>$i=f$Wƅhsfq|pcWǩ>ڇ=d5'#e,Tl?,A6b'*#H^^P=ꠎ1!CrgT00!J3Êa1Ŧ\/尰|qP9DC-9v WtOowT]k şVlE@z0vTVր-ٲMAu( jݒtSkc>&A^K >bt3gi 6 DĄ-9`+~8at0KڿavӇ߸ZޏGީr;@՗y;F.Ll]^ jҘPb5bb⏾ᓫ١p_wXF΍'gwN>=˩P,ԙKPswӽR4'#<-໡D/Hm|mt+xK`[@D/LzOeCh^ 'nC[Ïsα3 M=rtNQei os4+[J9N4~&>rhOӫۂAz逊1.&J4ċe.BB];*"ڤRづʵנ'FGtH$0 xfӕ\itǖuAO;xkAiS(Nт Sq"X$Ƿ!9t;\c:;}$bc]'1sr"HK_*m3Y1p;wU'6W:㴊j{ebS&Ռb(hF]#*踥KMΰϸ^[küE*#AHM'Ǜ5810%XIvX ~p\>KMu0Z8O E'FUn2:lCN;a(;iЙ7H)ƄB>80ɖ8}8:BC혱'?u<869i1;qS.rJҔPtXߗ:Cӑvn9q9wI7nId>{daX9=~7l 0$7YК{-Xog'uo7XNIiќZ^.\j{|$DQW_PtmA?"O l0sRsA 9}1x54Y]a|w\T0+DSM߃`+2BCBs_xhN~xS񓩢$}AM\ N#DomohcF/1>#ypt>=tT밪>tc D5X*o{5tA`Y{ΦGnl+?Y xMpΆ[%J0QaC0dsn lg5Y@EDJW%~e1dw`7.5;`듩k{I3֜_ փ#dǝaQ}0uCf2$qfJ{v(;|~5X$(K)ߤ*.u"7Փj. Łf R_pH͸T`#"s뗐DryV/R.Yx(aF[ ؏Y/HxV)C1)$[hb#NwVuE`>Rg.ı, 7: ͔S">ޱ k9w۷MK8"N+;qu|7m:"fS ZJ"䲼ONa\C-mlw\p/7nF)#> ,*\󶲘<*봺L8:e# u,(Tj @ Pn_(O[eyr]r8Dv"\gޏV^|Xuc56V^,; aH6T7ӭ+K >=ʹ/$Sٴ̆4Di?VΦe?G/S:_G<qa3X,\,amP }rwZT"nx 9EAj pT eb GRnV~dbBIv붫.fJ4w@@br kPE*P%,1N+X6X#`@־ߴ\Z'OJޱ;Ry~ #BG~bxyioP5L7"&Wǂ>0>Pi ,.e -NR)oKZ΁q?_;ў\(>PzNtTΘ={ԿHEs|/ߘ &h 9kċW]& nldžb,8*ZxQޟ\T*9Hkz:GOu6U$@6ZƊ}aqlK):y?BU{̄͡]dpW W8 %AHQ(%tEn p]dW|¼-dh'.ިڹeE!xgpxCxmZLtz9Pz?PE,( }n~"IA;ip0XAJU{A#  POhŪn !ƴRzi+ܶ)gmpN+>xuUk6`QK#Ҭ,CХ,,/݇*7>1Pى K \9 {F'L{&N+I.6^(̀f(19[Y Ob&x|V+Ln5FaOMX-S-(Z6m$4fˌ9M(rtL)Kj& bPCD<22뜵g."+Wgq';Cj2i ͵/Ёz >mb&w%1&uV{Yx^=jV`0p|9SBKgz/i`↥6p4zVC

    r2%g6Bf&cZ4/N@~{` /Xlsm|·CLNq])6|^W-敁'Ԋ Wm ) /I0;"7v}SIKDf>&نi֠\BWé=e/HKͽSBBjW-OO%' C4Raw֏x#D&QE3AȚy}&LKMΌbn Ո;.5gH|r}`ĪbR fկ?2ݳR݃R0\qrL"&l12bj=SW,K8pu7ՂDrK<1HX"mO9j_KuՁ J+qGB0y4 M%;Q&>p͜yꪛ,KTٷ8$$:m4 k/&PDk& Da{_m]<^Qje(߂)Hle5xaExý$TV9+őSLKla9*O 0!H@q>)\#C[=mW*]뿠[3^&lT"{0ʛ̂5PQѵ&i!F7,j0ʜxreck ҊhXzhdw +Gɘh 8:'\h“X{9AYv;[͎7 S1Iנz ZΠ cAS8ٟ]0K]H&v:g;" \Y. ?Uf|o+V ťl~'G>YJuB }fl]>-3HRfy)DWys4 zov> *y ʼnEpZ:s6LD^fJBFQ8-TMhۈҘV RлNCiC~G~J+&Z&(\wCB\igeK"ɫ,yp'H<][vsB0YCՌ0t棆M Bf6`61.>l.aĀ Uخ{ '?vm>|P QeG39T%xCSbW(|1L0_+z=|)k0e<>f7;' >szJw@0hAls# Zvv %nmdZY9nxD)e_at4_קn60[=C\xX_h0!)|RkxyOofQ@G *5o1ij; 婶;wtEZ6ЃB7jetQ]0eb/{>ܯua]@plխcv0D)!mѩȲ QbsKF'1o#A^|`ӛOejD0޿F4%Ŧ25 F@,A9,Uw1J!8nkM*ГyHk!X:#οja'BIV_CK4PŮdљh!4 ^c?g<Q~>0Nq@]AQVd'1y[TPv$Sm~kAN+I:`mj0' f^W-kv/z"Lsl⌅a24L0J35}YZpt ?.א-%!@羅1wMdXzN#%%H㵺aqJc;S`P/>@5c܀&jocVQ=ᒶn}mVwQ\ůԗc$I{<*,B gxB ۏgZːY‰~M÷6;Dnn1:y5ha/KS $͆z/IrL/7-SD~ s.bdw @ \R'2|3c{uT^@5\ HD8dhCb#[mZ_;͛f{Wc*c* %lz`'Jl -d8΄V,yMCUD!2Ѓ*cwS-m,jx?SmIn@EM{[X1Rt1G2?D꽈EK DL V1:  TE(c|J?tVEDgt/bteC G9:BhŊ62w@E~Q],/ H;`%(nZhk-ٝ؍]~tùKJ0B!3.Yer-KcgW.p_gt7"8Afڏ-/p󔟶1D$wheaua-ԭRǗHBA0g@2K\IXuq4TQ{uR^`j߮f/ߕvH< siF 2}ђ5naWS7NhuO%".0ErbJQ!٬hx ~8 Jץ2zlŤr EDڂlϧSt&uLmA2(ACv{6KcYV@U,v YQ8Id]ږܦ Pe-68Po7>kïX5%ۤxbxv-%{l8Jz#"Zfl>^ߵ uZ}&)Wئ@$Y$ܒréqT0JDkIBc$DqHZ`wE?.HS=H?{IKp Ft􄁽3睐w>K'H@ZR4$gY1@w=bߢ[ *r+PGv8Ł;]pbQ_*:^#|uX?2G8ld|>f]u_@)A _,^YވBN5cJn^dZ$r/QZ?*N>Z Ψ_SOd:QTR/HH8=[bhq" )?Kg@%YN{ST߯[nB{k5,E6Y_PyU!zzT$4 4)NSTf.<$S!ܫ Kh`CjP2:qSWX}dߔp<=~&:4bJrׯt;{s& WќR )*f+h)Yz9P-}B_w&~@#J4,Og=;iW\#$~A*l8aͩNV90#6%msp)ꫳ}h:4.TN bY%t6FC6^ĥB {rmIɌz1z CگXa?Mr݁ʷ]a d3&^Wm<+TƲUƐ:$o-Y87B̺cbya[O]x\$*FA訷ZzH_?Y&`(Y+`gk&íҊ31R,pf-|Q!r pۘIa.,\c6\M~/vyȝy"m+8r-K5@nb6罰9ߋ;QKp怗<%POc&P_hr%dtRɑʐK6:hD#,J Njn`0#d~N[CHN})oPrUf4 V qWx8ØKwJ 20[M/#.Kfcۣ0A&^Oփ"ewiq_γl!cRoy#0kXނwBίskU~zM X䣾Ћ2 - -`۰'A6#Qnp7!XGgD`JgjR6FpxgJ7³4(p >@%'9W s ׳{C3buxq;Ȭ07 s)'[np_RnU4N!z0!uCpWR|P쑲?ofoQ-OГkb߬ s@aHew`l'}|x?({}4Fߡ:LM Ij(O#o_5o$aMH_*\,7iJBOv qα?A?`O=2( n-X$h^1kc-8Ek͆B,*WeCɖW,)=p 떴%UU%-q[1å4;MۨExT&5juߤkO{9>L0Hz1 4GWQ KU7W+۱3HD؍!TM#oyL;&_&tJV}fQDN^8.抒1`KR_Pk4 _uV,'o}̊BSFBJ2@HUb pjd)W+jɞlWha&"19 eGBʒ-L*Ȃs|qnyET?Fqyo[ j+e/atQWE&~S@W<'A=RCJe̬ۛJu|[49|NI0^xt}7Q_R;-Rej^IyhW㌨\¿C/5DIm7`X?e}(nK72VlsIlb toN*J,>&;rfEb㩤rp{_ XƢUuk֠⟫MsR7tiDخI!92wv.Gd^1j(8EיʓZcHEv (ݧL|l,5Mɪ\YA1s$](`6k) ͮϰ~Oܛ[;WQEbNG˟i~ ž/0 ! 7heGKs&*y@nBV^[ӻ]@OfJF>ik2mAC(;nN4Yץ\B@x$-qo*[cyO|HYD N kawkt< gz pucE8]N Lz{D}WJJŀ BetYua[qdVjT1:R) fHӾ57GlyQ O-B ОQb^g]f $SXxtr@GxԘERn RxCPCUk>2x 8OX?%1!k[Jڭ"{ĝNJڛ Nm@r!Imި ] 15%#-C UIt,9' rmw` |$c3s9DKxD"rzhmC;E`L妀ɾ;-6n~ĺTe`cʶ>9E ܕ8MX)[C? c,?3fzwf3ÙLnFxfLB*S(:'Hͽ9J18Ozy+x@ Urm^3SXj7Vn׬(L s3Z?}J8Y{omB׶He׫rNrY!*!D}Uq W.Vcm:DЮ">BĠz@bt1w !o뗇YsjN>48RfC `3R'7GmNUZN[L0契&̱Ԥ ͎4t[zج+JR lTc;C,M%ٻ1#n=3:, ۻ?N>؅" /lg5p)9MEːL%uE˯ ,M⇮.ˣCHˇ-s9fܥ_=\<-iZ~b)(BA)x=Dz1gU >kƤX޼J#@uiRځ~QPP&. l4~̕w uƞ~l.(#ytIZd}aai)R< 5+!P®=rFB"d?QE9N_&*4EG n9p~J ?>cꌉϨ{||Ӣ lE K4rKw,:j4q4%osK]CբW%GMpql+YF+%&{WR=;b/+fCPE5?5vأV 1] Х5cH#;Bߥ}b [X7Sx$D{J (R#i8I㣹NdA( t6+€@ xUF%t1]ܤ;[G%yރ7ysE '|}=$brDN\F'Qݠk>[k^*42i%`kTKfȃ%MIc#^>h;"g23:,󒢳Ĺ#)MzbtK$trkU|Ll jI2 ~vL-r, *6" MLױ+wm,шKrr]I.*`APG:\56 nksz8*˻rV3䢦I"Qg@62V%̌ _piq49I qxMC[~#WR-se)`Va©u{yĮ9'bi.QȖ`3Ajo^bB0{ctsv *ܨ,@c /e#QMEp77>1+H*&͟sLiphƘ.Ɇ7Ea޾Vu6k#QMgb84cpq}O^k9I{RM?02ǡW2A;4F7ٔ h"2T?Qv%X #;zA!ii4x.ط<)i7T|`Dr{c  3duā̞Ww)ϋYQ||?Q ݲŇ>5-1^ֻB}okτ/Ȝ'n.*7.ҬcPƖRҭj%jAQhva+ Yt^[ m\j~3JBՏ|_&/"4hH[IbT_I{-аjP6ah"!kc֤]F_=w C(hL!Dk7QstmF?u|(Ý[8]Mׁww@d@QYu)4ܒiX.3v(Q*Y R6-?{CKZ<}1!?PL+EB4X HGAڱ[q[;ws0(%;zi;_~ʣ6K rz\bҭ5|Cm\ DIg3mBɐ'`a0E.krq]S6]sY2?W;#Y2Cib926ש}| QJKaAr[[xm =&NA9PG!' IbIǶ!3let% ӵH2 Zt&?pG9u3w1rrшkK•h-Js7dV^Xz.ҹaF) _52vr?RD~ cZfI?.emH :d4($+AȺ-!jI;gO됛R,s)|]c<#\a4鴁Fl?lճWB}gzۧe~%ؗtM8:IJҟ9!0_ #`yh1_}\#=uIh;H8-qFGN98[*QQ$*+KFM r}ێ!wz(O26 ҍ lHRV gkfzl0_%ÊOį4ڟW RGspJO8z0to>5(ʇ4GGy:D4+Yϙ^Pdx34S{]Պjń(RFcy0~4Ĝ({={i <1 '='>Y6<4l)6+N&+7AX%V6S1z*p9i#珊4ZtF PQ*Yi;>k>svH-|8WgD4C͖<0F>zQ( )B'\I%yڜ6o1h.f5Haߌ⍄sJ221%B8<^f˃S|}#<B]Ovޤuj Jन=TXdf+ol WcLMdeW*:>H2pw62V zqctd85Ü⊹nkiU\?)H<,;6SM:P nMMZ0|AAƬf,!Ę;3_o/T; s !y F&D&osBۻK5$c dVcK=8ppB}_m1SuXLw~ EFNxE)5/s/ނ$r1zՈڨG潑bBh(}HT;ȩ~E#U+ڳgn2w{ߺ `x%B^cC0.޹9ظ;,4mfo:x^ß@\>|-;xo X@\+$F^/ 0WU?%uEcL PP3 pr15Xe&ɘ;[V ]"CrNc?/Jzͽ #W ߆&^'f@6Ԧ;a^Ty?PNMjK4D -l+xJCm]U^MP f'04ᒣßkq;wXSVn!=:~SMWۦ:QFaOl^ϸG`˝"-m@@Qbtndy\r2xSKuO#RUKmQ3tmĻ^?ᗱxc,8e$^KYPAB[{_K=nl'P] rH ~l;(.սze1FtF^*-q-kYl~}%e'vQ&ȴ,FyO2mT JEꦆ'dK\J}nǟUvfΥrQ>kk,(}&ZY/f U)f /9 s-##V&ohi7 T(D,wػ8X [T!~bwD`]Qd:K _MDiZ!9㞉V5aMT+⇙|(+%15Z03@`y ViݤsȆZUQ'VpG7/*_[TD>V=֨D w3?B/Յ!gAN' S+>P&g82)@I@<&RD _IO$[-`c+fS><'*Tt4$]@uvpbvC$HL~sJԦBDѧjRptDגLZlyЇ s&$gIts8I2w;B1vU= ~O/qlCH*Ç`HSZ$)IНQϖ$e.}+ ތgy(I<$'ѝ'*={\ K4wsIX3סdm Khzk$sT)\qB ] }>4"X12| +UVck!'f~d; XOO+g$VlZLͬ\6w6"_S$P ̨@6<"aB"({quuw-)Ry^bM< F%pǀYRѿ#&daN}"IT h[,IQ3e!ayH`,$}ka/@'铪/t16j/Ȕ}^3>´*zZI>o \ﳨ(u e\~z#3z]T,$[|rKr`OH9"Z#<&6z ?7rF[o &Z)J#tx!eJNb3Lϳ&`5$hnU~l@=_){GtM+(u*5Mh"7MNfJX@6N1#R ?t+,/4ȁߩAً@l%ZRb3NfheI/df"$.N,]T2mE=DŽ xz+(bP:Dk&1/i`wF66~J[?ԳskBK 1(49C^4P& Lf7Z*rD@bO7movEpOA|1GkUgӛ!DU1~W<(66ɿO\Hl]eND`>ll}FR&Daw?dc|t:өc2  *)aFr*,M(_1-bQj,`c/84jhNnv7x&+]cP0n1Z4&{E6?dmҒ TIWW#EiH?^L~>ڛv #fSjH| 8n 9Iה$@g$bS{@7A)a$i< ! 9ہZ UAH8lsk-g(شZ:4Rxߨs^Ios_`,EUjp_MZ8DfRyL9: h)ر-2h_p!}(eL:06ٜ&\Ä 2ē*Yt-VԜ{ҀI/w^. A 7&b/3d8%~"q|*Qm /,eţ{-ʣZ2kd3uW miPy\X:9*ᆞ+6V~G〗U٥rIׯ60p`ꁗu]'1=80zeؤ0t<ʹ=ݓN[*ϟ152h4PME=tfk&PS p st]]k ga?|"ʀ@KHh0f<`"8?1.)>J|fⴻq7mܧt| cWBXiVt}"Iݾ  M-)L2lw&AL_:vy,yM e S\'"H ɀedNO;'bdFqH%]ܗ:=7 hr$\ix-|~SgR4zOhse&$u-gR; y]L d`-w*-oZ&mPz@~d"Unl_vrl}%49~4xmM4q?Ac-ENc,AOxCNe@lz3!AReZw[iVT*_/JU5a:S!O\Wrs- O":I:+ӊAXܦrmtٽ1e>FnQ3yn+}1ZLxB<ÖA -~j1FW.G#P&JZ,He9)1kd|S%=ߴw$ )lnRtSE T#D!:0aOR3$<4޸e1A/!- _X0vvI= r LfL_Qͪh[ʆyry# PEXoM*uaQUlaNtyW8 x+= Kf8lI}̅ӝ%R2+l6T?kXnum uhN>߉-w9Nq[! &!w/n$~ba?(SxWܲDɖᤝu(V^-!`/Ce5ɬYfwl!m%\8 }1PHGj[AtFsÚcG2p;A%Q,1DȰKk$abmO]QZĀa(UΑh9-Ɗ 32 fi<_ʫsh:1>0ܖݲԌ$cݭ߀0%+LiP cPV22jMκLȰ!IɳzCcA OC<£M Dp힡BV)ehCh Muc+:kũ[^!8#Q?>ط o0奄YWIo6^]JG \\da㹂@ALQk\:!y3cJjٍK$ԗNo Ypxl-⦷"뽴K#dxyKܬ..zgug~㹻QjRh49I00MqcW7^j^O`ځqv)F$iƤ$/)b~:K\q|Нz}'D _0VnѻqE|vֳ\GhJ3M)?ނ353AfZ%ԫU5A46997`op|ɮ9UJ9 6ca:|nItԹ^9#/[IgD' K5!1cL')>{lot||HS$"Yv5jnT'*tK lVͱc\݀ 鼶bw{(P2C MKW-i_ưWhg~'g͖Ls)nFCC\_ܖ/*ptԏR`-#mkGۺvjWr&<|'fִ1&t*b+E$wx]3z{zyRo\ <U^}-9d/rT\ Ѐ;UbQ` ^LRN})7iG{0jnڙ1D `WK \ڬZbwRMBӦA,"(NnJ<04~U=P^iHX 0pޖ%,)T<ŷߨ k4Ӽ]M2#;dO1-]QeЖorqǢ_iX '?=nҴ%;0 Va=2wUnM-NO<Ly !Ґ,NA yq #\O"Lu\(d~ ͍!UDܝ'ARoT94O&SLРvS Θ?xҒz:;C4!b *H2$';/4粢$NFxF4!]}HpO2'3QϏ :(z`R- B1,rba@5vTkk3J3<G!  $]~FNU8]~fX;~2,esgTު{E. g+.dIJY*;n p4> ./6}:X*sd'K@.镻mp:%lQ'/V(&OZ~"y!`abҏ|7ܿzl,]&3CCpǥd8y&:Lо%7rG9#j@hQF1!)_g!WѮU:j'FdIkrl/`AL&9, @0uDCFdzǨ`2{H1UGS*G@qȯNԥ4ΔG4_eZGik$ ԮlٺdNS!Mq̻-F}.e]G@U-& ZxUo*77ى-P[?Q曷0pƠiNTR3ޑ6 :`CJ\yTi ߑ.gu?FBp<^FjG2n8m#Wi%62۰^nv_0޶~dC3ؗ+s6{ug$~@S[q,&`¯\i&W*qI;SƗoY|8+DϦ`ZK!{pyм[eD{;(=v癁@'k&oF/0e\+cڠ1 @i"2617n Hvr)A߻}&*HXQEk(rO@ZIAf"`mF$iev GI/m3jH,S\WNw?]z #m7q}H mf=8f.OÃZ|+_p,z[f8H5F ᆫ}g>?썾:H3ON{ZʪJ=i1?ݜgmW qv ˼FUcVwrPbw5q7TIV[j!/*j.N:~~4fo-2f_^SVd"ɏ7,i ߀#Okک ;Ǻ!7`ftѬa~l<=YUa^IKU.&]l(G3|Ɓ<\1w]F҄ 5;vu*Nonm涬(Vdē%&O<8Tޘˆ[x#%a]][ 289a[  ¸>_BW-_bHY:b܄ō P`?Ycԅm/;3Mj"EYG U!Jj{?+ҧRc\Ɂl 1@phK:՝Jx}#6/٦T QUt|- ~9^ ȿ-Yzn9)cbV:mI1L]0v@'^"m E:zCvˁ 5Gױ2 t$8y֧g[.u͗/Ԑ?qRfS#)5X_7@f0535:ۿZH* )Byq0J$ SݔTw.iEEz6)R P~Gs.RhvҍB9E6=eH\[*E3 )1N}dR8fO.QKQZJ8J+$"EEGirt|d6/„sѳ-&F@٤ukȘ0,g+`A0CBt0&zwI9鉴>BVvq|n @ϡ^keTY>}M m,JJ p?'!@*QbԗI,$iu$=İ9 c- H>ND,8΁L]΅pB'z ' *]5r_2޲0h?1գ=8N5leԔXIfB<[QBR$*Hx_ٽ#]]iԙ)Y%W}ĄA-- ѮMohMƼժ3DjJrAkFweX?o;O&)9ĩ`.2!l[߾FᅭVt6=!sjۤ*IA١r֖<]bLJʼn(ds!8ӵ<] rCB2036w-vc L[J_R&*69~ӟY\\#%t'nmo/'pՈ~Jڰ1z4\ͫ>g_gګDH3lrge/aJǶ0 B1z*P̀gWtp\eWjz%]<}e{G186TN]R Mnqwxi= /l$9l-3z:'% n[jl :{R"Z7!Qz2F\H|75 oVB 9QXG4={sv89eeyeol̙\?e,<{7=x iJFr?Ex'?{Qך/-Xa TiNg9C'H=QdŽ}Fy7s)w@]~\iWZvADߊv-st`a6/jZhg܏H!7+bw:?uV$;K MBf/Ź>* Tp+?v3o |h4; Evc89!0<~i??H )$?e[|FH}+vUNΌNgV Ʊ$cnB_5EdD{HɾWܑKCN O:FX{Z+H.xYK Dd.BiZcL\VYiFutQ3JQByϞ0jb%s2ʈ*` fO?8z@B ub* :i [zޏﺩWSFnTHM - 3ݚ{8璽ü:Lg! *@|=2Uqa›RPLm|bY R5 Qg0+3V2QR7L=OP*\@Cs0 #|+1Y"iћGHpѾvoSaOtx6TЏpj*VM2dHES|[_b*L?ݰ rR5W;Y@*&<3CFf O&ZP2P|tx{V42D GS G?N6 hvvNt*mvf&̓Msj6IH\G?y.gMJ]"KSX*& V _!Sd<":2$t9sRhQI/”V:jAu""-ҴmL}dHЩz_Ykma +/K< uDq,ٸ"tl{i|U1>H]&cnp{(_yDTO%j;_7Nʖ+ĬO:S?c l?\;Y? FKqN7?6+QO["^(NIY}Tҧ·/xw whSA䨨PTuO(n>ԝ|D[l%oc*21"7wl<]߆ǖE9I{ `R O=G/qZxO=`i$iRs* ;rmCPaTZG h/M)(EH ixci)hD$t/15]a*.Qz0٫̲8yt>Ő \dLo;wH#=Mɞ51L ,N+2XC$ZԌ .͹8ghe2О{NBJŌpDr oFgƒZ="9RMmY,+Bǚ`5DR"QDߟA;# FyLX"ֺ`8> 5*&rK H!l<' {oۏ!akź¢iT\؎]=ζCPسsKf6!+˟)xf<>^>L<3I[$!"U|BX:;rT'@ϣTA?~j70@3$P{eM& j# Ni=& %C:ECoY6GatAԕi|<ëQ(,݁toڥ6vf&L $67fjetZ !mPȬ9ݥ3Y9UO _Bиeckim֓ubV4z!(p ے6*91QF=8"9{Z7-&gO =L]_ ͔ca4wd sbA%NT޳v5ՓtcpeQp3Q+UK p#Ux5祹Bg`k⽬丸jTQ$@-"wTbԈ#|nٓp6i30ߊ3Q#~Z=L qj~ OsZCةMiϠs>}{rSuokӮ2uc&\| 3nlcoj]x~3P|C'.<&R#Yd^ƒYb6Ma\YI~w YA=:!˪zlR%cm3{$JqA%H/\l.>V*a@"8|c(ǐA\$$x'cSk:VadV$ \[ xٞ 0Қà$RQ?u16p #6fOǧA{D7sn߿s>C,xzxʔ^)' [i"Hj;8!cPu99ss0Ɗ}[W%/dGtDB R*ªqxW jED S*K{AA9H"=[c_Y }e0fB'Ʃ`pjPG#m8UgA3,ЗupOdǵ0%䟡/@F:S \Yd6M^KJ.=RBD>@"U}#RzZCXjLb!6J3# ik>%Ps}"[/̄ 5cb@&R3~WVK!J<>y攳^iv s2+Wz}5n<~!`C6z;1Kpnb{t Թ䂀k @5Q:q> S/) $PlZ,F,"V<5)ds xZωS[:\qO.m֚E:cLONz7)t:G 17k/aٔ|hv^0ƋӦrvqO7XB8+ 2:at/`fJQ7~;"'4:QGz}loȉV0vuKYg:a˱4R7#> kߑZgt̵?TUb Mf'MŜ[߹Ű`Hl޶ih[;:V Wbz}D'ɵeG!K|'GYoZ-:^E~*R =&BsV3lDK!(Ω ҟus"%da =LHLI;[ׯy1QR\$X~$am;ͻ.!TQ?]Gʌ ԑ/B, &DdCh,ŽKGl]Q c쥒gơ[>jmN}6O@w^S ~Mh$}F!M|6 $":k5M{By;mx%F0ɺ!(^v%2W&QHZ9c]7`.!>d#D+PmקEtt|Sل@ -\6;o Wrɹ򮣙]`ڎH5fq^A5>U`,6HAUwZ$W1Xou ,dRҰp#*]I"93GWϙd(zHv<vұ@~; 漙H]%>йv3.64[/qA54xh.rޛ+`Hv9V0ҫVpuƉyr(7:ff}7%(MOGtLol̀Ndtc}{T)) kRʜDѴ!GnL:+* t&L8^sn2; Z^lϠ^]]p,heߚyvx ]|:d6ׯǒ3jE+c݈Cl@X3dr_Cp a\1 [KnP#= ߄kLD.Y\T03%\^,<яpocc%yI6ޤ(ﰁl{8(ƚUbh?l+&)=̖GO#pèED~Hvhȓ;U3a8nv,H-sEf pT.y.=L%[;)ZaJ=8RVk%%v*>>ƙ.Ű%~P;go -ߋI4tՖDѡ֌QT %RCqFB>$f'+ ;*rꑭ 奞P6ö7@&SL˚O~$FP9H-^u[~qƑS)|"9x_; bImRl+ c^_&(\gaWl yK: nam2pA=oC_$lݙ&BV%#B5v@DfxUcxWi&.)ЄK vkI׻fh;^ ֹ-jBlu7\`; 7& p-m YӐ$\ҩazl%Tv5?QUw]os&1yІ_O 㰇֖`n F,*^KsǍegd}gw+}11IXAE œ"6'mfМ|VO7hpv@!InQbDz|{hX's(bۄ-+c{ءr/Tjӂo3; 6𷴬f1/!Fe'bݚ@|Er_1dWUZjwms* [_8wEHiE!^f'uֆv:-l 6jf/MC]3.ҟ_WLfVtQ;xMٹ첾oO)"$dVfC b8Lw"fsLi=r|GUT{3c%[g^!||l -n,5_ؘAH)gnqsyE2WA'!s+/#=쎌KYѠ<*+(0`FWoh}]}l&B@Uӥ10JZsvnzw쬔$m3{M-5t?R:P@,]R0V_6^+`G]SR(_X{w]aL`9e{I6O2j }NRHڱ ] Mu) RgjZ>3v\g?1jҏQٴ R;/QUOL].:f[fI,!SNn~o$ӈRƍ"MZ^^[y|R6}W.1tr%Ƴ[ >_[ԿKpaz!duyzqI/^Qk.fT#Esj:eõkt>{*ՙq^ b#_exuĴX7u4uIx6VwR|"Bn uC5.uK57Hs!+u{?~ze&.Ic|TP3$@N YMԦNr8SP,%#d) ?z&&("Y7⊲k 5kUȮji9P*}7e'W}L9/lp&|;{d-*U@;/R/$y"%KXU ƻ^|R qiQFq|^4|1X 3"WX; ?PP2Pv`(btKӳ'ēJ02hnh2i^ׯ7PcqչXNy'39!{ҩ jC4 \n<D3QerHT,T.mNB߅rheϗO-eϡGx/)ۆA2+iaEl[[(_qg6Ab,K/`A8 g/JMti4^a{nieYK}vcZq)O14,eVWõI2p춶eCyPpr* ƾ8=˂ i۷S4v/&7U^ +0jL OnBr\7?Ls3A"%9_VM)2)D#8UU+2sHQ}彆c!}IF }2cB{VJZ|vV;yl"@r[Ts;L rN.* w"W'Zd.B07NP88\BEHjs#w;BnnBS*<_x#^\t*Ec`fa&Ef~\2Gy 2re~%Fb'_ӭJIm2 lODTvAڋ5ypWTQ5`HK~ |T9b^4IՃ" dyc-˗v w1ڊf#x{t##\8 :#GVv.u#*Q)_ 14?A6K}=*ž I Ql,~m|xK _jM=pt#L *oE$kFr*tDx9bkYG'F\XP #ؖ+| 嘻^QupM gM.R;hOd竦<*CzqS[}Zjm UEǡJ˭yx_lt$BB WG;m̡W14nkPU8Sb:C{egR1Y`}k}<|; 8XpS{YnlT^Y^-yHۓkF/ӦZ}l`QI&؞-B)MkknWOf pųqGT~h}{_m@?;1T<1GkK@t;ReJ+k X~sISjkqy~XSN.o R31ӄjӬν_W^x08h%pdL_V;"`M""+c̠˗+?W|&l;܅nY̒VՍ T5{DbG۾3TNM~㈨wZمw$|lq%~eJgdiTN@8gwF+s':rvsCl!}g/8a >P܀/m)-sp*6UuȾicT|L"@OtUnPл͘RQZzDƣ+Q$9@QԐlS8SE ~?P: Q!zRkjXr!NZqv'h޷ID#4 %.\2)QKskTmSJ.p§ OSk}ߒ[tYLP&c+`wTkZRx/> fUwZX:g>-!^f0^1 :Tj;4)d~`^i+" Le!{*ki l.3,ˤWpk5L}&bpvme k~rG|.llܲN܈6h/fH㉡}ݝ.NT$wti2mqj)H<*_0پ2-LFM2T09b#&9jܦiM`Wb6NwzEѣ<4Zgމr΋A9gض™5p@),snЧkEu7\̠=XSY p9ʤ=kAbFe\8": 9ٸvYuڸaZB|!pX =?;8ljO|!;~DZn >Ys ݷx~\#UĊ(HTre*,eT .WDpT!) D8Ҙ+vOʪJcE{, 56eBp?vdI !*iP|Y"YGaS1;)4b^6EBlʓ%SHB'f{|ZeJLFF+jSL~tgP~s>,1h򻷇8;~Ge^T{Ц(4 >V\퇦@صJ aB Ke* :O.PR5[Jo:Dg>B^pC+C͊Z`KEJF-M' vZѬ|h*h`~-$K"5Xttb"-#@NUVɜN&1PU d6VLȤuk̊IGΗ$/a{5h(C>L<oތa /-dqB&Xt zAKHeAlbgo(-W?(9;4H,8;= f4=磖H`8hi<tWd*8RUJ<GzfZĶ@#UPkc_!wl Er: c~ 0ZT 't\Վ'QWR 36SMӽ9Ī~"4Ek}!^a!ԀN,iLѪR"-L0&sx7:qx (S-ۮ+9\eG$"K7,sI <* ۔sΚk/1md/OIY%fj(/j{DžGx6B&:*c "t`$(pmUu H7' _ZK©FS%Nzɐq1ib* .}[ ¬mD2YuڗcZhBWn&[RK*\!-WM:i?}o7*_@l(H}U2'e¯a#A}+N*0JxaZ^* lNbDE&QC[OEax7z|8^-g0:ԲϚ{Nx}ىj^(>8i/eռb`Z{wjJM2…|[)B"R+C@d 5;.cq۩)C6-Vgq2.&ez ,/@^$P1+0`.6 ,ưcۣ߃ us97t)8]e3rɆOe5h41>uxQm6ô3 M-KdQ>pD$ Mc0i!X.\%zʞS)&} rǁi6 UDZ#b- 1/: 3tx4w@^.AzFSWEmxM'ǽ`MK$;̈T8QR&Ԯ-i¾])dmO`˚5pKt8 .{NVfo~xlUrn, fx<:eÜc8[>]*>^(8QRik#YKK,Vڲ? Ere\Lj3}Vp.بV/ϾOϧʼn@ٷo-C/%סj#zLi> d6TxG1.$@QXzWtkV]#b?ix0~Fuaunr ^?Q2FNO~z :gZ\X 5焭-T&*Ճzf^6 SVFc 3͑-=~<%aeFi2Khh۬4m? L-Sg(j&؈~nv ?6 a=dފB"4fA@ksL\@pr+kv7F}1cC!;N(^$`a(|򙱟!>x0V}ɵڞۺP(vShG>2,(ֿ>@'cףI(Jm"SH!ÚԤwr6dϤO^5*ų+YA g%nM> #R,$ {w=/QPE+~|XD012bBrh  uO`Qa"wC/dREX Wү]{i;&*- V4_]d-B^‡X.i Ix̤=~*nú'3X!ƣ۱eX(cHv líH9~v Tk~ G,]PU\DXmtX(<8kE,-7puv4Q[ZT3z~D6+OD31V4o h#nC2j,f;˨i/k9wZ kT*i¬Nh9ȅclf*|κw.ñM u=R5[Է\BV3}&a3+`$;љ&> e;u:Ӿ\!7 6Ίr3y3yS5ŐivnmW@YW%rH Lz;:pٍ̣dCT&GU<Ȏc"KQWtRCd"TMqn]Z%Ro[pflJNR t@_nƤ^RgV-5L WL;p9+[`Fʘĵ%_Uo$I_̳r]y_ gy;7}Td';2]X1 yWG rfI.7>P<uYyɑZ\K8Ɗ0:}Yr ._'|0C W|oԭG|CӜdcXD#K=K[g鿯Z:V%Hʜh Fl )-CF%c}ғSK~{-6#T<12Όi3@HQZYꢢBvn=/dBCM.tk8)-iGKFֆk( @7 urlY`\P K@""wE^5r_w$z;|^~6n]_ ϮQ!83+$BT[O#oP?Їj.{O#d/PYGTAdX&ʞI#yQq, i -tf {_슝haɎk69Of+T1 <.r/uߙ-R4YSOo22̯ͼ.q%pIip~C[QXb&E$O2o)9 H&YV{y^A Fd?7!K& bF]UIFiMk.M AP>cϸ%JeeQQ+cU~@0uZe]b}b==`T/lXޣ."6|2,\`1/fT~ԐF\_ELss_, .n&Ud/=L- qӤ7d-E0N 3,惚)#?Ҷ[0]wlH7%}:ع@3Xt.4%đ-YUWv_k_wgZ)$x\h'-lf䲚ߨ$iC~~m!RNs:@S2'^^`T?GSs@ҚGuw;ݽὀ V Rl6 |4Q)>BM\ZneXB` ihx۝ DGCi3t^&67/^ϧ ]<=&=tИ{g*1V3s/u2EtA ԎƳ5F{:vc!ww~ʯ-Z9 Fbۖhwd+?E Q2bk; fw9yq4Bۏ%5sS9X Ky%6}O^~p"H&rh!&1يtJۄՁ UD&?k>4>nV i\2Vҕ$!`3W S%}GEaq V41-)$oٞLo[XB 4$=h'`G8ם0e<{cGe(Km!yQ~j^hUKI-mJ# -ҾUwZL'yY[z+̪9^aB1F<g|QFg+0 4'Cfϰ pjǺBRC_ږҽ<ٽ'/yA8) ?:zV"n63(RA$WQ+2 *Ωr/уJ`V>U,,}F-WOiv)gָ["W4͚SR)8yA8ROވ$%-h&d[Cj䬈Se7[(:H"64Qɂ?1<1nXh1%oI鰉򌨂Ş0)ɳ*\+'؍Ѷ]8 mO2Gu-7W2f.Ep 3"˵j'_Ԙ1/$ӷ>/~ m-yocm2_0 lfힿWVG0eb%i㌫&}$-gxI^~.n&y+Bpj!,8{Cl!i.O1%ax2"5/+vpOQ Pd]a[pT7Zo$[IY|nx'˽+ jsG&7&OqjNJ]bX3Bu"06<)Cx Z^lȎ@o{y+c\ʆWn! R8yss<$@ AV\+ΙJOa$+Ecl<Y(o;bҹ!Zà:|3С"5͉krmwt芎cM|_bh 2} 6XV4QHHD%^ew^b2S_-)7S- H8'.9_fa+%gh^bY ǥ(?FCpC~C`[gïGTXgG5d.Adk&#zC${C hlA0e[#X c?8 -ڵ}{G4Ut[oԋ k5Qen$»&P0 Gps!;vL <,iOG(}Lܠ{b[qud /<f\Em'%jU%M#΃UuпL'Ī2^/s,i@>YOyM t`-k rg ; NՎ(CXN4_q1'W{MP5=&!Chܸ:DZ;4^X ȏ<{2Wlsrw>#5όվt;p8xS&m{3eN*gJd1Afe^pW?vj+ȑk -PMD e$ >J:dϣY;58Z#92`H 7Ɇ0i./ aNj 6$g[6Vlcȵhg ?w9 l`UajUeCH59Sk\'y ^C_z FbVHvJNSKi3w2Ѿ_m#INV LzO \u|[_ 45d>}Eb>V.l49`9B4ZcW+KFu #p G".=@ 72+̷)q|pa)5熌{&$Z3r1jw=?WZ]f8_v5 SAV.6šw? :="lFX oDxr|e$ݕk$m1>S_RUh"-zeL'$Vl@[}I  lK@{HfʫV,R5DRrHMpkU,'駃yVASn_"ES0OK~Z?#뽆aڨwjba#LM/T2͖sd"~8NY;j>J#(@L&3:ul СSN*cP隵-R;i+nuz^stgK[R%wO~`R:kv@3wF9Cbalf]Q9_Bn\:ʠCqҹ!: 51 *8^4Cv= |E)($LRk Cez26|8P'ڣ#j6Q> Sҋw*ZSWZllkBPȝշ7T Kʦb: m{lbqma +kG!ˬ5|X\f_d·aFْ q9N#IZ7To(?w 8 і+ǠԯW [Af6iߐ<“ţR$,-[gą$Ʌmw{%_q˭IJEdv0??CTy+#Sv!hPq[N/3U4ѕ]HnC!ƯxO& V%Ձ`78&FB:p%f3vk*X9a͍WxxIdb]gJy Rt|?+ꞔmU MpDIhRHuJSTEg gj >hXDD&ڎZ jKtr^?73"WF2 o\5MLRCzXG[ 4nU qeaGx Ukpѩ} ʦUY &u?{u+%)Ľ/ԔʿT,ϻNl (I.MR 4!xU"w)_]&x㲉D?syXٻπ75ht?B$5.|<}.ӈi\KI: tY3ZsjpN¡o<؍a)[\06QZ9OCӀ t32C?$d z<:| ̀'AJ ǭ]χl穑U$`Ole`z;VXmDaD}ZCOQ)ī\"|#(~N]vڡ JlÚ7Yeе'1 m :BnYzeg6g\4K/ |(a)mh ;c fUyr5̙YzyQR|I(8)noX_֚K@7͞po\=+J_7&nx@.9<=7;&}.:YБK MX"(Udfui/(* [\ݡiFF-$gնe'C/$dű1ù&?Wza冓2+$o؊Q1g|X w*Fs&uH=|E{v n,).tȿޔJN?jPqHl5F07mpѦo)NW@FqlsH UoSu2[V{$da(ki#92@6,BC?UrΎdZ:~ mk#7ÇP0w!,@WCJHu:z(L/ƻV&!2"K)@̃2]l~d0gK-öZ6&>>t}dctYUS=0korby|2LI&/$ ՞;!"@xJ>^yD<1cV7p>eS%ݼrt'0:qkgͱ f:Ľaw#3r3\rUF%Nu}att9)98+ ݭ m  Y6Lt \iv_z5֮ "Mq0\U97mTOP{4(6 p#AZ ,ܡSy90Z:'f]QBCLݔH^ ͦ5Ё^L:Ƌ}ǩ{'%$,PIX{YiVVM dI,9W[ )?AqVGj ex<,(=gpVktbzK &=6XWj D#1UY8ha=4}VHCʎé HcD(ǫ3€*z y„<1~aZ"TѾ/ p&HZ_)~"%Ė[K)mï8})A=B=x"P^gM46ix@D!dZRGog CKI~l3pޥbBI=c${<3Sx GM{*/N8؎1t Cjc1jW.dוߗݱґ F][L1mߝ@nU^l"!7Grŏ85U]==\P৓D-dDk~pF󹛆}d{XJxSuZ5EpM9$G6R壸H pߗi]J9Csi$]0r۬m,@̯]yW>C_DK~eAtCcxifz疠2'xi4ܱ<+tʰ/>%ߩ;r*oR$m| Y]9u.U:l|RTVjs@w艙Eq3W4sO-nQ>G'oN$\;j,`6 w)* ]xS;e7LLU tnK@ᄂeit@prh%<{۽ej=U=(фg=hxlB {0=E)ɐc=4Iz5ӘֺS RhM̿ūNl'-BJ  oJ͸v]ڌmR78]j(p>H DCLjRZEތ^ځʤ:F*K _!0eM%>GósfD,o_ݹQRmSXں#-Yƈ_sADV^DyG6CtW fvw)G&kJ5v|]i ma3Tf(c$FMo\cu\:BVm`L0>.`&\X.A \=G\B* IbO)6o+ P! $53-SQ;btU߀&&Yqǎ,񖺱"}6}5*N6#X(*}^b(a)FW˲b:9wo&nXZɞۖU%@g}}AC]wث<['W?"8 ?¤DH- ݾԚ^#g7֣%Q_ &KGTN.ʼãM?ܢ z%$bA;pЕtV8Œ,I Jf(CmŊ`SSΣ`VPVN D={hU /vj>?*L&R(;gbs!RZM6Bce  f38@P&+J2,(הWj RMM_`˫!z1iwv@:%Yư:Ԡ`*}u:vPF查٘o4 Xt?(WJL$)r;:#Jvw^QL}BEC#W餽H*э+ט1*x !&ni{ !i(D3pn"QUW꣹A?.N:0"hNEӧ/@PExێX[ƜҲaxbKg+k߇GWA{]:[n ֩cg=uZvaaAq@ M#7H'#^[9[C9(7cOsYGm1{Uj*WS鲇V6Db0=ւ@}1#0˝YZPUhH5 ,ȼcK٦-ӥd%[vB1VFN 5V٤Ȏ-woF4n-Փ3sKim< GW ĴɋǒB i%ׅN<=KrhYLW!+? @]j6*[{Re {9+uW4p|SWtGKϋ}cV0b6\92V TM lY<_\kS%O( LdY 2>Eo9l3_Ɛ4K)+" T%)cG|'@ᵱho 'S~QV?O v}U t^[|Rp 1#t[l C4BB(ܓyךz _7c7d[ s'y 8 ]˩SOG>0  ;VYRYB>d4kzbV9⠟Y /JPmP*ʲ/f)\`ڟZ}9 9;+Y %xBEVwy!{6szN`|\](5,MClg}lB!@uU v綞bĔG\w,$<}M2io%D6O@Dn;%ˡo.7}d )(ŗRi[ ؾ:5[ٙtS[php\rD$[_LY6`nTj#h|%r.0 ,xZ^~+ijgcuCUֱ47"Qqfڧt@2ORz}y/ZgA.K#e S649as _\H"2˃.:Ed+.rmz%OD.iA,E!9)4o*8.HYl4ϹGI}ڡ!o= NF8/j(@T3-Q/`i=z~zѷFx)sJ +=.1eQ!hy5l>E7~tᣓR<d"~*PY{ܫjIe-<&i(hGi&ԒqQ }>ѲY^@VK-=t{R <_.V?x/ل9g#~3:6HP"\vWN;ӝnY%$ 4 Eou;(Wjلzv4׵!Œ Q'RFz9*UlJ]oqjyE5v-2\#N^q RЀOܛg.d0}GӤU!})g6iNkxN?A6w^VBI].3nqXˑܩ.:Z$ƚ_ǨG%lJ7;5g%g*|U4hPXņek+)I:_45{Wu0k.@FiSb\^-Un斓q1}5z'#U~*1eէN)rଂpsX+t%#R!qkkgO W=YZXO׊~9fCPAnNe~z@)׸Z4R)a%c;5R(g<~Y;ѥ}lzPԜgLC(9"o?.Kc[嶞=|POFj0ms⎦3>&yekư<׭zoqiY5=@Ř&(JYl+"`W:Fyh\ bbNlЖz5YńaaTۮɺ1̾D:~r-5{ o(.NVf3,YL6"dw<v6$$¹-$)QO|.R4*޷?LC+k\s]nxчqc}(0;K4-z>ѽ&OP>*#8JJ#yM\wr3WHHUj"4EmHw15F d~>DR:؍B{ ,=SnDOZ]-vnt^`(,"oF&0p52T )=hG'EMuXT]fUoV+C1|5O1g:yzy'œvϙ'}P66JS s>2LV{eGLZ?{|}X#jĉJfd8L ΢N#%U0[AXǃfD;)C:-9j=|WR0A`UvR{eaWw+߳⺇fwlrUK{qpWxBj6isʠ wȁ!n v԰DKg~٪F'm`~=Kַb|Wqmq\-L&x6%A2T4V1Tt+&y0ܵF옊,tr}=pcH)s\.}#^)PWK7FȄ2^sz}TLa_`ˍ7-dcpb`h7IԦVw ֐M+AɤΑ΄VqK|r-$jMʵ*c%l>4nk]m8鞶_[/DYƌ*֗ܰono q*)8.fk&4 Ɉ[޺(:sLҜ Xrs$ףSs{ ~q;PY2Ŏ/C$$T1<@WHff]pzs=վȎeSh0\ ޚˊGEdi`r^2BhГH0oEVG T@4hŜbw,ѶH%)'y8D}DW0!G~,be0a[Gx8FAlDe9M]5D67\ک;c.?ОpZjtuE+>'Rd"9<|es}_S7wFB;7xthg~;;ÔFnEf"Rq8YgH)mniutB|5^+0_."F=;g@dnA]*(% @kv7}7n4J AĤ}qb{uX* "t$c]ux]@&e6n'~Q ܵ*.`4 8HĊeX*$ GT̰Y}Ⱦ3]yQMg2yֳVvčr{J[^tg[cs f[Gၬ25~J({!h7+z0o|!=^,EYQ0YQiC08vˡ("Q΃@5}{s2CÖ;z)ոEg|h# Q\A`WcyB9X]jeW4~.}ߨ$0=b0b?j6KP ٕ9wrlC=(=,CRW.[UjK@%T#FCvKq"syɑ7"m%{pϸMɩ ݯJ@Z?GsYD dTi_CZNH]J>T_jxѓ^Dk@kfq&h{x_0hKx(Y[t_!E¸H|B÷8t`tldH%)S|hl'c36OYFl?vr@&@W ۻ9A~[F5oz"+Я<.D A{71_$1uN+>t|͎؝ ghqPUAL8PWedlOVX#*W~zbJ Oީ_l\TX~ f|~oB1s6=Ja:WSÈY5-'s@$[) &mfW'xDHTʄ'™ojw Eg}/`Dh[PɐS4%V vRcRW¬: 7]RgxLyЭĸcz`mgq&K[>BǩA]L m(FN)#.Mk-eB kB#~zA?FJD0.dԈTDq$qjsH7L`V0|)Zg\T5^.7OQrXa^An`Mw1[1@;{tWcĐl//iNS#kμ,ݏ>mgͿLH2/i<롔® WWrpѬ'M_Q-\K 3H0^eApVsDthI@ڥk0&jK;G1Nhx f*OY"(}7YjsNXñ|3fJ`(Z{"?_mc'K޳s#^Zl!Ce9[~ysCqUo?v07f\gWG7|EooQ큦= Vhv>j| jQ)*PZ} u d@k V'JVG%eZR3af&2rj'Fd@8@ljOyB9R{ZPv^ƹRY}|BpͨkaE&ζjӑ% p^K,n  k[oYhsa>|mP`Ząk(~iUTClPA1$%Ũ+Fy-Dˤya0S1UcЕ~nK8eHG j^zz*ynAm ˄HO}Vs960™zʞ@!98 J:ꪾ0h1KeYw(Glm\mj:ش)p\y//K</^-2"rH?# <. w] }&mºTBٞk q2-#]Ûx]af,Q3|麴3Z9m=g.Zp3G(# EXՇ]ho0S >b!U9JY"Đ~5CHnZUI$X(/+ Rqd*)ɟ5>Һd)OĐe*&j:4ԁ \27dmo**g?n $A? !Эc: h k8gBSIerOG/L wadVבwPؼ//6#?7Og\4[Һf/} '(!_Gkv5EQzֈFȆVeݺ*C0\@G yvq>Mn3'0W7o!fW>w+J /w1$~V;vªI9cg`)hq J_"lKQ+޷a7[;B~h@+Gڰ('V!Cً0 >e4$ؚr2c.#dɲLd%/ lr^62}wWq8R\o@Z:zY+KNhFWjan-ɬxЍJzK$QTz@h |;@Mɦo" qI㽵UˢylPD-Ӹ؁h+VhɼS>Aՙ~n8]!!Uoj㻬hg -R+5sehpe<8պ,F"b\ce*"hVco8MӗH:\&+VQ eA&bW;r ,S4qZ#@htēyW}Hx[o#^dt1?æW-P+8gkb5T䖗4aWc8g/,Ɠc"3r֕8ǰfTjcspox[ci,&f #Y“N nkpy#,C/_xC)]nG '(XH״2goE"ls~`nr>auyů5rB]c(3lًK-HJ=6caX;afM45rgyNGsdio o$U? ĐG``NAp)ˀqZj,v %|GJOB11,BˣLmB[[mvdS':L߯=&͸Һ )ظ6?u4ha3uz./.˅o̰/{6PG^uLǤ/ J="0 N|QPE F}b_+T„2}<6ry,[+gcUKX% Y*i~a.LiCPD~1=i̳4" Os}Tc;l7]>HpA>GGB$Z O‚F|.j58ū4F=Z3h|!TܽTیyJ,C. 럅1Ņ- Q,mu7Ցh+u^,d;}>x(Wa&L QM(3GW$$pCfZ}~N3χkRz"istB8s@# irM;шà,F)A'8 ƊOfvdO͔ØHc,7o= SΓ+}!_%:ZuWEnzIGU9{~lg蛕Li-sdjűx>]D<дUe)3){5 )!1lKXV[al e=3'H!<9 C>nzO)2SmbR[.h:j=?ktGYi\`*F*`u;mTk;rJG J9b\FM X{ %_u^~ b|~),{7:$b˘$w[:139jA$UY9~AHv|LR˻ `Ax&|{hJgJ8] jYX r31|G;|ͣ֡f6).`bA #lzS(NeZ:WN( ;\J{4'a Tw8BB04AC6+O_ eAyߤb>NTNP{<|HG`ipM"i6%q-4+сU2B2T iҚN?7doЎ@ZGcсPn.} /R / S_w (II\4H=᥿(4=fߩ*^j5Hӹ!96KFŢР{.8bM'@ɨ м)W~)|KzTw\Aͤ_i VL"`~Rs 1I߀ NM%fcϠ;~}1v u~l-,C eg7!SlfR qvwF}R\ PeO@݋oR ^zKCfV+XkRrTFb [@+p,'b0֕,DI K9G( )|XM>W5#ʝQ_%zmr/5{3ʼnIѬTL9Bj9R tHFw*9Q6ì {p[oW?ao)87K]e?yLK~sg{NE,+T:RtIhK8u ]e F4[Cl?AׁAuRc -Dayh»!WLc}$,>ݮ@ (W^WGo)~{*e/ =d$uayQvkJ(GP~~CasvuC2B%ūϠp\+~ဎbtrEτڟYUȫ_UuϿOR8@oяMi \ϱ 9LXXUj"9Y3>oHL.Xrj\Ϩc*S_{"uZEjgix|x Gb)A_PiavU-VаQ! .gG&{#:# fr}pZ[dhRX9kŪV"1g~Py.c(N>e{?64OLn:_%oWf!R+x܈sfydM{Q[:\fAe@d>=2*U8 3ƐqCb[8=Lz3 ݺX'%չSӗFʧm&6z =|,|bJ[uqfP"|<$֤n2xX#,O_HsWbMoQwke#? _phKoQj$,K‡ҝLY&fq`oY#^c < +WWX qݐջ<-!ʛ=CyBE>5cESRI0%saUü.&!?L۷2T/c%FJ捸]0`!Vhmde lX V.#Qy4=j1(9meSS>qTT9wH\37Fbɠ2]:x j R? }?ɦG^T_P5fsȔ ËV(xi\Rf c; m ={:a{} {aDkyٜ}znvL m VOOq-/F?B6 X@g(GaI&^ZԵm|ia猈W,"&#Y u}.[k+~7XH?+C 5wz>z;G<ZH tmϡ8o&zѡQB<91"Pzb0"܃SclPpVlZ8m/`*ֈT!=twZOUi3]Jo`Xjը,^\o0[nmxX ?{6$m!< UgQ{ƻL-$+ZC̿WPnfMi&>0Z/[C =E6 |6]dS*bfΩ#146r1^WMc0?TTK\[W'տ}Sv )`G5fZ}:Ժ[>0Q4w7PB>aZ?~-h;Ŗ7 $25Sy|9Ɲ1Lh Z%**+cRKrj& %nQשqߖYmtݰl"xk;irI8}O Ni~%R,A;wHCc^BIO )NN"6HE)Qۤ<説,t|:饘Źybh-V빢"z(FW$7lX'?0鼲geߞW ߛwT  |M18'@x+Ibj{~N" zFB0t\BOֱo=ATqX ~)*+;67Hw@54> x#rҹg;O  Rȷb35V^(h5ԛ䅒\vx !Xb O-l "0QB>3NKOF#cc 6IZ=:E*: x:P@{ =a0IpKq;'ؚr0JNlᒹ 1FD ޔI8lw|xj\:pQ)8eÚ!|岯8k#N8pk־L埏` XFHmpxzL h㱀d4Knz{0KU8^V6lRYTvP9͏ؓ>Қ%%nw_ZgRU8I69q񯉋_#:pH&|q /h/{03R[@)ÑdG`u[_)DʨS}"d@R.@:[ej`roRVMu2e/)H(`3jG#F͇ځd#Qˇ X!*#ߌCw TV5lH4Py.JfM <|#F %TV?&{\TXnj?Ԥifarݫ] =#Y"bhΐ:Z;jH$%( GXb6R'@HFυukԗ +v *3daLUe`Zf5S~\A !@•65fv>-ۣRG> \1qxg\X7_zq_'i(Ӷ 'L#!< z4 }A2G'eL'ۅDwl2ė{&F֫9Ҕ>El^ݓ g{:.58E~{-1\h Q8*Zy~NycozmV(υi /rpP x5#JԌw5ZIDWbhK1=Fi~1R?&26OrdG!Jh҇xjl_taT[W9`AR s>jPDcS&~\,z>:.~ Ytp$Q[v+Z&)dQiهmx M@Vw@&lG3^ɪϷ%ɵ c|\/j&>vS-x׸‡&ԐXqE(hQb e(_lJd3lZm/ZzV&:yf_+I:n,z_ߊ .JE@p_]m{WRG9Oy69lWSW&!ZĤHa2׸1cdGDug(ћZD4k*ZCL~;冱,:cFJ/Q ȓȾ8oYE7 <ª7!e¼iK8f!j@#Ver*_.O,"Nf\}Kmyf=dL b~@Xh @on")-R GU~?*SOM2Km3/;b~PN8C ~jJ<ͭ6ۣg݅{@x>W8ٍpjfpHދ&j%2Dd z`NmOVzG(.[kn'8KH*y'lC3XJGB*Y3dhj^f? ]i ,J– "!LHqp"tsqBd*@ ofِ?drӷXug5i難(3(OY2]qH9y{>$n ӥ' CE1i ܕT ߫ggjNqP7'e)΢ 4.op0} ~E~ӸOu㥜BٲВ2{nUFo/7%9Yٹ4Z0+G2ŽDk($7H3ə;K[х4/PB);ZУ|qg̟qUf]Qg@(/dc/ș ҇cu$z>o.6m|ImbI( 6RauaY\7t-G#xD+ݾr:lFJp BwaOi@<.y GgDRCU0&.TݸgxoBj IZD?pPn|l^"fGl'(p@t*yv/;x=Kx&anȝOqYcmʅJl̺:=Bz,k)bFz>oy lJWq'^{F3jN6 _MK)Qm& fÎ <!@nuܟN7ٟMZa~ CN+OBMĐio`Gk(n s0.%~CdU©iK#Vtp'9X@O?_zA9?,}󺂙!x`uI On>[ S*v*bpDcӯ_F(nC:(j~ ɽ2s[{ @b?Ý~a7=:KzXHLMQW6"͵U"(oFNS:QUK'6 0ylRE刄j+:QDm5$R`g{1 "ÔF+p1"nq~.v[)l^-H)h(;I٘zZA 0F#_k(IW>@4Cps&Qyo(_^cPa|杶eЮ>y*'/IR^UPF&nϖT,/ - 5 Cߙ|v|Lyș*Qi;mfIjepy'K-Y) $F)!5fօ1eUKS"#xˈ:뻦>v[(3& e ;-ELPt]H% laC?E!i+4tNm+4EM1qe8*m8;KV `gì`8N x_Ѫa<hk<6^rC+PQHI6 (Uؔ%Kx@#U46p+cΌÎFƁ{*+^ncOA8MPWE8ÓDROǃdu}Q9ngn^>a#ߏ|8^ q>wu 꺕e۟o(yјȉ'& Ɵ5e%|wV:I%ҌcHp1z WW75/.2BV񛙾W|R!F˚* @0tt_ #QXz/3; 4A 'Ă40"J'>Y̅J7r'˦tī?'|ښ λ»]?f*H=n:&久b#4Z%~UzF$DOC2n9R%ү0RX7&U1tpb6OXSS|lH!.I&1) l0]y-cNߔD6^"M◟`ٌImiA$,3=Utys1JzVŽPa΁T 1Zq 68nzs:ID`6Rk``*4 9_gS+e I-R)cmq0.Y8(f[9C,ѦsF75FkoB-- zK'X thHMpeustj ޤ^IN«kՔ!$3=RP"Hu}WTe@AN/uݲgLo(o>tH2pOmaԼ9U\3qՋZV42xqy) l aJ$쨆O|k;΢7_>x%CTGT 0ds^yXMrBQ-J M.~@v`vxq([-]-,ߍY5z]7>Բ̎So&d2,s34s|K7Qِ~WkG>Pք::&쎗B?udEc)|HظbAx7xhO}ۦF:TzjF-0ȕg0*%|P[ \D]-7a%@Z}%0Bއ,sKxZ$+|vJ;J_ݼ ٬!S`}noi{29:Oi3N*CO azG&^HTU0 P+"> AHz>l\ W۹WqnoZްQ&DNY[6Ct@D@.u"_c9D/ [7_].R8U>[*`x;tK]gJ:@I)a"לi!ɛԭƞça9|W.`^x(!xR\xS Ed/!zjd+فϨf?'N{b'}\|#zUĀ:Bެب[>oV´XzH͜QQ%4ԇGoi\n?shy$,@=B폢1rnX$kڍ / ݜ&?u<C6L]s}##'yu3B*u GNo^OR%-‹Sѣ~]˓#h~~Z^>+\4a>GS90C@pEycyOyHƉ0Ii nP~:0` viqIg&ZbŃA:IrC X,mȥ<9G푢oFQFvmgc$Jz_=eNe˟"=S>FTnDFrRkv_&&XC ᔳ+Aoދړ~QRNvq Zc6ha!G_5@6֎C1Qj@K [":w'i;ɓJm=x9vxs;%5YIY[lOq5 hxE\LHA\e~(В#X[f="yvfM>@gwb=+@ͥb!-5.]8Szo6Cs)[p&PψǍ _kujOgZ"QUBQnI̷9޿6}!Q';]/.2a@~Yx 4'y*~ε"V 75S@3U@y>XfALtf֞TݏlM$Q1O"3.2 Ke=;I3% Y$[n9tgWqSXl`FN, "?px<!p%qOA*Gq^0<$):j.0ܹsd) s 1з;ªZoԩV/ 1޸V,OdAs q }˲iudF5~:7!͑=I< YQɗiz/x k!\:p gؚcPSӏfYUb|UW@.qSR,D10zp7%CIŴyZ_ڄ1³$nPnCv3-ć%b+}|GjÈ] I O1~I[/ Df[:`61hOLaF. Gɘ Q N$ϗ;nvhT0A{ޏ֫?ǁE܆P`AZʞ{`!,8">p  Ld|+QsqIۯ^ jpsy:\][βXetM Yr&u8ȉ ɥ뤠JG@_&H_n%R@n1k:W^x-Iyl[,cvS N]=r^Db7YP?rЫ6 &1EW'v$t#Gӎdy}QFX>GÄ/Y3Cǥ8 C; N/նqy(2Hns2e4+ӧnk__b' C_Q aS\ K2eɕ en9% Oja%#"m+ c>Ec&*sZAoAx)*MHeGfUop%z!Rr_#23ef-{ k{l&+ ˮF^AI$$eiYk? J7Z v!] :dZah0xZhoSOf$WXS˨P6 #0y Wo+ea:>>.0 1 Ԛvc#Uc)ngw@sc I%Kh3/~S`nDqmt. t=NIǠPI ^9 [0yyU}?Kyj7c/A"L`ICi1ʨo oMںl ?ZVr,JPwA-r'ZfcrTsU QeHY1kFOtI]t-Jl.F_)#凖L7qS%{}?ڦ)oq);$' P۪F!՚ $[ }[={7/F@k@*~AZ}*@.}{ 5=7كA0V~gm?mw#)`,n!`Lv!zH# ΂8g39$}ёRPr|hrԿ)GhqQ6\%y'JzA~ֶM% .c@ӞAEC1#Jdi]y*ըzi2Wvx!io$og!8ijeޛR#aBS&mveDкy#nnyp]`cr\ДpC%=!n-":gT׮ g.xQ\o/[2mʛ.ޱPX)m,~7=y Y@'Xq^d"ݝ}bb~~w؆IJ ?c.z'-o=tȸ^M\>pD7F}KM &xZgma XZmz4 _u3}3g!'o:. |7hT#3|#=~ ,{E?w46>!Nq`πeI/$sȁ@]7CA(Dt22T4f8UdU.|zNQ%3׿3< +5vtUX#O){Эm.BF߃o&c7+M1 M!9^); (5GF)wv <Š%I&"۵H@e9@ǦgE(fZtΫ!cE[Iqx<ޒۙv wwx鹏0S5kNwW|LXzFt;Z!zV!;…g#eHdhj "]%+MzGU"qbr'%5oY3sTj2v/{@y7h[iq@= <֜"/‡ش|g6 6fx^)`^J]*'ӯ3oOߒ*%q"@?$ا[ 22y~9(|Ҩ~+Zt {Υ8 0h'|v}(Ь` +Q ik`Ýd9GMykU*]tԛya BG^ͻ8=gh]3koNJGE!1U}蝄d"1g 8Y[N!UҜY2,45MuǛghBպ#{+"f zm浖=Ai좼MtWU0GpP]}"w0AK+!ixu{ 8Q-&7%1kD{v:N95l_ns˔I=Ճk@TA2[?;$qDsqK%tLdڠ~f+ZK0KsDLm[-ܬ7&4:K) KGKRχRTF⏂C6KJ:/} BGbJ!+עy0mxEdg3 9wv P-VFWZzeMs2p>UL'0qrOb"4`Zv-@:h&<.j}LRщ1 L]o9:fعDY|QR"vd=!C-*ٰ0&̉v"c0  2rjEo iT ]7&4e2 75p|r*pQ׸f,S1K87!g{Pj>-GD D [7zs}8{%{s)NQ#u!j*%C Zn͢ulժ,;*p{~ Ġz r函 ́m1aD6٩L9Pb 2d g' 4 R_#l©=T:wnm/ TۣE7(H>/9}xX IIiAru:6c?Cj6lCiM#=^y o,%|I:{P2I#$ٶ-qކ*#ӕAT@`K L"kG_=#4 oWM{VrͮdLb1"bK8jv#_VZ"7> OΦc'is Vq OQ\1X`Ob2eTp]ݗ^P* ilГ!\c~}çalvy!\htw\p!kſOօ# L#OUܲ7NDLz SO\>&?%i>){w@u&:^}9UJ[ljz1wUTN$V9>`Q3YGsZ J xX|n>=m$V؝|( ~з_d52jNʿ)DєC7wVC 1Wey)8OBj!AdRwJ$Q'`ZEt8 `rI&5"\oڄqsdY"(=|jq=͚|(jY۠-?ldP ~]X灂ݠY]${L8?P'mF#hxn "< aQ-~DZm55 DV n:nE ve;#d@96v 3A((RtCJOPU|s7qdAH5.bo1 w :h{'OKP["荃ϳ'Zomkl['(x2%?sTabFٯ2351o~{NNtsL+[B<nIqiq*[j-'ܶ'% Sʴ280 A%5qAw"SwP):f VK^{v@qZDBwBH_ ?HY:߽BuKENKCgdڰVwH6a>s>ڇol7^eZgD1J=j/f31JGLنKCx>NTts{9w0RKnjK2EͶp9AoѠь0<)Nպjgk.T@E{4CЗAW >|Pt!wSa|󵜸B%޶t~0X"HHm=r^nl5`_ guCØ PW:>|^‘ZYr]|C"nDҏpĘ!FSg!wڞ7spxE Յ"4dnKv\cH醡x܅Uq EbA_RNsOIvwA?$'}ggxx^I=[87QVPa¥7#7+YƲԻk HXdzSVʢ 6kY|JF]xv+:v?}HAI&X$ǚ=@FÉsh UViLm͗?rAXQ&iWg%;u^Yff !:~8j۲Ӎz,p J_( #Tf7L]=oOe0=~Be'H8h>AP.] `(Zb~l%ɳ}kF/ٖfwlX`f576yt0lV6YE/F'9-RxFh-$CGpw!CuKHhl?{,j CYh82vΗw+{-ݖs}[d'_m6a&a}.զ ;Ėݺ!z* {B-R֒ط< !fՀtz&%e+7h?S1r}tgzXU^Ij Ź)RSF4GhVԒumY*,y&ݏ^?VwlNO* 3=+ǃ/|0?ʦQ'~5kM։Y8`/EӮ \Z:| O{r]x D>\ QGL.Y\gmME6YS cqvR}^$ X' :'PTJHC"cos|ݧnQLe.a.q4:i;G)KT=~@!XGfVD^T#fVRBk7wP?r4杄mfIL;vNjYάpqЋ-n)BҠ`L>ג̆;aF2DQJpM_=秠]r0:S)<2^0~#T*sZNiyjW|IS݃A gk?ȩKUZƼn84AmGw27w8" 8'>)NIYeHP(O8N*yI.,wfGd _X.ua r!=lF7@+㷐sQV. 5 e6t&(83H,|쓵>9H$P_}ybj<]}.> ^qvMʨj+xBҁ䓳/t{}tb~tzž`JЩZlU/1sc7?Tls?ԆAmBͺ;74Q{7߆E)q"%0C;Tx+͇,T0/M  RգVEuX҃s!r*}BlTΫ %vPiA%H͙]&¶n7ۀy ?HiY-ʦaZodX.LY ,p}S"9IDSmo=,gCibRb+(P`ܵ $)BW$EzC! ght,jjsiSiv N7V獗(&>B =I` N?u2 UPze( -NQ.576)'59{4M=5NxUQ 'Wdݖ` %)pX4"vureI%`uД\ǰe5b7}i_2P okJ*jܽpY KG9.[EX8>d=_zfjIp\op.)b/o ï&kg-(]-`3+3-Z!mn&/MMB7J^7aąYPh^F(=`.=xC"VWpfo.;7q,WC@@r,հ5NHfUb.=agXUMt}S7wwu(t_HQ\Q`0D2q&((3{Et:5防ZᓒWaj1{$j (1s hcuM-6&Y(8%U&ij쭐}Zjs=WqH*Wr`Isߍ,LO <5w bm 6zykQ!IA )2Au3}m$:d"*la@Xm@6i:8#m2vŗo#Z:+z1TFB8H%,ER*z*i|:CkH1&60I6 ((oy?ksN `$YNtGGR9:˘#Pn_L6)Ég)qO{0ϟY<SںNɈkWjA` B\$*;R_#ۆ]3qBf\M]Aq1\%%$Sl6+Ɖ#QהQN, qwl^Bm(1̀5%dt=+]ⷧЯw/LqYO讞ϭuP:R5RhV@; ,{RJ[`[n;whCTE9'#h}'s&li TA,P$?xFI3Ml 4d{%}> cbLF7 E)DQFqm65t550Vg8N3B~:SEܥ;꾰ͭ5-r{|GJp u*l~ jQśygZ>+p/4`.3rQ\dž=RKKV$c_r( b *=Оru2OSrѪq>H/?j/ǓFM0Deak?h6F'\d¼d!~|uO23;aĖ9s=]?N9(cB1^ .x߲ ֋|SXiVZص;G+yS/ EaZzva_w5-`ѶpD7Tx~Nø.Ǘ^/=zV0syAoIʁ+GgNDkgeD#,!\i-F4d} "À}ǧA7礷UG~ i^C QYXW8oH8Y1{)!dr+ |`%6v0y<Qz zu'[i W.U]1O .d5KX ɡp l]2i9]jQ_Z'BCa6X$D>z?'GȌsa77w6q1'_(a\!Ci1(;B>y`VlɜY&>PPcpCzd*vsxΙ_^'|lh'Poư+`|8j^lvwAd)TP3EZ=ޭ`-Gd \&/.fh~SFthOS{ͳڡ+_6й`e7{ac}{`1J.$[oK} f/m\@:ŐȞP 9_S`sZ֪pΕ,A&dɅ& V_'Änm FkDM*^68`9|踷fsXȥ{= 4ybʱ1N0:q$wg3AvE2>58hP{:d`g0(sT T%4H@{Ȣ,͏]FI_ D\q@N/+)T7K$,1Yj_ΎtEvf5c7N@&g|Bx7vOb Pru97Mm88贽Nge}BQH# ݽ Me ӗ& ƵXpTnd0g*5 q: iyEm[͔Ba2`3.I{&"ÀA0L/- wR*ޱvB$Kw?h@'#RBkD@Mns)饖QhڃJ(;ӒDd#,G\+uF&j*%%.(A2J*j4np0 {ufz! ]딃KxA"NBel*.tŊI< _%^Q:SMzdB,d"O*75^~e9:hiB |*(3wcdYULm4l#%Xp |/n;aލ\~iݝxvyWmPXLGvê27\~±Z*p 2lH܀zD,JZZ@!~^)*z2 ]tܒ?Y㇀]'_ >6w΁Rcx<~XջMW͖Bk-0y^a z52hXQ2+J(>}T~Nѓ7#[}7>L{{zDasI #aF҉x,u5s$lQ'hT-gC>h/g KS*|N%wmwf 5@.-$KXTWwi #/tX"am<\(ciޒܟ75fbuDg|He-}C&Cdk ?Q)~Tj04\q\,mEK$O)W$G݈8@-W]CN9+&y QGS 5~v1P5ȭ2=^~I!*Kzu ,Y* DK; de! ,&0*(XFܝ&(w:gϔjkBkZhEN Pq,cDŽcaፓ.Mv +Ķ{Hv.ȭ6`CӪ.;)TAn1)^)ÏvoVۘ׿]\D=S8F0rfso+k/ߘ2,q_eSO A^bS%vkѼz2[ H =F-S5|ʆl~8] d=oMq-&Ԏi׉#VN{07l Gݢ[#g?h9aDMѻR<S8&jb&JHҘ@2R^&\akp0Eޜ1G٩bSh^,\.oA4;ʰҁx KDy%x( u4P.ޱʣqze00Pi7D%jՂ+XRe7t![ 9.{, E|U_|*5Dž^TxY:yϒKHJJlPB\=VE㉸D>$WBN!{* (C%<ls,ӭ/ Y#?vApcgloHBӒPA .NLRуMļNl#kM[h>N!c\7^IcDV/}~a`8I// \&j9!l.ys^i.yݑegm#XTx0B*$Rp_>AM1&iGv^M-¸]'!:B.dtFFDQZM~]|;%POU#~]VA EP+F!nC,&M7=%x_U{!a$O  ͒v'ml*1A='gV<K6wxvW8iFwUKm婪Lln)zGN޴%I/Bi#9MT183'dGsB~Gm!@&',cL%|_(*,|ynL3m͠&/ Hܶ@; $EN_gÕ[+@w'~YGqᮭvh=l T08v:WM(RmL-mK!gK]ޫ<m+RS|?Ff;C݈% 43Dfx r0u쳅N~EÅsrg:F,-NDCptpf;bEA**Z:LTGazO?%Yo.a|($/BrsiA#>_;b;x{;1],`,֓5ZndoBɩpk1T 4`Y6kdwX;تEքM_sO kRD\'pr~r X\;XȒS2g|qVB:!Xh;&,9mQV]p| 2:'t2Ľՙ{$&>4SfoLϫ:aC8SR}c>CVc%3 mXmWj׌%1ܱh;![/=Zn< ; *xs33k hk {-\=n BFO爅ߜ]%AO*ؚbHԖܱ!ajFQWFH$|^ᦧa!\8|h7?HG,җZX1e}LW?SKBTP9B5~#7A5l_S]ǣ8ܷѓpPmn@J/IƷfY:]΍7RQk+Gs}5&bF X8%DA^r=mÝٳj_49*։sa]>jo>Ep("L2AUYoTĭ:~_5=K4 0ulr!=K<^H*t|{b]*JU֎0Ye ?]78B3J )rlGecWNߚf{!Jr5aG̀KpKHiߜn[&#/K8 nwGaKX=C٬eO߭J!:fi˵p4˄:fp_4h#5ET13 l5;"ɂ" 薱Z7^ogBdbc:b}EBܻ; x;%5./;7 dv5,t!93w' -@s=v7xFM$0?bh$Hňe|f`~WyHe[9SoIԫaЧӛBY,KoqsLkÉ ,6@q,<**(&4Y0ĸsI@/  HU[MR(r`ڮMm'S>5UO_R,O>U!Eva%T#rCeO4d1>bKޭrA RPQ9>I8'T^wPj\`9^d \_X9-CZ hlʥ Dj¬k= 5nwq3Mnc3oR"XhE7dm& mg/(aSM:T@婰:"X~e*=&I\ {OW^¡<֎t\܁n2̇_^t%3;2ȌTX;Ă l\'׍(S]#LJWj[=!WbCBJ: ^il'&#|!3w0(uOPzHg_O)RBL\@taC )du9@S{T-jjsKk:޲]sچb>Ϝ\ʺ8L@lۋwwM(ҏ]6O1LϮ, -h.К!=bw?FYEY*0;vkLUU2)Ey6®*I,EZCm{]G8BńQVZ`>5P|gP1ʭ>v`*,PdUMc,m#AI(\\A3ڌc\Q/Q3i]9۴#zt\ VmwîU ur=׭W)hGMks=rD_mͰA;`T&*{B$҈_Xe]uSS*Pqs*Td~ `#zF,kj{h6G4'+\7UX ^͚О_EdJ'FpP‘ieEh{-=Xx*7ߌO̷}#t6J0T5=N6h*h2lrdIc(v"` BSw KyP}xNjE԰,1BG{{bE3,}uasU¯Y1[{@)쥙-+F~I==tg1z8Ysr4wil [8Mo89y)h3f0[*7Avb#ɴe=/PQ 8w.DQ z=sB•']H n3i|e&` 'C Ԏ4z|`Dһ~"0AQV_7Gp_@-w $cys&nVfk11@&q5aH M}7BTّ݇KƵ!++B|+\Q W0MNӃU!k}-llN iD؀xSc$VeΎ][RFgZ;۪huHhzw^a 8UrW\#$ܧ7V{&W< !] E6BGuu> 0RB(C(0Q9bvVk$ЧBy8=Ở\0qC%&s 'maZI 0X3=ӡ7'WO*W} 3n]Wbe˄l1{QP0AOo4f/2N9h/5I8r'ϚYz*r^ Mj,Ȥ_HL\e !Ca=th6{3P_Ku̚rHpTdM(YRo)?YS@ t0]xRx0`5y)] `06ʶj&??>Ţ7&ty"v_˛kA="}/Cirtyo.KGo@7ub_mr7w\u><>& e\(jjS1Fz2}wCH A >l-D`q658j O i\e gA8bNg1O%C/K-ĨL9o&L]]DOaTPLѷsҙ!:8kf /h}:8R ASN[ne! lcu6BW`]zU _/VkGEvH-V2FhWтiO1^t`$a]2\%p`u_} 3A8Fpa1oEټ~oɽz2hU9, TCG(n=k/%e_귂RIZ 3u1e5)=8&'<tFS>pzYA54ZT̩I]7=NB ̏b uZIT *j'umNx%ZmKQU)m\0Fx5vn?,N#/'3ϳ$`gҥr-sT25>/,j.z&zxZ6P)]pɐ- `hT[t -XJ>N|v*x5O8?S;%DzÕ݃y|)qH41vY <OU"IO$R+qɔrnV.lSSZ=&ŴURHoq$φHȕ6ݝ끢ǭaPQq=_ DWA ⦥Vx]Hs{>Th<,bkR-E5BzXK?xر7h'y=kپla4ʱ/cčͭ ¦`au}&GV=FjylN~grg iL+Ƕ4IⵗvqMXxOzJ;SkA8E+"Ml4ղF ʞg@lc̜i.Ĭ+eEB/D QM X s&FEqjMooBc26'N(!EN-8ޮeڵs)v-IfRr9Pl+Wa}:1U:dO!B/ww|m?dtMhx 2TEǸwh/{>D>>[U(9E\ۦXu9]kU&86o+Ot)8b^zt㰪L&OPL*-,ٵDRХ$|5Dqv%_bU/0X±FNx+=/Rns![ڔ4GTǢ^qjE2OqE;n4W<ZX}3~Oa G*e3jvc(B9%L=Oݩx=!^Ѱ>~(E[#G|="EO c/|k f:Ox5+`(Pw$qR=w|alݾWh C|+]y+bH K308ru3>Km. ;SiA'$MT&M:>yKw2`eUs=%zPLM5D+ z'tDTx( jToz#yu6 p~`rX̤<5/cVaą/,)Z~MVD$3%V7d׬X& b}~Lo~]VQj*4ˢFe@Ppmu#EʳEj% :# K LjN*k‘rl>j>.=NF2UQBӭ]љNu4u["y9*?'HR"H€B?1 I5U1Dy%-ux{ZRs{-ͨ8oRO∋~4vf$x+K@IhӘH'( n=PyNz|Adq7䞦%/^.5^˶%04 R:9MY/I`88VXmmU9{m =>!SG!I)]0 ΑlY`!D w.A4]`>'1MoT{+Bj.:Z}"HUk3>wqx-\G8e[DXMu>Ss:2C!FZK}r p[F[XO>0M6E\g3þP4=C:YEN)o da0o{]zWøJKxv")3ʗ@5hv!iZAзhxoˉHn8AG f>C%;F9]dNONfC.3 $)@`Y6ڊ$ 1#DπDzFzC_>S(MŻ[QX 3 $ZHUg+6b٭=vfJ΅<aG8rv`X! Փ@6D >b쁣iyz$Ah9A*W@3Nw6*j ݟ^A-G|]עsL섹 mx%W+xpK@ҭ`#$qmRMN7zShMς4\KDkA YN -xDeuos0ЯT%f{'kQӭb|а=oYeWH){Ct}:vmp$".P&&^v{I8GD6yj"Sta)R-iQ/-KnO| \es3L3|I[{jy9CA(i٧OqW(b%E* gjePGtsI,?2W(4̕ 4Z6 KC) (<.^ e#>\ dּ_N(8We@7}[oil㥍5%?t^F_T}\d:HLl 0!^&zYP6),}#8hߋ\v# >|vX{-t $RUh^'*Ha|$ "}+%&j" -njQ)  ҍCynOyj(C,o?{J ET@ahH4  jKzs8ys|~$.ۓD|8w@`sd^? :G#-)])]$|^\C~!j?F1p2+]09JyF(I;I- RaBE#DZQRHqA In uGN⯥wT %,FrB?< B ZBXh"tW)~Iq6kל Ǡ)E&›bt<(m%,$ UC>-:Ni+y衋 Q{zוolP/xSS^shW@Uxxv.vaRփzPёߏp@݋9aZ_F7`wR&<[*EJC ǥz@PLI8 ogo,ң2IӻuT]䥯]X0#JUM_L3Viށ9R.ڏ"Y",:1-`=,w=ʏ"v݁ӏ3{ %f/{| w:ϙdLyȄS^M}[Tݤ򚌳2+_UB1Tf6ge&6U^,uqU !ɯWwXSAIί󤠬N^Z/e!nq7x\#)xQOi+og7| :JH^%{_ \Z>e'~h?Ş(c<҆h2;FGUN2Rz R_^`jy䥔8{YѮ+M$s(3~-$PQGwuE _L?z(L%X2y_etN a7n ϶i)Սw"ΊfGh@9FjJn +׷fRAK LUK"0 <3sr2[! YlsI lF?V:4|~a~SgLwiVwG~X;uʕmeKeQP3v^F铗W`|^ɐYU_ⷰQ2)SiZ\1i`w߆ײwCer(ASy ge[U="I]1XsÖrTc}#2/8$0 =Y) |QGNy\x)O)35kEZlݐ.q]ک."ӎ3dj@egYR:p2A^ #*݉" y#lwIӡyR3!&jS!Q2RonC!~!'%ҿȆOJoߍuZv~bcT35 ,rC?AWt1 ɔ"U\DX_r5-2]oǐV߉Q+ `%]g=+$aMQҺۑ}fJ\S M`B9C`_%1"8=Tmዾ/2zv3D}C27kP:rv"ⅲx' Y L 3!<,m<Ήv)^J32 gBȝTBh`bS p7vxFLS7̋TE=X=rU&Tk`+/vO)$lQLJfE!~(~՚[Yj/c+VaS6fxhƑ' o^pQԝ#x-N{&8+1-Q cZ9dYO_J|3=XtYl7t1|_8fƗ9xW itkk8OcDT(HM-|3GTGA9!=f\AK]ꚋQ0W8G 9fC"S̋ݧ Q .p3Ҳÿ4=IF_c$hkĒZI3<^_])b $=3LYX榓2A|͙MCבdBHrJ_.(cѩ61aT)e0x/QI]ZYvՏXHJK[37GImͷDiW'3#);H<1˽;-*q>Q)>kwCso4wKJx}[ܰ=#گj1u:zl-&ŀؕϘqXhc@*z鷥\xd}4hNWw㻪N"!pPQskG$\u3gk. fw@ T\*C¨P;{pxN d;4mq[Tf\|Q _ $i啯&]0Zu}+З^-ܸ_6+6)J0=ȡ\cD d^)yQ)YXU6XңfV񯖋z)mc4 ~aRK\e z+? Ahг*eS[ g1qf֥5'A2#jg#O@MhT4QXjSy*LIVD ȻyvYŒbݥҎM ݛ[`jE$m5٭ ؖ_@c>[<|(i^jvͅŭe#S=H\Bk|լeե$=:dGb._k;WTUIՃ>Wk o )^k&!5joF 5a 2gANyj }L4w'[=7|{>v**;, e ǺL°|[j \:|6jP݂%Wq!  m2k6ϼ&^uVRq\Z8}hA(GP[Xɭ:9m3(H=6 Nu]}4@]L 5DX[]3OYsQ$h}{!X ԧn(KRY'IIKT`"M1k?̪)!Xa=vL iŵSk3:ZN U7ͨ #5eAm߾74j(ET%\U" I~W%a;Zؠqࠔ(<||{;| PbP_wNNLEÕ@CL!9b ۾5*M"1Z 7Ar.>kr=IbtpȌ| Vw4ylE':hODbS"Bȱ<͹K' .|y̴{ .h.!$'%j}/Z?^|HtUX zQ=n sŅԛLFcGR=s9qbLbC }hH1\xň#SO]s@Nget|]0a)|'.0R֕_og^7[[)C wS$fsK0ǘN=apfl jز7S?:K>1k- Zc+I ZmS9E3F/;dҘ[^BҁM|mՁ )833z1i\$RcK~[Vn,S(D,m;c<؜tn9#EIQ >hѱJXl)K0~;aή]DCIޑjKaFVcY@mubTHT_u=؊?2Pj^D&zqC >͙Qp{پFZ7hawh6s 4Qpt.bG/4.]fc|`Կ`B_A,!x_͏F:tjYP%m`=rMXm"}81K1Uᯞ4W)64ݠ#;2M{cp?!4d1ǃFgfQXƺaDJy VD<6t`>@Lj^{ hkPW s"Z~ڭ91`^ϡaHhO8g Rw1sexEMuv*z+MŅ=ԹEOD.[*LpNҵ$kr[\Œs]MWAC\3ǨrgvpRQ+@VQ1+qݧctI6]0Cݿ CmqbRm UmChܟz6_ '%WV>x5C˷"!rmzYAE$7f焛2%|$BOhA#]\S,$1*$mtVCn)QiF:be~} OE|jzPe!j)o|]ss*q*E#?S)/kn7tY`3Uot ֖^`rK w<,6}k${3ݘp2ɒ|gg)u,F/({\sB!BڌB  m8-UQV>U> oh8^[BkH"`=?--WY ~P&KCWvp^vb"sDKWyY B}x`Q.,L6]0j`%^ Is3y6A+tкO ˋݪ&z6!ְljOz5}uA-DM澾d! 9͔ !m"#X jL$7g¢R|n5gT1H3MSy>{)-,#ZEy޺ f7btH'@`zOo1w۰C*zwby'B%14XEnZ|ߐ#}Z\ CV%jt;rxp/V\ZE%}gD+qgC-푧11#0 d33}>EUptǚs5׷~,v{h0 AA2&۴beHΑz \k%j lRx]muqE}`?\Cw(D4|$ ua+̠ jUl ݜ!c{:Ȇl'9,gѮPPaczcŨ"%{liy4R"uS{'֝e#I=/i5P[xAe:2q`}mh Ե+u = /ٯX E&s9 ʓ;S)6?UtTܩ6f€rdf%x 1Z'l2HbV!!a}ja,A']/ΟWgE±ȸx>" <4>r踇ylU5[RM͇^2XӢO^p{Fu0?CL_(25b)d ˆ--l]J /]hV?oEXU=;avw1N@+R޷2LZC "}1wL+ Y'iMȓF6-9f hGm+AG"KHx*󣝘l,/I=fxhRFD^rM/Q |JA||]ļF7@v D Оh+Qn΁MDMK4s:woZeJOzl`^i2$IGLÁ?62.L7քS' ;83k'lȨcٔ9鬭~"X 4w a C!͂Ʌ/ 8qC6]',>JSDc|M!$ Ba)[s̯ۤc/.JjoZ?ghyvгVCD4W}^|o0˲{ 02N lzApܘr[Srv[ÉF]4M)N9i|eH}zr<̿ vLv C`:P4{U {!#N=_PmSe9M!N:#p\}K"$ 4#оQ_XdNh@thv0!ct Z'alǾJ+Riz8_fRkѪJ?hPj&4$ȨYUS NhԾ$]UTyM 0,[Oұ\ ţ~bsT緛I%=,;)AL,1 ϭQFZ9TߐqY[*ŹlieԏXPio[:VhpE rchG]CBg;ftzvT0v-@2"UߎVTFYBxZ!קL K$z֘-֌mhȸ %zHsH.rZ!4eO,,/)򞻋SK’!<_hS::kָ#{x6bDǎ@UP ͉ߊnbtK, |pp +|vQ VKF!J0*E C ;Ѻ8>1;@5-ecãPEZJ")ϡNƾ9;ɸ8ijiK)%g@Q9zZ\XXf9np=]u9̫H_jWJ#)aw][3q50iP#T{SXU j7cN6`;l֋Ɛ=@q+oUEv -TX'HbOl>h3i os"x[e}jǟOa&V%⁁NJXλOMāAK!2<>*3j )? x3OCx`~ˆDnzS- YIkSُ& :s# #CSWOo~Z]i$J,]an :P8ۉ X/(ڈDI_%- CN5Oh(zUmFr'waԽ6r6}XaopyoV#FVV2Mtz"uՋGG 4FwldjrU3We|gEaۮ\-;y6"ꄿȎh0>43ƨJ|545yanWU"O1m,wX2scӼp[ E(?1un9f=RuKs+X@Q1KFc3  |g#n9q[%ד(*]SMH'9^ lG27TΔ.N:M#4c5b5ZU~ z$Q^ŒU337MlL?$)4LI|yu{qGfLd':}>vh^]FؾMȦ=糚AiDe;H>wNBgY}%w tGNncXDVRU 2 ~n^߳89jP4TŃ⠦;9 Su6Lg@W𶹌 AxS?GIXFV5) NN)xp)PJ^ <9mՅ8Hw~ P}բ9!<'eZ;%^u=r$qb4||hrL*5Om俷"㶏w%pt 2QSc#pQ4nKsFK; _w+r!L[L;1_O/,xȷl)́N5r&@Q}rʆjld_!_;ay@u5h [??ȵ8WfNˀ{s6E9ztX#U ]:Kݲ Ak;H2s+54% T{ۮe{LWUͰn!_'^(E-uL `]Wk< esVGuy=*h n8[yxp&9TAXL"G&e8˛{]E8%[Utb>=ԋr<#)<JW~cX:i'.Eg"r5F8^@l|nW3I,K{#ApJ!G^kF_)L=zD|XoWz }eqh| |TWLF}FW6bV~KvA3M@LdwDֺ[ݹzԝ+)SRT- QƉ֗٢~nder 20"+WXU-ilLA7wM[R8Yv#,QPBF'늝MI Ek0h@gȣS(%Ȳ$pšf6+1 9&jOWΛNf>pp\uKμ|x%<1 Z@[E]A'|S3j635@؎Y>( [67=yiKtn6i^H7voTȉ.8.yoC hW-rLaptb`)ZPOj]~mA*ܜ[&fͬEU/ 'E`ܷ!?\Ob#W,iZnlL h na B&0~s\(>P9( -[&X<55TG֭m~q.IF -e"[C{|_2vV#u_2ܵ8ϢIlp I}i+ePkWh>">ou:&NTCDqBmJ|%W,̩+~A^rmG{VӀQWO(n,ILKcZR CRg^t.t[7j|x88 xe$hdE?̳ (8ð4R!O  HEBBdqeJ~G7m,]i[PQ5exYAzkju-ju3^%!ymp\|Ak8t%˃~k]_WSkVPB,>HT(5̍Y{ f_ pVV} WUݪWtƊS$g aOlu`!TK&*Ike64`92/vJ 'Y@QՀs5Ic_  wT0,’g5`~'V{2)mN^k\K:WC&cQ6JuHc~S(-VI#Sc~ S {~=Z 51 L'.Q2/.5T[8[y XSfYAac-F Jm5CU?~ֿA k[v&p n s{`_WeN˪YPn-Nzec7}lRKi빷D"qow)8(o\|(CvG,PξHY5jj%+2ZPh{OV_x#lFqŸ\smk$w ]v1ळSCiH |4NJ66ݺA7o/C;p0W!>LVSZc#zu4DduU>YgV?/s,Vtk|rqת;8wҾa,M)tc! ʃ(F"D `O-=Ib)cG^ 1Xx3N-Beܘ*&ΧL^(0QT mhtAu2vYӧ0$f6Қ W6 PO1!1!T8ӾIDuFp`P53;Iz!bglrmLx䨜O/0u_qcWK_cZi6G'PHlkO\@r*Ρ#Ą4!+eχ{Z w?:R<^Yf/i[\8_a+)JjUh7x{޴F2\iR~wM%W>+ Z=ERM[)2ۗ ~Lʁ^[:O-̺ļ܉8Mž,iuxi.!>):wom1#k"DlHW,!8;;aX Z[o`iup(N֒G)0dD,A/X}XoagtU#9ٜJ#SSxB.ȭ2: BX03YlKB{W Lg+dݨ,O[DLr$AHqvdp%r7.]v4hb5B\h-Sz o!׀%D{g 7#YN @Be#xL}y>{i < ]Uy;k(s۪gaT:?*N$Lw9涨#Rw4ok(Ҫ 2ǢHtW Sm^[WAe67$b;ETavi]5 R- Xy'dHz3IQ.=B%%Z0@}]I¡V>9H em*߀@x UbADTfDc[+ := ),7IߌWNmR_AXNkTG  һ!ܘiW܏e\XX4r ;:!]J@5?5(qjSwv`rO"2$9S!JME`gpS9 fBlw" C(yVʙ)Q8;ď3bO;Ql:MS9[nĽTɲ+.$_uI 9vLKl*Oэjqnpj7y;71ˋ"ϡR),'hɵ:#b9Cƍke? " ))6 h+׽/%MҖci{J wV֫;-%w9k%vjw* iԞBEMՔo(#׾˃G O; Y ·?h#rYRT]h}\F~3]sOQ;[xyU0\eva: [It/$|fWbݖw'DlIk)5A#QJXܭ.g}N\|o54LM ʔll)Vi[gf!emu9q"YuSQhz=DfpK8/&6-a~Ү-p/S|&biU%li)0{R/jmhSϲSHނK_I8/ƈ߿:[Րf>sb4jcKlӊY<L=c6G_8) D`BЃ䮾@u{B12Pl*|i CJ?ùa繦&86b T^($^z:l򶱶*;"٪DiݰsL4-/-أ`.Nĸn\ 5IvĈFr6|szYiN+@V?0@b^o(Eh9tA1 `QW<<·G}c} <o%}wN;B NR)AL1wF-dIr|%^\;[q\S~3DÌD»@-NR5ޔ%@,9:Dmp;ij ÔznN+{~"O j[Y}^:Lj0‰#⼕!/ 5.5D/Zt|c:xt VӹٖvSW0 ё*ڵ~s zͨ6 Z.w}xek~|nkz0+c!^)AΝNesp |/톎xw9CGlI*#(AkOdt6ކpʼmmha bE",,q$V{&蘵0M`<ēAX8}Qe}6^:=]6tAxo) Z"M6XTf '9S[Td(nl\ׂ2'LS8]KС}Q=T2iO,fС/"H"0p@ o]|'3BC=M;1H/w |?~HJk8C0q'$߭Ɲ 6G^ojÆO,]_Y"YZnS@&CT k6TuW^NsxuqOT٬jƫb<rV:cϱ%4MoU%rIڿjF9{Ae`cG5in#,9LqxL(9EҚc:X+mS,kCS: _d{,f-%Y4΅b!:ld$u@TU^ b+XJlG6B/l zAG~ LO׫;qb!N1?6p=$U]zI'!tF*jNX./ dLO ןL;!agvI_<=qp%YyMql]}No$^܃>{Ci[ir_>Ep_B4 q/'& ?m6s$8)65.,nCT-)Z7pw.Ju^ 2v#h]us+lBЮ)~80d=P4-{DfR`~X“ p Bwx ɞS4c.ӳ"Fw SF~ɻk&N_Ami@{:Qs57E~(Ĥw)sð/HL //AcOO$:%t(=%r9^Df,n]27qD~9`=oOirDR/ Z S# :WQ >~erGR[2;I ~RHý64vQ {uŶ`[J,Rgl8xlTzHBWk>j)Klat6o'eԤ 2|VZ 07wZ|V~VFT R$Dv Qm $_F;j\Roc-n[aj8iH$k}tO+37;8)]tmA1:C>nz!ߚ䚟qck ߫Ey,sn_ϓB|>o:T2 Vx`އfG^VqV6I,E4',MU%+3yH"T=ꀒT *j˓r*6@tT)Kuzod޽xpR?V0IW_7;>Uqnۻq^8i2"z9m͍%yf BK.']hZ؃+K\ø^KXunKǒ 4i5J> 5䅥xݕ޼].g,Lh}|ZO˼X)h#1!jd/=Hr1zF"Q[K \hN0X aǹ诃\eZX*-[ʑ#{cwLROPo-H,P\^eU!}~4 P+==LN+.>S/".օnՖ6ik>:\A+~q&C6&Y{RvA&&kޠDJ؞w;k\s?bB?q(*S*fVQ,!5)sbhA2=e7O91/x2L6eaqT߇zv=k- Z逭&R 6:݆8m՞ <13HF}PhUE p>U~yu3ab~_ -/y_n*`?ҡU99(pdz@e|FYKDR#tz鼎f!GC"a_,?k,5̊EL>CmCO\W@Dw~KSRR xlstdk'{\G|p[@B04g5H:;Լ^0x$ KpR8 8Kr0ᬆӛo@*:;DIT /G }3RmەsFczT!C0 j@ZhR2)-Ռ[з(8^?W.VU '2>65H [ zFv>Qv9~P}{D)@_+z'b_z^7%DrYDNv $/\rV)|k0|`Sg&J4WjVioX`t7B"pBwp]LN e*֊l9Wῐ(- LgA|'㣤chVPA=*s!~8mk*sdR0ƎЌNP/h5"`ZKueJ?7GAuok?.a#-eĈ G[dcɇ "7NR6\݅7y`6dCjzn܅gyj\u\`CגD&Nsw3Y(SYkHAoLAz] *eGiަrC!XqW-y-zL`>n>*l*׀c0Rix3rKJB }Z2oRjxch4c)awg; )IVIF\vƴ?E*RqΦD3rRvꇗ'wXC1Dvʩ1Z,=/x4ϛ / !rKW~]ۗRG)櫭 iA &ٲoSSĘkR?y(vVh8^0aEf{zMo{ΰH5z]cط$OEd~EA`I;Comju}DD}Fأ9,j7_YЖ/kί3j8;@Ӷޮn X;Seg+84(s\LRNo[Iye#̪ x/Z'FbUSiϢVUfUi]Q{{zMќO `i`'R]+UΧvN y$QGS?Iǭ~~cbN`r8$unӛ 3(';I\px&1q\N.)!&̤vNI(AԪm,Ǻ WG\AOEA+2isÂ\iHjd&Iw+1vYuC'j[=b/6 eITja(/_TiOPjL uRW1'*d߾cEYŚd 7+)bn"NXl4bgׄC׶mt" mA H8]9{7Υ%C;;]l/_㑋erB4Gx;%dn÷kzD[H/:6W8O=Bt Gg4@bgA<բ/?2DzA{|.K4۴eA Un^~ȇ?/%;$%Q ,qR e(aj71pQsIOJ}^GSFk[bp% ](Tiqj *RO*P-Y𘦭pqe>WUi}4 57 R(곛7GTb:[/)j4b֜; MM]1pqj*%xmTF#hE q4: Y#;007O2OLcT'xe* D~`ߞJ+ϴA$zDį)e.<II>lj{KHK3$wȂFy}A"Cj4|.*e4G(}d@-"dLskh3Q.E_0, 'e5ͿuA4Me֎M kM^ Gmg(iLٙ> ~1^MhiGs F˹`+ l&IPd釸rSa,*mA*H,U)e5r$eC6:|_ 0X:~TS ˍYA,0ˍj~#F[ R [9vߦ"fvm':,ꥮ/dHUךU+Z$*U\5%i|S7cSGuhHp9*odJx]hQ2E!j *ԲT`o"5QA.A=j kr}ԞKXDctS;=~n]0B0'Wk L@~VvЭ `/RFxGS=hIf-~:&1K\G}4g>8epn N :-Ar!Hou1c%9# MsJk"E[ n`/ژ^wsIyETMvaNvOIJQeۇ9Nk 􆯩xF|tO*㳞4F뮇s_t@i&A/ x|Gu<:_U"w5m.?J]J3vc@ɫ#^m&Σ[|d ]gjXҗ2{!s ZEQrȑv n3Db<:zyƽ]t'3<8v\>En<9YF\dxs:)#(p [89R6+dli;Y<7\ n:x$gUnI`D % Dڿ1qrΏY93=rI [Pگ!1Goх.3E~RR[w #cަ%ystB WB07w9 Jd>Uo+cuCv;I P'6g@ :j}V d1KϊgIO8xaHp}cLbn+`Y9Ym6.t^ieRB0!fq"HQ@o-QPtPZX)6*=],,O0k"c}Nķz G os|Ѻ/L(]|xطW.jݖ]Dy=w.2PI} &cg"Y0)KpOٮM!v8@aY\`<0nSe=[jM,ly\QL}Hy+cy 95'+=uSj)ukD|e+ s2pƦ(wP~,DaSY κЦҐnh;P Tan}}@nNرdmWYzr/KBq]$c&'sxRXO_ˑ9hQ=fxrR6v>NB^B6rUw_w.3 :~W+?>OjP,9 g#F.Mv.`-C\Gy'aJC1laˤ/˨:wKzEһGj3{Pr %ٴ#"DS(I)pWA|)q4I<!ǐyg)7 VԲ5VEU;3~HOO\U+fYMÌ:IzȴV%o֠Z L[U\YK|J${ʾFKڻ1A;A ȼnBJQ2Yv^뜏"5.hBr3t1j/Z2{'GrU%0]q" UmEy@ S"ejZ0 ry#( 퓮CSۅIgIX%g(&o-%y[z35k4rTuWz 5zk:0:1kk/912<.F^η77gkPZK1Ϥ1-Q9HwUՀ㜗4ӺjPu+̑JdIPb8j|.Q݊[ OpD4Rb| t-z␤ Af;@<> ( }./< lm}â)  ke?3u0Gγqom,mߗ?A&|2Wݽ?@`P@0iU_Lqd^yOUax /v]j=xsUߥઃDOLP`SF!cn]Fsޟ}) *Ѧ14%IV 2R<Vh= c_O01X詀\ʽR,V8QO PE[Ҡ)—$>38g7@/6*D7Da~MIgQH5J?!40}_1]4ά?W#oDg+ ckz!~n}iO  _-e*.[43C9aU*9%_eQxh$@|s*M4s }!NE" mV78]vTEOv奵$Iul:erʶGߜ"ӄzKP-o57S37%D ].h ޮmncޓ+hjWpxk]Xp.PaNr#%gla) JO+ڣXZRtR1k?'˵3(38 k7a!=z(\W7 Hx&]c!JiJ8RU@nPYouh|&=|ȰqҙOm0y7{Dl|K:x.Zvؽ.IEa礕X% w,IDz:eKTʐtE _ o F8HF3,]ۯ21fM?*po:@([OnwejO-@&|5 & Aj1W:RտK5\UBt@fXx: 9S蒿eTN XȔɝ/!%O ^(!CR Jze.ȍiC߷M6ւlcp 4 )ULXfl=\6#;Jjq%!Q$J.1!yVPϞ36Q)¸eR{LA|;:( ncᡷ3[+Tr.67OR.Z0DHǥ+iCY-j KG0tVGTDȰ@N_y^ aGT'Br c8  f3AL[mOGDy`jv#i^R Xk=?g>m6fïܜ`{.) (^}:%ԨxI8nDaA, 6(xJ=^tr5LUs]>vfm;,-@tSgr=q` yȆY' IcCHCR;o |TQ90 #m4ȚFn{;k+uq-)` W5 p <1e$&B=E@h#j4as~=uh(}M0/|ߩۇ̾e/O=h/J#*3`>:aˉUީ#Y\v/;Irk_L?;-f\'EJ*ۧ5G·@4M洈Q:w^\$.֫ ''U1uT$(Hk֑8ʷ.nC?B՘^@œ:I/]5MD6wwߵGL~/9pYBm*ɲ#Ix \1KxsXhg9b v {1V_xG&b!qUNdt]G,ѼZׯh 1rKm01sx0QXhR~p2ٴe2 ߊ\|󍿖tIxki~NR\s >VotB(i`&eH@ȗ쒎e紎T/h0{>^G#9m~ᣪEn24xpWM@^IfZ}x ZZ0 Gejc˛؊fA.?}Ze tCRZ lmNY g!9Kp޺nԦD];$M Vu׌SBXL6.&.H. CT98>ޠ P' 9/ w1$|21S }=Û R峐Z7~컟iԏ#je+D G~1z$J^T7QDRoz[UBUvfɞ)K> S&X jxp]hßKpWWL >"~1ϯrR%~y ;Eu O`tcHP:"ĈXWb̑}tsJYw,0i]:֏JFgj *vA[U +̣}bkO'dLFGwEY$, ST6HN.\/@Ӭ~8=s]wӟ(ﺿ'f:[0wxt-" ?@2HFNxc9ZXl9i]HPSX7[\h+Fa^PֆJwLW͏ؙ9-oG4p 'œo ?sxA`@_L $ u=*ڲa 3(Ac3J.c]31ycygJ@W-.so.+)v +6_`VSpaA:DX_HL"Q{0qSkFwqX Q@(߆9Ρ QsL$`D 2)+~_gK*-W˩|av0oH:aYED=WC6@B33B`hxFٜ7\l >\Ms 3G5OeN#(8E &u~DU[VílQHV[Qk~, sS[+QP z 0]sN.!N<&t UegRpjA1*揷ѝ*>l`S+jml!u&NUMѲ`J~'$\:d7BhbCuU∤>jVgA,ZxitqyȐo*o4 s4V 'eFr o4e *+Gb3ՕtIGFìɩ=ubGͶ5\V;+za<ߟCEYbZY@)JVA8+mf-.mTn,8JnHXزӯxu#p|uU#ۦGnJLz!Vy 2aߔ@cx) d<l%^?I~hY9h V kg԰э y\W:gXAh6H5!1O]`įF4S|պ*`q.W@ 3`I0y~1*嵩:2|mRS8RB>'%dbD7-]?l%m랣1`޸D2{(Z \F+ձT})]#uC]> /\ߊLCj,$z(Ču>Z9A d^'}0dvļ\w]3Ӿ'#,ڀ+;(OڪKX-{Nsvl@(]c9\(?$L"3Lk?N=էQ̑13v.\gz";k|*rMN` KNJcSi15܇c7YE/JW۟}#9*.CWI薰%: &q #&} ElD h*jERS G 4;DGh`X̄S4G7@4D>YMh~H͒n2t_ @̘J `DG6PK_A ie|o#mWA>ci:~C 2J(!41 AAK7BoDO-48sJ.-8 wc,o_*{HCN\.?9]!xӗ69l֭*7oH NcH)`1ӼSpeJ%EOXHHW+m_Irmgsi܃n`ⷒCf/ [ΐ]J Abk?=Z)F Kݡ*j>V5dJp0_վy٬\cx8⺣s 31<=)1 DK9 c7^V>n$C1x][s\74\!عMڅ$TZK!v0">7A_>TXE)6~H0MK>1+ d fpuC !?|r($ye*"+ҿ?lWcʭZWUB7Qh#>y(ٌlc3 &щU\jk^4_.aqĘ>ZZEF`ܽ##n=;RANcל8[}T̿qOx0Sk k ,-p[rp6 h皓ʩjZ!4TI]6o(H0o|ԛ+~%Ck0O!h̥am)죰D :1ώ|d"w(+}*ҙޮmvyWvSAdY]5xTCjZ]J}nT=FWjאG?|BS[5}$ZSUR71ٯ&^#WJ\o?-k"S\CRoW ݭ{OheeᖃRf$O nPۂiwoě>ԘNV߈:ͫ 43N ǂ0~y ;3Jd46r6`t&T3ܤr*kL;\ 9(lRv#X3k`rLP[G{⁍LU-Ҧ&\N  NZ| 4'RgOpp5[I5#Kw˂dA@- ~ UL?-}esԒ,g6SFU$NLS@//Uz&2FI$54 {,j1yv%Dž ?;0#Ul6Lr_?j]C7?@M{sPZWٵ_~"A)۬?t83SAU)aJw&q #:~WV5?p*e6$EqƯ3TP ,:}Ų~YW,'3I~bۉb1OXc$OטcC=*=v!Z ٢k%U -Xd~ vzfKa+(!d a`vSIAT֮s5\Aq%**G@G-!8hB=FShO)#gx6ܻeXJ;B7A+NsL㺁mG?K-:&wF);[S9TTg.=K܇ {L[_|\z&,Ϡ܏l0럞`u8v^Lv>/S(R9$JIjÖGcɲûW;kYE6_eB "_ީ6 wx,VapU uRzʾzWFv*2TRC;Xh'4JPj\J9 ۝V 錁mXm '4e`_I/[af#\8Jէz1~yOCǤl̚H#Gl>Vq4aH%-3!D@AJ?C˶Ӧg݃f92@eS?( Z?Ol _3UY}ۅ&rKT/7Bq$ }Ka0c0^mш'ۋ~W/! ?(:5>۫>Q&G츀eAd!'jqŗ/ ܈Tdex1Tkb19xU/t|ak:)TW"&g-HgC^tL0I o`eKPd({8-sN;yE)гP0LHSWS+H qc_@H4@ a&Ic:LOSc|Ǿ*OE}`ț/ꡅ~)T@@;Iq@9M;[ `=lL㑅℔OESz)њ%i"x^E< ?z \eܦ^b*up,HW4r6uHz߾X巑F=(E %ɥ 'm,Ln]YE)X.8}ц/Mk_Ev+j2Yhf e/RvP\/#x́q}#IϥVэ`kar$x3r"}9t?5}7(-5wUKV{rIaf.QFFv%|ϻ͡o`Buw8+?v5AYmO~'ԁҌo?,AV`e B#͖k]Fb1d(HF@_"S1Kb?F?rQK(.c"3I ˹P#cM*3lA덚V1wv|e 4o'VN2*TScUe`dnxW,w97x!|.^}m.L#s$So8A"GjCsBU=&W2?!g᠇Qr)E9$?b?-М ăQXٲ<9,Gt'a ʼ#;]P%g,n,gi{QY˫$cƙ"8Q|;en6З0/ е?ޣ܁,_> m {(:ݖ%$?j PN' h pWG|[i7,vG%`p VQY\?J+@` pJi_~ %^jeJ=6;&c)~U"D+^fbZ(yl!&ݿȪGNs=u8[v \VNCmpM6F NPjH1]0_|y$٠p'{oLH`@H,=gyo;ctw*AR#>-UoKmLW+S U!y4pb y/bߤJcUZE &G!@8fϦ2K';,-UGJߋ&TĈȶXLX|LiH{]B(f+j٬Y؊u0FL֕'U2 5[1:}( -u:K}^t5Z9siscx3Yz.2k #Ԗŭ;ϟjED?( A:]E*(K-ǵ%/oB'Tx!GT͓p$N)33gw CCC!|14*s& gJ<zn~[8uUw=8J 5* YLP\M_e>{f }e G*^5G'aYc%?뉦K10á/UP&}J(AҼ2Б]XMk XRς:.l}ZyQ$u'( v*#2?>/! 6œ75 cZzJZ`,fy`a[oa>(P{/{y] T*\5aEmh'tbB&vIBYW~~LyEh{-CQ =[NGPE~~&sڗQS\_~c2QR!u_[| bR V1-Z%Kjo?߻h۪V'K^ry9.IbdD8C3@zGGP7I_u@+JE`SCKk~ Fw'~$5<ek _-rǙǍJ/(I4:E4m.;_?]=ɧm#!-!47˫^^OŅ3}={nFVȘ)z~+lDjK:?~L|׀=5YLPHYRH\ ,'x'Ut=~1ڎ*7aDN$Cwd+M?= rlL8;HZ|#W/ ֩# eՕ\ggq0rfG0\^7!:Ut}-N 2%J\,ΣP;ֳ??'}DQzg\&tWͦ<ΌZ *8 )Q?4 yh$H`Jf$m&Q){&v~J߾J n0"3}$ .WB{rbE{*uNen]ao%YA9GEߌa(F|7ܵҁ1ŌgH2ɨYv朿/aRs5wk}&Ph}S=Pdy/JE*Y| %+8`孮"K-;f#?? a䂏9+ow Kخ1~͹TPܛj{4aa>hK o݂TX*&}#,O\07%\.-+\D*ț/!U~,%p)Ե)#9υ !b0^햑kXmEQ8f~FkIb(7l!;UBO: vcVC~-}ĭxN|1>'Z璖}#r DBgc+fzEqkO<\)L<ꓱ_s-%U=87IR`ӡF¸nqwhvl0JFXqIl|az=?1oV .`Ş=n|Z_A?C\ҲZ2ie{vj*)}\43}0, **qhV,+2z'T7}>ORf,֨;V+1@bI C8m2uΩw;0΋Vb.܋jFBPW!Ž/MS\4Tg8o2W AIgUsJ@HG|ZWR[jBZXfL @Z/r P<F0ή #%Ly'ͺdʄWc3C573I:̜*Gj9 >&s# T˾Hj.!/:lZtHUVqm÷"1r{J7gm@0ތ[W7]y;6̓Nlj.2/ QĨˮ-S$Sٻrv6D|uHoadFEV7$]DQMNjc5\73 |ju9'\J"eT,i.u>ܺ*7# aLE9\Ǒ0SZ+֮QT]ٞVZCCέ6܋HN[bR&u:C[VۧR=ɡ]wՌQAZE6n_*Ʊ v%yt+!+̒k, xլo2OaI`KCX Q I]Y*\k[ i p픒8MH,PA4q$3;_^= LTJ 9j12xNSGZ:Ic!}%=+ +DڤP;K2L|&(0wkB#u;A+jz<$P _#fƑsv ?Al@/c7=Tϱ^,/tc0KZ(}'"kL wVf4]Jv_{5Tc-"Rΐ@ֶ_6RDKƙ`dKǓWI"X@Ņ[N(YVMvYp ue*zsc]f_ B9E_Obiyg GqwQT =4 h Y5⬆? ^E m}oKrF)1U0E~=~CK,~Pߪ] l 1fuduKFtɜ`ݯ~.Ar ts(A#emLр/+o*O-\ay WOnꣷn5h"kSc&GW+.NRNa8GmjXo=%sP_\,*JGa+%+*B) I{,^f V"lCE}H9Iv%lV Ԁь qGc.%[<F80PG5={]ƶ *A)-oХ\3 BԙO߉ӬR}E-o9}\Nb*1!`|qNL↠[ihx-F7qxJs`z?b-ߧc$-G^o [}`tslؽAP҃% o;ϿH̓稡Yͩd8vH521G!t!->Xf'ĂcG,zoroB`o4 +67LGw usLu_ϼeI 1#/k. W.!be P)gRծXKYB~\0a5jkk{ziy:Թ8!t"jWȴR,3F?F8dihPyG nաu[1z}=CJкqX8$*hcž2`,NSe2t7LRzHpI(_j[/BĂLP6Хʏn/H2/l óA{>N+\U)x0GOKpxGYxIv+x@E2#@g-qne%~܁+Tk/"gaEn.6PX|bTd< 0)Lr*E=T_<l5X,ՆW$i-݈hd8C'; cwa6hظKleCq>KEĶ?tȔ^ 2DT{^wQg>J;4*/v`tz|o Zy /%+tu78q*ql/kDE_TqɋRN1)&  #sm^YTVHCiV0ns6 Z5G*9e"VhDұBUCKxA'AɁ JWбf ZCըz<,7wKdI _!( 85|+>Gk \޻خ)bs|}[?pߏN:A9(JiŢf(Zd.K.tz~@́87"0l?<)~=P<$ V 5o nv^pml  @;gn7:b)ab`D7[uCu-QE#@&2bcʸ9uCNMC{6d߄lBU%";V4.6 |@/%?p~I: |R` Q vD"9h掞 SqVʙtv)ae[;t)lC.G76l$[ɛ23) oIφUAE;\A 218;$+$K|#Hr xMepSFFADw Rǃ rHch|yO3#h|`45:(F$UIpUQo7d]`yC:S3hճ KH^1Y`# /jS+>EJeG<_iFvzъ(t% ̎1xq£Bj?cGHS[xj:b.>0B!n]@0|>:qOOrfjJoQ3xpiMʰ\#fA[3K? a(J=F9?Kk~AD }>}ˎR`::@;U @qetbh%p4&\ɼwV#jDj cC>,=9t*V0af$߳YQgHY3VPL. nNH@VW9yJsx Geowz!7򡪶X!BTRJ-WlHgb}X@B9?_]n,/7^[,`L5\č+]ͯ@~tԕ{H3 t'͖p"5iA9T;VGEAVDB d/kMJA)~r@#2Gm?\a?ʹ 0(yL%B9Q`o,/{yOK2;I/D J@f0_`URw%(#5>Fa8BL*=bN"I)zXYD%%@@GlLvILc3mh< NJ~KEBwwd;,tL2h$dn*7Yd+1$O).Z7aLu<)mwqx/?Ph1̬lzp;T=(zĘ%{zeq ~- ?mRRy~<dMfdxyY^ cU|1p{rCaՇ͙V&WF.d;j7 U(taX)uC:+)6 H hAW1I4Z+ڙy;`i^ Ԉ__Bp;$27Cx_B1ūmN/Rnכpw\\\Q3J,'o\+@NjOϫi:WAKERWhԳ[ Et8rO ʹ%L1IFtaO9j+)w˙IKiFhLZ~SlP8!#I{^Arro)ZV}MԦӟ_G9\OpЮɶ=j;O!$  "y_e2hCФOypR⫎TCIV/!?\õ}VrY(K;EY8-a.̣!`&23r7-[ A[0@GX=x☜2d>&ݚ#AtgmHL  πyiy,r0bc^B=Րc6j8س탇g,85Иu>L/thW+ԓ?4ߦ5ɐsaBPt2mqpSS,C :49<)PLw9|aw aNFo#6pnS.c hbf,]Rg~)+/-v^ZbY =O5s"gM\Q'hǵS!&6eFoTL)†(^ tOg@s ]_fQ]Cbc#؆VxhwNu0Wbn9,Cie0ƈ6,6ƊA|yGOoWX&ō0= !A3șr7GН[E> ﶨ 檦6 iȳݱ_z -)%2-oBi NfE h͵Ņd;ڢn %JH{ -,8wk~%^UXdR/lsL!Lv.>c_j\ gNd~#g/=>l'|'RK? .1儬Fb֊ϩ%M·240[HE]f<9 I!w@Q8m #?mDF# r-Um8{% 4Anț2oY^e9gj{z;$KO|@xuy[q_{~дPs]qS$rF'+6fȺO;aE%#K5a@_Q Sh3E jCX{߰y!zlx[En*oZg?mU-$Tlb&NI;w%`"epҨVz3@$GDd}ċ %|MΣ@vmE.I'kq,\Owyu+S7?du\ :võ*쨄u:y\y\d`e!d}/0E!7n-i,&N+mMWt6\ d e-h өCqnO\a E`'R}]- 7- z +De~@a}SؘDHÿ~X!LF#?c_e!6J ' ^@6,YJOJ8eeMJ*9_P_~8;jAQH:@jހxaH}P^k7TswyZf55; RYWvE8eP6KWv0])!a3O63a,8,Δ5T0GWOu-4$a=2Mi[qǻĪnu7~hށu&M8e;*)\h_.c[}88R nNςog:X1$zoT ȫX .[STGfY+zHrǷω?H_/\@}J o@[k +|)˺ |My1=_ SFc ,.]f]0>L-eP* wIvBF;pa}qi;9 P3r[m ^)*$.t%y (a{.SJ;6=jKrHPf*}jn 6v. /UL|kĜih"an(v*So69>2)4KRUM39B vUOxX/>O2Eo1.Agz|n[J^$jBet6yNGsG<iLmt?F-  UgK,ƯI"xCtӁ朤ѵg%rx('7yDԶ/`-Ic-g]8Sc6nxF[ܢG=v??~"oс(KL,iڈ~RcD zaKr]~8 GKF]~Ʀb>k(\Z.>?!!0(5qqͥ 7%(Ug`m7d[1'Ff5 ]^@z 6'nޚ_X61(+rq=U0aꜼHxŰǚaW#mW8ћzQ p *t+r1pM^F*f,B5I?>Otɑ[V`6N,^{PGNh5h2>Y}R9 nHuK\ouaezx'?k3ι&Kqo/p^7+@vZP2\-Eki>f{Z/]d>*fd!576Ms*lYeAk,/*ah.@рg49`Hy|hr[Zd>(ʾ/Qy< !HJ"0꒗!h.s"_ AfqR-&;T%[@aqr0߯I*|*{3-OɩgFq%ŭw=3bCx #Wɚt'| [qd6D2Ho"ΘζFH:tOYPXz}@,2tn 1TV3RP{X2O,g`n+!:QȅJ(dkM,ź>,֥9eEj|,(8z etPsKuPN @mI:ǚ)jX֧z~ӈ՚at,2KPOQhx\nID]>U]+tNzƹeT?|9X$F$ NT  ow 1 I%S\\"~`}i"CYueJ ÿmJ؄1W!9 !qҳXg"'3]Ws2K:~ξWv鰗 ؤ2ߚ%[~9@S2{ HUgl9.,7/͠Z"/#d^x ^4,qN߻y.ǫ]r9`>~gxS@v~޲4cNxŜiCoe|&WǖFmF~ͦ3EȚL"d`qE 6ϙ:HqB0+jUX7}ưV`I`ňE@mXu3$H}B9_4l2gu+JWo.nȉa7KQ26vﱕ_@1S7UtUGA{Z 'YQ };~ `4#Ma9DYւfX)HPbEBjkb`E/t#x"|I5ʹ7xr5| &7YFY*/GH ϊ[*^83d>eOA-l+AA.UXºJ%_a'" !; #nAZ|RMwlE5S3V9nXϨ#= lVcyPvvfPQ}}5UoS-U_YD{w8hߴ,nhPl^UecT;+_ρew:uGv Irt&7 LFI^FTge`;radЅ_j13 {{)b\҅2XYqD&Pu)+V2nh,7!^7?uEҠ;L%b[Rxqh?8u6Oտ*a#ZrN7,Up_.,``ЖsWN9RBzGnE[֍^A@e!J~-4^~d٭&i>}u -IP>n$HH`!;ЈI*O-9]g V *2ti39P4  Q0ÿ9Y^<3K[nTۈNSBfh[vM,=Kg1ج*޴ y̑ݝIcHɀF:Q:DޒB !q@nK>HS%.b#~]0EC|[Â'dwdޒl*ImɜI۠5v &qhICTuSa%ke_gC$(/otXp2 ({B)FMqq:GM3(kqm: m &2iq&坳YL{@p=m>?_!/Gp=V+j}mG GץE,S%M]nW`-ٸE!l:hKφHWENSf0k)S4QG0:1hBqV+MAD|4_ Hqg+*!ZQ[u4;8jk#C8 s@H1G^7v5Fu<.gWܧcI' ڒ\1=[i y_=a$5# -A"jXrjF4gPv | (4@Y:]>8ܸb5+vC'өi6<}'ϛ)pŗ(} w\{/LthJ=%ثL`0r< Qhqp#bJFcgd= { դfZO ސ-WANWM i*]xπ۞u6qKбuEx *FaT ]7G^ŰGp9):ׅ|9r"&t4Fy *5Mh.ۚAn Ę>yG- ǵ>6_$q3qLvK稘+ +Ov f:ND> h-Ki+fHb̢nDDR|]ZAF\S2砺 սɖ@_VZqcOs3*QvEpwb)l>Wj!ŨI $&AfS@Y0Zj̺o+n.e;%ڶ-lIjmiM Vpj$yFj`z=,;ΠR($<x*_Qה׽r -BJ3zՂwr̞٢m]"H.skCSg*L(4 j%n<=YyG5+r%򛋱0 }^PYFj5my]B9bW,j\чcWI?o2 eq(G3X1KIf]zz3ѻf|ɔ}h$_ h#m/-^Z f/Inm) q>6ȘԷsNLXmYJzg3TLFzbBwz[} vxRټOi?V}ޅPQ&; T)TyZ }ۚ{nSpI60^u/zk\O;՗)z/ {x@9˹xͳu Gx`@n!z); K_t#-edhWyTiZ@_'˧od{=ph>u B_'Yfޒ2u"Ό}TP4;uoy'}'9b?X+HmtƞڅT ?9HUg2PQdd⿺4[ t)wJokө0!p 嬸=x2<& DMY8ZZ3ɺn9$tգ'URy~?{fJf<[, F3ou A(b@9i{۸))%fj{~ t/uo[SEW萅3+W 83:)]@0ȓq!Ű7j@jѕ?O]ܲH@3F%-{Rqe; vMbZ ]U=I5J"k鳇ddDFb9[㋀HCv 8B}1x*:=<2yx8iG V[$#CJ8 ,Y*1F8]@%Pim5Wsq=l,Ygߞ-2$Ө,Q~a+#l GZI@5ġ,Dmz}Uɑ]LGNX:qE{f~bY>h&ݕɜ}d@h鰁.$<ѦΣsW۠9ޱJ7t>:濾TYERw^/Y>؂:I;@)ϵV/y 9oj"T{`kEs̪iVXYtbGtrCD~هiqTpV|:&OOvh|ZeC7ll# jߛb*:q6m"R%X*L#:%Cmme <]+U2dBsЀnS{zH\^6*VE/$U'obJ>n|l'B_-JLbğ*vZ}Q h)ԈBYh0=YӾ=gjCvW=ظt2|bi;U:~H, #LjdZ~u-a9=xNhN ,6vȀ j;&~FG Cg1/ g쓏8 [@dN{gs4|Xz=s((9J?rVt_Pu[;Ճ&rQdlӉw@]$/|stqC@])B7#+@3c2ͼ](B 'Ur5_rEG٠13h1r1S}6:%z3& HF$}@>of V [(:%<𿾸s:WN}†+0-ˉgڶn)#5\,ԶbB#4cⱧ"%Pz>9xt㦰'gB(@ BYNvQ|udj8Ś$~dǨXg@ [nRN~jP^i4ǖ_S€4Lm@v صzp:")8֘=e/DޢfߛHWSZf#a {bt>PoXSx\CR;=` `d^]'WIEޟ?w~Jd&Ҩ\捛R!# O%ظ,.ƐSqmM<,;aE7b:ERA {'OkٕQhοY2W.M% 4u͔["{NX$h]{H95WJD%i1ӓ`h*9vuHyjpYb4llTPFMY&J "հJ y\kNH[j*`r<<\@xrۡ7x\@|W,o ]XC8͂{*uJd%:LfgtlSQۥr395TߢlfFPւ~ᝨs|4"ЭZu̳,v?EWeG7b᜻q~ӏjIr0u>ܳdT- ڶY3 ׃2^ŚD) 4{LPO}H9!( *&g} (^JRA:F.NZv3|}Ǜ^$Vw:%JN!u[ C;2cC‡3#YJ?/# o~QM ⻡I~#b-85K2%َ&9dhf. k$Z[0?诞^ٯ?axwznÙg=W-[ERF6R;g8m56ɛGAZ=5Ѹ \cl/fH ne۸c9zVY+h4v39Mp6GxH˫Uba.w UOw5Gas\ 4 mE4V!+>'|{Q͞ĵMt|Z S! yUIr*]$GAz+Zm[,QrH9]h#OG/,0bvij|E9;@0ӋŝNjK7k^}*nKVʭUs;p-7ño \kPhA Epzr*b|Qפq8K=ț5F#_CH6Sbl\p)R|EX 7)nN{Pك1")pX:VG D`%\焭->2hfVշϘ/c.ND\{ʻ՝iozh4ugsi pDb?%@j],#9nÞ^\l8HoJ!^8qA*;qy[x6tع n8НA6Gr} ce;5w$+c1bf9%iM }>`*5=䊆f -٦yp4EUѐE1F-f<( [;NXNWv)m!0E߾M /8f쨾ۛh7%xdE9Ps*V>~RD'1!tt9r~9%}%ۢO-|03x@p3F'6FHe9t~FUNk/>aoEl]'mk5q/~q5g[!@"ʄmf#xS=𝱨CBq -Ptػ|XWܝ:x/-F8)Tk"\X1O]16gIJ(J$NjT;UA:"=IjN rU@6لN.)&#> hpg 0.mb&FXRefkNHyx*Fhwuꢔ+I7#?^z^wb2Z'9>,Qffҷ +5iҠSɃ~|78+ٺ/ x{I& Vd)\bȰ4Dd6EFu\i9*ɋ?=T'BMl1 ~=ZYo93Ȱ}*6[C5Z8}1UB T~Ӆ;3 AFdSg~ISPgi}Q[5Bu'9DoeaOBDVP)ٿ9IAlyh 8~{Piv}ZnB|{1G}O8=}1@N.{%=ހ8=Z)OLpə i= zJdm)#tK;a9ZփRI{I3{ H[nH 'vזTBl.K^RG}H;݂5˅ZŊn>K'pY!DQ?f,B&n"QVʨ+k5I"JCE9|4E:z ±}CGbqo VuQ|k|{탂gi{:Т:9(iZҌH+9V1;j!i}Z,xZBU5\JۡvJE~` |ĒW6z})DdʶPUF WLM b+>N0{dXSFr4#}-6|-ȠaD)L MFa󊯦3%{!ƭV_$k}bCC HNՎC)QN9^K;^;nܻ>TXeOF/'i -縸U(;]Niնڊ ߪ蛰_I\T:F -BA"⢾/öb7%hΦE)\eW1x}[,R6rNBWxOZYX<ߋ%]%4f|v` 6ߞ|4kG6 j퓎/@ oBwB؍:`FSS:[\Vr.>%/(j9Xn=|[G%`b% ~(|ԙSSO{iPO"g (H QcL9>"[wah!&)a\bGJۆJaEd_Hp~qi{IQFxmQ @Kk*z(A.tzT+0QG}|":um^E>`‡:Ckgu fD}I\g1T ak\LMjFvk mXʡsI~M)F@4xASf&&|"EFNo[ij,,$4֢g@6?$)λ#~~7%aEm7%\UAH>ƙM0i<K,n܍]NJb7 N`_Py|㛤pE側J$N g J"jSaE6L؄AFΝV,}ZT1㢃(B?GC"3q$q~KZU(CϞ}1(׷҇-o\Kz:<\^)Hu+ؿOc_8SfkF 7ߋT_F /]?6 ESz;aX%m ٶBEC~-8h# q=ab 3e˻ e|\緯w zҔ8mIE AW}}rwuWRHTZ*AERc ei|'=+=}! ߒJ)`@.m 'A{lB㚬Yal&jfVV'W<e $,Ռ/:t7T%l]@w{GWm{IN|!'n^%Ȇ;ͥ! n&EշD:u'ȟ+~k$kA+ Vt{_.Ik`׎K@:gZۥaYzT"T1ޒ$tuCץ:Z}QǗB!i!©Fam栛H"ng?BqӘ;@ $Zjf30qQʼ /5,LA}x}Z 9 vTq{̶ojsS P*l.D7IdI#U)}eS tqOP9D˅.|CdV_A# 4_ 1 }޸}[)41n`5IXi+oU]q)VIyI[+5~$Xܣױ~6fb~TZ|AՈ(L:F<֥*b24i)sq *,k-]O.?RVi*&ҹX s3 ӔkM}mC)Vj78ɕ [?;Oթ3ܡZ,VJ3s%Zt2͎}r%E3'΋BL2h* ZGᅪKW Ic"ϛb!0,&uJ櫨jhEh_A$B^/:<(3ü%@[,8BN4zS-^x(E eiT~LWf&E-M(W (&Z;#YfT&gkCKE_Cd6%xeA{5)Ex]~W}(v4G:0c쿅Xy0khgSNVRi񝈯e;+OSa%Q oBNE'{'DgE]pJ .0mv Ñv*5M%Z[4`̦7MLw8^jR'NXAG-.UW\_EE;_E []fmX-(adGkũz/2&Kre8ubaGC)D't)olȟL(uP㘺/ݙ āk?xH?9F"mˏ[ד` IǛy@n#ӧ>w-߲_~ؕ% 1#gMGܴʦYLmh /btEAMgR34#KX@SB>X+N o t~$r 6ICN[tllc֡޲o:ZI HX3jj Ϟ4d{c(恷{^Z'7큄#R)`]zMULN8WdRV-=&ג5PoDpB:Jԏ=vԹv4<wyʷil{QGrXyhj|\Dnr2#gw׳i0{bAhQJ 2~:j!t.3j5;0XZ_(IlcYqk?@#>( iɣ#F Nn8?`mGu/#6klCFyWڐ""?5S|z~H:08U1XJdEqaLg݀BހdCj;lmܿ.юܯiPS(0V=v=}ydV/+SD4rB}:0Mi,ah5MU(ܗQq8-d0d}2kDc%}ɽռkr.Tvn2u :Eb) #N@c/(%Y٥<iYc&Z̉eՏ<oP0Ӡ-dgvi;5tV?vmmg47w4W(jrC8ŠmU'2RΣIoVPjmQ wmRz5XvIKj5#107o̺4LepK>;ԡ\Xd+ cZ3N77yu=FR(źh8|\fnˑ+@m$BZ2)bKI?4adXw5R8nѬ*} ph x SzӹunZ=FUz4Kohi|wJN$\܎`oj Ǜ >9p;V$'i‘J PLFb;ɖymu5@۟]bx Q9=hPiiȺSe/FY_)'̧Vg]lFÈs354 3c7S7HFUKQLrC>_V^D YJ$*'``; );U/JO{* 臃rC:uU,̷dd;nYkŬTƎ`UnrS E&NO;_g퐺a ˱!Ч߯Z^"-ipyj:4MZn Wa~ '23;7"<2D똔?(C.c!5VY[Zy fNlӪD#qCRoÉ2g,/Y׷90[qM3{0g范M&aF̡$>%H9)jȵ5D?U$|ioE$ 7O( +H2q[;3w} ? e&Zقݛ\.kLKQ5)ءA2bsSq8*dT݁#淋 La(6 <=x}@WpWpgsDDc*%+TtӘr&!`?d/?RFUV$D%vGx!iA *$x˳lI)N&OۏftT\ J}M7q+HXhӨNO2"[p '|Tk?o802 ||\.}䇌95wnS-%/m2|-cs%zUj꿎::$&3ւ .]5܄: o^=ݛWXO?(Nu= a\:2j GŒ5zvEf̀;!7ӲIBLtL6" Xd]h:(G~jFj @ b"NMMƔD} dN3pc~(҃Ob׽K184ɌsD;-gg`XYIW2댽,vWQu#L$V)d6u^N`ucn*`N6 b[(E8J^p2\^y" $7 H$(\Z3a̡-!*}^ i$h-6Ꝍ2,O(N (eeͮJ_P뾄i <4[C}}iX`|"y>mmg)@?hZЂc& mDxoP-u/$/+8ImXɉGM+?k Z1Zr3d%t)p1_ }zsF|ln}}Hiuu ZQ_ٮk:Lږ߿4RZ*sc`[uR+؜{ 칆`f?-И| ^K_V%cQ3A5@r19D 2rf|[P#l;"&%Ezy\ǧ-bA4.Ύ->/ Py# mX"\`?s|u@ `e,ۖ*<5H( n72LR+b3W\[{J^D<ƹWT7- 5  Åԙvp<Čp"D~$׷M7Sa{A"qO"qQ 2!6S=4ROPYѳ2a؛Jti "jE}F/X2^A3Rxcժ"ua!Ċrw&@ˠ 'gEGտ'ѓU˕!vGWG{N(^#0tCLo h}7s0КlwA6R4]lEKt)pZSMa;zX} [ tPjW1PU*4xv}C_qf #ZMޣk\݃|N ]Dӧ-#oD%*\RӬ_v:@ScD(on`oֳd ˆ \%܊.}R[_a=}%5AQ|u'q4PaIn$P|ew9ys^7b ;"EQ%$%Sǁae$9 @$ FGJ~a( J0J8 v^0wmQUQy}1Ǜ۝ ,yش$Nh^g@9ހRRB]\:l2YM^D~N:iuK%1QdHބ06!~>^ZtڑaiMtpy>:81[h3s|_:9gmBxzljJW\ I\"|3J/8se9 wJNٔ{\RH۩xjҖsPlħ6_w2Y#ݲBp9/qZf^ZQY\ Nr+S^WN^,aմ7?mYZҾA ݄J |Z|vgahӘ*7M4R[XQbݍ_,袯՗^w%# .{Й"I!ئҷm;-c;A<&#X|ݺ-zwCmΧk9pwNL _ bp|3 wTw (IL1εl^N?lg X\5ڔvgeVh]I0Lmp|{JœϜ?!w YU҄|eȏ W/1Xdt{0Ʈ8'ҕMk/[.u(t!rX bTϙI$p`h#@$HEd{vRi%$HPʣ?r ,{`4pfǎlt{=-ʔTP7Iu'#q.Vemu ]ÒQ'už*k'gҔ+Ԯur3%v~F?\/Zx\l ?iBjoƑrjt[yi H+`PѸ;_9}HThD.f.(7a*LB15,8ܑ" v :>C:ɑjo[Ֆ%oLeƙ)5;^3Rԗ,:)Yˊŕ25cZ ff=r=1LA40ry4MʭGVpis2 >[՟pePQ<mلم{y|@U3[3.( yB(KdNkoկo2FyDw;uQ?;H9\:n73Mo_f;d֦1a0(,^|O "b\z0u^l*{!͘p^Kd fxs1)i}@D&_t z귫.8 4V/XD<>(~9omhFTK00ُ5~_s/[YOrM>8g(~J"Pz$) &yBW[O/}U6KE^4;fE3ћ;}ʑ|ՔSE4. J-vxSp#|Ǖ>@r{P-!tS lqWcTfYݢ"."vVVZq]q櫜vM,w(bjyv!XG$|rb9p 4uu?$jZSu8(f2պJ`2EȍH'm^/,UʄDk틒jRຘ`-#%[\g^ڳgujZR? F50FlJ9 +Yt哝W4E€U;l:9+hpЭvk/"͍% ?:/zcr,JX A&]UI:b|aUa$)x3{5X&fL QOJsû];?]:eDF;enKB\H`SɄ-̅Q.ˊJRj)hakOW:k [= 6pqqTuK6π!onj1,x@_c<™?{uCM[OF _bե۵ SǞNDpY"3L*FK7[_g|Ѯ^ԞUAU>wUt4{u1鱑d-nT3;p=`2HFcJLcJ}@T2xXoI!Q9MJI>G8 k0d=h!`P!P3Ex*64=01gHJ֔*lY^*y۩dg2pхY8O4\gK&2[ЉcRf̲=Iygp)L1ဓi5 9%D %Fvװ 2;7Caqu̿dnn@1U&#"snγ_D"ffcTK@՘HKTv+}N6\_wf4+e]]^"ޯ4HtPoc_,Ys$rtXŗ ;DiiX׊ֽ)Ͷˮ\6N[/kpQ\?ݙO#gIeY1Nt˛T x1b2VR'IJH"[Rid-cx a9|iY"\޽ٶ](3dkCz<d!-@S"+kD\($M#UЉCr) qPz^bL;T29U?s{zzrmm=~]m,lqa< >IA+rp`GtlMa^EU=3T׃]^bBb'Z5˾]KCjbRc*)Y q՞RbG_H`@{,x(e̫=vgdw4Q"Hjh-. Sև`07!`I))l5 Ü(ʜ 5#dg JЄ޴shűuui,J)%Q y1-X$_O+?3(4ॵ" h g쳥tB[b 4XR}"N pZr#*߷|9iR +C)+Zxo8HD*1ES>'K?Ք6,PXlu+i_n1Rf9Aymxa]Y<+?eU [\}l }1a2߷'u@n_o[c a9$bR̨ο*"h/O,%N݊DA7؎[/ (M 'd-m9FV=Nsq _f(e_`JuoN0l[-߸puIK-tD Kþr`Dـ +/[|k8 gD0FP[/ki¡_?aJG1kEO:7#nH i_:WA6 gim6> mgyv$))KVe#L' 7t]zLH#78}Ӂ@l@6vޢɝfA z#>?YP!E TT'gpG HbB{wԅ9uZ1qK=KhAf9pz ixb o3KP#%TF2R J2\bSxήӴP<05H\+@z ̾΃b(|;0'14+ QMG"A(FazƔ|Nܢ±mrO u<: I+:9h;Sv96jmO85iqO Td#^$Ґ2{t\TF'$A'b臩SN_"(S[& BPB߃-l^"w(x+[V#]= ͩ[|)|6 У 'ߠ 9rx$m?5Ee1Oub:(mWN9CXe dI1z7G?<C/ګp/YS4j; ZͯKe a\@4c$yp|_2S2Ιr^{zG9y:30mzxek>~<`ShrϪƚ WZz_tK ,U5A:&A5%vyWOA/S4G!gLhYNnSˆ4Gm|~t]b}:2JE_ƾ-\X]JNRg8c.B6[ >d1FUﮄ<⧗4t=o鏲j 3wpggq7Vc_[t >( Z1+BI5X Vls2$I:ٍAAMά=Whz/>|ڝELnMx) 7ī>>hc2(~alGeA(X"(ҩi#_>GpHM\ݚUA( 1f灞wip3б2tCq1?/Xx׍_ھCѓ`Hb`^"wk X`ɜPI)߉u܁`k&8 Obz-N:dic{DZJn$w,}g'jĴy1}TmoJdlZLE,ўm%.?n#+8P\"EFZ8$9 "8|PO3vtϯ/}vk`A"!OfdPbT$^O%Ӹ/IʴbHDَ6 mUs +GUrIU # ڕ{іHg7sUSMnGA'T]aOwBWD1R@t}HcV\1# 䤌o(31 5Qcn1^ 1p+ ȦeSZbmC B#exl MSJɝb$knb-I ^jUk۹/(}sukv1nHrۮ251{% 2-%7uDܿclFN5J2~B*ApDYV gOFQ_nA(8.^&oB$FXXC鎓VvLq@Xs`V-6-cvxo!~L>ʸ )ok<eyr6 ]J]Sp< kH=6^:-ORzϪy{~E:?Ŋ ֢1}b 4ߧӾ Nzȡ6/14лnͅ 7_Z1#WgfSsrpt/ŭBb{0OP8VkG4FUo8"Z@^Y`sPIUmv |#6A,F4Y+t^m;!yGUUDRF髈=^gVo-pBHmnAk,Χ̭; ȼ, HQmނس,S}AkwI,?,cO01kk!<>lK~&J@/YVίYqTJ,(Gĸ \攅BumcT}ꌂ6qWَ,*9)N\uCuwW| jB=m*:(Js>~plb8 ^.F*OtsJ1Ujȼ=0òOٲ%" =\]6nrCZcoWh :7WNx:N}&fk; hi֕]:;#@ZQڅ?Mlϵes8ńCpX3G ~1[l5`'*ٍG%eؔۊ?-pSsA395ԝtNBc=W13uRx 2|Z =up*C+r7]$ }: bAt:Ix؂d]s ww^F_ 4z,aÉpܢJgAIVAASw v<3"|̒{ƎeU/B%Ԣ48GCaf\{c#yy|2 D~p:?ސ'8a+X r5U|=B^QbljȕJ(T-NsӾg7 J%[o΀k}IY5 b[s 1O ˥9F[ǻԲ̥',|eBo h&"if /@dsu:Pv0fTS3/+ 8,k -WbH3whcksl~,RHyPGyj1~@cq 6ޒ@SE+ Ny .Ƕkb>ٶfLyݣR#{27)J ԟzYOi+32p,W$1z50,JpE|>$R4^njm+~ FXΩ-s{7NhL~4DG1;jTV'3i e^^rq@We]F4}}oLoanfŗłcvzjTkbg dMoPxuR[4UѪwH %ʩ$$ʍ@rH"2q6Ťt8*ܟP(rgmDd:%L>ߡe+} U{z l#54DŴ*! H7zZ闌}[LۨJe֭)NhR(` ΅i 75 aW &ibEДr_(~zRt|[H{2 d|0}' }/7Tr%p; =YjcfU&^tͪG`"I,L4ѽcXNQRKYǁ"TVI&gN+<2xj-9/U_63p+ETќkZt{j|)6;)uCQiNr,N)ggiA#{t0?L{nϦ-2Hgt(Bʂ+*Pf)<_=)~̛u+̄sc] _1%}1*4p8= Z1sPz؝S_}(,+_wH>4 V{@煉l`BFg03mHi G&G*Å6LŹ΅ {ݕFݔ++ G JmA .?u"w,&ARw4ԴSeP?/&$k\B OrPi-B MZ"-Q-al!^CM&q,:GKxsN| +ھV-H;F̓mbEEEnF\S@Qe낮r3%f@ CڜN"u|j-z"WO].<,%c;l6)45| :F6@j{xm>Q&j\Z\l/EcoS{3!d,mOi_w.d:Q5,I"$΅Cf;E2C;"t37xJe4QOgrR/TY.rELeZfl[O+1?Dc6iP)/Ҋ{|Q|C&4rSZ;U疸 5~PphVCš3$iሕ8ƾKGU$ߞ˞^M*6I4:P!9쫿H_#|YEN|Q=W_n>ڵ9-H}<+ p.&S>`7;ׁaAu~_1ziCKrC,7ɩHZ% Q8*!V>Odt)5dkmϭ_Ѭ@c]z'm{ݝ T|OEp|?GPgoJ'֯zbl'I 䓋J%q..3VwyfPC~O빍Kſe*8,AO2ͷb4KIo}4;:w̸X̡9r l4K8`b ҳޢQ@́lItFn3̺%SYl43Oьk~ĔYa;xbSXi@r:P8qGreΥdiXh7i6Ɨ bә#x$%\JpG9JI!.}r)m ;D/`nb$yuTf8`H#MhC6T⋻W]OKH݋w5l Uu,v͕hӊ?~wZ{ x ][]9S\b&M|,юj XB$1X Bgلzz`q:k@$m؂#)Nܖhkڡllͤ8B![bs0@@>7:~ҿel4i/oz;sIb'uRȓA1$=DqZE$%C?cC@.A`>Upxx=4l\I2c{rb' ʊ^>[U82uČM^^F Lt2_$*@s 窦Ƅ[HNdX>E K`!_MwJ;9YNPA9^ +XW/duEnKh.ﺕdH>ס aHߕy"*`a4֮>ʹ曩] %\NlXΘ|v Sf% Ǖ?Þ¯ig<7ͬ KD/O.˼`M*ܬ_gB 䔕W(djsˑr؇v| Y nX!UW&1R'j7R&pZrnֻȫG6] Q릏/"U5ur1gk[. 4Tw%`{ Bz9kr\k+gt^iL9kLwS@`>4'YM&]PYgzk:5IiJ!_Ɛ)+9j 9t}d:3p]Eay pBҴ'eA6qh_t}ILVYb|ӛ湖S~!"^+ݝ0viCg&n@C>œ34Osi/DM<(ljiC$cpz*z{_ȩ ٢aS#@qw ! NAہ=}rZ~gkhF( fb_ZȤ:kӯoMnؽbX;p_w/:cAD =BH뚷NɁiY!jddp.ŶtYsV\ɊØu0@< %6^J>gߌhV=X%ɠ\q=m7fjȼL8r] [P 2I'J͈eOZH`D:a%f ;)NnfjC[=xrb͊B @QLR L8A#|{ 6 U:Ow"7`~~J{B# h)"2(d΋T53Y Z r!ͳpH* x6ڨZgM5Vl |@Wq_%H69bKsW6紒BU[Vyqt. 9έĘ%th!(@ fy< gP.\[Zիi)}ZY7|"2UyO`JR_=..H;#9%ORS@B$QZg~}e,]w&/'M$s"( 180#hL{19:8y׳D~%XM,4aܿqivWɃ׵}4q C( ׊6<9H=@lGُ![haۥeJo".-f]FZyWA^(ӒW7ZT|'8c RF_ES1U:oz*+iCWLĒX;4laN;Q :q@Eғg*.QeD!=%=#Pk<% fpu[&ˊ\'3a.iC{EQ98 vWsW6n}5l4JjZ)zVbx4̶ݸ.Teb:kN$6`R%-B{=2g^}uG컲;XT'-/i]'e&7&[RT1 i4IpB:5;w02mU`VK824W8{oiqdtD5;ߌ -r:ΰ= -6<ԤMPQ98_P;E&YSUwupy(F{#k`!1+F^HӶBd13eXxsZT;amavwMwZkYmP8 S3Ky@24dޔBkː22]ோ66cB~E9Sfs.%|w0c\Qjm2@%.#Ax &{jmQ|O7<Za^D+5Xc-~lڍz̆$F(^7튒xEIS.ϝx}|I>**& ev7i܈P"5JrE/<$`hgzVtu<XG׋RE2v[e!BN\b/oCVGL=o0bd?-84fBœ[5Wnr'ZDř0!ȨI;D ITGxqU!2Q@ )ȯ̮խ GօV+}k]d _MkezxzT 'AJE /nmW^`Y Ҳ.`Mk%z "]Z#1(ɝq!ʬ7Z)M?z5a_N,?\ƒ 2,J(.TM;}+;3UOe7€\71)&\Lkin2d֏J!'%r5lCawe >ůjt# peI o5c"E? dvZ8i;4n\ _ 1bV2m/JD3R`B 'ǦDN9qf83.tqD-{R慉q-@&.@͸~jXE=ʾ&6xELAyzTz$2 x#1-j>QE?y@zd{ƪG:1GgG_GA3q沬ӑR&]v ц?z!3 *|zGz ]?cwm/^8y q'bpը%&mtgW3#eDU̵bE3:zT|OPf,orm"GZCǼ6Nhब| 4K}4A?n^[ 􍥜05\5H@fCRqeH4 }[9|#nvlLfPf[}'Jmr@ttk 円]ݵLmgb@c6KXGd $Z7e\.M}& sDȄ=dk P:8USa3B(т Ceh5_h㟞c~@߄ ҃- Al7͡޼uX_kܧO+( xpf^Dž~}g\Ualʾ:͠iߟa/_CԢ- Ll}tέtRLU$w[3;DҢ@OupgҒTwn4KkG]s鼻.e[pI+:}g;('Ob)-iדr (c\}9^M5{oyL"aruztYpCw Nz6/p &H=v(/&'ߚKf5 !_F#W>!7<*').sbdK*mN18(Ŋ\D;N$ 萃6Q ZSŜM\Hc|3~~a_XTFA|\\FU#dEĦf6~ +z^FCtHJ` (u`kQEv}cVz)?"IϯH-q!}&&kH\(E8w+o@8@6wsZ 53x_]'{J _Hx F&[ {fYv3D\ [ KG>ꭆYZMOZq(<'朓 ^Ђj)G0xW43^k#!~u7S~"hJЯ ,XxVԍ'%{.̮$p1oX|@mQXԅU\vS`ҦZ@,*vsRAx&Z_:mr1sfxD%ʏj]@'&Ŀv}-]'^30*NbÚsA3# o+@2&(%o2mj $!ݑUǛnک'!]gS|N ?~cf(Jo]kO7SD=\jh^;Ju~X8ޚ4GSEuPNL,5xH ]+FN_]M ɘąjkFsu*s#@+tIDYٽ|SZQØlw5~lWf/YtRU= Sp;aOZ ~>>/zz<ܣ*1I$} 1a;Sݓ*.EU$9|hK[6撶=o@pn8M{A(P3LႩh=ymB.f ˵"c$_x9j1 Jp$]aW\LB(YYN^<›؊/l04eқQ9S ih1B0wo4qp]~Np^R/0f7twatAHh_ϲ U&)[,V-(ub&@%7~Vdʹ4~6 {ŷX~nHuhJ^eU">TXl4zPSe]M6ߍ_[ɗ>h{-^Jxԙfr~A{пP%׮%cP;R Xe&)A>P\TEɛLX"I>\,bz y02r5"j5= P-ń,@0 (@7jy[;UCZc䌠?Oz" TW@'2sXlX+3pS(m mP+&E3z[(u+O6xgzm:K:{"#&G+D[՟S5gO֜A:dR1$Gɺ6g{M- hse}vXEo11y̻D%J*XwzcpڐHoFE6<Ut4{(C_hܘvi>6b?m,vФAm+ %n%|qp7sK0$TE}HƟ Vg=qjy6U5r, :VA(n? ͅ_I2#&/KPH*.^A:jwښ)V ^;:iܬXb_&=Qlg+ϫ>39. `\Q3m㏠Kr_VY(p?W#n."8}hT  1 K&1O%GRCu fXjH0]HTV|OX:'W##8RB(BoLMia ,Sɘ-jOK׾j՜lnwS?TB5!x|t7ix\LKTC _To;.I #m[Ő0Sw~G^#-mmSMy;O5@0" pңS|~q#oI3^#-֋4h7V=ޚG5*aѿ(rSB1u3'hQt?QKwr=gXlxhcY+7h1d*V8Hw1%yWN~`ܙO[Ak|㤃1oHe#\[ YeZ$pl9] *#-"x/Y Q#4UX  RWFЏ#ӈ_4ܸj𭁜V{5;#U֮C!p33!`_תOA:SBxKL rzv9XZ_̺ƴ9]۵%(pŃ!6pbhF%CǯpFPtA8eY j!oLl?BS9YPrƣZ5U| *kބM3 7D5Jg" yrv日i.w[H8`I5e5=m8Zϕ*)HO *D)V2t.+Jc1D/[|>@-TrBaާ*,#{wCŽ}֔[pJQGK6^6(6 EaO;kJ-(e%ƿ(*oH6GO@1m9,gHP&p(TZ8*^3!Etdٶ*(XEdq"ⅩGG'Sm'PeyMY za2}gm ۭy?+} Klt7ŁtAVl0@| 3(/Џk΀¹DŽttaU3:^"*#GTɲ8/Y,ntaZ}ފ-}FsJIƇnաJ؏ ߊr=F&*=a>++'u'2LCFT׷)wOR\\2IeE[7a/Y󎳑㱘f#i3'_.0p8_,`P 4~#֙$<P*9n8]NFe^|~jhҦERI=,Y\x~x6ΪƐ!]Ch`^UɌݘ$SUDxauZ'(|Nп\7H>7 OPWA9T=X'd}8+Xi|(@5/ f HuԢ^rW2Tqߧ[ߴ[ N-DnftP Igh{KYKcꜰ+܌u(uX*p/tmU$)CZ Tmp,Ⱥֈ35 l:sL D"V'THW)n['^ Q .C?=dYAwI$z&#Z-+FؿƸq\lLaXRf2lFF}ט`|L*usذ3^Kpj2ô}m5x?Jj!%+蝚Vs\R*͝$;QP$h@& :Ψ_.H:|(TմWzx3M \;J|1Ƕ=#g}#leP+>φVO*!s֟VX_{,NxMR8;]ԞD79Cpٿ wn ؘ[HMQ(b^;DD|&N y" r-񧁙9 TO{YŸKI{,(G280@ E o _Cu3*eA.ǣAdM:kPmUa7(Tp<8ǁc|8| j;SiC$"Ӷ_m (T%{U ܘǰwW? atщֈ*}{M鸋 9~/P V`_iM6e lzP)k5`i?audsF!)m6qGXEg(iRsJd#Yv'MP-+Q9 ĭv)D;=|*@DQ.A ۓ<)3 ֡H}?̈́d䂔N7nDp&bsg(]i&x̛^oC- pF-yDBEEӕ,8qVdy' w+9y>M8FhF·Z6Å^ (!v*Q"\3{B4 @w4n$Jչ~?5yBKY JV N Ⱦ:y.2*Y^^lEu &U.oDѶ5 7*zߦ6F["N~BqC.&Zu0cͥ MJRae'Bl6K 'yE]'R nܓk y\1IBUK-zޡW٩g|]XA2Pn[S6?o1rG1يUXm+{f%hVDSxX$lzCv'&&2Bōdq_e58I;ęR$WW9A9-#}UJO,ys+#%S,_Z]D(ѫSmeӓ jExHZ+R8 $,]]9"uDh-p Cz5HĕUb3[dlJ}]һXN^rZg奪v*g |NRB @DX G?S:/ DӳxcЌ62xQR)ܡ,KBJyfL$„Qold{Pkkqm*xNhZ372:ŝSU*cZ:3֒ )'/pO#R:|ܪnL(M^, E^$m6*[5fDJRYJt/rQ:\|Ă`X(ӫ)پXt:ϥ][1`2b Eb/_EU !}c@Z\ ]@G v[1J^ ?J8Š7AwԷBI^=%4n ]:Lw,"ձ8ea$$ad'Q|(n-Ip<+H'Y*Է |W,R &٘iv2i瘿dfs̬&$}H  H.+3uIX<,ux6%Q@=Ŝ#o&.p }l$F(H yS18.63E+dξ |'V)[@ o^_ P/5g=!f;}0>k 2c l(G¼ϑ0k%Zkew؅}BrecURȇ<ɧ7N=M@B ]!}/抠/tS\/i(5SE ZAwY{yȤ~19:ftDd ٧JLXLˬ{dȷUTe8~5n(urɨIdU2R(7iM䶖gDCԗ;' 6*3_u/WrC;cJh M&哱?5&ޠWUn1}%G@`9s2+ԫz(`mib$Qb;IF7EX* cKeo4M贕6޽}wp4;,J4¿xiR#X&t- B40 +̘5}TIN 2հŃ'j+Wr<|Eq|ه #<3r4jlқ<㕌?[{CRi=h^]j>ZBۭ/ tUm raVeDy: rVш8֔ VI<_E.—#@b,"@L@謄\ҿ'ȁbǞq'yI=va6 H9o-iz>&ֳM2pSmy>uI{K,S0ГQB!Jx<,m+`ӂ/n !1[sW#rj֙Lmv#rĿ> я!J)NBiz8:Q2og>.@J? 9E{Xj hqɺ*>M8j;Y0GQ]ˁ818:*r 8URm]= EhH g˺Hi1rVPa{)uOOMhY8)q77;{TAKzx62\R@?p&=c(UZeh$jҤ{hxa6v66NhOa07lt~. Fgxc7I,jo?q#B>1wğ]щZ@($QEp_M qu&nUc])E_O7I?[%ʦ?Ϗb5K D`=b܈oi4sMlSa݃X+zYb=) 6r:M un.>D )7>+gXJ%R1mnGʈPrleS[ nƟxR_B!roS4(&ilYP P-;:s+\.= Fb7uGp}i*0uZ=0DϞks94+~rOc92kt@kKv*?a5aa,b=I//"T%39Qq} 8Zmф t 4>~y1AH2bh M9 ŬjH?Nq6JZ^4Ȣ1+6ٞ$*ũYQEXk"HvV}Eۍw cxP_ޟQXhjJb1upngȮ}mAh6V 3-9pd(e%Mѝ,,Dk){lh F;l R5rv)tyf&uaL{bRXŊ{fO2XySyM۽f2mVITN+'b2hwܯcUԲ?;0EkpHJQ9",#iu ~ώ9[+jg'4r=JC,TPLT˾WPH6Rde#wetWm3*КaD.q%ґ@H# 3檖 ?KƨelNC<ۄ;O'Y:pƋ \* ,wC^H˶P#"Sqg]NA_o#j os+"7}[ N:Zn?Y3^ 6ؼVdXW0 jKM@{zq4 }M ڍd25]l(Lckziw+a<-qHPo3o 9L(LWi4 j38$܌ĥ~iKBz5J1fqׁY( ButۂjjA8'k2^tVƳ|%qBdk}"^&n['O H4Rif7wi-MFXեpe*@00D- VþtO7;4^l>9OMʊATGE`ZIΉvsm'ha h0QKWv8KϛtW hMf"P_RՄ\a_VGhȒLLY]e $RvM qjf Yi-,ٍA6Ѭ &S8WU>VQs-D3+Hց9$;zq'j 7Dm '.mww4tC afAMy^bw7H3"tL=0G"y:R(2 PrEBMw tX~6tn%/'А6.#,ѬU*fl?M=0Vsll3Á(?hLV\^Q2huv,n{qm0408!&}ml-Ә]S-^0:"@HokD (1V9<3-B;JEVhQ^]Xk kymWD cn}Sw7|Y̊XWPqnwa 4X- |t}k7tFH/w@Zj /aZTؙ5&@iQPtCQ)QcAMvzNPr 1QŽb6cIGO34$GkEs#R|}+M\^ۭ':= j '9W=m%HEO};q۷cG{s($^BDKa#sX)OBqu-jysI'Rܳ N:v6,|婛weo;2ԄqSm s;^Ļ/)SIJslc8t/mLsO.H4ˍ?22✃R>ymU 6 r iD}}4խr0`ʼn0rL=fI&3n|eS)#۞/Iīl/΂֪k+@nH@bIXvpG-f/=SW^Jn-(W[ ǻzyX:A{kJ P t"Uv;Yq7aѧ6X(\# MKy?ۊĚI"[iGL5IF>Qˢ!(wSu~?BL:%\Q2!.>OC'P'&y >ԑ7sa˦쭣K[;M6v9a! `ZcV'܉@:4pYW;U"iQP,0e2;@K ڑtdh&:[ ZETEޜa'oN#cfU$/)K>O ?wf>aDŽ~8w!e8t}5jY$g[[6EI9i7d|w.8u{e(RtN7:8DR71)?\I"{ιjJcT A7NwL˜2trBx/RQ i+Qo1&0ưZtZokRkSyN[1ph,bi!MLbV#dda1B޽XEgꘇeF(#ynw_Nlat |AUc,nSɟM7.7W1hU҂aFo}H6atD$*]XȨU!HrKlmy,?G3 0eCh;i7op6J]Xv󝖧93dT9 /$ɘrsb`YpDyknTob"A @*VK.{J[ѵ>4YT5k#ҬB(9vMŻVɲMÊdWnQ> 1+cR-|PHK+ptiW%2z56_`{c m |гA_d|l7z&TKԨrN_' 7F*&Tʁwro=&МoT^8*0uqڋclMnM jJNO|VgV/#n!q`ͣPMT -ÓnIi4aKa9ԁMpv@X|,IHLc:ZL7El/A5isTՈGVbe&\DjĮ[ߛk&,X6@zNJZcؖOFJD$5V@L4 tƛV|[^YpDlŶv~![mP0U?%O#HXߐ!WҚRА+5 Z'fo }R\M݆W5"Pb{kk`(;2c7<$Ejrt1M3g`rF\rbĵ":a?ū~%B<` PN5ZUjSv4&՜I2!eAD+,7uc2V/bÒ]#jpkG6Hhd8G0+<ڑBNxe[SxHmxݧӱKx$W,;!eVsuKE10:k^mKP! 0Z7-0Q-dMdUYu!]IRl<3 HDKv7GZwB;4 ^\ ˾Cbƈv}0||&+/٩WpFik`1.gg5^:o ڼ8L3 lw}2u%Tr@&IbvGk,jtYElH8?HKٱ`I1)*zI9P&0ܣʁ4*#aYNd$VPƳ,+9;UPnSuF}_6L5~mۈ4qK70@ݸ7ne8y}sߊ!L; zs>_kʴ$8%1m Cx]7_!iKI< ɵ<HGnyC.5ځ_SfJ%)BPo[)^:@u<&.-x#%K7'"I. c0ʽBWYc{F)D RmFWjauE\Xɋf`=fó؀hwKe/[c'IaTegqqK2eݷIS$zJ|"d3ǹ5YW1U*YUN%I 2kp8.jy7mE$`?,ndqw0?:f7\s^k:|J=zr4P$Uh>u߼q@;K Ŋ6I2zNV. -SɘS(y-oG %6`8.cb8g~2ܔ(h_ۏnhk-lj5~.2h!dR5|M&u0amfUxJ.Y-wҍSC~c)vAĪu`(7^&8iV,WvC֌CtS{,&doe,hrK@Sw#Ph+@FI2Z][Sl-V< }],d_H#AZ82gcOnb80KhP%۟ %Z$;AGClF66aS-ڋb:"{KQEM, WJyS"1ȷHҥ?`$TA1jXPq. R;ɻX,^{_3ow0&}NQ,yd"Laa3yX林\b|y fCҡCT #]a@>y *ah~_SjZq)zu%C<`TLQ-b*=ƧbtjMXGd`z`}<-.~(1I>~ĥ4+FKo!PMOu`t68;Qв)Lږ {#sB]3 "ZT*LJ=,MQqv2q |Q^;xHAb޺8ώ٣&AC]:q]j8 O^uB?dD"26nN伱OrQFv, &'g 6fڝ0QgUp4]rk<-$tw YMs^@ 2[*f otJȾl8LnoCRB\)45EHb>v ϨtW27xɮSʜ 8baCdI+*nz?B4Ee-g쒼_nj@KT''Z4M4Q޹!$+`k}iZ)> 7Qo*@ngI/waeWYQwJ[N64X\ϑtjC}:\_LA4^G|mOhD1SG7#o$UxܑkC5k9 "2!# v'϶d|.cѵP"u^;3m9`ç߂pXZU#::R=h#2f\qJqbί&}E="/ SEhmzxhJR_ ȁ;*<* vt__h_,fcLuCXXʉǽE3-T<,!j5f(iU嵰#g7 ͒T`|^Oqs UUZel8_IT?h{ܶljژEm;FG<㸣c%Bi"b@ɍRe.I@mȦO}S෱w"UKsv-Q$#GvyL\(=WU';]j:?D#>k#HB_`Cz>3Jt} X*!e%L+ \#~n-&Vo+]IhLӽhsX Y[1ztaz©B:UwSbMegP/4uKc3li:+]+,Qs)(a8-_ Q:ہH!ݻw>0#.1M5.- FjRf}ߴZ'"〽ap,~)_FX0.W(aDDЊ~ W>2%Q Gus*=Ҷ:BG54l^rȅ R&a5Rńh |-w"N 1ǘcfI&vSt9ƓNZPNfV;3qZA>@2%^9ފiAA _)J{Aidg/Y<0ö9qK"^ߴH/ҍDKHZzCjŽ0IC(}LSXз#[^L_xn> YT^'G+2n}7L>( ^Zْ1+[FdkT h֙z>.0Iߌuq3u3&c MYO}{fO.l'kp05srC69ܠ}\/=isl}9 6P8)7I_*_4f]9R@f^> Wࠨ? .rچ, x Ď/oGӕԕDZJ Ͼr.^ZZmО$h쵩]a7\g%F"b^ƒB :8m_nzWaR\w'gj'4 ^(Dl_Aaz%E1!݃ :~_Mj5*'K8S+*,q`ywwlt]^S0u+77zAYrB<$G+!@9rRv18e$=eQ\u%j1ѥ))6߂`d͉4 k}M,>/7 RW|1լBܲ6\+*ѓRpyxWz @H0Vܜ(s |v7 pqE݇T(%1Ewj \ZTh>޾Ndj:ٗCY~+?Rn5+"^QkNWJ0N'47N D> vB_-$u]6;JxC+ ԣAk:%6Rh ^_կ:SVvl(EN [(x dЉ4ztpWf@ }uЏBcPrJGذT L ¾(ƚnU2E_XjW8:rvש웴c~cqaL#]uo6}18v0HLJD *7]$S} oe;UqJX0ހ`E>(+4J'YI|1 ܏6F*(Δrdub%05trldOǔ N} MwX\3XY[Y}*;c5& fDZ+&kvK(eSty-w~ 3y3۠N]|#"&QbI~Er\'`M\[#@_n^!ic&DgUa;ߝ_H] 1(jeƺICc]YI@\6zקc3z@jt-S'z}uE9.7ܐo/3Qec d'T@gS3ߜ$ptHn6=Q])9dDYSrKR< 4 T;8IEb=_@F tWNU֕sfmݰUk\kBaQ>CDr d;@" 4zRD閵a~yw,G k1{Tu^6K/Z}lج;X)bKͯ-LY7],xVje`puKH`h5"V#{x؂ModQlUxf|xE3Z5дK~]v'2iP=ƌ vyK }]$lwe0(-zI^'_9ΕI|h{_ Y7wUD, s!:.~{%Hmk?}`lvQGE-pɄ&HfEsd뮣ӒrLY:dd([y,J]ْq*Z>Mfm.0ٽY>,alv;#D$ zJ#!hNX>H[SB|\{%^/.8JK€J탂WԳe,Xf·UTboM!/5hNQp)݇Sڟ)?|ͅɼ]:Г?j`xqt2:JQ333W$Uzqy`t4l?;^ݯA ,*4E6Hdf^5ۏa#C( c@NH&c=F\i%~o3\*3<:}ai*0'Z#(꾊C ?*IPV3,tt"٨eL.kecMcE;wx퉝h@n^kKgi349tw+J%CJw]SK]T9(s{( Wѿy'2[t[-,n@F&aeمM|,xc^kvؼGNM\@{W;8`ecƑHG\#ρ&  D.4h@'Zbu T2Xh#dT|JNDܬmw!ɏ ͠rJyxzǬM^Z؆7${И1;bAA[X<zGa%QKTr]g$K!~jwa[[z3r'w14ٿ͡nD[5V90V"a'9^'f"^(cڷvq{:)RyB:eF J>1D`H[adUqu+r'ο ?E.VfOfRWާqAUP &3#۳oc&eb(Ye7IWL5/d1 싄;+2cNݗTARR}>H["Nf傠jqv5ƯuJ0:*8և% }lz#N#F\8`q|}hXP/=n;)Pcѥ̑kxAmJ½c18-cN67ZeհR פnH(Y{ w|ȠFrtR^oM5kLj`CQrZQDGhx$mHKK/V6 O6`<KӝPĥUv_w1'K`*FN'NtLE΀ ;pa#1Onh꩗8@ <2ɝ~KkA*f˩^*vԔ6.<F?v^fYeS?wD7_!dt%Oÿ-S+8N"2kp*Ty1GM>d*+0":_C{;"){r3^&Me'akovaV(Zx9C|~>,qK"`@GD#|z;md><}c׶U.Eǟi` (ŋX9֕?ShtN9jגC=`ZjO5Mޥq.0eov[EG?nPo?ox- %wQ5ĈcP(m`1bѿh톕Ix&j\n m+ v LyF&= 4yoBiKիJ5eQfZ^XZi48HtCzlDkVX(yul -[ԹE"![ME6*cUzdR{mXTN,ܷuVͭ)6mvYqx}d!ϕ3V ˎƳP/F!{QA*0Tۿ`/eNkFr}+R-&&ui 0cbKe`fs:{!!ZPгXA򸚗 N]x~b?7. :뙐[TLQ_DIpp_Wy~?f ?1!"s׉B4\OHP2'Bs V7u_T?WKvqfXaRrQLtv#S>S{/c!'I6eRkzhjx2qJlywNEkxqL3ս<9~P:o˸2_K"֦k-G0(=1@10#KOCs-FgS Q>ح"/V/bUEA(B%ĸ6;F. BDm/M~f39_L3f&tϔYa^kRkIMdy\͝P,ף{CZ_`I<"޿NK޲v𪝁U< idb]B:~y oK2L&^'nh*juII E;3 S-qVuz(ф<騺Ax-wF 0)v* |,2I˝F(/Zd;6|`LPf!<'o,Xe)~LHC c"R؅Cp vB̔oxxUpE]TAjZnՄe&\z⻄XiEt5kst)U8IȝRh*OQdI0tKvF0ugb^W;Vk;5/NNGfUAV6|e[Tŝ`e\R :}̈I_wksp\e+(9x~[Wu8Wis–D/$s؏LΒgu`658uua݆H xOHF{]1QǜOXiCϳy(*:itx8bw/x Yfё :!f*CDm =[]v2\h/Uht3'Z+̭Om'&*B4u̟lIrBmiXl(S3E<dĈ?"a.( [a+`~7Q~-BZ;\Y {`:;W ցKBaQWYm6Of#-lh$gʺSs?[XUԝ?2-xbW8s;_=:96Z;53[Sq|P&-_)҈*}1"qQ:d=.Ǐ6rܯx^l)^fy1EFK.t5!x-JNW: G~ctXGMMX,fGEU^@a1e@,tmD}{N]VQйQY<,1-{NK4tol8 uZAGa<^+N{' e%aEN x?C&| XR+2L!r'1\%Yv\6~Z h6mD@,)bĭfO42sZVX!wD5nG: TKq7vqbq Yk!1 4lu## ^f,+уH?1sζj ^:^j]Mj'Lw^Յ4Oաè9l`%(G􀄾SP Md7㪹@APn){_IzznO(EۄX  Zf~fC\rŚOn-:a2J`{WQj8 ,-ݟ.anwzd|O0 ->h(hcE$}p^MZw:-\H1 ~0LVԨLWlX4B(]E*(n P`[h5 Fޘb!Q+OPrG*^1&b @l:ҩ[DڔKO3_*Z\lLvW-h-,A=- W?wr}6c%!8  T6yIx7G[d}a:o/Q0SB^YCnٻr Dgjm3 K-WcqDSVRpXOZ2s%l6峺}Ӈr`I3Z`g;jU#KMU@:vFْu"@ q#B5\Mr ^Y_2dE=ɹ+Ǩ%~X~qoXf}:lYG&>(|Smg"eRÀj*eoPj3;f4v*er/*V#>_˾ `~RRiS[A$;UlYTp,Xup˺]^>+Km RWd #JPWzCJs+<۷wEqPI}V%+(~ozC"PlNi`3՚Kx/@!@;;4;ؠJE 6R<1ñGtZ`7JTYȷ?gמ`.N0@6kvV4>L*v;L 0x&܉ KBy~ c+1b+~2!><Gf ^qz$lI.έ:\a*D03lo] өVrjgcp+[XSW97p,"0GdAl}h4j:e `o'h lRMxf9M SqOEU9Q@Y(Vi5٨փal HB@@jĐ0/ǩ6FY3h-=l/z[dhjply9QK*Ɛ kfs(M[[r2Q=P{H.|*M)%6hsZ~`{E60Ym`EBwuzO|lbv~=:axA 1Kr"4(]<ۋkCS5N/'gJ44e}pc }hXY͡XCRCH8 ZX8>1X,\rl(M^K9:זMߝ$CѶuk*<)!ҩdv`PNώCX1eW) T-h.sȍ͹293nTQ3ÄN{|`yDO=c+V4E@ReYz';U _D?$EEM"99^./46Y4{ÈZd31&jѧ6wnBs'^&19^Fv:2Ո5P0M SGIG:8D6U~,U>lχPVK#b$VD 0,9`n|# h0%~{;ukįݹ`쳗fșX}S%~٦))aj7scZa`^؅zJ-O1@ȭ@[8X;Lg 3t~Zp6ɻ,E¯* 5[isWZx䆤W|BV=*[v,qs?Ct e3x*-vl^<mw.-x\WV&3M_m~ɥiӝ\5rerSїjMrQp6WiU=Eiwء*(Gbj܎F='+^,yL,=J`FXw$%t@D*"NCM8ǀ :-0M{u+ZM%Xus`Y>HabH|VByI{;u&Jf8ߠH"21/[Cp̪?й7,K[Sw{?^4XH}8ޚE:-+z 7[ F1ӫr8c*NyG(g%9heO׀]h-҄vvB)BL2dzCRa-4@U8[:nT`xO&imd8`}촤&Qa= J"#v(s%w `Nu"'bg]䜓TB<^J_}a(J"\T\Oogr}nxhRaWӒOE*j.kv)~-ja$/ZUc9&]g9bWJHu{j{Ek(Іp %oB:@{ =Td,ז_wDPjX&Fȝ͐"@#ZEs60PҢ^ƧrI9pOKiү@XAա`YS,$swqA9W < ҳt%BMttca46xnI[M,*čUrr}IBnT'薏E~T 7HHI97E g_)znPOEz {Q6OWʯn'm H"J0bX9ҢHx\15hWjp"5xT&9Զ{ks9 Ѣ}lk}ynܘU;Zbs9Ȼwhf=RWFYʱ^DЎ8Ċ6El]/<%q< ##gNpcoht!w$`ѪR KeXX#/y)naV$HM cU4$1IجI(ӣJ?CtfbmB @Zm{Q:K z:uȺi>b$X+udo| oSlC?~x\eD)[VROW=19|w}ű{NKNT$m5'7tT|=Xn0D U8+0)!#-&ƕT%CI]pr$NՓXG*2U:Ux gK QʀSپT]}1iR{!疔7YJ;#5 bP'eIZzP, 덽mΔ*ZP SB1Q4y( &Ω!QֿZdjH5${9ڡ,&I"I3UJXos SEļ, n"3Wڎ(Qx4<"b}3@E tـ|8SÒy c%比hc'4_5KzIw"'k1Fih$_ ^ '7HÕ>pm0xBo NCD o_wf .Lw:%'o׈onQLMv5ǵd{A R\mGX#xjZ"ҰT/^ X KJ-Q&@@\4161Ace|@'%i  r(*'OtC Y&FLy/\9Teҥ6V$)f>g3+M|c1ϻWqFNP*J٭{ԗ*f'CZmU4W? Ib4v6FO PI"JNJZAw$DqJm;xWbQ6v݀N%=fLk&Qczs` ^K%`⎅&M7QO=|ܠrV;YO/O9$nIoQA3nxthGlEe6^-?/n!.sm;g.[Z9Tv;¿ӡ*mgfXPE5!@|+plmR>j.r8~mrI(9CgDBrJ)CFVK(aPX+wj.?7*QbĔj0ȅ7g8^.B} q q Z=Tg('!`&kߵ1V9յ yѽW<ۉx>vZBGk{̌!#nKam ~.u;O#R u=) [K 41)6Gnsl067ϒSAB'8HR-hF~Xœxr[@teK=AOgl̯DWG6,4I!UK[Nw4='7B_q 3=ݑ)m=-Uxjpwͺ8"^j/B&>t)JP3L,n0|L"lo\;yWUY^Vrp@^pyOyf97$z"cem#,VCJ~+z\F8沨֟as{O5u=mpc*T|FdFr~ޯ!{OP!;Pҟ`"0uâ'"6)c Qut jUW߲*pɑ%T[z؆?6K-l#D%-o-WIs`s $Єfl[3D6wS(hZU6ʭ^(s: QUz< 0&vprdvt5 bfDIϬU;U5Y\~֝luS[+#j=)6P:0umhgْ ~8Gf_9t)DU>e Z 24@{8mk'a|5*k7器:#-\wjGpnB܇?,NO_%map*ؽyܧp5IF FVM8j.q~!> wR?1cǿ7{ (WIK${v\ӑSn8ٗ1Ji7?\/ J851MEl]'PʼWW-An'r+phӑNB}dG (]0+{BRʲV߾ap\x8nj4gSnNNS5z$2Dz(2 /߶^A Su\tո7NZǝ^{4~2DO?l'dF]﹆#U}0\qy0Yd!DzQl #} Sی-LKdEBh݂NSA= Z先LƵ#zۆakYޛtr$B'eZfxy2sT5QXk0 mbp01蚺D{.圪8u%~ҡGZ$5]9pE;*1w23ɺroآ¸V@vƪcru1׌5 vV +=r`dIc>y*Ը,8$" F/PR (x$}2Xu] ]$4tf%+U2yY789ONQfNݼIUI1|-H8n@ؤ `D'3Sz=x4 1hݠznD4zf̆gHHhKEcVuICz5""J,݂߫gT`c"9-n2O42q)~p\ϕ}+(8__'gCLF';۬BIgJ "oSGnMrʿ%r]i8P"Fx=[\9Ct ۩;J6 j<"K.M'ZXBlCvpvH X%5~ MJH1Na7jɬ?glDrlļ&ȶ7Uw^]b4̐tMdv`h4krݲOaS":I*Îبe:QD8'Rbpp=;s)J9Yui|l4nb?+A&谣 lxBQOȠ)XHȋk8:sdSX^M z3v2i+҃$-|RMsX1r -gtp,aE`v*GhyE G5fykMu4Ό|8&H11#٨Yr}$>/e5btQ߿p#xw\vw)NQ[zlh,$ٻƫcԱ=mI,Nh2I=!}=K "MQGc53,?8MH^@H\q 2N7 n#D cNT[Ny0&?t-?LFT훲G0!n ?vC_aOäMq=fOs!nZ2[2:"3|vhMs0u ZR~0>|cF3şK@k?Uò}ꆳ<=y J;͖٥FɽY^Gڜtyl@o"3Y?,qHeQT(^ Jty×8ګtaWA[ON+D&]]ڇ]u%*<3z`'Z`y-^J&8Ph)op"7ƼNUm@dJi"ä2};=tU:84u>I5cLjD"` ak;,^D@TD LQtm'M¥5Sϑ1vXij=*#ds[e*nm" `ԑITXe|s򁗊\J(."bH_ {${hľ6JЍb"% ֱ2}I hQ؉ k&kRJ0:` ~c$ˎUJ29Ǖ8Uڙ˼n!\6͢ytSp% ]rnro<elǔIїlD#Y͈n]:>UrI;u,N(QNsReU"!p"]yP5<IJD-iFHAJ/IA[5@m軻SR[ٞOTm>_ k"Q*;FUd1VWFygYPE7-m;ѠPNCvfhbGC ZME{c9{Yʺ9\-W[=oJ<9\J yk]3<3q[gW4r~rt>䩙trYxJ=G:JpY\œ.S"Dz[\rܩpg[B^T(PTqy:=!=Ak'~Nzx$vNӖIj$(%ؤLW!hTaY+0v-KD!Z1ڇI7JY1=RYDx jF觜m\@'g }f'Ir[uq%Mr$ #,ӨqZ5< sxb\kvPԱBf/P~"`_wߖ)4V\L]˝eJjU  LN=_NgY˙O _Jn8RWq%׭;/L`dIC|2nQ:iDp]za̢͐31Z;"Տ.E0nvEoٮ`͎õRZ oѾ,c׺n=t3ïDT`Y+T ׹x#?%Df/ؔP+T7 OU-/up>MVI(*L8%Rj@pT8|VG{R5C膫j_YaS/H-0Gĝkٷ^3g@/ uTn;n^$fD঩?<:\ZHgS ,yϬ'W޵kv8Yy.n!Iۘ516 [7BGfܥ98 DІ&>(Փiey՘J:z}ݦZ4bڦoxC`Y('~n8Ysg5^r!Kv\ASH\4X/&NJE^AVSZW\|ۈ ,lz'۱'̏&Q?@=}\* |֣XyǑHO7"я K1eiI*(bdfU#ߞ9:}}b pqGļ'o8eȏ$}bKP+A0__'G8~HGΫKf/$,!zBl*C\8lfL|qB"im(;K?dԃbSGLuUFY5ic%}lSi+o10̶w~>ҷ'6Hꋙm;9$ :-Ux&tu(R, P@_1q9_C&OKJ5$_aW+"!EcO[풃p Y@JUC15UH9 Ey盧_%'2rudk:=|8L; FԎ6Ҩ5# Z$΂(Znyʂ({g9^r"xV\@ ,A rZo,AۇmK\V–nWbcd;Y藜zLCbŠ [XFcnjq69h1j&*_7ChL E8%"Fz}8l_T6(i&G ъ-^*ޱup+M*qM }G=: PZXqWhX*]<~Xraκ*(z$!-xYF1S P/w6mw/In\iF8 ՛cAp"[қ?: D\ M]VyAI9bHëͅsgpھ1Lh3wqs4!Rg ͨA:P1pJ("d ,v4 sm0H-]8E͚w5ՓձYZ"O )jPVHiwH{};f{l݉$ROW̝ >/߾ƠH296D]W4*jIy!{_<0a*쯊gS&o$Z|FQ /C+__bڼy&ZtDʦE@:  *6%#qOR~vz >+#&`ڈԛ;PC(c17j{/"ͽ֡k(|,PͯT9sl:R{/RdH9oGZ̻%g[}Yz$ya<lW 6FQfrxex/ MG؞ `|hi"ĊwNuSZ\"tm*Ujp̀-b)sqpA it8̭h'@dzBwdYzŎ|2",1s  qk-oRpUfϭ z%BCq[y!V؆NCW>Xeڠ7?l =Mb|ΆIbJpÄA@4x Z3`Ut {mm@"M; u̖w064˷02^X+ܮ%*le?t>|yGJMHXn[r:,Ux9T_k `öhFW=G RIyHTkB}ٸ79ңA$ԕc9tDs@pM%Ts 1`d4OWcevxJ!^_m$R\]ӡn:i1t9:i٤9M|zng8xlntvkiCRE|^Czƹ_Z)"-$,0(xk<6[ Sa&{%}Ұ' +V JJPCdi8}y,dUP{(R"~Y$nI0/+k1.Ϲ'%mმiV*^҆htډ]Z3m*s>14|w~ /fW3/ ,p|M8ӠϼӑbGWGFfX-Sw&9C(ρ6$*_m9WLKk|!(*O B%S[p4J#渪Ѳ fb#ickYJ;wУ}? p)2YNRypxGI(wD7{cUCHܗqXBn#oX`IL+E ҲbX/VLרp6CWf{ ` `Wi+SA|Vg}wK|Bˀ˥T#hv4i6^BX50C# i*3ǷzhGW [9?Ap#r_9Qsb4;/X2 ^JA1*_2ێ1"UPIt` kÔޒH1x{ʼ:0P2FNmh'/)€z@9X^K@^ԴJ@)Ѫ o/Kru"gD10ٷ!DHs_Ukc@ܫty!/xM w&UⷹN ^ Rfi> G7 bred5`#+U$z6rS#'GlLJٟăzN,F& " ^*=&FO$-=5c35/ a@_ G`ͽo-D׼-dh7anh韪qq:s5 Hl$ֶ[$wϣB!)Pu. sVf兞\D߯ E0쟦^vbp@;h\C~'~\d= kUf޳)- 8IFvд,  ÓQb&(T[?~fpx{`γAŇq5G<Ũn >d(c3YCSb׈4 H+52n78Ufwy j*J`̆ [;e's9]TC{e3%9(@w܀`,U/.aԍpzUh֥ljД6ΔBC"]S3]hJP0T_ZUeʺuQ*ij ~Ob4'븫al9F KHuhw%S)$2e# %N*Q dz|r;3\8lmffAr˩\ҽozBExAuRqH !?&[Wrh>;;#u 6mVjiAx!#7B'k~۴Jr9 +7Ȃ}ْO&Kf^XbS~mֶj$fxF7jZRKG[Q%攍(1,LP^VLd* \Qސ7 /w~ )y֐r(IF58Y!FzI0\HU r OSԭE 4!2fG*I$`LMZ3h@<}K`΅]] w9ܮ列3ҧ&i A00z+qOͣiw~kkHi;znu y`Rm6]YyUyRf9ṁg&¡bgi.;f*9'r&Υ)jX!Tk>YP_ė~m,Ly{:Ns`)+VJ:ϴߔp}"S1 k U$'n%zX枼kó+LP  j-Q.&7~'@KVxa (OK&&n9* GvYF&AR׀pt,h9`VFjxVFmӫqЏN":H7ɋkj^8/TP sF9C˴ZFm22 g>4G«xVO2J:'=ȦcΛ)soY 3WPn-GS{ԕS+0UjƒWm7[Z(GJ,d݁}^qQa!f:dMn*Z8`! ޖc曝jq'})H= 6nW\|@`!²s^{Iup!&lɶ[1uKem(4:ޢ8Lۈe@4Y@;Y0T,h[w5njA!S_uX8ÞvtZk]pZXj,ۙWkgQACEP{ЇP/dwtM>~ ^ٲͤu,7m H̶l5njkU4[D=oƫkM_(V`J82i3%1Vp +<502;DMJ%62տ[TVȚD Vb@T۹c7Υ)e>̒=ȢwhCoꎪ?"5:֨2ѫk߬F{]oe.}B٬]T ?[=ΕpWXa&G(_oCd!olpAG mr"V_"$m3{`9q7a20MZ0\-YIt%%;,_x{Qʼ}+(XrjVg2Yߪ.]mfk=KPc DG+ *)4NJƒhSb]l8!>bFh,m+bf_K~(_qht@שNGA#'&X2z''<6 4q}xEnH%+9*$,+Kt0ϑ"4`Я6hȊ2y5gzg%1Or?|'ޣ ίpt9QS4i\3͔i9 l " [5,@̀f}arI&e>p)4(SUaǾ66mz7w 7XVw[z72KL+J'އ[<7&J,^8ӳ1Ȭ8kPtt(9,?H8#U!][QEyiV~p[1nL&@eS.BVp Zio~e.!'3@FM]B'Dn74n)&!]>(ozEi45jf(#+Y` <[0fCx:}Mc)İ tt~ڀk -/ݺ= (X7ثX;MJB{[2eZ=) 9ЬP W<Ҩ`Zc9 ŐފۙdN>\o)ѴJnR@$:f>B($5Z? >:~$aɜ|#Zr'{)B%MXC $p"ɗZQ!u*ާdVRRnN0YWP+2fHtGlo4ă<R^[C+ոiQ1AFǰt+MS-%nK*'z8q[;8ftP2B?!;No6qˁlY _SqHT0Q1J]b@(=Poaf< 7 2 \k:Q E1D8>5 4?&PB<$eSZƬܶžY,NICe,kZq]aϡM@SS^apBu>T0rF[kKۄ#t$\`ub2bRxhMds:nNvHJ^a퇻Vs!X 2)h}DK&g4M,]GЉ?PGށڱEw/(☋ZsG4d?秇=}&0Lf5ISOZe"]ZHgVܟAhR)Pexd/1ah'4)s%9P(,~mauÌm \'q|5~7܈W6zA bKQkÒ87E߻PNgFD*#h_x=3't-!g]:oWn͸SMVfϣ[ێTv=`tb~0" UN-,S/ej>^ n䃱VkIΗRbz @e9l5"%ŭ8=(`zp4PD3t[PGAMUP;ON9Z:7q <}C|šrLU5hu4dHWDc>Q|mT^0ZSԶWXNICfijTEP]l^i wh- <"(gd!/J,v>U2m Gͫu% 5 D@el?AIO>~"ȅsӊ4vck+ERfsG3/~ _Rm$9jh t#-q0*嶫1 jklzpfF=&䧢ʗ.n˖"RŐEEoB{PߡTśHgis30JTϓVdxFձpXDIR3n9CtO>"Eg"wzqn~ YєWUv n{D5ۊi?Ps|G'+`.OTyֈخiFZ8c~\=xbD)#tKw 6)PdXRtAۗ!tp'v [׉3 r\Bx/>X@ 'Y AwѸIW#D W{DV:sB~ٷMWB6۩ eJR 6 :6Z!&=69)ed& zQiX8 rk(mJ ZI@5?A.qQUW*o S.m+k .U ht/2o35|_%rJup"A^D-C!ʦ|lTď}ks JrclU+ֲQh$ = |KJlvae_R[D7y*b9-1,;yNj@ₙQ)>cGpLΓWߴ;OhP_6h\'Zə\ ~;>wzYno~ϼ7}x=/ Ϳ"cI̥ڞsO> 03I kgz<(dϨبdQFAG"$((*m5).sTh]󝵫{&Ʉ4̊d=-^ybSfrպ1ІsZ]+"Peo^6cJIsˮ& 253 Ӯ9}N qec[|ؼ4'HS.fD4k)?$u~RzBk˒_Vs&=nl,9%&DD$+Q;^{kC0+7dn4\x6^6GɺRN<^TAr`ZK›72gOQCѾ@D5eAA2S2iF =r!\S)Yw՗Ps`k~UsHrc<=7!'~ j-l@Y( S։]"2-I f[@I19C U~QP=$zQꝙDh %n= &K"RG-}k\U1wk5JVlfaIlMWN[4б(dIM tNͧnZ3հg2ѪCSS:#gNǁA꬘qh~R׆lɟDkfRdԫ r'be\QsJ2S+1POJi(WA;PtپBcyL`aJ]^\0_fq`Xz" 31;U?l(`ЋKj ӵ %xl#f؀F^{'`)dtXūbs_prg.liۄE 0am?. u=̦&cecXjQ'ܔ"`; $)_zoX!H5e1?%XP¶ n8vIEشxj0A`CY} V{Lxh=2 L8Uj&xLH 3kgY+Yylހi Zͨ.O>q+ahI4maPQ[ONiKAL_rpC|55µ{y0k@eX,f׷,D! fQfN}NэMTDr;)x^-l΍b5 0&Prੌ^vi~4jS_< }p'1}b&N}:O?__KXʗz~="ݬ(i;Q&gbM;/1!{)T'@:'EUݎ`U2[T,T&3&Dز΂$-@wu-&P H5IrK#g2 4Vx>u]vdUu#;Eqd5BN;OQ>6ѝ+9+X3{ b.*ߤXq?cWVɶfnLznUu2dLʗm'k $Ada F*#,9k[(L氘}:w}@9A*_ثT[Arph=}jOY<~̲{qRt)N۞dU O2>q(|0hJs`V2}t==9]t-:~̗VO=]ok9VJL)*l2掿tw.%W>|̀' V;٘md;XlhQ,lKrF ҩxΧ .+cw"1G{1IMxcj`sG!U9ؙ^lr  82t:zu&?!zҴW8`ZT0QEL!hLy&k` hE[)*zika{kZ̎ f I.jcM`sX0ua&]T1UL~+cg+C3oN+ Fǣp] U\Za ʬ^r08*UdJu %Z6Z߻;#9%WY=J:Ȑ]^FA9 Kd3'1 ~n`<@nBɾ;aҞ`jM^L?jˋH_D[`=vq87(m6}+j}pD{ ӸtEQoUSu9riB+"{mQ /򛻁[)(h2CuĶ = vb~*ФŚ,涒s6#YSݛJ+LWtGXGAdSN;_ FMn!5SYeK=*gƿcKVYF}Am٩(I)>J5ᘔM>8鈌_[A$zYHj1\R2f5CW֕RudJPmFi*@"7*{uhX̏,F`X_ޯqS5rk7`{W5+ab/Qu= ӎ3ISѕb!H֊4+K Ek${HT&OR+na MDp8̬24ץo~:CkOVe|dm{^^Kgq4E"QqEh,?+ ltٲ"/2jCqօ)bʻƸ .GzBwֈH>[e]._|勵 2WsS䬑2~ .ap]nJ[5/n J#Ii}^O^d/V kx9ZfK9j{I $b)'{e$Ty EHs-0_1.emw2hWEu4wNЁCLZ-o>?-T`PܹPQgi'@4<-dв0;fXo!oe &5v46[4n6=U(d辀Qh"Cken[.ړ ŧԣ9 N+}٧RL(EݱJA4$YA8J{ha;:  "`KczJ0 ؛7~3OEH R}؜<ҒJg  dY0eO6Pb;Om qJ$uBRg v[ß+5Q4|V;f3-JW;߆.9w^ ӟ#S+Z>Yg,bA9!8tFȑx;X504G? 9Q)oP$4ߒF\ ʁ\w§5D!hm>f//y;{`CoYJu geo(EmuDjfhHR XT`OAL=7 Ӡ:4ҪIfǢo mjlS\jx%}ܵI 1 ,bp{2MSpLŞe`3)%9x{hӪo>TOf]4ߡTWgCG]xESx]bVX.ҳ>{oZ덍^>\Z5;)N*鬂`ȅ {v'ra!L*)LېBgxeįƗY[ӐDyǃIQz‹b   uJr Ԙ.=>@SPP2 /2|iJO өcbFx7J`PcGhr㡕p,KJI_"QFܥ-h]+&= !ABȮl1gkfVh]6g\Vhj fz䴠=6&j`_O9&p 8P%˾ҥ1P~<,?[Ma|⿟ ٹ d80,M1,H ^?Gws"EJlCwtg8B/\D¬ ,U+/¸#Wλ<[ĉ5^6Ơ~eQ ?'w |(ͣ;6Rj i6w&s aEc2UK~U}wd>;ӗ1F2cN8CϱɜѲck8qS-D=PȠ@5QEUG֥::Xy$Kvombz ڈpe!jW[TBכ e$bNL>ʻqo6Eg}HcL&u ۟X2[ou`£0Bsp9qMV@ @6 mvPb4/o @EjcMba&S'^@#4({v|ѯn Z7yV@[_ƈǓ>ϗd9ʆ~QjTQrck'Z|m0/ONj1KR4,j8fɰD'M :T;!驿NK@ @Սm*Ϲ4~z(ERaQ_lV\>SX!m6}RgjMi{>Kۆ 3Cm n7'uȇ` &Z/wkћIT%u3Nƈxc ԂO|*3ѣ`7 2xZ{nTUD{Cȓ'9 xR3z$-09s,`\Zѐ54Bly1Nraձ׺ ŧOI#G+9&thHd=i"W/Tw7?ȡlwxyL8( K9i-Q[3bϸn0`lT;GO=[^)6"ΝE `A/Szbrl m=ʘ0@zqOXy|t5uE x`&>-\4=I0 t) 䍷G\s[Wg8K>i(>sIGȵgӪ^q!ECy籨8GΤ75U>Dy2 \G߹! Shk2qBm0I&Z7ugz͒& Ws똨J1pkdyFHEl&{FrvKF8 U$CS5 ٳK qϼKN`ПUv $`J+9/OZsڃzO1m:FO`;lCMy:ɾ;;Nu|{շ'@V0{h%aVS6ߑ${++%8OlDP#E2%I+ٴSQ(}M~a#܄ *J^| Wq!:&l B.Ţ1B bgE' L/B{c1Eڐ[v;0Qnfh?,TLvd[TьޠaH[f=\ V|֫`jT/  u=2[W" {osQ3̂oAe3!P"TG&m c2`8?|0 eC;dP`6пB.0H#2R/Evrk%*n-TP8li\po/m.'}&RT lqM f&BvP+*{ Qֶ.{,>؋FDt2# …l_X%jjZpd7"\{\yb]B/Gʐ[/,G`MG@:0ڃ$Hg<1M5Wh|VE% SpCj:f"u} Aٲgav"@Ȣv4%DSШ9Ad^RzT1ir%ETs΁&&.kVk\fA]o+3bLS]l-)6&\S|n[kcaڇZ&Z{w'Tf/6s f.'8u6G,xڱ"|'OPOSGk}fw[Wrf ߐXkdT×4y5\ZVTi"l;!B\s_J VREB`:ϟ:E?TЮ>,Z\,[5;W b@."]{Z <ɰkox^#GG5ѬAY~g:D7?t3?^ Pi;g xWZe܉q24Ri]kUp޼Yo0,GQ&6&³xH$LZJ2-/ZAtZI/RԮRÙGhLGhm&`ߡ硐Ʌ}sG]LN|vr=vd.NN6ߒuq'Uegbt*X>P]h¸l2lM1^sL[;AɜؗZ 4zЂ!eOH`Ege"Mσ;Ee>Qn#C-8TG}FI'y?Щ ɮhIhq-oZ(2VDP;ٝ$)V~2$Gd 11YJhtM /U18"׀rJIE뽯큤|tUv3Ukf̩Ĵg`Gl[\Y!lzDeV*zk9O\iђx$lJ*d W!RU58]ʳگ`OhQfgi|~KdH呐-A`{jDBeq6 ^~Or=sm8˽i\癅 (csΉñhJUMfbh.)]6p@9[SuP_' %EgIǻX]7eU!V~2KXd?,F$Ed&v>oG} Nnle۠8Ar s,ٳȧ\:FgV1E8]l 9[%)elӽb/(ke.ݻnk0k#3WJ%Cs Ɲ9Xc.ұ~gzW+@[OկL+0oۊVGA_(9 Ό9M1;:ˮ͡ͅ-ϡ/&!zK@ z9gzpzf,#pJe^J\ftCp$󝃩lơ4K^؃TOeA(Ivp Ʊ)rgj=$148QJ~TѦep8W N \D> -]-Wh:"?a`N wl.Z{~raH3@^4@dW|2`Ӓibƃw=7MsD&S%_Ra?; [i%Yt {)µF20 7o7JFpolí=IF,g)߅_(/Ⱦ-*< kZL$%W1p~,LӮyNH|#HĚpa-fگl`7VAv9ta'yTʟGPY˓ ~uxw 5M]5AXB.;xZ[L|m@]mb7/uh3l8]s I㨧z_) ~Yp5JO fA9UBݳc3BxT^)Vʨ9rK5b8/ZɱE\D 9tt@vr„tӢ6)19?~$PFV$DhD녤Zt sP;Y,[41ynO>Ḧr?):GcqUFn|J'6iS-I[eĥΊЛ) i6ѷqqQuDB0EEv. N M|g3=ӹ~;eB|A&ƾe6T$8R _xegjo߸K=?})2Hqǻq||x:A Rtv)Y+]˥4{Ҭ*A u`}UGӺc)0!7uR}×<:'ؓ3_'kTӑp«L)bx>Q9)'0W/sA14tÊOʆ,Yf]H\c8Bk1 0>5;ފibQ":䣫HNٗ䛬uyMk`l:Ω0Fb3ee3Q-w.^"8˱lͮ̕~TMoaf7{%㨛 Zapo'#]`0Z0tKrc Ht:$!(`TA h(h'5;pW9P#Ҫ `2 j/l<%B*~q+7G3Purh4] AQuAʘrUr9K.dy 㿉Lex*$Yv_Utz&a?51߰V7cUI.2WqC{ࣆ6O].hs֎zA3Cw ^.оFyvo53'PʐÿQ 8R`D]}N?Uޱ[ʭ>'u[>h|3IAha68wubؚ@;V"ϳ0V{qɜ3֎׆f(|g4 }FK(-Y_y1I04Ihfyts2}aA3㣙K)CaÆEzPm+^Fz;R wr"q¨ސߎpqHCK$(wٮA80>!Ԑc*CnpK}m8}F!{t=%p Qjyonbr$b2j|5%ԛ~#^Ukd;JIIM!reEBzʖOu1r&IsJiE.Hp>`CRSPr1p7>~?U;3𖫍UK&m6Jν"榯~yx8j66d>B7z`ݐ^N򂢄L<.B҇@O wos#QrUT>:()*dEi̵ X#Ԯ8&nk4)J7y75Uaup8ILKIP0*׿xSk x+[ NR-_T`< .v5O1m5V_YfL:~f[''6I9+W๓l5' dzw1Y85-@I;ڡiwGի+]EySYA1T,GD@}-Zm!"#s.J=zQ*GM'&n9b!7~0#?+7MwUkYN"Hc#%?!;$y<@HJICs1CL ҲGGV bRԢ&1&Bq-Y7)墷m8O4(F7WR_Hx!<)֊нYƗ\cbs#'Q 1snyqCy9f-7]+}N˳떰 s.^@q* frx"pz냃!_"ʛKYL*$E=])Jj@,+B"-;X{u':Ī734PX/L4Z 8 Ԑ`@WYбZL7$^~V.PI#Cmexpwx6 ӪK-ēyU"4Wd""6GHf܁1 @s=U ۮCקX; M[wU9yc&]X(3EuK +ȑUw @VeSC {GB{w@$fUN;DqJ%=JbS%nd'8O$fBJ$J JbBj3_zc~mS7{,nYT3K&a4ZIC͂RZ9!Kq9;[j;?jdcc˧-< J"hK(!ԲM3?Bv./#8Ȕi^O"0lڿON@+z.?D+ϑ텵գ[ 4^b~(m}i5LLFeDiZ\)>h-ܷuZā2c8z{\š#ZNXyxS3BcL#.΀kc7̴:G{o|"zɩU}YJ#5'VѨh~سA2F>EjB "Q #d0hkb %s8G8 pA' <гu!yWZjV;zcPP󩖴!Gcp| !iΐK&g3% 'ܤwjȋ^-N ;Wiq:m < DXUR6O/b韀,7MKDR 6GK]TzM %FBb@;Gm\J~up"$'P3amLڵݭ֭}I_L]CM3!t]DFEonKnl-_Za\W9# YvJ`AnS>p:le $~4TpVyO뗝'淹ʅpMQ0q`M*zVB &Gg^Q3/_(G}ay 1BUWXJ߯jʓöf?ut_?[H g02-rECyyPċM|r+KϙHS쇏$P̓8+x0`K2Szw54 0'3 ^pͻAhH@"w=g*?' \H1?(+egp wiuL'a?#"Igۥ@AzhSPaFV4 iG"e\E3_IJIpbL>wMmڭ }pM'N2ΔP$\%nϘ2"K0Aq4:U|f/DTP呗/$ fTUOc$/d.[˔֋-O6&<>q mDXJ܉Y|Or8!)N9ʣ6(LEgZyPçfy:~ʄ5QH"Rl>jt^McxL+,wx Uhڼ,Ys{bDʝ }*h~n汄ݟL`qwj'L6wyX&̢`6ֶbV :j^a L_eoOwݳ`?4gV0[ys͟~x(/ lڂum7W^1MȏZel4/Gg5]Y&+dAAeB\r HBy_<1kpY.cH͞ zx &' & l|a, @d8uw.˔.trd3:#'@S eȩҊ+a~wȵ$CU9\sԥj㊖{IAм3a&H>W *w-ʇ- Wa"K]ok.#$h~k@ޖ9!(cS&#󡘐`678,\.=ټ%.؉)J x5_LT< eWz<^~Ez^f!PnvX0c(lVP΋kKbQ犳- ȏGF _EFAdBt~鯜 xrJyy|/6BrjT^DWsQ1kjﭾ@?-e~N\vd pD -) 匼`?C]}3HL)2X%^@vѧ_+KkSؼFlBF?Jź9IFbH`@s@Do5 Y*2: rrT7輷z RKՙ11MZsM9KgY3H~=Qf0k)!Gɖž뻿ekQ0=s:+Yj-}إ5cO]F]X*458ug}"k2T6Wm3ou/GE"eysR3I)29f8⸺zzN*X:%Dz`|^?yv 3],`X@XQ+?_fJf%c]Q;U 7X y)UxQ>f*eF7-i*WNMG +vAo%c1 aw6 Lp/~Fou"==3+EC ڂw:ήt7uE{v|/ b~/^d{Wޱz!L*ín&G_c_ԩlCfWyg"ݔαD?,'HU@Ys("oq|\p U{N3+|ax`ܤ.#:|'ƯD'1MLqњV"{K]3he 2+aE-t&6ool%6uLQwx:~%G522.UH)b[(Qx%J /GRoxEҋ6 4nJ,U/Y|abjP-kY3)@`4lliI5ƶ;Som#L?K8/[EE%F,V<4F^2uN!sf6FߓZ{x NQ ,U[X)%V>O0p"4>J鏣Vz::… Ϭh 'W!1ֹ>tR e9._!{5QݱXPGG%5?_$տrnB eL8 jLe /Ԁa#eQ`A^&VaJk]7.*E{EOj ׅ nAk!@q*||T9}GO;JQ()ս\Sm:,sH#gF13p]>Nxĭ"\ N7@鶊ȕY{O614Dt~`XD $3D4rzCɺeJ߶e;.ՋQ^]pSxКC1Q:ؗ^1.3Wff|`"7Ԭ3wTпs?HMV:[LW(XEsn"+tbYa% EsU &hҲh<5YC4߂)*C<`4T{n}R0v z Ǎ'O5wK*fo^|+CҫqJGnٴ`UFy̝sH8}>B_{t˿5THVnR:. m102ɓZ6q?WرZ=, rezCKMOꬺ,)u@i/'5$1qEKz*O9߾/Y_((B*y_lJ̛8J1Is uRaWY.\ EIU:ǂ9NNsRrw<7xJ|-A+J caJL$،wv޵kY0JD\Lu=UqO ƛnY)#ju{1T"6YkGIмk9^F.`P 5z'Þ:\ }DZBm~DmG~}L ?6.RA#UГnnzi] o #`G"u7 v*dO}tۚ!ÌP)Rdvچd)d@G&-KsWi4eCIq,['La)DK|&]p}_@]=;W`A%-4i6nTo% .ɴhO.M3Na>Ra]ƫiuD^46#E4vWK+ ؐ+j\(0'VmZBI 6*}6!>w,#0ª^jz$U&´(yJuuNWr#R;OU '57g)ښɦDf[~ , 8k9#d87=4gň}c5-;{_ rS.*[X28e6Ss.Ր.No ̓0aT-2"1\LHZ@d̊Z6o>A/|UBѯ@iO.Ǝ+somkx0Ѳ]?R@Vs3tb 5H)#`^=INhQYs"56OV 9v:;WW|}>0pI|c!lL.ѢUb2:8Gj(V0E#2^a>mpjNI ?\RꝚMUX^5{C/%PkLp >tv&TUⱺ3kT'%C<Ϟ*Oڣean:M&Dͨ[nj>c`S1 gFq?B+iy[dD v䎸=&jVDZvq8e|s7ڼ /hb fCzR#^l\αdLzc,;tb9%F?>g%'.jְq\z f$WZ*@ gym>kX"xݬǙ#WHf^bҝ#8y/9,דE{E GS >>,C?~\VC98_[h5IY0VZzbUUP4F塱0{!s#%YȤaٜ2_о7 mL9C_iFutycI Žҝy=wV+DqW{QaLL2{fMB ikQhHu+nxF^HNYHӦ; gHgʒN~c"9'kbZ5jX6gwsoqFNwX.s0^ɱJJ^9 Q;ۡHk:pufZ|F*ꍅؿ/^jbU㪸ߊ7V!3!8ӯ "u(">j1\Z]&5cN#d7svm6]OOĒxJ@"*1X #=k 4M=|u#Fi0sF*-EASBt[L,}&1ʹqk8P->:*C vy 효4PKp7On+ ʡ|8eiY1Tk "lT(GDA8'YQScW:IbՃof8@f\ЦcS/fu;w_u%n,-~51`q/j7lhQ/=[tXnkM͞5F!N N?QߑbܿOXyF-uݳ<$,hRthI(i1_aٹ( uFO_no 3*)>s3km:]N|"'A}LDt_h¤32 nqrm/bC"  }x FKb쮰W[*w76F9 26%A!8Zo) J|+k KT {įW>w,fU.Z`uAI$Zi#6mA4(Y?LX(ji.~5a*]x/"PA-:WhJ0(-e,?9cB@7ncVV.mтyiCy{ZtY J0Gw^n=-!(ϳ^*jמ`wvM|^K3SqKEy *>'i%u%26ZB.VS _z8e3912jB~8s#5綯;Ⓥ󅲪in'|)(4L9;emX;n >|\>/z@'d*n%OHf4U I⡬>?/@#40^*0>dݻdH 7CYN/ĐU `޶*2uE_ь${%rd-y cS~1B59v+XŢ iڛ[22*<:QCiPcİAE&No^W|zī jqq. BO\ӒI2c{ TiZ@;?Q?`9QZ vT̘%ܦfXf+!a`;v]3~D~?EY#ԯ慎r2Lx~'F8iX+-Թs6C.C=<}sdB+nKA/*3oT† Vݪ=V##Kcv}2K=3ژ05' J'ꩴ $7hv%%B@3m ѨA1ߜ9ic9D_rrh>ЁpzX*A>bb IśybThb49F$:&D6/$b!RPx#|wńۂTOt-O~%+: 7\;4x5{oRc(=#]:tCOk.kF1.C,.+9",^J,c&X\4=3jJ.5:,,IEE++&'KjB3\LfQa)i +h`,TO◧6z$'VJPQ2G_ NT$Lxc}Qre VVOe"Ma%vQXBɦ{A/c_b,ml\tG>VnXe Gfx, pdj..{ nv|Q&gvYZr|NQhJ`w@_Hd{^~A [L*fsyhI F a-:1}f04ɾ]bC?OI [ ـQw#@I6tAn<$l]ŧ` z72ܥ48(58mS0"M׭A.eIlaGcmqoUμD@ReL N@&;hmRpon>ZvA9m υ1]r!˨"Ls3xV8`'Vy1NV^RC,8A@sA>-t#//i_=#[k9BԔ?x LK>K,R+j"܃Mh~`? {SKh ao+C{LslUmXy= R{tnWBnFUH vLXC/էjI.oxi|}6DDcDq}ͰXʘMP?IP(G\dCk HQ{kW6]xdTS?yw7ܸ00EŬa': x6S'ݍ$ *-WMՔo0TH~-b !U>(wZ{BD۰$W"?.zGC.`[ j!(F:AJ4w}=^V +Yւz%U+S;|X:!ݒzP1vY{DB)|LY?ݾ>S.{i%} UZ-}Z41Yi\Eo-!+F)~Y hUm3ィ A5{_i~ݵWRWraܺ!/(,xL' 'tR!Efƾ 'iuXChjo5 t/XZBz"5R1tm 46sFaι9%:Q~m37 [i1 :izM2o,hb~Xr۶Vi޸ H\ P|  Z4%k|i2SYP.08_ظR}r]Y0\%QIwmñ8Hۀ6oA6[Ô*04NdDJ7gM4rl `CPjDT1fFa;9F>/p9Y [AQq#Ts(,:1 Y}~+ib́_\M)=hqR5Lw΃=os#@:o؝gKͧ@MKΒJRe90M7&@0UQ#޽`~'n|B -7ZROq8cp-OF8e4٩4zm} [GBAfL0㺷ĸFlN0o"-z spm?n$zV^;DmPϟqL{*vf&2%yW_n$'8L-l|[pr뇹ˀEi3V@8qCC2+$.N)@3f7&r/x2ٕE; ]lk[ZXA#F#;OjdiiJlP]UoAEe9𘯉C)XJqؖ}`ZJP@55&`,]ۨb 2*\ۜ4eWˊ 1.fg0E\W^-c q;y&KƷ8Zok-%z"Y8b 嗾LIӍi,/ <tZB SnlvZx3ks`"R?ۚ_gdf5 3JN["r H[ ɝ1Sv0{o,MrzdūՈs$3kP@Z'5]^xH\i>֛)NIuupM:W 19@.",M 4~(V);H ,%r]fd#X!bk<h}7䯝ϐbU=J-+F2Y亏 L z?qJK(hرʶ6vy 9P)[kI TFTծ^sӋڼ"P)=}$˺2غ`|˜~I$N2Vƨ&z̃M:CFp: z%yYvPu$)S \{a6P6groTN:bf{o`3}Oc>:RW6l+F=5m09H^ȄsJׂFR#ȶ+{f`L7@s6HYi"hW< 5 w!wx_bE#\{X zfR.=%R_T@eLlA#w岴*#Dyf}6ﻛF@w@[r+n˕? Y|ñNmYFkzo_+\rW$)U8[\SV057sEQ{)Xt RLKov3g3`1q6T/l3} AΨg^IFlp!˾HHX!]T!NZ0 ¨PvnWg|`GҜ! (T:2;:Z10j$P$N>;FA/ CLXK].>[G~лJvJKT4BrޏU8XCMBNǩ?k jWn *3 [#$~FW eVMM>}L|i)^udNdl4Bn%qi+ ;ti\cN6bj& P,WJIQgtf.^YQe7(4 &Q O)M94\ve_ ן"?+\m9P׻4 cTg8#PfxV$;[}gS(T)PɀbmobHgK񐊗dA2=̘NIFͭ_vTK3LSqw.l0MG/AjW\/U."/z3iw6vrj@T!2 Kd/aWSHKƯ6J\&¢t 2҂ m36Oiri7'ؙyD'~ ܼ*2t8DX뽒(,^5{R7Y_P n zkcn7?dzǿ{WN6^`h/N!ht+jLc7ȠR0u >yK4{s~ԉ=<Ph䪋Æf^ 5K ۯP\A+ǔͲ+Lᛞ.XX9K'LF!J\(M _zM-Yi;)AzI_&sR^+ =jbJ|uPeZDµB+h.=] g̫u)ufJ7W,l\Qp.lmQ(kRc Uhu8Vh $Fl.sH~m:qó {a5su)9/ӈM@2 SzX!2u<UsL^^Yȑܲ論@f>*/AnBnEoI a;;cYĢtø:VSTYg}]ԅW ~F 0`wM;AM6YWcxQUKh'OOw!FAtJvjs|ZF[T; ^aP!0 4ݹ5!봟DԢ+ok1æhTwXb6F<˝&m@& KN?"m ++tPۂr 0T'x_ 1]PC)^ G^SE7݊ %F=uA{Phv+ ezhA68Ź!Qリ{~gkb"W!C+'uTu4zc>jׄk8nFAB}ه Nhj%Nu>5W,F YVuTev(OI~3KJD+pelGw(J X,GDBAɋL]ʥG?Ȇ~rt!" Y~q9uI6XIm=(萹=YSJ0P (֔~y(왏1`D ;4$y9*3V7*0}W`d;&Aɚa[~A { ~ ɿ\W0ffævb}VE}S9KxFd\)FG3?5Rq-!壙5:RGXE9Z9-"Qk B`q{sD]6:8|VovPsUzIVNL)MjWЕLTş/l:GZ*h'4syh)WAo,l5l9RNΎgB0-~KL+V@wU`̋kmh%J4jq5J3VF;৪g#owc5a/`uN@ЫŞe:hؒ !WenO| ʅ5A~.B5}5lz=p :X{e[ve٤pyrj%B`7?=:kW*S";i<7ۼD7m:WY\inLn& S9,RCB=I_f /,}lA{~ZE1;>rE"7",'VbܻP[Tom;.u絭bt]7Xe_Ac}7Ogqon~[VUiɓIٺ)Չ!4ks2)B۸ՐAqckVF i'zlMheͮE ao"hkKg4^ 2& &G%o?4Dm:IA w_N |U=DgT{L}ؘf*F#'I|Ǎpe֟{$/lC!}sPs'ǁPGQrOf4ۏ:x-޶#Pb;GA1f+ >Y%~I\e;{E.*2O*Mcucc0Az5WDTݫ?G1V[fݾG~G9’9,ԏ/Yœ}7pnFY 9MNB>?-\^سpƗQNkY"G005/9= jhly@8N; [rd.vOD^7 5[K^0t9 YaSˉ9(yL.obC/O=Ҋ*lN/K8iYAL:Ma:ܶ cn6(P@' ``% C>-9rIUe(XhM>%%ZN a?7P:ԏ}o"5<4j3&l5C[ݸ-O͚ɤFaGu% Θm}B鯛q}!8+L~|<Ÿɹ:μ:C*PWHujf6-˔<&!a ׊c+BB?䄑M{o49#h&jeH8?t0gmgytDs9e [c+uCZxNȂ%HB k5Jr.!Wˮ R*}؇y~"ri{BԱrAHw־G㫏%IVjؠԎ[zb\DDΫ_T>Q2Hbw@zԃ'%$)JG3zIUG>Jt](uWm^<~"5ّcU -?pX+>QwaRHdQVQ顦pqJҹxw[\(ir5OSY W+^UNR jxY&3I/Ch6%+O)2=;i<)!F@\˹Ql'ZfZ# (/B7.OHh ,Z(! 8KsQ2B6+]Z:S - OX&$WKlYIp\yhnF0M CTvz>8+| yACs>\m,#OG*Kՠ#p>}x9W:Q]CU%$#ʚ99sM.p>'X)sw``m 9'GaxcNpD%,jP3y!VMæ' Fx#e己TR/[vL̠XۂX/z#hxE]l'oVWV}KKBSEZ$brt+ ]u{ (ZW @38ej^KU-wP4?~ u W񇑺!J_lQEh7]H a3O ptTk]Wn0/~i  zT¬EjAI(?̍Drhj̢û>`h3fkʲeuŸ+)RP|#|LvMeeɚGsJie4 ꪪtmZr,߫!?ԛ:?Q!ܸ(E2Z.v.=' N/MN<6Y93.y|x}sOM@uRbB~1vAO`χSc蹀^ǖ!K !zLfT̛Wr B̾E0CW{YF~>\(<2EStG߇wj,"[нn.UB́w`￾zK1édD{2CǡU?6Ԩż9"ˌ"N1<{smb~lc5w}*<|ڼqsz)y4trNޅD#/j\^eb9xO*H` tS鬗ɺ3Gi1h"YqqE+[>mVⵔ45,鵥au}EGؑ S=죄NODzAr-uHճ#SM(qPos⼊1ISeٶdRKRτg:^ DC; ;2E6\xOMn+J_Lț+$bڬ];+$|Հw=4I7 eY$4.FcOndfG}Z˼Tς ;/`._z3 `/<ݑK[ٔ%)}m `/s6Ag-Z Qk_"!~ 3v;Ͽ .m1F +˓u#<>Q-cYD:Drz'ϿC޽gN߳.MLqpDG8 W?DW`['} gg b/tJ8gj-[')aMt[~]kW/=(_Qe'AP/&cMbI Ԁq '&7DbIU7z.E5푔OBo ~ʡ5LM!ʨ:!pһ+cro^bKxL޼_/O4t}9乬7+ިXGw<`3'wܬ¯- a Svi߄>qTն,,bI9BbP:(7GN0b0 Гsz#/5owGcx#^}a6ei^fECΘ\%8'f0nv=7|1ʳnTIWm8CD.62: E 2Vڬ5cSƌm/8ȵ2ʂLcWڅʸbס3Y^[v~zia%(ߚijǮՐ:Z(c<ؓq+8R4' duX`k 6%ÞIE]U)[=G;.R #rp̊J{qҩg29`q!/+&a6l$=beˆˣGFVh4rs8;|zpg@!a&(w/*+:M̟gZsya[lsԿ+o[;Cf.`<LJpl4S+x\\s~t]Q@eoF6^Hcəɾ|U,A}ªCiYچog $I-W<$^LVD:ܩlt75IZ[e(Ť GfɜX1jޅ_QtƾoAҘᒓ+kֵTXhĢh%^nM7T`N5+H%r: 4}rĔscNJp}~wyiќ }$aţZ2m 2 C;Lx.m>3\) eW;飝ixRwH}JJqS'˓S#b06Z^_EꄖqڛMS;j&wFy~ ,˥ YA0ߢ0U|xqL65H M*@A>74əн',QB*RWmoa Zmɏj2?:+S-u lzg%beH mM/Ԁ TRԗYq҉0_S- ~+)2!Qω 9b@ &~s/B wy^.v-t ̠9Ê-?{2ׁ|el֙>@ىa[u/ü1+JF77_=Z.Ml 52sbx:͚`ga2HUC.Bu>g57~>xqS\%:d@tV럄dTTUQ|]LV-n:4 qMCg}AH97Q}&{/#]1C0ӆ4ɢ~n>-íͷ7"q}=3G|a.^Cue{hLC32tˎl>\.o&>Q^(fȮOz"E]4d-}v /§iZ7}/vr1P== cZD2O bK݇kHJ`pM!0MNO;2JPΟ=2.Kћ$?$}XY87ZW†5Uz8n8WKW#~.Wi ~XUv~^L6Cʙ+[kCm/|L6'AL(Jc Z2ϮUX T Qm ΂ϑאDh;yi30t"…RB 6@XJO#٢CO`5uVѠ;˗a?(hɠa+z'"lV&sj)y -^1<XԖb?UfSؕc"p~jppﰟ)eςc2w6"wp/[=gC0\;=/+IOBO*UJ @j>h q6X^6 35ht JDJMm`\b(yZf >:@$g=~l gXܦ'H ɆۨhՀZ'vyb׭+bUU gHpmE XY^N0o#6%$GEpz}ژpÛD^>79>2*:?RR d7R]".H:`I^>ك6hmĎ ъjaw ^'4#jJ} Kx[?a[$qz sH*T8jBAꍣyS2֦9}{gA_͑nZanUui)>x@XՎL\^&9ceJ]DSFAďG!d 1??bPؖfY Ov(tj1Ђڐ0- 0D] ƞx%WT!J3t_r=ž%0'D_tWWsr^2܄@Z/2+a87az&`pfhNSBER6fPg i}s\}S No,}7M)5V/kP(,FNvըi ~X2?h:}PMadT/zo"'Vp>]TΘ-P Ze Aª  ]ҀH49`D xmpӂ/( 'XW+>md[sfZD4k U.5~;.TvU!4攻J.a5hW!:C܋ȱLQE?' o\F~3zv"+4EZ;.hO?3ޱh P[^.bN}޶e~RQz~UwyƩ!Y0Nnw/I|Er%~$'E  }W}ϰw[H5/k*kMh|" ddn*"K[, g<)?hgYgz1伾HDwE$,W\M$߻ 4f/qusݸB7{e>$}#5Pzw%+\FI{ڱ!NˊSP}ʩn幝_>n:U(0DS{?Uzʼ4_N/ :VS@|pJ ps4I4rvb`o5Q(٦na.š9)\'Cl55PeS:8"c^ 7W $uv:ÿ} Pvrw>Ig< 5ܖ ԟr[X =+<}cC6=i¿ 2SyWu\b #LSfA#+ml5l():nUZEf3o6|m{%5na codMǫjQ(aj }|@<Zej ,*Y`pG熃%KV NY]`4 My>h9ظomŇ_ ifHh}֞Nj$Ȗ/z_.m*ĂRV >Z:sgVH@ Z}֑IC-' -F~%')#?H>VxGHgw+Ao Y=# "6JYW.tɥk<9Jt]VHsFSdt^,m3_"i!>T?n`Q7&tΠޥ.wLIFЌS7G "+\|Bl'9#kA[ʺ_=iMLYװhĤp51ǥbFp|%6ҿ{^3꛲X x^yTK[p~$q3E[.LWKѠ-11Z]@ޯL%]% ٌh,5iسBE$g1xXAy#$PS8ڷ$xpb4֣mA 37kÈJӹAnʳ$\Hm#׾}ƀ8Y߆C>؀;^D-vo+.&/Ti. %Q𘃴j&S=c UȔfcW&6I/[  PMZ,NH6ƮsOz[_d,S "BɄX:q oU zJZZG(X;jx5r&i\!(ӂX+r 3b/ؗ~ oסKu{)vȚ%D |'sяQW]ݶD%gbw{Wt3kIqr.wmik d*}"y]JmD#kCH fUm1t‰/-ۚ܁4{8e~fru_SEO 60$&&&b =NDQG{J*r" +`tm nB*ݰG~HE Zc\Fis*kϻF #^N1^vW;`O͢  ,{2Q@:KzH 56q7*xA!Qb']xQ:@J4^M+ =mVi`k*AzƞSx-l4یR09l?oFA+qMҡR."Wjlߛv>. Iq҄N*f 0©ѩ,g A #5ZB 28s +i r% WpM ZHxO[ .v7ڎ=*z=WHUM\6˩mtyHOR1FVЌw1D.sˑW|NliL/&<%Fvpq6aGFWHZxeR:omkm,pWU–}(36]ͧ#F퐻D@}!^]- )1M4cv(V$e1<Ķ-?} 2PTg^CD hc f̀ mXe2q.~!Ay?gq/`/SvF JPK p.N\0<ˍpWFYUp4L tԩ37&V1YHuz8@ޡ)|Nra 6WmV;윛W;{X`#-vmm4w-=#$FtEՎd =7 3@`Ψ- }6U'G/9TSk 4Ȳyd a`/ ecLcf>XێXN@rPʣ=゚DZtQrXڍjnmߕ[v\P LdP(SWkb1z= 1v\FEΐU$߬u1A6Wt1KD;C5_[)iݪHrfU|0LR>+^9'F8xXZR]g dj!,(JP!cHx~^Jd{`S7H])#ZiR8IE@3бxbfcc $>p,n:Ut) R@ixM9ªIN[aMb14$,6 ܰ',*x<-$2[]TL*VIʃ㣘 FW.Һt5Y3ņWo:%+봺zigMBF,b-{<£'힀滦,dhv?ТkqZ(~Zqԋ*'I 'daC 9>fX/Q- PB#F*  m2&[)c-@=mj:4-G2>j%o~~'! #d.9:`&[}%e%;,ׅi+1F.?6^َݲf׍,5b@?_HCWO.?m!0׍/is΀Ű}﹈Y_93NV x̲hEކE/g}0]YWd*u)5AW R-E_.H+?/g5Kgs? #v) $9> e*QZ$X׳g 8 o}Oƥz _a(xe7K `҅X^cGbn# ڄ<Rm IyΰJPub0[q4\$IkX^mΦ}^adEA U<@| Q̫x6q @rQ *TZGb P8YoőBsNxE߱d=`v̛5WSJ0u1UsX/ZsvhS-͚/y1cCFfb1e[Z;);߬wfŋՙMDُ:k{z:tlbҜ؆NZѠeh->z@+`CY~{fVr1aQ"Q9"^)|_8,h0?+ݳo l'4wi`B+ID:s3*E!U ckwZ94 㥱ԭ+1k@f<(i®;P,?]o`KKZTs6*)cχ$>`nB2pet|$( $a Ip氳:VQQrj[[a m SYY-K߳ l #R'-@kgp)ܪyU`@Aw) eVIDIDj[dWJTl< Q{?yӍw ff$wnYr>{|/qf6GbN^H@.z 8iO1.Yi&]ɢ#B8"=PӴjS[I j)@!8UsRҫg!5w/ywd5 %V5[$:u"qRR${_ i`432S~˽M\Z5 lȹ_DlN%w {nhkG=tMzzҶyFf.49ZPK:2_FU,H=L-PbBdO04D'fI#(K$Zx@2~:qŒDvo8]T<y2 #G|y N54kYBaΊ4m Lk{V}8(Dt&0T`c YURޤk-Ãv(;`~{Gxi#߅a*x Tܻ1Y`uI_RbI 5!?Pڋ z䊵@Fx[Sk1FONhIzޜRfXl>`*"}ԭ=Ya"21]j[>v:&u*>l(5!It)67ڲ ֌6;]r@op#*sC`L7Ho˵7ki yQ1Y"sj^Wԛ'o=t;GWAƕ 5w{q:4{%< N#I!A[m l7ZXN⚠NNuɑs)gcמ*8K̦ҍ Oǐ+Jvn Rv;37̚up,W R&`^7ȑIfns1d6h}|"ƀ48Fxv܏.c+ç)b,&3 pGÄ^^v=Fg& fQ;֑yjǾ5-k٘&J |p75vߊE&[:TRmJ_uתѥL\[[xMm4z绂nqp)\R#b(k1&|.25†qzފ/*Yiׂ qfrE6-Ac;]1Q vk*_F2J![¸]0k̯?4`=~oWqW!ֳᬶ1s6"?hߺ1|K_S'$PC8k)pBpJ%)wcNON ;rz<_ fl<$[R8eP(a]H*.qɄN"9Ug(A7 ʥk`&Wz59Ӯ4f Jf,p,h1@:#;6ixjY]'&4qfR8<޴3z<{[cJ2{E%_ULQ+aJ[5_|E`3~$G-HpO:sP~GNN>>N,=~6qꛆOd~eXAw߯%|=;x kdZoJh:an"VLd3&Fj`IBK%ta pc;8П1z2I=U*⧞58{^<Ά)Pw(h{?0+6 f՘L5x^q%KȲ;w!*` ΝY%Q"Hpt7{uݞ4x)>sވ{,f!9-ů8gin6BP' ]N.9!dCIC3n8V#rUi"X A^%]0Q-8oK陋Ś%e3gέ<]AWmTB1F]>I!)>R'dySA!S'E'Ž.OgS14WwgWg\! ~b @LuxccPh{5ll+=Qhnb(j($jeU>̅ZzSsؼc"4=&Ӄ"AeL%&5_5wxpllS`1[cfDPYYnªS 1HY<7Y:֙/OLP/ϼ̀,uۜZvl=x^TyZPBjhmfw f*U2kUB$wk5rO Gtm7v"4Mv HVe]ۨuO;AQYR*S^P[b%k~3lV V FvgwWx=O$Y hV4l\oZ! W]dLU#. 9USgb/nRgyUHTnׄh,'*-.G%8 ;6H rLdEX{9/wM$njϿS uHȕeƁsQy26r6ge!ӿ`Q 7~)JW'bf2 eZs po@>psupIeY+pn5+.?j @dZց=)eLNZsZ| H'QO=Hw!Bʗp:e.\ )o1n@7;IN&vږPðYh@mPDDKdR6)`@j0F.J0aUlW[Ȥf4*+0SHJ"Wbm .ѽ2w]:73ҟ](EbB]mN9o6Y.l3W~qG6Myd&D `$<l :0W/cMOaj~&ytPtPsL2|&Aْ:nytrI_0B)`EGW({ѝkʧ5L;Q}΋ӁRH^젉dYL$CbFz<&6K"lA]:V^H IfH>Yzpx8x NT"6ɜw[ƭ{M!οlJXǽ&?Hh_1b0Ih{g?!Жa>n6RT(?Z?C^5sVc{@>^U7?辰5yXWeKnG ybMDd鲤#l"-L&~g*&8chS쑧f-lfYZ' XS˯nihrh%oٹ2 HH5 YCu&j/М. h %2g#MDjӇY[:آ`S.ۮ*&֔X_ %~^ TAUsO Qd53&I i6iIDX*CrƜرKx¢ l*1xc.! C? 7mUdN;Glf[ȎNxS-8C薛Y[ FzuvtI-r1h>FMTS_ 6lLV\V99}Ju*uA.h&rGP坸vw9_5 vg38FL"#4vs ^57x eyJ|T'~R @hVάX넶":ѳɋYI˝?lUNkv$-%2Y4JPJJka="屮2&b (EvHij'BQ?8;Fx#T~n8v.34[^Y*2NU&RT|vK|.҇Ac;WްS^NrjAm7yT/e7rY9ȿ13`D^HJHuxEB8XR k Ab܉kȁs4o$ 8cd秬73 ŘIfuJ՛ в'bIZ\雡.YJ j%ɟ,|^s)r(0 GT;~<|mm0Ĵ҄ {8,~xmi|d6ѽEkdޣXRWLaw= ^'A?ǔdGx?7@fς7o9< wr8Fљwa;\GrG! NZ%fP&Cۋj؁SC/~R#>_Am}hdzFF)`AU=.\l5tQVy +;%9Ɇ1*-e+na)@̱4Y60RR92#osQj<;2 _hZ@(g6eO@rȼWbaυsqj*mQǏzj.q"C6AT hؒf3W:lx%1YkQP3%)>]n{ZMBq+t r%s LtӔvLL&7:)O*/}tNUBDrVc(h2vR+邔fU\dS.}HvĄIUw64nŐq.ǃlIkrxԴ mIA_u*CJػb_FL \"9 ]8QiYRbanj '#R]OmlbLjјBdh3JR z_ %LxYSWtJ8AG_ cJv$5T#+A J_qӅg\8o)ȌɎS;f[$:GȾ:vWςrˀ~4!Uw-\ #EY# NU!9EOEJ5 Fu\!ug6(@vYN=h,(ZO0B$n{060 !NAd.vtI~JКUZO*Q ZFu{=Qlt$3 P˅/T!C"~-yVBlF@\ȟW k_,1QV $sgڣٹcE5^{2Ew)ՇHErJm=[ <ʐǨ'|v1rhp Q ЎޥOL~R}0JiL"\(ծU2+G=ڝ.JWS?q 攝Co=µ aes 24B Plso_0؏=ܦ+ i7/:< ;/c)fʌkk6L!: ,}[aGq@&U`jxcadƏh Sze[KK@_9ds9,:\H .MBwl+>jUU=B&4#-d5z}V bUSy5)~$8~j^%S~iwŏ0D44Q$ ?szG -Drys],7JMZN zeI}~? ّcޡQcK[|x1OU6,dw<'AlWȮJ~ِys ć)Z}s^s@/?.DM~??:22ͪ)i kzYmNH bsqD%ޱI~\|*i- .ie`s=| U]P7H@A'slM%W'®J"cĴ5{,ȼޞR6*u+/@$?9],Bݵh+ɕ8e Bȭ#!N'ǟjPj Qb0ݸ5t/>lR˲b+3һ>jhGk|3<7`'FJciLVq<:RiЀaZf(uZ:GCR{v!D/cJ#/iƻ?3|"%j-3Z2GFH.\z}<ś.OHQm l֙:D;nFwH^\,Ngc:C==*+i6 k y$ӵA7!EoiJ0jG =9f>YH @q? 4Ixm=S% jH>-|&yK J%"S/DقX5"CNwntcᧆ|)= ߌPrMJCv}^bMD }DހxoطE>:^gSm,rJ( 6uGo'2P@B| {=I:H?S߰X+EAQ׺S7;Mh-H b^iט o ~ 욜V̙iA]ta̭^̍а"7s3яJ0sƒ+(:O' ︛Wҥ]0eoҲ-!0. eHWCH-_3]&xS=x{/WM'.J/sxB4Sb8Άp&+ͣ =g pJ)if>cvedk_>>ElN0k?NN:]MP*$.=(E d{vz%2Һ".`(/5 KU㨪L Y N.9vbQ)qXJaER"mSTjj;2jͼ@2X=AGtn9J@&y/ߛm C* 2vh·J%"J`+0p>PqS?@y l*^jɢ ;>QŠ^Sm13arXM QCM*$ F10:ˑL-!8 iH՝f3ְM.ڛ%B7NJ"/"#cxh6lV&|Y|h}Sc)4DXZ'FDC#i1/z2A~w$JK ]UeUL@ a ;M1Nwdi2mATb`eIF}Ne1qݞndqwUՐp`zOBHؾEQB탞%nʭ0Wx^>R# ^lRb=N!bdPv-r]<=eBE:ڵaՂs~KoVbnce51{|lBdgA~+P;ZoUPq9Y$H*9ͥMui "[|.+l'CMxuy_x)'^ADYam&*,N49[GBH=?_.D))e,$ us].1BX ^;xJ1uM3k~vC"tE [t ;q=JIܭ-8')n_M)c1jοM] ^uNCIoz7n͖U^ȑ}9ܪr ;/ :pȃD )}Z2ڬ@&jETLZ tCێ3cTQ:bѩW{B>[،qj1F?}&n̚v<%FO:ʩ!,{69mۦKvVO ##N-/YI|?6Ш) 5#\]uɮxԣa#)-YZ;:ZlEϘB,84Cѻr{F@}t3 %һ04 -T]̬ٔonDo#a͔ol-fޣQ#N!]ĺF~v7fR%F`dKRq4MsJyw!/ Xb'Z'lO^L"Pym5u2CV+}슀R_f88F a i͘ 1m[` XY ˱e‰`>M L)90i´+ڊR[ht, tRU;ݓN||M*$b^΁zyT#}ْwR|O^g1ڰZctlL±cxWad!+E+.M]U9Zu+|DY>ȗgK7!L%jC\#lJbt3E8^,RlS@u!iCb.U@̺df`u:Geͭ./T!?+I6̢BT79[tHb7ybO5#t~` ;|0j:a3ogijc:d츪O^9tnyc@O|dY|l }N7i4c] _?=Kʿ<1.Xn<\ %;߻σ -y`ZOů?ܱ(G  !.PB6#QTq2y6Yh,J6H;yԺ\3dϾzQ`Vtn=X˩3m0'f(Nm*8&ϸn[x GZtQo+&c# z؞Vk?_Q1քXqv,MZ/eB7}o2:>Jׇ^sT9jW^4M "뇴ˋ69A{C{nჹ> HRԇPfQkbn;B㚜49*($ӏC+:} L*+M4[w>ak\IJ*:D0[&V8l ͳZv,zqپ$Tϡ T|,I7~NkB D,z ôfŴg;|Nr$o()>Du7*BUm?ѕib kf)'/qaŨ G9Цy (u5qiӘ,*@Yz lU CO@GͰՅ܈2Iy(;Cf~X-D| Ɇduuj=-@srimUNچJ4JRi1(`p*q;@cͳ;МqVE?Gha-yn.p 07c5_lB{0M/ICI^7Q;!$'+AzX40R'qAϋE-^UxyJhJQn'zMi׺!Ρ/t`22Pr?2Aήj0 q6т4k6q13R5ȾHqp `iYpmWfqC%  KQ 5kFk2R^^jmm-)S=lf 〈YTzRַa57_'_:]Av򄷿l]=T4C;q#P82>Ypk6ar]%tʰeD 2aT+YdE]@S9Nv+P⣁Yd{F/OWs'!4Tm'ʉ/՗?l5$: kXTS2c:*g(\Lj2찟F5(둬  t9<[E0VԺ0m5c's){r鱶_7_;ˑTKC nzDrTrtI O+s@R&| 9\MvŽ<⑹KB_{;.IeU6,C5ͯ=ToL\L:z3 FN]YjP #)ugHt)n6װ&ip= ռQOO E29Rմ U; j3l:& 3jҁ6ٻ??;|M-1Ywϓt I% AOJ4Axv]x<{GXoqπu/0սTHjs͗Qp}?Di+Шmb^FƔWKAY 2!)'{CnA*<ݕ_~ _&U*>ElhhhT1m܌rƍ ~א!_oK~_|:CdFZ̓sx4.{LGoyQ%*chh݆1ԐlLѴo㴤H04/sC;3mb{ ]/^e>\Y)2dtb+AEf1*}?K"ָHe1,v\t\x0TrC,ڶA%7r@tf K-T V'% dy,ߧqK HO^ߢwђ1SrnY,}lkrܳLug*K=F֟ڢpf=KVczBh@9T(ԣ﷙"l?;u~8ۓZ5COue Cp\nn0(6#><e[53Cb5~(yUXaF<(iծyJF&+7pb(:T_sǖ`\{CZv*#Qs(UnjȥUQ\i7^KG> 3|/^^]% e K_nz[v-3op4J-v-3s׉OM%I#Ӊ졚s=dR-[!n*73"xY~`#. 4и%}>+!lxڐGW76 怃մ}p/1DrT*E?'YcғK 1+՝xF^!'{7,<;!Rx88ߡ|Ɠ_es6iEUn;|wI˜Doi+ u#V3Qgq&Ke◬%<$QCLN!0@D - xkeb$[';izxDz(5.nomǥBͯm-DNDBWiV>f2mhl|ۣ2-L+KDAj_W4/JL'edY_U \4F5ijMa֠Ut7faaz[@(C[>&VP tM[޴[R! ҂ vt}OvOyR})23GXjBN<`Dot&u99o( EŚتzj~ Li7hqTU9}8Lw=Hi&EYD9 y) uq,5bi7Vi0Fֺi TqW;`=lIez]?2T\=9NqL},wUm{@BH;-_Dh?G-Ο[p[H&j+#iB߯t<)l/P>,>L"meB:d47|ʸ.{_7Rh]&=ߠ13(oI/\& f[Yׯg4=d!Tƿ4(ă6mɍptҗWZ0chsE_Y|e9K1wr DX0Js]B5ƾIs!d?Cgy+ צ6ASLsG\<3˝BIK7> ^ڶ8€~qqS,vI{SUJ3d}`9 #| VШ-4uaӬq/)J޾"[.w؉A./|4+ƈwbm`ퟻt3xwф7Ԟ.vvg. =w[t;}4/g1;:&;F/ö"Ļ romv ױiʡ>F* Ӭ#p>͝sMeZMi\A{$ vqU*&ݶye-Ѣ 'tK8m~k 6M괐[mi($a/ūygn)t%: o ~2&իs é 5stN0Èy Ԝ"(1͵"sRq%_ts V/WDM(PۚEڂakQUZB[[y>C9=Tc|]|r :໺s<~&U4SFw%$zY?yĶgG~@ɤH@j(A @,5Qn17vi9H%<2SN5=k틇RT)1,ђв=07q{AF|'⇕fʃ'(xrMSdu G?8akq$ H%t_-w>ȃk,;ٜT7|d"?6W0嗥|)GJQVdJJBx"Xz&#D>a ExCӌ+D#F n 펀tFwB!WFD:%WRW NԤCc*[u~OJg%=f%" iZ% CUɨq)*|)0P 87C+BI=hGTG:U/mFOLlڿ,{H>C%tҍ!!48 lg(Pfp Q-/=25"(V$I84>vR .9WDK ͈Z-Ofdkb>u8->~ֳ[Y%-{0';V6E) OxG$tf JVM B4ON(G.b!Hr7a3 )y}L%1.q> tF.M[w*K,8tUAG #ٙ Kcc6(QYgɐ rO'v!/iR, :nG{iܭo^TƜ\45wkgms͉c;YS g|(42ޅsEYTcB7/ػ˨,ꄲMr q֫1Ԏ93B!M^"`?CtvNur@U=!${s'|a}YǐNu}̲AW, mM?%‡\PVlJ`7/H.a͐ t5փt$>bڅt}[jeDqW:c6.8,ֻx0O;(yOĠ$"6g%:t ^y5A4f۩aw#Q_܁^"N^I@O .+l3}]f-GP=iR{iu} EkK{ֆ]<k2[O%s=.E_n3w?ްNĂoA6Yi@Զ>-Z42;2\4w\|}iM t1bOk$9QWFevDPR:8ZD] xQ9lIn:G~H2%GKFz9 }@ }Ȁj_n~ae lTY8;^2B.ZW={ uR׆/t_v 8g}VTF^ܤ;JlM&S;Oó"9x `;q+ɓPvOͶ񯶭A J }$ֈQ Z 9<Н<*E n' ^^dlHu } &g]BS[2`&8fE/TOтx%1sYڽr=  g'7|uшReqI(lB5HиkPi 0aWe YX UE*j[XC7KTaO8?mۻ!: DN0x[{Y*R ɋ(IBL֓±~ Cm\wbX:J(UCMD_$RAx/` :aY“0_\Άrn{xmq2=XgKSD>‡Zd;"" PN(!BJ>N8'0[+G4Hln8BQ4BfSv c8,Zh4œp@2*C,C'`L㜄d5d3WQ/5~@#7ؗ~?VfnNUeT/` I\plHpUik3hwYe$SVҧFm_ (iʑԓHvZElV{^etיedQm9t Gqզ0mto\$7(K TU Seו@mȈLgL9*x/ ]& ^UϰtQcLy7Kr*5^S\Jy9r g]\LsɊ#cҢ$ @XAtN*|n] eL^duV킳$Sj<, Y~M%`PQKWڤq>ΔBo\!%ԹVaSS-k!3{+BXqߏ*Y{G˚o"Ueͪ*7F=dP0xp%&Ԗ"o}5wxԔteb#wcIdс!GhNTY|I@>]ru 6t*L7q|Iw 7Nj*1vxь TMyxտY$JO bI(NXr" {{:J4\}g~?lR@Z28V6z!ޅzoVB0{iQ0s=%V5uv7*u3HLe`C*JZ<a*c`p4TC`^_ONGuE:LvB29S*~9gb V"YJAUOX RGib(yp_˽߾4UHCRŖYkgo>SS<#hyj$ZFԻQq }?G*O|[EGT*He6=.RPtq(0M  `@h)E1Oy?=5􊠯N:OmCf~ ?x$"&Hs$1tFG#=x ##d| #v3zk/jvlO8rF{hwa `mbN.*b hc~ teNT*67 ֞%>K tu{6f+X=U:a)Z疟)D׬A>$`㍜Hm\ѢUIRl-(P!qj-K7m3z"%WZQU]AVYQ|I$^a^tpѨpK c&zt!Q8Ka*wUNl RFD̼@鵏!Wa튠 y Qo>?Eqh{_mbkK}&ԉMDiDy?^*9q\-iҘwQܔCj H|v.eM;}LƠ XᗯZuFMGAߑhrv/شBQ\kv,\ ހAuW}qmkw+vEV)>I98v#eeAnZ8,^w6,͌Lm;w1%QGаt@35ʎ,{h5Q}vm?{`_oW^s(L%'0Eru/: gQ$81s66@=m į|F0eZT8% ^^F|[=3ZmmX q?ߤ!ma5] \QWS> Def?7aU)Qn]Ðqctx ̂h<FQJP_^^Hct5eÜ ?wU⏸j`3|u>3C6ߴG԰7X 3Ek2ɢ +L=:*.~#0 ͇(Bv3S*@r]fun<[M1UW¿I:݀v/)~ԂyCyªi~2eS52F^tE021\~&AfghP ݤ Y]JEOip-^}`'⊤W!([tJt6=s۷w(`ˮ$ ΁rqP?{Z"V^ܟ^DH-e뉜 ?\3y9O{-&?dD+*ғ}ꅫK8i!i?I-P+ W*Mi {PlS+Ci=UB6S5 5 /Io~Tزv1#2g}F$i[#z}!9F% rO +O{Skzv dNCm&)/6T^*)1-3uCZmQz;&9Ѓs'CJGHS3OD5G_pt _!TYVP5IM!Ѽ?L>sEOID|K3'>9s06ѫXmW5,4> WDUVj[*@X-\'BH&&]Fk>S!-V|b~VPd+ӟ;g/cTn:NX.7"U&װ_\jD3FTvo.S8~_ 4jrQZ8 .bN|q0o݃R=c| *p /NlGؔA,SeZbwɵ[ԄE >¼<hON8zK2 #h'Z1}c E:f zlp|v ǿɬ.7oR,#7n /e۝_K|b8u>Coq\Y4iJVMC!HvM.X (&,YG+PCs- iYBL:p_%02~Ʉ{5u:5b0~bVAN7(Y X1D!s *ˋEuARמ׈-Q 76P{w5t kD1C[:ev>``A Ź * @E+hT|bܠYt(lXА{ 1A|?T]I ԉ\bBXz1ixFi'O,myO}l*(%ze^G*=!".ZCg)iYWg3\C٢MdbIK`CoZh+{ĀWW(&[-Ub ٩OHpe0?^Vd;%`8p1ϭ}n Ḙ00jD$;˱-:ÀHM|Q} CA]/lW,%ֶgls_pxs7C;mf]E3g/.}W=C?2Ә!́8 `ZN8E{Et{!-9QEW#7:K]u??DL٪KR=1}l9X͙,vrrC="ra\2~O=sq'Žœ~l) o^]&> tӌ8V Cv!QDzgAﻔ!7 p#]I8CؖqV}( V5[>m6Rێu[JQ0^j D+d/8 ۂJ F;Đˠ/i.Z=jɥi% pIJrZ^@aʭĽ&j$(npt@Plm&'Coq% !W(sts܏Ur z$<;Ea[npi&kҸa[1XTM d1L2(b_Bw3-S(a<.5ȞX?R1Lc*V܎xZ\o׶9u)d:`a:V'< CB0no ,2cDeD#PKy,+טCb[f^x)6oxt[db4ܣPnmonǘ n}/˶=uEW(K3ƒYf?k4!5>@F"Z,h-P^m̤$5r-M 70:le LcZܥ?!ݓ{g]o&Ј;\|0oo[=oװmPrgRʜ"( αN4Vc&,GxYKm mۖԟ&"89ض";\EP]̈́|!A ahQ<Œ0UKm;צPy*Z>z)i 3n~Ky|1[ʁ% XȈ: HK fވ ;9\M&ey!>qUłcgQÛhs+yY xT9y9'U"B1Zt!x8l#]j4RdMy ho6s1X5 y/s݌}{>7%7 M M/68o9xҰjrZoOd$?/<5/1@bۜ=>f])g1Qmgkr?8W(i|76/z'Ї`O+b#L{"ތK†qDPRSr_;i#>XTxG'BQ^] yX}U8Xw#ş5sEmr !ei7T G/3 js-,IXSaĐiؓϩdώkhWߕtOvi2MWTAtS@xyRK( @!E<ZFb/9y0:(-/ľ[Z@?-e򳞒mGU:뙦9XLk^@J|mdب#5q٫jkpQ/ hH[y r4B"cfYŜz3'Lo9U%iLV1i>ӹGZzpb8^398@] CUDk:u~p8`c?Pl r{9^;NVg'׌LT# n0N-1)R@VY-5,~H{8ɐqIŠ [5'f0]?;.ښ}*350CLI? cRyZRٷK2{;-Jׂ``_#:^ms%N$*DRqc g K@¿C*Q4Ú k}Adb6h;Š,N7$ 4w#k'Q`H$)bl3τ]5QX0h1IT(DzCvX)2p@O[,-e`x&69p f9@ڎABq*<} ,} LI9d~-N)L86# n$ZÆjz" }!Gm",(hФg;@ ?M^!Kb8T;lG!Ra~l{k?M~՛$b7IMp]c/x^]]D$.}5H{}Ua-lK?5ܘo Sɒȴbiީ /6@} &W<"RC^=Ϣ 2@P#e۲pǂ:3?-pzv^gքn*a 'oߙ$󉚵v;zTiDS'O]Ah: ˂B۟*w=G^- Yf2-DC]NN51Eaz3}_PWSU)zGrҷ2J7K vTexQ 58wؖ "|Dz&h":~ZEe[C?ޠ:XFd64 $GqtEԞRҐw=}=P >Ƅ´o}i/Ø UƕY]O~ʣ]={?/`ˢD1k7VߏOD_Jr?tr6oK_o&XʄVw} ZzBqǡ sԙyڣ-+|'Sg@Ӿ~lq7Tz|EG/1nPawBoqmg >j\ŇC%\'7k@GnUr@l8R{=qYv6mR" Xtp=*CnW]e$*\l65+v[vm/->࿃#A"ْ;;]ڔc4/DK<7uҔ^jKS Y:P6Svhŕ-LïuxwrWq;=&ԙ*VS濹*m_.c*'#HP8:6Fa[ΰlCvGM3}q,1gQ"4Lw#&1N,dC4jy=v^ME%U*pى,~ÚR`pF  ˜t3Q_hvĹu22?2QU&YE`kD;ve@Vj+4β6 JǕ1s>W3ۥQ"VwKS޺[И̠rSMGw`R 8h'd]+gS OkZ#'0݊f`~LuLBh(zb 5h§EiA0 ut ZlO #7p޿Z%+N/Tԯl͇@4"Ho:KҬj͑d%#zfۡ?pSHK4\B߄,c_#]JuJJ; =Cz.g!VRm!##zm^?z7Sk)agAޖZѕ*boWnXG!sXZ5bϤڿq5*O i' Yz=J-kEGU5V}pxn᱑ --ptk)Q?T&[…uMɗQgpAIj6u* S -V3C2KNr!Ckknv̌^I,AohQ\:[²>7Lg%#0_ R5<fW.c'׻Yu~R*$ FDfAw:WTi E?'n)ڽH%+Ja" A۳ = LJxW$j讳/)DbAi(|3Je睟zD`L?=.yQ(4RV䏃!˸}6R꾪jV=#fo|bԝ䌪CJd/IZ4 tq7YS7D 8lAee4Y AqcMZ`2|(M$.y׼@L84j0݂gqSuo#6xh>z\׿DIL•ݾ[Wg6_U1K2zIz'wKjz1K6 q]ݨ} %L15rq\۞AAz"nN-ccH9Y'?/!k4<*G-$^21C2gN,;]imIdqΞܾBd'…XIV#Xs^{"kӪA(EsC*IގXL(#zAtq3n,L^E\7g -Hź:JHYiVpGKjTS@R–V FJOJz&ecO}Xg:YJx;&D0U;.5&{@s#\:Wͤ,#X^^QTT_JA= ՙᜓaĖΓ3b$Niw{iY9%@l,Ga,F1((BVt-k9r ,e#b[](R%;BF8[+,, p(Z9f(7=b6a9^ح>xC-ŔiG7A<bȢad=/ kVSZݢ/=g497k^}\S'If(D m?dA^;)_Z1˄xsj{6ŜC+gl <_' ob@ZaGzdOc$?w<_FtvƉMZVц}ePDwu3T0i"Żїo>/^)'.R2^2ζQ7Dn_Lʚ)YᦕW'u`Ki41(L둗7%CMH%VF^Qrldf $S|5P(+2eC\ Kүe A)b0Z>g ќ*Y 31׿O ~hZ=؟KMT wċ^px GmpቀDIv ar@W7]Q jyE7Y:;cslAb@(t97/eRq%b/F3 ,t>w*Rd{\Ќ{pk61ZS GvY}%Ih,#\l!-u&X;W㮽>#VL}G=LBKΣ%KK`ti*2`CZO"Á/=,ev0{=\:w56J@nQk8Z{&/SQZo}nc$Bi^$Mm ~)dž3zeYMdy4>F\B>E9(Br$z(AdȜmrr`.?7>aq::ᦃmp ͋D7ۼN-W*omwd^ EɝĢ ӢT[M+Y@O cWrZ[RNbEV-{Gk~LhPI[! cB#(_EȼkFDT_]\XWp!5 0Up B(!3nG2q!a=̼`&fK~Z ΰ(|g%ty^s`x[Ȧ)QjPPO{ N olxP oG4'G<$ii ďuoRjњhxs6uQH^`1pl<0 lONJv(.ES*承أ~EnCWl(")o4b̚ש踁ř'F3A˴i0\1}d\׳!mp}z!RC 5$q~#!0PP#V}<{v3c?kg_Փ 52eyP^c2X)_JtutLB')9n9j`VlGϜD"I4bcϹ >l|NJrD 2.Vw0% 6-Z-,|[[='7on߯2R3mʖ[ dn%`F4{.oH8.#{h[& ,(Pڷ}mf1>cf_>},nK6T%e4D7֡1Z&U,&K;tRO=ENeZG̵>#9b MM_yUy9fw{0th1Z_Rc,$oBEuUN+t&8ocak} B0ő#Mc|0 }8M-U|LH U?:8--w^ce7􁫦ղj^xxi߇Z#]h@Gp&Mּ?e 0;䣀@:_"cZ\N|90Zyޥ"4hcSbx^KR[GZ:pN0 lCTT[keoŽC$ o"ˑTQ:^4d[}x!ƠVIwBO#!C 0̼#)m̙]C/<+vT6cvβcn c8(]N!!EJcqM_3VV-o!J!iez[a_kK|u0NH|tV"DR'77{) ^ކ" +GT`[Xۆ$!!HI61 Sb?B U9x[K~fE 0!W S&ıH `rx3Y_ a ]&I5%;fi%.FLU;KX9 =$  <[Ua/=\/]719I]"rC[PXt1a%l8~)TRP0yrx3nlKdߡ)bJʣ*ءd(Nj,d%ց:`:ij l% =GɅ4liig5< Lin|hǾp(9Z' N`~9ײѻ;VxvQodW7]4݌$go/IyMZcYI*Qޣba/boKŹyTsDշ(!/-ZTn_ eKd3'D2X?p`ӝx(UBa4c+\'e4EK8JͼO.AMk\ wi0R`zh5A[`HP]Ϣs^@Om?ӎ7f2ҵfRo1@Cke,8==k~3Ƃ 1ӷX4ύ|]m?2ǨӚ[4 fmIhΌ.)Q?¶==.8 NT&lX$pqs`$7zL zxE+Kx p|:^0%EN>=Z~oSHR]}Ŝ{739P |4b6h*-O X{ǼФVp=|mXe DX+@PL3i,gg F+l0U;v]daro$u^=6bϳ aTՆɥ姞`St EL}Ί$!٢Lr1%LGn M/'n]F",*ػċ*뜟/hJbS:k@>E ~d=P2-/P4ɗc+T{h߇C"( !Eo2o@MHNORvHRne( _>6҂>\J`D To*zL0,`rnB_u/P E}p K4OCA4˚'OSHcp3__k=Ȇ30( )'[>U2АMckȠYy$8&:6gpbY[qM7utX޶ Lcyx7 ߘ|ON?xJBK;>vK2#J.u3tHR0[an'/~`T}airjmIbv,LW%̼ zp؍d K{u)PhV(5goКXx& ?·cJFy|3Alb%_gj>woJy-\]tZbJ|գB44Ё]:6Ac8ߚWbe֢L0Øѐ2 [}̼Ԗ|ZrC^yzqW*W2WӾ-x_L~ECP׺òJȂ}ye{^Dk4le^:d#U+Z(Q x䋔.s 뷆 tȎdvNrB,LJ乯u4d`-'_9*tY$ Ws9ʺ ×B HFqߎ4}G)nϭԥۼ(sWvglh;H)T\&{q$߲cYH40ZB B'nIv !'- eAf y`M)^{oCx!"~[-* Ҵ.D#=/&H:#LV ~z}'9kÉ;jRIE@beh%+ǍZbnD8E _|xgB4c/ރ³ vބY` wR)^o B0!~N2ܺ 't k9c9ֆFi32FLN"ĎG4d[qLHo`;Zq6L4TkSדjK 2Ud| ڌ*+kx\J&s ?o,5WkHJtN( MWpIfczh~?r}Lb OdXs.6>P݀iarbںEE07PW)s&IGwFFvr]O݇;}ul N >#T ]\dvHc&v [9'86vNC4'`6n2*|n|Ma;H8)܃gط_w[DK<9\7XjKQ]wJʶA0{΍Qմ N_N U:PF0Y1f)#8gwZ9rJL-z6Uvj:qa.A #K%::>\8⦴_]yOI!KrPPX)Kȷ?2E_I.dSFcGi^ zp;4B̟ \f /LFFQ7PPR?Pn#~f ÿB-@~;9b; |{]@}^PRa> _TH9trыVY~tT%O3܇Fao"$NiU LKÈٮ>VhɑXk9XNMZI)x Bw) غ>SRKE(B%*r;_JKb[Ĺ/',0[nDy4CFj `\Ќx-&XP54>(+nS҈0ka~? vߴ Ǯ]X|7_0; k$R!;Dņm[ȟo@7C~DH|~l];#!,[@cAr@Bz=iJ_Q;G%uJH]L55tc ӐzKXxVUNlR KJkl cUS7KBSl?ҘvﴯW]5 v]%e*`vlYר[d>De{`ND}I+L(1Za4)!wtl0aw(t<8z%n!"dHsnD0?#G2禎C`.XBϫR]搐[l4W^ "rAM+X{5%Pj%tƅewP 4Vȩ黥qzJa̠3-~=c5j eR3Bi/rSEĒJeD[Xsazmk% V7V I[:f5Eũ A679w&7g80Ws '灾΄*_yUq}5'pop㏭uG7R;;9.5:YpL Bv\ѣIۖ m|t϶A.2C"C`@\w}.ݐ<ƀ=Z c<҆08u=̉(oiv|.{q3t ؤ#NP^rHl{Z[=R`"d/a]g Y.}lӠFhYU䩸o^dJd;qI/JfRVj=Úy}[fW0."Q&G0=`^&X~bξvS8ǁTfP59<Œ"1'B-;{{>yL?rAKR"> r4폄I\m Z ٹ6J> ]+*;Y<,Gw˺XMWKwԿjYքa"E'yq䴍p mBuHI5 a2 'v*\Q(KL"*\LH6^ZɌcTfV%}R wϳ-~|4G(ĄKZ5Hڽ5/4;;d Ỡ/r*Q*NJfn;:)@oٌG2\ـjDґB<t@l&K7|^_u~%G }a7fl[;N&dA9rG+-怖JƸ]D!@K ҡ.J(`%B[tm$._YzW֙yoи&'&e@HX-ҾNF@Svtpeym$,$:L˄9f n%XQT[C_.g>/(y)dgْ%3PHAgM R+'iՊ,M iAοVuO7eWɡm0o; T0 1& V]3Q`W{`10N}-~)5Z%Ÿ3œn,e TYTBĮ کa ,/!$oKc<3- :i[&v䨺L<<]UtGg?)WEh®R &'"[! #\s /uŽA/ K`XԚȈ0:VP]QPT( ,0K mdʐwo" $:VV'h+94Wp0#zHkey3o kTG<<0Ԑ+I]b,f,t(Nԩ$H/>w;|$h"}y8Iddx ̉1@?~u kzb$]%cԍgfՄtည<FQyn?.9'l83XI(ƟqjurXقel^+&$}lGm>U74|wxuG,czp>HgۙXL[ʊ W\6fI+6A > RO&BB|UzLJhI7;k^u{D  UM`ZVb4rI):G$r7u*AƵ&ju|dbW=z}d1e,0 @*S "a O2@B'@>`D>j#vB<6*P D SGP}kSޠxBk"k)7*Nc7)_'O^R$Vo=GpdU]Zq:G͒+Uj 't2o"+pVYgI5` MF407JI[+UYxn?q@{O,"* ?i6${خoӡG$ifb4NBxF3j%2Հ ^&؇: >}@l|mV|0C9;/{F;RJgnPn |Q GN2qv pbBbx5K!6Zۮrt}UehcZ{ j|"V uqv= #Ȝe$~lkzx*Z`wX$R֢(S :*57ZdV7w#UzEP]ԃ==4-.`# A>ڿT?DgM!p'܊qeHxޜqthtD^/ (pAtS EBEFedVbF ?5,{X`j!/$=#~`x"#[ Rk~s0y3$3mi'2Vo p_5?ߎmUՇ+uFl ʱa*߀ q|. ޵s@NOP7ɝ uؼ>Z0]z2]ϦұO$v^x 7 ,絓buT ㌈5k@)^Ô>ݣeѷzm'sqF_+kf@q )c'[ 䓰Agn;=`6C@yNb|37f[ҳLP\ Yғ8 slz8ɘimѮòd.:JuG'-1 쟴_\z<5v GsA1qFbqsȼ4#$Rh([AXQ]'rc E$r3~Gs MY? 3u@m(XJ4JpyYAle*kM$H )y j l \wp {uEc3F#B`/{zX&nl9Z ei:+}6L<o&2NO+ɠ+;y52$Nݭ/C2y8ྈ݁ :ty,N/6o3[7҅`"\$*ɳp&WRCP;!k]A[’Gxe=<m&Z Bi*YeWBJ@A3Ryj ڲn4i m'WJ#S%nlSyTs5zKE~ȸ ^;DCqV@HˀJɽk43S u7U !+M؈N;Zw_ٓԿχ|V!N L܆?s6P6kkjvBS/d)}cjv1m8zH'B$n` }w(VXc Ǽ.<%,h4%6+Njze4z9E b==jE0]Iz.R^yLz<3g&[4&DWU"Fǰ"J:?ůJC4J$ Rgc'ܯ POš8`%M%FȽ~~"1? H'\nqZy2 -/Nq2e~70LhZ41z gHObkC/v1SC4BWÌb*ťURq ڠ2dkp9eQ9ƣH3Ӭn8)Clf\SG?VJB0 ^ѐثnّ:ة? e9!,EUGa1p8LqCi+h@`pAY-I rg2COs$y OVM{9c˩}Qrj}QvTժ&&ҡQ_EdbOb>Q=6MXj f"_m+ά9d tk*ɒp4bH"smѾ^N^(; HA_C)c}h Q%l9`M wEBeC8}*pAhrzXsO"t2SHYK85R*bʽmX2+APEfcPL6634曆,Ull_] v}U<6kE|z,ό?p݌# 'G\ZtHO#ŻolѪԅ wÐ 4h۩eEŸܣ !f274V1n^a)*k/᧝DŚ Ԟ"IX" x0:X)W*=Z~%:C$~%P}<:FLVM.w'BI8$:Un0k֮Gϣ2а4SAѱa(~ݠJ; l+شur'׊a 4o?ŋY`9 5@.3 l e-&fg4"wEB-Jgaxu# U!MEЂ7=@p9(V^$GvV>nj3-ah$m@աFt⸮2*Tq1 DƬn"?#f55~ꟊF,ȖEy98] *9^5krM,s1ћjXU۰ OqΎIA|Fmh^ %) q˔,^m}cuA0Vn^y^Ґ7ʘ 3?QM^нTؚg`Muq֯$X~0 +Bɼw,"(<s~᜘4xE'o)ץU/ѳjxuFX}p0; ؾFI5^wbIA/Ҟ5{Fb,x%-q&B }]ukEg&-mNaY)PR{z:?e9w*D$}ڇd^rc"vZI0>8LGlqY ֡Ia^jk,P1@pt,hL5u&qU`ڽ\/@S%s qc3Q~z62HA="M@fErFo m0/%egͧ 8a!- *1q_ ŀ L]=B ~&38`W?Aѻ46+3 c07GQh3Rg]^if1|cbEr;J_]D܄ޥ ;**AA==JL\0Mk9 U]*I6I)ICnBt5%5ψ̾f~I_;dvd*;BKC AQH)^ly& HKo IRho7虴[G(&Xm#.^ $ѮN 4ywJjD -DI&viauؒ: oZRM2 P>y^o.R l}EPhUey wkh2#^W4J0گ WOv_Q=u&wA~0[ Qt@,BTh_.L]K$jjnq/*Q{|h {;IQSϱ9D[Di/')Q0)#)_kqh$ԉpNe-؏:xLQŷ0dUl?)Նӈο 121~H|NO7>A㲑?#D1%f.~3EMT 5rdsWT/s^{2'g4KLV(c))=T,JbTyE{Hs+hJ$eX`X>/Qh#NQdg10'5jn'W :W)|^*Uf7ָ)e:,P9ٝ9՛Legl.$tmZTKxT.Y[U4ۆD1W2Aεm#8_st<lYɮ H<@LON!{)R4hb%bȌ%40p l6*~Cm^!l< pd5G kZ JSe3hF,5V]xDp1֋/Q .RZU&}yPBϳ?1OĤg$bF6NZ|"zf2vOd* iZ^lOZhs њ1Bcl$@z݁¦qW,Sa5C.YǃYw\[CdC`9R;CvL<!Xe+C!0FϺåYxU*lvE#-b#]J8#ۢbV7c>WoV:>Xo 4I;̎6`^eRX! gEw{9 ʿ%eﺂl|O*buG8@7%j}oЁpb$'tځu F&P9&|,}v8՗h<`֫b {*5Iޕ8Vjv%OacePB h7p8r|5ŭZLH*{*Z?;[]#a8m GS0%@ۧuf{J3h'ziJR2;rgmrfHu%:{z%hPά&ͻ"ra ptkWl\Zrs_[ȁhkْoxL~QJCwb+?$R@M ^:O yIbF#&9䓣y,$~r']~/hWSz 8!xM~8+[O.OOCdCoW(9 ǔIM^̶nؽ[qr$߈k[vPftXхPhnfŤsxJ܋?d7Б;WLT>o]8 NiFSl;`R]:Y\rb%%j&~T&zQU.(¬ %qᱷBf:[TLňi|ߧב^RhUl~J^ԟtz.+ʏ#o,v7OJ,su?"&?m*%M\g F"^s"mC>e9c q҇ݗM,n ;3lp91Pp5z1>xE9툥XgW%lԬƜER7~ P)QMsog1pJygamUI@>?U>,Hc{lۢzk ڴ8;>DGnGi9RPdO|".ٯd,wa5/e^#,X4nbA?b ݰv^Gm3\}2!Np&(v_@rᤁ@6taMӕҵqO hjxy8,(|egQpBĞt{>2Mm,{*VҰH-^ڟuynw~5獵1"bh3 s/!Å JHz&х[JCN]"j:e.Hl{Vzl6qͽw殊{W3/#/r="v[05O;q/䊺gpz?ڵL@&U~G8y˃P'~$sves_=Pj3nmewuK41'h8hFF8EOp״*S 멨=;LjR\ C96˼\)\M={  3SORj _9j#0TElqnw3qh+aҮa\kdtsb4rV^992%, g|i $ZY͔6`t/@UjjTAOx>5ih!ʈ6L6\yR+aZpuf aB;軦s;vjp]ʢi69؁y '{HSXS3 npnvF+; S\}e Ȧ2̾HS9_~X< =uOs$(QXXL|.IE/Yz\}Վ'UE5tMR8̄@¶ʼn{ 7V?녨aGDtN#)d1^Yzw^kz>VY?DTx0؊a |׃0A6S_-FuҖ#~لgX=WZnҧ]숀4Z4VyYvsMU6@n82ճv>DW񠍦n^3SfpqBt*(gd-CO!8?'L_s sg;0{jUEq Pi7AsHe>9|H^-;5!%.zKNAJ3lD kqE*1>"Zzȅ߅)³$=xM8CaPP߯d`2 vZi &g׻]R>ṗMDiW @=aY)?Szmsќjf?EIv=#jcm ưa]U=a % Y&iU"IAeV(Gݕ*e!FK}&xu Evf&U0TRm—z@Q4Ai"ݢ <d\ ؀Oj:EBpZ|[Heȁq+V j[-~^ׁ I =/`pȜDp}ĕ^k~dɣag#g d!3S_0w>ɅB.Iߛ\?W3^}v>WmP1!K:UcJY⯕20"8G)~/*աq"] vER"^ `)Hq&lmLe{< Rs1N]'Ң6UyTDQccuzqM)>b~?4!xj2{jv0ͦ=ײGw: w=߻ɡ0nx@ N=FSy`TSzE,pjTKR#lKd,^} lMjiU;bqG^'GMFn[R`NF\epR0^ܚąl:F5RRcFVy:,ʄhQͿ{<:tHڽ@o[j4W_nבkިR,\D$CW5CX˚3T ,-W}`1kYrު?lOP} [LC<Tl n6orGG^'` 'v鏁pr+QbbթEK]n_IB(t<ޘ˯ZeCb% r}ݕ3S$.i\P"MjBQ[Lz*)_p-",ܱ'Bo8zzoc?j4ZaT]gIZ.r!kIBJJFZGѧK 3QOT\Lمf$:F|Mt(#F!U5}#YcN+]԰/(Mk.Xl~k"^m> %[lͦWI\J'3TQW#Q97B2F5}c;)vnaQq(ȖJbcCӱ\(0,lC;YQUC؝M2 Zc;%H߳4,_㫝L[q4c xnJkH9ߔQ?k1 =چRpX𗭽>ER~9<@}{_̐HY܋7I\''tK Eh"]<-nd3h1lETW3'4°۞3̼/eD ZqaȬ\^E(H?}fm*Cx!Ind;)?qi(~AiI+ӰT:Y~_Ն;n[17V6AJC]DhО=7\osa% NZ&BWz=Xqƿ1~RbvAYX'<7+:2eZ<~ ` KLgp\aNLAUhT'z DcwRy JQ) ,։8t]k1K1F幼 ωh8YXM@]9|NwGsE\7+vh[]/N1ν{WڢTo EhZ6̪.<})5kďߥ3 9|\15QfH6bH$ u7 ^:x[(rLmP!}Kr-b{%gKz'krKK=zS[1E(EJ[?xBĄE$CBC'udAw~&#BbS2\<2}h?^Txd;$U~?&l6su8_.>(Wj'xaHe g:@I8ȗ}7 [UЌV!Ό| &UnMCAaU)FuIqӗ1D^PBp_Ey[ެDpZ%"v;tTGkՄpzMA(p,%ݡ5(m+8avG mR$;鎐VA$39r C&.O9'uaUଘzMYnoڸ@cu2.gK0}KlhCw%ՎT>0m: D!b4Ce,h@eD gHgzЂo VXREe0/sԙ- 1Gq4K9LH0L"k Xr'8Jzr

    Kp?.Pe)XF֢ HP uYzl" ~Sh1#%11 6Q!m> VϳNU芠iQqw?p o2͙Й.)m(5)VzF3AQAr}zʕXjVQ(/KjP)ڸf{0!G}q?_qu;-ӕVBoX-%}ݓ( lOP:ٓSt,vj/q $|6S,ZBx\]G&kѤ4 qviDf١V (ժtq/L'adofTAdFzi eWtHy3y~|g]{w0uuE Co/ЙrLA\7&'ПF.lD5p 0TY؞q`{L`{z9+.; O˽0VFͣ솚?\BDHf^Du/2[ vCeqCfpE#0}u`kլG~Kpp~Xȑׯ/؛0$OZp[3ykStJ[2DxuN N\ M46lK?Z*߸*͓3~+?:q)ܕ뵻 (4zi2T6Q/Oj0h55OxL uݘ.crY5T~B1zߚ^zGnd؟IT'; YyjW@i{THuobC^, _cnHyu]%CatQ_ZA4'^ n0$~S#afgE dӽ)&A|. ơNkv<:{ \i#)+QzAV`!zsy˂>~ Y5BB%41bHޝ|A/gNb xh¾:3ƾigs ҳͦ"3*CuR7SZ仍z oQYqisIFO,k$+tw9VЭ D踼vq|+=>^11Y쳘I|Ϋ\Ι$dVM1>kڴhj`1cN<_{ۈr@^E_RBÉX(21;U|\ UM\u]uKPZ9BF:k\2=|>ƒn[O8y>8fg"[3lKC[vl%%9|jyaU= B~`w) vtivD]X75 ʯ T)`T2j'i'ʕJ& Z/;WPl=v Ÿj^ƍʴ`b6Uñ8~Yߙ%TW3Lb"ě"^8[ҮؠV_ -څ* VXЛJX_vSpYn%buY8nY~w1ӧzl>Cgjc\@Hz(]ykjSC=bM4iw<+h~>:6ٔTL;,Ar_i|̦αO?JJUI{}\~@S¬ߌuN/4VݱW7 py.)>zJ lT$,>6mKQ)IWE3DWBc@Nfx*xʿ#})/ת(œóK Lna/WMq[suJ v\MΈM"dig꘰C\xTbq]'yϩV}H Ped "PS-Bx|sZr4f뾪]`r? !3G|Ɂ^3Y[YaD;ZAQy>cb6꽋Ӫ#IV^mI2@H[ݢw8_\O8=>1Γz{Gn-Pi\ 4 |WxwuXD8G)Qֈ*ZK5)7̬Dl!5<Ovb+ݖs 5-<ʵ#*G3 'Ƕ wï{"kkQ]~ P)1{EwnCqt%<A-ycGIhOB_7B%&ѿO0)9\zqRZG]uw oG10_+d$SbtB oϧs (Tӿ:$mW5#0ɴIGJ }I3.zl$Df[|zwf4O(0/!N灤GxqG}6,ZiJҷv%2Ri>FE2%'yTu3Y"D-: & mw!߳8\͑&o\gYPS ovO%.k$%X?]_>nr4+nJ /(Tc\%ئ3JP y*bnƌ#Lb1#EV(#!MIaa+%fT/KwR*f)SSS/`'$x7>$CKL-URJ_T I5qg FM7>~wk\| QI"2iMx+G5B_Jvtp9琐N=pVW/c풆+cD z<4J'#!4BnN5;͂G?}ZN:a.6"c{U֤'62,CDr.`o6`kn>4vjq OsYB~2zy#b y;nXZ3V Y<:֜F'x? غfCkg V!SAĄrʣ0Mȷ+a^woUO;}LTa8oBxk[\0 ]INa;c蒇#˴17ł ƴNJ"#qcxK  Dy!SWMԠF$8) /틒omLLTIrRDvQ S*;֏fPn94&@oQxfln3y ZHnyTL?jP~rUmX􏩁OG{}giqAfa}ڢTE^n:EOR}UU2=c)qgwϧbPaI/|{ !N2-^qׯ߇L[yFyc:@wC=˂y8PȍQSgUxa4(e%PiΧ zFB (a߰ Ƥd,q]nc}Q;߾ U?h p.R7kyPN[R@WT4GF=nʺ}: Tͺ*dQ㽛H`gŖa>[!5l48Q" +H~8SXb{` (vVqo3^ҽ;\}J,:2Va%M, QYk,+6>hSx1㢿FJ g)\,֣n;iA~F2PPMCMVu OaC&ЭB>C%O1mN¿/noC"_RY*[YaQ:'C?c(~38Zqs<2]&ƾ''ppqg< "%'YKAc,J ;d!&y~A /=*}DeE@B6 gA3A9V1"-Ol@-9H=/.XQ>T_~^0?ZnO$.PufJ58 |aYO*DGAXA˯B^݄vrIhbUDXyVˏ'/E)g9YJ\oְ(p"ck:+ [V3(pNқN}-?N |4Ґ`%瞛DM_XGul"VeVrZ @&yAe])C sԕ!*qH۝(4-=**ێ Ed-x&&{WQwndƤ62!qBo$~;έT՛r5%N℅z2F~*;: <}e)*4EƞBbWŘ+2hCNaVYȉ335'&k3D ej2rνYT+76\&o]-w *+jB]sM/z'kYW`.]Q2;XCneO?"0^FZ~Sj%7(\@xVY}t:VL{!m5vsO @MY3i G*.b6sYJDLqNT?DHX(htQ[x*5.kiW;>?47 7\0A.M_i؜5>?5(4{4ᗣE]dqLB_*#560 |oA+Jy.W[VKtʵN(K> Fc#Giw2d }dǐUOF_ß=z]$0 ޘzԉ'm9AO #p~LX%!|t,0.SH'p-2]YKΞGZd}I텫đP4->&F!ʄQk"1`Pz0w^Cvd_vbx de"1FRuuĬAkV@xcRInPd>Hl%Avkmf(W5DD6z1K!m.lWrM;JL ˋoP$ ʒѷTo\hFdT6"^ZI_EԄvg̿HFؕ2}b/W\9^f ]G5DίT0AH/AP*,3}С7p]\.bIo.Z:N^~ -,7`VrmV O_ss7b^雡-2ymv.+:[dIc}w^C+t/dgF^}Қ S]Q#e^b p6BD}b)aFigVf)tneAuHfBZ)Z{'/фz2FkN;5SRf=>DFߌD=E-~' p{5NNtnbԸ4|jqi:Q -2 8:Ȑ\\5cO:X0 H0RT]o*6$w^,;\!|q[n`!WL^`m6^1; )]nRO_'yb8A8Fݴ枾ڜ m~f6pʂb48rq"hL$۩ bQ8¾">=ys<e;*JR m TDp= U%wFĶW?[ħZpB H^/ZՁ`Im4.tT[|/\+UuR@FA'a,f@ؔĮBdn]\ɴꟚ)oݲ^zPaw:Wy{rl3gt%@^'āO _vagR8#pd70J>:Q('Bj mℭ#فȬv4'\fMvpI?)WB[2/[8 0Wݱ$8ض"=<*} (YpZ 5fOg&ҏ3 ^U'geǽ9`lth\8l%Bg~G;k)M~\Gd{=^%9ςtpŞ}i"SV 9%{4jc_ݚq;NThϊ~ѧEI"Ƃq!N#ݧcoswđְ1LW_q+L `p«]ãC|c$oz('>jCZK I˵tMdke@p)XE] Pf{O) !)G *L>8&*0v D0$aEtW;W $xHsC8w ?сZ^pZ47Z25d%t3c4Ye̮*h:Kk(p`JK@3GO(kZa/fԚyh!?jWO]5!cDZ `hgWCUx9%wuϨ$DF_LL!/[N]V 'iN rMޛ]$Mf !s, x3ܾ?Xח\UG?:c1yޘu$l%gl'Gb(,BmhKjZh>æjAE'ɦH{ #tH, Nߡ+x_.opM'pw/|GMasJSls_tMqKJ7lBX8HzK3 ckX ~pȗQLP1U+E0il a`prVc'dZ"?0^/1xiXB$2 wve֌`ȝi)u 9; O$ ǬOA,޶xD~Co\xSr癃Bk]aaC\U;pvKV@d80 _Rxw%_)n\p'2FssKض(u?|\;ga``[=AWc2kc tDU[&^iMe!T@q5#uw( ܙ:Db(W'=n%0` <ر BNht6۝=uCn6k%c(r\䬮 á_&CӲWKGD6{;.cj# 3W x7,=0Uav~sxp*?b[rFæ!Ӳ "$}V.ߏ u4٨Rp ,TSbGԋsQZwy=d]{( OBȽ%0R?Etv؜88s),6!fvU 7,;2Z8$=%WЊoR%\q$)qK!/@dXX5p[橈k+ 3 rJ[˒JcfUOOzᜎ?P@1:DC CaERYL;6ocl{o!t1'h>Fc ĥnW+ړΜ= J+Aq/G'b^][%WKI?qAW"Dd<obƒDc{Fi8"S-^ Cȟ/^`])Xe ]0ɉH3Eh@)G(2qUykW YۆS#71[4<D^Ni`]kNв)ƻ^GYMX-/+7_DP5FUrdY]#z7p,e ˈ{B?0@\r0S+o@eMLknw~-<zkc |q|NEXSbFtùb̀T/h vFs|/GR=L؏J \=7q* wnZ'bftU4QQ9)Ұ5nUw,dW@Bpk,ZQKij!m}"Lg&̌=Ąndw4Ixh&O}Fush%0«FB wv J@.Vi-bK8d a,ҍ9Fyvۼ^{k X=p|ua+qژu7rhw|$tUads%:)"AhR?N[BIeSlvX4,٪ wϻR/hϳ`D_72Gt*0` Mr'%k1*45@,V4`FlgU-ը8 Aٿ9U[[5JX_H t=G8>L.[o&ȧ}&#h"@U ycI8'eV#HޮZXXWYaJO,]Y;ihW)<8nC݋ ") CˌXD)wQ˶=v< BzϊQ"HM 2sOSiD*AYsX&9ɏC&ݛXﺱU23`>7@MI7d&ƙWQ]rf<NQ[54yǻt" Z =%WÁ>K0bBroQ}*'yغ@FUT+מo=J6+=l6j)-oƸ0F Dj1o鰣r -<}ODU`*ɐ)"w W0)d!3[EZ T G$PJUD\٣X+eWGyM`(XDH#xk)a[hP^f ǗDM k3xP{at֪&&Y9,if~#ODCY(9`w`oB}UqM~ȓz^Z-yptw Aq zqwK)(B,tHbO"J/YDq~!r<[B1ȜoQMH ,>r UCN &#Hqv-ΓjVEU~flwyo xߘ[s28]\|g\ hb.ouG%'".@@޲BX\"`_>iL,gqaX==WΚq s$X5jkx Љ J]-CȜC[z^571&IrޣIo1!_y\:5 ;G4!ʾ)6I^!ݘ9R.W5VӃJm h/u_Go3md! F|ϖi[Ar=#Yy&HEຼYX WyXMh́I[s(~ZǨr K4L- &Nóf62fa>'j*b.8~P>`9NoWP9DDw2dd7nae<\|OE x.縺CuNN$P<(i b"Z-? LAgb/dɲ@]̒Xx bA2Ϲ07<a5M>.OsGߑ'!ؒ] r0K/P%H2KR;}axܡ tB v{*|@"fMپ4%C|6r㈿MH(&cxp. g3<]R%&So{7e?Ɣy]!A${2CBx!Yr]wp$^_Hg<6Az?{*y+{{4RGaIv|l(~[ aH`DHBimP.Z¶D"5ZvbO6ǟmQ-UHGͿ^Κ]K G_9|hrx*©Nv,<(<&؊vu>짛jyk7h8S\ƿ"<"g -Gz sdPmU䅧2I}.&SV|n8)٦ Ȍ!E42raΓ 5[؝~#`_ؗ݅V0\KE^|AH< .jakkoڤ*V-lYd#[<줭[?Od H fjˌex*x1#Uj (MﱗLZ&EL[́m$p̼še ɳ9!kaRaÉݩ7u^|Gj1旭UKH]/gA&jE&&W#s͸bO?m뎊&ۡ1gw1>q2'GWaj> VX߰t(r & jx()103w\tdeaO+ܻ6C]wk숼QZ쳕}gKn%Uâjo1r%' J=C]Q?a 9Փ/{.z"4}O=̪҇(ŊgtЙ- M5aep*/y\sEsFb_ zO)uInT 6>KC2ģl#M?ޕg%_8H$ .~yٓJfكa47Ǎ%p+p]ȃRq樸h/{pWaAN 51@ӄ=X͡U5~2|0^lP2؞tWF^*"8+FBҬS !%>G&H!k}9aJC @=[cV=$E E) 7])n٪(ʲq'_ pR!,vmD> ]19Ю)CqG;Vb6 h&/>#=z} 05 ] DL $&6Jl/m\́>)_0DplHN59;NdQ^K:IM.V uBD̈&,`drnMސH9F%D;K:T xZPuw>d }QOa B QK[^W׸5Zys!~?n~ozZDt8}CG39{ɨ`3clcy>6aM8Ƽ$)8`Ԩ4P=]~g[4WcxwZKߌ xV<ת$j RBE!yDZ:ڠy)p!Cd4c#C}9& `D݈%QЏ} S(`$>, 8e3ۀ| [D klȆJk}_Vԅ|s0 .O~` Rt&0Nx7bTۘTح@񻫸 [y9u K')PG%UF+B!:x,~gm&sa0Y_>|zjTs\78~im)oue ee \MM]=w+ɢ; +-NÀ"eu60N@ \65~l~K6>xܶŽõʩv#H yf~4Zwum>Aチ {ˌI&PSIa.͡`lvV6춿V/J~VcR3Ze=8o&sv=8)4W#<\BbFeLwoL+MA>u !Ppހˮ+-R,).;vP.y3*4ҵٞ E^MW_6{2jN z,nЮd1mbtZq Qg]\\,(/YXO:-ޑCX-:{ 'ƴji/^7Ηq.(|Ks'|O4vU\L (KQB,%9qREMH}A 'v}Jrᢒ('Sn+9ģA m ;UU0%"S6؆gHuE vQ~C/{ JY>uA(!5SP󇶝[$-40F^΋kUX|˦f}h4(^u{ O8<@gŝP8蘁GC~%8nMl KP wT>( cXd)asN}Y8j?!Eqya-Z2t$^RAz Iuj} ͅGNs jũ;4є{eT*WQ$!l3* 9V{D[/WOӄAM+UHXAF|tnTݞƣ&C4fgkbV|T`<7.y vm>K@M VBVOH 0M;=H-VBL=2ԷNjs9f7zvg`@4'=%jᱼnPI7!sQb J*u_R抭hi<&Z܀Vr  ~R-v_%؜]e 36 wpaꅹ_ RTkLK 2*v۶\UH$kc&_xk{MCBC(I*bH}ڨ-r65oP=?&Ѝ8ޢTXf0ҿʎYjg3s<^ЭRG?H@2^@1SSJz$&/TC=a-Y(qcYmlAқxK[֙з864s(k \!)HwdH!;h|Gܣq\6@Oz{#sN>-d+*aF!bj^ApM>+"B(BN*VAÚ`O C>Cx-]I&8O܉v:a{}O]=ύUƤ|Q'k#^p$KPua+:NZԦp |irX<+V\[>0Ggc-~!mwI<ed5'aYrKun>+AJ›D-r6'@nM ?+sayQyx[-k޺CTJF`8 .v CCfZgBWf}¸-"][n [f%9J^X!Ew}c!77JH(sM'"+4%/ǻ/%d]bVR Ҷ=e2Yd2_|[DPW}-1N:CVf`2)ظ7'(5/S/1 #"]l`< )}v %,\Ԭ- {T8=$[¸dCR]_GTl̫҆Th :o6iBpRaj7<2xD0-`9H Yci$! Uށ spÒ%=_ZC,ĠG ?@:f~gڪ3*UY]:-l4~jÎA@qx3C31cx.wh=ʮL2lX֠Y )9djoql|2K9I[T5|/*}P㜚ˀPO0I`}½"=H] hGs0ClE1xYd\҃By_؎V-ytOp- { 3ʇVLHXVGM7(i`w> y*mc# 'rR8*@Hj@C @F˛GGqKvX„z%_ `b7Iyu镻tA >_ = j6|pJ3W,[)z3xDjBq>4>K&rBmq0]c~q7qY&q G0[zZFQJy_h&fUoR>@gB\r/_At+ΐa.!JW{<;JmRCZ(+ 23@ZbgDH's- oH\qDc|xտ:{ŗp0I]K6ǼP VKa>3'vi 筜$|Ow7lUY*7}0g7igqJ?;op!8}<)5)-zINk,6|'lw@&鑅.ᆞ &|bd m RI\bIb@G6`wZ>!4y yd\QFWaHιJE%DbN6|`3쏫rOJar՚wGLkrָ_ň 6oʝ Q[w'4Qmoj`9$օ(xۮ|qMyGhdػ{Aޢ ND:'{}'k|:g+&wBu;<:_Ӝ ³vIT+]IZ9g GW ;l>6΋ݯ#Y%Μ&\]JSM\s}~I =ZDYLgHy4ei$,;l~Qq_"5Q7G'cpuԖa=2I+MZc12M/ƭ_;ڋp?&AF3UªL'Ml7@`NwiM!(!Uޡ!u_hgcg 83`luF@nJ(w(Ysxn$PdWtI$߯rYaNHl!}Wb0>CM|1%tzAj8AXYQٍF쵗> ÙJ[ŞBx$y2v̩Dsf|P_e"GSl0Mģӝ:~GͻiO#ƿiPj >q,gWJC}P.WJ>$;/l?_& \)>FQ(3ߵ)jnG=!X $AT @K<Ă\jnt78fQԊΙSrwJzC;rMK9N+xFݑpc`ӂ,.CJ`FKBch\$}|j a"[FV5S, yyd$JS9H-\̴RRץ]ƒCV(⵵ȵT\c7[;w{_nF[0 Ȁy[:ɠOR;7re`{EU~New6_(ɢ;GIo:z\5Sܦ t*!HrY*`{dİ(05ɂ8I,M)7h'"$;7x-ik,I-e0U"p6H`_n Ĝ/^Ek,nˑ FXd kgEO%"D^!D03_nҥPb`j~lZoEbEXU~[K\BG}p>BV\Q6'~0ь+]2SrHZ:kP;xٰf[Ww3u,S6Wj2#(UuULG3c`5<4rFB]X=?2gȋፐ l zGo"p?|FZALʲ;0cQ{G(N N*v rʱ,7-.Xry;WJĠ<%]>V$ DQ~/ɬ-/o( e :Ablw봖T\7`^@ V m! l5F6pvuc%}vVdrOIUp>c7Y%a;`Nayfi|ˍ/7RHuO80 Eq"Ɂ[ 3f,݁^/l& C `%Kv(^7pBPSF:&LAjH)Nѳ|P+t]Z,]'<|ɞ~rn.fzr:kKL@.9VowVu򙥡nq-ĕ \`q47[Sv%Ǹzl9VA׼EW+L OǐHzf"3PG4>B" ڥ3FelV⯷{_-_~׼'FOz DTYLn E x srCmG< gp^ H"PBQ r[L.%;qOf:̈͘Oi sF>emwAp"Y!'ii@6*IaV]Y`ȇ3h #Njzj9a6ޯZLw mn+Bh#s,ިfԷ>!%leZ]L$+1Mx;{("bQ~ D|KH@f%rVU}Nװ9#|񊀡HS$m3(fR$lvw2+r'NgoTgLGtF2ǥf<-,4%aVd?xdȁ~EnO{0e4;n;1#7g,W\Rs%+TmQ '~)!ly,dЭRc) &A yDU/aSr@ M~p/whSW T(S#3tGs3!2I?S?uZI/(~jÅNp.j9 s;ĬkZx!bq5V^oQMO/ߍ+$acIMESx$'m!gԱ<ÆWhBjp6˚]4j1׉+)' uui](^␢ G KF5C$ѣ:5ZxqRW1]@44p"C,6$9 &Qt2þeW:DdC<1HƖK IS7G2Ƹ0.:xkR؍cKP}2| $JsIݰ L @`+Q0ي{{{'$jT+X\%h`ݑ=pLF?ثPSq,ǡ3.&|@̎i5tI EAmner0:0;&w`Y&yß+Vۉp~{p$)iHfM-Z)5fL+ DtyK@jEow7J\mьVP\>࣡^&k4=^#WZV[6+(B 0P)mWixmhRTlh:T-ɜQ%0X f&G2#*w+nJj&I$-!i%X SH2$q5o՘_ [7N4LIY֦fM+=`>v:y#nI+p,K ( ѽ-j(l~=k yS菫 _p6>)_+qxgq&Yc`ϲN`49T̓Jhptt<ǀnR5 ?d dp,)2l6|/UIÒQSHG8'ת3*nI@#CqZ#>C\~',x썤K9[9Ñ 86~"2]6=)GBO5勾. 瓽7*w)i:60 DEU>QwE'63 Xub3ғo2`oݵPofGqEz\6?]Zi:?+,`BA ;Gnت>Qc/iA/H)$sƞ&c #v6#>?z'.b˼_+8fײ!…w|ne.Ahh$\4~pŏr7W6jp ѐ>< fwgL+4|x0m.8o*Hry>|õ;0ƌ2jrfrqM ld2,;~ʧ)i0mo5~Vbeg^3ͷr4 V101Ve>A*l:Oʯp#Cjoe߆hJ_I*!QJ38aiHsnXT}Y rWE -k߰n=,),ӭ.J1_$}̈K?(T<+hlΒ3,-_xHV"e$3Hlw0Iۀ同|*el t;rO :1f*Utd[Q%Ր:fOӍ!ۉ6hV@i? L #H0x4&G2-f|;>@@i8t£ǷV~+ujfI0]MD 6!@:*BW^IM{͌+qںF3=]$mϠ$#uGKՙ[ʥ5$pbz!~Q aW/ \JځO#bɸaūc-k }33P|!|\~4UݢCjLng#2 K #:AuD+Ab?` :jݢh|xN +5ؿ]+} ]|L_Vۍ yØ͵[0]b?WT!mH a&*x.C#ety.VER):}QCIS,= -m]zV-18[xe`wM(fLm|]%1_B,~R8 boT"e5'V 5Jf:Kr=ڎ"8͈sHJpx1vx4PAOFgRZ/YC= G w WIyc&<Xo wK{V3^FwM2-s_ O\r; :l (K+gȑc,,GBVeWv!w|ytSDX娣l2eMld{a .74?{ gP2=H_EuG}l)țJ4"rCɮn>Kcζ&5rn:(~s pX[%+wG0%|?O%za瘇!3j#}R-D7xX.Yo;xK?yeLjIU]OQM0&ϩ8 !@FFƶ:NT+/i*8I[32ЖRYuh"9X|ڴ+b`3}UCsY.7p;IEOy-="<4o"ȱ>p{33}/[Ϙ"og.~H(p).8%iI]zOc%:NO+Lw C=ʾ+H-4 ' [Ps[78ѻP҇=8/Co=2T ԑQ*^H;Ke1l7 ~Vה]ij5qAxZ$OLZh*f% #<v;ҚE3WͫҿA쉱 !]OYOX(ycDQ]waX _T$NJ8eNM8QWM"'x)ǭBY>fO7.:K`D2Km҃FJG/2\KS30CcȶNQFӂa0= [!gԡa9OW(5'\''g9dr5sZJ-JlXSڄ` L=XobIܰ8h/_j_|xۆr(\%LR\D@rh!bC4uMer$HU&#Kiqٱ%woBMÞHH2Rj|?f-I-\ @6MV& h08{mgٺisX32{Cu/Z`t4ߋ$H݇6:Ȋ.x[>îl}- h{ ʐH>Ѥ9`|T{D:-SvOUl(΢Z[lH%'ߕM<73Xn`N_\/8ak-JL3G w{/ x kI\u>z;Hh] urŐ.}k0:W[cCɒPv_ u){ɍ=K>04Oʚ'L ٔH*Uݬchi:ZR_f|MA)UV4ҽ &yO XŊ쐶O"t/;Y)u=+nW'ň /Ȇl؂*Nuz^{TpƜ_3UD+~U;461P!޺Ʊ̘qaC=IQԯQU0DF܋?zK8MJ}dSc 9O?=yf?f .!k_Y'՚vFqd$[-dv*\[[z{0mnr0Qa1+`'ahPVY53'񜖳!N:#M͒)[&d(D5?8;RMW{*Z̵!&Fa3u&DNGj Xi ~ε+zi@g8> oSxF'b޸ԧZo}Dͮt~\׊dhwv^Bņf6[Z 6!!EҶJʻ%sByk}^bd&^i @D0> -/zI5 cEHUU0qb{'E#ݒd%M۶`OHEMߓoV,϶umo,5 öhv#ANݗ({1JkH[=n WьERZd(Na.OvDQ}R2}ru[y!! nZuy4nd@{z摿hهbRϽigOT)?.t6e1_U~ c>_/I210v6bc|[&nip6dgT ؍x¶Ւ۾HxZaiBro8F2iP7CSv5nD|owIl'^4*A:xiJ&= $t]:2M2R`Mˎ岼(XG'(Ng+DŽгn]WGf}.$-PW1Q2(~C5 dͭBa5kYJ2sWZEسPޫƨ͔_C ZJ$GӇ>}j IRe||(|[P#J݃3SN^`(uض"nc-(,j sS0} 6fbd$up܆iDLc a D0KiR vkxfEJ4@.$J nMBI43(h=ZlW&|p  y荾EhaWdn #h7T!_ :QyLeԀ˽r Kǹ2ޙ)b nNTi}Q@_C'm^v%Ƹe' X>ll7[j}Y=xvgeK̓YWo}7/U/jʟL8)i]UG{뭀_ j'yB*qBRp; B=\WrO( 8T EL{8 Ѐ0$^SE\0'p45m72cB!s.qyU5%Ybm6.PF9 Gd:]hvbk綠9+۔Ƌ>⇴0$=]`6"]((ҕx쑕R86*>ĝg,Y'H-@ٕzrYҬ$˘jޙmT>s:vyQTbOZ+R}F~DO߃=A3y')6 'fHN0r=,|wuޜNMUslOU+-ۛ'tiX Fbdgr[,-pxΟ>!LS8>q+%TЯT9nW|W eHpMwWQ7xVd/[O|-z&lKϪoT{[CgM){Emj&ÉCXѼDTXmѩ 17 vX$ Ok!GαMOR2JAkNm(؅:ϋ5nFN(ͱE>ofƧH[o}oV1rXsBnAGaS ٖ 7@Ux`X"$WkglvmP润'0N7-WXQ H&v2qZD-i^{>ȌC&r6LyNbX4u 9!Yfѩ@KJ vb*=mSH)ռ]vJp30x[?pa4}B,V>*x`0m[,(OB:{=Nhw <$FޑQ%M˪©Ɍ`vnX, VbOQ9pxE~DFno}Gڔ͏ 7} 簑a읥 wj u gN-deXpݟj8 ìv J{E;|`S?R~ELq)P멨d9{PAdNhP)¶Y\ 0;~qesYt$2[ zWJ#pNEH;thIQ '[6/Wq8,Pq4ci#p٦tSڞ(T|=7?:xNUWtNx/?TL&\ӿ$@O< uUVOpqCfiȏBi59C5yИI&+IXT&'.@WO)?|&%xXOEI hLS^,tsqm<MX@/jY#J E첶U&w)~4 ГvI1ImmG'6=T 09޷Ȑ@:S#VA)ougz'W6DTKV̰컮s.mꑼԹlW2gu/xRk1He׎^¨{ͶȊ'#MghfRnFl`2\{\(~(S%y&`SjY* f /86Y75/#e6ue2A04"˝W O[=G9m8퍜wEs93!~<\t͘@)ߛs#j _( 7x_1 _miVk"ĬWzo{=~OUȯ b^M[ /*oBP.E 2 ,UF39:QQ&x'L;8nq7h0EM7L<K?]nRo(g^)[+Q0l_r-_(꫻} !IW~ ~3. h:ÝGfkL'!JL,hcgb0HLTHv7iyZc[C|ć^Y.a"?4',RM W%fYl7*'Dք4< }x35r3HgpD~گ4 4MB/g:#a^/:yJ6*",!Kc );M<I Lo&s!j'=Fc0o/{<7>܍"& MЯRsK!u֧wDmh3BX \r,̰s {>yx 4q10Q? 3\#+sqd!lB %d|vR0dYGBZRVfI n|* є+,]Dv4]lLCß>Bf)[.# 0to'~&K4(񽼖^q[N [1EsY(Y#^0E\^(lW;^Pw Z ݠ!M (!¨/NeVJ,xi_{*y1`ץޔ (fz7nH{.AO⍬p$2S55 ՎQfk#®Ma-PJi@uzf#;'u+^mJD;/^5Kj*iuUSm<9zwj*%)3ω[u(t1!V s1iDtL 7f'7Y g&>|k,pJkxdZh>#t=t a7d\q%\|{'7 TG[Q &Vc^T* &NCOC©f@#nIqqCK~K͹I]?@&c}o˚df*G[acp 8A*EY|5;)c4p B3/&r;p$sZbXfCC>w[zjVY(+kY ,=ִv:JrCmvGt3A~&+~cRy}.՜1;9鬶J[\r}"]ߨs7q%HŌFCC^tba$ynCLCƆJ f1J LyݥrhZ.Wm++}3O3~^`2pS1͘\:1x9Agj*mV_+ 僣qN/E%<1$=+lx1&WSjh t/mm?A߻\gW]G[~Q$]udmJn FZcᬑCg!+5zsB*wAKWlKm[vw9O\1s8tVv BgNYa5t5v5i x^jp!d\=O $b^|#K{^2f`ӵ?L/RpiEnK_{:q)eNr~4>! Â:Q+TF+̰DBDuQscM 3ґKXjNPa"' fš\Uq8bG475JLڃ'XBa. yG,{KbsA~',l%#Om }ɴ8skwO Q9> ڜX_i7DOF*/4r M OU A |idiImvR74/ <8vxSsco)5"a ;T*uo\']R=zEO~gw`m<#ik MB̆;%+/JwpLSµ|'Xbk#eN@[)E epy Ol4nt}%/r&|SֆkJ:yu@. CJwDsLxys֗N4Lؙ3[R4=^z\"V񍛀X.*UHnR3gST+1FP=i'70dL%1[;G?@l,ئ%md'yQ/?yr !Auifn2'7lD%/ZIxJPR02Buspy`=r OAE$E8,aQ&&MRfG^PRm[72f5A?o|W8Pu1JSWQr@ZS1> [n(0$''[Ɩ!\4Y3c 68u7a{Q#Nx34r݁Ij;35=Pj]d'Djc}9ɭʛGC\,skw:.r뾽'6Z3IU{RϲK28j8xXlNx )EAt!KmB6 Ji% jڼ26_kᘨ0Fޒ!Wv~RcϟC$-:#n;d*@׎34d Qb s*}<;mc;(E{"f h B痧pM;6C78i#眕{wŤt܊͕I4u˗H.~@s/^iKi>MF HB5w[gՑ_;aXߢ]xxԉʱqʦ03aw*>kѻ .<e6%#_VyK̯uɍ.4OK݋Unw\`;K4AnoNrd6 H<oo7_g)*F/G`]|=O4@m o!uw&/P1ԙΣsa' AcऑTI-y\SL@e My\ WblW/ڸy~VG歔s ΣgFzw7,l^#׽+݊#0JVkyX߉Bj'?X;DEl%*Gڄp$^_cI"Xw{_qK'⍻LQB`Fmqc|3~5DKd႖' }S*jX!Dl ?]%릮+"p'=ƅρFLe6&$$Z\Vک蛁*,Ie&R!Yv`K6XGs .Gx(n䖩foPDo,fBN)9]|/=#W"$Vžs_qKJX$Dn{z4>Z#((PTڰL40[㍙R7S4x+$"Iƒ>x) J (s⬮4HqwOnVr,"P .s%>}K @f@`ۏeRNOK yC)PEmtҹzQ4"7ήa?:+P͂`F1Od-i-@@ly]&FR ĝpP)2 8]8z`c/E1_r+#jL2ܖ|%`9Omp{%'Ⱥy6mþ7a(x5|Nj9,9$y6ϥ@LWf#t~P,^JP0>-"QT 4p̯ؽ5ra 4a`Kq:ȱùIPCJɟ|P 8a#U@R(cQ|npܛzKGr\O¸-7)({GD>M>K$~ i c+&zX|XإK`)m.G:%Q=f b}Z `FЬ:CP=۠NZgcйRւA1w;dzJ<"B`™z Q*#hcDkIf?Qڻ18`Al5<#0?~d*auwhB/ݜ^%v|W b.=|8tn@#!{f]h?w mbS)*7t"2,PZ$>}&Ӧ%pKĦCm;!@G]m9(Ǔ*T$͋ < 6y׋QA2jXK /ﱘvokik2 &`9o2QEKt~C ͹"Nl.ih/zlY j` WE3N̢O'E#ۻUƲF2= %4 h$a/_r"*u)5A6h7.>qۦ-[lbr;c &'RzdG׎T.ƸE{HR `*mcҢNļ1 *hW!Mk)ױ>¯}ʠ8DUϟ,#/ʈpYGqv`䁟O5j/8.͹/GELq 4[rxr M4Sg<,1R/ ׎Nds'aclWM @//'iVIH:}:,xG>(wNm-e9n.>.v"` }nm>ea ֽQl {R:"0\F.ɟ`(elmZQ8u5UBk?iJX~mg=iBOᤙOg'dR4s0s h㐣/-"lf?Χ/JV}qj {@AkA*2FYnLEOU'n;|gKMU&\螑l6ݼa:~Wo R-!^&7I(2C2GU\T&g4b2%+Ė0+W(BmAg#AHƉ4%?VUCήd39w41ֆv;5b;Uu!!"O}틠U#zN&|W'keT6(˿m!Rb PX 2o`s]C՗I7UMcg_:cP1DYF/:B$Xm#M?bKFx|AT }A.S D8:S|2&4\MNC7L_ zN֔L?}m5>TVEܤe;=@y!k}&Q*hgOqi\/p4QG$?a%^Qii+B `)|K RȦczpRoEU|H!AH@|)YըJʧdBkQǔaAb1&UdgAp9V_ -I;v$1ZQݾWgF*j*]H 䧯EYeNF JL_NX WǀL|C㮓>+&Z3RkCM7kqCxٓ{h#( 5Pv15=ӻ"։б7k՝>_EYn#d"+{ìux" ’YW"<q33;16{6%{ H=>~tUjpʧ$m6 'ϧC|/}N {F6fj) (oyi[QnkV>l+_Fu|˭黙N6, t!w@PCd)+M$Wۯ&_X6ǂվ#/j\gcyI_I! GPu96: Q )Ug(sϫCj"]/ȄӤ52=98-ڿs \h-Ohü-dC!]t{C樹a 2$]W%C[XzTnm{C Dy9%.zXEFV;_%"-c\!TdhPCfq~{{Rz`jP_"'Kd 5u2D,޺&UK\I$kj=ʭ9"ܥŹ@+v!1e*Hv:J,4FIAoէ"g%`_lyaХ1dջ-؋UjJJ]FV 3>y%)TS:4ML} !XUwL-+⹞x+N[.SzX\3|KXhd`gNp%Žj#-o\b ^Jҏȇi49J`=kERx}ᧅ@,|b:$тRݾ6V _0(M?QCU6:¬4ź#ɳ|X!+j{Ķ)D8B[[סiB0΀M@QK|l5*5|EU2 clXkT"udE$OuuilVN|;/M[ƝN}ɤ(8[DOﲎH~Yfl r蛣pLǧR5M.gn|!p 8}$,8E,9[q!\p ;&TnX߲1(V⥵W`_J\u7짩'g8A䌚ׂS;pb6nI]mݒܿ !cEȌ}W9FY \i^lJ?H]x\tsy-9Dpe'P_شFKABv\0y cI⾤+TmB+G| !:/~?u-Ì]'Yn*wT/A-ZN[6TZ ' }>ڧаVKIy]"vn%8i-b}ۅ.rɦAF KSrpu?^}y?={1VIӎ㬴z*)竘vĮMjG'sv jHn,*Ӷ c|͟. ~^=NqJM/H-dH?\TG#IŬ nt͍* 7 {|b`AhN[ϋ!~=$ i`łIgۋUhQO|/8,pVOz]bV98W`4F6 e"֪r4gw/Qń%Swr;>~]BcN>v|,G2 el\4@QOƖ/_el6-87C(l*tTlV]&@Cf hU6"<ǵzh:9#ɬf"IOƯY1EsWxO)I67==L%+F]B n-Pu*8r{,dcK\FTݧ!d'^ꬴ]:y+5ct>CP'~0}MBL~7qT/U\j&;8||'c)8*Tm4^z +cV] EoaI#HRƯW; Q͇䕹VXV:-@$j[*IBwCD0R]|cf[9+c'xEhY>Ji2idק[92_*F֪ u=]=]zU 񅃈ߣ7f 㵵i˹/,YDHW[}v~HQP,B/HW!\Oo3=3{05Ogb"BX@T&sKht~Բt>K8Fʷƽ f5j:@e}mDVR7o' }Kq4ejiw$f .;uk߿G lx7RbUԮPݧPV" W9ʒ$0^; " "3 a׭M:̿էfdޯRQB??:S|ڂIFZō3ڮ7jE 35di%qĝm;$mTe Vr~(3C >MhT&0YKL)*ͥ{Xs(!bw^X BC9}9cC<ݏPp^XFl ѱKLb1$4Rȍӈ'e?V L ?{k#D59SƊs8H7N/1Oε%ZX#2zT\-$|5!4qEl'چ Cӹ@ΫwX2 % ~I`n0T %CIL AqFGǏKFg6cBZhmK,֤&B&gR S AHkuC2Id(Wj_v=[iZ\chP#ϓ̈'gʏ.+u62}p )(\L"qq~c yӄ;v=yg 5m/)fϻ=5 sG5(wcHɶF}iF:keEFn{Piн*-I["˕ƷW9ئv} lB\UR)^]A]l$S\\8k>wSʅJXswzlZ/-uhqQ[ڋy'0 H)D XZ, ءc+0(+*|(|D>A-7sQ`z@&Ԥ"&~y.D`2j_A`d7?D椫[c, baI3Q@!?mKv1- beS]vH&*띧vL$d)Άtwꕨ:-W yY)2Rw!MjsSw:)~_VddTOkұhg>tJdlE+'Lm~OƢ0Xg$chA Tofs1a.m&+LzF%4gY- xkؽ\ |uٵ 0 hR+a/сUR<.0{GO$=NoOE2S+*J"s]7-z}8dwplZBfuA2iا |`|:L1P5[Z=@`!Wn >(wX(d[+e܇j5PP= #-.mILaq@Bg'rORg6r>" \=)ܹSk[C V?6TL '9}'IM7[cIPȬ@q%*źis+Z!,>'տyDRâQ0mK0 XJ^@<5{8yF }.4 àsmxIg>lG)U"}Olb8]ch|QWݽ4_|Vi}@0av0eҪx(sѹ's/LKj y^}bKLY4$vdpZMjX ȕ>#"-UGrV\ K*KOfT,k (t8{H1 q_I:}hh]} aW&o?'+VWS[n[.7ˊo9Yy_"H:ogHLTo)-.U]';x"BZ jE5C;7)=*} -8>K*#Z^OSTPk1x4:iٲ_y]IqV@> ?/ 5)Y9JWrOaύ% 3WxsﺡFyKoQߐ;ƃdrW?&) 4ҡ .Wκ;h ]Ⱦ3 }I 'M 'wAQ]7.$@f=}Y0(.)'Q{tEv)m񏹽D;+D_Ux>eN&6ԊxJ?a cx>0DTm_m6ojp] Б1,bmRvuvof>S͗(ϱ='."ݧfhۧ^{!`L@,@}P@JI1G'`CMj-, vJl,2wjdJԌZDƦbP0mÂbKm '7U;֍a9I22 J+f jG}Kuk (4T=I{Îpfl5͐I|o'~SjI\qTKj6i;J+IGU )ho+9ͫ艘E 6zٟE_^iv#xZ (dWbg @Ғf+Xێd녃 bȧrol-Q@>'ng4WdTU9U,yzR\٤85Z.L=`iq#Cײ|k  Zt=_PfZ5Ӑ.ȿI{m^N='IiogȺ'Zڤ8`1ina,*|!̛Y|BƂQN!u?2p3DnN0 ^}oyMvetd௭DBX\~DrDVm'ܡj7(_)BJ7L.,2IĞ- "܂j~Z+٧t][FC=zV' lATs=R8g*=+g C-\3cVSXCo݃d%:JX'l1 BotUgo?&~ֈ [nbvYb5rqeO `3\ijMޝe:'v,z/漚^:2x@34l˪6UϘڪWȭybM,=GaEв{&ӁYWxLQdc(T>?-s6$:U!X894gJ#7n@8!º2=Nٱk[:L)P`G-21i c5ǿH.&ٱ^邶j49bb( V"/f1irQY6x/"Uq }/#e m*!xʴVޓPů %/e:RiҨe mKkenO =P ɵaZ.+1v`п5[;b%[7>3)ڑO:-wz\|ĉT!k~(= utzQ"6d PO^AgR4jv-)䀻u< @bZ#8|y\9PU`*IxR.nLŊ8؄sHrHִ'/:]e$=fKIJEnƩ9'2pwDГ;x"r A `GPSM"N$+bR&Fy~KOxclI?DGf<,Q:&7Ǭh gSs*=G؜ waIKŃG9BGThgcRS?B "^hq؋[r?Vg,?̘gطΫl؞Luqܹ`OMWL bww C y`<+Wque%Đy;m3$ m2DY |B8d ~~7%!D"gdL@x.`&i,ӊC\H)4e0S: Ġ9dC֖>'0ܤF8q@=5nGw"Y0(+f+XTW -bVW3v(R{8@u!f~I[chm"Mh43bTe5!M: \jxHmNm< lJ!lʩIx4P.bwa<;I ݵSWw/wP ;Ɔ/T_L[G/׭K~|=lxI~C$7y;1OBSH;%*u푠O[ʘLCũ/e4Nr"`-9@$zLQ;)Qc>y_y3~hZdr$E{d8&kԁ'G:;WzauU A R[f?VIsD EE77MXK`5Qi9PGt-lmUejj{ovTހ"YwK$ = e{<-]kJKEa`Y/y؄4tZ@:<=ɂ|xgk "Ҧxh"7C }JTj~0v!YIXRqzy\]5 DIِ$ZhbVTUYStDc]pۺ#H*[vc>yu*ӸrVe EzUPZ x#E`֚B5[l/: Gu;v)cRM#Xyk*mfk^Yc]Jz~N{,]'GmΆ$v!=,t#NN$uG.ƒfDn1̻[ (B=B`R k Q-=ߢ"j&s!-ښrRnu v _%Sݶ&2ei95L?Ͽ-€E=sN+XT32ke6Iz CP|T`g*S0,qo'IaVd'(6ĖYRYh40r?.>aNPr1ik &4@ \Yr˷Y0᧹c](.j::bnmU-찒Js*'Cf bkp-RӤPt6x ߈K0|[$u .P5< 0!YAجAC ▼L0MtGy3RLտf/iopn4:\K1(I\E_t4 @OFӁ5c[T!3Qa4pxO|gЛ|)vS^uplG7M[HP64] ]N~XDӚ`KƖANϏGQu %rbKtyC_)l q̓0=ba踟&Ij |,K^~£Idje/%X)( U6ӻ2mzT,Nyׁ cYL{kyL^=v?0M嶳*E$\)Hb," aB-#L@1M$۳O4VM1E 3 T35^Y- zbN@@(]}HlϽOL3[vЭ#.z`ogBDIƊ޲Khۿ~laW-rQxL*9:P+K*S\xҔ?ŐxE¡RpZX5}ͥsĞ>3MkX:|m_QBH Yw ˓P+ZiCt!_T*h1Xma7v3љ9wA"]̫'hiټ)+Ü"0W[hmvlϠy5N޶wYmM4n#/à^T%Gm<7wMhI\+5*ww&5_KrQ d|-XhkK:V'Eh7ZL[hN&;LicK7z2BH  ; D>>TR` L`vhjDܸ/_54}$\n7}pPj;ԃR9N'&?e\)j䪣JF8]%v.V"URd > {%_` k1hF5/F༼zkmI ˉqpkɜ2O77 K;pl76@>2~6b7p'%@!eBpr9qrڝCnYd$d֋Fv#7- v 8r=gt8R+EqnpuLRЦzR)Q`:T==OHVUM>DF%0šUoy &ǜ(̙ u/||UIsC =zB=8E "\ XTZ/*]w`إNi?w=q*y"+Afre=S6ov0|ث J!Ł?9i+uA0)} ͊KхjP^G_wǚlL 㠨s`G*CjyVJ<qINNm($172\qzНPuc~-J&:V')S7<=Z t#'hUUKϖtTs̗nh|H(J3@yl"EDa &pt!`ȃ$2ʎq3&O4Ag0ξ8"ήáԩPgd), >zzwM y @еhKOflA ŠN>-'dK?\,pv'Qz~QZ7]Dy)%VATCC@V9v+925 &w7Wg?Ѵ tauVW eXѢa [GJ'u./w:EJfHܗng!_YNz 7*T0wq09תQb)R7ZbLY0}^r315٨6?I~-/~3nH}cdW+.AĊ> Q_Ov:$qe[= Q#!x+Hy^L:9$ } ZRdۿꆺo~!W/ff1P;_G5E@/ۗ$㠐S]"#K~:ͤo dDPuIM҂?ƭuk]F"RUv'`@#O\xǃg7* rJLVBf/o*p^,:gz~ sŠ%iȤ!r@,@/QL8CުvF+t֑DX՘uPwЬQ%&c" gBvf9% 8%3¨bOOȯ/3<2wyh([P&cgz&.rϱ;)W3Bs.Q iZ/ 1nQs=f7զ4J. ?D khVy!LDaZRÊ2f mNQmxf>D VGt8|-F9@؝ٶ+3ZpRPZ. )NChGh<*n!w"r+?d6YƯD׎:q%Où-%>H vQ=r t&t@W,D2A{. m!p% |-au,pS \2NXSd~a&[A=HՍoHJEPΉ>?zQ5"F./IDgvO#N Q/wbaܔwNXHC;G魮, !cu9F.j'0]8%j˾Gq;7#C(7C(G>2Gzwi|/!Xq˖93Ψo²:O|L\`(k >LXNbE:;!OR\h6Ķ:Z750 'o h6܊ =mgrf,xw;'i#mdB2Gn&+QaˬD_.."u:OE,\p8qu}a]#&h uVl ؍I'b/h4+fC8}:_ 7z3g#xszhSnΏTءk}VAșlg86gTPwDEu q٪4N GQF_3(n>G.ntp aHaKnU =?B1ƚ91 29 1(>NdA\%G4!zŒÊ8@&uߋΔ5ի/QR|nX= 8R!{v\#H:x`M6Q X­HOP^.ܪe׽dVj@ڧ+ ' 늮l;m47H=v,.=`ƒUSiCs$Xh-ޏVBxYw-{@/CARݥ族w&&;,<%RmnF~CvՀTWKެKgCjXeJߤތl0Rכdń"%UIb|*I &&UEwU)QPd ]>|9iPm_L2v3Vn9v{1W I%Hu.0L"v8~d"ø\ i5V2'.6^IBt3)Ӎ฀T4ˮL}(*EC1\`±15MBO2s1 j 69ժ9ILz>m)W|8Ϩ< A;~zό-܃iZ8ķ! Hgv7/S@XM\Cx)F*f^fZ({9y"@7)M6q}<p[;gj5(NtsnWgߪÛwٽ8=az 2$62ܗ]%afLn3{EJD\T>hc(Wę]!N+Ʊn^!+:,J'pL-~4k/wn:j{uT@Г bh` * bc$KJ+\?el7SUXܭb șCPojV^vۛآ݀v J}ð舤 [ܲ/(}hv!Cn'?JC  6ed[t6ll,D3iz_Q}m,Y@lu%V0^"e~UAW6 ːqI7yZz \-:xMLŒ' 9(^GjӾn;Kfp;6TF.E[c2tnP/Rx:g[F*ARƌG @N]e KזVfw "'stOggIH|s^ÑLyXM"NV0ʠAF3퇹R&[*En@%s(=M'@] $y *>o)M}e}1[]@^H=+g)'Jh)w/n]A`*Lb}ڭ6\>bK l;{1mEt5Ro.!*JTM%y̥དྷ x9 ˫ӡBS֗PTTg:_k][XtI=D~2a Cl7rGd}вH?ۥQ|IYNCF`SάyX%c8/Izi&0 \ה'2lɞN3-H|:: S-HWnm&aFcE|wCQ%TMCX'(;!\dE֊wzA/WZ-<Vs={S9= 7)}r3n ΅d0Y|1t@4H* J1BȎU.6' 471_F|P=>j>9'J``+vx[o݃΢86N^ah|]󓚆VD8}g\ڪؼI%0MmKqimi"3Qvg͝1&7&c9!>[S+tVBؾjTەfeԃ$hdp}R̜WyA ds>Qk@e"1E- keUĐa˿)fK0QB;ړKE=V?o-|X+DhYͥƋy6\t<;LԧO5dCa>4,'DO<*޶YHhK{}?(ZܣnI>g0@)2VlҐs(e1xз즖pQdtOрM]Kah_NRiCi -g^&Z 0a+,ۋ%mbH.à$-AbȒ׽Ҙy^=%go ߒ8ُ<'n09'̽ @jXF!2>*?~Mc?hC:g9z; bc"P{f-0;īӺ oܾ!8kB Z֏Mfx_;e{6Y& T:—4/D v"e'YۻeuB7hOx&&DŽq)7mw`ؤ

    k$s8Ё,lJ-c;#Cgǧ"ֆ{;-:_d4ЁW9z]䃛~еȊ݆FZT݋r8F_uOOkɶŒx>FN8,1JjV|4]J;^X3T0b˓,ZHm%`g9G ?4&/<<# e\I9XةKkWt%l*z{ B@7ty^7`~iAg^?63qᾋ QQ̨ϖgV `28>IrWOC;\JOmt'^MslVqD;V~4y,>ŝ *̸} SR$p,uHѿ؁W*7!_'SY45:PxI𢩾 E݇RdbvX\ogA{ /'tn-VwoZ{Ф*T拏|`Ƀr~t$y`3gYgCjˆ DO3ͼ^ŔZxDg3厰pHȖ)T y;K:wIH"jE }"K`|gPƙH8;O y+AtپRҞnᮕ=SwsB͇"?uz/fV:Q!F/K.ӄVar0) {dp*B۰Ryq 1jb@* WCg)uoS'C-sY EI=]jWʅ1Ж⩛OmNufƸ`XK !,~k2@Cn) Pdw*Tj*Ǽ9 >iܫdS CHeZf\ 6# 8%ϦV\F r/|?8nQ@Ɠƞ\;K-3wۑ} `#G՛\1\X#,:('4wqOl){n5-3q\Iu7E~&F)׷g'iw8϶$6gf&_}$U=y,I&YvP#uU4*LȚҐH@q8+ZI}q]NXl^nr9[~@M۫p-,ftA1⼧DFj^r&aW C>wr}MYگk^rCjݍ`'|G/:i'ok(WLg9)YhHVs 5(,_Imd 1Aj/~g}Po=%c|ceUWQ(kjnB"uZu݇"2ZњujC~-bz{@Z!+!f88!-oHX@z&lTxR*WNj*Ɇ\s5$shۤ9 U E9!ޙ 3̖hKcNҚx#k޵k芦TTUA$!:!5ӧ̏cdk+Ź&Z]sEJjobrc,,qaplkq~~އguǼdvnRc@_2p*)lջs3tHټӰ.F;[ٕ˽{(UbȮ^2ꤵ$$nv_izC Y0tMr[͍{LZlӝ&J Rx :[ln(IsڬBLf. bi#mhc} U 55? c7V-lb6uiɍ-b^{Yd50_ŵʖW4J(Ś]= )~HA7)YjAA+ZlgSBM@zޝF C-ҝ٩Ѻ5pޑ][`y|JoU9!aRzhg݊Ck.=nb>H4zK6rD;] lVŊr1nQoW )ٶO}8 ;p tN1+mO7Lg!ˍ>GtЖ5+\oHL?!(D<UB=9ن3"hũŻKv|cSO9Ǡv N>0)ْ8Wt8'Ldf*HPYCxL@MWh#ÆĉL͌a+Yq k. >g7-IlM?|Q ݏVrjqoɛ!K*Aߏ#&*Št_d}D ~h3KSXAҋsqwX+ɣ녠|1mHm[7ahRwf> mg mi*]؀q߄8/*@+u"8Γ.ď`} Żu"1V!gy/&+oujIs5:эcGO). Qk7O %Ihj/nD=cUXI5jR{> E%8gbi AO+2u)8yu[U 5'ӛߠ8譽d.?H'%=;:ωxm8F`P-~:3TgCska)#H8~_/N`vTrӲsRϫ.!mtaTxVj2/""QO8)ژ2A034y0P?Z 27/N`'2 d=Խte)W (bls촙VKk\z rGs L#cϝނXk-<ɀi$4s@Gך^ t WLU5;TCUZXn"ê%RS'JWtǿ;vy7[гRo:r3ZX+ u:]5vHH]#qN˩?ΎoN+ wQm`ֳ Pы Eft8]iEl"$U(62\a[T+a*54)v CY.氇Dmƿ]9~~{#!~ wyZL2{L=v́|~Zg59ƼgOa{Oz&zΔ<3}>F)+X? I|6!Y'\6S\',k|,/5ɎLm`{Eq#CLY;ãk5&]3Cu\ 0g w^záNqZ~ز>`2nK50=fk[ MsvZsKƢv>5q`4pa]"(R!pE ~[DZʴђ[XƹV@WhK`j0,/^ϏKZ]$mz|ӇʜXX-}.؆&;r^#EȟP[q)` 2}5)~O0F)OFtIרJR` }kH+M@ 0\dQ[6ǟ=<4S@RM8|6q۫^ ­UpjI"tB*!2~qZF"վ%o[1{TDݚX_Upk &sĴ K S ˏre}*eʉ@~∬k*'34(8Y #)ɐa3)>Yc/J!mfޚ^C\qpG:([݀&34 [ILG V6 2Jǐ<*+&EAyYye.ԙ0bfRG|}mA.c^u<*+J5M}/1q$k3GQ7*(W7K/*\kG.5fHu~H*R!?aV}vK+~%璒Y`A1DK8T.c JgjaTִ/@$錰[.gx/gFOC {)9ꊗSyN[%˷jt>)F&Ylw>=Қ*@'H/ XB$޹2a=uOPrG7uKTp+2(S4}~f{B+Mosᷰ^$Xwڜ'!`壍{:Dlp%03wyӯYh"ӀlA^SmN^ޣz/E=/<T]M+xz 2|:m1FMK7 K%!zb{qn3'7"Ai(d/.$6=Ss _Y a?WL8h/6vf5(9,N3k Fػ59/ +< ~st P/1cy %,_պ;m~>>lm,;j5wq/NA :-qq4Tӫe2Eqh AC'2ZȝC6#%j4չl urt EXH*wR~礙7Ք] 3`HpMϖ>V6_)H>V7ϼ4< jG" 1 5cX+! QEcHJݎӾ 0`_Ta"(鹲0l>#nus: d,)@BĎ.بo%SmUVC_ Rn1oR[p SHfEo>BDBSw=)ǴT~\gCRCJ ',{0-;Uq$klܦ^ji9Ge(M9z~Qة^蕂SL*CSP ǝr@c5s K^~B jqGYSRlsrgm%n Sk5y46Qe0nƐJR)S~*|$N D*3MULB)M6}nȾ{[wb \ϼ"paK8Vt5Fxo@8,p.FҼ -[Ñ0@߿W 8fs&7 QÏ 6BS\%_tRzRyye-T֐d8DT{@;Hyh#`0ㅭ)NhT9Xk >τ4LKBDD$"݆z8n'oE @º WFy_''Dmɧp0{UM.]q繖ڔ5ۡUVRr̽q/m}?ت8ퟚGG#Yrke b)4p?6g(B_kTܳDb`7V}`n$V/b]KSfdУWmYx,~_x"bl;@B݁3~_ﭤ@8q8j~3Ҏ5!h+IrYuUvpA//j|X~&Orʄ)%W.Zx{ЮK|Cu79f~dֱÝX^GLm=b).F` 32'A ,R9*ꦚ2(5F:5/)Q]" =9N$ψ>9 K깂}N؁.C}A2y8ZwZ*im@^BB:eWpK\~_[F#P sn`P}y[2 Zz͑I&̝2H&4 }{DN=MY?&p(_7\<֬P=rs5j-0]v'[)!)+^{K읠C10w k$E貍<}Rԙ'ZiKQfSiKً5`Q/[+ۓs<<к"Gi?LՇSV2F!iݸ8ox_<`?c8YmSllb@b-] vEf$~><UW][dNR㲂VFj΃. Skx6b\m(;K\!:v"w2U(G4ƑLe7sgRP" M0iXCB8[|oVA 3 P}Hrּ ]!$5-]7m8nEDG:7/#~ 9\sd(9管T;Oy-%b AZ2bqգH@zrM?+YdB}}D #kq,ytJqmi` ڹ?HLX2ӣ6 m|Sj~U<7s:\ zRjF3g5"H)B۠I b:}.J-Mx:e"@z,h}.?LFpޚ+/=eLt<K1aH\8'˅ U⮒VPv^3Xߤ 79MX!?Y8ڠ![ {r0>1u Hvf+34^}/ ޺@*4Yfrja3 1e18< PQ$[iyf4:пW^V GVC:إ|vC뇛3;Q,k*iN:I ǭ\aP?j; [`0rdz1='v?Z7 d\O{FARɶPSkK Rw+rnူnӧeLʛAGՄ4hJ_X{-W`ʠ=G@1| r簸ۀo3jmr^rА1tJ]N3]s*sE[[zī&X@,1xl^:h>bOhh )Q{ gM)V\ĿGOQj(4h3oNߧt{ P1~nx=z>/]q3EQ:Ha?|7.a2AZٶtOdTǓR w}r!v}o|ޙNm&^U꯽a˻(bf^#9 -DKM[>*O /05i߃c,!O mtv WuU18orj9m đG8V ?#\CDclB7Qnh GQ(9߷WB*Sԛ7ɚ$ճFFGpPwV<L BgZu4(R)HGp}zkFW^m<~KH dL.*)(TbQ>RK, 9><ޓRu siJLZ ɪ z'uAC3R/ k2 ٞ體#l<'li'0aӊJ`HV 83KڈT52Dl63D=㪈Ge4 qbl1RމFvL9v!ryQؾ ^6#'aӕCO8A[~Aa,M?'$f=GoV}_kθ.mpÙN pϨH#)bfҵE&Ji"xժלN]0?m{03HXiR0釮ε6Q*ߥ3C5nڮQ?ޚP:kKNdӒ ,.-UnS?׉Y?2B綴=!*[^ |&(9R5;i_uϞEHLՙ%?ٔӅ¢D!->Co8-yLdn'RAj2X $~yz'B(!SP|lh6|/5vZQsj/j(чE4hq)sxB rNƉ[f5`с8e~ЗP*t)ZM{vmM}LsU85;gAmٯ< ;Qti@uIhnQFg7gNa{98 C񿄍'fYpMl)t? 9ɿ XCT8+hݒXo50L1?+j]Z \rJoPQZlB&wzfwi=6F ]רCuއ%WSsVWJ5q}~ 08R= AP@V3daV~"nl9?@*})/p9%xŽ KѐdrnQ1֌<; a[1cLB 8 9Nk-ձykh ^DƔ  `v /hHw!\g6j בd8XE Mi,ղ)HҽstaWܿJU [Qƽ)%&K_~m4goaѸhE]*_pV$7.9`>Ro8Z{s HI\U IGI,E a.ҼIIY TmWəB‘⫰;_.%RV[ϠI r0pϩ揠h]my=#8[\?I#c̫MLWW:zM?Wܙ ̯>E]FB6z .!Ҁ~~\#.`GT4yoOLSύy|#T8[=b] ޓgNP) 7:p|;JJ;mHQ"N' lƮXV<L l7Wi34@J/ }SQꋚ9KR L%4TYjMDr=U(p}4Lq@ 7PHoKjnWҨ'x<%-k; 6pt ӴAAkzD:'z+&B*SY_5he}jNū1d,LWHBS)*ln՟ pV  ~QG/ʎR{'TbR2M ڪ1Kw@ɆqD\18/ W52vJh/6QX|r}rpI sx{vA)f&|kr/bˁGy~c|g$q%nj7Y0GSZ ARGlTbCE*3t#qe/&[idn^MvrI7|k7=mfRS{䟧쇡`]\_-ԓuC5=MY)\tpQ)r*tFu1V\_mrV7jW+S`J|G{A}L_גb1BwLS4=a<}RnLoqn n*R]`h:r[|Eaj72;A!zyO$sG=#+⛷V2.YB!2ΫPqn}-uvnbͲJ @P0:{4WgH`fAR&,wH6[?pi<`9mz|\GOi|sEi6LjZMPz}9յc=A| J˶K..^`3ml7Z+_/4.kf?@Tvsi鯴/VQ6:PD#x,BT+PƒZØGm[#G3Nl,D9wPYݐ/isTCJ{GR7Ɔa1q5&h ]cxQ9b#LY8\DK-b9_*h:.ü̶9hzƲ5|JOxHGỲf{`U!4n'P=ehGR|221,e E3G*1.z2 '/[|{kwx /xfgãD)Ot+;^u=-y?!ldԱǁԮӲ+(`rM[I3ofϴ%iu{qN&o*ki7crP`5S !ި|\4KL y(!S; Qk&PVmz#I0W"dVHfD*/=` H!Q 9;6S+K_PC]}ADSS؅ߊ˥xa]~Ly|GόOФ 2=vA1mxn??NE"e!6.n[; pD|In=[-\E>}0nF˚G#mz aOj $]vAxA 6G]fJ-j8^x:9~tZb_ Y Wc(Q0}ʗCM\ SַU{06?ôNn$+\~mWe""$=DyCsi+GuqDU{tfYf2#Li*rAB- >xua durj13/WI6uj}0.C?^c3A`>̍:JQ EgP^Z| Ƒ/+ԎCiGd.zvpѡֹm?٠8C)<|jHH9"g"ΐ`v/¢tbJ`.%u ?y_07FQ3OYMg(1E,P[ Cx%8p i"tX5 n'~\L/ »Q8!#F,.%u cMȪ^ZgWZbjK.ۀ̀ʤ˻b4,~\ڄHt6SR2cVh8pWH%yQpʃ[*OΨ6J=kZƉJ}MmKîf-kCq _2C,gM W(uoXKUعUQ10ѭ 10@5Ѣ-J@mQ>`fbÈt ΕjpC)HiwJ ʻM1x RYMw/%X,KDYS:ihB %: 1%)g HN+~bݖRhPsTa f˹;(=p#"AfL zިVq' YyU Z>An՘'pF'&9\Wedai0eGzJZUn]9¯#-qI'!꠩֬H*r9k5pHQ !qIŅEY[魥R+/9+e;. KEKJ Xby>)dďCKWMRAFS)N.iBw~ύ'ltsൕHi2е~POtHүXu"]@HB扬%z\1|z a)c3LCˌp6lAr.ɷ}kW~v:):ܢ$YǵW7j^`\ iS+8F!7eV m/pJ~щ~F|oNG; 54a\HF>!@}-XCk7MYnɖr|Od ^ETܻΏr;elRRIěa܊Y~긞ն"JTF*i"~1[hi#r[UtBh%2'::-ot,j0{;) "rg ^a Uߘ^wl@fC<&M|slS4znۅaQN8Wk!֘7` HULy6.kHL=Bx7!{66t֌R+(Py8~f*\OH%X /_pX^vbvf_゚X)Kya3/Lݛ4.r_06eSFh#|Hn㈤^gTqd}N0ErXO~{_rt91ZΎV%5 bK;Sk `|I#`Pg#r4H;SkyqE>avC]l65-DPqΥP32'm-O5&&W("b4msG5c$ؗm5-KMϦy{sJ˸Ϟaνaq:$BiFV@!-8{5MφO# t0q@[Gs){1o(Qyҍ1% Lj؄7ά QQ(Ut8^ I/ЛS;=CK` oɽuЁyTD j|*$pl:J>~#%{Z}0[%-Uqr̈́u+P40b3^ĻR>uJ 8&,ˊܙrGe*Es٣BW}8GQ;Ūdgk%3?.{ty9(5Zh.ѤɈH;ٞө,%X$!1TBom3ѧyϔX2-G-o .>?8.J -}\|"L$cf& AqD ^uxTI4G:#D%Sr+IYXL@ǮRm4+uaR k2s T_c,Zד(3~Q'`u[:Y@otwu&:Sj* 峋_9jbK8ocW0:D21>[, lY͟Tݦ>aГ3zjL<|lLR͋=0!ͭÐ&W$z#23 $Vu7w'3c-Ԉ3W̽>`U|*NF/ʧv,u6JfJ"TNAmt۾ujjsU{JMGˈ|QjYY[S`J{Kԇy}MJ ]J )q PkC{eJmAV Hs aUK1A&`I[uvu4Rh# 9'r2&c>Kͯ X:|cXZU:G_h>RG<tm1pl: S쫒 DE?܉J_-ihM"ub\yvxk(1.g](bqD֌" E`5$ QdjKFIݭQ6uJ`{&)\(@E~2,=Ƃcʃ 7~2p2JZ>{֧-IS{>z.{\Ӕ\%=F&ξ{V'fw)HyZQx(lGTEؘARIp֘=pK TJsO87\9 ϖhtV`Ii+.)*(1bdLz#V_^6dn&(u줵rČ2DtR,6u8;L;os_+&$+i:3N@Ϡ)F57c7餼o/P*I=tkZ'Y0I?VV<{?{8WtUZkKrDVN9\I8'ƴBw y`TEbܛÌ@Sgb!Ü]5Gt4=k@֕tay ͌5~7NYqf}.>>l\O[>ZyN*VAPF02^1Sl:C 7ʡ|g[XZ}i(Ґ RwP2HqN0&ѭ㲕Pu${#Fwnȩ;B|DOyrNݹ=6Ԑtr=F Oq<\ςGjMEd_w}X;MBm;7|ЬI_^7s/MϬ*~L1U( hnWc&zԔHs}pyܾ4IWfp5A ۻ` ez+eфKJuɔ^sr 3̢@w@3wyr1PW-yMVōUV YB  "º=&jCio1j.^'[HxŴ>()M.¨4E6wxY('RK q"H=>0h'HyW0zY 8|L5!Z kYK!)O{;}6ng# }$?ʻܻi]:lZ8"_SҕgĴEɡNʇ|7XOk%4a(T: 3 f- T(o zr ژ&li s[3x%c#ݕɇv%S4x*cB`*aC{02 e" z\K\VGgWif]E/xM8,G[_4n7)ăT.{N_M-S8׵"&D8g y,§2['){f##W0}UP P/х-Z t0\1;6z<җvRx$40~l /xT&jM0/2YE0̺DLFu]|i`CJd{9gp֬dG%{iQ-HW͟lPocӭ*}X$XL2Kc<6IV(rBkzqnef|V.h9`_iW1v]92٤,Eњ6od/(*bL@xs`m,)zROI$ "Oo.fZI93>{">kkFL0 i!i#U@!v"B`$woDf?lV4#MC>t] 1S,'lI0 {L)H&-@5WQ%<~)#e&^=aޔ3O݆ȥa)ͮRx#WY¿#[(ZSv)D?ѪSV}gu]p%cv+<[d+Ԋ5I4|~8ňc#D0JCHNIQsǁ"K}s=6T+B$!aJj*a@CJ* 0`O_% ~0 O5 q/e? $n2Qq9^[Zo(N-Bغy#Uz?P 3)`Q|KyO36NeN׌ô^^PŏIJsq rR+M_l-L+nAmBKY3:Ss-XK8<$U~ rqC#SE1:8|^LuCj`=q5#e\<=@TUk(HHx3M)ICӍb@^4$kzTxh3'.*Q琇4t-TWjs{6o\| 4#co@ӈE98}5Ux&µk&xUYI&To8;w^2©$Mqh< R)NX|6>iQ%N7]{,^x߿?^'x~N+QKz^@J\WlE~6`.LOBj+ZU*xk`"78ATk&%nC`a)?*[D%NDc[0UdT{ 7YBu3pМsKEj8I4bS ~Ho?INB,J4DdX󋬗ΖVY?ߊU], Ѣp%]/=n@ J3- ȋI#-̫Ƒoܓv p zLSIe[ήbGmܒ"qq*0.I@Pz}Yd4v,f:{kJM7.s+t`ЙA[>3o* LڴxD*(tz"7Xzqǂ|>šTVC'PjY(yV,neîgg:lq脞*t1z0/jr)r Ѽߨr۳~AS/ՃuKB$@6R?HЅ0x_u#@4-mZsBn&e]7Su&[U>`n\^CECjWntՍXGqmh'82~)qNXRmZ6cw"tDx2[#>C#bfz1Xn-o=m"mk\Fl3aJ{k׺fFSGY$LL]u蛟NW$`^l!v(hNOWʝb2^Yv::)Q|kDS}8X H#TP!Bg!mV%%=5 zNbS/:(D+P/RaįK*CՌvè҅%QV< _Q-kowGi(Ze3U/[n!FQj>K,D+NÌU>!T6lK\#+_S ":[48&6ڹƠ/ –EXuyh7⸇@nLPk`=9FrJZ-mb%HƫPT1#zKP6}mWj ;NwwTmEE([dY\-8`1$=3,RĦI@ˏ[0AF }?d/x@開OÜhy1쾻PeC|W5dErQD}>1Q2YW._F%:+;>8K-~\.E6p D_GQ$MJ$7]V9l+ u|Qц|~35YUV}4jp(G/G, 9|oj|LfL[(.N:*W^l%F9z*XnUMgkAo7fKec`JhR:6x)TRc¬iݦVaFQ.x9N~.?SXKpȄ (]Fp;y#F#URǽɴG DoƩ|K&hZK!OC)oVJiRf 'Tkbv ΂b_e/a!Lx; Hqx#%9w Ch> /@hcc¼i<)d}{&Q: z™ghAPìo[5wJg櫊qX ]U#0$> x?H)ڱ RטE1zg;g7wywPy=f9*-D⒮~ُ)[.fm@b:?p@n*A!}{÷6PĈͼa Kc UNaĦvj3~OX\|:ʖCcf\jut -.J1hδC;]?A`QwZm߃%ysaߍ-eRF_]KO*[VL*Pf>^e4+<Uyto N?}ۖPW{zv^YD~<̬:RpPH6'&ЩmڨI9kdk;~28f.އZSwY$V*?m=vlԙ{ZnK29ߧ4 Is%Gd;Ql83?󟒗r =>j7 LwiPbsoXUskݖJR<.bƂB] n^Jߗ;Rt| enQTk̴Q$_ӨDlb4SÐ܂:mt EQRP'RQpm8}çv޵^X"LӀYӄ; اsL-ѳjM=zbO8BNH=͑Dg9+Άxh`!ڷ ,y[W>iD .O &iT &vqa2.%հ: m}k"nCHdnZkOa-(D323;p9G)ةl+*ߧ<h!wE.z|w=/F#ѳCF3 HS^_l8=PA}fm1~񸛾m@*B/V19艭q.&Nv<"Ehqmr;64f(4]3Cuy> ]HSI.Gt](Af9Vx5&hq/:鏘/Pbqw9sɎ| Boh<sꑱ E HcH@eix$RXvBCM9 ]˼~ƉgIp`Wvc>10TAC:^0zݑxV,iGqCt xR|zK/n) U6 OBD!a싕@6]4KS,?p{ wfdο_-`9ϗyjSKvn\I~au/@a*L#za8d)ޱ}kΉqڨo ]v=IY\Deڰߝ@{@~NC':2.H://<0[aի6fp$bqN5N5V{Ƶd#ھ&j= % |N5j5eHz" J(YB=h7‚~nhLnKԯp?vG4`c `ڗ?7dY_ɔׁiRy]bPH c qtqs̽1YGl=_5ϬIYޝx/9JQUx=مtf't[j]ڼK9Nfܖf +ڞD,]_?;ktݿ(~72 ,i 4=)l* ,,;Iuf۳#F2G7yvamL 9TA=E:EݵHbVw€솜<&SqJkz#_@o۠o=`u5X}豔gN|.C mbap3}cnTie:g .=-4Džz^94'+o%5Wp.Ʉ·f݇fD0SyU*LD\j:*RYn499LMN{M.ԿE`jՎ #KOΔ.ZthL@U$?b6 ^, (8jVۚީ>_b)6z6C'w,KB. Px&jzeKGӌD8]CS$Dۨp` ps[,50 o- ONpn@ 2p" bKǛ;:t":vE=qaJWWy#ZmvsPElj5O3CXs<~tJNJ^zxќpxf:SI]:PO,"͗c$xu(0?ZMkv-/{G`#D"kW%aV3(̨74,l8DTb/c1+U.`ZlEb^yb,)8{ɹR ~1՞mVȞ*vw݁2NI c*e]=+'Z܀J2&t4.0 $,:PJ6yO֟Z7ar9CDYmhA" D*glQ?k7> .m7</ٖyvU4SɗGڜwer%Pa΄y+s-_!i֝*Izͨ{9/-KC/e,Zm[[r_ФW]PaVE)7+#։[o&cѴ5;v(\?@۱P |C4j?ЧliS4<@:_OvILB9 t6Wo,綹.@f[2Ź+yHD.,LKx.ps)z pB 8Xn=y+'i+ G)D.CBAۉj0TY"EMк[i@mK%(M=uQ}K_5#;T1R7oxaF@U% yaߵ8=qDuy0OǓ6 ;)b|gsBJ'E\[I3p ū4r pgrG消 /xaڿK43 ]ͨAo .C+%Jx1&X v(8j Tpg!NFq!@8+ ϋL}4C!/1f@’< jIIWCGEha"ڵW?niB3Эz_8[kՑ gj\$^o8]%?^=3czY'?hE!;f|ᒣӧjb_!( 4mShz}a_S& >%w:UwI9E*uwIgu~bI5iqMSO=1wX"6yv[~8 %x!F@R#e{VI;쉞4Dm5p%^R:Wah)+Tl僁pת{ٺ⼺^b l16ߚhԙh)0Sce[ "xۭw1,!~K_X[ttyrH1 :Y\osÕUʠ[θ[Am5Mq;R+Te7{ӧâ/de!HҐ8Ubn܂$Q(],49:W5Q #W3Eb` d)H'#-nEkm,,3Pwޟ@} %L`:Z@}\"( :Ի|o?~%݄T:owwy4ozzW{OJf~^yÎb$Ր퇿0S_-$T[ub'Kg;=Q25Vw0UnU?”9Bzw\_ց~L))ԍ"E^<2hIY[d ^ѡ'FWCT>7s}!5HNbcga;WHl1|9d@fhׯ_ ?w]ot;aɘ[G9J6,DTNݣ^ֶ.Vp$~dZ Wxۯ4(o N|Fڬbn|rJH}:C;)vK2 `FXlu U5&8@MĂ/RϊZ13\4)Pz/O+(Wf>hO[RΔ]X/0n [Q E#jiSQ#6 ʥ a,8BpO~yd9cE8㤽3fMss*Uult'M {ȼ}|vˇZ: l,rr͢E(9bk3/Q$:^ n^2-܌}|}a(ѿl*Ev@!ۼۦD'U5;Q=" [d )"2N^o`567jtS^xsG`W(IBZ3ϩ xV z1%$+m@(O:"/+ϚǛ$q%*AY{iq]`+V?z Z<#mȌ0{k+h[CTk԰t-oTak+is!!̦+nAL+Pq/$H5b Q oyUPi* !l s6>{0>r CUC& ߢ8BaV8_ Xl訬Xk=dM5AT\LkXB[^XƖpTLX<4L`&gSLiƄʈR{Or$λkU IPpd5ĜV-kPk^pQTbkEA kʫ * /Lk6aO p = n3 *]x"UmrG3k-kfg/v8v < {W67Qub dY7ݹatf4Iw .J*r/a0.X45wA&Uypiab+[]-ACC"1DWmQe!b%m6+3rxĭ?Bc7vJB.kEKj;Y(hgvKM'䯝/EBh2Dw]2h\F=B2CZ\St~1|zzCיPb_)_S^27kOv8Ns }(tLrm72&VsR(Y1L8cmZxS-Br)O@h`tUbp+v]ւmMya i%&<VR\)ABFPqf*ʋX0J %s]yܨ +hfV:rh: +oܜe]<:&1Vl`9pckͪ">h W5^& lkֲp+k)eB~bZ $We|,lv E(9 % =%;&ҁ$ .Wag$U7aVS.RLoJ?vy>]`k2o)va5%gMFvN⅜nXX$ !(X`g=$ Z}` / c BeƄ$#FX/Sf,k7ݠsb/$[< w8xJI 1WP A)r8BX]}Sg@1+_hz8YP>ة3*Ppml*5v̓G) ~D(0hIzKЭJw( nQF4JvbXN'@^o)|z ]^2" \daf^] ,IѺ%`y_Z?\ȹi|p13[W';35$&."uƯr7A$ԥ qh­#be}G\^,SStYdBʺ|I|`y@jc'FW_h{2-F,FX1~;<]D}^} /=0O#w~I:U/eC ȿTgDm-UZX9}X.KCwbaQN~fp8__ԉu%fMK6j@ Z,H ZBe8x+|CB.^+nș^Pů3 "aI, - `Sכ/>B gv ąw&o>f& #c$_^-~ K1WӿBO"L ۫fQ~A CoA |kO|koLj NI =a_e6PKgs낽#dQ%D3"S|hv[|ڍ+.dTiHJ;= *RW4 <mAh]1Ta!5#MK *l]G$`| VByRNݯ P IЅNRSQ9ȣBz!gtocL=js?nxw<7QorNu w "u23IuڛʳH֜h(<|P=l ũäN5 BOZYVRI|N kn[*)DWn? G10Ys=tI;JS|8'&Jk.Li%8w)GzFgmѲ->O気8TQIˢ*<ؖ~~<qY$աwK4V}׮''RoJl^#-HɜQՃ͔0ma\ο9/S#Tf%+xV=YaCA KmaZnQLZ>JEyQ)캋abO9xd=j-jA(p˭uX9!JteA^ +z@J@E*u]I}m&iPRx9Ry@8A/<{鸱?.yNe~4D0 :S=fFZnb!1D_ڊgZ g)C\9ڟ7Fn5T$~ZSXLJZŶ ʑ,\/ 4Y#\ P[:q M`xOAItk)lƾHp$$D/+%:kpX%3KO?'k7`0mg#-nLL)2;?-}nIv5期t0\%a ZWASE[q:VGOB5"jĹĈяVsxȨĦBo?w%3шn|{sew/Ca9+򰼧C~U-zށ ZZ)«F+PJZ&[8-uasS~IN5 #R3>hl.u9g= ]{[ZYr@ܻDGϝ7A%rr> [L\rͧ;IFMOfX6 dfTVd!RuY922-1{yneu JX9ɺK(q4=8jӝiHLew ;9@;x/`T6`N򳸇2V(&jk2MtK @dz[^8(U&Fkto6dx7=hX:@Hiˍߑ+WWc@7 ~_Ѵb]_\~}?Z^|J 3DgڷhzҷճH.PH&~,8ߤ > m-酗zJWaII00$y0McJefؙιꋋ' <:TЇtH.%++ -0F!n&-K Ӹi&J(Le ςFaZ!G}m"A4'H3uԲVI֭0񝐮i"t,w7.>zG9c 1WzNٍPEI2ɃqH᛭H%]D/Ֆ`ᲦֹXIo8,hdG1H>O,=0[98rʦP^>neޙ%Fw1"/gQJ br\5Kƥ> 7Hw/`.*/@@#Yf8އէjZv_e䩭ͭVDx {cڿC8 u\tw&^\ىK67mja=:S 32i6,-| 'w8Snn|}0/(]7u!þ'Ex;rJL}vS'CI4zmI!rt,QtNXkXj O 1y䐓<ZLa^K(6d=8NH忞l:P^AP֎g'3/[H!h72eXaH'JpE+>V AQ]n@)=>UR8 K:!uX¢ǐTF׷iH2O.fyh5fOH =PRjR  +_a``֞6ꈱDy qj^w\gt=vV׋S5t0ᮺ@0nT=hkzE#G6/[]XdB3j\CKG&#(J2P *uboX:tu͑iܐ| 6 aS_Fl]6x7X:Qx!xwMXwL ,[;x^=U;5o7&AcuG2Qn&@z邜PSBMɖ WJV#N|~_-elwq6ƂLCxvE'upk24% ?c3IrUp̃[Qo(g,Pyǜ.gLQڮV;C6i'\0b(+Mi˘U^4B>#Lhn}6pyY]ZP퍱Nw{DI>Tr@ARy@;d oV# e[e&2GVIQmBwJOчSbL򑊩[[T DCp4뢿E*2M\=O –sgu2kZea)Svo/GW^+Ԑ Aum׆m,YL L-K(@T;O|ނB="! \&M奙,>6's|uE9Mu(0OP#khH7|~[TvFNipD5AMx1ĜK"@Ȝ]Ko D**uMLWtnl$ӳל#M M7 jct͋3B<"`TjP|MU?E'OM|.QὺBےGd8h hA(]l0Ԝ2fuwTDm|PH9?V5*:LHghM95osyer}\MU+&.;uN(\ _T0r)K8ufEg-j ]~]7zX`X̞ ~.Eٻ1RGTdamyGg < *YkW#|.j V}]FOU1hx"Ot 8wwL&e]} 8-[!25ϔr Nƞs䤆3el'ٰsS~,d8sAb6UբjIR](y/RBzV8?'}.@g4j"pl 31~aEjeWTK76 #<'zl?e3UBgKa$[{PT3N?+rS,-_s|9vA"(35.b:.x`QVb5"y mfȜ=5$|VkiH场d1u$RYlMȗ9K$mK|#eⳐ*ţV'7]EoBӛeCՑDO_(x9J8/F}}skRh>S7+T;cէLһȿv6v+ e#Cx&^qky6ɔ 1Qpת\m\0LPGA:#Yk-)e!p]tr׹]ε!WE$=yW-gаn`B,BbLzP"X_.o2ϑ a%Wȸ*¡/udHFJ}B9oQpqnt(LiIy0+\o2aFH:od ,֌ѱڳ$ pmew5 vy`-P!<4ʍ;'A w|}"uJpulWD߭ni!e 2Eto:k#$|K"tn}]7v:߼jTe?3F&># x=C]#g\Rkn mrg01SEua2[6SqAp -B6 qT6A)u<2T#q˟||p[)NslS2^b<+!jM!~ @Uc A-M}a_2NIn9$ i-ub(=!W3_RUʪf9SRh'p:B'(|r DOQ ۊ%]@K~6y|ߺc]"3*k,jYU O#n$|U5t?^bQS|5T+b,S q%ueHzχY!DTV܁Փ,P gT6ؠ8+s* js__Ш+Dhj ND6f L_E.tqDݥM_h]h16EQx4m9#Z”c^ w|rSݢ\G>] #/{l^jU#ʰJEJj9\"!mw,7 m I&diΨIewb+ IQfsjKWFbfLʸ3_q>bκeʜ-m# ,gzf]nJ[]0e<9,?rV-ˠKi`*;*5A{k.1gh<"VRe1"VXCw;|taimyl#D|[(.w1tV ~iefb5 vh.ð'cn㟫v"ɨ,3`$U-y~Ђ,j?>LTv.0e n8@K.D $ɍ?W>P`ŚG\rhξv[ 8qM%)@I;E4iX<} 2;_]cÚ2ang/iҬR0K @^$g:٣aإ!yKա@Z*1`t-:W)ڄ]XӰC5мZ[1#ٷtF>gpMQ)ErA[.pɖʥ(%g?E~|UϘ1c/]9225eV2hVG7xߐn"i}R{T)67rL8a#>GֹۿegK%j 7P9 f:LP^w FTڸJ FS@M5lgΏ jlkxuh$p[X篪Y2j|0}/g*ʔW#J%z[ c+9Sy$|9#\aθ% ?s1(V#)~;YWٵl.҂pNjk0gϤaf?N>l]R532Lj*rsHqMզBI:N/rJô;bYnQ8%۝kU|A: oR|)vf$Sq3|[lJ;;as@lg+j/BnE؎ĢQWǂrWt'/h6_j\<:r&|Kd0K??")SNV{8Zt͗t)|ՍJc_T 5 \nO\D.~ѳɋTA|$)yV~tyXlwݜ=l.Xmז-^)lsa"~j.qwj>P )mDF?a b59Y˱CL]xh5A$UxBJ& iܒKZ׾M|T,iσ>3#߈7ǃcXp @uN[50*L8y>-l{o3oL -|1#!yԜ]enOC棭J!V?ژdkq:i=u@<D8i{q9ZϑnV8~Pٺbv!PCZn/ K_BiIGAQ`& 2~++9$*6t[q_!1 NŎk-lVf +Pᶈl5rovN(12L{`@cwÈL :嫛2=\hOgW;>TSJ9J) :0aJX6Y[j1molNW.> !^"FmdP6,i4U*j+2TrY9(T}O AllﻬFB(tºjKӿAx&MW[[_Y| ` ب߂IK7FArYE$;VapaV q@3D`Ez].}Ql_./_5O)-PU=WlabV=] ]x@X)IԞ\YUg$aY7* oNie-Kb:m~ 62˕'" 6 [<`b⚒),RG'1n#x R>b ҤTo!Ցע%ͬCM0,*l9}DZ/=#j=r뢤Bs++w'3M>4DTQ|*7da;868k)sVPHĔ#SAf$+7?V_q8t(ʀ/H̻9[YA A QЌ/W$/P.y4ǹD!kjWM_WS3ĵ.7ګ>~9\yo[5H1W6%<{KO~7cB2_]_<9lpZ ']˖B8t^ '%E-+'/d,ވ2c9[W^J!UtUiTꌪN[3Ը;fN ,mh+Y+p9Bop\:" e9Ygz@KRBRa4gdÍf39*jk|8ߠ  ix1C{bf7-!+|nk͘NSUf[7yVP Iϧ?PSp#< # #1A/5x@v45ro2zK /0y"gpRxlHڞH-׿jzkj@̫9K@2(zx#NbhȽE;d@Kj6/a#t3)mCFq!ńv>[k0e)Cqwr8 u=r2 o]fX ݚf9nA\"81JiĘKMj7p('K± `R̐Lk ^ ț;=%'K#%$g:w;l*(P1&>Ena ",) ޫuJ?Us򁪛24md^}PY6tZQ. @]*| 6p qODvR."8W<_ܛ;Fˊ4ߵ2g9-lU?]-^1 lUU4caT=md4 U,k[pЋ/ cߍk%'ף~s8A݁5m[cZ%ä.yB/{by6:T%ru2GgcW~^( &%UHX"<4wP\MFL>ZVaT4#h8׊od.=rX? xlyc^FCHyH!T۹l]?niXzt> ǰVp@V<4mF%@+sb@xUbT[pOH/3(ѰeMŀ|3 ݦ0d4$#LEYV}۝4eō%T4DJc&NIrs}GIs.*U3vh'´hǡ|Pu}er$/75EFlN+RŌ- ?W5ZrLUE *PL֮9^rԤm\ %DH0 2ςgʴ(Ep8D0K<@g\Hps Xf~ލ[!#WGv9^g1<+$rp ?=aǕ9}ZRX+ b<ӮfR dfs/:@gz3]=䳮R%RQ™B$A%EcrEM`ſD4ڃ>mQy'@R%tpتhT'$83-iM,tΘNǧ6OG_8ۈ`O|ԄWgn !",@'e֝fuN&ovJlߍ^0Hj ԇʢ;53#l$ťhٽSGh߻kt`R"gb<U%̦Up9agx8:&w߀,5 L=dzfgxZǨ⾭00HжT58$>JO1㈚: җ^/L/u?ៜo5P'J+tH!٨}#}xJf6jAyA_i8dp>H^`Cxpk;8AZЯ- RNs|\29S@IK3!&6tP:Hlc5F|ʤ|,0_a㟈h\K(l1>M`d2|=tjkuO{!TUyiW'L`Eqа+R]`mT&l9rajyQ ޹$z:o%\< Y%Yϲtc]z\(oK4NկG Ҟ3/j$fĚ=ݮ)}*XX׃j$rwYsOl?<8G}e vGC\P˳/ zPnW+VoQc7Kz7i/Qvd9q:߿"ٮ<92?8)xtTBU] w&[s*7sN^Q^:LD7a,35js1JĨecptrS.1\HG|ԺZ$/42;gj&ܞf@Xx_k|S/Œԗ,iFzNj$Z5L|F aYACSwW YB9>ѳ'{moƷkB.Cɗoޙ6*7K\:zl܋0N_"&_W1e9 ^tb %ʂ>38<~,sR~hɓAⓩ׋ΰ<&5*CryB2k i 4(X_q//iq7VѴm\Q99yz$u|Ֆ͜_Us7#7Cȣѿ J{5w73(}oÆ}m7&ywrSB~pm*ڦ0T[i e+Γk$ kM27;%GnB8etǒ 7o=zb3 6#v'"8Odp=<`c߸p3EpfL.OGggfU}oͿ:ɒd1d򚽥YYnvޯ ܮF䀊iM&A'R -Byʋ'ov_}'89-X5ʬG8Z5QֺqB f uJtÝdS'tXCȽ~a3j:AX]x?&U. ~EV-VĬ:ic[ɹq^Q" E!JՉQ32ړq5{RN:2lfl#)_1;2fs#"=4ѡ.iTHj.!pWs{L,?w($RGEzH 6X^]UeҢi5波I@f+-2΃<֙>OƸE 5gbysXJsIWjƶ~ *4\bDQtA-*TiNW\p\J\ͷTKEE2 dH7&&)OXZ4Soz?ZAy`-]03d\Ͷ:KzK3c9Jv5~@ ԻOfnyƇ cA\` A8DH9?xEg!@KF堷S2X!tr 9=`ī YtZߔ T bL$V~!Hf㪕׷ M}'&)3G}!]JݝvM+Z aUky5&swBN_G9v|u/ -Dʬ/]]pބw):Xg=t^vYH\!,$W )15LTqotZ?:$ޱ38~J#g{:_7]K}{?tm ~SfCSO K.Y%Imx#ko~_ .E9))azR6B\տ}} abYp\y|4|>17px,<< ڶ7@f^dA - )(>8$Ct'w`)wYڒ 01%9{xWxm]C3H 5;DM3܋6NrL׸Pɝkapܛ)U?+0ۀTBD${&~/]Az˟Z<ܻi\D,gY:x=1_PwתVt})\bSd$/e#iIlCRh81׾BdUe=W@XE;7!C>aіF!H$CV}O /l(Pl/ _MCBV/w[W6 3XnjB![/alta-6]],?Ҥ_-en3OkN)poVѪT~v* OVx8diDήzN%qkFlz.p ET^ZYbzYb#0J0RЭu\Nj6H+ETݢJ?nG%Q5GsI& ",}ÙI݄zT"ې`ÄH0_ҩ+.W'&IL!A,ngG _"C8aUnizވjyH fOUvңӸo%jgl\yȀՍ1acrH *9̚a(HڠKvjk`(7YSݤ9=+ qj {{J" '""n~zS.2Jo.>E )PLmԘ1٬f[I^ 1Ŷ঳soW2] 3(0xJF*KȽA#Hm@R- JU,p5"~ذj|u̾"qEْ#E[$29=IÆ2U4\RwtHr-)+ṟluGoK䢠X jՈ bݘ)r["*RԝљDu!1M*GHbTz>-I״A:g"}+^-}Q?%j ~_W fODOycR7j RbEgds^?ab$<5Oy xI+va,"!Ȳ|B>K;h]X(TxMQ<@I]he&m2i+dgLH#ux0 >VCdD{XbvL`g9D7-q\,ŵFF:8ObokIvc ַP9Mu~usW#)I!Ari?>N?lF>~=O+ѱDYt7==W={щv(T{#B`a+~8RVx&߂(špPb~B0}ђ1Z [XΣ%H<0>+R~O]q!y6gmv,.R\nғ؈ҖF.>^FC/ 1zAm)ܩDXF Se烢ْ5qXX$0*q=0[HBf'U `c%3:UhDXԀa[?;U&z"v%,@cWv^Fi9MHB0E#fMIwOPOY|--QRbdu>P3nhOL_n9v&gsm6!8*B8 R 1kl`ˆR|Vo/u&:uEقvB䘕gd&d'nN}OAzo9uɷ?vNڭ21f=_=._b&1P?azؐjfvyxTpS/L.Zh5;k"W n,qvfO"q#֞kbȥ?CwZO5^3U\Ǜ'kcj哢`ǻJץC,ROjpoP#%5v;ϥue,Q^ cلU@ Py\' C0$߂<9@Ir3Ʋ]꫑ G8)j 0EƒW2Mnr󩧺!h!_/k|f -<  kLF ZqܚchL0DnZl/3-#4} k䔀43(bɂ3ƁHv TL`&DU@TyP}p4!}P?d0 1!ڪvnlg&UYFc ݲhS ZnOwODnE̳'ZCAvo݁p⡄ǝ8)FҘOx0] Gm[aX0DQ K~URn6V/mIߍE8CtqSdDD Lq9In)Z v3l(-'6av;.C9o;d8_zE5Pۿ(p8|b'|ԿS9'vsO璩0.OU>7C9Gjypepm%aj0]::zhG7ά7TVR.0Ap$["SJHRu딴3K"c 0Kl _ ƬJ 46--A\HYzLzm/%6 1  "fr;gIK k6:W zk38e\/$[*܁ҬefJ`[MG&?,^POo!)غ6̻[V\BF#Ɗ*pQK&&\qY?e%'OG]oO2 9)kzI7)Two` 4Q 9!77CwhZ;^y=hry <;JǃnYmb?"?,Zz>,pO+z\w}*K|ؐgGE(;gtm}k~W7gzn3[:[6@m')*ydUg&mߘMmd·GFnKa>2`g?"o:WU>>虌vyU0gDj~00G9o 6|l)@ #W+e 9ZߓEnKVAsկɕ% AgYVD,rK6 ſMR[u Δ |hŁ|"TT8fl"j2 p~:÷/~1dF QRK5QLjF{W\X)@C=n gmSAf&I!4 k>ʕN NE ?AhYv|EN耙n6lS<_ {j*нNȥ65je]\C jbqhʆ-`#d@v6xL6HM$a>\ nE D@5af&:7Mb:@Jl$b.%3 ({*l!Jn\@P*+BH'JdCKdHZu#7Ukw a<oZ{u mоs|8c.G撷' O\8)3<8<n@U$%0[S4hqM}~UJ;pKtʳBvXi+[p:/?c{}PCLsAiu#&ߒs[j|T,nńu,,ix"gA:ƚ)q||4¿r͒+SXk~j[Z(g (r|OXjw1wibJצ?_F橉Nq^֓ΜiHPGؽF$_kհ(m@ RY]e{InFsÆ΍Vbfޑ<:cn'5ri<,P}! f=LIx}X8d9L.0C6;BѮ# oLVҴUp–%pQ_$P//8No֋>Dt2f%$ pCSxo;19*ky- h-!ףƋ|i]u©!nmI80RtQ:dK0ܵJ[ık4/Sg7%dι &:{xr} f) G-4w-ujh->AL;.1ۍ DbI*0LOEzsdXrpze!oifй?"P -Sp@ҥq?k@[r!J3D7:p١x eGtѼm}5l\#rڕΏ7ϥ3&9VtصlTKnTU_-NG=K-$-|JSlXDaM0cu9#iW "ٻb!OOi7xd= q+ls|'o3k٪NYsOqxBѻ}_M+ZK)Ij !X3飜I4 aXT^YoZoڔNg/102Z_x5p~̻y]4a/#S˺"0DƇΗ]HD!8Y ضe $#{T6m}SH^HXfvT/O#eJ3Hǂ?:^ j([_jptM5J')g N"Sx4_Y.yH;| LK ԉc^*yt5Xs/9`CuB]aM7,V;rFc  ᷄I7+R v=gO^_>D갽ngjT!84w-]]wHwX"holev9|G?(Ɠg:AO/ݧ37@ EOf"hJ6([:mF6S>!ONGH'Oի_ڄ);f p^2p\gv+v08Đ`.hZwe{mIysbA 1t9M%FK5@Ard&c|2,U4Uy͑Àp`3Nqʻrs/_R7V85KlWR9OEzAb}?J711U:'UÔ$Wz9=$-h&?|ip_(rD18?Ņ]J[[؃M$'cŸWt e*w襟Y-5BQ *;'-R(SSbҤ:*IWZ*8y@c\k%X{P0uf's1o1l2F/ɹdR> .ɐPә z֩)Ҧ?7Jܶp~8`^YqM&OZ+ǜ&+vG/ȦIfPmKCI mAc ,<-0fë0;Y-D;II2VK 2= '[lf묷c#4w(Z~nTJ GEx GV7?q;GMd>&mYfLZvTӃkb9Ď緛i{Mh=h|L$Yذee}z)+2U]0]#ڣi&V.f(7J{|<P@wz6O4JZ ~_lv8OZLN\kP-m8oҷfWͷ2itPP/ˉdۥՍ]QS[ Ҽ"W=hTeg歇`~0MA]i[&tltviDN>18;H' y( c%q8vm|5Eywmky&'= A &ͯ9lS"92fͳ Wp} w#zmK2>C3ͤr\HaS44n:gctm!쐡V|$u1{O'jYeߋsA?tK<]] wwܾl7SN|{<^LH0ƙxͤ O;B[Ix{PԾf'Np_?vB L#1m9*gܶfq&ɉV>c叾loŻ7uVa)\c8MhNL:ymW~Aܫ= 2'v[$(VCPIqAh e\Ѥ"feفo}}(sb6_#  qf HFP6Z$-es-ʩSyp?_ډ,1bR8ӭd{!CΟ0W ro'&[z_=aɭ9d)ߖ??:`kU'z@Tٶtk9O QDRV\cEzX3@^ˏJ=k_;0.eq2ijWS s gR4^ߕ5.ܱ={7Ut$Ϩ=/Q`K%HA^`}sh84oHLhVs& si}1dsmi..2_bZ,,TZaTLآ_k5[~A£m\"~AsU/YaNEInigp?/!?0wA޿Ḁ^ /`w'4-); 9)$tϨ HT("/ h Sn 0ߦ(T)i16΢c7-3ƒkE1`he~n钺/'zu."˹3x]3J-ȭ~{k)%$@yǔWyٝԯnט}Tפ]MCFѲylAF5a7Jc@񽬠'<` Tf~Gq v*z>,c Zf5>)C:6I$?7|D[Xc5 k^bQ[ S (zVsd*-1T 76tf9N.fbG"NbaLzI@,aqeV/V.xNC.JBPe'Cc$ zmkBQ_o~z77s:[h>NU;B1$q=nj>ͅbscDkP(tfQo09 %cj06zfY7T!ttu "NO._8,s:\JZ0KVgì ec=%CyMdJI;=x9 h++FfMm57b-#Wu/xϘKzO*[0 EZ%ʼnN7Wd275x9iQ\fɉTi_&F"~жxZX=lؗSDN//-\e 1x(÷OsOWZ,J.H@hԆ$qWnu順u)A#Ge!wh6o-5'Q%(tG2NQ\-Q֑rӋ۱Y=Y~݋J$1/1[4~v&(s$P5)Ò: *h˽ V*WQ*m'd0ש=3M1~h) 1pԸ8@+KĈ &,d-)oţָi+Ff>,t7?0!= R2`֒?%x EOԳJTf)+ PFL.) iUb=4@Dj]pؓ@-??˩eɈVK6)E0kMa7NQA5a/O.bc:3!*H N#Jw@dfgyԊ@pjӞ cTΈ3gnE\1,Ci]P Kn*utb:u"SEsч_orcet)D+i(C ΀0dF(iw'+,"P*A+H}@BO;(Xy9{18*vo=Po'AQ6#W۔KmfʅX(KuPcrdDF"4_œ;.}ĎS(lW#{(#AKb1{s_w㎴r%+#\@P- MT1lRCQ?ͧq }25KԭqFBxkwn] t+ÕZ2;8ԁ"2iJH^ ?XAֈP!wtw3ک]]e 'wl5nl#XIu\>.ܯGpm~`U&/.MX+bAIeHܗw4CyG4Hy~>`?>Pv/Iy\*կ4W,OENNyqۺٱ4}L:ӿOۼÃyFjt*iik 6x4, ڙG h3\,[^pSKe?uHrQy9]kukC-CX/ -,ż3#)/Đܮx@150? mv ucֺA C XyA@.X?@{':i(<}?NJJ>9ܛzM죎h;J+ N)'lW9g ,Tmn dyMvιk^^nVƝªx@br n(0HĿxSn[uj`R5Nܸs3ede[jʠDfk 71R{0а%b+=Qb mpMe=u'RJ;Mj!Nax[0ΧM`dIߗ 딼3@PBȵpSL5w:ގH`j{8!2^@5ठB4y ;d۹"_~H3ӭGQ1- FJׄ<0 [meRW0n #xbD,2ȔJJu?]3i˟*GH#I%lձk-(k;_2F X.v_Z6m'Wk=ȑzNDa\ َkQJMS@yǓI<ͮN21%~3 { a"> m@htO`w"I}Tt_Ej{)&:>8n3iQGrmbGL2Qd Fz5=)`JH#%ٱO?<`V?g/kED>ꃽ0)9m7ItZܐƻQf@qvHJAwde;9$/П61]s^ 5B먐-! 3.oy)&"C` 3gmMV;ۅDUYF1q"%=L.nMNfɣDt0ʝ 5M}:tG uo 3|NMjJTtxWKWan8{ *]"98f5۲&3QY5׹\#KCzC+bdn 6 Giuv~JdN;+hbYŒͲj}WxxZ}-jFcoږ9N R*L?w˸Ȯ>=0cEo#8e)/4'_ڍlדҜ+@c+=TOCP ,ߨ1ۀkcCU}e4pW*$cR8x&$= s7@{tLWɡxro#Q䰠` kIqפEgLa.7:S%{QƼP"BJJ"b{z~5\;a2Ds"ڝHT1^]MiLMzɈ5Iډ$6Xpe4 PMvUHQ9d}UvC88젳:}IŹ"UF ߙ_mեž#%ArM.]}ad+וOR=_[1r7t0kQR;lm\/8*宽xȨ;t> o24 SD8anf ${%6i1i.y奼CyҺcR  j8E$;NIѤ@wqV$,Fm%q/wo 0_GK8sWg9,\PzZi= ?^*ƐPr6 ׊o$: ~C\Qd& D ^/H` xqXB}y79CkO= #-W`;r c9:B%q/zcӶMI{Ps xߚ ǰfއ/}t&BM|ٝ\lZ qb)D vU3>~8wyNߕT%ů5rwp9T{Uxw篦?}$td&(W?),-PRi9\ETYa+zɱi{}Q`5@j>.K(]¨~]^Ȧ%Kow%U{]M2Y#8)'pž1%j+oLC߀Jl{UՠAq3DRzY =?\ p<7yq++ͥR*L^;Wo^|oϦHT,\XYJ!IP0빂,nt/ZvZY%'%]`]V>=r3Ēc t;ABJ%j e3}Yxci ٶs}E9E} P*F(.AA=<TD9GY6id䨞~f=FH͙e׋ RFaSS'PtGńY' &f{d.MSr;v)C`w*? kƭrX֨]=o^SUx?u]S$ۺ 8`СLKX\=MtWvӻ^H'We&>u)c aYd`=ǻ5( ۣR<3}i6R0 .tMd=TKpgI6_BKyu?n10(ЎÙ~ݕ$z$-\| c]`r Q?p.ŻIs=+?:ZcpиPY2"߼B$q'W2Cy^JE>O&R\GdzhPކF}V:A˕J\&U;n:o )8I8>|/ 80sLGIӘI'$9?xbWBpmBj.<"b#q;K!eLn۵16\!.#F =G߈"sZfZ uK6o' "3(Ί\p?T8s\K_=Z(s@y0֥κl>8A8%dUaGŸCM.E4%OEƝdCu7g&q'O"bU Ekmx#H²}>%= 4xP3;H")sVB >uiT+ܱ2 ЪcV>as]AsjȌ u4fе!٤C;qk\J7:'Bic-}H6y." Y#`tǣ`Y !yk?UTV=Y+Oi[/*hRx vᬄQ b`]>ddXۅ?sKz3⣸ݗ {#ƆyAcc/ u[nT K&vD]W6&,ܨ'I5_c;[]1*PLsQ?'CXS5tF԰c0u.rf.(U\u5 3):q8XPv)5,$BF5OUalj[>>B )NWB9DL/zCxI"wD9aDQ3o"SC|9ymVJc :5]E{T"FL($LG$Uj`71s駀U E_'yESiXBvxfq3yBjna֭|}ꡋbMcoa:"K`@@_%ڐ9kF\#E#/wWWa3 /,POڛ`P(߰ꁌ0|k;3y䦐>6VN郆-Y&Ȫ5b X&S㶒a+Nk,9y\m-CUChp&IՃuU5ȷ3C _ p)76m,wzN5Hl g1fZLŖvCdFlRA[ѾO&l7!f0J%s9Fe/.t#,ց3j3> :=@q䤉G"Oq(݀ b󺈖#ys59BRAᆬuDwyjyWRh2`Z/dgWKGbB3Ho`j)'e1=kՇ+՟Y6̮wӴm5nDf /21bs2;&Ԙ% x*~j)kꖆ^V)C8UWz`x<[g;R7;1ÍY6?D!{):>wUq[R:w-+9%pkUk,nofӾ#[sq6 BM%&R=]c8*y #[P_Daou6V"{ApURmՋT곳y^O^..b,i +e|a eFXߍh>sT:2M{1d ew>/ML}傻q@E:|X7DC]YU:j!'|aDLEZb =gbak2vV2Y¹ 9L^GI\ `Yn{g$0KSd](yjC1S9α쫻K^!s4anMA6tw|YsQ P c'(n$/@|Q" ^"Һ6  #.[Zz _- z K.;)=qbkÃVV`zLA8ٴdOn].X9AQ!‘/lCu@1_ y;RҎ}X%`Wr|D &嗀i,T9Eax͏/sכ>9x/\e" 2KMh0ldLڵ,q_M2|][?GYPwҗ{bdFISuBHrhЛWnǢ sƫtPᒋ`ދt3ӕ ^+{g̝:`_yixOoZDu0_{;* ^U:6x.@B^@[5脤7g=Zx֯u6Hf,e"0Ҧ-Y%J,W#Ϻb1WUo>kMIQ\'pX?e{c TG:d8xSka PlIVq_SXZϢ sA!KܒHl*Q2,/G`VWƏ*VrVڀ(>}BSܽa6Y*[10hRt2PzuHFSӢjapo2Buso@iU04LVz-SlGqɗ0&u;KcGw ؘ"a$O{1VgX))#Z:hlX ]8+o-凍xZҔ[S d,j$jUg€`&}' lHl=dyݦ(W1٬Lm~0s5ۦCf ڨ8 ~X~~k1[7L#B~+cHdK2#$m>!Ae|mvX.+T\DioVP_l2VH O&eU2JFf_ @ڎ^!=\80@Ae4TO]Hba$ijZ9t% B%+ ‡JV"O)+Mls)&} S\&orVtIf8ΫJ-wggGxSI$y*K%'c=$;` \Xꗃ$=릩DƬʷ.d:Eq^1ŸG|z.#S? y!;'k{w#-va|8 NZL4l&7P:KUzGUC)r>9BO<pFDS. ѭtKx}lXڒ;֢}#itOC?aj4>?ְJYèޑ~*~Ϋ7um=}cl/V< L] Ѧbp m0R%@@(s2 NW+S3rҝ䶀ܯ#4B*R $Yg y^EGezSC1p`JQYܗA\V"RN,>JòqnKr=ǏO"S6At { .ã|tp9KwzUhJ],^ksoTdԀvg]Əl]H`4طV+`dUq%-`.0MFL.n\l:.w ϐ^f6v+frR%ݖ<$q _ҋ}΁ sNF}߉:e6Z*`ELI0,+hv\lv'x+Jz..Oo?-y((< :mUv),9ami`[fSxDSl'u7L7ndj%TQNXE#yk"9c- 3Jޓu/՞= +VNJD1:{h'0 :xLCJ1к:.gġ_0WUɊ裎,]b_38߭-9MQÆBɥ)%_ΰסXKRO1fr՘sIn"J|Id|^u5n`->D6>u9Ħ NjqƇ$Q.}H۾~:McdcsJQYY(&!6pa{{I=lT}q,ngXB.CY\w4_∼.,PlN=ODcћT1r$yCW'ZAS߯ST`#`^94k/Puv]Eaae%clo'ٻR#V(uXP9EErΓGues"F8A_bΖ\)Q'\ =o-t>R+;hFܫBMF2&p!-Țg`м;[HBΉ5Qg},-ϛFն=O7cA+6h[(WG"Z^iA}!ݓ%5 +r%?cIȃ=| vNީ'ë@].jX>`Pe,Oh]F>B[PRPyZ)|Ӭ3 r{kxg7(ג4t4 5,xo#ᨠNZI¼pT0%˫8p"yo :a6O-nJeֱ}P?SG+Z22>pi hLa$FE';T MOfO-3y5cu3%m6 3Gpqc v:2NvOm&>\FCϣQA 2,6Qaȴ(0q.Ԙ-ЅZCxRyGd}\ ?ʺNAnw-djS *)b@G ز3)lrαn {q%bWwr2w3xHqH}\mNоd[PM ']gonzi7p;^Gr; @ L79IV1q/0hr1MӬʣllbT0\N8|%t{f " o{ZS-H2V&W wso6~LD7i0yer T3#4cPF%ë́{CBp(W*-.3~,_͇%W ee ;1WϠ%MvC@Al<3G5,%LJzZc6L46ƍ͒R 6[5[zcvNu9XB'F9n*#~ϕEƮrVV-=hD17jiUA@Ĥ$;<н^Q2> :{fBr>0ͪNCCU<vÐ1&Hc1b5 Qb(9d=D9@'Μ^#@Πw,-JٷȌX^a s^r;ȡAHĸ>i/x }0-A2_}32ʔÉFbU+3l6:x A)XNι9/m ʍR޵uхkUր_/sntgi=XYRkև+@ܱV;6ts$f׾ RsNU=Y4%]w:0z1(\![ꥷm$c fkm9g1eo^FOW5*^h^:$/@ <3#8q VvX5])U8,e Xi|M&Fyo0E6n+,W܉: >U؃a сiiKVvϠx[cCJҰ1I־E&\ VVG>CßInuKkXHA@Q_x2Ĩ̼S>1E5luYN  dh{v (5gX˺e]C>50LrxOhk& IZ֚cC1@5E f_r>bC'b<헂FH27i7e-Ǻ ,& bkXcRdbc|_[,6r~#i =v`LrݹI0 JSR&\x ]&<d?;mگLS;"z?uI௮ [c,Zn‚Wȡ2$I`X9sJc 4' 55|eͿٌ_aQw4PHh)824]_VVcC\m\Euܻ_\&|#4nJK\^L+(O\i\%BYhalo?|R_թO aj:Ĵw1W]ܝ:WVfB'$c]sv2"0P8vhwҭLao5K+n9pӜvGRBg4O Sv_SKuGn6|kκ=Żg.M(\ "h%΋RWӊtP"/$G'}SGC»;l]log  I*9;5 10țɒT4ٛFL2~f}4b[p\養 pnɢԦuIzد}rήgj,mnU956a2 AH U_TJ4yk Y6nn)^=)L*!tQ0R*)LVg6hE 6t}Ѓ͚n:`ۼ;eH9Ƅj/^Cp,`:#$HŖ85bݭ'OyK>7Yaؙ8IAǁT!' 8> 2Q~LgIJ[9^E> E{(n)?EEVeJ;}T׹\*qҼV1< 5t$ə^NqeRXl Ə+*VFl]M:wo&mB~g>%(]$̈v8#DB8Es20I_@2פk Jڏ{8VN|Nc,7[ovYMĶߘ){|zz*ȒH'׹4ͫ)]?gKjڄwOBɒ%PkMe~Gs.'˵e'۷+7s<3qL3r[1MACׄh$wNCw, [@"VbukO%f=yKq&Ņlj:z{' |~\3pBIJ&_'2y75NX=i6)fP#h?L0jg\ H0@bg]gY߿My&^[ˏ QˇT-G~*1j.M f?0>NlE[-6,CgGs?jlIj[,50Xĉt;I6X6wb?v%g;+_F<{γUs- jhM5锩! 6aw~z!5Qe32R8q3kg$*|z>IOp6-XgH@kZ7{%"~լ[|MuiRs#gr.2\ TϛyiN(.g!da*!7_,=P]A(5 ^ q̢܌ۖZ;|\ԯ!Gj̨Đ_3CoBPS ~N%~BgչS ۭʳ Y+{KygwG[=Z[T(N,.)&Z}d$h2UZn7M3c?`.w r-_[!OW42 7!V16\>~'THH_-E:\[ZURvb8Ԃ[25 Q+6_-ooi?c 2LKe;/zɲ @݃"CYD$О7f"}]W_/ ,0-ؑM{ hlfH`MqcSR_+kRube=s([5CЁO!hb7JŶfOQgA_(Մ:v!DoZ7>up<-WB7 ,;Ru&=|#PS  ي5wNdk}N^N<>pSk3KC׉>e$]T,\2V ,BlL˿$J8pi̍O\?kͷ;|ZC0PdU{# 4  Zf&ԛ420]=tM̻;L@ްՀ3gVYn1G A(g^QQu~-:!/ D#V3b&Kbc6S;bRA獜]Wq/9}HWgÞbZuxDe[<9¬V$|RgNU?!9 atq {% ,? hF[*TGd{8+Q٭Udg]VXXwƼfq1<;\D9#b:*|d1+5lKnɜ$-=tKj?t/M)<"WiO"lzeQԟ]U>H!Ot ]hLhԘYA3x! ê+ Z̲$GZ]ɋi~OCuC &~1FeY>ՄXoCXp-Ws8o.9pm$^vXԎ<ȨWrRd7 Z"PoȘ]GknmcTYG0]C0 &Z\b k|K3;ɸP=B&)I[ꕿVRƸT7v ,˥#"ļ1D7Q4uѴە Cnk\tռlHI jK#b4 1 3+ԅMewhîs([K]#WyUC!\BbȷiY!ɾ?CY۬L1ը+JҭDn1% (hy8#xkaU4aw$H'w@|:?#jC\^W9BB K[9gWV@ ʦw:+h4gqFsUKbг]_;n2?9nRNc8kc[, =r`d w|강{5qa ^ .{r .K3ںX朿yyN\'ARGpr&]-څ\/orAkC&Ρ.?9:Z^8YsJ9{LԋJ=3牳Sz'ݦ[y6wyPӄC)5+TwUdX[ 9Mu1ѽsP_sF ƣN݄& z@Hf$s)e۫d}ޭe:WPplUcH˄hIΑ2CL^ﲟw09\p*2}P<6ŖK[{Ao y+d[#6[䦈#Ek/4J}`GiH@-py $ְzwZD b .8$xƓAcNJ9Eqg<]}`ulT8:?0n7lnbP(#Ǽޙ{VGݴ}W.$ʼzl]8EJ4PŦ#ɀ6.xT`I~ؚRF#+Red|=:SFWmz('Aރ" ?, I7`{ U4mW龽qQ ׫} ADq}& Gh%2|܍à픟Xfen GZTn^p& G?npjխRst-)| jS)RQ*͛ě|ZZj^ii QHBx],cJ"ytt 3k-Ǖ4$xhgk7JfhżW4qzuRǍbPLPG҄ݙC||àUtR,OYGHyp"K{pxD+ lr,,ίLQ P.3%G4c#&Bv/?m1?4M.UǬh|]W1)u p.;wh=$mN#ssi;:w ! ߓ Yeq96zd;V =+L+xY4{ ܒ:m7w-2 uX+\8k@(fnR r~]K?0)Mj::x9X=6fԣhG@ҀViYT E\b+8!*&4`/YoI搁VC3t9D[VFW?ɼV@Tl|".gQ4H8ʴC\5<-D ? _"vҼ3b>̂-͂cHR.sɻJ4׎8ǏI5P/ ߸NQoPtgx NfM@%BՅi>y?'Ѿ2 {` f1i9_d6hFp{hIB/ +`^fTaYcx<#pkĬs&|}x`_8xKXewJ5h Y Je`>#\ܑQE:n<0?'%ƒbs!6"0!^Ҥֹ<#"8VĉP5t#+rMdA]AriiVCUAVG a挡N, 4X%]ߝ HYޘf5n*0U_(#GǨyv, 07Wbc2p@h(`e /d|paDP n<%/Sh-w5uPTbpHL՚1##gqL>&*6,Wc+0>S`F^ΧR ;iކEJ\g Q[<Qes(.5Wz٥)(sPǀ6X>dQoEԯ{y5籀̌Zk|b4nԥf2ޓc9d*(VZ֍͑{[ZJg{ٞZP U _ x};ZS噏Uqpc`a%+f,ۍ;}3!<$ V.J$ir"ugcy?Dj2>@QI* oM[ۣ`_vfVGujџMIz-u%gRV@멘F{ 4=X?3(ג( ܎KF< eBcA_I߸;=9~Xϊbq iGF1E6 ׮(T&ܬԯR ƷD\pG[nҋĝZ;(8.ʋu[ -(u|M42 Y Dx|LV R.<)A]dڜsgB@Q1Vi %]\>G׺<)9#hJCXsH%HW+K4P#n8:I![x2- g(s:|Θsr*gX!r½Dp0 /w@^d̴-uzQgU_Y8h}j"`C3qp/s<69-yWK]"i{l=7~ä/iBhb).7: fMxlh|*uK2$+^h~T9TF:t`S@+@RÔ)Xӱ)G& 0vJYP&|=BLrq}?nykBk/377-?%oP(R*Q{ gگp2i̶3^҅"e(q#YJʓyx~-dAn_+o|2BW`k9:ia#'xLEe?u*HKAV7w56G''5^Jq2"frsBti%_(w+( 6oQ1P]7϶yqrzgr|c;s.}.w.뾼H]C*.X5Mp: 8^]Gh*42%~#QI6ک||m㽳5WU;|C-VY'Q+.뽠1^7ü&zH<ju,P>2Aklv/_<|@1L9Q䪬GȠr25r`7lU#pZ&a_ \oE<2 53u͂l#TŜչB9eԆDb>ͩtSuZƤt?0LP) =D)ͻyp"?:4x&xxg3^>%2@w*CǖSC FBր 'FcG^O8moCVؐXd&Ўa#w#-͕ܯIԽNR`0Nuʈ_cMWՒ 1N?h+#kİH(^ Y[\}`g*ɐC3l _aAZd'a򂵋l9KYYmd9P^-.QV$kWcW$#"=.\j~+ ^JZlFg}99}>._#q Mj~=<ń{eTpUoX˨`eۅXzJ(|ʢ̙ęKlgP96. m0Z+ɓ*FdVՆ` S2ZV 8j=dm~O=%JPI.b` m`y_(>-zC3 }~/Yӽ\qR5R&0B6tVD B7s.bh< jnŞׇ>M9u.b2{GИ`ofn[Iazv3N4 V|=ݞ/5ʕNvfaedLff#j? qF4SJ1׃iz˽QŽ5g̥tn.1y~.HҔ%ʷIn +|nk|LZnLk~ac*;݃0EKR8$|"Or| s؃}fD4x k_P^[ tP2P5BxA`-Ñ[8JUT.fmc ,U\褳ߚ|@@T'䕽zk>,Ht3L;ꮷ'k,SzD{b/Zo*T|F~PiR8DdD]G̪0%lSurh1'D'Pv׀bi! >έ<ًgd~q]%͛Gy0ޕ9Zh+57rp>1oMKF\YpYXM]1PFa3O e]p}a lC'U@" ^)j01cnK8C_Jȡh&Ihm[0E.$ä~c̖Wo9،/(&;vV(9wM^ .hj(jRp$%A~TCu 7 ͉$)R{˭cW^!Yv;.`cB^dR9em;YRES+7vEtNb`{C} ]Y I8rЀ9ROo  !jvbaܵF"QttlR%z;qj 1Idll{Cƙ熬LRXL~w3I04ĵeuؕΰ>3Ej -'rKKd@ż p4T=|ߐs- 6H;QwE'C >^9j df+Kwz{]r,d|C10|>tiM}Ȟ^ ё Ie=^)))_.C^X݋2A=2e'(T(ڕ,S \dYTqfL^Ntk&gZR&ts6Hkjk˫@l'6_"zv t|aRP]KkΜ ׿$]LM:%j@@7nܵjw`bg\ހ8nkCdĖ2DDޙFwWuM8vx7rNA} :6Eg4 ImϪ-(`>7m.>=mt.R 쏛\mj##]r~T+ؗ1Ąm<5ҧ&;z]A%V| !,rV;KxZM0.\f25 ԭ~-Ffk1kzKI``214}QV5p`]9}-+Ld^ХjM,}ޏgp} ^zJ~0 HhC%ൟ ¦-ա8;^'ey#!Xf~ZX3kp k:ܡMmңȴ 22'YT NSq >>2AyNyu9ֺ #@a`<6=b|+"$?6 !J!l¬)N@U]r8O^M|{/+W/|}&]1h8F{4*/clt1QbK$Pw 7 ُ<KLJe;ɪڢsx%M=Ciho"2+x u'O}4"9fPLTvkBīʬ;QxUqi8uZ  /rp k+;M Xrx$*BfE0F69{I,JU!f7j,^"(~4'Av Mm<,]0D_qW^؊4-Rm~)FY|۔b "MP<@ok3Nb%(9J}BPO5ne\zؾiHϓdCK.j:Tq{x>Pkl+AnwvTӉM6S9.fRp啤xK8샥Sq8Ml;yؤjSZ';V#UDx#z'A@z?;%dӌ.eD'+qW/ %'.2P|(PJ:D+87Bb4:$gĢ6ĈsxT2hq^;#(FVvrb)#'=bxXYOU ~KQQduupaӱ7]3v4NJ;ł`JqTG;dw7NoKtQ[C 7"$JG#ظG*WD߬, ^3dJgh5O=gA~Fɫzdžj8qn"|sfNANفܨ8,1pw'QWPMG{KGZC% Fz}GilZmW,_*|]7L^>mLyyO h uϦjM,ObR tܱxpN2k!I]DPwrm+",/XYqhi@w@wOZ[.׀G!>٩Tuހ79* bF aİ=N'AAȘm`ڱPN 7s'XJҸӲ7"v360#cSNU!B}%+E1M2G bW$ 4+fؠQs~bRYxh{hW!nJZfAk鋒NЃfY#+4ƭ>P\ILW*m-ڷ0;Ws/TvFj; EsN ;Q]=r#^-N;189x^s= bct5Gia?M8 =ٯCm渼>w o4?M}ܩo1I\|֋>qw0ΰPz7A"WuDf6ny`n'uU+g(fQNw5};4|{R:X%OZN9#!W R]^cRpɛ1l#R cڑx,$&O~k5GuZG)'~]o /bݡcR 0u~ Ji[>dzp$T Tš$a7ۀB!?M!>I/9TS gO2?vOvwa7%}0Jb@ئɷ8`c$}(+Tbܵ%w,<{?y6)R ڀ"`,1` clnwf;~ ,}ǥq, |/p-@Q^˖fRpM&h0]jb/:,ƾ>m,(BբeVyj{8Sf)n-xrR4B as. vəG,JrQ:l0"~/ƾvhE]Tb8a=G\$o0_;A P51)EV^(νo<9ZƜ̆|;?f\˵yJ7u'n Fէ NGiFA"ciͲ܉wF"W;ƱŮZ!?+Z9xEy0`gSmA$Ɍ; kEB]5N)WKVuBs;,7[[ukxB$H̊ {'"ó+/5 YqI,o ňCAJN2è+(+͉FY=z1V7qQF٥?akqUKwEMF9l8`#Iل˰k7S6%$>qLKIyXѯh!)=x[ G9tyQڎSnb!E؛Fl~nP%!D9;:sc#TL.>矯OC4p / b{Zb?gX6|S)-0.zPBƧVϹ8 uӃ, ,5}rͯSh-I2˻܏z(V/2C 0VM^`7ɀ.C5< lF,X H8{'hzs3HʹhFM<͙8HK 0W9Zz tPٲ j+an\q4WFK!8 Jm Ol%2vޜ:?Wluۢڌ|Út@:x GP8iřԬ*<'FIJ4zD5i2j:pYs^>4\Fp܂9t`ФP#s߶б?d]`/Iʕ;sȵ1[1Oe`Gc 6Vr{a:8Y6ʕCg"Vƣi8M|S1!r-+N#}uFƷȷjZ+#¥^G/mW -bhBTrl lWofU#XƑX>p|Ƴ`A߲v^!Ҍ(ڃy[&U 82֐]jJ\aJˋWG\ei ѝJH(7Jd2`m.b;)lsAX@ne欷64}NENR<=aKƅz 6C" ܋$0+=%2zWĺz&[$?kumBބ:=e]3[] }NlF ?'roCiͳ[b<#5[gg]'23C  G_@Gl6V$\_F- ~ Eoٹ]ttG>&ljctQjUWV^`nvlI }/DϿ]*yͱ,:ﵰ<Ât^eh1gɇh]|$Ͳ"_t| g'3O,@ی^FopW~R٭}ڢZ Sr[]pRe.$W@ ^EisԀMS6T'Cی2ڞ|IjQ".K?_rXɢ`{p|{h5#8үGEz8;ZX`H+ ET+\G1qWb)vuq0y<=Pֲg&@(є?Is[vxz1LMW# T_\u=8lR1_~T'&(ɯĞ }T< VFH_i𒪲*]C[e)KGo'6&H;-QY#;K XUF aj p$ g(l4X1zƶ^)/(!#zrM$<`6^mk>ϻ\=]!x6uXDI.">nПh;PϜlfדg:{K)QY|h]Xa9IoV2E 9wU=ԫt6.m\HOe>@{zϮ1+Mii!F9ms*JSHB7|Qn D~j/3B؆ >Ts(pV3h,;;F=rY2Rf^A5KV]C@z<،Do01y,4E,Tl| JCѨ_] Pל,n26p1^}'i&cSnHuZWBaP;2z$_P:y$K ʓxEx,.[1^2෻9gGkJGt-EubQ橝(4E\?7H{m}d~>1O^tR7[L&#I+TP'# ^]1E pS^)l}kЋ<% dҴf<S'(c/1H^w[9Bz!SySZB9CQɬfaY"g)q-0%RApCo WYZV:qVmC^3\CiKbJZEA}L{ίqy}J ɿ0#v/@9CZZ\yT ~甥N9& p87.#J)%Z~V|%skg pL@_Dzt8IoNߧXLP6Bp4y*D4h8k>MO Ec9]2Ѓ?ߪᴚ9[/) >GNC,mUU<$@_UAv=͡1o`/3.hZOCI5yۛ|JQ%<1}w==e q輘/SF!@_[Kox*JCM MAϟě,GA_*QR jPz`_ӡ6d8SSOr٘t'8kLZ\8C7 [;1aqwGZ~bVT|!iږgw F(YBfpӰ,jX= {-zn(G|Uw5KOBXebc9:nck /αFߑM,$V&NbGЉ 2mv7&JIUd-{ =}L ~(pZڮFUY;VFOb>:)d&tƾL{o#(=~ `"Y1Y5V3{Q`IͶk9mZ_aFGsiGֺ &]l3}ZbCM;N+V-_m%RZfvo\Dюq@֤@,t#Ɲl$nLQm/p\a@06땒QڬWRq&nEɈ-Dlּݏ(p`3w$T3'F>vGg}M[_cٮXY){d_2f>@$uTR3WD>Pv~`%&gg=0?H2E9//i~W:R.ܦȑxkށ?򴬟}|Z<z/ǝ?z6EoWgy< :6Te g /L2$GIە!<<;V= xlfb3&4;j>VءyʎePx0K4gM5`U'0H2R}G,8a5-7P)*j0f@ o-hz_ZS"]AMv-X[vKZcx MKH-a0>$!I~!DMXyZs(s_yVrVl/ZJu,N`yjLzYX|pHݩ' P$gbȔ,.Pi-!ۡ6k;siuf ߷38_&k*3b^D*p?z>ȂLx ՀQ04D봙z8g k-M{Đ/ɂ7F=*0"ע0Bw>& (xBU5*<ם DR{/!gMib(8JH[UO&1!_{X0fx0u_+=SAj eܶʅJayQVs;ӛt. >ƓN6~3'91fX->):SJc:SE.2j;:&2?? ښͯ* 2kjS:`XqWP6J-6OPY `ɽ/9)6)M{d-jvHܝPڳFz^`d1?Np$cӜ|Ζ H${ܷP"q~9FiWG3O1)SZAG`drFb&]4Rjw;!Wm>[)!d /$5 PVS`-jCcM;CtAoIreD ?wp&1 }}BڱO]%NmrHT)o:YۖJ ,#:fK[s,7Y5>IMt 2߳dQ*WoĠFш*׋EST}0՞m"NBf# _olMuqo@æ?&'/g s8ˁu*5{gQ<ôiNgnƒyf`^"!2EvԤR+([(|jɢ,깯@<>`Tۊut/64z`x (f6VǸtsv\։U?+5'} 654S|dVbQ@5 xQ-\EWk*{}(-LLL aX=YjQ׿:1;3@WOz히q ~ۓv#+խM=ٚGL"oUiuxB;G*͒{=IdE)o=0<] q:_<}WD϶A=4 ɎT#jPSV6&.BP'j}GNq2#]hFϗ(n*Xe)>EкxAlˀFTcH&[ i+3L#mp7LSnVe+PI,KiktvE#|q͠>(!AZrtz:/ٶr<$@(7R }(l7՝'[p lL $A}ʧod+lk~Z2e5pyrұ+6m%W; H]HYjd{{]/ ?k9,Cfu1`x5[> иĪ`FFui~@4Fg9MXpf"Pw+nh?-)$-L>ChS?hUoe uGI3 #&\CÆh;KT08fo;Zxf'm Q]Ơ8M^!Vȓ""W*9G`e1 @={X2wӱR'Ɛ%łU'؊^i5]^u9++3G e{c 8bф9v" UXIS\! iӬsyw+eNym%Ep^XDkNiwi3 v@štNb*Q*nn&ͮ1e `62cFx烸]Ʊ~SJ(u`[.To*ƈ?pADVmZnW}nt)c6E[W8u`ng0Ekދ{B ?E1n)9Kak]K ƃlwb AX@GD-IQsohp?Qn@(3J-K/OfSl?7 81*o@y}7;%dʪ(vzOZS.<;/ӂ%y[p5+n] CuyzrJDAq?jF^5\c*@nqhf3ND@p[XCt68ʆ+o@AQm4.x%)N[";;S?[R=pL(cbe v>W@IhՉr q (QԞR˞3()y10h$_tMxpkX6Yyr٨LkV4}yO-W)P_"5Ca3ɑN`z{b)8Eh,'ɒsx7p `JzMA193 ڍyLiwBihUs真>~9N4ڣ"G)p/^(gKlۣgt-@[QҶ}|Eo!2>?Jm͗W'(, !Sɀyyq/!WSI/4'ڄD8tDT^Q>_*{y[z5+VdEiʝb=TIW|`3,J܈+Uft&+N,Cڕ+C@(0lT + ZV*TEDb"t]}}>kZGKU0~q8z)Ё6pHTJ 9񚇠q%E^ .;~cY:PNBmQiv{zӬ$`j]j3Yb sGcWfLL*|2}V+!7IGk!&ߴdf [Dڇ!CA;mgaC0sAwHoKA&l>R< [R J18"0%.~V$KJ`_Yn("0оcn;w:8*є˂`>a>pf^c}jYz8猐E'oM xLϗɵ' 2Tyň/amPU $YQo?Ԇ_kR^nیK B;a+Vv40IDZ9tϹ%Vi}K_p PN$p%,VZ_JQ_©TH^"!as 4?/٨Iwgʏ AG~>% '5d0䅍PiQ е̺ϙs<|rcP=u_$(x$pv1F 6;- EQK B 7<6mhl'%y$~S@#e1" rӗ``טw6w:(eЦ?'>~ʠN\E^x 0ޕyc;T3r'QZ34G2[oOWbh ]OX|xd,k3[#4k Xۧ]ɻB9_Uf9٭Byz6$+߮,%gNOyA/̘?(OsMƛ/Z@bQ'b,H| rwbcG .ed*J}Ng/@o_x@  DUW_+2%1EQXf=~=-zB@Uϙ9NI|4) ԬPX(`oŗjdYXdCnY<;Q@j;M_QQԡh8SED0*Э\;'7 'ţB>tO#7Jo}Z$Jm>]ʜڅ;dQ o;몓B̮Bh:cTI~_żV5_d, ;\P%։GSRΠɔ = 9*}#0vsfbu(x+LlUL?[l'ɊL1(N?E,a63SDz"~) ̪͜p0P+T#Rp7ڒbIP0S'j% gsмς Y1*BaEi|0G3Sp. hv@?PYPH1loYdSv1jkEm݅;%5w6;Ԭ{MPjMLDC{DFcCNQ_ٱM93HBeƐUJt!H m U&βp V"VسZw(6 kx/vߵ9ƍ4G즬>1 n3d0?j{Y(HĭTи L1ʁ 7 'sΤP>™E_(" ;gUu>sS Dz ~Z:q$` #+fIEJaCiϹޝogz/Fn״; =82uEӝ#,hݤA'D~C?B* pNjz3+Zbf`b ='i/,پRV,4r f2<ۋYAI0r4i& R_w ]N&xI"xtF=~@m/ܴr_IME Dc ,{%j/Lk]'CBWE#wߓ)!c/L=''cO?ԫt-@ɖёoy|7l)nT**F*z3{nZ'x=d= )p _Q8脫2+đ55B j Nl)x>mKzWtz4ȓkvF:mG~XK"G&W3y{Q,5aƒ;E_<4<yiFd]lҌ,WT ,ݝ%W#Sh쵔n@m7~9P1]v<S s2sW -BP;\Ol',tHy禍szd1/M$_^,nw^s UT< [S8Ar0p<}J0˰cHo)؟J<3c,/qz tS$!yڏ?ڟ]ʧFR]`t9X!:e&я{p pKG2H"}C١d/<[WC AyߋI\kv2>_(2 =Lf>M\ VӶ#O10n'_D ˜$zH@;C2D4|K+(۰E0|q8"#a٩vBaT.mj->7jYF7}~)U{b/BƇyYŌ5)QD[ DK7,ujc>kQvPi$LUh#`z1 *=Q6xͱ;1\i<L|$T'o.A/۪9Ir̾Da(R,-OSF^h/0viX^6؃g:l)ͫbㄐ)F/o.~1ñS"@ٱ6!Hm]*ד{LYW͵ 8dcjTDJ'Z(̾ 2q$&HwXWOs%< e&"UzIq?x" TSES X^+ɜv=ĔTב &RkL4M3rI"z$K&kB E2+Lz/?u1lGԌH@s'c.dd/v .ԝ =:=4$bTIod$THUqEIE?@[Н!zmhBj:Y$Z 6f<̴ζuI9R@bqONʐq VpDef"ǹv|4s{#(9X5,w2Fԅ sڈ~Qo^qwgBfV~,$e> UB*m%OMbb +0x8Lu9wD߂OsMm9?EXl/N9z֜aPĬ;v1PcHB@+}lM!@#˜[jA5g#:>^Wq)%:mpcpC웖 R! ޭ,H<Y^wJ}WЌ=$WCk3Ì.jml0Q?qW=7ymBFb}ns3;LJti7fJ*Gb#cr^7-j3‹tL٥R֣ULeS3~RUAE~p&"bcP!JXAg"זH}ycἧ'Ä)ysGiSF_giPو" S |CA5}5"dtJDqY!UV]b76wۥJ2' vCU~0wbWyd:bpc6_sVҖ{Wp%[Cֽ.*Z c -Y.kC(G+++{~iVY@{_h71⊱kx9ZDNfSYZ4ay0 ၲ!*\_G!tL(gB@[$.PT=DM[9YZbDlGn։d" p w6AdK_xm4ÜFRqY"iar4e'̜WUp *<#*/#LIMdZz'qj2M7UX)/dM~R3-cy*G}UR ^^Ēe:zUXn`Ex8($MA yRO}[J`=/"o"tmer'z5{PLَd!z{p|{,dfY/D7Jr?jzW[ʧ&Uի 6L5GBwVux۽okS\Yn2Ek7X#{LB9_IKme6 "Vpc.'qUJvB^ފչm= _FrD. DfR4z֙HSƚ 6`ʣ:p#,a/!%OŠ;GPIQ_3[د;ąlpXcq/F1: ֳJpeY@l]~mu@eK!)wQ3nӯ0h@,3CJe5UJOCZӽf]0^5ت3 >?D.Xz}Wo+3=]]? ZP.B/B!OFUY rVy]oh OOΦv_Ev,OO?TtcCEM?1~`ա T7 ` ̨ݺ7Z)+?Cx4oNEܡ喍Nd%Ea]#{ry8KHňDW/f Y߹G=Ѽ)2/ HE'#J~{}I6Up, <׫Wߏ^հ/xf+; œu'02R$|hH P, {Yz.(66~Sts[Zﶷ& 0/~VA"kTFIj42,G~]8ۦB2pS332PXww6`ǗNVawZ*3]9l~]F@ơbFq"C<a-ҷ_NzX*hkw O:&l] qJ, G5wC<uGRebl|l"Nص|1:=\-؊L=\Hٯ筵Vu$,FepWA"1"Gz`A^⪇ D;. 6^PpsJbprV۞Ƙꩡ}q˓\!Y/WbWL{֘F*e/x\( ]Ԫ%~nv7LBXeGg EbK$ueiK4|oЖRTov!?^2$kwC$\令.K>9ǫn[ ISA& GÄ;~%F8}27._`m-Q; i6Yl[}FO*w|{ G?ɖ-h`ܤ%6Nɹ*Òxjd>iQ'B羷Ul0ji_6STVs}<\1/l,!H]2M$uE +@!jqUB’<ǩr@By$ʍ,7 lĴ_oXXƙcχܙ51Bx[*D0w'{ lj Z#gV ^_@O}H#!zLRElnaMXe] _ $dȻ;}~~YiT 4mA*bNBHb~m7Tq9<d}(2E7;>Co^lh#~*U*lpRMQAun0 ӀkVJN\oz7æy5$ eKFd>{{ms pdM?/ֆm ,f.k5%4"gwS/,ʕ5\WH6ՆJ`z.ATUU;ӯJ3y{41 oGjg(p*= YxpuW?oa鐏)> K$ ?N[BzINorV!؎zeLpygtS=\oduXݯ!`P}|(@,# 6*t5ɨ.H9vTG|g̺-ʸ O=))ISjIXW/Ԍu4ԳZ %f!yTAIVT)+PdJqX VJ H Bx,3qμr/p%zɳS5!V0|}1y$oɍ[O+ӠJqn9Gmָg^H*CMXDg,2=N\@f  >|"72f{U}NzժTpf*q`{?$iF~ /6-"%Pl6^.@ЯP? hZ?w{mڌ! ]RϢ6/sp?xc]'-lb1Q=@6HbZ/{ߎ!l|L (It՟\~3?>0Aw*i1K h3)[wJ 2:*΄5%.qkbHS[2l`&ko]Lzᤱ~L˾7Mg3Y6/6G:͑}knrẑC_fw|ŹN+< U3[ 9;Np' Kٺ5c8&|`*Ĉl x#ٟ}<%vqKF.Ұaq/h[[wx @FUL}u{5LBa笱.O}qCY=nz:P6-ݢVpo KB-Țe[}-_ 'ܡXGp ӘjBw랑mDlA/z0_g A}6"S]6^Rg=yv3eq%B)Ql[3ۓN˅nj4oK-/c(e YC=B%_ߞoA|rDgrr[Ѿ6'4.iZމv HkA̋U9O{-Ŝ~|g=>t=t cuqu%(Bk!x8N&ț(jXkv>ֶ[i~K($':|m# RώġkL/'yzO ufw>MQɹ|5fD/iE>i˰++;8O1g/1C{i`Pp)gB&S՗V6@hDB'#r[jj,]d9eM680t CMRrXIm)ן"58؋$7ivP @@!31$j fTŜؾQzg. 8͑NXlv׬a-~.+Fo̴[Nxqӕ~v&j%~ wdƱ~Ǵ_®D=J}[-Ǡ;deRPD}ѵ7js.@@ ٘֯p1̈N+SU9&e.H 9064YWP hZI:N4-j649Oeagz9C|_@ߎҺnZ$l\g$*7~^Fu.|X^aVO%6+D4."tCSLMxL:̋Y!I/e嘾\2V˼L%(j\ :eh~ -1< lOƮ>C~~W %|jʙb3 Wy}SausDq{LͣqA95~EYi2+(i@~6'C*^ﮍO1UZP]@y,쀅I aR6n?e} 5+'Wje +kfh~Dgn~hs*?Iy%4m'SahA}dI4I}BY`q0jV"ID?|2Ds 쑥yT^XN)\QaY2)2^ udP@RFdj1>Xz>ASAZKJ(c P/n">ŷnfW),8 5Ol<o\G1CS9zuuJXg.X NiP~ewH>?˄z\ntc:߅B2-10 ms # ;e-θqAdN>_/x00f!QZBDZq& A|ɸ0TT+mrKj_@%SP1AŹ碃cY_unB?q4mN<thK@=;֙4_qحQL3&|qqLtLCYB f@~#O5FqIo+zF|)U~3i @rf̗|M(q]ΟšPN2N ԅW ]ZV"-5Vr^t8|*)ԩlYN[췏NA3Z,5?-E8B {-]!҈uZ'*{pЁـ5|/v)ya>4]'PWP\T=| +殢V$|S-Š6pmt4K$%9i{)هg܈@re8ʪ RQ|;[_a9\ .ʲsfݫpBxK NΦba,Y`F Hzr_e+L\D*M?JFt2bYqTӺD)b!~TvfA̞- q@NyVWBgOQnAr#ИpTAͷH2Q\MϮ2G%VtQQzvgtReXvU= <%Q6cbo c!lVޓnet$WL+ XC+aW U``J޿9S?FꩽQrm? q*}SꓻY$X Jhw~+[ЮQҾo DnKb;_ kYz.n嬼Z~q2̀ek궟=|-G==Å~C E01HEC*,e)r@}=֠3V>~];9+j(C9 Ň~3 hzF:-cxcCg$} s"p&56\s`7x1vO9bB48G(Z=O+{EKL=eEkf0GqtYe٥DVN/"϶@[e)# qУqSF(Q! ѫMCT{= HS$&kCG I**o{=ޯ)v\Nf7zB8qyp[C2 ᙏ] rV+ K5>= | t,'ja"&W:xI-tW?us/(uU;Y*'m?X0L^9i%gHW5iٔO_+oXvWMdrkSG~,`vC,]Sb-aO7Ɣ7@ OO.ѯANw()AFUN"@{ jP<& bsH<.l*I5/]yatӠݞt$=$2䀽[A͟mޤtNL"r~;/PKV@r&]ܦ_y~-PWMG?B7* $'at?o5{637X<# @+I?:7lzA3`Iq09=m|Rxh|ΰ!B,Al6շi uAQE:JJ:ij{oNOMCʪlq4мo;hMIE5^ah՜K ?-1΍_G/=x*oR<$@Y2\) *Kwi R)]2|[Az3tu"<9{S\N-#ǶYiTzK,s>{}1I=:neuM.Fȳk&&6W‘3V;lR0k@Ȳm3_b<4dZB\ Bﴷ|7qxgFitZDsj҇ ڑ2aWGoNFNN<5YtPie/x{C ܥOe$K^WNU&߼1`SzbPO,ŋRIVXRp d :pZalv׃ M5n!u&".U#&?2F"OuECV<;ܷߋԢ2+8)Nemڀn[ #P}X5t.{!kWfjk(musp2}l RN?T}[2xͼKiSV8Ga :pg͂efQ ka3  ̧Q{Oiqá5]t,.mh:JܑL:z =,=ʉt1y{fJ SRl{ʛE]&N(v\[>!wN.wg2? O 9_kyL< 2jq A.2ʄ{*ivY \֞<}/~䄤mKkZt򧴯*.j;'m\% 4ҤYf<lUwG*0ف,*3.yjc)3~K|eVD2SUR*8z8,۶lm[_XI-D圲v{ V}bfHaYx9HʘGʐ r4d ؜59%NOC*96ܹ"Α,F6"/hu_CO]8YDu:p 򕌾B@<sX! ?HRL3WZ8_zbqXt:Ԩ0k(ZdTJNUύ*@u牚ANGrC* 8kZ˕v(A8mgq,*B6B`5\EhۛF\`:yǣ9u!H=+uuFLz~CO&mdL8'=Kﰉȉgاy2Y)iтQa\(>7 z{U!_Cn8Of ЪKJ0Q{ǵw~#EpZfR&y"D&UNTda%2.ܞ>y.\9Iܤ̨C7 X׎reMZY:p_*f\5FF}cB S Sf~38[HЇ,  _W6-e9[؁g.j3B[3h.S=e>+ԕm4Fx\P2Iھ7$V%h"/MeEor0qu@Ϗ>pǠh~܃Δ&9N7`ѡUw<5}+uTQw_,VLSH[/ٕ3ĮcIe05kk(~IfL\E{#1\*S!r_\)EsIg#`+Бc:Pn%LTڍ!TVaiy7qcU5e*aom/Jwh KlC2׷ex$C7Mq =)IT ƚ)>,]-EM迱7 T<HixQ-t( oA#ZD_ħ`N(>fgc1^q5oܣ37q*:C/} e&wG<c1G@}D 2/{a uWun@!|,\"SxPl!:Nt8te@0ɞ?HAFaRjqWu@&']aGzwQZc o. m"d h ұzyIPRU:ST(>,j d`vtL+dv|Fӱ MyXOAePA'"?m1Ƞ$.JG}=҇oM4!f5,bZ KN4UHS"ݣѲdX%wՑq"e54+fE}(\5q Ϲ:XmxVt3s~Q_QI:'^H@217!Nv"=' xyLqwO˔vά+ſǸ@[Wo1CFb_޳b~o>#x|+wVؘ OG8W2seF 䕩Bkh&Ae@_vW ႼT @-a{8Y"cCX yUJQ ߁8̖2tU,K~hA_m1k ]uW2IP,J5s\9Xs&A ninv3Yzɹ3ʠ5w&P/9 8rc?G?(5{ș# c&ޒt__O7x:V~Z0I?v4繃uS魾aB(4ՁA[fn% \}_!qS /]k 0]ߣVjѵw "i=/MSUjf!\K\Ԓ~pkָ._C%(#sW'%й >3*MՓgPR)ket \zBBRFؗ(9vyJ MNTL< шdKj3a'Vp C@].KUJPnڌC:Et9>/sJ$|&EYȄcf4 1>Hs֕Y7<<;CLV{ο,M Jqv+Hkr3-*gmNA8!Ii_pbn s:=,OREnܜ1Xmo_<|X. e6=_y!M #r鑇UoPT%Q`߶D.8-v)OԤBs L2)i'":NaDۣXvgRSZzE*ۜ]St>q@?4FGRҍ}BLg&P# f AsGDkXM~Z(Wd|@_IT_ɉ72e=*N9~2pOƉ޿zzX+ zTupm5E,zg;hqD7IOwCi{+jn?O Yݩ,@Z Ou 7mQ&9AXb]!C <,EhHlƖQ];61*p[|эԗ;:dGLve O)rۿIDSNi`t QY(әO?n^APN/<Ov/ҷ7iQNX [^_561`"BQEr^xG~DFi.J=d,p04J(5Lx?lCX5A[ft;5M0PJeGr=؞EdwS=\#r?S@Cn/̬/Hc+sk]l{vK-2FLt;\;yI[b_ '΁Tm=1[1yPu,emhꁙ@(1.UԹsd O<`z ;<tIue[b[?{)UmI t+vib\wk!}5>Mx8o.U1g<PI Z5IbKb^]e=T]K Ų͂a-w̶A~XN1=ReؓLss= ͳYD"=8 )6բOIBwۄ;zX' 4T`>|ŰTÍʦvbQ&q l'D$D]@OS9j!ᤧ=7Fv`8f>! C^P#H.{Xzhu&v(z;߯Lp#R}~Uyt4)6~3r ?u"0/NdΤ`i䂹C̗^{IM ,|c꓅_[cY`$%zmޑm%yLp%^?>vq@D9Ӎ}Xc?!4JR6xe.~-xs7*k**&Nљ_] QZÖq`1%%QĴ*TM(>/ŪЍwsP,}`樠'_* cwtCL~C@nLz0_o$b`/Q,c xtؿ:zbZ!X,vHyՀL\b U %Zr Clnn@nD zz~dBE` qO1(ӎ_k|<U MGæpC?߾XBkkPԜ{G[B4:6m!o56R~ gR⚊R2HM{!uι䔘D=MM GG七 (}ql%:?wY tPL1p!6t3#EФf+.HGIon,Xc?ꯢ%Wcxxzp^KzQ= *-+4Q/⻫ `qblb XgG,ۍ.5wMQKB2Uuv2jTIꬅ" `&y8ʛe{y06R<9:* Z 'S4 ;ת E@Hv/&|HG wx $o7S ^4z&\3jk&\_lҙioŃˣ .~ĩ*{;7<JtGz)M Wj8~/}+Ppm K֌Qс *4 5Ɂk @; {o;厰bPMy/).t %OF6W;]惓Cߴ؂ Vsu`RP-asdOmfOWaPz&fWϣ!OeH/Ma*aQDMG8v4Acׅ"?,9Ni_|Ύu,̪g\M^#7ZF~& Ξ]ʘW67}2V-i&Uxt<5P^, '!@;d|֝Bu"/Ss>1s1þݙEbegΧOi/זP4f ~\A{1FBJB][%яr  Fn\BFj YL8#Vh:`22j 遫g$:޾P+7Fft~erv|F)nI+ Sd@Lw 94JލiNUl/`(=8"(Tqӿ}Vpd)4d 2vk-ohi,7gÙڗ iZ`% 6M9UvsLx9]σx"ٰo |~ SW 5 ;-<bݟɰ A>?}| ar{,u{ yY_8-=f~=|;1v~Ępjx4^kJ1W d5hJ-GRI3K]4[HynhVrwP*|=1@U/|Hl0$ͤ M I+@#ZzɆq(m4{Ў\S^E3eيh,ߛe^E]* ؋ʛ|54FSnib 󢌻UlN6U|$5LH<%4 g+r>8V LM>źG06Hύ_l :{ }U.޷5q,UwXYMԚU+ea^9PnYJ0ҟ {!2\m\~OJ"sgӄ3sFE9,VijyAŘ94:w(jxۣS.ki1wD%M^HMPZ:FYe'oTdA,Gy ld8!_>@5pLԖ}ڻ2n`85<-W"]R/ <я#γi"[ALQK+>2a ,ßZfCcI˝@CfS.zEh;16$fa y=b$K|'>'F/ Up*@o\aE1{ެ)yi)>}8GCwctu<wZѳ7i$ (m 6_6a -m嬛lvQ:tС`k4&aVUt ~,qd->[V 3Q^s5mxZslb:N?N~TH $\ L{5륨`kS澏g˱JC۔ޛqܽ)ڱwR@t?; Tu ç ТF\Gjew_{\x綧oOl9f*FJbN޴sʫl^ GRG 9t$ْX՗tS^e+#SkK.~2_c#%݊9b]F 04Q)+}ۻOsYq b|;7nSgYa5;zXS!(y:zc(07Q.(p" $J ERЭ2- j]~j;c䍂4X,/;lΈ\+$8b *c& NV1ǙͽuLDng-ǽWX.B"xdap/i.*MLŅxN rM U{hu5@0Ft,Thdp ."d)6}}{ ٯ0l祲Kb+;@?ÍJ:c_x!$@boܑ4XOuYffo^B)M"BUN=~_+6ߔ#C9l/j9`][+Y39pN*hih/ %aow X)t(g`mdvZ[I3Ԗaw)Q̪r5xq8kz>w" B+/+(XJ5mx7dD[8unX QRF3^}UJj󑼸n&;iF@/0WW K7%DDiSLcu6j7kǛ k);-cрF5a)d=z籠6eM Qvԥ:}4( nw ,CBHDedR;-ca\oCRhb0B\gD9җL9*̄nEPބ_X+*U(L_r‰ICAj 8^iQ;z$RnP s&V򎺑{ ؎AG%Aƨr7r]CDPO/C}|^ .Hf~`8h?y/mEBZdȍbF`.r0 (w.MހMD) +AkZ`&MV|Rn wgq!py9&_:6Qj(tk!& 'h0ȱ7C`jߺl`?;&1 bWDbxJuLڝKg'7{k ס (j5Fד749*kxsIq-gWn|G;IjPLL(fcL vwz- Ιjv(I7d0aFnX+^S3DH8{Y%dU"QwN"TH9Z4yG0DtzT#hǣ3fYӕL|<^,͋XHL\ ?αEݨ)Ql:z ShDː򧓔x"K u=H"duPP&-e.}QyJIM,+>m$uū;Xzr^ӡ#;[iy ͟ Ami׺ nIp^2Cx'_BӴ"Ջ 8WE(Sđq)0'.*Y%bp}Z K\aEkm),|B3[yWӶ{SGGex\.X ;p kN;2/-Kv>`C~q8Lΰ'dQ5LAA|{dˇjJ+gn%م +ƔÃ_ cm"LH< {90"쫉 YD WZVfX'Yeqbmg̞a!l.ԘpB< ]}5U @-].cXL՛n\(`J7ߌ((jas"'\}YCwiA>1b"KvydG1yͲO%ݲ+ =m,DR;3yt->#5(`u&x bz%+dV{vr#5śka)B#ig?䞉5bڅDu| LH,@0יu?t#vr ew4dl:o\p;x| `D+cߋyZ$MK?A_'ģ݈r0J|ea$:$}lgjG; s2n) CtF /۠F^ }vBc~ȷo=yLB *O}:Q*n$M Pgaټ̜ǣ4jmac5K9bm 3Zq_YJ2ږ v{GTүGwḱ71|0;Rʢ2s-A&=d^<Gr^RIp}V"ZymF)FeNQ {pLFY@B\C/k]H R-:һB 3x\eOZC f)tߵ\RLaaղ/{P;=9$#|kz ѢJ%02jJ٫,-auWN}%ĂH7)9Bh!v8&︾{DK(z/ $ӹ'`,u[㩿͊б<tn+aAi:S%EͳS(22eQ*mÎȜu& "& $NB: z# UW݉\}<`BTk|n^ɕ۬\{PQv%]d8ъf}aAxH(/W5[6]We"P9ExfViVP؇I`ס!>I3BۈQ -o&^HM3 jοΤ,NS[ҴW;X9D<\B"g^Kom3 /zqţ̼,ՉoA/}u_ؤ#%c/C =녰 `70JGwc~wDO;kۢ s0'1qU 4d4%lŷӍ*SK?Dfo\]v}3?Q,8p,TXʎU@x E_>j%a:é03# -0H1%TkF#rf9Eu" R'IxfTPJL@IvxqiFMޞQnFٳ#53hܐY~~tV[Y3_kDܱ>ܪqHi5j5aoA":Dn.u) z^ 6=w>ZU>s߇PϧK93`TjܵQ^#&@Ӳ=:p[B/>7 H B# ~ ![ֿ|#W=AZ :IZjGk'rPbkOLZ%tv+(@f!=LӐ伨Ի4#ƿ@䵫(_U +pLWְBɱlX} ]ˊ70#N  3CPBtr]y$:ҸCd_م?7~myMLo)!M{ Nƻq~fleX¹Räؐ VI(8yoW8 ;Vf1-Ȭi_D xZ U$9;+$u{a6j3<>I>+?Pn]aܙoZvYXJ+ˈ'o;B9Gp6LB9ȝR,S>Zݱe2ow'a3DpRB~K{q8-.%粗_ΒQko$팁2#_;Nmʅ_r?Z W`֍@e%~)vߞej0P?D:0k} b!i|W$nG(m]P=:8[?/ *TWYhdɻȳTIQ`SXwLc[ .KcMǷ?*XPowIHwjXDt (@[_qq̠IL9}6z[hVU![vew .Y/M|1V_x镠t)%dLS*rdU,FXLޝPmeѿ8f>@PqQJ6cGX5@<]zP؊.LĐ[ ~/NkI >TCK>" IĒ#vp8b\:V2fB7co鰎S ?'>qS^aRׁB,vcU&OC=>"e;Я+">E| l\O oUZPfGь,~q"C\w)2]L@})BRԀ$`TVHc$ǸnTf6C3_yuv۬@"[e* L{v>ZQ +^ˑN9RLuRcqN4RK[5pB*{W@.ư^b3|{ _er~ETa=LϷ,JoNA ÇPe,:}*HEB8OS2!D-~N O ^A& wYAx/ Rs/!cjy] NUhۛZtEkE2852v$9x7n0x) 䌌&ڝ)հlpc[ d^cױK 9XDP3(YJ/.оVL /"SCaŢu[r:uWAvUdkAXt[)秦\WGgp` }+U#;ygJiĈq 7T71/cciºgZٵ"&qDJE;HNqEb_y@{H? `8_ GJU])m]sI&PR)]Çw&gO='; L-$^%0АMɭH+]wvZW-HpSOsW? iy}~0_ӑes10e6Fځ|J&t@\t)5BR-Lo@;46wG4UךLcשECǝz0,E^m~l(ͭ$]VuG wq!]L0I6?KtK3A#xP! T #b+,&+QG πv_93)~Jz}ZBûmBȦ5GPϏ76 zENPJqb,Y{_Ȍ'%v^Vqp=zuy~Ұo/ZR(9T|jZ %DF7{#T#=\Lg~HY:qmN@>[sѽ2ΤcU%Oy1pɬVAox{{u9nYO\NfЊ2[[JݷPU8`9..Z0ל[lLu#S K@t :zTCeb}ֽ%Mp/t#HysL_`xyR{r%=lyFPF%2ɆdD,SiFaLS8}eC4KA3ԦH!\3HB'qL8 ÷+<6v+@ vԲ-vDMm'~3$Ļtzhn+aXm3tО#wUn|G!̂xgvb,4:}=CQVO(7 ^y4z6ɑ:uk?fidWE܏WvukE(DszLs= Z 1%-V҉@@ؓ?fɰ1?aXED'Rafvw.Sg)mTP@(ZɥoZ<#6?|1p9'uVTBs*[BmZTj X(aȲM 26I|R2DZJMGKn ?Y)c7Ds!<:[jRm#+qP)3=%-E$/itPGĂ7@RHpu70wQDS8t\r {aD 9|Q_vʎfqDkkoHU}m͞# `Rc3CkAټaX :eSJЪM- j`y2Y8U.qwy嵶lMּ$u}1xklw5mm6*u붋>;=.ggFA%KWA*lY"^}%¯"*ErDdiRkȻe h3EI{|@9<3aVIA1$G- uK@a7hGiV6#l"SX,~ǾK_]ǟa'"&My%9ǢXZnNZ|DZpsams( Ԛ^g3; ʐ ӹ5&5ռ(ߜ!'dNy,KRaL1v1,0 qCظ^0ƀb?QD3ڜ ʇڋ1N?9.֪P¢z} {]+K}AR1CV1ÓrKH T=sXnT\[p(D-u\ʞV7 HzkO\u(`/vZ cTFL-ժ??rt e6ƀ#Vf20t. coSNUJ;y_*:O-YiAz#o4^%Y_A@VIiFl +/n]0,FzwiyF]PzAC ,HE#S~2^j` `JwtCg2)1e|g%21IV{/? 6mحƒDkfL0XefJoۢbK0OcHN•xnw2+as߱]JA̗i09hX;Dy;`z-nT v!i %?ip>H U\ U/4;Hf-1ߓ*u/"tS^c4"b\5Z䥤ֹsyŠPkkfBH:J\[!l]EA5ad1yٕɞFi73JbW+pi}7xb\ TrHҏ D /fCĞAiFMf z󻄘,-\dI4W u Hf>/x9u1 Y'ǧZ(οKAf;fZh$(#\A,F{2q?(.蔋H͏%&yF|F[$ԭW6$c;K[V/yz`#TVP0ŸxuJ>Xp[>JNtFj$c#Qa'pHm0BksYlɨHm<0{-%7H10&z@땹:_es*_ް^b }+ |rZU#7ZWbEJ ZRl3؉t( ?bD[ 2/-g{W"P:-PIHQsG|X}aOJ(a kMP>Ips%nNn @"NJ ~)mgK8.6Gwۖo-=#}IY%8֠9c܆wHN6׺S.`(US߄p9S}a>:Y#Bk@Qvu0@](]|/s'k+@AʢKH6^AlpGKOɊ~v<^8%d6u6/ټ/r !܏FHpO(ZRhfm22 n-p 3D`<냔2'&Xu'8k=շ 73߂~'~cg=')TZaa r\@Xg~S{kjYgRO"M_.d;|72KLm;mVw_al*TDԲ-+6L88\f Łg!Joz%+¤bIx@h!R-.Is R\*eN/y7-_ &0'jo3T@|hG[]h"U @5> zussIC40yο8K061 V^(2 ]Xn7PQk `?RۙJF6Tlnmcdݨ {>/?n 3Li ^X 6l?.5thb_|ɫrXϽZ}0Q++=fuqd׊[̱˥4L*:/ ]pBN7o4onS1ֵXse ѽ|ۢؕNLl e2fӠ|lou.K}퍬7RcC7wcoBJV;%n;2 ô ,ZFQS2D^3 gq`xȇFAD9I .ØMW8?]fIї5"W2vI84g,\ikCQezdP_& ί勫#M.8O]1=P_Wҽ1x8ɧDE]t6#JZhԧYM 4اHwXf δ):CH=1ah he,'&՜E;r͜ -rB$\[NOp ? h+#+x8:% 16v(oBD ތ* y@hSÃ=DI✗Ug  dAp"\L9` |Z`{Y#WCQ(71qN@H~},pjņS$+{ 74 #)Ӊ`=OQE:;_υ`s9I&g~úr Zct& za;N7P7Aå#ch.GZAb#?$IkF7x L'lzl ؇mE|ӛ.sp">ʸ7N4}v}R-.@͆w4fVC\ p\5fFl]7ܕ>N,e62WbFsgG Kz1;8ECaq˝9 5F9SQe;M{ +6=}aC]Bk2C}쀂w(F8Z='5P@7?^[>qmD}Kbuu ܔ> c5XʤU+aC8Cg2%a<{wbŬ}0fTD#"rGj뙸SC*`1WKWEJq8bQf+z#69͑[Xǀ|g%qnϸVyo{Y{XY6K5;plVu&Zb4P+Ucϝ$?je_^K#wDtC`% Q}GtSMkN7eܙU퓇TZ;a؈6^7 N3r9dRGa @ ?]YR ^9^6V`QL+|/4#wF3M2}X+ges4%SCw-^ϩQ 'q \vlL S,éP̵ NUNT"0D yxp3JR,/eR0p~9s9Õ(s( "KP4UfА,4`5мs'R4Jh n0)PJ16g;UYeH&0fE /"wxʘ. Ny yowɳ:äoWq>RiBeK|tj% Saev^U_#D+ChH ~_ Ⱦ\D/qF*: -&юpS5lgqs-bPutB~* Qthbpah oŠD %ިpZOm# Bɢmx)YL-evC$DBtdB1Vi+៬JW8m)t0)Newy%g ó T.΀>4-UhvqWi0b@䳡ꬬ/ݨw|hN$V:K)IEPNdyIq`TˉA OWzٓL*o.[h?Ū*NY|MdZ "=g"&[b8*m %f앹.JZXClη]p(v'NeWapkTZ`t@¡=d-D!u&n۴聠@=O}]Mȃ$(%)q.Bw2ѹC+2TkP\;b,m{ˑ8Z RE|19,mC097b;:[}&M}?RBReJbh͞l!RUE;EV"p)ް)nq9zYAW}&| UsmE8K7wW+OW.vԪUbӭT۠Vϥ I/@PO09I6 sVw}Jo;Ğe"EFpb7 ds_3-$ 1̆-I_$w<( _T6ʙ䘢2q֎+`M3נv|$ Dn+Oj^»O/6b46VHmH~{Sw1׷vmhmDkB4M_&$Ƶ) L)wYi(bI?3iz* k^)I#^Z1K" CUej|wkĥr' [#+^ 7-ck,Xth-@i{7YUB_^qsw;y]Ls>H ;R.ދFix]#ʺR%iv^ݸ0+2kcY$#׾J\DMR[/+" ưyE*E&S $ٯmD|WC5]FzLa0Z;Q%.6 *)?wzRVЁW#R"É._/JwPY^kt1l0bOJ0 J_ )7-90J{^g^.n`>4J9h<1R\UA2]CU ߂tlLK"W4199<VTIޯrFyc}Bʱ4¨녭U BrVo\)>G'_؋)%\Ƚʣ(~Ycc҄\N>АG|rѵ`s*‹h\?hTT=HB6M ֌ eL=5!˽;6@wн+Հ'eg0߲)v8CWL9#BY`|(6҇G_vTjA[ԳK$^HEVi' ڿK._bSP{;>#656E;JW )eo bc ]Y8m?8mI",e&r!wrJ("L՜w09܂T@Ț@9.ȡNJ\pdOÔǜ 媡GwvFo$aHOʱ~&jH xiT.&~#Rjh{`X r6Nڳ%8(aEZɣOBVҮ.f-EKc R ӳOL֔r"/V㠓D}}FeԸq?"\Oۨ_]xZ̀jɬ;:YǠ-*7:Fr4esmBIx\NzxKSs6:4dҧ{%>U4kS h\^}jluh ~]A vyJOW`YQ_-^gz`Q$V_Ǹuȯ"{ PՕC`~pzGd4؁UcD^׭+Tӡ5L5#7;f.,:C'N*: &^w ^̹Kg"u$(gx;7rjdǒ)&Nt DH tpk% oiH|ih!#${A%3?c((BBpl;T<؄._OBݰEc\g.w>NT^MY6~\v;]{ۋ|Y*\Pzcc'l_]GY 쎀橻928dRm# 2־sȌ aZ;Ԛͮ8j=ޟb:ӧ4 ũlHz2I<%өfMsoW  Z.^!P\.#x>U1- ]4)nH*k< ($/Y;^ 2iq"vb\mPʜߏ5ZG=%r np!|Iݏ+BP7'R+V~[RV[M)ˍו1@!Xߖ \x٭=#I.}bcEkLMe 8.~7ХsZcj0z,fpOjnY-d.G^3/OߵKr9jH[>6YNM7s븐Nf|8 31#!MyR)vWz@g__+wuJ9nzKr!auQO΅? @R5A{z -:,D\L&4 r=C"±RN}g*A rQضEp #it2b|㲍O*N!Fns)?RO%twp?*d6'lq}H2 AM7o֛oKa޸_ѝ $DE֬! ,g y! E6")J7,!ˁg)Thxr;,郘X~ԡV$ 8;[k;wD 49;sSJżNǩqWH|fgy++MTsz1配9Pjd1) !CZH, 8ݻ̳ th4 C{v,ߙL}s-N $ ;wU?K-~v'Fu{\bk;7cXV=摃m YFpLgC2L˱?ertd,\Pj \dz(a =p&4=>ȯ ɵJf]@Mt2LD2TLZZ?={;yM]*J7T5J6v/l?:GqOjl)lK<SXwDnOTQcZj4##6u7qf.Cgс6~EB;-š© ں X(" ҇ 4R *vr$jE_7 #7x1{ktzaoT˜S N94ݍ$ 4P+*@Q#DMT;%  )/?HJ{;0 Qn*'MR,`*`\p_eqov ̳DH_z!gLJZio29+-筘eyOpDp`G5 g\:Mmժ[)>ASX7` 8ǔ>zPn&6 `huԴZӓųuki s(0(-A6h{y>bu]֧wScJQL$Mm`ơzԀI~,?kZa- ($ycd=m#k%fϰ>pR%4~H*N%,eN(:$Yf`lP![k}4pnV!}ÁA$.(iwu.bIE PcOh_F1i* ag= d%@CI dݬB6n9 W+e$/1ۡj`m^eGv~j1mdSyؿ L*5IwbN=4L$چFeqk+VEoVxLe[C9DMW^ldWkɀ4.0݈xs[\$*\ڜMa)Ǭw~}oᴥ Xl TWJm@ÒlJsN"Ȳn ( Q r 񃏄Rl-ܰ _g鴜@P #AE-gF|M.j5 hDhUk^ DeHh- >}St}  a6Omk8 "'WĔ ' g ~kvy$W~`MR4?wيsͮ @Baf3k,~-HiנDgvJw2(Y߶.\niDXPZF̵ ( Rχ% A90+C3%AסhlaAH9 21TSppGB6?5`^uf]D,JZc40#Q̡965L6 CXI2[QzoT9ӂCi'~VE3#3ņAˊ1dk^p{NuUj\DEw8u#QM\7Vզ;e-fX r%W.z^Ht(P6~ێ溛NDa!+V_oW-I[gkY!e ^Z9ZzLOC9pIl/LKNxϳӎJ0C.%[; t십'D.:Ǥr+4b?uɶ Un-&O"8Tm_穫kb%}$gh!'tK[6 " DUlrssf̻vdCKoDvx9E1]j aGs819 ym܉&ET"]=;2VWE6D{r]#l 쩸+ 0%cV^mN?Ddz:k(*k/k:0Av̿n+4Z{CC/p/{-`f$ %TvFLtHԡ=语{<bU N8<5 F47|=bUGLX;Ns^'oُe140ɑy(gs^hYDI*/6'k:Z SË6.xGb[RQ*ǿyS׌$~fs]4y)9eX]yYXqoi*DmSc#вWbЉ9>vfp85O 3"\£}шGX צ\9>~}Ff?9?-5~;!HPL6`FLpiط*?*Cs%n<\ -Xh&V`ST6R^N\ѯ/HUuѠs '@bϠA0T)6VW!*ۤ!DjK3)?EuçG !`'$ o$28k# +هi|x + 8]FO?1fէ;&>"֭#JHcfdaR?(OoP._5HAn5S?j-̆O aWxZ ЎbKd6z жV:P=^S2\^_یC5P4f;$7((:9j9}Ҍd?5|9潷}k[< NȺqҁ kAv)QV5(T_D U zEo!ԯ`Mg=fEcX=Ƥj>IDc@qp+4*Df9Id#) 8V\ : 6s1Ͼ\ #;JɎS+Ϣ"<D%Wp0aVZ|"jyS \ pEr}tٱ/ri}ݩbhk{NV_TU`BC%V1.wD:a)4 ?9¤3!J eo3 :WkPN/MzLpZo_:\/)jyV R ب>&y7pc|`0]-.OTFͪ^!e "{X_cL:~'Ԁ:T(}v a( \ߛbC .n|1i S]\t8HrKAkzoNSA!׽ZͲɟx=U./һy{&&m3M+JZnO& xaP:js\׵'s8-?Gۛc Y%AD E,[ͪiSf#ښr\s20glϏCYF[?-`C (̳ Ɂ'D}m^~G&W 'Mn3v8GqJXmkKp3nٓNs߭>O.|PB,6! w97.5a]踾=xTFgq@@yQ٢UuSz#__C^ DC[w2b f#Hz]޳ܕ2abk'"9?ۍ44P E/]+cr \e/ B?Gul]R]}w]9* (-L3(4t#ma9J So\:Mٞ'$zNCNGC \<(Md@&zJSs05"uo,P/ij6u6WVa"_< @>5^:CW1AgzGvÿ-Y}:@^[cp5J@hX2[^~&T!@w'OCiHQ+% ~;> [=LcbAŢx_(9sfA)8LL|SD#)jȻ10rڮ+8F_tK?:Dbµ Mdd ˽,E`Q@7 2|2wDv1G9tOxW#?}Yi:5q73;Fy!(k8Ee;eWd#Kvx#,7%F܄l\Q]ؿO;JWwKKM#]j^pnC6C-&ZsGAxź/KJ֘(I/Z DHCYGl\H 7fT)W*֐|vPkmk]o*w6ѢePpijR1|i{=#ϼt:fմ8|c?VJqλy)Qj'޹+x$yz W&! Tq]SqLiV8_|bcڕ9bZ{pCPoz]j,G uِ?F8=4Jʃ&bϘ)@el瓕$ymw:S'St'V /w3=2EuVA˲EvQ5,cES9PHx)| "%2mpۼ86#bjZyˣDze^L_x99W̓.O~@{yWQEosIt7uy 5RrIVUcJB@(UmOa<ؑrƈiTuTOt^\z@]*!Kp/t=脭B<*z C%mӵ;T5PF< *L\.=!KuGH0IypJcv8Ez~kYiyC5_Sã Peuޞ73`wc?pѽP - gպ{)en}n"oa~Ckfqbf:uL &HĶh 4O*Kf,P 6 *>=}ݑ2HGsJGt;ʓ!%)c>34F!Q8#Qfm1ZۚQf4D*NOHfAif/L)ڱ}aOqWT&%FdZ>1DˤH9-Z2z\ )Eü[k ,!`쉪8ޮV~ 7C/ҜN ,Mql6~o1L2Qt9"rM:O {T\0RKpOB7Kjhǚ߽͹*9<2-)O)"<!ċo lV6qp2`QZ9sԢ}/`;2C rF^v{6աe]w_mE_=GIJ{6E4cٕa_(u%w9^ByMԢCm)ALMiK},3ƛEN[vǴKrDWR_ uxH@ rؓ\ktYЎGo*54cs{SMF==_18^ky#2(aWr򺻵ThD u,"*x;ъyIJޖtzM+-aGO68;4H0C_(2xVvЕ r5;ͬ@xɴu+'(k3dBDm 6XEYѓra#?1rr*?vDa$r-ˈB2G8v t}$FJ7fvˎX <]4M0 eD'KENGj<% o1];=ڔ9fmz#QLi=ե1'qȍD?xT 2t_cKeҒKFNmCq$`=SnjAI= E`j >-@`fsԠ@|wV>7 9 ʰ6&lļ9Ny?5(ռ", en ?4)Fz.ɠ92A<=ޫ 3./j@WcmtOx[=L55LĊL؍@[#9@'43_(#&#ھ:g॥t>0#Ǿme9)p\ kR LPkЍv6^/y@=OQxDv.>EhՙoQV0B{#7so款.ŕ#($7|gc "s~˽M^Σ\vY ChMUH'F;%VPR-]baaX%; 2gNj*+ `O@i=,5 ]ҋΣy5YN񦆭ǻ<\Wsj"tk.sb%!iJZ{b1w7O m< ٍ+#f ) X*6֌/ja:?P̍ŘjP<>ۆ1-EuROq_jM2] C:qYby')k2B(͟~L@8@ܜSľO+mlv^.g6~),:5{Q8TrF8x6ɂ4OMO^6R3]k:H;l933oV'F;} :n߇;Gy{.<7Z6px mڀ֜.%Rф[CMX[YY.V@GRWYAӽo=Fx5Tbߨڇ<̗{N/eEj#{??)i/h[l{U$)g hGVug̢bu<Ir1˺P}#zA. e[.y&uHҐpf"Jfe?bX؊V2jȡ0_t>bƗ\ ǹy qN~CMlB!;b2' _o U6C5=S"{709dt#uod1)WCbh#op)"B8qmA:U֎|OpS|y:DnC+r Ş3^^ŐIF#w-J{ZtAa™{"\{8eO! JKB2QOl#169Sp@Q ["}NNt Ʈ5/uyGZѝ0лht1UʂG qPtU+Qmv(A +(ߦh4֘[X+aq $I]5 ['pqׁ':poo|}Xa.Fw~41b% V5~EKhג%n ק}iB(<[ɔ錎SC9uEw掃J6Ԡ畯%C& 2rqm$#9hE\j.%+E`E͜x ngF c* ҁ >;#޶QR,k ðh?Ueb > Uo{cis$3U/NJ>u‰& P#TZAuBv$ Vs 6OZ*d( $i&yDs0!Qʚ"Qm=sYDDL4z=1倐=(o.VsrG7LeʾkᐧBӑ pcd~{յN5wr 9M:)wdf`dGp{­-}9MV㱹M+Q` N0_=6XHH3Ahڠ,`z%L(5ʄP+6Wȏz|O'Bht8Mn:Ɨ9*@V8k\`[Ϗ0jz\H8=7NEqDS9!J upk_4ή,V2ڧqxdiԵ(= G 8wn6]X~,IH;ע޾?6_EM2a~\Ob7 CȢF¯GG_=BKJwl0RQ^Fmu5ӨV_e_4>rIQB_h=HEhwn؎(vkFY {qI؏6#tB 4s* Z2PI ߻Ar D|Qפ%YDdؕ28lJjJCݥxj?*"=͑>&*Xo ZWJ^*"! 0^Kǘ_db*!SۧU}w}*{ͥp)NVZTOUNjB˛H+J%2NS=/h[N UDžrR* >%ki<$J&jxyHX4J.曤Eħ} Č-Pmto vb'9D"ɩ OG"a,@gh3JR6i?CE2UeЯąb%y.e  <]OkԚyȋBjO#Ʈ3\.#S&G_AVlF,GOt]Ѷ>Y4w)ʎ̖_ ?p"؈h~`DYeϛ4ݑ.*ﺤܷZET vq}Z=@,w4>FGd+D|^?J'^])`b| PUKwB!B*yܘ́P PW܁InMzm(kںnG#rL3h+.HygTe Ol| b,"mKa|N8f?[ɻ'4NB+, zqEd1M^(m%iY7hE&-FxlY0K$%0sA\Y^+T>Q;x *zl0jȄ^FڸO!0 |0:Θyz{5SWE\Uo hU@U6_oH~X B98L^; J_"誶Jo vdɆ2<"TմLȗ9ɜOsZ[jss{ty%k|'] Q-~5)28 beH(5 "2 {9 8gX|Aِש  וc4/YLG#e[} KxhGJ>#cÉoxv1Q;K&kVzeֵL15sWtsm,XݳJv8ڹ`F$xHrRaۏ6\@Vqj}P3(sC?ހO1θ&&bI]_FN/d) m |dLZф1w|wc+9z,Y V #BE^2.4Љ ^j М6jaPs`DqǓ1Rsce eI˷qp Sa d@O_ޥ+#$(vpG_޾q{=ܓQSf•ݛ4`hl>>dC"!_Z-3۳Sr3PΘՃgoqE?^Q O HBVWR@,'DQdL,O򹈛Pr8+ʁ@ :9$~;^ 8. <x~M4$/B#ݘx( Wh'umdI/R9ҚL?L%gr,R|k!'ytRN Mpw> GՃRc ΉK_a.T揫5"ʲ|OA')$ҤtAr}voO[dc I+ p[^3~q0>jg<E4҅6Dz'y;[y!U6*YL]x`ۭsHq(ԣ^:%8 wsY\^AMg:H!)i $(k7*qKzډF`~ܰi\>6LSeAgg7ˠFg;RN Nb_U-6\mS{EՕm{j\̀Cy8wɹ}xݾsbkH9&[4@.ަ .jDm3OLnr݈h̢:*wݴ~D}ҎBN+]S<R`^zbB|"Ҳ-t`*Hrfk`䀡rɺdvV OAnh+GZ.A P_݌ѻ\wzHSVp:m7|ޏK. @5E3݄'_]@6^b~s}#$3mVپ/Gű`j38*NQl.\i,MW)gAIZEfM\ Zw`JwTC~i?@wBK42 Szd- Vx4 ѶTK?-94N:NQ}#"+6FPZT(ά R}jMm@BޒD; 2NWm"LFC߳ _7<ԭ3]#v;n5)m=ͱ3 thՅH1 ?ȯpT8ۢv5or&D?+$0j!s& %s?K!寖c#2{mE*^`^es 4+@@z5ηk*HpI߱S2syn:Xrv>&-(>A)USe K-#wXE:9?%AvRqЯ[):]Tc4LeX+pS~SKdΔ~R4 )QD*(p/鎛|4 ה !g<i5LԲzWӦ~8\?wX2C$b:ۻ(<^v+ЃxsOq 9S mq,( yy'6Ca"W Hu <%^YHԥu > n+,|_ߖdC;'̖&ͷ(w| 1 ("pʼgЩ  %ϞF1lTIYW@X_xO<㱉K2C4]ؐ!Yum-~pU+֯)u=ܞZӸ4'2;BP>zrS٣,@ZTǚ%}"+x'ٜY5W)km>9l.oʶhH#vdcʋfk*D3S'/VOib­aaC(Wڃ=h5f&SM_)kqO7m"+4Ev5RMڭEyF00/U*,GU2s9ZqK_ 0Fbhb _ 1ɿ碄B Gsn\)OFųGuC`C0W~I ;wcyV3s?lG\WwIbM+!bMIx2w;7;V0}OR~#vtŤz*yV3zK[MPh]BWf;yF-\9=D_ Ӿ> F`\2 3kmo&\,NbA IU9+w8ǀ>U9x @_RbChnTz FJ5Z9~ݵ1k>l_.@RXn!〩{)wui`P#V}țlӳ Ldq~7]-t? O0Dy ~:7taz[&E'o[!__w1ݽI&"u >@(@buH "Z` o!;&c4 VbSq /nIllW嘸V p^ %KCFeiƫ_a(Tk'%_Lpu-#d[2 Cq?5ʒojM ,S!Wz5`*`$cZYΘT_55.1l^Ps6dlHԈ?]o&Rǯ` L+n oࢮ|.>%ՍA[Q쓘zZfQ`{%,@Y"ʋcnnķ,uz]o5,ovH7FI9 RSɮz&ΦOp҃MSfJrZy(؋׃=NbN-\ ?AޫR*6X@i$#C&lT!IvȷtA'yEr'(->\x܄d9Qhh Ϝ'' nD[͹\M]J0^Ag ƟˢZw:@H u,q?ٿg|^3\ҵ+j6N~84JhE{ȿZNfӱi43'ю g^cZEYҥKK !~zG;>kxPE{"/N(]ui:} q |e̩~ 㱪}m$WOsZ/xGρ]SnĿQ׏^Cħ_qsSJwMMv 8:3.,۬į||u.^F&BG;m,Ǝ9'`WOR/f鈭00f, %K;//?S5ʣS5;ՏW[S\n-'ό] .y6WZIJϜсWfphKfV+@"75-a4}lrܓև(Ȝ>cڿ ~df2o +4Ydr4(bp#O uN4nQPëEWjQq`NXJ)?ILOek I*u@";3=,vRKΙNkY` ֩iW1r:1U}R,I-@rASas7sݍU.RUfu6pb鰗AB}밐|>b^CHPuǫatUMltuCżX[8Jj]BZXw7vDW?HF6q:?MzؽJy+J8Q}(Fq>6F5:&J22Ga>=s[um 3 'A&-AgocQz} j˩YUWሯV,Y$K,͋6^-{Nph;g!?}m%C Y"ol‚:nOS'Jk:{m,h8Bd 4l8)DJT $7 yO3o#fZO4-}?Ao8h.RɇЮ{ VY&5fؕ6 D+ENm4GP $fk$zS2ut2J z;l)i,4&W?'fB3_mo ,y}}Ϋ$ᱢIa&1ߛ7{4k`?&c@, 黗0pU3YG}YQRnk\t´\^#An:Ī"yW@>wP&{<Mnaxj"3@25G zkJ?+NzF8vbC\9{=kfq[D_~mv9$P JP>(].H覌Z@lpK0 &S jw*0ciĐRlټrlA}*C"l9lFU\2~U1Nc|NCd=" 3d ¸HqÛ(Wq݂Vn1 / C~ֽlӺpq*o&%֤A`L'أz(2ۂS9- 򊱈k7?lqv `"ņtlK0CPV.I V^Ą7 WWx^M4YIQWYW.Aᄼ(OP23-y:1ÑH-GGJJtCi<<QKX fv#d"TM'x1Uw_:6[5wr""+Sԡ TV/*T1q762L SdԸqEu)ig'6TȦq&÷!+c۔Gu-2`j&Y˧Bϝ5mĄ. R|"[{=v= @l*Β:NN8%3AEX8<\n 94w)@EG5>͉3:~$dKC#PdXTD b"9@PiEbo8b H}ߋ!qRxƦ >0`9*(cO6i8?.JAB3W[A۬7VG981CTަM(ˢ|7`QUԿGDTIIp40 7,jlXcb?GO!EUlE鄐+R$;Yw5jCǩ65w5'{~;smz̝r"kLJ $Vԕ5e`9M[G=췪Aðl$*b)u]fإܴIbbֻG-\ ]6?B8p56´WQD= SWj+:$/sF4➑U+a: v(sɢmhN?zA ;fJ؞lD?Gh! ii;@/t贄u~km݅b] )QTh"Z`qz`$Xl,a4s2).r!cf= a;{,&y4EY!?ؑ!+~`z1m}`FJȏ .͒ߴT"Fp7ZstehTfC9c 0! GG@9mqa~מҠ#[ 8?K8 +ݥZ+Ȋ&*K^:85F75Tqv.9i T)'qt,Z{|)QԿ*=ܠA'/#ss`:B?ywKۋeɊ̬(x%pb9=K)H?~vUIb֎ʩ5ɀ mCa\b~.!z(\UOt߭~șEeܴJF;%AOuə]S7h65fr|i,5v!!teؒ\{a&2y̌,0~ikq_փ6ycAlCjcwM;>%_ƭSmʍ/55/ &Z-hC niJi$"^yd`viu^3O'U!RD֯hZҭ{^q KXm'(NP"TS)ZmHwVmK2[ ͅ%5"}!_ !ػG9K7!_jkr4i}K\TpՏY1C3@t2ʦIE6 'F@+~N#Ms~iE,+>nv먙YҐp Ѹ^L4 0Qшjᆞ,;alyXՃBrzPmXZP>_H^Q&DL9zM j_F.j5WpfC+k{zn6(=,-5 D~u4(BY9#5D)0U@%\z XϧB9n#Zmm+^3B<$a,&k߀jMc q2Y"ShY /ˈռk?[Ea{49^ VMf6?EH GghI d`5uz {C>PaPƹ20Z?`!ZWi=JDfe.heP!oH7VWPsH*?Eܰ8ݿc%6Ћ#;ܨrLj+*? 6r]ޕ2˅[RVn54W-L 츤GFdg 'Qe?+K4ȖZ--r6 2"hqR.9,3 A˃7p("ˠS4/jJ u`,e۞5$p]"l_33ZW;Zcw/_x>&(1YgJZ{T(>B%;?7=#yCk*f9$U+.&0k;!=flkw w5Ed'"k#Cx;M=$ƷK|rz"_sх3RahKsƣM_xM+7B0jA]&5TW*3" 5P$l qN(lT60Cl:Zk!e3>0\"7= nQ,duܺ=M;:!fA[B$[ ='ߕFib4\z#G/h[_Zi! WI9߇q<~˷#mɆIᰒuG^Kx6DӱSbvʳ D %@oeb7%;7ק{i=0n!J .w Ns5ҋ-6>´Ù)ۛ(ff뒶=cG/ׯi/sC!7Ki!uzНLc̤(1>34bPz=5#P^J':@|该j >F-Ԃ cVc2~#hn8}e35پ3uTc;@8.4l}bnMeIU< Cƥ28ﶃ_Pvgh?7fMXr賕_6YJӑ@E9kj}dCs^NQ Me/,جZ !ZU ~ R7;}l AJv,EF_;3"{GQhԇZ% sBBR0Ľ2j/]Vy՘%D[6%9<]ʪT#D\T"S`n9@,Q!!aOPnjh*o(NvA_wVm>]8ifTT9bNHٵqy9jLʥf!Wʎ8Xz=ʰ"T2b4HgIK*m}\g<qXN~9.ЖqV CoJb$Xa +s3Oq_ Sa/t p7{6)"xqז "Sߒ+j$DB~E9̱-"14wB iu |o9sd;3@tKxʦtzDrdM!AَxBKQ/׫Ղ搯DsQhPKwBa[w{s>f^rԜʐߎ5*Z\ [G[klB&ڷq^]t l|2n@5AkZ-OhYPLإ1 o%;B%t>ya0WNERudnjc)FTZ?qO.ttX4UN,' /e}iQ:|c9ͱpՓf}f{g~j9PS_7,B2#F,+I¥'WAK" oy6lYd%hMMk`$Tфrd`/k%m~7oբ&sʇyAGN9jsMQRJiMs$f&T(,og8.A4&eKGF}ihlgL_†WԖh:i̩H("&kT{Wo:n]uE64goq~0(0Sn4_bVt%fg̙]iIBws ٻH?ƅa6Pwю4ɣԪ(\M' QBX oţJƆۑ3zᜌū?)m7Upԛጬ̖.-?Rbl|rD/gj`D ę rJ31c?q; kIOS]!ZrUr1EoR=^?l֙ ̤WlL<9ZHx"S-"r@RY7ɝN`R=WQ$Sn@u!CJ?SwDLn f(2 \tOuֲ/r= i[C~#ɐh%mV#" A* a^j FLBCC] }=i+2Pxt-nYͬBܿ!ȧc@7 k_OOh Ab^!)hϠe33Dq8\$Z"%[1##vᷯ>ѡȴg֟ U9~` S0#?k=.-yxIOL8TM#4b!YFhOft"801nt\+ԭf~u3;e^;NqrP+G~sSw×K7aVxEeGh73N(t&d{åco`KjGPE]-BG(!jQtXRPf, '7j" >U] #E[[yVmߌX~Crμj.KXc`"yrY^'`A=1/(R|{EmeàCІkukG75L\{2ӞbW#dK5gOnOoriʞ|ifo(Dmߍ?YZ}H9yo¥>y=l1i} |[)- L[];DuJ)z:MRfQ9>} ġr']#K 6mnֳ奼3v@ LI#깯0Xm<4c޸`rwBR`zd&4Ŭv,"`zhuV2+o)PyS\z(/+yZL(҅ ^S AAJ# m}4qK&bkCV|ZĞ$X"|=g[ l߂OR="@W8*? ᜜ E"XH)Y]kSQw\">̍돹Jw`fm/QD|VefV'|*]T_m9opʠQB7{tA$Ѱ|(ՀCXnl\5zW[V"R? ;#o zqkHH ŗ1_˥zz9D9AdMO(zԆ`G(L)Yث=V80QU1B/L݈;i5;}<`m٫OISgELl""=6̊t(,;Z?E[% ĮꝻ.i pN&!MxR0_MO)/ rw}'frVAxMiU9 tGJ -CW>B M 藾/Eܑ3䫒@N)k;G-„Ը#W2mSnVh]+zt7~-Jxwyfܵ6tbݳ|08Pdtl77JzKxf-Ќ;Cƍd(fE&D7[*w0l+,fDi5Gi B_B\[}8|C x͖À\WB[ <:H(2rK>|uht%E:#vcdKR$דV&9U|GIʺA/ÅEt,3q+{O79"ۖ>s?_d^yQ Z.I~l䎶U=j82◁Ӈ3/6Z+:Yڑhi9&PDc-n05&܍\Vl_fwfn!=". >RJk!2Ȟ֯eҀ/S. AU1[onf$~RC )<@:kᄯ_კ|WV%S=O3Mڭ -|BɺQp;S  T&vqbޝhJ|( ('gM8M՛Q':KtToX-24 cE|e Bgc-D$U[Ҏ>҄+5EZd:Ʋ\VyuKyx97K Hz,a@e:Tt;"H+"U=gB$0&S<@!fn ¼ٚ $ w #?86ePSiJ괗բ p 6G''8DC%YJtMnEYH7}^fM{#OmG4ϊ>*2BBgeeOe`DŦ6, e<&4{KIB5uIaw;I~m9MuvB>UA ~Q6A=F_Nc4Lz (vPAu_ѢdwcArX5N6A?Q@rDN0\8t‰rO7ҍFq TlBԕԲU8LnךڍlQp_7ٽ%JӐ$S Oɻ(bJ(c~Yn$w7^ .8Kk)4R=Bł-/TZ(Zч&[p~iL^*x(_{W}W-6]϶^xzJ휗?R,bّk65!mnQ&_! ve?@DHN|iF5i2OX@?Y{zj#ۥv,RT T;̕A[A:/G5{e8|1%viZ Ak>]9enzXJTiڛQF\I&F3Ut!tUΧ۠KV%|{7n R,,6(ly}78}d*]Q}F*z=*sWW,m897)0>Fv;]oh,L)quCW:m*(i2{CX_P#Ue{B裧t vv0: ,;-RgᶟYWONĢynQK kg@}KOA]0{ 56FR{4ϪC`Ÿ\kE⁾IMvBKq},O}¹ T LR温؟1L# ##+T&x.I[ 5ͩSc1͕NZ~߷c1Adxcw@rudꪐEOZF2s(r ڪz=o 4;ngݥ_KF r+igBqRT_͝ޟءM2A9S]HBm!hª t'WU xvy@{ -llTqda(z|v}-0߇go8r⽥|6)k?.bh"86>Z^C?XI %5<9/!$Gڎc3*wuk-.>+Fq#Qe\ڱcQڐeA J+B۸Ţ[Pkekl-THcma[ca;(\J骼eiR;zaOZ^$ު&~zTk xkcM̪чqX͟O6A#ހƦ3RD Z"vtm: ݏw27 J="*>t"mӶ3˜xN>kD?1ֻ dܞxy@*ީQ+?ʗqՐE`?7u q$etnF0YXm'j/N߆kd|,_fDD,.dFQiQfIyI4b ^(J+yg~oӔZ4BcØr`[Qx[A^XEB`v>&tm ]ʸ& m1YT71|X#.8 };N:~ƍn[O59^_0Mf-ro n'2g%C4tPQX %N3,B$߇fB#lVs1zyâcs:[QWWR/M)Z*֘˿"#`xOf@W 7kO' pw %Y[ tZ;@[GzHG> n=ZƑˌ̣Jn_r (~?uNx~+(ҌO5V_㕻-7"ru5ɸ1 YٳDzA.<j"Gi~6H6jy/ [O=$=VrPק01Ր!vk)ƣy$ڍPa]D7Rxg"e)`j @i2-0V6?1r4k 㛤A ԸaUM:Ts#|gD) 0o.\J즬 *'2jr "}qlM;V6oş60 ,R`WLvh裲ok:׹3}B2;8bnp t.j]r+dHBQ9![rH=Χv#4Ph@Hbp-f-Ba H&un$^FAf_|jYdb 1¿v(-X@g_bhם;Wz۝WObeR߿L<솖Ku;FBX$8n2fP0(ꛀK1<&'z9 jNXq3X;r&0GȟVZIMy'tsynr~@ @;^҃7эuD4Vg#WӮGN A7hIxSǿt՛39QOCk{'۩N8F 0I<#uPFYӝ dN:fEԹL.Q!!ϿDĞ[ݿpA>"V۷++)R꧄hTPf .Q_ºظؓbCx0z>S?jCڵ m32J)U|aW߅TVSɍyV%'K7#ޚ(e;bplySby !cO8Y'-7rQWv|A!_je4\D*m ѳnGl#ṧOtty"^eibUѧg~qH[q-?vt ~eu0>*R"Ka@>t-#v (;ҵݗ6:qRp$f\}|R?&0n:T|Dr!@@ΉGU/ѿē%QymǟO& ,~RM"*4*\Kcd2􌽩IjCeN!dc`G-V!^)Bǫxvtlӵb9 xY+n<9v#BZSZ0W[ԑnO d9A|1t. jk\C6=k, \OE5v'P+bX{*E.ѣTM_E陀3 VapRl4K`0M$$ڏX(iH߁1޷T9t )i7`Yk1Zc}$4JQ)liSԸP{6إnO5ό ¥|SzXp?|{I'K$_b\-/";4¤ i 6]R~ɱ6v ;w%5rN<|:拶*gndbOlhaɾ~u<x Ϻ4Aĵ!zџM(.:AY3G?h8P6fEDŵ!יo"{GGjj~):N =52㜍!Qcd0/a{%p@{\l>d~i! zu\LA\͊ RUWئ4L\=.\]eIpd]WvCuavg(ŷCeEd)[HoYqS~]9Q1n5oWL.'Cz#m /YA':] #}6>~蔵u N;K:%A+gгCi}XθN2Me6lc|yK3)q[y/4]TŦcE[hٳ@xh!] 3^XboH`/,׫0\V]) s(F`) q+ea%y]9fv;G8f^"_yG(0՗ŹYTzЊ2[QmU{(C,Y<wf22 tN @D{=޸$T=Ohh@W* sZo8R҇nC=h³ԹwppmhRVh/R6oW#r38+(":%*>a?_K\E W3`JW1Px$VIC^3@O:6P}t hD):ܦfsjx j41d?sV (ꁥ#i ӎrI)n'z eiN+~N"1Exh^d)pWq`Eq!VX`1BB[Ih=1oYU~SO/^)_0~!INLRlߑ KR ~$p96X%ő̀ݳ^8 17t^tQ_mŐ 95QdgTm~F 3PiP_t=?wPMqͤ2fI$$>*btg&2wӄE]FLZ @u.|e%>ϟ ܃95-ט,' Aȳ??`S,e TkY-Ё3,w28:ʩ~|lȗzB5 6t|`|k|;6o1Ykg+]ޱ 7}kGp. W9 &ܷ%@wAkcq@2$KEːvi#&D8 َ⮗{%8{\Aqv۹”w#{.Nx֨*P+frݼ2> C &V#tφ<}(&ѵuq2oXVix y`~\w7hR_TȷMsTW\p'iQk8Bn<'L_Ui gQ8{$J|T(9#2d*W]ΐE5 ~&T?ߛC]Q7>rBT&/ ԀS)= mK.Pݵȱfhr &ֶ=t#da;[((`S=#&1-SrJs }ŽcD^pjb@ 0L\3Zݦ+i!W2vfӮ&1>9MFSf U4U謄fA[w~MiCɎh{c44ąJ;u;E"L%79?n3E%L]~o6X8,N<7$xQXF{[sS=HWf38:k '[e^[q)Z}.×ڽǀ_^|q 2K}{LXՎzC}#lۜn oVrաnH;H>9 ;؊'8"Z3#FV(p {%g&FD5a:L!ǣM;>f/</ mz 4q w-WT 3^&죷f &(W|fֻH +uH1@U6L?SH1_sI_4C^ꪸVHiݹl/2x{Щ%p8NPRl4X<nƺ<}>TI_RBY,Ȍ7E5i<$yI7gN7p71hcsݪ¨Slw𘓋 ^E Z`5aB'b_NPѯ+ Uvv`6{n+ :W&%2mn&{cHUI=~9 4ڦKA8XV8/)xo5@,kב#lhbOm\)݁60u1R yuu唚vI^Q^UwQhMߢ5xu@X8K=F ɒm`mgz @gIs #A2Zsڧ1Kο7ZQ<F|m(v䢥ȭ{2a7âfWֳ( mVW7涶]h ϼߏҪp }yE0K:1xY 96L˜4=vLs}#fv$azneWxAl l}ԠsamL~.YQ$-1%T-*mOfuƭR؈ӆʩ~IJ_$EM$,E-O; 8; "q @+ܩ4Hg֎QP2k^Bụ'?51VA*g y,,#(L*61gMNh[I} ieD-تu54zafhlˣPlI]lDj"хE֝-Ene|h =)_x+; C]pDq3BNZLs`/IozrO:wK^4 nY^.#*TXs1A_ > =I1o(+\J|"F!(n' BrD#7LŪ8P=ekt"TtЋ92 òpp(M.aބ(Veq 1%N[fnuh*~imqT{1sXFX.OJFa@fD/~߅w6mc])Q&J15[Ćf>:Ѳ"lj=4\|12pxzQ/ w{{Є۝ 7 H;*Kch16xJ)1HF*tV}[jL~M./הb1J௟/~BӡF޸N- oN.wgc:5'*IUTkϕRv'y[џ:ݐʋ$5_J10nfLL#LD ۷w5Hd$&r"37z_7L!ډj"Rl*$ެ7$٤`}r$CAzm-c)Vܙ=UCdD VO\\ o*]5h m4PG'I) ) y2%LϐMf8 ܃%%?O9 P­i;> ["!e+hQ_?c^5";9g :U( 3@K͢/`--pNM+h 8mmu+@L=2a'?K&" zθ-;/A.qe2IG i.fHvRpR f\VyF$Dv `v?( 1KS=KeROu?x(6' uugw`9 }Q ;N C_ƥp0|CF˿'\P$f l47hsw*Cr=Z"=B0.[lO7v$xee4;(['`S] XȸVDKMF"产_LҲF WA,£*s{[1k(4D@4❁ӗ>t1JK%DKN:3_B0}p0j.)!묣ho Қ`6R gIHO4+ S)E#"@76 ޗV U,%ƃڐ2)n.w0d 3smtCovrL_o}jK(nMժo\izº\oȴ>:5 `o>C*I"I4wH|e QxVo&/ȊKCQuӜۧ4BE& Jkgo{4  #G;Rբ/4 ]MܚIst«O$ y?ЉEX]>.>i0%ƪ/%t0Qׅ=\E >&}=>hrC>G<9C312CiҏPIB&ӆ; !xl&w6Pyy8 `nڝEUXڽM?y,|/ $'1={KK!,Mh'a\A_MR} ^bC Ɉ#iXP+IʏZ~[#fJP]>Y% T!Q,QǕIf hf}ZZ#u9yW WGű@ ۯ8]X9{y:SPIq ct1O*4Ģ*`ֻ-=>BoE,]Qs tnE=I;~j/t- M; Khu^9*oGvbL+h}ķ \Ƚ ?΂,0\j_O)hZ.Lr7:K4NI@(]x:[(U LjTbt pma><`cpS\\(*F{ $_bʮ Fb4ѫT\ Y>Bڜ!/ uŵN#xZMrV*`T?,{Y۩o=q N|sD 13J.Ԅ@pdKiְ:A78I`*y>Gl_ `z1 rq -T%b&|%'_uS) c}J\*\=QP!!+z$C\$[vLWl's5تJkf\[?=b0və rƖ}izP._)8\M)Ik΋>e.f,()#% 5hy{PC+~`2mVRƗu0 ͓FbX=]*(Zl7x] ;ܨdWنCHS!:Ñ*)3! _Uk&ŢM$,F]`WCT8M)Ƃ˼aW}NH.vHEV_B~W <D߇jikP wz E[{`wx2v"ƣ)7 ?V1O% .rңJIY^7,j d9xP>LL̦oi?afEP$)&(kjbٲxܻ}3}8 0 6F :]_M]E[,nT~Ru) ~lߛfGhLVTxO^ a8q6Kj*>O9ױށeYILrp4)'<hQ@^SS<i={wq! {Yh3ILx1B9ި2.){xz{O( vAgV +wƀ\̷}mt/`PA;ɧd_|w4w>x<<&&7|*OL&:1c<[u8<>HSoTtf񕆟-(]9i;b}V* .=N\ǻKfͷ8߿2'3M7PX5sZ A>i#4G?U+ve|h ںLu&4^xjͭ [`."chY ;p@){ XF .dn7݇f%wt=}7nT;G+a=T?lGv*BlԸ E"--Xelqܵ3XHLbU0iA$ yMո@(8-/X5|lOxtEv"WԔ4U8]X#6p10|(=r;2\v|>PU?b wdY[8Vpu谳ǛµؙçƝ=x?雵۸h݀'D‚(F iL @ڳ__z<7)9Dms]P5JъIf۝m$Ƅ`ܵOf>"q /z3@}-BF%@ Hbxoy bc .╎O{| -0ųZiJ9,= gwE2$#Hp&|. YuTu0͑ ڢG{ȓ3D]崬c%碕j>b>?%lDnd,y9؁7}ׯt[}W&)B QWԖ@6m4|0rw bԂq1# ˟Xn-OٌEg5R\; )5@8)ts Sweۺk7cO> 1XgNF7<4#؋an. Qs* <%l Ư)yrY1?gR{joj>>+$0?J Z%Lj OfXPλ1Z갱m |n ? GwΌz okaw47a1p(gy@q_M蜼.`DQzU0ߒ@.lD#)\#-5F`(F_Ͷ-D gU\|RRVxR(Ӌ_QPet;4 a ;S^:CZO;K Sn+ 1[reGybMo Ri ^E(ɾUdi▝)UG1C @?§XSszkޭ\^"j:;5^LJQ4\tRw2Z& e[5 F);"ݡE̘tʉГwKF|c4vz:\]ܯ]Pt߅Z"Ϥ#Y!pE éM@2D)g˃ q듘 j8&P_}$a1<ٳŞ(b0Q_f Nr7p%mDs⃌S v,ߞKb3)q\\%I.@GD;fg>/h9D2t(݋ cⒶ~J^hi_YT5!zw&7#mavFiCl0CyZaKUMNr!Rx cn*gB X\*=E{rrBJCTw.i 6bF1 4TO0(϶jhy2Rhm5(;W8!z/@U'pC(aD(@"Nۋ Hh,%?Txq^z8|ar8<Ѕȿrt{lێJL%إ1!^xmDJ{apU~hYY,j #3h&5g"y=@386xcPkHZ;1#޺x0퉓YAySN35ydvO2z= %?ΞPX 5չW70a'=C9DRt.53ͪ?:Y*JKΥYVʳt&2Q6(A,}߽21^G>]߁xRAr3%ƶh7h/(qy/@ʉM였v ҇N~ÍDZeiٶ؂8$@,0Âg E yE8J(֓`(p3HS:hWqq^o 5Z1:NK V4s-CNjrYсuO>O@VȨbvvRD=_H`CFzK"bOuo` a/pj\38p-| eZdnLc\蔹sXxHf t;)h!%к@a^s f|tLy2VOhhwK:X9rݮLֶ-M1AOe)#QGcN6FK5Ӈ;$Ii~dM#XIS=:DO™,Eݩ8X=9P]YHw/l5;5LElapiR n/L6(ȮثHC :݌sa+`c>I{[6QGWrqpWgO)3%A62Lҕj 3TA„VuI_YYOmQ"!4ka#kGVVÏ >"m|×!2c9t 6Qp7qR^PvQI|~;Lr\Y^͘ف bw0;]e?jGH4=Cg?dRl2qH /Lj|HH¼ =ݜS=uSˣͯG/D؝USV Ѓ-0x^A=[TBg2*G8C!'u;fpX[V;&GIkzַKMؙW5ֈC$>;#Optjjb6=Ī)q7%z4iEY@F㘧D[}DWGXgĿqɝ/utBb|/.G6-tRKY*h7@ScԾՉUsFA$") 8&zysAߠT'ɱw ;uS= ;r.1/j!\a)u]NjJz+aVT9&xҞhS Wapݕ'u!C_x8S^4уQͫ4N~_GDP:8T(V^G 94Qn"_ 8!]:F|WJ~kLisԲEJǃjI&/]Rzr7Tig&w*=8BB;[+|*]#޹ss\fjms O)Q÷U0s)WM9I$ֈMجw, AԎWz Xtmw*`ˑ~ ЛVlB19VFPbNo"y +\?Kx=9h '[;P_hYQw.G^bRg oA:{=*b9H05? 5t!;j1  J=Vbdڎko',LTd iZMTX^ǚj%UY .k&| :K%!@g^Y>pqW5ÃjZcTY8GB+E`&0BjDo/NÕ=lEAKᄒ9e=g;*@ X|1?݋]|qp_pn} s V*.AwٮKU4DQ zD79H5m !/zm-` (I6n"mb7 ]e^"RLdTBP"o=β賰,H~*g2OFR|W0%a`P j-ZTm?QH31֟- 5wmӗJPk}_X'VZU!D:t}(iq"&M$YJ7Ί!Q(۲(]`nT_E貐¥}6{ϣiRpUE#]3/o G75_lkC]pEpN<;T;sZz]ILCks VA_k V1%2q'9Tߣ;#0R_ 4owct*?56i*xJlu|YO(܍ω-fJIZP0 z.ƶJע F8VdO<>B0?O[EʁmcfG>N!2)q;hY2%B0k K 4<ƗA959o2Q粺G"y`Mnts~vDUVg$XE Ѳci,ğlgf9Gg4#DM>y@Kb(٥ŧ!sSM_F`| 8SSY53@]Vمin 4ݖhXGlYv Ϟ3 ϗ._P)ɡCe.lx.3&4AgC>Wvr*\m\ݯC9.TtݔUυ'W)'Qx5 !'Q~ R= Kdײ۸>OA 䉩oK«Q˨ AUZYʮۻ ZOiF*.[Y;H]ĘwX!ac|^ 5q޳/nUVXūw8ɃDHIqP 9,W$=()Hшc0u$o;콮*\f"T.Km)aqkMȱGQȏ4z?Y4zhT", `Gv^~{m8H+܉^?xKϞ\2a| v/qOnǻV>~|a[>}1mGq mj6!ɿ$$w{ (>ʮɩeԮ,š֧E9VNq} &!E.* YM \$]r:`tyS?YI2=C4d&{0PyljT3Uu!.YX`w[2{I">Ib2M3/cu#KkɝGlveO~rxdщ_H <֣NAc~J6GR 4w;45Yզ%#XToĈ*)%i]T^zJ%8??qKX2(QV۴F X%t&]L&]5cI?vv :U"H4Z ɞcLU=ԹMPEn0Qi92q[doC>_fg[pkrڭ mKXVɎgk}u4 i!h願ڮ -/"Nٗ Eʴ6-34䖀sKe$ lawS~`ģ7PE j}FBmSG(ep"a&Jpu6t@-ZI9 11q rG1'` jz@Ni mFo5Scs#]m8 ޙbA{?v#>Xd\_DJ+ ]2 =O+{/vL VC$UU9cpac(R嬿e(RWǠr&ۉmTr<?R/lM=]hCz^_`Daɬw~+!N+gU}2$&n~Tiox]FL0ܑ@RJ;w@AB|r6/p |' uec79o+,O /+R;hV h^D(B{E'a QՋz1oإRioGy%Q.Z. &-ʤd\sſĊAU띻w~KPC&1+Xh,z[|YrպAR m-0f&El- TxKj&)W>}<+鏚nZ.^{ f7U!Ls\*}Y$[~bfE ;a_nc.m|m-$W>}(w2C; g Jz{ *7 `!]?!F,RFp.1k#aw0I$DԆz);kk f냝Q}zts8E#0Q<[wղL%3RKT/27ߖ&$(POpr߮v1//wf8t֦R7$@?=s"RnΓ+A]oq]OR3{X:Jb36=Кglp:asX妼  ,! iQITh }`.<%Ɠf_B KD=JRh RDLwAJϐ{r{+Z jc['>`Gߩ'}v#u ~GSctD r]4Z;o6!+ȒrFOv[whycY]?qDAO|(ynE*E8H#f :FCgc\i^G\e1D| CQ2$DJ7m=N8PV*:]ъ93 E==`NV4j003MTN'1FWI6x2 t?@2tk(Z^='{MQїw8`w~/F!O|Vvp .!GspN`@K/wcS2z<,J:~}~Ϻ&pl_JwVb}EϾd3B O)$DjD.s1||I!mO=[t,A0>\nwNZh>P% LIJy7%^Rzj/NwM}YGzKRcChҨRT ⾓Ep4"?q6$!K9j#+ FBv$<MG`+>o5`~a9뢵#9J:Sǖ͠S&ԝgaV-n(>C$@ӰVzH⇠]33B*ccrlzhw 4Sys<#;-xsSy-2aI6}N0op3ƈ0yTch+b\=N LvSz!:PɢجYjaP&,pexg?wasa9lZEb5CxDހK=>ע/v[,w2 F0Tҙ4W9bG. SyޝΝ"u:|Xj q94ҥ_/Ї t;o# /sMZxv'} 80~*ˏ&BW%'xR׉l-lvŹ{WtSvѹmDq.sa:=8٥`.ؾ ٤ւ!ij|,t'Sa.U[S&~vq D=婥JӠR nFhb\漖I8,ゟ >c,k}:M#d5p+[պԎzR5 Ye2R1ҹf]lvb'JN ` (FT`,y6`W;Y_xU];v~z%wSvLw˯:o:@Ns{ Cfg"Q〛YFTE0pf{r ߎ\oĵSNj0HXOaYCМwNKf%`Q{^X0 x{,5c~uF$q{2ԯ%4_S68hOcVAڴc,orAk(0t2VEmW^;Ω,ĔYF8(LaSS"\Q~hr)7F9?x=CR0=lmg:<5sd,ںDnOf@rfI+l}-(%DUAㄶ< `7 $Ѭ (`4jEI-}~縠G\? l0֗`\q&Ť`7>#= - ged]Fe{ٴJ)U%? tj¨JC[*zÑZeE ]48L;>WLnp|e{b'FLo{65CAZX =# V|a7ah}c%MҜ1TWY2)kLkp H=Wg͵s􁻍wφBKG2lS [1ᐂ$@dҊjipB$)k|!NC'M@Ak o"inPw .9[A"-"~ѯ+%~=-׌-5qox~(0v6.Ѐ }S1oju=QN*F)(nFY%UwNLwg;Y;wsF\jJ%׽?R$CmSޭZNRCQݘs쫩{ڜLVA!A:IA| Cv7Op.O5_)ÆmAP޳@3mP%\E )$=|.GoʗZgMeVh;1SS1zp`o' GwV1, HCJP=~qn6 9mw#wT]Bo")Bw>->p#X2cO"L1o%:{4Je%w'uw ĖR3$+W;g|D^qIfbt @fWtC5) D t{m~2)VjYv3VS!C9 Pb18|cѯG2}_{׌B~Va,H[ wTD @KG=ZH+u1V)GAZ6= (胙M_PqUZivS"(cz2$l-j^cerH8ӄ46|0-($P0{K~WjOS TIl9k#^\di0>.ٽk_7b0os{-UR=#O((^tUYDFsk[4S<>*U $/s`Q{P_%?otw:4ц -k' 5 e]ShhC]>bp|En!ʥe6g~rM*OEU1}3^_8~*zNS #O`GAOn^!K* Q 7Oą!d[Yib ȢBtY8n4k&Me|Goc"㗼foM*~ˡ(nݮVvhUY[@'h:p$d琱;@7J VJ#}E_a ׭.ny{6/MD$s.X~u;W/b/pʄj8{6K^d fUիhd.q93:d-^<5TW世4}Ie ˀ5?~d㎄_bI~͟U!otl/Ggʹ<9a=%˥}(E^vw~i+t}Bd/*륱 G! Bad/oç !--/.Kil?İY;M@#'msG Nii<Ϥ!P$6qQGX9B'ϟXmU!t Mtk1%U50śR6D3ԈE;"/%|\IXN%Ok*)^״LQ)X3nV[v  aϙ4{{0ϔKǍ tʈ05LdE5PsDy#9ovg P{2vdB7PN\JJ;)CiPEiBAU^,A7DV9N4qX(*YM{- wt_?юO:,.DSJjE#M(X+P[sEHG*`0OP݉DYmښ7#y>4gdN\#|y(s-"M@ܞI-K1_ U}s(T'Y~[Tnp Po/RJ2 s˺%J˩* Jv>O-X'5c?#Wtꡋo7#W#,El,ԠۦI 6r>(@. A%+'"awR<8SZi9s2ĝ'$9<[' 3D)9\# N_K\M}!gBi8q"\CˮT~j>V n }C}`ޟ50) R zS ~rW7#:\hviyngXreQi, 4f.rw RWRǪ:n#NOS#)=2W|e4!+RƯi)8R(g[g^[O2a9Z kS} l,7{Bs̓׳5q9+2pG.dgN&% +{()$"Ͻf>_X"V[IF5-֧oOxzwӫy6lb5> -h;paccyPlkt45szs.Fnx9;R8|RB9,ՅW5J/ܙ"ʹR а׭'63Ϝܪhh/dW=Y|/ľgI P|j kzHφ:FFq=^#L'0?3r;pjx!:ea3wXL~r?/Id"'o_tbPXg:j=__^(hw6xi8R;0o6brJF,@(T ͝O ԭ9 z|#Ӱ—XE0n|7D}O\T VV36.lJկ^1[L'R[S `:Q[C@[x FΑz\O' uiD UK80g"fA~eA!˳?nfX)X=>? 7Pn9 XFQʱ7Q"=uxFz˥Ч%BBl4(I)Ix(Z *WIߖ#z?ZT@?cV3~OtcIc,`@ㄻ/,5xα%m.D10jxp(^Α:K9PJ_ G9zH3 H?؂,b`xPW Q6na,@ e[ JHsidol/_FB] %?@m@=XXπC$ݿ蛢%-yۇKc3 /`ʖո̰@cΛRKV00Xw/lYq(/M%p&ܺGr)u& gd!U2#kO*F-4QidEA{W WIibg39F_,I^(vw9F+Eȸɫg\e)#;~Rj/pȭCŋܷbokH:u1*tFp @wr8 3mC^k)'Q|($#n/:? YmkzRW{pfuȖ \}.Pzt2smZu{DMi!B*-NM{jARCybjKJ@ˆ{>;XOS#%׾ !]M?bvSn:j]™Յ4LL|dCffBi€-F+ *̍AZ#ϴ$h0!-A rE<eLeKRʷc0 EA!2!+:ZYJ8ĺUoI}߷Z]S4YTϙgug?Mw۽٨I&LFO+`BuA?vG轿'smplNz?o)ky'mThP2!Z~^J}N{'z=G%bߵ0(ΊEZq*5X5ಶrD-E~BV tH{}`l_N{>,Nk?]p3҂Yv7N+2nC 9*ZyPF;4y{P@[.?>ׄeH*xS4v Tpo2 r0LCp7ƫ=X@I'~`cAn q:mM4eab7hXҎsݽS:Ec &9+#DŭV v搕J\sLÒ<`hf @0zu3.؇PAvMTg$}R,gh=m/8$涮XtՒbr z,co?eE!`Em8V3<,5IT8~*(-$Si\n}$i:ozbIyOcO}_K]!RYTJhn㶲zrvO4t}h(S~8w&&'#oTRJKbCΓi-2בydSZ %x//ZP 1?陫UmW'aQhHK5ڶcds"`hZ+-|_K/E6~bs<5-nM^r]lt#,f̒Ք=2ٳj3pl=sOOXQz}(ʹb᥶w鴈ovQ{GtF1F+Ǫ/!@֊Ah.Bbos2r&6\kV"Xx셉 D08+L9aMW@>?Hx@ofW6땢XPti ̂Z 'x=̹ɘ{vaIqQ73"#c! G6CŎզ;2:ty(~Jeؘ  ]z@V޷MDzO-ldΗ=jBY&ڀX%~@:35z'PSUD19륨Hژ٘|I3죬ɫIA,m<.{3!uXش2s0Pgq-kA%BaQ吅=NP2*"+DƳ4qw^ɥU&Y\/Y*I,l+k[q"rI]PO)zDVT[~&]D3=ғ{nAP6~@L0< 4y ''`ţa5{kCe˖8;k̵a;* ºy r#R@ 8#N~YHu<9C[A-R)GBO8* D4NuhTVe^.YXov,ejH~z/Ąb<^'Mz[i'!dzlgH׷ٞG`t3z44?2:lQ-) SP(I[ffWD9sc= sA"2կ $Dl!bƵԊ>h~-YF7XԔ@\m6$@ajp}SiL/nʔT<`,^Pt"1vn@9;oA|.x s\A^6|?\c);]ZN%6,{Q^3,5 <~D#%cX2c9shgn]ށ :sV4wX⧼~6GL 5'N=ÆmFt%ip|UG?#y󄘅+{6?9ln)M{'$6V%pIhl^T2p<=i>;ŰZ:IG/,K+z.mtn"oX(/wkmKh;ȉf,6T\9T|;EI1HeaQytNgJ w#\ῃZYu 1lɍa.|ޜc7\P'LJDl%8ޖJBƿ* 4>/A7µFwZ?\K3~Uxo~7 Ul‚̴= i0H.fnt|GC)e|,Nɤ0p4Wg3$& w;b!/vF{[b!?C7ֲI۝[X;Bv~*g>ދ//cDK:\j #K *zihDz#i[07l+!pg_OE ~`ϳC)pHIwu_Q̂L,!yMp=49ACU!P[!yU6 l?̷72DXX-AȒMEKS-N?fI&ΡOjh3J&Kc$G$T0TI֒ 9H|#k8yp3$7FƺM['J5dbNc*` ? )+Di_I ~[ ;->Rt=3'`DޣlV50'GH{*v#~U2cFdfY3?k 34,uф4[?^nuAwӶU!]w1>N dΕjMK:Erg6>CW(Fcdhl bMq(A^Ο|u3 ԅ.R5=ﱏQoK;KxJDu8&oFa[q^VpDi*ށ[J3RL4\}HGQ%Ѹ3ȗnsR(e'hSs 2Czs=DC6Ee1]b 9s`#ΪPP@X?^Ɯn.(FjW}ܞ?k;6xEv 2R&C4"xۣ!O.e vqNgQqZ7wP0@[UhSm:1 %|9&EOp[*; ^S+c+jza+wq;Ҹ_Yŭ.xV/\#&91(Xҭf6R(PG zriEFgkc_BGKM9oKbMW3ԍ]~'D ԑF>*")F R,?)R)#w5$i22b)="p0C(!ıdSr\װRXkϮir >+ߓ!¨ ufrR䍤5u͊99` mQ82_8Ʊ߈*JKOri С?\H˙n٪BOMoUeG pT'ѴEG Md$^~At%9â ) δfޣ;ʲE"wTힱ4iVq_ .SljQK[׊ ']>uH8hin,NLl5W'qI>) )EPvC~8ֈ2f#"3DcR6a!!ܢPb4=PrwTCvQ @miFӉӢ"H&zx1chy_S "7ѓǃMvA_Q HfD~I!4ɾuJ 9)n_ E'0/1r!l6aBWdb>= v?K1N`o3^[mP~CjYnHe }iPJC͊]߇KvqR=%\,= i3"ZAZ&"N%kI_"7*ϴj))m+)C!$Cӽމm{1udxlfdA)L9ae5!QI`;dzC*Jfo\!rzM 7 "A+Dz̐whHG"|/N-w:)'#JOxH:KATÃ`,]$hBVЋD LY4eբwAK>VO)RTi([G )ƈp:^~k! ?5; Dw=;zvu$F !ʼV h+'( &IyOj]C(lYVF-9M̈T@Xb޶ \/۹Y^dS\㢇>jdY,mb#d[WF;'Vsz \/B9'40;{D=G6[=(Q\iS%cS[ov3J됫GLʋ_R=cJӦgJ*5>]o*]sl0IP Q` c Kޥ=%L0NOLjN3†h,R~6.(iFYTՓ7hz 4>n!K7Eu}a$ҍ\ QgԷZEYa bf˦Hɬ\9t#6} l)#saU$-w9Xpkl!Ǟy_CuA|\(H%T[-*ST_N.{ BڒWoT’[&3LV *wD+0^MNa:;oxd;" Ebԁ8 e|p@:C=K,E)C^MQGY7˶2wI<+p]̺=`ƴͨjcuR@o?Bo~*IBKZ =jYѯ' l6cA[4a&OcY_ 6Ƹ{rS4 f=snbYIah祪C{1Б[L'WL P? QL"fE$dw, #lx :v+j{QRBoGά@{Q@p X|KtLV-cCīeGފF)g]G+4ve?J^29&,fLYAJPv, UZ7P}`mٵ VgEc{ t[~akogryHZ~|0sh0Oxfok# :v)EϾu]M:XzЪwK7ʒV+IG{{C\V h@On')1J|4F0y7p˫6@Lhxt)9&(I{Z.e܀k;pU N_l4ktg ;ZGBAGQx7ݹ%g y&fϜVÙ@Bg=0`%۩WudUk'bc]2#$p(ڢ}*]Jī gk3.j-U^T "ȟ ״oLb48'LT!dq(`\;r"~f%/SSR!6Z/2X9ntpsQX/'W$'GJc*0q/O n*Uf%WF|oIJ]m&UvKk3Hu쇞Qteʞ!{`FBqZT;Amb2\'X?R<\,]`V.Ӊ+kpKnMd 3w 3BSw1*Ds?=t? :N!]dJ!גFYo)Uir=J,\4zqMoMYtA7L]sh+zy/x~v k#ow1!]WX6iNAHDV 4Ũ tCzl\}*\άI|k~O#0s }h'`x*y(ԇlbAQ$4Rjd6e$!Ycä5Lk,ǧQI.oya )?":m*e#r4o+22}dh%ZOII}}i_- %QzC&a!tZk@KrEΰԙ]V5䟏QǏ[ ~A9o*x Kf=}aۑ,eӥ{{!Qc1U:[@8Lq` zĈ5ߒQI^.p,с\v:h,M!T% }1`:xov7/BdN_ wCr‰b UEMs w4$^47:,*҂}jxn=ҹ&U 0g nX[U8wIR6fx.b +Q}kT!9H汇ち> }!K)4fo$Pw}N2ܥ{%0 (ſւWp$NWnD"اMk=Id+DR쳮z]*S* rLBeIxrq!k _YMnC-AYxH!g`K/kKslFӳI^j|16Wwr^mxQ4]-fRZ=a$q["RT W]wkVW_ЈD= sN:f(͋FBbؖ}cLz!肤C7S5YL]z݈i Px#%!%Wr417 ^,Fc7[Slke:!v¾X Rg ,!2hls_ˁ16KRwg2wX&PFtk;m><`6y5{&) }JC}^Mq0D+/|?kiINbSZA;B ݑdFȳ3֒M`:ȆUcgG`Pc@vmA<[_GVVX^{7kgA(뿨$*QJY.]8{dmUƣ%LlI8n۵‰\nf A} < =#-mB' zVkDipP hw za?=sbXb8SJŮ);K)ZMkV b&,GDlk H~Ixuf㈆Zw~qQ%"d&Vdm 9:eξu/ of* Mʿk%TyW;dV ֲwO2 6 c| 8w]U+4e҂hHG79.AM>0, n ~Ss)u*M*5~?yX)΂g CЪk[^*?M}]$Y`Q@/)mY֢K?*ƧwLggq^^dE<]F"zڜUsݏ"ɽ[vc~E : H~0>kk4f?N i2Ől E)]zyV+2U>zP ePq"_}``b-{Xqcxj|4,DԉϪOvt#gC+/EZR=Pj2ZfSI z'UX=B^֫7 yBh&8ۘE-^fV L})sbAԏ8'/b NsH!m8Rbg\F(_akpY+岭دf9P|ыGU J)`nfoB6LO!7fkZ od+A-NC۴#HERAZWMמ |d.[RHbF歙ۙ>P]?) FKmA@T:D1(yjɥuiߨaNIhˮF8f~\oԤ1k{QxFHZ4]le Yx =J,nHX|N+%)]cRmx! Zp%B pٓ9 -ufʤ` <7oo2ͻ(*M)#]b ;!osٻ`̥:[wT-8&A>rZq,[ .M 6YAon 橇kJ@x>y`Bb"P+g/FCh۵4xfc4^CD#Po}9#}AGtl+L xGd-Ì:`!?. ]Ը C,n*k}T(״<'N>L~ `a%m0|y|'LQ|Lth4sϩ;))YnH]tPؠ FLDԂGV{q_ #!. cPkHMRi?]v0G|XIsvߞ0-j*eւOS5c0`k>T0>/X< QU(D9 <@3 ]r60kԡB޵QIOg_,ǽ0K[`bo.̨S.M1 †ևbke+/Bե!\[xW / /VN)꓆[]fe6$$dtZoċkDjU91X5Կ4G|Blj_f7-$W#m#[aA~˷+[nM8E`;XD=,ozH,DXtڷ1uLj`Z W?Le0) N [Tw%P'K%0BZ%nQlwLU6k*۰>6~H zJܧ]Ȯy2h+B`h<TQ$ Hl_N9Qq%z|~7~n"$呟47?.yZ;+OYwOZH{{q˹k/DR>."R̤|R&zV]g2} gV?1q"0zE#^O@BD+Z !\:`sᜳ`tBa]C:q%"O/].iTJC28j8K{  ՗UR$ɱܰ59i8'݉"7*pFVpܫ 7QzR|Q ;/'rtS.} :i\dy}]a+-8t̤Eife"KZ4}ƥѮذ_Q㖅n:0C ]_ kmt}ZD mBPd! ZUB3^W$/90⃹Ҧ@/-Ôi,nY;ȗ+dpԮGMvK-x۴M~^(LMCa ~r֮t,8dOsn/CUE:竒 V1,]0z ؛EͿ c#HJ$,_RnQ<:+WZ%_N̶zwz,d8EaT\k  cwwz6eԡ7Xdu#$e8f*XR`tַbKT=@ 2MĀDnGP^]J8پS,PwKƾb +{ ӌ{sw*gO?*zD@ʪ:.4:+^tU>a;Ϻ RY q@&z(@9C; .ZV f<9[vli)ANDTy 7+`iN HD9 4<̘5;!N$ ;tΊ";,K8 #v{[`IKv<,`ktSc*!X~aY epJܱŤ_ =;CR[ݔdwa{"Ez#e7"S]cWąZW\C.]J.s iqa&r ˳j#'PgyyG @ 6gbP6o͖:M'3$yTͰ$CkRaз ⁗$ 伻V@x0~EgrK⌬ӝI-0JY aa{ТxEd+γĥ/Pȶ&SS_c28GYXH":nwģ7It8~Oc0{n%:^Bv;k¯JEʁj߳*pGf'#iZ:G<*C6b2p|C5c nL^Rm^%c2f?󇣵 03w) Usӿj umЛ]y *u'$ʈq2pF֋׉rӰ~%jhUZt Y?m[9n! 2=3-:VN };Zڊ3}f͚ȧ|^>+ y /#4Xsmno*=2BP#̾6d(iG޵c%+f<PAxӗ _GypCtXV܌[efu(wD7'jw}[$t4뇪 bo#}zzAt[LZS|½ rn59R4CG~Zx%WcۻQB 5Yne-#'j'hv<)FKlBUNҶa=dfFJ![EC] ._ex>QnFTEA88d\OL6 6WN u#uA^]XDn x>C&4;,]A63kα x$}m3jPm<[tBG\/st 1\~H5wmsGd|lHkŧ6̟{G92P y!ZOn߬?euQ_F1QvqwhԽ)_[ˆiqfrl2і+3L`!`%}t6c4IDƗ5xR%_R?iRzS5 7Yl9ov=o:D,O{E)~E"&,R.\QeDTy %l~e'BklxpM-\% #Nѷ8Xw^O9+!)T:C㼋~^Z,IM- L1+@uSye`.c8'r3ќܚ W*PAt黁T([}#ݘ;%o<^f9Ԧl5[qWяH$ĺ@ҋ] ]57b iJUwЖp/QXq$*>l뗟c Pc[kI Ǿj~\u Vc#e5ӥΧMB b=DUYE^ekb?xa$ .#kp^)= 2 w5#xԥ&8:؉m)Ro35Vz B:JݳZ͖uPV}"e+ ZKAOEdF,cEE-ʙF*Mlս\0>q5NG]!XnsWl4^DrrJ=cPQ 7FlN<^~i$-ZTZ24v_P_BNc;]up[V4;I%,$WB-?csVCkyE+tț'" Pu'֑{_`Wfh:NM#OyY9#Ix֋BI=uE1j @K)^{wu7uOouE29\NLI{K8|E}+Cײmc6]jUĦ 'p}#1,t1m V~-b,\s|"L5B'-ۥٽ˛l8\dhL#07 ebޯT2ѐkˀI8=}l6XUT3B+w _D H ܑU4Uޕjrƹ{$ M#!n{UzZHktleA!E./#Jݧ1"j"^m2jWx79ЏrgALBz۫< jVk$GaZdv6<^ʛx],yU}-܆|/g/@AH3&%Ee:A渮k}[Fo_5ᾂ.3 Qs0J{|˾HJwBˋp? 3-[{CN*8՚4 ȱB멐BAcn`Yӝ*8 A>3" Ƨ|m.1[LZLGe؊0-b %VLaVGV۝s2v0ܢ?\4Ӱ#ܮ`IBIdoӚBC`-dS_m0q$YBV/]y-˵u`=x;M=ȃi+!G#F(:ץRf[%¶+zY٫ڤT0IDǵ)ɴAv)*_]~Pu2v:Ӹӻij4 X֞x>NV(MA֘ȩ%Ck AR}ñBvz'V.G,D4BYkSX+"SBonw80EV#ac{|>Msp!0!mz=%l;;!R76 `"3 uRQZ +o[/vVba?tb2x>946. Fd( F:z"W-bb.D=)M, ˤe|$ԁΜ-Z@u m|]m{]w1U$mDVs.cѮ倕%r(JE/g% hE3a!{r۳uZ|+IT6-։rQ37 <:>Jvx" M<1Eu8};?Ք`;GEq$np[\iAyռ˦_y#Ap&ߞ ^F$JߎSV! ̖/>s$0W2r^!dOe)-}=, T<П˕'\{&Ui(+׋U (EU,kt/DN7 Sl~M(vGs hVu ]$ف/M#U0BY͏\Ns[v1ƄI'g/Ř@fEȊ}I^[@CA!2pql@IeP6Ԭ20њs=yN>~7Oeoa"tIa-EF4NĕƷܣ _)]leBlp o`Rz 98=a_p{b)}gݣpXMF 4fy tq+7T2m[7tYjW#tM[H:C)$/={u)0v6Ÿ-\_{wo‹ -^hz>l+V"[ DGˊRzRфk/|:Kz9 YkHe`:9>7.IhAy ~`rd(4Uov+R`c[.!{2QN5Btqå236"(M\gf^jnɗ<=×{7DZ)c@s1oMƕaZxx7[bl=Wp7B1wT0 *@ȼdWOFř/\4輟$Au>gPs#C]0:gr 0CrGԡI$Iƌ)ac+kQ&0d<]oFS"# 6 @ZDNpTBYQϻ&2D 0ָQ ]K͝j#SiaAe/_}ĬUxFj#?E&c)#+hPs"e Xَj]O.\߶ۂ؆mYo Z!NW|3U^#t,kT8EL9K [l &jCgNRFRc?7 t 1/wa g׭o %M1!ө:T! Pj6`VKЌݾkK r$Aynǥ>^6[-#aEL?]YB$W`kQ[k9k6ih __\P(>eؓՒrܪf=G+M?Ѷp'R$9ҏŋl Wk7D)*[:mF c,Ia,Et\K*wQ9Zv`qO1a4xH_nj"dFUWT*ZtQؘ0p5`G "ZUY'2LJ%i_M?~xѝ ~$D v.PGYUU2T"R+#CKv|nR[@ |Z*~$W=8>RPGz`׽f"tz5/9#˨"ԸLř+MEvOK9Φ ~`gm i` om[\rŐ*+@Vcp Ҳ=UaT9BAb㾆I4y,< mSM`$=HW}?š RQGd#3jE{! Ff$vQR(-eĺ_xee\C fXi {HkUזYn;? 63VJN_.Fఘ]AbpRmpoX b>< E=DTo֡75lHQ EC! Acxքk?O~)͗nA_g!}Z:[LawFr #]_Y8HHYq KhݏRPVJ&@l/SP=DY\5ʏO3j: m3UH_9?(Ck9k,kxt^Jg =P}ԇY&!j0ͳ)s{~sOĽ]-Yۈ=J(cLN~"AV믁$`o?J Ar}]%$tfM_ *Ɯin`V՞,gmV6Qд'Hk5F]myC ʱp@Q4w`N=q5'V Mo][s[15l)UaδS ?@co'!;lA Wa3 *2D'g1[*B D)pE8?ly @5oKBpw8n rmIwUZO%`yVDTZR1Ƈ#*(lb4*"L2toP|Y|0 ج@\|柝UX|2Xq!ۍL mYm>GGЮ-YzI*!ae诬\$rj_1>ުH tcOfbe"!ڵpwYB 5 ee?ݸޗtW'9X\:!ИXK%X5ݟǡr?Rg:,"[0H})0Hn@0Z{Y0$?/5^#o N|h`Eȧ{yԇU4k ¬> Gi86'ܗE8L]= 2:s}勵\)%A/`G¸/]ʑ F?`MMcS$*(mEe-m&mS:_qKsOe 9ξڵY{~UYBEi!ZR[W.~[M -a#ww4r"q h "0}AI Pd{턋O ,;c nfRΧy=wx Oa`0΄1@nԿc ܍D s @ʸNT]g xR: H hov >_NS5Pݟ:QQgOˠIz MkqSsPRjmM@4c/&9^GCEM,qjJ-|[߹ǔj Z1 0t>Ywy!h"xt1bMK)F;_ȃ%ia,ŔY-ι[O~>Q"j}AhJ#khQ?\lrOlu ԭIla%;rUScV["N :;,$)/ci6v&؆Jz$۰)9=C YKG6JY;TZ@t~g١ܣm۶RpGMWGq{M@I6dogF ~C+,"8Ɠ>@0\%$L,D>.PJ(y|!?uoK^oS AD1յ|# U#p@e@R0EfHy =5Vy>bwN%1 Ũ ~S1xWFv?drGxzJ r5R@4N095|9F ) HXXn*P!^& ?P/ʉ" (+Y^p!9 :yV|h.5ύZ4 rI2o W0gyw(%ekw'C+r!M:3fRGa5HXIw~[P؝uwMΖM,сbb&apO-[KQg}1,zFToTnenn۬jJל qƄjQ{&fCCv95A',NԷ.x}K]Q>b򑽴@[Clj۱%}sx;Vk"IBe<.^QYt!z%B[W{h1pz/,Ga x/p ڃj# WgcMa YPm.A21{ ƺi}&HU_RfHFs髬UZMxG1y!h/w+l>?~H sΐj=bC([S98DSW8,–&e$!*2gʎD2O=QmD.3-nwp&,Xcy 1v>c{Ӵ MFgP\;XkXJ>V/${&l鞥r.솁̟5&~ķ.?i&K}r9 fȝyq#Bmo!/;B6LGiXu\T@e."T)c}lI<@x4?%;[]*U󹪥4|.~8 t>ҊKϬͲ9Ҫ}1,uiY1CܿقN26`WQ z|/䁽$;[g5vO.ɴxhK-Srr\0?31Tr4k{FBNb(=f#ZY m ԹO[t6D ت,"s6p6!|ᬃ^i Iۂ j) ٢Ncg%t>TAk- W}Քhn{fMq[Tjg#Asn nYCTp:Nd1/SX&7lZBF}iz,dOZ prר0|mv}"i/y߶-dgzFYOeugF64tE4l ʄTd Oy*`>ňU"NT=+Cy*N'r"ugXT|#jOCE]FH N*p2qQݕ>מ2Ym'wyz&0Mgx_)vJ(zFX2 BsiQ`zL# (W1ܷHnS#܆ZP F`cTM|Ć-Fg: /z|9`1:mu<kC@+A#ц5YT#) ,R܃ڞ{=}IW]] {z%1D+A} oE^~}dAR2;LL[,$G52R7P5Um'ؠ@{]3zyyKpgfxC}A&f_ X^ubC@8.ʍ)Ԁ[B,Z(TocJ+6OZmxfJR7(,"14IOIcc`g$"B~h.?7e YYYvP K{H}i7g>iKaEV3[T@K ض $5JK@?J!gȅn6S\(/{i!:@$i t EfGSEDחC89X`}{(LHj!ڂ͛EMՂi TY?&W촓040v%$B9;!|~bcSd$Gz8kSHn"4j11iGiI=& ˴?uZLl M}((q%PA7WgRq"=cijo TNT/`^oW7V:_!N$I.Ʈ\ysr-^ƹYlry{(xX}- ZDxMYʊsGuvϊ4dӾ2֢"J{L0X_;3M^CjB,G@?{~bX kXZ5lW?),#U"\'V3ȘAe]2எ޽9*:- ;Ϛ̰= ׀4h_Nsz*P6xMRNmY'K%PtCyz[n~2gί|O{=[s'}p J uܩQmATvhuɜ搧fR4)h^;y9;V9o"`-gKS0z<&ԫJRBQ̓PQ8`o5XT;O:G #v&ZnޅizeZ]yEORCm=ڥƷyC\Fgt $a6 7dScVt%7 @uz䀉ʛ\)7@rn=k'xs*ܔˑ@XLn?fz0j;}bϝlٕ%Py/PV /RkxR+mp2E|bĶm%/-"LWױpن+XJ{ U?7Y=4/!}aT%m"QϢc;E9c&r$1R^l]sOaKiXb 㤨4lp`[ ^@*OmYJ`B6_J(x7CJ`"tg O=:kpH CC$@au@,xΈpVђ"b9(RP+#TwnD.&o9`*Kڗ{`vhS=Qj'TpZK6H ,)ب]"sHZ17xb}j;jdhV|:Ac&Q fAdO˴p ZvR9nlnQR$i$a׫FP]B6.\fD0$> wEH2uUזU0)!~_g_we}f)?-Y'8Sximhb}HH &o)13"#q!|UA]| ()"ф#r(-4o#/ߍqv|>C<vj]L_K-c@a(MKPO9s'JJ6I՜8okswe1&鋄\cNwǞ^3SF5s:8WIUiiĒH~\gH-wۂ6'~;:RB'SAz)YMNTJ <0OU:W-.H`W`:ÚpՃOګL/l%P"C9_>8NjmS!hSj8dO]2\c3EVErpȫ;M]Zt1Biu[@CMfKd5o6XP -ǡ%|RbLI@yWy搏CuRr"bs5#tW) e"ݰ8CC?X؁m*ʥTǜn u n{7#Ti)ݢj[ϙ h%>սlki^FKScI͞GgvcuqP {^eeUy0e͞XUai]} R5b$||TۭDo@6;UVNthVT__,d$HrLY2bYRGm|3.?;jZVk_*uX1͑#ӪژshULf 7N٦?VDj:DWe0c0MTMU!9 פ)s<ŦU)- UG+r~1;҇:Ovgr~3zij{-۹xVK](OL1ex""̹(};w)h5#wQ1׮ɓzL8=&V[&!'BCNEdFy–,O5˧"\> 4(EZj  :ѐJG+M= ]ҭ4Z5trN<2wg Ȉ:@Mï# v &`R[D+KL]'snFɏ 5DmnG5ښ8\M;'~%#-B~2GSkC}!ȫad|ӓYBjÂHW;`M%ekм<6EC@f%WR$6He슲wDe Jpä"ք 8ɘ;X]^7R8ĴS;`HQS;Cs5º٧5k7fz6rWi*֫L -Q[nRumQ X]7&uU^]l ! 2~B5x@s ͯ0:]Ie/0DPasYkQ')BWAo^6pQ| Np{>߉n^'r ]%Fc$`jzMToόvfYyjۂLwLq\pLɉn%.iС-.cO@U+J ;9;P]N,4t$ej&wjeH` p$ L.Ēw֫@*Kћ'"i000*݇ƪHi‡LܕaXUm'zd뺁 KzvV',ƺйc{L/Enn2C 'lV {4nlvE25yNj&η̋MU_~1dƒF ?97c\5vPɖSUX0)OAJ ksCrO!0 Mu |VlV0JKl?+b|&+DT݀a(ǽ& 5zU`~:̨a^Kc"d+.KXk%q]̷F "sD3acDh>suȸ-&DXDńF[dӐ4=?)X֮> L#(gܧl=`XfH ~۞ \>v&l\tT,2fqf;ֻDKS&JEਥnӊjoBc~ni\q׀z-< WH/_7SCw{g2#pYx>lO,nBQ}S^7&\1<#GqN΀?m3 '+Aʾ?:.j2e :Wn=i`[NO/qgYE_deg}#] +V׌ZIX̃}wZ^R XnfG. x`LX Zc^:Ō+6ҁ)|tp^;6Vq 0> FDboqA[Ʃ_?a;gz]̧3Pᎂh?-C TL)_G}i]A=HM -uXi`g6ؐGϴI1H[4t2\'u#A4g_jwU}BqMc. f Q|ؗWi|I‚"ԄΎD14ͧ<[9x YdЃ8}U$@I2cn C%venN&*8ص^&)4pOY2!^AM@3w~h>%vYآbވ!ڎ*88N`.T/`o,Z!0g27 )sx4,)J"Oz3̞-⋼$sV =D?8v( t=oGz>`rQ 6)Mtop=2PȌkŌB݁{t-q84yT.{Z FǩP5DdhjHCc=/ߋ<ff +f$F?8}忭Ƥr/L۳Zd ̠Ap~}AI?rJ5ɔQM/*:| GūpDsD/H۷w Pe,#`-`yɲ4~#LyyfTcJVLǁז6x"(<@wBb1'dE]z b:q?0OZg k%?9^ؑ]*{7[Ċzr[ " tF@#&S=zL'xa.F*P&76yܬd|V}g>n'p7oaa`>zkq3\2tqK/ 5yaD!zF8 |?MQ^p`";b(6j#B_yiOA*mS|B:ŦL%Nx9=#q++ 3#Iaf&kI!OWzo J,*!hl_3$|\t9135o7bFCP|=DDXȮsJ3xQ}jEf vhO iGtzQpCH\[` RZznu8_8U%HYU ,M_0&V̸X$qCy>H\("pa{F#cp yde_r,c:V+ .aف(WG|zLtcګ&oou8n:u19γcpX &Rn? f2\IO|yɾ-t6K3fDWpE;sS(&_r ,DjPenfeY&DM `fU;bpl@xS#FZxPĻ,s/^闬2m+nfLj˄s, #Z PH[IRJ}2f)<}2;O*[<\fL'VKa$kEˬҡťM g\]Untt=l4 pǗ?p㣸fXZȫ(Q*S~HEC"bcuaG7FmH̙i6c59 9 hrO$8Lbx(7NAS~zzɊHR *:xfL4~+NdfOQ{DO;Z_I<4W>q9휘KN4i?kr. -RG[688Z12ңdN OR0AJ;ՋTbR!fMsu U*;̜&gEj m%kŢm^J-,(\q|`4GYWy'mo{R~ʼnO# Vf3WtD!*둝X~~YpIwVbۜ 8HY ^A`@2"=l Nـ&ET!)G>ҿ3^$L;t0nLɘlWY: q-0 {!gR摐?I )kŻ{4S|, )Emހ K I[|ZPr_hMaQM54'03;Ko;Oc72]ܫ)_ra;ύͮ h^hRB5UD`n#0p<~Ioy,ȕ:+S)p?-NsHGzؤE%Ii1V2`cCXL1&oAne[qCr%wகD!{yM6*Hu$+֙2oLƫu2K68 w+Ԓh$G)wCғ~Pik}Nósð]_dLșb2X^NHS!8Nn15LU*6?a_Bln\" PA:%ge-%=H[[Ȼ*qm2%>7#M y:/BOP|}bb[|쵽]}t_ko7ù:);*0m)-D.3'捤6@*%`d;#˹]+8NՑd=jc4ߙG5'Eko4A[Z N),p:L5nl:؁|oa}' 4j ^tv(r$J; xF~9 ڃIQr*l\_Jj3(6oܼ@RJy)L*omh (LL&2Jͻč֖!.cA6/·:Y2 t.!iro$sC|! G3\DˆK,,SGeml#~?o5c6xrf|Y(bEy!%&7_f |7gPykY:v7D؋,=8 Ę Q\j[)ÊճW}?x23ː3IA(1leqa3u&vQO萗[lZz5z.8-?Gn"qྠVDsJ=-67}9?U{V% ,:F`7[,u.k 0kʦ!gL9+$_ Lw|>uGw-ø4JS;38$E Bg\yyTXΠKGnVK 8|9^z0uXUMU3H~h"A/1ߏVoR]W*$}fҸ;1My)H֭)tPz9Cpjz%S՝* 1]ۯq늷2:oKJ;MߜMnRT#íڝڬⰜ>,Ie;ƪgBκn~` b}_}/R~\,%I~S;|H=uE: BW9i1 r+e C b6{NePtzDY/J;TB.3l3\˚ISaʈ ma /_Wd4$73Cog=D`"vd5v4[ڧUpN,O6Tv|Q@!G~L%nE Tӷabr+~~,(U '4M[]X(١11r TQ7[//1B߬?gM8ӾT?DL ?}ff r0לn3djgA!Bq &u2 7qR/qHPWw  g! ,$|\E|ݜɑ(KA%}.2U )OZ84C?͓6B>ǏNWa2LQ1j[@Սi+`(1y5gm>$lnHES -l(ki5 K@E{.M)OKl*wz `Rf@Qad ys:jEiZ!,/,'fy\@}dHTaMlm* JAL ncӏ}w)S,rjg3<󵺕RY)XNnHT֐LO|{44/^"0$u;ШWFN B|]ued Act"`n@H.v>KHON]񒭚7uxc@j`|7{ӋT@9I֐gD^;X'Cd~q { (*yl+ -O4.vZz|D[|/$~Nzy#(gkf04.sc؛փ i~zo[M=W)'k'#k0ͅQ2vp7ɔ\1 kҟXK{B,.r0}.Н[p4ZͷRZyG#B-C5BNH-{%'m^ٰ spձLsttXN5Qq[":qi2cjA [`  6Ar@ԃ/0j 0'`XE#iߖ`/ RJ'<[7&s 12qiKs&k, lt1e> 4T)Xo4rۥo1K7q@L]!0#IJ9ĥKC?BtnRCyDK^ 'i_,hhEyn#L! EU?1l6raSB)$" ?[(p:X0">VMKF+s*(N[U>FV в 8λ(} HKBCn1 aKQRG'.@ӑ7Hb^{칊̈́3"qV:%:y419 !6`y|R5zXrdҋq+Qn"@Ls\c ݳ-n Z%tȸыXY'9 ^V\:KDfZGഖٝ'zX+gP;^qFWDd㘗HWCTMVPA9>Rl@)@_UdT-e %]<86])2&*^Tnjiv¡ ob6};Z\x|!E'CqNP0:Nӂ1s^<9zB8R}nl%v9&&Eq^Tv>(-|^^(HNDQ~ͣ8.jVN4z/=רb&JclO7WYqၬUO7R}$+"Mrj8߁hIXA`0 Sd' ;Hg戩$2gAQζt;3}8d|5B&T2(ak'lU>~bLy.}v=,̫f'|6-|- Ύ6-,"ܸO3VO nI-Xnvy1nz nDr^BDchYr0N7TpFx/* EMx6oNvbsp7BV~JČPQ JBϮ`87W] yD\x%w9|$.GG+W:`\sQG.L/6,2qr/9.m9}p 4O$ CbL-Ab9chz;I8 >Ej3[ZwɁL: 6Z }Lza~ͭ+T&'ʜu*3odGղ|].|Tm4!|"'OR,d3ݞp.qؔ'Qum >5I -5xM`Ne{/ڻ07E~d(!{R.Sw !x9"D0vGP|d&__vĈQsU)X8]޷/ FX:Y4 6QA `Ҵ ǠRϜGƵ?F" K}7[Е[h:ArotVEeyS#YhG'rTFEB+M/dTx|m;AJksKu฽$一(c9Q|Q.g. !+@a*)᭼|s:R;򳈙s Qe ϕkʳ`jEzF 6{caHyNaS~J 9 70e E]٠=TVFXV\S4ͶX;.:+t{f=|5-iS.uzCΘݢVC&Lh$`4FC M%)HZf$ _Mt,Bw@Ӎw7oQ*^~ftJ Qi5nϿZ$>E`z@6>:UDv6E.giAJ q cWc?wMdlWțttͲk-H[għK;VxB9D֪m2Z lWoT h G '[R{5zEuqUHt,kg^2:ۓk>G&HV嶱wR6\ qV-?ykhL3G5g5MIc/ݡXCmm(g Ph&4sz)8@8B8ͦ5?ZiNC8w^ $Z*GW`OHWQs &D@ i,Es:r eߎ䠪zkvuD`*!{sz]d5T hMkr4ʢ!- 9~0 ك9hD&7bgG>( ʀL;wu0C"*XgnYb8E4L= =D} }o1HWJ?r_H_oGj!.NIAaF]~F-& _%Tckh%?$\7\\iu͕3u$7|=d+9o`R ǟ$utwgQ*fd])N283XjijnZKeg8{ w 佫ɝU{6m]J-'(E8-w TokFtҫ9=q74ua{B;ex%r$('$G nţc\ r3ZͿ OuNeE+Q$ ۞cTm'5HMY=iG [Vc`Ids?xoh Y5肔@pQn<_Q(lpRz@+WnxNU6g1ҿ2fGr*Z";xCc^j)$C-}!`(ۆ},Y̼᭽κ,YiڌPCz3x6[]tPUG &ػHDw x=D^fNH#C*pEWUnYUM25]Xay u8!灯b7T½6RB]:@7+Ud;Aw L]Y]6 A,u)Oyuhَf.{(WH.r+K,څhǚwU޵4Hw}1*f%I5^3᝟"3FiZKAl]:o81ׇHsFӽj=6pdI*}M⇟-j*P I"l4:x B>1cRժ+k%,@L ?NMv:ufX# k7sQxn yZ]~TdqD56<~yLLHwkX ҿP֠q?z%XJpF`PdO乹F3, HŨxveyy' gwv 5\+ %3&ZCN?v.*ӵHY":1mf!r++7P*#S 3GO"_gQ2\ z@cVѲҮ[_6pcu;4yHmO1~_ra~l|ʩʂM<{sf?ZAA⺝7KObc90o+s~PG&>;U] INZ㲿_Kn\\&J."eNSSM`j>%DH(1-n/F`}+:1ȧ;)C9=Yd'BZ+JQl%} ! =Ӟ;QqŒJ2ӽ[1d@N\} i⨌_|He kJ"+C^r?DcXƻ?mKꫲ_ZQ:FRTޘh tUizL 2E+94RwIa)50[e[>{A s$튡nTpDrCݺ_%幣1/M8 bygq_"(ߡc1A҈Y3f4^(5 fsX'tfJ ur` zi &zH.$j d4-!?(wـ Mr_&Բ<d(h(q<:KrJ_l-rVMfSs nv%w$8X3RYe7%fxQ8g\P7Ԗ`ZUX(_Y1֐1*)a:B'rWb҄GPK·rD S]5K0q%?CY0$lt@JWO0jSx쇮 ŅfZޑ1#ǤRf2Ѧ'O6nZ/P>bS拚&v*׈]ml_Q{K}ll8y8eQԅ ݭ0gmC_ͦ.0=:i  0JH~vT{Txx)ĨlW 5Ii2wwoT|ՈOr0kGC :;{HM8]<7ɡ2a{¤Y"b=akSjX p˱npY!Qʐ/В\k=m='nEJaysp`u0'YS:=<8T^9ɽ(W{wi9u}-k4.XŬqZCVu \WD} @͗q]5DcrU{_GBsjK/rIrVAb5y Kh8% &j\\Ȩ|OfmRDWFQZ-Kƾ(=zR ҆{S D9 *h In шˎ\ <aA+y;tު;VS9NXw}O F:riQ]=7kG .=;İEe F09TԡUHI"LhHYMه?}|$(LҎ6{ lG^ďq2MBƠ0Yb9f_ i@F)ߎ􉶭?O^\aCa%v9WB<΀[QC{ ՝#IOTC\(N1>2A{Zy,Y>ܙTr@Y`H\FHƴcKCBZToOaϷFWicufǶ^ ?_3*>?xIlsZ@+<] \fbz5B?"Yi4}c  UA>N4cG%<g5w?FeY)iRaEA<}T8x4%㐋f]#RhvНӳ(C؀*!rC#k۵5nv0 YՋ!Qp=#5W;Bȭ,㕔O1-3]9^vstYr&]G\yKVpeİbU"r)Z KwB)f[pO4VT}w?9\ y/ĀR<\` 7>#b .앵FۙsGG>b%REccك""M֍kYttC]+"#R0\NPX`XFz@N.RKi+Os|2FV(&1 9A.h(^EZzWF/z I3zq˂ >Gf(vCyܶό Y/x`6z3!Y jw2NU/r 0Y o'OޔXԯGP tcrixosco]SÚ61p!NoQV? Jى7$^NcuY V.|BX c1H&GqXgFDO1wfV SokRGsaKx `B (Uʕ,⡲Wɺi Ҩ pe;_YylnUҚ86La{z;` &a6lI[T}{$ӃG$ zoqvbqy@AY%JNIP0>u@~{+Xg ,Cݴ&eASs\*;6Jxh%%kwgp@8`^O# bİat~{NmWvm9yEV!lx5-JWƝ F ߑ^5rOwR!))6KV0s}ɣsI7YIƸ5$U[:>Wٕ6f , W'|9혌hy~)"L7-WaiK.?Ci a d:QfQXSGu А '!L&:gN,(%7wPD~2vنW}qʃ;"D%ʳ1#pg 3-Pg6)3+c6Bc`s gZ tإY`)FSYHaP'p%hH4cOa&sMPiU) '+W15%dLiP*DW(4N@ݸLA|OZ>.d~ SPviƩGQrFi3wpփ jj1w\8455Ъ_>4 ~` h$ٵPxɗeZ2$ŒVk&:iGD{1GĦw]o"Oj%%MU'cҔ\ˁ'r#bε!Ɏ>C.DNbn6!m;ҙM%FyD,-9řXvYv2g8!$u1Ga[ןVˢYzuO\]WUp|}+ts~~5(Od'63G$ ; ~KόDq34ŕVLh=hUUL Yl"e={3>i3#odϝkT/n~ ն66@r=㧎wg-w`.A]T2@?`Sz( o^ZFSvÏT"!k,W6Nj='ǁzL@AMjLĒo䦧ޙK)sgC}k^R@no4X5{'3?ߧ;LntѺ9`S̭ϮFܒ0>0QhLxy3͟!}=i^/~2}w\JLe5id^1ȹ!p?A񠷡$To` ʭؒ緅y)nyfXd61`@?$pp_с.7v!D9ڊTircԥ MĺG7 ͯfDz/z)V֔ n wEI)<G^;E3d`ĤBx%ŧįIO%{p@Ŝ|L& &)gpBzD=9VS$U<,dc Z'nqs%d{ m޺0%/UsLJ8%clЙ)8śQ~0G]2Q,Jw^#>7 w5k-$-VFVeΡ%Q}pQ.Z)Hf):5J>g];Mz1+?s9Tܾa7%p@E/=wJFDKG{$'u I/ڬTgK$jFWfB03OJa M9:tJ=2i Fvlu"1' Gr'HnQw~5,*wD#s3~ ԦӮhUNsnOdPl!#P:ȓX< 1'D:4h NҰI2ۮ*IW;04mkNt[EV96|/46AlM0cwƳB)A} 78t>C}f 5_`h~SyIЯ8$` B?ح,Vqy >OIJ$ҮO(/Z=l2, #j &~!\Y|. V2 yc~qYT'rn1avj f5Xhl4h Uf5?) u?5л V+`1mftX$U@YsWַ36PǣQDsc}G"K + JM~()N2kgR$!1TGpPa"(n9a")?L;zP(De߳Z5#繏ԽDۍ"Xv&,V6ePO\`BNu8[~&ȝ|2TwyFQ[F%%EksjQj['{h|Q;!xh'Wt9D5~A|ug'@SEe5Qˎ,N.BrEdc aBq=SpINa}!m8bb@lrLLڙ.gl./wij%*&\[LGq#+rSU(^%>@S1I'iӗ%`}'|!pzM]*%n5]dE4= di";!sm4@sH?v s%4+Nhϣ5fe aD6=][T?ՃP | x*cDC]0C>h'KMdwH+[aȁj֎ sBF0 9t0z (őgۗv>]3)cb/d Z6@EuAT~P;BʧO9^X~X(۹G4?L?Bz[E9Ew̭} K|/VR'O1:l88.枂lz]'o WͷIFD.׼p & {ǟ# Иٖ3 ҵ`Nmq$`yi"OMM SMh݂ȕ/IK{n_o6 2:Wr!j ňv"y$:~fx4&R5c)V[{Vyt=ma{w{ mc2P^ͳ| eFPQGC =k [ZPGdªQn$vf=k~bbx uM)w2DjJhc ؆tBVq^x }"?W~d?|# e\7~dklQ T~c56 ̎d}3:eXk:2GЊ+V I 8b+ID1>zwF" ~C7 0\@%W(pZqRtI~772TK%&pB:WUo?LԆK,Zy .Ood(8NMB Sc ,b~Q)Zt*`_1!u2$7aX*YXeY.X(HycsiX*wĆ?͝Y5[i%4=4֎gшxO.DJm}IIax/Լŗ7tٲmh@3;D^nxM̟*v%Cpr污U*^"x߈ 3h29U/jEV- TsPJānim3 d'Á@IU sZSD& ~`(LPWQgHr,8!+כIQc=^s[eFT\>:n؍Sa4{p@RK }6&m9XltD~]Rd.upeo<>ϬM x[Jjj);"]obMz+"xG.j0 y xm)t @;*[t%.ڗ)'.ԫ1H8  Qޒ4l`!g*o(@S6Yu o0E]zSظ|=zl:Mݑ0Xl=l V;d}~^b.n~ $f4.-jA{-PTa^2hSQFRQ02JRGӨ\zٞ08z|̺coiu8(M.K{G;tU{edZؙq #ag/93z0[0:e-HD؊RǸ \91b0j΋LKaV%3qʢv=\RR uA%9*bI3)-Ky)ko ~R̿br$Мt/{Hgƪ+oC:QM* >ńPS0^?+F6Rhw ˩+ p;0}:i9H4p 1nϡѦu3P'ۤt;\+n[d΅׀ PͦpQ_B̞?,^, hŜ&R'LL2~޶@۴ߴydcf6ח!kKjk\֑|!L[R^BQ)'"`T4=Yٔշ:m<PTxAf +9x*j".`):c?("|O+UO6A$1w)ߕ<>dCТ :<|vr,(j#K'r~O{)yW34:w0?E{2y 1#kln_Q䱦qVK,6'@?Ln˺I?B};]>6Ufۉ} &x/Da_p+^]bפֿ˅*LшhYEP~2Ef> b_d 仺~Bi4Jh#0IH,0сY2{Hb PnGiګKYȀ1}chZqP,U>rY>bxLFxΑ(-RU<ttQ3xTP v}vTmZ Yv%? F ×QFnZe`7ugT42y[2A?#cL-̧{B2t]Қ^a٥yvrz\]I9:K,tznBnɐH^UJN""ָWaiXHxrUVBۄ;?߾trpOxiٚw?q13ZB앃o( c Nœ*ijqO]_^WT ̿ 5tNșW3u K$ȩ!t*M\ |A]8:^ʲ/+rY:mu > 4!DOxIqDVۦ&q]ɴKM`"{Q$,C=5ܺ=O0~YLdLE̎ x7u1ԻӁTPZiJ|oj(ikһ ^zCWGlfc!ZIawЁCT)w>s;O<\=wJ"5=L! >NM$ܫfxzzxktW])t%$4ve6&o'֤HHJMa2PPe'qFKWs${kAL sh!l S FydAnM^4 豻 B25nB;"*yKq^yf!k??1l~1#c*Ŝ8Hb:ml\(LP([P`0$JĘM޸+gaX:3 o֒n2iXU&)>1] =ӓX6x" vɠ(I!6(Ac4p(N9|SNEKy]=(])rxq\!pYe0+c^5[6_0`}TӧE>}z &U'Z'wr%Wj-䷝|@Ctk{W2Z t*^:xWx9FA=fP`DnJwplLZ@wR[05dwɤWettӫhQ mGDJwoOᔃe8R 9tngZnI]>}Ij#4mSa\ɔ~հ@ + $6s`,TA<&x4%eƑ5PWܳM)>Wʨ<>6bKspålH6a Sih[m$ g OkLG1 ۛn#=cmV"J A*=x76Ҟ/H_r}*OW- T  JzkcG>in@PXv,菖5Ʊo{ u<Ѷ%`^&+ {=xx4Pʄ76o+13w&IZT(C9Dy_--6"/3N% !@mk\9~y6y$_CR];I^2;La' xO-!B Ųtz,YVAo?6*.,Ag_pFkK=H1 ƑШeдF&t#[)/0 vp,*#s"fSJRB!X1(Vx*$/rzȫ5\ru6j,""a>²-FւG0 klt?ago ~X!Q)sQXqb.0;uϹެ'Tc쯞22ݺz6+bE+؈"vg'J<V-=GxaɡK0,#Y6eȲdށ&!7Pu#PYI_sjc0lt#Gv@lmM>5!!-BJ_*&O˅!2 =n *ɏM7cGtc!zPSdZJ=,0x1yfߪ8H ).9lɇtz25Dc^X*d X5Z%(-t:ȵ_L":VWq{ Albdm՛xQ-KHO0YRT }ASg/GW;ѓtdksimҕ~:JSkN,wBʿ-Lwn\dxTc>ټˑSݿ`$DHӼ\Si23 !&EWeߓ;MM7#>$lP5 4 . VuЦ6FuN5-92q, ?Be@2aOY9nP_%W`(b51Mb$=dIe2QKlrXCU.dRT"S͌Pr:/D!+kY#˜("l' ?qBj_Ԑfv쥷vuQ(? -,UWɾ,3%F}$eEhQ Ĝ8t$MGI=V\JßXG(MfO! |=km>K4EɌg-'|b_N TOrA 9mOo^%^B53wD]Mb ]қiC:jQK?÷f/]_sUyy"bK)-/^U,RrzP: q%\m_OVKa(R<3 M{?b`p9۱9y C{v]>}Ptd.q /)vƠ$x2%ҽ. *ÈtŤjWj[+Џ#ti2r@w3mL棹6[ n9"`e{1yGE'G#Z2\G|UC`3m+J]Y7wp8Kz c-s>eM5,F8Ol?:KU;\uAoXaʙ(]\]T2]/ϣ3TW[:b+R}OD ^NO=;ʅZi,T_4$1Tu1/l0iGLJ'}EL=FvE~\RHH47:5()@EX_ɰxkˇ΍pGt5c1}|BV@\c p=9k-&rz+68j d[_l7RpuE2Fqv!p]ɨ9bj n?n"vA?5_5SZۈ9&BM֓A=E{⧼!4>B &Q}-wNɺ-N5l8>G. oK s[hlK˩~5U-sanig(|%</t8[E&{m*^k8ᏻ!Qas[^ ivPv[bnQ3Ar]kM7遛`3 .^x" rэ\чGR=%)gO"Ge~9kyhʼnމ΍<p?hd:>.S.ϛ`ޞ:Ag?y.t.Xr gj5Q?<7s__Ia=$o)`q /l\8]sL:WIEy .%J]l%xWPGX< )JHԵ. \e`V $Mj" T!;_zZ&|;`?$ijVTpɖyvu0u妳zS8vZI$K$<#$8v0CFV} w͕֣cqorw6ONޖ: C lt܅l>ʜ?G%z'yϘwi^5ks eb,v ʘEVT׵5W̝j/15͗PNqE*_>ؒ57ReT k۪Zf/(anFUInfn^z#"nWJ Ç x\TC۞v"KV)00ym5)tdȆn #lj\j?okR+CZK b՗_D]ӯ!nèIaoJ Dx"iWOIxD:qx yS eoxRXJ ߇ōŜH|Ю""W ԝ^ٱаx,& 4,!:|0h4ơu)-/Vx?w!8 ٣@k@Ycw~dM5qc%/#C$!{9nI2ֶ\]aPf@&'S$:aRbP n21_9ZNԸUW$E<+~ZWƤn9󻍈4abP2@x@ǒRz6P9#+`:X|ehlrIݡUs"fĕoKv-~aS_>VyUks !hEDSCvj-q+XrڠNu>  ]?[Bb/F!;.itTc9qa\mk妧G\b3YV`60˦oV7%1f(:Vh ^ͳ)@&{g]Tͩdl+?{^Qr\} KWHmy8tœM[/Tc[/a^Rƹ q+4 ϦUc/Q?CBcۋ`<&IYU #e-͢L,-qW-skBK _r=n類.z@{c\;nh.vA^uRF4?dꤋ-v;edfG>Hn^ɵS5xX, "?-qYk@.*#v5n#1GYxm<܇RLP҅UJ{)U[kZ< hK2f7IʐmS՜Gx]֐L.~% CH/EJU;?v2r0q©ۻC|QFƒX|UI_ƍCmVh @kN+UυU 2|["x#I[f|q7UuIx @gBN!YPiݑF f CtAa7^E m&P\۶c+XDAhI, :@\>o<P|9Gl\m{OPhɐF15&Y#oL"D ID-z_10e`]G}2%ށ'Y ɫJ {nޫNeDZxwbb&vu/g;-Ý_=E]lNkMcGJ*9O*~(rRum1 ձ xF>LV5SJ˜$WU`b> }ѕ~%\q2&>.f繅 e,E :lr,Vzz !m1`߈F=5<ϡNgøʎw?oR1QM 2FM UgG1CCd5jNz2j [\wlN~qc@P7$8ǔX\\%\#G9٨졊&  &қ ehn]P_VNE2ԱԕedSU08W7 P8%(CH.c1Y̌-E?}1^n;-ʮt,ձݾUr >Ih0z@8ajnX L8x[:%gYzJWvF; ! DuqKIF[eW6Pt)&JSUg/[:T:K^;oI+MRn]Aّ[%4`exŏk@|'6jg P21vPݜ:'g(@ߧ8̆NI~ Y#ٱp(!{hCŒD6|؈$d~rUCb+uw4TSe CMz; )|A!.AW[`ՊCU~P1Q\}=?z ¥nrMѤmk EA!Cc Q½7xNcxkؾ?_3?NQtfI̫$F‹ԜO%zt :$m[;\?z+35Ss U 5=Jҥ~jxJHSI6S-bH8Z,Zw='xVؙM`I> @1/oZ;j̚c&c,-q'4PL1㴬 R/85gtEwfjM6K1p]j?ڶ)^+[D:p,1|#Y'3lư#Jwcr=T>b;)/]e+PmmkMͽO HrǑT[ -v~N`"4);1CxPPon"ArzMdJ쭵u϶!C/- PL^BxC^8iu"%d@__i9!Yv<0r?J2fttU7:7O0_i0}:HoUcqy$S9`ZMHT̘dpcuD΅EvgA蹷 "]Zjm E2fM'@IaH>+t/8q(~ȿ. MAy*m ˆ,zʦS^yi1ReI +&d!1"ay]i(8[ 4hBI-Jwy/s*}Lt<͖0t }I:b{:?3Qd3 vENE#OŽ9#0*lA#ӎ| /=',[8U+pےB?r9uGQHB\-c2gγvS eCFd,]gV SG{09sWx}nj@ίpwIPX]l O+;ؽO|f8\L(Qћho;V!5ؠ6n\8]Nk%R)5uE[/A˖&TF9{4ZKaA0և&??f6WakW\+7+*;@Kw讍'(-c^z\hɚ0l^o& Dz<3ęyVL,h򏐄p7m vQ~7\aɍ',b'GZKb."r8kzb ^AJ_E , ^ź-i֭}7xT[7L;EtQ/\Wg<=wȍQXD[5wo*HR rkv_]S|,Ψ 73םaS>v.=ܛW+9E(UF]g+1׫Kbt]8z72lpSu->p.RK!p"?+?y|LE`+C BÇLн^AЃ[!։,ԟHPƴw;C=P?2I'rԨIVu]q2yUoIzu |ֈ ˶{*&ݙ` l7i?{۾"8GΓ.OW9(b׭,c~jꇼD'tI e8x$҈] D=l;#η6\6v̦` ˊ E$T@ZvO֮Y Q.bq pE<<>r>L qy}޳`kH#a8kqӂyDJ^{r;ؼi(ZzE\/zHYOAM쎊;)MJRDVR`VK5ĴqÉd n|5슆cw6 1ȳun6 (Ъ%+y ،hoiuQ ~-+PK^x(_z(OeH5aU 6Kjqgʹv MK!ct7b.x~-pEH_giuƁHX|ef ~_l]jR @GrJ ߠ kG|q)_Nyp zL*8E@,mˀ?U<´OJzl~IŇOG7ɖA7 r8LF85p5S#ɅY*-Z07sÒ'>5}Za^͉ ϴrKdO 1nI # #8(,bpCHGc?|{5Umgp\A'b?*744? ɊZVkـqo. .u (kQfL@H&ҮGщBDed:u hAߗ=dWu> 6BrX&h 59s^VfZ>{p/CPu)pH wAoj4/#5.6vḥ :O >A *, iK}ͧAOUN $ e.W'%.$U`WiܞVf͆roOZa۟9Nj)UKUj~챽ӑH=`l]]/ PNB꣭A:^*SA%7L㿸J){ GJnΤ@k$7u@`O]~{]>gGM}>Qj0Zv9Ypnw~T؈ mZ7z)0F%[6 ]*=7r.'tpa ^+kl7g$u%igv{3Yasv#mSV+>RB`Γ)ƤmV?ь'y*Z:Uf_gho~{0XS+ Y+5;QT] W-( \#I(6Qu@jzw!]yo>,V UDPcݾ.ip$<^2ߣ_|a6A ]?a ^,0Xx7hζ|?cNi4a!ŕ[H=?%,ahd,a, |?-|}|5 #CK7U1$'ʛ>> ?n8w7\i}Qi1.rⒷJgڢCffRPS\Π|0;K 7EƵ607mD ~Z,׆[ ҫqE}3Og >Hǹ/Qˎsg`8V[MuPL_tJNO<̰I( nXZ$thO)iIIOeLsK"fLJS uNę. uM5JF#DX$S>Smy6W`_Seʻ7ZYYj4rt|2%D~ί 8~5zΩ,4&bL$kF!yc\(|hTWg1_Wo:FL5*vJU@{Lߑ`3_"|F'Vg t;u->R!I#k֚Fښh2#7Y6pK$ xMP;T-_C"e0DPPaYUz\@uHQmsNȪzJ$XTͧ2,~':5]gm)2DZT54$ ="ugIސZ\D/ngtWvHZ,#aVHtk@,KudSL.Pk%t=h1V&gMC%^ zz=P"=Kz4f|PM,Y!"ܵ-ǎoeW8V"BTXgJ JRFXq#,>-O냢d24(U]t ͛%ssbǸ&m о{'p\)S >E,#91w1~Ld&KpnR|PϱpKp+ff0U uQ~2 r}NpRx[LTǵ#/hWDJjIr!2 eC/|Q)q^<2dfzwfo#ArH)IȎ3{1G|ll7t!S#pU\s٠;Lj[ nWr(ck5/t]3K#(≯XsIuKӁduVIg\`Uuc]zΈR_Ta8F kB. k/ds(eRg)lzܰHpC8 \jK+kV~k@Bw$gsxP̊MAwm?|^ ;-Hn*hDK&}\-j?}cѭa6rjC}M]y+?9=,&"!ƌCžI >&i?_DXDE8)&%p/ߝ7޾Og%w$.}\CkGڽ"ڋmu!b;I,cvz,蒴{|a6#U/;0;T'_S!3L)~4{P b̘e+2cĚǐ.&G0Ea^'‹TTN,byUFY5a%hԾ^-`p5=!P1h鞏so')*&X;a7:jdbۙNI|\o#Xd.;l((GδZӓ?}#1/]H7ͯӾGDCt$3VYthU5FwV$oyP,s,ۑ.J¸S9Hvr~#B;6x_3|yj(a=d31hC7/hǾs\7,/ w_>\<Cu.w(ttl4hdL2> s@ Ǡ.kXYYnpv%^gavݪMeժrf  U3!ks=R=LuN57Iy5c+eөT(S]̏>lݑ%~j- ]46Q#@; geb^@=Qit,e3#m`]_`.ZǺ)\AyC s/$Q2q5\G0곤>7D/_}  +5~gK|3 $?*ˤh|.aƧ5ѓTc%^?uq(q<(##_ӟPq `?(l >|F,>#.( XWm%]'/ƴ珈YtYvڪcؓ_߁oE72<Pw^؂ʲT,/o~k,4t%l} ɗzc[# F}̨m$uxjtzD9!$ M:}&|"Dm~uTeEDoq_V&=֟I-J50=rI Ha0;ӍΧ[2ʤSoV fĬWɽü=CLI ~h~“4 [B;_qdIחn/ TydA޸[:byߧfO~V>?8¨)¦"ǁ3&e"Q-,>C_L80wP㲖6Έ5 [ԂhnEzQHڣ<"`O/#IUEJ6TBtĬ;51SVQNΣ 甸FaKyqvERtrcR}f`pfI\U_ ÷q[h ̖zP ֶf$oh/{[ ~'`X3}F7 Yrʕ8:Ўyiߜ<\4X.ڛ4Nǁ>F{WӲPi"@\U _]hOs@3jIieKߕ%"'Еzna b~"o?V\kנLcekF/} tM'̘8,~.D@7ϪD1t+!^ѡ8[նݗ}N+oS^PI?ᶲML~*6$0VcABT[WsP=/Og3+ o,JNO2)2wn/Jq0|{YKj$u-JQ}ç2`D 4`M Dbˠ:~z&q_c=|,B 8wے@ wX3@:lQYę1m,Pޚ4%ݕ @16:LH\J`7z\_jKg W"5ebM`} 5":zL$Z`DvҬhzrhFooCO}Ӝɩ~VEǖP+D1jA'M+iP@KY]<C\Wnm\&F-fm\ /0h)xv3K-9Z'[B3*_S9 [~vll|P  #8F{-#XE>-򈙏^ۙpGV`"Tr[iB4a>Z+g D|YD"6O+p{[ķY_2ΧH%@@LX(5BlEWx`i!Ce "&3Jgp 5U4Ϊ᳞}|f>}+8O0_$x- 0tI;ŮX |A94ݝqa9ܚ*Z؄N7g& lr l6?13A@-|{oN`(ȤBf]ޯ{ QR2nq?. 温  w7=SN_Ofu(^^p˽hg=:TEI+XECwkD s1C(u>bwwsRtc扮l<%UZ I/h}AjR(n:%B0(/*5Ηl![d6d8:ݖ1%0r ?t>S۟7}x G`pR) , /-$3`hqh`X("jY2nʟPvC}iOj|Sr;ݪ9<.t(^+L4g"|{[U.kMN͟;g\pA#qm6Pe6R<$Ӕ[Zm΢x@YSIH\Ħ mycДq82A ډimO%lV_<JŬ^fd [QМF2o(Z,Sj]p;n&ZR|.Ò[j Ԋٷ?LP?-g¶k\ wF~Qi.5D9> k 63|gҡ_AB]ܐwbGwMWk&4MVQ[öfq#dlJYLtp/;jvM8yLq|֊믂ӯF"RdǽV &%P9jqA"-(s ʐgqlUw7\qQA>7z$RrF$ً{:$츿ʺRv.ưTzmUcA x%tTN<,эdPcRzPߛ'~bT|k"{ΒrFT=o:/CĤwV`;MG^ dm_{y"OEr7Qg"I߼(zzMl>D:+ -mN X3'#25*du.s_YێwsU ݆5V2Q>bY)F݁5)z|~(B)+jbTU>3 +s߲ !_)'kg> |ȭgY#\76NAK*ɊnW| +w*a57奡7c镙xub-Z %t[4BP˗4}!6Yģ >|x뒌|cuXNu 91Ϧ|& 8Rh5z{*Ji^V;TcFgغL{_u$k@~@e6-\iMAc7?99`+s ؾ%0 +(N&3eEW|vcEE`c5QXU }𑠼HE伛"0mhR}֛o?hi>G20YH՛ Ad/wD[Ж_ \JhyQQl>C`[ly/5ƄvHX\fV׎&/3oCuߥG"ұt:<9R"p0l5}[@6, ^XCmn. O0#IYmF`" <ïZw:`294*Ç%!&NVV*AΖ*חy(JtD޵E Hfr(uJ}uĕ> qNjn=UXr61 ݾzf.5tE$Kj$CXq #b[(MGh%U+5{e+gt:hPS` ̃L %0*߅t8T]ь(ѱȋģXe3ϙ! ;;h9`JY0Y ^"*)@IϺ6QV#(y]j  ͚NԺ8M|&,vPIafA]Vȑ7d5`49 s\ we65>+wEaܷKBgYyaJIS^Lνo$t"Vsê(b~8|fe2p׋(?ajHJW"MZ18bn/wkb$Y|`OQW+'Ka[5RuHŀBC!$? {{y ?¾8dB+ >uЭ=np:P G_?)h03KŹȎ-|x`0p0V]9낄J-Ωv}e邟ϟsH=݃3yx TWyR\-4>02hJ|;!=Q}>f%Z/qQC*Y1־odc~+;h#Fx>qQl"ZAM&\<3 YVAkp$ e)\M!g95 2zlDg'Q|HnYȜ#1R*Qt\CBFwR@Qp.Yғ}FRӿ&#?JO%IHT`eUِ300^ H$I{Hp̖(W dū*-]Vzj&@2ㆫb]@*m,r>=ƠЩ˛SX ͒}zr^9ˋR;;pp~0\lgTyP#QsƄũOrSy8x-{%2@=[@!p @K?GvMl_PoCUi (Ȩg n-^F"csd!FB"d8Ab[}LDqת}]9]JO@.1EQcζ}Vr"S Bً@^5\u=ܻsV4.A@&>v+ @opxNrQwp_.(B?7|R 2NۃN&Bӻ /]I)~-6˗o|Կb2Kj!.'R|Hx:[?1ҢlLbw["QT+mnG岠Yׯ JZuN>U)FHhhFrV(w ' 8Xq쁐o}׭v^Gۦ}JR\O6#B17H׻5ڵGnbR柾iOWE7o9-(,\Pe^b|gnVv;PSMLPv khFD|.~E)o VE/P6̈́V$D`Qyr ksb^nnS}³5׳Mqpt13 4NzrBP(tYYj,ʳ9MZ4K8ǣɾ3?P öH!` rco3OzjAP{]L?x#'㮐_6K,-\J{büZ*"VM;O}2(Ȉ8&n9t ۤ]V o%3|H6i-o8]XW;{+oi8/ 7^*`Se)x30T!Y[47 MVк FJwrqI$Duа}NMn'}bXTR=3ų4=#0S"ۗ)FIR> J/C:Et7RǞHP_7&~Sꋓpx˦߰EakYE~ hs~ s81YbZ"UK* JD0'ha695> RaSG589 _ kE6,D z0a59G+Cedv$hw:DC/^ TuuF'͒Vpɯ@RZ&̮W!C8+1b_4J(:Q]MV&lTğToQNO>7كD]A|&)r?[ Jk"I֎cU5VQgǣ\A2W=/0qW~l6HRm'ڴ;k(9Łt7|#jL?#5SgLj"̽q6ζ4ŝ77c1VNOJЋH &B*E~B@K> 5_wj6(0ɴ] ŃL/)FM7g4d/3 Ft%Y|:*_RF0[ހG ^=RBD֛],mZSS> t;ąIm;k~҈o t(1AC<hl>+*p/u=5DxۓǩiL,5㔇^KKa8YoP?ɗ␂K xجaV1MiPӕE>ckUyьGI9I2S{{,oěYJfXm9RHAܵC}-%8Gbw-G]1;?p)e&ے&#sF񧊈Z+o*5UZg[)uge֓@d6]i} ߐ.GJqv{ZXnj fWܙ/B@/E@UHǀ8%Vc *JP J*A Y*d%T~䱉??DءB"frmҤ!oW3z__nop\<>eF0 Sl/*kkkIIyTj^~~Ϊ+M4%Ub2L${<. mZT7v}}-fY[1ة}z Siw_4%,(+Liy Mm@ |vs69?/ٲyh=֣/Y:-ݡتk|2uu~BМ46?W0r`}hƑ~c!۟p9xtAXKZX@0VU8:F,fBF%uiqfVP w08|@e,O*) TbUXX!T}vbPIc>(=ok{NO ]>L|墢欍<"%\3V7f'[n: IW;/0>5t}XUr8H- ~|+4Z0笘y viN F^z\B@ѝe!)ˋ-;aSܰ8y; "F7 4}ozR MXm Cr±5Lq4w (̱Z&3X)SKЖY7wJZh*gפÆ`?Wn1q]/ ( }td(>!A5Tz:N*uA&}FK{DV9$*$6uSiytJ=c!h'pOjfbk <6.Şy{ n *Z^"5VB~#Skvz'fVwpYJ#MQɧ0<8*4.}Ey-_-m6ŧ7՘%1ҵLĪ=gzmE든Bk:k;l {\t1BI3-ҕ],>`&M.U+NxUXaghaLt__|py6 w1P0˔#wCnE\D(mZցH%yu_4ɚ|_[* v0NJ6ROJ?X:K C-:ZȉWosA ݁Pr^G'cf?zv s}D)'z驜ު~ZNktªiz`fXքt ^C[AZ!$"X (.]pApE\L ^J<+\.ϮS`X+>t^(yӸ} @}(Z' TlWw X5 dFĖ 3$)%'{|[pE 2 Y~F'p\)<͌wKг1kSQk_?2x+!בi 6Y^ ߯U,cj'S] y,K0,Vc k e5ڢ O[U'j hw @des?Dt7ŕ̃hhg;xHBiM="ף|W~.yrт2ELZ\:'WMvк<ɵ%X٦aM<2Z!Mǡ k{Ewʮ˾a A+pB ޖ!Fʙr|uK$YLKl靖*mhSb2mҬΪ/ˮXwSv0Ӿ2*ʔ dyl#T|Umrտ8!N!ք(߉`Y}2 pÚUJ8%92 zx8ܝ6ij'<&TͿX8펐7hE:Z EIWI-0f"R: v4ΞJ [VUUQb\&~bJ_ûAChAIx I5}kHp?g{/Z:[Iy1g.Ŗo_# ϠXlz#mnf<},"iy|vL؞@1cL ؝u_펈 ]P&B\ŅD*'<.>YE9-]X(ĴiQYNM!2<5q!_.#:~, D?pΗ #5^c`2'wOƾDU' v~qW/Io QC12݁ͳ%Vܙq&`ނP^⥹$o- x8&lՁrԊ1JCP c> \Z>b9Zas dthN D] ω]p/ 9`fcFq`.vṦ*ɲ)*MulbTHöEVC>g}a3OhӷyJd p X, R^ҟ^@&594쾙/g#} 4`|rјUOqS'KNT&/bp}w%}[91ȾsDՃRlCe/x_mIeer-rB+|1iS7DY*k˫t |PWA<̵y~ :Gck4&}=ìUy@Q3سiz@" I/H yXt-dG9b3#\x *lK*Po L F EB)\LEvL&lb7]<7B}~2N)+)ɘ?0VD$r19a-NT鏴x銷cUDd/bM9PO)8ϒr8NqM?0: V4kԌI`Ion;=w׷ɜMrVz2a!Q|_G~|NE(ash4fBC0k cJ9)C#?\ L@^l:ܚU3"wl}7OWRi7Xc jʶ _2I2O,9 ^.[8,tl GkUueiHFGj"ZR^\}:JL( ;.I?lfrQ7 %jY[CMAtULl9 %51!iض))2@PE~8B@÷|?ǭ_8s*#)iz6X0-嵱\`z NUZg2CAFKK4 | HnZR#f96L ,#oڄ 6j uw[Gu_P!Y{uUk4mORmj. -աX&EJQ6ñJt,qڈEW `Md8Fbp(JZ]:mb1>ΕF66m1mC 1l$7s!#/:!nj0Br s էT*L'z\gCtm:xQuL\ۛC !lR 6q܍1dCPyQ*Wc<.sЭCbiH}}54{O_(A[j |vbF}|#n a+x `l%`b>e:ͱ=C6_VзeLj%RvPiE׭drIVM+V6{lZ }.[$KU,m&;>jf`> Fdѵc6_j1DMJ\VNk(w37in!#{QOz;@M]DBrO=Sm+Rr3,`f󇔼+IkYT6:+;&[CKUʦRV ݎUۤ%:X\$r7`ocOz4H.5T{fJj&CiN7;׌JHil~=aچPG-vhL-H7էw<i8$"nB{#tཾ^KuuzDɴM.?lpڈ6M_Wf;-4X{xx8=RM$qF?N ˳ M_h  /GtȔSSLѠc~*Q-5\2J>XfMM t66UzI7 PecU/-I(f ^hwnD[;A X?Yzh⫰̚X룃5: pP`4: G ؖ@M,`ݷqXFe_C{5Ͱ*pGl/7+ iIETǵsG{jǭCVDLRm)owHuSyZ\n'_Qj2LMA \z3^tpĻd24%QکݰRz[(K\5k7CCwn\<+ ~p1,aјpbJSm \uX2Ԩl "_`y:n(M95]v9]QD*}΃Y =2vS7dt ]oaU' 8Q" |_SJe#FYS B!ǐ''UB \Qx8WƼ ̽юC;/C|md78M)5L2:-^`\=p[d?&3= S ,qRBCV9i!k ?bzW¸U95?uJzhx?ܽ Cک =~GI: wG~6Elmj4r ߊ.8y9"!2Jq~ggL&|zSB,^nEhZ /a|.tگլjZ{E,+7}gD600etwd zNkQ9u4yZvg05 n$V @N2NZ2U:e>D62 A' "zrw::ÎUkAM+o*  \;/:LkG鞀*bTWgpS#]ɾ}P錖QEx5(/m֟K "qU{E¢ltU#2eAS00l5,-qN] L%)ĿM 7$HG%ز 7;ngq=筁W3jܟj >0Q~;K? Dp  dD-]knch 'vPDQ# QL/mk($)d- 100~3\ *<gaeZR[PZ!e9 .,8NOz-wao2Kɦ'#רx2rn{Tl)(ZQA%f€MLgy $Yj(v}}`dä%`*YǛ LhHΚp5M9 `d8-?X'G@EL/(ȵSѪ1Ef`E3,),#XiCضB1X3& 1VfSWYHf$"#C81Ah퓬^󯏵) ;GDHcaKf`.%s'^u¾۫/yXvF87I/ʠ>nM:85|&$E74 wi)x96wmU.ekAP!)T#+oP·i3'm|k&6y ; }eC.K .pQdzpÛŐߴ` Q-^anтP>N㔕e0BCC !?s'µ8B__r4$ЀirãLy/"ATq,;&F5,$GF!QG3_fm9`+J%@tK ,r,.\ݝ[U6Wn0-<%_B&!d"9C=bPw[LQh1mZSYrGoѕR /"o὇ōp2),p64(r9PWߙb76vUI/KQ1;_Zd_oʃE'^' kOeIbp E ߱x䘤{*J c8LSܑ$ >yD?NϢ'%9XgEL{gQl)(Pr. I4|[$ ٓ%Rnj?'%aZ Kԅ= ngmd\":DuWܟpiC,ݪ>1kN܂`Z( D9B'Y* #b=BCTd=SMy:P\!: Wzmc˳&œE$llR@etS~v 󣭇KOa \Gވ"M 04jȒȿY_G ΍Bz`ۮUCfsvlΊѪ,'[ۃr8-n6@~[H+TMNv'Dp Ҫ#`]ڱZGu4~-p޴f(مTyDT=ZF H`{+ =HdUN? <|Z$g~]rHR% ϧ3>Zwo+ɫIi-''䗟6FLWc6L>)ҏ,06CNH2ȋ`hSvݠ [u;?ѽ_KjJzɐ-5##['"p-IcϷ@8rĸB 1)WkϓJI9Cc=7i/_jIEV!ʉCW!\N!ܾX vsxB3vQN]'qҗt?0@9*g}rب^Y`$=ڀ'k,WF`Y vlx}iѽh0jUSj:=uD*k[UDyR@J`| [0 J|Gy-}urVnnTz^p$=!0*_jėulk;dcKNvHd&Wf-FYGg+Ӿs* TR1f ]=eVh(kpt:ޜޅ[? wz^7Ms5f_[/܌cWGIR?_>Y̡l54hSo&RUwB5n7'/mq6Uk.*# ЧAFNFIӏ _Jrn_/nr9>"JJP%r_"ذ=~|mJ0ŃĮs1AoAvy e<%j!%2=/ c_mn~x̦A-RdH4' LjN>|s@pϟ$|3"y9*U\U*]n.L;Xb{4̈́h2ٴu)$tt}kܺDG\(ƮwĚ6{DuoY‘̸s+z` CDRd/g"o )H%d uhs;gċ,?q}R1w*}Ci]L3}Wۨ%ɍliKdڥ=I8զdS}cy|vZ=Թa O)k %'2SOx\4) 3yJݽ+FQ@GGl>T-`E|aNJd-$;| ɜVBX9m/U_Šv9^=u{HOћ[ ]Ѝσ/w ?8qdr,KPELxˬ>*ƅqQ7Ng|e7_w|X?q5wEy8wB@xڻAN>נYg U9?PG_/M9xdtS~=3OOc0`,~Xkጫ{*)(;S:2y5R>xwUS^6$+@}H/ 0G*>waXDoTUꡜ"xL |wu]WJ87S]FON@kJj~,kW3`FfAQZiٮ5 ˾Vܠ!E0CҟXSXM6儢pq4{0afGLQIΊe6d4M ß,Q羋4 >` 1ѭ3ɻL<mkOhNG/K{)0+ 'ߤ<KE xO"+\xIJ.[PT;3}]ncv|P5c6'a[N6{SeP#k+e(e w^^2xAY" w7 l&rk.(+_q ""K5Q>Ď-4\!Bgja1ɢ0x]<1'=ĺdȭ/¸_rkCa~C ynpc[lcw-;#Cz\:=$?;EgC$X/z^ g莙le@E>Q }5`;!V `fF]B\GTvaRb%} EidBxS=c CQe8%"Tfbcc?Hg.zRdG_]=TB?]J<3qf@uP6z V*ƪpiDu=SEh(W{<8"ui؈lUZ[f:A(F%`rUS;!F9ea w#+j)0s$ةPwiwb'8b=O~, {ՃV860r낳|Uf_zr{:/u&}(+n`@P""!!0T!Ϯ)Ն(0:G|/ovpE*@NW  .4  Ͱ[YN1[’yԍI8ڡ?dFwYy=/s=G |p.kf$v׳Z $53&MyGkY&:IW.ɻTRٺb_:X5m,NW aOV:kd&;ဇPW{^ET@!@h2z_-X 稩ĒmiUZn:FEkEE.%^φT̼Zڸv<;j4990*!?20UV~HK(uxeH@]4Veǒ6hgkI+\"yWsKUc+dъ1x@ ;YoQoI"{M;NDmZ[ P 7o go|ssCxU%,- nvT]W>I녲A`1[$X5T}cC ON20ŗ#PJP]iaF}d}tUO@jIU`,~ mⱆO:Io?G/Oᦼf5$j#" >6/TmxNKOCiif1Ue>)a ɦo"B˩G{ p]w6t+]-OL&cOter#b6dQrc.')ޓg6HNHJRe!H_$ZQL5_ ~B܌O#wX WP (Wg;⧋(:L3'M1iУ^R3|jz?'s\Q0$)(J~qyU QGX&:J=/Q-{4;ƟŽXd $73tY%DdrUXp/F45. iy uCn $af,%4$[_VX],Oݝd߇?d1Kd%kp<ᬅ{ :nC=Gҫ-!{{imѤ'GOwFEF8DLgnBT9=% ս0o76e VeMKxM zn x&TGi6B)ƉmR2ol0h9mm$|ZZwA|}`Hgє—*MWW—k(d4zM+|/4D̑*D~5"N̈́NhMΫ8f.5W5d6;%d)se/`?᫮EP> ;z[$+]{98Tuj )+چt*{WOpyD!_\kg`T ˶Rb7mEnF!R/3ggXLRK%vs76?eLCY#ؙ'ҫGw!ɀg޼}.]Q(SeqLOE 0}eYjpag 81TTɧ0V&\F%Oy{%R={?E3 Xn^!*v\!xcj&OSbD{okݠF=?{֔t?Kn^Ş${ */xxXyv'J*xuhm v=BƳ-׶= PxTtˣTõ4 n\NS?1_UUXnKgjsʚz젢|lãz2&yP$Լ[21\O@k J\s%sM0?XE= &ziZcNFvFDh)"ѵQyAXLv3\&n3@sb=كb1a?M]&PF] pzXރR>Fɕia,oZi#3y6F倀z3OѤS I:H?]`7 <=4tED4fz~y|nI_#qkG'óXwN"fWC@2=kjOkQB6c(A4aHĔKOΆ RİVIkQQ#e,RK5EyxL.m;-0EZɖ =TMW-'J_gUf %Νz|s ^)תC6l}+Dw WSGGj2Fk=PRjٍ/#Q= /TP⛫q :d" d&h?0Rcq/ ֺ~Fӻ |슙=`e=/'u< ]ZoLX Sxk0@D/FsLeZ$ 9WCxw%zJ:x"'D z)LldT}:K[!k>)qD['&`z>yemga#%3&Tbeƅ15]1*зfKXQ/bDenڀ=,%D'%˒%e/+]Iࢩk{!lnר*E']ynW9;He#'jmEWR.0ӋLڭJ¬h7AȽ;7P1aܝ1 f4ţt]Yϟۑ8' 321h\zBR iLvmIǏ9 }T waKCxbC' Klnҷ Z3SU$"mu]z˴I|~wb/HB dB'u@>{j^{P!LM$KvM̖<@֯Ӗ@cg{6ycBZ(Q=3m|Xpy[q-3iDT•57r!d'p^L_ۮbQŷQF57HN3界S)P ,RҰ Po!BYԄn=moiFno%hg+ZWBL@{/gҰVu6*fJ԰\@`!Rgq;)]A!,xЊ0O!^+:wVs2$>BYIJY2̪Z ;\#swG>E'P^6O }ͧfH T(UWpd)=qT!hqJ{miN6BNҧ1Z-_uj4lƹ"Oa˻IeDt:B^^f8σ>IVd xFfٖ-b" eXqxRJ5Udv-Z3JX%.<D|7V"lDp  b n4qcݞ2cVJn}^*YC{t{ޤk呂~M)%Q[DK$|DGÐl~IJ RO$6eo=Nt `'"ftz$!GS{r@o9h1KBbxVj~;Nu&j&DM>B%.08, fz2L|g+KH܋ G!MlԢA+^ҧdJ /BA*vCO%l*LLፊ ?̞+\n`5>4tkaIWg߉-h}➻q`ܧVKPum=J>JvOwO'OjZv=jXe,K5/͐Cʮޫ~r&ڃb'QR68õG4kNveY /ބ3/B@woLhQiU7bk.7{%]z@<|_.RyNɚUF: Љ0J `6QB;禖$+ -1B<@`@h|0_%kWXO]\k@b < [ݴzg&_0Q5a/FˊͻtcxKiRb 93+'q|Ě޸$WL6hD*!<^Tqh̹vGx1-|ܪfv ni6с7Ŋ== {إ]6DRhĶؐc=)Æѭ4?%L \iM!>I!P{?`9 =?jjm?9u/U[!Fqq1 ⊠7R)?W"7P4 >59"1/&c~͇ǒtCtAhLb)G! D7THm˞VǕ{ ݡcm{N7 HF֬k#-\koRH|w$ltU `<$ {,O)2&F=rFIW?1]&]m4^^"9` E22F_m'/,:W892 pΞdB{OcskeopWHNA A1 _119'ao%-[hЏtW^@~Dgfef]+YᚭCk;ǻ) \cW>1f bq2;:,zI_"d1J\y'IkdDިIf:+ѻOF^l&lh;x|{ CGllHb>LX;?V8x-p*Ie<k2jz㷫:BP<<- A*GoNWbu)to#?_ބE[c\:cX1˿߅*' ؈(#^8c9z^~]lcPJyf 6)Q4 k'R%g_rg'iO6< ف32}0Cn?gL{;!7GiV p{[;>Y7]ӫK+a>xog+SS xr'o̱?gwz3.UE@5|1Eyf0w"CFO!4lw4Ip( I8'bU·N-2z< )ێ1,pa:o*׬z/B'a~t}5[U. bGFT8&[:-pIu[S- nc6lMd1(|*ęc  Ƌu7k|%8 ,9dMzJךYliг5cq h9(Ia_>*bc2]X2L¦m_K9o,v ۗg q WfI.DUlHX>!}_\?ECHu-ݗAb%^E$\Bڮ( ["_):=9 ݉;hAf2 zXfenY6p'J:[JM0=?9R Y9BLx"O@!lA{BKU҄Q137\Y/ D0%ĹC 47zX`hD} {0ƛm;>E[K>,tuQI}MW ?]b&MNz;rkSFDyAon\֗&=sp*E~B1ꚑI bO TWj(S@=B xLkrA]>xt+5jE [MI9f`R y",Okn:#V@v$ZIjk&ݮrl$/':5Ac1Y,")+Ƙ 2gm,^#7B0#X+7>X\oNIUxwZ>A+wdG0!-4tʀWawNArاQI "~&z [} 1/28X Nx 7IG}g#{T[ޑ}%TIoԻx.]11;{ އw#_*8$I4,5xz܋*%F\ۻ8,(8?p# h7i ٜwU]:ak:r*OD\FGD9y:Xl;b~R[X*V |tkࣕҢM1X}.2n]nvd=Fj35U%i f +t B+Tŭ% C7ƞ8i)5M7M_iӕ,uY^R3 8 _7l^T ^p‹WJ:Ɇ+0*8k >Н%*/զ=N[}M'Ձ1>Vyjz>#8cc<915uBxfV;&Z_>R2T@:*\J(cD84j#EsFѪg޶Wn'yWuebVrsku?,Nb˶L,ؖsbmgɢ0䄧$<(G8(8>ή;W&6ߴ歓6 75 3dr( DqC%gWa RoM->O)D2M*S1>?!6I%(Q̄[%Q'nTaq&؝WqXVE$H%~L}a9}DZnޯ(j)v%&A! fdˉ HFI{9B."y4uKfppTp}wX/+'A'TF C8t3WsrZ&\iP_H'fIP4AÙddBbSPYB?ۀT +. j20]BG$#knBk'IlLcQ+w,v[9N>FeUJ3P1Wkl'ÌIX",c}+T.vjދ`.yuڇSqTiq6ܤLdYk Ÿ@Pj\ Ho!I ] V@ّJɿ0sIk:F ̛b'5^9yP7Zz?fPIkLZٿ瓜yViG[`b&Ȥ沎+ۘy@l;,\7Zu>elWbICQ2\$ d<=5E@х$ L2m'#C n_rBjE@vchn:14@v(. @4%t՝p9f8|PLۢrۣr{އjW'yLƥٸ%&8nCZ>3Z+X%zVI$O1`ԪO&7_~oqr}koF=ȋcBҲpXČg]<[$RjH 탾~7ٝaS튃˪cf8׶&Xd9 :621Oh)+EB&&Ö1ġ]xڷ ySM،]^^@/N$t1@r{-Ƴ^$1<h _$ۏy `~];s?bh 4;ӏG܇؂i60za>Zӊ=>ПUB:"#RYdLo mZ+Hn\Ad |LJ wY o8MT$Ncwo@w,z5<{b0kW|H:#;aڡpyS0.|0(Gkk|.x;p GTW iA䓁sz`=RCeC!7Oj;-L{F/}yꀳǚjQufYJB"W{sjWߵIowV5 `D%?A!"l@E"]ҫksu #,.(# ?BmL~H67yE9>, 5$}Ba&ʋF62R[#VuʮF㨾R&=*#լYh+t Zҗfݔ}7w8y&p|]npt3Fe&̔_ f<>淠P{=3A_AP932/1E%EX>9ᾀ`z!lϑ7zLw)0aK D9j )}jMtAl) !nj╆FwsݽC.?7¿8Ɓ'ZU a8hmExBs$;azrC#([{` )_qr:mK^6 /(t_ʅ5ne Uɪ]mfU*bB0,rtDWy<΀Ɂa8;}I|X2iLzbj1AQuPGsIfoCM`]'7OhPQEAۚ ө& 16]*V<@%@gg9MiwTpT,n(<[7psAS< TNy_Ak*1ʗUXP2a"t[Ok&"Gʕ>8&dnmsw/ Q}2cBܧ H;7Mp9{F u^ vo 禠i]OD$]rθJ.)3Auם]r|yK >O1T*W. ΘxG2>!ڲsf}Us܋:梖-jRP>[nY_ "R*o4ڝ)U|%A!+tbLEtC#yS%8hcJ]ÍX#e22^AbVHOӦ3]# xn Vi'psIf9ܶ4Ġe몄۠OUGߒ[tz{ kS8}XZĜ7 q31X82l1|)n}I@ՏB([J+᣺rH8.olDmEbSr] N'IZ5M֨)Et(!b5)pT? ڟ8gh"'۷ݽR>Q>o}XQFE͜fwoC54vVJKB{[PlZv.ڒ6d `ԋլ[^*i$wTCdK0H Qy$SqC3j jbt{H^.c>;Һа;a*vuH2 gHRhJooZ夠E;ـ".cI\:{{'k03o33㔃#KF"!!1vhubV,F [n2u˘C_`&G6`|$FsXd@ X㟻]ڂȿ…dƥ>^\^&wfr NQDR֮!<1g`(tlK9r)p R/8l>e}O>p `s 6RY/>YKm`#{\*զ$R*u|9EG=VK=[a?zP{Krߤ_)@m"-Lwp]JEh,LQ@MUy?.Z`}W;W[*hOmݴ9I|31Aɫ%;O U:@w]!apvV$ 7 !$^8~P$FVmV>yReNo=kW9Mt4ӾQ..{3-w7 4%a {4^.6T4"M$ w)%V]yGhv:B;-A.a ˎZ(x *c%lp 0]փDw9+HKw[~ /K'VUnu1UAD[N /W(qd$ڊ=k$}1/s'uA'U)rȕe9/]R-!oΌb;ty2v)7 ")̋e!֍`5o35XgR'QJ!G&UڧP?˙pd+).AI7ƘeJ㥃t:'N9ԧx?2 y-,àLn ?Ϡ- iaĺOY=*uGُmdL)ꓢy2o37J66۷56! ^5 P J)Yu9Py3J hGZKaGa֪ж1!wd%myKTf |.r8D[:HA>f+Xn"^ W==GtDX#|>N]T=ф\-cָ0$kS*M PKK|/, Ԣa%5HKvqt%\+ Gx\8h8:Hhj4}%SZ2%/sg>ma#xFA. wQ:kd3|k]ѠMur#ͭ[U{N x\=Y| [\uj@[jDv*&t5Rxuhxs ['N+0nN Wn55ižF!i~^ˮ$+S&#ju㈽ǔ'#s[Q `qƫegɷajZ2PyĕCZsO+$;prk)]ƳRMye95ݔ\sM0bg`VƘ͸[oJQET gCs"AEO}#tZ`ks?_\T~Sm+E ̔ Լ~XSG=gQ(3tg!x{6m/Ő=/J,5;qq Jbʀ:j/t5lW=*Dj\L[lΚ*C* LZiڌE‹+د{آ~~rfXoCq]!c#q*Ý GŅ3C=v`s1ե[m,^RF^3|?fY )`}h łާܕr( t^ ןd7W׫8;Z}I}AR"V2҈kW?+D.P8C%St9p@ӇIQdY˅O=?;_o wqTįxѮ&ןZ ` $,XdA3ȵF}rn wBS+F sv 6s!TԵ\>hG9x,"%e]ʦ5@z0Hz+ބұGc鐲F^܆wĄ[6XLA]Xp `&b[-# Oۍ_IWRӚ'M7lIʰ+ h9%2{0.5YO/%/% "+m_2cꡈY`P|=!sN6\ژxhWh|Ʃԇͧxȟ`9TyDT'zsЖ bчI4b0By$͙_G<Ӂje[H.2ʗ YSx L=BoɺhqHc~%229*3u?2޾71+u3&[9[mԮ>( [Gea[ؿh<ځ=[5nPv̗ Rbʣ ib0CI{VEh6~g|Km+,F·rCxUBU4S[oS]j~A9I2ky]ޓ;x(a77**PevGG ۮ iAVգ8V1&jq2i{rZ]zbؚJ-:Dot։D2=EVp3O4PZ !kdd$JmwG=ϬfY*X%ifk;ås]U/]}eE0p@5lZ |gf+쐛`_@sGYȊPƫ늈LN=Nt{Ň &:P]P\yB~<-w;ywbd"*]rMÙ*Ox7eECNtyMՀe0eޑrߡI JA-wR M"ʩx`9LGAPEڥ`")?Aa01Ys"7#h!8O4iPM]MȒ?;ӔCp\xުfqjaU"2c'ܶBѨrJ< rGWRTHb>:tf&v˻ /W\ L\a1iDxɈ.-րxۙEcX[ x{nP^"@.Ş`r 3w3GypAFIGlCK$bކ#tot]5"]B0i6H)zh-\;[;QB't/^ܡ?}M%l;!4`X(]-׷a a'=ot[4ټל;@ T&}Ɗ2pەo_8T؉P_Ž O~$lGY$ U-4B?Z>+YJPWMrˏ''L:sڌYbMnpSXH}켊}Wpś32̷m(.kϲ![[DF&^E_R&"l: ơ ~F* [vUi^\@nGaYxD5wI}` fA~qM z8qPWZVKWf!Ъ~J.˘6v~dܱ MA~7  YqT1o->ڍN px qn['`{0ŕW8 zpJqޜ#yhR)f|g"+G8nrP$Zb'[w ufY{]H,Hy}S4qc7j h,$º+ݿw9~38Q!b\-}Sth[}M|YyfnTطϺs߯o=ԞuA|!BŐƜ E*))dFgk !)N/:5d+1IgI1 Τ~+"p{ '\,1^F6 c=#XmԐpu@*]o> ` b. 5хk̓MS6- 7OZ@b|tT0SB1rj༟l*@vdDǟ;0&D:K.N= w B`KX!&j"x-*ʃ$D> N JEz#*G2뢜DRSyNjv`7SĥCI7ת 1lJ.0+Q*p'` nSB^9 4X5dt3+GčA6 ߢDWKwxy_#0G{48G BjlgsYGwVtQo RJr`"rw59'qH;j) }s D՝|; ;M\x<$ՒK0.nUZdS#b/hHpif8Ao[7%z[?ǎ&gYʁ;ubZSh8!-Tl|ǫ(EaA$Dy%7u>1JltW,$լW4>EȽK,t8 Zto5T痶&2o>A7qɳS7W)r1x:|""< !ݺa|]F\|ݞ$Rub8O9;0r@|/z<nŁdFFWtR:z$ 4sz-._HkL9ǥ2b4b:JdHikyk1] 迓@\{|2qp0W5r=$ nP'/eC7o7@NCN jE'D=q[RKsj&Ɖdka?ޭQU{ $=C dHMi/ FDCƈqmO&wbV1w?..@jXX5'H"'ǂy5 lZWd\9~: L{tB4}iIcj4cSOJ !'ЍC- ۂcNCFx3{v䟩gsTa_/%BuΊlEdO$!zM*C,9Yb O oqFT0.n$B/9 v15}ҕF!+qa!I6xЄ2\ ApK.gÜb4[[A+~Vy9\:xx@[E _;NLevsWʹ<+A#߲hxIyV%hx'Rq``P͇GQ|R #r zvIAHCxie+닯 0=U Υ?Wl[W\3=\4:2qlS8y+@ZwRwEF/ȧXF l{:oM\/lm@:bfFBP=SF:v`9|䀈K̺iwy y("$@8/8+֑ l1l@#{Ɲrн_jp/j6(Bk)H`ZzߕR=ܳ횫$!Ә¨jVrN˷i2A(V&j셢A,\)gj F.+WU*~ ٱ 'D79/A^ ~cir3-.}m86-5AS>>dw_PSf̥1|mZ ە\ zkI|# ##׷ɳS;x:4M8u`0X$JM"@0z P0]KUNݠD-RH}bgUo脳MHI]5~-0W~% E'{k?{-tLץ3L;ے(d؆PHLL~8x,g( ݨ2! :6,P`bTg#V~+oyj vy$V<.㖺6ߒLYB6D'@ ci"}, w$A?-C}=}޻qWgإ/q` 2khtTyGmbVTnhwi'K;͒'J 9vf:q'.Ӗ{=oL[E aHM?dWz'Zqۢ7ꦊham.Iu7HW{o|앬go~<5z6gFRn󿍎+:fpm.h3|>ԸK7w*5 Wo X̒+6+iu ؽ9lc`ֶ5 y``鿁AB.t* Th&saÊNgUIHUW ,u- IQ]"~D܀!riF8n㺙(47*XMslX1Gb0Pr#/)hp !>~ 4XdXj)ţ~̛U=sQ[dSƪ*娏ud[cF1EXaP b4(bFATcM >hxt^[g ~%SL"CqgVMP9 />0"s:$*g1a렡z(Iv|܌ڣˈ-QK[p)N8twe8tv<A|r9yhNj 㥃:U#p )%2Ȧ^>/:V,) 8ex ~%Zu׈_waفfR0UJ^b􊌱ϹrQA2o!yD p#0_Ã0W5 c^G!dsf8u&R *$Z簄}{&$5x} uK &s.8>7S1VLw侎(:d}E0ܴĆ%ј0c)A;b5LG 6rӯϾ狥.px=Tѕ?w 0;f=%t$ `hNυkyPԴen`̣ݮ*>)q2bgc65ԃ(t!5*ENSunߦ^hU]޸˲WN||v)erXrx?37" {)]h'7d_Ւj*z%*`.ӘO9n^:f5Pwmq|ހ/PnT2A' .Ý}!:g6*BeVoVM$IkW`̒_Kـz5U >ȸ++^WC4#*,}X$䓑.Z!UQB.Zh#g'M&n҇ċ'_lU{4Ō;nRwy8I$o'pTcqyAb L]2W ܼUAXbrί"Q(JO1'3&ϠS1|߆@R՝缲Nkj](ҋ=sPI_ >Cɿm]0u BAEK7>} `vGm{p,CL}Ny_B듘bnJ?f=gt؉*“ṙEiu{튆oZ2/s?q,䅿YBC?dG>ȉlnK~zIh WFxϡ i5LM +S\12yp=ӡ.{Li{ 8!4ZN>ne ZA'0@8=|IzI~FV}P' g'ĕC~#+yTlpB'oPvwȦ dHV}|+rU9 -U3Cޏ +^VI NGhZSaxpoo1aa}n{]7JːLg聎~'J|2RHC "?^DT g ɠ`Qnq";`*PL#ADd_Pp 1Ku$v0n~_7>4MxXCN@#WDy:D]GJFE2&*h֗@ZK(Kff `E^7R/ Y%VTTNA-[2ܣOlEӕ _UL7.<ؼ,xy ߭af*w=cEKLP)MbǷgHy[~gp=cP,T*˟(2JZfQΙM% 4+`ֻm>O.UB>p^ĨMli11XVp݂Ӊc7Ʋҍڕc\8 <0rlrgMnO åLQ ,u|ˊZsZF(R+^T(+Vhfo W(n&UL樂2`LjUlD4ZT܆ۂ1"q6MQ/T}NOvo4e5smD)ltY0xK/YZ8a[#C.Ϻ,:VD#fUSkl³)֕relBQS0ViS. )ny9W-9$ھN*'Goz&q7ZRǓBLN^{~w,d};fȩ0qAFƏW~!T$q-aę[,@=6(ǰA>GɃC^ֺ 2$l+KV aqN֘a4p;Y8ۂ]@.Wx (qƌWƸ"Vs4tk1=R'E]h[6bo튣n+QCi8o"43`?bpZN5GmIl3:^=wxrQ~O4 ނkbt))yuy^aܜwg=8ˁУ;cT"PQ$bM^ Vdi߮5^>_wАM罒 >_άK+,j6^>dT{b(>DBd}_! v$ɼV 3]+m[-]Pҍ,`Ț #ruLJg|ȘHw-J; pG-\:T F* kS 'rzX\NSzEjyjਫ਼H#ietwYB?`9Ui]jK{/>޲|7-C.kT); Z&N]Ë%o"03j~qtD%dpF'M{_}kw_OAg 3SIfȹI"zL,\n6U'W9%Ua<~S0 }٬H͑뎦2V)֕8rE_[/ giRY36o94D)8޸ !ؕ`Ok{gDê6U!|Șޟn5QMpc&c}FM˞yQ>639[*]!.8:>4c зk gb8Z[: Ġ|=RS? 8̝-f.y(܋KYдh\(vS353\/(\*bp!DU%S=BSIl&eeN\Y=L'U>-qyJ-=ຢcԐib&$QNEZ֚{7{ĹSYYzz}B1%AFY;f`׽ś9M@tȒ,l\[x9M.G=v o )c\+ADR""CMcLY=ŞcGhʾ.|=hE8)Y-q#,׷B3tL/>" P]ynXP"֌KB\z}^j%~BkWpkCt} WMJf& y|?lM{V-tu\_{TgI}g|!V0$F_~r hK)`a Sw״|BAox oV?kcigNT+?|,?F(OsR٠rZ!' jH6,4t 8m_3-;7nF+l0Ax|1ix'~My zy+9}.htqWdQpu]]QH:T ΋ʫ#m̩'-暂3hFdt Lk)ڠ>уL%c x,e Hi~qwy8>& ASy,;wsoBSDOgڷn9 mw =ϚN.aE+F;U;^T:SSM羀E窂C΂JyzK;iM[@o;s ͩ?^.վvs5 Y K\i4յzkG$s0T2gdJPѵN2(7nAoA;H(/2Њ n`;H;'sXWKFFt 1R dɩyׂaIL]"KGrZ |Zϕ||dѸ#in(nz8/_& uy`,H @eϼRHW~1db_xuB8{p&Ri.E;y'n'!xMa{wK_`Œ~i5zs\5瘝ѼI@xf:ޑ8HZ`~?5c|,,Pb`<v9Cч,zjH\r=Oex)aH.vKן, Ƒ0Uch0䒲Z(+Q<0)51bP))M p!-{n(^ !lE(wƒ7B"U+J9- hY So[&I潏~ ?eS-Il/ðtO@d+ޚ2Rێ,|NT/?%UQٍʨSswPoRa-".T+x/ O h(zGg"w2nGՇÇ J[2-\R\n]~-ǡbRF>u8y5CRe"p<BsB甌sLzBī`sz#̿$+d6T20̀CINC+VGjAt "7a>ȿS`%}AUƜrO[h6MA7eD/7it:m꡸4Og1c)VL*̅kI՘Д"pIassquQ2.CA_*5+1*p73ڶ, e_.Z؊%2?TGAOH:OLT$e#tKoVK+q5v7q?;輜X0 i `f,1HKL9Bw1~q8Qo7+9×k863xѴʬ IXH|)]U=li-6 (ziqlۨ^z~: YC %+sV\'p uhLՅ(4gD\!0he/7B}V]WwLU}Tw!ݵLfQ֯(C zHq rtYu9Xԅ1!uQmF b"R~%HN-@FdBQ3>FwxPvc]\;Cbq1"67);Z~y]-"LKSTעuL@vJ sԪs>-nzSHfYUzR on9e^,8~CY$D% + ,Ys5B(E9޳Ӄw rGوDC{SFmTA˩S#hK:)m@L beX1[K_\]Q]/JŔDۦ '!%詫x|>y4eXZ1v+  h1pm(In9gT@\-<`5#G7hDswA;IpfDs9^( |)5\NZ 9Fpk?&\.*tC;z)4Äf{[Tr=6ZRZx[ 8gߝ1zYUAZE5=P ף't>Z ME7 =~UVelgԬ?.^eRf`!iJ]Sۑ~rED̖BtiT/PYƯ2t{x|_\uӸ^-$1CQmvԕnl%8vkb iAҏ7D<[A #)nAjgs>Ng qsՠ:qJtEJ=NjG%*,t_"`sUpkEp|ĥBϞ[OjBwk9![HZ"#Yo4|{$J|ly^3VB9XzK&4ŵ]6L34?2RV[#@Gb[|xmf3ٹ*`+%x+ i##f8T&E{4mnqjQUZK*G\r(MWo )pF9{soAP̈^%@x'NPj<nQ0LO>U% Kҏ1&J+s=2wMS^yK4Bsd/72 )hx%gA٩CL p֡MȜ2=\b|%a!SKz//Wnox̒k=U^ '3?Hǧ{X(ZDt0\iu:=cʛb;Th\ ͣ&PGI02wȚ-Pݹ I#rb9)нc'Eֹ%ÚéN;GpHhV9H&b~y:.lc?Yk VE qeAQLg:— aG[e KC?&i)Hʞ.W@5}}l0v 8,5RTզOxk#&v*΃> 2M؆Β |7+vENk: iIdI-黛Hth\Gc[e0yݾ#ՒJ2+a̛$قG^HK/t"^)ח#)#·/^>1{}^Kʼ9طeHD SJ&BcZ"yq~䖍Y%5 ڰy ?\|yv'fXT!<2$k2}k)pwGx M\&yNCb"*ZiNi9Vi wU;*%9-|n[R,2-3!2Ls!//Gt+WJ`2PqFE(]asqn,W9B`yeŮ ^2ǡ=o*8:.lXXB`d]wTr$d&dhxQ!~ ggOę֣҅"xlэq`~~v$n4PtYİjỔ&AC`^ޯШnz"V}+a +HYkDDHne m r1n^K,bԞac{PXY(Ot%ن"B:VgYֲLjRBwW@U1]tuh&PHݐQĜj'㪉esH}9kH{::'MDӌ_fN8I`7Q ̿6vы˃,Bi8Hl~41K7ޖwet{HjcIY 17㛈 b)Jqn3yR#(O@R$;oO&v>^ڝZtr&ӳÔP_#="A|~ɥ^ljoU!*Fl/d3I8܋?/#@Z7&>]r"9 כhd|za3qMk/[?PDB +2xAZ^_ՌbE>^Qcɳcv1kҬmS||"]Ijyly6{~ +X3#Mo{k*?oGF9;ͥݡXs HOa'K+j(ƜA-_y(Tlc4Ɖ%kx(_K k?{?!MxO7<6`7/cېx\fz'ND1 g 7Syjlc7EDU(̯x2d̗3w =;Ƽ\ b6UÇnvc]031X^ekg%YAm~HoA94!Vdb!×peQ Kb mlM+zal19<{zK"g5;˳n  hԏ 5(4;]‹}Ԫ:'TaIK[dċeW|Ԋr#f;4TɠD3o>_ظ]bh--b 䇄!Mi;0OhA/fnBB„&QYPe۝r0bN !p&,JMMJmJq3^7 8,đ2=TbD Ѿ@Ҵ .; |,~18aeб+AP$ymIE f>jXhs vl@æbu4a(r1Gln텯;Q c5OaMMN(`\!Y/̾텢Cr!p\S> >b"|0^R/yMhy+D+;АYyN7[K nKg8`R--*Iu=tLj}h5xN];5`qI[sFKtE6ғTiZ!V)rTtkM ,3&P6z9R@`m~'ULrFZ&=2'(]*϶9'%M3.s|=e$/ QٯfJuZ;g}6U@|ž12v8Rpn]++σ5R)̍?uҙk <6̽Oe~IUY.;zo5i8h˂ Ჟb`D"SS8i0Tm$# :=\S"A@#&̣K=p<}-\:NAfo:[Fn{SbWZ@y<>ûan xc2!Rn~߁Pchr:3`?]UЬ- Fꉍ7>VA8C{T{jvu)U8-E@~'TĻK" aZ`:AIIH IwxxX=A-,OYE-Bul B㖃-pc0 K(3VczO! `QkzʩrB. ħ tRv?VߞTǍgMfOу}T=z5gcMiJQ"_5ZOw wa8_Wy .Ӏ;h?YzsT/a5W)6PG .n V^xl^ їΏ熁FώQ`h^RKk?{@U&iMK|3ЗZR2 {JWQ,"4کfQ֡Vݘհ >lb XN! 4־Cub}[ #?7,RhdQUCWJ0Bagr?L[9@S%NU+gBqk˺}I^b(͂'0oȵԨ^ vP /I Yvyw %8a.ȔpxֺB +1Z VjCP~s'b'W\\i -rl Ƀ-"zظ=Y+]ҭlpZbkQ8s#1ڎ鹗ohֺfm-s[Y R%[/a,B(p48q Zwz3Zʎm-8B_1(Y GcT r4n l`'ʡϽa (3c{%ɈFJ}"_+ޖ i9)6x#dq' %Ӽ5&bbwlBE\Tnh"aDIM[k`>t_`(\~uzBqR"Z əʀd@a»ou;Ēݽu#[9~-P~Ҭ+4bi6AQX#񛃿eF>IIiIAkkye Oq%Xܐ(?caH|{EgU6<~Om:ESǿ^yǙx|D[5 h^Iӕ#\N@ɺ*I߫< W@SN;s \Br[(P2t?1> _iwBY /@9.!Pr>)#¦_di5wb%kѥĶ"@ehـ1ps.3(yMVF1.So7yHΒ:K 'o f؉u-g2xL7qQk2<8'l^a~=yir}ޤak[a9>$,giys 7QE,NRY V6<43R AT%ghcrM @vԄ6)``G1'WH[e.nZ[[8`)/Q#V @Do*s 2_FRμZ |Қ;ݕq#_7c>|Wzh0ïóU,UЋ {#nZI:*k7}(-1_2)X8JH]h1 \@a7pcJ =3U e)p%]+DFq+ǾV(XC3.f.[oh>^6ݰ#~ZG,}FUjzǘ6=Wc}gni#P594uZF::ǴDۚwt܁ !K$+ ;W3f-Pp)  tIDVc3睢]zǚ3Vh[ ޱ.Ղc/d:Ԫ.j-EDw9HYq%Ifg_co _{9X]÷tHmwx0p#dU!=n2͌wV1^TA,Z{%~daJ|B4szbl4HQM{pYG3 JD>Wh,i[@W@64A9tWHf\(芼V_eXS+QoلP\]FsAn* V?,{R?ndoĆAVѻH BPI?r3bqHsId0=tHʃ/?FktUtظY S5,yx_ ,C7̐".hKsؽK`gh 0`88<(.˛Bikr*@\hM U;9[1PZ{G=K~R/+%:J kmx7 59kκnfBa4osfCxoVA_C\tXLX8H8ϤGq7nEVQmҞhV2cӷݟaЯk+]_&Umu>nyN!AccUͷX "0A5G}-/U, 0ltxG>HkVM3i 9a{T' XrvQ}VFZKu^MJ\}p3^t5]%k[88S:!D|Q%vٸ:꛳HtTJ !Mm_y)ƜHvFM|-,Dc{B7ReC-sXVemkS뎢(g%kATSnw P1I HjW֋MO?4{)@VyB_/}[V`.FF.5ahG+h׶4g`ճIX}\y׺#%§u7вBlv 8NR|H ffn$"BTVcx[O'j=] Ơ6]ό؟Z̃.M)[>X R#oy \, |)(l^yFA(B6l >6*7Q!˹/@:0l`u 4YI\Rgl=1g5$i~/YHL_%d o=qw^׺V<'U:`V+Z\y!HO~l0J]a|YK}`U/9@PL8SКɕH%TFxwrb4mL_m#QBpճs9#-qeqz1,DϜyP Q⸟g:7YC-01rђ\A :ۧ|S'G+%GIhk wTs1c[Zq? T>`r YGN'5`?;=̦ЙwNuަpi̛ORa*yRi-Yw[6ߍ'+TC)7F󍚵L=dZ畡v݃-ݶr'87-$СbTJ*=; p4GxJf_ėO"ii4j[?ښ ؟ dH̹K>l. G9~Zrr6wѹCjco^$f|Seɥ<1YzP6?>lUBh`+~8]K-jGkS0˹W>7EI@Aߠ .|Sīz,cjaDh`nk+h]a˧rC UgWXρ]B\<+Sx*dPE!E?K/8S c8dI7V4c ֙5טp;-{;m-Gg*l4U$+W| g~U}b:?QYPd{Y^L^r{v0 %" 8~x,2IZLG3w@mZKu?1`d LLפ10S(~5 hخ[t^T$j:Xڡn8W Q~(,8lRRʠ(/mtjl~lL}˧W"2!%^`v%BϤ+QdL% !H T Alj1-d_٥椕k{mG7c3wL8a/bajsάHocXưu|pL$ ɝe Uq#..Ӓ ̚A*ENӗn(~@. Wkt0HPܻ3Y`J{\j7H! >='/3 ύ|Jv_y~G`ꐽ>M+%5TgN{D"Ī+DA~Pv|MG>ԠÈӇhoDŋp: qCϫet/oyp7hRTN𜉍_{X G)nBmRuh}P]uqJ"/T?'2 Ze[\Zrr&W}8\%0*Â3@V:ƥSĥEZ/\Ï¡6@8fy`]0a?C{iJ{sb0!`; Oŷn$-FqRMRW7I兢q_4E쿽퀉D app%i`-}G'3t (p 22Rxbjb̐fh,cv.|8ZjEBfԡOBzˁ ;^=TH5}$JWgAEdlz2\6+!8ʈpuwO4!X"h/r>H${FLMV,z#̽繬N7$qOKW<3qNHCa"ce:=_ٝ#RXfE |%{{csP&|+*} _Lu_e_ڛG{"Yyͼ$_KjӢkK~kP#bXM_ 꺣oV{"RvJ舕y,|e۪%Ju;,z~ bTpN"-*+ 1?TJOSbeԀKD0NFb\.F@k2"$"&i2Zz+򁛴.7Ӏn7jYfyjNCKԕQ c&4ikeT*V",^UHXX%r5fJJlu7$\*ƴsߥʜl fflq('i TWKGx##rsˎs}̎ZȓOLo\Kfhրz r2!qṕ[E%&[ܶ?%"EO .!_~.M+1Ӷ1i%c'g?B7o>WZ~d6Bl=eBA?Ml=ɏWŒ"Z8g:/*1ZkdR !pkV%Y5f>BCAEm-UP-(G8jD4b0 <?sn#rT9CtPo"1ąߝt/,n;ak}rbi'n),F%V_rЇܲej`;ք]gj 1v\Uƿ5ݒ&GV;%[ ,'52G%Kv7\9.]).a*SEeƢdEj3;_ЩbӦV XҰ/d]ɯmŕX4:̝, XtTʄhr-*GL{p X262Nj""""D޵kwmlCK~Us̵HpV.'3JWŷ.jU*jTx3wx$t.'Cx2 Z0F* Hn酕g D[d^9 Mc=nrﭺ o~9ыq9ZDQtٸњz>NȡD0BK.+G)f<(aC1׃cJyis|*8A@?/qeR =/2_]^3Wſ@ܶo࿴0M.KH% A@MN䖋#7+tfc b3eroalh㩭wuHؿV`mgR3N^zusM*=[nޠ/ m5@)ѱ]\WϤ-Ћfmt%?AB[BQM_zv ʃh cT|3Q?SD1Zm@:PS_xܐeGԃ] 8ybMI"(-ͿÏlm 0oPX\nڊ fSr#ڑ5+RP \9mR6!e)(]%?/i =2I,B FFs+R2O]<ҫ:vPQ)|l/1xV5%zܶvƁZhCFq ;.GCjI!`x1/,[#x: }-n2` ]gFd~ır`Q̂zJڐ7{y9\rO;疂\&D"pg9xljO@mmڇT.u43[D`Y3̈EFԧ> |rp@[ FDDMgtJ!LNw;z7Y?ᗥd68 S#~Ϝoդ#cxtvRJE8ɋ˩=;$.Iʚ13< +WUL`˞g BL41^Zy/f$JGQϩ'\͝y(jƒדo`Sb ;7 T`k-ZcT56i -AZ ({&Uk7Ga.#c&u/|?qw^HNͤ"3*U•L̙r0'V:$ Ip?t#C^91b} @Z\JVx>3o@ϤYy"8ZX՛OIaݮ=Fߖ:'[RzۻcvϏ;7p1aO+n 0]M>"n`-.NtL I\@nC{"MKX&#1^A|:Liq~ѥ mV;hGϴ&i >9h"Bqo:6"WRn!p|*x~%N@G&Ǵuُ7:b,K Zf7C3ڟL Y|gSzʄe.rJ GW4m@h~zCu%Ef(Nn2/S chNw ^x.6>,YUDPc5.dnG:e묷P*Oab] oU$?1[Ev3VilpC)tWӒ'+lzBK Y,>|k+R @ha+V@aXUf3T-E$R0CN^<;C`C僕$,De+`NYY>laҌ׏_2,8nWuy]PAv=UY| pd 6/l  !nX0+RlW"tfO/HњJ 0:6 XFA=!O.3p,}E֡ѹٺ~VMtْ7l}yN<(D~rڏ[ FaDhwFȗAԲM=z]A8P5) q@WuHz3n (P\%3y 'ߪCIPT凎>؆b,"@QC8#5*媞f6~bva Itfjn6WT[5*qk)?H 9..ַENrq6h> vgsd\wi6w_"Ĥ}"jSa}G-<  o pS2 6`˨ͺ ]L }j@hk^W%?O`BXә,9{*=7Sé p—O]W %󫗚G ٔ6"&ȻW:%?CM{1}CN?Xhy-!P' _@pY=v40 ^M;0 > E@f' G ~(j NAĔ/RGSJ ֱ7@:#LHU$,R]Rҕ -cOi ?4vdRq[EDQ̇cK8&8򝔰Y'yܕ ۿoHܡ["[;|TfC?#2BEi*&г<@]1ieBSqwۈZ?_hIBŜNT0^V*1!zS7D\e5U R@G/)YRfjp2pHT0B;iċNMH}e P/ѹ79G[wӨk,I[Յcsh۸U:OmLԘUTciP23KC8d)b3Z}3K ;)D TU,Y*\6Q(eJdF5*{"Z@Nޫoz5B}4mvi@v>eOG0t_!ϯٱ&dWVVE#(+woӪIk"{O4;=5:U8 r▘b$)4tOelJ 60q &`LDff53|VUrU; xLG`(-( RAB,8եm%5>Jަeo~3>Cb랁W6>\1vֹ9"};`tTgZZS: Yu~g5IagUD{ +{r߄MO!jV3pw$$Y/N:6?g.< 'uZ8(^iqI3#5> X@Wd.;-<)ٶ|Ӎ'>ߣV8{λ6||IiHeV$Y$+uтY+LU4,NnKVMW3xۜej keCڣTW>[dI slz7|%Y~)=-!gķRY]GL"B;70dUKR?ٮ\L&T-GYDB6EW Ym!5$cP dSyY$ j`CiS4ײ hyT._G4bC8Cj+.CF½jotQ{HPck?Z;9v4L;J7C!*aLUCTWmhMH**g]ej[U9v4UByZ+ +E]XRIo\K`~ge 3We  BBD._>o$类ϜEļNuqT-+}k(8' $:;:R_'S|%ͻ 9{{\eLÝzWCjUoXY6/Dkwe  SC+%f M cIki3zO. Rn#/Dfg~0=uWkIDA_6o}HT̈I~bDŊ2\eV(mwPL{ HU.d&>\C镫8*x ˣ*aia;MV`(0!\'LW9WD|PUq)\A8gCV9U)Ki^tZSoQȡh<>rT7Cm .ʍ{ب%"m1ҖM+w߈4o elvbh;IgM@ ·|ޱjvUu¾j_$(*W/ "ܾqtߧf:z `~kf+BZQ4x{KO"hJyu`$\L'@ҕ,`ֲr>j%;lceTrc=X]F6وדDMfbP iFi ;|Hktn LܾlG7I'K\&8f-j#3P u|Yv!_W& #(зu|u/@K+x& o i JɮO)|eϧX?Me: }4@U±dɠq)~1&j$~)Sn!ڎU6l@ TG/̱\dϝ]A Ή9%IU9^Ac?-pͱw-}Ȣk'ۿv å6cϞ!=lٲ5S<$2{I,_}cVi(t^ ? >R8}ز.&Nzli)^@sB6(:ơ6]T=u,c\PkX?"s,˸drz&vM5Ńx7)K׽"g*xGqVQR>kI)e4 a탽x!w;ȟ}9VfA<4N]n^`vik&x*ha5iM773p73V88Y3>984(d&((D7ZdZ4/Qml zU])칃A@Bb~;EvM!oPwT 4Y1}VhVXL_t)㷀VMun/CnXW0  z::TzE/$sQdB1ژ_u2zA__&Rᝪ^u@eΕibw}KH;Q%YNսcg WӪ`=rG.Mm`]\&yc73hee)QH29kFJ,|iuU ]هΰ'v׊}1otAEQ6ð4=m|a{3ۺwX'DP!6nsWS?Bx(5  k *W$,'lB_U)Od*%kQʰvI#2SƝ#d'hKIOa#'r{tiݣl̍-~m vemAT(JsE>Oo xڤoh0[5XĆe#>f94|Ɏq I*”oKI:lAa-[GdWr.95K[FZthjD9caI;29l꒼5gQ PM)60_ s+.i&\|sUڀɖY[!1cӼބ^z6EX6vLWK`\]eͼgkC5z+:*Vs~Dv{:-"A;Z^Q 0mcyw್_1 wuAyf5p7/nq#ġ-m fbSGPD4znC%[eAߨ4:7(i25% &P9ɯNܒ?Eu4̫%tkD@S{Mx$*R+J_OKH>wOʕr*$#Jz4l_;]RgL[`&M77xbQ#Doէ-?& sHg<Jc2zW*A6 U.U!(~UWiLn=mby~sIuU/M[J@Ɍ j<,Ҿ2ypa<{kp8/KWў!aD#7:<hpkk}s;$(ȘKrni|S~pޗI2Y~uoIܡ"ǟt.E-M,^5}ԁah{֘Us]+P4sSS:,||I򋽭q-:mWL"4r0 ƚ'03L=@ .~!)m%)!A)ay& xBXj!{6ia$Rd7Ң=c7|dh%QF}82{_&жZ_CHBÄB'}-5k8KZȰ0Lw,>({0]vήk_yLj7uI9~bAu`fB+Y(ؓ^Mi4vEлT 2[|\PndC`1K!잲 ׹@Y.<8Y}h+0zL>tSJp"Ej Ƙ}Qp[վ,Ծ2KL-oY?i 聝\n0{-(qQeHAMWhK5t_u+AXgZ"+nK?plXɐ4 @SMBzo9_1B3 >%80YƯ^&=cal}lP-U7؍Q08=yԦ`V# , &iQ"gȮk &OMls3n+xHKۮr$YMX )0_Hf-:);@0Ѐ$%#a'Ѹ}W B(&*vEЈ<aMm5b>͖/B(cTUĵ_oU --FKNDf\TG$W󚫣Y{a70Ommz#hqVWk/=̏ PǦd|}wDOsvACO':&/| ~.d \4ePObZBbK\$Zc֣)ӡq ]@6|kHC&N/V59,_Zt 䵀 izgS wE4(}bĬ!v0y64pw=,F2 "В'*UB{maH1kKpP _Jz=g/>@Y]Ĵ:ۦCµ2L3{%VŏB|&l! 4FCΎv2w׳;y(DZV.#R$<\ wْ#NA*@YZ>?GB0Qdr˨ jU>ġbOT,U,[Ș"{ȱ$ (p𡿉S2|K @+Y³8?/Ԛ1I9E^Yƃ8Pj֔jw=ݣ,W]Ӑ,( f{Ə痀A4u)z2عLGE9/kĢV̇>-XTf!:źѓmQḓyT4}fw,^5I.Xw-|&W@V,Qo´0t[Sfw@u!]toHzGW@mo 7| vn6G/;t -d?@^q}*l@C֫ĈMcs{ 6 F\f4MOǩk(N֝dIWCg=4uuìcQb ^_M-&1Uܥ0:V wl5CTcb6ҐA;Nfw^@VtiɪH+-AJnR m6`Z; )YBX(<9*WIj(||j _:B=\;ME;LkeDM 2`\Y+SCjBߎf םA<ּv7(C),@ˑyNfќu7Nzc꩔`N] ߁٧Y vL_* ʤ.튏I mkvzbǨ՝\%"Z'mvz~*hP` [zqkU5u^_0#(к*L+=3װYh M#oope&ƒ.uHҸ} رa]ԈO>?yxU f1 ߵd1Lq|UlcwPǍ*Lir8+mwI8Y;pW:$;la G+l }ygnw .K69\-G=²$'&u7 ܡQy86̪!5zz Zbm1K,ʹ }nM蜡ɻ[-õݴR<6fWP])BX,ޔD nE]ak SfwDk99#-Y]Z|L` " ~ԟ!xd^ onpb3; P> Oy$@lC.V|7 Zibkk!I#ူN`(0;7&1[}go$nAS3V5%@A3$Iמu{Z G-J= ?Gx[~3[ X|&\^ To@AMz|D6 fKi:bE>huOV~@RH p)*2o&/밞tXYɋGL7G`#u2)P DO'"3.Ja\,8i|=dhB j$ū)Ι897Wy@-\TRs ]C `ΎSYY`t>,{ -w۶w)ZOC_tG vɞ NOKoXpYM Ke."KQ2P/i>S:yN=[M 6`HZrcq{(46|t3 @5ܣC?DtP dK>vƸ!+O"8+`RZ{o7New{-7ęWQ.t 0(1 I\Xqb,|ͧ~ʩֳ8iph D6N9(3bXonڀ>SPP洵dV|y s^PZFB#3NWL0 Ry$#o UD1_jY+lˡ id%Ja`hN3i2pMvs, s.&R%*]WL{(;INZf M^9N*8UZ|g(3}C{h3 Td,Zq0dy&US7bmg!n;o M=p/6';>N#{v*sg薑T(@N9 mx>X)mGC2 lcſ"Lr39:vC6({EҲWGPA7!ai *Y!gdОjrn!Z-V-^o#!Wz"}nf 7 *3C Н(bk Х $h$:s& ϵVO r~F̞B'YT`I uEQ8I_ K@5{>W\wv{ErPzZtI]',9(Bgf@-DzyF>*~OLi]_a^: \1f/–bL 'U1]\=G$̒kߓ!iY0;хUUa' t%eNOL8tlPB:I6*dÎۀI'J$#}PˏT'CM4,X~$3^`619Y=N` T 4"O89[5ݿW5sE!A;8jpHD67Ȓ;V7TcxS{βFzN+H(@i0,W\%~}Tִ!ҟITU+|ʼn視sX~5vsX`G^ЅtA]zmPu@i\Q46}QsJ:1g_ǽOjJ!4+jvrs7kN4? |@L6L5#U<s/{qPuT```p"_.oBpw^z:nH{cS^ ]֡YLޡQ%,dVzkDF Fn%Rh`p';-VT6F.d8r cyشwgzJT5[ݭCs {9 m꼯b AˠQ<'7t|=BZTk6,t=_ k̸_N2J {,nHP!Yΰ wa?)f쵵7Vό $7݉!"3dwKfLr{ eh48zaCi[z'?ćQ*GӦ#`Bd2[ xG.GNj0 @ .FY-ida:EnlyzDQzi'IE(ø.qjS-m;Y6ʜe+,W{yʴA"X` MpRP=~8QiVPqj>ȏ5ü3(aKdhelG_ɺlFh&K\Ge&'|$tki l]N&`RN1`[r\&q6>K9\3&Zg꽯+8ZGc@N!UEϴ5c93Oܭ&mf?2#סotK򇬫+9CB;l7gw =2bfDm^HZ$%!'Wz@R\;13$=r{J3:C JQf{! )F#wC`ߏ4bTJ]^RpA vC ð].ݩm< -L!9,6-c#k b4aϣԍ_10hIFJJg@Pu^IU?kd!Nݸ֪3y>fxpM-BV.Yn) FNhA1M3YA i;T،* 5*cYr9nnܪs$U2|{{P.Ioˊ{ ˰ =BuQ5o\-m<0ihfF$mرrܪ-(WCf@&܏EW-7>{lms<ؘq?ص3VkJж~\?t/Zh4TVs^DA .#x_/]qY= ʤyDͫ4z$4)nrO@4Se#IѶrLbgVfÐ)Oݷr<{?}<ì9"p}1j Bĉ yAwƻ`T_# Q)_2t:i"YhT븷mk5 ;eyawS(U_,K[I(|Y`wܡĜc"P^ |Fri0d3M=7Ff{ԃ,^cގy {Eŷ]-J.[ȼS&zusn΂#j6'n 3`xS+Oq)(D;#^EzA8be#CdTc7b-{OPn"[frcR+`^}'al&O*O Vk\ҭ5W0~V})44zL%hyc:~(Eh*VdjFx4%07[(dqP:W{,E_(nN\,*NNǜ\Ԁ~_*cMۿw?W s UK \f` 6~֎*J\.|x5vYۯI>kt4ٕkɋn}R~3 z:bP/`(JB@ VաgRֲ,2 +6p|v;7΂&UK&9Q08mAհ$y.ݥ;2BrUN]aI+a,'hyqFȗ3zChP;?O % OT_]2:]BEFӱxF|XI0`> HƸ}\'e&Muy ٻ*K 4;1,Foy$9cdIWjBY]ɠ~\sT!<9̰*K8z yKlBS])XVb5K\]Q=㈽\6ONOFYfՉq"{μD5H!cfw-B3t[Q[{$bp(c b>ڈدotKS ;p^Rk=X))A0tˠ泶sF M4ru`rOy(luzjuxO![;.~/WKB ByUI!ǭ'=dY$!JrKĦw1S*uK|А3$ͧg7}Cb3PmK|KTTLr);QK/6|%G:*!BDR@lJȽ4I{)=(2Q5]+d\١*xKh75pv뭋ț4%B5}>Lf8e_ 7L%IZyq2^ǟCR}.z9A)BY!ء(OmܾIst5L۹[lX2?] *fQi?}^IV0]>cpX@};tv%Ѭ>xfJ|NCǔGtѠn(WT T|&Ɐ"OBC_pOzr(b||3}f^h] ߾;+x}#F؛Pq훎;%UEMv4cw*> OHrx~ӸhH-ѧTA2^߆ ֪gnFN"@?p)ºNQp ^%St5I"Pw;A4]; թ!薱sY3A״Qtcז_LNҜ_k=cz#m8ѥy9wpήRU~>SwH _sdQ1Gr1jI7<83&:j|@Ftey Za.uVPSO Q ;R{}*z^6 9F`fa! T&R@Z1Ǹk&5BˤÀ$/BB~Θh]c.X&=j:%YxwMdwe\uX[T;5 YRB7%P|0 |Ip"y{  ɪ87/XOb/z80dZ?-B?ͤ = l,D^kv(׸{enO!ù.,2D/E[Jl/.b51CH dG]4|dc- EIYd,DT#8:/Vg61FegS/B!〒uW1|?hc-GYlO{wNdͧbju%LwEQ^g3dOJ=JCf@Ygm\D9ՐroWC<͗(|R+]\Y밉_l#R:^>YZz A*=W. 1+_@p}F Wu0 Os.a`,C-aX "fut9xug "Yq=+GPt ,r0۞R׸)iEDec"H| v0r"L+)Dgۖ* bE*x?vSE6NpkS[#8OǎFfz\ @8@) W9TpH/wT~I& w9ͪ8(ssJ3Om3HLI,+ 3'̌0YCX#]\M{>N73"u3op%gY"1)r:X4!&`f.}_Q$=<Yd֔s,@;Zu2A{SXB<"gbhz9[PllB,w-7NA3M|E!'JV?2bzM(LkFnj`kqNrI0jV7ᘽ?]_H4xHn2/ _P$<+W 6imc6{U,;T7۶fIN_+%*E+\g"27u Ϗ2HB;R^ΒoQvn7=Bߠ?ߦ$2et]C hб UoO#FU>(9А?_m5ַmx %Iߠ2UτQˋ; ,7p\&j&X\gZASyyEh۱̣[L vҺChn /?ƅaR:=TA<e8ru/Z(,3YI5{Ul<)?G3?|MWVAQ]%v=oIe-qLRx@l\Ulv'{PF-ýuSq.-%45XR7l_ŕl[˙& F0w^Ԣk,$^4H}|A/#HUᶓwq5b6r% wU]Yv_$c-O)#oeؾvm\/b,˜ =mj#;TS6mJ\t%vɮ"=4q|usAJ_ LdGOu`ލB">H{e d%-lR*/݊r#pI-i-n}ur4$p/nudIBƻnkƻP]!w-_)&<_-JXAM7P `5ncG'OTPm -Nvp1̀14284=h:ןHR.餱=M2.(No^SKo` NP)rE).ZwZeߞ>7~X-CY? -NFؼ*`v73\Ky,R$]| y0Tz)i_8J{ugh'n\J=%k 2t޼2#4%pU$в 5Ykb(Ys" TZ.Y=+5d ފ}i[joVS+ztKON2^'Mzۿҋ(=7 ѫC_&:rۅ H{0Fbfsgk`,nό4ѨI:a=[.ǙK$Gڴ@XS>j΀epaw:'6>){J(t ?vG\e`GFw>& -POH:eO)-,le#AQt3ÐgJKY REOsv)SO,Y`&֞H@|-iZJi!cTň%'\=jhhnB/>i4l<*M{-bH`# =4gN2;Z7.bS1X8,vժ3WkLZx0ų\G*h?@y7UFa `?kyQD' tʇ(Zwz˛|qK0d<%_Оm5,x*q?tl⎈B2RYPŃΡ.9lL%!( y^@<^-rfЖA*Jyokٖ]r_\|HGt. 40J |BW@7X5MĈ_CR̴.rs?O2es1uo ux5}I?0٩,ރ5!4W>%Jd;$ Z58Bǡ!d;Area-UIO+sǗ*ֿF?{LǛ'x q Yy\+/#HHY'E![F?%)px߮TD 2u1McF ߭cQXʏU9Oo9;džΊO7{f:;P~[\@yH>.)61S7Yj+ru5/$wRᨍ0I>Ȼd57QX$ão^ؤXGv^ \v3UpϸՀoc[gxǧ*沢WR\4mTyMiXzY wP6|| aPZ{()!ѿ@ &IzK塣A8ZK[Ki3|D5ʔyZdpk6& I&%'A\ihibрnEr&K.4 $wyLb6bC L`c3Ī\ڭЮjxW8ii0X.o_4D\a+Bm&,5mo=N_[U_Gٮ5qU8cG-1 CO(-h0IE˲\w "t׉|,TBPMb{"T=$6ip|ZrܒI۴ǰsl Tg ⬮J3]rr o$0(DjmyG񿎰(IϜ[Z'U݊1J ֣7Մ.M5o ^=@7D#^=2KSu =rGY!^f>K5ؑ Fԍ~4TLDXY@SSQU3NP3~njD|n'31[$Z%O0SvE%n ~[]9EGʳ͕mUnsJX3>_ #J I+·׺7S:wkR'6?oqZ<N.c0eLJG$d6իB(F;Qi1LB-I;0en`ĝRJE[CG Bx@ižȧ}fxKBaw{eib:ZeV[q;xq.DݪZ{)fʆ[*Ԋ= jrYl誂{_1Xv<-QGghn݇L*L2M*>u6 gwOs s:ͤ=a7fl?n1B"Y׌M2E佅{o xX)ixh*Mm,wC4b;F?LKg2ZjnQiAڿ18Igl>PҚ }M _`Ch l nsNM#u+fmZ #,A=/L yO{;2w^Wc3,oOv!6Rye9Y<i4yW~m`E|(Yo6'N7_4pX >>+Wb=URIFg:QF/kG9]>\}wZ + cw3y8%_z g7|y,MS̸0m=a+6Ж1דWr6-P_^T ܙfn8b4p\tl|qفO*M\ /Qiȅm[;I[ C49g7MIYi1%Yg=xh fƖF+wUJ9DFހp]-Wqp*k>0d~U 7Oƶ{0j؀1w<KK7Pޠf/WMS6cN\`>Ț3`YaMBY#0n8Ul{3@\,0QJ?eO(o,~?m s@a/_Rp)\<^}p|^d|WS)7o7Y~E9ܾn 2ɧ1oWo׋Fy% VI0~M@,8F.8cd+"eO\j]B~d@ QIDxy)&uUvͨq#wB> 4oiap]?Y7SBmB3O Nʞ[:'؀:t ȅ仉Dz*Q aagYpQSCjAK2֞ؐZ4{#fkן/De+ur!}yAq7u{10̚EN@*󐸴LvF4ܨ'gK)Q h} [*X C rɃZC(k1?H4(VkL1E0Z>21IMt]ĮO+v6<-:,L2 +_ńˉ12"7:rqgdbF^ޙ:?95hrT@c_G+O|޸Y]z:M]f8 CC2 F(_sr5Ѕj})%Nl /:"uШj2muz\☞}MS xKyvx"MX5BعI1Afpw2Sۙi ' >+O2E׷W-EKd"YPHVl*nv!gBN\`XUhe[1!vo8vQ}eQ_)f$ʋ*j`6[v1'ʯ h"hel43svX.^5qm6 UPkoX=fe\fXU πf+Z]HI J!`(ו6~щ_|<*,QՒ:xJ^Ru#7Dg&ש_u!RAM#cm(JV`zcL%/K >GIn9[Oiafa+`҈~|ݑ uK<@ &F>[˄[sܨNp"xZQ '^c F '~ 9칿O3㣹."{vU}@ V=)":;t2زux:YTv,P2؈t;U8ਝf98Rv\7ܷI $-sH{*AllǙiuLHy],߂ -Ե%ܬI hۼS ̫+FevCcطK asNWeuֺ1mGPvវ>_8sqӫgz ~Ƙ,s 5RGpP0:Sgi~9sIFGؖOfddQ(לݤP"ٙ^0s&p~tŝW Chr+uqq{)r`.xD6{AwrmqGaDQ)ѩ2>}?wE2|?rWk9d"!r -QZJIJ>&^ȼ)E~M/-Kr*uo?4Gss`Ǚ69U"ض4 x[N`3vQo0 j̙ta։P3dci߼fv:m"3Ӣ[)C\criM-VU<)4_?q~͓#[J(2AuY'#5ZA'LɱD/J15V"zEV@cI%hÎ7.@wQӈ @;9v4j ot/FH* n٣ ,f0ɇB>lh3m׳oÞi8?kt&.>[!#ZsQx|``:Qln6w僊a8ŏs cg.l&I[N8#r2pxȝGOiK(Mq FW`@K Wrsr-9ޓ}F 01Ql^R!?7xܧπԲcH +A6{49X*Fuy[ݓ |HvUszߤ-y,'_!@S>[pf"V2C [=3^$@veH2Ims_TzzDt-w)wwo"d%/o of}d'PX*+;c2Ӛ)( E=mg06C†ZΉ,}W%W+ ICCV6*9*[9d,i/@ɛbw>b&w6! tna}HJW: lٗ\d̓{]\@g7LK_:8R̳kRK@\a,槾R, K=)pAYY nH[^c m9M>\joo^8AQhկ`8!< |eQJp{oԧRb"9(f ‘^̓~֓y[C`2]&,\t!퀍ڷ@xoY^NKN7 $_,-(^$TQTe2XΨp/AdؠqouGf0qgi%C/2-];XLg8J(f#YcEsYLn |,,ԴYj`Zqfd?X{ {y_?^5A R~*VpӤ`k>PQ!`Zs l-X=AIpxRlj?In~CVI]]+@{}L9#˻s Bgx~eadG!Ř}ᑁxI_Bh$Zb\61'ΡRtuDVaON<$(/OJjK`b\FLjew?ayϺZ%-]SdG .U6'~\ckEArWv&㯤}hT䑴;i b0" lG*aS ^0Q[Hx%kh]Oc<3&K垼 *2:|n[]=͞Y=>qeBoVȄ~MU5F̧~f_e.7Wt|iOM]I'LsM?ܒѯfi| ƙjPcs!PסK0h| JU17N8 X]n;BNM&gξmC822u]|IZ6#dbV BtMfR^`; ,]FEb|F6x: Q o=/g]HCV.qMcRpϽ4%{k~+)/`2ۋ9dPU}⊶W->6\5.,=7./h99U1{q5!e%$/ 4'=$yB~e0+u }x(/z >յ^v62](Ra{lVˁ6"ȫ1Yf˪:;/ ԕ{)z {R^x7d=hlV ٛ LK` |}F7TjGoGcS)?\HNMf/we\*htoDq!_9r˜zSq,Os~)Q1U!acXb٬KOK>voqzisRމqgM N//"yXbs+sװGXQi(k˙xW^:$cN#uۓ,E"Fp>L’Ze_z+ X!ˁ)ճ)L0/ho#T7@jpTR‚}42%Ёf!5&o8F;{xPH=W.Գ_ho.:xCaG#NFӌgh%Ҡ'~Bu?mUh.TC= "&Eg=|M԰TFY G~W%v[LK ))Aɐ,~vy(Q ĿcL0obbjĐ햝wZE!E%0*6r[A0s]BE H5\W%Ed0؊ 7c~jځ-Hrs9)`Bm%R~?D_9BOX ԩ0?≦EOKyX3ʳ/3*J k`F=Xk!zpEjH/ ,PDKЊ;E+! W&'$QytqьQLYrhl`8Xi?EB'< ~ҵ֤w rB7ZR>3_!4/2t"Rbj֭aX8o70V#տu/@+:[;S޼T;=lӨx 0b $} ^d-\|cGc 2JwX Ԇs |``kͼGq*Ez:ɐ3A65iasd2/en<}#< \wMgC[JTfH؟x->7b Q7~P(@&)~ģOK*Q4],L*~B5KSR4_ 2)Δ\|ck_#MBwj<]Suٲ\ ~yah};$9ZqXͷ+%='CyM׌5'xeաx!aHgh.扠VD|(v˶ތVׅP]nM`HG t4SU)d=8,#y~ p̏!$仲MyrHzה^ \Gp7 )|X]spcz\VՈ/qk n_=Xˇ m8vG'ӆMJ_J/h3Jެ֦+\U2#XD[aV V% _[byX{ )-N>"FWiuij2V%w4҇a&'b7gt*[zn AImbwl5vIŒ'w^a$:@~T L}1ܰ Poe fi[S5繸/ˍ+Z%ߘE4.Xj*eTZ8먿x-n/nA\94KdQU"_STk)mw.ƈ<rgιKYu ҈%+!y u6# ?ZmC2kb?tWFv uJ;:*fͬJh WYXBdjyb~RΆ+rM[in-bSYI;aܿagq0G.`GGA @J+ч$7Jj?ρe] LZ#{ k; ヵ,5V]H 68RS Qw҂u0JY/-F0~ ,ċΟZ`l+4#2O%:eo5dVGK+~=VG<-Qd+Ksf :c b!dڑG7Ы18݇;]@ 3įEd&Ƙ]=j9JəPbKL ^:9ZvsH_K/%darUѥ.@OQ]J&* K*r#(3m=&Ť]Cp@_P!X~7PZoך QSk4$ ^ӳ86BXcݖ#/iai^ xsU6c=OG"b Ke+)gw*i 6K`Mø6w &g#& :;#WL P>M PΥBG% JKnC8ϔxVVEfSFܕ;wj7(MUd #`/d 0b G߮XtP<ƍԀȝփ[1rTJ*+ksgպ\DgSNۢf mn`4:1ְBEV_\}JVD?$!z=&*=cU<y{&`1D𳉌oLK3g^2X1]tc]1;a/M{ La%Gx>w_QA9xKh`v?U74ᬶ͛$:tM*Jy^ÅD;4AlFuAF 'T+sܣS1yc{6ێ>ԝY3&! >fC1Α4LK/BqCMxj f5al?oŮj%FV0V?֯ OΨE8[[L^qAt17aU*v˳=LHM1.yy8#iK R$fwT6QGO:y_}uVJY5q/XTSK CqԸ]ټ%Ҁ+@O딚wn }NOݹª?_ϼx)dQA `dv~oGTYT=7f9W6͋Rie4 Am tCaQBcݵxGN1>lVodm4J WcmT á31֌8`pSZQmX_՞|5E2dyVʹTkmvر c&>e?;,:G'nT-cVX P‚?ef/>F*5\. 4_4-`NknDa} (=mhuYrR>uΖ,zHG^fs\wis킧0{X8Hb"xul:gY_*"?' 1g(plS-pA٫qt H|HVn&o3NzQs۳ ~e k MEԚݐ+TD;t0]02 |`# o>EE&OGy-G -k+b@anuIigIxBgXe^jP,=q%|i1A7V G],XAb6U2[ #kT [wn8&%v~3,,\3o`?-(wOّ+k#-0&a+6[J# Y? | |=L]aɬg[ 'T@;ǻLO>2]'Ҿj?A_ mj| s<7)8r6Ǻ'r$G.ŝFs|s_P :l"?oNr-e׆J?Sc0Cl64c'@}n*c,o#p4 YwH|G,eXk7Q d'[4e q-Od2xaB0{+4M,yWXt"Fi@4*ouV#-b3- ] XqG+.Jf͢ɉݟZH,uo_ lE<^x’"G@)V좽{0NT4bոyG }f/ǒScƨ4Dx&/KcEr;M^S-)#R@S!4V&NF\5_qrP[8s$!SwߝŁe CcЕ YmU4 Du:Q0G 15ÜEb HcZL!Z2֩D5cKo `)pib+0elAdrӣDKKmLeIc1 =] {dL0Ğ1{0O 7Lxޢ.6L>%Yrؔp]@KUF1e|#i]4ffs 5+2ŕ'!{$JOTx0h{"t0tDITQנM&Fj䎿sԈA:7󘡇ȟ.9+o6^jsk24H^8u#h ~m"¦RPϸNl9q47*36ٍ`}EeFy)e&9=͠}+gF?E5X[."K.B8Hr7rg碰ܤh]%T/2G>U*igBj:8E#Gx(0YNG9[ S6=x 6x+W7кu y={T"7q2ٓ'Yz}iԛ. ʒO7S0mVw/\Q=bZC>+dT4+?wC'ϭ0LT9Utи\KˊѣXՅ'85u>0xη'h\Ng݄gBݘVt>7ޝ?U\S(WgfGlDA(o"۬zR4k&=.dq4-/K inKhnFzV26 asϴ5iu3} 'Q.fq??hG9mݥ_*6Uu#P@ah]pWD8Bz#mvSr#aU'.B ?| $z ȩbI"\3%VP1,S`" zAWntC"OR6x/]n maEG NrE8$=FDMϽMIYf6^*TSsǯ)"V{Dͤ1Mq#ˋkf=/Lxvڬb,N1`J˚ ֺj ST:9k$%ȠL«'RtS]\&~f.Eo_$I]+[0<6xd&pLAAhc'aP[1#:bb('OÉ6XX9a75kdW@Y H" {{htZȃ@Ќb<B+Κş2(4>>ɸ E 9JNp8!;4Q ȕH|av'6w2*69].|ZgC>n3K+hT:NI~g4:dUrqZގձc2_G$Ƹ͹llot+}4O#e[ij)w,.CBҨ rҘ y/\g31;W{Ҿ9 mDG:EC* E k+եzߋt[! W]"ñ0v]5d/Lɧy𱴈O\H5s p΋u}g|?:p'D`EN8dQ*dA6qAz>BAP?T->*VB&!BpC&G:Sbȉxqr^ߊԑD9MGW*̓#iAkڡ14iuF 9&ٴ߿|FE"X_%I0SeXp.$ᄜ[I|2Gk|ہٴq5 a}Z$2`+D. չ/^RޟE`ɉ%k _`דwv0Kǎ~[!ΠXc>o DO/o'u~*4_;.8(+ˆ4v 7[.dJǣ꙲¦DИX"DҩGNz)M7 oV,;'97l*aӞ7iYKP(IX` P+oyk,SFP =74{^"UhS.Z7N-ĭSHݵn`#+1}zSj-|6˙8>psFquOT-Ȇ="ZL͝ɛΣS9%=~V@ tWvDa3Pm 2^oC`v'!g8{a;oJ=4Ku.6o7M'akS u2B~ )kqKNϙs;'c̔QP[^'7#%O+L#['FW;)'j& \ց$6FU#$fͷܓ7P"]A=|ZeHjVg8fy#\=V:n\*p57挜& B<'up9,d+DXѨ[GxDLdIBnĩQ=U#YqjM`j<6 S8.|?i|϶wd-ys3_Wƴ?Έ+zg1n!#OeMVS;'{ JquQet(>b),=.乇gyբၾ!ʂ*ڦsa)fdmF}L7mO'f;Fa9nӁ~dXtY_k^QsYbd7%qL_p-+bNT?}[~X@ :jq-@v.C֖~TYH),,`C6Œ"9tʌ\وmXQbYgVAhyK LlR z Hn [8MDmcǜi@j+Vd5SS˨g nC@}u\&z6<Tu+Ky*o_ I qp"$ҋŚ)G_epH;KM=OeMR{[r}HAbtWJEYӵ#LèQ軦rFVy΂^ N >U'%*kl}S?ڲU]+{k̉2"zMk>cz!Ö@4y 櫧bxiB5avaV8@~cC霳9òiW b#mzk$_`CU|G,V HR uLGǮӼ2'&ǦQ4俧CA7=M^\aTCϵV$jwhe.(`/f|(_zi oT)P%3Eq<"hiU7ek1kSu!fݢYR)*>_ESQ8_6**%7GYn]oЃʹ4?>ѷH ,%Gŭ?"rN6Vf1XHbkN  _y!K%/Ƽ:-@FaEР#v1/#lj#X bۀ;HyrAMa jtJ*oX|ѡ34$CZu1BR9Eߜ(*ObDf1YO*J$_P> "F|oqd-r]au1BP,T?Vvx`nǴ"7woc-e)]{_H1(#(;H1]n+\]5~o#pYlp>bi%Zib g'QGՇ3csࡗ+[߯9ꏺ'Ǹ‡8ً(V>9U |jȗ1@y}נ`s|IcfD (\fu38p:=cB+⑔pC{Րkp~q`iskȿ3J9 ]a{JC9|j eyjpڇ kj+O&KL Av۶|^vw&`,6+@u3$MqBo4g :C-)>`JdM w'63ér&y3 /^qͷD&G}%f掺iw}oG~~,@IE[&Es=4"zcv_KM gt/0៺r?U+bm(~=I_ӪGd7} ~\ZYA"* %]bS?8n[)װLd ̓پm$T q&/1 . ح[)^M}Z"J|c;͇=Ds?5Njt@` X7PҾ@ ̪nR|DKh)̱17}sU vT{؋aY3b#Uζ3ׯT#m\]*fきҏ]TZgUI-9 umxݖ D=_3yq-bΏ5Apiw*{HOEvm!Y%#!OCM~&6ʫZ.|&j^ř7C?Z wȁ]^{q[CgyhڠK39)=I *9,)j A'hߺ0I۞1t &ry`N_,kUse/T^52U(tLO| ~BcAvpyA|qքƲIس=m % !s3VZYnϳ^uʲ$y+קAWx(j{ (JӉ2Y;cX9׬&[5:M:՟+b4گui*tRwguk aFuPgUe~Tw4XO{5_ Tfޕ"!ZXŎ,sx&82 7 Y ~n _$"-bw#e0ȳp@sZʆ1_096 H*}J^By=~y_PxB==AZ0fY¢8۶ @$&#DkFH !B%gBv̓(#%V$JerLO"K2؏/ߩ3cvU 8@Z=RÚxaZz}q.^hQXᕻX/pHF_ZTDnC6)v%ۂ .оݖpZ-r Py"鴞Ì*=R_I)㸮³aRpSZ0rdq^Uftܭ84ti9@1*hp)D~D{y9ųz:fL Z!9YS4qaz9@Rc+sGUT56rK<Xmby OP 6Xt O`JgUQedkx" 涓?T*wMif9S#Mq&?)ZXZ6:uob0 \U d)`R9u}SGS#2a~BGzM cPwz2ے=X% sD <)Gbrl}س*6$>' TͯX|Oت-^Jh%i)sAs.Y~5g &&v&sA(|}k'R5w@Dg 5~I̓11k'/Tp#[gS+jB?m􆆦r~/35R [A"{= &REhtܿ]raߚ9{-/b[#{5k8ټ' F͍3DpA'cBd>D8yx;?=f,N!;x5sn J8J(OŊ%=:^CY%sê/}Th͈a:&K?8_Je`S.A&žaR:x('$%<9I2ϗd0%{z{)AU~dMVvEÊ\D% P+ ?EG%rHm#Ƹmѳ @-\gPqf/ п^ kprWў.l:!sI[EVɳW2d΋}chk#*t[ }*18C]Gv(w1xjo$U=9@vƌC9 H*Wdn+ڨB.g]|n:j'd; swm"cJ.7NVҴ;]>Qf mebD7RQ1FJ>|?;:ӣ& ' f{)=V*+HqbIh"QJҶh Wew`)c|x}gA:Ѝ?*>i]ËH " jRh&!35dɉ|Chi$. Z\ta&;XlBqhHDRL_ZroB:n+#>v yƏȴ6-\߳WVN Rxo9Ifh^ 6& *߹:G 9wՐD#aFhV̕"r9O/D.x? lq}5j]oM"/| W!%;:|3޸NڰbA|!¶:0 qۛ^Oy>璈n%7&rDnTh<:L68g:yQ [嚽}+g|肆,O YzVZZLQmm-2D<<& </2d/x~ 5ԎM< bTdOɈCgߖM4V={]}$ gB@mx^K7ʺz"Q1Nvȴ)и9(ə9iE laI|z/*Y I_ɐ [ר{"9uz4 ʖ^$6ֺ? *yөnS޾`ڗerɤ bnjx nfD嵨AV۩3J-s]1 P*`4nNѧTJ,Mxt9Ww["&HӫqB=q hN/`5A|$9t8DJBI@qu~~qsA2# 4[²b(dKoU?KG,YcS18_3vzM&2}-mM,؅(PU?u7Q1ufh/52ê?*RI.58!jL܁}j#KJs$f_ Fi0gLuqi,_0$g^R,ct2]0+?L*)&]q]|E Qsj#rĎO3;UtE? }gr%TfINI2{![Ә,!4 Wfmq&=hgE8)FePc t)Rmۿ{PI8Nt"ǡ"*aaInIWh)mQDЖT]dsy}&ܴp:xdtu^k*evf<4a'C[I\k1ѡU:SVoC ZT ,#@uAd W$F/^a_v(BIԀS73|!Գg@G!2jk lX^gfC=:|MAIҼV?ՕS{-)PDیHvNߪo!ia_B8@['daPhciˀ rَ4CsPFm=6Ftw.fzh<o|rog[*BeY!*NW߽OI jfP=%;wy3e[Hk:ыHQ"+]/ &Y gb" sN^R3,e-qlrK70TL Z4,~DdKV59v::%CA)A>k<K' ؂p)!A[D 'S1HP_0S){'-Qk@X2"5]KHC r{}ZӢַ-u@Y\>n0ʱ#nZ"Y2ky>]Q;8Z]g͇z`;ZZp& O YX y.Bj:3 fe2l Os"d-~=/$*'bjךMWnt %wlIl TYO1<Z}_ q!8hpAE:̯?$s]Pj$6U2C'rÔ. ڢL{ }X="ʫ4d/H,@RB=uI0\o`YkV^IקHj{iN |]RŴ}Ӧ~N۴^x% ЌQCtH<7rS-UF{H|kplX<zO sgPc*p+`?Z==1SK W]?UwCVË m$bfLNN/_UQ|\J{4Uy|ef5v(hqRȪ1uuh]g+i~y"8+:2T$ӕBu3 y|9JJS8vHxF$;0 xzˊIoayBloQ<<9,1^ܦu`;l4IeO2 IpahL?+_ċ|;Sk-X6E)2Ž`gyk@?c%Q\t`FF'ıL ؓ{s,]qE}WxfN&b5n$NVkT Igw%ris:H)U3(֥G9п"?ϑW*AYکfBJl_ H S2l+X\mV5lVCe.mCP=䨥7ݙZ߂UI\{.S :| (d*ǎ8,0Ѵ=1 DP֧;xqjRYV|x\5˰0a4!Cd:uc=PX9P }쯱g?_s-kj$Z;j>bNe Ev]ϰԽQ`vcR;Tx PNÂ_:~bܥd $m:cGd}wIH&!v* bt3@@e̒R2?:"p'艪^IOxHkH+/ȕLlϏgughz \ Fh! Qg eVJY;:gc`Ƣ%ޑ4T7٭=OrwCc`7kc61.h5xTkv3ӭ$Nxũ;#PsK; Bd܌>\rŶt64H͖R)YVq1LX ᷫgr&Ln'>7TpU_e\K~kvTO-; h&_ۥԘլ Zƚ?Y#V`|?O<6~1Uy͂ /Ky~خ/tz^_K[.d1;F)ffXaŽO*AxY*nQWd;IWh: *`E9 Uf8h8 OWk]Gl Đj["f1,MKxx%&)?Lg˷B&t}ި}8Q~"ԥ q@Z\v7Z U {U Tŀh/β!!fqǍ88c!qاJsI!%?cc,?H锘_$MwLJf6E9&1|'ϧ\"uOjlHlnbA^E^ ;tY}Ã)v7í8-t^ԹU#ԀɌx{FR9mӉv.-a_;/E^"}}a |Jb=$C³e~,kT~ݛcfgXԋLa 1}÷Et>>|Zܗ ̆Ϣ]˱b%/ks/F[mp,ծQD$G _aWkyҴ 7|l{inh7f9XpaY&縃T+d)+{5RknOr_rb$*?T>E3R}L.&Nz{%D#j (軬;Lqz;) ʹ@eC; STh$U].{Q{i_tV#寪gpUUڦ8tRcnG,y%FcJ-8{` <‚o qP+ Fb (>qr.D\futljHLWey&J*4Њ*c4/Iɒc]h-(y\bA+,彉dJ{jΡHwiउ ,qs#Ld^h O].D)e3$^xz,T(F=;?Y ff2c$i9slVڲ_+\sbՔS L+8r!6~3 L] f-2{JPp'GC4Ҵ;\' .w \P +NMYV $ uRܵ穯&5qL-2 UwGԜʒeG;I}_@ OMļTVPTay%G~i7@ZPDp"F`"ht x^{l#ۊ:G@*/:N|SUtc~9R(dB㙚׳uYi>}xs/㣧l|F.^! Q&uU}/n_ gJrKԁGL^?N֑u|+ \ܲsNy'LL`m0皸):Y)D<@rކB1[ ""?l3w~Y鮨vkbQ$ѝۘ'<77oNj} ͙3d0cMR_V15 ~4-tGGyz@Q#?.PBXXR3~&JU@O+KFJI6d?\Tm!JW9׌ \ *S{ߠc -`fd8+B,͹Ί,ȸ7a"'/9bZzDIu0JgbGBI?`}k p5/h4F܃Nd("vTuwm-ݚh |TKwL,7WG$#\[kttЫM+2lٶg ggxM]|\laO%n.fFDdqm>3UdC7QV $T,\Zܪ*U{gd'PFuض mbIYczW݆QbWvsŝt݁?&wh^G_)~88=89.)'GeKzqY_zM0ߨ@ O"كIrQuqUx(!Q~ƅ}Y^+ O֧dh 6z~O@~k^z"0OܣcЏl'}+MVק]A^FȒJ%Bյ=l`%|5[vSmEJK`raάP~QܒA_m ŽbAwl 93?DSh^!X٧ :@M r: \`d HcDނ=ifKM׸!)DEj 0CI4hұ&?nR(\)8 2ֹ=RQe?d/=/ܽ`QtKAPԟ8s4$ʫa$$mٙv[ ]da, K dC潯!m3ö5pJ{']4*Kܿe/4ʊ |w B\1<;') GrM$(Ɖ"K8%x^R)4*`}۴o7],ify~ݽ<5)]hY,ZʳH12C{U|3&o-xq0Hs`︹!npz &IB|/%&#/nnky b[yҢ v/ǔ RҟώЌߖ,koEh s:C)K]kڹ"טY[>X% &x"YDg6-<报^5?G7m:1#[.O 3R]PsNKfP-Ҝ>efͮ9/ u,ܘϚ͔>)Ҟ1%85ԙ=hD$$$PUnTE~ Oz'^叱siF$1B ' \I;ǗuM &}˓9IEBc0`Ury.aMSC$MP eF|Rukjz0nq͏4θ2PXWht-e7\;=c-5HX&xNNG)'g,mnJaeO7b?̛]tjǻ]>m2ZOѵ쬰@ÀhtIee9:@_wr(@rt.ܽWlkPH͌TCNVO.i!-͊_㮬 Փ 3ETA=(dMQ(R<*#,y?1che&)bcl`;6,\rN~@H_dB I$ԋ51HJF>$]xʤ,QRn#x4c;acOٵ8_QxHPxA`&IEyl4@0Ds= ]I-J`J:w3 %Y]7t$u), (,Njϋw.|bpUڐdCrr2VF3qZـH\ ۭ~2#J[G2Φqk( JvV czU+M󮴎E5̼6?4ʮvwB>4LTU"^ a%WP)nɔkU^ns?N;ݷM3gs.d@Lw6>ئIFu[i'a~w^7f~KeUcmNTd3-,>\fg_d]4-RIBoʺes&N*mz|B$y!;m<@_phz1"P <u>ϊJrnؖYؽ ],-BWzW 6Jz꿴w WX LȳʋL2rqr%/{a9Ɓ)FYswbIn.*/Zg.Lr@6UCd~\){"tHLX"R4_)l%ڶ0רЍYpro f&UZmJs&4bq 5t̔28pha ݃s6n=O@ +TTdr!#/QKdl!:𡁢WqKoìrN9ZGyAV7{)%zqUej+. o`F= C {~!9;!\8dS \p_t6Z?u>̽ |VeFHű3h.tݤIZoN(/S[!toU8WEYyP|~άd&]AJ--R~.!>Va ( wTT-7lӅ=%+! !z BWޮoC>O--[!Mt^LIـ.DB F'|(&}NVw$T̃Mq;^b9N^^[lsX{t;g{_KJ30.9UJ=fDZ8NߤZe5'F,i'8ovҤz썤aɈړWe ]xf>G]FTjފ t,-;T 0f,}q>e\L)R ;^kck{X6:h687ԞE*A|`Xz . {s,s{߸UU55i5D-3s2 T;.*M܈yUP_U[F;:-9d,8Β,f)BDMxEgX ZCmq5W׋7ZpC&miv-@ʼnOfUa{_[&96#$l )."L@k/:MDuMW\2]31b^7ބ䂂 #"eI>Ыɻs:ż,FIHЎ.pY&V'd˧tDwp_iR]05cU[tANn8R{]:Qtj&B#:冥Qn Vd~EYŒ>aj"_J{BfL\_@/ǼHbד^o0@ĞSUO֥`P;!"?ÈѦ-XfwJ dj)UEoWk|e^V"G=&|t ',Xَ "sQQ*TlƻhjFְW= :d׉^$k>ߎLiT$ jn~3\KʣE=v=,LPѰ2=sm\{76T6`Ug_V{7'*K2z`󲏾=ȥk=3Sn^F=WCP!hRQ gX/M_6+-Ck*p 7h?P8џdÈ*FRP^-xgcۿEK0:t+!k}T?AE1 ͵34HQS{ӥݥk:D]N9)iU6)t>~u~[L-3V:t(kH"QF8٭JS?%à"ϰ7M,s"Q"즪㮶ƥX! St)+b[VYUk[{ОO>2fsRO@t5iDTIH CKM6qGKBV;ca8EJOs 0N?_gJo^=r"¥u(ܬ= ,WEٛcD%,Í &OshP=3S'gL1ZD&C[pZC ' \`Y(=3qU%ahՙʻOwhjhĸC[[}wv-|޼~ZĐUzΆLLj%b#=CUT;ZEj ![|W_$iYoG t'1z!g7{PiD0A<aˍ^v1lJb$)kyShrU5^CJ\_y$92w(EX 8sFK8 𵔿>9QJ;md>>`.`DEX(14L2IczmUþQy/{r6XTڷJLI"ܼ.3iVZ1q]wZ}/3 \Z*TO(F!ґqM4}FհG7OUN61dn2TB±iЄe!eլ-ElڗYYWHP )%sAx)㴍W'ZDif" ǧx{Vg{Ms#euSprd4/iFJ[VzCԯw4稊˾ YQ UK4)TUIӊ"F+hb|-+8RK:9 _2p␶"+A,$OӝKcv"֫Kr0sH9k+ 1kmju_\Ba2T*Iɉbp$m%uʑEÏJeѷ*ҳs tvN߄:-po¤3:կ솽MAĠ(*|Zdhz*TlںՖ']TQ>A"JJn}"Bw0m[ѢEH+f6/e/KyRMf&%#R޸Τ./Ud-H,:'`+d2CV~dה{c(%&w[`y={:G K;~g2nNdkT|͔ĠXff+jIF&-Y!l5Gw]Wn}+jnG&ʛW6n>^NQ*v*kL-6bHKcRy  ׎^S!;B`ΤpLg Njckf6aky|8F3VrPY Q8i /Z+}P oui,!1._":\o<ây;d>`7ި h (vNn ϴU2Z#֊: V4,?vWߕ1/J/edDJ1,Ayhjrb;Oˁ.`M/i/YHxfɪMhlH=wH0y~N{iN ?1"g=O^׮!%oH<ד;x֝hi9 =~\ 5TbSd%Cݶϯq0?)ww(LqԍXL4h#+0;K HfcVr?/ha. k%\y6d1 %03깎)@kGilqDmxfl)QۅV~QM_4PhGܑZW0b}ލtTl`IZ{PyhevsPcX<ǖƱ$ $=xwv}AB;H`وHCxp _I(*a2F{;epLJه$`V<=p W^ϡA?&r=.SAG"ķ樄>(ᦼ[ծ;V`r*UӣA41ok{1_3aR7K'\]pRVBq|=~S֢f1 !͟r(&gZ3Y2ρ6x;Jg s_+Xn\/851Pltv΄Ib4EDU\K?Q P^;&_=bыD_nTJVNmu#nJ$~0SEj2!4 *눭χ憶*LS5waVtޗ1ju60Tkq Q(tgaL{?C!$M"|SٽVq8ɾM]QPf#s)4µ]\ n$o":>Y{|vE ^&+ SZ^Nss*ZD{ EN|rŤ][xԖY_fh'c͕Z ԩU b;|$s4zbv6뷖>[fZ+ _ 6]} ն[jN7|aVqLdŲSdz xkE&*D#`5QA2w}~@žӤIX"JWJUlX)l3%V޽{./M3׉Nc%^dS~ܔ؛ͧQc71LG1 ۥ62d]2ho)3,o)[,Eh[ABKN+cޒd-"7"wA(ob_fI*i|KjH>jt2;2[:Ʌ,L>%`iӲӕF.]heF͡{$8P+/>2:(!k Lԟu$Za'>{nCaϮ?{"k!=ኹDͅ ^9kXS }PNKFB]u -e0 \w{RMҴ 0I,H0Cn.7] *Ë}OɇUsrdqI%LЫI<wlN?,;WXx&*b&Ol@zٙ AR"[ZbjT8C+l[7A=c958N Y1ÛպB%ipCOG<j2dIi 1:ݧ:܌Qd~>R<9^MG6DaX y@dh?E?-q~;ocPwfB΄+"r#4 %QRN 垎&2a**‰Z+WM3> y,Zv6Q"":Qc{b4Ԗ ̆A޵U d/bMԀ,+7%^(he*X̀8/ÌDr6MsEhX_&197Fjj7$) BL h복-(3: D=\AtƄg5jŶkԽ_nJ|Cmh!|~&+Z<`eĞxEM۲Os;yL2QFt|U4@0_,`| N SЂ`tM6y.imevS-eqhCǣx;ߎ$xDe(}L4xOȲJ;@}&&w&/=8εziPJ߃ɗ`G5#N^GЀ3!f[zu'?= !+"Ϝ o$ʨJ5>dW +#+q!D|&i3N ]i̞p,{mT߉럂J/gfd6/0/_ j?,m9j_?DyQWcDq*jdiC /N_3-oØ'jn @9p'~KeMלw]6Š;U=-|E z^dK+ૼul+0g- yБL 1>wLQ4Bbk%0*ӿMډƃh EDt*|gx.Dcա`De`x{ [J`Om mC5*r<#ʩU#؃B\ݣ3j[@=~j3Z66pwr@v㘑w@?He/u:)Iz :`bfݗ/\Z@ڴ:gnU55N<(/u` ~jt& f ~6cax $IPӡ{œڲL O.$@ A1kj.9D ׫ ?]WKA*,Y Yj5YiaܖkU- Sq$ 0梭U2Ũ%} BZo[l?DD;{n}aE&B;OD7Ƣ^'t8 m壪]cz Qd餇 'ŵ֦ʅUc@ufBshxNTa NS']"x\&0SY[:KSmdܣo(K.U;|g5u,';k[n&N[= b->1`?0ɮ4.n@~um8XfrG|UWd1׮Y} 3C~h*]F{ʡEeOϣCt{E #Gl7M7W}!0[Q%=5Z3k9,i !a%y{B5ڙw]e* B>iX G\_.@u>xtnh&g9*նTˍiS^`808C?N)nh] 1 =ۿCz [ȓTnJY/+ٝb0)f@rhiy/BSwT Ai', =6ZVC=0xL&Tulާa=96`eDc۸,cr?v4=^ެV |}^['nqEK{L G>X}5-L c厾h6OS":[3cCl|W m<,c\G﷐ 6. `|Ts'&׎4|c;Dɕ<uxj^'dmrqgn䄓_M5 8Gzz;4/YO=P>jUKi;0;7pJI)Zj1;yȠ??kUGA|Q&} .uPx=pͷ"zW0$ºGj(Z'4\r+$FIȆ wO'D6ÛynW w565NtZO$cEaqKԯG%o%=7C.m7Gߌϳ3L&}Ҳ&{̤Hk4n|yɓϡ5c'D2ࠆWͫ_c"V 5LT>jstQNKFTBI_0KJ=XhkN(/{Nt2Y|G/+hBDeySgL/~c8 +/Hp.9]js{ȕ ,*V~6DeQ2.[oy;X8[Vi3CރZg7LMVde>rؾlh|" U'a7g hо%Nz<% 0J+)Q@ /щRf3JN9gQ;aRΉ.6 ׍#M9հ ?{;O4 veu<`"H, ui"jl@\ױ)\}'4_i);bmyvy.E·HZ 52Pϫn3in xiUKT@SkŽ5qKC{җݬ,3c01J!~Gv^c6m;rZu a=x=R׾ 2;,Ay2p\YކfYoڲMYyKA%ߑ \\?YZ2VHwZ 62ve 0* n}6yA4ʑY};yt/b>kUqgUÈpaB.7T쫤 y)hku&Q&Dd)^"#u]fVm^JRK#UpMRztW l>0/©QA)@Ô>o.v5]7nBxwWLWC|M?|: US-hl*+VYf '$oݔ{edv(n[2nBiI^u!rNjߌN"qjݵ`:€uR9ObNqI:Kix뤬e?yZi:C<]6vD. duN͝4FGFfl0$Elײ7S3 35d8ՓԗBBKjƒ$׻¶ 9AionخF Ȇ+ (xbP9l% pPC]H0>أT.@{Zܣ3l4LgcЫU6˝r 󠎃UP ⺑—6rCBbs[NoLC"<|-xoEzuU%DCkULBv/ĩ@{o@e!Q9Z-WK1@, -äSIV*]uQz.dPh8=d5sk4&2vl䣡jb9.(-G{utˍ1EPV0M-)H٢ϬO7"EXla2(AϝœK؛k52w&R܋L;UZ)$C!`3%6hˤ!яmާ^uF娙b7[!LG>< pk*s@Ґ`RHlx9ai}M%1fU-$=40 +s"P+_V}#6ߴ%Y}XC1 \PRB r&>NxvTj dhǴEA` |4lC'K+G{ut҄2 -jP/@OhsyϠu.'t.#k׆jaR )|꺖Z()t]qLl?Ka4LPMf۽Х5 it(de ^UrP^oECkC}@fy]d fE<եql<WvNFbSnw‚W!Ȑ)\jԣw5tu>&TT\). Gڊ3GR#ƽb|TÛjp3 Y_ŏh.pH$YHŻûY/__ &^QJ]h0#·)K4)۝o͜;gs.ABrt9G }<]vAX 9\7^gOA=Pj"v !~mvzE2tA"j+k3 cƪ{؍@_|(XW+0'A2(kνs#1$GQ֨䜔tQX,AORuoix7wI 7m -$fi{h$Vc_.R]Λ,ZV`,]$+xCq Q'(> Gаba}'wy)Y\e{^hj⹮e iMe3"_s{X W:i:>vx.-f3>/'2UIf $g] 'H;ԒPQor]u= $I[ +kP eNCItǎ1lF NS^.Sܵv M/(@w`s M GEKFt}5,d$t}0/AG "ÍqU'DJ.^ FCMf,`MAJ%^YB[s6 m7xYԹxml\p9Q_t7Egh>1_A=)<)P*AW$Y;bٚqEΒ% O@wXV^SHZ_| V.N2ҽL^慛G/侱vV)B\Bp .91A qn'_`k##d{Y:}Avhܙc2 ;aS|)T,ŝC;Crz4[[}v^&u{szqf}\~ "Wۯ; Nɥq ,6a~m䖨{Iޑ d1둖WFyiAgeUI(% D>_ŇޱUqKYXG(AhH_-S2ՍG`xV7d2^s8c˳rmy_Fa7>@b3#_؉`jyƄe[Um%92E.6(26ttbPTKaYWoВ%O/1>eQdl)E(8B,|gw-Yָq)˳o~YNFRI~GMF; `IZl*8$Qg!W*2bVw:jصK޿L#:ψUM)5lG#qT 7k,{kP =ȧ R*{ ~5WZԜV#5d=>Y82xmN'ƪؙRu?}Phbڛw&ӳWļ'sݖA]+klB"e 5}.?/J m!/80t\ ibviC_;9FӘ.":>DꤖEĬ!1c>w!'3^ϥCpV.;P'OxJXk-SmSg1*jfl@\ <.UqtXWF}{+(F[LZ-E *H8n$b%I'N HYJIoϴ#~5ɸQACE.~.UVQ}PxJ5+Ŕ(lYd0|rem$;-;}5}&zRג[vq_',ה&KcfGD,Qo%łBҦ uG^Kc8ZsErg*ƇS h/QkN ڔؾ ƺыKvb_K9Ocȫyvb!}L_KCo{`MI2 /Kw.5"f֥u\`1Ӂ2#(*3beLP:rNǡ?y"L$?2iᾰz/5x> +NW˥^#|e#A[[>fT$CQj^J:8v \9MsYvPCtAQ{qs7]}T?@iw jU=3nnb},S"uCZWh8+JWb;9I:s,q^7TKu"z%j ]pC$[2 {Y J&I6HnN"Æ<;/Nip>L:ab{V߀~5 b]\HRTt(S`@b1"t#'hwp,]$NHbl@yO.'z><ۺμޜ$r$8"2՗XؚZ(8*Lsf -g#a1=(m륛 ^b>N[E2PaIM$=;A xf.ӾzܰIJrpo]1BOfz [!b{C!mfpJѺRwYdTˣkRv8RC~rdf|}ʴBKe67==urk`FՀfXCی \0:sv?{&*G0"} gYb 48 ~Fv ֬;t$LJ8C.g7,z.Y)fQ2xDZZ!FGـ/oiAV7sѴ]xI* ¡; }uoّL+b4(C^>Eݘ p\S`j,mrfj|ftX ܌s5kx>б-d[`&)=gw?۰ [X ༭6Ț?b7lݾT#hbcĖ-(I ebRބ{$=dE&d?П~.頜{[|K̸׉ _N2?6qU6>qU ?qAۊS"1bx8- Ç1(- ?p%S׻ gd׏N/]-oYHT^/!T]rɹ$dm=~o-N v~u6Әc1{$t%>JC2 {x_ɮ$G~SumF|Ɯ9DB<"^]oёORnrM%\cƠ="(0^ `YkWC)\|8Gp16?f e~lt- oTKˠ 4LC5i6Ε U((>_`EG_ÿ\\MaI1P?R pw"h&(vLK]<'bD6sS S by,"<;Lk:!|qROa#=r%|Bwe4RR?3i99q#`!,1A& gU.ғUN3#ӢyL_CS&*Ps7{C {2x('ꖸf00,xȘ, 1TRXjaE^cCz9KO{H|/n#B2mʩ;y pQՕfT\r <Kӽ7InBll}vL'Z~0gcgO|5Љ#;4)wzOMΧ4 䊵'S\Z*hZ+ _yMm˗1mWH UL2b\,uC\),[=␧?ڃygosd@8+TNU- s܀w` ?lE0y{ywa瘍܌cp'qXOlOʝՏic嚵I%0B!Ō$K7d DNW$ > 6Z~ߓK^-@"EdF*r YI HZ%?X0FQOJPX%:y^} o;jm!:)}J܎quRg"Zmzf}R5tK-o+4LS}noϪvp&b+ص$Pn & TsQlhY& ?09=hJ|+-a Qqt,4M#Q⇕/:Ag`D: !MSk3HO.2;5+z.tӣEM` Ru*719Ozi<05j߁8ҏOڢ>$9x}eV%E<5݀.(G^f]8 &[oywq ӈ0DF6O4HT0ԝQ8'u6;:sRzp:QA3xl6j01 T`zy[%Y|#O0={(J.uߗ]ޮ::b3V3tO$Jgx4*݆PSqg*a|cf N=!1w/!HᬵQ\?Xx'/f W?;Mi|(++ ehEdٚ>3({S8c1c`&VB3>e*'XlZ7o/2 `D:`\7386Ip4Mtl~e'Y+/? .T,>ijc^3u:A/61:>ji<^@}*:_47mY$';l'ABTN/z#$vֺ{~c% < ( +1r f1k4w@1_(qOgZAՐ-Fݟ0ZqiQ^F!H4GF<϶Ua%R#PU`l~sMT=M?_!Wڢm'c ,]*9>1%oJ^S禭WU[R6QPhT+y'dp̴>:&] 䮙⢲ǨI g$fY^9L >1WZ*gV}6O/[9eNNB4"C+h}xѫ $q-νVp.TyirG0^"=B<>x8y+;~Sg" k)H|wAty3z p>0,fuh߳DqJ5t2ik^J&cMGB*w3JBf}SN/2#YNY(ʏU$ ^ޏh w6(a'Jo$IA l6JgaNjH~ƤL !룂[W@'wXkӔs'9fSq7#JSsX,w7fHNe FX+ߏH_qc},˒mv~Ѣܶeu^4HWy #tL5M9:_tFN U,LkJLJv8 >H׳G uN$"rSH:_pW)t_#JdX_Rh1NUn;I1DAF/vlyzZۮ/sمpwG a2=6s=*yl@ u)0FSdpGD8}:m&P.1!W@NֵyCH _/p6ig\JS$[`+4fdiƄA0$C0g=.rh*A 3è?ݠ'?7ޒE(, wH)۬zjPE#ۤh4yʥ,H*t(uj-d, oL1J%0ejJ-1MN,&w?~;UHQ ZĞ:ojY7/mF*$ ʝB$V UwtW%&Onc. qUVL=]qTxǎ9Ji AJK-׶Q1~>_c6\H29@0gZi× At P/&MF%)P9畧( 7HX?Kd0C2Rd X8jM*$B2B1 ef VXxXME{.+lڭ> ,gA(v8| -Ȑ#rjzZKLrx7}I00 W}ʑ?-N.w FtMe2Ed-",싉}8(̩5"IS|$&ҘLE"9<ƝTF߹ fp}F$fՒFRŋQc7[c1C_ǞMC r:ʄ26`A.)ZϢG/h#7X.x}& A}DSU*pMoO66b9l6#Qp {zoLkOש aKݬӨDcC3ܝ;nsŠV $9 tz#R+UH_ lSe n˅͌G a{DxZ-m7^곷hɃ?~Fw)1翆\Ρ_颻к&KCBuRkad)vk=#.W5JUT5Mle{KWخ!*t1JY:GG@+PRH's+y|9t*Q6wVcJ`4Ԗuѭ ̀scJ߀\ǮZ- |`j 5Bk'ʪ(T7vjw9wVy\ yK[sC0Iq2ZyBvR BMիҜǙ,:Ȁ?i?Sg]} ԧ"!4:ID*K0qZte\ptvfTAx p2MǐΕz*IrF2h|г7Kv8l7%!̵n;"} DVCEʬ岨$XSIq$܇W8*?QuQ|;dԬoV!}gOQѯMIay螕`^97by0eU{ K׆h'(€0ޥ׎#oyΣSS/xNT!p|)MP4$(~nM1{Po-tea@߱WoK)D(4ZhnA\V>3XT1 S} /yE8Pl s2F~Φ7QvSm+z-8af^9" 1+rAq*TF԰i)}!;=&Z}*+ jS+,ib˝,"YBt T:n(cz*.۵N+E;*CK{9W"F;lBqG}LWS;?DI{;V \zdHƩ7ƪ[9P b\gg$jgf$޵3V d,5tHpQsF1Bjt~Aeq*D)2B xJ0^֪R> dw:rv({E"E?l\m˓XüDN[1HGL3|MP x'wKʄogU ͚g_#~ Ԍׇ-BaPNtZ2F)nXIrm8][҂~ңvM:JtOY~ߏn|vwQ'\jX&w{lXwP"_T5Oh+= j ūE YMn6ژA)j:q:9Ev<DnbAC&z`nrKO7AI咈t'J5)1hH+q1KNJg|B7\hwBO/rj>蛇UY gz`Vq#a;OB8tɄ3X2 $55 S;Z!<JNȨ%85!A,44>DE_P6lg !ExN+lGEd9ȩ]7",]L% φq!)euKyAΫoL Wz I.N Xy 8ƨT*'ɚ=ۏTy0?kv%/:Nb>ư2{pu+BU0[ RdA Z#bmcg6Upostu)@^W?[YMiKߙƌegaSzCYK5EM~. $j^horf9hG=FW٥-{+e;G'yFlcIn/Zp b g?_{R-3VϪJ -?z)x>LwF1NNV܊%hQ&2j3n(W%::% Kbȫ{ofƭFQ]'wCZk쪦W= Ӏ23;CwS~Do[dH!4&,qMCi\t7Wdc3$B "rNFx5U>wMlq!g+'fp&0;X0cLbҝ[FH-fH똜D -L2)Yx6܎ێ3BMnj0/ 6a"*o81C7|{عbEO 策Sz<=WGd17kM<.3^}J&k"iI=| @B"g׶ˬtnjZ&]I.Ɲ=f~x#cjVڃ7I`L;VC˂3'CH7C1un],ɲN4`9?D?18KwvӱUQ9Ncָհhx,!hJvF >YijѺ-Ŀs.%c/$PGJ*=#,̊!c%n7Z*gkK?R%pԹ'2JG>/69g-Up 3[(:jbë9_3YO֜qt̓vuIV7c,*@`HBioYKqb…"C^,Iڿf`2q'!oyE9:W&)aNa?Sif>_(fVAڠќԎ3̕. 'LD|7 c;o:@; RUH43ه h^P"G'u"s/$1^|OॎAp\w9_seܐOWpeGdow-1e.Q5 <U\Ϲe??n_fND 7k~>B?bJ|PzH$FuXsVP4-$f-cWrsQ~1YG1/LLONpD`@!#լo j& 5>nlP:w #u^4;(J~UsidO@g<<|>v$ 6%//P>%T$G; }:ڠo+6GU.Cxoj=f&p1;n{G:UUl8;ɱL~ެ .elb2CI^gJWq2d`? 'S咤` ΌM{ʭWj&0HJï/\;UϿL^ f˼$-yT9@5՗X]5^QoseE,:(_JR5E2hT)i0}|h~۪崕홟fĹ9)BYɈ"yc5Q\Gb'X35tM6XfOLbF7}7dWK,|.!Pz SwRϽ0VaǶQ>> LYFesyF8G_-‹? ^o^ LF(!kr8Z&PW+XЅD(m0 )2rjӱ@;Wivo]FGnrs[wQY< z[PA dӨ&n"e :.#C7[!皫=;Y?9h IhwJ`&rdZᇳ3 R'hCs#pL>[/`GyܨGߌn[DF#뙘Wiq/NeIMe<~s6F6nQ]G`r%ӄ\4W9yQ#(nݛ;yev 4Z=#qc^_luxNp*O7OmW8} =*`OZ %"&sb @l`4S7u@s7)O9~nl B`πҿ:իՌn\ۃ8ՊpO!ϤGqCbgsݠQq >g 'md ūx߱69C?`_PH\넜̴x% ~8yԘS%[ lHUhڜB0^F ~=`}?DdxOA]0 #y~|8,*y U Q2B.{b0;pEsAȗxI^LMp/x} BDM]#w1NzLF(jA24? pi %VBn")D6x87uCdmo8Z.J(ijؠqdE9rs&#R&aLg;FT6ע5wwH9] BI,q^bY>'#AWSRVRm?P٧GC&?DzKq D-=*b@( F7HEt{,^<y;yp ZY:wT5 IR6_ eH`,~ݻJ/3|4ypad(O͋ 0}#]ܨ+vSu%׃ތˡ_cԜep &7=yk2ÂZT'lOONjݸ c\,n` )TRhoRSgA,V")GTǠrH8߬敂U-[`-5qN^f& sLXjRo:+S*\T ~ϗ⡥JӿN)?I%By 8D(f{5/}v]lms) W Ao-)qJ$9Blwߖ8$>1-uyazz  TQ%CcT/d^b=_$F\fF TOII2=fa5Ф!Ccm$ S gigsF.F|x XTenTN'r]!?)o`{+7#=b\ 3 <G dfr*BڅReSƂd5"km%0nsN~a%rD#A)g%^w/?/rԀrX54#\{L٬Kݞl}sntDf\l@p"mi/3I|PW?*K"򄰒  &`xZVW?|%`gIΆB Fl̬>ƄQ"K%1CҚ6<ZA6B8bHа5 n7dwʊɖ* Oz6VAcOC{R{QKw@#!ᔡA[r%s2r sW[=kiw3sn KL]7Eqp"i7z=Th=ٶ+M:ZY΃F,IGdC:rWK1>;*ѵ[ 8He;O8*qX&9X 'T2mal6Rn`"CIvNWZ;Wz-*z#n%'V[|4Ur`Aݳ$ =$MV$6_}=,#KYȆӏU伭<2H]&*BEuMA84RR!G1ŷ@.ڝlu_7L}Z姜.*5<)N][Q{bڵZP(tnӸMae1>Tm r'؃rD}Z- MZ U n F :si*5ts8wJ.޴ӪiKqaOFA gNݐv *FA$6,TE>]n >D2H=p1^]u µ]>:> jUskI'Q#ݲKb[FFʩc $Ѯ [ۼFKky%&.nB%Mkm/*D"Ed0D]#ucOcSTxDSb$-psLQ k#FuJ-?3k/u4YN}g=[yZUՋvVrǼʿDrm))誦ܟ˖paKPj5 z^cp; Ⱦj4l\0[ʟB,\ WRttQ%mNd 1֝Bw_{BΫ XOSCp&iȵ.9B: )G?e,4\,M6YaW]p2+SI?J ġ-HϏ%l'8*"EL<VFҕEcc=½Diz!w;s"p;κ ʌg OZbIABl]NZ-cQڃCH4gzaŪҔӇJB⢝ 6# H.egVe/^.* GЏ!lwpѨ0jyj\mD稯WEj2#/pOԙ{B$i"^־j#2RZ]+ء`11m`yq$ NR׍Z4E?`o D-#'tPo۵Pq/vwYw#؂c䴄ԚrdЎo:Iu{a|%Z,~|>F^ ^ܞUz2-k~')vg^ D =D.'̒ѣp9*|Ş[4'p`s'pU_nqO*,dn1ojdXr?5).<-Rx2@Nӆ zfUOs h6MjR{=NDo0u@pʱ+[SSU)K=#v\,c4Tud@F[!o%O5 m?j_d͈Ғq⺗6ĥLS/N+;WJm35wWV!K}n7Z|v~ʙ*IB N펞<4ӐE'h.=o9tPM!PK|U89*Lj#ߪ[8t+7I⡖}<,X6?,:ȁu] Eߵہh a{HgBтMGvZ:lMas"oe=tƌej(,[_-c脓CW6v,AA:/耙ʮe!Ϭc/HQ̟j-]?$hғR:,96CՇK(oƞy8,ޢ/Zc"  '*pSU!)}"'lcڞ=9ո.;jgfɞS"bJ5J_#iBy6ЖzBUX%3. ~u#?V8Z1t^.i]sED7\gM f[8߭aTI,7")sέzcowm裱:vhWH6/q!K"R g? C%ss pX\ioumIZDi&'z' 9v>K4lv消,Az_Ƹ;XJ.Z"fH"3™|ܭi%|c>({>>4}jl4V:H.#6ry _\amςVpwo&9)2(`dGhjg!uPt" 9UoeXX]cPVw$-t}46lDdv d3$NRyn|lP-_clҠTGM! qCInP#hЅYPRXػa<&;_A*!EZ}Έ"\eH\-})nJsZW Ҕ5r t?,b*{ZN"*.Uh,=Nz Nu9_=!EC 9 p󎾻# =@uRnQ[LO &,`.]#,v[kFI [ /X/jx[1$H5Qf ~~#*/pȞUahI׶X=/E?hs$*;Yq8Ӧ{&n(㔂-; ۘ w(>^6%̊L @M;?^ :)Q[R]ɶ'-eZRtW}_HmpP9+B%n ^c]0ǿJd8y9/nmhWrh> 0+ `?=Hjdu>bT1PIZ1*P3 J2dɸ +]Hs , ^o9fbzbQ ww K(3Ċkm©<[ŭD`P8j7) c.Ȥq#_#1-SWûStYۣݺQ,Jj  EOpbbgEhG~5_;C0d6r拂G+4@IB $i fץw)RpxBc^svB lB7B%Y==*:>@C~lR \”UA mFB"TR"_z^d!E zIYB'Y$6(T_{I E^Ai$ѵb uNrQˍ5"j, D]7/㨅?ghj "h1OTyc!ΤkV33dcM!LJXڅ xF&>sIϾ% kT􇱆қφb|<ԈA cj:IPŭb!lzzLQDc]1}>iΚ Y$c'$Mm}j8 J% DF4A;|k%cZ\aBA8E/e8 )vh9-kn#LѨa^y4xc$Y t; 4wbέ q9#[DAN¸]zaY0ÒT1-h 3f98s(OҎcRP)܂⦧~A :8 '/pdi4N"x;ȑ~j~FSt~5`{RNZyeP+q8W4*t=#ӐT%|Mk&4s L>2yйuLmm%?.4# 7ĵM4m^;9Z';􈣆?2&[ֺ[2\c)ש/$$Xˉ},LB.:fଅIc1l!PӼ^4g`h2[گ DZlb{~fBXÓaz>CeM͹}Ѣ-4.+PD+9z6 (cnv BQ0J]n; -:sk<>$σx9-^v5)_x ì pA6^q9ً8߆kiK}Hc»6]# ܄^CDF65#|`ÔC#wHnxy{\Bt%ꀧhףe=ztSXZg_-ph㽒C.By1Ŷ 2*e)@TñǜYcHuI#E-D șQ's.iLj+FjIN/m9"@u$|K0 6\AbӼ&Jo Êx yolb{I!QqO Qf8cF⶝TJ=޼80CgKdiqyksK6퍕HM߈F"bG; CSZ"m*ZuXe=UCnި?bvfu3 ,f#(la`>NBPZ9b44#+U2!EdcFdNE]a-tL9x*|-28NA)TdG>25]O]=;1HV+r  |R C:9&:GP_(;A7G᥃VٶˀH˓y~%< NFd/dudy]9m tn|IҺ)澆sϨkd䢕O-e? w=kNor|=r ,U.D rJv8Fc xhwI fb%+ȻT6{+pU4zyۉKP#g̤9X\_f{/O:6J!<}hILwLfݗxOp 0|O.1ɾ8'_UfO+XЁ%ȓ2y.:|<@=Խmڏ,_^LJjU ~N6=WXQ3,7n%A5Ea=rS:'Ƌknf!퐜j !2H0wVS#kuÇ6 %ǑI$ ü˜ZPs6@ ¬ oz1)4XvUIQ{ R$_,Z$@a_|vTaM)nk0, C/ ?#mxz4{)9u={K@ۍ>:.S.^؜O%\0#6]IOO]S:^}M }le 0,}GgCb 7vbI,s%%=o`4m;޹><8[BXelXR!JW!y򈦔ZXmV>% >Pgc@9xb 3\g=SF38p7IwszJW02QTڕnӡl}a k:!03'܁@V=K*ntiQ*|]K3E1vLM쪚:$ :a, D^r|3' *IlKǞtpF ((Cܮ,*&dW[G.mBU7&1D["cs)sT~m~d d AZKѥ_A ]rGf㇎9 mtm6ӡ(bA]cP0YJX}HD Iϴ;[6_))]1G(?.,1 jAsM;i(5=vU=q3a=Z4㷳7µ%pPL,dC_R}6/=/\Q&y¶߰D ?N(%#?yIvLZv}*D41M/l`PzX%{1g,SV %gB=NY侍BB&*;jAJxID,)̩ A[<ue3qb3Y,ofqe3}OlUul1dڙ}Jȥ9:#yVy+N= U9-^2[X,8eCEROyN&S4/a9hͰƭU bcӅ2w'up4VN8èVMJyi"54OަubbO҆_FX;dp>9+lwe> }LN+$a߲Tq^oV]˹ӧW;hy~'QY+]dB՝ʰ8h۪[AS?wSxSKüT& Od; k+mgxƜyyvNV8Q|DڛBcCP!,<4o/heDg}-:Zs> $^QN,Iv=uzz`7 u>7A`?asM9HM~ 'tln ]פ \ 5bi-Q2vP=*#l: _Q-(\Q i a+c(qѝA0>W\5fƮdp>u'3^DD9dqmq')G<^v"℥_5!mxb 6#yZҲp~v|RR֯GħZӈ]ľ1,ZZچ̰NSSeVEwиOEfˬmF票!Z_椮vLxM!̳myg 03cKɩr+m)G\ioJ8TCsb CtNýW,XL5y+QxZX!W,wRulgdc'PL:|."&2u/KZ7:#SZ?7oZ CG[eZS+U::7Ft"^zp? 0[+raܐ &m]Kpg$ aL|=iR~6e&nË ~+gz뀳f̫6le\!ٮBp/[AO_8kSO8M+oݳWotdQҏF)~ Ca*E>DcVKQAyY)lfhRQ=O/`k}~%H 7ˠ Ҙt݃Œ /˒~WlŎl;DOX~Oo=`pd kFhvL, ,Tk>IUe6쒥d0 =6fK( 2;Ո a tYNPd-%,xK(Ah̬vQi7/pU-%Ci_qS&@o!‹̽fG&h(TRDO|in!{T *eFvOVCaٖIk[&퀇TOXZ:v~N} v/)ս7r`]_HZ_L aڰۧ8-!ޅbmz9׻u BǬ.zqw9bR2a_kȏroV&JOZa=f)"X纑~v+w9?oH)HC,کr-zTKD0 ԭT4XP=6N 佸)# F&;}o47((qMiSE5ځY!r$lYi7+BO1n򑐺+ |C ?~2E)vFZMo˱szk ѿ$K?UgϤ'Ɉ0*tkrsޭӉk])2wQ;T/3w)|'k~WLM[5uގ[[\4&O^q͖= :hD)oqcz % jrcW9 'fKQA+:t4)t V(8l:@Ֆ^& O!9$谪w6`ЛڲbDzhykrURSҎ5TdG:?j ?F k2g?F(r1׏` 51 Db8uYfz҄N0v]p0 Tݛ#H҂Pଽ)hl'K-.Wu9CPr&/|EYt2JS}iNB?& &$ד(^ju4YJSX fʲ& 5./gQQo9nW'oW߭)k3]) ۝xTD}5dqm#VH-^*:euLgO|$G[A8n}$u:= _.tZM`XT ;/k1ӵtX'Lr&yQ(kNtnRS6<wU&mX%bRIk x'V8B!4>* ʈeiSzK"j⭆(2'i0mb0-% ځ30 W[orc+kza"BOוGe8\`K|l92à袒_8Ǔ9%QX/$vK-ȝo aXҴ~$$LV_Ék~h-,=ޭ !D₀L `hi;"dhTD\&wc/>AУVan̽Lڄ8]kdFO*PzMu3`&X~&Kq8bϿϋTm;)n8۟{SX[FeFwEUxO _:%?랶EƷ-etgB/OA*+5D|`x'{f0s=ߧh&grpFIC|6 I|8 tnNL-W^ i+\3mf,e꿒Tr%-/Uj3b8i g,n+dDŏY`n/hӫg3p-0l!Jw|4K^Qd,5MΩay?n殺iH\xYxa3rb;Zi|IxS}j#Anh5ubIbhf A<9IT+&OYRn2c;qQ1&+`d7 Kl^| ff&:Ft&<}YiaMLήAw^#80w4Y8h؇f)k7E $n`;J,Bx{iQ- U$N `ƥґ χg0Crs5eoz +Ulz9,:>ˆptP>[CJ҂KQn Xz~(` 0/pn\(Tɒ*^qך'nn&# sDC>5C>G?%vؚ~cB'c#$ǰ(9@A$ 8A `kťCцowK#GH5,Mlp2@GPRSA[ea M67Np?P=g(I:Ƒ* ?yG,RG2,Bkz_ak@9& Dr_h!\㠆mAODÍ] dÖ8WDNǕQ[X=(,ndYɭ0#7*f xsHEL@=@վ9X:c2٤(#k,#[>(nHH w&:U?,PZ{/ l$"g9eV;>G+zGg*{v72р{imN{Y* `_2ij3AX qӸ n(G{n>.739tu p4D4ΉΗEU.%s$ARd}+~~nk787 h{IP.֨H&J~sT^2ɩ[Nf[*8O{aOTh-dRހo6Vh8~/ @oߥ1^Uʍ}_H< F+Y/v: 3A%K™ /-WHO :zamv%w=uvcj{4SiìXm^/\;3H%αbEE``MqmQ8"4TUH/=*DlUd t3H?Y__Pcזz#Hw8 NK}H+1a;0EKItL!gWF 8~WRe5?GaUZ ,Uؘ*6]zEF5F p n~xC UVu= ?UƼlCOl➡~LwHЦj68!n -ɑ(;P `o7'A On7%تRI/p W9J2K^ɏ5n]xցcE}N)2)p~Dcd% CI8j9,?E r8{`*w˗IG\nw8>Rq60 3 xzEf,;&Ǧr{#*:]le) ifCHmX$AKpO` c(iģ%y{fulkKv  _+ OVfwGu- ]S8̹6*q5T/vS15acyz{I[F #~oY`EQ~К'R K+ nDIl1D.UXyKL[u^Da2nŌd8%[\޹l ~0BEUZ/Caa#@mqJQq" @[B(;jn{&< 8X,rn,nhwCˉ[%;@6Z<@UP`5Xyzzr:DV:F6ӱ7mG#%;}:.._1ь QWo& *^P[1 x1UH5>1KŽ R {ԋuM۵R #㛜euDLG|`ʳt֊s?UIugni2N !~@l9[ 9?"AJgS@oSK4'(U.t(^6>N}π] 2,qg^C8N)Ϣn"[ҏDDc#y ${s]zO WT{e|uHD(&ONwew+DuiWGD1|eN\*(pIبd<-Ry30dg?j娥L05C:ةC4]oS T~:8y_YD:9?FӨ#CH܏Gh摫P2'|[yKH+ߥ*0ﵫ&[Ǣ ?lGsh99bфj… JL^}[U% TFK]:N7ѡ3o j؉ rF2݂ n@0Rݼbt!D 4ci@{NR <> -86$Y!oITj o͞rAH/Z&@34K{(a80Ej=ϐŻŰZYE}XPE\baZ4mƖYdw8u޿&9aD-8E[DGx,BAeS&8 Uz$%=ˊ BR5n9%I;P-yJtSUKqfMʹh/pE> ?:tJ:W"灕Dt3onfl “_S/Um&4+Ldrm1-+w;>޽'| 7]~}`#JS#q GL{4yq"YB*v)LY^D֙1:x/ԢJ3Zu ;9$N \АMxtuA nh&"Wa{gPR3*Ū:qDZH%_-(Gh=|kK<-~8vy& ϼ0^#˫ W+ 6vG{Js|-I\ߏŒ䃸bmG`KH g9k&F/aht'W\&V:ޚlb)'9.dhti+ KK|&c=Y$]FΠl@9H8!ٕ#I-TC yGrGo Ҙu~Vn?}B_'<-}9) ϰYg#s'd Hl l&u  Cq0#x֮F0]PeDXgGRaf?k`G!/^`K':tW1I1fE!yt?,^.. M8("5';Wġrz4yFfQR 3WHB;MW``T5C+0Gqٗ1&ћЏJ?y Yf{Wԣ:QYnZۖ)HUŀ}-܌1 v_^}|1qF"^bE` =5vy m27Y%@2N7h$v ʙVM `r^g>ۥ Ȑjuk}"hEWJ6BL(KnKMFTO=-zeQfCԪ*ՅŊ⥞X4^lr6KG5 hv A]"rE'?ʨQC% ̨R 3v޷/g?M8JM@Ϸv@(DمdɬZ87uJY 4WcͦGy߶RpVq|VwGcֱ3Oiʌ'+): D 6[^X8\r{T|+*oLg[y$->+@'I!Z>lN&r9$ 2ܰJ)LbX7vܐuOMhq#Z0nXb-!TqKlQ:qw>IOuo1Be19.އ^ƴ՚UVs2A8ڡg%oť-S`bkЍ hrޥ Joz nSxRt"TOkTYǡޡqy!{l7O舼EOn*].!fҝޟѦ>؊J| T1dW 3{e_cѴSӼy<U@Ih iN푼b{(3/Q`E鄕WZ 䥬O(/:KllIn)u[5YhuF+)$x~\ҕ L1w9\x;yƔgY&J:wmDgId'q= E0 pIxә?ҾjYS3jD.]/ijT?(RbO^Ƿ{@bC)=YlwPSk(P,f /Xmr~o/_!r55ekFSY5Co+鿘P|h ,zsuu9;Aёz:XhIVФE +O%d$rE@ yyٔ'fV~;m !DVuw[g7xNp(-!Nrlu*4Гl vJ6a@( eZr ڝLl}zKX( G)0*c\m_[7cŠ.09W HG7A޾g);~3!9+E%>'AiF7xD3?j3㏸ƶ9 ar5g@Znz |0Vnw mN!Z*efwG1Wqsf}`xQGW)7{C=~M,׏ _A\k7D;Fbxc*WV–% p{B& zQEBy15򍤱uz_Z &ʁ!]cC^4j7Ʉ ҆bZ e&5ôɀ:_j2|0j'|R  NNxj;|t~vMfmʘr0\|8T"M7D-"˄uӽJ WemUwҢg&F0uWa "vxW3[6G[:B>sΒs>sCoϱw Eqr;Ԕ"7mQȒP !G o,q[މ(q[ 15v%O "YIV|2>[t.嘄P4$ɶV!5s(R=uvW{| @ykNA}# B+ @ƌ:) ռͲ2KٷQKQ2Ra glR8u{zҢcޣ4KҗE[аenA( |:f,?'Q[c2oM)9%*HvvPi.?z|8"ОqAziФ|{ S)sXv92OR M+}eLdm%Rw-3Ng0<g. _դB[eAmFɘT-%4WQ?U(b97Ιc G`_>@Ʌai%{;4sv/X̉LdNP#?Yf7g)#P2r`̐v.o0aux!?!4l@N nE[S+;),}?sG>(2#^f<7} m'E5r]gkr4'"$vQZ:?p4 3V4쨁]+YM[:j CX/-Ah ebVY,QKa>|xfuQ8i_g粝=1'a+fKEhлʡvmZRիSaz#|giaNSs kTwgĨ8Y͈e{A@hpOI6 V?.\Qȅmo4zJJddtօPss-ShuZ ]0EٝPUQf/UVED>{gRlJhlzAO-\yUfMlr;: &I/ ~bF*Q;|ȱ/ > +fBdXyDp5־23 aNQV*j>hD^,[tiCySsۄ?]+!U(ў3'NOVʎԬ GE5^z >!bU^AKwT@V7PV.v=X:3>W6Z|OMQ/tI7&y=KK1R4[ra8,T|Z'l#4DsoV_yN`3 (PA\˴3Ŗãҍ4 O/Zo",*+p#&+E8Cn]uz\ʨ@.{@?KՓ5h r~a|3uAJL~2=tݹmm=D2NwE^ '(OĴjgw\^mQ'|R[֠ʹxwYLUq=šq"f~+ 4h & `rѰIF<@fGݴQ GY:*^IBHZJ|q &2p k|ZLU퓒|30scM ̺?!0'UKKmﻏzz  7'@Xe3=o׸J.YFB/:d (*<jIwHL #Z#R߼Hg==ₚv"vhcxݯ/⾉* މ/5,?d1v$~`ka;aǤ5 c ™dEIG`-[J hSzJlXmL77MQkb`ȾȔ ENFr/| ="vi8Tm[N02B'9FH|fpzm=}|2IYPN9 s/16$q<ۢB0eLiX'1~KW%\@d5k ϕn?4F-peQ:镇gf|Ep'%@>n&[ /La=l ts#cMBW"b(ui Dan>Rg݀ Z@/[a;N6"z\ lMv zƂ7={ZQvJ *e?6*ʥ+^lfz%gD#l4U.?3Ӥ,1 =Xcg1R*yWk{K"ڻ<9FRjCUvmL9Ӹ&YTrм+V;AajS5WL5OaXtU֖3aK8;VfU$]]7bl:q3c6 |hZ5ZԎ0e,{;,#ch/ׇ>a2NLB97-b+ R2I3dIt6n9ja޳g8ވ_kHDEh-ҠuN(=}'Y*5͞)/IqTyw.lY3?7kЕVP:R*&=ƞ\ʠ6Aen3V TBF9tZRY WSp *Uxf~wj~ )0'Rqv2`ɔ }@tɘsQ(K[82c&oQt:H_ }9)hf}*)'9k\; ^ %fB$#PdE7*?a0Q@ZK@{=Wz"Jix )xވ8J\{O)dOGiV?NJoTrZ*1:y%Ei~ȉ4˱{;sv JH T*oD崧T^V.yr+|;P[HMY-U>KFiE u>Zyz7?lb3 Enz xPӕK_rX ߷/2cuG-ʡ D"dc؄+8bwϭèujr%@v4ȃ<=Gx? Җ]Li|2}͗֟i.͙݂ LX;<P`gnUd 9ă WWp= *]Ğ?IM*|* xTr6GH1oGX>zGvQ^BH5#rlYlOf۷RB2Z0կ'#]O Bp }B\2n3XȈFW4'@oQi `|1?aa.ӂN 28VkH2{sEVZwx7?q:H] **taX [AThFYۢCaxrSP:w<@NH ƳX]ބQ6kdC\J+5_Qh8 L"$Ik n'{Tx])[lM.蕷E .rDV68>,5ʰKh=وcaZN)B<,A~'Jj,<;&b56>pglV59[ GR/e[rVC<~]KD%2u􎓳~2]4b\&=U|KG"z'-5΢߳‡ !<-q2 j2w^ȣ 0'|xkfJ0._4K0>"%@E62:,=t6`ꉂHYul=$'Y(T<=Iנioyl?[yQI%#7nV)5 hﵘ( ~5BGu |J+N~Mb.<âhbnuEK+pWu |ٓES`lJ;ğx$ohءuHHI i+KAQAvz"22^|~,imI <6Fڀ*,˭>gWD_S邍ؔsNϺX={x56&l*!>9 @>cu^e?ƚw>Өv ]?yI/ƍ]+U0M]`&04 L9kOpTqC{h@Sa rHVMù>*uaN<rJ„'0!$_ ړ*d~fG24iYѿ:npX'"b8UAћUFR5X5%#kunrxzyKkiystY\H@O!k,:OWZXҭYf~7SL*27TWS΄v"R@{m 4kR;mȃ7M=pfzf|D-pk*78bA>B KЋ͐ȩf&lb8z} ٥15c&.Kc<^ r* ޚ%[=2J%hnـ,ԊZm'پt$$mNόwlUHk;σk,R}I(PH?a2: J}п(V3y|n,hRWLMVX3tɿ*x? yRlhݑ)T>I\s{gj@6D fJüCmw8`jFN·tmƽMEw8t>=dJOc#>j@&+n=xh;V;+&c.iZfCNlPC!J+KbVx\%aY[n*گ/{k=+Vit͟w6<9 op-ܚPJDDY{Hg@F1ո]pL"wtZ[V,CέE1ZJJaEjK3q +!mZ+6͎E1%zDáqi@y@7S{2+b?p6AݶWTX2xpPT#`y.4.]]^.BKCAB>J ᓿ7" è2RJ&m R#ya3w)$]i" YU/O4qBM:I$r=j'~EZ3Q@BQ/݄ge oGsu.7NX8YyoXaoSкwqoZIQ'J3w?dgq_LhOnHҙ^̺2u%9>`ҸQ߾2f8 *,'殏:o,@91ii%vA#={pT5cs4I{ýnU|`iZ*I3iWMbl< S6m9Tpɹ $ #Oo֐&&HF5x4/o. a88s7F^wc1@y-ڞ)BQ1b c amNՓ"S-Ҡ7gnD*GDܼ?)W@,M Knqb-m\hh4GU=F6~r͚.K@VɧN6HPJcMRoHb}'|On(=J  8eZ]Vп%鋣 ^GN<-&#vvXTe(/<~>\X1L!_}MFXX籮{-5S(eyo>7bӜKU|~Mu#D$ UGqA"ԑHWk7d*wDY ϜR](y.qba^S9iCR6<HCL[Ômyp񃚔B >pP;F^Nn;9M~aF?fG| װ6@W2= 7X^ "(_6Φ@V}I7Ю d:qIJ-iO%a7˜wɰTw5<4KޭzCbg(x Z7"uK}  9$W+-T](]x"%*? (T"À(?v0o՝ctw>ld*idܶwprjx4KWicF4A#"|1̀g2JWJ٧[܁#lZ8vsԫl܃_] 8Ow;ͻeߞ͌C9=hŎw~COȜexRi$bَ}s~qۉv >$ mO2vE2n5o{鈋gY!0e;#<f*XqW)Qnh=12^3\G~$r6 8zd#uV@DՆUg@ 0Xd'T%hhg悎 I8l1"7ѕgHE40e$T<Z'#St 潯*5]l֨:qVƳ+<:MJ.ɰ8!}iaڢ|7B٣Xϑo%H44acX|<aH]A% >FGR=tԐZ,(og d~c61Y|kIyߵPJ)+{_ Wp'k85}n*>gv n[DXv|Ԁ2IFL?`O8~QoRJCFfYE۾ e3焄?r{рMx;@&eD Ø8t, \b]58>?8MpzՊфSޙ9Jϔ&6鳒NY^`S釋bsBb\ 3-ߓQNg0/>vVBq*J5WN;#Xm@Z1MpDEWR+⁜HǎmM51 [िuMlb -H)N`cdG`@E;KS{,e.nܰO MdZddq-S>슣aODzDͲh`8xﵚtD@עOHbd˚<(MBifJBE)f6]Vo͂*@.qG޽\K-_eUkc&\r_fuuFnH7 slqw{˛p4׽Kn-4hI Rj"a JPXU ~|駑Q6U}L-կ!pUnl<^x2|Є- C%/B|Զ?m Vθ\?Ad˫)F!-iWSb&4xt{謷^8;ѺEi(O$P}fjI,afQt6 *C8&ò/Uz@rĉtE3](QFLEJYp~+xq:Hd7G}f/|'k1SíPsޫ|wOO韝%X< =^T/mK1?ςب+RN0C*]8eaiP.6ƞ>]ƺ5XpB) ;Y3W:rCP4Xw1[ 6&"W_]5ѵè _ag=+7<H`Iߤ_KcMofQi;h>`ʚ9p\G9,~ BOWŞk.}W^uBH; z#qK,>*a g~ `5bHX{^T+=\#H>z.L^mn,Z8D{ةv8֛dG ޯ X_mWnV]aOœkaNtV;v51 ;>vn^K%I"xuPV@AyJ,VbB]()S~"1 vAiozᛖ:uY26c=m~ɪ6Xm{9(j-QENXUtl |l0ډ/+ (OX̺q+[ri]TLne7ApbmQ0QrrҤ.\U{ܣW`Y2R qLlCq Y@7y]bgVa]%4sApjbur\GȳZ0$l ^{eb>S / t'mX{L5TCblOg9O |F[~X\'ЯhdN,)/p8FJUsڈTX"x[nwq! ;PǤF % Yі Dؠ؜Kcmp/վu}0%D}R;:~vx1MߒZdIIIg|KP䅬C9ڦp#SvGkzWQJ-Ok CzvM0?? Q'h1?ډb:$ +[Aʢ*O_k$b |9CY3 EaN6.r;=TvAgJPtD7+=Β苿$тn;Uʧfw 9QQ<:템EQF\4MTFۇEk$Y$7-(L wu٧X _C $(a͍|MkS|y_ex3׺2it %=(EU1#9#/Y^U+B` tobV ڮajc,\J~ MWM$(kI 厄h6ب,vHǚj8Ɩ'gNPsxaԵҸmS[ 8S9EaDsm5W>i'n^j @Jܩ%z^ ,1FbC jظ ~%Dhx/*K/b;?B @"1ӳD-i$G RճHF.AU֭AI==N)2(GH" j5-h\ âhmd #&+ {nOJe;;'Iˤ^=J`k?a˽ܲxslrB!"*}Gy]=t|+Q/q_-܁\Mf}vt֨x|s!۷ոb f)fxF&1߄Q.ac?)395cFaWHLt +d@ACsi$?vWSL-)Qʑqw2AaV9oI'cQ H^]gxKJBo^oА-xxEҸQVhb1=SUZ3ݫuZhwSd́-#߯b'лZLAaoEdڮSSfhm\뒘5^ToLMfIfh{(!U/y4_jW+agGECgU %a7&y,c}i[m(3p~"cLV{΢ .XïDWn]@ɏJ#(m ;u=1OD3ظoQ#ks|c^0iJeǨ@=0h~L$Jɒ4g2ՓԂ'^amkWyOF&QbXP\$D<(?. $(X6=o?81 `VEU|YV9]A{yu]}SKCQx"4UW%B! sBv0u|7k ~LqS⛂n> wNve j^rnt sl҉g%<֕N3U+JWCO=M̱:R\}qN_ЀnZj@0CG;&M#kvVsFK}54Ff93}L1kU8GaqH;x  |4I)=՝W'$v/loWmPD$mcݺ Q>eUKx GPrxDNi@ԅ)vK?S Ď+`c#i j~7X0=|"@:xMsࣱѤI Bxq5.՜2by[0`MmmBOQ2ޢ¿1)=6ti,{mah73bUo_AB M=&%p{ftMa|9ty2lYaln,ZHr"*ϲarn/ ύ%٧"HOቿxBդhF9reJ߰ʝZ8F(%.ny/iIr#4 ʐvpzsCf9mu=5Rd_l5V1 #u5}/6y{DO*k}+,<,)ٗX >Dzևc#q1ݰ7` _ njiB-S`u0/C78{.mTJkےy_]RZ!p ]s)Y&P)DJ-l ^W음=^ݬk+&rD#nSJt9# h@j{^og0hyIgm} )('"kB8 VG$S DğU.gqF}x|qkis" Q14s.1u4kK=P8,KdaFվqh`)`c7wI{ߋuTr%`Wy{5N6) x _8LyB5~ՉtdWJ< (7=B|D7MTSGA!/M4P0y͞@sgn14ׂJ-mYCMFo)d$'Hs\ZfmfW0Q͸0h3P@Isv'GL.@E.ږÿ h $pY͙C (X^Y2VhN. :BRzq{L+DŽ % i{&B:9FSp#{x*Z%赥?Op^K(-,Xwг2eH SG{Z>1-";=]q!Mb( :H0G_`gy; ɺh f@M[s{ _.Ll7_?ZwdZձM'" dR{zp_*9W8u5"@IU^G\w^< _/nsx톧KIQVDbXyWMDdi=ZDTA޺BBD)Lic:9~Kz0}qsX!fOKw9 UQ9[z78YB-b;Cl T1$c]D,eѕC6P!_G%`|9XPIWYP6‡n 7/60Qj {Z48VwP+<_<4JC}>jz]Y|52۬med™%9-,5a~Y7QS^Uҥ#yS L=EPJB?- ?RDj$jH8;=t58I^.r?2)ƒe:+VޡBkR~ slR|tY1%E7Je`05|Ȱ=?f2F-!2TnE# , A@LOCk-Lmj vz4EPŴȳz]D ~q^y^檫=8+5B/N8y?$^o-ʾPk ^!fXblM;SV/o)wZXUM4Wt$s]8H=G-<{EFhO4`/#P~Z+q< P_eo-1XMs4*ml:JPU, (5QlnюT^4xVog{\6NC_* )`bP9ݽTO>v|w2d;'ZcQfm~WQMKƍM692tCUܝ,$nBJAUfdgP7z~%@7fC$\nGG@yl=EBU:tNYyL1*uKD)iv@TJ yN X\ R_P#WGկv~`Q ;F.}G6Uh*K̪Tg4[b[;EPn'^Cixgd`hJ5Ƥl^4y_(p_x_, t'aB6J%QR>.$}{ot>E5pcf// ﷛i=~<5sKWrkTU,U_"k(?;$2uB-Iʅ"΍ 4&<70meD[ O>/Bqtب"]߅Q9.8׋]nX76ң4fa땑2#;GkXL(J#E׬n;}v";s͙oP6dv#MutԾݪؕ^C)q8$!LfgLL~HВ'؅bWivqGm\9(jn_݂ݙWY8>`%Lڑȯ}u[蜇wg2kHpdAӻ d]6ȀT]76cMtSyAƺGG6/2m>s*fU_EScOn(h: h] 8-YMbY=&?"ڪIFu(@>/ {- >},W$*Zl&ٲI[Tuxf 5zP,8f$7%]FpС'INFiXOX F獦`5uŕ}H23>c>23-Յ;'}!N4f&l5<cK8\e{ ?^niFI]40 [,,P1$'j֘R2IlP788t#q;XxGjvt1e4\+h]KZ^$FPQ/] '=c(fEp_Mx&wj֭\ՆP}Yzf ѰC^X'#%!ݬ ncl C0ŝ8Jd &ߓP :d!蔌=QJ?}Ҍ&=HŬ7p< (0Թrsl XCUtώnaI;+?o@0KB L NԺy#XNYZEgGiTys/u^+Y#U^Z~[%} @ aqJ\TkP~;f ZzjH-s,X([N9Ec$S43ɥwO"XoEW0)8w5/n@NKrEHh^!%gk[8o7ڝR۷}<ܬi~0JI9H+;Fsk|#dT+Õij8_z;YK-\ _%Ls= \tx6tFί5R=sD)(aTŝ  [)|#*\X 8^^r+#rIWvYZ;r? fj? bTKE0O| \mФݴ7gSy+0x٥;:WS H{sׄs䝑`(Z ]-9Kjr91W|} A9( !e= on-c *qXۋx=ԎFK[ Tu"+I*nCn-z}Rzw^F!>XnՅX)/w'8kak;;xd1Hli\~Xa lne[oE\H%O>># ~0k$I!a4sd '?le)w0&ӧOt#1F;L(/.U] š0 /Dh3֜)J@83ʡ at)PK 6s̶+dL]>@26$fG 3yUǣ lϩvy<sJ:^ȟ Rߖ'B3ʪxD M;W7n-rycckrv4>1I?ga+vc mJ0*=CHB$tHkO/dƟUHx}X81kF3U}eXN6J3uܛaX6ĥBO PDxlWsWI @[1?ZD?qlK8;) nզw5 l)xW`EgJbϯ.ƕ1m $Ş{TAu/~%˚eX6e[\?t>EML-dٶ[+3|M0NDLW -[^Qx=[\;nj o4|Y` 9jS9ieo˗ydgCm_5{MVqN.oJ_Q- W_)47lSspo-䯰 {pCfiNw)dHb+Dql*DB'hònSLYy֦ht[ڈs=ȯT Pm;f.[);0av^IlE $H&XܺSZY>&u9@['Z0޾ wP3LO(٠u>k|4}p)`2[=VjbC*\P<ϝ}EkGG[avyřpY;pkM!6\42p#|^8C~@6I AWaف7_,N>q+ѴX*=yY,m?T2Sv{d\*;DE9E,n@\Gw16C/YR%ݤ{'r0"EN,M A顶C΀Ȓ DgJM",w-NJ rri9~(-UܜA[d&z_uX eJ{mD\K yex搀Hj+X#Wٴ@UG-7AhQаw]o])9D"ZP Y ֞$Rz6cfT1L H\_1uX!?ӁC1\GZQQC-'||,;+;y$PW^6:h n۹}aNTSWnIWVWLDQK H擁&+ߺ-IxbpZ0fEOɊ)LOp|P |Yd巰)/ AIq}pyZhRʙ HP.NJpEԗ1XV A cDsZMƌvEt{Ǹ_-5ZŴCkO*Jp^ oE'5`;[CٚQe^1Rf2c]\qk,)ITEjF57<ۂ`Ӣ1? m*lF|d_SV?>?5vݹ9HEDԛX)+T c$< $I8c钒'qskzOeFBOtu`Q'Y툿K>0@f;tD--*Ц/A5@c6!yaA[rNfD?{$Ҩ˦Z۰eoHj2,7+k@jZ,UeŰn[&ПC曖R#na.V jL7;.#OI \R3ҺWJsB\s l>j؆o c>-pfkL/c0#L~Y"%fޚ|/L},/ Hu(s[4KkCN{l rH6Gaz{ɳ.&_ІPGkcf2 ><󉐍[x3%,B%91ɺ+ɏb5rC̿G!3c>L>\ 2KHF&T5l$*zVI XҎձ2^l-1o4mENNԢ]a:klvTNR/qAd$6&5YItwʄeD8C&9…GJP-[wwR/ݺ_WܸOg˾fh )$|O+Rd\'r+EJɓ-JA))*ioK 9]Aؗ2 TgǗF*흴B Vn~yr$6"_/+^mkX|z:|VӚ&a W\&:I$':twq-ig AlTAag9NBj*p6c5ַ Γ'aLoL<n.S2}=@3fl܈*pȾo?uM i줹Kަ2A_3Ita؃qrz8¾Gي xȖpnLݗ };t5ncz'\{\쾳,-L)tGTA$kѻ{ x%70(g'ʋ8SziF dH"@*rC< v_bro]{ Ij 1pWH8>XPE+dA2vox Id[3ɷiln޽OЛKney.V)ZbߵN~4 w]Kз~vAyP4Z-@)YzCFА-.㬰w=9XګoNNj!gLo2~ݵ6> %a>80eDA`M#u]_ĵtAɦ5ykq1lrrcHk+w0EO\ N`lVEvq7!iV~ebtjH*BrbmZY^ΕZbx>_Ƀ_+T/#Wy78#`Soo/T%7;?8I1_m&i)mCIfoZTqGKagѩBcse66%x%JlJ\hI Y4 4, s}ɟgߧԂ!moC +cDǰP$`GZnr1N=(ZDNV3!ʷ$푑駀P0=$_$_Eu CQusTBQ(zK1v jߌ2[٤h3@ `Mqgi]&$ŀ"6wG8g0FZ&izӖQ]P~1_GgB͊n Tw3)>SDN1y+aC>6ǡ+2fǩ4SrExMԓ6ߊ[Vf_@SUp ZIX}he6p1W7)l 0,ڶ8/'cS~v=L6w ~v.hZ&s(ru5zBI͞9{cR]o[K6%]Bjj <_jo9L2fgKCɱ_ pLv͆g".%X(Ho {S^a$zN9sB` ]vؘوђ6A L"~CFɼ\oױ}r5_7 GĕP;Gbk.Q>BA\+&faO~A ǿGҎ~{@H|B#]d6uߐDQY՟Fݺ .NBBgI,S) 6)ٵ$s~1gɺJZJIN A10f`'—fL=zmfR8V.엣C; y6XLB foTȐEuL\iuU.]%ͪ:٥ (R~G(f?ARNXHTwo泑I;E}DOА~s@ Ӊ|%m JX6fIJAfY5UWy;dUx `]ϭ@Njvs|Uryk{h;Pt9y\RIT2i~bCJ A9RD{ʋC`f&j#nLNW(kirpдp)kF$ wHKL7ݙh7hm}}>\WoóqX^cOx؄;YCWLl!3ER P\lzSW# gjgYbywHI$GK hN K;dP7Bg T0MIH^-TͅZ3"! ls勋L9ڙLYI"Diלp 3GWG[2U+] `9nFŃF!sg#_z2 0W[$>\=&(OS@ mfr9Ns@D\+ԥ(s, X7'6+v=_mŨ?;壆vpPUi/ mzd_q,W8%YyA[.@X{CGf .<[,fËOw "o, A"CP3Hm/-cH+|d.-\‚h]X Bs!l/aȩ9Ҋt䋜`xؙ e&$:[+ѤO'" ]2I]oU ؐܮ@8y0Zi܆j>ǟܻjLvõ6eeY!"uƊ566 ^ir_ˬEk0 MFMHX,00q{~A|/p~Ky5 sql]rf v`eJaO!Cow[8 { g*ᓒx񾿏P[nqn[|Ip5\.Lqno 3rVO dG -6K ̥zޞ!T݁HX ^,scW; de0$E'R6EJ67^ O34Z0ڞSmuDC}4mh8G?mA3x}yc65H>xj&Z=";ہfYGBuxMup*:A[B kr|Y;* rnbHKoeJ1ߖT)ґ{(ai[\`wcal U7YSLci>6Hrrn/ML@c'Ś9\w堄xt$5=M) ^B4* \&= >şAo"0=3]0-#kiSDc#P7~34)\'IYqהHie^3!@(f6\qlE!-Ry]c: ղ$ TQ@811f 2yu 0BusOպs`.ښ-tbGVp@`JJ,:C?Fod1WdwK̊aN¡ZKJ?W𴷎N{"[>d`7V&@f>ߘ{ʞ8^Vdඹ0pvmq2YpswEVwkRѼQ;-w}t E!oɠ mԠtXJS7r.,4ǧw^#\!^ z=㐁&Ƀ68]Pͥ6ݶnP5rJs d$yVh~#`kD"gfJi3^T Z|~RsڸzX$\|tJ׿ǁΆvcgy5Du.m,sNi4*j\1ݲ;b* ҍp}эVf@"㪡( sUiH1dr͌GzOjrgQ(aWQn+EEK6|>dk[clBr$t\W:Y˙ ՙMvie}"Mu߭}|cюntl- L~TΤS3ܣ(r׷πQj.7@[6)J^Y\,2'6#xMbZ>cwJSŲY;rX/m ^C8*9;5r8N5U7Q~{4 jƤ!$r( iUX#u\uvŽ[]a1 w7Yޑ2{2KѰ[VR1.Xsf QhUWy#>.<=DG83d_e͜WPeBV 'n ?!mg]uAGC0C?hGFCHe#N՜œ/::+,;e=V7I"kϰutJIWn^*Sp97USH2M̨#$ak3OE )M||U{ xkLw_.N <ACh'i"T0O5L֥5RyNs7|0X KVuȋ# }A sx̂c:VE%I ^N0._}0qAFJb5-x`eW@L~dŗݓ0#}%)Q $by8%Xq3#~4l.~*iCAEΑ V]u` $84>aLypdngfi1l7>QTB?ٱfݩMCF8i]|s߈RmJz%"w)vLM @`3CE02R1.|^i;E>WTKXPqg󖪄DYKow茤)\FppBZLW\RUXn߽f3fy0 sA+SUSAܸOcأQQyKt=g$p]YGm-VZ42}rx{@ד g^0X('/c;>5f6ִ\=-)]}]?jÑH&Sv? :ӛN.ą5E)ac ~mXOa XKm+;c8AsRha,ޫuݦ4T˼L4]bҭ/2aPmMede؉S!/FQkeh=qq V-3܂u*@(Y) pHfii"T}a. gp7)UD5mV~a)DdAڴkG W~6Gt ځGE8"56kuc~iz=^ma&l`SJn{2I" `|lapc] `xt}'03igt3?x \T2[sɖ_윥h{׸RIN[?G3 Y05gۥ+߻Q3~D(i_K4"1@z ~I~Z~Kom;fjQOʖc,n7IU=IcX[wJUF4lSNhHuP V=zu"6B] Cn@sc"C4\* пX!cJ1CSJȥ:(iw*@wң}t Q̋Q|nXՄ]6;m'rfP_$.6k@ DޗǗ-bu;W;n˟i422@s/sgFʫALܮ3uնYW9Zg)+ :GL_Y>nE|Q6Sp;G#ty]lAl gɷpjXse,yf`eQ.4t@^MxoP ҉uDEH "^Iyݛ8M7ɾy LIWv3UΟ\UmO#ڧ);Ms=y !glDl8N ]{gy^#РAT卷MJRZw$EPh4@l 8b~sXqNBqn?M uXMf94)G_yx|~'a`l 2R{  Cݜ4Zj^Vl_dH#uqC͇D1eڐ3!ijV2fwgȠ=j]@}DDFyb4M xEM%cg^FiI6yt-q&ý~b#_vbP7jf ToȾ"z=Kl\k+l;,,j$i~Cgɻc˾k'oNm]RGu Kơ:x@'%z*a}ߞ 1yҾxNXnk 16yͅH8h; ȅi,s9Ř=Nj 6~ tLtwpf{<,cl`̚f /&v=9+y{v}36(F೚!crgY~q vͰ Fe<gkUXdbXGGQKMj@'_+>nxVQewRߩ7%!03e=yoq! %@ki:C[-#ndKYf{5@45i61ɨJ6mȔY#K] Pߵs;6<<Ύ r{B;G wШd~K!ؘd,>kAxD@X&ITs(}:E - ȿ ?^]OBhB0c'Jlcdߧ./Τ$MaWzccDZMgѡ+[·,x㐄Jc0ѹ6&b{\oMG}%okB >X%zk؝{R{w;\q6 Z!,pLhK׫v۽L"'i"=`C]Px~^}p_G]*F|:jdNM#}4njH-'}`AH@ل/] `>.n45o:U_'ݶmrf`&Eҵux'9r"GmC](FK&9cJy0Rnn KWX%,'8-V-tkS_ʥZnqoTBY#N$8?_ǔW Wu6 {̲`IQ=wy7y+JfU9Q!ipCifO[rۃ>@6H >qD)AN]`%0\tߕ0tUZ)!P ?>kq$&`i.E/TX-a%_ȋRy( NU/AEq(Ko!QӍW"VE{ &ԝc)#,,f`tW|1F2 J@HΫ-sK7t{ٙ#߄ZZ9q6weurOK²Sݖ\@F뷱aKR*kR:`͊X||1 XOSb)+q'5)&~y`jItN b;o'm9:^Oi._S=ByF9vO]4?_e|ܙ :/vʢ/a-@*seN'0;)5,b|8B ( Qce^0Ah=Ѣ;;}w3դOtcM9ռHH>x]5Zi|r֣L?ܕ>OVC~R8EsGUO)jn_::' &WŐڭ RDuH^6@>H+CSp腱'>EjsP;^ų%;4kg^sR'{!-?Q0[?4hx+6zࣝK { QDBF@.\DStV(/u.:v,CNem-UQ&o'hgI=ԝ]w"5qj$Dױ2Af]Q/a90+`\Y/藰&TZCF`P`PyYciQB0:nM:FD\M+FaFK-YsXkfނc`ER#ܸh ަz ̙m84Ii}V.AŐs)ػiGUhvPi`%f5y$>S/N6mA/,:|S!U_Z:cd~F":r~SeDΡ^Z&lW*T'NJ[yf"]|'Vħ:^f3E׆C~-'!JquQu ܥ޸5 'X o o6q^&U CN}Y?vY C^/+#ăj;2RaSIccf#7@Ғ<݃`ostsO]©Nb&4SV2AHҩ@s@ QEN) D1:HHUE>|i  ]caCK1 ۅBg5V~ad3bO\m3>vB,Q?3xV;= Iw&!o |ebpIPXh;GCV^f-t)Jn>ر_x-Wܪ N*w.󴛿5-Ò iXHiϓg"rZ/Rc&6&@`т"?L26KZ/P)*@a&QcZaD _6I'o|\9}tPX/9ؤ2~p$ \fRʢF^jnиgS` V+\VQ ipOR zvߖ85xZ߾EFB|.S}&|dJ܍i&oFzdHŐ{caaǿ^xӓ,*E|UgjVV-V wsfXKX,gQ!r=:BeT'R1[*]1.e`HG"6'h'Z<ݚLjS`/Bt'IPD状8Vd'5m+|=Ҷ@_=t# a;$3hS/}ܶ!rcl9>oyHunE()bwYT*5 } 6zB(rZE /a l =*)9 (HZk'-HqX&+ +=s{<(x zyd14=LnYATNyvr뽙*6AqUzO~37,,qϦV> tegzw+K'~- .1Nw k{FqX&̓i`B6VMՌC6jJ^\즼RX N.|T<yBE \2|m֚/1(TCZ+*ų/]f# DU~R5L>4Y*uy[reQݩu_~[L5g?NbV;jz[?OAku|O}6ǻ_%@$q[;-"U4z#6V;<:e@erS?*۷~ 6耝&1D8_|"|ǙjU,!s g^) :73 tGvaMT=H5si --- B+3L1{?ruhkrK"ۘ3IDb.)Jє=$6mⓦx8<0dT/(Yˇf`=;?'(VRz[r^ j>S%cTf=JwLZ4QL)c1n[g:Ò|Ew]BrcmGT;`%s ?#+ʭnRCd:re>ΥFUx:Q'Qp)P76ޣ͞9~~6U]f|#BU`,.}S& g#C.L&ThJwq6:~1wsC@W7{A70&.%R➙5% +\8 fiÒOḤ [ 7Ɵy FXlw *?۲bt|g:ÉAPCTa6G u(k{7%5TFͯO>a.mDU/y=_Pђ QGS$W_KO)"sڰҳiXa]N8"9W:E?ULU?UE@je ༁ػ1}'[.b Nӝ; ўKh~4*ERëWa4ˈx $wM- J;IKNJ4dB)+zpu{鈁R+&b ʕfՙ%$kt^fˇAMr4,^ Q_ ݭYK0FBc.Ѫ&({ au)4 da X_q%v; #SJwfmU|#ontUHxʢ*r]V+)inሯ4㻃@X18R;l?.lxb3KC [kXߦ^%*.aZ6* Hs m۹$kj;0 An۲K. AB5"/LND ET3"sZp3=w-5Wjjg 潨BQ\hrݦ=1Z3fi5Jku{ѬO'f??ZtV,[pb(U*q0:7/K>1O[7^kHq7' ef;&oR-Lf>7zj))~n l}5炼7qǔIok8$}r̄+Ԏ;]ɋ"~>wLc.VTfGRI$SV{LA鏵6Ի9\<RjLȉ%'Ԧ6M"@t(V)>UPD j oҹ=[tir|\GQN`RHk }X*"%gSqȅ'^g%º 9H\υ-GjDklÕձ~@󖑐KV}Pc1}B`2v<㲣/:&U9ܓX'r)cpU̍w:{Or[Jy'ǘ$bj]zkǪ{dB[qhtVO _4o9ڇ?q7R X! 㸙!$vIVS5]Vgw_B2^%GzJ/ƋԗE@6OA׊h<M^4H*Ē:}K=A;Y.cxU f W67*,K.$T4vG}Sx*(V5_|Rϡfkjter~jȕA˫JۺSLS=_r$mP? +qh[a(..RdOulYJG`h 7%Z-(v%CǎK:у@7!~wwrOr%PIp´1T+' u}*ll{P%BQZhܰ l)~E wvVMD-"*<|`j{ifo茵Z_PQ]Zhٖ@"vgN`[8q01^h<Y* ėŸ[+oS 7~|=NvN!,o8/˾ζI5įZRcIHU[Qvy-\IbXiv61j䎊^^WnK #0w߉b~.$b+* *< d33d At[\CqJRWD,@gE'!X:Qvf^ +y3w<)`'[LE{SQkIJ ;; h15@-A whGg6.7_\.2Ǥ\$Q= 6}IASy' az`9;[\9(T|QI~bT<[; Niae;r%N #\!un:!oډH}o^CCS'xVx${p@cd_-&9{)(sB._\ZM?ECEW:yA#©]SqM.Ȣ(LExèJWƅ P3"޷0Ju`F!Fn#6bu4ӇZf})Xkz~p8 ȗ=ZEDaCYs!5]?Z#ryE%kZwP'̙&6pGLe΄kaWp#=v0^ 5 V9T\eTOHo:t- <5;6?M1x&%a͘nѻqS aJ,0RK ^N{22{O$dG'\tEǮi&-5rGM0egJIn&bJ? kH!rv2MD!ț ճC<.6INRo@EE}DQa81T^p贻V|J!%BD= m%5uH^Ջg~kEMQ:#C4NHrnWuo lIO)tcdž: a>x 7IkCfuN 8>k3`7P\ϴ2M^W|] 3#24tE4DmM~VOf*(pq_Ҁ8AĒA^|۝gYsұmz,̼;]Vj~>nU+5~vP"f.1Xo=Vb, [_G {}V TT hUBx7q"ՉbqWaVé>%ZI!aeimҀ5-0QwI]Ttdf ^:Y!ͲϜ-nѪu-$_k=Z-@)UpCZ2 yb,-f7p~FQ̩)bΘ5t1Qa R.|*RD3ޭi`*$+ӾxZ.,#^INfzx(ŒzԖIzG_IZLX %Pa>BҢ bW!Uu0^s"oEX㦾KI`⎫Ln2<ͻ\?IjdpLa.|D^ib+'&+U(^=]X~)\.C^gŎWԹ(FQ4Z\ǟ&=fG7?=[_k$ uTmMeZJVB8~9hŽ`8]>P l[}\'ެ3z=|\m0aRW2:J@9]T vw7m}9 )G=z;m| 0 8t )'>w/ zjCԿ03U!ip`RB30աdu2kR݇PR1 vL-,Ta_a=VfL} ^ϵBWV;dީ̩BDՆ-O՜JF)Pp>V#(e<~ |AG/H'چtN)NwӔhɗe7mC 60YYS-Q!]k#^WR;cdg:nbDH2X^a #p];p2BDsO*7{O^a*5$W'8̳gAh1E#˅H VIy⚬1?<+BdE<8z0UH+\i[F8]Q9 f>U#U%./ yW?=,C8z+ Jä~H 뫗W\Ԓn2}mv fbNoB5$eg ';+z*b݊}70$D|b y@T1e)Μ <˼M\c~fxTYYAޔgTi~֫EӇ~hrHɑg])O, `Ā >p20< l8 3Xx)>eDzWDhx`O{[9]L8 va:W ]qbk(&H?څElI>hdMN bgVE)p;* ~eX>rEK⎂ё訂_DzpmuhȨ(Ad QyH-W e*d,Ea:$- e|[cɘL/%})@PeeLh0 aH,le$ #:ɋDw`Ƣ0oC=eQ /ZqIXgKANJs]3DAJ1U^=;ž:C!k0cܶȗe0(0(sb`p73DĠadʅA$NTu,H 7ɍpIm"w}@3Ǐ+m 7'4^h5(>QCpw / v?~Gbʿa& BM/ v\L\''jS%"T}%A1ѮQYř2pK4;yA%x{&6 lF6.~i|lڞ$~l*tTby!_900BtbƠ̋}@~@0 &oI5 ,hܸh;e" PϏ,|5ҏZzu)2cGV+O'jCCZ=;6FB||{1umRPUwhd dA_­Ix[u\C…}7;Pe+ŘAW Vї,q0n  ;ŊRyա4 ޟvՀZ8DNKR姒>~K~MSgh5r Fᅉ}oU(IFd ZF,oL9P!A>@_o)nf#%X6­7hbݿoXtٞ4j[MlT 94k5$B'8]1҉F[_V޸Ͼ׫!28? 2zx 9\Tۥ7 O#Zdh[1݈שKتuo%hi2ڞJ||Y֢G䮨~ |H@yDNgB/ U9#9 =#RzEs'e }ձY v*'5 Q3Bf9&PDu'y.5`Cs+H7ؙv.p&^כ8?y(sχVDcյMTVB{.JQ=6h/{|\+]q@^Je w~Sq z (.kPkhCFO{OXц:Xs>9ָqźb0]r/]gh8-̓ZUSXjIŽK YΒw`ӏ% ~9.V9exގm&S bBp =/?Oֈ "Pooi0O/[ey &P!]E/AkLDZA5\DbBPPy_J{kmrȊDsd [QRğ#5x} {\{k'?Qf&֑K4 .qM| {WdKb|G`U2Ek;/ J)Z &DC&V:c-~8WVܠ 0Laac>&u$-mآ ̎IU#qboHH3?XTx[S<'?YF`ǝwy1Xwf%KT҆)jm)K%OMJ. / xKJ6AdyhaHqGΆC@2r i`8v!y}u?N'i}MX]f/RO&o؆" jIGI\]Eއ[ |Mk:>2.-iD':D$b䵪ߛ(z آlzaf#GДx_ûdž<߫y;xnxׅĽm\*.kwL k VXZO-H큞1bFTS J"(U[/RB)ze9BeSr1KP8o L|;9:S ={~uV[D (5 MOx0.UѴ #>8g48u,zɩK@Dphi_:ӔIj9a_X@M4 y!Ӭo+29e"2'Flo0k\ x ]~[%Z cb86)vO:2_nHwjuk-'ZIcs8CHNBq0*.)c:iR(3N72ԦPCjDU1^%O&;nci-y:S!V:zMSzz^^,E2BM4h 'WJSawU(>"zG$cǭޏF;4=uՀy)ݿ<}[]L64:n^_*ldِ)+W_qÚDx64d(RVi~T5*8 sGG_z2ei4SV̷>>w uvdgi6~)Rc[jf𨚖qj1 `.TKr*-UGx.b7am--^Nm=>SN`Hw!cB%V%Cq J "c&.~b;u~I|Ta/h$f_m]֍=pKF,du@Ǩҗv &߱ID]UZ?fci΃cc`1Ku٩RXzmf i h6'=0U+U R>[dh7?,#xJSݫQ|L˂V>3/Xŀ@%WDax D6|iY_yz2SYɍ.; B(c4;I3ܬ2UNYNfJƤtuHE5-b/ !ȟQV+3`3HXC>vIiMA+ID%35)łd'EE3sax>*!'AzfNNFu,[z ҥxҹX^ד|*sM{C _gʓv.",qt<ܧ)iA@.7@H" 0md?XnC-%ӒZ~h]4cZBQV44(yq3+~i`9%[~`#~z}7<؋ĭOjɫДe^sV3U1.υۓG?G{ŊDI"- yː{Whfg%T۾%9\jxx\hSZ'ç]sHj~;\p#Gb? QweT4FWf #*.nJ=c">Ab".$V2u7M=5Md&mv`IJ"'xѝl^{zE7¶rVڄD!.@1T1^JɢS_'aDEkDeBPHw'l 2shPXL!s$V2P#_ z35bfFx1~W40v~v֝/w3PG6ejNRӛh"}76(VEww AHKr'D @Uؚni6L'TnkrĜ} ֗mR"KIkH@e[H/]zY=Z]]x+s|TS\h_:uJHntj9-6ЫԜ$a ŵnDnj.(-d?5z̫Yێ%LK'оJ%~oT06EhoD*jSQ!˼4`/ FH&BІlj۴-&a_ ǝjGKa3Imem=:3gS`fO& _AWߙG)on;RAܐ?SA28*%=GeH'eMvG58ݦVז7n@bm'NLnN"=epvB3"k$:Pm͖l|ǎ/fG6$%XwC0\f< x;̓Vd.ڜVW/euު.IbmsȇQ ]ҭb"ƚĐz ^bo8u$1 X^? iD6bp]M;ɋm2 %)Qڀ/~9MK(XͲ&3o\@dJ$tT7up'ejcToa'bAjbJ+HWl΢Dmͮ5SaJ;H0̮3?-Aܲ4 ļ0h㠮+[ Wr4|)Ka :^(N|y&OPciv`HNdIft,h @IeRIjv}P#9,1@;C|VH&Z$ sT39qL 1vY 2GoS-{@QWy|CQQcߋq:&ʕ]$:PPſ_fdw=@8D4P}i'&nP'#7E69(YbX+g?f[fV!‹拳;[T8yµN{IFWi*Q%[6m4ɗ(1U: D#@{358"ԨAwSqH`znV윔G(a,EY!X*٭ȩg]rXD=ggM;0Qjt d"ݔbB[)R#K_"b6ҼꈽY,{-"!I#ߨnNslZ/t:RN+,%?ޯ%![䫤`-CpƄ>WOY9H'y X*jw/s:VLxdU!~i3gKboCnC1RΧEˮcR 9?mkyH r\ٞmpwOG掂GɗZix(3kⒽS=5 }.A^aWPA$Vo])X`*6O ŔRBfׇ܇k~B'Γx=\nJjӎYhesh[nx?&H=G[J A_JҨ]XI=dȡэ0XRȒ"EbtՎmА]* N-YYNx/._JEԇ jw枢DsU{"e C2Z '*rY1\9<'؜ŒhLvN"KiE>g_r G#N?^~x!#p=/훁6\ 4!~!"S kPxI=l=0F}#Lȑ貝b!84`)oQɯD{J-ŋ[*M~LjDxڬa1݆Pju{GSw79͎oK9N%Obz.%R\4;oD|ѤAbD8kծFXQ2!9SLP@a w4@S4`qS}kQg`r^ᅡv*W fM~K]^aEE=&)1_w1mbG(: /YeH2Ok@1l3ԙ~.qc tc^BcfAIUO (,F4C䏽Ӵm.j?޿>SݙFSx3S3"\R.O,@R++/&)_1߅! 훌hzN?t7d{ cFb~{m+{ԀbB eI,zF1BcXxӀ'Gחը/!e(|,q陰1`νYUWh}y?)s`E;Wt#"; ljfr=W+>N`qw?mhq`RnI"t2q? 9Ź75xAI&hgrZ"<զ>hDJ\܋gb_KڵH"1MRc!J}R'0iH.} 3%'ƒ:܃?*8,a~mɝttJ6 \KTZvC` *-*'79z4 yt?e }Tk.Sb"e)Q*&?s^PEX:zdf G' 3[ dݘJ{;OTVKWJWV zluGT]bVhosh3=vrKCAj[GH@j_8g 3n$' [V//*۠=oV w&D\!TM)b8`<˔[Dȯ">B'`rnLx -;ՃisrW>OhgWK U<bQOjuþ9BL3i>Ͼ\Ok^Jx⡻ʯ 2n+Su%dO(\?y>l *I1\aH`dG.XtMJQ q9u}-f%HῪbfTymI"}^HGļP&.< f@ejou9y[YWYyzj~ba.(oZs -BBfPa_)`nIUze_槱[r:M"jM W?<,n}HbΟ9p*aXBtW: @bAn8^a5'35.!> |޶۟zCx21MdęP;WX=kа't[{ŎOa(ЌE]3F]Ǟ Xݧvb;>~0Vw˺~3I#3ƳeB"iAԳ]# uIٕq2ycmxktGGRȬܸc)\Kq nIȐ2zɔVŪ1NXjOɠ'F~t]:pw]w %5 j/T#Rv Dq;0%CDRo1]@rIj\ВҏΊ;{̒Zbڞf"ǩiX;<$:#ʮQ `&c%.W{\2O_ZaW(VgND O/l}MHYNaO][oiKX"ܗY+,}[՛'S#f( l!r94[Ĭ)Գ߆i=:zOv;;qFة!1'e@4ɺJO&8TC ']Ab-=Xc-v?S>ߥ(6H݆9% *_}ӣH]3'k5l@򹩳a8xS "wg/W3o(\2A˪6|n"1\]ÿISZZ igoIАRu\,ڛ2T 'HYy ش1(V’kt::$thIFaujݩoP Ç#u uA٬b~ TiF~ࠨ)jw5K2Ԝ$}>ɯC OQVt~ wqMAM-kTDZ{,ɿ>e=|))J  $rCxe#j;1Iku5zUGsp@K^ |LI9Uqz ^{8]eGlnq-~P='SEf]X!ul\U\K;*HPPȬ] ۔Jlm+j Bë`g*Ni,q\b@ߘ1e3\<@N# ME4ה"TM`fJ_y1Q,ټ_2yUE a H07/A0C PŚo*mzwluǬB$>NTޘYwaMT K-DWd*-fVX>I Q O W2(Z ?/!4 ^ԡ{KQU#C4ќd;vEdal=)7c_hqQEmD?#S[e'WTf(ҧRho`΅X?壆1?8Em:GM/F@0PfB\K+zQdI'^!kKCX]IDrp ˏ\C~Zdw)uY><ێJN%v<95cjVL0p̝/mʱ3LO_Œ|>E:a't9`y d`J*w][њ>C<<i !#ںM0} "f[=Zaűo!nE'Ԯ‡XY[Wd3nVj(`P]R=VT/b^5ix\5Y# 3-*P-x`H d6SnD9DNhٙB ,No0f&Jn ]d^CÑuFl]xYTRUctBOoBL| ܑ)47cBO^\V}rT!'4Y|fRuڰb2P(Y)+D֮`r6vzAu$.BAKg@T*mT)8`c(Sa,Z1#ZR%FT6.Q;- oi46=h\ Yv6CL{pv5$*xT Qhx4_f }ѷOٴp1nsI M"n~ӯ֎.ugi!=5|.\_;n{-7[V9$Gf&ijtHX֤M>#g}v&]_!`L[CSQK4sV?MfoxcߩJ"%g| |4p Ϊ }YTMyʪ0=E`WFYg/۸ b:V\M LL x^y.[-nXCcba0P"C8+̃JƋLrpJxlÏ| wT@)M l4Owt'_x6 '@ݢ-`ت;le }8πbe1ޠ=(ta@}O SO!U闍VA\%w+ $djE?g:îdܦ{}CuK pL wN%!l?FBwR740,JUv~\sp4&6tZ`*<0V>&.yYrOKeB.ǜU! /Bt$QR{w@xUbsKS?0?Jv E3QsFFge2bmEToK] _Dq)@^Vo0״5 7P{d#w-?D= PAi3j^66Bud$PdEl_o|g_-PZz@|hflipg<8wTcm( rLaveBhl<?)aS!H 'EHMWyֱuX3}No){[H5Fe@NE-͝ʠ׉C]$x<\ 7s}o Xk#/n1g7D:;Ԗ3 T2re>ǧf('^G^r&.Ht{R/ϼÕ(e`6]dm|5-$j\.`]HO,mԳ?jn|a7d8*F͹,ܿH|g!^te$xxb~?bOĖ.{oWr7e0;:.,WOQs$HNRaoD"p lALV#T^4~$ˬ MQ/~r,JQ ϰmH>e:t_& c6ژ}G$R̠}ԙlթސ5q*(- J-Enj6eЎ&$b| Gp` ְA劽H^iu lno*wyS#`(]|$Y'kºR`%#mbB>nlF i@`lX!.Z9 .&DZT̾)b uN'kji{պjwL~ogѯO^%/p0=ARtM=?CrÐDOV41POkI_^i*6QD"#a732ߋչR8a#G1)tfyzoBTTC)(( Ooq ~ mѐȀPK2\ EEWv{^kա.+lxJIʋ } q}_R$'w(T`Jб+0A*A3>BOHS7 13sJ5({B`a|QV4*L\37W'34ۮ#Gܜ7Z%Y*Uʹ; 2Y$ ޴!'ɠ$[{L@\ABD Ϙwb*&Zk=!9}dLݡ1/ňVԱN4`O={ϨPC,_ĻR%4 x} zޫG@qtһ+lDx׮`A|%w BNph0W*VíY-;>#Kvh_Q*TqRXhwŬWU]?>Yi37#]֭`?1)Y惝\8Zyov~\W [3цDwB1!O]?DE.L!M߷BtxBCbi1%sDbiI&I6Ib+d'Zx+#U!}Z4Qc7 ~; qz9i]T?4ǰԡzެW(L]R8gg~d(to1[ȃ-):5nc܍:4"jbwI9VPJӄSоΐ|HHyȷpɀe_t4eJ ež7\&.EHs` t]e:SU}RwAS%RDp7?GG'JhLvV l#$C,TK_t܈F^ oFd{4i ǖEH̜u/޳Y wA^S1:HPLFx({-7e(XmS%űܚq_ح{^oMP?4wҖ1S+v!͈V! {?|-a`Yj`L ̩H$ꓸa \#uo2$VkޅꓤiJ w>OϷ2o/P;l{9KP:0N9( SmvɎc)U[llYj՟16*"ߚY70b~dMfc7DU}m~7kWvyl;ighb>W6֢͆j| ArPK`R+qk95EhﴢL8]gԀoUoe |c:&!)"KS­_h4`D9S3qT\"CG؟6ofKh,lB >nw3w u]k𕚃 Ϡdq{Ls`nojBXwM%VٯjVDT ȟ{/R(pj]^X̯~wpsB!.&{IDSYQCf E{i {6;'褻G*-@|Hۤ%/ t4[g^[aULWBZ߂hCv.@pɾi3jzl{H^kƧ57FZ;!d2-"i, JݜI_%?h \)b1ex 'DS } bR sWݲa鰫R19n?HEg{~Hu%7բο-7MKdjBķ?Y+f -{7&QNx!h|=|H+쭓# !㱧C1s7p!e j/⳶V{~`°l&ꠇQ?#զ{؏ f>ht3cM*nn4NWWINS1YFue`隅㯷f.5Ǩ,> qFzߗPUz zJp {`${[And@ұY%^>{хkA]_cAIF2X(!Qޓ菝7@<ԯ&)`k_§sKAЪPwxx9njVu<1LJCծN뗲‰Xrd\/mA z]&0P圚lEX>4W BP8|QȲn[r mߒ9ݤ;jz>p>řƉHl =k"V9ƜV̱^Ռ<+C8Q[0̺ɗ64"M*)t#|E%2}D lKQtpR),fEס_<PdP $A >aI - ET>"03$FK咕N&001[V,wDXQ8t| &(ΟAHĨC{,&́83 !X4X`J6uxLD΍;?CzS!ȟbpYX|ٻ <Qg B2^a(PHۅĺґʦF0pH}/ |T0N62v[ XiyӰ9tyW6َGh|rJ9}ĥ\j RÆ`dja؛  _+idδȌ1+Lrt\̰G҂ L M@#Jxpִ@,&_W8Ui" ~i[J~FEG-W^Yw WvDbs^G#'EB^ |!aOytۏ5,6o p}rDiѼz[g ղ/Y ~*&9놛Łnez]K֌ J*_le-_U=V-%wK^y7tg)(yR)fsŕ9ME?zz seTI 3vN&rv5[f<(7™ ,(`d@ta|1*UwQLp؃"mz;W;3HcOK #"b6eoQwB\ks7Lf<'C3d= [G#zRz9P 9ƪXed'_j 7ڏ_#)vHRwNcx{i,1\ˋAíNuޚBgճKS/0#{(IM5Vȳ 6/AR.'Zys2=`)cLF0ݴ\rm֭pvuQW[ZΠPq|ʡ ulX*̡ iӁ p;-)0k:\)XsRiXAN-U\8pvU!P2<ԍ-}bmGJQ ݩ4МShS*~y,`Ug(fñ Gj1> }{;tH(]Cfvɀ k>6,s3|mmFI]I; MK6X m}2Č]fִUHԔ+`h]6QecHpfŎ**bԅ%̏5K=㜅t\7Х+P3R's$hE>m{Xo_ŸϭgOթxΈIdߑT6 :[>)“FyEzu&`Usu.)@!̪'ԞQX9=uOVxcwQ@7JgZ2᩠;Vksn^r&p? x<5\>K#8?\/Ҏ̞7q+n!Hx*[H[ndR#~JWDb-W!Qo4G5fZ*yZd g@x;.Tq!AIQxl_ Aܦ\h-򿖧 Q-^GeY&$,'f]TOvz IG(x 2nF|<$휃2ʔxy3({W+py/~#N"rډA@t{{weܾF\/%R@p9\LWqvUdal<Ǖ]VY &Jv)#lM䓩.QtSw +Z;p [P>Bٿ&=!bUizwuA@e?zs!ۛȻ#?_i "g=dc/)}>y\Y=Fi1G/7b?ybZt"|\t0vI8^,$hDg lfONWMOp{-jkS=-˒&]@fukP)H1zW}UCƸO,cAce_)T!k%V"孚y [5"|bi][mcГ}h,v թeX\F-FT]Hɑ-8F6O4 S ѻLMfo&vl$i%)#Mi˙g{Zvi-<.6@U'brJ~hU@uY..sWð+m15x#/]#R/}~,\(u}M-7`$ Iź ];k| ީJ.-1"(Gs?YѢ7Ԝr5NL dܥ2\ȗD&^>7C(HQ L3%8C?V \C͹Z9њat{S)~e壋u#O$lG )$N8l/#l S` z]-אRZY7|}zn`9p5e0HsRVC5c`6"#XZ~k<T&E)zëg Z3}W;7Ԩ)UQ_L|ۃ媦5 C XY::#{IP&ډ}{ =9rC|KJ9ÂTTCE@^Ȟ> 42#zc˖R/XҺjQF,"v!Ry|vD^oL&]V!T?"QwЌ_ {r2աy!1qᅘv<ĩːSQ*MR I #9)'[8-fx1Ƞ6X{|4.C vVXG]_ jYOD}nNN-@g=_xRUVOA]#-rmJ̭QK, |Ѱ 7f',ґߜ8Nϋ5KPnh #_Xn޳fjp2XO5wQ Ze~bh?ŰC78hNI%}X@2ū{"'^P@2 #JQޅaM?l#lt'.mCyZrXatI aswA fJύ㺁;CfN;hRuiAS[;5zVA}AZNw>spL;1wƘ1 {yOU 0@qdoKT [6~Ӑݥ/=E wsǗ&o X*fQqGey1sLct~uEE|s+*=x=jTB%`9~P˄"*ieN^mM&${ɜ4[ tXw}({|H~>_bU&{H\6D/H5Ix Ut#KN" uѷ[ obapʵh;c\#hr@HG 0#mjXFI;DX(>5\!d#8[7_$omJԊ?:xʑ1R ehW  \PXeqCf25%M}c>-}jx D 9Q;Dpb.E61#E(EՇ0I ~13)doMy(BFzL!A*~, oI/2#\D4IH^1*x1;^vs)0\?༰?幈˥2ļ#!A,,+[8F50gaݯOycs }fjP A@Z]!PN_Y)X+ F.tkN*B)Y{p~ꇞč׉>w =vR 61 vrS.o(YvAMNygBHAbҠx}Fyh}Kk\P[\Spk SA }0؇7Ђ6[`j<9/UU/P 8#[q~.P4uj{? ~l=}M4K4F߲ZZ]-h,3^e ǤvC<[{dl%d%!y̆2)H'ۏGVhqeYPu5(Ozd4sԪ8rj9o JP6zY/ WngODlQ;PC,3jZ/<$U4ܸ:93z5=tO['Ig XtOVJަ9bU}[̘K}U(?{ȉ?+]z'3*`B"6T;hMlO[o{W5zst4Zul U֐ֺrL%.*lq0GH ;>d*-"RFCsV%_'nP$`7FҏI}4E(?lCDyeowpL N:Ҩ>ؑD ؉ x߈GJDRhQ -)Bk7BEFfٶu)sncқ@IL!uUSw6&T8+H+BZݹF G,TсU֞WvMlJ lm;GS9M]uѳxD.o'nzR`Z9_G48Ä}Mq+,6E b +sIGWKeѵʬ?=t cSb\Qc*? >oTejB㤧MZ  :XVJ90_56̴l: JQzTa-؋!fm(,xiO9 Q8?A⢸zE{,Tʾ^r]e= |Yi3Y`GyHA/7b֍?1לdI\lOo"g[RS$h(n=UŰbjJk' [tAm.U) N wa PvߕpS[kleMH,ƵK<Qz= Goxk<1ΜTebkvDsGZ/*ڲ⩺.GyIE}  r5 8-Tsȧ j &$ ^!D/:;)v{}oz&4L<홐[WNVpe#8rG7zER`C=Wb:6X_RN5Z֟r0) :~soA~G7Vm0Lر7no&*ТpDe4^9W&rM p9Vb;VEYNf)ͧe! h#3 "~4J!QZwKHēќ++*к0+DsV2q2eѾyn?fPGb<` ~.;\ ezs vuc Y'$jAs\K O{o# `cI9NWՌB]Qʊ&y6Y}[E5XNn*ń*bvip_;xp?W?gI$ :*+- hk4(tP0F2(2H? \@m!wRdrpQysNY~y筕3,W! 4GV"1pּۯn|lV#϶k3-#&%,tXhd|l,~m&՞L]] jd·z' Hͣ4liuM塆ÃUJȗ2\">U?r3^*J˒쪧u2׋An?.wu$CL= :B RQi,7nyy, 5"Ϗy(kw߀PaV!GYԌEf|XB R!?'4B@ L9Sd} ge>&*xC0k$'tbr6p5 <`s,yݥ` Qex ZL 诬bJ. * @Q3W*E]up1`,\xEoȾQh  G9,R)8Z ѳ|bNKmKLc:oL슢mޔD_sI[-ZBI$6jˇX%[gZ3O'w\[gɌX1^LcT5@wX_m ! 616A R# K,N/,9_[U)Fsin p]"L] 6'D>FGEV2;yZ=fH&vtcIv?ISϛ x$/tǕv'o:WA*{;" # "H)6Usa" K栙IrG^ wO^iJڇM,>&JE!w#~0v5wVZSܙ{O2v/F=+S$df2m,IMw&d*(0z~)S˾>LF⻽O,~ݕ6J|MΰU/g p6ՆO.sGn%' ^~E#Y&G0K i%wB7\8Z4BN!bX퇭Zb7ZgB#1_})3F_.皌~FJ;&5t3V:zh(E kt4\| :o 4hǪ Տ2D"etDPw#YYϯč ͯ&DUCj3'f$aӿU+oib+dSfJh8dvzC2W`+HQWEbDi4|ez]c.(ARrF݋Y 1R&wgO`"IB }r &X j>7$wrh1TLZ=E! ՗w}^JKl1.y%h(䷌ǯ[Mr kHoD3TGRҨ[twAykwwl{P#얮lLkyڼTfUa?|eޠ:)u{S4B]׍5M,? IgKE9SXrGt"'I̜(˶!|k`l1S\H3,ֵLa6:,`ǚhݚlX'T!Ҹ.z8~Q?6ȧJ'q}tT&Xky u*̫"U', 7' Lft`$X+פz4ϯZ>U廦{X :#bu}Ҧ@xQ(_ Ɋ+c] {Z7aB!zmE?u)P5[XcĔsD̶1NpX|ٱf 8fNA ,_f & .-/NѸ7l)H4XV@jkAիx]G*ǀB!F"B<>7nV9[Ϝ(Hz˃ȳcpRR`u} g٥$fIG (3zV˺F?e̸(_t%0ք$}K A[w_4yce SgV>XX~{_#O{GRu˞@Nmχ9O$~5:WFnr2R*oPAtZq]U_XGja'NG|L+*~Z "x_DDGc7׃)~C$v7F55C$}f__|fsJhwrP'dۆI!z EIk#N tq}U-l3xOcujwoRHoܸS˖({ʱ)\qH!:49:L({͆'oI*vC\qW*5'l;%Q@B4w<;[)4B)e McAN]58~!>˺]ؠO<+_YTJ[VaB4Vq8cPH*L*H?q$S~7wFYO;Nw>uH6ҥ|#FWn3Է|xͩ28B=Zj9z-s]rY"v8Z3iAn 4=QZ\ymI(\BxM0Y|@vvDp@hC@f7lOqhaB;3t\B3f P95}z]"1-9%7 aԶuU={pqP:fg]gڛ]XrVHvh9b;5w5|ЮUGsaP *x9t)쭟I#^Mh尩t;uC vAEX~ *7XIr|$9xxE__Og!~h)[$[n@>Rb#H00-Z$V3(!iu1,i~5EFEjk'w2I('i`v!_=д6 V-:<ܕRl7m˵)#z/cFG0GcL$as^hO= ]SD@7MPOq<╰f1+,WwbGUj 5WKS4Rg$2LeA3]rjF`t=1fWe.Kbz;o%ݨ&WR&SsPJq,dMTAy֝ 6ky $vSrq_͍x҉ԵwžGs'SV;C L>})uZc>b1FhSWi9B]s!T52tN5SRɪwVҚd!ehN%=~)d:g5`O\0v|(Ds#YlW6ǁoA obOkehbtw/JPKuXO_cJ(/ BOQJWCPBn+<"+¹p- aŮdśWc%7Ex|1 'H|7>/D=ïk:OLw 9W>*"/XrPQ4o 7(RaXBXU9JnQo8LrjF}{by]_d.y88\l-f6/$3P T{*ƺOV4lIB`>+m߲A_jf^{1z<ݒvP!/:+H7d رL fPsxҀ}߼ ,Pm)r Z&mU,s{Rs{b{e]wσ}9KIU`7(f6~pgG:aPPf3=ۦ:-M.!ؤ@B%FlX|G 1 k x& 1jodn_يnO,`me$QqkWPs΍GL͕f3 biJ H/yCpc7"lw3{Ɛ?8, Cv;`"gšxdlԨi/֔b(* @@H@ O(H=pOx W);HgP" W K1VvƘXg7Y*RVʘE:qYQ-8C1 iA*XBKV_^&˾(2c:9;>s%B/tY8錧&3㿶X!̩"u9Ѿ!3G{Iᷠ2@ǰs_Z[fωl 8(Vii/fքhMH}zQAqa2O\c UxuO# SΡ'g`?V{iB?ck'G\zU:fUC%]!>L!ǁ1t@:I Q8+U(d1n'[7*w1dV 4 T0kԈ(w-M оNsLUZk>L*UZz1⇖ pXndR:}qWv4Ҙ 6)6?7RdMMit/|jzё`. [na43[-(%8ېD޼t=lւ%KhP7lcl${!d^Omft& X>!R켵vLAisQ]+ftʐewi)PgS&v4:\Mi΄'||GG}wBiFuc\s0|Q6[+;?z=h81;â{§r#: U-ߞ{e˫kF1|nD;mWyv,xUw4z f6N۔:r\r \܍$v/vxgmÒti͗nУi:)]҄gHo=kOD|@lPlXP0b6oxBVJJ6?Tmua%/NTJ#xg֪a͉"ADcK |$20 ܺyKu^e Φ|Jupc3:O5:$~ur+ԗN nć\ԕL0‰|+pQ{!~/niw.Z Xdj< LĂGm+o59_TKM -Q9I]h58,SaU!{s=` Q8١8 y\U1?]K0ark|yT@JWUX!Dm/ph[X"\xב|Tkp$bsZ#úp5r2 iPy+4#>"e`؋7f9sԔ! , nm8?XmeQPi~01iP$J1w#γ9LJrkK0595=dzקb$kNOmLL[{ Z`edvzjamE+M*Z(qIϺsy*3?p"YMKX~Yy9P$J`ήmǓKxFIdtidȑ-uvnַaRt$zsVjw9ӦV6Ft?/O.l9{v)Y7AC FAp{jR]" }rըh`c}&b`휔n[èz] eeeКZgkmIG{dMz'#]Hz%11hwn^حI?[ƺ+kX~1'q̘ 7^ tl"H}- >Ob'K{*O:|ҽE1^ȓM颴Qk8G Cv8rfr +IV홆N{c&x6e 7;yqa8Q 94q&`}V#̇3 qZԲ}Qo .0!߭?ƀOk,SBE|9|o#դޅ_&`d-K:+iJE5J 'Y we$ik bWd( UJc4["xe<$UI෧|#t]$OcY+4N˶fjfw=A^Kt$ǎQgzcO2! KDE,Ӷ~OCX@ķՉ#Ua~lqKkXj xLpx(^'UdaAuVy|ib9U>-GXF Je+]f0gCn;yY14Z 95 n|r0~r1SMws#Oϒ.}Diײ ݊$Hs;t h7C奶;D?2+`=|L[]gHD)$|DM+};~7 !S]u0ɵ“5t@g=> .ƌ݈q#_r$HqB@uFcK4JNfM z,1v.rG/s7M[D"cdTA[ R̼F&t>i5๻o?fRIܪRDs^cjEw ÔElQ0oZuf(ShأkBsTjaWIXU; sw_ë,+3?.j*JI5Q ֛,\f7Ӥ$O+})Ė+00u5,nJ3_ 2((H:1HDw͎8w!D0'):OHw.2DT-7=<@gt oS;sd']\i&wM\xFbOVe?>dU!ULJ q|wA3V6CE31qߊ%Cv~{ ワ.my )E4Mx+? eT D~G05;Fl@@@BL乣`q/e!Y$h8e1oC4˽L~X GЌ(P:vЫtE>@ 8&obS,Gߔn݄tfcS)-#0z% 2qWY*{ @_ҭQZs7X>1ᆻ İ4"5?-B;,62:ke,g&c'Dz [O ^'k6W ]SQQYgJ `p0yAVj>7;uia67b@mtf?J 9ꙵMl!anlփoy%QK.Rvah?,lPUrH2^aj΋E_+ mVKtg}i;g|G tx}X~8/rߎ iHNUn#wzxE%vǤ8"{?$p߄oժڟd]C싏] 6Zb2[Bþ'S r0@CUoX*z@1 "f1ܤ>_έtcxO 94kcC\#[ QQb⬾0OAWn{WL- n{C5QW8XM/ӳ *t6qPP&<6s1q@ hSC蛖8F=D7* oVD /@#؞\ܥ HۑA]rYvzG'O[FɪUl8-4yz^ToGI {3jv_C2rBrcB@m@cd,9sq3U{f5:N%ysµ#gΊ Sxտ3]d7A*@ye`+b%&,gDF15n:`?a8K+}`qkG{쟡aDsVE\ᄱ+j퐣S>+wYG9cn}!wބ7^Ff(Vp?G«QClƓUt:u\[4M~ .jkn!)Fb|p;3r.| .q:u8B~PаX:FJT8o5-= 3&F?1%p76SDpp-Ot(s,nluU|[4IT%)p7EXMh>Gj^dJG~ XP%Ny|ۭvlj)lz;S&z^d~a:!D,sRQjrl% ըKXkTД*]!#u 4 T8]g2_,xg%NHaԞPݏͿ͚jH+& ~}5Xt oAbhX t%h]_H xǶ ;9^./ԴRDd̦4I)&'暢kרMiATm}Y¸g Iјd[H nhU!:NԺF2C(bś11|ReP7\Ĭgc 箊5I27ύm(no%b#W#5wN*M[![fW~f`) |7S&ESiҫWH(A6C5A'.SJ3)tyijx {OC#!TOYk}\ Gl9)WcO}3nS\zz@,B.9%jg6Ɵ sɕ5v4^(WoTX`te;*Enmߛ_=;ؕ'IysC𲘶uŒCTxJ(/NFqS;FD"t Ytt@Y)*24 tvޱ`2K,H8X8B׃&4BAJa@ r"`h WW"/F;/NQ ?4eRC8R%wed$UKVdzOѬՆzipV\Cʾe4B,^DsҚ >JvpC;1Bξdz@5. ֵrӅ)KJnIp;[Vd*d 0bҹCLanM˷9;3Cxl%HJoљ:\1g[<Ǫ0ҭqTrQ^Q~h&cg}$\tr|g|=Wܩ=*KYM Y^0 Z~CwO, !\|5 fMm _I FaH3& $V֜:~GAŧWv1\RW[p^ϟj5@R}HufOA&mh`;t=46HHLPi :~)UZ'@`\\\͍oULVr%=F<`=OB7)QK~ݚ.?t7F.VP@D'410JҜ vP6$.7^el"q3k D<q:r1s*)@/rMTn zc{:wоz|mOӦuQWXA B]e~%Dwsvfޅδbj*L4Šok+ٶwq~OCGT(ѐLľ5_>YCqKm%^F/d^NׂjlG/^+.r5F⫧tnpՐ"G*r5 .;dRSdzM\4_pl쮆Ȁ,w8tNJg5Sr0Ͱ6[Y)!mb\;ߟκQ:qPXX*APzZ2 B┍j쯽ȡ3HTWX |ũe{mD*m>e #-DNmWv95@vP"YxJPcK{+I7*Lx;P%/[ԠRޔ{lqaa-e[aE|;;H |S T&dA0Es$6N.(77F4md?>;z8'o wVPz9C*~[L Y4ڤ6 R#(əfRq ۍW8}zmpb-tn4MyUаyBر{cC|&s)PfMXq-iip|jw3>x,WF>6f kvјVY4ds䆾KQ܂\C ,?Ź{r&>Χ\'l!HՕBQN(׏Z@S |/*"H묳cfK:_5 Sb#'w5J}$1u XV?5N?98:%1]"/ RCVGt"-WMZ̜g'BNԢ6Qٌ"QV>B[:)bǗ"jܐL"M e 5!euMșb1 𐨬d(7廧w/ӑ_8EW7{ 5Wz>[dYœDLz[Xr !tYm>$gY~,W[Yoz6WU@<͉=VÁzڟZxQ~2mTBKRLqEG̫ʙϵwg^5xtm\XZCb]/NgVk*׽)y +X,^eqC9tCK9kGl;,1ZHO2n(G-5'2[¥(Ci q܌_H[i$|BdQre_k|u`2K+ 忠NueP``҂PU0DNػ귺dLlt|Zp,9mS9˦;`}.!VIƤϤ;VcB _$Zz,7d{P4T1HA:BD ͅZm/qSO<Zbk>#^Tr)5/EZYX*U:) !'p/ה[^(N"oVRZ p5–N 5z9pA -4,6gJ慔`X@D^u[aC҈q^ ? ۏY6C䆂c,I1U+oKp3z2r:̣7/ksm{ogәX<_kh<֊[yH;3c{a( !AOYv`ָ +f(؅x輽гBR3tmF~OH۷! Es6ך3Ë7Ec<1@,um q!E`mp}iߥtulzqFD=S zQX A;Κ.aYb8U׈`ugoCQM/8!jx% Q{2d6nlB;ibx!ca'TMW>w`+}گ |2rfFc0M=Rͥ9J\[!3lA+@\YFWps f*1x|I󕛒1<^TA -ȟ(>}7K\çXL怱"iDw{ߒ@x&b)v ԭE >$5~cy a$sȓV 8xqT~Bn`0_fP8~х%Ȃ2`WmAJ[cݕc%ZUt>  PϊƐ Q0:PQ2\pTnMjy'mq1V.iE; 3Ю&MQN G5𶢴&$ l\j`nfjrIړ*SH=B!WyT/Cɍ~GLWBDz!;B?s&=I",ˆ֎CQ|əmkdJr:tbB`y [V{kGzRѸ/_kca^VZVnW :aЏ` h~ ':pψ_c6TFJqSx;dÉ6$"4'p?5ݠqsu+a#K`h,/m䖜xɕU"L0W2y2x8O\o]2Qׅ7ߗfCʤ͆] aDBzRG1]\IQo )HX=k.oxY,/k_&.nW+-}A3@aђ 9`s2FD" 6$S2\@QVL+$'#]Xaf;SAMU-3C^w~6GU,uF*|viXm3B6ShM-;<e5A.>yh0Ӽ :I XI. 9=m5Iެ֥pާNj xQ>8(uji#:PЙ4(Q)z^9u`I2 *%%&M6@ ՚/"IB^eEIs򬩛G_rķ [zB[<֘3+]k9iջZ|,KȠ\Y)=!niCW^r^f^~20N]&KA}1P7ΒwG~Vu\gcpHq 5!E66|jMl;A> JWX[PpK)[rǔPDG;:2!㤼AP߉I_y$QٲʆBr%ma$6#kW'v)yUwTmEy#n8i K3(Z;#xV|+LCF ,D?i=qE@LB4 ߑK ;o>0[e bb9 .6"6a.LhZ5gF4ZbVh! d#6U"v*g=e&V]9%:4m{"<-,KpËLC(%|lOt ֙fzE4? 'A+zJn z~Go*|iA؅T](De@xLTL'W}7Br<O Ec}J)2ǹBΨ9촊.)o囟,9%TT]B/b7w'NN5.#`Q: )Kp91q0qdZGpc*^V)VD WY@.J<"Q4@(&uMGoO,;imF+eV&)nM{,NhZ8{p9s-R:.9F[Gx)If>+V )"> Vck g@tgr]"aVaza[Lɲ2l@ĤSA#tO7.AAbt2&.a}#<8*ױ LhTލmTٗPd^h:'=Ő&lڜp1Kޗlp\)GqoU7`)k,.$9LY&3|boKBIGw=#N5V(HUS|?j? 49O6Ȉ[`3(}dJ.O:R,Xٰj1iǐ\o$pJy z,5?!!WVݔƔŹO R f0|o8:?xtM,; yDn*L,!E`F [oW3x݀"tɎz4c<B,~pm ?!(jDixձaR}nC`8oe7W_Jν -^ ix{L2ՠ$`&0o32 OLvpeS־'ТC(%h][i]<5JX##oQJꕑ+QG=20SP:" t87o]k^.e4uMH0$z&ᚊk͜XصƫJz^t Mna8V̥[X) >kd,;י2nܹABz>Χ9}EؼԘP"B}$N^A5t98>x ic Jp`vx X7@O`bS|L-}o'.mAzkU8UЗj]!ȹEsq ntvUx52Ht68 [2X)/#KҶ=nXך^RU1Nwy=#U#:stDKx:pzbY1GKbZ+Zם6gzyegFiI?|$@B*C* SU *TB\NW,3\dvޑ"1ZarYwo{)muJ-wt+!'~@PYMok]C//+]"`e賚.El$9am]>-JʘCgEn^ dh Y$Ķa*TgM5!75'._L eꪻRƼdD&af@-5KhJ=]n<"*>fkCН hATUF7-HដNNi>@9(\_EJK\d[NN4ȭٽB d`e{B&̳| 󋖰UasۼJЈ4%W6VeL(s|ph4tvExq :2YD].8D,|-fx?(Mm`鰹?$(D%xKs> [" -9[]oB Ճ>e+ʸ#NS{F:rШ@Ni'87~3NOmKDկe}C,vNa $۹G'Tj%yY[ΌnpqJMCKd,*(InZň{e_mGC!զ%|6!iz[,'/`rt2-qƕJ#HjI>)^285\YE 8~l@rO ?c{-2<|ٟ6p5Jz8AGw85[<0 '[{v_@% 0 ֙<#W@MaD!B`?RvTD\ mZr 0a҇g$ S~dњئ4PR\ n@7yL3u@]BL݄XgJf0CO}~J3TeZ4N;/ y8-컹tAWq6jL+mv#4J;Mlu+JQp+ۧB8Q98sW$. э6YRGm[鱞v{!j%5xL Vp]@oh dʳ톚& 4əf` ds& +4bQV*c,&9Kj\ݡ]EsnP- L\6yvSz2Ǹ`%9#[aM8 ީ sc N /@Og+wŚ :?,PDR4DoQ >idN B|ŎuͲ(\-B7(nRU.z7B~@s<[7Ф'JU@{suF#/@H& (0=D dO$&`A]# v܌3@VatcXkhd<׽DhfQaV b?L7./#oel;,Ci\#_y  |bsF6|!Nq4(c3 D*TM_gּrݘ/'Ut?tؗH9v).ɘhIs ds4jZk ~{+jSE` 8YCٰSpMlWԒva\ J lhf`<}!sjWLM3$xU1̥O:OR<'[[7"n;1]ςkZE/#/6d:"ےnAE`$.;D_uo j9`S0ELFx6pV1ylS\1RӺkK p^xHC6f}+-a{(55fd@O&׿{wP@W/j+p6XDg_Z?ٽm:I{Um'EK. /R.xșANfx̭[7OȍhE׾N_Bx}IM0Z,@j`H*p@v?}~P:e+1yR\kHV-gͶyKs2^:)f(19/̱+\B)Q=!) MFV[ ~2\oωRPYloT5]*ul|R T2-H>Od9#8P6) W޳{E)0'0oZ%9_^k_SC~ #2|?džinRC6/dFd|L_E~]UQ?6aK +6]XVDDc.ftltH5th#ڟ/h )snANZ*-aK'@ϲ١b2frE@e}-8(#bb?o5OXBYݔ5\}ޗQx=0d% jӜv gourG}09/<9(V+ sArԲhld;Opҿ:/;oWtwFPcQj_>CP'N3󦘐Q\D"Myh5Ϝ8KN`^voLGIWVQCNT'r[c\3lCb"(D)W'[7j'CUR7q^Hsl w%'e k-R yO<(:EaӋa61nE*2@tԻf\:쑲qp!|"y/defEӅd090dn'R? CʬwS8dH=w4awe:Aq..8SLݞ̝GS׆r8SO;xTL3BsmY@fvB"] ~vG"㪐땔\864"»ZHS.3fIhzQ spbΛTȯޖ~t"Ԛ'W6Pzx3\EtDV7,31%>;_1X0͝i,$aȌ$[7(-6]f)bLB=05w=r4V^A㶴 AVYb f„NDnC~#P] #H$1ƫ_.1@.-t<<9 [8 g't@ەbk11_ qrLSR6;WPk*o=[/Uɸҗ-TI.+R PUۢ;ճ)2ꐛ,Kjlޅ[xkbGu2- Z6'Jlݾa}x2.^7&tW9\U(f+RER, )vy]vBPϷ\9 l5y}`%GL!oo@7|Fx]a8`GC3;$xtelcNJgA 3:vFL@?I|5ۨDŊ!/u,U$CN wD#pGSiYn)hUj;R[}88}\Ϣ}xiХꁎ6?\K()kaӲUuaiX8"F 5u9uްo\^GjtQF¡Nk}MF/!S1 PbTҡ{᝸ EDf&q?[&Gq|lP פȒ LtM_НSJkqOe[`yډ;2'Vż?}TD{8sP=qB+=))eҩTijp/a6_#uh|lXv+.lnfo}GČdoCor}O:,|S+0 +ڼO{ N^][Zz_Ó%CFTw,޽ϩէiqn齃<Y|1GM(QFM\揄u˒Cbo5?-`|zi\=?aS1^z g k[Ē#2EbNW6C,Cicb)\M1f E1{s[&;:g(qbMًܸ2Cm1)F4~x0fm%CyppCƚ[/衹b!VKמt+Η<ŻիIM2?c)9XQ`Bqح^HM- ϐmpI!;CC3#M-!r%}u Xzq\IWjѯA|n{ LM:}Bo/vW5@e#تg(Mʼn$9seɻd^SAIu^ =^168gRR=F:9%[d.b}so RC r@>As!isMUkx.*xK]}iכ/;lUlЬQ)6M {hWHxYVէB"RLjv_\ew):u3t~E9[ޟW 1Nbwۙm%Lrℓd Һx9mJbr~.,i`U6L0;Uvhp.TILds+" (CpK)b{b6&IX!g?}"}k)ͷ;V2@宜@!PaY!.jI?)aI tmxBj%rY"`p xkrpkD!ג -c)A!)%X@hPxk9Q^ah֞ vp}D- $h?s~9Z_};XD s`t́Ac[3:/WA:I U3F9"` ;j 5 #x&!H:/YPL p[<.WWT^A_=䔈DL(M4?ҮHnԱVVZmAc5 @\:KDTۘ.]20Gp쎁9~WF- {{(t%,>^5 >qxJ <۶-F?sK98ysy4su - H5q;@V9 uUIkWc&Dv'>a݂:^NWX! ZZft! {9x'f8TTnChD ʌ_Śd_#(SZ̀HP_ddopjW\֢|y7rkXFS[ol{<;{[pSbg(:0 (7ƴfDI {UUl0ԃ:$Y985t-&G2#lb";؁qup=nYjRq9>i: Szq.gE8"ǾcOŋ$t{)bhrYoI_jHt/uzr%{RAÆÄ!5-#_ϐv!WObM =4XӾjt;QWSNvcs2.J5SB /Vr0,CP ?[^"`[̍OP&pa3Nb2Iϰ.M؇i4.L$"G CvH99+hЮPp9נˋ=ԫd5̋PUxUǼZR-7SDxjebG!7_qC9;ʊ N l1b*~v<# Z2BZQR;26h 2Y5q5oQDI]֙Ou>ʀ} |=TEz吹#鑝hIڐ89sUyD]gPz/Z5'p8D223SP 1ksS=r{%Ӯy%+^ L0V1QVh'T#VA~QfqB|SHW޴Khp3ӡ&;jc|85[X)\H''y7Vʌ#NpD Ngi21>\,LF&NQ+D<ؤQM^1_^q,(mB!,p i-7QdyZck"K(gI5۹xG)ͯ@As sQrȏcDK~ٗkg|V9Eq/,]QȘtad4=gQ(u7(8Xޠ^cCXݕHӴ/y0=xۛ%7-}>9Iu%OZV̾t`bGRAZqok}ocq5/lC]<dÁ~ˍWN;I@-3xnb@/40r> [cqTUɰ8aZWI=q!U(C:m+>fayi˔ "q%QapcI:m N؊A1K祋m™-K1)@@Aߩnv<ڋ5xRczjLʝW0|`[?TΘٴ 1ւR.FmoШU˰9vlfSEZIwМo >8D7C#]|TSNSP ~K%:`͐o1ymdUŸ~gЎ P͔?<O,eOb9F0\cTJO,C0mS)6I#C*%z.bxq4pHydR H͌?F`]u䜼xˑk$uWZ*f}ggueNAZHD3G .P7r%Ql1%ZE?2]{q5j_9!=s30)6ZQQ*)ilj|RRY6OBK>יVNe]L-d}c97rʊ71<&Yzڙut5膴2-q,cOe/s *Huӡ4œiU6wAńBפ؀Dr8&0K E; oR[ s2rW#G+5o5?hZ7TJ:~O*3I.EQ:+'2V' 8m?3HHs`#Gz)K27" 8"}6#Zx^c0QJH -7yTI6;𺆐oR1_hy=֘"dx_P$8%Q v|͢ᯬ >fý̴)*Zr 8K}ѝ9?1dXIxkm|ڼg5&].G3m$[w ɫHGc8lbNϗ#( 1,A%[AYDB utƒ9G, ؝ 46,>}b Y՛F gmP ]H;u=",2Lǎ/6o"Eb3C48rd{DgzaC#(n4VPO;B@Q;_C/P% |u#q.3<ŀi콈ҡ㱳.3"@p>X!/M>SH~7f& n;ٶ>p 2j  F-CAvXŁoGȁ,ߏ: TWf"JA@Mw_Mz?2ۉ({@9f1y:`D`p\qEon]X^Dm#B2 UP9diћ9Z'nh.)Ҁx gLv̪;w!<c %`c8Jtw"̀p̑Vp_i7\=GDŽ+0}¤Z_a%qju]a' 9"`;Mfˌ~$Q _:Q&^z02%s "y&A#e]SEI=xU,"Mґ.̀`v[ 뛕ee W;pee$덉q\=pogءhpR5[g !M-DZ.*If3aHNv%|$%v<'fA?]$h[ynˊrq:/*8D .SFBґ~1y,uB6:vy䱺;cG>р.rm 4hRQ R k&F2]pnbXtS`Z>; Y :(r'isޚs'93Zr oLeSֆ2;{1eq˟sǪm,l#1CeжȜfbqC/*K/JMXm0c&NQה; {)3jXG 2ҝ) ZNu%=U]-;]7_PtgveBgK~9Ђ #ݘ 3۶)jK=[e ڷ!ʹ9ds[ ,/ʌ&"`Ƞ bRZEFy78ZQd:mh+IiET&E WD_bK9. <}Œ"gJs>;/MNú@Ba{etvc+u@Tӧ&!+9F t䑕bX]VB)ؠ7ߋX}ܯ x~4^;B۩I~QL V:A'*&m- ~<ֺɡ_ i\u+ܚN Qw=s5XΘk kpZ/n =K5 JCY[ST#.q8N>bBB8CW^u+RhtjaD dHl#,A҅ѩ,mcBH/ݒyt~f=23scE>lh'@C8##R0B*)cS׿;e=Ȗ1}=|h8xS3J <oM4XCp}lݤ`|gZ1]Jr$j!7 Z7%vѠYs@8O)I^OL~$d?݌X.}1ZRٝa6[`lK&HL,'f6Y\Fd),kS$Viَ4](KsDL-)75yF*yIGƑ] >r^6UTsH qmzMo=I ,/30,}68#NJk+i^QJ2ۓjlDA _g-C1+r!WkֹҬQæH6Q6e T ٨Aγ*s4 CBԃ23Wt*Y1BE>=kE% t2 S3-!G{>NxXm%L ߮!9ӋPTAgo%Or3QU2Ԥd}#I< u+ښmSɐmm4:*mϦ.,r20cxMf͓DdHT. b YFςuFdoPnW)H}CO<&sO%LW0lqnlb뼝DlGDZ7&2쿕Kf)^߫!0i)T+J}B-1[ʢKr~m/>N5v./` AgO6JZKX\c9ɉ Lo3W'xgieMCI aH\V Eb,n~"I+a C\v ƘEU6nh˛jC{J|җPQFxNa?EnoIw|'p<&u0HJm~k2 9vFuy;GU.Sõ5B2\ }̈́+f !)O#̯{byӡ 4nŏHzq冽b'Q ?5dlt4+Č"ҕ{2K!>{]KTm w9W)j# Z`ƝaH26}ynw0{a"ġAÑjMA')N[X!=!<>VrVv4W9LJ=PS؁)Of7rowuTzR$  -$e )hhEAw̳nj3VeAh"a j t+e14X62=/#|A]M-Dլ+eb|D1 ?W#Ȝ )ò2RYmK~}Y=DžLI32 3SŬO 5SqLY>b zyd3mIǟ{~.S7G}?E,-g1k'S+]l~x"-<5&jd?t<>X-BK^,%q:]UM1 S8aXse27|#qUc;㨘7˺p"&zIKD,έFqdAਢ4ZB* -^xhzάRɤ!^]&d[Dsv<%uy$,I WxZO5Ӽd}L]Pjq3,&ƒzs,d?m>|CŚɑ`+4@= _*nigG8ڭsgؾf-mE VJlbCtF;򉂄_&;dSnb!~tû6c4⋕@ /!s1wlJs[[y)І?zZ~4͞`yi!WV"Ѯ}:M%VO~စ4lU1iZԇklH3KpWnۂn̥Wj>%ѕUKkaҸ:WϡF12H?-?}  E% DǺXT+&nЗw< ߉EdT<@j2m#oYQ\" A3 !q qR~pe)fB.R(ÿ/[ CfL>x@ $9 lQOJTd㓁|=~X8|$P&mKj"osIRlJȕw$;WW]uO,kI2(ה1C"sL54D]WMW8ɡH.yD(QA/Zqe;°LG!Qbpg 2'-fC h )UDL%A(>CQwAx4Oo׸õV~F"=OzAT>iF3ۚ3QE;ؗYNA~[쌬ScN4xJ@,$>tj|`Wq@#G0nm="/0j8c?- h\ZAK47Bجu ,r fԩ| T졶jPĹ7 e.YW>F[W\ ^c:dӕt)Y+@~r0+htxda^=){MvW`&K}!RQ^\IɎ _:̃lBon^-L>= K/ Eɕ:Kl!ַ$;JL)`k@E_;An5s7XrAy\󌆐Kh<TtEG+6du-E=$E7Pp|}JZW/o (w!9Z&؍Uqp |>lV ~f;bڼ,mkhH/!t[adeG" Qc.DZ4i ˘݀[ u}*"lwii:k)F٪fac7喴71plMwh nKW[!t#W qLz,h*6*dbw׆>QAulF)l. )M ڴ9H N5j EK7;㵈apU`ԡ<# J "SSÉNГl+{k \MV#+?s LsyvUg8X[0ԁJ_\*boAv.%! ~|8ֶA4e OK+9S'"Af9n+>v&j ZJj'j:^÷ؽC %\vm烉 loYprʞ4\dHLX$cKHO+-Kp(տh,}u⨪ (Wξ5Kc_bu/ܥR׾B`4@Ĕ6!FۄP('$e"谡hX*l$v-c<o)6TmH90KGܿ!^*LpނXշwtfg)Ǟ=.0H6&+h* Cء3\&dZ>%*13∹*%Ia2]Am=0dlWDt;T㐕_ w׈ \qK5- ;!`ڮ( RYdw#Z @sb 9]w$Q6KEG+:1̝ݲz-ZwdTI~ۿYs aMEHE6I^_&i'gu3%; +1×cθC/)i)jڋ\Nb [igWZY Bm +fz, ԓIZH!JGqD?&?яQ/"!$V.t| J]$klk)iUv ,@iBfJN}`jӡDu؋q\u=f"",a,J1 N`⅒)D %uzHV̊%,eƈHE뻾ݯ Z8*z>2lC‚C$P%VOkE^#QF< w(P#''RJrƀc)3 :YBmIg =(l :M4)ʊ\^[|07cuiYZUD3cV 0[=?g^iΫs$2PR|lU)Bu/WՕ{WwRn,¤5:N-@EYrO`ƞM^}c1ߠm+vDBGzʭ%@_CI 9T8KP몾U* wH?ŲܓYR! ީSU <.fxf!V*.İ+e+RYA;U3̈́Y+fNXWwI]42"X}[xDg9 XdBŰ~D~fmE^N ,3JmH턆51rB0d]1Q]g$͵B:-I1|>N ExХ-J=q K&3V)Ƭ;9X-q',jkGh nH[KRJ'#fl?88W azt*Qz.Y z_XET.,rY 'Tl U= M2oX5QV8L{PV5*s_Ow*@/Xo1@=wPZVK `!@?Jw,o@vA`+S CLf ?5u>3)_U m{KME -&Dk",Nho,]¾D;FnY{-')Ls8t`*O\jIσ1SEY}sE }JHP*X&,(}AT6dr5aA?!=7yd?"V%0K¯opE@`un9m]ž)EņFFAE A7JkHފ.WTRiIK ;[?4.S%MzVӮG\^UkuSn>שw\B@o^JBV5S˥@s{oiu:jhuw 6j3bCrkBܟ22+"e斍y׺~VWO4 ZR<\|ΕJx̺ LǴ^~^\wh_Lƛ; OW]vt}C{+&K xjo rs__$-ld+}kGUc?5j‚27 Mc5/"b|Ai`~Vc1TLMIOƛB4_cF.5!M8FBvmM)sl3VŰYX}Y-}"$|/ü# ZK̑sZJlQe;Q@]L4jX lS^=oeqUގ|pfxZȮ<,͛ ?9nZ"`W2ݎ"LP|?6H3BfgB.rG%l3[%SMG2k'H;֑X_ay{YBv<$_ftC0 J ,R蚃Zeqn.=͖yu7>>8ڬCFwbbO/M_OrPբs(]ƯJ:H~){ C2Z3bZVZVF7=35 8Q?•RMyxDXjɉ0(wOa?9#;"JVZ)Cy5nolIFω9mo. Zv!&ʅSV[m`u%s~|pϐ_Kd!eL}dJ5kzR.׃a78a2\fccXV;''|rdE5"aR[?[g ;mI]Զn086,3|Sf5>zٓ1$f݌h 6];;4e(zV t,?.K4Bߤ>P 3p:՗mwqɷ1fUod=9ӑ}ͬ*[&3 㱇4U[$Wf5$Zfwc^K<,*~Z1<"WUR5AAEƉ ߃"r'zC엞cDXͳBpZZ[+4d󛑓ƨQ?Nj-Ջ=,֛n${nH<H*:r^yȮo؊ 7涨rr !¨trU1:QoNw7|:m8ި//Crrh ,Θ 1 YaHZןqwO[ӵυ!6]owJzJqRСc34hYIT&nЅ6/?$؉`w5w6OPcl2d0 c%SJX v@t`O2Yaݻć!泬1QQ}c.AU-,ję\BAVdlJe@ݞfuHteW!wZ_Qztp0E7c#G1<BmDsbt>qv,7 S5W?O"=:F3je&6mT(zFξfڔU Fb\q){VHiFX+dZM,$siCj"?Wc<֊q7ӽ-󬦀xr)V|Dm[T;2}z-x]:q1nzDcSRN\K\5hC~w²Huy%nHr>6:8Vt{b&fڦ= e^]G V2,Vش%Z~K~4* !nepWl?Qlu"Mqn Z@4m3QGwC hdoj#?j@ӵ|w``Cqet ,zoR鋘OnF8 $!{H# h(o_Gx"} WP;3KG֤b_Nͦqq_$@"vAeP }Nk.d:<QJL]k.<j߅>`(= Pj?{78\f`8$g̎{)_OBS#hOUį;i)ȸ1dFM~ 8!cnX^@~E$W{sW3ĮW7[g}\&U#"Y7%BK&<5Bk4%*Z[49*=6[\ϛܻH3y51w9@0E*ͯDkvZ$Y m0AFf:\apm][[X }ބúo޷eB׀ʹ2 8gIӉ3@\䯈A9d)E׎QBC9dKX18|}*2f؊Fi6XQ@ o+sVi~b#):y0)__;ckBLQ @(:.]1Md>f #`Ik@B6ɓytԾ&2GWI禐=O TmS94}3& !Y#';۳L&`-J7ՋRFŢc^ݶ_Q{2IۋQҁ Jѻ1XdyPAW]ԧm(Tzrkq`=@f5߹@$URl :Ɩ5]l 20 rShrPqHm;̩,5鉝 wf.QDRx9hEOD(NQ; xp$8ؿ̖H.tS6U=ZZxo;Ϻ e gyV ót7  ggU&# 5"9FE $c?BVɣRКA<4O# I?ڣ|X`cd= ړR7'ݿS|lRx&z1t>ךUT (){iDb'pϰ$T,Vwۉ\9*dKrsP0 Kh_Tٖ%S ڜMge2wJ_,.J?acmE{G*YYH*o [u(Fl b MlͬoBշ D' r^|v]=Px8_f,o+m.~ސ {rYQ<d}OO/a._z {^V)&`!z`//٫aI4qkvӥ5n$N-kp<XFNa&%06-ΏwlQc"Lռ7MP3QI u D ;cЭ<`yTw݂?iڢaW`S 0 dt%d2`VXCoV%^a"s#:#+ˎ "|d"2s^kd,-^1F'FtzY͚` !G1&M$&VZ!gS`ዑBg/a%˛p~Gke?sgwrڶm ^gޞ[WW;Ј 2sEe}P[̞&Zvz%lT>ceks0D̈#u?K%jSʮӃܰF08D^J*+]A1D -ǂx_g_(L?3snjp :R>g˕O?OeB2it4n$╸V-40g=iߓE9p/y|)&nqÇ# d#B?10AVXMA'sAMgΏiU/aJ0TΑ;{a._E%- ooYPR-mǭ#|F@;DiU<Bb*)85[= [)v4s8&[wK44^yy@6ˉ``Sg<ڇZ ;/=yfTsFž|%?X~%֎^8r=Uk@5Q<^DBk| *ӵN~~W]@QN&ڠmPg)L swA`/O>rLy|elxi 6qa{ϾƼ{CH%>)y.;Fqk?Jl0,vom++ir!r^!+T7??] ()|h+heR]]и4k'NM7dxglv92OunCgƪidEn`A#!Gp[[˰{v6]kRzV "/kGqĀA֜4W`V3'啱 W hNθjBpBv̡wqWjɹn D?:5CSK*.r62{l=!6c0#}-]9b0neŰO=ym#$@՟& \YsTq+j3PY<rr~h+U*Gm9>}Y,(oA`͛ ǕR2{v:Ό֡MBQnr,+ v6CdLJ4]q8p eguyQ-Dm3ɍ9{~7SZ-ɣ3ݭ"(JyN+{gq'p#_apT%]4_շ l'kdc{?GTQ2SQxBʈZ{cO y LO̶[X?LArdr"3yrɛŢ a7fRZҳHDx>Ě Pa+J| s-p~pM;@z>5)&'XrS 7ԏCmawȓvlhAį]IVɀd>q,+&Z: g@+q_qAyPѐMmsy7Mɘ8ž/7F>k/ ֪|"@}%dGLXkǝ.ЧgXrmd(Ʊ~ Mتis};>{VWm@\_HϯRkFHI"X۟Ɩ-MVc>P@(lx\suy.2f> XxNjwK.^2rW 6&uRQwR=/-9 jL ~OI-0qY:'vscEa${4/L`vI;wNf {kBB7`ZzZ|o3 ';1tQ!QBxlʠE٤^gydo;5~} %4?dE _(3@cke1w3'Tq3vR6<4l֒STi47+Q4âj8-CB 9ٸl=iC0t_\ׄIVn$J2?C5l](<% z`[v ls?WR48Õ2q( ^ E{&P&͚"ƕG{,:6i~Kx,d^礯$P I9\p 8;O BLb{W.S:g颇%\غy1=g&efm;6]js7=Fʂ+BRP-{ Xڛx6v}9jȄ}r]+(Us!pxM#Q>WM@A6IIK>0#S9B]9/ y Փs 4F[uo:U]wO+؃-TG)Xŀߨ;vk5#1\R…,_*=MY8J״&H᧍2F%Y-Rdt4_%4lV1?,"/ vUt_5!g֑aQv1-==󅑩X;j/T}Q?:y#UƷٱ-}Є0'!]05ך!8ۮ/ _> oE) "=V:uJCz2W^K$-!# SuݟnKk/f6?GO|O,>: ޟCκ; @{f`u[_nn뺥SGDP!\ب޻bNK*Ǿn,4OJ)_}V…|޿UBfl9y l2@跇A-lNiM﹤.Y uoS4_V T/h_kr6jzz]saWbqiCacZ*xrSKquZcݏ^n61S Ì=:ˈ~(B %o< “n fn1: 8p ix֐.4f$I'8.9X"곥/TDu۔n$,d>|+7 hAz8 īSҼie)g9:},Qǫ &2Bntû Dxd!N!lD2}-;gccQPEQݖבȉ O PMWJ7gq_Mt_Dŗx{B=(* s3͈/D^3~CfX@R 0xԣKR|;!#M ֭ Q/jGluAl7y6;O@IL jcBs E^X:?lCc|*Ey0NgΉ,`kWgA G~oYv?l`fU#>5:r0H,7m`0K|.y uC+?T˼)b%vѲ?k3dLq PqO#p~൩NHWCqr:ٟ3Yo54ŽaCŃ:~'D/J+ʰ}/:֟~Ξ8aPL~Psw}@mrÕc9F䤉(nr۫+& A4PPBQsuMFDP +5Q{@8DLwF+gGCxyO)>? aCHWNPpYݭ\-J;fΞ@_7)2Vek΁-.U3&55k9*ql00^NiyA'a7ʺ%!*@?t`N+\5  V]]p\?T'&8 @aɃ̐ňݏXnGSO8ɥn[<4>%Kc (مՄlPpqҧ#%XjF9B2B,.n.n< "7Õ7cϬGCl@}K!ΒZ3oBHGR!!3ls,mzomj o.΋=u=*cM`|sn:VVz,x؉P:X$]uF?SDlHdXI2Vꦵ ΍Z(JbB3OWE粻 ?p =Cw4'w+a4e7(UtCU>\3I絕P&{T#]jY"d4yȃ= YmMu=n+.asfHa2Ufe:mPax+}D Ha]s˜Q~x[ǩZ%5_-Y-;cUĜ AYkE㰑GNGz g언-C.-k+.IÓⰦ<c@$7ၹy H }qJ 1EOUЍ& )U~"S} @WD9K\fem5RM`x[͗:rIهn#IGhn5 _Y7i3gPqBI 22ƶ2rnXj/CW 'h[hHJk+I?+p_PÛ${!D(_~ΞΛ*xT aīyc4NNSjOv>_?CbUc L`A ]ܣRIs%Y֒~2c%Ŗ8 hqHdf E4;%-UeIU $g82$_檑Q4NtMU m1ff$[W@$JE2n Mhw?6Gդ 4k$!E_I~*Dr}ht4 sfm~Ir i[}*3wW#|†m?qw<<(q1>#CikPs\ؘ; !o,lIEc(1L͡pS*m\qγEL0vWu '" z_.)fL/;o2\U54@+&t+Ĝ8@9;SII<3+|AUs.3(zhN#o_ W؊0믂TC|0iW%j~";qWْq)ц\Ǻ(%x/OxúK 'dT h&biI?6##P3}4ѣU܅:B^E-<$JƪoNTzKya"Fѧ@K+D&&ɬ! LE\OBM_Y/(UmPv ]OMa[I$~G(ךڬeڃ NG.I8dv52g}az"^f䰴 / bk1J.9ͮ!ɣ~~7F'0;14f"9:Yr%,G? ξ\mnWouxڈ>ihg ]@:Z]<[f9BpB<DFsΙ PDhA@ 6\ƀB D d0XU9Ԁd}B4:ylel?QuKp 5±%)d~){5 zV yap3VID'=- IŀȉtJh>C(yrh-5Go@T,>RAWY2ȸp@f-z2^1+̆_ ;3T\ g)n6Zm|{CO59[OKnX6b=2 e/p(VCtkX'Tv@0 t^۫c.AV%jE:pڲ}BvjǷz?#+A@@mMFbK,l  o"0Y}j}kfv>h3eFԢÂ&ԢWeC^NˈntSU|}Im0엊6ѡihK6w,uf73Qmi C]C?Q^WmCjc)ԡ(`- ADh;mn8U̻;;Y΄$pFzި1`} 2g],kDGVBʾeKͼ7 :ZFhdF1)+O!aYPYCgKW1G+H®eo+=rNwu)s(f51v8WFiҔ@,XKֹ:araskɾ>%e}zo|kl> I$m`S~6y`F6mo=a>r_,kŸC+RDyo<OL6rg{z@/)]4JV̵hN#*&3!ZX, &ݗu:AD O !NJ.eLpQإͽtH[q|B;b>E8ke=[Ȉ՚  gO}6k⒁͍QjAGUvf/R߹fȼkp,G=jՅzV:2*~L XgJ=gGCߙp6t<6$,՘`mY;SnM*#`eIPү7FIc41qbu.CB>wlvr jy\]% :?לgvK;}52}pN_?LU8H>O\.K5nJGWaRx cgQIt&yfБ qL@%⮧3h̴}jTTܚCh W;,R'l>qu{"9[!X1FuYwLp6Ʉ)l_ѬE֕=e=[Vڰ9β,2l/BA9,ݷ9`L'k\G4QAW~?}}J F1n8FM`,a6rEQpf]O> u$CuԩI"PA'{VfW"B5#l )~-O'\n6U 8_~* 6gX\4o,]c+x%hmULhgR|u&uFYgb7G9ljq*w- i~fz[eM%ܱObdklfP M 1'{5o=|=XWVMϿW <0 vNl*&7ǠC}&l\@ + TU.뜼RB;w@wTa2d"O*˼ r@ Gv. ONuG*Nw1S#ÀÃ?5r*:6cAo7VHdvBy+-+  깍/S/4be<_qVz#͘;Cf.+(ڌQ*i֑oĿ E_v̴Tؓ<~u)*-_?ֵcbi;zz ˅K+=*k7M,Fza6:LY!)mD $&Oa԰yv|#Tg"VWo',KVAVQElkQיCu\C:& hF:X-Qc[$zJ)&g@S blU͎Rjt@1;Y_Pjq ; w>Wʨ@D}UgBɚ8B>LQޚ|Jw&)2 ;Nz|=P{|e+jΒB=t:)IcsF@]0 1GxAdj)\=su mfNvFB2"~OjL h>+.#:fJܯ`=r1^48:a{\dcK0D+uGb1D/u"HzW Krj#`nf6QI1V~Wt;mOfy$w7ũm%؛o@C"du~]=Go\28q7t aA'PǃXkj#\  xaGrg) B\:,_d dsIZ*ZC")i0XGP2kGj41b$xOφQ:(\OF_lp"S(@e4' 8fQrch7px )ٴWOr\Hڣ ٢KR]#}fԽv~Tz8oi >* cIҏE[PQ D΋],ZP\!Ef#UUj ߠG*ȫxE'p#g(7r^օA章Ԫo࣐z6Y Hhn>eq~Nrhd[z*" UnsP=  ^F,6i@wQ7̑=cWAO:⯵}AoVO7ĆPVU&BE*aB Y @KoiP+EtHE_`wM~ULZ'-=rW2n(i󫞽]οf&n9`Ӿ=G:pk+hUyIc%w^'܍sȦ< =ќzLJZp%Zgx /P6NqK>) o" @PN 3;⽲$ O`ɢqMD-sB̓W( >k)WλSx?MROlrZSW?[TJX1qS|:CV`O[(7# jR%!5}pLg "']|Zyлa;7&; Yok8풜"W[%44_Fj7+qw?Rrx:xLZ8pNF ay|%1T*=  g.&O-(b})E Q}20Au;]"@"S0e{,_, W0/YT\[U CG΋> f2.HP!Y(gCh t0Ӫ;h;yߙM#;yA+YizyAl79&>)eqo)'@UQeW8n^., "S[Ag b~#T?qxIeyqm53 !x06-eulG{s@F>Vg2SE"Zb<]1*t9/0|+Od񖠰J x`S:(^)،S`{Dh]Xكd 3|eIvŒīJо1$e/-8 :ߧ<ح) ̠tԹ9u:`!zMJ ֙@Xnrߕtp n=! ߈F(~a3M ?_e<Cz_:[c|z0dAuX&DGt)ہ+2-OZ?C:>ΎUG-(gs?53꺓qFO#?|C2ԛrI.F xgF*4eu݁BEQv" IlL.㈗gSm)߿KR3@9 8a%tk.xDPY o-Pe5wO.SݖH(@]\_A+ؓ4l&:@яD&uHvlmMf&yΩtGSpo8CM.V#/R%n S3?{KWK*zGQtvV}Ojw!ذ@8BA *ݸ~񋲧K.6Nԛ|RtgN0I!l3G>uz8gٜ` Ud>k㾘בSAm )OfM!SkX̸߭F9ms-:jc.#Ah)U`9np:Y)I#. %趔q tAS:>,Ă@.ACyRZiPq>|`v\ La# (OnDz<~]r+(@6{#FGH>ܻE,h3 -+1 ECV3TcU˹Fe#{$6MГr"I۸0.iM(08@QNB[q"$P0GTNt}nP-0]J ȣ#neQ9 vQ`c!sXM!^"|JCS"Ǐdb d0vlX1~iT7#~#}/3M{SU_r.{cNdg﷫z3 Qm:ʛdo@l-@ ՍLi$߄佤VЉ5vBt }Ca)hI_G;J2sF0qX'?>y E򒞕$<$o41tK}  n83ΩQfzO4H[dc&`Ew t ?$T#rrW5`xZ 齜 ~'Mϊ[ztPpk߅x0okq6Ʈ] ,=.+Η~7бS gMRyAϨǑփ{ LӔӮD Qj "}Yn1sZ29-(-AAj&1A;E4İօdر{ P> !3svb>ޡEh(k1U?ᨦ T>n4@@_vX4ŧiURn#8\:~TPs'lF_nNn۔z:>Q|xN箜F#oݕjvAN 9Jy(r i d0N`N%Aq#K*%&ϑ`Q/H v(""16CfzSG~G:4sMbvN Q*3dò,Ryrgag5PiUTclN yXwtB;K4۫cc1~k bd >kaց=TӞ :NmaQ외;p'aE@x@8F^-_\Aр+TёpRHƂ@)^i[pYD*I?L8V0 "JO^0':s{ؽUZfM ,ϏOc^ism-f̏0AR'qW⇒o|1F(dZ}h!,+уƅ)ZU7AX}3Ea‘:-K ^o2M" UfĚ"r{ HQVh$EPuu>%YJHݜQGcX^0::2'#`)^DȘ%=3D@ ͗Sb9^ \A 5rD5w>| tz KjG09Vߺn ,%j%pː;|SQ!B+Y dM ^>(6"`,KR5oa^%8 \=+qC/RQ~`dv1{1kޏ<<&7KbZ+BI{6Kyg t3#aιjnյ?[-tY,| JoC@Ů=s=< I!v.GSY) 6N輛e9g͌⻽|֪Шbj7Q#J\[흋UruW@;sW\4=ne92EsCulOzP^[v!q4kmڳ_^baTߜ w08YLD{eAaW}GgI2 ]lad*1L#nPyNy!T$W_<]8( j"/7Ss=){=n(`gS&^m>L+=nX!joÛSg<}\yy0/6DD GQ)e]=;g;E :VMC.[2ŕJcI``8x3,bIjU=@ T+U)K#2N[ZŦP (}5e*b">8oߥ߭"Iw=G(}y| Y./G㩉;]'c}8v)IAGJVxj{ Ba嬹8žNR?6UK5njyP[Y'%Qv)FR} Vg2c% 8酵K_@KnB h]GgJ?-j.Z-Zg\8La>JX=FQBMEx pBC4R !LrG+vZS5Fo7$d/~<&?+k gd5*92}qDiR[1.Dr\u#GrA⻖2c@P v;!Ngn%6yvPxP|;"> 䬤UO;t OOey%􋓍?$V66r S $N.s;'q;p#וS]ȸjL-?s.FrZMzcZ$&1= 悱a 1iY`N!c+5Q[eJz&`mmr~畤l339O#88럁n$fym5Mg\9#=֓TXO ;- 34BeOVVFs Q\u1c[&[Xs~Ɵw%{Vv3Ē˶9TJh_T36_ԺB̍zy?EA q<̷rz pE[0Wz|bezf7VGK3&b8BqXI}huƷnUPlY:/4P`nWm.Lg9"\jϓ,hX9^KGsĭIM('EuƑb86`_&Z;3H/^'%ߪ/Q5Fo+!UڅbwƮNK3Tm״i\ZC>0Sft#g#g0|56|rD3S.-s/oco}1p=uaJrkO8-i*pF@U?*: `1=I%yɆ׺W!j+,ou/v5R-H[ aJϢϒS+￐q-R@1;y)w1sU1V{ROҬn))N7ʵ?p@v 1%+'TP܄Ec:%.lm1)ژ k0ɦMqz8p4@53:qY^e<+MK O>,8% 58Ҭ& '[n^eAy>ecJLȮXndfsxlrdcCNŞyH1lȄ |F[IZ|:ݨ^SD+9E|Q9{9mbjۑ Հ O?j҃`K3|l}Qh &kN'#ܝu6o P 5J 2p*zό*8Am5s恻-ջ x0%"AJiwX%ްK$W= 1Rd ,[gac42Ы ,ʓu5 (U3SHgsb MKvPOȫp?gz 7W6᤯&i5r )GY 3q[I zX#&!5bXPOȪ=r{i$ga4{1w p cێw"wi N6MJbn {˚Lwܓ'1[ a{F IfZ'>#">Aſ*6:rtMB&GNb&iJI+1*p9h$rX_;_@!>g6 SMJTbU]&!h?YׂlT{@&QnRIxBeHb@765"4Lk|1pѩ <#ʝ (}[hT'挾qhs99>Y; 2It%8G-)0S =Yo=Q O'e"qVUA348,k<CBGdIf<@ӓlw*<.>s1=DX'p Od(y7o9\?>QXX咲-"?/دXܐ?Lxnj':NDnT;槡UPsHdsI#"%UhJq?vA{făkaͥX/:"^:'M8MC`ɆqHnkrfP†{衂,\st̹e9pK{%q2>5%+n " Yc] ;6$ҟu{P&}aРnUc_ iSiY~T]%*߀gRbLI&K4{5 OzQYBc/f;iJzTj?@y꼎xbVIBqU|<"_Z܏Qd;m K[=aoiEE"hz9lDs4ù`WGxRmJ\)Mmf*}f7p񙝆зcnȳ蓝,pO%jJ MCvזm|&0Gv=a\^M5n8ie(h|yV=Q{ҥ sͯX @nE=KݛY( Dw.eaE5y)&ΖTYx}/ nVK@>xU. #uf$UNmigҋCȫV޾A#n }@j!)88܁jYγS4tK-w*:4z}G%VpEuH Vgz6?EL6& س}7F4U%i4# {(h  첩Fs5 Y4@D[G`QD}VgғiwC#jЦ TO3vVVXс |-)G(L,4@k32pߝI#^+s]Hts|jb^T =V@iyS<*M!"֏2 )I $1}$yJޒK_Y\nj-;[ ﲭEaieY#\S/8mxT德>;E(]*bEևsؖiҟiG2 5r7TtZSi$[dDRi+QO#|zƤHX-r`O ~ZR(7?lh .Ch^C U v7!ѸūTbJ#Vqq sI+Z|3ցv< [WR^D7m8uTJR˯WOM; 0^+l?rرʨێ_¯c?_+C 1_Ư=e5't1wM;'[r| :wr9%hWNPg4S=:`NIy^+hQ./56s'*L-_o_e06Ή_}пmV0uTz|O9ua |jB[ve[Th{[aJ$~eEmY<GI5r|gH)?rc3*V;i8,<ݐ WN[7$y;]Adn{^$b os!׽{+WE2k$=_ۡijnn %x_a(ߡwnc4 "N4Pk_4iL50Z3t/ZW֡FǻLXcm3/tB"7MM5qm|ﲲuďk$* )PBh,}C?q|r࡞aZp{Bm{ĜL|=W}VRU Ԕ@ ח~-*} Ջ˱cR&XF1hMbFsFX[M']#B_`^$AaS)+IHچi[$RRq|O,x˅ڷrV)\@?g}ǥ>[TK,;_0Jj^ sbDY";"1 tҝ5BABx#1C˅GL#:F [uG#84”A$HZ l,sR,jN Pr+_^&O#цȆb(H5vC@4ip¤HPD?:.#_jͤ6sUFo/3h# 6s,A=QC4H^5*"89#Jɬ3C#LSgi}, G]O(Y~6Q`!áHUmMSݡfVj4~TuBl.MDE0-Oq{P`|58 '&~bqYf= Id"BG& 3ۇ>&2PMtۜv㽈u,~) RI\.3}(1frAIKfe!F)[iEDĀR9qtG6z=xo/+.k!Cmx] Lv6RU0=m}%m4<'v RFKAqh>u+)iFcPjnG>*pNe Ʒ >TuԾ hܺ{":rtm O}ZbAh=ncu5mkD\lIt{}L ETXY NfƋ4_3h~(k&R:(Q'@dzXGvCD=7j#ApX. AI C:t(Hrc`.{I;kTenI$hBU#9Xxc^9Y`A龏4Ut^==VY'G%xքu"ޭN{WrZƻ~fL]#?Gz9 @ƚ*QƁ1P·5" F&M㔊v"4튆ai׳l~!$0{ yP̾ds %w2LM!כ*WvCEb5*[:ۭ'9ꁇ"* )wkzHbAxu6sRkvrP7WڎY=T/py>.9YPˢxSRn HXLQ!yI+ R isN]-ꇗ d߿spT.NؔNzmA7{v?Q"F⁃ (I rX~W}vinV\Vs1Iߚ bIGL&G"0GLL)}9kJ{ƮoAߍ}BW11Ykz4ϐ"r7z@uc3`SH٫(; 2؍iG)ɿMn*ט!\amn',*0K5Ju M b2Go?/@{YPZb܁XM1Y0Afs({J 9co}z H )-Ȯa붲Dm\# ߜBqy0:: N XMw8 88V1q$=W^X=& *ٶ@я(i̝ 1ѕKǛ%uB?Ыo X~/Sۥ>e6}܅Uк2R9bY>sb'm&?4V4AXu8:rlCl75(Mfd,/"`Ѳ 6 hci:M [j+=>qvѹ+=r#gox<##n МP,pg)`E xHWA{vPH}E% ]:AК?J=$b}0p,y)`rŖ8DXAe i_&INXb$Rp, T9*BȟWU.[927-K?M+$2\Ud^)'z!͐7|׌ a ,$t9Hqwq< J+DNlv8[m/*L.󗲉߬;Ձ!ogYB.%ӷ?yc'UqodFdB`Tf,P3@MHouEáI&VC`ӰxWU- f*Ornk yX? W9־4 #f:uI8N8\z=uya !k@TfNe36oaԋ(Iyz_tF琍mCUx @^‚apYx@0 %>`S.{,g!ɒ^#w|=:F6lStMZDpUcďF7_sl U ΂ R(nx%e4l +6PE+AOδ| 6FUaLH @fA ym"}Y$Uc8gғ7PmW(Z=> B<,? (t ٘H] "p(\IinɓﰌG!j5hNR=H1W\{2`|wLZ73_&VTiY / :.{|܅Gm]ӗwc#9vUInf 4/$Gh#C4xBe8b9Vؓ9]g>Ur/D/L2 i;IM t?O."&v-άK{krns)̊M3d$|tPB{Xn! FqŀF2;bO1Tά ӓe#oKAdAyl.V4BsU_Zr!5e뉰5H\ܜ5+hU}/Z,:u9 W4iY_8 톪 is!_N_ OT){t {qt7?f[J88UW+gPY)G *Jk4CTmQYt 6+R@2EaC 9c;TV{Ƙ(p<]R+H ý5#@6O rܠŁɢ%xezqL! pIPQXul&Krl*~CӃ1bXʛ՜Zרʬ1WC*ϲPƿjyMGBIB$ ,("]dW:]Zj8 `n+B1H~1~0aK-L7XZ?{slB@C/o]T aB!JZU@Kr yIQ`nJjKLmVR Xj 39Kg^| ʣiLxISj@gذ鰭yRH.*_S$$Ly* A㗬FD_ɱ+8 @fi:9B+^56B=6u&bhZϏѕ-1$cF/jv╾fIXy7`Gek̂,P|K`h\o@u>Bjpz*g{*p?hP;G8!nϮ/awkVJIb؆o`ܞ'jR.!D#:u0vYp&QMS}bCDTRe3aIS9@'4X8_Xg.Q^ca&7녆lGG]> 1We{l =fJUtt ~D۬)dYYO/jZc(z% :rl ھ,}L1X|MM$##^3e5<8~m@451n 0( /=S0YIn^eAPvol(tbsN!x>FQyԛ}Wl Tǻ_J\UTM ;  R | & G;`9EUy"9Cl 4ENR? Ju^~qRreGHRV/bAdΔ{̓"׊Y3Ғ.YX(rѸk wB`(&(vQQnFM}yuEuxeϼhԛtM=dCХUֶ|~cn':rݤh;HCHo#IKZ@\)U.ZmNwBzF2 |ݵ] )Yy9 )6{A*?rV՟IG# Ue0izD*^z==}/qJ^cQC A~0B).ӈIP0t^&f)+-] L)m Ͳot'hݬ"%9#,猸Kp:GNee%spmɿFD?Ծ_;+_q!E)^l(&Ǘ.7Mi07KCr(osRQ(/2q]mve;:*}+w1B|Z1$j*-W:4<%ꕔ0/S\pBB$IF#r3 b${Y^sA4cXPփ X2!{ ! 6k̔cfyrls2_ Bi3Z2~f%-eaNVzH,R"I\oSHU>Ĩ#߮iU+k2߅c-m0DT,H:z1 ?%Rlsi韩^, Bl \RLx{'l<{b 9YCG.L VudQixi+ }TH-tBCf_y&1Ƌu7NY6~[^*u]G`"J;CX $1KG,Daۄ|)n$+ C0ꅮty0Ov;iJ"^^@4rcW{7B^o&if5x~ :X~A}eݏ%;,JHKoQCI ://]"l;65I#Q녦#es%߸WU`,$ ( NK,)Ӈ{Kp7ʈ@ !U%DeA'^3* F!̙#Zf0} -S3-/ui;qENjFq}-7H%bVB\2vYM%Y6  xbs֘}>7@S+xI*]8,&_J x97$ǙwzVp& x>Ҵ ;*łٻKfp( Z#{KW2@F<">أ*3nmi}T: K -ɮ$f`נ~ @m_y&46n~wyЩ1GAxNoU`'4HV_?6+A\~M0 ߤ 1gX=*/Pp]~#kZK<JFA,>=7AР:&6V/ĕ48Wx9|H!$45v)Nˀmסsٮn*J!;AG,z/q~'*ဎ/L*Cwi$m-鬒glC,c_QʑQ4 Spl(ecCjmjѭ`f<q+V[U] on^|;h_2"lgۡG$m56 %3:"Yλ!ԥ7.Ip)K3T棇! 7d߇Cn;)E%)r."no<ע}ŀo6Fl0Hڛd/r]ng*R Rq a=2%Zz@i:jg,J(Q׻3Tz &X5kx0ހϱ&fHy_}i +\}hRu;P{9vZA*`*eB +n+5SilӗX.{9+ecN5\)}q@c+v%!5akI 6NN _̼ Lpw@&Spfp8S pk&DG/3,*X f+V/X-qA% fz4fd$(ԳK"oE:]?plζ:v2w/4Fad Wͤ @H{@h4sXKx^8L=*֗gCVY<_y .ټzc0"ܜPC80O*)xLp/j"CZrY&w a0]XM#?r2(Vd Yfo;ƟnM|";e5^BTVڂY!VSZ+[0b{$^XM24UrDxpa"I dd|0Eou: >Y JX'5۳Eo4.lCȷJaoHU/R OPFsP2=/6nx[dk Ty)*8$6x[xdmU1v};,:}ZWɽ*}ARzKLbpABbQ^@ݯ)e >)Q3SoUs ·n]ch#ޣ MѮgzVtòtS`:|=ډFk(Ϭ6:Sg 9%NE|i`sFn;ȨeɁ3\eѾr}bXJDs#gCO873h;`XPp'b]iy'"0A^C ߵ0Mr5q P"}7Gs0DW&RIz釅!]NjV4[AC:,0_9x]ѧqZބ>(POЦC"~I,,#^(4ή& %7A%˯Yngy6ӸLsAr 17( ҜH}Z@, /kB]7.(u:- S DHKt׫PfQf \Cq8G2Kn(g?l xeA = ءI|"5{w@ z@;fskJw bJv+8}:mX bЌN%!Z&!|$8~yv2#M*CO7ЪD1ZX/0P} ~WM?;.w$ '_6;Bɝm2.`.^zq}4 . I_CADHI\%"Y^eZ凜vz*nFmk4· vl'6Hp <V̑1fCK%nL<s evN^FZ~ ;  I&je b~?M\C:.20m97Uv} CއMxVSaK0+k1pƑqk~WæneGrߋC 2~r) EЛwg;3?~n5P;_ob2-(2qyC3A5鰁,trT]Vr(m\víy"0axt+p'ީ(6,;=i:w:#T: _D#_$൩>lJ>s X A7+PXVMg*=PW=aQ3 r0pp"";8 5P E7E+!1>f` fξPX*yǝzuzD窴&a )dCE);w_-E|f@3MB04hxȟ Tubja+V{ =?Q2FVv ŒANP4 /-E~]j{JνMe&  w nԌK8Rbĉ4~ dw'^zeTHl2Zs^Jm:BZA(q|X u5pd41V$g oMĭ"7dHJ,OdR^&=Л.Rg=:9 ; Xơb\{(F `u8몵 tvFC UqB1G69J}xSb'+[@6J~#eFIy9#b ;WQt'Qz:'k-ǸT@.eOLEM]"cagZ4Bw2jk'ITN#Mzh;HВ={̥HGR^4?r.cK>`>Dq0m7+@տ1%Uwl_< $BgI3T}d5lD"'YRY ׂ"Ae,suy{g+)I?i⻈dr"xZ#[` Y+og86LzO^uɗsZp6+t]oVÿrOy!PMZ8I7Grs]PQ'TiQRZIh1ӿ$׻ n?rJ=lLW1 VP$0rHc(FQl?,'UN6e%h7wt"tأqT}qiw };Fj6ќ]U{e #PyTdF r.ԭq}0'dy;++Zf vd ؙbzF_0D$yGn@5޷h̭eJ&~YKtO-efU2عZG ff#miyc}c+9h=~[0]WbSC@ 1!!>^C,4#o,Dw׈~{N lNj/~xB(;IbC[%8l"ke橪x)-9Vwwt aoOg> ct."D&=:DDhU-d]ZͅZ^˚:_ rSøړ~-&$nS?9f-cM(:,bEg9N1(?GϞ$|lˈDUKYR 5󊖄gָfO0&{[+fڀ*{.yN\bmLYeE@Ow>og=h .]4y#=CK] X0?@ q. |Z ҉+;X,jTjS u% <}KaD`v '\4=H؇4Y[;8k{~{@HRJsW & |3]HaItg34KR(% .g Sɖ:N ]xS{ꏎSY~1 (uV&`|\U@3 N>ԾTfJt"bcUY2ȝx iFA6ʦ,\j|ӊAmԚD>5\-\l ]n5% J zNiH3{bPTDuˋ^ Q&vB"S;Zwhm8yt̊}fB4 O\,@Zyr T\GOه`l8S("08\FWv{/:GueT5Tޅ *ʀbUEyDܚ}zlD,REj,*afWK4)w6l#=A,5pd)_=_<^eU[T(0(9YsUOv}rUMp$̓i(N8t(\B̭Kѧa~vm WN5s@CXupl\K+-Q}MߪFySs(C~<~>]c~% }PYAV$* Uk޺aHK==xp`Ί|vJ^B`t9Ca;58Ț{˂XRQuL&˱kQ<^[\uz_>(|SAU.-ͥQoޕGr4h*CWJאB8>g_ ;7|^*έĭ"R; ZK OIB*qNGͥ!m >%(޾͐koR_.-~fȍҲs&-`e&eAq[*w}~ɫSkEViukݨns%,Bau4:[:K1& *$@ZS4~ԐZwC8.a6 ]BHr MFߍT=nQI^T:-UjGrl@n|C ٻ/!V&K_D)v2|f'7N$~<< >0$hD|ʏ#hվQ)> OE-qK V şݿXfI~),G5CO u^6D9"5:"rRuWEPS]>G-O.{?jT,[Kp]N<`=\zk7⑬: U?%u.Y4 o2Lm:f\@JWilMp-4Pp^,FkO|/'Ut=Sk,"g~/?ۇѪ6uEl7Dr Ni"o@zߺx7<HXkp"ʚq[[zYP#5(T[r0hMW#\ BZЀ/(6e"h#t8oSb$_n/ؖBPĵ%0bjJQd\VRLP =sr)Z9ЏThZ:i2T}]ŧ]K6&z^cCS9gYT_߻Z$*$݂*{/ ܡ&CyZZvS?_4f`2PjǣE': Ggۈ^ KFp8'D?ni{`٥YWPꗮcIӸ/c>?Lzj'̢}x~)|L K7o,-'Z Pb`bagYfqB K:0m\cBjcL*6R!{4ic^|/ީ$Ӗ&գXq,8 ?OE',LwOҜ;PIofX_& 1+T;ף&LxWh?aIsE?GZ2QQtޟkܥLnU^Nvڅĭ*m{L]PtJ|e!Y4{,h噒+5^oKʩݣ̤ ۉ.MDcͽqFG x׊}vu(-!(_@uvM9l ~Oht]jG{# }blj(PB\D;y?$Bcj؝wmۣG΢~uT]s7W l%:|ϯ!dJDV)=6Apm1imڞD3rU$tQ̕";hE8+ݘhHvB#9>e(z!e!wdH\bt{{ 8ֆ@&MN Jg*;J]73J$,n3DXTOPrP2t\UbmcZsW6cB˵[|c#(2:`w/QA1g m ̷" _Mz{qhtoYaJRGϽ;acPM̪do ~lb&ƚT[;"S\֪xfWpeVLsK0ᩱA$"tC!d|(9rT^.[ o2ZOFy>δ Z;llV`p@ '!ϴׇc]~ 6B|(}o,t#A J -?asav˔Iv v!\?uUVЈ,zx.r{A7:6;XA%R̀ܙ3S.2Y0EHq?ۍrgpYvT=|Qޚ ZB[uZI[|<*m^iK̂# Y 93tQJἙ3pg75 RovXՖ0%OߘlٯfS \gb~7j@EL?2@\tTq $+JxXV/;!E{:L|&oUƃ~{:¾I#U?AJP+TFaqB _PReA Vdo_{5O8v˕$KHU^F;Δ1@]MI5DL8}g8A8&RfJOŒyӫGxl ZId gͻW nLsڨ~L1  '¦AɓQuڢBWHӛH5JhULH#@:F׈ۧe5 Ч{TT.o#5vh};ӬdY2 SBe* Ui\p$]@eAJ1UU~¬x;9h_{O;L!2X PwMx<%l mAA{6pz-5GY7M-Nx2 q'M$C~]_?>h,wi_xXsAjägHk@3IS^z1Qgc#ygo.[Z*1"_*A7M]> т٢j4Myv#N񎷖@ EEғ jQDJS3Y"WUPm! H9p$f`}w~Z)4(ylUV'thUaS[ĩlO1*/:3;W0ެve9nN%x2-mRd2gwSuaX,f&{?Z t[4E;,VJp_fP+i 1*vgWe %d<\kϼ$"H)d++<"(E~luE`79"{l8ǽq9'\t Z^莭~i YU|vPI l8z־Ioa ⌼[L4>y^G%J9(YM־ TPL9'o$F(v#;({(9@;G8M뙟yȆȭ]gljKH\8>/ȵ,9(e|.8`o?g-qvZMY4QVUfc|,s>B')yC8_MDx9 t>{gO[QY./w>4`":%ՑNX\7 ~P*+>dǾ:b\[ntϹ_FPc4"?C5I_^% 4t.@V|ޭY|io(8.TE v.p:5z:{f\;q~9bH^iR;,W`JȠr\jۓ4߷ ~9:]hd{YNGT jʅ"ilpLX!{vhԡy5{>{&Rkfu˱v%E=/P r}WkU>BN>#*&p=koy} '-;]v/`HKfjLP4koaA36n-rtLf_"f^~$T뷆Tۅ!<5[\ԹiՐ#(eg"}"V1DžĔT D?Nc(0Eu剉\x;L{9q_XGr#٬(..(~lTj\3g+Uz=ki限QK|k-3 Am@ffWvI vܰڌBS;Ҋ ,)LP;^^ѓH~j7hY<@)ſcߤ} [k\.^ 6y+.ZvϨZ}.UbͩXcWKadyu frE4COH(OSYpld+U}ZO}';ұb ~ &4]2L㿤(6Dʚ(F*Ru=}إ6}{nfI _iafo!p7z3ɨReikvi'1b9LR:m 2 q1D 9U.ó!G`TWT9ϲ|ҕoXJKKKXDS9lzZZsʾ+w#|<7D@(lp*ދ̸%tν,gǂ4|= 7f9:1"rG/́,zWwXH۔(#=OT&L?8[VA/n w3KP!=͖c47ƿ5oNdzY]ȠstP|jE\QoqE4_{Q8ydudoqrR,.ӽ\b\PI ytOb5+X{Ci5*f.J,?vR[eZH{ MtTV=%̡NEV+`V!:$T(y,3JLNy? au̲-S^C8m9nFZF*6S uk 7+@wR[pqah2EL&"^A[ab!A柼R$VUsJĢN8D>|TTbT,`Կ_΂m84Y{9C;6Ο.2 gMnBg˲5""ė\U2c`D7Qlխ 9Elða<)Ot!OQ[K6⒞ǡ{۵Wv؁p@v)ƋEQ>F(󜞽V`mzt~j`x'S!8󦵟c鲚ޤΡb˪9[C4oW?s vL2>I[4c'B0h -皹 ղOM)%$ε=. xv|oW2mq,^9}(Sabs,@]~ jx"H5/ewpa(fBh^-?xXԄ8;j/BA4ZFB ^Q='9<+9=<+f q:LtTCh>wn1nO{RO9Mv)* N jR)=lqu;cxBzG ;~=ݹ^ `ťx#Wv(DOۢua֝d2,ZF1BfvmVZh@I@"UOɉi7"JtŒwD4˔ YQsVHikz8*v4p!]p hkYaTZ44QL~+3vgz r)q/0$*ގqܾ/r M. [*lݬ1iRP/S3IW_iHŘQǻKDLŊlCeuGjyt>xg_"ꚵs(J6N.R=l)BB| 2 ®ŏ>6@Fh[T͞5.DUiv]*`Mv_ӣiN E9- u6 ~p.⎰/ԝ pJٵ|a̽IuoXgG 6\(R\^^Id#DԻU߄9ZpƳ1OEfagw&*HU6wWH 7"+H[h6k//a3`\w~neya%Xϐ1ey \L.A72p,I2Cn7%qΌfHگS~B @&&D7618ȒAc_5Z{p!?coH@帹 & Nk]ׂ Af*/VPVjGJR-r '] w:a_?i`4,/#(ܔ" .9.Lr cTvgX\-}r&9h)}~{dգk벰o %MRR2(#-dc K]3Hڢy|^P"Z$[ v1$2RX!V h^:r>0Cv1ъý>Z]nGiv] @ԹsL/7sDIC޽3HF+G6NlѶg'{!ܑ$ (葲UБזT'hikP(EdWFe9  [bߚ֎)0}h!=) %؟&6}طb̹߃XmOF/IOdz#L,&^b|'Hy˜m{u{`V+$+ibGpp1w6ŏ,fQPR?!aSlޤ\eD}m)T(_9ɼ%o s Q{dpJC JOwMrDa/` 9]<,>\g͡b, 췊_ |Gr|r~:Τ> v)]дq.e\0m2gP|{\JU ,jL<#`'E^P]:;aK+Yq֣So8R6 {ubF,:K/i1_帒gX1k8d]/}p_y~^Z/lrا`~cAvX6-- |j PH.1HQ4DΚ*| 1Svb(yYx [|f pGSpZQOgZw6&d%% f*hAUքrnD &ha+ja@#0=B\ȭH{#l*l:x7=6Ӟِᙥ ];P}ʒp=H!TI|iWo_|.oWy4V`wH* IKy;PBvY_.mk9E-c:(Dtk$I<í-PX7s̈́'M9jOWMxYM0 =vV1Gh䝉dO"O‚ `'/''SVF vth" wm:^&QX X6dՉk&b_{gc5%7~7)?M!{cP9|$0t4&m5 }ͳz8k0F`r@lx}wOg!ik|SX'/ D=ӻwa 7O En@hHzy=͊wF%ߝ*o֛"}\@hzoD,5,R{&_xBGzYYsvM2`;jH<&cэ(mle |`+ܱ)[Ey+˞?DQ?1XoCEQ]{S@i 4&;i7*jצńyOEg##,mpToT4 qڕ˻7%aҷ{ߦ#5VECטơ7n-Z53\޳ sU&RU&0UW(؛?fb|u W?upKm,pѩm_ ;xqN O6Z˥2kċ"W"MFȾEYyIʬq[< cRPXɋ2'0jȀF^k$&g4(l-]/W5BM7n+>ZtG"xd5V*`d0DQ5x/p Vt#qwU۲^-ލ# MNȀLkÖ : 529jL(R '=\- +UOu_*qOа_E {&HF\ݟG#3nDwp0!$QmPfp{Y%9xwN+7[ t6>ޘf Ogv8IEXџ vc 4})Aڬl6T9ގ Ypd+Cq '7>ݴCN@raԴjs?OusH <4 ũcH-6]['`D(ٌ<\VccG$*<.]h.^eFXF  G8ٓx5Q"l' \ۄ"͘{lQgY\X4uoua?l¶+s#m1c!jV/R%^I6`)6赋l.>7s|.3 ?RωAbKmeMO8BhtgGuCB+6]r#p ҖD)R~Ν6FbZϤbxch[i#_C >^Ňo" ~n򯚉r5TE u,hMzt208WkElM2=*\͸lDu "JR~lm|| @3B7SL: A5nPDI1Ft2O 2[@VF&BxFcE8ᤐ4<3p&5" ʵuchJ ^ WYIJ, ޤc?)' 0,Gk:Ӝ;Smb>? V۱51GQ/1v7úh.+hpnLWC,IhWJ0uJ{# {^H$φ"wja2F Fw`%1{#h D&:4ڝ=@]n1b+Q4{z=# //n=pz:\k,5[ t_\ #Hc6QyUE9yl.@ K5D/Ml-V J \Rqaq'‚ei֧s;$LQިް:]Z>*Vaj ,$XunذbjLh7 Y2++Z.\aܡ WS_R{Y'X5`'oQN΁"fd]:\/"3} zKY̾fuxKJqEp+mƱ϶WTEψ8![:Iz/eu,17/)y5 C\6]dN`#̺E^@G/kEڐ z0 !9 .w{TBƹDVKpW6~ w(n|uL*.=VUuTL[hKhՂHTgMݵLzQ5sr6hK3-s $C_SU6ͮ3?-n\πydV_0PA *Fx"<]`bn !Y5{ϳdO W™=" hd8 <[[ ⶯_MUPzkU/yc[p3tum l~y7 APAwZ2Eʏw]92%2()&EF=3=hQ5gBgهoJ[yހIMë]m`2}i694u_Ou)s=2~%XT- ' _nu@i}ԮZhgQDl1Q:8 Eű%D:ީ e"X8R9 ZqCuv|E:zy5eY^ut!BoȮM)R$Lw2QȠa_׶(Hǂ@?դJqMz5K5#b 4EzyIGCrjU7;(_dJ,Wפt{8Gi8DW(\i>X~)6Q7xu.`Z)9ټ[BDwjöMyW5!E&6I r JYSӷݗCH٩CQN8A}1Kex?Ҥ͍iIN`!]~3C`i0^7r0y!,lV ;.X=0¯_<% =sʉR~ʜoq*SA:_|Ax!N z#UqhF#~ƍ?]! &wI$-៏N3HxZ1\7Ů|b,M 9"龯=}hEZPa!:˻!.^8љL]M"Z^ ?xclAv<.w9ٰjD eS׮YVU0=U |Y5FU@΃&2A|\ rnt=xU۬M [lhϙ/z:X4\?8⇵ #@jO kh[[gb7jPJ--*)GaѨql۩)e ")sS҃VU#umG{ 9hAE +;&V8¤ɧMwH2BA㱿WgiLԡD%UN}x @irR܇agEqj`sӖ'V6pf\1^Yqsuaǭznwp\s`NyĔ -QC4 zxs"My6U'ļûvvscm^kU7Çv>mXbA.̓WiP(=F^|OM: Ԯ"ʾ8ߔW{M~7.)!NMF+M ʿLm ހ3'I9GûseA?҆Jn%H][Bx5`"jg-R !KCFn&9cD^P`!SnGq1?r:"݈h z q3 dD(5y7▜!dz5aSü!%"8)'iL~MKHF@ca.{H*ڄG>v7"(oㆵХe:̠#&A+~xSgS:e /o-j?Jo2O6 k#N_sض WODƺf )G{qԍfD"So/GD0JijNH]'L:<==l%:81e$^DŽѻTZ'Q,ʑx+%^+ =`fq_y?<{Vb>!3 _Q0Q֓+`.VoUeqs VepGwRۜ~/v~_.Qhgw#*cs@sJf/e2Xؑ-N?cpN~XOpaB6#{A,\4 ςzG2)Æ e2A2W o~k ǪJӏi ZOo#Le8qv 99b4IչSl}XSWH^;Nn X204`{==r<93fH؃k*iMRx )TzVl#WX7` D!4@ Ѕ"̇fNLkP?`p3 MڭE׭0i zW"@PF=x$f|ݡus mS=7<>-AjQ)++9ߕڴ蕴0BD$)" 2`=H![3B̻lR?"J52D_xE1@[0Ӊ)w3b*^Ɍo&Z˪n̡R]y|YK1&e sWȳr )Y>]pn T`;G*7ס7rBغ#. j " 2B cG%U} 0=t0:L)b{@ ?w [f̉ZϲQ?Jy*%N5qn#g]eX̹dklY]@ YѶJӜl1)F0vl9?^ O\*E 74$uޢWRݐnQӊo<'o=0"'-*IPËE!^7rcVQ +BP(GyR:E}*k0kWK|0ي^lW_Ѻ?KSQCe+V r?.9G,D c Hĉ{o/)uXgևXU',LvϒTf' fc8n˞W0!5ZѦGTZaBv"UK@"Nn ߥoyƩD}jig=. ; V?of5nk~C̹χ$ƨb gWv5f"^"0֪ _,9e"UÓK 7,nhZ(9z{qEFE8Iwx<^Uj%Kʖb,@h+<o%o- TvAz7Aw8nI05V| S ?(DŽoU|Ly}05-w>טt$`+u$s˽_cL`«!$~_*yҤ'ӤG@?Q6RIk3_pZzozشhUq*wJ'ȤũfCQ0rr1yi*/gaQ, Z}7 |A`K4}&/t/ Xmڱz&8(b J-wfУcX[o9Id% "TXKPZH>Nzr4KdβH6S 0e$sJD)OQƏΕAFd$s4˅B+_9v͔7dM9:7/;&&N-4x"PQq?#^ $GcI}‡;R9w(#CcΒ$"v{FV Q_׆ caC ]sa|:Anw%o7Yǥnd?.E}b*,iY1 \u3P)78&Y wu&>t~m4sɊv\U58Th붙!2?4"F-CU}ĘqM)1c($bh_kj+Q\iuM L?NI@fOہ ߠaÙ6U/~Rjbw?AG -FVd[ -P:'SƄ^V7=K\b6*2VU FXGyNًN,t{Q!]Wh`*#gown$ a@".Eb|x]+ .1 嘄4ɾ4w.< ݀B|.1j2Bw I+. ?Ý 2U y3[Tx2╒oMb C=l<5H&,E׋*K"MSNAci”0]09\HYآrU0Q>D'C#JpjŅ~ {Y214~tƧa%FO(.d^u2`F1JgBaHsx\HV!MR2< 7o<-~̀VC#}]-$mcH&>EO ?Xo*'w ; TW5A&mҹGa8% r̆AJ{H ݣ̡Zsr㉬i$e:}PNNKʓT]`T$AfOs?BU n)z(a?94.:8zuEGj ݇XS] >q#$(em&0 p8siD# }A[usHkta#>Z Uo"{^ePa?12x꥛v/lQniyXH;Z`!]CI1xDԿkq6J&T[^%^q{ an3# |ӛm:rQ@jgj?"hr:HFZY첒Zk0#ˋoDا=8:iіچ?a8OXb=s+kv%zEzAg@c@} 2r"35ȪH,bn7|Yw y*w+D&%,.G =sH T9?/$C=v:~Xp=pn@E{dƖW7c/Mxs>.o8]?kSq72걖Vǭ_pj{g5).Bl*dχ^&"CSVcj(5w^1 W,k;(W{XƺMY!;;л؇٭Z jxr#H5Yz kgV9ЎZ: "1T,du?BRBMgB ? Z@hiEBܑz.Vo>HٙF?_fUuڸH$(i'ǫh ^Se`Pzo {-7r8vc÷:KK ݹ&nƞ"I3 C t05rk!O&F/=ͩҔíMVDʎw`>7iC2Ӊ9c _r6kT]'Gg!բlVgZ!wE@|ڭ[ Nt5{>(JX{f5Ò9gkt:i$<r3gXKKIAtbUr>2u܍ysE @s5 ?3J:q1f%bz}QyHXXiNDR^{⿺)MJ/\JW%o1Q$ŝVdg~8+余I|:a]\&T@ER%Kj)8O|NǨcDk륶'4ԆEtw> ߫HBeדʵZܭeqhzF3|)!{a)͔#&yo2kKZ@m?oC% tc,Jҵ]P@>VrhjzG{{ȋد+/O?ޏ-K[`|^郝9X*_Pƫ؏U|/u0̰oH}~|XM ׈ȣݐrzщDL q(&ݸv+R{i.E/ ~O*H..{"J$9á}7$HTĽ| T|rXOT`*!+)c/zuM7M2G^q( ДY.sVG&tSFL+(pօ IUVۤEgnz.(%c[XC6x[d PY)Pyi}*a% v!1m o" v6%vrvGߐHHRN\\~eWWl|M0Bv?!f߇Dc|4w~<-zsk½?/ O'$8f-*t!{mC :Zj¤Ŝ~!%Z%5 zk;- +#uŧlڠX->Ro6/Y[TǾϭ|fN+71l4JS:(2O/pc^bO$)s[lF;Q"l+sx~.N;Y_8!0 X ~L2Adygu:3cn@fXr5+ %\Bb̃tyJir@]Ų]DRb j[ eH{bc5zKo̵\zPcN6z?3'y8NTcQ wұ.T;x6ucD,qY!\W:n. YUQ9 `/_wP9Iʰj Gt'AwRy%m0L4:WWd5 tc#VHUs.tziSΞȼQhRȁ%*eSu,=J1;M\DC80s@Gқ u7Ҡ CSEYɉv )3{pԢ$zsyzc9&+ 򔖀Gsq|4Hx6 nv AcC`,eI0䍡m5EYpyjM9.cWD{cF&:42Rf^_-˿4}V[lp ORUO /NpR)+rin-u|K,d#J&K/d`&BpAY!aq̒>|iJٱKs쫢9@ ЩMiUm Nr'p6{8Z긟z8k~2KWt <~:9Ҝ*-D? <943PpT6 Jn|m5|0kZ[ Z 4i`-0[S;8Sx`Spui֊f71''ٸ|\HD' "L4q:WYZmb3CY)e\vg91Kk"QXUa;}Uo#QGnIIS`/!?* ׳{u#u~0E~/B4rv8FR6勇Dt澇3@R9Wo*I_vn\&rK큢.?gWj2nޟA}USk@wQ 6yZAWUFJ rSf 㳱_^-U+dݣޡ@N+}jrLUL{|^tbQPw0 !t9tz_znI1=PGxV:?EV_R?^zйQt<^c<HG,#1}u%gh,!F*qr\N3h9bYm":x>_/O:y8Ey?0H )ۊ3)+ӌL& yodn #{e4VC= .WB8[^>>b{'$2+Qw@q;*tL;!@N9u=hVN&0*lL^k&z6Djڬ|"9uHB4^+I~[('P䀞(gp( pq[Tӂg x=`ɦz^ _h}l*.Y*#gM5u+A)m0g7 _ۆQ=YzBDg%ᤤ(:"Jt~ۻ#7]YEOfVTzPZΟnӸxKv"9^#"hYu~`6DX˂f(CV&=8!}Kiƕ $RC+qwWxԽfTQU{ęW=^DHU/Q_[`Kt">wfQ~W M,碌Q'θ+[-O_[sh7Y78wkbݸ3їA-VC!g2B485U.BR0~ iAc6G{MjP(*0eK=w#M ]N/!on1< MTcJOv7^٩7G]H])/\ ;aKGn>//w(&6WlȖF 3m#6^ 8ae3OgKTcWKF!*AZn6pՀn/~7NIj>Dkːe p,W- !e*3v1MwvY2_/ zNXbD= V'9T|QXa҂&a&3;A=?f*rH GDEۑ;`? a/W y\g-j&X-CZZ}>%R'k%dKr!Py1˭`v Hϸq"'2e>)`ɅT/VZz4U A-'kl]\ ߓICEBgJtL>ȖWh<}œ 4x[ߎ}Jm_!;k^pmgL+aon{ 'S< 4Pw[ݴ%3dNLbB=C*ɢl^\f,Ix k>,@_T3G\=mId@өZ_p?JKdR\U TsPu񜜵{+'؀LZo?,a:M^X4"{'8U,y \XsPW \K: LJ9|2%Z LWD%F7% :&?7.կ0eB@ǜ.^a IIV =p4LpnjSCLu$PɄ=#-J&j,:~ #PK\eL/1QA#*@J~;SO"-BcL?;`/UdW^ jr4P.8«/\+˳oF-He-; q&I">˟\^&G-%Սotu w{v߬;=U%1o>$hDc>1oob̔>\ Y2l;Xf~s݊yy#7mTez$G)ye-T9Eȵ#=Jh8M*,* ¯K5C1Arz&]鮇Pm.8Dl m=g[P 2ӧfdrX$t4']PJ!uF7ˆ#2U;*;sqaP*YTc+ۉpPd;X vwt~s"av;T}WU{O` HpWa0n u{*-кT~Cj u=<ȟ$Ύ{˸d\mI{Dm5֤oa]M"_*yV M*GbTE [Ϝ)A⹮S(?ma:aHc:uo5#aٺ՝a & bom.CбKp1|A]?*CG (Ρbۗ'!scŪC`>մ#.z]Ycj# ;"K-wi" 6WyҠWOigE;X%NyY<63y*;^s}~I3٢RŬR E*u~EE@qTVYwZߤ?Sޢ5vulfȍ>f߸:p/܏ .kwO\LϘT87J}:SC.)`4Ssq;ip+B2 %@HOe\w'\4,wǑqU96rBF3a"iaNh v2{L]!o@76j-:u/Qcf.-vZUtɶ"ln+i C0z'W~-=n FғΚmB/VA3 zPAPA`\4GK m ݼkP,;EuHfI@?$_:rs$q>,eQ[+6K1icStuGU<2K[n21I%{ŧK7*u-x9Z6]$^oc3oµ$MfsةlR2 b/|Ŏ&)Q ƺ69Cw$֚}4qcYu"Ą-I%qK u{ a]Łv7}4\L% ,%cvi@u̲>:R$jȽf%C[h} ;E#u].etH"y!^LSH^d FX8螣:(RbZ%h"Auܞý@n*Ӡ73^פ dmm'K??eVlq@Z7)&JFWHwź>HT*Uz%l /wmш3X]#[KP5.G(vFxLO\y&y7{/ιYLt1 .N.glJ{gY|(3X#VByW VU^e']rNI3|0`dڷ¤"] d?&gødy vCH.T׃n>5ybTO\ 7.8&qiZ(,lQKPW:\$dvq[$lo&49Ղ9 Um]$'Eyjn UftI;$wnXSή+VN"%Y.+uRJA!)?ݫ,>&(] oÜ-hW" 'u;X 3"$7-%\m聼aw\=i2oLB\ZlXikD#`"V.vq!|caemp̡љ)ɓr9悶zé &s$W޶bƗ :%;)dR tV*ņg(K07*ud5) m8}'*a1Gj!G 6C ;}>E謿ytI2_Şcmwhzg'Mt]wlf;W;'9Ho^Ay=ƙ`*D7rxAР/RVCѿI1čp0TD;))Ro:EsvwxZG APaKS'5(! hCoVYPpa K0U2L } x59 "=E:AĕUQ||]GaHQ=Jhknc:RHp}k?@jmG|z^ʙdB6I<±k7ۘuY/䓂gmW AFuʒ`?} iH^>#lF+K4!UL CBƭ [bzd̼W=l)YJ^,*J*P%Xw!VעҘ+4 L8i $Ty *&xg%;PZ۬WƱDBfzX9Y٤a 0atjU#Ҽʷxfc݋A+OU2G\p41eu(Vq/mN-#՗1F0n`{qܢC[Pz|Zesg7L6om#`o ? Ӗhؓa[XԥbLj׷ҿN}q#2LuuqtpxWo\ӁzVצ:e:/uIi_5P/@=C?aAk5j$ώR[{ jaJ2)4h2 Dޜ$QӒ\_6$mFU[X"NWLoQ&Q  ̆N3.<޺6@FNoe! \Qs};G3{SK;Me9FLF%`f¡J}pl_kTSB-˒;Zsq:g*~5.EI=xǸeɪ l,v8ޘJo0zy=}n;l6^o ߰d-T:GD s=d}se R&}oLqHAp5h5ʆXa 6sg2H$XVe_`]4U|MXeL샬"k.#a'r\_ZhrGYM{×iZ FnYr)@h%IlRbkW$J|hp>J+\KfbCᶅ(gOc&D3~YULӟ-RZpJ ~JSM(닑}8Īqm³$%Inj"gZTxV(jZ'f,n",+06+˫Y)LReK a= ঍ "r$¡ 1P׭;Z;/Nr*k6rvY1'ݷhwRs#bvجj~Rqy;>1Ej]{S&;iB{֧D}Nkd>kHV{v1خBhoͭ@@Cl H-&NJwK}=] 'ٮ#X0uD(ITnpR6GpdB ] /,-z}Mvh28U\lM#jJG#зHs"YSA+;aHJCĸ dwj޼И}iAh^lٸ%Vj^;Lqw%$FDeǸ9`HRGܭ!~v+.r?4g<}btJLKӀquaԎq\KZEhwWCSճ|ģ`;R+\J$Η<;X)WFk2*}ƏQ% GÓdCABbKU:,ӑЬ "}ZI.My|I#zIs); Q6EiN>mLMlCh%f$ޫSʹSE@L{_gy0ܔ?UM&'_Y̲gQY=K;S\)rȶÓHw3dt9W8nMoHte+_;)Y: n?< M۬ۑ)F,b7.ꩿ'!ԟ_:EadIi䂕f{O܃e-0T! ¨?䉹CA &=2 4 Kł}rҘi|Y# D _{35L__Wh hScFRs|E`ЭS %I2''o{)9hҾ7?N||B3BQ̄`qaB"mqiDfϺmWc+Gs dP儜ɤe'.ep;7,(k(L Ηf1J8CNNQv{l/19dLaSq4j[EEz˥I"jsVxbhfS:T`qF ۥ$HKaD(&0amK !GRQ0oyI%E6_ɍi<xDYL.}r@Yg0WD J*ndZKMD%j2>c1?Zؕ; F%gOi6UWTCw?[PwFJu.:O<x15L*PKz:bt_`Sk< +mZaAtlMieďNޕjAU`@gl 7N|بiՄ j "WUt lɓJSYv-U?U8!Ki Xu2a;T*M=/C)5jove o)Bop QYj*WJ{,yR]Q iV h"`.Z˙_*[&jWoYڀu9'|3$uŞYN춇\_e9+ݵI=9D*bp˃: U_-s!NkJ |-KB3 J,sXwi啬V-hK+ ~3.+@Ԙ&x᯶F53O?o<ouV)/GFBT+`f+ FVla]ɉ/UJjZ=>enMXOmυY0*U uM`¤br&3xIa*C}ݏ˰u9m΅Yc*NDsEQkIƵOY!ֳ YAn o`6dNz"n09+`\IdGdG+RE;O Ne\mUD[(+nr@J*1ky4gowvw<߃R]rs7P?=m.˸C&[yLГ.,h"X!+8uco_ U{>Y]bbsJSQa6ĕ(MR! y1 E]ϩ۵ĻKǬ EmP;k)n?CԖ%]LwQ=}LObA'w-z3¹GW1FST2eJ (CsDS7TY莳UAW~J]mƇ)x3w' ?ܢF͝tHg$cuOYYw@݁L}aӵ1%y#v@&7%VnBOThFS0)no^Js7?XJ9ud8A~BHfFXYõ26="|&|ZK3;kwū9H_{ٙnjq; Ȭܝ=.C떂HΩDҀ(hL2P,vXiKdѮ; Z>云o2*k4;RFj1:ܛ UOD aKXpb8J/(O{FKi όϧc^u4W<,qGz鳓p]a0{Uq7~]Np_*H4#KNOx3D;?*:안N-מf_DY[ޗ ՛wx:n3VUeEp..nÿ 1I #h\Nw1Q qvTqWAMɣϓz |DL) e3J g2 @06N!f3vwkWnh.6wB<#{&LJT@+`5,` v\>k)ŸM!sv~mC#h)mLHLr|dIVq}Qt14 X˫یĶfXSc27\K㾻AZ<IlsE* 58.ydI;ߗkGI?Y{ϓݚ)D{yy?@ +p7*O~]F|#:?o4r23"c++_>Z^HCR)3`,?x<\bc"CKM$ deVvj'fm->4*:{{d_-`<9 {ZI46"J^Ρ/oDI4gb"2_w0EGϣE ! FG+:UCcJb1ݔe|Iw#0{Xy}@DHwþⷞ?QS{YPi6uΈmGX^}CsIC$^?ݙw{ƻx6RbS#]G1#HF0`"Q s 葃cU }Jpںq5;-w;/M <EBછ.!l$KV?ͱ?)mqZhp\|}!%kY~ԤPf_Z7ӡ\Eo U§-Qf8LB)ihT%J7lwq4hsX( { B$gSuWjW2T\;: a6q9 iӿΣhKy !nP[d yVyކ}C}xN+Zu^~"JPCP]bB,'XLH dow>#BIR߹ ^yփw "2BLȋKL[=SKs,~.‡e`1jԣ(“$MyYs?X#FC ڗ@&0ʌU s7i t1r I6̇I4sb1D*Sb.45D6OGX 3"r]?DxV7v_pULHdF%CcJJiVlDv<2MJj8x1lq#iZ)&Vx390z97ĢŖVQ`>SdgXNϼ#c0?PrD?SNFr{+`JlDI|Zw, dǍ!BVŊkmZ sW\XI:np7ՆqڕCrWXH{8I2ī"CIᘤg'3kd:ŎRdk=(H.+?,NZ W~) +¨X %zfB&iZ1=5WAU opG;MJx  =*6,ô?"9L}e##(RNԞ(M:r5% #r-(:A߬KϾ43Q#3d0T26vR)n"g\~4DhmePZaRK-׿FG [.$S"x91,WeެS4F;qfYZܬگ1czeRM*miAH#WL@agۢq\(ЀJky?7bHQqρ *Ȧ`!K)8Y}WJR`L1J*;@zxh>VWdO鯴%|O?i.b(sxgJ∢ymvUMu.d<5*]~)]C[(Mm{/[O=Ч9}21.n8E;.#4p3BBԼKqJ)I4M-d٣~3R3tB_ق򧊘brŴStR)b?zUnt!\;;?A*I;FW&+oiU#ФOfV˶݅ـ&55[#w,ILU,xRm>`2zxx tiL8?9f2^S{gs kCFg\`C$)o#N,~#ުirg3" ˼/6e/b\o#ͻNN:F_z`+NlxrWP ݢJ0˞ea>idJ_Bd:ӊ^j)g9d{"›m!9U&j"܃HIVh 3jymeOΞ3b7HY$7K- _˱cǩU7aqP~烞|}O]ԕߎGC$jLz̿Sg^cC`>0mvOa'=0>W=3ow!_)KؖD#fa՟Cc  ‘Pۥ}f@Jc޸5/IzjzM&iⅵ(<|t&AEP$=@~&ruff7aukĎ*o,0v)8@\y]%9Q_S[ybl*zJ,!Ogr#2Y:-.B,2 N2BoAaP鱪<`h*=#5y T._=4gG@ t#8εsB*^WVbicMI6\ΪVܾMOvכpх[g5:w3219 P8 ͹0>}UIf<_<.X"HOoHVeb  &X_e|[40Xic)Q  koWu*L[n.6b:(y){p -Um`1A.{- r#b{ )Y6pGh)Mg]86@@@ꎍ{|ȕ B>7L.N/T)K$Z]&DODt2HPA3.-2.i}%e<` |kEf4,hFKTES}gVt[Uϵ?H; dOBe cɼ,ztLx"S,@@•l@hy4`0x-KI6y[5Kop4:PK~L}8/]xcRR6R _6>L\͙B|1m6su;=3t+5RNZȏI@v:ջXT]r;4 B 9o]w2CXTo{E" E&ɐ(x>-#ظ-Qcz?!\r+,Tf&_{+K3RJ >b G7$Z_=32!2޳tz 6 #7w!M"Ȯ0M=_a 馀[{a2q><M8fkA㈾I=  E A4ѕ8ʮi44qw[z8cBܠHdv ɰwi*6nVBl,D VGBn5Seǭϴ"C_YyO\弘W*kW$b_xH{KV,w з^0i}pn=p܀;.4 zEQ0^8GJ!nRǡ`& ]AhQY0M%>C5aߺc/T*@"diKLj8;з߈ K  Oƀ9R= v#Q6_IJ~y? ~G/+¥KOB~mhܮKٷ! =WU/E+U|QNf|h&^UGide"v Hn̚4B;;I R!xVz7)ڻB"1N+U*(EEԲsK[ ߟa0C? C:U3_+ )q-XvE҈H˒d]H*Ԧ.djxmk'm`*O@dVttYw!#`k$U w @=Ű5f}Uz?ٍ;9lÈ':q< +*/> k,ܕW!gup088l(쫏W@(؁_+< bt}16>|ӧ&K*$-X?JaVDwy?ŽI {"0% }-j=~ yuY8|5'FhT7Ωs ,FO:wXmJ_ [VǷ]͙֜_WUD; 9?t}Ya;ؖuhAEFi;$dJQ_ Y)M@z m4̗ B2r_\;:!ָQJhֹܹwR1ՐG/Cfl= KU+L'0yNUg;G#*HFN{%y$ȗ~Hb];-pUPřbTR;^^+E+MKhdAaC1{Py=v>S閹waT,3#p1s'z<9¬2#T>kJZf,ֹfwkO3H0I3>"D-AB0Jx/+Wsyw6Ѻ|?Txs:lWI(CkhU˻_B}|3̫5 D3YqNnp7(rc=,|4" ќI6+2 m ox$-ј||KDR/HP06dHzIX= ƅIҷ Wc(RK;x ȑkAp5onqيD\y>*h7&?Z!eݿ0.i9@l.lghFJ@5L߬ziA+)Te"Н._(:dV1?/6쳸ZDs4RgTpjb]pR4&)AS}GYjSۋ@OpY}d;q9t T‹IDzËН(֣ۗƋrov#>~g?>]mQJgQ]B RVȵ쇌3rTEGgoe?' Χ+Z3DaKÑGਚrE>{v6:d*,J@=jCst}Ѐ˽) ס{\ξSȀ͊9++W:!E9a?BjbE ]"|]%L;|~nIݹw(7`(, |bPtN07n2%|wOjO͹Jߩg14^+D+{v?M!F[^kfX. 3VDzg2F +h8*^5;nC>͋FS15KW"AۣuS9'|h-Y0È4VC9Y*5I-=|r4ZPCU K7'Xm ޼iGǶ2Sp<& 8Ķ\ ǃ,RK"q`*`*Q')V|WO$Gp7h%D~q ,-ݹJ|QC3U1n+!!þ8L5K#em 1# w du7W/!TAyݷe]Np~?slP"#=[D˾vM0ufQxF?'*f3HD!,xo[`# g-f_V))6 vN$* ɳx+})BCWEŠlPo j3vELB|.89QF&  =/ ksK,WTd%2tQGJILnsЃyWJuՔDzհed|sA;ِk(I  8WG䣆nhKXLVը<.L|~NMy@bhw%2c/s}mXĚEJ >HA%4otJmv0S&޼hvA]CFѬ,.Ç~{$if: KDLfd>>t,I'5|V8 &oEn%C]% v^ٝoT qgD-E(o*kLbg |o Cz"n*@Ϙd@VcƈDUB{;lRO,л=f2d"Vkd~/Sٛp}-rw#úɔACTDW i?58a7Qt21-do&< cBK+m}]p j[t޸bb,Mr@JP _/p⌥؝7]YDy'0{U0;ڤҍakN38DqKZMj4WiHFo1՞pQ&qIPÒgOuz׫9t 0M/{\-'CN'|#Tvc=%d׳-SpٽDXKl$gg`MY.z>ElWJSKqоV1Jb+}]s~IƙDiOyq{pUA##3IRF2VOBpYתK%(7LùR릠\YiX^6">3>cw*B@.q-F((OX[[J<0M&ّ (Qӕ{ԣyUF2Xݨ t Ga U:m:25g]M3Ա-Xa⇠b~\Vg0x +@'xPr&WFi<Ͱx8u=adQA1u0XMY%ózp R6܀OoI¦"7*uAF-AN4Y}Jy JqW9C#ԩ3W `y{*4Є'N3& #&ʳk t/ʥZ)U Z(gcXTߟu#呃htZ4L+.T,B :7jݙiiFZ'B}aٷ@eEUXkSyMx)6'qwfEqJه1;A;` P,A`,& r2O.3\KPNxxBFK^JY! sB bQ]&s k7BYHsChiΙ'<˷;2_RR:lW%cUǷ;yaA$!NuEbW.LYhI/dYܿl毁AƧ_Ѥ_cbfY/|^Mpo/pZtۻډ#oYѡN\qZ60ý8D?r< ܍JS[w:ޘt$!%-74J(\xoфd[{J3DԶGJO N;?V ) yC+a?sA&:ʧH}C_7PC)v[})ImxXB\}׉O 2X✓(] a_Q9G9 2TExM$bgQ}ly8nsSjĝ k#e--k"HA2L`Ӗ|u}rY?p+ft8~|,w(lh FaSՃ ZyYWM#+aGo)X73Vdxa^~b*;W&R$N k%O@i/p oI(]+:C!5< =xLK]2jZycG \ .vZ%ev˾AqXY3o@ M0$s`͵Y$L|W||2Ն8Yd."ײZjZ&Sewu_/ߞlYSu3si/!=r ^Q˵rrg[S`TPMLeۀ6ܦ^0Zx[r72N4nȽL6j^X`^>P=]mֽD [a}4 -Q/I"\dV1H2 )INf ]k<؃KxR@F0ǭۖVH<Ӻ%p[= !fH*|am7rF1$`RP;) }WӪ/S-wa?-E!{FL{gєq׮q.xg(p8 xIҀr&gr]NqrH Vkvn$ X"~0#s! $o+$oRp-}y.fg`4K#ǜ2'D@W5!!1۱㹌0?zjQi#%y B \JAGgYVtl. u/1U"ibcu ZwYK}A_$A/ 3bLU\&P!1XʽI&eZq0E Ju{k̡,ZyJy^]%C[k,i^qTN;^+  ;߭ ꪲ0`/^* StW! | (8oB s= siPA-3%s 3 CgѲL5-w@Rr'ؓWJيϣѿD p"?3Y(١Y\_%jx&rK;Q prB8vi%nksWϩ*$]a8?68݊Ǎy>w$T&<ز:f?ŐCI.)؄081"*f韻JY t dww̕Ltw%P/]@UIY5O#ҜF@ &y?b mH{,5fM=NaVoꠝCmܢ@(Y^IXƘ s'/"ˋq;!b^ 6 2@ZsNuMR78bi̿ZuC&i*b/{rZjt$+:{H?~)43wU)$'=zM`to&Xrrn8Y-9rcuZ~ o쪭wb/k;^zji.t߸RFI2;S];hm|7hU:mF~$FS&k5x' $cRcpewR|L61azDE'東frTˌEݶ hccIJ\%rc9#qkB<2Ul#H%kP7R`.Cjj\B>͐v^MQ}]>ط~'JwtTa^$j4+Tˡ%0 FfR62X7H/ >tPZ#BG'Vc&V'b|oUAW!@Բ--SVf']3y VbJIjkx)̂HEusU4VD[B[7y;%#4!GqYqgpyFK~-;w)R*]xΣ@}B\!YGVG~P/TO54z[A)n l32e8H2OHz[: PM:%- TևZ},]:I6a'3X3~A楸f ; NS?'=KcJ^:ae fJ6o>0`)Ljs=9C-C]Z7T|zq^>z{<$@.9TNg߼Fng3(Gj Ҳ"C.n3 ̾g X/!<>JlrKS _K8)Ƒ 4SmPQ̅dΤw[k\^b@:z$Y^\'r8;n_ܡZvO+2YT!ͤ6 Kvlt#{ݶ.ɯRwAޝTnkJ %p!T쑔RňnCuf vsr9;^Q5R[-^>.S(Fux'#"i_kl9S%8UӳAnF}k!-7ʴnD "0/Tn:`#"r[aFOdt,:{GԼ8W),kAE`'_8\yhr{ 6tl).zOFC vV IB[i]aۗ[!sѽ5&HC]wzY'VLHa Yڀxm Gd=t~lCVvv6XtۙRvIlnTPapP[Qs(BDHCU32b^ *vꢂΚ00<{:5?`Qx'>wђ9>u8h`oQK7pj9MXX_濨kL#J_)8a951g )R'/S2;ČZ^Pט-Es/;\r}\RQHl ) !W0Y[IHMbůExL5pQB(.~ =CE6\;R*̬%њ݅c0l~K *fp>[=ʈ4bME96$0 :*Nj.VR3 Kc D`%i[W';!XKwB[F4Wj1n!=$BL7+H8U `Sw4*kvdk|)L, ֌Yn+0#"Fٕ* Ȕ&E]|ٞu$XxKc\VJ3HW19 ᒄ.'Ty( bBh`ZdJ/GX2+`n ЇUq3]=3m0(ۊ<kW` qdQN,2%j%]vHy"mfRKDn}㣉Z7HpUFSyÏ=@=X?#*6N7מ& ސXx8<Ή{+ H2bڦADC[p8bFv q1 / 4u+rx9K$cZNeHyz6ОUGȟ4H zHaY? "-MAHD pʉ r 'NEDz&g~K{N]s( uU ErƟ DUi-OC#*}]PkVY WQYj-m%s1oig1;m~& hΦ4 y;TZbXi$ށ~MJ4rQ?y"Dyf$޾oVKNTUe@l2_ lRg nGɳ||(BH-Ph`(pƁ>Z{is#* J-D9!<[tYŒ?hbc"/r2AOz9!l:"BSqA7{ə-iZ @w/K:>w(' x]"/8&,كI%Pl;o  Z7"=ZF1뛺0)ZѨ0Nj_vE ]IO4.KlKX= zgCFcNi]F 8¬`Gҏ~P]=Z-ٜʑ/?9-Nw 455̆g_(8Yܘ%eIѩPL |g)(Eɟen(fv%4wMzû/"F V]mj8OO6@QYL;pe[!HzJ y%'fl?W^`֞q/5H0{qt~X"0;8yGe'!6} vپ:^ ır 5y< ӾʎYyJfPVhuoF!-De]:|"  ûد?F`8EtFT1:$^7̟S6|H$%CGeEaEhg"WNN&Az<"9Ы8zvH7Xسޱ5Fpq=.\]f3̺".`'{h'6&ÆVm2ѳA i4[-wcwIQ+4GY08` *HF9|&Y+So421m kRgjݒ޿aH^V^DFC?*bHQLՈdRal(8qJИ*-wvXEI-z,¾(/=,*~AK$"]vn\I S <ꡮ,0wvϾ/jf4[?UlxpEB/aDllgi& ⿢he9Ӱm5ۙBYr`N&\(CU`f]Cю\]<>>}wzjt!!`~4p~WҥnDMrh,vADk]D컰J 49׶Y8KѠ+Ku*Ex³oX(OwT-Mp+$0dURk7%S=c uL*Y)'S$ti݆+ oAZ1x N]Y9*k. ϩ܂Ié6Vԥ5%RP1u|%9}OfV]ypkra212}"tcϴ|oT ]~m6n,/;R>lJM '`Fn* h:":oADQ Xw=~S=r-VXk䂋{G_\Cv?fgFqLSwT~z0ܙ$6]{5ږ~xF{0%/Q0ܣ3z<>WmAxiS >Vo¿nYw|s,B:K 9:Y)9dO Ҧ=HK;n$=ڕuNS6/0o2H>ٜ(շ/v8_J\Cgb?KGd{Nx{eEQ<und;ȶȓY0*.&Ԗ|{K;-{;!~*nǪMI5Q >q%M Q@uw5J$B&v*|(TC/>$hnQ/+ hj}m-!뉩BY hwM ⧲Wc EBͱg:ұ[[G$k, /L`d[|#8KӃqQW#G}Hᦾ/a&3[̛,א8 3j2]i,`q?V>6/V@i١y>ߏcoK%aB+xLcs:AE~M@Te)Okhi P,Lf'.#b@@ce ]S)ih"<-2]+} }Ŷ[5*-Y 7YQi% yH:˨H} D[[D:y [dG;3/uӢыE>,SqJrD*s~g(&+dI?;)6cFl#"'mo`]}up(][&QW'xq' veIRw&iu?V Ө!vNMy8 4ڰre"N` Ujh)hHKCZS޼e)g_R(޻!rl#"ݑKk27TbLQU_M[ BUj,"92C=۬-Jc ͊as%C@nkCLtHn"/U_¬'-!jihGl}*m,#)yK}Mڦ. >y 2zꍹtP>l3zɻ̈́}) {#SS?Z~q~P!EY$&O|m^9P]P"XKf#|i8]uVC1M`gYV|*O MntRd.h\CeqE}?rTFdsfQ`F30M&3UXj{"3JW_# ճ͠{){uh24nשmMkAj6$%5QP^M}\DvlY'$YdpdAL[n]K9L q΋DxqP`E6lj2UPeav*9̻Dc.Kj8]-RpFJUo.?@-QR?iMMċ*a;30t~)@sl3avS[,wufWLԾz4ڝO$ӑO{Cpkͧʹ ?*yi2i\fK#˷)xRIgy3?i"yL6 %6jTPȑE-Fw)!:9MA}Va/3 q&_m۔(R ed$y\)Z/}#'|%̒ &K(T'RxM"7lQ>ioD i&O2u~\cojS[m^EhnhCBaJRޗd9OػKD{MZ[]+pPdx1ɼ4/e@[&ǨaF'`,emR~:1Uے@YI>h&ӘKsb Msi)V:G8T(kɘpLTelgۂ[Akr |iugF%-.,6\@wQ!^'m}!$#Bw'>fi0|gJ.(6'jNbΌSKLͤ݅>_rm1瘗#?LF}ʳhj˟EyXt{<}!/bAw_ۖiК8|MM'Wlf鞽+$ĵ^ttnn_gBd9UOay%18Lj)zmhI0u`! P,% 31:HwZVn=񀾢Zk^fLyM&jcܖl<s''Uq3^ Pj|a,LU":d3=yê+wl658 @OFNJЅZ"VCԻ`AI- y+DOWH} l Equ&yy4h2si; N~ O#7Al]窷KG & C~m7t)tT0yo&iI8~H} WS2"D0DyPXM(cy/,1hFNx]%Ko<_;?/ve(c{F~>aIb`J-o@4.UŲS<߽ 6IlE\?k}MTiֺ7T7e\o|$ZΣ#8Cf :gL(7?%YS̤ uA,&%ւ< ,o;VgqEO9^6^- zms+1.nN'gތzr(=e8h0~1M % sjY",0J ˋ~u'?dQO7F͍kuvʂwM$ w5P Ul:x}(@8|oHh>Ը;Z(ClҢ9*ow0&VєC7:J@۽(`#LbgWyHzޯ␚DZ g?֐!E I=V?kJP[EW"cOd<-VZ&]b!Ʊ *rH;V;GGL͂e/e>T~8|;wF ,+g0|fCvܰ!H_4؀1Wcύg!nQJ \h?vSj,*|^^Ri#nN!9P| L<7}914,'I@3`\p9 D-קA.gfZmiгw<{ w'Voz==ȹDyS`E49뛆F ]WLҫ` ,JeK =;b|ųWG )Qv(Ƅo2:n\1@EW;zux@7v/a,F$|*[X>e~%7tk:K۽Tt^{{ /8n5nɂuM|9J >ll~ZU&ȥRЍیӎ-P?蟡 '[ 㨭9:{@"30X2]+U(E+|;-OT?rM3=6KO< S5!V<~d^g\gsM"5oBʗ^?`oYXsWxT&[V wZKEw\} ǰQݼs]0+43Ѵ՘``,3H !ͰP}ȧR~7>&gcIk{lZeFhc\VG*p찚4Y(W wԿj,}=`oQ/f `~wv;SӐ͑d@ ( `^'?4m_^S [UWS\i0 ([~5VbJ[ܖbYܒ~RRPa*M|h/S -|+UYp(NJ)?>npl9B]hVtQL'jyb3rIf ~ɔӔ>( Kj \?PB6T< F TH& SmTXqv LSԡ^ci2~xdSݹH*i @'2Su$ΩDssƳ_?5Q 4)|[ˑl% ܏Yw`f?7~; 6:'qfz(1mE uBׇV,6b)S>m~>%-j3VkѴaBsj&Sԣ Ig"E<W} (q``ꯀHuc^U/&M?SM^KmTUsx %ka@&,V6#Ŷ605gkfC0]!Zڞjv MƜs~ ,Z#q+pЀ3?Zkn+'qt84 0ϒ K0k"Vhq"q lq\Fp&:gk._OE9&pܠjX' 1_c^d>o]<}+U FXcdpFGI1{^ZRӸY; ;oq-@'trW"IxVQd]:?&xȤ_\bwvC|!cS%%86cPkrmAkuCPR1YU,8ꏝ+r $V4# s()z[q nzHxá!:[UA`wo5%f! eW?De[!3,t Z$EUOD9y%ӳnf:1Vr-SDNO}e5*I@5V,݈Hh! VԕSW>/tUZۄ9={҃H0Av;ܣw^Pv*]YR^9\ FEXVdWXX8|O #MIIZWreC/쒋C呕8|P4+ rV"M3o9ھ$N,yf8~59Jk%Duε ?//rBhİ ȄeG_sJ}¡ g{X2_~ i\HļUg YURD3 db8u=<ۭ@E,Q Lҽ`)6#a[)ݹi@5׻Ӕ'*׷:mޙQN}z+@ .1}Z2$-Y+x漩XtT?j5 J.'m:'>ǹ?%.YXZN}oNH(}0v_p[9&#+R}KUe<ȺR =^E?Q[P9dy[( &)ͨQWCGmi*L(qQPצo3Q-X6[Fu Y~[* c*Ⱥuϫ~ S] ~=,he?reECA%uS{n tYD6q\ o2+EJoWg2C%B F݌U#610j@*x<^<j68G.hHj{[dT H2\ECSj9m`%xZtCCkUi!32MVbE)8Z=L .'q뱧$=tn }&r>EdGTol1x첏zxfa5i6$ 6e)O<#HZ&8MʠZ^r%4c(z8tV!;Ah؇7II=mB/̥ufk֢TLrٛ!N FdJ4sd3ۿXQom(y= 5ONN9ӹYdh Y/$|Dy]E?6 :S}H44 fHJG8Ҁ| O7^dN9WlTO qK@wc*Z/)\?Ztʴ]xwjз+d i\Vs"p3rޅ7ߜX`h~PO%^?ލe~+D(V_ڥγ45p+WJ D7? "4* ؏feiC`I'3INKiп1|bh t3|yjMuC;3r+9go8: ybm8FNAڢ(tCu>Aod8HSMUߕmHr(Yr~aڵGj'kE9c-hGFR+dan߁C_0H-҂+yI[^m_Ve}ӷ5lMq:&qByA5Oihyb5E|A6`ݿ==YzN*rhܩXѲU9@-]R+H,ELD`CBog*qOyiCYҐVѳUR."i| 87;5p.9[|ڠj8k.&"b-9B>w@xMM,lU3 `Dv#c-y_U푮 հ )dG >:|7 &Ηj;SvA3^Iv_DT2OǯL{m^YMj Q(oTÿ|'XD׺ a ;&jȬC aaf?0"}vvDbZAIcF4OÔޮNCE$kk7L 'V+1"/~Acn^xo4I:CϘHNr?:O7ԇJ6 ܋=_V\Ȭ =;dAs2z8e7SWzSI: ܟjE+|UZ x 5yn4ۑ9,0!N)M0g )4>Sw*U|4,nspcfUR/pG$Ev5·"(Z7KR\-'qq0rrבK̅hGS OFV㘴W /cލO,#)fXqo;/ &7jS6A-ӷ[fˁwk]NiM;*nݲUJ:0E[zT`:(g 0%SPC~FYxQo\S/Ah)L]RE&`K)`H_3z!,3r,c6[J4Mۆ*rw=Y]npm-p@cc:W nl&^`C ƗzEQFP+N*&tR2`[g=Z47Oi:Xx+Dz?]9$R˃ i*oar\n2sMi9E#A'+-aU=qsDX06tƯg8Ғ7`OVQNǍ Su-G(ɳe ';5G,hgrǺ S 𛩱$J{BO}aC b4Yْ=>p@ٝ;%]䗾Eps[ZpGGofǘMuQg ψ0GZS#=um; .0-VuD{f?;R3nh&8hJ؝g ?H\.pYzˍF8u0͕GfPx,UZ90^{lS4>FwـUD+찢6;1JǶ['Bk| Blv"v=^X[vUl_ T ]k!Vwa>ݜչ[RQ5:I7v9W :Ws<2g}.3\@_U*o,LO?"6_וs#}.꡿,(;!U%4lPE+3Rv) ^ QAwfn jvshzT &n5c5%?PܝǻaDΰJ;PuP zUv/VWts)^0>!=j-ޚJELF ӼY΢?sL|(ږ_%:F g0;}=j^RF̩h ©JNpT]V?!MA9#3>-jOlJtHZ9Χ7UA7nYґx]Ox&%0jR34[FGw.zPi;zm[;=5Tjz#n/nH(~35B^jxQcGEkR ;d0^f 22xSysY'% 3~ͽjM`})j&K;ĝ.>YJH& P = T}7 ͠y D{CDɞSQ,|tK y[?鵏`>q^rnc Q.G5/ؓȠނt- D/FRj?8a5~כ>S."*k7m2Ih>N^~<>SPyXY9 o)ZI*;Xd7Uzuq sqPt@CKtq>+]D!6b͐l(yiK ?]JSJ7 !MЀ* |By]`sn[:B  gNfRdObʊF/GR9 A]KU"=Bvh 1֎H CA͉jN[oG^'r$Db{J/a+{sxY[Of֟ 1k =–^DbVdYCxovy9k\xcZqU\]V%-#yC)D.w@<뇨xP}&yGe(M*h>L9bح7N޿$uUcnYk(P)ŠOh4V, aliXZexڤɗ5j7l2;+.$W{,p:΁LV߸D3-aq.JR0~Z#~ƘN=9+Mff.qڀ&P8H̀+x{O,k2\Cየ ٢}6j}E\=ujh)Kd uNt7DV5vwDQD֍%h rBQf莘X"$v$:xX;?$5t\O|QE&jc}O&75kJK'Lb%EPLͨA[Âg0d5*ї;QyoOl.8Cg <' `4reߒ+Kɂv(+op5M˜\(.iԳyNv:‰ Pی|`ZB#8?ީ+-`MeK(KnϰȐɆŕ{@Tly 9$۶`l6c}8"B!vk:8te빗ZVjqN /p0.Q klӀRݖ 2dv[|?-\T^ݗ @Y@%q,t0=<Bބ"Ax8:RFYnp9ٵ >$n)ja:Vr|뿡+04rB2h <4v;ZMz5]TlT4um{~Kl "_^B+I,lKj C`X1mv,m%( bSiGi4eHbar{si 1}fӸ^/_ʬ9 rD)n&4Pyb3)oAۃ=86VO.ij-~muoƐ=Z &aV$8Zo֯zWh#)^*[-R4Ucgt#HQ-f 6œϙ*sut4Q=:Ҭ8o6~p[ׇF:4pUv7pVlBoctaM;>jOM 7 & .#t@:sXT)W$GǸpkwhDwFq:wC3}Y̬u+wcxzN??7(JE%1TdG악{Vw/z"pKAQxtj-TvGdFpkMə(u/7mlmXq~`3IL0 2s2TI7Ga&ё໸2:~2r@U"tAtf2Wz4{Q G8'x- kORcu1?aR ܩFW^ΎCbUC$ E`fɤ)-2LȠ)Y!(<ufF(%zeKWMh)8h ajiS_y6MM'xܻnM1sX ͠oWAfwSy0@}] qsWe`)hB?W'o2ͻt `&oio_Qu<1.{x^d+^\nz+rF!)IAܶEN}2f$a (tcTX{g!q(LJѴy Sv^A*\X w&tYJ^O( 95$e +WixExi[8}A>IQ "c]n^PAJ&g BOx^'01)/0 ,%F,7fg[od";GU#Ȇuh?KOĊyL/#!_ Ғ=0G$fNqv]Df{ Ln}]]o%f `v'H|} Q͓D{hr.+11HT-UAad6+3=ɘQt |\& 7"fbKzK$#1ȉ!⧃חï4WfmxJRTU,~+5Xq{1 U& _G[?3@ykU "!Ҧ URJoé v47ˍFlR`ɾ~r\ <"bZ%όW{(!G+9XFq)O5PWmj>_q#tZ:-'ϯkmVZ¦]QZABVC+eMÒ`R:%b9bX9-H(~jn -i`^ s ٥ ,>&g X@Y\.4ɘxTKg Og%?SLuVN\*X xy*{[ڌvB|o4ʐqQ9>ٔ -.$)09uQ)Qϙy{' G_cm:7J%6w"+bnIESj/S 9߃1n~R6#P%z拯-UE$\'_7ג{1hG?3Q$_ D19^,JjR8lq[A"ZZmNJT#|C(}IaD`X&W"!X1IwWbn3Q0BBqg2 zgXR^a| #Π%NG5_ }(Z7>CKw63Myv^nW]u豶3֓YՒDs7c|A7:y~>'Q b-j4==wF/kqQ*~G=غow|&7eĭ9(˃YB;!3enOnį"4Φ ǖJӆg.n%4_v'_p PmԷUo7ZYJJkų)oCT!!VHMPǮӜzԣR൹ʕ`Nf<6]o6Dgd[?Ed {u n`7"j0J/i# H.O^jr>AL"t=!YMh3.BjڷD4M 8mN,w'خkn|ʻ(0sȗR!J{gTɱm< cG+F{V;u3P_ص{*s- ,tMF#Ǖ&by)v8*׃G{UKSKщ*NFڙ3.~Yo#C~ :J^T7;0kf7wwށS6Riv3iMk̝B IP{Bq2o|l\X(E;E) 8_Bs*qL]&58;,{-ωLorag89Pʁ T}fG:!Iar*B\f#:ۓF‹C gþ;`A=˼ؿ44:#(~BaxO%!vZj@&?TKcTi 枀]sV>QA)l nDԊbgИZ s$ B{c~96V DqѠu;8%%=;:cEqm7U1F9~g7 Ovk8_0Ǫ 峱45XC͒v4>|$:4dw02ə9v]pS{B%БO$TvjvSb`6h \k/456atc@X \InV]p:==.?ObˋΨYnx_.wIb8pz83]#ay^tO`l64v/K`mWgӽ pt QKa)5 <Y1km)FL؊N%r[c#9뤅m*hc,9M2!v1Z/j"8vt%| l/1/X`lg]mPN KeFt:XVtkl&qrFzEGV01G2ZjMY>ȷm!u#NI^x^;0g6WNgHh9#" @y[a98%RsEJU `L*%7%yáƦ?3XE%2vĦMٿ{4D R@gp"1:܃Ơ "0~ųGFV0J@"XEI92$wHaei*4A` ]E{V^Lwm-AS8ޛkߎXBгi4p, op'ҲhͶB A 0w\f#VfkdKuwG# n4ZcZgd_Ch`,ƒȾki؆\a1E$#R0~^ĭf%0WYӫԍQjy B?_- 6̨݀7M&`GWhŌA:o2WrCu<-p~5^W֌aJ,E5zzsG3SN }u(=qLcHwGĉgfmO.֔4wrwꌯ]ɇ]mw79<ᓈOJ#+hrc(]ҀŤ p Yv{>bWcT{c^;,A|DmR柂4d13(u-O؊`ڿUd#k7ݎ{>qpZt[d9/H/^iVбmmκ*ؤ]▀2 1 P%;8sZn͸uiS?f= yƺconƶ^,s>~?PlgʡX=( q8kCB%l-eFwMh6e/6|:.`,, @vdp)q;& g^]@ w>.mR‰𒊺݋9cKZ]\i2$TlOMZsJ |` ڪ_S܋٥?jΙ]3z.JFZcKvԩhϘU#*`$b/Nju} ̈́E/DNmWܭNI>ad {Rjr;(Qpw׿$堞z{np5r+5 ޘTb rXbkW^PpIԂR@Gk3Mg-IYGʡn(2Ӵ[Q-k?=Q+twc09`P_`9f3 ,;wMY5͵,#է%%{a _ ԓ8MRF΄wlݽìflqw3qTFH u߃U;m%b$Y$;A.Mȷ/J/G$5 jI7֏A[+}J`aal rK>*Uf=p.$}+wEueI ""㕣(T98L\iu[ECdL->!._6vQt,3)eض3?@_AHk}:8uM7D^ Eϩ2@ZVLwhET;^sVpWݓZ=^gh%[%y8]jP?i?J/ 5^5ŊH\p.XDCF*YA,P rBibtr|. %6>enR8Ѡ挪e$-3@"}!>h}/э9?'{][x=GTp39Ah4Vl-` Ma-cE֥QvV=$ai&܈J t1 h^6v/lT"K׸ Pz!=A AuC)4B1vT dHliQE Yx[?DmkJ _J~Q9#1cf+^ 2Ն|lU;e/&52+)綠ebc@X9iYbtsSZ$vAD о@70k랤ȑxCAI^,x`px7N0{~C>} 4n"+M"015T {LI@Zӄ.T!*gMo9eR 'JMZW;rsx`[W}=>֋¥75WZ:uLwojTB {RP i#f(jPinѕ-%]):%t`nCP'r~'kD4q4R^ŧKתg,f(K,E CZj 6 \Z҆0%ZbsT))o8PbU(UQr%;[T^G٧\ď;OlpW\Teb2U,d%ȭ.wa̻hxssmC^!r`9ԟ!T&kX!pg=ᒹ<5RB`s/ESq5}N n82)Ҧ5.s:F$Am'{V&  7]z c6MdRv _AYt- Yr S2ՒXlװ\?BV0.pJc✭xu/r}lt.u_7#F@gyB?^@ f8Nvp8I+!zǜZ- YR[ch|MY:!l̀6CvpFP0 *_ Z B2r {M]&l߻}9ft\TÆ+w5 տB^ēi@>]ˮ]셱m|eqV3O ID:3[4}).q4IL7^[raZp8HTETÛI')t^Bܯ}‘rSqL&^#eNjcHvd8# ŜZ'ZY35yUqyq`Wjh ҲCe+@yyK\ G"7 ]ΏjeDoK!1R v&_OR醗%Oiwv!`/ԯ!e &qn^VYCZ}eju[5" KX'r}fYb.ռ6H49 -w,Ui#d5 He+č؞4f6d*tI~7 }fC5EFrm$[i{`D1&+pU's !3b]!#x#GQÖ"d|C;S MޯW|M whꌎ'RuW/ Gg\kRxȓ~I>/3*]5 02DHk;zVqwB:|Eilagv xk)rtTcDwJ MjGؖz-%Bomnآ!EKbkƵWi)z8g9,Jc|kɤ϶Ứ%x>F{BLumzC1tW! 8M_&S\pJG2,/g`ׁ/59G۴ź +Zݔիp;(=st!## GqZ֮;hnTlJDS<+d  KxT=_0"e)ATXg 7 ZXdsgt5+/uR\ zN|9Yf)"Q,7,KR aYxC< )!KR|kɤcQZ'dfžܣlJ&k T FqJj\gD"xEX*%d#Eold%\p'F\N}sEU}+hon;{zϢdc<1MGV=~KKD/-1˚(a]Ћw0]n@e1L)-+_ۡ"wD{9 QA)hn#jK]Ib7>el/PKU<6B%lHec"EnJlBBzM鯣K7}3Sr5=J-R1zSJfw\s63>i OeM%Nv<*~T"U+ɩ|򐠖Qc9r!T&g̈0'Tk6 g'BQ|^^KI=xHZ hWb[D(?'&DaM!qӏкX Qz@۫mOmGfYM;HZ.@06 9sjT vՇD' ;@"z†;=p*u[KJFS? dR<Ș. (3q(40a6Msrh'90V#`۞%T40j-Ke 7B nC kۚc EyL v m!AzbNBga\ֈVOl8{eؠ-(xmwp= ]:[c{6볼bPE2"+/5;gYf. bmJ Gp4ϵ[eڍ"3 ]R_ՌluJHbr`Q(n\3Q-8 Ȩq=P5/evM*ܱjra:G6&Vi䭐PZo@>Qy2"mW:Cd8g-]WIńRioUog!{j2rUyFnQ*>@$!:k, IE ` cEka<X遻z32b;l8hUc0Ih wG9ftUӭ%򔧳s?9(EZ ZI_ĽԖ_HrR^#}Q{lyaKÎm}0=ף(ꦸjPl njw.W K0Ƞ6Any዇߰|h  XY]ʒbLT2̵Rj_㪙_d6h~5T׾p94&^9aQD_mKھ$t7M 5Z4CbwU3HSiԙsZ8rAM5[g^*\}4+ݳz$NKICWb># Uo4Ф~rs<{MɎig*_֖x𬰕R #V}1Dnh?(|nND+1s՘.*ǐˣܓuiwDvHEs껟N̡ /9?qHf-9C~3;} 'xa9Z /ޙN&K1}?)Ag䩿q, -*Պ**bt_7` p$N˭iW̱%;r0w4P15Ϗx} {&"y )nԣd Җ!)jFĒE 7coMKu3•TX4!jcF^~Ю`9N +L loKf}ğ@5 k:st7!V FB3MiOlDD`p@TD2viO}4`yu @hLJk{8dz$4?wVq8'"_IsL[HJQQ~9ɛcJ}]1ޞd Oq Uն&}.'X`9L.I(|5K z']gS4X5^b .Z +.~=m32s 'XRXr 8휣V:3x #:‘}o)Ch9j{UE! ck4(x< qLT;)lE}g߮,W'8v[QoP2uIa &E#5ŨX;dP^Lˋwb/hS\_O}9᝝qX$n4ݐwT֔?-Ds::NQ b ÍK53:8=% 9 #h\W]/pv룭75苀-0ߝ@,~Ol \E4JQs2`PD$RL $bm<4jMta{W3Ox wK޽"$?$t`[~{g KWjhZa#nǮ#{.jt3T*9Mk -vp&Gq7:7-#66P`Ƞkd+3@.E!/Ah'ui@X;|(QJ~g٨W55gT?JD2!#u;*B{b|"X KQ˖A`=f՝.1щS߉( ;%: -eKSoZADCxvNitm&q 4dE LM]@<.f_):o¯3mk7fǭ?܀Uix UQṉs^Hv=4xY# bOM]χ`rB>oKǡAg}#Ku]<0}s]3" gX~3!fYpᏧS3e֤jBt\Gv w#yJ%2Ѡs.݋'PjWsp18ssHiKxR./;kUTGNL֏#tIH7 ADo#>j%EbkcnE݅z!\A6=Ҧ.~MwPx4=攋8fوzϫ1,=OZ7칒3=dym YƏ?يs&~ipENOghJ@@l8P%{$K25-Y/*_{ {|vLWsUX }N, W}"jGv,QY{)bTbsLeDy6W"-kրʯ&x߮N0W~aGK%͵,Vꮳl5ćK>T'eC䍣xFؠw VoJ lh"'RkSa*ا8Lby2AgDn<Ө1,BK$ KrWYkoCa=ޚ~ Ty)Ew{Q~?nab ReE?jM=-KS(N{.BdG;Yh{9Rbщ?̲'Q~Q"5Yhٺ:Q k4minJ˿*]~ki˵'))A+f)/m+ueQ]=C!8wy!+5{`K˂<#'\%XQɠv5\y+kDXQ.pE𪿀XIa9Lkk= ;x*kٮl[8Pbq8djij^k̘=S_?'3XQ:,D !Lzi,xŊNtF\3w2Ꙅ( z埤RDdIn/q"~$trKLödIhyóܻiw> 1Z7dJH{f4ѯ; "X]~ܟ9ۇVM*Ȍz,v5@# NލG{Zci2O!(Uf$U,|Z>lVH~jjU3.yN_2GzUm&48wY<.Fmq5nάaV_fv?($Q{Mj2@ZӯW_7X^,)X'{-3FY7,$0sK8aG %K;QR}6M(7cOZ|*L$Lօm~l -q4tZkdhQy9H@B 㔡%fXK{Wbh-#n,*ƉŴ/'6~Q+y,X׃wZn>U$@V#yHb-Tz +)q- 3KeoIvJjFU~2!*n3$92\|kQCqb#:;Tb7Ӱh5Ҵf ZӟOf=H":[>ʿ~eEl#Z勭b]V'Rk+-i“$컃[2|]9]\[@P1VYu7r$0312EJ0Ͱ@="t5-QRwZrorU[HOx3jn{}"{[Li9ix85T"x5a}ba&<_H蒲5Dˡ$VT/F5]DvֽV@!!&Gg[N  kzi=1Rq_X{hR=Xݵ;v"/݇nL7}Io _KL~~߇T o<*_^fj3=$/}&3Sey1l Ϗڈh9?o>.U(F:Ia#1*M(\ږY3ߢO@nUS6ſ΄ReTȱ+O V>W" ^4KpvWcT(tJd裗!dGn9p2h#l:LUj:Ar5w'bkµG~_ͻ5z*+fDwiJPr78[l%aSX8PBT#r1ia*`^iGHHw)5{>ʗ6M[?VosKm Xx7̠/b6d >>Nwxo[.=> E%sotṷ\%ƫó%arxfUޒ2/M+RhMD e5۫cl'M\1qT&2)M)sGyȶ9z:c`?(y#ȓ>a)!;+9 R"x{"%^[P\)X)7?#mo˫(HGᝠyUdӢ&y\Mdv Iy@_eNԛ70㶄Ysxg6f#4`J![HXM?ߑv` -؋,Uy"ZZ&>!b8m)7:ə\pʢl['%",VTAR f~,X$U'];pY[No_h5GN3:ZPGۚO=#Z ;?N &HmU3j@`i@f!'9B-&4@Mب=;Mr2&6QAW2#vXIDd8yU{ Ӱ "!fQ˿q@3I~,^.y$S)RQJ_eU~$6IqؒFWkS"^ vm!ƫnU ǍwxN@vo{.Tc v(%Zbe:%,]`P@3k`z3u76;+CH$ׁw?ٺ`n݈k$V}M4Ab"s-;E+ _|Ą~FNvpi헅tTAׂ9KHxyMq*]F3ro߇t /ye 1|y:Yf zf^n1(F/iϳ*SPlF/?^lđ@_ӖˏsFU [ X96c 3Q3 .Jb~;H4rY|SUAxجzymwB/_V<9[<]7Lkr_+*`[')̬j'MCl"RߪbN1hw# !dQP, 'ȡ2T:ƚ6HH$EJ3o袔+H:k4@]Wyt=(=\ {){vڃBxM\TWhu| QE,c>eXELYѭ{E@,鰇q ׯi<nj歃^2e1I"u>+("|_+-,YTL$4* si0xZe'K _^LQ!]zIW踞J?^f*7HL# 2)Ex0 7e HRiW"}\t`+w6qYn&0F2zng =><-ܽi0^RMx 7-jZ6"9ʥ!m9-E*Zh^!)s !wYǥN5ѧ?(džީ` 36`j? ڻݢΣJ 9'fT7 lKIBx鲼r(f4d-&ˬTTﵿakx v~ (Ġ³wxng)LjT'?PSڟNw! B̩[i"wPXeSACrrV2lQK{-UPшUȂJLx;s2SY g`llMD 1 {16ZT t'gONURvD\me \G2C?| @H?;`8ptDhhC1Q Tp#gtYhix|b{s*$'d[RX1<"<%鱬%k; \`rd&s.EROca&g? s+Zi{^0T;UX<۪CRF̤~(x (V~[QO> ӫru)C /G=B 6g m؞}ܦL>_+չc! ST A=afțT2T.M @cK9#3Z> lby5/F51߀iuӾd}@2ɰ:l'Ex^ WyE[=X8k\ݥs\ahppTpr/f~%}Sk $jb*BE,e"d옳rVgធIp}&a.Mg#KjzAAAJ*fw)5]ľ5y!G(WIhwC #-e.uܽسUݐl<>ămJB=NY:2l)12FaνX$ShA]bZ##˝w'ϖNK}?ckhhP :I" gOV[-ĩy(\4cT~ iMߑY\>9a^,i Z^Iӡ}JR}̵1sJQ[aPZiMy⁜??{S8 Bn7V޸2D1n+K@T6dG*eҶrbqS!ow;qイ ]>@9CK/K˅ػMu}ֵڥQ t@_~BJ.'p]桝e@"sn.u8R*c,f߽z@:ٌ#RJ@+Wj݇*j=쩮@^$uر:x]79TM]O 9bqIJ\ZyyN ZDxئk%>緻4XMJT9HmOtUo<0L=m_nR-0h.g/e2g_6a0P.AR: ҥ40 X1}Uͫ`'-C*8wO' SZ{x93!_vfk'"qLdH{ޏl_w"OR39ǦGBNBm1$?B6gDs^]NFtS):bbì3v>K &?$tSh\$5n{/GPk Rf78wr]:1K:1f9٠ɏܛck?wc_=~:]7(eM2#$Hí6,-'2* OF`Ɉ^] 23=95 IiP6H#Y}Kk}&>)[#ZNm؈ F02nxeK?n̝'#kJc^H8aQѶq#6^XѕcCS 0#=揄o=_%E/ϫs{bgCx<"7A6_ i9W"?#8n/SIH@yMV&-iMylgH!HB7fk 0f,ZOm'-KLPpb[i-Ɋ*F| aF[cxZdbr uhem(΅c­7l_[{܍QE`>M5Ҥ`Nc:" C u/k-uH;d{f6{ ΁;s$J6ƽ|/p|ʁ 2z ׸M3v%wi~zA",ȠYxlCeu:db_/4O8!EoNfCҴC'c|_SƝo}K!FJFvU q[nDTK QSdtm=PMvyiZ1/\#=N 6_qDmu!xPV=)I;z/".c3j@?:^Տ? eQqq8A0MD=2r68b x|4j yi{-Z3 }3 V2ODaj S}vUX{\Gܖn}? "+_ c9qU0%5]/to'Y{UP(mހ1p)<"qRo:?zk/~ӗ-DzW(mIwM_SAm6\p!9X`Vػ c! kF:cZOw rܳ*Oߋ>|8=ޣjc64JI)!E>F(H38Y#+dpef;_v}Ͻ'=d1$S!kMEhgɢl'qYʌflG\QX;ÕyB{n`IT܆QQ?P̝PPwpy"_ e6JgӣJ,Ez >nD g|U˩cag&#wԝr -fk* PX,=q8_R!>܉f)gC"u*iB8N?X)YOz o%Yfs|LRB%{"i¡ M"؜Y#|9p2x›~@fvQx}E汥)e8v6^t93bAP\#L-RA m{{E#|/l9+)%m[MKX+eEV^^~G^yMϦex%8r(Pz^ڞ͛ H]Y2ΡU拓Ɗ~} tjpv ?! I1_H]&{ZVu+sekCOY'N?C9>;#aH)ⷹHˮ?HGܻЫkf_/F(XWz%c,zmX$j6BtiQGm @&>ro-^4qAaB'ɇmIj/2'0QJʰ.!L#z.ʨCo-ơGϹt0 RX/(rzI">P=rlsO2-`G$8L[/;qbV%~ `\沅V= 5n|W<\5;qx/t:{˶0 [ Y}'.䓯YÜ%mXWTQiV3ch"V uJZKRfteVh[16.qoނԟ "xf$;4|9]SYm ( ">츼c%J:efA\qi@Π| ~"=G~T&&DJ-kUI%l<@/Mzgh;m>;JC]xcTΰjs BYSxWTZ]xNȱ8SѮj7nƛy\"핵\3B^6s!w ]ew_|߉g ya8qbQ|[?y&I8Atܵ{m\23_,#g͠]SplbСxMa{-`НK+$W-H&~@T.fB_MYŷWbB%f}\]&ꔱN˚ `h =Ɋp(QGNs?B(:XJ& \8b;ؖĻE?#@ޠ}yreMj˭a獸@z[f+f XPFZ8ܠ?k^'bT[~=٥\H6`ɖ0&j6ԏ̐71oWm";O;3ۇ!kY]Ϛ׉Dֻ\%>Pl PhdOܲxCIWDmZcƻt6w,tPv@eW)Y-CEh Ÿu4m_Z\S4K Q%𧚖 顮^E5Fu@ճih (MCMf2 فYNmxl,ǧegnjxF3~RrL_D:Z91Q<\\R+䟺>\Q9t.Uպ&%~M4uUfF?%jj)8lR~:XbiŪ-_=@N_ 6j>/ZX'Kм0o5oӒú'`/a a9M?*!s$yu&jz{oV ƒl u+-sd VCwo4eZ(!Ҋj?l_=,s\jgЎ}H9hzL54 Ӝ _ ^Ŷm |gH!۴@b9.[mt/p7 Hj9wH G^(pۂ<2!c*%ddI#߀_Jc1x>jQn3mO2Ӟ?L3XZ8՜´4[׺VK0 +DKM]N*wW-&=٩'7pSxX }IKߴ j;ĩ‡iǧ~Ȗ6(;!?6y\vi;/+B|N%9 iu!G Ha32^sc" &ӯ(F#B)DcOdB!jE෧ClfZdUWp<|.z䇿T/d] 0JgD<p&N13] B6BH$1YpB`N=mXADxC4ŭa9) d%w'BLB}z&|.ze9RHkkq=yMjz_! pH!`u2ЏoNϨ}uAIDkۊ2m6lznWK`׵Dgb|]z*ϝYXnX5n "ݍ F핃6jP;ˤxxKfx#{na>f[l64io_^}q3t5]suo+5Vw8Vo1y=eF)Bu/+V;bk# j&Kl*9aujX}#WHh T8~Zv^ x>8{\3R5,UYxaYh?tc7ƍ3ڀQqwgwf[ZhHLL{>ta?'{;:"2,,2:alqCFS71AIȈ9_2pSU|DN+ZNn: XֈbQ޺:*6?hfLڕtpzyӓ~o<,*BM=\LqGMsMd1 W lrm?BALySSZ}~~wѾhT'NM1OJCRAb9/KD౬30|F vVOZ ǘZѷ.Q)'9/S顲۷As/ "D\as-E?dHX*dRD 2%RRiWIA iJ=}Y_҈~SFQ'7$t>oE~lr> 0ǞŪ<=} 欢H^/z%3H)~;He<$G}/+璟|&kȓ#2斵! as8^ C ҜFԎhniaeCv1=I@DW3.K>zk!COC&S8.94d|Ұg2ĸBhWwH0>C {RjӐlOGiM[P5ZӼ`܆칮 L:oÅYvPcn~0| bFHn渰ulli?ujC L{2I=~>PES.` ШO 21)\|*H&:ZƷ _p&T2_݊ g}t.EBEoײeF  !]ޜd Ô _ŵi%KHwPYseЁrg*-Y/~މ<e#2\9e?=CO'+?vKxޝ4N̪}QZ5 =k5lU8U[`/i2QV8On{_C|Sޝ# 03mFJtݤ0Q~E7vz2ɳ@ɷby4.-^8F`{0rkJAυ .1DaaϡU!ŧ^uF2`f; *l,x$.0,6ZYjۧlJJ腖 WT ԥF}UȮ@%wwLY7'ʝ8oăR+X8϶Rcg aSH'$YloSGk3)Z#K.Dms\8M`=h6keʾ¢79 ԯ; dАmB#ˈؕRm5YE)oIϊnAϻT%owH8??QiX"y uj9չN'o&Z@ibxiՈ(ψIwNI=zNJ\#CzeO=u-ͰLϝ4]%2RX$ gC9Xk7j:T5dAڐ o-[6;b-ye8q[3W-KS Qתd ~ts+Iu_PjC‡/Ńȿl?;x<^˱ϖ^4k kToc{a )J~O8Ru*kYF;0Ky\Af2La9@hg"{a"αVy:B|H:mДr,7Ӎmfaz~i<ÅN ML?-4A? M kR O.;mˀ\0|ORop.i֢i_Բi|uR{q6.߶)}.۞SXe߼:6N̒ sH_y(~ @Ԅ1@NT^HiJ4=>KwbH#klP0LRJA,^ υE2i9/ð^=xPY% ڐyل* >N܅1d2633G85NLE\?spC*Jb USBe2n$uՃs'CqpPf jH^Ī8r>*=&(R 5wj| 9EBV]d*B9iKǁ$kEa/Pk4mEڿ@fğ"TmwZ3\:'#'vsfA?~TvfTM#ssj,l|.(Է^dݠ b& Ȑ{*ŽpK0CX@|iip[zE a\vd^mxlrn~]x'KP3T[!Oբ&2SgZ@n&<0@(=ʁKʎ^r;LbIF)]cP<8:eXAnTzo՜T/ s$udyAq|5~̵5œTnXe^W懭1&qx5H4[EĞV#A:P[OP*q$|D3 խuS;s8 wES$ꋅ=b՘!jRr^sw[PNFlLۓ޻j@ jp1$#k(RߤVۓg؍{ɦIɞh>"Eh|kWm#++:@us{67".r+orNSz6؟"&-\>KߪQ>B믃"Xpѭ$R5W]-H}{Ne%QE9"޸1#δ00a,t pGs@sr)7Nytʿ@kF!khL>F1dk-Oci; Axf{2յ5gժ8PvIYwbI<M;>Uz|QUvyV 1-v3xHkA61 Nw]MrT,$ɹыRtI:5Lz=&! ŧ4wgzEYQtWa&@QMRAPwIwJ=~|Aap-Α)5k Bw߻vh=ª;( ٝ|fOҠS4&jtdK<9i3m*|_>GJl#=gwu$:qH59`r/ bv/F!RM0B]%U_*^b$fsek娾FWJxb.7صS3]?-Bqlԇ^B^2TԵ.z֡yz h]E~_/{Z<9h{ÅaFAYo ?nUOlXM7dabG7rIcOJ"|0 ֮c<"E(hSծI08:3Lf۫ctqv.V 2ʊVoSq ne/ˁTqE;[Զ r 7k\o.T(wgcMJȀFe@PZUGvu_|[:ηӨm1FC ͉D;79fęr6JIye'Ms2V0 'Q*IqD0hWKA"ôp@I+~vL;s~oZ`-GE$;>> ɬek,5/br> n"X8٥)`KoT%q34?UZHQ x:vRdy yXOhƟъQ>a*34,r($:=4Mc  d}eKR7H&rzS%}hP+?\},!_/}1J'3c :!ٷ,UK4px5@Yd>UcCm Th[W-ȿ2štœ R=|? uBd'eW3dA=1"^&T&CG64~l TEdw tXTU/k@~TKdSDj:NؓŹqpóժ繣HYz7FXP3fG,u|$ }k Z!j{.ڣȢ\Oy)DYK[eYV\( jdLi}<60MFbMµ?K2LF9 bT\`ͮ'fDXRΕ"q YNYr%7M >j[P1JArD1nsY)Tn N(:,0ͱ@k4w4L7ud@2v[{Vs^7@+@]ѝmЍ{v%VMeBq.Hw 3l5&?zB2N* tp:jmzqbخl8) |T=a@'{43w|<$2X ũ g349&Ƀ0.&j߇tZz"\ѕd]3:=m_0M'taLr6ܓ>e90c0Q#ʎR7/68ĝCӵ{Yĵ7H7c o$[߄ 좥ndbk~!:3"wmgB52(j/ ,PÍ^,x qIjTKy4M.- Za13< 8ʆ^ /?NPT OAx*uH<(`O'SC`T7q-X\R96aFBν(DUW,v4!1ئRf0" 8mL#2Z.W*zCk>hIUFi] 8>JG@'ЌQPhm!PON@ ǓtR*6w7nfVPAjm]b!Dp%_$x k=sj!`H2k( 3ȤS!Hvod,*v}l!<cOF;R*B\hXTL4/9O͗ا* 4ޢ >IJTTgB*l2yp|p 0jٸ"D%\&}vӊ8js_@޽I&EF5\(V㉱2 /Oiqǻ$ec&54` j2^ "B #)E'j[w}?<&Wdrn&-_`cCuMŴq1~Uf f2Vpiio9ˆV'= )Jyz5#$2/BV" \Fo2HI&Q(JSj]"1Xp´G<@|SĢM/AyB*Os!Du1: L)9 a+gOGlk1[~ ~vq//>4%@IYAH+)_1|gk0hslwPޡti), C)qc[.ޚ )裮l!;Tu{ G*6il?}dyDNoyEAˈx G6p&nuMvǨ+?A,^g[ӦP4ja|+̢sU, vK5:Udzcά8(5]nH߹k`j2 %Z|1&ǽ/ BOJу&0t̫&OXWNulr~_#fer?_fG/˰sKzT-$`e }i Aɠ%_ioцIס窝l֜9t/=_Ť_.6!s@z2,2Q@;cG8|:yNg -P.BK #hAifRh|F'3䞔퓿͜혯>({1Z>szzSЈD\,5ֆTE r|fAKYS# V%%X#m! n77aŬ*Rܢ)q/WJ1C0Rb"?cz Ccv'C!{tWbwiUuLȖ7,HC'PfK¬מwTr6PnY'!dt忄cʑGe'}B~uCS}#)k d\X,. p3:m!/15:-Z[u1e/\m[ + NLBs5PYVjJҠ-F%e +.Ap>Ȭr{\O^Y*:xh߷.BI`-F@3} &@>@'zb~?6x.u%>yFb^pb t&G7ھW }3_QeN-{k?fa9;$9.ЮQ Y FlVLn1=HV (c]+msufgR`dvS1W 9AvVp/U/lٚusm`#t!9K$t/݇RӖw4M6PĴ# 76[CuV+Kk2"u_ ' yg %O!dI`ݻr͑)j(hd,ڇmB}{7o϶(k q;1r Ħb84~^K];>NZLBl,8P~j m"CP|% u&P<.VW!+`Mp$tWk] vKI>7Df%?%^g7h nͪ|wª G;l)ly±C◿gKPrr^t 7-D!5c] , PTkZcv<޿Zp8Z>9app Hwq^@BË%*Q"]-JWJk577r|hg~qB1*|K/vm*Kk-c2 B/( "RX<7`FzGS2 PsF3haFxL+ 'LĀ.j,ffxC06gEQbQv) % K1Z#(e\UnImTZކ4áb屢6Dgxگ '=Jw2Ғ# oӦ^xMQR P^U-:IpDoAeX<Ǐn#bqY3&%y 0 9~jip}- 6Ke|L:6sw7֓nHWwr܀ 4fȼ]֫rg ; CQ\j(QuOG0훧x&]39bd?"::q,ɓ8VɵL2԰0F%#1\Ŵ7'sh9ypAҌ3IV ݽǞ5ڜ|V9!/٪LԞSߴo(-Z%ص$ nxjShA7.Af:d35b- Iu"t3{xP`j9zz=-czn^IX [hR-7 %kC ""y`Ӗ*q'Pxf մ1a]h9TUWwCm<6[DDNd\"*]n0D _297U-$U;:Gzz +dߴ&Nm' 8*rwpeI@P(E )\ a@Y~5jծbWdY{!\nZNz]Är4LR8'V#)0',fE&(=C}ڼx>bL_iT=à9CQq5 RZ]0lf2$o42G '姽"%&nsx̹GAbgxX?]ф_$m .䰂CF(?jX,cG 3Mr*aF0KS2E&vdcgC URO}6Zۏa9e|lMCjA1OUf\#"x(YXϢ033dew *f2NnWn2fZZ㘰$` cMGrs;=,[ȭ{a_ C1%O`"*qܟId]fLiB?wp%CR G%i;$/}mWKd hzOTu R纗9,y 3IFwEx֜BԃrRl(H9Z0l 6|TJ}u7?8S*Zd&[@?>3dȰ 6m4+6m?L}KBȖ+y!>q TC?JŔTT+3]Cj0G\#C$N J&v^+wϤp2% l#bPjq+[/Q:#uF$fip~&'2ڂѝ-LJ*|%G.5#MghQUYrQq4e5Po10PmMpD2AMoC|qloiz *Q^DrPXHF-a ` &OSLa;t#{:zDTwI$Y=4Ps"X<µ]r1}1o~TˇB&rUH]W_@G/2Z?5֗4ocwI[ledϺ"HYZjE,-MM)nTr[̨P͌>kA05Q+_"g`ʔ)m_3<ζg&e 88b>#G{5Dn;\aBDe%F. c&8h26ͬRwP#&3H/ɉYT8|Ģsa54zD!.St(owHtAR,Fc WҜ䑐4 ͇r@eGNߵUC={00ףT}#j:cGX)Ǹp:[ȳ!IcfKNͣd@_^ٱˣy`nN),@;~l@1o8 jٛ2@ٍ${y`;|fY2ԪNV(o\^B]+{q3-`8"7qAlPV |c|]3Lõ jn 5eY)J)N{f(K}7nɱ4 <ț[8-7;Uxͪx)vjqs濭q^j6b wJ VSUFԇ |uJR&>¾٤rhrEtk˝U>%WvO@T.ff H7-BE(7)3%jT P@) D el,駚1zز ,@\'TCpe>cxPpwEW!XЄ&Dâ~>ۍn }vG1tw}y03m7ڎeB\xoB H^tΝC 1V\ϻ.6Eim."}Nؑnߺ 8YnUR&s'%6+0f=-@XtubY M/ ,NKW f*~ i:D,-X]T+28֊;vl̰Va|NvxP{?)#ܽ ˨n'쁰OX>L%\zJ~k袡ʀZa=0!G+'9t!BLG؅4I=jY1/yWa0 |.nj{E rr&6+&26s*aD[ᥕ2W5C^kVc 4]=O Kr`.Q+:/[8 BwD }DbOfVZanbi:Q֯VVa5Npq:$Lɾ_.gO^#*H]`*S8 "ǿ-j,tHK¨3 Ghp@ߒLnc;ubDi,}mUQ gb}RwaVo"*1Dmhbb|~%0dN[f9G!][h>A?,KANRLDaa'헨+y.]BU7 9v`5 .lS丼-~=G&YY"{е d Rpy3DNazm&I\H+e!w4f,&l"w )b % xhk̶&ְrrB[.vou+~;I Կa4۠zvx7 #FodI(b֋ ["TZ5Oi3ʝUi~;hdm Lk?Kyj򧾰]y UJqPMU5hPM%fۅ(t$⚼ҏ^0fqh/Bb^~06G[HցAo{9ՏR>bUUvЁ%>RVadX'"3v V;dFRr3oətV|rXV7a~Lp>N7\]N| 9LbP@!ibYrW{-Vn@ތ a'Iot2FnVZfV8zPz*AeR74F^!L9VvTTmRCJX/,+!hHg&Z Dr 7)*O"}ia @rz:R)5`E +2.ϛ`3 R`T=Dd@G [`5}v"-bfgY95P\f5W঵rH-:Eg^6raK/%᜚K-t?DKg;ެ wAw>2(B&(d[>>#PQG=''?Dec>3B5VS~ 2q̙X+w; jfd/o[mh%<-'04k'e+JbpQAKn@ owGȑd_]/UHBiu6REMqА{2m0>r 1b;|ax$i:"O?qTd3zv 5%쉷4!s*cMRSAp:[?գSEFp4P8h٠  H[5lbs!14Bg eޭ7rf w=A?f!w#<^-Y1Hsf]q8F_s Fs3^B2beSdu\BZ +WrM>q-_e%/YԨJDbg::+,牌Ȝ 3*[0Ũn`_zvC mé;Q0+ZpZ]hgnFu2|2 *#ȽCeA<{iˊ,@GՉsE kgUlvFq\H[A9d Ym0uP|ݵ`7 jV8$߸绲aO*dNx$V uy 0 8g*x5}Ng.q[ڏ \ξރaɅLp1`G'CnHΔzMmU( v"In-Ex0J6[WdCJv c JOyFzMvXN([47w@[9zdsG/]$aFghMUV}U^gT2IіnEǽ5 =lqM}A5NV!nQn2n"JyV#!p֓9+aUȾH/NLJ6bmlI!H <'AKߦ#{؞JRvp>s_^٩{0ޯ}Qиis3 BYѷʙKJ\n؍eqFnc֧yU$02R[x(*r?n9*V$ ,6NJ٤#+FMT^ckK5N@듵Ԅ)sGZ4e*aܟ ނ )(wQg 30yvrE_JF܏ 1-jP'PSNhIM)=wZniʇjOS眠۶w>`R ?ٵ#mYKz{^qVIOg1E_]?ըFBv+nxȘ_vʯ LзpJz4@,; _ _ '\PIPڟNuHV"w;/-խ%EK蜶~k*Y.h 9Fo2N1B_X&_EuT]kF.wAQx!_#Vd: ~H)|̼DǠTlyr[rۇtR2[$Be/M1G¥u4I]s+7r=oŃIgn/h֊ 5G]1_9nZA)AW$jJ45CŦzݚ%Gxl,[*ko'aX֪GJ$J|xht?&|5oPWpnѳ5ŗ, vy$C!E* ?!D'DWP5m\|9x328pBx4vŪJ})({5ZAE!i2V# ({svXϘlj'%P fg+Lcs@paDFaS[ ֍AlPd7R6̾!AazqAwV1>NpڒįTqs63 _s͍e ؙ{0 Ex)g S|E:Q&Z-QÚng`VQӎ27MNdf2 pMz[m`"r]١՜pCqX/E;jDAZg6ljԈJ4Nʽ~J ךljY _=DT$}.&>XA"&C<$#MJzC_ dĞ;3m(&f =n]\thE& B~2K{ %w8 `uAYg$JzTWi.̴nk: M^Qd(_׈`e .]iAby5ٛ?en1:cÙ'd{7q$+r)fW B.#*ĭħ Ak*o$RR\HOϟ87^;j׉l-/ԧjN 0go~ T{ 7{3~>fC1L'~3 `yEC $N>NćUI"H#a<­FֽAJIKIT4S{yQjwzAzr$m:~(Tpv}LV@6paaXz}~hBؕ~ƃH=wMcN Q\%5]l+ غ.U A&g"OBw{fiG[%BKD} ox [vHu™Ia"W3JӻtIcsIj=dCs#Rxs,Oc!>!QA}FRtKaLUD@8o#zLozD8f^֌x(ٻT4ڙ?djN}(kObygxiГJExIN{@xige~^G8R!vR3~N DBX=-eы?)`WV L@gLTܘ=GŶ?ǽHmf鿱c&#J[vM$j ;yL,ax*acE` E/,EIrk nދW Muw߶*1D~?~03h!O>Hw+aP3",XlTړTAE+Hs~9Y"y9̣a om%f-06^ o c QC(x U`;ǡ؛8!"ؖyFV-6^y;ظeA?:@P(#9wތ:xГ:rر!,xRΥ?Ugx$2J˒\. 0qZ9#2(}_M#>%tKN̥pˆ_.5?yT? 3y-%hEq$<qyb[ȶ(Ҍl@ւ925B+hE\A:`x+1w_=*8m.d1ZOjuMܻĉ;2"]"xld@66\JqkI4n!^āNi%OJ`J@T{̹a~-FNo@ j`wsyC՝ m;LXؑjжÿX/ܙlBsL6d9Aг#OѤgS)ӄ*/VNOzH=xSm“Xy\|k8ngRbvr.ޯJ_".2+Zs^&^RXFd@w!5YvXgΡ ->aQʎc8.sQ8 ̇2[p➎C֑Q6ޛU4v{vأp_Z5!{a*ϟ\@j Hp7NDN{Zy2@(w(z,WwWs_c1͎[v1h k`u :+YQ7]H$Mz$p" V@R’iSj&F%6oW*<>~eIEБei~bVGUЇp}LU{'Ba_Y]jdY{bx# FoـԘؘ $=Ly@ -t"|$}$q^OmH׈zzuSL jS.&_}_$g$![7Byt;lr%~J\GC]ju,='bz:x8S D1>Hzؚ24] [mz88;_R9L ^)f˥COWc?`% {cbcr g8DG]37LE sN[.ɾeN'& QDhiR"~?FՎBe<]Ű<`tJFpm@rkC̟cǡD|}p@aqa5f=$IỹwMKvpN$KV0CJJ;:fnSn#K1a<t6lkR&DDfr[~Huٴ%`(`b6J&Eӻװkb`gbpnÅmv6Xq*+#Npf3mƙpsIPPt G<$!I\):r$~m53/`Z sk7Q8^9AS9p"5ڤA֟Vdd#!Z[hIOÚ)9C _8'9Oe4/^Kv}#ȁ{V$JIkPi 9UReج yന4V;IIwDED+Wʍr(4avݲBAބ0W6tQ},434u .SչCfwZ'?ffS:™ ~}ϖkKiax~ʻ9ŗ>Vbn<[#r|r2rL:?4iP:w@.k±akqZ!ti w2S I[1B5EȷlIJwMMil0q 7*ZWYP@nKvF:]%XhVS)v)X9&E`f,JZ+gVSGn=մ7G8!ݪ 3%Uy7yGֱzeUA 4 J!ϱ-.~!ԑz*\ĭ OO=/v񌁅LǑwx('d,{,UJ]WAH1#QW-ΩbL\`W~vl7_ɍ_z\k*?* :λhDfXV7c=Dǒn竘uߚV ˲W)7'tsR!Iw@~FD]ԺXcg°CxJ6gm3 -~#˃@7yT2xicR_3! 8H]gda毸[y1!#0hC1H#$x:4yj{PZ,'w]\/|RIF% f_-86>}ȝ4`Fq ?1 3P5^.s&G&NMyK8ZdpݏrN7 /ޤqbi) IWHVJs:5̚ xU#Twވnrxȩdq$0p`;@\eRKhHOqf+-Aͷ"܋D@/?S'T[<+BMp(PM'ߤyq<7p[sn|ߩM ✢^åPN)@*T*q VM4j'6bYll _ͣvQC2>Z3mQ3IRn.%opUrsmpf{'.05]I͡=lYғM LU]Vų>|CMo4pY'R8qďPPMVq]cxu/2}f'!`="d'\}ƠS 4{'3.>+HT9!Nc>?f,tdmˬmDCcDK?q?ȋ:tn1uo dX:Poro+Q=b3OH7G?;N(0S7$|4fl;C}bv $OkV`LϘWvN[@=RЀzhHf2x8;{6.C>*+$5hA_,M>C#mlN"3ȑir_pEEI~h@m| i*0U')>(w, ۬SdXAɛ DLI曑]X4e~*Q (qYK;XX`z܅:Da olƽN>ɤS'ЩVgJݢ;wG[dCMQZAA Q-4W@t'VbEaF[:{- ׶+oZ'b6i( ;gXXha)xw\?v](MVL5/Ɏ~8Q<VcU2zkGÐ b3Mo2OMׇ#kQtw9{ES(! i<^ď(?]뽥:SH|%uu'>WK1:!~N[ OD^ BMj_TY|RoCi O 1O"qȯ, t*`|hiZyp y^0ju9y.=UHV%1hVλiy˔qѺ+3ҥ@űCOvho\YO-4a[ Ʈk=w>#`HK:5RC$05- vxވZN1g{^Ƃ۝C=i73^]?mTx|n%yD,Sʊyoqb8ٕP-хa{Ҹ&Mae߰(/CN~5tJX\0-R1d͋f~کb,Y5;:XݒQ ]ؽq2zȎ>7tYEl *fyD3_wvآCgl$n&DӲi涠v=CCw"{4(a߯w *0Dܲe柰?…*u:RCy(ld=ߑ{;mPJH0U5Ô ӊF$ϪHX:Ž HPh!<yA:4$5CGӵ|PKY *9wxYt~?5V\aΨB[ܣ94қ]Fo%DN w&,I[l4:`p]`fe9O]0ne0>#?+DO$Ձ }`0"*_:m7=]Nɏq5Z)לyk_-KܲI d_b ;g9?4R#k ަQdˤ tj,Wa>VI] 瑇 aQevĺim#9O!9x* ڦ"(ؔMC5d$Ot@֡)\QOWJT޾[?Lxң Tצ/oo>Wln>h=uU+ac͗4K4̲x;*HJ/mχd|lOZ:SLA^i$1y3abQ_+ML?CS\4D#.NkefD}>Td_@ `].0=9:̼`&#Ox:n]j1Z4E|r?TZ'um* +*dxOggwSs$r}&k[$wk+ -lc v1ӐqyV~TL?b)̆04X |1NϥC^]p4~~Dq%\ :;}jƒ/=hI+%K*z+`@H tjWs @j4 rhdkFW :WFD[N7яL O޵rk_S N#AH[,Hgz3Ү!m•W#PgG5~i4DXӹn~\1^}@#jS:=؛YCڟ'uEFMH)6b P>xm(pNGCE@D&Vw80&'R]6V[2}b&&~%$ÝBv|Na "[lǜ"QZ߽6a_ߵ){;{كDjAx@A/jF`2mtBG'2a{) PY'/d{oKS4U泍 0z_Y”,嵺D 8 o*O7_9tLOV780}fAM a' $,}Lv/%G5I88$@֚V|2Ng~ģJ @! ųT?ϿXZ#2֋/ QON0 !oƳr aHn+IPxX4 NE]yiM(M@ p"|!v ً%e4H]ɥD$P\r[|<{^E:=eJ1.$!KVAbAbjtII> [70, ^/+>l9m%[`³}ۺLVJe40rFVN-t3q[E*Zߐ6sv8n-pA/RU ^t ,\e`n\G /JYuQkL7v7akP4h٨pO<s'ʹR{>q"bw 㯹RLXho$Ɲbb#qQM$`M$c5wJFKkEӓ`m}@v胗()>RO2ڄl^U^jk0.H{v ԛ'@. #6RKpդՑEt) <KXu¹=<#Wl|Y*2_}REDأR6FΥxVSC[B`OԆJv` Ra?81mĽu61[k"?zӊu6xi[6N.D|w9rGrwJLA,qqt(9IC:)$oaéFuo$ ߪ"6҄?P^uxi3m|BS$ҽ! d\YL8._FyC:W*b8'^5ݧW\@:iKFgkAtT9w#B~Փd7:@w~OAwy AK"noMpŸ , )tã*{@dtW1m~̑9֚:M 9kˤa{| C qb)ݛ], c#N H.0k:D2^61hXI@2tc4c ڬXm; fjađ5LfD!V=n-НnvH} _fՎ ŵ|6MɤKF-*Pq.ԡ]~Hs4Zµs~K8evoysagz2ÝΩ,N^͋ŷkSMh7?b˾K&^ OvߖG pq.OqϛȿpRr]rҙE6rMR^c1̓)׍"F(!㒐{4:f)A#$0Mp <:˖vU4T-ja$0| je&q6"#!B- b *W׉=LGJBrc7R|Vm @} ԎA:NLgO';h^:-UT>#j#oD¤5SDT9i@^òlRTi8-A[UZ~6j1/StQXaudrvmUg u`ȺhE0&Ub'إ4PCu<Ǐ ,Gf?,!"v;:) *G@8Wg+ 8OXmbMxEnYEP_Ju FLp"h}lS򘾊c^I$|Fr%RY F?SR'"T݌4KMe j {e G5 #8LUITo1[7S}x#B\AY\x:VW.q2$I+cXp1LFErdtK h# bAiyq ¸o6=9P0q ȿGI==6fhqK}}`? ,DKNC<@ X!0!?Ky:2El0ެo÷ߺYEv{ dODV1)eFENz:|Xū}"ZpRw*sFۆV~STdqHYyLT^,A}}[] e}x8;#$Nq`k#N {mr`L8!}z)]* YoՆIh:ו]Qdkn2{O'nkOع3V֦!ULFy)"Oe0(aۅh\9ɥky OvlPozI?<+`,?G '%#:rpC:r-,2Ώ^̍; 7 ,n5%u>rH|~ΉkUo& /Ro:^[e9QV{5ŵy,eeL!7SnӖs)Gg>"$r, DoƏkd|+,Ԑ䘮0 4v-fYvro)(тsl.D,0aX{5zcrNxǍyȷ\%F(VGyoH!5l3a8>47=Rqf('6Wu~8x-01[9/4+k&<<׏qF1+rKƻo.]gŒRqoXz>ax;dM04̚hgYAyx5\B\(ؿBm!eM080;Я09ܿ[chAB^q&x)."Yi|8~T(_L:8xB6W 3}-)/Gansj!O3䮹iSSG3A9hln6Qxi^0Y<0|UIEGUsO!ϜӤ7NUhR "wwXVKHkȕ9ȯr ko*]@B̧؝$О(6xǹX& e x=mC$|3y}K bܡוKێ`As@fĦU|nO [PNH،P]F2HwϢ tme(ݫ5f6tP_[.'ޱ_w(/萜(O}D?vx^ߞU%n"%wR%ٺj5 d՗韩EK^ߊUİ'^HW^_+׫Pb-B!Q clOU+h"BC&Tc~gbI\S 4K'(Ed>#ͨ/*`?FQJC(h %oY`QOr!fmڢ3YXCB>oYHގsr z8j4V\ohQHI_aw`jK5zm椡=lgKuǹ!L:JVɐX,FGéi 6,-fvOSUPoFqDnxԑJź!\->N$oBD@3&] ŰT sܙ(|F~-jUVYS/YDTO;i M3$ Ƀ\0NU#'jy3ew/S-ႝCGShQ9 ;dku(MڧI0?q%[m`^ͼ!'-%R@[IOr9!sqbAwӍ$^gj/h9t`AUpxw ڒ2. I[NHwxNgQtTn0 ļzƱWث|BYkfyIP5'q]=^,ׇGlzb7&I׫!fWN8 Z*7=PIJ #hY w$.xCӱDw.Ș ŵ V뿕&ڕ4D9< Wzy\9>kxG@t,Sֆ#kE;zpR0iV!#݈U'u7ɾaݕ{7yϣ iJEq]co 7Dq-R׃Bp|/S&RZa4QER Nc.W> ,L\n]eC,Y;,2іltX2|9R*q7)Bt՛ My(qIjD&X^q2c +`+Š@?)ꥏz$BPU^T0GBͬ>RǛ(5;\T!/ @ZGʗts# Bb0a`#ٸ5pN011WL߾-WK%%vMe'aWM2{e]HBօWH~ޑ+?PMtU2%8y`FW(S!Rlv|x@f+rIMǦyMH4䜪T`Iټx=e\>u";38}u-rSv,[/+eڌQ,+qn_6!c[!ӬgOeb'S6~?Xu_ۜu;sY1P>ُ Y \_P@ŶyT?7_XI+nY,! gY3Vm.k4Hu@yyg*.IǐnpMBFO։ü<,H 59~q4xnw'IH\{>ª{^v:@ qbbðBZ;Al EÿKh*QrL0;o24P1?]fk\p2gz+ iCX2B6X_oxjT*T]3Y Ksw? 3h 5Q0Jmx".ZRGF}ZW a{Z(GߺEC4>ЦJ:x:r`uo *dc\ۢED2 }i,s 6L0<%h1gsxUQ"P^u5IHFs%kV8$rMaKf|[4y^#:\K.Ye^@J~!͋(>il"}س =F7f~N7lN˧UBW+ s|$q{֧At$Ez]f:~itߦ"2-Nmk)6C`$*>h 9sM6_! f Yͮri~tft`2`${Yv/C~pNJ̋O\O=djYؕqj4;JCd"|[3j@k>IDF[O' $Ou"M{tk<8Z@ )\pR0g&d?Rz(TS' TvϚ)Nunqz`cUph^mkӄngΐ#r<"7&9]#^>{qe0`†/Za nǢ֗reEd7:x$F/'۪̈́3`x@bui5˵){ >xK_I}ĕ^BKr=!4W~D5SK|@˩aux~oSk0 U~?=Ry+x+>Y,s ǜȘ w &d)_orÍ3[_kfOJzHzXbir(m$-Yb j(`/T 2¼ds GPc|klldV؇~b0B%P;o%Oi8C"\Wf1z,rr>\r!]Ϟ {ތ6%Xk7a ˩)D/Wz3$G%eG+Pѝ҅%暑R;DJ`u_>1 5?4eI%76H8q~8fo.XT"!I"k0[H)/Zbn;.!Rn I=}س5R}[Y.&kAp#m7}hs<@\" Ac7u [O&t>\t.%FV8Z^Cȇ|fIyC~-l *C)A':MT'LJIh$<6-cD*SMoGޭq3pD6X <v#463S}Lrb@F9NY];6 O՘mXhyIv̝>Sz^uphHGMjg; ݨQTџx#wڦ@F:J%U?Uc)+t7&L1횘WGMn*Z6ܪQvۑp#/(f%b[l{c8\lto-8b}/T.FZH*Hz-}p9*J,j' $nd.CpQ39(+LoI)3* RW Lpwnڹw%s[9b8YTf*/K4 qۢDS@*] ""ZѬᦽΧi"T DCm^ޢNtfѦ婹MG2\|b9v8RCUP Z. T&âFK&O]qNfR*Y@ ōw!ǎNshG;r{ mg\/=Դas#]YA=UՇaČV5qsum_rj =hdC=ZM`?e[CV<,lh+}rGT)ܐ;tFv@vtydiˋKi!!&\K0 y> t53 F`3["`{Ib+lCEzGv] }X|ݝ B{]mNۃW<?^i{l VǪfWcSMX (yywo-F(9]`'nj9s2õ2a[]f>& {fdTctGWF ˾>fGs(Y2-J}-lF5K' R4]oo_Z+1}h+k3w@uv2L!tXR GsCvcVYkj ?!Gl!AGrq5nˬlp&g.4mFL)G #w3/4oħg&Wf൥hf'~ڪ %bR5o"ߝZb`&Ol?:QdmMiv}Z'_1ƽ?l0h>AlLP%&IzGg8EcVWGwM.}X`I6ݿ%}q܃tDt>C\1˨GTm:JȠ""^ 9EΑOzȜ 8\67W6F <Jj3B1cPҿE[ƌf>;hm/G5r0P𱖺IZO@v:ޢ-q`٤kh$aNՀ-"=deAdozY=U~b(+ [GdRem]j vt5`͛7 2ŔCrɧ ;YFݑʆݼd)G&tLab梣:Sh;v Iϕe'2 A]3)׏}!NVy9O#ր1'^{ې?f ?Bg}Z݉{O6мjQo;I26h?W LqNV;\lɠ^9꽲&[?鑅vzP^&s3c$^)di}=0\ulgڏ/A _BHNz^uAZNJk#cy<}5G>Qr@+ȶʈCe1N QP 6׍#* #&ĩ4E"%eIn hҭ-*WM07~oΛ0em䚱*ߪ;?|cJ?EfHXNj/HA:\s HP95j5e%*,1.}\l쬢x<%$'M*q[@u^H4 Ppl,ʀAG;};b q`/"jaq~wApn*ܨ >Ņ,Z'F-k8i']װ7C0U{Jxd|Q+{;ͼ9԰?ůIY2N֤{;M5q{!f4ӏ"&t sD߾l"wtlt{ժJe\GXp8*Vmo?5q_AFH]c8.$A/]-8t֥Eqw j(2;-D`kj@6TƦ)U?Ǘ&Љ;Ћ`|!4 c#*ST0߷P ٗ9J G՞f0S!*SEO0zO8s S9&+Jʢ\(o1dYx|0}8=q*YOGt(T^P{JR' #W Z33]ckIjtR{ڰ%c-LT-l3K8 z嵂MLX )ᄛCl #Lo0]e 6+lն+.x[`hpB_P|LdI. @J`T0NdL\ .F *>>Td'mC2W~{DNu7YxGx/>dO*9ɽ6.DpR0+XlyC SjCAuC! fCxGxw gɉ4|vyK~1.dFRS`y_4HF|USu^$<.z3i~l fFTT3F1ggT/9%@15iYV}d$}Cap+)52SFvN#ӌH j2h'y?+e^asuGi'Rہ_+0UZWtgY;w t 9B,aZOg,%Bu Y^ˌo^B9[=ӑM r|##䗣?+.'/6Q:2՚ޟ+kXVJꮿ|4*)Tp^uՔ> d?p=#x枞!ʡ\?ݏsbLYo&q' R7'>n_AaNSff, 4,b=ຶZ*Poqnzr 7amYI:SFH\]Wl$PY]FR0< E8uj-nEBpru|.kPʪ)ĐX"-qf-j*Գ$ |bnNR_/A蒲rģ`z$`8Q&yW+KxA-x}#7`G{l6o웢>M~byxj)2tdiX|lyQ%yԦq5[H1>-&%Eh b7Szɳ*,>Wӧ8JR-qǴdlz/ʸUu͉.ҷh" ML -Nrs<Sͷ43Җ5Trl媰Fb=Y&S~qM7lkkmgHIF乌 K̛Z +^$좱ArB.2}ؘn*i:mJ$'iT%|bL![&U!Hȶuv_ѧ z0Evǘ[k@4jlȮϼv{Y0JON= 7Ɗ-F$"'P! 2V;^J4ThBt]M޼Č8jTvZb9kfDZW7oUۙCWKrJkԃRk xAQdTmn:|Fk0_%~$`1}}LҢˏ2-Й`MJn[gBʘMHͬةMA@L^6 |г2^ 5DLPx`bj/#6n=-}|xz.Rc&SG=' ŒWge&o?֪Bd.*-ƜcYP53N|dNKѺ|l֏jws^; Œ?eMRy|tQp<dHMxTڝT ,F$ 0_&ZU9]`&DsbDžiIy)7(ƛ@02(C&AvusnCvsT㺹Z8kП}fa~uǿG&r%V<4` wgds˸XWPlY_z\7xmrhVaJmߢ ӋRjbjP9~ t޴Ǜ49(/ht[V7/H6*G dݻ%-?k="=*,G5xE]j^9o(3f% 4`G P9:ŗ3_@?GVÏ ~^g\RqDI_lpNIf[ݙ7X)Se.y >U…d {&3z>a;kAf`(NFOG[ nBr^"+OB9 @:I^gaIL@dNh4Q Rtq:`Çw.lyo QKsR73 ӟkBZ:'_lx߱l8p92`dnSߴ A&C]py˺MV % ) ?jK U% ~uP г(R!7 +C3eWyEk2WA&H@3@2 k.KWEsVwc=CJKRP1sgj$:S>oV(O0u뤜~FLJ#L}R䝭o[ }ZWF+L 63zN_o"Q`CYms[rd3IOmZ=` q{%5-1a5I"8>mPXMH8Ҫcdnl~1:60x=U/q$=Xdǽg~K%ɕ݌?^_yfW:t0:2[se 18jIfN%+f\Ğ?a |5,Ǚ;=lFr1CK *^? w3q@qXe*t1Ŭƿ`ɛ(ۢO#Q rAqiv|'(d2#w~k3b$;7|/(L%wՔ! V̆4@l,BS-Aw$_;zΈm?<&o&2&f77V$$r1ZyL;< HWGgG;F Hl`AUX%ʝ+1`g/fuU^VŜmiST]G>e(kt#8(pBoeVǙf^8͚*|(^J 5]ˌY>Qj(OZmm#j#anFѰdEl |԰ڃ~!Fa!"'ZW#GU=%e{^6jfA; Il5Βt;=j(3*A5S*^B;;hbKI9PZ9Rm? l sʖF*Ү;b6/-;&YYg? ?39_XemmEٯ/0IuTm.|ثpK"I8Пmv4S8Zq3ۭM/Q\(NU"NF|>9 a:VDئ+6xl<CD_(#gӚL+Ue^|Ca x0 q4 {;簓5Et$d9@W2ʋlNyi7 'j؍d$i9) _lppagWODA P=,#s.qAbQʗQa+eukհ٪m02ʥyjgVݥ+9Jr."e]0,gS@/Z`:<1nILȃoP'?u /2ܖo)K'h`TS(^nTLA|V_w|z)_8ikD+n&<@#9AmjZKGrI!t߯"G `($: yNdƭ{ 9C\K1UΝkQeȾaR>*7㛢q.BIAP U Wgzkr<C'K'#\ trHn8WԢ P:bt GM?sC=* }ܽ$[( pS_.;dй1O]ިQ * ,^> {&'H2V(H?즔q7JD,쇄nK@?un^(_)ZF:) oS;eBC`d>P+\Ptb3wd>V=KvѳR3+2l2͛u~f{qi"3 ibg➅+W (Y+s/ˢg/Ͻ&'bE8N߁s1g)y_pYlڬ# v@kM(A D i>}(`w}s5mPAc4;8!qLTؿS&cjWbӞZ>1Sp보#7@&S k|rfs%tmW~, "SrYғZ)pDc6>$f-kUd]xihG|'=&Tc2(6REQ@"Ox&N|Ǩ!ŪE\idrqu1n]I7QK7xiXRۄAA1 qH\9gbt ƥn 滛F܃_UW1-,{Oo(B/5<˩tVZurn6}!=3lnb|)Ǵ@)8>3rF^(Py'X%ztVC3O&R,3mg7~$.3 G#уLP5<ښzI=4)M$wD)& "bh[Hޞ~|) @ :\n79I[t+.|fk0t$>2.yXZ7qm| oJ ,5R-vYKFǚJ@tibCd mvQbwC0tm;pR,S',}G!KBTu,Nc,b|M xI3Q]i$vdm3ɼIHvKwψcF *+a]=vjgep݄״M%WxZgW-]S٪6/OX(~U0"QXHj0s3| |AibRýx?作( Z4.XSDu ,EYBnU<˨Kc..8_fPv larBa0sl@QP㽼 ˋ8iig66SˢbQ|^A%I0+JQ0A#JS3x9N86! EwA<;zWR/sp6rFW-zqH=ׄ9^mzl5^w9UGIYZG7)6Ü{m8r;@_OC$1Bp $A&t 9IhT9]o xG52C!Wi2b,˴%^ 2q^.o! "[̶~?M˜yAaa tF+;࠯&oOq*GNmRk"hU{ǂ] oOe#2I I @'UWXY C`7Ëqs"^XYDGD*PWJ2=w  7(sZ@`cYq{Hfj64 a~Jlx6Nb cu(?JpVBӝxli$=u+4ìoS'|?AЏl*" I쉃:@TUpʉJcdvocbd~c$8-gTUw#7)P\h2w^q$ Ks$@X=,Բp29<+SdN ͏ (}>"}P@`#p~ǟoV t1 kl '5 UC"j>$D"RW~?&IU̵WԌt6[hӃZIx4j8WNٷ۲WgՕ+zBe8F`2Wť!f ;!$N'jnTa@yz-be ߝM)$UBtdCф'M&Hyׄt]Y|at|3:{avK&za#*vqWXf[$A =W"|V \G/.BxTƊ]׊[0҇;6صO)R;2터ΗE.؞tc q[m uQŢ@3`ᴸOV{QI@-?(JDg%Eߖ,>WI:vvq~<\D` I)4;y%f$}hE X#n0YkmFM+Cw;Y_M« |s(fL"0*_,%rN[~G *UiŨLdr%k )).I?< R(1s?*]ԭ}b}u_698v<H8>.DOP8֨jޅ  5벋s䈷;~295N {4K!af :TH_9!)ΕϢWT7o0#u-bH֖yj^se]5536FS9r₿,1=62Vgd^ݩp]F#᱈ 3̥#Ђmv­PO ߕPR&{q˚}c׸?-} 6(y#5ӓ =p!U7QohW,vň 6iA:I&J ;-(38' .,-4(=a ۟B`}KD)(d]Ep^q;Ӭ[aHmV͍$w^BoകLBXWrhBܡI^\A$j+bA^HoK:lfyWfR?2FV[ŢR.ꧨ=0o5bCo>M݀ESĒkJ81&#7j Jg h^֝I\(kX92G\6oaMY59DA) 'SGXN}IЮ3r%Kdϡ~Kސ`Nu*0al q6ݏU `)ISKͫV*kEX 3u}`SH6H$o7`sZ[^)\P'-1qkp*=9R^kr_x:#P?@!汽m?4G %yo7Ynn~ȃTD+ShSdjBED.[.PgR9B-$CgI+q5Vq9P )"ʞ[:!֜59"W?kLR>tU@wU<COɼdvD3^\|Jn,1yh >ܱSH2#tpVlZ,혧z6L-%ygabtXQ ȫ.@kb@8X,?vi 7p^]@`:f}#ݻ#=ȳᦚ\N R ZFn\ãhROɩ\-+[Fj&gC2UI:6gxC dmΌ׳鵛{NzB>[ژRWYt%,!J`õ搭3Po_V(d6 UM}ηw]>Ƈ@6.C{b(%.2q1FYHiG8]Ȏ`u>laBgípk; a!CJߴvnE~켴8ݠd;? cf*I_2}@`rL/|^g>rOŀHӴF U:t2 fn0n'42:%BTp"ͧMVՖS"lf;A@$N2:d3&HPܰV.O,1H]^eOѡЧV -nD<> 5]9wh~;э@p5N-ɠQ X,1d!ux]ǒWIVhe&Wg`I"#& 9@Uۓ+bۣ Z^dGS~޵նT}$,ʬV޿~d?>G\$]S:D`t\*m&J {wݎ!d":`(F^ PkO]G7S(Ȅ-ty#5ɩEBNzĎmrIiO(A$}D&%hO$Ɠ. 9)p4zWPm1}yP6?OBT}\%qJ-w[>!n(lGVT?`I 97R440/ %+]Ɨ3DNn wM 9Q* p$),n_< ũC \ *8 +ewCo^){$%tܖ͒W{%Xu'&ϕLӚӧ w0 ؏n`dkQѧ"^mŅv .4D Tp}?"5Q.ªTO/FPaQ[g/L//d;bVV.Аw&zIu& ;` j:v*MھDa)8ef#IX%i#bܰL̡`>IUsɏInfEU:\RFbTw2U?Sۙk$q̂t-<[-@zq$z'Ϝ=dJ&$\#h<4rNd3){n$`3Iz'Z"VHf<^^zK'BI$k,hYff%Ҵ_[mFGBll3$?jյLJ1agߖ>{ n5̶hodHcf-˭KIQF-ja_j.gNH/5_7[9`/Qwaҩ3FPbGN\&"t~_8L%b zw)vpw s/_{5-Ij~?_/ámB]F`?\\ƻA٤Тn|8` S9ٯE0,V dH 覆7/ce_e_ wn-N0 !PD7וdEU#LtszFBH7X"'Fnע10d>+7q:lz׬1̶+r%=%i3B޽..OD1?s 1ic Ajrl{j!b:O"vayrFD""yY̡ebfB{{v`d1klh2AM=HJ@t;YKȤj_1Q3g놁:l̵f; C4u؈oV2BޘI[j]K_H@ k# Q^mx6fʮn8 ;ԟQX߼j gueRi]c;ڙT߿M8S1УlQg@<r8)7\lusaP8$LȕށlCYYS#-1 oBXj$WŴO~"Xg]M"dDkSw:Ǹ!vc5N6`,iWN<ŔǕvbu )O_< xZQk@ *9ѾQ~ǛtMyVa*Dy`Yţr?.k$ED1f? >Uwr@x Y'؄q8 d)49_l' gY>ca]M*$\/F*wp<$1$wF:IYxC#2r#%7wo /_A>2ڹ#MJQDMlj좓4sfŻ/tF~WѴNaՆsaqƣۘ/آe<_` GY(eV2˜2hƁAxԯ 8_B%(-P`8ۭeaOފG_ 2;}tAϾ45 N[6xZ|A&7]!VfƏ4x5Pk)ҿdQJκ -4Ȋ3[g3>Ltx+Rl.?-4P D`G P9әuIw-G'5~0*Qtik$;LI/@,eihvø Gp>ZFJ6˅>k\߲2D۠˜i&P=46o,ނU)_ C(2u$]򍤄NEn&Ko&'m MrJٴxXTZ@ Ħ؋Ow^U{֘ԃ4 ǒ8ׅN(ml6뿦{oNAoɟV2/vF>?;b 9^"8g*{`1!nV:z \?7PtsGEs 2VZ1h,o*Q'PpCPBǁ[ҹj&9^sQ3vW 녫'|ɝ~Q0!F4YfG!@֘&+XA`4L9.pakLsp^{* 8wN/vZHRk<κ{="i'ͳ$Y~~4䜃^v:f'QX8L;[@`wۥ~c%c>JwK) eWܲFR<^v P97 TYUh ,#bJ_V|A"4i'5LbA58s ~w^>M㖮~4lj !L@H뮟QdiIBYNubBU͌BXʉv20ǴSv0i2OXd>nſ,kG E6/Cy]ph͌axsƶUA >Ew $9OTM] J~ìoGJ{5u*q0%"R׭ś{5ǜ&"gQ ߞq5ڝ ]laM/wlT7ʙgSw>G]b@wŞGx֨;6d+cqcRnIl&!^{,S=^q;IAށ<ǐ"ÿ|>'֜u/vf]cE_n 6Z1[L6E73nWCAvJ_S$Q3%k܊L)=Wg+Q[Us,?&jb9P  i]x<YiӱF c][Cz:&ME_h GHHӫ5-z ]?MhP3ؓSǟyYrspimȶhp Vf*s%|1]PvHw>Scv{uV8ҷc 57Dw__@tNDa+xhe)М:} > :_RBt.qӏug[ ~TjY訷ة|к:؃IqW `U8 A"=d%Bjo-Trush1h*>Y ξOOk`Zi>T,$ V76A [}F)xsF"?'ݦ AmuxNiJѥhꂷ ZxvOrܕNm8ܬ7~3::EWr?4ۧfm} ح {l|$:I}u K'=RMR{oqm:-Ŀ{ka04-teƂF.m83闹JOZ62qMpgg]tB2iU{vn\0<"[8!D|E4nv.K%z.;W zR02ݽ&)ꆅߍ)rh)zZU/ևm uVWm.SlyS )L&Au焖dv@Bի($oS]q9H0%(g] ]Dxq=Sy`Չwm>dj"Oƍpr&7.,AF]}B-(OeLoV5[DiIixO-{_le \SW}@a,{7 ,䏰Ņ4?/#H1j|V3$O*PNmmND X"J }&5"扫wpt;QU  Hz9Il.ꍥX ՞ 賓 hh;f+@`spXBC2-UUye1;Ϸ B-˝2#RK"3kq%=Tqwn TjQ,YGs |%c7J|^'gi 1 wv=g%R)KM1Q )YsӓݪK \Bު qdcȼ7ܖtOYGV`Xϣ5Yu #s5DE8Jİ=-[R0?(-~KvŌN1Ad5qY0C6=ga]v] "B' r0!wiQëta|ל]2zW̯5(kv.?#)TSK/o{pՎ<=hAo G0gnfQzDX&n*ҡr TLx:^i{^[7 ;5+l_Es V"Ur]չx}"AzY4>ϊ%hMeI (eP`PuA_*}`oej "A[R\H` Q·;k!?)}e~ <Ѽ\ .E7{ʢr(uig$ǭ! q Bn肹 OcȪ C^0qЏ&-fޒ 8Dj&Ю,S+x.ʬ{~iOɝga@F|Yȷ NayR4E*Gd` qR63}J~g<73@,rr*(ā < 튔0A5UC ήn.5;Mz*[')]Sģ &_?9j6{kO9S9N8eo'Dz 4S,Dޓ+ )*|ҝ|>  ?6|O3H qOJRpܴaVKx7fZN66/ %O(fx40.ul.Mc% وϞE=cEVl ^IRmxھo~FOL%vMius^'Kԋsߣl+*4]~8'\"WH{Z]7نK3M|r H̾Pqy hU$PhPstNuFf/IS`5 Gf /-*md8ڱ"]s{7hᆳn4^$(*wn-Pڼ -s"R%uKN^cƦlo4'ZϫMf~;;.|q=fo_!7l >5y,) CnkEwWb#>]XD"׳؆sԻr.v }JmAX{5WWO/ŷ1-j{L*VL3r*RPW&)BoqHkpXu``i,Zmhs·y2$Q$, 7\>&$o R3"sɌGD}`9Tc959w]҈.۠49W1zބL8?L)"֟qO7fpw{d$'/.AUYTvp1\<@!LP[mts=¤yM/SS$QK)DPm-*G/d/x q6N1K_`?Qt7Զf$yl6pךnrw蓭2<6+Vmh)Z;X& 벤M Xcg-f)俘Lt.dW%cTC2A+p@pė/n81cCەlcSS83R-Dep< {Qe~ȷG ʡ $} ߠe>7WG8jB{a;ΛJEp3 hc V,=Um,Bި=ȹBy 6o\|E̪<6u4Ƶ51 lkJC0= =S=#ܑZđWZl +pgR?U5K3`Y"hrSdz|+tIjWp:.wҬ7,Y'w_ɭJܑYǟedSjc8;5趑g(䳪\ω_!>8A/NcqpC%*ыǤȌ4<8 0q pp0ƉNgG81IG# =7yMѝ Y spFQyk=ʏSҼշCSTPg~歛+:u᝺tIvBbiM)i\zҋ ~99]:ϛm" r zPGb&M <tCgU

    @"ͱ Svyl| r*<7<4u=ۧ [A~Eo_bpokV)V(ϺAf=)%/˕, v=N5[ȭ@B'ع@eĐp.H0^g=A"l݋rˆkqs+&YEnYlBg-[Bc Dڛ1=WuZr(+_kp S>["Ǥ_(>taF>=39; ]:~'Ls\Hr<8:{BUij=O6u u%i-F+5&`ӳ hZ̲4K4\> :FӶTdԗ B;I+TFM7]ܛ`>RET{~t[2.~f*/}YbQ9hoձ̲Gst>HGBՏ/13/n٥\tpψ2O{w"֝QUaf6#>i+b@Ƀ0GV9O%wV!$`!տIo)? ލU){Hvyljʇ5W>֔^E|dq@nQV-`7عIfώ$NWsMi'c)_/S,&&mc;c96mW(lR}O9A .CW2䣜p~_.7^8KJrwOcL`Vp%/[In >Nti+rGG`Gav{Zz;mt@eJ~j2jīኹ֕7In(r6Y !JuiZ>\ыhS-0P "sJn4~hCv.7| gԴxM_h=q(lكNR-`1?X tfU4i5$9 O.oj15lQD!s5؂ ^*w= O?bVF 1gǬCAN#v=hSX^kLE$!e+}OThشhI@˾x&jұvM̉<Ɯ2<̳yfh͠H82Pz>xn7z^ME:^h*)W6xLZl֋_NHo~ 0ȮݜeԢ䟎s`D]C ʂ]M.Pg5)!s2X|Wz!cBm8 S,YQW&խ34e N~VGo|svEZ=WK~j6)A7O 3'Ln;]aFSN("j:f+4Hgض6w8?Zkn{KV=kijbTL3^V=Z/j54+y+v<׹|Qk)xYfU.HrP?~fb~Gc]bbT>pmU`mj*B>ĵ/2+i2`>[O E  1%[G0=}~"'blm# )z%$w4K=R6@ T]% 8Xyщl1uSnLje\n&fU5[tIs/J%e:k9n=%ڋQvf(9j Ǯ e}*./:hk+U|m"xmcЋe¦3$,RBK=:@S5?2`s):EJfmh2|ƶAD *C%S;6 j`Ƞ9U_wfiXYgnR1Aw-|TSP~Q؃U+> k xO+}RVO;ag?MV&[ ~)!~PԊRP. (4WHLm)1}t3EW/Pf@ETV2AZ V^f2AW]0*_J1BpP"Dt56|BJOǬ%Ar%w>e3"3qC? Yb*A?Syv #"\d,OmLH9ᬒUOяVz KAAPqaC+yBC~s*jkۛkQ9͍Ka4,g A,# ~n~զufs)lעF>F@kI]#,"*&!9fS"*#anbw;JԌ` GԔ^1!*z ^@ąVEePS$Q"Edo9B.Ed7覲3kEK͒%  ֿ>o] zBUVnO9)5[CXi&KX/qrxl8`.RC(B[@ȝQVf")$.;rcA\wa=3v*q,-ׯu_JrUGEO|V8$EI=>jف* Y-!@ph ̃95YX\(ˏoΧd/C9/S)/FiO͇KJ 6 uY KpF(CMd" 6>őSb2DͲX$q2JްE%t_tt-aojo1<_?fJTArZգ@ W5]NˆPR re%pyJ;.D Fs͝Zd8c'm'!(:y|eW*"iP\E5fF+sYx $C rۋzZ;]c-#m|iuvZv\KbU^WǛIᗆ.Q^ k;1SF;`}NZh/u'ؒV9ߛ]>YcXřAN-,98C+hn42N׸KIbLnŶeMGQ2b=18 JQhɮJRRE3'c ;T+cq <]Ir|Zɑ;No6"?gCZ|"-\ fÁx Wo5pJfv 6LqlF2مhЭHC9 N GhIÀ'.;I~0\oCO[ؗIJɟ ҭϬH,85WiYs$P2%ǭO."Z-p["RE眹tm\nXa>i[饎۔hF0~"V)0R*&Ѯ~-zZ'*:!PmWYfǡit2`-X[qڿ[h+~ͷ1~:L LijeT&Bckx.}vCS@61t!:u#JT%=3wr]xs`~nb}Vcb@{?Tnu˘mVK :d-9ze'[a'e8>?#Ko r U݁VTԄ۬nШ7/5`D=\/MA~QuCc[4!n2RR s< >(,Ҋ܁D5+tFFSz"6A YpR=rqjҐlzC硜5Ghu,ۻ%^IPܩ:Fn-)\I*8D^@;nĽv2@WӞ襝?B[Ik:[PwۧÕtce֠WPH>ˏI‚vG7֋օLnq#bvNS\gJ AEՒjz uv_%a]pr)_Ւ|< DqcmGnd``'TIM10^*iL 2)F_C](M,"t[lD?UHp賁tp vݩ! fvgC\[ 2^&\Ʀ,u!QUȩT܆$ܷ;O,Ee+zu;hf.=%-|0FaFK5I;{\H[ ~aمjM*Hblx;ٵZG^i!>}*\3gugӔz׶-GoeR t}'1?y%AeNǭ}[9Ipf#66{}ZN1 D79qWIu*=V=QrX+\|!a3r Ty)-+4ôt>SgU|7¼vxbx,ƯC#q%Rۉm6Ŭž!*3ɍXFAAQ_Y{a'(ucgla \Gm6牑"g ?$ÀA1f_?:^&ll f`>]c_Pٍ=Bvo{/WYLoiF+^'6VBK 3?&$> ʊ ^Uw zKfG(o$*8B?\e#Rik]$ Z9V$Wj0{܉ qoSm}ja>#Љ;/(eYj!f=+"y%.,q_ ew(ۨE'%0xk_4fEn=2Y*AM(*.ީXe bpeIFf- k#Rmh0ckB,=xhJŸ<26y;x쥏} \8,8@̯6$<; '!4Ш-?#-\*ߍQ@ղy͘JE)L#jM6&jt&ba-Z݆% e1E١IL|Ԉ}ل= r^5l>19ٿ@KŁR.!qU4G僧G,舮1Xyǰ੣%2W \ d4?6geYk%zE[iٗ'Fƣ*R>z-&#.{LA c>mok=j&Yۭ])<ɦ{Aâwvs)x}7m1Aɼ֪jo#OK Jh!8ECA;Z"θvٴ[l?(WDc,!w0+? c2Ywm}|Mw9!I2=j#þ,FE,CSGM8%8#)-Ys@`^S=+&حyUXdU`*:}yG60o 6%Fc.IZgOuRMD_.jb tvaSN2@ 1=twYӐ1f}ZX֘I2f>x;I/f ZJ'R1--Df_brԷ&M(beB︺l<8dr@H2o6?ڨ' Ќxv 2R/?àٍq5)ң|6|rrikܵǘ*Sجd%lꋏx*LWU;S֎ޒK #e99W~wĒl\dpH*3Vw،]7r%uAK|7% ^%88~EF~zpgbg υ&BZ!E#ӫR3W8|x@H ]NʭH;wov5fТ!>?z.MtI╨Ko46U rU&v sd״OM]#L`i/xF/Bb cFî3=AMo K'AY]Puo܅4"z3XD'ӳ*s`U3B.IQh#º' AT*1S_1tץ*p{8 =]ҏ&) Aro#, <=DLS+Ed:mUXxo~bȋwC2¦^H8;B{A}[Wyt5,m'~DFU#eb";3IȪFub7`h=c6P7a-qk!KnT4s'uDžg|6d8 /ADV2apBn0𵱀HF-9'u@Bt1'}(A! }J6)]Bg ڷ/h36 T+?fk=54rDQ킠 |ؗI%/`שU<:3js^m5N 9uB7V# {@-4׎qj3'9.kFEd`gyIq> n^w_J,t¹)#S[ɫarYEc^NZw ݕzߟg&Ÿgyj nf=0A)O'_AmKS6qed`$q՛y*_VkS@9d̀+a6.zKNbTgWZt;<8~)ی0됑ͼpZD\.OjQ:$iO sg>se搾o8qY_s YE=I(z#D8L{[+])ҨTP=}z3zͳWoo]C#?[2x!X4v2w>rL;ŮYq_mxZ4%Գj2EhOj5PTA/x_[)a]ͯVVS6-whT̛d%f %X[1BT7ϤvZwWHQM#$^:qhDQ"Jk[>vlKGKXZ b I[ HYAM쐌odh7UeeaP<:*%w.čશf)p셼6+ği:,<=1 Cӄ >\B<(L <e[=yxs?%a'M3H M%K dn' {|^; @)1-e9X'C# ~2,}z2sOŽtN<%%`_XeT˧ ? &KVfvYmj; (k3  W9~UDL2/:}a0lQ@Z`V+ =04]d Xj$N͡Ŵ^` !;89/lU5xfg_I: .3vTi?+|SdSF]&.[|:]S#gg eXHhBd0u6A›$<$XܥۻK5MŽpW*sGRnW VQ Tt~a!-DwD8O9䰝|MDdoB}<csF+肼w"%8 ?yrY|隫_I`ZMKzc*- xD+ cEa{6UӦncnr/fa֌[ 8t]N^vx\W#"}9LˆBx2"jmDGƔ}~+Q>)Cÿp6{y%!G @ IKayhxce_li7gX%9r5qؼ̇Ax]"(4(Z6 3ƞ=W..k'['y/t򬻦Np8C9!/[[/Hk `Hz|Jz?O-bo3^9}2^&T- HNJqлcs]LUY;(;YX;Q`& UFuΐ֎E݆,ˆaKP|J"xLا/0w'z騐GK!,yQ(?܇L ?, ģex.rL^e,)1?{#TG|$l5YSY3 u\OcR̖^I$)qq,*҂ gojdZe ESlq!#$"V8ͪp-xƞtb3惖?uktTdmT-ěOb$ xp)>MZ! Anp^@^T~ rZ*u*)ԉ7-ɢaG%0EU4m@˷Cҍ| M܌BdZ&vI{ʚKq9Qw*EqQntufN .(v?h6#d'C#Z #\_F9\1g?j?rn N'>LQQ{(N<BdM[`M .%*TD<L"RD:Zi6ԤB2B4ʔi!ʗNvH[T83`LidEuƃIc9Sd=aBđ?٢,{ܔ١Q^O&#EQ  ?OR3NlL6JZQڂZD5$V&s4Jmc# Ęg<Og$1):s|)[0 5 5yibks1O$}>seЅY+EbҁcB^2םqg͏ǂ/2:f;S~ؚ q"D3XDb)[<!\KP狫_Ŭ8m&4CT9N_©G: X p{_LgUwo|@!Og281L4QIk%Hֺ|a:Xm!$gydaa ͆ f T:0*Iw\z ^utE޾N%ȥ KU$ k FB9 ćY֤\yI$>XL PJ@pwo,H i"m {j^rvpgkHC}Km%u1a9؀ `\CaֆaC,u!s|(5+4g WS4d+}l]CX|kƗfm*jקJNz6/ݐc_rQ]ofjyH&œļZ5QKSE,n_C1PZվZ&mUF`8'Q{>]J4uAd3?$jCE| F6*{,DN@ԣs)QLxcUzߤ k݋9sзg8-IklL^Уtl~$40g2,i-oEuqZS@X ;FJ#lsl= ?|ٽ)HV]U = {,-?8#l׆?}^Q[<"}5?._‚Y\g)u)gO7k`Y#g|a:|?z#5茿՗|c oƾ |qJóU %_R7'h\ZXh/G@Ed\2x<J8WCNUm ːWZ5LOδ5A{DiZ4&{*W2YrV|>D7 aR_ 4 PrvAϱJOnu 'tä ѡ=`yh! SU @ @f6wʫ<&sɆZ=klY 9jQGRAbVV'hje$ QS ^eAo|OW׳Wx.# HA鑚y?$ȥŇ# }Ťw"9B-ɣ:&G6HpI[NN4?eJ:tǫqr*֛E } ւ'6\~QC@--2_C oT?+g66<~NztD4Tѭ:SKf顪UHN@cl[1e k={~eV4OߕFLh[ Jp^,^AC`0=/Il3g+A!Sq^=B+eps _'iLD#Q|S]XPS ؜ mͬ~:`GE אta^j! 2y^År}?؋nAZRT`h/IƎ8\oc(QvP@)98<gvW "SK;R d oͭ~@E5n!TɋA[?卵5`zq"p^(QϨE73;1T]5 'B5Q4rW.EZN Ro| ==cfHX^pK@EEhOv:sv '^YLuUא׍zx9H_tlO^sMXn%W-C4:z]Pŷd?.>q-[^+yMFATPKCP҉X.Su|ȥ| -9o mq~'Dٯ:Hܟ()DR`y${wxHws)-8%Ll W"c"J K0(Ӟ vێ?\Y#--F/nrOj1S1\ysT)[esb':B=XΙ&=H3n?(x~$G.֮suu˝ig;xI)YO7![)N,/W`} uZS Z ӵj?:LYg4 _ٟ`'5턯_jud2( .4Mb,ʵ6Bi+Ͱ@S* x#;Ht6yHu!ҪA0;O[k'"XDi gVuUF葪 N3 Лx8,ٽVdw{3S ؗIL[D^){@e-g?G:B2`T&](oXN Jpx+y#L J3d1MBkVY5pMbg^m>3p7.AZr= _ǥNJ N9hh#t$1cfb lsZ 7^`ɸ \h˼"zݥ}K lRi` | <ߜc.XFA>odͤ6TRE헾.{_\a[Neb<~#Lw^r:iugH^TucD-%F|nݑ~"2Q79lLAjፙ&R:}/:,$=OZM c*;ÜP S+eXIrK@HPӦЀ+Y0cIq#Eb@/\&ed>Ҙeht@kYq\FO崗.@bR`T*zi2«%r8闭7,1KUj|kd+1Y5\bԇ0b'ۚS jgm?來Ӧ1Ju_O'tJiisWMޚǴFVъ9> HvukL4dBl`_12Gx73{|t7ruVe WvixL2wYFִ0t /}J*'OpyNZ Oq1Bαo43m3m ۉa6N:!@?zs۩_HnQj%?áRSy0! Tvne@l>APXJ]#t: \?킗-9x+ki:^d{z$"D RsH6Ywz!7qJ e镎iwsRqmIh%2 W`Ik~-hҿ<FGV@5 50egBe{z㧃Bha '[{w;*Lw9*JJ ۍR)p$eÄCԌ,3PZ\6:kA/AH稬"7/DuBLXtm\hHfeQcK#Gcse9ArA JQ[J7^]JZ=FKV[X TV5V)"7™=|MWF{ܱH_A5M/ŦeW+dLH!s5d v]w9Ђ@Uq DsPޛ ljp~\) sq (\BTGI 9ru! }H0FoR88 gG3ppxt)$A+#n) ~H|*O@J@Щj\"ChD=yXu2fs>p`2&/:ɾ [ _Hocf)LGTm-:#Pe`D`VZ,H6[38$ $'x,5{Gc&TkOU Knz/W'.TFSyFS y-/`_AIE8ҩ)7Չ'_ X>YVnH:R0$)w?-+HNY @={J_oy22}4PYL3΀ϔSu8|S4~g}FzXU2u뱥ݤ( 60nW>M=E̱μecrH^ror.#ƀ 3) FjƧ/~*^is4Hg .؝L6ģP-!XTB5։1ܬ\r{Y?/($4>zRbA51 1[ 87|EY#%j+c勩.""r~M;wjHj-缩os U)N|2z]UJSlƵ+3Z+/ jS=KR?)ͥ&vYa,E^ۗ{(mYCX-'xQ,++Jq-LyzplTܡLOU4bAI]P,7+Lh=%08V /QӮ/]iܼi'>_C1gV[z\ߙPߣ ?Tn 5i#]&C.t R+X~dA8:1M;VTx\v" ɷؽS-\t ucDA3ƶWREY_ iO^3 `,,:dXO6R)8#s/571lX@zzaQ`77M^{q܅U0_y "] ;úQ٠ʨK;^a<XK]f)"V6T !$OOVc*XKK*S`;rEI#&!CDZ@F$uf8+ ;WX{EM=o3];` JgQ$<|DjT\8{ al]Vs+ʦw9 WNh9=\͌tL$(N& F0]@5xk|d8wT><'׎Iid+b_hLgX)ٮr Chrbz54,#/\șK>y,yRMr`hUM50̯4+=@(ڑ6E>Y>6KU 'MJ eB7WufPeJ|[jߧ,ILj_RJǨuʹ "ᑗqnHG<[OOWqȓ߸\[͞t󣛠N+ ՟p~.$))#z,қ,LhmZk?$Ɔ"} ؛US4zb=0-cPuaCܚsVj1gr#oaOEYnXqn#}uPHۥyiN;^TeײYCN$!uOx,ljp';j[ATT)WN&oN:FT^uI8QR5=@ÇI[$ WR&МyՁm$঑ne74[E7t636[,8Iy]?AgRj/wa®- t*<-n /tpT*ӤX_8/AUnA wǑ J~k|QH`?v-7x޵eO^ߍTRk.C5 m %hLv|9^;AwN1QA_.lj.ZgVʔɡx3On >UFy?Fo6GUBM*ۿ`.&7_} ]:"%h9=g36n:I Ë&قU띟G y+6Gc:|K "MpzXp*z!#?a+Nh<x8=~Wwm2Aq(4 mo+&kI!i)RV$+IxiNc'~o!ҘglX=*i 9ڣdn{n0{YdII 48^3z-K7Ө05"3t}cה +XnPmDI+d?U#37t=*_dZp?JŠa.>*Om S*Ŧxװ_FFR&+ vǢk'(Me)Pl^I(I7]—vHH}Gt(vg.;uC20w\-2G~ä,*:*_[*߿C~v\~9olK#’mEXXB5?۪"i7@MCn:i_"+j)l(a: s'H̨m Wm=9nO쨪XMʑ%f{=nx"*tڧͽt̠TK)+sQ Bʍɝ()$ CS밠P6:8gg(C 'MM!l>K7OA)VGA|-dτcFb#YWi8]S^֊ij/z/嚦PǺU4Gaa u`HhlR Rح]Jum|eEX(/IBKT~_Pht EG@]ʾoyr]Uќq^OeyC33Rk뿗!kM+.M?B"5EXO ۍ:u1U|OXV-Gcg 8iTTi\{d(9&_{%.bGv|W $]l0>,b~'Ooyi@@oX"ؾ6nH&EduApW%j)PC1QDX }k^,D7.5@^]EEb ~2 ZpX\=i=1sˀK\̙ANnkiKyG{1JldFsa<6)*Vj |Rf^So߃5i#,޻;hnMY|Kh6D3p-p*ZNMY YA/ؐ ]Ea r^c4p Kb٪&KHJLKE:s%{NVje*.`[JCZ\ʜz3G*GI:kf{ڰ LJTn5av 8}I&PŃ'$)[;ܝ#ViۙB(9.Ɗ@?y\+, 1*~kVyoWX׏!6'hbt1mx#n`xIǫ'WXfX/[ D!g`ςy֋mEOq UK0AMYMϮs!Gӽqق QuHXO+ Q|--rxR?^~ᖅ:*"TƜ޹,DO(2y\kx }DIJcl@^&*U6s{,D"tPr)l+^,;8aQ/~漳Yu yy#[MS"+26;<W8_w--刼S.(d'} eL;X;+ l S5k!V Cw~o2b3+߱@&$ <o!g&1?n}= N*N%we]musp-D1 OjN0!ńmGh[p~`jZw,Hey@:V9tK`A"Ґ^W:'ˤs{*B@ .(_+B\B/ڷ-TdEFj[5'|"ܲk8- Sl6ž4nՁQ%>F0N[4.:s6~Ixl66p. Je'O5c0g7ו7'Ҟ;0˪b>H-0r-X0: ]h썾Ov#9!{R#6I>#zP(!Wm-z 5\ve9s :DAf$#ck>̨K<P>D қ%,KU&/ hhҢM!?~:rAtKM;APޅVe"\]ѷ@Ds 8[dzuxDڬ~+g%JH#b&[p}k4ڵN?$Ě|yN:28.rD̊)im0|a\@e`{"}J0j9iو0ں (3f8"D:([//[Nzbx/A[4#t䦚xz` 3/O29v]0VE1۶ 7ҜfhDS&c6'l2FnRHH=wwq I-|h\B*LqeeO0&LK+ܐ2NʵoX>_%Z+~wP0A$6)FVa?1TFTߓ 1D Ut?>-o]4341RVo zpg"ghyqJAӹvtlp!/F=(>7}yhzBPP1MYw]A'T*򴕅v􁛮1dnWliZG҇Of"\Zc7.Y"ezg v:/߿bVq͓%(9hIF# m֌1tаR.o*7kxw>:٪*O*g풵}$N؃ z5}wh^"f=37Ps -Hv?2,%r5o<Ӻ1gDΉ#5|t.)[?z7f(U? j嫸Z46=-MLjG\;ˌv̨.DQ(D) ̏E(7+l`\9Ūz@MQۙ{i2q6Z׶aW=+D_{nK~/( #~4֠ލi D`]K^4MX|o0BA ?mI Da=R enŬ|YM<HFLg7dLsE@|2; yT^bZulIVT7hem]9~AE'^/m2 Rw?)rnjJpgNF({vTBը$NadbD( aد-&~׆[99DXcM ćgc4{x6'N t-! Зyv+>+ s7Ә˹vQ/5Ut{p2%oM)8 Nq4"ѹ "˂)"{̊O"Ѹ?&752KRڭMw7as)Y){׹9lc o v(ϰrL 6CijdaTV;S@T^%~Ąء-{ JM7 e+ Y~pR72ɿ8=hY`gkVb % REUE.WBLju9e_} XQ7.o(p$gF 16${$3Բq icI'mfR&$KYC3S&gNAʁ| -@, [n 8UD P]H!2Q"jfDW(iڅ}- '):#-}ϯ:vTh&Te6ԧѳ 87%`Y'I|Ju.1w1B 3ĸ mtE7va ) "fEy#w y{ (/kM6ܜnS[F{+|T̔ۼ kSI.R&l np#+`8\rm$s&Sm#p"bAHSZ Ty5c>+iuVA4 Y}mZ&B8y-n (QOobdV(;= )Xx8"0mM6 P\}TWWo[JC50@ˀJ Vڋgx$R/V +.0>.D~nz-)W>ˀ/QLhN1 -F8+Ř<7RC"#hRL׉ eq`*WxQ  Z 3 llשh‚=\DjZx*P_.aT8A:xSX1>;`"yk8zf*> D?[>Y%lb=Ze Nt6=m>x M?$L)?osgʎWd؄,PnX~XjimA|PzoحnRQw)ŋRd_NepzeF{bLU`f!<-d8@'A| `>L%vr'p8.S6hFNrGB#wI*W|(e.nj g˱q55kB;>7+1Հ A J|q(K<>St#27:4ayP[ӒpX |'X)GfMꀒE 1&f$ j$%YNcfuSy'2 ;z 6baAk9ay9JkʂtmG Qa3Pϒ%fVF.׀^Y ,0_""Kx!#i]Xb=H[0O&kXCTؘG: Yx}5H&Īmߗỽb\lJHˣ]l֢S[t+.2 NA3:rV{/&t/pXRu 1~zqk2,m5Ŧ)bfmy_LsB; b*V1}p2|=7\$n|&O_sχ=*B@ʠZgjp 9kDl=9stw+ X&?♗- Tu|D~:PeFQN aV3W¢ʛ?Z'0hHnS=Vx?Ŝ>f=K&]:d-@쇓zJf'n 4M ݥ6#EV<_L={pб˙DzLΥB1PY+yl揽IS:#N`ӸvЮy4MߠaB .3߸2:8e v%uKkgurk44CA7ӗ9UkZf"Bb 6Xl2Eh!Ո58:xan畖V[*'p.zawG_Q,;_بC\" ׄ`NMZK6C_!we_+A4fGPBhxیϨ<@_-RlPQ׳xH aMK:;YՃɀ=c_TC۞'`~e(e2"o9La2me)D|K'wLhno`@(z A_;QrdՓd^}ȇ1Y8fAhDFH涞2L( OHot U+fJ'( )fwCFzqq 2RG [Z2_K`ϥVQwp!_>vX }@>yhWARCmc© n=`q7SWW13|E3Efg̭zT8'~_9sTŲK #]$3[_1H>5y\*U^:,/t(S5[nq 5-l~f%Sc+(r[tܮx*w秲n)cF2B lDq_?+&e))LwσxW' X7݂̓9]޿&z5bETl^M"zOủFLMdt!9 #w@OHU PeŒw mBȑYtVLmNh+'UY)R]GyoJ"-j/fZ7$&ZT} ô('pZwdB𒪍)K_5BWo8oҰ= bW-iօ^hf~#tfcxR BK銉Y<HLi4 F} ؈̳d,. zp # `wh>ۉ nb un.;~ԑ5lžZC/RW;f{HZI`& `TS{Qeuv#L sbcHnYmu%e"|QzWQ^=Eg_Gƀq\W7)**fюܵ)Y|*4@m[Ƈ?t1S)9lySXa)L 4H,Xb߉$3Y.ш}MiNۍ T; 13"{ܙ4.*ͨj`역:hF^>ӧP!}J pD(nPD~4B截A r__Ӕ=dT.Œt+ 9 aY+TSϬޣ_BLRu'*7R'(]0_ʫM2hQ`v ԹƒG҈le9r9k*\NnZ\ jOt8Au%+Б#88#M@)FʗZM^2 4Hg?"SU8sVW"}{",+0Kk+r0ѬPp.vbp3ed&Az" $ )?|,10?|ҏ7H Z1fT oN<(2iEQRtބ KB1G%"]F](Ax"CDDt:|cYJ"NZ%5* g7&5?׈oM@K44q64]:Ꜿ+@σ2?>$tub'VNz m ^[KY@-q|ҙF6&Љ柃 X67he}K6&E7Ek{&B_B urY }2$ @a](zݢccrɃU)r|AH/bgax2)XB k.ƢJd+8~Ơ Tƿ!XeChf`OSUÊCBF4MKrh!ezM#$ I!L r|Wצhc lyiv}ODD pF#c{B:T٩40cSpWJ~KNP?IC hSa6u+ -DyYN BviW+k:j5$ 4TQ]'DF?ߜig,sOVm{x5,K-Ⱦ FW.Go6WQy::F"GPPE"3H,";Q`9KPBg/&%V%6۳Eqɋ1Ϯ&K[ gdx(UDڌ8iwS< z.ih(GBh{P`,GU5O c\>rG`U"AedchƳl#đٛ߷ܶxi =Crͻ҃Xk1Q5܆DO0RE kC9~KGXB@c=N ny!<|ԪEߙ:YOIlW%R*WĠ;x{e.q{?:#&ۨra&>/ uUHX+fOŁշ/8zxI^{N4Wߐ>ܤLCPR,{nInSH4{/GKV.}{~aUwuX_I+$ \8g Q} n u-R7[ O<ȼ?HpwCO`ŸYq*ޤ3"^7ɆUĩ)2 <R :ލ;D9=vMWFst`= xˏhyWB.Q{oq!_qcw816[Ӑ6mim:4 /FηNC;˿.} 01y'~3"/ *n%\V)s\=7C##hЈW L]TbԵb?>GpEk]^Ͻi؄CׅIL׵45fh ˮJi5ډȳӛeW;,\?#ԟnMճgs0Q2ӐΙTYi>K&NIgE v@?90'= j$h.M2w<>)*{լX89YU:&8V&B #ovT-FX02s0GYWT/#x@ Yޙ{CgphQnaA+Dk?0?MH8=]R= N 7%Y!JiJAjre-QO;͑Y-hJOӚJfj\e]$/%J]:kKOiÚP68,|S5A$[)=kWTQ&n;M ̛f=:N+]W[p3 h(XGodLr)XQd).#^ϩİjc0D2v߽[&bmٸi%}^MY[& zY~]*C;ĭ"&ফ%3{N; J+;gL-F $P>r_#A]p,$݇i!Qc(pnik)qZt77iAcªIJx"uqXws@70-xr\.}Ka |E\m%EWw:D9tdQ6o7k͡uN", yC׬%)ӊ!.ldYhzSl/ښ%g0u*L߅>s"8q;#قI{0ls嬍VsG"խDLK:e o ]PxU;Dvc_ay/}*Ġ[8 (LE+ØL?Wl„!=q辷{hllO7D`&spV״[ۢ _Xzi %rj } "C'RNyu+V_&N6(0袲m; 8l҂g#Ae@qG}ȱPiW6<½_m>P۪T2F2|#W:ބ'08t`X>L:q3BlmzBZY"1~@ XTac[#/R.O/x1y8 lʯIڥ.A ҦM8:ZFG\޲2߮_XbBOe]יcH"1B*>ED5`SD &h^3q88OVX8[cբ(dJDy+%{rAUJrg\g53C6ۓ'OQAr&*%Pgo#N j|85:YOizDM- fh@9I̎KQiB,z:L) dQ]`'\=mT2cLĀmD}@yBUSs;U 7e*\mJG[:nMh U%[8GٴںMbdբO[D:[ + 2rN t3Oకii(Sp '|Xg*~0?t"8AInl0nsd ֓WY"[A<:8, Ębh=+S_+,Hei֮cj?߉G,d<-Rn#oGf.V{Cb8nNOe w5tQ3v;GڶC 5#8I8]-~#e0[|$PQTFtk޶'<èWnpEQgX$?\sN-3`>u*}])]a6@9Xi(Z0 n޿"m>i s=Gv,N_x&Q۪yJuCxB{P~1tdMLՐaQڀ\pb(Vsrť,&uinj4d8BkGDUjvN aɅ|s{==_'rt QgaaL%b)|߆la> SJJpphQS.>|ld4mbMxVcQ;4,ǩ- I]-lr%ds埬QڍrNN:C݁CBΎA,0✾wz8Ke0;dxG \008At"iBP|d fؤq?saє({y"yS[L-_X ])k<ϒ)̃`9oQ:Ư̌e& 9~f^Z@J`jydEOv9E.ӞxzBVI۴~ T2CH)}e4\e O[Y@t y{_QL0 rb7YBYy{._xh0U;z?S`ՌaEЇYyB䡃vT> o#Ք,p_$G5[NK莓cg݁`?D'3BW9Ѵi'UхrTw knUp1KecZQ. .k}G¶95l:=K) & *J, ewKn)k0c/;2ZjBVUC!C֏ȵ[qܮ/[t+#GEwiAɔoW? !,8s.YQϗRY)MNiU( I%[\Ow-p%WEz+>HC:Zz*b.a:5nِ*QB撀 MU\N^9Z ka1.<_J+>̦K^x3ӆHebfXQ,W|X9] O͈Kևn I1Ip%jB47}C7 e:DNA( 4Bb py+PzBzA<At83r`7ܦI^ĕP`waߢ>ݎx?uǕCzT [ #[+ Fkjil>UZBfFnpaO N%fmן7kqXv\+-5 C [C9Sԍ3_4fwSXnJ!_mhjEIئtf~e./y{9F%|L`eTC((F(a0?sq<n׷&ʦc`_$f5CrZ lz&FowH [g7p8MYFɛb9)">J/xK[k* /?k.}PT7'|סAUt`E\gu m{|Y^_]wܯ;hdL#D!NzMe_C7@^:Y@H{h"Sʊ<ǠTٴl:݆YqsJ8gGW?t<2[Qm|{J@mzq%9#BR:T͖'q2<R]T%:1\X:]+r8 b?E-d[^?[Kt G\G=rM[v^Ifc5Њ7=Ll@{Pjv)r[B S!YB)ܴa=hmobÿA 7{` 31ƩBwjܝxC WSR\>kV0v-'wd ˒BQwa Ns.6'Bozz@NIkx w2 b,=cͥ q-vZՐXR,&0[Ol<5^82hv8?V쑆8 YUz=g-OIn/rf|Vk!۳pji0Bf,: G h#Z]U{ Ba2Efq~_K 57uvMpye2Q`_kvՔh8!'A_e=I?A4/hu$nyb3L[~Gl[c6 I^ZOXƀ?#uJ# :j1!khgl&gH73=[XFL 496Z^V?esðәR߁ 5Ipy5*`CZ'Qd :Bބx]Hd;?} UВ:>GKVLĪX=okӬb0bHnqGrڐs(W Th3a˕eAŤɗP^ԍ clP7ͷ\7 X 4)F;S_ /jpJno.K/pY,&E@֔i ~L)ѵX v+NƳQ /.ӄ18L$zdC$|\S QO=+f^pYC3^FˢHE\] '(ߥzʜ' ~o4#E! N@`c0sŀJʿdq>yՑ¸e`MWA#|sv~'heUYlek dhũYLeIos&IT8RғsHWz*f.5.>,'/1[ӌa#xU!E=~pNZ#bSP' <֛KTHdKgO%S>,W D*V9w U[u\eoqJ;o Aɕ|TOl["HJܝiT 5Hxs7fHܲd)PO扣UGmԂ8SJON&h!GhHB}Ϲ [_mz9 گ p9mܨrRb9[apvӡov +4B@b[HV[7KՕWPm Q^zY]D !"b.{U2Qh;RyHO&oЍ)5RJʢ&K}BZy3v%6D1TcJNice 2 9 d@mP[eNW}?ϊ{v&ւ1֥hQcۨZ|{CAHpӳe{3&<|cF; k.#^`\'*`t!_ OiX,qtr"y Pyc7tN$[-9ۣ֓E$X2JՕ9>[zJ Fe{xRQ 7ؔLt9;*ǶoKu(_?礭_әEP86D!W|. !4u+Y2W9}RlϺci6/3(Oa5MBwW$w*&0|f𶣔2(+Ĝddb&_v O( f=6qQ/8.qSv inyW,iD,DLOaX0;2B{Ѻ\OSScD V.^ F欉ş Z@ßo.HjˏRx mIp\1t~'~ܬb(601[% a2| T˞^hƌ5 >t-zV#`6  \N[.kau{U)9b@+Zc f+cQƖO?EܑuS3Z܀ӧzg?Ƨ%\jɿ5W.ωNvr!zډc-r+0SnyTH\{mNU yM%ƒ~ DϪZ475bvW*M`pU:TAgjq'[b[Y߷}]2iޔCK1vVlaM!-I3b6VBz;Ca@'hD*+/*~YzF݄HUjՁ3m(1\U6Lml׵D2nַ} I$Mǯr#k*{Q/p1Wm"0옎u6e6T\axL#`ʏ&`|g0&|RsSgsKa߱zL D}PU@Cϟ :*hs{ X8CW |qT6{2&?zZ/+R["mO *ͲNѸc]#iL&kǸ#pCA0yKQE\ ɷB ,w3bIK13ǿM|v>-B8ckHmAZbxF}Q c+CxN]-=u-0;'Uߘ+/ pƏ(]m. 64Zsbh!wRq r,oGD|܋]Ũ݁;c (ɴ3Ӕb""^8\ N݂FA F?8x:D+tx"WwSޏm3rY><%rp"wZ/{8%Rm?〠WffX$'&[P_#C\}yUdC@8r!K"Nϩf=x

    +8ȏgH_kQ^q2o0PgjSDDEtl?}9ϓ>d܍ٯ/۱&8,(#;e؃y𓕜u&:!>.J!eljKV[DEC}q͜MSAs52 IA#bs8f`4G; W-mS 0rо5=0sX+ZUnlCrj)]ꇭ1y1zHh2rl䉳&Q7wUi_B "\=%*M(7UZl3W!^E*A5[IU Lj e5u]ĚpmYHZr[Up *vhzDiJ`BU՗KhؤzHqްHx NRzJ9+@1-d|=BKi twx_ńT w vV*Uxn MEG%픗%7MةWUN1 HN Ț3T޳I8 ʪ"=|ѹEF;MN{{_tF\9JAu$ x#$4m^/&}$Qe{3Z1SAo^/ EphԤs_c_;:qRu }q|8zEWpGQ&xY(K7*%Ed{/^0?֗Gd$ 6tdU{ʠbUv2?RN3a(^}.օ-N7߄4h>/VnDZ1in{/tFmTlLC-MC7͋K9 P^ /!ՖIBf_﫩Hy_ljD*6Gl^|_}m?WJ eoƚ@K52D\ 5:P(z^^a Ըǫ%Of ;Q~E.s2p|NiPBk`A_ŔrFグ@i2LHS;mT0qEg(!&Wdt^|SwVr3"-ThwJJzXRl*yn;Y!f $v@['Z]Md nem|pKsT.5Fz{A;q Y(KT&qFQӘdpVAd5NG}7J㝶+ vcͥr)ٕ]B;luYw t@qqH)ON^"J86TK㵘pطT+J6C"l?{G =f F֦_` )CmhhuN] q iPAY9/X_`;%idb&跻6gΘou1ڬH@uQwcu¡a[%`2+2A.,:cCP {eVD _emi¿(B(rR NǝÈ_J\:ף}EMMRJy56adEp{Xs[]wȽ,HX .|[e{@Mqt܁1l/ OZ=@Gg(L 8t1%QPQf'* z|,+P|bUlư3uDzq1o;2h~w$j#NdW*[rynQt\QYV-?!0'N&\[IukE6Rԯ6xj 5Nt4("E {HoDQEw zRXY=]QFt娛U #6M\-#'e Y6Iևdsc<ޯS;<\ط A6?1ia}CwŁ̟aX \B>D="/s?BVA[ Oӥ#K} +Pe)h=J^U󮷳o5eQdTA)oXw)so4Z6c7 5cڽ$YT RiŦnOԬuܿMͬ*@ⰛIqjN0k(I [cȪҧxT0'GO{̗ _ěxmnx ݔυY9fLcIp湧9>jD`/Ֆhx?Bf#eprNRe|q oD\ 6e>A+lVNfxo?s HcM'b>LP.Q0LfOutxʢNk?2,;", 2a3͢pṳij;6|<27OZ8v$o<: X^Go~ii=3z]aN4cIr!d] ,0hp3rvIY_R2 Ř.+j)* g`@3z@ps:$xۂ!1c%ALn9#~jmdpLFALr |T_+,C.Xz9 nۛz1s6}Q /oU]I~, t\>p(iw~HlF~O>x)+*GѩBN!+ CٗL&&ŲX5V3KrLߖz̯ --CmC?1VKpqmǐŠW!6+'e &Hچ$FR"ѿLJv6|pQ-0K>Ww@% ?5NP~|0'@f^U #UE2;*e:qt--5AlEw+u-4q^biɂ8/{|Cx6u(Oλ o҇ 9nVfB7bJi#0|ō+ؗu_ 7KA*3q45$o`~Q͝i0-bIi)ȝhhWv\_ݳ#e  ٌP5`SV _AMNGзĥ ֱ9`;g/XB9'7v J`ˍIEHwЩ_VjP#?'u/dhDnK@ Lkn4Dǭ%zW m1Ұwcn^k-QG]oVQr*Ӯ?5Ҹ V=lD$f YGdNu5"Nk#߳~m+ B{|dkf-נZ!M1{@ jqK⏸Ъ\J;|[)6|rљG.-:f R~K4%AN0Q* r` o ٘"fo@4S|6. v7zlP ZB+jdnnifˮQ7Qv.)<ph$~ߤtG@-d6xe5'`!%U1viA9EpHF'[d"-:EWG][e,f ]׋?sdgBnw5e.g > n'St7jۡ#>lLtb% NR`]yg0*eʧZEns GY$V&/7`5+Z&sXa6nU5dh;_M8j;ltz3B k+Ӷ۠$%~Yݱ,LZ!X)m ;їnsV7֭+/=Zf7`|jd<ר?Xj#~)Ƙw҃y- 4diAmm'ZeFlH!J~Fbq1OSEU̪r1N[=m7_Uݱ8TdjI>n=c܄i(i4"W@Ms6&sFyUSPzB ^Xa o k J=?a+Lq0s8' d^]?tc&7z|k=K'h.n.%I-ȩR>Nz<P[)xB#D ฻)[0 O7&Y߇9h BUxKc|g G9/ObWB" DMZP+,f%L.U:Eƛ{޶ (1ҒD3PXrAk`ג^ܳ 6Һ+!Gؘ)wTqy;b~*vvpՂJ>`)e=KO$t.v\HXdK Tân?ZE D5Fſǟd=s@a+[dpY? U'%%{VV<_@_]<mg-iOgO^yAzF4a۴`y~k}Xp(it.x#2z?`X uf6iE9~Mnկ X koݒ{oRwlZ|QLu Oqx +}ƞ_&c`McNGXzx?i PS,i'b?Brn"l<|Kv&4Zv9:D6'ښckzU8'y0aIyӳ*1} C6zG#e3x&}zƐ:w-M~$EP>(R*d/!4Z~b`؇7H-zV iq{ k~lta XEt*IVv^4G <хԴ<` %v> ;e]vaLÞDt͂=Je ]˿=sT hV2Wi!M =n׉>JRjB.s'hcƥn,ۏr8R^Xa3zͻBGZs{G Yxs01TW$)34ikj "EqfW6` |HR{~.}^"I :09 Dӂ(RJ YȌ~Md1"LpXډ_ħW4< [OFP3/|e#6d޶2xCc?y0?۰ "qW>\x} κh[#`ЂR*_6O4e>[PWϑ5`)Fu.xeTh\N*0#n{M^g_p6}8 j }[ `([vR%6D[E׫e8 U7*15)cD֍ErDANL7 7^b:e|PzǛHe攙͋Q50Lsv9fqǀ_r *|R@#U,Vט[{3>=r\5H`3安ˍ9i(vlexhG- .`^_-[6et˖CIy>mП&c=GiӃ=k餢m;%:<9Z+Pu:N?['[Sp|p;AK̂S\Z_{%[H ^Kdpa)c$רQrQ귅̝Jc2ܬД$Z`V-pBqAD8'u^Su| N 0h9mfZ@w uEP}vaꢆ:c[mLgH/yNt#@y -xMUx%E7`=tLiji!eAVGV1 u\xE81Þݍ+p1o<^zPKs/tMKJfvjM}*HӐ ɿ:w?9ie,e17ҹI[dp?Pe,b(JX-$JC,Mc R!XV64_߻ݣ69zGLJCeɏ$dA{ORor[@,g;a;_^tr^싶V[ W!ƈnʄQ3rC[Q"q аxz x󀬊eơ`ztmjߧ[auQVpVKl]e-RU u.NM M(p@OӜPdia[R@!՗ @eT?uzE㑖@0ƕOUIfFTYj19O!sjU׷|sp?Nd3wGU+iWHuNp bh"(-,L˓05 Q{q& =}#;c<_P@,S7(0Ð$,}d5:s&:TɆ;yp.p?NaAۜZNGC%U C (0]6 \cQD+ωYC"9UnёoP(zk:F:y't~'m %Y؊3dxFi6 kjk$g{'WqOw=LaҧOS0tKDH\" 3[p䤞5tT$ Nt9D ޓ}/UB!M/ӴnA#5+Dla}xweՍNF몾ΰ C@T=vZv,=M24?v|/̂:/ZZ0cJ.s(kF.`Vr|>J.';WBsG6sx{s1"#>S/Hu C$Fde050F!Yp\"fiuk;d"=H,˔a Om|Q7la?Wv[YKK )轝bb3=8on 1Zr!Sc/5-;G 6OBG`rho6"҉㈼d[h*3b|ɮt3Ao2` P 1ʚIwq,OѮoVRƒ 1[BMr|q)|KplS+: ǤC&J| _ _t{zPH?}fbhO0HK&]g0QØ> k AcVMJZVpߥ:0GhPiVogRlLQfA[|vpǻ~=Ta{_j○%s8HskH!Q)3*xZ>GRVrl+M1M Rߴ=֞f05^01;Q=G^H`sde0\)A5pSw"͎j@8;yPd2q |,9˷=j+NJֈIk~[RHmۧP@ ໛h|ApQ75ɦ`Ho(%iS2Ĥ9x^,zJyWwMxW#HTBŘ Ak7řh #bC[0mc]c?CcD$&O ů(̓ .SÀZjň$}HM!4o`P zdQVOX,,;??߬c~m+#2Cz`X_jU(_[qʹ_;ي !]yB>'B[ʅ(3 bYJNY x!~:x_m4>-$=HšV\=)8v_=( e b)d)I@ϤԃuӠRw0yHxT0FX{|iGq@H1uCPmh9tT7X,btC&#J5f/yf; &# uB*Y\d %eW8a M|+*-óH;5nH k929Ԍ bOo X_= ƺ9Ts]"]*nwABPi]<HEJޞ]Z8W|SLA<+lˈP,mm c&u864vK!f,gr')=U|O,~%?cdzPRj\%%%C#і՜mdSF(7s8#ݣd.:I&JFP;Gݩ<ڔ.Pq٫/beD'&A1Q볬'.D3V<P}l}b*弗>n@CW2#M_L=~ #"j}JfA|sT?m|J 9ARgB.¡=tsCiawT.?Afsr:%w 펠seFh(H"scœc:uwPPhVjYt4l`U߰!0vXR|ٵe6pǨBX+jL#u\찿z$>A~_o:sO 9MUEvpm%AkMxBs<5* kGaѶi1Y2޸Lt:('0&^FڌAsVsyo+ W&#b(؆6#mӒ$c],cQ?#AF?+Ӓon!E?XԡUej֎g~JE b0 E~45=KMC$_Di\j;CG8AH I'mi%9^6?2F`ŭ1qpy-tZPsuS0q7ұRtMleV5gQG/rڰ ֳWz?`ђDm\XAPxbi|㯯V%Ic;CDAqz  z;P0^:8Ps6i`9V68pUΎF*Zj-bΜ4es4M94+{aQ+k0sK"PjGVzDkMNJ!36K Qe  h5m5%<^gNg_n;j}Q%ꢥ\֡mAXl)TQVp2I12dˠ qJASC 0So$b %ȝ6kI;6%ߴn,cLߣapr4ypWΨ ]mS OSm\!O! PK.-.Bd }D{@rX‘qgCZOO;x1;/aعxO<]/7 {rTq) ;Cn8qT4ɺ'Hc}E¯ 0gE&bl}ɸxHy_BT W dp`#71.8:1v&j2m* ŗ@ToޭZlM%3Ⱥv@tNdhpLh6UC}f"pa< Â~kQ0"S XuBZM8j#D'Zeꀩ:hCZ*itG3E q3X$qߌ@ڥbش\o!ꐍ00 y!3$ᗳZGShaeOvxҨ5):IFyŬziѕ%ۑ$p(h1$ȶ)'\ÄϻQ"]Q" R8;)"5ŇtE9#F:k*B</MlR(߽'&bz3įB`aQY j˵gDAeTfTp4b)] (X M:2Og]vR^/ov2;}.֜uWU\hi,UA[~+Z)+>NE&&8e$xI#}6ƩD3ug>zvkdIF;0طA*,@mf QPu1Z-c`]fFis#S*t []!6^2e\lW~R=tO-v?~A _;F/P}Ͼ;!E^\1L׸S?*ӡh @$k i#rSp//?%Xy 3#{dey5=+ s8gZNK|͡Rhk#.B/'dzUSԠo ktVt]cG̃9 Ql6XW}n2A?bT xViyPȟ V3Ly|^IP@>>6s@8* $6[ӿX04c㭴OQ֊*j5 {I!Bg[Y^JFk 3vmnU~U v¸>Г[K򠦞|h1Һ3fJ*w]:\|OOYIG?zƶt(caxA*;>w+ ji]-n';|:4g;^ Mu$iE+pNׇ`aT4*07^ $X-Lv׻J0EzIUDkYi9H\He*K0R3Z;G5v[a okh4M"EFdҶ DtWsqd%g Aw Hg{ "x,X}1t5S63jw!}O*Z.(Dwɤ\ƒdyAIJd1Sj 8 D,P%MRS7(¦k=-5t?= 8Gt;LkhHs5!dHt@ F^" @ֻt NZvҙQתN%?*lW>b@Mgl~SF//Ua{7FC)qI_̚-P^t7Ț!/?M~.(: HG(խ1;*ĩZRuL吡J_eW?gi Լ[ujyjf/Gm5<{T5}f( dO!bqsɣ4i#2KHN„'4ڝ0cPX1 I;j"ts <`nt~jx]n׽6olia0~mY3UaSFbƉWxA zuū_ Qe=Gi,U |QGf"=hj{i6H4v|˾s>#c^EN]c]U_5YJS#Z0E+,G`?A9zO~i 'Szw[`X fI8 Cܶ7r&`rmp7f Wb =N^|0{e?mbՕ6:֭%={C_]Tu9%<tL&=lbLaqhoP%S_d6j̴HRoI@-<@@BV9#z;gʏq;C_$gI:xʐ}oY~2ug;[v ʶADYڡ BLV|)\{Q&@r}*7$9 E ڭX?"t>猆 C\c'`k b^gn;TOV"ZڅFK: CwZxb6 Ct"pאB\`i rDzInn= ,*L^ JS4J+Y, *u .2۴UQB$Tg/-TL .0ȩ&r31#V4 a(4(]g|@Vd{aHO'ʸ7. ѩ6qqaՉf{'|w}Ox.u F?5 2!Mc`P'W VRyk/*T*\iX.(Ʋ|&ŐM#́n|%Vs}m9LgKEpֵ۝Oe6("T 2MֱήՂI"t('Z}m+0*[.BPV)EinoV ̖qLY"wa%C$(ڦΖ#jy!b}JpiA'W"@b}٩]4>$;9́tOi5s)U 5&!Yu[+#ۤCA (ۦ(P&yb@,ѐW[bFB5xJ]/G4Vьm_j ccW ^NBU#y= $Ta7o}%]( L!5Nr=ļ*#D,dK$[[#yFʫ:klBڥ/3 ~!65mt._9S?}fWY1< x=.zcbD+_ \ ћ3a|N'3Uy-Y qN=d> @Fɚ{%Y?^Nֆ5У0LQR UzpG.fp τI)$YO;z蓴FbM&I T2v ۩+;( }x KcU$MfP'[kW 嗢b]wTt^ PbKc|JSz-ʛ l1500re4"(Ң=~ !Sѧ"R  &2{D&)ZP:b',7e8qgE@;ʇ(K/ФHWNv0~J〈J@b&(?rݔ^S]0L}Q 7u$H"obxfE A'/'Ri\d7K x a1!iV@+^ +:qzDYл|Erys7HOk!q4w(qmMD΅a8{K<>iZo2OO=i#$ECFj.|pssʥH$p[ }i @d$PCF}< mNu#waCɟH]0(!%v[u_Q/wgݵXқ^,S]X :HD{C*( 0L%p`V]Ṫ;6!fpYzdhH# n':pɛ5Pef{1#fծ)7=ӡa"a4kK_DRU>k4豅kpbӎo\.p.k *YUUyFbyh !K'}J>@c n+9ļ|{ve|! w0T3#@VTLW_ah]cCIQG4nZ-JkMDmCw`݃fCGq,UҤdװp /eR) MF6B>c"?dU uΧz\|>I+S@S-6^-SyR^WF]U]z7hNbB@1 }%m "ElN?yNN\c</Pf)Mc67Z1΅qTs8d7tWDl2I mwjE[ȋ:CbBa}TiK_ Iq]FaYc+YEw@ebv^=ay||MF*V)1 :Ax!Aȇwv%|@@ IU3M8XbjgqIfvjTI2Eh Cd,FzE!.M)0n݇HQ1<krBُ:p}/lI{$P&lL)-JH Ruj]q2*YΉe6O?DmΏo>?ΔX$~J ~; L z)XB]UN7)fohFDBfFOh6K@N]-!E?-j`#mC'*KQ͋(BŘITmF3s&_Nc Bbp=pq3ґϺVІ"2f,Dggɣpة# P #ϊ0y )j,@Mc3e1xE9\J:1@ѷP'xM(jp#66Xl° f'R@QG "punVHOwZ˼i͹錞M涹V۱3֓USI[rC9l€b?h12H40e}L:OT G+vuc(wqmXsgz!Zea4K 2owy܌ DG/5yru=@ i.=kfH$2 Uo0T~xK = ?'zQYOcy53 ++zmQg4+xP ]lRgZf !ϳ շzSEaE +Τ, l%>Ѿ{`8R떦HA2f'@ɇVs=ZD2:&&t"?cS_Bq;WG))xUᖆ TLEMJ*6n,[m:-a y YçFn|<AqNG\4ŠցZ2z* DAu̒zl@i^N>P MH=Q4qXBū4BAFF$VL fs^@ZӱK|xbQ?=` ^XĊF&81 ON/[Vn5 @2/P 3-&72? =z,D-Vp|%dTSrF>hh܄QR"[rNi':M; &pVZ5Y쟺r9Ysf]}|]]Gr݃`E3Ylk'm5{X*B4b+ztygEӂbηS-jNK{ ]0M ^Us+NHj .S":r"f0ECZh_V'&^NjUt? ٦,|GU~o1x|Y&ա-P V&B@UQ Yof(jrs'> 4VI 9rM/v;/Q Or)LӇaXxHk2SYD{H,VsӰ ,̘!:,dրxЉ4G3rUG@a54oq=%8L[|aֈ~i>m를 g#͇gϘ>>I /8ITDK6_a#zH{!3K$i J5¬8"rS5R\Ru-N!<Ы/$ H*DZ.ܐiAh\ߖ, (|~Β/w}._vmEx_ykt|,;F{|s[b3 U:3I3c70eev+ ` ա;\hjgQ,A4mW.oM Lsn t Y1,νd'Y1Ĩӯ5e.}zǭYyW{6 Rn"cvV*'}(̢G$]5@΀+:Ճ@G fR=XQMVGT1&5ya[5sGW7+&.@fN}e oKc/{@8 ;]tQhF{،Q֛@a9Ye$Muz{o9:QQ~ !,Mb׎,]ޭ=fG*V9) N\(êX1l ;D)Qco{[1ȚtIlքF#F!OLfl!eڏrmPrwA oyN<ɣ?ĕm>Utq&a)CL,DybgE L^j ;sF>| ZrHj]SOɟWd; &C{u3io¦H~ʅHV)ݓӉ4`p~gcQjݎt=BZ#pǚF vM./7v]褣K%o0-J'w֌B? wNG<\6CC` 7F{ڡNtf9[Jut%Иd#oYQ2}3f'- U2a s[a hŖN[QN%TsPF{#Y5=|t a}t.}OeLD0ښѨ!ynnM4~=e+"l#b2jJ옡'O ؚ?q +|Ʃ!:o(YKee@u⩚.%Ӎ j lPhjz-;888(RR!($0s?:ٽ88x<;%t?}{a9m| {rToUyN-wX`ۘ B m;NcWm{VQ'lf,mW&cjZanjA_qP8]ˆĖI$.&ɟB^\+9UMRZtĎtt΋1lXm (& ҽFQь<:ƞSk=?'bc&TnfB Y#`j4hWP(NJ"?1 }AKF8qn*Cyԫr;_MB'8,U b"v[ و Scx-Jnc;fM+L~ձ&.Ϳ3- 48 ̝~Nxvip¡)&Xgn<"4aars[2eB?̸, ;;erF2iϚ>,D皐ER7-~3-BM`/PG*O*7)Ptd-`0KV\I ElGU,zcYNLNE zI5C3˱p'xf컪3Y#RI:^#\)%F.:5Pmry;Dw78Z2}֒,*LN3rPqJwV ;^<,w&L%l5k}:ϝx;\ՍBHҚソɅ 8MDcdlA+4.Oea#3{c+3l9BF[DKa&?/hy`JW*}>HF%Fkr<䝟ҘeZ3j>/f t2xVIi+ulv_M;7.E m ,Ԑq':#\u t I =C[(x?CI3 °//36@(1e؀v(78ǒsD{\Bz/^Ӗx7kBYǰ y>ZUc0d$bsW Gd4ՋZ6 *1\ jyz )ݵX&*erezeg}ZgzNCIGHubdoLӟ֒^1~5JF+ubQ l`0'Z7:2;y7ԩ;*jQjʤ+U>b`x ,l=?J"P@3r *'lpmZUMA 4(7nj67 2Nͼ&3\w#:BgxrGE>Tx}y4v׆{Faw^el eM d~{ p(W/fdhpٍÜNaWB]i U ӫ;_{'b5&JD[cdӐ綤9/PZ)~gckpGpw51%3aO~vld@P]R]fu \޷Ma#[n&-ə]Kx-<>T&QZ!YqZF0V;ȄCGgmdz#8GHxjFuxYv_( 8~=v:wPQF 9T؋YWiM&"oC7" DV_y.8{/519JM+e%|@5E= /L|m(酊G1 vm^]jH]slOZIԻsDZ j&\?Iq X!KU4ޞVwJك$I%a0Z ھy쏋0sn(Gh?@ۀ6oVTJ'03ebw]D4Q2 lÌ6MKt9v di084:6S1>AP~44!`}L/{˹?L2KV^g7 m70P9w ;$|jܳ3eZAlA$uã8Yl'0"I̥%ޝX ;\++ VnL'0s+?FK75 q%PM+`);Nulw`"bu+n T\6-Lg-u{~{jWQ0Z۷$dvS0X+];٦mn?RުA;{MoA2`d4*:*>ѱ qgcn_ *X!p`#Aַ,rߕw1c7 Lh n>qԱZIFNkցѯ$ϋ)lg(= >ZKsوvou%ҙ|'Jcq:VDؘ]&i4O;dI?z\"I?X?ab鍆i.EvL*if H_R_:<8l ű3Q+H?BS,p$y@_?"^GٗD c\eh-RIn<ûgx[ {TQ\%{FlCŠ"x|]N&< FI2JLda O=%I 3ð>]γVѓNawOflˈ%oʦ`C]N(ӁRhޗb[lZf8UqXJ(jԑ|ORP L 0h-AómW S!nqmTv3U兀T+cŠ1w HV рav2bg]5nFy:XRӆH?nw3>Wlπj;J@?B!1*-γe*^ =Ć4-j| SK< aPL^9NfsϐtAidSPᩱ=6G_Pj2RFOL$Z~^nQ&/SApfL+s_lj9C:]%| kv !w* ιr8L7~ ͆|x|ͤ)/dvBrFTo!~ =FRiV%٧)9}m-a@3qD]:M3!ӾDUkb[Z>FJ)7dt[4 wHw?&l\FY%(bEt۵X8N5! ߈22 jqI[|*.9M{H 7 ߈@6lM Nid[[0=PPFSV;:KTlwenªBAH$D+蟟b]"NMjnkr f-s5LP)[QUvad5hYfD@.Fx2yQeôѳ46FDi4Wh!Tfӯ.Y\+#{w /?L>+4>dw/Lp},MVq4l Z薯-o١}RxNL0!7B>AZ0Iޠ IIPUԡy#;,%aEoo IriWf@f8OO@݉ZR; qk62 E]B3r(i@6+VlUb*|I{$=54BܽOF:X?N!& !f[\ yrNzg( ٺa3L]gcBXC3uK%׬#G5p=lA}Bb !_GeZR_zݥjx\c^b9'=?BwC|C7٣MG ?8f)2OMᙛ촒!u ~Z"T8E1 gY{>FkeጧWty#sE z:O {}g8֭OVِbL= y8-#dw 8 ''ԢpŴqYhh,>fLs)·]eTN,B}Ŗeӟ-*pbj߱lV͚kKbML_a?O?~ jjT,o8-5\#+XMD9M'Ɵ pk'3;s/ wT4P`SHh+GQϯԣ|9'LNR|"mΐG;(:7nII L1w`m",7q _# 4!A~ғ%wXpe')6#a˿"5aA0 h}4}d/!|zf eica5SID…yPpMe:yQxixiQŸGS;RfCZ& IZm{ Y6&rjJh]Ij$#^c)cwG̩GYq.*qdi0Ļ ;bi )us}SLn$E~P+XWj2p3wVwgΨP|~:9˦П`<`pt ̈́K̟(I /*N1Ɉ.^Q7˕}5OwGyϯLPeAC& :?7V$2jy KaRwlU+8xINP[x@sR^l(V@},XCȲ޹[ԓv}64Iuר0|>nڞ5{:c +]lb ųZΛ1Ȑ4܀<>ʺv2J9u%9h(yCZ)]j퇿9:"5fkl(4*k䦚y@Ƃyp"5$2 #X710n:Wuojx9%B`XnvaX2Cp~|V܍9lqV;+V^r1TyM!`eLiAtkʿTGhyo=x# :B`F4=&ChTzè!8fh{d S$k\pjWYqS`_q"U ~0ӐOˌKJHlPo6&iЏz'3ͲV͏aD)c/'X("oF(kCM`L)P^u:|OD\b3S{@e*t vf{@Ē\z~'3-E9Ce "#`"}%7Z?\.cB\sƨK %5D(S4NB0N>v YCbؘ@܇$y? 8QSo1?-AeeڎMаc%dY xuk 21>#-E]Yc3Qll^bWǭb-zj[U*U~{MS<`'qM$@TlHoY?m \&OX(rSBRvj.$}#]=QCxs:ĄkHI$p%4p碾~D6)j//}: >fm;3wZjl.f&07Tސ;Ud9l-C sg%N*X = {X/#c,U7r_ J-T,"E.7ϋ>!]H?ɠ:;ṕ,'y\[ :*`BHeD*szH YCrf;HA?Gg-{fb^`Ɍ0͆Lt5EpVzF(Ѿr6z/%iO\y3se`ʓ.PJuPIQ &"BĺAy̕`"~y"mxU9:%#뾄"Oķ1rO:NRͱ:K<>^IF{,Fm~czA oFvp.ֹ.u%_qfd*g0FҋUSȝ~mY7x",0JfgCT BGd/ry)%(B!vb]ds§ r_Fmݍ:LfNaNq-XWt|nCȚq3w;Vnd\"3@K ?GbwhHcό-HFYp Tn‰ky.rޥa7/>,]SPU1rƁE(1oX=MMuz**uF ͤJֆdLѻ} %:-&4v'9އJ,[ U1aqESH # xc` uI(2!٪Gu&R}od\QAOt3"9Yx]0{e^I-PnO8b(h.k yHa?@?dz}7$n;';NDxڀ!P%rIDdC׻Ϝ dMz\GN; jB]G!s1= #gOiTWK2N #y4:o&]\MY^,hnY9{w'0[S"rZt8$ {=u}iNqA?7:Nqenqzҏ$= 'BZaT%Jse̥R%*T90իgDqWA!R)_s4$G} b,I xO?g_Kq)v!mG1GSC SL**c[, uTMA-l[J%ID6`Ľs|Kv{ O}h)ۄ3dQ{zSܲM%MVXz F @%VPX}Ei-;ˎ^P OfXT^VIC_+95OLym]90 ٮFL?1ʒӑIQKdt3 -3(4>~M}kt7>NHڥ54gDkg!{V#f Xf<0p'0XR%~K+E8A s"E+'R鋟 ]!_(zڸ233 {7ei)fà2,[QՂ+K|fYc/OP;á9M9 Kl͛Y}o'S+ `L%OBTaϥ& /%t&cGҏg޹LuDl `*\'#?0E)1Ch g_ZV>q^uy=xtVdZ!mx-8x_U"ˤ_.С)C̜<&.bf`^z.=`A/@ngK]5Q !QYKճ]>y Ϗ >;A2_3o{`Lg9Hм~+r&9RYl[VR/Ǧxo+1"_xmw# pMOͷdHL4ϑB|Eq _T8RAe䳱k'|BHQ"Ylx]J&189ڙ=Dj>԰U엖^$ ͑؆_6k`҂IM['8Q Ku/qgf`/ $aQd"! F[ d `2VCybFZ8!1TLdlêݼ-SVjߪ+b3PX\Ѡ({eriC`Tyaʰsu[j~傓ӧ՛"ao I  T[#b(̣e`ynin)X̿"r> V|Bױ}%j[O J=60M;2f =ٿ]+B)7wwnx\pr&\X]^V2^퉅hrWO!? Q Kg %̀eُJ8Ai8,onwQ;DMh3aaMǵ{I4(X|ڲ3M#Xn=ĂӜV04Ft!E]>kW_c6aVXWITʖ''8bT(n?C_k+p˓=% s|Ym6E':sUc4m!$6S`G.}!Yum<傸M@ RbmL=(f YFw`z\EEJ䱶):cI>K.&$1j7[r\yD\piw#"2ުA*+V}erJ>C~n14[ `8&B$%Y\hC7lZyK ,^E|Xb#)VP㛔"V ǚZyZ8Drfyd “ں; 裿%Q $>L!ǪY"5C~>4qX`u7G1t(4zOqeTQ @?`L.'u2ԍ8O&n? aq]_4cʗ߻!OjPgqHcUohB#bŅCMq2Sqv$!N+6| wAF9MB0J/zB_8q?.%+> /MrL'=bՊ @7cL3Ύp7pq&LTe]!@YR(M7`aU/vaE x:;^eREjz) _dgG =.Wʸ]| ύo2l*V!gGm}/ꗎ.A<+ڿ;/%.j^ >贜lX-S V76 :EK]PB_9ſ}IȫtuD-L3oPW݊|3FWdQWN|( 8%Ps /V!gU ERwxb՝hyKt_\ O˪Aυ`֌*{fZ[-Ętoѷ|t4%5"%! 7s䗙ۋ6PZuXˍ>R=cZ,C Uq=U͹Q/j7S b@e [=jn@zE:[a?4DA0e@nثYu,RhV彦rg|2ayd٪/{kE(X0|֥D=?aW{5 Emd)Yru2N\tqm7qsݢU%0d5"t3"7]=5 s! <AwM.qdX9 J6QmQ^@CY_tq-AA A"xGRmļ<$ im#8c ف0u_R9=|lZ,^2BtVz͒h.F gB,{hn dT?,ߗ0xPH}Ğ:A[[ l kh&xB2?UOmM]Pu)sEn(RTٝ+1ͅ-/gNR~pЬzˈ#S8ldτKBwsx+&) P,42d6 ]ik(?}I~,Bsba~}PJN>Q`2zpI)x}מzo ^ tS,F <fvcaЍ69ǙgxQVR"P| >ץlxѨ^b`P!<;[8;f_l'N j[|:ҧIFp1=hfSOl̋kctۃ-54M1ؚy*pKDƷ'v+rMk>MKS<%3Ͷכy1Qskp,F:A-P}džR5O_nx+s=, ]Y<A13͋W}6ɋy":w<}#nbg3\a4;dp?^ w (pl{e`;9DB~q|8dLӼz8z0c8+C+ԞvӱzI?D "+^X~؀)*au(2{>"ګ2ZwP}ퟆE wi@ t۲,R= X_ә3N@[7zZz?m/V|Unhn_^ OZjqL0dǿIJXDwyQSQbh=Knq;j\NKWwNbהZIhBqp ͓Jy-AۄdXd育+k-v"S%pfS.1vG>d4-<]S%弗z ?e#c2h߇\=fye_!Jg\9{h7;(z65GOlMLt`9_>"Pi#=0s44nǰKGA~.#K3=D9)lQNjOT&s!5 @Y*箈T,WlX!ʤZ^2ŦhbM U^G k.FL ;|ðs#t ;ʺW\M|[Ø'[ rsl n<H!5?Gl_Kݪ[殰Dr5PWu1rV-.?gLQUxX~WWD?Qfac{9,MNqzP^Y6Mi8,9\Nr9J3xq%X،;Ɇ^׮^SI"dofeP6rfis,dl:mx \amm0%*W%T\[wQ5OWy''=ߖEc-,H8OS։IIkKj;o7F[g@zo/"dk_ D _dJy.kbo$RtVdLP rF,{gm!7$ߎ>,K*' PvujzlٖO H5 ˂.Ye?//9sJ5HFT,?a}žr_/ 2͡8>(Ai-!'i$Oہ“*o=;İ&"Sq(F}iFṄ|o -oƊ>#v<Ě\rH aa&5gW4ݹ]wjg FT&$tH+R}+䳬T cnGKR.T3.ݭSv|aĈf0"q^ܥU븊f '6NtFe6)5 @(q{y>qgBT,O j+%9fpWz]RS,V,!/ݍg*Ѿv: o[hdxRg%:6BeB M~RulvNAoK.ƪri945[Sz{\MUZWv39Y-\( ` !b'"Zbʽ Ab&ځ+|f T._xcB1]ڂmKtF gxjyUA᭰O4pP!(m%%7Ʌߙ^[! 绖Nϰ/*$%O~_q ?k*"橢[TS%k‡AZ+D&"ϧ[P3~}7v[l|莖Xy NV f'o 2 NLiJo=9V )qjgDf<=deJRj"=g![] H_sMg~edUA_Vk;kHֆ!rNHxN8 4`)J ߛz3 j=VYrp7X-x.RT^W$1_pD&!yߣj>SVd#&#p;^fPR#qu ^>}8ޮh0jLUj["X!>Xo^RLHnwP ۿUׇQzxMJ xa.Xh3KMX3N% R=&q0^gkOr+D3heoB&v $3yY|z*D|bS—ҏiifKYbM/eq0DDQOEpًNO\g6q쀓ʉ멬UkĄ&L2 >Ȣl|L@׉3`a@C3,9G=>^}Bӽ`Oz[]Ü .w]sBŀ0Óe %Vuq?ZoUk>g@=[2mXOcp+0iFR{.V=gT+Z C獜2㣽1 hT@, [$XN,b_v-w#v=j+uFBt +`.t{1 "$Y]+G qgq-dz jt :EOv7EX)˅/bӶ:hsߜ:b[(аF[4ZeBa?ܞ;^- yN*4@CX:_J ]緮,XƵK~1kcT DG}hp)gn[>YN<Frq^ż'),L&Q|Y*Qo A-čxlo2?CR̃d ic ~aKToX1i"SFa3LMGC`uP.?O:vM)h{ͱP%khەA":|sWAD# oi$vSP9NOùZD*kҶhykYveH% @0wHX"ID\xI>kwɛ[KXrâlel>`KZ3#h渣 0y=הYKW"[Pg3DSl3}ȿ騌F!BzKB&ʡM]*8 `JC }PeXmK)Y*g#f5/PJt2L'!1 z Unb5WCg{I,j5Aq30n ×8Zaѓ^7GTnGAx({2@' ;TJ[mZ4ё;t{Лf`3igK.gP, saH;RKqg7xƴQv&ʈJJviFSH+ H5ncdh^1I~7i/kw-~7ș͵%23~v'/-Qq!v@i@,AMtkV>Bn0vlo{G G3$D!eD]mTO8w27x 1Z>JOk7^#s)1$$e„(Zq0YX=M7I/y3S \ rV$ι^Sޔs ( K  e+V^P=?ƪo,584gpr8t~Lz>{RO-d7b)BvH!cxp]"u >=ue%2?uv>iB^ڟ9*xlE+j. -o\o$*,-BqvpgИeҲ>Gjɘ&>#.C~ c!{uM}42&@H[e%2Xm!h~ra 'x&̼+a/[׏cxШf?pC^kK xyt/Xt'dXɮ)j2n)"mDmT6GTV;r0[6XH}Hm-/l PS&&bf!}5lq+iXQQ)oJ*}ň+!H[]Y1sv-uHNẋ<^~$ԕ˴M/*IJh0a=UYf!&&ױf=b<>$ (ݧ4c>mG4{MIocЩdqL-49ґçY$#Z6>NujZcKL[gƤd6f¬dS~\8aF}U-zy}H,A'8J;wU_,xP_gi0w'!vCg]/Yl]HկVF>t/B[MG 5U g1Umt9P ?D:4W66Uw.))'KTZqc[!{LzunBݬ*kMxQ?i@8^?&;ȝ3(0 GPݞhM K1ۙ W;q2dm>WL7$[d{٠4 s'!Lm)\!WqxOA!@l41qXаۧu2QIsQ>Gc7 Td3Zh3!?t;{;[ppxn/="rZ]hlV1G|m~Y~WfSN@Mq:_B!ДB,\A2ߊ{^y-qUC ޽yOv?el^ P6Z)g(`k6 pk Udj_b d4[N̤RRƑeTTFh}M5T+V/˝(nKKJast |#$4JR{}D#hLYIIo4ja>^ۙ]U!Qm+UO0'MyxZ!W 3M -7z-΅"JAP5m[xYڼU*QSDžk֢rVF,\ي:Qh|@࿖mW,'6T(796[BMnڳn~/݄]'`ԤD8C4Q n BC02th ~RN)Ӣ0J%DQBd NH^9k< "=p#EÅd[`G3+)1"]J"5@.Pgi)+9`CWbO4悧-5e0[]Kk5%66 s2)m6O |[Ls,Ŋ@H7U-, :$³!kdȓ=R00OFC Q Rq\~Q,9i"➨4%WvI $eCpkR4Pᙐi+- }a OG,k: LN8T7Fu$F^0"x~3ul+VsjW7!LLF((T;2 }oj^}V|o_D/SIZZ#t¡! sp]{ub]Z`]w6,/WW)OM/yVز DŽzP#IoÞ/dlhaޑߛuRc8&ޱh 9mS/0qWb>Df8q޲PND}˕.@D1ښGOtz%0+>̉T/Dps*y{RE!*N5 o?jZ:-=Y ؤ]J}L+G6Wu?pżZF3fڎIv4llpIaS,M%LtF E2lӂc# m`Jz)⤎CBN]2fv3dT$5>B:s&v;L>gʹԾ.c55ơ? 2|OL#H)}?` 2{Ede4~K Gi &BeNVTta6s#&KW{o0d'X<O6Qr[ [%ճPLSGjt1d_aAzl'"xz\ +# B?mAkw*N@7.X? +{ś:[JDRFx;M)>{pߗo"U֍} rҥo-9 q翋-Ƌ& OKW'E$mtjx,]gDP?0Ppq;ҥCK`j (K!zq?7Q/Na]g)9t)l2qSA)lԠI6ʑR1UG9jPg?C3y3-\W1T@'c I y)kc_r5 =@[dɛ>(KN*u>OatNP\PQ881Jxu9<@Հ1`!}fmk-ѩX.~3=oz( (6U"z/58zAdjIfl7 :[Rol].*d *1¯g?dq| ar Q #d,[Ho]l#q N=]WWhf\\ŔԲ+o.!Jh *1ԓ1L['7Feݤ`uѨ| R2=.-_kXe)$rMZ@*ox69bVu)Ч {7J\ڎYI^(I'X"܎S`0}9"gVsG.uWz" ?EC y0\'PЉL1E ;|O|:tx16m1H~M )JFo P6t%WI/gq`Wr/8:}$b-Oa'j>s~A.r=Dk]{~e΍24钖;9U+hY1_7JMTbGe]K4%[ o*]}!6p~OOs zr r(( VBW[<1,1{:!h^  Ce& >3rUKzQhBdB/~Y0xHk{<d )yŽngVq8M_9R2q+K$Ԍ0!>zp$#JqALE;prT\2.ZDӬ_ۈI;ٿsFea ʚPD8j:KDR<&w;#f K=`Hh*ڀÓ#ncޡ 1e?87] SYT9dZ)T1F I+l4>L}ŭ@ ON;'EEbqNM]b.汓q/\"s~FVG ;_h3^WPJ]Y0Fj9)կppq5:f}4D}` @yN[_FQge3aԯ\وy4xH7.6ߖE:97oty?0˱7Oqqè/J{ek_}&u/F|c·Mw7f\`H#gx7S5k1쇵w:^[ۊ3W-loůb,q;pb=3|Rǧ7D~[u롌.Guei4I9uh3ΞuGN2uעDdRek$L"\-pV,N?`\E0׮&5{ Z/ԏo'CMH2B~W2дr O6Ʌ1 Z\kteYpfw }vTxV_EdѾ{b5N 94кFmg 9Wfhiؽy"wSe |f5Lr?Cr鋸x&{$[g9L`,a.8is.QlQ̲)[ e9-O|tob;T\^x#Dǀp CkQr\UJS6aC]=9x @aa! 6qpNl:o^zV/뎜pZY]âC&^6 "P^kXZ\!$ ~R' X\(RoV1?tW'3ۭ 4% 8vs 6nêq6D\Kͨ9̜k[PMcu2 ѾHЅa2Yc-y Yٯj+<+dRh&|.`y6D!A~ʑ^Zf,&ʉ$á,LjxMi2iPZ1Cͤʲ{8hU Ɓ4]Y H-q…tHfc+Zwo4)džhHI#Vmu[p;֛k hoѼ G:-kBXOh dWl%oEѻq4g.c6vp)iy &WD`>SGKZ67W ތԎ9%`ZQ{r6"$LQ j.aZy[_*Ǻ D>nm7)'z J#"q201g!P|rhZc B|`<yKSLBcRquGArYGhMQLQTED5N| p*=[5?iDxzu֏h#MR;wpc.xWN+҇$QjZ|ؼ)w3Cـݔ`Lr a{3^& 8!?c,"xڈ Ve7w@B_PF&:&M^)LF|t,R2NH?2n lV?r! )},4 np7LV-.h :Vc!{֜ +Bwr<Q cclvV p}WP[Z@HHje#D>yWKʳ u$SLJA(y/ɋDeed<8Jt 5 dL,TC?3nX`)Uo?W6 4'נ6Vi򒝍aCK7xic((PbhFRq hn}*6DhOh9$@=ӕjac.0`AnǑCNfIiOc u?ʥ6DB eoܱDU )gRģBrVr OSYO gE 0J=d;Oe֠L;\v"`tѬgcmb[Q(r] pH.Hܑ/i8Ko}TAAmelzXskN/}$՗(,EAL9V^t<_eDc&Z4mCfMuƊ.Cgx]K@yBZJR87l# BM=nN=qѭ3k3@)Q|I56 5G4P\ v9:ZcB?Nӗnx $A|apgt{(#a`mֳn)L0β`N#%գe* tuh`GdvE.X֥VC=''v<e'v(M{95StəevO'@[r KFELR= K0Qm0XXQGdp6cg~;k#JJbH&mvՒQz=c1Aao+6'whf;V;0 e}JG:4h2!t"KʼnmWk@ zkWs;tZK{[j31NqS0tLy; %֙ ï<TI->(eV$1?yY\!@t25\:HHkζ^ItZU?<>:9W3criPILܹ :r_ŏ,z9 E7TOt[)SÊŷ|gYci7Q>j6yYo5ڢcaR:`*3 ՙmLj'm-!I;!=}} |-I]?u9decG̠ix=H^Y=<zT/belt{TatLy `t$@Ru5䐅AS=5Of 1 ?C}cBݶ|jۆPHޮ>7'H&[Z\:REvRڥG ʹFcS&k3E-$'Ra3|uYC\R3Մu%։˽E\G.zcڢCIS2 *WbtD6/yFʋ}K瀮?n#)(Fɹ^ɕ،:"I6(#D&CDl<~_rt%3E:h*rf{WBGPN*G_vrװ1UK,.S2ɦFL^?[YҊs%, %P$WE!RpX1jY R\OlUQj"5/^:]oxWgr.̇5ӼYR$82hi#n_^Yq< W:((v7xXS]<Ǻ̚㲥* ]7 NdUӑG-"nRMz7=tU))Qv/*}?p]j?^:&Md}YʖPfQ~?%Dh.puJ6ǤzUDDa?BrL4:m=}^iCq}L{2m5USI7%7ulik!u4hnyp9H gI !\J" b7E^[C^`5x6Eف\'i&Evƃܷu e@_!ic >GҤR`F|î_"rtt![9m"$h?}<|Iq\)Yk-bGKc8B|\Jypaiv؍#޸ @ &^8䪛Iħ?){=k+Ɍh^FT'uc?d:da׌Z]?%(c s6ۓ-9q_r9fHestT.p h[ X,k9CZ>M.wM_+rgb_dIJ@:_ϟ1cYl6Q?Iܨ׳r,~vy*E{/@Ɔ&#=DisŽ7d(IBf1ȫ PGdԪF$)4M>X@Go-|J~_+r҈G=*G/\lx8S >! iAG >[HB8F%Pu:ЏF̽ *SbDmZKObEZ04Y{\WBGˊ=AY9-$*PnTkC9D٫*.5RTj1GIWLZ/0\QjjPc1HdȎaJq[cUhZ.bЉ`N6ZJb8'GG=|ÛX { ^Af vuE Γ@9Ĕ}dK\΍hBUǝl ۗnJG.VqudALoJp<論O,ggP[jwec*D [Fy 64 Y^u酘/؈nVxҵybWwnjGq!.Zҫ&C7?r9 4ɧ ji\ 8rx'[n\liUb|JQ2?0pܠMCIӡc 7sT(XL3=Uk#lYw5uQKZёh<&@/GOm1-`%Ƭl;R, H.!Rf^|a6Bq/s5?N/S..c*dE1OJvК#[J<xS^=W5'kgI;N p~d_P/^w9"3<n[r5L5]0LՁPt?$eVv#8Rϲް,QjsDuI8H|J,!+r. ^~v''qZ9M$EKNӾYmwwSI޻0 (v~y{QE9(O r$1n2v`)Tu +EuF"'1G"kAI~V\+;t' aXrzsI e'3PCy2Aדq-fHqtCލ{.SֶB1WnĒ}QEθKO D^G͖S؇+E<8 W?:-߳dṷo }; 3TQ񸮛uaOp]P%OϷK-=|zdG_Rgfބ/-κ%0k>h5n~hLSiYsz57Ջ~Oʆ|o$eR>%Є 3J"diQE)#vX/93yn8Y\J%]Mne2KG+ dJ?:"g9/U `@eai >0'd pl׶e7)c,|;'olȑ1LEo&ܪz$W 4-Μ+Fp \BN-Jc%PlN`'Aą \lJWU 5:Z#ܚծ uwU(cyad ɂ5FJ~&9Jar?{/%<梼 .c*jiIB9$ J ;%Nmܭ*W׉g<ӕVWgo=t 6(i: |°Dc+ȗOL#^tişj83PzPaPե2TOzsE炸2Ԙr_eU.  `T;8_` 0iӉV!ieXV4B7I&sLgz AKƞ[ʴHܾv_0rpoVN}]%@I^>z.eLHT-]U &NR%ьh x/e/wL샂gctr}{Y m'M9+aXtm߲iPvp%xF.p h6,Z %nxf@X8-DhMIr#~tE\QH3IwLsxt*>]V^*n({R4DCgJ|$+ ';዇䶈$T{ .<g2CKt~ K>U*3G0GnAT>Zb [`ZґE^mp}f m2X(W3i1 DQ-q0ם`6 \D|J0^@l9U4e&Ŗ \o=d.'磈.i/yeC,'N~h܉fP|8ܑnN<<% Hrɍ9EBCxǷdjBt䰕v @H.R.zX̪S Zҳ'[ee]t3P4Ҥ׏A]ogS`IO>pfB` _/ʋ0Hؕ-Iwޞƴ.g.L_\ZivIl0MjBl!u/S}_tQֻ /ၣܡ`BK{VL<H}sxΏdY} jidٛeaSoq^Ԑ5i[6t ѿ́a7I"~`k:sz[pks\RCrz8-!?ޅ;4wd.,8+F@9^ʉw Cd?vO.Rķ CŜX!{uMhF< E`h;v]-7ZSgÀ tu%{5H<߫0An1hkvVZ `]ob0D Dks3覒e}*(KXF?='?Lxu(>΋C&?-l8ЦatU4ڣݰ rħX0kD NlV IiC }H4Mˎvo€`)bg-Fvw׸l,sjձ^ɏV_&u>k24?_3t ,CmZy!sdGĪd ɟڤ \0`(zm UA I?< ~p䢉~.Jj6k"+kӏL! Kc Kt(ip-N^)+<^Ұ2p^('+(m5|7 ~}` ثܿ/yDOn@A85@h3j8/; hB{f~g=qv# ƌEmHeNࣇ/Trm86e=rزƓ'EV6Or*]whfawJ^ G * k:8rqo 멩Rf5aYs'mŐȄJ:M[OzBI$GLpߕf&.O[U[lc;{ι!SGjAͺ\i̽Nnu.ȥ(*rA2UbrVvC)e}2+A1;s.g ]b ْ!#̂4glUpOBMFrYz/`3h0سAx9a]=fk^r-!`Ap֞wMseZ '=~ܨޑۊv#ךؖ89o]nDH'LSq8b|mI3Hx0*;i (kxHd^W4i``|Fߟtnxa&Ȗ *yK Re[E#$_=)Q13hf~b‡أlJOwD(\Gkk(R9d7d[p7 _ta}J 4)`B-ŸxIb<iܤE1M`5O,*>]L|0a?pz-'F{ ;>E2ρy<^ ˼+oeH:LBNqCmsX!b{snY5GCBNDD6PY%{)DZ*;sƞso)fv s3WHI>{ٮX~~5śDu"@SK-y37.*H|` IDy Ș)q7(m&_ AߑrƠ{I;N0 st1O3/Ȃ\kSڱp?K2* jx68_ FMb*J{(TۣӲ34.g NR{ xi!'6tr"d '3ѳ-|!^ 71΋F[*rq^NY|P&0TPE?m: -{Y G >r<^V\h\]elxb֡Ί̖yüpJu?C:! vB֏'[GU3[VbY;6O o:|À]\s|,XhfQɽۋ?Ҋ;hs̍?ob8o1 rf \;8:;}W7O/xeM0 Qv/X᪪9JշdDACN[MAMdNa8eyԃٚ^<B(eB:|{Z+[g McwUU Uȥ8I>J}-@7k7_~cn069 3 1:?gN9 2}zv a2 cBI$P|G7ԟ1RngY /ZϞH9piAj7~KԌJ5։Vy@]'DZfҮPZHJÝ\ՆnIfDx~|bp-5DMW\@?3e{F5N}QyDa\1e` XL??z]J /tMT Ы5KSsq_T>4&FuG U;G(knTtjKĨXNa "gIƮZ&8iVeIoy-o r_s#8RY u>-]>O/K)2lW*iI9}\[ @BºګbSgBXi\71oM wn5^T[/w/,6M>߃|kt5m2m[G"ɉϦ3lKXTnӰ[G) 0v!vNlE0FijJxO90,^RU .qŨXn Ne*~c4 nt!d5! yÇTn3*ZEH+Cp>-Uň+EK]UΝțyCƾwP >HdBkrc Є&Jڭk !M <%oh;{Oڳf_%5p3G>\? ;SxVOpbVgkSVi!dNk7o 덝*"4M8iv`etl`B<*t]io6C()e>]{xi'!dhX zi$ܲ)Zt:lP̅U{LdA4dj6+ކ"}sGOϠ2wYce \'D I+D$^.ikS2#b%稇 fg8 A_I(x*{~BܷD20IJ6 /@>?Uۈn*=ȌJJrH38yef #M~kY̏H{}}.jqrqaD a>!?*nRvjH@6,asV Œ$IMe}^:}pO~PI MAmt[R?9a g>jSSFW)a0폡1-[BX;03E}{WB|'CșL5͈M$hß2`#k]𰈐K ]~XUF=e|/稂B;Rl{34çFۑ -yIhIk^_pN+x_ږӷQT?_@mӛ Z"jJ??|E:z{#sos!nōd6wS#غ2]HS͓NOwxۚ gƒP< CvݵG7䣰wWl;.q8^fOKk"$q7O,^Hg3X o30~6nsP7 JX;b^-|6G&".)5)G-^V:zxrdL"i.a* >!B"~Q#1(,*5@,֔(:$0 KWzB0E? 8`J e ^?N$U\Lp؋>ր*jA]7dRw>4lNr3S i+$5B컬}RP}5#PcāV̜eH ։ LL4vf.P)A) O 'LGtBZ%Q}&sLi9Upi亱 |u|l3SNcB7oQ1i`]4|8㎒=<$~f2!hYK`ጊ/C+6Y}9". !Oq.5Kl8RlV9+h)YEYbsUx<*0 'q/ Ӷڇ;*<dEvenх:&7_mJbZ\gK{D tkwEjēF)r(1j`0dF\:L9YJ?3>1sE4%ڗDH"<@=XDMQ; Zww[}ߣEaz X`Q*pRPp4{rgz_D"N#;PھE,S(ҙ i8\;]a nzo혪Ii-tu10EabAEfY, cRZAEC*#mP7l^SVO R'dYb秔y8"bb5Tz{"d ً$yy&P Y)1 H*0^25VTegÌ81Zt"'aQe ~Oȏ$ v,A0u78kFV.Ua~4>IIG]yPm o?v =R|oo#~wP%]q3|57ƃD![c;wCp[j{;i)cmRjȆ2Iټ'PҟgśBr0%Zǖ͈5 7`3*P֒YG\n%zĦ v$#7 OZy0~ -=dCk+=Ee["6}c"$N:8!3Mq&@RoфFHYl< b5.2XfG-ۑ9|+ BSFUˢO%;{,?E[MT=a IU#!Y`d(<Ϸu S@Bd/soqH27ODvbKv$klJQ[Dj^~XӐܪ\?r*{b׍t若Lf2Ù7L궏3{W1.2XN:&Fzn@sjZAq}9TO"p蚘PAT*c.7Bz$uQMc ՕTnbA9%|}?,!=Amk*&!#Cj $H A6t ̥h<7$jyA_fPS9`\G Ye eۥ@ -hF =?4FR,tmsFoj+!re:F*1~!#/JY:-RhdA& /0yAނӯUjG3 o;Cm/qR֨%Tu#YBzc[PV*ay:_gZ&z+%Mʄ]y:Da.W0K 79EK a zDyU¢ d +\N3!܄%5NYx].1+'9UHLY 캴r_p_NcS16MV({+cռٴ ~3wX(ym͜v24L甆qqJqA[e?j-/.l[M +"!6&^ޘ< OīՕCS A7yZ@cf'P|pE2pq? 8>O}A\TwgK-rAnBNfH0DYeA0U\˞3n s|`WЙW1"ϐ.Rbeo@KB0h<,]a]o/@}M} ][*َnBaغ_"ΪShץ3ϼ]xckrLw-&l%ቋՄ[ْAY4:mebn4n /+YKTPvDo t b)'v'orPz`,s`e_WOR*Z|VVd]POZOW3еXW uB'{9DF~j퇄)[~wUYYC$Q#keTۂ913N U^gb oiB|][ՎtKE tL쨺F*LA'aezu-rs01DtA6*.XJ!v3ӄpSbq_a҃|ﺁK_9Yxjn}I$K0V]7]H rO|w0b.H[OD#3{;UqCJg7=. ]\n@y9fe5a *=&xTb,0"ӳGVu@xk3U%aTdX+'gjNO{DNdwQKtR~oӾha{S%fPHn^#]=(Xz7 d3߄Xb0 HBv f6 Ed8:>- f,da;U:vnr%eJ\NCp'Kz)tbutǵ^c_!4rAZ0ν;zI/kXjD!Q}̐Y;"o]1/b$Nr(Vr!]+*~4+ȉCg>[zD&KK@5@Y!ksKbgĮ(vIy\ViG7Qݦ@DI,t;~@ˤЕhw>ә9\6jU+3)kYqa"dtpGy9X1DPBETU*$J으%t/VF'#7Y7I#4M.آ B вd:W"|s-*'xMڡp|eD(%MP3 J.rrN׭90ٓ=k44uT6)p&ʏ_WYEt~V2`muPF^ 5%lh ~da=<4~? B \A|_GcSMĺ?OXրbUVF1SnȳX~LP\H~t8D'F³7-!f5}!=赧K]WNJ$&C~9]20lm qĝkݺ IeRQח"rI%_AW|<4l#|U菢[05zd`Ôh`{"&{tdYV5D ,$dm1-PF Znp'ϣHJ;(/+$43a~)uEӉu(hKg.2<氰;ơ3,堲RIW#5 DB\gے {@T" T- rƧֻH ^ǩE8Q<ħXjd+ߡQ ؂J+z#G×+ڒ+^p1G84O^$}s@ٕS`>MRD!'M& S?ʛ4XL[$S-tyM^OPAֻz09vx~d? N6)3}ƃ{~#m߬wG^wC0n% dcşA3_;0hjZ'&7M仮JbcQ^ꛐ3Y_R`[x$ĥ›D0OaX̸yMݼ# 'ijjmX*iCG'NlX=9C휌/U !sY5b &l6 +"J4%^J$ETQ%'w]4HZ HEfI)|G1oAYwmRdXn8T\Yz7fK#~E/4~FFBF" T}}ޮ]gqb ;ITk^!,Ž@U|g¬)A i1 qwJX!,FLa_VpdA@y>*IrGH0uk \J){!hm 5{6L=)1yG Paݥ)tc  ^pN »rs5a{Pn\0a@h3q#|6U[%<[ȱہR|y[E_wfłe蟇q'#uZ^-  :^A1*zY{PscCJ̎-*H/$Y`< }Yugј S~6+RĿzZ j5osN<|堯vm(Arm*&h gO6߷Œ{x%H=;T98(9_IN{ 76/R#M^_"#sqӞCMD$(,JQU8XivRsoʋuh$|A|7k_#`YZq+0JI%[!kMȢ U?p(#'AC~y=߿c>;[XڞygHD0M~AaxAgI.+{tr84j_WI2\`r:/a9xteg<{ T[5H[*l:Lv&sV>lі~KǤ߄1`utՇ]bl6匛˜OQfLoLd;ϡi5H-/Ŭ͟>v"eĄs;w Ae(ym$+89\G_eӀrk 73o*=:48P-]A#0H 䇠doz7!ɻ1Xʀ+s'&谇:PEQfjTp#l,R-J\Q^ }[ghNICuB~rWW=\ZTF>녰]P~fOf^A2X8z+riBr6-6JcAbo8*r:2T .Ὺ]s:|\ѥ{xp6 ,<śA+9Cvqt`/&>8FqsRn5v=Kd##{IN"DDIɌmBz]-q=x :~ـNgOa 8^G4&?{)2\8Y5$NE_at ~{t rWlrQ N2Bナ׮шHRtNncX$0 jxX=HȇD825kL6tw_Gة4ciƆ4Ey߿ F4,na‡ %&N\䜣l0HTi)wbXJ+1K8D(%u"5h/d(.l)apWT`yDQNBs| 겯fP'j~7`LY~ƊE? 4KsQrwg!ڄI'3;wzVCXoC0?e]Spoÿtxw9de48?ܷe<Ӵ!\4jBڄ*em.z/*0_^SAr):x*KǮh_dnrR""vf:hzIG{Hk/?RL\Up~ "SV:*G@Sb?vrD}PV0? qө[h5b Qhs#/SDWh·?` ̶|4`+fߣ26y2Ča$Pj+ ʜzHc &=p̶Q/&cQEIn(O<3C9^x>)\ ^:0r}t::YU4v@}LC $4;8y(nI+źkEFmԚQN.& Y|_]q eһa ?s$X:`D4,2cduG= cCF@;զ NG4)ZLfs5@WQW@G{s{jRRju\rol@ g06\ S%S %Akε @ǩd`}BPg.ʐLl>J\inB÷kӮH& Ӄ_a F5 Uc1&ު~R"ixk?uDD#viY#} $rx#0pT[ݶ 5)9vSQXZJ%Gz $tc)0:ԦִDfC eV)Ѝp<wѶ-.]Dkd2^ 1 {UT)Jrj9<&_;clŽn( ܨBr=}*b"˱`:.Z!$&ܦ yL`{Z ٦?-PICzpH.^h1"'BtYbgM~|aX-: F=T2\]'x5(}6ũ;F}`!KwF1XU8C UKA)<8ѳ gQ`e,W7$h)/>PAi …dk WX,JTo[L8][t>7vGpF%9xp\&&, -:JUeIrZt_][BOnKQ@1O"QkP)њ>y>Z'8 ԽD b"m0TzqU@󴀪Te4ɧvrpt CWM3{}^P1d~jSx30?{Hy3 lHZң,]Ə1ʩo􍆊XGmFpBpfV^vCxqbW fQKKMOIS5žR:%yjkͭ&ܶdfZ6!5S oqEBԔ@ TH [\L(W^"g|w^ٞ-WObbL7#y^Jsel 1;($(' Y6ǽ"JQ!ʑAxR+Ops>)bE7_E5cm 5:?\2nK{R"wv[ Bg2pwɱ.9)@s#|~С/gU&M P/ fy iDUs,OY/7% 3feO[zn/ڭK$vFq? o?q l'1쥱d׫זRѤ[Sg@h/ -vMx=@0pTr33?\UB 煏=-/(6Zox t6A3[$Dh־έ ˇ8i*w+D B QOBGI(ppZJ(5IpDy"^. XGSËF#7zܯlMAXcbu\Bޚy0Q) 4>[)tVbR,(W5R|bKi %?9Ҫ]ũG&-z VN@IǑ 52ҿOɻ1z@W`k:^}Sdᶊ+*m)m\y2Ԓtt@`DQƋ6u78ŌjX-Q2F>%Aftw &3 A "M1Y_^I/`ΧPa屇Xub6}GLD+3X jq W䰵Y4o,~~OL/ͻv(XAn qVxN14g0g԰9u" ̯oR/N;)F Il` kX,*aj͋?~bpU1gx9!Lj*1]:]a?gt{N ֠ er7'^!EhQS ػ Yل0"[ (z!m"0؈f Xh]~Kġbb.-cƁܔ·|扩R҂@kAX:jb]dXG*ëae4YflN=1eMBC (bhA1i;9'ѥc,}sZE*QQA%Ew\4AxI1;[م*wfM2jJlrOx̫8<|%Thv)#G'co sPQA O%]|'2hHwwY fEbfe0](ZٻIN7j & $rps&ޒԍ2YGsc2B'S 5Gyyжgd~,V!\V;0< G0y.ϹIGb&nV"_RE7iRY:E-KĦ8:`z^WaRQ_wTzGGi.UOMh?ͶǫirZ0DQyf~G(̝_7cBꮃ iƽwo2;ҿ+*B+1[՗C*Y0Lz)IBʠдueC}j}9ךЩ02 4y)IV2Eb7yO^-!2HèmLuv$cՍ>n5%EZ`7C]-6C_ZPCߖN/N鋶Jil#oG.,' N0vo<鄰W-l|61Oq>Js2e 7TӘC 1OhKۻ]J&ڼrAM|Wʠ% ;dGjJP:쯕GSAfuP#Y\4E: e-V^>^ ɥuY^I6S60u{+eJ$e 7gKgͭh%!eO|^04Sg~4+z828c5,t `U4ܠiH'DL@ 8ݾ&;M9Wnsw,=L5+EuE:Dž6cxR0pѳI2$I}Ui ,[FU^I[1񄿺K!}ttםqo $ ܒ0nOcԡ\<jTY!&;%L 'ޯmnߢ4Z[ԬCCYR`2a9hOd_I= kOp|rzt)T,ix} |];Gzgmi:A}@ZUg0s'j MC8tz({ՆxΌE\36$8GV恹B\MX,Bb^ x'〮.UJ1fM]@=hsQ0sttHd>[vbjv^CHn )K|D)L&֮ GS}v{4lwu1BT 7::ۺ)ggNtJq~.,-H8Ra8.)lB; o0yX-hSy _'^vY:'"Oz,tV茸tsv8sZ}D/'^9y [hnK76ΗJ$|F\_;N(dYF U[Hӟ sF)stAwKQi|{' EߩzkdICA,j.fYa9c6>w,tarNQQ•z8ۘ\gUKPO9zw` 5(x}MK*HK%'U)M&->ݠ9X|<~)Sen8QCz-r-h?^OvƬbŒK9SM`R.o48GZ8.{,,cUjM#;gmźb}\F4ն;Bpo&Pya-w!26"Uo`J#9ߪ01Ҡ7-"UJ$;}05!\"B0`}-@ƺխ?͡$a-{Fh= Uz[Z"d' +A*A!|5?y`RL9(ҿ3{@~q(۴e 4b3pZ*cbn[i&i{%e` vx+a k\rT{.Jc;VQ|PFɣ%ndVzz'K&.!_ L7WīOAʄ^meb%6[<|؈>>^8ȁ{! C 7L(&X_Hs*2p3V[y 'PP舿zk#2IKuNAR,lFl a!Pqjβ]jO*'B"HL1ȩj^p;_OTKwRےfQIwGa]]HZzR*3vpMëvxIwR_{5`Jv_g*0:٧2ڈ¹fQѪd--*v:m!qcY /#e!(#xytd]sP-6*:g=n3Fh"pw2>[hۊ//^Y k ~!PcEc\ ,%(޽|tW?n 4 msӈX_ҟ91#CJ4d]qLƢlW%:Ud!2/_jU 4O)Z=fK1Lxg'djFh4.nK qU{0THBl=[ʉM$q뚣2u-I,sX6ruY^nHe~"18F?eq5"c8Z:VߣA6skh7u`Y"}qDs+2@ONC2tKI7Nɛ^I/SB>MKuFATMo,[l?fJ9DZ,Ժpά-C7EִmX-R*C[?W>9Vsb}:ðRVb3/a)_~T'JLaoHtN r^u7S'SN/t DHII|Q{#?8C@F1Uf%,(#Tjy6Fmqsf#w諨7Tڮ_zz>v˯G,%AvKȴ@3ںK9h0Et_ ~[)h^Zۡ%-*M|]|:czC>k͔4BZwdalܬfQJQm=Zα|q #JD)y TEקݱ9(|ROطd2{#]M0_5e=jM`@qR)k> 9|4pou&0^zY9c;qD*PvPx0V|gCc9^Y(&O@ ||+{&yNw{SL9 y\{3v"EBp VnDɜw ~sdIٌ):4!TXtgк"%@S[ơ֧4IcҥT{;rZC h;TCfCl"ӁՁd2#0-~)W*'t5V6fMe:~̯Sl*~v(g+N7?zH6/iK/Hf/{IhNUo%k~&+x?Rbz^Uœ#=W 9/000m ?Yٝǵn= |S7gz4H^eVT!_ᓉ# 5F{Jᝍ? Jf/4> ՔfSٝ{J v'&*9y CׂH_fNxdK&,775HjBRGt(xlQXOAy<NM^ԎB=D7卋:u++ 3`)% d9" ,Y@laA"s}&lcm_lH4q;IgaEGbPe1, \Fh/ 7Ѧ%}^%嘯5H#K}\C ː uHЏBw+^Uy&3,hZ}x$|[0) sm>Ħ($[gʵx%APUDp4)d-|?*D`?(2P4?=ieƎt!< l64]kPB)#U[mAs[p]خd%D3omuc\8ξ!6-f")ZnP[Z Smys]}l6} k#V(yZm Gd+9*Nq杏A6ͬݽK 3ıWwuV?[ñHUҧENkedyN(@B@CCHt<5zp/` h<7WGKY쩁s]Pxv @t+Pȃ[ͰJhTNb4'qU^\* xsX!go\5Ih!pG{FH>% p"ED$s}B1aßnx18)ZРnc>QUBk9#Ra'ØY=1N>]^"M5zGb/; k8+۟-(qVmVVuFP.v>޻?x1%6݅)͖aH& .\ۺ7ʋ0*AԀ/z؁Mg!ni8} Rsmm}#)Ā{fP$%@Jɵ`B5rO夼|IXӌah,eoE +.YѾ/0Voe T/ZXJđ,B;giJiWqf.yQ&$ma OqRW<9kIF:ݡ[-cϋ`;V/ՃnЊ[I6-,D ?^pO_ P)h$/^OT b  }LK WQ^LI8o0tX;Ǻ\{&YEhEqkT"Ej} x<vˌe_bbDWI}~޾Q7e1Y`%(NE4ㅢCXYDfEN`S& x|mKHA 4 7X5|ʺ̨¡[3kHtyϔKzrxZv4YE$}ǓߪDENAtB"\[T6_?v'֛#laqx{h&j[~˙ُ`"Β1Ε bհ6hd/Z!3ZJP0z?߿ JւFYHkv u (Zo\z ؃Yf0S&1-@ \{CkʔY;\ R;cr܃:fIdwjU9v|e,&doYeB7)a&; ݤPӍ+؊42@c;7x6t>΋d8wiMӽpm~rSs}$j⟝gMRx!R[o=j=s 8=&SX [Qx=D2vjQ q9g^LT)1#wLǢn2,WSZ`2G$kVPz>ume\;~+M[lìI-$&l } +G6P>Ob$ $RѬQl{,%6,K4W;4.cs:l_8hVv8K?g:] IÜzLYn̟VL0rK'U 'Ø7p]ٲl+ "to%nxvs0’0˫0ˤtLc{<&Cmg MV,}ѯy3|y ] W,|k}5?YYf0\n "d&xE2D9s,AG`yer30c@LJ=&1e-3k6.5hDmo_몍X +uF53U B⣷Q B@Axpϑ"6 TGIys;..ug_G<|4BiI5- elvf @LNe;xV/ba`Ys9(R5)s8r?sXATa" OgN-Ϋlޮyh 2ٵ^/Y,G*,~&ƙ1`zS7ĩxc4k$7Rt_<*dl+.%(/a%:t#&aK1VvCg|/@M \o͝*@tQA \tCvZvBJ&3zS3[]xd!Z9HPG sGMD^)kl|bֻO3JfZ_zJcŢ;|j~ -r3J@DjYeF&c h~BAJ3 xVS-|Y2]v4m59hYA>Ɩd*0|z;>wlڹRKFۋڢ<-)*10__kg8|z ^/e}PNv&Zt& ⦓tpu}ɵ2VH Tf2%B&|LSka hWX0<vnIXJitWcrV01ߙ[@eYɗ%L[ {At ۖg 嫄 Ctya}}QM:OXՎ/5nC [O2#h%8z7ٽDh-}ʿ*0YQzވ 17Mdr YD 7l/X/|2S;82┭>7ѥV15S (Ո2 IdDžjnPB?u丮}#ۘS#gkx9E$ԵrҳvHۛS{| !2_5ƭ LO!`Ϣ]^ӎ"#r]t++'|r=@w޳C*?R/W+QgO>ڣ`ŭ|>EDOxdyzFxGRScYLj(c0xe" Wl;YqeFGPOMG*$?a@UnIʹ]촭 -3wzw[zTǣ!X¼|ڊ"thLmK{b!uep3ೕS.|8>%岢 mbѳuE@w;ڼXؓ|li$9zb@wWNA]Zj9}78m%"yyMl|ҿ;- koU~fUj(8I= ٷdI/*+I"g@UiSWLU qӓ5YmɶT'Uħ [T]q}jEEx\f)$|-9.eb2?)$U+;̉|tlo3gR( pPO- <<#!"Ȕ|$L-.xi2BY;`~UR%O,bzbxR܌HQ5:yuo!]'sz<C1o-JX%=@%j/+T Jɷ, -}3K;n6r|opE; GQDlc΁%& ]2Y kIּ b"e)a:X&pZYj}cϻ$rqUdU #??~? } v^簁?^;c>%8򡗯/yEx4t%|M;ϺgͻX(B^?׌4hogSy^=Q^t(6In 3N1.X@MA"T^v !Q-nf}LD7,ܻKpQR(ZELTFvr g)#7>;kg8;$3Q\(ŶVНhXSFqe|ªI)n:,>~y8FKtT{yr@N'q"b2gYDQIKQkgܾvcȨG 笋~ Yq x=WۣƀAt:NNExڑznS1_Q~:&UfH|s{vQJήʊ8"|P"F.7׎;K(KH3Ɖe^lm.S.`(9q΍߹~\_x`Ba^٣o#虡M\5vn@Pzŗ,b4L9 Xe) Mly[H; 5fb z e| X4z00v#EO`kDoSGz}3D7Yzu'Һ~l] ,.=U]RCk]D_uQ6Aft;+TfjZ܇ҝ1l wx4/r]x=0$;o %HJt5ֱQJĥXݻΔti}ܔCY؍+ys\?[D7*0.AC)zhP%ނ_M>I_# EZNC)jBFNN)EEW4E2=0h Fl~:x%{vCbn@> ؜ m֦W]7G#?&֗wiޕ[ynW&I47m*BEsJF[! :c|Ո 8?^S,Զ!Tf];6;ҋ"Mt`Ϟ|>fYΦ[[*/k#@c]x4.%˗ac*}P3Rk Au9J{Fc]?\ k; 6v"W`'x>5|gmߟB@,l#h8 y|9[NC ,[4icԕFEyQiɸo;)^o6Gw{wfI]1݆xQ b[.@qWB0/$W;"T .^o&3qƐ m խ xC(N.^ж '8-1΢ u4{ wNt{6ʺĐ5hr𞅠 hL-2$&<)aVv>a~ir=\(O`ɈD8½J*ҷ{u[Dzl\о^Z޴G\c'[Dc paEE3F~8Br^ea.ďad@E bS C&NPVЗ|! rS{pQ^ؕ4K|)!T&BLq8}r1+ %A~JLؒYP|%ͺt.L@+1G!Ǒ,k-_` OQb{Y-ݓG1؉ Tu2k:IM^Jø4b] ",2Sw.E0e:G)RrtJPsFdjJ:B oU iADuǭ7ǵbSS_]yz `׷+14 şg\@VV5j7rq.KfP`?IKuj2ʽ7'[Z^i,PhT/uMKzTGINDRѻWm8H$#Pv>Zڂ4X&"zvkK9Gs Vؗ[ kC$s׫CG)%H> ,6 zs1۾ÔNu("a=Te8Jˤ ߇和u$ k~)"}f$*बv]t|قE+lm}+biyhb+7=7N @z *n9):EJ>Ѹ01/uL-P{҆})^`^W ȹoa_wCAwſu ?sdz d̜j?z¡.`)`Vw)MOIDAj}yW $JceԒo d0<5c֘ ȾYV|yrѿ r YN؎Ih#|y~̛5Z0n?,=Ԍ`tuLZ3Co W!;>HIFed~fпзS;/D]OirGǘL% r 1s7涪t#g! Eõ%> `ⷆUg1g +jC&(c gz|[jŜ*N6ٟ5\F3NȼwhYmе?JS'ynlFII](uQ9E@55C^ gsQbpP$4:G(^ViRI^J$MC[©VP|,N9@8 (v C{llH__IT!_ZTaR_R:y2%€Q|ӱHT^h{wVEmV浊;:BvY}ӃЛ3t148io$ =/ ,kfW3;Y.3+삁٘QBERYCtd1vsysz %uJ-iLHw>"-g`D=#I67o9 *Y}ګ/9,>ˆWWַqVFNK4|[7rU%m=cbզmC.9f5j>}2,LOc[ipD1NEBV>7KfcSQn!BoEWe>XSYA/rnQ_i O%EiF+BV|P_ZW\4 C2>"΍ 71;,ⰆoFT9Nek(*Mְ[mFÒGn0|HQsdGCٞLFưK א߸ǘ~f 4păE%ܚ+W.IbU 4ܢsiF@)zi-!evfO EN &h +V#v|T/#X]ZP7\C<0u)P0mPcua*(o4"gjs{bŇ4菥r>1![T sekgPlLΙ6yx Hn^q~(h|ٚ.oo+iHpQ)"iWeaXt"rBJTc%>֒TOQQmJ=;89R\j$ c޼Au`d"%b2 <-D-O冲RNG:E;0,6X/ $9,Q[DN$&j^z1!d kJ\3Ld  d_&~pe^*k,pzrPχA=Kb/ޒ<YᩃNjVz%8l2Qy(Hy+az ŗA |<`cޓͅ]PC[`(>iȱ5*:qMViBcr3쵛Jx`\:|DqPhfTBC̡4N8'ѵZaE@TN+DUG8pSJ4#˗at؟=+@7·?w9 tCT@OkD,9S半O-\~`aLT\X2{poܵݜnr߉8Bo7ǽ!ϕ?)Flp}Td;q@~ƟNJ-iiAN‰g:+SuYNt \xKj\R:¿#@t|s+d  A:vQT`^!'B+C6L/*c..KW)* mm4p,e/H8)nL %Bw) NAs puuA=r59YHǀ|(򍌄j뚝+N!%am߯?DBbg^5QAZ;YS G!$OҺ8˛r%ZcZw#w~ # N-@PIYPCPon2 OfNs0ZVlh| rPVQ&`ZH v[F3Ёݏ(` I+&s\5, 58`ѥ3^1sm\elm$ y,!mz/3'ũߚoؿkНe[J1%o_.+ sP<9Gӌ#q[J RN-^ ?>I8ˊTxQLA砰ܴ4~4 i׮)qpgFkU1=,$*ۯPND˹_IK&vխ]Z୛:要"@GN~vGgFh}τ4Z.ۓPo כAVfpLt6QH0‰Mn|ƽ@Xg}H0YZ4᎑7iϖtrİC D8tMcBC=6}F Eݝ(cG/e'׽z%eb-|.,n`g}= zsbMЈ9q}*\!.-04'gLkNH ,`7~:b\CbJqI=uĚ?^fJt%h%zsNQuR9-FT}u+JП3#.ɿh1lٌAꮬ#ţ!mΪ <)xp,"ō0ML#fb TȔ9.8 r`1lXygYNZBN 'SPQYs{',13俲 (̯.֙JL7&A'y|ve'[V d+,vbEP ޓYzsk»3Tk G|i9ٷq*/'N3QȖ)ꃫ?t)oϦNNx*!Pt ^ @UnZ1ny?d-sQ$![J~-Yc^586P#TH lk":q{!XB5K>7AV)Ӽ-{ Ecn9m# D'?hB&\ cuĿ-")llD݃(hngKg"XI؊)JRYNǹݬqh-[6CbRz'V.l|TJCK,}^ FރkHnrG1 %?Ú_62vT0E&4oct8P:8%k ;w=! p9d]66l ^TU%֜7w"  I:YX|ьGQMQ" V1'U`/O *N,7Ie`*5 5wNBe:̎ nxr{ o˘@Ycբc~E˕9#2haԙ /hZ|ﺹວ&*`%.A0ר=1sj{HltUdҴ?S攰vNsDA6WgVOhHc[lH|ZD V },7%J2ݣ̂4jxU TVm$>Fŀ4Xd:~컷<\ǀ']Mld]3`Zɣz|< =&LD9l<< Z)6׿ȚToһ6O*91wk<J:z+0ks:˽|;;[gWWK~',4y e]b\BwI+ʤ):VGb8RBǚƆ9/NA -?@@Ty<(8Դ~i_ҵX͝?ʠ `'W[=+r!kR( ªvO ~m ηR'V1(v4`[.Gd#FT VRt4CWĺ)Gy+C>̖w5q5o(xYt ﯎Vz(,&dX $P"iF<`$*b#Q ?*d 9f+!6|ҵywzOR<;7謁Om싉 #: D7IҹVF>N|1?ל02C4+*ӎbY+mܺlVQ-UwtPE+%f;[0֢IW6>.H} kd}k -;3̰xBuʶH+}o $CΕĆ ET7?vē B-㿇<d2 ԡ yDcGVh$0X" a+}EKrR$+XMMjԫhN t0 L@OB8ЅUYasε0qCy `K c] !@vȀmaͲ%Kb' ?,b =Jv4qnȗ[Qaƶ-39Q` )Ѱ;r7[XR+Gw~]hNi\kF^ VgV~ `i"Sx$saүX8F 3CΉ: n5[  (CP3Ck/q{`ڈs< [9κnQUMcUH% /dCl' y 9M~ plMC]wWIς1dlML΃aOw  P67ku7P!B{z-Qėx[0_@${/vPw݅" 3+X52P+* ~M? S|Ɣ'I<EQ3'Øe^u/R*"pp&m! cz[foaDLr_K[- 9-5m';C^ @~1nS(*񡺴&>wv'L²ˡt'aBF <"5]m>U%ؑFK*xn1gtQp1x6|9g@sw294o.w=ar+O=NS{nĆ{y\FB!Qr_ڤ]`өPޡ:]!,RZOCAn童D@.x9n12sy]n} ,y;2jٛh ܊J!΀ٛv(`@ub]Ў[?0϶aBA;(5cҔh4@*Fֳ3rQ)V b &W"Ort`Q ڟ_I $8`Jjƕ"fPգi%,dTRg~՜vZKTҗ6>4ly{y" *k2mCJ$v\N*DKڻ jSqVĔrm{;ncHNi}[wQbg 0 B7@ˍ)mZmozZl&, 1lqBQQ]hk0k e7iԇv7t+@nt,/uj"I}>&_GeHew9+ǐ!ȗ; vDDbɄK|7370-Nx7T/,ɸkgRqv)W"_~ׇ8I$x/2U}L꠬(~AtF@B:Ha6Ӱe1$>!E68b zXuֶ]YpzYC"gq[QK4K2W%NٲwNf.hXE&yr봄(mъb(?vW>R:v6Ɍa(Ĝ.aƠ@U{bꃧmmy(4w"m]1Inқ10=]ZuiYZڅ"N"} <#P,Oʴ?𵡊MrG|QƱ̱H-Zک%+>q厸uX֒i}Ɋ]$&-6x`^׾Lf[ {UN/HUy';7~LJOq$D%2x.%) T`3պd2ǖFYdOc{fotc `7JҝC +Qo|b?_]x+U.zW RnbBГND23<3w0ktdWINƹV(*\F4_XMI Ymm]vȮ[h nyJ?~ro';1Q)6T"3YKT`^y1̼ћ#wg4~ld k n vszYd_%T`" PC>ޢt wNЬުTuThX{_l_wWFaNi]0Xc׶D|Xg-`7TfD R{tF**F\MtMKHԻ"YFhS6 R{ I bX75P*Xo>C[ 6/&!ZCBue)\nofk8Jam_xfi|ǽJ>[|&>RpSA>޶`jbw)q?[ 7$D (")D;d1 e^?QO6or,kDzulpG}Y45a|մ5"7kĴz@eapӚLJ24/X|ЭpJЖ,`{0uT]A4 H/[|v@$"=WZy6vR dqiTw|+΍˽To_XCIbS! /P(Voqv-ؽc a'7V0_m)Ruwl}Af0fVz|H (fnQ5QhRiե6˫("'[_+H`PS:5|5+,lw@J=%+yжo&e9) #s<%'s1m`\s,ta:[yт}u<67ו|C,V%ydXN vyxX(4r"%IJG:lDžzHLW=1N#¢j@CVI2hTffW}wI >ȉ{^k F:׍˶-kO*1hElf5MQWjYާn#WיB! |n]p8?Ÿ 0 $WFaewqmA)!0~&u"6㝢5 ӉZ8PU[ay<m 0g~8,sbxeUU4{3ϑߍ7F3\|:Rdϑ -kxE3u'_ƽ5ˁ0|W){%0us%>iLYe1uOgBI !`$=-0ۆD$TpIFGdR5O|rwHaUF)3(+\9-{w̐Aq:%'yaA+ W O GQH)ZfEkA-J,B7O9<(2Jn;i1]UooiK:b% cE I&رU1N^GeL}[?2 _?t.]dfTI9@D H!sO4PM*o&xܾ;f7A%9zw"$SAPd\7?D²Nnc \~GTP]y"05re]пz GyBw@ފdX&IaBzdiX+.k|>Emd* HYcتXe\˪]aMQZ SUg0D>GsNT-pκeCr{|#P/yDX Abʀn{?iSn?g'5z`=Rۧ /+⛽y|3I"0ki\A=lQ^-?PWOOF$gHwV kDz70NJL#:3hRD*vk~:"ZyAZ,?ZPdE5N C:O,ۛ8WaVp8:++ JN*vݕ'h.5m<$54x vvN<йc]K>+ 7`cP]%`@BWZݡo ҹS+yU5Zq:c@] ;܆-TGlm ZBGpqE405/gk;ݪz5werywvZj7n8CGX U遰ӈ$'[*\U֑! @x=n~/D+$6߉c34"_OE燨jn1HMg%2}z-B|)Xۙ>>ՒNS[b8;#HnOLf:2`(PM+ÿbB]Z 3]~~%څɕ#i#dO)ƦSU]ZGmJVPKpR`*0C$O+VH.>޽O>Ӝ ٴw㩼@Iڭ~$UPsTv*0\dqBūVT>}I"s_%52׽qe|+uǖH<4NG:>bM@.`XOc/&"%:)_(2͊_|pv6.}]k.-wxxHotzi"/ūz'W"y2}JGszoԪr-v3H S&^s%s4)<;#~AxDд8LdnP$$"| ?Jk!o!i%g,=fu߯H"üo$`ޟm"bؗ2}F7eڷ#j@57j_.5/jg1uAЊ9m~Sby<$kY3bQ;nȔ#:#f# :ܦ'~:k ab[8?UqE'C~拖ό³ =T;ǫhnzƪ+Vja.#GFjvTXtYc|^jj2l#A2#NzȿlA$Dm) yy?LoSLS_cMcYVyVT\b++Di1X8 \X{w6-Ǯ|PPUևnu ^Jt;Ή>'ؚϾ vB%l1jЭdyO@?vnTFj췏3u3$/ШAVGImԩ[wV(d3b:!.(RI6ԁ?_fAjT}6)JD B錙".<+w AgBX)V'd`fp<1>GܨMd$}" /K]8L wjI^r߈p7v)-IUkl٫ gEvX̃~2=M(= R*:ew!wbexL-` P͔Nց@^i<9T0ڶ5Pv=q, iB wh uP>=L ~61dS9f)#OE혮Ϟ N?%漛E!_S,zAw(_W?e0k{{JZ0#[oq^#\w#Y^bn4 +XFvyt2)Mo,:3O!W0H5i gt#'O.z {'<#9S4[M/4-; G?mԲwWD6eYUzaGtvDphr:3`o1VeA >[{*~_p>`P{96|# ߎ^SD]: uh"dC g9}Ӌh-'jyavїRC=dQvӥ%@YBiP#L**Kϳ 8|K8 4r{XH~SN+&@gCN a@RĔia" zn:S+|q"LVޙazEly'{UV9lˡUsj׸($ykҫnsq$uiIcrl4ӿ<3MuB.hF"Y̽]ͳI"Xwd✙dde,mSXUMoʻQhzbfyK7C4 jv,O'(ݲ5AOQ1b8y'6?]pG;:Q6h&(ŠnتVRe]B"96Dv-9'trX9¦o:-8*87@l @EؑD?c]* Q=]r:YB{@p3K$7tA{c>CAS =I*WOMU_ioS>*ψJ˟{Tfk+{pR*4\*ȗ%V63_f^\^9OJ:v\{h x9/cтzUP'q5CRaԗ1=Q:RLT0c@ T";tkVŘ1іqH_"ԇmKNeW5g`Q TU:LVχJԹ~J:̇xg.:O(j?Zp0 7oQKg2NSVTP|I-sB!Ѝ֖)fؖ5n>TG~>4nuɦ/ysi- .ġO NB!׭t'\B3Az7̵T7BbFR}= y-X3b7J MtL?h"56v(Pn]*QN}Blc'tQ_?ש09`fxo~Z\~f}@cf­H]?ks@?ؑac82>Oխ8wܴ$>p2--L@ wM{,W Y1Et0a 65m#u[(T7"uO[Vz HY>$uu[tϞ`,7XW`U 9\b", k"+>\65 yC0 ?˜ײ:b @Mot{Z uKXdFZǻE%B-Nbey$;Pk̭Rpy0) x/o]);7In`^pۧQж0~Ȫ캠(G,:v<Ng/|wɄp" t$_Wu V):2ۻ2m*MEgB3&+|cThQkC,M-PPY-` rK'ڡ`p2ʼnJi5( =TɃl=Ƹ=)u(W\Uoh,|Ũ3$:|'@?Qu'@y?KIn̈h VWn#S/8v3ۮC6~PU%sC APlZZzeW>mHi|;fi7-ၱ0&EZ %bf#xFwr)^yYiOΤP y [QWvrFsvpDS@{g$%C<4tv23Jo3-㉁}nt踛>Ѳo"sОv^0 )݇HuT&)Ud;zW0U{tA),R ]^ !KeMON̹)Yc 쌹mЬ Lj@M`._&f]g;4*̬odS[`K}婝MU!DG3ukWvafb볪e4^0acLr7(@J WH- f'h\~ ['V UΊn)fنcn7UH w؟/O(q.cȟW%Y ,p9ejѿXBqV+uҌL #Iώ9| 9uqQВuu#oH1̴AxBZ;NMިq?ʶ- zqEP͋Y_=VWwunTWy%*5V_>Ĭ8G\J\&1_b0W[b*F28c+SpJ YаG,0qM'?Yuxj;ۡNCYe$؜Z81?GjMJR QvSv,A}޿J v{h |ύ\5@D0EeFr3$2B̏He)Sn #öF\7S%a_|™5,)pdx+W2 ,Bn㎗q< C8 9ә3#,A^~^iԃ6 >ebU1 KdA nH%$%݇dx6B&uԓT,re,$nA#B~hQᗳTq;/mPگB'TC%B704aRE}%}NUgV\T##Ta׺Ȏn[8 e)={rWoq> 1_OE2 y#[S) g{ @_£&ҬcvH)MT'4r =1A@Q䚪.ȣ ~&8FSV 7Ҡʸ+hU( HTb[4 dCJe|{B*.%tÍCn}يYR%i|}#ۘZ|٠nxm#N6VÈTxu+ln؛^w`mףB7/uRI:طtu+ \Zp(-X%dL`ăxWD?YsG- Hp`Gj|Y{xLz2:'@чT'c#TJm9Ժ o!#{ a۸Y@hP+-~yPCT>T_|$w4ş#WұU[A_,E1<ɲc[IvBHVVBr"cQ-n 8wW}N] 3+U%(;rjY5Z"j"[Jjݡ摭GMq8{S뿀Evw9>Jk3ks g8ۏ.Z)p=!\g޼cWbZd:I|ܗ-V2N"P)OSUA&نBΫ,TX"61W5gigy8YKWFK!ZpcU#) 3FԠȒm+^zV1Afm{ bI`"Óϝt;Y&΍#/auGSCPR o-t̷ԕn{yWHBm- {cm{qRq \?f=~hH&fjgqvQgEEe 哰L j>5l/¯W*M[Oivn@oEE2z:9X;wr=^H7fЛfM@i&o#+ˊl5ySOXS` Ө_"m,o"M/IWҜy9s!n¦w&ͼmFobuoI[HAou2=2鿰/d_ Rc`҈jyS1Գo\:S ILm[O~"U_n,׽ Q"Z]|!J I+ (IA5]Jڼpw ,Rɉ̺wˢ*~tH"f|Ag_9Q(N}~Cb4k=?Wu3R'r-o>vpRVE󇝽?yfĊ*-jvJBQijf歉nT˘ys/LZzjE谀?S y hJY7(@^ӎ{DEa[~ýG9 #ˈA' ؗ!F@vrZ鵧 VTՈP$Wҩo`^ 8.ӄT[7QXٿ^R"8]BhNy;ɸ@ `\[sB|* eg~~)^(dzA`bӀّ9A^ <~uz%&N+=z692A\ےܐFjb8"r{åwBn r@qQUlSZS~!'G3fʪ /YIOݗ>h Ȏb}e@(a.\|^Rb?oݕUހ{Bl%^y6n< 2:b!1| u &YЫ~rP6'6J4//hu1_&LBqYl=I}ЯGzwck0!( nO4&ȹ!;s^{a «jGAȍ¦ΚeuG450K!MB]|_X # W#Cn'6D73\X/m!Ԕs?P)>ՄU20% CЦ/i]rVgIƃ#yMY@KtyBVժ7+Q#Lfey΢2WRwkz Cp;0 _]|ND~87B׾9~4m%a|)pA.jMm@w#3+)jԤa|5Tc dccXtlߤ~BbXS3Sjb)'o^T[R0io~ho;2הwG  wLX8QS#r/xw]9 S !pO>ΛNaHX5yD 1Fn}kLҧ(OnnoJ 9PPq:{pbӫU]p$f51МŌ ?^n<68ȹ,H <͇Zl0*c|hl4KU'rVQ-S~5ftA4|zSk}cU y0OCǭ(9;JAh!o3gHʲQ^FIݚ?nKv^ g]^c\Jb'嚾pU ˊe@SVJwi o{ v[k75еYp;Q/H9apQ]x҆ IrJRpfjX]݊8ңpŚr4;iJ&3gQO]CII#g QN`<Nb L1(ZU"2Z6M~<74_g/'M_D*ؕSdUƢT"-l|*Y# )8v$ .q'm UH.xqLV[ z y_i %lqv`?'.} ͢I5iAN`T@Rv~rwIln7UsG%˝n}T BcÉHWLXBea9}VEPUsq}+ lѧ(<tyVm\PrO84qnGW&$Me6資 \@܆E0ŕCnzdZmoJ &Ub3.3ӠDxH 9(yѕ{]g8T gy@\ jnK~i0QN6QGO:VOCQ%j;egU0|d|%D|S[xSSWNt8&7|Jo=E v3EFo5 %ũX]FY1|2mQr4~vmHD&tK [֗mCJ S d)G|%!j l[XOhnd=|,uzYIl.G6>} 4HSuy?,:])*\KkX!9 Uk8nbh$AGAbL;Sl"z(4l 4S*44sN@X:&|g6IJT Qk]_BCaaDLVL*Jʊ#Lc,dWCrM_bC)X<:(FgdҤ ;[EpM|f>BOgdl-⸁^I+'NQS[yOd[By1y>|Ej6>_EP_@=Д,:)Hy2WiYl[o]sl4lG)*%j|%.T7ˢarUOǷ;`B)nǶ_`" KfbCq0C(o,`[ѫN N=VÕ2L3EU:,l\²∸A~_< ѕk(-YLtb06ە0M+^ǻZVw[uO&F$zlzńzґWrg2htH@ 3mA;X;]BrIAqC<=>ћFCa[Sr7䯆!WY!e^\q:lnU0/4:;Kf;n)0?OM8~\e"}6 rPpc5FW" &YO1l1%J7H苇W=j\m{J$A`{ (kUaBAJ[˅]9ޞl5:, Ot ֝n*:;y`QbaV )lEP5¤_i=CP?e%ne}EXjRgYR^ +'q-G?d=PŶ85*[1H"h3J ņ4I 6d{epÏ5} }k=m-f_EQrT'ݠ)k%L6bxmY 8&b)M#x.V#*m8ÖFrAOީpvjRN<҃8>/j$.;qЏ 5`I*oPY\Ƥ (Y鎵ǘC!<N %8Cj1I8MzpF-#JY*:妳W2t ӵVz2:&zuZq/7xMR{!*'V1MCy#YqV#z0EKLZr 7oh5OS,2 Ѭh.+PʷbI?ǐ<ƁZi*4;WMbKe~jd$7veywߢUvK.e@԰(^#dq\aqkVID)2P*еn,fhz)&C^͕PACҧazrMt3 h -1+lQڌ"V^#|cXb|=[pI 3'`0UZ$淖%P#=f4(\SO:G/;/{/ңy^kSp|jh)B$ i%'+[B9 'Zl멡/a.23ZOI9w \UsDMFh ~7sbڼ(YWJV-I}6oBs*q.BhkZStd,jwwLi`+ &9=JQN\ϕ;Fki|UCKg,WaS[H c˽rB0STF)!UOyB;[3ر IAPP 9 *vFZsc݀ret?84<h- zd!d R k$(XJ vXHϲΫ1>Dq`V3 q>3q?zl>-ԭ9=_t)FJ3ibλqVy{eb!ÿѪ$&V.Y#)g#fR JE @PVEՓ/9}K.>vOvа@aV4~h2w(\#Յ[+DŽj)jS"gp\XW`cSPRsnRچJyt3Rd7ėV8MôǺTSŊn_,NUg_uܒVܤjhJ`1Vl[ln$jeH&%f^ mj(Z?AEeaNٗC U] U y>XkZN:eI4Jا9ޮ Kw136m?]lY'(\sJd+lBIA`YT`Q~ǦB;́Gt[4ASy5_TX=LWuy &) Eٞ^kd]GM7:}'wyd9K+jVq\շ&-줡H)M_7ONxY -N;e_\Qrb{Uv} Bc=h%Xt\B2j9n %4kb xn>ݞM`pE*o[Ѩ>N҇Mp: o/MCg4zxfQ{Dq_,5u?.(<6hhRź 5Ѧ_7d-t&c,i唉TngI@4f.OyP%B^qEפ?`.%-_E(Ԕ.L;|pE4ARt~aZ8xve|vʀoB=ȷT+m鋡Ȍ:):ؒxA/GmUuṚ O#q}t|¥PJܬ\]n2EZ寧56+(*K J Z" ڊ:bPW-/@Gc]}rC>ؘhOKGWP2,a?*`-8X:.?l: t%]]cהFTRFx,,R8sldWx9YxY  aWMmaG.gCtئ,W2h\/_`Vt>&˒tcmP7)sh OW*V"Z2$Ti B(H@յ\7PGVb m>P,0K@GXXR$+_P-T$Qע=e?w"bLlRCM.jntϪ%e&1bo*,dH Ld #4\e،vᝒ^Hn'$kޞ8Sfߏ6x>9ВxyA_O*2)sAȠZ 6V #DMn}4qj26XӠ0^}@Ue:(ەJ CMbnr<5}obˬ7gUCx P56eТ8LɡQdžwf_(IxE^os8vy)xH4iۋ݄|F}@X$ >@W NjfUެV/f3u)` Q#[dg4fu;~FW#[=1y6$ћp/;)Fa F eƁq , (d@!#B'{ -6Kv5.oԧv7W>0[w`reg=s'^!C vL.?ShWۅI4g%Ň¢kd9P6N2cZ}rS3j y2\eAppNpy]HT]~U=MxdϯpJAR. R23Qֻ21kȆ| a|HÇRqθhËt2?+ ?xppM LV HLĶvIIa!B}O+M \-OiŜS %UC  wDgdGm_ BhD~uw3$*54i0XEM!8dY[sO# Z }iNMZt$ƒϼiJjbtt&K\bvŨ?aFXM |p9W'X,E"yQzEޯ#? * =i=C~Amh>%>Z~YAܗ}HzJ2u@B@k pڌ# >#^M& )(2APE"GOFkF]5@oC^3Ro 3_a E):cv;Ћ8C3}|$Z]~Fxp=?.-{otSn4\n/b4s̺W \q"}6uqkj .z)D$$;`wZݝ=e6~ɷW]| UŹ=?Ao'2%Aϐ$$CƏP#hZS%+\tF1Uz#O~np=)UH? P`#tt8~CTkD]7i{$Rr%oV5YTHMkf6(z әh89Еb<3kƜYpkf;;]ToLJ]*'B+ި]sySZEX *,IIO~N3`㡑 ׺! =wZ[g={홤ch$ V 4]N2Q.$6 ^at#Eh$mLV~o6mjء <9e{>'ZØNPx Ӑ+b q9G"R1OM2D-G5ˡd? HG}9cHiP_7O_xҠqew~ec\D+Hn[oO2a\|  ho-ck=J蹵D)_DDE͹vOW$9'7v<Li"=w XW~L1f{dfES\ hLliT,$%-Idw2Jn 'Kzd2Wl契  MYqc0gЯ,cc'ȵ(7| x-5Vpݫؿenz5nQQlx r3ښ7IN%]F3L\C[*DA^(#*42E8U4)Q>@]Q$}Gau2&MrmTG T-yS_t3mryxGOKFΜL$ku37nE@o(3(b1=P1;s/'ՉOwl8 # S$1E՜Ave*1 \o_z)8 {wk2m0fXW*6z,tdbs`^=b7  FO*O˿K{وDI{\fEe5j UKaiy~q TYLf=OfV^^Q{(Ʉp (E)Y[ʣW#`LGhBM͐;XE~ټЁZHÜO?V1,pH4nVM=so (SZyxt] )̢T;g 8DBDa8 "WiM*zi(l`U!xNC졙~>Y@a25qRo6;H34mU;?̷OKO@#5{j`=dFew;uc{z-ETw =[S S1tjz8$յ;uU3 H:{_zޑVO; ZPJ6M7Ĉ~qow|hjN|nxyp]xGߌ3"i%'IHui\n0cW+uR?Aoo@(o yf]bi"`-I-+jD]0d&_tEd$gM]y̮t<EbMinJ;,ΰ4-UOVwjmƥ!9i`!8 9_vL/&[~Q41y,%mLe&%g"AiZ{!0MRa-2[@sUi=0\*"#oGa6E,W&gMƖm<>g(&U:MIԍ+.kv*WgŊa`F({>FG j)8u&_ T`=Z ph/VkE]pmds&)B*+4+8&AGůjO/ Y"[ O`}u`; d6xmYVa@^/>9ڑ}yi'm>7a1pS.FG0^]\䪺1Sٽx&ՒCA>ŘuQ~" /e(Ej}WHBY{uϏŇ޷OCxJ|ɸu|hV zj -Z@x-o{ 8UG&b9/+7Xċ`ɋB/nJxRLd1?gvH$[G աei;;rz!wD}d$ξ`Ba KX̳ ]'-bKmtYEw O9ESӤ6`LB\8 KDbׯGMڂcJC8aE3^Ћ/?:$#oVgE@WlڬU'>D/E "bmF/P|^}rQ*c{H߇{E[|/Zd^ҘP>(Ih*i5͖ƿZX翫/S AE9J'߱H &6CVN3?6S6C@Ƀ;(PƎБ±?yRw]9j[P&H-.wfRq-}^sa=}jˎ;;X_߆piSkE2a*+B;U.{%tqX)Iߺ ZB[(fM0BBl<궫0meZ!dIfB(3&>Y=7'6Yobaf)eT0WG b^ZFpP5ž>cT?gA4AԵc,O\{-C ܡ{F:s֐Vcu* DOl% ?w`*wT~>KJ.w2};,Xr4"?IPeP!\vi{Ҿ{Xˀyp@*ptIqG<SEZE d"+ ]Q83> mkaCˁt ^ß\2w%IrVD4$a4\|)^4'iMVMO5]K/SjVr9v!~/eiIZYTQ &y&1'8 KHu'oGcq8l&YIK^YXvsDwߚ_pOCt4]yj>Y:>mpR`{N#^)Ug!BORo|tD:`K&R"#ӧ9b ¿X|Ռì[E2?W`ˢ{f萪`ȪTT%{4u}m(ɼs .I,Bdf9[ r gMѺ)jQ$} Kw3͢sjE[:'778S47*|"SfE%*S` U;/Bf-CJM݅ iu]3)k=pS{@F''vٰUMb/&p~tA%:S堶;'ʾ;\]M9^&JhK^>fڹe}y( dz1!r.uA=1C씄bҺ~ rh1iW&RvP%_jZ#1R/-QVԠM?Q^ ew h$s8`/lf$%G[:ץKСQ˟Y,cNV5*F'Ahqx .-3- ~hfB=n^5x1MRGvʮ*7?>mOn{70Jt@+֖N cfzEU~~yHT=LJN`BӂW(7d%Jhc^?O}D2Jrv*y.3u*&ejq{5)([ (p"C)]j]#-,i(05"sžNR& އd_ usvH*R'Rx~W7P@Td c}>WeJQJW ܤ|V7~!'tvwXp.j"[[A'sd*|v,@nڕ~z\qk5>r-PkJFbjH'̣/"Qv z3U;+'^A]!A#e}Ij|%{ : b"r5X V @ˏ; nd}1~ v IV9 *G':/PHչ, BX 9_䤚P.пՍ9Uu+ȏ|Яstq-䎧譑;ҩ\=K/9t_dukhRntmN%I{&;gm+C P,-6RR%4d֊b-k&?b1A#LIqG{Hv 1+vm ``褈%X9DtfZrxUi=&V?e_+}Ol{T-κ5G8C w2 qU@Va#s_fl~ؘ 0^fH3vSNз}#Ya+?MTL.A(+> ӲZ+P!^@>Irfg }~0_yKa/̯욕aY hkN!"/N窠Zg(]4y%4!UpׅHjw;5̒~RXSB@f?QZԡtÌt#s3j}K2t Qam@}S{DfŌ4wI.rtI&V Ϋm:hN-E<Ss谡5eq{ؿ6o&!Bs8סal̬ N 2"u ;$l/7 &cLs,~Ywtq8 (=~,QVUjr!436f3W圐P;L.;'q(T+8| Sr5,TjgX2z/|YUgw$$!X]\WPBŴM\24k65tʬ40}lJRz%-1W.=w kn3cUݪLj,5NI%< /zM+\+,Ã5US/o޷_]7%!ڣ_Qi/MLǾ APlaf h:riE*m+[93o>fLBǿ!~l}ikX^]x{.mXZ(fS*ƶtR!k.WN=EC(|q3 ®1޻Ulޮc* Ae>qeVc:!ި;_"r @y#DޘLl\@nrF΃2)g0{{(6^@Ǧ ҧm`Go#ኙ)$3'Wsn%C|skRUfWA i_$䫏xϹ9㖊Rr׆o,nAK0'+=IlU=cx MH9:emw}󣚽^- j]XU= 'f}p|B~2\GLs^AupW%:)\Tg_+n yz9P,ob-- dn 0Om|ᳺ=OYXqtQM湬רʎvPmPQ.W9 =4‚PJM+zK^*D;!>< -ܦ:ɟKkH r4dˈ>]3E .{}Iap)۠#>~J2BHԓsͅ Ai/.J\!*(?Qj&FX3TH+myd=8^>c{Ȇb~@=\?r=OXMr0HͼD 0*Aa'_u Ueǫ HTޏl9,:X-[1!cw-)JZa8ɚ|*50Uz!i(G 9MuJ-/>1"sNf-lN #528=ld?%02!Ⱥ蛩`O)h(Lu+^b=֪y5p(dȓMk*o}=!"<7nIIX Sup4D}#;q W35~ NMZ0PM7c!=gOcJZ5Kz:lzh3஍ p3\/*j|.ӅW͊ o; ?qR%5m=0ǎ}N$_{A/v'7-"w$M΅K~u^6IlJf"D+d8 !=ק-Xv|$(-g:L;W#C;㧿:On=\D^R\"|Xt:erC5INxa)UNp2Σs:GkkRMEʮ+w@k~^4j SZ,!Svc*LJL omꆗ5DUnrmoXV]G`;Y,˲1h*PA{<)_nmo[#H8 *$kvo1Tkb+$d}JI>K(®—j(˚4Ub֪5h"fl UBdR nR^#|V'd:`i`P$^ɺ/IpA9 aX gY|FukΎFCDuDeNoׇĈJIoLAr%^HiaN{q7wy%>X-tIZkީI&H{1dH]FXX^m@ת._mn2NJ n4R΁b%i}7pC)ˑBK7 '蠈w4p1EZ!x 8!j z+u n+o>UOp`_.<v^c5]HF33s8=ώO~"Kԓޘ wxt3jx;F[@Q0>=IڶYʄ شA żw'EaM\|we,-n1R/EU(<&bY͎;%,G]|PԦ4mA,MdM2+>E|B L Rvji/aPɸ3O5368x'CsC&UgsD֎4˸fxdLOpv5[[|lѓ%s;m ^]񰠫I(n\poܮ>'Qx3 A8 J(eFhWOC:7)yHQ-1m.>_xs53uIC}-.y5%?m44 sar~kVT yDS?!hB_-ot^ ]$gdv~ AD:I(<"7G ߘPzAIVGQlQJrxW; &.099䥬Pd_ckϪP*Q*pݙ} bդF{q`<ӿ?ՓsʶXOQ,ȁ0,SxfUqJ105K_wISwr<%l"3"g 5꒶fǽ%>7ǘ#a+uAK'iJ(bߣ=M_Ѻ x[ɒUލ!lM DuQ8 \]E̓bˇ:s){KF V/2\ӑH۬zhmR1T'*:VfRQ:KB-Umm\(qN$)zwbvqdi0rFx@>bmӤhE+ ftik[TlC+e^0r<{eq+F2~w;&R[]>l)WȰ>Q=0(Kb{=OMm@:lgvPcun b߻yf.&k'~f;F? Vvʟ PW`lSƤHs}YeYkz,=9VԒq+JWwP$ڪkH,r{)diR"<{̛®@ǽȀ{^Di*4H'||d$p#愚7p@@Mu :YΚ!ARDn2H:A">͛so+п(75 \?L]󸟑TY8@ipړ~OEW }&H~w>U$nmY.N '02 Rm:Q`eO8c $)ڣ) -uD/2"sU:WǷ8r+%i:$MmznT=SfZ[)]5=u*`,o@V%ymٺ>zxК<ӓj *^"3qb1PF_anWswƭ~+"BKp ;^h.bpcmC>:q]6(š߰FָjblM XÐQ"^_=qɞoE_OM &fAyeP,* rwyi UUZUXGZ({Y L[%#uAL^G;aG(,lBjS]ntQБ 7Dc-JK6*|OoGnqwHfmiO+[Ou @SG{Jʨ冦Ogvi&pRJe݂lIaUZw}? ܌S@aus O:$ UWyC7Mv5:4²tմ_p^/P5 ڼQ %7d ˅SlF^4Rcy&qӚ4͙;hS?[. h/xNUU_%@Bk ֒hhh~ފVeʬ%՗.bᴜyha6Nyق kfEp*R"af/nLa [nb]M1C/ѣݏOziE܇ca҂y M/. }|Oy CRhWG 5 TPkNA.m|<䰋sl'hN,Taݗ:궿E?0BpڙRh^'qW4Rs2kT@c7 *&i-6.dt9iA`5հDzz.&Kh/rBפ`Q`h)D7' ʶS36Q_M4 `LJNWZ>'~dEI)zU%"e3[L v#) ɃUH]Lȿ`HN)]_ WB3nBЯk\)|UyHYmh.;ih^%smb YO֩gSLn.Pz:]*_~:@ayHŇ#P&~ƏjG0R4[S| frKk"èOW]s/ ]V2w{ogdӏ)SVgL10ʑڻ{t.(ߍџ4dQZ&pSDۖXFih9ߟp H#AFڰT_EZܝ gMiSF]]mt7+۞zcIr ߙ5쥁n O`Z%2_&}SH  6w;q r!3/sgԭ#ُW3J%1r^V3 v88@XIRLipīڞ!<^w]x8lZ[M w*a,\; D_n@[ZJ|M7ƗLٯ Cc]e|zrݍ=(싢D2>EkZ%l[_^?`ֹ?\uE9aX]%5-  u: r ϱbRu vxgK-MƁ5l%T5 TFs$QWl+uJ(HK#T힢l I5ɷH%kͧ.ZE].]cc<9&@* !ۥځ$z5ϕ[dܹ&ޛ9H9 8-8M{J4*t'4jofe .m(D4{YWwܸW;e@ (Qăku/NHj>ayVHû;*xI׿؁8[8+ ! Cv{z2 ;ᙲ4:G]m5 @F@O_?M\QOBOȶ~ENYl1Fd`uM'?=)DKxG˺՛/yķq5aJYkvH]>ms3!ݮOFΜ,+nI=#-~^Uu,Te?wpٱ}6[?ЕXȶ>n8AsG>8!]֤JuGp}я W8U=YPdzk݋,򤉨M7HqSZweJ Znt ch&'D 1ѷ ٹyNN^ ڝwI=[>pmNgc&.'0-caz+@S{1@wKuE[૯tTu4jKk|p:Uai);"9S~ yḠx[d3P=Arr40Y`ak 򒛨 :`)@VU >uRZ-ŒadoQL7iAw\ݜJVZB\;~#)LMM̷)bez>#k8iCZ3P 5Gܑ>uJD"訔-۾IqZ♖ъbuW10;C錀RidbO/?È3} l3pLUWoCKd2f0`6,,L-2//9iYW'R:d|&Ҹ~7;5Bn&!vYSk;P NѓHSV{<ַ.E81|hfq\ا`Y3t.[6v 7ȰwA;VM@y d$7 Kj(50š!RrQ.bL҄qƳfQ)<;+ԑOyͭXooN[!KQ6unfE=V,R6%fWgf 7Qו +"${F`ꚃk &yc2B{2vn^4"L?KM*-FR:<8Ư&Bxo#OX=z`U3 C<%z T4JT16_`"(RptFu7,5j7jhӇB Bxji6֐dYɫf)>XbuԦ iUɽb*O/1ƕti0!5ʡl]RaO#Af#ZM(")8Ȧ Nl3 gP3)8{s W~)קi&B^>ͱՂ?\c!3ûR|f@t'j&Kob:9i;#č۝W=;cZ6sÎ4@sn]y75 D-&Ui\auH&_g+n' )%-eN."_&bsydJXVL]BЩ⡋lz' -!ϸXy7R^9ȠEtSE!L6`4 Y퉭?s2wSjҴS!SDkbŸ^m=]Q{RMM2Zso4nMFekUE ev_=e)g-nmphU§$h>fed2/m & y;(IRtjuT$*Ѥ+(Ԡ3\taP+$yN+B[ؤ ' ]idܮZ\EBmwkj0˕¶3YkE- KARB!_5J-_ 3G\:Iz[]IuT0؋2c>gYpێ['VJXy 'Z Qÿ_˸wUO!N꫰y@"C)bFq뽞,=c᭸-=Jp͝\װkΓͷx@!O0U^úX;WxM'arCKS083ݢ!By(m_ ngkzXV 0k=[rZeOf(ߐej܅nܣ0Xj SL-54͡yj,opRfNu_^2 ؒٛoTh(=|:3=O& 5{9ve_PA  HVy8\HNMYL]OZD-zOcdo$p=4[ܿ{~:J(ů 6QWcP-~D?9~ H1SRnQUՅ_T/;,8!)AL.lSO xYNCf0Rv`|j>0GlCFG4A颃EP~)UlzshZE(YkX%H+dV>!Fb^4n] U Xe}z~x00YoşgkhklwߺKL#L;k6o`m:b$[ ]8^BM?ZFaI 6Y˷^#l6"%0/i K*L B1JnD2DG!y >(Q{4x-u|{.]vF>[Jj@ f2fO.p<Yn"Ϲj`m>ly?ښJX9t-#ǻh 5h~:/ĕ*]knm=x Z!1c!#m+ာȺs pMb=@Bjcl g #1Mv#cR"pglrdj#OD\~p6) 41 lN2;WG2TS}^N6\aHtaXc/šr^G9D= x~h;?|< (9-I7R!KIE7˺M.qIsa&SE5f ` b.<\& IzN&9Ʋ*1F%qH(x%ؚ3.d [;&Krkǂknːr$xުHll|}'H.oEIV셷ͨ}+z;@˶׺(vbJ;6;.;^(ˇ #N($ ~ំPڼMN+0ʙ2$M֖P'$G(GJ~8@~Q+f4:$-d.PB[؝dmJ,9W茝sd^i%H"Y#R-N%^{\TKR@"=EՄ~8X$l|)c~-RV7t!:Kv˳پي ̨DЮ,<8NOӧH"}n: 9)bg%'>+ϫڂ^QNUѲbyf߀)2))<= J>_ HE(DdX';-,dw<1~٨׏n"2uQ\Co5=}Pw% ޙN@i$'A='$\Xg]wdut^5\4z[Yңbu%.1_WIЖԌtw+4,#(1̩<|֑urQ5,~^r](qV?NyDTF/k&O^_eU,,MIuNpʋ[ iֆtջlZXC,5-ZW;=kn5,WQ ja$_\oҕXyF< =)%+\+-u,{뛂'XgU2OT6iEۆ~.ZK,YPTl[uM67?bEvhI_!oqu.s+iy?tDi_1Mb^6xДec ϳH*؆$>x 4[²mU/|8==-_Vn%kmqEʢۆA&a"1izx`>5U֮WQkt\!WWoDWz&( 7\mb.0774 #_MuMAbvᗰ@bE:r0>R ~a.cc lh u<aj8iϣҭY3U+!;V* iox3BIGGez kH~ a7_Qe!ஶk.~D<{獏PYLR*>S/Ƃ|K<%OS38 uI/N|tȘ%;MEs/dNsl_R-CQv 67Zmʥ8SƗ%pyvou|88O/u4?/dP6R>4?.[hڋw^:`ַPBB]N03&LNX:!YQzEȠ 89m=8989§i:EmEڤks= 6=Ў:b'ǘZqӏ/KYL* 8XIbh/=CL]r J&F)MCYiC(ENMޯ*LcPqinW_Q]%I]ox@L5b4J=A =LD>Jo\V+Yucf`K+5˯H"V!tXe %RBʚvL}W[Sn^Obhg)D)9-*x6F+YħRgP$!w]-Zn" 7Bm2+OM"KIliVN3``>D!ǡEGcBeAk1vQ0yI٩zTgwJ8Jh%5q|EutM5 0egFw@cv`ry;i+o– eKh^_4>ƊNLlVn Q+ (E =~еtԉ;MqSOͻ^&7{.g]UQ.vQkTԹןGW~vϑtqlP_Nc F(L ַpp bV-<]R?!0>YXݭm\yصcjܡly"@",b="ᗻ2(sZ?0%n%0KBz0 h,p.o7b-W*C 𭔾GN_zf^&Q9>͸`dtvSV i+ 3ZGښC ;4tY%V,Ho-|..5m1s}ES?9qpm_s#*+߱#McwSAgd8Bfjk@.K G[>xO3Ɔ *P1K$ ϋ{YK+.WδAF meM 8.7% AՑ C0+]W@4ӓ:곽-"qWnv \s€?oԷR/|1$ghG7/HҜ:dejuH)lv? Sַ3כTl4^L|oB**~;-GxtZnGr}(q HgM@Dokei4l )wuH6~Ț]!'뽰t5ZFzVh*.49A fȱfBnxZ _?AQ|CZ7PIFs: BbEҘɦ}$Z}q ZsQډmRݖt»G*S{'24N}"ZM"}UB}`=?kKw _4'zm)}[&n`s@^w>24ߺLîzD:}l`s80ʚJ3ؙ0eClH@j"#2ƎҢ8,{߹s`?jbOV 31cLbBP13hC3C.h[(_Z򂌺/ Õ:d W ][inΧ|7QbC,IvtVސ?(~SbwSוUc6p)³q`R5ɪix/|XO\}ޫ QoCշ䩸Ƥ[^D{Ddnk1TNf' iC]{2yꖏh2Gb?SxWSJJ2 Uc>1͆o C-mW1j M% kIFxp6JLW=>YIwA+O(cgAjPdr=gêe>pdM;aB}*}5ui~c<׉H`I }ٕZA)w>Pn24b57(!ZGR(}k_aڄo2cŗH Z٦e'4^K!Yj2  ?,֏۰+6Pw;mYlS#a-cg=Juc#kc0 1}_N8W[t']}m`t1/yHJ'd*b 0 OqxfS2,> ): }s.8~ $KZSЉbjg@ oI2@`.-{f =ZO!Ž41fdz_d-blz7npD/u Jf{8&5b*.`uFl$o?~f7g; *½ikp}c,x/"Y VXh -M /: b_SDžLk&DX؊J2/M!'K8\'89e& ;z[ Q1Ĺi1C0GψPC5N^Fd]gb&b ;slAÏ|۾=.@J^d&%Y[0 .+Ǥ/Q)a~)q4>u_*wph7 /;=Jy ^!_fHlDS !G} JxdP~T[[ܛ AZ )||&aҀ wL&YYQ 應]dL/``)8|\^e~ n ,K"&|d?[Gq3`qVopN6Ԕ?Ԓv=u@ö4#kIQ%s՞_um, gwE0q*oWLEt[4;KVHx9Y)WzeƾHo여_ v451pWuD/aŞU5M*$}:E| j =*JyK+j s86A^hk8o炚je@:y0`p3`fɿʵ=mBE~ |?鿻-#&%ۏc /:Y`miu `,@2(za-l}r^I=*lOsb.g`+ "Aϫ>Vq1uKşrFF-ӏ ޼jo3:9=Q8(@2&{|WțJo#<slFQQ$gc޵I~u-{Ӧ4l‡q/-l 8jlڏ +9nRIl ]L#&D yS2bRKΘG-Su3Xȇi`B]bCDDMgƚpUAr!ڏe8ZiӡO&r+`GcƦrs E6iITb%ȁ؛Vk1?:ByROǼJdzIMF|,"B2eqrJO #Ȝ/\~Afm dWɐS }xur=e;@=\a`bZzo ge>h< ݟL'勪^suw 7l{@Nu6XmidC]dZ5-$\Хsu(DQ S=% 7aTekn%A%yvDn@n>a$k Z8u @b d\꞊UU2ҚG@ݮIMȸdEf'(p$לr/àe/񲁑w觶Y-K;۞]:Q˥Pc|DA+pS+rOEժq޹Rqם. /bHG!I4:)i,/%,/@f52Q @G{t[6|CVe,l?R ?#7&`A rF|-Mk6 gX%:W+ Ht Y|$ #a-N5[,X` Hċl6{y@ H E z$Z~UU*a DC׬҈g{ԗCf}|Gԓaʻ3g,4,!6yYN %OOnpx-U+"nמ[X:=EA~:[c\aM QkB /fbC|WPRi\KƐMdV0}rK7^X4fU!/2(5~R=$0V]A5*G5hefV @KBM`ՎjF"[+Zӥ }UCQ'c1%|x 9/|EN XFNnv*v^ 8w2[^zBBT~09e%*r Л0d5HeDSQR7K :ı\'zA[,%t9tGB^G?. U0vj@/Hao(V{7*qLNBchp]8&&6;Au \nmz@&6;^0jUf}thc'5'+ 嶠gba 5ЊL/kpV*R)QF~:x϶G8>z5T]uFe{HkΘϐ>7೛?J8-ӥub,W1iGۙ`GEHY5}NB+Թn`EL^Y 5`^nI:AeDF8G/U-CT̬ҽ/1n iLfNd<ǿƧݯ{1̑/RsnTIc il1(fk7foPy#%VR[4&YLpcxW"}ңC"WU JjK?CS7*аc^b@h4 ES06486=0~x?/^ҷ\ '>i1|W*M_\8Zne3%21D^Q x8n' a{֍;S,е%1> gA%֖; wFˇTEɰc{k.Vv^OڄG+ylA<鼉=}X/#+;R1qX͠$D7E ELEQ`j?t^N=ӹS 'Eg R[8l,bF H ƭpS gUhO>[iI=P@^x-a0԰&H'7 ) ơ۲Ym$`&Tzv+N ܜ:HMe&SRwmg;M术6gO"ahuXAg{nH@RY!_JE[A|כn^;!5XļzJtV3vRV~:ަR#/n=-+Lx4Koԇٻ?q`Sa+\%7T…P<.Vv X=1DYmn6͡NN'L\[” W&OqGϹ\rs7 `j`9"][NJۦ;7Gl 4A <1|7c/wCкm!3Π3*ъpY0S] /l?CB] ՗p$%삋˿, ->l}7/L:߾GbӸ#m~744 4W)eDWesB= Bp17(aK:mS^C_OP&hYyya_ʕ<\/cc8̀KF3:jDg 8*ꃕB$dWW"7Oo- d_O2{R"85'fYom'ЖtU\) %$SJ#Jd*Ms%fucG\0|PtXBb2ԍReQ T꟤X;pu!Ll̯_lΪ hshYc "xΒitY7kBb^R4*.A̭#LaCvߘt!@>Vj+mt߬٧WnrwIv 2n;2y_k[U4WON".>M9 Q6GF .h4ą&gX{6alv ۖKFFK]YgTfg%Gc_@aY^qcg/ (͙ k* {b͹w"Ѵ1xun^ACM;XsS7/uj?P!YPkY&H,q2KL]]!6?%|ѷ&-L zRț<?fd_) y5529'Nc3LI-?܎n]ǭbV0wqV_ClB)l`@; D먭= A}zKoĜ}JҮ|5Ng>?V$G>_* O F;Gr kÝ/Awh Z3Su!E _F7?^` fbM{Lϓ_t$*ZylWJZ'&%gUxtr~Q!L'玊 㤼4-;lp3"7&Īm"db܃sHOuF&Uʷ6V,zA4pK\*7zϡ$Ȫ̥? b{{P#Q \M/a` uQZx^'yQKCsd{H_5N83͓6k8#ۚ\+_LZG&~Ao'PUHDeatRN=$Q4~ {3:BZ)>3Ab Ee¢Z4޿lFyQ S ^9d6N.1<2 ;xh|3jlZֻǂQ DŋA<.7-wŀ~n'g+% ^|fj3۾5/5\N+k-=xxYP! k$ )<U _pG&4v &jc #9a_+I@1J`J$ٲRߪ>Xp_q7;~[B`NU1&:!wӂ4DÍPgdPLٸ}{*$6[;++Ĉa ʸ{+p!5{Ş䧽b:pn BY׍0Y fhG_6|F}1qf7/i lIioH\ fG^\e(!*;.$\H9.8JZ32tt :B56yvΚ0]V| 讄$|E&41aXpB'YJ HxxN{ bX_RZŸjm팴 bh1 &\=J>avOVX}F_ u 6z7w@l2s;Q8W8-KPO7 _xmu[h[GaZa]UԭbiCGP' qkb1VZfɩ}\w`Ț9*֦N93e#k=՞G̃ELd_a];F>\@] kJ˔z1{hd6zй];xњ:]d:H\WSR.IEA'Q!Iď?@6;(XweBİ̒&kz>:~SR?J얯hyٜsx{N'<(َ 3[ƇBD\ 6H_,?}=4ma?:9~ۖGn/D4BlwӋ&K\ jqDaH^)w,MyaKܱ,oJ8=Rn#s0c>kv(s55Q48T 9E!WWx)w@.ZD׳$ YDJg;ߑUp{ZU#`)kQP!w d#Q\YL <ϝ/ϟ!'k܈g+={uq\3RwվhZ " 7M[r[f-~Q{4y>v$0.xOU1FS9(QH7`?yc!MP ;7?=n0rѵ[ uk%ca8#;b{G϶sP[oHKhUplB\==FfaŷJ~Ij `(rB IIse8q' mbR$: 8!3Mj]gDׄVuOU Q!*x׬T)U͕3ftvcE8 `b8Hl[({}N$cJAJ^^W>q'lUI{AgQxVo+f@6(QͿ(YN%hGIhq*Rޅ*or?q4S_CyCR|JNyI^WkE\O7FSS4U<!{X_4#}b1,ڱ2U(#IKNW} xlJ&5(_)#Şd?7U](͋늏 7]pE^gaB3M *+0LN93~fdBW$rJߧVc:rem/$IGĩ>!"ub#JP sj`jӲaԮT 5g~K|ڔb@l,|؛19ѢU=Fi l8u)-ecR)&bYwYՍ `umu8N~{cd%#e-=d:n j'"+Yi%㨣!k'Fu#KF߬=/(e^3'/bNoeHB5Q/zW)NxE-UYW?Ц6em"U5Ѿb[ʾy&}O 1{}^ [RaT2׈`:GL*us熺iY0y}>o_ }N48qO*lܭ'9aT]3vl'|FU%av4er/ȥgLT85T+VS.:]DF=j}^ j㐏Ŵ6[mxPt ^pxQsM?*Ei2DVx#N'2|Q"l(^k=xXaY'U3i~+rKǔH~. ]n2^u)08o˿ 7S$Jbm5ceNlaӵX'Jd/.Gqtnqq@d"S -d󭸶YfͼF+Kʃ|ĉ-t=49ե,~6isVR}a*fDѳfL<6Np['DJҼW!z_deOn"g2'{BЯr7&΀%1?s^NsFQcF+_.x שW!SRi,@ed{2tABa W-\>_TӮnS!X X#:~n^ަ=G*!jG9s]DߖZݲ5i)J3&*+L g Wn3jMFy!<熃 QpGXw֦[Dzh6yᑎ2Y]\Nh+eϓ%<,'v@5m\ǐMuX-ET3ntˆb~} ΉZ8`G)4hN66B)eHy'R.ZCꋐY>8 "I-1A5Wv?T4^685gN%j ď!Zz`nXز5qV$hOCY]{+/^?5|-)~pqİ:;)j..)ޅ$Uԡ%Nw "1nYyA\}[v5kjm "`3fzEv=6:=6i{X+& S/h^;F[]|$ZaN|Fv&"W!9 n=v3sQ`$v|I=>MAi*[vHtq6xFL:H"H|~ Jlqn Js~?Ӡ]J׶d҃b1%OP\or.L7Vk!)ahT4vNe atEۻ#vbߵ9F;D+3K,GY2 $(."w<N[+M_L\8J,̣)Jϝ;80ۅULEUEx<nN,u9 eH;"*q0^? xk<#9^D/yϸ'\CDf|ҟ\OxAZYd9􄲫c.Y]Ч'hFMR`)*lh/7C71Tgp~<; 2h~<ъsIYlmjҖl4bp }t.~W@]kj/Qm$Ո?+Q)v-"Ů;()A@?aդYj qxWd}ŋ.GyMw bg$Ɣ]&-gwI.l.IB~r:5`ⰳm4~fL+8% * E&֮5-Skhu4jVn ]M2=ʎvGIeDW5,s%Dx*r@#D`} _63Q͵ eS3nARj;MQJ+ֳZ̓VL,w]|y%+;;@ɩkK-q$p<;i"0CvZB;@Co3JKO*5 Q/%b_X9@ ia7WÖ-Ղt 9o$ F)BZvK\:򯥃o3YU`˺68V*]yһ WRHZEg=z/alhg!r4U^!$|e6u,b~`-eЇNlǺd[aӓrje4o+sc$R:]>="~,9/J#$hs0,RzQO^T`&>|CfHCWA0B!O eP>H.t4b2AQ]s;! wl]!h%Uڒ%`n)ݠߎ t%V1 V&[6&\,=(3I+[_~$e _2LLRrt\s8ڒ*XO" %湋O,KlX㉆X+}%SV┣|Kk2z-?w'LU]8Eࠔ]~d}HR%=x吝6,Hg'_AD\I5V:\)@N$?qQk &gq|@[}Tx)eY#^ߓP1;- #٬L/TÞِИ1_>tZd4#лh ?o3SdM~OqAPAX*E:Ph8 C5zW.%m2N18ڪE)p`H)~guI`)ضnnEXFצ~`ױȀ#Kl=eAQuVUS4CU/++QҢH#WYw<3?n0|#i[Sp(|:\Wӌ#-RBt L1jfqX\\IAͬ V:KZZdAGR# We%⥡Uz#5#" Tkl3e#Ǯxt `H8\3[@(mGo#4agk˴Q~G4 vY/*8ܿ!Ur@engs, Q/ku>APD(t@΅%DIrXIOnC ?}Kð뮆u3ws,`"$3(,I6bލDlg#]?qԝGPhL-lm+K隻3xL@0`9GOr=H@+B~X_~g=%fh[/?gē%7W d(Qqrg0)ؾT:ҳJ9j٥DqD3a>hڿ#J&Ӂ8].D6h쟌Gb)Di AظwI !&gDZmeHKQ^<6yK"F(.+Hxc^az5 ˗/Iz޼OR7WZ7Q-oiC;L@6Tiu#稓1K&HVEV CMeZ 9|wD})_D̯@vٿR[_{ YS/'!/{:6 [8)5wDW}Ow sSrl_G A` 82R|HJ(]#"{աu$^%[7lQ#h UX䶏 Yi Z1yݟ&".l״3 |D ۡ}G%fTAeJ"n4PMm6_oQv/7@xhϋ 9&kqfNN75hȐߛ;RrH`gw-Zbd΄ͫt .iKto( Udgn:^k+BjfZdfi*FJ(영pTB9ZRpZwHuBo]FM;s>&n<@}|IjKQ6.I V-@CYgrR8%W&[_wxD(Э0b}izMJJ2>CӚPK[sԪ>oV2T)oGk }6<*hډ:+X7i//ܛ$V,QKнg(\bZ/c|V#V#1XwDpžF -]n{.sS?hIC4"]q]taRvfNzBc}C%OKt,WXd^z'#:j 81qLnVKwI2zNU0Sdz*'4O4gPKn8/'W'nFOTwܑ0zW[bvR Eô$>8wQ+{a%LJ꟪D1Rg-,q!9諌 h#MvFhߎ0sRz νV[{Y%nP$J]/+ٖp71tF=boȲA)R zaE1)d;w#7O{2&㮛]\`>G]1:@#0$bߵp D_<\#K#T$F'Axŭyգ`f"% TʕNB'-M*cVE/]GƠyױƘ~w6?h{7f;b/ޱIcI/'1,&_b&fps"mcS!2A$d8F%>cK^\wn턲<{B4bY`d-$+V$,)H[5{iԲ(&M5d\ia]@}LKC9&wIe6Φ_ݱm)tEiʒY@`bu IGAz @Pċb}M< UCs, bB[<_uN'ܡ/g(!<7hgU= aRcWRjLZx=5XNwC]0۱7 $-o6+ |6(NHpRm+97Y}&gF*"7S6~5Om0ԉCh'HV -O-K[Er p[mK3ߧqGC|FrVx^-XJ0] r\Yj{:oA>#(K|KTҰq0kQ75mԐIyѿqi1)qS3ҢwpYL0FsRHpweF^ G.dKD̔Y["1!cs 1bQf6d$z2|+i)]oaWN,ЋNDh+ Ww;ձDNxPrf/cc1F(dvPx: YQ1;pPzha[}a֟c@qSgh#,NI'۵^E$H4vO!Nz)VWߍ0s\6äjKl50[N!$<Q6˜[G?-7H*W*^r-͗WE u-c{vgsFAOzz1`s:ex#oaU7zMIįXzH3@Ǎp6(WYBȐc\~ϲud8k,.)Jf(i02-n S2fIiDjn`R1_O rE1[Ӻo 4Pꑫ#vC"d/xvs[– C:8:%(4"_d0"1osKe(h8˩$m,Otff I4^6x!9LBy=EQ'!e O<HǫX8 *#O{0Gkd>WNb$l/0ک>R$LfrP)x^yTAtt&S*xNgSQI ˹%1xĦ\o~F`2cL1/{dZ&ן9E꘯VNQiKD%ٙ<Į qࣤZnWGjPEeؠ[Q(,6,)L7Q.C|zhhjz|/% KÊWC#. 7ӪauzI*HaS҂=W_w׾9>k-ZH%3Z4Yg:@ KnqB(ov|[4$郔CtMGюjϥHTd կ%|aVꪒPE3jqmh(]sCUBae=OE85e;6R{[em_=@$Yz=i$c@.3C,UI5ۢld1Be"]$acq' I)JEWM\&Rp.@4X!Jyd܆!؄I0w!7n s9?VFl}>VX(1JGgN)`4-XC/"ğ]w?{%;ʈd-Ƞ~9`gהp;}in\i qBrXC.m_'㗅]Fn?ݐWP#afMV97O񨅯-QU^]SUrڕ,׃g &C,9](Gw`S1bI@/coفYgeHA%FtB\F5\l—j"B3>.OlD@m+Yz;7hTe4nZk`SZGF ^1:. we4gá7XO+h9G1@f2ZZZhZ鄱AJ'%IbN"[:FxcӜm,(-]ys*Nr{fl S} o(D~s]9@KrGB2t'y%?r]E:<&exDiLW^w\tƲu/Y tRJ_LYI;y1RavE&s *īq$Of90'[p뀌gklK6 g ao D]q$4pK&}ŞeIAWˊth?:d<ʋT^3%dFpUe𱏛`WY2+qKHDa?f%r3b}CB4+A$i5% 7(xILﯧ9^t]A"EL^\m |mKI?xkD+sIL*ThK Q0qke. ҋQhtaKjp_ }WR8 {A?x:ת ouQ*|@v?{޾[%FXw\d߂^fӳNUV}Ŗ?K_e-l=Z;l+)d]XXUpʕZ"At)ӽ$Bs ( 3h?=Qd^pGH\=tɋ}t~`5oWvֆ=W넒iטea8C6}5Wll/aĦao7}<Sa=4 Gѹbʹz[_~4tտd.MFrxS+wLQfUk&bq ӳrDfu^MER&8Zܕ8Q/G%$L 9mDŽn?Wp֖&ȃS7c ɔ7Q 1$,f)tg2̼GFX-v ~^2elؑh-rm 7OGaPny+޵}AtTIT3 }w$`ղ5KҶ=u{TGrVvLl``" Q Lq0LZ>&uH 3"Ǒސ{i3>g,7֛Ѧ?Nvօp) w}76܍Y]$󳲢KCLH ZB!"ȿr/K[[VWZ` ѲM'BB?70k9#~41+CI9 >qWL)YWOx2ѭЎJ>O']يIe8EFEIbXJxm^r@4"2詳V2'tp݁BaCM4Hea̜oR/CK*}#5a 2y UԔ3&"IӑX<`z28z&Z+gN lOXj%}SDعMZp2Tb ,Zܠ?Vt5@t:,F& BvTUt*;K{WDp>%6+8{)nRgGRXgG7YP\+ .WD _A0h' : @kaа  X Y[(zN^wu\&Iڛ?f7'|M~qtr;ϔMhI:g\N@6!<}T+ܴ. rgA"&/݋%:ky:בzIk\-XZpG7uE 3r 1EtXإ^'Py.Uz3NtFDT0yY~]*Á5ZdT 4'˛L(<6ŭ# ^\18Vw0ѽ)E̷"w'>+@aDŽu}(z~xIvϊ;ɶYrYP̍g:|N+W#NM֯픆 Byԩ>pC8x]ڢfȊ jZ=ɀr7^(V3UX%Z4j1);TYeޱ/pu4l4PHgus@>ʾMmNJ}dJֵb˷Ƒ6x$% ]PmrWGq^ !1Yގ3 =q18KWˠAMI8+|=Rm9"?E8'E}J0$| {sK̯>`4cA3%'kבωGlJ..sd,˂YQeƜI"$}p[n{.![۵NSk}w8S CODHSSi+t郬>`/RlO5ԱXQ{<oFVC|n"? @8 6ؕ'[!ؤ'm#uNB'SNڀtN-gRQw_:+;CW@{b94="fJ>5ldA8Jo (_# V?*-Ī`Ms%ۊje0ZaKI $Oo)4Wd=\<}&XB{gs#f]C2Ԛ59=wBi-;DIU'fjB-L>t^c?j0}7 LhhZ4l{씠Ұx.-:9JvkپRКHMRӦXKzqu ЧGҞ.ȀH=Ȍ^zZZwNE4XH;U/~Z'|˷GI5/#U/ 1`_b/_;Q&:R;IPnӵ#CqG IìSץ'|i$s~ At¢G6 †x+FCڋᚖP|$ґ lV+vTsf$k7yQS܅g =fr[>$Z:;N+w*0ml0hOZTvbWc,>]mspX2P) "꾩u1Η bYSGZt_⤜ry<8MBl0<(sh(3t$ZK_ bCUWxzpLJ.K;`%'.;e!ABC4mwjСϖ^,l>1G`_HJ}twK<-nK£k o1xSױ@k|bMքR8f-$o5~{ΝC']8:쥜;xL ہ̆Jb/0fj}aIgIG(]Y8g⚬ EjQS½<ӮAj0dI`IS=[H0?dh:Pj-~Sp zSM]KR5*^hv60[DJSJqaeLg1? JNȠo1n᫮ZӈǬ(;+DΌHvرWza~t)f0%y$^yFvA^p9;Î-(;,/X^ 44=" 9Cxs/Ej.JNag; {t`& KĠdqJ :!3lZs`$X4z!Ҏ0iUSٵ숐^ c]tǵLtBJE;Zgr@*.S"9.bm.` l蹱̽=H`>چIhu_]`zkq`P5 N`i?KdcölIvs+(M\ݗxa{tPN_ hYNrjpw#4eyoT.ª.~SE!%ݥ"Aɂ3T | )=MjJAѧkb4oJ@CaewrcH’0 Hƣ,/br%RTC.qIXtNNk"!Vqk݋B?Cy LMo6rS٣Qڊ& ظ0_:[xZS@[C987i0^p.^W L0>,FNުGurWi'RIq@\uA/3l/PNw0)<;sE+8?rLzVT,WJވwaq,3.IRp;$ZґSd{D?:w ?dg%a8M0ԁ!֝M4`H]|`4dzZEU.4&UɆͺ-0 隹k}npYXc`G2VnuTvi;76S)1OdWr/c69ق';[RW= jV NU7Ʀz ֣ *دw{6YLKvGN~DqHz Ծj/ oO % Q{h얗K?XI7]c6U9NZ?ięn{3tܛD޼:V@PϘb&KZ=9̺7Okٯ馸sU*QIE,3Rb쿼UQ<3tؼ0;?dY@ŗyu0QlgfqY@Y+-ƒŸ=kj_S\15@a[ڸi?6V#edbIzt$)_&*Q6珽H<=~HIw*hB=FP76]A2T`8\͐SOt!= bx.=?Jmaa(8O^ hpӼ:DԔq-` 0ds@0su)t׳?I*׍Ef __ -Uŷ_lU<.Y]J=b36Od-~⭮ rpn.Sequ,Z ?T0HIIT֬P&_^9Mtrڨ YP%6\7|@:{uWy^֤1f|:Qpy97RCXx.tPږ}!Xp1k9C:݆ˠ}=~ K!Bgɇ!~ Ȯ+t*MJЛ) .o rLMp#2QH?G,F'`lqh5G,Β# ^֢b#q/ j˜k6 $dy)ʾ˕?! =N@2<L7oCqOV0̑kzB3?s()hQ]ZWu*i$Ϩl)"E0c[pLubH>-!Q0"ƫr{&J+&KOQ zccniJOv{BJ9'b.VJJ_@qpupY4@0zr$WP{N&EZ\*SUy'[m<lʂ[y̯LR{s*ճuQ\;PhX6]oU8t YP9=<Ϩ,U ֔3ҊY'u8 v[@l\ Uūs>H;) s%ə~Wv$Jo)i4\3 쯸;Xјk᫲_Ƕ X5If-n#B{ֵ(DbvXz ƥyDV'_Ӕ{ћ-&iDS"VDmb.1qUi5fZ&uD ׺FXU9!!6e~4h<%Me/7sT6)+ hE/ PsZd+ؗ81..+,*Ki ѯģd.)mK*w׏qv7W˚)S sľN,D<*abY$)xnu@WQRR^\F2Ɩ056dI6.WG_ k: >R V#h$l݅sL._ҡ8ȟYա+ ;? -=?'P 6G*Ai(L5, `n)ˀ,;Њ4YHMc{ naKWz+\Ք̒BUfE\E9!r]Ȣ21W[:5 J2 Z?=/_Z'AO#p4TF-[Xo.t' yV^1p^}s,A=̫O0}f>,ܦ$jDkKjAA<Mm $68~[6s窳$i(߉Շ)5 B’4sS)NcIg@>*jyK MK5y+u`I?N f,IL@~_%`*7 U! ï ' KnQ VՒvMҋZ:6;=+G\u; vUqd|z;inR ( da@sWKNR(B PFM3ͯ [4@{NgxҤlʭ4T 9~FLw̿); !ǘ4b]6ș0gl 98g.љ F>ӵ"X HMY ^jQg,@0nwaN܂Lʕ[aⵏG`L[M> lC:m_yf~`a_Zoe1eB0*(yB`j>V"H6~pElzAHރ1dX1 Yerrm &GCC^+чX߬w9hXX E:aPkOc<ȸ3_^䩉573Pfe|J h-nE(Èan&1='s(:K fJlMm9\O"$tߙڄmಿrߤ?fe~$x2׮[i1 Bwbh&J)RgW6da]Z XP4z4|IkGQAC >@V̔\=Mr1cOҷ^@*ѧ,OEwW ikZL3on~e8Vﮦhg]҆α73R?K;L }pzXtTijQ?pNZtB\KVz$7WB5a%9!az5q/x,/{;!=[_Gc2ٍ-*!9:yVwiҫ^`9jtSoӪ-}tT@4XjMmR8:b"H%8o|t`=!s+ƭ[ɬKA|uDW{8'bg o63Cb]y>gwZ=棙hf OpƥXn}6o %9s31 | .l$N[ >{Fwݠ(]%˂CʓUK=]Q),On^!{xAs@SZOYeM[ddh+J{VrxFnċDi/Bb}C J.ˤ(@D hNj(Z HyR8;HxqxnAw];m:!s)>sCXj&%3HvN0xp•a) %$71Xex>s.=z$Gv&bL:݅Lp]|4bhs> xx x.%d7)i>m>aO^Y:`m#Z^Rfڕ[ P׻n Z{wZ>B7 "j࣍&d1)ԗ븊fW~SRv"BFPuwEW#/|}3Be?o䬍EG2r|NXŧ NiÝFKHƝ*zTnՙ0D,Ck3ZW@1KC`t;NJ|ã" rRI3:Hux>Ere YaYWٔ? PxJJld?S#5 N1:%Z%hYx}cM?d%&۩`dGn;m&"Vԛ6nGK\̥>L>xAå{ms/ Zݜ929ƵB&V4˲_B?:ni2js#SDH@m/\F %GBtLբhum8 e+|:̔uK&tb"@ZB %D$fBi(|=b'w%Cg>âgg-e@BP!|^eq-T.PO%1b8D/hU ~u9U\]#CApMb>{, 0zܼs*11?\ަ"hߚ"N r9HQ?c/V<]}{ cetpr1jp|>Zxv5/}ŕ;'u}CDs(>>5Vu񉩳l&SA^J~Uu+ºx)mwH +H܁/4JH_2!8j0pT>jiJ/{4,s]*KV$05S1I*‹PD,UUu[QI %#A&.MQ]շ%pޒmE7 㪕a I(7xl G/y?9&lDxXגa[I?E"ԋ$N~mPqV#S-޶u]J|te GS>PZ9[fTpY@]4ye9 6߁ ;9ࣜyQ6B"UK5hYT ^s05l\8)`׺c֎CqN:\[ ׾ ys7CΪGoyKGWǓSR(ܩ-WI鉬194ψwASW Cwd%kcfՏÕhYtZ}v1 "̂w>#P *#WSU+5';{{cwvqsIZ=GMb:L|ԋ&˪qLV{#I$ΗдmH~@6+þͩT%68_茭Sa"C*D:ct޳> yhN8p?%Ac]#GTFhߺ2 #fmXu毅hW/r=_StB@4dy2]y0觘f1Ę<ܬVB֜-GUóo*ЪAVH_ jZ\}/bȁǻ9슂VO59xԍ 7Vq!8U2n'!Bfﺱ [D!Mn<+>{+o`KA.SꋐR`A'vW+a-E\͜:]0^ b"CU$κ.yxNBA-ZSV~nj/ee>uvU${PRA>: _HG$$=`4*]|XoCS= rS6F2|"^eExXfjnl -J ` YЙ 3o֤r~ ҙ9qqӌPY0 !z8cUg%d\ 9ͼu1Gi :fOQ5ʅQ9vR3XAvG4;ie@2H/>"}Ӈw<.MU!bގ T"-PeNǧW8 k?B,l,h" ۄ͉t(t0{*;WqtBqku&!?^@4&z7rwJqW2)C%;\)W4b2h갑qw\!i)"+Kj0U dpԐwTn )g - | CX1xMpKa ƀg%;NP{[dW">S2Ĭ9p,S'T 81I@F+9\u9&Vy缐"LWW(! Rb1E C}7H͊]a>6!>?}+YToY 'q9%ZbDk N*SՍ߻-G0s;RخME \>S3##FŐk5~ӤYEU-E;\sw \;"4;ЍBUyq}CZGdE\H䥘@bXOowlt)sc^ qMө.F'jt/E&(8sOq(MgITP!\b=&[bf'Kx {!ٌuK(RÝҹŭ_S{.ʼ-.]bz!,M{ZVm$;wѐDi$WM-gЗ9x7h͇>˓FX?C*π@gs)qS̔Lzt6%͉Qyz׀ĥXtw+h v 3dfDs BG9WXdj0I\,¬_熒 $,+3.w&4D̕,#gN$g;{`pL55'j]Dl`!_(/}t Jlb7фH}2w{J1OA aG#RYdU,gi(ؠ|2 i[RWߠ톑}B4*:<tn f6*A`{!T\˔&!+*5u0$:/ClC;02Tjrtx~li$1d@~d)5I~~c;PpҀhS;-z@mJ/@E[fٜ2ɷPFxi.Vj؄dPE+%)uu$I\TL7b^;u1uLȅqȻFo!;pEzxLYIx3WAU*&n\_DD{-[MwXp,qJT#w,Kaygswiqơ1I {;G IB*FUghl+Q~_(O|A(JtcQkʒAdF*?AÁh$Z*ZLB[8-9Č҈}PU\M}v=GE6tXK ?GRYcqYt2s:}8Cߠ!l0v56C!+qǙ+eTnpGރRVrX<>cbBlo $Å!"Cj[?XIbځ\Y{Yαor Sv6B i J*Xfi@PAATC%4~Ec8 ꟻ\tykޫ OaX:-\.ხu~I%;vtK 1UrӁyV#^ԫ18d&&k'ޯ [yXEjin\>4H(Vғޭ} _Xdހ{t1-Gqpt8o%Ϳn:}ImluYJtd^вZ)Ah,sģ!G Cw2`6w7V,䶥\aONa:4>z9!۞kV_Ze4iӐᅖB8T<{$|D1ASSK}c/kkN~K7AxZ3UkP ?ATo~\02 8`EsCH‚^]ow]A7X;Sr?eb&W^uof?{[™}ԙ '/:?[S%^CȬXIʧg1aIf tН'4l;<Դ;ȗJ^C0Pk2N)F@BE`Q\o:ݠԙL.fMqI, vh/[˭TaH@@1@oo n  u Y8*#Ln$*\lk"X^r 5]nlt0Ɋfɽ}Hft`əI;V!Gq1'JudJjN*]mJ:qMVE{7sO`ϓoˁb_da^'6lV(asd3ȹ*D}4G9[aصo4JIG{ 6Ydۡ,BJOxq`$b:Q|UhAώI. #3*ҟ벽4a &4 CBy+ 4 !1+R4otLr> 3xMގy>S\3%8}#;VxJJh`vbHlUPCMhF%W7%r @jn)(˫d%G:ocU'jJ<`oq@2o6r sDźEX휨A @eP Je]b)zBmkn"@B?gqd6:vGEPd\- `T<9 {5;NBP"7ۿ贪^ y;_Jjm!4>R({0?r!_Ԭ5ǀR akw!i)(nlkZB ={„ >uc~sqq2L:Fm5 Úo^A,hcg"DH /="-j3d2iC%w-k\Zu8Sd{mj^˜%&POl %VSvTEߥU^ЙǷ`8ga'a=&*idmV4yM?S4lymqN=[KO+:Vʾ íؠvUFEgtbȍڗ353}^YOS %4" wl+ >*ξ~2 syh.3yhf07H8뤲4pK^ҰBXDK>_&,zD#z*OԮ)Uemk8H@CY")w@` hy)N1Z: fU' ږw?uv{&.ӸԳ+ nIQMUw?5z;Aɏe Q¼(2L0_kҭjŏ"mvfUܘ4t|@SE䇖j]('kG!_i.eNLYD<>~KZo:xi9q ے:Orp( ՝ /`$)(EK>ɷy 8|%Ѹ҅RQ0=iFs,S޹mVK{+JvH ._ec$ Sڰkp@ր1pT{槦x.D|pC\ V4 A^]-^קl!+8{|xA0 1`EVt#tO.[a@2fdJQK#AFsa*vQ_ ŭKIrA, w$}{W誏Yk|2w+J)e4BXB,< wX| y?dk5e16xERV̠xuߴ^ O=HiQ^KaZbXĥFf:~gW'2dtl|_ܹ2`%>$Zsad[ c5UVIDӶ'w`ĜcXYd]@~mm z[1Sq n2kt ;݉ ,|ہZQf%VCJ$ƆuT\ `VyfZfleʁ7 $bE6p\0vU(0Sm TKc|BXb$T45zm dT+^`Y1nktS^ +7 yɺʞ_US Wz_ H޳(I CA imꮕn0HREǨ/f Rc 2-lyA B(QQT4c%#%q;1աeU,Aǁ F%\EOic@,T6{u5[@pyjLχ͛&2y]zER\gvqlV}ky@2$k]TfP۲zMPcEA>2 vQO:a|g);/0Vc!R˰GfƐFj/!Ē7I 7I#T(:(y7B'9b+js7 QI xV_ zU 0k&] %^I<|u/"Dz𻨃Зgn* Zـ- ag쒿eEϸe1w;}-j…|ٷnY_&z8o]t5r!5w T1oBog@!Y4hj4+yϪ?Ӷ&x Lv }=0P&@_"ac]#db$ɭ׿stqRWQL6 e&x1i"ymSsvA0jPz .d"WVYD+X*G­=ٚ GDY1Be}2t'O*a@:~^rWa< ҝݦwY*9}K#^,kdc3pO5’R޲J]hA.t3pp>Pvc:eilrlYZ(Z>+ԳV7SC]+gSZqNLaT'fzZi9B]&3 s8#LI "< XY g,~2AY\Lj/Q'5 h2 ЬO, l.-e8oi&usM, OɎJӺ?.&GPFq$,˃Ly*Ԩeo~O6xB2ܗs ]k||1DK.L])>_׈X[e6͛p%aDy"\ś=3JO6C&LR%ޗA88.={f?clIQ\d -T6S+`?oiˠԂ2$ ^2( k&W_"]k7 mmQ  c\OI1\ndCJaUQ$ܺªSVgAbW+QUdl. s[hZZ&3]ik1>o7t?*Mt]jT0_u48i/3 Gx9D!G^ۊpc;Xòǟ֩-R@ h6c*a@}V,x2KT/PN Vo`|=ɇ0VޠR9w R|?c MĀA:ҧi&|n*!)]r(ēX8gr 8`xܝ]4i4G߹i S6 Ȱ5iOO酑'9F hoV?xlӃhYVQojn5r.BϤQ-i=@I>s4裊o+>$ٍ? mxVRT`)|Enmt6a,!CXh &P|@ KaE`@z={EI)4 k.(x䪛7Bz.(S>)z,;ǃg!ŬVx"'6lFbzm4 LY9gr^ agE+OCSKܬ?7#xٽLmD:DyXVM6 01.!&/Hnk_!A>wbi,ͷ3*IbȱGj{$w樿<@iDYXPY&GMVOZK" 3IЯl6K7Xmļ+ېI7KXN1?ho#OJ@;iᛐ<00ITbGIJJ3s6XyL_0}<2deu \T/#Q{|^  𰔜4ݢAc.h:ۇl>DeBe#}>Κ9"T\?hXZWV%މ,#"O.U{3 31knjwgKDh:\%ŝoviGϮÄFX;V'x)ٌ5 \[ _y_zd (o;,"}u2/ =dX=-TI!  IڜtvL "i*Q:@eO&b{Jcr4J]7 A:XX 읰6>iRjK|Й*n1X$t43#ӲѱO҈{mɇp+TwKj:2vԖ&0qUݠh,YWF\#);n6ѼTDGIB;AI9?dOB7]zàїܟi(e~>e{|傹S,AӜwl=,C1i_d3LT[`gqޡToW Q~ RM!L9s`\!vv,ɧyPN`hb ^[`U'x3TWŖpEqd>K5C!f\ڍv"˲}%E0rs̼іjn.aӏd}7/q +,3PWOo<3Te_85e&= Yl<LsoN7tWJH!s9AR|z-s) )6ϸgUR {p!ޛ MI%S4`O594ȕ1U`]65igqlTSI[XCflͮ3TERA$A(TEP97rNLdF#B| jGD{aVd,:Z,Hyÿf_w܇kLs9Tz'Qܹ\s$w9b&2C8P#׫pzzì@-I%Xyj4NlbDPڴgU c:M-T:Q_yѫ_v[n# Y (#aƅ.%M'OA>P=ݨuȌz  e5eFS&}v6m] hԗhsSA/aR~if(bMuqh"On;<]i1;2`Tf%6P `mG/COu(cА?I{8_ mV% 18`bTϭl2FH),0qz9q71n8ǝ*5h#; Cnc3&MS#7_ciLwALe]Hv)!L4Y+Vµ~wAiW!1ϟev[KQidϋoI9>Z,${ɺ8_E"P;Dtn9\=f^!0AbQ{Wu 6a<LcPBZD 0ba޺3 1a膏Kz:҆ӄx݊?tDj-!)LT*OЊYBZ1Ӑod|x_ Z;) U @!R3-?gT/1c|Qhgz J<uZSabW`,q+>+z,l}?ԍ1<+U0l!۷ΖXʮ@iwT$00ёQͩVnv rubE 049AC:NMu?R5!Ya`fjW2aHV^GWp.eFOkdv/X[J3WLo=ULA |5JD {xw$"AQbM9c:f*|+^ZH.uGa7GUcl=]aǹZZT#3@N},檢38.l@.N>~ͩH*Fx{=UW&TsP%Sdp|pa|˯3;glL wO)ʍ]/@_R|j9HQ*eq%7F30RGrfV8kB,a^n;u ZL;ֵ8E/`Va@Nɇ횸|A4l|{rBPLf_fRz'jgUwxj%n8^(+wڑ=8l n,fՠT E΃^Bqtqy)+/ mè#J Ƭ-V@)zrFT0!^2?PϵG|JI*_X៭Մ;yw Im ~j6RԈ4 zm0-f,AJ*i rl.LYeIbR vk]5[TtkUXQ_"zL{kO^~?O!Q@b#Y~ЮoWps@Pd Uڠ<Ҟ"3|feaq/{O6Gl 3J wΔw5{hQ,i8 XG wIH[DOFo|rzݩoа˜yK(+PeX˜Ƥr-.9Z9H 8C9:B5%Χ!h;s0mH6D&)?s,AW9].D0,y tOO3DH5:i)p[4+3dTr[v.d-YD>λn=RΪdm|iPf*;;OG:ͷ2xNFI-`Bxjt͆sKVd4xޮKUg`uj\Q{Z)~dk/)VTպH6``Ri"εcB2x·ҟ7AB/mW'!\\safK}S_`0Z*gO`]7Z J~!.,Ȕ0H%\2S1=SdlyQ&l5M dldN?P-u٬z ۷*z& K~k[:&2r-i!(17̑|ec{/q0]8K|e"U0 {Z` zbWaѶW;. kǾ[?)^ẋپ+4Ge"ZGaesyL}Eyr//ބy20rvF.pOLnL? FkO:z.c}NVR2潌?rfmS||}W@0x`| 3:lIJ(U쥖P?l0JQ#^WD~G!T۶9 X%r1vf0`[CPJ /v e2Y\ ȅ&.)7?~Ά K׾ji`H4rx٫kz,aMy\K02hlsqfUD6m!h7pqDzWM$cltpY ׾+v?hjY r6) 9"ܑMW+TFIn0,rGU_}}phN6ǏrL}Ϣz2ǒ {m룢ې E>"q h+92.)t7-$NHN#PǒK" !3qtnVg(4Ⱥ. 3ʼnvmp b|oH;UxVO6<9*٥,igP R79vVX5ToA?Gv_-F!J_1{G ^*id~JrrʣU)t2]hi[ ܵ# y/OY>iׂ))0)=wǃ١c{;l70Ǭ{>Aߑ䷷ ]onUGkJnVIL@}jtpeK[Kẜ;SЁƓYn|yq9m)\KkDk F ^A0U^!}Z@GBa>}M8OB@8ƾ1t -jqr }]37\asNmݫ3އZwF)9 'B&%Jʄĉ:u0뱋k8n/'pzUuqGy6޽rUˊ TďBjF^%I}yfӟtoW ^OD,5} rܵpz]c6']blL8-#O[⺘a*4rc?%K (+@~׬?f+~GJ ;,a 쐠U0&nGlnKs]ܢuΚf,yKsi4[jE4HFE6 oAHzjeW4.OZ5EbpTj-oozq˽{l L<k#]_Hoc_8Dd?8nyxEPbڬ;sl ^,a6ܘǃ)_&hIHPu]'Х79X'"`̺O堤rP!a,ۓۿބ` j(ݐ FbUG-f5moGKJ6 ]svO ip6Z ZCXonE;ttyLm-=ä;Q:,Kz`.2Э~^zD /c 5/c:Mχ^ 9(/^cNR[ݕa>*CSG. KEhuJ H*w׫̯бV>e ndQw4r52,:.  ()m49 ɓ#XuC3P*La1.39JY.j)wx9w&K"mUh#.QմOiÜ.˿^lQxƽ $@^bCrU2O[u2쨇joYG?tf>h;abB, 6]X7%pJgCЈ]p˔K*̲;xxP1W@Jw#!l&_,ކefj55THTJ]Qu8o@+qk>XCog.`S[h;ZQ| %!sp`J~= v_޹[Đ~|Ul⁝mdZX >GG^oz~}l$N@ByԱ/Dlɶ#4t:CVz\4wIUhPp8M$,<9jP&0\ٵ|(3a_̳*Xec6Q|  `'(z >b'[mXg|b68<+Uk‰FyP@; H1Wܱ|؋!q֟bmk<60N Ndv ,ӆM' 6&D6Wf'DJ}E>Gf0pAxW?P}{q|]ii6xFoBIJ3b&_OWbx5õL FiQxN8<٧=.BZG;d Ê0<1wEFH}}y`?9Byj+s\H.9FLz\qh_ \Xǒg[#х˶}?#qtgbW5fR1tKn5WܢX\iLD ^7I_ 0➯Ts\ $O#W gҐDZ",RgڏǴ6]GT#09ٝNt=\%*li|b8ףő۩Tp$9hn t"j~2Iﰁi +Gl\c1n4GSyj :g;Es"풎ū8w%1i?6D7YTYQ@%Nj^ DiIaɁfbf1QPQPyS9_Ho63gَ;ٝbҴ.-Rf:ln{۠3PwCꦈf:]1ة fVBqk jVVKn$D論=r}GgvuA7~ǸQ >Y <Si-O?I{Wo>CA$$d۲75+-?,ʹTb˂%%%PzKB BC_ٲHTwB^K]¥X_(-IfgxP7 *w@T rWk0(xyܔ0]ip %YsxEtћdVPl%n[;prcFk kǀRОQ.z&d!ߠ[`bցVO/Al2 EcTF݂H9:d*;Tl.ESX{<3HL$q "'^SA ]{]?y~-'8^?#<:ֿ#sPOcY\ao'5]h%H68|R-YLBi;(n_pTײUG?Eoj(i۩e| o>!XU"0zҼ)ݐ(!+&wU q*(leC&vh'1` ld;8h (V[+P4~=A@RŹ0+Db!,$:Dw TlP~ ?G! 3EÉr "Vt2]tģ ;7&7tce?hs *[f@ pt LqרgXjKe&PGSer֐qeXFE2 dK_L\r dȥf|XIv0V/9 D~pa5|<# 1YiϽ;.$c$K->Ő\pnlD<MF$ XG.fk[|"U<8LƂH_?mok׋';KBL̰( 7'On;{ޛ$?y2??nǼצN/k eK%YFlO "}Ţ\k(e?ۍSzw&S.>R@-`hNcwor '"@G0Agi)\\@e2'b_K(T=(og68ڱMz b i0T.J{|bnI1|93IW#_fS-PMn "O37}\c(XCtV58S8GhWz&vplJv/6&Y^qEOw-:b&:Dѳ-4=lKPDA"O&RUfg}(SDPT.uB`>] &tpdhR$SdqIcay]vKxSh'(gTUgu;"7>ʪ"Y2G8|T# ?WJlO 0Y"y=r&ZDqv%.|(kW܋GNI %624u Xبt}m(A6Ql,laЭYkSRQX0KHـN=2H;Mh.H?,\-Jb/04FD$ [cz jWos޺0D5KA{yc!s+䛇edSl_>ۺ nj/cCA~Ogx?옋 l B8R<oG)Š=_(F3=c߉&;@m@3M0V_ژZbosnB3a$ Xcف97w]9u/)*s>J U )7v'=OtUC:f$j8uC Tj%Ѷ &`32H!D ($Ԇv#ْhs$jUaAGsPjc E@>WmC3uaňCy $mJ01&"UN6T-GgJkM;8*a+̤2XzUڦe9 ,-&Ū+|u;fIT.֍juZ< XK֥ۙң _YIULkؽdgl8b3\AF&ez-73f]ۮӸ`E-;a >$oug64a &R\4;?shVϼ$?ƧSnݑ%t5Qn(߅G "> U煈c{4ek zV|jys j0G7c4S#i&, 5)G*zd8 [86j!PbXg\tDP#Ob>L XI*@b[(JbPḱH339/ug,.շwұOnW" 4`RͷA) AScZ(S.ҫFV:&B:F5_~?hςّQOLmx?%dȈ ވD$:-\Ma0&lH: (0\ڲ?i%~\n3Ꜷr.ՆF^%ttTU kɢEN-u]3makY#9\vp# O^W So6#`F65H޶aPJMP"~(`v^vQ`r*^0_ !(^2PrQD{cpVn"?zU@]U.&cr7hki57܆`P vh Hj;{. Pt\yt񒳄 G¼>'|?Wg`7wKVTLGtq&BT2ҵNrNZ5Y j:XZˠ&\*&5߇{F·kR4nD¤i2MNCU;~?tqD$` _WOIetg,G.}@NayHUurwE h{TU˙Xᥲo@)7`ƿ>*]8Gr5u奓-ڍӱRQHaVč3L@:g_ 1mZղОk\vԠ5݇%*W-o`V0lo{ V%SxFf<Fuẏj$Cُ.b|ƌ_;o5%k"YT,[ w qt˾J"O\mA[GO8L}]ßYJ65*RI*)NY{<` 7~BkG i$\;e eb*)h n&;0{Y{aKpPLvE?"9͘ TPwD.4g`if`; u8 v*DHgH%pR\?&Q)H)BeTU)"= @c 4#O龜͐Gt!EWZ]~I(?iV gޟbxM©mD;FwW}8uǮ&sF|\MSxv:'g c zBc}L~jsN36 (BQ!UQf8<9I!n:]G8LO:Pu mËRjHM\MFFvث&Y1\uݴe01@(#h] 9:[ŘGwk5F 짡WNhR ,F.CH\=_r-K[^ke=P/`yOD>lD`(3Xnyyo"]+:E0̰%p |e4W?3I5˟h .H0j$N)‹g&u{~k論y1N38 娍}>P1]q<"ԶTAL>;ʡA»_! l=}9MDTS1OI.cD V';.L eӫ'%jOCEd-4AԺ lPofN6hw *B3vRg{s+lpZxwRGm ;X$TrMga'8#Њ/FȒnv zm;ݗm0_91oCtHY/VEnk$ &/z%z|{'I2V!U J䨮!atGw{!1IKW4RmA#oGvuXeְ6P X"'']d.ѪQ5A{:U9yquN\FSlKYB)sg'DdwQO ڏ#i>:Du@&S8S@RE~;)W*$ac#88POӜqc/"b&&!ې͖,[|yrѸ>*Fmn403$:K(7I'*= YT!)}N͆KvBS3F/'v)Y BʣP 5f %C orB#;Y`E hvQ6;;Hie3L^ t?N<(Ĩ`NעD9ע&yB ' QU&6J,:|6#Ԁ?, j fUR ds o\sHYb |:(| /i"$T3ua3b8\цF#ђkTxXtKf% oD+ ;}ӦL5U!a^lX]"QqUj+[Y\5wt(@IՍqXۑ &vp3Ú{ﺽE[I(LX8r} qѿp 7P3}<ٹ| y{&!s{9NĝJrȲP/J7҅ dKѻ! a1}Dbc THؕ,Ndea ~lC7uo3˕9NJB$)ڀLͳocvlU}S5#l ţbȦxj3qs(jO84k[盯!,pumQBC~M {'t6ĀXr.#jh}<~oZ^L?v6?է!^pDn T\Y5|_r++M@'Z!MQ:~Ium\YL,QJpN0c[u6 IS-(~?CB*(՝2^1{qr:Br" ^~Eba e**J|*hi$ 0$p3vChh1Ci'Nj0[c'q9IuԋPJcq' r µܧ f].RDZM6ۧ\ù³Ywn/3P X 4_DPTN Z4O[>\,4RP\įz;) mɡ'00" BE" ₐ+ rfƖ&;iA I\i N̡~ }ԍؤe(`@VzUz₦VrKᘖȸ-`rg +fMOORW|V:$fksqe^^}Scl pa0<78,y(U^y@3ͦ4s 4W*Ŭ&@^] dDpeSӺ4x-7:zH |G ʺ0=udP_K 7%Kfwٹ/ s_ kmDD_O3^j2-gCj!q~sfa5$8YzRStl,w]t9E?sesI40)|3;fF tuH$S]cG@'Ch~#SskrGdۂbI cKqǴMVUFMr* $@Ҫ6 '%5(}HA72A;j*2f4 W:Rt:NM Z`4`H7MÑ/1qt Bv#i9 66A!}CE+&xVwpcr`-VR&/9?b}9G%e&v9sF)z/B~K$P_W:|oPU[ XbR=d1071{~bz{ioQkU}D\emB_ h慴8|\fC@f!ACt9:ߔ0L,)-H]>$KxcFAۚf)]i3+tCN3XM^렘VO迬o;Vp!9MJƜ٧)aV-Njx.7@\倌]+]޾ _Kz+y_)tǰkN~r*̭R0y Qm6Gb; #:BQ8G:rgNQK { GtX)8JT={]@6/VKtqفM lj#yGcZ8iz[C_48 %/dՖ:ĎqV$9G Fm0\ĭuQҲ᫏uh ڈ] ޢk!,xC$rRsoF{s}!}!Z=̦~nY槾>u46plggԩfs)v=N:Ey2B?r"*sه䯔Ʈ =Dqt"tPa50mbO?KszbJi~S&m {Ϣ_2r*wǼ _Z'EyPŚ]b&q|q)504t%-&qa`3S\x]*9Rp 6o}z#~XQXZTwkdA#&OKٙfq >W$Sq8P{y`T̶maQ9oT/c[Zn2̫j{%qn.<;`Vn?92S\a(,/msSTP._ND뺀=u! Rk@D0Ո^rrcoFu}FYְ.`."BBGQ!DP[0Z2hbCވXE@)ձe@z 埙$UZo yo\֝K4h+l| %CM6c2t\u8j neV3BW/P"tV`kCWj't@O٢jTy Bzׁ/r_ooFѱfT%H!>{ ̘! ICw$p{b4Y62chY*fQ |ף CS}+Y(|Or& l1qQҧLZawOFΏClc%}oiG^xm#>$sJnⵈCS Կ;6 jIǢܨ;S^+HQ a-M`vQF}HobWWWhlV!]) DVru3˸w^&J(<QI u-Ed77V?~nZ{ ӬXK"9ZEgʸ<k6Psq%Ғk:j(95̬ZߘG9q05v]Ϲ_'H6Tl03R Kw.܉/c59obPЩ!DDкIӇ?DriBUTRQ~L벽Usy.|: : Af{' a b܍ih2eTP3t5(6OR~Qǭj*ƿBvEO5(0_bn|yR9x3A9eJ 7}Goh(z`$(Tx7@H [(Rrwq,ԝmRCjRYn:pEspZ99" dkW>;uY)&רpOʐ:R~x id2=x\(* lJ)sdq ƃ+/v<קjNqZfjJ<D,uF. wP *tja\HȪw3q ^MI?1y^_Pz7zʳ~tv$'נJq`cC`|9 J0<EmK;pIM1wġ݋_3eq5@6 {aRDWeQU^7D^ 4X,Ni#77ˠ}G_ktIUý32 vĸV%x0PDM7\M++( Fxm2L;iB ^X wU b%e"`Dڵȩᙊ;/z:2uFɟ,/b(MT`LM⧩h@ΟdF@ [XN N g/QR/_{pF;a-2;;\{yBl0߂`:DX#fħ}EG֍\㗿E{aI J8zMSck&!Bg$FDnSzD@ʤmY5$tŪ M +aup]P+-wFR6p\<~%$] rn`HBfS=<7 [b5_6e99r[,Uf;L^^#^*.Aԓ/8oUORҶ@6שCO^6B9Xo"ҫI? u2V)FC盲Ibnqo32Հ:UO_Uq LvL2p$0 U@YЁ ~Ï}nj/91pRQy͑?^{,W$Lv0 щHR7+&G(y飊汔5+s2YZ+W8-SU m[12JcG}?dL/%&@eoP2u/o72,I^zߩ ا_~LSD=aj Anmoz,g6Q?kdzhJd+^ aV=4:s|4޽ ZKn7tdߌB%.҈/-a<]Sbsp^hWt"2G/ChTt>Y$ںbʱ|-)$hU37≅p4k%-fVPM8V_%x`1i6+V3=Ŧ""tD[hFl5] w볍E8 1Hv\QyYt]Gp!ϏkHq8;VG c\20~m^L- th=jF7B }Wi86/bzL Ntb5Ȃ  n7_GTr*8w&Nr@Y1,YŎ2.%fY FWx5WK񀷅$z5+SdiL"\Z&hMR[!繶o%@7V8bLKS=D'U8bY&r5vz΢pD' Jgs5R2!9J.aEN;soH!')9M?qx>Z⤿+Ϯ!lq=/%?ʼn-a稍D(8 ӭ8aOfM _dg(F+4"Q⿆`-g"9P%:syM 90n<@Kꖕ'b2¿+7hɘ_]xt6hAY6o\)Ia7[*] ngI7䵖e"_`9c߃MɌ})ӀVTgALl5{@UdI}; Q k$ҭVoLsLm.;xrVOG.[Bg7vY\F޹Xю-6צ\ ܜg"dU;>^\CHPoI@VfM TEg?Da@W[Y3.[GXl #m}6/-XV`إ2xMID?[|a0`K|Fno5߃;\&h %m#]Az{H-#TDs&ڱvCwkdY 鷮D_RJEL3ޑ`0N =̥E" ^X66/Ø7I6iq7C J],E#Q_zɂ?7T^VI1#Phz;YPL)mβitv}Qȳ9g< 7>'_t17Zw3kky*s5w!ktEǏF倭< m,r6p6gk(uCSeWn軭OׁQMJ(-D7umf}b LѬ^[ xGd_r@,lSf-q%^0 :fhsʾv-ƣR۪x(ug1sOrRC +l !f^Dܶ]Q:VA,|开 t0$7Eed-s/%*&[oFGY,tQV0sE7cPZܒq[mTnԮ KNג>&Ksŕ8H%䦡&!_bYTE$ލ*jѨNbK31ȁVg0¼ Tf`mog0|U>F`"e}BђSnE_賷XOk:ѸuE,k+N`.>~S@|T|iHÅEp^>d(f5̂'q?;8 IMpӤ?j|^sEdzGfQ '0ΡXc|P7Mf;=?qd@}y$][iJn?Jjr';B]hSDu⃁>gnaW[.DKf&09>(pN@^(~8ԗ׿l¯%׊]X abp(,A7⧜͊Z:sd|t-rdV ?ReS=,zY(8g Pvb?HJzۅ/s]JDMorbxYcl[*B9c,RAD9?QMRtražJkCqKuX=e9ىx"3lgrzt\$.o6.S`D]i#&$]Dz9ESS jAML:=ѧA0q~GB;Ry=9) 8\`k^[Ϫv̒iJm RЎ֜TyS$fp:E?B"BQ2 ѕ~x449 Nbnuj;ɋ677qS@Qai*k:7(nA: Kv2I%cSH?:+n_3v/wV!}Lښ#d273"WNd? XXl(; :' UwZdvqI[Kd;ca_: x]ȼ 7g%piTS t/v`h&D>5{1 RuumƱkO 7C&ƍ[} -.bT;l(q\$Yy6`\9<{ r΄Cb+a4CE! E7˜B́}Ĵ|jY|Ƃ:\3x-Y4FwQpA?d=*@~)@i^7oޝVJL҉fx#'hpZ}"N<[-*nwaJkr%俠r1)C }}Ӳ]CA}6bVʬQ8g6fLZ![FV`D%2p^:P2ܘL3őlVN' np/dLal(T~v Ti\x)_8 I@ P]~;K!?.?}r+h8nHUW@>Ӣ;єT\TO1fE2ߺގMLt 8ofKa‡`:.=B4xO A.orO,쫖%(%uOg 3FaCr5kq&a11ܒ{Q( vM'&ȫ@;PŜcjL/*Rl6^Z9P[.b, nKlXt[_'HP6H=B`pf,lA]JJr._/`^w$aNeq)U{n924qTV̻`5̋lЯuó*4a3`yVz\ݢmo`2L,->c70bTtNiӨ'酪PC͙=S%H9AChnCP?u'm<>J4q`X"v.Bu% 3 ,o:/җz/ޞZ?|S7L/ҧPK"?6u{6 ىvie}$KV _GHVZrpus/9\,lq 0L{hP77 ~pǦȞ2\6ESO7u[sK9v#fikFΫQ/PVKf>E,Xs (r xMyCȹϝJ@Vw?Vn6-r>Q齟0gEk,]y 4cD]6\b+7Jl.Q0i."pʆި`t^P=X4T#T!J}*YfiOɲOϻY}4)F&gfS1^$L-2N5K=;,؍n2oX1Ƣ#[o;:/ETj>qǴ"[sD6`C|.wԘ+] k9C2<[\mGƹEBH _@n؊UENwJ|8翳y}b?"LXΠqO^LA[``܆L~;\dPk`Z :̈O 6/B%d5 7R_^|AU h+OV$zj j!S&Ł%4ۮD{d@ z /rso9z*ԙ= Boխ"@']g󶯯T7 L;lu^X({f cslKVx P@٣`"7Ŕ<]Kq2:"w/_JV^4c%x 0ޣI*!M@gIu.ٶgW qui<Ƞ D pϛH.4FTb?&'k#>Qi->]x@=x *B 5U~|ՏE@Gwh= OԳDZ~%:>?qsֹLЅbnMP!Ъ?ٔs͐m(ñjgyMo&ra]Rzv@aEVzČf@:V?!cSc@%驨ax %a\*TKwDc1ەM[܇*@BS|lv|6SC3~mD빨>:L&X[l Jڊ/տ岹kp,Էc.RN%"֞hE^BNe*axzi29f=ߡ9FZV\ (5G^d4ѺCk]ܚ됾c˫x /QG";OJi2^U)ėa0݈ncٔNnuR|V=lzBP*oK)ڳ 4?S$k›@lG8kwC1>T4qC<=LK'>ޅjdIY2p м$O6%x:.@ZKj^ͧ2iP0L1v;ЫE/&%yns E*ӗ3VzqjU4zA ҐKPi+sp ': Pj Ԋ*Ǥ\v["^~'{Ti~3c`F8AGhU{e.0ʜL\E.4%!zW@:EP`d9ڋ]7v`i΂ѥ^"r]ݹS.cuDzg5A_)4γ4=wXKz>D4v =7 ]B '\BRs϶tTlѾvxqw8Ə" ~4I=k^Lwtq֓N0A*c)jV^t5ʱ^9D]BD.EJ}wɘ,I:s;i7OGKPnߨ9Xw& wZ6]~/P jzW̨X4\*וz|윍ӳiLFr]4,Mw^D˯aֽC:HiTU>>_ ÓlB>@mJIƈ6s qo(Q: Yv6LEO>B6!آ9̨^ʼ)R o.)=cKvM ɘ?(n_q4%}C?z^w/1eq&tǪ 8*$vUi)Iے 8l!9̧C\#Dwx9sQS7#Bi YiBYP f{(r*gv e K7#QdWC4p"VY)5P6(}`0f~Eqdizn38H+5Z/A3w`rI h+*yXZo0I` 3Z `S"a>~#xmJ5c t/>jEiɚ".@֤(qQk4 GIsqCfN^{ 1kqj !d?h?إ5gWyܣ{tDy@t0A[DHo -39Uj@ p 鄊+@b}q4; Ƣ{=.i݇=ûNNJl {u*" y:'e>I4;r`$Onֳ ̛V&n} X4Sf-cҥ=^0:yhT4:mgv.B>2F'w`)]ǦXD"j]nk^䗯Otȱ2@A<z, <nf>y;<},/; iP~T ȭy@tA6+o?({*,OLK%aӑEGpQ@s)󭪢2cN'wlj1[c{z-1tNX'='<{ `V9SJ%L/')kyhYV!EN{{ӥP},)B}OY7]}ZyB =o0Tl!|" Zp<03$SU|z*+ޝmy6:&-t΂?o!0U;lr0 !RHZU M|N?ފ8]/6ɭ5Ϭ5e:G;fK$v|C LrrfC؛۔u͠:x.|0Hdz ^+>Ɂ΋3{tX7}{ht{ :c`dOGpVhAE5bJi$H tBzqmK 诳x2zv AվnJyGJ W|fUAa/,`q\]ߌ[4Ԫ$o1EGP ?ₜ)6ti=ZG6l-eٌNvO+)[z fOOb Z‰[TE0+I=YHy%^Y(r!N4gжZ٘6gJ%vɗ1svQ9j z,$SqOWg(/1ŞLd Y5/#aJ .VE$Jk!d,+IH[:LP܆Yz4b35u^ɼs 6C1rr "&RTҭG-3N !a1gܭCrsh`2%wܲq"*ЅIPYjD:DtJNnCwGD`^ &w*t<ޟc643|6?Co huE5na-rDn Ab|Q&ˣJ@3Lj,CVʜ0. ø5u}3wӤhՁX%fD뙶 ώ8>V1vWjó ;#K>nQ[#:îC[PÓG$`3DlҲ"T9*ݔ8$jr5:A!wWhGr.T:ޑ6狰[4U|6%1ucycm;۩ͨqWKӀ~/OV5ޱDI:0 *3xu%'/a.2:(xckr6;L$|˙`EX]t0%3c}V[tp&MHÀFVv49j~!WI'‘OT={u]Ua4e8tHئ /:[%b8^bTAv6*Z&{'rཅj^kMr"$Ӯ3gHtũ5F;Ҧ9^ PlLyVću&k2ͣs,h8 M auGiah >0R J%(,CC@ I[V4bG]9U*m.CpW8/{5kN"8RHV)(1MdCVXhUSo9WbP5_" ?6=Mp뽠*VRY>oU{7c9b_~6:iUVh@o.ag*AHOwbTXpiIdΥ0(l&l^A ]=WrXdpc(a|k7t"sdӜT2e JcפN QZ͗/R M{<#匰o-VWU_ԇvd`1e +5ݵACܿ^F^^u.6/@Z-lE&ޝG`'붫p #0Sv橦ȫ0HW\E|<=_0ۧs1'+M8}_>KvcBd/i )?S{T*ҹ7v/%2OJxZ['~gm&+)"qH17]{3 c^ K%A ZP6|:@t=Big GC5WU(cC,)^ Т.&qC&o5 3wT&w/>7  oD. w Kn#;vw ^J.)K"݆b}Shn9_? 'ӤhP]/DWd)1^;E> XnCネĵװX`ݤyq\Bt"I|Ny`1e3Z}}-[h:[Z3tZORm*҉K @hrv(k˖~B(,CJZ( q[ҙ`:Q]V&,Ļ|vatcG~i註-2H" ń{bH&=PGCE)ސ%3Ȏ)U=%EBIىOC)'=޷cD24Ϛ_& Ei.= xw_QџԞYrXl>>9p%#EaX?m. G%68[xirqrCtlUudb] ;Xٚe+dezIEVvzfԡg?mOo?a}G4f#'IBcoхˤN5w1=vv Qi<1fϏj$}EtN a 9 W13_B^ꈠ3! JX%#KiYpOʔf}7,:EH@ f~zp16@-=b=J `JE(d=} Ϊ0=cd;Q0)g'g /yI⩡7@FcDKk+ Nc(\e)xL ]GTuC ) o U+ZG1U1Pɋ; ÿ҈ƾF L@yIН뗳8l/=2MZ29$!p' Vfmv%FU'%^!Bj=, <T1,# tDN]ˣUiV,L>.hi u5[hx K4ay'J-%LuCuǽ̪ۚUCf7s8=JiLQ@բYu " }NgjY%#91%;p҅)zN aO3{_θ:2g׍VJ!޷8K_SSmYmi]L5KORt'n"d $I/d!y LA{;CO)u|(69&<3e+{7k%臂xXF?R-'~4+ӎMJ|1Dvvmã$&sUC\4IYYnpi-P$~8y͉$P]=DDŨմU] R[D¼eF`!%B)(O*!?H[)EA7Zla gf[XJ+i*p\etcAe9 eM ;}FS;j>ux8ec)#2!㜊e! 8T)"w5l@7? \-hu * G( {mٿ ]`sCg,EAwff1Bٽ\{( (BvҘCVauT:%9!.aV:#nѷXuH,ɗ Qe2hb29?-W2ݨP")2ozn*Բ1iy~:|RB @;n'.SRpץh_cMvNJj%?k4 dx{{-ju5$u}>i1jSXiy-Ǻg>tJ郋%9wԐO+7[d߭ocBSwQj54W ,> oN^1/ҝ4Afʍl2gC^E+pYDFS|jN 4jK̆w, o٩6T~|mPmu?,Kγ )㌕CQp&r0_J2sᱬ[Ќ'xuvϪ=Dc=Dh.mR; -GU/nM:[n)2 u#Є^O>DeQ1%+^aPmTW%LY/Nz$3P;,(9 }@*EM$dj39IX$_+M5+ :E4l?yirIVKTMU iYWBf"puj(3&.8CV6 a Ң a-)(uM7D|yQoT4Hhԁ_oCBRvD1ɘv-}fާZ󸩁lƱps,9dDPAmҵC{%]KJGS!ӢD~QyďKE{1܋~pd!lsPfޱA|hTB1zfc%M=1> ڮsJ@y]Apl@ ]qm(9jTjȲ*10|NꢨQ F(Q \(VΠ2ʁ@+&mAt0`؟ykYNǥ> "tJoi#|oX#e"a6K f#IW©$<(5 AYǧ^ 8jI5U#dZX}sj#QrG8 y;M)Bf⡨gOEK6p^~lFگꂺ@?ub˕r4ڲDu imbGR(f QܔӁ5D$&x$՗`[BS_KA*xבIWwۯʪ:\!Vr4'#P0$^"m_o@v3EDJ\վHwev"7=8 ~;^P,aKe+Af AXf?V:%2z=o* %@yOjǒT{7(k!Ojh4ĿuRh7$ջ klm\гK3MC(]=0/)Lpx9&d1D(rr2 ^1@,SK֝|>ֶ T࿲EJ b[~;Ƞ3Zڀ̘ n/7Yn?9–zDӒ1p6BLf:w`_t+ oBTwܷKToFJswA:h%9bX?! ]S% Uy9`Ƌcd23DE_v ms ?uc<+DZ }HF\iOf%7ّ;HpU S)4tݞce)Z㾭F~AT,c$//[T$3'ݞy2 aކL-+i_&Ю^C;9 &Mв\\ElKs׫үoZf }r>G?trHmW,खhgdUD0N1Xu}|i!+|'O."yYClף DevHvUFDDְV'6I2*nGFΙB4du#nGuS (H*Z(xjanV+'dYxow0ZP]k**H̷SZi:4Ό6vffAkp r' Kz؝`O&]a'4@,%uI7\/2I=+ez_Ӊq,{j&*+N,A:̜j8hC0`vpYO b*_3m2US2ߧQ'$vRv@l(- q)?8c#xÖ0Z?um b0M@p>ӂk.kAm@m7ZOe$thj 3#'hrrԥ^8yZi |d΋bvWm,Y9яO0wW^-jh K $ͱ!m dH1fq ,mkB< ,ls1r-D/3S err"^9F$ z 8ꦔ@߄BOCzUzr/$;>%=ZB;E 9763W/sQ[X"n<@gNH\j1QgD8YAyI9Dz:lJiSW3$ȞLBeʎ bmjvcPtUv(zE< w!$twukRG͠ӷ/:[^̟hͨ.bdդ0_y +Q:1;kA2O#a5Q➀HA";mR;Z%$n ^]AL;kj6Ų +>S$M P@Ջh `s̎N2]Dvm`1P!HSd_ǣ., 8s'r9 USorjd ^, z*}މ3 }Mt,͇V\PtCy*#^|YX:`WLMmnO^^jڐhACKpܡ$Q Lc-5r\΂jpsv-\#x"fSu84m3?^hđO]>3& (2ڟFaOy2V7lՠB}S=ܔ]]y@#7S/pzw[/' Ÿح0g&XM))zR!S<\{F- J)o R)$nzgWNJ)D*Af(ؚf̆=+1=({޴=E `{t-Vz& Z&n3w60^y;6JUyUS,F-%¤}ތ"E;n,NA!JVq [tvO2yLͻSXIijr\i?\f$hqtcmiI5հLr~Zߗ8Q]&K*aѯ d#)${愫 K9=$.-=瀹b[^>im y ZR zm "}L:rɷ}M57?.`@ Y5+O)rѻd[Y8&6h?VO\~URȵss]hX-8E^riۼĴLm`žd3<'4G3?.5w8q~rO-{TL s%e\T[9z9=QԱjr%`i>j&a+ZD)W-2 UvZ\y>=Ww9[ c&z_ *$lqtw cGeP섊,m0._j v~21+s/Ӝ|]wӔ!Hx2UpY4Л(=.>okmsϹWT ħf~ >NE Qa;&)^)tP06iW^o-8sIlAғeCT20nҼv j8sJ{X1IUczh0IUn՝k(6y!j-d?zXѽd](/-˹r5 G]c7wLsgtaNQDo&B{$ xu;#zZܺlx&][dLN.( A&,\NZ@RqJ^~aAjJV 6tEYA?EAg"mb9DbܷU˷2!kSKvT*n*vvvDqSV4X*pPs#]n)kcV͞WrbDmkpHBG8[L'[gPrFjs'A4Wr* +0? &y*c 峆[5`]7\(ukqPqcݽ po*;qS3Mܪ4pO{gdƣNVFr[{Ɨ{lD7UNKybwҬ3}KFuVh&W11"B_O3> Q$O3KU3Ԗ'uߍ[rѐbE ZdԴ!Me B›X~PʂI`o 4梸48{䔜fzjjBYv^*w/NNUtakSR ї䩦H!XBxJ'AtܘI#r2U6sno]x֪V#uAxu& n |/i%*IVzf-NaG|y[KN?_|2y캒=6 1ݛ_I-!O&y/S 7&vTJE㇄G>V |'e K[d1y7=ܰ} f8iԧjutri0 :75& Lws,:%P(N| M .sj xAYaD4t)b)Nö(OCXw!ZQoȳS㍜&2cCf#rgCeGv }Չ>pnCHܶgX@`W_f&۾yMa8bxc_ܤꛤVH <L2VLG(](-̎Pܧ*qK0"&g>ִJБ nl5_}~n6cw.ݱ?-~:7.XI;elLͧ ,>FP>A ]Gi{ w* (z7s2h+ XT:uS[DUu))?z)oȄ ri0&?M zeg)v^8Yʨ=wy1:ڞ.{r*~z + ey\@ALiґAi9u^o7lN'j E=*Y#@~z-@u#n*@!CesO}S2I1o%:XQ3ݠFq*`nWQ- ~o4ZI9fQ2Д.F]U]/S5} ŇCqg];Ȁ~ת (d&p$~%A>r3ZJ`džtQA@*\<(yMY0AO4W(E*mkgH@_O 1\עgc+ZpLi <8XDXJ&/(xǷ/"\X<_va"2hO8@;܅ﬓ$ 6Υ2]4[9IjA[*Rh Q5H.FMUIk'Ȧ.#+.)Ѓ4Kz5/w2ŋARa=&m"GI@h,W$5sa~qjM'MV{ŴALwG 묵(K6*C*+ waK(`6ىȰpI@4c~:>x8.{SUE[?>Uye6uƓog`ئΞ,)Ns_u-Fow\!` i|j|7ƌin?ft%Ћ;S|";ݠel];Zߤ.f1o:ΒMW `T'9]-fTgd)g | 6Hw] avܾ#59!ͩa1 qj[G]f>뱝-A ҡHn^"y_|RCyfk?O1ά /\t?}N0`z_z(+ Z:[//qVyD-_J=uq64c Tm:0*d7_Rs&UH%1e,ظF?;IEj#va{1m)ͷmh((BǮcRrSZMPpǽ)VзYH-Qs~rϝaOP mDAg"uGK_/"#s7@W$T u.v DjSd4t^6 [37:RkN߀i:{!SicP)X>3+^؃gLJ71{G?/-HhGFT3_BM4`ac1*'+bE`,;vZYu Ox{O+0Y ;ƅs1]*ࣔ,7yэS:> ~gו SI:+jK9;_aPvna*2j]6yA^ Sos=C9r.0vğ)`bJnʊzsNfP'!D v)r˿t|u~4$",0؂8k|Yey)'V 1 k\;@ ߯g7>=kkJ`.~$a-aj2!PLzlJLrT+=jqX5, Iêw2F@z".h1bjV1 Uc2TD3Q,\ Ћ *F yK-V-R h GxbdEh|G*73"uDoG} -b$͆e$MV+IEQlǁp%リAۑƦN[mi㰸#opy5|s*t 6N jĴcބgyꏼԮj7 êNfJyћ?Ss ӛrwu~.2 / + U(zH$ݙ" k9ý"Af\ %F[&AOc' + baa~KO7νA2e'ʁ%GoP9/-zq@2tU#SօEE~6L+W珚$*7 I`ruö7s9+MMK G\`p&!j\a6-H~F%?c3g0?iZӭ PX TaZD$zJQpl/HRş="z`s%:^RAPF#_JcB̩:*"pSVPxSnв[#~pp/|[2ԂysK[0^tj0Qkra{uvo|t#FL,XRRߢ4<"qVIWÍb Cg 3@ 9fΒy}FU޾r ^=:z禕vϘnxރYNlݭ`oQg1ėͳR\h.a̧OÓPʃ/gdַE'=Wy*.wʧ]Nwd!oq I&,}Oz Z#b C%_U齗OEi-yy-{; !1 ;UΨϵxj'dZk. BPp0/JН8&-*O xm~X#)ڏȇmMj_,[~$QDNh]P=~T yO1g#(iME};{yvpHoͱ(oib 4(*8Z gjQ\@Ezx>VD2W8b\]nz^wxo<*¿>gRj!TG5c+JOÉ 9l_ug=yh#Y /{_ ZO5l ecuy-8| z6ZMI*׃B}9PxԮ+ ?,&>G=9&b#ScEpY ._et?fM-sbulF* 3G( jj}H'!ԍftWwk$]쾷'_h G[Y!,lC`&c4<0gfyz596TED0rehv96je>i69jFzf5I >|_WRvt'<gg;x7+Z.Bw/ԩLUiJ:]fĴX/YriFڝԘxp8hŏcB`)%ےRbcYq>l5w:߀!$Z`?]gބQ_@c1De邯wnwF'KOQ9ڪsGg8df@~uR"ndKQzi.:LQxŧ$*#jaG+p_ 7c.x(~v1P: U3CM?@ "tٺOiWrHrknGuO [;OΤpI9hӍqPAT]DIv|(/q]@KQ0񭼨sO*Nc Jo$71\)pLY9\FHtkq `\B+@R;A RM$9ʰyIa_i94}*~Apђ `ΉSJDy! lC8\]][W~ˎFnRu¾6UF{alH!ᬓx{Ӿ7T瀱 1BMN 54hνqJ@!Ê>\&ڰӬpAs31F$[eGDgJGST! Gr+{]@>(,lB=oqF!R5K0y2]XteV)dϜbt ƙ:ǯ%Aą!ghFҦe!{\5n*R!2kl?-d:/<$ף ׈^ do&N6^L.6#U uo3L~NJc c*,x"F ́稔A;Ȅ#wE3L$,ݎ5G[~ Ca $W`RgF B+ TG]&!^HÁI>fyDiq|C0~Iޛ4uF-A֤>p(Eљ2O1sʈlA+^(0\]GQZ6>wjkʸK`L>HC ;1X]z8Z B҂@t shd/'.mYׂJ: _:TL2ć{^G=:R%[XS]h.y~p;O'G ma P.>$K2\} 'fT6 &1̠$tC&"xa>I''#g(hTPax㍍ΟrE"yQq Nku)OD`[W>NB!'t9g ̘״RQYZ4_Y 2tB\v)ZSzcj]< _4,?I3L 3Ϫt=xSaZwl#JC_‡ti~vba cs{>1U/FGZFLաbW~1[B]N n/kM°0.cXh"6>#hnO6tQmg!T#M^l ŞTsiP\҂~=  Gj,1yN}Rh-3]ꡀ 0ߚ8 Ng%R~ PУ T2:a. l8;X#1&8 :;+l -Υ HO&d\8E|`g %1T3]Vu C1a\k1a .U6pLTJɸFR94oJ?1۩Q_k4-FM|"0D<ވ^8<4ߜRJ=J-Ό3c~O0NÛ[mM.:4 ̣Xً ͧۿݦ{zY5"5a*RM<7v$ź8+R$oBq5ӂ4Ӹ7c880ʢ!^1x/hx~t#l5oVR44~_E7-GOC3h݅x}oW4 P@x3$_-Xs~p0ڠ% F[Mm :.t̯U3pEi޼qGPIdJoKS-*ojJKYMŭXP"o8eGXyB9҆a0N#:jܶ5e5U}yk)!HEުkwXzp(o!׬=^lԇlFZa ${i(Y|qMPVLaނ;c.h܄o<8.#Hf/`=kF!5hMwjw 'b)c!^_VB尯cr˺1wi͙(ݡĄHq顐* {A$uyU-&K u RBT7 z\Fནj TY }**([dž $ujGAOW=$}s" kAsk;<2@ ރIa$y~m}Ʊ^F*(:*y{}eq; ߊD='D7th 4Ve `$'!k$/vV.+W|=_P1@nQ;ۊ>VT'jp)M 5Xsv8j-Ɇ. Pa>8s"|/i9>!5dC\fn*~ ERR+lQpxCtun~ ̟]Rƞ˺{7 D!t)FՅ>>/--_>:ۈm5G"x0 :EZ+~y,IsaœqRcʪ@\993lKSh̪QgZw`,ώhY`+ȳr9X^?n.3@6p>,!*k`Pllr* ~kB(PXcsfќsjY6\I]o{E @G%0ihLj8̠hyM=;~l5Y_fZ04>?{ ;Jʅs+`G geZ`;"277)GúS_.:~Ы#{T޺6Wr+pBzx{,r Qg\;#=1lHQ~cXXzcta|5wwuf0&Xn׊'\h\Îbv}=U|`;j0v!<\)Һsco$B2O7X"Qy 7^MB"{̈́Pֈ$DR-on` GEuSг75S!|,v ,zb& Iݺ9զGJD@"O1uUZ˅{; \ GƣR +xe8---,q@+s(:" J{4R9)U[MqL2OUKTFإ.ư{7NhMHY;}bm9z1YSK}6Eɽq$測whu9''^Kbo;)虼j~̗X! j`P"C0P%k կ6d"s#e'7( 3 ۳fʖ a>)5+Z#ܢ]Nᴍjd$V ĩM[m k|3r\7n'4xOV 1pehC̖oZlzQVsd6uqB}fCs _8]Y4xw $ĽJ)as +cFae/cQ(% c{gg$y[Sܬ@Jlep[PB@xt Ħa=)y-mz؀˵!dvDqͽ; Ihr+RSsHgqGv2/1/F>_3sdNhƆ<2\ymYNL)!{Ÿ9IqZ'Ϲ|oV+;M:5|s9yŒ#F~~b@ߙ^$%x%62E4P-;[YʧI\ 4tXڍxc1LߵYj1Sm2PlȢNQ{d< Z][R<_pW9 |W`MD͝A:@bTEmt0Nn;! =VYddTDDwJRc饑L]$3b jO]^Ps5՚{T\b E"3qd^ Z`Ƌo$_$pu[=懞3ei~gl^3@f{QS%,Fl&)@?B멌.l'nNIT` I)"9Al_8/ b)r[{߈CX(Ǽ)!u--z|U-kk'(><~6O,T*l`2( bH(k?aZ_r!PiQ V\*zosB/*㚗smŘ{_\O0b8sg \?5CqĽEbJh C7IzUwXbS '1>|&fwR Sh{PZ7ijzX)@ ۻZ }G6jvb8[>O0ls?Z},dI5>I -k ޕc]7 ,zތ< Jα4'PCEo;X^Nh *Daj_gaߎ=K8fʲ=TW )F/IdȒ,X\vt eDO]&ڦe ~Кsvqƒ\ 'PN$zPp$^6{;<Y+BJ|Z +pz-󹧰H{/ -'S)&Di֕Ɓ,C9ڟDiо}F&FV?Tiⵯ!>G!z"!PMf^V_RVmA6UM\_k~@NfԟSV@|Jȝ#(}ji02<$~f)-$;w`!7ZroLܲ8Z V0I+NAIV=W9GET$13}Y7CڸڈB+/?QǚVEgWtfҋOp} v  t;e/^c ˁ5ފwK5'4FwݴBf Y'!,ctʖ.3eӪۊ Ua %>p x4n[~DUquGpu~1-a>Dmk87SNfI\"?=a#Op>z5G0(U KGk\ɴ-–FO, bYK-MXVzو8 7˻=Ry{uDק`{ Ja sp`M 0r,HF0wQEC38c<[б{ ?oM>̈#[EBc؁y)2FӮ&QFBbfN }.^CrZ]B8psy/I>k?D w'i\vjS*݌s9ໆ %V_UʷJ@j抙scI )%$:(&oY3J?+ZkC7wVdca )d?a{L#*?.NU3}BsH Iph렇P6ՌPJ3tpi%B g/-0OKU(hi#d9:{jyLV8gZJ;O87{7tgp|~GRE(Ө@s3!E.Gv0?p;L1=ExM! Is?Ҁ%OrˀA fPց@ؐr][fq s J$o;h ݮՓ>kŅtptip)mmAuT#GkvN+h{77j \xnNW&AY4*$FT UEjp ,KCv65Hmy}CMC0w^PDƑ`K&~"OA5Mʀa.dY6m{t,gNBx $C JW I%­D|\T9qmjgԴVF0rqw**kȽ7r9nCm4O C\ԟTb=l}r|SxЭKY FPLsD0$_du. )k%$xK7 -ma!| z8Ljڶ.102`o o֦RUĴC8EKg-AlrBB}Wћڕg5d˵M_D&D8,jzW1 kG ?m$i퉐E&{O,H?F3۳9rF4Fs4!Fr"c<6UZjNa㨊3~=6 eR_c@]F $p@ɪx(JWtAKCL|gDN{yr6m).hH1A^xQe~"6LIYш݉}t%qM96=)>bF 1^?@Tڮ=D9UWv"_FY}]I]| Tr\,( )H]ס beK"oto`xDS04|^R7BlP^NVϹ5E fU1sΘª,yD#u|oz ~2q#y;`ܡ昶Z}Bo hہ8<7CڧPQ7wSuOU J5% f 88 9=Ϊ 9ɠaf8K̥AXl aB^|qP9RɆbw)7-fX p +-Ak^&YvQ­&?N!ƫ)LBՅyԼS4?M<ެƈ UpKףCzVQ(vp :Tl)+8g T7hm'}WH\,c7iE$ZQn1-?x11+/l0cF7hj,| U2#D \rB_^ꥶIVe HCû_DnMX~on,4rp3 hҿcqSr|28X^paeUge33U545A.'KYw}Fh{Wm+7q} {TVxtȈ{(sm$ !jM6nz [I`'g%R>;Nf:IJxj?g륍fX{?*&&l[uGOK#ً{#h]yQẘ)XX2D mhgA}=8 ųOQwjII+eZB.pwY?9D3pp#kֈ8qnCM.#c2cGf#p$u: w!CHzG,62>W2AHYA>~8^v]qv/bjB'Y,WU5 mO]F]HuI7CXv at7rS9BzW"5dr|5XR\ּ)Q>٤:\`h3׿fG0;.6(RJ^^6Oy lD,[DPU2:i@+yg$#Ҳ3jj9[s/{UI`fb_}rhuR_1 $Z?ū`֤OCؼu-کv $g# 7&>H?ZOz@to'jY|Qm<u.zmNN2#fEd*ƋF\/m|$ $(s1 GEG/й`!~JOEs&ܫ:#|'I]_P2NO ax r}VY@4e9qp}Ũ"\:`(#vKL#HDgDkȎ\*eq`(^؍eB<%ԎQ5qLPeu1Xb":>rsWKbx_ػV'.0dwGtj=Q4ˑlk×t϶9@܍k8W){O|:+X6zW l0Vб{/|Wn ^P^WWH-/9R8JCP{ ?GhfDJuůbLvgg0˥GOWθ="_l7R1g$Adzmjv ;ote/dHg¡c[K!u1[o0arn֙n]#ѳWc<ټ!}tRKwX6TNp($3Ӝ)Fq l8dE+ Eke{2:QIn-x%Dũ䰟94*#Ó+YEqƸUa#Z;< 7=wiDF{%$u)BxlnGᡦڌg:9űW[4U}w|9`">B#@P|)O2w0vف0|VB&-9b2֓2*΋#b<eJeK+԰ 2mb~E63qq|h ha &3 guo!"T*Ό>t:u-Tl<*b(JlpfX?y-+fշ#žF>.,hLqZ_]i@ָGXL!}S窭0ugu 쿭ʽ>C/[ɱA.r/0s+i&{W_*+ vhx1aeZRR,oɇϧpoxSa=C "UH{wG̦4cEU뵰Cik(^תHԏ+52jOcV wJW)`mJOKZgeS!߻? 墌=+߈ Zq /gB?Y%<Ŀ$A[]$LOUb\Tsj*'/U9O?Dl0,$=0'`f|*ׁwYeXma_O#t\l/#scJA f[=j3&cNG+ݪ>p/"@5(NfЧ|Ս"q$ůtwZc};:'+c^qۤN;LwلVdSDtI![Hhҥ7fWiy(8h.Q_k,yq_hV{ބvtOǨox7*lGDApPgǢ^d1#^ν5kIGqhR7սʭ;-c[xǂZ{'+Y4UlrO]@+W,㼣D͕'hJ|GrAjc.bP`uO"vS--H10:o2~[T&KY8{PUP9TZlĶo=XN-J[0WO.+"Rf8H)_Hs/ESz!\aF`K yZ a% 4CNz%ߋN {c9ׄ.Uc~39!2>¬K>"B3ղ=dƅNLC;{BU&C:hp!.ɐ'ֻIڟaGs"cѣj " T~*Gl^-  -Z_`syP- ϬޛӺb_F1 #U*q ? 2Δ+`Py>w;*^pٔ}rZ:6GU/pۃ$+'xeW2Z'gy0I>{7*rDb)yGK-^I|77c2F++% fjh鼺? g9 ԏ]fuߑתe'[D <ۚQB.yU}Fo;dOͼP=ZgZEPoXr?3b- +iʻ5(ErW )zw9%<#)Ϛf$3uDsl,XJ@)㭋6&uS̻+y.q."G||VթG}3Y[j8Ƙ C.SAPA>{dXA'*rK'v/P[ ֈrl~-=@3{S #Oh>G-2<4 i$D+bf$~LiB ?ŮcƏ+i+'_Z͜1T1 bv2S@mX BISF.}s't]lK~ෟEĈ~leH TmZ  qĴYH#ֽRk6VTl>-6J4ZKMea|:[Lḫ+lW]4 Jsw.n#I>1'i|`=D5F\}&&Wn\ԑz᭩*cuG%=ad?VYY g.҂9[}$yz&Pl_OI&F?[`Z52?{V~bjegRA2}@} ,6>]ʏb"׬Wt:y%ʁhu9@F@Mf5ݤd62\m]1P2Y4z|gњ_Eew7$O;2p^\+$T mv2o8FXWAŷ#+j{2T:WB]vЍ\?9 ~[؛KKricÈKqՈM=.:M%vJ+ VXxEAa2:A=W&0.ZaSUeRQ& g  fdxYK/ UzYjOQ!X,HJRLjB=qNTe`S9ARϟ7"" ;%/"3=v,X@ÿC* !CB?Jv4\:hln>smr>nx1hx_[?3<ί5wkUHzQ ?  X-w7~cdqĥTrʼi\uR -k%\pM^Hm0 JD#-sqM4k vYJS2m8-y6b)ZKN~V[8XсnS7ZsA;$i;2'l$|5:ٞ9DxhC zdw4{1L>*<EЫ0=Qȓџ "aVO L|^*_ZLgk]b#tǩM6p.@R_h뵟;@"S|CN`3~`'%28YӷaN>%[;WOdձ/?A;µW5Pi| ecB0:˥fv+C~stu9UkCljF[nIPuQ=6MGe3> NQa)x,7SG+%aYэ V`C tE3儼@'ډj`i:|ǟp?Sy?cd8#"=ZZϺJJ:u\̆kIE2V@FWXq2^q }f&u'qo6$O+edt4pa)D4a6QD4c̖(-UxG\mYcS~ϺN֚H-E˂kmFGBU c-DtŌ=+A#8!)+0++'WἍeqO ;=HyUflNUx >XMhLS e\?0Q7?<ۺ;+v@RԐōI^S@RQAk3` <'-Ѥr,^p(5>%q] ԶIQ6"mW@"b?W &~Pzr$4JC]'5 mɀGݙZx>0UL0 fxtyjJ*rik^({VK n1a-dp+OHI:O9 sYWxC*AB吐*N&"T쒶_ A?4Gl1/VPJ;WU?Q9-e>XoF0yŔ{XRm^_jHNdXk4#(TJ#Z 2JuQ]#yEXO1=Gt{^5|:bJ>S*$4'+0WbbJ1#;w>y0R8@puZ촪hL{\Q,Y;Fxghhʱ9y6|~:u,?i!HCVz„}MHXkIpZ̾s<7Q|rR*UvL;Zը8j'y#iCyo猒˒fIƑm={ }"r4Pa\QQ*` >ja?+wűSz>p( /*x!tS4w> f0vO=JI3WL`K3oЈkDI!r:iFYxYzI)լ,.O nx,SDVtޔ@' (a7}(y|5tcgXq^PetL@Ŵ 9]?ĆU=dNXE rNM+8  z8D8 (CA Mh{ $&DiMELn=ulWo@6HS}~91q "* 3p&c~):""n{UT#ػVola ݮQ)0Pf.qTds!k4i .#+2V,ޱ$D"99Y7HuhIQ2sCKeFMKr~0m _WT LU,/h!#E| MN`͜tHl(Jgaz߿yT4{N W v3u[4vufcZD2Zufjn=G.IrMe?"#ovE\ٯi7iQ @8iO٤I-g)4p>(WMa=}dx_**HE ^cK,*Zɮs[ 6Ȉ؎ "3I6>g;ziӈ٣6khN$Zs٧_)S>}y}# Y<1oA##JD@{&k%-;>Zs u9*<тPhA)N$Q}-5(ߘ.UFۯmF:eJǰw4J~_%"媵0n.WRܞ [B/73߳߈[~5ͬvy_μ),C^""dâ)°*fRze^93,cS B$P5'|Si"-6rE̽#DF gL0{&gV3sʥy1[*sS4ewÆJ;Y*iawmlܘt̀ 7؅⤵T)EOu$F&#o ymur638 43^u(*CX{VX(xt6SJKҾMavQ7YLD=c8 nbl%:{r|Y4_I*Fy8Ҡ] Lm u->J iGxT<3øa!$?=:mwr$[a֒V8]RԏH;hjA;m $ \ &)O-U $SOfq.jO01鞿' PمuX$JxЍ?nM a {ҭwqe0,H.hy-NN{ |+>N=5[i+Ud.5hc͂ |)軿ɽU"3(ݺ#V)W}{e+K1y|)Fv<PYK+\iI78K[j26)T0,ֳQE0cW8a bM6e̸Du)AV缌motul1U 6.tFQЩGX7ki iQ^zk̲x8F"2Eɮ{*Daݠ(_%f9cӍi6Gċ@?5gH,ۇ~gc$9y#2cȑfbOeO7"+3=JvXH:妉Rmi5o(۠8^%^1]3߂ֽ }ׂg\&ڍ҉$ \&oթ}Bw27z'Ste9,dH\r4#$  CxoQ|9*}2 q7dװY5E=D/\_UMjY\জqɷ%P\=ѯ\pť e|ҿY{A ubi%w*w32./H:` |̭69rdl>Fwx̰[3oo&ՑzB=~I}'1KW$ Hs{z ѓrdg>$PHoqFYD.ڒv&{G=E->6%'q%y5GpaC4CЛF1|fLVdg[G?w 220*z,np:gW8z"UFhyȻgIeT".5ONʌ B 1(y GLArM<~K>Un3b]pc0ea?ĵB<^ȱbnb!m[גlh ??n%>KS_}D'dm%V/]kSHY!r=L:&q|Xd aHwa g;t'gۋx4^AŚWzjC<>ک6o a7WHSUάG.3w Qq|GvW>U-fMnci;7y ige CZY  jyUN"{8G^TZ2T>đMt"]԰aϔ3<2ѳ..?ːjz!s,b@pPDܫbW S$䓖;'.vHhg_BJɏ9iMtEs YȖ9I.`"0H76֦8I+o.(FQz mu~zsRn@Xv_QP+h{]2)U ͹+y^MPR6Ę 8FWf.QsDX .X z ņP|pl,J*pbod/$tzxFMb?wr9>1&TEs|jzihAǮ`_&N[梻 ?7]t{9u{Aflnb9E1l?82'1&& X6XQ?=~ (f7Z0Z(%"zU6筷ېA`!T)w qw&NFBy^  &V31`$n>C~0߆9.tu-S<7+3af"uC<7}r0SpN%n$ /WgCH\w:.;p<+ϵЎ[l~.*sE2L Sb`qg13߈?Br`G"~L$ڔbcuG8QWТT8d8CvmxU'$bCT?u {gf`.ka@D,_C,i6/Tݜ#rmڐ$xL{鲂w lQ۷y+MgzCGLĆ|H6PoaA8ӯAb%ig}\S*v:ʴbIwN+Ht~)oԙ[DKK?p*KdD@{-_`ADSxgqZ t`x5!:KsX`;e括)}$ xC4Z"/8U:eyptrƄ k5k Nl.o|fT&5E9y=@TGH&Lu2E@Oab57V4c!+/nrJVt2%vH)k?n!k9l+/X%D[<ǰ]ޚtp|GWw5W a$wK\CQgΨ4R߹u+ʼ,W0gu4 @8{ݤD3VM;=TE~ZXG&R=uZ//peU(O5-\xcn QEϳQ:',j k7.~N8Aʂz>fK{xcdžR8.ȭeMlcjc5M7%Buxσ{|KU/o ܆P =W)1l{_l3|9}{/)I'~0R~0 XXsp7+0\gvv[_$4ur (Ͷѿ%e 3$? M "KݠIHpI9Éۯ5Ma(qM/cBeX/|S}v)Ӭt ҧ~%-cku{[$3Qj J`xL{(:к.Xr"<&胜U[Ih,'&y|lϢ-7.C\!_r)h IڄKiEYsBXEuSRc'+I Q9;a7@czibw9816ڠ9.]}Qoӈrg0vLMs9XhK$ /#>q@QƆ˹+[ȩoz&QT:QxO0ˠ䒻d͘*V Bݧ޴'HVoA;x6h2rBXkvX%L(x Za6zfxJ avqf-+ǚ;'8̢ҥ(C;1**c¾rޛyd H=%$+DLcCnGݘ2A~dmu0eXHAco0 1Q(HVTu"`zaUƽuh!]qW#$6Q[1*$ knVzy_`ts.ϙ4y4&m۴RG1^ܬpx 镱:inuhkr9cVA<">1xu ֙S7ʔ}&A̯=y/ƲZf. eFq&{e(l|YÐ@Q|ZDgvMC]?M#zn:CGs0;U9f;0 Jy$KʫLkiUG!-S"f3dc#E f3a!i#W> ܓ;XȤg"L2Ni7&y6-i'L{;AK?e;$rsjŨh񯀒x 6׶O ]켩b6wW?4 0ڍI&(Z놅з~7=i8WB &zܴk9J ?O.`pҮNuS}X `En& w7w6䂁9N& xrGRg9V<tR9EblnLym1riT!= W9>1y ƅYPhj"CnB$܄(㬠fȩ])H%L': qlw v8ź`2kRqx= ځy*a6? đL6hltȪE!K$qVjvX]|+P?;)ǐ9!qx0v-B>C)lзK+ϾJW')d4lJ<q֗CO/ӖMlNmE,O|?.lO lJ!s)*0 Pq~2]ӻyZHu`v$KFůS'[^z+ohOJ~SY !#_Lq @b/eٿ؟gY<=fY3AJՈFI ^(W{e!,:maY39m 5usQHho3.}?Z JdzPaY;=00-kfZcl_ޛ-  8Ȏ-y"XرZ]i}Av 7'=)hpX祭}8N>3wr-ix22뺥e.ASQ))N!~ӕ zJ)D‰8'>{e7X34%[YLD)K?+]x'K/٘eЂrU2;˓Sʢ5r1nqY<4hVmv>*F1̿hI C #- iQmgd?@e2 c~Gnfmjv@VCoC(?hq]P$:`6{p*@ Gd/#Ң4i6T;#q^CL/N)7{u7ѴYER8;CwbLlA"vҿH_fjB ^_=N쐴}@c<;@W&; F5>(͈jJPѡϙ@>~Z%rMbP`QZ@ לʈI"Ωa/`3.)Mj0UKJ+Dg:X &0PUoNA,"#K Bѝ(A@?{'3Wy<Ҏi?│c[N6Ǫ qbb㞮J<> !%3 !b-COu!Z <*8V*-6Z@}x_A dlȋ9z#شqtEC(Q^[F~p6qz "R}!7?B`m$) H.ْ7KvZ$2lrJBF$e `jУB_QGԶ3r6O &<=+37`Djv|R7Lz ԊʮmIKggXT};FM!tu=--^oDps2ƥ=SIQGuoeN;xyx-YbH# @EE |B1]4trj8iSOH-?:e<,/n^,S<A3!Yfm:8&/%O.=e2+NGx@p-U)%3 * 8.lTQ^J%хKbfX;ϳ)<Ҙ ]*Om*@ ?M/3HV)|V KFnAj3$@p.4|ˮfb8io>k\=/ T׺sR C Ra)e]*E(O,ʈ ؾ㴅-* ҝj7-v^d !3DBn}ȁ0]w`YYd>εGrf)qT ٦DLuV\f׏>yn; S!rQcuߺ. [rC݅_u@^].dWIH =1%}9z~e|q*q"SZ4#q|ʔ"c`L?NSj N\]AMȱj皱-~. Ͽ"c/k p}:qhGwґBF$qГ^V%ܢe2=ּKSzj" IѯJ1ojf&#pLڌFyۚ TZ(M 0A: x%6?xB"S L':wj` oy:6wpʭ91)[88)ph{Z%~1d1"u-gFN_siwzfŨ]Yd- \Z88zW #d2e =gNJ`&{-bBqI_IEؘ:iI .M~|b:8M]\qhß,P&E-{d\.<<:O ʁc#M=}{ruXg,PpENzQ<4!y>q1G^BY֘/k%l^i>Uz(Ͼc<;^8nᾌ-h6~!IZv~R&+]B {ts$ .*ZN }vtъ /R|,1VZY>ۍZtLV͑!T1p)7 .ONn-Q„NVu;b}.>nVl3/\4:z/Hw2DTjh`)Du[X[-&kɁ),l3}}pyaߎާ) ّ=k8ÓG)9Sj,xݭO; +ye\3;>2m0sbem> ྕ,Jz:;N\ZH-=9f\{f}}&][Ty9^\oGtmuOgۚ=qr/9&O_>ҹv(wSɎl)VDLiTQ_rec}IeRuN1ފ{aiB:ar 9y).խ|O[ΎᎣŬrtc.$6B#@d1H D'0C{0lؙtYO `!)ZHGO_²8|aاjm鹎}%:UV wCLjDSXB[q1%Կ'x{0B7JrąK"'s8d I(ΐpԔ6F t#WP,YDEШ׍"fpW$fweީ*>֋KA_UD2QRE'XtѴ2QA&x`\ykIM%DLl 4N7X 1-X!(Iz3Ip1R<{)Q~'BK yd1*$ysږLY($C\ zv S#S`5zZ\ߌ}~0$kZkqg{˸We^KnbxW֕êhiMu%{6g9 2߮f3Ou.t%S}-Oi腣i !d'7V7ܣ|̯EVEKBWeGQѵ]L*wpO_\ x=ҀqXPv?JpDx6 T Zny$q3zPCV!n2gD}'XdUQDNݔ ]axx q)lҡb^ mg,0Nbw(Trh7zAk"3M +8J'~,0vPikՔ>6j3r,*IuZ7_Uثt_4'}C}1 ڹdl9jKoȂ>f5kjDX04!  iʠPkvHOm>C3,HbAV;{UJ:B\t oRVFG)!`o=.} >E#B ̵Zmhh5̛p 9QOOgLJT7CM$,r" 0w2e$>z7:h fW wa)E VD,L" "oeY9SM[Bj_n4ކ<.#34Vj<,Nٟe+!vZ._?7mQn ,hƦua&_E$Kpӻ{AogZyCQ@~*|=\N8NϿVr gzIkQ2pII(a ivo|5)KY|sg94tNbW-b.'][&Aq{^숽APq>}v58r"jhQF62'JZ6zzXwHAK3a~+4W~Myb$\-)_"ce`i1 =lu?m| .[ ׭ċ$J1gm~JOW,xH:C Xn<%{ݸŖ~qP{O뫳9T`+eqÆ DvJjdS@'IH|t\8rYtJӸsF}X1- .μ[qP-?qGHWnu4xQ]}J>yfr\-xz(z)=oil9 I--HәosvC w@+5l]@:˻f2e2uK-^(dSOWanu{vQ_g2@fgڜ\ N'"3ޟ̀d }%~7*~=ú)ҎAɃ$: !< 4(~-S 1!ld؁t+eWOZS1j!d -@Kl-,neow%lГt|9e{hUw^_=Un\<w-Z6TxdLOgqsܖKeeJJ|$1[yOe+]x J%s=vT¹5<ͨ3t==.)m;nm&['aD>xguQ#!C Tz}:0f1n}V9D7 j;c^Ϊ+ʆ L)(~ŷ xVC;gM@/ av6ɺoNM7S#ն~kJlj u$vmExET 7(kf$JU v1z5!⼍*~gR5$G=AH(/M,moSHEDakfƼa9tʭMDnj 0ڔ1ܛa#::n!.þȇN07a<}L-^ -dDK }۝;ES7s+ Y|@H78,!Dmgc`=*6}YR&xfrjҩ6$]E!${I]|&jJYaۃ>5v"!nG/< S$UCGt $A3r)w=XV3աKC!)R͓f0,}L4[7kT* l>K D\!=ӄͪ:@P62`Z`8rMj|YaF+]o^HaXcR#?`NME'v셏"h%D}cc;`/EO\=~@kjo!ۂ734;OfZYYĭċJ@6ж*I6w1^\8VϚ10'6 eAy_'ɛǹ\&SKX+ ٞ??}T'wrf* ́.&`g51=4ygȠaZ^ U4 &-M0f tAKM5 ^=@t!)LJʵ7؞:6IpH F3A(z)1L?_#֢4)$ =#Z}5w٥GcTtA1? P˄ H.2=J\?PH"[X_nɐ6M'*ΰPc>lM(By +Q ]fLR=(Wk+`i -9Y)lٗj*u%0yV4T6"Ͽpoc3OC+73OZuE,͖L4j75FP=Iy%ZlrNu=iy9/ioWGbT eFnHhʙ5׌{ŀQ/է\XǶ_mMNK!k Ҧ9(:gj8ܢɍLpOeٓtdN5Vٌ<0@)` h$p8d@3tyoK>fZ v P;*&JUo+{,kRCļt˝v->/Px3sqx!4wޖo`hPfPy~=Q݁M:vJJBJ(Nw+w*RcfNZk?}@1Y!7 W #Зj/~ 5-}$~80N;@I qTGd]C]蔫!rkjк?J?e6Rffap:49.>ܨ6zᴛ [Y1J8So:W߆4y3GTHzCqbߘ '[S_xljDP{eaGFKrZ>ocWڋZUzki1%9o0,&? BZoLXm |6hBՈ'Ua19<:*Gz]{68ځVҭQurH3 ,>džMZ{t>[coE IW 2bVO ܷ=ܤZi .Wv x`uVtc87< =xv.}oؑ 6 \!8hun%@L*UVИNݳ :"ci2ex<]e[BydcOqpPN[a]e5[zPs߮0{08:¤OWްq(eѿeֻU _%:N&_VH'ép87^#6.dc21[q;U՘wFTq$" \&xNz`GQUEҩCF`z{ BlCH0jP}M 0lp[~B2'A_Fh)BX\,!ݤ. j"kif}C }YjdhwhUI΁4r◄5v;r6ŜirjK<w+fhutwf"_i#WAۺ4ursú.,7F!HFⲿ=SYѝ{W1\>-ƳC'Ƀh S Nh~.uK^ !Heʿӛ]tS‡hTG;o'OCkL嶌5N{2u !3t术1)z :謣L42Hq0v/aYJGbGArN x+Z- 4% EMM4lv%s>8FXwSъ+Vrj.^RD=\55N'. Xo5v]8Y/Y"AB OeJ3Weg7Cm܎ySvw*-S!(uebJ`0ö.l|?:{.CL&,<ŗ}QoJ<[B;(E{?8WOF?fv[$hTϡWߺs%  o(yfR&/?~|f|xm, TN8A[ӗLB tzҭrܭу 7Z>gΡ)oGWhV2]}f0P O#D]_&sAO[~muFF#n }\r#A.pW:"'~M܌a{p r4gIk;eN*DfYWH:EFW[Β\J֖k(mz!14̄ɪ~objASt,P+hsX(];`8QCd+c=R魚7a DeYeg 'iӃ~i'<5as,'N;'~Q,eE;aUNY.5ILyAj ,\ߛK`h$S(ߏ^\FE66F1p^0kKYF$p![G"Ws K$s} efά /0X8b@ֺ]ʈkF73W跍;(b92O~`bPfCé@_4>3mn{/.z#x+#?qiPַ;@yT-"Ң lNQ5s\@;8hj_f70b/Ef-u}&ݨ;|ec+5q@Cת i?M$Jڦk2b.%0(n9𿖰kY=qGzKZ>kì<@4BRpX޴{cװT7N:X9R .R ?Xe]*f`M NT-A;rH!HkcgaI8\7cL8Zy#9>i̍qUwϰ0-/~\/aNcfͣh`dDqn"CXC"wbK|ϴb$:;Kts `O ;򔞹|~϶rr MҷTUM8œF1}Ou؁ sѽ@(oLI(*6S6/sW+N"] _BACdv$(v|+CduPJ.eB֚7l͍ň9n:ViAQbdv^;<'3@V΂{ wyM}*F[dUnMj6/Jۅm%e4^?FMy#koWp3؈JH%WW'믝XhVd\&Mmf;64xU@, ARKS>߆CY-\񝬊{RW۔3ƨHK5: ] 㷼9`nJ1qE}=tfZT-(oy}-Ȧ;ߖ3]; {?dg-`{ՐlG;0,v r\k H ҙؿuc<qpk/4X,K{cDVDTO v#сa:zR(6pC!l/{үI+d e8uS *>nb: z ehrY[V( ec:c 1 |l%BJ@] nI{-ʼn z_= cٱO_1cTr&Sd_?" {*N g n?$c5D#^W0j"oEc#u*44e?[ϣC`"e"0iiA3+>-X [X6[ѵ#qGY[jX9Ӏ&,>P~WճVLS ț>|p)nxwфfub Uch%g[++7sl B3tףͤ`ظx r((/=qcK;;TTr%=ŻLaꁻs4>lt& +)k{,4g>mcL*7t؝èfS깬\nzoO/t&A[T:rNpN/Wc"m,de %Ey3Oqf&A g8,ZƄ~\?}FGLutlH*9W+y<)*·wnWM+.ɇW[7RI}$ˤ=BrA,ܛgdW@(zX8M˱]Ɨ)E%_0kyPE I8 S'm1k}.kap1 Ew"ՈXʪ`^Q#<<ѱ#Z0儖9Y &tȌRz%{%%Eqf<'<(;=>g\R>5~ЩDݵbPTOi_G[=ȏ,e(UfyJ"F"!8f(%*86qNKﹸfm%*3$Fh315~e\O&SbxyF{`s.':E3Gc@d4M>1L?Y[M!t} +2;77# ] ߧ\]H,؂*TOJJ>*ADP0:ZA͖k=(ofJz =[I9] v\3hݡexdgQ9Iɽթh.g܏nVO RS]Lnǰ/OɝO,AU$:. 1%-]lěʙsh&O .שqJU?)=BS \LNP<Re(7'/p,@tHDm)6a#Nb-&X%?}v?th! V,ކ|S|)gipNeZMe|f+nؿz`FzYB<%g~X:4Ad /F SBZ,m $}Cb J}Jbkf뉺Z×AJ;3`XiR~ոIL(9_7Z:tQ郖Oȯxs%hɻV? n J oxY,;\39o6CɈ<؀ӽAVB 3*%XDDm\꛷^$}iJVLA}ЀAѢ1C J[ @0Qq}"p- a ~30a(@m W0ib1Z\I!by8ma4ffo+&~Jlesa@gn(;Jg|i%@Db &`>>&xefv8^nEil^'(!6?p3A ޝ~4olN/.jHc33% f V9Jʾ^bD<ӷ, ffX%QXOGy^y'#: j٢X <+xy,t"xF:|E۩QoTs(-5{OgY y&ciprnDq@]O' Z' 08= :7[֔bPc ާG3|$GUdwtn7;,OF1 D0%:jHmߌX`QﴆE{h.@t rQn2+wJC̻ҤII"'<) p~([<*a ?DX4 ;, ]%c`=[ZMy^aE$^Qc Y~^1(׹9{}d2RhV&.uV m6, -v8CGOzUh2{_0cme#vq@<>?R ZrF otW@=(A:>։t2 i< ʞh5N.+?I Ya976)@ɘE:ys\Խ |Ď,Xܩtd" DyU*8OR ] ߨ#(.[v܀DG,Zn'g.`<4(yBN.Q-vg^=Ν>\akkrz.vvA\tӂAͲ9hMmn9Lf$6W wе8`SGk )C%윂Z]: LdU!YDztPuxS}ad6Kā$*RKZA}Q_i2rv_0ͪꋫZaл%I+ N[W-mp6FG莫v w3rE8 !kũ4 *U29҉݄GKBwF]#W;LU&'i ?Zey\=!tf1}`t{"klTM]NԝCfĹ:c*L7o{$h Ze32\/HN}*;0$CuFGQ#HShgB=YK5eu.Ovi f ۆ#.CUefPፗJa]<[Y.[!,QT%M=~ͻB|Y]4AVPAG=*ӿaA>KS/Q7?V_nsWrxoU%FO9'ᫎ!>QSH5>iDK()Pjz(TFe9}:ҁu} Q$sh}@=l*KAG`R9s$>aQ"椋R+0j5ޔ#nU 穦,rbl<zkTp^$@a!= HWmd^5n߆8*Kɵ݈ڠ(&~]|{}iǁ%Tqk.'[ݰ1;ܯjH9S(.hS8HC]iG]Fyl=X{ 2pi%00$|o\X9FJI9-/Πop !čF)QÎDryTvv#?(@K,M9\[6Z3)!?M靀E":G'.Ƈz"VBuY;9;ל"p#U6"?* jB50k C} _c'mJA|.we+C2WK^[L-0JX,@(^ X Be>D,M젏&CEl Ӕ[$Uy@֐`'D;#dk`Zo(%ϫH E5lDT" h 1^t_7]jWvBd`Ҥi;1IG2sRSlS.ҧXоhO ^+D= жM))> K M 4J@N{uE.&av*.w}gauXP7PzqwEq* ]\؏{c :x}D`njY WRI).WDALz+#3*' FOB5Iipf' @{M!04U"7?K}j?cE:+0NO t3onX_j! }N$dA.T>ݐB3jϙPSW=;TEqO0GWDԄnn(^>hXҊ?: ,PQElYG+nlfP Ocv!토D&Q +J$G` '2DmrP.]!.p7vO[MoX .U": f֎lw ~6QIgPɎ[>ނ/wor_>R4M9l|"YߨHNwq5^M{ra-BD꿃hL n5XnAUL*>BV5;==a%q^\'!?BVAz.>@N%_ۨPt91Lv3yBR'hdY*93 ɺI!'ɡH#t5[:V|IMn\d&v^+k$Z>93:8A*Wq_4,;)}Fe.7R"~^ᔁ9>v-QKZln?uZ3k|£kvv >pLno~^x/!6Y6 uB,KP Gme<~THyL/ @P*>OE5@_T>9>D$l,})rI9UP\% ӗ(x}($~fX}51{bk)~m=0Sk*؇z1(']m>wK/\tQS|K@5,ަ( o^3ZY{C=ݭOt{DiǺ[ Y1:{3ióm$7N+lGq+L.(//ʧGEON]o~LAgirzɶ+T:7" bǕ]Fdx$g7T d[K̖ ,)- PzC>9jFcϹ+B!_LB*Ngᯣ,ʦ(.lQuXS&=ɧ.tÅ*̈́,5~ t_]AxdV w\D.bݮdffd(/C>7;ƾr(ak:PR``i$pϨ33ώ?&EPC5y16fTr_?IJDoa:S# D;KVvAڈUn7UM֬ۊ_꛻x,Q8Z,%9?"Uv@Hbj'BCiy;Ʉ@S@l定V2!djft |=x=h;q35h׾u),st4GH_%9G]DnWNB-A8ۇY"Ɋvz~G8G5Ht@l bԤLH)p2Vu*"R4s|hۓ~鋕w'Q69#Wbz~cuF[y̪ZrӵJd.it*{w;\X2A _Rq4P_5+﮶,D6i3w~Jm1w\ͳTm2R!Nm۴kP1wNd`޽WUa 2}v0J9*ݬ4:'(5BC.`le,KMn&J*"SۍFM W޾^'OȿII?]R9!Uk߭AzT7A,N"?I/t!!"^(ͳʺtjEAŞQeAO7fo_C}+ %zJ-Ŭr!:BH,.uZDbQȘL!?H}i,Ta ỎH .XO ܧvQTujC|<3j&7k͵ A1KmB]f)/s0QcUj Ot۰LqߌBrgl5EEPby$FNɥ'=VIO6XDe6L"tA< k>a3K(ĀۉјAI (>LQv}(ɛ34<+ӃoUبKc.FATp 8fFqI>#*hF r, 'VCj>8B̳2C3[Ķ$( QHP7smTtj~vhm~j^ Ya>a>vyӾ[RR.;C5d'DWP>2zNk_:R7ehMߟj {)5ue[q>{(c/ș9Y:K}Z#R&7- lCA'X5ܿV[CAj5+F/[>/.}?Ueǻ^_KN V9L)q7x\A|؉c dtg giSk,^Őƾ7|#hFSo_dvC H2q@I  jpJKT;dv0WYJuO5G7&x!|ޢ"]𕾿\ O͞p<7%"HY5pş^n.s?ՐA(rBüA1S114 a2 e, uJ^ ,`*ܮ)+W jƽ!?ud^ӹԜ8Rx }C~j4u|آ `"k6amRZqL.Ē7'w-e*4Ms|n}=YPX/\kl!@,g# kzS! 01BXhj 4w4kQ?^XNhiE S]V|O}07$Ft M|8ܜ8 i1Q \b~/ fMpċ%Y h>7~gw+qd/1tI,W (e˶95˷1RǽџL 6M),-tw (dg)L74T5t/=;4w1sgJqzA^6eTuIsu9cS&GrAάltji~lpEEW,quX`c }JjZ&i+rgYv*81>.cLGY_.S'mo -I9GPy=QR@I$'0+.y}Sȹ?5G.?:M̕ʯϘ 9sv]PU׫S9cC5,Yυmb{6Q:T\l)e _\6.|C;hIW,SϜ T\l:#kr7K t|j*鎭 }>rlyA.HdKlWt0LR9"L "u,SUEȸߪjŚ]UQ:BFcS֧Etq'`;5`F6n޶>Hk'T] =F`wJoe=h)xڵ>C(m.Lض^́b:k\^iWe=rDy83r$RHa.k\$.<8E` (F {D@ܘzzA5$K'7WR䜛%Ue`!;[%C7-l >Ɇ@FlUQEP<&xf96vk#rfh j J Q[LmH+!Ֆ]22 4:7C W4åڡf9X8\qz(wPCy>>/Y py?ef`a)L?^GvUƋ|}GFvGhD% #`(Ua ̆ / ldCSz;MwJv>!J﫹V <0tVȵ1 !p]{00DaT`x[Ξ2dV%c..p-9_o,~U[_ Ē|R6q۟/9̘Rz*7dߠ.0/m`2$im%ꈅ"ᬷ16U߫pvxmWp :y{j㈜>\_UYI\ѡaXan )K ޷J/ZLh|#uq0z]U0E.Z2JG@M3݊6P{w L2,T`v, W5e qb{{Fz̦<ցBumwB<_\ӪlR}07#c0%F!w kV6pE%Qec05qO|~ҼE GlN'%<(5mSɽSv>LY?+Q&QӕPMzD9kwArG[K3\bi6ƍJ!dG eVZ1ST3}1_h?s0gtvO:bivC LZ>YR=BL:7фgX+)V$-@}IDQ˽k"QŊgz!Uy2bu1mP`A${3*%kN_I-Zq*9ֺP4D36(̓A0;P^'.@Ŗ| xW:a$/ “Wo|h#3$j ʜHG4dSpAvwf]¾ s tA0^#4q $>J5ۘrS$YRcAU[ThTA28jb1el(Oy & A ȽJ Cjlyۀ7F mByb Z/,-%jzxsRJQ;Du A2S=fYN R[ŸPgoCs~{A:)S?hS-V'f&xJ QJ rY"SZ a,ȓa~$!IvqKڜ82} Z֒!gP5LA&=4)( H} $^q8+f*HZI P/#q7Q=I ^-D*}C!gMY#QGťzjUPcDsKN6֚Ύ :ᔊfQ%KN7&xf W*P'ErArsDUs:N^>MMGփF dC5Le:= &54.KeO)!RBG`P{w!P l2˩*"FV1iMFU*6-;"<Yp@Go1b|:%wbEʔyjcNa!ptǤ/7rT<]xTlؾ y#BHA-RB>q0ngkM8 <5#UƜl+KYr :(m56[kQ%N EmmvqbS[[]A<Өi+Q^,6=ls^+Ǎ{%0&K6Rg>q=w1v'htRh{ѿk=s%ϐ֎jiJޭ zI"H!r핱Rwiu;,!)F kFV^Bo.')k;P`0VMp׳Q$K4r6 v2w24b7SCDgPCA@S !"C6JbZ!԰vk4N3~elV$H#CC*j8IS--y'J ٢zt_6UtQ *MKޟrF.*:LҙΡ*4WWe-`D# Z[Eg8ڃnM[!'.M?5 ^p `^HםZ#ϘFjYQny)Mvt!B?!QW'j:7ޞ3ӰpޭNpn>pN'hexn:O ZJSj*WQKȳxS?ŪnxVV-tfMM|ߣAv-ur'BHE}^tA?bDZC9ՃZZ7ZP"`F>κa Wl Ziw)2(lAU)j< @v"&P_Lf{v:V'KDCpbru*MY 7z",{^;"gϋ\v!& 0]*,3cAT4Њ 3:Mܖ j"$A%)ȿ҇bL FH}pBtO ]Adq- 15\C? z%9Q;B,ax#؝T\]"њ=kd@=q藰+r$Uy_om WSC 3M\&Z4@0\/JI"g^Ѭ>C)X {hsV2KOZ1'FAΏHF#P~0dMnj<##brES bXʽwo:p(ҐeMt+M;1iPafs-k<*d^@ݎ?4#xkQXYSG)YW=PuaYh CZ:+_EcIp^n 6x6yM9QҟT X*N+B7}Oa}:G^ZF*h03c_cpd!qwܼ /Vм YRaʲr^e Bp<=jrIc51CgCO@9-ugݑrcfzt%q &mp?$U +7E35Bz t^Ԁ8cGu~<kHu J&wns_1D(6)~ `M٬I}F1-Z $Op?{8 r eov~aSzgiN&[{IoT'3*otP#_RQbIo [:NjAv?. $fdT`d^(f(!8ιXR&R2xo06oENy"SVray-3C.xcJؽ]B+h*=J=\mk`"$߬bpI Yh`)d8#|SŤoYeg25?7M B㻏kY "tVBG+̓́݁̊Џ%+8ǵ Ap&58ǼzFfi1w "Pv!Ll '2 sVQDw+4N0N3 |HZGpZig$BtEZi܅-I4ύ˭h/oer{Scr&@8-,[1xR 7vg\tU33?".m.~fdNo}Z fx4ĕќpцҽn$վ7a)]Qv oi.Kx`ٴ#n+g1<(DIGZiv~Ù㋻!4+}/unoL6-Tn'3;! |;o=EP\P@_˗6_/-& _!0B$[2l*uIzjt^N19]aNN .`+Gb胿vv o܆bTz #2x22)AL'"x8fd4Ǫiw/A]e)y'uboJk/dJ™%cۄ(ih)ѬZ7YtOa•waʱ-!nYaB.0k8i%ϲޥps3IO(}1*juZ"B?@tvRxv4pG /l2`@pIERM`w0[^8\74u\=zD">\p%D\ڱB)͏!\A!zĴʡ!īuPd Su寳P _6TlZ@B0os5W3uŚNw,z_YoejhvqtVBu!pHZ7))e\S*J핁lBɺ/Vs׾IPNb$*ܡ|cnv+/v mЁ^N_1YibY(fjuQr7/q$U [T7Mbwyo|$L7@a'"qdTH!Ⱥx7EN 4> ͫ!WuYгaZk8?ہ I GpFNaNY? W3Awb !AeEekZT`-8 Qf`'w$%g{ZoGRL-=R+mƟҠ :\Ir|&Ml8rl wiӎ$jF=qqEERaaPN&Ʃ\!yʯ !_i"F_IDٺf-IɍA W-, LdZyuw۠)K_{ !^aj~}HKd2BV̛Vlc!8f I#I㲃y,`!9Qa=V?9TBL}I~ZaqA b3N-1sN4&\OW]4Q5qw5uzkUD_x Fniϟ!+z W˩zT wBܰX5Xdq322QT?c xV/n8gb/Ho,-++ V;W"Wݫ(N)C-4vbܛzh^[hLqb]Pgs8hޑ` 5t 'ƴsP\&osdB:awSH>52tb/RǚBQݘbJOrZ)_:ly)@I/A2}67?Q #]*CA d cjGwR=.ӞA| < Ϊ+\}žtC*ۻ}M[y[+/R.qpu` }`P2Re~4̹D<-~Y;їDb!c@~֙>>q55ҩYմklZ%jݥ 7C)ZLx ۊV QY4*#0yxkemU"伞3r/;`E~&=N88)S!ku?wý^ fӌsw c^Tв8~Zv{+o83qK!Zζ~1y,*)pl!u##˦Ec)a5&>rsjzSw|@1cztୁNxfDz}D vKɃfci2(*h٩,&.cR4FlU*xb5WzR U Nw{vtB盓kSPqP/FW@i$zӏЅPR7 "S9;LþSLخ;VѼ5oJ ;ë/;|ngc&AYu|QqkQrNHCLi1ǩ1Q/4O'ޢ㖞>$ I,y:!ܔ%Wg`em28H8^ٿCZKWvIً1y+gm~ s#>?_h9#J CĨ.( V= e&ќ|CA͒iCe į<$d]GTw3O&bAa/Q!}c FqiV]g~Nc ܂/%G;OR jO׿yL=9+J955gȔ)PxotܨR\U\~)Ҋ쎾v.O}H6F$ܓzhJ\@3 J(I~8w5lWY^kYB )%1 $ wl,ӌ,6-%bd0ǨGK?lQL˝cǒǑDꆊ;jN%MEr2cS:%4o i7٭0aaz E:;ΩkT¡vz*L-@.z)]_+.ݿۿy!Tpbк&Na;0b_6-Qsfƿ 6֋{q?O{+7C֤/{M~& Oٶu?NSWIM,/tEyU,肊Jςt x_K %;;u:(IƝDqFQaU|~F=&b r(Fׯk`/򅍪M Zy-i@[JS/p'_Uꧮ#~0uD᫯?1z7\H˫TFA$0AtBk>MO1#Z cI`6kX3Wgnl!}>rmHՏg s PAtA[۲2`!yͦ 6bU},P!S0 I rcsv7Xjò0t&@ԯ+4%.5gFҊwL2(+Ea9=zklo2f_贅vɰz׷̷WX3nJ8M^Qx)̸gc̬ajob{ti+p&׆cEș 7D+/|'C/'V =\& p.!0>7-LwGz<b+J_*|Y`#ⲴaT8/] 53:=cm`hΊ/<[RJ4dBb6d0ْFPDRMd<Z_!_GcSZ|;seOLؒYmZRO&Rm™iĮ+uȃ^tu뙌rbljpdϨT[9n~ :%&!䳱WibA"%SSt=fA3P/l;k>i]B>PȲ^o[BI#B5Y>⮐X7+"ԓAO!taU"IЩRc0{| /% cM}FFn\s|u%2tQ4:nŘ|yxׄ+G'7=mDoiɰ6Q6 cf;/Nt;M&mqe2NKaH4brߦk(5#wuNi2JBAP]k#w.Ap-EDY7Sa<+=nF/*$.H!$>83$uU9W mT"/𫟮X.oO%uS8ٵTTH=*bk? mfm&cyx3jQ@>I]R 4Q޸z`[hЪY`;q葓mpS b(~=r@Io/2'm1twj(^>m{9o8o>ޖ L[(QC!ODH2.jup!,?$0R $:~TjB0Cyn(5 bd~r'ܹf\L5O) 8p 2RJE՚y űƾk`8͂ 1ED^G ˴ 1Y|7]UH5"Spe5ģ3uɸ˩O)0m&T:KsL0'onLKa;Cѱ~F*ϬO jc>@mg}-xCalٻ->35 0 D _ǀ5E7H%xtis |RL2!WlDC]WKiSAk Fa3tk)' 9j)IIQՔ;*ӊfk8U^?-AUl+.}F^q:qry uHzjXV@۪%Zrnb\Yz.*gS"PJJN_ji'NFTJ '*@#pXD9!E/Q)UË>sɛ^]J.,+!7i"6-7_|Ҏ=x#ᑼ$oPӍFOșM_ϻq@7][~<ޘ1*z`opKu!2EzBlN!^ԎbXj $e#+W4}U74~W$)۩֞AұJFf\㜎3џpzIe/lG{¤s>M'i?5rDI=տ?NyT,63֏`bg: Yo.c&w;IX DLc VX445ַ>ŚH,3jr͓| Z糂N巄$bADDEHPz?F9;Ù|irnf}Հͫ'PL>#9FF݌\HٷF~T3S ak-դdjAkpfwE .YJWƐEEf_8IqWE#0 o@my?]0FZmT>.jȈ,JSH"x)Gۻ]cdUƍer AY=*Jxj+0bU 1̒*պ08$ɴ~-kˬDֹKt(DzFaX]$hP\dotE$27A[? HZWH?iAj}A`>z .R)28N]E|hyt#rҦp%Y%S7j{2l`seӝmkN]Rۙ:]@'% Gy9 5뚦2X2mNU0gUN0(/mڀnc}6rfj߂Qi8}z Uhh`j}agP1AUiR Lv>q3wCa[eʀ; 6a'Gh"<ؗp񰱡/IwJ SB"h;"=#z?{Hi_Rr\nK$OÂh7r.'dAVYKX(Kp}QBGPN{sG8X` ! Z 83!ţ:QO!QF/~' Î^n 5| .c-3׈)d@/̧&mapbl,, ktJ j(=ޤz3VqQaEM5:J%^b AIb8g* y{j$W e"K>IPeF MA 5L-q(t) eWm%Mn붵r:C[ >\0= TrDX@-NB ɭFv)ɫϏ9~kХPze-g aF\t>IQn-o[A9/~UH<=,  $.kGW\Bɵ4Ӝ(u&{P, N =i-,yD#<}SwIYXeJ-X|R͜YYEW=) ǜPJ~-X< eer亽V~( ,[eBR20orp#"Vh'Q 3okg@6:*x:eT,U;,D2xU{ {Lm_yJ.rigz0,? @xP݄zTo 7h+aRA>W![ui;֕z/1[;|.ׂb pd7WA}VA].;zdJQg{L3.5GгiqתK 5x섡JhO(* BE+Ӈ,} q.1zJA⺏0D#}%-7oLLJhc~cGM υA~ʯ+Z2UC<>}·\ ~$ed:#L#hX)PLFKXkGyҰ6-2KԸ/O`yg*f-m@#7A&mڂN'1fie!):ܟa ~(!WwχM2@ܮ98J<:܏硖ʳxFP|ٝ Ǜ4*Tud'%*S۠f AE&EZH"2M]M,S(骛C"7 x|[\0^R=0{g7-ozmZ8 LBZ枮$Y+R1]WwnFjܢ@$Bڸ=T4=^ٸvF"7Aebݹ}w3Wdl!*2X4l^T ~0̅ HLgVstv{"CeR+%OIOzW?VRۼ7,Zع f/ebMC_Ơ[?GWy: l|˭}o?R !=Ņ?/ P/j$o z)5kROP*S'۪4why.#^S e||†0&u5/0䱁 W%z%qز(J80lqgm/q<{BR -R 21I~ T<:cxf_uLfK LQP TڙmjZ= 3*ވbG$'<1׹aF9#*?X:ZFqo]w-fFJ27U?ӭ3:ړ Vf(OJnLzÙXUC@"XaE+{nzD t;1(_ׁB+-5\@@<@dqe@b(<" GMR{VM7*Ү6}Fm r? 20剬Mq&Qh&YNa7%ISmy9cLS<6% gks n/7%} (`N޵w,W0G&p <{H+VTPO)877E r~X!9zJz<9u5\&8T+%;YyT J2+{f(/<î%yg9Qp-\7Cݔ*!_aC-;QOEl1LX\<]PɛݲA޼7"Xݘ_ͻxJ>O8c!t Rht+'aMqD"Pb-[tu ÇWq`{#i|02M(1&{+UL8hQ;qc%dά4sI$d(S` 988|ZzVdeK {")u'Yp3ڄ_A1>` `|);+WkYzQyA^0#:eW-7@CmץQg/x1\ˬxmv2oY]F9͆JUcw_H p#?Z=o-n b}ŝ\c. rɯKp[ݿ:mJXͣ1^JK| 5 ]4UeWȬٺ~>2eZt%P0VG2{̨ƾ]UEKF 9($f8PrEԢ[ XܴNm^DLeӑAňdgIYPOղ_zƸ/B#ľ[+E9z25]ڗIi{[>p{Ux. K` 19Jv H<w !>EoBY R4wm4,N) aD9vHdcZ -7v=%c碪fH) yF1с y(lK _"!d%+T58{?U#h'[(n/z0WNDhr z1/~!ݮdU !¾o[wGk#os0dp5Z6㡂q̎F1/:M2kOég UU-wuRsi2dT1u&D\.@ iG2#/ XENߠS]IS5YCyŷB SG;1vyqJtȘ^MI?OkWk[gD bѡTNtD")$CXSW،znJzE{08Ӌf`Y#(@]#,IM歖wqyy[^oHm3xw/~u^-ޝ'ZYK.y)x?P`VndFXx 5ϝ+^(ْ G T/sAzW[d`C۳DEp؂mdw!_/KE"'TW\j8)YvF4PeGBOѩev[m~Jd{e9mkBpQEw0`%CYZkbx:E4R}4vzT 7Pb?*8@Tvq}9uDlO2>.Hgr/#YHVꦩ#rG?yo"HeV;WXZӕ^$},&H2kKPvIt;Qwwﶹ|S vi + =%mگbWeN݃[K( G;c}fV>'yxoy'V}'-7<bm*1ye)Zߟ& .̽mުC@ǨFF1p.$kZ}@va@a09X)fMVyP\RoQ?3 d02 {A={<rm|G!N$7x/x˔ku"P?fQwUu&>&J: <GžY;XWlL"@$T f BmѺ"E,MjU$o|9L@2yRx.B!/ M@ iϳg̟2-N/xA j&Qa4($O mIqWtl&Z1Sހ:2Ғ7=:4Möկ-b~iˑ=: r0:N_zҦ O)V2yYVkixҧa $'>3P$?EOԟU33jU`TC].ur=򝜚#b'mV: )jO5JF32P9NO)J*U |ܴjD[{@ɫ|`w7(LJ`fދ&,/˨4;غO^#jNsG Ut>\^"&fQ nM]|oOތRnߙXTmc=hOK;w})Cw蝁a@Jf"D.OR0\{>c~ Y󦧒)aSVhoV (:OIn]1Ӏr ؀ fE2Z8x,Ǫзc{,W0VPKB: 2::yjFRHxsfXx>C}LHI7-ۊ*p˛gbj".i:R5]fem*ߓ=Q`4<1cחER(4cfdW,Plַ)їY35!2?&yXׅa'9ŵ 3$~D-4^$z_(ɪ=62s`:_@6X};Bp`bI|^Q".%~,gO XͪU $^DVWQsu+'+]|%M@i]-)v-+T\/ ($4 vz'5;t> cd7>wb JHhHRZ;7jXT׽6=ڱi:(;z6j1m;7UJ#Gh~y4<)f Hu|::CuThř$̽AB%TjxJvzy- ֛9)Nva& h۷&>$ #{;(yp%9;ђՔ^a4>n0ӟ~T !/l!\ 6\HY!IB~:ǕKx= ޚ[h I^Yp90n OfI=φ:Gr9JE˦e^PZ=8ӟh J 'By ŵ~PaҌNd !g9JpW^,~f*]*ua;OP n,cLdQAQ|o+uBEv4JCE]&ַ ,}XWgͻ\<(P a_WNtQVXx'[OnGU/7? qx1!@l;pF̦~$15$u ^<0 k<]yhyN2J"Τ] UE=81;띮 t麫˛r쌁xf+J^2IJy;w aՂ0T!?::֣rT C[!{q+w}'"lΓ:ЋHOe(Oi4xI[yFbhQuMz zljrB|.Y(9Ǽ9t("` Z NܤNv%XJ :S2 :lwmq $sw#I"mHg#&R%PH2w)FF@{u! Z!$?f&f'$%U%污V#znT,ߛQrm$.3/z@4bsEkC"/_U|=08&!"dCVטj@AmEQ8۶&\簶u~\a3xq nGGqYf:2Ҵxa9`[_Ȩxz:w-^J])~ۆs塘Lj'FoPc#R c` $I]eH̀l&J]zXɪ6]71yA|k{~T$gɆv6H αNʦR_OX"dl=f\|-u:BeZ!i~?1VK?~UK]Ü{^)YFm#bpo_LV?Mr=@+o@Ma[3Ckl8Щ;K~L)̦5| +0xҘ\w'N&z(^8!a2U"fE [F"JGrHn:YbZ$@$dw6ޗsWQ0%\āҥRZra`] ǯ2N=.Z(&e w^W*ƽEt/͒*b2α's#a)ddX“3ךź>~+ %NĤ5ʡKE6t._B(`Rt8EGO+yAYYonn`^ ^x {K=7ӧ0E5l7 xv) ,[Y̰rD;a.upo|O:0t\D8'+s5Kӎ \gy\WٯX:90 81:/YȷjT,ҥ4pCi\@,xuƏR*FFgǘItRuu-1VŠ!%,#JUXl.8MzXh߄(GLE.-:>Cr\h^DC+]6':1ӝ(\) ]n# 8 Zf6p2yFʡMbRA5:%3* W{o@_@O1*3?풎~{87ا>kpQpվ+5 #Փm`,4qAW{d0 pK~?%<kJ4Mz)m%µJ.NN+G&coƖ;v/A3邺x xg2VYwrg{DH){=L5^ah@dPO:w Jb>ugEsYen-DV˄߇S-c~j D| 7č*X8b[E$i^n<xF-af,}z%-:R4 >=V0/b <3B!c  EUSt01]F~, 4L .19mr~R y6d}sYڙl%WN!.u>q:0G>ws ^iZo݂Y/J8D!㮨gh Ӗiǝa,jnS#ͭ6 ;81~!zBvYvg/9'㷉Ҽ+c% NTVB[6B%w]VW+B(kMЖG)F z&L.Zr޾Gp kvcWy~YAPaӋGs]M֜izMV`й>V[mpH\h~`rvYy-lq#c>3wqBF'PGÞQc["W<(SJT 0qTyw/NJ[SM֏ny]9A #/?a I/ ոk7;84923~g^Gfc⑭gS _VQ&JS: +xq#:AI\{/.ׇ!xㄈ+vjȍ6t'x?(#1HHr#$])tn`e;'r7\g!OQ*t<D@Hލ(4@vSJ}* R`zgй(j,[i3ܜ YyOBךg(Kt Us ]E ?¬+ZApR}Jul܋RvTiu}˗^' έykq*JmM4ؼ{OUm/.xaD UQuJ|_SF}mzɢ%tZ&Ei`botRU/tjwv X;t0A g@2r*yΔXE&柾c1b巓f|?e*L3,3PB+ ;h]^` X ps3g9V|yЯKWvtR?AR$(mzݝ~z 6#.ߚ RHZm$'6 "-zK&|?\AO !=]p:b3Yq6a3Ҭ~پp2 e@1n L=^ʭ,[,B+qI])hDflG6R@A˻fin-mbLnp6󳼺Y9`PaJȔRGoDӇޘsE*ior%_$u{B% Z' s!_Cq1ŀ*Al&:[z~3<=(BC v2)! z]&lh9'hAexV'P10(OdA=LzΙ$ZUE[U= E VIL4i3sbbP$ j~܊,:"H*̉,>1, 5|f[ Q&YX,j4e(8יʮa&~%5Oxv,>1vPdղkRŏdЗgt1m{ JDvbe͸-F5Lr/eԜ|}ۖ0_Μh[$e`s!4%n?VS&ÂUbhRq4{w l ƯTyCSIN"UksY9dL2>! k&VW6/7fËW`$MrLmaIK MwnIĢVD=A# Pe9#x*4>Rn{Ͳ+A}}֐7v-Y[LNZ/62t(-@Kc XVTҸG,MmXgx1ĩƤs5oÅ[ZNA8DM_HW6-$jlI qڔ9rJ_OͲʂ j͛ |̩Z+j5_a= ᯲> DahΊ<),"eoA?\4xO"еq h1%_QR^N^نo74 `d47^o7_h,ޓZqv[AлU\G k 4Бɍu$f#qR4oqf#۲;mLa8?(_b#DE U×qt+aI%UT7% Գz/㼮;i˜Z}ȶ#K+6FNXD K SzVfYcuFqijRYw?tE*h{ >~39muh3)UCE a58IF~6t*=0Xb<()s*ι2c]M{i炴r}|ځ߹6`&` "9͍iTTb~!:U>{RFK_함hEhIlMO jOҞYX^ᚇblߴCq`\HL7qT$Kn)K`'*'?HGw7v4}'$HvmW7s߰772rɮWdmΦϩ4zwI?W$c( $Cm& F:3 fV"&g1 8j8qXO=XH ɊnjI;euprcKL~K#)K" ,Dx鸑 ,L݃[Mܶy@'3e}i#ܑZt-H^\}ÄXųjsćiMzG;"Y2,u@4>, aͺ'=?S+gEԈS]Cy"X]]ʾ,-VZ9ARHir`w?9 8Q(t6ΝVN8^[]NS`֤ZHZDJd ;a 1

    f\!"@V0Vlw|/Y}q~tSkMB5Nlbt:g忮5d~O7yI`b?fZɵ1GӅ:'_oA#%RtzL3_'YP{"#qכЈ<ӧZ{숴(דSzqZfCS92e#ZdS8 tuqs&?5m _4>WK3bt ) ВS+!)ʹd=hb# n\oĘةIz> R,.?cEcHֆ0)EǺ V>Ugk2#Xo.CyR-U}lVQEY]yB:jhwIFz'EۧT rW:и.2MN.&} hq5l$#CQDnv!t]wյSC5ht.;$b[^=h3_p{j']]t4 s|%X*e{=pA:nef pYOhI(n`G&?rۜQ'}w`7?WK<T;KO H0BJ?7赟xA3ufn4Iyn`OS˨ێ@I';?pj$b~K֚IMb Z=b8#x3Z}w!ٻS(]D0oEtkQ:=hUNqܵ!R;6]ºT2t$Hڿ9hO6%UX4kd 40G4Fܨ: '>Gn+6JXq[u,ﳢ@rmɽ?vb#oʓ fPuF1<3u5nS]L:?ʘ!k|\(Ӎ1lx}iզ 6Z ' F`a;gۯ,iidijX:{ڥX!ՎiRsX% i]:`C(LJsM,k$ x%j{'ӗW5Ow (ͅ94$/ .#ۚX(FR/pS1T!k2yv['4(bLs@~1mOH;2Pedj^zBgTB?;Z<`6֓‡D)2([$|kqzc,(IW% ߌzVط䐂cĒ]L9FBi8 ڇ}Kt pҺx +vf~%)kݑˊ"G:]ͮU넺Vj\jb@U/$$;-ܶ.[]?QD8 0,6FA )zSlE;Z@$:ݙe/sRqi]#xZsۧW(휾2f->J^|Mj<D!aM.f5t?%$_/̣ύ{i7=\j{2@r"uy\ Y!ko.աe"-.hX^1nd0žL  gVån]JG(=FMj:-o|ēpΤBe5tdEz18ZJ‡;SY )ޙ\FM 6<8sQ`&N]|w( c}"L@q'ҌJ k: i%'G|ڪzoۉCDӺѨ 8^әQN}A\1aU FJ=iu1+)Nکhu:tC ~?xNL;OKL/9H/,_1| oSz&#UHYvߜ+kV_/m|Jh9[La3o E z#MOIƂRxoZrQ+PbcY4Y= Ao.z6(U) hݟI#lO492بaV"#iqW t Qly\7 'M5+᫃:AnTTzwYsd2A8Roذ-iEWT0:ף%9iM`T=0; ¡&aLR)Uu9V2MLB <&.*al%w' J"z M~;coEJ4cś*:Ѽhx9ͻ7JgD\ҏ 4X_-•Ӂ'/URtorn;u-~*`mtNQc7k,y{hqN=xO 2 Ty@8}QIk'q4{_Qxj'+i%-" V unq;ZVb0# ;_%nͶg<Yb#N2?s&5ܩ|vGAN*MfȋSѯD41iS7cYP:_郵*["f-@N&d$o^^/&(0+Z$Z5:ei |GTb25|)<:Gp03Bfb)ϪVpTZ,=X<ȃ8V ԇȒqQ} 23^z!Ci M:r-|/ۄoOUD(Su777i>[|j @y8e=CzFгDp;!( m#3<'3vś4M~ G짖1/iU_U2ok*JVsBCjڟ@kQuxѸ_mJoj;0qiT,YFEȋktZ9qx82GΘhSJߍoe}Ñ7ȹԱ\vzVQ7|z~#W^ekc$MOK=1N.rcs_KhtՆYYPԭVP4ǥmGKqOhs0ZMi3-Mld668Pg,A EI&Mhe'> GpIz*v#8}[qryS$DCHeRW / c9U!DH4y%edz29Giʖ~ FQTglruրd(G-Ooٴ=:v ٴ{F%`,R.bK`_J: &~r\%%H߭7ocwhVB0gQNUkfT^x IU 4;= --"f&yg5 Sd)wS_9?WsӉ@ptu,);!ۺ.~eg\Eʁu~Nf7 bRsMoUO33vJj'B&K#8ΐIJVCw Olhb +_UwZ:^ %UEj~P"_E"tXDP;/WBd}{:9CS+řߧf>,Be ƔC۔$a8J_xib/9H:El`DEYDh8FɬK2E]BWiz(m4QtѮW[1Aʏyq*+zUB*~8.aIA簖mK> ߊrWi3Y 1{]ҘuXud.K0BT#3[7P_M+0>~Y)[/tig 'Q2~w)ebU4%%5X$tUpRO9>_z0wCՋX4e_r *j;!*?dC"=ʍ_(Imπs%neI$*.?|h߁⎏E~7:÷J])#Y+f aZnnyЇ{,xK7X-s \L/eabFՓu5[.mr H*^]hq#')'t.ׂ_ffˏ꘺W{^4}w6lj5yp[)ºA  kkr44Dt13hO ~|Be\!nCg֖'_Mtc_3*"H g8_wWz3mԞG{FD6}kFs9Dyn ].vtnXBQaEPSu@hd׌ĪHll: ڵP起G(VoI/l¾ޡB xg \26g1;+˼U-q *) s`۷fF'yg6%$=l]QG&i|0FPv2gHS-A#<[ A?}Ba'M_qvEVg 'n=^,e&fҙ %)w\ d⡒xZn{$6 'M[4S=pֱ#L[hGj|Oݺ YiX|/o&w' MH|bG\[.{6?k'-'H'Qu +cm^`#pNm/rĀٖ*Ř*z`%{r _C,kٹ;RO{.N;ݓ.bGY8?'ʷ+%}y& J#z/Ll)@T e{674s6< yGcDﶃO2gSuA(+E&/ﷴuBy2N^:#A˔15OߜIQ0Τ̽^5R|E +D`Ŀ1(yFľ(yX=v_PaH),MmE ?+KՖ\hsg[FdJv)b2 Eʷ*kc&Jn}V/ .5!҈\^k[2@`"J:J8x=1lLC}uj?/n:دY1^`SOY"ہ@X)D^:|fWgw6Mֽ)^ZDU|6s<qtedhsQ!b^f0Xq4,?ݻn{VfED42RTQ\6;磬i#"uE cO̯Î_-x$'0Qؕ(Ӏ<3*[VvjK/8W-ƮtRo t{ 9ldbKI"H6{g muu洀e-1đ-*fՈy9d,? v"`,m{Ϗmۚ5&ԘIycB6GqᠥJ)^e."W#?}jMejڰEcgOw5X0q^;Դu6qy)\᥷h& ׁ:n\s 5|RԐ#Ji6BBF=s`(ANQYjD%FLjCPDHEڥ-qM n龇>ё_ u:vUߎ<?x>/jʾK M;ܡvfo7KB'(4cW\'honJn;ł^"ScstJNo9(f(~̪9֢%m`ͺ\P V dlVq:<~__Shi՝mp#v|xl$9]^q[|IfqjQ8.ԃB $f}!xvت3p)fq\x@Td dzh`$A'U wCZhn 0@c*u`lsFtUP.7W^/%Sp{pğ]f׊V2\]lu=9!B?kK\fy|M*iL\ލY7*ܸ!5'R(p;%sӿ6ƑuvG q[&%:₹ 1Lb<;ɰ|⯥$t{M "nx cLaH3J&5֢l .b@zl󁹛Cs<gB]vi'o_#޵)`D?G|czXbiSSބ{ҧ( k k0'[LzJ2W~k6 o]骞Yf/ݜT4A +!T-BXx,k%88X]`8Ƞ V?~`P+3~2X9x 5o^pnzm:怡)D=nyQKEJ4z/ۺ,IDٚ%v 0h+40Pc< yJ#3?gΞ9"4?⎊/Irǃw4@!ȃiYĘd~=v[zc^2ȫ0NS(悑7N0d R%W=>)yd7=p,{mV4^f?ZQJڻ4S\t깙t)eX"qd;|vsvr"_1.tٲD;N7onft>s0n ( ʷ`%ZwE#h/EB+m@[+% . G܊"iDSUP޳kpytH^Mg5UCfDip,4T &]MzgciWڿ]T>q-vq%{'yQmV>u-\6oV/= +S.-Pe7Y`@ѺCIơ%H'&.BnyENYE.Е c*\i ]H RqX|o=? ō>Q@Yډ/۷՝,TFȃ&~}*)/5b4snȊ܌j}UoG XGmbJ w\'KQں?cd&k6T$+Aς 0=m͐vI+>!1}vS>y(J:Oȩ#) Cٛ“)$IfcQzU2//e=Ru`6 !\GrȮ+VIq0Eg 7HQ&T wwrseӫOSYzBFqLGr[`2U6ZR޶F^mWI׈Z(B1ʥZnos FwåH/fa8#g)&ŔL4{!hZLa)JX؆P?H"jyc5jcFYˋ#Ay/A[C)h_x62bW2"1W>ۢr܉ Nȃt' 7#+R(`@8[? 7+"gUؚ`^%ŝLTL*x얶(%xwf !ȵ&(I+H 4HJֲĊp*b|,rY9pmis,#`߉:$IOe&x2?.ZcĘ^4QW]4T0=/&B; 5Gw?jqyzoN=_M<LG9)H% ]of6@s!8"bo嘎:{Xy{5vN:ǩ~VQ]G6T2&r%I LL8lX/Q{j()݇!_J3rC7p<'ԖXQ*LmibX뭈ؽ; \Dk>C Yي P̿ 8C eY.`E1B%f=>y'%_5z 0w5+E-k|錽*nRN:]eYr!L9Ȁ0Ë9u{Nj!m+D*$Pnq,`]ИX?3$ydE<.%o>],@k˿ӘӿEzTh0e9othɶVk\= OZB0zIz;3g0[D4l'HvX$Xʷ2Zx v,;ad%s"#BK`b31(K~ϒRj́:ιY[{an}17;F$3p^ڜnuM4i'BLΖ PG"Kޣݶ"-*6n]zaC|a a 1*' wD:iM7S[tuî,{'bB0⎱NrJ'(\hJ~ Q *,7,q^SLX$+4;q;UV TtS Jg dIydeNHOۧ7ХG&2}$F֟q˜?^WxP,7 @ӂ#~] DAq|8ie v)(m ''UH$\h {ܸ7H$iz>"BM{XER@ʽ X4r=?,& Uw`b5z+tk"hRZˢjAВ*tv6-^ har |,ycRqp;mltsUT ?S)uz5sns ^ށ_UmXӑ;ag40¤R^Sk A㥆mV `.Bqޮx˴F^԰=rV|xY˓w'/jV܇(M4l1T+> S@Jl˞-pm㯡 dfpAw%z<PV^Yj{{r\+x(S\K=x kM+5oFSnILk*,A@W!ଂ}xPŜ ۰e9"uۚnӋoM̴BW2'C0D %`]fIw2%0lޕn"Goy_8fw\DO!vMZA - ;ABzW>exA٥ƥAGBCGɌj~f`#M:,M;z#c! n ?if,q>q8pH/WAM0rE&j 2,) kDŴ#iѢ/:{X=DòeA)dt|%7tIN%ѻ lӲ:jJ!89,\P7S(GDݐ걜gG6x FX.a6X7sLI++-bzHJ12/휅3[\0Y^F!_>F̀fjNZHnc`;3<zD I(\Rtt-׃ ҟ7M@Aiq-W3r'sngrtUca=KYOYE٭2"/8x%ǃ?nZF+5 d&*]ż{8.4C3Ī'lUp?MuTFU] IC'7=~?|l93MBZlĽUԴ>8?&= 5#ujT;bfΛfFMw8q^*B u8}CɲIE|]6%S`gٮџ Pǥ4Uɰ %]Z1O&`]p8.фzbA:shZt' 6oâA~ʏ< *pR!Y0}OlEbCVKybiS[)6e_U4ѽv5 d{=Y#|$'Z8xV%˄LTӯ 75m.M08upn[?yg~Y[ZT8Fa4~$CO0Z%# q5ٓP_Pu܏&_G1x6,''"B@rer2/f mj\v!b*n,[jvZ|̡a2wi3խVRNj]&(t?%3a#"P}Lto (vCumӬuk,S[PM° 'AD| O=%l0T'B@G³`,B׃hm 9Ď1"wv {Felw˒xfm:֌ +sX" !SPFT @3S5J R13as=k4Z恛!TW$A03} 8@+wJ/`/Eى&)ǯ~–Rܛp bc} :;E/gNA5!K(TT]w] .THx?La(Bas>4Ti>N'OoPaK567>ζm*A9Ř-i @* 8O"xa#J:|OHhAz,膧u"_G8dtuyJMw cHN}8q~v0lj$#8~;Gw pQ:|gn֓>cf h@Pr P -ѣRY-_tYΔ7je׏D4nE-'/|NwXJ{M'o25k|Xۦ,DGD9S`~4y"D]$a_i 4~5]*+U͋1kGq"Z[fpIEQr#5+?}hj$ $Y"AHVm'†6@RHQK\u5g਋iOcVT5˼2 arb,T+u 枚;-vޅ]҇HkzF-4 J[)p#'M-7GA*t?ї= y03~~9*^Sҁa'Hekc@[@_|hL WAPgbE2Ǻb#c8u͡H@vu".I=qD%:0(CDNs^`jxEq%:ժe5N_Ҷ@Xz?-&? +6~q"VݚI u{_˼ =J^Nmsw xhJhR1'#F"Oq{C4m0N6YO$srEcg*lQr>%HE1UG#Bl\2@ԜFՒsj9М TSfO d7W+%A%A\ZZm092l*ŒnFOY>Ҽ+ &oq-QrY_ k44h<[E^ Ed)]A:~cFҴȴG9~$`y4h_/̊acRVȬ!^گ PңgT( mɓlrRe%'\ߘ`$ӞCq9 Ffχ%ۣ9䪺K g?sڽR\%+GY\σ _G3Zf7 .ԇ뛒Mh&t8>)56/,(l;`zMvpj|aoddAo.eu_~+*r~І\A;H+KvaP4+zA%3yZHDTeSſiCݞZmA kuK",I- ϰ^ĝ9{صiq#56 Qlh~'91sY5?Y!~Ť`&ҬOU? E hkbZhĈQ!đT,${N䬚WTbf#Ϋ4h~lWEpR4<hZ tI.3\|ixCM&Kš b̙cl5:zDH-}vEN4DXd6NOx>> ; LJh\D[*T?׼DlŨN+Cx[@F`,%9K/6(>K (x'8c1H }WS&Q~Qfݭ(` IPJx*H -shViu>دJB]j$x_W-DI=wR8 C4`F3=23h&Po]AՈJ@Na5Yn|| ̐<6==i*@ҦM)nzyK1]Q:b@eh-Ӽ;ͽZ(]yA}?nu,!ጰV X"S{:b52?ZT 4YUsuX)6$cxF.Vy ;SF|i{qjhL&{RJnj -Jӂ~iLV-@ezD,QI.I EjJ䄺hC(ӵ a#4n{4swM:;d ]y6>(]!3f^Ma]kuAfnFpWyE?+.ئ=g~?)VcտbΓWoly!`Rab Dg&η*O"k9T%媺XSٮxbM!&rQ <$1aqLzTd54|0РGAZK8!3Na?ߺ?>%3͍uFA^}7dZ-OJ3lz1|9;eNS>6BEgxV %#ZCSz'B;1sD6浂]tdQTփOmITۖ>l蠠Ǻ*4]zͮ L6r%QK sW\'؈k5;KIe%=CS`G}EK 0!޼=X7F5V߸{+#_m_DwZ+TqW<7wM[>HeuW WlY"9nO.ccvjݼY%\"/Cfkbp\1Sع[4LeHZac`MSe 8)0@W4ZvloQGQ@vv[, %>?s׵԰`чd53_O3Di ï[:hltZ Mњm?xt>u iuKì:񡤵:(p@z`Q5luXLnlľotI 0aoz$M)Xp 0*:7O5;bf6Yb*:\>nŕ䖥).Em=\!$K;]Ӑ00֌7 P࠺kKS8.yp=ɚz\ilaD'PifV (~C8/F``ی՝O \3+ml. ʝ"9[Hr͡]!QˮO!V*=]7@3Jb-I$6 -HxJ*Twom9J% (j0 $QQ]. vM?,p؝./tMQwtk$芝$^*Z4E}^c1ѧ“}ݼqFm[UW2vH (!p xJ j׆Mze14p%DwxVjCY ;߹٨(>o"'pNoG+-L"Kip1:.d_#hl}Y *gfZGҐߩ"ϖD!4Lp9]X=$صwsdamK*7ubiPW@0Ң/>LI7Gႀ{ro*qOG2+=E#=n]Ѥu8hϘvp-n{jslupXUXyyGT?LA,>Ukw[]TN .  '.[ -)34{NOA^s2&E`lbNy(zc_G\+1>]n7^D\ |M8DZQY+o&6/ }DZh#p5"v^3:b40M_Ο: T{J6B軴IsF/_Z&ZVa H;g{g3_!E.wHJ6$J56:i;#ɭs:n<ѵ(c60/k]嗥%(l:ɰi#ļ'aUg2*h_E}RYx,/F*tU] :5>M'EĢ __ӵРv$jȧMfO(5.+ F csvך%!pT9iѽj8''kZy8!iTQhH=q#y:\VUT+fVy]Y8M8NvF響ۍ@3.(pvP񃂠f\5VmSr; ba^X,E( ّe= 5x} +F_RL+XjcEXN2  ~AVA{nz?%)@ggª|Ғג/)LjJa& ,bqԶfݞ;&" npόbב?֬hfޗ9Y8ח}-XO)5O72Fe iH!x>EA8s*2}VPxd΀8Ӷe"\NG!>|M5h3v ˀZic]sv}<*$luBzRč:e~ݲ eS,^,EM C#@Ќ cD'Tvwlh 6 Rc؋gU( Cw;E+g'c vE?OPυR"E* Q+i֖?C~K.ލQ6L7EpԇLѰf{ÃyvMB Rh4TnnsqPOvzt94~ cd0}[AX!exF'ωq&C!ilxxqQK@B$L%i-_u+:Bc,†<)Nvn'#D 0O_tφo_\C9q"qqy2xpkOՅl >!4;]aźU{iKGwˇO}%-E`r(C$Jr9p.K1x \@?veYEG?R8fKMGm7i#z V{E{Y/؎ťL_Rse*4OՀ2<k85gʟߣl=7EnAҘv6wƘѦOjbm!7$})2G`6Qn$D<9^g,gE̺Ij;cvF~'Ow@taSQ {Tv7-GѺ5un(ٿ8'T@8+9*exK'PǢj(%5ڣOAWQiO o[?/QBg#؊n^;Ɩ_\\aRAUpMCFimoMrsGIA-.f|O+((@Ulq[ 7);ϸ~~VSVz!Lk&2tG4>ZX\4a=>Wׅ O"oal,"ˣSXvVF9nʰB86o2}HEmʅ0G& fY޹ C=?IYYA+ߓ| q#!{2/fyϔd8뱙:2l[#w3I_@ocC{4>Cf,UT{Ƃ ]tI$a,-յ,wh(t TPRNƾSa-|tgHa35YrQlYF<TP`@ <EeD08ppz-r-UPzA3`N,ƴBrp: %­6A=kxQ4 waAq/n+&kUöLg৿Ci?&u)~+jN4Fc r 9kRˋ"Hވk~ ="  1%N3O;fQ~ B]`:0TV Zqf2GuV]+|% d,9EEߊ|RA5Ht4%:6\V5p`A ; im"dK].EmvF`?aOzvd ä1$N/媷kS Q oH~^k3ڝe£zFӪnBuZJC`2;9Wٌ l0Xe}ύP5 97׋Bc5nHbn,F]nMCf3qD9v޼IlmV/PYR^ɾ˰ȸt<;I0 ڱe> kBd9<}HDS F%d<;rA<1,yoe%S@DxOc+Z-7x)xJ. 扛bgi t_I̐#?&J9{ .t(FMĠ8 59$ǿjջ-K(Pȅ} $d_ʥj{99rzFǩÚ&Z!VisZ`2ѝ lK&FׄMFJmA,VtDp4%Pe3b5eG-K$fa~SтUڟ̹i2AAtapjQ@C<I=YwKh%0bHN".>{@mt1h/&q.IU B)73K|9 )Z e (Q$K|t]zO>EP]A$OT 1y#/AMŋk瀿#Fr-`-79"uvXȲXtic$#̨MYFwX(i͘{)j) pf8gdbJ=c_ K:}𥑶>D~L &z8~w|\V P,1 V>,h8_$u!ʂzNRü3ȋ8TM`q[]ev9vme/@(DXe>~NEEJ=9U;S=a;"A@鴬##QQ`*Rm~[Ė͡*`nBn#(%};-RH>M@M<*wWk\L~vE87>~3M/Z 4+ZPW|9:_XH "@܏Xdto\_?h~dtjOQ.ٲUG 2&Se#Y 9c FCD,ԭPn=.Sft0;,"NMv5Y^wO Q K$`kAko7ҊB5S~ўk#51X._ҋӁ#:_[J&$ax$M(yAV>C1%ˊdW/z+/ Mm: H$9I0{KDp$G^ &P*"k tBIOEB̈́7,E/]=~ꐀ"Zi{SG3 ~ uTzQot[RrRcяRxy\CȤUf*綀WBR^mы#Ko'W Y o%f#Xa|H2\@e7*X_qhǿ?Sd1_+N:,)wnjjbCdo鼘0c|kξ5Y'.KI7(Cِ+xC,KԀ2Du.<+{h-YMkyqnt1cR}{š]y€)IWKtTvG00REKzSKr/sJn!DIH9kd23{5rfM"rWOQs0NHSG(%8 '."K1Z"`d=-s 5EIН{LďնX?WsX-GhЧ~[Y/\F8O2KxF<*K۬cuZ as!{.6 ^xT8$6+*ӳΙjZq^iևO1|.i%X!O(N Db Wv3rGмѓ(n/ ȽIu~K=yl&";V|6-1QYV _NSs zYxwg -@zjvu6W?\?Ó#ׄǗm|0U*SAv3Y+r]w&XlU4A:[?OiD._?/O:+[.Y+VRhM>I֭`[z^h;$QM X W%S!yukvuGT90቟s =Iwb ģm;@C܁:U*z욡09\nz d\k~BAՕ}oNySc͎)x 0m{7~b-^qNŋ;t 8$UطTieR=%RUWhYN]wen'K..-:us"aܝ:ܒP5Vn"Riy]2!U *>jv!Uh#zjyy.Բa$2 b78;h'bPHF7u,) Wd4!rJFz?UMӴL<{Fb)e+S x7A^yAΎKCˉ b V$Q>U_ M[gm]<:7.f ٱ~}sOSw0sBd#q?׌oxߨuͻc&@hA` 9_W!WC,Eߡq7+όPd[{Up_k ,UBw7/{j<|V&GR/U97_; ƷU9K1#V[,NnS*ZtCC)jzg-\ZOmYf mP!;:-4:laԷ\a(O- Bm+bK2"[\a (#YHj9< x 陞/:p-C z`UB?ÂXv^Q| ,Y`mizcr02FPG A@;/DEW{e-ɒ:%~AY%%wOA<{ sl2iKϋ>e"ȿhoY/U]8?+p_RTUaCܳ7i!yEi_F4yfG@s7)R Rfx'dĺkdzĉ e&y}r wҽdx$P,8(Kedn,5T26j(Ai,n]GF/n~hB[8$|NQ/V3ꅰȆ)_*ARk$5^[צcpL>Qo,}Ѵ2$RldOaߐSFSc,]jFROt4_~0~lX1 O?ax|p:4R< o:b#Yq"c̤b'UhdNQ%;<:_#^"MDG*?]AeaU9vΨۡ[*T)Ydo?ѹs5PxL|08b P X*-7* L]-R_0L 2c?Cs(Xf j7V ,N'ZŜH-o|^.3uSJd9Y2%`DUT`&*ZiV{/ AQ0E2$rlىJ ,ZbFP߹iwO4,$ɷwia2Z7kO xN`BHF^ӯ<@$nL87ZWZZC,}e]n _·B w5;"䄽d4ᨾS!Juрrj9bFh{7Q)WL"WU2 tE8+2} 5[uM}XT ;)&D& z3O4@~$GHxKK=ApXf2r9HBTd>XAGW}!A((+ $w5 є&5Q)%Qv<H2#^(R1??^s1GFx;J"R1eR%}['˒[*3`QnӂPbB,\RtpRZjK4RG"[@sze=`y= 5Opo")[`ֆOtr:LUdqDlRx92Nrkeł2[[]ʆFN|HwzԴ~iCs@ шҧoi0 2рlV{(?Tk:hW܄J׶< ?3sE2OY*^P;oWT_章qlP1#2gC/WFh Z p̤ C5KWjd\gr"&J\H1|xG 8M< ~nʂOgY]Rj(~!͉" qV;[j30qdqq@fLO#+b!3P-0"P$bWRFRRE0HZ>&nY\n8#{VȴUY~TI; { zydu[\ontoG$S}`"عhw $ 8Cz=2Ojb3ntT^\߅}{RNa.L-fє΋oOn-4+A$Y qKxxK̸2)$ۮ"553J\_~~{*wtĩN,$K+}ʈq[A{.٬tEyDLYhsĒeS^J1*o)MwA:}돯 xB ,gTxyI[[C~cîO7I/6g$;YTSp{&/BtA DBqV rur9 Lu!YtaEb]JJ.M Em&m`\1Җ|QYX#T/ϋ+¤@ɢ\B$sq>o33q܁R<*86'O+wg9 f?`E,1@u.dV9eoV9<=ueu@nTZQ դM|؛?zzKTKdʹ4IAWZ CIT`)H9[7V5;'j^ʦ0T3NVLUU+~?.vbgRaPkYeT2kh Gcjc1'c]GW4d L~GC[SVP_m0]8>9F._<Nq,-s 3ƻ IҠՄҵ|bxQOdЫ=/O.D.rGJCwcyo@ Xa"4Jl0Sj=x@f Z'ƣiͳ~P PdVBOv S)\~O$mW]YA9WDQl50־ԶHJۂl= =Q@Y6$6bsm.(G%.hTW?x2tUz>+Y|uIfKzt!dJQq~@OP4I +y`cS 6]cr2ݺvNO(TKnb/J1h){Cg(Bg_|%H:oV#>ZPdW;cPy/6AEVY~k&\pJ~ūT.H}]JJq;H@#y/395=߭Ci3u<9 ҾOۏUl]Gֽ bb=|+31|_ơF'jl];ZQ߂yd>_>gVշБ?ȕpSx뇝pRFXA+$!TI [1-& DnM9-9n1><@ưzIj#nYEh~dN&1%v/ꩴԭlH撔2OI—&(MaQ];Չ |o1>uGRWpfvwR-Ķo@z ϼsdޮG?wܷ<  BWN/3Oۇ{ݞB(J/nC !>2"vOS*},Dj Qْ[ hFu00F [qOVOi4;̲6c W7]QcA Fdi\Ys=~*{^x(?`k6`EtRC-G/ԋ7@~32re/B⁴»r\II+R7+cF V@ =Lo|F;{OhoW{ jf]Qy$՜3*:=kHm;7JD$z,δM,|稩sEDvo74nRoZƏbf=H>QyN Wf)y#_qK" ]ϸۂ.zuw(ՍpwVx*MOjs\.g0Ps̖𥙑yD7җoK, =0e8i*Q(o&h3UĥBHe}M5b뾺#/Z Y'QN-_H[Mʟ8DtM}ZWQqg:tXJW8ĺiYY5OFkẅ~EOⓐ-Q+J|EF\M 'E3 2-XJ_;AY} G jhvsAa]FRϼHmJ4*ocN1צ!F$b9?ߦ6Cje>|˞YTƖ lp*P4F˧(Km0xbۣ}BknvKZe%ۼI wu} g4d4v ct7l6ف ~]e-Œ rCw8Y?Q l?@ ͍ bxVb t `;]7tk!Bf۪̈G )xtl.H[A!99^ZWJ\E)FX%} Ec#1^P(W%_݊꒚Be6]T<{DƦ y.&J a&ƠZ|-jaEχ>4O/85U9p:sq:j/xΊJ|I)lɕ R[٧Ϣ#t!o: 4ARvWi)gKYܥ˺d/0*\ Cx"  J>{Itgm^+gjF6~'M>X}:v} n 6C@:r>O,:YmF6:~ME:Rsy}XCˢ\ }X+hs={Du)+ƛuA}TAPsw(- @[/iϥvְ(kCv#-̯0_(W)6dUD2R̷9iJ{g%Ti!;^U`,>YwKleɏap"mB.GĨE`%-;[3$y7\d%^S݌1d1g<)u.o`j`u%fk>r2Hcw !͕x2\>?ΤϔW֢>Bn eۍH\&p0#6fUyFxWr^|nLKuءZퟗ_  _^3x;0`mB41+ TnMj-2{Ȝ WIM%K89_nA4uX9¯Ɖ2Js[M0I7H8<5l=Qod2Cwlk7슎e;pc\HCq FkoH'}r8dGCi0pwߖx,XLLđou II,@+l\4PZ~mSMz(WOV!˓k<{= avZu'p@OeT^!}45;w2aI)K IlsOM?}v쉩>=l#WVQgv6o/`1Hw!T ڣUB.; *U/΄?ɨ!tQ>dRBNw8^ptr]d) _} nYTŵ1kIQŒGuk3 3 {ut†\vĿF<\dIkH;;B;shC-}4-Gq͐ڗe)jV=Q}SvD#,ud [fֱmzbk< Uny?MN,zϪ,~ʭ*mɢE9[A%*]ww<Np¥,Ў9cCPn)L?x"!b0X!t,x8m#Cy29*{[j 1b2LQ߈3:X O}K_@ ݥ|uA ]f[@Hld'0C?~uإoMkJW'>|lj_Y[SH#K!L8wե h\@uX2P枝rs^ar,\HƗ^e)^“iSHEI ^c4UAMR:Bx?ܹA3 g9(TFEs%,fYu o)83m9[ |ujQe˹J(zb;K?h"uÂ14h%.^~TԞ\6(Tj4b_!M#0t[>n,a r8]E!=AXGZjČ{pqTc?tRWs>AFP[ח-f㺾* )gb=O%;=ܲGݗ :y4nJTd$a qbr%韊c5)syYTs+Q^k Os.}p'M Bّp:@եteAY=S&X o.cy;'g:[ƄY3{Sqƙ[[&%2m~|T,+bGڰ6^)'yrcehaJ "f/N pG]@ۉ)TCR9R=Σ 1yPunaz#`Cz0zH2?ba >WN6\n8wh"B  Wy*>sB8D+V̧w)Fv}R{VESmspC}FK@m`|Onkj >WhpBGuH qUǖ.rtȏō^s% 94 =ۆ h8B=Z2Z"$ ~d7l>QZ핾jaL~Lv5jgKeoy;rÞep1G@t YxU!:}Sm^Dr+U?Z ]{E4'%]**B?ڽ&=VSȊA2xbqh܉ax{*FIyݼqFDžKnV/Yu9d4?i탡 sHDQ$jU*Aiv^!,t4![ Lh0i7<<\*w;mwI=Osm)Ve̦BV Y3MH;՛ŵ9p+6wNc4ŌLTb }+(Sp94nWati++9sFh[uezj.qTva| {5i()* R:{q}9|ZR5+q2Xv}[| h5LPUi3Bah|̻ɤn+VgҪZ5,upZ5?IEr_@[3L;[_Y*/;LDś l. Ű!ِXx4I&UQS+^E6u{jWiONJ[0OkiZM]^u+ 5kNeTa]EҬ2%ִ/o[4b<"ohRq0^{:o_cKc٤n%}X^9Kt ]g/UW/[$!Y<!l]h19l#a,T{<ƏH2dŬ5h6XfBid+1qO77sVSVolm䠝b?bט~Sh5\6+${4a>CvyT?L[Vkyq-!"K^/`)[u q7*!˭X֜ysΎT[{{O&2NSaH7f|B9ⱉ.bNʹ.PRs;O7svm=NlJL>JבEֹ`16 %RRQ򣊚5+孔?uo-7KkCS-VHۍz5U)>DW#K`6V&M 0eS'Qf/hV%&&jיﱱ35KҪezueG|%yZ)S|{‹1:"@mA"h>Vudנl\3f +P^فX[<N!,匿KA?8j!ώ`^7R" ~8 }*b:7Ed2/gl-t8k I/vXTd՟,._S_A;>33[! \-`UZ,Oq (x@3]<4lFįc۽T"(ʬw^> [*mRnZu `O/_䊚nH*ig^2(zTX誦sXGiZq_6Fۙ͆ǂ5]YTH&e{) ̊*19e[JoL v|!@2ɄoٽdMG"U+5K ca pೋҏ87\CC9uRwFZꂕW`@56)TR3g79Ѭ6* 0Klögely iNl "3i<ı,̡ny _% oP/w@HB$Jƽ .aLSVF$l=}!]䞪f e",K5/f3_ Q fUS{4mu =V lJ̮\+ʥJsMBq]lzkEZΚz4R OІiPcbSIO u :fqo,5BC/"pf0ޝ ӔBl..2s<lb gu_|_z]A_j_wt쮿jl,)i^Rv_RqϢAI#` f5xhK.m+<)c[D k-~}r5(Pjq{,{ [ -kƴT/h^Oq$nI#)t!|v{fZ>sey-8Ax,_pbZŒw=(؟ZY)2Ms u)2|UP'n+)D,@Q(N˜삞x^T1މ+FEFhPmu;mےj"="Fn >: u} Zkd.a3"JXS MLpJzw_n(]=ExW@铫s"¸?Z>Ǜ.ߒ=)$ꆗֈ\9޾:﷖ Zٍj!z|wωVr&&dd&C8?#y& w~Bl;}gh@D&DPemWW tܨ,+B,&X ,gMDDۥLǖڇR,n'oSf/79dM =xR!Tˉ9cdyh]oDZ!O4Pޔx ;/ȥx{x%z'Rc>LUDS!uP9] R/,KHS[eAwT:$=;e+lQP=W\zi> u*_Z+ʱ4ϓ#Z2"_fyVU` ͹+\NnhMBoph{h#%T "P)08) xX*^]2m&,2LQ"V=&1LaWaH,a*xcCţ@a(kv"4էwe $tqg{=jv?Z, EcBmYe(c,c'DfLevρ fH_;403/]NYŁx(h$?R*X o +,vPLvݏ-rnlQړj>ah Tmbޜz3QsxC`JyD#WNE#<7YoL0KH"FȪ')ڃτ)B/L]S|Yh7Ӫ^l{ǯ/+cIRfxG .<k9{MAo<1kyO¸Ü QAƱ~ 62KXC!t[dV|i_aaV4A5ң\:q%:n8]s4;U,^{XZ⛗Ȧdt9b"jd$Y[Ϭ=̭dvE  uZ?S7^^$ћ- nl]w;46|?uzz:%ٻ~N֜ڷnˍӸ zy+9<N|c|d{q7҇yv{7Bskc0?*5[ K»ڋY??z6i!#iyԗeEO҂b+j5l 8WS>sOTbDj˘nF5~TtbrR>ZV$ŋ%9uBomzNI-yNvZ#6zi%  ~t![E2nR1(j "o"nddUedC_NN~5&;8؝9= T/qW}8NK. D J.|ZefU[N;mm^\6?O!"뒈AhT3Nm23Ձut+`vv 8qW-ᤥTrssBEٶMo3_i{ܕb.,Z$ull纰jd"gnV\:[)QA5NrmbĚ/@*pIRH&%>51+)aw&/"7Tqh _[& FoAy5ʓr;_˴0ZYnjsS_pG5oL|0E ̃>@ۤ!'}sJ8& eAI;_e_/mKD+nugTuRDhNOG?(|$+MDٝ쩯iSlb]>TܡA KՑ@w /t5w{$tfH9rvm@844/ -)ЯP(;0TF );L:-eP:ҬOp׭)7I\fgasܱ{R? =V {#`D 6Cbz4Y݂n~A&XF`R72qR=m͠hr6ĪR5߷~XG͏[RTU좖cĪ)?}~[$"FQ4ϵ7)1g/ 88-`0i_;\ x rq iQ5d Muc9=bֆ˜w%-TLȮL5O 3  G@b޷#y|[W0l :X4 q "F%R< H"·rqEmot\RJ( #6 o[jkEG(hl[#sw=e9ԆV!a@nX/q$SBu[B-0{yX5) ݏVQ!!9qŠ#9l P!Kd"_5s[Zޏޙq($%Kի , l']؁( &Nn̝($g9G*n"C%89ziJ_Jm\Yd;$NbtJf;%v~HV3GI˺kQk:sq#?fh;AA>  M]ueJ 3yt *L9b;. <1HoB^ܙP&t5΢ F^4Ҟ9#ZE!UYF]䤧 գ5M ucJy ]Dre鸂T~,K6Zx@&`МۣQ <8!*Gv]w%TYH6IUvj~|`"d}] hQ4껺&T~m|׃{-A!V Fwn ^H5H+G~ ։G*6Y2x;'OzR( hMx\[9PulfUzT/9f,GmA Me| _AyK{ؘ>EJ:֟#=(9vpcRa=݇g%V j-.> ;.,HD{Z7YF 7׼\l,Te&߿MV8 tXr S}-$$'3-ualVC/Q qz%8cB\ݯuolvuEmrLPI-grE] W<}M螤uR& PFSHFڰDjʠ26 H T}5gcF6k`k(.>`!7xF&:U;}ʽ=sC |9h@4^vnDО@5&k %"mXf>I1HrzF[)&^mJ ]#b-]> TNACH9Zv&NSaQh)¿˷a%.s S +m8HBE _˱cVZj,uX 'Y1<"▾b_ 8$Y×bH給+zt*18%K*̢m`a >+|$c*=1 爂ngl-}*Ұq}sAR,{Zx쿢=vSԭ5 ?M Ö0̊!lmcYgbGpV22*IqV$</q7䲔Z}}ǫiV,1σWÀU30XRE/ \k˾!"܂JA V{hQ6T&)$D&Q<&!H-U$Oy#Yyt޶CA8fH:w*p7<ť/W򊲕R-a' y=rlL!$vP/k̩?e>]4߀d촻::-DqER~\!9![lW5Wcчgļqo WALi^ > :bՎ̊X&qҠ:͗tX1Pk!Ƨ)lރmԚ >eb!#aJ?@SpD&ԿM|}pt$Kr)XS?Gc*"r6.t:Ģq?6sHދ&!1X ~N1Z8TC_Rǖ}@lw:&䩩ZRnnӷ3h(=IӳJEg:V˔Xȳ[ЅהUPA Rzc_y1[;p}S'stigÈ%>XMI]l}c7PBM[Qv\剹/QDrxj\brdV~QK=5#=9䞴_jQ,CN0됬njEe@^e_w+&Flx48mJ7ڡCx '$%{ =so7mAIϙ%zV)a` 9o7z?S{PJJJW1#dz/}jT'+r MɊ&} Xf#)2?XB-d@k.׷Кb"Aar-BCD1mD#oU:ythabw3qg]7=-(=Ĩ[w9ی8-qѬ!UX䖌  /U1dk&}WDJ'P(?Y d IկeٙV*]+^_`+)bRD4[mE* xb%`}:OSzPل*ݿI>s4W&8beOHdaT[jF]6{˵c1|RFx|+3<ﺰ(t[?xK ]>nqpQ\2yy Sy0hbCaIiC}nd%Y痥U։IizVg"=FWRX) )R=)Mrm ?b6Wf㲣\מv0 XV|KU Fv5O~ Ψ]DF]sUZF5q*|7vq&="dvEƌ`rSڡC\;M%muKgv׶6%sq^F嵣ݳ 8;5H 8?=AP&'U 5VOcF_T4/L<`.!suhdObs i 3񔦕 Yt#^9B$=ĹnNvV28d|,7O'!JK* 쫊p8Vc_S8;4|2N!ߞ[7OZ%%B^9Zk'"h iZ9VgnI' U(c՚X9\A5BUkk0fXG\-DM A (/Wt(@VdJ4R Ï! W[$=nb~ n<YdH8}9vC8-MlD;КRihV\ѐ-fJ@簊Er6QO[Ǘz9KJ ylYWtb>շ Ã.>6HGi9~?F3fdkh|MN&QV(^++jNywagcjoGPgL2pѱnn% TņBW*O k(rи;OYL` E FVeb5`wyװdߕEqD[#|ZE :="+HS\чoF`e~M%O%F8yY/,L44e G [e݄L/{ҼUSVU(s2f 3MrlB@>U%p" SNH "Fz[j{rp/c7%*BPt8$9b45[0gi$ӯLX,modBrzJYK]bˌv].jf3){%30(Z9它jqKq5Beh؋?oLePc62xS1ENs7RzW+bHZ)!PGyB A; ]t\VYOz Q*= 7IqE6 1{nGRoSn]A`!'ܮXΠ>@O1%ɠμ]q >/K=ƥfz<-r7EC`ή@i#B_Ƀ@bX6MHVok/'@M[wD CXxgLji]t:zH/)RT(j:zQ M0iYYyp`sO1LFW,v#%Yzo0nrghf2 ܏ ӏ*7o"r[9rHVR?*Pp阃0!חt,uNGS2dw=pJ:ya. ΐ)ܽV%(g(ꈀ ўN|=#HÍWg8Q,bJըeIC[wTy\$>i}BC(kv@,|Φ6Md&<T3FG975Ȧc pHAmHNm4IBci=K3]IU%_k@ ϙ$n` y{Plbы\jT+O@j`_؊pdj3QEXAFmT-K Mwzk2[yb)5澻Jx )npq\b# sA>I>Bqu_| ÎBGNc#ʂqz+O:˿ 8h居ixۡjqmzYH=Qm79h5&^<됯!ԳcZg[|2[$R̻q#J3@Cn톚JԠ\<^j!5k\{~XcRKu?ÛtB0 JmŚ_w[gs-[K>""TLxG*䑼>(mV+W۟a+vh)q_/i2A^mcdhhDW+ģVݶϱ P77U|< '-AN.gb2gg86R΢u A5v*>s_9]I| a%Q]I]B2;/aU 9|y-*L/S׏L.;@1՘ᎂBwA6WD5_NfXeͺsY*;v$ yMb}n(aKabr0+$&4+"Q[w od~l#AhSlPY#yT)c$cbgMi-[maeIEױ#-NZR4ʓ G[yL/r'&}ZyԫS&3ݬX>g9`j vv) +IY{dpn es 9K=7/X,`V|a5e0 'φO4y9iMVFpLԐ*p<]cBlvٌBEZVaHߺl7;Vz?l7|?^IqSPj:c Y()/2scAvNfGBm& ¼@߃3zEr3M8jP T>[bS^[/@yC)DF200W=UxE$:'pH8ϤLL)^P DaO tSʱ*7Xtظx`eG7|t^Z[w9Yx7M+ tNPnuP ]GWU2mZ]m&cHa'?`_ŝ"nX.^Ðp6Tgo#h`z8jR%,vٔea-Vf"o/) *]UNJͮ)n$g`\bulR=?օPoԫkzSh91N&6C#gzVroܑ?YmF1dx8:'=vmr)Oyqr/ꑕbyχ<<;t[AzF T-rћ?BsW4<'xMmx7s=2}o3 52Ÿ\T?\ Wנ@V~:zV^' ;N\<|g[+HjQ~v *>g%YQ#:8Yвu؇CÐ @f'SwAUb&E=ai]^y|L۝/q imd*@2S0&M#zX{*婮!T}%;&ӡ7Ec!f9𣍻cwμw@_FtTpvU2hSQSu{!;ǔ` $bʎS%Λ~Sρ oɐeQdtXJVe낛U}dGS/W0UG P2hBd+/3AZ5L]Mzic qfܧZo܇w,OuחU>c=zuCTEGn (/Kxa\(s+wk)YG=R#]u=j!z[h,'cKs=vKbiVmی 5%$:!I =R&}Kd.3GcѦ[{i6. L9j4SIm%XgyͬsȈqibUHNvNaJ:O,bQoݦ4h~7_]Z&U{JPK1W*7\fY ߷./Zh*P*fj.:. ؼ7c=|l,+^H#~]*a^2O(pi~p>;&Ulπx^q/%vBF5t4Ubj[A M6$EʸF9b-:[}]0S^eݔn,*QJ`@)hm FGzwćp<KGGo!ri[d-V{@o:':M s=Dܫ"qGM$k;= [ A|g6!@*%`N}:}/*9'FCہ2`~6+-`v" h 0Ԭb^'ٶ,Iy54S/g|s9bOBC~;a";If#X E 6>Ek'DWzI dfBGN:y #PY>e8rM2|wJ'hpбN] 2I%VC*4ApiShP k'-75t9qxrn9ەV܆CejVDq F tZ~>YC|.Rns5Wo}mS-.<&,Jz!1`GrqdI41bw+:qްvDdqxMWvSߴ2-Vy 1T'BQ,TsD!/o?(n{!m{d'|hǹmV~:/G̒J p6ي=Lnbe軨o$QxǼ^qifBI#z]18z!X}_Zb z;I~4єa:bZ[aN2x}w䶓72Z|eI>{&x۾7Wr65w; k.o #(&|>F?jN ſQ˙c~kZ^/ٝ\4qP9^6HWxas Et!! GH媡d&Rf8,[#37-n;jlpB5BwZڱl*;#4+ HB6"M}Dx| ͇$ 5v4Xbc¢T]`҅EEԦiVr| &[m 4̱ͻFT5<BOtm6B`LݯZ)#+#"҃OCbfϯ1 {ehjn0rh(r4 Aƾ0 ӛN5|1߅`TFd9F^&MM I`}];͹yUPy3=qkA T5r,dNaFQq{eјEg6;޲d*<)@фO?ױax3Nm|CXڧ.2B&OxYd&gJln͘7rhg5ג6e>RR׏QsX:{2:rvMx+Fw,)']d* U-k/kD$Gtu]8xئ<փ{CF ]ԣ) HiP+T$/)rN3`nNhŽ7[U} гWY9AmImWݶnR]gy󿜒1U[:`qbՒʮ(U!q6SƏ|`]>-tOs{r%VZjs&үoDpxÓF=.t(:^鏡m[l [ЕO-Lꢀ֊F"Ϫ\jGsvݯ7J2ҝ*)Nؕ@Zy}UJJ!&]ޒTq(Y DQ|v7r/ & KwGAkCOA4R  ڧfinqyEО7'MJ0ը!`D1+J铌.hf?I>k."ˮ6{%K$Y#S]гL^&̆i4<6bxhLF'ne*aYaG3A *M"3rt0c *0.n|N9Vbf @e%U@КLgKͻǦP)jj9xn?oIS}!xT5_$ٞQ+ 8m-H>_PO¬ $1BG4w2e{!KQ,3$KBE!^i(Vr P&e[[Ǝގ̯E`6>8xx]븱Ci "1ocHO*dk=8˖P9A]]Y^T\8(񜭿' o ,eVɝ,uEC.A*9aIʧ©5\a! y0E!zYgV9jRKϭ+]jKO|!۳7ڧ޽#U"@C$f`Qb[e{ zCG=H)T;tPA+ ԣ/{GZ֚^DSv!߸%W1I(۪@iadzYsˇ\hw3Ÿpm%l2'@#ݲ+=Kl "9z๪:oULwjT{X\Ş K.2\'jW(^g6a O.qNnw+JF(S.Fp|>XRQֺeuv 8{#uO .>-> {]H&J.pXQXힱDE,-VTqr5Ii\Q;Z1Z:/r C%rQ85G4Hv= qrz& -бG@7Jn~-'zRZ!j_TC3"Rvt;IW$G)Ѡ18 ^h\P)Z%x)=B:J?(A z*KeU-LI/W4ĺt+fK{1Xџp'Gw][d@~EDTTXҝ}u4?bfC&!i:ZY}Pat3e#ZdcS0_R辞 Tas '}0 /jJ&kǛWt)ڻQ0*S%="62As= ޫN>BA2M$s#eÄ"cAyOYظסrW?˅%})I}ZGt7A lY7NN]Fm@O%rj0ߌcٳTJHUYŴNCpdt6r4X yR7e,Yx RL Y')jHaZ,pn=@ኣmuKUsEr,q΂pV^&TuyI[iFN3RlI7d" t 5š2,BIcp+൪8>y7FnF!2(4?bVpBL*WO]lMU45aJy#C|IE ;;jṵ1յձFpWP?jc?'QG-ݧOej;i^rIJB&lf~w7 vgBzUF }ڽRݼ4i틴=IyB`NUmD5RwIQqu 4( Et.kJ}c}f), 0CdkӞu΅ґ?/+16BЛ?:_NlVoBA6<ЃC_طaqmt͒t(:b1#OoXɲ}6cF'-KnO0*}};@|J_U'LKFH#m# F1 qתN&iCva?=Q|K,ކ/ ?4h׿U#P-uvܫ;SoCi#=shJP%o F-'R 9 ir2G?KEЮx /fYvRu.6͇rEz_dHU>AbsfČ]$@Y[ExP|z.Oat8KHF~xLfC@Ң%oن$fK$Rܽ/m럁.vku @PR=.2V(m\\okXP~Ѵ)w҄-~׊"B?ˇ$n<_Q[umoSؔԪwzS^FC ?F'@PhKy,[`0.}pJܰu%đ|I,5~D:JvQQM3BTTJ}>"Oк)4!{Ov. 8n<[9ჂKxSb ZMű@YպeTOCޮl XC!w-fX68J-9Vn]jݛ/"kz(=.}矘-',z t}BJQޓkEg&:?)pi\)Z\=lmBpK~;.3J08l&Zp "ģs82#ы(R`C]5فW W~<{L fdj!jkq %KҼr7,}ሃ)X )DZA=`rg h0Xb*7ŏ@"#tҰKQ0ovΡ(:䜴Jn@JᾋkpgY.#4NbRnnsŘf/ivȫohڲjI}:e#…*OI7@,h[(P:&Y;N4@4ryE'Dvc>+3{[+lOW\V/@{+eSo< 8B`Ⱥ#F|mb= tBlhpnnLR6cxݡ4:K*9y:yM'_ifJ;e$dT岴@fA8v{rcy:\~W qxpFDц Bq+a8<3QtKHi]$K{: J"U2*20"=9<.;ar ~1|McMM/ =-۱=EĩrfDM./myJg3-vLz=5i\9F[X;+݃{+]'}1O ;(C[ZfetH<H[ ҳ#u J(g Ac 4l&h\Zj"i dĜPS9~zb+ a dk'p'EΰٶۀhdDx˪??;T\L"#e #&: `ץ:uZd=֋rE{^L0[k@w̠ GDaǽ1N>l'~+3Ze*Ly 1L-D˶衊* ⤀z(>s1ո;#זYZLCU R K P"V4)i,bL  a[yC0h;Wl",$ $Qҷ]EOKZ%.[Zdz"f;:T&}˜,F`km2ϧ=nAȦSKF7kdh\o]}OZombJzO:sFMo( ][HFh+VR; 2u YG6R'm uA, $lgޢR=#E$&-G?H,|[h6Ypn%4|d_r,S"BwŵxB.'햛XzEєjHCDBՆxZzMKV޳&g _@nXFIUMD׾Oi"GXѝ1t*i] I@ ͕%֗${EZ\>F~AOakTd]Eyb l dԼYc,ǹ0}Z?s LBеCle.G"@6q=``8p/,L@B'SZ.>zE}sH>% \ ކzp"={`Cr9^S~ O|}ܓ E%ԡ4o:s1>.^-*x ֌-JL1Yx>\3Tɴ,cKxj(wF*2^y~5saΖ)Vǘ|3Z\hhw 2=>l7*Dh8n̓~t6yD=qkz%wz2$ٔT0`EJؘWId">bA^0<6J9#cs#P/:l`fO5='Ǝ >cz?DO04*4vUKD'OtSls~l]{f#ٷ³ @<\V$TkQ|H8 2,BBY>沞6bBwS^9ſh 9-t ũg}اy"m!J÷J~וl1.QLi*%@5kѶekid{{`Q|Wxv4g G`|(S)0hb8D*׬m[ЏUxB/}:Uir>! #毼ik¨^D+Qf_[]k\XR{W^'6iA9'c+):_1hgl$F P|&t]ot1/=7IƋ瞑x:tc;x|܈$NTo/:B bXsX*-Ex ڰ6TYUlJ|ҢRy̕6D.HfϖrCRTMI%}Q k+Rr~NWt<ϔ |D/+bnGBΌ.0|2˯qee E.19v"҇Z'k ,d8jE[תNq-N{m{Jxl)_SxoMW3իc^ XOn*Prܟ)tD>5p[pI9OzRm)J!Fs!m+e!u4Gd/=F7`!)XJw"Ap #AS{gXEG5j q[vLsN5#I$ό>@mܕ7&&K%SFo |(©Z"-j۳LTn03pWljnz}'Ilf20?FV30שD8;ha*q{eʘp'i(0KA' '^(AqX2/1іAa"qT+5~Y-bUgN,O5^H'p`1L[ğoѣ-xeJ$-teIAĠ}AqeL Ěz e1//~ R|I%^g7.ƋD\Ki<{3p,^q S`z C2E_|w^ڢ}g͸כp32{<d.ɫG]-!#f\ވFP%>U ҼzV ;̭6[B~kU  0 {V(|L,0s!F}ŇVV(X4FC)aqt1f#SqI3G,;[vpNw4aÿ;=߬_? },'MXx.[u@".'W8"ۛrn32>H-yqrtŮgeϸFY6-^I%|l+H=ԧnAQ{z54tᆰS->h8jlzˇaSndн,dU+ 8P[Tځ1>d-nŭ6$qiq:Ⳓ#\DF;lA^>1a#Q)߲7:bVMȆ N>!B j2S #qb2T0ZHЄg4ކOk+#F^Z1:>TH%OE5Zi%Jl3Uc-p^K?Ϯ[ ivsHp_rLQ;!=8рwoVWBc{[o {r'<(*R]PΜ;Ê3qɐdQӛ\ձCN#ώ{BZӫ QRփ|/j&'7LΣJ5@+a?mQSzEWjBHqG ʁ!h0ImhI_'" }U=dSSL߲]:""Y4Ejv$qiOݷO!:L{< !ܬOU}| [{_ 貓K'YLnz!~btbAg#\Un@69"ןpW6Ԏ71>f&UTg({>VYl+j2'S n.`CPw< ug N+yҕǓ췥l(U)ᐄoGŭvVd*:ezV6<IjN 좌4SC-/q3'p+ɖXu}g2@r*Emᝰ8m ɪCC=4Ag:F)NlAdKy{bhHir|6Z*)5OEJ :]pǛvCq6~ ;͙(EpOmB fx.)ZkLDKf0ڿ7l^ 4}hvȫ41(IsY%Bʅu=4 #E$-|wu.p9dǶEg.`K7g[2UКjøbA2{I֕BKGz. ,͢WEr[ v)a R/Xv%E} vo Mdjc*ple'Q ;^o*$Kَ"3$2w"1I-~zTaMmPʇ%,1+D!9ly*h/`VDsK/]IiC/z˹G`֝%^ aFЁ/ 2r<ܐ9oBPq$bcsLjhx_<`LxU\jĽ]T^ps~h>җ&+u"aFPDr6YmCt $wud&}2F -Z{Y#yS['*W췁nіQ*-k^^ ?1FâH)',4>XbdKBq#9" , j({5\PnRZ1d' 46Ə4B^0w|)F;}jc5 Ȑ͑CR\2;rMN_U+w2 /e⎴9 TAwM<۔%Nۢ;Rң ?b07hasO1'M>2a||8:T㻶6գNl_}v ۨ;tՇWqWp`ӿ1[ p61PI'WMJiR@SH_Ioh."`>{!ϔ7S^_Fţ=N*XʏOTY1!w`*~c=+F<{=R~/%^=E/v[yRB"M+9qG>3O[P-3¬iBl#̊HIRdηPH5ŀVh-{qӤNpچR#A4c}Պ&tL8M E-NUZ<ZFUA`K{~3&.wϭ2btDAfLVǏo!p98z7 0w_t?[Ƅ =hhrdxo#a_Lj1VB3DEC ׋ ltn]RlBa&В/Z|'a 'eu \6O/j>ӷD]=C!ko= i12/ݿn~B#E>_7'HY`A8 yI6 [$rQVSMI;tyHxC] W2b+z`cs'\ڿPNۀ 4h6ZuL 2Hp zQŠjJý'Ǣt[, b2Kj֖jY|Ga1$5l2+cOV̊2 )MObD%f  !3c^HDyS=<pG]EojrnrNIz=q־w5vXY02GO1d:)ewpƵ/ڿ ^ ,r#sE7 jIr/d]nLnpu5b2=G5 ߳o@Bո9h&!Jpt˦ k {y2xpAJ&ǴWt"Rg>]؂5|} mmUH]BS\1vl>pȱYZk1g՜-_1ÜRTE^nAryi['%ߤo~:]zU1|eSh?ygV 7ҮpXH>֮(o& L p!TAAp'l,Ix5ZLV_i9,IF6.OXE)^YNW[ 2l.)cQU`NƤ I%JFdEb1oTI}"6c:QV4?s P)j!y,,Qřc1@8s +:K 6NUL Iz7`24J!pcA5e,S (ң 23uxG1yʿMVصOeȢ8c*mDWy ev!}\ [4RT[mάP6O4K[01ZTGcaQEHk PQb gxlb@}-ˡ96h7KWVk'xkB9\ oZm ;rT1A>lӹ.bzEe̥UwGx.KJ@&ջ}ӣ.h.b캸ANQFD'ɳtv*I@m.$G33'w,9*,b&Do?y ecףό0{\}E씆B*;6wǪḫ^mkP`$˭(Q> јk3Fx$.8 y1E=/L6sjeVj+@G*I ubwnx49˹clpCV15twסƶ%­BZ΍ E Nh3 :!7V-]+CHh  v<=k]D kJԁC^pn>Cw 2jOʡrc2n1B-uxB=-$_=A,-z R_lė`0-<E:y@ll#7F%'+Nc1G yᤕ L6Uēj$fVTi˟6٩ 8ېZLJtGI켚b`NF7 bgvL@,3"xZ qrp2K[:iP߯bDd&wcCU@×I&^X;w#r2~zQ t xpmY&Sm~2jV~>%"Oonfc/1OdI2HYVu'ˎ˔%1V-۠A(4G0u\t۠` I<xpɱGt!Jb o͹\kk@^ `Sz0c,O(M8ۋƏtߜZ|kH!YmʖzNConf 'ppE4$RgQ˳(Au1EJ~# ؙwη I7.b+cJsP1/ʅdN8ad&|i*j~Sb|K&)RX81RdRYYٷ{1D4E.h9WZd OHRDP+^|;wB~Fȡhn">/.MsslvF+(oh)ͭpϖaŋߡZu1;p- sܳݿ=u$1OoRC_v{O]mp]TW{3#gqKu5I^~`GMo6e~B:-Y*u8J" zLmgz4aHiu(Fm&$O^Frf\/~`N- T ?igݕ1jDC!-D{sT+{DmlrÂ0i$j:D!`B1TW R%k*MGЏNd i-}>U):؂%kE9I(ofz.RV"eܝ3vwo*ʜڙcn}d(ZJ-v&@E.X|Fql?D%$9rh&þǑ4I78.?DMr2dHɻ,3rj+S[fBT܂al§^̨˨MK`8END11=Kz<*9E~G 3{ —r&QiCzzē]tuh̥<ۉ10@g&+3s=E1b_3X\e̶P?8JRdhs3EhBк#*:̾K-%RL:tpJ5T8,r[}ٿLbcQ|nlC&EH6$Sz\R(IPLn?O˝x^]m3pVX`<8zpj;jL [^y ~Ų4h 6<,ss#QL_)Rm2@բrmRe 0:g{x%dy6Ⱦm_#<w"CAFC/k`|A9s:i>0G? PX:Ar%@MJs}}N9^h"upfg vXoux:b,Ht= .*[tSmmbp䈐`Z`l Cײjm̧a,IGA5y572]Fsp<][Mcm,N#જN|~N\2i(I|+[/%yfXk\pB[vOWa#S|(' amȡTԐVض?t%- Y;;ͻ-^[)^P' O _] M Tŷ5wHڬPA4sK }BIfOS-H i%6ӥ7xj6@-ocX|WjOBp^K!% S%^;˯ rBD5@("w̧hwmYu֥`P"-= |M5p$\VsoTQmdeMiͫ(1z.q>2Bki(HVWgDZ֪Wr瞸c ~EYJr#_rź$'`Ư-i0)& 5_ݥ:HȒQiD?pap` z^Lt|Vy։uKx/L؂t-lOCePɵGO^b U^xOzoس & _x3NP;2 4)o{]w[⋰m1>t(C۹S0}f,SoŕVIKZU9 %Sŀsp񰾦b9}6҇';/8JS|Q[3NkK!E@J#3 -Kxi2|E<).7!]#DE5m5 @B>w:wxN}| \kj@|R$bZ u1{B]Yʳ%ĝQֱ;gc, N)XP>m"2*̒ʑ'] %TKx gƧlt> 鵎]޼nk+Bcdqlی d!rJSEcaNaEesꇂRx߫;J R[N_7 ӉKNj9xv ~YEu̇ĩOY}`ZlPPsP!fe}`%!nwڄF ~aOIG2eRxٝ b\|2S~.ԁ0Ab@vXIriIdSCA?Lڌ0U\/…/~MZ^ۜ2c:^O tDoߦ8B},=-値yPv:pDe!B`3˒(32Hi  |NҢ.d޶8GJ 'T5?R,[p0mOUӘ@f%C j~A³4l }n@y>U8rᦑoG-{3zQL"TsjC(ᇥFo;LE~ாGgwxqhpU:b-V?KE3 %]uD4\i0_thdT4},b[ ɓAxk:P^peh~]=u\k|^t }x@H_t$ fBI\%ct誻h^a; L6?=( Wh fp@Q wcƗ4FK'1&K.au$X['!C<E /O.#IR@fʪF"Q,h %d]Cչdd9-/2Hz垂3h\b6Ńu;\>ϙb̠/tfqhIBJ><"R9^O65SC*JLɕY2bhuG eش2]$eåL(ACm=tI2=TwSDS"Pbď;bc[ wH;M-COTVeWVa CWs+XtBO!а0H&hsBCu휂GY+]3=+xpNy*S'%ȥP-u3TH0q\0Mq?f,0F:*$W$N tBVZm_$\d#x [jxZHh5)=|C\T A'v|^1 ^PxZDR% 8 DYPÍBh!K.(9L7Z{7C(*p~B% f{}hsI-(h'LxU@ ʹtafޏȗ罫kls l$Dv%(*ZJE <A&Ŝy`Gѐ5Mf!3<$H(*lLf9!g AMWQmC짦b a/uGɮ68֠CO6%^<`hcI4b\&=eLƘ8VM !KB H-JC6Fj: .qeOCj\G| )2cr{"A;F5}5sm[m3g?ˡ| .uE=?zu5^o]%4pDKI/Ҙo, druN݊a1%Au`Q [leuh@}K{-9Ձ߮7S}ӱfFųSE(Gu@"I'@\FViz K2ykMw`,=rƒ+QsYӞg\Ah'l;E@fjd;r-䱠T[W "&lSOZӵB{RjiJzEIՍV,&sNfŮ ] S 9#fܛM[d{R#8%!vr0t;yUWʣ˛*Y,9 %cƴim,>g8ÜA%`Yee-V|&(Jbf6yb2hϕGf-$&M0=Z퓃bjB(IwNDv_l` K Pq_cz{{'mFۊd 7f+|C&ZGAHȌHSDyܢE Ȗ%=Ġۨ~#_bj NWGTE-{d0Q2nȮ) lA7 1iTru}C*X`x'0IKB/]kX:E,Jy=q=1K}m)Fy >:bg/n{Y&:2Ps6N"gip~"_H9=tM+ݲ`ݛ/cjTvHF!.,W,Ya.v?oǘgbJ`Ȇ$fJKv%!/ԭ_rZӶ1n+r5 }ҫ[R.-&҉>RZme6b4x!]V߱o|93`S#m ,p l)S1}lhWx7vZǸq-&0ANؒ.Cx>ՋȔ*PiƏI'd CBQH;/p)8Cʮ]=?uH(\|Po,:n,XA OB˖5@\g.dD]aGɄ)F.RQ,dRbpoU^yxS2HmNM}I7?QFH4?4 [Tq^wj^Bێ)jWfW; ,iq@fSD㌗-ݔ'ryEN30h0n /GMMY\ uLF E FW +GR2U%t_H Թʣ"6`bH&B҄{T dQ_.\2{+WpUmYwnA oT0=F==o9Mɀ7M+ Wv|ks' Lky9EPNj-ߗpsc$֝㬝 d߄D@)-m(=vgClS*WQ p3ʑ\5|cDz Aq+nk>D+U EU oambz'aHSgGޘg>~%=$ẘˠ ,L(DJ4S Rp u 67.\VH8B.^c hEqgJfߟJ wI$7AbM_\$MemX< ,#8Ϻ/еǥ *DBfnqoL\҉g@عwCuZoV|=F^p9ļ"u,DȉwGD_;b{2齕vѸ 'ԫCWoOE#߄O4յc C1CX>_7b٭NNOWfO0S~&~t]/I0{Eqfd95耲o}]MH*|~%:WE5m5H1D`O":ٝut?mۼ#!>(%ālGy0ӲneՐ7+'sk1|WX2qryuA]Y$pBQ'FA3yh_ނ?ώ'[$3Ɂ!y9-&dC:-ȂᖮtJ6 ة m ,L6?'!)LmN:4g!u&&)pKT"hQA{=vp3^ί7j;hBá.P{ICPܥ*փǫ]Wz^eZѷ\W<]gS HZޫ|.farxkS9 WG̹׼aP %TQEƯ6"YMe8Lz0DP,1lǚF_+!/6=JidR?vuIssR(;rıR2,'קQh"!2k"`GCa[<:h` KWI+7;`Uu9B|o] ,SDE㺙8'Մh )kqC\:->#4sr1tyϡ&#5t#pwYC"*H^J[Z>8 [b'vwcv% [a5Rrm?Q!.S'{PĽCzc {|`]XCWP ];v1WtGx2C0)GѬc-0V7[}=La3]8埁N ߥ{ iOG>&K P%mV>'o7ayqh=k/* Y ms:j/I줦{pUu2pog&Ww^? U,5)6]|̮'|g,1'^/ّ;?4Eyگ6-e j5Dz菌ydpy}yOt{3X:K: AY[Z#j7XY+8WVQ|,28ܶ˛_9R ޝL%ưusqoq/:yd٫ UM%HO[k"vEkweAz_tK- W>BDȞfapi.gR xF!V172R4JّGr!M |WDۚGW0]'jKor= 8\VݓCQcE K nZpnJX `)"8bafws,,3KĨq亪ei){<:Fn+5ΔqͽX41?5x1ҵG S e 'J98%+9D2Uj][Ig*ߩCS7\)gXOݡVw8"R[=s ,.-(M9i@ԖN长 ,4EL(*睚DK*\Gx#6c3 T;wVv"hʔ{)wQxU"&T J2;˯"_$1bVJoYQ Y5Jx.U\Gb3>|˾Ry,]ElGl͛fcܪ>)K1L7 75Iaq# Ae # Ybg=nWH)gs- Q? FejULJҭ;ƙM'{0b,/fKE:@|~KVO-f;ѬciLbu]׉QuBet25pC)kV]([VBZSOߌ%,}#E&WB96-u dN:u3hC󙰐 e"W0IL+8}?<7yi#캄KF×@m4AHRc]'!He cx8^J! +n\TTba\oxSsuQaE^j:ꉒ̷Uqm#2وM]NL bK6b%[,L$>A/5tu6ϬW 1e+ ɟ=+LZIyi׳)cCȟycrs]qV7"LMO_az>0$̦; C : 4njE͚ME/I3ӡ(:P~bIgD 'HX^+Mll>LǶ/nk_'ro)yvm,6 ='.S5UfNIbG/u' इ"( =FBg.8j&xth6fIh½r q3@q5Ub XIGi{_%0 ZWQ mm.E8X,p*wwVWc5CjzRRUCv[by,NS /s6tt96i߾̪dpwdr$?БGXNb%?j*\Ĕ9Jb3sl +Ii>QHD'i $'nSlh$Z.whޛX;3dǜg֖Ys)ː*rmR_㷗a7=ސCQ#xȿya=W^m>ݞ-b0SV:Hn?_ji%.kG&R0lX+ڃJ#@ ڻ55/qɳYAx0RiXVT\dhBlJՊ%4rѮCO܅kg:@|kccg Z]%gN_`OҶA^{~7mh': XG2WygBai*6sOx l^7!*tw=hJL<ډxڱ(;O:%i4-"Π5 -Վg7Z9ÈG׸:(hQR?S@ѷ roè˩6Gb/$Џ?./ p0hD߸WFjZlVd _PV89n6KK6PB)F/4',ǝR #GbO0ΙQ#F";^!*@hjbdJ`'?{xܚ0 ׉"=&)n͗{XS! 6Bnپ`t,?b(ԑ BQphٰzjca< n~(9\[5FPq`"?ƸbGB&%8lB$OuעQ\3RR)xaw)AJ\w~^_>dhl\#l)c~h7;X0gD^0+3^3>8M%څZh?5v %Vǹ8>]Pn{SAӊ!DK gyųl:Nƌ?By`LLG֕2G~sC,pO[Q2)޷,n!IՆMy;i,-S]^{:V3f{qTT8K7:Nhg`Ct6tbd8&5d/S7 pUSHs 5/ѮgnGRC-_SoY\'`v8C 8⏁@G] jW\͐2jAۦh= 9$l?i"5=XBZ켒`:*@w Kb5R{sj w{T-ceeyS%t`c'~J%zi1&-^8 nɢXPB=tuk꿞Ëҩ?46 LP!&6 9}o 1ޘ%țF }&꽐|FO;wu{qHF+=snd[1X,23]z` \Erף% djE;ؙbeXt./%*Tף9aq!֎=Vo.`3}le=rh^-~Y)ZIp*c֭U^_iN_  Z| P`jIfP];f1ȌVFQ?o7eLrٓmV¾"_! ܯ5CXԻӷD&:=ߤI-UrLlfJ{ q@8ngͫ "Mq*MEY[LX&S>~}Z?wSQi@KE,RQG%@FTzA(Vf|}L>U`dƑ\qpzs QbR-dQoٕSQP>P}ď҉:.P&oa6~ءY,-u0'Ny &C$tKw.O9nIUu$~- o *C'V34!VJft?%34Etxv݆` ܾA~y-kPE>gűtɜsƿVR+QQî'&S_\>wo`D8h3 jaNnU q1VCY]=հY[J*AZN xIQMlD0Sir=%)E`L粬?5»k>I {\J(.ݽ9m]HR{hACυE]uC%2:xۭSX eX-O|,_l$ݠFDǔ$ 5dBP'Xjm3K|'z%:Q&ݟ,mgr_^Q*:%hy$k"A7:B"Gi\7eSEGN Aj^+gGk^/^l 7V<Ȯ'.`ϭ闈8s4GtVVỌ6T61f3)EnsZ$o3dvNMD0ʅaY#S~q]5IoA|ZLgpbR>j8tͶM"QeT9u_BϟF pmr2_g\-,}WՎL9#w/-&"# s]J[Մ$T hb~K7Ku`pF,1& |?=4ޘj?6ĥ.؁ 1{7؋ܥo+uh?o#s#A4,_uMl]oPTQO哃VҞb뿈pir/T>uk=Nfz*\ RG7G2gRm)1}Ebf@E vzLij*l^: ]3~j8gVxf{eucwgSl8OGpܷZ [Ds`k7rR$N4\q 0WYͽ)WHojg1[rF5V' rQ2t8 *+8|hB:;zGI$AɑbO /e$Uс.ut^ T뗤eg(1R֚C+t!6't"嵿 F#6 ZɣAtSdUrV$E~ Ɣr$u(4W>FJ>&e>*e#kph:A]#{C V>UƤ\KTX5sS Lu~1Og=XEJ=!}μCS:Jwr; xxNttj %YH)޴JVT&Jbr4(G8&~g'w3ǢH!9&0sT/f> ėK3q.ܩ &:VNЙ)9=c_;5=[*$tNAhUI=a^ |2?IZAdAWj)thDAQbo>aCkcxSp00&u4^әUxiBZ(I})w[yG`_6hʔ@<+v~\Ŧ_Z+,3-Nk͝}'0 =fxUq:wWbt~Y #YEo>9f<#~ 4Ӕ.񀛸@z%5Z#iz+z]U֍;}) 8Z2n.D ,]'-͈Re՟t3nDӳpolhhND5Q h9/TꇿU`ݧ]"Ԉ_|p5a3MwC;Ś;=tz5rSqy1`›Iu{<s (# .K LB_WTHM.7hהrr@VoiFrDƠN9:/ؘwuc*U)b\d xe2T殁;m{. wUϥ/ ϲ':Xy*ԧQ~j4A ]]*j\ QA/@U8ʢ1bTqO(x++RC{x=Bᯛ6=^O:JAZMk)U5.[3-y:||QdkvFkN~:bgjL(:-@Zb;[hOA֭œu]hD}od#r].o[w| lG !m2d!XĊEMk%&,_=C*f馎нR u*Zf0_Ͽ[7[7@Ck;:Mytn'HT!={t{%<yUFUi=c?zG'a93- }3MKŀ"tnr|D?OƒtH7c;LPx^iwp ی/-43?3}I9Q Z3l:FHق%ts0VcFXjstc6bM;j>Vtǣqbgavk6̇ ?5ѐCLi ru5t ބLC Vp'hj˃,(n|JqwXp7L%9{͹P(;zCrtȻ0 %D]DU`О+k}+b\ĂV|D"fz0!n.bs+.6#f-i"n)?7~ EDTN/Fki+ lm o[P%q;4ysbэ'樟-M׷ ό4+nԒB 1|!u8wJ{67wrx2 $_q}.ሪ"q&9?ޮ6q⩅6רP/Γ/\BA#pʊ'gJl>% ׁ=@4m+qPv>{^ %s?I |n'TAۧP3үW;iݨ4#lw3; 1J|d=uaPeҮe& Z_2n"Y!sɈΘrPB{gњM?':Y~U[bV_ɒpIZϠ!«܁A+Fb$;dR!դ2{j'o.b(هZ,3=jxׂBu&&Pej91nᔁE" z>6=5kJo~bamdi+̊e`"B <@pHD85ea;׽9IU?+lSEu;xU8-3ƪ:*Es!ƥ_]&,tN #a=(TdvىF0gUݚ2@l`LT6%Cs2H n.@0Q:E&v^Z s+o^ Wa!etUu(M/sa?OLs_e\eMV%=.?Ϗ%~k M)s`ۂuWrplq*fSy~PNJ$#˶ˠc4hB>7^T1\R8ATz 0 ð:w]wZ7T^rR!bnbrI*:LFu,eRAr'S8' 9$N"7 ;!B{Rֽ&ˑ=tޱ@d fbg nQϋǧ3FX;03ekG31tCTٰqldž+6[ovD-D86Ԗ<3Q Q,XaHw7UUzY&Un%A!,vNV@S^-ȠsDk\qw2~fP{9Hh{,2[z ?>]A|;\ϩ}7o>l)b+пV :FË*dZdVŴG!86;x ɆW~\2]RJPۍ_fsv^ ~vrwR±5q9z}ۯBu[ ƅLgvOjB 8)ۯ2P.N);MR|^cBP&}WÀA:ш ʉRibٜ]?R d% 0_OzU4IZX.2HtV蔧pʸ!!SΡw<(j.@Xkx\҃ I"k Br-k{I_ ;SεmNv% SM#d|sć{22eDdQP`.s~S,u`niiʃaP\&3va /VsuqJA\fdѳ8lS)Zfe)>F1 lo02/@?qg%t<): 1a%0MOV]R Vd^@OmAiLII[aV_(Rr~`Oq|](ʓ=!z;hPTv{)H3`~H>O:۟nLOyZ,ls"{| 7t0TЪP͚/P.`kS=ߚK|) "Ww7t3Y?Hz65|z~[Dx_\p;[NǸ})fiQ3^:Cؽ u2)blP~ױAH/~/i>P)?}N܌S,jn2]?y;;XeDrZ?h>F Z+WFƈ Y :CMK$w119-rS\`&%`@5$i'|څzACM^))t[3@rM+ ^LH_Z4[tK>9 M)1oJG_3w$>IJ 83%w>OyEE1%O1"F#FJke8;  #{x*q@F-eZ׋f& ",!/Q ljF%*)9 d.:;O(>4S;% ]o"y߸R<6pIr||Ih~佦^}Ԛ- t$u4kCRb+7a3]P}QX Dk7ka:Iu;n^svo *>Fp[E? 1*da~f$ّ~f0ɅL ,ƟeL$M)3Jow4Ù"D퍻~sޞMasP.Xo+18@? cP\9Kg:[%CIƑn٢ s)kQE/nL l'Z8EKn.oVub/pps5BIR"i~ JW2P@3t@W{{|iu@e,]MP=Uo+PWA=OD(vs_ӟDbG#*p?$[]^WD-eKc9U0* w\L"̱>Tw+l -h=C[tn^) RvnCPUf~ԾM#9 (F.ͳwypsWOzUoj,6G%Lzv~DC5hўϻ fA:~EXҖNM`q*+xS)杕Z2B.r^R{_{=ԡ1!yjs@S"9&1N᎔LGߚ}KsZ_LJ@;mt;NtRZM˼ $Յ%QpUr)H-KEmf 1FNZvffR@N^:|{vG<\O;"]XcIܠ ' E]1#~@@H% `>sC1ϣ'$鎿&z&p]<450Vt aE:|~ [v$S铣EEޢf,r1?qʧ+!?0?gAi |a7{ 4u.$4B3FקXʲt}ن*_ |?mZ gxwZ!m'5FF>h5&v{q8a4ZHՀ /i w JaE a=,(Y^/`FwxSM$ݱs2kdW- '[AL_l%8?y8ʪ)GW0~T 5oxU%儏#~=F*i v]k*7׿")bq -zGZeO5)e|H |5uGفtY^O67~(u_P9&@:ؿ)x( ^#U ǁ!:,>6Cr҉ˑvI5Le~#jN-kC+c7t],Y,p;U'%wfV+s ޤjdK48']8W RZ,?TZn̬3:b2%ゖ~e%{jYd~0O;6:AR9-'!9%p΁6 /z^xcÝN{ޞ`ckS Dk3ɇl/@}ҿ$2J.%3b(SLЦESd9Q64w[䢰D@gvx=;D?ϳwshR2tVF =o=Z,{\9=Yq4F /S`wUOC6K))vZb@f;tDuh:`IQ lWN4wa,/Yot]fr\qMRa&zCW|#X\& OYZI؄V @W} BNs+!YJ_p~bs-BtOʿ;Ć y ?֕{vsqG;tÍ;6<=ّ %nk$S4kr7dd 5h`$kw `Z~Z$71bexJ(]܋i2 E۩"z3~ G*5QS5Ÿa7[[Ցan amN7ao[!hwkE_|Fڍ{9C;? X )Ւneqx=t[.=k멐!W!fڅ A]* ο`HG2u|\A7lZw'&JLb"io-l.'_M>fFV$f|T4> @O7Q(R#(|i: KcYDpw܌0ܢd>?f< 41w{zQ>x+> +'S)bǓ)}Mj!1TDKHt<&u}y{+TCByϭio IUtσ\x\?/%qqY@8= mn* .札EڡÁQuKsţؐm@A"q?R}Qxi;4+:gS,ko\끸@} (jD9\1QIi0F  r C} Q^uo[P3KZ5$~3نq|T^ť8TޒY' -6 u<e}({\ttX/|+v-,s>UCh? ,G^M ۤ/WЦ^W%;YNB3%v@lI$\DPZkB!@`&JK.nbYoZm7uY))╈*WB[` {zƑ\Qd+uzcXLumd975!ZQKj+?une/’ ~E:WmoGiZ2w^pΨlyڂ<y{HkJԼ~;ԅN#[oXq2eo߳2v`]GB}|"q"D.靻\M=-$jr̦T-'CG4 }eST_揻p axXb=\B PMO$S^A]~q_D؃; {pe"qQ>6!OfS Ѽ|͝,q% .׺S H4쥠YORmĀR}@WscUTwUQhx>h Gs p J?})CH%jI@ɯǤR!]}-WQpmIaVYhWNҚBXe!>etB֤蟞׀ D/++Xߙ2:ԝiZtzo%H^i v58Fyn̗Lwe6L A~e! yxVK/=ZFTTYn<_*≿Lj:|wؤ'| +׋^=W8iq0D6`e#*6ҮTbZ"˧IJ>Z`;UF?2FBn בWJ%[U"6Q*<&rS \i^-2m>8 *^sWp{46Si'F@߼$ƂtjZr? hs$-LjfrPuE/ۭi3]6XJx{@ 6V8#`GֱGA5 F u (&C:hkFH@hBLHISU})L?80y/3HiUQz Ǎ-S%)y-YA|($1F2 rhYYskȌbHL~cZ8wb[ 6RRFKN! J3p珪U7-6 N_=l¥`WI0~۶]:%iSpQϙ#$Ltl{O=~XXB,_b;Lf^W0P(O>f.^:|wjr偘gm1 lUV5C `w𶨸\lHtBaDZ@jAֵ NW̌^9%&fx䔧۹E"-/@P{jZsKr8FTR^ȭriBI 38vسŹxHI%]@[d\S% W$j;cF0| OGyMMV1ejy EHt3 :^sDطV-A4LRwiSNu] Ŕ!!u|c@qȁƋ"XKlzw2}C*V.O9Bghf%)5 `ls) 6Naؔ!n7b_Xgz\+g>M/AQkőfEOuL06#W"ru13׺ȻZޜLV%yX}nv9D* +IC6R 9{<=FY?sՓ&u.vݻv}b4?;'jbO^ik[qUW x4̹Jo<7eXfaaYäs㌋U'B-g};2/,fپG`OulW@>TׇDo{e܅qIw6OyeQbS4~`Zs铎9@E@tEX흤tFTܜ%d%;rL> %)jfԔd*O} ፱SBnz߼"(7${ &p/&ntD.7zI8b(Qj| vJHBsL7V!W]m&" yKRhPF4߸Bb SrN)tSV(lK"N#*xy p8t,a nIj>?|Nzo\ ͕dB䍰,׹G̾4 U0Ŝ毥́i\"c?aC"WЮsh^b]WOn0C);@(`=TGy C Yxp-З+ڼkm'e$9gAa-؎]0Amtm2l[~zg" -A}zYpE~ .7)p<ԋoί%ZIҍwAP[l#CZ"&|n*)Fg9V6:[iurkS"^O{1ȹ>S1*G*?QOz Pt\Nƶiw"@Xzr[($ lrCν)lhmfzlN~~o.7)<[_KCwbfS-iWsU*= p_HY л?Cevd ųNQVLpKҨ%&k74Iu"gЭK3e.*PDCuUm2t"ZUMKqэ6(6ڨ7rPTxj)P$ǃ;07gOEv~BYuu0":\hkCK}=J(3'yeafu bv?IͷuH Q ^noC|b$</n+,{Ɋ\u'M{=L7?pˈe\` ltQb|i;6q$QH# %Uf =N w"C&r =2b~e yg/o?5 @Ygc|_ᨊ q =Z9 Ϯ<H%TaO.XdzBL/^ >!.!r|j|m&¦R8*ޛִ ^bbt+tS&v.J@wI#79VHP{bee^\A֘KZZ!u&rmX Ũbn<.RJBǼF$la|h WDanLD\7 Ԟ8N.7| !w=$FʞxHRȨ`.)PF:ڱiZ@Al2=Z^sH4)nmq[e ' +<_ySFƿf>F}n?q25FfLi%9d䛜`?2-Q{bS_KP5@qңF#ڥ2Xgo-5VɋP#j7"Sl7BX^M f v*., ZU!浟rOUd r/|-J&YU{}9nK7ΡpS#c`W e=2f)%〞0>qӕZTԒ}KUl՗xؖ&N93<< !YubA)*ծB ^ ؠ|hf7Lj5(dw:XjH'qI?İ.XjL'{F1^h=gP`ywz鹪Жt7*FpPMo5X/wό.{gr ,W.;L:RM^Ap Jc8X(n 榺4<^C$]D6VCH4@ϯ 2Dx -ʒiqؐd'7nό-Y@/# ӡ ҪMp "Yg˫B\eKgd$bvg2(vY4:n\d]MxtYLgUC:JS}A`_u[h1C:GKVu}ٷ۝ lQ(,cR5T~ G6"aW< -,Uʌi=7J8.Uk )%-'8[} XWz}Fb x3s v^:p"B5K$B{BɎ\a+@,JByl@MUh9rz59{Kx/ cHSe_wp3V8?2] }wl66s|f9 [Fy ]6T$J:$h&6oV*E]"ѾD\1bmkq>hrtWfG]CRgUsD]Ld=aŦYn/ xCyJ5\@3g9M% !ڃ*Jp"רgOD/ ~Ò16>ې '.9d `k2D{h#s{$ |0+WJUϳZhS*,H(A+q~\ +35ln3$cOmMp`LZ!ɐut3*Rq`Y\a8|DԺW2U0rQ$~?Cd=LB78V莞zЩoNuN\~M-f!z'fp0#t"ԧzc&򡬎t XU5=̃ykY<˪/P"CZrԧ!PmTwٯ,(Jf0OJ*]U%qd &c3w" -j <9BV[O0"Nn,YR.s /7?_#,4hk@= =zhK* 3v,B }o\2;BhMŠ-3jncRtKiO~/NHw=]QZ^F- I^&{@z(a9?%ͲtuN</'tvބpW E/WQ_lOG"1\fDPMAP=Dp_5PLM6{`xSh}¹9fF%_RgإLbڼB]_iv$&W@ʍ=/6|цz,$'؟_gNL`Xd 6L֐KkuH,=U4 G;7@qq4l3@C4MG-zrLhΣT»Bw5߂C}s9 acsՕxR>bIVh!Lw2~D*jJ\׿py|LlaH( )YRE vVQ5"viK\:;f`Ҵ7%V=8TFlE[ Ar3"OTi'E1{$.Vn"}zDZ9 wCۧBtH|6 X)=NV)~ Nc9JVqiMJSIv >"tG4솶^bMGڬꏊnвIjQ'e,#_W|t kRxT5NMk:#B|GQQaA"b~Rj`E :Ƕ1G%dd*ZY3lLSt&Z3yb2>/WuG6h gc慸cr(ќ?++!7aϛؿ3Ƕ{;LY*l ܠ\uzrJh.V/W>"̌(fzD+0O5$%}f+H*yP}RH4zbybj92&&T$A?C\U0n8'+b}Y>ϽfaI y#'IJHzzr1vfo8u9'cXpO\B(qQŸgGEB&齂5恧ġ(h%],$|pqѵRø¢E'j SESd/sHMFIk?<< |YLmT:U MKQ;ir^5oV)i6ǀ šR/@~E  F]*40*r@˩pb`DcT _(<͟a@q"Jx<K{¯^{0bQN7G5̮i҅=tf~$åf@m,iiL F2j \Lbo2lcB̮(Nw8&i:dE7yR \I7(yB-Mݵ}t?yA֟A$,Vw"RNaْZl#hv=bX@F|J-J!yV¢wFN`8fɎ>9Si'muPL\Exym"=CՉN7O@Qko|WA'D{͌Th%yx5/'`kN58jBJ2霏)p\q{Ņ'ެqdw~]Gt,m3m֚}X_8q;U賊uыJ{z'Oc&$g6UI31  +7l1sh7췪HܹH`ǀD_IC\ktK[${A|'<qkuԺYE߈Ri{gP9 @G6ʛ4$oU)M Dwk9fMWQ`YIF+aXpzKkpF͐:0=Jh;(4-x\ {"_̳"IS[Wl))e{= &I sqؿkF|4;_F\ﻚ m|۟-Q [ؓYúT*XOc#DSPFmR"-?vgQy_;X W$%\ !to7Ip3?9Rka$4ޣI_C3|iY6M3 GmX+\ _=vM+xKT,A[*^3"j6PBStp.qy^#4۞p15>1~ 0Md>ĜԶ\CA=&)RsN_7w~B''{ v8Nz]jrJb!'UXpwe,,N-ծ:")+Eo"#rUv~Ѯ1X"HInz6|͇qu9œ*۷\Xg 3QEo H^Jc96.W:@~*lj\K3AOnfcH<-|<i[8˘FfoɋN[LȝFa@Cb np{I(oI6xS|5T[$=ymobަVK&ȿpه b3->ӸbؗF3b)bƝɵvQ@_(b-sShetlWʧޱaB!0l/H=y7q]` S0qgyJ E$( $Fa@=FO#š>xFw#krO ٥˷o+SqZG, *zt;"_t?8~42ٍ )P]zN7S鑳"5Kgm!깾 @04#.$Eζ=}0W$)̖J8 xD6Ge%)z^N6oΜ-W2.ƫ\VEopkfjJ!РM)[mPWĕ6=6VW52d,֊79Q19KhCr@.B nɹ |` \c[陂Z1^3FH;nW|np8 ?VdVMilE->gNn*1Ga}fl)W$ݡ!#4jxצ" ƫzxE Tkxp;BU.k fBեtnVͥFIbzY|&1"##v폨m p$ך&yżGӺ(]ǐbMlI=v/ɭBGw6ֿ2΅'Q?S)C72:l ^K°Pwsf0|TU%aFLb}2355YO9y* / uz)k 1#ڵ#6# ϱB'}|AIDAW?fH"3ov-ZbouzSa8</gir@P}e0z-I`[$/*C0UF?V#jĬ4>RH).ZK΃E|07{ϐJz:;#]o[x9 noGx:○1܌FINh&R2ْ,.Ͽ3<qrQ-_0Iyk NxcJ#:r$gx: qq51QĘ{PP]Xӳ/z7ъK94{/?[*gM(lG ض4%F2F 7j} wHrA~V1-S7j-픨2{Ȳ8X݂묄&);%xq|3X JkId&YZOsfiOnaNЋ k;Pڿy5=RӋ 'AlMU4d? uN7v |rKP҂ 7xQ D>dEcpp tl*<~9o mgZ18nEFWS00ltB RGk)B~@0:o|X}X-P!2(A~ 5̻jzvDMl+{/V^z'w&җP^b׮g%D7"R UG-hRgy6b؅'$eG6ͧppQCPM6nܣMǫ`96K>3DH_(>:7+ [:7trK_,p.XYݛT`wiGC'Je}zFz^b5x#4[c-U)221M2!e-I<RJ0U4TJS}MŅR'C[ $,a=(4r0̖t+dlSdwBw&T `߆k Mbcó+R_#Ż*NYԤd #_fm99C1DHdwsסޣNCIpJNRz-YloKEȢ趫~.Z щ徂>mBp,XÞ}QNP)FG9 @ou9@pY;ɦ uN~pe0 RA.ي/sYSAHU` t]ePp1Z ,b.0 +V$Q~#YAus"RA^k#y! f@ t\9ɖY6}K>_y(u$nʼn 1fezqᥗ||>jC 81`Zp&-d11(CC[Kb؞j}۰n5{t&Bj²Y!`P_Zm(f8ͻhZGD[s*6؄- >C|JzֶX;1,qs:5`-U+ ͤh_OU}&%qFړxDB@BdVU";Nb"kp7H+G'K*{evV(i7ӜCXI4vxQ'IrX4Fj4M7Sڮ TGH^qNTtnp]i B;j & uWf;^Fu?Ӿy + *R"hJ=˪z瘨̂ڿ5/{rY:L;ÊT%1Tt>j D|  (03@me'$ڋ$VA+|Vb3jp!lE9Km*T- 8n1sQ 7Ah:8|o]o*{Erah3Tq|`nK;TקּM@;NfA Z S'"qSXXpu@c\*s(7+Qi(SGJqEe pA9Eh 6Ri !lu=ktz0T %2fuwK&{tT\M^s.:j%KtFnbzZZ 7sʗ ^pXgCG'[P Ѯ>'x9ÉP7U%13Յ AnEڐٲaؠ=q5֏R@52[aq@#ZV 8;/`2zlo;;E`W`Mw>*oH+Eoa%Vy "Rmy{Fv;"w~R7,6i `̕]Lb&̻DphwhI;ǂ>D}:m@x9dlZ4٣ah@]_?޻czq, 6:^H ^mC j Ų %Ig'}5)Nqg'[aU̬t0oLm,`\lm:vGD 95w{ʎIȲ/縪x:?j,??>t oBTxS ,5%76B&+]*΂ M(KlnZ='UIWZ7+΄\ E߸WAw{J(Ǐ!L4s7lFK LM*Jn&H*,)5?,1Hy͍OjeB%i V"~MY|UL<ٍmjF33Kݭ~_2Wo+0DvsZJ Pg//i}$yR0j Q{ Á u6NWEB-4N}_1^Eo+wIb>ƴξD5G~?p,^^ VSD|cl OZv.JHU~a$I,J  sZ _[;P!IEY!`E.=-F̘6;FШ?)?5E\8%#1JiF6Nϒ?pO`f{k&,6j|ڼq/!dx7I#J\p&7ȍ0?hxƵԏA 2Q1 $4ј[2E<}n9".J?C,54vR}Xn h^ #9$QKyf|Ít~S`L݉TmU]9Exhՠ>J6"y/]|,@EuyyF~,ǽX@FSj8?8'=.Ǻm"$~>]Mfa +`#[;8+I<9dObM6;u;^O4Ɖ>(~nB> qɂRF<0:D+j޿ޒ-c^u+zOIT8tG?|mHPǔ#G\䧙 G` SZ8D=jA\Csul+'-SY^"\ը±lmh*e G"@R!n`i\:Z] .Sl {.6˒6 /to%q)8!e(t@o%`+ֆCe_dZ2-YVi|QK-iX6835WkvM(%^!\>ZP0&l` jt(sncVݪX!Եn@DB+~}I՝R! .e--+`\@̾nMaUF益Ô}KM~KٻբR1ct0)D{|W/ΗӪ$=#{D]5!nNL:mhd45}I;){De_#<@k PACƈ-P),Q0e׏.}-~̰0tok'8Zm-y>@mqmMk!ZQTN-c1zm :[:ET2&y Oy=5r-?՝EwPJ`0H"^:.'2 :oye# 5%oBYm+鑷vYw-b\E1"K`s 9.&6?av{^GV#Ub:~U2 0I(գmo4 e pDdhϚz1q'& T@~(foԥʄOH<<[u~0tr;i ]RZnKb:I#Bq۬=[ 6Y'["C`zwFr62KEq}}7G)1`مݪO?~Crp4ۋOuULe&Ø ZV;@BklB9H5\"ڃݥzW"^M;''3Z.xxВ압WGiMW1hDêfV_68OA !1Pltl@SufشҭJ)B :~u{7U'KYzw 3 #._YX',]ZW藟(*!园swOޤ7(i_Il ښ4PvL^G1|v=|c~ ;F^!Cm,%cAѼ ի7XJcjGD̃@ n-]5m7hZUҖ$9C?Ha 7wQR3T9jbcgUi<8h21ۏB,$#Oi[1`$q۵Ζnʋg`Ӟ~"TCnѤ0ڃS?2.DN # [CFA 97KN(('=-tܛf^-JwˀGlO+Ipq"VȠ+%jj$q@v\[e1tjjD΢w=,EPEgZ7es6!9)@:7bH|~ A155 7e& 7e FloQ w<Mɥ7^X0I.VL3zeqB-Lʹf.AY=7~+TJSS{E&`hk_©2C; lH9mF e{y)|rGtOm;+vXLj/ gps'-l_X‘޴%DޱBQـ˗v@<>]ԢyN׸9A!ay%zc9-~>[0^뵌*uE1'ՠ®IFٗPjLE2ֻY8cAEׁ}ĔU uc 6r]8ZKPWl-5wҖ3*t]!RTPʋn0N8TQD@^RN|L?P 03[цxiM|*TxY|gT VMCorJ9ܰ>_SP\> &ENg rt<*юz?^%wƻd߳'ur@Cofb:lŽy~c*1YjGlXx,gͼA2_޾W<]44)6k {Jcw,+Xl"chҹdzۭ]1^NXҦ[yoUeJ_r^TgIhZp&8E?1 z\aT>k)8-O`Iv:]s5 ufӈ46<8u-W78_<]"ڕ?堌`$*B i$!]; QR֩h?֟#;6ښmu58%=ĭ}9Xʭ ^7Zkl.v#ʄ՘%[bN#U $ǥѹRS+.?L.z@^  ,[ONesVW8ߋ=@06n6W;[GFdskl$0S!\ P/~2]z tQ=9 =)R!9D!Q"2d57Aa~jEi.+8|&OGXA}`U#;Iˇ/w+s%QW?A8qm*m?Z@S&T !h:E.p7q~y,s(zl0 y7:Xq껡YW¾ΏO! eE }bn.C9P/Cy lZĶ(I\վ$lO5i r1 ,,*D(˿8#7m2v.*O,VGSbOmnigsBiݺS¨$5*j';L[s˓zW ?㨙q/@eH@9ѭʪ,CD@0W'?b?6| ΞAț2I2I`bVݞw$M}H^2 o<,BؓQc}oGft̨_& B*5Nu9Mʮ N~&ږ[j-r#HSD}oKt#? Xbx|G0H˓?L$ȫK/g9I²_]?6FV|0C)̀T^=Y%fn BدߞCP^Z\gp{a;Ie̮ }+>2ׁ?y)f-H}[J2brR1NgS1K.2FfɵN* .?9s9Q ap5 MR7;K36&,W2E dE6SV5 V4}rє7(>x῅-_\KD?2:y qrDQڱb ?2K%i-g~o@0>v}沢uoa9Qo=(M_`tNn`ÜN˰ŘQ[%7gZ*XI뢢G ?jp$$tjH_e+УTyvdxtyhVU7Awڌ4I`ۻ|bIxG)u=Nċ^3XtaR`kUn $PpܟaB5}$H-q%P&*I5|mߊ)yjOѱyq\T*;ҕQ`%wa⭍GUE6&w>]oɉ9Ne1 g([߄] qC5{?ew iQXZ@fIFh~2EMsMv߾v& 9wۏo͍eazzWg;!0&@B)\)lGxK0&f ;KOwlJG0r Oߞ@]C3KGbHPa+|0x)Wdӏ:pvLda 2iT'X{kadn`Xm] > :.c[-cN޼JhwZS&;zdK)S$=~=H=u ζpsجj 65sOu )c{T!\P=RImKEI0E]yz[~U1KvPpwU 9yȄ;О65dHu I"YѤՔ[N26E|9h[0~5(+9UIY~uL]yLDwp|&M6, ;((,6vX[(vJPLw`c+"]ʬ%̤212Ih"j8 '븱:%,~EǰVbrm7ȵ`SD9eec>-8xTPbzbI;q^* É(@ekD-V]Ui;qPui)h7 ~/hP";j{0xPo`(3mpBz%9} juNX`NDONE3چI+&F#HoN3K= pa .?ZݩuS*wlyQqLr X V_t< !:s Cā4^0cYX@?0v瑼%i4'`${ܘ]0aҬIMIFLİߝ[KRww1]g%R_ehHTTiQYXb ҰCc@8bY`ơgeE{ %Z !oڟU׆S  U"kx!,Wj{`4` XC#{Bm b|Oє^^4qaڕ6S?CW>)9L>R a"W)t[ ȣ``-O\t?!DaiƵW*p'%1{x~|:V*3~|Ti{%>Ϡ8,ɰWy?xLNJ7+?NW. 3ѢTzp6Ϩ Pc\0S@S|G=m0t 3{ 2:B?d5xcS"`?C٦F>v O5tb"c3.`48Qh)wsՀb;2Hx 6i vH$Q2qϛseሮ%EX6lDE;/EX7(bcG OQ4qsTkOA90ŤC# @Qc?խ3G~RPAQc4$bG 8-,*r2{ᑢt7xT} }wwFGMF0J"-۬-RK2#c>XvhPӕv6L"uEeX,3a^{*!M(C!?xR}L' W* bT4-@9oDqx2%yZDyI+uq ! *3PHָrXgG|S>G fxCei Z 9ڋIL2#VwQZ \ 83`pEfe;νJ29kneoЮ7S%|==rgSވʟ{!:=<'fsIE<:r/tx=|.r-ln Etşuµ(!lЏǼFQ'O_%&$h|O?;o1<}M'}wQf>A0E2gdpSo'`cCv^YDnzA]m CaY EH#=Gzѽt ̕x$c.dgɝ<f=xkc, ]|:;*2bѾgqhݜ(;+CF2x%_R9RT&nnf?5TBcF^vטOo!yD7Pq&+-zGa&V+J+S*Cefujs-&˥tn`޸V݀B'Y*U@2$ȭZ ԫrY__1 +gCSPCkodYq69v'Yj!ED]/1W)r'![7'5B|3%..Ǎ̔B(D5){5T,U345N!?PPݣnAr$4\٣Ow&KͷیdFW X ȰȥU+Qm5Ɛ,3c\Hm |Z3V[:Q6Z Y@9T@/$Mϙ&];/ :R~QHfb Y3HEa0,TmkqS] hFkTb$c]ခE)UZ+E\@%y$sfЧ(q6L#( A[ 6{T*ʅx5\+0@f]V~ϧX^ m#h{Ri*r Ѱo { 'n1"xtD%.bjX,`XJdP?:{cXŇY`6AXtLitjI(nm \T&YZ.5tE6m[tztpvibDa2SA$3<\Nadf-,m!*b{wC&m(SZ%t;KrM2 'g"QG93jOy9#:'䏷s}j|0_a=P}~s^Ȍr?;I\փpj3&!*(#3iߠZ8@ 3^%ڥCr`ݡJ)`ZRx!* L;eZNϨnӸ?l暻0h3XʜU#U5#p k<3ဲҶrNlnV;_-0 `u[CS~Dm7( V@K~µ! #ŪNF '4׽5|˝PN&1*G$2oȻdvkܟ[É1O/- )(Z6cqzb}*cd\:+]Hz:_T;Sl\j S)MO~d^D%{ra7rmݮ&1X!zf >_U3aCDr;w?"F0KYk+?#ibFYj'BGlNȵKcG2* (zʽ\Ƭ +EpfZeH렎,0UK5cj>лMs{T6pp**#͟ԽO͞ʷS{GעPR|D wQRa,)߬!9V[f5zER$SYP"AG3,dD ^w1OdY>~:v!K=r&9"[i(wMɋ'dQ>xCeH1TԪ;D KscܵLtW΢oRKyU$JxE׌e"!)=p:Xa)!OJ\iI:3DAMA6Pte,捽bx"Y+WS[u&(L(+kdEŎbC$6)9HFO;`鑐uf.N/Ɗ˔fⱒcu}vyXQ+ßS"˖!6Kڇh~ÖC\~PxtBDO邃U7D׸@d! 7qڛ`KGBd ;Ͱql4K/^ 4W~T:w{5FC NJהaWlj5>w뢸QR}2ӟz!^eg3ytKۚ7\PtuTvE= un,7#F8ZD ^J=E&˓O2Q~\^p{&02G8/ Wɣ"Ho7.}IE X4.[dsz]Aiq\jUmK/x2D6ŝ!FFwmocHEO:Xa@6\.1pvi)as i,sn4c\ M~CdJؕrMug\ݬ1o&N.Q/ ܎,$^QuEYڳW;Xz2FZ*ÆtCENT=#Y1vbhqcCcx3rC|EB|@I}o7y:U>8 f_.+=4ޯI:Ҵ {gc!7G9N4te2GU|IW 'HBOMkٝO8΀O iF3MΣ,A-,=%̢9m x.q5VOZiW$MF!.µs0wO*~H9[̅oh@:q}cYoqxј8;^q&?ݷNqFˣ5_ό%V@[ѯ- *2F^* E^}T@ۻ߬\?mC " %0=ˊƇq<:J+{;fB()aȩzTvV| 80 bs Yj,ՏݧB=RQ+/OުY1P'vq, U +SnOINգrGѧ 0hJ4Bz2$&-pڍ q9/(M.flltF^`cY+cEH 4oE,}aVqާR9Se[PoscUU"~-1bĺ3@/8)(;O:b~BMWI5KBUi3;SO_+'!n@lfM8ŃP1rWE FR]t mȝCx?fbN̜O#E9)=g,޶'j"3rv1dE bMe(;/ƛ0?Y~mI5jp~sv|6`K<ƆaNhf$u[tfХ;@W~xJ36 n/DrCxpҧWH<#f?5BÄ|b2ΕqټLYfNQY͝J{=Z'zrqlcpI Zk|Nd 6ZƚcKu$WV٫Zz4d+ (At*<\#a?XDtv挈 }jr:A MW BVU>P&6E3EEx%\ƾ#:i݄1(} );(%"C"VAY|7ovU uY T {$Qt!|ĉy .FT 1v>,n+ME ?SV$]+pA|ʙqyk _1#-9i~M ՔBEj oty& ^2E7C6%l(NjYH1aυ*Q.@aEM\O $EݿnAv(OplJkcZz_drKu&p[L.x=@n#sE2A]y^I(Ds)Vl#n;ܴL sHdvV|wiݻ&xC;2O[9tlmN]-!<͞響]Ar.C{a;u_мά0P屏xhJD_i a{x@RÌ!ϥIE,˖OX5Uy3Kxчe/aַFiy;GtecU{Ԟ|EdOb i~}O*ćnmJˀZaRUO.ȣJ!&6BVN~5DAHО**GXFwd%Bo.W|  JB' J;%scCqYwG[G@jjs*}Uq[3-~c[~Y kc6_gA% 8IY' vcYzO<4Gު :6餭FOqhO5TG=y(JQfӎFQ .ulQX%#RlIQQ 5P1zN&ٯW|[I-<%8 4U z?.uhTCΊ TTlsA4^-eO4FsoJ0(H:+v#/rk&n2 s]vfNK6ASL%6S,1[ &ki|辈We5fGM!GL -}5?㒟aE8=)z{S]1 퐗UH!_=JaB>ZY SP"fn6o,&zڄ y&fnV~ǣ`ienP"N{qj 8t6%tbر4GF?Z:IWR=sq㟑(1np[ c6|Lz I_O6 /o”v ׀'nĘnx'D6Z١3Tʓ8Cl wvCTm%zd@<. o\<1w/X?E<ǹ<#d *]01l<󴂔0 pmsc&._e^}ޫ^><} 4Rk6O+΍_4̪'IOLrq!A/; w/i5X;@=#A{, pj>aVݸӑdl |[k(5UY%E Mh>b\w'`WuofMIy徊~y%jhQ ~4UeW13B!{ 2+@"lSz+;3iG1!:}9>DT"4BpHf`$|B9[e&8qNA𢱓/C:WIqBP .lMV|sB@\l79|@w\!u&:5ɩ| ~MV^t@%AI?WMOj|7KΕˈi:~] yZ+KGVaqW^a fKDtBiY`P-k-7U{4hȼI@ͽNR)uAH V&u'*;M@`(K҄E>|"Q+=s&Ziy \pGګy!L<9S ē xu')8a{JnO) lGYH΂!-vVAhןA5@3l=\*Paɜ"wm5J ]'䃁= ҍ<>K,Q2{7Y33C?ڻ<MC/(Ić85+z"8dwo=ͧ&7PNU2ne66Ց B֔1-^,Z|BkXRR6ïcs\XRW|km=KILJ8 [~Tsjqz o'.jo|qWeԂ+Jyؘ_}x"bbLqp8DC \46 CL5ViNE,˞ǾZsͽN7^|ue;qZm6%eLR$'׸ lK $cء-Q.Bߨ[h5J A#~W/?S0VRud;0ԙ~X*EMd`!^C?\q^uwr*kGկigw$&>ZK}_%;yӈDӤËab/&"2,\RP,,pGe}j +}V%fmlSbi[`0yѦC7R=[ZEہ*(4h Af }H 1:PmG|gƴ͜r8Xz3ɿ\8g}Ih=.AFk{OXxa-P#8ߍ o$Qj{x5y a`.#E 8Bcaj;f,PAEޮ[ÎZ}{X@Èu[E4Zo?>"r$O7DRT#r{ j?2QCXna`()P6c4b C=;*-XG{l/P3y}Ws``%ևq똢tQ 6=]ZwsFeb"d?k` `$-ArɺYnmʱm[^Yut7OqMC ?)o=\Q.tڒip!!C8ֲ9T xbawbPw zsk0e2 RѸ_7)`>У3P,9p\lQbw,qpIĈ N]{Ԧ<\Lz ڧ)Py"$\p"Wkp`.5iO8_C($XC%P W§gzSe+dg{C_)ކl) 0(,KY%c:TӰ⏍hq`j2Q..εڜ%e" 0MFl팚L9kl Wlnb!:)AbmBHTׁ&1Dg:+2> }MO, E g;YA H渵XU޸ߥ6~R㭀Hǹ`$9xf;CK{F_LˠlsA HΖ9A(N lgx_! IYXkp-of/pYj!klߠtLlPlqv$;RR"ҹXV[CJƾYلOX:OF#9c5=5] 䥨ݝ5߆ӰdlXأlG>|B cw -QxR|"j q`'njKb.u P}ϖZʾSc<&5F0 }վSEL0 } ,TH58FSy:Mn[R =‹/4GfUAkxk;K-0M?Xa:DL_Y'O2}PbNQVe6psv7gB#D7϶QovvwX+ 1tũ9'fwq]Z!{! |"^["KҸf<[S9 8Mkb]m4Cz/[}3 W-hx H26 oQz٧UuE{tk)LH*mS-B#4X҉M*٠!E|b i @N5s{Q!;}RbWblT:4BH}$FflT>h [|Q#! ~Kȶfb}\es.A ˦ `#I+m%Xvɐ*`ۊ8wY"۲+c[6i=Tr-$Ud')g@CITJ;d.dx w47z"P$ë!cD P^YOsG U*d5P%$WPuRUBO0\}MB`ize~XqM peG0U] Rw1 -̱sF,P3VAt'@(2+fצs݄3?W)nH2$Q։}{JʔW"K^]͐1Q@us*TIN|wc MO:&@]6o̖hN@Ye$tƽjk>}T"ʧwՃ009g/XIqqCHY?|vjB֞5tm [ 8Ӎ`Euj%ƳQ.g ;vtQԪ.+~ 7MJި-"; bhOJ{-sno . #;R2+\ͬam2N8D_*T0;J\X٬}`]zy<3g{f$xZ)q,#0}tD K{֒mQ t{b(+4&Jkm?4x`{3J 2[×eue'~ǙK/hVO5kSJpfõi,@(rc@E_{GD^G/!7 HlU 1C$}]*neaFMk6;rEJCVyj5ṫ_*uAEe=xХ> HN?rK{RjP𪎈`<#`}~DSl3Џ<s'iR*_kly_ꚯ[8n\PbEɦRB򁿁FI}ƭ͔PGD P2o f-&~?V;c][1,Y^M^9,j*Ur4߄/XN}^o[&p |",Sjc jS_Qu`H{}?#2O9\:/7 F 5_{/Tbv|ۦ\Ac)ƶ3腙_A{N(j1B]Kg@HC5-bD6{P=*ȳZ[s SY~@ޏtݼH嵃ȯ]o%;>׼3F#z屮% 8D l3@ȖD<){soVZmDZwxm3Δ~TDv68θћ3rtr*5 ., /&]"[cT@%OE'_X%*26 YKutzb[3I\tTt||f[re]i`θR6b;쩶Ԟ (j2T#''V.`G7Z*p\+UU7p^8 .uDq>E.GQX5in 9`Y.e^g4a?| /7_* *乧Pm%BmC=Y :]J/?Z~%P.%I7NhQj;ly:ߪ)2]L}:% @ȱ-Y|s]\C:6UM7 ۄ0`^w A,K\PKsa5b,*Mw [@ʘ-+'* Q'+a@4R5aHwɼ5߲:n 3+ BhE7 :԰C44%+:hE,$Y-Q3)|`(/'Xgq1paI"4FW||0|)WFЍhMKW5D=9(Ԥƛ. j*7# >MkO8&m$8N 5s܀0i22S`#4V/;GFV*&<)\:A(6MQbFI-0jcӪeW?c0k#CХfk6 p8<ͫflKB𗆏hB}&EV2 7Y^>zFD-rbg|v d\o9rվNvO$UaV~;^e9dJ`L7]_<G'u?:45Ьo6J`b=B_8}ָSTX a'LJ^ƭlVN7_ ^gf=;͍#!@@W fKև:̵JvC$7Iq?D~韀J4l<)T[gRz,Eeo\T5=­O`jD{6 qMe8x!~fW(g9iقcOa{:njg(voŨ\2XBb@Svg/'zoP`(ҘL0dB1ޡhɡxnxsP8݌r 7@;U3;6zNg5𞘲pYV}RLLltPtGEBՄC:lhޛ:6:Q)!m{>6bwhJh'Y bӀnhT NP m~0 =c`NJToiK̷2rM틘Osk~[L{B 0Q&]<:?;0Xc\٥\X=P'E! OmK⿵ ϢrcJ/{]ycw'ul;,HsJO`Ţ*"DȞiI#QC :o9Pk=^opFm@6ӝC>sǬ1 sIO<;.7*2_?!u!k7x4~=KpԘvDmN&Mo2W ~iv| WBt{FC֝$M)#RvV3+:=rL\=64@FBVT: 筙7/2Kn2/iW!dPck9fjwԳFmJBcr/01&3wNZfQ ̦vZy0p^~@;JB_ 4:%9thUYn07;id<`E>LTvN0(kﳙZ~4Dv7TWXl7+i_l%y|3׹Nh+(C-+VĠ9V7FAA:͈}1mY# ki^Jpm uk[ܒ@S;>lblXdm2774Ey?KK:@/z!BW:D{*DQ5uɒn NJ9aP$pm _WPtlgIz[ jpWmV)o~0TJI@|s`$ ^(y ]a*OPZ-%B caO*=RO~9g/I,z>?'ƶ@O.iA@NL1oDCߐu weݮZ~MצQ5k9)4ŜFSPL*$Нl}mF]!X!f7}xԥJ3[4}p,Öe.}h<[6&:CxbIMVq1^͸ō,xgU CcTأ6rqAt%MK?+_K] 3\ !-hx.v\m;a qAyg$wP*h'h'=T-k0!k]x|rkiwb@K*VAsM ӝ7^9nט[!5r\Z!~lb$5~+yiAY뼸0O)n|]u ?O$KO I|UC,2 ⰿEe &m2R! vŷcwKbPOhb(?y77J o^E2<-S1&2ڻde}ReD SMpNiُR5 Soǖ5rYv#9 L#%604РzU] S`꛹c ˕ވSlU1[+C "uOUNVH4 KY }!֘Q!`UgHc]\|EUd;!RRXܫoH3B妈|siA5##'(|O̩fǣJuD+s: Ҩ#w֣&\D!ݹ0Ԯ*'uŠxDKPw݋gw*M= {7 |ĚzB8ڒ֮ے"ƩZJ~X}Nߦ5W{n:2UZ}0쯕Zk* zԚφh!q6;(ЮbRXY9œn'Y#T0R:{s%0"*YC-Em6|\U8t'f#|&t_b:,M_Iy)>I2i aV|r_ ]73%l3a~4|q{dY\-123;yNj{o qKy{/ 5gX+dvɆ9̣ҋ4i7w57_B>֓R蚒OEsU0[Rhq<[&Zۛh*‘/~lMfޤw\μ],}ȑ.dMp9MmT@t6Q&XKGJ>JA~[D&l~+iHSn6"9 _H3mlPًvRss' pE;[ rEXx:ZS9a}\i2ﶏZ>79{nɥʖ%κ q.lBpz.ID'5{X2"x<%@jzi}[ф4AR]L{7 "9`Y UZAL'eUBKH iY譲͋Z#-%/"Su6 ͎@+?~ll~ PP47 ϑhMeWff}xgSjsWD&ƷsM n< q g,ѹ1?@9N6Dn" .J@K3ܤ2WA2mAoA=QUiduBGM{{~Lq5 Rn>9ap1VA?8%!+J9G3i,50L1TY%Vmt8H/D:,&{Fl$Qs=0U6DoOŶS8X>n׍PW,6 mlV: hi"wS zPfQ@,9(o2#vE=9f$<[_MsP]nC<.E;wtfa˃\88Xw'A1 u>n&\@4AhXw[q@vDZe ҾL5odحV`Q; W~((Jf}=*VhYP,HS B)3H3fsJ}0S+{+Y}C%0PY{Ǐ60;4褊*q%+/Q.l nv,=+N%0݅oFFrgb+蜛,O8 fr4멈qFHi\oMړWނ$*\Ѓ5x6 ~Rgԁ0DaA&G6(|8dwGtlY38^g^P}vh O M9SNJzu$7V/i{a{l& ?>D.Wdžt+2xy#L$F*ΟZ÷KhFM9s~?͘b|zQ];ۅFu'sj(/PtCu}Cp +S4@yDlaԬ=0\jIEDBkFV'_gEF6B'$K< 76WCX{Z.fxOV+wduuN>j"7ݮo,~ᷯ.4/R,w,1RozT8gGͼMhkNScF K}Mez3Mao^ڊ[N&eB|"=@H{v; MtϽ۞;r$ j=JQ _V%kKzİPLY3] es=0NY{ Ofi(+2|A!hQPgpǝS8RjRvtbXҐz0+mZe*`Z _ ݍw3(r5 B1_Lbdq$ꡃQ:԰ 6:I9x\rKO^ 3@Qth<Q&n1eIVB 1խ0 p 9 "O!0#5h\FrMT"9%=&,O s>f5jGdvվ @J'Ceޗ{C],YA~;+{7;~F沔"B^7d)O_vZRFIF[a/UD+x_ .B"9Bu08-_ɒ{w:$;Erh=ˑ@:Jbfg\q$hČ[+E5/3Lnh=_o2c^hycR\Ж UǙH}a q<*:SUR/>SIN:ɺHC#:\ͳ$Z YO/TVzxy ^ng|&I1WϑSt!&/ #/W^'N i+"}>fL+Nzڢ6K=?)j3‰ #Q"tnN/ ScD/tw .K̬tW$ي{2J !D\7sM߶+ī;*s_^&eVV֕*cCM!h) T~ `"Pj*sy^@֜x_C` Å:]*cJ<)Gm ۻž,+XR4*Y5zqW4ڱ-Z/aZӳ(NgpBqБzU#-y шQ lWAEs /SXnw3{FO#yH m o(ſNnȺȀ[es5Oݤ'D᫶wԢ3cqC|RUϑFfՎM/u~#RMMsoc()YjU}YX͈i"YVͥ":~y ^66e5Qrc+38KQy-a Ӷͬd2hˏ}|G3)QPd U; сکB_7+Hbs" rPuھ\Rà) 7Xg"oVRԘ2MZzJGH7x5T&'*鱄MmM9\ι*Vv!F!G"<'6%/9֘ŝRrPQGvt]$kWL0}\T"X(AP+vA Y B4tQ옋5rTFp>ݥtX&5GG *Nyp 1e~b Yv22up_C#t%srgr1`iݕ,? ڵ E8((oӋC@Y$rv q5>'c:c<.?!d#rzTȜm6>xtc;OzO:c]ّ2a-3!hN{O` {z:aOE:)o[hby38 fN :G~G9Q?9?x~OPCQFX"DA  :r/+UNݠV-x p~(~ JlOP>S[a@L3Y vP?b@4Veb[ 1(]%9y/m "۱vhkJm(E컼QΰKBD8G d1g0kD1mLǞG78lYU?3W*'ƴeqF;6WW)~ s(BA%/=^T^x GFU8@ٓAT(L¯R>MEޣ6A=^wjv-O!ξy. OC:C ӄx+²^iOBIJ;SZh3+թ*D`Q9g{Ϳ͎ `ޔZ =m5c0}|rS s7ԁBI`1Uoj=%՝6x%\ ǫk@29#kTc>>]rC/Wɉ.եdZG2Xݮ9Si zKho.Ǖxl_^.VS\w'mV˾ ML%t0 Ӽ` Ya98JmsΓA _k^![>fq WrU1$p8MhNSۦWV+xZO {cn;c`b1zy\NUxc]n8y jrPq?|>s 2 u=+ h1VÂÏK˯"VVD?;oQg 7r(ГxU=bw0EϨ1/RgۆEϼ\;_&˳9tIa˓ze} l|i;m27_Gk2m, Q{( Ͼ[%FfveUչ 9 {?]HmU,KD w<.ZZ o-{[MI4@J=tۯgD?ΛrHudX$ZV3fծ -4fWr!Hӛ݀BEb#)SPh&#~WLǵ qŤf쟟R&!niFK`vIPD%x8{UEF܍HI. < 9wE9.ĵT+{~ߪ RI\(btr3"*0 256n$ c&ɬgn#C˝z tK0DtZ, #$!Ü,ƥ"uLPAT :`q;Ѿ6^]C-`Cq .&nA*%6 $$MyDfv[ߏmp5G;%*#t_Nba@jϙNRӋLZD%hupg@ZF28$5իQ˓ ~0V3/E)0==FybP2}QdE BëvtwDMC=`wF_ػ|x^ú==i8>bi``>-.4^Paa#Hd9j:ZnSuZL.-LPJyUQepi/*=R7|/^tL!v2qEHzO}Sp4g^VRV{gS|FW{O 3Y akdNn #aMTFnx МgՅpep)&֝D/Gxu,*7?l+2LnȌ{? T9DMi J0Yge+L;^deW=)W,b*pLNJsI?eS@2Ywj DR_!溛=8ˆ$nO!swisϖ,Sd:ދ|G5m@ij%_7,FTJc%hJ:IS*(R4$,Wӂ=ʘM(*1 e7yіFWBErE:,c4):EVO1=\Db+>3Pj'`ߟ_ARp^l؈GG^;6}:ϡz.!XH ϙʳI&@VvnY|:uyM?0YgxZfs7/yrȼB)=-._ oEɥ٤75(9rL9/i88N"}ٷ|5M%ܭ1DD(}5mZ͇D,u;2[s%]7 831sP_ʓƬgj^ B W-̇"F0NIGR~7Jxt7Vr# _w̗\M}*/QF_t@挺vܢ׭ˤf^glZ`} )3^ԙG`9^^`*^h%EUܟQ/xr(~GdfK.wUK}UwBF#hNttX0uIuDI'?>]>>ϻg/TۇOfUɅo;kJLڵcd 9zL~O/זWX~M蛩!eG@:h4[1f03(M0u 8QINI+!AMDz*3U sC7/rrNV٥`/UH!qq`1\g!W7Q5a J5*vo:ݘ(#S`TѾvCRzciAWʔc]o,4pL:3˽S>P~>iEy =OV\I(k!j֫>]W^p1AkOQQ=w%1ގ[uJe?<b8'b#tckX ᤴǔlR*܉:ڮb5݁frˣ 0_x5a?P 8L4A+h͡.HZ Ouoq@ᵩI woMY@fh@G"3~Xͨ=DvɦDk8{X yq1Uo8s?UEDEvRBzCakӁTkE| F>d/䳯+?l&1 U㏵r"Y7gi]Y$*K>,4G7_ }}5!8fin5&5ݙmrFSψt Q :B1nk>5!$r,h)pRp*\{e{6)Zչ+XQ6 HX^6J }w%A %1t)ˉ nX)iOL-pgʬ56ʕ'ct9jN,i+ -sD6)[>'pܱ(&a* 0Q[o95f:;p:=Mx]#yiwM]r/?򜧟l $BrHO"0x.eѦ]suQUzNR ΌH.3 ßQZ׷kZ˃82`q4L*_ovnr( 1X坝3^4֫f<RDKw pEFܓ@`[5OpE[IhעPp&EXɴl{ljyh2Gu]A*{BY#\z'mLkkto-&b=@>#{$Fj;[0~;MFԠ((֋Y֤X2/kVEXN2-pv'-)%xǬ| w\_)jlkc)oc)҈4S[ 1bk8KS==Ȫn UzFQ/}h MJIR9CKuΧ^6nh hs_y"4b+!?|xZ,5_uS<@ bLХ\|̖A%|!6Ҵnp8>&?%xk2@xՂh}pضfDJ%]r+ݽ"A\s\ү5fCKDPH$~Ox%֪g<O! '/[zec<ǒrȹz=\H"T+I0Ƭo%j4[lB4cޛ'^ol9JbQU@dnj֟ :llcb?!N/4]FhV~{%yǵkwlB#%ai_^ė\#^ͩRk:5mUi{lqc+(fQS )h;9H )s}w'Y3iGd{=Jyw#Ɖ՗$rk O"#Ȣ\Kz=&1aFn=WeΞ oH E6Fxn4,6y&}^VO_3yiMoKdLw#0.5Vg007d#:#[" ]hqlͳCL}SiO 1l\8$ulFvi9fvԊƱenvi+S;qǓZ,z?-qD8q[H "zcjMYpxloM[8}NߐvzdO+G[ۿy#JQ OӪ]`Af Z]Hd xԄ+;ɞXGTC@%4_J2A^=d;$H,dY3Z7awa|p~'# ea[/!C&- k۬L^9VɎFH훑GAks޶p*p5r|'#j mh!XD Eb![GoE8ÌW}\>=W; ?W+!Șo9>v>siˍ V`8T6Ir~ Mve|OItH#l*|\Z oк䗎L̢Ӡl+EAOb կ>2t+'s| Y |:37Ya;uc2I$.`>Hƶ9@l<9|qt~N$vˬ$1 A}P{'+eu.Cͤ7a(iBڗ%UkM ^2p]+@2ety<~?Tfb&O#/% Nh*ix" 'tAdZp +?_^s ~Iaȃ_E fIU235q/#/zn؄2bjct@+<~`*oV鳒n[,u*|ЛG4[pzo;ȡyеG>ǚ1Y̦WœGhd=3nENjAG)8 ;'3AgP ]2ePj w:x?Q ZuG(pa WB`4$Oy hlk pR5dbX?KbM%GYuD$V%;x¿Drmu`'YXZ~3f`|Ħ1@ˬ큅<< ^m~EX'l ȄXӬd3NJ8HFw&mŎ՝=9sʰsj 'I׹⚊v5^y+HwqYIxHNT~nҦQ> Ųs Rt =gLlQuOy_tBWދzf`ko?|NM0RLvn<i=4tf2XC&U͟0ho+VmgAfVzq-pR6Ε}ú6yμ_fQM%,1*cJ j%r"k`~,3gIM@Bl|J dK!.\SCK'xSFnxGTa[ؖ۹= ӯn[C.jUp[Tx[3aTq#w0_{1i#(v.Z<D6cz`ʛ܄v *‣yM z^`׸`ȨI۳";dqxR0M_]7b ZמP${c2ZX/x4 > 6@Gq(7)9H\5GiK̍zE]8jM3M48kM&̕!6q>`b(285ax# D~/j75hr7[o4t&8sn+t֛f욡Í) 5Mf+ce/;h.H4/3&ȩgF~4itQ&(hK%+( F)V1qc_svl=%tv\HN*dB$MnyWX7+EҫEIy}S߇{WV=>G`bÎcS*iFS&dI[UΤ[,: E+ kJ48#:&{t'oPwAN-3\6߯w"W Z&1^Gw}X×٭=Molټ  [Wq$p<9{Ryc2̀sc"?Wy RG+%櫤+ٟ~5YEx35̗~?qQOV, r=]*D|bISw@zN`FN6?:Be~ϓ@k 8(m<Y'{{DMi ۸;vU`(z2U,G;tSR뇭AvRSvpH28z=^@ju;??bupsJ!h)aG Ѻ'_*gp7FvNJulor$:߅'c")b~t OkVe$%A/a&t,W/ݟ/xjAmԬT`z|ϭ-T%n_ r{L\}UŌ" AGTU anD(`B{f*IJ.ՙ}+G#e*~+&d̰u'urPM0FI'WiSXN1VoMd_^-fnJ5WX& +m\;JGl&վ>/:9w*uyqa]1;[Lҷ{s KRLDfm}%]˂хF/ȄE;ui1W<0S+(q%6NJj(I=;/6ĵBr6Of<1x2g^[9~gQ(_PwILiak VLC0Qr$}\FHH%IHjv`U6גb .kV4pb{DiOϻuۧ jz:mP@Brd \ > *wͥV~2u)1[?ڥϕp .J |>i# _ɦ.j58wGw_Ȯ(U!_$\$=WM$+>>CPUL6*%LsGI@DmYZӃ?ze7{t5yhMwDUr` 2UB?PY*FSJWp*e 8`">b(s0x@ ;}_ty?v'z^2w᩟޼hD=u}}0DŽ!O)fAFXi#ٰ77VD0;U,WDt#gR+84B.l/L|x6Hq'զ骢.+ .>&[D_T' "E0mEP¬&}J\tjI7/k2ܷHx:!Ksk[hIhV P͌pOԈ!_lTh492#/H0@O:3TdSqrޤ`O0fțZ*GWGߛ'd#SAy5N/1[VgOo)"|az#b-m8XR~r6^JTR%6"17d%H)C+\ ӈ?D+!a)F@Y٠3d pejY jCN[qw)ԈP8\J T<9~)l8wtk!+gH|"H/(=1̓sauB]<wmVWVOSy QDWNʆ_{DX,rˤ&HID3LȦT6fL2S=Z.ꟵyF(rI_?2{EH`uA*&:mڦ0g2R#I;l*+'Oi1籁GAXhB~"]4I<Gno(ȊjC$`W$SBK,&\JC]RwM{>$` nq~u#ŝws:\|u.H9}/$zWKM3"W@Hq_}M)8n $kmƓςQvhb[)J0N븬&sM]!3#/.2-cAlF:~mQZ_*{)P07+zjYS2v1z2d*j/'}P,5 PHij [K/J^FvrƸٯ{/m@+/qu&].SGc)H$Sxf^> 2R::4w+S5Ke4}OIyWR?6 ^_S_3Wp%޵ZPVyUveGOY$ć "dr}"|#I8M!L',G5^ܲʭ ʹ R@#u|h{at&Np4*.v۟Ufߍd&s׈w k dj8 f9Cvʃ~eR]Y6JE sMxByf #NlH5Oͫj֨ zb@6u#v+oleY(Lk( [On;Q:X&qsGj)Xja4K~l0qV 9ʀ\s-T+xޖWW?VcZ 1YXpj*ey޾(%2&dfT9Up;=X.Yfac 5H _ێ[?\ 1iH!djFB)%GBk d7RVֱvJ%l# kl,Pƾh{`BHAal{ 4Z޽Z7K#޺KquNZe ŭnh0Qh ,qCҤEӱ(+18`02O[ ?YUy;Vw];j~byVOnBq"+^ToؕK6x\{p=[kڀU&%e;hVa`vAo @X?>wa]uaURy{s]w~mَ&\dVDn=G&a-N[܅ a  «ˁzկZ5k߁9cEQVb%c*Y5 2Hƪ Μiku H]u !PxH1&eN0|f>Вt7Ǐ ە Π&fzd/TVJ]0p ;XV٢Zt#~٤QS@v軥 5;ָsQ)Gl=W\ yv9A)@Fpk>m=Wv%s揇?ft[EQFGP b`:gQk_5R#/)F5Y&笺BG_')eZ_;-zf)dzEe15}߹]B]f(`90Rpg (ouMd&;o, @Ȉ&N4˃ Kbe8]:BS/xu&%[rz۲2B 5/d1yţ$,&n|~Ŝw ۖ8ufPEA{ƜHʯ>} /6%ڃ@@ED:ءتQh℞K1hSj{bؾ4e1~He߀ujs [JR$-(wL0o -ff,uåa$݋opx^enr$6!L0@ _qXʆKfwC3=g 2F+4gX 5qOeE䌺bu `ّ@]~,RB3Wl_ ;ry KM2Sߠo詙fpK3zbmmFj' \YNCf}-ʘ_joas/hvR*J "*,yl'T}vaa^zwM:2@7Ѫ =ӂPQ>2 @%ru̗<#\UA[x1ZN!xzdOWw=B> O8,eя7Z/"X˯~+ǻ@e<;h%0eRp+=Ӽ;)v(he?ߘ_j IfiCIhvi囙Yr[mEXɺ 2de >cP)Sl!ߓ#}H @ խ1"Ppx&(8 AU,AOs.IM}G9n7F -1\ 4xtm~n/40;n[YKӼ/oo߬6 ӽRkU93q旯bT +/q챎$'|?7KkkqTh53#YL'>ZWۋ`1te=@t*~mr.u1ǀ+AD g!b=lvX+z{p{1T}\.%;*w6%)T n2_jOd/GHm']U'j![D5gj1J:g2`a,X9CJ#6,{>,u\vv&?r8jK8ɛj_CoQ.)U2) DJyyn'Up4̜eC)}/BO>3 1sl Up$_WƨP:mB0jiOm~^QGGQ2dI nj!xĻdꇀΗ.ɂd++~2je/C 9 -M֋L-pi]I<)fX i)n/Oxbʹ1Yc>6ej4Qzs8 |f(D\蒼}m55;$[˻V2Gȧ)i^R"B39:XMWԞ,6VL!3X[Rt짢C~-RdvmCA ո B0oGUPD=ÀuIfS Q Y5{, Ye "mB(:df5Ն#bMز}řgHw .3 E˜ާMF[NnZiha;&fS:ߖjtrC?|>.ιyj RjF󉥹౲~Gdk("AE OS>rR-Ih& +Ld  lPѽg \WY>hGdb5_LS"EV6@ }&xlIï3P;I7>5ҧh+A}RԎIX; 2<`s2RK Eh.k;>i3Nl}b: qY?ތD;jEmU|VD ګS &Σ>t r@L3bP67XKL' jxf3F1T"}b dnm6wI SrFQt)^K vد%ɔS𣐠 ZN~;\prFq-ozݛ$n8~Ms ;IhlXCgˍv \iR sEMeXܿ< li3O#ӊP$+n0(tXs+ԈɾpgcDe *)Ԩ[=צ %MWDzB WqX+dXu{iw͍zApYy $'ɪBH/x5: 3Łp=ㅩ) < /2ڵ{N1/ /-a*K)ܮ &飰5Aap=^5T#X`,`Vb[by70$R@:Zw)gZvc6r"*_G[8ƲuutF\:yqr._͹< 4 o;WN!EO -q3&/2 z:%Ԝ;!rFWE|UslX5P|c/BGWe=uhhA0cSL >. -c~ hZFe㵋4sC!/# YB.{!u>ͨ|nmx Vm:Df~Yڑí߿_) *^JbX\qnYJ.?C9NZʭıD tL=R;ƃFQWt~ ýCLC8ͫv}YGlצ-C sXV$32O`-µ$%%YtJ(UV: l]4q{JTe@d< 4qw%#`8]n͓T3*A3w!؂#%Z`ց( QaE ح}3t:DˎȈCu_ahOh2ǮKJĉ΋ 0U牤UIwh NR; l=ڲaba"I>hL }1joɀ_=.,_ LS6D~EL;(i>x.૮oucZL!Zq jAMId4&6 X"܁al4UmC<  Te׌ɵWʐ49Tx6>3V@1 UWSɿJPB?`(LTP:p^Jrtpdے !vv^TDA}kaJ 4&pΒikR!j*G R\(Ubٽ0&-'zYl90e _TesK9"*WH2~|[&"c4\WѪq-`Il@˅&cߤ9Λid@}e?4ڐ|cy"W7j !:`( Ϣ0=X ~!^O> ;vetzZ=}[ɻ\PNk/}-OMa1 ݆muE"t'x/SV~7T%<2knnJ~+u,xM6IX X[-z?s:ផ;t>HɽS x97{!J8z{:!Ձ?Wg\>*Ht%.'8I~11]ⷋB3_ܾnZ s2 C 7(J}p3hND?SOH깖d%/;Q>]|5CZOJr-ܭنORw7琽Fr8Þ9,}ψn"eo.Zrn}twvmlJShjWaH')A7U$3O}&F j ]ޕso]*7=e8  Q e}~0(B #{Isr҉GWveN'=@LhxwȺ*q=YR2s.UºzKD)jfmV{$DI|' E$hԂO5Y::R+uы"/ui?HӵYO7NMSft6$!sfXRn`cVP]+O)A _G9;\bVy8K"I#%&51rj6= b'ќ|3}@GZoŎ ?Q6jە`J|PO*Z{Drߥ 9E&blj o]K*[`GvH9?CWJ:_:rOrad]q7~ߴy͙\k&uJ%-],va|J/S0]+mV/%W0LxE'On ~dGP>nz'RN[jo+!&EUbrSTN[S -0bA:_#GH U ciRgҍgs gLF\4u֏1Lco-Y2zL d_c5yJO#ply f֔ Da"r؏eb %;i-Nˆ),H'l* :`CfBVץA*MEg6EhkN5Ƿw'Or?G$A̼Ň"}א_,4|$3h"+TJu=vJ]}y\1ye 5"ATR ֱ$n1u*?hX+2IX1.QL$K%'pizmADSoWcf&AǏRdAhrбGB$uxuvXf@%t ZW/ʤJQҴi^!qP}iw҄9RoW ,یqb h9R7HU3M~c?+`&J1GvX%~K`z.-q`')>Lk#,OJ7.C*}4ѠIQkpFR X1q/۟^ZagEE4$zN?%jً_HpQVSYqۂaj[0ΎY{cs@Pݭ.w.kmwUEG"M`Χ3zW Ս#xʡJ:9!Ku*ABt,׉!Wa @ %r&ڞU0;`b u6+ c^"b/RU^?| ˻W͒1~o7ݭI.~RiȨcWL9[gOV:9"mEh5^цSg ȑ4'y,WȍӞBE|o= #+'fDO_zէ&{1|dVD޳V1!NȬG-􃳡@;ă$os\R."v:) k "0850hC]9yNp]AFٸ+RGQwͩK8 jLX}gC*n;by~xJX,CJW|qݔp<;<"AW4O6M5V;Nw٨PdH^Hުn%jZ^\΢-a0s*5°61~0$4ldCJLƸpS?j l+9Qoi"I" =pg|KKSLe67fKo,ދSc3_yG*W3BV{iNzB7[4_,-ڦ[:5=#rEW߻ xpqҢhP摇QZ  v|rI`38bXnm1nnuż଻Kq&O?> F)d%A A٣`h6p4έ!QnMՕ^"D{W`>{?1bhɹuߩ"}"t]pfYFD [dS|cs#n]ϋf\Ά|2/FfY3  ^`W2ԛ0y|Ps%@>g xbi݈tO RԬ.&y޴GxUÄoUv63ef.Ab]j VMsgwQt%ʵ^2B{SXbć1D3bo' ,ghJb\9匙?|1(ll~.WӞj. ]\Qz8 5(2eӞ?#5ae# A~΅A?.d}\8ST.|   ބQ{PHAk 7VNc~ET _=XV~HȆ=Hvj>B4* 6y ޵:Si θZ}J91y|C?;g4lN̤ tjD&":4<}F~BG{27ti%A T_fǟBKYKM6*3?u/Z M͊edDB"U.$ta&uTH2g.s_\,uÐ;)Msƾ5GWz_~x sbKz B/rnFE-PZ=Z-MXr(g~URiGr26ի+ݽrXNY$EOJT{zZ+d3#OB@B)9Mtc\;#NcHE+rތܵc NQV-eV#fSڅ֣< #5HyV1atv3QJ}L7b=\0~Y4Hbdgˤvh/v<;ӧj8A`/2a\O*l%21E}2'l/ZUsYV|r_"^#k$[qr[+4i^ drBj g`;"ӄ evGޱ\hޝZcPo?_TM,c؝ Zbܯ=F#nwf#Dϛ{K۲U.kO*^^Y}̴OX,|xOe)KTy9hXӒ!MC-y eHnb۫ʾg '׫H%baIuڱN䢄K7]?/Zy>h .,[Ɠy=0yY(t_S*bf0N^-G.Ϭ|R\3q:|% }YDk@Rƽ;AF V_ xٮ;*15tDz.%I"qd{HwqsF Dn36-][pO50?1ig>s C޽rtnMQx[ `=I&Yb/!bMWb_ LJ~>(xBB]P'6EUtx׹=wDλgV4E))nNI ? )?hz}zPݪm KaOY $,R8hݞ-Û௭eeoJ)Q7hw{FBۄx+*%)',:gIb c?yZ6+-SAKα6/HZglHV\N3-]q,s:q(<dL,Ԅ6k.K,q'yy6n{\Ҡ y'{/ZA䞇d!^5 cI,qvFݤ9աC=xybΨP \'7PC7H94H%E]lndΡt.) y:k(6srԾ^B y27 $1&9σǥV‹2/ 8h-a~%Ӭ9Usیa! JOuDwpw%%|=-*ÇXB2rVS@%. J:gH GaPc\{ ڃ?'`<kyC'KKHp P}C{k+ſ9?2*Y ς[gopOk!ٹsqWNqKM7wQ:;Raݴ.t˹?lDF84}M8,%a`46:-d[j>mEʮT>`jWwpN4RZEY ( `Ɯp[[-JA!a)!YO}n@>aovV)}lXUԒGo?9 eKJB-'Bս>U%C+Z+U"e6 `l)B)uyTL׻R|]*#m|:gG ]a]f~Ѕ"OYܦ= !-_&RSc {UU}.S%cDt^QT'BxHZ]Ԥj†#;c)(zg߬B)Z) `.؊"irh"%D<):o#Vn!*W`Q.9 Ŗ)J(@P%5U#[L4j"mChĖc3j>Nj|WUb"vuV(꨿dvev67m8s@F<̐+L8 tz{g_M}8A\:10 Wٕg7Wq+zgϯne^z)IWqI[Y2^MrZ9 ]IF~e!eX\ ʶwE| }AnMP(ˀȭT_H?M,? y)(UM`3;5K洬f4=AVs){۰+%k+ICX, hgr!q[CyXrt6dY#g=?`Ka""8L[5#8 h5 jD) ?\ޞtǭ/שFPĬ;$a{!Mȗ+Uꭙ(LM:6R0i)ٛݴ~Q(hJc͵K밃`M5g6$cj(pq45DobI0̴;sWړƳr0q:\wU''89p HvkИ)sqw=22ffW,"@ ˉˮW!f~"fc//Ec8 `TJ ؿؚώx'z_좺lsMAkv D]hp=h%z}Nly xVƝ%!~.F[hOAXr 84$=;vIYǜSHJ!*\b67 k-Y@5&_rj摐/yfV.h^HyBT%>{;aA~a)q#)u6DG/dTK8&K(c(2nQ=2>.dsKz:> %QɆd(cFJ tWomz%w7)Ei:Z!rH[tv'՗Sσ^<-]VwrSx /](#?x"A.@0$ڒ6R*5|6:tCΚ־܃@CșgNj;v-X`h{&9?@bhy02ZFp}Ja&ǠXyGתO-܂t&/Ms!"A/MoMHͩծբ\d 'f s:kʱ4Qt^pmCj\;ϰρL]m7_X{^˘aqHh֕|[R'R(!E屰 펿&hrɸǢiN<&6xC5ޏw /N0v!pq` %`[E,ƗLwZEҒ Mfф?DOUیBODK|H<[J&fB(YƄ۩Ri>%:$PCuɧQo-覇%r$Aۍ2'FKߤ$N3S09ީAKP <]ʌ2A^[whG~`;$񀬾CB4*l`|+ajIy'B<}p 1lKXi6x5=xGڠE;}aKV++a"WDrUݢqeJ{*U՘߸xѴ3|0T\;` cp}c~mSz 9$=#bO p-.j!MJK  3~ccJ~おm]p? [I$~ttC8$)+Mk)υ,$EۉN2'ͨS[4,q?WSa3ȖZGR(Q#2o8x[,7pZ W;Ez.6 BwL^͠m&E,~U;uǘ/xM`>GSN+`> M"ӏh't 'YzmԖ8\M7vDDoE9a7j{+2YE:^v]CIHԕ2[,a[5nMp6jL@g%YEܸ'-TkQrN嵋/o(3QWrC5dZ쇿A -}#-G< zib]н7xCrgԶvI ZTw}*@S,rI'`mbuv' Uj$/*_@G6oj,R~|-bOIǺ-5V2wPU!W*`4y㏮|H_̉#7s6%|0h'֕8CP`P16l=B:aCy<ْl(%?~TPM2I*y~@IصD턈j5M渄۬/),g'XԮGiPp[>"2 "DLGs]n*=3YubF]?|c_&pB~fW*2\)GN{M}Q۸rd,P%t:qtu̚&rW3o |F Ⱦݛ,Jb0=k0djr/`UM@" ?.^.Ġ؃e1ۗvzM#׾vCVcCbta^|0 KJ/~;(uqhDF,!L(X !dBK?sNDM=ٗArX4a4!=@PoFDJ\,nvy,6MQ0C1 Pj΋95֨~֑WIeYlgv^$R,SEnO0 w.DdN"7?tEH n{,ͷbg `-w߷oE'abzgHT!$ Nxo-6\oRA窞4p]MTXQȭIJRc?@)V.-xK5?h!#%_OcNT9! P+t6m،H4O2novdeJQ7A:{vzV\aDL_cuϯki˧xTfm%A,[l5O2dYerZp4W"[Do8YIl'nR3&k٘hPRM/WB Iąm_$!Y([H:G=U9YKNi~`6_tTf«\!2dvYfF4'_%;JEȁFfi#ΤbreҀ~wuGi{ДgF_Rj@giͤZk}y5 |*Q!$u^dXG<ܼBVB-CXer!++DvInGdQ& &l01;Mw!C㷕]zD̵}ͧ*޵2?:PdL_>P&Wcݮ"Cu>NɅZ;F/iZ`?`J<x;S.XŤػؘmlfɕg؋Wp>Æ/ʩW:&l+:5iߗ0k1$(mh4 -Y M0SfwѠmĚذ|%H99D=fnQ**@R6RSH%v5;Ҏ2 BӢE=?j$1C9i1쟿I$e!e$PEO}:}a 8j}p3t!;= 0"nr]>1M9u_6|)Έ?r>1+[@ b`#.;ՒAA}qǃݡ }xރ>,jKk-uII^C*Ztb{Ƭie,汤\Nr-_Ԑw0'CP̭XA`,>Vܻ1G}bLQpz"0Xv&thvTmGgPe$|@ㅇ3·WvN6{r g,|;_1*$,@glC]+3)e{럙_Hvy8Dn9D;9c= i2"&Rˈۭ6u{ = Xv .<,N mD"In7>]t',eDq;D(L +S>˭ ױUџ d>;Ȉ[}eou|pu}& <6A Cdr0R5Ød`iq\Za$79'/Wь jIl85m >AϘa-/-.Rp!:iQYa|w^Y|ԃa:mmWb z9N,ʅ D(~h??*P.RUfղcďQ! b Z7v4 xk` k2[ͺ њ:WG/҄#iS(nV4hEPe.y#׃,Ԥʻy?(D-q=vb 3*m-|U}K̀hD.k]O"MPB7 %I;U2q:bNeB#Wo i]…_ uP[e6-%<+7b.m#BN2\]sw&/6킘 3RUB.8C$ ǝ578z4R.Â# VTˑ|! 7 $"}T֭ x7+d]yẹsc xI #:%B^[`%_d:OWR2%E&^GYii"gU?"W=aΡk{jm9!3 E{cYi̷"#L RLHRS:L<$ѴԆaC+ eJ`rЄzts j.({pLh DUq:r+8њni:Ь1>,-lva8(͍@tI~zE_,|m~J|ׇ͔P?q=02R\tDhzF~X|[dEj,#=1 _r B-I_xrn }GHO~3&`]ݦWTmj͗]{@w n<Ǔ\kנĠoImDy޺ !FG0iïK8x\jI^XV_2Ĉ2߳ 1Tb-bWyP@G8GD 9°Fm87lH}{}r#I^_(q:]$T2\DEsDbNwxѾ5b#UQhvҧ8|}V:|J^,P1TJ5BzBd14v9FnqG9ᚽ< =tK~@p&TJv|v <<MH˻J0XLX$] fA4 ⪈qP9i,I.Oi[scNezGKgOڙr.G塭n9KS=RT:z3sFZjՃJO4鹑3Eu{̿GCQ6Aa>+˫ðȢP {J>|9 ф*>VIS+Dx+ϏUw tL .KWפZӖG 0*fMe}' 0PȂy<բ؟AdG? xa5*c^g*~N E|U3ެPjsBV`|HJy[W '؍$!ȭ=%_c溝FHYC'Thm' rΪ<~=8G5XNC1yԡ%CW2J5 _c=҉M,-nRJU@c0+4,R;u4"&:$H7yc'BNV73y?]9̺*) ׹_(6"ZVg70 ^;2@ҩu^\^aYM)ΒIƷ$[@L_ThL|WmlOaJ-Qc>8; :#TIfu\<fq~l밫g+אX4~ǜaF^ԯI"}WNy:uK/=!%#@鷧_L$+x Op2uBe<$v4_(/CQ%,&d gv]5J)4D63̻mt p0bigD@=a}S^豔[(n3^cy2UA8|N7d:%.M1Qj\>@7Hk_e 9uX:)FԸV^W vN@a]آPcԬbq \ݪB`. X̡5Za٠Gimdo kr$;Q{1 2Q/t#8$L b/m2/$-SF V fq<(?/ C_Mu>]cZ}-xDE6*nNlJ:Z;o]- ND=[-zKq76x,UIuІvy4@IvpLGLo5x|&2=ǽ&؝r41Z x:W-R"m<);3<xK#k(^[N9vCr5Iچ2D^Q~aWk*O1Q&[[S\hNQ 'Czr-tkJ~ GW?ZYdBm$Z1:::+.S'! l iwMllg7.\Kf{YtyO4 ! _WU)B|HZDjd,.].CZBjLD8H>Ptْvԁ٬?;=hlJ3(?oRV> d(ާ2 % =+>e7 ^ էG)U}99"n+=:4۽qwǕŭ' IeVgݲ`# /dNjn^>Yd-tkP̧V#&hG6qߚRirm*UR6TuRы[-ӝ=u|v~礫}eM/WGSbUG̀Y]HvcNd9YzCxA4ifq3|$xRCk_]ť9Ê&+.OQ #A2Qc&y#赬4޵qpH@s 8"~1Q{p nLe\]|mvUu$3i輊 NI$E {:G9%QH .}Inn _;BMn } -8"02q 8;2_x)gF+#I#h :⥹7Qm$ou)McFF3wŊnh\~/!0S5p{MFZ]@Ch.E%ckcS*zC :0,C?=FfN `Zb$y@:y+" ڬI}ڐkQUPSG%4gZZ=좤1uKRh ԖaR Ei~]J9>.Z'l}ly9Gr m#9)cM$E|x<.C-դ5[?/^}UɁᤷ߈B`/ggTCJx5c?.zB˕*dJ!pr]94QX([Ep ovWI|p;XZbnm+0"ːliLxa)I CD 2O7##AFͿlL:3iF"em*]\o*Vfn }XЭZv%Suʋİ~c2n\H6^žx@YR^g =nvV.I5j2z0#P'M{uFh/LĐ7E $Cþ"(߉h wya+aGW&]*;%~_j!$Q&7d>"ʢ֫վӨʹA ,`R縩xX .4i**-;Fin}u%Rw)E# qوl@51KRE<9+2 .U'KXqP !C7,=qS&XC^B>2ͤǫn%P2m6s->R N7l 5FuhȂF *K-XN3oLZr _{]|plvt-}6szڧDГ&-Wޝe'uwu,VUw]8-T\3w-CDs(B8A޺^> ((%}Bt`ILx 80ȿhnq`-h:CZL(ք}' ,;2K^ͳD"}#:$2S_/5\ľ>pzWO7oIٗ ;B#6#zb؈D!7Ӯ݋eo,Mre@^4e&ːQuW9' n6ӿ5+yHz֧jB~;R>0I>lnQށE3^h%V7Do6âQc zW=#t梭M޾b\+@vH>wќ@]]^u_чn8yF?}4`/˾s5[OhACCyϺC5N<5 Y/lt5ue,XZU[x]H1U``-b%D= ̬> GaPc:Z$TEbWϩ*k7{EmX?{a!7c' ?П&#:M7Gu9$dǑvY"vDNFVp8іoe)[F\Ӡ3< 1iDÉ۠JֈW̊c«yʼžc R_WWRnǁ=o|6#׮ #[O Ro!7b9d0J J!Oktߑ='j+ΜH7\An}JBpvzЌpF!Z^ҝ/7螲@hH$[~`[YgT<I14qx`y^Vu+)z $I0³ϒfC$`/ō(qdD`?nV۽ nD /zWCpYlʣԐz:g˓J9A{6n9D {ѶVIjﰵpC%&UP :>z]Wp{vT"K.׭+ E+ bx.(?bሄ_; B%z6[k'S`A=&&^oxC-A>ۿr-h7R ^6pglzaa )O/11NOuߋd*^pp/!)ʺyY"3ڢeo`F '}M9$ch<6G {QmBIP1no]z׾"gOT;lgjfU w⟔ƨ? 8+^kzE. yZ#1RE=#rg4]G0V<kG}[*`(r>/ ޱM4^hdr+y_5 'O׫Ww嫁N7}h ɕy? z¼o>{= JU``qP5"if%BۯOn5l2Z 9uH̴/m~*$6)*,~ &g*pq",ܶ5VE*+"qkmU{ |NC%RN { [;5E9h~޻N_ +@=:=E<;q ]A~g`*","+Jrk|7<At:pXϙaׄL> [9N(:nٗP WnElM(-^"P4㆖zVkUXhh 榁/3߹ ͕ C;p\xEe#)m>{4Yj!{ș!3]z x::R,7'<ߒH, X4 8`<J|4i.Z|=}S܌"8r*6ɬW(ذc=rӡp<dSeGӐzqְ9>q4dxUHǡ0>Pxw5B~^)QcimDi@w@+X ,Iijyz# @lgf{v綟E'/LC:]:]`S<G>lG)'h)̀g{,CMByںEwX v6C S..yD ةQ T j ym nn:J?cbKȮ_$AX/avRNSYz*U'嚏 j N"$>+h{Mrf/4I{2] q68Nk}l[ RdҠ- Fy{,5}^41MjEPR^ D,I,8\i|~fgpl qV$Y8F~<=@J N{fRh>q^)Œ ?s~ʹbcu㹛nI9bw5dX;"(Ptêk$5qqB-0!>ۄ6] h.+oX̾؇HgS*˻ K8t:>⢏ -|LZ"zהNE.LTq?奦%ϖЈZ }.-`.7hB;9~z |9u.x8Or"ausn!3;UO_wK\&-RpITb*臊dalED׾ ϵ^iYwj7vN\o$酐F?#$P7!i>>] ()p}"@_Dtuu$١Ե$фazp\Ō ըeҕh(y쳝±+$_.Nq4OB G3ݖX8[\;TYQaOJoZ"o䥌RMY(tkKb_!a9b=?{sԭ:;csjWA{ǘr7yc,+:(u1\X߆9U;w^ ٵ&ΩhdaNkxݩCM+GᐛKL5S٪SL񃚄ENyE3xG>pG S;7Q~1#^|g( {U Ve ;u@vؼo7MUmF1~.ȵ݀ Nƃ6cLr̀ENb`D!1:MQsnŌ?BYs~{lޅ1:?$Uix. G<ѷ[TUxm/1`vS%(J+ْ\ o ]Jـъ,`e$KglJaˠ3Sk(dd-F~z9Od:l(!لe"d4)2zC[@!*[_:_~Pքn].(S%_y*  Kxat!\_3ͩ:s$N8jŅRi sYh*Ue")Ox,䶃Yu{Jk–ɖ U^Շ$vAؤ^,jmjd_-:I ?1><`#'lxp9n? / XmޖMy <ӅHG##[DST{',F'^r_uR . *e~KU ?:L[KrhJ'o[(NFzXUn,5SR=5ܰ3P0I \ "SM?tS\\e/7{@BO62׊>?kBLPSNy#ܬ,r5ֲ]oޓ5:<H*fj W/0sG;>%>M8GMV5,IS\^\:Z(|[+'QoQCϮj/詿7_`FFg]t#qz* >F;6\ˢ7'.XŊReȁיO2dBܗk_g ]- |0ݘ6֑ dg!EƑc, ؝Hy8AD)"fvf\w8^f;N]jbM*9όE;]#p˕PW': e@z.e[g[O&,_d|| "7\{8Lm.n㢵LXhE?1 'Xtɑ }:B{]m$i8 <ETB-JXNcO|=#Rj)OmΞ0?,wQh,QxJq|WK-qf^fH8MXP[fIs}jߖ3Fr` ?]E| !CZNik( /8G"sj9*Cr']Gv"FuQ>O0qݏ<#.EoC0^7QJ.%mST?l s֔>~!˛1#GwiԿ { qhh>IJĿ=kZ ;+s CUJ:tQ,9z橩|YRZ^!䗃˹]3]:i>F !Sc|OZ3yN65 eY_d%y '1~(ZBSɜ?/6N}m&ghٲrF{uusy關kP (kUm,4M688f霈5P!%ڮ"8jOR"4w4sx??Ahh2HmD(#2ί}AP<.yy /yT|Ol)WFS̥͸|xb}ÂN{Oq2-O$l2(^d.A+8 6"Yuݡ|3fq)<`r*,>:TIZJ}QMuΥ(;s.owG0ȑfz++_JJ)ؖյVj4dRSQ %*g׶hj@q4UDs[RTPר ui$<*!-JO{dk`}'l̞RЅl#9?Nd_ }`}*'pXe _xqlHN|ـ($%i`'ԘC,zV x% QӤ2)# L!X|mLK`˒1;/4IZOs9ʁ ,Rq=X5hu4R!K\ |&vl'QIyI` TI^Fd0܈fBye9NA@"$!|2xQrsӖPrwVQrF'x("Z+y,%ltZm{ r$W C' Fٝ06JiGj&xV4sqѺhbKTœxk)M/!qQJ!B82mֺLrjy3y@v)/|CeJE9zMݸ#o7/eEWf[tr IB(e^j1qIK [/z!/LA @FUi@m>g@gz^\"  Ú@ gj>$DگC*9,hG맗C+V*/SX^J8KDEBQό}Q 1u\Ԥ#S*C7ɓul{2IHZS*Aqi$No-lT>I<{[ޫZ/X%Z"c"]lwRɦN(ZaI@;Z=p&Xe.J-_ulkɀ.~_hoWd~0J;-BJ$ 0`pI`SLL]2O]4 CBA>]Ŧ?^zyӻ1H*sRt5ZaV8G< #(%'`X$w|=u䭽Dq.d|د{B1Cϓq ]%5;tG1 0KZHGDy9R:㔙H@&M(zEwT>$2K|HuOH5"FHTՏfۙDiDlzq۲xeɕ=1y&᤼:/zmTKԒLm?_f-j!^EAZn$/VdУČbAy^w$.h} {P*1B:!GװY^І5[nc4!976@.h ܸT(&r\K>xEvImj>5l4v$嶈{#A 3>ߓYQē/.eN2sgHAo"FhO0oW>X<TjDYo9(8~Rׁw>h[wc2癿X8b鵎4,yuo >ì{‚T<D@M F1l#VTMT뚉["& " aĆ|~6Bo wT'uصm9R hx+j! ] `u"6E4IL)cLJU4mf9QF -[ck( jBҼKܸGy:W،@Ipqk#ןg sz 5}[MJ\桁71ξR y/!hhפzWrdȄM^QVx?_{Qx{̜`]C㞎P(o4S|Cf`g4S50ͳ㕷 %wP$c3?rm#>p a>+^Ƚje=T9QvG㺒 x\E}Ӊ<մ#2J>T8L }򁥾;rn*?a`n\Jjݷ(4 yC|؞xqu`Z-ƃ *bF {;%]@I ?5bΌr\O8BKA4eGYASIɔu\C=EVfp slve_'<EDMz "n]f0>wCimrtE5Y=di(w4_?ڷ?Y@.hC̩pcm@l:8 (KeZ_?aX#qwKnAD=>ϸd9.*Y +-˥(c z[ȼB%OXuPXJZLvڹ 1Oͼ<D3)ɗ"Հ $CSLr%6~'/yGcIkJv=DzWmۉǢڒͷw9y+s6baR3'h+󗂅fJehh`y\7e] po%@`_Xo7yvJX7dl5RrWot&sd  UvѱMn\țK P骝zMp˚ۨP/YsB"Z5-u9H#d6gADإ] ꐹ>yWz/e1 \ b~2WyӤaofo0 馥WŤ)%h2lb&!5K5Pr+B&U![ڔ<=y*vd{}zʽ#BlkP<{ۮ.I&kPԜǂ~͚g=ʤ 6)u|Ia$%3Mˢp7R(N:xJ,M`K \FNA;4Q<ݞ3XV9UYBa!s(jkIBg,[dₛlĴTPa76=m>fިޝc:7^? ~(޿9FBb2qa}Qa)F,KC{#*EFxLSl[#4G*9G{WeYS] -:L$z%?GWjgFzN~}.`J'|#<0sI3Plݠ`{gveRUE"E(Rk+4awQ"0rbGSJUJ*.Rc-8w(CnbRM!G WwߞfNUŔЌұTj/د$ kt ئO)|# kLկ/#mU;Qlm%D*KDh3 )x,TUAӆ×!8ESq JbȂu%3"}Wڼ| 8k,E1Aڄf\>d>nd-ήis~?@ߩfOPVrVqTjMBf~zA Dbx(]Z*)˧#Iq 0.֛:bmᓀAtlt`}qõjiײƈר6* +$+YCdf8E u?*l"bsLY:YCd}32# vN"o}`wl@S *PE0Q!Mr*7&v3JdV-` ${dޅgBtDQr^RsTe[$v"8&9x잉5֗T8!0dSb\%u#>mwayeoz"GM itD}`Ywkϼ;?2*zl7-+!lHȵfXbY;%hU0 қ_U,%2DˉHC2[a2&1 rN8{pqH2=Jxr[-g+b,,q98> ,ӸДu`_q,k+kkyæ!+NZ?윍Pw׹"&'mvxcwYƉJ/mܷ}wZem$kVOUsG zo @1u,U.AccEY`2O` dXyhuEvhJT|h.ɚgQJhü,GO)ɻJ <-F9Mǽ~7uR:zڒ6y+=*Qau%5 rut p!i HRՕeKʃ]>ڇԹ=`ƋX&cYZ0e3=i։#sR{f &n)__p9%?'&;>.N'4Cކ0[: T1 MhIrzS# P820"9>vL e=aBa-ljo,/iYw+*D؁6-nȨ~|B \Gab>ň7܈g%Q963G\{yTV#$yἭ*DQkx]Z moP(d<ۯۑ)>^>K`߀ nQ&EGRqo>ǗۼWte쒩Opax/\QYb{y (Caܲu 9cpBzT[ܳn'۝0k$ u;\\~w}"B"&%,O s[FV-M犀l#RfJ6]kT|y#MS0u7"kҏ;gTYz)S|q$".!}+2q)ԣJqdjm,,8{}#n s;1RԦV&h!Bxz:o:јlάb1?&IJyw ɝTK-:3hjJ߻m=Mn}utr$HJ_oy¦93F:þv{@z^ ^;hrfqHqhbBdBղ3SkL"~ |8Ii WGF }u`Ji%57WN %!cCʅKC"kH*<=Iw(Mkq`JCPoX3yOdogFbeAb!Q/yqxvժGb@Aɋ]V7>q;,I8ĀQٜԓ"K'P)Cg~%F"YvMXqjE}#|F޼Fj LÜL&J;߲V XQp^fgg  J7^Xv;Ԑzeɜ Zo1ʼnmFqgbՌR֏G+dKu/h,6ْn[% ZJd+ۥrjtiy'^]K;00@B/EQt݁QMӇHR7 ʁhnH< wfNfTsƳPEt* V༇Yn4蘮n kE7sphx_2zoy(]Yq9jqh!w2.YbBGbZC-D{ @2ohZ%nfZ:j D` `y2{tB5bY|QPx E9&Rȱ}WVĕG=ijR1Ĕk6dW7t}1t]:l<4ͬ9]rE_◠0ql^1eVU1;!7HN4a?C*䭥{{:v|1ƛ|>5'ڛ냒!<vQ N:;틯,Z0ԨUOn5N0SL[/RX44:Bd8qt8?,#|Dbq9TmE:8Ycwu'ƚ6gU0 {୥Lмt/x|+C512teFuΙg"yC @YݭAC&Fp/)b:$pv6JؔϊA` /ev;p f_QG0Loȼ|) 3gċ'o1zhy,*έUͅ9umKx f{W]pKe骙H`l}7,o,o)8 }n= L|(籥pWbdiQʌ~C]CcPѥ 쁋ŦEn8zeO>(AU0?# &]|̇ވ.l,wjhb>e<O "e3f,.zRP,˛['y!H hMAyh~EhԙB *ȳ&TIF1ɊcN#?RLxM/sUsZ16&BPF #=G/`묔 E0IMdb#];VpըNi)70GJ I-'ܛQ=FIK00JQcm#rROSgXXsICao=6< AZ\π{A0M.r]Ai 1mj5aaOy0A˯v {W1! z ࣅD3<1żZ eimһuz FڋMY-A*6ʒBt p&Gs7=㨇UљSE =DK *.78U<\/0cęd2#Wufl-DTv OoD>C3!(t$ T{8Dƅ-jhAw "m!z8T8NLn:٤wm7GY_j&xV83ѝH>nHC׺,J:0I]Sq,o2o38Љ%ʈrtZgAE=5-2dq!]0 XXިM,xhpZ3NrfL9Ug~Cߴc_J]T`QN%H@@%<2U[v"_{Kd 3}pEt'W9%hcJj۩H!y yJ&1N}6/]P5,Pئr T @u ԍIZi& {v{p̎7D3 D#2_,f -)ȄoDPu:̖q'EB]% 4X1JeE#R9⹜nLlvgv;ܙ Ze.Mb} Id͆TX(R:K!gHߎb,^G43.Ǩʟ]/riEf_tKЅҿGp-ؙ5ԤLTz ?1;VYAXY/H{TJz8[N ]9\2$ %[,*@A}ILyo$xvax2*w7Uwj@ᄘKnJx`b";<}s`ڭ<6: NZŰX U_V9C=rJ.[zs\'rX{〰MU8r ,f2$R<.4ZԄ>y ΝbyKJB :I`/ VT *yi,'ѕ\\O{nE" _"2x<2D׮Su82!CGǚCK<, F  -7_l ]0s:P6, ҫ]y"xY;HZ'ۉS!i"IJh̡F3 J۬a)`gG18+VbrP)MXgPZxMPG0;9 d[W_iƄl`Oj_sQK&ʡq<жi3s=u'2:QR`\]*͢Z_mNL C-$ (uMg͖£$o#9#v/玫;lrl⢀;qZB`:.{0)\˫=9Fձ{ܿFP][9U yR4Ov"4t~wY3_5>|q-ڜEP2zVinuX _G_jz86I3CuyU|qdvvcņ]}ƵKHzxL'gk/ޑVtLOgE'o S;M>=du lyG}CGI3{y"fN4NCDK{N>Bύx0xuÅ*C#~LOg:, h,=; ^ :gln4~˨{ %A~ju3 }+Q! iVDY:)`Ro}"^-'Bԃq |Mwe*PW_!eX`CpdGZGssXOri GQco$fm[ǹ.r r)S7Aw]yZj; ^R>DA? A;y1$oۅù?_p&YZnRoЩ}N]{޸ 1()dWAu_ㇲGӑ!.?Hp|!& ~+OL~ sՁ+.VJH%v UR"ǐ7b`vT}gz=%ZJz̀% e ˗ }"_%$ 2fȞx7tם"}~8VZmh hCED e' zWR3# #1~d/+^_G7&ؠW8YٴU 57N;`@eH_>wj/Ȋzc![&\ɨYX+k9hDҁRk:ڂptNZB {ke(R3"NK7 %[N?divX-;>暠K۵. K"M' Dʙ5jN~!УkejiSERUCBe>MZFX Ǩ/K3X˟ޠӟ(`Oԧ6Pƶ5cDO-9jy5D[3$U33)l=pr[<띿:A¨jT޸O0hk.J]H@Δ7eeFXĠjOChl/]ƽ!}tQ Vѵ D%iш1`aK/yL@w%w$@yۖ9@s!7I.D͛뺪.4^J:٢ k⣹E B%)DYBIppTdIwi5ZMj-E\ѵÖV+3@;(ʮfTS@.,S=d+ ZfB1rU)4g),cڪbzT&' .QRS}vĜ pdDylJgTAA@U dsz 4tSiڿV9Yf拖[atBiƸ_"YOPq5-J4}!R/&) *Nצ^p9/G:o8?&#kL|1"sQ$0^biQ6w (ĥUM7T o(uG/8}ØNO/}l>Yv 9Yڟ#murW]6>v[V_>Pâ<̄B̮C]9Jxx&rq.GNצ djEODkm,r7\c}F|Ґ\G l8`r,n$+\/73RdG$,be*Sxo2x_ڨ~ߩ$I|zrL SXlφg Ⱕ=YTyɈ/ޑÛ8vQYan=3BPwvW={Zio.?.:Kgy͖E kT/{{OcTZR|ugH;uZ <:9ۖJ`] :ww|+p- X--}}];.1TUt{rfZ䄖UgWm;lY`itO!2\M"E=s9R-x?j @$IU>֓ΚgJc0]EB (//L!܎00𸘼?6a"ԅ-o[OH@mG.%Z[4dxD=de])w[dL`V[G)Hc v1aLt+g+W4%) "8}LoaX߳LbnXO Rߘ/?fzr;-M̉SJ>xo&Ml^G8@<1o Qh^10,:hmEfHxy^,"s2iΦ ]_F)R+Q&ϧxwW!\!ao5 0dkl=Mĕ| ^v.:6Kr!ٔ Y'D<6JBET77̵͙T\] +)uL=`IU`"\̶n@h6y1[: T%mb;{SfeLkv}Iwoí}ܨ}cb}/8_aKO^Ԩ\R|:'>i$[ 8z.iXx5E d/ '=136G$B2Ela  k> 7tE 6®7;1z6% dIߙKgYYDcKCΎ^ީyk:|qhpDl"< 엳6fOwv Հf lS# jkPf^u7z?J]6Ũحsͣ|v%R+;3MT4_?"}F`~j]Al"Z0"kn&b2"Q<dPHK( ?figb*ޅzk0o?Y8mc8rXg<]_6p v/wi`f  8]p>29#,]`jn\Ȓim? Z$v·NP iѸz /qύ\{UbhZV?^ !@ǥQ2Z1 ͫގm5w,I!x3hj 5 #;ug/Gzcs,Vf~509A/뎐EXH¦.42nCVWU f:2姄qǛ1,{eD9`i^[u^-#ZzhЀc&JzE~ngN z'C٧Xt6|bW90ٯ1P /2 Z9R\a%ĚS ,C$݋1.vm<&%whnN0L aKP rHӛEO8<#Q-L5>+ 8>h_. _.ӱN_'4~`tKBUŔ*u0\vIfQ(޺ (9|O hϧhFPpy`w`8᜷AlN 9zun2e4gM;Hіg~8LhSoAdpt+;(G#a12aMvߏR(%dk 9zi릢*$3 ~Gك0u($nxzX9J;E&eV풵vE[2&%&^#u'6pKʺS[G,LRc/*xE9D#VssyJkpc-]#M^Ut~ ^$N{N0ҹ.8ys1ٷxik:eŷ1ziBF&l@k1K*KG~F=R3FuVd9=O*gSg:%m_Eljl.k\yzQ`Q?UǢ('Mm2+* YPF!^s$Hz,CN Y2 gׂrMfgE k(E+a'EIN|^[3^4Bz&>4P#,;︊J QZt ,Ts6|>+7.u\h{u*ZTYN .mDD{Rg-wnKk)._tJ!ǽQLjPc􋄻@:>ri7zoNMu)G!h`B?8 ssB^G@1^&@(G}ߺq'P#QīS>  Ì9,}WvdfM.=:B? ۥ73:Xk,K=a'|&L^dO |~RZ8j::yT@LnM/6-FEO$V{YpU71g/#VRh;۸2-Lf˂aJGj?@mb QdΔ r1jǞWG̖T }^\mD l.IR(ELU"òہ hcp;)|=U8.l F6 &|(UǝXصY ƕ!^| Mt#Rst05Xs<X۳+;PwWQ-4wN6N$4>1F TuNO]V8q<D6<VCR;[E'Ok\Hҫ"7 =vψ/fxWa6* 'կ &R#|L{~Z O*ȆwU8yҸ.1z ݺźk\s*|couU!qnmE]3Nu`d($wal'q]Vq Yx2ڮ쫤d:U(E_q<>nͅW ~rd] VÔ/cy0"%D_q| z4WP syh 奩Yl\Q6h7#mF,'K pڮ¯ I8gDQf4bk3 륛F߃%ASe@lơVC \r`5s-=J8#+] 0-\Ç*UF U7F]G<&"w Q4Zi:Q L c~TbYop_gc|w*AKYF@85mM<q| t YS(x)M2~NZT̯k0-% Nd#n-1x)m*n*ӵs{LhgE3Icgb#=0?&EI/^_ggB8ƛl .sAG0(9\Mbt,kblf̹ xJ󣧷ABKm%=#.c, *bb#ϮRg\*8cM .l\vR_JGWRxGv]qLE0G ^RJgΆ)7e]⢺Gu 1c6Lg 2{`t^s~eѫ)|t湼$T~Ym}]R*V`GhGc|v 3hX>%j&]UFc$-lHH䣫$MV"!;0<;鬨:IA|TLTyÔ7.ϚjjHܧ;8TPNjM-i?sI{ ১8K!@بSu"dQf3Q1k[p  8Np:n &JPe$RDG-Lp"ˑT?fJY2RFa0')_@j6xS_;?ˏ"=TS/}KǬ8qC$y`*GQhRyYB$l"o 35lRӅȹ0q[]L߷2.*``FeZʁ YpGdVufLJvK!U0͖p^y;}*Bwϳa*]o .KBų[va砡nq_H$[FD*=BlEobK2(GFɰi̸X&~?{= Sr j7?Iu&6+ІSOϴM5T9 :I"z'90P1]]77 ^=Ng\s >+z:o/o-v RCa1;Hm"7-<>&)D`S@0d'>ܩCrbEBt;hG=Rχpu^6Tl0fTnE|J$pSPSnf)ρFRfva@h%[= sMVjFz&r<Q\79$Uͻ7}va7Ҁ %Hȳδ~]KDL>(f6Ç8N̸u%t0ƣ%dXo 鎩;9LxO9-bV*Θā*!TAOBdUX[>wLᅏzc]g跷F[>a.}.[lWx*Y4;[{ZL}#nV2{QXVc.af'8v(ݫKpoKt~4skΜ/+5TV@$vߏHI҉Y늍M% .iCZgW&eXG&Dc [M ϺxG8 )2X,ErTQ5_>B S5h/e6<sJGK' WD絹 &E]fJkH "Ǟ^D`,_q \nnK; \ʛkҹW?_C|+aAYʃ< dh͏ $];ڭ䁇k$$3qXݨS5b%lOc+',HCD|m +.]V%\I'A;nxi l;c5W`L~5+1 jQMScG Iun[)?8r)qDTu5pk.||d ƄmeJg/&O]P_ցےg|1+2m<*Ń`m8/>jWl-yiʡѰ84ՃaQ^8<蕐Dg(ezKJՓØ`DL9ꕿ3ZH!sgonƽhM=ؚ0',ţڽNW[%;zWjbiPc- L=Ÿ<pkX3 'V98)uBvl 򒫾ڄ9%f#SFֲ$_3BS%Lb$*pwuU;}=lK]*\ry:.V,VfP={lQ^,RDWFg]> u21mMY,e LSPYetC[ֹ>1:$'Gк]2n#'(Eb rZ(*2- ` *Nf\iZjIXbo#`r^5[3l@/b\NTO9Fy S.N@Dei:yD@LHZ ឆ@?z M={?)}5W`}х:Km!=^{ WDF_@_i-0-kؒ;QqQ >gIe`qݮ]YG@{(!ma@H%xeT0ۨ3P-dɽtd4e1 .s=8q&bLom)OK)"믜 DTLL{!/_w7Xp HlIZhD,'9^x}N_c@G0 '(7)DG5'{/zQ7us+L7K@وSUA$zE䓦[z@$$Ϻqh|ZboЬqʡ ?1֓#$Hr)*W~-zwfv酤'OQz%4vX@$QZ wF|W1=`,L`?(>|+d7>s I;3 ؐPF0ѩm7z١6c7!s=^-(f<W'DgsT7`#7/"`qG;c~@.B-A Vcg*Cw>Z ,;5/8SvC%|_y2c`A{v>Ev\ՈS7E u-5`]*Q'K;lQ' bs:̸shP&mPn ҊCE$ӡK A%b6Jpѯ((?I'NvM7"c|d(D:'}Ú81xg6P~bkHuAU#`u!d`xad Wb^.މX:<޽t`Il  M0Zů1M!4Gi+>w zMwV,m,esȒLj1!ò1)P&<՛вŐdܓ q?&pgG$~B0-`պtҪF}plpBXvP,4Gtq`kOV/MЍc!B qJx&G 1@f=y*"{4O?>\q2P¹XV}tE{Fzsek!20~!%V p7(n5#X m\Dت8U}&+b"ҽΒJx]y Ľd. py`#c0jv! cE:bQG4nT(aPW˽yӟBD 6ѹvX~e,:BQ ![Aݍ#r;\2Ma[":}l gb͕1opל4J40]KAX2* 2͠o;]MXg) ʺf駼8Phz|9:8u Nf`J7AAdQp&Nsm`76 Ix3&/1AJb{n<o)8@ĊNQvaKV Ҿ&0^Jdz'Z;# eq_`"jעCto$ (kW˹ ;cJjG@Cbom]D|#;֛l X ( ̴D=K>F~rkv9?w6~) -: Y:D{.֯ng9(anݴkIro×?6eR?I*!@riU ҵ *,h {H0E޶|-4.!ܥXIm/*V3yR |qVJݱ<9·OϝPl0F2ޝ**rSh{-)OL͙<>r;eK?[hP^e)1?1~hF-Uz׉jH3&QfeOaټIZ~7?Sh&Y!gBNbC,)*,( S+ =5BA{fF:M)y%B/x` ݍ7#-WN%UH {(A&Ia/0&aC9>2D%#?^x=_;<a*c)z+ulѦ?]O2C62[u[VE~0Ax=ƛ|zd۴<,li;.ߓw)en^1K v\8gZxetR%f!;Qs$Gk__88$(R` V?NOFTp6łb#~eW쫨ʹ!圛0%:x{ly@44XʝnQ+ kVNӓ]{{mkC `uu7%3X1ޜ:NAF/zGWvI^}f3(Jz;2tS(HߜyhМv/j]aH]XBוԽnurj@@j0#,p`A珵߆<(ToWRpX~ 20 no2GdbY# Sr"( .%`!!#TFS$:k g+RP3`v^Ia䢗/g@j:ЉGڜzDȔ88 B~W0;@\C"<ڌcy2ܕz7v%|E(_2L;'|)u!Gw鼙ޮ"bԦ4o3TU3 ov$Ky@Qa50t@t(}_~i'VdT:!"iTF8cY! 28lUsWuXuX!@ K@h_*FFPhlt4hy}x*[2ey{0&TvwbC6%x3 hҨK*/YR\n&*_>n X @IW[r)d(Ӄ/@ܫ@$R(hBO kXK9G%)_p#t1" $bw1;aw 7xĉh#@P$[C\#-E%=x>QB:])ػVE N:5+8j6XK ECu;ԖmD.;Q+ƒX,n8 Z"!#6&kyGcᬆ*wB$%pɵ]fw& Kv/qsgGubi"^F}f]jQH(f0!YKXM o]Bqm.g9 MxI |}A5q]-T*YY*4y-g6}q~ 7`J\γ򟭿T ZugɯRW1d4ŴFPӦH [O;aeLk7RO7½㙠Kڶ)\Pe,F (OGq"oDP"zd|sp"nZ~TX>WQĝG+nhe @sM2)"w!&<w&Dq@Cםc * y#,XB'U E<=ksl bۑP9\˰${DSb\CJ1>x+T:I6esMZ2TQ[U|K)RQ7kG;ܫ> 3+)@2˫O|ۺ| 4$,KXMO:!8|Jh0QR9巴L j+{0X]?W]jѡTtWIe ZYKu_]Rz7Q4X@(&Hx{p^-Y FD6j78 ,G-IjbC[9J:ﯯߕS3xFz! >AY~Ek+Kc?>?eSbd|Do_[4GYiedgQFO.#"xC/xrwFwK<_$v&5 ږaj{a̡=6_4jBU?xEzN=q27Z_"x!ğV)*OwDlifU{AW/fZ>5nt.QEOOI6U2%)dkj[goQYl> 6u 3Q`jx°wa!|oz+5ȋVyr$ɟP^,ՄhOps2,>, @ wkQłi,iu ìE} fi`!/i2Q[M])gCK5JU1P0h"ޠ<<;)i- og]H &IЫN~pE#[QQb IZ|ˮhf$>sN`#ta[$MU0d? '!Eʼn) Œ!i2vб"41srHNM#sm;?#Tv":2(A׬6KX[AϠ^z7+#Ե(TA1z6b }Ĉ\VMk{{h`= UlfO~SL3P޷R݆n{Cv[urZ y1@P.HƸ$.(:KrYi7,L{k_3 tnPT"c#dΏoՙ(\Q_iZMrNftL.o&-;][6.'qA 8RC_|}Q|rQ&ĬVB5ޗrR>!98j͵pR{N)=(\ ĵ(oJr b?>/qܨsQTSky&a-oC rd F'&S̰ױЭ*Y`{  =0' "HF Kgw=sj~ [mRl(!sG :6iZ2L˹a@*VHhn=#S؝D}-"] !f%]配,.6YW:G 8lGt,v%b5&i$h{`.$X"NT7*"UYwݱbXȯ#azn~j@,9s:C~{T1 ;N$~^xx=4 >oPgx&Jqg5%\eqP]}Fv+/%!TIm6V_)~boӱZ|rS̨fmqprJЂB8 d\U&X8}s ~ t^84WPރ.hu+lEd!t5B&BB5VE@1?ԈnBC ^o5~ 5܁/WK CBƏN`qPۉo>+xb.Z-B4]Nc#bH eq v?Pm LݿM쟘6]lpjn/_Fzm`J1?%8w*s+s.%-G+Ue._m=L4@`[Y`NiYp2W?tؔk*} QY@muo>f.mӼxXXmZk͕mbs>; +)]M ^ .7x-2eܱi/Dų\EYoj%(p(ˡkl,rwdZ~G9=|5;Ѭfg~6hrOî s=`ZnC,}Ԡqw[5~~DoHCtĆ+v B?R9!6m7cu7?fHy4{$)/%ГyeM4tIX`Rg% >1tУ?f>zyT0j9)m{1 sG2}}}'Xق:8 }S#AW| @-@mlSH cy޸b_/:Q"~Ga6Wxd-]uԉ;8?rr iFbؤ 0oLpB)?hjs %TR HBD^A̠Fu+(ПҡNx^ְ/'ZoL֣a),b9 0eLROtA@8Rs򌖫g cI-(3Ӈt!'$;GUUif侔Gi_w0H|ҧ7{1SG L&];-s॥>ePJA#_qC{El^̍On V\ۂV½HL3Xҵ9\{g:Y3F }w,^٨^濪qyգ '7GCsGݙ_0hd]օJ+۽;SeyMQy~cnkE!eG)641AL4PFru3rg$Hf)ڙg姛=yIŞ;z.oDD&!Uz'SI(H LRc9&╰Be QMweD SߝD큖Ҳms^3UF|,Am(BƠ~l"T5VBŦ1lor!*fͫ$\WS0X]N8w=Z"cT15ͫVh}a tdˠ`8O@{Z5g6\A-3fL@/1E(D ))W[.ur6kK@ ܄<=BM;wֻy'HN#t$VTrF#j {D绵|]fW|8ž) ɮR{`[M@"V`Hss$.0w+ aGoYX ,I2f+0siS6FM!aG³5ö0ag&O $(wUt|u]:1s"tvہPny^f%h"rd5 UyWDC((B{pԃm/1!ʫUvsq?ŋ ɤ |NCjS=')}ZW[NI7@I͔b (-%mA|z"uǷi~`R"yt2"$yd!&O70q:]<h0L9<ۂyO5cZ: Py~X D'*X9ݵt'Ȓ{.9~:+ƒd(yBŋ1J"Dk*0%czؒPɫh xVi($OE#7= Ƴ2M=*x:|%F7@\Nύ7֬7FmN/tP|ڮ @T"SKge/g3趾o>SbV}Q@d@_iESy1ehJT?(,y(7H@VY9Լ'†%?kAk:] :vPo4i*BH<ÚLfH,oCzC )=?qIϹeɲY q@Ԏj%$.~.4h`MI\˙}_Y5|]V=x-Г-jE|ş,&tƹu|[wvb &QP?+P(v$[ <&]l+GyLm OoTj.գ.jǴ(V)^-!~fDZ#Vo_O./JD`!Lq-@xQy)0XUľ83V_MH(apn'+Ka¸8L; /,zWOInؙ( PTaaQ(m*_'F:-aoaAIF" 6Ͳߝ aϡVA{15]-(R#F A;磈  wQ2[UQVus>zʺZQlbY,YX*^Ëzdu g υ\YJ i1*Q<_m?!>uP;f1ax/whu|<C^nWp\uv'4X*RF|딘>]:R3׉N:#S4S1OKX*WNo(%):\C4$Mf|с|N'5NtY^Ra w}D A""$mHso1tU3'##[2VTa7: Seu&Aɨ!7IxAQOÔȽ_O&ImSx #6D—YQ7],{Mݲ~"QN z:-P@=sz(jf\#:+`I N9Dw8j{laSH;Q=;W'+~!.ւWG# Z@(PV#^)wpEi=!@_G⫥`5̂_ڨ0-} {М?.|Yo~{]btV؏4GJ]M^{COH;آq|ˤ=@08lQa(n BU&$*AC[9 -p>h]OԓW~ LK޷UF=|b^)Zv[Uua-HO<ꚺG&7 Ĩ5Tq#,2G-W g[SosݘFfN[&AZO Aab *c6EDS 8_8&hD4ޞ c%Α+C%GY+qWL╷PLeƠG6T7p:ü):}L^G Xöq%)Ky!(RX>l< $5ʋJjQzˇEXɖGb"z>ʌ\+lS p{?fxM^[j*n)"!_J> OHޖ<VS.dUJl7JfHz)=d"?} M>I0- [SvX|3Qa Ay32vk k۟[6%/pT.wIg}Yc^@RU:!N-CT6&m^z)M}}d~i/PaQN֕_C zwsLsj!zŔXV&+xȃ X%߳` Řŭl#jS0`; g1K\2sxȝyH2$2*M >{ J̧(سԸhOӰ40oo8]PcJ[erp܀,C4Eku㼹qn35W'|?|m~J ]BENGXLNK0`Z VPe`&5;C%T]cyC(7R9HzFp}yh7:u U*R̭SY%15Vu @,K%aW "d}vTbT ΘTxЛ Ju WS1n1O|ObUoOh`Y0ڡhQ T6M6k_s̽>qtLIaa>Ě1丏g7L8vNڠ+T >^dcmV$!6ςX}T]j0s4y*e}Vu!{/y8\h5h}GVRό>BET;ƝX촫o?Lܴߴy#O6Owïyqd1p0ï C2OP8*2b~5+插 LTc<%x8{z?9stia-}}T?-(!h?}3V>v 3(VZ3ۦr L*i#e|feO-N2󚫜vyAsu[ 8.`W+AGVpؙVݔ/Q w˔je-=LӾ"*wy#"mR[X# ;k@\Tu,G6|MP6H@T]SW͉)] :=ìPC:P)9Fc2Zi-^]NB/uu>et T`4mI52 n7 76- <5:PEQuhy~zo f@4yc{qkoA&;6j?v^" pgH$hP֦Ȭ'|ɵ:8p \co:uYs]; q|2P3V2WZ q2&iqA^+\ Y;i&xrH sF!'>WtqbeM\_9GԱ&}GB+H.azqxzhr]JZ59_i$n|X!M/i]ީ=sٲfšs _y?W\]%Ԅ]'Uٞ=x>8kvx7W8:m 5tFwQ4@ gؙ@wk3F>s6e6hM7(?%́Ք4lr܊^YtBfI,T+&6+2;OǨr{0~z/\K.A?s#h> :od(›A4̓| "\7zr40UZUfJW"7f_cF҈#gY8:=Y '])ndBU(Ac5֔C m#yiw:h0XM@F$:I,]^5Ӿ OZE9@ =a,>g8 pEe v"ZaeS6峗 vUMܨl 7 $ E"̉C"' #<^jzbg L,5a %*;J>RTc[~(M@%Prg΂jz3/EQ+?!l!cֹ~ chnPa&|uj讐 )%~^rņ̈H][$J϶V;~Pˎn} \ )ʜf!CySmGQAٲkrR_ 3_UcjKda*gYDb2nKREu࢒dQG 1x[4ʁ]K`T]KWzoc/0]jh'9N!¢v^1Ղy\'//ܰ+&>.PNx^g)zZLP?gO j=խ{MmM;H¥+ZAͻ;`D]#"[ L]bNԀPeY@{YH@-=f;RnN00__m!c?, +xlvzc )*-`5:ҵbeᕴ‚[G0R,l^8TY;*g?ȸzM1y D,&rXDW9w9?P&Cb s`n 呔dpcl}ъHRbEpr(1 Jn&qgB.j%Y\!oӻK9$q>rf L{qP˭ٟl 0Ю,KxR7q<:oQֵy˲gߏkW}{ֈsTń쇢p^|tcL0b["r-C WVݺ*Rjnܩ ͭ?,:]ns6n tv@JbδUH?=hQԇw"e1.`j܉U#򊦂 fI|ӛw!yaXy:c"|g`HS+x Rh'du8qAxTU2v)Tӂep0̮.񓝩 wqBXzkPjzH.sˀUa !ϢzP/KtMMOT S hʭұ&VMgy 1Oz;"xpLy#]0&?@8H m unYqC `ZS@NIGuШ,@IJy0kžj%й кG .(21@%@U5T)|Gߔ\{hQ`)& 'mQs3b!暐oA ƕkcmlá{RxXAsb3`\ g{]QCu<@k-C y QA!=j6(?M] 8`0pv\V_C- $Eff)WK,ʕw?m b2"_.Bch>#ȝGۄ$67f DYe%57QxE5iRRI6wN|t)ބP-˸8ptzK%nFT62ʝ}F`ػ^uBb|HLR;W;^,m|"CkAIWD>c[EKuUmWNB6uϗiԇ|v}l5]\#j~oHJ7Q"!WZd.Z%̹whǘC^a/ÕcHa+ O[Ib0eœIK϶\J&s؋` =Q$bސ zN͟j=,QƘd/cq7Ȉ'&u&ډ *dv[F~`i`_O$ktW,#i~m V̿QB7L*c:C,`Ԡ_,tF|'K ʬkAW)R ΰw~VUj[.U֬D[Q6)9E&\xw3~ p8~IVHcc11) PKu[2'&1MX$03VM,# TyQ+` E{96P۳m3`jή1ns8&nBR.SzYk3֙yt$3CwN1$Xe JfOtmG QR%2#z ɵŅO3ҾB'\-"$y_l>QEMdžI2fMSԥok*a523Y|ԝH'QV%:w_;zu'#m)`@7Jx</{! n9%)$E0+,iew 4@w85Cr맳NpBҩ_ӊFs{~=휎T9bXkd`3eS_}Բ0BllWjü1iu}8!$H-ayDcE?xmEĈmVhY4RWmZc=x\1PAݹۅe[`fZCVJ^pc`Ԑ%L9yuw7ROIw[HJ70ׁ#p!R;dwn9Ŋ=n-US$y(Ոr}fBtvs a@ F8'1Mnt·F`#I\ۺ х$>AːTFDX^!W` 7ALw@t{+:'_Tѷcui~Q'tg{;ܾ` d.~kg=Rsh,[on,a)sbSc) ʹ} zQ}Т*gH_03I#/U9(nXBDLˋ86ίZԈXd\o^<|HQQ b\ӽ͒J^׳rDqIɰ*gk JtfӒdoKk-=pſRsf1d& >qpq/ްa=4y$]"n%V܃M1$inaD>OdyVZG;RTNv u| {jۄ4c JRJnwYM+&sU 2 $\\PSnZ`f)1asm՚ڳ:T` jtrϸ鋩T<t^m7QLOb#ҌC`A>'+I+(F+iB mݮ]{V!1\5:o&]rۡrK_~;"dW~fb q0#%Z3?ƨP"բKf 4N|l50Onp@l~G-Q"H qYKF&yL@~)M?֔T ْR# LEkkH7JZ2uMO%Gh7JJ@%niAd1^$mȡyʠ[3h $P|/,pз.ءV#ׂZxt/5ǜׂ놾MVf^Ę60 SêcH(8χ(y7t{izx_,GPbEkt>WʄgbvL^e=f 5A?,ifV-b(T˴VG7|eR=́jXD> ^ȫÙf}ޭ2oK}{[ۭ/_AKmY a=4 MuuNj`'0dhÙ*Kls]4PVz3Ȕ@ϫ뵷ylcLG/0;}HŇn煩ĐIqLQaњ]bZtte"ET@ =s䷷gAye+]#m@OԤT02r՞ÎXGKB0IL$èNsED)R`ME7MQT1!QHgCAU<{Zm[xO,#ٞ&V>uswߨَ`R :0'}T犵y2sL=O}fGBPuΰu 9z|hCǛ?S}("kX6EGCqvJM O "&Px(u^7,O&ỉi.| }ɰj|2P(Cc7ܚੂvj~QI{i1n+Vz4e[OI&{;_歽1*i)\ۑDZni5`ckFQPx#hpw>į)W)e;N,\BNG8]F}zL{}WVzE^z d 6.Y txpP\M zzCku@TyvSꅖ(bdp fjf6rD95+U2GpeىM"( BZJIcN&n'S [- @Iھc%*Hݧv,]{^ E" !tBpP֣] &_$}`f{b3=:Hv|h-ZvCv>Lz9454; 6R rvƃ_z}&04hqcsljGHyt1tU @/xMQ &BG0#h* uOߎE}BN 0F\' 43u/k)y̖3g"NyU[H՗nKwFQ/s/Z g~f[`=V nm&SDw*B4lC>d \E mX"Fb3}`h*]Ic* N {ռE.i0:v·O&xP3'#NVW^茊3p-:{'#SZBȵ̪kgč2D1.ͽ ~x @rߕa3ޮ_DwbgKq>X\@r4o>V)R y$ߒZ;&5!MC~:?f-:%L #>dYC$@9ٙcizm:7=FӓԋQZcGQ8e H:6Ƶi FFԖ?Oy^鲃ۊ!@⳩3؛=a!hYUV@j)ZGX.< ΏsG`=,I[[(I : ͔2I+ѵt&jF:%bovrE\󡄤X U%kBASF{co,a뮝r ^-CVd49muGc|O4X  rp8tclɜ_yD[gpQz*0%Gx}4KlC~Έ'o3rlfl~$$U۩2n ؗegP(YLj,=T m,g`# 0&|c%DI+圻@)'k  /yTn$PgN^-|qooeˬV&wGMb+%̒7\oNuEC?mCZq{YNJ֞xhФL{'(y jUǼ$6TqہPZ%,GU[J|τ=Σ` UX!VL$j4F8[⎬u+pilC:lPFF݇UV+?deG288-2Z7m qhoW[^du)+ jRͅz ioh5 ttZ|n]+&&zm`O-+R Ч}m kؖ7CVH9"`C ak؄t ‚~3ta dH[f%3g~j)OT aZ>v|`dPQIiWVkcnYx} MeLvίc~`/$G)7;A/M&@ZNV?`MGqutAXSz?Cܑ"@kx^ Lq;1%钘{n Q߯J{r#P!C袦 v39!(z;~2}KRyӄD[>5K0 eEj% ""?DD..1?l 4 ݍx|#ۘxBiOqX^L1H#hG81h|a3:ɦST5lW8,X$m/_gG.s#3@c>w_h&(iSd,1w@fQQI sbv+O)Cj[b$Ao(u/]<ы/ L\T" P.kr9 (Cǧ*C{_%Iak5Dt3$J:V RGo09kkC&fcJH<-E/t=L? 1;s˔E6s{)VNk=}Z kNmnr8}g8wB{ yXd*שO(l zȦ&jo[һt oK “.`MFķ RSτK| p8Gǹ~Hr<z@o~&R^)+Ϣ$&g8 [W5ÿ+GS…)tB<@31X>b;*G^t;{ U%.#ԑ Txw֓Z@1Nֶ/WEf O 1w؍GpIhXޝ‹f@@x+*`2aD5$T[YR㘟n"I1fxhPum,`jS '%!>QeL(ơ"pE6IӭS][SGPϗ RRLr^?-1]y c>Z84L[j}IFMCl ~QؼH8ZYKW*"ʝ~V'h/d3|ށ̌V': 4VY"Hy_Fݚo8lЄo7]Xe4vjrK&R2C7aU> x)\G4!ӫw&t:a@Jq!*Gf*`ducQF ViKS-,u2-ȓ&#JKA׈z?rarQSY:j8ɼf(TExl[ F hBvpj]_o9V^ڢΌLB~??Zָ3lOF3Y-`fdc Db ?lmH$t!=,͢QQRΫ*tTǠI7 }*ͧ- T+ȱS\6 drq{f3fis {\a7b kn%^Gt/'u^V;h{i 3IcuY%#-XQEzlLKQ|׮Όk!m}{T=?wW.J*BLܫ~m؇_ʛP7l nb3sP@"of#07v]ܲ]Qptz)<goh+qOC(F5z8vDx`8fIw@(g}Ouv@x(6t ʩ>u\_~dG/KݎWܿn|%`'m?)NN=Ve&4I;B}julzHZ*{o;{'ׇrHw;u-Ui e'1 'Ŵ͈N]?LԲ[C1kԭA JBL#8 T7Bjbv2J&XF@dC4Ǜ__A,3'*MS#(pwJ,im&FQSyW!|#&2K?Z": DiGM$o~ÒT(H$;tF\t]CKUV]-r%SOc61wuf:J$AmAa]q6$gm~&40z ='*@o#SpmK:4ɍ1WѳDu^SSjeΑYկd/-~\7GĎ0Uv"o~| =K@ژl܅ַ|Cm=\ŭ*>ŁC6%w3[4ʂe[!`=]²jYr6yf]L&xHyf,oza&{3KRՕF #݀"wM_<@.G{HXJCF?!ګK OW>aOTƵ Ɠ#02YS7"B ̎RIOU,FB?9c]:SraZ%ggvP#fP=$iPw޵ig98ŵ$P -ӡqlv`L^sU)Jבb Aʦ0e܆p/Jujm v&_?)nwUjǬC}3K/k{8E$@dnVćM au7{ҼMjq@H]S>ڙ~#}Qv݄7]f&]`o; ݋I{?M{8yo)LYV)|")5Sz%v&.MOS!oqa/*nfj &Ù{&;)2ƿ:Cxph5K#-95"s.!BOƱc6;_i=Pk;(#>YD.>k_ BZM3.qWOkJ;&rǛ?ޱ=(6ULL pe\lkMdXF6 HYZ@-s|y+*&ӞiWT#cIyF4^RD:%fMTq  uJB}A =w:,}#Aj^n'LroVXي󫵤L0N vX@_116v ''ǘ./$HP2H K+eKQ/UM gLk/ T$r`{Z:m=Oc$f*̻061NTز-y095k^ZD`;\4/yOR^7@.w^dyٴ?>Qv+8xhN#TJGŕ7K!z&GR;ildwd*>So~0E;R74S5%gO_63axD97lG]$eb<k㬾AfЖ'Q7W7dagc)dXi͏8?s%~6U`$&!m(țY*!γ5ə%6gt 8w`,; CKȌJ Zþ *$k2O|k #9moP`\{*3ΫO#gu)dZ"5_>>Hz)/%W!^3Vr I k;>=!wzF`o'lNSj$eƚ%,X#X+y%,z?}~v'Ӝ9CPH,J#>q5Iwy u黎,%&.[DE@n@;O)sX{3; }2Ӕh_-Z ";gOÌo`]SpQ֤iu߇*G\mNҞ)Dmky~#*emӤYe'>0Ck<#(~N\}/W&mE7՚@ƭTh\0ס$.| ay(곬EP4s k\ݩ-`[jh# "KUdAݿ[F@= [WqBy{%m:J*ӺG8h/&/J`Pg?5f]Ǜz [ cJ!Т)ouUFgC$Z&f4_aɍ멳)" sd)3 N`x [߄ /D/3s5tm*In6yg[_u R_P(6PLd&G_lwe)n ,ɛ,2u?P|>XO,,ZA5O) ɚOE(e8`ie=O^yNZRv&)>/H\C)|Pb|rC@jztkn×qIe&rԚd&92^;~O( C齵"ZuDWr3Z? ѸeWEilr0G֥;vfG#(I}3k} MJpI-C5wb5 fՓ=:bG^3v?,zHd -u>-ɄѴ=Ef+j,$ĂiS<aM@WE~'i.m/l9ddRj%_Ipm^(wI낝h,Gept:(b–!8S#䗮hr*uzm,R=9"rz_"BQŔ y"'ʃgT>] " RY[Kӕ=rDx1~1 "J]D.^Nj1΄bLg+gw-~h8> 4=`WEތ[ z3Yd׋Yݭ́ [k2MQCMɐkz]84#n: 4vɛ X2Yd! #6yieTj >,UymfwPUxvFH^16_FW|QݧҶtC,CF 4l;ʾ98Ә\;ɴRQǰpO * v! 5 >D]fb_wtWgغmH5l` vFq '޸! T$Q8!XL(#)k lF-WlZիj9C`zw;=Zs|B| :UxP>&鈕 f5_?pfj^|,"cw[}~ 醥k ];fb )r2Fyev SyuߺnI)lGj3sLEۀJ~'\ ua>2LeZEz.@NmR*eDiYgǤ|=6Y}+,\:/vk4iehTqob#=_de#[Xl*w<ZT8yӌb+P{ fa2J\r{QW!fyW"n-:h&9ʼu.UE$j@lKQy kJ,f@ydYl8M~ &!CX-zLι!dgR聘Qh(A%#Ka$uZ{` 2ho$}g3v8`½*eKE%x_D,耝8dHb1p W8c iLE&*Pz3a[l蟨nWǜNFuSӀiKw)Wdiˬ4`?VC7db\)#ԓ!} NG@T~q\a:JuX:ȷb4;30˭"eQi-U\F,r@@n4_ H@7pL>)A ؾ!QIy'_siuz^Hr2H!n'af6XAS}ӱtv#L1&$ei 9Y*jKЛ駏 x4]6˳SvdKLeFEcg9d[ W7>ԫBQ Atc }%"*n+@818< H%Q?Ƈڝ.i>6!)';TuHi"-wXNܡJ v?Gc$$X5}'h7\K5O;Vb[o VW T]ȍ"* obW~4O|왾>[o!hdbZ5 ];ӣ?4&:Ica~q[4"젣|O 'lknbpkznQUlb.#F-, |x9>[_A xgizԪSjq.rV/jSY)[i2dܭ͂Fo q=!# -xgwG"x܂2aFV鎞YlFx|yZ̭UI|_̇ҔZHG\^(:wܠG&hj69s4 g1k4)Ī]J/X쪃K+@ȵ:Fg. Xp5q!R4̔1jXCދx,Klw j&/vfYgJ봻L*66chkJ g'Z`0 3*yeΠi0jhnή$7ak~ng=PiMqrj] }ƙeǤ#rA/-UM/6Hd_1QWi'DꟑQA+hk&$쩢"SAG#z؉h9!dAJֽIq^PlЌGOŔgbN7~K1yP߱kqN4ɬA%؊MZ|`A*GATqtb*=o܌2%񹠮?RX9B6aYւ"#&YgQ~ *\ɀx[0Ff+j*ӏ̫0:,JRTI6]\L5YHջG`4y64SlS,z /BqkB oo9Lz-8/3⭺k7Kd#TJd 4!ߊJ(DWTKOEIs`LIjk`d6'dS9NtGA[g窮nA;?QZhx,aw8 OD}n,+W- ~!kz 6Ǧ߯8; +pϽF_/CIpmKR%-Ip%N LGlnxy=47YSW3ng3%.yTp{NB)#}J"vu\>dQڲ:C597`VMX`MN;OAr}:1of+ |QԤiE2ȵ&Czi 3G7c~DUb`_9 V'?'ЀY \P.i1v ,(9I0r3=͕oᨫK'&|=uwPKwp&~҄&RS # WQl_~L~jI^CvVk,eFQiÎ@Sb~8xF~4,7y9 t_%<!!f-9u%žvtemR9 c\:~XbQ)d| ~.8}`E0WҞouxd>j=eV]"N . qr/9}^ J3)݈l dbG 9nn_O'/ "dVHRt>z9j֟(W#,2<eF«@"亰qu'wŀEq6degDvYTXc1{.in?3UxSAiм>OXX0Q3y6Gi /똵 !AZ.&TG}̉Uڷ:2n >EőHd[-n@=tE% F$R\t?|uhٓv&-Wk&p~xY3kpך/rH| )V1*̎k5N@s5.8T`0Æ8]=דwZ*l܎@̹VykB>FZU>`I` Jr({waFw=!‹T>i6A)!+HugUR_^ Ƿz5Z_t+0~qutE]JĜn2wjʓr1l'hE:AO1(7:cZ6Lh1b/s|j$p]a0ؙa,BT.+)^EkhG=uS?ԟ\xE1wK3sf>R΁7]N#FrՂ tL tś˟Zn5ypql.ݪQW"1CX+߻`}umXyu rtys2nJ{5ASwCŞ"%҇>X0d@  ckS-WJ [6c ?=9nKO2_blhݸmF]g_ZE( 6! L}^㠴x/îos29M+91 4ߢ3 )7vdSWYיy?AB*RP = WdWK(׳ıFG|I;2%D {LA1g<w\RQǵ(\X /=b9Cf;K-Ydv͇W!09f1҇",.a2qa0pm%6"pEe)|q&BzaN#S9rbW\WĤ^>DK#h _L 6J&]dF%-N<)rf֠Ⱥ. ՍF9{fK"3M\GNt +x+.2(_^kRV%) H@T!ӥHWYxPCȮ?l]<rH=-]37,dw1u~t"Xߑta ٠!/H QӂQhhv۰|oDL40SU^NMC%J˸2!& /m~)SmݙiDЬ쌥 %#?!Gb}tNjRbc!EX\NOop.Ɇ+? q}`mn9G`z?]4`J&I,oYir4 5I XZKh {mMS7<<6&8*$?Ù~Ct+I$`0BIf*Eg\.cSLA,KCE%BaXHw$?xB#|5mN7U5$ƈ7unY/ _#YRSZ^k ;(̟,:e$SaSJߒK$=r1NdQЮ/) UQ7!Y4:dgaˑx?%6r TS߱%/ x{#.qr& .dG i0@̲Q}U5Yؓ\NQf-  #qE% ΜK`IBh`|p!#d7MCź k>{})98BJz| bd)CUx'/<ٙ~ߴhr*D,w!^l*p:`9qWBiC`Q0/dp/V҆%AvPVQ3' {lS-3MNLNuI~*F zHP"E 3uџ9er8,Bi&sqBq f#&PzOL$HEx}i}v q4?>KA-TGh+)3}QQ p\ 5_&T%ۆ}k"`].>]d+6c*4}W&A -7WF䜄/Uku~9@.{ *ta;9Lݺ2f\aw(q@$8:(S$xYk䁱E%jOYkoTu;(LaKG]L{MxۧK:|ʗG$͗r*"UeUՔL,Mťc&f0\qj܋HZÜ_ |@Lʼnݫ˟b7_]0tos8'NX]s`GG/3{^ q#wЩruc@/{) ]T\$)NG|YLZӆmA h-Zn*I0pR:bbv&a8E%h| J+I=m;֥o߸Y7qʏǽSqo+4l'[7(nsQ_P?7OT7Txy؏̨\y<*̆v@)! 3Ow꣌Uc=S_ֵre~ӿms5AϋL4Ǯѷ,20K_7zrtAt\r'VP,P0?)EW]- pd^UOW$>A~ΒؒL\6f-ܬFh+>aZE*=/_:iû;wXؒ:,`xkE:p,\NJbr;3'i}g )j˚&ۭeΦ !ViVwdELz7D7?9_||`{bĸ 5Y=B.n.)0+vq±ͫ-W lx>#SQ$]R< 9+zk$Tx޶3tbJ\d =E8V!EX Vh dt U!/_HtG*rVGZ^B ݧye2dPT]Q8>bo'>F&ZiI9EuU0!,~h >˂ּ@zݞ#Y3^!݆eܟ\RƆb>ŢGW+P}^`ty@oq>\yz$^o"bsdѦ9Q+= %֗TN{vщOQ42ZFQ0F1bĀplž]|EUpO+Jꞽ)&zd:S+bkTö=uhMw7LGcMb[#A&ڢv/y_Q_L"߇AP*&Ίæ ]zwĆR>\vפhg#j{;Tf) 85>Ҵ#/6JIOi*a8*RHiLpb?>MQ31FX5JB"jڔBl-1pzy9P脑2B.(ª_[3YH+"=>lПP D,a*^2gi?ik^tCc J*Ȏ3cN䏝S6U|$N%md:sZLq6IkCݓMbd @8)ZA-@_,:atީ{,U{J\C\^R4}qĎHEGKH}i6!0릫1ʔ*+RW܋Vxfc.j}H"z'.=]oY99`՘á(ޘsX~s?.yXʻLLA9@~lZA4R?,L&DDp^~VaŁԋj(X cq#x\műҖxݢOSckKyc, $|,59Ql:\q:cuYimDlų|U8 /Q4 ԗ~oA-%\ڍTS8'7 aڷOmךfiŠtQ}I;jc>qkI\0P5PA=&J4&&c P taC{}K Щ9*j.^F@(_y_^+| >Evg`œb,@.ědrk6ߕB,ǻ '7~کѿ?hN48D3bI%LHPKCg" ~N7KƟI%o 1^j[$jB[50xNI7G[ĈDlڑ@Dzs{|5)K?<rfIFHsIYt !\ G5I)0Ii:P}'GbĢ d]~ )/C24!N;PD,Ȳa`0t"ы#(GP383d9R&$^HkM*fuѦYc;nz5 &jOYQi'&\ ̄5[/Z7<LY%tBESaH20 m~\iq9O$e#lؠAS9y.11Ti#o(`e4\x|{[D͜. ֞(\k~ -k[/ ]1b &HD쉰fuNc"Z<N/=a EAd )CW?lr~9Ն-,)*w;;!n@o AHGܞ_ؗKDޔjpZ m+'jamXlU PZ铯A9Vj%gsܼ#mD$vR&'h_mÿhJ+W6hKf׮Ώ^sp)PBcER-o MUhb \'y`C}QcnWdNJѲ-~F'huaAMiϞS%i莃KhY2a"Y˳WFk(.u|>0/ϭ.DҌwOo;;z"V9ڈʗҕ!ƚu#@G|.mv4R= .%#n@.cbI+Ssv`a%E$}Al'C RdP*mSyT-KicHxc)fw3)8m]@1ѷDG&—6cN8$aMNבfod,oəB1W*w-l/o pJV>V5&,64%ԹY[>}3+J:s|E89xJBFmnsq삟ֆPygPq+h;SM{td/Bc)&=@TIH3S-:LxJ\&,|NQw/369'~ph}c Z)ze"ԠVJb_GKK@rɵO'6ls [J&MaUz\UJl"s.eŖ-8T-F~ Rx9:qe5יFHЊ @8?ݦ1UAXEí$ǝS V5?)F a͜p 2eq+gJ s xӨnKǂnDm8Vk~^g- '&?19_')-\g|u? `E%󙙹4M4q_/VX.*!Wi|=c3ol]@ß|P=پ줃 $YsR[`)/H- WI8IGWP Ȭ6A^%n~ ڒYlo*D1#kдXܳHSh7e+zDM$0JAT=ZSf詀ixty؏]o:F2*fWF fԑ3/3I)QϧTy  BhP+"J)|q#bô}\+6}B+Af!3doF t`SneHU< xYWp <\[*`22=w`=7SwRUh.)<#XWxZ#{Yo@h:5D_P R3B+1Y1 sL*z,3Gv7 b FyuҶч۠D;󢍦sI٘~k> )r~]O>ˈg%-ci4mVl$Y OgVm%(4'*W E6[c慷U}HL v>!ж^;B0?R I$sfH~WJWwhi^oE;7x崙Xܵla3xt:_ nwhBR肺}B/ExcG2P!@у30ZQo10iS%\3(b%ǣ_ᶘRn4/NT:cH, }aqe =$ת]ymz ,ɪOp|돷r(ߴN$Nn1.fғt}I,/Gf/){$ĒMۻ3^Kk}ã~zs+ c`J5HfsfQK0Jp>U0Ѐ\ߝ&DȗÄ}y4@7Jd4 8Z. ǟݼ>᫸G˰IȒ.Muey5,uzk6?!%ntEGXQeۇCmV=_pt|JtRMd= /~Kh2E /#J9aGtmhH0'|b=Coz7ذoq G}tIǸ.ZVKmޑ2]1WbVN =u,؍p8}~;*JַA:3z$}%)B[)A\;7>P]t&>?%E@V|(ҦmLP>%Wzz֩vͣkIظ ^܈AlFoN~ vZj'I/oWI܋)<"iO q 9&ve ,'$,V?f izxvڹL l:@/h]ۊ'%[{,$FI XH>G Y$Z 1 .SWeGZ1 Ԯa}YY #\pLEFTa<w']#==ČءfLAcbR b.e㩄Ew9Bq[`#6ge9B K2:郳{ r)l!v7w,K^'xCuLYf:C5!DHY(~fbw*B'}L:$%')|}(|򙣑6kzx5 yXf? FTk%f 2+ln|vr~%k ЛF/HWbESIH6% f%D#L ~=ǻs>ăSV^_+ya?Dxm3< bI㥔jlv!6Gck$%\Lĺ }.Av]%J^*"H!ã`HjU4ZheJuf2 Ov比WGMn cYo/x}y!]BeYPT.{YDK)zsC9!3hƋ!I!=#ƧuQ^#BREz4-ӝՉD-nYhj1qڑ+3)&tS7;'O:w9u.Z?|;7^5v%Gsa*`tNy߳"u6)"Cm$( 锜 {Rq#ܭ.v7]_kxvw^aaׂ֚rIjHjB4g")GY?% 1㥬b?'W:k"k:A[8U 9& ?V}G鏅gT[ 3ۄM"` &P?һ~Z9l)(R4EB%.h6S4d ޖ0<ۍau1?+F&h -R|F&И/KAK\+ NC(gɖ VFѝw;`x3Yz ÅVa3%y 7 RsR+Desmaeb<{-2ѤYqڄw-J5eUyվ e]fE'O=#Lgn ٠#HVR.eķ°wvJ* ePfm;y{(2A>.KӄZŦy*"Vm^{|_Ň<)5|2P"*O-η 9LsO2dVbt_kźl:|p4KFmuCvINV8aHT`k|~5+;Ɓ;fqC[:.]!j@0] 6b&pZdO@ Y˜p&Y޽ߗd 7ԤD'C&gEf=s9Mw(V,{rٷ}Ll*M.oEvb 䤫o >m|aͣqٶgI"3 B'^=y#tu*['%eJ&]!f/@;݊^WrhIyfS`Cۙ,Qb DžŐFi/NIV"[b\'}=W4y[ko19~EҀ\ՂB/ap~r?0S*oW R%ai&h CKVw$ᶳ3r xoָ,O,BOb_='WCn:RP~V)k&?FNhBg#'g /D;.ٗ!#f-@b r%ie:3t58ܓ\,O)7Q*1l^;}+8rysb*^Ev j"ۭt{]veK|~r,Y0kj2Ķ+)03_ }NN[ކW1Y1hkjJ HlJ)8>1ࣩI+iȰ&Aa^`,ҭSJae-vGkMXgekE;/z'Q3 L# EJ hR`W,0#גՖO9+\e @lMqCNo|Ȑ W]w4.TK Hd `ɷ%D{BD<xaؘ| ߻^콍P;kw^ſ|$n 25-Bk͉=7.SƖF99i[KBj?tJԼ_wuG }k}x?mUd^wu&b֠U +832/Hxyn '8"l_7<0K}ͷo&. @4E4J".XVy#Xps_>䨚:q5ۿp7NMb^t)# !HU] 5~~8zW 'm++.YƑ5u^ˤ64a <,q ݱ9E"A+E~]>vfm>Xڳ9z5vKEpWV,,P_=O`FSU+ 0`E6) =͉ja7攏}ǜYzYZ, œA/,ăk]Z]k}(#DrM%jucتg7*>Bu=!NHJqx-LM*&67qJ:O,| J&;<,yv80=IV-R{_򈂳X8|}$W-L]Os eQS-۲x99|#C+ D6-a'C/&ps}Ne 6.?TϏ%\8z]hпզQI-Yi _eZt@7<8%  tO~|ZX%*sGJT6VOe Xr *qZ.:%Yu F%* # >𜈯gs7!.L :3zF^+{Kh^#L3D_xlPhմMdE;1wлVR:;]3jA#A¬maU֊ FM8y\de Q6AdFhK9ɳl@WoӘ wlHTx2I RR541r3 JVUsU6و v˞;Y_r <QE QLo8 B~?&k8]53v#b2Y\h!8JPZPvNpMÙ:R$^v%'泌+#%fig(WC_&vdΧ' 0!_܌s;IVk16@ΰ[2ccX.`*9IRș7&v!r /bM~d2 ڍL\u֬@}]R|U[ '۾k.+GJTTkR\tXS 13ҘZҼ_h4PtŬ9Ƒf;DKJ'3k)F=$z}JŪ/a-f-(54TaԖBaU.`O6JB3M`k14BM0d>fc6`"w˝Q9b*o% Y2wb c[RFZfضp'"hϓEDoM9/Ųiͥ#CEϣ`5KbUn`0e`Iw@Dj0!y$[`=u΋3&.xJ0:(-z}Վ$de^f},QN24D>p)/Q|Խݵ d>n>jbK= x>[ IbF*J>]8uN?c5ջ5'ӭ[*`&޺ZA&W>k3w%Kgv Mo.4ps/ rXGd!>n|y 2Ma/|59ˁatH|h٫j]Si :K OĄ[=~RV%{Vl^ ~~S0R3|,'pEdڞ6񦩈A M^ټmclt`2 -drm}bOyj5 ~]Rw ncє΃0L8󈿐oB#.y}4 vCpQyPlkd?hAS!TWhuaq>/2=~ `8Zֺg&aBc&0D ɱupО=3K/h c&ډAoրsuV,/(ٲar^[bMtA{RiZUhk3胚?=*͑@R|' wJ(9E`X Pػ0<6j8Z.:ir S{BFQ"k_~)_ߪgťl5!͔Vwv}V% w=x܆D÷R氟ʨgBHG־Ųk'1B\&(֥݁ 1D]bl̍Pc:Qy>OEec(>qVK%^ʅ"\N: ^y RMA<*7"B)xfs 7u$3.IΩPW >^+]jo\ҕՄ !٬t8Iklv֏fnŏ/dTa_k'¹, <1DaJmBoZ"a' /n%$IB"\fJ~;n@<9Ks5R@jOw"ܐb ufΗ6une+zȞ5% ׶acz iDZN:;WDXE$}="0HC ȕcf kGRWR<"+Zw?Y Fu { H_bX >9 jA!S 3'~b1Lv A[[$#hS6Y!^+c7u 2qzz+`OA &H[ GAW&(/5.!c:k뤥 q_xV]B&9lx ;k-3g&Y37妮L`'K|̓-?,yz1 '\;'/њZ- wh!YQW 1hyPWP_}-a@ w2M <_R-C&"](Bm =l[Vy+n?kRK%](&f-\#)jRM XG2s/S,$kڍ$o)l8ΈX|5aGӽQ<"y⇑(4fGL-Ll9# WO@>5w?7<7X淧+K<-]͗~ Rh&$Ԍ`Ti?hOLܷV[_j%BeM&'p>0qu1F+M֤9(3`h<-Tk&Ϭ{WLO\Rhc#% \sh 0D;[ױy]^k$x±t&?%׾' yZ*gJn&VKu2.آ пTcflŒh-ijŞN>Xhʘ8܏2zHn v;e_? brO.IA;=\='<Nk8֊6jy>,\䇹/8;Vȑ; |8]8'{~BϹR|c}!:I8L+oĒ G\wD\$063Zf ꔔN8Š.X5 ݧI_˓}ҡ\OT+cSl*Am{mnaULvLw1C{qZoܜe-WYɇ2j]0 ޑwy.^ )˼fT (\U/<]-) N\ep/މt[<;C dh𼾇qXӛQt7)/:E] N7 pВœBĘo-pD$'4~Ydp qMޤfn'sVHG-%OIE*$Sk>`.Sgϙ E\ӿVx?)?eEuƱ78 T1, $~AN =_鍜G6aW-9b(*zJ@|A4ϱA͞Nj1>˗:)( `B~,R+ct3a1DM/|o{Y?DMx".xZker w@%ޓ9 7'#FYs%bHS,Ίe5-Ym}QʌH c.P|@h-b8t(kRC|-sҲ0NHqX(Ҁ$P$2'rx<=[9 3;43{K,"A=D?E#\s%Ǖh&!\:q1TkzIiݴX 5tЩzÒ\Z `@7l9@X@HgJOY6sGZ?:JgA*K WTH4$*ϨW\}S3F@GqU_N4XbXY|TBN]Ct$\LǯGz9 'FW]M#NOyV=5FrNìhuRpR[\9O5 uXڋ_OʲeڇK xTCxfpit%XSX C/>D}5 .bs6n1kG  L`zx>զX[hS;, tE$ag(d b|h|3^ w`RGU@sz/FH4$եmG9'V&Ïs7][z:hR,YۏzPsP/׮ Q ^h̙Wu'IXNO)o{;LYrbc4^Xy NrZ=*[bi׀f[?^"̚vؿ=RfҮO16qq7,I:j!r# 1L(XgG۾96Kʔ)sLNVFfk貀ZBhS1aEo!պ &b&29/6I nPX+ASdXNβ3o$=4ww zx/fpV"XymSDg<'c1 L)by^gH#53`|zW,Բ`!{zÓHil?',TIy˭PzH|n۹|A4>'D-+/1Ӥ0F5WKiẸ] ,gP0!ʉ>AtMnl6ҡrnOiOJaMMdM:ѳ9T E]B7oI3!S7%YwQ|I:|̼i. OݲD!΍8 ZSA_"JrXMeE _)"%%\Kر-f 4}׎ ˠ4<b.GU@&9MmtJƺ+s:uFD=bqI)7yّ-ZEOex)Q+Оv?kQ/+AOlH`tPdoҩ'0x%Y|vF]X*U4d"*6l]=;Zj{sf"J0g7sWPZ)ސT3㨜=K yVrT^y)Iv Ցf'Qf"-B{zˇ;1n10`}_Nu.*yop72ؤ 98t[F3T9lW jŦ~IoMօ)jϴ,WڪXHg>Fp +M$et{ܗX6P|ɰЪyޙhs2I6A6_"%yġK ][G[a5l̽L]\9%?IIL0[tWoW"YOrb{dv1hY>zK Sv%F?f˂j[JBőyE\ (,E&]dkqU$ !Dv"gMoVvWSLTMs줺CwgUj@*i0VcOʹlE>X? "31 ҂*ʚSXhK"Nh]NtF?TvIX2kzV?1Ʉ`FF}S'z*G5!"-oX`T W~5Y&Dcw[tg|ETbŀYL_.t)=-} {bzou]u$EeXft3\?gUl 9ͅ)#T4(k{suoj8jp(<+Ċn.Fa+(us.|Z!EKBoT>C9}<ćf%Hg+d ,{X% E@){la)f"Q+_s2]ZAJ[S7JgpwjɜK-#d\$L-w^qjh_RN12️8;689e>up*W&5 |xx9ko位Z=F Z£i+b%ZƋGbeZ6Kh=mnfSޡPؓ8} *ɹWk]!+LޕwZRq~l =w^ݝly{= [L̳麒╰l"EEwj5.;+<$At_N)u4!#K7+H/[z\J9 )K\ 4|@읂;uL[ njh?o|ӿZԣC[ҶTbEF9nMVo"oU]!EbTch*|%MYzv+|/b3nrGj\I 3NΓ}T$#,\b:huU(f[+dSQ~eL#=خLn7t ޭgN1dC8NRH Za(-xDȿrxAY95*O6"Ѱ'Vޟܬ sqlڃW3pEgW{߽ s@I2 ȫh=iWDkJY!4=46?ٳ#,Pkk;x&;CSE0ӉgtPs˚nfrT37\~js5a%5ṂuN9sfmIEsq AWײkFd"u*ujwqfH"~dR8^wE},{bwmFj LLBQâXaF_8t۝Pxm433|$j㫇A;XY'xn:BOdiW.3h_Sa^LǵV-G |cf|mRǭczo1:Mr GZ̠]1X@{59f9u*φUy/fbPt")W0"V̍ij8Mg43az=:= "cL'Z_1lIp|NmX_w:u]5AH_qv-rP|Y Rl􊛱-- ;ءc;@ @cyz|ݨS-R? ޅELC^3 & gPhXx-y& ]NN* gbRY|%l}pgZ7S/P"Jvל)HNEpwn5H,ZNܚ* cC%{;k09%6b 7o2S_s'&XO4j TʼnOo,u"&Nfz2%ÂΗ]rn'lP/1Fu] ꧝ITv[4yZqbޕsmI<$k(Ⱥ 9|(!ӵw{dq8Ċ`% Y+Xr*Ɛģ̓U7 ݚnq9Ca"Kl+S;jꛯVGq!ʈ>jRӴ鞿QywF(d|,Ìy47{bQsy {]5Nbu&_tۉZ";9k7+qR3  w~<,-I 6ejPoi4ps F=Xks 8quxLT#o'h0tcJhXu`DžH /үNs@Зg?JCF6s}OwG R4@.Bdds+uA$p0c%"saP/Fxl ?xEz>fkf7n> |racSwKԥ NF!Cn] ,sC;<'v;$̫*7ݧݽqz<{[x pRw6U$ndf 58nNcsȦyl BRTlBeǫ1{Laq ɅVn.Gr ?A +vbGBmvtUJnBܴ$n*W-慣V]/nk,-} iF!?7:q_]0{rIA&+bSJNR~%zŎeWkW[M'RQrfsOzNۨ@ECͩNpľzyZ)2YjhO0|ū?YsD|jA A5+8Q`5YH]gKrBp{wzb`D$aJb?H:ƠⷌaWtc}P\\ \{Ƣj6FWz)#G=aѾ5S/=$0vj ^ ^g^TTjWq0PbTvKYl]иUD_x( z\^xue$_C a ?ttPAb"g HMZHD4ZM5*V+aMb1bQ~@꺒:O8gH7N:eObl 0\#./ 2 )Kp=DlGo 2Y\CV7p"W5l ‹g{TqwJ@Y"J󱤀C/[ɪ܃_oTkH@5M7t$O;2&L샹3&,['fUBь@f6A͟ 9އ]gwA״5bOTPr*(u{ b*jp-|8$B1 "I].^}іEאܿM2.%&CC}(VKDĤ#fwxi0K1ǵoJ„W6h<ySQ4nKeV9x@MkCh9{ok;&+BO8L˗EǫW /{g-!4RF_ƭlQyL$Z=F ~Taa]FogA*uK,kXL/G[*#q)Dw@3:ؼ: M#P7B I]Zx=%G$c~)&9MXHR5_Ũp~x *Orxhi LxhD"Z9ț l +|)JR 7CnHjSS0C0Gh  a޽\.Qj-*pF д̼T$l ;NzAdWqqDvZ G X.Q+Pe;v bّXA߆舵W}G"3ZDn-;Y.8Vq+~fx0 g[/o vtEF 4{{Δys UiN ܫt', Uzu.Ѧ<'Y1H "qR퐾\9 8F|`xs|ex5ĕ;qg]r9rP݊Ы%탼pk-su އu]/J,ixyLؑA- _kGp>$. ?23SחsoF]WV9 {QX[vxPؒ$#O=[u'Ds< ^^$[3ًѪzÇhv(ᅧ.\^Qzm9p,_Ȏ#C JNmdQD4&qVnAus9.aת̮G3YV;SDHTjs[LL@&JF}@5Lnlh4N.#vNqua9Wr5&Jehgxti E]c0:FH;]NnR;l-=e`G s#|^6S>(oQgBʶ2Tony qy@W:K\̋ā=ͣ?!1<zFaBW{Z@-mG7zo>dM\]%:!f,)ʎ?e)F+؆rKY,>~tw(bs/i ʀCRnH,U򠝴5t'z,S #`+|^~yJ*Wl)FW *@$}g)1r$+gzu֌iEUo&Az=k>rڈel4r[ ]bޯC?*8)=m,A'}&_2v3/*Hڶ-Ey4xTp0Cc6f4a3C-.{J{nx%PlAw]$s'J:r̅Z 0N<"Bk2?9-c pn cګkJzBٻǧ&w Tqe"DI>}9(}Ղ]'j!=p iUM\b@ #VkVu wj <,u^]ZHW!/ŷPݜdZr  1phX]7#6oRJZ 1,|[ѓ\U鉠EWQ^JSP _DaO><I'ĭRO᫥MN D'aܦlH iWQ R>Go/Vj: Յ&RMl%Ž_AՔ)_TF2v c0Cd+ Qs){$CxJ–Z)1cְ3f ݞPHCޫsAFu0Pz E'EG5k+˙U!T1DG?jDpT9vΑ?%BMyoJEA5Є/DT=Nf&w6/3_ڮD3)&U9lI藺C+\O+7П_Dv U!ZDZg[^;!^ sFEnZ" |OB?xPxL\@DLb66m"``-sRPV@P&h'Pel+WTkb.RwWVt`fd۟4Tgylt^ Do"VЙ&-\Y*Bı ˕i*!6{ F,t'i(]Ea]rp|%J_(˾񽾅cR;N#(F /d{bwa X抂V@\.lcH,.1IX VY NXZ#lPei+>[J_*o("2 W2v/8IqCH|Lh0T~FQ ✏%`WhBz`PƧG3VZۅC+jO]3bj-$[k NJ`7~y.Txk(cp/^@5WQ[yF%\kh%}Px7cZ g+7TqJPa iKngV'fd7^«~3Ԃnub]8#\?:6xm> j^KShttG@k!* & Uf1> 8p1Jf;վRCA,ۮ1zW%eѯԑ)N]%\Ҹ.|%8P%CPnoI$[Ĕ ^iob@_ka "*B({ufJ0"0jOBj\[G~"vQ+;I _\VX@0)7$G]mHS\SWc3<@`)1QLؠo 2R Kݰ GyDD6T7NGfm<^S s9N26OJ:.¯esl4@G8)¨1j*gU`]j`v"@7Jͽ56tb}Q Ͷ5i"|v/OpjrɂD$W84P\=0V pKP+ p!zgfj>o]EDZɐ~/7#^lT)qmŸe`_k kp"nįd4 Qe{[9Lx/y3k.pP@ n+{4 aw59vZ̆՞zRSX,Mgh2.?k Rz* +צ៩7h*a^$`ڙC\>gcR3{ Zx}~"w[-; o~D 6g2 2,[i]Kp@dvF䁷.q;PN9EV7jzT-i &7tso[:>Wv/S.jA)h8.V q Yy 5rڍ?K| HiѩC2BUG(T03A, !S^CKZ{t"xGCFRs7٧`MY` փAACZ!R?lJR, hkvtfWuێICf9^ˡhO]2W(i79fR_b#1F<d BNI:PU%My `[;&!/wX;c'?+R}s'YIyT~,"LmfQMwPC{`pD)HA'{0UW~p<;eH<d(K7u,1Ǔ oF7 l* iǃO<M=t@ O /y'Ps^TljYǶ~WTf@F .1" }#HoiL).DVcI:tEvn 9t;Hxu4O>2J8>K3;DӀQ P?G.0EpI%x"my夓g/ktg nʜ+tRN< -}IO^*bYyL? 3]ċܻTcm4 bApԃJ@b.9Lj $6 RNلDnlUSfy>@3xliO+DbSD7+lLSHs bʃjEWB}ǧss;} lTh_1{fJ;UgjU^=%!= ʶ*u]2-\y=zI_Qv 䆆,`#?X>, [W,}5ʭ' hy*12Kc8h?$BjgPg*:+ktlaaqX0qa#L̫+#lhnP$s&V'ėR^z#JҎC5^ B%QFh]JԏGafeJz/bz1\ W3(D&}_0#^҅ DžO@VtohzQ܏vQ<nEcK2qM {_KD6mUڔ }/$Tʉ8rZdy!}}bu11^Z狝# Nv$봭qz7%]M-WD\d˟g0AbXbYy}!^4m9IH̅^roƀIFB2a!\h R\ܺ`5ȹ!".tn~CIq e[vq!]U#s V(z_WJq ̰DAGI 6Qmfl#)Nv+G3o|>~b Rq-BLJb0U,9w^Z$&̏fWY <{,QBQ[:ʎ*I @~``LȺ4xVM u2+X6QB KGkxfw8gqh^}sՈ蛖.kŧ1gR-J4302t8A_c̭ DyM޵{z O6!kG(֘Y_L}hy~ vB4wW4 > mixfc,/I]> qTrvfH/%woQzn]RŪ%J҄#Es]_ɡT~Mȴ `+OMhoM `8ZW< ]Wq4@lZS0y"PDYx<>䑜%.Sn i3jhb8l{lk:A%tqc Tr%{W zj˾c}Y݂kl& Od"TE<6Y3v;ԟ o[zQe<+ ;6+ϥl<TBcKKxʹ55L ! u~2l[]l ]d> "_nuC G޻SJ([X#tT.'s*.hn-YY+k9)sX4+ߋιR,z]QVozVRAXٴﳃ2y?#r)G[qP֐LP Dqْ"Xa*=oT =5sɪ{ h'4L 8񯑮Wg旵H^­_"TmcڰWˑ3D)<&Z][\AYV5BGyՉ?d}@'|ޭ[h$&U~?.4ɘxamt't igO'OyoICMD6£sZ֟=s9FWЯW(iw쾒=1EٺrE]) A1IsT g"U/n/6tzxWGk76?{d匄 VVgQ{7rQ} Yĭ ] f}PgYn#S L)|/ջDlqKi=ol9ʚdN~Zlsy4)4JU` 1Uwi.KN*MURa ڬGRj"(bW <IB*u"AAÕ[[E\i 2KK'0c`C=ޜ8-됆Ot- #+{>Vfj6|5"ceaV[;Trr^UqJd@LzX{ JzLrS[u!Z9'j5x87{/?艆4%sHDe-e]՘LKRN7K(Jj,ۆ,12Iyma&=opH>US|W~=rtՄCz^{L* lNLLONNBlMG|JĈ3[݋o!!8QZ֭ _k`W =r.EǏZYVqvR͡9攂˯""IQqk ǞYH險 `%kMh&}5>o[C zGpv–: (BuJ'9? BwP;aemCFaqw&힯Cϫ[IM!3p9diCw[/.o.Ҫ[m/Ju{ OCP ~o)Atp56;uM/ߣ56ggjm` ^qC%[N9E]jK#L>Q(蚰E9SweǕsN.+jۼ4wr "R/n U6!Z e $ςBu뷘DE)͜\; _`0! Qٮ}9$ |\Kif4ƳXcYn[G~U~p:>dyB.~PcVxs& qx,&B[qWÌ11̔>MCf7?̗>(ۥf~۶iyW?pܮ^ l@/huYDd])& 3t"~$ĦOAɾ$4;2X^@Be;1JxV!̖UIJ(}9斶3C bLKcugޱx<]hJww'%NްxjcG ysY%Fk8 PCSkKF|/9%4xz?s"ڥ0@M+ hh/#\>hWRWd}]U?1(Ladz~V^w+z"5U} /-_kj;SAGV]Nѽds]L.pĪs_W4!/N) az 9"2Rvw*.M& Xҋ 8xK˫f5r7j\=(4{u㊔tE EFjǑc^,y>1Fhlwp7b:uY +J*>vXM{Փlcr`#ɮ$qe@=r=hJRqvt I9ruA* Sk˸6#'Y%D;ͫA-"&AY_/oLHhBې@цvI "Iw[v>zQqzg9i' [%g@ % >kwprk%VQ\F'13-JS>)_2ӠEd =C]OtLL⋏~K! (b*J"N1t9|{u E6FEd)W$u78XPQ7.?3MEw{X8uF̃#5iFH``Mnگ:_<+O!gVaL޹:p_p85|[.^&h%__Nc.xL"F)hAN~mni>e*Ls1#xiSY#[LԮ4f5۵nI#lzg"YJ"S5yOaYzYlG}9Q x|s]NXY!mJA׀ɋ&v7`Ng8)23 `Myg!x+QXi)(X^?ҫy 1}^9 ,Gw['ݛs D˫ D)BV' pM3 <6}Ҍ`0GQ7 7ٜhV\[&oW-nqJCĤክ }8qy':tV` YJFQǦ"Р3#hHV^f Qi5, t/zx(9h/}SܽthI&_g+Zr 8H8x%GEg+E #Ύ'"]7_^;;:HXw/֑w%*iJf%ri%F`YŗD{2 )iޣ;<'&y tP5ƴlUAfer$iY6(J@?tu= Ner__G:7^ƺ嗻A{-On5)e"y.xB!p$.i鬪>ShSd?{Nť* Wo~Y!4Rɗ#t;φ6*qYU;0?EPA.5, v5^; d@:5:ff.Af2s [P8']R;$>:5$;9릟dVSD<4dCLhK3EL;[GN|e ~|7^(k<*]]M1_r3Z"д7{si)vXD2J'n7a-WVeyV#C eoTsaD҆עc3,'h851-oeԊBt=]C! PQB4{IJ+G nmUY Lkq$1Ytrf! NLJ_49@n̥2AGCKƒ}1ftUV*$i"XFr;L_eE?^k:OC*הn׆yc?՞7pɜ 䯪U*=sE<'.E u^z0:9 ý/;Co9'i5׵ʋ?'9VyzZVd뎎׵; u>v]岅?W?bt8ݵa,鄋zB9Wԣ4WAeHZ#C[mźZ .q@̐1m~D!+4hapLB{3ܳ+aJ$oK=v4symG8~ܺ$<~|ghTZLO~,(=s*i.f3qr."*ho{"X=! YITڔ;#hh~v9aK>rlf{;^?)R!2:-VFO̺n܀߁Տ(_ ڃղ#tkϓySfj' ,TV C\xTpO$wgr2>0\儾SŪcٺ!ɡ Y]#$YLYk|9PzGƒ,YFb\:v ]P׶=E%b!nA֞| ?DBsYZ%#xYHRz(J~\q]A7#Àu eGH TǾD֭V=~KURVw=Kj<&l]h'deM hXd>m(ׁ̛׊؃l"( "81śIx{NXk'j=t&rXt#jHd!0PZ|F?_ivc5BZH )`5X;ު&Ll5vE{}cw3Zbp&)/O hA|ein\(:1.5\UVH{a|IRnhW F̩kYvUsxʭ.}.)n8/z'vEcPWgE:WZs;_X$!x3lXD5Vd w3b3 {1\|W3}tGshyqI:ۧ5=kդ$l6XS6.JV;R rNbAe@{[!c{vr<&D*[ds_Kvvp)a<`GNi 2?Dc`(vo@Ǡ-_|pJq+e7chzfL-5Vo* # q\ep܁V!Qz4়=L^IMM"&_9m8G .Ʋ>TأfM:|;0&HTwf#h1ε:bSj)򊗩-$?R!Tz⨆X9kpTԂzN>ix?J쿯&2t)tJw! \$#1H?DQƩ1k Xzvn_9l]d31B[?f@D)^L@jIFԤ5I51z wNj })."i.!gt 3>7kFE,zs(&*7Psm7-ӕ 9" Nc>Gn3W,&!Og]DcE@7`},Q`D<6cPs_HvsQ$L/*ϻG~$qM·0Z "oO,3aPmf}$"Q&joNG[nj-;+9uyW_Xe7s*1D1ל4y<$@98@6\.oQvSPm4'tXhdd_RG­TMu쟼m>o v~KޓֹfΏA|ښ{:q_k֫CX_3(1y]mGMa 7_EҜqܑbs:M\1̋?wK;P ȍ ksLz_,OtV' "֦)X|QގWzF4EHo@m5{d4q^R3&?Ԡ :)!cIc l=(x8zJ,]r50?޻){%Mek /{45*m .q'VGƖ%a|?.J-~Ħh/'p wq|"tito&B7)Os Va=y^{ 7Ǵ:"Oy_?fĽSՆůy%QϣyS^&8 I~+Ɏ&*{0 \"Dn=ajPz\J"hqH6}#[Pߌ-2\4>f;f5p!0i8cSb`Cy$ZbdEb$ҡ'f{fs=Zv0)Z% sBP$NE5^]Ba>0;˒"hlEUʒ<>VH4 6et*)LA6ȝDbGeksϪŃL2veP?Ŵ9eKOW%AyKObp5ѹ(r.|U\4G9Ij(O#ūe IR._Ygyt@v60ʍoa spyz%[\1)P5yKZ2+aMc6zXP`^5x+qhxr7z6Z@_x@5 3ɍ(:# yP'o]tgfw4VZN/e/z;n$ (Rl oB:^Btd$-M3HMV2C`LC @&5l* ͏5f B#/%AbMY#=DGV )IQ9 Fy3Y&s#rWG[Tng-(b(Z賶GukT^7׬v^'J%[ 8i,`OeJ=o+M}گ5 Pd~ AJ7?_`n(xEH ] jj!OK%FfAž)̙B=X>G6LH~\ $]7jiS}qـiݳqiͮOGPtj4+@騻fO]zUzˋ ݒ]9:3h? t G$9r Ky t\>Gʖ㥔Bey4Wd%5lGduŧ$$~}jH N#ɜY[ĵ19ԣ-X}9RnӤ^[lNdt.~M /!;<ׁ/So"6TD2UƌU_3tU6tk;ZLvOOww\ W@RgvR =EVgױy^N t{M{fX64Q$%twHߺp 0 H[@;t;M!騜vxںۗP׵yf^m_/b?ޡK/~r]7خ4EAmaGR#=Xw"@"@/sأ<`$u2t?[J/\밞"H&* NS^f&6ZH&ZNrqS#qZlySDova4/;R/t8^*R6d ?`n7zE=LL&Nh5Cl`T~eA~3p%NFr/w:B; g$bE,'ѝ:^d!瀳kJRo'yI 02*K0nYUu(EB2; 0O h\$a\؆ArNN̐#;-)m!J':4y">n#lϧ̮4*WEѰ)eiW7 ºhhW Y|t\Lʷ=0#rG4_-i'4OW/2\߸@ATa -0(2 +IsuicZ̤^K3}g՞XAbެ$2G$/3n!+u@lI&#đCf>dӆq]*t,q⟂z5耋Tܩ]n|Ժ{ĢS Y#oQrC5Pl>"y-Nik̑{ꋕ3xǸphż~4' _d7 \<4V7ec7+aUoO *Xk1)Z"7ZaHpҲ(P~"Ί;ޠq=^/W Әqq Նvg_8zWd-5GYcA5%]PĎAMfUX2ڧ Z(4:J o:CU/ L,WȤ4 3(e[tB֟13[ѸpX6}ΠɃ7Ч/5 QDUO7FdB܀y\06p kauQH1yfwK%BԵ;=פfyd\G3Z? a)TeٰdVIJŇ;E=gib<7m-XV_Q̩ et➙HH'zZ τ:FLA] IW ^S-/ px(XI7{hF?]1WΠQXݚ,`En$#7֣L7YZaF@јؙ>Ajɤ-t@1eo mz(CVg(\e:e9t/m!4Zji_TKA ΂ai|MXI.nG;B!uÑᥢJ"| 1~+H֧HvH($Jb"w]W]8uf 8EFyd4*Pd|OzK-D@=%#%˼>HDŽIحHH N-ЪъAb*ڌ_9`BEj*-@'Ӂ9*l o  b8~0rx6]]\TD 5X_Jd AŴk'@2KѦg}ZDv͍:bMҜK>B'ďb4vBFs4,G Pa8m\)DbԼf/8,Zuųf/E+'TUM%GD_bM+7(I'`٥u{q{$r\ 2Kh.a)s,`1ѩ>&g9PҟowH?N$i7݂[ 4C. ĞH>6VghrfdRg$g!T U["g$3:hj+ }cXE- XSG*>Pem5omoL&!U,6 nrdJIt[2&Paf\p{d$].{!7Or|}N^rdΚhF%EuF|ʮL,͠E+ {CcѺ [/}`+no8P;V|XoI ▞5PIx㟒P}9Z!*;戤FƁ`=+sk6sa㠑~&KK4}s>zH#(c`!3i,0HEb`3ٹ|[Pc;/^]TG $KLEB#VN!u/gdC,{uS#NvW}k9RF0b$† >%:*O3pݰk)ikZVQ{Et`LF9IT?[{t֋iǘKe !Yd褂NcK*R:o J{]!žXC9lg(1}m{43g>tvN4CúbcF[цVӶ"{(--y2ۮW\':=ZEf}a^m t 2d[gL M f;8d)  SC(l|m}Na8E"aFLBI 8:^RA%J4h# rŬh_3 &&=3`A:ֿ sRWHh>kf_,)T~nk}er'"1|ݾ ~EʂD)ڠ*N gQ~h%+نΆjrf#$󊕥AfXmJ)j"ށYc١3!9A/GyThƶv#yS{b$'et88ua)JE:r`Mq<1i-K&f*4j!z52ms`z3Gq)A|mSq g(h5Ģ䭁`TbğIc*aKl[^!ZȘ)&l ys cwcW41޺"ym6gzXu*d4aKDŽs=9_Ct|;1I$eŏ\\C:Vj}F|;f I.tGV|NG۵tM$lې@b1 E 75{}1 >b{sAm߯.1P): b;@%V2Ffy03ڛQ 6]>#\-%Oڵ-_*$0?3H9iN!u.Bg雅_|)DVqpJω%dtc \mœ^"tY갽whmj/MņZiK!Z8^u<ฉ{P9 }Χ= Ygm}'[sp;vmU*ٓ?Sg<{ܩTiN`JvXf;P6>FF@#bb:5&TT]:@֫i By3; D BG?2˕LI^ʘMX'v)r7P6!t=tN6!3PKˍ+.9iihWM0NP~"TUF)Nt i=0 Ɍts`7K=Mh-S N̾/uJs*OH2HIDv8sg !l?;s|jXۮwPŇAY N?hV,iɇ;gS3~cgX~=giLz.Z2sH&@F .7F gc =11Bݣ^Ȃ!3mՠz&mY>?)hd1$l^]]>܈ Ygb"όݣ`?0rĢX^rr#8b|9LY[D[S:Ն>%ek@_vp^xyC~]ԇ'cZ?ׁI).c#L]#跒^I:_uJ^%jtĝ;o46hM9 %7 );nS{ v$r*d O#='r }qؓx m ' ]j|w&ZmNQՒE16݃7 ܕV(P^WÂo-Sf:h1Q9Wy$5& &V j㥍E!_#{[^Oث@Di?9f" X Vw7 iۯoJ_e -FA#FQ}loD&b$hQ/SuҐyF6ԙ¯VYzzT]՝v+$U)(Ve&'_!NȔ뫐fMAd a@;.(X]8u3A*󦟝L'1ȧ쇣``р[uɅ;=6Hd;wF BPUJs9=}EC4~WsƁ'HIזG[C|8%6Rh)@T$yВp6ui{礰ģt-'|)A=íy?F>uПI m:ِ$ߐ%_&do&h0ߖv X I،s{A!KD_1¼%r{zѰ5 ,,C|~"JG(0B1Z#K^ '_ޟ^8X"CZۭ!RWKy@5>X\=FL)24/i0'$G(.SYVҒ臥U^ۿ4&[Y JT;5*ɲ@= l ?#>?7 GB96%OfL߼~ǣC &38Wj ]ѩ,@~i`rDbY*rk<T;zM0`UU6#׫,%~5Mَ׶+DPHa0~l2-,UZXyU.3.P#pUKmlg'NVīY!رU lo#\o|#$|;?ij֚A,S[&:\VC:UysNf[DvߏFAxxwzbc)-vPpöTDDoẓ}"a|] MH{)dqWȠhpq`2SHryakQK$W l, j1ՠ4+,A]E~ڹ,H`gl.+bUܹ(Y47 \N{pnX~sU>}= 5(ȉp{iE6(|&HM3_ϊm`uMgi#jOn\aVqt!v]>^_}Kr~ACَ}aO9 ܑg7Pjfkx#lC+͇w< yD7Y}GnП+a6K}DygEn/Ȕj[3Z׾poIIN|e`p=FgܘKU_")wYB3}Bsm\-r 0bKub!+਋ ,/nX1,q2sJxV(_B*pg;h =a+E_Y.g9|ľ&PUF %3"lQRHRӕdۥ N /A焵c9B{ 3+ω?zN9n``1(Z(ME\ᬊ~-}شzrN}4~QRP=!Izy#Zx+ vrcTLŨB&oͬBK UQ8%v 1R-\Dm[ _ŧP}3wb`KN0NP6W( sj94&irӶ11W?F2CcKɛ+|MA SE҆*K[7f 0҄,P6 {^WU1DD_Q*_ڒ~R>~[^ʖW\T= ҾOf #}bgO-^eTXBO+2jQ"opQa7,BqK ZGQj>kyn)jݚͶ5!GNb^C`}lb*_(2*,vp1BķQdmoQjG1w(`N䂅Fu t0H*hiSjۅyK!j}PQ We 7go˞Q,ۻ$ҧdA24bԝHtYAk;ڭJ Y[6n { (=gYHB&1xX6i?ejo+tqj ]A A3NGKusNԧSFRl0FLU:G(IXủ^Q67>j rYNW 2UKGL `Bq0GlVTDiY,aBX/2E p2׼w̪F,ޫW1T5Q"8UeJQpbIW\nPrL~^ ÃCNml&ƞxT5(gt.*~ asؠgBi F)eynʓaX8ٽ(ߘPEe[`!)!= _b$>ؐmxo (갍(z^nJX>=LX͢amfATpnݏ$U08Az䂨YZ|ľU0Pr? JjJ4B^J;ԭu ЪP8eSΟj?bh 幬5Ğ0 dZUҚ#MMZIE$` 6b\*?^'1vE-AmK}rY(XХڦ\Rsbfoeum*2S3yR)XZ_>bti@*[z=AlY$3yYf^c7yJG{,ڒ,@Y雜æ<wВ <ƫFN\$Vk>RKX*%4]*mh-w?/P4iP@ yc޵ 5}x i'nS1RAW' rI8NCSi<uG;G|eQ@x;hEWM@a#mOA~ {E|'/7;ut!Я;Rfaux@].S@J{d,h&P1Xud6<3f*ⱠkEӁOϿ)}\= kU]\Z@II/W&$ʕ*uk^`z'^D9R'(8Хzh6KxڗԼ5IƋT4< Jq17 @>RluwT Sc˂ &V!h)&Zr67'@؋1ø@/Q*lBS @E8;UB6<A d4ٺLac9vo2*B 0$Tf8K%)hOtofѽKz0sТ 47TvBzBٖNoޒVaHO8M3&_4ڐ]i&' ZnҢM ߎG[N!I!3Q&nr|ߓ+h|1\2Bk8j&A 9 QGpץuL8WVZӆz q9dۇaBJ_WqaK !ݩ@I<~n/:B. חn{PT|CEX' ^5D%]o MTVPk7(MCݥE䒏.t>Qd9sl&ve$޵CLk9(kl`T {?B5fV i߯ c~=z`7T>ezdX>ͧWbDp б9hhh-EZϔOґ*o6 /yvDXqzمg3V,[qcmK{Aúf{Jvي:5] VDZ$bȱYA }U>RDDN_m'81ꬳB?&a>o(J)gblP#݅~bg4\פoP湥XIKN1m:˝jn1w\800Sp,EL(7՗TzGx~`zI vA?M!;mAR;8+cnO9W/gp/%Hl? ߛ#~ņH|)7aB̕$YKt@|PU?U.JS ?a.`aWBZ!F>vVPB9 lR/D[X`.EHڟ_BƯ~g 4~22e''E?n_JF+Mh& DT&)﹕Q<.8S$jJ嘘$$FUu@o.MB"A57mW5DkJ֤ha2cf$0*o4@ǎ=(RgMwN?b )=CmJ,vEnڨĆk8$dyu -~|G(.m8ŏ!"oC {4_]yq]XXh$ SYO!+g9ÑUxY+ +| u= Rjc*zBwC4٢N)zM?FVh`n5M"G L& ED"ӈ Ю.=d0$hnN+>%xu鋚E72g-1#W5?'wKW@b>gl `HvEJ6"SBeMZ\/rpneLb6ܩs[:kg7eo-x]`מ }Ψh3 5AR\4{U 3k @|Y9g͇jxB c1@gUNu zk ^#Wsrk|n>'ѡ0o VFaEzM5e%juu8$<]$>bpEu^fKh4销n3nRl\"%<g= ?$r:;SrRO*E} '#qPۤNjXP>\F29|̶d/tD(㣽><Њ0!-g O:d($m'qP+tTY2خR5 L+nlX-c{dE Ț! \t-#S4YN9_Ҷr8%,Q0wwK =τQp\<=52VS؆v[iN}YvR_n=CZ}% (?]FrbUj|'ݫ\ÔeG5[=_ȪW^pUr+D s=b~5J-3ᮊhO~AyأP=t3ġ~27MesS+d6\11qh ]S<ť[|ԏAcAL5dBma4$e$onIǃgb\6(uZf@ :8OL`2Obxc(|Gbr{]~O\n}mT5@/TIJ%R޾VB*Q\;mঅU W A(*Ju@d6 #zn`\P?,\Ho|~k; 4HwXq!tr*tbEFU80A1ExYp))eel~r/S7̱FI NLLÑNƖ;@Q .SņZZs؈y\?hC3SnRgSߑG^g?KtG˸VشǭpnNjbl\2hyZ~݌~J3I-Duk(fוK\jmG'e_TrE-4zzt4)6! #B"2@nîe5Reڊ4R|9p :{^ڤܶ ٰRMx%!sO ['s < iG_G./Ƒ֣egM>sJY|E?ƆMkC鱱O~uJ:Ξga~{pq' NF>N e3´Ȋ w /6Dnl )q{`I Gn=ɿ//򜹨"f;~HoA7:%= 8S9)t܂ 'LA?pKu{|R;,\`7Na)v{"؟, 4l +S/zQC$6Wq!~Y"qamni l؋חy8v8kY8<%T>ٖOhgFL~v9U 2s%gOuw(+M8krIą )%vEE{,9 ?xPZG öLxU8ȎCpCR=r(Wuhz~Ytsf n-1lSkC{ o1_̔^JP1,p$KLK7\}mHP1ʿWkquzzG1A 59X6>*mKsGc*,}~uDgM?)jm4Qypf֔oAv/{g"KQx}s-䍲MaOq2Sv=cwTG 4wA03_879+iRwn- ^*֨g3 Re{yaV\ɼqK\`OL.qJVaଘ&^UegrV1msX +?w- 2K:X1/`B~[iq$#Oi=0]Qgq7ρSA_F 4$u_4ٱ|s S/]|\!M5quDյ#6iCCGiR5^pPf8ϐUE#ڍ*"J󒞊>,m hY-G͵}3bE4TUzzy QB~Ǽo Jf) (o`AUs%wHcNgnء`dҠbA]%4]+13Vlx5'LΈ @@Γ4DZVW鹚,4 D/}%&_Rgޙ鬻.}8;)WC)sV02.>.a+@sJMxI;lxkl1RdX}=6Ed|HQ( pҝhY0sr3 $""r"O:Tm-ZnV B)=;  M !%BR7wwIesioǝ %|I[Cn-}J`ޡb//A?@Q%(c/@TUD B~#],"D"}g"dY-:VTȨ>.Txvj?&]RE thC=j3U؉XǮlO[Mδ%p ̹iβliRjwaE<i0o-AM7٘ϠC(tWd[-;ʬE+Dc8Z$SHIy)R @n?Oi?w+9'sf2IlGr07&H%MQ'L< ,hk<3*bn;sPRNj~+#xlK,ꖸuK>?{>х4#jHzlţtktT@EІ >ٍi[:M%xTl2abwɚ䥶B0P2IlׯO.*KlҺ˵ Ho"4 ڨk%Y/ڛ\M@XKEj#&SwÕ-{5aُ@('S!4j# nKdIKJkF]}12c{!uh!<MzqPdTg /-(vle s[@M(Cu#?g<1lT,*8鲖;] //03&\!ۓWO۸^MNB6$jř)3 %Lj<zVk|B3zLJ WT҃O5\A9c ̛ ~)`3@PM;If"N;:)y6L~٘ m")L2p)Hg%+CMRp(%Ms '= 'p *v}wAqj:2)+rԏg}[99"+8$ i%- t1HeM~g*'i׵)zÅ:ihLt&;;my|=$}p1RxGp9w"%2^$ߌiJ;]NlБʢ.jYcKF}SRg'DԊ /C860⁰7VѾJ8D0KrJ^rK#YoWQ).ZzRb"x7 O=K=,\Hk%؇>je&5.R,Z8UghI[ˬפ0{ $7`H-+M@]1ъ@E#n&!#0a#;A]d,)O9}/'ܱ P?Ն0A$k+"q^m|ZNRjh'e V{5?>˜$ީ~:(ƦL2ˤkP+LHDR ׅEzZrciAHpO^q?0X.m\Hnu2^vR=zrQn{"[㻨c#Xv!cyL 7Ƌ\Fwf&evO‹kB7vyWM]N'ܨL|G,oePiS`V=]誅!y`g-af.Ǻ;$f[+ߜ??Jۊ]mvMd4?PIcʷm1^@lkqshuEʝ$hZCdM+}݋ ˇ <׽ճxOC{hO yqtl,k_Y KęKL]!4σJN(dD[*LX]8'6 #Kv}fP:LG7|I4c*oBBsATH,)tl@wUw%/w~wLcs 3 _-0[05ƒ3?ecǙ>yhecso99yZ-Y玨q A&|g7{v0n9YEどy%+qJͰv񄘂"['Ecm`LR?;}9nf$;A R׀Z;Zg7<!V˸/.'v98AF ٨寵Y#4~q4|o):lYHjo!txRTnN 0S~ ?r)4+`:ASPB3ZH̩7q"}"[!"g'BCi1ܤ5šz^8|K'Tt9 I|1)̏)PZ_ܭxvFʚRVloHxeڱฎ*ȁ$}A Ak KnmVƢTp R/5ҫ(ڒxUM,4A~:@Q 򕜃E}@P(+ڵW% G!-qGӾ XT}dW qƬ3h2@Չ/wKB;B^G8D>AhmYBvGT O|s,<%-kӒTZ$Zko[9̊u<+ْx,K9o; _kh NOn1%c= _6)T;}AŬE`gg݌{Zk/`a˙` Mލ{0QRvcED&,kzu|YJqBj 1[E&]ɩI3 ԕ#s݂- W."6ҖeI9>1;)$\ZEӶ=)V}j&CD:gPrS M*ud)\d)c㲊{m3Āj y-t* aov"5LrH 0̃B.7bSls4 SJG%^<bOTG?"UN3I;aZı=lms޼Vh(XR &!ZRiSTeJ=} 5uU' yI~haAulpGRZ6b_ZчWfZqՋA̧hu"hTV(Xiә fl?'xLާ4EL{21MJx{V,{Sǵ˖џY} ($<(Ewۄ!"+ዩ@Xcuc(QFc,LRx&L|bR_Qӈ?Lݰ-G*ݢs  (]&}> m\ǚtT6_>㨅1i*F{2B/=\?ɝ,}Oۦ,*{1 cES\ Ʀ zh.֍zfTm;a!\3 ! wÝ ]H1ex M_)g{;b>1#N+<7&Fdzf:K@C#*z$٫6P̌IԬsrSJ A4~Ș]>b]<%^ ~fs&z%LvW2I]Eن^9f>ЎRFtlĔkމbu^և/w"L}-&em$,Gr?Y$=ﮟ8%XYAd.R[C&,qgzv(PwvMxDQ#-m1 LdY+>p`8cVU`pk#?( E͋H[.UWOSm9Ө5JGb93 HG|3!S&<ě1fcOC_ݍltPRABjh[& Uŀ(yURwq"鵬lYIP\t{1[QꏖwL8Y!g]-@3= S)JpT>q 3ԜRUzƩCc>ި/_aΘ5 59=1Z(؈ ۧy cp(h3K];geͺm]AC]} &&Nb:dPĩI#4BJW"0hG7$v"@Lhv׹C_w[!w WoĽhQyXZ{X.] 7%?x5gxƝ塩LXP31IP#LA^Ax:[uWΟZ -)%Vq [mGig(m⬞/ /jdO8:6Wܒi~US>lpQӼB</~ ο8vGZWNLWhm֠yvLI(R>/ +W+]@[בxٹMJ=OE՝*AjkʶFuRpү+j(G0YEo-zĔa}Y}6(W{NPgR`t`w])70" z I{w"O9CVmp^Z{5-";0cB0cd2=jim%Zk%ks#GI@)H栉ku,z7+"M[' ws\#nn08s#ja @Age//S/_ E>h?/bo$P<]m[=h*ԏa]bƍތB+7K`m0Whӆu)٦P |`y9qp:hz_rabʞ:*Tor] X{ůINJ eFRJ;6y6Z~&;g} |5-;JzKO^=4"n ýS\cYCp,B?3cVC~%gKo`*a)zAqb?t SZ)VS=٘YW3 ]LS泙3JYy9Au4ѝ؋ |< {;[g:+OQϏGh4=vJ${~uP<]goa@Dpx">ҀI؉dz4MΠלCk:G`Q).4xVиӪڪX$9C;3C|TqJ+ j+(% 8$`]~" osתU (|}FVAEGNkHi '8 ^YmSր{Ď0+MxcpXD%:5\2 ڟhQKYD^+ 8GpQ 4f3 uY8' ǖWvBߦk +P, `°|J6^ '4vJXqCeAJoHS 07W[:,ɺ8 }p`Um $XeJ?9ZRE1oyƤ`&5oTS/ S&&G\mo(WHl-mj ol+6@;iaMl؍|i@S'AytYR'RN@ D,on(MIoh㴧#eE~/ۄUN .u_6MeTT{/JϺ~ Ȟ+iSǼ't3zM.+ g=ЊImsnG4f 1'׀Mbf puIS{ JZ&9aJÞ R?k_>`kzloFc@:ݭ6WX]N9;jPӪ#׷9++הi@:0 Ӆ$6Gt4X? C•O<2{J`g1ۧb2h+C.=L+LZPm;.H{gטFG SHgEWQ9GBO8lfim%2X~Cj[1ot:I!G*tتyXI7c!GNH-sS#ZC"HiT+6'Y+y)T֧5"1~mG gשּׁꞹ?ဋ#M̚[hnKyF:W:=؜cz=4#yU -EI@ Z;6'A/ud%clLDbTGܿ ߒbw; Q#totPl. 1BUI ҇;sqNf!]}IX: O\W6Jja6g [jʅRshIa_@)tQ̬Uև]* [i1{~b(jM)6A^HN nj0 on$?Zei͹q1JVZ}i5(a\yw0 [)nVT¾M,l5U8hhꨶ]5Xs =tB7W އMB'5mɃ JH4d-ԵUW:v|妚dXC5,Zhӓ/c BI`=$oMysy)x2rZ:U5`Œ\^(3zY\&cvG"^s p~N3~ԣ%H.TN4v bu}h"%%L0c#IaED܎i%YO.$VjI !"MN?Z5~*},NY8r,f(BcWIz?o Ki)_md BQԝi7\V@lmvJ2_ @֮T?JHKўZn֋0Kvlo)EYoNměk`i&hPI&Wr>#U{pd0*:fP+k/2UΊD.'0#In tSn$a8i H>[]q__S1:~bcxz}ُ= X, :&w(iIQ-֠oPS>ΤI@@lglhe>+Hǰ&xMÉ-0G0lnqsU+^뉜DpE HzdccP\u|)uW GS8y5 |! RSTy%_z/?raz|1w7ʝ.A'iSL=#6यqdrX0鱐)|kW=rF~N~i[ϬQUϨBgyic"Pc14ԭ"YpGPy1 w sZ#8tE+q' 36=My\k*wq ]ݏGޭ"|Q(+J3h޿֦n<EF1, 'br?W !S~4C8Z FꚒj3-nyᾝΣ跤J! U\Kt%~a5'l%Aޑ](Z+Χg\9!3Nha <Э OԺVG$(uUdF} c߳k:^ &^meu/OgR_6Uzp:SǁP4JcW`6ZTz,g&B}oM{g֌aHt@?^)>c=GC"^HGR̞IoS_oM}9@甕lk@+51ͭ6ף{8q(+`,mq3=B2oxQnG99‚Ar(B>?p LyeriUQF mnʣm^ցMvW̘11WݧM8)<K/B"}9V2zN=H$s;S-wO㺿4uQ_ -+*^KWksq[)RG; b T_d|-NI̍SZLz zmJ%NH37n#GjuYT5 Y[՛ Qe=![gbW~q"u-o-* "\Y/`.Ld̏Rn %E }-+O7t ȷ RuʤZ] +<wJz]-ҞxxP╁JÐ.| MI-w˱?Wf|REl WB[pn2liwP9Bg8UwǢ=؂.: T+ҐLc"w2),QIolVSO@շȐ8AfsT)5fzvQhfX_=!b w7Uciڦ"\w(pX$Lix8w{і)Oc r/I (EO h<>kkwTUpݘ䂻z O%c4[) ̍h[<϶5`HUkdsTmhl ڈj8R.HGPF@h݋ jO55u kg?1؟EF DrlػIt(TchGDJ.CS{/8IqהZH>o`>7Yk!ٲд<4u:%n,r>sbB]Vv.0S")gQXܞg'<}@˾TIy NS!+]"C:uqr R^K1ԍn8fVp< PP"ku[UfZsX.K$'ߧ <82?9cnKI6n,*S+9%niF<,m<#eiNXޝ| 3A '<X/1xAsI9y(Lׂa=|cSHn͜gEYtS|  TU75WAVղ-7=>}f 5T"6Sn4!S!S}S穔Ljg{ ʌUʄG%hTײwBb[Sهb_Wrk܇.&P&H|Nt.YHBR2kƒCd2bq>%x` .Қ'sna F[I/#Eٵ4Τ,t<uy5jId(4Y4jm|IEU㢸!f![>ڷXdWQ[_C*ڷh=" *{8(9zc~ :ΣWUURS/N!Urc;)3zntou\v5͒ uu v9fPD+Yͤ &S՜Q}z< Z?p.hskm7YߩC5X[?L7iaab1˙{*}̿ $; crJ𩌧|؂雵i 5i%*#+ܩc ƌ/&><8"lE@JUTR:>n& .)ٷaXr WqE3O-^JkWMvaE*0;;q|c#i*wWJ#'6˳[rTr^ui{0[H4<Kx`402ރpMXTm_}qA):";nՠj",HnZLev#E͉{!?-GQUh[[l)wTH[9 :G$ A+qFtLFRp ѭ׶6EȻڌw4Ww ^I8Xx50M_{p˽("b$kcaL z?cq`0MKt6)WݭjM.6Cݺ%y#8X&^ȴ,*Xʀۓ̯{KK@˺yy#sX<2Ì@@aF3M/k##Qxx%4gJvfmj\LnSme?Աttd9 cJ'ccQm{n-McukoUrQHВGgT+J1C9vC{S:ٻ/T͝@liI:`҅>;ӡB5B ] 5Vŧv Sn="mR ƂH}՜dߕn!Aj7~#2p\5L$ukHQ@K%A RKUA)hj6q>ɛr~;]Hv.USujYMwwr ^VC.5ɌAޏYhې'YWcKoKA.x>om}}>OD Z)VΥH_LpP: 7iM6C! oSzt: Y4%u̓Ȯ4ס] (A8Wzu'@\cלLAEQz&Q8^.!E<ƣZϱ@Sp\_!̐y8K1ٱ+IyIeiBƛKcy`ގD]~R2a 诵PAjZ{T>jG,8!3ODGcR`Е̿XniԺ86#c-mi/۫J`\c"o3g2%^C 5~mʭF R_V}9bg3x!,&R]l$~qbsĠfuD:0>FPI\#2> '9LVA?nkk_FԻ|^R?$Y2-~j1^VKOD^&&Ij>KNe3A6n9?w(Z`KD.~=,HB=8sAۊů -]7C(Ԕ杶`iNH ~~S(hTmd)5% Gqe:ॳ),3Rcc`A[ؽ_pNTV/0^WGOel_eL}czh~o-(aœO 8J+):EQ(ӌ~ypׇџɨ*[B aUGz ߤP"m .g޻Ⱥ 88KBs9O~Uvc}s,=ʚI5@Z/6!Bb 3)x\"$I%]D??](~ԌN|dx&w\wͦx= ѻuH *ja<(pK/cQA>& ݚ/ JY|*$/'"nZvTy@=NoP)СYJ*{d&5; 9{bI;(&}x'$ٲS^׆NzOPBql"(ɆSk"*L܅j(5 1a8"/Kv~?#df0B4>J6;ڣ9GU"4[X1T-6-plaNVk$lCHcOMM{;PT&DzlJrx\LΑ^GN& 3Dv/.&V׻l/">Lm"^J-o'g#PߧH:^2d{Rw(%xp @G(ĆhftL_-*јlaq14߷1Z9̦xc }4?4IXBl?%&d/d3jf;(>W<))d^C,vuZ0n9s29sI>v7hoh>R<ޚ͂wҮ"̴ګPƴyn`<ʂ/Ⱦ(N %5@J=/m:ZavztϪyȴ:$,7*L2tݦ),u>Oׁ$&p\8|MJ֟G>Ջ<{NB t2D׹[Փy%k6ɫZu2'F^ T!O$pغ+''8E e n@P J FKӹJ9?QJ?~ؘ m)co(K2aϺoJ[To0N]Uƒa  5̼uNY gѵep&UDz)“nͻU8ܾFJ͔swݘW@Q]4ЀXC}j;0~+ܢz+%`ZTKѱ$OJrp^QWԂ8GJ$%f2ȁyS|N R>ޔA#V?WkTjF7DBKn?$,[Br{ Cɏ˞/R}r?;>UwG8 p,0kǞ"#xbO,bfN1p}0t }?ҹ>|:m(IzSc}>OWZG[Жiڶ/W* )kOJ R@_VK=A9uqj RNS B+="pG$"- zHnMy}W zANZ?"j(P+g<5)i]B@[+"9X8w}MPUA㋜F-h<&DKg? ]B4 V7s2s#2K!>ѕ^(Qc}rOIk &\diį.,ս q[I.jdG.#LQ.uζc{F'o/,(!0m$1. fn*nxK5H+TH. F,iߧI[e]e&$-llXs,(V}0f$Ժ_ڬ&6: ZlTY64 ?lHEJ _m@fDUer|,b[]:VuydZj_aaxT0XM<2NTָpͧ5N+$=;jI &d(`GQG!kËhsgi 7;)$*uciLR;Z][SX  Z¸#Hk(9%|8Z{HGCIfY0C<)uW(GbXE@(t4^ ^yrm0mqvk"+  D٫3F(yiFgLV&g,(je8Z\6piMW-hIڊVDQ!TwIb0i2%/_D %˱bLXGo9 ^ Wޅ}%|+;0`d|&<}>NmMv%fLP}ܶ94 _i^ dNwLϽQp$gS1~UaL+?|7$tUrMj`}$Hr+ joXkAC^ yti"JLF!Tn[d^]fUFo⤌+SQ4aUef_ܞo)jdo3NhNPy接V㲳8b)LML[ e:. ^\Oѣ#l MzOŃSݎB'va`j xtNV" sp.|H pEqP^Eh>긕\ǧocMFNВԋ qbtB)hFp*K6|grKX€xPҽ @l|:oD5sjQ?3p=DN 9$W5UOUе(uV"j~*rwu?A/EN܇7ǝtE2 :- J<L~VTIz}(8 }r=9jƐ3uoZ#v+ZȆ tN6I_l٥A|CTTYf4͞M_T݄ 8ё+W3rӬFOryPc\{ڑ] _\"s타gh,t5z\YBDLWA;J;Q14*єO.gRCqռ$HTөO&-}zksx@מq<–֢܁)}aL{e,9pJdko!oEҨT`+y"{z^3 xe,@N0Jq:/L0цAR,βtNwԍe;hΓI-?+D)`2ԯ9^:c9 G|^1w "Ϛȋz^G;;8͙tRxʰR.0M g$4`?*Q=δ ˸N$_pyսSU*r)m|~f1ilJ!&P>o~ x" 'eO̠v^bl&46B=|*Mvz!j/)pb=@ fj.DVn3N)+#$΃.o@t'9ldE~OΌ?zE~'Yfn/=OX⍂3s/%+q (0W4TJnKB>R£NZyo;{w䘤a"a?*h "¼<{N}pUkhvd +(M^Sz7"I^5:krU|;^e} &(HM02Z+(;Jje_.,↤(vlD>ÚԱж|8sʏBzKע_i8_ ?9KY]??cP|ږ ;}FįV곧6VL:>1!cG,R.SYj)--LЛrFYe7i/QG ȕrW5+ڊs3x/@-6ޥ>'"*xAn?& Xhml$hʑk@#$KXEf^G?lٿk }!K277܏wb/Wb*:Xn\Ust*Ww5܄4>Wu.k6Փ%FN-G Xk% ,=zM~/ Icףo)#wnMN/-6;X~]Op)cCZ],.ACNȁH2ECЅwfyق#Y ĀἭ%|cBQJЏ7(iWXdwFgD=~۴ v2(rʱ7V^dp*bWqp` K7w="<SY@~CG RLһ߁)Vm+Z/lBDq=eS:Igu|fUXs]JFbݔ @x uIHp1(8 3~wN܀Wu46kBR͢=\ϳ]THMe>&Ow?:iz]ND#4GDY_W~wp6IT'>"]r4h3=ySQn^w_T/}#ZI&3ZxYyG,ڔ}Poڿ`,l%' aYDB0ظ)ȺMNs4#6[վ,>QfTԢyEsjO ^vSq'2s* M5|i)8YHi9R'4%QӀ7tN\k ";:([{l'a8|#Q ji#3K$2F-St4!.GU q,@1%{ndvTka\HRӏ)44rTOKY!."^OyJ &ooj|jCc8_>Y*m?xs " 8 AQ`ԆF-/m6/o>78U.] 0XjEKuIHԱ2Yd_ǰ;lʾh'xLϐBŽet@3 'i|yB\J԰ q)x$mV6YU`pW@GF&'$ǜ"۪-) YTف .=8״WA=TVr f_⢇\U?+-~"]b,u9ԑ*`d9Mi n@:\B|܁_S0&yݠoK%- ogǿ'@%k+ׇȻ_+\Sp_8]q9%=,߼0 ¥L5XCit-DX6t)V (̐U{ K?X,XZhj ]^e+?,B魱7MIrc837Us3s?O..86P4qXp9}q^v1pv fS)W䶓A}ې; ]~h?i_~]KӲ~/QYCSrh^*mHN n*~4 $Yj^ͧ739ATZX)>/.Zп(wm _xȰꜮƵ?^Y9t}#uTކ_6ғ] .Zzi۠FJIUm촵.`N'彔P4Q^- OlC#!cYYB"ArEؔW ,X$;1ϳl儶GD{,nߏ g"e`ΜN6+拒`脀PW~_'}b]B0.fV!QpԹ2^tˍeGq$rL!8NE7^vZ?5E*1z/geBx պ&$ǻe` fC>\ 3߰u:"`%n,buUb2s%U͠=z6ɐ84LrwVI\*En"?k%~ *x5Y(P/MI\^q:w\s:XiSz3Z#k=7PKg%skXcRhrkX ^y(+ brf+tvqA6z:ps.DkNu+JY&Y\ﭦ*}èZ)|SlF:X:Ps=ẅDžRj`eDdY?8+eOp4GvIwy М]+L,<}B~") ֲW-g=;*mď'2֊m6vvakChZ_#x?p.eF}ʧ<`1+|J[0(fz-VR_A3HV7sw`~-!Ԓ24~6K hl[e܋3H9U+VX!9yg1 2 zhp yQ7]boxF%\,@b{Vkc2X4nWVu5VOob]z -)DLހd3(&ᠢ\E[L)‚½y{#;])@H(LӇa;tϥG$hPӞ2"gkBϋI ۂ"vbE9;|Tu'DZGmFۣIYo\1,:4#"b<ץ!Uh85"d1Gz29mY@zS]*T G&}ꍚ>|+׺w{ڍfV;$k-/|`G纟o۝(wb3iX~`4DvQ}rlsХWē_A뼐j',]oyg$x|CuJR/R٥ٴѳ N$F0gX/2Ci;3N`õIv+ͽEY,O=ϡ/!c1Ij4~|@_Nk[Xb27ƘkEw _@~Ʉz3[@AC+/ָͼ1- C*pqQ\|9 >Aljs>MK"&qHN khet/w÷LP󁳒4?=t[KjC>Hƹ.8-f>G=u3rZ%4꣯ˏ35ITn+Nܥ߄k3*n~Q@I %h' Pُrh iYXXGe8œsZ 98%.p67* ڂg1zʈaQNOO.RFQ:Y  sdJb۩pAͮ=ګ0(az*Қ~v&qf,[IjJ|fʄ]Vղw"sY>0_;P3VD!n N'/1+4[.ʟ̿]0lrgN+v kJ23ish]n#ZO,}Sr / )2!rd@s=`nM;/,Ӿ\R0mKň޺J/dlbMQ'/+K#юeXj\Ƈ?[&!pw8d|ff&Vb:,O٬}v椩8esmR˅4j^zAKT rM$Bޚsl edzBlތiC^Y&G1&b0pjA5[`6fz^l:f]#2Fwg*Yih:Z}Șͺ%p  :5p U"E[zA̷ejd@dobNoYU1Zf3\ZWE-fѥ9kN=8 ^J$Բ^}«a%@J"V=O2by~Jmv8XW} m4V3B# jŘU;ߞܸSuRrW E Kuh:$MKdLAV`nJ2ٱ,M|Iw]8l[Agi*jE5<^˦9RuJ0T۝Z.ͩՊ|Tkۙ/! #wcCόCe=yT޽/fiƂb,n2 c'Fsd(,S<20ۍM[jUQ>NBﳑ ECo2|HnĹ|Q a4k#nU-2 ͺ %~Z]jKͨ?htĀ7RMT,{&#AT? AE -? (gDHwH]S 8Ye%I8I4^VMgFV!ucT{ w2 Mu= N_ GPږ,L{xK!NK[d-ɰ <p RI7xܞқ^vHà![(J ; X!y=:1Y]V8w:flkE6NiF?"7:=fM۟OT/uP=g;jiZTUYV{ ^NBٮJnʝ2Evp~$KumF ,.Qs6Ap9OjcL·Q7LNe,֠)uj'Auև V. elw[4O> ᆍ95 גY"6yӢQy$lys&(sϸdePc$7KEȯ}OTe>+V l3ݨNF=(/h|s6nq:'{=Wڻ#w2K puA ԫ@;\_&w=$!4kIR%AڿǃNZ|e)W֞q4ȍ?L_񛛧$mM_i8PW \j@1UjUMX+/"jW_1|MN~}Pa(q尠э1:)N- a04(mLWwTVj૒_r n6 AVH~*3}V=*|h]&{=U\[aepPI))/Wn,}r0X-> ) K kvtXݵX ]=s0^b4Qia7ϕKi[(yfgqBX+FBEy&/"a@ښg#*g{0g˶{Ϳ+aęb%Ҙ&Øʀb& ǘ_E]i_Àȋ\3VM2qOȠe4ߚP9AIШ&?>oKm12o혨$ǯNnz! S_10(1Het^ZK?dY刌|硡r@DglU#mØjp0.Q1j-IW}H]I/E Z.م IlWU0|^$ :FgO1e%]a~*{i~u+e| `իQECt7 dpR& c]aDNxkSk, h׵ܨ_\mQBlå[b_>jȳX'aaza̹ 'TMh:2}(pJyST'葘kvBegugN+;(k_wjcYݷ%{{v3BZ\E?!bQ[uDOZ$# 2?rD+;77bN^ M3b xK(c 2 kqR˿D u*f4/SBH\3 [C`v7G/@L>Iqp]%(@V*Aw;Xo3Ut`Ujie_;(v1 NH cJKv]-D(֋ w *C~Uc|ij: ʰVEr-Gno t$n~W-o5_榗mQwpuM6zmA]8EONX cS*^Hn&B0=K= P+ۤ䴫bS'nqIN=H@b#҇Q%0(ںO\nKړeQ Sd4.Fda8`&&7( Iz|WHQ.  :&OGH)[U9ԂsEVoj.9<3;MtRNTi:T+vU#o)&`֌5r2+v*d_S*xH^"#0]**tk~"䛤0.A=ne8E^dO41L 1_z\w-ػ<}.hʼnXUZ.ފ<(d@T{?%Ȏ%8mt?W.O*cJOhnq =r͌$QQRwkx#*R69QUWp7_:QEv萛Jh_2u vA@Ҥ3m!~yT/uKyU3TITOR12^$ܖ9uJ quOD JYy ŀr@0A^ 7ޓ S>n7b93Yv`ZbZY7 :tm%փFOe`aհޞh56Ԋ u $_{k;~QSeH2@1ďrJ)nѤ(0d03[Q|'R>֭וm76;BJ,C l]oYFrψ0 CCui$1PVM2p)ު)؈~FMdï\X؋bsiqcu_*j+Oyˤ> A_϶28;u3GzIc{I(U> :! `Dl|`^! r^vd弉?XcokQz f 4n3 (!qggMƹ~E<-@.wG_%1a 4.$yLNFkV?5w wwrB @xMtimTNzF95̷P+A[;{pCüe.mߡAu u;\2Jk= T@bƘ7@-ݩ8u GO# AW_U("X}wá5_5Q޸z07bx^I/)ҴV n,:q 3hy?fn^Yb.? Nj7Rgo荄tU^)Ym:wLy@<eIy **=`Me-RO&lD/)5?f؟9F]bS\V:De}np,y rXe'X9{>)ApY)>Jb& s}&t4l`7 5ԫtP/K%sLwXC'XHĸ٩@|)u_;q\f1\YXxn7G\y,sx?^ԺExB9ʈL(/vkKPo E< wxcJWLatϠ2QT wY1~VZ+B.x4Ia”ċmbPnҭ<{EǟE-KkֆϹ%Lɓه22 2f2RI%i_ֿG/ CB* 0'?8b8QB?<:H3Wy.;|eO^96(Ƕ:ϟVu\Ou Eeċ~uu/Щ {b""s?+t2L3+јTaG!@ {5A g=¡JWo;N'VE-fo3^DMt1:;2"[gf!7%VL+kp떁S2ħŚU',ЏD SR6c)Ŝ볃rt6 - )ϤRq~r-{3.[}' M\ =t4s|Rk("Pׅ\&~\u48I$'()ȾܔC\ [51%|O)Fu}XlKkqP:#pJ(PM4^RnǷ*0H3E7 HÿÒ:+ r7Sަ+ V9t;WZ5,LJն5սɍTSo{ Ykp 9{`SGe,8K|;S%(a'%Dz'jɅ@S R aI/&oX5eN'Kdbεz5Mm^v-2QI>2MYvXnapr`^ݫ}%s9BЈ>CU_'Ita~F? $gqtaͩhX=uIF("X1=o.;˕c&a"Mu2_HlB,1FK5w*[2Ɛ$㤇I! /T>L/BOf3eԉpւ9 &ފOMZk~m[x.bWũH}]c:ɔNܙ/Uw @(똞We L SϴL̮iHv ۮJoTp<Y4JRCz. VrL j *TMOlh u<9H{7f?{v8+:CC1ۄ! KT|Ś"5Lx>hbIMה~*bŗїa픗  z-ߤ:sG*LJ%Xt,O:tJ~gҵVuVZGʃEmz<XX7' I5Ybl:cdӏ哨%*-!ht =|L͹)G":R `~:Nu*)rT]ȀLl%4o٪|4qWHET:Th8e)AHџV莤3, 7ne2ׅrYFÊFGo/bkm$& Qp֑ڐNMnwwшާ;ALf @}p4flK=S58ֹ1f5Z 8ƀ8nT[ho <%5R&"j[ K@ m|иfr|lx4%VHG&U @`¿a6o6ӷ,+bbn108 F2 4Lw]k\|Ⱥ[gjr${2)i7uN.vȟv `Y=H\Đ$keaQ@ 5T /HY91 KgN7ܕNo{%J1aH|CJ*-MUY27cVmi{do})@蹽I2)1*!50۽𩴭-s.t\i)O&an,joyb찕pMoh$K\>bMFSd.2rQҎZJ"oAb0Nst"|XX|"F<;om!'-Lw x#sAJs#Z묄?_<ŴL06p 2fuT7 vyD&G?nD%$m dWn,bm{9?ІAAh֢O~CYz1;",}R[:)ox,o^/I%KmΑ'k8י^ǢRfL/1ivF< S&El=),p/Ҭg*PɆ#݀pDD??vފm`l9rXW5 & 0I #p{0؃b?*,MIZp!ddŌͷL$?_=9s ܺ+zA}J~)}oOJ"`4hs|o=1 4ve)2ŕ r,7t&Ey=x!>P{",[ fuU`i1m>c^|S'8?tus؁%7DSKHZZVz92_#\OI?5* 3y/{6VuʏA`1s]\sh~ha,5a#'wW 9+cٕb/⠫ )b #oaG5 u{}a/R(&@i)"]$ 1Vox|IYk&3͕ēf9ՈƕHP>$,W)rR)0jWwPcUTwz:pӥ^7u@ 5H ,& ~רL~aA#a"`22TĪn'Vj lSӌt}}\I4E\'i9l[[ÊY>I+݇v7WyU~@Ol2n !+` aȺGv4ƒٛj%%_ 0YN^1"n AO[sZQ)Wƞԯ"T-i%QlR`U] ? $hAw?Pv E T@+יZ-arNBK|Q޴%3qz U8`'b+5x{f^+9$$ʂK&&zg:\ P)E][J zYoO JxQN YWš1z45OX j2Y7ި,-Rh\Fb( ;~zB"JF$)YCں.s`쾏@9pz'GC[,]'N{/OFRe"(_ͧѼsB Bl,Sn@ !QI% Ξɷv־Ep/rxMJ>r㥬fZw1;x swM#@lE #tyĢxɋErIO4A4iUBoZ7ɧÐ d="pa n KR ݙg≖Aw:&xLdHIp 7>I)^.N2iͫɷGljK$cЙp)tne~LLU;{ q ]SaB+狖.qdjAE0[R =p{tQ~i{fea$C`Ft&J2^s,~I9k<ĬBljT 2@T澭p#D51y (ef>ƑQeGOWgŰFt1X( OgQVљA#mމ\hZ^!Hd_k$DÓ;"8rܐ~gk@y8B@Q/mM_s]O jVn1c֜ .^T?Ӊmma(ۜ8AȯNަC:UɡsLMOSlB;݊|hw_$)A;@W)T|(;gʭJK@R YG `F2ZӬ)<-(؏!l(Y] 0xtQB1ra"^?X"0ac])}ğ3;TO #<2P;^b$/ s%2cSA+#۪ncd_}&!Re12Fu*ov.b~.ԏ*}PGBr*jkB${$d?t5]vVrx2\ONWסu57{Eby 7b:4!MZzWgO\qi5NeCxOf$Ye!߀m:ci-J06cv|}ӻk5V ˘JɈblYG E9fP[ Ȕq ǯ3HbdlדR7b8old]%'"6[b K*&?%EyԚγ|>@OW)#:\O L g9̑-wǺ^/@=u_U$m`yS yMtpNzE.Bģ[l+*,%oGO4!sɌ4 ;!\)v P:8 Rgôd5NJcd']}oc t˙xŽ&rbJ:<嫷3_ZebvFSb1 mSM̪*<tE+ihyK"H`zFcFDlqL;Axb >Oq|ev1Ԃ" s_zM^ Kx5 1A$f._Ӗnk/% y5S5@c5 w@SAp,_c,c;1>VA~ap,-UpE%yX1A067 ڡ7 thJ;.u1 Dz< :<9SY@fOfi4E(:Fy2wӄZ8~peWD47@|YCjT 04kb&(w\6˜? ELz7T;>hm8ViJLkO&Jm`JT#&Uα}"0QykN*g6U~t}h{dbJBGdR?< @E^Ή`gᖳJQ"mR0|ft4n0 ȴD̮LɠƙJ^°M^ daaC!-kՏ.$A#'OVpt]B> )< w]Q7cjo#ᛋQ}w0 A顕p\ad)[<#]ɅH^z-!S>pfr#߮=:B^$hW,X>]Prx*p/j~?҅oWpaK&o뭐3[+DC+aeNrceh 6Ü/TVpK0?̙6s$MW(+ 4Fpsٍ5+#MY2;3㬥a(4In4W㇮>$(wZVŽ/yCxMnT8e3,O3mT15k=F= .+xsɑ7/- :%JST:xb/aB+~{!汥ג%^$JVd ؍aN[jԸޓamEd/aGa >|{Tk>U^w̵#Dl^쵹>*b i>C:R ~E) & Jb W#ErF6#Z߂Byr?a}`Mj~wffNQBXL>@r!*iCN i ӂD_=^ZKt[ȗzл.%ۧ` J <ě iWb> r ȷ#@aoAem3uTKuK |ygz ^ mzV^P/}Zr@XUMnB3K`jr96PTԽ9Z.##Ï o.gRh \8/#b ֟+(:][Գ+uC6ޟ@M(^r4IBriԍCdQ4%߃ wɧ)ӱ5#~@Gd'w_$w,;_B_G<+,Ha7L"6k+& d\)[Lzslb*-M8>fL+i!X .W&#diX_LNrJRTդ&2q[b91 49TQt*V]?oۡQ=:Z1"0rMНSW#`mnr5 ^B3~HŽ~CsP<_[UbQ&En<Z֛E_D٢Qw KW6"sKC:c/8rȯ?6E>4q֟P$9%Sk_)ؗeN JljeSɣUXvr|\oxqXFpY*ÁlAͷ{dTICf?/hwbI>K;GPڤp,)H-7A,ډc2HA$24wSwsgӎC)QCS3[9KQs֌.{:ɋ9Cz`hyАҸ'spDcm+&5Mҁ@|Wy{4vqsOWDG4~7`s]5V6YEFJIq mNe)_Qt$?[YM mʔEWn-_}1Q?_Dd&B}AGi&O.7ΕTtj ׊FKM-FNJeq?w ؚCU|'(˔@gɧRkP /{ܒuSuQhCPjs:pHAՎ(^~iLu4""OO), AĐ#[hC`0kzB*aJՅwn6"զzVN1=hǮ76+[?iWT3Ϲ .~WaBii$WlGy CZ c? Ɇy*9+ڑq0h@xI77ߒ6 a-6'쎬1r\ ƜwK cG$h= ^T8׍T`2p/Hxx")ɇ3Kjm7@U1S JL -Z]4~[tS+ʾXJ UB+y Id[r.LLiFj,5N ô^Q01b!VB*-5>\n;?*PxN۫ i__Q1b k1ϳV2kS^-ՑisYJLs6FȰv+98䒾[*J^3M1vRϠo0aa|—O5Hߤ)cgvI`V;Cmp4r0koЖIڜRlWZC R8ҕRCnMLbd*3c?4 R_׋?*r`sɭO+d}P݆S? Um/YLCdBV,Lו@}^OnZRk2s8 0.=@1h<{}u#%4F3q S=8nmmH w1E{]@ O\*:/2vc0^d iE;H1@->Hmll4cA $͖"`5; _vaaR YMO*Uw1al6n{%\?zm޷/ 6>1xv(DjOT(~t %S~ﵼe-q4pTD0gƘyH{ȳAlUg@XK8(%:פ~[MOT(}9<-{L2SbIUK;FuԽc?g}vZ(pHNҟD9+F+ Pt1)IzEf. עI a ;S$q@749yfٶ%mdZy3%Vf,A7fm:|KzuE@gzĤvԳK<3@'vŴ0y7dQ)Jߴȯj>jyO[8׹  \89gT?'5H-(u2(N?R"z܈5QEPBU'DE _ݍֽ*\l@.-3%Egεo%J>ơ>a?R"g~^~8xKcsyrVPet_D UHZĩaaĹ[=4mA!>ŴLfumMZH$"d$p?*q6Qnc0W>1XTזouX9=D J/Kb$քzH4kg 1%U[mCa`ќwά% e0]Fpq[n? ox. Hj6/̐Dzmpl/_zFMx'Ԣi7ߌ*BG|3"#fߓ@ MX Hec/9-Tj+YɅvjྲྀ2ԭ&an}c䙐0 #3g^-i9U %GmgtEpn1MÙqgSb`O.v 3'MLyC=lA44 \R"f/QN3:)ǃ}uݔ7ǫ:7uݕ)~e_[@-pdRuy'$"I!82}:!AwF޶ WCY8%dϩϾf*Sέܖ:(Aj3%<:hzR][xT:LTYїigh]:[uج@P*:A_ &9^`%+PUpG@ ǀszP /[WD'MklVuT  TձD8ڿZSV~)4]և従6"Axp %O&Dƚ}B+g4bΨ~MIqѩ3D)jʔA-̨^W@HkRϗYִi3Zx&$_ SE#)t㾏CۊK~ غmŶ(6+v2,ćnjF%5-`hLBSK2'o޸g7|{kYwe7آ\M={D8(WHł͇Rw)M5 [5n1xU3 9pq'܀TKVRN7pAh.9hoV.7"<9*JL33Jwjfm*ܭ 8J2#rDd<,FJY;o\VJ%nȺvnqLmP>q<5OLaB5\_d ?:؋ՋdAw3뗺b'g*0A&VkŹ*?67J;zmou5=:?=M˫",xr_=l<R̡#{gNVgb87hO_Rb2a=c%90oFzg:3ù+6mB&eQj 30ut1- R1J7ld[M=hљz7@Bet iECewpLٽ;;C! -󖀓!m}؟-|i+A?H'9ٳ1-G<s$ς  7:8uw'0 2sz5/TrطƱ`܃`5чtְ"ʙsރ-J{=vgb#E}R\P~w 1L5r@eʼnAO 6޿ɒr \ZfĠoe]a_I.L%()K?Մz "ԅw.)p/d6_#j~T֯Vq./Z tOvO(Ӟ-+axdGȭ}򖬌isH|B;#oD^%L =HPf2$rle^t\AKߢN:O~ T}(:69GJ`OFλ+A8yG+^#JT_av(5g J -8E#ne e=AB$V]orFW5.i:E`gdɆ8NaqLW x7?]uB8'$4iw;A~ 9&ؖrhz ͕ vgu#,1mT7,2ޔ \rs d29e#uS9RbUEJXaxO72R&յ J^hL%#2|!i9|h(RSLzt@S%9.ܸHݰ5X\Ҧh=YZ~\זW8E &̜J1l 2.v[V&嚦QdAEy;c 5eV5vK;OAxBe6ht<2V+z؅,˞s9ܸ|42!{-G&u/<)*F;RH\I|)%QÉZCtNէ}KI$^_śЦ'0d:iKQ$l\gXQ%:7Q1,Dza#H~o]P{[txnu` Q̲hdĦk84(#[xQ,"5FЯ]V<ÎBbaPWTCl mU);j K`ko~Fg{ R0_JGܦhB7/8m7T_2q6y#"- Hyg!Ncta y p@JGVzac|O3'+gwehS'vyFǠ 5Pnlj]:K'ٓX(;* X)'NJih5#q7 Me75,>c}iC%=Y'wѺR1&K|Ru+roPܥ}+W֛r sĞ%]$2 h4EBġ Z!$%z /֋Vxp巋=G+4+gVKYLՖ9^jIVs~X<=A9Kҗ(efc[k;\ Q0Ar33f e9xxP徬J٠8kH)X("8`gChaҤNe!u\_>#Aq禕,ȀCչVG:vh__j] (y1 -/v xQ^&%ojzv浈]'Np2ecᯖV\t L[襆XUh{!*7|qwXu?{_ޙ#HV(/%D'ԝO^bWbO>2(wDeO7:i<^U3)Vvrx@ˋ_pFb;Fz>^ؙoQ.wu3Nc928ֈ_[\WdE2B_ "MR.hVLNuxʍmeno&8=ʾ~K*:lo X>= NsuLӘfCdW)+ j۬?|y@'V$q8E6˟{:;O!Dm~<@JSulp*))1 zEAwpόΰKVd:ea*2"lbF!(?ɯedD aLza)HAu D4)-O*}cWFUYlHQHѻNٵ|'Z`;{-Nٰp:D[|5?UrȰyԩ51oǮ+yzntwupTxϝ235bU[ Tͺ FL^%]3yҽ$@>ukD;Y0<#d٧\Ȩ}v$HLnkf8 q;5^ajyW):d'Y~!* b6Ӏ6/^L?K0:5FrR>B֫θs2?:mEڤ5i~}٬ )eXDUXi3Q LYr~ Q&;i9q쐧 R\ѯvG[dPՐԆk%T 285.nI,:xn|$ң:L=t˹<;ڡ N2*U(xr3K>H>F coԬO~WGcbVip?iPbrۗ_~CQJy@uy(9qpp/ 3{h)&5|wfZ6gsee'kʗrS ӾLQ\sd 1G6ꤰ` u6J|f. ̸Vz+ la告4[_]N+w+s}-r]TJ}ƍG~SDYnv 9}R'-?&$6B1?iu!XoaM}|\BZT;"`]=(f GT$s\*3oc/`i ]>wsnT{xޮ } %f gJK%)oTURLyYmH%D`ZŸ 塔>enN^nJuJjÓ eʔ29(*,][ x)4kҢeCɐ+kE+hig\fsJpݪP>nR;' 8a!*gAz3%b'D7U$0)e}2چO",(t/2$rrPc|[c!͘7]A:a3 6 ^ni-n/*!Paܕ\j>!cR $ȐOq^},K.KK?44 uEB$lb(翭W"H[k5> Sb)-gI7cWkjȦ ibbLش#X?gT.4:_%]P띞ĭ&/RbX-S> 9΄RtVnnRƋFo'Kz!8=;B(atlW1e2|)R3q-AX˓iV';L&b`T_U9|X˭7Q pPb,g DFGm:%h\ )~A 5n rJznzyoժOR\θ)֗*HT~e@l~viYh#VcPkFFuA"QT<쥶sIY1</B"$X0WDA} g;/S]|BURYqp)uI#['A.ŵ_C@y6A72e#COނDZ0]}0cF/BGS4׎K`_7{63 ߏqtq%s'/Ÿ#%dZ[b]ƾ^Hj$dŵ>6 9xn!:5ìn0YlnOY'!B&D!gF!WiWqOH@0 FscKg{C*L =iÎ ڈ`da 7%bx6T +vI[r.=aCH%.,\V9R< 0~x? Q׭jF~1}(s&xFJْ i^iJ0,77x-Ȱ{껯)>ƂPؐ}"3lj;Y4\@:r{[@i Ovu`Uʍ,cTxa1AY^(ӋhRJKs klyk'{xI/:aLmЫ~zm u<3m=Mj=z^j]su Bp;!!u/tncР7t2.`?b݈# Tk܈5#z PK ~;>*;bUT,5͋88=B7!@V2Fh`@s&XW-1~!C&tmWO]ѪÔ%7Jj R (E=(gj,eh&½rb=T;_:{m*Da41.&QƋO(0H{`YU"wo°=Ȱa#]kFT9gi O`=$ќ2mAI{c ^ʺtiko2H >!sV|HdWoBK v񳐵}5 rC%HP{5.8p8;֛o&TpU1|TПe>RES\=\tTx7E?\I _7Kcek&DHWu _bZQ6$An~M6U}ϧM[XkdSXQ]s_=m=;$JE.^tBcl}]kn"rcXVDmo뵠3?PE._KŭsyQ 4(* )Sa7ڏXddhϴv)0>! >l"B.Q2GքzI>0c Rs5C{3Bw4qyC_`" z!.FxvEA!F;=4]hKbǬBux2/*o#MޜS/ &m՘}ȈWdsZA9)7hF;[ A5tEshep pV>~#uf'$>zmW]cŊ\xS;"kQ4ݾ,2tu0z<9_}$p Dn&>(pLύg]bc0.Iv% )j4kze4cWEX Bc$G g!D҃h We!.uX= 5ǍUM#EMOeT疹- ,]ٹ~A+ Og1݃1f -UU >YWAi/G@n;p [&0[>eՑaf%z/1>aH,OIpHEU2PзнSpEֺvsr$6rDMKrڸdd3dzy;o~$s$"h D0vS`%po7}$c8`\:\ڍ4JKXV"G,7@E(ԈBq{;\/ۧ@y> 2A>)/ZqnMwD:[;# Y?DKCʞN-.Fm6%Jln7ov(,,(GBze^i+XaҐ1+ fm/$eᜐXjر06l4\0]0Okל|#8`%>rSwNO#Rx5)Գt78$Y˱Q;ye!qn2 v0'֟ԓGC$Q9$xx1mLHI(mi')[8' V? ?HߥZXO|p+Ȣ8bF|hN[]oLh~Cnj7~̵ւMw)1u~ȇ:YuiH6Y~l`۶bl0~kYǮuSFMpr-٧=*?`Nhk$c6"ƢkI6cZT%n~n1\(&ɮz*Z.hV3Pz .[*_z_QGm)E,כF`8>kQ0*7ϤmZPp>;E)%fI`gkOVU*/2 7u'&ڨh _63#w <0A _;82+۷|Oq w X*1)Hy)[">m(˜yqz**x0 G?,4pPVx+1 fKf46qUv[PzCyn]=kA[mpSkP>˦KX\ $!Gv-(iQI܏MS,W3)xWl6O/pT+-EOx#$MS3-fYFeZ/3kK5TW6<"㴟K|M;1޸L=|ys5 "-Zd#h/ k-قZ53\/ n]g~0Qr|GXPEol0BSRlC':8:S˵e/ #sbeu5ym͢ĽԸ#{@>R)Co2:"=p*Fۀ}t~X c B.ۨ ~ױ^ۢ9u^dXYoYk/7U4]PbЃהɉ,Q=)g#+UԩyZ1~m6 Yu`PU5^kz GZM_?NR1m4̖1S$>6ڬ]%&"42e\>HȄrkWO |7/V<yW×t}<|5stzp; ;VK:Y#`gkKy=/YB fDc<СVX2zZ\nr띑HBՃx^GĈO(Ph5IdLvi$yO2bƞZګ/<쉼A>k<3r$_} {|׸Ln|jh&bH@EuR )>,Flb"GضB |S:oaN5pC5f8eVA e s5O֤c$Ղ !91]cRn{Cv`"}[~L 11SwӸCLm2I[NL jp]~t۸Ńvqٲ$twr`yǪ[ѻtgcLL+ٝ}xycK)>#_A]?϶]d>*w DM`/5;"9_.oLjdJ/qAB@qE44ʄ'hF @~0*^8Q1+/ -4}y,CzMvthdO%?%;z^'[B?W;aCJ9Mq#VFRT43/o,Hc'hl~X`VE(C_JRKni86B ~ R  \EjrYO='㼫ysN::9 ;&U(O+}y\%xciʑ2 ĨN࿟,'ra&[k $Wm z4[ .м7S)_B*5l+pt٥Z[H q](i}lA܊n@_Nxպ߆ZOߎyuyQVy+hf!4rƐ^˙'XR@i )RflġG6Z&ַT{8s7'1E|l.@/@ L +?O DW}:执~UD ~H)~IUۆ^!GULA%!RO;cAkÑr&KhHiTflX:x#q=cE*̦(<(?:;ͨe37^ __Kw\ò33:bw(pH)4_Y Y#{u#o+&.iphkT,izZV3b}Dʼř`˫8ϯH1#B_=&3-G8B:y{Qa\u!6aeCaYʘQɭd4Hi"tQ>":Lklo3M6 '=[HsuW!x?hWR~ya21^uqy!#@S,8T+iW@g;|* gY_>fU: Ĭ bTO e)2vz]y( Ría\g3dm;xXmxSIM;>\gc k-Yx@N[45 +2 *N'!ǎ*1|/?oؘ"<ٻVM OKD0Dd$t=)SRgKﱇ'0;+(AsTrJt/:=͞ԧ ~91G pfKtH@ul× ”.PC/Y5OEީ58E~/iN (v$Cԥ-a5Rp3 HBCڪd~vOOh"{NoFw?'Lz#4])'!U}ԆYG)rNh<%ڳk-x q>KJ8M*o>02U_%EY@M+Ih'ƦC%GS#(.:].D n}s]>eE8VgN!ciHqϧ DsY q⛤gǭD`C yH!ўl=S:jJ2\.j;4*b]lc@13&>ޖ3eQ˪462H]={xIĪue":#$0 jF1 ]E#xpr*S U2GĪȬ*:ln4?Zr6Fj7}P5AP0do= nd-5-=.ݳ nHᱶ4C1]o 12GYzZDI(nX=ƜQlVxo$xHbRe0+mN@UC {.[5|DQ+gş-VZ24xS]"}letݚ$qYlSe uyҋڠQ *k]T7@I`$`()9&5+dtPN|"2~ c` )Qky'֊^IP0X >HN./yxQ_.BGc3.n8<]H3>HRr@82{G0Xky`_:~Il E*417+l`i'2nSFU]ya**VQaL}<ST o#RIFPUZoUE}oH@pPBKՎ0tT|C :59gnM~l';gIѲQicE A@>@*{S߀Y+1Yw3揃u'sWLK E"B4Fbrg"{V}U'/Wa]C=HjQG@YA a먀n{BIMQ j5_C5|o֗A%q4-GDF ͱlW-=ԁR̻'"j]Z_" PKXi51}Rz^Lh#N&~B%O.[TڶM۾JZpݽd 3k 㔠~{96+2@k>, wk@(0쳼~qۍ9~Ř[F%A Q;]leY\$vWimG?4_sHJnq-`2bq5fP/?X gm` ~/j7X(ԖZƻ[c,1aTǹm6LNʗWf{&8ڌ H.E*Eη* rm{nV 6oA+ b:ݑeU]x1 7hhܗ9mfWL5P!3dM &b,8bOF; >EGgxQ]͟>p3YUԳZC{WFؐIU5ZFW!vjDp^_ʒD%QJ4ww 00dhV}u'%!n.28Z>܍|W߁[mdA࿶uCtzT_o<2L fZtܫW5NY w4.;?+VnyK5C}mnɱ+Z@ga#2 Dz(spIUù‹)e4G"֯NUՕ0>g>u>[?Oh-oIzdA4YM?US! *H݉uJ?bZZ(4wt_ǦakNڎ,lc, W8$%N<;o2ϱ\ %(INHGrsWT?k wE+n3CzFZ7_^<[ŭ2Em]̸dRy韯U? b,GzA3vy 8@=(AG0}.52h=^9p,73o =YGiWf7K,? 6ty44NԺ f?߰}9xl(0 jOf&}%>-ߖ5gr) a0n;韚ՕtmdQ̫/=m ě-R<@&jf{[Ht2ة˜ AV1+1Ÿڍ;o8hzDҴ׏x# N-!rFR%ȼqR-KaosB,rD}wE,P) oY\M'<8=:|W5B{-<+ȍCw!雛]J5M"Z 2*DȖ^G4T:>!40^X5peKw[GĈH~o9 }9߾rB2n:M(e<|c^_tW8tQn;5%6OJ~ E(@Դg3\XXZQ7%8>y˂.oǙ4G xzxY$U+Q,b]{~g.wU;tk5|6$Q71yTX >AMVE"gzae[8^Yº>] ̸" Cݤ>M$<Vi|QMHE~&jrZFSPk^ÞcjPP? xѐ=!0>׎ᢒ@uM|H]dq_=oj(VT#OtŅeڲ@űܻu)}y"P9^ 쁷I ^&Wc/?IO}RI9Ov]mP@[,79%m(9^H=@]COxG.3!ů01׾DQo8^̺)gh2W|Ʊo9&4F|o;mމMLRH˛+aSdh_C/ rlQ@8jI+b›};@5aT$B|1|Dppoͻbp|0˱lY(e+v5oXr]>ĎAUq $FܽA+b "_|rE40v,uwM|QIqTςnMQ, d+vo|;S BZ5eM'[||9Cm>v({:}FO]0*Rnٻˉ.|{R (h[:l.[Fo`O]mc'q]A#/.}}MϩFnUpraҼ3gH zճR Ry ΣF^w1P/OwMع+[>X;V<|ǥf*u<տ*;8 ɲG}.uH8^D4w@Iz{"59RD%Nr8:N߅٪ͨ{]FYb>8i.cg+v]H^(#Ͽ=UeKZr\GX. S::q<7d}.T)Bu>TǰUKiWb/W2SK(uDwy$z߉oE oYqK/?ޔbNSjiGJ.U.сN@SWR4DEl=+?佑$B8mpE5L*|C=Z۔^.^?bV[^Ȧ*h+CoEKOX7lL姢YF0viu txĖ8W6_ˆADgGGwncy*Io(tƯJ쐢]ӷ1wbe += 3ޤD79DeF- -:Ie儡LY%=d,0f%:ódvwfs^-󧍖-Lq- gθڐ)fx$2N'*wbͭꄹmG"Q-=+ccWMܭ6O idD(=!^>smȕ`N1x eO1TO]sTaiepZ;l6+&siK:dZ!9:-ҜL]$ .]w"'`=`[Jm C_ FY rէ!HoؽeE4ׅ.tKazW%9(bP2i&~iX"a'U!CFMrQn>ݝCGzdm%怳ei wqK }]O(QvaG}-M2;j I3cLW;B][* 4ߖNad2[Z _^  ,1\߱v\ +L=8.\t?,ޥ r[p2 7eČr}缄Е9TO@CM[$9V/l}7A*fg~HbԒߘqrOg|_Gu22:&gް{:Bk•Ej(3EJm64f $T{m:0o ^hēWQ+s"z}PyIdGTe+A&VsR'y0bD;*HYzFEYV :Z,z94u:逆46N[z..?ɾ)'7m"g` ($"hqjCȷ-T:M-Z|lb3wU `)ofnURXɝ\GC^'/aT?Pش4%;?|Ի]iZU>" 'IÙc׮֝Mq9PJKAfMhHHٻ{T{]1Ħek-o? Ңi q5sV Nj4P6U*6_+\ۗdW?%`%c+7OYmzե^z$?ya^_+3ooá>8kNѳA GV`F;]L} 3U0|v=ȭ(S5+Bt><QVlXd(a2 z-數]] ?UILsf ^|2STC2mr'rDz'F $Z^@b!NDvWmB^ 7kDN*b(1KjK5b} [4zh$LIodΝYɰjͬiPS|_[{oc: ϽG?"lV l,@Gߋw^7KR/P$O Zm{fk oM>XcڡA 47w$$F2<9>%f+U5rv1-.Ee?+vt;\uϠfص)R*U 545q(۽4c\CsK+-Oj"@_ٽ-d[P$E&c"a5A.Տɼt[S!/ߤ#ʡc[E+RDQ7;l8:`O*p6̾ՇBDI1/ȒZ_ #%fdK>/>q^aJfxU{QyS (UӨЯ.AtbU+k zyAʹ@ӟү͜f؍8?V,"J$NHy'U m]N7ZVxm CH eHQ\<+e .`A{bZ@9yFU-^f;Y"w9gaCC3V2|{a2q̃*]e6E)0Blj `;Hp_6]g#@QXTtH Ÿ oͧ)rWr. X 3ni_Bp!*58ޤr #vD"ļplVeN\ 9&L:w[)r쨱`{&4 v wh'<~-@HdjmJI V|S |Wn 2~S{ylvԤi5v@)^8^^,WV~<*'-|U']85B 4Euǭ2(RL;Cx( ̼T@Ia7uz;=ДUw%'$t3wךs7?A7i@FrųZ 8E_W╬QrT8qy-] ?ljϹ BbrsLƣ;qQb/I4A(7;,AFlԒy[1;' w$`(Bϡ]8:)P1ՠ@r2ɶ*(X aL [Γ?=X^NlOwx@+l״m5m}_Sه..B`]6-L26$76UԼA? w}ސ#kάO2{I6O6i%;[ 6³S!6nk=# {1^F)YyD>L7;J_e gڡ1t f2>V5mKg3ę0qeg/P^EAXܜ})n.]U4'# znNޒGpKdDrHNb1LJ'Lh\˛vs7l݉Qj!> JF>O]N ݓPvn4–g}jI_@](Q>볼k\on %YpWzeцRWGm#u_O;>EV!b 'D2He#%qK_]/lZڔ˒\HkH?/@hdmnb݇luDSCDL8Ĕvݝz8aj7پh%=cFV3L, yr/ջ[$ofś7"@uW8OUc-`7`ajqD]", ֍8!z|zܢVZ/LWyĶ1JI@<. ߕ!ld04YH쟏1ؕNDc`~OrskKqmbn,N7i=$WAdn´sI&C2u)3;_ BͲϕ@=TZ^ρTDuG$ #{'HhO+2+ҿi[vz]GT;Ie-"K_E*AwpyR]< 9tCIM?j;?[v9~έ-G2?qVx!Bjj 1ʞqn-xZ3&'wpe.Ȧ|$5^!> 0T Ng+X6hXA Q&S" 'nd *=2N2V\@ɹnVVWʦǘ:vSwa]-dA ޤ^VmkLfϱ;E+ d g ^UN٘)3D /4bx^Bb~JJ"nnxBm 2mS]ZeQCtSWT\X!/c~fUOPf@iaz>js;&Ab᣽OMpdMXV֋¢rPýhok/*FYJ_$?PGWҹF:ߦiQWr1R&h .(bZ:0fS{LLX=_"& /tRlCS0Eu [:+^Nz)oP{F8ޮ7E.I쑺3*?AtyY倳wݭmzX(J &'nr!e{J|nsh،*asj i3 8@eZsE֒L"9:ֽhF~qm 8v.P\oǐjdIak_nki1mM ɂYC#fkt}s59H[׌RͺYMͤ\oXRpr$3)s?Uy|k@"F@&U_0;\7KYxl:EI[f&Y 朻ɮx;^6hĺPNxEe#Kha 3w0iQ`|@tuZB|*)42(U>%N$솞%A4^]w~F9ai$mHi@BNU7 ns^jM SþOS}Y}8/A>Y)B'HMrɆrW421%?rPKq%̪D}DX][ZVZRǐw!()PzZR^߈^k[fVp5z׵3ܙv[o5, )̤l=U!8 [ցqwSuއ( ő'X:Q!t4@Àj$ߖQ0yoa:ն/7JxQn <\T6p{w`&&XB᪨(Xpb&۫|[FZçdDXOSa4 s@yʟچlhMkORv9k^DU:s꘧h 5"y zϾRw+j=X(?z/ǖDԆAQ1ײɵEى] 0Rᇦ]?MzFutҦ?gβM%:sl6)gN~:ЪG o oeT1<+Ԏ>8ųQb^ٴ3K/giU^uJʉ=64|j^"Jr\0aSy})/МX0 Y BB.pDe~@!a2O]24ץ֛!ʎV,\Hu,p`cz.ukVJLwdKt+ p[\ހCqad8~vl$(j~Gcz1ZeC;~a<oO@0`r +e*? * (bbN8LR&i-qUo3G#P~R0avIy):#H$7HlSdKiw+I{wA . ւbʯftm.ցKax*p쏭@w>hmX{;y=QeC YL"3ѳ5ENʜ= `T9:{[k 2lf%Uzp "3_B`S.fkeurwЈ׆$YSaN7yo \RE0.o>k\ Jy<:KigkHfxMb&X|#R8>BSw@L3sf7EL2 EFp=|t.MU#$Zݣcpy0Z@ MG zJPzxwQSQ2vPIpqNU2{DnhNڱ{5>nkJV3+>a嵟QE!SO+)e8W̩xOSea!F~rRs}_Pd`Y^9Gi5rc1j<5L F_joOfI3FNt]ƩUzKU_ mmUa'!=i)/E?wD=K =@ 5Efͧ 6HhZS\;3~@XP-!ϧS˚_ރpѩuR5tOR$.fsXxi4-wﵾ.wP@OƦ5>=Cl픹7++b{ X֥}jw5"J:FMޜ=VL2ʉ{Z0SS%u*-=v{pig)j6a@oNdаPh^O)oF\t Ռw&j&A_A (lb%hY M͞Rq={] X[{ɩA&MsgY?7 {H%y𙊑NB[Ïte*b'Y5|hY+*`uAF)VdKflJm*$ome'yDGJg%e 7*8SA"P"^oiskL|?2X2=3þ[+]z fSg?W̦VO2)Fh+̡>J) vOZ@Lrf_QwwPkE f3˅hA%/VZe̖,`07S,kƁ(Áp'Q>wēx˻\̣#a#Xm5ם(Pk#{XCf{ 6CIzԃ7ڢ9fԜ޳1WF`#;$9'b+aCܘN1/5@Zٌj#ygΔ}n7ZeGaJ4ȖIKccʞ۾̎?!ױ_WmP1d`_v4q:,V1.)/'ruU䳒)TtrDfRkA'`_ #(L^37#QT\|"֝cA8i[Z na)M_y{)iʃI 9 ?ӊ?1{^V:G0\edb1X515{14c"C"I:EyKL䟭}Uu{@տ9w]u6]`$/RgJ ZI\U@xF|(9w GY# (}U\;cNfÓLXytHm`X;7nAĦgn:_)X{;B{҇zMۅEӒ*Q4'ZSmI283!gdH&T?"YaiEײs>9/XĺHOS}uksHahj0Far+l"}DNss{}ܬ%Az5]'% _Xsk~5uu])i;8\{v;E9.T.djm8KdҰ64Υ$ZUa ߪ%Wc=R(>[{p }I_;~ h\xC4"VHX'ExN4oF:}*ŅƇF5řZV7;x)Vomc_ BYI6y} Z9Ǔf_I~,٣"|xIa:Ym|SMWAHxYvKm+,28~C0z茶i!xzudF{myͤ6NQǂ=`(M*8xXJcoՄS,aH杩 ީ#h@Utkbyݡx]i= VC9)\hh{Vjc tt>6XP/_IXUD71(;@z+5f.'֠3!_)i򙗧_WB5Uib̞]x0ȺvgYx4Uo bMxerЈCH0tmEQ3g.ԣ&Bř (HΉ,kWɍp9['^t/[eaCaCmbz'L7ZuVB8*aR@l"1H:mw=˗C, %:˙!' FsNW6 ݮjʝ52瑆dqO gv{]^|$+eꡱi-%h={bŌw'TkIT0'ߎbD: ì7ۈ=hwMxPim^1Jc)0#PHa^.nҤeIq9Fې4z ɬ- {B+XlܑƗ~R)qEϽ @QI}yP1 Vz[v^{iE$_?b?Ƭ𸽨7knhrO-, ~&P[";((nma8J+RwBn`$/Dlz)-.d4xb %QR LfCǭ %I˘^+t.6`%2ql7+zd] S@\T|͟uA1>J=w 9-GA h5[WY;(F]kc.ܹ[VrOi"( PGQR剖hLf0j^29_@DKTϴUl+& fq!C_Z*(oBK,`Y XN.r?8M7jO8|hF׋*U]22xԂTZi杛W֜M+ȕ7) ~Ŷ]&(Q԰a*zyNɻщ/($JzIsu:N}94=PanUp;!fRlצՁ٫ҝH8&PRΝ#x)n({U_OG 7ʔ)1ATIs&"щȰh( matO9Pst؋S40emMK^fT tiUbZߓXkINSG!*&"D`CPg?x4O9H&_\#!hAY&yϮG_(;W)Mm3PbN ?%~l)rk qH` T 8Bmd`X.Z$>.rQ py{حMkQކ:. #\k6Ohh6,S_!;-Cɩ|H`F21JRr!%4EŠ+˲TvJDE9uqIʲՉϱ4zK \ }64.$rg2&&]^IV]J H]/ Y8(ކ~p&xj1Bi /G?Pφ?~4zB=hEƱܣ%`9F;w܊-<0՘dH86"yC9dXaOĚ޴]" I3OC'ȇn0s;9{3A䋤'@%Os}L3R }7_$9*}Ae8O #%+~DWiM&PjƞAmG)߄3;t{6oҐ2!UA,PDx v ]Epό-#[_Qd X ;d 7=%^,X,_PW^ɲ {3Qly]!,\;vzgGFNa=L[=g ћQ^GOu1F})uA,wgzuGm ĶM3[SPÕW~*q<,0_c .B6BhE? Mu>rТDňQj+X%JZ맋mFݡ e 0UF7Z_ f Օ1ɨ9̒:_=_ܳ~ 6{M}S6]ϝM[m->>uRER(Ďܟ.@YƅdMڈyHmc{yo2= M0l&y>h;{6y@hKgl*F1[4@%OzwI1:>=Q+Pl(5mhVw-o-{1vfУ~UpJɕǻ|~/Kt'+XԷ8R3K*,c8C]d:GU~֠Ja%| A#u,(&Zq<4TAD,(öer~J}f,S:g$CMGg{HhzjGHubΔNۜ|/gڔ@ĠYUD?lP?u{ )?oU}-}?*O,]*{M@p:\ R TN{tzr+B)CV3GY8_;,1q0gw,@eB 2Ǵݛc3U{ *L%|l>[*7<mؔljTzc" 8fQ'g 6;__/KT,AM~KG @`}&рH8}NSÌ"(-ŀ;1ˬ8!(@:=\-s6Ee $3ǿ3娩OŮ=>)Juw f:ðzFlAS/zL"n&ꝛ{wlԑ=̌8J*}3Zǿ-]2,%9y&r@s KCd8 Wk& 6)4d]lS'+yoT N_L {|.B@:Dg 5 "x{VXO'~hidH nmhnWbF~p`xܘw/C )=ei]*Uo ˌOm|Z[ֲ$*gRiupS;R^Ĥ}E俿׵E)ӉHeZm\^n@_1bJXƳ.=  xoۉé@8k]~38VAynb Xy?t&VC?j A)Q k5d"s %Qg1RhKş>ɉo$c|q7E{n_OƻX6!ۅ@׆ª2/ Tpɚ`(|rI!b%fzW}R梀.[aU?2w9 &BqiTgy 9٤n%RF̝UVG0}h6 \슉fwV¹вYRO6X?̠g7 ڳp__uU$~u$:mB,ەn`΢2+]j Xg)IIB7㬃 ]J˜C6 ]'Ű鯺 GEeع!`KL3B7sS;]8\ J8)dIEiSB)RMyJ ;yK3BZv7n` Y}$ 7MpLݔ%6e*Ay`SF(@0GeEкX㴿uρ.;fQYD4=A\7 G{PqMz9q:h:HÚ.36»AeЇyC< ;Q᳖"ݹ Yi2xBʁr%]z~$?9HI|<_&m60>1׌S(2 .Hş-oqX@+c`_ލRjpQFL O/H\31£t? p}PU0np}ݢdk1DYO b1ejP4 iFAշ^+Rlr9.PN;xe_ߜܬ\@Qfm-J'BNL*7ɕD_ܘ $p?]=e4ռEYbL|;C:5_8 [()~litrܤnZ_$Гۇv(fwXBF(P0Eb%́2[DJ)ZT5a v.G&g #gٸlmCS2d-'ׇWm\rۿX{d3!!1^Ix_m>a:W:f( }B)߄E׬[K3FRAPck=s6pB0"f@F5T\\x=j&g<`p#U.z1gcǓ&%ЄyjkN80/Zo&5حx>:&7[@I$t.A UHw\Vmێ>Fļߨ!8nDeiX3?&Wfq\eĨK+I9sSzCNP^k1䀖ԻofD 6'tx: Xʔ[iB-ю}`D7ft5<sQ>8rHmGV- aLTk;Qm7jxQB)CR {ڥgCMdBFn҅h?5"Sh_9m]S]SZ=dtNa>{t ?"y}5AZpWi"1A?ɜ;|-LYM3hFUUܖ)86 XB"7#f`pX1gXԹ^? F1,ROf|d~Sӷ| \~Fi;^B>(6­L|}ǭ28HB+YlA Y?ghgl |4-ۢ& 4 '$ Es۲r)jA1^,#H.6#ZtkO>9tiWO︅IrF}M@^*0*(LՇ9tUDӄmY2S:?+&5^0͇@yI d9I-V+d]S-DJWZuvF1(R-L{{6 Vk;n!mɴ9PSv mJ2Fq n /¦EpL]Bc2iR~:sNܕU};X/ F͎V4q)KSciTv?(Q\@~޳80Gy~)*7dbUisn^=?J|*$o>sKx 9o=vԁZ՞=}hmg o$!ut~͠&Pu!_ҏ5ӅB&B`>avL#lN9kakT޲j[R֦fߏgw˵Db \dB|M1eﺍZ4b;A7 SÍZPHsd0Bj~CFn}]),c\ ͘=b;266L9f;Uefш$v"SDVfQGy2i qvq[l[t4s)Z}3Mera-`aU֙ CzQsaj{~~[c?O y^%^'kV_pV1wtVPxgsNlGo&N0,| EEY|AL UH zoh.~/8£b;p^mJ?euX.9yvxPM1 PUXNʷs}|R@-D3;UV.SHM0pu~;ѯ4Rvᴚ3Z-]^gV+*U? nS7Wb_]w`--T^8\qt/| gEq 2^Ȑ cPmF._o"ΗEsFcYVrwBp` Gxd֏*GhBH2VquDdc5KBޏ|j+eR?jUL2ϘϦmchބM~XյՋdl܃{*J+^T?m63B-'Rʲ. ̜] X$0a o7}(u3"Vp A&dϹM ^! b3;g؎t0\)|(auȨK7.h0]:.声cib+7c~@;pL54XWճwmQ6m2C%Pk)7_'1cи7ش K$Q\Lu[qNJ!}t#jy@%1d6qOlEz}M>n`e  "r0ʾx=F cbcDİ`%UrSˆ5I=܏ $׬$[t3φZT@o\`T/hvo؍%VN7= O/ɗk-˦HBKNIZ*8krHR]/Rg4IYB7΄*%؂, ͓;%)GeˆWK3&PslP>!]j|Kp[$̤pkVt+XIY˞:k163ÄPmr)VpRg) 6FElЫEEFIW+$OǨ J/{Q ʹ$ d=b'ȑS뉠]V4>56dw b=`+ESQKw1azgDD{Sl_7C\l\b,so<([[hvkVR&"v bh6rEZs֭5ӕ`GmU23m^EU~s+smQ'έMEw6[rO2k)]ltO֒Qu6P6r5gw kÖ~9@JGzbm]F|v T]4&%~;QbWOE~` =įjXsY|m8~ {8}HPAP1˨KY6$sZ,`i]`U6MV[7ug;|Sw[:3+o5)K"Epn{ȏ.uv.m !NՉxଢN|I S/w dgt/pîazH#P&?]o*|]P$?m0U 0=~zYo,B߻<~N* 4]$2!ɩݛԮœB)K8'&Vz1č[͈H`e]ckWׅ692Jn^<}+&> DddྗRo$F!&UmqN4_&qRwx"n]:,a wT*+L RE glB{*zUP;f: *ROd~6zc[zlgm DW#k^z^ɤ[٬o,κ;~Sݕe0&G)lV-qoFNϡ}z#+kK)8eSGL|.^< +#Z|vlH_i?AI츤Md)K?^^m `v}qX"2:f)dpĞ]~sN X4pF:U:\tnPB7[qR0+3'evL;_y- VK .CxKiOGZÐ쩞k5H[f8&&0f+VI4nm=K) I=:E-]m -ϓOJaġp[ˁ(hVv(pf'1򊈅/^{[@ę|.2q|'^ Nl(HimΔQyp]rS_PTaI9}VêdRc׫2ǀuضҶ@zTJ:V(BgW&[zcl^q(&%eݎkIg0$dcm>JޔԸ2M_v# b\+RUԚ&?'*z pFUA=dXG Ybc%[N[}ĹB:%qhSզ~{&?!m$xI9t3V5OPsi݊ay?RUPoΤ:+;jo >N`_-*k*#P7k#( ~;3XiI1}D O/I XǙf!mdiqCNFmߔ6%IP+8NmXimأW^g6:wP2mrz+)`K1N9F9-%y*3G{c&dt"M%eMfO[]" Eh1^h7>Ykly ?2Ǻ W$SP\Cyn8gYT (u&r)se*C). =Q$`2ps덺4 wE0>L(څRؒꕗxD2~-*}܏iJIL9-d@4RIٻ|Wr/*%A2od`@kH#w[7>04!^v]'Nd|w!]gӵwu'l5\z9&5a OOӑ$@-7i,u5AF~bרK03Dww'I>c: HL*e2Mёl%̯`q'%7>?I%{e;C2U^O]Of1;j*0L]+C'T*.|G:X  h;j-Ar g wB wj`UВ mj,bνL0O]i7Iv;Gs]D4bm! @:hZƼnaZuF%5"\iv/݉bUeϮJ +w D d5: E郿3?1,:Ahi t'8RՃe$[u6͚v,=ゾ\=:s\ jnȳ0´UMso_#Q[DY0&04)kA{UI&pN d%(,-k!Br C}TMN/\߉%"cX`cX,qmy "6yڵ.V^F rUw ` ~ru^Ӯ p2Ë'd~ꝞcwR|r}=DrͲpQ:PˆwGYʾ]ȵuӸT=4 3.,.ܪ(FGo; 3(|uT:#.MrFJWǎ]Qs"OO1PK$@ \emy1FÈ#b48k avtOb\W{hWCUC`UF$XUf~,mnfws 6boC+'`UYV(oFw[ CIM5Ū#(_1+Sd,,/ZIC7E񠿆N'%.g'mIп^hF ue 0CV֯T 8H8 Fe2XE4%ɁݾB?AG(}5EW8"oNANp?P3CQSnDb@Uy=lr-g)yL,-PnL`3H/Ds*wªac CX5ຌT[/LB;[SnW#_ O"k4󍊪p2ҡI>V{i0qBrk3>^{5p;Xk It I>:?fp_xOJg p ^BTgVP3h"~`ⓗu C>f![>XE8"r:k|=1%/Rt ̘ʏvNiƈ)j}{M' ]5IB̢7`դn{ l:'2c6*5 D0m}kU/e|خc.J\p4*Or4d gKfqnջ` ^{.^y rkih8K$J|GpB>lEX>wUsC?Dž{CBщ0?~(c'|D@y]:U彏i:FXh9 m,3 uKPeS[1 v AGzn< <9\w Ը aghɺV;Οv?X9EhgI<"m=yz4jKC3#XҬWSǚv{@mnfVr4;pBs/1ibz~5.o):"`U }x"5㧂l(f_`%ky//H*B49Wk8OY?[O2}X/oBڼ9v$n "t t:.y6({~WSMYVF IDRX"ɆElפ~57~8'rހ7y1dʨ 2|Y9"0 }'7"(^67ԃrAs4B],H1qSw7[`ppTNa .g\OVDv$ 9'i2,8cnD&iWg,H9 If_dĤ59 Y{8>,|+>`*Mwi!>g;)cG'&Hi#gen0Q6R(zdݒ2@(H.O?/Ti`?@4}÷3 Osv+1PmfP ҈M8MvcX5E\խK`k[6uuEUd-,!/1_^yt:@2`Ƿ&J}EnPW.V3t}jot—[r?}+XUpsi9-C&<)!큢> ~Xxk쁯 OLkaf樓_?MԚ1҅(Ŧ,Z[C-`QF ;b5`!e̛Π&sryH{a3#҈4vhٷỵy_޷w1]QrJ*pƾ$:z CsL,rl9:Rap̄Imݦ `4%40HZ#EL&LYm}ʶOO6B#zDK{^m Z\S͓_l٤_?PFϗ#oe4>XnPzV`|eM_XPD'o"pa7p FQ`Vqw2~צFQ⬼j $8 BYH87_8jh'Ro[;|jЎҚ5*q,S=}r[)p&WU%(O꿯rDګymjF,L1r:%~@lH'f/ظI3x7 IX˲X3JkuUhrHajѽ`4# 2R y(*oW YΏ\QMp3+w09ٽnW1 >Oώv'0ഹ8)bhϳXklR~)"<@[9:e[?ЁŏsfDP|=UCIBd ECҬYWDĢ:xSR&|CeU ouɑquHY4S7R]rzM2¤0h 19}؊Uz^8z;zp$*<̳Čt8_6d~9qBWR+//49M7*(Nti嫯ԋtRvFs(!I' 1Bm[1.3I"7d __=ژskDl;ڝ#TJQʢ+I>ZԽ( SQlJ7"O)rd$_{^Ě%3['”#Bҗ C_KO5Ƙ%]tgJ;Au lEb0_~+KztZ&%]φQ-]_ E¿#eJ\e! PhUҹ9#Ū\yi2";@?`]R(wns6QE onq`|LJVFaEοf x+k83)&V;s`< @ );gG yfɔ;:qCGA fM5.SG.\ L3cO7tʩ+ DC}z3V~=m#?Mِ>=VYcBw: ./yٜ =<(-:iw( 񥃳*&CCldSaߗzH̩IbtAP^0~ňzγ7;r©詤x3@d QдC\FtݨeCJk6»Xv?[9'B5l..RRSp!+Bô5-1CHnc-d"v* Pka*]$#" ]ؾlʙ Xe,꞉|!xhymoޛJEk7/Fi_&#^Ղ!Ԃ;&[8w ّsX,/TŶ.z)z eH92Mqn];HFQ-6. Йαoj6CCUHx:/WOV Fyg]is)֞n?8Mp1'€%Q^*ὈIҽ4D_}p-@tGl޶mÉ%o y 0~@0@N1@v`DCI린RP{d٩`-Wqvpg?|~: i$X!okGS-faC%]/tYkVI#Ơl,n㺻:3#^i+8;\pT3\_$!/5đ)t>p^)6L}&xvc4!t =,!63m_mCEkmΓ%AsޣJ+ATŜNMI@IdmNu_qhcҷ|׳^F 8~i󏾷à֋=w&&qu. 3޻P zkXܹy:2mU@/Nك2p]*:/Ͷt`Z]keqŲlYA!Jc4 ԻueGcxS,,,8M'HK]@;?4`P4{'lmT++b6&%)!) ͒h(tP'cVm _a!ԫҝ5:OP#;w?, $C#8Mc_OC(T Vӏѷ>=Zqմfn ߱`>^ƢE"W_gW^ aWJ>X wN\;/Q r*eT $ O'MP4%Ox+iZB$!T H CV_&O֡^tE.h5,Rj;Y5!#<1ўBS?dK9~E'GΛ#[vԋ]1Qj9q,\+Gd2UJrj8\=eIE)f"`^ dY$:K';EmufpWGG&2㫬V^vOn7Iۀq) =%<vG;+E03 *NGoתYT,(%DԸŹzavJ*􆁉,H<VΣEI@M*Zr`%!3Z%&دjOL-%=4HWpvP@ &1XwƠ]7xyK%.جg7\Keȶ]3>?nGS 5eJ޽7-9#%0qj(>meW@d?*1kWZZof/9Y~!/.zDmie~iX-鼒>ra;'Mt9bt{hhtvZcsm>U.Ws} #<ԟ c߄J _L#"FSAŒ+\W ݱ+(s0]V#ւkswJ"ιgy;9Eǭ.ԄB\%GēWn+ok|3^MPYf< Ӏܿ\[s{cCsȘ[l @\IzO=cN#K؁ҭiY&N\<6I$Gfo[r b5樜C :@9|qNף۫_NUT駏L5&h/v<^XZ.3eӶS+Tz;3u- {goEh6ʭP׏ r8h|SCEhQӳ?Ȟ(VޏZDHos鏡.=U$dW*RW1~0+-\ӣ!+1;'|#T:u;HRr4NoBFŷR _eXO}y,MF_#0|hlC؎JcOLDt:Š۽v7=.+G}{ge Þ -Sg{ף7mLI[ ҩ^>Sc0|x4o%OEs wulrCn v@hHqHP]Wrɦ:ۻh_゚wx6ADDޞ&"?WCA+})-CXc)oT`hҏ 4Wel r*C(C^0Y rX_p+Z q;9߹Dvx؟Lx ^O?(=ÍkԈ9 i)APJ ܾ^ƉM< :a6Ck#f>,L asE '.vDl8"YYm(G|`yc?A)v@<1ʷ]zET$/$ 8jkcPm3P@J3נzSirhA8Y4&wF'bƢC>ZTcxXnLPe=M}叺:]{ߪ._4ܓjei=nR$[YMbܶdƼ}7zs1y u-Jb&y * 58'b'0W wu'yp=D}!Q˙8]"o*obzRW VDHY 95Ə|/NeM|GivU#nɂD'˘>BLZ܋ۈ=u\y٘:;6&:]&T-^wF=ԺpOCz5ug'C6,Z j6G/|Ԁ&kSB. T2bt+^- Ł<.u)~E4CgmBXS$>M} *m)^L,8#joЧmF H f=$$X7i+1q=93ԍga 7 {`3(YlL]PRrj\ҋ]s2G|^a3% MN4> $b%pL?$c@r.Ռm뮄3?i?a 5 ˜A`$Joձe7׊=B!\͇^xX}Q{`AqsU#GEv朘EBjSWh6U `YDMت.5Cfh/S(p6sH(_1t`bDc A9.Rݵ.kZ -&g7Ό]kHyLEiy:*i.O*ĈN3B2 Ʀ\gT̖'0pkޓtQX;dK&l#` Mp ܌l ת}#[WAl 5c_\QF0[!E_{ J{d:m{(omO")wԍc^~VdTY7)2l99,abvL!IE7s| 3n\yd/dh'֜r^ J0ZXu|Q8@+P45;֡--]c2O\b9(76Ⱥ&ŧrE%7KVuh*;pO-| -frY|$̑ =:>@{?} @ O;hhHIR `cˉcGw8W+u Y7RuA`+X%miڮ0|H{f'7nlȋ^F)]w }q1EtBJ|P;T +k:XXA:ATЩ՚l E.~ PKȏWNH5]t~@fjv[J$<낰|4aUWͦkn^HAi =KH]aÕZOXUXP@Kv?LcevH􎮕 $.BfF ÎbaNXNK7FB,S{I>,$dp7ĦLk Ç+ C0ʄY .F?w)rIS\: OCt&zS*_trD}N |3rL;3q^]nf5_WPhz\8d,Jh9uXBn֤lc G! !\U0%HܦOj@pb&3uoqX멫5?Ba/NptXⷌ;c;^4S+HE@' ?)~5ka2=OMJB9?Gsf`t? $z))\sdӔܕ(!U |xJLg awv_-r[0͘ x8̯kԩYH $ -Xc2L&o -.4n;_dz+j%Smu/Q̵E—&XXoa3֜ i =}qnl%'dWt G8Ϛ+x|Ǡ4~GIGUԲ3ZܧA~xXVdn8DL}8C Z~=Ž@GZ,$XB^5!mW/_P8#2,bzlB UNǵB?U;qY0e2`*>tTM؟ 9huHS~ 7&ʢT(ֵQy(sZ&HªZ_X 9 &v;'pH:+x2*䁆_J˪IW)Nm]̆ARtJA#"V2V wFJsG-e !ePAǩ4sb:UEʑ2M=h# P|_\xyV^Brj Ug52M"-a-jW\륅8}y^aApԷ>:/pu #ɤP3HPIwd 2JorsFߙmyI8tƽ^Ȏ5)򨙭;%%S-ljҸ^(+X/4{H )V ,O LT/DŊ /JL@$[ ,97ҁGwe433!4HCUG-DaiqHn=e#'wAvj*bƷq:l x[_\iAw_hFgnE8K7xWa[!S>08#-Hn;LjL#tvu'^2px2ՕI 7| ]CI}Ma\̅uBu%{yt` */G!n0g̐:ic8'sVw*lRq}V33 sS| Y2x?;ȂKm:? v<˝B.Ih }uGuh`C]!%6eC:6ePژBVc9oPy˶^vвH7UNGZC_qO85o۫ei˳H82s ^ ]fܽgYO dKK]Z>F<óϓ`qg!![c.-Ak pNrQ]kR^vCٕj #>K<>[7^1sE~tA Q*qN(p"W.+!Yy]Fꍲ T' þ('=ix󝰂=7a' KCͦ1ru+z'QF|&/ A-zrxlkt B+!-Yaz$ɽFHk?ۢ}44nɹ|cW`]o~PB*+B` BOUݿJĖK)n4մꠤ _ݴŽ~]WH"?^!CȘ"[]VAAtt8dKxh ;􊈢Y(lݖь*nĨ-t1ht̛ݽm6MI yN|뙗XAH8A̍*-fuHQbcx0!Mb7ɒRP{a:V/ojާenv%'>a/̐6:~ި9Ka&5Xozn.]մ.C|{kDlh܋ i6gFxUQybrVq1ף2;TYOl{:+j4 Nc,6y )F^fbMOc\d}f']Z>eWN^^fZX:Ylķ%ژ9&Rb^zl-^uDK2$53.[ iw}ݽ'"M7Anq`1ڕ4LjHl+؊0=ix}$VuԕlG7.uS4G:ooh,c-9qt,Ws# m;}j2.J6?+);q>M>ҕN*b3~4ƧSٔ `"912P 6aeTYlՓFylt OU'pȍzkaׁ?mk⁩E06/*oZߜUYYCaN[!t&rxV2rHi-{tW5x d~/5.`a\Y5qeHMcj/K4ήa'>IL]sJY0>=tM ;+D?3}?2 }ta6f 彚-sw "*̂RߪPB0d•Jj?iߡdlͺˣGRtf0ӱbUC[zJTS/nߏBfW0Ћ.TpF:S|-^F{$0wXE?@PgcN;|4= ޫ'RÉuwr~ h7|_Ϲjcdef/QjςB*Ʀ(9Jr ͪe oujh 8y^Ϧ"ޝ5\^+T@$x.\h dTP>D6?n(GWR)!' ѸŠgRNJIᶛ{.?-;{,Pb- ӋC\J1:1>l{Abh B̖{9ӏ *AJeBai?hBU"z"*ӫ4{`P 1QL[JSBmG@+uзbyEt˜:c&N_ͿbM(?yo?~Fe^MZM+"w23 $!>16O>/[}:N!#۱z_,a0! xչ#R[ Ls%ptraD]B4`5EXM1kӂ:PO&ϚɤD . o?Vd駱7쫙]+j :mu!gB?NW`𒵵C$d̩F4}n06̙)y2f#0n-/a3am۬.Q% LJW\i#1z)R6C ydz@^*.EIgs41 7WaI$r/49gTlgX]h0 {XmH^"@NIte0y9Ʀ^"Yp0يmt{c#op1UD^+ * ((c9/gSO^AŌ1Fsa6%Z=H2AqQS_xqxY:ND iZMI\,ڃZL濗R0+ wf]0ȗ/ yýGUHUXIj7JC804B&%k}'>7 G1"ڭo=Ŋ"_JYգ[yR#V2PFAOG.rsEײ/͛((.)s/9:0\f ({u.P;kX!$ ! Om9h6=j|WIwAoc ހhE1" $cio|:1,>%)DU|zkyr`KW lXHz>۴r۪5Mf on); C+;ߧ+&BlN I$j^kJ" j5'}We(%kISb2{꺀d BxeS?% 1һǿenAMݔ~޻C ֨46:c*(7pLV.ㄭJ8x?+Gqb? ^ 0MSqt2kF竊-+FzUBbryLyj{H8!. p@:_wu'Ye4Ue쵢Hkt;P2)VA/ޯ4@+#/cEygRkzT1>Yx"$Ksծ&[h 9 aǸB2\"0SVޔ>J"}8h)ܲEf?d'z1n_3w:P[ SH_*o RۊDH=d l"x煍oib]8u6 8ɚ .;I-,йIuBPGvۏbLqF &vdN..X~1%HL]"9^|j5@OI$.iXn$N)#r,ak42v2tiLM8P߸? zgF7_[ <ҾX8pʸmYqmRCjBkBwA闔cTy`uhDr/=H>AN~9(-ƖyruNz)pw)v ~~XhFn:fܗ$gԳ45n)n\JN?~߹*TlQ[N/--AjzMCya~H:%(y=MAuz9o rxz1X<^=‰sZy_G3T} -Askq:0RQJgJ^bm <źQj6w!J3aɶ:ʎCJXRV_/I#&bmieJcouBtQ%S6-ը{rOyo7;o|OX\=[ߣKFzi#tq.՗BWVMDmj=,W}a=vJKF3G<AۑXa>H/{ރ|$*4k/ 1"#)|;㥁}~!)= 质;, N7rJ еՖNf)!;]&܉h\Q0gIҏ%#w3D;?KeIJ D^Qj(XAeE gSXfMu]>Z*8LS,Rm~ Җ5}󝙧L4usT"n\`I!NdBq^k +U"4wQ"w%A(Kؾe| It~ij7B~R8'6jAmQ$gw?CF ag ܪg[Z$[EU'$?_7M o"c$c3W7iZ Ge-@K &C7gK>L`n=/kg8rsBaɶe$0L\otgO^e`kXV iU=G{oK DzT"8W1/Yea4๸GЫSnǺݔ~]dGx2rSe?)ns_giqS W9"+:B̟FHò'c{=ri!oo48W_̦F'ZS>P#_'dsFira\о|2|H!jV BF~ܬO'zW.jv86h Rqvc[:Q)!Τp}Ia|>BWps!}l6G0+KZy\6 ϭcbC8W FnT@xe|!#kbN*_-5 h(GB]&8ˤ񈳆=; jK1f,6Ål7gYO[Z͈GPC%툩 fGzibnh[sQ&$R[DU;bk>j"i5;/"A%Be /+Wi!ѼAnyt"; Ȍ?H֕&e͹+#gic\.JҚ**XBC A^PC*X2 }_ĈDI:bBB+N3 re z`;mb) Py(c_)S- 061Q󸅓KmBےj8yxȟu >ƏI>:{ }[GgO :{^L#Rl=no7G1)`¸@0q1R3-CA"a<[5Nt+G#J/VWeb{ݸ{{P4XȻ3XABj8Qi<"{'84Ir!$5#w:u#ߞxj]i/i)=l╍;['󪓂 J_-RB 8aB.yߘb8UP:W^Y1Oc,]46bwj#r,$ySOpoV Q&DNy*V uyWcT8ba%ҽ+  'U*1<ʐ jԖn23QO-1,*]o4o "(3Zh7)\G\Qa9CJCM^R#4k %@l&R6>aűJuT IGǣsxtg'[I!J否J(d",jloNc*^ ?c _넻 ~Bܯ^W>!k)ˉ,s*5/j3n(Ԗ^К*{+M߰,dbMM^!=nt T,[\<I (0Ӊ).0yӥa\n.6 Dn9-a06fJN~;ʔCO;m{(:%u,0>/GXIzr>/ Rm9&{KG#X/Z#2ζ Sq8~a)I2`AmZ@ə> 60 s9W>GzGǏFHIֽ_ll׫dתÔa`H(D*`"!UD߇%Y,л#J+RuDb\v]i/jL'v:tk iٵ֟!J*bge9s F=gJ^0{fZdӣE~*d=C%kuO|Lx1~U޿c7׆%i⾗9)!Њc?Q1=7`XQN;2~JY NnoOH K.g[ih . aߠ4ac-A$6-,F=T̜1~)t ?j.$mBދ`A"1W! 9uwr$% K?Mz^{TͿ=u;s7M{EIl20{vP] 6>ܧ- bK֧d2C {e,v/SE|*Ϭam-!G=W;lHݖ5zU{۝ i;=߫͗$6gWKWJQt 93ഡPB|bI$czzTCū/bVZp\v(Kr"0=(Jh6*ZjR*#VeNQ^1RoZG JL:g{hhPk)ZLVi.xX`gLlw$ K&Ai]VNj o^ʃoZe%P,ML-#e);ERFy8Ppz k%d4'nK{rOct#vYƅ z |ŰgL{8{'6{A<Qԓ3ļsaAZ x7M/{Yv u+5猱>rs>URO萒Oو$ӝ7{%r0ǧ8ږ_u{n2Q.%$uv;8'j1}cpu/ j t":n/J9F-,@'j IM,*9ljRAGPFUr 7beqwqs`3 E*7BwF{k7 ڷ%c*{oR8NAxr8\@s\QV흩jL?O/U,v/n3ظӼAz|@>S:-ćWdNHk6Bb&%2cV5$3l"GF+qv%yl*ceP\:}:30MӆԚ;a ޔVì;hx]d>-Gs}؁4ov0y)Ki"H5Y2ErMB4$9۳5x,|%Bﱝ`Ľ?YMp 221V Tˋ+ I:of[ǐŰz?Q.MBU&ҍ>u/} NSxF&oR]@LH뎏732~Qt[T>j~4sB/Gr-Ggq.D٬%ԭA q= S(z OD9Чhk tHYkѓ*ENrzR䇍oUT/P={-L̓DΪXLwlօʄSQLxqƭ+88*)]^ӕw~{wKQ}o=sZ: Z<%*c Ń;h\mfP M_0>G[ \?H-:D&z՝-Q0/"0D]W}m6Ed"h솂SZ7;;~U`/@ױ N{W9*bGBLW Β+a87ڎ^ۙlb&o$-̼HnKHD[_?p$@oeӋT<#Vd16_/h@rsO>P TX}߇yͪhʮ1@܈:TaYϫ?-֜ k,,Z'WF$.\'T!տ,7iC _Y*hI"R5/8ۇ+L\V}Gr*9pS&&Wu6%DP<멝 jTjtW" 7xj[h>nlQ$ 1t%4GK=蝴';娍HNLMl@ЂL H1:5o+;[\s0Cɶd?cp&y=Ρi d6f7Ƀ;Zoc7gP򎸶r btKyN8δ:m=%|]}poX[[SHlpBnIpTh&`zM՛,Y#?n_"`v`bUCG7K)}Ȯ- wq*68t5RSu8]D"aTn03kI#$ˋA}L>/t/,B$Q AC.ڭK?:|5ͷ&{7? DV}b?I C>e:a\aJ[%"Yr^ *H^;ܔpf.'.dԐԃBSru_*dc G1= 25ҝ`8ﱛR!9&u;39w=ignr|rRz": z&hz0u" 4?`Y8EU^bZT ^36x(zІc%ډ0 ŌK JFڕSft(eaO =B.'J12FV?~0(3mWA HB1VfUEh'W& BqZNtjhSKD4vԃ4¬ÑvÌlJKA)םS]Tvt>`vdG.. 6BY؟fS#b^׷cV.z P':ΚafLXP*-f/%9WnCl"jʲ4`MX$͑s}*:""h}COKamO5 7@C]oH:1ri&%qlaҹPL% ô"Q}>ʬfF<<=]Uohv&22Vdń˵B_> [ čAETE"F-.+~ʷ%/bpE4o udQ"w/5׌Uƛ{%:SW5qٳ?6 @v2(? Y$=ϑ!)]"kzFJx7LOQ6g2`T/|I4eJƞj l׎Rq,J9)}IJ5MKuOoPx.jZM'~WobL r/:]4#y&O Rr-Cfռ.OhhU#Ao W:%}'52;:|/^Ϥf`,xH;FK1C0贜27~q|_;,R kP(AX;Ԥ`~myBHT[I3>۶MiNN17be&L saU k aCSr4Ny0` iȋ`zK{WNˋA@1^ BCͮg~7J ECKb]=a5Bk{O|guGN3l;X Q :1! ۳y E8*8i7<_;ϞќX(}| .;6-P$^}]+yƢGN8ؐ$Ju}NSaRTlOHi‚Lw38᲏=O%BXHDYTS"I scGKzhtiu/^I^T%K3BD_n溮i&AgnC=7oQ!U3 mX:WDԑr# K"d6VJ^mB@K(Ο#\o jÁsoc7{6 m?Jn$Z1:߫}q6c֚tlE-r܏8 phwW"SʊKŢQZ[ s  F[]M AW(RKP@Z,wHQe^Vؙ hoX~F2_:nE:oGSIJ5euTz 92dDYWv "84%7 vonΝ?eSNP$xK^a΁9ɽ{k :& SHLkgZGuY#-ι-o6\RJ\d%GPɭ/NM8L#5-G/ cyr) lfJ>B@H<>}!Jؒ9d 1_փҦ*tSB@Ʀݠ$B,V"lE/OHUSGsǔ!j[Bt@;75ע:Qe׷ϭ&"iO588v>}M|ϝjHWm奯^C.nƠ~lTUI`F^XGOZ`!] re`Y{Et7bxB_,($T#wo76 {ilNFZT+F}"'۸-z *RIěOVckØ8=pWbxK\$M+1"-=˸E-l&9ؑ|Z4@ M\Uɴ;)zu`Q[ZVҲT]T(ˉ*ɳ'@X/0m=^$OV/V`Da"qD*JOTឱ EZeZkw3 7JCrl SjvNJQO`7:e}k!IxpZPeum*ȰR`vڙ ;Ǭ]ajHY=|2֩DL_ < CPиZau&qT  Ǖ$^v ?:džCqhYGOȢ =Kdjfiqf@<*ڶ/L ncѷtHi?"]2L2iS*觩/-G!1rHdf*L_(Kɗ[!Dm?.f}c*\e`cQop Jy*oU-6_9T\̛%͐a8*UtA.:}X3L٭U baD8kV# JC 5u4 `l@ 94&$ .:lZ] ;bKJ@{ywAIS&`/? ASQαQa} 8եx:6ZwTW4&+dQZ bIN| J-m^Ŏmo:ȳ}7v>! spcQA a0yt΀P|6X9)o'^If\ Vm^d:.j:FËo^[B`>;wvryfD ȿN0#7zus]c[Q[OPE&[MW PA.~i Y-<%Kz|+EE`]a؁9L6oh!zԠX|V۵ܕ#5^/(Z% j5a.Al7 x91S,"m<䋰JD4TN#ȚZBBgA#ݸ;]!+)|oJ"@=vQ17ӻYL HaS@U}o,]%s*r_!r~Tl! ]97Y.JϏ3)̋GeqgIT8ZC+Ǿsf4{E{10NpWmblr\7ıHXהSҠiiPf $Z~L>{ĩö8x7р0Dmo d:z8Af>ة9jrfUzUD^a s6 =88*{ҫo?(TǾck`Kθtl_qpa>tq qOQB$mEn-?.P+ m<qryc?-/u"slTvfQ%X֕!Qz*lc6E8VCA~͹GiNDOҏaX^W7bMZVBg }~|V#0ՒIi+?{u]FմQ2A eg{o2@O6Dk\3 {$!LHI%4P"W^Hzc@R ÷ `'<˵ER_ƣUÊ -,JVn #3A`A S/Vg9qXj/|K{xdl\N9vwD;+U}1.afeD~\YvҦvM4aZYޞ`eD\N$ Q-\8_*V lk%ql#CDb2=/_8aAu졀AeCҕ; 7bo7Ѽ<|{N]qQփPY^28H|l4+F-s.ia˯"P cJnrΪa^K=4_ɹڣ TG)l8!|}ᲊ/qX ^7i<9u8d;)P{E>ge.aʍ@[U +8 hfQggk/8Yz1* V}!#ʃ1AL@af@hpucꍳC|̽eʃfFW(&*1~2JQS]! Ak ۑK+pW ;:2Sa" jr{x뺩K8oeG'*zNxUDcǕƢQBeg$L E5ּ 9 T KhH] T%&pDEdN_r4B%|& ~L%>v,:vdV`veG;S~ןhAg9{.>9/Y*,L!5C5_fX5WxB r ~ޛX2+p+PladTՏ?dyP7QO0o/Yp E =ZqiOIFobGqN8 0{a7&(\&`rܶRh}fkM$Cqd3o#;uTYcDty;XqX3/Q"ɯ%Q3@Iu)=m/m&BxA,~=pYqۦZYa֪4g[ I!"_-2"cB꿟^0Bj#ΫAW;<=k 6%75ph?ߋͷ@Aii!ݺV:gY䂌 +LQłnLaS}3¢JxxFiAJTWGYVvd/$,O8/AȢd0ҩi-u ( U㻶 -dH_%adbز2$X>b'۴pX[sVW-"W:ws8=sӚ9Mԡ- F3^po@gn$u4Bem_TEyf?\Jye7ѫ%TWM,M_DrœlGhQeH'b*̯ݾkW#޴pOA>30@W-Zo2pz*-faX5ՂMu5Uo,t(QU(㰸޲_ uxDlYԚ'TvyJcio PFz2 H-YZOp.T&K1ˀpje SQDV >-L ;D NGa</>}rJ_AҐ6-5T%bsN3u]r:_yC5/3&^ʴi~I%p[0^'-?Z& Fr ,ȓBu&3` adE˚0?XjҟuNִ8(3KWKQE3ko(K{'^ ]ڼN]V<1Lrqg3S.4v=?sh5BC֑3sM&+3T/㛻Y-w oHxss'2,:SnP9ߕ! xTaR;tkKypED sdesu}:p fsɾ%q]|X#~(K."75ݖi[@k襁Qu5 '{FZbG)[K<%v;ѯA06 ь4F $Ujn[~4Uܨk=h$)W&|7XOUOTHnwSP2gwG ,fZDfV[P:M_WB"^UCkҪϾ^)kb%yI:4:B{uQJK]iSDS]vM7UNpaƽI Rݗ_S?Yk8`?eoJ 7Viu軒.VZgdL5ӊgZC20~%¥ A"]fS+LFNZ@c7sXw>t$"\Q*#ǂ:bΡ>`u D^%ҵEiI¥Zd`ؾlLNoUL(3O[y>dhsU|J!OI  SY[GcSE-#2>wHO#?qZ=O! }{ED/_/p KID JPno]9@ vtM^P瀿 -^ы. 画9MP^AM=_~Hv616`!zUw ī96}$XYCjnc<]m<1++{}>ǗBЛG-waR Ԛ"h˗9PnJ@[ \W(@7RЄكmAK]RSm$ub /pFj#5:'x 0eyʧm"ީ0kmvzT lƤP0i=jކpN&AtunUrFa"( SZJD^)=CIDc0 ޵ Y*n\7) Ϧ[+b+iAT"q($=߬69z:y+TMH`Ϛ6[K o䒗@O.`""dǯOR]8m6x'ׁ%"5Kq1u@ػNa|(,/*Ѹn RL~", =Ye6rN%} ;wV6ȁ0 w/2ߕhCq !X@26ٝ^FzbІEc^lZ~O0 (Gz]ʂımxN+sRpQ_-SACkQYRgtQ+Z*R:A. ˆD=`ń2տsw!D0S`.Wʂ) vyvO'20]q gW J(֘m*l wTe7cBԒI]?#C'-n $lAH}΍ў hN?j#f`lH]%)SpixykI4ob7oYඹ):=iF;XC Ɓюٹ\h<L4t̶[+5P9ؔulgi O-?S\Sxae iDP[&VP_>yA^:Ms$!;z0[rJ-WLn q Hۧ%.~n)Dvi96[”MЍ)'-%۹dg%Py5:f 1 ?B{mQ7I]RQ8h֨O+eUI''z-"6o pz̈ V` j$•O~gˣG`^9롛1@k֓M"!qJm,KZ|nߟ6Yӓ3@H)e͟Q ^P`T|yTa4D ri/#tj"/LY%loJ%$7RpWV%'D_.%~}K8-V:nC%h}^xus?\ w#RǐZjbRorTFPo3ŜAA=`AǧdImz hV?C 9eCDX]~! `k5 F%Pr=_RM@Zvb\6@EL칿3\ 2J¹ߓk?/,DF@*Ba1Ob?Fxr8\y!"L uSqVWC M$Rj+ 畊[gF!ʵȧ |? q_|+?Pcr5uÀG^P}Dkpa4owg7O=gX<nByi~f[ጙ'A# gWF"M~sd}'kױ C53)݄w0=DѲ 䴏P%_,BfrxNۿl⦲Z8c[{p$ m8^or F;*b\D P B{YV/D=N, w%9PLH%H.--fEUD>ic @M_^>~wJp 0 N%DnP,N\Ǔl/4a E3E1ȻO)RJ{'[t'V9j)}zF=U ٥s?ؾKwܨ(rJ2)Q~B`JC=?E+ >sP1Kz ZWV`L++V5]V@x-xLS.Y-\zջ/d¢t/M )ʼK gDsi,Os$b4HBQcxWz.jr/cVٮ钝B$ rAe*hoJFj32W (dV0* @&ѣvo_ T,۝G,R֋ On2i"ki0^Q^P<9*n;fLt\EQe#d2#;<)KCOOΫ蟘Vu*e[Ba"b H\.ɜ-uV|=<*|P@Sޏl l\s%i_'N)Vט#ɩ0̹l_s8Fj଍f#b 0BWjI 8a''e&j\ 7b4No5.q̃ Mbz[BgC>V;bud!r#8C~6wbRRqM]xYjNhWd*sx鰟T:"fd{rYFГQw~|p']\ƀ+9Zb*yGMx+zq}{3z-$_&f;73G5,]!"Z |fZڌl^anm dRp )zVtS_J|)OQFQdH"tjV-&&qm}b37( ,Sl?fHv# G=6^*ßk+tcǂe1(_p";ѶA~MV\ЀunJ3xf&`f&U6=1ĝ&5ݖ ߛ3h=bQ;D,s4}쟟kY JAג8W\zHCRsc ak<_ 2z9'AƕОy'zu\bktڄ*ޛ$~0"+]'2Z3gy*r(Єu c>bL;Gy2AP솩j,+wU^𣮖|BڥVw0dls9l<f"-}#G1I9XvK.0$4M^T*VVol =d`tbx#.YieQ^=_rŀލ^vՇ^2MhP>togZ+~R};o_ [H&o*[ʅ@bgZ+^j&KU} W[hBDEpF9<) *uӼh-F̔AS i Z}G:̠R1X_vypi_߃È"bwk0E'm rW赌 r40׿TUeQ4:|Yҫ.|^b&RТFӃ7p{MeE&W?c&Rk{8ЗE@0j3W74@nʷAC,h8jZa4b _k%G{ZO5 DLX{U$RE[e'n:[ ˳D˝V ah'jA_[kE/GetQѺ{ۅק!b9}`0;"Y{[ܧ%ku/v{4"Xf1f%f&9@O9o:&r jCWˈ҃Sw:̛&kmLh.>4y {(3nϨd9]L\$STyn9B@@'^8REu,.*L_ŝ՟z@vOIr~bqm *'օ޼)pjE%pG.`ŬHQ/]8R:w@S"t]h`S"fzxCX@> ikIE8U+ TڍW pg>7ٓʽ 4M8eZղ=aZ$S Dud\>ʔy׆+\\:9;Nz-H-fE5`^%d);?jx1۪[-F#3tIc?L1_ȋ LV jRP,>nHʱ0/pdͮ.;`De;JX6۴w[|מRR9 ݬ=L%;čqk9K@U%TוD F$W4;>,bq++Zm)R#cc4a?jg ۡc#]yz N g7˂go@d3ic\$'i)_wXPA3en# yU2(|`^C$y.[5Kwbro{?edTzJ Wǜ<  Gx, _'sO6,t xDwdb@41CՋ>DyQ;@: oSӦ,Ptdz%񟻇]X%C7\/՛3NC^dc.e7_u m?ox=\[qYZ2bχ g=!l>%ޜC0ɛ9,#WdGrQQ| qR +y!kVM(La 4F~cݻ5mM{#!WoОD5%8 7N~l􌀎]bL( C3ާWIDMcd Xgt>!+]y o얬/h/C5*4ސEİCliz5DMpĴ!4aoaxrQb+QiB H7Gs #Ms%WJ0 ֈ09&-2R7EY_tpf uq'fI/Q! "Go3@5tmJR-ꦠ1Rh?2w⿪?%L#-^D#ZU|8|Ɉn^pP?1|GLIIBM+B:yR;{#~<}h0+\ѕ+*<ȏjʘ U׏rtf;lGSE!2ߑ0.`[mWx@j7P!7@ q*='l{wN)a|Zꨝ<}X~vive9&2ψEL Pl݊V#(vr?MFL!oVa[ƦBȽى @O"lrYRV*WfFON +*7lFy5 CvPi0t;$bnsօ ay}J #֨Uo0g%\p%pFdݐr+)HO!;90fKYJHc :c33OT7^_3,9vG@>aTaL^&(ibLP;;8!lZKz[R'cu89-S=., &zwci~{QTaQ" 9·wǫjDn¸4_eēY[/l9Lܙu%5E\.j vm.4~; a-` > 9>& ~4rR gD;@RM㏴]9@p4P׼6H1^Q @Ki#7~ _@>Svɫg&Ju !r_ P+? -痊 щ–MxPP &EkV3w!HTw" :E\HBQJR:%vtLM܂䍋]]Yc˦فcJ-|KUe |j:p+dKik@z ! OBl-)Ȩ٭?ii# [8M`)4>bِzI.2xmqy{\AIxcoYU~/VEP3n`V fo0/NR)c#[]l߬'N@f`"uv>gEs413ae"[ p%PEqp sTIqG_VqQ|Z ݲU?F(_$l8=  fָ֪_zF0muKݬxCp9Ɖ1P)fF`0:v:•/-Uzc-"I#zf~uW#3h=4}l-ByV8+T%:M*b.;z7/h@GlEnsg:%;C؍iM62y!FKZ:|;ԱN"oȀq"ڀi]c-LF@fd7BZo\uǯuwHGHqSjؗ{pԭοt8l+,èܬWs'F i?t#“?m;龄f5KOnsUY>O~İM0-en#wy Y0>mva$%, 6sT]lCѸ׾͓T|[^PQf)<ј|s^M DzJEM@WAg7Jgz"9G~5^@[8"1ERAv?~Ci9/ J*Eiۏ|ARNPI'^0P͠95MINiL~=ܜ2 S[RKgC \KeQ;0 #G ;T:uj,ug3dpAEf5 T@v*()1Q8eo"lf,Xh2'i~h v)aWM>r>Qd Ag@:\[qMq)na#D#riz "bZs[;#^ODN6@nvy0W :KXO[LaElCɱzX쌷Jn̑ djluoM`"ԸCNxƆGd=l`xQi OF/hs8utnQ6+7B/@psw&f_J!`~L;+LPYf {u]LH|Zev96tK(b EFWhmG/?NR7H S0RKgu"ࢗkX;9 [ny e{ʮUݼHWmEP[Hw04F^D@"3EDi m2k˧lxi:T`E]20^ TL+Ɨb?=k4+1TH0B$#s~_ f7 ju떯nYW7!3PQď@>Ck*GC4J/ ؝rGXm/=Bݶ/A_1.Z܅6$\HxeU@>/hD]hU#H "ˏkHӆHǥ'~ZC&g](YE霠|HV#t e%Ğוo`}bdZ,¹S/A2BRGuMg8F03Գ 슫yG܏#8ezM,Q;bW aJ03sYggpa'q(o %p? ÈHeA®+6468Zݾ!DQ{g\ YD3 J+ǔ&+xmY=p/!two1efrj@ѹS*SLd"P]!JtG1ev筙OUìґY5%BRxxf&qp{ύZ8fJ soObXJĴ|7S?{"&&;8Q0V@h T^"u[C҃}T>@5 ES@CNO2~ͶԪ"j϶Q`9 ܳ yq&r_bn/{rJKX=]8[A]<B\Cč Q^bBnBNbc:J*]QdA_M} kˠ)ꀺ}Ş=DM4m"fqƇuy_gѺ,[t,JB!NEW7>Ͼ露õdh\#e5p7jQmfpGj?hn3Ng!|{]ĥ1ۄ})}@${Aµ:XBZё?wE= ؊xnC\ nJ< {3/k)8 e$wd%ݻ$ϫN MODZj&E7 vΆid2BF:0a4Mw%=8XP_}.t ~-pHrhI v1U>t`nbֳF ſ%IDe ]: #!)Fi~EsK,dX|tּ{pP!%PaIaNԯ Q\CN V䎭?dJ%rʻUu8~pUsJ"b/x! b '-)Hwo:lEqxP"H)ّgۡB, L@;MA-=^͗x ]+E=G۠"^+4i5 x ocw>5|X6 tp٫O;(:2;6QʟtGQ9b%Rl0z` tԓV;8vbq&#/HY='jttsGqXlh-oWh@ff:1P˚6q#**ʉam H,UJ"Upl@-͙ AN~]V JTLSvVXSzye:|_[;ַez#Kq̟?G`Ot&UhG72+4ϩ!!9$^8mG`m49Y#R4uQO!W0<t:V~QG$†)OD=p}ª5e̮2| Z$ .Ҹpq6?\:>#<`Aʌ4W&٪e\^ +nl[3GU?l{F< v{ɎUES"$#ogq y5jTϫԡɷSIhH0q~)7n4s+p$zWKhh )ac\,`92|WEGD)Ug >m O$m.$|M Mإ:'Xy7u&麙Ë;ϙIc\hWiBj7g.`&6sryՆZ`-|}P( Ծ^D8u|cZ@yHW[݆q$-4660`{MQ< ,<9n a;yu'oqBubz?`S,Jsc#|ҏ{E2ٴ&؊oq=—\/A] e+מ([ `F\E5\MIR{ZZi{synWGJB̀.IUgOo|*Ȥxԇ >w5V/ƹv<##8;Q8,sjX.Q~ e +O7B d 4m7|E?e8'@w͔)[ }: 0s[4sd1xO~v:]|ͨ?!UәgH}^x/Nav@t`*pT9k!_IkiW/Fh&Qڡ-=|a;R*P,>-t2heɃUVt5V1eqX6#r)1 #l]7͔܁rA/d2 7Џif QjQD霕9Ż,LxvkFM].~~ 3Z!G{`FBv8gAen8 4Ru{X2a4TG=̴zzfe㙚gqXME8a$L@!$B7 FDEp9"RQUn*cH^[1[XאX/ƒ OMay{xWc1)x+5ŎmI1yF ,-b+R6k׹]F/9yt uGρ "D\|KOū|y]ZFNBxA{=HW 5Vdf*bפD.m'zJJ$^MF*9}"T7 Ng. ˶g#I.k7,'bw /VMS+JWX AHD'}K vmEKϭYr@Oܵǰ ?)ǘ 2ӊN]26+=M`U_ѭ;"yPem\L\U\~ ?dJ?SRuY j.S63%g`ZcNY Q$-oWr4QB7k~#R#kڍ NrRɝD4Ar_¬)] =oJx}"lB—;&8Wb~S=SM@?0M2VK iXX;#Un35 w !t {NĴ @-x [\NT)&툵|] hb֕M]DsxʗC_h՘m(lifmwoFm_ߛ7qr|+#'HqǨŇyY#)Ȼ6kDV=9^0,S'ұ4w^̫c]$Y'v]RF`$:ZPJABzƟGp/\E%?W;XpWR vo߬b*nq%ϛ3?4=0}La 5ڛOY#H=$XEW7NL֨g0S,(~cz8Tv/7lP/ &Hn?$U[g )ĚrW;b[>(M/z0JKnfC-"\RۍσOlp;yVZ_tq=Inqux,a -H ąf5 5&?[~Q6S_}9 d˰7A@.bh2R>x6Y~ 4w(o𛓗'+]ϫ]9Is0."hX 02((bʹAt!_¨mϷJR;2x8uj ?;f_ڬb?B!Mݞw*ϼs2[~y}ZG\!z]HԗnJ@r/2!=/տ*I[& Kݵ7OQ!VįXֲMw$6&FeUht b2tbba&}zE:dEqVƱsQ#L'Mtʆ1e,a^o"b&xEY; =uz̪ؐiʱhEA WVڦuKaG]{}є>a@Q!zڃ™qT&V?K*[lׯA`K zXIl%B֟#[BMF>], *s@Cx힯6LxLX_Cπ7ם fem^׈6' ̦;*gBL2%q~F;%׉KGpt u) ]Y~-kNwda g~ 8u#߻%iNW8%@Gy:+|\('6,"*#m.t7?()nBox3=[5j z>qf'¶OAzl NYhxU@|7e` Cn$ 'T1QseT]bWP/g%$ʖc6}5GV)~Jv?9"&f`Iaxݽ;׬S9],lmav̻+7[t-m&gD?ߒ]\3+㐱@dF700 teCD0tQ_:{g:8|wSџ#^FZu.@ҷL5ӆ0WC< 2/ 7 ;zsSX@@aX]!TzL}yGN̮qx!;_Zш&-e >[]%9K!S]&P_kSOCR\Ϳ(R"KB@3<HferoZ6I(^l$ˬACmeO!@ܡ8DˣV1Љ@zSiӜ!8&(0;h?/I"l{i]ko3#z Yx;e?IYo.]93o|OTwc缐mfKGv46{;56Ҙ%1B"4U@XNR>j;D6.o\F/eS8-ӛ~{j(|[˽_/(exYzB^Wq ty_n& gZ12&Sٴ&ʽɄ:9҈%*9 m"o_Jנo{ץp4`^QV]XY>I[$M_1uzq(sYK)3<9pEڂO A{r"xE\MaDaņaR‡.1 ".N@Z[g:2!"0Rm$Ml}1_S'ԾVAsKtUr $yr'G.o $ マOSUC$%] vșwK`\Jd)&avߍ%ҡbk jA0K,ŏa{䍀LBo<\QFloLqZ (ȼԙkJZk5iVeo/M*ES8iJPɼHk )"2E(~LyfNbd2ѳy=B&=Y ì\zu⚀4,tX/OOٱS$O3\۩k8#y-ZoBxÆYq˝0 K&] A ' M~5zˠ =J>,PATR:@<>ς<-7z@~#Ɍ(q/[v~[lݴQCU2Rr1"=uf;O)CV=hʡ,),U'B{'cgشWs`?0j F2Хq%VQ1_T˖ztB~h`k]j)-8[M&SR9$A֋=^yjј+\/g |=F|%ML;dxtt?+}(*s؄BydK=H$JJNNRf?FR=5fK9 '}K$K95g%N?j̯\WGz5CDk5e9eeai2YUAFM B#P ̲D@cK׌AF`I.-*ds'daU ci0}|uIl`"ŻfFUۍOJ0[ _W);RTak@PF4YyXxmq͢b-4Ot]EDS +YٓXf%]A& PF-bw;ϓ Dn1 @$HqM%H%֟q܌UFUR@ܑ_+Gck;Yᣝs~/fy5LHLc7xCҩx(dz#gDtP6[8˦G gIt; zt2dy]fSR|t{zylo(0QyT %|JJ#mJ=m;ʏxu4*uAL8(E!Bl")nb5kfMo Ko/o""4mgMUQXUMޗ .۶Ox}bc="cyN:3jM {nYuMP"3~\hVF : [cCR|&3тwGا`!l.yCpEQQbks"`7Ok;HN|9]z&U"Nխ822:v`~ZS^ֿ^ȈdEc_4gT|$g+D۠L8#_M i k`zo%N;I(]g0Ft|0ET7 }ŬiƴʬodA1*wd^][0ZV?y3t̕nh=O+ 1^xIhZ2,q*22=g86%M "7s%HH6k1DI@OY8+!n?$yQ'5*aGΚ@vc Buړ29BٮX6db|8tеXT1*nxnQ&y1Kɜ1qZ1 LW!Fs \Jc%&_Sj]59q bSy(Dv3 P$GzƎVph-(pwp>a*6* )(B`r딾Wfs7$P/gF!=+xcIooƃ A.f@^]K=0<FYOݛY?}EɎdbk~e YEf§D5 5I8;AiMs34>9f't 0 y8qa^ 5ȉlbcUD'('9OHf.Vgxc01Ǡe:GH) -75pDkG2|$ -x7[xy]jq=ubcRkg?C? 0E :AOiVWl!@KT%lo0 MX~Y7臘W RzA0*RI 3~=rU19R?4yؗuh75#wZyrUJ`*Ap箆d*ykOb5{lŧL"uaA<2xf3}@qb*{LȎ!YŚ̽pp~&n^W'0W [,134o5¼3ҁE@0UYi}O&|Ҹ+mZt|aD_|A;E(/;e|{>u흴̨ۙmB6CU|BX IoQfY|*A$6^E<|V uYTcaV=Z cÈ\Gq7!CĜ/LXz1nK;&oDwGQϧ9 uĆP@~!J[4̓:\S(wS*=p%Ʃ+66`ZrMԌJﶷ&{0>g}|12h1%gWW1SEP*2X4# #l ^ܺڿ2JZdhuPYlhDA-t!P3|blJ7VZ-CXi/X9f P)g$zֺ;]AQP"$T,l.ϸa6Cn"cJR >7mc(d"hKq {m~n[gk"Z̍\|<~ k~0i) >Ƃ70/n+hKuiNA̱GŅ P;spGzBX%a t4etRx:F ϸJ?V"~lvEtlȣLL&4bv9 aQ81f=`;_@GVZ &`vPk^Ut͉x*+Lw3?8E>XvLJ\Phj/wVGH z6pUt b{(8;?ԉ%KͳK^:Tƌ=:Fj&u99ug.A-HWUWDcח4/ nz%6H_R@Aeg6mKӆh 싔[[βQE3KGb L0,s !/ag\0I1dFPW(CW,B3A)NRIoYq?[)0Kz~?zrK v#)ۊH2K<0Ͽ~2@"6't]S{;W>% ǨV *^?m ֱ V8 6RO~sTÛQR8| NE7r^ x/NF>z,Jwɐl|~qW'VA5Ԫ"Ndj}U2V˜mͅ T .#mM߃Jl7xXii뷪in# & bYGX6rd(}G1(F2̼:E4>z_WT@j]`[gWl2$٤sNx7Ckbs~Zb | KtV澢6!w oeLI*V=`v+F> f1ҷlSθ6tݵh'lh2R.mQy$aGݾg:֮;=5.F ß{n,t9 (iGdrr5 c|۽^I,? #_\Fy*%U7C-)hXԛxPe [^JܱڒK[BJ-IЮfNT(GU eԥ[ThO@Z#4J A08 O~ά͉ ~F$u20j j2rRK2ۅNqbI̶NQfϏw#_ 8_9''-DnYC-ڡ"^9bn719>hL#nܱЦu_ #Ⱖ,JQGEjnp;~\tKiZs$Obg1,ˁ{V|RIL18xÁvystz;t %Ev0c^Ky$(j ߊYIo{*tV߿CR|L\\<9z1\ĖF,*;4 ҒTyvX9gp3ȠY W0Z0"vyjÕvbV|9JeL鯗0{[2'Ǫm`Pjwɭ*C,:/mot!NTXh.ܾT⇦-v76_83+տ7Q}JOH Q;:;Ԟw%f PYnjUs=,+Si"(/ZuW?VKyÒ^X/>9զGaEo bOfsߢ jˢOW ?ZiСǛ-aޮ*Pj9w+.'yZXǚ8ltJnbh_#p<9XBt!Qr`ësgBbk55kpJd~KޕUt׸҅C,qHKRuvI?%bmZ8ݘκ`?3Z|-iB᪢s;2o,eG pޗHlD&ŀ-Q?ڥPq>3Xbk2y(-J_cY㷺/K l}<՗)Pװ]{.g@Պ. d~}ču>$RmCR4q?QTx=,m0(ib-HE7#hDwObMBeV۔\ mW~%hXs/t% $7Oj7gֱmTa$>R+0P$['RhqiGmaD ۯAu:Qshrd^legtd/J#vT_pZdzv,Dy}|Q$3"j 3B0y9)隚o+:oPVY?l+,nOuHQ1Jӳ%M#ߊ,ƪ+ٵ4"(.A| 2yR [d¸d}{k$6lu#Un -&(^NȅSefZ)KW.΀JWwjA9W~>CrdKž ?10MD{g'#u]g9)偻<⩊75Nؘ\b: *]7QˆJf}r^X{0,˃?_8ڡ,p,=dXT5"3rcI|<.A؛^s; W5icFH{._"2cvnEDM E쮒":! |'|9)b?`j%ɫqŏnhFS7LY'2!LY>|Rv^)sKmZ_WUBf>P~r5X-+gIqxknsF &Q3tɧ>U&~xG8N8L0Mi'L>>*MT BQP]匍*7Sx f*:!АVtRjr%fqb<$-}漍fZ5 Jע?=5!/ q Eb)$[je^nWJ2pRӷ̢D?JY5FRszI@o=xpd2> s)Zg <GS@[L!ae)ǜ>DVA}g^X30+ܜrAAEM/2'&< K J-ys$~ ]^%ao6cCA-4nW _\*Yu[U`1O/S@ocя̤f>L͂o$Ônq "ݏTӎ=I;MީB!5 /9كZ*F"7dÉbv_HvfcԬO` KkV{] _ ޻Na<ťx4 NΊ4 'k$ 6 !>zEYrs|*pe_KNϢiP/: dQX BbOsr1( ]mt)y(J\|C@ÝTƄ\(3(W\z %J#&I"^ U`-MKD㔓>hD 9Ĕ(" <-7aCiDPJj.ͮ'lSʙ}HW "EgLyuJ1@R)!e!z)L\|vNi1+q.oi#OsANaMº\ܶu?Dh~Gx?4o80EOlgv;0]Yc=جfCH% JWvTw.ȉ.ܪ66kY~m,Ƥ(Bcl!1_䝍 yE(k#pFcjh7bXn'eu"-8uvIo!X8y2gKk;u%(ku#8H#Ei:F-yƁ},c-e2Uݥ C\hl9uip|w2Me'w:[ z /un噵]*|>M L.HSAdYB,$> ]躉~xi8u] nc3BZ+D^^vV=a=zh^' RòTоܷfXr fxA_nNjE*i`__ɁO;ߎ]۲uq&/*AI|EX pL{ZL=@y6케QNzbW;,T; )47XטJe @lU } l?FPatH^D\6^:?]3[nhUK漻>[!˵.;Qu"dD55q<1}g&a_) ܑ 9J91ew2.q"t ~/ǮjKx:b!tܴ5T2.[Xd j ~\jn\wS@ d\V;gV.!<|)Yhn.t&VNȃIxhwGt55?6tЍ%gs?fplCA" F`V?}]k%qinкnkŠW@|:6V#.Vʇ]@`o#EMsʢm|͎*p3R՚F5_˖FI 9TȾMER]cn PO-l$lNgEOJ""u -Szs_08BvQqG_ , eठ-μ||sC* ̏w|&"eA|m.r 0(ېm`k{{{u8_vmt^ TkGƞP4_}JЦGhHδuC64 ]e昜&:YHA/}'t~Lnw@jJ)¥4et_CEɃd@RH!>4Q}i+lrO-<|Z^n:UT  I] %c/˴V= uXUXn %6C퉜Cī#.V vŏUH},mxۨ^_mx%Y{vn 1ӾI5;s;JYTz:[ jfcJl T{{ϊ5xe/ tĐ)tUrU5QP0y9Y+qdaqឣ)\վ8з)J9Q^Ŏ$a/ϥn^8y d7"Go‰vUW͓todpa6CH5i>0&>g8D>gKY29FĕpyGZ#VQD "g  vaLPm3H`ux*E&qܖH^n3נu^Ȕ! <)v' (>͆*Rڿdu5!pȣu$->YȉѤ,7x'ʪ {õ@ݐP.7(CVΫhNKү$G+HSDo[e2([(`. 똔'#_v2I$ إdwe0 ԛr^OfѳLu^o ^8Ŕ㑺pǤ꼥epGfR?ՌDcgatDojb#lL)к1mdP1H: W}9wZJ>3I@"fNaj۩[!%]_I[Ŀ +8fEFi;vd.'>rw]b:CC>n+k*]m0dωFs3Q]qjRyzP* n4>w>ϑԟ٭vy싈 =Ky4Z>ikю*}dس-Y)bwdj $MGs= +c3P4}:e]$741pZ edn40*n"06? acb7>[wnL˦r+rE1fF$EɀtT#u~ d0)"Cvsb?eFUc3ak[vƶ푭Z(ŹI{5 []nD*ߥ&_*__kqk0V~9 =7wHY1hILt 0pwS@ًi]Oyl ] Sjr\Q :dz*x9˘q`Y-?t DɍQqgcfX)`v?ujzI}D ZUHs?*hA l9l.pw.Qf0A-{Kt\0E wvb\KIDW|ePmak'.qrͤ"6a'Am!'ƈO `%b!$Ի>שuR`Xc%mrP`kr1_]-8XwgW`of %8!cr/Si5ֻYe^-|s)|xwN}_igܑ!r  `"0%<!9;x{YZ檗ljyE5bai=J^]h0QOK[#4ź<>-崭 ( ~A0ŭ"cSvsҭ&Snj>Ӌ$wڒ<(wY͢Xݗ"]»&z#^9XQUY;dzN z?+wu[ #y&WOw/2w}Ѽ.bՁU4~ܹ)#Eu7忌aTꡥ~{+u7Wr! X{|!g&XN,r: (R0p 5A#q_Xߗ/2=4lUcXq54bNI M!BIY \w<TV$:`[RXE +aU~ԇpix<} W*ZA0Q^q>-<|:TkgQ#-ZU"$E7[HˁND[Bh~ 3| QbJlhrY%&p L4T%<4.VRIJc'$HUp"uв0e4Y!<ݢF-Mϭ80 HNux5 TNHV,SÃTFuJ(T G2 @`bU7^$̟bz0$NLzm;.c>#_R?CoKQh6^ ASY4brnQe5nrLTgemO&C@_fd0k{1}dbX8i'Xєꂩ~|T82wu4>$3_`S.ak3vRu}2Ź}^gP5P rjczArHN p)zTa^NoY槈gJZ[g1_-0B*j&:{:~b܉5wW3jCE0;Zx'pΏM6CR4}ݤ6ؙ.$flI&w UcME,j.c5*L7uuU`A5H!%.b3S g7!jiy)k|L=[AIA%)!J L5^ 7(̧&ܒl㇌OG%\ uX?,2e :Wof:{4^>(,MPs]ӆڠ%Qٿ[Z'o?45jK 9H3)߀Vw.Ф#rny0(Kw&A0;?K~ZmW_XJ"K]9)id},DC11HFc>˓SZ'`}Iw{N#t$.[/WjKإc@s57_rz%^{`;47R\?' K⇰ˑ*DDk)`SXB"ఎ @ע(L4AS =Ծ1>< ''j4pپg=FS߱$蘻>YNY^ ³&': aP7 ٚ6kw˗ΐ#k-JOW%N"s &8 :'M߶XbDAauՃV*G̅Ҋm85|߃񾫿Xzr֕"TTEэ +2-ڑb~K7*~Wa:t h$/.UzqHZbbᦇ{Q8?rZ;ety3^L^H?!=F&4hG E/ca%Q[l, 0qHQ-Oi7t Z^CTanawԇ.ԧ=U11";޶u>B#b8 3񙥎o'CˉۄϤ쵃^1tE*U LsbHL [}h9(ReAU?.E$(4 [}e { ˵0ԦIt%c{Jx2|^Ur #FBz$nMLޒ,iPTYyv8Kp_3m!fz+s&?1 G\ɧ Fb 2svcc6.X?r3Bőȷ܅=`1FA^>^srʬԬysG\gJP2 'e`jO9'tbJFC{+-g&0R, 坲P+ |j' B@\ clgDIr>RlUx pZ,EnE`*KJ%re> EpȜlƘ [ǐ y 7>ƛ6/9u?wWd RhBf*Y[Oz~>A`gl8I2H[ƲnW&e6ᴮu4t^r0)VeizzEq띩v 谤" TE0 P!xI S'p|R Nyf݆(%7~7^?xtfޞG$ =FcB!A[+JonETrH{o}L ߎO'dKv#ISHj se3Qktr@g+ACIRlPK?2jD ;]Y$ūV (fhwi^SI!u+#r8iTmkx';\˙OS 6Se_mŋl/-we~:4*0R1Hbf-/9wcr>% '`,هXĹ؏=*uv,cw(/~Li^؛t AO&<8=#DG V}tă[S\IiN- g^xt_9[ g8#;w7/lyL`rX%+4Ѵu{ꮱ➳Z2y::ٕuZI2-qJ XR'F r|x<shXA 'O3ijϲ> ُ9sUW)' cM~oy&b\F0-hQ?|W5 37ɪ&FW0&VG@׷P7GÆV9 .! $n¹v@N~񁇅ްm%Q[d*uv 7a`2)lW2k*W 54Ô`ZJx%XN8X{936<՟*lPΞTb+/_r% 'JUr{ >4,p@Y$?1#`EMGm|:8<~ -'Hz-6.mkfĬj^s~] &_ԫ+D8;{vn֦+Xƹnŵh[13rJ#jNC<:Jbґo})1py8+kUvl %4Fd{ZNsu;VE ~͋]X4 49̛rGGjcI­bqHq=ӐG4|:teDdvr0f/ꛟOT4[%;{[',^RPW 4'MR3Z`Ej\ՋՌE > ٚ'Unx`tqݨc;vF-@Jס~C7RWϱ zk]pI}TA- :.q (NF `a4(qT}9 _D$NTVݛp _ţd٫\DiH-%PӭcP^#Gq_Q[Z/i۫$>[# 2IM"k׋jkmWGF=D$JSP#rܵMv'J6-j0:jQ,;|…g-`mٺ:ԑ0=O%N/c/uW?h(y"Τ!13NHkl5%;Ι-Ӳ;vv~DwBoȊ>H1ƞ;̃VN6mu*IqtC= %q5^yE(O%^RS(q+k梨ClU2:xrb$d)9lz"uoq'л7T.\ͷ=7Q8>m%nl1&y˿ :C+ƘiˤbV]dpߦ{ PW*;Kw,HzK3Rs~VG_up+ѕ%MO_7Z~;EZكeԀe@ Oe5\V^suǧ'~%ĠV L ~{b(w07iЙqM@,[oW\ܢtY!H%+_ :fYxCoiqq!qF0T!v; e1B T!uh ?bt޶]7Lf9r)4!5G掂a@n ߯o~}n*k6:ʕWz3yqؙk=^vݯWT4YT>}6 *gSBWס AͽI4 A7^Q)Ȕ \f^yÙU~B(;h0r~81VZZKѠ7,NcZ I,9s]-!]%FZuB֯ٸ꒰FTxъaN)RJ2ĪϾO+s㒐/H*r9n}/^P ȇ1Xmo!O@\7 ^.4E]Or%Mn,݂J^ZYZ"Bѫ1_uXjc֗2] mjg/Ke]3tGW7pn<ڃHHV9(J$E:[2 ǯ2L MJEeg'*IlKMuO=Sii=,$*DTfmi Nk Q2s/^ۺsy0z7`C=dKqMz=u/AC^A+r-`4jZUtzum56ۆ xZXQHbA[Aٲ4/6<#`?NǛNl {N~GZ O3FԠ=kse I+2hledAfwD Q1:RQ˩ffHFd9ip|81*[s'r8+;x}]U]?.yi<:2kzۆ_n7v5Ў<-5e&k ͫa*++簿>qn%0cZBdxJGpF,+O"@QF6saFFp>Ӭiep#JUuO) |\O}Oel{o@=j?x_`bj& M3KF K&ݳ  h碹,-꓇ѫzV.ْЛEX+5YHWQ/a jӨEQ箆~eN R6,ܛn:4{"cB0|(]n$әA)lqCl,$8N"}g Gcb_ S\VFUC09  SˑԬ' 3# Sϸ$UzN!-ȲvbWfߍU+Lp]niUgOҐՇ,;BG'xfU{~(y2@'$K+QӟL r#]G4SߗuQS52h2%LKĂêr~g|-OKb9O7ʔ+KMQU*Q ^>;[*"p8\;@yOm3Vgy 2d4b8OSj}vP%ԭ8)t5 0 bB:ŅY]≼AY+?}{Jbut54]'F#>sD"=r)L0%,%˷8ߥFKTڣ4.Y/o R02WؚI\,#pݹvnv0cTzk3HJ\'4 }b7ZW"ސT|tr/?3H14N2C2_g"L8w8o7UuTԴGŘ]N_PNɄm'1-?둢WF`i\\#@]v}نtNxnQ[2oe:'HRoŠp]FoXI4܉}(}b׵XBVj6C>L"ga.b7&~8(lS>wAi ^N@jt -w]طݽcbԙN9Y"y*]q%2ciʔ#XKW?Rn: LpcM.p~-Qmk݃[̽& A` OUK<9X(nv:FT[Iv}}y D2@<^5rf7^/ӠDJn>mz3[GB"g5`V(@`LmT á2x:q~!+:grNgl1מͪh||?3 ah{^њ1LQ9 "ZktA9Œ ڜJQ'1אpBvg2X/iyfTiUԴoYo+Gh(YDzЁeʲsi<}<Λ̗moPdD:2 ^v_;?EQ}$3ʢ=fc'bꮠاrCk8Qk8g\֤ a'`P>d cv/#z[,Q$MEc@<}]0d$= r`3\*N̩&/qXKє.AZ R3ư+!"$ SaWTZlJU@!@P4b%[s6ʏ)4x1f{h5bok*Ek{%y#;Y4,TaK3#Sq"vB:tsP ]X=W_AúSc?]fBW%sADGOl#DxH *^[(9sOSJTLcN ,?}؀a3iB<zFvTJ_hOm}ٜw%"F\)7VStd\# QԷ)¬ڐ rIcC5UI7L!գ'! |QDrw$./3(Qdg?yŒ6WaTвHK2Gq-(=$)l^(N1qYDN R_(0JQltW8 󪽺r4M-V9!+6MxH>p]p 7 ,f$Q]q+/r(P5uQD}Idd!gLIޭlc ԲǑ &eJo3XH)${Py/=rA#wB#%Vѩ}J<4kd-|e%:$=.)qXWHqAk_gQ,M ޱjd(keFmjԹ̐q ק'1"Y=r$!vE̴MMޓ{Db4Y?i'=4Pϕy n)(E|xD WW|и'Xy*PD湲H]:51be#_4/}ЌvsM{{ &% 2nljO(gP ^; ! *҅z45R@3Zo@fD|B#>9Bc>I\+nGo^n/Tfyc#;fMl̀,Fь`y5ddayܯ H3n8}Ae@P{Aеq5~į.liآ]z72QnkFm3zЗzEmy":o||$Î;ދ茿@kϨ=({12d ܋5gQ|w^9L7yy'7Ɍ~éTFyx'J' ϗ`ymVEfX&ǺO:rUt*Q"r1m6vE32ط찠o2!77b+Qja{ onIry5S-vLk/,^Oe~yhVPZ ausw/6 -=&!Q"Ї*w`|w3T 3Eo9F򬻎RI'N5 san5HW? y/MгʫYg:r0P\6چrf79p䕂b "LT.wBRBcfmIg$S*`w[YȩFzWLk1 m^UP}X9~Egq륁i!b>*3s"0>iqnϸgaW-KT%I!Y;nFovA~~HW5`C~sX:fx#q/?Ͳ8#@rTV$KMQo '{`cAO+A삭UUxyF^ ^1}?wZx]#tn%H%@L) WN9\{Փ|99BШv 8Q=+_D_cRԜwcfB/_trȒuO":t\5<#@-z@BNv#$; e,?3[C\ѓ =4`-}0=9*-.iYoPMW"-gYOT ,|-^Rr,|f3'vWae!Y<~@Mr8R/HˇXf |ڮuM{Β1q?Ȏdg2wd%64@z[$ʡvƘZi+y/=7N+BIl9ܑ}P& rc|DGriJVLY `.~m3P?ò/q9&XiR?=M,Q#]{SwKH!.8>+#U\m5)eY[9nD\IY>R:t.9Hάі i/29՗4/@NiA] 8GD.@v_b(#so{ҋ<6)VYwLYKs(wr#o0\:IS+,@(ƙJ~TFڿŒn7,^6@@B\ K&Cv/o(]C^9Ąi8EiPb01.5xԫ0L|&fѱεI|>×P~)v]2 R6//g%(ߝ45qo<nsOс mLw)z /}Hs*za M+\sVIK| ?WaFЭc 3ɯ,r9H^LFf*;[%^\ /El]x.wi,GS*!r"mX"@W3Cti[`Pܣ̯ޓ&XGZ/ISl0*=wza('3~$ =oڛAJ}gM;Ē\ldn/3dra!j_Y8S?"!X꺉zcJJ_g {dhV|DDcYoiVj 9eLep@xoAEAn~4kIϛ;Splt`K*bI,!ni6M^-qyPZx_UsEcś:[ Iw:ɐ˪Q /ZMa,Ptu91 E сjl8OpdPV 4 d jzJ;]w x%RnQW^`%L Dغ4V %`͢Ze_JJ?+^9s19m1a&˻X?{jh|mL& ^"ajAӐO(y:NjO bЭt=8Y;'PO]Fi kb1ꌈ}k^_P)8BL7~3˅F\ؤtsQ{-$+̈pܛxTXyvll8oe~ ʨ =CNj:^BʓvN$$ `tڨ(vbW8{56IP3#A+jL_.' {)u8ntD,.kӨ9X>cmyF<(}A9gGVYއD9jfȺY:~?B’}=䉩ƾ.M%D"ƺ6R9NutDnm?ѧ[$ʘJi;/EΆqbKׅ-IOY-#M^Pߧ[E.i Y yJ?w\?P+4*w]ApY #) ɖ@䉇=5yAv4.u_YfLˆEKt#PsUaQ]}3)QTI9ZxRaP zobij?M͛dmW]8G)p,GzoX lCߩz~_? VHo=JXb`()|N*eas$|8B l@9ZIj5 z=Ono"H/Q FbpG-5EUp7TN͞Bˣae?\r#WNoGJ;ӹebRtL'H{T=CFZN@RY_U1}ϧNj|\W;{WwakB ?/ì0`Uz8e Գn|[*qfYuwvJ}N/6m(\gW&bI64Шm[5 BSWD'}$/|&$oPGE6E1#h O3N%(>'ƪoM $<)Fne@XE74"d`y!Ag^ߞ6twFүnbQ sX)zo3XoZ(ێ x$y{ɗF"tߖԯ 'D2`/8zHM.ck#-y\" ZLoNw=\`'e?TWuc+u9MP8vҡQ (zƐwM|a/k| T Iǖ8xtk&}PڡcjP;!;#јӏ#tnnUruk΍+qلX {FRI4f yW(E wR`nn{&P/kcH؉vf D&|vŇWC+T >ھ`$ #dYD}AT=c_Ɔˆ'/s0Fؗy@ou2d ֚ЬFy gs0G*Qe >ܹMPl-$^8&>7?Yw)fqR@0ڭz;s?$F9e?۴HDEzF52rχ@.$fA_hA+:Vv} m?0+w 鬖ƳMDHz[e3ɿ2(P,=q{'7554¶ P~ bˑ~xO [Weοs8}lն(iB'εWl47>l۾{ *-ܓW<Α[17hJLYG;W@xx utTkt IIW%K"l4>d4! D(v|Cr0D*|BGG{;y[\5\/|e:ꗐD5hޟbu1+fxzP_$,&).L)+CـURWӤ o?.#\`@) KQv|/J| "|жԥ)e;s"K%bfY VV?DÊ lGpbJ"jE}hψ-~q'E oB~X]oP|o%M[F8UTeҘmjB=Tۭ-z+-Pgng̀bO&Nx~( '1\WN9zJ.uTP[><- hḪrg"T2(FWQ5Zfd>>x|m{n&o {HXC]T%;7oO ,m6Z(Upg ON#X-(Ml(fp:W\ o7K/ޭ wlJ\BkGj4֣# 1mI΁DZKl#G5Q͹X4{rRIQ'V'iXM}WGp556m$n|(-Cu_Y4Nf/LK5u? j1 "/TW Uhkt20JRc$[-J.'2ax:-\Δj ,[{dD'IM[+>:as!1%>.S!Pc86~xc_j~R"}G%{,dM}~SbCgeK9UoOe% Y9 kgoumyEKـVwڑw!ߛtԗ^Lת(Bv4C3w1ԃݧTATMot]ֲ4VA[U0 [<;30P?XN"`hUEsi5.fp TI=Vwe1$۝gMQՒ<04MA(mM_/%zLLL.U{I|ĉ9c1x:'{pWzLfzLX>rHdO_r Ojæoe7ĶkT28N9o8ڥ0¨5[#Ռp@ӎ{FCq1dOu=J v-&Ef*>lfL#s?iK`Q !!K1A T*`c?HIxSsPIZ`Bm2rIz6='i10.U4j,$#mbSLy!}{ @gk*'SG;*~ l^__eZ6-J,g/] ?^&i|,YgNGfRArm\M읡#@$!Ē0ͫP32%r sV'Z=T2JQ}Bz~r'WӬpM*alr{2rً{ _d@z6r/#h,\y9*)Ga t-|C;]$tTA IT.Ku+@ adB,7t1z)V|IscPqP,':$UN=ɿy3}_!<#@&%9MI1k8"sKmk{i i&׵ L ^L[ˬ֜Nn}oYwaI8(TRMԑZz%;`yWr 94%Xm\oNܲ{ !|.vO34|YB5D_!W bn,65S|aWFd |8,Qhq P+Ɨ wy /ZC5ƃj9 k"܁Ei<% xNemIIbvL2;LVNEɚUMo+iY fdOlM~{hj'g1_#?wD$%ҜoB^y;֠]! @ @0@.uv=+t EgQxImESii9cc!;?EZD--A p̟@al\x.Ĩwm%ѓM]phuUcK~l4+Sq7OA#Qi=BÃ4|ll VGkd;u)u^m}.9 _roڪ!C/܈[Έwn.i07ADZ;ý5J[ o0rFzzqz&f-и8ᰇeJFR‰zQT$8EPO'|jYsCr#Nkݏu|ግ+#1Xn`9ǂx?Bn>P.>7THe{[Ykd% QԏS&ܦB֛XJ_iqW줝sX%j*?_("mIΜWO+S E<>8p{f)Vڬ)0y|댹F'L0z<߽Y~:2=#loy s-ۜdk‰OBa폪{h\APdlp'"n\VYgwflrѣI:2.O ˀX=8 d \o)b%+qyudဢ2| †d/fUGxA[,Ǘ(ans&Wq= L8,!Jkf&O?LLYw1աToqx!K[_n =(,!XZNOj^>{h@?|<}DØӲdÝ,`\n'˜V!)P Λz.TC`t/m#bdk߱NNHZ)(8ڞO0wk;Lݫm!y'W'mi >8+SGXe_Sl:D.`[ ;}$"pzYM%z(`/`ݏ?.9NnFȝĭTl*'N-@ʱ#wgnk3)EjQ!fB SFЁV3l]%&C&V"@xRЂ F(9$Y&rbw!&`/MR6ѾMArةe-`i #ة_{ΘQ"/\fK'" ~5|*D'-KJ֖s #9%Pm9]/Z_WCb4, ;hmd%Á =5Z[y\r v5^J, c Z$ibo ].m XpXf&j]F 7|qy\Zb5Q؞ BTčܚőeT ]`/ aoYՈ]| lUmdf/JIpkk]VmuYޟ$pϑFvld$pO5[(jEd:BDOhE rFI-ʖrgץwU5 g{#˔/Sr@RDuuukȪ9}5F1Bq`up)_ HʥrEwDdoF`|hNvT!.,.]Ve,NOL˽Kd`gK eFfz<{:_rAA8JDT޸NjҜ,W<ү!6D%_tknW]oWiW T3~S{ y+Ш؝P9OW2:^X[?bՇ_= XMbc k(ӕGU;C޲Hz A#/ci{oʰ;(N.Yk5|+6|;5O G~f5X^jɓ^:i815*)G<3 z␪UxץAk8F!srSZe,]iir{}0x+J=7g6G~ ('Yb8("' փ(RYRgN-Y~\kl4b1($n.s _{L=:R,| v[V̠aag98HW+׵bbf$3W~ Kx|' _S#OzT&B-i&1сU mqj7&wuU#B!{ \&t ?] o2qSa ю$BR?oZ|Y"cL{bŽ0i@춱p+OY԰lڠ2t&&?f FK x}J]:^ R_5j Mkm g=L׵+|{w^AXż$ab#\4ΕFK M~sL-|2Mfac͖:ZaFd(.͘/5OSG6 K|2 |a7(zYBE$]6lmϮ,nRx:Qt JDXPqQ:V}p,t'L8d*G;( ]J߽leof)z3٘}@sbG ,_"Q78_(:<7YxqTHJr ,(W TګZ|̿߉OǸL‡WG;{jH2^cllC[Ya -ԇ+x=$-"R۝q:ICĒj'tnH.#Li9a͊P  Gĩmy2d(E.};0 ΛrbK,&& ujy֧-`i68LhրY7a 7YmW 0e,>b.HĐv4ǹ]kX!#66bR ' gbǗ[Yr z4d( hoUk:1m?Չ60Lp"cX'c _MMETR$MT7cjn LA̸aSJ1Lj0fچ P[9)Q*13_w 1W4./Qʷ Y׭ /Pd$G_ڑvZšS˔U,B+6m/tӃn?Pow!?r*ٯ޾jw3t)EV h-QGM_{J4<7]kpsMe1UCqM`Ten^GW:1(@8weҋci@ E犾]Oq#`[<.zdΨлìh4Ά0.W_t9~I~\jZCil=/Q+2fFQ@&EeIQ.En"?Z }N)Y((2}r0[PYRf s#f <`'2zc@@)y.}ɉDVhZirD'9ݶ 8Nb_@Rc5njM5Ep)Z^nHDf`Png@?^P5rf-T\A52 ߇rHGslqgV&fWhqEO&t)ģty)ic $lpi4'NbQ$"`; ?hjV mc\$݈+^l~2َS5!RRtSesiEbbVb ,as1]A!˾){n5P}gWQ8EN.- {7;]c9uzlb.C}Fι!Aak7\P|3ج_3+X@Rr7Fvp`E'_SwnZAk+0&jmN #qƦe9B2naLw63pŘѯ*;P ):u az1ie%a0h|sZE^080L-1oh9# ,EIJVoDCPs[ml~֪}$RYח%@pmbUn_㟮%EɎ_5.-yjGY X'icj('Oc "(AΟocFQȱQŸm'liKY=C دzzKݣ mϐ.{j,ڑr;>-5}T찻; EfӃyLDF uҙ8n>pC8B;΂x1~&oB׮AmJuѽ-}~{dn:L(%jӄA U=xj-sHs~/}sڱS,ț0ݍBZ)1p NH 38bO%no$+.ex9/WS7,lXU>|Mz2jxs9ࢀuy 8LoE^.'[G8zc I[ ɶM;ֵ{ԷuBF췢H ЧP?]GD^+QR}E?f~)Xڞs%c[Hah~% 9(3re*pJCFͱ[wzfٝQe1gHߨH8 *BP1ZNu}Rl+ ղJ,'J"$rNBn$2o~I7rzypv!\tAüB@%3,C%4803q[#c ZJ+]L7Gkhi!Ԃ: 19{ U@&pgК;2h74:--kQʆg1colf#G8sSdx~)5I||zb!:A~iQLbZs56?Z Qt0vTbsndШ0b>G^N જ !Z* U2l]R${d{ʌ'o:INt0i+*DL&d|!qnݯ'u!vCBjy6nl6z{ڛn ^ƬlX_TF?Љw8̏z?= n!}bo4ş Pia%EJyk*(E$zҶ8ӘEȫԯ5 |c*Ʒ,5\J$y'$8abژv%ʔhDP>(dB0Ϳ&fNC6xQK>m|>4rʕʃG/zPÊiv4 jN uXt'x4Br+< n(bB$Μ qdF~qdue`m]DZ ((Xd8] qD3)hۚ>T}YP8C.ݝ |s/uuMⲇ-r{8]T9̦p L6~ ސ HdR+%p҉8Թ58o`1gPa՛@lr=$n)R&&A@#Mu5`\B2U'@ ?< {/9/A^ɳeLDZ7`]D4Gx[޳9`̚0. /c- yZN 3 ״p'AkBnjN)!0Iw rNy`Yf"A~w; E[E5U$ڲF. (s[e5_*g+` LL:TƆOxσW)\[&ԩ#izт`.>ҺL@́I y}M$1#zOcZQ)%3<TK^Y ˜n CڲJ7= qYD)EDaɗe!"EpM4Wp's]FwF3G G~' ib&ŇwhԨ)‚<R2'^ o:okeaa_ :ѻy8! !Թvu*cĴ8'IQ;4-88HG m /˜ `Cu;"C%fХ5S,6r.9瘍 R;d8̲!M{}; ;jtɽKLد P@*Gn@]9bWॣb y_G+}Ć6c|(&q=/ ÛQlv#x<2uj:䷆?h -kUBH띌 7vY3սyL>+nxy (' q益Y @;޾*3zGbLh%6ҹ?ۦz0Aݪ4T׀I/t E lk6 T ~VN'+ڞ>Z9+SB[N@[np䟻]2wU[<0HDi_ l}?FƓ2ºr:/ tŀ1U hA sa>ѵ$Qnʨ=B~E0 8Eeɺϯ13cIV 65dks{A}^ %i cG{!E$n%oR4\,ĝpPЙ0pT"A!z  ?Աq;@X2ʯb)e˗ՒvE=Pntw)"gnnlݑF-YH.%6ؓ/Їz,[R HAkT @"9JB'u񿁿\}iʙZt>$9a).}E&WBQ)=1@^\C-g+sS}Piݧ'Y]j= hJA_|K%[IM`C'@uqZǹU2PJr)1 Oԏ@6r̚DC'ekʮ0.pI *BMm&JcTI31rKЫKPf?۳c?1!MY{' WN!+Lis|OVZkUZJ}{?kEw,7(]gxr=8Jp^: Fԧ֘?--l(@*V[Ze DsV]aAVq[B02DfZX3\ Q EVRqnj& V̼](^RK\ NX?p 8:<Ǿ7ּ%o^#l{ΉS"&'LCDoY?@Xe+iL?srByo& NFfV6d8lPKBS X,(=&ia=C9<9r3Xxl!@q3 +ʬv a|XڪL8M$Nlz\pSu"+бCen.sVѳݢRe; `b1@6t/CJiUeB,ڇ>WGdcYIp(hvϩ"]:E̤wiE)ȿ)vNR_OO>Fָ7U 6B$Te;cΊt_jU,{tܽWzV"yJi$ϗKj~``|)X XN/p8}{B mհ&Փ V}YU=HQ9֔@Y%YAC7^բ{ Д.ߎ IN\f8X5kCd6@|mSw2h"0] eΩm4i!m5 z6j驺gZ p4V:mݱW[VM(QK}-YdBO l e=LW IY75kW{]/ tE4$H-9R臥/TC(k݊-֓_g Q$b*0ΤuH BfuGخ#bBDBw0A۴]Q(ـXWgQ{zgSL C䏞̈+^DZ׉2&6G+]䏬%Љ4?8{˧Kt ( 01WVE9!V@a-ƃTjVJW蹖v7n?>2Hp; Iw`cТ ֊TOmApyн<.G2J*܁X,` &OZ(̶\v.FXiz7qo` Wh{dBKA>g[N_ܽ@QN͛ijƱ[}efJ^PnŌr ^pJ| n5,~@AjM{ cM'ϖT Q =G@ϲZä#ؼ]z&;">#X^nJ@"Եp& ͣwi8):$Pc04QPf,d96r5ss7A&3? PpnkX6ֳ@aO2W-fh@Ms.u`i_4]ߏh7~zHsgy}+?!KoQ킏xZ#+w;?C'#ASu8"-1i g ܇B;E.]=EHMBӉ<:SʥٸvG,}!co]6ڝF)FS 3'K1 ,i`Oc+=!4YG7xYi2JTM8)D:=֖I}~2@Ui%(zDK~0뫤.蔲i9"WڐC;MY ԷVg$ޛJ^$]:m.@+plj:Ro8׳z&O#5t^xEHlTUmm`a2|\׾mũGȪi$l~ ~ۅ99igy {<򒣫[t{!h$W8ϧ+]BPwLQ28@.4lD/f=s`g^OI.wF/nrL*J-GA{'qOVAKgKy ")A*'#u(cx=”eGqdJ]>;| x2QQ#Ev7Zib>LH˴kQ]:H2h*ĝe$zM ?ˇNm4T/M"tw?e%zi\n6ٶ@sxz~Q!+= &;}u:"8qڮ4+_al$1?<|e"t{Jb\k}n*cYj+wճ0g%(>a~2=[gqX_0Ƀ>SJVĖA@nجqc]%>ҵ0wCBG{O'D#$F@{aSq툡}K7@ڧ{)ZھN-˩ 8o׬q纱_]0[WÃ:m?UT}04x'e!32_s ;"@(`}~c!Ґ*k2-lEmxyEA&-&k +M=^k cI:U6XwzEcEUm=TIۀz]VhupT=U_~<wFŁgnUQY,#D*4&M&4f52ZUlDzEv;Wm`d2l^^]!zjgC˒=N:ܩm":ưqAɠbG]FzlFO9r dZf+ͻÒڌ8,"Yץ.,.إt$\T k%dQ[ELǝ!,Rt·ݱP.lõ. wGS:y?v g"*5 諸/U5ܛu_[]9瀕?4 z@L{+w:eM#Cbp8}&'y;Cfցza1GWi6M3 ,K Ra O6`:@r G,ƍ%0D}gE _\:pOm\Y"y}jZ:=gt͊rDyj>F`riw1W쉬{%ήl[;VVxg~{i}Ok}q9pnۍ^yxK "ϛ L^o"JD%F%-ʘ(G8a 0imʥexCO*ii#N@ZaUTˮyt ,W?jt{cB& #-euaY.ja!-3T + ץs׳RNQC#i:Gcăi6eo^YHˌxS=iz//qhJoH+ދsAKӤr ^ g+ۄ c=]Ԟ>`YPr#s4OD^X ;OMjTpoMX:cRDFzv sϊZ#e$%=ȈiTIV &lB' `f 8; 2؁)r#77Lk5;yj =L$v%Lf/eA=Yl5Ҿ\0ӆc·qꢂiBTAḰY5 `acIux 5{eմFGC;=ͅ-a0;)}ڴCRK \'@yF'8lns9BPUIIKT Nkn1DpdqRD ~p_fv$\lX'9rkvZW쩻]5OsZ2Vi/dט?(Nb(m;0nwDGs{Bst kL!"o3+oH(!_ N(vӂMYP5@g|QzrihrBZUq|";۷bA΋F+ ns~َvr]>ecK"0Cçe|0~x[5&Qg 8FU~wHKu rJKIl6\jPbR*D7L/Oʮ-9up-=A^+MT;obQRfZ[A h?wXexU4JTր{Fy$|&.PorBCwe9eFoB2p78 Faܮe?;As"殺f^{;0/@XSLMm3y8ucz,A-J jYK!L-Tl̹3>y#p-%\HՖM{EIwe>=='h8BrlRR;z5WE*?_*^ciA3 +52H'2dc(E+뫼["Nz]ɣj&ex?Qc@%N=M4\/e'ErDuY2dױ~_mS)wn(/zwѓy\KM(vς5QӨ.+SIާ] u_֬߂ٸn^hvJP;!#Q+>]Xnc}q GΨ6d*Hgc.I\>7ѾWˁT,wM^6Ġ~8q`*a()Yᇳ^'YF1tvҬ:gmfxºtn(aD)p3:UP}!>.u]ry?ۆ.ֳK\Eӹx|E Qg&TlJ69i_ć?T1MƏO}d) dObTgTb OՆp[ S ((@s1eZu[mga8 k|+Ȫ\郅p KAaCZdCȡ=GYoHӛ.j[2*>axv)*݊VOt pcF[,XR%n7&e6?j[ /2H| Hژy&%KU~gMo#+_.7׮if_6uH-@eS;غvd0mՑuhs*i<`c 8ͷ偤)`IL"Cur!u}8F;ce;`[4Urlj4F/#6eD j-:_Ɯؕ t> Ʌ2C\b3k1`_z UPAޫ L(kCT~|MW/ƓLiprnj9E| u%!3%|!Qja;L^>lA\-j6jEoT!*vTQ_UKXR=qg/g(Ǎreѱڙa[^MSA&Q<(]$oD[I^V\<|mtڿSSU_56~}]ZlT>!GL3革[3ͤygI8xNTz)i/Ui?:&| FR@~c}?0)=]r®}~0(q>ؙ>q-}59vː!^M 5jS+hZ1/7ϛ =&a\6Cǜ`7 _l|5rmEodG?U‚!Lf txYΠN%6<3 U‹["Cg# 9(|;yTt3|PXe0j39tFpyղa;~KB;dž(,喎 >DߔkSC0+"M" iN9AE…Uy~:vj8[!Iz`Fd;8;HmziyuҰz7qxGL0@#7Qe)KO }@P NL*Ǐ5LZQ/w?4Emf-\l}4߱JNL7ɄvsX7^H.D쾏$Ժ)0'˷ ',$ihB9;1@xT h)կjS,a!w_A`<@r߇z%G+LmDaa\ U왚i9?G%٫ p=]#vBfHLSO|bqʂtwH,EFyPdfPЯ4 dҁ [wmT*)Q]tP\R/5qi|}ӉзtuT_d#3m,BDÔ` »t'F:u-IzkFV+G~y15)wcsqn-*gɄ.q)ՆSsmkIս)iUsD=9!v5IwoBw]3\2;Q!kf}wYۈFvO$F LLgw⽺sٞNk72}_r >!.!u'*V6 m: !۞Z0ݓkW6i1m+taNi8 g/!怔 `[m{I >f2T LjCcI^D(4[݉Ծ:q7):96xoS'݋0ƺv;>\9w3)*D?xc.26\`J `Goҟ@qbL/* l%?ʐޒYk&v [WxI,f%JcMe"8ڼi$hQfI]:4%k/cz?V@ iNO?Ւ6g$inv={gI0ĒAȡ! ˝;W A]RB{_3}kȵ1Ess`&][m4V7X!HYENo%ʇX-iũyMn3g*cxh>=0 oSȽkՊۮNȑBf@$tuw`iaqș;Qz k, u#muJʑn=4@KK)w"eidw}\;pF@M5CGˬ{+D1Ɇ175 ᾏE Ѱ+S z,HVD6Lrk$&r`b*u^/?5Hhd~qy,\,HPrбKJ4}CфfelAJMe'3"MRio hoJ-1/.̢W9%G*)a7P6 Y'f2:}* 2) 5⭀3FFX49vյohyT0ƚw=9ធLsN  1=D}^r_;nO^s<p#$⫃|4xQp;V#ᣯΖq )/[36AOQ .eU8n&JYRŘ'#?4CP}t|Gk#á ٹW4 vraas·2 88ada% U\urr5ht\^:$w)N;?xX w>0))U+.$*o QWY9pw+Vҋ8`6Mt{e9p5߀Y,A!~.xt4 Q9<3{~ 1%h4Ή%h=ѳ$D(lXk"H!P~ KRH?M81EPH 2? X9l]${ -ɰZqL2S|@ L zjw/)X Z ص$/J`o}}D̲rdi莧K~^py@wi.هvNPE̙9="*5eQQHlKDN&f?=l8OWU[%۫7SRm@67Z98#]ϻ'bOg؞ΒiO,RW{=MվBܽ$M15fn4iF@ÁKHMK515Tcojq#7F f;ʞuWc(5Z?9a店p cH@}꫸8؈g>X|;j™gyXvĢ24\ ʀ%^Hj41^-,,Fg$~^6|6͆]fnK>G#O)CBǬZjReg_,,d<8K('uĥ'b WqiMKGh,*j#Nmw .@!o н{\ \p/]8RYý?!dQ'˂|$QH3ptЀpbFO[1̣S1k!+\!,;Jbxd=tG;A-|'Ω< 1'fph2Ddž~k ֵs?w="CObESE\ VohTPa=MGlٜܫme;˱DϢmSx?7>!XZqӫOVvLs.%FA8Qw4e}Cp擰"9c j;1BW/O ϺM0ԃC#pA[ Çe 34RXdRj#Ұ9Px 3%<7ֹ F˱آݮ$"Օa4ue遲5#dA~Wupט: yocXtg/VVy~3yMp^$"Q<ê*߿ Wƿ5pYlQfwUK~BRdháH2 {^Zn8*nSZ@Xw~=Cٵ7;Jf|?sUծe|<1e^֕S]cUg*a8+O<5[c+`ڼԸ7FQCkj4fpqyTaN6% y v֭Dݘ_CG0-Wm;d(xgH2wk]BXklX;f kXkߊ7[_L5/teJ4J]Rh[{mfc'V77{G×Aǔ^vҗ} ։|n%<4O#9q\3X\gOÍGt!tdF:EYIq'+1:z4Gl>Fo$’\f. mV"mZ3\[f`$4y/W%A,ߋ8ˀE6y xҳ)쬴}j%;&2pvܫa%;EאvM|'ۄ הYk%5egclGRQ@W}( %; Ds2LWǒ[Oc;"fp˕<4B?"Л˄`g6T upCcs}ATTT f64wnT/7&9Xx2=ֵTң&UK6Ϣ̀G@eh UPU|\}fVX>GJ;ʥI6f07T<4d`'n}{IGMl~0jQ8:i$?\؉?#$_7xZ6ue*/:9ywޙ*|ms/8#%d!E9Wf Kx'k&NSfUIOOlT]MęWFl */Q(Ok"6Fo.j6^R1ٟW ̫Ը*)A20=-DNħg\> |43͒]ކW}K&-VllCkK$1c"kT5!PFAK8*E|L &׊\DUZ!A@Hh`H^}"FKpc1U9`|/-D^M\<ׯA :\$a *)}o0 Tvnj:ETL KȒO\sn_(pS=#akUaHFӭDC]G;8TtWK+':]uRGe 6enG (p,! Z}m;H^yO\$HXK Fi oa'}@Zd BR]~r:8RRd6ɋ.2 pv%á99^eRF5JZ֪eJTy`hL*Eb^>u %6!68R9XiuxV+rp<C/:EaC,y~X 7Ck6: ʛ7]~ ~)ek{GIE9 _bx i*Y!U1XwG76̚hy$tE LxDXщ* 7Rm&?y"ݎ>XN@>D%.M$Pww C0🼲W+^Jl2. |)(!7TX[(;A&2AF5jJ]g?{ LX7M$&䖽#a8'.Lb /v^Y6LM9" KjXf*iiQRl.2~3G%](Œd>O*, ' ?urI]Nmҵ+^,Aw f]I3*E,։݈2TOZ>r{ O!|§[Xɶè< E_W ܭ}|:G˳/[ I$[Д[oMT]T O+?[ѤU`[T2:v^|x6Uzq4Xw~uͫL bv87^ph௷܊^^ΤSNpeH]Y^qoNT:qcLA[a](_<$P, ҈ FČ8MȿȷvE^;aB{ۻSsEe<]v-ٵЫ@Vjқ\mWl7I݂5Hק@VA\g  j1~ 0d#&. ND:E ;#yrU\M|: a~PYR^!BjڞJ\ ZMٺU(x& ugT_ -w@W>I| љ>Yf>&y Է_BhKo)}:89 7MpId>bێ5dVIH)3]ճ? WvsP`@i2\iy^ JrAUȓp":M[H= *4ܨ_Acoi+kp>:D4 3k@WUl/nKww`\|*J  Mkǯ wNݐ-]l9*,t _?YwQ (xE A.5~tdҥA'TQű- iA/ 8~]Dqa+RXovs4 i6 p, `}v5B6T:ߙԣ P5dÌW>f~-;FZ28R58W4Qv=%4^J=^5\ [-5mϳ` k$aPf$1tk0<$F$ӏqO 4ot[!z/?`Gs!V=m96{ߔ`iaOarQ;|b3Xu.j_Ia/WHe{'GvGUSOwt%9˴fڕjXYR+mk@]zfs7 bفRCriD¿H}:WQ6+-}*}eィF[2VsL9Lx{) IQ%=T+S￳JO.@cC8S4PQ`7 'T +F3wT7u9/ԋ[Zld]SXWߋ̣NtSY7WK ;gC |uD u_`+"=vCdO6\W`VJ?kKC7֫Uxʓ=ijffP&S!gy#& 3OEyx^`V+m3ƪ5`DL_d7'ƝJCف=11(8ȅ}ȫ)Bun;26RޕWh#9sF s,>VXbv  շ:fFa&TY35ؒh6x._h kI!AGָ%:.j""mm9x0VS,Žq.ȵxh veiJEep9 +񝧬Zӄ#,P/+w2o)]%d\RlC֑﫹R֧R,Xc~;)-%X!}8Rve.F|AܺeoN#iLZ9(D^sfF>ٕ0M\,z~{LoZ Z,(jiO3=vbQfj{J_TB>0#fd4Q?!^_q#]#K$p;Nt7;hԍCS";~EgΪ}xo9 ,bxT[x谓j`k%< ~Uŏ"'>!/zam LB*(q`_]eUJ4y/b1kcsc Lp8Zo+OB$FѰar /[(4o;h.er <*J兒k.x;Z~;v?S(Y+阦`1x]5rU`۱1(ˈ3s/*M$(&exjã确9: X*HюT-ߞ|ٲ'zEGM7 RSu/@;+mljz+=R3|(M.\fmt7vtbbE48{y5-2JRR*A-yuƄZgic(n$ljmib}҃$pe)?(c[f?8S腃0y;uRMwWq]1g`wO-> US 8U}9c/Mp,TL/$+lg>].v*Nj%C?}%cO"00Fjl+R5]jkhГ|B^<pZ4!H6/2;fLP0鼽;XPT\xvgNpbl2[dOz"uEI[ծ*EB-~ &|(*zX=ºAg)qwmࢳ G->6ً::XĖPvZ|br0N>ɟ"U8Y}-sh8PB-w3m`(3PL_,c8Кpx䣀zboat_a/S~)1Kg^4D#=roR9Z0nX!_F)*@b9V̎%$ABёN#A! Ďusi:3=4@pH0\+fBֵS3"t_ HN_[nO|ث`˖(moid+sN@I19 CY0jσou]w< (^%\i8d㔡)48qG70>U9"OV*C;r-kfөBYdžN̳U=T=Zg0KśTU*I`]$Z#i4QR $#vhPA*\1oӊf@E"n7Y44xиm8 ݟ^ ΅G;{Lxhm;J}N-g4>".hND sxc#C3]:mw2$EW;ճG^:J SI!M wBRH`:h/ϵ0rG;WJչw{8*CKHt M .)rPxn:x~~7dkMih/S5CXcIJMYܚz9n À12_jmwϓw]u_mi*zQ4Mޖm.O︬:y s ⦇OD>~kLEj6GT 6JO-K5"DD\HgkE_5(= Znϣ@\|TS{HbIz#4Hrz` =uĻD+T==_B6Y#m/·7ҫ52zR? n[0xRd 0"5MV K $9Å=BNm41OfYUM-'Jå2J@38-'Ctyڷ?GQzfw< I=NZxMCuwEaU ̡' TGUy\%G*V 6ASn hJ{zI`PSȅH2pLMa t1j+)㔊@cHtT#@0-()0J"UrhoOc2`VطV#QC2P&J<;ܪĹK.1R} r@wP9"Ãh$) }&8ToܲWŠ*#ڛZ 9>AXUDYNpoc_R@'c1@<wlI(Vaӡ`e~h>Dy1u+]ء}ϻ8jw +󕷘YtQXLj-{ӚdEd3]MΖGYMوYR2F#ic5&vj Af>Uv&0\l!hF-VUDWIRY)R;oLc=ތNfRk<ҹ:yЏD:dx^0rI8E1@Bn pnX;Z6nz>^^Ȼ=ŧ 9z/za"BT͚H[g!IC?_}>c?qۯƊcy\ %L-s~^@Y,Q<ؗ L9GmL0%؀=ӔφTCܣ,(k+^IyhoZ6_5n=S }]_Ͻŏ"1ymd`DL=H:+ؤB@v`sO.<k|dHD)}PXX$, + vӜRѳ󬩎"K>p xBk"G=q sԚ[JX}+]@wOț.Hlp7UD;}-C)AMl!L׼X,nz ?"<v/3svP0= ǚn9p ]yK)9v-xN#cG7>dT߯UMnȮ\qty>̧;DE8D -OY@`YCf1)i#S_-bT}ToExzPy9U_dTN9UBb3u|M( Y2/}׼Y?](WD-%5R.e|P*<'#ºoYRz? dԃv!'Io+Qu˹H=mȼ-}U:6eF -PCQh4Z\@e,jUicJޏAR\)=gH @REJpcKz 4̔ X~|g޾&.^K $zn %۱%uo ()*E䥗@WBvY:PV8t3_.j'D#t,B ~[,tvQd4ldBoX(Mf,M!²1V9D=|@XֺlL#Br#sy=Fu3}{}.ljDË닭D^s@r2&g7y-4I >dsh4U(>5 |n\Z{vo!i պcplrBRXi"n,K͸aPOCls,: ?rchF MXT/jcɤP!pl%nw~^!N»0:s-P/|5d B1@ql)r?ÊgGZ92< WcndkuEmB$~4KѬȷn=LBX7pSF7,swɍq/w7pIm'ho-4wA&>}xzqA0\xLxk4Kһ^(ic`R:ZH׫< u႖QJwO)!ۇ8'!c:XfNODsu㭋g>fʦK;Cz~B KGAD- :T(42 %oDe9!00߬]F}mTU!*t+2SyIA/6'8?cGK̐SƒpĜSe]A{V䦔@^-/,pb>Ė% 䂿$`.;XH6,j|[q\Kg创~hxjȑ=͛bnfp6E<2q@|72ѲZbLeè+5(MT>,Q`A^OzQ݋Nl_!؜>'CU/N80ݏ趮}h1UbĿRla3A2yC$Fjw*#o%*̠^[O}6T})ղ8 竿b V<O4斋kCε "y2,w0<*a?^xG援%.m~A*ADJ,C7LJ:\ěE+Pvox-6 ְ8b@f Ǒ IxXѱ8Gcc%3!D=$GLhC ѭaSRrA%C{\_9*39G0w_/AeuG},E,gf˝B7@NAVS3ܯnioll'5/6B_p!7^hb:rlI%ADKA]a^R-^49b> bK?ɑ0:AKÒ xm>u zH%hɖ ?׸N;9Ua|v)L9j Ҥf?*dFTwoc 'FZ1Tσ95YAmHCGؼn_$8.ܮ-n$&\uL@6Y]Cg'vq-Z-0^|ZXymIUݮgvb>c<8I5 u@@_R0CY` t;Qnj?6̵USswfC{G8 TuDY(Jt cG􆜫+[Q!Rz0.~($NZe90!tkZzGWxC閱K0HĆ&$ ̺6AN(#[(*Qٵ$u@O* aД:W2l7!AX]%bMy}fmv9s`龐s`^9uVX=d|p /oB=CPI18<(gw++STt@ a)nqFA\;b $qaVkvνncDF?\hމF/*(+ٶҐZy,cۥL c8Zfvj1x8(. ?sUWQBU$A#ڌ"pb@VO H'6=7 h)i-?? H>IQvythHdNbOe ȽfraBPb`Sf R@jwfV.| GSyvRmHbAM$,v ۦ?"L$_;ƏԻ!I?qŽG* 2z\8[$H{  h 12wSCrkd5+c4qa 6zC U&uCveoJAnx*ZKY  )ggM5 )r0kYiq@c5_9L7a.9ϩn8R1M؉_ΫણǑI0< ϛtԡ'ݹ &vLmKҘ/ kѽB.rK"WYlHCB$Ծi(=t b^1eN%eE/"7c666U/T pspc,}RM ;E3o.Q(LWkX>{>yF#Z]`fCzs HU:]@wN _*K Fpi}viZ3lИr'M%Mb1T߯,֒04^GehQ$)睶C/{?VݯcJ TqR0&J+MHMZi{Qj*a\SS;1bS L` tݶȹ\9.JH<,l2fq/-l m%g:+zb[&,GejoHT|z'D/JiOe^>eAs$a;4 !hJl?06,\ 8M|/;!D7}2&:4*+ 6b̬L"6HڿKA$M 7C39AعO_${g_,`brM|YՖyA+;$%O7) ) L& .E^6^Y3lKzjJim:<3#A%I5&uO# AEil&WqXyiMQY_wlPBwXhB1,nb֌/#s/CR5Lhme޽5.«pg ^,[s0u a:/|ֺ1w)2)^{k*(U iF2g?h>-%E]vHs*Jn (/uz/v")q)j[Qf=y!bD E{$5gĶ1L]JbLķ@^$[U2ћO\D m*p !7sF|pSEatQłtQ1aGeX/[}tɜSXG_agyt(B8K. llpj8g!y.WL 䣸L['ֲ.D96d0Wt*_7h*de>gBaKט٪51ptZK HߝZ)rrMMk[;狮5 .`٤ k:. F{P>|?xRɔvua9B1sQGr<*_ʱ)i]ϟz'D8W'-)b9jFKRjibkbUNo_ĞR@8s{@#DxalnT3Fn )G7{UwA@rx}2kTF9e+9rw*/p  䉂GaT(L J &f&RdR)|}|awMbZQ9:zH fI\24P8Iqɸ BM!Li D4wJ/P^VW jG,@EGBx5ŸLWsܜ:\XKA̦{3;a 6D+w)7hQ_w(HI}  wrHā/[]U'@?T^H4EjӀy~@zY @=M}4na1LD_ZnRq5PtUEoQ[#cသI)khrSF {/!\N]O3XXh,/)TRqďt:3EQ&Le ʕ~kV.G&L_ Elu15܋|~\Ch e-Jİg="cR(W3H/,@`@g#3'gZW>/O԰/" ;".]g(ѯDR/X%[- ]`1!OL ܵr$BvgKRa@?W[@F[mMѨ! bBmLFx ͢Aϊ?'EF?tԗ &T- ?ᚄe >Yti_ JϖSx!C /ǐ"ZVfz2\I/YȠ`ʬecIwEAk~w_< p:Du|kBF:jMFbRVZR`Q݃wd֩un ˚ۧeiBHQh?U}BqLľU4rcdYLdU[`*uywsc) q3Tb5drEf2Rp3BK>xTL#sՎaX6i0 b, 9b,wCЁ(eMuq)ƩP$⮾xU3sy,yiS5g[4P;0LR`4YJ`嶕I_b[A!G Q!9 @o^MͼrLp. yRi wHX6dmxL6*-ϣe:Dk,%#7m PEs 8)VO LͯRک6ڠ} ĀS=8r^O~, oPp LBQU1Emlֽ[y 5xx\*Sfga'K>0#3jAAh%}"M[+$Sh"JlN6Q16fϙ T+ue=f5 6!#R \[iNHSPU7Ju-e8Ѷz]~?L$ʎQ0oM˟JBn;_ -W&P6{8sʄ"Ln_'[J?/BxP)1:{<ьh7~KO#DKb6BDԋyش=?{'S%ˁQtqYLOo* )>)*zz@g"X@½SlJ_T}QeU+*rO $91XK hA-'bZh t^E]%ΤKzaWM~AkCx8Вu2lOI׻Sm!.g삏롰?g3H8cȈPtmL CivrT Xu3x`ڔ*e5WIbo r`R,*P3cכ9>j[nZBc (#cC>Wn0Uڥc, #%;⚬HCBIl7&"X) 7(3sXC gv(^ƃ3ܜ7tZM6dz [T^ÃwK/H1 HV>zxF}n]#83ŬX03khZ2Ƅ+$+Hq7cN1HL/N5(2o.w5V2ȋHА䬻)Î];vŢH4F)c\ g=tfk>O2_vQ"4uD̲t!?_Wru̾f9Ө GphXB ~v&)L_{̨G%ӻߊ"C 1d3*\t= }Ķ,n&0sc[J5`Sd_t[.wͥ*Dkùu[n0Fd6L] ?(>NSa+x20z=7ĭKt9u(PS⫰Mad Cȑ-s ,7pj062b0wL b!Oۍ̒]6\ج9wK?p֊-hb4vXJ^u^z!OE5AS' hRen/D:^aah!|7BAToc ly֞Hv~ ~;7?crב:ˊ^z܆^_ǵ8 <EuJnd, X'(5@mgqCW3lA\ ^!ÔExp<2T6PUVU>̛u&\'1 RUIpu!L-7M--d7u= ~Jх#˝%p j" U:uC݋s zӋ3~)dOaыE[%47Ơ'G|xt +lx~2mɌa+ ݕ =|zWkẔ&(糹E}-25grlݓg9K FG >}Nr7#l4 Wq`Wv Nb dI+IOHqPL&Hpa{y[>2z>5wT|D,C/uę (ZQc}=ǖ`!Hrdw O">0W5,gLK%>WAif#|[I~ː׼Xur"_70z}c&g&#Ougmךӄ@q$GU_5,RVF'+? v`9^v;3^`^lY梛8쐚v(/6 G̓c̺ kkItasV4rRu < *Z`hsAMrDJdJT{]3&Z" yrAydJ0nGNWE)[OIuѵ ![DWU  7]Yo Fe{g0HʄH-Ȉ(ZJc Ӭ۴y%G8]˷~W3ÿ+%O;Iid&(,ZP I /N%gq3ǺaaAIi»O3` ׂUOؽ,=]@)nj:oS,ןrҎ<&.H=b7WNb3@xtHke}"}|m* :d*H)F65f08X%\7x z3xyJzv'jq'BR'yꐋ$)f <믇1#暎~"icEO{׸eU)lgnž gt`xO qLQM Ϟ7މ}>D& / R:#pL &er8oOLTb*Ht _kTп0U}d&ƍ}C0Nhk n[#ژ ;`'+:w}4~v)ZT⮂Unr?GՁd=[}x#6/ƺm2lO&?_~$5 Gi@f)σf7W4Rt|)6Ywi!/q s1%pwP2`u^:XU Z ~FE??y؉lt݅Ꭻ61~5X:9&ӓQ޴0 |8],~yE -Ar/@\.b)/nGQM%i !ݒpXPS7JoԊ hA'c}/f!^K17٦t l[2'];(}2OH LѮ7a|F); R:[zXړ oՅt4|)Uh0%i4TKE+"]@7d{O:%btl;~ܠU4[|Y3zWqu4x1anϏ71}SrI-'| ա]ݶHuERy(SԻ~EL),cHBQKX$9>[=D{2X^eTИ㛻)3i+B$h]>6ESi\\V:׬?8, w6fLg{4׊.jJvۄRJ{Z0r?s9le` "O[rDJe:'B_9@r9M<ެHV5Ƚ*>^3}l*E+UyZP;0 l@ZG TG7jy\kމ =ܳ_% L28*DӮXTh*?/jK՞TER@Hg#m#'bMYx+7'ldpgٞYMNdpᩲ讯~ +Q ѩQU TtBRޤ㦳+ tbҫ>ū{uYoآKx4.8_F `n e% -x%sxP:tj  sP$kίVڤ.Դ.t&'}#0LVv2h!%@z?]䗓2P0tx;hȊ'L誯A•k({ Sz!Du]IӱX%Gl{y d)DU-~. Px6y/,EUO b,SVBşBYj"?$֏ϵAeu6h6cf`45C˲fT4r6+r/xI*H˙:YJRv9(Yw+,W4Bsm-f@їi 5ˆ: l)ܘ:BVʳ ܕ˽=q1_¯ԩR9}+Rbq]h6*2v,|xzTK"S/)VQuhN0bl$;ʻ^CN2!uܔPl˂Jq |vڅAY&5ΟV#mnsҬXdwĭ72\C2{X#<0)ID(;|I1;}MR,(UUī99?7{90/}8zUE f-J$ _ȾmӒ$s YeHƃbDWMeMC1#~JB&/ $dXY0ɼz23TxO)$kPw X_Sxo$C~ Xe PΘ5GJ;ql(E$L _DnD$#Z%w簪Geޙd/A0Ib#y[$]%$r"l8W"y|+$k W4%SN:xMڻ"k5?l_ ÉճxxWM&c]f-W&H #Wtw8y3<ʛdO y3P9!uF~b{ĉB@o/-48 E;ELz B OB0 9(NY$)Iu3rg1Zemn՚LQ3Rn3x+ `3[eY5"QSKXÍIMMMt8U@]_WI-A?/I$/ujCpoP+.V(+0@V|=ug [/b|Qe,СO2jY)@ֽu!6aѳ[ mtW^B&On At > nNe+cgu)ƂIJXC#a/ʔ#a|ijUL;˲ޥC/.AP~8)t. f ˆ!e>0͑ӂz: itx0،?j=Z7W;M牨( - 8Y)a讘ā]KC=1q^na/[F!9eDb([mRM:(CRk:]>>?\H5#+Rlr<61}P÷B}79'ǰO)dnbX.ZBI@V58f7T1 %IXc qC/*[p/Pj2b4y_xj{B{bf'Z,,s^[ wPdF͖Kք|(DžλJHĕz)e 퐑gIen|7=Azٮ+ͪ\4x;Ya24.3؞ϛS.exG؁UyjlʷTj7%I)[dUl#)h]s,.2*yy{fgP(E1|BH. AUP E2JCa^\( W*&`,,Ĭ+DY >ӵL`!L4'%|"GjS,d~t.ݒ|<He)RZP['w!X@=BN26jWk8s_Sف~4t{j}ZlN٤JF(r)Գ>zA^9KgC"E:{xJ"@ݮ$U"r͏WLL7ۢ_ԊTw>X7r: @S Ri 3zC?T 388&'*kNˈ'>Uʞ aU׾dn7v",Z7E>lxyc.`˪*\IQjc^fqY"љRfh?%1hF7} ؏ea%j{Kַ݃q+7D5.'};PZqo BMn1~W_HB8ijqbao^ s$) p&!>Uήd/Z F_Nul>IyOrS}E`l^&{)U(TB!k/1 DV]/M:U$m"LDn 鳞ɃXAm{U%/g4efυb=c{v d+9iUZXhy2THݡy[YfD'ݩ׆v{ޡړaU2L0l|6YCRS14n9ٺ-MJTb&5`;0}D`Z)J?׭oXN@M` ~N_ߘCwb/`;rO?}mď3Y|˱if`jh gQxmMgU޻obͨ;t]'dT:8*|ZF8`Dxk.^q o+6czq trQ>cz'g@Ik+ $DrH(A3$@FW .xoz&T\;eq7>zc &T(7miB^e<#ܱIX> wГ>c8]拇<զ.aA +g(«_{p @ɻE)Z3Aoqd;2̌Cf ` }$Ԩo ?D^I8Tf>-®}فណhM(z̶z,`v%qHu`!Nt'bQ;B='cn9z x]z ?b[RZϕ(dɅZ $BavYL6zao%Q 47;qJ'e||uR\z'焽I ^-`0;Jd|>я]'yFq&œؿ)5 "ru**npt1Z% Ĵ沪^DHl/-0}9"*HL<D}X'sT'aJL݋$NcQaˡVDR,u.lkJ a3ddtm˄Dq:.-SAl$q6b㜟;g5GPk_U>*ߩUT|XYh= Vf9_ǠJSQҚB- }C|A1eC#<(EʁuBf :3})z~<;oG!(݌ZzX2R(J,S T@*_Hn^"]7YmJ&}[X۲xN$ţ'*B@ |}u%)o#`iwg--h{CvCbe<~5zTGSiM| bf>2qX3b2r _?cC]u_ЙE86!SMqV^ Èw\ V?:"e7i K2}^Բ SاbX^֗Kp5 dr5TPYKy%LUMg{rq]SSJǸ5}ϼ w(cujV)JPW;uPRV%M?m|lVٽ0(pLKk"A\)N) B؂JвZn!q7&D]XYz?|X#T&%:bbeDD5< /?KD/_¤y0]v> D}?16L'5>\ĽYsSDU]e |IWER%)>H{w̲";>E D@Tq?7X%vq:/ZuAJF _|VpJE?F7_ɜ#CR Ykfϥ1ĹN."Nl$^KzCcQ1`90UҲ0ӯhkY\/υE*V=$gZ5i ņx~@,E'z]pp5)/  (AkΣ2g "havëDffalɳ|Q+vj[Bڂ`X/XMvЂ^̨]D1a^ dH?Hf+^Qހ@cyȞ_1iؤ:+NIYU;Z!=Rֻ3+L>b'VM ƞ7я{tn$=Jip2VDGaj_z1g]o3.#$ VF7{RAaFi̽;Pb!jPG,x+s5gR1urJRhWw~nċj]ؤaQw366'5+ h6ܼ~Jc 76 %6r]@Yꍶ)q9:abn@*W! ki}se &{J4;RlY&Kʯ,_YKG2Ó]EZuT6ۨ<Uc3#qU|+T ].tWb%lZTa)Y11<6hL{z!M>BX:&+  j z'@2# j4vs]F";]o1늍'%p0s:̱ޕr?ĺ;}ay|=i:6‡qσ;dS"&Q>sw2/^sBKqk!z xnV-VsOku&mqPpn+k @ 2>ShdG˃ uN\J \=%6`4{C lj_t_D',C>N[ vrx x:=AgPz?@fB-k#d23EO&; kUIbb-pTKm,Tl:9U[c {CnZ zƘ8;U tڝyO\sP e"ltU `Kas56$ \O0-3 $B!#O5 B҆십ⓑ:}=5K:f=W{m eOL? c@|L4ӮٍWhUFz vQKA YE#Im3 %y)o7d~Hy#$Ĉk+Z#^MU nu P~e0Ip{ffLs̱C-Ps&LVzҀގrL*+@,-^teq\3 "fsf$8c ㍏6L}}_|9[\c*2F?27^jOQRmWĝuk 9XB -{Yz4dȲ FAAa!B[(C Y]8xE&N9D1(wIJ)HaJȂ$L(b)ٚkk]Z-m=? kPfL~bőJ$u( zשbs@Nа} &g9AQxW'p_l@`S޼(d^( 5GQyYQ2&ѿ5<֜ b=.*;O3E lB/f6xS?} a1Ef5)<)fv@asرjvSPߎ^#*dj,`:+Ǟ~v̤HBcH:"vm:vq7d;;M""{Jg K+zq_4kpNV6,ښ! s nFaV赢M\}BTz0tXjT~HŴˬg<*@ʭ=nad)7#C>$|z-D2"1(dԱ*̒c@tm!Z?9nj@*~\ Ĥm6|j<F@&=[:owr]\.*j@!|ݿ3?ߘVvvSTRK;o /Np]x(ՑRlND X$V17brAP^hھ3#|!<=PO/{.M?7eM.b?Hלf?%lz(PR1'aQ,a;@/\LOqE)B<<5%75Y#8QsDJ M޷k.t@Q"čB!!}aಢ*Cכ:8^Zm :#VT±"K*]ƅSpkxpLj.w8wR2wDTQҤX_\Pt>oY vn 2uX1Klވ`P$#*-0*Q,:G~$23~6+JȌ~LdU` ~j/YI*0 QN G#(1b9I 3[`[; |\T!nZSƂXiO-kY?¼B{Rq6 )'S;IPjʳ@P NT"VfYV-\IQ\ |7h 'Nݸɳ+rcǮ(h=8gػ0#BXTPJ|[R˃Uә-J+H7 c UOC,P>S(ټuz㕯U{Eᆰ;'rreʓ;!C*%x+asuƍl&Xr3}xx_2t[eTB1&  I`yrw0 1c3VڎʇK25^^g*%[@ EaνI 2VYe|@w$dNT zRX%}ɬ8Qg4]"PŸ1Z}a9%ZS8[Aޥ; z!bv)hGFTc\Tz)YCYq`dj{C9P—[\?^XYϸ&iYɚ=:8([;}^kv {+r[shyW},UY:7` Q1բ'RS ׯ> geR6HzNhލK. !ZW_` [ }J&퐜ih v oH& "%Y7 Sq=ڪia Ah+?#r"״HZ)! KRh}_rwX1J.\O)e99p감o?,g5Fk@Wq V uE _!nD` GNQI @He+l\r^=\.|z/*B0 '넔H}z=}cFvy$- NV+^0=W>Pw, !.ݶc V+%WDC tr/ () 4Y@Jq@2l'7/Nj̚8nVN4hI [WC=|Cc))[ѸH#=SIdF.Ш_dEPw/ѽۭb%a쩷N6&2I\01F]O%Q cBu?Gph> ΀X<2=>F /]ey{` "el[D,@Bǥ[ #ư |^Km#r=.EvTdc;Yww U˷d3.b A] Aٔ[WMK^rpwls2|B觬l#`B-*||~.$|B)qxXХ܂Pe6Өt8"w-N! mS-\O2HcH(H\qd0@RfMWC{_%N% riu+A/!7 @œ1ZFȚ=F9rr!ZU$a qypp$v}4l'hCLn .{- N @|ε*~ESZUIYV>}r}t̹IF|rdS22|uo*;mMJQ~*5l$lƋé8=3%rDzIʟߐA [YY8nQi4̒sQ}WHkimL03 ^itA07doNUkU! x(%HP7ΑvԇU4Y*& }g{t=7h*W<8NV +גK1?P޼vV.,!`%! :6ߴ}e`l7"S#p>orf4"VL/TOFE{يs!Hy5_CT`ޤ;6<۴jY3)izXZTa?l#t?R{=TҲQ) cYx*A 1CR[Ww?4(@:3]x=8-M;kxtup-\OR甏U.X PTPa ym ,t{sHVΚ \$n Pi"]dl937> ldt ] j+Dp< OVN9hmCm4bW¹d2+Fhȃɢ<-Lǖ!2RS4CP ҨK\t%Ұyգƨ0xik;a\gGoJ-dhI5b0N'jI!`$ C*5ѹjFyc=Q*܍Z6j61I,wricL/@'ap!a(%uͻvcMIpK,!DkUˊs(d8#xIa߭]ؠ_zDed+DLyC(.6]7@" =yZ(7Fviz+'iGޚn (>l7MA/yJ%Zjy?K̭fL;!|jCv4s-%x8C8b->N 2}ZgE@qo>ՁI㈖f!8 JV.5ye>@f}9QZ+sͿÏ% \uEd\vNtuɛw=sQVVy+Pr]xi66 4 kĈG'Bq 맙5ttJ.Jf|9Ge+<#q/VdXY."kHe+x/1\Aʎ1.wbp9WGe?NX1pK'l,))&>꾓r vj흟[:Q+D5U\:~悶یWYΈ(w9+,9rʶ@x 665W,uŰ\Qh$ ou\g<-%wIt^aލ8a'`f1VBpiK%F47=|ޱL?l7mnz {yJ %uLJx`bST~T1)~~u9yYoJ^.51Zh{Md$'"SA:n\?]14c<%@Lҏ%*O6q\أ‰!9詳] nViS k PXa+Jhj,Qs1]wcS#`'od<@T޳ҡ-{nۧBb!Ua+: 1 ;`\O߾4i#1ҿyA֦Pa%8FeLW>rIss"q<ŨD R>d1P?GbhmZv~fTmfޞ"Ȼ6VtŋNKx&3 ;SFVZ* \B$&'9q׿~! rRrKH$U'֬ ÊӋ SPJ@M_84]OGݓt8D:yc.3βmu#ؤpneqʀF(YD 5Ql黄 ށ cW-3hWp/i jD`& xW+ژG}1Co>1O:aYugZN]@]?֖g,mӛKf4}<yiARN!hAZ_5Mp\gǢ &fo8I)[i_QcXш~i}DCdo7?Z L0eVyz)+ vbr) `6{V"S eM׭JJfBM%P_/~qe.FHoo_}ar엧C:r[du>rN-i"`֓q{{{gEvi\$\-JHߚ0U:eM1:^·@% 'THq7Ë]/ vuK4NAlG <1,yGCuJkKy,HיL@6E2c̿]ҭ;,R_8fvMxS(_o=B$jctQ< <\ofU/Xlj/g=ebY׸|KU,uzFWlh d媺E$ngгqxV o®!t^`~ t,$ "i(.L01[gjXǙTAs ֦OQЕ[%KZVwؿ.W;#iËK80o1IbCo~Hx ˢpCWgߌH2+ Qo|}Jg 2d""Br%M.Ϟe&U#E$ s1gQcmAсϏEP{QdԩVHY ůp&B Le0$c2ЕV6Wj fth6|F:s:ގu]rw"2c. b#PyTS/(}TA-EJ|g32^waoY{4&|D {/#.&"ڴ'dD4qu}QgxR-c`Qqfrb!")=}CR hpYlH9 !U?Lgno n)qeJ'8>[M^ =G)i>h\l Mbwe:9@9 T+<ܴ"#eN]VX7Ϩ)!J/ ecEH.K& +L+SpYsH-le:l-lhF\Պj,]2$uk PA̼lB|^6%A0'ui'[ׂĸTWXUcǣEL56\")!trXGI>w,K_ ppGJ"nR}L+?KT2jY G,:ƃm ;";( VR:rXx9\>gDa?LƜzs<,n:4 燍T%=:-TBf犰 h0CאX4FlSb~U䲪ڍR(} ͏n] /oƊ~٥#ik:܍*k-w߰lb :~Ip~̑Oz؊xRlalꩦȓ'\_`p>56aEvdR}KѧSլ0\FssW3t{tk&ԕb REsͰwHA1(]<`Fcl}n,:^dƸHG]Q㎾=o.h(_WQ ʁílN2"]O헳rø;RQHZ^YP?sXMv˷H GN >*>f06xKf(Z},*aFZf`B~bcziF׳v>!(  "Zݩ/NDf]iiyX DzFe,#FBT\t:3ДJJfۂ ;.Bho/GEEA| XZiy)v5.:I_1j2%Ev{1r›qW\S`2Gk5QV$(VY˩to R[W1toc>W !S!ZgA0D>0,Q dKě[3?_vc")=Ǟ+0e$ΎwW]uP^˳ۦi]nUV T '{㍆*IdEW2PaBb ICPocOfEnU1,.0ݍ9M&S[8n4 ‰ 3<˶dqfIYDY\vrĕ8 !w5#P= \XpDc<wSELxt&!PC ˵_]옭[ "ڔQ?PMX)@P5Bb|XźanrRHZ 2qU:M I3+x*'J,[mb{r FD?~ eG>CoE\gq&/CCwPM\kqq˖Z8AzU6Hm?#hiGk(%G;kU }{.Rvq hqЍ$P / d}HRX9&mggtƃGa,&}^O: >9ĐkZ=O>^)%/eGU*l b8el@xr+%KeX=Tr<7/0pNx:ܕ /Ψ]Tj N[yo]b߮KF|p9 F 0h4:w˿Udi=HDgp$5lBx?}=NP%X%?fх_4_ęn:r2Dg= fpnn!ME K"zذKjN5bIH}={d H8JʣbK^E>\K'Y=%Spd/B*3:rn]*e#huZ5X^jibQ†˩orszD_}(' 4&c" % ea]czA>ՠE꿴?hA:)=YȯEpo|vrv hj Q,1ь>ׇ'X %37;+!m"S@ ?*po%{sZɿ!wk­TMY/ hTHwvTiaM_P&A&=eu..mm`sڿ1Uc)1肵 qrKE (|ϔ{oVD^w} S||0ޞ5FiڮgW Ms)MꀼG[B64?oLean}~(L{g}tK$¹P+-h9qم P_WQ?I*g&xwXT(;>~ %*/*eY߱fyx֑C4Rs~rk]$ȸTX:疕׾hӃ+p/#-~y {n>aƹ|7gz,F/]P(NW*cvG3eU+HҞXw;ui9ì=G4M\~]o#TnTݝŰzBЙ"AJ-aƽ|@WQ!(qU1af_TEt uLLzK=.U! "uzdj2Ɗ̽ h|0!%Z{^3,oˎ|M[jDfB-'u^܉vH q_0-/xdZDq+*fsvsX9Nl29ǵ͈tٝf"8f0$6dIH UuV4%kyk"Pn #Y掘Ȥupò~'ϙe8ȹ؎/Y&e{_ǿQH ZcI}@syF)ۃ]tpZnS&V۵< Cc)^1(M9l|5<h]x[@K,g*;_jbnQL+iAb!qM+ >+Zjd+x3cYIs-kC1 N%K1 dL q@-0``D1+pʟŃ =t VT 9G r{({IT=s]koC2Ǟ̅>i[ LPay7Līkd߁Bb6{BnnTSfoO*_Ѓ-yR!6@ n5jNV FU]/ ЎNF\PeAVB dJ4+,t<\2"".8#_amѝ:X |ILV?LL6UjPbV]BK{Ӹn@BTrfuz7RCP.iDU R5XH{#V]ƔJ]WS} 7P[®&o3Kץ%є)𲁽cy}R:\\{ I[;1kLI8|ARuf ǥ#DQK %Y?pCGQ+cAvs_?u@K8Uvx\Pgxsh}"ݻZ5/FnQƳa[7r (!̍wK) 6uG(>Y$nJf2"YjҦcs^2OVᢻHЪ(HxB( Ƕ>N!%A,)4fX{yjѠ9j,xp۶F7=inN/ӼsQZcEK5T+&qŠJFLS"0GމytX-S&~* 7(ni$'ɗorr 4ZR D"pi0&t`56bd)[,qgFX{bM(>0!(KǤO&4|},*`"KH Q#C ^F]>HJ{&Wq;YE}'#Tvh(*J(y! ؂?j|O6OVBMQsXbJД&P^Q38ZVv)ǍJfڱ*_7q$촩eRK\t휆4ɗ=6B"fb+FG[8~Q }Lt(,pU?OC&IY5UO9]}c0&V^25QG|d30O/F5I} ejsk~#KnX*Dc,T%i%BCw o灾7t3I5+s f&ho ,8xY@^~rn"w\D,NDz\W7b2C]Ev|,78t*‚?{u;xyĝ34[X1 "=a0[p@GJ9MlNG^=W;qGqLmG=w&k2p%8.loq!=tURyx@_*Nb>'b8Z]QMqAx+V?Bhds)A8zy(S[|cv;==D2v;zQNvD;'zN q&k٩U=ďȞɡVT`t{B3eY)ߘȫ:Rj)SgJWL b4\*\ $s7Y!4VCL̅^/@="Adoȹ%{o%-אX@Hr, 8.2ہ<8,}s!Yې9-7JE}UmVEb8P>t2ù8DȭN_e+>E9;;]K ~b4‚\<&5dROէg(}@eP)TFp+2ʼnc<.fB̀hKš˕;&vF%:*͎z-.N[j m' #RɈu$cj+s8[|T!IÂ_JQId#N '5BIY;"@gATtx]:v(>9 YVzkG1Orǁ0e'MOzmW7Q>(Ν`Xq 1rZ*PTm^)k$(._tb<޼Xd;oUcdSa`aBRB0' 5Zͷꠒ3ݑ/Rx߭Lj@թ}b.$0vbYI7c)V6>j*:f2Obnlxl2ZHXN'Ա=F_'NW2wy?$G~0)r+榼 ''B}p em4#X,߫9dׂ /6ґl dO_ rʝ}O"wDPqeoPEW*j:817ÂY6߳e .j?g=ڦj? BC>"h43c\!G 1x]?$ +h^$YI ihfEn2?]z?pr}߬E({")A`UX0~zFԼc>o),]Iࢦքnqְ&E'`^T(~GNjlގǧx+.\}bU@UP@-I`{Pݱ ̹c ] gK{3h$F!ZUa` EkVVG hL?zl4bs7@ٺ$6I7ٰ7*@~o/n>K׃R5~Mʒ+LKg]q%οuwt/D!3Ag|ḥH1zqQمoQ&Ige_L J'I=C Pb.f>{s6KV"/ht~%@ld`v%ƹsǣ.f;frɳ4Ldo; ;1:״{fw;P./q^31BnqWJwf"R'6ӧJLZ:@~қx/P=kDhL~(+wMg@6=k۪ \&RHD4|yt݂{) AAH#4'Ϩǭ ̴濊}"nCqGB< Eqz{,SOȨ: jB!͹h` #u]W'Ea] N|#㆛t)ߍ<a? p3O*lȆ@򱓼$T9݂buDJ;=,;8lE䢱c0o+V3QZ*ePøw@RQ􊋪cɜM')Hd9]{EE PጮVE2D`XҀ[аՖFE"8Z {SJR\ !NvI"$M E, 1\ NBLz:%4QyGi{ vF W>*UbxP9%PgAnk(|1 ـ&pKh[I<50*rI1P IC&{2îuuT"*kEH8+|ߊF=;A"+؝D+17GbGȏ,Url5 <~KrVQMv솕gON*ڹE>gl!SQA\!` I L:G\olUsT{v0RpIdO:9^-A' CHPRܴ}0z9aO.b%]L@E2\ҷlgusJ&g?z4Ɠ7 ً8A3l7$606hz,, 5D# Pn'9p=]++2r0.~6(+DbFi5 vh qx&qJ[ P1"p]42a@i"koDaxըȝ|Ӌ&-FnU'4tv2`Qwm|jM9͏]`+%K)!{M4haɐW.}Ð`Vz~D4C#igvk5!{,x)#!P[?c(0+!3,*׊k1{a,Ῥ;% 퐓ǽeLp֖,"qS6 @9"G_TLBc]-oY %* 0ZQLKY=j.$qNvدJ?R\lh.}>"vKw~p=3#SQ9Ux5\<J&/7^_7hLQW*0#$xƦo1cHv]>KeHSA^T聆vEd^ď녓 ܦlzPsť6??Ut@C*s*7 6;9\wDxl8JaǺ E{n j&cWF?9evXO[3OIkuRo^,drSI|ڡZH{"o=U8!>^؞ d$;]gvf;6]) C _J ӋCY<,:j4%m0aԉ=[oqr(csD%$%0n4g PB;7++~YLl,ԁ'NIːm5gғ1]Beh[Xm̺ UK??ݜ Hc]>"95܎M˨4tX"$}g|xYgy_&ȔzmnE4/j*Y qM"(C~ov(lޖۣY}J2*/lC/) 6)خwbkACb:oes$0U)i&ᓱ#wJlOɮ DGp]jXs se5v3"i BcS4`ۭtҼ+T_8 j)ho%dPޚo =IO h$ 2y? BųTylG٦y< qk^!p3m7a^+u3s_ebr[u6ҨF@~5m#V|?lF㱳pcG M#y0E2fQSPc[Vxݚ>Ԝٮ6ki)e dKp/O_Y#8ع'@Lku]6nsaBz\ Y"J= qlN"c !IȘX JE- !uf@3hnӢzGɷ,Lz^YUl:ro8cذ/L-#fՅ[uI005=FѫLβ9z3p8j;ғfEoX*Zwv{=lXD׀}fg)>zU&uϢ ֋l<(,cjً{BM-,y@p$UbZ=*|{`'4p3k|l;neCtl%$2_w΀) >F˜ҋtt֎^T7$} ֺVE5<ͨ߃p-%'ݤvxH@RcXOq\&y2 Kymɿ߳]@m^2>VpZ*Lt(z;2tU`{'6IjkP`PYfc u^@꒳4~fKXX'zԕl9U:&3yTuӮpd%cHF 2Sm*DDâߊN B'jnD@G!1| PC ,ysvP 3~R0껱-ή朳N! UGɄNJ󕎃Au@.9_tmQ{9}(ٷe#pfv@rwmk|P%4m~1ëW4k2;x(dXj2R' D/mNbo[h )s$fZ3XnvaHh}sFf*ݺ@&<[\p5ce} }3gh9Fsd9-f+u%HZMdH)%H,[U> Q~ø95q3wO`ͅomkyHk/0/Q⡅'_m%h=O~fXG o1VX# \¢ Gr+F6ͽ )3#2&n%3ۭ${tuEFƈCs1J*0Zeb>nV;СanM#m|O!@^L>)”cPf<ٓy{|[2pk?RK`~gf rRzk#84l9b/gdxOrFyo)Z;aq1vf.M^>҄0<:0;~lTGvN𩲙Ts^oe޳эq@vqgw&Pq= Lc(/EnT+7؎3'B8 Kߑ. Fc3 \7U:UQ4r+ 2ˈ- wlas蚉p@;}V3d=Q kJLjDsD[/6ǢuO0 Pc~z3]ㅥJnF<^ 4= "MkPe-{wҲ 22}hDNTHCS917P~vQ&\mM#hQ13v~b(h*v[Pq&ĺTi:@Sp7 ?QlZ(;_s7J[=N 0\jx/WYG?}DtNfq%b\grbHT}#e$IQ~B_`bh:_ X6YJ\+V|Y>VcGyPg5US}Wܮ0"- _ 0` 5_bT<|ֲKL.낊f@i1D"Qq۫y_A{r<1 14Mkߞ >;?Nwt~2fo%l_;Už  s[q*,_FQX̙W3N7L a^2^*!> Zmѻ-RNB^5Mw{Цc Eux;G`˰T,FWTwY1RcfV' s -VTtwĜ7lI1EC{tί5%'L UfJ;a$[i§E,[)idzIeK7]-̔rKЛr-*4#] O[k,pDZ `e?Cě2KB4ckeh~I…}N)4Br3EPw[<[DXH*Bp:K9sD䮿&Ȋ)K>Fa]BλySN\6$|ږ/;?P. ƨK?z l,/pDRr|G=T8%s62r2f;:>h+{v)2:-YHWGn!4h]/S#X`f}i`F-nWnN[Ə7 Id&:CHb @ -cG!u ᑥzΜ8!e= ZbVMiXgN@@i֖nbӴ~|p;]^SO'D8vE\^~e?+5\ ?sWf%Lż:v!C Hh>qS v4;(GdbRn^z IiT=Vo?;.W@d&#jaxd=b_qf(&v$~f|ҭUWjX-E.FA@Rbs"r6 7ZaNTtࡡ`} G"c7:㘶YV=wev?1B7櫞{Z>oGGuRf[uJ{$7/G 9/ Ynir_eo6+)]p5A6V8x4P.C@vҙr lhjID6g| UYU!1?y ލPvƒ U4EGw:S;ZJΔd5Zuµr*[QFSpT鐰Auo\X3)EW)!?w %w!aCkGodw c]oekh cIf9xW=. 58e%*c}J%q,c'*5K3R?Ub?A8^ߘ55Xl|O*ED%ko+!l2:ꋠko+D$;'( Jڨכh5u,k ԰9ۊSuB7UOVsLrT#VzwnB7Pe۷]@Zxˮ2/1om kfAC qJxTqi! /Pgܶc=bIZ6uC 8ӊ9:xs0sh#W|tps| ` y.w%2Yԡsy>zrVokP q_, >H͓7c`$e.z}v<suv2@!$䖌gG^O!OV]ڢ]HS v+ܕG:Rc4]+k"`eD6?ˁZڱE{:Ka6EDa# І+nR-KJQ\+4?VLsށy}ڃ7N*0A%kYZ ^:7S?夣E!}PuW-z#er'LKޙ؋7a%!per!uj*ַAQunJT$`"g6Mp aZN1MO8UP͌ kP;L + E$sӲ/:&7g bpԬnf)h"sȴU=WS@oZd4 {E9`G˃'d/%xBJ8 1jwIǫcxm{x23 Fǔf5p(qW׮h :.4㟂?>P +y=l6 I*1H#T VN5=?3Y ϸ lp" PΪ.d)zvA 2s:JfdV!~7\gj/!zVX[m =ew<1T-صŶXRG&t)XAOL!Gni\۬% ю5lR^ x\P WUB?GAlK49tZj VV%m:o8NɶUMJչ0AY "~pg2߶&D4ĐݐaVS[Q\(Cd:XA21Td]M!\;"e{* "cfJ\T szb\D3̯X.b2-œyG(o(GI7^[?U )G6k {x@imq1C2] ˘BX}xfo׋TJ 鼿 )bL#Q̺.e,5KBg%W%p8EE෷Gր#5C᩠Ms[Uy(s9c)}0ׄ`>E]OI4yۡO-Q*oB =)*`B W|v,4qU /aƲ`c-Oii WFzo^a)cAĸ-`S "f@'8ms*H.?GPn_6 ;q>-F|_Oח-"( &OǪ ? 0]n.yU7k@ςox:f:<5EΗ )H$h]9BPH=0B"-F?CNU T%I%:mA߉?O I'=T: $1mgXglmްMdRFD:ޕ"A(L1T s;֤IyJy ^ʌG uHZ? ܶD@ _._yvVZF2-$]BYo7C(SKq/م8*h"yBO[j[kϯ%F)epR/rbvg2;_?eڝ/R080xBM/|%HoOҐ!9┧޴ЄVTJhd90˽^v(5-%y5IP~]Ᏽj WAZ/uA®~rge3`IJF_hy>C[J{SU.ּS{Mm.3 c5A.A* i*cPM:wZ1T \+6tP2$JdK?%r-c@ Ā:fX04iᑧOG-Vis$@ 3 Og}aוdD@W+٬(.\:$eM ɵF}і i'2#JE3?V܈B|smĿ̒>И{^qQoEjVsV Flb }8V|rQ#iѯw~ybSVzLեMqzx\:<#{vG /\FFzY9/6Dq:ڮ2@ ֳ"Ϲ6~ AR&ULjPѰ'Z3k'%bayB1bT-fby+NN#l1Eb U}M7м'~r2g$A͗K҈w;zFYAXfEhM򸗋 G@_$\7+Ᵽ*j A`O4qwvce&34K*Q3Jމ 8c>k# { OWG 0,sEf3/S lo㱶ejbbݽB4/m7^hp]DbF/rmKuV~Ŷ[+?!;}1$^mpvO(:%aj#H>%70،qOHڦP ;\ nV6Kk+/+ޠk+ |%y4;$m$|~+a! &b97F(03d5q\~1pp* [hj?ƛ%r;BF5I}/)3vL壓V,|fNGxE߸/1&:耫=OM6+f rZBx~+O+Q;U75PBw ְ }yNK+M*yQ᜗SF*43{QVsFnv~ >,KW< dD#11ז90]H78:qO\0)O]x.챈Zym)1^X@n<4w$6N=~/\ӓ#vbKYܶՋ+X!F~)?,)c*> L["]Us2$1@cQg|1kdJaK&asyT Vj$W,bׄDu衻76[ vC3OidOxE=(y S LTS(XX1hUz&۹q9=k;S=[Euelzښ4Qv͵"<ZUleAݭ8Ayl#^%zҍ~ms_Jdc\@ZKAL-aF3&>IB* :!žmZʤ~a̴K"9- ++l+\򹾮@̶M!E1u*ZmI,T2cxo p6EۃP4vvgM\D6DHD9 [N7B6svՖ#_Е}P'to{VZ,yRƗ۴{XB*C|=oMmcf@[,Rzdx6)C+ߵTҬB2 {ǐZYz~R?(qb5l[r|P kW$eʺ\(/*0ؼ̈́09Z^^dRy>U w訰tVmN*XZD67H  κ4IAO)*.!8A+S.hزP8>Ǒ^\;7#wCƾ [VF3&%[oȉdk8ǘx ]㎙{sxHwnd{m`,8%~o7@5R9kjtOYlۆ(,~~W|8mЊfǶݔe9Y꧘)@)A}*k IP{0UQEP!Z";Gk(5ʇ`!ׇ.ApdFFq\6/%4lq :u?&>ҾXF0!g |- u94VkGvQ?#6YNY䈜Z)/g,癏P:) M!zKEn9+#PlfVΫ{ C{Uc(njeQy4= nQ)MryTxHdYi^ qƟ?>,[#8 ߣQ >qdyIq. @~=ʀ|  < Wo)彚鄄 ?-r|턴|h닱UXYs v^2&~*41O7]蘢vHxZKFywg4ךz/=|iL$~`V'z">t]R߰1u z@ǥhr0SH~|j_u3R1FT(db:skJY KpP=>h3#%ϪSnՉ&MKq ,,[|{w9G}d(FEFVqaU( UwRy&ewq]vkɄ`{Mb1XqU^k FWۿ2ט`ɿ$6Mʲ J6Y=d2qL9 ;R^[bDg; CSQu׊k&y/OfZI⛹D7F%&V?֝z.ti.`&wGk}溺Dsޘ x%'fb9sF2^8iu8):dU*TpVȚT?|3ҷX?됇\8K bˈwr)f!1 }vs2E𤴜CteS<÷ZT꧓*X*oϱ̵$:'xBj\WTH{3_CKL0dB~[^ߥ;swvy`t]/)ˠNDŠQ;!+sOx-wu!*C"B?wEFPt4K@ }&PqFNKVvI7[x P㒡0()IT"ۤYJ&v{bϓO0^}KV A\+{B.woWuSvV*xyXOXXrj.s8;$ *5U2پpG Zust&:'bH8~zL~F g?zn1(PV@G-+^_3b2_#y"zaWʾ\ywY@dKn&"&/*,ܯ;ʩBK>l֏էPtxj7؏3R8_%7ō">귾+M1ړ<*g_76 ɀ_>_&-:M?,AkP@#iK?^Fk4ipΗM?6L h8o2/@W2uR@Sx4qA[JY ŽڏR Yaު%ţpvLLULI! h+-aRQ+^&,Dy[|# sP=C9|MhWA DX aG H1>INp]؎ūu B]b8wlW:%SKQpCv#/$O(Կ"װH?er2 V;RD@i w#i.h߂:eHieK&=$vʃ*(@蟅%j[ڸ:t%ޖo[`~*]k_q[o;:q߫ -a U)-u,\lN<=,P?N ^!G4^Q1ꉳ2wW몜RmeuYh $A+F/J_5pY^w'U 8;.vEϔA ,O?w?ԄHA6#L,g_,+ym %JآQ>cs9s7 9퓂2Szd9DVي=FwekjQ3w)W `QRd1娗C=gɃT {̍RO2ŷ qIW\j'Y2zà1W\ԥ-n~-Dwhcl$Mi;.wr+bCIx}ԱdwMUR ?! qf:t$E}ifV^}g C < i`5@SvÃ9d O\›cmB!_0wj!N܋["P{'e*{ChX 30M )ZHq|! -79 m5ՠ3ճf}˂%hxPb )^܏W +й`{dQVg]90>*==죕,7o{ _K`$)m]2_$ld -+^NȰ ]|]sIc98ǘtY!ܰX;3?J3/\DhH~nkͺYڴvm#k[ײ)0'; HVxdGNi&ЅR0pvO։uF&t~IƵ'ᜁ5Fdu褛}%ͭr g\3c05Ąjr▯E>6a=ї/bKh_zV|]F{ٸ`H Y"ޘμ܎ ->x%%Ӈ?WDrUCf0$b8k,5&iA{E쿸IR ^r5Zw%mWjC.^"[yauSDO@9;0Qژ[Ң;$7⼪lӣ+aAHf0Aqf(-x(M\]N=\5=z. ydtnLea0}E.A(u; 0dZtc1c kJ2֕ur("&X=YRxxNŨ5Yju#NMB*Qg;^ť!HKlـI Hq3W)IPKy\rJҐh^󬱋R^Iw@''S0[f.d1hʽI$(rH[ۢTό/ιUԸ( E3Ca{uJFYF_Z͕)NSLkǟj^`}*2m"BV,t"[qO7>|IϷ2 0ulmx\S !wcJ, ?QnIdBGnu+$e&,%T3!'&q8*2`lA[;fAAN].I8硿EIg49LTp#L~ߪ}vL &T->=%L VZd9ŭ4 lR"# ="G"[uq3|VrSAPOڵ\wAh\9  9a!&.wvg.XvWUKEZ: Xd_H:w=tL=eg3G $A\=z+Ry=/N.7P(g!Iw'npKGK}ht!2&B].Y yy[9 'LЙ12Q=٦{"6@eƬ)WAb-[gl>)ƼPБ|=kᢊsyQfI [W4Z=}O`QilV?Y9isT{ovq)(JdASt.Vy2`շ1޺v [\ry{|B*|g^Y^oBsjm;ֺE?֠?ם{ VeU!?я+~ @fXG܈V]6!bv}*/+/ w61fp9uwj7.-dy.?ssMWn)58 l>GL+9Aڴ'."ھTd/:< e^W&8}^\+8c.i|ړɍϘ#V}{'1K',1 q0!̟=AeV8IM^Wq,K%qwd@FZExz9S:ieݔ|e'8Tc^(?[ BQ 8!lE{#}`9oD&mE V:18WD.&377$]I0q;ZnL&˾(;AKlV^/^{Ielf7 Wn?A_L 4FrT6tZ6>gOf{C^;w@h K(0xp9}\"7mo͎Q 6,;7u~sR7K2 $mTEeuGbrϱ\'uהi ږj18I/aQV&N ):Κ`ږw&QUiOuZbLJ3f[}?+z7;>G|8@? ΎH[~&+]$ɦy$#Ecu6b#~Oj] .MB6[!O8M̜_9nnNA%ӚFYe }0ѐ:gaS:6Pi3Ζ\nPQ#Rn1]=6 qW|=*.Fh5N; ոh$]x䓢"^ӟc# `&M%R|' 5ǮNbq:F`O7tHfAN5gja]QYUHWVOk9}ZED/#eߵމ)2y4`KJXPgSGxXwDzoni\E}o/wy0s >|Η5i<;=kyZ-}.nRZA)_olF6NHφNpXoFމI,ˢX_5NJΦ@ LT+fJsz?]ўRiL |"wIG*JעQ.:>V9`7kT ΀XB TzJr-|Gc'0Ԕ3g" 1IAy,deʉhiH\cv3y/b`&VK0bN4Se4\U 鼌*6/61BP\PT  ryE+qc:vC [o{4]Eb S _@CX@Yl&4%&+N=rI3~9RE`Mahu΍3;`--[#,KU4,_o ȔhR}^L$[md xv(" 1^A A+C6^^Qd#TUk9H^J x#׳Rl^%&mfb-V-VA~a_H1*[ (!k2MvUy,A>J  ' {J-\3si#2Y Kxzl=Wnd/:ZjX˒ƨ8=QKV/f]A}uε}Q mjQ^|5}QF75S>e;1Ძphxm>HI{b E7!àvU2OEOGtK0O$>Q4M*4%JSgw~1jʄͅC{+Fؾ i`Rj2``u&}uym?Qԟvb17Mp!̯|e"jD|YV~Ϊd͠:MaQ;ࠒ7NhE:g<@rd6'0uϸ*rS0KS]1F[ iS1p0M0F/(P2czDK!Έ{9Bs~֒SdvY[_yrHzUߋ]FlRUz]G.uB/>ΟM:#9#;;REҠu&:㯽HgT:#L)̝Sn"*}i/B/Йb};{0 Sʛ(xbEkf<-A! ?ɬ]+9| qСYW&<< 'n}8Dbi߀=`T1vM[*Q!IπIGOaLKaG #4J7H*a?l@RA81EН}N`>(Hh{&!g Ђ. $p;eH'-GQcD5xHԎ'p@"PG6G1A@*QoR?o[m!*DA3Ro\iƭ suDH'?fXa]U1Mzm21Č ^ ܏iWj*ƳiM"杓coP81Fd>{X0!yUDsFz=rw,&up[$Ydy٠_6U ; % ?-Ⱥ$fW Ju(Bot@o3o)]D+K%b% FZ/M}[sDB?H/ibْZ_Ȗ|1l0pi('~(-M WiK擋Me0<WQTlƝPIŠ34 tMQ;uWKazXz _d9ϒgwdTa"ZֵK\; sBcĨMz1f8omhQbݿA}Ki5>Im.*-IjVBz|zQVqp~i/éӷY'j_=uʯ۠Fʻ0{!&a;QSgVx>wǚ| +ZS8ANe+"uߢ0[pTj-G9 BR#;MS` ġx8T2_EXkQZ;!DتDIzgҔZRYcm+h<Tď p >'G*鋗#5p]oAp7_ЎEA-l *\ә5wfqeZaDZNa#hBN/@ry?׬٢c]!0%:pÝh'%D&,EaJbV?xb+ܠs,sǺ"rHbeʎ"i.#(9z9iyuBdy##at?pmگ q+&K⮞[ 6umS?ڥڏ?ݱXG*h?NWsi-=J!|="XiU76J8XJζjg'$FOp}RuEuF3VƨY!@|`Q;5C0sӐ?~Bfʫς CZM+$O@W t&hG-Gj#jQY1_[is潏a^RL1 ̖AX~jE3~R'A:vvh|ܔVL.[0zWТVMS zcnSzf~{604?nN3pR 5лsѢ3  [a 4D~t#Yup435%>U&G3Tx0L#~;cVv(F'镆826ԝu̵m&X)C̎J ւ 'ߨtW3oG,`&&!ux泪 q>[i;΁9g B.`?jʟgZQ H%`u_W:o?aLh-Hj%m׽cxaTbW숥Xm llfgKQ:yaon ;£3xwrĮ0$z&[*ep!iNmHu}h ~i,;@6py~W捭s,&l#"ʸR#8&`9V4Vq\+))YdCX0aںI?$3VW(I_q!S~eF8f_A:70B,x^He%(;8,"UT)φZ# }QlJkZt~I_N77mǵ, fK|ҟTȶ%"ެdvh8(s{<5I(5.'Ɂ\ʽ% TNc8OeUR/2-ĶKk ћ-q {h7Wٞ~ X9>xOOa`&t8;{Qa&*7`)h iIɮm N=C~3V"e,AX9I @tuX]H`P; +/1-4˘-ti~vkÑXs>պuC1%d6J&i*9M?G\ű!{8h߳dx핐~+zҔ/A ~'<#A0EBojNX ie )k@U Hj㢈(\K Ai1MTN` '=`R:> f1O'i㐴g!bъ&{ ׫8m"ASW1l9WP,l!_Y_#"bPj)T mo0p܊hVȁQYpthݔ:{-U$-ePQKRFBns\(_cӢ@B#ttDULQ,Tei S5}4\^Q8OuGwZAdK%d~bn / \2 dMs\A {s%M4^W7x3>gL]1EwںrR:xwd q"#zzߣ"}dyeowQVJ|MͰ#Uߝt2g Z!KU܌_T,& 4o..bTȬond%*+k5css- -}E=QZہ~2wuKL|i7*qϕ>73x:eq|+Y75 InXzyh`Z}MLp?ft^&*'}®نO7DoQw[X҆ζaA4OɓӞIIsl/K$P@'i6a(H 4e~|DұF?4n4L,hlJ׿(`'wP j=y,hX^#o?9Cz m2v;e'xAM ȇ"t]ׁ9:&B>Y(v0;)a%H̥IhZϼf)Ìf4D~[Z˸] Tw_?Bv۝1tDO2ݦo, p_,(;ׇmk&>Ɛ0T\ΩVϐN\BC/2]Y ; YT[}U\܅',$*5!vsMC$o@1f(*my/4Y0IJ_ɚVi 6<8[6qWE:?pʤOq- )fFj2pt=9.O̾Cq9o/X𒍤<\4G]-= D>& e?¬/|A Ԭ*O͝{Rd.|u^BYu0Ku (_bx(͜GzDbG #f+B(GEr~͜wvbJY~B3Li`外9CSZU>|z%cEu;[`N?ո|Ab>;٧Jֈmwc„@ißMxאA@\˜!U0y?ֽhH;T`\4Im|˵Ս\uZ86 J+:U,p1>mkڴcԪFg +|yňLbnGi[8ր"c67i:4`R'ǥ )8@W<փvuNBuw/v҈`}cw~[8E|m5Ec}usCHƘs9ݴ]udPLoMa%z<Ԝ+;kfp9_mZHsr ëH+h'؎8P7B;&ZJB{М} @bS{ fI_{E vao8.H.k[n a Qߡ,w>1'BUi 6>zT.zi l}v/>JӠZJ'͜"Ew:,PEl@/a 5+NK7V=/@\dH7VAZa@Sy9s+WM1ֆ{[Im,c_fVY-Zz +4siO۴ж]δp];L.k(tMR,=/ ;[?g^$TgT89uV.BW3B.\c-_M>Jv.p!u-=ϲ=@}bdH iJ@1xaU~49R ^)g3eݯy8 srӫ2Fo`6*3l}>{#hjɡbt@ aa*NJXnS]0QJb\tJCyNy#qke6-c2wAf4 4q3 \}f犴Zԓl @;tw?Vw.GiC{͊JJk2(> /iY鶴(+tH|#u'9KtWoKxe:LmƄF1M*⭌dMFHS dsg䴗פѡת3 j \V6QdFc-|Ӏ$[1 `#oJX{Rty4r=ҁ0:&zh%> NZB=`¶μ'kL&f [pGWAx~#9oԍfT*jWRM PhH7D-Bq1EJ߶|( ba[Qo ] ڛ{ H[QPV5A%2e-$XL7H'R>n.5C[>D2LG׈i,BVvz?Vuu`UsϞh~fT-Y^ C߄e#uH{3I0Tq+L4d)ՀQCLV1;ϫֆv݇%38CNJ3#|I2~F>^Ahzc/h눖<^C%MUj8њQ~-L|nIm"Ӡ >'=\_c\u]?mkL=-.>AL}MXkڌI}Kzڶ֤裺+@~ ИjNLĵ[zkm8)Zsϖ.@{Tq;,՝KƿڇW3:nQHtSִނ_|CX0lD̟_w P|-2'6YOovq:Vym'а/Lv *rWIcN6;fQ˂PIQTSnr^y8 BQ f(i=5,Ã*E ;|kf^AL|s܁k,b xG.Bo>]U\v>3FCǼfr}Z=WN.D76 LˤDX 5UeMfnUs^|Do-8Lr^ۣk z+*j٦͞? Fˣ)X PHqA  ;+v[/Bo֫x۽KBo{a@jy-yFͦ]|Hk s-"4:yE HM,aC\VlzL ԝauڅ R„[_,/\`n2)zb# #bd9/" 9i&Ӧi]]磰 xE`ڎF4/~ Bu4zڛgNT6S P$i~U#ID Ɔ swDl.,IQE;A1ѬLWݬ~J""52JDN镤N#i ҰylFf_TP ?[y1T j'l6^P{/88t&0LC˸woi'|~l{Im}:1v:u:b)J9C̪)W7RzML&DIO#D?>mލܝjA>SI 4M9&aDXI)3!$!$`w%۵ FU,ML~W4 ]%M dr\)K9EAu0Z;U%bQ[?kڇ&Ϥ>?@mymSK\N{""W-q0֯i[{#YU%&;-TmfYVm}&3vefz=2 3Az^9'""Sjŕ>? 7O~HQ }Rp|cj{I KFGpШ ko?gl+"k,iN ;|<"?SϿ0Iڅթ2(UB^9j ' *YO-xL|iA?NVf[}}s%i?^svh-8 ʚɾ9 HuF= TIЊ-9Upzp?1a57W^p qX:``SzBo[.V 孁CV&y_EH0jV!p"5X>t+x#AB׊U@Нigrbc''rڟgKmR5DӼ'TVAW낯6W#m\fU$' 7kz`9CH<%|{ .#?- ּ@Y`a˒ݴp~!gIef`5Pd0|7誯^1G@OjPbu [sqj)?tǭ [~b_ GLIfrĢ@nf-hxѹmQc^rƖ z#V5iJ gk^=hi[ۈf˧6Z,f7C{AjuRp`Y-Қ; ށsVܷb ,OA0`k #V6iʪWfSz2j@fe4?6cE1M2_jkn0)j`q<)KsQԚP>P}kn>o.+w' ţeˆп~C] b'e\L??L"v5GBǕ>, oJ̚4/.b/AO&QkP#1ѿc6_FJE܂I|;Id2wvp3 y2?/ܦiw`s^~rU0|#@cB"l M5 4LxBWvɾ(mze2-~1_`~ItCmG^ `Fe(s:Ҭ, 3gX&$T#& ws3{Ĥ-.5 ,O@DVWxڮr8̀{ Zsׅ'vY5H銕CY|fZ*+T"lDO6{} 4@l}L0,t ld!a/T=f~" 4i $x%3:& L]Q95}ptVj!D[:^7fy#аjDc6 #]Sp65a Z 섟&Y㤝FRF(_宐epM_ngf ,/bg_d0h^7SSNMy9XqJ<1'SGdYR(Jb$}\ @y"$ݍ<8p[FK/bC ׶rߦEIcH)ޣd:8}9V6oLFeYcШY5Vv] ! \aw;Jwmnh0E7~*nJ\u؜GJ]qco/l,I~CI"V&%ZmB~{!~Ilqæ\u}K.i]Mމ]ŕq7ce<5O<,x SEܩF˛Xsmmg$E ,*gZ]ocYͦ0Η2`P05,4Kv9) 0Av3o:Tkx"pm^?!BLjXuK}8Ď, `DEW%-3`WxjWCeAK AA?/ \[ *2AtP~y,tmʋ@1!Y66^uNe_zxq!;| J`͞ŎWɽz&lFdBߘ\[:!^tm3Hќ| (zۆĊWMQ__Oր7>B1h˓7/s~ G ܙj>A0&vHƨao l/H7q , &6:38 xbu3a*{!Ψ Ԣ]4BD:*_gZ3.S4 Ӫ>ĒLo=WBZqE6Km%l͐˛}em;/U߉zC8$4[aGp"<(P-wحscj' ON|"U|i#ip ZW8:4=M$^Vv0rL+}K fbG#Eb3t.i; !ˉ%j}_Sͱ%x ]ͮzuN0<~w+,VC7pyMu(v}[O[ÜwSrTW$]|lP^h]øG5)L#n3x GgDŽOG?ơP^BsU*LLg֢6X-d/.߀NWjP᩾3 f+ݮ` T^ +x0[O\TY8u5F`& uQ\- զ!tڒ QHۃ!`V0?0:|JlveR6D7sF_ҵZ'- F9#z EWM9>'djv@gtJK]W vN@W?pcx@uuM#% 2a Ȯiړ"h=dDt㨾4:%Hwy=afbwF*m~ݣ[[~y|ܯ-6V!ffܝhw7ǹ'$ZC4ȉDfFÎr9O-02!F+2P/?0S"գ~oqOfLxw*H7VKUDVzo@jxò2^Z(qE3k;;*RIڰܢ?tWn95S; \⛜|V< 8úfx(UC@"NPP25y6"{Vǔ?}` eAӵ\!i>0%`cYc@(wl 3цIC0c* aJO`/d;,]r~U䇛)YUb{%vh fBNQo'HW;`=W3,.fK9,{GC5q"*f;:vT*f/2+XF": o@%AOh5"[*9*ɆQ 5Q^9"0UXqC Qw]^Z`C^i-.1^M YLyX(mAsK}½_Id%tTc7llq(PG8)=;ey-شQAGԓ{gĉ/w$qvX|YY#׳pgzUU5&?f2b_Ҧg$ZOѫHJ$%7VRG׿GR[.U8* ּ֒^rV!>ceNYvfg7y>cqQm8r(s\,s1b;N p縁9ٲ2.L9C9B]4D8ԍMHz*tkm~G1gkr(wp{yZ9\ ڰ"Jm~֫/P޺l4qWʊ0o߱Ұ@R4PoTrjS{xy5O}WଘfwA'*< )Ar$+Nf!*%3t6hW׵B54,U6㬼J2]+W޼$QڨOqvC,͗@OO&M3F>s6_|!Ȃ8Gd6n V\na۾C= Vщ0 +%{#kib@n]+ wU!z4C (`Ŋ='P- zj(bufcL JB*/G +6PO'6m2NE%_yd2lE lSu,k|Yrl([{ 9P_EUGS9 ؏a'7u0~] OC\ 28ɵO4O;8#1yưXSB%g{a Lzb6P]E-fѝ>k`U@{'qtCh^%<:Ey.kw "IAOC`V*&*YTof an.; ݳxUѬ} Ps uKef=9R [0RШ( Wy YeߨNQ$rؙ*H:qg^-xk}J<wt\s{,d G8r(D%QWȟr&DNkl:\^W XKDgP ooL:2QTj/MBwzi(-u9RNr!#!R>zn çZ.[O_O"U zuI2*CO5 0Gȯ+TAPCh<[<R'&:L&\Η.U %R1aQ o<퓔7W1h% ۿAm} $w#%[og`{i^{"nY CO2 kk4!O/燸H?I&Er-×/9JNq3@u-*4ʩ'zQ/^N{8 ׭t{CSTy}Bt @BMBAPS+BYwe]R%2Q >&> "Jш..6aw5)tk3_'\P)|V N@ $e%<ە0/]މ,nNhdw%#6 )q^'@E@L=93[M@:O>zSvd@9*WkaXufݺ C҂"I}X;$M@3:W9C#06ŸJ r>U)M͜1KcJs#(էm;'ݗ8Յ*=j!Y?VKbsg椩qoR5VQ\J'pT! ݊5H\ 9G?#1+NEVW%~|eN+xnw’8L(aRޘM|T=3/*N]-n8=՜nudT17jlnY̐KhӹKJbCؖ.|uQ}7+\6*uA2B+?-[*yp0j@AJa s\5:9kOdgJ{DŰj(N^bٴ > xrg1@]ɲ!68/ƫM%lw!SjSٺ׍'$jCX1\>$UYvuva4u'Մ$DyHꮐT%, 1ѵ>:HHf,xr}+Kװ(ḟ !xw8ȊݬD3Te{>NLXiCR[2Pd`k$ERʧX9o^?6ypvN&۰F.M00Yd"Q  "dWl2(K  YdkV/SV!s-9K5"1Wd@]-o-2+\!R4Ei1e+ʊD[,:IcfY{jUȥSus1!f3vi&Q ,ͤlz}IRJc Gg:IOJzV4q9I/]-=5}u zAs  P30hޫGwNBSKↇ[0ʈ_9O3&*S:7^m)W ݂+>zspm5p4[MrSwX2dwKwSlK_#8"ΪQ=C}g1z'eԾQ{f8'+gj㿤C/P vy]\,EE}M8iⴀww"#(hA@凒NٰlcI~%s+ gm{ZLlW% IDNS|(XB^T󀢭hPB+tNkZ rL@XɭPPe^lp["Y CmcsFZNPN7E4@\>'S@}X|VD'ds"W{yvܾj$3xBK$ x,|^~S(x,NּWcKPj8 ِr.-{a`DD3¼V:˫5rx".PffϒOM4^b#/"B+J=.Thݬo*>oy_'/(? u<X$m&J\t,BDxs7*(5Wݫ ܓ:DL}~ $_w_ Ȭ;|ry33DJ@{;iFJix#㷲eCi-T8Ѵ"}woA Ng{><n!B;%u-\Kԙ]XC7VrcRfTHoA[^4bD#c2+Oz^8 XUq %x"|Wܣ΁9BL0ָToJWRֳZ:g%gM1-I2r^]'ޣ1{4JA@n$|e]0|d R)PՠȱѽFgX-k"d[k2Y㦰K/yéUfk1=>_"O | lǾ!ߙ̪VWnIksɰٚvX)"Oԁv?EExn0$ .f$W0@ Ntkh[+*X 썷geC߀$uΆ\(%:D0 uyxZ`^DY\Do %4sN? سUêB6uZ¿ sR=Vp1P.fOxݩ;2d.ņ ݿ_d-@" .]SfM3XT;ɘwlD{z*LLAA%IDd4zJy/lyoFFrux' W/H.x7S׫ZJXx:AjF."%&aA̪OP"jfr' c%vY;FyYY,;Gt#*vN4B*;B8[;FiȭTO2GsE WrY=B0VXi1CӉDqֹG9UlO=Z C=S70Uj(9Aepњs Vg- n5C j'>"PqYkqʶz#CS:;P&iѱ6PCEJ1|qsoՌEPAzں/I{ rF皲zM[ws[ 7JgϑjTѰ-Bi)AmBV$3)RqpmdQהt j@A<;` Ҏ _j@>Ll8g[.=ɮ\pu)bn6{CNTW \鸞M6T݈@XصuoZ"z>wM U@*YDKdV-kP3lޠ,TB<~jvpaΥ= ({_+7pT)Y!$dFыF_+ I;g2[*-'V,LIF#P;Fc*d%yzg8"Y:t'[sQ;NdeLS,m<MySvGqʹQʌJ5+6965}/j:#tɕǢa'D/[QIG/bzj0JIBwH=zlZ}αƒcq/˱LA|vu<ݴĜnQ7zS`>%xk̡ [v/<šT>vgLja Ƣi?Jb2p5nclavJz'7m:W$޽YJʊKVy?w;>9;=DǢm#<-̇-̂kcyZKVE1YHoĝJp/p, ?f,(FW#}{{vy(I+D6'oԗ^,ݓwd6:Ŏ D&45ʵpՍm_eznY3޼;LSSwn\ʊ\](ӎg KNHA?dK hh,J75K#IU0(#)EF.SD矡ŒVqK?@OB>߸|u͞ uEPᴾk;tpKoTʐjGS'K.']DY0SŪi/v.]Nv7gl4I$Fְ2Hv0!h\^?4&>& pH:W($lO2 #)~Xa8i]ֈUhx KV\Q$JB ?#<x!G4"$'5:ǥPy94;RDqjŦR=6GzL׽O;piq)'jYXI9X}TіuR *Ri0i=p4Z!/S3] T舉IыU*h_)"xbJwJ`r&N^D[pZe ] e}u>V:|53ֶjWҭwd?lm5q_t;yc6Aɭs&NXYDK~xiS[em0 fD>h31 {!Es)2qXy,6ns#Hh~q۸>Hq#Ӗ2 ʘE=P sS%/h#S`隐nnR@ٸ߄)B zb-;\iOj !HĆ{.fh]%Z$\i caNنvS|JfgR,%|smE x*[frVOJ2ҲZTeMkdd#$6Jm Ah/tDAiEP;pqg%ji%>5 ;DU߳!雤Tp-hZ'V`͂6&dg }$# HxJtGؿx$y$ N ➍ܝ%'.'&$u7뽔-:cycot~@  @ḡ[L$EY>Q8KM'?bOt(R|*W[0mHpͺ4"ֿf4C!J<|2K's) |JFPXu1Ζ% %Zq:x)]Y^?!JdnǰMu/QM1=>%L| U`׉Zf#v4 h!x6*+3։y~Kճ .N7.}˯: y`F1]585wΒs;xj|!=o\8yz'$jvV^G҆a sJ %V؉"o"ƒ*|(`;S9%+)} ajvB_0+VCC,b?]R[4Tt(xzLҵ# !&py<V1Db7p~Ԏtq.]̙Â#EuLR 0Y  յu'%$R?<(IQVuFX9.m $n2 _ 6FsSM9-׵ɕ@y{ whk2fߑ=serb1AsB^}Y4 Vie{%X҉~x!P f]5]r_VZ.yʘ[L9~sh*! ? 4~9K<j^K4= 24AZ_bPdA0"#_;CUfS6 j~+ͺN ehQz)2n8j˴`lZ@\z)ӄT.By !!Ee9"'qQ:A>?A)lUGAd'??"Hg# Ѯdy2 D mq,@(fI:& {ʴ+M⺏[xs-(hi';4NYW 3j>.-E)twr+/(/85{Ř#AT>_ X ݙ 0aEu9YC z߉I"@SPUB%e٘vX뫜 VʩV1m }1O➞1oeδ˝]PO} l'{C>6=T E"bQF=TMv̓!W%H, k6+2ow $OoSGjqsb[}C'Fb3 t)փޭZ|a8kqwhsLGmxWpf Ks73ȴZ;S\E]@`Dh([YFU\BG osԆWfRoA`Ҷj48:"b+aTUj%9Ǖy> n+Ič_K]͟z-9Nxy_Mak\mtEz=&_ʄ~j7a MLpp].фȜFkbB*$pw>BS_HiPaAe]~x[[i,̻_'Ppu(k\_Hh=-E4L`hs,Hyf1{> #\d6`$\|3c1R+!}C4;sS ]sr挍 .ۃu|CH\Ә}-uglJD36$_t4RcGX!k`tNi!%Q.[Ϳd|B]<$#Eв%%=+#=՛A>0@&ʊ4/%m䢬ȽfyC qƮ I1"1GLh;C Ǫ7I=MOZ:b =/(P<AD U )~f8L6w)֛(;a1ʍ:) &S"q۟6ωM\9en+﷠xg 7F2i Y޻#ҡ=]SdbC$|]SXF7<QuBht6Tāl9%K|@ǛB(1RDʝ8G?{qi;GgϏj\t;z`\pl2:w|\0{֘QLDҩ6|l-|;.,pEWe6X E߃<#ȕoؚq}8<3$Azn<;1:_{z?hN|'7,2Aë.Hb` FټÃݐ6vQb Qf 9;#;'b!VD*ѽm, j$jEp4Yq眣70y)2'= Љڸ=8t#2) n7x4=N0 M[4}(Ec? r7Y74oy||i Bk`~xa} 0._kxX*a "%鹧1z ! (*C_-FoOE.Zm;/ <?`<%&cIP.yI΃@6LX,"?:^y=HɨP*_TQ C֊F3/_$/%:|x)<L"0*3< b!s i|nl UW\ͬe x"K{[u(ןW .pn?Bq7P~un ䷾J!c2v.!z!!-ẘzc ~=eoƜU OۋuXD2eoy\G`&O~]l 5yzzd0 ^t-=*r 5^Gɡ=0 z/= M3tmI}QN&)Qm{>['4w' [_ndғEP%N|'#^ǍX+ײ ;6㳃,98^ѣxzz/s^r!7[+P}4 \E$)1UQTiws'3۩s-G;Ioshu5'`^ .A@rk ZtC.̲M/EŖQCQGZq\0YmԐlh|pJ0=τ:ЍQ(Tkh ZGo^Wj C:FQ.4N70u! g6Sz v53j"Lysp(Lym$pBމ=WlW@N棹qvaxGV>h68L@1[  bu~=a6Ư= VSL.'cL#qWp%AVfUmyFB|y!zS"!ފ\2nS+"|WS$~V <'T̘j1CsȽ^d%LX` Lo"|iETF<с6?u}R(34SQ4RIUY?ҋ{I1 [\AS}@0~idqJOc<3i#eSJ~ljw[$g!HDGf(P#-ԈIm)xɯFVi :dnZ*ч#LCW(;ۙs[ȟ%Xl O nj@(J$ [g(-vڤ D)T{eO8Kji]F|?شU.\lQ}B 7[1ӫ"1EBu|f.g,p}"ܧ .4ҲFt&V1V=yJ>n_pB o5WA2 fzNt6%SvdF&2!%5 #n\B/COЅ9t`JnTםBƖ89ǯM Csqo\y69_L dUP2"'{[\wSkJ;(w88R1G,8g6NJH$!ǺH;zҦz¿:$odqn? ]uXsuGTY2w*/ԞD_GgWp@S9_K;\P `F`x Z i_sg[-8{K`(00lAV{&_o GR-PŞ|%tkFz3tc΢P5Ui`t=Tȝ|6;&Y+P\sU0;t{&US_)EZs{UBy s~p-v"O4Ptu"ԪV q XSTU`K9nΤ j(=Hzv{N͸J8ÈyS~Ocx5S[cGCbnN,)-˺5wFfgR~]\S.a׾N󹇲SZtu#G$Icsl¡L+m&jK{Si6cv)EF{\z /Cl O /RaZ w)%S@E{p}x~&ҕ< ^O?l'80A8j{;(4 r2X@%UJL%~~s+-t NJ=ߖ&֕RzOjqGg 3 Kwk#N)4V}idw6 Ƒg̭⮜s޾OL6-qLJ'0#W֬)5Pt|92qtQ76.,QJIe:Ҕ^SF1p11]Z&.O^w'+ V6D8>\oWMdTfurȑgp)9FKEqp)TuA=ZC6I z%Zbk|vjJ0b5cAzѓrn^Rh)\+Xh݌ > wd!)Rдfepi&i9_ He} %U1>fc0Nl1S*6̠zQVdr񙏥垰YZ91ExI~6H,%Ɉtb܏%Z/MidkHUޚ;W34\I*%EYL. e/O2HwtF 7b<%A/8zjCꤺfG#\; MLH'&Dd>};Afc+`G~NC(u=9^fY9^!r8 &wfnnv*?c7KwFam6z(o.Pll7nmV^gr֎`^苑ʸp*eZfVmo2ROX *wȗ'ϖ[U  gz]C׻evGr޹S/m][34 $4ba[&"3P gind_481Z3[Fae>9I^>~8;Z;a ǐQ0!:KV)ߖv,a1pg n' ֯ 'ړh~sv Ɲ4$O >QIs*vi҂/.Vޗ!XCS0# 9/%@9p7 ㆑5w*СSV#~wBu?2뢜x1Kל \=|l쒘dF$1@"~@yZC0UDG&{q!Rp s-uӄ2b£342̘ȝxyc1em\.,_4Mq`IЭ*4G2:h9Y%┽7r? P0( 'V_xA* Nr"MC9ThCn듕0wOh MJdaJka$Մ16lɋ~\ xt١?!+ 2B/E9.K[FGՒ#DŴms0RZ,fh@x)2wv̄/xB8Oe>t'mL鲏Dݍsu,Q"H",df&qXf\IDIxST^A. {K/9~(4NP$V4jQ N6ɯM@&V{i4oAO#FG,W9V˃::2p>Zb;w/[2%I6Iiv`m\@ +2TizЃPx8ZshJ)ռbbYWBM L#arA(~ LvqH #CxV)XKTtgo8l-D䮶۱6-A,d?gBA rϵheb^'("\`OJoQMK欇tAB>կIex%{dJǘ.vС%ޫ6$("CMb=n_&Hgܕt HE&!RivEPgo­}Jn@jpUORC' 5^I4x;:1s|I) [3[-Gѓk! Q1 c@(܄@3YSڢMԱnb>-xenA#_۽IP՘Z}Ѝa?ҝ*$DR|2]aa?PJ(=ww:2ަhg|Xg48ֿRB, ^VT/;=3>6y3sl(=1Id<$ =¨]req+{MO>n}~AWNbd!zq**Tu p;箴cߟ<}zQ4{^;PMJYҚ*zc!@Do^zo Uܔ܁-עiOoO6T9XmK;ɸ͢ ^8S&6ټ;M7ur-]邛Z?bc sT8߸^uF Y!FT!½F>(R<΢?cmQ 8 K%qw"G=ihms`HxQvI\Dl\x1иs2Qt1%5-qE5hrfM0E<|S1߭bl ] ʾqj)iKgCDXkzX[yV aT#083 hʹ (|6I0 c>`WyF咮ʙ5 *(qnfJI~Z,֘T Y~]#F j\Lڎ엲ʒq|£Q`9c[0k9w&b;&= OA`;HWFa7;URDUnϓ2C.`Z2JFqaȭN[3b<8C(cNepB0}|s%et$%mqpވLl0rT(='a6Y?->/VXC9瘒&Pz_ ϖA<\G;cn=#8Pq(1 g\QEZ54/29u*XM L.:䅕0P罸NBi&x7rSЁ9eX6n}J1|OnJ7mi^R|m\H 9Ukxvդh4 6եu ||VtVASFd"М95=Z^MgQOn"5D-~zQ:őNӓ= jG7l,G; bNGIrS"j bcVtVbe):$7.|~7~j8;65ZwwҰftiQ T65μ+ۓEla/适</1e6d0RE:qN3Cs6)ܬo_^;I[oմ&~gnY.A‡4oV3J݃4>[qZd~@JnU ,[kǨaRr!gїm!U68Rul}g+׍ vR Dž͘C,6V*ߵ tI*Ejхs!T j4(q/Pܦp0J~O$[a؃HKɔ\MV'q ТB>21<b߀%랶kuHaŊN]$K>g&ŲD.R>V) 5n-;zܕO3H PX99);K+֩n5)U!Ic2<T[=a >tc{zFL\mjʑ=1aH/T)+ Mdĝoۧ0 ͻ€];j^nofçOo4mQ.̸ELZv]=$ /ZVÒ<t\%\Fu}1 tZ=g1*;R(e>Yew(o聛P~%' n^"pIs+ foP9F3]М6ʓjC5"j6PǬ -)mC`+/@ھhM; -1!&!׼K|S*5#EɜUͅe/a>u߱q/Qr"[70 7r+X{E殒CxW!XAϗu(ħ ՆjAkYF>eqO7U ;)]yΌ\ы]'LC IqI_ղ*)ה]|B,5_j~0u+-'6B0 i&)կs 4m_;|/UI#vЦ&1o$`onnSTEn:Oyԕqbx a#Q$Z BB~C(I(%4A{&&wFP,W]y~i 4(G4V-bs$.tݔo4ו誉q'hB=ωA^%ݫɲSYq,.^J;S[9Ut]"lxQc4;ސ<6 G&n㢗Ì~8fnj) <&`U9,mwf7Y%؆;ćV̯,] lg>u^[(Ǐ0Wҩy/L[A4cɫ)\2Dڄ\xl,(ӥHxb)nu\o'0أZ-1☉B=/fe{4^ݠ_]hh-*jvSyB`y2I4~dG<i20O/BX",69E[ȼuA}(=-FTI3w8<"]yI-0qc<ԑ&|ƺh$]!æ+; ;DZ_ӑzOX#gPWmů|+ M䟣bwn.dϼT`:&kQrcǜ 7LBHK+ObJ! ?U1B뾎_9al_׼" %Sv!, DLҖl4ftl3,qG$7y)Ὄp؊RŸg'[i_On߹UQ`̡Y}`l!av0c2Q|'U3t)TFdESIxowSQ;]i={3} pqQ&e@nhn'*Ȱ Ux`CW83@ǿܢQѿ 9691pZб}6"A1䞟H j9hm ? iD=3H=jdbVIO5sW jpG}JF" 'suD)z =gCs! 4!rt Ul5KS>Ci4=M_1PZ%~," NSd={(>OԄ(fDx!wjk>Fl0|2w2a \ L0D1d${2SH';@G=CQIuH}&KUۜ]aØ%9H}c(>UFKs aDA17$]PA*Z;ʳřWruӮR?cLkU!q v+d]+Y"kY,Qb?7Dl6AJ1ߪK q,#H*DS )A 51GhP*D[,׋6Fקpڣ᷼=A: yp{lTG^mgzfrD^SlŗI…6/{!Z5 o4H kpi0^6 I`pi#,]R &M8ig&\(Ao$-(QXla de Sw;Vg&6ݱw]Ӱ7l2Tp9oY\^oYKK.IGaB<@C fXZΪB(aϟ%ʝ HV2JFH4s}4+dU8X#z:T&X,&ƎH%% 7zsnNM5m3g{Fb W#a:W>}fxV)nQP,8x`oX#.:>WJkmǹ(~\H4MBǢAѠu~65ϓ+449PژΧ DR9Ovjc2 i$74]y)(X=qrۂ ঠGF!t@]XwleLj5@^ r ߔ؞[\[BY2, gOpAn<.[,>t(αaP: U*7'I_j/0yGn+\+*3dSA0 ٓ$x +ampK< ȝ <Q܂bV~DL#?]<}OcRCW6( ` /xV1 ovxLkڌKW Ҩ+F_^Y`QRALi5ʷF70ʩxa"x%C-ӑ<s-l/7ɶ"نg3c~RY^~W:nvH7GDj^t]iŗz HgDOۄ[MV!)C@l)O{`5\e$ `uG10\,,]PRHJ1ԗ**=xlP?|Tb#~*N.[QiKCdk IdKE6 5%3 +#ν0dkTn֌sNY%BM&#3n?gK5%/hR;#? d$Pg[i۳:6ĵdݕnش2#:9y)W \tݥ6׋aE,)PSMkO.Cd|LU,Ю'GK 4PiFk1mQ&͊6"CVJB =Xb=,6- wj-d4=y\FRGC r@~2l3)n b>н$:e,4I)+m:6HCcqIlc9&P>TZcpfM G;8mԻZ=Hż`EGexv5:\K_ccHYwƨ8EsTU^N8D uc{Ն_}DȒJHuWDcOxt9~8oޱ!~9[9)g<ƘMH@΅s{iNu&_>vEBD·&޻԰h,ʎ&`p¿qe|q[Ù$[s^[u]'ʼnKy|Z v'oݟ6ut5EmְD ()3 =bϴM'ڢJ@8CeM2c #kS^NK?\ڟKԃ>$s 6#{ZI9/p 9=5՛ fNJ"&^$޻9& Qc_ ܧ *' Hrq?n=c>m~ߠnK)zNGVn=() %b@{5: j=C ;MwhN ݎ2X-?E!6IWFi lrPS]e{8[4jʤ‹L"ԺP]E~bo. K?Wgf- ^ /}Wj.z#jODW#EKb?2`nݤ"L @ Sq/qY(O#j|_E >=ƞE~ Be%4C[˥L2 c LwND ` A Q>קۓj-Ӧx$.*É*4M ϯIF"WMSȋ)==ϝKP5QT0 H" zJ0ڠRȤaR7 I1ZU(Z&Cd;6-N/pٞqI97+^' .awhkì nXbq[XPX>|*#hŬ;6*'kv:[|LcdAzJ1 *,,X0KuHͶ!UŠaּaC$GA`JQ~+1^XR'>u(*c,|{e N$Ũ5jGس ,Q)rvҲ X:qqܦ# ұƆuT,ߔf1Y {(UTSFE>ex(=^0pmk.}5/Jov-pZcM:.وpDOߎNF4nAqM·o\d|*d~娮F92B'ٸ73j{IA*FVt${lrUJ{ۯƒ>)JB=dk|f1iP,}j*"n@c#o))^ٻiN1ʳ +I;ϟ9.گߟnuU2X$,QGhX51!G'"pS>Ut-`&!i*mʝV$m!ܼWl`J''ȄD[e7,g3op;:xGd*'Swœ {&aap5D9^*ɺ}=M~})B3{2G]58\iHe:;\VqIDZX[՘IEdafNyՆˈ2._"<-~3f z ջ/ABT:/k_{| ޗ\tu,p$Rc#t]{w1yyQIWE~q!7YX|ꛟ9sp<"r,6OZZ5ZBk%NQܚt].dw?y5P~au6ħdPi=`Nx"-t)2Wv] k#ޠ'h oje8Ɖjv .Q]([GwCW%mIy gT}vLRn{( .sevI$ )|q,´K{\|n J\^'^H2}WPa =P)9VY/v(laJºnJ: m++Qx(q8I.r.bNRd`usrpt $yj& S2qh:b{8FT3OL+;=2u(4$ }Ƚd,Vɠ3q7k%5W}?>=Y(OqѠG'ްahW>c򵝡ret玮E&0ofVG R%JԺ):yJυOXlelδz0(0ҽz]'~hE;ƛ3vEqR]&0ݩ5Hbf3:OIsYތ7ZxhxVme&#\3a(*y97dKd&P[uI+"<[y -d|iSB /jZyљCN ,3ҽ$⼂hfGQ?5 ΐIr_%,<تRk!d]yDŽ1=;.-vkKtx덀߸2wOOo:L1Pл 6uD?+If *tnM 0@G/ /TI+h'aM_#$ U<|$?eA7/:d$UUleaP /˸O.=֒,aЖy(EFD'Ba{_:%jSiQ+\dv 7\Ph{#0C!y&΂pD9kמtle ȍo8)6ɉ%9ݡ|o>綸'ou)2SjŊ%?LYj3HjlJ )[vMnSi\K<)Iw픤{$z5UCuMU ){!F9k7fM05r+GKޕa ˻!FH ׻4wim>29L^v ]iS'B&Q5)EV^zED.%3p e }̃^Pہч?iwIq Jpbj0e^S.Wϧ=B";L7__U kSF'co$Z~ڧHyy T:ŏ!?LUx_Rkj &,p}D⹇'\/|~ؤkafшmG2i U0roB2zߺncx+EĽGp9`FPZTbZцzCNtqNeU ~{p*AMNk#(%>)-BQA)uFb KZ>`,ʦ9_">±5lA_gNVRUC#q4p'__ܫC H2P` Nd)gZ 5k ٹ%n Gbq$u}gSS%'ffNkIJ 1-G7TT4];F5$:gIOȟ9ŬHR؉G€psϣrCu40<@GN37";T>Hِ<.E'鸜Q#δ Z0)E' o7Z~ tN0eQ!j]A}DUva,?/;w59u܀@%:s*21WLKaO&3z%ݜҴR?Df g!8"zh3?*I!#plH29l]|-Y9̢+Q'Ҵ$z 2wzXIHXU7"5r|mF%Itj'\ I/ P͇fHW $*ܬc,R-& VQl;JG-"; _ i K{ ܐ~QŖ]}u}FY΂gPaZ%,\fM'$'b ZcYd/X6l5HᷭI)JhDibR+{Ŗ)UpxzJS++XAWJ$V2>o{,qYj|jPvR&}ӺOʍ};7Jw&S/D>S|ePюk{3{YA`-S/};^q'f%awU f6#n@A#H*ti:^TAn__bjQb܀fbmȈ K'[l=%icnBFt$2Ӫ+8Ȭ]"/t!ہ\x|3. &ew4#{× @rX 'cёUu=+<א2 떷UB v!#ZEsIR9Ssl^گ rHs$KػjG'vxB IWNKoou.*|uP821ճXe1]I!qXsAp1tߞDSmrˉ[7p ="qͲ"Kժߜ6!@}uFdqWfg$gw4e VFBb'Wˮ uxC Xopd W%}_¶kR@>W?(| $];'qX/ePN)g;{!Ю9+rӡ$r(;<\-,Pf K\k$nNξU|ֵW*^ۤ1mR EL] Ʊ`PS Q+bSKmUf^r;|(?I\%x6L bay_o~:WkwTB,hP$\P{5//~o7*td2hC _Gd5N?Il9}G[!2iM,K-R>7P1ߟwbl}YU,~'2 o1.sDޘ$x[ fx)k݊#! W6RoEA4oTU r5-sr WR!=%$E;,A-@P@;"$%%x g ˸ՙYI6e"1A-pzO4І_% R!LXH$_]tLY:E2ǖ t*LtSc)3%=+9$J*CŠ e ]@l%׍Zy}'@\Ǚ:(ٓɜu~J B UpT'SXǻG PC0;=]HweQ(q-V96cw즰sV؏u꒙o]jz #1?^FH {)bBKt}: ʢs3fvtrpҴi)p6}KWzcK.ta.U1ي\8k锐:YnXӄH.&@]Uo}c Bn$1IJ]>-W-b#{f wyAՌ8*'S Ŧh[96Xһm̶~<>uiE'<]ʣpN,1. 4e Pmq. "[,h12Vͳ[Xv,jAWp0)?%ALd#5Pۊ&jIR=5 1' *Uq]1O[.mNv vi= UҞίm#[\XRk`wP\$s;֜((򁂣zޡ"b)chjv+0vk%Q/9+.YWFYM*" 8GT{J 4Kތ>D$BzY>884w, Y{ }bSqGF\pPbeRz@æaY1߇SɁ ymg^.>! < ~GoZzc49-d爭À*3U^  RD0|raG#M2IE3Dx7Ke/kGerD>Qoš7y,[!N)nFZruq- ^&*}6#!"r~Lqp.}32+΄"KGbA5(~X ̮(v|6l|kVUb|l>V_)zMeql4ғpI*!Ѩ<:e?ڷTN`f8zBu.xݞ<3edq,˺ ]CΝ$vuET? iYΒB5UXF$*؁7*ifmUE< v[d0L !anWA7[{b9lE\%8):x)1oX C3%\,XHIM!X yO_9K)[sUWXe̸5KLAVҁDSL{""#Z6 3Es-'2h\ YnNPhk*EK-[Iz[aYeaUCWR㥋2g kPͱ4|c.b8 X=(2kT{/Y햀7}w֘+u:d}Fg}eןRquhĝ^O)>t<nZj (Rk8Ur^ S&/4{4O8 ieE_{[igPᵽic\[’eɈjOBA"4v. r馁(M+lvzzགྷ(4lSwAEبI? rE }FRgzHs{5~47P;8-  Lz\;nbm|E-Ka" fzBQi qF,8Foi;xdEqLi|1MWUQUTJ#$y V?64F,"V6ܥ1)̈b$A8Vm˧Luߠ;vǂRm D!m8s=- bWh:i^J,CgBK1dSE)^m'e7`Mل.0v:glhHx7O &){O! sH2t {Qr^<ܦBC1K+]8AY71ܿu:$Fr.΢+›JpF[n1Nj~xԔ"cnD)"ZD&}RD̏G#ا-T˧sXS1`ZqDD#/\+9Zx_7系h} ~IQ3^,+7oHAҽBv /wȼ=aiXŒ,.ȇӦc~\ _3j~ ѣ~\ΦLu*aJ.|M1S] xO*w(>sװ@Fbm7J,on"J"::ifOkHCƟg3e+N/ۣWMHy$0Pg u**RGGLL]48+TM`~uACVswYIVcaT&Aiٔ|DLq\h6Ëy}׉४,^B(\._#|GSd2as"V_t1;A|+v榮˒@;+?ju9ɮ7Mx4 ʄ *~q3Vi 3VߓB~>w1FV#=V1|}-knM&ߝ}|1)LWolǷ!>ۣ.`dq9j"{YZ1ZI t;SM˕ c_Bo".:`cs4yrXz 蟩L 5%|`Rbh\Oz󏥺G"4b1AlBݥ)zUJ7=K) euUc-Ss<l2!ab :{wGcbVX4kfTIMWV5H0YžjPGq[|a"[9jWsX!9Vi*.ϡgB_@q )g %~^8^۱_{Ba-5ੴuCoYO|:oHnvucLAz3vy ʐ_cbSlMUT-J<.}ΥΎ{m5,Ǭbxv}>Rz y҈8Kʺ̧dX+618XZlђv*͘F$؝I%TQ_+9쩛/N(]_Ktd:ls P/r[+RyWt#zyOvs$r l"ݠ{J,OL/Ta$C@l;"2"O J?O]$v.La21\ v-0Ǚ.ZC]&m~|՗S|S1l^"pŷnqkh𘩴#}u@G64DV<2q9~}M{aZi?$Jѳdڝ1ƒETl`[ m6NźmB"9wӯ'c4yTvpr^pHeQv bk4q-,l®j[Irm)B/wkR]"xqhpkH`.y~^ʯKqn?~s<g+t]-H  KE,G5ܐw5gĈrX@=q&*FWhN4_rW.^NqBYjJnojȃMO΀Eh)RX;dcBkQ Rސεim"o9;W6})m): 5gM>9VXk]Fo͕ OopӵBACB2<)ۜk&tm(~h<쐠YэvSqſ0C@Ƕa<~Fmu;H8YKc?ΨCpԤs5$pTxz%9I5cmPb%k4Ĺtu,XzD;Pr@t1 HQ A[ݣHU$NEZ"w9PAUCmg}L@(-!4:3Pvy8f]=~cltİޔpe]7y%%#/(R0 :!hzȞ: Ƒ]Üt :[It6U &>FIFn:۷^Õzļ:e@6<!q1>LB*N4/ !b*\{$qSȵI}==W&/,&]y9`a >B>*5v avpLr4֧N|vͨG M!Sv1'b"yOUGB@jOdlB&9D!`ZƘ )CuFu<=d ˬBN`'_@]~Åq/ d/<Ŀl,wD^.6[Qa*|M.~Zqm,l-bsb9bL DP1_.\ne$%w{oW<:YSUԩ} uሖE3%`>UCdPQ5U.TbvCnZAwҵ\U`V]\W̤@~=ǗPv ^*˰{m@1rQirކlrQYDw2!5Q$ ~G)653V[U6]X]∖S}NBN[iי%3+a^4[Тuݬ qT5,3LxX%3!2U2YbQ:؋hG,n޽R36ס Z 2zA<15J_W[jvLڥbqjX GNV|6(ٽaSe0zA@9Db0aHW׽A|ޙ'%Ƒ|L`-ź^4VwY q= ɱ2j "SlInhZJ}gmd?X)TkЉ!bZޜu2.69zQQgyn~I#FՕSf3x!VW~t*.\ȯa.ڣia1VFGݰdGmjҴ*k N̔G(=`Y言_/¡pe|̱ϫf:M3LC >Z| Dx)>?xPiQ{2gI]S3I0\>uZpȍ3D5Y8!L- I~-բ~? \3P{j3 o5.0[@T(㌍$X1<#kA$([Qs0dJ8!WIɨUo-eraAJuk =쇅G֏f= 懸7h5"C IU?117E$y哛yڠ{jh: a_r| eYgXŽBJ2\x5viA[*[t{B `X, Kv3~ͬKnz: quԉ{aeU.zHJ5cfvpR(\T^~ <עwwjyKoTCgv{p>v6Q k1tydtuAх6Awn| .YUg]Oh+DV2صS 'XjyȚ(o`gZcSpQH°'UXJ? Wޘ%n{@}lЋO7 8(%5R,f(e@RJujĪx8$Y9jKͿRG<) ,ާklJ+kߧi@z a ƼwyĀW􏏀,$kWpHBFI*2[dvyE~i¹\1U[^@qvӟ7~ nB3OvfsH@BuR唆.qqpQ@`YřHiz[;q\RfSx[~E"\``RɗxeQ I?R@Z5a\' Cs5=F s]4Ḙ]~);4nn S16g4 ˨cF۶x@xn+tNMՊNG0#S|P3qfT/X  |m-V/2K=O?c^l{>,GFPbHe0<w~y+CU(b No/5ۮ٧Lƿ.;pȞ8{jM@M6y`*5ҧ'!\duPa-os1eОY;F98Ao,q:3T{@9oVlG$!^U8b2P])kw>HWtFh.8Nc0$謮3 $NԯBog&d:InH(诘xV,\S\S<|+Kj" A(0F) g]Kj25/?H"6.1,Ge$!y2-<;e_}->S٢KhgDžqUbc`{gП+(i>;k`y&' B7$hMZA*Oz/rrg!L땨_Iʣ`r综Ͻ8,%u{P=מАs­5q');c7_ķR,뽖*XT_˴ C3J aGV t|ϻK0m7fFXUz^rKLČy9n ࠹~TApS4DgXD~\$4F^>3AP(Utd7+CyKk׫P/J!SZ\/U ~F|wa$ :'h| R'FV<;ݭ:.sKG_D!݊=w_+ƃـ&N5WQ4!e/=׫oj3ʴd_XT"U8| f\})$@ 2j [ɯZ'Ju*"_Љ_rCE6BZ+Iэ.eBt:MtIx%zDY$=3BI"EXOLYS}gV@ Q7aP*Z3N*'Mz'B_r"jZׂ>_ tq{}$yrK):GG󻒓<ˈ?꫻wJH|ꮷd2qF^#y1u')F.W %CT̗ &R4<Ђ}&IQ ߡsWexلI*^a>5r:+7{a j щq.)ͱya`: ;L m6CWtF_w8SR~eGKi،@ a bCO)ɡP:myZ4О}[}S!?;2i&0'~oRd",VG~PM3wCU:OC 鉕F{MO&@(O kEħ+);4ye R8'1SMErFϱ!~wT>W#D2YYA>&>۳!<&e~gWeB`p{jlBg~pu/cŗ io{VmEE0V ʲb6W)O֑t2O/qQ7/ m\WK+$¸Ncz=pk@'F%.bWokbZ:9JPܡ؃͛Iq+vx&KRmR* l 5yAI_+&ʛv y+  S3tܷC'M\,+幹 BWPnD~,jP_X;. Vyd@ۚ",h9LV G-(BmF d\=k((ui@wSj.'d'^Fm1xsej U^&l &aON:Q8j"sCǓKS$Cc2B!~-*7B@WyE'̟L2\ 8 Gce{ L^{)aݶMm3fMʲ[mO^M(nW'F /ژwD_u$gTCM_(ZX_ׯ#pϓ4p6?նk-i`2UWiS.)ִ[~>iCk.JXZ|BDK=!,t(X[S{Y mwB悺u]gGCdy(YsG>Wk\C0y]{VIVl[S5P!folN6<< nҙFO5߶ UP, PG݈Hfh~޶2nBz24 +|%Ç͊xyѧV캗 eUq[KVQN.'[jiޙ_z߻:ԙC(;XkEiJ!g27$' 8 dYrxHD}$/Pˡy廖-Im.]WFc!مHC8vG$p¾lQ0PAz6w{\6 ^0HԔm@uW5W.~ ZzX\Έ󈢏Jp2|:pgdSQ5vJOBqF8][^ ("Oώ/o|W)*1>AWWYiw$OR5p[I(FmZ `t c־OIgD^U'mO9Զg-]I'xsI\.VV`=gfM<j)[ 6*d~++=qB6w1=eр6UxN[^mݔg)g@qmTX2J,f>.̺3b5\`gt2пcۿ]0E`[8f:r}V&Ut@aӨO3 Fa.(ZRX5'_F) nȒ u@E^tVD7cߴVnv"Q\{mzSZpb"ȮX@3 Eն]>F>(!U.94[dlj-NZ[@b$#4/AWnڼ av۫HS*Ξ\ q; ]Ƽa"na ʈq\:A)z 0ΒwO9#K2jqL2^l$'U{ =&ҬI,kh1197 o:*p?\sE>t1KzY ;O꼖z֤~ _%QMү+Nl"6mPDS*d+]@ ` ˒,p+m\ՋXAl$#2*GbQpē9DҿMpˬ\i+Q &1~k HPS#lݞ#NF /T6S/U׶Ek:I%- -Y Jb&r'aD/,Cg;&Ѻ{ 7dLJ?JWnjC3L5q;b|TqM[i-a}h SRoU\t_;ʹkX ,7ٞ@iO-? /4>N~[X^ˮeoBZByHMOTػ.eH x|c4D/J_wk8{b؃OُFeֽlSCC1c]F` jOZ}RvYl!t] SqLބkh|aN H5sTH(9"o +3[~ j=d" dAu`l[kܭ@k5Z;dI鉶oG>*ǁȥe=[BٽK1kƙhT[7F珋G qhs}0G1uoV_3MeStwERx-I]\dzh)d5XeQ)8_]?hGqmyF,]J ^D9|=5Ir8@Zbzl9L!.;uY2MGU <7>kN)r=kXP@h)ŕUlHx>3'²@pX feXQ͍{=y#җu~tzo+l ^HM[WÆѾp~$EJqI#6GLk%Z"L6T;pouL ?ѵWxn QԢ;dg#GD4kyaq‘Ə.>{FeLqJ]*,U%2XW7)v"gn Z|VI#z)[F4O(1'+6}83N&4 Z6w> 4z6@2D8`x4|Qgp̰BB\T!r1z~"Iĕwj0y34퓦 mw|Ix_e" #Jg*B6&m VzKߓf4nRh} %t&1%JEj5N 'ۖZe 8xljF&!VL$f}T5^L5|.rksG~la#jgI$P:̦2^ W~UCvlQ(P nipقQE*i-/R JzR::v$8c Xt0I 7y9G^bΥ]jވ= ‰*Cr6[K~CKL/}aobx#AAlHʰ\+>,`a3]0K"L AOv{\ZGB6GrS>HAWYozp8Qaq^U%_Yϥ&;|ߊv5ү)= Y,hOqB5h<g#Rg`>bsVKqxҒIrIZGB8dHq0콗}"S1Q% etpvQ2ReKsbs*:A"Nn6eŤ@荪 Yqq%x.t "^g l``+Yԧ-4[MC܁O2K12qI\ ,qoPg9 \QXկ0TB8)v8!10s+nZ\]y&5#Fbߟh=יԣ2Kݙz~e+$`iUXnߣbH%Rk Qyq=a*ۧ "]s:qaWi`H+ qx*Y  K9@< TnSQ_n͸>iy"#ZZh&Q΁Y%|0V6_iz4&ۯ\LnWkKV[.O$QzV, |0Na;oY3\|7`D|( 4;h~8kV8M|H:k̹)+Jn5J,-)X Ü`V;܌P#7}G=}LT"Wytս92l(YAfp°+(6bk1emn>e lkIڪ[W`e|q#5"SM4CU 5z`Y:flϙAhuaԑՆ{g'b3)ݩY#`RL bk, T7 eaC5F:GR,mROVa܌K6I;qjwK.ӎ}{ qޗȭgЃ e 𷛦˹o3(C fr$B'׽U$4}ڻ"1p5FsyV vH*`q= 8@BRr!?^J3͐-y}.raQ" YdkҺ.љQJW_ʆ)>IxcD~[Sny/?hĊ!7ʆޝ6+hbsh=g3R&)J*t?6-mL?y91uwS T_qiu@򁂙8<Vkw|5PKZ '^3u$Pfط-l$m/$InJI`X:%\ݼkMV=TI`~#eHoZwsP夺H YkOCs ܁WaX& VmLIzL퐈̳, FWmM@'j,d+;} Iw\Il =aB&wG{ 5v\T ?O,oPYb0{!VRԊwMB~cTy{-1}NW#fPDK^nɧ1"2"2.͖hgP!3X'9S!&1it XeKrI"Ѳz(1Fn*( )e9^ʨ]򕿒pgW(!Ӭ{J$cN;pېUH<p!:Ƭ(QCH`RewC Ç9@OmJTMIC5с2H[]dYMƃS sa& G;%&pBb.,g\m4[]%@ bO%]9 xMseK )̳v/PVDF;G5?I|t)ЗqNCcqbv0 m7Wsa@wFqC.ik%m\3ZS_9rwM _vD.i{5]{hrP3}bqqW3ȯְXДbHϬUZs@.#= p&Šm8GIkyIcZnDY=HMŒԡ(/[qlGp6C'S[j BYNOaO #;U2 K,Cg=v%si%)~hݵ9H>! xܽvG2cݤ[&sQuȎʮTWd!! oOGA&$%z &SHt(3l5S'qCoCwJ}o/iA1Eޮ8tFS >˜xvP|M&L[״FG|fs\cUHJRMmG~*[XO]T˙RX*B~BUu I\ذ}C_qɋs 1' 2tɕG? 9%ݦv !e]t/BTs紒%CցhQ&}om^oܗ-@ \ Tj0!JkўM9^Sړ6lk!C%=s:2c=.T;s^z>sq%A6T([gh'h/jݾiQ,%Tj tFZp*]|¼ٖVGRN85;K jg$P wZfױ1+5mm& 9;_!@P}מϩDTQꟈvmEޝ'pZt;ǫ-t-{.ߓi'JgK@ TK{=qrw4}Bv@w]) mY$"^ s< *,&w WzD%m/L7v5'6}L0XM"9F!ȰR ,e a`Ictכ)AD{͝Dn $;-$ z ^j=h=;,hHPˁ$uxIoHCpF'ʫ 4o^ %6xו׀8<ʶy mABq7-͎جAa{Ϛ\ veEd@A\ijzYy Xrv,Czs?w(hjmOl+jٷ0#:AJWG@+9OR!fۛzep4 Da}@[S[lFg3}#P].U1-C 9fDw1:ЋB ~Eƣ&-m8J1~kMtcl"ZV\P#o {Bj>eG/K=!,1mV¾N/M瀼癝 ?Z@>2y$'fnz~䣈ttc@7הU .*U9{8-dFfX7 |5HUfGG0њLϧ9d)4 [.q=,2gO(!0HnK%&[^TFoUgrx ªs<0XʄlY}ϝMG/4{S."(Gz{Q g_ ,'oIʵl멏k @uMVm'hdϟX4D>\? t dFxg~aj7xo0 B9Ų g)Tc! Ȫ4n^<0MEa{_b?\z+&r}Q(ey 4m xbOaAuv@x51<N@ ES&wPaq0&GL2hV6,ؼT(Ar9\cL̏H}=٩LsMzGצwպg JqP䓹JF_ؤ^VDN_R(b۩bTWʌLY5 u :Ұr2$霣|ؠ}D+VmOi5):^H". wiF*(]gMgK |B..r4IO8k /j%r,";FjsAOCLK;}Ȥ)WI) i[4c΀&\%X ;dLQg8/$CtUqN@͓+gbW\ޙ%Y߆:T"K2]ZTI?vX K# ü^q6XȊ¸bUCxD'BXk5bRBӟpq@ 3m7;GØoW?2a) j>!F 4OUOW_ªPG3I'6z.@(kfM"X]a1zi-xECW>OxqS؋ w{ͭrR @>j]z'wDo6 -R}bVx`*l\s`}\h lݶmN4SZ`jEo.mRkx>fo 6"4g[xd\yfp+g])Z:q v<66`a@Nsk%]6$jEY'B\i)8/>wK&g8YT7b8ߍ#>M^l*8vKW`jqS3v$;l5\z*C/ w~@ip=vWuV{Ss֬NM?QWwA/3׵2ƽt*LDz<̢<9e롊+J[ENCgz'^|^g-xmѬU Rw=hzt"(;yZ:.;4) +7)ND]]?rCL~IXXP 7cKStE =>WH9q=oeC71/P&<5g*HM9ş\|ɮP4.Q%1N8[03R0u_0ojǖTP_W\&w.ܣiՈ? ˽ ?mq >m4Mlq+J3J:0ċA%ppQʿ|0Rld͠^Yp5>?.,Ӂ'ONSP-K_8ڏ ^p3)4~0W>уva&!,(u&us*"x_?wy.4 P*[Ñ&q 0|?Acb)pkAID?Qcq@^=oipbޕ2n.}l7==Yn$u}]-l(H~"$p|>\BCZ:kf9cI쵳]f^(3V`mNxM~јmLn!Be?_u$1JՋn'uAiؐ3K.#~l`(]b‰ S+`n'fhJΜGz<#79Sd*K TX+מTZ#m9KI |r&c2\j\n<`$: U +Z=ZWɆI/VEaqXgZэpߨ<,uqDFYAZyPE_n Ox*P嵤ScC'g!%ԌF7 w //r gg)Yۖ(X1 T,H3Gy@=;/d': _, X:fceLM59"Rl9 RI9gEخg /a*ư>[CϛpCsYmOmSES7ꅮ4*rx'vʐk&cj:h).8d:t@Өm r M32XΞP;w&Y滛!.% cy|;zbv=$@ xƝ0susO@echXQg q>U!|FoH?m5ONJf6inj:v_%ʭ1$_yK6C" ;͓Fr;~U7a`[Nh"5x` E$XA1)H,,؁5q}\s8%RaU,Ruĥ'~ciwx=zH7|b̡5 .Չ]cpp@GQe;;e}(aؑcʷׯldsk̶ddŰ÷ř{v3-4m7h)³ mJ1nmiqLwf9(T" k91}ܿoֶܦ@땍[[܁@C2:6^W=UfvTJLҒ5RRtnM^,p;{ú[H[JQ!U`ci& B7pM#сهQ@9 uCHVTellx"Ax$9< '> wQ4jJ<娩(eL!Y^,hϊPvSTaylI`2 1{&KFUZ E>pd/8s1+hlG7Wym2'I"O|ܟbӘE$n2mNMBlzC@ 6O?]@I7n&R9!?M=118Tz{wS_8nNWmr:Cq*K"OKǧ|(ntO16TŅ@Qz'4+Ḫ^PAxF%VIltT ?v.l /'T}l_u=aa+5|#U5 𼅍&y?9)(X'BDӖK]/e]QZBI5z/٣TwqlMn"!Z-a=IϢC2˼7 ~׳;Y<@:ϔ$u.؉qM D Bde5g s`PqDde%5皠W,N=Ei,LjJWs2L!zluĹ#e>Bla\J^=b\U*?Hv&b nzk̘W/~<"rކEBR;.ǯSY.mɑqc=fOCcxW+ehs3<L ,GU|C`| Ih[`c4>uXU,(Ja9#NTMk[ ~ʧ̍yRwccŊIjW ;c"uެ3xO{(2'qFdۈyDڟ紲Ex:c$$aw(YsR9wQ)42ۡ>79$(6p eKo^;S0q.(K652]Ħm z+ aXyA+Zn}@,^A2LyqՕX0zFKX:`EfL2b/^͇_SF~9jO逍<3Bu->;ݺUҟĩ"oɉ=擾̰"c h"gR[d'Kcڣu:ށܯ !3Lqec&9_ĵ) 1S h&>vܛK*pX}eޤ g|} q|/gHLY$*;XG%ONs6og9f5]%o u} HaSg("#x^P4[@hɷA^3mNT[|a袭;A m .=ia˷X P Y@7QNZ&<_f9 򹜖E4!*zs=ҩ?xP9wIy2 C-^e4gVSE/gWls֑ʩJ& ׎Ex|^,fpʲB,- D;X=CbʄQEp I 9'֤)`فsP/5t6Wv(cJ5(CtL"_\.;@8-r-1 'J/}O ~kgC"XU[L"ޔ 9ioV4}~9GD>nRIjoA\t?"A96W[tL XH<"yĆCb`^4&!"i^" ߅;n:( 2-dS{ `«|kdE3G-/uK C]FҜg3vwko;ݻӟr˴ J|J PlnSmHp?CLc?U' r=rNlBrw\#gxeܖt`ˊ.AU2Uʮͳl,%Y&,I}( OWbo: np1r%$FBQ?fsgid9uCZ'eL~R8VphR:Aۄ8Vʧ1Jmc$OW#/yXKBB)c2,Kj\V1p/w.=@`L`^935fP7c0څxsnRȎ=0Xl:5SfռxiQy!{_mEdp! pzW Cxff%zTr˅=93< GN}M4^&JAa}*aV1>` WViX;tS]l!8aԡpBI6R)XL3H'T7|kѮB\ _߻ ^ͳ1 9~qPk6BT3 1U &5E]kw۪\ogz!GR^Lswe'_((FXJ8}LryS^k)rKX%b3&.NNأ&o|wB+m#e^%rU):0E>+kRbT>5UJr$7RXD)VhĄ "[@ʒ` 5:IKqB")(O E(cW?w/Y薃%aBctNxsDtĶ9Ia=ڸcGd >W$D_褅zx"xlިo<iF= /fw9. x!wQ O*GDG{z_mhOm9C) cTVث 5jƆײ)[a s0SeO 2iN=LArFpmOlo.Q*e᫻GWsW\kNmv^O  A9Mo-~Ts% l &#"j2ّʘӁ9.'1 _b&ivro9Ǯl%0T Ou@tc3j':ϸ ˓d^aŀUi0a]S~T"I֢F dt&vZʪZAVe.RSqTb{i*{h#o9ܵ; \g1%:CR&%4ؕ}Tw #tۑۏĹsGq/Gt\9 )CB'YKt$ 巻]1rBht}|21O[|{󟎜 :uT+)O_*r膾 k:)}_=&t{-kfw߭0\5='A(ƛk -ŧrԖG4>?M"JP ъ/ā?!P}k?2]ݸ7)8RH&z[Dv5r7FZ0sŒbom$>mqAl 6cI{YZJ4h!]̜E]"&4_#8U^rMiFx]_W I=_VJW3|Ky2ҩ>i} zLnc@S|0neD,~c5n kβȣ0Bɥƒwfk/;ڡ׭4ă 3܊O>b*㙮+.rcmprwr|-79EMr6dVB5V.jq ZbA4 s9ݭZw>tEt4^X>#J}| uEЇM{nOќyzC*6vFl3QlW88# =K.Sk*9=H6}J&v0ݿ[Մ;풪!0U:>eOyc cW0O2'eu^G7+J|w./e*8,8Ol@(j{,TMk̷8cmAK~㩭$5VaBSZug4. gܬyuQ }Ry6mcZОDUۨ 2! o$';p؅Jc[Н˞Y5c]1.ӳp7}gd{tZ8^ <'^g0oYP6 rE$"^< GTq-ij8@>4`TQ@CG#3l:W:X%?ETWky؎n#/)Tazd%'1 m O.zXL&?Ϙ.ҒO:(P~T:/fL@zOL ~pܒe򺈁6U:Kf$eqX~f_IWg` | TϽCdU S`p>iB tn|~xN͞1֩k_k[+L#MB14߀H:+AVht-nSօX%Es:I2g`੧&z {mY&T9Kח VkPʼmS15TRlM4ϫwJ8m=!Gz rkƙ]p!UwjTR}}LWG!8Qv(9ylq?Ϟ;5V^wLM0bSLgܞj$fo͆GV"IQ\}6?ljuK9E;1%I#yV*gQ̺nh/!i)0TT5nw ja?lx>1CMW[-gLZ-oA-""-9VF+"Е?Qɴe:~sg_U\7gN,2X1Ƽ)5C`sXVѾb:uJp{î 9/~¼GgYjK=GtBZE "t>⧋Pd^S=(aW"Ŕ}kNcA@ $![5M,r8\wBѰT;e=tJؿZi}N,I^3=sNЎz̮<_Ϭ%|WhTMtofOl:=iI\U2ES~phH#pz`B'lRȓoje@F.KPF|6(+oZVFO4xfJWO\cGf> \k#^\l TW̘M- =HLs&&saJ1}7_eSw6g2 E04FF^η 4d]Q4l<M|<-ɛ%7wՊPh%V$!F¢ahi۷t/n5H9-CwܢJG21qU<(Q;~39#V!Ggt$EY?cVՂ6 qBh7* k_}>6QkJ"ӊ*qנMT.{^/\k-[KϣC:D zڦF~=V+=|M~cKX xm%!ѵ{Ҩ>)_GjaDς`Ys^ROjeu_׸K4D'P}xӺ+/iS"s*Ce=3:&Hst}҈NHJe! _NX_b?IKטyu Hct\O~$U6KK%ZZ 'ʤIc.n [ZwwN6 `N {C۠Mط?~}Pڻ <@gq)E[F"$ѡEVsE5 4P*P( 휜OIc?L1(ƈ&1cu$Bgq'E@Ѥ&c"PuxYmm/uhV.Hft&>T]OYO-TTZf+28Zv!jP{jru\*qfχ,sSVqE uX9Ţ^uzl?Wl5w3T31908'<ذFR6WZ/>#̾y)%~%A%oD0>Tp z7K@(- hW4b` ۫c'S V^\Y@ۜH)M(\s }WhEy@AdTTdL ] C8VgQi5(  yPIGֿF$0N䈂Ҫ+E <@4H{ fAΎX7R1$8">n7ZoaL6dB.{$8HNP2ϟg%&{΃zqȡ:-JQՑ֤|~L'<]25R[cJ&xl#ZAJЍWφ19XAf9A]+p& r6HSzqX>7l::@kq'p:ZWW$P*R)fy1使INhKZC@SQ"_`jaڄλ[ԎA]+]fXB5ے_g5"KVep>\Lտ.U`:I;_*ITzjKTY4ĺͨOo=bb"{7gmI5?VogECXBA v͒$ 6ȉ+kǿ/Í@saǮMމ<9 [ׇ?3ް{&#ĭ+{%Cݦ$ύ?xJ7IO;*v\Ժڝ ymVB)j}ΕG*# |S(FTԯmO'-]4N}xLg#5HR]uiDs"{U:;Gb/YW9;跿M4*4 I菫PF;B\@/lӘ  7Q~eu> t kV1rWuh<'@GJ NsM9~ʮpoTy\'#si:6;^) _"GQ9{_L:)N!?Ome!%ɋ~9(:GʉFYܾM!il>h[N>YCZƒ@%cϷq?-ܕвC큹U~z9çIeqCݷ%1F Kp=)qދY*R %Bj跅"*qo(] ,BzZA݃:̌|Yosy_`&7OhjQN!yqXtܴ d-s^"qqaa5':YG;#ӊ^{K{ҠࣜdYjr*VR*n+`a?^drRX̠ (HO򈼩!.}/ЌC6Y^}y_Xv ,7Ԭ/!-o9 *~\7 `Yk>҃C/FzK')_$cc4ۙhpⳬ?>v&iL)9wBYG*"ݎޓH +1ƭSGeO aJYUj> gB"AhR.s5;73% y Fn}@t fQУiP *Lv77,X,lB"!qIEξry&QA%/b_]} [?ZH[YeA[Wo TD gR"Q;oO9d/ʃS,OpNmA^__-c{8Ļ =((=ѐeW`HQFSvP)e2 n)u_dtMda6IUirKFt+>3q2# T'8Hǥ`hXzJYhF,Vj"XX>vgF~t䡃 9vW`5&;h3_$l6TΚ ,9p]6;3>zVڶˬj{ LKhwb$8Cj(æj F@p 욄PU۲]󳗙6G'E/0[CL^p`Y'D6ýdz+6C< F\2C ~wiPp#?L$ok߫ cd504$H g*1Hmw: y}H?i>XJ Oj):vFDz?uK;ŃҳxKI&ҤRRK5cjΟx}H[B 2Q~̈́Ág 1g7bŷ?1jr(FM##@JMY?Bs )Lw3f;9zg({4xʨ n Nu^#I+*T5b𔹩B!^dt!?.i%d! fKeN%ÿʌbʾ@@^?4v8ʨT]*Mj4v>ho\\!#%Z y. +o k*H;κ?M8N8%ThdiyRB'kuQ^H.BCvӶ$jl9{_:~0 $t9gviFTS|XU3:)}ײaAnXVE.6 :!aDx#BԽ2dWUKa2碡[I]&"vd=w6Y 3gz\M"NEP(0Iߟ6 @aM1D[PAR%s;jOa>kgnm $K“yp5F!Ythy<-?9VTx>]Ia7JJ(d{qꮎ3HQ$N<%uͭ%h_b3l?4[&7QpkFu8Lp3 w6,ꐓT4N[aY OVᚢK~bYU}%\]GW5FmSLh\\Id>KpFF=wgnMoC#WW5<>8 `ǽ얩b6sN\D<q` k:ʆqqX M~ȣ-Te 5KG_$}`()Ua $8"OE6L25fFPqSu`2vpXWg?QOsQE]ZPi>磇BTKWp|A7ܯd.ۮתܮCB}P220"e=o)N̕I|''/ǕLS`5v;:ew-y95Go$(Fڮ;$Z܂F$AF5SzEKRʟ1+^jrrEDԔkY5%L ֲ Hi4:hlq}ǁƂ!-e.G(y|Q>ҙ]O Ir2Xz?Eb4f\a$Z?B{39¨iBcHDQLXC%ǟQLe'ro 42;+c'yZIfK6/vs03?ZK͠"-uA.m&i[ռ50bI8`?{L8Ǟͥȴi tGb 5{ȥaWXg͐ˈu4'˅DC_2Qo<ҷI۫fRB;nRwQb N,R?be٘Z㯀y^dԩ4+U)gTe3K|ݥU'!4Kx;SgyV W e8#?p׬,W~ק N5w*Ff zR+x25UdKsIgǬS[OܮM{xJYeetkǶiahy29YSfS`" COn`&]2{#.D te[M-A 7JspD°͠zV+Vr̦`A G8?vJ-,%p9>da|EQauѳ4M,7t n?"x F` @) KŐe7I廽 Q^YPh|6\FӠ |1y)=[[V_8 }Fi kr|% 21<4% O7ʩ^֧sr:8@=]>\ B+wB mr\s1HŁǠ.FʍA#VVS,9}=mԦ]Gb/ʩA0b?u3 _B32evbs @зMICRJ(m@}DSd JWaP=]k|Rl }f eA)p] DC fVeS ozN @:Sa63f_["c˗I%zW_] R]/aV/{ >԰Ô;1kC`EreF"'Ž{ fJG,4}#JPyyo g5Z۽ /90Uz ME9ɱ4ֳ\PW>Q`iJ? gȩky,6{VT0xUQo ި9t #kB2![];>#;(wuY&VE8+$sE6aj߂ hѭ]M;Uw%q"/c/:'Rv>?Eu[Md'5Vbx%D:L빃x9P9|&M2;{\FnA.\ة6m Eb5ryow %f|qҴ-_o5Ewm6jTq}TrSUh o/=3+ @TSH%WU@u`+A)Pbe[5ZRE;jaho:=ܻ.&B%qXIw(9wG<̳v?P<|eƵq́4Um}]eYiէ>iܪC)g#lFWߍmj=ChEp.-TYx`8ݾ$hgk3g sJ^o>g(#{zrY(z)(N0<Gၛ]Ώ(gz飷F`rj&@8ŋ%z7yxߙCV5dV v5.bk7bl3|]^C,Wk>s lSAUKz.оU8u>FC7 뗠cge%7SN)Ls!r"/?Pdۤt|f oW I|)˖ U3J0f-ՈסEp \n|0Y{T4ϸ wxm,b!9+Vdcb"jŌRX:- li Rgq'1@"iHM#ZKstZ#f9_z߮ЍegT *T~0fizھ,^$N$\QYYnxYG(:cQ#elͭ>uppgx/cc ;a=`ڣ7FrݨcL޶j&lYь9(SdrFzgT8]t"u֨lx &WE|d 啩n*Q QJ֐LޘPcWLW.aj=?ٺAHzA)l.:%5tޱ9b+nEs!QqSJtZX轚ɾq] $w $N/)88dR'S/Lzؕ:+\97ÅbƝB}Ju$gqr'8 |>^X3HP4h6;ZױlAY1_zш7hP  pW;^ J$ 挟=#$?͕1 F+cCsȰ #3ih=ڷAx׎~W@' sZh{Hx4H5s:Ѥ>7RbfSigj/8&5b[ rn Y&EAQ9lheGzLMf mka~c@0UW zxfN~؉#g Mdt`Y@gZB$_2LT]} iNtW!x뽝;ֹyh.f|n1~4@F¹YA\juCOe?TTs3ĿŸ.ji+8N+<($ ; 3h?m{ŏ{x>F.tk{O[zGEryK_TK^- _-)z&L7}OY(9w~htr'ǩ/!*dN ,޳Ϗ $wӖ4%,h`/@g.׀ 'C:1TEivX]U^pfTèbrvc|WT UAa讹V ͈4)x2:?{FB0;|;6;Sh(%")_[-ZUbUR_xL:3M?V~_\B,K[‹vdv/~c&seՂhOP4r䡚٥_ ,$Ou7q}tlOJR.]]*&)VG"n5fv^~Ks7(g̦۫tȸS&牡!==S]ƬHX>nu-)Dp`\)8KZJ+%=&3H:kT ! *Fb٨'v2gxD;ImN+9gC%*$^7cÍ;MɇEl$$Ij=u{|!Ka|U/Ls͞8f`l'%If#߄N偶%Վ_-Yw\pu0Hwa1X$Pҷ]H&L+Y8[&rIIZКO_!PK#H66}5 _ɩzY\"v5x0 q 3cq&::OC̹Xb*SicT*t[ܬ'׍#?y9JjʻGT<f O-'!` ΋`?3qjxFACT˾X);i!eSQqRx;YY'6F A iųQA?qc:pSpY_}?tS2>EG܀&kӏDc1oV~PcО6})l[ ;)8n矂t R#:tWa`j_W$O= 8]-H F`g*PEqÜf-HFC?l` k~V!&C0@Ů6]V-Wþ? j̤Pf_es،Bt,$r5T2$:N*zO4BD9i2ƒ|Wl&.x?zر7//UgU6fg%4jXN YxPa P%̱? x!Ϗǚ7 \aWztQQ/MJIAZ/+ d}//ۥ5<57>/kQp'IcO.xZu%=dO [Hy#a7B΂d뛵GY9a=jb/YfRah_P] 2/ fw׷预x#+'YF"1'Kn'[nUAMUw#: g_~QЋ/@:~|bFT*I_Z0!"qK\nc[-fG_rM-H.j3DLciNR?9S|OnCaMIl]t㫭ge~N_'F7JkX μՅ%F5Xѹx?WJ)ڈ"'H`+ 'sO .~S ݴ\{}53GM }l[So60ݬ}ABϓ4g>9=~y@]Q/ޏk Uۨ r~1 `3UOi~ܷlUGR)č6Jo`SoLv63SByu'4$s"lEGU/=QX{!:'aOXkU}PdpAfGUlIP5 si %l<'o'jT7nJL2zŌhʸ詸d_@[rՍ^hփ~1˞.v8`AL k*$w՞ ?'+(n?nҌc+>w51_%i +b.HJ͑QhҸ9˥f_n pO&zNEuJf˹ɀ|d2jB6G $ᖜ ÉHʁHPOT#g*SصBOAxhc*>9>Oco.i3ul"Q|P`jגTYWEغ,xn:K]2 /QL`'#'xkM@Y0L{,[0^Q$2uFwvӀ"b-a \r$j:i"b ^ek&Z-SVXcŸ?i˧'Zj^8OB"fӆ'sepT@2Y”ϢYmd.ٲU 2Tڬ$Drྡྷ@~ (8Ok/]CH̢< ~~=O}.e䃟WlOrCKf&AV͂Y UڣyM94@{en2" C<˺9D$B]5ߩ\#wfrh@3WEC|kg}s&qZPm0#wc80RV5PT^} tepI-4hK/;2uºIx'.f"PLO, F]EQ0js٤Amx&_f4wc>86\"̛B{[(H*oyeHbimGE{nN܆ ww#$&Y "J_%w[5r%r݄a5/ÂLy]ŤS$/hAMN_Dn) VuVٜs:JHvKq/3]q%GW9{pfe~[&j膗Xxxh23KԹ+o-I?bw.bǦvkVM`{g sP"-JbAߡR~{O?`Z[C]uÍ򡏞SN޲%DJnJ  } Pt^{Sɢ$R,q̥^F,SRP&bXss-֙}O؄!V57u:{3.;;KH $S93L9(1wffX9 ,Wa9|Qiд17%%pٺ?ﴶg(ohzdsq^da{aNv}vG¾l>]NIMn=FJvoHct͛QesW.jv VvuQ RR*69\\5NE{nj%hVz r9aic^tcjm`uT9gOes•5-OtM4@5=-!([Q_Ղh;zѮ;>A5~{4ԉF@'[γ̡?exj&X1*h>ïzJVG*i*#-q\ȥ+VmhB7qz (~T .H _U8r WBi{ C곭zcfw|5͇ϱnw"y2'g w>֞(՛juO,3Ab?;ڌT7$ǤV4ɒAF޳- ݌%VM!rdzP &-P.63vg l D.0В||.3B%5^u_S=l@^>mVQ!q.uH"C_Y{d?Sԋ#3@__|^J4t!߿no F\w>J*t}L.|9mqk0gW[T/H i ~D``:%~.1\*D0fi䖫Pl딴p-MԽ|܉ 97,?bW"U,Ფʒ&wӋUF17)f%VQ&iگSrq_ ,mM4/L9Ba Sñů,PYҍDU̇ y3rS?ڶy9<[ZZ"r:9c)+ x MC:_jJ=q;SkULc]I]*uA&ea1{jαxDޙK.{_=s~+@";an~kZWiT ڹ ܫ8${,įˬL ;@l%y \n繳 ZݎlSJZA}v1֢nl0q$fuC}\EMک aeWF}㰌cVFzC\a%|PoAy:"NYĘ N3@ŭYE۳/wyr&KO;O4Mӥ{ҸGܩ@ BbYDnECi7y;ϦOhWM 6,`x0Ԟ|ݒ0mLIw׏vҨhEE kj2Mo֜~:R"0-ExWƖpbەT ABxv;Ɔh#@].JBS6&7{\rټa<7ɀ3Dܤ纒O g0Vq[u\gǸ*u qJpj'-DL[;ˈ ExBީ5m.|$#C% &S--q%m@XH~g ^64өgO[[[XTL0 Ia,"6cJ[awAն\Q+qp ,sD9gd .Oz['%"|ֈGp㪰,x;Xy-bZ\K0[̫7Bd=掘FOλE*[~;CyP^Q03=e=scuf8:L Fӷp?~[0Z_^iq%dEj\S_y΅BR)ޚ߁'Q= R+7 䧥獱L0uY}&l0g~]7hS YAO-hsP_v[9 ^&倚oںDUvnZxsQ&;7}E>1DB&; c2.{˨|fHPd(~I 3i#z s{oldjyj;nd(@ cD|Ldq_k~ p2&Z气O D~+%͋]ڰW:G<َ ꩤh"~W" w1x%Ʊ#ҵTiOC[_HښҚݯ( û&sV(uxqO\a?k)i`$MrܑfIUTJ0+Ihrd0`f%r7'r{'"OLa{fiosf:JT}H"+:pcPqxi0ʘ2t5k8) D=\PwޟZ*S3M!>i@$ } l%+%uοfaیngLf>69w~񣇺\ʍq1~+5NPbZ԰\=ʡ}5Θ5-iw7R@|= h!VPfQy|Fο?Kw9t=OٺNq1Vpk,>|iƽI]tj.PQm;Y<: ? h:{Ev[\j1B6Λ*}ɀ>1R;Zj_3 ͏Â9L].yUd)E;,U]QzRlltS~əE?WPjYy_m?+bLVdYschx@[b) *C+iGdVL]ཱͲ}p%>uح>NԾw1=oj/VmrK*2fj{Ë}n/C?I՞)}`4_SY&+3bNm/Pܥ#0pKESﶵКd9JyXťtL {Kz(wxDݽ@{pr#YeϪajTs}[rm OeAo ?Vcb"=Hꧪd_.Vo] 8SlֱKz$B[Xna9- !›P1Ql>'tځ#Wm7~Ɣ R3=c"#TjSL/w+Epo0c z =o5@:!ߟ]s~ UL#76Iً2(a*2Deï\A0k. tsjGY ńdtD+It[(o/ޙ{L;e(D_KZxxf 2f:ZGX?ʶ(=!UZԧw!x=3`'k%7BȠ>vvYjEp V(WsFle`PeHámkTAϋb7hv>S6+Ҟa>my%OQb?CF/ՖYIlX^5(RTWҢH~-ơRkTP5m6'UadbdqOd`mAܬNAe Ҷ*T̋t~ /al1QQ^_>F1_Gr |XUiv!{"3R5Q'i,y"3UU鸔=~Z1i:WoJTq#d{ 7> QwZ"4K1J4'/MbоmCH|nڼ6J6`}]ȃ1KwȶნAs]y)ƶuҼƂkYcx_RhdSZ`#[[,=闗_"utN,?.w~\$L9@,X}XJh DcY$nv> \*4%6Fv"({ -TPLo{JnwNZ(MuD+L/C廷. %9_Zu k{:%ܙ+J1r.TN_l?`ַk 5&F"]+- I^\G1ޖEnxkb+z~ "ert "H1#Zdd#>rz) d<\c~'5{IGHl[Uq)r8~%&Lg'O3Bb샣\аz$}|gɠ;;+(mbh-J`q%|^iϙ1)ヷMW !>.Y[|25:רvαE +%l WMҀ-e/o.Pz$$0gR"d EW`Kg>M$p4'PpkŞTj= l&f2MӮ.[*A` ʊѬsf.qo$+Ss\"\kKa 6M_D*덇[-k}:MsywS┝M* vCaϾћӜkMzNE->g58Ϟ\+c-D /),SCmHzr Z颁jgA4CUN׋>efh\\`n4ηS(ʍ9-î7k1t+`Vqc@|(QP6H:Zmg=jSQ5Y Fךv⍴V@y:ĩVqFǔ/# jN+poK<}-󹁌eͤ/L\r)2壝DlN+GMV2TF>u$S*0[!ucZQj׶~_YG;&/'/cAMa%g-xWp}mm*i}i'>_[}P #k)sgʧӔ㪰dY[4ȴ׬N 1OAjC}qU,Xa`Sc(S (Dy- XHize=~W,ˏ{M@ջ!#p2s` Ji{s;,ո{^A~C>ݲanaGx{SD Okp3)zYe*:/"=@:^3LEU ^ҹf瑝5^אu5|I\el e~?ޫ봠—.9 4`ĺ㪴0n5ὫeЅx6(__Ҷ鐱rIRmjCك2)y{צ2~T* Z8F.{eM8B.ȣRo@ѪĠ YR7,@2zwT5st!faWfju-納)'Dx>sT#D\9;#7^a|Y8No1|gjvxr4F]Оpqk[ѷ ˙Å]p\6,q()Od~85y}L(Lf\z`&)ǃ8: K=M.HR I F&Lgnjt0#!h|tu0eU[ҁ zZ]/P*Mj;N~+#cl_` -{PfA #蕠kcݏǸ|b"5!H%FFGc$!) s4[6V6y9ٱ>) 1;2u+4SVa Bz*IN()nL"PUbQ^`&w2~=t]W$dH^}%$9iۃjG+j)cO>Xre=]Λa7S 5 >G:( rQT Tg<[Wkdy]FtL!PQ-&sЇB@g Zw!"]yՇc b1e_޿gr~fYsF7-l;̅qF_(2fmЪE`CBn<&{3Q5yӾ'I;xHst>NέRgq׍\"jc S4,SXmZs'x ?A[JLB*.s5 H*OKjd2N6ȏӭՔ;.S޷UtmR|W g)B!60'j@Kî6Ml}%n-H9(V{j' 0<@cR(0VN,,}SJ+ę-q]& pαtxԙ(@1]>S& δЩK?ԫoRRjvWvѴG` HX21 fל{@#ӣqRdeM8vud/;]z{!xh xi[w-2M;efK[^uds7K6[KGnڮu%H+-o* ho`eqvr/R4e xn:1Ȓ * {]"=LDC+$"BRUiV~+,_[dćJKнX~'+_Bꢰd  MALQ-5Ck2Hf.p<7LBjl慭g y)Y8:dL0 #&I*ClfQ^ }q]2iBֹ n@VYcmm.~%;Q֎hq)#/{B-mQR,N_wLNv6 fm` n⻢/ӫExڣee{̓&Mz8&XpGs.ZB8 2BO-W?-!ԡŦssUijFųط &rCM -qtM4t'c'I v\&--22_ dwfA/H/; py@so 6+0Q&\ј[eř G@qK*:;?wQc,@k 0iD6b:|^&#e1h.^gp-!g'g~0\6_ xaWUL7r, ?wW0Z_ZKMkr¦$Y",\5h.*85; ̚]m%"kqs'JuP! Y=5Ye-bD'!tAX'5Z$SM1YXUzHm5&,+YayZ-fq%I"uCT6\ Nжڸ8/GC͒߁E! WK ˆO "E-3k byDrRtF99]Bb93Uj!Eφ-dFg='}$$+ݎcIK6"$)t ZEdM7A5·/g@:G}`BtryuTEj#v?THmi>`+a\ſ;iQ%C4yarL5[:A!M>;|(P6ڜrp=!tv91-w`0s D8;+b-UEkK^Mkod\U~ Sa ڠKI'dzf3# f#\e_QdĶ+yoݶo:Ԓ(5ď[%XYlݸ$  BAmVJnr:"#3$|q 6=^D=`UsN[/b۫ݮG!<ê>y W[lT'RP0}.~kJLՂ?%PW=J>M,NhӯYUJ )IO+iu#*+0fzA ,#3>җa_z41=,Cy@w>$B~>T00\Wܑ)X!:myI{\-lH[)rdΦ@끬԰ 22A%)EU|9ײmPT+2;[VB ؝Wԅkwɗ]braGJav6FpR a6$ST2+@B3ҼF\d~#y,TdpzԠ` ?q߂W=8 F܄Ѻ5- eTON"ƞ~% ~껞-3jo/%" zroY/y,{׺APS{ D eYDa\kzaކ񆩖=EGʪSj"!s:r2jqʁiwݚHR1Ml1l`yd[מT\4Te۔d|45Y)t-ˋ*qHdRl&YٴdP: RӋ!xXYn8au1zq۶pP>†8jiC+1ӀSF0k"ڥM蝄5F~L%ujDM.!饛93D:{G l 3frG(7i(-٫{,9]%9kygsݙg> 0@ϝf֬zCeJoq<:aOQRoe :/RʲLI[f3z[v!O./\P55>^P?-ӆ-y<.3680sTinlaʫluz`ۙW}Qh: CӭJf+glXx%^Nͺ|U&F3孨RF^R-9E*b/PU].yDC$K%@ _H$lܺ= fKV| WՈd"v8VFo}F}ԸRYeɯ8A)ϵ}]]g2DQo CPa)7T&6<_a 5[$'R ;ח%)w'9,|ԕJZ`o ՚6v \< !' !p|^E/%/vQA;_qȤB#e60Sxڧz߱鄚g#p246oXyjzv)US6.|@)& >}\.0H/J[O+wǜ )&1{2vQeuj`>٣Uɹ?6g+`.jȐb1+u%:92 jĝCD]g,dR1q:Dž#$0HffG©"|j3^ODI#u )}b@B) ŝ32Cy4qBRƿZXЗ$Cˢ#ðRbAyTd:7;>;ņE}:~g{RV>Yǂ:&+皦JdDYʁݕ͍{.b2]_g+B5 i*H WmMBqi(7\Be" D&O UG< CBnBI.B]q*VYl5)wcNk,8E?Pl쳩86StV>,0/:YqQdDxFF_Ӕ^@q; : P + n10袤2nW&xJ'Qp^zR7v' PKGi}'!0<&k'#<3=" Ւж.l%*y;-ِ^?B#7Hs6ޣ(/=)G@A:n3"7Cf3i/P$+&Uq_IB5 HIoJ2$=llQ֏]#A¾]} >~h{Ԍ&0pKvVN qqq~iw7S%-.)!uXˣ{&QUbp٥E`I5hI C'NQIC|Ò́*ǠMR>D3$f+tk7 b^[r_xgPF?YoTNIY8,qxPNbnfE`#"/ASϵul-eC+޼^{MqZãH[1^$^[E0=Q`"u"+dʸMzC̀!%a}EGKrEXm6F,䱎:oW0B剋#Ѓl".s&hxը^ 0=@xcJg +Zkɩ6CqI9Tp2$DjXQ&yR}bOfB%?9CZ$Mo0zI&H qM:Pt0_kHN9;sVTؽ]oϑx ȫ7[{\O@*[Ȳ'.-]$ZLa[̤IO@v(aKS`}ǜXvKCl4^v=may1s _Y8\sC~5*h}RJ˪ӏ\< @_!=L*#Oe [(Z6O$3z~xEW "gNt-7 vePTZ53{ɤI#`&+/#JM"~މ']\V `0փ}bqeHv9z^rKyҐ3?X jw8W`1T+qk]%# FxA0Xu`z{:{ m/`U @+hLw\<đPp5S4Fh +rƼ$3zDķ[[3~Ø)fGtT fFe$,q2(ODidiMICTb%)BJTF+E+euE 8kܔX5"_$zxtmɰz;8(6h`RoHD74׉7PA JB,8't-杅w;/кG?`|0/ƒ/j]ܱ Wl.:ujqzR^_)lOE =s-d 76&s3^^Djgd-\~TM i wJZF&`."$_Ԓ|Waum_V"!p򥸵1yԎz_Bqny* h)gP|@l[ξfM oiAܽ_kƉt}_=7i=|ʼ &:O>-_:fN(jt'@!8QHRenRϖnޟs eϘ|8U֖ gm6ca*'Ͽr?uGs@?(t+a;PYҤna?}ӷG L+=\)a~vg+I\"$Nh&J>N3L-[fKI[.:ǎ1AvOM{4WcӢډd m3]B)}kT=zsɿxb;NPh2A`_e}q|QiX'{j)[$]5)z!%I2<}3Z^}lcWvI(t&MUb y5o 4$+xNT{΍c|%v(mG}fn,}B4\{~[W5ZhLB_X=0iHݜDǦ&ҍeG<G9]WnÌ6hŶwf5S &mTlj@TTxAs]H H;<%W~U^[Lۿs2R48)pzШ 2VqSS*%>>s+0b޶} ]a62/?0"xM1pgv[qi}iJRz )OK< Zhe=HpQ$aEhᤙΜ:5ueuxl)b!2-}-/3(j|g~"I3FY dL,k%HxTunV>\tN\1PdJ4#Er _nΘah C!Xn͎e_`w]IE?.-\^@ H?eU׺abV *!pؤqmlWX0T^M,_)1{٢l8v7H8Bs'\qJ $WkE7-9QZ~gݜZ<2i.> 1ڂhԓ]vMj@\Zᩓ&;Uf[Ppxq4ln@ȂrHa (oV$Uc_U}`؞!@{}'ؓkcLjxf-;THr6op:8W>@nZ[y'`Q\ H) |>}I+^׬t꭭!v㮊wis.#$ j8னSdEox6V\'J;fk\][tQV*_7Mb_5dvH u9R>(on})=bYtw)7eaP`ŋty}ޭk!y`cp/WB Xs)& Fsъk`Ol/3p9aM'J>R'L_{udX!XZeR’0:qa.}&!2#<*FN2aVV} 50Fʺ1^X|Ej߂8nͰ+ƗPV-Gǃ&Xb'P9[_)ydĂ3fL= o&^- ZiDz"FG.OكΧPUe+Ce( IYNusȷֽVpbsP$ 5 5Zަ̗k0fU}%QO{GlLL `u&~V%G&xOEI. pU5`)֒WaAK4tg⫰I2:2ُon\m&J4 5jzL/o{G>g\4n*Bo(F'jžɺOnvWQ\dhk#s-[Zˋ'K{iyW$>e}+y|;rq<-k: RZ-B=qjLRA C_я7* 3aWhX|Rj=3C$j@He#U^DOno kJ3M5p ,dZ~jz)#N{˓O8jg?&ޫD4^"MZFdc7eEWnvEo=5O#tM ۓ2m3f]9kۯ*#)%sjW/PX4s0ئRG\@G9SԎDΜD#IİJd5hwM0Ky UUJGMGaOuْC9]Q)9L;.&Oԯq?SH8dP"b'l 'PO.yt)H GcuMk0} Zdl e!1-aztmUN*!FL,wW3z6LZI+v_Dž8y5@ډۥ\LjBSҴE~48p+&%a5,p]N /j9R"+|;*jtdB| ވɖAo.D䝛T7/'r5 ]F<E\(M|>S9 ??=EG㗶`{BMA'vhN f/ KX&o00ʡ110U23zyXKǦ ,SZA7u,hVFkWt\EH!޿,Ay~m\e$nq(Ylg+0fYip&֔|Auɴ;Y Z$)a6 Sgt TiBC"J 愡oQ$"~UMݮ]i]ɼ_.l櫂ƾxYj/!!xG?,h7&CĿ!(gko٪3͊XL2.l udSou` ?@3~#<y`x?J]I'LW}ͦr̞V}pLȩgib]`Iʘ 7ب@Sj7n,oWŨz4sdc}rZ E^}׵GQ KOM敥qkk*E *CxWW8}8LBCyœj,zڿ [״W ,mJXǣPyiExBS\r}VkCVxED{s'tWcį3^S dMWV57Ӭoޑ(j|8u']UHrI y~5p}f{gHv =E:̖?]B 0`y5GA|`+ h1x| ]Z (~Pu|)$zlk6 I rۿ~!@2}$*MC!.׷iiB"q|AU5]:r+"7>ÉOa[ٕSkul A&AƤ1OW0!lVF˝R\xcG JCZ{'AR?˖bzp%\OTג,&/%%%ke <#oC+{Pa-wd]|Zܼ2䏅> }*8!lAZPKWz]br?!QzgԮ+ fTĄ Sϫ]<ؙ\e$[i'rakJpY[Ւ0|=3I tc'A`w,xd\[\C0e6o3m}C9IҒu-sL?+jZOGzxe-$}_N4Eba3%Hmvy r<^iN!⮱'Xk'i~fw(#d-m 79ĪBًw:@4OOkG?<ʣ1ĺ|xu T.pGaŬ%,ûOH36eg&=wNu:|M@}G~M} 4%r/WF';QR'vaxgfT*jJC*qFr8$hkT%~El ]{wJ ( 2m,}=m1|Y[Y'U-9mdcs6kCi 1o|U`/f ߹gi O{rׄ#5!p?cWž_sXP`pkVΘq3;{}R6STZӮU۠-Bw12GY-JE$U$#<ݧjvBr<+g/Sq:0f.͚o(wkqf@5#v;I٪{AZJtEq.uk.< uo|ejO5Օ&W5OsplCă.w,\hy{-1sطoe那N%%]=z^z<ҩqVyՎTc^cZx- f;$xѡƕd6Wh)%a{J dcc#׈y~*FZd2}PH,d,p#=4*>\aEҖ4}>r(+LQP(!0N~u`ˢ Fգ|KFvYOēCv[coN?V}!4$#y^D!p~}Njuj92PawY͗bX}G]|j[kg,OKn  fQ)eqjX-8xކOħnB۝S#8#|,*aD<hT6*f5!]POi (;yovY^FūWu bn"J.fajG#|>o/%'rM|m,fN{[%9sta2НR{vҌؑ|>Q!V' M{&_,kqD9+$pxG @Az9u|7Jo=:" X~/ ?8aD,7w7o?CRMZ쮺ZrGs&n KNܟ(Z㵄ٍz8.Ρ7ILlazSx`'Į|BaУ/5* y,Z` AF|!|7]u_8ȾW`U/q?jttPPEHLV6[MasQTDcMRiSxL`.- c.~~Rt5I0B{=i(oZ uõ\P 10jSmВ ϼeS/{$փnW_cɢSN fN4e,@j}ԇcrNTue|9Ыx|~zNBVn=BA_ ksV@qhOn{(TN5g53,⫼@ޤ SrwUǴ5x䥈 `j{b5ЛP?#lvFc,1B1MFLCm[n;: X\f̣yEԛxpX REXJ$ =dmO R\<~C>.BB!zj'hm<?fEƿۧV6 %x`<_8MC$0};|th̆k#iwLS|ռMY eD^,CTjV((|P|A33ay=g$ՓcT&B,H\.ߑ=Uxbs`P%nzYD oЭXcIf잝⃥pޕcb@AIt--Hrۢ#u8+En+\ l5ј ex \psSߓ5 (Hc %¾70k{!U8w2sy N@b(gwr˹ϳwꫡs.mxk4"Sc=lBC?*e"'Ϛ; %gV[(;6[}\SK$T09ò4mj͂.%fZuҒWR^7"#䰛UTMArҗ2 ܣԴ?]Wd/'XIbC2H 06 gf3OHC&B6ObkڸP kLkNR-(C06<ܪ*yvo`Doae _b=s_hTlTh& VRvC oy5!83?\YR%X\3N [6ܜ%U9(եp r⤷d/fbF93KƋ <@6h- CdmG#lZ =d#.90w9>&SH"[i$ o/_2-[cmN/01eHgU_g:1$ͮxӱ˟&œNϵn0Por,GZ:]OьlOJyTU/mʚ1aF"Ć]kͨ7Ƨx4:|{Hd.Nmo!%Oo 1B9h >kDZБQ<)TF/fJKmw.l Wi/ h ZP;n"%^=!Tc x3ہum,Ct=Vs̏/7=^$fW ݆ӌL^,i?Rp8df黓W>=sQ>zPs=xWݙqhuB$N?vd߆<:#ӜfCiϏ{H"<)o:PVbt4*:*sᬥMܗK0_=zڰt(4pL gqS]x#΂pdʓL'zٔRAHtͪU]#2 4k0ꭁL:I;HL .,m\$m^P$# 5sڗygb' ] рf~m+q},>/ILj52Y4ӉV]R+#|ZxxK\85XܥI{\,N "]"r,OwwtInŮIτ(EN- k5l7oklQ"=4u߮dHc+U>ƯiMXRyʗ0#ݢ̂@=)-d v5e~$u8SFGe`G[N՗I$.L&KN0RR{LC[ wj:PzTɈcɒrk[cXlw-n׏ >,zEyF v:#p# i=+Vk!t ~jtDlI%H!`&޴g]d!b%ŇuN4Bd0}b ISI ێ6ʩ+[cR#nv'KV VUUa)~5hRnlA ]J\ *D뻊Nxt0[Ц09o-bP!0>WMVkU jQIʽ։ou`qBȇ-<#iG;7>|.:q~_<f};EtX˚^ģ;'Y~N<^fAۖZz>ź"?ר(6U!+z^ՁevTyQ ٠]A–F gO}L\\X턼X~|9\ZƉz$p"!94XLV`TyÍS9cm~msB35h8&cj5pAG^}Ք_}.xdd⺀\/ "Q:qa{~(CoFu;~WO{v8kݿhq.Gb:n輡3`>W|A-5['(#|ުoqLh2_ۉj'6c~0 ]أUY>̮&|ko[aIwC f,H\Id:mjIuQ'vAGfHM3qG Ea;yTdƉ5ws<2IʄIhRgTb`d|qEmX>x `(+Pk[_9(!i11ٍ̄}"8`&QpWU65|Q>hs[< 2m ;[ tqi WxǘoH:yN2FhW &5,\rz c E5fa6IUVaDeEk2_4@ o^kJ2w7z꟱#6\DR*GUW5Rڐ֔!ܷVF"+LIOjUܯݧ v= *;8 $vvc)pK \eSQWHP\rI j>/nTK7mxnB9^1+D|Ҙ:ŵ~2-}kV 4NW 6ʔ{j>$M Kyg,%oUu1;ekpa?]9o2`2{VY9/kM@Cc& 8pOq0[?T?3LA$sBQ0/Ã4&&CG8&*s-;٫J/# \m͟ގh cA s8/ٮ@}FDZۦo. E2әn<_6˔ QJ~z$#- jcH >T"qcQaѶӍ%䍡zg jtl gVr[51X<; `8pG912MTCfpl CAS',*`r(DJn]qܯL*OXazˣ;mD2PP+ ~x)'.\rTfiɁ:eF O6p2c(ieBG\0 MjF MWgsȽGF#4-/.˪ d:Ȩ3ۆ >:?_"[FW @΃fzOj[4k3y4 2L fbN0YԹK~I`mze OBqN;1@,g@B!g[< L^W!EJgq![nó{p;b, <"&,vJ}]4 ~.,_ǂ'&=5.*]? *)}2c&::OnW a>E d:*wnI_Or3ͯLTJoYuDTvbJl[`IBZu ; %]s5ԋ5Sۯl.N~B\GfGyw CQT0&T!GΌwjǂL[LՙlIf;V#B3͝d76\#C< JqrdcwM./}N8qo>* !p3Y=Rmk7:g>dĒ# .A_$3{6y?ʄ)OsViVg[GC͇jQ[T$S2ZzYs,&naFbu'7A&_/-Տn82j_3rF^EԊ%ޯGg! .LW6rHe~yҀ!u[$ኦ8q΃>kx#vPe=e:u{Ċ8oؗ3=L~eg,y(4 lѻye4x˰:pݞbj(f+U 4.?v`K(=>-BUPŁg(̖t\K*g_bO^'DK@/0گG|0d.~Ru>ǧhH6KBL^^ygMH+BPm=YeDS;Ӣ2^džX˪ʆw ֶaK$yHe{,&ڬ"'mV;t@S}\^|SOw  ˬ0N^yi'{0voS#鮰-JiI*mJLc !QZ}dG3DB/mf*!teb,6}W8"4p-fSDA翸PĜCFC)vVu)jПVh,ϟ9]I4r=hW H&Ctdo ? Z~UE|^)fs5SVqvliw[FLG:w &oT wP x)+ A Xrϑ+0dKLTb\E=x@06X̜(F{o%Ա+e$,|F[k+(XM@t:~4(g^◉cdpNV bޞ/N&v#wJUW&3ˌC-}x;8i*/$qa-dzU۔0XX!o08U`ޜ78 jEx3UlԺq[Ņj4q j W2De;$Lfod7ufYiq}7AljQrzô/85?W! c9 O% ݓ_=b2V~$ۮ?.`L#v˗`l2dpa1Pgkw1P kB#E?\rx"6||3Ծa'm<@9#|Odp6!ݔqn,J3S|)AY=,b>: F; ¶R5IM;Q6q f9;*wqkpEV ;|QUB!,hg7$-7Vſ)Vn6G~"Q>hAĤc˥6c<=S d9!}fswCq$(t}s|*ѴRYbuFm\뷢rQ)O?q~ߓDEU: OK΃?h٢f,5 3r,ഌT4O'{tr;7ZZ\4B@UFh$jbDмC_*N1V ;Ua8Jˈ,]sv*%Nuƥ!?%3$j65_Kysfߍ)PVUI2@j#iM'p0M7IZG-H9@\S ߵȳTG<8)qg| e\U$-aZn*m9~&"{4Ev"ULY7 +9,"UyEXlCU*9ƀD om|ltVW#y KϿDr0ӥ4]c]'g[:"']7n H{/1)ua8S8Ӽg1ƆZe=n+R9^j!#8׾6 { jRJ-N~Tޠ*m^LX:O9CP'U#6A \H]ˁ>^ !XO.\9{"U ;F#dYd֬0&#} vP9iW֏n#K kl mNzy$ ٬ǔ+N"XhJ8Vdm륡Xy)Õh5r` G+0-s`zՃsiօ^UBjbY_ܗha_KAkI#E]$?g q k?jQJ41%WVN*9HiෞcP yh#|f3Vhy.Y-Lef;"+9s я![r"6>G~ 5R7;Lk"Ym1~ต'͈m'2y*3*+BϹ1>%hs*3{\KeNobLro `3f:MJ=>ӊL5黦I/Ѥ&߁5e59q,נcXwO连lQp.V^jwɄ ܢN4[g{eDY֋H8"UDl\r3Dް87Mavv⾕;J/ & v ýx%wM8@-n~(Wwd/8ֿ"anR6 d:1~ئP7ӻYcfC=!1ͦAevڃXEn"ԧq(5}DPS%m&>9gSz+;|c|FHu`BN}/BOD3-+k J]YueBI  ֥5#arg x=eR1sLbدcfkǣ!>3wlRj]1y[dGblq` PXAdNo3Nvԓ;PvX\V)vI"S$9Ԇ> O.7;(F9%կ.j^7$]DCV&j)u5d8A]}8*u , {eC ǐ>c0F#hn9661At@hvs8pӹbCsz >{E-X?̍<GK:5%Ou`!^0Bb h9HLb(/zm($3ZK>ᨳawu$nU+ mȔ"ѺDɻ h0.Hi dɫ\ SŀؒS\BQa%2<šj.'qS 3c0 ^2Z#p ! Kw@@pՖl;E2)N/bTO=Zq|r/Q5f+$]RAiN~ˠH]P1ai (ތs5fFn))4EjR?6:TwiS  rprxcvcX2떏u _krW( &HBaXV4ASYEUL|\/c zZO@<Љ)@9Ji֘)ɚ}4{Lko]3Rr# ё/[M8~Dsl giCw?RxfY8C7l vDTHBç:tC2s*]i']B)r<JѷHw*ŀ? ϽqG'|nk&s\K' LxsvZA;-/t=)=ʗQp/O'rq܁\2 QZq%[w,YH;ɬr>5ŐҐ6 8.P"Ԡ]1"HE#)0- cg3|CBۺi!F9PweL%Qo}^JOOԤZ_[ˀrpa|j:H{!q]{:Ac2ћ@w-hP.y*1b^Nmw=w`@<[^@uf_!<si @{jb]pfR'fqwmC5/YD=#ƒqhgi/j$3$hЦr&fVL+ӍX{M?1F!9(p(r]8(JxfG7R6B׺T\h/',ܛ[Ζe;SBOMCF!-|ⷡl"}bɟe#M`{}O܀so2ǠXw*_H\_~v[{U*p**HAk\ؓH:LiiM @淀{TjyzEm8i~̤٘HGRn@?;tsh`#*3j"P%+Xf:D-D.- UPx%C )O\Ъ 2RxzEB,H gr++=J<,]䣀Tv:59ƶ#Rp/n: ;n{L3xMٿGTootJmo6윸L#\hvFs&f(,Hu~UwBa IuеCZuF'Z*G|J=1Q$eR]l0;.wi732ʟYs Sc$H=ygl ?ߒdY wUXE/Ϭ&!6O>D{ȥXsq+/VJ|F 7>#3<] SWXpP\īqqdWW(2C,b1%m T1\wҽh!TPIoEϳe*$ቼxS&?`0wI>w7fK(1H +i3!9x֔nmsG_y]d@П1wngmjC{ȤqeU<^i]EAb5_:Pt8+hƜ7pnxG njj$/L,@nU9kŬS}$]/<͹D`ǫqK 4+xVCI?at^\y1!p7?}@o4/G?4o [Rh9Ǻԙh:f;(ž4PzF҅6W2fy~FTƚ^}\;/O0z/S@߂ksR:vGfmTg@A"1cѯm*WXQCYϿ}lY 'Ng2UЩ" MeX[^- OJo$JTapR:{%]KϤLiNMm,frT.?{~C !r`PT,2?IqXLg}p^i <&PpΗ8"dO,եGUS P>P+`^5#+k?wr@գNEBݒIX王zGLHg+[Z/,^5KTpꥮaIT_ĕ f;O"'X|1yr2alqYҪ?iP܎)8_@Ys9|2p )4NߑJy IbeͣoL t*:Y;{SNΚQ4Ci$+.6խ%7TV֬:<[cn"<ʑ6p[G,߹80ث\gWv!TrJO-ɓe&8ƽO.7ƺz uCށj Ynn6vYbTލҁAkPOEcLQuZ RYE<9kGƎAP|Ɇ>9egݥ.µXPpq)W5¤Ú $`r̿ IvRtnYBqy^ ZUɼrSV?vI5[]2i[`c[)C,sc̕2{ߙгXpSLdf *`|ۂ,kř .jD*CUC:ncDAo )g <0rXU\|:V>WF^1$NUmtRS\%^ߩSLe'_^M: L a("k9 mh)]%"kFKAm\(h 1$TXgG~{JBp$:-$#V Q?},8wyqJ.TI< i"]RѶ_[}-H0:"all}~~׽|Y #aX : Vyc #a2xTZEx8.Ө"g)qm;uzp&b2)M50Mc63~=j <j:@Zy[(w 'GjIe7`[Q2|SHR`Ddf/(q*BChؼJ Oy p c-&IqXPgPǂJHk_ݚ>_waٚStͼN&\X9\@ |mipw꧰uvQ,?O]'>'I(X)3虽0p:ᧅe 濾!ԅ.%^#2.9{}~ Ec xœ@]QDN9z\Go^ P诚TI)V@A񤦃(0`/Mͯ *o@d3`wt}>ob_mފnynL`BBF>W\tCڳ@DvvIN}|TvxW0z. xtNdIS M #{A2ڭT`AmD5p+5Q^qU͈1 &zz;b_ktЏ+H%_6UZzZmPʬqV\n/k3N~ޢ'# "Q̂ܶ\!T4țշEzsϻTP.l<\ VC!eGT&ľȝX.V#I \eLAiܯT֚DŽVl@Bq.trqK@{P?}]2s!J,z 9g"Ƀ:M>!}.LJ}yМÈHGLLQVoOsI^rFxlSC6`zyww'21K"ekvl~Y4X m<:{6w?t(۽t^SQU. t|Eýn&IZ3'tb``wX YWR#VÆpWGkN|Ɖ' ;ij3|0KW]?&zf3vM3adƒF9P:j ѫ~Y~xytjI7!{7Nډ_{x( +MZxe'IWVda/%|+wQ^@r\"%'29$C8:6VȄͮ_w>0{gmXeXʌؒC[ }d#s5 n YtngdLM[r S8~-7bz(Ֆ:tܼ%@W3yTĵ1(-%j+^zxv-dMȊ=ٵD~31mQf.TcTmGI4{JEgLjCEDZ2eAࢥVyc)R\;\i=/.h߷n^N`h<",5B͠eS0mAK'"tDvZ5.p O46H ںb%>_ a)BjxAp̖!tN@m*\XPNb_)=:VP;w_pߙ Ot(gUZK6ڀ.?X5}P5Foq2U>Κ$ʺ/ ϋݯ0eoB#H=W3xIfYE0 U_Q؀Iǫjk9L`-USMxF~^d@+(|Ӹ :!Ǭfh*7}֖㣅|RȚzv/YoA?wpo\$iͻO<L1eNCRGS{"A)j'%G;+3#Mh- Ք9$,id.ICVSO,O&OG62f $ozXt jZY/pe0Cˆ,UoXŠ2Q"A;g޺/efAT76K4%r[F"aoQmG%p^Ww5/TqjUz5DWYKD9sBJ;qՠ,O4BT^ ).>s^&j:ܠe |\=O#fajeV"V| g|JO\avʬC! '|~ ʠRH,7<϶XKqȩW%_Z\EkrԌ0}О1)- L|Ak<׀R̠ v/:a8P H7F!kem R0Dr:LB UdRc"I+ =|FNű9@q{}ktzF:y8⛀tNݤ0NeqC.4f|]Wߠ @2]$eɇK qU UP8Y{©s+9b3g/5r nhAK 'H|r )7AO?&a0Tn%NI*Ζ:wy|n?HYIpdv';ꮚ 2C )X`P'86:0!v(vM(F9Q6Hc6--Pl$ LU)K;gmdLkâoJ`/T`hk!%X4M@E;n3o\-:2|1rusQr8ݥYK 5,jWOW$Rʼ|=D52E)(_\"v 0ϻ wٖ> `w'^t6שS?~ huMy멨uَ;8:/D6a6 ep~ &S[NdWhZy1V[C,tYp.nLȥF©tt`软][8jF2lj[HbuVP*MᱮGvgOT!Sqe#ѐ`|?׿8P k?\+fv+:^[/ :(6Кtcpqg4d'!|n~ ]YW@4{7?YB y;rޜ*Z*YTRi._M*@ ,߾Z˜TmYu|?fD[e9Ҋ e:r8֝$ ň4Fl8AbM5;^UjmA[yS3 hR(Y0S%D"Wƍ 6`{C)l5,%؜ɀTfs9(r"--]R )*@$ښ=Wy,xFN So2毪u@+ItRGufu@/zH꩸NsǽT Ru9 )awи%)Ꜭ$fϼ>rVT`%0D3`]M46e#KZ݀aw#4no=q.C j6ޮbCϠPq+t bXK38~pNJ S.ag+er|(`5 cpwfq{fH"& LN!+H\]Z;ѓg_?$b#aĚq3uN4ZlVsJ!8 ۘj+J6LcڛITnʟ]A%udj?@r9Z#:Wn$ ̹Srwػ#WJ@Ĉ\B]DU;o^UH';RȚ'*6 o۳OM>e`#Rp~<&R/lxs 6GlG帣i DV'ca+L#V6 ]]o>GH#S\JҠxژqK"WxAvxUمDh7§IVH`;ȤnS!Q~1р!Z I4iOpv"ao>W_,_d'I 1 GޮX%`]9j:Ɵv#PMHK9I6@:^qneIJv-b9LkvxL%2#|: y2RDпe23H(H6T>}B&{QNw+ITf*;ntbck~ Ȧ_Y`Gu0`~9ΕJd=t둭~@2;`}>c(cR p iI7d׮Op1k#mǓCQSo-&Tc,/}ymhytXʗxM[onf*2.AR"S0TClr.gĥMwPHhV$Sl!@,b,s=~<=Tsӓ%5$tчqr^pE[`#Fcތ'#lqxbo麈 ^ݚhM:BRW̌{f6yK3Ŭ[aXG|<68x6OvXTUL=.eVAVlNr 'eU{>Y!vmxHȊA@R0ljg]7[ʜ\ lò8E?>z9*DA60LIV8eb=ya,p F2Գ /$@e`A+XNqhhl!Reтy yj((Nb-鶧d39 ɖJ{iK)m(1z cBڹzq`;j8:/S/hO\?V+nK $6MK&rݫԻ3,V;ILWwViA˓>& &jzf4d[UӌKK]Zr4kbOQ?2IL$J/*I+bxzk=I]X $ʃy /KnZj$ofulR:ٮF=Ǐ!O,-bUYaCŸТ=Ͳo a%ΏbZ6FXtL;Eۙ<~%s2pO GSYl&Ιgo}|24TӽV\eUKt+>r봫9O}u:+/~(3(.? %HAha@ux,\xR1>&l!r~ukz[)bM3}Q % P!j7=Cei)Nz=3yFڗj=Ĥ1 G馼~=ڮ摛΍f}nIϥePpzN1h O. q<Tbo^QN':O l(HQ2! yW`elMGh>?n^%ַߍmҤ.$)SUnO2PYGݡ KadC&  b-~EíF]nGR#[@yqr_4wFz.QǗSC1|yvo#~fhRgìA$r )<;2ψ(jOؔ2DPIl^ue)B!ũjir8OuS0km*΄zr33SzNw KC{ tGk}:7h!u$F楝 ׭ȗyS3]m-YnEqktZpH-xY"(^!wk%3 3D)ލՈBW-,<:Z"Bi!7_Z#;'.&ؒZ61eC7Ctd%5f aӀ*4",^նHa^}r^JiBlXfv_Pz#>Ef;WJdyÀojo9E0,%`:,ͱ)ʎ ][㜛E-il$ &kqO)-TYd O"-[hJ:6" _n `D*3''-a& Yh! xX䬓g_81l1ʲ gOpCdnVgܿ: i>_>fTlfoO@!bPqMr}IX9CU35Sycaw\oœy!9"+A#|b|mOC5h)p C%0,na D9_Ȏ+]i489r[Z6DH7*13p([5f8S"SD~&Pw u`͹-ƙN9GhtR (6LFQ>LZnek4Q7 _)mBHf{IG07WuTM2 ~ĆQ\*1%$cȓ1z:q0|~?1 O<3x=ۋv. Mb,wVeR \<Ji1QM@t޾K)AmebO}ԽB ul xTR ?8ЏuP uv5mdU} TV45H|mjX1.y A< "O@afq{bhE\Ǎy+3̗\ +n͋ nCr:[9f]NVu(0gȁ{u=9ajCخUY1DZ: I4%E@}"5{xSBNӊLpEېT ^}~54AIs4Yw %˳ 'Wx!,OViv (1@tz\L~-֮j70ecKXb*Rv2B0[뾥uInWi}LkױWb 0 ?V-}"͓jbY Ne%g*/(o5IkTZW{}gOxҚJ+ 8}>\+NBb-iRc} ϞX0|L3]Vo0=?w"E؋VyφZk\ZJQJ>tRaGG<~FYeyߛ\/0kTv+#CϲHRK__ MP@%@r.Z LFft*]f$Ly55_,*GO]%!pFF.>D(Bώ _D{5 >J;.gX3ÂqUsN^1\=H|瀕'D3v**i"$mCՄpu,2&Cstg(NN4tKp|z~ Jzq ww(\QG|ۺ2cɮX"pJ=I5$%95-.f{ԚX:]1vsweQ1@Z!%*JGB3?'w61҇qzN&[rs:-F3#+^AXJ}H݅*vt~m#>w{n\~-/mOM)JM!2Y}j0[F|a/E菆nBD?2@/}FBPKT9wLT:4dju,VZ2{IFfHUoEixm"b{:>~qc%g,J:<w V'kBޘ=GTD}kԿ?%Qf5<:WHA ٳk6 ~L1e~~yO{_ͰcjB+Fw':W,v(W^kk,,ج݀5oVvMeZ cyq!F άpzV-irCC v RoYxcCJ2p(.d=}{[xlA)+WDl"Yvr 2V~'PCYrZ va//S]d8erW|W,%?>ycDH_ &ѽ,3wV^!c @iݟ5#>aiNSdG*5θ W]w6u >" )eXzwk#q3ukrzik>^ڕʎz9R3@7AboH#HT&E3Foʡ>Gvq<V1`^=|$9)60Tm޷FN] ADO,cjnB5c|'P,/ʭh,hh0.[G"7vt:k}&>u(7_"=ިƁ@z3{+~x;Y%fbaEW90;%ٚ/x!4OLӉbiW+v3] /7O25ڈN$#oۊ$&3˖KC! q^ޢs-L6o K'LROU/]EJXZ/jeg N5biy*TsD3ˮ-\dZ oGmf3Ű\Hs}4lҥ.QBLܮ{NBA2:YhWIVD4Ҏ;2^O.Ժm#乻3xR8uRZinL|Z̾ -DJ˯wԹٍw.";ZyN &芁1!8նʄTPu1v%L.;)K%u1[BwHԝ3-.c|HPK3Feu|;'@PF^S,R.~_5Gwӓ FޗЩMq/0k;NXt``?+ ީO[1C8S{;\Vx ωc#}f?p7MR  te=TZjcy:<$@#>YeG8_00W+N*WabHA*=pڗDHND:J?@H E8OvtԞŴTj8'|[ ̠Vcwf|_8&!H19NzH+o <ܿ B_s沘OAЁR *0ˆBh5UZ_ZbT? n۵3.h? cMwvlqpeoS{i˱QNӹNj&0;0"Jy$$sPvF5aRL︨ !9Za`\5uqk239!R[N"'SM\^Dj} &(9Q`;m)loa>͐輭8- r*OAKmG_$I㩅 rA{6+e<}ЈԈ׋OpWҤ'}\u^!*(g3B 0.[#sЫq]:晏bJ>>;l~ <: v_L˷,.b!eҙ<{ٵ5}:b(n66]_ۢvR=~zq,ݔS#.uQ!vP(]xMfX>7!cA4dV`^DUR߸l嵹\?T `t zq"=Vdv. tV3CTf-MRէbQ!,(P;K&/~LV("I7@@rIal[k땥)4Usm.~?8Aǽ/BW bYsjƆGhB(ĺeUi|N6 -+x_ k%w.9ޘp32P|<]sElw&Qأa&QV0YZiC[ҎE߿) 9GKܹR!^ D>c>R?kĴzv/GShQd2[/qbs{sBǍK ė4fiLA$P@pXmmTvJA?<#tgu n/Ʈ@_i 6(yM9b*SdTU(wcːrmih$"1S>&vG]/wBJ ˴Obg+-@,l"ae.8 nmD3(غ"6PliܻovwLt~~\ 5WjrU wh0e3@KΫZ B>ɉkU{׉rhDdq׺(j 'V4f^*C8' `K7ղ7nuZ(R~'JM%CAqB%Be{V_Ģ" [ "Aj) */.BfUeQ !Ԓ'.mY3Ĝ|w[F 3&R zs#j5l6.&%domƭ!Q2qvf ^0 ebll-,y𿣬9$1Ya~OR1fKOM4>NIV5]>-qp7bU a[ J!ZT)3arPH obF׮b GÖ/E*?.l-wu<ǧPV퇴P+&-lPT++m!WDžk.j\3<O^;'!3N1]Pj1k %vfqs)sX~6"=mj*Z]ѩQ2qM7AiU FM iR1npЛr:]$umF]hc\ d& ,:e-n*v\#FpT3v@=AK.es&rJeZly;Id>&Pv:vP@o$ 1Fnl"ѱQpr)IXyy]n9]zn-y RY+H*-,-VhJ(wě/5ZC&+y9}nvm0w_7ʌ)98MgHM- (]s`ˋqf\b=|8fe]aH" f"Ga FT0ME W 48Z@(+B%:@WU7囮`*f޿.6bF[wjLjQbnO;7R 1"P`1i~aвK Kr^>-OFyCZau>"]C?Zid4 "fmq98v]z؀|icӷE޷B^8^ۋ\ji7CXQr lfZ;F _ *2(5{tY{e8/bzEt^eb<D{ KPA{cl޼"Hb/ǫ L]U I=_EDθ)>0 GnThW t&)&Oy|lbc\d RTCOuQwA5rgo$p.)6s('1W ?aULkP SD)SF]Mmw e$YJbksZ'ҬQnpSĹH{gV:瞚eH>_OesW@<ː,<$+Ϧ?cxZ čI7?S-šLy!d5Il#jY5Y|E8Dn`g訠iM /&RUyE,ܕVL_XX=+5@&Z_ۋ# 1İTW'Kiիq߼, CbnF30'GQ` =NV́ama8ㄈ:&H1*ѓsUBٻ]>B$ʯԟhw-,^t;zJk_[_Q}Ht?ZReѩ:B\[tPvʊdHU3a_'̘xht^xQuB@Ri0QObkNFn?sWMW}hD'`` B۠7 IC̻݉ 6|"8$BB颀LG{hrUޘFEL}tuLZ5QRLޡsli//Ի 81/Y=rz5yo`RvozY5*@R7C팽L0eΫu&3C ڹH7 5y/lf[#ez@ mp(eп /Di{pw!@r+ )1ʊƼ-TzLi@otb#dc,kޢAFeK?jʌxNB])<ҼAo1F+RR}WGQ/ qu"L53ϣ_)/Пr ' Q̟| ="ieULdSms48 H8M*<L>4]KSo1bLs/5TM!t5+<xbievQ2'!!I`Vu6,_aϱ ʎI^H$I@(* #;LA( \x~PE?toCםUS3=KENAcUWM`ɸ0r`kO٦ԓHuqb?8u1X,EvK^T=C*V^㪓G~.TMݑ-|kDX6p(%_n'ܤdbJ!\))ɝK`H /la ( ptYdU0={ߚ|o w;.QE&u+|%21/xv4Knڋ D^H$w%WK 9v2e`kz>'x e;@Lxgv&صѽOJfߒ3S( )Im:U?eOu}6$ KzɆuϦdת|ITEm +-51v{ Ȝm>+帒g9#ē_e?DWDo eE4Zs 9?`3nh:pUAÒ^ڊyUkҼ@Da}urIyX[%Ŀk<敓n/F> ".SkE|v`_ bwݾ龓a)rn/dh:QԜUHKNF GTCyG}eT6y@xݍh'R!(`m=ArK"YB&TwcZYR+ k#q X|"ɹg}-WY~"B#/;T@I lUc< );1Gv{f.ͯ:oU8WX FH?EֳʆF©uob-jGz5z h.\r:džVGG9x(F2H>y4ڛ&0z_#coG]#+EN,jB LOgO^A&=騈  aZ[uY4ئ}de Vv@|wi~}J,p{* X:{[*/kP\HEvlqV¼;"/G8NR8uL/m>?|y55UoUC[f] [ఛMwC #bcSc[SZz,L\Whg>%UJSt6h{sg]gŃ4' J $߯ϧOKwFmƿ_TI&)gvQXN&YTλ  vIRKT.>a1k4n=*h:G,(MX$m k +kQ*p钙ɛKo8XB&. ,/, w,=ZZ Wk.XËYe`ؒDv;.xBj/=bBʚІsIɻq$p!і<ߴGBHFQD0|&\";Lsa]Ò;EVxW;w`b/釘e̯{&fSDn\vٽ>_jz{w A7+`jiH" }Z20%ܯ3=g` Wڝ^A X^Na5z gfJz܀$4Kv'0GUˎDcCl2]d;1 ,I7BXZ3;(1c*/` 4-nu<̳SB'w=FmnC+? Ɇ{5If[E qN-|;_HeHwܻE3_*6ր.}I-'Ջ$"j &R# ڊh Kg(`V cxpp%ط ! y5X;'JLBq.MeR B4Yijnژ$ S`o}LtpH'2X4gNjN{Z^IfFOC{(^mJlQᕋ`F޻)8̟_zߋL\F'.:as5E(s2S-1%7LMOo|sƤVFoE2 vߥgyw$)t| Ae^.g&T˦o oZg0I$K7bY-iP0۩*7 ϔ1ktpFCHoĦ#C,8JsU<󝒢h%q=ƭ6Z !V\mQoq=U3B(P:Ӥv7|W;ٷu-OvUZLA6}ה%ļXCƁr9(|ޓs[*_Bd>\]DճҝOUr=vdd"[{;x*Nvwe~Hrϗ# 3F:D@-_t}`Iu{tJ"46 }C]M^'؋6#GE@q+W [RQ 3enP$܎ ]v(Hg`J:W='=nUtv!a7JW&k`ӗJ-S<| b, _3Гb͂/ )8h~c3QLiCjr!&z1}fDܩ? Q81 yb6g8D/FXEz~gay7i!'Lϊ<8D,8+)Nf͊+ ,[hrk'xط;McdfR-_#ÇIw]e?(3Rֿ1ܒd1ˁK *[r$[ ʅ]w+&oNjwVsX~zkky5D6UOX`̜i8E^RM7̄o,v $[CުI:r_"Uz pøH-qc4-(ƥhN&']%S$7ʌ365Cv.fT .F E< „H?kd#6pL~yAwoRGO$"d+b}OVavGଉ)k!!Q`#zqډ'cOC}(7uֿ@0jƏ[,iP3JqN28G;"x-;I;mF<OuΓ KSnzr2q Kwˈ&Ͷ:z+tpo'45y}ό԰K'(nNАSr*y2[,ƞTD}~i)%3fuJ)rɼ'&k-%&+,֊8 to?0֡lsKIj)htppN큖/lj0{g3,ቆn~c|lCBdghNvKpzIƜ2vy_k<x\ᐞ,v C6TfTjLpƼ7Brt~##bI(MhVз 8eI Dծ,DYtu O9(öqh9vJ~[X*<aĶ]1 ^':n$kCF] Wb ͬCM[d@4!Or-4+yuK@]fY6HFGiUC:Ƌ"-ȶ0qc{qdߔs,` '5ԱuA093TG΋.! -PiloS~rD[R!r> 􀧵6yzRN(oKa,XoJK64xs]p.!.p".%O+\Cj{u6:4u?vd(&-^tMbH@=]!heݷ nI=?(Od-wf; 15v;Y5i{#E9y"@J Y/qhaZAJ௹z%V 3j s#ڹA_R%sFӿ$_%J<\nD jmK%'Wc"j_Ʋ[ړHhX!q'CքW3%sDA*U  \'zaTc9tP2`j-.3f9uU`1A[x4@ 3?Qv -B{!L6Sfdk_b1' +1L5E fCvljT_926>ebHjLn5D%mO ﮜw!Dz%2ҪO c7?2,9.x R(RMb T"^ut) ;wn% = ,"z e*W cСc2(S)fFkV=SXm@Ѱp"> E0ApXiN2_:ˡ{5r9&W5 qf7/Jz .>_;}}ʉ:tdݑپ<Ӈ?h zB1e8!M?L3:o$a29aJj,$!Oגjv܈QOy?ϩbq>wISߘ<!a9)ICuWQYMZB@^8JJ2.KyB022n!j<"g@9EaM7$U}ԥCј;0A`zreLw|\ 9?w 6n+2$ jh;kL2R#6}> 6 8o*IMPϠs,i@vƓZ˶z>:) /ԭ>J`|<݈%B\ mca"[N0ܖ ] lF﹀/nX߯q#~ x?ZV %W(2sY Y@Q+" cZ3{hߴ|\cq~:0VK/ &k߻mż8|`)WsqHo{B)c/2NM8VMeP/5LcbtJſk.VDvDԨ}veWmRlNEZj0pyʃ󁶚 =X=zig5ab!Da%sҾܨILАKs=''7?=Vy &iPP͚n+pӸ=3с9Q`UW%^k:N9 CL}QWxCTS\!G MO?)ܝtK 06% c=v$m7>et @jOL*O9ꤕmR.\ ۉ^Oپxk4 Nc^) \c'AnP@MڑxLowI. f׮mԂ >&=?vloGߦH5|en㽗Xؖ~iF+C~ľwL,c}swb~~M{z ?H;FO4U obs&ZLCH_f 3aŏ֙ÎR)oTvx\& =6λ&dnlufmUDE˖~? L ]^pq9fwnCB\%Xb+h6;$r\׻z~U>iƤd~+(`0&@G$c^57ToQQ tvը 6Q=R' WY?DulNH^de9FnV.9/BhZ(Ov $ЖzHi] T7'XvYCVt \1[:oj۬V=jR9`9R8 S%8me"R`iu^tIҘ  ?"F%[Qr4ӆY5H5:yk+ALw/e~doؠ4BNs}I6VB=+w*@f;:{x{5W䜿*lPH ~(ҟZ$cIK}xףzԃ2uNN* ָh]6:ccZRuM4 >0<9wa=H}ƁBu,5r2`q36CyP0[Njmg#j"373T" SCQaxƗH.ls":C Ԅ"y &? 9 m2x}W2 R2r6hF/؃f9m5yN'g>0jy͊}Xٲ=r ԥ^ $ݿDt o6`ځxɕWC6Noߖ_' VV8ϊ7*&EDb~Ā;Hdwx ^d,*^:tT#mK`{q2@ m |ǩCk:Cn0ǾQv-Jm>D\$6C' SWb( \а5Xt]}AdPf`g $Q9([fFaMgKзbR|k2*'%ul$E!c<ތdf%٬]&rA?gЫMLkd{7h\S$a8](l: ]RTP!栤q ~A_zW[c2\F ၉g?߇qcq%S}׸p|/}!]Oc}؛x˖^B !*/;ɼKF䈈Olڄ0]Kwu%EIH~ZWtgYe4 6 .U~l W@t\b&.`Lf"V(V^Z+)AJGw5xԖVM g ?xIKXhߥwYs1ԵLL1ԮNn\iu8&AAɺ6Ȑ?[[u5IA>m\fH#_f/SWe?biaAbYo7D*yqz \ղh D͖fJU֯6b1&yQK/]CVνj0tw/qHHWJ>"$&в'ұm!k[*lRaTtceNEp)t`"2:Hy"H  p]Z0Σ "Aa՝$*{tO5#No]TĮPrn'Fԧ[jޠ$ .,4lVҪԊ[ai۽}8?41lq"zǮZ/K {8y9e"Zr^ͧ<޼dE:쌟{,dmGF!LNE޽dcz {A9b,㬯hIg!ٴVԄ jK!xtƛ.Ұ<l$X(U_',!##ZCtHaj1zg(Z!?PE)>Lk}'{%C$(>K|,ccPq,%~fF" p]0nV6-㐜d,j9fj_=m 4ˣJF_(δd 3k@ġFɶ*:@ۓS5@B='`ho usa;pDP5ӲZUS5^s@7p >tڍ6'z2O:d X.RPãX= +|j3q2:pO1o!-s2gmOQ!f (P G^;iAL2=b*,>$>~wQ#܈U߹Fj i >g~ Wql;A"tR]d_Y>$'ZVc ,wBkCӨtœw k jOy36.6,÷x?2.'LƕG^U(RB`zzl=!`-\ZhxgȦkx`୩X걥{c~ -${{;I&:;7+\)oWa~XƂ ̤檺X}7r Qx!ZM`2ϒ:4,g'u+|Id#l$z0GJ+.]0?ڂK!^k}s`-Hԗ0e*;uA"y dzu+htĄ||ABXorNv]6 i*V&0l:g|֝ =|AoQ*Zt1I-"@'溚.@Ahkcی7uב}t 2rzs,_0 [svkttr.[ʶ3O_pmvv_1h,2mIL`Ye9DX(AG?KeNX.a3^dp[Ҵr],ۇW=5tbƿkЋ/˄g!3~L.^kʝQdgɛ8lLQYd5>I$iKf 덃s^ltk,+ }ij*m O 9uaoc{0o4cV ՒFSգ nd/]ĭT{bjKmLվOY ϭ;L8;4Ĥ+5D FO M0v;xշ Jٱ#I5Waf2T5AC?n.Lzvq~y oF%F:: ZūO6wmзWw: wPyrh_^?I>{r؊w}A,K_/ C9폐=ODjC"T4q1jk op=SvuەN$*ئ ~kn $fM8|(A*gmP쯳oH0!ִ?ߟ*@ȕ2fc8}`c^GsN&-}%LA=H󽎖(.&>:ӝ[b%KYvͥ`X̖ u[^JɯTqSzK[9>ai=R!DX-0Ǔ r :> ~8e$]xB:)j5=xfŤ&/a𞰋{Z8\-ޡŌxa^ +=f@ tƠEl ۞NݗAz9SP( T+9as>[ 5fAH[nhuW#w߷c1Ys VtRI+JDh;Ѷ_Ðtp|ցE&&IN&ʾ~xD9 w'g),4V'^hKr%s\F{V- + X(INI[@Պ[614F9oθ#-%tCZ;2~n͋1dOuͪ7ioJat+Y-,ēDvK :QZ,ATZUQcW F:R@K?Wߌ} 6֗fuĪ㣁cۂ_ZT08 grNFzRj|AEB P3wPv",,&8?pyERР$S#+g},cJ-,VwHvY0bdeSwn6]aDdDy]xbjI)ȠGB+?7 xZ8]HAin~pݚ>t;D3LZa!U> դlR $j֬>?IjpAhG+)n񴦵QԐ4c&p:\LQ[j4U='9˶)<7+ G'Aٶ웤 HiJ j} \l߈eeJ HBEg0 ؇S:T:2IHa[\Pn׻rؗ*}eȢ䳱8ȞFY~oAG-]Ԗ tۮM'Ň4m?4^v\G>'igrOy5:N (,q#Ga\/M-UDdܣb9_%<'ZSBTټ~jYT4CۘN[/rwxTBMvZQ> Oʟ#W `'tMP >ᏐhRjeJ$pҷG^6K3:e X;Rim\n<,ۺދw"sXJ M1qTnR.`3݌ױ@j0ć53g0snjCt[rMlhQtH؉҂*g;6ؤeeИL|wtԶUs8i錃/O?0#[O61 ѣ"B,.`lE&@ĀlӧPS> 'łSɯAjtu[-ݮ@ 5|5nB eo2C#XIXFrku`'yZ|';M)Tl ޅ!p>M &XR۵\>%n߸PNDڝ'YY6w>EObEs)҆\d >H$ /T0 W1bJ0+s>}sa^fm@I\g*AN&)p@ldA|N{9cfO*j9?hI [ r*ͤ^nu9$6|5L>..d{( S ;A)rȑݵz,!piǬF2-;q媵eO"[P4YU( WPDE @;h :!5ߩ4o8kjoKi6mD]R-+)֫*ju׊ 6G!d!MZ"0_cCQ @> bzRSQ;{Ƒ$n5͓%pT1ocsѤ `{(ZEeUѨ qF=`fYF{%_]v*dgv"K8 AOl Uf_"hRd*6ZAig0`vx.L03Ajguo=Cb5k3GG{ԟ!!qJP۱U=-UG$Cio2M:W GGұ;Хd  1-:r2 O-buڰDLb"&=t4꫽S)V|F}~8&t޵L1nu!)K"ㄐ=q,y/5lQjd5 N]uتK* ЧMmPj Hoz2ޏ\ZS3nT\׾@+c.+Fs ޹BqiK^\N>wH{blb^zCY}kZt#sqO/-:ݹP_lZy܏t⑁ k`ѨEZꌹù {Ez#uz)1ŎUI kD;q hJ@3gLb;!Gs2J<`8R}8+JP)tR-8}1ҰAѻi=fW`ʖ9p/5jOà˴ Z7+̡pQ6J*w]okKkq JυIFT5$ǨҝZ Aorgm48VƸVr'Ր=rJț~ ڀ:x(e W)D*%"H]\'o+Fc`DQ$帵!)ƙi[W!ØJ |N ɂMoę9'#AcN0ꐈPa_G / OX[3ɉ[>{R崂QIj cjȺ6Sj^;MJvb} ,TJa.K.5OرOZ}U,J7ړ^lpL7Ngm̅cAa1hy"p~p27.9օxVOi.r BvC]e~e/!.Iuٌ>ngh*VUm%*{y8؜ tP3?!lv^5]a( ۪K^F7>ixTP4h"@@^5˲\tVDlP,kD3\z[B!ӠT*`q jNY?2w>@TEFuEx} &v8=҆Jt!=F)<_"JŅ@_8@^`p ;BdV_15S+Sd{|Mhm~#}efۚ̊~ſn-OvAs6Ղ+HU$`-<[Q_Xkb$%]UZe:G$[/ ɖDTKTIH   k{!: VC:/KRG֒;25o~[]XC.5/'Wn,Ljzj.*w7vw㦙S^~@< L)>b,=#:Ik3- =^W8ef@7 $:ڧb$hJvVb2R{X~E;8bq bk[Gz"`7ApIa g2 'ŠR 8OQ337FgM u#OOYW|oЋL)vUu}tJ%FV fжbS作k25]uV2!~md3 T+0z]QCQiD|EVg e$Ye}q[2+7휼\g#䊟_>YwmIr**e])Xv\ss &F CXԽFޱCϬU¾,\ uSVOBPvvIf1P 8j5]wsnu/IUZ,RW۱o{}Y{7 x(\ "kmo J8np"*n{XDҭ!*pXKųAΥU 잠T S JQ{rRr{# =2RRt%⹗[ 5DA~oqW­A:ysal;O말 VْƝݪ-ɍj~cA_hNc#譂g<gƻ;xAl;LJgYꂳ6}ą9bJ|S&Xz6ɸAߚɅd/E"p~_y41qr-SN@vշ (~K֗(XT}qU6,:YՈHtv*uC}U! p{OZ(ο6}<^KNs[nqai cnkdDJ"+ٖ!|Fh !1~'{[l3,vWx u>-@OB) cA+cSxfntZΞv*-{sj֋}6s /sF|d /0X !evLPb9!/5=:j=RiL1N-ٓ "^Q r_] Y?~j7;iGbjaX9( "aѽEPip|,bpiX`3gk(ޥ8B#\r 5d 5SP%{deipa3ÄNW:i ~DVKnd:ZJƹ`E"(7@-Y.YBuys CX^j[qX:x0QHze@~MW sʔ{:Tڮdа$ akJ8Y䇕S ]z2@B)#os$;y)p"So=waKiur8!><1OȪ?7ڒ&~?1Y[__+>l,l`j*Ќ[vp7S,d :T-YlIo 65?8E,g3p~91YwVl9|I>EF3\ !op" S P]X7;i󏳌UDFh>8c mm >Y/đ:%gQ-H FTNQ }X1Ou`3dA5;%2!%h?U^E i5] ۥ5 A\0.S]L- ["u2bdE(][a.?a/Lzdut~0遰&RWt"Jӯ @#f“]x4« Æ$u$ >x/ _YwI@u>ǥ} +^t>h/`H)6s۳[ z2A`ߪ髉PKs,, baid™V'ǫ+pPᄆ"<Oɪ]2-xlZw^g!߳o/z#k>% A 0}$$0x#";S?#C|#$d8=܇/D'"va%aiܶwʮ " 5N]?Ѯ`,H!_]B7gv^~ o 'Eǝ@Iėû'-J4Q鈠"3 1TJ劐`i8焕d8&< sPvZ^!+v[qZeyo:S|]$np;rJd9!xyC2 H7𡒓"@wpEJ?H3-̎tS(K!$gs'lP (3 ^0]&KQ,\ 8-"۴-rfEӅ#pWႥ%g);DJVQJ]_&SzREa kHxW&(K.T޲R\, g<ÊHR}4 G$ꃿ߆}y5T')9Zr=  &9WxcԨ.PGh>;SxPH'5BtAt)uo%c OiVV1c4,;Țr2u :%j>yhՋG5I?9 $+ʛE˜x1&؂n-tb9KG`V{or6^>bdZ1 zRHSHh),z|Wq\3yrm3/C窡nw|Ra( M+c EYa?W"\6 S̺}s:l߸wm3Y`G)cblf(Z"/s:dbQeJ(tMJ3)M[bWG LDk!$ _*=!FY}vr+}GX Й] [)wP*B"Y&ݗڣqL13L\i)hq ^Kt9qsvOM_j%&bh#6->pt nw*~ ,fNظ]^u07FNcD mj@5/`29Hytm:e i_6iS_r ] #Uψ,`#7M̬ط6qr(OLqt5Bxb^r5Rϻ-lŇvBk}|)7#B,>p^o;kU.,u`zj ǥ %NRe  SY3!HDQe~.Ckr+"Wċ^Od(TXb98WʛF WMXGY,vx 6vQq{4ڽGAI,q | W7%Pp=h{=4Qw(f4K_`,ȑn՜d Ʃ6КΆ⾴hjBLv6zD8Q)o] .QΈߞV(D5t[b 4pʠw:!"Xt 7|.zMvJ(lu(ΙzbQ:.``ړb.!^T T{Cvw.ͽϗ5Vh3uDK0I2^'ɛՍ!#Mg]{5Uc^6,)x!: [:?NVV8AS^M А&]LPx=:i `ubsyeb&=2mPjpo?ӓ-0 yR5ls`eN {F.?[ .N}0!iu昕:{1Pޞv:ER=AR 2|C t"X+ R`*Hj\!Eα 'PTptۧ⮄nJSҢToWaWp8^`@n *z@By/=;v3iV]Xy;kP뾷Wj~9Z t nnG7|o=E[wvk5+fOൄ[M- +ƓNcKOJXGd ?=&KLNf%MAh5}o9_]a[3`&tO]Bj5LCnipMre%v!E |M-TK # :::]OG)4u4nZC>%$7&ٶC{NFvRD.j`1j65.V8$ÒHr/ Ao;G]ؐC>4. QMa#%a-1o`)pYi֩~y}_M?$t򬆚ىUZ yob跸I$3w+^Ⲕ^ːh/۪hП.ÎHrZ<|Z41ga$dH<`G ҂C%L($s_/r?rK\eOBelD~5m}UNf̥u8{!ϦSdTyT.Q^} y{,UPw+57@KuRF `cdRrQ:զ)!̮]zבR\ogvu{N%׳C^1,K)\ 5HFs%~g^_r_J|Odl2L vxV!w/'av߆hL 'S1 ZnB4mAu''̀6 V{& vsˌJi)TݓBG)ןy.#wAzlevABJ1"ԗ;o &LY[Vʣ^uv"( K`C [SUFa3I6#i-4vzo-IRj.a ![VIe?;;3Ѷ&}e*Gh{O,+2=ΡV]"V@sC90rWȋzjx.ޘzYĒ)Xhap%H.\;.ˡ94"mmu Ų586U-,ʐʃ*>](߈?x P]eN7d(S\T󂼥qok) JEhY.cSPh .i~6dN/Syݼ57*u*=Mk4Zlpbmq) ^OwO-B od+hWEU,Rco{6lq苦bT]ه&CfGFL*jAkS)n|j\)<&mڴX{n+8H0=$+H T,ńiV7 } 5'6!S [[ ބ9'PRQ HxgJRvTA6x#>H}~9Pꧩk(lrMs~e$Hd@/ 4Xt"ӨźAUD;~GإK{8xBMB+|4sܠS젿pl=EM{X{oNy#5ĔS>MQ7 +^-퇔 .&I[=긊-b3'nSr]h25B*H9^$]zt6 A%ߓ\wJ%-4]wI:*lAO^DLSIdp=qu'H TbC|5k##r;k1s2LJ?zRy%8GLlQdG߁AD vהUGN2Bd[ɏuPx˽a7qYvIcw%%$;zmKJԮ>Xwcj Vq7Nf) &ۘyTiHy 7)OtC*-b3tGX9?ԛR)j)έ=> V)2UZXa>-$l_/ި\к(a_Q_Gm]@\^ 鋃jS(Uܺ?Fec4q2éVQ͍]2DhVm N `[͡Q}j=xpp 7+đ|^`DݶYR>$@{n,3/܋ikgDlq "'^?ZM-Y7ޯiMxF%>#Y|P*N qبrfVwIK'-VPzӈUW& R\-ݻI *=#D5 S+$2 S ~ ƦMtN-O5.<$Pr9b\ΥЈS" n? wNlk o6a/ 0=bˁ1G|:vQ)hsh #{|ZĦ4'E𣇉kޢﬔ Eb!q^,g~Ξ(_8o(, #gE27z8ȘͲ. 珏.^JoC bh|ئ`LѦgP^{HPN .R =5T*o!^ CS4Y&:_N$8dR~PLRy5'=i6K]\vwYGqqhVaC9"Qtpq4hJH>RČBEZ(c%9Wr[)sVx Ű R[0#\׌uh+Pn3T2#ܝ#H{~t3RyRÑڕ;5Mzܤl/#"llV:4yIz=N` ק9Hux^4/5lvqr@&#v7[+=6:d&Mr,nؠ+ A̟Mj.#Zע+(#cKTׇ)RE~n^'& j}8Ȃz_WE=e[yP\XpW,#Lv6[5@*T=KV379f XcO:6"XW`*E k'Y{h!$OZؗ*6l~'1 1?(ߢVOFWUݕ*PeXUkSm*o[UJgZ3c(a>vm;PrHN:'ה,1u+mq3/c#*>mW\ivy%۾Hr~yp9*aIr.l )U!CAguy1P*"QoI'fG'+*s0LKjP2wBsbR'4FY~PEM?ߕAҵVYCm*N#PRCR$V!a Rq l|{3K&X˺2F 1;֘|ߺ|t}#ǚ!o=9ܼDO@QQ^~aj~fN&}$e!Z-YXPj} 83"Fr)ՔG+>4M( k!(fb6_Nok S6uB@58 yQ1:}=K}]ǤP[;MIne,&ob1k.t7d-^m8tY[o)Xx n=Wd" fAe RKJ9Rc |sJ{)!xN:Zg7D*4Q9)2¯{vzYZ8,(R4SZ7y('lO?y6 0뗤|'=0VOȗ"e-7QG־? עs KR5+{ E,Ni>iOhElFKKM$Mag4lҬk$*:Twr9,xvMܶZKǚI7 &C8oȨͧ*'Y?Q"Y*@MO1Up9`G-JR6jW{m8ʃ GQ+PHPUMgʔXttt";Ť˚r jaqt?Ӑ;Ifꒁ)bB<5[yyd4XJ G|\&D2,:bI|}rvr|!D:nEtx,UtUUla={v.owľ#&]ؾ,JU*]Űd_U} m^ on12n2kdKYe̜VDX#\R?I UYYzj26ȉ%/o)Y1-7'."xN?eGٍia|q#mԹUQ޺pʋZ*3ט4~KNYBS5pjm??gV}-'Kgȥr_8n6oa&rn=]"TJۊW7[$Uf~;_)#v?CC:$P0zTlegyHOA33dKPWVeF1"Z ̇l=rt9s+2*\I"- @XY9wMd-_UpþN{.=R- "ѦV?ŷ^*t[ې<lONOX/Jlj0e7&Fѡ\]^/F<^ #bU"ǗQ taJe~ZF XFG-Gp{~\HЂQyl &nC,ۈ j|%7FSx:iލjoq#V$ɧj3}*!q%ݑemF6\N_}\=̽& cOAX#qIq抵6/'mӎȬskdߒL/Y> do!8ڜUt֤@u\>i&$X':q_Z !j3+%tBR'WX60}jJ0|̟٫9[tY9VDaj7kPا纠1j x>V聂T|X[C~RhSgϐͻɢ8 ځm_X lL7;9o^Fb*/sz*8S4K(Q&}T=`\wţ DClȹyfygN\`i f|jBf8"jQhE5&F<AF *YӊH n <}Ƕ&7#%$fR3=ky՟9yUܹ + TķAgE?w1N'Rғ@`9qi Sb[ r,$='T5(؏܃ !!<ʊX=|:3I a{RBqK!)j1[ml@g+NnXw);f㙛,!㕯 FѦh/B"Xa5gBz+bχn.x!3 OQUTuה[@$QHwv>4Ϥeshe[<P-/x-(5JH5JTRzYGEK|#t/OXs tΰqV<ζ roOOjm0f.[ FTqk- WyYC;Bh ˆ>hHMu"Yj<2 ƃu 2\ A8hץ?bB%u~u89&b*PyK͠L o4"c!Tⶲ9o:e6}QT٥d M>h1,x| @zl(lzя]|x ?hVm[#] 6]r9| " ZS]Y,a4'X|t"?F8]AaajzRjAْr!QOڈQkqGPZ;HP8"$;r.b :q䑢fE 7[  E%Ğx97uK2)jL&m,at"ULzN **v'̕ m)R-w ΊmdMsK>1+"TMܿѴ: I0q3Βy%Q6$!? V[U)BӼ<~:ti)AE}vu.쥓Ygz Z\Ag1|WP+gyr#LʕudQZC~qǐ؞\ uS(wGi+-5#A@'-7\%S_шj{27&]HG_To`Dbp{״Ih=]pprӊ rRv[wdGQto|9Pp[";1R8LNT菀K%1^]ѮaPeS{e0PV m.)_`y"g@E5 䅄nӡ[(!k7dQh! Y}XecK;Y %JGg~*ZcܣPӉd0Ix6 ài=uS(R|!_ 6RErFO_sK vb*]'Ns-rjĽ9C_-UԅzcyeY[ .tw_{5k+.C, B=xFE *(4W*\$w}"$9Tq#XٓY}`mݴMԁbꐰ]zNoth$i8݈n*{<0]$Eo 8w٬芪'7֝XɜD6_>* ?YT ,l1<-Z+`<[r(h.VM6n2?~TE Ҍdm5JK ;۞$K}S]{ިt >̼LO@`1H1AϚ8R'$y"-|3)4#"屝[ *q?)iؐCꧬƣT9`6.X(,Lgt}i0ǁջ9$SrrcrB ˟l9bLz.ՁUܖdlːM\]M(&^ EX0X_` w9OR/Y,3s\6x8-SF'.LX|^ׯ%LSv$x?D*L U&X qX S56_[϶_`i^)L<[PpO${}٢$% ="xBJ uIf͊э7QH S krRdL1tWFeKq[n^dN-tuGaQw8Młsך S[A:eF`.?m]r\L?.`+(&Ay9gf`b=.!# h;ZcXCS&A rVv bR!@0q .U1d2J93VB T3Q,K0y(8(ۘF8gKf!I(gꖄ]Z!#Pxp2 vRn%M*8?'Ƭ$\ },8w>P^HLL2CdBwAI?t.-ҧy3ŹGjhߗ$1ŸaPcŐjTW[)זP_JTM<5ksݲiy8/ 65 [(2J,j{#2夔fW cAfR[ C & o6hZY`;7P )m! K%\^Z,oDE gRL¬>t~ڔcb۪T9_nc4|)%AtXjr؃ؤBh(MSH)hP҆Ix},D4Jmsg09A/: :y¤s'! 85և00aOh۞ -7,g^,bwN#aQ<:|bgsFwoc}3(rvA{WfqIզC o'#K}CziT"GSY Tn-H]=}4t XEf,߶e9k[fx fH!DVV84ٺ ґ6^zϬDO]5 0Sʈ*uUb-w' xw=$Tj[i)+PI0&C)JL%fۆ_܊svLRpu?2&\@z|l7$'l]TvZU՞"6m8R#'FɎpOsbxjw*5]H{aO#ue~[ȣdFCUҦ~_5=Cy^=Vus-pDk0Y 9>KPe?e dO$0;{IqO6qMbu:9nvB,%v,*^ΖGGR?4e &>CBhc+f` W ݋Dz5 f/%lى|9m=*"lFxW`?su.! {٣17f/(UH}0Ds$FưqK͡w=5\Am:7K a8ϒXaz:Bh#ԏ|frԵR|꽖@}e2&p4d.3̄'Ut [m"F4\YVX?v$"MKi,,SyxZijj(VI2Z ,$M+JXãw4'51 :_稛JUIn@J,M9רI% "C&{| nΠz|֕v4$K;pivh*S^ٮ._vobXa uWx3ZLsPHz86x1nnNF4PxJ] Ǟ.T'e+„̕\͗ lڎ} A4g""4i .LD.mae˰zas:tB.{zK j&+#"4':W_\ʠO.Mv]~= G{_5X`-ȞS¯,*YAЄPPDVhߴ7Aͮs`(O' 6MTE@-9TÖE8&q07uRgآ!E'9J1XUqrì; tb,P2:? NYx];q>HU^q1bNA}JF+ mg$߃V1zsI@O?z`P!6ai ^^W:ANTCP5 ̽L;\佃Mu=,kν<]ѥ%qg1鰸}wRLȎ\kFAAK #3&D cM*&y [d\&cw,龩ݼ>^mʄQ @Cm]zNz:e7fR1N:]vЕՈּ^IN/I"arؐf# ql)22 h RPZ}ij.Y7 'Ƕ=V#6d[l g-Sn_nWr1mV^:q`φ^}WKgRdl;?j.}=ңr2F7*"j6Lw}Rêuαl,9ȒϤH TEWi]A gW$V10o178\(JZ ػ꾱RLZ'2q8MԺ \Y&( Lh71`40~3l 6Zf3 (D sk$| h'A"= :ɗce}4D-0n54Sf9/M.+I҉x5+/>9,˴3?zI~"s˚'=NMkMKYnW Hm8ڗXw@_4Gmujśx( <RZ#XC]$#QahT89~1/+*ޞ~6t8);9}agbgF+{D0{)ƇUrpO(-IݻSʭjR2\8rpY50$ӂ3q+ޑG{b'q/ZKI;<φB*, {(x]m?{k83=_}*@0@ ({K-bgB2 u6%Oת /OElYrҡaGr?,?i-("&+2`d E^N`F4y?)"S%%<-Fm)E'DQax Hݷ,QwoCr"{b}/V[vD<(*Z+ ͼԛPBv7W2Mqozca4DDvQ{E=bv3)lE R홂ܳDP;q$>Q{ޯՊ,d5;F&, b jit:+(ޚӏQfs:[ Cĥ2|ŹhI#(ؾR+5ɨPg>![ ^ C D#>^!F,8(!gЇ{cw-{ (L 9q$ hYp+yS]avdzi Al谓:#$m=댟UWCZ]VŶ3ƥy%ayq(ZPrN ZJa&M/t{q0C9jan2jD\ey׶JkCMwoИz-PpCmBO:+tvw;^xQ3B)^L3t4>ŲdE'n6(h!zKp{*0ʫ$gSi F&myNtlG uOV-RP^S/ɉѡS>ꗲE,6`qwib$0xdHz1om "MMXTdi5VIfi@[YdL X2Æ}3_ǿ,1iX8[IvLCUS:i:fl$|K(5"xL?n|#sQ33Ԓj| ~VT4L~e"*$1$I"#i8ZTBN_gᦘPߕq TB6$+@5煴o_oQ3Nb]l,ޤ?;I#D]g)R !W? CjMqˣsg?mQ,T0?,1x2vM'ԣLƄJ+eFg57)Zꀰ#%M#yr">HY]әM*b\ E"|s(fdbx`AlX\Nzr^/ r0{dWL+폞ݟb?(|J/I=6"枬B {gJerìƢ9]8Uh'FGKRC<`6A! C߱z+l .Y ܊>q "W&zxkR.6ҙ),qKEbYջpxh-6]$Β@U"6nO< :!X6BQ!p :Os0~ }A#ģd<\nIc@y_';ŗ U>&LBRP)&!ɉ#Up~6 6ZdܟcSeD*/Wir<~ '@+U:3<)OKiIQ̣=!Jc)AQsQ^ԥw8|(V[6y3{KmYxN)Dž*y'tdErUui/`LCXqD )Aa8y\=d`m"̳֍ZUym;0u4 ޾[ _ua\?̸Dh-Jm}~Kx)73U7\Vfyha ;Rq9,;9n4q5ᄥ{edE۫ /_;=auԝp^?JdkYI~"$Š{{eoZz@%5NS4]$Z\ JM\ޡДohK2q *^0hɗ0tJݺ z¥3;~.IOqy6V%6,D0Lз48=ⅴkEyTH7#Rw?P Dg^ BfڔL!y_4~i=-+Iw٨zdzOQr `V3)͟Ol0ARZ+U(EWN+ ΍[B̲d-"2ߚ\5َ'1 &4<6!3[\ݨU/mkk$(Vŷ~QRF᰾L=T$T #Ҭ\q3}k:IzLM'- "y[ܹٺ@pEC|x-ּ' |G5ghY9wX ̀7}DKe-2]?2~fhem'AϧA9_ubx}[ItD%ldgTΚa g9Hf7kΈ[ ˾*]=G@B*M%M<>Z}:Gs%`;Nײ!B:h8ߠ_T#Hk̰3nF'm;Wi$C9bVi4)djUb.+ҝEfG~]}Nzb~5h:p+f(Ǿ&z4S0Μ/{hݩ\-q<ԒvVh˚4H <@x ћFxQ!?ts2h0 hL8·J:O Z&X[uةc<%'ݮ?,&V&?10b~k#<`l9`qxi\ +K2~I@J1~tՆ r CI80&1i-25T)GMJl×~,c,b,0=XMn%V8q;c|^epL`eF8aղ_ʤrvpM\SzN&s7Ϧ{hAdXdLK dPŊ/h +vՙ} ?B3#F77 3@hA[}CcU4˾gsP]-kuV0xĕZNr1`Sg|&D`9 C`4^C<8-RK\J#̧'7I"1|{7YY"QlL\c" ZmQe5t;N*̕Caxg㑙[ 8[g7£tJ#TJbtB8Sj?=p1u9*^ U7S)|ԋ6sȓ0eJ2^9s?5DFH_G6R0)&\MGK48z-JR}O*.U&adt{s^ݽܭ.aahW3EKb$>%w4&_ꩯc A:qd 0>T}5̏ټxFXùdK0"^'Kj`,e"g2E#"4eǨ_ɼO&9Dm )b_ܑ`\5:Y/ =2B'> M~X&]΄~3plM"A40ytwvU#>_BX W5Ρyvތ|ϛ4H;6ڬ"LYhux3hfn 4kU.1&"`~ۑTq.[ 9s23 ?VƎ%H d $ݶfFaX hBĄk ھ"KRn- m7E:þ'%@&kJ8}#Z`2B3Z/e욆41`TwGa`(p_Ike%7F~GXGZ<+o A1h-/ZCHb+0T[ٝ5ҕsaև~vCx<d-˗G^FA(zmJ8X׎/l;8]< 9b:&iJ DaUa+U+b 1<*֒~xlV$>z5{x =>zߛY\/mV&TFIz-}QJN_ee[lE*@mg4?vܬ2IJ=y[\UŮ*~%{hE]2{eag%GQKJ>iQȢ9VHryE*D (3`px2:@g++YXF_թ"}s -B3[NX' I5A$tHIl0[.],Ya?KZ\?S ¸.sCR3b2`)KbWSj@l5e%cĎ[nTTH/%b~]" 2U,V]lq5I _GA圛^~6ƛK_7U_/`tv^v~#C,Zsvb6Ы{<QxQT%牨$HqImddZ(kLlʧH?֗L{둗WW bޏALmsylv)Ĥ׵#YdokWA HKƲbax~t׸x4|tE%.e8,hs/&MZn 'oz!DZ+ס(iޤ.(Hxb@og{N F?=94`)hQ)XtD<3ri&ѣjr;lm^,hYe?F}۪8+wʭI ؾO&z5kb: m暆!Tʃ f$QrrG!@bWcPFjB Q"ܨ#0e,b?[O0x"xXEE֭,AϘ.4dZ@QDVC m4c-F:$3j6{"*K: :7;Dnuȉ9li@4bNXݎza'.TI#bTcu`## ~'Y6pR{huOcO W$jv2ͬ%/[n/썞CEp0w8Js{%`'ql Մ<%vK,ګ%Ve!掽{)ueфIvawz}Аm"ZiYڂ}L (r*j$ 1dE'~K[&]5~.}&ʩIv0Kb'VlɒMmA9WgX YoF'Q/{zEPE܀{Vs}VP7Rk(WvU󵶉{@@Ξ̬râdME ȩ8֛[rΕKPYSY\%ӑD:4?3Ϟ{?:n;#s)L"CP Y"xP~`-# _9Prv}ƴVkz|WçrB4G^js8ؾjۋ g_I4.BtF7 [WH{Ï'R,ZeT NWʡc'M&/a>v܃7qlgWˊho;)&$4KMl)6AoSUĈ>!0Rb%4]-ȳ oNl҄v9yv`ZlAibk({͖BVITߓ)X{/y|!d0rKX>\/}mH j0|d<{%Hrxi=YOP@"./5Пkp[d{T-ޠvh-`^ݷ#5]ItN;cf~Y ~x]D'{rh}=7Dd#s[TJ7$(M!2gMF5]fAL[_R'T%|g4h8Wh>KE>$k wAzK,##B.E$TLH=N֚d\mD{+y4O:up?*Sk0e=< Wp7x|jT\Ppb-hG`|_AXVPUeR]o(2S[)oU9*4Cå4߸|2HM86 H"@U[GF<_p`5(u6$&kA<]moҧzrN4 ]V#:s m{(C 4=C_NS$E63՜sZndV6X@Tx&$cDi|( woa\TċH7\MX' Fd=՜=+X΋dR8jZAA |OVu7$"©[V4!%d!s-R.!}=86+7+xYLG>jx.`ӠhMCTmnHgbHӆп6ZMW䮄Dx{\xKndဧ5Ǹk >(sR zjfB;SpF2ş14in"ulS_8 ʨHw_c5?sIR u 칠qX£M賨)nIo(-& Oa1%p!V)$9)̾]X*Y]Tκoqj=J-C }Ӄ*  iM2ݠmfxS/{M؛>?0jå,.~GaSRȇO|LRDN^v-\dvA:$@wJ~mj%;f^qilAmL^:_xu1~%4]s"ŕ%n :hN0RtkE°ejJFyCS="6WZna󮰚^'iàP-u,n&J&c:Ol:NF7!(ImƔ wu@m~hK0=,cPE+`7P](<53k?NS[;]3v]&IAIYL{z9IɂuWGlvW#2,mIت]N+Mej,(jFO-]?juiaN?sF)4Uri}4L8D0m`H ]P eEa)]Q050%tbLCƜV &DU4pS#7]h \=tFn⥙gyO Y[""lcN~bF<^O?$ؾ+͎B4b#K^jH|OLT_ouxÄ0]aVbx;!,f- g6Zr26pGZ3}d׉i(;Ww~q jae![a )1rb=Bnxĩ7"̽pOB4=jpo˵ `e4GExńWLѿ.h8sd) Šu&-/I22hy3!c6=B^32K8M5v_kqLfc-緈HQ<׵O\vۆn&/ oY~:BئSDoUΘ7ɷMGV?|xC,f uo3B_^UuSb8eX߀x(@" 33걼{ȩdmIp&_pTQ3fV.bB5!=~.MrCeWP֩^`zʧ!N8 V &1'DƕRmk4@:mW?lmzz܊^߇OZָ* Q4cW+YR[^ g?Mi>T{DN8/T9( ñX- qD_O-:jYM';{͸u>CB{waZyj%5ly%)*[f. C8o痓[& }|n&bY6fY(.U!6OH^[L.qtMj3)ɔ1sM$ȕX&Q0ia1j|,Pntelpq~B1 w\n&!e_QW]X qBñm/dU~j2;MϚ(`PvBoڜ85I F3#Qd+اbXyTtݨ*c-V&9eUe{1nBf6&L4i$a^8ʜ{KlMu`, )T/",ݡL{NMgP诀ʡA Jh<Ѭo#ytpI emILiy1Nj og*KŁ^ ~xߩwqX ;e&+X-CQ|9 ~jyɒ[Ldo7Wzv,1A6ǂmN:&i/:-cK p AU7Az`r[[F/ށ£cNb2#O+J2`[::T)A|@CTdȩwx rdXr[,ϢŁN{d ~'^rZ{7s;LrFB4$&Dqa/#ݒ?^o glhǵ\Hf1>Y&gqSZ)]Ok+@C"\tl} x 6३ 0tvbSTKJ2}X#? +֪zLL௕ kNlj_ʭ:l}Cڷ̍ rsOR-|3cuKǛC/0ҁ`uEӉj7$NS/+ap&91Fir]Z㣹pJȪa%Q>ؒuH}#(|r#3 f`b ʔ+ldœy9Y_[5 ܜ{7=RHk>f">mkvKEY$4 ɴR#̓5| AӘ v~?qñ]J+/|Z|oc %J%gaiv8$O1dGT|X:7'r3棊K)X %K=.͗U9:l)]!<[( oqi 4n|T=Ife ^M>&/$[G A*sEd=|A$CC0 &E#-`%B`4vwM / RgS̆[>sA&Oai\]A l}; ;7Bg(x{YZ.ڿ VUotxU4Oul9؇ 9\/Ỵg>Q;yM4Ä _VE #165XKn#b2ڍ!M jC@R3[v ~ED0;hWzk\P`諚׹կBPb2Yw@))/>0ROٖBx8S-9ݭAp7gQCXc[iJ_M'urAsrzA@6qd"8XF]Gqbg6/6ae i2=+0@!qX,{Cy@:|߹>*bK jw{桔RjWЉ< &vX`0, E?бWiTtt"9s1ज़RFÉ%Gu5Lҕ,Y6x> 8ǿ HĀY$賑t>ZB(îw'&*_(3 }z S/*HDER?.uok3̈|Ǐ7X}Ξ`3tP;I :VMDDWZCOEDܲyO?`kthƘ!WYcE /CU21xJZAAݲ>MKT m /S|j}" D{l1@x770mƑ]M&((w+N E|Gz!˹( )wG(~u!Jq1 *uUrr7#4{J.{бtaeZ-O0?3mF!-{6PB-U3K K!o4~__{5wS`c#JI!lxvH. F4NR8ZkNۃ:2y۞1% AYVw;kLIoƢ d=Ȕvϗ #v3Xܴ}}ދ^A )$[Z7^8H0Bé FxF=4 ^ 0vmOjJ[y%-LS:nZ^P?:p μ"-hȁtyb#D#'mgYD-*x٩(UDOL=7k+֓k8aWkNH9_'*a7#]K̹A HW9L 4_P C+h_Kؓ(65%0FU"tJe59/E3j!G1pTst*ղPs($|,qoI 2YMqCp[4Gܥ$ LT"ӝ.55fP4Bw {mWAWU ؒbۧmC?ޠbcU @E}}*,>')^:LVඕMAcB( i?\Y| :{R%j\{ZTy hTkS1PQ|eiy6,~&Y%εi7cL GKMm:zK$?fqa7(ʼ6m kwSŃc :̇nxbgJP/>4&`X.uZg5B/s@nVcE) xacnmakyϕktV_{P*_4iCi%dkY;Zzl|(FNFłle=mg"vv>oȪ'N&ˎ;'Y|OE9@1>5o0)~g8Qw.^oX!=:p.nGoy1_g[cd ӓ#נtMW|oxgww oK;׿hV>(d'x/8` zcg Iz)ߜe; b&˭xmρ\\NҊd`jͺJ)`#ey4Kӛ`֞TJ!SƿVez#v~FeabRPzC3zeaUi]InNL @1uD;ͳ %"䤵qY?(IQsS':O0HI1s@e@p^ ԤS,)* M1˙lL<9< ]Tb=+^N]FU4& 0ԬJyխ %ꇛh:<2kYk (@f |z}p/Wc`67&) ,i/Z[$y-kK,vO izP!39HXMb[}˕J[),򀯩Zˬe'Y\Fagྉz vOXWcԌBRJ޹.싒O=yt5?L0VߜL*gc_:gAuIFT6]liY>.W+S" þ uxmOuq[O1b0<~FGEZEBHƒ-z#s˧0P;:d# TNԨ09o>_=HJS?`oǁ|BY<6D ū+)8Eнm?GpB\LSKމY)?-;zĚbv7| KjvU  $Ri ti2|:)PKn[E4V&&TҺ.[i+z+lI3ף]P\Q*f!1AҧɭT94Ǐ VP'g%zU-48,= "j{6 a'Y죒~,{حjnXjY_CEFjĬE a{C346#y$Jwn=:'a~^Ȓ<)1YܟS肮Jf T %BprT1L0Q ?LYIF +$$%Unl*Dq?JNBEԋì(p 5! i9{vsIƣyhO>L]3*jWRzܖF-\mu?A85ql<\aYiP=&>xeJSژq$-A*EO1X#k_|] E鹋&MeK32z穷@ױя:㤥,d#RTI9S'{W;K1qoQ[:\ v4oVg[/VNX+sq-ُ#(V?.\LjL]0-L_yYq']9p}P~5ehǕyZ{:l1ezo=ŰLZFwޓ|$%-ҌR|p4^8ݣ+x8S1c/ˀlCew]S()Nmz_+dj@3gքY~Br3ΗkfM\)Kt ClT/@ldW=$Fz/dT_7foͩޫ-ZŊjHHx@ԊKc29i11>f ދAE8*'\ь`NM*9T̴d/rPg.6Bƥa A+3(zoVN B@>8s+x% NL|J ̓*2n Fa&^-WHN\QG+y߲e! ^" c=ʑ3&b/mր^/-kBs. 2}' j![RaL,b< 'b䡟;HxQ#s$ / ;gM9yUS?t{KP>yNg+@#ǤC Ba"Wk (k&ڷvזjm7xz ye[3'~s"]ҏejk&iΐCf?Wl%)|[ZSmr^BVXAByXA׏7Q)Q) 4r*x&%ȩC!F2IхU>!q#H9G"H6Iy\2f #? aM.X ݘEJ:gs&&ލݼ>d_GS gz6%YU ° 1j+;!U-uc4Tc]0]~yI jƗፀ$i2q*UbiUe? wDOoO,w-eWL*':;k%7u:~A p[Ef-> $0QYxaQ1n#'Ev(uNZlMrߵ0N+MN_ʾ Ƽ5{!dR*WSB<*oz) qMccXzsRQGpKo7S_?OwM}@f;0~@4Ck}9+aZ" |HPwka 1V, Z Rmvw +,TV,OZ8drn֓һŪvח0c~Q1f#Qce9_ro&wضp~suƐES` W$W6!'Y"$`X-OC['z}ϞUtգ-K8/Hyi<"b; OU|\,辚5dHZ˪ 0$x/0{+vE(}"uG\"Z׍.3A7 ^<[Q:N;cZ1.KdO<ŕp-Q0mɍ땉}ëDeHHz:U*odeCHݝ4u]{W$v1pYu5Xל[k_YeNZ7Z`/Y/j5Kj{Ψ!&l*Wc̚+ .Q{l>;%{XO߫QMdu\zumsa+{D4^~tg;#J>!4_1)iEfI*!@r>dɯ+$ʢ5̛)j^dۮсzgzPojY]>^n_L^YWMbl`d|(Xx)9 q)sHW\i)4_I =Tjҡn693 i/+΁9c"-Xh?6nTVż_5w0ǹ C HhfhP5DFe||a&2ֆ`* `O.M5b&41Ѩ%qI<dK=[DvCrp2^L Dy#C!C50,b1x'VBJ.-dOLp-;q~ϡo;UÓX K7U] B:iF :2-ͷTO4%, m\YYR=Uc(Z]k2;:/fI67ZpLm:k3̶r~{|#qLP_Xq]*ĠO^ڹ>10ghfP#׈}T Olv(/[`,cp:mbuGK$\-&9iTZIIk Ȋ٣aGxp)= f$QaxQ}^vx4|F|+ʏᤝw5~5W0Y[X@^E, %O`L3,=C켓8~V&aH3reQ`1hE:hʑ}F9P'ɽW;X_VsUv@n+ u6(nc\ĆhyXd/yw cdiG Hҁ6*{Maax'OF!9o_)K6)rdGZyeMaW%=a I :nڡGಿLJ\f;}$;ϯRH۪و{ ,R?WcmS-~~QMeoH[uY(*(쳢c|P<Oe5.tE CW})El e~g~EuWш 96%mTǬ đo棘Hs6#kW5 }}t> fr#Tr|v=/9 LK|aWe#ZbD3N%?h!QHlUrJr*z*Ӡ F&`";F:RA [hnB_yg>c2&ֶ9i*p]ᥴI1$'Y&ɕǾ$#~;W4wG 2F@xlE]"턌\|z.Cڦ2'|54=(uHu&,RVFH|CWؘ*ca̳ }*nT/I\^Gٵ05i[o5vX6I]䓊fyq\s8ujæo|LyB|E<3l,Q;zJ'UwK2bo*4\CuF*]GazrsմJ t%G8Grum컍k$ph/$fbl|%x1TiqP"tHI>cҪQs!R,\ N;0ct@QiVqvkݎm.qIDlNAQUcejFť@wfжX`urf-s#m`H%\?%|)i:y,f.ؼ>z_QfO s<4 y6)H׍eOWv ܕ<7"W\zyd"0S+dɺ9BgB?.ɅMxE׫E0M)h,ňA8`"..ʖOVF\AX"owm~Jr A: ;͊ gY1=wۃCY/Q}7m>mUn (nxکvHֹ^'5WW?F`}zGM- /{KgD^sPi )\)`,fsr\Ob{1V^@s~#O[@,Ւ9*"nzځ|P'~zE/ZN:m~U~^b=@7m?Ae;>fY~AyMKy﬎P Ϊv > @̫YW/) TgUPd%Ok %w߱hU\˵vsMz^6QP [Zw=FȟiuG-v{ʟbqOpmww:@)E-Wӵ#\Z験Xx“7"e;K i;=, l!X SQeۮ/h^sM4H3eh]\znmӴ=Ye9eʄmWxβB͂F<^f6+ YLGvr WBnZ>vecJ S9򕛊ӧٽT)=NlzGhtƊ7`zha!ԉ~&1w0i҆+5X3~ZaX4D E՚+S\fVoɆn5h;NQcPoN̹w#u#daL ?y{ڗP>E`{k |eʆdV,͓9d<plB9)JsE̵YEي[f4S+qlwjLO1.Rwf: G a}g)媹^=cZ+[M *:2F _dP)_/H3]T׹+l)NI FF(!vۍs+uypZBEڳ{Hm aiSUvM`>LYnٰjps1g?GP"&N:Óg%qBD_Mlh3D#Ufvgjq#rnh`f.,^۵|q.:)[ On00 $Z`{DQ/|ji^'xEai"eRl8=r/ C2 ͯ!zj- `xzk@ZZpq5*7$ij \=RzMnW|W#62(hhG{5}CTn΀`awa0w8 vOivT'ˌ`L"ύ %(p_4'Qãe}Ǿ ,_YsE[T5~$(7o^nK>tXcf<'͕>M.,@:*Q& W"V,)U|QR!`BmfԘʨx\NSd\ovhS LU S^˺0 oIVq@>M}%L}SǦ&/ʂ` DXc `mYͱÅ1Jqef´q9 ]QrukD6sŘxF˳?4$F1F%k rUCO:%qZƿK%MZ^[9G?- |*/nz8)ya4[mӹ1$pW;0uC#X\p{\ 8㢅#hCE y 7DfT#ldl^jvNS~ʮ"o76rG"vmrt#Cj,3\D05v1UtYƙLޢ.LVGnlN9<fV;3VՆJk\sYыז69Bj|IE['1o{}`5 -֩t}lbŌN9؏5eT$xhk.c^Dr:< O)6w>$R pаO8!KH^^1:e0vuFShndsjR$NAeM Vx7jG <a.Y?WjArk-pc%TӌhsBbY>qwW!9~8c;X6 P&յVVZy9T |d˴< Z[[uҡjژo1p,_Fyem}Mw̻w)eケ0:Z"oJX I3#($)C0\t<9>) k"0SӌseH]5v=62T}mх#tIJ2&bU7~EC{-#!=eF_ٟM)i"=`Grgl>H~~31/O-iS"fQE90PŦ/9Ɔl62I3<uM;2yIa5yQ9|e2K1BJMɎA| }i6i))Kjn!R9z~,F'hlzEED߾2K'V-9Osxa%~"MBOνv6&`87- YWPX9Lն{IE]_aB) K>9S>HtvnʂF;fS^#)I#s="⣋J, @([9û~}ƨYBmL!Ǜ\iS53{J4AU_^E]bDCT<94St>ţKq U42eݠj9@/4֣\Hvld(Rj C9|n* T#ށES̹믞 IԯM48޳dFbۢԾݑ:DH"C6/jh!Q\%J2Ay-'߳F+$ѐg6} 8!m+Zu*ؠFٝѣD~7g/@?QVN]e ZPy>-ͦt΅ M-0enX7Z<@ƨ$w򹖒3\kO8gљܔgfò{DQ}xV'L`Z=!3v!5i-@X1>C~0mW03-`.?0DtFc1w]Hc O&0[Y*qNrzNŁ^x%Y dA)2ՅRܹwzdS"Ncѕ3MVYC0گ'<Oq5_0X٬gdPS%[ZE:&vEe`P^a!wX䷩f8}{Y:~ʣH"X6cFnX)H-k|;:e̊4{[U(T="YTEo~w`~o+nnrgǸ]' *EyKrBqYG7O@Z]v^~;_Ɓ+ޞ4X Ds 凾۫y/piR e&5OeP>Hi.{@wD*w]=I#lN JZoK>Ҳn* I‘$]}}H 4}1h;C׿?Z9͂=nZ?^y:/57 ӶǬuY#(eqD*CbOd)@ ɓi`GzDaaY${HJxO]/#|n`o7|} P͸Ybwo ^i!aǔBǂ[],؅s#8þ9կ]< 16asyU*kuJ'+ \RH% )ḩHDFDG'tEKA]֑|!ג/i(]^|+أz $A@SGgnW|Dd%]m6C[9SC+252,N j?-iwiqW<;:3-;lC@$hD!9x沖Z^ 5Qj5_Q,~k/$nVQ̠m_l0b]fZ^ʁ-<~ cq;# GjjܦXwZ8id:k_) kkhMoGqЄQ/ѵhq -wEyz͈ȗ&--ƴf">Rjy!yq!ٻNSו"?ف"JКC[#j!v0xϺ B+G~{O> 4b*1Q_T9Z++PH8w(@pe*Lo<4p8+*v s2{< w*yqc]`dշM钍VlP-QZ,kvҚNP#'=[WGɬbq1\:aU1?QD. O\yν"$Q_ @ƒ4(!ub;*DM5W8QzQ|IhsOc=G$&~T|SVc`!)"r3E73tIaCCsQğBL,)%{}Csg9ӻ<Mmeط_Ax#w zy_qF%,&hUW8nS~}zVTha8@^"WҬjzsgd)8ZAd;olnsrH)%kB/YXx+D=-@jOve;F/;Bx vsS[ #MV96ȳL=j6^"fX1tws6qEWR}_ !CVnUDZ r2S욏9Ka)1Cpmo({N| >T\ r>b)_d'NӶ`}`LkEجג98DZ~1|҅"wom%'lmH"A6V(D TH_!'Ѝ^ 2"Ա/Y $mx_C:M[7 1ߡ#jpHlݵK|Rˉ2uG7Ie*LxE3Mx/H|}}_ Y%"u8fXLMH^*_Z&Vl9ph_:I2׏ZQyB;7AO3fz̫0W b?KܠT=vQf'J:"J9H^#/y==7WC4e{ }jwzRIJԥӘ \o!Yo֏DMl90k(™t`.2xphPžsYyzE)|C wֳ[Lbt}WKejGj"QS;ܚvͤn ř}3XqL1K&EEos3Vt&1 |p1ؔ'̃q;+.Y4AWP4KHuYW .lչU L\yQke3;#7r$Ҟ`̷K[^lzy<-. 6c{n?<>ءL4M%9e%C6~ە_Kvy ZqȠn¦-F:Jȇ`YAT|2F3j@tT92㼮nS%TV%ѫ~5*oVw7"z,Ry ?E-aiRyn1KYUv;M&=lf37G'H`.:C8N_V)K+|LZ5GB50b;427Yח(2&֋l(p77>ecuI C}}"])GT)DNV\ԓ1@|0YX@[Yv&e)rj+Qu6m18W{q1WsaIBwW7>aԕ-{\6odM~RR Rme?L$%%>N 2tpCǙ{\ƅkKx0-'J@TU^!yK[@r/l,0*&+zsWP;rɣq4a+6?~kP@d>[AFᑼx?Y VkMkWťLnJm>{5Թ?cbÄ>yޱ@uӞW2#cs27LGiVI'œiUKt>knn&c0>bZeB$%vBu1&uG{_ɖC'o)41UeX|6\Њh徺~S zRHVOO@[tW<hȉФl4L|Xr~' =L6"œV)-ڿZӿ$X/wzm~ ڤ7'@Tj~iꭙa$"NV *ml߻E`_?X֛Q%˺zee Σrc><2ktІ\__YZjVR&G2#1JPZq=FhYӯ4y7.13?"Ƣ^{Fkh 4z8(MY-FLU,T&0 ()+6?98cξ5 [' yOy,A {>Y$<K+YBu.:ˋHPrn83vcG);. M0Sgҹ"9–%6JZ!#BҀ>-qZP:&@"kZ+O^UNV+N1߶-&N[˓$X+}?;>)# R@sdY]®%fϾ{b+@*E2 +XlP> Pͭ^Ҍ2wf<2u ujVų׳Z6#A$twòA̟@-VU=ZMOi n3] 䖟{փeh T.4Շ ĵ6f wx~abMWrlop.vYftȰQd-qSA@^Mi/yME;'(66L?o٘9Ш^ 1ǎ#V{ԶX$R(c(߈7^d`i@f\=ZҼk|"+ Xq[l1Kpio7y"QxwwpjUWQ23Lɋn͙WS'b@툸CvɅN:saYU O!q4[_n0%t]Rbn  QE"6c93KN4 ~6magE`rϯG~_ԏפp V9=K<RS/*ܻܮ9l3 C2F `8yc1xX UEdj܎)O{-Mmmla|v '2/mɱ2uk5J$'YffPeUw1JrXBE=AMRвSk m.,Hc#5qI Y6180O9b+ㆧFѳ-}2pCc@TrltF9Tvcp:l^32+jM5ZgHz$١sفT>r$27Wk2T`2˴KSG3xBEeŀCM~+z>.6"6Xge&B9e.9^WNvd1N[|>YF8DQWŮ&s)pp Yj'v9s+'4F5kp Žu1_W g4+s,;,:X+qb3 &MJFŁ\Q/&7iHq٧ct!:TaZrWx>@Ҟ #S 6$aHFx(Wcq9HE%33 ~9uc]zx#LZ{-WVP,'担+Ƙy #ppJ'8s0iN4$WQf#mhJCkouT~=ta`ّӛ!H1taAuk\~u.6*=O|)W>'N~䃦焖WJeswNx02G AN.!ׇ{nko[U lUAnWb_2]Cq)tnYƻھ)UfjlaDK@ J-RgQ.osuMS:Y˿qPGRӎF}4&V"%(2xv5;͐atoz6*^K:9L*@r#5mcFy*j >1͹O:C \xCTkqMD qRDNcJcZR ɧ잆pf2l{O;ʪb©egj#i-بзbJ yګՌ1KaZDO2>T/^Xg4IZYoN;Q; B?CYDʋ& lKV YYz~܎N_)e|CdхJX:[Í ZOBek[-1:IueHᱦCD{#w4خL<G_, z?p'ei9f˘fn_(t6EDďTVF -L91笔zTd(yfj]j +lބ{4 9X :tmw3J; 3%s[i.&z$$+D) L4 t'R!~sm_\~1rH>ZWߢ#Z =Fw_*pgihh.UؠfvP48LA~C`BP̏veM㙐OĕĒ: eF!{Po;iS hCy4/ 8ZPu@]UJhD-;A%TpliNf3cCp_IX|^@8rL }Vni1yLJDKHqB83GGߋ_e?L#?r>MÛ/JWaZ%dz'1pfezɚ_fs8U Y &E[evw(W';fx-/qJ>ri>7_͈z=k&qK%mjYW[zvWLJ0hs#+BS=h&>jdSٵ^h= D_;k4A2mOMI ᗞG$m&CqP[bj&n#.gnD'iף"?Fܛ77<;KM8c_uqT 4;bc 8!ŭ3Io mW"v xk71Sti[/)woqu#U. cY\!SMc~D'e0^f%Xo%D70bLƎ4 怰&DS/l}Cee?"`j\Fܯ]ϽXc~n)}]j.M=omP;HGi Rb|K=p+})??j>"Yarv,Z7bȈ>l)7̧"X}88PWDͭoҗ+=&-6'}p&]#॒dRۛXt3GEZB}?M&ildj vp7QLP;̔0=|)ef8saS rq#㻀gn`f?.E.PT\`S6@G OAA`aܱd$n_Jz&*Jphj NW\Ͽl;wv\~1!e4.x%G)}O//Y8E S;MZO Q`q~w$@@qW P4*<#*v2Bec#`aK7B4"Qؤ^v#cw F\<"f`d5 .ld }j/,!2GpL.?XJ0Ā5.o(So2;TnspAT߾pzB0D#&13/>Sr<};t)iY0A o8FVȉqzx@pP׫6 mxB]M%uGytD֔#︐H?ڜOV]Q?jjƜn>#p.,̼{$V*,?eu119^2KKq: P{ǯ1UnPS&7"' 0LnuB:w `, Kms.}fv}h N\7#Z<&xWnz([;j{ s8fI+N}A:w yjBjᨯt,`<.g&5.Ssl __"hDO رSQPQ* `UU<ܠy=zn Re%px3mϤD EnuYCZ`W*D سR_FfpWe})5 Rg ݮfwL3C$ob7T+ =1vn?w/+҈oD IM908:~ x5 +xtΞ-h| 8`CI]F;Y0lZIOi XjQ[R!S wgcf%5(v~!PYS]BizA%x [;Sƚ_ՁPzV>^25Q ֆ/ +mkͯʴ_4?9''bx$wc]Uحa/c0\,F]V0|&tP ;Ck.K/ 5n@u ^ꌭaMH I. $/m*9^gGUIVq5#mA_+ϚMt􂌲FB! lǒv$!sH/OySH]STT:䷲F8!2˶j=lE[ r׾ 6+\ϙ >q\-À%KZ{ D:ܴfy5zc=nQDۗEE1}Q!veÕY.VV A e Œt㭔i"-}(tkLolYpÔ @&=?Vtc𗇏Me'~јgH`0w{1լ} @^cD<ߧ1ܫ;e^rۄ`{aojv([1 tXzz;=0cә8ne'F~r$)\% UZi+Aΐ}W*B-|~ke5,{Dht؝D e@lV/0ɼY^Y9,_ $[dMf{N)Cmd ſ2On[k@ -,tDp˝U1Ϋɇip )"oMf]~\- !IUmk&O'\91N\Js:rR$&O|kc >sceMy j>Ӣj;m]nL¥ڟ|P[RQtlJ/$G5"H 6k"pp[qb$uDRiiU揉䬓b{+-;:]1{@o}!aaTPB鷿9|I7:sYWDu=dQ.mIEb_d̜…;kYjZ Fq֮ meFr9L\©60)MhiHkzE]s5[09*Gw@J(޳z@#۫U "F(Ȳyd!jK8NؗxUgF휰p#ʠkYN[MzJtBRdRqQ4Vb)ՐY륵'h<+pb;s-Vi!S;܅$<_y3#Gy j&0_q`T~<&AaNlyC׹-뜪,aRBR 8pё(V)X 70^jqNv$/jʂN"O=]Ue[ qJٷ]sҬG9گ"O(9Iha*\/^,$\98vϊ׏gp8f|Lw=Έy+x_цЁ quWg(4BU|8cPscNl:#p8Zm+4LqF-2P_%<Y;KQڑBB"ȃ4D2x:kXLH@NwNБW9p3&m+*ʗcv_cr5O E|DaL8.4-AP,nQH=SX&jCF"_ʾcH=0}/ y9'OD)z=:N.f@@T@&"O^p"o2M;~()Z_C\xNKeb_>xvv:#xiKѰv[,٩pl4 ]V1@_Yϐ If*vq2~x6@V@ѠU2Om{L.Z^G\_cF7@ m{)AI[D庾=)'TAXA ݯ9K;wS 5E}+<" 0SьyOCHcnd/*u\ч,KۊDNSStb(kw ~ܩy*Z"g03ׅ<[5 b1ʲ W|wC~T *(J/NJ~&m(M13.M&wKFӢWc_%x46@ $LyMA$#$B44_9AE/?˶H h"dRc]]Je"B^?\yߗ]wCD^4@PWnhʪz%ixx͢$CFK %YSC'vEAþ&XN?xo5XLQ!d>D-q/,!XD'DhVߊ7^a|T]:ԙvjyA6wsae ۂ~kR PE1!yyrِu/a}b u~<Hn" "Uy\g,XUxAy"o iw):ٺJ -W~1姮oS=PM afBd$=0eVMeV}IlXyMM;/leLܧ]܍{,C$5A&gɍEȌUU]`Ađ+f`TIghks6S09 dUn#CYPb.oxxEmr;p-|+t,(3 3߽\bO_ k*嵬bn09Vg+.Qţz&guč= 0"ː?eT9Xs@A(l[#/,/pK|9 f~wM_Wg1]9tqAGCPP c KJՕ^&jãNqrSeB$ݐS<+)gn#&mRdCƮ1[˴a5EJnhhDV 9v ;{c)uVuu i/PyY4O/J;PG{EJ-j% BlO2:Q >N[/#| PUʹ b} G'J|4svYF:ms/ y< jj;/#21n1 rp)MEVv4S.pnt(@ORbo^sֳyA06@ S׫1*Mp%~1vlTUP6[B;&[GhF㟜َ՞8wq(/Sɚpo k!+1v_{P<'@B0" d܎gsbŜL>Mw2nbI&Y o98}EA/El \iX`ՂN5{) ≹NK{9WVA2qCLgHC 5z٢y'-)7Kvm]Z}(;mPgL{Ly3 d\8\!GkecpYa\'YXY8qvY>woܠ7Uъ琹Q͟W}o[gߕyqƀns(96XB r<)8\ە]yA67$=P)wHnߝ=:[.$x\ƛ&ACc#?{lx3oϚ 9ɕ2xj;?̪OdYڋ&RF%!9/LǗmp,]u*LrEP g>1o@K?3VF|8jq,TZB p=ND\+jPqE%cw"ftXGSݱi `nZvr_,Ņ_ǃ#[{-4;r>hWBUf9Q@p}\0Į2ػ'/ICw,~yxt\ X>!}ԡGknu xKۍ˭짇<?C ^6?tt- uیrm ,jL1QU\1>lm vR6hOeB5B8~ܫ7mq$OdƨCGn*_x#HF !VŇ[+1aXZ:stWEƬ)fk|,lُtŅi*F}lbTp * 'u@W%[t3c5FN<ѣl6Dᔧ D2,K)tZt+YlP 2f@aµu(_**BADo]RNz^Ry~o2[f"S&H7 NQjw(!/gh:JlK1{p9--Nm,i-TOo8/xʓcY B}Ù+?Mз^Rf$KN31ǚ `qU+ǹ \)T B&%UDŽBiYx;ݑIpÄ̶6UsK? =]ehaZh"WVrn(5YQ|:- LxI y{ǃWU3E[iOGi(PI O( zڇ~|io`PaCA(NNp#S;q|T Ga^/0 zfX}Bݻ{7?klAdk{ZbaUЕahLwrmX$Czh}LaI@te@<&r H &L>b%MpP)(-dw k7m}XrԯkHa c$trBF+-H:\C*ɀ2*8P9{3jt?gr0I woedntBRQgÇVʻ4Y ,|"^԰E82:F8\llNLf%ԖRKN Wt&ǿ`9>Avٗ*I.|%dcsO쬔Lizh& 5QG ^Z w u>|1sy]~ؔ#1x}?0'6jJDJ4@N .m}rvC1Gvr 7ZPD?eR .LH1I wC]+jC-j{;[ _F9zb8Q'( cc( 9yB 4 )K MVtnCYgg\jL!*WF5W`;{>ō58\**,z"!G fܵO?<lF#(ǿ s#`yj8Zq.d<%Sr;14CXwM+ QJ tf \ }.%eJXV!A{[ܓFIko0[+ VY R*w}A7КQ,"L;,_7>TT,yF3~`W1t,GB9QkQ;b&谼d~ݔXTj Q{ZG)\<*m9|) J/D <*$S-4ϡtz9",Ӄ5ؑᐱ-h?L"g[)_29c{DR{?[dqs1d <CWLEŒePK/a$HܑքՃEWA<9HMqYuCHeCz))t 7/m1aȔhܚ Mnq %=mQ‰+fx" 0.:); %I~1Y.HzO,Κ}z*`PvncL!6Erv`8i;3q+E4J5s$-(StrLjQv$2+YijL0&%}2v9 WrP3YoCⵕkd٨ihnkw90D޴EobF}_&DtVZk#[ 2pR޶lBe~׼(ezǀְ~!bsD\U^Ʉ3K<= u >IV\4E0JзOqv(մө*S0;Յh|{)iL`..ZV< d%8 ]mJuLAΒBblJnhGRqN30rNh:}ulԥƻȽXj+vhB|عͅ3B tvՙH4,9 hD!sA欤3$3[jk=@e.:Hd*s+&䞴kZgMC}ϥre 'U,&EKW^c{^X',bx3GҾhMD{..# ۯD\$ }(P0wY5B̡ XƶMq:ē.bѶ>N*"`+^bH.0.WR[:h6kr8t1iIp^q/P\Ҕ]^+(Wa7ZwC-UԛDG+6.T[+Zlb'*>`F#V) v9"D5 [|D[I>m2!* =>G TC9S4rS:+64qJkzHekpƖ i#Mw*dҜ]eK2[ԙrsaɠf |=8)pyb7;`4oid&S7  axE49Lsk mo^=44.CVܮ\W֔ fqߪ/ 0M«تU)£d !t,̧ye.8FRHE+)=RM ]Ҹ`dB^dcTA6fѪv'[TD5+|ݥUP$QZMeRجqH෺gS4Qr<[Շ2b)gP5PR}dZg¤1*jZ%7 l*:O#7^*N C}K/6DQRP%:QDiVqMԝv\0vE: /X.y,UW+<@N[*9N92W9X +]S3<4Aq+ RLR6#zd)s̑8@$֟p|uUݐTü{S{}mSu"FJNnzߜGK¿#3!7iZ&B%X쯍qx R3Ō&9mN2|@fbn7B^zھƘf~:=Z4E >9IK”2P AlgN^Mae^[lK (bL?KMq(忴Q܍X~ a\luD ֺ?VâvKL춣`^@"F|N;'SZ:,1gk jsO|}nUO]`˸Q p.rqߵVU8Hm1" |b~ƞ54-΃n2¢ZX_ ))%D :c:1M3gϋ܁Uk|퐙tm&Ҩe,'|b\4:չ:ȞYmUAcg5Rvs]\v\"66xBP'!nPBְm>X6KH6fᳫ]p0cD  3nګWTBl бBA6dEyt$2yȘ{HR Asc@՘4"k5(Scan^ZHl¥M*jK%epW'wQCxuW7j" >6cϫ5TAV^4E/d(.%fC`>|ꑘZenJ?v%Dt򿼦g4B!v Z@m4w\1fvzO^qTI CUav鹿lbSfrVRH"@ V &$B(2{j8䌫(Ύ# MH㣸Nk}V}z{j#eq5dA T$'v#00%X|MJ- b<˔y®t("\ӱ-^gTf219' xi/N>~ަ$5ɷhKP,o|f@ޭ=We̪24PX0G&iS<Wb F\P WD=\D~bY1>^ nA7PHQg> !nCHe+n".t9"cd~̉Pp@5AZ:3 KTNJ1Ay=A~ }ȅE~kYV8+T ꂿi QL?.-2R C`[dGdw:5't"~~{u}v2 N!Θu\TmOeBi-.i&]aYPh-9TĘ@{#Lӡ^f DH13P"檿mywX=[LPG^ lE;x{PTp<@ N,Ӷ$ 3?k("clv-EI)o^śg WWԂ3>p ^q=/`5}G;̣c!DD/➑ D$.CoLA9_,I4bIg̥ڀ-;n9] *'2d<֪DH#8t)Q(Tevd >,lp,R%ޣx58me7c=:΂b._D~VRliiĩ^lpive>wI~$# g=Vm>fΐ/w앭B%|5){vͣ翋FY; ||꬘a2sRQNof8~%ʨ$Ced SA}+bu"RxʁonT10NdLlF^uS7<Ȼ~k*Ïyi % } d c+Ę<͆4%pIt.E> |P5&v}.6E)_7x)(Xrz;庝]z}OV+=cXbrƖF\`3%h,N҄ iI #c1^d}:C'VU(Dj^~+]N#FiP EHr`gﴥ93*4Yt+h-_C\͖Y0k]3VD& -ԮؠliBun?̈́jA6gM/Ե:l,xU'8yw>Nr Rcd'^j|Xxnxm RsGzdϋ`iàǼK*$Ɖa.<8"\P,h#9]@*?Bo#-/Ty|,R@o*ޝvf^۠ݩLyF7aOn6xDCh:yOAﶶxNC pĻ89r~,;;*X|Q.[9̖ߥY6{ iQ3}} þ2=[‹ q!£IQ*y/ViJe1j qR`6֦qx١4s(LݰR7ᠽh /Oʹr{gJu ) .Y?Mg5?G5B@:vB;7|S+ B^Ï"G 8Eo1V{w\tT(' vl]]٣TV$M޻ U۠WܯG7 `0;Ek [ m!3֘8qc[C17m;Gc@”ZYE!~/1bÜ2\G<~7e󽐁 ?GL8~joWm`0+HVƂ?:pK߶0_y򙭅fE$u)#@Bh1 `{V],z @dVl-'/U1TTQohe1 * (qDrQEl dzR,D9OwY@`n&&.`ʔa$2d}θ@0o"<xxa*l+)QX,rc[:s#Go1Ww3K/h`zXO:uih;qfy`=?^ |vj=W/}L7R(‹d?2ٺۥQ @>f42 @sc/tH8?@Ss) EF]E} 4dt)S^G Ļʹ Q=P` AG-B;ͦOӵ'M*dQuiq}<:h*$ &큻; RklN:5}{EN.8Ba߷KvmASIOP>/ )ǥ3AhU=G?'foRcaiò\g{it\dUJz%wOo@р7=m|G63e7+e{2L9RE{/oQMfYqJQr2Ņ 3GBS%+$>t,,Q Nbè$2A\/!؆ĸp&l`T$rst=`Q?'+MV@c uNŖ U-&vJyEe=µʞ5-=TWDcQ{Re5=[jİj(KVp]V$g\RV>3odoFCcLƤ¤`+H%i <-fh{0 2=l%\P ._I\&,1ܦ7,dVjXrMi4t~J@b/ҙبQ*ﭜ)?+:U:_+}|3(puJC` ޙüMΖ`4Q7bV'Yvy( (;^JAAw|l?<ө3+KBn P^9IIŎk,­( D_M_dCÑ+~!z:֌oFұC֎C @IF^\־bD f@&^S݇pxpsF9G :ag5{Eo3_2<59]e2} \q<NNO9[~kp %~敖_ȨF>;{ ƹwۢ/|jF8[ C@H3@FmWA~/S%s'O/E{*JP^Q ߎ'TC#-71HU+^}fedx҃^i [ЈiwGHbvh=I2 #)]7lxlm 7nX!DiuǕF  Zޒd`?L462|aы0~6|^_3A!kfCF<+>"~%ej\\vP79\-s7jׁO'3ER''7dXG8|]Ӽen@ 8VoYVO}lgD[Q󸄑ؔTVpuU[Șgո9_?+;4vD\9AueK3ynch(~u] B^g,DdcU_ 20>cւ+E=I[ĭwy1V=::Kd?fs,Y-W*:nc{cAй|KENoV[UK>;P-x5P%MDxo9awG+5dBr7mnbQ8}B\0J}ؽ!0~^u͜6k+X{4z{ѩ#ul;b=f thCyPcC0+&/h1 8>)O!l>4VKI/ Qd:E]V` *A퀙FMO }yZ7v%o8 &5ĻZi `T^~#/ v j! yXE7yy{`|=b8K P5_Nc `S2pT*E(! *jC"u Qz-I_7x[C& Ts3 5@,}N58d,"\MeN<.+6Ow74N.~V"-lא|pyr ǺدɌ&0?ƚKЌ^׼B}r ⪉҇2_%0Ж=WiCK*@&q>% >TjG"=q:tAfE7N|Tz8&޼Oű (:=Qî_Aؐ,ٺ<ڊvC-A;}Yd@~JMB71'3BM$]sC=%,!?G6 Okfe v4jN\Wg=fb᝚5vsChփ7-x+`R(BDpA1Z<Īy@4V9`v暋k-J21q@TzV(5R}_.5oϭ%HзNfPKh Pڃ3${H\ |*C4ճ#D Z=op,Z(|A@3,tCm |'¡ lS| c3n;CxJW%Utք1q;nv%Tp@9Hxr<(ᜊL:6ɊD; (o0ëlj}m*4"U14"] _U]H,OoA(DwGcC3Fb>lnjwo lDž\Cʍqq>%5߶MMJҘ:5HeIrmoq.x$] uQi!toz8rc)%Dr,j=<0ck8/[d6F۾MGzA=;x ZGgt:$N PB:_cVRWOn^M|"- rU/\Ai$bc5Mu3ɑX6RR⹞FdEb.qoI{{RET sY$xlHwSvgP(*ˉ0 @FJD p:Siy|UPsX ~JWkLŧO+T}A똣x"8mG\.Gӟ)R`=5Di_^QLDΙ jV%ɀ!(ijּ6̅b6W Ehp^޼Bo˰QFҸ~o!7x>A5w*8-ΓzK)6qG>r GK̃aPGG_9%?Țu88o)HQxEQO؇Y}o-W#2Vq$HI&q ^TkWGy:?۶SGvHM`&pӝ \1tN1V[qCS9ʇP1kcm ;q6M,Qއ?cPF=;Z\Qꔃij/nl7t5xoS3GM>DZ3W'ࠐZpeTq",mkVLPh?fn!_=Nƻzļ1ȩwTQ{ʾ}ԳS.P5qQÆ>i͌Gpـ0dv/,{`SJPA $4r^IDf|붏VO$){EAt28`f}jqΜk3٠kFL'/p=4c<ɷ|X c?nڏ54աR3kbJ:]71=9EZzƅݼB"Rk|J_KU x(cH[uQn"|Lyf;L29&R{{&#,FGǡe`%.nS{V"g$Ja;͈Y58$Fzyܤ_Z!79SSW. l[bUX}& i۪{~5(=x΃rh y;>*.HZK!xӌ '<;SBD$ EB?] E9*^uA4r&6>E^&K0um7">j=]FCP[)?2{ Lx' iSs_@, ܤNU+vXo 9 otغ)8^lAOyydz<<75.pWEX5C'OV_xX[1޿UD ^nGvi8`%H;gyPmfӎQ/{J{Fx0ywV2ӿ四WeR4Ie~/sC ?y=wF])jm;c7ꚟh5Fl;[3JȠ!F;USB nc}3S$i28ƈ-`ڙ I~2IVhlSx;e%uC>k,((?jjY* >nT\L.X~ֳie|,\.x9Pn._PL_udm| #-4@/Pj/T:0%C ,N翑v&[:A8X0L.VKXi҅ewe6)j,F Ytbˇ`WFuҭg>@p~! w?f+툥fD9ø8O.ͻj}fBdG҂ 90Έ +7ڻ_Xe5:L.[|Ϩ]œ}W`؍}؀h FN%[[TBВ\Kv_"Yw@of 4CAtd ;c?SbgyiacL<_-*$tS/u,0yָQpG&qP̆_~0mӤD*v~{2K*_{ɇ>aBS~n0pFTn]}/9wQwlZSeX1\Zg*7.YNmE:8GvBmDoTޘ2YkXWV @xHɯLTu_BB C%#o]cP;l bզ $O Kw Q&%撧 +u*pefOu QW (;hsSs"c)?|j\V}&z'Awwذ!TYB32GY1՟}B>͟ao5'';]Nt+cjL> Q3[Ӊo]wS ǚn#j:2övm Br{(Kt<{DV(+aEzUTaz#N@ 'ta8 9~ QKb!y11h(u|]?tۦ=d&,'=8iz&BpLTc aDǹe%zPVI񐏳ʪ1KJ)sA:c28AsgM{ ZK'YB$9Z"pqwW{gÃ7˹IH j=+Z(>e|L*6EV#&뎿n4t=PS%;)66l!xdG6ekW=wrLʩ'l  qs8t7X2%5dȮQ`{cTiuzn`<NqfiIj-Z+H'5kRV;E:wQ)hj{C^ol_]4vҿ %HM%P$Q/g0؋%}1yBp8v'2a4X3^cA0sMij8ji本i RǭlOXV@A&jiENW/AI_R [Y܏J\o (3J x[(~C6p`+Ak:$heRA}. Io36eb}!wq0CWHϕv}Zi3G`d +ڬStr@@nq}.~5eU){nXJ;YaĴM)֞% $ϧ\xW-J2)Vd%:mTJ2x) 1Y"1h ЃYy4ŭ:s%?(=tgH]oR [S'岖/ Q5[d8 <+oFcWzȢAϿCv.Op8H.}ԇL|K7+{ul'̨FwTF̲sf0.>oй[ہxdܡy9:XALf}\LnO!6G@B*3~j!G͙隨11qsABk50M9bc I pgtʹ`+x\Qn~jI+L 24&ӆ칓_aQ i4jbTPН6_ oɁن`f4 u_x EmE5%V;fU-T`b9/ ue쳮N9qΝ%q% `w?Z W 5pӵ{u.5YGZl')aeX>ƙa bHc9or~ ktN^iZ'$ qXķ|mx %A@Efčsh%z (W&dO<^AubSv2 m Q~tvuj17@h~!L7+}9w-H, Qy*#y YaxV -ȁ3Fg`@dp5] Һ5 `ۇ\9RGUM:r^i0qQ^k.ʁ>؜AB=/t[~53C^~j.U/,]XOS[R A^YҢuHZ$u=[[{Ashm&&$4g]'evT ~ X%'eo։TzC[[~ a'_T_.2ؘ n0X2 '9qĥ}!po]󚚰ԊjBF)WJq9 M.]́h޳}*>;TxƩ$JGŔC'[%EY\l9 m|K S,h$$Wq`F';j#FÙd&QuwZhV]Ł;T|.V#k`Y #p\iil8̌G ?> eV+l^jGyD2m&gz}9/#kG>T\gU>oY#)(<Ӈ8{+$rVQ+.IU\|8UMuV7-*z32{X~",n?U/$~Pߒ|ƒ{ymX@.R0}|KZ ރ_|3eiM #vՖ1w:4j^żpiO R%#DY P5~)A)xś8s{ALހVQRn bl4q] # pMWN˲'*yXYѣ95cRA'(HummoIx-$tkR ߚ&g70բ^rRoT !KdA[$ TW? y kFXRʼn/m" T~Zƀͻ l|O?ǫz-HVW(Z%/ı(lP7`a.C0%9!s8P8-nӇgd.b,|l%`j"Iu!i'؅i I`(k^YK^'iI%3S8eFO)Uez'R-9{A=S$~5 =dCۈ@*գ牓ڮM$ȧxMC8ۗy7$m ='WӣM>;ޞ:ook m^7+Aw63gewr&e^ӎ=og9-?M`F~\L5(>,K1­qqX) ϊ"~D璤ʢbۘT9lk6*   N׷U6Aӽ` ,!ڑUxj|H4ZejT8^kL6[0$ELJcWzLwbDQ :ޢ\'~_ko2 o!qc1yU`a42phoed ;@[}7{_k=Hz6v|9@mԮ+ v_xA̝_g[ATybȽXV w͵"1gg?)'(ZVÙ\Va 8&ØYw8NBZWvWxُ8˂@x~ ɕ6wkpmud=֍SG~޹( ime]oIqRx*븖{>N|%`/ pL%k :Y(#hY뛉Qke%zdǮARpXccΙ Txx@s?ckU9ͮ+nuӵ-Uk֣8  }qC.bPK54`MbCV/O0 HIL*u Դ!jAY!746EB597%yALpUiJ+5aֆ \7^/yOL;+ 3cMӎ9Gby"J)pRrL~ |^K%q^qݐ)˃XR`y;RqgHbmO?*MGt? 69Zhrp#+ŐOB%F\cYjUc?w^+C?,1Dt0?|V[izYN@ ߺpn0܎-%$d?E4ӻl/:pIZj}{H{OI~ w0v78Fxm泎 ]Wr/Tu!俏_" C|.Ѻz.oӏ= 4$}$\h Ѯ֠u;B[ x5 0= d.x(խQabE$561IQw4Z2dsFw7iYwNb3 hWc^[VZKC"lي*85jg"9=':f Z5ʘB+ + %+> ^WkNkrj`VgU27J773ބdAr \__M-˩~r ѷ8Y 4L*Xj+@)gr*y ޳u8Cpn\^H"c 5AR> ~xZv}X<2;iF{tR&~ԵÏZ<C1< zT\Ct)&ni8?eEWݪAmi#W-fUL|1j,̶n(' SG/C]Iوj.H_j`OF}&RiZ@ MX{_rq C?ƫs9ŻҊ鱭sdD N1dgx֫oU#[Sx PĞ `3]/~;$?Dž`h`[2wM|<15.-'Bz3\s}+P#=Z3͋c;DNUXrf@wj $iW c<M&_O&uiw]fEdV {#LAU *2]<4&ʗ]Y--@yi$#B[&^I39idN>(iHᏊnșdjG>!Mv4}ނ .ҁ(5 /@SîVY왈ci8Äy4BV}OZ~{`6tulNz`l>kX5E4x&)+p;뮪0@Ӯӎqxtdxr# ʶ0X_zT?;Wtq@, x6QQOйܚ t]#YM1v Nm*q "3(6EaU&)mP#6W[[e)0pr㸧M:^oqi pI,zh !"2wC'K8]&JA1믨l3q>2 NZtޟEVZy,OhYЗ\b\`j\Ǟv:>Ƈ9j\TNن @F.|M򈲊}ĬUb+-:q쎟ז|SoJw#[o#E>6'x+ M43mGHyȪ2 41[FI6+Tb0ߜzn/.]8% Q33"9:795d6nF@jwiNLȮJEɷEU$,${EU-.%Z:+&jS8+3E9wi׆8=dEWuҖBHf^~;ʶ3ٽ5J4p;c0Va ײ@ŧ]JS{X^oG޹!,2&cu'dhjptJq 5C?HQ6)(m(kR" 6lh'MH񣉗-}*ul.y0іg55'fK ॡ[*?{/_XKJ4ҊlaDC=Zy2AXjԸGЀ-8,4|mf[e8?#Y~-WϒlЯurU$HzJ hBmsN&޴ vҾc o;FBEu8{&(C">9uՍFOSCRW}*m><9P*@e ;s(8c/Rh^rXZ23ܝIi!+}gRh{"btlgcP(W7RrʿjSqROzPN!7hd6ŔS?a+Y0#:[m^/qOY+}t4"A$>m}1$Br^*Y!x@4U՟Aqa*5G&o88kmbP\xp:\V.o6S\ <;_(lg|r-᥁JAVdpLe rYw@YCy,(v@H"nw'D|Bq'_p.[z@ҦI+3A8 MI%k?[igl`ߺU3?#0ףMe@FTonD/k2)Sk<,"-"<"NLxXq%u:KT[ #\%A{8ypdV Թeխ+N9Uҕ 6&gXȾ%,'Ekį#tc&|f"cp8Wx LP֥lQin o e!;7@|'}J>8 DhSl] /'` tX(yv-0QO7m\Eҩ'=JaБ( J*eq[`jh<`(y6]=!CyC++!jFrnĦf Q~<*7 }o_{8&z QĘ=y)MCmy/ b嬸SZI~&%PQcá8nG*vs fT"xWO?58PtxE݄sr ]B||7)}`O M,6Bqj=qI¢Bnd^to=D2! H 2DX mK&/dw|EusH y3UW8W3Lr5`kyޕLG-Ya\FHh Cl|~d BkwT GBm,EĂ8rMTa8mA 9vt&='j V zYҵIT1sxMhӥv5I$|ؒ7Čqb#:>% 86URIp)GʵJPɝV'G3Kf Oײ G+ yHV P#V \'zN9[ּke&8o|qpm1UXr✦jtC}rV`B/ji]KM VxFSFo9G(yWB>q-smz]RCei닺޲gU-[A'MF0{LSt1{$b7C>C7cqɥqa᪬KLI!9ɗ~7lW/Syes!<&roN4dJ`enC Ӌ~}Ε"Ń#H0Q4Kc?]NUTXSU[T\ּP lr$ ^+i|ο8e:Ի&#љUNTv"v^vWa?9O۔Cs4y @៫6hc&Nhc¹Ƃ=wa=XW\8me n*99„XvZ%/]`s`MWn :dqv8%f7 1GLVBJ>ۓh__X-X*@!/ķ&E/q61`pMRn_O;&~nXyU%{v<57 &?Xxj&\D3tQr̰DcpAIR|oƬNffd5>;64"nŹ*yc{ەA(p"~eܻl+`EQ썩 5SBԁ`&A` -[+fχ%۬&5^pOpXɲ& # %y~Իm 4s65=ψ->;9]/ocf(v7ۖg"`&IX_&fCq;!N<cȗJ`_93{`J}g`-F.~UZ4v\(q& g6S{cُzK=f)H{|(3A#:1͙AJ5hU܆$G `✜&t+'b*^N7Ge5y߿4ɗyZSln?.erLlh1۸*;h}D?!!043KvpNfu*,^'Ne IQTWo7K^37Z' Ǧ&p$9@$2YQU0UQM\>04"UT?ک늅A+]\t"~@Vn'W}I/Hab<fQ]G$tm6Wܠ*ᗧ2N2 Uˣo8 jkd4u=~'&Pa̱wΓ'7Q&iO#}j&%{i^!R|"3|&⼁ TW Ü G ]$yhϻRDoK)V4tӕ龧nl!]02$%5ڡwC_McuC}9Zѯ7&VṷL|ՑzAMl⪍2=@I/Pjzk?^,5CHL,g~&gg݋ ƻqDepi8+>$G: lh 7vtQe] A{] p=# y$)??;gV< j]NsJ^KJ{gwA ͐gU{9ĺ@1%+/pZ6s;yb<]N%QdqUP"eW6'dc>|)6ҞAyeėrw/_rL!=u/E.—~%7ފ5jgD~׺DB=2nj9p-uX^9u:yJ"0|b]kpJC &JMiN:I_Avژւ>.#*7@aT.-y!b$_ٰR%^Xy2ړ+yuli(Yz !D;@ڿ"y=JUMnn1K7QD\[#1 [Opx#?euO86Pba$EƄUg5C(bф/H HV֊Y5&,̓!(7149aNmc+W2gODp ϵ GWx QVk;N+YD Gɗ0۵mgE'K -Ϗ fJ%ֳwޘd<r}}G̏8˄rˊJ̱`Gi/.+Zl\62V2hw\0WԡTOY0a/uLڢ_Uʆl++f===ζP:LѣhĻ XFHٹ ~GW'dOy$P P'j6)0oi~Zm7%*\C=bm+h#J{p?;nN9W+\z kR7Ey4O~ӓxBa`rx78E 'fXFZ8ɸGW]bpZQ~uRcQΕd[e>(Zuީ]~ϼH ѮptvMϩlIQ/+_YFghM:Ɨz2!}LdJ&U¢η˞Ah2Xd0O`BXɈv O <ѵaCzӎIJHnj(IȄ:0 qHxVbj"i e4Z `%SߎG(S~6%fKK,3Ex)(HxpZI_Ԝ7&MX`_"N}u2)*[=UxRIis;-p0^"/}j2OD"Ink^zbЫ7/eFsM&ho7|UPƶ+95,55k #R Nϯ2TL;/O|ƇFؕKET+ír"yF/3lwpIqבՐCGU׻Eg}n}[-t;+SPd/-F/M5CJ7^2%Eem% NpHb$;{-Gy6R4Vlr]9 3jlYuK \~Y F}mqKZDEgx"mdz݋h0 Ƚ <;ڍiY Xɲc-?I _#0_58X㘀 *! d5DJ?bo~,)e~KDz+DT^Ӗ 瓦ix "3-UtV }؄hc!jW7pTR&zfꝡ#Cď<YͨOʇ*9(()'s+Vzn1"ߙ##cM,Y1.c;!` xI09s>$RzPMAT;_Q BGqapIx\k̚MJN'^h_GNWR,Xiwd}]YAaR= }JQqWb@ddOz~M@ҙn֑a3FfFaR]r4) jN-R/f

    v.]B( yy-~v&\~O&Q-u%JA>YSFR.bs}#}G(,U 1 @P*n[ɱc|*R~^fdVݖ<QI9$ȧpRt#YI."Hd]9'!Dduٖo! @pIOqYDYDIJn MP4暵Jn> q,"%M"c?i| Ujna‡Jڻ7U 5unJעNђSfmT6ľG*@)3#^ a5wшܢRxyd3m:lû)gg8p.89d5@W=/ (>Y +$=QSp?#"lDYX6ZlAY]3^׾3mM8ݍ."Lfxtd\F8,S^޵ZgHi tsy uQa` 5~c,|msPn6ђX]XJɵKݨ ւ(<'yִ}/83i@w\Th)ZN?}VlIʘ[f§C%Wh͚s/%u\Sy"9kcyH]FLJ4gS+luY{.(N&!N2sqtR@@s[B fsfv{!MĐNiD[XhK,yޭfxk ~ 6e3X9 &qv/T EUkܻPփ 63ɜ}J~ FvZȤY^ *8NG#MʎkĎN BFpp[=-a0f/iU9IK "+ZZ-NPl CBt4y^eK0D* jk USadUp,bVkV Zߡ֔11ocKfו6dhs<(w0[ .Ů0&#TIyn:o*0g]}bP4\?9~kG&|ٿor!UQl?Dkһ?fV' {ѧd G*oHHsb~\|iq}Q1u(omuFoK;Z|h26_:WL.1}ͺ<6C7g &$«& n'DR/Qnn@d6-.q54", F=9dߑ\" &2 ?)(J'ڑUX`^-ӧdss;/f42^+ڒ nPǢH^y<:$?@ ԏ35 ip>;.DC< P޽2% zK} mI[:+OYK&RNqe(prCۚ% ,M\j1R O2AS%^%xroz %pFxA{gw q-ta;zOMa v3zLY`VvJ"ṇrËR#XI'9dl{ ģʹ% 96xB+t$R,g W:16Oy SdR+QW)Ԇ8Uަ_&R8evY(!BPfms?s.82|CWUȐ 8a/ߗ:PsWd`\{oS#ߨ'6mhl1}p{+<݌@|VCu} VK"`:wmuw}Yb\ Q}dDa 'c쮇T6lg+JwtSʓ JDQmV&fn~fk`2Ч+9[BP*whd" <,|!"X7 ~c:W0sf)$\Z1$f܇V ҇#;<45z &ﱷHunaӀ Ets a#$,T@(f͍TSH.FZ`sNL ֯cZWgP<`S"$ӭ/9+?űi@._] (Gw&׾Xpamg5oEa&BQVG\& ˊK̨KmNIpP v4Hkd; ,:71cכx%k=ȉ_aywzV)H  o<= o](юDq|!dY]F %&ANe/-jj xP x*;&o Te+V SLnx&$q6kH <Az0@R h,.]9%\m{Rnu/N5{bMؕsk#`?PRhV8̹w3|=E[h]Ƭ#=emۯnmZ^Tbu?rPC\I?qi.^e9ɂcnj>#Þw&(<䇑&ɛ!HoQcvh3A*ķg7%RHŌ{ 6vr% Od7 lQҗ(`{[`ɖ '~Է3^ZsSd|\k4(.棴?U.hjw?XYYk +4rZr7y"Æ(Er8-we.9cޅ| Zқ(PHz>qhK)3ʂim0ֻؿ$,%ny,DzMe`1!a.!A!Qf󊳥=ua1P:RI%0~ܕ{Hj\TOh(clqU ;DvtN!GlTU[zXHۡI AM-zfr}3 5eQ)!ά×K.?̂L<1sHuN=ŸWP aROa~uiO2Wpdv}j O4 pV8;`-jgv vNX%{~̐~E37j byR|/_mw=mA"XQWM5˜n_>+CurF0ya˶RFwvyrwEn2/YYH@][Q/-uמ Ee /FOT|`|G>';4\,~@$b ) Ba]VnN;{@A< ύT׿ *S~E;d*Ks:x-!!{1|aqaʛV`=!!t*NUW(h6p<"cK0407;N5*{PDT%Y(Eʶ.yjtKZt!nɍ6pML >CRO?s LÝ[ʼn,ԵT:;2m{l[xA+[0+ :1j-恶$xfN7%D1%1L7 4NR?Ŧw{: v <F]߻5Ŧb#/q3w[ogӗ_MP 1tI`2ܢX -'FfLR~hBZ y~PZ{YkϓU:TX5wya|?yr%)})m>)] H>KyuA|z7τjE[C~DM&ԫlCZ,R+k8|w\#6r^S M"f/Eʌ||񃓛 $E"ݲ>R1s(cܤ(ԏ [zn? 6Y]Z&np9[kʟh{e9)S??O=v]U]1\Fh3 A8 lVn|cI`:`;fVk.wZ@ber`di*88n5dfbv'G~FIM. 0gÄ*s}\hpuԇC 5y߃й#HWr |4좋kZ] 5`T.&3 ւ5k6"UX+MQ`QB4hJ[zp\5JZM3AJ Lqa٪ гe Raލ$ dy2E_s5ܤ"t? "2a VS@4e4}ǒ<"Pr쏄y͐;߼zy?z|꫓7mx\i%8&W-,t/+&V9yXLve@o%_]GwMh(0E)rU}<*ioR} C93TXj ~,𕶹nwF5HROc]A*4[YjNKCadLy<0دYvO $ēn HVj#Sia+ %zqY L[d_sVa (&{u~EcQ/xF ZF3K|E i(%Ğ;kjyW yM3"> TEaƜ4UXռ~(9 IWi&{1]9|ԠCu%~je=#v8B "t1: t~W9d/4pVNA|jbyK!㘗)ȉ4hH/QӰX&y6D_~5Rs)Y1 ŗ1̆@ P"̍ڛ/0 vPҍE: Sunhi-4"̅ ҚV/%w#_b8*5H"q4TДlGP=B"x_7YhۏGvOA^Jo)쳈Z1w~KT4 ɐ菣SjA0?v4e2t03ݢᘨ].G#}ZD1;{O;^}: 34JTJ#t7F8ߡϑ*Zqo5?Q>`Mg&uuFؖ2~2o9riH c1jUNm\kRJ%ڔ !D1֐δ " cEn_E~eշp(*Hhp})ޡL \'U)`wX<<EXD`Pt 3>,Н@D%YFt!K)y>۲+ I(J\b:Ht˜_dC9%O$#\mQ/̩]|cRȋk$rTE8WHX,FI\%sΰch7$糦~Kb`2Idt(cQ_"hbՄH%p`bhl1lZvx[+5CIM AƋOFw<>Ӗj2oUղ,.RԹ)7.mB \wbܪkףI0Ɉߗ>18ud'xg.&ުf#Z˂8z,y-nvT"(V1 swSf5\oЈ] N,m }`m½71bCl=$ܻ !ΞRT~5C7 sǤT ~ATU͇ܮ!V0Gyܼq:H&TLl & gTK`U`q[Af:fw<BAbѶ iwR81c+`M9TH>5bLzRkV2 Sk:.iO) Ybv`x%2ٯ{~Ð@zӠv쏧8NlY@±3 H@`H37s{: "\?mKhw<m2\DBf1*I=M@\L0pQ7{Aͪ`mu-3^BvG}:[dž6-]$i惺~翃a_g\"02EF(%ms(6lN`shN(E՝b >WaIMwMx3xoHͬ TwI&?(Z=x{qzܴ}WԶRr+>YHL)p6S#nQvFx͊Y_l,]'/i8 UцLf=+|nF}Wk7"탲0 ~ M:z dtD{Q] LÒ?M&~cnC\f#ֈ}[CoecVN3ZxUTX42G+0!4ӂSʇr' >No` z$Ӵ3h1gH2ڮ s *,\ԇ)o)V￝/n&<3ԑXTj5u"5 67-~څ ϟm@tCiZN#+шk)L"kT8I{ HiK\.ξto|ZЋkJoOTMH ,6if_ĐTj=$+R/ ~ *f\Ԗ_Š#@X#0w-B3G}XDߺB2IYyӝs%:|W*dMQH72sT+Yz!3 js|/Ánv)9s/8ejY ǔNalqv*L_.+B+Z\ICX`-~Zk\}tD; 0ÇbyS̕Z yrtrϣԴmqˈkߠQb>}U8;,X1i9]?+LSХlZ(?`c:m8XnxS@P~H8kO-bv(ԌzRQT[ad ~ٲ)>.^#n)ImvN$e7ӕP* aGU̿>@*蕿qo鶳숝X&/!fbXf.Q|\ IT ::pMeS q"wQ3ZS]HY jqx ƥ fܮ58=ry a,qג]5jV vu+jvf ?ӭKP3  m8n%blP3:$^є1zdW【8wLP`ӂF竎K@s@,RpuKw7E$!^pL߬dJϲAuyu @|{tg]cpՕb$TK%}Qڒ t*l f8 xLL&Wt$Wa %jUYMndk F䧵oKeK/fӵmrSx װWt{3[m[N u_7˘'E Sha{zlHmN* ;y9="9g & h]%1_%>?m-NXy `I"":snwp]|'/NgL&q1NP:\9׬sNg)#FDž;TOkn?ݶQ&̌͠Z&~ w*tm9xwRbKkKYS$sUzإ,x뒜pH'r<.*Շ&,%0)aQFA5:GQzvz=y_JRϺE%wdK I{]/=fZ Wq2^YkkN [+Sxjq ֦JCAoľwGv "%{A},púMv"&8nr$mXpC-)VKwIbrh~ l*mDڬqKo"g&yOE-DfF٬q!+/ MƁܰ^h\YP T?c3P!"{ q!X9N"j<xE4!.Ky(J6g*$Nqۨ(i*#0zPJͯb D} AS?Rsp4rFBowym̍VzBVpDy\[0dC ݍ $wbPĦG?!瞉L)2}.+؝mڣ4PoEueu]C׼΄gin};Pa@(sw-S˻nsOs,E.X,FL^XkIgfЌ2d.xXg`eehe?/hҮ?/.UDKcܐz1۔"Xkq*CR(Y [ Sh+!lE 7$vXghKTj@Пݜ|p\h- q#oBQwft~ē(.f(wBαj ȵW0϶ML9@FIPoZ cW̉KXj @(o^:y"OzEa`nԞBphVpEKL5w{Aqyf($N2&nN6KA,( p@ `ϙiʺQ^HD=|"TE6DFFd伂} f @xRS $&1Lgg[A}-H6+8m@aw" ^}"4N%UMimd|b~[€O'A#*X_ X{4L0 7}KL[ꥌ9\A=x[19yl_Y ؕpza=ƞ)k}EvK@-^q]ۨ>+r=vs{\,i'!4W<-$K$ xL f\AclD+䀫].u "Ls M՞A>)10Lܚ 5G "ow.\cw%<XpPsV͝i-+g^`1LoV/9Il # `iK;YKWZ`V*Mw!n^h\TV 2J*ђK@专7cm@"0!cxA\6/iNR^5/"0=fS5k'J>"vNX|ueDvpjQyL&c`S&z>z ٴGjų Rz;ܼ5qami.?+p>~0 3 |m) BLUx3^xL+OTL:55T0N lC-c'g k^IIlV7\xsxż8";n(nT)[|}I!tTSQ |,n wp'vZ\Ç?c"hiK06c-eUU[T zӲ_MGU6WWj"C07uBCTp.sB1Ll ,%62VW!$̟@K>Z%nkr2ڿAIWxP$HM8iߎִikۆ<2>KxIf3ߋ+e Jb@q3 x(F2 _)1:H#v!64ԭ\ o1~/ADV\,գqQn`cۍ̵ظ:z-&{0FJ/2(z1T1hؚM&MV 5&:\Gfvj5>*m ؇=ڤ=, X GMRj>fUxF'o鹾(u|0rUS{>9hc{=:޷7!&7c$-U{}Q(:m9SmchDd 2+ Yr8p{u]CIHѴ |Q<)x.'ڭ.K!ıHɂc)Ӆ;sP.9S>Ql2r䒭381&gAD')Rv-"YN7,9 ` p SF:p)|xQ !=)'I|;.qs\UbgR6pW%79͈^v 880f;5}z938&b_we-a,_!U\N9K$45B@;t ͗;ېP5hDdJTMw$KerFu}FBZw8XDE ,8j!. }%m/LOD5d\ !P mMLC=dAHLL \*c(5!i x">~5m1bhс|Z֢k涂紩mgW8-A r z&i\Gߙ#.駉wt+p`~jM?ISҀ" Fihdnܔmيlt켯'6{fN] 9< bOO* ب+*V<ڷtY EcN&Շ<)C{b7j掁|}sSgbŇlA W#ё^7R,Ջ- [<▖>a‘Itcs,^"gw +TTCP1PL5˧($u";=Ax@L C6PFөz0_' ]}ī9:Kw北]?F6?T~?I )z"oeFGz?/Y¯HeA?U SP9UzŇ:n+#>ągxXn&4oyAӒwm~HU/߲gEX9?_B@I<@Znq V`R3gӱɹޭL^>(¥`nu`߾+&㇒Ԋ&K㓏sN{9 ^@Xt 16viԅS5mD]UKARM=7n}fRUj~LӚ-m^Vb}A0C)][Q5^ Zյ~>Yg'T &o~eZ?IJ֤sbm}N !F ):yJ,̶ Op\9H%zQ . Q?-;Z^ƂG >qlj T uBF 1*9A(o TY~s+7;}ˎ>D!ҎCagJ6L^KGT05bY]n_j^ oz,-E$پQ ;D\ֵo;dWkU*_U]l ߷Rɒ:NԈ7ߤ~{k'IhsSGN=7 vX[܁ҹ#O;Z뻮 YDž6e9`ҌMz^\'CͬexϥbηhD*/zppzӒYP.xL@6qRNT3UUr^:D6D6HI=YM$1H댟qj49?ipQ4^U*f?:p6XֱF h) n k4쁢Ҁs18}]!&BV\'@ldDm4Lԃy.F& ,?~< T-4|KC*)C7q˯O*򣌜ҒU>D(n91 %zC~W^Шz fPE[F˰+nOJj[EM>'ZmHa7-sMÚe ΁e`-{7H/mrn~fBWY⏴C&CQt/3/h:P^kV4"򸊹8j^PM nWoi8Bkqv&XlHtq1bVcq[brS`R-Y;VIjt#EjEDTknzIgk$Khucf! ,F@a :eޘ2 Ud׎t鮩AL7II1%Z=(tf{ng;qVRCCd<Ųu4W uJi r?Hdc=ltwjgt]Y[k CVn9/jcSIHUGQJc_ TVmjk" dnoN @_ ]9'g1v1f[j|@!"Yo^."eaр =bNH9/:LQ( a͑ ?LT va:ACBdXm2wcNGB̗.`mњ pJ1*"ed^?P`6T7PpVig%C9Z(= >ZSv?/XR=-mzcIS_s-1vp/f sjW-!=PKdav6(э~0Ls${ҥ q Yl } puX=>OizEXW[? r/C&ݱTi9Bph tZI,9HFSHmꑦX` 4<34vjiO B~i‰%]Њ[O= +y{cd.ۚ8qKyh$5lakÞClfa+w{UO+v0-zGqV3蛸察V>l)N {YwX;{Mf\fgiM_d,s6EK =Qef^s*]\ qY`O5MW=WAۛT9KUQJfGyדB⍷h&dL#T}*p<ƒ=¥@j#rCT~#* %qksD4{w =ax&=s8NR2 I r\ّoѦ1;}J}[uDʁBڈ J W& RxqGPizhv]⓶ fg5B;G + X v4iྻ\w|bhHZ4ڥuw{M% &,*da8=uu A^gQ^l=Ԩ^Y~wʁ9w#Ss %kP!wԊdV+2)#ӖU^&4M:Dq.j -: ZA1L*mt{FiBX+zAj(ɬC$|UӾ I0= r<`E_rpl|N}VÂ{hJI^pP&{T%ua|/Oը _`"SAWidTTL]ZHw`ORP*KpWh tfs$0k x]ASOBݠeh͝ײ w\, ۔K6|PƸ_/_b : :[sq I^VOS BXKA/=/w^JU' \uW;lw =$Iz! 5k0x5R{Ʀ|Hd`W (_H )` p}&-uumDf1UNpV >b}7dh|u_ lc)1{jv]vk*^GMTwA> =5tՊv;2^,i7̱&ӈ~{IKlS+7&PěG>Ajfz'[JGl94 8uuja.InR%]|]Gϡ*$+C<9VuLs\7N3׽Qs) q1q ;nII'1[I FZk  D?f bԮ1Hzy@)M8sޜhvq!.ɦjX .[3A'1-+驵l`"FldjDhΨlEFvBjU!rVB:QO37Ⱦyw\_b6kKCbn뗵igh?i!>\gYe|KVﱉp!Qdl 9Ut&vb"tUL͓בc0 Ia¯t\X]ԵW_Q11GG?}3^'#]6be۹jNmnS_NR:(;c)n*)_eYcfכw1_B1Caw +PSˆ*A=}no¦2m7謋 i@fӢol Tze|H:UsYwCk2w>O%ͩj4Y7X^Nrҍz(fW#өܹPc i0Ϊ5-Na *ۭe_xe[| <8,g0.q*EegvvyڋgA ׇuհ;<+4~]<.Vv-톙 A`s VHHۑONjYUW`fcdX *̛N<):%uY w~b|p<nj?4UzXx[r6-"W,`q?Vόu+ɓ , 0H płTBMt_*&gsN;kWʳs0 Mj\5YȾ7% )1Vcx06o(fYX&#uՋ ȀX۶.8Hr$.c+GLO[U Ԝl)3M ыe!2\j9u upWwcMN¹  %^ΝW5.[H /rxԠNaVxzsiL?Ja ,1ZȋQ{֚ܵ4g6@%WPE7aOu0tqfKVPst#?: avZxQwVzaRjhdAu ̧"CLS04%F T>G_mBs=jʮPU2  :55(!g 'ZS'W8|?-!S˓&0Gv9DgpAoRȰ6M&ro@ 5@M2̒qƒVߞ J@+/(zI?^~tiŏnyc)~*V]&)"/5 uVmE['^ǫn_D +K( ń1bS(;vvJeY_[ŵ 0-Ȑ^m?'ܸSja0?bmq c=(J,\H>ls~whHȷ=.{oa,yY`8 }";wT'JW/ )5aJ:LG#Wޚ|=!1 lmzR)m<#fE93B`e.e'^\з"GD60Lر]kp0klșxJAyO[Ֆ _$`ok~jHz]~A4bolP(NZ\=݀as9ڴxDmBHX;NWb1Mg[1_(Ԉ#z(|eJLٷur&6py(rKSɓ$_T'䦭*Uj&68[EZ&bis*(í}]CovR|SWI ŋ}۟4eJ4"]J-H H`*z8_E ,dYܷy$11!]?{qd* 2נ3'p\V0;R;;61!՚KcTN[;"CmEpк#po2Wn~丨V3!\Z'gNWR[獏h`~%SLa'Y#;6_!9r21ձ0( upVA!j0y0[!9!!K/%\=f ēJ+II0%h*x}V& ]טv+1' x@nJP}O$n *Ǣ2 ü㋓/X˔toJ1l F@M0EMYCg3/8:)*vBU Z3 Dg|p|~/TŢ7\֑]@5ڡ(6> + י/u99khwSٱ7^^_"`ftTS" 8ψ}S&RgL \Iה # X" XUŚTyIemp^[`F%_abS3+ݿ`oٜKVe#L#kNsOrSAg3 hC)<^sB/m\%M5:|c:گ8š? * aovTq"DY {k8I~uǜ[*A_Եcjd[Xk ԽPH{QE D̜ߝ5wOBHfD?bµ1WDۡ}mb}1e0ت.m^1ƨlޟ ZZ|3*kekx(e9,xA }mj>%žHaMMSf偶zۂ?"c 9r76VhE1Bp傎fo.#>;#L3omNj nJR|Bt3}pY*lB*Y!o\ZUĨ:Ιj Ns[/ΘUI+Vk;}Hz/ G(~@+Y)H; lfwJ\;_2$d7BU ūڍ@Ch-zWD&O$>lvcdCpQkBk6꾂e°>߀2'M(Jx#$l;p4GC6C%?e Ε$hSxU"!C.;IE:vjY=dxqJu~}_lXaH RT: v!xg w{1׏Q}7A PMevw9Ob6bp.Aч밧]a)T?Ľ>rp_"uxq]{m x1#TMX-:@h:![M֘ҏq}ˌOXma9&ruU?T'/ ~]SfFwqA?`A s)R큸4_&oz~>m3w@l㑻`uV ̦Ǵ`Yd DoMA&|8T77-r>M_$A}Y 6dWL^Ljz8BPb- 7#Q<n>u RCF WJCpޘEi Y׊{zk*QLmڌv;kޞslXYq+rY[tvF-o 'bpoKC90(ǟ,i+A%/e{4ΠnڻZ{+ r0?Ns|Q蝤g}yd8غ38ˢ:N,k('WgA bSM69s٣Vv_v-g5>h4Ϣ^7##3֑'(04 .ʿc$v_0*Dٟ2Ju pJ񥹤1UX͒bz_:@|lwK89aZ;tcxiINUcPc}N{fC-}>AW`e-8̀\JGZTpщBC<sbd|gEV`1!ܮS&I8g.!Lm^8WFo! ܌mBfF:g7%ޠLBn TԖA_I`^/|u5IYsތYpK5 SB&0zc[q6u=ms}~$ e: @v! 63elԧ>n*4 B›GgM ҳO+_a%q3g=A- >C Ye7 fp}ǝ-!Fm څ416qE `>-MyxȬs {7޲;[TYef?whpݔ,p pT h} zt|v9<: Ojs+f/"EQ)XIy5 lQԒ=KR7$H0T<4-KtipzPA0@o̸yڭ9؆&zr m_x`]|bżL:CJblsvzu8 4c?V>5 w$VmVLNF 9}+b\Nh͊XGyfq=A)۽zƗΛ/-nxsMTi[f|:,@5ӂhlC1#FBdfyɼ=o37BuCX&8=u9VAՂ {_:_eze4'z5ʎ#TL;08_F/|$&[E*;1CbVd59w`vfYD !+i}oi[$K޵Ѻ+SRbEZlZhexT !7cg?{t "di( ց]XAac-r^`NH.ftX=hea-)d;~PVnEfop@Z43F\l:lƇFK61'"ⳝ0~N4+6$ Á`s$o3<^mQ؏(`Drfax[rO ,v`B'q5 FnwPb ( 5[5FRP֡(;d$U |x]oc[9 U[cDž x"[] LNw"@s,,nwhl`E6Î#Y_` G|&6vkEM$S坴wSs r&U: e23c6>KKL<ۻ'~#@oSզ, ^蔁<,FL5@L?) Tn2ݜa?d eL_T)!ja G4S;#K5'0[* 9V 0EOV˞ :}B*ט#UB9p"bq ߳D\J?|Kى)qVjbٴ%Hhh=LՒQDō-{l$60e|KiӸyٸ8KDLM' s-SK=p`JA}H9a_G4,Da*s).!Z3յ01p@( ^,֨[D_іNʏb0K!_#oK$J-嬛 ΉfPZ<(mL- &f J#u&| :/q0Mշ#D:S02߳ b~~fHζ?&<8߼@< Rs2*y!i|>kgq} q:X['] >;m_|~5䌖а8HHg:l +=}FywU"e>`|>oK܁CxdpW 4Zs` V8₫ iCd`尮 V7ofdd|Qt!;OoDmS+6GPnzԶG#{{Qhc:{׉vţP|OdUi.Ԍq o')Eo4&tT rJ WտJ(>0]G]%1rxDh˘{%Eu I w(*cp÷㤜}jµQlx0*)ӟnOut ɐC%8ir@l):U7l_އu\{, ?/PB|V>W.ֿAwc+l]ϼ*Z|6#a~5ݚΪEi'C'q7H#߀J%)2 EM+zK4cc-FD:!Q˿h'?Ŭcxb<իbFT ]P!뺨:iomHhS-ؑph/G_Do/qw/o`8oD:AF}9=LK@+5}bmc 辯ѫoW2vCOlUR9n $E!gB2({~5WM~(+ 1/L^@d>wĩ 2t$6No]b:/ҖOoV}< |_ئ„Gn #YNqu~Q>9 l#V;nS͹j@h $U٠bSsE*9&a 6L=JZ泍1_j }.DKJ1#Fvb WKٲ 9'.\cVY0oKu<B9 ~Lۛ4mbՎb4{VP4z0Zj* ΐcY9Q(,^ gں; gL? mrNfg Z:,倄0GNܭPRskP D͎`PTGz#1<;w>va#pU#2K= SkEׅF*gCJK~ySu}H@!`6isQJ#%͊XH;ioT_h@~ygZ)¡>3v.[s|h\xVo05[Fft>~lD܊{LjA?xBJ[\S-87ȱ$_3Y}#kE%fp9UfBw.P1U)/Y t馮1ӝC`yf1/tck#]YTk=}?yk@?5u&zEս1EsP)r!\gEV)#-gۢ. n+QX-̦z,F&k^Mdò0Y0#+A}@|I6tсQI̮FkTW f)-):uYfwCȽ/) ~j& wC;d$ta'gםL1F'F*nVb[`v Á1=ӡ㾉%̧=V 6 yZкwjA 3VpB),BS_;"mq-" - Lt{+2TEEO?-zBrTm-~ݜ< 7=ǒiCTK/b#x/d axm~s,8a/Ɂ[$A|Xz]߅R+&>XQGP&{Q 6^v5 -DRU4; ̭$AԾ!GX b&KNclbLzR!a*0dE52+"gLLIS= $cU6^3*VWzM5<\aل9@1uǽ{]Zhν5/#1B tXQrx[?VsF,ipP'}r^K[$ǝ~&"47B{Zc40OY c3D-{%oRָ_6#@*V2&^°ؘR(2Up%vF\!#&4ћ*&J@x(_w;K+cjUΥ>{ R617S a Rx)aZe`F; $\w ʲ.XiQXukPChIcO`mNQ 8hɟ \ 1"o " oaJ]|7'Ց`,T$(,nW*3i1Đ͆_!{ٝ7~zzK{ EzK!G7CxGÌdf<|.<$FüDmq>j Lumboh9;ohUAFb3iW*iֶɢ[~ml;2k/YT2Hğv?nձmFXOHa좥G5sos }[\Th0qJ2.%wG-?<>C6˓߈= \ս0z0҆Df;$&WOvsv ?z5~Ufeg3U~;'0w5BZlZJO}|o]1MvLUCUOڮ0)Ax_L3 Z+<` !gcI *$t2ҘnBTL8+B8h6NvE⃒Me˗Rssv-7ōԃ0soY8hɷ7Ǐ)#R0JJKiXLPam_wf"WnT.&쬊4Z"ݳ|#vC3Ҷ^ Mlӈj keed]LjvQjYh(߼EQx?at.2N]ilCҒ+3>j#E\^n۱ f+ßwߔf\6"(e8 '6qTAv1{ E};aN\虉0]9CY&Dyf$JgkTѐJ#(ep7Hk[G9ԺhEP99A%\KBgy*_=Ud!A2ubM3n618p;p>7Nqjv5H0M  t,6qj'f6'1Z tX_cŒat9â^g"tcz&aQ;}ySw *+Ʀ B b1%upx7tf1([p gYBz$u/hr8@̔v/M|xhCS"m\hmG'2>wቾS8myc^n#1„ -*ud⼜, v‘<( IffkHuհ6WP@bѿCJu5kH_dUزǑ L,5 3<ʲ)T+nzMdsP1O7^ӅSs]AF[7|o=^@mq+C&K gR ZQL5|~f@NJ A6 uCۗ{M8A\3kT# E_8s.= cm KJKtM0]BuB+W6T`X,p; Z.D\7n^)vq&n"G86`sJ5#Q,7vΒ@20NC9Ш|1C|7k K_0b&jF\o 5V p'g 92O/,1uG#+VQk`A.JKP/nz~G^P~onA2?P:o,FZہ-8#% `Rؖ~ a>FMaMklyV-r_,D?$#sK`ِ}6ۢ Sz*A=l$SxQU+lV_X:YGu O+`tǴXxtr`j?QSP`M'۪ A? !$sI\~ЗVZ)5Yl#d(Z%ZM GKZf־Ø %`zÒ6S޾dBiN'yKF:%V==-ԑi2GoSaZdG[N݁q昱PҒQ5q.qF6OV)x4B،4zB @HH!vGˁvZWVv0v*Xv'%?vJBZ<*GOeWF?]ڋp㫲/> +%Gh8:ս,BAJM~@&8дh{̌0 ~eL$)ػtr(iekxDq WYOwg8X5ҟ%Vu8se?4D&PJFĜ,(\CT8okgdя湟IΞg{ 6oFՑmȏ->–9`}؅.%}C,YyzزK)dk_*mxFDh2ʜzɖѺnj#AfcL~5E^E^yȵF[8L_WO+4~ dEoF SўM #\g MLIZ-`".eoUO!6 Uq,nI8vJ'h?TAM蟉8œTk`w˺xSfap::h"u2, qDEiSBqpi}X7=T ԛ ltҍ9ʅn`by5Tdx7P~%P6Ѱ_T ZYMA€RovO 6 "gX- -VsGB,dObFKģliA&{:"fOMSc} "_f}݄kړMݡi@E6;K@ }{kAz*Ź(Ul?fZ @ k`~8)Jp@VZ)gA{tvթ3~?Ο~$ˢWۈ9OӶ(s,@, jĤb~ u67rb8J|lb׵tS\ 9`60qBq1(>Z2zk{㽇W*Al3j;)s`Ύ`GۈK8ڏKO/QQ_'792ztԡ!f1|E=ObAXP60;߹9ࣻ3#Ke'IC7_1 5ӾW β@;''g y <"Hg~g^;ɍ ;=#ΨA4>tM^f`8,LYy»aW]z,Lz;L{m%Dq(٘DcLlс_iXHɁ(5 3]Yڄ{A݁Q)1p3ʶ(fa;- _Unv&.ߧ^qo3M Զ?n՘ߚ5~8Bb:+4f_P7SdgٱFU`uo|ͩ& ̮y!o`+ M_ؿfxmuOa*R횁%!p^lxizka36x{4 L($9s&ЊEgm|Bl@nE4JϣwMFL4VAps2A907sC f}.zF])j,-Y{[x-p) $GRZ_vԁ~`oCw*Dp*H&ϩfr03FjZ5OI9oŎ%OpY^/ӃX@1ݰ[fyl#A9(;2sfH;&=7|Iq^lj L܆5q 1w[M},H~. T.X)BQiZL33 sb6 JQavbףh8{s jgƷ3Zw(3*#1v>u6g,F6Y zӺ8g{p}M z "Z h{O)ۿ2%ЗgQCA GG߭^T\qFz9v 1Eޓ1fRo,(GrNvZ]yWc=ެ(@6{|eZ"2 74u҉a(4k+h<=7td"dYqe+jJ5 ,Xeɣ.Ĺ #vc9Z=qoNJ,醰 >dWGhGnn F{U4 Ot΄ aWln:ۿLcXr̹W#kOK= %n0Q; 6LG%ش=ʗ_/AKކ㝭P|.LhO $4*(N`I뱶攬*abĠrn-][w`B#/a]c[PHd #R3n r͇DW jפ(&g:4jsp {]_SvQ HH&(ݢAOR7؟S0Xd+RTa1ScIn򟺀v|{Yp A0FPܳ#<22Q9E{Pkjge~|EH>N_.OtS%Ku5WPY$C-Hnc^219\E*s<FrOdl8Íb[S@~q5x1L圶u yhj ;X:jCŰҵ].y2v(3?"vKP/Yb%!|Tߥ`|5/}Jͳ&淬<q E':&wUYOͭ="%Sauhr m2HNBty|G@ʮ( pԌ60]ݕ-Nu薽Vy՚ Mq3H/C4' k756K>N&3Qah.Ec0Nxɪz%*z/ $햄o8mJiUnΖ~+PJZ#&s}޾Y|]S;B<#)\*( UICXstmCr#&C&K?A^Gu9Հ(CSp I*kSRcz.Y4; 䵚\O+*^p<چ!*ڥf-c>(Ĝݺ׺A]H.(/ti$.bxHl'-|^1؋6塸LBVЅǞAN J*摮 $P#YF`pZC:=]}^cCگ9GZ$oʇ$uHg8@YIp(2h|;6@tzј @q4!v3̒7C8=SUKOB%*S'=JuX=4*PT+v8)`pn"﵃YoܦP)2) Dh jJªKn4"UO04ق`m]:o%ܓ7WKF'mTc.g`|lx@4si瑔&(12y4ۢCχb= ]S B8B9`9ʾBg3^'ג{j+kE,S z=a_Gg7m$Y>%WINUV$14^ܢxIQVarӛuVh6W:eJC]qbXaM2;{F jߨHqE6wrկyLLvB2w]h Ʋ\Ssfaؘ0ҕ9W;.PĎJ]N4*4K4(/uLZ u9JA^`lAd"&< ˌ݊XyBQRm˨N{P=ZKzPͶ(K.1aarwE>WKK]WY '#pi-|EW>FOYEq',vF59~sHϕ^bNQC{ eM K;8i3l}sĮzِ!J0j6`Sw&PSjlZ>7yaRHI=u>am< pYmw4$Ԃ?hLv-w˘ JdL{^1q5_ɉ/= {PgE9i!X/Nm `GD2v|t+=;CcWD'd[:؉3 dq$iՐb”ng-%2xTASE͐T 854 dW?lap&0sзt2(t,-u\ēX:. SXRK@cV.;ґD7ImgQ23n3JXQF,q k\ 4X<򐍹)xK!Gv+/ǴE1[z;vXy IS2e\`EI`M==[P(ՖB5݅!?ݝWp?QjF_Vb};.;^KWB,KtTbTw IܬTvuq3)32(,Q lOvRXT#Hz #<a47EPd'c2`{\$pm2ɜWJtxD% r=VOE `07mNSMNO? '96gSFr6z̷(``c`z'^ӺkµwMQe_a 3fv2Qat_T.<EaAu!@`Z z"Gs&q!{PDn`QW=vΫt_: ޔ2Lyr 5G>-֚]8Ymg|m/E:^s_^vk2J)~Y2r+_RFwYk)-:{RG1IԇXw6uTfuFp\Q_rY,(}JLd̩%P  ,tNz:{~IYo1_Ok@!m͆ڻ5vR7B^u8~Q:V8M^pCfDGQR v \nYa_n-d[puFqGFVe|s-/tۻϽtI梡/U>|JZNԐݻlF"&9pۇPQ@sju'-4~(P3 ;:+$.gշɨy<<GٲAg-E$Kc܀&Z^Oý=.nd Q/Yb(jLXV݁D+av'oN4SKCǣR@}h?O`  RZk N4Y݁5F^%mڕNW;CCs&NGI^9v: uT0n,@ݶ&<#jn7d$+0xJh+:gr>[s #!WvM A| ꊊ_|:*Z?.sPc/y|Cx^ѓsmފ/6}/}ğۿbg:MVdsQ,~&MY%G\촍PkNH6x?kwVH Ee oCy{rZ8 Tz>)Mfpsigy|x:xmKŰ='u>-1 i$ .1݉+^!m bڬ,ONKtI#QNsF1D-}{8-xp:`@Zy4@>*שho|X--h 'D?'"x0z)aP)lnFh'P;6m3xm kd. Nrr>--W4ӫ&Boˇ:g 6gm"CS1z+cvlI[o}eAy k߸QXVASu;:ys^gFFb]Igs ުYɲQ&RYgs!Gai$ % Q. XM7VYmf'BXZ($?wcԗs*2i {HwhFזV/J$Qۡ4ȐR {9f% %++Mv)R@}ZDcʲfZ}޺ܰ'J_=|r\d`6Jx82;+,ɹR,VEguӴSu׸F5ҩ+>α)/nL"g:L5Y%?)gͶŻCݾ߈vg"刐 x:VᡛtK׉VZQA,1l'zZm5 s_;8~wZ! BL?\Vp wpi279 uY-9i $5 8E4MC'jju@6+y#rs,ho\V[{Z|wP~ I;>Cx8>?RൢlVf3@-#~O7~/Rv3y)F*ji? KZ\D]_&"˽o_8Y9| l:`WVFf9t{F76)"=WI tDKM0W+b=M|ҍgf!V%R(r3 t7rhϴ8(s$l0%֐oYlRn2{nJ$K6 ղ2#/oDA,aHv9Om{\*Xtxmɼ`LӵHd[)H` ǵ9uF[;XRƨ 0!ڈr]ȖT98exҧf (,a蹳#A)@= bK !D#2UQ\Fg o@+R-m8p}e[{d?Aw!`8sQ`=4/waBv؃tp.x Xo`rP٬y=mwᜊ{9=`ggmlY}I0YYԻH_Au!NGi!e(6z\K\Lg+]5|䔊? O^z;=mwM_V\VycM\ŷ\JK^?v (k%=nKX0 2GoQ /TxzXi &atNJu'_%/Gvyh^ lGߐ5D4DFu"=K!.:磩^d7O&3.HfċdzF/d`.w"ҕ}iޒ<7$m*8(l֯Eegx0k)|tP#^kUW[h;t"0:p,-û10J/0N{O8X5KYJ*6̰ϮN z@6EJͪ[j(Vfhv7>>iLI{՚E&+ȡFFd8L52=uݚM:|msj'lC|qm ˓UkUGc=o,%!YkHS֦|<@Aky,@[/_/q&\~t6OιiT6zcry c|*Z z_qCg֋NzM;ULSAoD _^*:܈ȷ7wlt)eX'ŭ܊2 kceTli&D̂M8QN@/ Jawo4`C< $h"`v%g:<vENidﴭ5"Q:YcO)U 隚U's\^y4!YF@όI:K&:%(gA'Z7>IyGHٓhávN:|SVHsOt30"`ceG̬ kvGئ+Di)H(:w܅ psL&vԕ#ԜPr͗xU ʻUmQ}Y? ͵=Agstq\L'X1[وM*B vՆ-cwѝr95P hS^̤x D9MӢrYFUo ^69)x m]֚fJ|r@ܜ4Niphm*j#T mbhw''k9]gpI1vr> Nz*RǪCYIeǰ=dİw6va S0D,y25$A^sSsT"t}C$K͙Kvlxx/Άz NuQDbĔ@nDY0^n3Z;HSKnlRWH:l桞yc5|IĻ76W$i^H3[Ilu~`lmΚ7PEr5dJ,yøW } ^x\sY3 r A~'?<6PZ75  _>է?$p+ &oסޠ" V:^%92T4 ݹaEkO~72'.]Wخ3|MA`Xgx]k| EaSH 䱰)L?SѸ(dhx~j a!T=\i57S~M1`8.{j ݭ:a`_F4=OOyCå_rWGc ESKAjDܙJ$E#'*e;T`&!_-I1(riRZLNڠ}9y}9*4[muݝ$whh+PՏ!\ fjۺJBO+ӕkEb99q+<+4SS )%{}Gj!tbT%0_" I܂SΥZDZ(Np:}I:~I=Ǡz<𞋏uv< V,<`IR5 **5jMz 6Q׵7!㛿WG[ZW>,j[DcPaΓ#m˂PgA'ӕЪ*j_?eQ*;u0BJ@rƗ~gfZe~TcKjQ5'-ǦzɃCO6vȵ9(oϖVv#ȎgzV?_;Jr9IOVhbB%R-IEtN*}\:nr MĞ1JϔHM[ $1ZGEd3&PJ͢`0}/ VTl^q %^m0)~C8JJmC2CHWb:NN獝vm0w$*+mFvV]TYOs-(n3k&T0imܤXbH#ʫ, 4m=ȬBO'3Ȧ)WHsl.RXGı~ԯC%9]xdx?рŢNj;muL޶u"kA<ٲT lM72f<uҁ96]gH\ ei٧PL܏;MXx"88uft3hۉmIp2SX0q}>@:#`| Ͻ2I-}{,KhSf͞,uYlsƜR1(Q8ˣvlIcy@Q̀2Oۂ "W*I.<_i #It .DekJ4>5Tda#~O9PNށ+㲿ٶ>7ݛڍ<hZN28Kݍ[,G:iйSFv*-WQY =v6t$!3-cйYh?WqVe@f*П!Sks(tWJ]?C:$W͜FVxcgw` il.k݋N;Y=S%u0?xZYg $M>Jsafm'r),x<ξBk;>߅U;4XPkJhN1 5ĒO),<G,*jqzZ߹#MqaZucn'ޔ rTdd6(9R1D@oP9J dc*n)+}Sq˄ނxgaW|F]DFVL_2OʷKLUu|, 9P$/؏4a2V'99;.nT`EǀM"l :{ʉ'ih+ede7feKN)|}a!@{9|ܑr}'R<ոѭs^cmOП9dg)[ڨ')9'eh\x`]ś]e7IRMM6zsњZ:!`8`1I`"0<&lT餻@RAE!Cm, %ߺ~MSVU@" +51\n°ݪ#{Yq]B#ueL4O&ӝL)g51T*le3v= uΕ=Й.98z|AFൽ_5|y5X^EdN<ld?%[H@l\^dG`?_G6tzmdx1QW4t6[~9&rcVq@$f/k3%sF*{muDaf|Ȧ}A;Y_W\sa9QN(Ȅ Rce]XDQpa<%ń/ta0ݷAo G ~1dX+ o2"nz0ycЗ9^\ֲOB^,"У@>/(JOd 4"!}_2p?Y-~5z3OẦM|47=6J*]ؼlhf ]WDA _ʌ R0y*Y'^"Qaux(ۑٚ'm29F]um&2k[!@ وH!t+s9.o<ۆ0U_GwbKP %4;(Й\/fN'oѽ_` ] /~ɻu4N@n*.1v'vNK^;pq[m_F nFs$:Rj=eY59Ӆ ^58RYӨV2HvIRftw{DDnB)(Vjż @~I2@՞ WQ)]VxM1!t6D(kڊ8qD,1%K jw>7XKps?9e`Jwލ:9HZ)C<6QSK}a&w0Gh0_A%,S)TPזHA(Qr"ݔYZ?C̴N-?~ˆ-u_>"Os+N{v&;e#Vŵ*,_B)b% aGz90zb@o*Ӊ(W o̲h3G3,pOփOGࠖh7Z WKoHs]ݸq yQ~X1(V#^y D~'gAZL)5&uQC,CLQ}O w|- Er V5JON^! IȠ W8cX{ZV0g"uwvyF89ڳOu‘yxY֢12c#Ojݽ'VdWhUw,d4p6y#e(90<}RW.N$v`[ ۪|0b[M9iW -V!v!2QkOcN1t~WIEPby, 1/l"ӍЛf\5[ȿ#LtOQXczi \ ?%sPKg)M'(=Hr9-9e3OE,&WOӣQύ:řιA3pBF5&<fWֽ<[ CSQ?LV/6LZkldR*`Q|STIa& <@j[c:WFF\PIqZEݣ4zR{¯_?Q,e ,M* 0>|Bsܒ7`-e$<躔\x'h#M"KreC-J!?Jt9t́Z#=jey~TXF۱kMmcJcC'SD>vG!EPӻ-*d9Z/L$!4|yk gs"%n3ѫEhghww;Jh#_Єd=Z" m؜A쭕*y=Eۇ7ސ$~WL/"RIb\ ⨜F;Hk"n=O3P `cEj&î^ah45b0BPi͂CQQσj&e$j \8E;s whQ\P7|y Ɯ"&J@0/|pm@qu}01{b5AA|4Gv8xvp-?2mGq^' N! :RxR KF.([F}^45ǔ~U@+}w 6Y h>qF E;G+ğədyƸP`^S~NO ҃c E`(We-W /*%!dhf%aLg0x4Nb=^X[- RYM@=K@,KvM/7a6|;ɯ: Y/%$, EHi+Wk%z{N;E0}O\jB]25ч|)9etRJ‘A",S5+];ydLwG_q1V1Ă@$#:oиv֗n>.H6]ĭc܃iiţ0Sk @L J8x! +EH߅alSgs(}mRE!0CpPvH<#OlHj\qI ih]Zj9MIYϦGڧȴ+Ǐg`?%z y7E쮑YD#s4Ȥ]ӗ}S-ېt,s2%'oi&e' VB:c|ku*z^;#̈btxr}$YCo46lbL7i}Kד4+4?zK%z0&"bj!??+ Fqr?NjfŰܪg Ȳ2GfgU(Ta%-T5XkQQ V .5,+23 Jr3pJX2'[ԟ'8Wͽͭ dn1\]r%U+M{f*y@ еd5^О8bOf09aY" ]%X4*Sj<DcJ"ﶇ&xNJ}R.ZW3չuPJDMu蜛/O݈HY}NSA?EuqTy~=+3jsbHW̓?Fc|MTHKj쳉^Z3ƭA2%vd{P˴BsīT2ʿaus wqZKax3 5X"AI)!Sf:g#e r,m\ c~S96ñ|)=^W؜)#wp{^E r! E8H,y_7 VC 9ŋ4Gb~=4aZӸ2zJRsP&gٓKiW/8:EZVkp>N-oS :-{W8nF~`_ҍ;~X&0@>b"howV|4US3!IEX.s)_3Fcn P:GU&|֧ΐ^p? d7g{>y!t0n z V2ʼndx|r $fJ1ב]vJ{\R.Cs+6֧%)}#8g_gم\VMaH.n"fEi9p!5Y8닮NĴkU4q51kLjC,]>ߞ(T!Pw%K~,%ӮTZi8f0_/1Gmv}/ح8J@~VoWCO};W1! kD8`@tZOP3(;IA; H4N;hqnq*Hz+ѯ?[lnsCJ6mc+PD=l`z1a)NW#DYEceʎ.L(yWX Р΀ RSx*SCJwӟM2LEIԫ Mrp\;3sYtK]ԇ܄mjb^REE,xcZ_v/4ɜ!.KXkȵ)A])jK: sTSWڑ';9K˞˺՝iJ`9L&Hk C|| u߮'Be6(߿<» (dz:WpLGeob=0ѣow ,'ITbx;([qBgiVXMFjBFi "%] }. h(xb .{eȶ̽0_l' %- [ъ (s;ϥ#aC|6 RJr jLڲ,mm s 5dC9"js5R0l 3v/n|#& &$]3B.1&utā›C|} /-{_.x_0ѐD$ s./[rxM =g솢r̬=.!T&/쇹 bx'ߊQy[p5V_`ǐ> R: B/fXqy\|Ra)lja qKhPG|hPڰOPfxŌ1xh襬5ԙmdQ~L$Ȼ+ U9*Tf:\}W/_-ʿ*3cw;@1tV[r~ķ,xm:L~ڕn&ԞޓrdFE<[ye`)?fBl4 C`P uVkR@ ZƚlY䛻{șnhjï_q&g˨r\? |Ŋĥ3{?tS+W8S&͎8".?_ܶJXJMͶU8|î3nْI_ xWMDYz2=,I)XtOX@#Dϖ"F=9㮝]齑npvw};,ҶfsJSx8;&T>s壣c4(e*M熒ޛP'1RVSOڰr/3`ETv@@! =om峄ӎ)mt ho\ y FWg pA 2ںi_S)tV“&Yuf*$}+GPGq uزJGM΢ú]Y( amjCJwWW-PS b!Su5 '\WSS.ٞi!ShqY@WHmm C 9W^@ӎ&-0$- F=nv ^l/`K%_EZz6Xr7Tv30 ͞(-pg@O;x!FL "=!fqHr^@și/;%y-!Vi];A5#򐾗HA#*@Nt`CH5GD3&YJk<-uj}Wž: aGJOѺƐjǽd(@,3#F|,dHg/=B' 0w-Q9}-5yl0Uw^5/ZJ6+h3ػ=dxA?}]Gi s00F-A/@m_yMo>7{PfQ6pF{mSL'-YpR K6QGPm!#֑|ƍx[i+1sf}Qɩl{+Ted,'ֱȣsP#=Q ZrǤΜ}7`A ߃rds+տHi$ҧ (8zv"&"9V,Կ$gA#'Q}/>"Gμx)hm: 5rm~)!>MjIm(kܴ1Q[(I$Mβ$-倣47:pڈh D+TI7:MsfKBytfic4V> ,z[Z!qNIJ0ub] _kP|<}?ciyeXq))5ڬp  x;;Vj )[ ZVx'ztܝ ✒ *ߝyގ=N&1!d" 2EzDkݕ[mk ZA.,7/HpXab9T>NXToC1PyOeH _sj7WH=5-) r-9*1lI^޾;)&I̺X@FA0_d(no#s֊< Iu\|pCD,-Y@4G0xGR|^DH.ū{;/m&C-2i"Ҷ'ύہL>L{K[r&H5B ygb\{C~{ ˉpY0)Sz&۪;xa!gP-VsФ,s[fRw+PBڐNh!HZQ0[Q?ԴCV2ks/Y˧J4RϽ3 $ؖ>S PRqԋϯVG٪83Qn93N-PQkLV!V.7Զm/4XKM..1RHx/ L]QSmjcūԖ|ALXw~X Ƕތܝg:@6YъebHq롑1&z;уAC HD=owsy^MޓNwY[ylGdmj+iCnLXI vC]E@ȗ)Q&¡77=w=)k (v-޶2a@qæ,z&ćw7l65N^4K Yxo.(gld'` VXJeFF'Ggeͣ]ЈSQQAu0_V*^\U0$xt{ ~ϯ$˪ak1OvgUL8i+iL#?tbuj>7E!W[JJ9.,5`@]ېsfQ<)k#1{oZg ^bI Ԅ<릌c>_Ӫ(.۩+sҏNɨ1a<ˡʴhcJ)5%q99b๾΀5Pc" Lt69ǔ! JϏly,JOu6 3?\ m: @HSFh"=-u ?06GHФ+myR4 .3cP~j#/;4fk :\yiWi3`j+ f=m"ǿ=.ŀhduS-Y[w~ 7,`Ӆ lP̍vFNU|5[D=:+whNIo2e]_\|v"w˹DC/UU^`,V>c [܈^yc5а.gYpb{[i)ԫKf?E;e<$l+\xf#|D.eRf,U̟%_;$m_/VلLMqeFfn`'iX6lJ'}1 Ȯ+'Cd~;m=@Ix-nDt^_~  vcvpdW'mETҒx\ (l] |,< IpCΛy9߅U/Yk*'-13[XyFezh%HJNyU۩ɳ4M6OSؾ KL/:s1ִ5p +sEň.<FO*Us+'&5Eu O_3k {yxҖp6kۃ9l̊?+Had+qWuGT8L`H_,ِo84,蜛keXZgț'ڞ4s0;ABY fL&l$GFOsBa?7+I4u Y\PK*?>%+q|-@/7?/O<,)Lum{K`;zLOHNNʕW4* w!eAQn3oHBcļ:,o!O۔4Ou+ YCK-zI[߄Vw97xiz7@SQ<`LhOrmbEf4kk[ q}=t=Y#I#p0Kkoy$`FK>wQZfJo$zGjubJaidX2oym{Ql pHb;㐇m31,xykpS4U4 vRzLġ=qM΍ "GbRb}|(0"^~ ܎gp!úe~bGPJ&>6v7^w?X?x+4BG=>w%r_۪f|GwҘeg)5`_@|;e##ۍGQ ظ?zgx2쀎IA7?3[F'Yo3+~.46tBS8fao'SaWTdXIv!^wλӱP;@3v;}Ժ6 D71&0#!rTL,SH*[lg*^)h0(WWAdFOu?)Qų^g5 ൨fIkY'clKM g.J /~ܸ+ jb;{\?ls{XyH}΂_M-u{ײXUM?&*V{`qm۹5j?2|q(G3 ڨ܌U~l}тH`1&;Ttl8MqRq%lȹJ͠  #P.@>Wj;LuOT]p{FBqYoW?=iOqQ25}ogf}tDRJK. c<ψ6:>\,b$ ɺ]ԁ\gȍPIW&4XѸá{^fnG^S}خ3g=p s~;́m.39m2ci[RsN XC>8f% d= u:h%CS'0mxR0=6qsWp 9:6[`Y'\) YU$DRtm; %aHV|6PbMjJL+79D{%aď"u\D#>1 ( }I!kţ7Ǵg^toVY4QC:X {cENr,~/FSC)0=GY`FFZޏz/bn} 2jR;?uhFEֈǐ9avF{`f ĩMqlOz` J801`26d vK}%+t.6Eagm*3:fOÿ]#997Mq<8{c&Sf I[^S,/DV)]qJ&iH1aQiyjCi l t %yf a:ap![A8ԓUPu!.Ka'LF]#>]y٭<@؞/ .X?-C8FM`VK``zMj zүjX0~)_=c1ª_?nH(2j,'ʂ:;ssE8PV9Z# kM^ct)[ <ɣgYD6\ } lU{%;# l>]6fBZ \|6fy%1ή7B3IhY2jʁ܉Ǐ{: `CV"ZL>Y1򄺃}@)CuЯh8|W,}>JD!'/j{;U@1ϹS w6>\3$?U]Lj&@ڃ@ke#byrVSLC2EDˣܮ2GZoâ":UҷS H p B뚂zˇzĨ-an/{lj aGNBI;Gdi G[vwg/n#m X((Byq:d։N ąSԮSoI=MtG3U!n^Wma1AZ֥C@sӵ2DW_0aG=-b[gkh)whX*FC Q7ku[v8RJ\BpQĪ`"a^lkCGgs= U&˰:b`cP _%q,^j=Wy]4ʫZɖvJʵLkC'LPU[9=dUu-ANC!CD / j$EEZhD + h|^v;/PSoh2(TlQ㴠l.N 5WfNEYm.=<#@Z"@1k3e.5+>l}_!S&x9g(ZM(eAsԪ{qԄ}8Sp: zZIh!I% jnXоtcMKяK|b>+oG{o#QLhbYwzQVGw8 ONZh?CkA2c38}6LE9ǫYlnuVt+ӂ HAOw<ǸH8nuG3HL7s0x( !$EBLW!H^ls EHsW5cp734%'*7 85`T [;IzBM`a~chtԎyT#W:aV < ȡh>^~.t0jV K3Fg]{H/`F^Q,ٽwvfmtn PŸ[f ?Re6\s?d*<>}PZ, ۍԳ̯.٠d bmA\OB/ZCMgӐA\$UUȆM;nvӚl )? ~&)q\_=w]WtP %V^'nJia^-F4jSaҾ]U->~~q&Ч5gHrh/CSVTwmb|n(PoHvJC^G;MjDYb^[>M t4i; ]Ö'Щ8Biet /`Z te|H<.q08 ,jmkٺ^,|AR>uDb$A[.-$!djjMoe2Ug_"WT4)aHAVp3e_ 5QwqLLL N[~5OȔPf$'IW  t⥯;P 2[IPZ5wuKQ, sV )l*-ƃQ=ӣp3*sOnCVa~^Y6\}y8mq"tO:^jrӉ?uBQ&ÄVd0v`?mxPI14ZOGUKAw0mAM+8~f;%?tl$X5q _҈PJ&d01 К(c0CkD%t1(u¸a<פ\$4;ƒ>#dA݉Q,L~ފ{^Ei*X=W-`ȶ]M_L~u.C '"M0?^䲱%a%8@ពwiw{7G38B c5YR  PE참ͬml.p{ pB%u(y*WeF>8R2SKd=Ꙟ})|A\%CMڋ2`nL?{u`[ڸ4]MqxoDM,I)5](ý&_&BgF1ZF&%1?”uHaSDY^ěؼzԪK(Q8wh +aޓ-hd.mpmx pn̓2 .v1Y' c,њm0U[*e?b7+.nC @P>ة}|1;]{ BZ*ߙ_|b90ivSnW@oµ@_#582[k5۷1%)h>clT^S;סܖ{(T!{6]%)pW՟ y͓E%Kz`jHRFنoiR|?&pQH99,T Sѽ~5fW8jz©+xHY'J| p`TBd Yyr>TA_#ωa} 5D•l8 D(4f߱vGCWCN엓8 DiSC܎jWv 8UVQW -HaeV] ҉E7a*,p괻)&Ek3`Ď&P8U.;;\@ Q0^AeQ;<.Ƹ{EPN쭔}OX|"'nIWuuY8]]ֺ<Dj:-Vۛ4̵j"EQ@ɺdl{YT8~Bwz">sY0!L4B_[fDeAͻ,["Ib|Wx8.<&+2Nlf d]vXUeyDpONe?l:Ym9M]n.bYhe|'ttljx+*FdlC6q RމI`llX;:[+A)cCci}\zf9F .MQBAuneLVÀ"@䮬hT /p_AkcŨWT%u~vzs %$kڐ̌3p@ ws@tHșDO¢2<\YQ \] 88ͥ}ۏ&dE 6x(u]o@'W| 4CM)Tv]p0+R'ƘjL}g\5Txhxwo-O;I#T4ۢQ^͞T!z…qXiHK8K T<'QKi*uۃ#: jG(N}D& % `}oq_oMc48z4t;@E+ސqqb:\vm5Q?l%{Lєk!(\n!PQA9C{=@uQ=!^]pdh(~1s<ƒh` Cc B-?xFri) . PAcgDjHЏF.;uźOf&thmf2zu3^Q>:F̔YQ׼=QJ0PxWSdP N骡 ؊O SARQN0E Mܓ-%FVkwEEPTn+R-g{~0tCP4_6˻87@^?,de,["m].e,|hA3ת}əzrd)$ !DۇeKׄ9>7">^`skAXՓs/n'N#x8=Sa2:?6/^CL(,1(KƿRkh1p=5f6;uއY;$8I ,`?駐NqJ*Rt㥜ZPH$1Nݤ#pVmu+$ j ?E+`$s{D~2\zrlcI:x\»T]~r-d6F~臘.9ڶM >!ÅD T G]ї!TfEU'q3~zKE5+2Fkj)!g+\weSB NH?/Jކh}"&8(2.˿udqw+C6ڑ՟ڰj x_9nKKtp"t =) 3`{S^dYqiU$l N|\[j& FK̪*OZH+L SE/` ;K} ;KlMyYڃ?3nLrVpPVO[OT>_&%~1ƑTTw#cP|r ^\z]Jd{"<~,zfV`-z36e=趈YɆ骜C4`SxrZJ{ |$`gp4, <3GT]9#Ho4wJBû0,& LpvyQ$+߿pH)k e†\amW/[H!&3&}"rAY ")c#ruPƳxAʃlIXjsE͂Fj޹=sq>hlf^gTI&dEEŔԍUC|I: wґԶ'_ŝ.Blƒ5@jq/RѪx!ਡ6!B|և`K$[?ל%UNS gD+飕o05mQPiZ@e,W}3U_sjZtV NѲ./D-4wd]fY**]<%ׅMᗛ$s="xÇDCW{5rʆȫ扗 6Ѝʔt _)W b蕏14X=2(x%t_OZ̆0gO<|^*,KLrcm7h.#aDL|q=** (f{uxm"e(xQ^+/9kaI&\UCJ吾p&;< $͞ب6)lÉL.(eYxh(2nД^4#,0)sC )[Ξ;JK½ẗpXHT weRdAL[$ws#$? X+>vZ6"Qw#Z,.}t-d֧g_ga؆ ο𣦔D4_zrxp1Fo跇k{f44Ѣ:aq 6 @dt/XrGՀpI I@&lbIZϞ9JJd'K[ws^bFdS.ɑ)ig!C=2'A<}M Ĭ >]NFnsM&!g@OEX|#topba&|Q}~%L76lL,uC-GHTv: Aqu OSa$GQa \K|L#X;e$6iޯBd^﷘0iV&9;p$]C&^hjm GjPr=:ֽ8 eJ;1$d 6#oՙ>?~1sA|hoʼn|3AQ X]jOO3[-i ZM!Z)㙠UgS/1bm.%}HS+61H*q?-) ?ImH|] /MnnY9UXº$ZvG/U}L~V̢? F3: 6L[}UHhL y}""N1yT]Yd?$;2PQ}v $_7x0 T7$S`Evl B@ Bgϼ ,+ҁ\crKz AI3"(lnU:--{1ri5vQ8})<\3 ($Z0>az0mqnkɢP`SNʠ[cmmfzSkj7Az1 |\[uPi|1kw1y#q.oZ^E܍ba6`Cl@MTU(":O@Pj'6 ~8;"@喃),8+s N̴z?vL!ְ!A2T^bsķӜ>;)̨jx Lo"m1)ra[Lj#^ b.̐1I`*c,Q~RJ᮱(zfmQ~Ơ-(LN=~MXY~JlGv@.30dY8 gweMr_ ,P3ωώώx-j2sb^yC\geVS_WȬ4[0s3bP A^`@z0S8jߤBTWYܝ|mG\9zVƶF~Ǐv$;qPSEFMPS(t+g3mt9MPBS_/=F><Di ]x`F˞.mfTuw;/5_B5ѡt cR%NIHI~fϢs4S5{v!مb]Kl,+V#>xb:8(@LxwV#XbFKu0 0*DF 3_۬c8=a$.A& Qz]ijzZ3+@; h&.4T"oظhײxp>j'BLĈXn/R0#/EK*4`5g\2ԓ"֧DJ/\uN-pH68Y*[eJNnsp48[(͕QPuEyW3*Ie(gJ-mj!h,\aM~=dէQ\ٸjQ[`jCyz}ΥkˀNLYzP4:f9°IY+;]< Fq89kF{ \u?SvqNY6c/;ݾBqvێg.fӝI,IٖIF22]t4nߎށ!vQ%OI7Ɖ]A]2N,f3;n̸05YpKvCK&'cRrdXI{e-e0(2 '۽\rD獢a EnRfGlM&idg,P zёV B5 5tiYaVK q1\۰}ZE'8dP$ su'S78Kp>&)^@x/VDּ-Rt )h DH tk"mü9=}![Vk$?nU\ENѸZ.t{&2d淑='~\Q,Ȃ1BQT7(>&/^xו8sgA փ sYܭ.ä <*TY_{hyZ${_{f;Fy8,fi>cgZ(y&)frPt;Dq/4*2aydԭO1'T%皚e$5<# ۀe+yΗ)T3TA^<=ad3yKjɵ>n{^Sʺbi5mWM$ cNo"i"` 6 xlGOY1%߲bs~#g;#G05#Х##  y̺+ސƞ^'cpD@nye8bh$<~̀ݵb'֭¥buP |C"P7MF]1\C`3e;hiv"MzD,<ŝ*EO'>Sv" &|@M?Xk鶚zQ _ݚ +AF -=Dϸ U+QCbuj!x0Q`)"}3^#:<k8cCUO^t_1;⎽fr)o,okU?F=PlpM:~j|)uO-Iszyؗq$ A҈UEODjc-:c%"µ<bdT8_DU Pn2#a&,8r_ Ŀ@&y-Jfra % 3c O'BO=G743U`Q7o4dQYC;Dx`^ThaR,;_Ův)U#<(ɐ<}n/Euƒ 8?ƭ. ݈{T^gCsj uek7Jb#=3v{$n7"9)(K&Yp"5cSB_hIYd\{+1 |XtT/ځ7NfSRoE[(o(2>jNnaKf,j~(- (Jܦق΃ᒈGPLmVFkܶh<2Nli;*vN=ct?1]![J׳PcTNj(r:EHaUuil`"OR &7!;%Gqdj^ml.J9Ŏ\/\Oܡ?x̞)ZMx>Yk2DD_i 2z&9=hFvԦK8iSWvDI(~+ebq=KgIBG'Gyđ |C֯][ðxJ|.>nMsSޝ 6Q))|'ٔlI]X_dO(@KڠrcAx-QO x=q$gܪ*I{JbzN;4t \#2ŕ6bHV쉰^H8gHEۭ?s-=~tWfӖ1::u;$t˞U6^.bf\w~/fN%K_'dC1qZRmy?|?;g0[A0w+ޛ< XkPEU0%3TT j_0K*mɞ+HPh,%4gmkűe5~ւ`N}^Mog|h9v.ܦo%X`@UCZXU= k1ts!NyCpSsֳW#Y_AB^A^_FوTCVkveb79RVAM=Ӓtw[R¢x0B|1u3~0XF)oޱFN[Xe|B .O/!FO$yPW@K pNJEu<NBLJaJ]'$k k}tX!| +( SNqwP`ꟙ0`b\"Gnou+x@Sz{ 㵬 {nV,݇䪎Y%)9PEv i*1zW/ߖ*Fw69 z dl+TˢуExiw>ud綬YڍǠ$QEE,ƕGg~V ֙hJJ_x"ICYr)Av4SV rG𹊄yC+S p?Q\OG&eֹs\zR@Cob9?[q.'2s6o|;nź? 9#3KVZMƖi_*&ث 1Mx]@ɑA̞@4gflJg7HqwKH6AIb[|ҩ B2#o!0J|,l (ܒSfctX4-.B릶|3V]`Ä E=g5.sEyЬ< I]I(4%F9%MpI䏷:oQ榚A<+(Q_d[|ݸ&uK,}ZBH z@uZMI.e]gX]%Ϻ{if){ ͱXP[ݏgc<{TM tSƔ$N8W|x[1J׸( $wF[&1٤!ffX閇f7Th ^{V f.z${sP 1~d`Y!W0 &C!ڿ)Wgvh0-vTh9z8V`CTKN1B@Thh3@@>s4v<u>Uo!z2 u* M些&n@Nc<{k3mQf&}7uUR&( p\ i j3'&ĠygI;%f ,2c"o}zm;isS'u5QI;׽(_0t eKƢ;O S\vMqmF-DJ'PzkD"3Rtط=+)P‚o:)CJ0vjuF>7Ҧ.NtH[Gda7(>cc81 V tX84v*&40A`9)VLV^E' ˁ|:BCAJL&ϲDavoemޔt|yBmVumY=igi7_X{?G&Z@ "5FNN8ʭ)a`>"Be$h%X QlY Sp;(m@yN\ i|l? v*5:@ 1ۉ|s,EĶcct+{ mQXtw~WR̈9slk-ybWSg@e 0Am`A 8K4buQy5.7iXwj>#Idcqd%Pc:>Æbđk 8nJs~H?`]g#P2LDyo>n;_'ͪ?qj@N''hG&X_ƒ}#U =SywE0FUFWv)TބJ;$&&HFpi*?cLkX BPQ׈┍Y׆ ׳{EBtC֮ͷroxͥ&^2~<ѵx6˷>a̰,;E{p݃ZQB^p? ,[iDDw'ChZ`,kWA] m%ZJ;<Y77p0\A? G6+-ˮ S5Ǭ T=1ra 2]a{BX߬M&`ӛjQ4ݲbt9+#Fadx+?[o捻vv:,/d*;vE8e{7Lx|l@!q-2`^V˥F,sjf+$C/|E]42x;ڲF' p&+ MO[Xu߅̭ Q-whqqnA]5UvT5&GYV;W̷He-A Bn N{R||VOL]3h2DWOK.X q d5<#6AwO2tZ!J2 EmY*zO, gg$gD`E =>d$ʪ@!$e:)kLI:0pOkQ؋0 YR:+kxElS-+t~~Za6br{9ذAi_&>)?5fPTtIEFl#ͧ5c㢚ub/߬%S7=B~OƾthlS-{0,0s2׈8E7ANs$2u"DQCKjqi\5:y`tD:Z?ǟR.TKt0_%K1$sɣ>[H)%ٓ&&M thN+iDuL]4D Lk=I`0猍*(RDBh!ゆ8R݇?0@}HuѴ^ S{ orp^NFdK6(OG /IFs%S]BrRS{$AHH>Ucqg,e nLEk"5? Tg"n<'9^x plȽ5S*.F ۶ljYm1tx [%fE)];GY9@h&NHZ$S b /*JJ:H\C3g#0mtijH$[~]]'!< dT>vc&b Ǟ 6dPe@rd CH>Q'΍Cz>b&Iv{7 q8Lcr@эU$']zJO!Q`% dxElSVA&&6ؗ |i.V o3B9۸#)ǙcFJE;42 zn3#uuK`RrN7R0 UK'$oǛy#mpy[(*`B=x\Aj`5-őYDc~& :]CH&f Ջ~U%F{2\pP2bƵp\ϢQfR8E uQݒH=ߖ da @<-ALYE۷$(\oB&jܨyޅh^,ΕyTGr n+ҫdZCUKrֆ|TnE{)a["3Rxar ,BG*]s/j$-/ZE0^pֽ@u$$lbR}VM@&xEpo!w8,Sl1Z*])@$"m!}Y4DnT?)EDyYx9|3x&N#EE|%?ѽ<6DWAy-L]2rpni3֞Pyl9$ ȠSW$vɨ SrO#:niݠ5 \nOd ϫ E+f á842--v.كД |N= XX##1;H171UR?rz⿱ 0fhQ ( t 4_|Mo#Rx1> 0ւɽ @Pbg[bYQmF[ T_hFҜe OvsK b)$Z ,[D޺;ެ̻q", 8(YAG0/iX\qFVA!|N)?[D琁>4>\D#E1G = i.d|xzQfy-3hC'Ea4}8xq.XqWHs[DD4$m}<.شQZt[OٿC,d~c%$ьC ˅mhwr[[!cF*KCٲ'N %]`oeqn#zJ2|9$8X"B̥iҙZ{ɠ_5 .GnkzySđ%wcVoɊl?)[dtoG{Ы!ghc'2"[9Peo:d}v\SM3U;+DV]"D%e3>5qMOzHUɑF(gICPRf+st2#Pzr.,w^ܪp %g-e$դ%9vpCwד]ba"X+TvHߊsp{_dIY}U5C7M j#A?-?k=U>Yؑ L 5.r Q ,4/F’ǎ7"߮|J ~RgA!?R^)w:ihAl_*ugJ}tJ" urNBH鞙w1 fV8>FE_.ubC 8e09&@ d^O o)=z|Y XX!GF5_Ɵm$$!:7*6w-nԞ2K%0{)\-P\gבPr6u"I/&1)D0 1 2 <&_f4M0 ;_VAsV9.s+SzAo.;s}5nudvs6\`@λ5㝑1by3O VnYWBge& AJ c͐) "ܮuK>*J*I^4e֥R[~b1D .[2b/P]w2ЏG_.i<ՁU fhsW7%t#ڽ`STg*o;E G ??YdW;0?P RXsfXtѵ u;/̌v1e?E kxQ:ۉHr;.aݒ>`TM7<zR,t lJ K5/YogC9R>yV N\^7_˝ggT̻ |#,ga~oz{IX{T/ L#4H((I (R*mL\)]=1ޱ(B݇ #͍bH ^%f:V]rXwUOheç(ȟy c9 4I>yƑօbX ξ?) }hYwNڥFq|z'eU_6Uup䡁FS)x !t='o9D&>F d`ԛ\ RD3MERrNO'U$3{υ*Jz ޙ@D$u9"X2먯%$xkQf~SYPTpѧgL{in~~DCT`h::->Sm8o_-1]T)Lƭ~,l IޟQŅl 7{c BR3|3q;SwȐre)Ƕ[_.!z: Ev:QEιL"ʙSۻ%"OLޛ#'V O1'sk!L&Tߣ3;E!I1Nڗ_#n 8nh/R;^yzα3ӯ'U9RQ9,q2oAlxV-gNQVL;Sa NH˘eAq-Jo Z-V{nw9ccz"PDx 2RoJ=مXx?&+Y9SĵnutT{@ Un-1;2n΄H)_&g_ɀ']IZ"]5LXze\lśֹ& OU#SH:ZB=w #EH829 . UxŴ j at xNm&( ?٪[Ov4rvDns|"(w oc*UjNQ*qY=jmIk; 8s VtZжzHJ2໙ ӊ/|]PWWw|t]p`{ hf=(OE?ɂZ DzFR!{ֶtg-UrHLRȬ⃔8ycF#Y33(\`?pabQKBe(3hj #Dv`"QZDLθaԥhqMAW/x;qDK~))ЇShX2<۸Β6B73AyRfWݏX7 QYv<_fP&Yu?]"v BKˬZjb„h^ HOS9 #gY؎]I@-KāS#$v* gH 羚F/h7/a`ctX7Vmdc 7)p)F/`r'Ղ]G 9媎B~M M(kZg_a65̳;yj} r'D*Ʀeʏߩwp~ &]Ak墉?|ࡹrb?2髹x1v!.rVd秆4? JAŚ,͔?rR]p1{.=0B[; F9ZSEaU7ux=9^^ͥjpq}m3Yq}UfY):ڂoJ.s5V{a$B{Kœ!B[qiQvN^s׀WFp8ś@tjX@02@/7k4f5\}YNye9, )O`JgtMp7yb8%|{ơc#}%ux^% ױ386qld#*q%jȴMXV(5-P59֟ C'q{_A9ZTY:R0?DYv՗DH޻  k2WMK>WLY3$,wzKKCI~-落MRQ7m45 n7*ؕ`>&@6 I52IFjuhT|oHgP7LeG mJB`C8mbG)63j-􂒛9ު|kuEX{Ѿ1HtE T-S#i|\K߭_BوHodּ0~EˁOs4uV>& ̂_bGm;Oh\k:[2 'a3^"XxK &,Dv'_Az虻pE ,>2ׅ;xps,xqq UqR8. :trPrS&!M0O xi=0Q[ m@*HNTWB+-2ua/+M&ĕ "{J8ԛِ,oޔҥo NJWM"0`JV3{~KwLFN7&~RZ'kl$R.?59HSqZß{b&t<5;ΪgT .>rq]JugS fhQɏiк1'WI+:7 dGd7YL>9%LMDZZ984I{wewI ]6TcTjG#4t.Ĺ9#sa%#/ܻ(JwEH&?6۴/4ol GeO;5I=Q |L{=#1;6cӐXZ~fF͵%:$0[6h]-y{}&#Ƒ.z|%O%}FX+ Szk/ *g+_JjEJrhO"J}jԛ{K.\r`h1MkEd%,?TO`?KmMG `Γz8Ac΢֯*̦n!-D [qbG&XMh5Tdanye'ML.ǖH'5M6q}qi<qI8UlT$]T yP@FS7JOyZg^aK y Y-H 9Y p)ctJ AiշWk@jY|:9OaU,%A]xBH" [&m ʖhDža"͝Rk6x-QP3_݆S|=^K}E\{d˗6`dbdt e3]*bˮ7g;H)Z,xܤIAIlY >0+NR+EElXo- ͩ[{Jias_iGxJPtˈ"rxT^X"PaIM4>"&<`eb I|RS1"ׅx3Sh`iX=)@re;Yr?VQ{$8]H mX3崒Sz>08/m%dWGK:۱=M?{+J^c*2ѤBW%lr⍮@ay^܍,w'ͼLH9舱vE ZQys~i_I=wO,n5 l:(JKZJu+R\u`8AxN:qZzsD2V- X;46AشB#skuFh!iF\v nF{[v} FrO[aFn?J-廁$aC:JFu0.* X#ik0-F)$'[e^K7cZ%d]F''7T\uخs=k3<`ʓb^Dý۳-j w=w"d9։n$Nm9J4*MvhxՆ]W9v]mMȱsKpƃQISG٬A395t?zTӫ߬Z8Z-)'$:Oq~&yPh.cEFO^J~'2 wc[-x(Ndb䘤33B,GEɊ68&vWnJsbu5娦EMDYBJ^x$ KXL| 0Gk_'.PghZTI.Ļ Jh"YJ9/oH1g ҭ=뵍]󧚂&܀UVE[4rpx9~PHW7ÛP%qkpЇFaCh1mk2'_ V PS)gu hofPI?y8 ``21//q50 vӻ}t`'g*r6W=%a6Z&dL*xk w!VVUNR% ~:A*dS~Ol$:}8}[n}ޖtf / P)K }I^_.󔺻 &-(,'+?X5ío鈠Hә͆M%2-7nx{<k~X>s3vEs#s(r 5{,@eZ_MT\_4&BWs\S,@܎;)U R}Vpj~mf+[{[TCsBvƸCؾn {sce$X$NxQz>Rm0(/9Qvڭͫ.lz%]vj"#@G;#m> ͺ轛E5~YEJ~/ BR*o#!TPUa#.ГZבʅҶ_ץCaAԃީrJnuȂ/9FD?aWI}@G=U8 X(Y[E)ާf+p1H5 | SJ Ȣb-)!w_bH۞$ vG~D6PZ&SrJ+SB*RI6*YSwQd}::|i"~(QܚnQ9lo%nY GkO 9>.H`=w̱>@c0C T2#^)Ŝc(ほ^ %" H<mk%}u,hTqH@3a4%29'lD R]|ewOE#+,YOA7'Fa,99ՌScµ)w{*N5X˻&2vH*n4_2nCL&*B00ifōiS$-=%$grq`ϫkA6 0?e{­6ɂf\l`yhrb6iK>^39j`pJ/?m!)uB4=zO˃'zO_;)@#b)2HɫbyńF\jkH*ꈹa5嶋HJe=,È-kVa{?JW39߾3zn'VJYAbG 20Ѭy A/z #1%װu5K↮H?񣛑+ˉ8`3v.roe4PJH$cFX<*E%kq~'Z>O*Oǵk.aǕc9e.J& ^$ZO#K09pH6`t:{.]-Nmt_1mߓWK#1GN<?Eh#\B!jHQDr-p8ɏp5F |0nr1n].\$e=MҎ:o闂~aFVM36YTl:)fe4=kؚMg-lR~k2&8|24h\CJIs*UZ "I6ƲJ 0m!}3Rknq!Ud&Ztjl2N`՞VT1=)u6^0jԒ2.}`ٴ|FTJ-jsբ":X iZr9F1`0"*\6 N5F'vsVY`!̜=v{0|3[k!3ahPyd aɻȾe/?YAS> F1O걑Jyp6ƈYB / ီ.tD8Ӫk:ƒ5usPu4 ZWQxiKONȖW_]ƭ-tcE)ȧ>{\)=+!#QZgh }Au`VV~ai(G/7=ـ#p:RvvD\:YbӉ=2U޹g n)]n)URt\PJs]/Һ!s/3-jýɻ0"~& IJs$,0dyg; pHf]7UYb U 1A$uft)sbjܱd'5% ٱ=٣ 6!&1YK~a'Pr1@N ۘӫjAFM b2SMFz)~g~cL 딜[l1\Lh'B flxW*Pe2>'edž@ظ^ձ:؏$(,l.c&Q֮rH3j@h\9g-jtbi [u׻T`WD"Ipa)z:u".0B:l,``'nKJʧ hw;Nḛ!sX,QЄ(7u c^BiN% ӾAU)@O+HeTȈ'v ^vG;ӗى5jS邴ەp:*󂌺rf!0Z@f0ʪS}@t!Kʬ2bPŔG@y"Sdy4_,=fl3͂Bzpur/+)u=Øls;๎K )a(T]=@Q2铋L#u|3xNOu>X`U'²Uz51,kf_9!e[_Vk|=K_mjrIȨO8}+jrۋZTOngt~$j1pKonjO$S.}q:/8!T~174 &2g؅*nds}"B4.Bh8vg9Dzt˯@D[c%jȤ9A/u׌%58xU[7^* ``tOԄ2c"i]K7;z-慲y"”@Rk(Czؖ?dS:D jyxY8} ^Yb55R-"/!fA],ȤsKuFK˴hQ_ 0Q\AtirRp n(Zyꤍl1-S&r1Щ&۴=g&ByjUwK!sp+Y>:uWoTYH$t@l\U {ֵqF&&?'h{}XWe.tˎؼy#0ZmOW=gW=qwnyl/d/͡"AY] F;,H=#';dYO,Ǹ&^%ޣ-< @MN>W+QSʼ+Y+: 6EjZ#kh.++b8;u32if1BծYq2cs ;\7*^o@pQ4ԫyt8D]ٽ{#sO]YƊJ6~+nkh/S\Rp< m'n0LoYNvaJt}i۠P_;hj\kV62ɎN 'Vnܔ/E6ǜb`4uJU$(TJ}$i]-Zy$PQCc{2`K4Mc_zYiGN*pq~qmBD=#ݸVom 1k< a3NTz20pMĬ`jD ֯C7plwWV- F&"A XA^nJ'q=!T A9vOSv.WP #C ]Gܝ]궉eGNLF$5[ @XhFC¨h<\5MØ"k;# ގKc3)=zd&}m?:-VUC+4b*k!}!}\d.bFA!ͻq=BAEG"3\8_O C-ZlA݃׽#lʓ&$!q޵Uw A*v~z!i5.H#)u -odN~t tuDcb!}XpryR [;WRm~7I8ɻtp%g=j]ԑ<(s- Szɪe[S/ǯol@`fYzKG^}6rdp$-2SЙi}U%z cY-MҢw]L u$|: U-u4@ԊὲF ʦ7O "lSE߱jXn؁ Cr6_&=L ONO4wfFG=hM (F0Xu۰fm Zf|⋕`j^([=JIOu/OS8eQ^V{!Iquq҆uEWo@>֔GXP2AaNqeS.eKӤQ޷yjy;QPSs Q9iʸsM:tsŊT} JK\W/+E͋h}/ Jg y;c U[R ䷨+ؼawpfO.7`>wa/@֎@0Ӊ5*Q0620Է;bOxeVu"<c|: rc .hKsc)KTbQXi]o"9C۶۝c[>v+p F;X3$Jn9I;7j,`]*SV( Ag;i B< [Kq[Sku;k 9x U;Y@3UB ?)v"4ŃϨjbHT~bBުXpn`|H{-"Ts+ksJ+-ۧդBC?YM&Ed=QpbjV֊nE0x~OR;~Nt v7o'6'b*')[OfN]boL{`u8+$UPƒY"':#4 Lʏ *2 !5$<ׅOXh]>jFMĎgIQ$qH|syX>2iA\ IT&a?V3j.̐c`5^V[2]ơ{b~ĬPY{d̹ 3|N)xID= 1>qR, MvgY4/H,dv7dž'?)gq\1LآKuZToc)c\b<0{i{ q'ƥ>/?d}[T'ҫ:Y:d-.<̯; м`Qߞ' +w8)_^v4]^Q?͖,uwʫuչtDtUQojxufwŸV'aDL;7G%)u@ݐFJ@(!8tQo>7$b.3Ѐ.mIŷok"Wbsd^P\tto,e}giCm6 rݟWdAG?n7h Yxב93^g,}y۷H{еR H!6xU32) G$LeT+Pm!QQ>6:UKى_m[yw&]g`{9«K:@bem*⌄+%,vd WaXW5@B rz B- }E66S?14ζԖd;xT>_DZpzbex SrIR#>dUWubY`HIkF] J=ߤޔv-%(c5[EpC4m4DK|_p_Rw<)߃H6GPFԇ;o2;d'8haG=&,SbW$,3s$! ۋ[}o§6'k;\4}_~\ ]{1ߐ?=ה/u1 a+~建?G&=c"!ʽoaŎ\a+ StKz5Xɠ[&c˴EV)r@dwK|9PHnaDK 5Xϐ8##/Vjb6mbq2z!Ĺɬt MJ=ƚ|NO'U\5Y4s> M6󤀛<@{'2ЋԠr5J~We"L|nMH7]7)g{4&hf~Âq`;y6-#x0tbe~{VrCa&E'`lskڔx׋s"J1 :`_xUwKχR-3a*R˺w[As՗(SvhdG(p 6iڳf臅us He\ Wut|8* s񆱟"Zޱ{ G_MHHq+qu"sy^}ѓctK٦elcĻ̉ޚÍe>_PZ+F̻\J ߮7xU^ vPu@DtӉTqYGqTnl&8}&#CZEѨSwzK?Cn߰d)2P>a/TEѭlrI䭞9gX2S.PL yl{F1=3SQmKmPWƠBe͇lBuvC?O=* BIL*k=UM}> SQ{VVb9sWZZ2gO$,k{P 4!ULFYn55N4g +;׷lʅC0aH!^o4{2l9ǟ soĂ!cE67%hi.й~8*}`,y;8B1 T\J:6$+Ī;A)rK,t~jcބT%eI .GtSD7EΈPh="ee /9 q%("Ē;:FUCll~3M{^>ц1RDT} uΔ wAdxYaVpQd4mVd~W-*6ٔR|?^ruV,`mXEoԴ> S j'ke0/ E׷kTs;uc&[i8-UOes=6XÜl*pHi}X̞KAu,+P IzLj#x;bOُJSrL'HCkl4҇*Pdyt훪'oGoơB! 㪀.v L*E Vʙ;~ #}U#qRݤ1ik ^Ŏ;VՁ]-v|{45IГ Qzj^w"Pv#\9xngSƬcC,dP)㦧s M#;L-mdf[Fe%w9U(cԭ^ɫ]QC'7*i7iCxԇب82,J) gQjۺZ ӓrvQ ~c&vҦQyP=l4~WԲ#3;PyW/*XtTB1J8ci!)G'vQU_ˏ:6 `fA|3NnrZf2fWV=9 ZR7-/Xk/0;_ǚ*5m*MLwlt^/٥*)+I|z`oj.% T[1G?RsK^,/ "zFvOw΁k]mpڲ "!M QR݆l̐~09 yrxa = X>Mr VB aB>?mPVb5DBP=A_2hI? G? a-߶~wF.]o=s}9" =aE Malϩ0 )w;șH^ǼI̖iM-5u!Z~m6)/-i׭ My5 `^ⓞ gdq[)X|JYJug(5Zor(%vm"W @r%:K ˺L>tjj_x 2qxg\TqL|#Z4MS&yWi0xz^>_.yuUZBOΕRySs h̹פDd Y2q S P3nv!n+B׺bP2w(뫺'C0k_n<ΐ?D=IQfk<.:Ep.@Y[FMQm ) CAN>ܣn̗(M8fT[sr?olZZ/fNyZ/T/]Nzk9OQ %H]q#GY|ٶezl?IVn"636c(%$ qF籹):H: 쀽&l[Py%}p`n=TϹ =.r*NMgGFs+X@ lze> V,TY63oཟbYduDfN.d?J~֪lh,hWpSR06pD^zc ZsNJ)lr3~\/.",*փ~qoţcJ@43Ĺ NR&ܴv~{nj`% _Z@Z/)ӀTeE@ddO'W "9ӭ`L DIl?vSAY3Xqgu:usyƻ i9ۦDÃ,@\+EP(ћH쮀-}26U 9PTED~9e*{)DYȢ&#[YYutYrX>xe?S%^11ķPMǁ͡05idpmFJuDAXWWf`;(AX-Qˊ<;U~1Q!`GiGGvo.,[(:(WJױb8;t47o/Kh޶%Y2}'gE񶒧Jld3oƒYoq1,V$`;UP"F-07t-+K*/"q]! V_IA\@~vK? Y]Z89[RΈ*|2: Z?]CUI/*l_C&'~qT&$aKP_k ۉPɓ!$btUaD-5ԶGFe"4\`7]@&wSav7D9.- B<$VNJ BNSX.n#7O]*bS6?QYIKZc9zd$Y'gB-3BH&!u쉎?0ڴ_˺sEb~yuH~llSᎤJUQ}:6|"MSʊdDs;PyWR-e*bH3T{iHyo_YvՒH_^EgvHr6ŸwvOٛ藴w´PlDBt /c{TycNxRh//ORFFZ ~=%큝 ɘp-@2AճZ?VQ~=T!O%BVcvʵGcj_7O8*Sƍg+qŎ= R'8ѭɳG@gWލ>w̡bu9̃O!ECӖ0uwkc({UkJ*d-c+KAunTl=~,_ <GwhS #q&>TMIpzqHjL9NȻnTV̥,t두u.a[ߠ,r!i&.]㲏Xc6ZJ1wU > |J=6*7 fKFkrYL$cત ~y={&L`u΅h5^3jjJRa_j X-X@!Ì.CrC0Ton'1_A(t.`{xA_{CUB±ZcI#Gib3F-&;霻83VDz÷]opp¦ەl::I>W)%$7B74Pƒ*;a=Hj#dЩZVʘITOh,@Lz=&JP*!7(!Ia[gUтYaZ%z6.MpXClZԠۧ+Ո:ݮlŘuOFy$Co0~k"& NORUOAS8e.\-@7aVɼ!.O5,%6Vp-676SI5W >Bv oqwqf}!#RBĝMϓ#۟J}p%vvw]oˋI55}QjKk*ݾ?Q{gQnᖑ( IE':yd9s˳P3Ǯ? ^A;' ISZBM3<:mLJ>% kT=`1 \|fzT/~Ҩ&#'z=] D߆j4#;aoQWzCm)qd((klq[hA fqi_zk5໡؍B 9ث|JE CsaRr+!jqbowx1J߇Q8ᄔ)ईvXn2lrfEsgci|V/kFls5J5*M5W>!v'GBF;#DgS&#s5Wc2Q xTJtl6Ex^>LͦΠ!jN#Km_xgDyszOLۋ a%&1&,JySA"%3C {&Q z ģR*}i.K렦)5׳"5f)68mVgUf <++iL&3@pB3@h5XIVt;%H H^ fVoR+y_ ,vJ$zlJ.HNHܤ{|N|yWƭ?`` |$ _]nzRqnHnD}+PT:.\E']93.\?+&ỲK@ ])Wtb_ xe1OeITiLpj$OMTlN&))NlI!~b2Gjɰ&^"qHF(/a7Fra7{vu^u,v.M,* s;{X=ŏ OzcvM9p!TlܼL*eCƜ7T*G +<|ec5˥~& bY">M`T5TAhmUoPFiԧ ֊M'C?R&ja}&ڜξ VO94 +s61 6=nUT ,&Tߖq‹qϨdv碗)HUꝢQq ?3m+7}&+p{˙ΦյHǧhB#n>Nƪդ}">mp߳a?Իn9!`9f lЙ˨^}X@7㴕QI0JUHĒQ9-L#xZ$2/﫵G|Z$\h m2p]VFYx1,35Y]3N*WS4G"ZyO L hjxӯK"!\l[zd$~F`pV 4eO̔7ηl=$B(a760i$QqC)?nd U(r"6l](ػBDj(.6 t1]\tc QR JD5,]yM;ک2/U8,֩[@{5nc`ðh* Va>)N+wezp-*ׁF|~5Ϲ5{p8fʮ|%amd0/Ii&x8uπW(G~ښe! z햇KǟU F< t f2[c'3sm:}]{1"l\;  ߼ìƥ8rVU[h_yTF/kv1}M|y|u9 ɄGcEP lnUXDԕ[JLf)+]]Q6G&P؎g}yOF<<%IPՑvœ Tݡ$>$ރ(0 Pq,{ʧP@A-/Ͳ>0G?&ԻLwdTB?BAvœ[uBCy;|Zf1͒t >~3uklR<;j31[}|k&4^mG-!tU36~e݄OdVgv`}]F]vY"$f)U1*Hrx鬥4poUi\em 깛jmxl-0|.b>Uc8IQ>K1Ⱥc:o׀ >,!1i3 ¶cȔo2 fÈ3&sDIrN+8w}:F{8m|D32@_0$ACi?js zi `kj$!LnHZځtLƘ ,NaE&C')@}2aMf$3DSOs3|oҍC{{؈\ ӆ)Ic )otHOf n+-r"uC h6G,  i$ DĎw9q/)'5":HkaZ72`\KIˮd.Ф[y$SWİS)+jH,3qj+hp()An>3+f31TĢۢXfgljh~h(LU(>O}H<̤9 `:@ޓZyd>S|Ke6}WeWlS/pWMN!d:pd_qysv$#,X·el F@}j~UզuZLY#2,m)wZ!䤯5oB=:wL L̜a JC{^e)Y%1MPT(@csHD۩݊~z &Fw1ߙb(cvg9ϲ1&d,XnhQDדܚ=2vqbxoډp:*F%4iٍj"r Xl6? 3KƫT*|8ZnwZXm=xg(Tm580̬xkcK4+j؇3[cE}Tצ"&m;Đ}7@@_{9<:̇쯔\Yl^:o'lo -ŮTtO+>E{Hkp#z+e x6$!129/EIM:ys `vœnmfWI(4}>N_~KUW)hh.PmbW RVWhP~7T4(2ԋ]Q߁A~QQVb8}[}yMAγ hii_ׅŁg(%jQn1k{zF@o, 2249Ņ6»4"he#4w}Eš9SB(!ꊊ;K)oF:/8&r0YTYy/ofamwTaQLFt1[*O^X |(z}}!kDӮ]> /UlQ0=lNcvj 5 52O"5&yԈ CGJthәR=5}7׳P˪֯|ۄ@xA\4>6뼸6@P` +jZCz߀Bbl׮LzuxErRxc;G*J)6A#F[gА-UEMr}ۨaÂab5vPߔ޶nQhciffw\{ u%,VuO5-?mqTם?\~e"u%x qe ЧيCֻ,a؄0 €ES+)Ì>G=A28U=T=\pPo~-!LNh_HU" &ԣWN铲BӺ龱ce#Hڪ{L}v% Nu$5 DŽQ=2<4-p dGs&'9(gN2q |tz})M=N&Fu6G EwRT$֜EJ\ТOa4%~V`*Wg+_b,a!&lA-o}&^8GkT͗U ,xJ-d^,{HIoU=+)u/2+MM~MZCT˅, 4l1{"D6DOK OIAܔ0)dJ2(1B"B 3đ L@Km#78dd+]=dCm> ӠP-[4ۑ$FE^#)aGf:_8J k{KΫd?k%tl&d"'cPmn[+gvGjAԜp?g{3,Ctpyg f%=KGr=tctt`Fp:N'iUO,vꁑuGQLEC r>UvלŖ2#?m^+/f]Fz oE='Upivql5o 0jgɃ'+/_ \B8e<$aS?"KߌSV(raSw #=9S{2qG;`O˂c\!MX &@@3u˾|rf=1^Qz |+h$LCsS]?"f2 NgT1(6Y@2m\Pɳ.M1LCM"\zPƬOoا´W~py+ yVʳXhF֔,XS}Y#tmtVT2X53F(Hd6p%C {MQ"OccH SI,bٍ[*DbؗLoy =bq m:ޕ+} Jrc9Ycn ~j:a @bd:;+˝0@v' 8ؼG[n#0Rˉ zHk4JP( gNyx~0L?]c_&סƨq6 G-K_^8frK [P#m n4cOCY$Y|;:".{Tt>K0pHrepV`Môgũ?@gl`MAs٦;5 8}9#Ɠo4ɓ`0YOD"Id{DKŠAtk&>(ѡvj $s# 2T1um= KVF]LǯFGkD_ v#Fа瘋F0MZ;{Z ^Ѷ%>̡_AB7S0|þ@;pîq }Ф~GG//J{Xyw' mj?,t{2qk }~x$8j(`,4꬘\6c6>hmk ;A~be]K{eQVuˋ[D31injl?UktÍIj>7Kg E YHAT{3&zfj˓u s%=%A/R2ʭ!Ԝeô6+ >"=n|%r!sobʈ9 jyjzmO)!r= 1B9wUWޞtyf2=Z["5VCӅV+{cuHJVD)h0&pԱQ$^ dXPP[dtϝl %6W ĺ20 -cJmẍlu$"^&NJVj̬ZӸo€4<5+jK.^/bpAHFY'm|M݇Dkg2x #aeFw27@2&/ ǧ6'e0`zT :yz/y+䌝|1cW @ޓ]%5VH;gЁ3Y0\ {sD4ap5+;'+R2aR'}@{j3¤~˰2I?Jp!7{fĘ {Y;TM{_k8.~'7g[2 hAؘ+PTaz@h#0I"i*fE>7>"[%(WWPn =/̽Zƨl=<~0(~w')VNs|Q,&?u7ߴ9P#/Ss]TK\jMߛҏԋΨE#T5Mj24$]W[ο NsLy^lO;{@ݫ_-F .̋Uc-DqJ΅qC7%h蔈VyCyz3@8O|rEj@nhߓ*'V^W|Ca ųKBKrTSy3Iv,#A4s»vPmM"mT]5W( -mEc?Cy?Kaݙ  d1KAs<;ΘMK/1 F #<5CP3ifCs >6`|?4{)? f<Dz>[$O;E)bm+;iXлtNigZ5pPп DQƹE ?}fh$ `z:oԂKsOyH+V: I"(،*Дpj\6I rz/ ]bkVQEx1I?j){gGzK{`/ -ernA]m[F8Sp Rzip')y%001$̴=3˄v&ٱSE74K GfzVI4*ȱQ$o>bLWkXuD^{eJ0As:拙$#e%R 7Śli8)m5 oͣ @}hB1,>:pLfT+%/W*򢄚_}8u)dL fy.͐mz?]k|b-^=hXdGzBKJ|("x&50]8IQE`Lf05F"'8=q[FȻg[Es#.ݘ&$"zY:QL,gg۸Ƒ2,LHQ6"ᗍ惪EC\n bP/eNxd4Iz:Qd7pNQA;]M՝d!N8\h 5`n OgW6Y\^:UF˱C`xK~G;G0JDT  Ec5m/@[3"]OB]O>p[lB"?4dsQi,On&1gr{@ W2ĺƸM ddU"z;7 b$ .ģb!NgǗLy/RJ1E5l]"|'ɵC!BGvibt%eƫ!^  ptֹǗ(Im */Y;&aC#&&7q_XBF?W)qj7[Jț]%P2(Gu<俟^@VkV:`M _:{2lDt˶Ev%cӦT[UIɼ 6-e'm-yvZURA#nǔSCv@hVhf-}%H %pp̨&#Nm?]{yTHa y`-) :I4WdC&eSUis> <3mn|.r%΂!YʷG] MT S P0kK rBJ\>f\Izx.X/^LJ3a-h[0S0XM 7k`$?F0Ń@`1ź#$@5n<1*"꯴Apȅz[MIzk V gҗ0+`t͎1<kq=J:[t&3`4xv9\ a&L),^rSEYXrW$As41DDM嘊;gu]Vi*SVSc)a KW0LDۮ ڗi;Y,E]Rr !:ʐnkǥ rGĝ(cٍ$ PG^bO]kʞ2Ó6T 2KβG߹ubi\B9!ثP@BX땃QL] A_rRmd[W1^\ X7ۣQ:n"tp4hQ5lKWUx'WcW2XHSow'Z u[(>sU'voځi0< Jw+!} R,;͕b$KG@iF3hAJR^ܧρW>*HqOO "7 +\Bk,[4 NF-޶.ꭽB ک\" ZŬ ge ώظU0P0Xԝ4rqlB{Z A*8oy󂞧z?D{ܪ`M+I*"ŃG#[M=pH)/iL}F.d$~wp4D0X'~q)v?O} EU:w!NGUk -A-KLSorpHP˽OhSnafCT:Lb}2fܐrPYn͊*H; =灟I44!&ExZ WPS{r * to{7Pi>^<1OrTRu}P H+mt !a|5rxɛ: c7')[X =SʥNGT%G;n S^Y]T׵cRkoŜ[3SCە-J*}u+՝"p&xoMx|q7a5D6ְJ)K4;2OrƩ )VP߯hߤxVgY[myؑB,<0NH3:mWڬ/yDzmef@fTEJe['|s$e&[t]_j8T+Q @PnZSnri3o(ː c|ْ,`K53Rea& JPɋ-{(oGa:Yg>@Y_'ȉiw5b>#5:ο/Å  O,#@nI4y4S#7X5! [0,jL7ԆǻN F~K|?DR5 VT ZWz'+@:Z4 *BBalE sd |?uv}qX ;(pTJ<ЅbB^l~4X}c;UlRqlE_o HdCÍ[A:'-V(]0 cG`Eԛ~Â[MרF+}Z񊤐Q-\'Q`J15LΘ#Y3J008BC;jTC3!̄/A^ѷ_>Jzb.Z w\sNN{OrMI!,0x|stLq&pu'vg$^h9aucvk \;O~:HˑG6 kKPV֧/ܺ " ~3G ɍº:4e8C<e;#ᇒ#{`-+:1A>0Ownҷ?7V+P<=(=.Q VeK40jh}y/ƙ[\*`۩]'0z!?6}؞ vkJ!b06X^rmiV-ې1-!x~u#=Ob[5|֖;)j!կ U0m8 R0?$GzR1۳e6 7\p?<LH0< 0g$oMFe_7Q!9_~jlfU`JFιB+B(Ս].)h9 .z=K˖d,F C׀[Wk 7LΆE#JC!Q'q&v͜VϛibM_,cbk3KfMfd|6dDb._Fw㑏G.vމ!j1<5_\O#p;5v &ZGJ Hқf礑?b_ Z,B=D$6ƽx T.{)-{h=n~ <)+EP"H'-C5dgycz!.]d-:ixXA fӟō4Pxհ9JtpBro w[wR:;YXQv&sjI7B<љ%]m&ߏkO$!.Ve-7'&(f-ɴ8S,J ]:_r(s]6|ޱkȿ+5@ćeLcze5 ~0) h $wUq|/Gv]Y,,'u/B9Q~eS MiW ş' 5G&9p+ XHYGd&V{XLΝP.di-T@z$}U:1@K.; s4H毆%l5VWFeKveECAiТauN.OI뚲DTJޣ $r,h|Q—z_^=Uup07n`ւڞXj-"kv wZTL"3[26yF2e5jf ߣ ò/oݬK \e|_*VwUF%Fsd;7X1óS$8ѵ{?K3W~+w~kU5XV阆&Ƙ>b-ʐܰT=4n+ 4EQl&{lM5yNT|BxP,iV&O@ͺE4ǾYahI$)vޥGt-v1ډ=:0!|/miTay2׺h>eR4.ѫ/@kfm1)(1sJ1_=?m,?aZ(x! ?9m0..H=M} 3;ua7L  .P-|3cмS_6%6Rٺ4%xFSk9P~AnXAR  ~A/ ( <5! k|-iߥ|!o˩ܜ )&f "}m|l~^ESIѪ9!4V_AVIu.iiKr[o^7!–!Dv5^2z,CvoQEKnډIfyŚcZdΈLGh$ɍy1R9,9=E(b)6qqcg: B$)%ea&:/O@I@yt(6$qaѠ-I7<4q Oe4F%&p (Up.hiM驪J$grDGBÇS@x| U(=MD<(%oY!0{L*WG./U6Drm{:`p ^4 RƩ`J$3=&UbK~Vt @JmOt?pYk@An̈́'Y02 u9l>N:Lԗ,fzu5JAc27nx4(NgG͋XjV(*Y\«sέr:;T+IٲS:"|#v,50tLV,a@|ϻZIyƎrAdB1sZbi18O 2DGtsO/ p5u I 8JqLk>5$ EA1ݍLFh]/h%Gp8mʪf/vu@gp9֙9m&a>6zQ- %j4ΖU1̠^c`Z u/9m/)g vuEC߸;E9x}f-̥n# 4J4 09I  +,:F%&`5-Z.7^j-[gt(~Ljߦ=o\G1O9䮁8Ҧm@^D#9ۏGبzoN|tE*1lȥSUzƿr(7x1wl`]qbb_iV^Ɂo~x!I=v/]jQcԟ-ťz'*k]!Z m3׀x\ VD\g6]-^䞌!ܼ 8`e)݊Rb##Wz=֫7ak^"FJTΑ 6O;I[ q CɲבWR,|gn,bװiVԚe$zk(x뿠*>/!悊BGs{!t-cKQLuwy2sjiؕӮArI|"Y.V}R4@SB3_c'kIO>^"@Ԩ[̼VfwD{hjOhlWBeq᪮p/!N7ɺ'v05'֎H;BN95T}pb5Hcfd#uaQ׊7@Ʊc3'eo5ט/q'{A"Z:WosUb he0~_@ #ǝj .s "zg`lʿ,*]Yd9>|=5GdBi3V󕿄-u"4ޑBY 𢼘`z*XKBm7HU2DVfsX{Ruk{,̺^BFdȅ[QxJ$u0ج8 U--'`Fxmn]TmɄDVv708~>ʼCVFosc=4GCpr{]#}PXATgNһ=M"|J`6W}bPD]Sȟr-ɟUJ|XOx{j y[籎!INLeTWUk! ܄wfh žVH]76L*hžCi->@8!d4ggWim@#3=eBn, fYO5>R,F|њ1G9.6@J+xi@Gk=M ˽X[)PC9u=rǯ-ȇH+@%n\<6eig 4\o qɖV1:[1/`ul׋۳hYuݓVղ}k's-LoF FµeP$; ;i%3ZfsExOZp$Iy5Q*HV#/+0_*S6vG15(tVmdY+:', =Lhx r=Um1Rǩ:gSkGzB}T<mq%|b8pſzwƤ33%#62fm(?[aӓNpt40U2PbWK%yjf,i90˦LDkWG 7{?`CNV8a176Zv^{27Z-JML @g !'. 2-̽eI b [O)V5iN8)Kl/CHQz<CR48i*M~~ ^f*0gyNԹE5J{}Ď}Qx扬>!#r _'M#ZrilJ cXZLf)BK:ValXkmfO{ 0^g) 6 ěBDXϛz\-}JB-L`ԾRtrGHv$k&GWr_qh9,{CkD -J=&H-g}KXwV詴&iX /eù+/'GMI 1:~`D?\1@ݮ}MXm .st(<ES!}P ;E#A>(F@!bS6WPӂl1M2LZn! 7..R#̞}  )j?,wK5p?txN=P8/JjZkl8-`Y9V VNM͎0)[nZ$S<+#|w6y#Ɲ˺U1tpDq[nTQ ?qDgyb"  x Mu3:G*3<B06>)9ܥnSq ty#(T bT(?9" YiddU&v %䉜f.R#}j q^]iȚ^Bprz Lɦ jB !.x[ǒªv{11__VI NI [H-5ɵ=9az1GQ XxٮhIC$jŲOMT̀R/ja V*| Eܭ(yrLXJ^)^Eh+y.eP VuY-~"8bo^dv-YrJ#*z_A{Jx㝜s$b|매mh߃٩mbWz{I* -f^FY16-1]IJZb#Y0wۖ(8N:B*m☤,Kd6-D7.r Q^; | xNs0j]9TAƛ*KSn.bdͱS`)i)AHCFܬ>f`5P[97,mW9 x}9Φy2!PI'#*i-2`"%]ǩOg4^x8j]#Cz^q\R Z^_hKڞ4i>h|h2uX&r(9 j& 9,!TkBxcj*rVX.äE c "uÀFv޵g?y "D[""vKJehݱ*)EBpu@ (.6ҐȞ[F7|1`9u2ʟæEͽUi]^ zOcdyE,Й讯vefR:vC9^LJ#Xa7@Ɂ[*>ul~N c칏dz.EzAՋ+ڑOXQ瀁ml'\SFwF,Ho7ƞk;9oB卾&j(?7.*ueHoʕ= K&fcad!=OArЯ(^`džz 5k9:ddC'B GS%p, kjo_i񶹒;( wl߅.rx?*kF|!vB׈3ԔX*# b!- &ѐыZW#t:wfގv+kϨNdvc wP5$ЪJ=x(Gn.X Yg`qEiRoߓYE"&=:3z+vIt1< z{+ y}R܃&"2Z|S|vsl]=ŶPe䆟P' ,1g'!_>Ö(%J:΋< % ZR툞XӢeWW/ rZtYύq-E-S0~vxq}rdU+hcSnJB/<~M(gbШM 7Z+N{QNɚ^bw Er]9 :XzB^aU2F%jOZ6kVAR:N:Hʲ)#4)R PVhzUmqv xϱҭ 7>n y}3ӓIw-"RղL%$=bd$EM"I33sSLĊ=b6ZJ}38Th*|2,%0`sRy)_ Hgu + 70P*d|'~Z"W4:1gJ:^*tCƸGˢ~`U=R4M.{5RP(~-=D;l{8$"6iҟr1,p=Ml0/,7Z@bm VSOvym|:0<-`fGLn?dom916 5NQw@B`2cݑq v`ʹb~BtC!_rݾGl }ba_"m>X޵L5-{|Q)qʲ k4Jw\ih yQH#@^/OěWz48 U>B?0]w뢩%[3{鷬7&)!Թ`+߿T_]|@NK h#|MMs/RZk乷ce;H(V &-4ʶئt T/|Wp4DH1UX*8>%s8s[Ǥ: 4]1-&|)!XG%/Rxztg)yeeQ " 2EH:CyVMEqסorRTYx\u>ggz#=Ts(F}M2 [y_A){x-by[޲:SWMTP`ZRD]} ¿?P;s-D 3VZbw)k: _rbŋ6h 8?uFVeC. w ]"—jWo)KGCiCM%S gX8cﷻMZrO&G2P6<$,'P'O`(K:mhqTx5ף͢Ѫi2PD9bSGu$&&gQ:+ >#2/jlwѭB\':&mtҤW|!yٔ+#5|;@nu/.(AϦ*RWk/Nc;\aȌhi,LHnLă"RA݂+QؘH$>`H۴;C̝ H$^Ӗ`58w"yӪ<+XV]xW)bD2P7,qKՠ/WZ0g=_Լ pJU' /BzgkWT֍+J++ ODR #@U_:# 2lxNA)0L"?ɇv =%"=&tLKŸ5ȡ;nOGeA)e}09K)x V$V 4f|vjBdgK iŰYTz֯qAgK]&s̶ k!&7/c'D ӳXG/EZL; W`>:rhx Uj{H$B54u]سaH#{Գ d3% _2tP[ؼ ! ( *uΓN]&Kts3N-yn2>\ <֎j[ 'j:lhëaNUKljD}"8vУVкݖ;A.xZϜ-w;kP ߙES!Dݵ{Ԡ^%Ն~j`7a\]Fo: H/ɷ41|Iz(3->oq ~`pQV){wƱ^Rg s4hS[F,B1.me~VGmy&?=VqMbYxhԹet>SUԡQ>3h9NO DhY^-.[B fLNN\h`T0˒oDq_tA0;Z= ԅc{ W`oq@F%W`nfE̘N}wv #{bތ ̳PzL> }+^f?q\7  ߥ߼:r@PH>vqr+Lspuݠڣ{tb!W_z!߿M$QQ Л l ř 1zܱry G|rTNY&[;lϸeˣZ?zέI>,8fzf3RjcFә`RΜ~ـ6_r*nÈ/[]t@WL1RTXR5sW'ZTTʂL8#.|o{GH%WB/3Iod+zm ͍ \ X0>Xs˲@Hc@K l? qGL9,+mzsG3S(W[:=UfrBg j9 HvD$cahR7z%{^/HlՖ]̥{AAPd8Yon:]F.,kUf+K40.܍|0;VޙA@C~F|31 > qЎmi D܌v5nYI-o(ňdѐƙV7 ɧpQCvlGG8 PԤB}'e 'Ѐ~nd+I Lnjv qk` "!F:A_Ԗ (o\'W 3YWuӘ 8\FkA 7)Rw6\8Nް1>S[tbq&-~{Y:[嚍v 9Λ4>z dOQo E!R Pbnl;,/:+p5>/MJ $F~rZ;ޯan 5jjTe7 GsIrz}J'iZJm=gVv^4 [%$Gs=v" k>^9zHq^WX1loν|S'dͶ5bRI!-N2`=qO):q5\:C6LrŎ)Я]F] KQ\ΜK:X,eWoxCdZ6d0ifTQN|eXV3]~<; ?jѧ.HrSg܍a)1<=|.'ݠ91d925 $3͠KB ӿ>rrmA5̄춚rfdez&>ڃt,!3; b g6S`X_znu'L$ۈe)cهI ġrqb,^T|]Xm;^W_^-2&:C L"N|9-dW+nןr?k#օcJk> B,:^EF-*aL R4RРӻщB`q"Zdd c kf'x4]e8dGa7_'4jau|Нh~ٝ;9/C[t \fIͨhufT;Ii.gz1}PM/J n+aC (D()gB&t29XR[ [DiiabU=őv;QrUpmbq{( ʶ / !/`[qoTĠM~?Ȑ}Vgv/4.F_堎dd"5|N_[$"i8ҿj l-65z3 CA*#E7$dCD0u$( ܎u{Mx^àI[BQ#e1bF(~HvP|@5WU)m0*j݄VO_D5qHHNcxM#.S3o}&/d5y㣶eB銗᳝hoSXA̗&zv9^$k/f|Ptz8h=V;n(Hϰۘ`z4\Q5v܆䀜8W>IY56<(4<)@ጾ J {Wˉ<%W:zK݂G{]30+~| o2 #sri4B˵{A8צ0#6&ջ~.))BӑE#HJ@UG]ž)49}ʯKff[ûy-X2{Ÿ3BSLHHf0C@Q㬆b5R0%iYsk ye=>^MOPeսv{.PTs`ѯI>0Nz.JΔpT#t L5UL Y;Ј4DY,[,Of)˾Qda^GVQZ=B޴C,v0f3e!husR <8bR;aᘁĠkS5)ha"?Ly@UtQgK(P`,]nCgQ Xz uva>jW 5w  QX\S 2="y_qx> LnޡAr}BSM&#Jqf@<˴=4?hK'nt-Qr.5 ~ %v@mYDb2BO$YY5+3x}񃙦h,KIitը{}?*2v:g^7 &ŇIaPQ k؁W:n|rh{}HyҿhIH_A -[ |)m~'';;fCMy@ Gk?%V'PH,ظĪQ{{WCAb4&yBN[).Cf/kjڠ DH~ mDIPA=& Њc(F:L[7 uaJbSFU':j>->.r`@iY軃DʆCCQ vU1[X1E~猙Zy d ETw!X D^H,glLԓ_.C/e553Hhfx*D]h+II͹ F*{?_Rg nBa˸`W.dxb,ݐ2ͷ4g?D n ŕB.4~Y_a>٪fu!4܅S[F,[hѤMڣd~~AMr$)"j=,D.QH~Յ@޽z!,d!ա[VY Fwו\XyeyrD4`A9N?|G׽;4::6.,9'9.%ݠo8@ ]IO, {`bxOAtg7ɐweL @v)/VO9wW:<2D$?|Jl1lt@h_oFz@ѝ^ k&p{Lş?F R5k=_`9nI^z%Eu0YE,LnR`4z ˍEggqۜ1]aE^@(I$ $ZdD6ˀt^y[F.lrW`F_qA`z3zɞthT% [pvMMA=q6aܒ*NJw 8$ζc M&4<YPfU>C-rWu՟{ԄL; .I'9.1f~-pS>PN7V ulȭ>/qz?r}p{QGbArPQcТ1nm4$r_4lM IR멜r)c8S^u&LQEQf<8woh"*Ж %תU)ي j׎˪O!+IM}`;8Q >&;W$>,-9wr]cV!Y1jVI37$Fy7c40Ao4\=ԝ4)o5A=ٍz+z3Bi9=jxG aWAb]jL^ǯ<+v}jJbZk'hZ}6(okՙ# qNL5e\ܲd`ُʣt;?*_E(*6eBF^ТxTir1sW6nʦCd)ZGyVYx|0X=F 8kÂHKIݨqIɩpӗT(7^'p T]hb0FW  Μ ,4" ?j =1w'T<:O jڮߏbqc/G(a SBm~_TBH:B ˋ[ Oi31uXDB*4_WArhVo_}Y>NR5FY=E%g}14THA\_!HlH*#su%/R2;#9a"NE;I.8~W衝mի2)=,tva9sfs Ix,@I n[yw$SG4l2IcQ4$U]`%f[Ƅd ͜EU hhI$u*KaS3[$BV=1ȔաjX׎ݡ% 0c!q+F;WVl%0'Z)uO4%] ÔsYE]ٲ]fޗCHo!:/xkQ[+/ m扈g-ձx@CֵȁnCd0k0TP*ecS_]`*w@sFC߻!WqY6,/~A"N5t[Gi9ˑ|L_Pn~@Dұhyj\h a"T>ϸla s,!?>:ףyŷ]滸qOLɷ/vDQ<~$߳ܛķ4˪Yá uN윱#Ƭ1aԀpc&85#*'|W8-c,Z{ .\zQ!;<{X"guןuRHWe)p{*+HDz#E;Ìݴm ih'S&O5:$7^L dKp6~88 ŀ$r*eOgw2Y[vS彮 km8'Ե|[ńS@״mN+TwO M2נDh5E+Q![p [o'!4`<Ӛ&y8"Kҵڊ)ýeOԀ}`A-ƬhVt1}?a\pho s'^Ĝ9أA+t;C#c$8HN}і󛥇}dBHm}ъpUe)&0?׉VU‰]nmU܄fqYb.ɫ^~!jҷ}_{9oIb;0pS>{ @YO$1JV8%tQ65ˑOuܲvX`Z=ɘ:HŻUR^v [ gwJl@SaSÒޯ^\ ^k;([xRp] !ͿW {mJv-'.G);S(Lp|k }F&xU8X|GRM3M' O8Lg 02ϩ)}<yu=N> ߻>kvEԿ㓀=3 OB tzCpyȈ,_?:H'g8,d۱a\S&D)itVm8Ĵ\w̭$-pi4(y2}HYA#r |ަ✒4;"+E{4j3!>)߳xO‚Zq9D}d ͋d@b|ൄRUaN逞4m({F2yYזn@Y&vYAyQ[W;^NCms[0Y=Yb F&7aI0 JظJcx cI:3_Z7-|RK끨e3K%Gna6eWb[8Z|,͂B<2g `L첮߇~4Dzܪ#[Ss%MC-?` =ny7Ndy5;~(>zL t" xqw9qr\<ϲƈE Os"ydt:Y Ȋs%?g3c+Ɏ%6,T?Xw!iў`Qkܸ4à }abPvmY;h'"[~g'Q&+2)SbF 0MT ~{X&sݙQ2AW؂ |R/`Y$CjAbʲ&4tDk=z8G6ֲ-w'dՌfjl8"Rܞ 1 );f˕V>c;*]# >R<ĐT s| u s:6pQC!KfFXQטFv=vViBQv]i m/*8_7$$G1S~|Zs:ȕ.xYߎ|' թF)tjb /&@.Ziēom8 %{fDw1ñO uJ-թ5b~8iy+S~62D e%gD^ӊV3 V78T s(nִ j[޼4]o *DREf=1NǟŢN.\DGZVU!MmG ܋!z!ᖧ/⽓HrF/ U4ƴ$A|ې-$  g\ؔe:DA2̔nDn=P2y .i1'z'Y\}h*5g y__IJO U{@ K:F3m+~̂JU;.6І!K 2MCtlO b'op`TpV Tfptn{)|_i+چ}_؈qJe ؂2G\ i$Jsdb̺*ߴ׸_#i u쭉̭_ FOstHq^>DD՝Pyk%t*Fre?Ql['5b0Ļڗ2SBcxs#raOO?xa?P"3iFx$Nv]gbbRCXgLo]m@Uఔ=XI]3fS i*ŒĈ C~O_=9IմCÍ)M,(vAxVZ$&ΥGpcq@9ߩC A2ثW] a:#::=U5S]ް{T~ TAO9&[" w j`*!k 0-82YBp!Juۿ%q$'ws8T9*zUv,>4+uCy0 誝8AwiS%n8 h>SJ Of(U"&P";W*| .VrnqQ#1Iak1>D6~80*u{0{m4WB^<$:;_ʡ-ueD3M\bEKf `tܡrL-aˁw#PV+ H*z"hxӶiz3IE~P,Xc'#dmh8DdWfc4(:KN{^"nz|A|8)|ni!E|t3}EBq')O{'[ZL!brB$;G)g%Cw9=Z1e , ǿ]6-b`YkyWXB`cmq,mIFu\Dn_8+d#&q:N`` xaF Bh-&UcYϟ9t=2: & _z3c/ַСrZdUbۨJB), A:G^bYQ(M$ /tbl|19 ˻+6(k}0u(}?X"qkpSIOB0HӤIZ3Wr~「yCr@[5,ߵ&N+d dU'O(IG! AjKr~ފTՇ.y\ьu<Mjbeq{[`: &ZT{b3Mf;\nG{ T6FAfͭ"ye_,~n.Xĸ[U45jGÒf&5b^ M"+m8lgtƦ,*Qp> F}]f{|X>%:HLe`u6.ရd!͵DTDSɉ۞2Մds=|ZM$\" \ˀPR|ŤLIه &}ug$d#܅QѿW3@jw}Lws0 oIHZgJ1!Wye5@uw #Y[l-XY͘ u)/&z9 ܯŖW%?[Q~$/Dށ#v/٤Erc8La0|hYB+A=5%Zik >ǡ艠<,$zhR o mU޷dJhK)e nA>#Ы,b`e<)uTc/&e49=o?ԎD7Yg{zn>&Ox7x"3B-wD=`E$BBrJ<=қ9FݒŪa< ,X8/s_7,qP!r I:*l]>; 7!<`!(lڠ 6֑-Y _y2>r<~c@2.4o2 j@D gNs@(vBe"Wn7=oWگ]Y!FWy`bsizͺ/8@UƢ4.%1 킻0:D\굛ճ|Y2Ɩ_DB ۵*f@cʊi?!s땽o9$=[UHY;!^叭 U?БbFfE .!X~ q]Z !Ba,VaJ$^uD2a;s'5.v(-bյG0;P֕ߚW)~iv^yȕuj׍Qn;[;.^hTR/;%cIvkMpe16eʙLz)~3QpDcS$nj>T"`.@64JsIbN%_ 0 /M!LfY*Gp°%Pq&A~b9Ivk/c/$`Q9ozKcT#޺>J~4ʟ웸Xɶb7nb gbm!5#1E7$^`#o&IwqԬJ"fnkVws}qorQt Nβቚ-q7jɢ&8Gnj>䊉~尉Elػ!F9?g&Cy)/{mve$*D(v P ?Y˲7HC`j%wyh56"3_UiJ Òɶh/0۞.{KuNUmftmN> *_R6]ބ.}.+-ẻEO"ZyQxݳ"}mz,nj*6/Hx` MR>k˿7%.HAZ[t.S=be_kOg>1D֘a7A&bd7r d]<0 *npG9DxW tNlAn-ㇽ|ق} /zNqqkwi8Jۓhv<^)hՉ粒.{qNсKhS!76->@L}S 3goʏM>;vwۊp[(WyzZIGxs_C W6!^?\n( w!)4nA۫5!if՚IIp~=*ɏ\tUgר@P?Av_ۑ5`7ADֻG.Qk)eg 3Vr;.f֨O(d[%$ mi'} x_Tei ќl0 "<*8| %g0V{sw1 /jJQtP_*Ԩ΃)*N$tn pV߫=2̨>_+k=>%y/gO~ҾWC #hRDVj4QA]"*h^I7Q#E=u e"#⑅Ÿj3͚D%f&P k},zm yש2XKan8P3g>cco:8ꐵϯ+M H6W b]| Wp3zjiW0xw<)!s=+yyfgȡOphy+N(*?-Avc gֆlx>VvDg勰:*r$&]!8,ѕ/?g@Qw6w$3_=jq‡ UhBT&dܑ }Ͳ-!w"sgU{<^@F-Nڛrtt0*ƅVݧFoCiFzyn |B M n//ُ|vɸOhL#6;|O~TeoFH[/h~[eV/}39֛L<o hvJ'AW*FZ.= .EX A[M$W1_&-Rj`ěc7h_pπq}4+VۑE$`F]MJḼ4Ibf3;D2m Ŭ{*^߷0!NbHu%1 '\xlxB`ҿvTn=sI$8@ ڱ-~#BO]_Ǡ$VwGpV|G)?>Uł&6$"tAF/:]$nLg7]: ԝ`Lgx\x X7^Y{p\r';u`,C)A1pdom%S'sK"P_xA0jPOrGs򗫉 haF\8'CqqUibnupCζnIGwK "Ck4K{00,*f&nD6NO3,{¤M0؎T^>_:=W>]M7 Z>;@1ڰd ˱nNih<=N3ׁQ9] #)% nH|_&Ay:SmU$r,\!&0r %;q?O˭:Ivi7gwi f]&뽘MY >KX+'Z74"u#[?W$}[K#3и@O?q8*UcajQ(gc]A+#խX=돹>oaJQbz0S] v.Acogp8?}܄ s]B]f#5a ݋)& l%Qs Cq}w}2^xKa|J>\;y=R^4L2 @o܉CA:SBFiJ3+\ˑb/ո=cPnql@i-x̝|'(U? U,dFH9 ҭ {f{!M)tϗ(I3xJ~DZ';s-ņtN6)H^ofv--v Yc+# r ߓ@tGUt?E'4¡(|]:㴥`Wdth!@\?<w[޷CSZ~lY@8?Xy)PU57`;Ha ƲqjoՋ&mc՚K$V%Rπtl\F{rFT\x\O0yG>goT`ҙ5a9oIdlȸ|xw?:_iY&Z]nL&ZaM΍;`x.0|n: # mY󝂞Ɣz\cEMfUSG&Y۰yG< ̥6$5~Sn T,L.:SzF%K" zZ:G'#)*`I rcfFvɀˍ69D۽%] mPa?$єGcm1T|sMa/l'Ddi т-ec\n`b !X*$5mdd2V "dyi {˾'^N9 FeY;!~BE'VQN21j^.!(TfQѣlGg"V\߮ ?<Weg~f^XQ’2h7D1i)γMAho '$QBT&4kaG(±YWK(oKBl&3kCv!,K&́ppL1W*o\;L2;AV_A5P4$r2+'zvHEʼipcb4K댫|2\}Q# h̲2O@ؘN% "sv(V.6/qZ 6E xYM"3'|X_(dtkКxM@0KH4v.H],1AȘ$cmI D7<)C|1zS?(E-%*TK--"6Oׅ8tJA՜!d@/Fv@:t ̗n,vz۳^%l-`wY1b6x@z=d߄KӖ׾1X  hq%+䏁MeU0s5~qGpJeeP"%~Bbs ?U񾩩﷘.N0Xl6gC\Sqbl@tcUx=AyNܨ:ucgi[ j6z%a3&v@I}p#j$rYV '}&dz}=Lb?/*[3'3!^c;P"95 ,Wq[/4|R$Cy`t( "[k*soV!;}vO=;RNM4sn[CU m:~@dEmQ^W1: S0i`?Α\pVKB[<\ g^4 RslF`n}EE[ |4| C 5^Pѧΰ} 'T?)`*\9y.4" Я<(75B&D^i,k߰4|^yN+@{O@H/N;]aBYJɒ)}tUbs~Iz0̐#{K`9+gay|NJXN\.I=3kDli*a.96TU{A~ њ_,v݉ | , W%04]oqS]gYKHC'7Dp ipΰs@(iiS`ijW7TM߀X<)(E\<23 XJ_CoJsU/-4vKZ 1/\'TRzr@oosҧ/C]D`ܣpBV /`vO{ıA*%25Je%HCS:Tݩ^P#y C/ݑBe'U3<~:qA1iF%YloV3ƌy?qǸjF0JN я BC۞R Q\X5׺&њߊqD{>k[ļg&y:6A`0t yo 0סxfr"q!x-ZT RtlH9}>P Y8V[^%|abO'># C3~C.r dw XGʮn>JjJƸNT+RZĸ\¤d q:;X<>?gYɮBoPA{_^W&_:REgH*&-b!SdhDoz> 1!),:6 ivb*+YI)wSA-Ⱦ2QŻ?4D%pS824l`_2qpb:BtľA bpDHg}8PA+q"cbKNPS8!8RF_;+~,m[9N/_gA#ȹ7Tź(b#@X?ƒL|Oy{FYm(+ B/'F?N%Ągs&0!|!kNԲn\픒e;"+᥊..g-[UC{ kp"*o ]6/7C0KFfRp3GKtɇF9$#KZ͘dBdj%b޺{2/}&|]k-KTEת#Br` ZdvIi+fɹoY R BIf\galFIM_t 6S9[PAی)/ DkL[z,cP) @$S#mR. 8^,#WrXx<*1s~K;Xط4;Q^ft_cOBK)B>}E=trfE@Q5,߁m2Ƹ,ayq̇Cdat)n2h6EڎV=-){QS"ՙ¬b&&IdGERlH {6 ;d}N5͛3!HwTf@ȄlQ=N`4[(-EQdAQܐhcicg\TI,.@vw2"]aryDz)ixˢ$bysa\-s'fn; %Prl2łnJR~> Njk='Fm2ntxTa]xaӠ",E8ℤ֕mQ،}^H$x"/ӑGԶnQִG_V5]nQ!rp+%]#r (.+ah\~\YHr!4sGe9[YIm#{Kq̫bJ MVNK\JjlY&JNKf13z^-&^v] nTa]1=ٟ@Ԏ6c臛ȨLcFNbw #+X)ˋ$~FIo:'O[Vٞ2ˉ{56=Ɵ5qORǍe+$[V!pnPJWB bI9͊/|"Ior1:FvYc<vO[~S~58E~ x,m R BB%eߎl0EVZzM]ϩUNJ)PH3{/cyRS ~FdCTkC| OӶzIhpCz9-KvmQxg=)Ô"8[E?;ډ5I%gqN>-ڒjԡsL&=#JHngH[dBM۠8AELXR%ܷRKWUkKT{#dӼs̄'K/Fc§?/xN훒HPOG>(R"wѬM Иu@:\n-+x`zr]Du,Y>z+dz p\%EYd V܉iƿAF0-^Wks~BMnH}FR/BªFm 1nRhtL\䅘w7-U;Jv fvg%:{nQIoXOH`F֙k_kMSgi:0G43td.vDSt="LCz'i/' cjAy"K&(zXbU﹇TRש]=h¶-:y`!FI:^9vPX}Wf+|pL 0_PjͷLN]{T葒mPGGS5͒>w ]dˊJǧχ$nH,I-B#*HT 1rp֔'B~Іcȅlޗ^VEPW.ysaWB`\4FRy9 ?8)F$b΃NF#X/EZh"r~^AwOh fϔ\j15ɠrSA;9!Kv(}]'F P>ML҄Wzmxz*o>_%V!Uԇ\͞]WzQ %[$rT?lf/tjLI3_$N!1s⽹T9S+1lPOb3hJ FZ]TKubP y7{B4Lŕw4 +!zVekoVTJwjnw/ k DG>|) n.h&9v@dHy(CV-a:Σ^x `6F)N[~A@)Z Xp$GFcP{g(`JUӠ4\1-y#ԑa}n<5A1|hTNE>xܶ Y  zԖ(1cy^X)Uo ^9!>p'T-*OC`Cu7P줺evKb~jh纫x ڕiIc̑.4pRC&F1l?si5N$2<007 5Y6V\ \ 9;-ENߏ>AڪU9d^7Ⱦ= W!l"N d}\|h&/_xZ8lV~C CBuf |>xb.0Xz[7NJ KƆw婮i'؍\qxJѿ@'ՊX;$9]ge.A(=UPǻoڧ2,$`ujPSW0J ]+fp4DX?8x󤁵Qڊ&ׂs'[j]d;|]~&| nW:ΞG[2Z$ 1IG8@v ȜQ>L17ަ7`pZci3&T[Ҳ>qX z<6\Z,h;b:[t=`\a^TibX;%sڇ.ƫU7HWO61ASXhu )jc,bedD1 _ UrG鷷f yAUԗ ;7ivնߚ8`'0ںjDIjV$5ka0hYWEկklKXTg2$!UN~ EINevU2nIQ'-ׅl d7٢;%'.+Seg⢎Y p1mP}6ݷRB/bT,QjfjҏrgrZ&{[z),{C$fuqnW K1-:]hD T#f6SHSA)a^q|rX/:vu0 ]8'sȘA2dIP<#LsB)x?$B7ȱ@;Qr֠O%EY"Zɩ uH{QhYx<HhR8~ʑC!9zژvv`$4{cj}h}q2nY\*}!^{K'vJ -Zb7bh[qtp8-ߓ{wލ%_OOcRrF]R.*6Ed2.W72uo䞟u==U$bvrL(쌏 KnnDU0 ]>! b('ދvQo .*}̽?`H\Fl bHnm0Υ|;gdyQ@JZ Ug179};NQWZ!J䯪>, A|_`# (9jżphR~ә~<6 (4#|JDr~z~>Ct`D>R1CzvV$d{5#MC,QYWj׼x k˘L ݛ-NG#.Fav\bI܆u3(o4=!{JtӪEPQs==o1YG `kwh=H9!H=aIAI:L4iM$vI ƩFg|Kh B%x; P;K ̀EQ;7ЪgVTjˏF'=,1쇝c'SF;PΙVqcTo=#[Y`3%N5K 2{('N(sG͚Eؿ[hf#,Ψ-)VK/noPjط$M=6;c`N5!G8Ā.TyxR8%ɸWJڻؒa5إ2-h])8-'@B,>ZP]}-5n tlr4pF 4;*Th䘳܃ĝTQRh%VBXQGFihDjT is`>9EIw^BKAtԵfГ L. Udq:ȺJU_ ZhB_NVۚ<8ް@>X#D){3Zn"ҫҽ?+Јٕ{SY[ HO=ѻSsZMSu8y3؛Z,D_#hW]0o!hfgz*r@[ӤO^ޢ.@H 6}m͙xSõ5m!<{}j' W~-t30QQZLCvjS{PjOH|S/##]gzJڭpS@{|3L41DĥS]\e1AI[RA=E,Q-]5NyXM!a3_=X}קk y?<"@+k]&>⏓c Eb:QvGj|ihh?"^cM Ɏ[5QeƑIHSPNS$#H :``6)ori|vpZMEU~<+EB{'EbqbkOXէ0,d&^Li|5AeAOƜ:dp=;DAvW&LƂѷ* ]|7ȖBmp1 W1n`t u2. >_uFqOGcc'Q=sV5T Q-0E[o{&Ӷm_Q\dcO)_P~Fv52(zaVGvX"f{ '*J.h RlCHd'2qδ2)4eb@X,]~&Zj'3_ &ˬG:ѯ,dOp+כ/m}*4ԙz^P"Ip0zöIT4,TB92XJM#ќߎ5\.f( bF$Sܚ9F} 딠6Hh'M{"dNb'9}EF_R~e'O&,25MҚ2ݘ|_9]rgeT9\e߯P@:PP_&3Ն'5[D:6W9깮 (o}>ߡo7 d' ^sWMK{L[ל!w7|eD"\D@i;X#^k鞂}݉agN6ݛMsy E vd9ef%bS]! 4]m;xMrW^ Zc?& {|\6"hnCv&ۇVtqʤ]/ТSwǡ1WPAe1`e18]Bl*\ƴ|p0uQU_e}c`Qu,*w8/Lcpc8TˣzN-f.&v),1S_7L7/AMfI78߾G $oGw!q0D92 FB){ qns`Sy)R+P0zI q**f@_+ {N4`ỤzT0쬌ZnsPs/ٷ-)B"<xRtGi`dV)ib~ABXVy_'YWcƛzu~K0,f3EDඝOagؙ: ff{2H ܋kRb2ezxr#ipsQ2wkTմ؎Yl({H:_|N`a x"xA]ËY/;0(s#FǖZ2hyGnEt@lPCѦjR_lե&eNQC<;10I5DF~Ϻm\[ǪB\ 8~Quc.'kbÐʒh++ Ӭ̈́b|;cuӇZ*vlm2*kW,AOT)ۓ1{9J q߉7z*`ܴ:~\jMBdPteVt:#!VDR[K () z1էeY  >"{F'%ı =1}Wɴ0Z/p^l"e !Z [髜 7n"rvv`.=fήvoY @ {WPgԌQ$-.j[. 4 yyM}swRk5i:=V.wfA*lu$|~#, /c* ߾XF"j FߺIMQ jaL-T>`mB-)Cc];7.LC& 1 Ѓ֐A1;]q39mq w.mRXj|>*8j[)Yn[p?:w30j3Bqh*6|aY$!/!+K)NjK@&4yࡊz6&PY1@^i`f> wG.a BfЬ֭q׈nJGLi.'s.SRUNNiyфc,)D"6h-=O!.ΑĪbB<^e<8c[,o七Dj!Ps{k{@%S[L#_PqPc "rsR{|ұ7F*nw IU\=[K0h 4n..KƎ8;uՉa,O O s@]<ݰ0lۜ/Xz\2][G-UTJgʽИTutrxdNb? lMˑfTMs ꠈF6s琢 yR4Md{?[1᳆PU-|D) "B;3[]**i+I4 ,)/=z޼ C(q HFB j=@8?I,觛)Cq;\RjnN8_dY.˪{9ty?@^JVoRCxRMp<}"sL=84M:$on%<TCG:@aYsx` d5@f՟ߣo? 'y_d#B`j_LvJ3(7YAb0놕:Ȥ"˵GaozC>e^,{}ivzH!%Cbʵz@{Z2q#ʼnϡJO%l}~:E?E`\gqZח0vCèc,G zz6ܕ4N:B`ks 5dfmYUWs9#[℃͹U\4>. '36Zi?RbE4@ M<hϝI/ 賸V;HLw'#" 52<#TC9/n'P|^5,C^>xuENBAռD~Uv;Qzp[(f5N.^9R! 0ϧ'/\IHR:s0V•B+v ]] Un2Kr. Ĝ.%^Pkv\N Hd1c(|M?[f) QvI™8C#9RCKÃkȺe3,5,Mf?c牗dO[-iW-sW[kaA?y<$ZiVD}~9J踷^wv5!ܣlwF3~Ğ*D{"{h [;lOzH|#QPddup .Ew5hmgA=pLG|'*s0w%8_LwtN{ԒFc?IO9`n5jv\x{JpN\\lbtrŚ/W(vI53?/v0.=4gi >WO {{ƭGϯ׭9X?618rM\uNOM:ޯIYGVU$V jBJ`M89c6W}hw&2Ƀ/3Jjn:3 TcW44lS޹󥏚ȧ=yM%|l%cvG)HGVnx:fvaRk~4]|uML$ )̺RޑQij軸 9q({ psS4i<6e3;vK,/Jd€k]5v8c$!A Ms29ɾ"B5PBUCP"nD|dC<`!9wdNZ펀 {TbPt]_ fZp+ǒS aRQ%GZvy(($=kuf~JUjLbg'ޠ״,*Wm#/qu>#.EDh,+Dj!)hd@J&_fulo8n!!Όj  О}/禪$-j#:'`sYÕ˭.- dM͐|18recD>{^ *V#03feP?XH95,S ;qqڹ0S-r5=f,?z8Ɨ6)\#\1ٌqxR/bQ+٦cdW16+a&@b/AgR,*8~dm2D ϓn6<~פQcON1 9C8%ne[6Z`6^kARmsbʠtPUn xKT=Qq/5; xd%@;ˇ/%7n/ǭEfJO 鉊2%I$EĬzyCq(W$A+o[ kQj(Cyv, +`HR>q]k$#sBTBMhㆲwDBU4{yu#))"SNj*+n?6v$3j=FTOC,w7 4 ?ǭ@l'DlzOp4! NvXDW  zZ?sc8sW`YTuJಀ@n9 51~x%hJӳɌu)zǨi ,!Ƌzt8R6Q<D< 0_hw$djlݵ7}V=,RLi cL KRèH]OޱcŶ0+oLGD6 H'^Cp8Y꿙Ib2OɜM{efu%*[ek5Zd ɰ5-Ϝgb wp`?RH{&xs Q}L~!"X~'7@rr7 ] oGSrwMOqn<3Hm <{Kzb][,ľV 'aIB?uTλ>uчYgNEfbߜ<[W]mseuÛ0~V; &mˑ LCT7WGܘ[z$fHSEP֒)k(z+x'v}j.;D (:ﺜ@ i\ CIF _=0qOV: ~3GرmE%57_O:nek9Dm)v~sHi~ Q@Nܟ,8Q2ﲙoF`b3NK!5gD:A0yQ l4P#@w֔{.w*_TnVtN)+A"&>mu}-y)LP ׎hpۥsؔ^k$k &B,E;OsaNvK'/D+Z"ѧ)?3۴9%] .Z5W!u\j԰XRA+=(_Iԍы/ M'Jc| Q?9ra58ld8&٠.Gp\,OQwEiv# {"d R/ʧTGdxܨp>ZvCw\?<5BqN`8`.Y/3WDimU /YutB TPSVo][5M%Fe=]lߌ|v-OJ~xcox#d 4ŻqSQHh)նÊ)4\ufhi-CƼmLO=ptY"[[:r'"-/r?38G Yfkʠ{9!9z,H;!!lT_Rea_#I`PT QBb֌bxܬc$$TVd( @#ZdYrb`-@s=[Gq,%\T|`AeOb.ؒ VdٶNۛR{%mAM>lc̭QY軻[StJKŞAkC"&$6@si/ٍV3'_=G{$32M2r'ˤDą"_Tg>'$]dv.A D0)t,d;9/N 7 O#N3eAT{:*g?\PUzD߄0s;4Pu%G7# `U-~rcTpwxt T/Cά=4qO݈ͣ.yA pwYTؕšJh ] -/GɱU1yG|G;.i)C_ގ4i;/xW۬1[W_շb%/ocD^Тdޑ-x̥2lB+'NY[+s he̍OQ3Oim  h!CJ{vT3# 5r}u8܅M̤jAcShP,7$H_ߍ/QZufV ؄W"sf ]BcF)%2Qk~Es%?N9@33̺GP쿛Х ٘v!ġ&Ҍ4r%ݠ|Bhp=Gl`~Z B2?/r4Q,o-Fe)ƛ1Sl5<\I $]eQKY\&.HXCk.nM*4jA/h O); n~N[bɇ}OY+R%Պ=|l[OǑ5b顬}io%g,(Gpƾc;?aPIR]NLtkfZs7ZK˷N fv3rN77:ա9BP!W:*w!uuTY4i3HԬ5t*I V֡9dywUGLڃQuA  bkxHydWI;L'"FjЎΊTr><>v < @ NҔ-{)G'7Lj?&Kca$ME݈K&r҄0C׵Ady}5bၙoT#SI9??J GLᡤZ4<;2.]_: Z߃F 0o^)p bfWv}7Jeְ`n!&7:)_8Z"M~bl9aMyDZt ;uPL|kH{P9M.K_G{8Vs5LON]*ZQx=ٕY8˱HjϤ~''-CTBό-éOcfe$Yi| eBR3XQD kYH/T{(IH5~h㙰wB5oi::@N9h2Z]ݹD}*!RsG.ۚrޫ MDJN˦6'Gur6KFaښ Kt( +[=avQ }yBvz5%BA^D3S!z>\0__6a^Ėΰa w{tjn$kE$ሩw1fWnFHQ1Ӡ걿˝IqӔi7DF5G?Uca#f[p?Ӿ]*u_OH}cӉ4xhFoEvcjP.eָQT^ f=OE8azcIg3yRO@30#!͕ Ihdk$T?3Z0tTg(E e&7?eotX!>q\o~gp_H݇4eF<[ ( ~MӨOR7ͥW2ޞzԱ3p+-Fg钾{`3#[A_FӦtozTn5ٷb XɃˇg,Z7M1\2HžcqL K:Ҟ<&Efςzspm="Jle(sg- 8 e+6}S=+S* U}(W}R>ݒ)`q UDuRs bmYԓ׎,93V8g&HUW{ p! V.0@5yLkwY`h/<@+sEY  v' &wP7!Z3K +c"ZI!+dJZ q.8g5]~._.c vCW8  ~lv|J0g9G)lV{ᝬuaE`y}kJy^B]0J)&xkY"'QM^W"fÓ a H7U%-SN꺱T1QHB.<1I qbX~3CnqYqeGȊС=g 3_-WOn&Sj4!OJtosFM7H:eMtBfs^ nݓ_> 6!_]j$@pBDhayWpp65FMD[M`tޗB"^@WG@D_EЎ1/) $ugq00tPFڽcUuK0pƆ Ӓ9_+ӭ\uX,[䢰]k&-A/I8`ܩa&8Y ﭭhqҵ}Ό74ZϬ@#~=( 3)Ǧ̖mbaA̠".K%apCOyxz#OtOo"bٚ:+i 18QGD  YO*BV5 x/]>AGpcwa|e |h.bT$nH>L+v#| >N;|JFV=hk)2B21q^c8 SXJ:;LB{>y3(*޵8>:-/쐴,f .ڜvǗ(qhޘҞ =1<LCEY+wz1K]R$c &8jp 觾c,0Z9 Fo24>I c!FYfK%,zP&gED-Yd3Y_Iص WazWE_)kV2D@h@l0+]?_YVw9G8@il&sP(XU:I6aGfD ElsÍan&r6A‘6X(]O=XpIQss 軴P I'~4nj\<@@Z *q1?z3Mr £{Lecph=^ZֈՔK0S}3Zj.I7u&EvI&.J.YVlMҳJFqF?A$4߳MݜF_d. WF ^([6XA碟2 u|HVsa5H) 3Q$ƞ% ?: V0Ü8,aEW]`ϙdNgf}ډoY񆀟'嚇X f-mQHD1 |콢jcZc0эGZ}ňnNqِPK0KG6M١ꥤ1o }>oZi2rto"3CgG D,y!FqM|rOG?ٵE{"euIŒ!}ªVU~T2^ϡ6/ ȜlP_ { tܚd׶J jjn%&~6ˈU$[Q:4QOR_@}E{Z닊l6sƢ[ڥflt ~iߝ ڙ"p<1|.}Eߍ_G`|!w|6|[Ӵ Lt5kA ni IS zbU4:_IN~Rn.l~~)wq:PȰy9yuNăI{[.A2 7g;Ed<ϲ[:B*ItO/L9^@i?HٟyXVh '-#/2]v "L?s5#8FFna4AXDl1_s/{ӕI$[u-!QmC3g<*P[s_ 2 Ro_b()m;ŧ-cH^z#OgOT &^D6Ǻg?~|C!ԪD9<%['$_3)7S]8ab6H80?^5 Qk|1{^͜z_jiMF/&] c&.UBt.Ỽ3+Ơ1 @ F'_s-(M?;K',V@^QpY9H!od4c()=lTސ (A.dYA⽔ o2*=UbM qeFD-;%4q&JHJL^EN,ɘTY/GZO6%[XJ:2rDv q 6VBX‹F{O9 A_&~.@3L!)*iH`1o}Q"+({R11=Nwx̍OT,:T"w!Ń.*J:brV58Kdy<_U88ۉ SPW׍ywrB: A|Qed:WGexQ]ؗ-&`+'lrrPmf/m1¦瑝Cw8;fҝyӎ*2VXr99.82)~; ^> ^EwjS%4] ehBӼ\ɚ@ڼn!J7Q96Je&lǚXynuκ%2T+&e –R6rdH*j\Zrk{3UoeD1xM9J\CL}+mKW,x޺iW$yRI8qūp4s;"޸Pza#d[Ӊn` @\UN]`ip#F8ykv$QD6DWP,ew1il{Ƿɣexc{}sŻ=d^:뇕'wQ.{kSțjDVqg@`Lc_3l9  PߢxZ\l Hq69$fKdjvJ1yʿ|L/"v{dx"@iS0V(V,Kՙ[MԠ[wt&K֤E@ynaZrVCHJ8T[S7RSqxI EMP^1ԍ0+X#0<3ޒgw9T<.G4;xDBAh ux\˚m_p cƏGUVroOb浾±oq%zm&5Y$ӭ Sh6E7nCzZm }grmFƢCGBc'`</*mcVvᏹ/{ؓǮWj v9B-sY!,8 רh %Yh&+nhƏbĄ@:'ʟk8rz:!1 Ɋ;ҁM6a ~-oGd%Jd}­"{: D%vrHTzbd3=]͸- ~x 0<fju5@iВ,[AW[GR_i"؃:Ğ`UKPA걙%wf, ٗI.tœ D|Zx\`FZo؍nm pbA8ɫ|*:N'wT WVoH4Lhp (R!MQ AK:,6cQp:^^ Q,_(~n2~]T;O/g?uy%z_6M<(Pzj[fZ(:Ы B:S'it3 ۥ:uK>W.ݥ!>ԥ|UǷZJ[Jh`[(~bV&dAvQ)|08Tܭ\Wc bu>[I=~”h;DN tF+䔳[³!\[Ѣw/*C+fuÛN?Ȥ߰7PGv61YX7/3x1 % q 5LlFlmG'}n+|3;FI[t2pӈHPŃ+$RxrOtDS0>[v'ѐvAAuHh&_NI%AИO 3>Yn6ev8>c@)R9 z~څK\K &a=FMYqL)\P`NmysW*Q&(zkN,^aބ/3 ]y&h7zgĮZ4nP}Q/Gv yi鵻>K*Pij0"|du5yg&Ѣ6EO5UVc!B6(AA}eӿ v=mv~M\rZAXͥ3RJ;S^&2MB/~=9reR||=^󸫒]=!10xkx9H-f:0|9⫃ 8mjй k*91ɇoZ#/wG 2^̤y7'SeNMQ&b-~ѫm_J.,I]Ɉ0\vG?TJL6~8t}s#T 5w\YMKlwA>oJ@UHbr#=gc_I3ȝfXR8 ,O@).~qFtԪS~:Tdfw$f"11xe)<7_bD=Ҟ¥E̞ ;- H*W j|1@^`tN u-Fi/л (D4[ٞ|Rɸ담nȔ|pn _aFcB߱>Ym`Di/],vdhmE_vhn#T%ukIHwo cU28UjSL/Z:6޿f< 3ߴtr'7ъ|.;2'SbB8{+%i2&rN1CL̆^`WRl("(n]9LzaQdJTz[oza=!/Ng\qw׸w %_fjHZH{3V$w)/2B "%dp:9m_KJc+q{xl!j Xe_0aN$ŀE9jW@ۃ;pX-`Jc^;(~+E `"4l$.}}Y;Qn37z{?~@צ'sg]tŘd>MkOUյu!q1htL$A.Pk*"l]~-0Ľ "-=7.UacsƮj]&zv3fBV'2AߣMrqqʖmiINnv2saFs&d&6=wz ȳRTEԂ8;jH Z'UIuԿ0?UU5 2ܣKC#X׆HAd<0ql'ΊIG(>YBN.39e+[pJO-q7<,N6R%| &舮2t+#!Т:K|o>sa9re@M .0z9ؖxG>  {-ou,1ǻ};[DYSK!l慼WŖDweOv/?2Ӛ'fDvfHO\8i?0¢oTGѥx'ޔX |I|a?؈sȷLvő-; j10d1[7KH;d <Qc"-IxQ%Eo>FMU=mwF nkL_ށ%pUdF-]k ox} 00k)ߢ]NMCΎ_4ӽ-<<)q4xO%BL4HhUaRjP>x\,T(!&a|G\**B/<7@4qJHv'N=tFaG8 zC0NjJ) ]flF0|e[ipe_p`=f{#Of>|WZVPsx)Y ky+@(q+uF3+ nU)/>"0k#ff0fMO.|_س #@٠LeS#`MI8|D]!(٫s>^GOUmΈ)C9F93Ss+Kvy\gѪ{|J@ETq7 {&2W~ד;hq;X%JPetc>"BaW?hS!0tvU^`CA5PmPϾY%Ggc&P384>e'bg mX_̸'' dI_^5.t *U8k4p`.g&goE> ZgU:t8@n_3puRg |.KFxٵoHEؑF'$A4ݛ$;g mr@ZmֻTVSZ`NJ V\Et4ndw ? ;T?]}JfRKBn*˫UL&=pL$E~5D>`*[XPtӏeiM)KdiL?O3S^Z@q&kana,T{U ܪr2s-ۀCc 9j<:!+zq{m{uPֱyõSM*b2\gشa@ g`>Ȑ2Я(teT鿷!s(WE#M2LdENR -п.WiϵEFDw%9 rbEēgL` RB8!J[$3i)­{'+%gro8i0\Y(ןh-BSB;y/b1w> ;҈Ľ*\YI?^.h(@5c\*4vlG^()߭{Dn{ì6yaٯh|2~-2R):MTrnJ)7)J (Aje-6(JLt-kf>HpԲ*0ptg핓=:9q)%'$5ڗ45A4[C O(WG,#ﴉ+AHaHd© D_Hm0I |.elFh K/3ObiIFFhALVѐrgjb3Ma< ZоS8= 0e>.(aӔ ;ϯ,W Ǐ5 Vl9T0zeH .%L(2R^ц#4u\ddY1X7) YT6e@l@䘨fCײRGDSJy# FWp˒KUµw38uV?2@f>tI_ z NP?sIGvS!oF%ej788 [9b1Ha At2Z0zbud6X訆d|yB?n &_&ȗ8K/#%w(V_:V0 dw,1Fl`۩k::$bE4{m.MBql7el.^G*4P5Ss1`@j27?9g\OƟus~-Q^=:|;ZZqߤޫWN%m`àcQym/[˫^2ZHQTlJ8IlMKtm$VRIm| o#dab#.{e}DR'<ËLbj|h r]#N#t*9oɔ ;α [t\3>Ά׽qN^MǗA1*)Y57>8QjxcGA-\Mb^1iT" C>QTqM$IwІ}GjTc#>?{%Y"S`?YJ#S=ҔzތdIrlrV Hl gJ6cOm켃3tac^HZ1MyU5٩_== 쑫g-9_ W --i8S$9 mѤGGKYu!c/,EE9qug$0&9Ea[) ۃ5[bHa >ptߧ匧(:m:=S?Alod|`il@1b$'R"`@aȝ";2yo~^|Ӑ}o1-PzSTFNAz⑃ ­Ҽ 1le7޻y{"/?%9'|7K`[W_F٣ă.6arrx=/@q=4 N{F~^}jh/";|?"UT;L|ΟWtsnOʾ[B/A&M!U$#ZQMah:H箂v1Ƞh"lDŽ]Tmd7#qr SKcSi+*f9]S)Y7 iD 7U JF_#wOf-1+jM1:fsS2}2 E~l;\1H=vj+zݢ$.\-͗|3}p_#5xLEu7$~R@| Aq%U9t]Gܮ زl=Y^ݨ~A.zFc ٺ?X9~ S. GLh])hWV_ESqC˶tchlkg\BzgHG%vW"/.S'(<q+GB!$}&O;bKߋ.41qֲ|{~]L u|fO(e#So6u*#~6GH%8Qb! e5$:ETZgd8&W9y` M;/ haOH#! |kmka /jV褭rAx#ʡ6ak ,C_pe %V*ʛ<^K 4aM&0V`+(q >AOWNˎT*bd$.C X%X^wu~%AI?)5cnM}Reܽ.38U5PKdɟv=` ͅDŽVM U{#O#f qDW'Tjb g>Nw13sY,em]ƛY>䖝NφAFH w:DLZ0)fM{>fnpz½`:8.) j]q`"\L=RZ0@{.f](gVsU*;xɫ1U00Gy=;WGv+zhރV2,"7|*g!kIr"n(ZMB =.2^\Ps5&2VF!]R99"df)ʄ^$Z]}yZt9/5([J :z!&Balbj-u ѱ"}|9 I]4N~ .MVaH>,4Բ< ǿ@ 0yl2AX9$ځՂ'- U5pCGlg±/Ӽ9q ي&c AmrVTFS2)*轊[+!l02vx; %фsdQ?b2) #.} *l7壘`}i{O=bSQ\@=/#Z wI0l͸a$ }@x:\%crSa.ܲ /:v8# xhluhe'>aYx1jb&$8Ǻէư/_m1.`(`a `uE\~ 8W/HV8Qa+-<>EYnAׂ|{ K {"Y8{y |h+zuUXV9*)Bd%b&.S#r';.W$~kDKѵ"kLhӕB4G `LW)mg;p=\9m@f r+i{Ija8zvЅ7_hGm=w){˨չ=)pNTTX4֧?3#I."ެSy/*@HT;?t m?L χ>F4Q/%LYbNϘD'> #ENj C?3YІ8S+GY3DZR626 WV{4 Z<I=ŨG@!0wf[~+ e eE6~_.~ܤ\{~M {~,2*>LU} '|wzz-B=ekUS pl隢a^ xmnPihا y{oUd9ф)@ /C*<;UY0_3eO=]&]H8fh ;9IcIXo $,{DV cEJu ݲ6a~uFo}SV={ĥ*"P2`|N%yͪǸ4K4%d{;ڬ81e<'zmА(BoCQW5 LM>ҏқ7jv-q2Jz:l8<&΄IH ?;k.t*"zxr),.;0XpJ-O!DjxCRA- ڢ,D%>*Op#KtD^Db(<)^>sa=o ?FFCNI$/'_p2/S7T2dqGJ#q"Iж 䏾[DtW/*Ҋb?˄ m LhrBAV{%}x^`4P+L>[^9urd$I09Jjl!AC:@6V$&1)o2O5O_T|ۻO'٨P{ҜSU኿x5Ƕ`.xbQtŊ6ջ'\<oxRo)@Csh 'F'WUyo| a}=9If`U]9(8wZR[ 1Vs|VM̩o湳o%1$T75sА` ղߴXk Xy)Zeg)휯o_od˺Yl:LVK:vMe *DuTc0ք!|OA2{L6j}rGJ}>KuiBwdFR6gVv8(>K>YدCwAT(f^VyӉomOϳORb&bW*9@82%a2:${?ofZ!ι:Gtꇡ,%I0{, s16t٣p|#_EĢ`/n2U`s6E( 3}Z ߘ%.J_[)L\>ҥ^e6/هb :xUC'&< U5`P4[ N}iͼθ{v?hmG z ͔Z8i\N6CEyetf2=Rq5!rݖԦa" p*pKOͶI^>:?a:Gq^e,Tjc`3A ({%%- zmT  lj-3y_Nub"|=8IיVCR, .}_3#W \?#E3i>ͷO?gl+9a~wx6ٖȫ|z蚧iu/ʸr)G_-}mu1Ɠ=<1}W,Vn{ }PcP@ۢ⇦=z3ú[1DMa՞Wْ<fnD ^@+qD rRHwnphxVT>N XƾGi]aYVi흯vNH6{gP]I <MzC0N<'.8Lm7Օ$݂yɠaո|Cv&\8@lw]ެ:V}ѕ9QLRKӤf,y^b4T \Ͼ{>(HYO_!\&S7^h".xNk!X2P/x{ZhЧbb|; oGyne4uܶi.w;Wv"`b1~r}LqeoĿ(ĐMݶA1Ň;E!"Nn|q~7JCd(7$֪'kgM=m=N8q2_.=cDЭn|`*c'v;ԇ#a'P⨈c_~eЅ}3uda>T}KOt!f#İS$ҥ'|FڏPuj Z#¶=7I:`Tdz1 BQ3ߒyMmpzHҁ  &ֲY/nSh:dbZiJY*\vA23uMxho7soʑuGD|;T+<߁wִGY2q|}P߱}obevQHlf,#z+"K%/g1WlǦE9쳝 KV?}Hz0<1mԎH@y$64o'E Jb N"'_*f$ +.0/2ar|<@zf<ת=Md’$;m 0"BiR/k N+ѕ@t>Jf`Bܥh=4"x@@:W֘3 e>@,KhU%(xMoL{-)shSPU} =yD9(v. '=áwO b SgJ1d qH"y}z)5"}zx׃.^0Ş`R[QJLSdSqnʗGo$ݚ,I8_6l3nиΡkؘ @d^k%`4Â=0BNۻѺ'ɛ7>`)h`-GA$wP5 'ϝq4~~:jT?'tKuGe7[_WɎj|h2]塦֦cN(l$;!<}*)?4Կ.6H&=Fz̹slW]ϸRk543Iyxh/1MRW HT 98}Bb4PM_ kPu!ۥ޳胅os3T4~J`oAe3[B%R!G{;vhUiMel7qh7chBM <9jYֹ٤p:j+ > Ǖ*}BnskERs(5uCk>@XiRJɊZ /`/X2 =p1AjF2^M~p <ǰj,&WM΃r@ I>c]Ϣ9)T`=H?;J+8܃߱5(O#&y}>{LT7-gՕR}ch^dfފJ]>*oRBN&#}h{*R]D.\Z܊DDCXtrjpq]R4(?7=I4#)1 كz9;瀙Av,29ΙR16c/R ֻA%E.5_9]ɤE -ȬqZC#DI*i^zhhl] L9jfƅyȲhԕ2F^/pP٨n Hʇv,q$Iw4p d+xȜ*rSEf!xI!AMYO%ߢ WOš u GpWVgL\a}]2ًԧ%D)~2OęP -󛾻9~-i+UGp(A[]ŕc-PiuE?OETo?B˩R%R/SA~顓@6([Fٻ"UO y".I1r1;v)[_[V<@v^gK" 1TlE֦ԧ2*"n$ cnAr,⬝p{*d@B<_}IET9ME/FV!̍?Z6 ` v^4_c(٭aN x՝*\V1O }EO#uzmvs-C1j5HgBԶSk.N}lvZ_!k} Cy?4yPYd2t؜D4b A<, "-hضEB/JG$C|h6%yp E=S89'D+{Lqca&4]{%"85"ւ!\.4vɕWk#qYh6j6Q#z?RbT DmS ͂$V2LGۇ~Iݓ5Ih<;~O\] CFF#矱(k/E (s h@3ExK"I;ZGw͜CAʲ7^{jjP,E6M 㟾2Lz9W8!lJbLmɛōC{0c>B+a_Oҭn5Xn{k. rTꌮ(j:,/Ix%T1W 4>V>`Rω4y/\*,a5UˆA_ \]&_+۾]<hQhԱ|)LM9[Itl^}NK@h"jRZTs%}zIh [aI?+~&yEJ0+k02G~ >pv /oc!Hч3zDH_ `D;׌2BeyGFGLHFcA2^Pkzm/uK}uӎ8.Or[Xt+54xJ>n4lL:Iu}*ɹ xwf&OPJ^{/OdZl'/,tIqt}xH+ɯ]˵&0Ou 9dv( "R- 6*lr\6ʋTF*<6 ?"p8F1ױmԽ˭/ps"UcaVe BN:kA tpR$= }OopHL8G-nvȗ5_W>[ڋci66BN\yNF[;d\ `՞m{ -#Fdk} ɳPaUW֌OãU \g 1GO2 Ig1B򬪫CЃyH0L&IgEPc60eYQ\TttK9_ņv &=_$; =aD4 U%q,%Smƽ.H7@XuD_ژ$RHuSY\q#BejNV3/H}Xͧ_WWvbAr;LUAzZ}Vt.@V<QmG6V1kC}uvWḻ҄=nzyn- m ?6reUS)A4Vx>N]1eaVK2a^zq4DRhɨ(#<#]+@н}84QJ#{=r_f9oDI{Ѐ|"39IM҃ cyA (QE8Z]:dVr,xK^Z>cHNc[`7#+z1:peyYԐBʾT'}27H%FjXGSm4L#q1uϿIB,z^0['8SDAwg'B7XpC*MyԖ~esiW- r$1!Q2+5B"q$*ah{MobeR O|Y|#EP|j%P'9{"m=n1ZP+=z]28^R1~%wyP2;;Ϭv*]10Tz?K-M qHA]ҕE+NCqxކC]G *90Iz{/ղX,[h})J&׶yؽ s,xI%,cu}01Slv*T+-<1yUir6G نL?9ץ0^RF20C:+F+sc+ :ꕵ2iL, hhy50R,pcod`Ni,c=.6=>Mk_7 ۷|}Vq`涕Y0uzPŷ?YveΘrR |sbҜ>Js1JI-3MpeitJٓXqf|# HsЭ WAWHG2|qnGHL bux5'ȒŞݛ6mM;aE rA;|3 ^fYvD93 ˻؜\p (+)Oa‰(-YkQĢMLjL+\S5la OFStcOV[eIDlQNO%KHj<) |uR-__EjHgX3 &Py3rA3kNxUr{kD"JWWχ{fO,nv*0m{svSqMgY0lfu˨'Əc|(A:ygn )N_12_r240kIf/|rΤ(iK%f#dxtMA`iA濯d&L ; eMv;;;VL~$/B~b~ &E?f+fMK&@e VȎ%?8~T?goΜP5@>(Q*ۋ=0ۣPNf=,X1a&C)+<[hc-!Ɋ+upC~Fq/iO3NiB!5s)P BJ$\wEYc!tk," 0.vb{P$j"*b9ˬlŒߨa&U"<SZ 5kszeNO!2o(rE_i8;`0a CX-{%c{vϊ䆟3J 4CL VB o|)޺m0RN*#Z ݄ ^w`RnŧDm-Ҥ`EOj%Dx?m!#?P׻ʟߑ3xρ]$fh:MS g Ƌ ^)t(\W-/?"K(>s.hk띮O84A]r4}Lଦ}A Kn.OԲKy߆*NZ߶ ..3hσbYyMTפ*T*g5Ȑm˹THpSەyJI#B5Tb w+H$<;7/sYxg=Yf#fPN{%x\  $kT* 7nco;lF5*:/eG#DgJdx-VS[zʖ7,g}jB1cF {Bv|Oq߱?|k2xӋeٟ3TqO !A%b 3 4:R!r9rp5h6MR,˫Z^d~i*Wݳ,b %2Od̵!>l7Nܕ 8}ZP_*K0;z\ ::?#V!+" Xmc3k[!`䂍sp'~1VqÚiy1p ؆1~V+S:u F?rȲ4ȕB5֬NKFc/o~ h,k|.J:taDʺÛ=;k蒎PiX\~QP䊃/hl^źYhQe^9sQIW0.۱z`Sg0E`UJez!?B/`p.``W#09:&AXe O{ y=(a}W>II.E 3jg`wX+:Ya vp1he'S좸7B :gr힣β|,"Bw4O`Ya'f5Ѥ٪rŽb}1۰4+gbX\&$Sgݠè7GP]_t2j$[0$lt=tIAp`ݽyTJ^V|$pw>2- ;xzD+Kt;x*ꉼLnڻ{g9b JKF mK%%W%ŷ:q+FWqSج%[ S@oTq Fs/=?uud3IiUі}e#bBh!_9W Cq2KfmVgS%m%-ep8wR]:=TM Ý4oMHFXXHU]GMLY#j;Zow EZlT'ÿ <&6?U h2?FB2p}(s9Kg,ͤu-Gy}ˣ*4CQiѥ/Ʋ&L*YѦC3*ѓMk!*{¬ 0 J!-8,(9]9J]|AeܶIpTP6(dB3U3C' a1!=,F ;ygXHh '餻|րo n>Qy %;Kօ ?U{?!5 㵲S0BU^]-.%f~KגsK 19ܐ!\ ͣC+.ѓդї"Xf߿ ԧW],]8FJ_5XAjE,eG+nKl#Kk4ǔ|Do όRhim-(yiGnpFwF6D2LWYj5qGa1U`9 nG.&h}F߀U/sIƒ5kAG"]ܳYer!R_-H߀)MtXgLU ^`y!s;rb=<[ )6J+e2@{_kQv޻y"`p-0Ћu_,4a"Uwj90OApzeޞ9s3c=p*SEpyEq0`I=nޡDhs/ވ5uwe>~ϒѯb=BP񧸖L?WL+z9f>CJ C;*˳\{2> ?W  ."Sp3d0x{~M/D²_CwaBqϰ_eк(aSi"&Poh29ŅE@d$1&zn>W/ ٳ֊٧^=86)o)v.7ɑA+(=RƬVq/h}K:AKN/.9b82,?/!y mC9Ѥ pHcQ5wf ۬;9O4遨vh^ kj>%{4v=S1ŵW1r_ޑ_e|!PHm 4[ +wL&"L]P>[sΝ]8$dQYh2By'6>(oHN mH N̢_=6!D;!}=6՟k$/KrGP@ 7BNp+gvazunZ/kn7ӥ^W dl*i1S* H@3G1>$ƞ&gT7x;5<n  ؾi ۑfLFyh헓Wyu1Xhó)C^D]L߿v]*`Me>Ic a>qubK]dWY$Gދi"z*=e:6B,R#C&f|gNߺ(uy1n,/|y{8x{T0˖==gC|d^׳(F_D~s"{d ȉ \_lZF{ 2k1(K KȮ<7)ޏ\= HLDdUG, >9TO ħg4@Vo+۶wҎ%Yr9(O_e뤂OTY˻"ztĭy0rs. sL<:GIN?OZ=Fy!p? @GZNvoP`M#(qW?$NdϠWFѵ;+8@goьۂגtH!էjEUY=׬f:cJz<#ѦT1t\6W BO Mau`h@нJ [HS{Rr|ƈɳ Ej|\ nj V,R@f59CM{dK[+C"8N"q]:xMܾH*Zhn[3&aljuv-O?zgh7S]C5D}"jY#wf1#,X_K鬿Z |Ocg̸JBQ*Zmu#a>hDhn UQۛ/{``@2z.@hX8qWBe-tlT6 e7sȸIm䬉I#KCaZ?Zy\(i^WKtfaR$4 jG!cΑcO ɤndb&I u(T`͍c0<؀kA ^R]cz>~pl'FQ] 0Ԋkh6PER;6UڕԅGV˩;}]yBG_1wzW"Fh9,^-G]1U~1ro+ YKmhEmyc%^1 nBpْMo^cمn5|(;XΪnSCP˫B3;a|csEMxd}7`|'NꦼhOljQr_M/?;yJF k}ӹC^3?*$2y\d! *ҫ?цFoKܾ#lM <Va<2usE{^RI3 d$OBؽ_A|k(:b,Ԏ'ıN[n! &BdlX?3}7?kݺH,I?M$? o%%HE>Ul$)&OjN:U-A=>2Q@sALc5 hH!u#X"Vj]+| ʅaʔk!lq̑+I4YQ7 ](zhTIjj9nY Jsya"03Dg" Xo-qI&ؼ|\̟/q)Ц`9ʠO|ۑ+s2-oI=e_29\#;KUZKz]UrVC#e!?]zYV?~54 fOtȜ\b?gT^+ m栳(w67m2;, Rz~e>)6'7W"J#j6.Y6F  ) 3b.橘Y-F;S0˰$8xjTTmIbvՋ1ADoK.u1r.YQCkÑ\Ҟ'WX&| mD.0ME72'ƨ#?jV.R7XdRy'>t$bs4%ʯqW5&?8eޞ jOBI+})4q5j#}$ c+d6HPSTSV/EuVa6m_kl]R'I|BE (/%>_:$Ruؼᐉ޼!:Sq߁a]N~pU ;x-ED*J;/yj2T.齔:oVp>? i\]JTiHF8LёJR@ju2VEz2(]!y}n( &q Ga{lh} OizMbEg-I_2Ii Ǻ~6#T6 /w sJ8Qo#T?) !p.V?\EJEԛ e"+']yO%_CO2״/a`.vg'&szMVD(<]'=(J~r{mGʅ w]YȠȐWlk=Nq.9+[yw#P 7_>_qzT0jc.Y`MW$$/>Sz&^HO~;aPڒQ$x8ѵ(}hwgE^;@Ɋ8[pEAٝbZȼ h♇/ shd' *q5]ֵ1భ_>k㚆bo~M6Iѵ?ug̼5@ܯ6SP mč7|j0xpqֿ^!.45n mvfFH }SHMuh0HS RK9 ]xο>R6Ma\ QIib>ZoK6A(%ӳw*UG|7 {k4'Uv?ќ/p (ܚ4y ͍CUoC$Fk#mȋR9gqLQ1m$U驣#eio {˵MꑣIX 1ΑpJoo n2 H܁icw{9x$,TȖvȄ\_iʳ 1f!lg[]23@s2v]&9=L|qs@T'ca]-M4scb\^o S0cF^&͑Q%RL5}'c߷p"Z| yfmyV!4%7=LV7'ug2Gx $+!ȟ_"y3[3jx&/M"4akv:KII*:(tS#< [8rfڶ :}X¿V(alʧƐ' |#܌Z%&@i| Fk=-ڌPˠ-V yZ2I~(WHHc_%uSd48L-xm69j6 g*|CpwJ$V´6^8"qL<oNAf ҩ'%֢78\tX1h)]r|QK_-B3ڣ^ mbt$TJl-0 b"cC&BքG)z gSz*4]קHlMe{-N3Ax4sruL%"L*V-}\o2M5㶔OslbS6[]Q0MxopX 0B4Wi"շ0M]r͌?"}\pMU^dzA֊zު!&~s$ŇE3/xzrps0r^lDxk8KihUڭmqiy#b`7 Е$q"M/KSx>`ŕb+&L4rYA XudkWRpq"E!yIZCT,#YPEiY n *7€ ngXOf"u`I 6P7NeH])C oNפHcGHFpV2UX +,x*g8*Wg2zEۨ>U/2=*6'>@׺"r#pe-:Hxjm]M``#%JyGzbȹ]vʃZb%<7Kr1~0y&yc | t9^8̵F"tL-Í$ϡIϾ?i:0p3h1 Ͽ0i| P|XbJ*ؾ OgcDRF}f{e"mn37KJ|ZazJ'22T;ᱣYX=p5!kfKha DYOIcVX_g_d,JN™SnD9:Y'bVV@1`.EK7Eɂ6gX}I'%SҝeCcA!?q#a#SF,G2Q=W {İͲD[(Sm~q:~I2$%msP{$UaWnfˊw-J넉\?uzYOp⟇kk!Xl9rgJ33Уqk|k9mpwur<(O@ F6/ Ozgka;nA#І/9OhOCE:tDEih \阁Nsp^z-VB|j°to!YGM%%x. jώ l{f4fabgfG.c aUbf<0.j^ttAs('· N"fCCK 9k9A;c\l606FF~qyv|͢fG[Po7&Z9pάv@Ɣx̰ 6w0TɃ01~.>YVWcoG&l}Պݡ#GWX~Ш9hh$Lޭ1l#駕b=?v\@)&s]# 8S 4J74H%}􌪚u zlrrhjʡmk0MJ>ܨ o(-H=p%Y!ූ,/ɶ|ie2) wX/*2)Tz҂g7zMs(ʛA-bj\O5%ֽ[i DF=74dhS19d[u0PN{9 I xj63*Tus?`}u4O23w+y@i<}(6 =#o 93qIܷ6sHV4|IB*`N}l|D10mo46yQ1X"eK3}N3#~ճQ%LH[`6 H8XF')=S!9oz!Nx˧$䳁$ߗz0w5=; ޴/*NlIAv{ܶȣ^+ݦV'ۗlvlpjh>WکGd<!؜7[ Fj0C(l$.#  |E44&b9햯ٛ T#@]֟tae3d<݆uS.䞂 >2i15"beJ*#cwcP']esѣ;3б@{"Hw2CTFtu.H%Ӧ+.| \GEޜN}k\a(b&-*=I2ߥx]"I6 \AKX}Q5!ݨՏy,[Cs(`~}[w<2|ʔ+jfU>K0oSFL !,9B{" Ww0@P >,xEzJk-\ӑ8f\;}Ptim#NC5CWL`oǰ[JosM[#xsσ4 U>t8>S6_ikˣ3(OtŎ ae-,%emƒ^ߩ,P}M9X%,U/67M|Y vj_~]-DqŲY[Wbvc.oO GU 3 eK^9g"Γ73X2F`)V7:;Ϭ,`,9йY--0&@JQA WѩxƂ&8,5j6/CЕ B#,@S$SQ.Ro$mw*Q{m?(]ťr8e|6Uڤ"URsJJуn ¦/-VV(\Qhmϴy8H~3] 67BjA1bzBWW9h]P }(R pņZxTJ^Qrs =9r*:MEMTץs2DqT%x`PhwL@g"nx!zĵE#]O7Vk3FTTctڈ 8ZP̤v6яSfIA 6b+s(d (XI_[{:˙lFצ tZ b۴14_E=oN,bS&=xEuWCltVC%u~ԳV՗+ qan"e]ʵ绩#5JKlFjˀ"lHݘ3F 3R BzäV+Th7F\-$t7uLrS+ 5CYVJbV2˿V]73n'\ʗE̹w%wӯ-dC[DG-׎@|]Ȋ!j 3n3g=<)y4cou.>Ȗkt5X]|in!%`:ErnE_wf)qꣲ`RvQ6-Q=ٍ;Me)':8SKUUNdk5=@l<AړGr_@)c`=n4E\Uꃵ|._Er{4Q:<$:^YKNG7:ܑ*^5T*v=9lTif[]4l aH噂x=`U-ۃ.d g=fLn|c‘s8qۄV0) pV 0}x6,6߇1MPpû#*3=qD3]RZB_}o,9MRHB* dX#"`l]C-v.1?ӳ'^D<-BTh4kL G{ 0G5`7F>INuϳ|@@/p2coNћ( 7Zz8dk|*?.FykrNW>FaEJYJѴk6,Yh8NįYN:g5~!*cqJmj;h &Hݬ^ȲHA88\@@NS.tU;Sla1Y%%`,: AswJ_Vzj'B& eڴ? x.M xH7gQmv D'_~sơ!eשi{9ĦBgn#P295b.O=Cj#br=kMQ{w~ã*00 #gմ[2w/05Ðo@$Ql])·64}m2Z 0 qO&3_c:&JU7Nh̓X{v+…@LHpV\c(ց O%fBO@Z=|Gݞ@> ZYbsnJ/x81dMTFsGhbҰJN;7Fxecg֓#s+c{8tBz>J5tX#YzdݛfmːcU7| SΌ7Y/#ƙfPU@NK\#mϡ mxXq*@Zu9s46C& 3#YYaFgI_dB9ki 4фweT'"d>YĿ?J4ڌAGCgZpl5*& Ptdб~xbdSQ&2vi9:(`J(:bx򤇞 ǏޖnZCհ|Z Ya,}sTWz}:3`9$\00Gg#vuωX*Amv=h8kT#9ZN+kKALo@vg)g&5CL?'Ty0e(abi$p"R3@zɾ'+H*mi1 0{{'(٬j~(( ,&9+)`.bZ( @ݨ bf(VŁg?Їy3Qy1'N[|>@?C&8W%pN*5tO+ Yإ/ p2+Tӟ{ֿp|M;E|K'ɱ𑠰VG:62v|p~Kxn#{ARJ]QdТ5|nZZᎆᙏðqxwBǯ揘w "xiHs L(C<+0a^0(&к*l:У]IDg ~7PekGDݎaZ<,쏲qcC4!MF;raU|H&56XYKI~?WXʢ.Y1i~dUAw kRGWI.g+(^kt6lIřMJ-p Bsݐx;G8-RNyq,`o)߮Kh;"Oۯ\j]Cwme\h^7Z+bkI^vP}L},3__ecmn܍ÿo<6CbEɯuiNĦzγ|g &fRn%+qV, d /iZcɗu{PLքZ‰F m<=чw)nH!udgʖcP0)5p;㛰wRqh;cA'PL ?=FfBbYLC٧{>M)^L1O^+|t mH^4FF+:`äu96FקyySsU9ICQ[rhkM}.·D_pDUb <9f^ٗS,Aհݨ}nm*9}Z -~Ǻx##9GYޅb`1?2BP'Tȇސd@z<x RYbe*sl8]?E6$o*v+x6+q)4"Lfmv&W}?G/1$$HQ`wkddѨ':y}ƭcA݃a^>ϕx?rA_B{J&r3a9OŐmP#S^l$ȅ)4ՠ{TU6uˁ/AӋqM)y䦜?S.kq*4G*Bfq_1xH sn."춊U~OZ%D]mRRkfw_GR:yP`>Hwg 9KqasK#Ʈ[f+:^d^?݄]4AyW0gТabzo7-7f ]=!yS$x[,L=6H!mJ 6H Eծ%[>4L=`/2^&?I04o Si݈n>y3$PmK,Okz?HSMt0Ϡ :z97HuG CΔo5bAbT 5`(9재OegS:dk~ΐ Raf )ܵhqj!`(J_WYbIHUE'qduӯfr>JF+JKFXHBh+W0' _R,¼{ r^\6?Tb*1!MZpmbfTƵV{ɍM3kv)^,VPhɋ|:cF0 [dCAP7sRCzkWedXжFy>6(iʼ[$l06\aɞzߝ!dS% ѭ!9y^#iTf(,>J6rM;'e$K=iNk"nL#Agb7!`+CT[Iy@VZ},6Ŕ湤ۉӏeAA{c29V0Mu}o4f,Ш.ή<JO;r~P7ߝ)Jf}*(] 'EhP/wj7#G(}܎{fw%":|$RPҙP >L3$c.+)AD Ii\Sn`krꠦ>ʎf0ݮ^o77o)f[4KRi<I)h"A,Wʆb!BylNiD" |I%Fo;I9Q0v:>9]t8"QZC9 <8<)6>w*?w4."nKbS*Xˆiu9 :GG:i` !r Z [%Ed/szc#6I y8ԛ^~g1gxI0ag]SokSKE@}'ъ YZgG'n"k-?Dwƌtd?.ν8=R 7OdUԀLq)q%@j;! Qa?Up|V]BN`6AO+|D2Z(3l3$Ϯ{mUpkY'W-_s&+3ZԚWbRr / X`n,T?_#I +ΞLY)z^7<ѯt*d4.Ii.g7'!yp7 ̔`Y>.ܬCJ>7)wD!A1k"ǟlH.ٰKAfˈomL)yW{A@Ld|_iE@ŭoJ9ES4LGׯWqp>=GLDpXdfB H-$ݯh5{7ڛY=2ڃfA!|(Tl*/Gua>')2~'9 -&<:;8TW) P(C:UaE/U3Mnmqx%)cNIC*]-WVnb115.?4' `{B+!%eU*P~ԧ-ԐՋy|'_Ctgs^Oxl2==$me=GI"`^ ]cRe|4l3w!ub(i]nDLhhZzYS+Źu+]*~)~fYUzؾJ!pIHJP|BB湧dNTA[w&6{CM'"!WC`-쏍]vbP=*E["Wy]ͪmRÈ2U\)G @y nV,yCk'Fl{^lT?YpBjSݷS*~#rՕ9^] d $)4/ڃ; 6PpyDmڻjpS PB TZSG۰*GKh{ e+Y9UT?ʜBls+I7 aaXMeB1(5ml"2T-,S?Y:uȻUšV] v^!K륣gb<1;֐qґXǦ{ X'M΃mDAܤS *=elZ(ى0€|uБ8JEGfB)0dxaNC %--$|x\ǿ![Z~K׷$_Jtj/15d@N5  ,?D8FVYi ooHKQ Dxtm,I~c$ !u;VmD4 u p~ /6=uk+1z_=_ .M>+q@!Bs7EX1m{RU0 N1= A gAM%I*_|3 E ,/D8+L?w9Po߸]شTQ(nOIDn~ًH'tF0kxc"ڊӲn0 %R8x=I MgڏBb ^Y:/?|d5p~GcV𚉤_^R ho V$ T#,eJ\YQ?=5:&\b*?rm=VTx\ƍqB|B(sH6Urz={zKC T :$D ,K#}c ^D;,ݵ唸~nT;OpxWCqR;RKZ䷆b}Eɶ )ADq,7:&gEq5X3!K)iU6:P'tO j?FYdsy$mwA\h榘y:19uqeI$VyH*7]3MF#B,a/>ȑhQ-,YJRzN>rCafehvz~+y0! H tcgBJb Ķ6&tqqkd\ŔJ2xnx+!kXs>8gp^zå;S"Vu1y֋oVݤdj?Gq5u;JZ?BxW\lKwq{l,i*,Qu>l=x;;7V@7 *]6%srXԿL\N35q8++{VeL^Fd_NP,3W8k:.o9P39 0pՓFJD527g&^AѦutN=wN:x[YnhŘqડN1L-FEҞ+y P u~Ȕ-oǣ%^ VgOtr)sano/,07d$N[LJ-%o[`3"Ϛ$4vt* cm~ze^ 5v}+i~ `kї< nX\.^Z8QyLBk>rbG|*{F>vT.a(N`Jmc5e҈f ᜒ:Ps4=u>Cg"$Hjjהca- w0a&a߱ [T}ңp8!S7ۗ4" 6`o$0 4%L*V~wuz`;"~ ~; 7զ&<'{zp ͰՑ~k|4DNn:߅o ֒AM ñ~aL4NM+bk. zҍ!Y,DnQ?9)~9JU&Eyz1-[HSIu2Î^]e G<ư-މVs[+*ܪ/tr ][?N^*2.հNZazZ!NP'gM^2( sڭ!7 J YɜА|JovVx baK1 **{gU&["w/ض?2{9nPIFՆA$>7j.SWO"d-|xQqDl p{p-j0(sh>FDqaƄsL׽LZ\~z!+3&HvGt,ri.ciyu/TJ'%-KKM:lFsWJBk:HjCDɉ=D :w3PeyT~eu~jvNދ?}4^Hf?b; 8( EZ[_#wKP,4Z.& N#7Z[[~$ +d,ifV˛U?N('t/am+1A_ϒ=P ( "S筟!Yy7 9^M8,hP3pw+^c;@K1aʐ iF>)p~#Hᤸ[z|/U+6v77WP2n'o!saJuFDkpT@RAsC]e!EkXv/Hm\"G3 G%*J5'R>jdÖN,MIdUzxRB*LH;]X߳?LBXsqWSCE_׭]4E{ټb/V1|'5D V"6'Cfܔ ^ZDA' L4._% əZ6C Gb0CgТ_Qͫ/ѕRb֋}zQ.4cM,& Z OYp`x 'e {-o}6?Q(';Ktm [+%0X"=*Is[u> 1ǪĖ9%rεo;kX ֶ*%)[W~;`jTHuP|t·`=߽e6P=FlGT6"Gd1>UJY tJsjnaabA6`qnѯ-9r 1Ir WM8z{Bi/(j9Zj ˰N0D㱪 |s&Ah"s!뒽X8`NFDzAGq#yxRwʗ:2_>1w0qS ی6YsVߐl^M+7cU/dٿrg-|-l3Ut :Gi'\6HЛ]z$خv}E Ȳ|8\a[RP=o!Swfj$L_Yx^buJ[QRJ$=dfx "ODOtZYk5Y져W8l7 j5YKEN sOˮs-7D9$C/|N7S)i!z kb/SB@Kw'\QG?9%QKnByڎ+Y0!)e r m\W]Pzk;b顝nGtQ-о=QNtdܒx l$b^s R2 8}gY=$!m!6ϹtHI~RS.z-p/'9Τ;}׹5Ůja!o-u WgqUS}[-rc&M,"Ӷ;K^ttHź%1!FfY+Y ,( x3T,1U\tM5k;T;ឍ+U'w Th-2p"rʠDg>,1{Zj<ڏbk /f߶7/ਫճnSHJȜ@fRtEt@"撄jb+5~}_ 3?3g?I)joQÈ*Z;Ay :O>sCUj*UQ'pmÕ:U#%i<ޗ [>ohD} HdNh q÷Od Rؿ(z9&# )P[E ;8 }^_T %%̩JT#2Nn5A[cfSD`}=jd>D|'!G炥>VvP~ϚYC8(yd%H99EnzW(Q}0}ضg`/]IjdǺh}9#(Q2uŪaNl 1,LS.7Đ@4x308JXg"#\6~Yݞ&u'( xo\-MT WPd%՘?.k0c}Gӫn$^b!)uf= 0?s\=̢~+ߒ>iz_GѩΒ§Ebplk#–2n.9},A~i Swl:LSFEf'M =2| ZmOڙqڷczlH>(E/-6\ʄ-0e}DC̽]H): { y09U&t|0bܤlxijowLeސ6x"jŴ84_Pv&> q5hb{qlt_[ 5MZӂhOzo;HI"؉|2ipH`>ZJFx]|ݶI0Z3ҁJ5|tm]9,D,[Ru5x#yj9mΞ~X':;gǴQ՚4(ŀ2 NakbDު}}dZ-@vE Fey/ۼsR>̤REIE|7c1o4qwOFk;,KHx3Q)8Ȕ6(gP3#㹳#ͧmr-sP-A:ŜpK 5:nO@ao މLpo!"C?kEZ> &@,ȁ;B ą?[Hc{:XgQ qa"M"*Hq ښ? `ۆ*qء7IӰR'ǻ(YmJ퉠Ҍ|ؒw`wPtBT<@]RzbIn`/ %D] 1\xARwp42#R۬Tşo?8hб>"/9?twoASZ TX®x*kvg4tc05+pլ}4cyȁi+A lL^w_Y ʆQH"dDG)1MbK_Kt3=0:7gv0~r%Y@q{]~ -} Q6 ) #+2(Nip|N3dž^sp|/sho mjYLAv W+HYx!&Gi{$tImrl;䇱 u%*Ep[=; gbI#Q6(aD۔ p_O(旾|@藇= |ZfLcuxPZ X|rȜTNpʀG[ k?VաQAVyU/u0N>.4+ \TYm_ziR U\Dn .TZƳ.xJcڻi `)ީ TůGѷ9ѵ/sSwy HZ =#@pzQ2rz(phO{N$ˋ%]+ua%0]c,bx^̼84dWD)w-_A*H֢QH-}B,BJ?";3nOCn30h/ P0`6$ HwZW27'lKf*)v&qÁ1 l]bgCW3gi2W끻LR{'_^|c6nZ! u4y.53'Q#>i]H:0?O #iPaDm1ŌPaʼny(}(~,IÎKe8U#ppW#'v0ĕ _|E0_ЗklZ$n]~t++B7yCC+g\IPFNY{ o;n'pK#j`pE`rWTF?>YCbF4Oy+)q܋[wU" rk f`*FpܱYu f#'Q*Hy1 :9]1qF F8ҼUkrL?ksf"O:D°9Y(Ϡ݃z;)׻-ϯ(}2TYuL4w#䞔Vx ߹_/vA35˷ +Gو/u; MϚ_Q-Ʒ>A=D,Iހxipok rCl@ыu6/"WJ&Wۨ#Ըj"~>\$⁉DX HNc H³!8Xr27.UYG {$1c'W(e(Jv8ЛtcQ!qC&c]-d师?IPb߿a>xQYg>$] U?9?Pc;(C`~jZ0hYaYQΊYk%k+nMZpiľ%MU2zOx@6ݹד8؂3Z 2a -[Y-2z174y'vX_uA|muZ =2gp;xy^[[,8"kHQ9bl$`g7~ uXu>#Ss'dq4HG)}lݲDAz "ziKZN_$:D-zuK:biP-2DGKV]~Eȟmƞ<`rO Gþem1CO3 ,C\7vmHqXH؈Cv EXȗ=>(b%q.Ӥshbh{3]"G%y0mkc/6o: 0 F}A: K f^Mzp ցTIWw:d &4#tZ;BoY=AcO:B6!piwBI4TxԈ`ɶۧAj߅ Yx?iVsADX\N]Gx,"\ ?KIz-F@S7rzVb| 0'9, K.R;;9еc &2rd'/a3fP[pm  RY[G-l|V} |&۷C"guh>u7PxD;JHh{֊dK;{86@eXjpΨQE }I90v9IWR|+|duvR8]dedqա/X7R\O񂳡xq{S+ eD OQ30JJ3IȬw) &_qyϯX2l:݊몽,gʁh} "뼦%B$ưb9JFv!.8;7&˓sO/tqqX 8$NaΆEK(X36U:;{5q`t:g9!?qw}8'曧1KQV~lWꍇ\}ؖӹp(rA2V#՜lp։Q{Hs *k5r:.4l d=? Ƭ't-22%-0Jă(T6uEuвow:]2FCb+JRZ2UV ګM4*t_w>~;TXdΌQ>΀:챯Z8HԨ4򁨿 `^›ؤTng%a$3751껟<"7eڈETCC&C#$t[<#qMZk1=jyv\(ܘA.kqQϝ6k'U5{VRz vRY]6+4M5̘tӚq݅s9Hn704 88>NtM^y6];2_-8@Fdf.%sw3 Ĝŧ?c%)N C}x=[F@HJ>FhecRۇ :A4)OjF LevkvXm9`%ta~Ύ -Hs!)B}iŸ7Konǐ`QCFTͯGU6Lg/=Ԫ4XKڝUG3K.9@b~+[?%}P?ט_Ev5auL6`5"Pe s 5 kEK V[l">_x=}:8V7bOKL^6pa&dB`G|v2ZtTURX.>>dɅah2rK*tv`)V/Pi,w%f`ma%/TAm 6LTf C6:j|ȇt.ZFz)FMiIN0ѱX!zPE,c%'XJGW {QQ }\O.7H6-l aVK%Nx5]O`l[YNȩ@|Ɖna&~aօ:޲u ,_[?r! x _Z Jb);NZu 2 "CUQ#:v, q*8#0_Ôyn?9%3J|}[ SG'HWZpU6k ^:>{:^ګ&758NS{^IYFDŽBL20Z~t3?ӱ;{l/elso!cˈڑﲟzWNV1뺬V2 RJA{$loNhw2Y螪3INPUA¤QɈ{"x6E4P&4Lp֗m)lȨ18rosN&X!} &W"gʗ!=5АPsƺqbrS;o;REe}0-$Rǵu_\9Ou!Ae}y~zh7 gk{dic'2Qz,vŹ].|R\,M-uR/o--ΚVv"ZReۛZFFE,OZ{e 5ke`Ѝ˪l 3#qYm!L3)-,T emC<}"m|;m"3_2L[gi8ݮG%I辺B%`(}9DÒf2N9_Y~ +`4.!#?p^.`D@"V&tn)T+wJڭ98(w5Iye m_o5۹Wc,6P8(wTDdL9܊ߣRMd+'fCyE֧M}-$@&: xЦLZ0| iu#r Cb31؍16u)A3_qzij‰[CR<8 ñLğyKrb6⦈{Zz(ܷrC7TFӚqVў@*u& `J" jZFowWKa_* B|QyUK؇:=f'b T02y"AoYMﰻxND Ae.R.၃vv8M ?$WpNpD*@}z޲xN+" wets+9M/ CKSnYo7]sPgoZ~锭r7N}c2X $evً< >0^O̐@FLf6\o4]q6naBcrJﲯiaʶ ۓV7(}AL#[Z%!I:rNrwJ6.P)(s`ƀ@ؚ܄>)UgSQ|ق̈́YWw*;6Mbz?FK%4unuC26q% w""twǖkFQԚFQvC5XI8lo7 2ewE1gZQ`I v>z\/_m>,#HY¸w: ֶ~fTQҲ:3x]^j "X/K!4N)wnk ҢȢ)0Ģ3 Emj䨩jnZ?~v0CtPU7 ӅaR i$_əf oRH}?$o݆7K,-}mcRS M@,jV䢳\jhP[W݋*ouu]9fMVJ.j^˭GG@S{x?)|E,1M5tҭYQ K6}3N ӛQ51ѤT?rME{37J[ les`G 7 OʲÄ d&="x!{U#U>IX+4R%a Iv[@q^P'|` ed#⢷ׇ&F[#bF1xΆ9UZ +Ak4-\Թwj#cS V,%2*ロ/Dv\mSַ[}3c{:f>2Fe:ff RurW` ɟe,@52/7=ͅ{?;5e:OlnZi*@+t&H*OB6`bGrqYxcLytuhH-IMOHNpKu$CAsL~0sH#,_/P(/ޕBbH18OkqdU9z>a^yZx㻜)]^ R,ziK|y=ۻ٥],CC?@D_Zʿ77Աy =GaN8I.yz]RY Օ=9a' 5n"o{3qSy: H^=6wh ך` j9nQvkDk'Ñ `)j:myBBO l=R){[%sňxI6p6AA>2zl@ m 㲃7k_*ix vQ(r{%DF,`$=;C"P/!5d,";{TԌ'KD~ DD?EW:{峮Z!OzڵBRs'#w}}B,uLD^>'*mhLp2ꀠ5qJZǩ]*cJ@ӱ.ZH6'0i@ᣅh.>xd<?%1s{uc1C5V,kA{dn:%l.((C/.Iǒl(e+AU0Aw-@ƿ~JUS.  ޗ1i&=s ;GQ`6>f Pun =IӐC ew8w:Zg_u;ʺ7Go9x2N1~}e䗼/cWѓ^MUOB"Bd,ޥA[EcO5XNvcU n־ʹ=y3Vq"o,5L.%,27bXǧ[P4>a}_{UuGWbepܞT*6\/3k;LSݾ%Da*Ia=5|Uas{1: 0QȬ#2K+M.eitizQf9@vB _ {}gȣщ,\p4d'}(JUq`PU7GoxL{[ %i9B ɷ'IF}=m)7ژ4yY:>|Mg$sO]~dFzlk&OV4-Y%LJhd0:D]a  )bѽ! SsE0H˘'lZZsõs5y̆4Uo_ӠVu-ʏj,Tc6 ^1滌r; | }bCpdXSqAf*/K"F<_ǫ4फ\ qW#O$Ja5Hߌg@jv9 H{`[ .HǪji4:f]W$[a~p8f4Ӓ~H.\<)슔h1^tBY͞u)Щ~C?\z͗mi^'DX>&&dRZBIJ-CY ctyXtkqg;g XP-DiVG-OLI%CD[ rkEYfZ#^;@SPq&tYr󬿯|e! /Di?sdw!;m]C4A;_ـPha9c.;8`v~ી'f˚"(wN(Jc$ce_ޟ=qj{yټjؾz y wk]JH"eMDS*eƢ|AbMns+#d΋"!SiZ sV5 Co"ܙFeH%utr%s>LU c'o "6WƷea|u٤51)8MޠŌdp(jůƹg*W Q՛zSB12g5oͱR53׹/} ͦQU=C@QL9a3G : Ֆ2m6OMkH`-70e l@Mr}ME߈{jq/tlY˥T޽FMDA0T&vrh+,`QC5d`u H>;_z) ޞIffhQf G?FRVq>b/2udI>HBpthb_.=}gʜHWy*i2>@tWBOO&f!T1e!c;M,"]Uˢ'-nNʊ82W s[BgaTFQWg;IJ0Ƈ+D%2.+JѽлV/at)A&Ri- *Ef?(QvcX:O>L6MCbJ)*cEHAHZ",߮~5uDD]JKqyv7N8kVb!`HOO-.oTVjE#u/5 dIs@4N捿I*_v ~@>v"&>R JQjƀML>ƨM_'\\AɊ&fΩ^1_;3sfԷa#-b,{l3r2ˀ5 +AwT&hYfׇ`!N=7-iL[ O~~rG>G.ԌJ@ GS+Χhd #X~.Yho ݀a/mٚVϳf6(One 0X}q[UgnY*x`2ժ_,>E^<$P_ >"" U5F }=I E)TTN$p2M"=i*r+}u>Us$2#.>KN66WK/b})X0y)m=v< FBm'{^Vpc+j%!r,EgwhެG1T7X$Jcw Xٶ*ڑPV[@4cdkI&(H  |`e2RUL/_/8ZHux]uy|X`WCǦri J(I#R6Zs 1țEku +J>ui)9&.ĭ/21BEO?G?)KFݭ%tnH,MrS*!j}oϔ#Y[\|%Թd!9a>-BiLCϪ?mrGS5Ւf:5E]\JY%.jE*vQkgBYj_N jp ]JT@٣,.r @v"\=ONn4@q:g)(,N[/~ \}xw XKζ[V2OޞܹrqH,臣yI:kur6KnY<֖?$^-Gwh$:Mˁ+c1J Ò[-c,Cno4͌7$aǓ{ZjW(XpEԒie«7X9G9fn'%ՋkW!Wf@#n:3BD(8rnr[F} |E2}WErpT MC8DG%Q6oO2I .>Bͳ?((WfQrgJY[-y`qAH\nXݳNs,HY6@tc1qZMx+ȉEnO /0'3Y>gO$kg[R$\+_Ќ&F5?W_y/ӄ]y?)crƭzF(^,%8aa>a`=ghڧݯ*{sKH:%*Q;freLl˻/G37K}U53ub!*chl}SVUه` l3=C<i!޸D-xwW?J} TMJ ͧUa?&B}܀PgDvZ`~~O~#-'_9fqP,LT3N9GGq RuVePΙ-r5f/PI~T:.r\ W/YI߲nn@@k?@6HmcgBr\66#ak~ j X7<\O9ُ$Su~]72nƈUJmTec̮@B ȶ >6CGC!1;h2vrB[94~R|w4Lu,P}hɉ]3Ec1SU-wxO <:@Ȩ.NX(MB ,xRuRΣcbdkY!KJ3gXa:lK}B rc^o#;l1J?boZV?J.W~4^iq$sq\Ϥ'Ƭs3<ɩn8qx˱5ܬ?AufiWsd^iYE`:2(>rQQG\k5aV"j ' $aUgCݡtlA̺jNA2soeTzߌcrCaSV| KƌT5>$EM?`\paYf%Maq\3z|ъV^vBlI#HM^+'gQ/CL/ ~ EwEwzM9E$(3{쭉VcޯpFPͯ}V+g\ՅjɊRSx%SᙻtRlM;!Lm|4[!bOw3bQa-ExKll $Q~F9CFeuN#կN'bՌQj[y[C2 &|)7&[24 aM+wp~!"bǥMAPK30RkN% ̒6S\@%@k ZS|mF{;$F "f}ޞb+]|Ճr.Qߖ98; ^? *BnyT`PT䩝6/ԎDPdƝmqz0w)8o)Ҥ5>>[U,Gw7Qk`]eVHoTCۗU$Ek% Wګi!P1) @Pd4a]t!^^qޞ)"C~0fpe[?|evM*~c-zͱ})3(V-fo\^>rX3DW9ՊzNvꤲbURslA5=FޥiRr?XX[3/A.X]WPA‹Mȷh+nqː~:`bO,_ͦdpZQC1H\W󎊂;8ƶϨͶ yi恀yZM]jſ ZPCHaϝxs vIՎ}FNBKO*|;fN5:zu~":ǵcj=kB z0t%Wh1">e*GeFEuWrzc1VG3b!4{+(WtEEptN[t 80 {›tȞMJVuKX~Du{K@fTIOž"Cv:M'u^ՊD|Дw4*4ǛS#d4gmaAMi|$7<׮z-6+3**La Z)iZe9a_"-.iU@J^lI֚!Z!H {Yt.HoRPпq*ZU`[)lb] JxkwGnZkTR+(idb,/AXc>_R?-ӡ6*wk5FJ4Nd",y '}!:F~=qcc!Րw n؇ 9-dB39vqc SyYZ'[ (#[ jWh5e *^+!\+FlO2$Ԩ(d"b1o6OAiϓB:*&k⥯x.aaL EqOERYd2;ÄM/g}+9>|n@) 4|hఆX]^ =>#$*JoTpDp</>aԍ[KeoLMlN䌘%:1ݵ(OVGULVJ.r M1-+.i1mpF.+Z'F 5vv_1Dirx)T4@knEr{Bhq&f3ꊲ)3?Eɬ>R prx)!=.X{RwBZѧ$}=lZ4$a3**n,4=&L:1^:"u < n;El_Tjh(wp.UGB nX}dc^PkFCE}@adw7L܃@x,%QfUycBNVL"7(M ||IfaH4 Er= $VuzWUg| /AC^!fZ-ё=O,64=^B;yW 0G[*A棯Rl3!EIJLGͻ"ZU2\JceW԰鳴 L.Z[1K *Lt8!ji9. q<^c5-M&(ri N46FF. 5G!dQ_J Eu(~>"'=%:}t?oZVZBb$5 }B!h K;=q*:+x* nW N;MG,X0ݷZ@\+ɺ$oWD}Z];)ٛ`eQ;̘x!Oa/H}ʽ&dܩ.vV`UO$$F5R@鈼jZL88.(T@WGlT;򅏰zřY6AX#!_6ikbm(XB~hS*D^H\JF OFs1˹AbXB8Yiav-2}.$v0k7;x f[$afbܨO&m`(UXmѡE^p :@8g>LW,Km/HGn&|2=w2yCRch-2*Q[Ӡ!W *P?0XKZZ]<wx]9qZ_|pI]JnVBh8 /? :L04b:Wz%Ө8wD\pZJ7t(&{V|>X/MПA!3/ؒSq1Ꝧ |t]3|8;yeԽ=kyfQ~lAX`)%ao-Ƶn{VD 0yX60n1MKc2~ͦtчuzB<ֳ( Iq^djGU{6 yt{Cizٲ;C|ВJzIXwf$/{!.X,i0B-P`t#ԟr}W9CmJ_*GRpUNX(ĩl̯@sF'C g$X' ?S Hg[h ./5LԈ&HV흯.ԺQlo-Wd^qj}9$ˠeG`u-2J8>.ca7ƆsM24;-iT'3$ %˔3c3@_|.$y Y" c^weʭ){Wy= m67Jrn8a(VhNa/t(2/']j$+oEiM!Sj5\jV֯YoڛG{.}x@o++c MED"`\!o%jɪ8&N:oI_.wk43Py` zQ7P6XIyu-l2WC7=7LdK4H ?]}^Vq> NB=QDZ(9.pt ~r/ZG-{.b%=iت]eamkU %w v71oJCqYy=2R7^uhmfɝ̟ͬc%]ڲ?\ .^&_yx ,Y z- N pvP8oODU١^_i+ `?YgLf-I8Ő(VR)b]ߠ@i]ڌ^msy<*[, u@1<;_î puӣ|w.kZxmw4v4p,AΙAIP" ; #w8Z)mKTN3#_rV˩fڶMS1VVFg cS_EV5ݶ8غTJYr^^cxr oOx n}4S"5rm PdJs]F? >* @ԿTtfS=<0 O684s `r WG',G>: 0vι,ѷwY|Uw{7z& ][Ub \02;\}'6q&h92f5dXga^jL::9Q;L3Qgx_zBqhzJդcұ'7 9( IzBp3m/Vv?:!tW N!A92F83](WcppLc;z~*EZ-1zX ZڕHXҔ{֕o8)=טMV& J l*%Puy8+ 8*YGMW;$MvF8W ոvHwnOGyܰC8EQ>C̠U虊hhE1AtqyuY;hg5 T.0RyZ DCiELScE*|gC/ʖ.񜅾OEE9qgt4ˡF:фQjj!|'w]ۆ6$/[ZynL"I8I~T9g:A3x iFsî^ԙڄ[ |Èŝu֗_E׈E SMc}{ұ.hOvMQt" N.GĻhXlI?/oSN''hNawn|+w7k+Oq8j6ճ&`XOLs|IUtd*D&@9}?Ik`I $K/%>umTaCsCZȰ" c\%&)1)&ҵX8[u٘J7ky\Yw5Tnhht(( '-UA<1Wj^km!uMyyh#|PYx̠~q`wJO(vܔ," c4G+-ER1oX3TIft!{D(uc4I1Yw `找-u=}oyL[[{`,$R7InapR\Be DzPO"TFϝe˚~R'N4!I_MEsNRADz=f}>! w_!<07 lYj>p%OHÂBjΚp' "FBe]3<}TG:8ԄI5P^G%XY}Gl}k08$NV7g@m8 QeU0fkAYnh$x ָ2af?i*=cʮ@zG v.2[L>08(6@}e37|۫ڌ؀G4a|hto:Ҿi#L>쪠 z唷yJqHu2Rg[_W_FgQnJ& AwZ(^b`2 _漈Hivl-Z,p"R\̅QS`4_ nYk <;y pT '*.wf*ŁJx{$*RvS!Y z PE6uY:NaP`.@M! hrTLj%qPQ 8c/Z ܳE;zV'Z{)d5voҍևxֵhyU)Oᢄj}u}c~Jc6Xm! ^lj0]~I\<3A3;SIWS^)g ere\k 5|?C`v.݀mvV5-,mHǕñN|pUd' Yz+xJ`m s D`"*UҰ-5elF9k7`RnC VL"/Tq>W\í"U ^t!ՕA+8gǺkcE!)>F|/v?[!XVV~BM m2.ݳCC 6>Eٮ%&X#K$F\Bkq kO4 J 1xlF[LMLKZߣfAZF@&tTVsHRd 6gA Dk-'@9EyDB[ι r1X, rJbP"Āiy CP$9҈e"΅ /m&`ݙUyܛg;X }^\V)HϋW˾G`S d&RbчjF f&YIIQ/>^yeX!jbn.g?'v׈,gMi:pIbb@ 㦡c뫬JUD{C<:|}S! -K.< UDV7l$=Ɂ0 1Rәϓ),HnyjyժFSɺaOE$\K=d#lp4"٤.AHitvx >X   ]Lkf[pjAƾrr7g@vo@%4!~F+,RD^f , ]g{S1KkDVvKQ',W?dhh49@%%pҤt/O ,ΑU 'C'm*:7[WPC!]W &u3G%_D98؃ ο.\'"s2S4v'7/?$`d*UkūO<:5WÁQ촜۰E'"<;sɤ|&tjSAK%;Ez "}W6p0E-9GI6SKGP+~3D",E=33mqh+}!kp_:gWLh=t||(e%^ `:=ݳBflߞC1GpMUز mŹ5i_Â_Ҙb|.2.& )Ah07 잱fR#): '9͟󴫷+Aà 4}E ݑ PHݦMkjvD(?E7uAtWKƔcdFDNqTAfÝXɆ  `!6uyV~IlhOw%9 fXB|= 7N&㦙Q tTlvYPE]7)M^~M_{c+p犯@N_iؽCYYcxc5!*NN3*Rl |E^`-g=IRVP0=T6HhdZ74GM|v~f8zu~β\~-V RS5% _ u-zz='Q.mSdǂGTGqVLmf`G[ X?Y[R40Wi16.б]SڽJb}l>ptb٤2ǒ-.ĺFyTk_#X-`_GsXQOE䕓~m7j]RExgSJ@D:;*n܇eF0ʘ= 9Ősz1I9">|kơ 7z/F>fT0 r3gQ3a]jǫL ,qzq| =>]}SGq+Wc $ipꠖi{QSH0nt6ikQw&4<ն畒%fyLdc5}LfޅBApi؏҇Q{t/+%}zWF0=1?AhB{4!bwQʮ Ml]3~(*è4nX ^P(<8 ߕispv]kX_b?"*Ҭ4CJ  R*/XbI22rh()0~\rtr>%'4U"л('$f+߀ӵC BIZnZ9R*jh BPTdƋ MƇϟ7[G#j h{Y<)L Y7P,9qú^]A".\j,hRW:w9i3ñNF?sue0mĄCaTmCIG|@Ç cnS1HOP  N5st={94s>}Y&.}räk݆U^YJ}J Ih Y@y_p':u׳+*KBKaVȇ=g%Y}dRBEtx[U t2 mV"tk:γK 0gn;#֘{%qoO ,0:HHRj(Ҫ#dh~Elnqq#iZ[6 ChC<ܡiHh$D}-3O%7QľVEy|Ȟ;}HV1_W>ILF8zAѺ6 r>+z$['=@o3V[x%]K$S}‡QxƔWs^(q)=JT8Rf{<$i%Ʃ\n-Fc'8'ßGwxXϦӫ2[2!S[!fa܀R\ZADB\V&ciXkyS?<9LE}-Jexߑ6}"r%͸D(PBvv֠F%)@.X<Jr+>E :#O|(F -m BEj*j'/?bshB,ׅ@C=Y8Hb^W蓷Y1dFdԌ/z{G aƟvY9lQ,y3s_qdL-+0TuacڔMF$ɺێ{#a؞dJ7.q:ayg>tHYخeHţ Y8[LGa3V >[CQJ!*D$1yswᅧ a#Y|[7F QwܺWSy0X5nT%uӪ .ڹG PfpEW ɢ 7۰@]hr㝁uTLi_9dނj /ԣCe3]k A )WKODzEDDdP^`TQyL݇>&Df:nin?&X jegAaS>H[nwu\@4KJ/-%NP̰etY#`1=NvKd6)7VΈICA?fMw{][x#oNM`|8L _bgn=t345N0 8AVzf^'š#GB>Q{OlݧeۯĺRn2`}OXMms&,fd&xpJIO2Hޒ`6|'o<{ ·͐I%d)4"_h-!u@x*f(tzDp)}d<Ă!r4eLo!=?B_hAQ.;Sf]b8UM;ML+A C&Ӫ\2HKl,`wps714X3W=Ńe'5v;i1:+jRJg ex&Z<&"Y\6l>P-?3-VUFvֈ`ݩW02| ™ɖGG]A-VOfB'#Pf4/]{;ug7c4ꣵ3mf.'gw+ȟY.x{D8iEnB/B1.fD_]OXnE `R(f縉 rx.q֬fI8&}[Rss{FgGL獣6&髞&ow]ISU}syF\0Z 9/Z9rx vhix0Q wxB[>FJH@-6]xaLOx{CA^UR U,v p]|P1 L\P։{Մr]@`wXC շH8D_G!ɹ"]dXt7GR9s뢓¨gk}k*2kçb[%NF9jǙ_g+!K|_w\a}QK} Z hT&b=~iaE9%*B[/!+i|8hf<HRaG3>GM̬.ygF^3ƒŨE)ep8$)7! HafYxI2MZw͹ 4?Cq.mlЗÎty>m6!$!}㪵{1JΌ0Ǭ+4\/Ҷӳp*hlLXUu0 : _)̇nG@Xaǀ_'Xz7 7:gIf4G*GTS#g81vr&04უ/tvtP^m $nE}9P?&r҂- .bZQ8MC{ӢcWB:H܊kz$?iX3XeM ݔ+^=qʈͻRA鿎jH=MD͢eߋ#|dZV\LlU4Mm2-y\^'Cκ9oۮf)pa} h+E3ڇ-s뙙y|S2Zf_G7)*ltl@Vx궃>2--N}}$1ݏX'[(8<{Ea=7_3EuecQ%IG!5QA$|nZ^q@h2bT"J)5݊ @r2>+!@ v#Yp6kCש8LTS>̿TC&*՚G|_0Q)ZmW}\cZ%"w+xܱh:s2Yt ,{dk͓UĒW2ZHD"յTV5!9EjaNH!w u{PW s@TW9 մCCC{e49]+#'!@IcḞy|GY?} lbŜEϿW廷5`{ޑKZX:UVkG{ߙk.u2@ǠˑJ\MHߨ"dr%:ʕo=SasP|q׽T ǴV\̠1@m~I Vk[ G|_O`!-b:ee5 wl9/tH"ÖY̮<򧪛lOfeAݬf_K|y? >!Zi`gZ݌Kn"%M@+ w 6!E3%̔Bᒍ=ȑঃߺ9'xhF-XM pTrz" UN4d@ic2J.*R!1~=0}ʑr IA\J+tco2ڢnsgE{.Xf?:dZ"\'m2AX"fsyg+zu SU s&SRrR@=ʔ@(i[@ՃaN a,vl[(zgD.TBuzPx7O1!I*Ҡ WLsyUh/:c샲:~ X ÿZ/ǢZ uPO!b.ȠlG=2μ/<`34D.?z; 9D8b ൟ}E8:e^Oե!D>0$ ;W3P=I"rVpmD}xćiǟ5B!I K% CV>M '=PMl{ؾf(ZM{gw^]@)\/7OiŧZfBB~hj jnN]w˳mHFХ}:C4C}Cs8%pp u3bD5|<|+ACA2 Ȅzc!G~೴smi;D\U%JT&Z%M:" dzh@.!< RYԺtb>ϧt-%VNΘ~ .=] `bk+l i2uF'2j| }e`8CgcJ=GW_31~E(T5B2 |}~;uvYbm l'`>a!,43=ihW K9b&F @21 M`=cыUaQe+yI4b#J4ۆ|qbβqpNgD8+U/4,GQ}|GkHwl7vX<_ ſ{G:0ݎHEKjUդsezdjmrOdֿ}!0я#zX ?lMz>Q4̀\үWid1EwXS _y@~A?$|kͺSB{(8K%oqṔxGǕΣcb,wؑ-8ӿ&28۟lWز,# Z*m.vV)&"YnFA8d*!+@ /17/FU<>v[(A℃ 5|dFگw =Gr03̍p|;[q]YT,=a. i~ɌSz\CHk6i.ǰ=s\kOx./&1uDlvrkzJ3lb\"6aQ«4? VQAXbGLvF\J8jf@u$q^Y[{~-JiY<}М=l(Wu狘"%܍Ŏ[M2^fGGCRQqCM[KH|) KCpx4#nn< a >ݲ])#V>ψ.{?NlKJdp)1T^x&31DكՄ<ІhYA@ТkXə=>8{VG?j֋ !v4Efm*(6AÎZ4gO๧s :Y {5i{nMNe'LҘ-{$BqpT7׮+#cSΈB^3mxQU!#+}K\,T3Kp^zG7:3Qc1 #\9 >yg8Z3}DhZ媈N[ ]W!!~p-~=e4UICAE96XU,qב ݣ4H1ڨ5*ܡ8c*c9|vAyd@b'N+j"9Y |3o>>ۅ7YP>pYXǪNwV[Namw91>\~_(1 ؖQ0E* O,)@7DQ&.{@,cbAWVsliIP e&k2n%hZ^G7fBе]BH4,hjUW֗ڒK O~3|mN:$0sOl;H-[ EyP2ef19cLb'JZ0-Y G)YoJS: aƌL\}zGmyJ-TEGFᶀ_Sab$0FK/YoډƨG],%|$X HM*3fJ$vJ|YoKkʿ})h :VP|IΎ0 i }(@do0軡6koCP=Հ-JIyAD~k,%PX-#ps))bJaN5q^mecv7,MsaD|GglB6htptώZ2UX~>zeiZPPz vNg%4&U;&7Zr E:p1Pg;?$c;c9(kASN :3ǗRFY,L "xIQz8";D$uN0Z"}K)ՠ&kگK'g-'ÊA 0 UfO +AB; ,{C1 ד1$} &Q%n+4xN؉qu3DJ/"ȷ.kMm[:[bG.yfz0<Xo90~NM&sC9n Zs16 { u$(kM]8W׻vN Z@_F146)^W<\~D_x"R51JUOPyegBF3ˌ@[Di @!n!tpDn~Jq zC2N҇ҩ0R؞H{Z 9Uї`Z\5i;>dg6%cH]it%(iO/"S|`uds `jkWq}֑*ى1!q][ LP" ;Wr}]Y˓'0vmL!0U4y^f]@ew5bVZ{-czŘ 5I1(>,kXCk;vc0ōj_[qg7Gf)N]:a+:<Ã0~߫p^&c Ü{?$֏a3S6Cy KpROqO(qjAHapQz'ayek[1FAj?9UXnuNJȒǗ7]`xv%O% <{cgFJƣ@+8忍`/¢.ir}T/Xqu*SB(m$ ;TWU=htS3o fj9" >]MJi\F(υ Æ6vD`x.䨄9-|*+UHb*d(J׿%>hىFp; I@v2Jxv@GheI1˲|&'w9bJ 0=cd+je+ =ٳ΍&E2mj1˲9̊>t2Du<(hTM Cʑ޾wgSۙ4FOJo0Е$,7b?hbirj1>PAr6hbCǒ!HPy<* ~cu}k)@ ֶ8Vs::zl8muP9QE"&m)mCv;,J7>vܞh{sٷtu?vR?E_..ۛV&R$5HK9Rxe X/;B5vU!I)q;ZXr@XKÐl+.{Laqe5({TnaS:yҽB})-g˯j[lˎd:kX|OYU'/zusjՂag`˖k.U I "=^o` P{ M %C!ݱBLD[ h"O6F3w֪c.xuV{t+ G7M/Ն XC.+)AV9? /&X)ǽ Mvq`fĖY3[2z^1zHgR$Ch`'ď鷘tF/#A< PIw. %j$ڕ>xP ?D{q" ~NkXz¸-eęmb;^Gr8%BGMwtCyЈ%KrtPTϒf4|0{3P<_<<2px,3*gDW^Ok 2 8A0ygńNQE*ZFZ8E:N2w8 ]bCl:mA6kIiG"Yk\ݷ?@(ZĤ]&l:cc̍!JtoI.U@8Y0Qv)Sa//?DN8Jl$s;_"A^e)E,M~<+R#;Dr^5~% ɳ~2h6WJ}2ercbJ*dΛ!9WUh,C# Z#sSjqz_q b*))4[ʞBT*X/yGH=2nؘbAR0a63ы (q$/وy̼ 4|oX&,6vDg4RK+;CihL@ y'9Fcp$w9l)k (Lf^@HwTr܎Abtݪ:Ոx`x<)}iU=7Lk~KLF"Z_}υ LX@X, 1ekA(܌?xۘzr4am0].$b5q-PRt[晆ݩ%$W~3mQSM65" q.iŵ2Dz^{]T8I+AgQr۹R7WfTsͰ]H (n_`c* jVvb*&{x@u#[&Q#b4_v6eNzDl0#C,?Gƿ;y&ޔ0)@G 񪶠0%U?^J# e 'H4{Wwq(hy:w"W6l.e+}̼hO&6?p^81?Bºrzۡv^wc-EDw__W ^UB] ЕM(E6{C ό\_u`zdv,eABC-Ӛ^X/B'+$9Jnv;^ʏ(<!wst%A\O@ ^@MSO;#1_PEH/keL QbunK%,uQ$vmim]sEu2_F ~}qՀahn)?6.zT=nn -+h3oORӈ0e Ҕ"$ox_%1ILgWZcs4}%,>bVf8:-㲼;?sLKǍ K۞PG0#^O)5_R\j!3 1`4^67VאnPѶ^ #JۋO4/w98!C}J[wJZ} $jyuV4~ǟ([VnOe.DR5i="$ދOˎp#*{NU73,S?J! )sѠ6┆yҰ6w\A&G<e櫈~tB:3R %!yh7mX/O:h@27\/I$);N.Ibh kg*dzKIϗlLic |11.9  U/Τ"-ߍ: Q HaqWFU(\Aao1G2*hr2@$O-5泍*wuGxra!RWGHtɒۖOLI:+ 5H!J=o=w 0Ջ!"GBUB ?s$+#OSjeRq5f/&6:J9*w}Y vw0O}@oP> K2Gߙ_3sdhӊA(g;Wώ0*0i{ԁupiSICpNFBmiT'zu,@;9Q?&*&(yq#"rEb.tĖ1ʰ2Yo!\rR܆4GQޖMգыb5f=QLM,{;&ld|lv3lI|mvN[s7@>1؞NX{ᾉ?~U^9V 3Dwr] L晵ˡHߏu>oq v%nKL{'iӥsSd`} DMY8C}BB(NXF^}f&A#ɋyg(Xׇ]ס!Zp%4yYh9[3(6:p(z}ⱷX#ZC9}$-9#M-%<\[f^۾øc* t@EO~1co3>_^W% :N_Owe"νy;;=~ 9EK8}wrg~$ ?22 W)eyQp$'pBS(I/[;ljxG $` 3&0Hx6ۭ%W}g$n;zt0q u1wRˉѣboFbqBФJѤ,+ukaÅ{-Pj_Հ`Dp'$Y8qr ,bzF%KY3F,qv^h4ŝouoT #xȧA_xN%/SM6)e`a[gEmM x{#č\Δ1'bMb}/{>r͍1[/vnrm/*ym\lS *vJ@d OŠtm5lvZCk(Z>̰O"XiKb);KWak2d.d*Y"m-l,Ze9YFb6| YdJɖ}CA]:6h܆8/~[H oORNPO_tw%pM7^#h׆+;7xi^=-Q_nR: -e4MVڙɝOn/ã#X+3YH>zG=Ay*"KߏpZu&n&`agkhWdW+6u@2ۀ4v,(=va{%26qͦ]ٗ'{`ѵVYy8;@1|kWnco[HIHU<(&9Uq-벚,?Y%Ad<o=MlI]$Jӫ-1ǝ Ѯmj.I1V 3³QӾH} lPU"Ei*G5ԜE w[Q)'˺"[L Zun>I bQ MOl %~a"Ӓ^yi `|^Q4 ͪxmaq\4 W{M`B!\r[L%n » wtmF#L'400Pge"gxꅮFi?-xU SHl4|Ď7\+^C3v^IJ:2&*OԵqYD l0FkDr?Lzo BIWΊuifE k_gʭ{"Y&"i^$HF9յ&_N!2/ͺ&~ۯFYC^wrSsmvQ~kusC=ERa0;>2Q&K=X T*{kq îUķ^m 0p# Z `ȁ$a7 _!)ܸS !QAV[~NԳ1$~vI-=Ьul!cDUZ֚w0'kA()AOPt|G-æ0KOkMOӑ/׋/ƙ2'$B3';&0ZYh8veGst/PpaH聃Q=ʯ7w!+xphwM[Dz"qnoM l;s,53,YQdlDHy|D! ѫ82hqF8ʓH>mg ^xQƦрM`oIc4~dKjS d wZw{fgt:Qm AMLazmA<fSVD=_P;X{\$c 6Zqk 5{Y*s~7{<'C@wo_ozoڨ8(G@${(ȶ)3 vj(]I>o| Ǐ-&")̗ 'u, W.,XjTt;bJ+,c F|`I)x@`s_Ĕ'|RaeANtLxy`ny˞ͪӽ'rGIl.6{՞!z) letzNX={u^N +_?8 *kڎi]o)R6.eΨɹ/Ld Ⱥ}Z}Xbܕ:o+>U+qzSuŀײַЂn HUnQ|f[~@=(3جWv8Vl*tpcGH-XzYc]h#g ~i.η*mPַ+Тxp%Zk;J hXyFA{DLBn:Kj& aּnCbRn e}I2l&..'~fAﶰ"a:#y"96IUW% =R +VG97Kq?z ?^p9􅕵`56Oh TP$ p|?g]ps#M|lN58%}ʟ/ӯ&mD9]Xc1f=\Zz*fu;LDCO:IC2Y AVũUu$]_)@> ]1j}$m>;vVvu0-!_=kԫlZN8qdf-X .|U20,SG'(oWvte6{M2ЮϚ5?d^/+o <&bK]SU ,TL%iF^ڭ<)BL d^vHG{I q fޞyr.u6<$۬:R4*$|B/q(gd<,| ;=~g iK:|Nquaywk t%[Fƀ>vfΥ5Iբ"f RX:ъ\vvȦxL]S"]w3EZ4b(@fDŽq:Fyjw@ 9C ^ԫ6J)R˓]{1EpDeKIg]^v|0>S{cCւ0'k3iJ_E5&sxui&7!ګǸ px>.zǑTf3I3dDž2'OMq%^Fi78n~tm2~+УݐZ0M~kDeƛ(e]gq贂βյE\:$*4nuuܯpH=epޣN+p.ot)BesQaj!C+G >\,\YE>& Qng"@5׬!e潔cBA8U_dΫq/:b^<@AWO$eM3qؖ-COn"J -ڵ-O¤^"r+ŞŌ\s4Ϯ]~2NIm}A⑲ҟ<3fk>?([kkj3G4%Cus %pͰ_=4TYBZ_0aӧ0#6$v\ \;] Z5jʸt12B6F8syD|Rǁ:; k#Y1vωbQͧ踞2INzh2EX'* 6ίza]كUEGs 劳({(ENIk=Vahco1I/S a_hIfdW:Jq64`EsMSKw|5Cf(R9)d/Y7m砝8Ϫ՟ܒtn-8`* F\Kf'hTM)N¬ < kWfd]iP<[ɢ>TΤZ/.0No448.q)K2ˊx7>OJ$5yix^\TM-fC4ԇ 7e$ILU\RzcGnZ?mtD11KCd. $ \-u+1I"]c0BȘR|qn`,Jtc:h}"y"Ѯs./AaSTR0YH =3(F ĄF샺`a0xr/x53 ^)O9 J$;-,:=gʞI'CjLGS535lIQ?SʞG1'˾Y4 Hrx?7+0L%؋:7C,ڄEҚ?Ebrou:4Xߑ'،N. Hֻ a.q;y"0e{FKKZd.݃3yE)(vQAӕ/KYq]1I@)QmbO& g`5-VU]B~![W˗q|58?G)م۶`_yd)]8@wVh(~}ӛxe^svgM,){N(WZ[BlvHTB 9s(aUmKt$0wnYRLU*Àzmݜ1L)I7^Toh߱í݈?a3%alnmcC\ўDv|?/3e=L ?^AgMA`V ]C@A#>Rz~a:BY|:ܹjOZgCFc^ FP!/-\O<kY<@5l@ +& %G:ȾfCGc 9FwS]p] >XJ"E)n Rw$ϼiH.>;YUmow𯪸_0Y,+Y08$%~m]U.1d<[%ojt^ [M$Li4x22o,1fACuK6גχ1݇h3& &1 p4fјmg`1ICkR=МdMзPO2 5A@[&:AB_`d:Kd-QOǏû wWVB, ep4,q[8 ĉA(wۖha״F(Tq1oOq\%@Хsl94TxWCdq&WMZA3.GYl!|IN%\)by{ٻ m*DqD<:${CFч1! rM\[(l)j#.%e?xz7x>~_ +6rt%sŌ9mI5UN `fkj3JbѺHV#>3njn9ޥ\R6`bܠK.yGgiCs6#H1S/EBa5aN٨!@qߴ5%?q50wP[i7<{j͖U:aכȱ/0{a+*q.Ω.1Ї}_߬v7PY0^N%MVL6ӓ& E 2cJnu:Ͱ'}a<abFs-8-w"icYu2Oh$h OG_#a4"qn@!}'&؄ eUv ъٯK,oqavӁlAz*U`Pg-u@vp`[PPWAK֏ifKV^"U6%`%ro씛96UdnӢ7 .4yE-) 5b =ǼpQSfId֌27U]s;wH^@z'pkxpy+/pʱlcK,?̤ى6rY[Xz1w X*jU;Fuĝ5|dDWzC_6Pۿ^ct~(.1zӯZvzORs ԣAFl q`h|^N9< BclQV"w*QtUlV^3 `[J) BP5Yl{Qɻ6VR~ϐ$jprn渺1֬ EyrGgL'AѥmO39_.@#i;[nԤ!ív1q0+G(\Z~w̥u1-~ScMXQ&ۤʉ?fNe+kḐ5ֳ"Bxcq:S2<>ȠXl_۳Z.ʳ~ƌr9DukWصDgʜ&nO*#Z%_ݝ54J~Z GA: "%t߁Hl"٩n!0J~L'zlj61Wߨ$Z<:2tJL >}cmgI }Ѩ2Ak]t v'uumYey%_8=՚U<z]`tyaRH{T\Bo1`=BC TB =roxC>ȥ҆W4ӏ̖ ښgXNROs<3ߡ14yq #h8o &/C *2Q2xX^ k>[,SwYx̺HpPJs=\+Q)nx>p?Rsc™Yv** A^X0tKiRtzf 'ZcnMْA?MNQnL3*wB)%8T7ڿPQzP7JG9@YE!=ؿ+?ل P M iEȍJݜpfRX0TS#g3:do&*Yl4r|@`baM?\'tcz }?a=LWB8C^T|n%$DHQI1Fc 8Jhߞ"^Wwۑ&*^%mE$hX]0,`T{@_=lFZ4U,j6%w Քߝ9Ju 4\_~EC78 jqWNm<F1X:6MhS%?6%Ŕf"-RXR1G/:nӻV}|Ty}ejn'_M G!˄4V`# q hᧅp@N)N>#q'iyĮ(1D3Dg?N7,3gI9a2wsȴ[u訮N7J?%p1~r9DȒbQ: ^p[/.pwh+fNDqFkѼ2Ü׎ 6ɽKkw:qd<'ܥgȓJ<D@0Eśɴ nFY]fg4t};=-fI!ӔOoU¥١T˟H b: IA[zSj*>&M\S"d[ϭpϨ FXnoJ۫2 G#5s;`xToN"!5EDtTIkO!5tcvӦewvL }s(FVRKd\Sz8WJ) 7 [Ԣ\>ԼG1;JH>w" H`pJk\:LEFa|Lv>InS寘L#s9'$󖁜Z>#f_sKJH ,Y#n-x%~?2v|*a6bTqf}A.68-g͔>uS9iT8u:+eo^z6YE\GWT#ة䬪oWQW햀֟|qi٫ N_7W9"e٭?黼.SsꗔqӅe#&~XT!UH1 Sfa))8 SR͵ O90Ly҈;N5\Oޚ~Г_Os8 oya+ې8~E_94P0Z,9pR'.) "χHn?nTg_=~ iNl ^'+D1s_N>Ĕ.vcQ?Q(hG-g$ t7MԩMˁ^" Tsq]f עvW LSƷ?铽-7x K5gYaQRѝy@?"flc gurՓXS9N^Hof%ߠ҃=aEg{k?:Ё!7hS8!=tEjeb 7nͭgZ^Nwz܂Zi{l4Blwb͌tyV*/bvlS6*гnDAx >cUW<(˭heW+øq 0C,[GGk0+OqVEe7 Xb^0{'Fv\B渓2GBD!妰̿Z78rW)j[ hn?X"fA}8kc~UؖCz? -\ ;$AUz8?Yy[\>LAS2'7I<4{+`Nԏfj|tC mja# Y\}2EVaqYS-8۵?x@j ZB;u/^&qN 60ڐ*~WWkBiv=IWKC˔H4HQ`¢sZRz9ZS!2ubǒX\ iHuvƶC;rck( -67r +Na)Ɯ ՟uR5QT'Ь^r/B!xNZq{YtKNlp.LuW_'_ ?Ox(qz'NGKrьu#3S{ fl hUG}c-- 7Ogꖓn,Tc0| NR%~7bo)Y6Pl/0AI+]¨Z$8'^^}V>?_|DZ2vUCmY߳7n٢GBˋא9ea>ؚ)$tԿɉ2=$u|ޖ,SghF - (j]ɛh7k|CUIaSJMmahNj2n,=8lWLg&#QyjlDbH%'pA A--Ӧs,V F %Du$KC>X6vc`ҟhjƥ9!?Aw-ZMR:h^+rlfH(G&&E bMF-'qE]tj9sZ%kn.ԱsI#%̒=ֲ3'E\gep۟Y8^_?'2ܗr%DɔqQE)&Ӏ ė! ĥb:$̒f9#c:(__e&ÜsW)_)-v,T>r(|lFd:Q~1O ӗqz,+h7V] (m9lч-Bjpm{ֳt5ZLF u0ʓh s]̝Xlp Y_a:Ob90ktbgVV9*0Dnp.eh aO+ݮ$tmf"'W*K+`D$r[]ȏZ; k͙h`V{\~~d_ S[_ Jj^MMPX2 $1ʖ7c4z*4%|7Rқ/I;m ʭGf$^C=RF6N.Z e#+}H<Z(~Z:CH4QexJ94+gvދ;n=w%BaYNOzPf=BXgc4z%e-qH5+A4֙969U>až{S^ٹsǽEc ns7OWE̓v+:u;A"&s3"18Ph:%cju)gCCCNdyQ<'Lr/ϯ~P^j}3‚< v$qAJ /+ߘzS?]ItS#E d"/B\̣V-σ` &9][^`0,~ǒsh`"-VhBaEQtX]|Em.ƁmNck+CG=xv?ȨoUN5bW̭E1J ՛Q<q=Z kHٯ֯MOgՐ L!g+ T1Z[\AnSEۻ{z0Zlg[kTp3zK\ܠ';sxSk'!ǽ* S}Rpd8-qXiקװ2#e< E^s`o(WEA(z\?Išw$h1t?MS^w R@xyR7/0yd|cUy+dN]Yգn< @X ȯWNjm3i7@mχiAQK_ ,fVPrЎ\8:;a˰ ]R{dI`tQ~"\qmWGgbmmnv8 ti-F%˘E6V)ڗj߲ 2F;?t)`20+|l!/[F͟nFL6?' ڝ5+5R?҇CI7e;66p 0sgɠCW 87kRNKN^ ^c4U搉 `6}E܋F_pwjMweYu,Nw0zd>-ѰQYfh.OSmݱ]K-y O`tt^79dNEvILS4;z]V_, ?4"Otڃfr1c[ Ø.gpVO ZsĪ^Dx`9}˕Jk-U/$2"ё!oS)%(d+RU; M,8+ μuEl:Fu 7<)Pi#OHuQRG 0`ճb@u]O8Ɲb8Y}g/IϏ7O=gz?qO.UHP00F$8f>XnT=T$8r Jmf% [=Sh}: 9ϥpM[NNお.snJǓ t$dbzYuAloo1?$a,sR6C)=GSk\z<46tp"0f?"UeBK!?hJ9t0,jÕ6>^Նs3z TI 4uGi;,~P+qN{xZlM:a&)(7?iYa]4ՉVg} z]1-ZW4ىI٦MuP䳻u/~s3xwE<[>lݵ(v:X% ^S3jU¿d@7儑m+(/DfߗVL9)-61Qh!+a7c(?M1C/ۼ< !t/\PjCo/ħzRp lsnG8s2#ƴ O_8˯lc=ce[3#ZP>RQ'7 4iR >b.qؤ˿kELF]]] AP}$jHbˣ֗oFlD,3B9!9yud唧E1v|Vyr p]L'PQ@/{,6;0Nv)m#Wަm}/QbĤoc= ovK$>)#K ȳǽkd=`%,`+?+DeyQZ%;sf90kW;'[k- 6\/D(`}rZP~,$f@UDNnձ*MU8|%@' $6^Ѓp KFYeSb=a8?ո QY03W9^-@BstشTÊ(*,'znй?łQՊ P/&ECAd`a ;_:'hj4mBj!0KDBzo) *^b!O@v<#Q@"Sǚ+9rsUJj`_ĺzo/'&i6LoŴӻxp ms͛H(c}cR[G?:~3&EL}ҏy Ah 䭍?Ri$a:tz.s) E䵅Dwl9+徭.Kҵ^LFL5!.m=={Lb};4j߂:C|o``@y5ᣭU2G4_2mVpԫF*1݂߭Tp{IcTGT@\jӝE[Wlyt TN(Mܬc. fQa@ǀu'!c K5g07XK=W6e?~̶E^2 e@f$=IfNHr}hٳ+Nkj!{yX0~2yІox${F(JHXr"Wd#-`@(h5UɁOTd0[Y.=w}~W:1_$5N37GL6CeKD9E#k#DKP^]|4|:AMe6[OÖvx\f*VfmMo"c+_D֘|/9OB|sASŒq4h=d~>]1֒YPU],KO @`Ѯ0REȥJGcp+_; }'G&#[Fa P3zhkʞs9dZb2uZQ惓8;ҩ |8"`,ͿہlD*܏??!#y%ߥ,劣r1_p.4Bd) CeR1W4&[$˽#~r7~1෉>ȓqO .,ce%L,E%v^8_FeiAe( a9)sTzgWLC:\C@Rf[:rD_Aey)ql哰]w55zo۵n+3Ep۾]!hi +dO:.wdD,!>џ{:V&0"V=7K^Qvٸ#K`o3hUuLE*X&ej2WuZyVk>9N͎:6_Q畱) (DpwmU*QL7f<? ֌DTLaԚ'^dUyXG&^:Ӱ eZ7j,$01җB2tL⦈-q2 #ˁePh;6\JEFncN!ۊ%"+` d=TO摈}i ;VjC7pw@O}ASnllFLDw71 rFpU4#eYTz;Q ' 1܋P5 "G b-ᝊVpo ]0=-4N#'KtMqtˍ-D$U>9 F/(,Z'.m9쌒R JVG \ۯ]gpE@/@b$o*_S_S1ȗem]ihhfz=<Zض6A[n' < epCȵv!uHFDA02la #XP+^ 41섫twi7S:^| j/i?w@(*ML Fl{UOP56e[WAgf2~=9K;͂y/W(DL^҅G{A#IrFx'ϒö5WX@>i]GhV|q>"*RguРvyNRUs藥X9ĻCo!pv fcm4- gTn# :ܶT뺜}!GDb2C7?n:a:7w^Oi4~^62+*}ΐ+j0+ml^C"2u\(͎䲫EaYL}"Cf!»k=#̤1e}#ڀ`֫~#v uБ'Y7O!}W.1RcßtLpSўKp?T+T֔rjӼ>(M6*gѨ)Çp3h3U>-bj}j>H`hK<4ђ1õȵэcȻ3$A% 8\W)iї>zVO{I}`=9亦`TtLGGhY,lE2G~YXallUχ0"9;ʗdFbWgqHR[!PnlxvA}ݸL+5 bg{'VUKH:U`C7e{n^m EñFi0vW_ .ۥ^(R.Ypm^JbHٽw'4 wq) cn ֐ѩ"TF XJ/QG9ѭe>Kj7DXm{k\F)sO2Ȇp xGuf  Qh/}ɸ2 k ;/" t zdHot iyإn Q!s rCAϮEmӂN3_B᏶<*OXgbViĜo\ڦJRB\ua}@9B $0H|xN RO*5K3xȀ]ެ=lX>.FRdӊZϞ;e);E=38-]h9 ;vEGU6gP ڈ]dOx{p;O"CkQ[w^d v+-U G Nr<=x>6 Da- >jءa*m`[U N7O%9'6(tEEA>)E$T26-)4Љѹz4:.OTuЫ蒵j2THz{ JtT!p&5P5"jgj rf=}n^'mRe[5\(QEWW(}츾zH4ۓ*퀎9S~>V_JmрD'jrty\wuQafn% "i7 [Gԕ!/_Z2McY5ׂGHÍ0hF;2oL؊7u'cNj|ɴI*6̥v+(4#7/ A|WlB d f>6i!fE[كdb * j$s1gz5)p:نܹDES#ȭ]bVAXʱL3? -1Dc9MRh.#W&{=@5RPQJkhqE@]=( ՙ B3S[].*A.V^vȽ:te(``+ ncx_qrӀPư)HU(JÒ튤5%lǙQchWDky}ᄊ[>AQ4xNGAFcNrLbH8(_-Ǡ˵OGb2߮@mSq&^Pd]Mٿ;l XMS6O Iq'v`4^S<|~5G;aounRBT< @CGb8-$}]qR8ؑOUm,ଛx4 gap3q0pяdԵ~Q CI8Wǀf<,^8Qx& ٩c6ֹ!X粐i6q.1J=N%\Dr4+Gߏ_LIJͤ+d+Vg?&V%I=7A;8X0k=?S@QObtCe풗Ѡp7X_ak0PP\"LDM9n͸1ƄYeL?zreT(k:[B/j` 4TM$/Rw6S9\-饏0$]D!5p><4ZkvEږëb]f5p:2Bȧ)HW׊ k٭)4Z׊HjC'زrګyoމMo`G;@׌::ƔP,bګ7`Slp 1hd5I8ʍSI1WZ u*&)$TCCtMIқΊWiRx%YC^" E6Wh^I)  `}gQ9ssľҕv_c<M /+ٛkiulL KW[9:7;]<_܈BaݜWy+ {kkoR7WO h IAȆ*J#QE.ha =X. ǏZ]X=ypWHEP%eF/)H'GI7cxX7?rzoI[إPoP6]Vel%ILHI)Zy$9sI\D8;0G2RH]W)NpeIZq={(IILD&ǿIP3CbrіBzɌ2iWSP~>ٻ9?p؞>hsO?/Gۀ-[ _]Y|+ [,{:qԡ@0aОF|tefEу$Y6t ^S b:",~=uXs_ ӗ1'?םiETE]"Ncio_#&*_̵t^oWM]³od,"x,2E80[萶C[=$^y ι]> $9Pm ,oe/Ж)u(H.M?Q|ak}M7gvc)tȜ*Ħleɺ̄N7aNJ3Z2`{Hg߁ ȁ#|-&G>5m-OLM-6?H_> T4п>͖>-S`fgu/ʀA0qY`O V阇~IZ=m߉Rޕ9\qbR3bY%cZ\&#J+ ( 4QPwߺ\DQJf{cG/kČv + 0к}CéNON/|zjӾ]t0 yҧ'`Mq,HC((Nׇ3ŋXMڪf"ȇyt- .uRHrY8-ٗPǁZDNG77abcyʐQqh}A*?>Cat>Q*t[8{M g=ȃ;N3x83߫չUZPӾ b>.k5A>PҬ‡'hSZqq w )Q_Iɭ %_6d3$Z\ ˒I|Hj@ހo:[ ]\sfe84rĦ+)xh Y ˲oD3+bSwߕ3IE#fcUFr6d_[zvAw#-&<'b8oQ,-\nV|I+<|" ?$;|` 7v6%̓kQSp": m;ThfT~`/|_b"Qt/*_I'Lj},HeGz?eŅNM?hN\1:_q3ڳ!+G`d)?[d3dJ B)5Nz(*=/l,ٟM-K&I\a-` #sA"ɿegmݏa?/'8ˣ! LAʩ-f_vAX웳?ᵱG$ּO'9QLm~uJFhkz#s;="&`C1L5-ZT i걞λ} 3oF .|!|ru谎>[n{H$aF@K\/=Mf%%hbX7<~(HRR2fp`xXYxx 8g&u>H"p^Pc˧ytkT#\PmXB,4Qx%5~笇4"ǰI/)x4y@k;@so&IYS?~ZD 9HoS3WR{:X7*XJlEyw""Ь^1lwX[G uW ֜= q80ħ^tv53^]RnKBK;!r6!~ua1y24K"ŲZz.I]Ρ@Kjgj |wqB,2$ -%Ca6ŏ,TkWig);b ό= ː:=ى7[|dN钭g @(C{zV`1a0cWyU.<ڄn C !O9ABz0:dV̦\@~n)rϽ8֓KZc퀊dA/N%D)J)dz8cS/ W^`O3'qJX@!'DR U&̦Mo-q%itG̙Ife1wL.v" {p;,gIYޮ|ƹzMMRC`CO좥L &[L Pit SŨA9L֚JW7||mhX vDmS@tCގW9OQMemcS$ӿWRi(Q3 ml8\wUo_Ӈp}/GK GL.J )/<}9ׄ$rk<6ypPDU?hwx> v&Fz/Z˖W>9,u1$#-敔"|>no|䟕%[>t^TvŪIYߠW-'[fB2{{[rkS$, R Ay=] S5xu'oTġiE(H{!Nu̵<6Y۰ π&l23Z\%z UHmkl#,22A&Cwl0PU/ojdo#4ȡeV6wSQ`~ TXG ͐&=NjEwQG#[x=`\ ,XR, hN"卾&Š3w@Jsf*)&0ץ~ 4h:W`cܻN-Erv"+KI J6 M;@n|Cx}&zàۓ 7fVanYv$ofb$zyN -5yЦ83HKYWrz!4qSEoб)/`V ӢB>so`iwRMqpteE~l<Έ}mFmbKTR h;^,PI%9jrGCY[!ˈ.6"Ic±C,#!.--~/LpB IneS.MWIԣ3?v J̐b!l+!$&<1'd5T-9uE5][ )F=JŲ5xRr4-ӥ <44k3'WtYҠ+jtR:5熯K2 {Pp(ǀִr3{7`t;tO#Zxkz (vƣ_{N!>"~> {G]Xz ]k({E6o⩣(t?eZ;+gNj",]΀ 8WkΜn(*PV`Je t}| eNlQ5ĘE5IPBhgrň"~BH1 YʿQp갉r؇ V>%ۥ*Cd=@/ВݚNZf| ;e)ĵt7oa7(pWTҀAw{mM9`Hfa.iPurge-0<ᣉ(ٹ5C Jg^]B9(杌13r_S8+P#m PD8;dlJy,lo A9ضQGáa cr>>fE U̼_^CTifg(ey ̧2MU)fFq-.{W3$Wu- 9rNJz;ݘSCYN|;iX=4L5WHʋ^e/ÎWFPJ瑎ⲊQJxc,SBAc6nLBmMMQ,/>f wH )↾q^ߥ)'-4|pFk+שEu#˛^KŠ  z1BӥdCM(6+j hTM͍ ~g[`prBYW r3H9IL {޻_|z{X-[!MP+tB}א(MU1l e,Z{Ls8Ei2p.%q0!  i`HeAݣ}fVW:l sQ-(QoɥgI;J/!@jdP:J( |+:8jb4˹󝨰'<G/Ov}[Vi. `?^55XDԒ@} bsf0%Yi6(_?Mc{l+-vIWF m  =c_vB3fFMcfiM&X6|1ـ C$2k.DGBKR|l5!0츻A-#e.]Z"-"ɟiJ]rK.;TXx|δAd:HmPtT*& rK]X^FWBk\bjP ݸE }# S&#YkaƎ!P|k uCF'؟rES:ؑ1}aSZMoA?#aȾ fg{(h̵1H9g8v3 +/mg[4.V$un6kfv #GECз2:-1IX%qˆVqBj‚=t($)RClQm"n6|mVW]Um{cn4m -;Q/܌0kk0&uCOo lJF-!Ӈ`f釭LQ"'T0r@P4Z/rqv,{b}LM9&K@k+q. t0pzm +NZo@<% ?,^"̒bAW-;/"?_?.K9bg뒱vjqZ;QрHtN6XyWۗ$_NNz&7מ\ jݗw9Fe(4`[ɕ{ Zuv%5H&s2^D->ie|6TU 3-;hmN .%%Ǵڄe\/ŵmػMW،[^VxZφO꣞֘o+fdnE}wTĹ4}^ srFc+AqKHoN|cg[b9թj p0Px*5y!#3~j]J6] Aqj 빽["RH dzwVVyMy@th\{?@u /G\&4 =ZތOf dv:}9ζCN'J@FS]}\#CUG['B {.i H&^8䎛<4n9̿>$i5 Z@يIOe򧺪u zdzJw}rz`o*;n ȍ׫+sYŲoc۴3o`몿5OE),g3ne`d,Yxz9)-SH$R}N7Ui`",ZX {Co8 yg:KJ~x:16|axNo `yD<˿W"op#,.M 9tEWɱ4sB _bS61x!,K=|<<0&c)Yk2k{D86GdEorP(0Bl?CUU[gW{BճS&e`2{XV{w]5tU|3A5և2V|0k eiP2zs zͺ_g$S .p],kr:\5M5EܑEF܇&Yc͟Xw71e>J(Z~iynIj!b{o J4pK|Ӑ7Np[b SRa)Yeyu8,_/ǙlD%,gB9h5f8ao]GθŞC3IkHXnv;>l!~|8]@J嘵ǬGds]z~r`%PFBr}%_+*,/tHn:F?U2!֟*XLJ.Tm,: +HQ{vB%:N %[LH~l}ԛ› G# kcecn"Ee5LJLnԲ};?^=099IBӭ#Iz5[v̛,u^f_NJ^5] Pݤ |%Yb 2D&6To&V ~*1qHiBSfZq9؞)X`,=8OiZY8Z"hCq@B=z|"ߨ\ .ݹ9%i1[@#ȃT~j3ߴ~ D YDPk ~&9֭2o`2^nLP%IZÉt.w -'_R()EM vfɓG>ee.Ev hfW<<M5@ʚPKwM,8<9_8'%`hr;ey .ZBLT{߀HX%87Mw&,DK8g8ONIfO&cd6k@l!Hʨh(y*xlrjʹPyP@f9bԦ |Ov"ҞEOE5DehgXr:E@(f=eS%nPBPew(l5mP?$} ݕ /)FfeǶ߫).òږd\]5UG iKXqa{.u-5tڵ+缰 _ IjCF)%fDG1b?ZmZXt>R3!N2&|c4#Į?OuX dK'!NMz65Pݰ;㻋(uQrOdl"z }Yp:+vOѱe6\@PRBPm,9bzԾ3IZ ++ԕfۜ Qzɟ^>nq%+oI˒O]*su_7 aj!\yc̹:WJw&Еxȹm*Z**!4 S7)9js[j.a*srp~V$K9_C=˛c)oEYRX#-J"m !@tz0@ub&AKͺ'cOp#oEQHe;}3m-$FɛK/-#O_r(b_A,蟈+I2H7gLUn)݁ה߼q G*ZC9fPyomEH7 er+:rpt9϶/eZ&F]<Io? /B 󯲷һj7Q]rdl.zaA4614Y{`z{UQD IwрiYz^kY"(]wAQ9RyD8(kϢ2@m UI[|Jz]F"YAq5T а(5| \u -MU3یO0M'C q`qi骞TU*>Z wd0n2O+}e#~7 s`1vWA KϥlۣK]{v",+բ{ f ˪:tN`h:8Ct+dAbStSV2=:$s:Rp6Rܫ&(HIy[ZӆSs0i_.pF)j?{73^ԙ.`BHn@O3p6c :B#DzȘXN70=6.B3j,G_=oWoT-Ձ=rqÖ>ċqD+ -bε' {E Osk,"eN,)V$h]9wٔ_ESz=VMd}9Gt&d0 !ExXEQʊX_˒gYz ?,tӛ^ .«""iAe[i4S0;!;cӪ+Йh=fffPdޯ?%U*8Θ R6@),/R.z_tlGZmFdx 9`%D9 &l0K-°(͉fdΆ.dPk0)\˗ftx2saOJC>rrSM0e˵E-Tfic5[I+%n*<ߛOY{tiwXN{J[bQJReH3`£kɬѵZ"M$Ep̋jcjK !B&'̇l(*vԍ)L4õKQKF:THOYK*sw@a[ ޚk_ɪO$@I 47*`4&tgy$OW=_pV) qd쫍orݢN:;DbOGR: ;r9lX/.ep .+䚠<GiF r4X eX{#>JJ)ekԸxb{U-δܔS!QG{H h;õM6"a@2A뿺FE M $N ûz[jxZ~"*gcҦ׈ %;?F$iңU CEQB ;na/xj)})Pq7'P+:b]up]?~W.IDUA`5[d 16f\'F,+e@8FEpm 15!o7f%z! uѤw@Ze fyne(' Wg[`A)[ÑE)l;~ԇ˚䢉BҴFF- C"4wnȡ=s94aBlwhv||Tt!A2whaLQG))|Q)zi~\|3鸽O9^G2-Q#4# nRVׂYƉCf2{b H(#Ifc5Ck~KgP3&=HJn'c1u[L)Ӊr]ܯb9"u a^=&ijhxcY V* (Q[(ŵ[5fh@SVW[n2ˉ%OybLߨfdQ†{MG{x9t{ v0*'f Og溢Ph>)?e=DXQ_k.f@_%;٩VvƮV,b!H g.Вn^ ؎OD r&`満(_ug]If}`L0I3g^q4Kb%yE)Cەo9 D*Q%D]Lm9 ٌb_7rA ^qZePEjn zZ֫rMN[ 4lj1n0 "Y',lII[/nv4i_DQpțO*HlE`׊9?G-? AJ_G,Iq ڣU`ʁb9Y}eH[FWs~ilqQU,|n~.|uu`vN: _nl wþIZGX b)B 5ɗB2Уnc_idH? -d0K$1Loߜvv .M,_1' ?PŠ?y41+=/P AǓ^l-wu{ 'R?(laa/Lr`i*B^iڵJLH9@r+δ.֬*=_lqtCqGLRiZ[a.MR?GEپk`>&ܓex 8Fuhq =l8" %9$;ϫƿz^XqI;>C*\n-O|޲=oơmu,NNz/n\3 mro˅U%@v{9J~,v/U5]Dƌl9TEoKQdfiS]91w(@F&stvDyR_Dn ؂m2Ɍr @8Nxv{mms|stV;$^`c}r>a3t7K ǟDo:Δ<h ֆt<*p;iGE2dk\IhG(b/A3LxӽFXچ•'n@.E{j)nh.Ɋ i(!((`GGSUEl{u==2a.#t 1D%_~u9e݌481n״KtFC3V a>3n^Cax*U]ɲtKj@Y5țc9J`K2#]"34O"8CDϒ.Nkc{ܕVfŗ&BxB( $URz>JK)캢Bs;`9:DݾV)굴z:ƒ+S/ t}Ӓ܏Յ<& Nsu߁ô_ōc|*oC8`tM D[ &vx[(i+QJt{\;抪,p.fϕ.!43ߚ. 8U jK`J(|z$e=v 6*\_` tjQv, otk`Z?5| φ&q[^)~: c**-"ëBs 1Z@ŢR]YA8⢐ P\n%=c%,pAy{Nڼ8K:%=jtlro-q܇Q?ONa}EuIdA]1NҺ:ZgCsq?piJO# :#ТyS<OtK) ż7 RR4ؿ:xȸ80rCC~Mz.HS +v^H+P*젽 X0;=+J "RvP9HN( cl&!`GH¶ 0c=6GfP[EquxA=d kT t!aⓡr ȵ XvK b&ߑ 7+Ele?1fK\*pF-#GcʔRiGig1c1B6Apt .P"k;SؐeUBAVi3rzFH$[{bb'~}&G=*6]SW=WO̟'`K@Š'oF#ivJ˂~O.!uuZG "{PW? JߘFWK{ˤB[OEvBy2F#eZW)_|&tb6g4>/RPoXKRI%죓+5q9[HELh(߳|f{ϒ6cӑ-K@@ѹV^%q@)3 6l~g)qU>˄%X?E?sO-C,\=9ZmS=usӥ}q9*ֻ׎':bbhnĶ41 b U_D~Р/%\d% <[Lӗ¦sZ UՕreқ皀U'?ONo.\-CĞo@γk޴הMa=T3ՅX2rDnXgݤ(#%G:B[~A+SJ->B̌Ŭ,Czhg [t٤A0FP$U 7mŐOe_F^с:ZG+Z(Iƛݪ`R]'{ިK `y_:ۭMV\`?^Q{MbuYdv.L,,8l坏jGQY=XnGhGGePpu, <:p~&彩ba~~Mi}6l֎a [˧UזG I2R;_qѽ3hÏj c+@FtI2pޅ blD@$" 1L KxlT gdu?7{Y,\sɪn|OQECoR$KwDΞUr Ayq$%|ҤN0:vRJҒs>{WcT],>;53 *8aI> MwYԺLf;u ^)N[kwv2pWBp9AXCk2NVb؉˼i7 =wPBֱ7" I&Mr)Z7O^IX@S#FM2 ]TI\"vɻg\1 ܉F:Eչ]HUVU'0zq'J!kiqMZYmsuD8ꓣK,fD'6 rifس apjÑV)V`6u nS~>mBBQm~FaܬnJ>X90=&{?)MIf6~kv1.m;k_dD H**vîmt ؍~^vA/k F'&lC{RR0XqdjPܜ;e!g_woʲ!'Xnr9&EyLsꋔesGd+cmP8Ah';Jk}•Z NfMcUQl PPԀ"ۯfAURG氃r$gI "ZS\)lHaSQr3g?2ҵETm C2t ^}.I~c- ߲ۅ_֓:1.>ԦnV8(n1IōRG5JcN-sЎ_,!&9z543˝+Q׸ ąR' O& VPaelc<:XowV8 #ŊbaF04(Ho@\{M\'5nF6 O[Ijpw4oրuXB|A"!jp(SeW}?3 /ⳓQߐz A-4{-%OB)ٮ+/hz:u3 t5r<,IHG{PU3SwclwB h) |}wbDɑ#U@i"ǕH #eD:οM꒓ Z4U_ZSفȑ/ ۾~Hq _G}rIaj5VwPǚ+:F0`+,˸O4Mrd9~=q!ȕRNQ/G̩vX/oɸ&WSi~_) =[l6yOGw.oW3FV~w!E{SP (lֳNaAj>3"E; 2vL棘كVk a$/ (a`'be6;E <ձ;sHz(6{:=9@ؐ,( Ԟс k2IxC9{43eqу^/0 s U/A;c -CxZ@ire4 \;R_\j:vqS%= &%E i1_#vE5QsY< dȊT{>M 3J֒Tq1$҉NnAP\6G2"#z7A.|Q7+2u_i9mL;`0.s#4#e3z )}([_ ^uEX @dLظؔ&TIB=)M6ll(n[d;rH":\H*QL0͠ˢtM^L+ϳLu:Af>g{(2Vߎ[yw,Uu򟰷 |ք}z" mْYew5 A~1k/>=,5{K;@ dΙNBx%=]qфEYԛ7Ø${8BaqQ М7[gqP{raa#ң.Ë=>6m].%q mF-'V } ^d= ,-ꫳNjCUǾYC k~1ܜ"+Z\u>qr=$K$1}ߨ *'RX-k E˙ SJ`?9f` i@ P43ٟNͬcUrdxO֓x# C}[f(_vM@W:BpYPjBXD4|{wwR4iG=޻-jpyBEE BgH@) !:vXgZ [K7!r~@ب<+sZz:)EP~;aPah&Zr ZH'X"6V݁x] lDQt#ahK\zo/w(ə"Ϧ[EaOJ|oqCɃ*yf!}k4g"_0NnoM_B IHL_k"<g䦾2\}o[EucŭRZ"&N4fQ/G 4:rpfY_ 39re>jYlݒ+!O?*<$PfH ay7(Qm 9>AN%(Ae59qY5#I -8[UNpy[t.8 [3[hz`7rwܠԥd4:&[iA ,>@VD?BA[, ;ML4J/(O*tT<$jdH n(,޳\YD$ Ib?7NO'c=Գ"dKA+aQxAP*F("Zs ˀPdXᅰr>|\&<{LOh)7 :wR\p %%X{B2xeÀ~LbDcg"9mp2CtaBH۳ceq'|M\뻱7byB DaVw{JC}>P (>߂z7]jx$j?]` LuBJR>KWe=x:sZ nK7 FL+ ՝+^yюJብzG72" t!2dOȕ|+h 41̇ʮs!g*^SI EdECÄ]x3AȆׁ*6~XqVKQY#ӥVl vˬւQ)B]OP0Пꛧ #xorb1/o#\D< ;5j Mzs|uWLb6nJm]8۔x P}ASx{CB9ej`k.re$}jgljt ȳ]%d73Џr Pg朰7Mf_xT*۠H`T3x &&Ѵ(m@K-It&ɨ~w.ԭ'= }{'lLoS2n"':c5W8W UKoeV|?^K4h>q(ƛRgHnu"'``Ttdi_jm)s+* P|T)Z/YuurS^*C!!pɈf0P WmKoN>_b)9GX}=z/268 seZbp"5ry\,c;?Su8'd,_Չ^ W >iW膝VN'#Cؓ 6۸ŎbNfiU"٠LmۂKҏkw3BSČ(l&LjD/&i(?4A *耄мˠ.;#Ӡ6WUk(Z21PU:c|~B"thw&1W7+kiǸ&ktc͟hG&$\SzEAbgGH`!g4zQkYG-4!NbΗFish(6g 91$q%PK=&+ ?]Ovj-żU1"wu8Yݸ,`Ne-"!ݽ.0z+`ܰ\z)kw{- K ̵X8;{yK&UNzAfn6B ",m Ba^G<֒F}lmkr:nC}U0 q&*g9ETE; 0HJ?jRLu90f$Jd/7nz.5:$mьT3cE<>܇{#C _15n v{ bW>f ǯ=`Qm?Yxy 9Dعꗜ0trkՐo9j y|.{∧9׷X>q}^~&"~镞Ęt*C/H=K}0m[ڪ;ZxjaQ LpoۃsYjbp[rt8;҄=XTѱ#n~V$y̩5ԍ L tfFJnBu)(n!_1kN "͛L+}_")3n~ba !!iRj qr.mI57_RdNNwo,^M; O,M$ҟXU1DDQi*]x'*@WѤa?UkQ`\3xP/dt? >{VJ7ny7"8V`}1BmnB!<3f .Qb.$:>_P:Q:njZLwg٢2hse-臉 aڇ9 D8@*}9z/c6CC+q.W+O]6>@چ'X%aWN&wٔzw 5/qa ب1CTVC7Ul=w(r1/I[\}^{E1=h$?s^4QIC1*F?Xϻ"Js̈́=S6 eHkr&$sŞ\$CJwk, h=|xR6ituN`N>\UU_ Esy]1 ,z&[4ߤ!J)ktgRY߾fZOR;ZIx @M06Txj p~CdbåVUmQ3 @5Vk,QNJNL[P,ϒY\8BF5:Ф|*CMT|6[y`9z0;f\--ty'SxVp>yZ}( 5ߓ&%mJlR? 8Ǻ^&bOlCg2 Fv*]xlR4Vhea2x%^du]FŎ$bśSB hjTgk QHP~sLeɢa"58V֤j^1:5@NE6QPW=4[YFhvq@4VB |,9UTXxEf1; g1`yu|:UЅs1Hjjxu~v@4u8)Q-]?zE'1׹So(,!s+60|)UNYeߢY5Շۭ4O8= ut;nz+#Aײvo5U-I  =RꜳĴ-罖J#* q¢ƪ"$v&tڲwck"H(A',7z]h]~Y$G{r):=%6z rA*08iVO LAA *aIˍ0 /_Ya7cW?&Urٱ v;ݕ)Um 6~CD*8Y)k .OMLLz@`7-kKHz3V?JsA'cЍɰŷ N ͤH_( ՝M[&fAy`Ҡih1ys0tqgX欜Ć?to甀2mI R3Rs Y.X`2EEiڙ i,sLw_o,.9'"Je8(dg_sL+39h ?hVn|&?ﹹX' YBY9^X9VC qxЙ<+ܭR`cc:,@;jM't3n4U moLtUXRR ,%o#-R/( 9X{WOwh$}a[!o,% O <ϪJ^y,!/~+gxsqjkޘT*Ņsc{L3M(]P|]r?m=g5Bh&.:c 5;;GU.qlR' Yvk{I6Kve#Ƅe7F w-

    c1\ѭKwrsڷ؃]*u, L&?1P>K{ȋAQr1^c9~k`_ ,(^l6w3@"Ck+) ?sB*#>Ic \K,tEHvcc9o`(9Fdh(Pc*N+r{QQ[q3dž:_{U_F[Ͽ+̳L$i0f&j$s(2QΑ*z^ ~W|F _mt|\uqQc.^ 6[7}gDo%NI(B^A-s7.2Nn&7_e;1Vܼ2f,V 0BfMˣ(v8*~pie^$J¼T҅ ᮶L{+1FdS򎒪u`p6Ō C&v 1q 3XwCP-QL!"D|@]W yUUc@4*#MLvfl^i/q589yc"N* (8y$}^yQתN["JdBBLsYu5ͬ!`;]ٛ\6auXΡ ;]Ґ7`g m ӆxӯr fWffm[e|jU|Y0\:+hn9zTMԋ^3Jt˲fY(t$xjqqTsq"D"?ZP/MV981a?r"lޥ4pd倡w鮀<6<k🨲|*@dq⋌`KCKC} `,ܴ*&)ӂ`+<}u%* SPX[ 1(|9; ;иN֥Z=# R*f*e+/L[]\ΤN7WزbÂB_ ɝm{D@tSeGzۀh~xͲ]lܦ{PFH1Vt̢s H!׮(k fu[5thzЌX|ld,P'&%JݖG=GCc7Ӽqqu+vPhIӉ(j{D0=*Z &<-;,m>TjJ]:—#Woݍ&D 9&G*Qx$.l`=qJN`AnC3eʢk˩в]3utk+O S9/ΞϒpbU{PfL:у-!˴V$j $UD[k~#IBBc0bC婀I!ډma}8u`~(c5Fo,p: 9u ~m V| Fٳs~81DKO?=2Q[K\n[\!]L5N,*U3aŔ~mT:8δ⃑#6.0le۬F|kOJeAvTbEA$Q+kb6+F$.Pƚ ȉʖ' Y#"dv8p&d~Nҭ>"i}԰nEyOnt4Ops.]0 p8Z"%lЮNZ=s:2tGl-;Os[_R!Buh}W҅ɸ#8g^3)^L4'eGGg ~hN-2 ^r%^S筳5Ӹlg~9>/uNɨP /BRx~;p8-Ov:Ad`NL$7[;:j5!Zv)4HY.D'N$mI՛'|hƔQw} 9泬^bZ$QԖiܽpv|xٙnm j2'!7!ů`w} H>ڀ 5yph5ß6o" D!ss Wra ׁBEHu QVho wɿh3OֱӚE,ˀff+ rA)ceu}ZCUF0nz^FZòPAB@0b EY50Q4s c$1UqHv=תoT^p5nc+Hz mԄmkH]>jpl:; kPi0 iF(ц>5>Wi{|t(17q8lrtkT[ru_T_$-~r{"@19=#:bss 'MR|FO*.8,vP><keGkl2|jpzŜ"Q]\y0 ؏Q|˔M , iܘTsO >HmY嬜1~y1ԃ1ۍgqF({έBjstCbVA|5 >+w96̫DI[aA 7^-uPxaO!ƬeE1qdڵFཱESkvL5.|RBS힇'P U!q~O^Հ/BsY3+6ȶtgZXbOYQZx<,oYFIϤGW(p-4UFEuhգoY<B*'( ]T4} 7o>䤔irx} :l Iz>g3:d@8C.4]EQ4HG-{=}0o֡q8l;'ixNq\;& f!A!$u)Bx~=DF>r5Uqx`rEPڂDgA| Xk"Yf-W6[RY2$>=ߣ1Q'ha"%O85?}񸂖(z gY4P) IO-yl9fRʬLpP]X|v?iuZjn-M pKq +ΈfŐ=vkO*P!}XNa)7wa-P![Nd58%G z,c_]לZCEm_9تf.;2&]8b)(- wV+BrVP6Nf2d%4~Za0N_}C͝J:S|- yX:1o?VWS'[UFVJ}?^Ð<:TؔG -kU7i]~6m[Y\0Ta,9Pџba6 *{ tI9ut2@#Ϣ>WI < :nɗ΃lԤ/[('fT'Rrυ˖jtt/]7iZj=jCRզ٘ (@GO|1V}f&R>QAN 枒._G-O׈>@J\^ X$LV*<(7AΤ%c{9jz`M6B^8?ҿ`xÔ WS_5fcLϠUcYv{!&sTqJyEH{ b)ܝb1=0inf!>LSoc+$WPG+ QP[EF-s֛ Cn%?LiPlDFJV _fנSX8MILjFd=+I5" 9MxL_mSea1>LfbbH&G:.V3 U2 SFMrI"}?h{@*,8\ Cf`-& 4IYK-P J"s" @QR{ՠ }8(Q`VA{gԉG>Gl1|6QEB}Mߕ`ѻ6SZZK<4eMFLq3!l_X@:)v%RRC_&(ɭS$DƒWLOunK X)SjFr)r}fP][Qb؃W&5,KnqGTeia;cDVfڼzNϦ bY rg Kße'VFU&_ݵ8/|[l{%pa9 @6Y@yrg;z[+%p8 G0r8MDmCgF,x韁h,k!|IrotRLlH#^%5QFP.[vR6֕O. ka;< 8Q/׃[IB,X7eU6\V ~yU ,n 9>G&uϖgjXaa%>.ŭ}_X2ʈ-6~͎J͕{ ޥEXԭ?U+eCNڝC!ʘa]7Z^On6龏]]@8^tn&Ox)j" ֻ#qȟPxΝo|(sz0b]bVCbf gCYOTRe*+DXͧϞ'3Դբzp}148u'`S$ TS |1@#-YMcJ: VfT$"jhwTByF}a9AGI UD:tSD<uCUTUt5Ƒl5\oeh~ F;)wRv: HD9^G"6'Β9 sZ>k7uo>= 7?NNζv -}m"W\{{6zTe/ À lz,7z!3³ X &ѫ+ƀiTO9+X`#c]MwzDnWY'-}*=25EHh(3 ̈́S2^ǹ?}$5p%ANXr }KĢhpoHs9(v)9hXm[7vȌI$@J}A$Buk7 uv߅Lo)潡5K3!.K"ԅa@`|Ce?H!{Yσ&fS&SFݧ&bSij*C-eC$l}3~WaFFaЕSnL޺x<4>ƠB(e2,TMKu_A/PQLz.d.i0),TzC'k,hp)0?'NVrX 2~͖np㪇Y̺h32P{IvfbÀ(DF Cä9J/n>)[%kb|ܦN_ f-=?rE)5G(w-8Mt Z_^~o%2ŮKo,)XמåQk4ye:YbZ@rI \`Ag&([ѻV(~aLk2TmeI$;`7mwd4!lʮ%Xs?L!s~D?* P c2d/t:ҽ`үZ7V"@!G[w>ЄgW đ 5!K h_O6D~5x!~NNS(ڡ(qN-m+vVi:=R(UJ8xQ Í]'v8p T{rxOl[ʺ-sJc |%ab @Hg샙N_i1nʒoر8!:ONkDTLF+`ɨ;S ƽ)i ԑ33T.vVʐH/ k[ZQ+ЏN mAA㈩3ZOb e"K0},fEE]l\a> O@hOv#ڢ#u@bڱW@U.#͞eAMڭCh*o'sF~6=S+')1\”۪D:bd;Vnbj >Tfj]gy%Fs&Snȏ/rw˂4/,Հ+ő !&nY*ī҂e^v6PO`VY44g&F0:C'g&3l|0^{7b<|2In%&tq2IRrFIf,3Q,5{(laU2N7L iۄ:FZlBtZCazX#цƣ'c*U!/vmw(3~M 3M/JgPAs'6P~2! sv$̨ަm+U.|Bm_OW*; 5g='C+JP=Bdy'ђL 7`.6mO|REBT䧉yV~ smtvdK?RZXg\~4!I#eUTT1hq^ؕBT!R.¡#B \8ARn#XśtA#UNB1 Vӡ=`n;9tr1Cvo|GbF*dĞeB;~ҝЖa-0 u=ԙ#s kYp8qLt PYĢژWUC42 b?_D&j*xs.?K0eͼ U<7SK$Y-|G\`S3焒 ,dyj-b4a~h0|D"oL݁9vJm0,o8lN[WRT\ Pig]"xA XmJ+a8靗gch%ڀ@XU&\%ffHᛋ7%fVн{^)FVƆ,wpFyWtp8L(hhiՍZBuHO.^c%d%=f#OMxl7P*ŗy$٫]H,̄9uY;m98yT3?RXӟ+1r є^,:;Vj<gUP3#(称DJ_$C{kZ'icZ#;9%h!Xsoɒ.\o.  rD;ZEZPʋBo|__9r43'O X1\v@8T\A㴯(U#pFbNF? YބX9k)qkVCIm M@@E_׍ bRGn: hY@E4R`S-_K)㈓~#5.-sw4>} CAo~FKٹfl-`G,IP*idu7:H1#|L ݷ^va~&%bMaM8}[jB3ʑ'r p>%Yn20LM f3"{m2u =t&[yOX,^Z{@+̛ Į +h LJ{ۯf_,\E]H 7PĽ hfL&aZ+՞3MM%p]bu{(A#{gw#ﳯ> IJRO(9{qq 4i3mxRƷB0&m,k-M#eA҅>ힰ([Zf(P/gUYgӂp;YJޑ1KV?a`zڭ_FOWTT"ؽ~la8)ZQ=Xs6i*ށ6!hOP`>Q1G< < ora#|oM阩e0l Ώ?`4f}QY ֛@m Hw({Xڂ7yԩ?:U(1_K)kyz"F>3s߄-J-0k>^!v5N:rIxY݅*X(DU#Q;s b'#ZNI~"c7bs钀uXwpvrur~)BXN ܊^-FoܸNߧ|XxL/q2NbƼ܇>sSL}kz9gl]TnS*%OjQ}no,@ 02WnR Q]x ;cNO]/*=G=p X 8&Äpsv dkQab = J(r?( 5q)=/-<9_f'ztSq>e[tF9hN2̀_:XCЄI$7R,4 :ż(rP$U&ݶ'XAMdCo^SK%H;q+2V j?rb4KHݫ6Ocaz`ZnZDG[~ 9ǧ'ְ]qXt^$Bbgm[FW/k#'BڌUpO}4/6 DPQ©wɜd ~H4~77I#/F8V~r!fNǠ-7LwM3Eʴ4D<8,wcYeE,m]>EQ xK9.:LN%AzlAc/lV[fќ~Ci p%y@{BzۈDW ([HZ5;s|Yk>M;̻DEFeQ4^-?\1V뀌4Vȉ ve2jE=ƒ}9$zqJad`f\ :K ((t: #J{~[,zU+\ M&&`'*j*\ǍNFM s Zz[OTboNre fJqfdKLn7QIC! K4@̒ `+7zGꋄ|?Ɍ+Ձ?bj˷J?ݰDH%Q8RCK{q ?PkΏ[֪UA]TZ)#]PH YuZP}3Wz-Ǩyb7#LrHb>:7yh¦vK?]8XWplZSaAN TV`[=2 YZ8/KS/oFΝLn6 Eu:+" U=%ט꬯~8'V6p+cƠ܂_@\HYƳW6DМ)3Um}Qrw" N nGc(*"Vq^l %qqZӣ*jg"wſ3~UZմKt*x\:2B׿FyPCuҩqSzdW۵@gDq5Պ'B1}P/]u 6W W8X)n7 4AzߘD:|Zb ZF ~*X؜?iIȖ9 ȸ:`LoO PJ HTհ@CyK>$/tѦO#C%0l[M[;IitЙg4]󞑖Q6A|  q RK+yFkZ^8sGA)f͖Ҝ"5iA ;,+Dz졿>뻓í?FB$/+ "0<"%dzBۼj7IA>KQlV>wcq\'Z{&B *^^+kTL<0Y98Ǟ&2yly%aܫRum>NB€Zd[XWvxiI"FTK4xv@0ʾg>\zV+E˒a2G鮖o1%d- q`P6g`Z{d-3 9r$(Ly XS.Q=-3`ΞźUWP:w2tnD9' /@B US o s4RBzRiu:/bz,7o`f O"I<+"3<Ɇ6*^eڅ+Z7g AQh\ٳ78•P =Z^!<̈́ 0EAny#KjH3v*P/>Q0ALh&m:_c?M$ z/%^g"pG6m{2I#T:by}6L&/z2<ЕW"{MٍrEОJV?28"oLVf! UU DŽRf\.[cvK!V72S&!,6KfB㞲Uެ?@GS-6\Uz|`ITd!nY;UK8p=dRq0콢y22QV`֣[< Zkʽ5;78Ҏ8ć厏à0#r]˴?h sM(5ES+yi>ي[.!my)۟tLVՁd{OHڠAk2ٺ'b8ī餫u 8Ɔ#wv,JXX}ݎ =è0ul͝kgp)܂-U灟Ȳw# %%<,.  vS9m*1&ͦ,Nz-^$Pl`NʸћqQSI zzU b: pIjwDiE_LZ %K"SyZ'yU]qKJc2;qE4GLĀIL3Ri\83,R+Wk3 $ HഔBgΆҟEtqL" 9X:=>$̸1\bن)/Q M Rf2rؘ쁶1clϖqgri0Zo®^f0LJBب6ms yhT V#gیtM۝JY5oRNn>z6x0? $珲(ˮu~6<8uM-򹇌EE /-*: edq1VmD`dCbivZ`y?K&8՛WYjf6NFٹfOU1 :fsIe ٍ sv4fs E7if?7}q;=XJRPxLYRG[ETjkWCQu ڦD-W{gyV3SՏ'yYKVH%77f}6܎ \N&p|%Tqj&lLMy^U`<4:NsS`m 1oo9&ΡqYjD'N0P$+%I܃/I$kt5*=y=9)f*y~lp [Á9IgutD[;v& o.6VȆ+5~0zUꈷXegI[sO?{ڢsNeyr,%vIf( d$ %gU:u=tkK(Ӂ*(3/BȆA[Urn uɌ,;ӯJjC"W:ew0ss~fXlHPaϳ]t*|Eh.1}сԌ Rq7/+{6G]Id~Q!A0?w <S4 LLMpӅo?lix"Ns/ܥL"W0vvh颫,a͑À*'0>PSvuO`Wחa g 1s9_  @+WSb|N!(JE%SfM{Qe%\Uych|V`3 b.`OKF9b'FWaoXвT%t1lPݫP̖603~CSг)Kj"dFC #)~5a.?iF ,ĭ5:PY\17"!'X/<² 8K o1 y*(PG@){#Tg`CrA|?.;/&tSl4B$5a[F&DY3pYyX q$W9qف& =AMI8U?b*"`AKjxD(87!L@ڙVϻѓ>ͯNcDDvLMsCk88Jy/ߖڧmP{*X(5/l;DoMbLtt%}2R``!DopHkV7 IQ5c`4{GҾTs;./׻(WyZU3zpُhr&hTZ`jad4SX;V=o> upƏ ̝*WgѤe;b7EX$>[e6ȹ<Eh!oBT\UCmnmL3Rum!Nå$`bCuc5;!1=a2A e4UaD5F8t%dy#+]AIx>R.Β] wOKNYOu2\E~F[q5PR}.dWxT_*@E+a殞͕U ڳE:[K゚Q.pE咃rqg )rSr_2,N2k6uI1Q݈qKgк@PuDs1Eov5CВ߲d)N橶S(/{) (&*zyۅ;UQ8/)c9T4.Q&áy&H ?:J)_H*UJWyL47%4i tD`*ە}cZ@9if^ciXm@;vY4`LNv "}fGwkTf:zcK5i=acfQPz;t[z}ߦof+wcb ,QޔkwNsP0A{8b;NILC?UYC ijqRI{'Hɬ aMsR C0F0ڎۉ|$yVK[.P9 M$vr+ ExTZ^dHFp%`cBx@[b,Uk`%F G5_zR+|rߠtFAV=§*lXc&H))vI3&W׃VpHi2/5V4THCX&GRͩq9S*GQuXhjQd* [m{`tTY dv$BgJ%C+Ht"K6#$\ CoY E'&W]Le)&ي+ߥ h#d鎊Tcn ey9Bġg5T-¼4WADo 6>FmMrP12K'ҫax;EhK*B#7񥈰y6>BWGδ0&m4yUMU.K9 *o^1@Ónؕ7%DBv *cgdG&ۏQWf s3bIXu%`P=c&YEʳRh"\iNEHPk2I:\x10mޛC3b#%ٴ,ޏq(;);-ʄ]ڐI6`Qm\4>BEy#TL]%*aP4X@Ϝ09`<5>W <ĝe<hO :|T Vl9 |&VXh`2H-|.ßlxws?rcO[SNm @ϑ1,49mu/7/CaOJC\/PρD;$]ыvάJ;oȬokŭ=y뽾ҩzČT" |FZS ܦʹL ^D[{޹~hֶ3X" d(8Z<` M6珠H(WPK2\"c'+Mp1oA8ˋI%DJejr\{#[KZ謞1AqĖ}vʭPXzj)֧:].~'Z7gZ.Fzz(BLz~eIخ*&dTl98;aLb$zڢ!'=/~[\G;\OYP͏ 4wv+tTX>^]JRG4yxR9i?c"/3xvC-Iփ] F*.~겹&T9]'oÎD˭5Bq6=ӱJ5u@L53Z#hfWKm sZ_yۋvŋxȆ1Q~ra,\RB. @R9xx!2~~[s?~q$ȕ>WŊ%yL0tzrcׄ GģsH+ c4n}eOj& OWfvKU' 0S5D;4es-6~ml4ue$@$&orͣP\ x꒓]-˲ @0N {Ȣ@Ph l^+@lZ\J"%K'&|ʵ}7Poxsȶ+EZL樷?iR4r ame+S- l{վL_qKJ<*'hf1qe tQرǯr+hq<;EBCO\D,c}I"PސIȐ9Ls%  /7r۵/mlB~P?EK]O-Ų>*D,Ո} Ăeh҂29;r1c̉iq|"[.+TZ4ck0J;a6u9Ad`J'T$]밗-w8N~x{"_?\)v6V N{&O͟hm;Fg 7@"ZXOjUt׹kN%1Kюpx)**Ҟ6o4 #3.OH~/]eB=d߷д`}qJzLl^[F erq m؏xP` ֔W*B#PDr{qu慱`Яi~MdqmHVVt'zhEDB4Rj~Ǟn}FrӣК]O\03iZ-R͡8#= "8@P,ĝob /)0mF yyAĿG"3 qQ<Œ~J,-ɭdΟe%Bk8;9}U& ^E/L-9a+I11=Z##S=em3r,,\47֞)Mnb 𽥦ʵoD;Eg_ELS;[Zw\FИor;3K´YG=P)5;&]t`+YM j8G=җ؞^CYI M.3GpwNFD^n|"""m7_ bgJO^]zjT?Q7)O9}t0q"nl8SPxKbHAa跰83Xd&Q-EXf| &wٗ <&i806WU2 td 꾿Q}S@n_o<aShK}aŧ<-4:C ۩F*h,Pg"N}1s= QY[S—OD#pA#oeā yi&VJ!vxQtaeӋzU'xZevxP ~_bḥO6 %ä${)U=ebY _d.1sFyWCq:^ DA`R֊ RD̂Y10MtUQ-skU0-]|eBq=laT.X67f˵5A.!u4hP옧 a1p| i{UZ:XAR?#*q-+wi,s @!ATNռ&1CR\ Ah5-t .\v պLW+}Lr/hNA_68=?$K,qd$ mƽ)Y&h)|9X*"w6\0D:`>\t z[a>bLFYr:JKq]͆5={ٛ*SH%M\_LVh&8V֤A:c0pb+f8Y˹.W3Q957v?0dlI(kba6mQWD&-BźKk>vzѹzp<7SWR-R.`>8z?=i~]yulp&S2=kuy!R(% .W_Oy練pU껦P8VC sQ|i- jB@C-FiaP6 ̒XgZbuId. wd$ .~|Nd@nߵލ 2v%*lÉ[2\R`Eʜ?VٶGNҼ;VksRÈ7(|ndv D _P捝sF"FSho՟*2ؙߚ%I~7ak4K_`)Joj'sDonʲ܋uuu[񺐩Ő2ML%sKߠ,=Ļ،-xvCboghNfyT(sf\3m}FmPȥb!prߚny˻mtۑ`ӓ{w*Ǟy(_$ O@6:2T@˥ʵvG )#ª0 j񑄪A}miR,&A阴l#&LB=?"nD*8vrJd2׿f|l7\1Pcu+ԠB6N|󊠴b\3Lב;-X;<@ifZT|UByom47gtTAP g ptTEVS,H7atAKՉϻȶ`bىXPOt~:us>7Ȑ!#v<.̈́ҞylҲcsjgVWz9`#3V!Ci Ԑ/ &@0gdžWU 6 |{5Ge@Ѳ 9~h>'IPN hgw,ܕyH_sPxnDVۙc{i"Saf .WZO0f+c%"j}WdD nNƶpsW4o6q dp"X$BH Qto?Wt*'z_yϖ_%߫4ӞRM"Xlr&t?UUVg?s7\P]HNf &1%tV!fh6T*n" k6Dx!Dbmg)g]<ȸ/-zY72t;OӟHx_j14NӘsP!7y~uhv[Y-j^w9ۭkJhQsADoN=9{IZޛ iP00ڜlzdl:⥒Z4T,{VϕϛzFV.PIJWActZ9 Yx$OCɭz'1GeNԳsdr d")YW&: B&J>3: ut"Ԣ4Z.o8tzI Ej<0 o1%:vX*R6[W_-Bgs@Cb+3dZM|r- Xxܖ;n..cM@Rhi?RwP&)aqA5i>|~&6D^W*K WmP؞Y]RaUjt6c7fJS׾24PYvW6"ݮxKpP. 1lȮ!}g\+vpLivm7zPt $n|~w"ԋ=E\ஈ6dcd#0SD._' IYfA=eµuewy}z'w=l hڬ#.hT{[@R׼.4"cϡIMHd`6>̪r绪LjQNmeŊ{ ϗ%M(Ic oxޫ-~{b=jSwO/p͕޺g-0wA&Sǖ'y0b[x q%ULモtRR@#(R bOh*܄2ЈŝguHRxۿE}t]DžJ_:aEF`&o DćX)錿2]i7 $ yՈ3}/uoqwKQ[Q4t0l 61uPZZ:E`~<3hkoy!162YC* Do"DŽ|1CU8;k6lP|1͜ sy(erK;!uTř(#2 E ,9asڶw?dV\.[KV:-:nkȡ?0B;؛L͜1V{'A+K3*&\ K@%J Q؛#.$=}[zvn~7wۺli_ gڃ-#pC5lvEWnC%܋4u5V)br+H&{^ ҊT<86Bk?SO~]ןqF!hϧ Ǹ WFmy0ބ]H7[W_dLHٍՂv!=.314SBMޛvijeF8t dF4`@niۊ&=grv ;sdŸV::B+;0q2Þ@uS.|U*c6.+ֿ1+?d_PQ%q_m}$jĘmI3:N!m{z>GOHnPd',cof w$s,\"|D.e?⠳iĶ8#řVkf wgȷi2>(8Yh^Id*Ql8ur_frHد$6H>RÖ֤׹h'C7);t˗#(ҺS'kvOrTg{QLmҬ7wΩkbeN;@">rߥ2 \;qM5l+Q JaZCzR\ Vـ8F tD0sd't\ҽn3!FhȝV׾@QtSz1Íc 79(i~U_[I*R[T]4MWi4F7@<N& ļj) =9Y ,kQJ{u45B9]ϫ.udmR*gM*`5bcltŦG%їewk+qjUPړ/AȎ̑#"fC( )Œa%M|.mCM6$aDȓMTop7t]LOc5diKi`9@;aJ;?{ೄ+ZiazNYіB"tu-'j ~Fĕ8ҹP{tW(={i#>J4v(aʏ1m 1MRr&dDR%$h/a[Gz^Ho&[dT7f7S[XyZgצ. m!Цl]Mihx|i{xI[κ劫bN0{z3S4|LlY>|x5P^b% [\B~26*9W7X8-;.kxa{^XdҟhxGc`w+ALLSv]y.$cuɞ8bbAEsL ux]f=7~ 2(x0Q }Eck0z,zQ"dy@<a¾hSsylg-{@=KNB[RرخXRb@ ^()324sPTa- @Fcande[0 #0INr֑]&٠HeV}ưh:ԱV3mCoPc05E_Glm# +U V:bk Y̪yNM48(+hUGQ~NJ^:4Nǜ փݛ9s][ڋTZXeK}JP%2aSv HFjy:xIϗJ$&Ty m4U͈'^ӎcTP9kA(lw"=8: rhHu=<ZOD~y=¡Eqcs&yu56p63H/z! [;{,cX@8?|s+U:BI/OT`Dʿ|X@Tc\ *ex,%?۾ZOê_gGRxhbe 3`)9z&@|)S#Zr eno4Jګ^󋤪W-P- )s*9@-=7y!"bKYb{bpz&cyTo^eƑT9YPgq7#,*xg C3x4dK24*g$A`7&򔶪hW*s{D 9?e(F9) V$Zt%YH+apgѮ0ƢP:ae}2cDػ{Y-m/OI QFeR P5OSë zG2޲sx2 R1$"n9zX;3N<7)2jc>/d0w+h|% wDH>d *4~+m4L݀¸ɇ~6~e["+zJ1׊;2j#T)p5H(\Pa;E"a64ZQ{=B%Y BcRn[[%+,+. 2U#NRPU Nv\(TJv$ ˜ sk Oeoh)}3q𗛍}F/>GNLK15Ӿ߲:$Ig^-tʎ%G~j-u,ԥqv\Yr'HEh Uأ)]Gܴ{wllC c1#@6m]/!*xr}=w6/a^]ĝJ%:?F~`q"?OzyRݍ۫^9F9J P!̟,jLکpJ2(2k{Ls\r`2^HD]A'vstlo9,IkQ#,ogȳ"S}NQ:xVx/;k9RS<1?/Kv-Ü  Mw5úd!n%v@w.f%*h*t8D!(>lֹ!l[mό]x4TpbXŸ9 b`5E؍ 2?L=N/dQlS4mɄ̺`5-Mgp.)%yAIB%n QRyؠ#&Q3g͒C'$gs׬!X>ŗtZO @۪uJyפU8.U~;hDſQ  JAXN2'e4D5/piŸɳ =Չ+"x66`(}4qKIwdlת^f5k=(~h\"Jk~M#QEɗi懑9i5wyrI0p= s[K~:P`jW?kޯ7uIYY {к4P˞1[S==02 *aӺk>h醰+YAE~+E .05Ag%NUR}w9fv0nF3!k⽁1W>IؚƐ\KNY_Xa'S`+p/jv{[TAp(RE`Fk[VJ3R D/v\'t4< KmCNbY®D?BʞUOMTSj7]Ɖ brX0p,*~U=,tVbg[Ijs4EXql"Sw=0aI^iRIX!aDZ'@ᅖ0EC':aᤓ\B(E͡GV:5[A;n 8Z#aJlkDR$rÃ@|Z`9uYdڸ9J;;PvIȅ x4cڪd2@|NR}{A-r΍8&f7#q. X]^5ݫ{@J@q)?,4LAwPwXڣ;6_/"Cy0*q.Ea/-i@[kJuE8[eixMËSU{UwA+C\՘؍ >'-v`)cApڌ_`K{IWs)ta%j/Z=->'A -,0Ee㱀5D2揕WgҖTF!QTbrL`¸9ph`r9 3#U^`s:maD]U:딲T؅Td_Y)r{9S6v1 ل/x0- Fyи!ޏ=2e{r xȝQE”C< k4KűAWy9PI71j9xDsVl+lAA%:RT6qbKn`j1rv*23Z8̠9pAs%QGWnz*pa40qKprsg9Fj* ?rlF0UA_> ޽Fyq"^cVR)H 2@ וYU d޾^D6ěj'"d'v`k_IejH&Vch]:L%IdEHyuI}M7sW aYQ@B[)b 5pℯ$ҩgQ縟05_"\ %x5PU$_{Z3} !P =ڞn<|Ha@]Hؐjэ(W<$ݼ$Q9c@K{q2Fð-c-R_UTfJE\gVjqq6mN/Im\il,BEoɷ3->0NNk^X eoÄ5r e=j$lcQIr.ZXqA*;(/WuphBqIO9RbHݟMUGrrg`{a+(n65CIѫ.p]Zr{@cֽQ33I6HQ=HGƨ*3h+|m7ig( 67ۋ\f|۹Z8z^Lfs+ RZ]Gܦ[9=e8GF^ }/}7p2c~-u2aPEK}#o(|+{&Btz5]e%eoH>٤/krF|o:C3%+?e,u8gYfXxY{J^RǸ8vsuO>˦욘/q#a,#b{(Q1\ wU3[˱9e`l v'gb7$^TB_:9d@@ 'gޫwgMAu\gz+70?f Vq{*z{Xc94} 7㣕5Ϣ}~ښ!%|g3o+?R;,a|(Pip}eu\sb-/0J`K5AV`"y=N޺{0=ި,@<|]!F!F.r*|;KŤ#0Em7 Pb^s=~]NbCm!6;e{c:yZb1evxS!MP!r;#c `e ]g(l@9+=k{s/Ag}YJ ]C hܤTg/'&:2I]bHZI"FiܢAuLkR8yi$|tt^8wdP *2TZG1Xr0I\^OO$T >Bvr~+t=F=4S2W3zӄ W~-q'dKNFē(ďHԓyBWj"hnJQv2 Z*!\%yZR aQ<(gQ49f:F݊MR-`W$Y$(-}+9 f5ϝ4eOC">*[Ѳv Z14pFh Jvi 8*>j#FM<Vŧd1DqtjYZt}_6栐8sxhɇTNJTBDFfIK1v` Z7!(y]~Y9[M8sK6Bp6k2)8ЅexW2Nu +Sijg"7#N(~ y[^"Zg6ҤPWG/r vjӪҶvgq;Sn%C) {f1&74n }:v rԍnRx~ |!'0%HzRu/^ڡB (KU FfOf[zsUĢTe?CI뙴 u!ӿ"i .>ST&/NFF·vv0Eݶ%*Y{ ^KeE"ͣWZ2qD]Q Mu_-nxX`Z#AC`}r;)(:|(J (q鐋x }[r:**Qhw3BFŢoD^gPdqRY.=bS󮍧U]ezugFS/3Qw˝0Sk_. c&tO6TږGx[W0/}ZN`}:]G]z|iəX^ a8],c8pq?HΩ]@Y~_d`SeaFdyS_[&-2|P0NYuS¤9dA uC)aYπ-7cCC_MWVnˋL=ցiރud}cT$7M [vĂR%:Z췖A/#r7yBPֲM Me>rp wKXaTt,1WLλ:ZDM] Vv skxy `ԅVQ4HX #+J/{QĖsdR8L4LUqle[sNGJ0W!1J$V( BD ıjvq3{E=|#}VWeYHӎ{!:(2x^n9g:4=xAG=zPri{IM.|o+w jyK>D=J>6+j0i%j!{sq%]m.MQ03TQް#{Ī8P?kR;fP^067#[9xd"ONrtXSiQf{ A]zH; @6Eؒ ]_l K'LF:K{SOUXЪ#- "16l/;i׿:r B_5A:qNmfI8=1xOV*q3QoqVt-hJ57%fzw%Q֖ {:'&tLcO7@3k8o1[/=<8 I"@snspo W]iC^aW\};r'A2R~좳^H@7}wmVe")(epdz3•jb8#cL|-ʖiRD-{p;:ƌxaߏٲg2~_aS)mvMު $w u C,.4]FB{O_iV Y*߼AT~c'lA}z93_Sb={npM[ Rdׂ:o/J1+3Z9 59rϺ@eīR?,J3;#<Md4ʜ[ۖF)P̖N)zZgIko,D{\,"wUwzZ:řtϦHekBKp ;~- !:,Q:M` ?CA(d'a{Ek1{fj?]a7#R=`Ctc}:b 3׀H>ép‰C/CV c-GɑzPw* M-(5 6[R(O*PM!$f"mƛG S"Dmmm,GI?t%aa wYL{BkK' a{'^A%Mu{Y݂"04- q3^?7XN'=J2I{ʉl!ȑn-YIa _wێn'xC 4U8 ~VЩ "w1=j 112;x yO}4.'ߔ%vz]&_ycέCIy:-k:g\]thZG"(nn|k*e!<+<ռX7rU-3_ ~x_駵egNșײNS5Rzc AP#dܞWQ1H_7.D((jPէɊkQw!F't ŞFNJEre1›%8wY3uL$c{;B [g)/!=xF+MGq:f^>vԁR;CV~ D}B!O*X8pQW4e*i,o=|+)Cg\/6Z\T mHK8G֮mNxt&t BHF/62NdL8DxSPk=*1O^ ZE tEq w؍lFVm=s4D/4Q:.a^HY;HSpRǏ4@#YSA+)AjڣR} 9.BV&k;ʹ xV:$Y7pS-4͑aW g-۴ܟnfJ  lhy L]dK#_da%7 ?XJ͟8,&A: + Ci9 xpy !b8?ݨgr(/W$C4yB?*0Zw2ko镘`FS}V<`uڠq^{%p{_\[qw OSR4ȇJR~]l`.Qmݼ@n ӚhڡelbЏ@ sg4& Rd!fB:켦x*h01twBV] <8$HAOU80oY/Z<7w,7lPbv/YAH)ѳ}:v]ʒKaܗJsUh =iAX^Y4tSo41ykJD7k|*Hj'0eiy݀VGq.(s3ަ~N_Uv"y &Tג7zdʥY9Lyf*q }dާ'^TvsO fdtJ[޴iY̯@4;N 0}:<"-WqXpm;јcEXlnuAռos\+V57A,m/Q9a9 JN?@t,0n]' =#~|iʘ­}{p7G [n'7v~$$7)vyB4{X!\X,b'ooT[:C|᧪} R\{VtÛ;z3}I=,:dDmN\5CT!lt C`,Q<ʣ*lx*eEpD]=9:Qz`@N=VaE$$\ɔe iYj"]LJ䶪a;"^ LCb*`/}8h\9+ES^)!8PQxdCO,~kat!wxHkarRe,:t'CaMkL1ʂɨ)V#ڪSgLLYD>}PtPHOk|8 K+cbfOvϖa9 lw7h7]ՉRK/a._/nT-+JF2Nyq ۆFBoޞs3C# evUΪ Q@H!hGTLCI^W|ja$˜CI梢3LR靪E9Xb :9z2 Xf&JhNx"濋Y/qP^lXi?l! tev?!|yvnü C)4Rhg ^q4ĮLԔS;,mXjUlo5z~,LQdM?'SDPL X4IUk4SNUf(D׵]s I Vp6^&dS.¯J(Rb>c]yG %b@D{ؒO8 [ܪ/%LP{Np f 40 rz.s+½ XU61XC<2>,XGu P+1ӥ ՛fU),/ ڎs%M;fUڱei_KO9@ AeގJMvz5GTnV9hm")NdKtNEAg_nXQDӖejD ;$iMjh m_%Y~sFfoA`\Јkom\x'?߹ ]`_ nLC;i]JrB,s)`+*q: pZQ~AݠXVh#v= M: 8H?~Pܚ께ɳa`&H< M n}BČЗyMTf%FkAԘժ )NU)N GZ8QbiSī$$p?]fLC# H0 +?Wc() Uԓ澪HYYSͮKaoڧd"SL#󖥱>n -,N 庇G?ѭ{(qs0[~8Mf_S~!k\j[xzW]G9xr"ҋyG%XJ$ %gZk@i` Qs\E }JZ#վ+(¹Y,G@^`>^";j~]֑)\:M,zZ.6yj#Co Td sȮr\)'?m:~إتzvKj9.2dž?0|?88L9mm/6Yu('h@s'(34Mg5a$ .ȕ F5)j!.)TM`7%(~Щf.‡$cY@΅oyAo`ȃD3z[]4\ݢKjF!@=4$E9v1c-N@0k 0iI퀳]ŰAѦXSqD{7"y`n_a0PDsZKト8HVa5-;a$VxM^)Pzrڪ=Sf|.uø3]s#ɣUiR/o c?.}}m1|tVD裦fyT6l;ĪdY%`Am2ER:;BbH>{k oRzGYf۲7.PygI53=:$Ws'4҃]S؟0mi` 8 .DLxvGBr(Iһt}I?,˶'0 Oz2j/,{Ajz<9!5a CHel59wз򄃮3 D)joH9TJ-,LK`q>\ߎO\uhf GQg*h6  * 2x82n`ȅFf!@ u8jɷ^loW4!1*M/3'aF 2=4s1=m]Vbbq)CfTz |.43L:;Sm/u[ESO9RZӏC YdM0:L ҜX=iuV\7`9˪H4Tr4l*uHOQl_8LB{y2Csb]37-j"rj#^qw<[*xyP2g Q=#-.1zJv#tjHOGI"/~|"RU2fcN^D\4ЕS`&aDyK=LFfFIl huJ.zV j1Ͽ֎yL UfJ情bP"9N+ A6M:|%#SzmVe!a4 1rE D٨ҌJ>i RU\?>BF_RN\ݓZ[C< \.OA!kғD-q#s٣kYn/Ṽ":Uhd *lI'/ߊe; 2SvHUK"u(fy"埠W\3K$cޕW.JhTI .(d!,@AҧrXlGcE%N?}mY#?cA h,"|F2AIglV}NNOQr8IIc'„m@uKGg{d4يW}Q&L^ovޕѪFJ~e~鵞1״亯rThA!mZb^]^v,_ .v;QӤ'[Ol=:K-֫Q)Jʡ(}Nz i Ilr&YJBk,׹d Cvh+-5tڞށ:6;I"$굦[n`zU|`xr~K\x 07̝n śAIR?$+sƞFӊY@FJr 栜lfpZ~DOτypMёшٟô(gW\|'jLYo-",cNj"d|FͩYUi,..ugĂ"bvk$/7dワ^ȋ ȈTiHPz*| = '#i>{8%jl`^>19P$u?77,4pR鵽tw;L_XH9.:Iq6ʵzLrqtxUХ#Aԝ*hͧ z 1*C=)HC~G'`xcHR\26a|GvݵͤR*Hmey3= 4^O!88gUnTs"jnoR$?)5#J9[Y"߽shWfxkmg$+3m8MB?|2& /ˀ^߳}?{[Sİikw Eڷ hvY3R:{WmiyLRLk8 ](}Eqz OW,eVU+ G;Y9%<0xT ZnBi<4s]d:vj:WHZv~YKxZBE*_H^vnHSh%]Hd+D\~Wx3Sg{[wNTHtDMd7ʜ7)ZYS&GU'fG,_ׅkf)y-i/p bh\X=U" α`6zUT A?Bv0@hu֋2ΣM6d.FxF%\) ɘACo=egW`'ddO-,16v^@.L)G!ˍv;m/4WZcS{V :957WT P3yFD" #L5C2 nJ˽b %]#Y lbj\'޲Qc!>| ֯=łWSK do=ôVlzwvMK8oSKS!qƵ+墴.h e8o5[l1r˛KshM/Wܚ ZIry+ʢ+ײ{K3Cİ2i9I`=">CAB[ROE\Ĕ<[M olJ r K8XnVY1KܤhȘ1gUa1uSϢO"U>Ѣfϸ  >Evw5.G߸]a;,5G}8^2/AoHƍQ~:%Tʻ@-wa+vGM^mP^31'?뎒YȢv4ٿ0=RoZ~@bg(u}3AǏP-wФ5<(@wN&PyQ*}eQm֠w'ʆa }5=?ﮕ(.ԷdvlñmȦ8XWܣs J- !ojA!f-;Ձ~0R7i#XڠU)xg5z13jڮhUHOGa)% 5mo)&@ijoAqIIpV<+c|p4ԎGBPst(oie^XZA]Ԩ*T~sU$aɅoT@=#.ADF}ޯ72ΓWCRID|\[-8,F2 %NGUEpЎjU dk)c9E$4rLOsbOҰls_۟\&ń)>CDdXdM{F1; (PRgH~\0c蟝D)c3RvB^< Β]q^N0Rp|xMok,¶Ne`v91%:v/]G ҆9.;9TtCŨƕBL-ܒ:C6rٍZpz/9o>a@1my*/jLOP}.344AV3ţc\6l=/qV,(0瞪`BPy,㭶TG=mz% So&Lr a,dYY8z{iZQ~v_CN5'_FT[x< &nf*|١ɸW&?n3,g4gX<0;Js1bWyY14bM篷瞰6,K u/A-PD5C=dIj 9|#jW+H;aWuGG<ŖDb:273< E23^|F@꧙kBc^SCjH >]E}5m@:7ÚfǻaSbϐ47^";ŔP+ody5RKtLˣY"`k7굽6g*l٠MI"/Y@޸h]z#}J2-Z4P޷/mR&KXbR"HI{8.XwRE'7So8: X ZϨ+ ,=UlЂB,nu-J(UTX @'^b M6`b90o1Hq+ Jf yĺ<;\1NAə0e}}i MS8`ACқVI 4cO%S/EWBH2l);Aџ^#K2m2aOT#K1XZlu;2TLi*o;6Qʒod@ q:v$S)ѫJ f+UMbe҃(+7/?aR`\1^艐.Tu v GY>ay9gv7-iVpnsj*()mؚvg $EEf][Dqx4,c EaʫYo]F>-X+x5Ȯ5pyIBk!Z[KGk^Jmm$SRƍ2c<œ / [H>#;W>quGȚǂ=ݎQ|SW`Zv^ E!W!i ئ(9FԑNh|@ I;Y:8I#f <:457pMl=PhPy:Nzug-tُ}ԳO!E`qmD4{'R_)A.zlS.׍cvgV"`G5&k$sXH Љf}t^d qHRps`q f%xNWx*38QէFȖp&2~=quޜlW3rRp ֧j&gP%0}nAlg&M63C/;|'ER+-zҐZ{Sz"f\_Py؆Qwv) kr D1m鐣^wI$`|T7Kg d\$ΈP:iL|! %u-}.*Em<1#{8s=r/z'98}I{ٚo>!m#5*YR@X/#*v\k^%IpwCVgRp͹:}tAE"&YMVZ*KYK<ȥO 9DP_0Kٮ'}E"^#j|-uSZQ2y{lDf%quHǚʰX<1 b;BxF?7 ؈%wE(̧!2m'e&ZjVG#^)'Ky C2ưA0Wlс Rư7sgi1L@}WIi-]/U;Uk%[oybJ嘍jӼ`J`:1c 1=(8fM玛hc;f귌UJՐGX_izJըj\v{eGPl<@<7&Z.0A1~oCVtAT_"i~7J,'IK)8Sv(m j? ka:$UImr,V%f}Z)[:1P7iJu=-N?Jh. hlG { 1 x@LG\/!;kfe`!'o4^>gaF*?4pcÇ ͸MW$i7}jH&!b3P@3f]LIOe[MUy>\ZD.2[%Ap`і,/i!c#X$HjZ ,Mv4J]Vʻ;禁:YҰp<M-MǑ2ljfKiA+G.ԏǶ'FrH/o6KJ3G[Ј o|Y[A(} vJu|>Ta|>YDK0N0ZҺ3h$.i~xE| ?XG.~h}몲&xd uU)RJplńi9dzp`'Bl{ #6p.bu.<#\ryw$|ȋڌZXh^W*my'Oy*GC#,n3B|gF .ڋSR"_]s_sY0}rf\>SG8"=I$A'w,StE?a2B NOquRi|X@גGnk/gou׃fLaEYmgu=V|OqDq̃m=bGScsmKv9!ҌTQP(קY\Y v+gi2m+E*G~E䤷*BʝAAƫnCreI !tW-LHhcf&A]Ʒ7":(Z+r01IL'dr77MѴJ9\EH, K#w*IȻ*Eׁ*0t`up7O.'ꠁPˠ5;PL}FݻZ97n^1-!CqedퟋE )Rϥw1 ?dm[U,s G)[s#qzrJ{IC7;s4#@lziv$˝kx[񅩡}W2q%ic_G_|ғk-je(aHTU7Sp lŀ#BOb%d%#j8l 73e7A~=4ZG rskgǁjS f|am1.ĹIv/|EvE}͡*6_8[ԭ(/7V+n *{1BLPxal8CI:9Ia(h9rdg fڏ~a?6J;nacNޏ_L:InVQ =IǚdV4䄝ٛDsql2+H?yf ~s &]GnS.n@@'G8]-*42_48LST1AQM(f-)}!^=VhA*#E5E㑎pvZ|v 6&O":qeKi**OkqИgݒ&x$'J呋NN1pvW/=rs0 )XtbZza ;.R0yKO{soVP0t]B"m~=@R; jCusjZ dLߚa^:=`V?ղgǁ 9~h{)Ǖgs Lt^z0)oŁl~o M=>4g|mѳ=%ze O|0_WY 5խɐf{,NOڸ%Yr$).+r-b)_d0VbCyL|/ދs\ةIJ!&hc^v ]M \`Wh$jeikɺ4A_ N3mO$$L< Xm-a=DbbuPg^2.|YUa xX++O?dO-@$9270Mӹ%[blއ݄!+\eh;ODLKu)dzgk&v@n;[8x/mM|6J]qnNchg#.~/| vA@ kW3`|" JTHu7}9Ne>*AVݥ M9+ x~ufZ;X;4m3=/x=P5`a4Xx q/΄mCK.tGbOI|җ67ul$K*j,tƗs4I5ޔeJ%컚yiViWX] }Gm?c Qt!Bҋ-``/ EОgb͆_WI3j %VX;lLv"mG?ICL&bxH3\[,*, ulj!UrFX(Ū^4mÜغR ߥ bʖQSWe+T!gT]V N} }Up$\}`2XxT:Y, ;k.Ud /4nߤ|\K0qC qM84h/Ȟ˱sw5hER;ҳIc;{6=N|QƮor 'ft pَeC~7.i)T |–qu-Xm#H#YtO 0Xr2XF,wPi&R[D WI qNC+EOӔRNb iG,qs"цpK_%8u/alPR Iwko^] A'lX^9DX7.%c]1 U&kI`y.zr)V!y\KBX%I:UEF;q&.Ftlu> ȟ询oXBc{NZ[!p7(AtB,տ@)5'tIq}c/ 0@;&IK<6-msC"lEa"MX&Kz"/Wse{ [0 Dgk|oXiQ^bZDDtхI1"К+ x hj(\|O(O)A L <ǰ2W7 8O`F7O1sCWl)So,8Py d]rr?g V2{K(}xi>>h8}`+Kڂq 1P 3F+#:^S F0Ϳ)sg]2ƎU!a%ا"vusgOB&2Ro+Phl?jwߜSu]$fZHd[9+4㎗?ro&h&vѵD<ঊcdpa]NfɘʸAF $;+J%z>FTCۮPHu6۫}3hDlI] ZԳq $w12e($ukg3 }.Fx-;)Ug)+g: l;#Z}-*TT\ z>*|0dۈ+uwMRa*Jr1 (i Z Hw9">~p?_KJ%+>?'d vO48b́,xgA5] Aʄ.6`_-R6'NC[`g@V[j$.R`ΝLe<%p[cLmI#3ݤɭii;0k_G }-AۏʕuOt.*IW`1J6z  #_G"JL`cQn!&9nhDNQ9GaB&/Ch79p<4 CV'ݯ`[EPl~jOEsoa+CHU'DI衱2P-՛ >GEPRL'8]q`"o QgUǜqQPw̍.sկ4%8 DW/cy*,o[CDTJX?+F=ԏUY^|G[C}} HT+cw} ѐ> by&[Q9Bb5(e$iMd{`J804 K$0O9v)3_ !ӴdXӋY/ Bj \X9L d\MbZv餀}{I9ki oc1펺ۢ]1aLR3|a-gHm9sslQ?jG5&쉀nGvl(14`' 1{/S'Kٛ&NAjqV Z1X]%똫z 4 S=g_nQޝ2L,MjHx\M1] )%qɊ&d ox% _bq*:QxpmY̥ҰBq ڇucYWg=/&MB5^{}osk]UE"tmZDvXI 3oؘ6A~007Y9ζne4Z$#˽xCW X'&H'\o)]#4\O89s7cQq1]k/l9&;Otœdv:9wArS }S~!Wsؖ|İ 3y7'oSmF'8?@Y's'Ax ÝKb. (V%9`dq0R12ϵbnH%!ɏ\ao?ĭҗ?{C HA&,H4vZQʒTRᡀ64;6[m'ZVpSHwCI}c@\;+8'CrID._/OU>^,iwBg ɣ괈JF=%TaCd%G`2մf#䇣 Ph9o8[:J (`W󠒀ٍI@R2 IY{`CgKFml@)l3^46_:VK`jO vg4UU2@@yүH>D?" EC9֐-giag' Eǿs7S\QZQ e^{]ڸzN<+;F,s\8FBn/]D+t&N4"Ç^gY)<`LvCB(vjXd`;A%ĩu!}0:5RR F8VDx U ٿI,H0xu]lI{T@HiT?|a,#lgUz$\rϰ?#0W@$Yܴ;Ŝlu]gXU93EqZ5(}(vp#ߑі2mi`K;"ѽVnk ib`̑YvuQLNvb ~'ڃR%.VF02"lhIZˈE괝5dP[o+F=liv\."'̾Njy{UWWBkY6+;+uV߼9hڨWNPumK9St4U#sZN5g h"+X)C $qjt@l&bN;65wX!΅_ Dm:;3$>/rZDr]J9ՍtO1)+g$Tx)OO>DB`qs( ?^il 3;tSk<4=|;-X-zd@ aCUs2kS7-u - R卙 ܣN?Gʟ:E]2,Q^eV5-y^ݝ/tZe-lۑ%[0RvC1#L8ϭ𝁐B% 1Z2Qi,%&7+k&^aVfCa -[&}oF%׉]MyFWM)kzєRuG{h}T6|71a\i$29-*\Aϋ }ԑ-Dg8$1cYRYncO5˯̔σ=kr(μ)^mOij ::ڜ= z>{cTod!m#ИB7դ>궫ax Cab|umonC^ v&p0剩5C]!LmdQ'aTIFkC~]\Ymh .C>̠u ;~r#*-HAĥbsյeRueHWޔGfTH)54)8 ؋Xt>~Y Aߑϯ#6k|iMX֩5Yv ?86ta%X4nQ.HO9` Jͪyq 椱X8GdhIqCB-_eFatrDB/8QY+v!YnpjݎYyHhZ=5{+\cg[8m Tܵ "*n_vf*k^H_*X"u_=ZJiC>̒"Y敁wRԶ-GKGEQ9q㚤PXqG|w>OI= E/j5S(>BY{U[|359^s1 lsg>8TγW:Oagz62׫Q0DڗC7T#f : 0bXˆ2='+V0oڷc6>x]|UW9g|5rmq7G)]EvtPghY(liگu˱/+R\Ų8gPL*p9$1n{8Wl5}yU_ ַ^NZ0z޽ jE)N2KsLB#ɡSPۮIG[eNoQzMz3Qa j0:v ia]9en.1b{c :&,yw$H )?l& `~zL;޼ @50\p1Y`O\ 鋢 bNFHxKh4{5CL#{y?2쳂cȟcLhc5a!V[lh\5FË.nrUH=Yv\@@H*eHk ā5SFfz$h I:IUmdA鍊:?b&+̴73ќQ+E'6a'rg%{.92 ;c-Uv9wbڕJꥷrkl[$1cf5TiJ=X4{zeQb~VQJW>;jB9Yt_&:sͽQEUE +!63$\턪Ia28r̹~}ʯ5rV{I45- j3^_dWJYaaQ_lomt#QdEe=5z5SY D¿Mr4̕  \ r7N2Mxg3`Sdu4E*-D,8h5%LN^2I $J[o֜?]07v06Յ;fsfv5-jY8sn#aӉ!)^ Kf&a"y@64V_75IGaר>@liER gar2^v -)Ks,Ox_}Q5sHxRќ4u"VL{4 gJDGBGDhD @_qb*&?A4?pseVܢL!PMmUҴK5lGF")IXq tF5=0*vF9ʞ# K6I(S7S U_9kWxC:LK.2c ܡ-DBDEKkTJ"zۢ CQR4ڕQAT>=gHYYJb|)FG U ؐLPʉu#e\)㱚Rp D^(W 9‰ɹIg>S^M]7YX >/򌩅̳ 4j,c`:)eo -pοM im&VKz} z xEd2yKR 6TWUhO̒Oɖ>2pG\PH.jH>[ {BȻw"IlgoϮ8.nCD>JCrO3n>DήHQpo|ϩ..cܟW@9ɫ" JwKvOsmЀ=>Q#n} uIE"V >{Jj@tnG] 4*_ P5C{ʊEo [M s v@;nJQ 3gr A޵чk<#tebcěA߱z%Izgk{41Ns|p. PaK> NklVHAMy\]]f@NM+=S:ً T'z$S!a;_k1zT1p~v4~yI8(e3HvV&Ta6s ]nz ^ε<_8m?%v5Yrv^!1GXRhvLxQW\0$GCқWIiڗ%٨D0Ωk%׭}hc)|M3u/^bPOѓ]ֹKZNt;?GT,nټNAqƜQ=Uc.yd5\^C2c8e-h dc8 xău؈f<%S縔1Bs/wob?Vpî쯣-Pđ ø /wusGODNMל֕u7]')ApI8ek}sBlk⠏)Ou#"?+$0-BXDw7&zRsDc[|v`sƙcj+踤¤giQ5ɔg6Tk++pګNu=N x+8CR#.7vVP޺q9K>.&IQL(h}vJ/kgvw|;^wl2XUbi_8b(Gx|a`տ('#7- Mh$HʅsʱP %kɢޭ.+rf"p30>RrG8yQjsh*N/\ :\(ޖ17-Aj,vyV42 6\^#sb%GM_9A/e=iOpO/Kݦgb%IH7|oBB@ZyzN۲)Rft -/`b{۽{>z`~¡uHyV`, ~vе&`v H9Jj k6]$_guc\l M܆ƅHsOVފE"Fۺ@kV{ϟ'&pӣ^LV`ǡ䒉OYaБa ~wčmzAc\i=rhp8{lvyKp<hsF=9.QYՉh*@4>&" +Miq8E*\gpt1aTSu?P鷡ᜎݥ$IoA_)Kɿ~ ^Hֵ8憅La5ĀP2w4c< Dχg[] \F}Mݬ#lY0Q'~̜4D-[5؉uo=ji7Yo(u!Hm!s~F^g*_"Q5OMˣĤ$i/}d3zonm\EUN&W nIUsĵæ9xX&xhŒ<69Z(Z]ua0~ L$T{ޓ@T=ז,zjs U$$9zShmW,oh|*$+Go3tK1bki|0dP`u("LNԆ m006'}wύga&Q*;0s+ R&Z8ƱDgA&ɩi`[Җ~N_U%, z(;UE)qCh<ⵧ+`|-=KK0Ya}[Yf6fb@ WV&TVevh~]^)ʢ~2"f}SԾU+Nc,NM=ZPH颶:XSALN}x ~Sp.0vuqa ~/}Y[$.sPX%r֫ A-"O+q<|YgFZR.rcVԄ'@ tGidGzu#8)4䷏#-W gF/l/kv&Qi8۞h`e;5K2ɽXGJ=*B[F>7K~A,h|{P_55)(;0ޕ`/VV[ʅܴy~ V ]L8a SFkix6\0k7wͿ|Jdh/ljE[׵W]?8ə_TlpP-?r&ȎhTD'3Q&r{'mֻ؁_ !HT`mܙ[̶@M${ 0{;TEao"7а9pzT4(uVMְ@M]B/29U,N1W~neӫ@3귾K`]Qc1 C';WImOU`|p' E]#ЫFj׊Վ[?0^`v`atp? `85EwuJS!%[?\fYitQʨkY9luZ#6%rW)mPڽI]&wBWӒVĩ#< ൊjqP 8N7,7ϒ5.g2$as?荥-C d:Vr4WZL- 9Y3WUf(2`z0QPkm4!Q# 5| ) :ݏN I4['ɸD '}1;/0_=|rPڒԾ}BF`~ }$ʊ!Λiʦ u0=gmz17Ŷڝ|{%u3lWoD%UT@Tf6|CTůK_ ׿Յ7"mT\nNG;HLn!SpƊ^V`r{gQ+!i${}l*.G`, Gn?C^[ g7gs&Xp M=j9fY"lBG*i* 2'l@dSt~P$6C~#91eG.=oIO>'<8Ar4u6p̐OCGgHj+We}T<%yZ6D4lt_e8wFk*:)D~m'BXqy,'K(a.c @Q%S|44l3'ɇv(42K' ^$DLbF A4\[kQp\a|,'mJɔiܨuT,졀d%c@52w)"]mP-m<ց` 8ꅨ&~=GX|bd70 ܤ+2DWf(Upn> [T$nov\ !=.&W\)SZU`߲d9' QZl3#dmi8g"2׺ ֕[?D3Q$V!6m $M~ndcB豽~l>7 TwPh_CK^31"RJ63ǁu2vR.x춼{aʟWdY4tvL+W+D@M+e7Nkӟ~:V\th3 F͊|.yt%OĺKFGC*gep(@lDJb@|!HS ڠ+.*m`٤@:{ڲTdUǃ5:+m _т&5->ƶuS~beUęЋ@ZMU2ðwГ@ X@%v8rW.5 蕡|jLi}եC6$\{_uvֱnmqŔGJJO)YYPW =̱U񩮓iG<쳡lϓlp`bB3r;67%دhLxaX5֗KAͳ %<)>AtrMQ/e86/ndY/z5} ?0 o1MQ$%0,};vFk v@ ֩jj-+`SB.P% Ndtw\\E3u h%>:C -G̓/y+x"HGII㛶\:Pkms)5?I#-ytRbC+e:[ʛz]'MJw;# P%B(AGx(~ߘģ }S輁}@ViG|tͬ;w0 ֙i[cDƫ uTRWRǸau,y!S鮼DNgNUĬ0:D2=~Jw,c0YʧGЇs򝷂 )͛kGq%xpJU3desV\Fxdc]-Y.b]>MM384M,_ej'#>"3\r #Imglcw/m+S*V?8}p[ȕݻ=(^s&~#7Aщ(n=jseIϔ- !B܍\bs=~Ub lܵUcGي aQwQxTW0Uehӂ +gDLa,}*(JpsuJ/Tתv01Lg9ҖآNG1 m)rW/pN1TG=xQъ_; ԂqM$bf 'M2-fLZOo|rdiM~%w| % W&RO3pY/ J 00F0 RuP:8%N ۸Z&sxN zkWM9Ӑ2ɘgv@a/ h }hwvAluXRPl\%v@qqZoik*}a#ahQ1Ikj)l2ۆ~y^&]\Ko"踼I@!S$BW;  Vi,[X\888]fC E['f ˶̪ n)%W ?>Z< % Mp7ޡ 4ӋΡ)Vi>{ꉳ'D_Bk3c M",]J3Iv$ 'jYП TȘAח0 5ZGHf 'BǙ{Lݹ, ob-g9+W0 kIBI2V+>;ay_K꿷y xRpBF ɽ沢6`ZJYG]()֣C!p\[w=$AC1%j5.n&+a~Uq뛂Ho&Z~J>8mVgK_EV}03Bc`-X4OI"J1( HMz]OGfHp͵S(}GM*\l C*8`DQG F7e&Pa=:4C:=u";ltQҠW'o/ۮ0~['G?E⦿~rSdkhapTo_fR6)릲礓ļeZV`5 C⻐vk ޔ\c(8 S(F!bu1_m؍|T2t|>^n{$y&݂~A))p>)@;d_,5؉짞Gly}d:+NgZ{f |+wxbQFЬE)2#6#`)MpCV$E zg}سcu6ٜaRIV cm=ei)Nl@=aJ2V/7EO|]|!(IdPE Ϩyn-a'wxwq7QgAH1#G^N[VMl,9[^Pߘ+IhB1 ڼS= oHpx[msȾ\5_Jt;!/QiyaTaq=rGI;vϣmwީ+c xpP džqt!ZoU/jUЛh+ӟ0RђezNUbv-S~hY(g etdeeZsG0@xrJ,bLspfP bz|g_XJ4v|>AcsLGJ?LZF rAjН$Rќ 6ȉ(Ϛ`p{tGAv.WGvͻ~[}%fD)){{?m"ř Ů dt $ZmSos?jQH (Z<8Јٓt߹PJOM9EkOd x ,[8Nc=)щlD5P mͺQ @ub _39UD翐9*$գb"oM}Y|OŪK_P0[oŜKclJ,OZ&_4| ɓOVr~; YZ

    EwO[>K9HCq% bM`m$,J @*_=k5DnH္Ÿ/*mB˜@i׷ z|tu`?t0p_畮U(;9E-dE$wP~s~RZ[Ğ{fiLvHd/l](^w[\yu%v;2kHu͞8],^ۮIKwVeh4v+1D$,`JCq/Aؠgk /qޣ/׮!Wƃb3ʤt "C "'hE8G0ƶ)$ݷFPlzgm#!aJd lI"YŠv8Q\=ܣ'_6͎lEq|@r{T曼r3߼&~(kֺ#q(-{:嘷o/]sU2&xiȰJsX}LX 8Or#:鯷= 2^1:\+ns/!88>ar("oFaO5e3*:"d}q3><ư_kfx2 MX34i.|xt>(8^CcUn@nCWZ=V:!]lX„WD1K `+yS%ڤmj+*v.?Ba`FOَv oM Q }ɝ Nyx|/g!`n6nA\b,gq‚Gb?cR&\$DPNI,z+NTddWdtDOHb /жx3Ϩ0|c3SQPӖE,hNv\jU ^l CP7NcgDrmvujR}; Ḳa(?,V:׈"n@o|P'D'7ؾ/ڔͅQ(sFi'n B-ZxKj8}hɢF'M@NR_r0s<$?bNO#zOKȊJ&ab'-fe\UEɣH˭'@Su2yn+緇zI!h%qjPɞΤ"?b,ׯ iD"Wl=ä)OŽOJ[ ܮ{er4m;0_igrl(`r&DgJ _9325㕥&{(%iV 't71.s \vW2(mCتY>Ňωz$H|'rMm3rWcFI>{ D|2[J`$dd"#NS/KڏyX 놈TeVC(æe)u _|B9T f9Rny"qW`Zc05@őe/V@p|0]#t!siPjN YjsH bח ,E6xer/6ěV!@]{vG-9uނKã@^Wi\+<X1[h'ĨWoSۚ\VYTe?Ͱ7ykN1G M`W.ͨ\_!_O8o]Y V#DÖE;S/ӮFyۿgr:aG,a}`-]LP]:! NuA`M>\sfXm] k!ؠa\Hb݌1a!/^Z7,(MO>xLPܥDDw KK K}|BGY GN9Pr\`IXJXj>YxQ*%.~Sz Cqy 4;4=S(\țm+qL+r,̹ݳ >~̾D}ZkӨ㑮a'cȲU\U֗e]үd@'IUYʊ*Qӄh0MViڌ{IG`}|<M UvXD&\D, l!^|LZ|"X>CxĔGS[|p⿋ [<ᩐoۉ$6T;H9h M&|v*D`A$q΅!2(PVy5y`X斘 PLz:@1@jh;k2vD#zq  NkQ1} 4 /`nPxe"DR<Sǭ,w9fǹn8xMڜp4>OoH ߮KEk(vqq簏 3ڶU1:U¢K98~cU}3,o֒F Z),{㲲h@!?ۀzPdOG蓕q>CH9VzW~E=j.B{4af"i4@7z_t$% v)!v s ߫}Ĝ"cj*y_,Qg)3u<]bb3-~o&Gn}~m97w dr_ jC61M al<(R<5.;/ HgB KB#ܽA$)A5@{sv99Bln9N _Tn+ W{C$N9d(_B@%.<}OeD83ڋFHZWڞ4_韡Cq6cvGtk Tg`ATA^bZ.Rd%Y<&8%"Aq ('DzB[ #\ knEt<4ьbM)" kjB3n,c2ldGCxeY&__$pA4 ß;Sק uݴ7_uAtH/C@S_YMUx!$=#c)fи\N14A&?@O_iW<~] #f(wmdc,Ya/b[2Iz+.+^T4-hXAj4=H)+ 0devn|WFn.RD|"#lԏJ28r)>`CРvgV慪bxM$SCFbr`hȱPih _WsA@Y|vv8D9>NSkÊȍ&KWzRAS&esDuٳS{0L2UN Dx(ԦŒ1dU) 5u [cun /a_E7lݨҺi.`WP5 Mp3֘| ;Z҂J<n+֟$AJ6Ú/!fZ,۪YgIM^X( z"-C@fw!;,]V1)%M?4W_e|~eϻ)f|Iueth?zA@y[WlT^xdϾJaQђ P)W?cڸM8/?hFER$d3)3Jxs8,'=RvQe )x&TC6ؘ=( pp,kPۆ9E3:@$d\@c4}݅L# <`]_8?R ]c){mO| (f^J۽SRɓ墔;^ =An7adfQF=} j{0ag%\68rD4Npiu]<7~erI k; -BA9lGfOқ?Ȗl jP ˆ胧/fcI'nKߏ=8vHh'h!!IjDi"V B&˹bmNe@[n"I(aoO%KX_ӫn߂aO(}(OK4[6FcΊ p6+s:=_m32"Fqt yuU*79cg.^ۙ~1iDWoI3^]OirϞ^@ 09IYEܘhPW.R͔86H$"Gby4 l;ŭ**.e2% /G*eAf>!ϡ֛Ό6>dtfXY,a ^)^y+6p_V1rSfas1bpWMBMm͊ab zgҶ8"U)V)o1"n3ӹ=4) "GQٍnKP+ \soW2 Wyjћ_2fE 9uZw"I/;,K' @)g1<6UoLpjWj.kuW JltS+*:QɏT,{= Uʜ{IQsP 0XWV66M S+ٿ|.o̒k =4(Ch*UvMZ$zƄ'uxjHbgW㙚;<H% sQ8KT.{5 }\*>rY~ylZ&"J"|Z0ۏB^U7W ֊lmWM[d/6no_+k/"E :=Q{`0>dk!*O'hh]5 ެDx%c 5',x٪F<~=ob@,Rcuɟ } y>'\^UiCf4#Wq>JzT] q1(9u+sgH]K )5рTg R$c_dGj) [N-4Xz"W-cǻ.QRێe)`躪* Wv9dp8X0.^(FִhNwR'ƕO?8} vljRhMc!i={~g!~ĥ[Ihr3u7:p_{U]Zuib{mH?*ܸHU0Uw{4- 4rRO0FtOF Ma8,O>ޢwS>ΑO9pKA2e;ʝ玴- F머6aӐ۫.PU 3V]ogEq.ZB<`Q3gKUQOIqLP > nWg}I\M<)/ژ8oZ hkk8mkϩĭm ŢrTПm]"l(η:13@ Ξ@jNKZj0Y[@ȃEZkIARSܶGPy%sE y>9FF=e%4wڭf%6W]B-GyR ;PbkNd.vxÔ|Ҽ29(ɱdPƅk"Rp =@>'SQKR}nZDY_&^V(>pM^wL#yRރĒ+Rͪ=R"Ea+8Tt3 ʿ,  |uo>5g@'Ǒ|[pp nd?8 ? )iwWeSoG2b܋ZgЎESM>y2^9m@gRBGb{1E#}Y!c=gNǂ9ݓ[wLDRC$klz MQ5 ߐCgr/UངC1eKK5K;\hgtL|sԞt֫O;nQ;xep&/a;@z"etĔ3V/н'B:ޮ"<CQQj!fl*\wgç&"nORjӐ[8"SO@<U)ǮcĦPI_? WvMd+[ >f.XA(nV1Yuѿ_d&׀*/{dg;gW1TЕaC{O`,1GtSVHBǙfi̖OmLj}?q~XҪM| HnE¨u[$e  8w5#tH,h]0n]Y{gܣwv=t,87BxaK`]8Qe0R cAk#yT qTOJ$eym91 QI`1>d34{2`Cٴa8"jnqoP]М]iӗ30R-RGᤙBUe-w+m6WȣTaomB\cqѭm큢\gI%򋭂"mwYcg `=ΐy?a݂H 5ut`3fY;rVU{: Нc10_"OHJ"i/[퉆Wn}ٽʫU@gv7fǠ+K t$OoiVP.K1`]-z׎c:S.:{E_D w#)2?L ! V#Y\!4M :r~wP9&"i6N[v;YVt(vX_AH/t橈3Ttai݉R2aRo=-l+E6廪55O?'J1$cZ~Uh4MCi g M|#?7KDwX4a,ƶZ1 Eq e̠ \2ǑoD\Ary!92y3'J }ֺbCc('_)rK<ӡ:٫Fd4nޘp>WBRx:Ċ#0`0idOɌI/}.jͦb& =ǏW΍c8Pm5.L(W}C<1Oɤg/9M-7YZ>#%li3ˉ#\(*3xˇS˯eYpCL4 ʨϮA;<01Ep%T vG?iڞKl5W%vĀ߮8%c8DEP/5%YIF¢< VoZUhaS(%+[eR^{fHi?,T2} S jڗwhtZw}l73e\̬2y \'\Zb-0MHJyt~f2#29 R._r%rfyve,EG;cs 2aψ_%_,(E edICgA7as9,Lԥ|q%8$m|z[g׶[qOA} + V4hPj{]ߚHOZAz2N&J0 w) |[b%}=5VÄO=c70K>8Z,zU6x~#sqE7;IjGj/wZ2a/|vO! =jTqc=Z}9r Rq8c>k&JWdiPe)i;'3`΂1)\D\i[ЂVLe<0b_1r+/"a#aI HS)m{_Ϫrfjtc/3~\J[5kT{f6: *0Z<0_J\L6`&A+ja7mּ8љ:ӹl>,񎔮gJiQH:_dzXjͩC$ؓmu|)}LV/I8x9Ϩy$zaݭ !5mmAa>Q/Odnj,3ϯ*`{8# LUSNه~XZ\gWʌbB-ǥK߫$ pPLRri}U ȓ6Z.ytK.X7i HQIYPOf)DƉʭD@-X36rJ8}WTP]*\`l:H|V=4Hliۯw|9pQx }9B<0譇s.2z&yÐ[8)ctTV,6e|ZeEq4D88kE_DY1hpNs ʠ z?] )`621%ˏrv¾Y k)_/G(3}A*Id@83+2e`49\1!."%eC)ψ|QSy9c&k Dxy2ì]"r[Kz2P ߒ*h>9)jhd=2JOgNr{2a4l%hz0\ me  |{rRøEȪ.F8٢hS ^_/oAToE tFːz^2D;,^>>s s~>`" $٤~չt kb]N jɻ5"oX8b7a^ia4xxAskbP{Dʜ`́zX&|hލZN!YPأr1ޥaYx#ė"Jap9`جtǛ௤X./[pr"ޤ%~?Lh3`ɚht_@/hb/?54+vގq*(g}bs+pV/N3wi-R*;1d$#5!cG8JAҐm̤q Xu na *ctvB\m z/,k>F DU>ϲ(ߵC&` 5:eDlnɻ|fLFCrĬND٨SƒnqvD"ZytLΛ$Uhh^2wxo놁:U8eh|``C@.t_=-ds5F5Ó }7g8YKȏj£*@De6'' tz Cu)@1.@HZ9םp~%)F %Ye_)-sdێ^yq؍Z/|-KF$yf{Lgn]d@JQlsI\NVJS_CZoZB@ ޢkU8̆#ߠRf ^^B\ޮ5aVjyRk h?QbrCge\e_xE735IUlN$O>ޣ1.yu'-0bW^;ffjbUQ 4`난&3D-j¬9{ ZVe gf&JޖV6RK2hc8Z"5y!trH6NFx[P3P$ϧ&9}jEp37[iII@ŖOlt1pNNxH} )MՄ,!+zH`xnx {9,zҘ6&VtZikA4F!&VM8!_\U)w@tI1}&o5WNykAhUDYv3$A3{*SNxE:m )B:9@Yʠp&+}("x/-Xgx)7R h@ρgK4T n;!"K]ppV[-  \Q7bnaPXo+:b  W(א1$ UDl{n~Y~-‰h`3;n_t_`X.sAZab8QAKv︸X\Q5RoM㻙~|OL-) 1^eeW{9c]cMDػxв۞qG CW N~j~sk[&"Lf Oä8Y ANbԔ1b|#Rڕ3w1&N@(]xJX7`w6~^6NqkYB .;{N&=@ 元4؄gluHiY x)׭i 3x2k]-%QcYn_&?i@`sַ%uLؽ O_! {Cp' =_Iˉ{E_J?9:I$GehYvpKf$AU[%g坴"8 2!3#G+hA ifA{Yp<I-+.6MchhPA)PsX`mh( # l$uY;W>DFlK.@@̈́F<ؕJM7ΙLȳZ9k J@WYzsYؕy9Y8ݗuK*j8sv@UA:ޠ׫,r]HN..[QfsH6XR.ҷnP)X<3F;S nYF`RrA!l5 ~UacO#>;$JcjY;; dF&6CѻsLߪ047Ս8,%v* (A_@.rp Z^#\d}V`(ڝi(dd+rF@֌ukC_$>n1T(DXK`HPOZmS iwM@;$0sNZȀRSŵ)@Lu.{IA8>]V4y{洟@#Rl7ɲ6T&M $ QrT\ kкFxҘ %eiL!gO頔tb6g{cgU秱_D*Q u `dTx9u[Ew4?,l6ڜ%0ja#Bdq=\zRP)?EUUJsX Q )>b&xfy:̣M SR *C^Ӫ\=cdQ. 1r^xԫhuc;Z i͉#]`~Ҽ\n\++Gt*rE1+MXc21DOr0r=pwΨ<"V"9}":Czs;No9T"S0@ HZ jpK6!FITm'lCz;wvQqB)(cu>%++){b+&XpT 'ElLNKPᾦ5~?Ij@6,!m9)s6*Mg,O'gaIBNi+C~~@]$ܔ_xU<S9~u"H1>fJj|,-c(&xUr¼۵pL6T6u+Nym/"D$I) I>đ!RUxq/&tcyu&.*ntwcH(yI^aRxN1`&{/t~CGC@CDQ͐tl7$LJC,^" {݊lgImȹ~S6u0h/.-QޗoOR-q{ith6|gv ,H ԁ:B No궭~Yuȝk}Ry"K# sqa`?3WB;H6k?ˉ}(lo .Έ *h?k *SAqv(d`S# a+,<94( wJw(C0cB׺vE &O qm CQ%׋ 6z^BAqpL0@RL/-whHrfS\!lhD̫+ʬJ4-KP?-t|K*T_č b{(vi|TO[I(0PXWWRؐՊ`Ton6_إfۡGMiiӯu#& l,>bm:$PL>< b}ύi`4<pxFơPN0K`H蝁`/u繘:Bu# ,g7,;= ezɔNޞ28\:oEnB-vXraJְ>Y~E&]{Ais((wٸd>kfˡT%dе Bwn=h'qO̦wC7@XZ~( \wRH8P4*+ *{ WlN 3_m2ikbo9޽ih r~m{>ul<OT eMZ1g '6`''iQYM0(Q {g;5ݑ]" /!A*;#ͼ\x]~MJTZdxms\dkom\t▩E}Pӎ_PW&c?q#rιj7:i0g?.4P27jin_8 cF:05Ɍڠ5TSR1ؕM^E'}ƨ6sJ//;<^&; ,vI _DZ$|)g6t&Jra|'"/V\'C"jgaJ'-ZNڵ~ԧ1‰D3E%C3E =krx-[ֿ޲;ztnX2h#K\Tqxؔ~28:YQ A-:c{Η\h!T~݆nFE7oLF+60v1')G-:, RA哆Ⱥջ8;؟!lD>hLxHNzs$ ;i׵"YrH82"b˺uPS9~OYumT,lL6C>wa>]g]N#CXUm ]W>_҉qf^\5;lpSOȝyK'G)8/Q?ZVV +NK wE\JOwm+W:*%F5zF]9+ E_I*_O了CbKTռ(G-+)SЙZ=3NPm.5ɚB+Nx2E>Ce c iIrCewx'whͅ~/@rx{xcƒbЏkFiKbfEX(f|w,W҈7%تtTj}\ι&ɖ gK\W5볷7(qV ;ARVNPgS!Hk72v^q`=fΘxKfaڅ.ro4VO>թ3w1xAHOlN u{CvmR \4ib\p\)V>Vuc ^Tq\FjOA [5e:.>_9o2{nJG]Kz.g[NTQ.吟XM`#YM䱰@Tq<2ZuQ˂(#\r8!yĸ-۳>U GeH>{ײ'ֲϥ4?s+1~"+[lS<⒮خg'"LuA0 } :b_ =1.2+JP>I!xAP/5LKY1Szتr W ZpCL~SzsOS>/! C(;JxW5OfjI Ց6JL=܊&]R2_ /PZ"uo Ρ % ,`sřOt}xDMaQuq=', !  XB%NG}RɎZY? 4V|Ű4y:4 F="KH\Sg@gB5j/[joOĊL~(v0Ox7|c|.tvEWgJ*Z>4ghSBRjq D,Qg&A SioJwdg0gaV( m )鳗{>#3AD?_j#W92D}ru+ 2̾<߰ٝD?7U1JϦ園ŷI~F'(D6\Aj'UH99i_dʳA+yQB$H: $ҏF\NTk;'Pv0C\}~KAgc?Ck䙭N"`}5Mk`& %,(7\iIƯ{"^tu.oCYǢڬ)2gnpE.-rQ4%B^k՟.8엎aP~w]vwp--,b8#C}k+,ZoUOaŭ}4& STS>LLvl>O>;Ooxg!&B4uIDubgw6ie8^`CdxqW`F=UTWg/8~"9p*Ni6)m%r/Ȋx;5 I{tŰ?=e=^E>+'B ```?.B[ V 6 c(u/7m#3A1U,{\.==j&1OOcZ -Y&w1ĝ*&e+ĄAڿZ`H'cT?S4u-noD]/gaʟ6.lwD1Pf B= O$c ~z~$WNmB2XMbx_(.IEbSkh5HHMzџ(Uդm5itP; ^Kh,-ʰ\saGcO_-Wm;^QrezU)Td+j3Y!Bv?/QM5NNI)4.Xᧅ q`ˍA#\zȆnQ"jF|-hR["s9>Ո@y {b /Ǔ@E I6Eſi*NjiKYهLGڡa' ;G]>3ag ]_PWI`\ D^#4 g#)Çr㒢;e R`?;b*Bp8*^k.E?>j7M+`S7Wne, ~6L/؁>:1VE<|XjHJkYُ.ɞnhl+m.S V{$!o׬`T 64BLaI3Aljճ w]~XM-)Z۞A|̑P̌4* 6'fRvD83FZP>٦XӬ3N@DzC XȂߺv-N/#˪ݢnHt_lg$c \X\>==x$bLl-5"y$G81dRsU:; =+4@iJ~߾\.J: LS@m6V?9!CTmg|wRvIrJwt~cMd PLP\MNE1,Dz_'rp).Uw0VNGzoUQ> 18lnR4_61_VP7.Z&vhfHmI%4׌i9iu+"y?:l c<`XVvߘu&! MR'ΐOR)PWɵ%6z|8B1X}N1dh֨ =z-t _M`djJj~ѠZ^_U%Ǧkh,ԯs9ko'd['hCLyrI/ C* e@Kt#B9"?{藔o@n|y!X-1p/ Gv8?t3'H^lBM?JȘc/U LW^jcA4X]IG=ƾw1$4K;5 < K`"S>vKBw3*AzS_e{\O^ >ܯfUKE480j$,ā:Jϛ]U$x?tMrlOAe|}"&5?ks, 9A rd%[rH#x"49d\W8i C[ӸdI dì.7tal= 0FN}f?K~h }Ey}DPfk1'b{0# p$ ahs7ŸVʩ4Tct'T <鏪Ys%hSzZo|t'`TP$?B5Q:b0fY n,'D*01?fF+:-"GxQ%yV6Q?ڮD4WGzv[9p7!Q6j@S$gn GDJ銑Bi)x+ؘ>67尚RA-yj3qq3DET/H_s zķϔfWO+CGqe-K\w 3rhn[^ϓk¾2~3 R7M}J]'1'9Y$+ͽ ׵GJ[H#KqFKTǀ>$_U&Eq"Ď~] B C G.ch~F܆^J!b/TuS1IܶS:!!U>HWݻ*i"W 8?3%~q)0j4|'A= ?dg4mJkO{֓9{qxcu]njxwڥ ćJ&k<ԀȤ xi$v΃>rK'2Qy{DM*/0tEnW[v-)QhElw?G^,NnO$!mjy?^PB>"+OcnZY*`>YW,K6|p?L%C#t̽^yhKfP>Qg 2h-юLo{~.f{E]gCJ}I4 @ML:۫TBC>) eImfP~Np^yE%lc *:'sHU/]z- 0Mη3K$Yew?ݱLp"Jk%*UȌF/* Vտ1*c؄uٟŻdO':"T/ [x!\<}0Ew0gc0}zDӍݱT0x:UK!p~?#O-h>Yr}jy$K6DD<ƿOox8#hgmG5cPS2|LoF^Be=N+@UL}tpoE}c"^ $'Ȱ ;#\ ,&= ˽UZECs=vƏ4#& ]Q*"n=Ze`6_d7"l_vyH#f%yF5~n9 g}".WN+"b.NR4a%Q^b| cTJEwԎp'fMXK\! ^ϧDaUskYQ(J4dz@npՖUxQg_|o]LD ;_?u@D&F2$Tox՛\'|S)~ ߞrqrݻ2ai|cCԘAH6(2Q 'e1%o'qjBab4>_5bvuӓ.T;.IA.B+EoU=^=M?h {9fԡ)=ًnS(bX؂0 4: O1 YJ>-9qVZ[;ؕasܔ鹪U).!KD]LPn4"om/\n?&Uq.A*:Tf@R:Ux%r)5>Z G;jYb>fO=ǹ8WC!Li agsҎ{\ ~3V*&z,1Rq&ߡ4i'Dh rʃ!*/,@WoP57fu"]2R;ȏ-@~P䓳7\WNV3î>m]x!CJR܊LaY)(M'/KP]FKy6[HHWF ))Z07)Wڳ$S`wK.a- vkWۺ^쎁mk=uf&..*_dVȺǟtNu\҃l|0h{, ڨmp,Nd0Aӯfأ+i 41*P٫BuڙgqEB8)Yȵ-_.#?qDKYEtwYw o2)pwm%:@*` 4;A_\71[(V"ZfPTB'4Xs~g)gx. c)3lro%8R0p̤TSzNqJ~3`ySC_>J0CǵL;1o*$3|bY`?o;.ZOrt[XD𚮮]A׭1qv?uG('s7&Q~L0 !oѢq wPmVf++b@k_~K~@ 3_>HL|4#x?.u 02,궰z_ _/(tkn淐qɡ}afϚlAgE ّ&bbd1aUQ-8ad,HtrY(I||vsWi懓rħKfhEHA(_ݬؗX}6& g *NΦ1Nz#[,D^z#|> ^(Ag I`WLhǣr^sJu, R D^QZkήXߞ&s!kH@%ti<(〷;]moY tKs Bj$_u2[\EʜO=g2^5%YD[I&=аd$:N;}B"`N:4ϝ)FkTz}rkސlnɷڪN{Q%ajjmz>A{GFkh]>`&a=.LQaM1XC T\@N5d|6Vƛ\ cs Z=(~1q'Od)ޥr зeQ69*uqtj孆I'*ѕƍ{/$<@gJ,?淥5|c]K*3b< 3,*+c݆59yC2=1S)ЈGɒ3}  z3.Ǣ`0繟 j|܁h:jrT@/ Q+̅[Oҭ{wr#F!p`sD$%r[1(~;nNQV8ߠ̣@6k os՛/Z<%+hVt>--4B߳ĵ6߮!w3^3yS ?vxEc4vMҒ+1"3yk^}m{[8_̛̙+BYN8}Ǘ)}ɺo|}*Rb[f Iq'O/_IhMo6q+Yu˥#|n鉘"n5Q̝_mm46r&":i*Z]tFU+_йz̖x\Jx;9i  VZo!YUS4m ۓBȷ[Z=a*fWQ6 Z<4F0Dz_掖Ͼ4}\8s-eqglW ||7sk?YU"0%!j5^ Q8CP7RInp_f4/o[^$1￘Y :m 90\qJ=:e/s~8ѿTd'G½?@6ͣNH3=V ١4Wu|"/%8o8C$ύub`ϲTQCxbE\}.#7+ 챚TwXjKe m\vPfypR" xVe%>3 ^ux>g AV[tL|*XO%Y:e4zO$Lx9r1 #tO@k9s50zR'-pK=@י$ŻMR , DC­taD:#>8lTʗ 2| ט /itN^[2&=\=gtryQs\ضu$7A3V~- 2FC:߫#5K}AXT};:$X(ر=kٸ I%-C>DgxבK:H}xؼPpf0ѣ!0>(Lߢq BD('GJM'PBR(o[(SM=I+Fu>5/7薌d^cE߶R ^wF"]iD4 D+bYueJ 웊n&ںs wH Q)6]nyha5$6t SKR!zLs坢MZDJrg=|}P_">pޜ"]8S\~b+SXn)dT-D#8WU.ǧ28SQH7u,7X?`L[\7߳pl/~W?eT0@4`ש.vCVj{17V6_E(cja6rR^sW?z'&s ]J;3\Q?rކHvO&gyQ}awd=xk?|D Ehl!33(:T2w>=m\X7O~ˉ&3f&^zV&LsObQ\4{-˼` $وךlmn.trn}O={S@Gv˃J FfI}LM̫ȆyĻd_pbd0r씬ȷWvd/Rӣ0-J6U,x-3m# I:QY@)ص7P&q҃3dycFP!mU@S.9GT߬p +t]P⨂9Z8͐Dێ`Ks-%b h211Z',L|3:xskI z]mhՏEY%tN jDPZ :#/KЫ3VYNUo6t|N2T$sq_m8TM JItܓ 1?bWo峭u-{Gf _"}xfs#qmX)h} )y 3~[I`C S0o.Yp]˝Dbm×k${ ]TC i rƬR׊akgHhֻdUw|m":*sO1V B~VX([!!!)_*Y^H!G%lׇaTˬ5VKĸ9y01Iԫk;h{P'͡U'sAqBD'ιHU\?_RƼӾ6J bh|w'rX|3dE$OzfX072G*,Mi }ESJ(rK},Ѥ?`;vuU1d5*½D| \T]ܨGEv^ /nR>]'4F{|u$?p˟0n􋜱!HG_è[#M#Mhf"lO?+oNavLTG79) *i73H |=\͖E؂f/XlE'{2w+? K$yW:e/cB\1_]Bq~ؚL!Zrͼ .o~_Ej4p߶]3gfkc`0v oD1g5D=6F+5ގj2:kלQ uz+ʨ1\!=臁:};uF!tyK|×a@6pRaHܽF EYB2W|'c$F=kB٭} }.V୆4 A^"ڍ*@Rnh my.Y>9ϕ?7>K~-ϡJBVTSc75 ;Z/"X `[,ޣpO '"a( j P*D祧g.ċ&x~糔8Tpƣ[Aތ TȬMG k"+hgtC6DtAzN[2i״gt1m'zN,-`ѡ_R\{m>vXCF$rum&"f9& lUi6)e2LxRp0t Jm:tf$ݖqx;NIϔG>8R Ƙjh 6FWl.x-^W9/ SvǺ4ήj"cL<W{?pJzQ'D]l1_93\ ygð:"=̲xOY!Je !Bң?JS7˓v,k d>2f8c1D40>5֦Dj*mڥ*ھ''h፳_ra dksĄr&H#`sN$4QY "]6s]95SW.3-8U P#W@X~rx00668q~3,T犈cP2R99qHpP0Z /h1T #Iѩ#7m{K%rئ@Zw Vg _\Xddfb-3`̃'MJ RW!A{Ƕj9OV,n )jk$T]?Bڝod_Eq-҃< ]ުLs ,VYD2$SIxq/S`*pۍTIOS[9gF&RիI& KE$zDCsxTjB"Fbo [hHdqg3a~7զ'j[R6&Q83vd a%"PU'^zNrhfaSf5}jQ/fbh8__GA"4qP1VQ9@pjp}?b4: HT])~EoBz X'"+ v+~Iq'_LMuP,?~ $>EKoPN "ɆG$xfk] d9jb(lWD[/63q^?!4~ѽi!گr7ZlQUy!uTGNes7ZrABC0-.jKk7V~{/pymMp_*?pPӸyNaDz&/og݁Q\f  Jk."\f>z)>Yy${qb-G (x~iyc!Ћ| h(iE4[*#f qcf-4m<ͺOHF/-͔]LoK]-vWKg x&ةcmYNI[wH,{\ڛ&ry_GԐmFcX=k٠rv`" 0((Y-I( TO$A=iyamȘN&Iʺf0}Fxz㵘`Y Y5 `Ցj`Y?ZgvbhQ84 k])XvՇDmnMLٕҶZXe͒?Xse 'oT/08> wIf MT) MC7<4t)V=z`Ju+AƋ\ÿ%*IU!1L]Y=5j:”b ZcpjepfWr8pE* rbYTEwƹQŵ&nK{5NjE lA,ܝ<`|-!'E(R "ļ^Ә,)2sa 7Ebtڭ؁5V.lFn34i7Q)$9rWyZ彉Im'$Cln Ec3 vϰF[BZS2 U&6H员R }ʃbx W0`SHAaM(#ы\j_qrkϪ{ Nd0wkc`@' KaTwA-=KW,:*ybMs91R`74Pm'3q\ M$ @l3MM(]F8W'ωJjCU@ Ű˂G)ÕV9T t:Y#ŗ ԑ~DV}5spQ8 W(;dD}qY)q|˃Ux˦R#l>9J;`ޅnן@}2 O^na|A$kȢ )u]uKR)w'#W|זm=d*-a*<lPdwR8pTW fDO>OVoBxK%9j{Y:[Phj3cƜy֡^AP3ū=Վqʀrl;M0^w`Ngb.m?A>[nu KLEF,տ^ ^ٗmzec{RhFNô+@Cn?*ɣlA]e`LƛPD4/%ZաPUCiаj8B?G,diɐGg"zpwZ阫ƚ e9*(3x1Uul]$v rL0J"Ҿo˳}#8eB0F)P&(4Rc"?dY6Po/`/l4̪۠"794 zI vmߒ5sZK,3:gA*z %&`2I9{"2G\(P2eC |nZuB"CөY>|xQ3tM*g g^b|9 RX|3K'$#6hh{?G.`r*x'y 0}*4{>~Lz!|M1L }%bN]%j[Rtw[ۢ":eCxgCAR/( sNpm{ %R~ LIɋGo[=·Ō AGBT薵YǏD<ʓ?KP_к6 `MioK?o.UwYEnU Wb1˟ zűe Q4FzK:Yvوbs)4&=S yzK8C߀?W~wUȵ&Gt,qwа23n>gqb8`.Gu^V̐bȈvY"jiVWzڲyO1kri|^Dtd/B^heiџyDTb([ 7fH%Ol( c9U\zwʏ%jDUQq,~hۭHge` Y.+ڙ'ABFnKg8Og@iHxm<=[j!+Z8?3 _V[Ȩۛ@6) ,됉fq6H6@ =՟ZFZD#ٹaSW]\J(7Pcڥu+Qd$lcx]ע)W>}5?ļ]SHK}Us)TWf΄^:m{mtܪ[ʇY}[r),˳2Ǣŀv1Mo Oa*6DF'0 JZa9lx~8t[2!bFtZj>5T5P=DdrpԬl8ٷ`܇>a&[`\5 w'ڃD , ,CV*J҉" ȔS|?_t)9>+9 .9]\9iѸd#'HbYDZePYL&+BLV/c8Ҧr39 gZ-ܞk[_\ntp>lfvY-y ֦5iT9#I]!2{k&mM%Osb2?X+e}G %3N۩ާ뾒| av8dڧ.D_zBAsl2gCst(aX^O@\?4#89\K3w)rxzi^R)j&|be^퀿tɟŬZ])=סزH mJx8X>w跨JA#ŋמ㘉|QItxbU 'hPH13.6~l։^#$ /_;(*{j>4,§~Z f,:xW_ ,XoZ5Y/)ҕ2ԓP] #ܓZ6B=M삥PlO左_oo2K1V }m:ؓ?޺LXf8J :$A'siPLn=Sn\=#] D 5%ʋov'R\xjd4A qbGbՁ1<,J:*V @FO}qzN9AKm!x`%S E1 fPh[)FQhfA`Ĥ^'._;; m+s )O|ʜTD;G憏tYz\; %0R$l̗#Wk_ƹw*0 [)ң9>zU!HC^]U0d;8OzAѱw汇t?L(PPZ6D*J#,4(z1g=G*o߮ {QdgV߁SK( (EEKIHxen<1nJe ƒS=ߜrV4`zzHvc_' !g(97A y\,/KӜ eܦ([n -{gT*jZ"_StuFE\.'o~Ӆ09@ u|o$.b6~j'~yiU]QЫz]y;[l+<wkq2k@tճ! MwUue44;%4rUMcNRyCYy&Fk  σF@/ȼO>G݉qFiblGvq:͊;k`cMGJ(ZrJe6­e9LT(M^{8c;SI&&yH, 0Xia Bq¡lx^\[>IЀn')/X K{B|g2:/%jV/h]uW+ETTIJǃ}IqhiEB2(EZbx*Ҙr{ F_hR+$T+pfBTs_qLuh4 5#\]=Z.|PAB#>2#?bSx[pC-"h>qQu|< no|/D[*bded#6UZ\.K$0m?k]_݁$!P{<,1$} M:H0y-Oum>bvr"=+X*xyvv҇ԁ[ 0| *R}9F$b8⓺f-օ%0+d;2wZP ,d3҈ Ʌ$$kROm'f,eHRå]A!e>̓Hm Q?8/$7eH]5_[VS:I#]SK0Hi~,IeV-OƯsچ~ҳ&,Of5Oݑ=N=CYy%Ӯn=e>3_X2DR6^ ZAI@ k/΁~^);1$41̲H<4 U成fJ@.ڣ*r݀5OdI "9` I>l%r Gm0{}3/S:8NC$]MRChAWyxo 5%Q2ѧl]~o45nuc;;(-=y1;g=lf3ӣ$Zlo^Lw?</o`X-Uov]@sa>=5U򤮼B)%M(1Då }n)*e&#¾ON۝ȨT ])>!ZӇ{;y#;JLxiBub|NyL+ DG9~Riud`J#D`Ypي:L Usˋ GOrm &t-IrjQE;ZIt. 9ďD|ybѪ{Í#%˺[1x)L݊o]zA6[[}Hn@šyliۛ\IuHXNp`E<34(F}Z<,ZLY6$ 8~t!|ãd8F>:u47RMq c?cB` J$FxB]8{E nFI S2MBGfB}']AX [A|G=KroIg:o&:cѵ^I22.8a]ܵrͯ顊ﰏxDƣ5ױs|ȓpUdls7;7sHXgB1}Wq ΐzu0XqH-V,7EGkygޅ:lOEÁcН\v)6Pur&p4Jn#*2+]*)& 4!N{ *g©ँ UiZNN޽WLEPe;w5 kשo2j&l'bQԈvip?%1SQ`ƩmZXzpҵ KcXӵ VR6`$ܩyWd{dM(sO(%s>3kj /Lϣ=؈KyD;G}ȍzsf1:=:u))Rݐyd f1uA˫'"] [6 R؃"qЃ&Sk>|*}Mk  gu/NE"ߙ&خRºE6RG eaxNXz44.LJ]co1LS$B"w@k)(l]ߗ)scű& 0FZNڒap|,rQEڼ\;G]٥03]]N|lKI_}}:pD j:]W=rJh#j|1x_Fl$i:չB'Y>R n$aj \zߊxyiPxua V)buFz$CB+r7r&ؾ1ҳ̟y :JMݷjmE 7Bo[ߎɃ|,3(Nř>>+15h25E]0ڟħyi1JՂ#S+ X8b[e8䜬.a=H; גbzk@|lAfGX}a7\|.iX9BU'P2a:E൏J`f. ku,Ъ#z?O?дzhzsJ3L͒,yJgqr ?JWdqi $`@l$V8~à78pt|"TP0U[4tCH nCZ=~м%g^äN$ {L-s3b ]]!rRzT[>+B. w ֦^)$¸=ՀY 3T.L e|qb)Lz:S'WAxW^4ؚAt%n1j}FCj inyaa‚Jg k7A7<٩ 30ڽ\UyL]"[)JF[[8D~uY#0k{Uᒈ`UPSLI/ +3\ß_#5l)NYL!t@>Rbdi7RCY]fn$49*OSay:BP)zr6GA ū:&jlnSÎ'4$(Gب߹V>7Yl4L2Hc: 0λ֌e]@_J"G)T6҉w{6|$RxnB u6M.ɼhkYfԋGu?X<{O*] 6*svpM/\4mX%EB-@D?Tu>Z.264h$ }9ۏ8gZˏj9| OX&eT*V6G52 1 {o9v@ɱ|o\J ~h滦G/bwR,y'Um3rErk\fc<'0"gv% S: +ӟr}au%C@q~a%DqT#Ǟ #$Kn);|o'0&_pƄ1D6L Qi|Rd0y7QMh;@p{^FfXs-31n0= (;x]ڞ o{fq?y[pQ!(r(jF8!E<$]U@B g+k8@R&-*!hkSB.M\LY﬙AٓITQ$\2q+[~~HN:sY[ 8}z41GlB=5Ɖڞs:| sW ga` G3+męמ>[v٦ -B}v,{\"6}'S|ۯaP DrAvn*}$0,_ %]|T FWѸy aѕ%vdj4!3btytڹ[1Ř\4I!˓ǥ9V;'b7QlxV#%(_FW|y&H& 2xM~Rb佶 w4P# H^vLaX^m|Oe:KQ>2'nIK_FIж`x0%v#RՈ?ln˕tuWdB6lI6"xZ ~RkNL~$YYהf̍͜z_C'I[1GI"<8Y4.kß%x-|g@RV-fiPBG!6Rϼ6n0N^qq(9DAc!= _^0X{PϿGˇy}kdCH[L1qUW6xTpJΫ*i[ l(j6A=g hm 23+&cBhyE^ϔnZ֦i>ػ=ux LQ:$h\ɧڻmo E6a7e4u>LG:߹8(,_)x}C qf0r Q(&qJL}i95@HW0sD"YՋk*#Pm&dVr3hN\Ł׶K$2'yw8Q^QPbG+-޻#sQB>G"|EMqy `@E>0!sW.;[$nƦoMn¾BY#΋[&  Պ&Ks*ll+}M&*UQ,0=_6c6l{zo lK"$~ m!dC{{`.Y>XafeP>"qץN.ڼ n籷["wv7m4ZkU6Xwų08o2A@6Z[` jjzŻ5+VW917cq|!#1P QĜHl=`V'lR1\x91 9FyeQaukuT(EQ{ޖ=l;1C@ƦlNVa?td*@޿9y4KZSהrj;D;ɳ㵺ޛ ]f1=9R|-4X S5TݹY ;nuu*^ކHS;S֭rVyB- oX/Q9%j, #G|@?TE QfF$sKk>2*o;H4"]T,<ε,ajفS\WE6Vv8/bsIc"ZEB҂ gesBu-]1/*XKzr nmQoNpP9aVs6UN{?[̯r"ntf9 ''n3Bx( ?$pTedwsBsڞ;mxYo]};6 (,k3Z\m l s m&jv/wT yG5 4Swb|vUpElF+bɨ {btG'L7ڜ1Q1)ִÉ7kf}Z;.%"14z u-mS9~-3ity]pA]dW5&V,ԥae@n2d"5>-QW4Na v:1K_hAT T3r#{wLԮnc&n[ԣ-s؊RZzD CȈ<ܒϙ3N಍_W˚]zpwwMb}->b`i 㿰]X\OU ~@BajR"0*)փ̎kax='54E 9K9?*UR(*jXO5?8Z7u+d5K?; 2x骚 ?L!z?$]W{JGTPË FjK%IJG+1)9{%|/.{LgoJCFS-[YS^KpVH:!žS'EYd_*\Zdmacl $!'vBS%yկ/šED q2t qBAEk˘Ã6sgO#6-rg)E\i[Wt sYNF#zcr{\)j+~+rpa\v2FzeuH?ӖbTrt̑jc3*Cn/GpϚC]'g'`+8k HckҦPV[^~eT3x\r^_JS%4z2:Z.u>62ʴOT:,#B H&I^4Sj7Or"j2wq86=DpLi({ٹʡ/-:(t1?/)6r-V4}(zfJiHRT5:F M 8֤䫐$aZ0eEGh:SSnʻc;F+/Aw}7ssguY獉e7׵.kj WOn7TŅ̮}:j=A< e!V?/a~1>q`# !u>@:).49\*ķ+5sV18?PhCHJ5D!U76,-(÷:~`d:PDlME!>r\n9sӫ9žkgnd` ڲ?i--[Y<Ә݈3_APIY{拓dα?zoSψ/EΎ?:6KD7P|?5)Ce*wiO-3# = 2GoTƐwX7xRfFScXq%?c)fdm$ "jx\t껖cS,Rܸ-6-`- GEt1(aHŞdw*ԝ!?>F좗TF;ԂGF̥HYywuv ƚ=u2K;#I'K z)>wUa} -XI͆LǶ5p1 3L1ˌePyggvJ?K`?-"mr\r4*LVsx敕iesJ M-13ͼU<μ]3)kfu,%@q2# w.xүUFL%.|!h] Ddiy_C'`b%]h9 z.R" e1 Jg/И%*U)I]/Cí2 "Ûx~NB~}#hO'{%py|\+I%h@au>W)NrG/W1<峟%{5UHW8B HRf./M*E}GB!wQde?Uo*] B% 6:aegH+k`iɍMG0[i( ،;YHH g\姇A'wWӺ ]2ƴ/ׁP÷e4TM|ze7lGCE'L҈A[Ė!anȦ e%Pz_J*BQ%g);"S+*|a6 fDkbթ_r?ԮKN[<ƓrFKєJ% VbjJeV!H( h t6̅$sY/E$9z'm#IsjA4o-vUpP`>gmv0E&1ZS >1grYּ^Ս :`⎄ʯg:~$XoO?5W$Vձ b4dAo,l:k6*YO-hʞV T 'Xϒ5Bȹ-kqfc䛷 :o'.z4"xFbjBͣiQn\w 5x 0]AK>54 Q)j b`#Yv`؃]gNݚZ[K|Oz(P%B?Dafdrs lfO'c=.7ttZavR$R'q>e|em4D yVԫ C;Kũ+:ArVPPqLj Xߥ)f:PT.g"4_r]~ES#GkYah L{~SBf,8\ JC@½ȅ0 P \a$پFI<( '$~zY)\PFv>kOM8zWP"-%thO#¼P,_x#((|%gk9Qa ŒP&4 lpvˀͪc}oZ_mPCǢFn%}"D$l7~hM)g;s ~QV }m1&N^=b&_SY wXD6ģALUǔJA2Mc$C|7{b 1'D*CU¦BsLB !! sb{zO'z:O V;Q8monE!>ۣ2'5 Tf4KcXD9W}Qoc]X<ڨC9{Y9fp R'm!)TTv[EȞ"⚤nx9| fNbH.klo;ZD6)bZ>~@s_ e^=j==b>`c_WwD(L?bõuCB$]-i=a/_إvq&UaGt&x86t<{ -#Yvo{!(Eo3xDI m-2q#VsO3_ܱLܙљ k FQbI:߯S>-9*Ģ_tK)r7^J9OB[T.DI\`yC:Ў(=+Ք(t6 O wIa)#PǶ(xUe+'K4Fi*+ &,kYI͋i=;"Z,Gzvoędo nF*inAlE ) i,*Vv _s~QLJAK~}`0C1{a*֡,TYziG tXs>iw\\] ؄;7sd& ;v/5h? Ǟ'î:6T3%u5.l1|?5`᫔/cLy&|}_ x@p6H)'qYxJ\n9ExM҃/KW˪{"kCDԬf@/Q'_R:z*Mt<WoHMx=߆)rVq)"=NߗN1~7^:C9S! l/+.==1/oɻ\0r5:|U!~7[E#!ӕ q@A*-z2࿐Uj_td4K6R\=/nz,O2&|G=3Y_ 54Rڨ@O#z|Qov!U)OܱXX,Y)t`z"uKtٽk RN49H&=oвɹ]U-Z Db^9ݠLw%G^pYڍd. da}{S`Z2 hH BonQH76zC/P,nM*)ׂӌ]+:[NhK8E+|,vPS0GL4G< /NgqkJ˃S`ޖі~}9O=6x! Ɂqkn3OLl,oR ++^wf)2'ܳ'\ӊ=q={D@ 0N.E6w7m)@,$+-R'N&i`փLOKq o*Y&ȱ#*:↎?6wb4& ! 8"g0nWs<̳兑د*S5^   8GQkXz4~+v9Aݶ#dVpAׂmZGEA(Uvr4 )x jwt|>p&6sꨣ]Ѷ#fe#q#|XDAKfWWq s.jV 0|O5yguSF?G3xYU𲅘Nk"23]v&֕&f/a/dFDK x\\wopFT= p0*z R2QB 9E"ʍtA%眤9vfP@ř{n0'UWe1y|%9ȧLWYĐy 7 5h~s~켲5(Dm{k'&( |ђ?"ى\l$_L%YҀydgiE j\R)#Mr#Y{3ؗfFåZJ%RILr@n}ccp<h@@G%x60#.0YINx#DzEza=VhͰ.J*'#_ϥ\*OYQ=Y>Lpͻy'|1p i]4#.Zg4o(YrwKEscL̀|+i7DM@#vI4Om1:S L?DO,d5'7%*z_պ'kJa%L`QUbL5H O=쮊;( @=]oXbT8֌$n2wՐjGzթ 80]\s!9#~U gAdFիdHsPM3խF`&5ςWƙeqm㌆-Xu!7j-9+i.O~"\mٯai=HyӨY^t}ȘRN49Pn(Xw^M闌tBkv|%ND8YP'•OңcQD?N/5cT3A`X±7[l f)t{,Z Gw@v`% #;7# ] reTqBF& g_*L&>Ă7Jp{F"_y |I.IKb˶9>0;A:r(?r2*Jq@C'LofX%m{hiw^{R~&D#l|ܱB?~el'gIm_,J Fa;u1zCքxlZ-H%oxvL&z$_FXFLc$d`Z T#XLSI_r|1KƉ,HL.P4^ ɫ$~~|6x\{&lU'ſ2k J}7awWR:Y,5@Zr4:q~ ( g^tIxtYN7>ӉޗPnYjFxE6~YgaqmXHnuAY_x {T.OThUI0J~+%@  QP2T6lr/|e8BM_@xZ|es/>HnSfbCdNM0[=Q,J>ЯO6< ?f|{)nTbe)*/"u3瀬llؘTEU6wmeBҝT;Z Wu{Udrh O؂ @PMB Ao -nƓ:5˥'JsMxYNqˬ>һ|aU\bOS~9kijjV=uQ$8OY0Ȋ.AEXp&J])x#gX5[W3U1I YB2I8B(ٞnULX)::]U\zq:RK t뚑\JWxC]pidi|Yr MzNLr؍2=l2^Lx]1bZ^T޵tTy{#* ʹY'Xb.-=k-|6b܍rK(I`&(p{ئ[QdOֶ.V\2ChM:# J!O#h%rYڎ]KKJtv]X׷ha%Y+Goe'݋^z}sbpR?ry߻|DtSMO j\»/"!;_ "`2+u0/)]O~MQf+Bv^ބ9d+ʻX0kl qSk'& EK }&fvMX'ju^9m6 o b}h :fd٘/=]1{M2)KOAa֑n#$á~b68+fg7vb܆|=e*/?yQuHr3`aآH>c x(bi0bc҄Ξ( !W6&>C$Y3p?K -\f!HQ^Q3`q`l C6 ykuv$}A^f"Ad!vP"F-%/JOQej#sJ-wBgV% $U_ubC1kHvKw;ު]}`ӱM1bj(0su-kTze]mvsft^no ('O(W;uw EVK m/3EyQ֮'6.dRd< 2S]S_A>&'ւQSXWX\F89/CYY⽖/TU*1n8>4MĞ0]K|]%Z%z?-8X|%-@Ee҆Kd ]=2,W8T=RO ksXܬ)X#3Hm@QO{| GnH.µ!{d`I{׋cGw6B8ٔ|BHҖ5fVƫWZ2zV YvnidH?bkp'/CQi4:u >,/j(4U~FCU/ ͹ 6,] 5~1Ĵ'jy\ɰ[A&+-3慮WC6XGΔll}DXU9BwF& “N6e[ÛV iMXQK]q[┈1*uBL+}LelP #٦LMMW" V q%ERjmD7V_*H3srei3 gmm%wAOVsH@G\{1?!mQ;4*P\3ȱJa:U-7T~/O[2-Y.]z:ۥ]sT/`y>̣_ C\LfG\ JT[#XXXSHg_x{`{>|fmDnzeeQӤstj8K49yrj$7 ]1md4%4@o 613d²gkD Q?2VB=ZhzabK_Bu7+c{]z|"j59FB/rO1Y&«j]eqr%fz4PO!#V>`{9sˉF /naߵA|I,Wݎ_o0Y2B^}׷6B}\)ʘGGv@fӳνh)3m[j"w'_) (u9܎RxFFH)4(O{a(in\}qY΀^=H8=sUkc+N2a-ibJ0p^(,Wf߶a$FZ!2FV죥U=m>oh zAizYYI*TP2ZLψ&7t *Zu=)b?Nf?B #T8CO21v걘m>m;glꀅ3Obv2#.4{!mv#%[aW4\ϳ_ ħm5N'1mSOznPTk,s7IsgYʏǟm8=gp<篘B„մ)PҌ0&ڦ[',ς}2 q:i/ Ys˨ EM~\0K"-)yE2`f_Ȱ8[&3 vYAz0!D ̻%Z9PGxX.4UԞ + =+ILJbvE;byul|ع~E|.VX3O8*kuJqy`C׶gJױDO\*L7pJH&:[٢!D ?ݫ!q5gyOOT}\;x9v]yܷۗ/QpuKdw{tex`p]vd~m6:cS}3A9=,l 1c hY֪" y Q"\U#<"vYQΎxo9(I/p@3*Cr0ۉZd;W+Zk_MPxM,R`oNxx }:C{Te.zYb&2y3cxdRq@3 +Sl+tm{Wк9WY{h+ɑ䵎D0035ƝȨ %5G_rO+ `Ҩ 1A9Ϝt-s.c ZR%q=Yζ[a) Hd+ 6[EYƼ^l= |u,Rm~̬RȚz?߱[֑~0]xFCve 5/?a_BOڽ*޿4ˮqDL5# )xr\q9߿ZM%{`aP}g@v3)k}ZSY"`+ .RX~eTV\pRm6-ȅ)|QI+elq!tYH#3U}{10۲܋x]`#|X&AD_Z [e^SJTbtrxsP ]06s[*cH0{.ٳmb :|+2^3t^/@? \-!]F߄HŴdT{?1f[)_CHR]M}8* vc03LPt H` ? 1;JA ߥ;hA]x٭W?(=ٖ ر}cu"As&;\Z}R"S0w1˞1ANDgE&.hD)m<<<,j7,;I meo:\àA.Y'MO|KUPMM/u`Ҭ0!Hty >6|(Z CJqJV55oMzhy .*kނZi#U&CtzԆ%dgHSH:dܚX2P֬| itZ,)=`ZBje^Jli#:*1z.iBgpƕݿQ& sI<; 2pKG>18 NZw-C_$ mdN~)8r-uf2[Y#!)Ňei^ xEG Kx4@E e|1Zn~լ-R>X9qgX>6\a S!(nqf0.`Q^S}8*H^[^$KYxp eˀqӘ 3KS(x>7v?i+SW_(64"blnq61jiRL|%3©gx h˪t߀~"sCø}X#o5a`v8QvXݲ'E< F@f,e wE,%g]:]G;m@dNvVϦ'_Ő h=V'Jyۿ+Qd%{aM NQ A+#C'7?ǵ ،KZEe;꼻 ؅ƻ;)kPV>[vY((nő;3zb5\9IsXʘ^PQ: vR7#L Ā]?N6G۞鲝SppQ'tuqڦ69BYI9>XKSvɅF4}ʬX\|M|iֹ=Tr0PHª n};C \1p∂b}.R^Zp@kM \,RMF#78B@TlOY0 ^I*%8=oǬ 7!&ޞF XJ` wSMA\6(G\Y O:¹WBf8>U5VwfֶCN'gp oEbm o&_TS hiԗaߵ 3γ-}ӕCo''YEF'3Dta\yZd5h0SvlO^ow"( jfy~~_|CO@>#SsXkX3/ ٩|)bgiRgSLSRu71Va,CZh ^@ 7 B4#^Ci7]>J Y嶼5[y)L&WzmBٵ>Y-y[a({>pwwk2;bJO(rO[]xTȡ #]<]x S7!Πž~eXk=haz<_J1bvmny6ٱ,_-K"-| Kqjb-So|ͥGFÒ)2I䬍/aq3Q0mJd.t?nRU[ ŚvSX9bSeGƘ0ӿc0LYi H Z$g}/lA}7B%¤Xut0K92VС@| 10[a.Bo[|pV*ٲYL`%E S= }B.I-G4c}t!{)2h!b뒘ȳIc!^ l6DPĖcfbn:ݖb뻐?Y iNavh4?*,5/ {Aow꜑Jɛ J_f3=@Q5Rtw /N #( l*az4ƽD gpI'ސ9R:xQ (akϏET?CX~PUfZBNdHp!Rusĩ,GH; :_7X_C `zk1 + ηwxCiGa,#ԐBC=˨ MX̩6K>;/y=ZTP',H\ןcDaư%ɒ*Jådum/t/q:[ JU˃?j]HڻEywBbwIr3H]M@DNp~JDGLd{RLu.acUs#jg* C|7=bKs^E&J6, 倽`ZMrNU=H$f{|TIӻ>'ǻ$L ۾-̗q ]h0NBwY[ ^:5M+V*ºje̫)0@'(-|*04nlz4_F%d.Γj rĒkq:އPtnTzًe`;B;.4F:]bt=VCi9$uW;fYJ4c%Uoj᭬nCahT&/D̅`\vՆQ@d/R҃ܛ}B>9D,;K79?<)SLkJ֟eP#-+d˶8>وgee7h뛁;Bp v|矩K-pWШ85P.O 'Y< 9LXYス$P޺non71;1OP1vx]r-\jwE%|{붢sr<RmM⑝X1;~[郒 s0Ȁc<L o] LKܚ{ƻӃJE߅6h2t:#\m$8&L@-#s #x lz&TޣO"xh~_0+>w MV*b獲cQ#ҀLyqn,P0v'p um2_,]j&9&pJFfAS"*T?ƽD=pDz4^0^I3@L?@x֣ZuuL-M7}ZA q>ikBAt(i=ʥ|1[ E6郾3:aC9At6)҃ޡ} XB=))b݂@v9&n>=9d0( >A=({KqcM +bRr "^uա z+-cE{! PեHp('ynjp֗=qEHn1,cYn cw0S1'$\p3c('|[T;o\",oYiL^ ,:x1`hHBm+M5:)X͌QQv&cbND~"Ljs+ꍀ6®Cg&7=8pmBG~:˚fٳ-LF~Y뻯)F*Хa$Sz sم·??7FѸ4 N4Ãsr ⁗4['dh0ӫٹ•jj|hFlΙj!lj{Q|NKm0F8ڎMD= ( ^(QPkgOIbq3c%R-auv֙WM=S! "N8[~AT觋B[My/\@2Ov*s$i%l\,q,9Rt/IjotlyҠ,)r(IQpn.ZeBUa r[(&dAn.F۲`b_إ9|Bw_CDݠO7BT,;4q٩p3U=JH:ՅY`˺).A| ;Gc+·?X/sz 鵞9l|}RﬤN-=N2&tSyD#xN48$.l(KHiZ\W3]mVɀ ,Na9Q!0i8,Z4p|#˱?D1u'y>=#L.F6(C(Ć%?Sbń+C.ű4=:,t4.2|"O=VϣR1nJG,6M0M 0 2o@ h<mX5f+mnLsBIdQ@!J$_BC9<EΥNxwwUc/\K;߇]Q^}f,XQmMߠIyg5(@& 63s-s?>. UfH_ߗL"(}R1^~'ZzmJ"5Z;qn:a6*%p)_kj2i#}RB0@y|Vjݬ˽!d(E>daύl `]Yti}="q3t| ^ $ "Z詥VWW XrPr`zjoU՘ZS2M;g,l h:o9M0M S $EdrXe@1E4թxtdLk.UY`SS? nȶ|qz"B$"ST\ w~>LDr]2סOZ2oo'&u2,w@Y>a1A:=>ބ&Մv6/_&h/J˔ CK0GQ 1@wUo?%`$ :-n]2f]*׋Lb3#yQl$CKG}(se/M` a; #񟎯R(eӂc:h#9Bߍ<(tJ`HӾӍ橸a. `(ts2"KiS3DxLAwC%kax3/$S> ﮦK\}Epo-vCꅇi M%b"k? Td_ꩻ)D27~9ɩ)e ^(Z$Z iM(+mo]&/YʢoMR.\^̇etFgKAh5y6|:Ğ뙬5XwA>$BN8kc*)_Q{mNDȳGb7dAs UR➎zDpfMZ ~A+c'Kg?iIH<)s3%2MS Pȼa[ԏIƐ8hLL#pȔ.:5S8Y],yM? R ~%n Ė2.n Wyk, QZ/1ȣ"`Xe Ip/ox.`'+~K?IHaCa&n \iߤV/lK$9_y 6L9>@*\[y |g$򬋛i/ D yQ-:sM?ۏaPmB;LW] ^ew8#ZSP`KStHTLʲ2J@9VXuZ̸Ṁ*NnA4isդꡨ8"݉^ #'l$X%+Jon,|y,u#PUh 0vmeݏ+X0h]dN@#SGC-0}AĞOPBj:K,4Voq>âw+7%yyNZv s<w#o쾾Iăhb֊=+g`-cvyi@ؽ(a sNnXo>ԓF*g81kVT g >+1~yCvXAg+rN\5?}rƷ*DxDJnGD"O*W%T"CT\=N1ZX?R)ke4AW;nX,UY`zg |OARy2=#ږF?_2AA/$:3M`ܗu4E=kY߀^Wא#}mkn0fuiw/0POb+ 8/%кr|1@^+_wDj4ƷN;OnC#\1Svsx:C~c+u9J(yDKtXL ˣ?bH7 )$C@9qr!B Մَ?5~r?y^{B'Gr*ȕfw8MI`W)cQWO)F!PF1^ؽu2+I<{/%osmVZ`x%Bt&-j5Jiȗ@6St@ @9 kIp BQ.*Lht${ʷҾH$)L$YlF-X~ݞt?u^EMpiM`\N$ϑ" <7\U3n#j&HiEPA p{neGMwM;)H1TM?T߄H]ZOЅl|a9,A3]fMz_/Ǭb´S8l;,Yu,UTpd֟7S.,ĊURE4Y$hEfG\5.d` ;fOL__b=3.E:3y)f Uyjh ΧMt~% Pb?iOP{־޵i։)jd)f 3M@SΥ qۙL"6 Y1+H '>a9c. "ݿbVV#2swA$4'R&g>qL`/rP* T3P.uT45q2:2xDdٯ A1 xc z֥žCRVuV&h;ugЏ1 U֡{^#!<; sY%CUf"7TBT!9ҬV*abP&0Y F\.(lT"SjOu_Sݳ{c\ N, ^gV" Dk2FpwG4!th9fjz0ΦKO<015ZQ4^FyQWrocQH%꾡dep$83z!U J GEE͏kI "vNh6)>cڼkg;ت豵xm6^Z77]HޥA4.06mSjѰ=6ܗ2dqܬޯ)i&g;QECX^T<r0fD{Y]?DUT 0 Mޤil׻E?Ҡ(>Vj]yTk2H akmAGQn\>pf+SZc[z'"Dq?s\ıW;?\34q.xu9m) }Lé+;CLJŠFҝȞ dEJ_Yyi~4l #Ըi82'YsbU&F HǏyxϹg)碸-8Yr{c9Ǻ>IxwE]37Rͬ5ؓy Vzj>P?aŰpcX?S^MsƼ+n-ײ0 qo$WL}f:@ߖ:1z 2PMZ &k2U&h`XͤUs:Gn߂ªrէMW`gqIE|x 0nB< ."+$qm5:!>'.bbI|fߒArwjR, ST@Q`^6,0[)nMj9h@Ӓ>{Fh`Jf3L>PTJػL1ÏIo_:,Զ% Tw lx.!x53fCj$P) [Ev̸ @ؿ} %g@MBrF1)/tgTkUQ(Ӣ21'0}Hb %jƇȠӫWGgUrqExa1v|* \w{aDX3ѕmEb2F')-TnKdG/x;NjIFM@f&0~ciDZB9iD#7՛1c$[,֝(E{b4lUfNUԲ`i9_6#C Z%s2JIBDMgS*L3ZSNkov9T7ǽ|klKڽ<[DV!Z"h`[25: {bFݢ9|";j1v4UUB{նmT?]u;Ln͚O(]lS=(>oZvRdOxZOJ~H~͍zAW=yK5|s,ƹ4fudPĔ-uzR;_,FС(/TlYl#+ݭ"0ns9>†cNXI ټ˻ e*l=_9@h.Կn^^@ڈWP2HDwy,ɂ8G/| w|EIS-I++M+'bMR˘b˛D9+9}Xr=8E6xm !_BN,<J<Õ$H`3: DIKM W(],D"\cR(p3-Ug궾h;q#'jpc^W1{c]m89։I&'AeDPS ]-\ADJh $֙32PbxbTvI6rѣQ-i7pFp.M{/#ƯǟAS+Ň0XSsW#HJ1[~>]rs3³5x5^K0As]=) LW2CwJ,`GMwZ%=s98D*pRGXYZZuDݣ{; R(X0:͗7 ه&=rGlkэ+Q1/hDW .HyuBJlp웽1~zI2 מ5Pzf J e՛.EHƯؕ3`g3i7˖5 |i> lP6kh$*mF k6 Pms]m7uLH;h.s_PElfU%nX.ܽ -{{w%HVnZtjio-,{t%Z[oOŞ_̳|$ei8=yQH!̦sxp>eeIMʙUgkWFVY ΃f! iaZ5x(<])GKkKe-ДYN2sQm[ Q.%]R 4?(wYb gX:Z: *X+d.RNmjhTPEasw8Oٻ@ !(&JQK$:cA8{X>G't:< CAo/0ա!f @AFk) գT$^z6S4굁/ѬqjZH X9 Q@q\r27]uZC#˼y0҄GY69wI@+r,ԅ1l WǓ*uqԙ{&RrDN2<E|2]G9ϧ Ҝ|xOb]6a\La&Fv?"ܪ& L^J F'| S`>k )GWwZ IQF5J8{GfkˠI0dHY{ 㭣jʚvޣӘg8 ڷ4y2m WtKɰ< ^?՘gAZ_${S 8l6.S`pؠSWr>{hf71 S1-|taa`WҒsr9{3vۧy@3$S*1Ku@Cên!c2ɒco\r@1lg>BBꑄ|/CJ JAkct$PwG,P6˧ J}IX9(C֦HA# %E,[SGi8A2gTJ"OXTiU Dá47:)@*d1F.oN{7`+dk:2w [Ch*`^}eڢJ")o2rO|uUu$0m**rF*eS ~*#wrTV>D_..bo^0Vy篌1z!>YiH% RcASdGfF' §nAcb3Cx( } +VV#}\⭠įNYP|R5uUZ|(4aEg)OTKioƦ/*%+qWylE)YALPrQ^8ӂRrh}HAۂB8YDzC)̉4S%QPLwzej ! 5BZeAvK(O`Ya3wJGJŞ1rI״{?NM̩J삜y:y"MFM${j0; 6~K=-arm+jBoBׅhqr HbBScfqg=-IL>1QRZk;Mi`J > 9AD%w>jx-cIv/O*8tqς|su=>jWtF|Lx9= 4R0%BjEUxh}ʼ[_/`kaM2tkq^9s2L-KG`l2bj*0zʙ1MC$݆Ro\  #@+^#جj/uyK@[E?Onk~xJ8a ~*w'ze᱁=?Qj1:M{@t~&gD)Ŀh~m~#tHy<7a;Q*bm Bp)NzZ{.;$# X|0j4=C\!T#s1LcK%"B틴v4LQ+ؕ9@\6:mN\?TBRpd|g,@TEwq&UEw+]vB(4DmD\ DoIN|Lu,eyrqʔԔ.$Ur@Ibh;VgK5"l AH1 w< +KrSk`ӥ^+Cr!zsNqƖRd_&cfq@sU6& j.}I-sb# TJUXqsg~Z6oEOm¼4՜+XuD?(`̴Dfo}p ym;R@#_yYiv3+*6SˡڲNmkriM\%^ɽ##T ,QbrD@̥6vh#zp-DiFH^Zggj k`tĕ-%}Ë:gsђ/;toyB^7P G;*>o60QHg#9Br!+laC'IF#rׁ*8_`G&:0&9&x^ H.n^&$Buqu{qnkL-p~UV쀘#oluGR](Hj`*bpsJUHRzv~ F򸵚t:d40Rk,g Gnï_[tYy:KaУ%)Hߩ[~#)N$sQwjB3~iwAw,=b+&D{$r ι:TF,0B'$1]3V5)r*>Ns#$ts=~)O ,^>/ [ 7[DA[9쿯/ `5Gpɀ=)v)0c46 #I6=hnSW}`}Ѯ5ÄYrxY0xp|39~_qoyzduUV n;g i!^󭛜;r jvǠX`.`t)gV8ft6by_G!zyi,T-U}B@&\jsHx=FPWEPm оE%b QW{>=RenZQW'=TsdKumU~n5,۱e+H47aӟT#V *xXo!'£#9\nf2K͉qQEH%0QקlJFsUƨ"02vP)?ʓ $VJ7Zw8RY"h$f(Zo{pGN7[Bz< c1Ӥ|2O_z({dp 򂔗 <,猭pП_J`Z Dݾ)D-e^Ud+uOCǤKo^D!uID*u`QJU|+G Dz,"Jٞ7I?EsBTX\-2O*)eHRHɮv#9c`4|ZĽzԦO Ig^ h&p+KКMk A*gZszey+whzD (7XsxaSgo)ه݇C~|&r!<\-Q\h9)ADz ^SҴ07evxJiSTHXr",|mԡCZLW I BNyx18ԗ>vP%W+w5JWRl]gc?N]Gгޤ~Dž$ϱLW "Nm+L'ⓥx^=डbM|B"qGK苅h>cK-N¸ocr,hr$U`{CB 55JWD<^ɢybӜzv],4[䥺a!=`/W ίaz7ئP#?Ov7!Ёb/e9|꫌!j+#9=N#ԝ9R}3TBYyI\H.˦6 ?v" (SqYb&j" 8wnaȖ1xU5:_C.J_F13q7-`1dc䂀`Ҙ{3,zA(( =s*W. W9ugs%$y-+[́}-Gѧ}i?ۂTy"uJDƮKyQI7k}FHX w@0tOɦA6SO~9شȭ t eV9l9{p󆒹"bz, ԇ2#A!* ®L[:0N)0V@[S@M:& 7CcPL?/Y [3$C< .﷫ bl/%XmL+1]6<b;dDVU*ǹ&Iݸ)$--^f a?I,^Õ{s=f BH/nlj{izw*xTs L&K-h诊'ReSA[&79 %-Yf >Hx`N-l[=Tm͸;;I]~r#4B N~xw=;2TtQT!xWu-GϭpxH> 8~ NG!)gDznյ[{Ԑ2R.)F7sI.rM;/mmɺ>DuܻۚvݚF]?"IH̕i3V:t~ ?n͖2&f:Z"_۹8 lP\\y`ɓ 6/ SbMк[n@L΁6)1m.) Re13yzPݒ qwƲgQ8_9Yl{$n>kg~&zhCQA%IB#cJeǹ!%~C1%E3al3 Bm TMp@$:w\tQ Ħa^ih] tsz65s+:͋;<Yeށ/m_YiLzq㦴xdz50YٻKIM+暣"x r)jy${Yy.@j໺k}DUכxy ^0np T,dڍB0s\`q¹u%YdB`Yˑ1u}Iw9ԐڄH,bIgk0.t&^R?KFqڳx6 a%sVnAL[FLOaH MqJiHh[e |#YugJ@t/ڼ }аehM t~05#!7qPQfh"Lދ96 GHrȭɧ<Β>5Zx.Y|,cu%"HIŮnW #_p$i؅p=YNlsZzgoZi%{)ɖb4f/LGr/~&~I+jYKj|y$y/Xt%vyM?T04/B]uV&mYꬸ2VCR6Wp#IKk b~'C [/w8x4qF<1%&FfVuۖAђdM/u(\jAz9!Kx>c% ss!I7odQE $җvRS-ڣ~GPyΥ駬&>>Bo |93UU7J5;tޢ^Q){_ؓKbTkDF?%ӼD-٭e!=R>Bׁ-֗kJ`* V>PtM+b rd/9SgAOJ50o/[D7}N&+uX&U C>;q'! j3>-{ZW2ZSMLyњ> u\,A`W~M+V9 s"d^0ܞ3Rti'Xa 0 \7=;y۟aT)[I t1@')҈Jm~卽vvu4 eyi.ru  /zGh9@-36:mh8Ͼg 49L+ uE5$EߖkoVZ :%("cy2LK[+N<wrY%sF}s.k?S:ُ,ECsLTl{\ܵR5?Qxwf$B)1^h2tӟV(sê3"DǝbQ$=n} bR7L2R⦠G]l͞UU&a.Ǵ1 9WHG6X!&NSPKI{6jQ4=Y&L:,˲Aj֋z5@c>nT@' #CWBv`]R__ Rtu y{Txٰ}Q'ON\:W*Yb㥫[KKsy ?걫 ]3=bC\Mο\Qqqa貱c?|ݯ9g7('=Dشg{3 n^ό [y'f+_H>)nrߙ,z}3BCJd*1PI{M7ҁʁ?O:V iX3F_eWETdxGZf`0W1wZ{!F|#qGÓڒϟ]F׏{k x"8?mH kiZH WTΑiuD+~DGb'IjN!/NEi%N5wՏWZA;3\J`#I!j$"}iP8)FQ'A&m@l\ջpF,|Wrd<ϘQݱ1-, *gFxTY/ZD ڮ9Cgzza&Ef]\Gwa~/}w;mP0\GuǮscYDM6:.ӽq1 cf)\E{Iq>y_/΁wnKŨw.g`VOp: -5Դ5<;FGD#ˎ(oC/$dJ@Q} 4z䨻[c2@O#7-ߌղU\5ױ)En.Izז kngT)ӥwo%t9@P8ܽU8rpOQܭ;qQzPtbFP+"Ec^^ue'=~q:ށqE3F7PtJ5schqNjFQ٩@le8֐| Ԙ_>E%;s7[$0>ylICҳ[n|3l2yv礛6JQ"i vpE9i%D , tPܽ&'H䣍]oBJ/3Qz%)Sm-50yeT2Q' Lu2$;[6 궢}n'ʏHu>bqk#c5/f(k{ xn,UA|Ѻam|Q)Qce.Wiu%xZ*1ޭ|oN-a7";3=y&Ylt$XJ]9{PG[.6#vxZGHڨ&Cc:F>1ʺj!\" D^_MZdU9raE&hE.>t⏙`RDMjgj ;mtyUIbo3d҉ԘX-~P I"ȳxḍ zM-ϗk~)EK1#gFe 7cfff9##ް;CUsY,Y./FMuQVɨ7v[rďb/.pwIlߓxnv_[h.@ȷbhjƾ-k\Ge|kU6z{_Ddd{em!H\YvhiiiٙVMp_jSJUml&zkͿ7wߎàvO@e!oȿNWj@4ѧw[UKp KG7Cݷ<=7ژ4+1ؽ #Ap+&:<ݡL|t.:Mg7ŮFgs'׺l~8țEO _x-bAIC kǘt0 60Ha}Դgvvm2a\-  # v6֢3Nls $ 6!~ E9 jrਨ sǰT+ 9'饼OϻЊ!^mG5M {{n)X+ZKAuNQ"@Y^49+ 'N~] hh{r|=\ c6y^ؼ~eI:O,UqC+\>18{it4v2Qzĥi0.tyv){̵ z[L'a_n բ΁/J\eEm54D¨ KkhqÏlF3.GM唔]>h4/BMq=Pn Dcxԑ"RQV|UI'?kwhsh*X@[";v8 MS fFo{e ^A/EMfg~ 4*8Y傛y dޫ)7J%Mʱ7:Y$/zٵ;IôWZQg}FtNˡH0bnFԀOweKR4; rm O\ ؑO2բV> s^<@S8(VЛ5(epҽ%jf#S|M I!dEZ'crծw>/Hqq'.x֎:5ln Dc6JpbқdVyLqHd8Ss.0 4yߓYD_'HU6]KĚۛ&h8% n+^L009kiq"sQk"Dks'q3\/*q_eYiT)K4EOC=[6F1<ȹ RG1jpө9v5!Xe:vfO1]gHNHƮ`q*8BHd]]Ōq!#m)j7%?ĔH{3!`$hAiFd+"T]UgLUT5/2;}EBy*h:# gkl!nnEoӧ01=)lUw␼SkEMQNY?y)ЊK*ˊϱ I_1HDېbʧ*Ԣ77 O)XN4h%vhU QJ*Xp'/XALcM|Dyc(P=w$Ao%A,ϻ*+vDE4`{x8yC\omB&M:慼/jԿ#%%^Kj]ͳlDJB'Y<(o 2~=1;J%:Kk&,U8HN\M(nqJAp~?MD{C@"K 2ݼg☉|E8 cŹ )a&E@["yh[~Em:Sy}ՇR싟cvie`kԥ;ndW12F;Pԏ#I-:ЎmWe*^Vh31B9@[sI PA8D0얓$ra!._G8?#Zݰc=ɞAC0b IE"w tH˥ $w[PaOf#Bg^)H7-mމ0SZL1x+MCn}\4u 鵬QBEl-^I굦rT +R: ѷڜ8)h}OѫR\1K(6 e_53B QSnFh!|裳ˉ a٦\hb#kmXUJ[L4^"Tϊ?pNn:Ղ&aRp+Nuxw+qA[Ho](e-l& p SPb *E{Q@lΣhe3&3(/6:fOMű%´k"cOre=\brN}мY`J{+ߙZ)MFfؕ2A+U@G1RvHV=.߿&N[p7EWGaLBtyxڵTU[!?a͒S,H">o"/D筦lN )SaY`t9=.YY6^]!]WֱhP$1]*>ȚaJNS5@/oh<^]SY`19K"x>,S.GzwgxD4uɢВߜAI$kpLQq$vt*ȭٌP=wqf\h)ZjTKЖ0ꒌqG. -l?u 5Xկ_B;Tw`Nިb&]ăSUM5ucYBM% AS oԈY =^ X WN_[ŰRk\ '1G d'O"Ǎg?ƁV?CVYL5UŮc1+& k@^! Ә*HSpeA:¬ɾtIh,_{ '$r*sy9O+RFIˆ@2Lsx>@g+ٷ| ~s}EIש`\BnY[K6OC]P rw?d \M*e+pX*hrzŽ@YNq$<.bHHО\@NKHм |::x[Ojt'#JG-](ڍ2.MnUlޖ@yrmu_.b$ǪKԓ_Yq[x }XSq0ᵶၜ y -ܭKf.?ܤhL$_ys.(;c۷,HDˡvwus*Xk6:(RI^mk2s|b5>jB֍nŘ VkƆ!A:""D= -Sޥ0;. @IA2* ]ZSof.3. y8|P$2{ojFSeo;QY ء}%gwBQa/ogz-nEAA z9lKm,$K*p j=}B,L6dD\,g&/{%v8|62[YIK9git&%ħ+NY]T,25P#-[Ɣy).(HxM|BZ &RSC!G )j#^^;lfB (|Vt8o`MHGw(cIq#X|:Gb~L6a$uVNzMSp6~'I MRpXo1n^D& >s,ZCDtn+ 0IK; #Q=afmb9)m")At*T?N;Þo0q4?LÒEfAr_E553˧̳v%C=Ҭ1Q0oUwU-pMzKۃZ@6$B"TY * r@jkȃ)kVA/~Fy2:'kT&JC\iǥNF0Sh$M$6,(zeH=)3ns -s:q6ZܥW5չCwoWYM)-gH*lڶngvYwzfy]+Ӕ͋0Vr0X0=)5R.7VJ&khI.a(XwgJR+决^a"7e7GQ  dUW2_ ''x@fbLEzc#$kRZ& vҕ]K#?_y7Ԇ Rjxe%:~88(; &҃vdF3-0j+@D}:;(NKJF3P8`Y-^ Yg5 XxߖLg7Q"*LtI]{W6]Rbk6HnK7}tf]Fn:=M7b{Mjĕ'W4D4Uq9‚<+ACS\ÂfVFmT:_q%9+z BbE#X>n{R:JTub[t=|A"Wcl"pӒmZm͊&G&PalT mh R #v[REpNN;0|MD4D0mvГ-gv0ip=C[m`hd u)}&?0(+OƓ8l(~J!NF1Z W;}UVr7G1Q=bޘ5YjQ& 9 8v2DpR4 8]|&h1([*[_7~ Ű=bx5id\,_\ZNJ"!C|jiLҦZͦ +XT8%~5t/NQSL^7M*>@ZrMin;Z$Nj6@oX}~Gή ՞%pP]m|e+/!4Ϲ&zèݎBc6j{&[Cf;~C}C,/9H jHW$Sݚؕ yT yCblL- Xy(aw?hH?#SY4Jۡg t\*?j:%)mb%YrR-3(~Fz'&@+k"ZxnHoִ^3 I'kۤ3-kx]QWIKTƌ Zf iƊid,jJ[v*p뢪XL?2o"WtmpуW4YXB"A]>KRdMKfUAt/MZ=Aq !lwG (j<( .QRʘ}`?-%qR޹:zȉBUV_Sa7ᧆ{w}kA/|p#T0k/0JCcLW[M]Kؙ\|z&Z~9>MNpf; x˝y:Hsh-x3ѺhH~hqV$-D-,,pBj`gnR{wve_F+qylY/G>ŐN *]_=6~ hN_u{%6 *.Hzw]EϭE 'Ċud9'R/A[iza|XQr>ǧ =-hzBn^zRG:khJ ch]mAm:&f~F_9Pk*#2IٮTDY2H=?\5w\ЧTȩbϙ{BHL|9i#,k{4S/tE +-a?zUj)\ƂUw?cQhk-[1Ȗ!V>fلG׭+),V4ߜy{d̆Ql+9C`yѤ9 4&k*"*@@S őc,"{Q,M4J5`,[$*|"J9s>cJCˬCpPX7%vu.sqDvx\_:Ab=5H+j]^m6}\20V 0X5|r>S5 &,PuYm{$PJѣ%,Ѡ{CQlFOIyo{zϡ]t)R@7FՒ[X4qyu%?2|_mw;'QfbЅͨ K=cWR*!0=I ӂ3(LZ^h0#D4#&yeY?EqNt{3FņzHmE]ՠP"(#%847:J4=3o7:22BVmZ#֞ר ZKC+22)XnmY^?)0j(ш /LQ=+pyM/ZO[|jk7L~vܷ<{ 1lELyxʠQ6T}Vb={aKn% dn yLiB@&}H8^)ё";UO@=Nې6zB*JNѻ\B4gL#֟ FwwW1Sb(SX>W1CT 3YNJRZ( k3(VD#yRY~Jv~yHu4`m+L:ezpRm}QUq_z%T\]K`V6~2% FTnͣ&1Βٷ5llyxb*mδ>)u>y6)YP`$ғ\MboU8 ?1nո~QR\H+NdDqMloڭ:YNlR$%J1$uk }zNk ˰I GZe-RQ[U\1,t8̑D)YO:e[&M`ӓ&o$8pulR ̈Rz5f #J.t${d;%аڡU ЮZ-cvDcx<!,[yGrQQe<)'?͒h17WTf)Ge vwbeXoʷ 3&5@;I n~-6GS?#HA\!:1QVXIMdu' 9Zѵ@G}iE/h` rSd ._»^LZ"p'h{Vc1/ NXVZPY#/dß0|3"{5X߬΢O g/<cR Mi뫲070q|)/@s1rET#)ӱC-v\!/#`'ǎWJ3bsF6lb[7 @ɓ㧚 (?nЂX$ݔZ*09 ;zIb#/k۬nY3@J29kyafA7(6' tN}3.p^0 3 mkr.@D ӣ^שHҊ^o{MAOq}%|U Eoث5 x_}\N]ndFȐ1[ N"ޮ)>r@+Fd}4,7 &B&Nf W]W uŕ:&HB S6&D c|~[ЃWJߗbh$*ij;H {y-3Ht~=[5*MzeKV$eJ^Y_Ε|#dO36ڢUqÏ定XAy'cr]bC{$O_kbX%MAHHCFX[z.D{3Aeb7bȫײ"o]Cq 1Wi¯~|!!sr25 .;F5nE z0m8_oϰk%GLϨ@r[fbvaڍ/سÇ(z}%q͛:TdP !PGɛtt,EHD _Y!mGRDXӞJז?Jz:55Fc t$L?)~Ԕ5eltH VjM|lX3zu'gc #xdyà{&HvYxdi= 5pXzbv]5ºAtE~&y3wbNzP gM'"rJ|;9Wf?״;X"ɝC78e-0TH7ꤙm,JHq+i6΂mӣu.[ :p&634u Z[O~˪u 7nȿ21AN`hh㽑|h?f@E=P!(!Co*;mkUɟU>I4n_`{m?l` _ki;dDE 9j Ms'?nhGBx4!Sl ۱rW>^DP$vǐ?%X~$E{هʙJfEMGe׾:2/e!b9Û 9nf4bRx{J˜"΁.οc'qs~E._|Ug'2QNV  ?]"@HMuDKqk$θzK+t2}ԧc=\~<|D#<[>y]:D3;r'I3{%vt<>h$w&U#^g7_YzRG?J.Գ߂ds|ŏ4Oh"/Uf9U! ņu nP|Fڠ,!c^z=:4E%!zGc*^U!:S%X)eAv6 r^.%iZ2e#MAkhiå3@ q86yE  עNcYk]]..`Z/Zr,_]hKw^ NC2Ў3 xe+;iؔû̜DvD}|Z K7NN.3:m f@~=q32{p;> 4; a'$kv@RTҘU5_z.NveKut$bԑ^xegIuV[Cf 5/L ,cmh_Sb9>oRdWG[t@y\# Wݷ|ɄwԌEnMB40ݍP%֫rs# T\-ȼtRcn&JmѠ@A}XhYb6\Tuu3ptx#ЦF1)=]4_KֹdӎM$G@> "rZmfeʁu.G}] ϜwE&ƔrOigϨsM sAȺ]?.zk_t֞"*"qǑ?gZԞ>Ȃ{ch4iaK_rЃE c4w/d6^b(22B$†P40XPR‘ 5̧.|rT,)k{*u<ⱄp?aqoIif +lstpCJQN/S VU#E?C.R,!َU] 8R5 WR7\PwCYE2IC} zszeEeɍ ӏAͩQ@ȊG (u_ TJ)y1a}C ukkN*c0֊V$h 2>儕]<?+xQ!:1ŀFsfղ3bi+cPɲma4g_qڲ[B++}}.Vaֲ~ iHKG h7&M.Y=0 h%n%X`EׂT|Uh5u3@MǛX@ uqK]69(Ԫ t)G59adŏ*3!\!by2"/GI&:P6\d3JIlz,&t>ZuGg>F|GRU%;J洽5`D%"Z rS:$L;FqXOh0SY +QrU1OVHC)|\ml| ׶A!Uuo.(v2G4~y-O{(Uq~ шq~iRfi0h/ܡxx>%`4|0GvYX(vt11l$$s\+_I::wf(8?U#"PWv"7Ri%1 +~ԶAa"[ҩe7/o"=P01:n `\)8\uT bx2ZĊ/ŀWx GR)-Z23$K꽈[E J) TQ/}y#jEF֋b E β? C="\plo0*a̍d1if+)vW/㝝td{'ᄍfLF5# x~@Hvy&~W'l뮽Q$Kƭ:&/W.$^ݑ8,nO.#Z;tRy^.j :W{7X9BK6ߧ_ĚS6k iL;!O6[Щ2[F49_(:I`F-[UG,C+[80h˳v@)z.ĒJ{VnCψ')U[a\k6[0K2隉 Zd]WW 7]Kz3#, f`/tE>W/+I {&qVMaaћM9/azc;e hVWTK 'nA&m6 2.mh֎wrdAv  ]妐13ARjndR}L= @O+QRJVIX- &$L&B >.gK<ت 9 P2SL-U,uml4#1Lh"3?NSB'A[AyNFK&)K%G|}/2p#>X,ut1V|=:{$XԀdtF%tSU|8;%V|@MZ "ͩlb]U FΣvxxU?D6,@)aW;K> h Bx nwH5+oX+r6N C} B$!L-N/ܿ=0e&!|L#l'%Ea-Kk/` ΢uoP6TfR,Nȑg${_!Ä%MS\<$mۉUhUQ6NUp3p(b|r~DU6'V490`4LP4,< k3FX"EUy*۟cH>?42rIA:)B>ZUO9`|uE䚱>>@cęgybŽ}*kzhm3(0:ԣ4*qw#7xTgoCg]z~xXTNs0 *8,2{+BE#?~8mpfj9S)П7TmO œh>%f1Fu?^> 4fP\ߕ.æ&~k΄dīXn\pk!&mMՄGDcj_\A ړ)hqy*hx@f|w?n)V},6j75w +^@<ƭ'i5s4Hl4T2jLJU"bfFuGBj{mݸpC{@^IuAą?\yMz$E n^SǹXרQaR|Iˠ ;KNh`= ơdT9l%Euk"z@AL[3jȋ3oY`jY~?,yQ|*qhGpxg !&zяp$0pHFv+pS,V@2M/%m%!Dͩ*&,(ISzg52J|h-xseC7`Do^Ubū)AZyFg=c?2[X!%(([t&ZN!DL[BWM+|Ct7Z$AD(YW-tUWԞCJ=k-VVFa7ϿULe^MQ{Z!'py:4kZjӒRV7Fi+O#[$?5HFCtW3ڔ$bĮ48ٝqD x4OlZ#0~/wdMw̿6͆A L'Vi%B'$qc%0~!Z)f v;TS2c]ZSD3.pP(W0J|gIMg"䲃'du𣫔AFE+*gzT֛odr\hB!vlbXlMىn?5n`գUN.O6c< (m;*aVP(#Ql,uc'Dݮ Hpk-8O{t2h^R!\zoY>-!Tkfd#ܵU=ߞщw-Xa7P,3ϺȝI+i9(Țʡ {󯯌"z x}Ȕ8;J(C ~ Ke B"bAPޕb.}F*#+t;of3a,*Y$mȢooKP~Hz l1?0UO>8qYE'+S?Paaz H JmO( ç4OoT}Q"` ~f*`ʒbNao39IgDIͤ]~Q>,{8R 0a[N|8cqaigAI/G/;PT[f;C8[^!z;Eԟ>zbO@1UV;{Kf gV ;)u|d9!t?UЩYHm:LᇻseDt.bl ]\ߩ@ Yw=M\|y->bzn9@ :&톭|&v}4F=XHE85I͸NхP'?\ݒKjjݲL%ajmkCpĈ Nxa@PC a;% ->5Q G ]HA_LsҪ$?Q@`Knbn a`)óRbD✽Y m5ފ U" \=n&C#PX }O˘a[$,K- $'ϪCHd)X,PzxH)h >?$W7 vO%LX[XjxS^rݻ#* ׍0x 9p] !ɤ5x鐚qs@h,sXV5h*g%3Eᰐ2vE*߱y=I"Ǵ[!DDF -f  UYC&/WU0," t\xߨ+ȂCuK(4^UŸF55Eff1tCݕK҄:0I}%3t:6|//G K tUJC>.oV5\/P14.1&Lpj.s:fu+s޳G@r%"Bm=#+9Z/bqYΡyOf͙h ᨩtb ̀~Ξ=V3T$6r2L;6WuNdчFΣ{5Er1L #; }^x.`;m0S5o%h^DCV`y1wL`|ǪWfۀr58&i$ن0*(+$}l$"Ik#:uaULWV A3ke`浪_g% <}ߢ)5(0:Eik-LT *l5 z̨.u!sm<< sפ/a+aΞ_&V֝*N6Dg:8 <(l[ ᝪ_#O&On,-+G;:6EMC݊GpK+HR3m4*- ohAX~?p!m MϨ?'jӡD { \ (6~,Z7!ڶt*zo =̀ ig)_щ`|X>Ƿ(hnRCds.D82ܢ+%㫜vEc? ZPC/w}͐d(=|UpKyp(P$ WЪ~n[@4޹(N P o̮_i%*'0FqGAZ̊E=_\ '9NkQ9A‰ghkNLmE [ m-`W㿰~&݋3L Qt>Mhiz:MvvIӘuޤۂII,Y2r?=D189xTRu$=i\yr C;V!w |!wLR/\zی)2>@Bkj#> &`Jt4->\*ZTu>Hw$F[ϼA܈F&A李V%kް[󘩌-E9!2Qg΃Ctm:3}I9+I=E3?\m*K . ԅzPpkCVT b+Z-'OM b?"{}d" |aV-%[gI-Ap`I, wY1Bܼ{˗,.)rZ {jgl0=ypZ/ݜt-W16NW\mD%V1L1 >*4boU7nLXXN5v9}Dz1r=h:wz\b5H.F+9Mudaz@gPקR/صh~[Vq5[q+gsr‚hcr#KՊ=ڱݲ1lISKtVVQ%^Kx={o8e@I2@+\.Rqc.o$טހ"[5eQG\ׄ P  ]7d8{#6e7վNƣ$ OѬ. !<$v;͆zU4 cbf$؂jCƑm;³f~"\)1H?s#J6%#([bg9vZظLt=Ia~ %#|L[%`BWW捝x|)"֯! S.{JLA GPnx|T@R'^G/ e(,<7=V|]}BM [Mі?|}Z;>ɜ͍3LMZ58,0P-yr4s+z: 7R5tl_!7`QEP9 .϶SDo;m`.-_(.!*fu#P(n=T/ˢY9!u" μSi l< &c81ޏ]wDzޕǀ//*:εkdutzBx;)e-<6Y{j2ZjXNhЎ\[m#w1@~Ed.]]C^f!Hӈ%IXcH£G$泡f0Za)qUW;綎+vVdT]*0+ۤ^4[@(/e,Euiq{'!,Gv_|j:^)C5! 5F@B-o?֕NcS:P"<-}i2ȦՔ3̦yŷLs6?Ṉ&˛ 4CYAh>({N Dw^PUp*7Shr\\l ʱ^UT&H̓nӡ.ņ+m8>scYPVژ+C.q t5\Jɓ9~;iw/T{R'YY_Q&~o_6 ֽ#Z?F*sp: 5w57Bv7Q4`PSze *2v/ I2iE-8z{gWsdoql]ER\\ц>DuDI ͫ\~2&4KɊN :Vf_+{d5dF+nwVi深n6 8+bxUcjG`7jFM֤ c%j{?Vc^('22r=H|Cl(f=Ԑv}]|ĶK+<0"@Nx P$|rrH{%-D֠/ A ?L Nۈ,{*5]\,R{_1DJ#Rv2gZ!Bpx*E٣4Qَ$z/^QU@HE(,WS^qgΥ9cVILgF7))eЉyI,Ei4jy:ݎYo]-%˩$,Ye(s%]/H'{r`g*#^Vj5!@)bYĐ>TY=vN̾UX* 8$ (}z2Xv2 ut.Isr4~IJƺ}NW!n[ϤRE'|~T_E!nGaӎ]0^R⠭2:T^+K8nТzɽS & w_}Ы\)3qqVFBljEv~a(,YqNUV-3!cbskޗtڪvH\S\y7ûr QP{ݰYaV6dԃlȱBpRFZT1~)HF?1Q„IVSV0BAGޛwM JO`Os5 e X) iyk$Jm+cECnlr&<6, Epm!;GnV?]]޳´¥S43zL43[q4Ud@aXE}99Nu+o[N]M68'~Cn؊~@Wy%U?\ţճ*s'54U{W 27Z_I+ҹ3FeDe@ٴe*wwҽ$*Vd+x,>K Л mqY՝(LS|l{Htg(&%96P'~jK"D g,^HV( 9VCNס8gsbPV+vx6I]_|B_ Mz[N[Z^ B-%Q G.%zag7y,q ;jo} I~TNY6lnY6jӗ4#8_F)T{3]^=(h%#f4⟩ m]gJ3܎ޓx :3J( 3o Q:*6>R+\ZfqPf3,<9lD/ͅ0ܠ$%գO 8J'̴ W 9L-A43>b-!pR3$ fGGGm96dh*Rȏ5"ELMa:Kdx&(2~ LskexɃE3z汊-қ"̥@eIpI6]Bـ6!fP Z>UZW-?$Ve.][w4 ]O4m /Z:8lǎ k]3ڞ orThʿJ cιFuUݾ9d 'T0TdD?50j< 0ecUrLptW0)#̅ј xț߸zF/>TdL߅Δ`$JX e$ [~My{lGg§b{:B?Ux@ \ l؟HTQ6Q8m.,k[ n9:* ~R[1Qf3))T~ܘlV%Yr-kߪ78mLͣWؿ/ M6d12.¯ἕ }$?q5{jeci7^+ND-0Ĺ% c踖, 26XFS8)\ Q\/]Ia)UpKϯ_ƀJd 5|Ub^"k01!ݗiԸ9T".o{3 cM!{G-m$H nz;0 5Ktv;]/XsRI&F|\XWt,V1};t]xdTpvpL Kf8v~eۃձ@ޘ M()#JN:({~$YXeHtix2 ('"w_" G lS5,F0rD&y_ELʴߺpJ|pط"eB~g/lH(N19g%GqZl#j>%#ryn9$ѷkߐ;Ǹ[vs8~}c{kcB lw^jd7ϳUZH/6Q[Je`a8x3OEfC^h~|Hf 2L0#1f]g-bٟw%`7|0ӌ!6V]던hteNkP>܁~,@?3A#Q Jj"IFA*wM^p! TφcԯH:cF(8ZPXC'T7"bFƟIc5xevntsk2E[cI;"lwфא)&{:y: 0;ye ̷m՝wj$YNqA{ZG%" sUC+. =E6Gs h@_A >N HOJJY,s /G[us(<*2z9!$UwsWY/F8*UguZAՖk rY _hLw`wa=Yբ<\QLOp?Z9tf x!2+l^,7_S*+;Q-3[-fq+`˺iz>G0د=?o%0LD|9D<%_n]'Osd\Sa%=BqINZG1 a(uxtFwЈ'Lx]25{\lKU tQS T$D J֙ `yq'ۜn~ 8EՙR EQ\#Cur|8a-e-+s^ke~v{DbXR^ (u5gfbݱ4n$ºA?jt_dTn^ML@=Mnx٨?m$J""طh1R䪘OWgFƉEE~YG ;Il ئ8H{qб/MbOfWƼ<]v)^P?1\HXJ{3(*{ -&V?5Ej x ~\OW&);3?hPyá`!zҘc*=˕9pm&|U!]Aa b'ϥק!f+zgj(p|~U1}>7z G P.`PSyuqK"єDD RI&?U`W|hBE˾V! 2f"lpXOC&D-~$l4o?9z&oMb9z=nr.SNQs? >TLjJn*)*.Iqm,!/]R*b%l/׷? vFvhXM!:N&ۂ'(:%ULU:'X>%iᷴ2M`o3)*Ftɜ=]"tO$zr3F>U1@( f6P~-V \B{>Ynl>dU0͛0 _--Hn?bW%Ey=aE0̒ز&mgX"snK.sq؂|6:@6`C:g4`e##9,]˲ց/V.d{I5mt?@*foD|B$2<ś!rv#DV%r2x_nnJɴ!ZSre෭Y>nQd8a)G%^o5En֊PҤ^ IjW(l$-}Fҿ^Mmlˇ)cH>L[,M։S\VgR5.g84*B1 N)ޞd]YPWKeBf4IXb2T|VFqjj7(9-="Kqe݂pH<牁?78$SACKMh}SU"/KV=h(O.e [g7GeyM\.y.b)Jxzc3" to*~װAߟM/3s^|0+>n>]P:awQ[7o9^eYד ܋rdd3T8Tq;{uU /'nf`i_ajC %hM$W8 Ea;&U+ 򑖞4 zXY񩽘*Rn)nkNH uy{]YYŶUD0} ߦ8.8XbZB/Y"6QH)+w'#fi&I*ˢ@þTLr9m\u >v̟R_UaMP9@ 0FV>{san)V´g#/0$@Pwe±@"Ls;quhX.*^0 o[XE,".ݗQ 8zU|X%~kfAjrr*uَ)yU[Ȍ,q93)tΟ_:*˸j[nݔcVi{Tq3."uam U_hZJK\)hS"f̿{ba(rsQIċrrF&,r,aHtP5Ɉ[̚C;j2У:ڮU!ri,{' 11/u|.dq NIwQGCΪ|Hg k<0ƗPkZ&5F$8m&v%BK2b ހ18c*'9'$|}p C9LON1v/2gXԸu=2ӘQ#AzvکzU=!%ARjLtiY|/0t<{G9sR3$}4,cu󖀈Z.umFWfkޚK6~ p2  Ӕ+}_c* GĐ|v̸_I@Kw\lQO#@0 g /Z KQ>7v xL]Oy^34gThD^@_7ڕ-uy|UŮIUbxlM>q>ek;u^*lN6{&l;/:ܲ(tq?9~ZWZɼƆ6/M15FW .V K-Y(V甕vBwJh7ǽmW´xo2Ī]szCvJ_p*gR~␵aHrH<CP4Q${m}tzCGE4-o7i2,TCJ!iWԋhƉ \f 9[x?5G -m! CCՍ=cdA_*W_2C)ZB&n^簯MV|lΐ%00=̎ $]^l0W"Xv,YgȑXm5_.?ԩA|צz{PFUwtG2Wбށ_c1|@p>aQ iB]v}5ݠ P _3ÀE,8 v$/a"j$ 2O7ոk,ƿOKn3LrܾT5,W)RoD: 1;̍/3ՌF *464oo]k|ڭOi%2`F9E4'G |a_3'ȝ- Pzx]5D5GnG>sF"ރn91 Bh$z=khoT˝d(YHfJb8}m!|*]$Oxb'm!TRߏl\ch>2k]&DȻ2 lbC]Eg",Ն`%F̬hZ"-76T7*jXZx `b3 3n6d qD[X}g4')%WF&g’knztV H,4v׭}u|ӱ f8cA*t{2Mә9"'?N%X!u|ۜ[/Z?NCzԟijDr,Ho0 ג&_\NwFv8=Ae/PiG :(^qyŤ9.ULd<2Drd i\}b'P*ד/PG`ԡ"ZǾSͥ<H]>72/Ao7'*Re,m3M&mi[&I1iAM@Wֹ MON}V.)|HCWuU-ko+7^u,/smJxLip/ k|;ͭB*ٵe|@ija\7XB&9*2*j~;ߊe+kkRl!ԁw|TEzgɐ#AxM?8:H Fb8.dSFԻO4?dPyq*aб f]$,gJ@̴+-ք 'a{d`H@'ր;8bu@Z 9SU3W֌ٌ lm$STh!9&k1=5pފABdDDN 7+`R~~M1/ "^DFx4u^_L(2"@JM#ι ώxN;ٸ~P*>Gn{:QpBk lKj4Mk8 T'@~y9R©Č:1,_{2w='];p$EY 5s@h F҉,خHzz!K薯V_2(U CZߢIdcXbEH7D[?/" r4YS[6}ݞW=\v|6L :ś "G> +EZ[ G:MD"%Dw= (b7]%BE洘?-ga| `le|H^?(]9ІvE!*f:eRqn'"?q?rq#{Nw,90(ȥL:,muԍYQ8S|oD^lhàD笵9œ:2iz19FX*Oj q71Prԁxd;t)J>Io [hO Aݛ1B~4<1GKMYPbɗc+ f|x_<1@N%(T7T!X{e5@d='OOU-ِ-q]3+u"+C&Y0{['Hwk2 OI %S+9<8q@"0@% oRB햎Δ )8YQbW^Ty9oi6]ѯPg6ɝRid톈Ŭ$9/ pf̬h/i!,hPXҺmJ"JY`') 4!m<R^6TF"|v/tڒeSvu? !X`8(guc߾QС7 H+\:BWtbl;jѣk"6g hO!#-6 *FQz9s߶2v&F"Ȁӫa*”sj 0+vcuuqL%^RU{*Қj0'w2&zKHQGkt}yfSF+"$\M(RX̕פ<)?Po;屹vhq[Xp'4yNI@9@)o#չlPuiK0> ϭɷ5:~_=_s#}vdzM9AcrqBixV]bwn6:-Fj٬$t(1Z;IG{,Q(gMnk Qo̝DXQqi_SSإpW]i ?w*\ -~%wl .Rݾ.!7lfx'rty7&y"V, `*Y"!CɹJބ]aGq5+qꡂhlUm&?-y"_i1{0"ZL䯒ʻ0I.Iv"2<Kw'[VK;u"qܵ3(n O3[' H w/yaa>s*zR@+zaR$7&=g64z xnG>>ш0->;K} T ɫO82 w_{#ĘJ.位5Uf)nF~YQ}4BIFqWdFcgVn5nʌE"&D ཀྵ_zu 7u(JiJ!\za0~xi5f{fam)RFs 0P^ZAgӽ(+V"JؙrԪ.AҖGzZG!f(xT|#i J#0yG?S9XB*o[nv1(tP@ :":ޅ[1Xc-<DE#^Iɷ|xd,1=}o#W;\v(1w8[joyzv4`2 vL<xʸc@uqMqm@wF[%eTMLAuXnM[^fhPD?сE>qPȥPt~بQR; -Z[2njbUˈ\DGa3yKOd^W7 vvxu9?%wجS`[A3 5eΣH;s'O_jloCաT{X]wZ|s3:WiEv7Tnxz'C?V?C[H96"5-QFYvK^*6{XU/P6q ҈cz[ըxJ1o5o@2vJ@nt^Xgk+V*,`=O}&J@w,`6 ht̯|w֛HaGD}s9xN-KuKKn/[l&N^t`\Q?F5Znϗo$-SEd D)$a\gY6(2r)܅%֔ {UǡT $x!PXU93ќ13da^t]< yWDyyGK= i.ht&$_Mz1ï( ^O&6,!)i@?}*Xb;UH7xyO\45z#ccyrӥZs#K$tT\)10s*mZK#bԩ)@,jl@h[z8G n9|%G$YWWK} 7pmKO Hйxs2=L 85W"5z:gnK>.C;`[L3 +k2x8Ϳ3ĥnܫ\rȊG_֢I@?o]QUGv{xb>%~3ͭvʒYۨD:R–o(iT9ӁHpe1SXmgAOE@D?GZ#&/ȻԶopN+tצxOXMq6'HTrJ~ `V4'S-ǝK!/`B܎d&tA"^_\>3q ֥vu)Pۯ;4fGݴ~Cbb%0of˖ES8cZH}@]&]55 %b6 }3NFw/v,8ߞ~ Sš/{#!;_ "G(F8<81G2 NyvJ| pi0n ]` c\\pWM-e䜣|Zx2hOf=Tڛ҇To-fL׃B!Ƽ9:f%TdXB;!ԡgLRIAT^sN\pO^(&6қ@sز7iƚߒBPŚG#6Yπ*hSbj?Y~(1թiq1ś&ÊcH༉X{6wxQ=M ݟwnխՒi5Ӿܙ6ܸq~&*K<[: l#642#77)`?,ZJNk@#eiQ}G}3Њ߄ +PFxoT}bWrZ*f-`a0B}B@^AK{U2*AJȌۖa=痖jEzYyYNL2V-a}c`bAiM<&-Mbj)7+HaI (HQIF6A:UOGiKZ@bIQ& "7z `Q,M+BG 3ԎUG귣2_Xd@M 2 "OfBF?ͳ6sу^mc#?ӑ+z'ba蕈`4TOb@ʩO-r8g9w m 4Uu aFe;8>&A.x.ղGUWGHN-^O!sR`'f:,?p k3fUS$:#qbđ?0^#6Xvvv/n<GNv@Ŝ,h͒yGvh H⌬\˥6&i1ƝbeMoJh\8-+`E }ET[e7C Z'ytK!Ê2V~:!Na l~q.dAu@ ,7jܨt白B6S.ΖkjKq ;*v&{ߤC`p6R;^~Kٗ!JZ6Cgξ 2/rk]yElF^vqW*6qJEC&)xɶ֥A.T '[ɑ +K[-RxXp ih^kA&o?`,GµV]=Ta(zC8^HՆ)HcSC_bel,X-s<#I"] خp@H^ n}z=bڗxO}.+ cZI2ms" OVJm:vSAf9j&a&ġB2jf5]bǟԓRnEhi3 NW'#N*} ULlW 4|+w]>5oJ'2oE8D1yl׶7Dw `,_8>UG]#~ O}g\o,OTwWn |Y(~qcN%v+)t {Ql$Bp&zL ɭܱͰ_c"Zȇ( 2ѝ2, $mcR}(7sc4DW /eԲɔC@노jEx^)nL ũ͘fTv/vPdmpdb#WdYF{ s%(b|9BkFȳ΋OT*jɢrdʖZ(y hH۾ . HÛaRPA?\ʳ'LCa&!uOj?tϒLra ܼaUW1 c1{Tr3p  I1̤yځ> Q/tG>@@9tIB#Pƕ@+.1,'Fwik*ԚTbIzKݵ@c0Z~^F^@l^,d] u8Uˆt]=k]kVlWdٹMN8AFP,O^YxCMbEo$ͫ{J@r, 5g2JW?dQZAËW_x`XTrO=Hlh=ce~#X9YBH㨈}{oVIc/5_@Ѐk|" ^>617mݬpa9l-o'w*5NG~_ t ᦡ`p̥AR=8YfGSb>/m kZwj\'Jd 2&}7(o1nIꞕM5je3x{!]D cp*i+.M7AOB$m1)r \ 2*51mLq  yFǽNf&ٍ%`F8z gܦ,~b4%B#cJ˗QT+kmbPN t5µ={D.6e\ !lأ6^2pjowϠ(0.F5U0X{'B˞~dy-y6rCM[IWCTS4xDJ\;&_d%;TӟPHbSҜڍ#= ENa\KAN ]uJ6&#:>W̬T@.twe?b޸lOt_Mˤh Z\ZStg-2sfTrHK`osD߲>bH#xczCm1T lӭz# d9B׼`L9}1XoX-] 7R0[AvpCB55pEmvFm µu0E~-4Ҡ;;Wb.~*m-aY4Z]Q`|CLP9y>pʂlLC*|Z쎈g> /KAEV*[Ŧΰ40bnNxKUl)C +7j*|Eܿd_\GR&:;;ull2{͒9L+$a ĦKRkTB68:pT[ ½y/]| ȰDK?U"ZBh=٦Xiv+7Es6e{qe&[qq´C yQVe@k/ xr/?=z+; -y26;:1޶$z[ޯ6ٖr87/:'Jĥ7lx2,0ZHfK~V/ih8isXԛP%59e^_]^=dЪ΁C~>a>@d/ޑOa4'yo22?`W|(jE"XFGۦ!Vod;~)Z2jQAw.">xT\+rgz{?EvݾuO|My<60f\4 ^:k%cv-`}*>de@ZO)鳁qy5g%&uή#p)Pϟ=\JW$ΪJQ;[o>AT6rC.tDvRisKg=j5&q߹j3Mݧ,s~Hh#gLjmG㫷 ȻI31/ ~h9‰rSA)zlLiAcC{Bv 6ôFE$5fХs **>¯C=l2~V# gT,o5-M̪]si9 QBz")* m~ !P ZNF0Zрvw% >O*yC]Aygi审187>y&s Uk!7[;}Zq&}:gq;]O]m0j>fN? =Az0ZfND;mim[wrIƃPm|ǥQ3lEtД]4O?.ʭe Fm[uē\llAξ `aÄ-QԊo /@#sx'\ޏ(8F)p&CRdɟ"Y@OU:wH WNC#+DLgwE_϶x׋6l`w0<2 w^Hjab I`uNr"Uh&*Uj2̽vqɼp$[~] (6N>pxۚAؔGO( 6d¿ (e&(&] #-'BW-IɦN;%jH 9ꛇ4FTB#C =" {/g:Z&Fk`ciLd+|OfXe;Ktqu<9,SLİ.Ji=){ `Y@FL-;Kgm|GXvn<= ¡Hˤ}&ʩʞ 0@E>^eMaY^`!S'QO&=o1 m I +o74@ژi<}khBUqT`?)"Nk8.҂Cc?5,_z >냞6562YhtEM ת.e0Rl(3ߟ72K&IpiF>sZ.<5pNNK2bLj/$EjбQg 2}Σ<ݤr0L8)T}eVq :B4K#Sdj}? >栔:ʛU#ǹ7lW4x bD\^ bC<ìq.r'K8NpK0,^Ix'V&?_8'撰Fn8>( 71NON%)]jf<4X dE}{Yk_~qSB *p*v^k0%?!v'c8ޠ`"ܐE'f7U@pVusٹTs1Ձ=s/?+b<щwֵ`9r`ZQ=j' f^_%\P}C :ъYu1sMr4@FTTlziq 6ӷ`cYU{7z(Sm|+oT\$zGY:Yihٓ6.>7D"eqqBd 'G|x [2cKYoB~ Az/*ë`+ϠfJYVtT+:[Lſo#% ĊgQwr{{}g7P½?[6[|:UM{ yK 3oɳ4QOkX_#Eu+gבerq<1~xږ&hYI`f-T2)i_P@ބzVlĢrfM$>>y~]oqIarApv`me3ʘY[#ĩLЕ{M.N$ /\k`>#33׫DEugkfsF2+ KjK+ϑS7:E#*K%qt%&~E}8G3Au*oF(Lͬ[وB^Bg[.)$a0kZ+J&^k +xOO HS(l{4|\b~5McaCR@7Ёu/&(DŽN?\>`z=ѢMG'A{e@+)h,߈ʨXـ @Xzق(-}ԉF;b(\֖,zV|MJuTn:ޕYfϪu=;BAlqe< K UFQ\+60乩]+"v.mu0Fj! \AVFSO4ĩ9*0BV8ʾ#n 5Zp1b[/IE=?бi#~1B$͘vR/!GS \eLaXpì&F)8 ݜɊ5^y =хɁлȏB+U[ь\ `&T9yGvGs!T^ &u)r 蚓]Hݾx0\Щ0 33-8Id’LTO uRf8?H.V PMy D7| .xg.W57]i^ :o` &ljӇ?,t|l`Q>*En "kds.R2GQ骭:5fE࠵G6(kcK*ZIS3A7:‘}, uh K/~*x`tRtkl4`Bc5c?;ME*@J?%rܥ8*6GFDr z_,C6O8tyaV)+5F,ʙ9N(\Xg VI¹]>v}țDϫaelﱄ (=c6sMiؒ bSwVANA@,J &*8 ֻ.²ц64æPE#x QjbUZ N"[~3ZMyB4 _ۊ/>?? p7 Jּ d8X^e>_PF-m!xѧw|+$6Y ʇS7,t1y̘<g>f]WYCc; nKA=ǞT@o*E!w;1*;I Ue?O=1ƃ 03FD:[Ҙҵv+oɤ'e*1-cb3ampoӈ,.}N .ԷDxIlLf)K1X0i>'i=Gaq]'voC|{)6m,%6`Ӈ V,Bz6 mx0n6ߖ[PW&Ō;.uNژ&@(lrt^6ݨGRPz$XQt qD}Ē@gIiY][" R`_ bB,vI= h4K(86Xwd֙ޮ;zf݉hOމOܙ3㠳gu8TkCF(8UwS>2FE;>6ԶbNڸX2H:j ߙ#H:TSeVwIx`x5KD1]n/Udl qmzr_[`XL% ܲhCBJpo8 QOhYڒz,<͵̸ս/OOKexGM| $Ӭʵ' \i wOWI7[d90ƏP1 ~R&$17 gAkikkGι'P ǪH:QV #y6|.bw,=X`ԋd;epsvP(S I]qټ;W߫rh ?=A[<ñ5m7d Luc@Xގj,],]u̴bB(&۳Kcvʀxh_^G,Bb,jeJ/.;d1Vo3iL@)"У>aN:Q\Znv8V*U+x70zМcKRQw.(V`hX9u]{FnǏ}(9he޳ qg &hMl ?cA[:Gr{5#ښ8ֲ$9dƴGfC-NgW{ZI5prKJAa0|6!ʌүAqa"B+0ZUd;`f]LAv8-3 MDB[*0l$ &@o4ߵߧ9.dpw!7e*6,kL i4^AkE4!.ք}8#MXQ̂0+P`AGԱ &[!ʂ<>ipڻ<U0ih|oS]~,]P\Hi*$N(Z>TR[PNm4vmVUuuTE#uM{(tL+77{]h "FD5n;rٽ cu m2zIrd㿦uqʮ/U2U+ ghH٭'ϲ% Grvٙpcm'{ͰM&hxjNw\]F+ojG;*wAqx#Fߜo=M1òn|C{G)*IOu I5!C큍kav+x])šT$`Mp3Xv1vR`IstfU/Hynfs:^y^ΏbhT8( UfyQ)Qʈ3@HP9 2no-F" [\t̽Ֆ76d&HT0T0y6P3jf_p'''Kɔr s宬FۉhШKcEVcݟi;8#o`w܌i rC)W6,zVETC͚7NN֌LEqMXۄ o NDɩ#JuX<ƸtYiע/w̄w[N]q,;)N)Z{*D|6QO/cM%^`_%2zy4xOr#+AW=) XčHOB9Q6fi+z?F@ϬߠЅ\FOuX̿?(β[|Ǘ?ŢڴF֊K.~Ioci-(pX1>6LtS;X12%!mP-pFwC66Wgъu/n/+;5.eŒatwl~*9/ #C*q}{56#B2jV>)ZgH5<4B f/ k8QCotDʴ$lO#u}C7_yX!ޱcWSFߌP)ң&4a\>s.f/s]+sd~!Dnz&!Ѳb'%=P"noUEI"> Z3 >$,n%=Іك7}s0a]92:Rx+xQ3js،@"օM$:78:3Hb-8!//CV]NTj/Uc+*>/HwtՕY!w twR9I(f}Ȧ.ii:M7'C=n[},ҿu,\ u]9KqOɜYA;t)ĺ鈕Ns/τzfa)IYN"jtU%L|6-kۆ CU4m~> 5M=7J]{>s,5^Q[ ='bdFsRLe`nLYx@lԼpAnu쯄1e ~fܞjެu~H:quߏc)&z^7Mz/܃ɕ.{0 >&3xgP0e(jLm'j.B?53Dmv({m5՗=7S˛0ˠк;{Ko> bŲ#]GѠlbiH{1+SוʡeÂf8̏8m/5VųqpVDى&"QF[Pw{:TJqm煽ި$ݝo`4?1(+:VKA̠7~7y>n_c dlLٕ1,bZvV=*|?NjӢ%sqĠWEFSUJ5;DّGڊ)q󨫣tr"=8T?cmEV$k\Rj zaw.$i:OZ5pC %R'81]%2&%OfIjYvЊ<h:> ?c\EsV Fy2ja!('(ӓ]SqawY`I,ɗ;嬮ހ'cFV hhCim~B7"[L ̱M٫WC chR e9x[J(G=6 iF$p HY6';-#י "PKƼO46EYx ^xqbEy[/HjCO^E"3xWE7Z`#9j`.)&f% V\O=])CvyM$&4~P3E2$翈jzDtz%eeT@"}4Iـa=FxN%XdNv)5|RZ\xEI(퀐 uZٚ׬3 xա@w<ˀ7{?Yk%pPZysJayjq[hJE0mk7~XQtҟ| 9PؓZ y,j rFS jӚ@&L L;np2ʩDoUXbBW>Ó7RCc~!LQ l>~Ћ3t'`Fe:|~.OW$M!%PkpE P!K%KF8ŕpe{/DNC&lzazv@4)=bgb>#L471zoӿsq1Ҝa P"{_/t._Ӷ4(45;!}ت{~&u{8s.ۘvh _Eqީi Q^͋D ppV񗉒=Jm },6tIAh:Z0(e G*Ź$?sR[PiIi#trjn ~h=y"ZD <*<K,OVܚu8Oo~k1InaQS d=`d,ۗOc#,F΍$[Jg[cP/w2J$ \隤P B1HT(ꍙXOB E堖/ $-GJ }k3͙wbQsYļ's`?@01%+oMc3Pv0UcʿZJB(6*2T40]?珩Q\^Ceo4 ۋp#ܮHp82x!):hx?~[|㼢_@bt{^{6mecW5~ EeӪØc ٜpzǟϤWܒrE+qCk)6v6Bfzzj%FOh&Ұ?/qCc롗0?%=fյ;ZKp}\(Q<^bV< wq  U̢~}sٞ㎅WkRbxfFGND(5E_eaoJι1On ryl2#HxrD4(Ĩg1e P "7cw S'N,c_u 5H ,.ImI;*]}A5QKh~oĽϒ̕ag%8˗l]N*TB\= IYEHhKָpR;w);oOezCӤ=(Jc:akR'S;< r^uH8W`3e傘^(BQ^6CڛۇHqS+!d?%3D:Tji)ʌ #FoS1y׿/Po+W:Ҽju~jw7 q:4ʓ/ *NvMj6੘Vrb".AT+ЋUx j tN S`ӱh)@-%QjF:K vF"57=;|lMǬBUYwe;+/nqc4:|PEAꨓ )^ 7rf*/cS"@-A~;fOh /6!IN 'EOD⚲+ hN?Eoi>*v-ʞ&'Ç`sYTVkҪ &shJ8:Ef{q`E]x3i)m UV{N-Sب!lDR/ct_n><4D0 a‹4:4|`B:FǞVd o1emLԴO-me70~ O"?gtFWfK62ohX+pYJPa1vIGwYCGhgC."A4#)bb'&S8 p8PK5l؟vH,5y hS&a}L)a8s PĭνO9Dv"w( vl9ƚu͙F>K1\w~0"j{4b$v^A gwSѥr8lރqS8y}k޵KMDpїLn6x 5k4Ok[~nzmZwB?-)zTU%fp_J,&E[F~ws~ 8M#UG~տWyV?)%7 m%:nLYXPR!㽜u2`lL`kTuh- (ƁPh4$G~# yR xC1n=*d,`ƪG:cA$nVW|j3_mZ)XN#41 ;l]8uAYpoYUp+C̴l|y4cʖv5tf8{r)_xBu+ U =*]V%) 3a*9in1V'ƺjļ$O`?{A;B_a^cO$Oz&t߳ %ʜe^=sk3ipjr߽独fčGiِ0#U\/\s"D! >ջ+S$=fe;g XZΨ\t}n~pxf?h7юjz­ç јEH Bn ~AC c&n $#*(矺-rt(w 6ġ[1)L+NfVč=yP8>) ;ұgбw*OYRI f7Wh{9QCZ4Gj}V13:9'5lG4fᡲQXF/#*Q(R`K1HoRO[Mi7\~XJ a. hAuQP:8oRނ-񉞻I-?rNf^ !˱V8F!š0h!,VwЄ4mS; kk,Eo#TtSEL,:f.W⁻*GD5_ΖPX>P2(;Z۵QBȝne٪H՜ p/ɖ vj Wp:7}zM7PšFjJCR|fɹ y{, тlXZzQ s4N i\//tB rL4ٕ3?̑7Lt㠫un/B7NzV5hggo_oY*n^R:!s09U D`QtGz Aר-$$b_ 7&kWg\dZn 4{?vVKhYDYQjn'>ۢ\v=ϒ+ _srAgi8;ԃ؎uKՐu0h#"|(yIlBWUh*C-|2HRW%1c@CęW}fo;N:8/HF($Zi(6*A٢  σseVָ˺ Q$luĪoL,inO4CJic! :mo"ȍn4m0]~?qb#$z)X#bޙxm|(zvoθ) 7gTj )$;Zج=L9mD.O* $7y@d!S ~P|%u_q alAu7Ljerm J#38jczM GP(&Nx$2R0>:CbڅI]OTzՕ!x[z ڡ&FtA8U尙 2z& cj4+ۥM@}Gar@ ]%Dd9l|"W~_7+pJAeE Eví 61HvyaY]Ҫ}\eA o ˊ^F QwnMlI ɟj#LF2kƢC7={\s ~'*$I{D A!nWr' 4 a\|gtH :zhRgQJ XJ=xHc駺̞\pI(M}uCX4Qg;鳫0;#GwJR/35y9`aIc0%m}R5x~B:=9Lx#KvY̬zg Z!:]VegnVQ 5^;\Q{IjI0k~sWis G9SL~E6*UYM椯D/ =LlN=YpU%, zNa;$eLao#&\Wb F'TXo>'mk?iԷ!dpWr:2Y0ZhY29K`Uy\p[Bz s8A6xwtֽ̔>'4@wSYHJ7)`^Ǯ͊1d5 H%ϞG .+ II.IN94Qn=*.<&rl;,Lwo>ݳ F, n5Q` ?p6v9?vޓ-*&~-* T&m +_j7`Zؒ™^+l{fJjz౞csp R˧< HF,~>Թ o!*a{`7stXpCL2uظ'&-:,@}Q~vX!漝rB)v74#o.:D{7 O*cε8F]A|s(}s6SIó)h^:f'39! qKKɉieOb|]~7֏ʹ65յ3qΓȦ-%9NW$ܺϛ:TwdF@"gOO䑇H, !(}BEIN?k:Y6 iX\x,'ǘY RY7L{0H4|=3e/nǓ3EDKE?eXJ@(9eA]TvQ 5c3Չ0] <n'=%Y ukx斯iM򩰏gQ/8 S &^k(8ݟ§Y %hg/'bPz^ȳ:-,w@%,bP",,LkuS{v6@kfg4o ^[x ]yoݸ^ϕ \r>VO(6~t6ED#y UǾSfuO/P퉔kcč\髸!Hps9?z"A81muZD}Nu)\:'k2Al htr0#}|FF⛺IQ^ӶiL0X)2F-6)B20)ѮZz6 bk"'/.W}%l-"3ӡɄPUqhG7нۍ=-wvr_{pum2qHhmؽ0+e}?u]~3^Ae c0Ip~oL9K۷*DgBf cK%E"ТAfT/ŗ NGK`'r)it#)s7^d  )3u3Y{>sVU;(z%(:DYzc!ģ9:C=Z"+mCOڦ6W%F`1rq%_\O,CaPH L; +y7#պ})u >e ?x7'>KՁg~Up'T>D!!I\mЉn{>S'ma_A4ֆ9`Pl֏o`םS +1u҃g%ix% ʥ1o܆2vor0}ULU%!1,"$wx 0IU/ PQKyv=j^A$Ӭ^ļM Tr2 7Q[lr]X'|+T* [9EEZJarL҆FdYgl~RȝEEDe;"Kn)Su>i5% hF~P\K`}YrL UB2~^<&^g,IYqzhѥ.r0c@NGY v #g;=~r`3DG1D+4}}驎AX6 Ɔ1[cO&ժpn1]3;4yv:XNE3ҥ֍rU&i4 8vQDc6{ZӮc؟›`89•觎GLUQ[8防ߌ h;ح:U%+K(f+'rXWF`G C^lU/M1oؾ"-qC'K%SZ4lj[ĕ,.m" aX)2d(z dz)O{Eڦ6%W`iKzZ|?7#[Ղ+h4hf"H$jhԔu Y@Jˬoms.;"k^ [N/6 ρV'@]' (#˿(8/S ÐekJ%(P;aLJn+c?xK [P'`(JH~DCF݆YF ja2FTn,hQ0K<`A,@8[dϦ>bxma'~'% ,c }R`t8s'*CwMWGPY4&ƈ;u.kV|^aDDw}56^a4@gL ǵ6(ommS= $KCa9b\K"RE.wrcP6m83r"eEa2/CWSh_&x*Rќꄿ-Lρcכ4H|T\m;fG)}WUO}"Sس]ZTi'U7a2 7ګW3jI <^9rq ?t+1yYݒuٛA|ViZ7w8%5[3p`{I(9j{,1NCZ_/z7'A$s)'72N0R1VvU.<t+D,XWˊ^w*BJ"#p#)oOϣƍ -CM|.sL@K_{.EzcOXMba-E2Tz.A3Vmz$YU͈RߺkV:O1|VxuKD'bq1곮i+ 6T6v&A s­ AN-kGDl!Q6>A\>gY4 dϺc|d^\o8`~З7Xvb# C|ϴ˸s#JMouot;Vb1Vd8G\ nL9^nv}JPxއEL;凼2Dn̹҈ļ[Y5lNӏhWon^՛aoȰȿmKy&΀b nv .N7!:ʔP4`MXj`;ω'NB|p]o UQ<0Ku-hpW\99Y+fh/dnIeLiD~#^+kCkf;YӹTCnWvHQ)r IvuXДݟ9.'8jH=އ<Yˋ]";ܯ\I—_SWOVN{:R:?$ɚi,⿑p{ fGm z=AgMWk9ٷ_o\^'IДzT)=E-dhkQS~aw[Z#n>6 {kČ']>TI/?57%Q,<^]QU *:37Po UZB€\JS0!KNR?d Cwf&۞ at)W!?p.;4E㨍ܽڪO6cjij3o3, acRrm[wUaESz%scP-І fzK3IbPWQcᰩȝQAE7bV"FGHCF8iV?ݼhZUC s{T>Ղ?ק$y%8ﴸ(!f 9NJp|9Z/.͒ 6#Yaf1W|+b.J^EMP[-`X<VGy7rGZ-dU1s)˾jo۳ {C VCL(gI[dR\lbp\(;@J1`2Q_E{^16 A6R席Wwq '5]š=։zOucHe`~ eȹ+ 6&CAD=5잰g$8ΖF\)r\5\5ٝ``ήMj Űe8ț>vX}|fns\B[o Q}X qCY^E0~EbǏhbmGVEVYY'joʼvDx)U}y?$l4kу2=,bgϒ1B ]c{73N)C+3CV r5]A糘Up?.N0ɐ膳b0:Ȏ`m- yMWYc~csF[-EWIyC1F$QQh?vYb&-E03l+2%dHwu pHߒOo&4Zk<Þ =|=8IDTpI+#p";Ɨ}:-bn5,wV\!J>f~YKQ ƎP0*;50viՅdr aЧs% fJc?\žiXj[eNLl 5MV#+Y|,9R`ӹQ{G3 7 _JP'Y[c(@;E:c< 7Oi}76o9` ^Tfy%+"V9BPuZȑG7KS d_=NOw+;Fګ̺pڑy\,*nu)Y>N|HFe'97[Vg`M Poc<O)gr{a._$} ĬR}Q,xc9%$`cPBBl 1GTGbWLy ^fM&ű]7I\ː~ك~a6* XbZ\q ?Bjt c//4kgo%$jy3nzjH:[b!lBjkCp\8\v0Μ3Cu/iρ$2?!n~R-U,3$+=g/8}hm̪T^$h_,%]DBS73>򄢆Ekˀ_ǯ^fAEf!":4!(Q{fOX'y1k-"oB9ΐnzO K50B!]PyⰉNL) it,шCP huR<$N^{v.p/a:$x}.9&.Jh qvdyD۲h+& ĘƫeAz/^_?N憮ĤjbDd;kWK˞]ǜZ+ݔ hȜF_*e`>2;t5B3zs ^D(_}mF>\4Fbe`@ۡҿ漥 A`]MrR & S~2p|I$|bb}.I 7D%O Qr0JCZ PGbR#ɕ-rt&N~ V+Ӱ՞a٘<+5BA.d ĊE;Z0_M/u0U PLsb}a4ΪPt_ =W7Ƨ/<[eKo:"J0Ǧ+@Ƽ\;&a=T. (mϝ"݄ك\o_x2P+}R;T4w\u?xC` :zM8fRpY灞Y4ʿ:X,Ws;= 06Gc烯sYH^xwK8WcJ}wvbȟDc 3\А`TaYM|۩,eܹЂ- ;[~O97]C5y-vݸ4u>, ~[;K4;)]$XQ?YG5{В!0Bj^0on!ar}ju(/RB]6`>s06xbyM &.]bo> HInmz4I9'"#@PVҟQ41( ML{,%,2"GR.",/KMJPq#WF_@)ۛ-\wy8et5BE^ tȒթUve:~! Nz䭞*rKa 9T'xpZzEa.ɔξy|Ch;v:=~PLel並g]®K,wi8!y~T#- vJ~m7m~k!=@b%e ʗ!>u#I2Ü/;aT-\GQÙc"4V#҆/lw:Φؗ9 mF[ >}l\Fs_.Tw2'yD' *? [BoZIpΫ;3v7?0NO 4j<|€#_fIN~W" A9eǹ(91 &6lK;Z(Izj`/ʶ|s4怪<|Km>Z9 a]%KAh^BIze+]l0`mE/oC4MiYY?PsCsRTwcc6CҷZ:@ՊSMD轿}=T_{qbHpQgbw7e{Gb??,D'pl('xɟX"kf:ݤV.E7-l F$@*)=iYU6U9mĜ[^|Y0%t:d<\wV.-6})8 aSJuٕW`Ͽ^L4ZRF-}8G׋PNznJR9RbfvAt mUd痾7;7!x/^{/B#IZpae$ :ÛhzG$gdͅ"i!%{:hH?<6أU$N'A ЬҠ{y"T kP#0]+jWIB.!k%kG Y:J'[0 :|abG 3H.=^Eӷh\E$3\06>X9؇Lj~ՑY 䙔"ːH(k^=m4h!jٳ칳ZP{J SQ8"«e,ny1})L8'[w@6J 0x]>/l+;^GJ45ܢY܌c /` w%ϩɰ-A4Cb-qo<icK_.$诤&]t)LDkN<)r,Ih(PB>Aplϼ3hbr-# ]L6~A7 klY{Czu[pq&ݮ@HUCĦ?xX^b0Ti}dmlQg)1<'ԖdˁX Jz&dyrq1D^JR[?uM9]'@5yQ=w7^A7fcoꖠ]_9!(ZV&-}Mycر&}e;O}R3ւ{A&kxz1Y  Kc۷R{ڳhU71hzBT WU-ʗ/=oIQlU_y5x|b͒-ÿ|xA5ipe!*2C~SO t76]]+<EAm)Os(f]jMQUMoKM7lu{!y!a \;b{}v 7l&l:6(K/+Z BCpjIB9[(4Wҗ)B2'|rRN"gvn|ypiFk!@f:/*Kv]Vt(#p򇠨t<UZyEиӏ'}SLfdPSKnxS MCSuw2'd4ߌf_Sʰ$o{VT$0s36S49D2HҀ׺?^m3]4踵f&?7%l8 mEl %Io,! YRk|*tV^x<⻄[39ZI/f&ѱ;cxcSqg5h]0$y`,xL%%X"?}Dޭ5V`Ps)<#?vZ{B8ӄ_E) Ѷy˻Py0L bkSJ϶욜nz:BfsMUK*~d/9{Gl2?Z~uIGF`mZe(K>2C_V%̄bz|Ǹq *5UCGԧ&!׾jߨ' :x%3?y[2c?YzSAnM d[˰ 1E ;JMP?nmiMZO\ٖ%^cizD=@ZW?8N:j i1% Joa0294H49&dT_'Z˦]O!k J w}~33lv zn )dY*% *6- @ ?4ku9%LB Γ[M+Pi^j[%,aMl\i6 DZA @`8᝜vT/E7X)C[.ʽHJPm_YrY& Ԩ 4b!xA/GĜIEb !<W\qb࿡[i "RqI/@/uH,ZM 2*Nlӵ\`(^Ahh:󎝂V2-.ݰp:s#s?Z#exx9KN2i3Хk^ٝz 1Azy vȑ"nM s!tF!hM3 ZGD9S |0MEoThN1i}m7RzL>UQ ׅn@͘iSoNWgꝍĄ˼.'t ]+陹c}v x͸U4UZatYdT rv apxC/QwfSieϗŏ'5;s-|h ٙv08ȰTt.c-< P[HL[&oTD0Ȥk|+ tM UӓwӔkJ'@%osX8 "qAHkQ}K֠Y:1k;%.\rN.qK FҴ3 {RA*.Y[TlE!(| ^e]Bk&ZьX1r w (uOvY(J30gJ0wrSE#Zٽ& E/S0DwwN҃dKdXw]}YY06xߗ3ޯgY|DhB*_OW;0Xc55qۻJgh~Wd OeË"_ _={fDaTi8]ep]^0jӠ|"1\šÙө+9XXTD{ xeUq'w .YŨ҄3 Qo7")e <Ȟ2]YMBxnъ2,kn΁jB!Y6,R?ʾğ+仇R~Шeidz$+$uݖx+HuGX2^p-[qe=>ϐR&Dz+#d}!2F5@MT:|I}7.Sĝj1܆ RdP5U` )Ct`. dOsmHSbTc'CE6cVI,qu~$ Aݻxr V>q^?X-t#7EeƑ;Q< S8{R~/khNX8,aq3úHN .%P롷5bx>{ _GlWw 嗵b yk5BY')G?mf(鴠4r1bXI0K=n6=9x&LW!!fIhVH5UvFj9]Ik4`XVJZ3n7% NEnr6!biM5Kx )$y 3ٜ($c\pmY v7̼S-#" (v7њ(!X#d"^4B!QkɓEbP/Y\S'UdyM=~.!BD.8@ʹ1G|%~o>*Vb { {O'2Nh0k8S Qoj; 5ymVƹ,5H+i,&q֞ĭ/~UFXݝUvEd˃I%m\%&4h`H=s6A@b?eS+2-Ӛr?@7ߖ Ct@V ?~6Q{8}g.z[$(S*z<_??*wry %l[1ڪDcl@كDoȚ JrHb n4x[;B+ƄzƵ' AcڀeLj7h`n?8.րV,3`'dh CPA} *ly˭n0b+&Et y)gֽ3R860b^4 *& P?9O 2ycqiFo&IĀp$Z23T;-q9J3~v_DS0E& =On9 xͮ ΁瘎*u2W^uѨʸXtMdQiyW /%&U:c'\$S#Ŏ*4;Ci|vcߚYE%h ڣjF[y$f?+.]$ݨGz56Z|0GGd+걌21c ☏ 7@P?ր P4kXdi#hZp#8n{=UcXͱs@y*<}փaW9S3ıoj:"hU:56 d=^VӠ,}0W!b$:T T캶08tIغ$yܮ6nbrS>߻u,cTNBMtBM au&ԐVC`HI_=ߌ# .[|Fppe/} bQda۟oL Iq`>/ .%'iMi۱ rayHIvHF@3f1nǖEު5ӾVH^MDtgi=69ג&Qa3 K V7XʿwHbG_cZ8>%?jtH"9(25w'!REim!Ϯ~w#?PXL`K4T~i= ~ BUo3s;7UtZ >ο&k?$j[6}\^ϠHlU6ہ1[IglS:9*qxE4BSJzT|㯸9Hl(H4^0*;υR]qnmAd.OkdTC.̟Z;+13@B,\s2V#?j5Pciѣ^GDuޚF;`4=Q)e2+ЕU |n2kT<7J-GQn@M]]!pygkˊv^{fv ((AŹ;jձ aUK=b9ߑ%{JNҳS ZR! ,Fڒ~Q+z-v*Ƃ'pv׎ώ Gv0%B;&QꛜtSM8n\s~{)`.aC?R ֠ԗLkXILX_K!֢2R[N0+0r)!Uz<q}X h>ʀYG3MG(5ZQ١^~3` Ǝ/}Թ'!R'?^ XZIw] Ƀ\ޚqOr[ [emc{HOIqU(zfה5fGvCoB7-q06lP[5` Ya,D}dLv0.P?\U.z|Rie<؞תC-m]@TwYc›M3d|UۑZa˶,By~0I9=@bEr2d`#kޟ +{9Фtpp@&EtnOuBrԇMV'zj< sOLLK\?i8`@;[ug Zd^M~e i@1#mM`oZ[wZƽ#ؚ:Nw pfe\g߅ދVXtsA0@r>_˫(AtyK4,li$ 'Nj'A:K5F<* >/u+I9/:nJ:'J2ŀ=- J?rphtS}wnt5]ZU%&R`1P|KAǫ_Hƌ {$_NtFͯ`x˩4xtUƏzw!i7A(9s.C7J37ď23-qL.I"ܣ~K^ -ˈ&ęUܟ+ .` 3`+H6EʪۭIy\!+ 㿡ݶ =LunF 3Ui0b/Iv'Gy';zůjh%6j&/{<$ィ>hݪHOSȉ®6_ Z~D'{~|dNv_İ~!Y{MHs)A%#VhV>LNJsui&x.WY[S! n.b$3s ƖCAzsi$mQt:hUt=nbFDC =a_Y60s"UȩQ ^K!ׂrװZ|58SP_Hk10ο9d.l%;f^k 9VO)Y)Z;²Zf*5Y܎S:s#@Bx#<0r :-}EZTy;WcDG JKsL|G,%fKX?a۟˱lDQ+2q-t@^i9م,/afӴX]#qic3좤 % 8N#Fz97j=4j`} ObV׬UeEɺ^/^XT래:$5({kiS"&a)k#2D(^DJV~P9v/#~Yia hʲR[ghWA+jI &(9FUA)y?I+W!varxX_2fЋO^7 T)[B9*{~z#sLC$ 8åX-jO_64\:M\hI-M-۲\*yZ.ENɽnN] [( xXu EJh>& 1Iuf,HO='J_zDGQ'Jބ-q$ %2.&yIÎ띱\Mu yN(|6JmCMYLqОR$pU*B0ٽmg[8Z.>$H]݌Q;fނhP-dfo xMj,k[5,.APn'ۂ簩 HTՀ"PԱ6,|DZK>f) DMeCREJHeVe}lBk8 D'*ϜD+Vؙ#m'j4[nF&FH8!/ع^PG&NAA$pgk,؄C(|wCv1Мl2E闭/r`4B܋gt;oˍ j_k4 $"2b͜3H+m9(lG,v?+̘8{owb7B6A892C`ᐤt'o( m屮4{ ?$- 4 Z>KQ$P3+ R3)@d`UeZc֡2=  |AM&&hp4 ʪqylY"bqyk ۷B/\'QAXYѢ(Q'9)Nx}$(-I0k ]u9(td e@3;x]:6fwTgPh]`J l>;ZBqpqK@4SҠͧ](ZVj^e&^`xWyXo,q[#oWMa:B,~uJ@:,#GU: $t7\@UlihV8fV1bwO C˞bVfDgUɿKEIX_N~Сfy@T$;,.+i$ytfڽH/$vQi8w⒳YR~MS J1kpeTn kS۪&+^r8bgP0Qvec DdJ$%B^jnLjD$ޯ 0G)-T =N^+u!Py2?-6|5e0~k3xT`RLImnaNIM"8 ρ`Ӽ scF !˪=I_EekT߅N3)=[,@i/s7a />kiD"՞wntg^%{삔, _*^mYi/J}{ϓ\U1ȧH?fR2W=);6԰b3&C%~)"+'| {·.lrt$N3oX dO%xhkw+J嗥+ df>TiZq? [V̗ۿq89A'@N$t*~_^Kyj/͛]WU'QPاb7=4I;JOFqJ,vm`vs>bmNP‹eֵ͜ӁX|t)`͖ԋXA)Hw;J9ʛ(ӭU X|G=GgrQb\(q}R)G\f^lKYOA@ \31 s&wb-FVV$N0"41sF=UuZhaG|i:dRg7 .ˠ[Fe{?cu tg^{C|L,ëPʟf Dx*\ TPM 1",e¿Ͱ t@NŚ(㤶ae<?~jmZgM}V{u9t[ 9:Rt# Ukxk<[[iD 8Hz|\6prpKA dK1Zv&4aʥj? ט`#wm9;a$ . t%A\ɸH YEfůƩhb"?Lxh |O+V0[Bu'"K |=ϊ'Ui;4 x!EK ۪V%2w[p{Æ0B|A&u~z\Վq:ά;d2 pR.}Þ_``Q.3L9e ZFFibW@H%@<P:$c:B[?o'lBߓk,O2e<s+<氚J@2OíXpZODS%E0د ؕSݷƒX \uػG%C>チyIO[0զ]ZvKL0|ŕyO#2۽[aᵢI3ya[þaF5HsfZd6m=?~o8(MJwHQ%R7\_P9@ðW·xvy^.yqRQ9#5qx O"*1i7s^p;$+{K;ިѢ[+qk |tA1BD-\ =z#JueT!B6[!bj0f 78(!^u#p[ig UnsTZ+ %p?;}\$T+i8ZU).f]~~ry [h˗2Sg J>=Uf%GIMwh,i&wg +x^CHA0` 6Jn%~ S9qm:[ζB]EZylC[A.iџWb{c% >{hkF'.bk0; *ݱ0 7xdz8%+*<9Ā?BKXE>x]{*usyA#83(]=v~huW|4XɌ~0Os$:Fp{ۏpOY~V7)%tqt^$S\P[c E+q&.f* ^0Y?àuo")u2Sqgj`)r Toդâ9o[n>qSYA Rp _axS7Mӷ90&qpw:&Dj)L@~~.4 tTq8~cX֙є, *nj GIqlヨ*Ic ]9#|$BsɓoMϠΗ3cpj%>Q_;95j[AO %XCɛ5Km,qsv (--B+ HUoo rOX*6-B(cll5G#°%䐴ѽ{tQ97sⅿeJ3O T.JOV_? u bF̙c$I*Ur|eTh A~ (v#ƠæŌf:\$S=Vy]Bg(M _"WM)Yk.<CTTєfgq!VʹW)w14N|Rl-x'-#©!b gdkVHMdU[3ΟmI)#yy ѴR/kˬjFW?cM7cz%G79*;evI4Rټ=[9h _ŻL;zœeT\z'` [D~,콹nKxO?Ŋ<=t?Sg%ӵԊFr_(O09mswaDosx e^24_^$^u#Fڔ/9]T*Њ"E Xdm4V+4bsA2]sL\U|ڑIܹo8nߢ)aҏx+ U V ayt7mC'M5LGw:SL$ȕfм hz݆>R3˴ґڠc ψ?:KaЍ;J|0%<1DN-&i%L$FrrTƯJ9*ƣӫ5BP&sb)5 1&pb ?o?h-/m3k N<*/HW}SћXk m~jb0P2YkSOFBg[Hxzne ψXRaMѲQ;񍙮0iu=pǜo=%PjJeo}9$soX1 ]CV6blLUqU9eB*kv%R\w,1ZoE)p&+٭u:W|:>KTj5K}5F&,t!8T1R:`4sj_͆ݹ=v1h=t`V [2+=aT}$*`X &n!KO*yOא@ ]?׏};d*C.^誩쵵&;¯C @M8/Nmq_0~遠bADrK SY;kO0dӷܭ&h(aP&WRczEA}E/3Lz v",]~ܮ-T-q$$YvB6i&E.?3<."UEZXV<[f}ON@@q4$SXiBq3;v9' 'Ui]ؗv m܊^Q;*RRJعv,J,|֐ *J<KVIjB^h?qpȌcЂr>ު!hFݟ'g7(r\P7J2}Ϥ?2 Š~<ҏ<QDiAN>xSqOBnmwzp+t'W5Xxnc d>Á(,Aƶ) &^*~r3HpƄGduvTw%@oG_%]_[. !d' *C9?<&yDYWB/ PJc$Fdᱜ8@σߣ6QCQ@Q٤rFSR cns{} kٵfj4p-b'h WS0Md9b[2SwD#r$$0 %օR *gy"ZvxυJmC^7.o0$}䁢XwD\ːs2Boģ=;Xdyt `<_HicEPYO>UJ KpfyPhƧCBs!fw<=/"u\t-F6.z4 1WKSJK.Ss=zj0{h$.]JpzR(gg6$: /iHb6J̒0֨YZ&y>d6?xӺk-lfe%GLAܠ/ge[N򪴱Ϛ3Jj.432 QgE5/w7wk E%aP1A>3ch[vTkcbSWONIqx[Ρf~pS~_{\Aw z3g]8Fs )EʉmozOZԴr z_fL-S$mTbt? g [G/ࢥS^ڮÎ2)<NJXzhwijt%8) "OܸY@Z5wùzB,ǶDD ld;5w&7"V1tkT :u'B%yoY|Q \n y &YS{&XOO!3A7tnrČ݀pMɩ&LΩ#ަS\-r72>g-}QnDG dovq_Ҕl"ݨ9)k-L,B*X5wTB鶀]ctP97RfT3T??]\R? ՙ^kʑ !(YS ِ,m! aY`0tnL )ƟnQ]yy;5i".' ufTQ;t_"WMLH <[!38`VpOui^YIJH)>Q؆,ɹ.km/}GզWTj\cG.6&0sAh5WN#eu r@3Kǟ~+<P E4`?O+0eo"=AW mLÂW$6rܳ; ysy( ;t!Uq9zѬE_o!he=qяZTI%cZ \Öjw6{I*yk)% [3];OZgtZ731_xps_mm(u.0hJԖ("$:z@)lRJG<,0djy2.Qi^Q\G-LgA$qM\Q P;Y ^\,!I`@Nڢ*SܺNSL4"-n :fCa0Xijd6vuF8z %2D,50քW[_ly/ Wu<6+=tj qSQSW"D6gڇS@ﵟʍ[k>tn;$817^٤R>]c DZ 3 >[JgS2ryJɈu1ǬXYbjekZH3|5}\}r7= lj(f4+P\+OB>NP/wqEpپh83 2F DEBOng鬭l8x@CDUddikcaɗ9ܶVXEr5[1Ö|,dP5ʻŏ9f޼;;~+Wm?ۧ3mRW֫j}]ş)Ü/S}辋RbDF;0Bch1sߧf ?p_ė[(k_A0ZR-u\CP=Z$ft!We䉁t>|! @CeQU'+>(; pz?{ ݁/K7H/c@0kۡα[1'S$Ioʳ*>1ݬANs#ntbPrtlPyVӕ/zL[k+URQwbRѿTHSԴpY?pĀ-׀%FȢ]*ܹ;M*F8$i"dz~jcUwh LҩMqn!ǯ~=fЧ'i7} ܗu߼T DНEn6 *޼a5 "O1`z4Dj>ᄂrE ܄BC"Q)HKwq ժQT3wgH 7/t6]; z)0(+D"?6cN:DN#U g.ՂۦG͞tzoO?$Y7`E9)a˃,0:'+ȿOeb^ n27)ZF8|F> |ůi-Ho7)]FI"FmP?p9 6#nNBp?7/%TFi w C-j@o8p'CMxl[s RK;~'8>Ā'ʙ▱0&SU&RcWh5VR7OE>/.`M(olyv2⥨4 !c\]8 Ȍha6"j!T8><@c%pWW%Ւ%FnsBZ"2鬯2XxS~ aJ0qہlSUM^>(x HA`QAk~" y9!qhLazsHX*4Z7Y-LvwTi;tikaoѽK@#DDCDZ20aY"gG6◥M| D!BtzKQl 5ۼq%Ñpg:r}‡A۳-*Xͬhږ* c g{2}xp{ iYvSJ ۪XCm)vf+ o CzNp͜8^098b$fW*Wo\>E0[|Ӷ֖tRU5A7Rpz3(]cbv(ܹ~+NCl\~};۟_3gTabh9C+5o$xg[D0:C,͸y 4cZu?[1Weǧߢ/&JS8 SGbYnϙx7!v2}KMb`Z5rB34Us|f&+Zk% @xp9Of'&kF;[\EB⊇?} Z@n._{N4`.-,v4_b$W7PU!X9(@mȮnoV'O F*ɥ]L;C4b5I[&s,p޼M!* V:`Qkݢ Htnqm`Q ~Ij^tqVAVȶ1{(Rl&!/ܩByr?p]2/NP7P(U<'evviL d Nl:S Vx0: k t6g>K^NД _,N(M?Mra ed;_LBqkVv0"v%$ xmbz/n=GulqL.i*hI¸2Bv 3iy^BaJUU )Et_,r\PZ;qB{ 6z}5 fx\ٻ!.Q}F"ˈ6 XH=vUPlw}?bCؑI>ا֠Vq:ԙ1Zp޺RF-4It )mMpDF*S%3jc1qh6yyĮ͟2d8'J`r9"/s(/zf3rCn G_7Sܥ"H{gQ)ƭ9lUSm0k. (RuJ*%ec&jR I*9ڼ] &6f {+g`&ze^':jBjwDn"P;@nH!߰%1 Cb)1:k܈PX' .\c< Fizd(ʶ^|[ܫ8@v-҈a7%wYS69M DLvRqHBUbQ,8/Oq-]*mwAZ?dnJNsLP3>#*FR}o ٥}M3_(@p15];nC0Al!+j!Z7MZ͊x bS᱾UY>1}, qv1M%ZcYSޚ?,|c_a}#>BlSPx8U\rд*S d &~vZDpqA`|8VQ6_q&x<o\38&Wq:t]pqטC%@&\+YF]Fiץ2u nG:$V$scqе0YR>4'dZJP <(mw=!vK 'ʞV+8z΄h#fj ^eAȤv]+MǓN_sB= t8C2>6)}kѣeOEbܨIӴH@d?S3U9#lDuu-qr#e7:/P^;e3 Yd?k) RR&(!5j',d,BgT` AkxSgNtC EπkY! ^l5/Wb>Ʉ]|zTbm26l҃%k,~ @X#=+J󠐯TMzLH `YLC۠8>f"2UHf 1I7fJUc3 iM= 7m\K6]]$+~]MlJVQ k/<:v:t~3%EDKB껖$2/bj^`)Κ_o5,(xdzI9~$h[~? -r_7ez3gj!IsRIw!2EwJ).Qk >!&uX{( b7!:p~# fZ_rtY_R4keVVޔ2nҮbf;zb\ȬHDZ#N^U&}QbI5$odz0rJ<%kAdZbB82sirt~-%JDpMV3Q7d07wN `92`xy5Qyʰ9.Pi$ U 9RѬBYەK\B,b nۡY{ !`c`D2כ8I]lǩ[Vtif#֭U,z-ZFrY͒J$?+5;oyѝ&t\8#c58@q=ZA?Z4q,eJoMb̃&',9_XFy@ a?̬X.Ƚnxe,(x?T&|~q}PUY} 8ƞiB9E/6:l K~w?eAs"|@$qpfi5c,>w]jViMs"7;s숆1Ei]S w^m!FYtl>`pׄ(M X+VYUfvjr6,6Ss]h>)ݕ@.:=Qiڮ ;1-[gu po\2=Dz6T h`s RT: ѳŜEw.mm Oad3S:3ҡ^S6zV6l֣fN`UGa tQI-Y#.CƝMٙrJ>A`"M@ fcy^F=T͘{-$lgΩc]}Rܱkδ"? swEdZo,)eѪ0R?&K/tjv!'= G֨Prh |*l/wUn?Q \AfѥOgEWXw=٨tD5Ľ1+с;e]KB<s{9$HL Xg:Ȃ|ÃlBh-Z35f3U.kd*kbCdi0w#jgKcP/z 0VyV;5|E2\Py7y)1\YK_8fH\@G İ oCW֞r~='⟨UZn̝~ UѢ&8`U!]{[mM"k gi`}Dsec=3ko"~NsDxg^Z>{M5z\x I~;76bP }:kӃb1 ߷&1/q˕}qKsLyg/WȌ#(5zKlk(Ӷo~t'GNmm&SlQRUV(߂\QV)vu5o%B fx)TxB;`ie!m-O_ܨ!rWҜAQ=U];~`Ɯݳ;3}ƛ vHg<&q`1kߟ:;*}$ݘNc/Ä%Ń&ߋa[c\,?&1nrujg8T<ʗ䇿,Gn4:\R&w< qS6lX5奔{՗C*HޘDhyMX=cywOq{k5 ֿe{08(u?}ֺ(éyN~zQ ÒYvLm9E2$Ɩ dj˄Ի2aؓ֘K뜲1x-bTL0?CD\͢$u&rP;p3 B̆a`hA []9b%vCu=W! oYIRFڣMnj)VhS{@F;e`M4sp2bYG!/0Fio!IxR]I9n _ ]jd;w2p 0WZ-9 z#\ҁymLdU #~n$ȡ=Vӹr͹{z[?yr2+ݯhI9$~v(i&-u 18h&ɰqf9 s+6Ԟ m=lx̏P٠֏".N5\uշ[!G:V;lh= Ad[f{* ܝ*swN3dI*CFf`H_|* <{Ww*pv1 5A1jcQf mF@gR>}b7SI_@ź." ,>.tvWS+iX2F~qDZRD3vThVKk<+4WLԦ#zuuZaUo.NX36mvE qj #ϣ/j\*Pu icw8RYwZNG! oXYbJ^J}@iQ[<2E ù m`ۯXnl\l^BVc 'eE"ď94:`{b(͑~m/o`u{ɐF1Kz3]ʰV < ~1\LDiV]PюcL)GD7܋7Iippk iMcpN";8 yB0i8uVwc03倱4-l?c.Sʡ`_ڿg~G.ޣMv@8h@oPF S;3{P5^wY"ԝ򼠌|_qP`=+!ƭ1+͗_A#D6aKR9cќ3p3Ul>+c:Hd*EɻEHQ:l͡%@S@h)Όڧ(Uֈj06Qy-SwQU,3Tq._y0"5ա gmP1|/XYv:T^\.;./ŖʝcX;e)[":ղ+ݴ7(lldo3Vywϳȕrw (TfX&ިnɃ4bAK  2X?W;NJqy{ _&qXBĤPT>5|wu8>0\>Vm:[L%{ sN/aZhApʷs?(݊q+s~sr6 dUh-l9fdO_2;!}R̸Dz+`W-0x8Qv `ڲ\v7#fyuBge){ a Y[{!lj ugs-g^NtиߪvɩT+#tʵ;b@P?M2~$$5]_¶kzZ](x/ѣ>>/._BeÝuwx7>ݚT,8myݷLy7k٩H'e>=7y緡#UX Yjbu/WѤ*lxy-#& 6L'q+! aG,﬘ݒ H{fBĦ Ξ&rI<,sOE /7;uZybƓHh\B4>IShս́sVxc/1"Ah cx}fm6< ԧ峎D3VGҼ.tƮ7BrnRe*BEŚf+Uֱ2(rp$P-qDlVO`zR/ GYQ$dpnrF\EzHuE6>+oɶM^L|^MMh*q dkvd#CVgdaΣ a*o 2/M2ajynPK9r@u:n)R~Z 捻mw&-*XQIn #ʸR2ofgEN&R9W>9ʒZ;8}yϮdE{Tk9)"?RNDj6!#p_9PJryezs%"Wo~%`$uҌS`WlK%":VZ $ϝP "ØC<;UTGqPH_9mȀH8{dx8$;c*?'L-A.^_2P0X 8OjX6#8MB!,em~$vjrgF]ŪbF{A49'f;ew?Ӎ]a+R=qV7?>#MQIB /q ,dyÔw L"A ~u:5Jۥz=ҍHm@8Cc#9-q6݊J4%o -pH1_(t!6pA1I l^R%kEɎ*/.N b:sO[l< 0х[ f$蔄s*cUUWl;-9GwD|CUKO"9L;5U9hQ w[I%~rgM ær^4޲r/W eq/7v`6h Fs}GH6·6jfx6V!kMۡ8W elz{)=Mdir :cmZ%[.жp6M05}KKg=o n7 7 T( \)hU=EU_?<J^+bg6^ݮ;0,$Q;kT؄$?RvRٝ#;11-Dáȣ厩צr"3?ћn)6߳sJx(!˝Ҽ+xt\ hG\UhUdd[j7BFc e^0S)avXʻiH8!"N%htYZ5rp1ba"wea4=+*'q?\'aY08;Uj;gϵV3q.#끣ζ}y66PlaE* .>c# )ڂ",9 bj2o"8\9 XW_$|x1˦+.]p8hDE`8K6w1#& F*`V]vs,Sִl +FZ,K dcH*|>B1}A<ƬfN tft pL뿵GL^O+ek% cp@i&0e_2V3pgn@U䡛i`׉U AJ7j@rg[9$PyAGJ+Vꊆ.yA-g#G!a:}Kea7pYLL|$^PÊ gO !a !n,mw_3CpJv ~/B\zP|Lz'*e`M#&'6P6mm{rW^T#Ȃ5LL7 ^u@/*$DV"F]1fpedl)Y͊ټ0yqr&D>6 ("`s :8&cc'?WԑLFW3F-0oG`L0,#']TޞTF p{5l9ꘟRL-%ASş>X.\f]gfna !=dkeHJy$BY}*tz*3%8;xaAyΦ@pwU5J`ad j.`*rC4[׍(z/&Ƅ:M ZUъ[S6aΦ|5{lm-o{z>>S `: n/c觱 nIioh.#NG2Is&jBvK.}[y9V}oLQiak}Dr>![hDRV# >(SPAX%-rM5=p>ޒ.Sel a, b{i~.rwcWNw0.8zY6qڏ~9wFGLg0G4Cᤇr8E3ß7j$\YKB+ t< mDߠ!3\n ?tXUE`ij5DN1Y-s.?^:=DAtk tx/TdI#ݐ1߅8a MENC`;Ź ߶U"C E=f5N3$PwP%$ Xy̷SNa$/(cuㆻI{vP_W ?&iU*iKj!MfZu!'|]\O(L&3}-dbs@c:0 W VJq)oHޛȯS9H/|^.eaTD u b'Yj0`X2Asw(,r3U\[sWUe'@(՘ qysO://U2]TN'bRRQCGJ@״BZy |51z&8 YCO̵rS&EY4-5xiY Ԧ{aR4$>1Ζ6"*py5v-J'S2و` qآRB6>8HK8E"f%|[]櫧dF^1BU gGl @d:1E0xB$J۩^, Py@kmRh>2RM^~ؓT :9Ij$. Π21kkc V"0`e[wLptpI..om(G-8vdafPĻg2,X< G \=Ӧ3IKEMG(G"&.ϜҽlIJf>VT$3O2u}RJAWZDt{ (CF9{0t1!9[U J' m!9I,qDdc3,EwB*(I6Kzw2-jҗ~@Nt ` Q}{Gs\pq3EnP_փ}pGɼ2_^~ 7 H!au̬3 c]%&Wmʕ_i0Lݹƶ&!"]-Y+3G ЁָWC *gu/1 .HUU-Bhaw\U68 I},Z[4^R6k˾FU٭m=+^͋5R9V_%S/HukΌyYH?U6e&ڃ!?>L? ްrroSjhjŗt[h<ƞ5<$z!4v# V]> 0Xnu+]%ٻQ6GFr)><շaU5}0D 4t`czFjNSvt)^%[<I .EoCNU\ o ,!;X}( [q q- oeۮgȍk^,%+QgX* yvJ+SW(o mhf}l_M L ̈́ESWvp5Kv NW k\g-&-"`Ϙ )C)w{ʼ3xZ@:=R2|{I‹~$+9+]ojĶ|#iطEr-3={im>uM=Xs}%i_kg|"mzHtau y樿{ [!Y{nK"# $X"O/r5E$r,A"ݮRTS<eY"I;΀JJas *uўS)0J"p|65 »r#<)S-kN6 0[ۥLv1wJtB:WY@ygƉ!oNǭ;-uH2ztNM 9/7>u.[j[myuvnղ-bXϒpL- ?'0/NJOK`*nC6{f^H&&(um&i{n*mE`AJK,,pjvc6R.QbdR̂)b`՗w"(PXWOKdItru:=Q"iރ4^{xl=o=6_uC6FhAKMD qSW{mer `?&pG 'Os#I+睃 {$ .1jB"_W&s{#RvjE'hG{_(.\9M݌,O\~dl]N0!|r8?=\<% nm! ;X J6:|8@pwHN8}]Ǒ5VzxwlVl0{j/ ,{|Esoj@&pꏰU4M"yϚ'r-$ƕd!ho4 $ـ̒Dȴz!ы&s:EN0#(_&?G.q>&wdyxR)$c[d+:GMC`2B(*Co ,Ͼ|ꡑ~G AMP2v{җytǽ)G!̚La`?v&p{^;UM ~A@Drj>ŔSU=l TpJ-:-m-ԙ0t8_: 0(D-e5?O)B?ioxYe'kēusCܞ\m,$D kQz}j0Kz_7qx*c̯O]^a]])nTz009HhA7zoJMvO"ݟkꝯKiϘWY!Xt{Ě"Q=r+ƻݩ}-? D)a}* [$y*w6M.iV"$@%1].:M-8'`>%#Cxi+!ċșX^-/}U1ЭKh'P< f'p~i{э4kMRlEȍߜ880?>5%;T1puFʍR-gv[+ Ÿ{^L|tu8U3dY6'/wN+ZeIBtYGqiA^:FXZK~ }5BS0etN3ȏBi'v |jD-PCv*}ķ5A˜E,vyTT]9iM7s'a|Z#(DB6-@VGэT*0;u1yΓIA1CxQ9Jl }&9mpg P8VU)u ;'#S>t|:Qr36]Ia]f6B;r!8)H̀SIl@H48LdNNߵ-b bG%h)dGrn8̢HFAUnBh]~T3 =Mt BhsdX'lii*I4ԒX) y)gݜQᨋ8f/ s/YU9.c2֛(\1}U 'KSƐ*ZDꬆY|'58,&_*-62s,>5GV4?!Pc]~> xaOϋ`x>NL!YWU ԘuL-zQkNj*n^{29uwLdm^4`-DbOU$@jOScv&ݪt,$s`OjG=m vC`8%T asil;' 1ƶ14yS|!Ek<-B- U&4c )<%@"2}xvnhi=i {=g6-!34t'Fg)=9`{Cr0%#gonIc)Wh8;'#4AALG5{ q3u,=tWFq0G=pmL.HJZjπ\-byUt0rUUr(zJaFDf!ۻ2 Bg$ܓi ?*T!oʠ\;mᠪ\QV?]fKkN۷ x\i6, f5Y&xUk.ͫD0+1?#%䣯`+Çg#W69`9nr&J~$8$FBf`4P~7 ._ؾK`?vZ:ygxO'w]-S0]P^H0A A[.OOO:-9uIS>m❃{܆gtGkJIoNy{eN _4j˷]/e%<ɕچ儐N0Ʊb$ྉ 2 6(ڏlp JL"lRȎ *f9HYrOW U)^8_"y勞Tg72v1O`$~@caTb 2jG$HfTJf93I!1ʙT$ICDbMAQBAL+[@.N9TFvᎦ z/ sU6`=τA;xQ^ _^RS/upK~uv&Ä ӝ(3*;u0:h7$#6>D ;9n0v~ɛ r6e:WlQ= wSkV((U5q?0h<:*QP=ƣ=' #:Ntz:O'}trjOeu'o E/֔?R.b-. F8ٺa` x'd2 oR1Ii8Aǹh&RH]wˀ!, Pg TB"Y[Nj!n3s,['ZC!Y0%$I.`9[V#N2touJ 1 :6W^R`*|Ֆa5Ĕ9 W.qG%̮bJn >7o:?Cĥ_.!BG~ +n.~"!ZlnqƐ\sw~vGrh Ҡ€F "9[*[3 T<&)s?f<۲z6uRm[XS`hx[/ߑȚDrd#!傒0F鋤Oa|+ ³ ]$rÛvr/vҺDllJ+pt8i[Z8YvЙ$Zx~xӆ^KspN 6acߝvٗaCkvml Tσx5#F&ۦkJΊj$0F%E20a6uQN;B{奷ۿJ##]|'3qj'5{,CƼ:ٳhn%.EYxh(BC(e7#ՍLg'z8~>kZ߳+aP>8mryIfeG8[[fXvн6M 9 QPyd8?"eBN&@{]m1X%St3 vunxhg2 0ǀF.Jl(j}P3aW:LqyWbwIdqXAiZ%EnQӆAT(HiYH)(!Xҋ yxV+B;g7nBt+3Q1/f"51%&L{ [8'8^)[nM]ha pI-[x5BZd+{L*R<0vbum]ܓgC~+p!RgK߷mGEP \!nofh%e #՝e7\#j"?jeut55~Œ%XI뺕j=92A^*D;٫I][75\"ϺBzPRj+Yaȟ9\ pA'*䭶Jy1Ϯo[vi顬t'dL~=W.Rڎ@.l3a&}C N5M +eJH)9ck&()Z=z8J0`42x_&u Jݻj^qAHE8_* &ygo/[O^# r`O0bϪmZf`^6 r:"}$h[4afnɫC(jo^KJ\5dUnŲJWXjW i :eg trRiih9E}v7( 9(W/|CR'd鯛03|6[P?o=$ڲT 0~trC11EkR>YmD[Tͽ/ǠARGw1B?8M T<0uM!^~*_KSUj[:yl{쉿hYN5Bq}x̨3( pi<,"2Op*%ld|U `5orj!΂Yv>ƀFG @Z^oiܼ4Pȧ欛\r8/22}[M'A7xw1ub1"EyjEӴ.}(Z} CCKuaZg1mbX;׎5k&o{@R j/8H<[e++zAie~ߚsSP0]^[X|%_>;Λ%ዎZRS!B 8sc;U`V8Uϰ1no˥/Cڀ&R#i*ѻtMqP@h7|㫃}[yq/ۀz~@vsjqev-RnFУl澪Y46d v<ѣ1.Nl`2X7!oPW_V&zHWI27鄎MB[M̺dD+PX%#ͦ.M=uJMI[7Lh>֨c AӖҟ [xc])@w(bZZrdRVGsy vI]Bw#MہilJ-\{V͑<JfO76c\ؿ++r?ؖSr\/6^90{ٕ(3z)*9XME*äs98 ,U_{lsNnCr7zB$= ݚH~E?G3mo{_ K6]5Hj\RG~z#KgkL(ͣ4f8acA?idWA'R7{] _XbnVȼrH,M98^XqDz gOS)%-3Q_96sYT<'|ضqܝc*T`R\P0GgMӌﺛo6KH oSLD  E PS6-9'g/Wr0mCo<L/7V_`+ }L4gs\nTҳӯg 6j0"#L~DT,rPކh1gP4!C?"u#oz, H_jʅ ?@ɧc@iDZ1/R߳Ϊˀ63\e1CT?r>iRxr?sMX{W.ك]].BO&[:Mg I">%)c$PrHJ$nu3m,.ǟ=u0$doH['HXOu2UÊ!}ní`6Ʀ7 O:V0 5># Ğ!%kM^1br5w' $I,WF;Nf7^ (B4)BQ ';G/Jnn۩I )?`u T|;r3naAiu Y4屋M5 rmИ̇ "G/UJ@ը_d~Bdg&ZKLT吮<"\O ihXSE?@ P@ؔ^:: EMx8CrwTFُ,R]]KAƷe/&t/..γAqZW "$=?zߌ`U7JpsSWƘNy\\>~m pS+$A뀶!"eQo OnloH->e~!&]9 h5D k.Z_SMK!ηj81Hj%s;/UeXﰏsR2EpNk}.Tg-ǰN$M I0cآ/ea񲅍x2_Gszw ?f~o.Ly\Nx @?[dH֊BF M0Ddx{E@[\\qH~CkKgMU_pӵ{(3!smE˂iڇN^:X]Z5nJ8,3 5BFB*1(\7:upn4VP .zX-&ӝ`G_6<q۝vlQs\|6-}N{d45j W=fޅ@#0N]m^2oHZIޒc{hfK%Ot??!<ԗA=gM~rP}c=3' 8=\,y'@A;W{?wE1?޺kɺIj#\%Tbh&M!&N |fD}PDh+Q56xX  Z+(( T^2[#H`jg6)|"8p. +\8o%m9*ثqV$ޘE@D!Q 5 M,G,Ѣ9OHiZq5dmS WЗNjeQu{86X@/b+:sJ"Hd7Y" \EzoǤ'G0 9[#v}9uLI到ΔO+4ŏ#uWA0CUD*<|̳8TUr8ZI<JZ5WB|G3@%ZAn 7g-M!ݞr &tС(*:U>ތ/!XJ` fX'ʭ #}3]BؚBE_9.ec{ #+G}?ts{̀腊 n=#6&17Y 5 E2m O5BEyuwf m2mv9TƷYw"pfĆ^g­]i0Mk9@:2mb߱f. _O$5hЊmzrK$nLPcMaechF(l'^<# $'zO|(}84y2< mzP.W}j#2Ir,5VCOρQSIj\1l" &9LSG>Đ<<{1k&ٓLZ ۂzp .\sΘM ) ][u (UTu;ehVV+Qt)M v:B]|ak-Obz!a!/JEQI}.Vgר6+Uj|(L! -Q+ڍ~xQ1.T`}`O^!H75#G@u]r"U`<¨ueuZ-?c L揷y01IAKRY2<4oF뤀MĒ }hLKg/8 |~GG`dD&RtsB}D^c7'WÈSktB1353KW'e⽥Z,J] 9fRޣ)Wbo50FYvm |k+P8(R! HQn7sf\(U}naAܥx4t5D{[wdlj;/Xvuo:Όq\4+qW™ʪ 0JE^DU?|ˆͳw%wwH3VqaMp[sD5|ji># h4ֱ/qimN}!s]R)\Grg#܌4~)E‡s48r|rp4A kaYq~n- P l0$bӤ (vƖ5ie0jzJn7ѤaM s"zz;v KJEФ>gϯDmkX1TxhdoEARF7ϙSߒd`SVgE c!{O b=ގ }T4Ӏ$(݌Eo5'-ڒkp ;~gIY~=9,w誺hpț5\O5ToȋN5CSVa₂|Y'jF-w Ԯ^kI֓5YLh¸4R-9)8ow iKќY G1])H |D2MQ\o*ZHTW1h'|i۾xOo 5{vC)5mRirdCw-a,PcK1^i{uME)4!0 cB.Ǫ[<zPİ'U햭-D&`A:n1t_I3HgDLLTx dQ`TOu^|uYl^ /*feBj5!]%8QElG8/#eJj"C *lLde8ϊ\:,UzC=e^1F+H.*`3{Dp);[f[n}յif f xU؅>HT7B?J)3 bH: ̟Q!8'8GfWmuo2Q(HŲmQO|ؖ`&!5XTҺ<hw= ֆu8{ Qj;:fw{/G ) Bv+CW:̐:1^ƩY_GܦX'-U ܗly\F/Xy^ft%tPg.~eW?bWֿ冾 P^3'$a5`'YVOQUŽ ze61A?Z :ӻP5X:;bl/7sdW#qvgfǀYm]-{PܜBVI$J G~xGB7C,Z3DgwtѩLՀÄ 0RHDR q{;w-Ds3MM OEf$ hKX$Boĵ(FsfF.jDgKݾ3ѯߖ}v}7s ꂔTzGPQKrun̮[(޼𻫾#{*@Lsa q=z3S7qfuS"]j1^6хyFJ7g K Gd:WjXy8Q;j۵DDGQ:?Pc*fVU`M [lv`=?-Bw=mn Ѻ-s# hTsF(P؛x\Tݧ :Jɜa>!Bi̪]ej*vu4Q9r2ja>U !3k'UZ*+A=>U'p%mj;O\DqMhqbeLKšI(G8%%݀(w>GٳU\v#~͆ ,w456Buqj9 !OvTVop0^ףk AħreZVmA$Kug:RzC̈́Ev?ߎI<uC_ xy ح:kKJ‚buǍь--_r# =LKֹ<±?z7mcUqɄ3v&w% Cћіl@HhL|OzYưL8K*ē sz,%߀ko WG58V]:C-4!Jπ0# .DN:'a: ^=˩lҁk@<D ݤ!|͓kÂF[RHpul+LCJ {E'2SFy|oI-_kPzv% &}WE]"7gwߠo?@u(>p}%T~WU)3lAh+~nOK&q] _pؑY<p@3aNux7W_ym:ׁ3\1IE~b*Fn] 6FכoqVlr| C!`~g9ܡKff{0~jT!-ṫHXiД^׶vs` 'mKQ8F3B8!w1u+ ^Zu_9,,L̘_^tEhsa <w$vʛ{1$mֹVD+ꥸ' p#<,wx+KO=j0\(CMXLJO+\dZ-[@mЉJ\j,yʄG F\rhCC= ȹe$M^fu5C:eNc78cY$o+|T>Xkl k;W35{ZM#3 4)9i ˅e;Pµ)!66k<|ztߊ)\AcfǘNnAQAHd_.ľS% ij+kC'?`>՚{y!uA;~UUT ,ȷqm|>0Ue&~&k{@Ȳ9hN]*hniːP(%JxQޚC0ɣe }h):߽/d/,S29g燞m9!PwD _ AwQgif);N 9XDŧcxT@{X|6{>ڙؖ8It憡0mL/aRߍAI0(:@kK~WjM'wD}\ w3ĕlrjԚM+ilF҅U$=Vkx^u<%`+!TG/! 5 X*> oՁx aE'L/N7%!virJJtQنpKNEۓ|"ot4218&Jv8Ey5˫Uȵx>aY82o7)sa+mٺ<+&߭M}baX~$VŷҜ}X!~rl|5=݋Qf%LFM1a"6q!킐clˏH*?G}_$Ǡt/u;;9˫491XF`:7/qόkWSUy(S=tVkc!5@^+odO_6 `=[:@ߟ O_PJ;Zo(p85 өMBxU5NVѫSfa 8VCw"?d{,J%K[[Fv]cv: BR$aG8AI,i*΢xr;8e z%#R?R(+XgJ )xp4K)ן(qۙhsޜ;9?`Ɔ9~{9W:.h㿙Ye[ ,h.z1B_tpxsJ]C1Cq{Oo\Fs儎 oui`+#H C"  ]@G PGJ+ʩz!u}9ՠ#F4]EŹlIC0L+3O){%ab_;p ᪚SCRTgmls`jw5_A} T*pކ$sb'_#RŊq@2Ps ZssS$sty#DAs'[H~ˡǨN`7YiO%PHH~Khi/t{whc=]/4&M 3YРc{6PKvk{Ƹxb dx~"XKնņGnx?/6$έ$ziF=DshөF zS*@ZHVaފzГF teo{ &2+V&R"jyJQDYkjv)k*8, N}xvDֶT&r4&+X!f9.!@a.-[Qf6 C1])\5YLC:c9<^se@>Eyޣ"841~". .=L,{xЛ_Vwu d UȿI.@]/-U p+EV=#R!WWKϣ҄F$<9>\>4N{zm~dѤGT,(q9ԨnssS0{,wolnb]*%:;ns"YWQ/B`S1mvż{[ti.UikQD11 :?[ˬ9o |Lb4!ak{}\a@W^wee xy4H)roi&K >@b2?drl6~SR|BWQ@c4y,)Aa2S,pΊlalz>h=Ym2Q>J Xpcςrr:DWׯ'6iY tE"򷚒b) 9>"㻚ɨ9^OaJI®_=]ui^KdaČfBR iв+Ԅw&I*E|P!T}]F e?R-Y]me_m(Į;DW<9!OF*5dEDW_BH& 2 U$n9/$JjWXIGfM^F3kd6\u`|U&0*%{؎7VQG#3fL ~N,x})!`RcUb) bSp߀1E,^o?*FC\u&$/R>g>R@'_ǒ-<5 d%,"J3˖-9:)¯k݈k$Mui4oRpлeC,k$v&onF ^F$F6u/sH 1ːM#&9A.Tןd{ cF;81C\r89'zn I]?uKZ vo: $g݇ۘ4?_jGء%j[N!h-"8 JCU-6M,_aTA*VbME3t[B.+ 3{?8q)f~ ZyU)%j]9:%"h>) Y;#֭,]:8mBY,#zs|v,sMH~;1V\o.Zm 7㦾'b)S&@.HS4I*۟[ܘ)NTFI@_Y )bΈӋ==[Q &!Ml`h΢''y3 ^=_5c[(BSZP +e"<=tk\ժX[Ӄ@O-܂} ~]^:[ r^Ԅ >T^ĚU:z6m6Φ|uy+:h5ӕS2л4A3sᓲG$ЉlCMR<`}Qv 0 EFzpk|z[ⸯb|z'pF7Hgޡ)ə0lp3t@ ǙJtճy>bO;"ec]cXbo\U׋=L2 &2c6_ 왍,SأQZ朑$r ˆ*g˳dCFUB6c_0uNz *-W"jMieaVޅ$NTgRz_\3ZtHV BCqAvW Wž6Y9~%m!6Fx]qtu?B'kgd{ƺفF *+}mDFp\ʪ潞9,vgάJڻd,3Rrz\~n'мCTh_vI,͉Vi4Z;}п"x Ӷ8`G4'0"%OӶ\Uxhc)wcM-WT\8p5 ΀E25>LBEM˯|43~4 q?Hk)}Y8ww.C:QSx>D[Y%N#G$yNQbYqlbQu;"ec%m"(벸l);NΰsGva 4C+ "u?ىf- yDG!iH#=suk2`h@._eA$E!=+Սr~=AJ:hV3O!;r!8[QmW~lpEc(U&P1.3Cdߐb6 g/:< 8.q^G@aOkÔ ϛ#§Is>>=@#V]hҝЩ%蝛7zM__˺Fb.ֵejQ~mJԵv5T|tSB,Pё2y*v@m|zg't1vө'@W 0 fpϖr)1SgdLsg=֤6SU 1,ñgzq6R`J{Ǚ?a  F8&>.H/u ,ô@!7QiwT ~+4!쪕m }\Re X/Jx5BrJԌc+o-2\z'骇Gӧ8@ ܋;&˶bvsEk󈹈J{xdTj<g d>Bihc0Il5MReԙh<*%z;^f_uGG1:R9~(-H 5m!ԓ K"A`.IXIMhU 1tDh1h$} 0 0?IFp2t?;~}WESOGþ!k\vHm5z'rYʱpZY4 ~ښLV=Pr񋆷$r0̈o`P1`9F.wгXSRk6)l"S{/+w} _!Lsne1KEG UZ@#s *y"tSVn?>d}%+EQly("٣w#_fCcxK C& _QA!|48I| m#6R)mE皳=|0R \ yxh L^;z ᘘH7x/ pw12jQ`u.#ٚ5ؗ ;Ҽ j?Tj)# 1#i@)xt?F4kmiRc7(54l JfԮ *>[A*"W'YV"o1#ZOJf- ZA_i̷Vу|bt*΂^ p6 nK & nhmypcfQt]ڈ?iC2 4?lr+m&Ik4G:\'$")^̸n+A%d\. )`zjLj쫁1U{~&"D?"UަgkVAUι"μZ Q Df:W8}.3EBG| wϹTS@ڔhҥՒl`93k9_GNBT!R!VL7Y&-"4Z UPQ^YUb};Ƶ"dWѾ;drdOFKO4d;`;WN &0Հ@nBZ2 t=,ci{0  Vu2|mڑJl( m$arSV{֪6&~ 5pZw*ߥmf-esBm _V Fr[H)o= W6XW%CwUog~QNݭ60uϬ%?%|652q3Dċi̔gcGqPoF`XG֦ݴF?G:}4،uWGz/H붅eiuz35UM;eO4]uhA| m̧UBFES0,o] ~Dl@4Hئ^ UO2;-|j Pc|+G0pfi:x@7櫴TFK:q)C_ixk5gKM=˖QU6 ߓY\]5pJP'kqV+ sJ4^!#apC W`Bs6bd{\$Am)Foetp~*[Yyk$}W ̢~ 9&>KW޵6^]dM^ۣrSe ԎCG$ڠ{qˬF!qdd?B=WJvbg 5Jf  M߹%ӧ*_Ewz L/ ;mu/?t~,j`m+䁼U*2w dn|AQCLk5+ z*^S`!cOQ(ˠC YZ]kl`ճ i;Duʩ*kK2A|۵CjwSÜ?'c|O[o67󪒅JPR!B\:Ap?LY93ϩ>D칕)+^!؈a9yYfÍo/E!Mҵv S$|~<^gj'#ID Zf gp'Q_$Oy(v1u֊w@hU4(>&GSjǼH <| K_M;:Ѭy$yWuύ |f#+#&Qw1;XI.r^Il!{!+v3t(,H}ҤM疉1z<j7ߌB(F/aVXE&'qNJ>=Sw#ùwOOcROAnDžӟuc-_ZτHS]W :n5t~"Ci/-&:αpg]˾Fޭ/402R`#yP(z᫪ϦCuIV,0j/r75z/%by Ѷ6;? }d8 (dӅQFz9Ĕq;=e0c~:F 0H"bzxpW+7vEyQ6Z$P,aV- /R_ ߱g!0M$mWjv!P2gg%ѓڿeF"9\Q D_J҅hڂEoqµ*b fԬÏ^@.x$"zm3kw_;㇘8 AJt6 1]VNVEW{ Lȡ4;>®9͠kvGxvJ^18ܵ,ثd F,LyAT杣q˛hנ L`.`R5+xƖE3z `u1RRKc}=a'j;R1<)J(."MJrlxe5J! % i-gcP.e+_>,#>Io ڎvΨWCtt2AG[2UbǼzΟ?ZQe}Q=kߔ V0pXZĈ5ogNw^QF!Zxruu uyXtK 1.Wq53jx@3۲SdApG=IpȂq836A Riќ"X5Vtu?5<<5]W`QQʷ*<;X1@`5ldtue;IH|{)k]. S0? އ MU?M+Dߚ8(jjbvٶ|[!ʺ>/ 31-_[0zQٴ7d !/Re32f707y _*:FUg҆_)jWy@2bGI_ZOjgrz'G/k'y*cړg-_G{.oLÔͦԚ9OY Z_¤mM Ҵ>o}pb(_mu)>4-o":#2޹[i K_B<;k۰u6+iheԍӇ^r2i"A aDړt7rǙ>ɶVنssJC0vD/[*qj8~gL5x^ קL+:"U80}>[w*N`HLqPۧx|ݩIH>k >gsjTBiFmx̔k22,BXU]iݛr_>3t:7$|õ1ٯt]4U`r]%m)O[y@q4y+96u8#ңoZ!r@ᛅWc ip[D$p4Uv4ϪK$?U:>%\%'n !֒}RJ@ Y%0 PD=qP;}6oj^} #i|u:fO)EŅR6&M[888@%Mh q ٺ.lwEӔq\|>3<,K R-7[ij ,B$W LzT?3^_OA&"rMC`m-+1/ o/,@2`bdw5 xHqpP_LQa|wP vK>Y&.?<4SDdfed/ĦpNF<3z;0m5Pid":licY(۬xÚܫ ҍp3CXӝ %ݧQ~Ι G@iC bd^2hM] g b3@gC/pJF9"<6gU؏֌Y`5$`Zg, 1B/fxiCuY^HWh* T]啣"LGݒ)ݍ1|MC!N{XĘ숚 D\ѧtUn&t3n}5+ə2t~4@},I5W~J)h(qTHf1u_wM;ӌU̿"My5ON.:(+:L+5ͻK2vb^ZGU6sr4~MjiVQP-qhz8K o~iURsWFIBl'mU\Bm0NTrG˔kupo!#]5rFƥ/;cҝu'w4k ":[D},!˶p W[~8.Hc<_tV oJ=p\̓lM-3uUFXp)?9QJYsԊ(:y !Yq"Osfo2w-coNx>X588Ѱ,dnR]AhL#,'c=Lmyu[ɢFiѶ;֩|ߗ46/:Mqhc$l Zb5/$PI~9ORB-1/j QQ.T$!R}H(@s0H([̔E sl ^lfq"x j2xzLN/e@_)h9pv="xL;#,A:YP_U0M=t؉;Kx|!׽HrQY> pT)`+<;N9`}59xbB$vU,261(Gzص`D(8zA.͇qDhd)B:jbИ/4,$䞦R/V;0ScDx<:Rޛbh ff9&BSBvk4M1S…#YWl6"Ϩ!AŚ~>w]G ,oO`|ppKu}RB~駘 Jc;< XR&ڳ :HӅ1fz=g_~կhSPϔQ#'\%7;!dE؋4/zɡF՚Mo+O"AD}8)6m'MU#7ז;IBdb(6yUI5JxT}M/6sDLvC.^;Z>yft_ɏS݋T/lP.zӄת#xUVq6_܏GA%uƯsvHb|1<1BUKTkI]dB*~PՊyKBjx' ܃:RI =mwWVRmUT%fMm L( (Oa7NwIILiqv6w=DXAvl"IV0Gl 7X(Y?\"fٵYeUDŽ|W uMf~V.Xoem<^`KttA7 f7T>S!Ը>F)AuS1)͡H҉%*Muּގ:I}BUxթc{&$[뻏NQl#/JX xYx #GA +&t4 r|_q,n6@"9ފ=Yg){u4|3gB050;s遈}؋>rZ"% U[n{b <&>b+:?sdyCz׌{Au tDJ.9~RO%N]8ʿHD= dQ t˔ٳHT`NSZz@9=VYʮ(*Xc_z&^NhCCC7˄qp8 Uy1jhܗWD]qy|6 K{Ou]YUiѦF<.qoEAG'ueL9vV3XBЃ5 'u GB$QV!˚UYa (-⚩c&]X `y\CERɲUusGmU^Dje|f71褋|jCg0F, A! .H[\:j暬]5M%owФV-C[`dWZLGfU44:zjLwh P\c݋q- NT5BzʊǦ*ZlVAu]"i #jWghI8=;0:m=D\8vB>~;G\?Tez-&pY ?>kƼn>$c^]+)v;! c;M,KhcwR5&jDCe kGLL)S~B)@H,Pw!, &4ٺ_H. .%wcZ3˰ec6}7ˎo_"*H#Qa4 qn_Ԡ#A<ș-h5: 0aw$ݼsK'ɻ22[V8l|%OF&^m~f6ڍGMmZElS(e:<2IVBёi ]Xɟ6m/Uj))Ț)Typf@Sf]Aqؤ H̤LGW|!=Oy45l۠ϭW"u=<Ժ-Gn s`@"pυEf(i?_N4p jr#tRR#܇!MM5ILa0'K;w$$"Q&+j䌫]o&,=*_gU1IW;7@[faLl`o9]^"ˆz ľnj V9?`kT7<0 6`a0ǓvmlZ"!4NnP+;"kMv;=eOn|xN nkܬ5Vb3en̅o2Zje8 Kr M ڷqk7/أm7+O7pEAKAO[U\"*%1DnSk-yeJѯ'PV-h֗1Zt?gb}\oޅH4w^dIBD8ӲHHr6~5("^y$ 1]B!٩M޳9C@(eP*M<߮+J%X @n9g{%r¼wC1S(a6 nՈX>B"< av2-ec[RrvW<ozϫ]V0v!8(ӣ[A6P} Ѱ[Ⱥk [z-k 46dO$gۦGm.p /}^՞B/WAKDE7J|\pr#Z* ]K}ņ֠ⰭLfFuNtc'10+ʒ)/?l9gh2_UlDF1@̽Q#ģpyi9H/V%x47A߫*g!u)`~CF&{.T~.wE<(b?X)CUl*WrZ|d☂^|~˗ngIBp] ͈r+ci#[Y+X/;_9 y:MyD&h44Ğwx>R1+cЋ`]5SQwTo?S휙]-N-M d}ݎ$`aoxw V60$?1!`$-GI7h;oKlL%@ybj 4ܼ}zN=*&b$aރ$[)7dLrY mGc?֦&Ԫu7-bʵ  NeFub0Q9 P<^b(M _b\@sg 2Fx+<\(q7Ks\ (-IqER{mЃ*@$( !&cۻzOF"uEvi m yK>387Ƴ>f2r:Fgи3cS_ u_`S]>#n'šk-J?TvۧIi8G)Š\jx;5dz>Mr]HjUv`јl,;t/@D̰ Ff~"V6.h#ӽ{ca xIzZ*2$Mͫ-r7EOLVб5G]F5u*YUY?ضw53ȫ7)?%#j\ID{ROЈxF$J gbDާjS䘛M{n\n" 6BKF vF]mU&H !;/C`v.vU*NW9;oxi֥1{;$|twnp6.s+Kyu+3a FN$JG?qu djmln9S%H)ֿ.)u89$,|7+2%"ح'KA7{~#0ye[g6$ȅР75DR`Wl6+䴾õcbeaQX4b8nLȬ8j˲ ) 7cjg#aZF&Ou*_,Q`l$o }T1(KvR$[Hx\w q|"#[gI9 t8YQIȀbUηR{ ZDO%) !x pC{z}nL ZbOJϫ.b $ <{+uȋbZ_`rxnf +8WdF#/Ώ[åq ]Ј3C/ݝbwtXpL]Ii8ˡxA Q9 rei+ۇf7=-Qk^!=fBcu-wX2CCKw> s ΄#;/'l~ e̗O;]Y;N92upr ^'<lipA%ߞ]$w)yyE;0)Otܒ7۽SWPBh"nX⧄_RU)I zpBr˿zM?.20@hG1ņUhe&|,|<^}atKB}dlJ({@Rwnq`bGێw.poT >ͺVz f8Քgk6Dyߘs@|USdR5%CVqĔgS& BFL( &ue=H_>ͻ-3PFS) I=wvmk!nZ9ΒARR/EQkH 9 S!sq6 UAz W]EWތٗ.])3ҥ~b,֕U28f1dHo8NKER=({y(phQE_|=He@1[&`Nզ,9w1١|0rѕ3/VNa % Sw!aL|\~ȉQ `L>hU&o"I.k[Bz$/-X]Jr|sܴ7^ۭ)\-y^B ^ҠmsY!ߥZt1M+k]Z5k:[@nBpҎ,pg}C_')rZ4*D?<,~ʐ*wŲ|[JYח4%:xd:4b~1T?-B#!(4T ;R|&+ڂHX7 4aHdT)) mߺS1'ӝV,!_vI[g{2 yJWVI_^A<fz}R=hkHI[#_ hځx?^@벊1 ;,߬Q?<}fƤ@R.%Eo '>S*nŴښ#RPn;,.|_D;rTz|;:}YTOQwKaMFU YυVE΅;)t Mc O>fP;ޥڋt-M"o3mng  Ub9BT3[Zzh̻,u0G1 dd8CrBbQ}vŇbtaQm up{fxg0g~϶Z C~"[/FcH>hW)>T:/Roo]Bn^uH;KyJ¬ȜRuDnm=Aɦj[*,V` -VU$*mzCb WA:N$YMAagu6\LfM LO8 ?WۛC6`$ԌÑ>A>pE>^`r5l5z9x)zިT_dP,WKE~؊ P/6S}JYًYUQ\!;fy>RXX| (hGX!y!4Kf'1D_RP1$ꌥKƕ`'=I6šha4Wxs̆{t#\_)5UؾA`!{P7v8lΌmpXդ4@%ܲ}?eiF1RozLE{ږ3䬁}6n4dmAj7Ie{+%iwCdN[QV N[jtf6)|Z\ X[;X5eTfHuYtjJ3nWpl4qa 8Pܸ6٠qi"UBlu`n#P. l=I;d4,Ql:c|s@A#M=|+k9X޵bCJԟ͸ɉmzbt=`44j4/ll`-l=*  Bґ|a }(wKDbчjXٕuQ{-kkFŊ4dDX4eDARTɎ ^U3^\Ls^b`~6h%;Quzc%L^htBti"ŻUtꐵ}wuZMNmp$1֊* N?s>Z9M("ΟMhk:SdrՎd }Q o?/[LJVO"K"2Jw=Nd5cX;7%h?PDX h=m'C ܧzz[;5')v ]"bk~p`*$7-&M5P\bP@ݿfN_^DUhE;1;SMuU Daysi D1ێW-&+3+854ޙUg?n>Սjh;/rzϜI ?-R̟U+i(_YMη(L?Ehd>O 3iu? C^r4L %}ž?s(r`0ᄅ|e<lޭH}{*l?tOTƽ0ʏ#EHhZ /ܳ5k8;EmO7F 67Ȑ(J[_Ȑ~@DɵD1@jCeڍ{a:SmliU),N ;z3H-a -?ĉV6i?H)X}+(}IhtҘ?9A.oš+=,|Pܱе")EW>ȇH;3 ,=,$;;l03mD`3X6 W=xԟN²Cj[Y19"€`3"ô~>.h~ݏӱyg顎֗i,XSD( ;B\OHnrvxoxH#C28HRNttq< .ybh ȯ3&5p!jk&MoL{33GoYCC+lq{Q ue2۔ EDNفBe1nV8D52!Tx#¢ko%8UxzI83b寞 F#1 "u 7ӑ$ɔQF+%O{ʔW>/1 E:؞ALv\Wfl4Y.CͰg Cl}"~A#WND?c&:mkӭckѾ/qYCw=x!sް [/ k-J8(GM(pe[gb(4}\oopZ:.yJUw?u=5[+a #mLkt!}aӘ9"dfSv]CUC \^{4]y-IlGw'p_KX@PX}9C+'%Xv-ߕ+u*9ZF1wmȌkMu:65n 4ǼR̾*Ƨk>쾇6'4d_62ӛT,X ]򽲗gؐaWwDD*&Ҩl_ڍd­e S-%tSغ= +(DLT͹=g; .K3!"pl@ՄE%YۘӵQ Etf:⻿NDW qKd{8SKqoA`o6ovڗVzrzd*B&nh=^2 7⌖ܶF ޸ǻRjD!FeDE yvU :iM:Jos oR]6G ?S!SiUH(9N<'|9;:,A~ˑiqFВŐ V%1%Baaz% b'4gRpT}eQAULAϯDIbe!HGG.Hlҫ\bNpC1$݋$vKz"c9a{2q5:LUG1Q{4yA; 5HgJ{ /JoApH,8tF޾T8BO;G$y.!5[` ]{I,/[i V I %=?YW?k&$WPƻG\I*=O["/K{jz473{'1#ݓU26D5Kfլ);õ( :YRWԤC ?Yq' f}_" :Iujby5Dڜ9zOf3Xc}bBH9ڗhhS 8`^1I*0wy=磼I˽kY@֩Ԉ5 xo~m$aG&hV,p6 qƏw oyK}\\\9ˤǀIQ7np%lH!DWw!Ab?2Xݡy{S)+ɕJQ(9M3PV!r/=>EW/ HХ~E@#mg>"z^8FTc9~sfG.6j'0a6bʰQ DҨ?0xr蠎¿zUN{y8>ɞYשAԞUXLoDg$ #w @?[y@rf0AsJ3AϾPAG2cmUO|S}AiXTό;wO68'YWDʖ#Nt0$?}|N.6O$K/-JƔC/%hFv'x"@m=/.wjoMaILjK^BTMA2vPT4Rj2퐍̕cob8jLBbj**%voguؙ$hCțM9YU5g CYxC01[]G=aJ1}Tw^`V,{ZI<`ݥ8*g |юv/a(ˢ?x[33*%G?>/r)[KdQfLikb '^!"\Uӽ&g:_\h?#ܺƢJNge4l`oYPN?iFV_-EJi t iFXQjX3[n7 >‘vYXZǦUI.;Hi+*978Ά۬e"j!²Hͳ>4A ^킙ri4{3d楓OcSEYyB;~s`,HOUv9:wq?^]$9 #ϙ2!!A۟hqKBP"= 2Jfnj >0}8ZETZ{CAsЅ]t)l\Ѩ틒 DYf;c rX ԫ#lr7^,k%Ȏy-k%tYzC`yڲqn7Y5A0~E ~&_"dk3*Ka7mlțLA>@V _% DDԷ@]ђ#D-pvAR $?{`53Gvftmcʵ|2Qر8_Ψ<?*|& 8>cRW>boɟ"W!Ƙ[Pi)D heGm mWf * 2kj 1v_V6q)ۼQ|-vs><؇$m-IY#OI#]v;v (iOq)]?&΁aW)KN 3䴁 ͇y)!bQ8ى_@{$!&dI#w9Vi|^zrj¼z7To*_mEOQeQ߳RO>5.O?Ͽ@LL>v9əODr]( ю.Wk 0%2j2N fh}eH+R19Lr2xŤ\v~^.f7r-gѝU]fҴpúӷQnKtZӐ "0 Ao_[$lÕIC܃svOW >KoSOz]57ROr2^+Y"J4g\%Cr\$Go~-xHO5x"L㣘&ThqεAZIf;߻=lH|B ^kL ޑu⌶cV!h)|x%֩a KMs%G6GFp*@Vǣ1<l-ĪfXfvi>c(g0loJ\:n-"T p`*l`s )Ԝ:D,`Xdo5q:Dęs7g߾DkBɂ=g#B[`OgOplW1oyx?E|Q5 _UnΆ|ZKH5`CTw0{ɝ`b$$w;z]9:ph@ܣ|9$)@FWC7 ~Ķ J{%tN^*[=~zZOqϳ!^aO_'iiq"m:v`>XFf ,9`qu[k>(=douZ4054X7Syx&*;Ҿ~5#aЛ x$ H9̿u !83H::eRaV:OǕߡg1#Ώ"סRT'\VA+!Pd2/plP+}MS++>"+Z[ͷeuJ˜J:U5[HV}P9zu o:wcP2 |BB8+ M3t"4P @GJK%ѻ Fc /)>@[G}r&pPB"rHS*U徉}~cNkɤ>2\k \ K =8" Z|P9x )!s#Ne,|'3C#4~}wٿoE!"5Ij,nY\-.u,S`*QobN15[*#x;aF+R 9PbޙU,03_h-#5[qe2s a~z~%OA3dk# vdEn=ژ.W`I/iI'|k,9V?fgofd`}5YI+R>%^߆uY_JoDl͍Ԣzp=D2x5i|?ܧG9lrf ;a{}֩p WIo^0o}v k"WeCh33oiv!'$ۄ~\+Q(o*Mk0;T&"=_2KbL}v&TX9ڑqo#UM hXnbǩ }U}:^{I4zW] TH1Eu|:j6a5:/LEux ֱ |MSY/=N۞ @cD6, +!$Mx8S 1pfe 3sI2u YWw2|ȫ]+.g2R\RRTkÝ}e1]qÈ}N&l+3$:8uG@#6q }x^h;Z CXvݜr[ˋc4.,}ħtvT}bNOT6^ulϏd؅ӱl5|;C88Ȅ6 pT# 氺]4^ވ=_H,<m#KJg)b< zV8\#@uY> y8I4:hj}׬ #&[\q/\guE{݈$lV1MI M'ZW|k\Jn^8%z9o!:zU>gܴ{D}3*E65\ TA=W(b"c#CцCߚ81r jЍAk+k&BNtƕ\oҗ@3`ګ(qluП(xg%c {aoVi9!;h(88>()_p &rvq('@O'r܁3g^)*b3cِgQJ.yMeYBNE֜Ko:cm@R/ JԜ\VmS|#EmW3W!b[Mtz[KL z*0H q@ fʢQq@= U~6ieR f[q:XV`#B|YGNsb L1~ӌ^u 仒4}<:v~ux F3Kd[z"u[9v 2;chX6;Ҹʝ2Uí! -*%"Dn c@;݅Ԉ2{~Jmq9Ge) Li&=IyɹeRrJYHI+! > <Y I=2p+ jԠ9ɢ7yEn4+Y[|#b:gy6: "q7QA?+C%ha pA:ROh&V&3FUS*(.t-$?>(>tP*x͟l tٯeb_o_B$B(N]Dn!d`\E`C1ǻE-mH$mcR'sJNѤ7\U1%VNRB)* [3UmmO.%p#.,Y{&#ChrG ;qI1jesrs:$ؚBٰ !q:(6w)+d]2N8 @AUN_d8򇖱7=@8(R%~b E`*2Mf'YwT+J" ZЊOv/ -lBU偝c&'#zlZh7̤QB2zi,\Pki a^& @(cF(bopOTrGo.bv2A`@`ž)RԌǝٔ@AHrH+L^O ˿L=l,8UDO 77U2rn=fwj'l!{wj{ ɹϩ=Fa +_c"8T|ǟZ~%,Pam& c;>`~$O>ˆ)\c^zws'o  f+P-)D #,QβA]Yo"YBiS]6609 6Zo `vz5Yi:~-32JsͨUTZvUf=PA6T~@Ͽ"!HKiA$D5N&lƗ ȭd٘ yBX($xE7Iox0m|nS;5zC3h%S - {WgvѲAp\](GHpYt7Hlņ^%kK.2!ma"],cf}`jH/I˨#H4( "C4~}"kזk rSVtF`t؊gd*Z}Z_Ekˣ0c~YVtrU?['Zµ/6l͞Pcᶮὐ.{ɠv ױp[veyl_*YP"eCvpY}va,@p|&Eu|nTz|Ve)~TӀU*]qH&ҽ(=eO^`ySrԶ5|M9]iհ7yR !| ߅5\$Fus(F;+"֞sZ=RKݎ˖HZL"JP8-l[[HVhƩkZeqU 7. oh+Bp \Y>#ԑ Ѯ D7toHI]0ipdž z=att&949$p(nITG40S`&5vw=H%%-NkRk*W%:Nn Ѥ/*iA7 .<ʽX.5 n8Vdq8E2|y+>"ApT?yID q)C|] /nSD`ʘT; 1 7`OO5μb"ci&Ro氄xR",BkBJZ@W$5` zwp$L_<7P T1pE:qptNCUO"\J!C ۓ @qՅ]oZtgd9[ύθ.4QD8)..Ƿ48lgm-Qum-<'yzpH[UY+U;^PvjZ ׹< @j)ݷl*q.M U")@9]ogEGF&gۀj/Q|eQ%q|+]w(}X_X߷knl#Ur\'3:N0<׼> X2Xò4lOp~H>H*H)*[XPt)mkd$E_w 0٤t.ok9FapCɽ +UD8~- rی5o` .?GeB uǖ9D ̉<6x?O灹eۭ *e"ZTySϕ5_Q  ONx 9/uRYT :Sik/mvϽH}*]܈ShaV!\OJ!dG7 C4ihB<0Dm/;ե[^$t>˟'5joݎr"Lӑsh0&ՔKV4`eyf@֕ぶy<& 6$!t620r=q;G,EkG M]a6)DNrZ0B>'9pÆ29/綽5l3CI #OpnjƉ1(D.ˬ+/tǝυ pj ڹ\(%HVt!7_|Hʗ j!O7>{  lb{2I [ RA DqFĆ_" .cvg eded>)ibEҨUT PDK%*p\~QwTéF ,1햬ѳa`<_=a;ϮҜ Q=L s}|Tڎ9l隋4C_oS*|H':(۰P||\usDO<DD&H1a;J`&v>#{y m]Z{fod ge3B`*]k";Hn60%Ο+zA%&̡t324ίЪ2Gj9zk 0YowSMMV~uM#ՑPLj ]EȔ'|\ `SA@1~%ɇ&{Kt 6J"!gOml?tFuwVT`e}zɡmieT,8jlNprZjzBI*W uŨH} 3wΩ)bAj\fz;J!WagۏKcbц׸$@HWˬT%6z߬hX?qv1:5Ag@1:.i{ВsJ>ixe:-syB.$yIjz)s'mhcbiJ˦.S {WA -/U.y Yk]y1_+KAN?M_5:>xy,C,Bi:3¢#m^J=Agy5Q.su Q,q":29Vni3@6K_ ]v*H27:>!rZ2PB$ '&פme3CqF>v:nm~Ձz2/$E'˜~T*c>,ei!^gg|*݉u0R#!{[fup/ؼ+T#7rJM`pL">t24r] x˾3o<m"qף*]̰B!&fl 7w@̹#.& bFvrXv+SV!f.6Ioiđ,1)3IiLnP3<--_oyno"8/uKSᔈ[$}!gﮉB[KH *0 ۧ/ XQt߮vv=ߝll!'{7'ՃC7=ڈj?mr3]Mn;^#xP!%+!CTKޔ4DA}|O?R P dd㊦s p}nGiԬ:z %GL3Kan*YNeq9*A$D|šŜճ;^+t Q"O; %(:?&{=`X70dhmB*]^C)!P_[`0]gBP-;Y3#bBEu+EVH՚e)Qyj ޞfW {&sg 3X圼cgDbo'ϕw3\CPЋg/'q?Kƛt`qn.vUo<_#7nV~_f(U#.("8Ҽmz)py*F]`MKB@WZ9|n W4o u56+D;:n e9$ nh>m;i_*NDRaKtNJQ]p>^Y}k\FÉ8fLN6HR@}r?sCLTz,hfWVw*aͤ8fh-B,Z4gl9q_s{< ߡ^;~(P/A'=d m!4_Ox(nl%%xQDF պzvNz!^1J'F)(Tt*.U 0TfY32)=;^VG9^x" }D1nrc#RdiuS򾯗`cBZ>)?Q6aO ASi%;g*' [Ί똙}SPxy̒2)#7|<:$ogw͔/F w]?omp*I\T7ngn>T c')O-Ǭ|%ejյ&T$ {ʢ;"ذ7`{K V,Ty AX} p )?d`WyZ4R nLm72v''łWm^:Uի NVjlT;5Z!Ó[W^_~,L8 1~"ck9썽N`ſq,|j D_ӭ2 2JA=2D'H3S<#n/  F'"Yx H[Ai]a67Y ى\rQ>[A=!49~ߧU25w^{b a!7v:ɊH`F4 ^m<0^,W"X&k 1CFjG1)[ikdc 0ƸR : V iPUn`* نw3)h$,KwOT1ц J @ iv)َ1Mllxk(8t]zXN_Ff [6cji sX樹dnHɨo`v<ۇZQi9kJ074"hiʯvwce+bwY[TqB|dqݢv?~^lQZr2CRaGR|p؊;{\ǯ~->ALn4utL~X܍2Z"֚!%ex(۫W^3$PO<_wmrV"zx) & B] ku*e\q3.zm,Vlh嫬GPw 5B/W?Dm)]R%'XՉ u#Žb^8Cӽ+uToڀAKrf]`a3g3D2E'"-CteHS̆o?bE!ju~>MP%AaD?.ʊP¾`jxt?ig 6^˺ ǵ@B#\ej`Ӟm-]T*1&!s^wHI%{8MK#azK4FSf&3Q7y.wo/!O6M)Ik;p^G, v{>N}0$O!Bg%jffQ߿,` L7CRA[AU4ҿ|(n@gOjI vSzxl4Gn=삻 Ŋщ {^bGeQ$g'$7f5?11W}xL/g*/"_<ȾMei))$] hJHoM΍'z=kAS9\"gel|O4iSK%?aa #֍k6 d\@crF-tx0Uϸϛ+S1<`k:ry{)dV1MG{ny@O1 fkϊ[vD& ,ŝɺbb+G+[t*uP$%_W k2L!6Mg]% #UP?sc?\фP&/)-V!=XDh+ fG Wl\L[=ty)V:. 'A s{s#anȳWr;u5Kݤz`?ᴧWP}0蘧tvvb^&>+-І2ӟ{?X6F2ٱo$S r|׶d{|l@`*h#v W@Jl8Ji͜գUoLs%{)2i#M*4j){o<Bw\LH4z Fa9SArܑqUkd2 ]QtڂD Gs))X/w Jfdu{~͠szk v-a)plT, τK-iazxu_"!H)6uԞI=&,S\ag55v܎]цC^,Kg)Hs6%Tq[Nwƃld>۝.t6̀ NF{`8:W >B(++%HeP}f:} <0AIf ÁZU\g:CkEIRT!o|RX(8+וMLńC]ӝ߰Mʚ{} G0'ɠEntV=S^`cէBh JN_j27_ue'ْ.z~e@e=!_jm͸Z ^sY |_TW"U!i&,g*wޘȎ yxouL; .#SYTQ=CEZ3ZZ*e, "[(5/rOKS,җ|e$-:y!!p($?007 @re=JZޮ{$QCX'>!?rcS@,\ (5VPC` /02me!S Xӥ319ouZEI+"?YS.tYCf@nxO;`{r-ḜAfSᠳ{;r!: }4 Տ0gPvZ0 ĵ ;U//PAlhY+Yfݷpxyr?U $C@*2GA7tLvkDeZ8``>BP혂A[&^]Fl8MYG|[r@oTܸ=6)ś_TD-eT~^ VPLu$HrBd@<7齁?bIXb 41@o(^K Pk!Isilt?ߋx aLq9.I/$jɚ17`azv/<<UN`A'F P2#QΪ݇#sמlk d.f=cbaz[u ;Q?fORKA3*/gx۩h94=j}h9}XGamcbyӥ۱`1Wv4:b8OPq 'ҥ=4(gN>K דz@jaH'`sq ?o*~ưUfbP\462eHk1e0эq0 O;.>D5L=QZbjzJ,D/hHg ӂx;:OOEr-/\)z%y d!-x;2 vu5H({<0v^'肬αy;v*h^PT`[WB> j{pB0p'2;ofQ.^_rې{qʟ iم ߙLE ee7R:Ȓ) ̈m}d=}yUп?$-G? _jj?g ,`=2%| 1/@Xy; WM1M3ݻT)|׏'!&9c/UnPh<^q3i`LA :̬ *l91WYs},' Xvz*sx҉y 纖zҚ~EfXGdɭйËoNl,Ϲ0 #Ќ* v+a7Gh=g'<{Yܗwųϒb0XtW]+y׿}#p-y?3R./^:o8S2qmVߜUTG)/JV~0OHu_JJP}"a4I&Eiok=|=trܲI_rܼj4p "ua..-C9̰ :RM$r4gETqF;E/9P[i?14Elz$%FI(+.ŧN7ߎq=?c&jt<CC&<ƐA۴tz3UIHZB &'iC:Sx]lDbV1,7F^d~KG[D |AU@REǹٵ=7W h̳T:t7ǚܧ9Cv#cȨh۠u(j{ފ9>vl01<[i u w(9+iJlX yAC͗j!*oc1MODeY ЪmCs1N|> jp65=~Oi ۏIS~)I{Z7Qm2_XA |Q0$vA}j` *>^B,sIJ|hPV*6P#CalBiYJu.W ;cTKƆ:X9Ҥe+`g u%[f*925s$ѡ-Bu5ۣ~BF ]5ʿDӚ(M%q_ᖉUDǕBvXtׂj7 ӵs=|N8.xsxdejvHF:Aݥ$}(zu`.ZKWzCef g*ৱV?UG^Yc5Vixy7׮N9wc(,xyI? =* AmR}IP kИ.+ȗ_uyI9W ?$[W]iqlW +6 ]>=wu܁?9gՏ hܣo#͉%譳(7dEYEpb)cmt$yF ք7⩏K=|'lD}| UڧWt ?"Tw:ˈF_p{'`_HXu=Hh=Ak# ?-d"A R6ErJі)LBw2D1˱a`:/n6ue?TZہŋDʂ8){a<\z*ҦDI(-.D^~#"/SP< _hoE!,v#AT\I.Thw_{Q)7=ģЍIi|Tu\L>r'Ni嗒BMd!G;"Y̮!I4Oe a HfmS'gNet <] 4iFN @!Jط#y^2VC`S|.!5``3$ mɆ0p&~-i:_kdN~ f@qu-jN^;䰾;vLHPDR q*}6:SGX'dPPxz[9RR-xZ?o3w.!ѽ^]R+F"9畤B>|a;مp:v vS fV =op*FГ|[X vCr$/ Z`W# UFMXTs2?D:ݩҺ]Z=^~!|ο\@Rk}  rZ(aCWVב x_+VlY\w0r^pzQ. zgfyߍfHۮ~R﨨DfL1USʂ[q:9.6lϺUvڨQ=zQ0<&D;%r&GCF[45<Ĵ_ ZWzD0r4,YHI(,7#GT|FM0ুu#rUj'& (D浧="vtcAVlAxK4os}aU&ddRu{`0۞v7v]:/m;Կr{B)F>Cv+y>i+7lD[|b| [ն[zG0O\(ty0A3~V_[tj_p=7ڧqUDcO}ZeE dæF܌&=Kp]c4E8pͺ900ŎfqI9͡%N^Zjx ˘TtI9KfEwn\];6,`X3`|Ku}:W۔p G()f,]brXYق[6F[SW!5-,hni=ʘMiQxus[hCP*q˦6Xtmr&J>XJ̈́$~Ճ/EgX},0+sߵ7}:'n9emaOəF 3I2~aßS.U9Wi\0xG PjKΡ0gNɦ.&kAA2f~ZpiO)'H0ꅢX4*u+ȢZ{?gh~o]!`Õ2aru4$误7NK—%KnD%0s]8$=z>ڂ+Y! &:jajIY\FlZ c`R$<[0nfPzRv#X#!,bk`+o`  (dIl0v m ѥ Ҙ'_1'6 d㧵\#4Ql_>;3ΘDcs(!.ʔsߝ-#?\">2gtN A٣#qʶ˖5޵W ƥ_q_PWAlNI+#_R(_6\GcB\5 "p4_|Uz-| 3xȺ5Ĉ [Ip2dɚ{we޴SC sif p8cD+0ltF JA%,Dݸh^@@{VCs5 U4O8Is &N&x˂}>ϑ>W4QLސrgd %Gh1uzc,"M㖇8N;N (Y$Qpoy~HOչ)[WVH/Pt ~Mf(G߰k#"١W^ -  mʭ1o>P}n[΀_}O Sdby\ӧ$lgr%&a/_LT\-]VzU*qU燠eFy(P;#_aOg:>뾶ⶭpf]M ͳ#S38E>?Tҵ;Ҋvړ6b/;-='_yj+; EPtm-DW8r3(oDg$aۘ, 4'cq-\ TIb>xN7/m2K!5 Qv(2}U[8@_ɵat{ :@4i܇ׄa<{O>%yĴ3a+HM3?6gsB>82CBʘ e i+ΝFc!}Og7#r%`nՠDrV~R5 $A]"BQr?-À伎u)wZ4?jK/Pvh Lnv,)-wqoTa,x^O^H:_Rftm_Ucd\|-YLzr#~q ߦs%I! 7?ˤ)Pݼ$n" Ö~/(ڸ 5Buߓۓ'\ptM6Y,àe'` ?&gӥ\ž N+ac?)7]βu񺱻ujWUC~*2~;95Ge[1>ﰅW&(p7-FkT'k.2J~w,g9=NEG5E҇%m!堄Z%#p 3+>1==|1b˷<.i1h {բ&Oy\Zb^$-&1(yi~h{PrA B[vۢ|DlQq-Jmi\8h)zV=\NCc! u]އ0(Zx?0D)Q3_U(ەk[o5)CuL'S[Sw.p6<Gd; r>I~]|2_*wh6e<(JR 5aokE=d aZG5uCOd1ІP%3Z,ΈZ&_͐.V T(Tp)IPB3j*͒NHoYLa6@~OWbUj{]L_d8I;頙zQ#ē{(J4+H-:^3"nGl: dmʼCː|1E*\#x-dB$ =oTPtK_l3?@9w~B߸.1ȹQa4U2U‰Ίua$xej,(Yw*PL;C( HrSkzUH LF/~t(NDaH;twaAӠ,Gbue;Y0{s[ 7b.'cwʦ|>Q0+AmE#q?Ք57PYt#Ą 7⺶,R fs+36rR!`|U4Q4U6!&VArvds=O*5`"eg{ Aک=,<>F/`v=GMƍU#ɨXDbudڭ6K&2 ^(Uș T%1M xC```M1)SgO4 f XoQ*mqc<:CU4mOj_~e*(E\l:;ЊE=Uĥ8њaՀ]9M H@QWHjv?浣w!;zr~E5Ax#fqv?aZ#`#BgϺ s'`O@|h5%|l'7'ѦsbT2-/G41Y@*gˣrnnCMݩMr3rJZڻ|ؚm1KlHqDt,'˘NFA_-6Wީ =4ʬPt4gg^ Z@0AkLKOQhZs RYOPL0 y[zT.%ANK}\~;6d9փKTbU)9 ~yX mJl)Et2~I+X#1)#P⎰t~FV`f@=y-ܨTq.ۃ5frGYnr3 hg7cp!wCEyוE[^ئ#/R4bGD&Úytj m a6/9GBw>IX)QKm6|]NcO|\ZhNJS#+UEYVF'ߌE&"6]7!F[P gP>~s3.CBh w=݋"p ռiy2'e?B;-O>r_kKQT硨nC=țO^S4*4" tiW Y}yoK2DsHLڞÿ?Jé??+qINx GICz ; CCs y/x QNb@T&[f;w?ylOZLI!.~),hb-f ]ٙ;kg,[64& pě7ǸvU&/ӗacZC:^!DCI|:/[Cћ UVA.&: >^ͩT!y#=], WSoCmܴG.v_W#^ '|2auﶋmk#^},ɨ5l >: J/;.S:]ĊbicV lhnm~ʐ̄s#I?-Ren72 !3#. nN$Ej,Vsn_$1XpKT/ZiRF`JُoUơwx)dU|M5磑Vjl{Dѵo+T;v댈 (Iz\mRڇf0Kє1l4MeW7h 8 @sMX>cj)10+[*kwgt S6 L>g.#6+ ?{5G`Bɾe$EhnN +=%|;-`QmJRDa;S@^ѢpXiʁXgs'Ig8^O7R 06zO"#Oz$D8"Zz8cB'NZE,IDF NZ?>rfF|-v 鵼[]$2)} u!F&C|-\iYY{Z8<<߰##ehkv˹{s{LsKLfXcjfKfxGo(-)_(DZ 睱~~ < =0qw/t83Zay -ʐ {z9tlz®tp$2) z9KrxoקFJVٛP$*z-,y9y-j^DYM3w T(J&rlOn_Z9=ױY -<3 H%'ȝJyQ#)%DJFU L;ĂTrc%ltmMHq]U`>{ÄJ7F'1UߝgOށzb \:7sNOy?=&6Z ~aڳQ1~SpPZi]%FĈ91uNQu;d.Q-Uye]$$=8S;Qt̄; -_B } } 6x Sutn"y/ꀲrKQG.|S 6^9ETdPD#.z&GMѰ"po0QS0:*Jq̎kύ㻦D0z 95{6B> o o<,z66f~k7l5V~hd{@;l &{O,.9pV'~{n-R͖^ynKQQv@$~,>N^ٱy0Dzp|YTuc\WfMk=V[lN<2eGa4[W]omEO]H ?'V82Z9v+@%ݷ@3,e!Iߧs4ub)伦*\syÇ$ͻbqal9i&b ґ#05*yݱc>;xǒdh *Y-/UfpE$ [=EJfa㷧&CV [kD.d ;70RV 定f<ZGw2}\zΜv!śYB>EfE)AY0jb3@3 د[MLL҉Ӭ *2B fdK04w7[GP"Hclo"Q7*:8YSC  P? 8M6Ooli+^-:7Z53HFo4#OǞ6}[η5Սt9dz%E^Ej@eׁ|gr|S#E^ !zo+ȸZlv %1d3馉Ðɨ9vYצ7m0q%PkyK.<ٓ+^s;Ȋ*8@UPe[8 96Gl YeE@ _N@M9SplEcJPAS YL]ݛa vBV!0,zNvOcJIȻO"$L.0(zo2*Dzs[{</_(ýE =SML}+Xm2H۲P} R=,[k7]J( 9# T¨s,Ymj54掆?WNau:ے;-쁔WO5([ oDP,&=Ē۱5dS{~hLsffT('x8Ŵ᩼qt8p*l;zYS/l[́ 7xG&QM&k^v഑NgUSMOE(٥, #gnMN[)wD^{2L+qC\ c@o{^'2]랅Jund }{s]~ljoc(d(z{oB1chk1t48vuC.LwC eCy06ЕJ>O|zbwXC~ %5YJ+ș^ӕ @aK'ѝe$(P(=6U=[q.viIzQ\6%eHb7@ Z\S$PÛK-̔t3w.E׼)rU.A&`F!64Ww]n=4U]ͻ"q\ Tï ؠhwM[yd u}Q3*蔡JttF`67E#\#*Y(7<1p6; Fd+Z#UΪ)5퇃E8r١cs0"W%cDcoCX; p5!a~66@pfFl*/c>t"aTjL#ϛA58~64]H 7%ς\bjk H Ia 7zK\)`JF[=5H mIG.@}yIXi 8'P`UմCd~v%b==Mƻ }3l7D g{6xo5럄vJ+,UΣ{:[;7+娙Е| Vz%bgō 0Ȉ-CV+`dML-2JX-U$sCAl>d:EyJ<$5ݹCEy`B;" "dpY?„q[p7[C``.ϪP0dI哞[ݩG|6 Lo} y֩ϕ;Z8%e`f(bPvS/'- Půw9RB?6 gI"ߕ!I*'sIMwvȏn/'6{!/IF-Xp &(`u;zV!w):v⇼8A| S-52XiN+.MF0 q6}@갩 ߎC 5rCr37}xRƫ6F79˧(0Zq(:1̔sL uvJ xSfd2}*Zۣ\U2I$:POMOhN&P`x4۶(TEmS8R-y塇xDMO!"fBЍveGeWJStk{̳:#=On1l;n-HhpOtzF]ێNeڬ//{:fh.c'=b:%lWM[6a`wCBIǐ:,-ؾG6Oקi V砇5I/p6΀Rk{hN֕?'iUǢXaſ8~DŽ} , YAu2'.D>IufigvUYw #isߵߘB wJ-Gxyr})ΕȊx!}O0b= ZIEYz6|!ϵɟHuv+e?a("abPthQXd7Dotkd$&m>oB?:f 0qZaџ+ o3=</;͆eum>`Pú d8gfL`D k'UbBҴ/ItnĆ_Z:w_u F-T6h%K=VU_䩜^=ǡ{sel s6VǴ twyx\lC*dv`zșvIX'(Ћ 'B0-{7VaVxm*f8ƷLqRQ\D\Bhw!d 2sN Rٟ?"FhSzKFǀ 3$q ;./3yzX~z_?MWl_=,I10@7ex&Nbi)~QI]\<]| Ŵ,²txf'ije<]ξfjZCU+@]u2ĻG*@Gq֥XLi%{6#NzqWg R3!N%>4 27T6;JX`+L=\쁈W̹8k/]gl[ u ǢwzFATjh&=3xK/M&3:]PDžg|@mf iI,u ^r6TWNτo۔xNI`,A#y ode@Ա:PNdj*C^,0oz^BJ]6I+> {MBQ^ L?c郠mv6jSwWIg_£BU$-*v^sa|\ZechkyUYńCJxOb:#oF\ᒄe1eq CUB>rPCxqPc~,VA逷תv7IyGD/9nP6wY΢Bdv@~0Þ#h6;$^(V|>J*9 i}tr() ;gJd:4g`KrFDQu Zml1ATsҳڈ?xSC(g:.Ӛz oV9TcyMv1ϗ;hҨu:ga觞K;N\ rUmMf~tY0G]qTAPŒMxomd 8JK mͶSnxΆjԳvҡ<ז{K$-錪v}^"W}O;me2_<B#Mbck&Vjшb v" E腟x=+eZ<"Dcv3hymnw&u+ <\CSS96Hˬ5 *`Ehh.>4$UY-&#i-y[4fs! PL8'Z-> 7DR(d=3A#O2h55k<ycaƾo1.X~Nb97Jjtx`Aw4gMW g-4-?tI{pXu2ѩ6iX]&n6ѧ[M2l{yį5KO ==ƷS)Aaڃ̎CV-?Wd$Ge;qQ,. YmSUUfɤb:ZmCUeY`ėx EKM:j<ʏw[i!Og~w¶0n?ƒTv uKEg@Iw(\o 溻pi'>W@e d]|I嚥}ܠ]t&O\OnuMb :e,,6S$븲*0K@VS|Иr~3P M5'g~wG] ,!sF2#O߅0|/US*ݡ7R+~@V*{Cg}5Tjf$8PV%^ l;*Mr@.lSM&9_ҳ_'5//k|d R +*@Ͱyv W-N^[n?: )ũ+x/K j9J|wfcK-I+m;b/k u`Mٵu$G}ҙrR2b֫R-j{LPNVI}?9QfR25^Y֕^?Iwж>NUfDLF%K)#P/):$4c Q H{ف0C1H| UZHiFgѲQ˘eUZkֺ(Zjڀ@dw a-jqI;a/E hbS^.Dڜ-ЊMf3;*+)&^6}3Q Ec>Z!j3:#;;@Ϭ.#3D i\~`W:1QAJk #%$eneLа&fWdmCrXL¨>RFaՔɂ֟fgnj3]cר~#wi4/SLj.ĊyNYrB&FMv{}0I5uurpUH B₸L*zAU-%=u=R̟~=`6jqo!S PDȨxdv(#xBgFdxpIf=ma-Y>WG6dOفG/ۗɚɹ]'RCɰuH}H@dH V{$bؗ7kr*= -qxb!ΫD6xzCZX-AZwa{jRlv@qrp @:^NO-SHxw&B$LF.wj|!Ft>iǜd9,EyQ'v w3K.W\xD'm?6 )[Z#ha4cr'OT%J`+}2+E1.<;|,-m@GoKU LJǀ$I j(;KTw1ۛ=$ubӹSs}$NnęF>b]l;u+xMN`_LI`M(-ú4RϢ(,J2yWeq1c (/臍{?w5)?0Хku`x漦'|^Hfc2b0$y@c |NI7 XQPC{q1flω `zo?uD95he-H8VU= |j5zm_$uTPt%|c,7TR9g:}4B;f<ɺyD Ø-M7Z%~#wHގzym'%ÊwG^aY֬?Rӊx3hS'[rh$`?rҝif4gG ^ZlMvLsjOLҙߗVBf</{#LujXbg O@|K*5"9=b~h{ 2(7Xcи"S`[2!$$o Rgio4_]=乐$}Jk̘J8 YfІ043#7&Oq"ȶƈkVj1;*gY|?xpp!MU2_-h5,_^m9Q4=vRd.k1CL^)iv:ma@+0C`̽#lXQW_/W1nkK>Yd!Oѣ8 C< atSYl{ʯ_]ܔVOD@4If/^) 1vU$i]0 -~$JT~=~TpGdrHľw (U(Xo%ŏ]z`,`L 1o(oYP/ br𳳑̸8m*erx/A"#Bm/L逩\MR Tf&δZ(LtF6REQh?e&' Z|e Iʨ,aMf1Y]:&4sJʌpZ˽Z,p"RRTIw=b.RO"'[Oޞidol* *M[p"04&u^Nv­zR'4BSB>Si\GG͓ mI~Jng#^MȖ&9J$b|ً/ h{`۞y绅a{*D;.u6HLPįۊb"i<0ҥFӺyƼ S`:Cfו+S"QeY{. dq|lBtcVՠe~m9vqzTO>Ve+ .A{&Y6 ݉ cK/Bon D]-x~FdHL/\,&56?~.n?[}WAa*~@" 4t:4rMEچ zUt >Hr>z1^3}̮(t`)> zwZp7jHRWg@'N,!hم;ang`"liaT? AR)z_Jȫ閭g"ѐ޻HdAYIQkYTH¶O殬z,Zf33 nLT-U?b g汳kŶ 9u9I E4G2lJn5.HaFࡩ Hzx҃ZYgY{]Uh3нL䝥O2W6C%Ps7{b0A1iOIέ|bZ6(>(nQnbP;!Z rO5^Q̳;Lmdl`Bp.}N^Ֆzql4tyk˫?6"oLǣ';[NrE ǀiwŽIV)0 3 ƊQdz'J1&[$Ay,e*FH^z6_7|[h! dᵞQ֌ 3" Cas #W{1X%6=Nlo k)Gԧ]Sm|ꪐp ryL QwyG&3ίp7G7WdhP׾l+%]xtċGf n݉]6C9yp/G f6 ."aj5ZfXL %/9JlQ+mt__gq~f=ڗ>ԩ R }Idk=/ X'T#u;J)S5K'g$y٠dx)8M.]r7PS}YmV۞>P6czzM&8̊xiןҍq`~*.qS(A`;~1k&Í@wYzD#/dGe[+>)}GK@L`T0duw2 /Ih_S-3t+.𞘐WHt/7`6L%~$[09-d|PZLn8MO3ؿT}"BDT%^蜧#ت([D7ABVy4uHὌ\ʻ%¦oƮ]\E5g&}SsW$*!$ liJn&墈+" 2[ȥZZd1_Jd>ڊYG kiRN!q穸e5z^{Y5VA鿭,sZ9_;Ĵw Ub:i{?,-҆{NG׽oūbVo"y`Ey47wl,bÆy/vO4]:$Ve~u}&.0lq-%'ݿ13)67el" uˆ{b^sA[)C-ؚV>h^ksoj~,XOnM]E~c>ݢpM^E.ɿ@ˤV.|ǸirA$&5xٴQp'ˎˆiʡ*r'Qm}4Pމ6P\,Ӂ TUNgP?6<6ԠC$S~7q\3t9z6+&͈)/HJG!w&(h\4r IikjRIJ^VϒO陟/x|J@~hpRPQr|LhkGexZf!dwӸh^$۵ҳËyeX,u>P>+!E#g:-x!`&vϙ{z{4R(^1H PX(l?_Juԭcd}mׁtN.Y>#r^=c4hoj&in v^[nJ.7f{.V^6p. >V.βSZs `V?k]7͌ %[ ƉwY"4{m0:<3;īϙ^{<#r, 2msq@Jbn˘>4t7V}C51pJ? sߍ<2;zwIʢ "ӹٰ< ݟJEBrʡ.3kNH'lgG<=qZ`ءHK4a ς7G^.Of7")$B\e9.-sx2﮲!-_hNCxəڥiC' FGцT4ШG+;=׃Z.f=G[ %7ㇴ {ϸ:{xnc:Mڋ9gsd (X/64HT,tAaY 6ZJ܁z1/WNh؃NkXAe?8Sc0d`ZF*iNeϮ:RP*_| YnBoPgZ|NZpsw(XF;ähFQl} {2nPΏZT a#;yf$8r>Ί 5I͂:~p츫ztbBaA>dX4W lY_IJ,XX nf{(BtpY&:ο[hO)SܱhRx߅ɬ1ءEzlr㌻glsj胠wI q'1wno6I lm {&a#뇔"HqQ\cfV)|KG)/؁Gke Y9|m1bk_w<~hu-CkYsET;LVJyf4WKAvo#՜w }nJ'Ob9i}u'OR7v .WK_zy<n"NoMEgXO5G)Y+\|0bd-.ǜ6Fq{[m:;簗24QWܨB.>A%uC3Nqˠv 2fZ?snO3?\n]2Nh-~VNs2 T9g\0bJX?~6ʬ[YZa!4[iO3!ƟV QCsokW.|ΐL-K3VxA Ki&)94~fYW8)򛁎ZAT7mu-7/q6r8d7"p&38ÆH&d[ZJSu;x FHUrsf00^\{d[$tՉw ;-+UI<>8MNɑ"F+we aS ⌨Fi60LڭM(x8VhanQ@^(ք7{>3^{(,,p% LmF& A(/uf=q-h5߀) e6ew Joeڃ+D>&cmK:ꉅͬRoQ0T{%%bOk!0/~Q%{^_eGBp;7.j&cQ'QTٜ5. gHmQ2 bO1>$'-+*eR!jzUoUvJ!-Пs uYuǑJ m=I0~`5؈eN%]` f;DIzi %&8S N';?ϟ\(P !Xv&C_[iAgƟ9e"^ޕrPV@@uE$b4)B #LobХ%O{Q_6PdU&SIƍv+YAk1 ƟOMtx!$& D{^}yT|b667=Ib.Oݣ/?:K|c?HI7ZЮI#6GViJAo_5um 2Jv2֧zR`dlePR`{cwMTHޭ~#OڱM[\90M)}b<ڐEC^-r/ U :V)/-D@B݈3$`i8"nŤ< 5ߌ=E Ʊt647Wi=3Z}(#n #>-eBp5{3ku1vNpH}+ =e's{v #}ѯ* hr#ӌpcFg9XrJg~Y[-7m O;uK+[ @{j=k59๭t]=`.糦 Np?5LqO?D8V3L'd`KXruhh=#hNt2b)"cw]p=H/ah qjtؕJ3O bJ\Aim/"Y0]Cb_k"lɱqӛZYO[fyWx>e0&h{xyb qvG̝36V0H;9dʫJ{V1 VS|ң5o(6cAR%^ v@@( DXu$\+=Yn"uAIt>xa;cbCt0+q`5'a71k X@6I 2ZHy{EvrV~JwlGx%|5. 'yl(M'k[v}8"N*H0&Iw\u1 T~Sd8&)}chF?#bLtcϿv0OG!Պ6>Oi15iLL]RVxGZ /:jd09`sc ~ Ҋ݌H@V$hm6$q duMX ?T0ʒplqG=!ԫ:qMk/tn *H1KL|.NJqjlzANs$ZE?>zhњBiy6B*x<oB%//Pg&Lړ ~|N۴d_%T7,'|5K ԦćXMāK&&HbnC9qh4qHNZ)I e/:FlBN|3=2'ZЃLsV@@Lأ<>_y@ >^|COzJ~Q=$9p#J y;I#'ট|<sj[cp@K90}r7њ۸4-5TDyQC`}lcr++Feߡ}͓%õӅѭ)'iCaH4@R*aY: PS^d8lC@3ń?u gѝ3,ƴ;S;_JER?خhIxGc:cAKuOgWfc|}uYSF⽕psNtǚm++U=&tr`xO" .rT6g<r1ӣ{ACΓu d+JVdEq%+M{ H{=ˣA`S0]/jp$fI琰7q&@[D߻nMs{}?]oO x? }^N@8P AKiQjLgzb1 H~駧R Oz _ηG/NNR`<&Mnp/ L9"ze6w[@CG"klHq7 = 7|hPPWI@y!=%ٕ @.Ik j̹^ciH >$S::B8PS\x.08B>S*X[vUlG4*-D4gyo՝-ˁQາD[x-Ӊބ @_Zp!2tsRDr a6= *'$$:L),8_ B㺜7ꐝ@,lMÜА T/LU8XL PއS `#9N 2W2)D3^8%)0LAw{C4JF:\jDno@SOJM+#\+N0|Bfc&ouAZɝ?.kvxA;g俶;PqJ":0!VLSD9k˯qafn<9% 4+`/aWb=dF@޸j\QfuC- 㙑,AvƁ4lP)fgKKZ纈G`,h4?gCUG64_T+p6"h6(^b eB!? ;aݳ#STT+yzp9n7mJÆSa$@c|3!J ]e1ޡk50)߆r)Ǯy.tVr"[pc%/rT |ĥZx{V$̑cl#Յ<5X5bm5kv:I 1,T(̖6tR[Aglz4#\핮 Xw#jxFk̫fe% 3Ev`m1K( Nf}%ˀJ$niȝ&)'V(We}wxjPpIMSXS<%[ 6g]v\OYkB"NtA{lu}:Bw~v}²یYa5K0™<"(@ ĎڊW8nrÇوD*c%1=]<ۮ~|:3W*4Ψ.Ja %r"}#Morג)[ZmUY, jlz۬jD=/ړZ~Ohbc ZqR6JoJAc-+ԙ2ǗeBS)|f;%ؓ,_o|i./k(aG~cµVY2n Ҕ)NT9O>7E΀Oԍǃ fhbx -[A 8  3U>7d~ F撥.Mj24|ZɽY-ƈܞ%Wg^<1D]08ӝnwD @8îI :[lK0Fl6!@бH]LPM^Oė✃ZfWeʲu_`ޭ/$#zt̘^t^S=#pLw!h\yKc%{О30ZsWa(UF|+Iu#Z HdK.'q-P4ZHNX םS[dzDY]ixVGz e Q%}ގAHP`\I: ohyqUEܬ&Ѳ%kxݣՊеG_I)"l3ydŘSLdu;bOjȨ1=Pe#"~+hI4ȥ!cքs0uMx`()K"noY( NI}~ckpew=N3і2?׶R3<伜 Lfm :7%x+Q-$\ M3{z:7!vJdewpם(bVsԃ钎px0y ;-iv@%f6^$o%>P"UmoLkA=8iq9G38X򕔚V̜RZnk1 pO0?wq|U?O4]Ela$C"bM".DHQ87)).f54 OF/B㾇43ݛH\4k1>'s>'9~+IgG 3FuCTS5`qgwS#*UtmlU} †OH&RZKz }Pdw.^} U,'c\䛘+` 8BrVLc5sXLr wHκp$ƂƤ2f:a_ztUȒ[ם|/†M"pmIS>tȯO)eQ~kS,i}F8%:5=]1}[D#TX ֿ&VᚧGKDP9B Yi&E O)V>RpE` I|B%j^^` ֚ UR}FH'X4'|4+\*J*f@:! cc%ֽ#PsvGb&Oɬ%{Z ƍ Q5pq\r2<$°^d)hkRFC-)/!S}lBoؘМP'l6i`S>${hJ1:ANDTaAPv lE՟k˭Pz5ePEmrt L0j#(ؽ.y4;{oɂw 08llp(>Dv>}AK`ep,kS?c~/=ϝQZh{ rD޼@{[9e[tQ?{y/UEP0n\7t=w' C(>1*(k&ZdĦ:eZAwd^HtD=칤aXUjnvyIʛpՒ0âcg,r 3VQsAyKc`H`v7)iEQksMklBb\&Hdj%O18Q.G]0ӚpL>6.f*9ȀSRti>A|x^~3A4 Xҁ3Mbָ ΍ p0Y7DH;}}eVy%!urxMf^Ƽߓdܴ$Y|)1!kj6X CU䶎XMƈx؊f [%lQZn%FH;E5`fg8=2~V͌(L'Q{+ qz_Oyr]xe;;8$mVEW,ыh5oqD &&m \0nz5Ekk7Lҝ2i:"ޠ<-_8 BunCx4KRiߨG5rGPHlߢ7qqD=:Y0}OAoYnguCei.y-p3_R/Plr "FeXoҙ<4o՜SpyfԠ3maɡAN& .0lsNSY N t7IYSGj(]Y-]yjtZjm XJt(u v9 >6Xb!/=jlh@opm 4h9Ĺ$=JR+IQug->7$<+6ADgfuJf)_8jZ!{8`hvbqk8QDn2OUibn='3]U ډ??`]Rr:͡0o B08!nnkc'A8/NQ2g?qo@E-)Rx)59ؠo*mY\YrI `@s]|s\=-NJ6@Q螙% ƅsɹ(I智v( Npd^_Bq,_x qڞ*S=(OǂwxqCSJ^RծuӊeM*.ςKAqq86ثQ}ЍT{8"^?}57coyǞ#+}gD^9o2ldԍY~k©CBδPg̨ \*iqH; !-`X{\!F5ڀۖLiGiǨܼD\(JnEȵ| j^ lcnc6\(FVkf`n+_Ʀc["(~/hಿigPFL?htj-1{ 4J!ĻzzM|>}\~XIϦ% 2EC?Z>^ym&4хE:(fWbA8+/۽`E`& AbжBiSZOm|Y@k4t:-]@ʘ&vɔyx_xGVrc UKLfiWv1&`;<(O:MG`bz+dj;shJTR|_H9Ŧ\.M~eQ3:«&Z?#9k9C]kmɵ 9EaxOa;B6&23W=~ *19Q$Cpꏠɒ:sRv+?cp +B 7^)HQS)?]`p\ES*h҃]mRHM*?~ GkjaI&=Sg['@Vٍ0=54QA`͛Bis9O9E^UO؅CJsM/{2ӷ 9,fI\-j/2_O crfMsZ|(Cѐe |JA!\=f _:/d>3Yp- KVJZ| b覦@Bj F!Xܓϩ]/m;]hPTY$[(_ )ܽWNy8|}i #8"Z9exMu')95>lKT2v$pFj , mq0t=UMyF̸"g U Oc}wQ [QQkȚY8Qt!t܃T!+43FYeV MPR`g!oΟmI~ 4]Xu*ERrJ&2@Pp .&ILWC.\gF`-nY.O8sNWA戗WhS/nA`Nɪ+9^L=earIõ}M񱖗6\P.NJjHI T,H!jԙ$\Ω,:ɡByKSI:tV\t'AvՀ^횪3wma0R7 C^pҢo$G) =!x. , _gkSN2 >m**/b9:(l9 U )nL_C?r1 É@&V3 U-ܟhN;ԖTb>ԟ3rkj75X ꂓG@$H(*),-pBt/\7ct(ȍ fF}Rg@s 85C .ђ6xEܱK\|e߽Ǡ4,,_żߌz$<xxH!eCEv_$LE';.<j3t8z(0ZCŮ +$֡Ͽ5 ~AsTg x0ojzCSިjwN`nc~ˣ+VQLduĒ$=\C ѹq8eNGMU2+O);S1#QNU 6$덛,7UeD91CZF@pWi] Q R5 E4+ 8v@'d3Z^T{`3* Tc 2(z/ߔZih6'Hd?o6Ѭf;-Ұ^ƑhF`"b] j\|../Ʃ D_ދ?7517M(ף8lmW#c\vWV4,?/b࿹wVQ#-p6˽-C {x!$@ZcMB|`=uz=0%޹&GlucVRCH5%h?He%e&U1٦Mڭ۱=#L+̘)zl~f!9cюv#XX˂衲`5q 3iGJ+_U'z磷/=;sQȯAϹW';L[jS<RG}g''-,PQUG~_:τ'"߂#`8WcT$ܻD5n3ѐ*BCJB3V23rAZES> YQdi ]Fѕ 𝃨,]lZ$IyNd /ϻȊWL~cM?EZ;MZ(Pe㟇y`O} %1?E]|-;'1@%7+A  +##믬 K'=׾x>n[o=^}U}PW60IaY' hK a xB$*g6g0}\_/DnT`#pR&E4둆 YHz%B@pr_RS"½D%1a`*f$Kw*WuwQ?cիNgvJ^WNw=4~~.Nx]^i19P\K)P\a9؉[x[X\?係WvD/R$h&H+ܼ֭JM[:d9e@J.d;kP6NVzwY*0N7Iy's|SN$RF[rP]6LT7qw R≧kz Ld t g "2 LYg=yd ?RG sP"mayt9A(^ΦQі![0_bOy$ )&-K+r(;OH}k'x<2E@3e3*5{kw7Yy&+F1<}j#8NiE5PPt35@@$Iirl}|;2(-(]!>Rض\Hh3Dl5G ijZ^H.k.&uK\Zdblє?UE>[[n.0| u<3bNCoTL@jAf0IY÷5i?1llt?7y,ռ^՞7@y -\=P9Vctַ8//~U>ܣĘ>Uã۩k M'Kڪ >gq;?[7Ǭ\>4ڨ SBA )rOW-v] /<#g78GjNR 7R‘UT8/ZMUYN@N$3~| elo<hjw Oƅk#0+x!69,= K#46*/;a*J\эVRFdt'`)HX}x]:Q69.-fY~GӔ AEhA~˵ϫNTVPL3pʫSVL13aPc3Wm,w;ׯ꥖z0 bNBt<[rE4<5Urhl?=ky[R?6lCZz*fcY΅vZAc[{˅{A^BTƖСx2.0'5U |ML.jLhDX`' YRɗu\W6ڬw1 Bh;}'6ti[,tq\yF|˺5ZUs2ȂfE3m+lPz. =J"F Frx]k%`<<7\һe%ww|B\.vk6Mfv+*YXk@e05fMȑ4tG@K@Pbn^h/b-GWn,`\܊`uo[4z(zWS}2oCI iDudU}O+ U;xgХ^!#}{U6?AÊ%̞>aI5u53KW8iy9d;B>4.jœXHBU،^B^ ngcp -/A9֥-,,6,Y8SG[n2(`?FU}b>%퀱2g^k;-v_穾'Cݢ%U`gY\ϷE@&qOXzH:= ׈Tm]j!ItU Qn9ݶ'<%b$J ȍCdqڶa$s} |U2L3nU4́M@\$iA8حa^f,> `Ʌ6QNYsgĴ${@J0j564gjژlΐc^oW<jN6@-5 WOp#TKp05)u$ \ixk )IBGJQ.6"uluF{HBɌSG@M0TfŲ-B<6Gu磥1τqN ģ7.6ݙ?GH&̘wRřNm*!{d'QYGbGmh2+Sw6^TΙ)]"M!}8yjҞ*rO@9Ye oF1V̧`,{OUp5SX(qVK =G+/a=]mMsG'1p7)> wrJCƂ歛nBYU_#x;n8qs 0j:#u A'V!L J#AjA#?`tYŠLA }y4NB%, '+R.Hh,#T|oz,Id;#8(7KTzz1)&l*dd:R,+K^meW עN5S=9!t-~KO)Bp49ۤ\֕>GE3I'&9)pX'RN/ 5R#:3KpsСz1 o\U:c^zhNwPr4)sxUS$t ѭgt~v .jױ mJ;ƻW Ӊgɸ&%}".slUn٘U\$R@1JIaYwۛv AF] PJ`1;1 K6 K!SBOIU[^?=A,d&+Jrg{Rj!\Ww}2'*g.;*&r8"E{/SA[z(b.W6i{&;T7N5A X^[_n%Ł\Eg^\?5{S)< xxds%77E)#xT4ؖG"U#`̿Qψ`# ܮ0@4kv2dc/d5恰۲5o-Yf{YiE}eK-B4B nQZ؎^ cLy(m;0IQZ _a)KTϒv|RFVa ZD 笅@V$n6Z;$7dp>3F͛7!HZÉ&Da7VABɇ2U>(A¯&z T179'f+i2g{sߴy3Zۉ87C+q.?zL>c/ #N*+\n )eF+:#;1$ 9~D'ӆHh;TC?cx8/m9-ِlw*Ϩ89#Rւ.G;ZR[#۠Z*瑐m!r_%%|lt TfJr8ea{m1-?9|Mǿeޘ&Rx*RK,d䦈PuIy7@;ؘLvG3s&x\`[vBime+KQkQ OIVT\ЍIN~G8g?'RuOvK>ovȩL!sDWdn?IXk oܣU~5kd܇eɼϵ' 7gH8nFBnSUt=H2%b]QlŁT3y~TYĈA@+."K 7Nys}p[.P2u^ĉ Ѹ_}Dۦ܆9&ì4+2yecЖB] u ` ~R}Ww#Hyw~.AҿWk$hZTƿ# $Sd㻒)ԃXCN| kzd{-CX-vd ?_ @|lv>תp%T+8]n%d?lm7ҍP{d8[Mu\_Ѧ4Hbx\YZl'd#!RK* /xRk2GZɳ2o@}iu?ڥI/h&s>((%tcG^}"Ako#t+@ݮ&=T,qbAK].BHbx9w>z'R C;bpr͓ 9.b8DxFA@vﱣGH mނ *Ҫ uE^A5Ra: uJhDc:Ͻ$eք\>ۊm׻ϐ6PE1j.I4-i #TKPs8Nao|JM ?z[ ô7˔Lt_:rt3؛% /xNw_/6Ok)Ψ .M OMGF!(9n83S_\-QQ v@ƢfNQ7 "AM/O[nF1zKo|ud~44frW~+`}(I7!e% (>4 ^W?MAVP*hXmͯRȉdKhcyx=^WoyY r0xtgmH6q%C=S#E F^nu $2M1P׏gY{1C^TU͑nTiC e[,Zo[7$'VZZШb@ZV< AOYSS f-,Ŋϼkzp(;0-Vį;k^p 8 LpW5ˌA}ͣA=3/$3o 5[A4ho.r$' 5 p-,@J;:׈Cy(t@/L ZNX4s*0_| ,>:'iAMK[ŤpRq+ʕs:,RڃiGdlAJt̆~8JVE'qGzo_^~s|OߟƍEͰtS'yRYd,j{/Ef΢=(Fmq2 `׿ǫ6aFVoj$OC3`aLtLdKdLD3ܫgTf2,/ dmb~GH94\޹˻}f=?^˜OAPrnꟸ,knE|)pWpYڭza@KHhE~ԕ0"k9,q(L KO]2O9F|#3Q7 Rn<8@N5q޷+%ԎK8h%!&mÔNAd:rA-jfŚt1(H*_߽JamxE0HMW Z!3=*UA@m_gMĄ[#,τ(*z Xq?zX;AEHI/[>x&m>B† Uk$ '(\p1ڝQ߮RG`@Bho4n:s ˇQ´{{R%IB/19[28a[D0 >![!3pȨC/J鲻Al9pJceWe@h32kᚹi_H#lq'({s.ea:R ˷O'aڋc]#e`W0ÓbRSOxn'x:nt@Q* ;i\+zm~(|xn>D3ʼb1[E)FeަngϬE _gZ'czFL_/Ī06\$`vѥjz(F+پ:6b%-彜dװ(Y9%Wؽ# H#*dO}/ @ۭ .\`eEnDˆKOP! )a%u&O>򫦋O g\iȬ%5@>ഞmv'I\טmA抁@PqW9S<Irmw jQG$9@%Ғ iK'™A}2Mk֣?z7e7p%4݃Bu'qcۮKT>!Nfo֪,@r?\e#qoCuI?-4 |z;F4[.,-XBvF %Us 5%x#2(ZC<\F}_3M/q2J{IFþ70Z#H=+%7*2J0hcDwa,7}h{ߑĩV~œRkrr734d)ZGkA^sVa`żC+,[#6h'B @H Odr+),U& 揌R_'P$!iJ ΟKK"E#]mKֽd.nwܿCoI`%h%SL;h)-r/Xj-et8itd }OC]_[}g7NƝ:`⺒ov и@FP(&"NmxCW-]lg0o!AaS6 @ȮR.V*r]IHU׸S2H|[\V \ڋ |J-xfs5=xX'ЕD*=1%j ˺n{ }L$x[b ڷm`quϲb@oQ =NVo8wmdn cvD]:J<{O=w$Z521}# HxuƼDTYߣ?T̽(]6=g3N!3sCHޘV ُex6_C^'!Fh1%EP4peұp ezEK>t?NwZYhpBA8>$:-#|;K͵>9?jm.1ٮuS54`8@! NZ+ +zg=N  m\0*IlQ(j&sk41&D>gF݅BLS\*`F>.D3aN.4㻯~㬍"*8֫ûT4uoR] >̧xya^2JmהデXx>#`-"L}Z>7#L 2wYs,Jf5_\O -$OA^V_U$ YVypuP ,g++Y#yCFW0Ab} t٭ wK ̖ou?Z!˪^.#lӈzv2eB|lW23|XׯW/|K]w鄼qA6 /!,∇!{g,nZ\1+oרQ{ *jE,_Gny†xү%{~3MSpX'P50957ݖ>]DF0YzιoF;l9A]̉kWH8hәpΛGP|b-4lSp2abAtܳ E3WB dƞIBU8\=?m&QHt=1L fs_SjhL۬S\(iAjR{'LofLMYu#&2u&g4{X)/h)zRgxj i>r:gc=Tes-lWzŝvsļny̨D!ڹv՟ aF w9^ھ;P-/ Nb.i)&)f.h سlyDfMN2w`xWX1AVDԴ=ϟ;{#Sȕeʖ_m く쇵N"^fxNck4a[qi4" MAe9vӅFZ llWc;20GhX!,p;%μ1:*qb6S:R}2Q"ʘI( jNTns[PY(a>.sÜO1ꂴ-5A3@o[ #bfzX@{Z>u o12ԑzӊol%rѧ!Y{&pÑR\[2W<,[!GYw=?8v$j},w9X 7L"Rp&zWlHcb;3Yd5E'uU7L(;n,4V\l|NtL?0OmCE@pe"71s}ٓ.Ua uwܙԦ%`4$FTL1F  S^yPʶNe 4XG @?֔Rn) 8Q{>@Uj_TYVn D@n{! &ġo2I;z_ɧ"-1:[(t`y`@`'"yگJKv7CdMU`Gf3>`V [ (IJb٪@? ''ֳ.Ta3Gj9=Y۝4bFu}qQlvUjkha4Z.IPwt ՆiY,*A ԶĴ5j Om`3 z= րެ1CY nJb:}hrz/=Ի$zsV'!lbGeXG <4-=4 9Ɍ)5@ZR(-PfrG@pZ/Z6`x| n/2 xw/#^jMs=RJEٳIArJw_ǐ[R#)C %LDQ +v7VAcψE~jG~-uJB6FEV!/OUZfa{ vP`ݽ|.kάxIKqtcN>}X\?r؆Y߭gev%}s~u8_oo+5J|.CB/os<4^wެL@nE**4z(`mW q$u p.E>dWbvB[VHمW .|38c(|aGe=7~+A/0:xܻ=7`*+0Q_!xAjZܳn&:ŅYCS/OPrHG|22@  .`ku4[t=(󃻈V_ƵM;z)QbPV7(>$w[.B/q/ېGCoMO"iV뺔A{*q6eY K3؟0ALc"Xڻ:zHO'~cV ; K9{lv swV>ۦ:M(QP:"( T/.ÿLy ;#9 1gd^ [fr0H~f'q3|0 !zQf\{RƼUhq?v+cz#%X;une:2:JaI\*ADH `@]wǥ†m2k=ڥQ7I2(VC«;:22Xq۱T~ğC/ .">oQL/6lS@E'ia!*tI{ BoX> 팘Çr71)'+@YSdR<uh. hIrxzuj=`M85"QupqkA1tڶr;FRu5qbOzH-muo(G{*x_nb Sf5o4"M* oAҕ"TcDYGr v7mb.ARtX/ tE>ms8o1I&gI|Q*"v,M.mPpL4?cW[]O~N؛&CIZt'rAV7Ʃ*| V)s' mc#pn#M7\OJISw W48)X$ŐL׍kMu!%z" EB6RuMmx #By @q  )Y<{XV@H>BW7p!SkN 6 ?7Z$bO*_ipA|BS}ZB D8U|Uq)4љ 3OZJn I?(ܡ83F:%DZ:Pn Tw"?aLtIQUeך'n|v$[,:HXǑ%j[-gY,)@Bx=?h|e`)c}J2I٩i`ft^)1kCƠY_iC2n>T:bd8, P}Edk:&1z{ɍ1 w*ξ9ɘ. ?qwa!ns_Urqwdqio^D8 iq~/CyXL w Ӧ}.|S9v3Go!WŐ \rfB',vрnH~yzI5.!QVak;)QKi+`1M>B`5 D ##I̻*O+1O]~nr_Jد CkS\c&(]=u`93:^<&`^ot] Yq d 3[o ۠ ~QM[[ >^5]3{,D; &SblScPA Jyؔ&qRH9bhS6Q>4)X[ba+@t cHs|k%es]Oԅ> S2EeVX.-JQH^`[ _V8]gu]L=QgKDTCh8vLKܑA fYOZԊ'(3<[B  3./UNpՅ0S%!ӂS>ت(fD:<(ڿ :f<薂Nq{=ȿ=iJ&`a(_-ET7q 9Cu(BOK#('vCBKf+u\#"Siy T#]|,?/=eHH/&A<5Fy݋د})4ذ9#S{IZ1Uo?z̲8q" ~G6Q/&I541d [ U OJ;cQ-@~I&eďdA so?ܛ`wąvI4o-K!~,ʌn}\z{NMT}NfwY$H 'Y*\f %=%J$^tT0)P8U[¨` Xٵ'7Xu=QZhl;d>"G9-$ xȨۇ-GI䓢%qTܳk]+/ć9ʠ<eaAS+ЫPh3_W(IE\BgY(yFtlDwT-\VS/pxb\Dؔ-j]jCD t{xLv?Oaq|5!oI> w*gX>*V#DdOx ;Ld ew *σ|L/2O&ݭ?[ъPO0FIȮJ7C|Gb%i۾BΤW[!lhdu"Zwjm nPb{ nZ7p{D7N܅.3 >]E|!&5CNOO&g2[kfpúaf.X:Ƥ-"p*RBfiUmȈ˃I1=Ԓ[(]2W$7E?٠%.6ȤH_#7_R^Q9@1EPۂ}1r@j8dGo>tډq{_0ٰ&4K {e0,1iDHF[aTAkG]YV]$]Q̽2+Bo.!_%SE*6l'20ZpBg5OLAzn{$Nͅ"@,uF5(K F2+xOLVإ'R!S>i":Lpai:N(YT{kd:Sߡ~?Yqy5Ifkj_._^q1|*Â8Ė%`%Ȉp튦AFi&)>mon7C\pEn=bIfs%̵̒W ܺ1iQu<t aN/2Y-Jgn C[Lh_E%KP%(0sedI\x)vVT&9%/DOf4~K~(W)--^+j 8qe\Wo1̀ m}Yl]z1˻ׇM[*w¾gaNP2u܈*8)W,JJۊ1[%2/Bd7/XLwl펵!eh;@k{-Q]\~'A))v%Ui*;W }ҢJ]'?~eyZtqg\;H+N52Ȕ1åO>ttbKy|E1q "bts.c1_[3 +cUvbHt14eAHh(-T92JD:`uʊIƍm]%Rq;d3J?jgcukpKbu2ᗵ 3m.s: M@> &IqEі[8˄P$`479wad8nj`UbyҡzUHJ^Yc!C#{BL ,B۹ 欵Ry~M*ڈ{>TUҐ(B|UR֤H}aȵct%_TSmS]zzoWG9w{{`yi+~qcAq6`EE?ɴa %#dzJ 7 v{6:QUP*IE z7OvIpB;m RD1繿FA90:5&xmL*̊=d@V ᜶$pD*/c&hEw> T7Ӿtwzpa'fftX\6jz [,-q&crbׄ-JKĭkN;12~ln6o6а}:W@Ь67}Q\m6l 31]tB[̢®qK$qz}]}`6\WZm^y>7ݶنUl6i +Fcx5D`̥kU1`G,@D;Pp+@*]4꽛*g8-;W9 Ic 9:<"B[' q1 B&60"u (v?l|5ZvʰϢۡ>/iN`;IjJ jf!*mZYs4?857usK{ceT#I'*8+fy|s3̧)j@Wn?q `8(*;rBf} >q9Bí(%hf-~|*%٥VdB}ږ?p[-AS* #;ڦ:c jNIWѣ%,)bKbu36/jd| D;iU*\ _,afDd' pc:0V7^~؎5{$S$!";0l#OT1! fñ:D{IJsOn42oZƓ9Vat(-Qr R=ůJyxu$҇C>Pv*HtrM]xQ+tnW Gk9[%$pBT9i$iќR"j!b01= 9*/-W_UCbk 0`F[nqv>f4uh1|#Kr3.ޜ՜Ji^5G^$oeil_DK@a Si}Y?Q"XP\ANcha ӑ8pEo|>Mcu';§hZ",i=Zt|]ej3~! 0i'^q8_Q̕qH^KKv m5deQ3ɩ&:黮=0-KoA8͆+:G.җ9kzvdD!^f p`@8!8wGMp$0 zZ, -O.au{jyCa/>gO Y!E,<* ߁4ֈd!ޠxX8ǽzfoqaΧ/I?RU3UBUXgR&.*EA!bdK:20_XQ8X/jL޽=whseUp'=15AgafER* w MCh,|gsI{ܺ||pDGczrםnֳCw?h#*\1*fv.fvŹkvp2VLHn,E?*ⱉc>'tǟFrޡpʅt@W9]%22֌7Qn={geV0d*9[7.O mOjINsu;\r0@,Kx$@39U'u+V.+B=*ٓ탗Ӕ‹-ej? J A\Q .F׊Da/s,Հ黗f;fT2 r{+!:҂V%95ʁ_,d ж/~.X\:1uP>ٸ"n<ϩ=ldo1mٲ-][=:kS)^iYHXDlOnPFB"#X;?hNE:$0`([ \aK8FL8Lh/i4K\EC HA-%,QI)LF)u7\%lSE<Ē)K&T6Y`% D>fSvP*jop.߻,j_t L'ȭ鬳ŶE)f-X*٠^yII܋)7x^ R[:'k.EwPgEqBO|;53!Hy*SZݍNJTzFՉeZ3c^;A>]wpp??d-]R)yUK bPcn/x dLVA^oOb#B缸b/_Fh_K[*~ૐy/mDALXlULv/h.O*8 sq~'z2^+UV!(Z^ anG:fZU0k}'dYtAIɠE^Y(ϯ0'UAxGɁ0JOMhZk[Є!íK&}PٯQQ/Z;i" X7-:vA k~f**lq*E 8y,ZഋsAE,4ͨ:ZaK 8W{mS(OaHlInhfyt:d*;ɓN+sOV !nsIlfL\pqcxǘc %c<+N=ˍ`:E>`}D[^Ģ/ar<)l>!^K0\) 6 x6rOA@XmWmKPFT g@ oIčxXF!lT|>IAy.TWM/f dצ{,s^3PK(n0pE慕^zvƍl"Al1lA6dcw  |qHv-MKN8n9Gpr'Po 8zBG_1o]hzMP!"hkb"QC"e!ZC,SXXkhy麛s~*6iafl7'DnSd爋Ff@Cm`7x59:RvF֏])B)#*fs{NiΎDŽr^! )5yfŹ7ꅀ[מGp8lnW=SOPY &jDZ#}K|[I+ёя"@oN-BU[xbMRiZ k,pLwlJlogW1Ŀ DIGUW!1GL"ң/ ݆jst++ d][;bDT ,28#G","={:; T;b0دoFC1 )[ ` Fɺi"ū3HE>.窼DRr:\3D?&DIӝDir!l*v2Cݼ ؎TbP0.C#Ǐqp 7cye#ex vT8,|u9 1)]s]Ӫ~ oi60(>R%lţ>Uť_^0jF@}~5^z8l'Sba"PLdX,^x0N: 4;\g^Lh716ㇲfp[ݐ`&!J4Y~|ߪ-~M6+T_P?O,\_5CjySTg_YqGI\g#J` P,}:М0t,%pb7&`^Ye{N}fJu(J\٫Њ{QSa4huKXɪ}D,Z1mZ-gСwl? k\F{t pVM#SSݹTؒ0*WW*׍scyH,?tvGt 3O݄HWaIdg_VpcmY_#n37 V6B=X^q-Q3BXV#OcP $p_ϖCQip>'g>w ]MN"iά ՗1w er9噳)zyh<>wFw%霮P]imq፭K!FTW2V4O^ G2ݕ\`j{z)Ì[d6s3VVfļM/QpmD3@Qp W=e)_h~9ZL*#Sz i\V$|Y4P qra^'#jP*KUV!#-h9ٜWIIͨʔWR4Ze2ھvU36_gX‚nDMQ@?HCbuq^}d^WE+1 =IVיIoXb6RcQ֘{vױtoB_#$]ܺT&/+h@hXcf:=GA f{ӯӖ>Jˠ[dY=N79_6OSD=Jw"3DtxuGxݛHӫ+d gsGAC4&#7J3P@j ܄7?}7'34o1TT3'm[e1#|ywޮ#H7V䃫ˍMBl‡*<3l@1A_|>1ֶqe.+*AzCmrϊk;EPQAԧד% `Bˣa4{{Mo #~}24#|rtp^, T!oVq}f$q.)Fr'ԙ\48^E9J5JD5C- hz8-މ͋:!L[ⵘy-&p^ |z q@f퇉xKgCA,(M]8E]QTxyːb7jϏ[~3N)RgՇ=̡򱝀ѣ6nX29]M\|ˆ)/|E_chg="g!<2>>鵃^e)]<$]UCp7ý,dasO+ /[b ,@CJsMugslQf`w>!v7gZ eM@BGw(RJ"Y֠:>rg.P xDj&`Z/zgQ \Uq K?yWPBR`y?|@eY0IX'GGa z6^Pl͋sv}ޜqS7~jwlE{`fv1*Md,bD_CGG^,+*=8<[DuG?K3O207 0~#]+|xӏzDl|\n$vi_t X6PAJ^ZY|t"ݯ1f+hgrahW4@"Y~R;+ygⴟ} bcx 72CػD@v+|Npj'>/f=&L FB]a`|ʢMSǣ<˕CP:TMAɞGS Q4\Zl֢EKu$  @3`TD|Gi[yIW_G˜ VJ#:uՎƪk?"оI瓠ʉ+,:4e!ON 4M;v*k #gGn7b*Bzgs0 T!UH5끨EACuU(~i0w͗ =`ƥJZ-HG= Vf0/oJi[uOϮ9A!M"8иi[ly&S/m7фΆzZr!>/~ !:v3h}ewW1ݟ>R b .k41?9bpɬ1@*"drҷY/ A&mtքot^=SC2k}g BC3 <δTQdCNE}.@ saJX#k) ,ت;>?> ~1~nl^Z3}f2ۉm^@>?,>=|2gH{.l,Ie_t~^iL6h3^X|ENsۖ>Ylj5cAZGoWe$bp*Agz "wlYثA}ȗ6Q+QMj4VUXI85e M pÿS̾k F q%٧8_WfK{'$#pr.P̱QA*?Us0}bi:&|ֳVW9:=~paגc7*|pS\V-K؄HŐ(TVOTvaDKJcγC5GgV%`x*@׿Q]-c s+ B"M .gOJD*s[kwgB`r:Ğ5/_K >?"l2P9o:vop#)x yZ}$Ļz䄘xLߵ0Vͭ_<`")#}2'˙lu"Ap,}Aӝ _m@>˴Zth4AWKՊ.ֽF4*RЀ{ʐ^#1+ ٻ5aVvRψ{L4-BZ0!!(<"2u,ugzDs*(]YXK;p@X]'g?=WL(h7XbG=t&Bl%6c.^%o 12UmTAϛ\ѨjvYwp6tnkwNɠ ~>E͜fd(d}v+SY+梆`q 5 0PⲾ:%7)|n5œ"±Y 牌\uHjcnIi[i#duRnev,g7ة t -|#"T@(p%{<VrH#ayB/Bj-[$*8ui!*UC:\Uh'rҶ_E3`]!J!jT[U#1Ƴ/CΛjj̛9c9㪏lo tj,ش-bbǥܗ9! XT.0u夽jv357 7o.+'pϮZBY6LSaeFhI%ՒP|{"C:Ch:Fǜvje X)-myJF `AdYj0( Y@a@7+ 1hzB |"Nx9^]WJߧ5躻V ,,CMAOQ9d>G/Dr}.ss;#~f:GbDCYŕ>j 7ܼb]0s7^#6 SsX c_[w0}[6֯n TWQm| F>3t\޸G;%SЯkU}M,Fb<"Q۠iEkַD22ae$Šzty˛.P8W6-`zH֔Q͠qU--DdcR*Rt'K->7 n"6͂fEj{-ƒB|%!y#[ٹXa@]@0e}7S-IozllxCBpL@Cf༏Qo3yӌ“Hqj R" Dd`țos3XH^jߛd^2bo11UKǛ2ȫ1,XzϗR 0A  &ã-Gw6>&-TBF>w"&ECdBTxGk5 IoS2$^I+H0 #Daw;9"ș %Ĭp –[tt(Sr٬v;.Iĝ@|P.<g_E tx{tBkNxrXg̗'~{uo!.;MaG -Vl:&/!F =ko㣛B)K kpoOC{0qV|E`!TzR ?_k@Rt+Ы҆itF\7?5xNhA/(\A趻*lLG* ,NVS{)hߡ;;ҝTKyF 6 !X@-do=AjM+ \!!"Y"=)~P-4ppi_.Wllљ|Q5A埆d8p`\)R #u t7/yghbul3M>ٷǫOd lElt[2EpܦckȒԋ㙳p2!_lp蔤eԍZ3mI1C6鹎t_dǢ-Uˏ]W(2h].0և>B9:Ȝk_<W:[&hA6WEiD=-zźmZZŘ@o6nK\hgzJ|V|@;FGh{ ؂\$S^~GMO'Ggjc'p2nqb{ZRӺ‡nngA͠4=ônA,anNPfYnFkQ r50݉.Gd1 VҔ:MHoaH"Jza+6}:V6*q0&-0p1%_Z+1Sa5ͣHgi>nrʾDRYӒ-quL;)݉OXX4diy5?5Md}Zy9[U|kBׅ{e͜uK6NB]]'i#R/UջC/@ q I7`xs M$ej XhWH* IcItT %$(#l|>VZliNQQIɦ9CW^EQo|GR9Oc)Kg9t pE%[fZc [䇑a|_e^=8v]vKv=tjp?:*`:8Z(5Jf={u׉谓D`=E kFXC\u:6x~uo,2D +!g2KW [*:(5 }JZ3G5d mٍ`Y 6G%y} |5yUD$Iz[[eC|i6ycCE셣`Ut\&#pa跐6D|zf~j$baՏ!eMˑ)}+، fl@A&R9xYltUgV ڜthKxE *`6DSyr~(ݞ$ƖKWkCPY?&kGxM^b:l t%;~oόfe0 Hޑ;s ۴$K2-'_')ȌTDV^#t xpT{MfWzΠ/Q_E? Ħ[)16ݍڙ [x]-XS|dB#`VeNh4~wi BmԘ 46FLbLLO:6ݕ늿j|Ô'buZI zGeQQaVN  nnE5F ⲋ 0)O[K&(Y4N+1ZEܝtisbElbC] U爍o*&t7~QICueΗjNzbTy݇M,.5#1nЊc Wk q0SG͆'?Fz¼PV*P~YbaBSU+JƊ~FD{D un 2y K(4)^W;`YC.Khy G`Rёs.,VE$Hv qd4-+g 2,]sh,N-84*s'b`a^ʄK*ŀN! h%Q_$(IAqN8:8Ri[`ǃ`[7 |8ԛRK4r،Hu;4=z\q5;@yձ5Qo2k9g(i ؒ߉ʽFy5Zct=歟ݷ!?oSW˨V:l8F,CN[Y@*\6,!yA;!z\)xV3sL ''מhς%ZxnhW=/ݩlv&^CEdb 3;!dxɳwWEkh&$za΁>0R2K6piv čʷf܀KdQQ{ PZ5/Y3@vN2X`P*FeE3jBd$}IKߌһb^8(v0R]~;($CpV`>gC~eYʭ6 ^Ex5m16ozQM8Tgm6XɺsLlrpQq efp› j0aM ;byFO00WQ)/<1:_6%\`?_0SwK3+񏨅?1ΐ[8]SiC\iy+ѓ5f4Ef9ua̐NRumSʞ / )g&2usR?2|BO!/+g7Ld{-9Bj; p֚sJdEJłU1K\>L,LI z&3yM */0_-3,陾41[dsmxpu:gk@-A2/C ,V p_F/CXx}UJWǪ0٬(.f ڝ'K_V"YdR#qL~efL."s4uᮄyl`J3.]"5/UpXy|&Xk!w\~΢UH5XƦFKČb("CELD MvFىٲwŕ;ArBbK0yI˃$uzo+#J9dpx]*@UTR`يiDt*m|ța,Ս7u9 솃`E^v"^xDr%d*>Fo"i2xJơT֜ ƫ, \KGt`fɟ4|4U^avW $זmrAZxcRPfIB^8 #`J ) GhH2}$C0*>> :>%dsn. U`[XfT .R@c)ys,>"OR ce,MD$nDbe?X)!fUHVi%^΂}Jq=-a1~aD'\ՒxhfT^+}Yg W{iU?k5޸dEKdCC,XDŹf[kʜVeVj- Ag:NpR{.buXPubK; XA_"ES~`ZH‡df3;VlqwM QDB`o\\&~2*X}>$_~B`WG`WfFR>IH ,U"2<2Z&̕hDmTd&N9߄7O*L/R~53 j !^FtG9YtqƗ hקIvY>K,o`Ĩ‡ҁ9%i[ܳLZLԱ rEB!N˞S3w. v79`y3EY^z|8{f)RP ]C/fF%@ܯB\R Ɨ0VY}krK (JCޠm\Fٻ ^WVoU*V,2Vp;mt۷8=9|UH Wj狧OKJInK˪&jӌ.al8wV91Pp&& pTjb!M8^&kwU pg!UENkgd*$0/fbqTIi *. !\ir+Ji.IpS a|:+)FR@-ZΣNupf _*Qqp? t˿=cЃqͽhc6=vHIu6 :a~*\^w__BҢ >׽3ODgR~d]!oV~Er|UNSJAժLpӉamNtadU}.*8e8b6_Ɂ=;sy+|ֈ[_.^xߎ6x2Zs)+4IK9'<'wmEr_}MړCю(' vz?e j;WuJYA,H@-P*%/AL}>{) P)?`HTQ2Ab"OGqՓ7Yf~`]#8+\mV־>?aٍ Hl z, @gjrO=g݃SQ+ b C)?I_θVZ>-CmqDݩ}HGlR`u5~PlWy_QzO Hzy\1b@ш*ޥetp+0 GoV JP+>W1Kdлm0V0؆OP›t1yPoKf Cb n.AZ_nNdYTfȆPƤh" p\oYV{8x}D1؇r}vy |&USGsŨbR,ؙ/NLD Y,+wĹӦ27,O65if29V9H 40\R`+J}xfrPfR xNu->5vG_%gWZ ߘW hWoS@ mlZehMQ?#ﳭpwȤˆTa~FKR5aӪtO9 xjZ< 3% }(gC#mxKKgpNHGfF";}sn{WIw >{T y^6ɽZU)k1efo !7=e]D"̷'ts [mvBsba=3LQ9Q}jLSuiNoD(eo{gq]_L>a K&:a7 $Q2e|$;tl OWg=M7R{0WыM(Pd]{F{+H |?Οeϛ Un:dzI;sB^xs:`!S.Lz˥P3vcR9GԸ`%u8CK G5qTO+_ӹ[MC>ZjO\H?1yujlyt=8+]f8d~Cw̧)ч]=%=x-> %]H%&*3y_wWWѦ>|SϡH]>g>BH;K+Tlɰ@DvVtf}ꌋKEGnL"a QKn,՜꿫R5h!)uB$/QHck` J^S? ' _$,]S(p *öYo)z))J[; $hCWV G>O^4;7d!AڼK,ET`{s6];rpӣFJTСFv-aOHvZ/ n>)i/~\";vjM9ۀ6^o\d~6hZNk/ؚjs%r[TAfeA΄CJ77ߕr%Xm2hFjK_ij1w6w qǿj-}~30i>X D~E+ A2py-c3SbYLA;ѸݚK'CoL $kOY>Ă6^݇`WP98ycW?j®ù"W~\m My uu-&U<\h20FP 1lTOvL-ʈLeqM"cX/6t7SVm:AU`3sMbMJu%* Vs{B/+,毧p:Z`GzPJ %9YFWiW"т`tcl~Ob^nS َv6 Nq@tnd5{x=4 6S _F p(iwҌ|<¶?'x +)r((f]aiyM,NL$9vLO)xRQyTҖ fp"8.f?K l9[|Di=9͔..'S`)"]VfE+*zhFWQ$>DG;oHEeqFe%$Fl~FK$LX"ܺ8A|bzpog^类R+m7~(dYoYԪBHZ_u`yNn(f+lĄQSv5'lݲP%`[zc!ɈH`X2y0< J_ @+{~,Wwe_gʳ4h yQAtdDP(3 '1dَflѯ%葻^ǯLN;=Z+{l#6VV`OD@R$!qCᶷ:x2>˕ Iޖ$FXDH`:g69hyn 0kITQj )A(gbk7E}2 UR_^%`'TOC^&,"f1LSjnJsQS78LÉ%ݷDŽy&Z#SʗƎ!h a~´BW*v;6- G?^GpXkvuPL 5=Ir϶v 'gU 8<;dncoYw"N0U{^F[ZCBDew=h&D@_`zGu ~`*"xa͋4;'ʔiB0E@/HJ C *׏CV3e#N6䵲Wg$H KkGo mF&!לqW$뒶UWN[7_Qrsɍm17C&De7oǢI!zǺy0yz*d񶼦#ۯW|jeUMo ߔw\E(ߺފ"0< msH[qyuW5|牅Gn*D6cؕk;vB}>׍6e\~ =o/kɛ묎 tPF6֯ *8iyʟ 6ey u97k-7PB[lحŪx CQjxψ6(=0}Y3;W2 I^은÷6phfZ#y:~OS,F#kVDZP`g{w#@lmMuwo_j+OΨT>[?ѷ?' (f'L8yΐ d<98)fP<ɑ˓!BQ'.H~rww8koNmzx)+8O綇CCP6vѣOK䬈[ݭҼ$Op&tA\dmm ՖTK70Bepf+Q׀q~e)>Prn Wʓn?^KVTP3o:8ODWˑx[<:?%_"'3)V[Qj)Obs`]>[m}2c3_v Yc2*iko7ɸQO5.(ZX"c1iD~UfO#ڕq)S 9dH7l|[f6! Hea.jCfztBؔwl$J?Tj½3e8B~Tr牘p2n ؁`,ֶ\"ۊ4lO/`;oI*F A&Ks9.f>aiyO#U:p.բ[7Yfo:\wyt U9 *]捣%"5SK r씘riC<tA`LEŽ:w5ؼz]AlO, 9lɣ/ڹu>n6ya\DT9 WNmq)Û֓~b[g1c!hճ{p޾&VVk̊o|G)hRu8|1ϙܢɏoþ.h D1j[祱.fn}l< ݎ9^ ~P 0R?4dl] &{н~gq $U6s/2 Xӥ5f'>~k@'=@岐$5IJ)SFWjq8<E`* LpW߈շ>WDhߊw8Z\~'Tsdg6 ЄE*z 0/As[ĩo 綛$6"GuuEU t[+E$ o8{efn.jY_&s!,@ϫl`I &G4uhI*B[)}AACV[\$01/;)q$i|A3 7)sdUKN֧gT-b*z9 & s/VS[w7x(JCSFnyƵ "J"aٟotc[CtS7jԿʋ ;(2 _y/8_>:/PVZuד]Mw""e!C3q@sj8HSO+ru6mRU;D_3''&yt Qd\\X˦]q41𞪘 >oݞދ $&mCm[Ռ&4{FiLВ d`,{r)s!, 3k%.a6 7ۅ^U#-nStaJ7U~k/Ew}Zcs'&.CQnb4 UW02zο&iĄ~Vs AWQ33F c()-dT2[ bW6X?7W+{(20q+X9f޴j{jC΁*Q7M:oOͯsFjR@FNU:?=FfCTo0T|w 7|^7 l(" q#q+nnfP /JxB['v2y@P<6dbhie $#{3٤_$8 z RI!+:Yb/K?)ˠ֠+KK/Rp1o?i39OY %A?=ZĪ'οQ? <&;⒓<%`|= ff^mEP64KykDU *`WehM!7aX:FD È BvqNf '?H>. wZ$~#g=l\P@.PV9xYWjE%g@Vف\{c!WEOd;(vυhmhzV4j]rO}Ol`hF\'B ?hKPc.W6#ڜ&KJn)0z D'ibU\ͬa ^0u .%+{hhBg?"K5IYʂ[MAvi9/ᝩnz2M Y7xy5?vZI88d(gG/G=0QCd֯7I9uOh%R@:sLs;S(%'f4>>!1g/ ;!/! M'?MLY43ȭaM+p> a1V7K(;Wϊi?k7_>{fDP\Dw's9gg(݋DU{eGoaRʲ*,;PF/˳\bԁd]sm7L{;seo#"E̺^V7RBB&x(5>':ߡ4׿iIHk guƂ@(QcPl |k+5[W!wŪ9S9&޽EڒX˰:=6pWRd@ *Oڗl o#p2gIB9}@"H|x}Ubg%Z}2t`3Hryvl6DVLWtQ2&B{5JSJHO~)#x S0ȚIfYO"&ng,CƬpI,뼭 ǑJM@n}St(Sy*վ!e Hu(|lV: L OIc:Еp.)"7 |R)]CH)v: &7+JtԲȤ]V?N[ZkPӷ8\-Tx Ŀ"SՃJ屽P_kjʍ OQjv,?wlÆnVj}8|fnh 9!PZ ?R)U)ґxf(<[-d3B*nm%E>'dK\g0Ȟ;;q{nΐ@Ɏ<9ݩ[hO+mSko~5BYΎm~hbT[Wjǥgq;| ƬJ?T3Ha.7W.ef݁ng1Y86|vuk,fN"Q<{+_ 4&"Qpl'|D(I4y)c3pCL%#< @SF?ți]J)FXfo,bZ$?/XGf+75n]k3I?}>#/zC] kE

    c?07d./|_-홉O5֤1 7[ i5z61{ׅ'\!-JJ{A:V?D$}xb~Zr~Sjr&6xCY߄/2/TMYSE_OKmMFaK=pf}'$kиx/T)zlPǦȶ2h?n=zMWASK}LȫUQ_' m))ܤ!!|f Uf*ü[QZ4V>;KEFcP;#4bu5D~;疄$ -6>J_}4&odKx"2 g`0DŽ~ } &DXsɂ?9\H"eK ̉Q\̜ J{{a tv6%R-&sօ!5{_A=\l7WQr'ڇbT5s+B8A+}Y䨒Չ+30K8ź49B.1*)|_b]&)5!>a蝊"p$ ):}7(\$KnL萱\fe8 Fjpqi?(L$ju8EP%Y~)ֶ8xb^Fd[H5>Tsw|f^Z!} ?Jհc.-Ԑ,w>kΌGIuanLڑZ64MB66ޕtI1i--㑳d_}7Π!@  'b)_sZxyIPO;h/%4{ EWۅqaW>ڬ Y2m$ SJdr8˿ JI7LBӁ[7#d/ P2Rnao?u6{ڽIA{N³nF&((Q k*}-^RSJ "G[BʧRM2O-' ]9mǝzV` %7wI\#@)#Q$gX~c7L][U=rqQG蔑ހu92xRu%軜vHl0,JPz/Pɡ7,J[/ޓϤHpF Tfύ$eTlێTY7R>5e _dS$&(I~@NhwXst6OAZUmȯVWіgiEPy3 E1U3#ўxKU%gE{VSmTkӁ8c~:{L..{ Њ5hC ʖjwm1טGa(XtoEA..pʐEu>O˘ fZF!Zi2j%_f;$1 U`@ #X$_]% I [[}Q(^ŀ5HTQw=e $9,܊nfN-<RQG;88e\IdjZXЉr䁜 Tn)H8>Hy4SHdI1LFӋypf#'9Q$za`$pôc4eF%Zd"|»m1oyGV|\O W8;4]Xs'f/M5rГ/G[c%fbvy$MsS"c&='gD$"߇elr^nq9PvEp=>~YR̊]K>ۆ#}@Q۞Mk}]BpNnjQ!Oח"e纭l@ڐ/G| ӟ#n;yO6+@ޥkj˨+2:A &TB,VK8 H:N{)` _6UXGA!sVdX. ò" )F4uq ^ӋK%btmjȽ/yR(V=qG&vkyaRv<ٮ l4j*,?bP (Q ?n{dl\Eix1˨4l!9ᢍ vځNݿG@K;SF2݅l;0U#VQo틡tتF@, ??&hj|sTAW"'F X5_e =ȁ$J),C6fD;=̦e7[G{BD}L K>zs0{ !s˾K'1D.=&j0cpwV&GM&;J@JL#YP7]`ϲ#Z2׵X`WS?м;\rҘsR kKp&o &BCƽS&[fIN{碼u #"Jk!)bUYy9׳E+STꭨSIff}jr=`j1^8͋e/xLB mE-**^Yܘ3Pv.%q샣qG[]/>KX;XC}L]1JnY Mq?=ڈvst3": *ƈ7m9:Zbg-f!k7_VиUP4$u 23~xw+ĺ18^4g-I3z4i;,.5Q!r e 9dN<3fX1:Fm5{߇*s 8]!UV4$oG` 0ne^MP?O(A[τۉ][jF*8Jc)kS-?.@VElj_XaܝU4B,|reSS4XԦHQ ʴW>XDUÝkB]s%u#Nk7H 1ËIf FPJeI5!$ba.v&43ӝ1Y) :?J@2q*[f C 4ۣVZEʱߥ to?^\̃\ 2=l$7ٌVX-VL4y䎳B`Dfk_#5hFR&֠idta[om`m)&9N.p|?Uw[8 NHS2ډYQ tHc \h 6XBa`1ҹ_p3Gp-P k E/ m^J}nuA2~#'HX̮U@DVrH@1zm312-?1b` F!}h?)[_]hIp/vXib첗nX yVmFG.ɡͺ/)v esNL%GMVqBwegmj%7' wΪ00,;-.H&Q3J`"0~ƍV$LϩKo0oۅÜJuZ+no:8=aM c0)|O3df)} ?S~LNnnz\l ^Xp@6Cw}?_7HS2Iȉ$>,;KN ~`g\cSh$%2qDpzO[R&Bk]%? [>KhzgzeM~}t&STH.I4nʙ=6_=(`ZGg}"7(D|k^'" T3NyDn"-BErn ~Tp+{0KTn cL5l8Me>/^N$To/]Ka֡ Pf I/eG=Z xx+BidkCf\ O(ʮ_U.`.Ocad*VUԾK9k,Z䋞KUo~gp XOB9mVB\ $0.󱳒t-1gTGsvj*4[v2z _t!)X-0PXHJnٴaR 5P}m':Qh+:*ݠl1W@+jAO9~xRLv*vK@.RnOM*/ UT p% GHf^]ރ;d0X7/-[GJvjf_6/)Af;`v]e"Z-GS L[<(<$cgY_uV|ݏr%V?D =O >cRQD'Hd|JYLJd-1 .ʥe߻/{읪/!ƅJ<Nt`P {=fCA B>hh<e0:o~| 1vEJ@%{=mFú J0: ?v"uCD9v촤EE:ndf+N7"&)4}܉땯];?^TW\-_ u U-KONϊIM9>E"tfB +edc| S7rC'r<$xgbcC{pyICS1 z-p+yA99%S_Gh>^AMkՌq Ѫ2Z޹Qu}y'qcCcjd;P{ 6a& U`2zouuB߮1^g:Z%k~j*i1 BS$b489%ZHw⡸E ؁>SQHfTM"GT;6Bb}-,oH&. =q<|l&4# 6Pꥪ(qW4Yg sqՍmjr9vݎMaPi,O+!&k8 q¿kD,YE𚥠sy g+174[wd +'@ݩH݄;\X4FQHj;=A9"?hY'dA }ז<6E2,$ i Ո?N۽P>y -iZBtzA៨э vmΛ;EzE@r-EEߏYsW}lf#x9Yza|=d޹KVV:cLù:deʚ8>aa+?]z-/3Uc V9Q=HJyWqIډ ;l^4w#_[mC`Йџ@˕_$bm_bIOw%Q#|3F ?R-JoR[mublN_q3DE\`8˩.71׋'2Y1Siq"YhJ1\!YJW5c.Jjeldz} "^U`-QYY0#}#w|D: mO og(_8'3Rt(h;g4ޫ2 `KU lHCmT.pl[(ɑ=Ry#_Ҳ|3P)ɣB#"O)>#eH :0zC8myNx`<&/4<TLnj(,,-|jM3ykl&*3` /cc"wl9:z4`jK~ѕ[.Q3[|I"#EZesSJ䨥j8)/h$ˉ]exNZ/:p!F n|l/ftj͠d貱*0]MiDV.-zWwWls$G_xolKefq԰ [#6{3̡ʆWîƇ_%O$޼kJ4]SoGoե1~!Az'G;r RjH k#geq3xĜ 5WVvCczMo<Lj02+>Q xξ`ˍ|RGzh }G賥0Rw,'V$h|ܗM#KwC䳘{KN0pm{U]ڧ%3>))h\XU)μyᇎ:(?Z8 ;vc +*hԯAhehP"pT&xN^WMQڏ}Z3hѩY.CeFrW'~:  mڈwpt<\ t*[W>㱈I$#c dn!nX @0͈s$@s3`3iM|k^ .8@m+ @'u~}Vs6){JOThM艴JNe8?lg}Cɫ,'3TqNiEsjFW~^i G.@0EK(##ԅ1t. jU 4sG׿nWbnOU 0ȵx%O0ԗ.i 0; XƐ\yZw3D%+鐢b̪GTN늗W!ݶڳ 9,upHoG ZJ Ma)hzWzZ-]Lq=ӽ5 0[#7=t8轙_kS}/PHYCƥNtmce"k?$-l BZ,aYL$dL&u=4#~Ps6F0{"qx5m׎SE)rшQ}yɚ;\~ ^! }^ݣⓘwdUP'Yx~XptȯSë|{]6qeuF=_IaᴩM[#)\{XjT8Ch4B- DTA*|M#B/W˻cI i*CQRȁd(Spy= $+ 'gh;%`+@rekw ~T̳5 gKי2 bB {aEMǍb+vNfa/Jb#H׶;hF.N c\Q=E͓e,\ϵvݯ q*_kkk8f Aۇ/sĝx9cY4^En/N$v0 E>a{qhV 4gvS,q'Ap?P>'HN-F6&(yDGYqa~:T:ů6[]lɣUx:ִè-u^VK cheB#L- dm1oZT"b_1:0F9p:_sj0+*eg^~ڹM/gwO[7FͲL7pI+=p_mke5oGYKzOZ?IM0)"qqs|92cw={b "ڧohe5l>1nAήXŲS,MG0)}J֙hTxX:L >ܿUTF+GTU$s$yR1j)-r on*'(uU 85˂gS}OhaKjp[W; EG3rzH tya]#%ֱx8XY,3룸Ο",!51>|ZNJQXCsn}~=Cv]Wk_ _. qs_'aޙ;WAj葏]_CڵgWģ;B{K(gI'>©WVi9V/C+IY해cݽF.TdFK1 rk#wI`?+/5XYx xt4;%jiG̰ars`ToZeTW1hBa8E* dHH s&P@6YUp=̻k55.KEC"t>@-=PK7@$&K2sJ)I婶㵔xr;~6;?@쁆,|?TmQїksU;JvdSp7 f`YZ2щm+^}pJ,}- 5FgbNՓM<ع'X-48TjE[2p-GK+]! Fr@}gy¢j,81{!,t t'`{.Ӭ+@EF6|r 䣷D]!nis ܹw_"W1nxý!ft}(e4Xd:"z{ј*EdWS=˩<44Nv9`}OmcBzny{Gs<azX>ܛA-)GNi@E┛DGvy˽ OEwâqXV@1P4j-l%nT^cD^/xYsQ."c6g:MBYHM~eSmj]e<;aN䳉Nw8:TK}0&BeFAߪUADg=;؋ϒ$ND'1yf#nL0TrS$Wx:mBuN3dXebK/Vp6)(ӔvݳaZyiKf Tj`7e&_:x7Uqq:tvWt 1bDJa9 ]+ݞ~'.@hoCRw!N1JƄ]'Md~;U[rRc"TIu+>% G2m ̷]dC{y)+P^ Av4e#\&``3?(['3ʤ1!:ŀ0VM j4 ɢgȮIyx;k }p tw?G<}!uC.B vmsv~'A#k/ 0F׳W7tBP&5*XeUކ z(`_*FeR.=QЛ ȕJHbBj;yj_)Ț2KυUL#XgE}uGJ@>6SᆭY5/7D9YNH? 'YޖOqh@eGLnLtf[$%Mk9XM>%^*sTԝB%3xYB-TvwkQ+p@D cigKZz>«l9;mvU.#?xB(Cwu`P^=x”5f" g: wz3Xz1r(o gexggvSM^׃|N)h́v3 t(IV?식xH8r>'LA],vEUL`e9CMڇ#DĊIk@oJ8H$#5~\6 WpE #OIMepFŴgv$)($KIujڒ&SZGz/!"ψ1듉M+gebݠ9Ds?dOR lmx~j5XSyI6. ?B.vx1V6:*v'DvQ~{|8VuvND#5J;'L舲-`ARȅٖr65b` bV mdDs 8 ^TM=u9~dB;j{W )H!~gD13uah۸ P7+,hU &BͺѱXĢfJhN6WGⵘe4!J54v"iAI %0As0qG`r1zOIeC(=0D_ND+xKRpoRHⒹ=ֳR rw#wyL%+ZIAe?ILPLT3szmإ_.>?>ǹV LE0UTC2 $@إ z\cJaJ[L0́G q"Nv-|_!KߢR~y/_oOa"IJdkyݐ=y?q*w}DNIPs keX1gpɈ8YQFA[ dNi-q.T8`cV֪P6 f︴tt 28j'tfԱ2_p_QwD.F.ebVC_)癶b=*8RɖҮ5mۓ*9^ȗ7Ϫxڢ3ֆuo-2bABj']PW)10F&dVۋ Sw0=kcMa2UzeHp/5Dod  rQ/KD`q`M]ףƇU̒ O {it,'`:sOlA$̀X@s0x;˔3EY,Χf\%1kGixBJ>uTНW`61yuiOZ ήX7n/WZS;^^4׌^Jؤ/r6lykڬJtuYc[:5D0KM Ĕa'O0,'x~HbN(s5PanQ/p+pؤ/(P]ds&h`jM_ ЍܖSt㮺euPXvR˜"k<\ #$Z8`m7e;6#/hiZ"^FmiWiB_8#DL o-cA}fU#_b#iDBbqO7͌Ý Зΐ[w%cS|x[,&Qf#$idm@WKq|Ҷ1:E*k]\9 К+N[:Is2Vثq3H"eiua48{/nB0C)P8LA#u'dz`?h=%RDU,ɥˀ <-z 3X ܮX'X6@j^Dvl=|.BI "aۑڭFB>hi.892)B*a_X~;Xp肘N$̩Tʹ/ESzqfHnF8Ar0݂Rx*4R#=Z<#Ea[ռg9}37_nS*t[r5\o}΁)=na ɘf- Fj!Kc l=Y7LsMs0ܒ7ЍUϙoS=lJڪ*_"튆I-S>hNi-ؐ*Jʪvo(܀_a)c)[ Ĉ Bfp7tetyvv5k' ZeDsMrA ?VPo7 ok{efǶyd9JL͞hiRkgY 43h0tȿq]L x%}e& b/2 X̩`Qw>33?vl5M@/o켌}, uKuNlypAfڦ~ߏ" |U:#<2kז+  xL.iSmZ1{̖'=IZT5&{OJqcqS[HK< E=U|'? <˱n\\e R fz`xlSP;h[9 /VuAJd~Lv4A$Ϭz[p\Y\jǔ XD~amV#MD׎>}'Jމ XUqnF32lVx.ڌUIL).RG9&քc}Z9z17ĺ6ECvn$U”dtHM5A0x?v +sM4 b4_` /+#%EF!,A &\H!]Vj-}4TC П^}){baŪҨ/1尃N'  @qXVEVŨZDeL†ulTtg>&[ "_hd"bBs/eXUGr-޽iA0r(Hv \2/h'"ƾ_Vlm/q&@i. M 4MP:^8aTnW 3R=pnLܛ'M%!xSt \,R} 1J^0 :lXM-tt۞ne6$jBFjBRn%h KC:5Ou)/aEw@ZbnEz$kev0<Ǩ4y֢hڞ ŕZ IyHWXyTlBK7~Mh SH&i6)AזX".:1'+XTiϼHy~Iإ@oX†;1ߍ5қ٩9˒.8qHR6 qSz U8G3$ک F(R^gwI,J@fHKǤzK@qW0IA npAuj}ߋ:}9ENR|d'1ӲG+hX<|+ qzǨ"{rw)޽K"U{.3ɡxZ.yak,7a;#E8.[a섅Eq8Mi+L{Lcy'a;FBdU50y1Km* orfiB"\FE{5}Bz,u#YĈ:=y%́<LN߅)oZ/N9̼Gb|}MbL;CcvQiT`撂AB"2G7m.5,t,i,ϛ#Q/E&KP_>w"0bJ[85s_锓HN\-z-3D U5I_4?vjz SP-=9CڀOjlz=77{ufG~;!&aX?xb@-`wމ7ŖSzM3 fj54`Ign)7M(4W;9 tVi⠿zNiKCF,2P ts^\bFN|)N5 r.+<#G`-P}>]=2iLpv =?c|z ~DW?e!o,3& j͊O<۾J ^v`Β%V&tG5 Uy =2~j*f f\@x =v((;Zd.lL-Uz{34dӰ7v俛P= k}.]*P, @#.rl fa/Kx!ZP]jR-$yz#݇˜NJA#BPx?,_D'}NXNGWX]αUqO*Rs&}M o0c}q(̮"ĩ]Ũ2캤!.˷n9r<(v;aEK-|⨖K{ʰ!6é]3kޤ8r/[cUhjiF6URrO`#d;?3{8-ܕw)Fx1ܷF_nEvw X0 QDN *^=B4-Suhա;j&&* fQc5~뗪o8ȫ)B`~ɶΓ g`/wM`SɲwC ce e; 4#eJ3Nf;mqSe@QtglIhCEޯ:mݘQJp9@J )(r<1!3-< xd㇁-+5~|?l2EM{o<:9r+mҰ8=1cF]ԵaL3V;G568Q)ݟ|^2:aD(Ú'  I(UDKsXW^긍Mh$}pƒb[.$*X*-zv/G"0H k2WcX񷒚|%Js-ePU;>b3n#LR 00`ߍvڂ^+=HM Dk@ϴb ^CAP_%40QUϔdrz ^bk91UeRuE5%s۰Sۭ*c??}ڡX}N& !ܷ@v )7e3tͭO8cvsR}v48t!1%$b3E4oʝŅvc0jđ]1%ߖzQ(+I.>!\ح4m:n~>b NWaIN]MrBbࠔo"183k6Y0LnbUmZXVz@AKuvq%죟Z`r=#g9BTr4EiX=Qn䷶3S/L I*/죎y\O'&/.(h53T]輶N.^RA8Zq|*C:ѿ|aObCF^}+4BvJ NzcjYt+ZNmrӕ%)~9]˨4׽bn.o I+N1W·*H:t,fˁEb2ᒊHM<0?gշp 繻+| 7jHㆪS?)0t:*NmΧrB:W4].8? E?~$W|C`.D<&3_ m噮,|PkH B$Ca^`(}&>("];sM1h)}k_SzO \Hq>tV*0ݡX.ZrѕbNj߅$'#"X=LP柙iG9bi]X}}^{Jrn$2FH $q R*vv}l>.\7;W};PAEGy<?ERM]Ʒz  G;0K'4V{@odewm?ht:: \㮅x/,rԅT*P1H9>kNe*Y?GCCi}'Ot.bV286ҐAo~kuY!SWu"sh䮫vw8XT5͏tp]GtZyg])OUi}N&(G5tU|y| #DT]M+o$[Ԕu5w:I ^ w0zA6ʓ3#SKNi}p-/twuZ\c8pp5SaB؝R3L3~$w?=]ߊ7QD >}8 >cB.KàwȇO1(, ai-/'@e{ޟ%Qpuʵmp_s'vF| ~r[J潉A )Lޮd8'u2 Hi_&qrkC9d>@i3.^U*eR^wpj`fm)=t2 XHm3Vޑ>o{/NǑ r*Y#)i60OjWy9zgsTgh4襺 Zp~!(N$jɎly6/%aKި}wzmFY6j?-^-5LLk+M)8bnHbi6I\xen2l}6Bmu9u&M3cu*X丌0=s|<8܇oO> p~Z{+U@Cȍ]>^w  11I{8T0':%;KM'v:ˣRbrS^ˁW*kP+bA koY1BG+rѣr\TcsdQ>x{f5(mWGIBu=ķ.ˤeL+mf[ 6-h @v;庇'-}mmELȵ`;B:Y65F*S,sN&%ꁣTig}ݖiX^[4Pavb8Uϫ (=8Lf_Ԓ1}%gb ^@}o@vm>,raJ|;hЮt%`f +WhgYt&ֈz%=n 7Ms`׫.=AOmku});D.a趹t8QԢ [((hu n7g4XM},>*.{>7`X&xLfRf^}eTky#R*>EO#E(>%ݡ l6M<2m4몶T`hZaq^PhGJ`T(B6;>W6\r#kM8C߶2K,m}5:Mg3̤V*7F0x?/dP9 ݄~ݳˆJ!mE0}\6nɰ$CY >,O8"6Gc$4(<\[޵mz hW6Q[Bb)" \VJr&IceRuy:>~؈Bi0OP1`.8>C~n񦴊^?ZiYto_q$};zw YS΍W#1&Thvʬ$bo?nR GB\ZMEո VNW/מ4m Tjq6R2B;stC$]gvWN:x+ (|gzcKYFqC{ao 0-mZ~/EFh.'b{}${o-67hmh), KJ$VUufjR-q(3>ڪXw%OT5nnH*2e) Anj6>co<-Ht&ь雤ORmzac!aY"@#W7fIj11 Uy,0*PW7Å\a|OK)( ܂vÑ4^da~kCeL4{'uAW{ݑl _jO*,V0O[}x{[lڼpl2BHO;9hJ?3AɝrmvmQqҥT> jc ZOc -AdL Ae_ tяƾ<{qq (1;fԆ(D.ce"$Dط%a-_KI&]a7 xңuH0({~Ynr$19Z~bq;pFRL_NOUݶfhjvȭėUСtJjCW<\갓>"gMG0p:}.Clf7jeYr@~S-KY]Ke~s{Q\$ځ9+vP![dO[3?ܘ^bBh $, qhķnrL(OvZAhskč9N8ﬔVUt >ILOorfe؀尌lRZ$;'G1N`vs?Ј5S=ꛍ^mkx"HZa|_˭>R{_ y]Vƪ_/X,G> cɉcM~RLda\ˡN3etءWgZc) &(="yw"?.M0¯cL{M{7_֡~ȂȠ=vXH2!H!- ?.VMF21D兮D|'1#79mzh4I|lҕﯶzm~w{}+k/ˌHKX%A52#3j!ũUpH4~AwÝpY![x@HCIC@Vƌ̳D3DL`N& =F4h.hW7Թ.p2Ԫ> rGLk+= - >XcRq lRZt|#d8Gã+cl\OAynӂJdCcQE'xVӽM,jtޮe|S1w!5$Nj4{eHǭ #o\ 8Ԛ#t?n]v:`Ӟ[9 :6+-^%|j DPZKwمtф0JB ڳ^zcV J7 gPBM5 zLseb k{s8lBɬ9|U _>}R{v2X9&Ll,|7-bI$P`~ ^a}6{$Ws}J!ꁐ#y: ZM#!'A6#LAт` X! /I%u\7ne@VBqAqwEh/am@im ?hXc_,{s}}5#?ö6]?lDp>sVNQ.kCty+{(͙#0kU󦜗 'Bm~`dY Mndu) !|| dR4sUK҇?cRs VDlOT6I~J-2V`Ӆ:S}ژCb4eՊFRǤ$+MO Y2˳ezFjБ_{Z7PVtRejQn?eBDHIQZ2x2ug[﭅XE$ԣP 25R.ɖlesf"|dkҰp(T!Q vX^s7?)Em1Ҳt%*yuTv", [N(Ȼ@գ*E!.(0VJԺU S|B1Ba^dHvgG"FMbքPWPW2GYz.ȶ{V{ϔi=[L6k^ /0pRt/l}xYO_ՇHݤ˥? 7(zxa/!9Vi0OO HmC(T_!w7ź^)ycݦLj\(({x%D9Cc}-:W\:;0}b!2K%Ij"NmLFkX,>ə1YFg]@:G'[soE̔uT51ZqT*PݍC&qI_0x lLP2~"4) ݪԘwϝ|HƍVV-"pbQ^4@fF8,m]7OÕIJQF]Y{KJ]CGM(p5 (?>򥟹D{̎v!yp}f%n0y" F Ya|1+ Dwy(pZh}xٳb|_;|(1,X[נ蚅B x:򐚠*ћ\Jv?w31.N;9cg…9MFDu0@;pxgv.4jY͸Ѷկ^z^ i2_=/QwWS) 9o$E@5dnp"R깵TbQ;HlJW .ۼ Bҧ4sETRׂXrFoA,b{r39bm{#{L*,˩$كX۽A**H8|8U#SxE֐Z (bʬRc{a(oT #ǎ_5?ZWP@+4nOL-*%;Pz?m7 }Fc׬s7g]VqHea0Q1ƑpR(?$@Ӯ^w)wGyk:–!{¤bKTbF%,Sjiքo ;y\` 8{Q11R}kVCP&O`+(ҭO3"ZM;tZp%rPzԘp3o4>Na·@xVďh! k_CЫΠKh܉V cMޗ "lf~C5I:VmљqdsQ/spa(UNch(ir hc{Ț.1e0;eWMmCe1sz0?F$ ,]#.?iJ8`- <ü[% UpWtmW=xF Q*/gg6-Ƿc49r&HbE# j>_ 5Jxc~PR)t_u=QR‰=ND4׿I׉<~cr$e_)r<2"U.gkk5"f=ğb`TZ؝2 %h+j|~\ub .g #D"³jrP'W{<,[3uٔƵ_V=h7%DAX0<L TN@CXQVw\cQLrEED<+pcj 2 |eFe9hd[R4 Pg ٔDRf-vKXF kSM^\Fby- ?rሳOP|V3 %(j{VhIPÐHت.^ygV_;7_;Gyu~K-?b@״Ŝʛ漻֡FY2EQ:my;k(r`.,>qcVڝlܶk?AF5GoS Vjb#Ҫ}S>bCv>1%tL,':಩+Yݚ&F!;7Y⠔NՉhT^qϼK[_SU &qu<y߆ //3L]SC~;bR 2,˓ XtČ?ζ=[# 4|qU et~ŝ#ܳW{>w_Zt 351faއ5IXϤ7G4%6`'MnC-fK _wPԃ') S֙HTSc!G0lJ!61h $PJ{5s9V.6Ұ-Z*`\N.iOTaS']@D ##>?j].5, wELJO~Z})ܜY7f NvKrnF?8mF/wφ=c/'6%^,oK$P!}F Ww^S5*{j\q7!A=`E77p$|g:<˯cƼ%U !Ai3  e5qZQ6BU8#|+nV!aY &G`h4XF;b@^޸P?@c,K |%Ɗ_1HG~ X'#Gl#K ۳im:ޤ%]CӮLsOCb&j }Ek[e-2;W|Ød11:/E!8ičܿkq1-bpg.xX07SnGٚ1M/ !WkGXlX%.*cqZ6\=C2d$i/!]Rcz+[v9?gu6ᓁ乞n:9  u_-976&u=aeBg/_Tߎpk - Dn@=T_UU#A\ W]5S>0yCF [__iz' dU&ތWPG FK0 0 jSF>Yw _#\otՑY3螤|%JSD;䳐̰U zP]+p]pC> ;ϤɌ;m;aqæ\YӰҼu#}FFJ<s jJVD9xbg!!AK:Ċ[ƈ!  G"0VYjxnrFpk#q卦pY|bW+Hh%l/i5Ef$Igl%^H@CE]5?} 6uPlj*zMO e?<։}*j0Ea 2ɛsyzJW31WO33K:2m๴WOCP`ˮum990>wL^ӀmrHQ NC AG~+&h9Nw: #g݊ޑ@O |닜Dߧث"k; PfkMQKQp!U%̽JH3ŲZO8*cEvErH.! ڮNOhXS{n8Pg\št9v^X啍}֒(jӟ>v,)B_ 9wVlYA:2Y @x m5ac-vmOdq) ^ҾtCQL01ioGu 45OgUgW@ 3PkሓXDY1V|Jh-Fka ݫhThA3H&ʟ)dTƟ~kqGs}* Y1* 3D#qaRN17Iu6缭M+)Q6Z7 Gn+9: [< :Q!=f>2kv ,k1fAMfknAⒼKˀ]6>f7OSyE[XʭԒi258T) = _՗ dmJ WNcs!FS:o֨ŕKEwOTfpXm- m8T|dP4&cPϗ=$?g-=QȨN݊Xcc6ÝgJ#4,^Qv'@vS]jJ|߳.YRH1mU_E-th,Eai#~ ި~揲ڔ#+nJ c;^ ,C)!{c jWfݠD= a\0.M׊gS#[П6#X+3o۶3/C'c,1ǃ~0A;m1,iv{S^I:gcH[pjր4],c4<Eq8i>a|DžjĊb Y-E3ZnԎ.[g=6:xMA;wф2f4c|YϒԚ鱹aCD$c߾/sO fh˿ܪ;]*|GP\7,кn#L>`A7EJ5b܀3wĒ` tvٶXcF9q t)=qtЮZG .g:p ٤IDo/Z<`gMe)3;]##Iz Q~nRoc8*3Dxb USrx|^B:w@2b<;` * 9d‘zԯ:Sn TP Yq]kפ\7Q5?(2_gX Wz[ x`3Ļ&&,@VD@tLVp3oQP(7Ky?IF*9FZF\ͺ%VU&ͼ0%HgnUit kHBvAS`zϺ C! b+E}%ڮlNh%@é.8)l?!xXpxNXFyOq6G F_?Q} sc dścyKcPa>u!(Øcy.t'}>뫿1Sr~"7'i;M2[![&B 7wXw6DZ@W& +|p3e&>)wȑy. 叿C` nV|GıoI2c S WvљNԎ؉zT$\RxTcoCHL8QCOа'_ #J g᭖.3{Im;A piW}ͮ|NKĀ3X/uv@߬C] {>}s`x^Y9<؏^*͔m31)v0+ uΰfV{YDXL#QmbHl3OyOyQu6dE/nLR̃Lfh&ybլ~n6JsU?2YEt(E^fQ0qR.K9%o!v"&wpZDm-!U#:E3ۊ ]fЉ],=C y0xč"7M+=t*jR)Ҭzx`qse |4 !Ӎ+&1Uok3.n))YP w_`&qJ;{?BcʥT1H9'ktEM@79d5J58A96nNO @,LH.dz،+}1ușׅBn#/ui:h+#n<cp$?aٷޣXݜ%?rp_x>HR'_GmVP0ڴ=+_3#]{c>$f:)3 H:Aa2 /_tKs9 $'袇9~lh@CvEuB]S(Y߬P$WeNxނ(lNRgФ7bSDQkb leb< ?acIT¸knH%SaOv#T| !4{0cFh_;_i ;”uZ*_o9t;w-vcZ\hHݱOϝȥ)1W0*&;1 y7wzƎc|[_$Y\̖{էl`ώ>;_%.2p0Q0Wiɔ :PE1Y$5`XDY5}saFBzd$D4*!ftr䇹hmdͤ.Ҁd$A:cўINl=YD5_>p&mC3:kB>^`0D9pէlAux?# TIhF`Z A{,IV)˒'"#6 "6sҴp>稶+$m(irzkA<תծS{+5Z" ̦2IP<^S:PMUaĻЖQ8Wɥ|N;\(Ve%0ϥ^931ڒ/)B)-CV'(zZ;ekщa擭Pc8zykUqnyܥ&cA'jbi 66 O[6*=' H/])cY:5=֍-cD bE"YE5L} f IM4MtRZkdZ$CcH;'5:gs}anԯ{ X6>s|럐|)A_lV"ekpu㒐/mQ#~kPQj9BA@CQ;? /O:#V_u','f4UpYv'_S,EOžK30QO6zCy Dkw2%cE&n![+23Gw]U\g/py)5xyCTwx8,WĿ_{DyڽŅiN)[?l`MO!G-AbEѵhW7\#޼AM)ӴZ;6AԱӏh>I'< ئZa̬3%nNwJy+\dR4ު@7:dj- :|qN,2a>\gtn;0 \Ѽ4U#>pn;衊̴1fA䔉۴ FefI㝡!Ps*L64xl҂@vGZ^>2p[rDOH7uqwK68fhĪRMmcתG,X&=_L(h֪iVR|R(a@5&t<:;78n2crĪPP11NG \.\Gx iL2hzM@67MxaJ#IM[Dwי?I}:T^cMB;'XuɭT q%#3VeqtzvR=)ʘY:qnGPMQ(B*4I~Ѯ^YZ'aқg^̚4qJ~$:\Sv<sdt|O WdqHצs&k^I_,Z&Ox|u}'1|R B{uT妢sc{W@?m`Shܕ.n%k/Qr*N AyWHh&5jW7h]bo2h&).R9I0n ! SC:*2E鹅(_q5\[=alu2 e ]_aH;Ef2WPw.n TGܐVCN w2{[1tD$=F_~nke):/fjMp,"\?ڡvBj:F&Y܉^%$9EtesM-oD ;/߯[iYT Gr<+moZ?Ę!k}.=Ĥ+2H ֗ Zs4-`2e0e<4 %~3 إ-%x 0n xvkx;.ùRd,p?ZfwnW06_FIPV'kO\c(u%W\ۦxܤK NAe ~@ 4G(EA>j?O+yжlr= uHN8ī@ pHG˪Nk~zfJv*r>8p j>\^OC y_ݏ՚ן߆(djHP'MrJ+CMV.t640VUV=á^烷crVyS}.Tu&E ^TƆ "b$=>9?Zzm{1Q9J5aW"㨦~<{ZDžTUBma5*} ~B)'o>KĈV 7L8x3dWB:fѯq3s12\d-Ha9[1@3 'x`.I_u:'L"9q"J$Fet+NO=hO&`@ n2R_n{ :jr⒁MMaeZ8V#PW:V&RR崙eLUNEdzIkV%WDVbdKNs9U՟*#n6jZ0+he)Nأ\‚p<4Ycݞ !m]YH%rP >Y qj|կg`uQ.QtR}VzЏAAOϡ5q JØTt-xkwCFkH1ү#iTj ~IKWkţlnɏPΙJXW(~sx#do .֙J+o6_3ciqju%G.B%#<WS-C hE/|e˩( gm=}"~`RVkk\r 1}~ ` :n=ȃZӮc."Hbl\,z9K6}!jBgft47^/QfwACA [$7,h)o Ϥ4Eƛ]o=E8mVrB9EqW9hF90'vB5dk_Cv]uh<'ѿ{p[`z!BnP"`E})x7\ϊqMv"='snu9 E(̳,R–q˔}uFÝ\ )y^ÍfS(G LF8S~5/zxEf>-0^ C[Gꆊb[Kh^$rv]Ʋ#ٽkM2z2&ѝ5UhV1v69LW8I`vWa*'8[U] ڭM++Di{[Ls !x0mXLmDG8n}$bx* P#%2; )CϾd<-ㅟntcvs! 5ni4O[! hx2o{YUh8]`bSWG#76'&P\WU2*?;Uֵy0AU{-pjKcUt/;ӿ04nqQr W=b<m)WP*]UaØ4շe.]zF5ELa} 4UxSǸ]JW]a`S/"|gSPj8hL\5D^4Znbk<%㳂so+ ^&.sduM2s%s1xM;3"hى.>yl[3FoaڐObͳhA!~-RB [F vl`%(ßL 4lvWŪgMxܳݩdVaa /)n"ywAA!i8JK;n>&/#_J7cj_T90"-_i-^u@BdUD$l=e6qC :b'0U1(aUNЄ\xM& @J$Wn2Or /CYe`:h/g1ٽ U[O#7 | b.Fd'#n"*C\4"#e9k=X:ORAF.*>ď(A^ ۶fW{<ثQ;&wxP]YȘck! ϑ?_?Qc4HGփޘ$($Dd$9(G~;$ OE&}skɯU>[&;XfǥTIE*hWX²WXws7MF 9nNϒJ29ZlGk?^mW c= ك~T0*ˈW08Sެ 3Q: 3I2sPthJC8'aӚڧi6g8nϘ95 {_\aeJ2}Os"b mܰ,zQ0XekѢ(gVQCT^Ʉ .y3%ӷZYqs85jb&gb'oع vm2J ?"?Ub62r h@ 2 }'gͅҍ: —,9j:'l1豶ᐂӄL{O7݆l@@ 51 nk_# Yw Y Z×SShz?qݙ"8ϐ+gs-gC+P|pw뻧 a5znT}U]pbq%@[Ԝ pc942]ށ~1%uuӼwQ'Uɥw˹^n Kl柰蠞N8+zs%O\Ui<,s2N -jtrKY3Prng%N im7$VrIҗiM*<𢒴vS"7 dz3!͵@~,ç~ p\l0*^Opؗ*<%'@X87NnDPBK Y2Um@N!\:twL'O3DZN:b2a4E _j"\c2:eOi" /&S<n>}AJF8+ṼxBڻAi e1aLoo/Emb~qbZ%kp d>u<ݗE0-{w /s[ɘHb;G.Mky9@7Ai٭8;M/dڤr.cxl'❏9ۑ&7t#0 Ӝ1R2zzR+:FIMq - o}CGv4_r tESTEeVe/.MxO6h C͒XjEU+{BtMh7vo ǝWB}6q3L!ur Xj8ˤJPx`~q&Y£Zz0vO.*ցe5,%'AZkH^uz.7R}g ~#}2YEAs qhiS:smㅍZ}-]4rN".;ש(|kLpuu,SU Uq!.D2m@f޿n(Ʉ;3G?_`L9R*}//ڴ譶 93ů$0uN4'-22? ^MgM25WOz6sSxaE 6mD<lj!)w(FTNxtYz:j$flIV#nfK1Ii,k`t+zYZQg%x' ˈ;HԏN).3읩 |RI}Ii96msj'"+8 }i﮾-JIPH|@9?1ME T:N>](*R10]2?f:0j,wSORnN-J$Xdf8=D! 'E2Qtfc,YoißgOT&PեRvĤ?KnnB7Θ )@?:H?ہ\ M\'a{ lŲȏçJKMX4eMAn-t>(;Zy)BBz|o,#zj0PpclK&wT4%[5)aH࡜_]yu-hvg*͝St~V&`ϯK ,gy~|,Ss5HkU6ߐ"_Dc<%m&z JT]+ւɅaP!,Z"jn^q ĸ ]ٰ%:R(>srj ^KmԐch :&6ss2;941DȺ`MָA׃ۼY}"Fx  537*6TfQc"%@N#X<O%d>RMվ[q~Шw|~ܿE2p':}\ w;dAa51l0:c"kA$~kG;G-z;`J%s?\\T)(SObƸ !?5X2ƣ̩l3"UsD;E`NJ7vک_]m;?~$ڀ]‰88-vuҧv/fYX5thwQ-)(gQTd][q!w";6L]V~>Ǽ""3 0%[t]z7}g=C֒՗s/~dQarkŶ"-L=ٕL%_{[6- ]Q.c4l ]u {aM^9Zx )-^czoa~^=(sM_U$t|pgXNegos_9y&dE F#ϧp8ܴ #OAcNA'ս~Ƒy̱>!6j/WR,/v]`Vv;.$ecSR; 7qִ:/Ó% }!<05SO~N+ lڞl𳃘@:\i2&z)78|ujnqƩQ͇\ݤ v@O2v>lCx *­ rE>pemz!n ;-^[%'p06F*¶p<A+Y*g S@g]fU&\ӗ$fmI1?^ݗ:> O#ٽsa`f'%c]g{3Q(6A):+ƆuRd#H FH֒;dfzb)vQnk&`A) z4@#DnZ%j( tssE)EUe-F ۈH6 ~.d5ڀj.Ônx ]8lQ7oqぉRdP S⡄#gTe&y˯w$G\ ~ ]iBbER.vG܉:ixjlkSHH]Oy OG?'=U푙KdY4Ph6ThAsGxE+'IJ|%:aDA%([a,2v;BH(U'aݪ8޽1#eIcIW+]-Quˁ}/|2-$Q)Mm q]#K5:W&6Pm_Q(mykVz** !f$[nV,0ÖFhɎGBtBe𵿤WJi-hoo[B }uSIsUI'oyrLUs vj,C{5hl瘵N-ELGB9LؒO09ap(L0YLOiӀgu<^EKT({5I-)ÑOwoPTX`%2Y?Bׯ*Lq~2v,z02;SyafA",Ed+Fv7Dva01 ;-2\i:PŽSy9Dܢ97Kn @zI-X[;MdW-m)ujYQ% m aE?31?.-Q+:'#:[*MYRUUd(!}R*f!in۱v6a N2 6ش\&aN#ے"/<͛l(ߵRWk]r‘O^[Z~9Y$C* &)&RFSVnE<eR@xѰo50'D=\0 BŊB\Q)BoX;)gS^9fãڤ=]ޘ~зMۓ{׳Fe!(Vو&` _)SfjCW?dzїLW1-[W7 9-^(:ZW<Ԟq0i2,rg٘-Dp,ƔQGzGN$y-#s]936>ided*_ơbWad\xP'ƘwT-h yi]@KzSi|Kt\XwfwRQm98WiI[,F74`|ݩ$P*COު W a >*w{PQS%TkCܘ~! ȯ! j#=xm6nQ~90 QaĮ.L n<$~BA mP̗?, *aԡ;(s{0(e. iNi$>ӒȮKWIEVF  7/+hh$wNԟ[]NkכWԶHm6$@u d7!U#{PqNwKsZbz4kF cx)QEzklpl*~}A.w?!٪Q\cbe,Zu$^*BO %FA#Bwr;.B 2 1o͛j{l~wO] k]QUj::?»BÝ )e &AD;L@ajú1N;z3~6XœZ[fYqOzx)>Zw&MOTѤC{8p_2ZOdՉ5f?-c ̭p"ϣtMfbrCN]( m~cA D@Uk-z4KٳH@[[szFݎ${n?Cnn`&.e☩ \K$1^˞U:C?5,p4=lƊ;&ܺ4YBI;cyC)@skI~k|5zm%`fV8W;*btZ (t2%:pTkݭ-R)cC{ @9Z%A.[͔tYvZ1zXQ &i yL+rDQE^ lJAAB-{5 >o)BY=^iJ./?חa計t]:\U]J5M QLgNM =3Yܟ?<ȚflJZt7%̹2343W(3*,_"PtPEKJ X"B®3Q:f>+IcLZL,~g#&}!XN۱x7S#Ss[S4iB*wQ![`tuޯ8޹ 7vJnG[f }P!%#{B63d3mGLΥI=g탬RvIPU-E];~6A5)YҡLu l"3߫q4(e\(O.RH,Q> zhOU1 pYp%*sǕc~{dhIhs,(E;vu(ǓG$А`3k~c:BTߒBB~UN>}LNJ)!9()= ]{LvHLɋߤr=kDdxT *0;L]I7̅$/@b1\!OMLCaBw~5)>_?>mnUvA27mйvU]B)X5yMW&0bvmDVFxzK|&f0ddʚML ihosNxְ77}m~,byU.N$=I]aHEӘS9VAnf+`WQvxL!X>}O?eCB3yw>fp3j@0gc6aSց.Hʚ t$ 7G{)_G`/2C5HoD7֝9,߇ JkU5?~jt"Ǫztm4v: ]lq+v/|TgepY.[ETPOtY֐O]Z)Xm}ȓR8V 8^(=^98ÞlQaߠ0 TX/U#"f3ījx4^h:Ta5\T9Yp`UffYVsf6ZJ<9 ][!uc<$t.RoݽH.PGx8q?ZGV9~J/be%)&"^ aT{W>S)e+EFVWϗK= gGW~g nޛ aI/kSs"PuZQS 4JߛK!f̿x&ݵB[בِTCU֚g' 8Õ5򁆏qraQUaL0U FU'ޡ";@xP9Vd9OX:;:SCVZqWyCv'k޳5T)ʕ3)< -&$ ΛQ(GVC[<+v3̜ҋL:~XJ]LN Cb0~TCf0lkQt'd|ZPa:Eckg=k!2G(w@/l&6>< nqza^X mZ{$_|obyH '& 'VpEp= |SM0^Emrz]]܄mW2k{? SsgM^(_ D>Nߣ5C̏Eׅ0Ѿ2ϸ[6o%Ů#vdB@8#Hnk#$6dwůUgݻ_w/}VY^K4``lp9wb1kMQˢAԊFiR8$Gh 5YQx7tCzy(}p5س}<&*T!|h@Hm8[_JÁ쐄06@P(!6w]O. (8vOt!@31G)^OV#@],afn;(׎gCk$+Y`Ca\,: Xxwշh)N~!R֔-\A$fy@>KUa;C[iȫ]s+*\i*ZHjj"vq%o %<mcPQ GGCp<,z R֖AdVDap^҂l(y3#².[-= UrV 0֗ՃtbkNl>_x4sO"*;DљF)%6chһjK=LZ%,/^A&ɕ4v+涃D.\6hX/@ggp."eh"j%U rxxKvr bcğ]°;zvR0,сTA9*&SOPyA8(<0q;PL촄P-8+kEXqqKVt{b W|s~l1I#8*T o;?*YkfS]SNo"ih9jʤH\bׂ55\Z&z8zt82o)Q7%0{Bd$\g/BB?C3 :t6 #JAcA !<P3ۭ(;pς|zd;TnY=8pb`\#OXVR!6IyPF)+ileY&NbӃA-bEf#邌%d'i6kˤ9ҚD$ [b y7+BD:`Y$8 {gh=ݘݴ?hx#Vǣx|,??: FY8'A%]f\q"Ȍ/EFv7TUl;hwteo <2AV׾qM_ƨ5&i?w0 r0uՐA-zG)JwSjԞ`.`yS J#i[.8eq䠼[ºҥ-ߒ Wk3M/kG&R6xK41?anQgIĜK#s.&'} S9RmŎJ7 \层۪EtW 1.EVru&RIhh*{WL'ҎП55gtB!-<נ'zJf\ZHu9TeO=v=>d:-8#;/:r?;kם R8ƲN,IIH{%v/ԘT0 +f_࠺q^" ҟ fѨ(sxNm[jkv*/O=k)iB 'fDtP 3RYGDDYVL)GeWzt_{#cDREAwԆg0iM.'!VFa{qyɨGUnB m B#X$8tEkYrJQVuͱ]VtbTڈv*W,F;-w mo8r87+[rv;5r; ]w3?)hV{#|EZߡ2T6dmpIf}˲9* _Մ2dȚgdj>=ͲIwK=X2e#oM_g 1i?w„Tҙ)H2A5X4ށ ;7ǥ*>MVBIjJ| 2`4{'_Z3o]Zƃn*RAPiJ,eo@c(gL =筝 bns0kH: iYםת?Y$dn|pXS/2@~NKdpF{T]h|&!%ob[v35Ԣ{sWS"0U>R4LJgIoW.Akr9^/ М)4nh"9Y5a`V CEEc4b%_t2a $=1DM Hf% #Zh.}u9@T7Q{E׌n5h=Cb-9ֳ$-9,l>)FO288Vi۽c'ufcCp'yH82WfkED">iul"U_uVÖ'Q%<4u1oN!xҗ]j\\wC%T/+NƊ.>*ժ'Q2T,bl7x&_Y>Ed: L* ?/4|PQ0S^޹PqSNa# SVk |hmAMs wƲSOr \\]&4wMY-ԏ5u[*1-s mff"ReTco~@D)aK@ CIC~CɡHzY}V*V`S柾B. lR /Bs}Quʥ|;̌4YLs,%oU:~[i\\@C+!ɠN&\J.q ?V#>?gpˡRI%BOmbau)ׅ *ӳϦ:t ĢZ52`d<ƕgMaJd"EiR QݚgA+)Q܋vQTmt0Г%=|lA&w6sX;)#է|יFfYH5Y"hFmzR˛NaH!a4>vS9 AenQE#bg8n>8>XD'{+j].}T|#Q2>~Q y@ɼ#U*2:g,½oP |;:X8T(F+#7ݪtI[JL~<%?..e"B_3'l 2$9 /*K9{*i*g!u0 G!M~Qe17Gh$w31<`ƤDK-A;X"Q) HCh| ̴Z}g>H(=Uۂ9Iݾ[5-s3 ,xȫũLn1=LX!+M?:8bW&g-RfT](z$ѻ G)pw&.m`*W(Hcl-ҷ[b퍪Z| G% `[&EA{srId|xmL -:XY6Ż<(ʝ4UDz[GkwzZEwQ~_*t_-PQ_JE/` -)ֶm~iIcufRׁi!v *\}[_ hc'mi9lKn oJ0sMmٔ*K5^dׅpWVIV9Ffǐ] <$O ɛjr!gjW7p&ca6DcV fza犾w`q`)j6ro/nZ{_V m0Ca~ST_#eeWp]_Z)CCi:FL !Np ;C3K_]wX%}-uAEK`Ƹr +ޕ}(]cYF)üšw+{XHk<N=:0a(iBOKOa ݋U4IxVA!&# 3AO!;eP;ZsZ9Q2ٹg0YIIwV&@|ڙ"U1~P{lf{L- EF.J|S^z%u~7ue?Y/c0"o,Ɛgل$[WmCMOO?SGO.:ICdQdJ K8B< $Xf.}]iCF9`@Yg)iy.CzY!Zb|LS>2t)GL x8 ]'$o/ƙraO2cr> ѤK$ zH+`j_;]Z:Ȉ:p2lUɆ~hԦPP`S1-).T$nF_;nV& A_;1,i^#G )F(!'D:'?9Ai.} MwycSY$x:b;-SNG:88Tqb8ߓ832&U _zPX_N6RHó3$khBYQp"An2>m&)N _MLdW޲x.Z vm"cϭAqY^F.K/8xiN`- a^Zm덴ELu AE_f X\2yh&3ͬXLaGn08j{<Ğ9}dXE$:^PDkd1J#Iyee;_܊(nɟ/XQ󶓢Å(q+&еߟORF`3beV'i|r6ԂOEqDͅS/CߩzMC"Y ,4rQsB!IBf8Pb.mÇk>1ʋsMۏvΑmmWxOa$a\d,e~o9 'ca _5sN`йxNkjӰRZg4PHSs 6:mf /4`ܳh2U=QX&7o {Ԛ0vuQFyHṋ2p։r::3sM ɶX,I,Y UӤT?`NkT29jAgyDqr 3oa U(sr)IGY4fH͛] ^]J09ƥ5tHe$sq( L\ {,AP_QKë.;ڤT](9_]&y0oH3 5"tЗ1zﱧH/OЍ ixY$?' >9sx཰Ǯx rmhVb{ډ_Z)ss` TcYAařB  oQ,D>-4!{;f'VL/2?xU5(tY*p !QzEy=n#V0gg.bN=$)b3PrqbP]>TcDGtAϩĿ:ߗb7qS-H@2@\L |Hd'B $m_~d4 iD?g΅C{/{JU_e; bk2AR[ӞOB,GdBt߂ }. >u^>6JRLJE롌>7SRʗ;?22>(]EpE 01hz7I2H_H| `m猙iegYR7˥D[>̈$\-쿑 d Y]G(s*h\BE" 66܈6ȸd0bdy,g֥T#Q_{@+,_XOexƝRuYY;,޼hmȭ!Tcg*\ dtmɽ-5uEmc8)A oSظ'r Y/fi&usB?ECiRRR¨,•Z/i$H朢>7`XYSHs?#4>hy8@ERY)nRz"N$h0VЉgYpXlTy瓿ߕc@U&XCBoVֶ OEV4+(' sfDIRoBw+*3w̶#ۉ42Q]b! x2{0o t6r acY4w=ÇWְUUFK^[`Yz P6T@$zrѾmȬ[@Ѽ VY#܏g{4o|rڛX2"^Ss>eW*X8o9Kyz>r(~>&EFk}ЅmeW,15 L-&|Oc % ϩwHIrV% 揷=]^d/#! IY(񵆞$#E@+T^J_懔F[\*q.5k9`5Z0ɜ$sLbb2W Pژ\v]vls>+>)J ''M(5. ~acߴ4f4@Naq.d@sr(r+۝ /:GפzwprS[́ʹ4,m$VCvP;4Qr1 yQxqH2Nb|o:J^25xE\F_CG@i`P\ m ?4| he#|^ǔɟ]Q*ꇹ|_] SG}{R9~`R1$\IflxWQ劍J>K#2*'s[JSɥhYMMYjB(qWq) A /&h#Qt%L_t|}zW/~h$n]53s>V >"ŢTIZ5oJ0Fc1J=l}%7k*3( -@O4R`doI2)JGv{m<6 T =L=R`*35,F>>6>E)İHbvm0|2[8l)4VsX(3hL"g^Ȫ"%=ج"VL~*<`ՐaS8(y4MtP团&7TM*pD5fy:$}PPfsm' ߬r3Ӂ܉΂PhÏ$ѷ︚08KZ7eLfTDa*> 0W~>-ƛ7f:F 2It'ui.ޟmL[^^IlKi"lriV-E) Fuzin agC^Y_ 2,תgیUlCs1jZpօ hm uapO`~;IoyhoxE"tZtO&)NtdXv{ 2eV> +AK )C[ j\{e?8[53 zܧc-ˇ˥B2AfS+^ۇqFEHT1"6 ࣬xL{藎UڈqÅ:5_4z#8pهex8GtQ, ܀nA!#m2Zͅ޺ѯw;J\Eϵ)jr oDuhk "9m}@LY-4F/VDݭڄ%?rs%?咒(=߆m.´Ȁk9rzIʡUZP:Wkay_#-$ *)0ubUwb66hGy򵋠CV~?<=^P ݀c%_3-6h[pű~d,'֬o8K|'yIa0Bz4(Et< lGL6pB@ckfk#HrBgO a +ͅvHI[59;RO1kBH7lOww>,"ErbxĶbkXKZksSo9"W+Ą찝L0>H]Dn{tx62RhЖnuB;h"aQlÞ<Ϫ0lb *[j5"y1IL.'q@ n G  Iˢ@_RlZTSO-QTh >\2B6pN{Fvr̯m_Øjء T4[pQ1}\bL/ TdKd):`|6lFxw@b=x=Sh`ڲ;&VҬ*a' K.km yMOLĶ?2PJfH+"hXϤ:j$MaQ |`lZJ>| !VZ 2J fM=jCqᲄ٦gyg ^9"n2sؾS?7lSxa}M6d$$׳]"}*zHGXZ~+PQL8|J$S:A\KEѪS! <ؼ`ãp✍S Cw'w)%r5+"H١Ő9GeSzX|_Dqw|T:Tup4yR/( /Oם+_{aa `߼@8þ֢H-ZpWme2ֶҬ⪧:ˆs 8x:(vm Q @崎 7U$6LQa,HTaUR`=4P׫=|Vs2RzhJ`E{ 3"#|s,[=ʹ@]ؘZX *HU6b r[%c"Fayof m8*O塖F#Jm onAmϐsD/14rQw. ueRMGLwv0!B] |OɒYw-wB}r{ыckXC} FɼLb$''`[r^SڍDק/l,dlkոmU ]_bZwn.nj*AE6P>%(xL0I}Ohֻh%Ր#coiqw}fL+&킊=/Y&}]u:ß9pVbJ'c_2:+ EY).+i6r/gv\MjH">M"SXH1o撎kOpw r>.%Fc~8s`d@Ӱo ژF-[8jp ,FXŐ>f&HiXgg a"Yiğ:j6ťH%'DHxu ]jSxRXI{Ëȩ9, utv#;ǐiuVhxaMw0ӤSd Nbgj0t`M*k9>6GVB  ɹK XRChT=٤0Is)q 7;kp҂ zJIBy\u *֦osw"=Q򥆜WUY^qsZ52|_M^@H57N`ΏN#|} c.7N4"tCiFɖ8$1&sƇ_."3}X7JBYf s IN. I(.+:Y>IåZO?WzkD^ !d).WZ=cNIDR4ɓܥ~Fu} H<|R{ICp 1*z}'qY$%ڒ(c:|nQ(b%N H DdQ&V@/2(hYU^zs?c۵Ewm.|0U{V_ٺ" s⡉2ވ/1k|·X(Ă}a{0[EfeOgr&0?u33{vZ&Ut?\_o߅t) MTPJ0G hL ?^=~.-i߶ ,ިK jI2;!YCa~{ ELUVbSn2 !v &|BcxQ>57Qgkǜ·cmK =Fz47ۢhK-ݻL ؟8Qccqra7F4ZkT8 A?0t΄ 0c<|@G?BXqH}-CO|08rִ&pA]<5s64BW"?A f+CIE$bLyxZ޽esWI%t e%_@9hܾ'A=\LkGhW  dίDzI榁`1(s@p½k(%z]$ v'2g};ON˄ [Mj~ϐ V$z I/-6XPG:`S+5skLa1#Q_OhnG˾ctnB>ujEw k8VЬR;!r?`A Ep(<^U3TClMx7 DM Yl9OOhr{%ʇ󿨚>5Tҁ)qY%Ru 7mX>ƋRs>F}hz LYY[/Ǐ2%! QXiÅ?K.Djq8"Ih`'m,NʋS +!i7^Zxk%@\*P|z6N7aTrȼ8ՏZ&Fc}$$ _cUIr%cYXxi]}aʼn[@LǦx{[$uB`YLg[~:$g_.LlQܹ]q޴?2~'xl%=se&dKVvSG-sr+-aeTcM'(W'$. FE|& +og"e(v*Fvm7L`J;CaDpA٠WDK`c_ ce6LZqH=(ϙ|o%>8\DR @EoX5J5g;9V׈XRj"V_"YǜdA9#v?]#]5%O1 2_yPgnM}U pgXh+(I@S:kWL+͈,.҄\ `hs-T96 h")??7EMo# *@I(0UKúfq qOKBz!A=lV5ҽ{ty8G;JY$PH)zFFn`y WȘ 74dwDZXq7_1Vn)/н͙<øKzoTVڿ#*:n~B,mʱ۔uA'&t#*N,$`Ь XGF,ݣ9Cg@Eĕ54jurbxdIqܟM]zmYK)/bc 2s'>:v~fQQ7ޭ>49X`'ݔ6@LAp滨Zu`B]\ nrٙ{3;`0uŘ@uܗ5 2\GCGH!xZo>W㮋OYMTiU_ij1atn 3GfNU- [a(їA6uU\捨4&,9q*eLKM8`{*I?]3g@#-DŽۗS=yFG2ꧠ'Q(PϩЕ;W9;t2j󖆿0Ndc(=Nl![o%+vRtybxE C~ŀ_dx1 ~o(]3kdrf/JK_/PkZҐ1l* ĽNCeFM>8 ¥o̸Tp,Y-~j5J@w$dGkJ!mL-Zd;Io rNR .fjƍٝRRM[ᘳzC,N7v>,1AD܍>Bm)@q C5&8vY¶5VXj5KScuBnJ 24"'m0RZ'*p&87}ϖ3LqqYkT ~뗖Jp,P_9 +.c"_H vCicp'"m=nl1v-}C B2_]ZA0ގyR!tio7heT6,c+(OnoӲ4T {#_S&HhSjCF6Z:>r6,yޗ>$}m ;+NhpY`@YοODϪ-!HKH_\ ۝HS~m?lZ8)srE"Dzg, ?f+o>T]q9(ju a0N0iܛR*h{m>nȒ0nb+Y~L3,+Ip6 P=Y#~I?(<"NgA̴n/FVX9)xʂMJ6KE55T6eCeO'xM.Є&Ɯij$lā i83oy2#QuPzn,<Œ`KItgΐc&?'Ck\ 6z"SCkMxrq[{;PQy "uGD\8r~NhVcn8elt.qx/zс^[RIӔm:vZj\ĸR̿dG_>UWXdxy) 0{ 7B$6Oj@P0vP"Y^E݈H6/ܒ(㵕e千DeK\6F\V唧N9F!WXvЫ EmG }dޭ|KP^ [iBl/^| 8|.JylñZl; wܡ[,KcKJ4a~A(ߠ\%_y=#ŽD3La!^=p^~;M#`1r(Ia%ślX+Jp/'g4@L=)¤.+r"sQ}q̡Mt+poyFgRNZH*=`oj#-+O8oӰR,226~QDVc>qҿOI23$^z3ksB?b06z cd zpom2cP]2I!=w~>xiAXkTz{7Y8>se EԞ=zM!du-݄=ɧyZOG8bzewQmu(cYc0MHV 5ok1N[@_y0&eH U($~WRwג,_?o&U)]7FL¼MJi& m3h6@/j Df4脣.ǐ폟 2S)E++ש/mn3ȸg&z^xyst{癹cy5]<7=HugLn_aBQq;<7: C8@W%؟ߡ$|2lhJL0yRNٝVG d1,®Iz_rDanMz-['"dԨVW5-}UxRq|ˢYzpNC/wʥ?mz1qff|$6QxG,#2)DB;N5l`S[1DyM`ku ^=Yuő\yǏ:w>u_Oާz_K/P 'gtX#pђTnw{YHY΍b-} lNI/ߛF6{,20'k&`mbl#gS:Zk5$afĘ6l;D _/B5x i% Ī"zw%6p RM\"}lO[3KPtaB;~#8{Qw.w` MKt[u?}l%88bi7^#V=IcY*,qd3 e4I6pNA@g.>fxBU}`$-^AX4)`o8QM/ Pv.eo~`A-⯀2*Pro$944hwhC>0L3+\=A /,HoV;h20FeTU9{Qj,ĬKB`un\50 tt ,'(OM$e<10ҳ5ZS!QDNc J|$Ѡڀqn(V`^7(GCDҡ="WerL7 vRvO=_P*ߥo7 3^8 ;`uaP'j|6iz#Ra 7=ɺk dKYr2ê{n!O2. 7LjQT{&\f4 + Tߪ`_\Tp Ⱥ֔Akpդ`(XohZ M Bb pHAnDPpOj6QUE[mSj]_̸.@z:>\{~b[gdZ-H,f!4$\dSQZusEZۋlBD`Jִ\4T!nYboLbdf3S#p&{dz-%+HbU@񕋭}nqM ( OpYKӔmUaDoS3iY9HT3Uft 64П?Q:g_#?['o:w"}}AĈǦmKeMa?w.aUMm9 UX m1E7MXALWdU|hVWR?7{#F 匴z9QL9%Z>5ðy@RE&GG:*ë~_1 d3 0IưyGu=h& R,\*R|c Ys࿎q#6B›]J%1m lrKlUd1lOMl:$FdrfcU~?V4!H]c10|UU{k*u14@~ H4K͚t,.&w \baB|T`e -fTe vH& K_<~-'du 7d')-t$2Eh(YF/O܇>\Ba tQ_EސC!=*jyZ΋jV8|noak=,:ZZ7̫٦cC;GJ;OUDn-E[-" "֡өihrc?yQ!~:n덢2RHwFP8:cbw;/;@6BMn]D޴|L.`:$PT¿84jXAI o*FV^7i>`29Cb*BS )Ka7+D8&J`fѝ?nvnf|t5 fC.&t"b`@l1x-&\.Qo*53Ty Df,Mh }pP!s2 QDc'6""Xa,{w 5PXHY s黳qԬ^b hwm]S.HeU;groTcvSf( BOeu}ܦ3gDi\\_=V+_ƚ_r_ UuKBp̐AaO>A5)#Xᥘa`S%tMsp|oFʄ5窘ۓ&ѸF9:ez,zU /O(L=ZZ톺}Ɣ'u 3TZԘfP#6l+v}W_f†EDWɩ=e)$|+!Mk&TlA:m'z0j؁WHr9&<$kr< 9N<3h]k#U\[ixTs!n-! 6Ue6XM]8 ^%,K|έIvu>ʩJde;S$+w[L%YvΠieQa.h5̦~  Q#+׋˦S y$evF.JܚC:h6GΓI5?b85˔P#&ۙA(jZ?µt}zJ-ImDTD畓9mVE'{s+5~ 5n eXoc?#u"F>)h}2$+_Y[%t9'B`ZPRKHvmch | k$f P?nT@S N}\KYnh檪" BcjT|vi8V4(@Dq1a{su16[e%0ȊW\c/^$%ȠhN"e{Fmqu;HM\&+-\-%tQaFwJo遝7 ZR, p߉٘&tH 8ɲtU~A0KX0SFMt˕iŧ!zPlE\ǿ] Q÷ $YRbx;-=3B߹,3v:MWLnE;϶ \+^z0HhFV89wTmԗ(nVZZ[~=QacgҽB kl n An1$JJ)Hu.:8^"?A 4杇 _" Y؛♟왔aJgA6}gՇ >{unvXb-vPz5, \ דUgarW}ϯk1̍ ͠qݟu(H6'1lmB k.N 0F\m擔3%DmIsE9Yz#\bٿ次e. V04\:5 1ђZ? 45Gr?N| LVo7d8rb*׆~$(J]/MvrḄd)^ lęxz&1Ud翺h \Y)SZԜ`QE+$F3t${ZU]5g}5?}35YTG$ӣ!qgkvmEF3R-4]}{'*nLGE52BbVk C!y#^bܱ l+Jʬ5,)bmj|D)ckS/@~m>b?qmC7TܯX+n.@0AB1ﲢe&q_k)|4ӚP #Y`S g{+[gW7&T`T;GݚV'@d;`&6.n604%A}OpR~AY?iWgCiF3e|-+eC2է"ah:,%Tv/N5 hbEtpp ys*D@aд)v'#GE% lƨa nw~'asz؜^?w:X.•h(S0ӠA{o,zS,HH~4m;@WZh|j#xizףs0c,Er5FB@n[PƦ8aE{3G̊䖑/d)?UVD ߫ do^,vb) zW7X.k0- 7o gu_5 &ٗ Pk4uuL'Ķe:G$="}8^;lڝ g>r_ZW>${+nH^ gO Omke]GYR|, fvvDV`(ܶQsH̄4M, 3>+g>vvQ ύn$iѕ.[xtW-iVrdC3}C`qY n=5;8ImH;U zaxc:<"n`Rg%H?VG=:2JN4*0if_3ן< Z:('_d-BxOo/ 0hhڧ+SO38`6sd0ekXC¯{qˍd9p7 ̺R+'R5otI,*_ ߷$~')MyW*}! DU&,1J4Ϯ PJ}o ~ʸ$aͽrBhjUj`LYӡ܈$s[';t3 T}~\Z.mjm/4$yT)fI9U)̛Nڎ;&o-k_ 1쇎jKa]̊|u/FyaPUBb,:_2V:W8b!52a$mÈ'b UsG_x:t2Ps0eGJ ,8wd;5Б4r?n7bq. Qeإb q(kz*a %~;_yiiogܞxOմo4Rpp,k,yD-z 8c. ٺ*mȌYq-#|0)ϔ4C]/V堣:klr+F0:UaJ|VR(SrF z`zRYW{1qڼ ӱa16K6Ë10vƕ D/LwSdJWJPJ>iz_#ԃy(-z։Ld# I7l#8UNPUxq*[s!9s$ΔZC;4٢w čn%xIIӼ<ē࿼f yA,V:rGM @"m`ɶ\MIq_HD2=z|yGs-닮 q2h9صZ4pFŤ_m)|Sgs77ݗ},UF1°JE(̂.@BNl} |o:z7\)= Y1+la*j͙`(>g=:ˢa+ȑ69KTV~>VpRj퍎-8_"yP^I"g+İտl4Xͯ*= 匘8[0MkZ 2 62LP䠏yr#S}1r@JRHOrW8KaԐ1vݢJԳ}4&I=||p&)m)$W'l{e&J͝f=-|u [[S^I/ܑ4_Cdt%0F4&*?G1gy3ZMܪ(Si7Xπ: ]{h]Pׅ["HY o-Oͬ$wz8J颍k<Xs p)YQF@? .v J#~2|eڑі|uظv b;)ioC f:kW.-D[*{w5ҏ?.٭+:Y:>t۔鐠.>G @` 8ɐhr)Y a9H3[ifK- DJ=(<_qhs**P^BIλ㠐rXL/JP ݤ@]-O>\'YǛggLWHwf&Ϣ׿L {r*q K偀5@]D T )V~acK ++{C@[y`^ϒfV27(`C 2q25nţn< _}C'(!+ &59ͭy E-btZuu7iN|LN&yeX^C~3aE\IOMFJylwCݭ|Xֵ+"gvTQN@$ibh-c9lJP;|lC2c9a"m=m9G| j2g$-eX85f'O!^l^ ?adY*wE N(FmR>~Jd{{GW0qZb< GM~ nykH)x%7[VS{AE %'tTGr;A'9aPȇPw\)"[edϟ`z0OceȞ5çXu]At` B]YtJ|eչJnݒ1e͋_M{Fg|>)+gZLj[8 ډʅ`Ζtո9Uܜx ˯5 Ύ* XDgȖu9&ġ58m3bZ܄ϓ593bt)W[ ^I~bQ,8+7iWxԜ_5K-uNG !'FF+pD(\s:@5,&o^BNkIW@lfrql[jxmLύF'|tZ~-g -ai{+{ 5p){t)C:kD9 pMu<VPRD8rSj@{!ʜ[nO uPztQ<2,uU9Z-7d\7+}\=CʓپjvPɻt >JGP7cmz$~&5~U2{/zt4ǸM8tHtM9#(t2HcőXMq3o b k/BV&.>K۩G,-SPVU\ߓo;gKIRrT\ۛC8j";@$an;抽",.,/ ȍДtQެ\i& 'riu},_"8K/S8N{KUH&X/3+D:) p\Rr8[f %M5*WN  cae^E ˗TZ+Ul)o"\xZ>M&yJb!=> qFTC)K\XاOZ6ә+os#٧;+j2i<[i(0X췩 bǤ_ұ]绬Wn,P{48mآoKvw^:ǢJTƅ?^E ! PWf͐2_Ž2OndQ[N"uoTkk Ζ]hHܢjnF^e|ͥzKZRo&=r,ݷf߽]Maܯ#}'*j&Լ*la5EX2\1[愎y7Cp|E0FDiۼ4#pS:`Ik(aR-A`zƆ]D FnnBm#iŤOs'vCPm:.dY-̿lk=fwT.pBa.VAq?v0?aRL5HP6_Eʂ]" ⒴^LՏx661҂|&tKEO ;dvǧv^=XG8 c}qW{;_;qyjA^H-XL:ΐ6~U 'MGTy_3Ot;smؠ1pwBHv.wq( :r{yhc'n44$kVdkib:{6C_X!x/eE\6t@@zSVÃ[^|M߷&AJ!Z6{B[oDxfd7sx$1Məݰ(ƨp1+۸4w緋讼$X6YJn[ gQzf ]')ys+!AvC87Atk L.&CO׏ftS/sc1 Wy[&܍׮W*[ԺfN[Ջ(O0FNadCqkq~Gp{/?N2C z~S8\b\,&. La;JQIMYfT\VʈW߆zwIrTnv)IUB*L-&xg zXƣ9޼" WS vעPx^3 qCwֳ; nUmHR1C McxYWy_lQ1?lbw3K&3v*#?eg z6|`Gh\SIzXAiގ&{dq3dwhfM``%5sv&e Qݝ6+R6r=LGt4&fqIj8aI=&t69Rt=_l rJhqN˗@ RFroD p0li| ^jg6|NOef'ըUR&bi֜:+拷G=1R,2*>_ FEnH)XM3Lp(snqYqkAO6 MFLA7֕ԝsuFv6U)84BgҜwX[G8IJ%/YBc\.ţtu7NT(exF^>$k$s#+̀*8<HP"gό>Jk>vβz!־xg@ӕ)YqH](-0 l{&/4?ľdEݮ`{0z{l[Ņl 3J @2c1=C4""Ƭ3| (`۷ ]Ԣ) J)2/ά!j/A^Lɹˎ-^zu!uJP %W4FCPBfr?\ HNȽI/kDpAJ<#kdPf䣋 M0lFۂpf L%{4X؅F5E2n_gpeB`{W I ,1`~ZIW} N n+K ])T~OɄ,npキbl%j*"h=d9%Ou*`w0VRk{JLs)kVڐj2 @Ն? V}XvfzQ =H|n@>5jAHK7B;[/vhG4$51 C ]E*"#g#șȔE"v+l#l:̳@E`-{T1_h67,Aq $8oWkzn@^ԴN4yr~lN<_H.Xn֏g-5wؙ~98B.?A:G~:&Ɵ]Kx67@Wi RtցO߂ܯH,|Ϥ1nRx$S)SVY[?ɀ#I+?9ʢ_'Im"{Tr_f>{SkJwEFSOf{]"9 O[37W3"=ktqRaK](ȭ!R*r}\|stYtk6f)p9me/`V|,AK17oVN'6Es=cTgV^9Z@ W ^c9 ?c<SH'^IB<|x5قlI˛9[7 a? !@(H'I!ˌ5{ۥ?fjk=2Tw.J3T :J)t^pp=kӼ*8X'{ k,e-qxN9]ꖆ{He;ͫ-8C HaQ8\nOPeK(Y!o{Fn2o ! D{E8ճ',t9c@{gN/gcxB-@&05ҹ+?h*>#%z}6;OUwwO!n Rz4l`U1ȖEXLZBw:/h8Tߢ}M)~Zv+ V :L<^hLf:JPԶ&crʚU*TYk lyQIDymp` H~%܏\(XB"XnD`'F2jN=h'RvEy$z'ʚ6&^=>d)} N:(0_Cv-ث cw;хoNYǼ7!l51c\?/ fzB@%t>LR_ xt(!. KD \2stZK3.uŀ *(՜?`t0Rp%ѧ}{xo _aY^9-n;WĊԉŋ*l"v23XLq+]WGL˵~k4sZ(}hlۡ&e+@J| (pnzfy.8&q[ؠad^I- &+f4(pp=04n~|qg)g* QQ~H=)!PbO:YݯgE~n=)+F{FJLe сez'r|$E**y2o: yb2ɆYO3yPѹ݅*&"Dm}].j?j0fp G %&D 󯏮`zYoj!v#ʍȹ6p "WYs,@l☢Zzl A¿# R-0`e#/()kWe¼1Q}ռKrWи#uC 8+yYeُ-)up0+k^a·Gs:Fs;G]=( $tS(`˭Kv~xuC )ʞ>g9t؄VxLo|p˴Pv{$%>eb_v=i:Vw VnE )䈬 +K_fia;DroDzca7:S}rlxb;0=G2r|J8j&{M'yAt]w>~Z.zw I㧁 }{_ vsӡ:wb PV'Qg(SdN V=^{|v: ͭEjHWS:DLrj+c`iĩ{a`M9cH' ,cf?M @a]oJކaqA#!wjf!|u 'LeaO>brZ| DaZj(7zBM1=>$M=$`(h};kAjuwA(w:ɮWSLʻX!@Ml?A䝗tsKReDf+TZXr5#خx. | XwyRǫ߾X?s¬*w ܧFMi{=:%] i/Y]%Wri}TƋSWd$I7"~|XOFn6M/6}X <2,d~7 صV8X,!äUňdE.PGH)m8F#9"W% ~o˓z$b׉W]zֽay3SXy/'<8bvmXw q`iG݋gI4`$HXs*\7 :=("XJu@F sl8Qz!l挞aU`mXZ|· Ҙ {t Hַ֩ }[ Uq,Tu-jSto!r'(>fQSnDlmCH=/p6#QgeoQiڣ܄i]*8a:|?A,-3W]K{(Y=Gi$]ĬDQ-Evΐd'38^sUgC{RkMF{Ἅiz YV  {o7}]ʾkdbɥu|RS? 4/2{9Lʙh2@ҷ!oKj<p>%]ސQP?B#SlJ-HwFu4팋 ]W uc!1;8F2=ිZd~Ԏ6! >_̞8vgRvCEiy{vb^vaI( 52"A.>w䞖S#1ڴ \qGMa.;ƛ^t $Tx hspqct˓؊bO̢i/ gLi2hZ-R-j=7sF(LF澕 T!EH<F=9YyԷ'Z9KIxzM;%ՓiلJ?»V owƨʫ39l5nuuI<(l(FZMއ[qf@{B:: 3 6H?a$79͞/@HjѨ#PS`^Q=\O`CQ52\PQڻrnPmOD^7 tNkjqbX.AXm/eoӎaϼbŲ=Gd^jdew6Q 4[1_?Qw,ǧs *azw4hdƄXuB\:`Q*<.4>8_%*_s=(.4+odKېQ~={$ђwY1C?>[(CГ2 |pϤfq k":<4j^l85HjKͥ(}PŠGeMgfG]Vu ^˂I5U},agMqZ#-Cnу($TP:b gn8=BNUJJ*~ JT0guhjgԄ! yv5j` A/ p "(&  Rt pN&H5W2Z5FiO'\t_6`qWEs.؍hi9rLʖ{9f׷Z]8Kg:S0/PU>3<D/SAo UlnU(~begd{riIu[9y`XbD5՟WXsmK (@Sh2׃$F@.1r2;;,t4ޘV/%bdG\#lVS* ؃ Eސr3Z k3$NA iqdUw йP%Z3*LLR"~8o~yZڇzR,ҶUgn= eKKmjEI ?j>F~>9Tt;P|6u^vw+pQR$/uڌZQWx+}}FmnBCh{{g+@EI[ +@wl==Ao}Ϗ]0(P^"GhՠZf `-9֧lem[ I֙C0dggR%~5 *g"D-v SH+삖VEEc־PusyuO2̸"ɉ+HLc)xG@ 0of/| 2$Y##*p=BMڥ&FQ+` }bM&{Guxw. 9 >ΣR d<^$1Q#ryh`QiqO& 22+raP)(Gd1 hVW)p_[,  8Uv׍6|3}[!6[g; tY;TPq~b3F6ycW)E%x4do{0J٢LսO -MZ'LJXkFm^kM"rUK8-n!LTm ZM'C\ϢEMɑ% mmbW`w0HmK=T[mۓTf]"mh \>B_3; Y"X[ t!j憎&f18mm6K :}=$ 7iӴ==ih5~x[k4hͺx.uWhj_5jNJhk]3f/q`F@e'B%Sg^MCm%%o9.Z+ZvWNA~얉e>{3pQ>º[BӂA: E >$:gGC"h`]*d`~Zjah4TD|'խ Of^ 7 >6Mnɂ+kKf?(I K ~ZH_rb@Yo:gJ@;i71 Ju+xIm!g?ۛN3ŞPKi( LIOLMf#.g=ӻ[qyE/{ǯna vPc7՚z(Ҏw6Czp+5ہ-;A>+ZL$VACZI%}Rj|} d{bvE$yꈃHfZU3^5u8{Qdj;Ms)]ŵO[^A.'Ħy9*@(G2\GT?%oM z)MTp&/ BcSxJ?J*aI'6ܡH !=G@GS]硇fc̡>e*Y9|,ٛ鱣]oݴ]@r,Ҽ=e|z&ZLvY%pX|5-$C W0p_iCP_xF SͭiXI4ADE/Uqy*Q%;m|EvZ~mGS(. w .10k4chJ ϩi-6ٜG+c``BS, <t_N Hj&cL&(0 %.2 a]:R2&;-Sp.5-5q +JŖk@vxŁT d>n敆=elwy-U@Qޏ2nw`hNx57^oXy*AJX΃Q&Hr.=EЙ*#lf]%Xkgn^TjB%Q{Jgя Ʊ5 _e ]/(éL4u?)_=vNy9/ &j#%d.ˤ0s:~y˅}>޼̱Ľvq()eSIkNjC~V; KxQ"f>B?`T3x*iE#|m#WyڥKO~ʉw,*о'b%(͔$}ی ϋI3$ՙѦ3!#ÚSJcdGl#0Bs$޵3XEg1FNiGNDox?4a?!EuY. }NV?{H.?e_a'fi0m XtHãhŸ>=zWa YpS+WQKsZ|m1msEpNо&Bpc˃b(#bOelJ9o Z6c뚐c* ˃'8 #9> N/R?f\קry4\4m}:1lhX) ]tx؟/y4ڳΔQ\ 1 +o0~@J*)x7ֲeAӽVr刴Բ%`bd [M~MqУeYj"L=[>Pnn8 whm_/kDLmrsWg=þIjݫEyASPY4fW#k2"ט=/𘮴0s[>45[>B-R[Pu3U?i=j^FC Ǽ#BNΝEΥ ^x!v ?$֦DEE;DIx59ׇٴS{'U}t']Yη9ʺ =Vd x$ꬰ<$b2]zN97:iMDm2焲*&j!>z̔vu{&F IM c*+e/>:}@&Qr>ؚ3FL9gv쾝)“ Lη9@*RFk!s6]V]\دy#hȺ)9_QsP"nu r-3Or!i)qt zahl?fNC坖l*Z]_o*6gJAd2-9 1쇇 ί__v3od˱"K1GO3ҵ-ϓ@ʑ`}Ht"'I**\U4k"D ;\/,l9 ;Iì*(Bf1+̹]&D4x@ZQ鉸 S  )$v *qHj'4)p37 ˰|Gy .x+n0@jc_\qLTPR"# _M460&p3xy}, ּU;$s\fs2-@XEu0GI4>w |=I4K04L`Io[17]FWSn@"PamryDSݛ/ H"ny*D7p$c"jij fJ|GV&Sdjv !tcI*bTrD!R1RDVjqT,&nXfa*iC͉ ̉'~j_'#l[v$1;ϒ֗Xs}C(fIw4ʺlP 2YI KZ w`J`OYY8!` 4Nh[j'/-m9܊NC6ߒ<7c؂{0y 6tlt6̮$?A2%R?WS >0/XS-,Dve%&9Y#ώ"zKs d6zRGm4>ܕx%ӈƧ66`sQ&!o+`9jeɁ&/@/XIT}6jg4D*r,(iDŠ~3jE-AKѹjE 632"g ܁ rOg-ZU ꜰsSG&wWmx޵;4TUX[dJӊu/dO-D,?߭-5&;a4߽=wYڲZc i8#;"}9r$WMH 1[+]r2w(}l8*ZX-- x,/qK&Bxdַ 89_IE;|j?uB!&mܟ1<,Qh$|;$M;=sD-)ʶ{oB 5ԸI[MJ‹j_.sacO/Jnd?dT,޸BL Rch"xZ5#?j0 ӵ"xfrXjJ-VU-I 4`tug 3DZ%.}=Yީ)ZLU@ ֆ-޴:sow6eg;؇R(72:k}#hi (=,ͪGh2ey`5Q$6T%Õ.NH>*iPu{XD-޹DvU֘'saPy=5C=4j %\:QKY)Հ*N~+~ ]}zJ+ rgj7W1JOm;ŋPPg/ @5N 0Vr^( A皈 dwډ7;([+rNLJ<.\'w_ՑD F&,bqG^atmkO:m|Kp)YjsyU=9; @8L\1O 1 [#lMd|1}:Bߺ-a{3a}86YqPJl2B8X?:ONSѣ1L]-ϟ| QEUY#E/nog=_+ۨ)^n(Az!;) ޻$ܙdJ|)UV¿h?z9 ̙h9yeCy&|#mho>0_Z5MA}97C2)Lu!)TlB&m>lƜL~AA~yBD,K5`nvKQ4k/̎Əi f%=6۶8=<,.b@W%JIoK:%sNqYoxmK. )K;KRH ;x=G[B`͑!@0/F7NhP oB[C\[(hadAv9ə[;2A;ݰ*CiY۔A֤b܁{]C`\ b$:5kHOO#̮H$~&9G1XӛӮIR. 0z!.(Z%)Fj94>UwfgMc}0S̉Y\T`ʒ|/eH~[) f!ӈA4 OE<4BxpiyWyC7O|5T΄ncD毙.#X`Nkbf~镜,21ssPSPʍѷh6]V~"kgݨ$N:''J혊}.pi86G~߾D,ʜj:' oh5=%h:mSD H1 |'g^EQ1g9CPCF ZHz)(ýJX_Au3]o4(l-bGҲ%*/Ҵֺ:ϟH/̔Ȥ/ňG#5z @O̯|%-Uitgҟnlsi;{<]IWn'7ZS胓,~' 5PъE(O PLNX;U"z<ǎ viЇAv$@RxȲϢ5?MbIAIH"Z ,U"aŜאxtؽ_6 2 hx V4dF?cyυ֛F#Q#cdˬBק'NsނΏI|)AwX(Лwn G>[ K̫a 0C)U&b/56xDqտrƥpJd CnFh4Azwcm`` z&(Soc$mzP va̳qbXұ`DΊ1˼D3{m?ˣP}V?xYb+mdje_~|dw-'ڴj [KnIy yW;i>{֑TAK!^<>Xݙ1NŸqvS>n(^-s='ugSFL`-NpUNN$t:>X_9FlbF19Qz</) d !lb~ІAlǭɸ'߮50{~<Q(Ö褃gũZw2f{8ЕR'p @dpmQ 2(E&_iGEi0ɎG1M2ϾjDdw`6uz:!E @nK@6x^eSW±srr4}]l6=*?csDO_|_ aEtlToh;6)}QRI6Y%$(++33eUpT')~zx'rs9m(hpnO[lj@-4lC+}C\ۭozu(|~Oa^05xs;խ{eGUrgdV{:r/IGC ~O/7t$cu4>}߳+ Qbzz^!r}TtوSkhZ4$Y]%M~@F48Ts^yU,ߋռGc#f'cK'W:I~t9Ix6;1a o,^2.J'nn97Ie(sFNSvw}p̆R_v!̼xBf#hrJTkJ[=hńZ*ЅZ^H:2v'gN耜 mfjîczJ `A)5tIA yl(a-@uA}f\[A7AYMC6YWAJIXEKĪ`ӿh|*eRÁ;CEA?EҔa$n[;=`_NP:$f$Ƨ.ٔ9q: )|Bj Kqf:z/y^iʨ}Qi؝{T\Ru0 \POfwxv%==:6W%e0$؝g& x i7UAl2)9N|ohUQ(<4^U /xEׁ ɹt742jФ|0/-5]d:AZ{)QTXrbpiFƶR_Ħ .ShOG<\2iMDf)!6E}NȢ+7H6 51jgB7>UTGÛѱ==QsJ ^+a]{)萫QQԋַ2?34[ E/s'\[Y6T rc yT|^ҝ?~ZEB1nZňN9Iu~_v2'!ſfy3aQ):@ Qtթw@b7ˣ>ߔ\e(q|QFxu 뼢D!mE,S.7S4ɡTv܊dπ_`J&C9k27kD@\~S) UX)zϙRZ`3gfj_yy 0"҄$0umԧږQ H[ Gqe[fé/}4ZG)lhj:~)*fm"vntm2{rY[kIFm|?dr`Z5yTm!%|o8ڸm:M<*; mh0 JTe.`4gbD3MY-tA )5%&At`rH@ Q2C;4&˳־y#?#ߟD.%(<RCfU T:4r-tֽ~lbM  {8"ngi’phN,Т?ioU0,xrfPNЋT =%F8&$WR𫮳4@- @POiGe_©&(z@u/N_,Ѩslcrg2A ":Mf].;J#ܢ8mQK]D\8+TYWaBM]S;t瓧LZ@_m"> _sߋw6id ٘SAS7vq4^E1P}UQf@bf^Ky3XAvdmjq}).3'*@ DBN5B!n4Յ<5hFtyq%8:Er@5]Sߴ`2vl(7R6W -K0P^C7OYLi/(4GMu%?˝# )hNP=&5#%f-o{17@.@?(Lq$.tㆻX|k姏GdJ/#~i}E rwthD+cy:j5@I6~9=^΋D:W;ݵU$@|޾0| N  U6[z?nS4,lSCeSy<\Dc=̴A6t9:oN(߭̎l-*񝽫NokOE`^@.0!Ӱ2|eIҝD~ƇRN*m@GVܼ .X3gLVR=i%,)3b#YAB\mG]#AY(Tq+bT*>M89e{?wvm-`!r$xxO1u[Y˥3CSǡP#T[ݣ? 4U&:$wҠNs+X ) = Sv-{+vANO=F˜ef >*o=%b2zT:z9?OB:4r\Pf @/뫗oAaaRgLB2OZ|oq]^nCGT-ҚzlKN]QfD>F_u)G6&pȴRϾqJK)0%ame1a-: @Ԓ̖E-Fk_\o\U(k4DU,Y-^3BYk\LrQm=~]&RTR{g\(^m^H>s0A|Fy8':dެ@ ltgI=.A X$f6=^>i"р`e\d=?5<Ҏӳ{cOEAe‘$dV^Y&Io[Y]CtIwG:OShޣ -V2"MylPg1Jl/}|o18>.<^TH$c&D𽐙E#BӘLwz`MI9pb~ҧ nK.i'.@ C(Nq7}(~wzofs-{3@LB r%nđ U'tlAXa|W,^EkH෹e i:\=ѥw9J(5O/A=ƕ8u #mx03-esK 0DyIoIWRǧ-H8ۭ0P&?$֯Le¾;ః& kROE= 'O!by3Z˿X{uoY?0?mmQjGP ` JF l7e^dA?+>P3EIA}f[iQLN{@ɢsqw|I (=@k+#.OV ~I)dyk^ʜ+8b€<8Kg"Fr\/Q!B${A jaL 4!Fx p8g. |-8.H>gm|%{IGDCuAJPKyÃN 쏸8C  hƸX&*SnG^f|1Skn(y^ o$$7 *YdtaR͕*S?ٟF;"guBO6aT#~>_J]iPg)j̝Zmj) sGq UJZs[_ڟ沤 C sϰWr9}{?,`BJx~ĀӢ*V ~[Н=y4ek#b|j>r9LbI|ճWcc!>(1a|< ?1C0PSCT#ct;c*Z`xpfJ#LAƩFN—M@ϿKn J̚i@:%`Q7ߎxe6tߗjX1%ھc?&u^6w (X+ja aE#T u/ބ˽ )U/qn[ٔSGL CvOb. 90ظ8'MB1EB*\o  J/ګreƒ0/B_gA" .WJRhI *K:M3A+Dv&*MF@meٚ'Ƞnm٭<,+?o ` o@)|v3)^2a`CfC0%~)=rTZEh 25˪XOtc͊G2*syb΂cQm[#0vBvZ&0G|\HqwtFjJw3 U"^E(lHʐ lN#R'bnM TLo2+J2P[ъ7v G8:6BQ^FwHhiazj4*ЖRb1*hJN 6&gL fO nDh{NPXg'|19C[rZ)GpOJ#-3:7 ~.}ťk&o{k`17PڼR! Y3<Ƅ)Ft(YV\aۭϿO|d N6IƗ ᳹0,i$@{j[V6=J#Ro)ohy-Q-c&jɀ1EšpbH7Я+LM/+>=bm:sI;X\-r^jW9џ{hݎKN99盀Hd\N?0Ks1 M# ;)QWWdB0UB4=QW"'b`#H$XN4kkUia&HcM!pt<Ԛk.0vcH8߾љ}bJs`IӁWv3tF]mYm%Jy6_ϜAk#~̉Z!㴫R{Cɯ˻YH{RO$+*M E&3EEwiUX6<1n㙗 ~,ʣo0h?Z%GY扟,=- L$ְt,o~jGI Wb9o95+vnny䮍81 c55xeJFyԔqzGWA1Kzg-idkѲ:n!)J2ǝXfo.gXi ]!ZEK!5eS[<^?w2u6U-3Ȕ$$aY%ᔭ"Imo<5|ӕ4=`x=z;*<,ݿw,)j-܉U"M,+kֱ#((ೡӡVE1 ~bu̸tH:N>UOmM0RYw5jCH(XxK& ¥*/]6TC .hHuX3{ٱW6DM9%*HmO*GكG )⣺ux*@c3 "Bµ2L㌹~:dqԔygo¥ _9] %2^@'^ؑhls O35'[Uƙ6o"V_.~׸ǡ˼~mNJى(̦~yB eHǁD(!t=LHpKl㹒#gMfRx]֟y:))X5×4Y0iπSv(Z;KW̗MUza;C~nCř%}D(609LwNI#)3; q|QpٜW;I,mRp h,05l?",TƗ݇;_@A~Q :yw7}~ΚUԉGz#4s,[OfN`/Φ`Keu0*=i{ ڏ"!_=ۙ3m:uu/NUN..wȏq~,F2CA&]Fgg](0wʆ㍐ce+ϝpJEY@;vo(Nal{ݹ#Y+uj|n aa wF+)NjyB˾k3B}e|trlR7I%dpO@{&YA4JG}䣚UTPi68+EطmfYl1xgFULZd[QXu3m4ykt:/U`m ZėCx2hЋ'V[W?REvhR@]zk -,֗Ÿ *ǝ{IyY]SG T+M!Bw&ᬏMد9Tӄ 3Q8[49ok Oo"OIӚKx_$sc?ҁ8| x<"q&! (/*pgPTAR- B?f5[Mcv8H !Q_Jf%94z|r"rP | 707bx8"fug'5;HCUDC{"9+z05ː# 1#о~NOX>F5$M1{dO.bkb41^06ȼ bEZ2K[!p >W~;ٴ7*4 DHV067FA7_^4r^nTd$E!+B)K|_$PV P/3:U.`bG6G&a}sSE|1 2z3„BA RP]MV&sr2mxw ?iVA,gg]jzu - k}k @q'ZkB( ;%c8؇ kA[X\iygv`ֽ@Bk'ry]odwJCq'SHWv?YSp ?]aKLv|6!rۘ Bikw6z6&ѣS ]r;똯)Ip9J@'>$72VRR9?dz<cdQ~*1k~$)R֑ Mk+ܺ 4j_AcQ'6M@ "pfUg!ڳD|xts uwJ?Ý&.؏fOI VצD#/̐.џQ?xͿ }m*5Oa >hw{U;GL)7vyW@g^f٩=*~{JwlBZj9 -?N/BoH'х1.4J"]Aտ@G|p M)Ps-״vxEgkqac4ܚ^Mqx{:,Y8Έ3̱Pfwų &J@ $Y&xɨ_ż S4>m;0r.Ȳ/{5SalEI͵;f?ΧSa'o |BJ4n-I;oJl#nj ':+ezUR@}m5ת兆y$Q2AJ0Gl`+"Wt sOQ@~Q\3+?4Da9g+̩ذvvY;q97)=ƇuVևy'Ar5h2g=mnYhOU04IҊ)Ұ#~Ue̥r ,wb <\=;cHZ 庅_ow@.{u\܉T+vȱٳb3/2Eg7x)ȮڞIoI Wh'j=vG-flETA_pjs)7p ZܺȾCM }d&l.ǔ'U!v6\%1xެj:L f#?Łdbm`XVZ+G*wڄ] {):Õ#?OI@#2"0!LeS䦭9~q٭=eOPdiMH^xQw|:91eVx↸Z En`VTϏ󅳜Y5:Ft%6"~j^9o7M&4,Ou\[ñH ނpR4B#_WtCINO@b-,_NUW%drnfu.kGf#") l⻧9*j*ZqH`i>Ќ,EKmr"GbI"fU+Z>]8娀9zr);6XV+Wcyӻqχub>Ao7j7 kN} 閗w 2 qI_\pVNS"Hx/=Cn< DîT>~Imf}CqijeN[ A^i0;6A3$vQ6ٕ^M ("N(._7PLs-xJg.-.ImOZ),/ULO~ C>䁰(ouMܬ q//AmQQQ[dҡNh` mWv5 +0f K{tE\Ia鎢T /h}B1`;ဿg2w69!ot 3o!{( *+ՌH8H?XjrX3cpѷ8K6\б>bH͋$I6y z47z w;uŽyTZEl`0)\z뭒ATY^˄mJ,)ia؞L#ź_23Z mUpN0;QB_{R4HkdcQY,2C{FȒHGsw3sJ' g&#i0"_DžR% Ą%fwiQʼnlqM|(1QZ< =|6ϏQbe<r X0 Ցx;#QȻք]&r̙((V LD!}v_nW>Ǐ+8:|Kc(Am[ף9Ocr+(%:!?[bĄk99Rij7Bn+F'ӳlZ0O A:h5~Tnq4qP6'9%K, oQ{\*W5z]څ+$eJwzxw( KT/FV`+(-7w+/^ M|}B'Pu anT}[XI ܶ}vASFj[>ZMei|AGXsd*]qS?-`CG'H+tlXQv&[ROoǜ>4#J6|`Q}4Rqy Lnaa‚u,WIudhll3}䗅Jֽw/XA5BͿ1 8Rs*f 2D9Pod Dil'o *bŤH .!{'p"IR8FPretr\$S1λɥhzR.}e $.fi%xy$cr 4Za -3(0{'7;܏ItٰqBYq=:ٰcsP.BYRXv3 C;%fw[,|e$lTܘ:OPdc"% .x D /}.z4M&ر}eZ>빺*%w>Sd).^=:s no[[(ʹ εt2p՜)Xnͪ04$W QFCg׻µ4Ӷy[`kA䁴fR|߼ q|u]Ξ5@A&4dKlW *#%6R,Q2O\ |,F/@rPI1OT߉/#sYm׾#nα00 yXz㺡e\ϒ.OGaBg.L ^ZǐZ*P]p׻ Ixy97%5=}Mv7'Fl>t稨|~i&)/qd s# ;k.ڃ`/4r@>z._hAzmBw <^qd>*_&T .%o)0%vt(JW{uuy%ʴku^n\ j[yf8?Z7]V`aX&a>uY= }/WkG*ƹAV!!W`|0%Q:(Y1Qy9cC2S9K;$tF|BYƁQc&"ؓW 0Vlb+ip,U lys~yϊT ̺9  !w= Clfシ(u ޗakk(/@|5'<B^yghY?ll C at;6}.4)3I4vw2̮,q{ĢXroP{ǞIYBBiֈW 'Yw{uy_KF[B7B_)nї]שJ +eij˱P#1"8-8s6HRWE1P5;p7mepV]kr&GjI ^cij$B}bֲy}+زꮧ2F"Ff%-Li&߅ACƜHh >5$eAVPTX4)Q^epEiq/$4^N֡KUSA 7ҜFyo˛ъwsk8Ȉx<4DG^Y {c(%m:gWd>}Z!‡`zmDU􈲧b^ԳtE>hq<6 u4Yzo_f{ߑ'*Ҩx޲ot[PAO~Gv$' dw Ug ށD ZYS ! f7 E t>w{ Z`kFe>oحBnv^uIFMjj3\9ww~#cdٞ.<&PAVmlw2bΰwj㘤2#Ȫ^**޹=ϊl;ğj D**)7ڄu1&Et,a%*fƒhᾏߖ=2UzF\\Sˉ*a˴p_/C&"_߭URZTVY`ԜDzT1ݹ0\%yڼi/@C(K4Zt :z;ym~?'.̽zί<9ӷțPBK{O4m賕o =5[h;Ai10RJ\ln_+aZ&5h( EfTNƂF[΄;OPqq?< aRbE jU>ЁBŎnn %p&~6֠.?O޼FPpVc?_\uD_ƞALp/ ( kUoJ^㵲m#%՘wI{-m87l(jA+ ^/OtB_kϯ_,l@F rgy "];mXIIqx pyN%h<8(\rf9zL'T[.7;ۑcƱJ Fisxbg{=Z;{s1mrFwO3uTslߌi7Ue_^W~**cZ$ JJGz2QA> t kB^$-`OٳB'#LẤs#\{FL{Z ORmŎa dXo]MABa0vE .Ũ{}> grSe﬑6<@HH"e k]XHp(v,? UE-GL7{]h#Vj/d]h9i"(x@kPc4-ľjamU+W!m=UFmejJi3^2):qy>p 5ia~SgZBCB*%dtt(T~H႓KOz|KѤ` Y2__88(?²?{o ?7ުbJ=ohm|c'1J$CF6kj xqT 2JzVz)&}tnVplvDSd=FZb-@8y-%7ԿF3֚H¿(Ph3s)SD@G$_S/]~[K,Um™̔.h Y!S!`_\ٵiڍsOt4߭j@Ad_gW@9m83xVn('Ym gYrMrq` ϘW$Oob~m @6/ccWWSU @u3rH́sKӘYlZ(DcnoXwOu'^@`)yLHw޷C`|?U YcвZ,㛒\O (,"®rO/&c7x5 C}Μײ;=pV斯e ,\=?xT"bj?ڇP5y5"ۤnN]@fRZϏFyQxif &B$w34Uț*c de%\ehV殦 4}Ă:WOf64>&NiNXǸ[Sw焎G~_H S#XVSE!A5x@DEVIf#]wst/EyRGi;^sFXshfz@ !!)()2#7۳: 8Ih^GHSY [w}+zg[8 ]0{FKb F3oI$@ĥG6ƩA $8dub\PMIBw+o^9a1ğ[ޚZ`r03ϩbUgN] eeL B9O1!Tگ~s̓oS$>`'H@ߵW.hn {- Ť(3~|wH33~P4b51YqJ}FX'Z%w6%W@wvCJQyJH1+Qd خgkǼ dT sZ,׸̀&N$ 0iϪh~=gfυYk,XK05ܾE("*փ]1 [~!:G1Bh0 j A_eL@i`I 1£ | >@篦9mOցe/f[F$4\8pe#Ԑ'6>| wl\>xIZ?*C ݰq3q.^wڀ3rrtx| Q.l0e]9 RdaXs*cʼn&Z.=3FE}>rF_ Q^%)k#n;_Tڧךi8Nb3ѱ Mi~LHlWe'Vm0yjdBպœ:)!c89+)XmsRD7jP*REo#9͉$Lj4oY @]ȃ$E[=X˚Snlu~yY"R2܊#R ^o}vߟ'wƅ=uH?u^:PċXRlv2'@<'*VFRQ Z F qQKZAbmdlǞ]P{aU)U\мҳل3ΉT]bz/ {n$.7og;"兀aH')XDw`3HB3>iܮDcU9kO]@%e"CpɆv@ߕwEJxMXa@8ZVZ^+UT eFw!DfJd )B0:EU@7BNd= KуZpW sc$=%i ͼwU{:0"ۉp;0=9id۫s6j[(A-R5KM~=!A3uq(sŎfY1J-j6)j1~YǁHHɺghi0ӭ*rB҅i*[:Sf1Są1\y$G4WjW/s5X-.xH7-^-b_پ9Qc)e}ha# 鎀RRe R`ZSiTinZyrȫެq :l8E SzȞ+,,|'}grv±&$X-Y6vGSM(pz9OP35çawġP#nt0袦4ܯ='V!ʏ<"%gyzI 0٥,va2ْhbPalM)rne[NuZZUwzL%-6mJƍfN,`c<ިCPVP9t:a?rg= a;]ʉ8mĜ/n*^sZG@of镒S@oФvp0is&şS#.!T11 b!- T)n,@=#SFcRmf'Ŀt\ !nsOF\7Dv(0c~ ě y+^G X Fzn?75`u 16}zTQ৮Z: OcWw_ ]֔uHltԵMr~Ծ!n3 %TNjك6HҦFz<01ɉyG P(\}'r+ZvW[ hm:iBRO"yBKg<,}#'yLƐv,04 O|oY$9}:-{tG[cGSgS/6M,韜u\=0߰d}M e.mO7d0WI!񓣳u/ZW„k)-.fBtA泊 O =23xKJE\jh<{΁ =(Ib3UBA{1BQ<(Im>ʌqf fF{@c$JZ}~Vm-+HL|' TBrc ;<=FsOK׬ߣ8w QD$H˜ƅ)]i|B"rjQ ,-7 wO 0Ok._$sg.$/HbEb)u+ˆy\숛㧭Peӄ 3a_Pb7fLu[?e%  W0_oDG:`@d7tמޤr*u̹hv) O 5G0iWns@ɪGannܢ:H[ ֣ kWx~?D)-\&:_06` 37x:;}wDI,(E&[YlAڲ{uG>;d/VxX>ye/I[Fd :u]j?앳`к7ʄFT屺䶤eu и8޵rDH()uk=K.Pk+oV+3> a8: +)F v*m/~,z;{(` yd= Ҙ3QpA`U$7 Y"/@8Kٕ<xQ"NPFSV tըqgDE沿)yxNdD]AIץ} e:yCT8d#t,2En}}S󾳈0 ӞA(lzLlc)ؓJԹ->#h~Ɛ$M>DN4{5oؿ} 要'fqL# Uc@P! 5Յ%m2T.!TV`3C;hqvϫSR6|`xNM\nV[Ô /0V% hMALEos FV. ƾ$|ɵgߙ!F8j8_9mW$DjG~&j^tm8 qz;:{0-! 3-{L\[BY&*l~[΍Dy fٓmrhZ McRBi.K w KF.pRqxQ^@}3wB^N)pAߴlؕky%&Dt Q , Z .F PSmbIAKku2ΩT'7P; C!~§; pTHm##OsDـ;*@Zq-}YroO8HU`4u\Cwb*@6# ş.#;CݨoE}Jwtp^Þւ݁HI[MA1. WXe w82dVi9#t3 !gbߝ"$]z˴C'ETO&5i+H~C A̲|amL$>x[>_ k\G!6S~BJb .xe`=;j拸,S=;jzh71Mqpe)ddZ+fxްRk*Ġm_# n Nó~xZ0/ԌĞ mf+~7;r4GU4zileglzrp2nA5.D-w|ƅs4(^< $ )zK<fbFt 23RE1BC9.4vЎWh^~-KOj)%( cDٰN[Ba`F%Gw<*n!5%7o<|!(LKg>Dh4lڏH"y8k: ؅[1Z5RvHP񃿀4|'\e| a5uI-,<-rp13ȔC)6ղ/|cl\Q/ -^umg:G!W6Y)E-穙XTGe׳'%I`tW².W5RC7 E*# ӳ6 :UjVQb_kܣ@P*{E4$κ!WW+%B XlѼe[Sq>L!_qK< 8ƭS$fd3)k'f˚[3DK\=@#CqI5NІdX郅qPzAص$EyLi;.9ނ]_I iD ͞NZd5e*@iUeo9ydG`=xż(Z29v apVB (^k,|b-6Q)0%*i 3b-4^BA9"6Ы-IE@֮KxYz!DBvQP f N}2w3t0+ .אHkaf!y"01+-2p2؛{p A7Y^(@.ݲ?tkس]LBG >*Mu^ow=@.fpH>&aMh3ԹH_Ji Y >Nt[)г=9hU#E|srA(9߭3<3 @R.|29h[5C>H_[>U[i5Ҥ;@9TF i?$ܪa_@ǯrS:a~!{;إxlGzyv3C+ud8_vqAuF |y@zQe:m )T>y 1pS,=V]/l$M49S@Χ3n%L^e ()ΘvPuܷsSkũak_ϹQ+m,1>qpO~ʠELxĚ &zUoy:jV okoS"NH4ܠQ%XMG{:Tvʛ#F_k6u "p!_D/Cj9ѡPzRFݮ?w|Hm#15D[H`hčKh!{ ȬH !|(J@I6Ej${AT4*cf׾D~EC{jk%VZ L1RsAmkx,X N6kntf#]2IBjY0( ~f n"FW`gos=)l*K)H,r1>  fpMubtXĴklIy%M-D&-"JvAf4)~n>djU p_?u-W}m`=8 (Џc">0S-5C8e'T'3`To+n5&CRsUB B.H*;cg?-5~W(Vyۄp'̥c \<9+=V iU2~`_=4^{RzCxs;ΪvؖhVĺGn`An| 7-ټ#_.hHOCOkFTm8yXRpVlfk"] L jЃu3eˆ&-4X֚ym\T`.fL57M"Ϟ;.-Χ+魲>UAqbP+jGox@k8zdb]o[jJ)BZRJUuW^Lp{ ͛mҀhKCVQYo=.mcGVYڍ%cST/߭g%:>e+dJeV{SuCW=_Pl S`A4k05Sdix㶪\))ucL0NY(xu~(qhrJЬsi^/l:H-QsoX*ZW MFqL#cA؊)\3xV5ĺbo6bgsٙӧzlrKϔ~VIz0[re)}ɤY%|ʣOZSoPВ^fS멹4ҙ`9D>1#CMy6N 8n?Afn ӴT[yn4:1 A$,7[ ӧ`"Ҹyd`D8]ј%ؾуΪ A+:ʊ-94  `d (Myls֊4NkVꖎ,hZEA3qn3 vT3lv3U8(IoM\+YWU we<7_9 Hѹ"嶌4>kW{\$H7"Bl.0O #l@)r7ZL2)>r˫ʭ\d kB:aK=fGz!u(>$B nqcI 7줆.ø,FB3|:OgM$i,½왫H#?<^>r!UR>|tAb(ت@U@x4ƮhK:0.͈JM ^mXqvzG %'*oy_iq$O~1;ODL}ҥ\(>Gt>u6Xaco>s]M N]͢OdBeVS옆Y]5{ʏ؅Zزf\uvV$ Y4c"ʆ"$ZZ<;aŔ%xԘHf.M2[^* 򞂲pEeM4S4>."OZE[pѷTKz' ` c[ϘppVgǥX4FƩ *K#n;3$v z}+8=Zmh-co ^?Q3dOXIEE{FκQUa[ѪUf&:j7` !tQ6.*295v/@!1TOMs\r_#5}*mE/Y YL:Ƈ%K[ ㋖]( K灣~!cg'9-NL"Z 2[o9^S &KJӨ&๙yXٓzy-0CӋo5l` V/٥vIҍ?G\e Rqx^aF#1H bXVi`381xxU5cUobrd"것*n%ψóx!pgҚ{mЖSrʳ(P@yی {.;37yO ^pdɶ_Ι8T)Sv_Y^aSr(b\H]+D hCMgf$}Jэ' !J]8z٧ 9k*dC*JN$&6$W Tk4}qOD(p9ieް@hAKk cZ[AEV2fBD(vKضi JYٗ^#.=[|D})|)!DnɞcJYxG{nCaEW,ٝG[VX;QiJauAn"ȕф,qH^,^?tu&NsbDw7D7T^cm}q# Sz&#B8뒲'\'V_oS:SKzd9ʃ*bW6*-艕n7NK0afE0.ZARK;ama-1^ZDGV O3cJߟ[{,~wk" Cr<1dlnq|bpzi\!i&ןr+oeq/B>K拒Jyƛ&v;[lnq=3|8t|QwLrr.;G݁2%h7$\%F?JڃMjXڶHi8FsutRڳ/-be;\au)u0:Z@! ΐ8V=d3ho/IVf*zvb%݆dzLU~mL[q1uHݻ'S C*Z |ޠ$OA̅mA{%jP kQCa+t F?X-Zo[}67Pw_sFO 8B?J֪Z"L3CJ[t6Z/-2, xcd3 |Ss(LvR|Kj%[|/MrdN|\| d{E'[Ц ].-XR %qcS!$'B!#cJ1MQt"2c'ݾi1}3RsҹLy) ƝUyɟ5E/2θ "g\4pB 牝cqyoT)9m /pbGTؽ-֒x! ַSCJ+Q7`Ŝxe; 3ԅzܱdw]qR^rXBESGfX4 lxU皅Yry{=ݙ0r="B<(@e7}sf')d?LG.vJkVG8qQF@MeBՈm5ْ3=fu z;EN(Y(yԁ(3>Lk9J'lĊ{a5nÈvzr3E /Ȗ+}w!ʖ(gMx-z)Rn\P)KWfe /;%QMqSl 3sZ(_), Q>5vSj:_";nV?Q095$.R&[wa6o)-ت+[噟ä# C >\x4nV+DĴǬ8r|1cHQ48n끆Բf#, 91kݛSO:еЏCo3'SK\Y#+y 0Q[aM7:PdO3MyPƧ$/ZZ3z2u V#.%.'׾:Cl&VNJL`*PEElŷa\cDW7$GED6/|. *O ?Lu(~zUwyD1,e]VHu#6rGmM2A=ܢ|ڑqgo*L_n]auHAT6`^o(32YJd'U˛Z#!fӕX, ry#B,eSy3|576`.e$xEmlUl%ivngpwp'*\\ٷd6ʖ0낤<)etrI+X  ;mAXTh-B568t%p#fNn!衆1ĕdWtMmf*-RCBqbԅ;Ku`+Z?z C5'b7p)sDS[سsigQ,TvD5#z ιvp1! #=oTp M,x)9k( -R@b *BdZ1rLԏ<6p&o[Y1}&z#'xqp9etD2hM5u|̓jm:.S$Č}^([D=cf"hʈTK{eaf ]c[%{6]k ;3Jl {3oL0EնFK98HC tEoh]3rO/vte)R1by͸CC3FK5WE"qxJMvjAJxDQ9swdv6.A$Y)WĨ t:Az OWp- 7JgY~c?ETu/`1BYof Q ":ᐃ018;PR?1 >=(B@VH9 qY=_ q<9/Z8M͇hH~#;ޞIp 9MN*7l:j{TKaZ;@I@Ltq!Ѳi[)a8>; q0$l*@F+!-83J=xWؕ=,l!4kON-ƔO.kD^ WR~ӁFۍi[ ^I;ܓ''ܺ&\MEṟ&jujY] f =}GYvl?ϝ 8mKt#Ңŏ5+I:pc*yTFjubѷ<3cMrO{f2.=RO\szoT7㮝6J }A.´jQAcᷚq$G=/ZţbJ*2u낀Q7KX?DR%1+'Jp1Uܮm H+$ 'E%,-R̛ξe4fj,U0|%(Cݴ.i)+E;'4vL3TcI5vP j׽WH1g)ᬩX9:kZ&E35݀UZ;@)4!!*{)gS\E$ 9jvι\p e_eэ#yQxl=@jEA4'530ƕM.@^OzQ^zn 7{0qH?3l],ĘMC ^oElv. &Z@aO yYT/D avؗG^+SA34qu<;6~ci˪@{PC&?6[#W\v1FXx[mtq\D~wN0>|w+i O)O.ڐ RظtnxB.D:e G-,c I]Rp^ԾuCh/\ P*0,( >W93"GAk}WqkJt/՟1 {) @%[Q}ThtF)t' c4P$Q} S&'l^ocm"I@Ep'˭X{0l_ڟѸƛ~@=u_T#j3u?d:C-)tȴc(k|0!#)ARc$bj:<9SxE^CV$|{bV8J,v1XwtPkO'g.KOܕr5DRS]m=&IyԷg#k9);U~Y{΃xŃpC,jB)֢Gh`{O0|޼Ebam}^%X72NINfSz]BNuʔRسF&(t7hNy@F 1Pou ~Ѣ43iE%3n[~0?;]'>rq2gy>D#/^8e[CqQgۜk댻2evC|f1mڨO(aldKr Њҽi,tfI8rJsŔɳB½#1z@~dk$ou|ǜy kRmzKyv'T0l܇6냁#=vk[X"oC8SlSMlG*NqPRUwt(~L1Bդ*ſ2Z_i`՚4%b| a}~n 0:d=~32V#V{&% g?ZIó 3ӡP=x=i8) t3zk}3t]Q %"aҁSIf{`)tA&W*@?X#C\rN ~EDX+ - jLR[j~:줘Z췷ED[mBJz"n3D%7,m0OMowde쥨{ǏwoVcwdbc ^sJ-fIc .}.1B̑l[tY@ﮛO&y%jT#ֿQ oOWd&K[k썠쁲WӐ ޢKn6kma(4A%IY/7)!޲( 4^ȃ x\!px DZ"i 78eE:tP8a_^QM4d]o .$d .:I鯑ڃՙȹL06- [/llm2IH{Gkilf 1Jwp.J7u3  roZ.l; ,`]58]!)UіVj<9V&rKֻt+aCopKV:iX$(뎍`^,:fq6m]sY!ib@tLG.qM<,%ύ6g \q$%93nۿͳ*cEސ߲9D"N뎮54P菭7=t, R;kk+.]K/6GgzMrGDG`1{}_W''.ʯr焻'|uW2kҘ:5ُ%bw$8` FT#$"Q R22\g#K Zz37F1{b'dzV%{l5|bVM=(D Cۻ[hgp/l,۪l-θ҄Р V,d{JxD,7 )@N__[_W.f sTn2D L>˱AQ[Om_wkKc酷Hi;?xIƂCBTBnXiJ߼ _ّHvU+-GUl>"S-B\/4h0F YeBgĥy55 iEVz8tf/ +@yKkv2Bacm7r>NtH1 t)Eͼ\oePZyݮbk>^}{֯8~e#2$!PCuΒ"z\܆U5)Ewgnժ,7U㢷|$dTfYo{*c0)NU~f+рF8aEcB}nYgۓn))U6n3DZRw`"G*ŇN]s5YFK3}w3MF2JS ť މ6t˸]5]61/I(/OL6Dw79r8GAR@dG\h^n<m8W^x,Q1h<s"mr3;s;U)^>U1~ߊ%H$R1~X`NmnTsWzP?ݖ dUշgVz2쓂XM05[OKViq/cz6zv8"X]cJ+wKgnrX^{>811_kW~K!lxGhblc qKo&EW F d'6\H\g+ ?' P[_q뚜Ald⫇nn a1U87:MqO-Q"!5ŁJbcW*3&T;7n$ΫqPɁ G:DC r%eÛCjZ8ҩ(#+x\}nKmXr#+lD#߶<,`},p_dc;8\4<2x3H՚ .t$to}þa JlY[:1Hǡ/#PXF9]^ G󖪆aJRÁiȔT$QŽy gnLD8MNleي]#;C8E48O+xYldtWIJ@@>rm-q^v,Y.OL,-c86 ;]HF&1(z9;R R[FL Y~GؕΓ2ׁA"NÔD#eoKE'ϯ "DW_" nHR։ޕ.OlDNCuqg6dKO,[>|η"6m *kZ[qFp&K/G\t Kտ ݘM@'Ob.v&O(䩞g _M2: %:ZcbX n%͎Sxɏw(F(} K/p Lոf(f?`%ᩆ*#3XHb@b jo-$"]pR ~1+m!ooا 0>^o@d`1ȍhr=qyo`ӊ͒CҝpJQUV+HN*ԐHlfA #Lu3'iz i_8bb?+]տptמܣo#QY`rTV"M:PݛRp*?3y*DmK3# Y3f&֣_jb L*SmHg>AC+9?*S'Rk HmNnm@f HiGa-414ĝY׳_khW6uȧt!K(CI'ѩBP@:5ɿ ֺ x~yst#t.lHA˩Ʌdy :1i!&~vaBjтw-Uk|ݔ)L #KWxuv\kp7j}4d4[̬8scO-RO&$Q?\WH|ʹu5>.%sqJHj+YZCjnoG+d4P([.{A,Yg)KSjRfV"&^?eXS>8|"giHB@kbzİVDb-U9z1V9|M@\2uI2t{%*w=YSnQV`) cFg5K01n0u{JIlF $DjNi;(E<n?M\+YʑY3r_nN1H1͇BoPLJ "R[yx/V}[#nyJPC #k53"e,O6rd#4Dlu7")Aq0QD 8 zGːע"ZIAZӲ:K1ЁzNx{4u#'2^:Cn}ǃ4s]N Ʋjō-k#],Tja!IܐErKzfaңӀ[%?MyvWtwT'MGbR$TШLV}'5:o5"cY?W@e$n@2,m=[Tk!~]RWk;25)؎$\"m#'i!4k.̑YS&=T}pq3ݞVLs#cdDu7PTOT<WB$zpJa bIU:;h| 0#VEq?wۥ 6i-vh&K%Ա)Twn,AvfF wg=_2S>6Rua/e\4 Q[I"_<4lwud+7#ҹ;f՟-㖰Lbq*+S =\d8 Rl$ Q~2Asc99ͅzOQX=Ipg&oA\x5Ri!dT9ٗnf/|L+X4io,FrbL#*r Ja `at䢵Fㅗ$1b߬LN.0kTDߠK7GXok:%Br"?}iW*:K93VuծJw ?3X dM/ZK(G6p"mX| GӖO_c.f`$eNSvНJ ?bVhH/{Wt2FlZv)6abS(.nPşz@QYk7)rH0 ;e*N)q#`9,[E_ `=#;%\O;D7/tAYdz>*f.є1@6\2]WQ9KO$l`~ePެ 7:Vdz[7LsT}y|$ U?vlȋ`%Cծjh>>Dƚ Kn{5n7$rz~sT 7%.D+^cPO8o<(jC5V 7椪cΈ ?%zzQ3/ 6sK [7);T_p5MB 4,]Ok+B]#=]gJ;Ld7W =a]{0Q6.|dXrz*W`VQ&dQ(}{fqA#L(RQ XS=?Ǖ33_8jaYuۖ)ؠ0yZ޶>-" uH6 x(*xԞد1u0EקMCݗYPLZy?t[##ӀgFx¢ŻfBSm̄z$t CKq!裀d1/߅2ƀR1rAfa"/gzg]3p:L!].\/ \ _*pɗ-8_]4!۳%4u86z`hFrnƒ1F1ŎW8=4q 7_ pWZJQȔ$ &_hņؐğg}ԯp7.8r>yP ^[Cgh$7̗Ind]:k8POL-\rq vρ!g@ = J$0x,N%l~ OoW Sl:; D3"J")s#Xd!n(#pfˆ)NH=I~'Voʑ/-h `&4x27C8r>"GVn*FgTfl%~傡SU#l:',b|ko< Yvk2*@N2}HsJO)G mڟ1HKO&gbV4WfQv 'D ޟ-}Aiﻌ~!G:!?x*?M՟ Wl Lk{g?(:- K&J1vsݴjkNʭЕ(V2Vtq*nwĴ$ɛYy׺W$4Ӷݯ$TDS>"Y晭c`g ꖴZ+P잊ܗ<œ-3(^ y:@Uk-G57:o/Z0r/ ܣوrLX5:1ʞZ%S>QM}9Z\4 uhW:ѷOscRwB!qpW"_VZu &%~&gr:*W72/ᦫf*;ЙⶹQ'$?n. ֗dko"t쨠k1bfz.1IBR Ķ5bn-2(-:_l,~֯s50C/u3K24Ej |C!:( giuh;\K2م0 9=*.թt?FCyӜ=6m `{s.= `er KuT"LҰMNfH *#|OGE_]]/GB\>V2ԎզC@ cYq y $x}+P(юOS2uuc̈́(wDG7l>vi1s_uSg`!8  V ڛ*X2XԺϣGn.34C-A'T&pyVP2yt,f##GdܤSA@uNx:g7c ) {i 6KE1P$:<>;s9rɳ̒ BӦ'B?;ŜZ,yzwR K]VCfTF'º CM_KZdBy2R~I^zk,~pFy5[(hmC\lCcC㓿4Ixe"c/}U^h(D=OzlmW )-mm"i,[96gjt *cIG_):7xF=%<"ք0W98Cmyzb&̳ ?ӿ$/fHh6Ȣ_] CGP{A7WpSk=^ص\\Y/8zv r`^});D9/uŸT ] mw:'hѴT)ܗκ᥿H|§xyn+ E`n k mUWg#fv] *GS"Got<M '[F1*$F dqR:m{7-[%1}LbYJ=R-!>üAf:牢]3R0z8SŐmU]~vPKoe17Krdn9xÒP b4$oKH@Ɣۉ<ᬔZ-/ec (a &a9f^wGMWhDk EuԊx;pIiXHfz&֪K/|wWr~`T=R ?N!Ð QږPdwxJ ` 2Jn_kg>b$4z2Ӳ {yش$s _ˊvX"/f`_5*3ǥ:h `e>uh+lg™aD+ujmϢ(R8+c&F+ X=mѪ դ):{%ۗb} >~ ž4]SlpŏTmTcG t.w +ietV$G1& bKtM;BTX .K}R^(aܽxԺm6f[J*[E#vPwcr#e X:z'Wͷ!e?hZ:bx^6MV:aL}۲%#x٣MtFC/ lSlsm.jXU|7?0]LOӡ{e}:Gدe[,n _Yܻi=g4HR^hI0zyas"W%b9AQfkuۻe3d acܷ&wgi.iLJJ[75'{u^5]waF@?<M^@]!Yi͜ێwHmVҗY;K#{1CB 1Bǖ{ΝpM:m"2C*jn ֔o^.6&TԓbPŻk~g Xœ9AaʹLH=tE@>}bTo.; JWQ A$.24,_;<1ty8]O͜P:.1Vqp=ddJ: z<;5.Zۥ`#PZ$.ģJü HMyv^nFeghR)jgCs>wڧ+38o1㡑'I-U㾥v\ۛ7hK6lL=9ܤ|j0Ou(DKYяʺ$(X9VՍ cjDK b:Ӈߟ5\HײoDCB\6޲0߭%=4Ф}=U&ig(trmn 6]@Obؼ.'oJn(͹5]hL/@3`djvw@[Lɳg NZiYЎnؒnwa)?d>,cW?Ik'> sT,ܩG+5W j "BjngMQY7cs-xU?x\SX52x/,)3`O Kk#~3\22w"#mR:7Xvr,P4,Q${ Q͸˧!8ͣs3(ǬëYad26ÆpcFn85=gWOPaR^Yw%TB Rrn7P5xM+ye+vza-U9 dI+hmꢞ'tIW\G݉Ї 1аf@ cեQТs[$ K{6qa uƞGȾw"ml]?P'9KX^!TOvk}Nrgpjy!IdA ]@hĄr/CT-b42HZ bF2, &]v)B3fak|3A?o\="B5l%'jY!?Rja{!BLA=WM:̖-Ⱦ|-Gφ5!ڥH;Huv M CC`/rL?YHiztEc]*=l8|POD Į8_e ^SK?& `D?y|)cjC)v!_y@yiZ%}'(> pofj@̴-`ϠzqWp_<DukЈk0`: {v[r`x~m.@x̟d$b7*Zmc.0' r_5|eV y4#d\lM)F#LwpȠXg5J ZJ`=2`*?8M"MٗVFmD& nk(R+!#qNcu"62l;•{8⧧ន/ZKQq2s1&ih%$~T껐887ӾB>q9?Gɇu{kbf}i.VFT@AM]<,+0 ptP=6-UA&cV׼?Y)L#jy}9Y7TYAzUy/`ִǬjs2g rQhZ͞szlA_E $B!esrN n\bq6Wx =cuZVӔBf9 Jɉb%R (ZB\?dMbܧGUx(Yj_g> o8{MiP^L[C䟕B/AQ5VX5ۣr$ݭmvm3A HPb 9L@!h1ZbRJ ۚKOjixnTU8gvuτЊLv7[$ˁAA(*}3emJs_'aEigwzbks{,#!5 3yɄitQ@ZL-"^$,k4wIϾ:_쨝8v 0ıx$P"CɾPͤyqUz%g6!Yf"*BEҢC5P ?f`-IO B7J>٥eC什y{o7oPBփ9#|64Qz/&yQF\5fϟ0h~}5>K]*8ria6 昆z;,}66q-Z+>8$O$nR߇ܠy\R쑸B8 (ydU<6O'UZ-\2wҲ!=iE3"&T|KMi*Lp¸HiAieӠdR=M S/KKV>(i{=Bدc@lƉ[ Lp1{~8M5Vi 5(guK!6wDYc!s ۣŹRkt鳮KwS ~oG:(^l'j#y{_c|ݭ{YǃHFM|vLǍ;h?yM􉿟aa#gE,>hfE 2^6xPS<iXӭElfXMJvVQ)v>7qҥl][Ic`+iAbS?a m|ϡ+'ϷNxbb}섄"8{"7+Wo~WOwWZ^g&.duQd9=ZQ`.\ZHo2xmeN!L\%pL1j!AUYM1ejd#껌aqc>zjIhO4+̖: S!KO]1m 8SqԄUiS$vUj"@[?7ndcyP`a&ĭo?U&]N_:5*'%:A%1Lů;oͮJγ ^bR+ҢȎtƒJix um #l?}o\AQ6,վ5 >X694OdmN}e#Ib2ªܯ$#\YAe`Jd<U /垮*+\ j*_a iU=qKlwO8 QqZ+(, J-ցo /K[RP-{L ;ͥEz*o*y{/6u|sġ$ F#x#T"9OfO '!{\.Mm: oi\i k^ZHW,J[=8,s@jB`]lICЪ{Ƭ=}Oƈ̠1EԫNj"xU Mܮ¥ZQKK1s^7/m 6߅DNAyhREDCv*쏦 Iс;ip ^A[S4䒍3|,Idǩg< OTXUk.' 2si۴DK|b*BcXۗ.$f=ӽ^ Sc~tbumm;,;ji|(W~\^dQipFVׯ^"f*(s!^kiDJv%aMȊ$#~̟ZÊʏOxfϧQblbg"4[y![-Z@xCoAs;}e8+3맒jv=.p:ۋ%TcYɴ -Xc ~irQoPX`eۡG,Rkv֥YDIY4k~3+%#ꟇLLH 8TXH` j(T|<cZj.skwO7a0 D!Ƙ}"!tE.dECGi[i<-W\orFacsis)g',؊gGߴD`P)%S'һR#1LrX(}1Qz g ɮB/?. *ڭdsv mk:38bQY˸gD=eCm;Xj\)ӯ gO`tfWZTdf!YaH|nDEHe#.5,-'S7v|pKi }BlKqoi?qmD#DFZ/IqWn,6ea}hS[N+w !^t }Tet0R;Ž_W0mBj퀣0Nd @g&aF5WUIOx9п-W $SE:"5P3i,ĬWAڄ¼cG]u+, r !>e8 KЊ.߻k9A-: * \'7X AeVqëZNXnnAHp3p\` qOOvӔR<"ĨŻUak[ Mя@ojl>_s=HЫCowRs*d9ʼnbL s^;Ea/!:2KpY]vܞa:0/3hHqxexFTMHD7c|ZŪS|821'|G>][kƒvD1* 8jӇϒ,/L\ve:OE+\WCn^ lkcqȝn]Ԗ2,Lf4ś |'r:*y+ӣQF*| %l î8K&ïLO D,MKW#㜼dzƺ X6~; //ONߦk"q SCL'!qyVa\\yW^åq@Qup~bh40A&' 4V~k:(0fKu%&@OLvj+Î~¼ Yu3* )R?G<Sl2Ƽ:S46-2sz{ MWٰ c: M Zv9x;h_4:'v$ACh M'^8/AF{Q4"R{/cӅRto`Ee j c/LCWPC?MrR| ė*,h,sem '5GmJu@y*=8l6)'\TOғҤ$|8l;T Y^BX>gu*gdfo&8dHd0edBx{aY!agK5j۪(i0J;j`?,{7|DzeOV NÓzC0W@SQx*~C#I \ʷ\7EwN͒9ڻrA7>;+ri%g:^I5A/7M+cJ #rb )S~RӘRVؖKY TFA2~nr`/"A4Hf jƑk01H' ^ YmUKPxYΚl$"ѾS~6\9ZO 8v=|ħ CGx-jk`1@kXw8^1 hOu*󦞃=Rn]g%t{=PE8=Hv]/?·6Qr<Լ [X,>@SS9QX~WvkQӫ1wZ9U`HE wsrr!rW OWSXXnfMx^/~ur@nI,zZ q4N'\_oU ڶM-U HiqVd>ok k8/h'bos@:іqo4m!M>&Nfw6&yaT=fT98y~&o.K ٖ`ZUntpʈ+0!*[ rMzn*{%EV=3[M{ 񛭄AA1ʃ h0q*[׸.z4ꋥr rɤ0zG$..ij|< S&9߯moE)|aeo͘˭kCI3K%&q[ꈖC+@jo:!3 ]h{Bqě7rPH={3H\`2E-m*Z..W'XYp )4]OJdRMr-?oz%^¢/OsoYS~9/8MX#թ]iU^CkEYmII; Y3h""c?esUcK)69LKعT#C' KvUa}+mݪ#Q<յ{mchD' "j+q\QsTJ7^9}{="-E,qul1С[M=9[nB|d@ ߶@g$b9vs*'j w eQ`ˍ^-᪮ ܤ7f[Lfmc#ic1fZNcm@GӬY 8? \^0BR5%%.w@969 㟁z9$flԶ|͵3J05cSA0A[Mw}!aâ=)bJ@kGڡ4\ޠk}6u:4A7Y/d5=+skzA&.Nn1cm.R鼓i&|X1 Kd[:$ߎKq3FnC2ĦQ;.3TJB9Gk .%x !A-) FM,(2SBg0JEs*R@ iܕ ?d6~kx%I%7(&ݓvM_}.4O__ O:'ʈsAݬ\2 o8!'G*۬:9:A09F^l,ZgCT$Ѵ!Pz!o<"8BqDž̺_bPz|p+=UYP9RdV׋eV_{ōt(F%;HaqKdP2_kYmy~yFQA`KK#ݑߍ{YGqMOj9{)f٦ub^ܨ2(6QU_ue{qB `a72~ (8 *`_Biz'J5K$%*]qUM'| +=&( hsκ;*c7 nBZ55j((f2N`唥h# 5;=*Xd?;HQ?:oJxF"ĭT}U ?1MU,|\UUg%LόD L'lYLse<23mCcln Eb,zUfG 9$Qc1t{C=EB:Hӡ 9[!!:!P=wDlsXb}iQԱǑHxQ|@puJ/٢ǷVŹw>cG7 A}HU ڲzW`O$ u4 =["ouCukVK8|IWI,o4 ko`;oLm&2J`jɩS:Y ep->}lSsxIe%#/&(vE fVNjϞ9n-9uBe_f u j,}'(;}ozIb_Uo4lM*]r>A0 ,f) ^ˆ؅Vg I_PkͩQ6p%4V7=Y>RppV#7d;.y`;ӫU,1"X)W"!5k{VɈ^  uUHZl܃Gٷc㙒Iy^q7+zvb!NAPFt7*vɻaڧl'}z{"*I74b` LG4*xeF=F)n*rb!X6e$<3<ɞ71܂f"MiAA4I^aqpn:ȅbhKs1mL5V"˴DHTd5(]GOϾ[AK4hKޞuxU ]ѼRqӅ_s7&%]%%r2J]y| kB;O}@Vӥmû5pལgxAxGޢi:J\?YXZ{9d؆ɺռa] }Vpj`\z1UkaR%g"v+E|r^m?IQAi*zdP9O@{O̗ޗEһa$-f&Z46Euk ]j_リ_m19VGL$%bWʹѹ!mvZOnG3C#g]̲*I\k O#),e\˰p_##{tmD9gÌ ִZL;`Nzk *!I"tT6<0m" Z:Θ5(1%>Ro!s4)wzzp?,DyX,[@PkfnS+Zb3A$I?)Y $m*.XO\A GѤeHYhW~uw?ާTj=[H1W ~S٩\8ԍ8F{7$"| qЋRbzz1}QqgW]ОfS+"}MHhHNZ‡ 00뽕W Nk;wދj͈hD1#_c?/gBpxZ1h+\,[ɞ'A*iȬא]3=[:(j#@ /msw%[F_&-5zoEsu:/HކJ "JtJɇ_ȧr)-M ɡyOJFʽm5!: bP!,ߡxTOi ݬ6(EEuWϾDYv44,Z쵽dQjl%qNcO rGal-{_F֩'P(0C =f1Nz"GŸ(ޤ vUl}f=á-WB7!S{avMGx/YQB!*pOdoNkY|vz]PpCl۶}o5dk ~PF@B0ՔMi8.T@ ++[ R˟sd i$)#=CLdUFLw eDo0}/G[ :yE5@1stJ~&B2i}s-=8Q8t"RӉb/z؀dXL 7┐b.-v+R'H[~":8T7lV LIuF,콻y!i̻A9A2Ĥʵ/LFe%l)bнy;(M [K!#`G7 q:.oEW9LmD t-kmk$X _N"~ bTˈE]zR0!̼_~I^H-:X^x)! HFfUs-؊)Ċq3˿,t$JCwjͩI %ŕ|6aرBv "[2.Ti\tfXb\3٩Gh0K!:ǭb;MϲVC ζ22PGAa;u=!m&cԧǦݾ?45J*;)\\-3ёL0[{-62XNH #l<m6^;-u\m (;k0f}~m~@Mhr9ڻ>{cor$"]Z~*$TiHXM0A)^YIS"?c(I`G$j9*lPxϲ2P6l~ZkҕQaS5:)k;  rJɘb ϫA\UZ qaqa &2-=&S1|uh4cTwc5@E3bzen͊_F|d ubD4&3U_ӧ9UkN;~V*>b+WlJ)B#) ۴v̱"_H|߶\m9K>shCfV7B玢hP}* LE|̲Pg;GwI_ؓgyׂȊ9q9G<Φ8jۮW> f0:dAgu4S]Qvk&4FEM7׿͟x= ^˅F2tzv#6ПҼyFF֐*5a 9g1*ۮ_8dC?ҽPT>XrD]>@R,>A̪xύbig@,'I+ Js}K⛺oݨ^q>:|VB@[DZ\6EPn"bL;Z 6Y$q~E RG߹X?!k֚Fϔ uSz)-:-F$y~ ə6M{.p^ &-󋗿ؑ`rʁaBp0dF=oͅ P3Xׁ5xcj+o&\͍w$_xz@AvkVßYG9+Wrh25J3u .BaPjJ&dZ{׆iVӝd ciіOZb^E>($|q?-J9ŀvPNpR{14kI%?cB*RE|7V"tw3 XF9K[:L{ݯfbd"e6z |;^wPGa7gYaM? PҵId7k.Z yDqjts@徭$UIKmnBŷڳZvwKdjEF+r%j2ke8e8"/uDXy,c_Rw-,09%A8ŅĝV O獄-c&D{::PHިMMV=q</FزP'gn}o62pt3WFtiEnIjt.þ֔Dq'Jf$t^Lo@07v{{sѧ{կK .tKG*Dd\ k/k[z;&9!DK㟗S.] y:Ο{Z_"=#CNΊ&cw;⨩q)y(I~+k_Jߏږi"O#sn8Y4dI"#@[Ԡ<+9~ׁZJn%ZvK^KMIYY?ٖꜼ)rfCw sdu w WeIbXBkVy2M/f^|FХ{XMij%~jޡs{pT D}H`,D04^V&OtiTˉ9:7cf-8*1Bd?d;jqPSIJu $ȟ^ )q%ĭ I: U0x?Ta|(]HԙJD9?y!Ykj틫(-UfF;](uHRx)F6@4,坎ۭ_RZ}lbd|c>#}oa?F7ċf-ѪrN,⏮QmDBwmpzCis t K־^I٭~Ȩ8< !Jk7*SZ(AcfkMo M|s^[pE{ a-zy4qX fFl A:&7W;]bL,GB!ܱY\,q,)0~[/&H:bZXąEӇ$-b;rXy9Mw\:#˛Yb& D݊y$|qohuX)唾-&MSP!`+wT;()a~RLQULnL9m{i 8nakpo`:Bf+{ɍM5SR)NcN^7[u|6PooB#2,_ $vN"=1kk-RYՒɺFUHSg.V!Gk m[汙  V>lpM$YXFb?i"rڿP[l.̳mkaբ`@)jE.Ղu[Ǥq )I(UA{3y$]e.1%bhXv/B]L{͎ħAfi;vH*#C L|Gl8,z!wՐDxӍz,[5f2¢fZp-: #(z#Go$.;)OZVrF^@Ŏjk6(Nl·sk_M[yئGN© 4XlKP%'Sgtc@_j4cت9@PaBR$v]xtHGb=ۣqdz*(xvyU$xs/8;U6%9 ,7ƋV[68` ^O_]Ȏ&3N=q- \D*7bh(8J_F `:w{w#:.3cq{U!hv=: 9{X& "q(&[9^w٤JRc^7/TvO$?62&-|!P:O:sllR]e 8!JNUfi  {/'rTU4 {0,A/A/ԛv,;Ͳ%X}B}Mg9l˓hqro6 EO HlSFO4]c 8Į;P8*TTZٍ{#oC‰*9&S>|ZTa,f?AV=H{Nk_MPq~ k -hAhӎNr>.9R7]^6>΁*bYگ}xt5uc:+vT~kl{0$;fl爐|B6 #^{> \.~Uڬ7?P=^.6 e_ 6*HFrh7Chu Ғ;'D62_ { (Ԟ %0s!{6s j^< -{a_&̛xX20J+ٜ ^q27@/pphޗ` @ɈW"qCп>T[_oxX}3* zFKXjSM#~:[AiPd?"Ą %HF49-j t7T4 rN=57GLVUmU*eucGΐ3ͨmTRoZ8^y Q&d Y6_^Yh[g'<G,AJ: ű׭:+l"<1[~nEiێ4$xyg;w F5 ^֡(aIͷqAwo c9$Ʈ~saTj,WWq<{3 \6<4gk0RV#4&5F4Gx,{{34JlGQ"z@yڰCphEޕL:4R{=$1oħ 6Uuz,K ZH0cyb(0K{j ;r%ϕzy8ۚ*~C~eH9u'3LBAUDȊFrs1:Kni6* 5T3ZPJO4y`IioCgo T 2v7#ZMĎ bqO1ŁS_NiJ@Aej^CkWwޥTe/2tZ~,(]zgb6}䕍GrB=i&h5~]FI ΆHtܕr"B$ , 'OF&Лӆ:.u #29GȱyVqlbza[Oj(/cQ)̌ t|10E@9q(|`V7QUYz \F/K㛒XRXy"xY9+5u5SHb<%j@2i52~q^nw5]HQ`qQ \"P?m&~X:Pqp:ך͞xU0~G+_keu]  j4W/)FU=Za;ൢ:_갏D['`7ֆwp]x4g1y|di?/yh%KV"7T_xl ED?'ǁhUk-0,c O5\+;㫋aigwTv<49۷է~]3ɅgdyR[6nnS?!k= dën8D HN H_BQ*·akDQ4+|H605Pu\UpC1$)9KIw ~[դ'!hAܰ5q_Oc܍$)SP9N 2̜P3%OtW "6rhAh{)'wkVs%/v #>u3W aE/c;&H,ۧ2l#._"֔/b@%!/s{֖g,¾ԖZ23r/O#Dя~cm>ABF,#4d=_Їl<k}L+nlP`Dm{ؐ%m]Щrπi"l>"JXfnaVq=#tn߇#aM%u,{@Y]BGb[hTE;4G&Xhi_ k=.a Kݟbcy#PZbeK`@a͒ MI4><o*k*KxH0-{M\`,#-4ܚRn5ORpne R<+kp@a*3#dfTH>`3:O*jƹ0s3K%>G͡ U]ǍZ ״㣥ŢL* ,؟M(گ/S(\O,- b_K]:|'#y}pLIxҪR֛OUrw/P[FWQ't{Vؐ i6c^x#- 憚wXҖ?k[ 9@5 #/sZ-gX^ڦej`>@+$8f~G XpYzW*2ljCl#LͯDvݨA \G&am*Zvo~i5+u3 S&"cQme34C_7Zz ?yu1J^;; @i<KIyP=!{GV0a@Nq.IwsO4/;yQD,OۈǸjSP0i0uc ľb4pIY? H|Fl$ЈJ/]Q '^7aY#!ezm}հ0 ǹ- W?TF8/^Z`МjWDo^,VSӢΘ3:Q TLUg'Τk{a({O&]{^ :SF'brUǥUyx3H_I8-ډ'Oـ @(WK4~W}&,_ 0&z8☀XȩT69Bd+¤JptHDj~y:O;Ҙqx;W !$= U%+Iع0657vwh s^(m}ė!ra$.5AWa=Lc*l>kx10Ż,B,[DD.\$:c{td+f -G,2.T5yMD%v[@)2d N&<'bTp"aߑ큡ˉ sp) υAk)/䪊 q2D`J9Ph}q?0%P39,? ]-XHй_Ϗyo#*)?<;>7Id1@4.pICjTU|:_oAD{>K Ȧ'k?)fW)&r.C[G?RL/__I oR/= Y À^B*VL}:>ꌬi@|$9x ZZ ֚q%zTb4 e9d9$~yȦJw+^}D-pZ>u GpnC0 =n9 9!E.zEzV˄eA"l> ! ǟFN&$^S)^X з raKm!$E7c,d]0%!BҤC #x7?qMK6@oF mA{n wfAX@2lqڔ $ѵy }ݝӌSLމ@%3ءam5\X D 3[O$dҹ5R'iM Hp?7}czCJSۦd+?  d6nʌj,]*T˚$xV|#:^l̡U?0$BL(A] "o$[L~6窢, r6 Hk'שO;G߂{JEu߾o^|23ۉoR=!obZDRXe JbΆyt(2 G\Hg))|W{`BW;քq]g}DǀxEݝE31D`!DH;9ܘJ@&XvFuqJ#qAYP `[7o P/ +҈mvI|yΙށ |?0 93>@$QM&dc[f҉fݶil|3ۍgAKf<gAB%fD14;__EZp'@=TN y^Ќxkbj( KL`ڑN(ܝ< 9|V]ņ\#-LOx1l%euޟw6N7mQ60DGw84YejpL)E쩦FdPIB ^Ɋӏ xMIb_!w_(<1v}!;gqQń??ZƹW,p_禛d":(7BjZ{H!FyI\sn"j~̯=E-,1֎T7UgipqgJXi>|NnfI=5 Z֔FA4E !t2$т7'=X5 D32Vn]-ل6%Ÿ }yԉ(R L_HbMp@f`TwLxWW}2>I/N RjT]NS4¨Hf49n`t"c-g[lF.rNq'(m-^HQߑCh˹Bpz 뇠v=@p#_`Kk?jsi6ÈyIߡ Ŀxw>4AS0AmA[jm0Z0JSs xNE.saqe%qd`{+|; i\f!X9DAk˨Kvvcb1$aܩuЋ8}JCJZܿ ]hl{wa[)ss<Ǫp֯JxN$!"UCXQ6|NJ{bXnҙRtM(mG 2,a-\c LOy ۆ$a4~3ZSjuXT|DCAlOOfM3R-ºTG4fJۼ0%IQ^9+5Si ypT;~mCFE{ΧRb w4owJ[b2ӛzl&ϙ+$4@j>gcNWǖW1 E΢:俍j.na9U @wTn[de|Mz:[}fGVM]{Lutlj&}2gfQq=mV9r~тˡ-e_1emB-@˳{mFwz iaAh=FZ=S* u>tht?%~r/[PHT\NX(`ʦ%!M A4eP/OX 53 )ԚþzYe %؍+0ZhS7ئPBBKk5}su̦ܒ[t_*cXj'! }UW`14R\TTa*$`;<{6ZZLERI $6[9E ]pR+)h~`X C,.MeDw.0zU2c18Kv?|7ٻV6J ĂCḫp29ASRT 2܇mZ׮_9DA;2 qPEaN1} SM憨Z\ӾS#s Bx@aæ t=vnCK>]l)))r4wЅIZa'!}g ΢.=Ki6OԒ#BJ`H{F@&^*ߐܲM18ؿ"2 ȰK~k]L|56o&A7'"J/\=)(8SϩHFi!(?P+IFb=VلvEt{>n_Mg^H~5`1zXOT tCRPwٙ*֟tp@\50G[\I<95WŁ .\rtn#D!= \OO遲0w l EaPCT3_L@^j@L'{ TN|[3B> J.Φq#zeUlK\qWo֧/+b'cj7_7W=f\$On(jsQ"Őihwuf<+V9/wD2B>Wp#F4S;1~j=lSOf/' rL@is '\.E 甝:s̛$u¸Qvq9c 2U Y(F0#~ZRB Y,Irm@#èC?eE\.* eכtJ/ "奃$g 3t*&iwœg=qd:VNa@¯nUnK#P)=H8@sԣ{jmb]$ɟLDCp@Q8߮Z:|WAa+mö.):co[npIU˪{hȗ U`r /e|[;BzYBp97<2 jEShVDh-)]YF!t)BRDO?H(1\2k. 71 Q_A•x8J$ Շ|qQ̣E k}!Goq=L6USd˩ uERDYn*DrNd:jG wʴ/ Ӹ74YTfKa{en‚p[C},- ĕULUU7 k a~jS*? yPm$Tuo6~6H<ϼL @hW]JJT\D4yqLPGDygpx<Sy>zED [XEFYȓjS~*\c_ u`~"}:WD)VG"u/ᆚ P]#; @f| DYav36ۊ;gN`~p>T˜e' DK[6bmof4l.ƖoeӀR ,-@xӀsa eO7}D (ww{bG~ߙzӛRaWJjT:;C^H#h^`mݼ~u't㙮FTD-ymp+*|y- nv^JI }慮ǃx՝nF*vpj[I("=R+ۚ{w+f/38rSwTڒ"; ƹ+6Kh/F4Y61@%xaq !$vaR%7/W:rUdf_Is k{m? C u'}鄾GY`Ma3H7jGrhzZ|YZa-Gߡ>|4*gzl, `gr5. !ԨiWp% #w6NMvRs TTk,>x]dzkWYz6P+>3l2)[#峚5r X'pͻu(V_]濼c k9Cσc(Dz)nNƻ9 )wྣn_*2z]Fǐd:oRiYeѪUD|[b$֡!_Q7|vJ?mp2S6p%!T3; ¨EP$5v .&!r[E6kYqxwBy,*fbJKOFiPhBoL)ko`t69GTņQI.I?w] "NYjnw 3B(5۹ݫmJG.RoV;7i}n/'eT~h%. M0p}%"r2Oн$ezOnN|]'MŠd# VۡB wPwx60Ts4u=үiD\s-uۯu=~'rZ.ʪLFp B2-G+Aǐ$bYž2IAXOs*-:vG5Eǽ5%e@BO-hCbni]U963 op|SBjהIkD a"){ 4GOa}ΚRJߥ񊘧k/Okn zK%Qй珏B@ņuÍa>YmvR_j903ێc e{.$D._͔9 t#}"Q&n{~ +A!@2⡉#M l.v\k..U׀mV9*n7 C6H'ɸFQt.G-Gv1x,tAV{[}+L>b lfS堥xpۿc@œWef,}fvsN}+uJ7s”e ~!"6%m+Zn$Go– !/$QJg^-p>If5lWߩYe3=']: AY  W &8=x9Q& ڽV;OD`-s}۩Ւ= <6Es<ږTns[pMﰯէnߝ/E6E9I~xqRh@"jRkRUXz;-_j% ԻG"9|t;8g#{j7lN:i JZ yѼJG^C慝."ͷ!1 S~+?XYOpK@\GkGCyJ3:=/,-⯂`(Rp+n3$vW>omC[EYy\P,h3[i1۴?B~i<}gap,%_D KO"qsF(>wl`_X-CKKݡyvܖ;_տ%f3aIȒlL ?S#į;֗_tj u7Esg‰ bm9sZm">S̕ G8gT݃\hu&~ GfDCAon]ytRԙhRi@h[߀hgt?fyT1Yy)sȅ=O3B,kϥT.U׿ ]%';lP0)ICqOLF2w_y^l2i>0>!S끿%-;]_:l"zmrBU/I?s9<w F"OOeb9eKBȔqrd\^| YDL=h2L\trfL^8o9 sMW`1g}Yω8 I 幠- !Es/h"C>5]U, Mbv>; ػbHu^:Vp'J(ZN}(SSJM5cqn.h)l_@CYY>xܘfH?wI6=Hm;j1QG,uF"Nt S8Oꪙ()f*~2*jh&Ff{E@2t 8 g_fon2j4jM1p /zQ􉛬/KXQD*v^{6oM>OOPGB'k:ڏt0J:捐+pb(֨@lWvh^𺨥j3BwmEP~=mB lIk!εC 4H^rI{EFN;NcxjPzImH]YߨA4&ujq6;7ě4㓢1'.",3>JG;I,86f!IRB%eB|De{Ŷ#y:Ixʬ6mQ~x@c>q`< wBǹ 9Tfbꍫ֓{.V.p3@ m=)Ȓۃ3iF <xXE hZNeo~o'P>ŧ9%1-HtJǮcirdtlA?h6Mpx5zY$ o|tvwljd]1yظcdVb {b#wDK_j{\ B1ĝCldMCܶF jI]Ѝlth #̎/L Əb mqkJI!ℎVyJA\6^w n^O gֽb:J<@<^f>^ mvWKEۢ$9CL zqrgarl4q2β@Hi+"pfR7>"5I4Kf}q.&Wce2s&7pC=:X Xt9!@֢ðm<#@[f[3g|)ooUꞏ; zA 5 GW_L3#U= עƢ!QED3Y5 w˲bP\<%ӗ 6c9TNcs z# prӯ:G<ήeHC~u@K 0xID?N^\AQLIub?;Tah'| O98$-U||//{Xu{fPA kJQ,ϼ*Jz%zb=e)Vۚㅷa'$ m |%(<0 ^X'CKꑤʚIپ폎~pfVZ7Zȫ@{=xvcξs؋éAm6C"p$RA%O-AI/6/])<֣GajvT)GhНa*R nxuH" ^( snF/^zEhO߰}nA ZP2 MAeflUp '\Dߛ;2P##8,e/l;X}/Bt;1g|mE3l3Ɲ(lOLߊqj\-N,_f 4{i"z (@#ԝHbX -#>25_~MK(؁hskȯ3<$ u+jE xjb j€5Ǜ> Ge|N, ;Ϣ*xJw fJj͟KH;IkfVt ϼ2(rx-fMK2&D*ɇPd9\v@n )_dޗFwY pyRɻEw4M/t9RD-D3(Gtt#,%E~qO\MI+UDMK%uF > +Lp< ?`e~/Ad^#wuR19V72Q }g>xinZ0Ʊa.ME#GAӱȬ 5_껄C>,L06VORȠھD,'h44qE'JœW,55O"wh;$Aam D\S{w[Z5ZI}w)IuO@8٨V~8A#Ӈ\WL*&jI ށ g1o\gp+ǴSA1@ 0BYw;sL C7) Vܓ`wmP; CAȸ d5;MP[Asi"714(w&HJq< =x[CK$Ӗ7 }"/r4bFzn־BzsW%Lpc\yu=K m!TM\Ú+hPc񑩹P8+0gYV?$yQYi[4OTщ󮹬{@u ǖZ2s%6 t`Z?w! ݡ*[b^ֿpÌE `r\? p$YGŽ@n+JQMꅑ0!LWw̙Is ͓ɌZxO[PjW9y |o5%, }l KJT vBm\dIB_}c7l }{n>2?J+߻YVsigR`-1#|o8{&Fx'szsJ!}tKxɼQok \.&L <-w|ၸbCePjG؍ mz%i7py竮3kQ3yu)R3A'$߲'rBAi̵ rEv>_%x85@9ZB~ PX%9àrW¹"skP𝢟[뱴ecbX<W/͵IOv9fH؄m~mQ;z mh@ ~Ev\iNC\ S'9`A|ˡ եMc^ a[Lj#nح9KZ9;,NJH5zYB 3X)97O8MIV^ l03qۂ0~Ez0jw!wuɵ ϋYֻnwi[Z 1DI}5,L"B2J,C+֛-BӜ*ZG܈Ԯu0䡴-x ǟUZN^߮|B zvrw ;8PO輗4qXJ镒O?k9d9EwPn'q,Wq@ kz| Ogם[!P{K0_]HeMm>E;)#SX=&.G4k갮>n4K&85ׂ0j$*<.#^TM Hztz"+El|S`KH%P)% )_Z?e*FoP1̪gAҥ}7]uBC ?!N˨cLԇPf}ԉ&mĘ2 ijsO)(UD0).b)>K)1׬ vd00ROU 9H? C!r?/yY^b7<Z$*~/DCQ:uףoN҆t؞vZC7s_rOPHj] 8p{ӌ}5 !dU}-M潣ec0ŏ?XJCV?+ٲ*nX3^8h!!X!uS셐 eD,o؜t'cZ2P15W+`X|vj&5laxɒᢲ/B)dJ /gm/2Q><5͜䜢7.e)n䳪XgsUK=#-O0d}yl2K%8>@$ДתIۣՍv 1t2H19&rxYdTypKGXd8m :IgdQV _,ct}zNKzZ4U/} N‡k ѕnt#@G~ɮtZo@s8BB>>Gs2,*gxH3e'w-0XLtŨ ľ"Ci= DAfۀK+!_|;tScS\v?@2_ahC Tw`,E3c Ӽ7vf5{b-O\O 62n7#0f|C2Ͷ|:+MmvW?c.![4~K$zYfØCŧJ:Z  Nc#B-3?;3=d)8FvB {݌ߴLۻ'* a'Gif^kɱP88MtP)!n vƈTДIw6ϸm!#)=>:*2/LE6<5r~j-y̰5Zsi,Pw<28! dVE`?Oltx^r7 fqR'('O]/GyjA5 UvG;J8ƭ܏ZDr1IhXh"BTˁc"mh">tV}]\d"Lot*:TYM`+crңϧiP KkS(i\$a̍Y[Vxg-gU(h}$#H[g ԰h/!=Incx-quA\,8MF$ͧ$;xhe`{D|[lJCcjR>IE7c:f溅>VJ Gc53Xpﴊctt u L[W._m7)&'X[kW>R/rE1g"_]JNa2~pNrDVBͻB9f4Ds[|veo8b{XI+c fq@ӜoQJqET(/ &21uA]8`$xOwqƊ91lLgr2;R)Gpj*RrYmJ44B>)z9{N8;f+WH~Tȿ)hC ?@5 ϧ jfEjN%d^|]~ZP,æ/ \5it0wa[d6pͿ WQ,KWׯ8,&=6Y㑚z5)ⴭ;`?>@Yhi}z,S3P=4T:E$2#Xv<:>13I! {M\@Ihct֎)@GYz,G|%"PqALj?P$\0Bx$ga=] C;2JT|˦Si^@hjp( iDH}KSnx*J p_ul@QX:,(G}[+ˊ( |"@UÄar}v֥vEH8@ R%;ʬo6fBB=5|Z&anJA7h**>֟I"P7iqY"wGNZR*|.To>YtyEph^UdQz9w=&ZrXDSlQBzH{N€GAQ〥 gC+m@F09%(HEJu_)DQ6!Z*tѪGʒC36t! % Sv!\ %hbChc'_,@(L^'iC0*slz3S#4V`-^5q{ tb@ [١ij*0+v8z?l֥k@ %_nI0$u'X!!؄gΡn|w]w٤l&@a$s?eL6(m yHL3s4ɤi4)ʻzܩHFN>б'On|NJ"XkB8"!glSY0}wT0 S ,gBgn,k&D!hfKF0a@y>`ŴZs .JgͰLl}xmڏ*),vs_ϺV0=K)T fZ"ҕ$5